{"version":3,"sources":["webpack:///./src/components/Map.vue?0872","webpack:///./node_modules/chroma-js/chroma.js","webpack:///./src/components/Map.vue?0b84","webpack:///./src/utils/gmaps.js","webpack:///src/components/Map.vue","webpack:///./src/components/Map.vue?5fff","webpack:///./src/components/Map.vue?3b28"],"names":["global","factory","module","exports","this","limit","x","min","max","clip_rgb","rgb","_clipped","_unclipped","slice","i","classToType","list","length","name","toLowerCase","type","obj","Object","prototype","toString","call","unpack","args","keyOrder","Array","split","filter","k","undefined","map","last","l","PI","Math","utils","TWOPI","PITHIRD","DEG2RAD","RAD2DEG","input","format","autodetect","last$1","clip_rgb$1","type$1","Color","len","arguments","me","constructor","mode","sorted","sort","a","b","p","chk","test","apply","Error","_rgb","push","hex","join","Color_1","chroma","Function","bind","concat","version","chroma_1","unpack$1","rgb2cmyk","ref","r","g","f","c","m","y","rgb2cmyk_1","unpack$2","cmyk2rgb","alpha","cmyk2rgb_1","unpack$3","type$2","cmyk","unpack$4","last$2","rnd","round","hsl2css","hsla","hsl2css_1","unpack$5","rgb2hsl","s","h","Number","NaN","rgb2hsl_1","unpack$6","last$3","rgb2css","rgba","substr","rgb2css_1","unpack$7","round$1","hsl2rgb","assign","t3","t2","t1","h_","hsl2rgb_1","RE_RGB","RE_RGBA","RE_RGB_PCT","RE_RGBA_PCT","RE_HSL","RE_HSLA","round$2","css2rgb","css","trim","named","e","match","rgb$1","i$1","rgb$2","i$2","rgb$3","i$3","hsl","rgb$4","hsl$1","rgb$5","css2rgb_1","type$3","rest","unpack$8","gl","unpack$9","rgb2hcg","delta","_g","rgb2hcg_1","unpack$a","floor","hcg2rgb","assign$1","assign$2","assign$3","assign$4","assign$5","_c","q","t","v","hcg2rgb_1","unpack$b","type$4","hcg","unpack$c","last$4","round$3","rgb2hex","u","str","hxa","rgb2hex_1","RE_HEX","RE_HEXA","hex2rgb","parseInt","u$1","r$1","g$1","b$1","hex2rgb_1","type$5","indexOf","unpack$d","sqrt","acos","rgb2hsi","min_","rgb2hsi_1","unpack$e","limit$1","TWOPI$1","cos","hsi2rgb","isNaN","hsi2rgb_1","unpack$f","type$6","hsi","unpack$g","type$7","unpack$h","min$1","max$1","rgb2hsl$1","max_","rgb2hsv","unpack$i","floor$1","hsv2rgb","hsv2rgb_1","unpack$j","type$8","hsv","labConstants","Kn","Xn","Yn","Zn","t0","unpack$k","pow","rgb2lab","ref$1","rgb2xyz","z","rgb_xyz","xyz_lab","rgb2lab_1","unpack$l","pow$1","lab2rgb","b_","lab_xyz","xyz_rgb","lab2rgb_1","unpack$m","type$9","lab","unpack$n","sqrt$1","atan2","round$4","lab2lch","lab2lch_1","unpack$o","rgb2lch","rgb2lch_1","unpack$p","sin","cos$1","lch2lab","lch2lab_1","unpack$q","lch2rgb","L","lch2rgb_1","unpack$r","hcl2rgb","hcl","reverse","hcl2rgb_1","unpack$s","type$a","lch","forEach","w3cx11","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflower","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","laserlemon","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrod","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","maroon2","maroon3","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","purple2","purple3","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","w3cx11_1","type$b","keys","n","unpack$t","rgb2num","rgb2num_1","type$c","num2rgb","num","num2rgb_1","type$d","unpack$u","type$e","round$5","log","temperature2rgb","kelvin","temp","temperature2rgb_1","unpack$v","round$6","rgb2temperature","minTemp","maxTemp","eps","rgb2temperature_1","temperature","type$f","mutate","clipped","darken","amount","brighten","darker","brighter","get","mc","channel","src","type$g","pow$2","EPS","MAX_ITER","luminance","lum","cur_lum","max_iter","low","high","mid","interpolate","lm","abs","rgb2luminance","luminance_x","interpolator","type$h","mix","col1","col2","premultiply","saturate","desaturate","type$i","set","value","charAt","out","xyz0","xyz1","sqrt$2","pow$3","lrgb","x1","y1","z1","x2","y2","z2","lab$1","_hsx","hue0","hue1","sat0","sat1","lbv0","lbv1","sat","hue","lbv","dh","lch$1","num$1","c1","c2","hcg$1","hsi$1","hsv$1","clip_rgb$2","pow$4","sqrt$3","PI$1","cos$2","sin$1","atan2$1","average","colors","weights","from","reduce","w","_average_lrgb","first","shift","xyz","cnt","dx","dy","A","ci","xyz2","A$1","col","type$j","pow$5","scale","_mode","_nacol","_spread","_domain","_pos","_padding","_classes","_colors","_out","_min","_max","_correctLightness","_colorCache","_useCache","_gamma","setColors","brewer","c$1","resetCache","getClass","tMapLightness","tMapDomain","getColor","val","bypassMap","classes","d","analyze","limits","domain","tOut","tBreaks","every","_m","range","_o","spread","correctLightness","L0","L1","pol","L_actual","L_ideal","L_diff","padding","numColors","result","dm","dd","__range__","samples","end","asc","cache","gamma","nodata","left","right","inclusive","ascending","bezier","I","lab0","lab1","lab2","lab3","I0","I1","bezier_1","blend","bottom","top","blend_f","c0","each","normal","multiply","darken$1","lighten","screen","overlay","burn","dodge","blend_1","type$k","clip_rgb$3","TWOPI$2","pow$6","sin$2","cos$3","cubehelix","start","rotations","lightness","dl","fract","amp","cos_a","sin_a","digits","floor$2","random","random_1","code","log$1","pow$7","floor$3","data","key","MAX_VALUE","sum","values","count","min_log","LOG10E","max_log","pb","pr","cluster","assignments","clusterSizes","repeat","nb_iters","centroids","j","i$4","mindist","best","j$1","dist","newCentroids","j$2","i$5","j$3","j$4","kClusters","j$5","i$6","tmpKMeansBreaks","j$6","i$7","analyze_1","contrast","l1","l2","sqrt$4","atan2$2","abs$1","cos$4","PI$2","deltaE","C","a1","b1","L2","a2","b2","sl","sc","h1","c4","sh","delL","delC","delA","delB","dH2","v1","v2","v3","distance","sum_sq","valid","scales","cool","hot","colorbrewer","OrRd","PuBu","BuPu","Oranges","BuGn","YlOrBr","YlGn","Reds","RdPu","Greens","YlGnBu","Purples","GnBu","Greys","YlOrRd","PuRd","Blues","PuBuGn","Viridis","Spectral","RdYlGn","RdBu","PiYG","PRGn","RdYlBu","BrBG","RdGy","PuOr","Set2","Accent","Set1","Set3","Dark2","Paired","Pastel2","Pastel1","list$1","colorbrewer_1","chroma_js","resolveInitPromise","rejectInitPromise","render","_vm","_h","$createElement","_self","staticRenderFns","attrs","API_KEY","CALLBACK_NAME","LIBRARIES","initialized","window","google","initPromise","Promise","resolve","reject","init","script","document","createElement","async","defer","onerror","querySelector","appendChild","component"],"mappings":"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","file":"js/chunk-30287aa2.4e155d46.js","sourcesContent":["export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=style&index=0&id=bc7bb4ca&lang=scss&scoped=true&\"","/**\n * chroma.js - JavaScript library for color conversions\n *\n * Copyright (c) 2011-2019, Gregor Aisch\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n * list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. The name Gregor Aisch may not be used to endorse or promote products\n * derived from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL GREGOR AISCH OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * -------------------------------------------------------\n *\n * chroma.js includes colors from colorbrewer2.org, which are released under\n * the following license:\n *\n * Copyright (c) 2002 Cynthia Brewer, Mark Harrower,\n * and The Pennsylvania State University.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,\n * either express or implied. See the License for the specific\n * language governing permissions and limitations under the License.\n *\n * ------------------------------------------------------\n *\n * Named colors are taken from X11 Color Names.\n * http://www.w3.org/TR/css3-color/#svg-color\n *\n * @preserve\n */\n\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global.chroma = factory());\n}(this, (function () { 'use strict';\n\n var limit = function (x, min, max) {\n if ( min === void 0 ) min=0;\n if ( max === void 0 ) max=1;\n\n return x < min ? min : x > max ? max : x;\n };\n\n var clip_rgb = function (rgb) {\n rgb._clipped = false;\n rgb._unclipped = rgb.slice(0);\n for (var i=0; i<=3; i++) {\n if (i < 3) {\n if (rgb[i] < 0 || rgb[i] > 255) { rgb._clipped = true; }\n rgb[i] = limit(rgb[i], 0, 255);\n } else if (i === 3) {\n rgb[i] = limit(rgb[i], 0, 1);\n }\n }\n return rgb;\n };\n\n // ported from jQuery's $.type\n var classToType = {};\n for (var i = 0, list = ['Boolean', 'Number', 'String', 'Function', 'Array', 'Date', 'RegExp', 'Undefined', 'Null']; i < list.length; i += 1) {\n var name = list[i];\n\n classToType[(\"[object \" + name + \"]\")] = name.toLowerCase();\n }\n var type = function(obj) {\n return classToType[Object.prototype.toString.call(obj)] || \"object\";\n };\n\n var unpack = function (args, keyOrder) {\n if ( keyOrder === void 0 ) keyOrder=null;\n\n \t// if called with more than 3 arguments, we return the arguments\n if (args.length >= 3) { return Array.prototype.slice.call(args); }\n // with less than 3 args we check if first arg is object\n // and use the keyOrder string to extract and sort properties\n \tif (type(args[0]) == 'object' && keyOrder) {\n \t\treturn keyOrder.split('')\n \t\t\t.filter(function (k) { return args[0][k] !== undefined; })\n \t\t\t.map(function (k) { return args[0][k]; });\n \t}\n \t// otherwise we just return the first argument\n \t// (which we suppose is an array of args)\n return args[0];\n };\n\n var last = function (args) {\n if (args.length < 2) { return null; }\n var l = args.length-1;\n if (type(args[l]) == 'string') { return args[l].toLowerCase(); }\n return null;\n };\n\n var PI = Math.PI;\n\n var utils = {\n \tclip_rgb: clip_rgb,\n \tlimit: limit,\n \ttype: type,\n \tunpack: unpack,\n \tlast: last,\n \tPI: PI,\n \tTWOPI: PI*2,\n \tPITHIRD: PI/3,\n \tDEG2RAD: PI / 180,\n \tRAD2DEG: 180 / PI\n };\n\n var input = {\n \tformat: {},\n \tautodetect: []\n };\n\n var last$1 = utils.last;\n var clip_rgb$1 = utils.clip_rgb;\n var type$1 = utils.type;\n\n\n var Color = function Color() {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var me = this;\n if (type$1(args[0]) === 'object' &&\n args[0].constructor &&\n args[0].constructor === this.constructor) {\n // the argument is already a Color instance\n return args[0];\n }\n\n // last argument could be the mode\n var mode = last$1(args);\n var autodetect = false;\n\n if (!mode) {\n autodetect = true;\n if (!input.sorted) {\n input.autodetect = input.autodetect.sort(function (a,b) { return b.p - a.p; });\n input.sorted = true;\n }\n // auto-detect format\n for (var i = 0, list = input.autodetect; i < list.length; i += 1) {\n var chk = list[i];\n\n mode = chk.test.apply(chk, args);\n if (mode) { break; }\n }\n }\n\n if (input.format[mode]) {\n var rgb = input.format[mode].apply(null, autodetect ? args : args.slice(0,-1));\n me._rgb = clip_rgb$1(rgb);\n } else {\n throw new Error('unknown format: '+args);\n }\n\n // add alpha channel\n if (me._rgb.length === 3) { me._rgb.push(1); }\n };\n\n Color.prototype.toString = function toString () {\n if (type$1(this.hex) == 'function') { return this.hex(); }\n return (\"[\" + (this._rgb.join(',')) + \"]\");\n };\n\n var Color_1 = Color;\n\n var chroma = function () {\n \tvar args = [], len = arguments.length;\n \twhile ( len-- ) args[ len ] = arguments[ len ];\n\n \treturn new (Function.prototype.bind.apply( chroma.Color, [ null ].concat( args) ));\n };\n\n chroma.Color = Color_1;\n chroma.version = '2.1.2';\n\n var chroma_1 = chroma;\n\n var unpack$1 = utils.unpack;\n var max = Math.max;\n\n var rgb2cmyk = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$1(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n r = r / 255;\n g = g / 255;\n b = b / 255;\n var k = 1 - max(r,max(g,b));\n var f = k < 1 ? 1 / (1-k) : 0;\n var c = (1-r-k) * f;\n var m = (1-g-k) * f;\n var y = (1-b-k) * f;\n return [c,m,y,k];\n };\n\n var rgb2cmyk_1 = rgb2cmyk;\n\n var unpack$2 = utils.unpack;\n\n var cmyk2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$2(args, 'cmyk');\n var c = args[0];\n var m = args[1];\n var y = args[2];\n var k = args[3];\n var alpha = args.length > 4 ? args[4] : 1;\n if (k === 1) { return [0,0,0,alpha]; }\n return [\n c >= 1 ? 0 : 255 * (1-c) * (1-k), // r\n m >= 1 ? 0 : 255 * (1-m) * (1-k), // g\n y >= 1 ? 0 : 255 * (1-y) * (1-k), // b\n alpha\n ];\n };\n\n var cmyk2rgb_1 = cmyk2rgb;\n\n var unpack$3 = utils.unpack;\n var type$2 = utils.type;\n\n\n\n Color_1.prototype.cmyk = function() {\n return rgb2cmyk_1(this._rgb);\n };\n\n chroma_1.cmyk = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['cmyk']) ));\n };\n\n input.format.cmyk = cmyk2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$3(args, 'cmyk');\n if (type$2(args) === 'array' && args.length === 4) {\n return 'cmyk';\n }\n }\n });\n\n var unpack$4 = utils.unpack;\n var last$2 = utils.last;\n var rnd = function (a) { return Math.round(a*100)/100; };\n\n /*\n * supported arguments:\n * - hsl2css(h,s,l)\n * - hsl2css(h,s,l,a)\n * - hsl2css([h,s,l], mode)\n * - hsl2css([h,s,l,a], mode)\n * - hsl2css({h,s,l,a}, mode)\n */\n var hsl2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var hsla = unpack$4(args, 'hsla');\n var mode = last$2(args) || 'lsa';\n hsla[0] = rnd(hsla[0] || 0);\n hsla[1] = rnd(hsla[1]*100) + '%';\n hsla[2] = rnd(hsla[2]*100) + '%';\n if (mode === 'hsla' || (hsla.length > 3 && hsla[3]<1)) {\n hsla[3] = hsla.length > 3 ? hsla[3] : 1;\n mode = 'hsla';\n } else {\n hsla.length = 3;\n }\n return (mode + \"(\" + (hsla.join(',')) + \")\");\n };\n\n var hsl2css_1 = hsl2css;\n\n var unpack$5 = utils.unpack;\n\n /*\n * supported arguments:\n * - rgb2hsl(r,g,b)\n * - rgb2hsl(r,g,b,a)\n * - rgb2hsl([r,g,b])\n * - rgb2hsl([r,g,b,a])\n * - rgb2hsl({r,g,b,a})\n */\n var rgb2hsl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$5(args, 'rgba');\n var r = args[0];\n var g = args[1];\n var b = args[2];\n\n r /= 255;\n g /= 255;\n b /= 255;\n\n var min = Math.min(r, g, b);\n var max = Math.max(r, g, b);\n\n var l = (max + min) / 2;\n var s, h;\n\n if (max === min){\n s = 0;\n h = Number.NaN;\n } else {\n s = l < 0.5 ? (max - min) / (max + min) : (max - min) / (2 - max - min);\n }\n\n if (r == max) { h = (g - b) / (max - min); }\n else if (g == max) { h = 2 + (b - r) / (max - min); }\n else if (b == max) { h = 4 + (r - g) / (max - min); }\n\n h *= 60;\n if (h < 0) { h += 360; }\n if (args.length>3 && args[3]!==undefined) { return [h,s,l,args[3]]; }\n return [h,s,l];\n };\n\n var rgb2hsl_1 = rgb2hsl;\n\n var unpack$6 = utils.unpack;\n var last$3 = utils.last;\n\n\n var round = Math.round;\n\n /*\n * supported arguments:\n * - rgb2css(r,g,b)\n * - rgb2css(r,g,b,a)\n * - rgb2css([r,g,b], mode)\n * - rgb2css([r,g,b,a], mode)\n * - rgb2css({r,g,b,a}, mode)\n */\n var rgb2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgba = unpack$6(args, 'rgba');\n var mode = last$3(args) || 'rgb';\n if (mode.substr(0,3) == 'hsl') {\n return hsl2css_1(rgb2hsl_1(rgba), mode);\n }\n rgba[0] = round(rgba[0]);\n rgba[1] = round(rgba[1]);\n rgba[2] = round(rgba[2]);\n if (mode === 'rgba' || (rgba.length > 3 && rgba[3]<1)) {\n rgba[3] = rgba.length > 3 ? rgba[3] : 1;\n mode = 'rgba';\n }\n return (mode + \"(\" + (rgba.slice(0,mode==='rgb'?3:4).join(',')) + \")\");\n };\n\n var rgb2css_1 = rgb2css;\n\n var unpack$7 = utils.unpack;\n var round$1 = Math.round;\n\n var hsl2rgb = function () {\n var assign;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack$7(args, 'hsl');\n var h = args[0];\n var s = args[1];\n var l = args[2];\n var r,g,b;\n if (s === 0) {\n r = g = b = l*255;\n } else {\n var t3 = [0,0,0];\n var c = [0,0,0];\n var t2 = l < 0.5 ? l * (1+s) : l+s-l*s;\n var t1 = 2 * l - t2;\n var h_ = h / 360;\n t3[0] = h_ + 1/3;\n t3[1] = h_;\n t3[2] = h_ - 1/3;\n for (var i=0; i<3; i++) {\n if (t3[i] < 0) { t3[i] += 1; }\n if (t3[i] > 1) { t3[i] -= 1; }\n if (6 * t3[i] < 1)\n { c[i] = t1 + (t2 - t1) * 6 * t3[i]; }\n else if (2 * t3[i] < 1)\n { c[i] = t2; }\n else if (3 * t3[i] < 2)\n { c[i] = t1 + (t2 - t1) * ((2 / 3) - t3[i]) * 6; }\n else\n { c[i] = t1; }\n }\n (assign = [round$1(c[0]*255),round$1(c[1]*255),round$1(c[2]*255)], r = assign[0], g = assign[1], b = assign[2]);\n }\n if (args.length > 3) {\n // keep alpha channel\n return [r,g,b,args[3]];\n }\n return [r,g,b,1];\n };\n\n var hsl2rgb_1 = hsl2rgb;\n\n var RE_RGB = /^rgb\\(\\s*(-?\\d+),\\s*(-?\\d+)\\s*,\\s*(-?\\d+)\\s*\\)$/;\n var RE_RGBA = /^rgba\\(\\s*(-?\\d+),\\s*(-?\\d+)\\s*,\\s*(-?\\d+)\\s*,\\s*([01]|[01]?\\.\\d+)\\)$/;\n var RE_RGB_PCT = /^rgb\\(\\s*(-?\\d+(?:\\.\\d+)?)%,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*\\)$/;\n var RE_RGBA_PCT = /^rgba\\(\\s*(-?\\d+(?:\\.\\d+)?)%,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)$/;\n var RE_HSL = /^hsl\\(\\s*(-?\\d+(?:\\.\\d+)?),\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*\\)$/;\n var RE_HSLA = /^hsla\\(\\s*(-?\\d+(?:\\.\\d+)?),\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)$/;\n\n var round$2 = Math.round;\n\n var css2rgb = function (css) {\n css = css.toLowerCase().trim();\n var m;\n\n if (input.format.named) {\n try {\n return input.format.named(css);\n } catch (e) {\n // eslint-disable-next-line\n }\n }\n\n // rgb(250,20,0)\n if ((m = css.match(RE_RGB))) {\n var rgb = m.slice(1,4);\n for (var i=0; i<3; i++) {\n rgb[i] = +rgb[i];\n }\n rgb[3] = 1; // default alpha\n return rgb;\n }\n\n // rgba(250,20,0,0.4)\n if ((m = css.match(RE_RGBA))) {\n var rgb$1 = m.slice(1,5);\n for (var i$1=0; i$1<4; i$1++) {\n rgb$1[i$1] = +rgb$1[i$1];\n }\n return rgb$1;\n }\n\n // rgb(100%,0%,0%)\n if ((m = css.match(RE_RGB_PCT))) {\n var rgb$2 = m.slice(1,4);\n for (var i$2=0; i$2<3; i$2++) {\n rgb$2[i$2] = round$2(rgb$2[i$2] * 2.55);\n }\n rgb$2[3] = 1; // default alpha\n return rgb$2;\n }\n\n // rgba(100%,0%,0%,0.4)\n if ((m = css.match(RE_RGBA_PCT))) {\n var rgb$3 = m.slice(1,5);\n for (var i$3=0; i$3<3; i$3++) {\n rgb$3[i$3] = round$2(rgb$3[i$3] * 2.55);\n }\n rgb$3[3] = +rgb$3[3];\n return rgb$3;\n }\n\n // hsl(0,100%,50%)\n if ((m = css.match(RE_HSL))) {\n var hsl = m.slice(1,4);\n hsl[1] *= 0.01;\n hsl[2] *= 0.01;\n var rgb$4 = hsl2rgb_1(hsl);\n rgb$4[3] = 1;\n return rgb$4;\n }\n\n // hsla(0,100%,50%,0.5)\n if ((m = css.match(RE_HSLA))) {\n var hsl$1 = m.slice(1,4);\n hsl$1[1] *= 0.01;\n hsl$1[2] *= 0.01;\n var rgb$5 = hsl2rgb_1(hsl$1);\n rgb$5[3] = +m[4]; // default alpha = 1\n return rgb$5;\n }\n };\n\n css2rgb.test = function (s) {\n return RE_RGB.test(s) ||\n RE_RGBA.test(s) ||\n RE_RGB_PCT.test(s) ||\n RE_RGBA_PCT.test(s) ||\n RE_HSL.test(s) ||\n RE_HSLA.test(s);\n };\n\n var css2rgb_1 = css2rgb;\n\n var type$3 = utils.type;\n\n\n\n\n Color_1.prototype.css = function(mode) {\n return rgb2css_1(this._rgb, mode);\n };\n\n chroma_1.css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['css']) ));\n };\n\n input.format.css = css2rgb_1;\n\n input.autodetect.push({\n p: 5,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (!rest.length && type$3(h) === 'string' && css2rgb_1.test(h)) {\n return 'css';\n }\n }\n });\n\n var unpack$8 = utils.unpack;\n\n input.format.gl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgb = unpack$8(args, 'rgba');\n rgb[0] *= 255;\n rgb[1] *= 255;\n rgb[2] *= 255;\n return rgb;\n };\n\n chroma_1.gl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['gl']) ));\n };\n\n Color_1.prototype.gl = function() {\n var rgb = this._rgb;\n return [rgb[0]/255, rgb[1]/255, rgb[2]/255, rgb[3]];\n };\n\n var unpack$9 = utils.unpack;\n\n var rgb2hcg = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$9(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var min = Math.min(r, g, b);\n var max = Math.max(r, g, b);\n var delta = max - min;\n var c = delta * 100 / 255;\n var _g = min / (255 - delta) * 100;\n var h;\n if (delta === 0) {\n h = Number.NaN;\n } else {\n if (r === max) { h = (g - b) / delta; }\n if (g === max) { h = 2+(b - r) / delta; }\n if (b === max) { h = 4+(r - g) / delta; }\n h *= 60;\n if (h < 0) { h += 360; }\n }\n return [h, c, _g];\n };\n\n var rgb2hcg_1 = rgb2hcg;\n\n var unpack$a = utils.unpack;\n var floor = Math.floor;\n\n /*\n * this is basically just HSV with some minor tweaks\n *\n * hue.. [0..360]\n * chroma .. [0..1]\n * grayness .. [0..1]\n */\n\n var hcg2rgb = function () {\n var assign, assign$1, assign$2, assign$3, assign$4, assign$5;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack$a(args, 'hcg');\n var h = args[0];\n var c = args[1];\n var _g = args[2];\n var r,g,b;\n _g = _g * 255;\n var _c = c * 255;\n if (c === 0) {\n r = g = b = _g;\n } else {\n if (h === 360) { h = 0; }\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 60;\n var i = floor(h);\n var f = h - i;\n var p = _g * (1 - c);\n var q = p + _c * (1 - f);\n var t = p + _c * f;\n var v = p + _c;\n switch (i) {\n case 0: (assign = [v, t, p], r = assign[0], g = assign[1], b = assign[2]); break\n case 1: (assign$1 = [q, v, p], r = assign$1[0], g = assign$1[1], b = assign$1[2]); break\n case 2: (assign$2 = [p, v, t], r = assign$2[0], g = assign$2[1], b = assign$2[2]); break\n case 3: (assign$3 = [p, q, v], r = assign$3[0], g = assign$3[1], b = assign$3[2]); break\n case 4: (assign$4 = [t, p, v], r = assign$4[0], g = assign$4[1], b = assign$4[2]); break\n case 5: (assign$5 = [v, p, q], r = assign$5[0], g = assign$5[1], b = assign$5[2]); break\n }\n }\n return [r, g, b, args.length > 3 ? args[3] : 1];\n };\n\n var hcg2rgb_1 = hcg2rgb;\n\n var unpack$b = utils.unpack;\n var type$4 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.hcg = function() {\n return rgb2hcg_1(this._rgb);\n };\n\n chroma_1.hcg = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hcg']) ));\n };\n\n input.format.hcg = hcg2rgb_1;\n\n input.autodetect.push({\n p: 1,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$b(args, 'hcg');\n if (type$4(args) === 'array' && args.length === 3) {\n return 'hcg';\n }\n }\n });\n\n var unpack$c = utils.unpack;\n var last$4 = utils.last;\n var round$3 = Math.round;\n\n var rgb2hex = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$c(args, 'rgba');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var a = ref[3];\n var mode = last$4(args) || 'auto';\n if (a === undefined) { a = 1; }\n if (mode === 'auto') {\n mode = a < 1 ? 'rgba' : 'rgb';\n }\n r = round$3(r);\n g = round$3(g);\n b = round$3(b);\n var u = r << 16 | g << 8 | b;\n var str = \"000000\" + u.toString(16); //#.toUpperCase();\n str = str.substr(str.length - 6);\n var hxa = '0' + round$3(a * 255).toString(16);\n hxa = hxa.substr(hxa.length - 2);\n switch (mode.toLowerCase()) {\n case 'rgba': return (\"#\" + str + hxa);\n case 'argb': return (\"#\" + hxa + str);\n default: return (\"#\" + str);\n }\n };\n\n var rgb2hex_1 = rgb2hex;\n\n var RE_HEX = /^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/;\n var RE_HEXA = /^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/;\n\n var hex2rgb = function (hex) {\n if (hex.match(RE_HEX)) {\n // remove optional leading #\n if (hex.length === 4 || hex.length === 7) {\n hex = hex.substr(1);\n }\n // expand short-notation to full six-digit\n if (hex.length === 3) {\n hex = hex.split('');\n hex = hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];\n }\n var u = parseInt(hex, 16);\n var r = u >> 16;\n var g = u >> 8 & 0xFF;\n var b = u & 0xFF;\n return [r,g,b,1];\n }\n\n // match rgba hex format, eg #FF000077\n if (hex.match(RE_HEXA)) {\n if (hex.length === 5 || hex.length === 9) {\n // remove optional leading #\n hex = hex.substr(1);\n }\n // expand short-notation to full eight-digit\n if (hex.length === 4) {\n hex = hex.split('');\n hex = hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2]+hex[3]+hex[3];\n }\n var u$1 = parseInt(hex, 16);\n var r$1 = u$1 >> 24 & 0xFF;\n var g$1 = u$1 >> 16 & 0xFF;\n var b$1 = u$1 >> 8 & 0xFF;\n var a = Math.round((u$1 & 0xFF) / 0xFF * 100) / 100;\n return [r$1,g$1,b$1,a];\n }\n\n // we used to check for css colors here\n // if _input.css? and rgb = _input.css hex\n // return rgb\n\n throw new Error((\"unknown hex color: \" + hex));\n };\n\n var hex2rgb_1 = hex2rgb;\n\n var type$5 = utils.type;\n\n\n\n\n Color_1.prototype.hex = function(mode) {\n return rgb2hex_1(this._rgb, mode);\n };\n\n chroma_1.hex = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hex']) ));\n };\n\n input.format.hex = hex2rgb_1;\n input.autodetect.push({\n p: 4,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (!rest.length && type$5(h) === 'string' && [3,4,5,6,7,8,9].indexOf(h.length) >= 0) {\n return 'hex';\n }\n }\n });\n\n var unpack$d = utils.unpack;\n var TWOPI = utils.TWOPI;\n var min = Math.min;\n var sqrt = Math.sqrt;\n var acos = Math.acos;\n\n var rgb2hsi = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n borrowed from here:\n http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/rgb2hsi.cpp\n */\n var ref = unpack$d(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n r /= 255;\n g /= 255;\n b /= 255;\n var h;\n var min_ = min(r,g,b);\n var i = (r+g+b) / 3;\n var s = i > 0 ? 1 - min_/i : 0;\n if (s === 0) {\n h = NaN;\n } else {\n h = ((r-g)+(r-b)) / 2;\n h /= sqrt((r-g)*(r-g) + (r-b)*(g-b));\n h = acos(h);\n if (b > g) {\n h = TWOPI - h;\n }\n h /= TWOPI;\n }\n return [h*360,s,i];\n };\n\n var rgb2hsi_1 = rgb2hsi;\n\n var unpack$e = utils.unpack;\n var limit$1 = utils.limit;\n var TWOPI$1 = utils.TWOPI;\n var PITHIRD = utils.PITHIRD;\n var cos = Math.cos;\n\n /*\n * hue [0..360]\n * saturation [0..1]\n * intensity [0..1]\n */\n var hsi2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n borrowed from here:\n http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/hsi2rgb.cpp\n */\n args = unpack$e(args, 'hsi');\n var h = args[0];\n var s = args[1];\n var i = args[2];\n var r,g,b;\n\n if (isNaN(h)) { h = 0; }\n if (isNaN(s)) { s = 0; }\n // normalize hue\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 360;\n if (h < 1/3) {\n b = (1-s)/3;\n r = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;\n g = 1 - (b+r);\n } else if (h < 2/3) {\n h -= 1/3;\n r = (1-s)/3;\n g = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;\n b = 1 - (r+g);\n } else {\n h -= 2/3;\n g = (1-s)/3;\n b = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;\n r = 1 - (g+b);\n }\n r = limit$1(i*r*3);\n g = limit$1(i*g*3);\n b = limit$1(i*b*3);\n return [r*255, g*255, b*255, args.length > 3 ? args[3] : 1];\n };\n\n var hsi2rgb_1 = hsi2rgb;\n\n var unpack$f = utils.unpack;\n var type$6 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.hsi = function() {\n return rgb2hsi_1(this._rgb);\n };\n\n chroma_1.hsi = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsi']) ));\n };\n\n input.format.hsi = hsi2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$f(args, 'hsi');\n if (type$6(args) === 'array' && args.length === 3) {\n return 'hsi';\n }\n }\n });\n\n var unpack$g = utils.unpack;\n var type$7 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.hsl = function() {\n return rgb2hsl_1(this._rgb);\n };\n\n chroma_1.hsl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsl']) ));\n };\n\n input.format.hsl = hsl2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$g(args, 'hsl');\n if (type$7(args) === 'array' && args.length === 3) {\n return 'hsl';\n }\n }\n });\n\n var unpack$h = utils.unpack;\n var min$1 = Math.min;\n var max$1 = Math.max;\n\n /*\n * supported arguments:\n * - rgb2hsv(r,g,b)\n * - rgb2hsv([r,g,b])\n * - rgb2hsv({r,g,b})\n */\n var rgb2hsl$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$h(args, 'rgb');\n var r = args[0];\n var g = args[1];\n var b = args[2];\n var min_ = min$1(r, g, b);\n var max_ = max$1(r, g, b);\n var delta = max_ - min_;\n var h,s,v;\n v = max_ / 255.0;\n if (max_ === 0) {\n h = Number.NaN;\n s = 0;\n } else {\n s = delta / max_;\n if (r === max_) { h = (g - b) / delta; }\n if (g === max_) { h = 2+(b - r) / delta; }\n if (b === max_) { h = 4+(r - g) / delta; }\n h *= 60;\n if (h < 0) { h += 360; }\n }\n return [h, s, v]\n };\n\n var rgb2hsv = rgb2hsl$1;\n\n var unpack$i = utils.unpack;\n var floor$1 = Math.floor;\n\n var hsv2rgb = function () {\n var assign, assign$1, assign$2, assign$3, assign$4, assign$5;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack$i(args, 'hsv');\n var h = args[0];\n var s = args[1];\n var v = args[2];\n var r,g,b;\n v *= 255;\n if (s === 0) {\n r = g = b = v;\n } else {\n if (h === 360) { h = 0; }\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 60;\n\n var i = floor$1(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - s * f);\n var t = v * (1 - s * (1 - f));\n\n switch (i) {\n case 0: (assign = [v, t, p], r = assign[0], g = assign[1], b = assign[2]); break\n case 1: (assign$1 = [q, v, p], r = assign$1[0], g = assign$1[1], b = assign$1[2]); break\n case 2: (assign$2 = [p, v, t], r = assign$2[0], g = assign$2[1], b = assign$2[2]); break\n case 3: (assign$3 = [p, q, v], r = assign$3[0], g = assign$3[1], b = assign$3[2]); break\n case 4: (assign$4 = [t, p, v], r = assign$4[0], g = assign$4[1], b = assign$4[2]); break\n case 5: (assign$5 = [v, p, q], r = assign$5[0], g = assign$5[1], b = assign$5[2]); break\n }\n }\n return [r,g,b,args.length > 3?args[3]:1];\n };\n\n var hsv2rgb_1 = hsv2rgb;\n\n var unpack$j = utils.unpack;\n var type$8 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.hsv = function() {\n return rgb2hsv(this._rgb);\n };\n\n chroma_1.hsv = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsv']) ));\n };\n\n input.format.hsv = hsv2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$j(args, 'hsv');\n if (type$8(args) === 'array' && args.length === 3) {\n return 'hsv';\n }\n }\n });\n\n var labConstants = {\n // Corresponds roughly to RGB brighter/darker\n Kn: 18,\n\n // D65 standard referent\n Xn: 0.950470,\n Yn: 1,\n Zn: 1.088830,\n\n t0: 0.137931034, // 4 / 29\n t1: 0.206896552, // 6 / 29\n t2: 0.12841855, // 3 * t1 * t1\n t3: 0.008856452, // t1 * t1 * t1\n };\n\n var unpack$k = utils.unpack;\n var pow = Math.pow;\n\n var rgb2lab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$k(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var ref$1 = rgb2xyz(r,g,b);\n var x = ref$1[0];\n var y = ref$1[1];\n var z = ref$1[2];\n var l = 116 * y - 16;\n return [l < 0 ? 0 : l, 500 * (x - y), 200 * (y - z)];\n };\n\n var rgb_xyz = function (r) {\n if ((r /= 255) <= 0.04045) { return r / 12.92; }\n return pow((r + 0.055) / 1.055, 2.4);\n };\n\n var xyz_lab = function (t) {\n if (t > labConstants.t3) { return pow(t, 1 / 3); }\n return t / labConstants.t2 + labConstants.t0;\n };\n\n var rgb2xyz = function (r,g,b) {\n r = rgb_xyz(r);\n g = rgb_xyz(g);\n b = rgb_xyz(b);\n var x = xyz_lab((0.4124564 * r + 0.3575761 * g + 0.1804375 * b) / labConstants.Xn);\n var y = xyz_lab((0.2126729 * r + 0.7151522 * g + 0.0721750 * b) / labConstants.Yn);\n var z = xyz_lab((0.0193339 * r + 0.1191920 * g + 0.9503041 * b) / labConstants.Zn);\n return [x,y,z];\n };\n\n var rgb2lab_1 = rgb2lab;\n\n var unpack$l = utils.unpack;\n var pow$1 = Math.pow;\n\n /*\n * L* [0..100]\n * a [-100..100]\n * b [-100..100]\n */\n var lab2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$l(args, 'lab');\n var l = args[0];\n var a = args[1];\n var b = args[2];\n var x,y,z, r,g,b_;\n\n y = (l + 16) / 116;\n x = isNaN(a) ? y : y + a / 500;\n z = isNaN(b) ? y : y - b / 200;\n\n y = labConstants.Yn * lab_xyz(y);\n x = labConstants.Xn * lab_xyz(x);\n z = labConstants.Zn * lab_xyz(z);\n\n r = xyz_rgb(3.2404542 * x - 1.5371385 * y - 0.4985314 * z); // D65 -> sRGB\n g = xyz_rgb(-0.9692660 * x + 1.8760108 * y + 0.0415560 * z);\n b_ = xyz_rgb(0.0556434 * x - 0.2040259 * y + 1.0572252 * z);\n\n return [r,g,b_,args.length > 3 ? args[3] : 1];\n };\n\n var xyz_rgb = function (r) {\n return 255 * (r <= 0.00304 ? 12.92 * r : 1.055 * pow$1(r, 1 / 2.4) - 0.055)\n };\n\n var lab_xyz = function (t) {\n return t > labConstants.t1 ? t * t * t : labConstants.t2 * (t - labConstants.t0)\n };\n\n var lab2rgb_1 = lab2rgb;\n\n var unpack$m = utils.unpack;\n var type$9 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.lab = function() {\n return rgb2lab_1(this._rgb);\n };\n\n chroma_1.lab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['lab']) ));\n };\n\n input.format.lab = lab2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$m(args, 'lab');\n if (type$9(args) === 'array' && args.length === 3) {\n return 'lab';\n }\n }\n });\n\n var unpack$n = utils.unpack;\n var RAD2DEG = utils.RAD2DEG;\n var sqrt$1 = Math.sqrt;\n var atan2 = Math.atan2;\n var round$4 = Math.round;\n\n var lab2lch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$n(args, 'lab');\n var l = ref[0];\n var a = ref[1];\n var b = ref[2];\n var c = sqrt$1(a * a + b * b);\n var h = (atan2(b, a) * RAD2DEG + 360) % 360;\n if (round$4(c*10000) === 0) { h = Number.NaN; }\n return [l, c, h];\n };\n\n var lab2lch_1 = lab2lch;\n\n var unpack$o = utils.unpack;\n\n\n\n var rgb2lch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$o(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var ref$1 = rgb2lab_1(r,g,b);\n var l = ref$1[0];\n var a = ref$1[1];\n var b_ = ref$1[2];\n return lab2lch_1(l,a,b_);\n };\n\n var rgb2lch_1 = rgb2lch;\n\n var unpack$p = utils.unpack;\n var DEG2RAD = utils.DEG2RAD;\n var sin = Math.sin;\n var cos$1 = Math.cos;\n\n var lch2lab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n Convert from a qualitative parameter h and a quantitative parameter l to a 24-bit pixel.\n These formulas were invented by David Dalrymple to obtain maximum contrast without going\n out of gamut if the parameters are in the range 0-1.\n\n A saturation multiplier was added by Gregor Aisch\n */\n var ref = unpack$p(args, 'lch');\n var l = ref[0];\n var c = ref[1];\n var h = ref[2];\n if (isNaN(h)) { h = 0; }\n h = h * DEG2RAD;\n return [l, cos$1(h) * c, sin(h) * c]\n };\n\n var lch2lab_1 = lch2lab;\n\n var unpack$q = utils.unpack;\n\n\n\n var lch2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$q(args, 'lch');\n var l = args[0];\n var c = args[1];\n var h = args[2];\n var ref = lch2lab_1 (l,c,h);\n var L = ref[0];\n var a = ref[1];\n var b_ = ref[2];\n var ref$1 = lab2rgb_1 (L,a,b_);\n var r = ref$1[0];\n var g = ref$1[1];\n var b = ref$1[2];\n return [r, g, b, args.length > 3 ? args[3] : 1];\n };\n\n var lch2rgb_1 = lch2rgb;\n\n var unpack$r = utils.unpack;\n\n\n var hcl2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var hcl = unpack$r(args, 'hcl').reverse();\n return lch2rgb_1.apply(void 0, hcl);\n };\n\n var hcl2rgb_1 = hcl2rgb;\n\n var unpack$s = utils.unpack;\n var type$a = utils.type;\n\n\n\n\n\n\n Color_1.prototype.lch = function() { return rgb2lch_1(this._rgb); };\n Color_1.prototype.hcl = function() { return rgb2lch_1(this._rgb).reverse(); };\n\n chroma_1.lch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['lch']) ));\n };\n chroma_1.hcl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hcl']) ));\n };\n\n input.format.lch = lch2rgb_1;\n input.format.hcl = hcl2rgb_1;\n\n ['lch','hcl'].forEach(function (m) { return input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$s(args, m);\n if (type$a(args) === 'array' && args.length === 3) {\n return m;\n }\n }\n }); });\n\n /**\n \tX11 color names\n\n \thttp://www.w3.org/TR/css3-color/#svg-color\n */\n\n var w3cx11 = {\n aliceblue: '#f0f8ff',\n antiquewhite: '#faebd7',\n aqua: '#00ffff',\n aquamarine: '#7fffd4',\n azure: '#f0ffff',\n beige: '#f5f5dc',\n bisque: '#ffe4c4',\n black: '#000000',\n blanchedalmond: '#ffebcd',\n blue: '#0000ff',\n blueviolet: '#8a2be2',\n brown: '#a52a2a',\n burlywood: '#deb887',\n cadetblue: '#5f9ea0',\n chartreuse: '#7fff00',\n chocolate: '#d2691e',\n coral: '#ff7f50',\n cornflower: '#6495ed',\n cornflowerblue: '#6495ed',\n cornsilk: '#fff8dc',\n crimson: '#dc143c',\n cyan: '#00ffff',\n darkblue: '#00008b',\n darkcyan: '#008b8b',\n darkgoldenrod: '#b8860b',\n darkgray: '#a9a9a9',\n darkgreen: '#006400',\n darkgrey: '#a9a9a9',\n darkkhaki: '#bdb76b',\n darkmagenta: '#8b008b',\n darkolivegreen: '#556b2f',\n darkorange: '#ff8c00',\n darkorchid: '#9932cc',\n darkred: '#8b0000',\n darksalmon: '#e9967a',\n darkseagreen: '#8fbc8f',\n darkslateblue: '#483d8b',\n darkslategray: '#2f4f4f',\n darkslategrey: '#2f4f4f',\n darkturquoise: '#00ced1',\n darkviolet: '#9400d3',\n deeppink: '#ff1493',\n deepskyblue: '#00bfff',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1e90ff',\n firebrick: '#b22222',\n floralwhite: '#fffaf0',\n forestgreen: '#228b22',\n fuchsia: '#ff00ff',\n gainsboro: '#dcdcdc',\n ghostwhite: '#f8f8ff',\n gold: '#ffd700',\n goldenrod: '#daa520',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#adff2f',\n grey: '#808080',\n honeydew: '#f0fff0',\n hotpink: '#ff69b4',\n indianred: '#cd5c5c',\n indigo: '#4b0082',\n ivory: '#fffff0',\n khaki: '#f0e68c',\n laserlemon: '#ffff54',\n lavender: '#e6e6fa',\n lavenderblush: '#fff0f5',\n lawngreen: '#7cfc00',\n lemonchiffon: '#fffacd',\n lightblue: '#add8e6',\n lightcoral: '#f08080',\n lightcyan: '#e0ffff',\n lightgoldenrod: '#fafad2',\n lightgoldenrodyellow: '#fafad2',\n lightgray: '#d3d3d3',\n lightgreen: '#90ee90',\n lightgrey: '#d3d3d3',\n lightpink: '#ffb6c1',\n lightsalmon: '#ffa07a',\n lightseagreen: '#20b2aa',\n lightskyblue: '#87cefa',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#b0c4de',\n lightyellow: '#ffffe0',\n lime: '#00ff00',\n limegreen: '#32cd32',\n linen: '#faf0e6',\n magenta: '#ff00ff',\n maroon: '#800000',\n maroon2: '#7f0000',\n maroon3: '#b03060',\n mediumaquamarine: '#66cdaa',\n mediumblue: '#0000cd',\n mediumorchid: '#ba55d3',\n mediumpurple: '#9370db',\n mediumseagreen: '#3cb371',\n mediumslateblue: '#7b68ee',\n mediumspringgreen: '#00fa9a',\n mediumturquoise: '#48d1cc',\n mediumvioletred: '#c71585',\n midnightblue: '#191970',\n mintcream: '#f5fffa',\n mistyrose: '#ffe4e1',\n moccasin: '#ffe4b5',\n navajowhite: '#ffdead',\n navy: '#000080',\n oldlace: '#fdf5e6',\n olive: '#808000',\n olivedrab: '#6b8e23',\n orange: '#ffa500',\n orangered: '#ff4500',\n orchid: '#da70d6',\n palegoldenrod: '#eee8aa',\n palegreen: '#98fb98',\n paleturquoise: '#afeeee',\n palevioletred: '#db7093',\n papayawhip: '#ffefd5',\n peachpuff: '#ffdab9',\n peru: '#cd853f',\n pink: '#ffc0cb',\n plum: '#dda0dd',\n powderblue: '#b0e0e6',\n purple: '#800080',\n purple2: '#7f007f',\n purple3: '#a020f0',\n rebeccapurple: '#663399',\n red: '#ff0000',\n rosybrown: '#bc8f8f',\n royalblue: '#4169e1',\n saddlebrown: '#8b4513',\n salmon: '#fa8072',\n sandybrown: '#f4a460',\n seagreen: '#2e8b57',\n seashell: '#fff5ee',\n sienna: '#a0522d',\n silver: '#c0c0c0',\n skyblue: '#87ceeb',\n slateblue: '#6a5acd',\n slategray: '#708090',\n slategrey: '#708090',\n snow: '#fffafa',\n springgreen: '#00ff7f',\n steelblue: '#4682b4',\n tan: '#d2b48c',\n teal: '#008080',\n thistle: '#d8bfd8',\n tomato: '#ff6347',\n turquoise: '#40e0d0',\n violet: '#ee82ee',\n wheat: '#f5deb3',\n white: '#ffffff',\n whitesmoke: '#f5f5f5',\n yellow: '#ffff00',\n yellowgreen: '#9acd32'\n };\n\n var w3cx11_1 = w3cx11;\n\n var type$b = utils.type;\n\n\n\n\n\n Color_1.prototype.name = function() {\n var hex = rgb2hex_1(this._rgb, 'rgb');\n for (var i = 0, list = Object.keys(w3cx11_1); i < list.length; i += 1) {\n var n = list[i];\n\n if (w3cx11_1[n] === hex) { return n.toLowerCase(); }\n }\n return hex;\n };\n\n input.format.named = function (name) {\n name = name.toLowerCase();\n if (w3cx11_1[name]) { return hex2rgb_1(w3cx11_1[name]); }\n throw new Error('unknown color name: '+name);\n };\n\n input.autodetect.push({\n p: 5,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (!rest.length && type$b(h) === 'string' && w3cx11_1[h.toLowerCase()]) {\n return 'named';\n }\n }\n });\n\n var unpack$t = utils.unpack;\n\n var rgb2num = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$t(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n return (r << 16) + (g << 8) + b;\n };\n\n var rgb2num_1 = rgb2num;\n\n var type$c = utils.type;\n\n var num2rgb = function (num) {\n if (type$c(num) == \"number\" && num >= 0 && num <= 0xFFFFFF) {\n var r = num >> 16;\n var g = (num >> 8) & 0xFF;\n var b = num & 0xFF;\n return [r,g,b,1];\n }\n throw new Error(\"unknown num color: \"+num);\n };\n\n var num2rgb_1 = num2rgb;\n\n var type$d = utils.type;\n\n\n\n Color_1.prototype.num = function() {\n return rgb2num_1(this._rgb);\n };\n\n chroma_1.num = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['num']) ));\n };\n\n input.format.num = num2rgb_1;\n\n input.autodetect.push({\n p: 5,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (args.length === 1 && type$d(args[0]) === 'number' && args[0] >= 0 && args[0] <= 0xFFFFFF) {\n return 'num';\n }\n }\n });\n\n var unpack$u = utils.unpack;\n var type$e = utils.type;\n var round$5 = Math.round;\n\n Color_1.prototype.rgb = function(rnd) {\n if ( rnd === void 0 ) rnd=true;\n\n if (rnd === false) { return this._rgb.slice(0,3); }\n return this._rgb.slice(0,3).map(round$5);\n };\n\n Color_1.prototype.rgba = function(rnd) {\n if ( rnd === void 0 ) rnd=true;\n\n return this._rgb.slice(0,4).map(function (v,i) {\n return i<3 ? (rnd === false ? v : round$5(v)) : v;\n });\n };\n\n chroma_1.rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['rgb']) ));\n };\n\n input.format.rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgba = unpack$u(args, 'rgba');\n if (rgba[3] === undefined) { rgba[3] = 1; }\n return rgba;\n };\n\n input.autodetect.push({\n p: 3,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$u(args, 'rgba');\n if (type$e(args) === 'array' && (args.length === 3 ||\n args.length === 4 && type$e(args[3]) == 'number' && args[3] >= 0 && args[3] <= 1)) {\n return 'rgb';\n }\n }\n });\n\n /*\n * Based on implementation by Neil Bartlett\n * https://github.com/neilbartlett/color-temperature\n */\n\n var log = Math.log;\n\n var temperature2rgb = function (kelvin) {\n var temp = kelvin / 100;\n var r,g,b;\n if (temp < 66) {\n r = 255;\n g = -155.25485562709179 - 0.44596950469579133 * (g = temp-2) + 104.49216199393888 * log(g);\n b = temp < 20 ? 0 : -254.76935184120902 + 0.8274096064007395 * (b = temp-10) + 115.67994401066147 * log(b);\n } else {\n r = 351.97690566805693 + 0.114206453784165 * (r = temp-55) - 40.25366309332127 * log(r);\n g = 325.4494125711974 + 0.07943456536662342 * (g = temp-50) - 28.0852963507957 * log(g);\n b = 255;\n }\n return [r,g,b,1];\n };\n\n var temperature2rgb_1 = temperature2rgb;\n\n /*\n * Based on implementation by Neil Bartlett\n * https://github.com/neilbartlett/color-temperature\n **/\n\n\n var unpack$v = utils.unpack;\n var round$6 = Math.round;\n\n var rgb2temperature = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgb = unpack$v(args, 'rgb');\n var r = rgb[0], b = rgb[2];\n var minTemp = 1000;\n var maxTemp = 40000;\n var eps = 0.4;\n var temp;\n while (maxTemp - minTemp > eps) {\n temp = (maxTemp + minTemp) * 0.5;\n var rgb$1 = temperature2rgb_1(temp);\n if ((rgb$1[2] / rgb$1[0]) >= (b / r)) {\n maxTemp = temp;\n } else {\n minTemp = temp;\n }\n }\n return round$6(temp);\n };\n\n var rgb2temperature_1 = rgb2temperature;\n\n Color_1.prototype.temp =\n Color_1.prototype.kelvin =\n Color_1.prototype.temperature = function() {\n return rgb2temperature_1(this._rgb);\n };\n\n chroma_1.temp =\n chroma_1.kelvin =\n chroma_1.temperature = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['temp']) ));\n };\n\n input.format.temp =\n input.format.kelvin =\n input.format.temperature = temperature2rgb_1;\n\n var type$f = utils.type;\n\n Color_1.prototype.alpha = function(a, mutate) {\n if ( mutate === void 0 ) mutate=false;\n\n if (a !== undefined && type$f(a) === 'number') {\n if (mutate) {\n this._rgb[3] = a;\n return this;\n }\n return new Color_1([this._rgb[0], this._rgb[1], this._rgb[2], a], 'rgb');\n }\n return this._rgb[3];\n };\n\n Color_1.prototype.clipped = function() {\n return this._rgb._clipped || false;\n };\n\n Color_1.prototype.darken = function(amount) {\n \tif ( amount === void 0 ) amount=1;\n\n \tvar me = this;\n \tvar lab = me.lab();\n \tlab[0] -= labConstants.Kn * amount;\n \treturn new Color_1(lab, 'lab').alpha(me.alpha(), true);\n };\n\n Color_1.prototype.brighten = function(amount) {\n \tif ( amount === void 0 ) amount=1;\n\n \treturn this.darken(-amount);\n };\n\n Color_1.prototype.darker = Color_1.prototype.darken;\n Color_1.prototype.brighter = Color_1.prototype.brighten;\n\n Color_1.prototype.get = function(mc) {\n var ref = mc.split('.');\n var mode = ref[0];\n var channel = ref[1];\n var src = this[mode]();\n if (channel) {\n var i = mode.indexOf(channel);\n if (i > -1) { return src[i]; }\n throw new Error((\"unknown channel \" + channel + \" in mode \" + mode));\n } else {\n return src;\n }\n };\n\n var type$g = utils.type;\n var pow$2 = Math.pow;\n\n var EPS = 1e-7;\n var MAX_ITER = 20;\n\n Color_1.prototype.luminance = function(lum) {\n if (lum !== undefined && type$g(lum) === 'number') {\n if (lum === 0) {\n // return pure black\n return new Color_1([0,0,0,this._rgb[3]], 'rgb');\n }\n if (lum === 1) {\n // return pure white\n return new Color_1([255,255,255,this._rgb[3]], 'rgb');\n }\n // compute new color using...\n var cur_lum = this.luminance();\n var mode = 'rgb';\n var max_iter = MAX_ITER;\n\n var test = function (low, high) {\n var mid = low.interpolate(high, 0.5, mode);\n var lm = mid.luminance();\n if (Math.abs(lum - lm) < EPS || !max_iter--) {\n // close enough\n return mid;\n }\n return lm > lum ? test(low, mid) : test(mid, high);\n };\n\n var rgb = (cur_lum > lum ? test(new Color_1([0,0,0]), this) : test(this, new Color_1([255,255,255]))).rgb();\n return new Color_1(rgb.concat( [this._rgb[3]]));\n }\n return rgb2luminance.apply(void 0, (this._rgb).slice(0,3));\n };\n\n\n var rgb2luminance = function (r,g,b) {\n // relative luminance\n // see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n r = luminance_x(r);\n g = luminance_x(g);\n b = luminance_x(b);\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n };\n\n var luminance_x = function (x) {\n x /= 255;\n return x <= 0.03928 ? x/12.92 : pow$2((x+0.055)/1.055, 2.4);\n };\n\n var interpolator = {};\n\n var type$h = utils.type;\n\n\n var mix = function (col1, col2, f) {\n if ( f === void 0 ) f=0.5;\n var rest = [], len = arguments.length - 3;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 3 ];\n\n var mode = rest[0] || 'lrgb';\n if (!interpolator[mode] && !rest.length) {\n // fall back to the first supported mode\n mode = Object.keys(interpolator)[0];\n }\n if (!interpolator[mode]) {\n throw new Error((\"interpolation mode \" + mode + \" is not defined\"));\n }\n if (type$h(col1) !== 'object') { col1 = new Color_1(col1); }\n if (type$h(col2) !== 'object') { col2 = new Color_1(col2); }\n return interpolator[mode](col1, col2, f)\n .alpha(col1.alpha() + f * (col2.alpha() - col1.alpha()));\n };\n\n Color_1.prototype.mix =\n Color_1.prototype.interpolate = function(col2, f) {\n \tif ( f === void 0 ) f=0.5;\n \tvar rest = [], len = arguments.length - 2;\n \twhile ( len-- > 0 ) rest[ len ] = arguments[ len + 2 ];\n\n \treturn mix.apply(void 0, [ this, col2, f ].concat( rest ));\n };\n\n Color_1.prototype.premultiply = function(mutate) {\n \tif ( mutate === void 0 ) mutate=false;\n\n \tvar rgb = this._rgb;\n \tvar a = rgb[3];\n \tif (mutate) {\n \t\tthis._rgb = [rgb[0]*a, rgb[1]*a, rgb[2]*a, a];\n \t\treturn this;\n \t} else {\n \t\treturn new Color_1([rgb[0]*a, rgb[1]*a, rgb[2]*a, a], 'rgb');\n \t}\n };\n\n Color_1.prototype.saturate = function(amount) {\n \tif ( amount === void 0 ) amount=1;\n\n \tvar me = this;\n \tvar lch = me.lch();\n \tlch[1] += labConstants.Kn * amount;\n \tif (lch[1] < 0) { lch[1] = 0; }\n \treturn new Color_1(lch, 'lch').alpha(me.alpha(), true);\n };\n\n Color_1.prototype.desaturate = function(amount) {\n \tif ( amount === void 0 ) amount=1;\n\n \treturn this.saturate(-amount);\n };\n\n var type$i = utils.type;\n\n Color_1.prototype.set = function(mc, value, mutate) {\n if ( mutate === void 0 ) mutate=false;\n\n var ref = mc.split('.');\n var mode = ref[0];\n var channel = ref[1];\n var src = this[mode]();\n if (channel) {\n var i = mode.indexOf(channel);\n if (i > -1) {\n if (type$i(value) == 'string') {\n switch(value.charAt(0)) {\n case '+': src[i] += +value; break;\n case '-': src[i] += +value; break;\n case '*': src[i] *= +(value.substr(1)); break;\n case '/': src[i] /= +(value.substr(1)); break;\n default: src[i] = +value;\n }\n } else if (type$i(value) === 'number') {\n src[i] = value;\n } else {\n throw new Error(\"unsupported value for Color.set\");\n }\n var out = new Color_1(src, mode);\n if (mutate) {\n this._rgb = out._rgb;\n return this;\n }\n return out;\n }\n throw new Error((\"unknown channel \" + channel + \" in mode \" + mode));\n } else {\n return src;\n }\n };\n\n var rgb$1 = function (col1, col2, f) {\n var xyz0 = col1._rgb;\n var xyz1 = col2._rgb;\n return new Color_1(\n xyz0[0] + f * (xyz1[0]-xyz0[0]),\n xyz0[1] + f * (xyz1[1]-xyz0[1]),\n xyz0[2] + f * (xyz1[2]-xyz0[2]),\n 'rgb'\n )\n };\n\n // register interpolator\n interpolator.rgb = rgb$1;\n\n var sqrt$2 = Math.sqrt;\n var pow$3 = Math.pow;\n\n var lrgb = function (col1, col2, f) {\n var ref = col1._rgb;\n var x1 = ref[0];\n var y1 = ref[1];\n var z1 = ref[2];\n var ref$1 = col2._rgb;\n var x2 = ref$1[0];\n var y2 = ref$1[1];\n var z2 = ref$1[2];\n return new Color_1(\n sqrt$2(pow$3(x1,2) * (1-f) + pow$3(x2,2) * f),\n sqrt$2(pow$3(y1,2) * (1-f) + pow$3(y2,2) * f),\n sqrt$2(pow$3(z1,2) * (1-f) + pow$3(z2,2) * f),\n 'rgb'\n )\n };\n\n // register interpolator\n interpolator.lrgb = lrgb;\n\n var lab$1 = function (col1, col2, f) {\n var xyz0 = col1.lab();\n var xyz1 = col2.lab();\n return new Color_1(\n xyz0[0] + f * (xyz1[0]-xyz0[0]),\n xyz0[1] + f * (xyz1[1]-xyz0[1]),\n xyz0[2] + f * (xyz1[2]-xyz0[2]),\n 'lab'\n )\n };\n\n // register interpolator\n interpolator.lab = lab$1;\n\n var _hsx = function (col1, col2, f, m) {\n var assign, assign$1;\n\n var xyz0, xyz1;\n if (m === 'hsl') {\n xyz0 = col1.hsl();\n xyz1 = col2.hsl();\n } else if (m === 'hsv') {\n xyz0 = col1.hsv();\n xyz1 = col2.hsv();\n } else if (m === 'hcg') {\n xyz0 = col1.hcg();\n xyz1 = col2.hcg();\n } else if (m === 'hsi') {\n xyz0 = col1.hsi();\n xyz1 = col2.hsi();\n } else if (m === 'lch' || m === 'hcl') {\n m = 'hcl';\n xyz0 = col1.hcl();\n xyz1 = col2.hcl();\n }\n\n var hue0, hue1, sat0, sat1, lbv0, lbv1;\n if (m.substr(0, 1) === 'h') {\n (assign = xyz0, hue0 = assign[0], sat0 = assign[1], lbv0 = assign[2]);\n (assign$1 = xyz1, hue1 = assign$1[0], sat1 = assign$1[1], lbv1 = assign$1[2]);\n }\n\n var sat, hue, lbv, dh;\n\n if (!isNaN(hue0) && !isNaN(hue1)) {\n // both colors have hue\n if (hue1 > hue0 && hue1 - hue0 > 180) {\n dh = hue1-(hue0+360);\n } else if (hue1 < hue0 && hue0 - hue1 > 180) {\n dh = hue1+360-hue0;\n } else{\n dh = hue1 - hue0;\n }\n hue = hue0 + f * dh;\n } else if (!isNaN(hue0)) {\n hue = hue0;\n if ((lbv1 == 1 || lbv1 == 0) && m != 'hsv') { sat = sat0; }\n } else if (!isNaN(hue1)) {\n hue = hue1;\n if ((lbv0 == 1 || lbv0 == 0) && m != 'hsv') { sat = sat1; }\n } else {\n hue = Number.NaN;\n }\n\n if (sat === undefined) { sat = sat0 + f * (sat1 - sat0); }\n lbv = lbv0 + f * (lbv1-lbv0);\n return new Color_1([hue, sat, lbv], m);\n };\n\n var lch$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'lch');\n };\n\n // register interpolator\n interpolator.lch = lch$1;\n interpolator.hcl = lch$1;\n\n var num$1 = function (col1, col2, f) {\n var c1 = col1.num();\n var c2 = col2.num();\n return new Color_1(c1 + f * (c2-c1), 'num')\n };\n\n // register interpolator\n interpolator.num = num$1;\n\n var hcg$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'hcg');\n };\n\n // register interpolator\n interpolator.hcg = hcg$1;\n\n var hsi$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'hsi');\n };\n\n // register interpolator\n interpolator.hsi = hsi$1;\n\n var hsl$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'hsl');\n };\n\n // register interpolator\n interpolator.hsl = hsl$1;\n\n var hsv$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'hsv');\n };\n\n // register interpolator\n interpolator.hsv = hsv$1;\n\n var clip_rgb$2 = utils.clip_rgb;\n var pow$4 = Math.pow;\n var sqrt$3 = Math.sqrt;\n var PI$1 = Math.PI;\n var cos$2 = Math.cos;\n var sin$1 = Math.sin;\n var atan2$1 = Math.atan2;\n\n var average = function (colors, mode, weights) {\n if ( mode === void 0 ) mode='lrgb';\n if ( weights === void 0 ) weights=null;\n\n var l = colors.length;\n if (!weights) { weights = Array.from(new Array(l)).map(function () { return 1; }); }\n // normalize weights\n var k = l / weights.reduce(function(a, b) { return a + b; });\n weights.forEach(function (w,i) { weights[i] *= k; });\n // convert colors to Color objects\n colors = colors.map(function (c) { return new Color_1(c); });\n if (mode === 'lrgb') {\n return _average_lrgb(colors, weights)\n }\n var first = colors.shift();\n var xyz = first.get(mode);\n var cnt = [];\n var dx = 0;\n var dy = 0;\n // initial color\n for (var i=0; i= 360) { A$1 -= 360; }\n xyz[i$1] = A$1;\n } else {\n xyz[i$1] = xyz[i$1]/cnt[i$1];\n }\n }\n alpha /= l;\n return (new Color_1(xyz, mode)).alpha(alpha > 0.99999 ? 1 : alpha, true);\n };\n\n\n var _average_lrgb = function (colors, weights) {\n var l = colors.length;\n var xyz = [0,0,0,0];\n for (var i=0; i < colors.length; i++) {\n var col = colors[i];\n var f = weights[i] / l;\n var rgb = col._rgb;\n xyz[0] += pow$4(rgb[0],2) * f;\n xyz[1] += pow$4(rgb[1],2) * f;\n xyz[2] += pow$4(rgb[2],2) * f;\n xyz[3] += rgb[3] * f;\n }\n xyz[0] = sqrt$3(xyz[0]);\n xyz[1] = sqrt$3(xyz[1]);\n xyz[2] = sqrt$3(xyz[2]);\n if (xyz[3] > 0.9999999) { xyz[3] = 1; }\n return new Color_1(clip_rgb$2(xyz));\n };\n\n // minimal multi-purpose interface\n\n // @requires utils color analyze\n\n\n var type$j = utils.type;\n\n var pow$5 = Math.pow;\n\n var scale = function(colors) {\n\n // constructor\n var _mode = 'rgb';\n var _nacol = chroma_1('#ccc');\n var _spread = 0;\n // const _fixed = false;\n var _domain = [0, 1];\n var _pos = [];\n var _padding = [0,0];\n var _classes = false;\n var _colors = [];\n var _out = false;\n var _min = 0;\n var _max = 1;\n var _correctLightness = false;\n var _colorCache = {};\n var _useCache = true;\n var _gamma = 1;\n\n // private methods\n\n var setColors = function(colors) {\n colors = colors || ['#fff', '#000'];\n if (colors && type$j(colors) === 'string' && chroma_1.brewer &&\n chroma_1.brewer[colors.toLowerCase()]) {\n colors = chroma_1.brewer[colors.toLowerCase()];\n }\n if (type$j(colors) === 'array') {\n // handle single color\n if (colors.length === 1) {\n colors = [colors[0], colors[0]];\n }\n // make a copy of the colors\n colors = colors.slice(0);\n // convert to chroma classes\n for (var c=0; c= _classes[i]) {\n i++;\n }\n return i-1;\n }\n return 0;\n };\n\n var tMapLightness = function (t) { return t; };\n var tMapDomain = function (t) { return t; };\n\n // const classifyValue = function(value) {\n // let val = value;\n // if (_classes.length > 2) {\n // const n = _classes.length-1;\n // const i = getClass(value);\n // const minc = _classes[0] + ((_classes[1]-_classes[0]) * (0 + (_spread * 0.5))); // center of 1st class\n // const maxc = _classes[n-1] + ((_classes[n]-_classes[n-1]) * (1 - (_spread * 0.5))); // center of last class\n // val = _min + ((((_classes[i] + ((_classes[i+1] - _classes[i]) * 0.5)) - minc) / (maxc-minc)) * (_max - _min));\n // }\n // return val;\n // };\n\n var getColor = function(val, bypassMap) {\n var col, t;\n if (bypassMap == null) { bypassMap = false; }\n if (isNaN(val) || (val === null)) { return _nacol; }\n if (!bypassMap) {\n if (_classes && (_classes.length > 2)) {\n // find the class\n var c = getClass(val);\n t = c / (_classes.length-2);\n } else if (_max !== _min) {\n // just interpolate between min/max\n t = (val - _min) / (_max - _min);\n } else {\n t = 1;\n }\n } else {\n t = val;\n }\n\n // domain map\n t = tMapDomain(t);\n\n if (!bypassMap) {\n t = tMapLightness(t); // lightness correction\n }\n\n if (_gamma !== 1) { t = pow$5(t, _gamma); }\n\n t = _padding[0] + (t * (1 - _padding[0] - _padding[1]));\n\n t = Math.min(1, Math.max(0, t));\n\n var k = Math.floor(t * 10000);\n\n if (_useCache && _colorCache[k]) {\n col = _colorCache[k];\n } else {\n if (type$j(_colors) === 'array') {\n //for i in [0.._pos.length-1]\n for (var i=0; i<_pos.length; i++) {\n var p = _pos[i];\n if (t <= p) {\n col = _colors[i];\n break;\n }\n if ((t >= p) && (i === (_pos.length-1))) {\n col = _colors[i];\n break;\n }\n if (t > p && t < _pos[i+1]) {\n t = (t-p)/(_pos[i+1]-p);\n col = chroma_1.interpolate(_colors[i], _colors[i+1], t, _mode);\n break;\n }\n }\n } else if (type$j(_colors) === 'function') {\n col = _colors(t);\n }\n if (_useCache) { _colorCache[k] = col; }\n }\n return col;\n };\n\n var resetCache = function () { return _colorCache = {}; };\n\n setColors(colors);\n\n // public interface\n\n var f = function(v) {\n var c = chroma_1(getColor(v));\n if (_out && c[_out]) { return c[_out](); } else { return c; }\n };\n\n f.classes = function(classes) {\n if (classes != null) {\n if (type$j(classes) === 'array') {\n _classes = classes;\n _domain = [classes[0], classes[classes.length-1]];\n } else {\n var d = chroma_1.analyze(_domain);\n if (classes === 0) {\n _classes = [d.min, d.max];\n } else {\n _classes = chroma_1.limits(d, 'e', classes);\n }\n }\n return f;\n }\n return _classes;\n };\n\n\n f.domain = function(domain) {\n if (!arguments.length) {\n return _domain;\n }\n _min = domain[0];\n _max = domain[domain.length-1];\n _pos = [];\n var k = _colors.length;\n if ((domain.length === k) && (_min !== _max)) {\n // update positions\n for (var i = 0, list = Array.from(domain); i < list.length; i += 1) {\n var d = list[i];\n\n _pos.push((d-_min) / (_max-_min));\n }\n } else {\n for (var c=0; c 2) {\n // set domain map\n var tOut = domain.map(function (d,i) { return i/(domain.length-1); });\n var tBreaks = domain.map(function (d) { return (d - _min) / (_max - _min); });\n if (!tBreaks.every(function (val, i) { return tOut[i] === val; })) {\n tMapDomain = function (t) {\n if (t <= 0 || t >= 1) { return t; }\n var i = 0;\n while (t >= tBreaks[i+1]) { i++; }\n var f = (t - tBreaks[i]) / (tBreaks[i+1] - tBreaks[i]);\n var out = tOut[i] + f * (tOut[i+1] - tOut[i]);\n return out;\n };\n }\n\n }\n }\n _domain = [_min, _max];\n return f;\n };\n\n f.mode = function(_m) {\n if (!arguments.length) {\n return _mode;\n }\n _mode = _m;\n resetCache();\n return f;\n };\n\n f.range = function(colors, _pos) {\n setColors(colors, _pos);\n return f;\n };\n\n f.out = function(_o) {\n _out = _o;\n return f;\n };\n\n f.spread = function(val) {\n if (!arguments.length) {\n return _spread;\n }\n _spread = val;\n return f;\n };\n\n f.correctLightness = function(v) {\n if (v == null) { v = true; }\n _correctLightness = v;\n resetCache();\n if (_correctLightness) {\n tMapLightness = function(t) {\n var L0 = getColor(0, true).lab()[0];\n var L1 = getColor(1, true).lab()[0];\n var pol = L0 > L1;\n var L_actual = getColor(t, true).lab()[0];\n var L_ideal = L0 + ((L1 - L0) * t);\n var L_diff = L_actual - L_ideal;\n var t0 = 0;\n var t1 = 1;\n var max_iter = 20;\n while ((Math.abs(L_diff) > 1e-2) && (max_iter-- > 0)) {\n (function() {\n if (pol) { L_diff *= -1; }\n if (L_diff < 0) {\n t0 = t;\n t += (t1 - t) * 0.5;\n } else {\n t1 = t;\n t += (t0 - t) * 0.5;\n }\n L_actual = getColor(t, true).lab()[0];\n return L_diff = L_actual - L_ideal;\n })();\n }\n return t;\n };\n } else {\n tMapLightness = function (t) { return t; };\n }\n return f;\n };\n\n f.padding = function(p) {\n if (p != null) {\n if (type$j(p) === 'number') {\n p = [p,p];\n }\n _padding = p;\n return f;\n } else {\n return _padding;\n }\n };\n\n f.colors = function(numColors, out) {\n // If no arguments are given, return the original colors that were provided\n if (arguments.length < 2) { out = 'hex'; }\n var result = [];\n\n if (arguments.length === 0) {\n result = _colors.slice(0);\n\n } else if (numColors === 1) {\n result = [f(0.5)];\n\n } else if (numColors > 1) {\n var dm = _domain[0];\n var dd = _domain[1] - dm;\n result = __range__(0, numColors, false).map(function (i) { return f( dm + ((i/(numColors-1)) * dd) ); });\n\n } else { // returns all colors based on the defined classes\n colors = [];\n var samples = [];\n if (_classes && (_classes.length > 2)) {\n for (var i = 1, end = _classes.length, asc = 1 <= end; asc ? i < end : i > end; asc ? i++ : i--) {\n samples.push((_classes[i-1]+_classes[i])*0.5);\n }\n } else {\n samples = _domain;\n }\n result = samples.map(function (v) { return f(v); });\n }\n\n if (chroma_1[out]) {\n result = result.map(function (c) { return c[out](); });\n }\n return result;\n };\n\n f.cache = function(c) {\n if (c != null) {\n _useCache = c;\n return f;\n } else {\n return _useCache;\n }\n };\n\n f.gamma = function(g) {\n if (g != null) {\n _gamma = g;\n return f;\n } else {\n return _gamma;\n }\n };\n\n f.nodata = function(d) {\n if (d != null) {\n _nacol = chroma_1(d);\n return f;\n } else {\n return _nacol;\n }\n };\n\n return f;\n };\n\n function __range__(left, right, inclusive) {\n var range = [];\n var ascending = left < right;\n var end = !inclusive ? right : ascending ? right + 1 : right - 1;\n for (var i = left; ascending ? i < end : i > end; ascending ? i++ : i--) {\n range.push(i);\n }\n return range;\n }\n\n //\n // interpolates between a set of colors uzing a bezier spline\n //\n\n // @requires utils lab\n\n\n\n\n var bezier = function(colors) {\n var assign, assign$1, assign$2;\n\n var I, lab0, lab1, lab2;\n colors = colors.map(function (c) { return new Color_1(c); });\n if (colors.length === 2) {\n // linear interpolation\n (assign = colors.map(function (c) { return c.lab(); }), lab0 = assign[0], lab1 = assign[1]);\n I = function(t) {\n var lab = ([0, 1, 2].map(function (i) { return lab0[i] + (t * (lab1[i] - lab0[i])); }));\n return new Color_1(lab, 'lab');\n };\n } else if (colors.length === 3) {\n // quadratic bezier interpolation\n (assign$1 = colors.map(function (c) { return c.lab(); }), lab0 = assign$1[0], lab1 = assign$1[1], lab2 = assign$1[2]);\n I = function(t) {\n var lab = ([0, 1, 2].map(function (i) { return ((1-t)*(1-t) * lab0[i]) + (2 * (1-t) * t * lab1[i]) + (t * t * lab2[i]); }));\n return new Color_1(lab, 'lab');\n };\n } else if (colors.length === 4) {\n // cubic bezier interpolation\n var lab3;\n (assign$2 = colors.map(function (c) { return c.lab(); }), lab0 = assign$2[0], lab1 = assign$2[1], lab2 = assign$2[2], lab3 = assign$2[3]);\n I = function(t) {\n var lab = ([0, 1, 2].map(function (i) { return ((1-t)*(1-t)*(1-t) * lab0[i]) + (3 * (1-t) * (1-t) * t * lab1[i]) + (3 * (1-t) * t * t * lab2[i]) + (t*t*t * lab3[i]); }));\n return new Color_1(lab, 'lab');\n };\n } else if (colors.length === 5) {\n var I0 = bezier(colors.slice(0, 3));\n var I1 = bezier(colors.slice(2, 5));\n I = function(t) {\n if (t < 0.5) {\n return I0(t*2);\n } else {\n return I1((t-0.5)*2);\n }\n };\n }\n return I;\n };\n\n var bezier_1 = function (colors) {\n var f = bezier(colors);\n f.scale = function () { return scale(f); };\n return f;\n };\n\n /*\n * interpolates between a set of colors uzing a bezier spline\n * blend mode formulas taken from http://www.venture-ware.com/kevin/coding/lets-learn-math-photoshop-blend-modes/\n */\n\n\n\n\n var blend = function (bottom, top, mode) {\n if (!blend[mode]) {\n throw new Error('unknown blend mode ' + mode);\n }\n return blend[mode](bottom, top);\n };\n\n var blend_f = function (f) { return function (bottom,top) {\n var c0 = chroma_1(top).rgb();\n var c1 = chroma_1(bottom).rgb();\n return chroma_1.rgb(f(c0, c1));\n }; };\n\n var each = function (f) { return function (c0, c1) {\n var out = [];\n out[0] = f(c0[0], c1[0]);\n out[1] = f(c0[1], c1[1]);\n out[2] = f(c0[2], c1[2]);\n return out;\n }; };\n\n var normal = function (a) { return a; };\n var multiply = function (a,b) { return a * b / 255; };\n var darken$1 = function (a,b) { return a > b ? b : a; };\n var lighten = function (a,b) { return a > b ? a : b; };\n var screen = function (a,b) { return 255 * (1 - (1-a/255) * (1-b/255)); };\n var overlay = function (a,b) { return b < 128 ? 2 * a * b / 255 : 255 * (1 - 2 * (1 - a / 255 ) * ( 1 - b / 255 )); };\n var burn = function (a,b) { return 255 * (1 - (1 - b / 255) / (a/255)); };\n var dodge = function (a,b) {\n if (a === 255) { return 255; }\n a = 255 * (b / 255) / (1 - a / 255);\n return a > 255 ? 255 : a\n };\n\n // # add = (a,b) ->\n // # if (a + b > 255) then 255 else a + b\n\n blend.normal = blend_f(each(normal));\n blend.multiply = blend_f(each(multiply));\n blend.screen = blend_f(each(screen));\n blend.overlay = blend_f(each(overlay));\n blend.darken = blend_f(each(darken$1));\n blend.lighten = blend_f(each(lighten));\n blend.dodge = blend_f(each(dodge));\n blend.burn = blend_f(each(burn));\n // blend.add = blend_f(each(add));\n\n var blend_1 = blend;\n\n // cubehelix interpolation\n // based on D.A. Green \"A colour scheme for the display of astronomical intensity images\"\n // http://astron-soc.in/bulletin/11June/289392011.pdf\n\n var type$k = utils.type;\n var clip_rgb$3 = utils.clip_rgb;\n var TWOPI$2 = utils.TWOPI;\n var pow$6 = Math.pow;\n var sin$2 = Math.sin;\n var cos$3 = Math.cos;\n\n\n var cubehelix = function(start, rotations, hue, gamma, lightness) {\n if ( start === void 0 ) start=300;\n if ( rotations === void 0 ) rotations=-1.5;\n if ( hue === void 0 ) hue=1;\n if ( gamma === void 0 ) gamma=1;\n if ( lightness === void 0 ) lightness=[0,1];\n\n var dh = 0, dl;\n if (type$k(lightness) === 'array') {\n dl = lightness[1] - lightness[0];\n } else {\n dl = 0;\n lightness = [lightness, lightness];\n }\n\n var f = function(fract) {\n var a = TWOPI$2 * (((start+120)/360) + (rotations * fract));\n var l = pow$6(lightness[0] + (dl * fract), gamma);\n var h = dh !== 0 ? hue[0] + (fract * dh) : hue;\n var amp = (h * l * (1-l)) / 2;\n var cos_a = cos$3(a);\n var sin_a = sin$2(a);\n var r = l + (amp * ((-0.14861 * cos_a) + (1.78277* sin_a)));\n var g = l + (amp * ((-0.29227 * cos_a) - (0.90649* sin_a)));\n var b = l + (amp * (+1.97294 * cos_a));\n return chroma_1(clip_rgb$3([r*255,g*255,b*255,1]));\n };\n\n f.start = function(s) {\n if ((s == null)) { return start; }\n start = s;\n return f;\n };\n\n f.rotations = function(r) {\n if ((r == null)) { return rotations; }\n rotations = r;\n return f;\n };\n\n f.gamma = function(g) {\n if ((g == null)) { return gamma; }\n gamma = g;\n return f;\n };\n\n f.hue = function(h) {\n if ((h == null)) { return hue; }\n hue = h;\n if (type$k(hue) === 'array') {\n dh = hue[1] - hue[0];\n if (dh === 0) { hue = hue[1]; }\n } else {\n dh = 0;\n }\n return f;\n };\n\n f.lightness = function(h) {\n if ((h == null)) { return lightness; }\n if (type$k(h) === 'array') {\n lightness = h;\n dl = h[1] - h[0];\n } else {\n lightness = [h,h];\n dl = 0;\n }\n return f;\n };\n\n f.scale = function () { return chroma_1.scale(f); };\n\n f.hue(hue);\n\n return f;\n };\n\n var digits = '0123456789abcdef';\n\n var floor$2 = Math.floor;\n var random = Math.random;\n\n var random_1 = function () {\n var code = '#';\n for (var i=0; i<6; i++) {\n code += digits.charAt(floor$2(random() * 16));\n }\n return new Color_1(code, 'hex');\n };\n\n var log$1 = Math.log;\n var pow$7 = Math.pow;\n var floor$3 = Math.floor;\n var abs = Math.abs;\n\n\n var analyze = function (data, key) {\n if ( key === void 0 ) key=null;\n\n var r = {\n min: Number.MAX_VALUE,\n max: Number.MAX_VALUE*-1,\n sum: 0,\n values: [],\n count: 0\n };\n if (type(data) === 'object') {\n data = Object.values(data);\n }\n data.forEach(function (val) {\n if (key && type(val) === 'object') { val = val[key]; }\n if (val !== undefined && val !== null && !isNaN(val)) {\n r.values.push(val);\n r.sum += val;\n if (val < r.min) { r.min = val; }\n if (val > r.max) { r.max = val; }\n r.count += 1;\n }\n });\n\n r.domain = [r.min, r.max];\n\n r.limits = function (mode, num) { return limits(r, mode, num); };\n\n return r;\n };\n\n\n var limits = function (data, mode, num) {\n if ( mode === void 0 ) mode='equal';\n if ( num === void 0 ) num=7;\n\n if (type(data) == 'array') {\n data = analyze(data);\n }\n var min = data.min;\n var max = data.max;\n var values = data.values.sort(function (a,b) { return a-b; });\n\n if (num === 1) { return [min,max]; }\n\n var limits = [];\n\n if (mode.substr(0,1) === 'c') { // continuous\n limits.push(min);\n limits.push(max);\n }\n\n if (mode.substr(0,1) === 'e') { // equal interval\n limits.push(min);\n for (var i=1; i 0');\n }\n var min_log = Math.LOG10E * log$1(min);\n var max_log = Math.LOG10E * log$1(max);\n limits.push(min);\n for (var i$1=1; i$1 pb\n var pr = p - pb;\n limits.push((values[pb]*(1-pr)) + (values[pb+1]*pr));\n }\n }\n limits.push(max);\n\n }\n\n else if (mode.substr(0,1) === 'k') { // k-means clustering\n /*\n implementation based on\n http://code.google.com/p/figue/source/browse/trunk/figue.js#336\n simplified for 1-d input values\n */\n var cluster;\n var n = values.length;\n var assignments = new Array(n);\n var clusterSizes = new Array(num);\n var repeat = true;\n var nb_iters = 0;\n var centroids = null;\n\n // get seed values\n centroids = [];\n centroids.push(min);\n for (var i$3=1; i$3 200) {\n repeat = false;\n }\n }\n\n // finished k-means clustering\n // the next part is borrowed from gabrielflor.it\n var kClusters = {};\n for (var j$5=0; j$5 l2 ? (l1 + 0.05) / (l2 + 0.05) : (l2 + 0.05) / (l1 + 0.05);\n };\n\n var sqrt$4 = Math.sqrt;\n var atan2$2 = Math.atan2;\n var abs$1 = Math.abs;\n var cos$4 = Math.cos;\n var PI$2 = Math.PI;\n\n var deltaE = function(a, b, L, C) {\n if ( L === void 0 ) L=1;\n if ( C === void 0 ) C=1;\n\n // Delta E (CMC)\n // see http://www.brucelindbloom.com/index.html?Eqn_DeltaE_CMC.html\n a = new Color_1(a);\n b = new Color_1(b);\n var ref = Array.from(a.lab());\n var L1 = ref[0];\n var a1 = ref[1];\n var b1 = ref[2];\n var ref$1 = Array.from(b.lab());\n var L2 = ref$1[0];\n var a2 = ref$1[1];\n var b2 = ref$1[2];\n var c1 = sqrt$4((a1 * a1) + (b1 * b1));\n var c2 = sqrt$4((a2 * a2) + (b2 * b2));\n var sl = L1 < 16.0 ? 0.511 : (0.040975 * L1) / (1.0 + (0.01765 * L1));\n var sc = ((0.0638 * c1) / (1.0 + (0.0131 * c1))) + 0.638;\n var h1 = c1 < 0.000001 ? 0.0 : (atan2$2(b1, a1) * 180.0) / PI$2;\n while (h1 < 0) { h1 += 360; }\n while (h1 >= 360) { h1 -= 360; }\n var t = (h1 >= 164.0) && (h1 <= 345.0) ? (0.56 + abs$1(0.2 * cos$4((PI$2 * (h1 + 168.0)) / 180.0))) : (0.36 + abs$1(0.4 * cos$4((PI$2 * (h1 + 35.0)) / 180.0)));\n var c4 = c1 * c1 * c1 * c1;\n var f = sqrt$4(c4 / (c4 + 1900.0));\n var sh = sc * (((f * t) + 1.0) - f);\n var delL = L1 - L2;\n var delC = c1 - c2;\n var delA = a1 - a2;\n var delB = b1 - b2;\n var dH2 = ((delA * delA) + (delB * delB)) - (delC * delC);\n var v1 = delL / (L * sl);\n var v2 = delC / (C * sc);\n var v3 = sh;\n return sqrt$4((v1 * v1) + (v2 * v2) + (dH2 / (v3 * v3)));\n };\n\n // simple Euclidean distance\n var distance = function(a, b, mode) {\n if ( mode === void 0 ) mode='lab';\n\n // Delta E (CIE 1976)\n // see http://www.brucelindbloom.com/index.html?Equations.html\n a = new Color_1(a);\n b = new Color_1(b);\n var l1 = a.get(mode);\n var l2 = b.get(mode);\n var sum_sq = 0;\n for (var i in l1) {\n var d = (l1[i] || 0) - (l2[i] || 0);\n sum_sq += d*d;\n }\n return Math.sqrt(sum_sq);\n };\n\n var valid = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n try {\n new (Function.prototype.bind.apply( Color_1, [ null ].concat( args) ));\n return true;\n } catch (e) {\n return false;\n }\n };\n\n // some pre-defined color scales:\n\n\n\n\n var scales = {\n \tcool: function cool() { return scale([chroma_1.hsl(180,1,.9), chroma_1.hsl(250,.7,.4)]) },\n \thot: function hot() { return scale(['#000','#f00','#ff0','#fff'], [0,.25,.75,1]).mode('rgb') }\n };\n\n /**\n ColorBrewer colors for chroma.js\n\n Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The\n Pennsylvania State University.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software distributed\n under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n CONDITIONS OF ANY KIND, either express or implied. See the License for the\n specific language governing permissions and limitations under the License.\n */\n\n var colorbrewer = {\n // sequential\n OrRd: ['#fff7ec', '#fee8c8', '#fdd49e', '#fdbb84', '#fc8d59', '#ef6548', '#d7301f', '#b30000', '#7f0000'],\n PuBu: ['#fff7fb', '#ece7f2', '#d0d1e6', '#a6bddb', '#74a9cf', '#3690c0', '#0570b0', '#045a8d', '#023858'],\n BuPu: ['#f7fcfd', '#e0ecf4', '#bfd3e6', '#9ebcda', '#8c96c6', '#8c6bb1', '#88419d', '#810f7c', '#4d004b'],\n Oranges: ['#fff5eb', '#fee6ce', '#fdd0a2', '#fdae6b', '#fd8d3c', '#f16913', '#d94801', '#a63603', '#7f2704'],\n BuGn: ['#f7fcfd', '#e5f5f9', '#ccece6', '#99d8c9', '#66c2a4', '#41ae76', '#238b45', '#006d2c', '#00441b'],\n YlOrBr: ['#ffffe5', '#fff7bc', '#fee391', '#fec44f', '#fe9929', '#ec7014', '#cc4c02', '#993404', '#662506'],\n YlGn: ['#ffffe5', '#f7fcb9', '#d9f0a3', '#addd8e', '#78c679', '#41ab5d', '#238443', '#006837', '#004529'],\n Reds: ['#fff5f0', '#fee0d2', '#fcbba1', '#fc9272', '#fb6a4a', '#ef3b2c', '#cb181d', '#a50f15', '#67000d'],\n RdPu: ['#fff7f3', '#fde0dd', '#fcc5c0', '#fa9fb5', '#f768a1', '#dd3497', '#ae017e', '#7a0177', '#49006a'],\n Greens: ['#f7fcf5', '#e5f5e0', '#c7e9c0', '#a1d99b', '#74c476', '#41ab5d', '#238b45', '#006d2c', '#00441b'],\n YlGnBu: ['#ffffd9', '#edf8b1', '#c7e9b4', '#7fcdbb', '#41b6c4', '#1d91c0', '#225ea8', '#253494', '#081d58'],\n Purples: ['#fcfbfd', '#efedf5', '#dadaeb', '#bcbddc', '#9e9ac8', '#807dba', '#6a51a3', '#54278f', '#3f007d'],\n GnBu: ['#f7fcf0', '#e0f3db', '#ccebc5', '#a8ddb5', '#7bccc4', '#4eb3d3', '#2b8cbe', '#0868ac', '#084081'],\n Greys: ['#ffffff', '#f0f0f0', '#d9d9d9', '#bdbdbd', '#969696', '#737373', '#525252', '#252525', '#000000'],\n YlOrRd: ['#ffffcc', '#ffeda0', '#fed976', '#feb24c', '#fd8d3c', '#fc4e2a', '#e31a1c', '#bd0026', '#800026'],\n PuRd: ['#f7f4f9', '#e7e1ef', '#d4b9da', '#c994c7', '#df65b0', '#e7298a', '#ce1256', '#980043', '#67001f'],\n Blues: ['#f7fbff', '#deebf7', '#c6dbef', '#9ecae1', '#6baed6', '#4292c6', '#2171b5', '#08519c', '#08306b'],\n PuBuGn: ['#fff7fb', '#ece2f0', '#d0d1e6', '#a6bddb', '#67a9cf', '#3690c0', '#02818a', '#016c59', '#014636'],\n Viridis: ['#440154', '#482777', '#3f4a8a', '#31678e', '#26838f', '#1f9d8a', '#6cce5a', '#b6de2b', '#fee825'],\n\n // diverging\n\n Spectral: ['#9e0142', '#d53e4f', '#f46d43', '#fdae61', '#fee08b', '#ffffbf', '#e6f598', '#abdda4', '#66c2a5', '#3288bd', '#5e4fa2'],\n RdYlGn: ['#a50026', '#d73027', '#f46d43', '#fdae61', '#fee08b', '#ffffbf', '#d9ef8b', '#a6d96a', '#66bd63', '#1a9850', '#006837'],\n RdBu: ['#67001f', '#b2182b', '#d6604d', '#f4a582', '#fddbc7', '#f7f7f7', '#d1e5f0', '#92c5de', '#4393c3', '#2166ac', '#053061'],\n PiYG: ['#8e0152', '#c51b7d', '#de77ae', '#f1b6da', '#fde0ef', '#f7f7f7', '#e6f5d0', '#b8e186', '#7fbc41', '#4d9221', '#276419'],\n PRGn: ['#40004b', '#762a83', '#9970ab', '#c2a5cf', '#e7d4e8', '#f7f7f7', '#d9f0d3', '#a6dba0', '#5aae61', '#1b7837', '#00441b'],\n RdYlBu: ['#a50026', '#d73027', '#f46d43', '#fdae61', '#fee090', '#ffffbf', '#e0f3f8', '#abd9e9', '#74add1', '#4575b4', '#313695'],\n BrBG: ['#543005', '#8c510a', '#bf812d', '#dfc27d', '#f6e8c3', '#f5f5f5', '#c7eae5', '#80cdc1', '#35978f', '#01665e', '#003c30'],\n RdGy: ['#67001f', '#b2182b', '#d6604d', '#f4a582', '#fddbc7', '#ffffff', '#e0e0e0', '#bababa', '#878787', '#4d4d4d', '#1a1a1a'],\n PuOr: ['#7f3b08', '#b35806', '#e08214', '#fdb863', '#fee0b6', '#f7f7f7', '#d8daeb', '#b2abd2', '#8073ac', '#542788', '#2d004b'],\n\n // qualitative\n\n Set2: ['#66c2a5', '#fc8d62', '#8da0cb', '#e78ac3', '#a6d854', '#ffd92f', '#e5c494', '#b3b3b3'],\n Accent: ['#7fc97f', '#beaed4', '#fdc086', '#ffff99', '#386cb0', '#f0027f', '#bf5b17', '#666666'],\n Set1: ['#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', '#ffff33', '#a65628', '#f781bf', '#999999'],\n Set3: ['#8dd3c7', '#ffffb3', '#bebada', '#fb8072', '#80b1d3', '#fdb462', '#b3de69', '#fccde5', '#d9d9d9', '#bc80bd', '#ccebc5', '#ffed6f'],\n Dark2: ['#1b9e77', '#d95f02', '#7570b3', '#e7298a', '#66a61e', '#e6ab02', '#a6761d', '#666666'],\n Paired: ['#a6cee3', '#1f78b4', '#b2df8a', '#33a02c', '#fb9a99', '#e31a1c', '#fdbf6f', '#ff7f00', '#cab2d6', '#6a3d9a', '#ffff99', '#b15928'],\n Pastel2: ['#b3e2cd', '#fdcdac', '#cbd5e8', '#f4cae4', '#e6f5c9', '#fff2ae', '#f1e2cc', '#cccccc'],\n Pastel1: ['#fbb4ae', '#b3cde3', '#ccebc5', '#decbe4', '#fed9a6', '#ffffcc', '#e5d8bd', '#fddaec', '#f2f2f2'],\n };\n\n // add lowercase aliases for case-insensitive matches\n for (var i$1 = 0, list$1 = Object.keys(colorbrewer); i$1 < list$1.length; i$1 += 1) {\n var key = list$1[i$1];\n\n colorbrewer[key.toLowerCase()] = colorbrewer[key];\n }\n\n var colorbrewer_1 = colorbrewer;\n\n // feel free to comment out anything to rollup\n // a smaller chroma.js built\n\n // io --> convert colors\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n // operators --> modify existing Colors\n\n\n\n\n\n\n\n\n\n\n // interpolators\n\n\n\n\n\n\n\n\n\n\n // generators -- > create new colors\n chroma_1.average = average;\n chroma_1.bezier = bezier_1;\n chroma_1.blend = blend_1;\n chroma_1.cubehelix = cubehelix;\n chroma_1.mix = chroma_1.interpolate = mix;\n chroma_1.random = random_1;\n chroma_1.scale = scale;\n\n // other utility methods\n chroma_1.analyze = analyze_1.analyze;\n chroma_1.contrast = contrast;\n chroma_1.deltaE = deltaE;\n chroma_1.distance = distance;\n chroma_1.limits = analyze_1.limits;\n chroma_1.valid = valid;\n\n // scale\n chroma_1.scales = scales;\n\n // colors\n chroma_1.colors = w3cx11_1;\n chroma_1.brewer = colorbrewer_1;\n\n var chroma_js = chroma_1;\n\n return chroma_js;\n\n})));\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"map_container\"}},[_c('div',{attrs:{\"id\":\"map\"}})])}]\n\nexport { render, staticRenderFns }","// src/utils/gmaps.js\r\n\r\n// Your personal API key.\r\n// Get it here: https://console.cloud.google.com/google/maps-apis\r\nconst API_KEY = 'AIzaSyDApxfUsXUHDJ7fYgETkz_nRImNgwjAB2o';\r\nconst CALLBACK_NAME = 'gmapsCallback';\r\nconst LIBRARIES = 'drawing'\r\n\r\nlet initialized = !!window.google;\r\nlet resolveInitPromise;\r\nlet rejectInitPromise;\r\n// This promise handles the initialization\r\n// status of the google maps script.\r\nconst initPromise = new Promise((resolve, reject) => {\r\n resolveInitPromise = resolve;\r\n rejectInitPromise = reject;\r\n});\r\n\r\nexport function init() {\r\n // If Google Maps already is initialized\r\n // the `initPromise` should get resolved\r\n // eventually.\r\n if (initialized) return initPromise;\r\n\r\n initialized = true;\r\n // The callback function is called by\r\n // the Google Maps script if it is\r\n // successfully loaded.\r\n window[CALLBACK_NAME] = () => resolveInitPromise(window.google);\r\n\r\n // We inject a new script tag into\r\n // the `` of our HTML to load\r\n // the Google Maps script.\r\n const script = document.createElement('script');\r\n script.async = true;\r\n script.defer = true;\r\n script.src = `https://maps.googleapis.com/maps/api/js?key=${API_KEY}&callback=${CALLBACK_NAME}&libraries=${LIBRARIES}`;\r\n script.onerror = rejectInitPromise;\r\n document.querySelector('head').appendChild(script);\r\n\r\n return initPromise;\r\n}","\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Map.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Map.vue?vue&type=template&id=bc7bb4ca&scoped=true&\"\nimport script from \"./Map.vue?vue&type=script&lang=js&\"\nexport * from \"./Map.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Map.vue?vue&type=style&index=0&id=bc7bb4ca&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bc7bb4ca\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}