dotfiles

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

color-names.js.map (579391B)


      1 {
      2   "version": 3,
      3   "sources": ["../node_modules/chroma-js/chroma.js", "../node_modules/es6-weak-map/is-implemented.js", "../node_modules/es5-ext/function/noop.js", "../node_modules/es5-ext/object/is-value.js", "../node_modules/es5-ext/object/set-prototype-of/is-implemented.js", "../node_modules/es5-ext/object/is-object.js", "../node_modules/es5-ext/object/valid-value.js", "../node_modules/es5-ext/object/create.js", "../node_modules/es5-ext/object/set-prototype-of/shim.js", "../node_modules/es5-ext/object/set-prototype-of/index.js", "../node_modules/es5-ext/object/valid-object.js", "../node_modules/es5-ext/string/random-uniq.js", "../node_modules/type/value/is.js", "../node_modules/type/object/is.js", "../node_modules/type/prototype/is.js", "../node_modules/type/function/is.js", "../node_modules/type/plain-function/is.js", "../node_modules/es5-ext/object/assign/is-implemented.js", "../node_modules/es5-ext/object/keys/is-implemented.js", "../node_modules/es5-ext/object/keys/shim.js", "../node_modules/es5-ext/object/keys/index.js", "../node_modules/es5-ext/object/assign/shim.js", "../node_modules/es5-ext/object/assign/index.js", "../node_modules/es5-ext/object/normalize-options.js", "../node_modules/es5-ext/string/%23/contains/is-implemented.js", "../node_modules/es5-ext/string/%23/contains/shim.js", "../node_modules/es5-ext/string/%23/contains/index.js", "../node_modules/d/index.js", "../node_modules/es5-ext/function/is-arguments.js", "../node_modules/es5-ext/string/is-string.js", "../node_modules/ext/global-this/is-implemented.js", "../node_modules/ext/global-this/implementation.js", "../node_modules/ext/global-this/index.js", "../node_modules/es6-symbol/is-implemented.js", "../node_modules/es6-symbol/is-symbol.js", "../node_modules/es6-symbol/validate-symbol.js", "../node_modules/es6-symbol/lib/private/generate-name.js", "../node_modules/es6-symbol/lib/private/setup/standard-symbols.js", "../node_modules/es6-symbol/lib/private/setup/symbol-registry.js", "../node_modules/es6-symbol/polyfill.js", "../node_modules/es6-symbol/index.js", "../node_modules/es5-ext/array/%23/clear.js", "../node_modules/es5-ext/object/valid-callable.js", "../node_modules/type/string/coerce.js", "../node_modules/type/lib/safe-to-string.js", "../node_modules/type/lib/to-short-string.js", "../node_modules/type/lib/resolve-error-message.js", "../node_modules/type/lib/resolve-exception.js", "../node_modules/type/value/ensure.js", "../node_modules/type/plain-function/ensure.js", "../node_modules/es5-ext/array/from/is-implemented.js", "../node_modules/es5-ext/function/is-function.js", "../node_modules/es5-ext/math/sign/is-implemented.js", "../node_modules/es5-ext/math/sign/shim.js", "../node_modules/es5-ext/math/sign/index.js", "../node_modules/es5-ext/number/to-integer.js", "../node_modules/es5-ext/number/to-pos-integer.js", "../node_modules/es5-ext/array/from/shim.js", "../node_modules/es5-ext/array/from/index.js", "../node_modules/es5-ext/object/copy.js", "../node_modules/es5-ext/object/_iterate.js", "../node_modules/es5-ext/object/for-each.js", "../node_modules/es5-ext/object/map.js", "../node_modules/d/auto-bind.js", "../node_modules/es6-iterator/index.js", "../node_modules/es6-iterator/array.js", "../node_modules/es6-iterator/string.js", "../node_modules/es6-iterator/is-iterable.js", "../node_modules/es6-iterator/valid-iterable.js", "../node_modules/es6-iterator/get.js", "../node_modules/es6-iterator/for-of.js", "../node_modules/es6-weak-map/is-native-implemented.js", "../node_modules/es6-weak-map/polyfill.js", "../node_modules/es6-weak-map/index.js", "../node_modules/color-namer/lib/colors/basic.js", "../node_modules/color-namer/lib/colors/html.js", "../node_modules/color-namer/lib/colors/ntc.js", "../node_modules/color-namer/lib/colors/pantone.js", "../node_modules/color-namer/lib/colors/roygbiv.js", "../node_modules/color-namer/lib/colors/x11.js", "../node_modules/color-namer/index.js", "../node_modules/lodash/_listCacheClear.js", "../node_modules/lodash/eq.js", "../node_modules/lodash/_assocIndexOf.js", "../node_modules/lodash/_listCacheDelete.js", "../node_modules/lodash/_listCacheGet.js", "../node_modules/lodash/_listCacheHas.js", "../node_modules/lodash/_listCacheSet.js", "../node_modules/lodash/_ListCache.js", "../node_modules/lodash/_stackClear.js", "../node_modules/lodash/_stackDelete.js", "../node_modules/lodash/_stackGet.js", "../node_modules/lodash/_stackHas.js", "../node_modules/lodash/_freeGlobal.js", "../node_modules/lodash/_root.js", "../node_modules/lodash/_Symbol.js", "../node_modules/lodash/_getRawTag.js", "../node_modules/lodash/_objectToString.js", "../node_modules/lodash/_baseGetTag.js", "../node_modules/lodash/isObject.js", "../node_modules/lodash/isFunction.js", "../node_modules/lodash/_coreJsData.js", "../node_modules/lodash/_isMasked.js", "../node_modules/lodash/_toSource.js", "../node_modules/lodash/_baseIsNative.js", "../node_modules/lodash/_getValue.js", "../node_modules/lodash/_getNative.js", "../node_modules/lodash/_Map.js", "../node_modules/lodash/_nativeCreate.js", "../node_modules/lodash/_hashClear.js", "../node_modules/lodash/_hashDelete.js", "../node_modules/lodash/_hashGet.js", "../node_modules/lodash/_hashHas.js", "../node_modules/lodash/_hashSet.js", "../node_modules/lodash/_Hash.js", "../node_modules/lodash/_mapCacheClear.js", "../node_modules/lodash/_isKeyable.js", "../node_modules/lodash/_getMapData.js", "../node_modules/lodash/_mapCacheDelete.js", "../node_modules/lodash/_mapCacheGet.js", "../node_modules/lodash/_mapCacheHas.js", "../node_modules/lodash/_mapCacheSet.js", "../node_modules/lodash/_MapCache.js", "../node_modules/lodash/_stackSet.js", "../node_modules/lodash/_Stack.js", "../node_modules/lodash/_setCacheAdd.js", "../node_modules/lodash/_setCacheHas.js", "../node_modules/lodash/_SetCache.js", "../node_modules/lodash/_arraySome.js", "../node_modules/lodash/_cacheHas.js", "../node_modules/lodash/_equalArrays.js", "../node_modules/lodash/_Uint8Array.js", "../node_modules/lodash/_mapToArray.js", "../node_modules/lodash/_setToArray.js", "../node_modules/lodash/_equalByTag.js", "../node_modules/lodash/_arrayPush.js", "../node_modules/lodash/isArray.js", "../node_modules/lodash/_baseGetAllKeys.js", "../node_modules/lodash/_arrayFilter.js", "../node_modules/lodash/stubArray.js", "../node_modules/lodash/_getSymbols.js", "../node_modules/lodash/_baseTimes.js", "../node_modules/lodash/isObjectLike.js", "../node_modules/lodash/_baseIsArguments.js", "../node_modules/lodash/isArguments.js", "../node_modules/lodash/stubFalse.js", "../node_modules/lodash/isBuffer.js", "../node_modules/lodash/_isIndex.js", "../node_modules/lodash/isLength.js", "../node_modules/lodash/_baseIsTypedArray.js", "../node_modules/lodash/_baseUnary.js", "../node_modules/lodash/_nodeUtil.js", "../node_modules/lodash/isTypedArray.js", "../node_modules/lodash/_arrayLikeKeys.js", "../node_modules/lodash/_isPrototype.js", "../node_modules/lodash/_overArg.js", "../node_modules/lodash/_nativeKeys.js", "../node_modules/lodash/_baseKeys.js", "../node_modules/lodash/isArrayLike.js", "../node_modules/lodash/keys.js", "../node_modules/lodash/_getAllKeys.js", "../node_modules/lodash/_equalObjects.js", "../node_modules/lodash/_DataView.js", "../node_modules/lodash/_Promise.js", "../node_modules/lodash/_Set.js", "../node_modules/lodash/_WeakMap.js", "../node_modules/lodash/_getTag.js", "../node_modules/lodash/_baseIsEqualDeep.js", "../node_modules/lodash/_baseIsEqual.js", "../node_modules/lodash/_baseIsMatch.js", "../node_modules/lodash/_isStrictComparable.js", "../node_modules/lodash/_getMatchData.js", "../node_modules/lodash/_matchesStrictComparable.js", "../node_modules/lodash/_baseMatches.js", "../node_modules/lodash/isSymbol.js", "../node_modules/lodash/_isKey.js", "../node_modules/lodash/memoize.js", "../node_modules/lodash/_memoizeCapped.js", "../node_modules/lodash/_stringToPath.js", "../node_modules/lodash/_arrayMap.js", "../node_modules/lodash/_baseToString.js", "../node_modules/lodash/toString.js", "../node_modules/lodash/_castPath.js", "../node_modules/lodash/_toKey.js", "../node_modules/lodash/_baseGet.js", "../node_modules/lodash/get.js", "../node_modules/lodash/_baseHasIn.js", "../node_modules/lodash/_hasPath.js", "../node_modules/lodash/hasIn.js", "../node_modules/lodash/_baseMatchesProperty.js", "../node_modules/lodash/identity.js", "../node_modules/lodash/_baseProperty.js", "../node_modules/lodash/_basePropertyDeep.js", "../node_modules/lodash/property.js", "../node_modules/lodash/_baseIteratee.js", "../node_modules/lodash/_baseFindIndex.js", "../node_modules/lodash/_baseIsNaN.js", "../node_modules/lodash/_strictIndexOf.js", "../node_modules/lodash/_baseIndexOf.js", "../node_modules/lodash/_arrayIncludes.js", "../node_modules/lodash/_arrayIncludesWith.js", "../node_modules/lodash/noop.js", "../node_modules/lodash/_createSet.js", "../node_modules/lodash/_baseUniq.js", "../node_modules/lodash/uniqBy.js", "../src/color-names.tsx", "../src/components/ColorNames.tsx", "../src/utils.ts"],
      4   "sourcesContent": ["\n/**\n * @license\n *\n * chroma.js - JavaScript library for color conversions\n * \n * Copyright (c) 2011-2017, 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(function() {\n  var Color, DEG2RAD, LAB_CONSTANTS, PI, PITHIRD, RAD2DEG, TWOPI, _average_lrgb, _guess_formats, _guess_formats_sorted, _input, _interpolators, abs, atan2, bezier, blend, blend_f, brewer, burn, chroma, clip_rgb, cmyk2rgb, colors, cos, css2rgb, darken, dodge, each, floor, hcg2rgb, hex2rgb, hsi2rgb, hsl2css, hsl2rgb, hsv2rgb, interpolate, interpolate_hsx, interpolate_lab, interpolate_lrgb, interpolate_num, interpolate_rgb, lab2lch, lab2rgb, lab_xyz, lch2lab, lch2rgb, lighten, limit, log, luminance_x, m, max, multiply, normal, num2rgb, overlay, pow, rgb2cmyk, rgb2css, rgb2hcg, rgb2hex, rgb2hsi, rgb2hsl, rgb2hsv, rgb2lab, rgb2lch, rgb2luminance, rgb2num, rgb2temperature, rgb2xyz, rgb_xyz, rnd, root, round, screen, sin, sqrt, temperature2rgb, type, unpack, w3cx11, xyz_lab, xyz_rgb,\n    slice = [].slice;\n\n  type = (function() {\n\n    /*\n    for browser-safe type checking+\n    ported from jQuery's $.type\n     */\n    var classToType, len, name, o, ref;\n    classToType = {};\n    ref = \"Boolean Number String Function Array Date RegExp Undefined Null\".split(\" \");\n    for (o = 0, len = ref.length; o < len; o++) {\n      name = ref[o];\n      classToType[\"[object \" + name + \"]\"] = name.toLowerCase();\n    }\n    return function(obj) {\n      var strType;\n      strType = Object.prototype.toString.call(obj);\n      return classToType[strType] || \"object\";\n    };\n  })();\n\n  limit = function(x, min, max) {\n    if (min == null) {\n      min = 0;\n    }\n    if (max == null) {\n      max = 1;\n    }\n    if (x < min) {\n      x = min;\n    }\n    if (x > max) {\n      x = max;\n    }\n    return x;\n  };\n\n  unpack = function(args) {\n    if (args.length >= 3) {\n      return Array.prototype.slice.call(args);\n    } else {\n      return args[0];\n    }\n  };\n\n  clip_rgb = function(rgb) {\n    var i, o;\n    rgb._clipped = false;\n    rgb._unclipped = rgb.slice(0);\n    for (i = o = 0; o < 3; i = ++o) {\n      if (i < 3) {\n        if (rgb[i] < 0 || rgb[i] > 255) {\n          rgb._clipped = true;\n        }\n        if (rgb[i] < 0) {\n          rgb[i] = 0;\n        }\n        if (rgb[i] > 255) {\n          rgb[i] = 255;\n        }\n      } else if (i === 3) {\n        if (rgb[i] < 0) {\n          rgb[i] = 0;\n        }\n        if (rgb[i] > 1) {\n          rgb[i] = 1;\n        }\n      }\n    }\n    if (!rgb._clipped) {\n      delete rgb._unclipped;\n    }\n    return rgb;\n  };\n\n  PI = Math.PI, round = Math.round, cos = Math.cos, floor = Math.floor, pow = Math.pow, log = Math.log, sin = Math.sin, sqrt = Math.sqrt, atan2 = Math.atan2, max = Math.max, abs = Math.abs;\n\n  TWOPI = PI * 2;\n\n  PITHIRD = PI / 3;\n\n  DEG2RAD = PI / 180;\n\n  RAD2DEG = 180 / PI;\n\n  chroma = function() {\n    if (arguments[0] instanceof Color) {\n      return arguments[0];\n    }\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, arguments, function(){});\n  };\n\n  chroma[\"default\"] = chroma;\n\n  _interpolators = [];\n\n  if ((typeof module !== \"undefined\" && module !== null) && (module.exports != null)) {\n    module.exports = chroma;\n  }\n\n  if (typeof define === 'function' && define.amd) {\n    define([], function() {\n      return chroma;\n    });\n  } else {\n    root = typeof exports !== \"undefined\" && exports !== null ? exports : this;\n    root.chroma = chroma;\n  }\n\n  chroma.version = '1.4.1';\n\n  _input = {};\n\n  _guess_formats = [];\n\n  _guess_formats_sorted = false;\n\n  Color = (function() {\n    function Color() {\n      var arg, args, chk, len, len1, me, mode, o, w;\n      me = this;\n      args = [];\n      for (o = 0, len = arguments.length; o < len; o++) {\n        arg = arguments[o];\n        if (arg != null) {\n          args.push(arg);\n        }\n      }\n      if (args.length > 1) {\n        mode = args[args.length - 1];\n      }\n      if (_input[mode] != null) {\n        me._rgb = clip_rgb(_input[mode](unpack(args.slice(0, -1))));\n      } else {\n        if (!_guess_formats_sorted) {\n          _guess_formats = _guess_formats.sort(function(a, b) {\n            return b.p - a.p;\n          });\n          _guess_formats_sorted = true;\n        }\n        for (w = 0, len1 = _guess_formats.length; w < len1; w++) {\n          chk = _guess_formats[w];\n          mode = chk.test.apply(chk, args);\n          if (mode) {\n            break;\n          }\n        }\n        if (mode) {\n          me._rgb = clip_rgb(_input[mode].apply(_input, args));\n        }\n      }\n      if (me._rgb == null) {\n        console.warn('unknown format: ' + args);\n      }\n      if (me._rgb == null) {\n        me._rgb = [0, 0, 0];\n      }\n      if (me._rgb.length === 3) {\n        me._rgb.push(1);\n      }\n    }\n\n    Color.prototype.toString = function() {\n      return this.hex();\n    };\n\n    return Color;\n\n  })();\n\n  chroma._input = _input;\n\n\n  /**\n  \tColorBrewer colors for chroma.js\n  \n  \tCopyright (c) 2002 Cynthia Brewer, Mark Harrower, and The \n  \tPennsylvania State University.\n  \n  \tLicensed under the Apache License, Version 2.0 (the \"License\"); \n  \tyou may not use this file except in compliance with the License.\n  \tYou may obtain a copy of the License at\t\n  \thttp://www.apache.org/licenses/LICENSE-2.0\n  \n  \tUnless required by applicable law or agreed to in writing, software distributed\n  \tunder the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n  \tCONDITIONS OF ANY KIND, either express or implied. See the License for the\n  \tspecific language governing permissions and limitations under the License.\n  \n      @preserve\n   */\n\n  chroma.brewer = brewer = {\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    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    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  (function() {\n    var key, results;\n    results = [];\n    for (key in brewer) {\n      results.push(brewer[key.toLowerCase()] = brewer[key]);\n    }\n    return results;\n  })();\n\n\n  /**\n  \tX11 color names\n  \n  \thttp://www.w3.org/TR/css3-color/#svg-color\n   */\n\n  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  chroma.colors = colors = w3cx11;\n\n  lab2rgb = function() {\n    var a, args, b, g, l, r, x, y, z;\n    args = unpack(arguments);\n    l = args[0], a = args[1], b = args[2];\n    y = (l + 16) / 116;\n    x = isNaN(a) ? y : y + a / 500;\n    z = isNaN(b) ? y : y - b / 200;\n    y = LAB_CONSTANTS.Yn * lab_xyz(y);\n    x = LAB_CONSTANTS.Xn * lab_xyz(x);\n    z = LAB_CONSTANTS.Zn * lab_xyz(z);\n    r = xyz_rgb(3.2404542 * x - 1.5371385 * y - 0.4985314 * z);\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    return [r, g, b, args.length > 3 ? args[3] : 1];\n  };\n\n  xyz_rgb = function(r) {\n    return 255 * (r <= 0.00304 ? 12.92 * r : 1.055 * pow(r, 1 / 2.4) - 0.055);\n  };\n\n  lab_xyz = function(t) {\n    if (t > LAB_CONSTANTS.t1) {\n      return t * t * t;\n    } else {\n      return LAB_CONSTANTS.t2 * (t - LAB_CONSTANTS.t0);\n    }\n  };\n\n  LAB_CONSTANTS = {\n    Kn: 18,\n    Xn: 0.950470,\n    Yn: 1,\n    Zn: 1.088830,\n    t0: 0.137931034,\n    t1: 0.206896552,\n    t2: 0.12841855,\n    t3: 0.008856452\n  };\n\n  rgb2lab = function() {\n    var b, g, r, ref, ref1, x, y, z;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    ref1 = rgb2xyz(r, g, b), x = ref1[0], y = ref1[1], z = ref1[2];\n    return [116 * y - 16, 500 * (x - y), 200 * (y - z)];\n  };\n\n  rgb_xyz = function(r) {\n    if ((r /= 255) <= 0.04045) {\n      return r / 12.92;\n    } else {\n      return pow((r + 0.055) / 1.055, 2.4);\n    }\n  };\n\n  xyz_lab = function(t) {\n    if (t > LAB_CONSTANTS.t3) {\n      return pow(t, 1 / 3);\n    } else {\n      return t / LAB_CONSTANTS.t2 + LAB_CONSTANTS.t0;\n    }\n  };\n\n  rgb2xyz = function() {\n    var b, g, r, ref, x, y, z;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    r = rgb_xyz(r);\n    g = rgb_xyz(g);\n    b = rgb_xyz(b);\n    x = xyz_lab((0.4124564 * r + 0.3575761 * g + 0.1804375 * b) / LAB_CONSTANTS.Xn);\n    y = xyz_lab((0.2126729 * r + 0.7151522 * g + 0.0721750 * b) / LAB_CONSTANTS.Yn);\n    z = xyz_lab((0.0193339 * r + 0.1191920 * g + 0.9503041 * b) / LAB_CONSTANTS.Zn);\n    return [x, y, z];\n  };\n\n  chroma.lab = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['lab']), function(){});\n  };\n\n  _input.lab = lab2rgb;\n\n  Color.prototype.lab = function() {\n    return rgb2lab(this._rgb);\n  };\n\n  bezier = function(colors) {\n    var I, I0, I1, c, lab0, lab1, lab2, lab3, ref, ref1, ref2;\n    colors = (function() {\n      var len, o, results;\n      results = [];\n      for (o = 0, len = colors.length; o < len; o++) {\n        c = colors[o];\n        results.push(chroma(c));\n      }\n      return results;\n    })();\n    if (colors.length === 2) {\n      ref = (function() {\n        var len, o, results;\n        results = [];\n        for (o = 0, len = colors.length; o < len; o++) {\n          c = colors[o];\n          results.push(c.lab());\n        }\n        return results;\n      })(), lab0 = ref[0], lab1 = ref[1];\n      I = function(t) {\n        var i, lab;\n        lab = (function() {\n          var o, results;\n          results = [];\n          for (i = o = 0; o <= 2; i = ++o) {\n            results.push(lab0[i] + t * (lab1[i] - lab0[i]));\n          }\n          return results;\n        })();\n        return chroma.lab.apply(chroma, lab);\n      };\n    } else if (colors.length === 3) {\n      ref1 = (function() {\n        var len, o, results;\n        results = [];\n        for (o = 0, len = colors.length; o < len; o++) {\n          c = colors[o];\n          results.push(c.lab());\n        }\n        return results;\n      })(), lab0 = ref1[0], lab1 = ref1[1], lab2 = ref1[2];\n      I = function(t) {\n        var i, lab;\n        lab = (function() {\n          var o, results;\n          results = [];\n          for (i = o = 0; o <= 2; i = ++o) {\n            results.push((1 - t) * (1 - t) * lab0[i] + 2 * (1 - t) * t * lab1[i] + t * t * lab2[i]);\n          }\n          return results;\n        })();\n        return chroma.lab.apply(chroma, lab);\n      };\n    } else if (colors.length === 4) {\n      ref2 = (function() {\n        var len, o, results;\n        results = [];\n        for (o = 0, len = colors.length; o < len; o++) {\n          c = colors[o];\n          results.push(c.lab());\n        }\n        return results;\n      })(), lab0 = ref2[0], lab1 = ref2[1], lab2 = ref2[2], lab3 = ref2[3];\n      I = function(t) {\n        var i, lab;\n        lab = (function() {\n          var o, results;\n          results = [];\n          for (i = o = 0; o <= 2; i = ++o) {\n            results.push((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          }\n          return results;\n        })();\n        return chroma.lab.apply(chroma, lab);\n      };\n    } else if (colors.length === 5) {\n      I0 = bezier(colors.slice(0, 3));\n      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  chroma.bezier = function(colors) {\n    var f;\n    f = bezier(colors);\n    f.scale = function() {\n      return chroma.scale(f);\n    };\n    return f;\n  };\n\n  chroma.cubehelix = function(start, rotations, hue, gamma, lightness) {\n    var dh, dl, f;\n    if (start == null) {\n      start = 300;\n    }\n    if (rotations == null) {\n      rotations = -1.5;\n    }\n    if (hue == null) {\n      hue = 1;\n    }\n    if (gamma == null) {\n      gamma = 1;\n    }\n    if (lightness == null) {\n      lightness = [0, 1];\n    }\n    dh = 0;\n    if (type(lightness) === 'array') {\n      dl = lightness[1] - lightness[0];\n    } else {\n      dl = 0;\n      lightness = [lightness, lightness];\n    }\n    f = function(fract) {\n      var a, amp, b, cos_a, g, h, l, r, sin_a;\n      a = TWOPI * ((start + 120) / 360 + rotations * fract);\n      l = pow(lightness[0] + dl * fract, gamma);\n      h = dh !== 0 ? hue[0] + fract * dh : hue;\n      amp = h * l * (1 - l) / 2;\n      cos_a = cos(a);\n      sin_a = sin(a);\n      r = l + amp * (-0.14861 * cos_a + 1.78277 * sin_a);\n      g = l + amp * (-0.29227 * cos_a - 0.90649 * sin_a);\n      b = l + amp * (+1.97294 * cos_a);\n      return chroma(clip_rgb([r * 255, g * 255, b * 255, 1]));\n    };\n    f.start = function(s) {\n      if (s == null) {\n        return start;\n      }\n      start = s;\n      return f;\n    };\n    f.rotations = function(r) {\n      if (r == null) {\n        return rotations;\n      }\n      rotations = r;\n      return f;\n    };\n    f.gamma = function(g) {\n      if (g == null) {\n        return gamma;\n      }\n      gamma = g;\n      return f;\n    };\n    f.hue = function(h) {\n      if (h == null) {\n        return hue;\n      }\n      hue = h;\n      if (type(hue) === 'array') {\n        dh = hue[1] - hue[0];\n        if (dh === 0) {\n          hue = hue[1];\n        }\n      } else {\n        dh = 0;\n      }\n      return f;\n    };\n    f.lightness = function(h) {\n      if (h == null) {\n        return lightness;\n      }\n      if (type(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    f.scale = function() {\n      return chroma.scale(f);\n    };\n    f.hue(hue);\n    return f;\n  };\n\n  chroma.random = function() {\n    var code, digits, i, o;\n    digits = '0123456789abcdef';\n    code = '#';\n    for (i = o = 0; o < 6; i = ++o) {\n      code += digits.charAt(floor(Math.random() * 16));\n    }\n    return new Color(code);\n  };\n\n  _interpolators = [];\n\n  interpolate = function(col1, col2, f, m) {\n    var interpol, len, o, res;\n    if (f == null) {\n      f = 0.5;\n    }\n    if (m == null) {\n      m = 'rgb';\n    }\n\n    /*\n    interpolates between colors\n    f = 0 --> me\n    f = 1 --> col\n     */\n    if (type(col1) !== 'object') {\n      col1 = chroma(col1);\n    }\n    if (type(col2) !== 'object') {\n      col2 = chroma(col2);\n    }\n    for (o = 0, len = _interpolators.length; o < len; o++) {\n      interpol = _interpolators[o];\n      if (m === interpol[0]) {\n        res = interpol[1](col1, col2, f, m);\n        break;\n      }\n    }\n    if (res == null) {\n      throw \"color mode \" + m + \" is not supported\";\n    }\n    return res.alpha(col1.alpha() + f * (col2.alpha() - col1.alpha()));\n  };\n\n  chroma.interpolate = interpolate;\n\n  Color.prototype.interpolate = function(col2, f, m) {\n    return interpolate(this, col2, f, m);\n  };\n\n  chroma.mix = interpolate;\n\n  Color.prototype.mix = Color.prototype.interpolate;\n\n  _input.rgb = function() {\n    var k, ref, results, v;\n    ref = unpack(arguments);\n    results = [];\n    for (k in ref) {\n      v = ref[k];\n      results.push(v);\n    }\n    return results;\n  };\n\n  chroma.rgb = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['rgb']), function(){});\n  };\n\n  Color.prototype.rgb = function(round) {\n    if (round == null) {\n      round = true;\n    }\n    if (round) {\n      return this._rgb.map(Math.round).slice(0, 3);\n    } else {\n      return this._rgb.slice(0, 3);\n    }\n  };\n\n  Color.prototype.rgba = function(round) {\n    if (round == null) {\n      round = true;\n    }\n    if (!round) {\n      return this._rgb.slice(0);\n    }\n    return [Math.round(this._rgb[0]), Math.round(this._rgb[1]), Math.round(this._rgb[2]), this._rgb[3]];\n  };\n\n  _guess_formats.push({\n    p: 3,\n    test: function(n) {\n      var a;\n      a = unpack(arguments);\n      if (type(a) === 'array' && a.length === 3) {\n        return 'rgb';\n      }\n      if (a.length === 4 && type(a[3]) === \"number\" && a[3] >= 0 && a[3] <= 1) {\n        return 'rgb';\n      }\n    }\n  });\n\n  _input.lrgb = _input.rgb;\n\n  interpolate_lrgb = function(col1, col2, f, m) {\n    var xyz0, xyz1;\n    xyz0 = col1._rgb;\n    xyz1 = col2._rgb;\n    return new Color(sqrt(pow(xyz0[0], 2) * (1 - f) + pow(xyz1[0], 2) * f), sqrt(pow(xyz0[1], 2) * (1 - f) + pow(xyz1[1], 2) * f), sqrt(pow(xyz0[2], 2) * (1 - f) + pow(xyz1[2], 2) * f), m);\n  };\n\n  _average_lrgb = function(colors) {\n    var col, f, len, o, rgb, xyz;\n    f = 1 / colors.length;\n    xyz = [0, 0, 0, 0];\n    for (o = 0, len = colors.length; o < len; o++) {\n      col = colors[o];\n      rgb = col._rgb;\n      xyz[0] += pow(rgb[0], 2) * f;\n      xyz[1] += pow(rgb[1], 2) * f;\n      xyz[2] += pow(rgb[2], 2) * f;\n      xyz[3] += rgb[3] * f;\n    }\n    xyz[0] = sqrt(xyz[0]);\n    xyz[1] = sqrt(xyz[1]);\n    xyz[2] = sqrt(xyz[2]);\n    if (xyz[3] > 1) {\n      xyz[3] = 1;\n    }\n    return new Color(clip_rgb(xyz));\n  };\n\n  _interpolators.push(['lrgb', interpolate_lrgb]);\n\n  chroma.average = function(colors, mode) {\n    var A, alpha, c, cnt, dx, dy, first, i, l, len, o, xyz, xyz2;\n    if (mode == null) {\n      mode = 'rgb';\n    }\n    l = colors.length;\n    colors = colors.map(function(c) {\n      return chroma(c);\n    });\n    first = colors.splice(0, 1)[0];\n    if (mode === 'lrgb') {\n      return _average_lrgb(colors);\n    }\n    xyz = first.get(mode);\n    cnt = [];\n    dx = 0;\n    dy = 0;\n    for (i in xyz) {\n      xyz[i] = xyz[i] || 0;\n      cnt.push(isNaN(xyz[i]) ? 0 : 1);\n      if (mode.charAt(i) === 'h' && !isNaN(xyz[i])) {\n        A = xyz[i] / 180 * PI;\n        dx += cos(A);\n        dy += sin(A);\n      }\n    }\n    alpha = first.alpha();\n    for (o = 0, len = colors.length; o < len; o++) {\n      c = colors[o];\n      xyz2 = c.get(mode);\n      alpha += c.alpha();\n      for (i in xyz) {\n        if (!isNaN(xyz2[i])) {\n          cnt[i] += 1;\n          if (mode.charAt(i) === 'h') {\n            A = xyz2[i] / 180 * PI;\n            dx += cos(A);\n            dy += sin(A);\n          } else {\n            xyz[i] += xyz2[i];\n          }\n        }\n      }\n    }\n    for (i in xyz) {\n      if (mode.charAt(i) === 'h') {\n        A = atan2(dy / cnt[i], dx / cnt[i]) / PI * 180;\n        while (A < 0) {\n          A += 360;\n        }\n        while (A >= 360) {\n          A -= 360;\n        }\n        xyz[i] = A;\n      } else {\n        xyz[i] = xyz[i] / cnt[i];\n      }\n    }\n    return chroma(xyz, mode).alpha(alpha / l);\n  };\n\n  hex2rgb = function(hex) {\n    var a, b, g, r, rgb, u;\n    if (hex.match(/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/)) {\n      if (hex.length === 4 || hex.length === 7) {\n        hex = hex.substr(1);\n      }\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      u = parseInt(hex, 16);\n      r = u >> 16;\n      g = u >> 8 & 0xFF;\n      b = u & 0xFF;\n      return [r, g, b, 1];\n    }\n    if (hex.match(/^#?([A-Fa-f0-9]{8})$/)) {\n      if (hex.length === 9) {\n        hex = hex.substr(1);\n      }\n      u = parseInt(hex, 16);\n      r = u >> 24 & 0xFF;\n      g = u >> 16 & 0xFF;\n      b = u >> 8 & 0xFF;\n      a = round((u & 0xFF) / 0xFF * 100) / 100;\n      return [r, g, b, a];\n    }\n    if ((_input.css != null) && (rgb = _input.css(hex))) {\n      return rgb;\n    }\n    throw \"unknown color: \" + hex;\n  };\n\n  rgb2hex = function(channels, mode) {\n    var a, b, g, hxa, r, str, u;\n    if (mode == null) {\n      mode = 'auto';\n    }\n    r = channels[0], g = channels[1], b = channels[2], a = channels[3];\n    if (mode === 'auto') {\n      mode = a < 1 ? 'rgba' : 'rgb';\n    }\n    r = Math.round(r);\n    g = Math.round(g);\n    b = Math.round(b);\n    u = r << 16 | g << 8 | b;\n    str = \"000000\" + u.toString(16);\n    str = str.substr(str.length - 6);\n    hxa = '0' + round(a * 255).toString(16);\n    hxa = hxa.substr(hxa.length - 2);\n    return \"#\" + (function() {\n      switch (mode.toLowerCase()) {\n        case 'rgba':\n          return str + hxa;\n        case 'argb':\n          return hxa + str;\n        default:\n          return str;\n      }\n    })();\n  };\n\n  _input.hex = function(h) {\n    return hex2rgb(h);\n  };\n\n  chroma.hex = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['hex']), function(){});\n  };\n\n  Color.prototype.hex = function(mode) {\n    if (mode == null) {\n      mode = 'auto';\n    }\n    return rgb2hex(this._rgb, mode);\n  };\n\n  _guess_formats.push({\n    p: 4,\n    test: function(n) {\n      if (arguments.length === 1 && type(n) === \"string\") {\n        return 'hex';\n      }\n    }\n  });\n\n  hsl2rgb = function() {\n    var args, b, c, g, h, i, l, o, r, ref, s, t1, t2, t3;\n    args = unpack(arguments);\n    h = args[0], s = args[1], l = args[2];\n    if (s === 0) {\n      r = g = b = l * 255;\n    } else {\n      t3 = [0, 0, 0];\n      c = [0, 0, 0];\n      t2 = l < 0.5 ? l * (1 + s) : l + s - l * s;\n      t1 = 2 * l - t2;\n      h /= 360;\n      t3[0] = h + 1 / 3;\n      t3[1] = h;\n      t3[2] = h - 1 / 3;\n      for (i = o = 0; o <= 2; i = ++o) {\n        if (t3[i] < 0) {\n          t3[i] += 1;\n        }\n        if (t3[i] > 1) {\n          t3[i] -= 1;\n        }\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      }\n      ref = [round(c[0] * 255), round(c[1] * 255), round(c[2] * 255)], r = ref[0], g = ref[1], b = ref[2];\n    }\n    if (args.length > 3) {\n      return [r, g, b, args[3]];\n    } else {\n      return [r, g, b];\n    }\n  };\n\n  rgb2hsl = function(r, g, b) {\n    var h, l, min, ref, s;\n    if (r !== void 0 && r.length >= 3) {\n      ref = r, r = ref[0], g = ref[1], b = ref[2];\n    }\n    r /= 255;\n    g /= 255;\n    b /= 255;\n    min = Math.min(r, g, b);\n    max = Math.max(r, g, b);\n    l = (max + min) / 2;\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    if (r === max) {\n      h = (g - b) / (max - min);\n    } else if (g === max) {\n      h = 2 + (b - r) / (max - min);\n    } else if (b === max) {\n      h = 4 + (r - g) / (max - min);\n    }\n    h *= 60;\n    if (h < 0) {\n      h += 360;\n    }\n    return [h, s, l];\n  };\n\n  chroma.hsl = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['hsl']), function(){});\n  };\n\n  _input.hsl = hsl2rgb;\n\n  Color.prototype.hsl = function() {\n    return rgb2hsl(this._rgb);\n  };\n\n  hsv2rgb = function() {\n    var args, b, f, g, h, i, p, q, r, ref, ref1, ref2, ref3, ref4, ref5, s, t, v;\n    args = unpack(arguments);\n    h = args[0], s = args[1], v = args[2];\n    v *= 255;\n    if (s === 0) {\n      r = g = b = v;\n    } else {\n      if (h === 360) {\n        h = 0;\n      }\n      if (h > 360) {\n        h -= 360;\n      }\n      if (h < 0) {\n        h += 360;\n      }\n      h /= 60;\n      i = floor(h);\n      f = h - i;\n      p = v * (1 - s);\n      q = v * (1 - s * f);\n      t = v * (1 - s * (1 - f));\n      switch (i) {\n        case 0:\n          ref = [v, t, p], r = ref[0], g = ref[1], b = ref[2];\n          break;\n        case 1:\n          ref1 = [q, v, p], r = ref1[0], g = ref1[1], b = ref1[2];\n          break;\n        case 2:\n          ref2 = [p, v, t], r = ref2[0], g = ref2[1], b = ref2[2];\n          break;\n        case 3:\n          ref3 = [p, q, v], r = ref3[0], g = ref3[1], b = ref3[2];\n          break;\n        case 4:\n          ref4 = [t, p, v], r = ref4[0], g = ref4[1], b = ref4[2];\n          break;\n        case 5:\n          ref5 = [v, p, q], r = ref5[0], g = ref5[1], b = ref5[2];\n      }\n    }\n    return [r, g, b, args.length > 3 ? args[3] : 1];\n  };\n\n  rgb2hsv = function() {\n    var b, delta, g, h, min, r, ref, s, v;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    min = Math.min(r, g, b);\n    max = Math.max(r, g, b);\n    delta = max - min;\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) {\n        h = (g - b) / delta;\n      }\n      if (g === max) {\n        h = 2 + (b - r) / delta;\n      }\n      if (b === max) {\n        h = 4 + (r - g) / delta;\n      }\n      h *= 60;\n      if (h < 0) {\n        h += 360;\n      }\n    }\n    return [h, s, v];\n  };\n\n  chroma.hsv = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['hsv']), function(){});\n  };\n\n  _input.hsv = hsv2rgb;\n\n  Color.prototype.hsv = function() {\n    return rgb2hsv(this._rgb);\n  };\n\n  num2rgb = function(num) {\n    var b, g, r;\n    if (type(num) === \"number\" && num >= 0 && num <= 0xFFFFFF) {\n      r = num >> 16;\n      g = (num >> 8) & 0xFF;\n      b = num & 0xFF;\n      return [r, g, b, 1];\n    }\n    console.warn(\"unknown num color: \" + num);\n    return [0, 0, 0, 1];\n  };\n\n  rgb2num = function() {\n    var b, g, r, ref;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    return (r << 16) + (g << 8) + b;\n  };\n\n  chroma.num = function(num) {\n    return new Color(num, 'num');\n  };\n\n  Color.prototype.num = function(mode) {\n    if (mode == null) {\n      mode = 'rgb';\n    }\n    return rgb2num(this._rgb, mode);\n  };\n\n  _input.num = num2rgb;\n\n  _guess_formats.push({\n    p: 1,\n    test: function(n) {\n      if (arguments.length === 1 && type(n) === \"number\" && n >= 0 && n <= 0xFFFFFF) {\n        return 'num';\n      }\n    }\n  });\n\n  hcg2rgb = function() {\n    var _c, _g, args, b, c, f, g, h, i, p, q, r, ref, ref1, ref2, ref3, ref4, ref5, t, v;\n    args = unpack(arguments);\n    h = args[0], c = args[1], _g = args[2];\n    c = c / 100;\n    g = g / 100 * 255;\n    _c = c * 255;\n    if (c === 0) {\n      r = g = b = _g;\n    } else {\n      if (h === 360) {\n        h = 0;\n      }\n      if (h > 360) {\n        h -= 360;\n      }\n      if (h < 0) {\n        h += 360;\n      }\n      h /= 60;\n      i = floor(h);\n      f = h - i;\n      p = _g * (1 - c);\n      q = p + _c * (1 - f);\n      t = p + _c * f;\n      v = p + _c;\n      switch (i) {\n        case 0:\n          ref = [v, t, p], r = ref[0], g = ref[1], b = ref[2];\n          break;\n        case 1:\n          ref1 = [q, v, p], r = ref1[0], g = ref1[1], b = ref1[2];\n          break;\n        case 2:\n          ref2 = [p, v, t], r = ref2[0], g = ref2[1], b = ref2[2];\n          break;\n        case 3:\n          ref3 = [p, q, v], r = ref3[0], g = ref3[1], b = ref3[2];\n          break;\n        case 4:\n          ref4 = [t, p, v], r = ref4[0], g = ref4[1], b = ref4[2];\n          break;\n        case 5:\n          ref5 = [v, p, q], r = ref5[0], g = ref5[1], b = ref5[2];\n      }\n    }\n    return [r, g, b, args.length > 3 ? args[3] : 1];\n  };\n\n  rgb2hcg = function() {\n    var _g, b, c, delta, g, h, min, r, ref;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    min = Math.min(r, g, b);\n    max = Math.max(r, g, b);\n    delta = max - min;\n    c = delta * 100 / 255;\n    _g = min / (255 - delta) * 100;\n    if (delta === 0) {\n      h = Number.NaN;\n    } else {\n      if (r === max) {\n        h = (g - b) / delta;\n      }\n      if (g === max) {\n        h = 2 + (b - r) / delta;\n      }\n      if (b === max) {\n        h = 4 + (r - g) / delta;\n      }\n      h *= 60;\n      if (h < 0) {\n        h += 360;\n      }\n    }\n    return [h, c, _g];\n  };\n\n  chroma.hcg = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['hcg']), function(){});\n  };\n\n  _input.hcg = hcg2rgb;\n\n  Color.prototype.hcg = function() {\n    return rgb2hcg(this._rgb);\n  };\n\n  css2rgb = function(css) {\n    var aa, ab, hsl, i, m, o, rgb, w;\n    css = css.toLowerCase();\n    if ((chroma.colors != null) && chroma.colors[css]) {\n      return hex2rgb(chroma.colors[css]);\n    }\n    if (m = css.match(/rgb\\(\\s*(\\-?\\d+),\\s*(\\-?\\d+)\\s*,\\s*(\\-?\\d+)\\s*\\)/)) {\n      rgb = m.slice(1, 4);\n      for (i = o = 0; o <= 2; i = ++o) {\n        rgb[i] = +rgb[i];\n      }\n      rgb[3] = 1;\n    } else if (m = css.match(/rgba\\(\\s*(\\-?\\d+),\\s*(\\-?\\d+)\\s*,\\s*(\\-?\\d+)\\s*,\\s*([01]|[01]?\\.\\d+)\\)/)) {\n      rgb = m.slice(1, 5);\n      for (i = w = 0; w <= 3; i = ++w) {\n        rgb[i] = +rgb[i];\n      }\n    } else if (m = css.match(/rgb\\(\\s*(\\-?\\d+(?:\\.\\d+)?)%,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*\\)/)) {\n      rgb = m.slice(1, 4);\n      for (i = aa = 0; aa <= 2; i = ++aa) {\n        rgb[i] = round(rgb[i] * 2.55);\n      }\n      rgb[3] = 1;\n    } else if (m = css.match(/rgba\\(\\s*(\\-?\\d+(?:\\.\\d+)?)%,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)/)) {\n      rgb = m.slice(1, 5);\n      for (i = ab = 0; ab <= 2; i = ++ab) {\n        rgb[i] = round(rgb[i] * 2.55);\n      }\n      rgb[3] = +rgb[3];\n    } else if (m = css.match(/hsl\\(\\s*(\\-?\\d+(?:\\.\\d+)?),\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*\\)/)) {\n      hsl = m.slice(1, 4);\n      hsl[1] *= 0.01;\n      hsl[2] *= 0.01;\n      rgb = hsl2rgb(hsl);\n      rgb[3] = 1;\n    } else if (m = css.match(/hsla\\(\\s*(\\-?\\d+(?:\\.\\d+)?),\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(\\-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)/)) {\n      hsl = m.slice(1, 4);\n      hsl[1] *= 0.01;\n      hsl[2] *= 0.01;\n      rgb = hsl2rgb(hsl);\n      rgb[3] = +m[4];\n    }\n    return rgb;\n  };\n\n  rgb2css = function(rgba) {\n    var mode;\n    mode = rgba[3] < 1 ? 'rgba' : 'rgb';\n    if (mode === 'rgb') {\n      return mode + '(' + rgba.slice(0, 3).map(round).join(',') + ')';\n    } else if (mode === 'rgba') {\n      return mode + '(' + rgba.slice(0, 3).map(round).join(',') + ',' + rgba[3] + ')';\n    } else {\n\n    }\n  };\n\n  rnd = function(a) {\n    return round(a * 100) / 100;\n  };\n\n  hsl2css = function(hsl, alpha) {\n    var mode;\n    mode = alpha < 1 ? 'hsla' : 'hsl';\n    hsl[0] = rnd(hsl[0] || 0);\n    hsl[1] = rnd(hsl[1] * 100) + '%';\n    hsl[2] = rnd(hsl[2] * 100) + '%';\n    if (mode === 'hsla') {\n      hsl[3] = alpha;\n    }\n    return mode + '(' + hsl.join(',') + ')';\n  };\n\n  _input.css = function(h) {\n    return css2rgb(h);\n  };\n\n  chroma.css = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['css']), function(){});\n  };\n\n  Color.prototype.css = function(mode) {\n    if (mode == null) {\n      mode = 'rgb';\n    }\n    if (mode.slice(0, 3) === 'rgb') {\n      return rgb2css(this._rgb);\n    } else if (mode.slice(0, 3) === 'hsl') {\n      return hsl2css(this.hsl(), this.alpha());\n    }\n  };\n\n  _input.named = function(name) {\n    return hex2rgb(w3cx11[name]);\n  };\n\n  _guess_formats.push({\n    p: 5,\n    test: function(n) {\n      if (arguments.length === 1 && (w3cx11[n] != null)) {\n        return 'named';\n      }\n    }\n  });\n\n  Color.prototype.name = function(n) {\n    var h, k;\n    if (arguments.length) {\n      if (w3cx11[n]) {\n        this._rgb = hex2rgb(w3cx11[n]);\n      }\n      this._rgb[3] = 1;\n      this;\n    }\n    h = this.hex('rgb');\n    for (k in w3cx11) {\n      if (h === w3cx11[k]) {\n        return k;\n      }\n    }\n    return h;\n  };\n\n  lch2lab = function() {\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 c, h, l, ref;\n    ref = unpack(arguments), l = ref[0], c = ref[1], h = ref[2];\n    h = h * DEG2RAD;\n    return [l, cos(h) * c, sin(h) * c];\n  };\n\n  lch2rgb = function() {\n    var L, a, args, b, c, g, h, l, r, ref, ref1;\n    args = unpack(arguments);\n    l = args[0], c = args[1], h = args[2];\n    ref = lch2lab(l, c, h), L = ref[0], a = ref[1], b = ref[2];\n    ref1 = lab2rgb(L, a, b), r = ref1[0], g = ref1[1], b = ref1[2];\n    return [r, g, b, args.length > 3 ? args[3] : 1];\n  };\n\n  lab2lch = function() {\n    var a, b, c, h, l, ref;\n    ref = unpack(arguments), l = ref[0], a = ref[1], b = ref[2];\n    c = sqrt(a * a + b * b);\n    h = (atan2(b, a) * RAD2DEG + 360) % 360;\n    if (round(c * 10000) === 0) {\n      h = Number.NaN;\n    }\n    return [l, c, h];\n  };\n\n  rgb2lch = function() {\n    var a, b, g, l, r, ref, ref1;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    ref1 = rgb2lab(r, g, b), l = ref1[0], a = ref1[1], b = ref1[2];\n    return lab2lch(l, a, b);\n  };\n\n  chroma.lch = function() {\n    var args;\n    args = unpack(arguments);\n    return new Color(args, 'lch');\n  };\n\n  chroma.hcl = function() {\n    var args;\n    args = unpack(arguments);\n    return new Color(args, 'hcl');\n  };\n\n  _input.lch = lch2rgb;\n\n  _input.hcl = function() {\n    var c, h, l, ref;\n    ref = unpack(arguments), h = ref[0], c = ref[1], l = ref[2];\n    return lch2rgb([l, c, h]);\n  };\n\n  Color.prototype.lch = function() {\n    return rgb2lch(this._rgb);\n  };\n\n  Color.prototype.hcl = function() {\n    return rgb2lch(this._rgb).reverse();\n  };\n\n  rgb2cmyk = function(mode) {\n    var b, c, f, g, k, m, r, ref, y;\n    if (mode == null) {\n      mode = 'rgb';\n    }\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    r = r / 255;\n    g = g / 255;\n    b = b / 255;\n    k = 1 - Math.max(r, Math.max(g, b));\n    f = k < 1 ? 1 / (1 - k) : 0;\n    c = (1 - r - k) * f;\n    m = (1 - g - k) * f;\n    y = (1 - b - k) * f;\n    return [c, m, y, k];\n  };\n\n  cmyk2rgb = function() {\n    var alpha, args, b, c, g, k, m, r, y;\n    args = unpack(arguments);\n    c = args[0], m = args[1], y = args[2], k = args[3];\n    alpha = args.length > 4 ? args[4] : 1;\n    if (k === 1) {\n      return [0, 0, 0, alpha];\n    }\n    r = c >= 1 ? 0 : 255 * (1 - c) * (1 - k);\n    g = m >= 1 ? 0 : 255 * (1 - m) * (1 - k);\n    b = y >= 1 ? 0 : 255 * (1 - y) * (1 - k);\n    return [r, g, b, alpha];\n  };\n\n  _input.cmyk = function() {\n    return cmyk2rgb(unpack(arguments));\n  };\n\n  chroma.cmyk = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['cmyk']), function(){});\n  };\n\n  Color.prototype.cmyk = function() {\n    return rgb2cmyk(this._rgb);\n  };\n\n  _input.gl = function() {\n    var i, k, o, rgb, v;\n    rgb = (function() {\n      var ref, results;\n      ref = unpack(arguments);\n      results = [];\n      for (k in ref) {\n        v = ref[k];\n        results.push(v);\n      }\n      return results;\n    }).apply(this, arguments);\n    for (i = o = 0; o <= 2; i = ++o) {\n      rgb[i] *= 255;\n    }\n    return rgb;\n  };\n\n  chroma.gl = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['gl']), function(){});\n  };\n\n  Color.prototype.gl = function() {\n    var rgb;\n    rgb = this._rgb;\n    return [rgb[0] / 255, rgb[1] / 255, rgb[2] / 255, rgb[3]];\n  };\n\n  rgb2luminance = function(r, g, b) {\n    var ref;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\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  luminance_x = function(x) {\n    x /= 255;\n    if (x <= 0.03928) {\n      return x / 12.92;\n    } else {\n      return pow((x + 0.055) / 1.055, 2.4);\n    }\n  };\n\n  interpolate_rgb = function(col1, col2, f, m) {\n    var xyz0, xyz1;\n    xyz0 = col1._rgb;\n    xyz1 = col2._rgb;\n    return new Color(xyz0[0] + f * (xyz1[0] - xyz0[0]), xyz0[1] + f * (xyz1[1] - xyz0[1]), xyz0[2] + f * (xyz1[2] - xyz0[2]), m);\n  };\n\n  _interpolators.push(['rgb', interpolate_rgb]);\n\n  Color.prototype.luminance = function(lum, mode) {\n    var cur_lum, eps, max_iter, rgba, test;\n    if (mode == null) {\n      mode = 'rgb';\n    }\n    if (!arguments.length) {\n      return rgb2luminance(this._rgb);\n    }\n    rgba = this._rgb;\n    if (lum === 0) {\n      rgba = [0, 0, 0, this._rgb[3]];\n    } else if (lum === 1) {\n      rgba = [255, 255, 255, this[3]];\n    } else {\n      cur_lum = rgb2luminance(this._rgb);\n      eps = 1e-7;\n      max_iter = 20;\n      test = function(l, h) {\n        var lm, m;\n        m = l.interpolate(h, 0.5, mode);\n        lm = m.luminance();\n        if (Math.abs(lum - lm) < eps || !max_iter--) {\n          return m;\n        }\n        if (lm > lum) {\n          return test(l, m);\n        }\n        return test(m, h);\n      };\n      if (cur_lum > lum) {\n        rgba = test(chroma('black'), this).rgba();\n      } else {\n        rgba = test(this, chroma('white')).rgba();\n      }\n    }\n    return chroma(rgba).alpha(this.alpha());\n  };\n\n  temperature2rgb = function(kelvin) {\n    var b, g, r, temp;\n    temp = kelvin / 100;\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];\n  };\n\n  rgb2temperature = function() {\n    var b, eps, g, maxTemp, minTemp, r, ref, rgb, temp;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    minTemp = 1000;\n    maxTemp = 40000;\n    eps = 0.4;\n    while (maxTemp - minTemp > eps) {\n      temp = (maxTemp + minTemp) * 0.5;\n      rgb = temperature2rgb(temp);\n      if ((rgb[2] / rgb[0]) >= (b / r)) {\n        maxTemp = temp;\n      } else {\n        minTemp = temp;\n      }\n    }\n    return round(temp);\n  };\n\n  chroma.temperature = chroma.kelvin = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['temperature']), function(){});\n  };\n\n  _input.temperature = _input.kelvin = _input.K = temperature2rgb;\n\n  Color.prototype.temperature = function() {\n    return rgb2temperature(this._rgb);\n  };\n\n  Color.prototype.kelvin = Color.prototype.temperature;\n\n  chroma.contrast = function(a, b) {\n    var l1, l2, ref, ref1;\n    if ((ref = type(a)) === 'string' || ref === 'number') {\n      a = new Color(a);\n    }\n    if ((ref1 = type(b)) === 'string' || ref1 === 'number') {\n      b = new Color(b);\n    }\n    l1 = a.luminance();\n    l2 = b.luminance();\n    if (l1 > l2) {\n      return (l1 + 0.05) / (l2 + 0.05);\n    } else {\n      return (l2 + 0.05) / (l1 + 0.05);\n    }\n  };\n\n  chroma.distance = function(a, b, mode) {\n    var d, i, l1, l2, ref, ref1, sum_sq;\n    if (mode == null) {\n      mode = 'lab';\n    }\n    if ((ref = type(a)) === 'string' || ref === 'number') {\n      a = new Color(a);\n    }\n    if ((ref1 = type(b)) === 'string' || ref1 === 'number') {\n      b = new Color(b);\n    }\n    l1 = a.get(mode);\n    l2 = b.get(mode);\n    sum_sq = 0;\n    for (i in l1) {\n      d = (l1[i] || 0) - (l2[i] || 0);\n      sum_sq += d * d;\n    }\n    return Math.sqrt(sum_sq);\n  };\n\n  chroma.deltaE = function(a, b, L, C) {\n    var L1, L2, a1, a2, b1, b2, c1, c2, c4, dH2, delA, delB, delC, delL, f, h1, ref, ref1, ref2, ref3, sc, sh, sl, t, v1, v2, v3;\n    if (L == null) {\n      L = 1;\n    }\n    if (C == null) {\n      C = 1;\n    }\n    if ((ref = type(a)) === 'string' || ref === 'number') {\n      a = new Color(a);\n    }\n    if ((ref1 = type(b)) === 'string' || ref1 === 'number') {\n      b = new Color(b);\n    }\n    ref2 = a.lab(), L1 = ref2[0], a1 = ref2[1], b1 = ref2[2];\n    ref3 = b.lab(), L2 = ref3[0], a2 = ref3[1], b2 = ref3[2];\n    c1 = sqrt(a1 * a1 + b1 * b1);\n    c2 = sqrt(a2 * a2 + b2 * b2);\n    sl = L1 < 16.0 ? 0.511 : (0.040975 * L1) / (1.0 + 0.01765 * L1);\n    sc = (0.0638 * c1) / (1.0 + 0.0131 * c1) + 0.638;\n    h1 = c1 < 0.000001 ? 0.0 : (atan2(b1, a1) * 180.0) / PI;\n    while (h1 < 0) {\n      h1 += 360;\n    }\n    while (h1 >= 360) {\n      h1 -= 360;\n    }\n    t = (h1 >= 164.0) && (h1 <= 345.0) ? 0.56 + abs(0.2 * cos((PI * (h1 + 168.0)) / 180.0)) : 0.36 + abs(0.4 * cos((PI * (h1 + 35.0)) / 180.0));\n    c4 = c1 * c1 * c1 * c1;\n    f = sqrt(c4 / (c4 + 1900.0));\n    sh = sc * (f * t + 1.0 - f);\n    delL = L1 - L2;\n    delC = c1 - c2;\n    delA = a1 - a2;\n    delB = b1 - b2;\n    dH2 = delA * delA + delB * delB - delC * delC;\n    v1 = delL / (L * sl);\n    v2 = delC / (C * sc);\n    v3 = sh;\n    return sqrt(v1 * v1 + v2 * v2 + (dH2 / (v3 * v3)));\n  };\n\n  Color.prototype.get = function(modechan) {\n    var channel, i, me, mode, ref, src;\n    me = this;\n    ref = modechan.split('.'), mode = ref[0], channel = ref[1];\n    src = me[mode]();\n    if (channel) {\n      i = mode.indexOf(channel);\n      if (i > -1) {\n        return src[i];\n      } else {\n        return console.warn('unknown channel ' + channel + ' in mode ' + mode);\n      }\n    } else {\n      return src;\n    }\n  };\n\n  Color.prototype.set = function(modechan, value) {\n    var channel, i, me, mode, ref, src;\n    me = this;\n    ref = modechan.split('.'), mode = ref[0], channel = ref[1];\n    if (channel) {\n      src = me[mode]();\n      i = mode.indexOf(channel);\n      if (i > -1) {\n        if (type(value) === 'string') {\n          switch (value.charAt(0)) {\n            case '+':\n              src[i] += +value;\n              break;\n            case '-':\n              src[i] += +value;\n              break;\n            case '*':\n              src[i] *= +(value.substr(1));\n              break;\n            case '/':\n              src[i] /= +(value.substr(1));\n              break;\n            default:\n              src[i] = +value;\n          }\n        } else {\n          src[i] = value;\n        }\n      } else {\n        console.warn('unknown channel ' + channel + ' in mode ' + mode);\n      }\n    } else {\n      src = value;\n    }\n    return chroma(src, mode).alpha(me.alpha());\n  };\n\n  Color.prototype.clipped = function() {\n    return this._rgb._clipped || false;\n  };\n\n  Color.prototype.alpha = function(a) {\n    if (arguments.length) {\n      return chroma.rgb([this._rgb[0], this._rgb[1], this._rgb[2], a]);\n    }\n    return this._rgb[3];\n  };\n\n  Color.prototype.darken = function(amount) {\n    var lab, me;\n    if (amount == null) {\n      amount = 1;\n    }\n    me = this;\n    lab = me.lab();\n    lab[0] -= LAB_CONSTANTS.Kn * amount;\n    return chroma.lab(lab).alpha(me.alpha());\n  };\n\n  Color.prototype.brighten = function(amount) {\n    if (amount == null) {\n      amount = 1;\n    }\n    return this.darken(-amount);\n  };\n\n  Color.prototype.darker = Color.prototype.darken;\n\n  Color.prototype.brighter = Color.prototype.brighten;\n\n  Color.prototype.saturate = function(amount) {\n    var lch, me;\n    if (amount == null) {\n      amount = 1;\n    }\n    me = this;\n    lch = me.lch();\n    lch[1] += amount * LAB_CONSTANTS.Kn;\n    if (lch[1] < 0) {\n      lch[1] = 0;\n    }\n    return chroma.lch(lch).alpha(me.alpha());\n  };\n\n  Color.prototype.desaturate = function(amount) {\n    if (amount == null) {\n      amount = 1;\n    }\n    return this.saturate(-amount);\n  };\n\n  Color.prototype.premultiply = function() {\n    var a, rgb;\n    rgb = this.rgb();\n    a = this.alpha();\n    return chroma(rgb[0] * a, rgb[1] * a, rgb[2] * a, a);\n  };\n\n  blend = function(bottom, top, mode) {\n    if (!blend[mode]) {\n      throw 'unknown blend mode ' + mode;\n    }\n    return blend[mode](bottom, top);\n  };\n\n  blend_f = function(f) {\n    return function(bottom, top) {\n      var c0, c1;\n      c0 = chroma(top).rgb();\n      c1 = chroma(bottom).rgb();\n      return chroma(f(c0, c1), 'rgb');\n    };\n  };\n\n  each = function(f) {\n    return function(c0, c1) {\n      var i, o, out;\n      out = [];\n      for (i = o = 0; o <= 3; i = ++o) {\n        out[i] = f(c0[i], c1[i]);\n      }\n      return out;\n    };\n  };\n\n  normal = function(a, b) {\n    return a;\n  };\n\n  multiply = function(a, b) {\n    return a * b / 255;\n  };\n\n  darken = function(a, b) {\n    if (a > b) {\n      return b;\n    } else {\n      return a;\n    }\n  };\n\n  lighten = function(a, b) {\n    if (a > b) {\n      return a;\n    } else {\n      return b;\n    }\n  };\n\n  screen = function(a, b) {\n    return 255 * (1 - (1 - a / 255) * (1 - b / 255));\n  };\n\n  overlay = function(a, b) {\n    if (b < 128) {\n      return 2 * a * b / 255;\n    } else {\n      return 255 * (1 - 2 * (1 - a / 255) * (1 - b / 255));\n    }\n  };\n\n  burn = function(a, b) {\n    return 255 * (1 - (1 - b / 255) / (a / 255));\n  };\n\n  dodge = function(a, b) {\n    if (a === 255) {\n      return 255;\n    }\n    a = 255 * (b / 255) / (1 - a / 255);\n    if (a > 255) {\n      return 255;\n    } else {\n      return a;\n    }\n  };\n\n  blend.normal = blend_f(each(normal));\n\n  blend.multiply = blend_f(each(multiply));\n\n  blend.screen = blend_f(each(screen));\n\n  blend.overlay = blend_f(each(overlay));\n\n  blend.darken = blend_f(each(darken));\n\n  blend.lighten = blend_f(each(lighten));\n\n  blend.dodge = blend_f(each(dodge));\n\n  blend.burn = blend_f(each(burn));\n\n  chroma.blend = blend;\n\n  chroma.analyze = function(data) {\n    var len, o, r, val;\n    r = {\n      min: Number.MAX_VALUE,\n      max: Number.MAX_VALUE * -1,\n      sum: 0,\n      values: [],\n      count: 0\n    };\n    for (o = 0, len = data.length; o < len; o++) {\n      val = data[o];\n      if ((val != null) && !isNaN(val)) {\n        r.values.push(val);\n        r.sum += val;\n        if (val < r.min) {\n          r.min = val;\n        }\n        if (val > r.max) {\n          r.max = val;\n        }\n        r.count += 1;\n      }\n    }\n    r.domain = [r.min, r.max];\n    r.limits = function(mode, num) {\n      return chroma.limits(r, mode, num);\n    };\n    return r;\n  };\n\n  chroma.scale = function(colors, positions) {\n    var _classes, _colorCache, _colors, _correctLightness, _domain, _fixed, _gamma, _max, _min, _mode, _nacol, _out, _padding, _pos, _spread, _useCache, classifyValue, f, getClass, getColor, resetCache, setColors, tmap;\n    _mode = 'rgb';\n    _nacol = chroma('#ccc');\n    _spread = 0;\n    _fixed = false;\n    _domain = [0, 1];\n    _pos = [];\n    _padding = [0, 0];\n    _classes = false;\n    _colors = [];\n    _out = false;\n    _min = 0;\n    _max = 1;\n    _correctLightness = false;\n    _colorCache = {};\n    _useCache = true;\n    _gamma = 1;\n    setColors = function(colors) {\n      var c, col, o, ref, ref1, w;\n      if (colors == null) {\n        colors = ['#fff', '#000'];\n      }\n      if ((colors != null) && type(colors) === 'string' && (chroma.brewer != null)) {\n        colors = chroma.brewer[colors] || chroma.brewer[colors.toLowerCase()] || colors;\n      }\n      if (type(colors) === 'array') {\n        if (colors.length === 1) {\n          colors = [colors[0], colors[0]];\n        }\n        colors = colors.slice(0);\n        for (c = o = 0, ref = colors.length - 1; 0 <= ref ? o <= ref : o >= ref; c = 0 <= ref ? ++o : --o) {\n          col = colors[c];\n          if (type(col) === \"string\") {\n            colors[c] = chroma(col);\n          }\n        }\n        _pos.length = 0;\n        for (c = w = 0, ref1 = colors.length - 1; 0 <= ref1 ? w <= ref1 : w >= ref1; c = 0 <= ref1 ? ++w : --w) {\n          _pos.push(c / (colors.length - 1));\n        }\n      }\n      resetCache();\n      return _colors = colors;\n    };\n    getClass = function(value) {\n      var i, n;\n      if (_classes != null) {\n        n = _classes.length - 1;\n        i = 0;\n        while (i < n && value >= _classes[i]) {\n          i++;\n        }\n        return i - 1;\n      }\n      return 0;\n    };\n    tmap = function(t) {\n      return t;\n    };\n    classifyValue = function(value) {\n      var i, maxc, minc, n, val;\n      val = value;\n      if (_classes.length > 2) {\n        n = _classes.length - 1;\n        i = getClass(value);\n        minc = _classes[0] + (_classes[1] - _classes[0]) * (0 + _spread * 0.5);\n        maxc = _classes[n - 1] + (_classes[n] - _classes[n - 1]) * (1 - _spread * 0.5);\n        val = _min + ((_classes[i] + (_classes[i + 1] - _classes[i]) * 0.5 - minc) / (maxc - minc)) * (_max - _min);\n      }\n      return val;\n    };\n    getColor = function(val, bypassMap) {\n      var c, col, i, k, o, p, ref, t;\n      if (bypassMap == null) {\n        bypassMap = false;\n      }\n      if (isNaN(val) || val === null) {\n        return _nacol;\n      }\n      if (!bypassMap) {\n        if (_classes && _classes.length > 2) {\n          c = getClass(val);\n          t = c / (_classes.length - 2);\n        } else if (_max !== _min) {\n          t = (val - _min) / (_max - _min);\n        } else {\n          t = 1;\n        }\n      } else {\n        t = val;\n      }\n      if (!bypassMap) {\n        t = tmap(t);\n      }\n      if (_gamma !== 1) {\n        t = pow(t, _gamma);\n      }\n      t = _padding[0] + (t * (1 - _padding[0] - _padding[1]));\n      t = Math.min(1, Math.max(0, t));\n      k = Math.floor(t * 10000);\n      if (_useCache && _colorCache[k]) {\n        col = _colorCache[k];\n      } else {\n        if (type(_colors) === 'array') {\n          for (i = o = 0, ref = _pos.length - 1; 0 <= ref ? o <= ref : o >= ref; i = 0 <= ref ? ++o : --o) {\n            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.interpolate(_colors[i], _colors[i + 1], t, _mode);\n              break;\n            }\n          }\n        } else if (type(_colors) === 'function') {\n          col = _colors(t);\n        }\n        if (_useCache) {\n          _colorCache[k] = col;\n        }\n      }\n      return col;\n    };\n    resetCache = function() {\n      return _colorCache = {};\n    };\n    setColors(colors);\n    f = function(v) {\n      var c;\n      c = chroma(getColor(v));\n      if (_out && c[_out]) {\n        return c[_out]();\n      } else {\n        return c;\n      }\n    };\n    f.classes = function(classes) {\n      var d;\n      if (classes != null) {\n        if (type(classes) === 'array') {\n          _classes = classes;\n          _domain = [classes[0], classes[classes.length - 1]];\n        } else {\n          d = chroma.analyze(_domain);\n          if (classes === 0) {\n            _classes = [d.min, d.max];\n          } else {\n            _classes = chroma.limits(d, 'e', classes);\n          }\n        }\n        return f;\n      }\n      return _classes;\n    };\n    f.domain = function(domain) {\n      var c, d, k, len, o, ref, w;\n      if (!arguments.length) {\n        return _domain;\n      }\n      _min = domain[0];\n      _max = domain[domain.length - 1];\n      _pos = [];\n      k = _colors.length;\n      if (domain.length === k && _min !== _max) {\n        for (o = 0, len = domain.length; o < len; o++) {\n          d = domain[o];\n          _pos.push((d - _min) / (_max - _min));\n        }\n      } else {\n        for (c = w = 0, ref = k - 1; 0 <= ref ? w <= ref : w >= ref; c = 0 <= ref ? ++w : --w) {\n          _pos.push(c / (k - 1));\n        }\n      }\n      _domain = [_min, _max];\n      return f;\n    };\n    f.mode = function(_m) {\n      if (!arguments.length) {\n        return _mode;\n      }\n      _mode = _m;\n      resetCache();\n      return f;\n    };\n    f.range = function(colors, _pos) {\n      setColors(colors, _pos);\n      return f;\n    };\n    f.out = function(_o) {\n      _out = _o;\n      return f;\n    };\n    f.spread = function(val) {\n      if (!arguments.length) {\n        return _spread;\n      }\n      _spread = val;\n      return f;\n    };\n    f.correctLightness = function(v) {\n      if (v == null) {\n        v = true;\n      }\n      _correctLightness = v;\n      resetCache();\n      if (_correctLightness) {\n        tmap = function(t) {\n          var L0, L1, L_actual, L_diff, L_ideal, max_iter, pol, t0, t1;\n          L0 = getColor(0, true).lab()[0];\n          L1 = getColor(1, true).lab()[0];\n          pol = L0 > L1;\n          L_actual = getColor(t, true).lab()[0];\n          L_ideal = L0 + (L1 - L0) * t;\n          L_diff = L_actual - L_ideal;\n          t0 = 0;\n          t1 = 1;\n          max_iter = 20;\n          while (Math.abs(L_diff) > 1e-2 && max_iter-- > 0) {\n            (function() {\n              if (pol) {\n                L_diff *= -1;\n              }\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        tmap = function(t) {\n          return t;\n        };\n      }\n      return f;\n    };\n    f.padding = function(p) {\n      if (p != null) {\n        if (type(p) === 'number') {\n          p = [p, p];\n        }\n        _padding = p;\n        return f;\n      } else {\n        return _padding;\n      }\n    };\n    f.colors = function(numColors, out) {\n      var dd, dm, i, o, ref, result, results, samples, w;\n      if (arguments.length < 2) {\n        out = 'hex';\n      }\n      result = [];\n      if (arguments.length === 0) {\n        result = _colors.slice(0);\n      } else if (numColors === 1) {\n        result = [f(0.5)];\n      } else if (numColors > 1) {\n        dm = _domain[0];\n        dd = _domain[1] - dm;\n        result = (function() {\n          results = [];\n          for (var o = 0; 0 <= numColors ? o < numColors : o > numColors; 0 <= numColors ? o++ : o--){ results.push(o); }\n          return results;\n        }).apply(this).map(function(i) {\n          return f(dm + i / (numColors - 1) * dd);\n        });\n      } else {\n        colors = [];\n        samples = [];\n        if (_classes && _classes.length > 2) {\n          for (i = w = 1, ref = _classes.length; 1 <= ref ? w < ref : w > ref; i = 1 <= ref ? ++w : --w) {\n            samples.push((_classes[i - 1] + _classes[i]) * 0.5);\n          }\n        } else {\n          samples = _domain;\n        }\n        result = samples.map(function(v) {\n          return f(v);\n        });\n      }\n      if (chroma[out]) {\n        result = result.map(function(c) {\n          return c[out]();\n        });\n      }\n      return result;\n    };\n    f.cache = function(c) {\n      if (c != null) {\n        _useCache = c;\n        return f;\n      } else {\n        return _useCache;\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    f.nodata = function(d) {\n      if (d != null) {\n        _nacol = chroma(d);\n        return f;\n      } else {\n        return _nacol;\n      }\n    };\n    return f;\n  };\n\n  if (chroma.scales == null) {\n    chroma.scales = {};\n  }\n\n  chroma.scales.cool = function() {\n    return chroma.scale([chroma.hsl(180, 1, .9), chroma.hsl(250, .7, .4)]);\n  };\n\n  chroma.scales.hot = function() {\n    return chroma.scale(['#000', '#f00', '#ff0', '#fff'], [0, .25, .75, 1]).mode('rgb');\n  };\n\n  chroma.analyze = function(data, key, filter) {\n    var add, k, len, o, r, val, visit;\n    r = {\n      min: Number.MAX_VALUE,\n      max: Number.MAX_VALUE * -1,\n      sum: 0,\n      values: [],\n      count: 0\n    };\n    if (filter == null) {\n      filter = function() {\n        return true;\n      };\n    }\n    add = function(val) {\n      if ((val != null) && !isNaN(val)) {\n        r.values.push(val);\n        r.sum += val;\n        if (val < r.min) {\n          r.min = val;\n        }\n        if (val > r.max) {\n          r.max = val;\n        }\n        r.count += 1;\n      }\n    };\n    visit = function(val, k) {\n      if (filter(val, k)) {\n        if ((key != null) && type(key) === 'function') {\n          return add(key(val));\n        } else if ((key != null) && type(key) === 'string' || type(key) === 'number') {\n          return add(val[key]);\n        } else {\n          return add(val);\n        }\n      }\n    };\n    if (type(data) === 'array') {\n      for (o = 0, len = data.length; o < len; o++) {\n        val = data[o];\n        visit(val);\n      }\n    } else {\n      for (k in data) {\n        val = data[k];\n        visit(val, k);\n      }\n    }\n    r.domain = [r.min, r.max];\n    r.limits = function(mode, num) {\n      return chroma.limits(r, mode, num);\n    };\n    return r;\n  };\n\n  chroma.limits = function(data, mode, num) {\n    var aa, ab, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, assignments, best, centroids, cluster, clusterSizes, dist, i, j, kClusters, limits, max_log, min, min_log, mindist, n, nb_iters, newCentroids, o, p, pb, pr, ref, ref1, ref10, ref11, ref12, ref13, ref14, ref2, ref3, ref4, ref5, ref6, ref7, ref8, ref9, repeat, sum, tmpKMeansBreaks, v, value, values, w;\n    if (mode == null) {\n      mode = 'equal';\n    }\n    if (num == null) {\n      num = 7;\n    }\n    if (type(data) === 'array') {\n      data = chroma.analyze(data);\n    }\n    min = data.min;\n    max = data.max;\n    sum = data.sum;\n    values = data.values.sort(function(a, b) {\n      return a - b;\n    });\n    if (num === 1) {\n      return [min, max];\n    }\n    limits = [];\n    if (mode.substr(0, 1) === 'c') {\n      limits.push(min);\n      limits.push(max);\n    }\n    if (mode.substr(0, 1) === 'e') {\n      limits.push(min);\n      for (i = o = 1, ref = num - 1; 1 <= ref ? o <= ref : o >= ref; i = 1 <= ref ? ++o : --o) {\n        limits.push(min + (i / num) * (max - min));\n      }\n      limits.push(max);\n    } else if (mode.substr(0, 1) === 'l') {\n      if (min <= 0) {\n        throw 'Logarithmic scales are only possible for values > 0';\n      }\n      min_log = Math.LOG10E * log(min);\n      max_log = Math.LOG10E * log(max);\n      limits.push(min);\n      for (i = w = 1, ref1 = num - 1; 1 <= ref1 ? w <= ref1 : w >= ref1; i = 1 <= ref1 ? ++w : --w) {\n        limits.push(pow(10, min_log + (i / num) * (max_log - min_log)));\n      }\n      limits.push(max);\n    } else if (mode.substr(0, 1) === 'q') {\n      limits.push(min);\n      for (i = aa = 1, ref2 = num - 1; 1 <= ref2 ? aa <= ref2 : aa >= ref2; i = 1 <= ref2 ? ++aa : --aa) {\n        p = (values.length - 1) * i / num;\n        pb = floor(p);\n        if (pb === p) {\n          limits.push(values[pb]);\n        } else {\n          pr = p - pb;\n          limits.push(values[pb] * (1 - pr) + values[pb + 1] * pr);\n        }\n      }\n      limits.push(max);\n    } else if (mode.substr(0, 1) === 'k') {\n\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      n = values.length;\n      assignments = new Array(n);\n      clusterSizes = new Array(num);\n      repeat = true;\n      nb_iters = 0;\n      centroids = null;\n      centroids = [];\n      centroids.push(min);\n      for (i = ab = 1, ref3 = num - 1; 1 <= ref3 ? ab <= ref3 : ab >= ref3; i = 1 <= ref3 ? ++ab : --ab) {\n        centroids.push(min + (i / num) * (max - min));\n      }\n      centroids.push(max);\n      while (repeat) {\n        for (j = ac = 0, ref4 = num - 1; 0 <= ref4 ? ac <= ref4 : ac >= ref4; j = 0 <= ref4 ? ++ac : --ac) {\n          clusterSizes[j] = 0;\n        }\n        for (i = ad = 0, ref5 = n - 1; 0 <= ref5 ? ad <= ref5 : ad >= ref5; i = 0 <= ref5 ? ++ad : --ad) {\n          value = values[i];\n          mindist = Number.MAX_VALUE;\n          for (j = ae = 0, ref6 = num - 1; 0 <= ref6 ? ae <= ref6 : ae >= ref6; j = 0 <= ref6 ? ++ae : --ae) {\n            dist = abs(centroids[j] - value);\n            if (dist < mindist) {\n              mindist = dist;\n              best = j;\n            }\n          }\n          clusterSizes[best]++;\n          assignments[i] = best;\n        }\n        newCentroids = new Array(num);\n        for (j = af = 0, ref7 = num - 1; 0 <= ref7 ? af <= ref7 : af >= ref7; j = 0 <= ref7 ? ++af : --af) {\n          newCentroids[j] = null;\n        }\n        for (i = ag = 0, ref8 = n - 1; 0 <= ref8 ? ag <= ref8 : ag >= ref8; i = 0 <= ref8 ? ++ag : --ag) {\n          cluster = assignments[i];\n          if (newCentroids[cluster] === null) {\n            newCentroids[cluster] = values[i];\n          } else {\n            newCentroids[cluster] += values[i];\n          }\n        }\n        for (j = ah = 0, ref9 = num - 1; 0 <= ref9 ? ah <= ref9 : ah >= ref9; j = 0 <= ref9 ? ++ah : --ah) {\n          newCentroids[j] *= 1 / clusterSizes[j];\n        }\n        repeat = false;\n        for (j = ai = 0, ref10 = num - 1; 0 <= ref10 ? ai <= ref10 : ai >= ref10; j = 0 <= ref10 ? ++ai : --ai) {\n          if (newCentroids[j] !== centroids[i]) {\n            repeat = true;\n            break;\n          }\n        }\n        centroids = newCentroids;\n        nb_iters++;\n        if (nb_iters > 200) {\n          repeat = false;\n        }\n      }\n      kClusters = {};\n      for (j = aj = 0, ref11 = num - 1; 0 <= ref11 ? aj <= ref11 : aj >= ref11; j = 0 <= ref11 ? ++aj : --aj) {\n        kClusters[j] = [];\n      }\n      for (i = ak = 0, ref12 = n - 1; 0 <= ref12 ? ak <= ref12 : ak >= ref12; i = 0 <= ref12 ? ++ak : --ak) {\n        cluster = assignments[i];\n        kClusters[cluster].push(values[i]);\n      }\n      tmpKMeansBreaks = [];\n      for (j = al = 0, ref13 = num - 1; 0 <= ref13 ? al <= ref13 : al >= ref13; j = 0 <= ref13 ? ++al : --al) {\n        tmpKMeansBreaks.push(kClusters[j][0]);\n        tmpKMeansBreaks.push(kClusters[j][kClusters[j].length - 1]);\n      }\n      tmpKMeansBreaks = tmpKMeansBreaks.sort(function(a, b) {\n        return a - b;\n      });\n      limits.push(tmpKMeansBreaks[0]);\n      for (i = am = 1, ref14 = tmpKMeansBreaks.length - 1; am <= ref14; i = am += 2) {\n        v = tmpKMeansBreaks[i];\n        if (!isNaN(v) && limits.indexOf(v) === -1) {\n          limits.push(v);\n        }\n      }\n    }\n    return limits;\n  };\n\n  hsi2rgb = function(h, s, i) {\n\n    /*\n    borrowed from here:\n    http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/hsi2rgb.cpp\n     */\n    var args, b, g, r;\n    args = unpack(arguments);\n    h = args[0], s = args[1], i = args[2];\n    if (isNaN(h)) {\n      h = 0;\n    }\n    h /= 360;\n    if (h < 1 / 3) {\n      b = (1 - s) / 3;\n      r = (1 + s * cos(TWOPI * h) / cos(PITHIRD - TWOPI * 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 * h) / cos(PITHIRD - TWOPI * h)) / 3;\n      b = 1 - (r + g);\n    } else {\n      h -= 2 / 3;\n      g = (1 - s) / 3;\n      b = (1 + s * cos(TWOPI * h) / cos(PITHIRD - TWOPI * h)) / 3;\n      r = 1 - (g + b);\n    }\n    r = limit(i * r * 3);\n    g = limit(i * g * 3);\n    b = limit(i * b * 3);\n    return [r * 255, g * 255, b * 255, args.length > 3 ? args[3] : 1];\n  };\n\n  rgb2hsi = function() {\n\n    /*\n    borrowed from here:\n    http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/rgb2hsi.cpp\n     */\n    var b, g, h, i, min, r, ref, s;\n    ref = unpack(arguments), r = ref[0], g = ref[1], b = ref[2];\n    TWOPI = Math.PI * 2;\n    r /= 255;\n    g /= 255;\n    b /= 255;\n    min = Math.min(r, g, b);\n    i = (r + g + b) / 3;\n    s = 1 - min / i;\n    if (s === 0) {\n      h = 0;\n    } else {\n      h = ((r - g) + (r - b)) / 2;\n      h /= Math.sqrt((r - g) * (r - g) + (r - b) * (g - b));\n      h = Math.acos(h);\n      if (b > g) {\n        h = TWOPI - h;\n      }\n      h /= TWOPI;\n    }\n    return [h * 360, s, i];\n  };\n\n  chroma.hsi = function() {\n    return (function(func, args, ctor) {\n      ctor.prototype = func.prototype;\n      var child = new ctor, result = func.apply(child, args);\n      return Object(result) === result ? result : child;\n    })(Color, slice.call(arguments).concat(['hsi']), function(){});\n  };\n\n  _input.hsi = hsi2rgb;\n\n  Color.prototype.hsi = function() {\n    return rgb2hsi(this._rgb);\n  };\n\n  interpolate_hsx = function(col1, col2, f, m) {\n    var dh, hue, hue0, hue1, lbv, lbv0, lbv1, res, sat, sat0, sat1, 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    if (m.substr(0, 1) === 'h') {\n      hue0 = xyz0[0], sat0 = xyz0[1], lbv0 = xyz0[2];\n      hue1 = xyz1[0], sat1 = xyz1[1], lbv1 = xyz1[2];\n    }\n    if (!isNaN(hue0) && !isNaN(hue1)) {\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') {\n        sat = sat0;\n      }\n    } else if (!isNaN(hue1)) {\n      hue = hue1;\n      if ((lbv0 === 1 || lbv0 === 0) && m !== 'hsv') {\n        sat = sat1;\n      }\n    } else {\n      hue = Number.NaN;\n    }\n    if (sat == null) {\n      sat = sat0 + f * (sat1 - sat0);\n    }\n    lbv = lbv0 + f * (lbv1 - lbv0);\n    return res = chroma[m](hue, sat, lbv);\n  };\n\n  _interpolators = _interpolators.concat((function() {\n    var len, o, ref, results;\n    ref = ['hsv', 'hsl', 'hsi', 'hcl', 'lch', 'hcg'];\n    results = [];\n    for (o = 0, len = ref.length; o < len; o++) {\n      m = ref[o];\n      results.push([m, interpolate_hsx]);\n    }\n    return results;\n  })());\n\n  interpolate_num = function(col1, col2, f, m) {\n    var n1, n2;\n    n1 = col1.num();\n    n2 = col2.num();\n    return chroma.num(n1 + (n2 - n1) * f, 'num');\n  };\n\n  _interpolators.push(['num', interpolate_num]);\n\n  interpolate_lab = function(col1, col2, f, m) {\n    var res, xyz0, xyz1;\n    xyz0 = col1.lab();\n    xyz1 = col2.lab();\n    return res = new Color(xyz0[0] + f * (xyz1[0] - xyz0[0]), xyz0[1] + f * (xyz1[1] - xyz0[1]), xyz0[2] + f * (xyz1[2] - xyz0[2]), m);\n  };\n\n  _interpolators.push(['lab', interpolate_lab]);\n\n}).call(this);\n", "\"use strict\";\n\nmodule.exports = function () {\n\tvar weakMap, obj;\n\n\tif (typeof WeakMap !== \"function\") return false;\n\ttry {\n\t\t// WebKit doesn't support arguments and crashes\n\t\tweakMap = new WeakMap([[obj = {}, \"one\"], [{}, \"two\"], [{}, \"three\"]]);\n\t} catch (e) {\n\t\treturn false;\n\t}\n\tif (String(weakMap) !== \"[object WeakMap]\") return false;\n\tif (typeof weakMap.set !== \"function\") return false;\n\tif (weakMap.set({}, 1) !== weakMap) return false;\n\tif (typeof weakMap.delete !== \"function\") return false;\n\tif (typeof weakMap.has !== \"function\") return false;\n\tif (weakMap.get(obj) !== \"one\") return false;\n\n\treturn true;\n};\n", "\"use strict\";\n\n// eslint-disable-next-line no-empty-function\nmodule.exports = function () {};\n", "\"use strict\";\n\nvar _undefined = require(\"../function/noop\")(); // Support ES3 engines\n\nmodule.exports = function (val) { return val !== _undefined && val !== null; };\n", "\"use strict\";\n\nvar create = Object.create, getPrototypeOf = Object.getPrototypeOf, plainObject = {};\n\nmodule.exports = function (/* CustomCreate*/) {\n\tvar setPrototypeOf = Object.setPrototypeOf, customCreate = arguments[0] || create;\n\tif (typeof setPrototypeOf !== \"function\") return false;\n\treturn getPrototypeOf(setPrototypeOf(customCreate(null), plainObject)) === plainObject;\n};\n", "\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar map = { function: true, object: true };\n\nmodule.exports = function (value) { return (isValue(value) && map[typeof value]) || false; };\n", "\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) throw new TypeError(\"Cannot use null or undefined\");\n\treturn value;\n};\n", "// Workaround for http://code.google.com/p/v8/issues/detail?id=2804\n\n\"use strict\";\n\nvar create = Object.create, shim;\n\nif (!require(\"./set-prototype-of/is-implemented\")()) {\n\tshim = require(\"./set-prototype-of/shim\");\n}\n\nmodule.exports = (function () {\n\tvar nullObject, polyProps, desc;\n\tif (!shim) return create;\n\tif (shim.level !== 1) return create;\n\n\tnullObject = {};\n\tpolyProps = {};\n\tdesc = { configurable: false, enumerable: false, writable: true, value: undefined };\n\tObject.getOwnPropertyNames(Object.prototype).forEach(function (name) {\n\t\tif (name === \"__proto__\") {\n\t\t\tpolyProps[name] = {\n\t\t\t\tconfigurable: true,\n\t\t\t\tenumerable: false,\n\t\t\t\twritable: true,\n\t\t\t\tvalue: undefined\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\t\tpolyProps[name] = desc;\n\t});\n\tObject.defineProperties(nullObject, polyProps);\n\n\tObject.defineProperty(shim, \"nullPolyfill\", {\n\t\tconfigurable: false,\n\t\tenumerable: false,\n\t\twritable: false,\n\t\tvalue: nullObject\n\t});\n\n\treturn function (prototype, props) {\n\t\treturn create(prototype === null ? nullObject : prototype, props);\n\t};\n})();\n", "/* eslint no-proto: \"off\" */\n\n// Big thanks to @WebReflection for sorting this out\n// https://gist.github.com/WebReflection/5593554\n\n\"use strict\";\n\nvar isObject         = require(\"../is-object\")\n  , value            = require(\"../valid-value\")\n  , objIsPrototypeOf = Object.prototype.isPrototypeOf\n  , defineProperty   = Object.defineProperty\n  , nullDesc         = { configurable: true, enumerable: false, writable: true, value: undefined }\n  , validate;\n\nvalidate = function (obj, prototype) {\n\tvalue(obj);\n\tif (prototype === null || isObject(prototype)) return obj;\n\tthrow new TypeError(\"Prototype must be null or an object\");\n};\n\nmodule.exports = (function (status) {\n\tvar fn, set;\n\tif (!status) return null;\n\tif (status.level === 2) {\n\t\tif (status.set) {\n\t\t\tset = status.set;\n\t\t\tfn = function (obj, prototype) {\n\t\t\t\tset.call(validate(obj, prototype), prototype);\n\t\t\t\treturn obj;\n\t\t\t};\n\t\t} else {\n\t\t\tfn = function (obj, prototype) {\n\t\t\t\tvalidate(obj, prototype).__proto__ = prototype;\n\t\t\t\treturn obj;\n\t\t\t};\n\t\t}\n\t} else {\n\t\tfn = function self(obj, prototype) {\n\t\t\tvar isNullBase;\n\t\t\tvalidate(obj, prototype);\n\t\t\tisNullBase = objIsPrototypeOf.call(self.nullPolyfill, obj);\n\t\t\tif (isNullBase) delete self.nullPolyfill.__proto__;\n\t\t\tif (prototype === null) prototype = self.nullPolyfill;\n\t\t\tobj.__proto__ = prototype;\n\t\t\tif (isNullBase) defineProperty(self.nullPolyfill, \"__proto__\", nullDesc);\n\t\t\treturn obj;\n\t\t};\n\t}\n\treturn Object.defineProperty(fn, \"level\", {\n\t\tconfigurable: false,\n\t\tenumerable: false,\n\t\twritable: false,\n\t\tvalue: status.level\n\t});\n})(\n\t(function () {\n\t\tvar tmpObj1 = Object.create(null)\n\t\t  , tmpObj2 = {}\n\t\t  , set\n\t\t  , desc = Object.getOwnPropertyDescriptor(Object.prototype, \"__proto__\");\n\n\t\tif (desc) {\n\t\t\ttry {\n\t\t\t\tset = desc.set; // Opera crashes at this point\n\t\t\t\tset.call(tmpObj1, tmpObj2);\n\t\t\t} catch (ignore) {}\n\t\t\tif (Object.getPrototypeOf(tmpObj1) === tmpObj2) return { set: set, level: 2 };\n\t\t}\n\n\t\ttmpObj1.__proto__ = tmpObj2;\n\t\tif (Object.getPrototypeOf(tmpObj1) === tmpObj2) return { level: 2 };\n\n\t\ttmpObj1 = {};\n\t\ttmpObj1.__proto__ = tmpObj2;\n\t\tif (Object.getPrototypeOf(tmpObj1) === tmpObj2) return { level: 1 };\n\n\t\treturn false;\n\t})()\n);\n\nrequire(\"../create\");\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.setPrototypeOf : require(\"./shim\");\n", "\"use strict\";\n\nvar isObject = require(\"./is-object\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) throw new TypeError(value + \" is not an Object\");\n\treturn value;\n};\n", "\"use strict\";\n\nvar generated = Object.create(null), random = Math.random;\n\nmodule.exports = function () {\n\tvar str;\n\tdo {\n\t\tstr = random().toString(36).slice(2);\n\t} while (generated[str]);\n\treturn str;\n};\n", "\"use strict\";\n\n// ES3 safe\nvar _undefined = void 0;\n\nmodule.exports = function (value) { return value !== _undefined && value !== null; };\n", "\"use strict\";\n\nvar isValue = require(\"../value/is\");\n\n// prettier-ignore\nvar possibleTypes = { \"object\": true, \"function\": true, \"undefined\": true /* document.all */ };\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\treturn hasOwnProperty.call(possibleTypes, typeof value);\n};\n", "\"use strict\";\n\nvar isObject = require(\"../object/is\");\n\nmodule.exports = function (value) {\n\tif (!isObject(value)) return false;\n\ttry {\n\t\tif (!value.constructor) return false;\n\t\treturn value.constructor.prototype === value;\n\t} catch (error) {\n\t\treturn false;\n\t}\n};\n", "\"use strict\";\n\nvar isPrototype = require(\"../prototype/is\");\n\nmodule.exports = function (value) {\n\tif (typeof value !== \"function\") return false;\n\n\tif (!hasOwnProperty.call(value, \"length\")) return false;\n\n\ttry {\n\t\tif (typeof value.length !== \"number\") return false;\n\t\tif (typeof value.call !== \"function\") return false;\n\t\tif (typeof value.apply !== \"function\") return false;\n\t} catch (error) {\n\t\treturn false;\n\t}\n\n\treturn !isPrototype(value);\n};\n", "\"use strict\";\n\nvar isFunction = require(\"../function/is\");\n\nvar classRe = /^\\s*class[\\s{/}]/, functionToString = Function.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isFunction(value)) return false;\n\tif (classRe.test(functionToString.call(value))) return false;\n\treturn true;\n};\n", "\"use strict\";\n\nmodule.exports = function () {\n\tvar assign = Object.assign, obj;\n\tif (typeof assign !== \"function\") return false;\n\tobj = { foo: \"raz\" };\n\tassign(obj, { bar: \"dwa\" }, { trzy: \"trzy\" });\n\treturn obj.foo + obj.bar + obj.trzy === \"razdwatrzy\";\n};\n", "\"use strict\";\n\nmodule.exports = function () {\n\ttry {\n\t\tObject.keys(\"primitive\");\n\t\treturn true;\n\t} catch (e) {\n\t\treturn false;\n\t}\n};\n", "\"use strict\";\n\nvar isValue = require(\"../is-value\");\n\nvar keys = Object.keys;\n\nmodule.exports = function (object) { return keys(isValue(object) ? Object(object) : object); };\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.keys : require(\"./shim\");\n", "\"use strict\";\n\nvar keys  = require(\"../keys\")\n  , value = require(\"../valid-value\")\n  , max   = Math.max;\n\nmodule.exports = function (dest, src /*, \u2026srcn*/) {\n\tvar error, i, length = max(arguments.length, 2), assign;\n\tdest = Object(value(dest));\n\tassign = function (key) {\n\t\ttry {\n\t\t\tdest[key] = src[key];\n\t\t} catch (e) {\n\t\t\tif (!error) error = e;\n\t\t}\n\t};\n\tfor (i = 1; i < length; ++i) {\n\t\tsrc = arguments[i];\n\t\tkeys(src).forEach(assign);\n\t}\n\tif (error !== undefined) throw error;\n\treturn dest;\n};\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Object.assign : require(\"./shim\");\n", "\"use strict\";\n\nvar isValue = require(\"./is-value\");\n\nvar forEach = Array.prototype.forEach, create = Object.create;\n\nvar process = function (src, obj) {\n\tvar key;\n\tfor (key in src) obj[key] = src[key];\n};\n\n// eslint-disable-next-line no-unused-vars\nmodule.exports = function (opts1 /*, \u2026options*/) {\n\tvar result = create(null);\n\tforEach.call(arguments, function (options) {\n\t\tif (!isValue(options)) return;\n\t\tprocess(Object(options), result);\n\t});\n\treturn result;\n};\n", "\"use strict\";\n\nvar str = \"razdwatrzy\";\n\nmodule.exports = function () {\n\tif (typeof str.contains !== \"function\") return false;\n\treturn str.contains(\"dwa\") === true && str.contains(\"foo\") === false;\n};\n", "\"use strict\";\n\nvar indexOf = String.prototype.indexOf;\n\nmodule.exports = function (searchString /*, position*/) {\n\treturn indexOf.call(this, searchString, arguments[1]) > -1;\n};\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? String.prototype.contains : require(\"./shim\");\n", "\"use strict\";\n\nvar isValue         = require(\"type/value/is\")\n  , isPlainFunction = require(\"type/plain-function/is\")\n  , assign          = require(\"es5-ext/object/assign\")\n  , normalizeOpts   = require(\"es5-ext/object/normalize-options\")\n  , contains        = require(\"es5-ext/string/#/contains\");\n\nvar d = (module.exports = function (dscr, value/*, options*/) {\n\tvar c, e, w, options, desc;\n\tif (arguments.length < 2 || typeof dscr !== \"string\") {\n\t\toptions = value;\n\t\tvalue = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[2];\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t\tw = contains.call(dscr, \"w\");\n\t} else {\n\t\tc = w = true;\n\t\te = false;\n\t}\n\n\tdesc = { value: value, configurable: c, enumerable: e, writable: w };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n});\n\nd.gs = function (dscr, get, set/*, options*/) {\n\tvar c, e, options, desc;\n\tif (typeof dscr !== \"string\") {\n\t\toptions = set;\n\t\tset = get;\n\t\tget = dscr;\n\t\tdscr = null;\n\t} else {\n\t\toptions = arguments[3];\n\t}\n\tif (!isValue(get)) {\n\t\tget = undefined;\n\t} else if (!isPlainFunction(get)) {\n\t\toptions = get;\n\t\tget = set = undefined;\n\t} else if (!isValue(set)) {\n\t\tset = undefined;\n\t} else if (!isPlainFunction(set)) {\n\t\toptions = set;\n\t\tset = undefined;\n\t}\n\tif (isValue(dscr)) {\n\t\tc = contains.call(dscr, \"c\");\n\t\te = contains.call(dscr, \"e\");\n\t} else {\n\t\tc = true;\n\t\te = false;\n\t}\n\n\tdesc = { get: get, set: set, configurable: c, enumerable: e };\n\treturn !options ? desc : assign(normalizeOpts(options), desc);\n};\n", "\"use strict\";\n\nvar objToString = Object.prototype.toString\n  , id = objToString.call((function () { return arguments; })());\n\nmodule.exports = function (value) { return objToString.call(value) === id; };\n", "\"use strict\";\n\nvar objToString = Object.prototype.toString, id = objToString.call(\"\");\n\nmodule.exports = function (value) {\n\treturn (\n\t\ttypeof value === \"string\" ||\n\t\t(value &&\n\t\t\ttypeof value === \"object\" &&\n\t\t\t(value instanceof String || objToString.call(value) === id)) ||\n\t\tfalse\n\t);\n};\n", "\"use strict\";\n\nmodule.exports = function () {\n\tif (typeof globalThis !== \"object\") return false;\n\tif (!globalThis) return false;\n\treturn globalThis.Array === Array;\n};\n", "var naiveFallback = function () {\n\tif (typeof self === \"object\" && self) return self;\n\tif (typeof window === \"object\" && window) return window;\n\tthrow new Error(\"Unable to resolve global `this`\");\n};\n\nmodule.exports = (function () {\n\tif (this) return this;\n\n\t// Unexpected strict mode (may happen if e.g. bundled into ESM module)\n\n\t// Thanks @mathiasbynens -> https://mathiasbynens.be/notes/globalthis\n\t// In all ES5+ engines global object inherits from Object.prototype\n\t// (if you approached one that doesn't please report)\n\ttry {\n\t\tObject.defineProperty(Object.prototype, \"__global__\", {\n\t\t\tget: function () { return this; },\n\t\t\tconfigurable: true\n\t\t});\n\t} catch (error) {\n\t\t// Unfortunate case of Object.prototype being sealed (via preventExtensions, seal or freeze)\n\t\treturn naiveFallback();\n\t}\n\ttry {\n\t\t// Safari case (window.__global__ is resolved with global context, but __global__ does not)\n\t\tif (!__global__) return naiveFallback();\n\t\treturn __global__;\n\t} finally {\n\t\tdelete Object.prototype.__global__;\n\t}\n})();\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? globalThis : require(\"./implementation\");\n", "\"use strict\";\n\nvar global     = require(\"ext/global-this\")\n  , validTypes = { object: true, symbol: true };\n\nmodule.exports = function () {\n\tvar Symbol = global.Symbol;\n\tvar symbol;\n\tif (typeof Symbol !== \"function\") return false;\n\tsymbol = Symbol(\"test symbol\");\n\ttry { String(symbol); }\n\tcatch (e) { return false; }\n\n\t// Return 'true' also for polyfills\n\tif (!validTypes[typeof Symbol.iterator]) return false;\n\tif (!validTypes[typeof Symbol.toPrimitive]) return false;\n\tif (!validTypes[typeof Symbol.toStringTag]) return false;\n\n\treturn true;\n};\n", "\"use strict\";\n\nmodule.exports = function (value) {\n\tif (!value) return false;\n\tif (typeof value === \"symbol\") return true;\n\tif (!value.constructor) return false;\n\tif (value.constructor.name !== \"Symbol\") return false;\n\treturn value[value.constructor.toStringTag] === \"Symbol\";\n};\n", "\"use strict\";\n\nvar isSymbol = require(\"./is-symbol\");\n\nmodule.exports = function (value) {\n\tif (!isSymbol(value)) throw new TypeError(value + \" is not a symbol\");\n\treturn value;\n};\n", "\"use strict\";\n\nvar d = require(\"d\");\n\nvar create = Object.create, defineProperty = Object.defineProperty, objPrototype = Object.prototype;\n\nvar created = create(null);\nmodule.exports = function (desc) {\n\tvar postfix = 0, name, ie11BugWorkaround;\n\twhile (created[desc + (postfix || \"\")]) ++postfix;\n\tdesc += postfix || \"\";\n\tcreated[desc] = true;\n\tname = \"@@\" + desc;\n\tdefineProperty(\n\t\tobjPrototype, name,\n\t\td.gs(null, function (value) {\n\t\t\t// For IE11 issue see:\n\t\t\t// https://connect.microsoft.com/IE/feedbackdetail/view/1928508/\n\t\t\t//    ie11-broken-getters-on-dom-objects\n\t\t\t// https://github.com/medikoo/es6-symbol/issues/12\n\t\t\tif (ie11BugWorkaround) return;\n\t\t\tie11BugWorkaround = true;\n\t\t\tdefineProperty(this, name, d(value));\n\t\t\tie11BugWorkaround = false;\n\t\t})\n\t);\n\treturn name;\n};\n", "\"use strict\";\n\nvar d            = require(\"d\")\n  , NativeSymbol = require(\"ext/global-this\").Symbol;\n\nmodule.exports = function (SymbolPolyfill) {\n\treturn Object.defineProperties(SymbolPolyfill, {\n\t\t// To ensure proper interoperability with other native functions (e.g. Array.from)\n\t\t// fallback to eventual native implementation of given symbol\n\t\thasInstance: d(\n\t\t\t\"\", (NativeSymbol && NativeSymbol.hasInstance) || SymbolPolyfill(\"hasInstance\")\n\t\t),\n\t\tisConcatSpreadable: d(\n\t\t\t\"\",\n\t\t\t(NativeSymbol && NativeSymbol.isConcatSpreadable) ||\n\t\t\t\tSymbolPolyfill(\"isConcatSpreadable\")\n\t\t),\n\t\titerator: d(\"\", (NativeSymbol && NativeSymbol.iterator) || SymbolPolyfill(\"iterator\")),\n\t\tmatch: d(\"\", (NativeSymbol && NativeSymbol.match) || SymbolPolyfill(\"match\")),\n\t\treplace: d(\"\", (NativeSymbol && NativeSymbol.replace) || SymbolPolyfill(\"replace\")),\n\t\tsearch: d(\"\", (NativeSymbol && NativeSymbol.search) || SymbolPolyfill(\"search\")),\n\t\tspecies: d(\"\", (NativeSymbol && NativeSymbol.species) || SymbolPolyfill(\"species\")),\n\t\tsplit: d(\"\", (NativeSymbol && NativeSymbol.split) || SymbolPolyfill(\"split\")),\n\t\ttoPrimitive: d(\n\t\t\t\"\", (NativeSymbol && NativeSymbol.toPrimitive) || SymbolPolyfill(\"toPrimitive\")\n\t\t),\n\t\ttoStringTag: d(\n\t\t\t\"\", (NativeSymbol && NativeSymbol.toStringTag) || SymbolPolyfill(\"toStringTag\")\n\t\t),\n\t\tunscopables: d(\n\t\t\t\"\", (NativeSymbol && NativeSymbol.unscopables) || SymbolPolyfill(\"unscopables\")\n\t\t)\n\t});\n};\n", "\"use strict\";\n\nvar d              = require(\"d\")\n  , validateSymbol = require(\"../../../validate-symbol\");\n\nvar registry = Object.create(null);\n\nmodule.exports = function (SymbolPolyfill) {\n\treturn Object.defineProperties(SymbolPolyfill, {\n\t\tfor: d(function (key) {\n\t\t\tif (registry[key]) return registry[key];\n\t\t\treturn (registry[key] = SymbolPolyfill(String(key)));\n\t\t}),\n\t\tkeyFor: d(function (symbol) {\n\t\t\tvar key;\n\t\t\tvalidateSymbol(symbol);\n\t\t\tfor (key in registry) {\n\t\t\t\tif (registry[key] === symbol) return key;\n\t\t\t}\n\t\t\treturn undefined;\n\t\t})\n\t});\n};\n", "// ES2015 Symbol polyfill for environments that do not (or partially) support it\n\n\"use strict\";\n\nvar d                    = require(\"d\")\n  , validateSymbol       = require(\"./validate-symbol\")\n  , NativeSymbol         = require(\"ext/global-this\").Symbol\n  , generateName         = require(\"./lib/private/generate-name\")\n  , setupStandardSymbols = require(\"./lib/private/setup/standard-symbols\")\n  , setupSymbolRegistry  = require(\"./lib/private/setup/symbol-registry\");\n\nvar create = Object.create\n  , defineProperties = Object.defineProperties\n  , defineProperty = Object.defineProperty;\n\nvar SymbolPolyfill, HiddenSymbol, isNativeSafe;\n\nif (typeof NativeSymbol === \"function\") {\n\ttry {\n\t\tString(NativeSymbol());\n\t\tisNativeSafe = true;\n\t} catch (ignore) {}\n} else {\n\tNativeSymbol = null;\n}\n\n// Internal constructor (not one exposed) for creating Symbol instances.\n// This one is used to ensure that `someSymbol instanceof Symbol` always return false\nHiddenSymbol = function Symbol(description) {\n\tif (this instanceof HiddenSymbol) throw new TypeError(\"Symbol is not a constructor\");\n\treturn SymbolPolyfill(description);\n};\n\n// Exposed `Symbol` constructor\n// (returns instances of HiddenSymbol)\nmodule.exports = SymbolPolyfill = function Symbol(description) {\n\tvar symbol;\n\tif (this instanceof Symbol) throw new TypeError(\"Symbol is not a constructor\");\n\tif (isNativeSafe) return NativeSymbol(description);\n\tsymbol = create(HiddenSymbol.prototype);\n\tdescription = description === undefined ? \"\" : String(description);\n\treturn defineProperties(symbol, {\n\t\t__description__: d(\"\", description),\n\t\t__name__: d(\"\", generateName(description))\n\t});\n};\n\nsetupStandardSymbols(SymbolPolyfill);\nsetupSymbolRegistry(SymbolPolyfill);\n\n// Internal tweaks for real symbol producer\ndefineProperties(HiddenSymbol.prototype, {\n\tconstructor: d(SymbolPolyfill),\n\ttoString: d(\"\", function () { return this.__name__; })\n});\n\n// Proper implementation of methods exposed on Symbol.prototype\n// They won't be accessible on produced symbol instances as they derive from HiddenSymbol.prototype\ndefineProperties(SymbolPolyfill.prototype, {\n\ttoString: d(function () { return \"Symbol (\" + validateSymbol(this).__description__ + \")\"; }),\n\tvalueOf: d(function () { return validateSymbol(this); })\n});\ndefineProperty(\n\tSymbolPolyfill.prototype, SymbolPolyfill.toPrimitive,\n\td(\"\", function () {\n\t\tvar symbol = validateSymbol(this);\n\t\tif (typeof symbol === \"symbol\") return symbol;\n\t\treturn symbol.toString();\n\t})\n);\ndefineProperty(SymbolPolyfill.prototype, SymbolPolyfill.toStringTag, d(\"c\", \"Symbol\"));\n\n// Proper implementaton of toPrimitive and toStringTag for returned symbol instances\ndefineProperty(\n\tHiddenSymbol.prototype, SymbolPolyfill.toStringTag,\n\td(\"c\", SymbolPolyfill.prototype[SymbolPolyfill.toStringTag])\n);\n\n// Note: It's important to define `toPrimitive` as last one, as some implementations\n// implement `toPrimitive` natively without implementing `toStringTag` (or other specified symbols)\n// And that may invoke error in definition flow:\n// See: https://github.com/medikoo/es6-symbol/issues/13#issuecomment-164146149\ndefineProperty(\n\tHiddenSymbol.prototype, SymbolPolyfill.toPrimitive,\n\td(\"c\", SymbolPolyfill.prototype[SymbolPolyfill.toPrimitive])\n);\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")()\n\t? require(\"ext/global-this\").Symbol\n\t: require(\"./polyfill\");\n", "// Inspired by Google Closure:\n// http://closure-library.googlecode.com/svn/docs/\n// closure_goog_array_array.js.html#goog.array.clear\n\n\"use strict\";\n\nvar value = require(\"../../object/valid-value\");\n\nmodule.exports = function () {\n\tvalue(this).length = 0;\n\treturn this;\n};\n", "\"use strict\";\n\nmodule.exports = function (fn) {\n\tif (typeof fn !== \"function\") throw new TypeError(fn + \" is not a function\");\n\treturn fn;\n};\n", "\"use strict\";\n\nvar isValue  = require(\"../value/is\")\n  , isObject = require(\"../object/is\");\n\nvar objectToString = Object.prototype.toString;\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return null;\n\tif (isObject(value)) {\n\t\t// Reject Object.prototype.toString coercion\n\t\tvar valueToString = value.toString;\n\t\tif (typeof valueToString !== \"function\") return null;\n\t\tif (valueToString === objectToString) return null;\n\t\t// Note: It can be object coming from other realm, still as there's no ES3 and CSP compliant\n\t\t// way to resolve its realm's Object.prototype.toString it's left as not addressed edge case\n\t}\n\ttry {\n\t\treturn \"\" + value; // Ensure implicit coercion\n\t} catch (error) {\n\t\treturn null;\n\t}\n};\n", "\"use strict\";\n\nmodule.exports = function (value) {\n\ttry {\n\t\treturn value.toString();\n\t} catch (error) {\n\t\ttry { return String(value); }\n\t\tcatch (error2) { return null; }\n\t}\n};\n", "\"use strict\";\n\nvar safeToString = require(\"./safe-to-string\");\n\nvar reNewLine = /[\\n\\r\\u2028\\u2029]/g;\n\nmodule.exports = function (value) {\n\tvar string = safeToString(value);\n\tif (string === null) return \"<Non-coercible to string value>\";\n\t// Trim if too long\n\tif (string.length > 100) string = string.slice(0, 99) + \"\u2026\";\n\t// Replace eventual new lines\n\tstring = string.replace(reNewLine, function (char) {\n\t\tswitch (char) {\n\t\t\tcase \"\\n\":\n\t\t\t\treturn \"\\\\n\";\n\t\t\tcase \"\\r\":\n\t\t\t\treturn \"\\\\r\";\n\t\t\tcase \"\\u2028\":\n\t\t\t\treturn \"\\\\u2028\";\n\t\t\tcase \"\\u2029\":\n\t\t\t\treturn \"\\\\u2029\";\n\t\t\t/* istanbul ignore next */\n\t\t\tdefault:\n\t\t\t\tthrow new Error(\"Unexpected character\");\n\t\t}\n\t});\n\treturn string;\n};\n", "\"use strict\";\n\nvar stringCoerce  = require(\"../string/coerce\")\n  , toShortString = require(\"./to-short-string\");\n\nmodule.exports = function (errorMessage, value, inputOptions) {\n\tif (inputOptions && inputOptions.errorMessage) {\n\t\terrorMessage = stringCoerce(inputOptions.errorMessage);\n\t}\n\n\tvar valueInsertIndex = errorMessage.indexOf(\"%v\");\n\tvar valueToken = valueInsertIndex > -1 ? toShortString(value) : null;\n\tif (inputOptions && inputOptions.name) {\n\t\tvar nameInsertIndex = errorMessage.indexOf(\"%n\");\n\t\tif (nameInsertIndex > -1) {\n\t\t\tif (valueInsertIndex > -1) {\n\t\t\t\tvar firstToken, secondToken, firstInsertIndex, secondInsertIndex;\n\t\t\t\tif (nameInsertIndex > valueInsertIndex) {\n\t\t\t\t\tfirstToken = valueToken;\n\t\t\t\t\tfirstInsertIndex = valueInsertIndex;\n\t\t\t\t\tsecondToken = inputOptions.name;\n\t\t\t\t\tsecondInsertIndex = nameInsertIndex;\n\t\t\t\t} else {\n\t\t\t\t\tfirstToken = inputOptions.name;\n\t\t\t\t\tfirstInsertIndex = nameInsertIndex;\n\t\t\t\t\tsecondToken = valueToken;\n\t\t\t\t\tsecondInsertIndex = valueInsertIndex;\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\terrorMessage.slice(0, firstInsertIndex) +\n\t\t\t\t\tfirstToken +\n\t\t\t\t\terrorMessage.slice(firstInsertIndex + 2, secondInsertIndex) +\n\t\t\t\t\tsecondToken +\n\t\t\t\t\terrorMessage.slice(secondInsertIndex + 2)\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn (\n\t\t\t\terrorMessage.slice(0, nameInsertIndex) +\n\t\t\t\tinputOptions.name +\n\t\t\t\terrorMessage.slice(nameInsertIndex + 2)\n\t\t\t);\n\t\t}\n\t}\n\tif (valueInsertIndex > -1) {\n\t\treturn (\n\t\t\terrorMessage.slice(0, valueInsertIndex) +\n\t\t\tvalueToken +\n\t\t\terrorMessage.slice(valueInsertIndex + 2)\n\t\t);\n\t}\n\treturn errorMessage;\n};\n", "\"use strict\";\n\nvar isValue             = require(\"../value/is\")\n  , resolveErrorMessage = require(\"./resolve-error-message\");\n\nmodule.exports = function (value, defaultMessage, inputOptions) {\n\tif (inputOptions && !isValue(value)) {\n\t\tif (\"default\" in inputOptions) return inputOptions[\"default\"];\n\t\tif (inputOptions.isOptional) return null;\n\t}\n\tvar ErrorConstructor = (inputOptions && inputOptions.Error) || TypeError;\n\tvar error = new ErrorConstructor(resolveErrorMessage(defaultMessage, value, inputOptions));\n\tif (inputOptions && inputOptions.errorCode) error.code = inputOptions.errorCode;\n\tthrow error;\n};\n", "\"use strict\";\n\nvar resolveException = require(\"../lib/resolve-exception\")\n  , is               = require(\"./is\");\n\nmodule.exports = function (value/*, options*/) {\n\tif (is(value)) return value;\n\tvar options = arguments[1];\n\tvar errorMessage =\n\t\toptions && options.name ? \"Expected a value for %n, received %v\" : \"Cannot use %v\";\n\treturn resolveException(value, errorMessage, options);\n};\n", "\"use strict\";\n\nvar resolveException = require(\"../lib/resolve-exception\")\n  , is               = require(\"./is\");\n\nmodule.exports = function (value/*, options*/) {\n\tif (is(value)) return value;\n\tvar options = arguments[1];\n\tvar errorMessage =\n\t\toptions && options.name\n\t\t\t? \"Expected a plain function for %n, received %v\"\n\t\t\t: \"%v is not a plain function\";\n\treturn resolveException(value, errorMessage, options);\n};\n", "\"use strict\";\n\nmodule.exports = function () {\n\tvar from = Array.from, arr, result;\n\tif (typeof from !== \"function\") return false;\n\tarr = [\"raz\", \"dwa\"];\n\tresult = from(arr);\n\treturn Boolean(result && result !== arr && result[1] === \"dwa\");\n};\n", "\"use strict\";\n\nvar objToString = Object.prototype.toString\n  , isFunctionStringTag = RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);\n\nmodule.exports = function (value) {\n\treturn typeof value === \"function\" && isFunctionStringTag(objToString.call(value));\n};\n", "\"use strict\";\n\nmodule.exports = function () {\n\tvar sign = Math.sign;\n\tif (typeof sign !== \"function\") return false;\n\treturn sign(10) === 1 && sign(-20) === -1;\n};\n", "\"use strict\";\n\nmodule.exports = function (value) {\n\tvalue = Number(value);\n\tif (isNaN(value) || value === 0) return value;\n\treturn value > 0 ? 1 : -1;\n};\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Math.sign : require(\"./shim\");\n", "\"use strict\";\n\nvar sign  = require(\"../math/sign\")\n  , abs   = Math.abs\n  , floor = Math.floor;\n\nmodule.exports = function (value) {\n\tif (isNaN(value)) return 0;\n\tvalue = Number(value);\n\tif (value === 0 || !isFinite(value)) return value;\n\treturn sign(value) * floor(abs(value));\n};\n", "\"use strict\";\n\nvar toInteger = require(\"./to-integer\")\n  , max       = Math.max;\n\nmodule.exports = function (value) { return max(0, toInteger(value)); };\n", "\"use strict\";\n\nvar iteratorSymbol = require(\"es6-symbol\").iterator\n  , isArguments    = require(\"../../function/is-arguments\")\n  , isFunction     = require(\"../../function/is-function\")\n  , toPosInt       = require(\"../../number/to-pos-integer\")\n  , callable       = require(\"../../object/valid-callable\")\n  , validValue     = require(\"../../object/valid-value\")\n  , isValue        = require(\"../../object/is-value\")\n  , isString       = require(\"../../string/is-string\")\n  , isArray        = Array.isArray\n  , call           = Function.prototype.call\n  , desc           = { configurable: true, enumerable: true, writable: true, value: null }\n  , defineProperty = Object.defineProperty;\n\n// eslint-disable-next-line complexity, max-lines-per-function\nmodule.exports = function (arrayLike /*, mapFn, thisArg*/) {\n\tvar mapFn = arguments[1]\n\t  , thisArg = arguments[2]\n\t  , Context\n\t  , i\n\t  , j\n\t  , arr\n\t  , length\n\t  , code\n\t  , iterator\n\t  , result\n\t  , getIterator\n\t  , value;\n\n\tarrayLike = Object(validValue(arrayLike));\n\n\tif (isValue(mapFn)) callable(mapFn);\n\tif (!this || this === Array || !isFunction(this)) {\n\t\t// Result: Plain array\n\t\tif (!mapFn) {\n\t\t\tif (isArguments(arrayLike)) {\n\t\t\t\t// Source: Arguments\n\t\t\t\tlength = arrayLike.length;\n\t\t\t\tif (length !== 1) return Array.apply(null, arrayLike);\n\t\t\t\tarr = new Array(1);\n\t\t\t\tarr[0] = arrayLike[0];\n\t\t\t\treturn arr;\n\t\t\t}\n\t\t\tif (isArray(arrayLike)) {\n\t\t\t\t// Source: Array\n\t\t\t\tarr = new Array((length = arrayLike.length));\n\t\t\t\tfor (i = 0; i < length; ++i) arr[i] = arrayLike[i];\n\t\t\t\treturn arr;\n\t\t\t}\n\t\t}\n\t\tarr = [];\n\t} else {\n\t\t// Result: Non plain array\n\t\tContext = this;\n\t}\n\n\tif (!isArray(arrayLike)) {\n\t\tif ((getIterator = arrayLike[iteratorSymbol]) !== undefined) {\n\t\t\t// Source: Iterator\n\t\t\titerator = callable(getIterator).call(arrayLike);\n\t\t\tif (Context) arr = new Context();\n\t\t\tresult = iterator.next();\n\t\t\ti = 0;\n\t\t\twhile (!result.done) {\n\t\t\t\tvalue = mapFn ? call.call(mapFn, thisArg, result.value, i) : result.value;\n\t\t\t\tif (Context) {\n\t\t\t\t\tdesc.value = value;\n\t\t\t\t\tdefineProperty(arr, i, desc);\n\t\t\t\t} else {\n\t\t\t\t\tarr[i] = value;\n\t\t\t\t}\n\t\t\t\tresult = iterator.next();\n\t\t\t\t++i;\n\t\t\t}\n\t\t\tlength = i;\n\t\t} else if (isString(arrayLike)) {\n\t\t\t// Source: String\n\t\t\tlength = arrayLike.length;\n\t\t\tif (Context) arr = new Context();\n\t\t\tfor (i = 0, j = 0; i < length; ++i) {\n\t\t\t\tvalue = arrayLike[i];\n\t\t\t\tif (i + 1 < length) {\n\t\t\t\t\tcode = value.charCodeAt(0);\n\t\t\t\t\t// eslint-disable-next-line max-depth\n\t\t\t\t\tif (code >= 0xd800 && code <= 0xdbff) value += arrayLike[++i];\n\t\t\t\t}\n\t\t\t\tvalue = mapFn ? call.call(mapFn, thisArg, value, j) : value;\n\t\t\t\tif (Context) {\n\t\t\t\t\tdesc.value = value;\n\t\t\t\t\tdefineProperty(arr, j, desc);\n\t\t\t\t} else {\n\t\t\t\t\tarr[j] = value;\n\t\t\t\t}\n\t\t\t\t++j;\n\t\t\t}\n\t\t\tlength = j;\n\t\t}\n\t}\n\tif (length === undefined) {\n\t\t// Source: array or array-like\n\t\tlength = toPosInt(arrayLike.length);\n\t\tif (Context) arr = new Context(length);\n\t\tfor (i = 0; i < length; ++i) {\n\t\t\tvalue = mapFn ? call.call(mapFn, thisArg, arrayLike[i], i) : arrayLike[i];\n\t\t\tif (Context) {\n\t\t\t\tdesc.value = value;\n\t\t\t\tdefineProperty(arr, i, desc);\n\t\t\t} else {\n\t\t\t\tarr[i] = value;\n\t\t\t}\n\t\t}\n\t}\n\tif (Context) {\n\t\tdesc.value = null;\n\t\tarr.length = length;\n\t}\n\treturn arr;\n};\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? Array.from : require(\"./shim\");\n", "\"use strict\";\n\nvar aFrom  = require(\"../array/from\")\n  , assign = require(\"./assign\")\n  , value  = require(\"./valid-value\");\n\nmodule.exports = function (obj /*, propertyNames, options*/) {\n\tvar copy = Object(value(obj)), propertyNames = arguments[1], options = Object(arguments[2]);\n\tif (copy !== obj && !propertyNames) return copy;\n\tvar result = {};\n\tif (propertyNames) {\n\t\taFrom(propertyNames, function (propertyName) {\n\t\t\tif (options.ensure || propertyName in obj) result[propertyName] = obj[propertyName];\n\t\t});\n\t} else {\n\t\tassign(result, obj);\n\t}\n\treturn result;\n};\n", "// Internal method, used by iteration functions.\n// Calls a function for each key-value pair found in object\n// Optionally takes compareFn to iterate object in specific order\n\n\"use strict\";\n\nvar callable                = require(\"./valid-callable\")\n  , value                   = require(\"./valid-value\")\n  , bind                    = Function.prototype.bind\n  , call                    = Function.prototype.call\n  , keys                    = Object.keys\n  , objPropertyIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nmodule.exports = function (method, defVal) {\n\treturn function (obj, cb /*, thisArg, compareFn*/) {\n\t\tvar list, thisArg = arguments[2], compareFn = arguments[3];\n\t\tobj = Object(value(obj));\n\t\tcallable(cb);\n\n\t\tlist = keys(obj);\n\t\tif (compareFn) {\n\t\t\tlist.sort(typeof compareFn === \"function\" ? bind.call(compareFn, obj) : undefined);\n\t\t}\n\t\tif (typeof method !== \"function\") method = list[method];\n\t\treturn call.call(method, list, function (key, index) {\n\t\t\tif (!objPropertyIsEnumerable.call(obj, key)) return defVal;\n\t\t\treturn call.call(cb, thisArg, obj[key], key, obj, index);\n\t\t});\n\t};\n};\n", "\"use strict\";\n\nmodule.exports = require(\"./_iterate\")(\"forEach\");\n", "\"use strict\";\n\nvar callable = require(\"./valid-callable\")\n  , forEach  = require(\"./for-each\")\n  , call     = Function.prototype.call;\n\nmodule.exports = function (obj, cb /*, thisArg*/) {\n\tvar result = {}, thisArg = arguments[2];\n\tcallable(cb);\n\tforEach(obj, function (value, key, targetObj, index) {\n\t\tresult[key] = call.call(cb, thisArg, value, key, targetObj, index);\n\t});\n\treturn result;\n};\n", "\"use strict\";\n\nvar isValue             = require(\"type/value/is\")\n  , ensureValue         = require(\"type/value/ensure\")\n  , ensurePlainFunction = require(\"type/plain-function/ensure\")\n  , copy                = require(\"es5-ext/object/copy\")\n  , normalizeOptions    = require(\"es5-ext/object/normalize-options\")\n  , map                 = require(\"es5-ext/object/map\");\n\nvar bind = Function.prototype.bind\n  , defineProperty = Object.defineProperty\n  , hasOwnProperty = Object.prototype.hasOwnProperty\n  , define;\n\ndefine = function (name, desc, options) {\n\tvar value = ensureValue(desc) && ensurePlainFunction(desc.value), dgs;\n\tdgs = copy(desc);\n\tdelete dgs.writable;\n\tdelete dgs.value;\n\tdgs.get = function () {\n\t\tif (!options.overwriteDefinition && hasOwnProperty.call(this, name)) return value;\n\t\tdesc.value = bind.call(value, options.resolveContext ? options.resolveContext(this) : this);\n\t\tdefineProperty(this, name, desc);\n\t\treturn this[name];\n\t};\n\treturn dgs;\n};\n\nmodule.exports = function (props/*, options*/) {\n\tvar options = normalizeOptions(arguments[1]);\n\tif (isValue(options.resolveContext)) ensurePlainFunction(options.resolveContext);\n\treturn map(props, function (desc, name) { return define(name, desc, options); });\n};\n", "\"use strict\";\n\nvar clear    = require(\"es5-ext/array/#/clear\")\n  , assign   = require(\"es5-ext/object/assign\")\n  , callable = require(\"es5-ext/object/valid-callable\")\n  , value    = require(\"es5-ext/object/valid-value\")\n  , d        = require(\"d\")\n  , autoBind = require(\"d/auto-bind\")\n  , Symbol   = require(\"es6-symbol\");\n\nvar defineProperty = Object.defineProperty, defineProperties = Object.defineProperties, Iterator;\n\nmodule.exports = Iterator = function (list, context) {\n\tif (!(this instanceof Iterator)) throw new TypeError(\"Constructor requires 'new'\");\n\tdefineProperties(this, {\n\t\t__list__: d(\"w\", value(list)),\n\t\t__context__: d(\"w\", context),\n\t\t__nextIndex__: d(\"w\", 0)\n\t});\n\tif (!context) return;\n\tcallable(context.on);\n\tcontext.on(\"_add\", this._onAdd);\n\tcontext.on(\"_delete\", this._onDelete);\n\tcontext.on(\"_clear\", this._onClear);\n};\n\n// Internal %IteratorPrototype% doesn't expose its constructor\ndelete Iterator.prototype.constructor;\n\ndefineProperties(\n\tIterator.prototype,\n\tassign(\n\t\t{\n\t\t\t_next: d(function () {\n\t\t\t\tvar i;\n\t\t\t\tif (!this.__list__) return undefined;\n\t\t\t\tif (this.__redo__) {\n\t\t\t\t\ti = this.__redo__.shift();\n\t\t\t\t\tif (i !== undefined) return i;\n\t\t\t\t}\n\t\t\t\tif (this.__nextIndex__ < this.__list__.length) return this.__nextIndex__++;\n\t\t\t\tthis._unBind();\n\t\t\t\treturn undefined;\n\t\t\t}),\n\t\t\tnext: d(function () {\n\t\t\t\treturn this._createResult(this._next());\n\t\t\t}),\n\t\t\t_createResult: d(function (i) {\n\t\t\t\tif (i === undefined) return { done: true, value: undefined };\n\t\t\t\treturn { done: false, value: this._resolve(i) };\n\t\t\t}),\n\t\t\t_resolve: d(function (i) {\n\t\t\t\treturn this.__list__[i];\n\t\t\t}),\n\t\t\t_unBind: d(function () {\n\t\t\t\tthis.__list__ = null;\n\t\t\t\tdelete this.__redo__;\n\t\t\t\tif (!this.__context__) return;\n\t\t\t\tthis.__context__.off(\"_add\", this._onAdd);\n\t\t\t\tthis.__context__.off(\"_delete\", this._onDelete);\n\t\t\t\tthis.__context__.off(\"_clear\", this._onClear);\n\t\t\t\tthis.__context__ = null;\n\t\t\t}),\n\t\t\ttoString: d(function () {\n\t\t\t\treturn \"[object \" + (this[Symbol.toStringTag] || \"Object\") + \"]\";\n\t\t\t})\n\t\t},\n\t\tautoBind({\n\t\t\t_onAdd: d(function (index) {\n\t\t\t\tif (index >= this.__nextIndex__) return;\n\t\t\t\t++this.__nextIndex__;\n\t\t\t\tif (!this.__redo__) {\n\t\t\t\t\tdefineProperty(this, \"__redo__\", d(\"c\", [index]));\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tthis.__redo__.forEach(function (redo, i) {\n\t\t\t\t\tif (redo >= index) this.__redo__[i] = ++redo;\n\t\t\t\t}, this);\n\t\t\t\tthis.__redo__.push(index);\n\t\t\t}),\n\t\t\t_onDelete: d(function (index) {\n\t\t\t\tvar i;\n\t\t\t\tif (index >= this.__nextIndex__) return;\n\t\t\t\t--this.__nextIndex__;\n\t\t\t\tif (!this.__redo__) return;\n\t\t\t\ti = this.__redo__.indexOf(index);\n\t\t\t\tif (i !== -1) this.__redo__.splice(i, 1);\n\t\t\t\tthis.__redo__.forEach(function (redo, j) {\n\t\t\t\t\tif (redo > index) this.__redo__[j] = --redo;\n\t\t\t\t}, this);\n\t\t\t}),\n\t\t\t_onClear: d(function () {\n\t\t\t\tif (this.__redo__) clear.call(this.__redo__);\n\t\t\t\tthis.__nextIndex__ = 0;\n\t\t\t})\n\t\t})\n\t)\n);\n\ndefineProperty(\n\tIterator.prototype,\n\tSymbol.iterator,\n\td(function () {\n\t\treturn this;\n\t})\n);\n", "\"use strict\";\n\nvar setPrototypeOf = require(\"es5-ext/object/set-prototype-of\")\n  , contains       = require(\"es5-ext/string/#/contains\")\n  , d              = require(\"d\")\n  , Symbol         = require(\"es6-symbol\")\n  , Iterator       = require(\"./\");\n\nvar defineProperty = Object.defineProperty, ArrayIterator;\n\nArrayIterator = module.exports = function (arr, kind) {\n\tif (!(this instanceof ArrayIterator)) throw new TypeError(\"Constructor requires 'new'\");\n\tIterator.call(this, arr);\n\tif (!kind) kind = \"value\";\n\telse if (contains.call(kind, \"key+value\")) kind = \"key+value\";\n\telse if (contains.call(kind, \"key\")) kind = \"key\";\n\telse kind = \"value\";\n\tdefineProperty(this, \"__kind__\", d(\"\", kind));\n};\nif (setPrototypeOf) setPrototypeOf(ArrayIterator, Iterator);\n\n// Internal %ArrayIteratorPrototype% doesn't expose its constructor\ndelete ArrayIterator.prototype.constructor;\n\nArrayIterator.prototype = Object.create(Iterator.prototype, {\n\t_resolve: d(function (i) {\n\t\tif (this.__kind__ === \"value\") return this.__list__[i];\n\t\tif (this.__kind__ === \"key+value\") return [i, this.__list__[i]];\n\t\treturn i;\n\t})\n});\ndefineProperty(ArrayIterator.prototype, Symbol.toStringTag, d(\"c\", \"Array Iterator\"));\n", "// Thanks @mathiasbynens\n// http://mathiasbynens.be/notes/javascript-unicode#iterating-over-symbols\n\n\"use strict\";\n\nvar setPrototypeOf = require(\"es5-ext/object/set-prototype-of\")\n  , d              = require(\"d\")\n  , Symbol         = require(\"es6-symbol\")\n  , Iterator       = require(\"./\");\n\nvar defineProperty = Object.defineProperty, StringIterator;\n\nStringIterator = module.exports = function (str) {\n\tif (!(this instanceof StringIterator)) throw new TypeError(\"Constructor requires 'new'\");\n\tstr = String(str);\n\tIterator.call(this, str);\n\tdefineProperty(this, \"__length__\", d(\"\", str.length));\n};\nif (setPrototypeOf) setPrototypeOf(StringIterator, Iterator);\n\n// Internal %ArrayIteratorPrototype% doesn't expose its constructor\ndelete StringIterator.prototype.constructor;\n\nStringIterator.prototype = Object.create(Iterator.prototype, {\n\t_next: d(function () {\n\t\tif (!this.__list__) return undefined;\n\t\tif (this.__nextIndex__ < this.__length__) return this.__nextIndex__++;\n\t\tthis._unBind();\n\t\treturn undefined;\n\t}),\n\t_resolve: d(function (i) {\n\t\tvar char = this.__list__[i], code;\n\t\tif (this.__nextIndex__ === this.__length__) return char;\n\t\tcode = char.charCodeAt(0);\n\t\tif (code >= 0xd800 && code <= 0xdbff) return char + this.__list__[this.__nextIndex__++];\n\t\treturn char;\n\t})\n});\ndefineProperty(StringIterator.prototype, Symbol.toStringTag, d(\"c\", \"String Iterator\"));\n", "\"use strict\";\n\nvar isArguments = require(\"es5-ext/function/is-arguments\")\n  , isValue     = require(\"es5-ext/object/is-value\")\n  , isString    = require(\"es5-ext/string/is-string\");\n\nvar iteratorSymbol = require(\"es6-symbol\").iterator\n  , isArray        = Array.isArray;\n\nmodule.exports = function (value) {\n\tif (!isValue(value)) return false;\n\tif (isArray(value)) return true;\n\tif (isString(value)) return true;\n\tif (isArguments(value)) return true;\n\treturn typeof value[iteratorSymbol] === \"function\";\n};\n", "\"use strict\";\n\nvar isIterable = require(\"./is-iterable\");\n\nmodule.exports = function (value) {\n\tif (!isIterable(value)) throw new TypeError(value + \" is not iterable\");\n\treturn value;\n};\n", "\"use strict\";\n\nvar isArguments    = require(\"es5-ext/function/is-arguments\")\n  , isString       = require(\"es5-ext/string/is-string\")\n  , ArrayIterator  = require(\"./array\")\n  , StringIterator = require(\"./string\")\n  , iterable       = require(\"./valid-iterable\")\n  , iteratorSymbol = require(\"es6-symbol\").iterator;\n\nmodule.exports = function (obj) {\n\tif (typeof iterable(obj)[iteratorSymbol] === \"function\") return obj[iteratorSymbol]();\n\tif (isArguments(obj)) return new ArrayIterator(obj);\n\tif (isString(obj)) return new StringIterator(obj);\n\treturn new ArrayIterator(obj);\n};\n", "\"use strict\";\n\nvar isArguments = require(\"es5-ext/function/is-arguments\")\n  , callable    = require(\"es5-ext/object/valid-callable\")\n  , isString    = require(\"es5-ext/string/is-string\")\n  , get         = require(\"./get\");\n\nvar isArray = Array.isArray, call = Function.prototype.call, some = Array.prototype.some;\n\nmodule.exports = function (iterable, cb /*, thisArg*/) {\n\tvar mode, thisArg = arguments[2], result, doBreak, broken, i, length, char, code;\n\tif (isArray(iterable) || isArguments(iterable)) mode = \"array\";\n\telse if (isString(iterable)) mode = \"string\";\n\telse iterable = get(iterable);\n\n\tcallable(cb);\n\tdoBreak = function () {\n\t\tbroken = true;\n\t};\n\tif (mode === \"array\") {\n\t\tsome.call(iterable, function (value) {\n\t\t\tcall.call(cb, thisArg, value, doBreak);\n\t\t\treturn broken;\n\t\t});\n\t\treturn;\n\t}\n\tif (mode === \"string\") {\n\t\tlength = iterable.length;\n\t\tfor (i = 0; i < length; ++i) {\n\t\t\tchar = iterable[i];\n\t\t\tif (i + 1 < length) {\n\t\t\t\tcode = char.charCodeAt(0);\n\t\t\t\tif (code >= 0xd800 && code <= 0xdbff) char += iterable[++i];\n\t\t\t}\n\t\t\tcall.call(cb, thisArg, char, doBreak);\n\t\t\tif (broken) break;\n\t\t}\n\t\treturn;\n\t}\n\tresult = iterable.next();\n\n\twhile (!result.done) {\n\t\tcall.call(cb, thisArg, result.value, doBreak);\n\t\tif (broken) return;\n\t\tresult = iterable.next();\n\t}\n};\n", "// Exports true if environment provides native `WeakMap` implementation, whatever that is.\n\n\"use strict\";\n\nmodule.exports = (function () {\n\tif (typeof WeakMap !== \"function\") return false;\n\treturn Object.prototype.toString.call(new WeakMap()) === \"[object WeakMap]\";\n}());\n", "\"use strict\";\n\nvar isValue           = require(\"es5-ext/object/is-value\")\n  , setPrototypeOf    = require(\"es5-ext/object/set-prototype-of\")\n  , object            = require(\"es5-ext/object/valid-object\")\n  , ensureValue       = require(\"es5-ext/object/valid-value\")\n  , randomUniq        = require(\"es5-ext/string/random-uniq\")\n  , d                 = require(\"d\")\n  , getIterator       = require(\"es6-iterator/get\")\n  , forOf             = require(\"es6-iterator/for-of\")\n  , toStringTagSymbol = require(\"es6-symbol\").toStringTag\n  , isNative          = require(\"./is-native-implemented\")\n\n  , isArray = Array.isArray, defineProperty = Object.defineProperty\n  , objHasOwnProperty = Object.prototype.hasOwnProperty, getPrototypeOf = Object.getPrototypeOf\n  , WeakMapPoly;\n\nmodule.exports = WeakMapPoly = function (/* Iterable*/) {\n\tvar iterable = arguments[0], self;\n\n\tif (!(this instanceof WeakMapPoly)) throw new TypeError(\"Constructor requires 'new'\");\n\tself = isNative && setPrototypeOf && (WeakMap !== WeakMapPoly)\n\t\t? setPrototypeOf(new WeakMap(), getPrototypeOf(this)) : this;\n\n\tif (isValue(iterable)) {\n\t\tif (!isArray(iterable)) iterable = getIterator(iterable);\n\t}\n\tdefineProperty(self, \"__weakMapData__\", d(\"c\", \"$weakMap$\" + randomUniq()));\n\tif (!iterable) return self;\n\tforOf(iterable, function (val) {\n\t\tensureValue(val);\n\t\tself.set(val[0], val[1]);\n\t});\n\treturn self;\n};\n\nif (isNative) {\n\tif (setPrototypeOf) setPrototypeOf(WeakMapPoly, WeakMap);\n\tWeakMapPoly.prototype = Object.create(WeakMap.prototype, { constructor: d(WeakMapPoly) });\n}\n\nObject.defineProperties(WeakMapPoly.prototype, {\n\tdelete: d(function (key) {\n\t\tif (objHasOwnProperty.call(object(key), this.__weakMapData__)) {\n\t\t\tdelete key[this.__weakMapData__];\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}),\n\tget: d(function (key) {\n\t\tif (!objHasOwnProperty.call(object(key), this.__weakMapData__)) return undefined;\n\t\treturn key[this.__weakMapData__];\n\t}),\n\thas: d(function (key) {\n\t\treturn objHasOwnProperty.call(object(key), this.__weakMapData__);\n\t}),\n\tset: d(function (key, value) {\n\t\tdefineProperty(object(key), this.__weakMapData__, d(\"c\", value));\n\t\treturn this;\n\t}),\n\ttoString: d(function () {\n\t\treturn \"[object WeakMap]\";\n\t})\n});\ndefineProperty(WeakMapPoly.prototype, toStringTagSymbol, d(\"c\", \"WeakMap\"));\n", "\"use strict\";\n\nmodule.exports = require(\"./is-implemented\")() ? WeakMap : require(\"./polyfill\");\n", "module.exports = [\n  { name: 'black', hex: '#000000' },\n  { name: 'blue', hex: '#0000FF' },\n  { name: 'cyan', hex: '#00FFFF' },\n  { name: 'green', hex: '#008000' },\n  { name: 'teal', hex: '#008080' },\n  { name: 'turquoise', hex: '#40E0D0' },\n  { name: 'indigo', hex: '#4B0082' },\n  { name: 'gray', hex: '#808080' },\n  { name: 'purple', hex: '#800080' },\n  { name: 'brown', hex: '#A52A2A' },\n  { name: 'tan', hex: '#D2B48C' },\n  { name: 'violet', hex: '#EE82EE' },\n  { name: 'beige', hex: '#F5F5DC' },\n  { name: 'fuchsia', hex: '#FF00FF' },\n  { name: 'gold', hex: '#FFD700' },\n  { name: 'magenta', hex: '#FF00FF' },\n  { name: 'orange', hex: '#FFA500' },\n  { name: 'pink', hex: '#FFC0CB' },\n  { name: 'red', hex: '#FF0000' },\n  { name: 'white', hex: '#FFFFFF' },\n  { name: 'yellow', hex: '#FFFF00' }\n]\n", "module.exports = [\n  { name: 'aqua', hex: '#00FFFF' },\n  { name: 'aliceblue', hex: '#F0F8FF' },\n  { name: 'antiquewhite', hex: '#FAEBD7' },\n  { name: 'black', hex: '#000000' },\n  { name: 'blue', hex: '#0000FF' },\n  { name: 'cyan', hex: '#00FFFF' },\n  { name: 'darkblue', hex: '#00008B' },\n  { name: 'darkcyan', hex: '#008B8B' },\n  { name: 'darkgreen', hex: '#006400' },\n  { name: 'darkturquoise', hex: '#00CED1' },\n  { name: 'deepskyblue', hex: '#00BFFF' },\n  { name: 'green', hex: '#008000' },\n  { name: 'lime', hex: '#00FF00' },\n  { name: 'mediumblue', hex: '#0000CD' },\n  { name: 'mediumspringgreen', hex: '#00FA9A' },\n  { name: 'navy', hex: '#000080' },\n  { name: 'springgreen', hex: '#00FF7F' },\n  { name: 'teal', hex: '#008080' },\n  { name: 'midnightblue', hex: '#191970' },\n  { name: 'dodgerblue', hex: '#1E90FF' },\n  { name: 'lightseagreen', hex: '#20B2AA' },\n  { name: 'forestgreen', hex: '#228B22' },\n  { name: 'seagreen', hex: '#2E8B57' },\n  { name: 'darkslategray', hex: '#2F4F4F' },\n  { name: 'darkslategrey', hex: '#2F4F4F' },\n  { name: 'limegreen', hex: '#32CD32' },\n  { name: 'mediumseagreen', hex: '#3CB371' },\n  { name: 'turquoise', hex: '#40E0D0' },\n  { name: 'royalblue', hex: '#4169E1' },\n  { name: 'steelblue', hex: '#4682B4' },\n  { name: 'darkslateblue', hex: '#483D8B' },\n  { name: 'mediumturquoise', hex: '#48D1CC' },\n  { name: 'indigo', hex: '#4B0082' },\n  { name: 'darkolivegreen', hex: '#556B2F' },\n  { name: 'cadetblue', hex: '#5F9EA0' },\n  { name: 'cornflowerblue', hex: '#6495ED' },\n  { name: 'mediumaquamarine', hex: '#66CDAA' },\n  { name: 'dimgray', hex: '#696969' },\n  { name: 'dimgrey', hex: '#696969' },\n  { name: 'slateblue', hex: '#6A5ACD' },\n  { name: 'olivedrab', hex: '#6B8E23' },\n  { name: 'slategray', hex: '#708090' },\n  { name: 'slategrey', hex: '#708090' },\n  { name: 'lightslategray', hex: '#778899' },\n  { name: 'lightslategrey', hex: '#778899' },\n  { name: 'mediumslateblue', hex: '#7B68EE' },\n  { name: 'lawngreen', hex: '#7CFC00' },\n  { name: 'aquamarine', hex: '#7FFFD4' },\n  { name: 'chartreuse', hex: '#7FFF00' },\n  { name: 'gray', hex: '#808080' },\n  { name: 'grey', hex: '#808080' },\n  { name: 'maroon', hex: '#800000' },\n  { name: 'olive', hex: '#808000' },\n  { name: 'purple', hex: '#800080' },\n  { name: 'lightskyblue', hex: '#87CEFA' },\n  { name: 'skyblue', hex: '#87CEEB' },\n  { name: 'blueviolet', hex: '#8A2BE2' },\n  { name: 'darkmagenta', hex: '#8B008B' },\n  { name: 'darkred', hex: '#8B0000' },\n  { name: 'saddlebrown', hex: '#8B4513' },\n  { name: 'darkseagreen', hex: '#8FBC8F' },\n  { name: 'lightgreen', hex: '#90EE90' },\n  { name: 'mediumpurple', hex: '#9370DB' },\n  { name: 'darkviolet', hex: '#9400D3' },\n  { name: 'palegreen', hex: '#98FB98' },\n  { name: 'darkorchid', hex: '#9932CC' },\n  { name: 'yellowgreen', hex: '#9ACD32' },\n  { name: 'sienna', hex: '#A0522D' },\n  { name: 'brown', hex: '#A52A2A' },\n  { name: 'darkgray', hex: '#A9A9A9' },\n  { name: 'darkgrey', hex: '#A9A9A9' },\n  { name: 'greenyellow', hex: '#ADFF2F' },\n  { name: 'lightblue', hex: '#ADD8E6' },\n  { name: 'paleturquoise', hex: '#AFEEEE' },\n  { name: 'lightsteelblue', hex: '#B0C4DE' },\n  { name: 'powderblue', hex: '#B0E0E6' },\n  { name: 'firebrick', hex: '#B22222' },\n  { name: 'darkgoldenrod', hex: '#B8860B' },\n  { name: 'mediumorchid', hex: '#BA55D3' },\n  { name: 'rosybrown', hex: '#BC8F8F' },\n  { name: 'darkkhaki', hex: '#BDB76B' },\n  { name: 'silver', hex: '#C0C0C0' },\n  { name: 'mediumvioletred', hex: '#C71585' },\n  { name: 'indianred', hex: '#CD5C5C' },\n  { name: 'peru', hex: '#CD853F' },\n  { name: 'chocolate', hex: '#D2691E' },\n  { name: 'tan', hex: '#D2B48C' },\n  { name: 'lightgray', hex: '#D3D3D3' },\n  { name: 'lightgrey', hex: '#D3D3D3' },\n  { name: 'thistle', hex: '#D8BFD8' },\n  { name: 'goldenrod', hex: '#DAA520' },\n  { name: 'orchid', hex: '#DA70D6' },\n  { name: 'palevioletred', hex: '#DB7093' },\n  { name: 'crimson', hex: '#DC143C' },\n  { name: 'gainsboro', hex: '#DCDCDC' },\n  { name: 'plum', hex: '#DDA0DD' },\n  { name: 'burlywood', hex: '#DEB887' },\n  { name: 'lightcyan', hex: '#E0FFFF' },\n  { name: 'lavender', hex: '#E6E6FA' },\n  { name: 'darksalmon', hex: '#E9967A' },\n  { name: 'palegoldenrod', hex: '#EEE8AA' },\n  { name: 'violet', hex: '#EE82EE' },\n  { name: 'azure', hex: '#F0FFFF' },\n  { name: 'honeydew', hex: '#F0FFF0' },\n  { name: 'khaki', hex: '#F0E68C' },\n  { name: 'lightcoral', hex: '#F08080' },\n  { name: 'sandybrown', hex: '#F4A460' },\n  { name: 'beige', hex: '#F5F5DC' },\n  { name: 'mintcream', hex: '#F5FFFA' },\n  { name: 'wheat', hex: '#F5DEB3' },\n  { name: 'whitesmoke', hex: '#F5F5F5' },\n  { name: 'ghostwhite', hex: '#F8F8FF' },\n  { name: 'lightgoldenrodyellow',\n    hex: '#FAFAD2' },\n  { name: 'linen', hex: '#FAF0E6' },\n  { name: 'salmon', hex: '#FA8072' },\n  { name: 'oldlace', hex: '#FDF5E6' },\n  { name: 'bisque', hex: '#FFE4C4' },\n  { name: 'blanchedalmond', hex: '#FFEBCD' },\n  { name: 'coral', hex: '#FF7F50' },\n  { name: 'cornsilk', hex: '#FFF8DC' },\n  { name: 'darkorange', hex: '#FF8C00' },\n  { name: 'deeppink', hex: '#FF1493' },\n  { name: 'floralwhite', hex: '#FFFAF0' },\n  { name: 'fuchsia', hex: '#FF00FF' },\n  { name: 'gold', hex: '#FFD700' },\n  { name: 'hotpink', hex: '#FF69B4' },\n  { name: 'ivory', hex: '#FFFFF0' },\n  { name: 'lavenderblush', hex: '#FFF0F5' },\n  { name: 'lemonchiffon', hex: '#FFFACD' },\n  { name: 'lightpink', hex: '#FFB6C1' },\n  { name: 'lightsalmon', hex: '#FFA07A' },\n  { name: 'lightyellow', hex: '#FFFFE0' },\n  { name: 'magenta', hex: '#FF00FF' },\n  { name: 'mistyrose', hex: '#FFE4E1' },\n  { name: 'moccasin', hex: '#FFE4B5' },\n  { name: 'navajowhite', hex: '#FFDEAD' },\n  { name: 'orange', hex: '#FFA500' },\n  { name: 'orangered', hex: '#FF4500' },\n  { name: 'papayawhip', hex: '#FFEFD5' },\n  { name: 'peachpuff', hex: '#FFDAB9' },\n  { name: 'pink', hex: '#FFC0CB' },\n  { name: 'red', hex: '#FF0000' },\n  { name: 'seashell', hex: '#FFF5EE' },\n  { name: 'snow', hex: '#FFFAFA' },\n  { name: 'tomato', hex: '#FF6347' },\n  { name: 'white', hex: '#FFFFFF' },\n  { name: 'yellow', hex: '#FFFF00' }\n]\n", "module.exports = [\n  {\n    \"name\": \"Black\",\n    \"hex\": \"000000\"\n  },\n  {\n    \"name\": \"Navy Blue\",\n    \"hex\": \"000080\"\n  },\n  {\n    \"name\": \"Dark Blue\",\n    \"hex\": \"0000C8\"\n  },\n  {\n    \"name\": \"Blue\",\n    \"hex\": \"0000FF\"\n  },\n  {\n    \"name\": \"Stratos\",\n    \"hex\": \"000741\"\n  },\n  {\n    \"name\": \"Swamp\",\n    \"hex\": \"001B1C\"\n  },\n  {\n    \"name\": \"Resolution Blue\",\n    \"hex\": \"002387\"\n  },\n  {\n    \"name\": \"Deep Fir\",\n    \"hex\": \"002900\"\n  },\n  {\n    \"name\": \"Burnham\",\n    \"hex\": \"002E20\"\n  },\n  {\n    \"name\": \"International Klein Blue\",\n    \"hex\": \"002FA7\"\n  },\n  {\n    \"name\": \"Prussian Blue\",\n    \"hex\": \"003153\"\n  },\n  {\n    \"name\": \"Midnight Blue\",\n    \"hex\": \"003366\"\n  },\n  {\n    \"name\": \"Smalt\",\n    \"hex\": \"003399\"\n  },\n  {\n    \"name\": \"Deep Teal\",\n    \"hex\": \"003532\"\n  },\n  {\n    \"name\": \"Cyprus\",\n    \"hex\": \"003E40\"\n  },\n  {\n    \"name\": \"Kaitoke Green\",\n    \"hex\": \"004620\"\n  },\n  {\n    \"name\": \"Cobalt\",\n    \"hex\": \"0047AB\"\n  },\n  {\n    \"name\": \"Crusoe\",\n    \"hex\": \"004816\"\n  },\n  {\n    \"name\": \"Sherpa Blue\",\n    \"hex\": \"004950\"\n  },\n  {\n    \"name\": \"Endeavour\",\n    \"hex\": \"0056A7\"\n  },\n  {\n    \"name\": \"Camarone\",\n    \"hex\": \"00581A\"\n  },\n  {\n    \"name\": \"Science Blue\",\n    \"hex\": \"0066CC\"\n  },\n  {\n    \"name\": \"Blue Ribbon\",\n    \"hex\": \"0066FF\"\n  },\n  {\n    \"name\": \"Tropical Rain Forest\",\n    \"hex\": \"00755E\"\n  },\n  {\n    \"name\": \"Allports\",\n    \"hex\": \"0076A3\"\n  },\n  {\n    \"name\": \"Deep Cerulean\",\n    \"hex\": \"007BA7\"\n  },\n  {\n    \"name\": \"Lochmara\",\n    \"hex\": \"007EC7\"\n  },\n  {\n    \"name\": \"Azure Radiance\",\n    \"hex\": \"007FFF\"\n  },\n  {\n    \"name\": \"Teal\",\n    \"hex\": \"008080\"\n  },\n  {\n    \"name\": \"Bondi Blue\",\n    \"hex\": \"0095B6\"\n  },\n  {\n    \"name\": \"Pacific Blue\",\n    \"hex\": \"009DC4\"\n  },\n  {\n    \"name\": \"Persian Green\",\n    \"hex\": \"00A693\"\n  },\n  {\n    \"name\": \"Jade\",\n    \"hex\": \"00A86B\"\n  },\n  {\n    \"name\": \"Caribbean Green\",\n    \"hex\": \"00CC99\"\n  },\n  {\n    \"name\": \"Robin's Egg Blue\",\n    \"hex\": \"00CCCC\"\n  },\n  {\n    \"name\": \"Green\",\n    \"hex\": \"00FF00\"\n  },\n  {\n    \"name\": \"Spring Green\",\n    \"hex\": \"00FF7F\"\n  },\n  {\n    \"name\": \"Cyan / Aqua\",\n    \"hex\": \"00FFFF\"\n  },\n  {\n    \"name\": \"Blue Charcoal\",\n    \"hex\": \"010D1A\"\n  },\n  {\n    \"name\": \"Midnight\",\n    \"hex\": \"011635\"\n  },\n  {\n    \"name\": \"Holly\",\n    \"hex\": \"011D13\"\n  },\n  {\n    \"name\": \"Daintree\",\n    \"hex\": \"012731\"\n  },\n  {\n    \"name\": \"Cardin Green\",\n    \"hex\": \"01361C\"\n  },\n  {\n    \"name\": \"County Green\",\n    \"hex\": \"01371A\"\n  },\n  {\n    \"name\": \"Astronaut Blue\",\n    \"hex\": \"013E62\"\n  },\n  {\n    \"name\": \"Regal Blue\",\n    \"hex\": \"013F6A\"\n  },\n  {\n    \"name\": \"Aqua Deep\",\n    \"hex\": \"014B43\"\n  },\n  {\n    \"name\": \"Orient\",\n    \"hex\": \"015E85\"\n  },\n  {\n    \"name\": \"Blue Stone\",\n    \"hex\": \"016162\"\n  },\n  {\n    \"name\": \"Fun Green\",\n    \"hex\": \"016D39\"\n  },\n  {\n    \"name\": \"Pine Green\",\n    \"hex\": \"01796F\"\n  },\n  {\n    \"name\": \"Blue Lagoon\",\n    \"hex\": \"017987\"\n  },\n  {\n    \"name\": \"Deep Sea\",\n    \"hex\": \"01826B\"\n  },\n  {\n    \"name\": \"Green Haze\",\n    \"hex\": \"01A368\"\n  },\n  {\n    \"name\": \"English Holly\",\n    \"hex\": \"022D15\"\n  },\n  {\n    \"name\": \"Sherwood Green\",\n    \"hex\": \"02402C\"\n  },\n  {\n    \"name\": \"Congress Blue\",\n    \"hex\": \"02478E\"\n  },\n  {\n    \"name\": \"Evening Sea\",\n    \"hex\": \"024E46\"\n  },\n  {\n    \"name\": \"Bahama Blue\",\n    \"hex\": \"026395\"\n  },\n  {\n    \"name\": \"Observatory\",\n    \"hex\": \"02866F\"\n  },\n  {\n    \"name\": \"Cerulean\",\n    \"hex\": \"02A4D3\"\n  },\n  {\n    \"name\": \"Tangaroa\",\n    \"hex\": \"03163C\"\n  },\n  {\n    \"name\": \"Green Vogue\",\n    \"hex\": \"032B52\"\n  },\n  {\n    \"name\": \"Mosque\",\n    \"hex\": \"036A6E\"\n  },\n  {\n    \"name\": \"Midnight Moss\",\n    \"hex\": \"041004\"\n  },\n  {\n    \"name\": \"Black Pearl\",\n    \"hex\": \"041322\"\n  },\n  {\n    \"name\": \"Blue Whale\",\n    \"hex\": \"042E4C\"\n  },\n  {\n    \"name\": \"Zuccini\",\n    \"hex\": \"044022\"\n  },\n  {\n    \"name\": \"Teal Blue\",\n    \"hex\": \"044259\"\n  },\n  {\n    \"name\": \"Deep Cove\",\n    \"hex\": \"051040\"\n  },\n  {\n    \"name\": \"Gulf Blue\",\n    \"hex\": \"051657\"\n  },\n  {\n    \"name\": \"Venice Blue\",\n    \"hex\": \"055989\"\n  },\n  {\n    \"name\": \"Watercourse\",\n    \"hex\": \"056F57\"\n  },\n  {\n    \"name\": \"Catalina Blue\",\n    \"hex\": \"062A78\"\n  },\n  {\n    \"name\": \"Tiber\",\n    \"hex\": \"063537\"\n  },\n  {\n    \"name\": \"Gossamer\",\n    \"hex\": \"069B81\"\n  },\n  {\n    \"name\": \"Niagara\",\n    \"hex\": \"06A189\"\n  },\n  {\n    \"name\": \"Tarawera\",\n    \"hex\": \"073A50\"\n  },\n  {\n    \"name\": \"Jaguar\",\n    \"hex\": \"080110\"\n  },\n  {\n    \"name\": \"Black Bean\",\n    \"hex\": \"081910\"\n  },\n  {\n    \"name\": \"Deep Sapphire\",\n    \"hex\": \"082567\"\n  },\n  {\n    \"name\": \"Elf Green\",\n    \"hex\": \"088370\"\n  },\n  {\n    \"name\": \"Bright Turquoise\",\n    \"hex\": \"08E8DE\"\n  },\n  {\n    \"name\": \"Downriver\",\n    \"hex\": \"092256\"\n  },\n  {\n    \"name\": \"Palm Green\",\n    \"hex\": \"09230F\"\n  },\n  {\n    \"name\": \"Madison\",\n    \"hex\": \"09255D\"\n  },\n  {\n    \"name\": \"Bottle Green\",\n    \"hex\": \"093624\"\n  },\n  {\n    \"name\": \"Deep Sea Green\",\n    \"hex\": \"095859\"\n  },\n  {\n    \"name\": \"Salem\",\n    \"hex\": \"097F4B\"\n  },\n  {\n    \"name\": \"Black Russian\",\n    \"hex\": \"0A001C\"\n  },\n  {\n    \"name\": \"Dark Fern\",\n    \"hex\": \"0A480D\"\n  },\n  {\n    \"name\": \"Japanese Laurel\",\n    \"hex\": \"0A6906\"\n  },\n  {\n    \"name\": \"Atoll\",\n    \"hex\": \"0A6F75\"\n  },\n  {\n    \"name\": \"Cod Gray\",\n    \"hex\": \"0B0B0B\"\n  },\n  {\n    \"name\": \"Marshland\",\n    \"hex\": \"0B0F08\"\n  },\n  {\n    \"name\": \"Gordons Green\",\n    \"hex\": \"0B1107\"\n  },\n  {\n    \"name\": \"Black Forest\",\n    \"hex\": \"0B1304\"\n  },\n  {\n    \"name\": \"San Felix\",\n    \"hex\": \"0B6207\"\n  },\n  {\n    \"name\": \"Malachite\",\n    \"hex\": \"0BDA51\"\n  },\n  {\n    \"name\": \"Ebony\",\n    \"hex\": \"0C0B1D\"\n  },\n  {\n    \"name\": \"Woodsmoke\",\n    \"hex\": \"0C0D0F\"\n  },\n  {\n    \"name\": \"Racing Green\",\n    \"hex\": \"0C1911\"\n  },\n  {\n    \"name\": \"Surfie Green\",\n    \"hex\": \"0C7A79\"\n  },\n  {\n    \"name\": \"Blue Chill\",\n    \"hex\": \"0C8990\"\n  },\n  {\n    \"name\": \"Black Rock\",\n    \"hex\": \"0D0332\"\n  },\n  {\n    \"name\": \"Bunker\",\n    \"hex\": \"0D1117\"\n  },\n  {\n    \"name\": \"Aztec\",\n    \"hex\": \"0D1C19\"\n  },\n  {\n    \"name\": \"Bush\",\n    \"hex\": \"0D2E1C\"\n  },\n  {\n    \"name\": \"Cinder\",\n    \"hex\": \"0E0E18\"\n  },\n  {\n    \"name\": \"Firefly\",\n    \"hex\": \"0E2A30\"\n  },\n  {\n    \"name\": \"Torea Bay\",\n    \"hex\": \"0F2D9E\"\n  },\n  {\n    \"name\": \"Vulcan\",\n    \"hex\": \"10121D\"\n  },\n  {\n    \"name\": \"Green Waterloo\",\n    \"hex\": \"101405\"\n  },\n  {\n    \"name\": \"Eden\",\n    \"hex\": \"105852\"\n  },\n  {\n    \"name\": \"Arapawa\",\n    \"hex\": \"110C6C\"\n  },\n  {\n    \"name\": \"Ultramarine\",\n    \"hex\": \"120A8F\"\n  },\n  {\n    \"name\": \"Elephant\",\n    \"hex\": \"123447\"\n  },\n  {\n    \"name\": \"Jewel\",\n    \"hex\": \"126B40\"\n  },\n  {\n    \"name\": \"Diesel\",\n    \"hex\": \"130000\"\n  },\n  {\n    \"name\": \"Asphalt\",\n    \"hex\": \"130A06\"\n  },\n  {\n    \"name\": \"Blue Zodiac\",\n    \"hex\": \"13264D\"\n  },\n  {\n    \"name\": \"Parsley\",\n    \"hex\": \"134F19\"\n  },\n  {\n    \"name\": \"Nero\",\n    \"hex\": \"140600\"\n  },\n  {\n    \"name\": \"Tory Blue\",\n    \"hex\": \"1450AA\"\n  },\n  {\n    \"name\": \"Bunting\",\n    \"hex\": \"151F4C\"\n  },\n  {\n    \"name\": \"Denim\",\n    \"hex\": \"1560BD\"\n  },\n  {\n    \"name\": \"Genoa\",\n    \"hex\": \"15736B\"\n  },\n  {\n    \"name\": \"Mirage\",\n    \"hex\": \"161928\"\n  },\n  {\n    \"name\": \"Hunter Green\",\n    \"hex\": \"161D10\"\n  },\n  {\n    \"name\": \"Big Stone\",\n    \"hex\": \"162A40\"\n  },\n  {\n    \"name\": \"Celtic\",\n    \"hex\": \"163222\"\n  },\n  {\n    \"name\": \"Timber Green\",\n    \"hex\": \"16322C\"\n  },\n  {\n    \"name\": \"Gable Green\",\n    \"hex\": \"163531\"\n  },\n  {\n    \"name\": \"Pine Tree\",\n    \"hex\": \"171F04\"\n  },\n  {\n    \"name\": \"Chathams Blue\",\n    \"hex\": \"175579\"\n  },\n  {\n    \"name\": \"Deep Forest Green\",\n    \"hex\": \"182D09\"\n  },\n  {\n    \"name\": \"Blumine\",\n    \"hex\": \"18587A\"\n  },\n  {\n    \"name\": \"Palm Leaf\",\n    \"hex\": \"19330E\"\n  },\n  {\n    \"name\": \"Nile Blue\",\n    \"hex\": \"193751\"\n  },\n  {\n    \"name\": \"Fun Blue\",\n    \"hex\": \"1959A8\"\n  },\n  {\n    \"name\": \"Lucky Point\",\n    \"hex\": \"1A1A68\"\n  },\n  {\n    \"name\": \"Mountain Meadow\",\n    \"hex\": \"1AB385\"\n  },\n  {\n    \"name\": \"Tolopea\",\n    \"hex\": \"1B0245\"\n  },\n  {\n    \"name\": \"Haiti\",\n    \"hex\": \"1B1035\"\n  },\n  {\n    \"name\": \"Deep Koamaru\",\n    \"hex\": \"1B127B\"\n  },\n  {\n    \"name\": \"Acadia\",\n    \"hex\": \"1B1404\"\n  },\n  {\n    \"name\": \"Seaweed\",\n    \"hex\": \"1B2F11\"\n  },\n  {\n    \"name\": \"Biscay\",\n    \"hex\": \"1B3162\"\n  },\n  {\n    \"name\": \"Matisse\",\n    \"hex\": \"1B659D\"\n  },\n  {\n    \"name\": \"Crowshead\",\n    \"hex\": \"1C1208\"\n  },\n  {\n    \"name\": \"Rangoon Green\",\n    \"hex\": \"1C1E13\"\n  },\n  {\n    \"name\": \"Persian Blue\",\n    \"hex\": \"1C39BB\"\n  },\n  {\n    \"name\": \"Everglade\",\n    \"hex\": \"1C402E\"\n  },\n  {\n    \"name\": \"Elm\",\n    \"hex\": \"1C7C7D\"\n  },\n  {\n    \"name\": \"Green Pea\",\n    \"hex\": \"1D6142\"\n  },\n  {\n    \"name\": \"Creole\",\n    \"hex\": \"1E0F04\"\n  },\n  {\n    \"name\": \"Karaka\",\n    \"hex\": \"1E1609\"\n  },\n  {\n    \"name\": \"El Paso\",\n    \"hex\": \"1E1708\"\n  },\n  {\n    \"name\": \"Cello\",\n    \"hex\": \"1E385B\"\n  },\n  {\n    \"name\": \"Te Papa Green\",\n    \"hex\": \"1E433C\"\n  },\n  {\n    \"name\": \"Dodger Blue\",\n    \"hex\": \"1E90FF\"\n  },\n  {\n    \"name\": \"Eastern Blue\",\n    \"hex\": \"1E9AB0\"\n  },\n  {\n    \"name\": \"Night Rider\",\n    \"hex\": \"1F120F\"\n  },\n  {\n    \"name\": \"Java\",\n    \"hex\": \"1FC2C2\"\n  },\n  {\n    \"name\": \"Jacksons Purple\",\n    \"hex\": \"20208D\"\n  },\n  {\n    \"name\": \"Cloud Burst\",\n    \"hex\": \"202E54\"\n  },\n  {\n    \"name\": \"Blue Dianne\",\n    \"hex\": \"204852\"\n  },\n  {\n    \"name\": \"Eternity\",\n    \"hex\": \"211A0E\"\n  },\n  {\n    \"name\": \"Deep Blue\",\n    \"hex\": \"220878\"\n  },\n  {\n    \"name\": \"Forest Green\",\n    \"hex\": \"228B22\"\n  },\n  {\n    \"name\": \"Mallard\",\n    \"hex\": \"233418\"\n  },\n  {\n    \"name\": \"Violet\",\n    \"hex\": \"240A40\"\n  },\n  {\n    \"name\": \"Kilamanjaro\",\n    \"hex\": \"240C02\"\n  },\n  {\n    \"name\": \"Log Cabin\",\n    \"hex\": \"242A1D\"\n  },\n  {\n    \"name\": \"Black Olive\",\n    \"hex\": \"242E16\"\n  },\n  {\n    \"name\": \"Green House\",\n    \"hex\": \"24500F\"\n  },\n  {\n    \"name\": \"Graphite\",\n    \"hex\": \"251607\"\n  },\n  {\n    \"name\": \"Cannon Black\",\n    \"hex\": \"251706\"\n  },\n  {\n    \"name\": \"Port Gore\",\n    \"hex\": \"251F4F\"\n  },\n  {\n    \"name\": \"Shark\",\n    \"hex\": \"25272C\"\n  },\n  {\n    \"name\": \"Green Kelp\",\n    \"hex\": \"25311C\"\n  },\n  {\n    \"name\": \"Curious Blue\",\n    \"hex\": \"2596D1\"\n  },\n  {\n    \"name\": \"Paua\",\n    \"hex\": \"260368\"\n  },\n  {\n    \"name\": \"Paris M\",\n    \"hex\": \"26056A\"\n  },\n  {\n    \"name\": \"Wood Bark\",\n    \"hex\": \"261105\"\n  },\n  {\n    \"name\": \"Gondola\",\n    \"hex\": \"261414\"\n  },\n  {\n    \"name\": \"Steel Gray\",\n    \"hex\": \"262335\"\n  },\n  {\n    \"name\": \"Ebony Clay\",\n    \"hex\": \"26283B\"\n  },\n  {\n    \"name\": \"Bay of Many\",\n    \"hex\": \"273A81\"\n  },\n  {\n    \"name\": \"Plantation\",\n    \"hex\": \"27504B\"\n  },\n  {\n    \"name\": \"Eucalyptus\",\n    \"hex\": \"278A5B\"\n  },\n  {\n    \"name\": \"Oil\",\n    \"hex\": \"281E15\"\n  },\n  {\n    \"name\": \"Astronaut\",\n    \"hex\": \"283A77\"\n  },\n  {\n    \"name\": \"Mariner\",\n    \"hex\": \"286ACD\"\n  },\n  {\n    \"name\": \"Violent Violet\",\n    \"hex\": \"290C5E\"\n  },\n  {\n    \"name\": \"Bastille\",\n    \"hex\": \"292130\"\n  },\n  {\n    \"name\": \"Zeus\",\n    \"hex\": \"292319\"\n  },\n  {\n    \"name\": \"Charade\",\n    \"hex\": \"292937\"\n  },\n  {\n    \"name\": \"Jelly Bean\",\n    \"hex\": \"297B9A\"\n  },\n  {\n    \"name\": \"Jungle Green\",\n    \"hex\": \"29AB87\"\n  },\n  {\n    \"name\": \"Cherry Pie\",\n    \"hex\": \"2A0359\"\n  },\n  {\n    \"name\": \"Coffee Bean\",\n    \"hex\": \"2A140E\"\n  },\n  {\n    \"name\": \"Baltic Sea\",\n    \"hex\": \"2A2630\"\n  },\n  {\n    \"name\": \"Turtle Green\",\n    \"hex\": \"2A380B\"\n  },\n  {\n    \"name\": \"Cerulean Blue\",\n    \"hex\": \"2A52BE\"\n  },\n  {\n    \"name\": \"Sepia Black\",\n    \"hex\": \"2B0202\"\n  },\n  {\n    \"name\": \"Valhalla\",\n    \"hex\": \"2B194F\"\n  },\n  {\n    \"name\": \"Heavy Metal\",\n    \"hex\": \"2B3228\"\n  },\n  {\n    \"name\": \"Blue Gem\",\n    \"hex\": \"2C0E8C\"\n  },\n  {\n    \"name\": \"Revolver\",\n    \"hex\": \"2C1632\"\n  },\n  {\n    \"name\": \"Bleached Cedar\",\n    \"hex\": \"2C2133\"\n  },\n  {\n    \"name\": \"Lochinvar\",\n    \"hex\": \"2C8C84\"\n  },\n  {\n    \"name\": \"Mikado\",\n    \"hex\": \"2D2510\"\n  },\n  {\n    \"name\": \"Outer Space\",\n    \"hex\": \"2D383A\"\n  },\n  {\n    \"name\": \"St Tropaz\",\n    \"hex\": \"2D569B\"\n  },\n  {\n    \"name\": \"Jacaranda\",\n    \"hex\": \"2E0329\"\n  },\n  {\n    \"name\": \"Jacko Bean\",\n    \"hex\": \"2E1905\"\n  },\n  {\n    \"name\": \"Rangitoto\",\n    \"hex\": \"2E3222\"\n  },\n  {\n    \"name\": \"Rhino\",\n    \"hex\": \"2E3F62\"\n  },\n  {\n    \"name\": \"Sea Green\",\n    \"hex\": \"2E8B57\"\n  },\n  {\n    \"name\": \"Scooter\",\n    \"hex\": \"2EBFD4\"\n  },\n  {\n    \"name\": \"Onion\",\n    \"hex\": \"2F270E\"\n  },\n  {\n    \"name\": \"Governor Bay\",\n    \"hex\": \"2F3CB3\"\n  },\n  {\n    \"name\": \"Sapphire\",\n    \"hex\": \"2F519E\"\n  },\n  {\n    \"name\": \"Spectra\",\n    \"hex\": \"2F5A57\"\n  },\n  {\n    \"name\": \"Casal\",\n    \"hex\": \"2F6168\"\n  },\n  {\n    \"name\": \"Melanzane\",\n    \"hex\": \"300529\"\n  },\n  {\n    \"name\": \"Cocoa Brown\",\n    \"hex\": \"301F1E\"\n  },\n  {\n    \"name\": \"Woodrush\",\n    \"hex\": \"302A0F\"\n  },\n  {\n    \"name\": \"San Juan\",\n    \"hex\": \"304B6A\"\n  },\n  {\n    \"name\": \"Turquoise\",\n    \"hex\": \"30D5C8\"\n  },\n  {\n    \"name\": \"Eclipse\",\n    \"hex\": \"311C17\"\n  },\n  {\n    \"name\": \"Pickled Bluewood\",\n    \"hex\": \"314459\"\n  },\n  {\n    \"name\": \"Azure\",\n    \"hex\": \"315BA1\"\n  },\n  {\n    \"name\": \"Calypso\",\n    \"hex\": \"31728D\"\n  },\n  {\n    \"name\": \"Paradiso\",\n    \"hex\": \"317D82\"\n  },\n  {\n    \"name\": \"Persian Indigo\",\n    \"hex\": \"32127A\"\n  },\n  {\n    \"name\": \"Blackcurrant\",\n    \"hex\": \"32293A\"\n  },\n  {\n    \"name\": \"Mine Shaft\",\n    \"hex\": \"323232\"\n  },\n  {\n    \"name\": \"Stromboli\",\n    \"hex\": \"325D52\"\n  },\n  {\n    \"name\": \"Bilbao\",\n    \"hex\": \"327C14\"\n  },\n  {\n    \"name\": \"Astral\",\n    \"hex\": \"327DA0\"\n  },\n  {\n    \"name\": \"Christalle\",\n    \"hex\": \"33036B\"\n  },\n  {\n    \"name\": \"Thunder\",\n    \"hex\": \"33292F\"\n  },\n  {\n    \"name\": \"Shamrock\",\n    \"hex\": \"33CC99\"\n  },\n  {\n    \"name\": \"Tamarind\",\n    \"hex\": \"341515\"\n  },\n  {\n    \"name\": \"Mardi Gras\",\n    \"hex\": \"350036\"\n  },\n  {\n    \"name\": \"Valentino\",\n    \"hex\": \"350E42\"\n  },\n  {\n    \"name\": \"Jagger\",\n    \"hex\": \"350E57\"\n  },\n  {\n    \"name\": \"Tuna\",\n    \"hex\": \"353542\"\n  },\n  {\n    \"name\": \"Chambray\",\n    \"hex\": \"354E8C\"\n  },\n  {\n    \"name\": \"Martinique\",\n    \"hex\": \"363050\"\n  },\n  {\n    \"name\": \"Tuatara\",\n    \"hex\": \"363534\"\n  },\n  {\n    \"name\": \"Waiouru\",\n    \"hex\": \"363C0D\"\n  },\n  {\n    \"name\": \"Ming\",\n    \"hex\": \"36747D\"\n  },\n  {\n    \"name\": \"La Palma\",\n    \"hex\": \"368716\"\n  },\n  {\n    \"name\": \"Chocolate\",\n    \"hex\": \"370202\"\n  },\n  {\n    \"name\": \"Clinker\",\n    \"hex\": \"371D09\"\n  },\n  {\n    \"name\": \"Brown Tumbleweed\",\n    \"hex\": \"37290E\"\n  },\n  {\n    \"name\": \"Birch\",\n    \"hex\": \"373021\"\n  },\n  {\n    \"name\": \"Oracle\",\n    \"hex\": \"377475\"\n  },\n  {\n    \"name\": \"Blue Diamond\",\n    \"hex\": \"380474\"\n  },\n  {\n    \"name\": \"Grape\",\n    \"hex\": \"381A51\"\n  },\n  {\n    \"name\": \"Dune\",\n    \"hex\": \"383533\"\n  },\n  {\n    \"name\": \"Oxford Blue\",\n    \"hex\": \"384555\"\n  },\n  {\n    \"name\": \"Clover\",\n    \"hex\": \"384910\"\n  },\n  {\n    \"name\": \"Limed Spruce\",\n    \"hex\": \"394851\"\n  },\n  {\n    \"name\": \"Dell\",\n    \"hex\": \"396413\"\n  },\n  {\n    \"name\": \"Toledo\",\n    \"hex\": \"3A0020\"\n  },\n  {\n    \"name\": \"Sambuca\",\n    \"hex\": \"3A2010\"\n  },\n  {\n    \"name\": \"Jacarta\",\n    \"hex\": \"3A2A6A\"\n  },\n  {\n    \"name\": \"William\",\n    \"hex\": \"3A686C\"\n  },\n  {\n    \"name\": \"Killarney\",\n    \"hex\": \"3A6A47\"\n  },\n  {\n    \"name\": \"Keppel\",\n    \"hex\": \"3AB09E\"\n  },\n  {\n    \"name\": \"Temptress\",\n    \"hex\": \"3B000B\"\n  },\n  {\n    \"name\": \"Aubergine\",\n    \"hex\": \"3B0910\"\n  },\n  {\n    \"name\": \"Jon\",\n    \"hex\": \"3B1F1F\"\n  },\n  {\n    \"name\": \"Treehouse\",\n    \"hex\": \"3B2820\"\n  },\n  {\n    \"name\": \"Amazon\",\n    \"hex\": \"3B7A57\"\n  },\n  {\n    \"name\": \"Boston Blue\",\n    \"hex\": \"3B91B4\"\n  },\n  {\n    \"name\": \"Windsor\",\n    \"hex\": \"3C0878\"\n  },\n  {\n    \"name\": \"Rebel\",\n    \"hex\": \"3C1206\"\n  },\n  {\n    \"name\": \"Meteorite\",\n    \"hex\": \"3C1F76\"\n  },\n  {\n    \"name\": \"Dark Ebony\",\n    \"hex\": \"3C2005\"\n  },\n  {\n    \"name\": \"Camouflage\",\n    \"hex\": \"3C3910\"\n  },\n  {\n    \"name\": \"Bright Gray\",\n    \"hex\": \"3C4151\"\n  },\n  {\n    \"name\": \"Cape Cod\",\n    \"hex\": \"3C4443\"\n  },\n  {\n    \"name\": \"Lunar Green\",\n    \"hex\": \"3C493A\"\n  },\n  {\n    \"name\": \"Bean  \",\n    \"hex\": \"3D0C02\"\n  },\n  {\n    \"name\": \"Bistre\",\n    \"hex\": \"3D2B1F\"\n  },\n  {\n    \"name\": \"Goblin\",\n    \"hex\": \"3D7D52\"\n  },\n  {\n    \"name\": \"Kingfisher Daisy\",\n    \"hex\": \"3E0480\"\n  },\n  {\n    \"name\": \"Cedar\",\n    \"hex\": \"3E1C14\"\n  },\n  {\n    \"name\": \"English Walnut\",\n    \"hex\": \"3E2B23\"\n  },\n  {\n    \"name\": \"Black Marlin\",\n    \"hex\": \"3E2C1C\"\n  },\n  {\n    \"name\": \"Ship Gray\",\n    \"hex\": \"3E3A44\"\n  },\n  {\n    \"name\": \"Pelorous\",\n    \"hex\": \"3EABBF\"\n  },\n  {\n    \"name\": \"Bronze\",\n    \"hex\": \"3F2109\"\n  },\n  {\n    \"name\": \"Cola\",\n    \"hex\": \"3F2500\"\n  },\n  {\n    \"name\": \"Madras\",\n    \"hex\": \"3F3002\"\n  },\n  {\n    \"name\": \"Minsk\",\n    \"hex\": \"3F307F\"\n  },\n  {\n    \"name\": \"Cabbage Pont\",\n    \"hex\": \"3F4C3A\"\n  },\n  {\n    \"name\": \"Tom Thumb\",\n    \"hex\": \"3F583B\"\n  },\n  {\n    \"name\": \"Mineral Green\",\n    \"hex\": \"3F5D53\"\n  },\n  {\n    \"name\": \"Puerto Rico\",\n    \"hex\": \"3FC1AA\"\n  },\n  {\n    \"name\": \"Harlequin\",\n    \"hex\": \"3FFF00\"\n  },\n  {\n    \"name\": \"Brown Pod\",\n    \"hex\": \"401801\"\n  },\n  {\n    \"name\": \"Cork\",\n    \"hex\": \"40291D\"\n  },\n  {\n    \"name\": \"Masala\",\n    \"hex\": \"403B38\"\n  },\n  {\n    \"name\": \"Thatch Green\",\n    \"hex\": \"403D19\"\n  },\n  {\n    \"name\": \"Fiord\",\n    \"hex\": \"405169\"\n  },\n  {\n    \"name\": \"Viridian\",\n    \"hex\": \"40826D\"\n  },\n  {\n    \"name\": \"Chateau Green\",\n    \"hex\": \"40A860\"\n  },\n  {\n    \"name\": \"Ripe Plum\",\n    \"hex\": \"410056\"\n  },\n  {\n    \"name\": \"Paco\",\n    \"hex\": \"411F10\"\n  },\n  {\n    \"name\": \"Deep Oak\",\n    \"hex\": \"412010\"\n  },\n  {\n    \"name\": \"Merlin\",\n    \"hex\": \"413C37\"\n  },\n  {\n    \"name\": \"Gun Powder\",\n    \"hex\": \"414257\"\n  },\n  {\n    \"name\": \"East Bay\",\n    \"hex\": \"414C7D\"\n  },\n  {\n    \"name\": \"Royal Blue\",\n    \"hex\": \"4169E1\"\n  },\n  {\n    \"name\": \"Ocean Green\",\n    \"hex\": \"41AA78\"\n  },\n  {\n    \"name\": \"Burnt Maroon\",\n    \"hex\": \"420303\"\n  },\n  {\n    \"name\": \"Lisbon Brown\",\n    \"hex\": \"423921\"\n  },\n  {\n    \"name\": \"Faded Jade\",\n    \"hex\": \"427977\"\n  },\n  {\n    \"name\": \"Scarlet Gum\",\n    \"hex\": \"431560\"\n  },\n  {\n    \"name\": \"Iroko\",\n    \"hex\": \"433120\"\n  },\n  {\n    \"name\": \"Armadillo\",\n    \"hex\": \"433E37\"\n  },\n  {\n    \"name\": \"River Bed\",\n    \"hex\": \"434C59\"\n  },\n  {\n    \"name\": \"Green Leaf\",\n    \"hex\": \"436A0D\"\n  },\n  {\n    \"name\": \"Barossa\",\n    \"hex\": \"44012D\"\n  },\n  {\n    \"name\": \"Morocco Brown\",\n    \"hex\": \"441D00\"\n  },\n  {\n    \"name\": \"Mako\",\n    \"hex\": \"444954\"\n  },\n  {\n    \"name\": \"Kelp\",\n    \"hex\": \"454936\"\n  },\n  {\n    \"name\": \"San Marino\",\n    \"hex\": \"456CAC\"\n  },\n  {\n    \"name\": \"Picton Blue\",\n    \"hex\": \"45B1E8\"\n  },\n  {\n    \"name\": \"Loulou\",\n    \"hex\": \"460B41\"\n  },\n  {\n    \"name\": \"Crater Brown\",\n    \"hex\": \"462425\"\n  },\n  {\n    \"name\": \"Gray Asparagus\",\n    \"hex\": \"465945\"\n  },\n  {\n    \"name\": \"Steel Blue\",\n    \"hex\": \"4682B4\"\n  },\n  {\n    \"name\": \"Rustic Red\",\n    \"hex\": \"480404\"\n  },\n  {\n    \"name\": \"Bulgarian Rose\",\n    \"hex\": \"480607\"\n  },\n  {\n    \"name\": \"Clairvoyant\",\n    \"hex\": \"480656\"\n  },\n  {\n    \"name\": \"Cocoa Bean\",\n    \"hex\": \"481C1C\"\n  },\n  {\n    \"name\": \"Woody Brown\",\n    \"hex\": \"483131\"\n  },\n  {\n    \"name\": \"Taupe\",\n    \"hex\": \"483C32\"\n  },\n  {\n    \"name\": \"Van Cleef\",\n    \"hex\": \"49170C\"\n  },\n  {\n    \"name\": \"Brown Derby\",\n    \"hex\": \"492615\"\n  },\n  {\n    \"name\": \"Metallic Bronze\",\n    \"hex\": \"49371B\"\n  },\n  {\n    \"name\": \"Verdun Green\",\n    \"hex\": \"495400\"\n  },\n  {\n    \"name\": \"Blue Bayoux\",\n    \"hex\": \"496679\"\n  },\n  {\n    \"name\": \"Bismark\",\n    \"hex\": \"497183\"\n  },\n  {\n    \"name\": \"Bracken\",\n    \"hex\": \"4A2A04\"\n  },\n  {\n    \"name\": \"Deep Bronze\",\n    \"hex\": \"4A3004\"\n  },\n  {\n    \"name\": \"Mondo\",\n    \"hex\": \"4A3C30\"\n  },\n  {\n    \"name\": \"Tundora\",\n    \"hex\": \"4A4244\"\n  },\n  {\n    \"name\": \"Gravel\",\n    \"hex\": \"4A444B\"\n  },\n  {\n    \"name\": \"Trout\",\n    \"hex\": \"4A4E5A\"\n  },\n  {\n    \"name\": \"Pigment Indigo\",\n    \"hex\": \"4B0082\"\n  },\n  {\n    \"name\": \"Nandor\",\n    \"hex\": \"4B5D52\"\n  },\n  {\n    \"name\": \"Saddle\",\n    \"hex\": \"4C3024\"\n  },\n  {\n    \"name\": \"Abbey\",\n    \"hex\": \"4C4F56\"\n  },\n  {\n    \"name\": \"Blackberry\",\n    \"hex\": \"4D0135\"\n  },\n  {\n    \"name\": \"Cab Sav\",\n    \"hex\": \"4D0A18\"\n  },\n  {\n    \"name\": \"Indian Tan\",\n    \"hex\": \"4D1E01\"\n  },\n  {\n    \"name\": \"Cowboy\",\n    \"hex\": \"4D282D\"\n  },\n  {\n    \"name\": \"Livid Brown\",\n    \"hex\": \"4D282E\"\n  },\n  {\n    \"name\": \"Rock\",\n    \"hex\": \"4D3833\"\n  },\n  {\n    \"name\": \"Punga\",\n    \"hex\": \"4D3D14\"\n  },\n  {\n    \"name\": \"Bronzetone\",\n    \"hex\": \"4D400F\"\n  },\n  {\n    \"name\": \"Woodland\",\n    \"hex\": \"4D5328\"\n  },\n  {\n    \"name\": \"Mahogany\",\n    \"hex\": \"4E0606\"\n  },\n  {\n    \"name\": \"Bossanova\",\n    \"hex\": \"4E2A5A\"\n  },\n  {\n    \"name\": \"Matterhorn\",\n    \"hex\": \"4E3B41\"\n  },\n  {\n    \"name\": \"Bronze Olive\",\n    \"hex\": \"4E420C\"\n  },\n  {\n    \"name\": \"Mulled Wine\",\n    \"hex\": \"4E4562\"\n  },\n  {\n    \"name\": \"Axolotl\",\n    \"hex\": \"4E6649\"\n  },\n  {\n    \"name\": \"Wedgewood\",\n    \"hex\": \"4E7F9E\"\n  },\n  {\n    \"name\": \"Shakespeare\",\n    \"hex\": \"4EABD1\"\n  },\n  {\n    \"name\": \"Honey Flower\",\n    \"hex\": \"4F1C70\"\n  },\n  {\n    \"name\": \"Daisy Bush\",\n    \"hex\": \"4F2398\"\n  },\n  {\n    \"name\": \"Indigo\",\n    \"hex\": \"4F69C6\"\n  },\n  {\n    \"name\": \"Fern Green\",\n    \"hex\": \"4F7942\"\n  },\n  {\n    \"name\": \"Fruit Salad\",\n    \"hex\": \"4F9D5D\"\n  },\n  {\n    \"name\": \"Apple\",\n    \"hex\": \"4FA83D\"\n  },\n  {\n    \"name\": \"Mortar\",\n    \"hex\": \"504351\"\n  },\n  {\n    \"name\": \"Kashmir Blue\",\n    \"hex\": \"507096\"\n  },\n  {\n    \"name\": \"Cutty Sark\",\n    \"hex\": \"507672\"\n  },\n  {\n    \"name\": \"Emerald\",\n    \"hex\": \"50C878\"\n  },\n  {\n    \"name\": \"Emperor\",\n    \"hex\": \"514649\"\n  },\n  {\n    \"name\": \"Chalet Green\",\n    \"hex\": \"516E3D\"\n  },\n  {\n    \"name\": \"Como\",\n    \"hex\": \"517C66\"\n  },\n  {\n    \"name\": \"Smalt Blue\",\n    \"hex\": \"51808F\"\n  },\n  {\n    \"name\": \"Castro\",\n    \"hex\": \"52001F\"\n  },\n  {\n    \"name\": \"Maroon Oak\",\n    \"hex\": \"520C17\"\n  },\n  {\n    \"name\": \"Gigas\",\n    \"hex\": \"523C94\"\n  },\n  {\n    \"name\": \"Voodoo\",\n    \"hex\": \"533455\"\n  },\n  {\n    \"name\": \"Victoria\",\n    \"hex\": \"534491\"\n  },\n  {\n    \"name\": \"Hippie Green\",\n    \"hex\": \"53824B\"\n  },\n  {\n    \"name\": \"Heath\",\n    \"hex\": \"541012\"\n  },\n  {\n    \"name\": \"Judge Gray\",\n    \"hex\": \"544333\"\n  },\n  {\n    \"name\": \"Fuscous Gray\",\n    \"hex\": \"54534D\"\n  },\n  {\n    \"name\": \"Vida Loca\",\n    \"hex\": \"549019\"\n  },\n  {\n    \"name\": \"Cioccolato\",\n    \"hex\": \"55280C\"\n  },\n  {\n    \"name\": \"Saratoga\",\n    \"hex\": \"555B10\"\n  },\n  {\n    \"name\": \"Finlandia\",\n    \"hex\": \"556D56\"\n  },\n  {\n    \"name\": \"Havelock Blue\",\n    \"hex\": \"5590D9\"\n  },\n  {\n    \"name\": \"Fountain Blue\",\n    \"hex\": \"56B4BE\"\n  },\n  {\n    \"name\": \"Spring Leaves\",\n    \"hex\": \"578363\"\n  },\n  {\n    \"name\": \"Saddle Brown\",\n    \"hex\": \"583401\"\n  },\n  {\n    \"name\": \"Scarpa Flow\",\n    \"hex\": \"585562\"\n  },\n  {\n    \"name\": \"Cactus\",\n    \"hex\": \"587156\"\n  },\n  {\n    \"name\": \"Hippie Blue\",\n    \"hex\": \"589AAF\"\n  },\n  {\n    \"name\": \"Wine Berry\",\n    \"hex\": \"591D35\"\n  },\n  {\n    \"name\": \"Brown Bramble\",\n    \"hex\": \"592804\"\n  },\n  {\n    \"name\": \"Congo Brown\",\n    \"hex\": \"593737\"\n  },\n  {\n    \"name\": \"Millbrook\",\n    \"hex\": \"594433\"\n  },\n  {\n    \"name\": \"Waikawa Gray\",\n    \"hex\": \"5A6E9C\"\n  },\n  {\n    \"name\": \"Horizon\",\n    \"hex\": \"5A87A0\"\n  },\n  {\n    \"name\": \"Jambalaya\",\n    \"hex\": \"5B3013\"\n  },\n  {\n    \"name\": \"Bordeaux\",\n    \"hex\": \"5C0120\"\n  },\n  {\n    \"name\": \"Mulberry Wood\",\n    \"hex\": \"5C0536\"\n  },\n  {\n    \"name\": \"Carnaby Tan\",\n    \"hex\": \"5C2E01\"\n  },\n  {\n    \"name\": \"Comet\",\n    \"hex\": \"5C5D75\"\n  },\n  {\n    \"name\": \"Redwood\",\n    \"hex\": \"5D1E0F\"\n  },\n  {\n    \"name\": \"Don Juan\",\n    \"hex\": \"5D4C51\"\n  },\n  {\n    \"name\": \"Chicago\",\n    \"hex\": \"5D5C58\"\n  },\n  {\n    \"name\": \"Verdigris\",\n    \"hex\": \"5D5E37\"\n  },\n  {\n    \"name\": \"Dingley\",\n    \"hex\": \"5D7747\"\n  },\n  {\n    \"name\": \"Breaker Bay\",\n    \"hex\": \"5DA19F\"\n  },\n  {\n    \"name\": \"Kabul\",\n    \"hex\": \"5E483E\"\n  },\n  {\n    \"name\": \"Hemlock\",\n    \"hex\": \"5E5D3B\"\n  },\n  {\n    \"name\": \"Irish Coffee\",\n    \"hex\": \"5F3D26\"\n  },\n  {\n    \"name\": \"Mid Gray\",\n    \"hex\": \"5F5F6E\"\n  },\n  {\n    \"name\": \"Shuttle Gray\",\n    \"hex\": \"5F6672\"\n  },\n  {\n    \"name\": \"Aqua Forest\",\n    \"hex\": \"5FA777\"\n  },\n  {\n    \"name\": \"Tradewind\",\n    \"hex\": \"5FB3AC\"\n  },\n  {\n    \"name\": \"Horses Neck\",\n    \"hex\": \"604913\"\n  },\n  {\n    \"name\": \"Smoky\",\n    \"hex\": \"605B73\"\n  },\n  {\n    \"name\": \"Corduroy\",\n    \"hex\": \"606E68\"\n  },\n  {\n    \"name\": \"Danube\",\n    \"hex\": \"6093D1\"\n  },\n  {\n    \"name\": \"Espresso\",\n    \"hex\": \"612718\"\n  },\n  {\n    \"name\": \"Eggplant\",\n    \"hex\": \"614051\"\n  },\n  {\n    \"name\": \"Costa Del Sol\",\n    \"hex\": \"615D30\"\n  },\n  {\n    \"name\": \"Glade Green\",\n    \"hex\": \"61845F\"\n  },\n  {\n    \"name\": \"Buccaneer\",\n    \"hex\": \"622F30\"\n  },\n  {\n    \"name\": \"Quincy\",\n    \"hex\": \"623F2D\"\n  },\n  {\n    \"name\": \"Butterfly Bush\",\n    \"hex\": \"624E9A\"\n  },\n  {\n    \"name\": \"West Coast\",\n    \"hex\": \"625119\"\n  },\n  {\n    \"name\": \"Finch\",\n    \"hex\": \"626649\"\n  },\n  {\n    \"name\": \"Patina\",\n    \"hex\": \"639A8F\"\n  },\n  {\n    \"name\": \"Fern\",\n    \"hex\": \"63B76C\"\n  },\n  {\n    \"name\": \"Blue Violet\",\n    \"hex\": \"6456B7\"\n  },\n  {\n    \"name\": \"Dolphin\",\n    \"hex\": \"646077\"\n  },\n  {\n    \"name\": \"Storm Dust\",\n    \"hex\": \"646463\"\n  },\n  {\n    \"name\": \"Siam\",\n    \"hex\": \"646A54\"\n  },\n  {\n    \"name\": \"Nevada\",\n    \"hex\": \"646E75\"\n  },\n  {\n    \"name\": \"Cornflower Blue\",\n    \"hex\": \"6495ED\"\n  },\n  {\n    \"name\": \"Viking\",\n    \"hex\": \"64CCDB\"\n  },\n  {\n    \"name\": \"Rosewood\",\n    \"hex\": \"65000B\"\n  },\n  {\n    \"name\": \"Cherrywood\",\n    \"hex\": \"651A14\"\n  },\n  {\n    \"name\": \"Purple Heart\",\n    \"hex\": \"652DC1\"\n  },\n  {\n    \"name\": \"Fern Frond\",\n    \"hex\": \"657220\"\n  },\n  {\n    \"name\": \"Willow Grove\",\n    \"hex\": \"65745D\"\n  },\n  {\n    \"name\": \"Hoki\",\n    \"hex\": \"65869F\"\n  },\n  {\n    \"name\": \"Pompadour\",\n    \"hex\": \"660045\"\n  },\n  {\n    \"name\": \"Purple\",\n    \"hex\": \"660099\"\n  },\n  {\n    \"name\": \"Tyrian Purple\",\n    \"hex\": \"66023C\"\n  },\n  {\n    \"name\": \"Dark Tan\",\n    \"hex\": \"661010\"\n  },\n  {\n    \"name\": \"Silver Tree\",\n    \"hex\": \"66B58F\"\n  },\n  {\n    \"name\": \"Bright Green\",\n    \"hex\": \"66FF00\"\n  },\n  {\n    \"name\": \"Screamin' Green\",\n    \"hex\": \"66FF66\"\n  },\n  {\n    \"name\": \"Black Rose\",\n    \"hex\": \"67032D\"\n  },\n  {\n    \"name\": \"Scampi\",\n    \"hex\": \"675FA6\"\n  },\n  {\n    \"name\": \"Ironside Gray\",\n    \"hex\": \"676662\"\n  },\n  {\n    \"name\": \"Viridian Green\",\n    \"hex\": \"678975\"\n  },\n  {\n    \"name\": \"Christi\",\n    \"hex\": \"67A712\"\n  },\n  {\n    \"name\": \"Nutmeg Wood Finish\",\n    \"hex\": \"683600\"\n  },\n  {\n    \"name\": \"Zambezi\",\n    \"hex\": \"685558\"\n  },\n  {\n    \"name\": \"Salt Box\",\n    \"hex\": \"685E6E\"\n  },\n  {\n    \"name\": \"Tawny Port\",\n    \"hex\": \"692545\"\n  },\n  {\n    \"name\": \"Finn\",\n    \"hex\": \"692D54\"\n  },\n  {\n    \"name\": \"Scorpion\",\n    \"hex\": \"695F62\"\n  },\n  {\n    \"name\": \"Lynch\",\n    \"hex\": \"697E9A\"\n  },\n  {\n    \"name\": \"Spice\",\n    \"hex\": \"6A442E\"\n  },\n  {\n    \"name\": \"Himalaya\",\n    \"hex\": \"6A5D1B\"\n  },\n  {\n    \"name\": \"Soya Bean\",\n    \"hex\": \"6A6051\"\n  },\n  {\n    \"name\": \"Hairy Heath\",\n    \"hex\": \"6B2A14\"\n  },\n  {\n    \"name\": \"Royal Purple\",\n    \"hex\": \"6B3FA0\"\n  },\n  {\n    \"name\": \"Shingle Fawn\",\n    \"hex\": \"6B4E31\"\n  },\n  {\n    \"name\": \"Dorado\",\n    \"hex\": \"6B5755\"\n  },\n  {\n    \"name\": \"Bermuda Gray\",\n    \"hex\": \"6B8BA2\"\n  },\n  {\n    \"name\": \"Olive Drab\",\n    \"hex\": \"6B8E23\"\n  },\n  {\n    \"name\": \"Eminence\",\n    \"hex\": \"6C3082\"\n  },\n  {\n    \"name\": \"Turquoise Blue\",\n    \"hex\": \"6CDAE7\"\n  },\n  {\n    \"name\": \"Lonestar\",\n    \"hex\": \"6D0101\"\n  },\n  {\n    \"name\": \"Pine Cone\",\n    \"hex\": \"6D5E54\"\n  },\n  {\n    \"name\": \"Dove Gray\",\n    \"hex\": \"6D6C6C\"\n  },\n  {\n    \"name\": \"Juniper\",\n    \"hex\": \"6D9292\"\n  },\n  {\n    \"name\": \"Gothic\",\n    \"hex\": \"6D92A1\"\n  },\n  {\n    \"name\": \"Red Oxide\",\n    \"hex\": \"6E0902\"\n  },\n  {\n    \"name\": \"Moccaccino\",\n    \"hex\": \"6E1D14\"\n  },\n  {\n    \"name\": \"Pickled Bean\",\n    \"hex\": \"6E4826\"\n  },\n  {\n    \"name\": \"Dallas\",\n    \"hex\": \"6E4B26\"\n  },\n  {\n    \"name\": \"Kokoda\",\n    \"hex\": \"6E6D57\"\n  },\n  {\n    \"name\": \"Pale Sky\",\n    \"hex\": \"6E7783\"\n  },\n  {\n    \"name\": \"Cafe Royale\",\n    \"hex\": \"6F440C\"\n  },\n  {\n    \"name\": \"Flint\",\n    \"hex\": \"6F6A61\"\n  },\n  {\n    \"name\": \"Highland\",\n    \"hex\": \"6F8E63\"\n  },\n  {\n    \"name\": \"Limeade\",\n    \"hex\": \"6F9D02\"\n  },\n  {\n    \"name\": \"Downy\",\n    \"hex\": \"6FD0C5\"\n  },\n  {\n    \"name\": \"Persian Plum\",\n    \"hex\": \"701C1C\"\n  },\n  {\n    \"name\": \"Sepia\",\n    \"hex\": \"704214\"\n  },\n  {\n    \"name\": \"Antique Bronze\",\n    \"hex\": \"704A07\"\n  },\n  {\n    \"name\": \"Ferra\",\n    \"hex\": \"704F50\"\n  },\n  {\n    \"name\": \"Coffee\",\n    \"hex\": \"706555\"\n  },\n  {\n    \"name\": \"Slate Gray\",\n    \"hex\": \"708090\"\n  },\n  {\n    \"name\": \"Cedar Wood Finish\",\n    \"hex\": \"711A00\"\n  },\n  {\n    \"name\": \"Metallic Copper\",\n    \"hex\": \"71291D\"\n  },\n  {\n    \"name\": \"Affair\",\n    \"hex\": \"714693\"\n  },\n  {\n    \"name\": \"Studio\",\n    \"hex\": \"714AB2\"\n  },\n  {\n    \"name\": \"Tobacco Brown\",\n    \"hex\": \"715D47\"\n  },\n  {\n    \"name\": \"Yellow Metal\",\n    \"hex\": \"716338\"\n  },\n  {\n    \"name\": \"Peat\",\n    \"hex\": \"716B56\"\n  },\n  {\n    \"name\": \"Olivetone\",\n    \"hex\": \"716E10\"\n  },\n  {\n    \"name\": \"Storm Gray\",\n    \"hex\": \"717486\"\n  },\n  {\n    \"name\": \"Sirocco\",\n    \"hex\": \"718080\"\n  },\n  {\n    \"name\": \"Aquamarine Blue\",\n    \"hex\": \"71D9E2\"\n  },\n  {\n    \"name\": \"Venetian Red\",\n    \"hex\": \"72010F\"\n  },\n  {\n    \"name\": \"Old Copper\",\n    \"hex\": \"724A2F\"\n  },\n  {\n    \"name\": \"Go Ben\",\n    \"hex\": \"726D4E\"\n  },\n  {\n    \"name\": \"Raven\",\n    \"hex\": \"727B89\"\n  },\n  {\n    \"name\": \"Seance\",\n    \"hex\": \"731E8F\"\n  },\n  {\n    \"name\": \"Raw Umber\",\n    \"hex\": \"734A12\"\n  },\n  {\n    \"name\": \"Kimberly\",\n    \"hex\": \"736C9F\"\n  },\n  {\n    \"name\": \"Crocodile\",\n    \"hex\": \"736D58\"\n  },\n  {\n    \"name\": \"Crete\",\n    \"hex\": \"737829\"\n  },\n  {\n    \"name\": \"Xanadu\",\n    \"hex\": \"738678\"\n  },\n  {\n    \"name\": \"Spicy Mustard\",\n    \"hex\": \"74640D\"\n  },\n  {\n    \"name\": \"Limed Ash\",\n    \"hex\": \"747D63\"\n  },\n  {\n    \"name\": \"Rolling Stone\",\n    \"hex\": \"747D83\"\n  },\n  {\n    \"name\": \"Blue Smoke\",\n    \"hex\": \"748881\"\n  },\n  {\n    \"name\": \"Laurel\",\n    \"hex\": \"749378\"\n  },\n  {\n    \"name\": \"Mantis\",\n    \"hex\": \"74C365\"\n  },\n  {\n    \"name\": \"Russett\",\n    \"hex\": \"755A57\"\n  },\n  {\n    \"name\": \"Deluge\",\n    \"hex\": \"7563A8\"\n  },\n  {\n    \"name\": \"Cosmic\",\n    \"hex\": \"76395D\"\n  },\n  {\n    \"name\": \"Blue Marguerite\",\n    \"hex\": \"7666C6\"\n  },\n  {\n    \"name\": \"Lima\",\n    \"hex\": \"76BD17\"\n  },\n  {\n    \"name\": \"Sky Blue\",\n    \"hex\": \"76D7EA\"\n  },\n  {\n    \"name\": \"Dark Burgundy\",\n    \"hex\": \"770F05\"\n  },\n  {\n    \"name\": \"Crown of Thorns\",\n    \"hex\": \"771F1F\"\n  },\n  {\n    \"name\": \"Walnut\",\n    \"hex\": \"773F1A\"\n  },\n  {\n    \"name\": \"Pablo\",\n    \"hex\": \"776F61\"\n  },\n  {\n    \"name\": \"Pacifika\",\n    \"hex\": \"778120\"\n  },\n  {\n    \"name\": \"Oxley\",\n    \"hex\": \"779E86\"\n  },\n  {\n    \"name\": \"Pastel Green\",\n    \"hex\": \"77DD77\"\n  },\n  {\n    \"name\": \"Japanese Maple\",\n    \"hex\": \"780109\"\n  },\n  {\n    \"name\": \"Mocha\",\n    \"hex\": \"782D19\"\n  },\n  {\n    \"name\": \"Peanut\",\n    \"hex\": \"782F16\"\n  },\n  {\n    \"name\": \"Camouflage Green\",\n    \"hex\": \"78866B\"\n  },\n  {\n    \"name\": \"Wasabi\",\n    \"hex\": \"788A25\"\n  },\n  {\n    \"name\": \"Ship Cove\",\n    \"hex\": \"788BBA\"\n  },\n  {\n    \"name\": \"Sea Nymph\",\n    \"hex\": \"78A39C\"\n  },\n  {\n    \"name\": \"Roman Coffee\",\n    \"hex\": \"795D4C\"\n  },\n  {\n    \"name\": \"Old Lavender\",\n    \"hex\": \"796878\"\n  },\n  {\n    \"name\": \"Rum\",\n    \"hex\": \"796989\"\n  },\n  {\n    \"name\": \"Fedora\",\n    \"hex\": \"796A78\"\n  },\n  {\n    \"name\": \"Sandstone\",\n    \"hex\": \"796D62\"\n  },\n  {\n    \"name\": \"Spray\",\n    \"hex\": \"79DEEC\"\n  },\n  {\n    \"name\": \"Siren\",\n    \"hex\": \"7A013A\"\n  },\n  {\n    \"name\": \"Fuchsia Blue\",\n    \"hex\": \"7A58C1\"\n  },\n  {\n    \"name\": \"Boulder\",\n    \"hex\": \"7A7A7A\"\n  },\n  {\n    \"name\": \"Wild Blue Yonder\",\n    \"hex\": \"7A89B8\"\n  },\n  {\n    \"name\": \"De York\",\n    \"hex\": \"7AC488\"\n  },\n  {\n    \"name\": \"Red Beech\",\n    \"hex\": \"7B3801\"\n  },\n  {\n    \"name\": \"Cinnamon\",\n    \"hex\": \"7B3F00\"\n  },\n  {\n    \"name\": \"Yukon Gold\",\n    \"hex\": \"7B6608\"\n  },\n  {\n    \"name\": \"Tapa\",\n    \"hex\": \"7B7874\"\n  },\n  {\n    \"name\": \"Waterloo \",\n    \"hex\": \"7B7C94\"\n  },\n  {\n    \"name\": \"Flax Smoke\",\n    \"hex\": \"7B8265\"\n  },\n  {\n    \"name\": \"Amulet\",\n    \"hex\": \"7B9F80\"\n  },\n  {\n    \"name\": \"Asparagus\",\n    \"hex\": \"7BA05B\"\n  },\n  {\n    \"name\": \"Kenyan Copper\",\n    \"hex\": \"7C1C05\"\n  },\n  {\n    \"name\": \"Pesto\",\n    \"hex\": \"7C7631\"\n  },\n  {\n    \"name\": \"Topaz\",\n    \"hex\": \"7C778A\"\n  },\n  {\n    \"name\": \"Concord\",\n    \"hex\": \"7C7B7A\"\n  },\n  {\n    \"name\": \"Jumbo\",\n    \"hex\": \"7C7B82\"\n  },\n  {\n    \"name\": \"Trendy Green\",\n    \"hex\": \"7C881A\"\n  },\n  {\n    \"name\": \"Gumbo\",\n    \"hex\": \"7CA1A6\"\n  },\n  {\n    \"name\": \"Acapulco\",\n    \"hex\": \"7CB0A1\"\n  },\n  {\n    \"name\": \"Neptune\",\n    \"hex\": \"7CB7BB\"\n  },\n  {\n    \"name\": \"Pueblo\",\n    \"hex\": \"7D2C14\"\n  },\n  {\n    \"name\": \"Bay Leaf\",\n    \"hex\": \"7DA98D\"\n  },\n  {\n    \"name\": \"Malibu\",\n    \"hex\": \"7DC8F7\"\n  },\n  {\n    \"name\": \"Bermuda\",\n    \"hex\": \"7DD8C6\"\n  },\n  {\n    \"name\": \"Copper Canyon\",\n    \"hex\": \"7E3A15\"\n  },\n  {\n    \"name\": \"Claret\",\n    \"hex\": \"7F1734\"\n  },\n  {\n    \"name\": \"Peru Tan\",\n    \"hex\": \"7F3A02\"\n  },\n  {\n    \"name\": \"Falcon\",\n    \"hex\": \"7F626D\"\n  },\n  {\n    \"name\": \"Mobster\",\n    \"hex\": \"7F7589\"\n  },\n  {\n    \"name\": \"Moody Blue\",\n    \"hex\": \"7F76D3\"\n  },\n  {\n    \"name\": \"Chartreuse\",\n    \"hex\": \"7FFF00\"\n  },\n  {\n    \"name\": \"Aquamarine\",\n    \"hex\": \"7FFFD4\"\n  },\n  {\n    \"name\": \"Maroon\",\n    \"hex\": \"800000\"\n  },\n  {\n    \"name\": \"Rose Bud Cherry\",\n    \"hex\": \"800B47\"\n  },\n  {\n    \"name\": \"Falu Red\",\n    \"hex\": \"801818\"\n  },\n  {\n    \"name\": \"Red Robin\",\n    \"hex\": \"80341F\"\n  },\n  {\n    \"name\": \"Vivid Violet\",\n    \"hex\": \"803790\"\n  },\n  {\n    \"name\": \"Russet\",\n    \"hex\": \"80461B\"\n  },\n  {\n    \"name\": \"Friar Gray\",\n    \"hex\": \"807E79\"\n  },\n  {\n    \"name\": \"Olive\",\n    \"hex\": \"808000\"\n  },\n  {\n    \"name\": \"Gray\",\n    \"hex\": \"808080\"\n  },\n  {\n    \"name\": \"Gulf Stream\",\n    \"hex\": \"80B3AE\"\n  },\n  {\n    \"name\": \"Glacier\",\n    \"hex\": \"80B3C4\"\n  },\n  {\n    \"name\": \"Seagull\",\n    \"hex\": \"80CCEA\"\n  },\n  {\n    \"name\": \"Nutmeg\",\n    \"hex\": \"81422C\"\n  },\n  {\n    \"name\": \"Spicy Pink\",\n    \"hex\": \"816E71\"\n  },\n  {\n    \"name\": \"Empress\",\n    \"hex\": \"817377\"\n  },\n  {\n    \"name\": \"Spanish Green\",\n    \"hex\": \"819885\"\n  },\n  {\n    \"name\": \"Sand Dune\",\n    \"hex\": \"826F65\"\n  },\n  {\n    \"name\": \"Gunsmoke\",\n    \"hex\": \"828685\"\n  },\n  {\n    \"name\": \"Battleship Gray\",\n    \"hex\": \"828F72\"\n  },\n  {\n    \"name\": \"Merlot\",\n    \"hex\": \"831923\"\n  },\n  {\n    \"name\": \"Shadow\",\n    \"hex\": \"837050\"\n  },\n  {\n    \"name\": \"Chelsea Cucumber\",\n    \"hex\": \"83AA5D\"\n  },\n  {\n    \"name\": \"Monte Carlo\",\n    \"hex\": \"83D0C6\"\n  },\n  {\n    \"name\": \"Plum\",\n    \"hex\": \"843179\"\n  },\n  {\n    \"name\": \"Granny Smith\",\n    \"hex\": \"84A0A0\"\n  },\n  {\n    \"name\": \"Chetwode Blue\",\n    \"hex\": \"8581D9\"\n  },\n  {\n    \"name\": \"Bandicoot\",\n    \"hex\": \"858470\"\n  },\n  {\n    \"name\": \"Bali Hai\",\n    \"hex\": \"859FAF\"\n  },\n  {\n    \"name\": \"Half Baked\",\n    \"hex\": \"85C4CC\"\n  },\n  {\n    \"name\": \"Red Devil\",\n    \"hex\": \"860111\"\n  },\n  {\n    \"name\": \"Lotus\",\n    \"hex\": \"863C3C\"\n  },\n  {\n    \"name\": \"Ironstone\",\n    \"hex\": \"86483C\"\n  },\n  {\n    \"name\": \"Bull Shot\",\n    \"hex\": \"864D1E\"\n  },\n  {\n    \"name\": \"Rusty Nail\",\n    \"hex\": \"86560A\"\n  },\n  {\n    \"name\": \"Bitter\",\n    \"hex\": \"868974\"\n  },\n  {\n    \"name\": \"Regent Gray\",\n    \"hex\": \"86949F\"\n  },\n  {\n    \"name\": \"Disco\",\n    \"hex\": \"871550\"\n  },\n  {\n    \"name\": \"Americano\",\n    \"hex\": \"87756E\"\n  },\n  {\n    \"name\": \"Hurricane\",\n    \"hex\": \"877C7B\"\n  },\n  {\n    \"name\": \"Oslo Gray\",\n    \"hex\": \"878D91\"\n  },\n  {\n    \"name\": \"Sushi\",\n    \"hex\": \"87AB39\"\n  },\n  {\n    \"name\": \"Spicy Mix\",\n    \"hex\": \"885342\"\n  },\n  {\n    \"name\": \"Kumera\",\n    \"hex\": \"886221\"\n  },\n  {\n    \"name\": \"Suva Gray\",\n    \"hex\": \"888387\"\n  },\n  {\n    \"name\": \"Avocado\",\n    \"hex\": \"888D65\"\n  },\n  {\n    \"name\": \"Camelot\",\n    \"hex\": \"893456\"\n  },\n  {\n    \"name\": \"Solid Pink\",\n    \"hex\": \"893843\"\n  },\n  {\n    \"name\": \"Cannon Pink\",\n    \"hex\": \"894367\"\n  },\n  {\n    \"name\": \"Makara\",\n    \"hex\": \"897D6D\"\n  },\n  {\n    \"name\": \"Burnt Umber\",\n    \"hex\": \"8A3324\"\n  },\n  {\n    \"name\": \"True V\",\n    \"hex\": \"8A73D6\"\n  },\n  {\n    \"name\": \"Clay Creek\",\n    \"hex\": \"8A8360\"\n  },\n  {\n    \"name\": \"Monsoon\",\n    \"hex\": \"8A8389\"\n  },\n  {\n    \"name\": \"Stack\",\n    \"hex\": \"8A8F8A\"\n  },\n  {\n    \"name\": \"Jordy Blue\",\n    \"hex\": \"8AB9F1\"\n  },\n  {\n    \"name\": \"Electric Violet\",\n    \"hex\": \"8B00FF\"\n  },\n  {\n    \"name\": \"Monarch\",\n    \"hex\": \"8B0723\"\n  },\n  {\n    \"name\": \"Corn Harvest\",\n    \"hex\": \"8B6B0B\"\n  },\n  {\n    \"name\": \"Olive Haze\",\n    \"hex\": \"8B8470\"\n  },\n  {\n    \"name\": \"Schooner\",\n    \"hex\": \"8B847E\"\n  },\n  {\n    \"name\": \"Natural Gray\",\n    \"hex\": \"8B8680\"\n  },\n  {\n    \"name\": \"Mantle\",\n    \"hex\": \"8B9C90\"\n  },\n  {\n    \"name\": \"Portage\",\n    \"hex\": \"8B9FEE\"\n  },\n  {\n    \"name\": \"Envy\",\n    \"hex\": \"8BA690\"\n  },\n  {\n    \"name\": \"Cascade\",\n    \"hex\": \"8BA9A5\"\n  },\n  {\n    \"name\": \"Riptide\",\n    \"hex\": \"8BE6D8\"\n  },\n  {\n    \"name\": \"Cardinal Pink\",\n    \"hex\": \"8C055E\"\n  },\n  {\n    \"name\": \"Mule Fawn\",\n    \"hex\": \"8C472F\"\n  },\n  {\n    \"name\": \"Potters Clay\",\n    \"hex\": \"8C5738\"\n  },\n  {\n    \"name\": \"Trendy Pink\",\n    \"hex\": \"8C6495\"\n  },\n  {\n    \"name\": \"Paprika\",\n    \"hex\": \"8D0226\"\n  },\n  {\n    \"name\": \"Sanguine Brown\",\n    \"hex\": \"8D3D38\"\n  },\n  {\n    \"name\": \"Tosca\",\n    \"hex\": \"8D3F3F\"\n  },\n  {\n    \"name\": \"Cement\",\n    \"hex\": \"8D7662\"\n  },\n  {\n    \"name\": \"Granite Green\",\n    \"hex\": \"8D8974\"\n  },\n  {\n    \"name\": \"Manatee\",\n    \"hex\": \"8D90A1\"\n  },\n  {\n    \"name\": \"Polo Blue\",\n    \"hex\": \"8DA8CC\"\n  },\n  {\n    \"name\": \"Red Berry\",\n    \"hex\": \"8E0000\"\n  },\n  {\n    \"name\": \"Rope\",\n    \"hex\": \"8E4D1E\"\n  },\n  {\n    \"name\": \"Opium\",\n    \"hex\": \"8E6F70\"\n  },\n  {\n    \"name\": \"Domino\",\n    \"hex\": \"8E775E\"\n  },\n  {\n    \"name\": \"Mamba\",\n    \"hex\": \"8E8190\"\n  },\n  {\n    \"name\": \"Nepal\",\n    \"hex\": \"8EABC1\"\n  },\n  {\n    \"name\": \"Pohutukawa\",\n    \"hex\": \"8F021C\"\n  },\n  {\n    \"name\": \"El Salva\",\n    \"hex\": \"8F3E33\"\n  },\n  {\n    \"name\": \"Korma\",\n    \"hex\": \"8F4B0E\"\n  },\n  {\n    \"name\": \"Squirrel\",\n    \"hex\": \"8F8176\"\n  },\n  {\n    \"name\": \"Vista Blue\",\n    \"hex\": \"8FD6B4\"\n  },\n  {\n    \"name\": \"Burgundy\",\n    \"hex\": \"900020\"\n  },\n  {\n    \"name\": \"Old Brick\",\n    \"hex\": \"901E1E\"\n  },\n  {\n    \"name\": \"Hemp\",\n    \"hex\": \"907874\"\n  },\n  {\n    \"name\": \"Almond Frost\",\n    \"hex\": \"907B71\"\n  },\n  {\n    \"name\": \"Sycamore\",\n    \"hex\": \"908D39\"\n  },\n  {\n    \"name\": \"Sangria\",\n    \"hex\": \"92000A\"\n  },\n  {\n    \"name\": \"Cumin\",\n    \"hex\": \"924321\"\n  },\n  {\n    \"name\": \"Beaver\",\n    \"hex\": \"926F5B\"\n  },\n  {\n    \"name\": \"Stonewall\",\n    \"hex\": \"928573\"\n  },\n  {\n    \"name\": \"Venus\",\n    \"hex\": \"928590\"\n  },\n  {\n    \"name\": \"Medium Purple\",\n    \"hex\": \"9370DB\"\n  },\n  {\n    \"name\": \"Cornflower\",\n    \"hex\": \"93CCEA\"\n  },\n  {\n    \"name\": \"Algae Green\",\n    \"hex\": \"93DFB8\"\n  },\n  {\n    \"name\": \"Copper Rust\",\n    \"hex\": \"944747\"\n  },\n  {\n    \"name\": \"Arrowtown\",\n    \"hex\": \"948771\"\n  },\n  {\n    \"name\": \"Scarlett\",\n    \"hex\": \"950015\"\n  },\n  {\n    \"name\": \"Strikemaster\",\n    \"hex\": \"956387\"\n  },\n  {\n    \"name\": \"Mountain Mist\",\n    \"hex\": \"959396\"\n  },\n  {\n    \"name\": \"Carmine\",\n    \"hex\": \"960018\"\n  },\n  {\n    \"name\": \"Brown\",\n    \"hex\": \"964B00\"\n  },\n  {\n    \"name\": \"Leather\",\n    \"hex\": \"967059\"\n  },\n  {\n    \"name\": \"Purple Mountain's Majesty\",\n    \"hex\": \"9678B6\"\n  },\n  {\n    \"name\": \"Lavender Purple\",\n    \"hex\": \"967BB6\"\n  },\n  {\n    \"name\": \"Pewter\",\n    \"hex\": \"96A8A1\"\n  },\n  {\n    \"name\": \"Summer Green\",\n    \"hex\": \"96BBAB\"\n  },\n  {\n    \"name\": \"Au Chico\",\n    \"hex\": \"97605D\"\n  },\n  {\n    \"name\": \"Wisteria\",\n    \"hex\": \"9771B5\"\n  },\n  {\n    \"name\": \"Atlantis\",\n    \"hex\": \"97CD2D\"\n  },\n  {\n    \"name\": \"Vin Rouge\",\n    \"hex\": \"983D61\"\n  },\n  {\n    \"name\": \"Lilac Bush\",\n    \"hex\": \"9874D3\"\n  },\n  {\n    \"name\": \"Bazaar\",\n    \"hex\": \"98777B\"\n  },\n  {\n    \"name\": \"Hacienda\",\n    \"hex\": \"98811B\"\n  },\n  {\n    \"name\": \"Pale Oyster\",\n    \"hex\": \"988D77\"\n  },\n  {\n    \"name\": \"Mint Green\",\n    \"hex\": \"98FF98\"\n  },\n  {\n    \"name\": \"Fresh Eggplant\",\n    \"hex\": \"990066\"\n  },\n  {\n    \"name\": \"Violet Eggplant\",\n    \"hex\": \"991199\"\n  },\n  {\n    \"name\": \"Tamarillo\",\n    \"hex\": \"991613\"\n  },\n  {\n    \"name\": \"Totem Pole\",\n    \"hex\": \"991B07\"\n  },\n  {\n    \"name\": \"Copper Rose\",\n    \"hex\": \"996666\"\n  },\n  {\n    \"name\": \"Amethyst\",\n    \"hex\": \"9966CC\"\n  },\n  {\n    \"name\": \"Mountbatten Pink\",\n    \"hex\": \"997A8D\"\n  },\n  {\n    \"name\": \"Blue Bell\",\n    \"hex\": \"9999CC\"\n  },\n  {\n    \"name\": \"Prairie Sand\",\n    \"hex\": \"9A3820\"\n  },\n  {\n    \"name\": \"Toast\",\n    \"hex\": \"9A6E61\"\n  },\n  {\n    \"name\": \"Gurkha\",\n    \"hex\": \"9A9577\"\n  },\n  {\n    \"name\": \"Olivine\",\n    \"hex\": \"9AB973\"\n  },\n  {\n    \"name\": \"Shadow Green\",\n    \"hex\": \"9AC2B8\"\n  },\n  {\n    \"name\": \"Oregon\",\n    \"hex\": \"9B4703\"\n  },\n  {\n    \"name\": \"Lemon Grass\",\n    \"hex\": \"9B9E8F\"\n  },\n  {\n    \"name\": \"Stiletto\",\n    \"hex\": \"9C3336\"\n  },\n  {\n    \"name\": \"Hawaiian Tan\",\n    \"hex\": \"9D5616\"\n  },\n  {\n    \"name\": \"Gull Gray\",\n    \"hex\": \"9DACB7\"\n  },\n  {\n    \"name\": \"Pistachio\",\n    \"hex\": \"9DC209\"\n  },\n  {\n    \"name\": \"Granny Smith Apple\",\n    \"hex\": \"9DE093\"\n  },\n  {\n    \"name\": \"Anakiwa\",\n    \"hex\": \"9DE5FF\"\n  },\n  {\n    \"name\": \"Chelsea Gem\",\n    \"hex\": \"9E5302\"\n  },\n  {\n    \"name\": \"Sepia Skin\",\n    \"hex\": \"9E5B40\"\n  },\n  {\n    \"name\": \"Sage\",\n    \"hex\": \"9EA587\"\n  },\n  {\n    \"name\": \"Citron\",\n    \"hex\": \"9EA91F\"\n  },\n  {\n    \"name\": \"Rock Blue\",\n    \"hex\": \"9EB1CD\"\n  },\n  {\n    \"name\": \"Morning Glory\",\n    \"hex\": \"9EDEE0\"\n  },\n  {\n    \"name\": \"Cognac\",\n    \"hex\": \"9F381D\"\n  },\n  {\n    \"name\": \"Reef Gold\",\n    \"hex\": \"9F821C\"\n  },\n  {\n    \"name\": \"Star Dust\",\n    \"hex\": \"9F9F9C\"\n  },\n  {\n    \"name\": \"Santas Gray\",\n    \"hex\": \"9FA0B1\"\n  },\n  {\n    \"name\": \"Sinbad\",\n    \"hex\": \"9FD7D3\"\n  },\n  {\n    \"name\": \"Feijoa\",\n    \"hex\": \"9FDD8C\"\n  },\n  {\n    \"name\": \"Tabasco\",\n    \"hex\": \"A02712\"\n  },\n  {\n    \"name\": \"Buttered Rum\",\n    \"hex\": \"A1750D\"\n  },\n  {\n    \"name\": \"Hit Gray\",\n    \"hex\": \"A1ADB5\"\n  },\n  {\n    \"name\": \"Citrus\",\n    \"hex\": \"A1C50A\"\n  },\n  {\n    \"name\": \"Aqua Island\",\n    \"hex\": \"A1DAD7\"\n  },\n  {\n    \"name\": \"Water Leaf\",\n    \"hex\": \"A1E9DE\"\n  },\n  {\n    \"name\": \"Flirt\",\n    \"hex\": \"A2006D\"\n  },\n  {\n    \"name\": \"Rouge\",\n    \"hex\": \"A23B6C\"\n  },\n  {\n    \"name\": \"Cape Palliser\",\n    \"hex\": \"A26645\"\n  },\n  {\n    \"name\": \"Gray Chateau\",\n    \"hex\": \"A2AAB3\"\n  },\n  {\n    \"name\": \"Edward\",\n    \"hex\": \"A2AEAB\"\n  },\n  {\n    \"name\": \"Pharlap\",\n    \"hex\": \"A3807B\"\n  },\n  {\n    \"name\": \"Amethyst Smoke\",\n    \"hex\": \"A397B4\"\n  },\n  {\n    \"name\": \"Blizzard Blue\",\n    \"hex\": \"A3E3ED\"\n  },\n  {\n    \"name\": \"Delta\",\n    \"hex\": \"A4A49D\"\n  },\n  {\n    \"name\": \"Wistful\",\n    \"hex\": \"A4A6D3\"\n  },\n  {\n    \"name\": \"Green Smoke\",\n    \"hex\": \"A4AF6E\"\n  },\n  {\n    \"name\": \"Jazzberry Jam\",\n    \"hex\": \"A50B5E\"\n  },\n  {\n    \"name\": \"Zorba\",\n    \"hex\": \"A59B91\"\n  },\n  {\n    \"name\": \"Bahia\",\n    \"hex\": \"A5CB0C\"\n  },\n  {\n    \"name\": \"Roof Terracotta\",\n    \"hex\": \"A62F20\"\n  },\n  {\n    \"name\": \"Paarl\",\n    \"hex\": \"A65529\"\n  },\n  {\n    \"name\": \"Barley Corn\",\n    \"hex\": \"A68B5B\"\n  },\n  {\n    \"name\": \"Donkey Brown\",\n    \"hex\": \"A69279\"\n  },\n  {\n    \"name\": \"Dawn\",\n    \"hex\": \"A6A29A\"\n  },\n  {\n    \"name\": \"Mexican Red\",\n    \"hex\": \"A72525\"\n  },\n  {\n    \"name\": \"Luxor Gold\",\n    \"hex\": \"A7882C\"\n  },\n  {\n    \"name\": \"Rich Gold\",\n    \"hex\": \"A85307\"\n  },\n  {\n    \"name\": \"Reno Sand\",\n    \"hex\": \"A86515\"\n  },\n  {\n    \"name\": \"Coral Tree\",\n    \"hex\": \"A86B6B\"\n  },\n  {\n    \"name\": \"Dusty Gray\",\n    \"hex\": \"A8989B\"\n  },\n  {\n    \"name\": \"Dull Lavender\",\n    \"hex\": \"A899E6\"\n  },\n  {\n    \"name\": \"Tallow\",\n    \"hex\": \"A8A589\"\n  },\n  {\n    \"name\": \"Bud\",\n    \"hex\": \"A8AE9C\"\n  },\n  {\n    \"name\": \"Locust\",\n    \"hex\": \"A8AF8E\"\n  },\n  {\n    \"name\": \"Norway\",\n    \"hex\": \"A8BD9F\"\n  },\n  {\n    \"name\": \"Chinook\",\n    \"hex\": \"A8E3BD\"\n  },\n  {\n    \"name\": \"Gray Olive\",\n    \"hex\": \"A9A491\"\n  },\n  {\n    \"name\": \"Aluminium\",\n    \"hex\": \"A9ACB6\"\n  },\n  {\n    \"name\": \"Cadet Blue\",\n    \"hex\": \"A9B2C3\"\n  },\n  {\n    \"name\": \"Schist\",\n    \"hex\": \"A9B497\"\n  },\n  {\n    \"name\": \"Tower Gray\",\n    \"hex\": \"A9BDBF\"\n  },\n  {\n    \"name\": \"Perano\",\n    \"hex\": \"A9BEF2\"\n  },\n  {\n    \"name\": \"Opal\",\n    \"hex\": \"A9C6C2\"\n  },\n  {\n    \"name\": \"Night Shadz\",\n    \"hex\": \"AA375A\"\n  },\n  {\n    \"name\": \"Fire\",\n    \"hex\": \"AA4203\"\n  },\n  {\n    \"name\": \"Muesli\",\n    \"hex\": \"AA8B5B\"\n  },\n  {\n    \"name\": \"Sandal\",\n    \"hex\": \"AA8D6F\"\n  },\n  {\n    \"name\": \"Shady Lady\",\n    \"hex\": \"AAA5A9\"\n  },\n  {\n    \"name\": \"Logan\",\n    \"hex\": \"AAA9CD\"\n  },\n  {\n    \"name\": \"Spun Pearl\",\n    \"hex\": \"AAABB7\"\n  },\n  {\n    \"name\": \"Regent St Blue\",\n    \"hex\": \"AAD6E6\"\n  },\n  {\n    \"name\": \"Magic Mint\",\n    \"hex\": \"AAF0D1\"\n  },\n  {\n    \"name\": \"Lipstick\",\n    \"hex\": \"AB0563\"\n  },\n  {\n    \"name\": \"Royal Heath\",\n    \"hex\": \"AB3472\"\n  },\n  {\n    \"name\": \"Sandrift\",\n    \"hex\": \"AB917A\"\n  },\n  {\n    \"name\": \"Cold Purple\",\n    \"hex\": \"ABA0D9\"\n  },\n  {\n    \"name\": \"Bronco\",\n    \"hex\": \"ABA196\"\n  },\n  {\n    \"name\": \"Limed Oak\",\n    \"hex\": \"AC8A56\"\n  },\n  {\n    \"name\": \"East Side\",\n    \"hex\": \"AC91CE\"\n  },\n  {\n    \"name\": \"Lemon Ginger\",\n    \"hex\": \"AC9E22\"\n  },\n  {\n    \"name\": \"Napa\",\n    \"hex\": \"ACA494\"\n  },\n  {\n    \"name\": \"Hillary\",\n    \"hex\": \"ACA586\"\n  },\n  {\n    \"name\": \"Cloudy\",\n    \"hex\": \"ACA59F\"\n  },\n  {\n    \"name\": \"Silver Chalice\",\n    \"hex\": \"ACACAC\"\n  },\n  {\n    \"name\": \"Swamp Green\",\n    \"hex\": \"ACB78E\"\n  },\n  {\n    \"name\": \"Spring Rain\",\n    \"hex\": \"ACCBB1\"\n  },\n  {\n    \"name\": \"Conifer\",\n    \"hex\": \"ACDD4D\"\n  },\n  {\n    \"name\": \"Celadon\",\n    \"hex\": \"ACE1AF\"\n  },\n  {\n    \"name\": \"Mandalay\",\n    \"hex\": \"AD781B\"\n  },\n  {\n    \"name\": \"Casper\",\n    \"hex\": \"ADBED1\"\n  },\n  {\n    \"name\": \"Moss Green\",\n    \"hex\": \"ADDFAD\"\n  },\n  {\n    \"name\": \"Padua\",\n    \"hex\": \"ADE6C4\"\n  },\n  {\n    \"name\": \"Green Yellow\",\n    \"hex\": \"ADFF2F\"\n  },\n  {\n    \"name\": \"Hippie Pink\",\n    \"hex\": \"AE4560\"\n  },\n  {\n    \"name\": \"Desert\",\n    \"hex\": \"AE6020\"\n  },\n  {\n    \"name\": \"Bouquet\",\n    \"hex\": \"AE809E\"\n  },\n  {\n    \"name\": \"Medium Carmine\",\n    \"hex\": \"AF4035\"\n  },\n  {\n    \"name\": \"Apple Blossom\",\n    \"hex\": \"AF4D43\"\n  },\n  {\n    \"name\": \"Brown Rust\",\n    \"hex\": \"AF593E\"\n  },\n  {\n    \"name\": \"Driftwood\",\n    \"hex\": \"AF8751\"\n  },\n  {\n    \"name\": \"Alpine\",\n    \"hex\": \"AF8F2C\"\n  },\n  {\n    \"name\": \"Lucky\",\n    \"hex\": \"AF9F1C\"\n  },\n  {\n    \"name\": \"Martini\",\n    \"hex\": \"AFA09E\"\n  },\n  {\n    \"name\": \"Bombay\",\n    \"hex\": \"AFB1B8\"\n  },\n  {\n    \"name\": \"Pigeon Post\",\n    \"hex\": \"AFBDD9\"\n  },\n  {\n    \"name\": \"Cadillac\",\n    \"hex\": \"B04C6A\"\n  },\n  {\n    \"name\": \"Matrix\",\n    \"hex\": \"B05D54\"\n  },\n  {\n    \"name\": \"Tapestry\",\n    \"hex\": \"B05E81\"\n  },\n  {\n    \"name\": \"Mai Tai\",\n    \"hex\": \"B06608\"\n  },\n  {\n    \"name\": \"Del Rio\",\n    \"hex\": \"B09A95\"\n  },\n  {\n    \"name\": \"Powder Blue\",\n    \"hex\": \"B0E0E6\"\n  },\n  {\n    \"name\": \"Inch Worm\",\n    \"hex\": \"B0E313\"\n  },\n  {\n    \"name\": \"Bright Red\",\n    \"hex\": \"B10000\"\n  },\n  {\n    \"name\": \"Vesuvius\",\n    \"hex\": \"B14A0B\"\n  },\n  {\n    \"name\": \"Pumpkin Skin\",\n    \"hex\": \"B1610B\"\n  },\n  {\n    \"name\": \"Santa Fe\",\n    \"hex\": \"B16D52\"\n  },\n  {\n    \"name\": \"Teak\",\n    \"hex\": \"B19461\"\n  },\n  {\n    \"name\": \"Fringy Flower\",\n    \"hex\": \"B1E2C1\"\n  },\n  {\n    \"name\": \"Ice Cold\",\n    \"hex\": \"B1F4E7\"\n  },\n  {\n    \"name\": \"Shiraz\",\n    \"hex\": \"B20931\"\n  },\n  {\n    \"name\": \"Biloba Flower\",\n    \"hex\": \"B2A1EA\"\n  },\n  {\n    \"name\": \"Tall Poppy\",\n    \"hex\": \"B32D29\"\n  },\n  {\n    \"name\": \"Fiery Orange\",\n    \"hex\": \"B35213\"\n  },\n  {\n    \"name\": \"Hot Toddy\",\n    \"hex\": \"B38007\"\n  },\n  {\n    \"name\": \"Taupe Gray\",\n    \"hex\": \"B3AF95\"\n  },\n  {\n    \"name\": \"La Rioja\",\n    \"hex\": \"B3C110\"\n  },\n  {\n    \"name\": \"Well Read\",\n    \"hex\": \"B43332\"\n  },\n  {\n    \"name\": \"Blush\",\n    \"hex\": \"B44668\"\n  },\n  {\n    \"name\": \"Jungle Mist\",\n    \"hex\": \"B4CFD3\"\n  },\n  {\n    \"name\": \"Turkish Rose\",\n    \"hex\": \"B57281\"\n  },\n  {\n    \"name\": \"Lavender\",\n    \"hex\": \"B57EDC\"\n  },\n  {\n    \"name\": \"Mongoose\",\n    \"hex\": \"B5A27F\"\n  },\n  {\n    \"name\": \"Olive Green\",\n    \"hex\": \"B5B35C\"\n  },\n  {\n    \"name\": \"Jet Stream\",\n    \"hex\": \"B5D2CE\"\n  },\n  {\n    \"name\": \"Cruise\",\n    \"hex\": \"B5ECDF\"\n  },\n  {\n    \"name\": \"Hibiscus\",\n    \"hex\": \"B6316C\"\n  },\n  {\n    \"name\": \"Thatch\",\n    \"hex\": \"B69D98\"\n  },\n  {\n    \"name\": \"Heathered Gray\",\n    \"hex\": \"B6B095\"\n  },\n  {\n    \"name\": \"Eagle\",\n    \"hex\": \"B6BAA4\"\n  },\n  {\n    \"name\": \"Spindle\",\n    \"hex\": \"B6D1EA\"\n  },\n  {\n    \"name\": \"Gum Leaf\",\n    \"hex\": \"B6D3BF\"\n  },\n  {\n    \"name\": \"Rust\",\n    \"hex\": \"B7410E\"\n  },\n  {\n    \"name\": \"Muddy Waters\",\n    \"hex\": \"B78E5C\"\n  },\n  {\n    \"name\": \"Sahara\",\n    \"hex\": \"B7A214\"\n  },\n  {\n    \"name\": \"Husk\",\n    \"hex\": \"B7A458\"\n  },\n  {\n    \"name\": \"Nobel\",\n    \"hex\": \"B7B1B1\"\n  },\n  {\n    \"name\": \"Heather\",\n    \"hex\": \"B7C3D0\"\n  },\n  {\n    \"name\": \"Madang\",\n    \"hex\": \"B7F0BE\"\n  },\n  {\n    \"name\": \"Milano Red\",\n    \"hex\": \"B81104\"\n  },\n  {\n    \"name\": \"Copper\",\n    \"hex\": \"B87333\"\n  },\n  {\n    \"name\": \"Gimblet\",\n    \"hex\": \"B8B56A\"\n  },\n  {\n    \"name\": \"Green Spring\",\n    \"hex\": \"B8C1B1\"\n  },\n  {\n    \"name\": \"Celery\",\n    \"hex\": \"B8C25D\"\n  },\n  {\n    \"name\": \"Sail\",\n    \"hex\": \"B8E0F9\"\n  },\n  {\n    \"name\": \"Chestnut\",\n    \"hex\": \"B94E48\"\n  },\n  {\n    \"name\": \"Crail\",\n    \"hex\": \"B95140\"\n  },\n  {\n    \"name\": \"Marigold\",\n    \"hex\": \"B98D28\"\n  },\n  {\n    \"name\": \"Wild Willow\",\n    \"hex\": \"B9C46A\"\n  },\n  {\n    \"name\": \"Rainee\",\n    \"hex\": \"B9C8AC\"\n  },\n  {\n    \"name\": \"Guardsman Red\",\n    \"hex\": \"BA0101\"\n  },\n  {\n    \"name\": \"Rock Spray\",\n    \"hex\": \"BA450C\"\n  },\n  {\n    \"name\": \"Bourbon\",\n    \"hex\": \"BA6F1E\"\n  },\n  {\n    \"name\": \"Pirate Gold\",\n    \"hex\": \"BA7F03\"\n  },\n  {\n    \"name\": \"Nomad\",\n    \"hex\": \"BAB1A2\"\n  },\n  {\n    \"name\": \"Submarine\",\n    \"hex\": \"BAC7C9\"\n  },\n  {\n    \"name\": \"Charlotte\",\n    \"hex\": \"BAEEF9\"\n  },\n  {\n    \"name\": \"Medium Red Violet\",\n    \"hex\": \"BB3385\"\n  },\n  {\n    \"name\": \"Brandy Rose\",\n    \"hex\": \"BB8983\"\n  },\n  {\n    \"name\": \"Rio Grande\",\n    \"hex\": \"BBD009\"\n  },\n  {\n    \"name\": \"Surf\",\n    \"hex\": \"BBD7C1\"\n  },\n  {\n    \"name\": \"Powder Ash\",\n    \"hex\": \"BCC9C2\"\n  },\n  {\n    \"name\": \"Tuscany\",\n    \"hex\": \"BD5E2E\"\n  },\n  {\n    \"name\": \"Quicksand\",\n    \"hex\": \"BD978E\"\n  },\n  {\n    \"name\": \"Silk\",\n    \"hex\": \"BDB1A8\"\n  },\n  {\n    \"name\": \"Malta\",\n    \"hex\": \"BDB2A1\"\n  },\n  {\n    \"name\": \"Chatelle\",\n    \"hex\": \"BDB3C7\"\n  },\n  {\n    \"name\": \"Lavender Gray\",\n    \"hex\": \"BDBBD7\"\n  },\n  {\n    \"name\": \"French Gray\",\n    \"hex\": \"BDBDC6\"\n  },\n  {\n    \"name\": \"Clay Ash\",\n    \"hex\": \"BDC8B3\"\n  },\n  {\n    \"name\": \"Loblolly\",\n    \"hex\": \"BDC9CE\"\n  },\n  {\n    \"name\": \"French Pass\",\n    \"hex\": \"BDEDFD\"\n  },\n  {\n    \"name\": \"London Hue\",\n    \"hex\": \"BEA6C3\"\n  },\n  {\n    \"name\": \"Pink Swan\",\n    \"hex\": \"BEB5B7\"\n  },\n  {\n    \"name\": \"Fuego\",\n    \"hex\": \"BEDE0D\"\n  },\n  {\n    \"name\": \"Rose of Sharon\",\n    \"hex\": \"BF5500\"\n  },\n  {\n    \"name\": \"Tide\",\n    \"hex\": \"BFB8B0\"\n  },\n  {\n    \"name\": \"Blue Haze\",\n    \"hex\": \"BFBED8\"\n  },\n  {\n    \"name\": \"Silver Sand\",\n    \"hex\": \"BFC1C2\"\n  },\n  {\n    \"name\": \"Key Lime Pie\",\n    \"hex\": \"BFC921\"\n  },\n  {\n    \"name\": \"Ziggurat\",\n    \"hex\": \"BFDBE2\"\n  },\n  {\n    \"name\": \"Lime\",\n    \"hex\": \"BFFF00\"\n  },\n  {\n    \"name\": \"Thunderbird\",\n    \"hex\": \"C02B18\"\n  },\n  {\n    \"name\": \"Mojo\",\n    \"hex\": \"C04737\"\n  },\n  {\n    \"name\": \"Old Rose\",\n    \"hex\": \"C08081\"\n  },\n  {\n    \"name\": \"Silver\",\n    \"hex\": \"C0C0C0\"\n  },\n  {\n    \"name\": \"Pale Leaf\",\n    \"hex\": \"C0D3B9\"\n  },\n  {\n    \"name\": \"Pixie Green\",\n    \"hex\": \"C0D8B6\"\n  },\n  {\n    \"name\": \"Tia Maria\",\n    \"hex\": \"C1440E\"\n  },\n  {\n    \"name\": \"Fuchsia Pink\",\n    \"hex\": \"C154C1\"\n  },\n  {\n    \"name\": \"Buddha Gold\",\n    \"hex\": \"C1A004\"\n  },\n  {\n    \"name\": \"Bison Hide\",\n    \"hex\": \"C1B7A4\"\n  },\n  {\n    \"name\": \"Tea\",\n    \"hex\": \"C1BAB0\"\n  },\n  {\n    \"name\": \"Gray Suit\",\n    \"hex\": \"C1BECD\"\n  },\n  {\n    \"name\": \"Sprout\",\n    \"hex\": \"C1D7B0\"\n  },\n  {\n    \"name\": \"Sulu\",\n    \"hex\": \"C1F07C\"\n  },\n  {\n    \"name\": \"Indochine\",\n    \"hex\": \"C26B03\"\n  },\n  {\n    \"name\": \"Twine\",\n    \"hex\": \"C2955D\"\n  },\n  {\n    \"name\": \"Cotton Seed\",\n    \"hex\": \"C2BDB6\"\n  },\n  {\n    \"name\": \"Pumice\",\n    \"hex\": \"C2CAC4\"\n  },\n  {\n    \"name\": \"Jagged Ice\",\n    \"hex\": \"C2E8E5\"\n  },\n  {\n    \"name\": \"Maroon Flush\",\n    \"hex\": \"C32148\"\n  },\n  {\n    \"name\": \"Indian Khaki\",\n    \"hex\": \"C3B091\"\n  },\n  {\n    \"name\": \"Pale Slate\",\n    \"hex\": \"C3BFC1\"\n  },\n  {\n    \"name\": \"Gray Nickel\",\n    \"hex\": \"C3C3BD\"\n  },\n  {\n    \"name\": \"Periwinkle Gray\",\n    \"hex\": \"C3CDE6\"\n  },\n  {\n    \"name\": \"Tiara\",\n    \"hex\": \"C3D1D1\"\n  },\n  {\n    \"name\": \"Tropical Blue\",\n    \"hex\": \"C3DDF9\"\n  },\n  {\n    \"name\": \"Cardinal\",\n    \"hex\": \"C41E3A\"\n  },\n  {\n    \"name\": \"Fuzzy Wuzzy Brown\",\n    \"hex\": \"C45655\"\n  },\n  {\n    \"name\": \"Orange Roughy\",\n    \"hex\": \"C45719\"\n  },\n  {\n    \"name\": \"Mist Gray\",\n    \"hex\": \"C4C4BC\"\n  },\n  {\n    \"name\": \"Coriander\",\n    \"hex\": \"C4D0B0\"\n  },\n  {\n    \"name\": \"Mint Tulip\",\n    \"hex\": \"C4F4EB\"\n  },\n  {\n    \"name\": \"Mulberry\",\n    \"hex\": \"C54B8C\"\n  },\n  {\n    \"name\": \"Nugget\",\n    \"hex\": \"C59922\"\n  },\n  {\n    \"name\": \"Tussock\",\n    \"hex\": \"C5994B\"\n  },\n  {\n    \"name\": \"Sea Mist\",\n    \"hex\": \"C5DBCA\"\n  },\n  {\n    \"name\": \"Yellow Green\",\n    \"hex\": \"C5E17A\"\n  },\n  {\n    \"name\": \"Brick Red\",\n    \"hex\": \"C62D42\"\n  },\n  {\n    \"name\": \"Contessa\",\n    \"hex\": \"C6726B\"\n  },\n  {\n    \"name\": \"Oriental Pink\",\n    \"hex\": \"C69191\"\n  },\n  {\n    \"name\": \"Roti\",\n    \"hex\": \"C6A84B\"\n  },\n  {\n    \"name\": \"Ash\",\n    \"hex\": \"C6C3B5\"\n  },\n  {\n    \"name\": \"Kangaroo\",\n    \"hex\": \"C6C8BD\"\n  },\n  {\n    \"name\": \"Las Palmas\",\n    \"hex\": \"C6E610\"\n  },\n  {\n    \"name\": \"Monza\",\n    \"hex\": \"C7031E\"\n  },\n  {\n    \"name\": \"Red Violet\",\n    \"hex\": \"C71585\"\n  },\n  {\n    \"name\": \"Coral Reef\",\n    \"hex\": \"C7BCA2\"\n  },\n  {\n    \"name\": \"Melrose\",\n    \"hex\": \"C7C1FF\"\n  },\n  {\n    \"name\": \"Cloud\",\n    \"hex\": \"C7C4BF\"\n  },\n  {\n    \"name\": \"Ghost\",\n    \"hex\": \"C7C9D5\"\n  },\n  {\n    \"name\": \"Pine Glade\",\n    \"hex\": \"C7CD90\"\n  },\n  {\n    \"name\": \"Botticelli\",\n    \"hex\": \"C7DDE5\"\n  },\n  {\n    \"name\": \"Antique Brass\",\n    \"hex\": \"C88A65\"\n  },\n  {\n    \"name\": \"Lilac\",\n    \"hex\": \"C8A2C8\"\n  },\n  {\n    \"name\": \"Hokey Pokey\",\n    \"hex\": \"C8A528\"\n  },\n  {\n    \"name\": \"Lily\",\n    \"hex\": \"C8AABF\"\n  },\n  {\n    \"name\": \"Laser\",\n    \"hex\": \"C8B568\"\n  },\n  {\n    \"name\": \"Edgewater\",\n    \"hex\": \"C8E3D7\"\n  },\n  {\n    \"name\": \"Piper\",\n    \"hex\": \"C96323\"\n  },\n  {\n    \"name\": \"Pizza\",\n    \"hex\": \"C99415\"\n  },\n  {\n    \"name\": \"Light Wisteria\",\n    \"hex\": \"C9A0DC\"\n  },\n  {\n    \"name\": \"Rodeo Dust\",\n    \"hex\": \"C9B29B\"\n  },\n  {\n    \"name\": \"Sundance\",\n    \"hex\": \"C9B35B\"\n  },\n  {\n    \"name\": \"Earls Green\",\n    \"hex\": \"C9B93B\"\n  },\n  {\n    \"name\": \"Silver Rust\",\n    \"hex\": \"C9C0BB\"\n  },\n  {\n    \"name\": \"Conch\",\n    \"hex\": \"C9D9D2\"\n  },\n  {\n    \"name\": \"Reef\",\n    \"hex\": \"C9FFA2\"\n  },\n  {\n    \"name\": \"Aero Blue\",\n    \"hex\": \"C9FFE5\"\n  },\n  {\n    \"name\": \"Flush Mahogany\",\n    \"hex\": \"CA3435\"\n  },\n  {\n    \"name\": \"Turmeric\",\n    \"hex\": \"CABB48\"\n  },\n  {\n    \"name\": \"Paris White\",\n    \"hex\": \"CADCD4\"\n  },\n  {\n    \"name\": \"Bitter Lemon\",\n    \"hex\": \"CAE00D\"\n  },\n  {\n    \"name\": \"Skeptic\",\n    \"hex\": \"CAE6DA\"\n  },\n  {\n    \"name\": \"Viola\",\n    \"hex\": \"CB8FA9\"\n  },\n  {\n    \"name\": \"Foggy Gray\",\n    \"hex\": \"CBCAB6\"\n  },\n  {\n    \"name\": \"Green Mist\",\n    \"hex\": \"CBD3B0\"\n  },\n  {\n    \"name\": \"Nebula\",\n    \"hex\": \"CBDBD6\"\n  },\n  {\n    \"name\": \"Persian Red\",\n    \"hex\": \"CC3333\"\n  },\n  {\n    \"name\": \"Burnt Orange\",\n    \"hex\": \"CC5500\"\n  },\n  {\n    \"name\": \"Ochre\",\n    \"hex\": \"CC7722\"\n  },\n  {\n    \"name\": \"Puce\",\n    \"hex\": \"CC8899\"\n  },\n  {\n    \"name\": \"Thistle Green\",\n    \"hex\": \"CCCAA8\"\n  },\n  {\n    \"name\": \"Periwinkle\",\n    \"hex\": \"CCCCFF\"\n  },\n  {\n    \"name\": \"Electric Lime\",\n    \"hex\": \"CCFF00\"\n  },\n  {\n    \"name\": \"Tenn\",\n    \"hex\": \"CD5700\"\n  },\n  {\n    \"name\": \"Chestnut Rose\",\n    \"hex\": \"CD5C5C\"\n  },\n  {\n    \"name\": \"Brandy Punch\",\n    \"hex\": \"CD8429\"\n  },\n  {\n    \"name\": \"Onahau\",\n    \"hex\": \"CDF4FF\"\n  },\n  {\n    \"name\": \"Sorrell Brown\",\n    \"hex\": \"CEB98F\"\n  },\n  {\n    \"name\": \"Cold Turkey\",\n    \"hex\": \"CEBABA\"\n  },\n  {\n    \"name\": \"Yuma\",\n    \"hex\": \"CEC291\"\n  },\n  {\n    \"name\": \"Chino\",\n    \"hex\": \"CEC7A7\"\n  },\n  {\n    \"name\": \"Eunry\",\n    \"hex\": \"CFA39D\"\n  },\n  {\n    \"name\": \"Old Gold\",\n    \"hex\": \"CFB53B\"\n  },\n  {\n    \"name\": \"Tasman\",\n    \"hex\": \"CFDCCF\"\n  },\n  {\n    \"name\": \"Surf Crest\",\n    \"hex\": \"CFE5D2\"\n  },\n  {\n    \"name\": \"Humming Bird\",\n    \"hex\": \"CFF9F3\"\n  },\n  {\n    \"name\": \"Scandal\",\n    \"hex\": \"CFFAF4\"\n  },\n  {\n    \"name\": \"Red Stage\",\n    \"hex\": \"D05F04\"\n  },\n  {\n    \"name\": \"Hopbush\",\n    \"hex\": \"D06DA1\"\n  },\n  {\n    \"name\": \"Meteor\",\n    \"hex\": \"D07D12\"\n  },\n  {\n    \"name\": \"Perfume\",\n    \"hex\": \"D0BEF8\"\n  },\n  {\n    \"name\": \"Prelude\",\n    \"hex\": \"D0C0E5\"\n  },\n  {\n    \"name\": \"Tea Green\",\n    \"hex\": \"D0F0C0\"\n  },\n  {\n    \"name\": \"Geebung\",\n    \"hex\": \"D18F1B\"\n  },\n  {\n    \"name\": \"Vanilla\",\n    \"hex\": \"D1BEA8\"\n  },\n  {\n    \"name\": \"Soft Amber\",\n    \"hex\": \"D1C6B4\"\n  },\n  {\n    \"name\": \"Celeste\",\n    \"hex\": \"D1D2CA\"\n  },\n  {\n    \"name\": \"Mischka\",\n    \"hex\": \"D1D2DD\"\n  },\n  {\n    \"name\": \"Pear\",\n    \"hex\": \"D1E231\"\n  },\n  {\n    \"name\": \"Hot Cinnamon\",\n    \"hex\": \"D2691E\"\n  },\n  {\n    \"name\": \"Raw Sienna\",\n    \"hex\": \"D27D46\"\n  },\n  {\n    \"name\": \"Careys Pink\",\n    \"hex\": \"D29EAA\"\n  },\n  {\n    \"name\": \"Tan\",\n    \"hex\": \"D2B48C\"\n  },\n  {\n    \"name\": \"Deco\",\n    \"hex\": \"D2DA97\"\n  },\n  {\n    \"name\": \"Blue Romance\",\n    \"hex\": \"D2F6DE\"\n  },\n  {\n    \"name\": \"Gossip\",\n    \"hex\": \"D2F8B0\"\n  },\n  {\n    \"name\": \"Sisal\",\n    \"hex\": \"D3CBBA\"\n  },\n  {\n    \"name\": \"Swirl\",\n    \"hex\": \"D3CDC5\"\n  },\n  {\n    \"name\": \"Charm\",\n    \"hex\": \"D47494\"\n  },\n  {\n    \"name\": \"Clam Shell\",\n    \"hex\": \"D4B6AF\"\n  },\n  {\n    \"name\": \"Straw\",\n    \"hex\": \"D4BF8D\"\n  },\n  {\n    \"name\": \"Akaroa\",\n    \"hex\": \"D4C4A8\"\n  },\n  {\n    \"name\": \"Bird Flower\",\n    \"hex\": \"D4CD16\"\n  },\n  {\n    \"name\": \"Iron\",\n    \"hex\": \"D4D7D9\"\n  },\n  {\n    \"name\": \"Geyser\",\n    \"hex\": \"D4DFE2\"\n  },\n  {\n    \"name\": \"Hawkes Blue\",\n    \"hex\": \"D4E2FC\"\n  },\n  {\n    \"name\": \"Grenadier\",\n    \"hex\": \"D54600\"\n  },\n  {\n    \"name\": \"Can Can\",\n    \"hex\": \"D591A4\"\n  },\n  {\n    \"name\": \"Whiskey\",\n    \"hex\": \"D59A6F\"\n  },\n  {\n    \"name\": \"Winter Hazel\",\n    \"hex\": \"D5D195\"\n  },\n  {\n    \"name\": \"Granny Apple\",\n    \"hex\": \"D5F6E3\"\n  },\n  {\n    \"name\": \"My Pink\",\n    \"hex\": \"D69188\"\n  },\n  {\n    \"name\": \"Tacha\",\n    \"hex\": \"D6C562\"\n  },\n  {\n    \"name\": \"Moon Raker\",\n    \"hex\": \"D6CEF6\"\n  },\n  {\n    \"name\": \"Quill Gray\",\n    \"hex\": \"D6D6D1\"\n  },\n  {\n    \"name\": \"Snowy Mint\",\n    \"hex\": \"D6FFDB\"\n  },\n  {\n    \"name\": \"New York Pink\",\n    \"hex\": \"D7837F\"\n  },\n  {\n    \"name\": \"Pavlova\",\n    \"hex\": \"D7C498\"\n  },\n  {\n    \"name\": \"Fog\",\n    \"hex\": \"D7D0FF\"\n  },\n  {\n    \"name\": \"Valencia\",\n    \"hex\": \"D84437\"\n  },\n  {\n    \"name\": \"Japonica\",\n    \"hex\": \"D87C63\"\n  },\n  {\n    \"name\": \"Thistle\",\n    \"hex\": \"D8BFD8\"\n  },\n  {\n    \"name\": \"Maverick\",\n    \"hex\": \"D8C2D5\"\n  },\n  {\n    \"name\": \"Foam\",\n    \"hex\": \"D8FCFA\"\n  },\n  {\n    \"name\": \"Cabaret\",\n    \"hex\": \"D94972\"\n  },\n  {\n    \"name\": \"Burning Sand\",\n    \"hex\": \"D99376\"\n  },\n  {\n    \"name\": \"Cameo\",\n    \"hex\": \"D9B99B\"\n  },\n  {\n    \"name\": \"Timberwolf\",\n    \"hex\": \"D9D6CF\"\n  },\n  {\n    \"name\": \"Tana\",\n    \"hex\": \"D9DCC1\"\n  },\n  {\n    \"name\": \"Link Water\",\n    \"hex\": \"D9E4F5\"\n  },\n  {\n    \"name\": \"Mabel\",\n    \"hex\": \"D9F7FF\"\n  },\n  {\n    \"name\": \"Cerise\",\n    \"hex\": \"DA3287\"\n  },\n  {\n    \"name\": \"Flame Pea\",\n    \"hex\": \"DA5B38\"\n  },\n  {\n    \"name\": \"Bamboo\",\n    \"hex\": \"DA6304\"\n  },\n  {\n    \"name\": \"Red Damask\",\n    \"hex\": \"DA6A41\"\n  },\n  {\n    \"name\": \"Orchid\",\n    \"hex\": \"DA70D6\"\n  },\n  {\n    \"name\": \"Copperfield\",\n    \"hex\": \"DA8A67\"\n  },\n  {\n    \"name\": \"Golden Grass\",\n    \"hex\": \"DAA520\"\n  },\n  {\n    \"name\": \"Zanah\",\n    \"hex\": \"DAECD6\"\n  },\n  {\n    \"name\": \"Iceberg\",\n    \"hex\": \"DAF4F0\"\n  },\n  {\n    \"name\": \"Oyster Bay\",\n    \"hex\": \"DAFAFF\"\n  },\n  {\n    \"name\": \"Cranberry\",\n    \"hex\": \"DB5079\"\n  },\n  {\n    \"name\": \"Petite Orchid\",\n    \"hex\": \"DB9690\"\n  },\n  {\n    \"name\": \"Di Serria\",\n    \"hex\": \"DB995E\"\n  },\n  {\n    \"name\": \"Alto\",\n    \"hex\": \"DBDBDB\"\n  },\n  {\n    \"name\": \"Frosted Mint\",\n    \"hex\": \"DBFFF8\"\n  },\n  {\n    \"name\": \"Crimson\",\n    \"hex\": \"DC143C\"\n  },\n  {\n    \"name\": \"Punch\",\n    \"hex\": \"DC4333\"\n  },\n  {\n    \"name\": \"Galliano\",\n    \"hex\": \"DCB20C\"\n  },\n  {\n    \"name\": \"Blossom\",\n    \"hex\": \"DCB4BC\"\n  },\n  {\n    \"name\": \"Wattle\",\n    \"hex\": \"DCD747\"\n  },\n  {\n    \"name\": \"Westar\",\n    \"hex\": \"DCD9D2\"\n  },\n  {\n    \"name\": \"Moon Mist\",\n    \"hex\": \"DCDDCC\"\n  },\n  {\n    \"name\": \"Caper\",\n    \"hex\": \"DCEDB4\"\n  },\n  {\n    \"name\": \"Swans Down\",\n    \"hex\": \"DCF0EA\"\n  },\n  {\n    \"name\": \"Swiss Coffee\",\n    \"hex\": \"DDD6D5\"\n  },\n  {\n    \"name\": \"White Ice\",\n    \"hex\": \"DDF9F1\"\n  },\n  {\n    \"name\": \"Cerise Red\",\n    \"hex\": \"DE3163\"\n  },\n  {\n    \"name\": \"Roman\",\n    \"hex\": \"DE6360\"\n  },\n  {\n    \"name\": \"Tumbleweed\",\n    \"hex\": \"DEA681\"\n  },\n  {\n    \"name\": \"Gold Tips\",\n    \"hex\": \"DEBA13\"\n  },\n  {\n    \"name\": \"Brandy\",\n    \"hex\": \"DEC196\"\n  },\n  {\n    \"name\": \"Wafer\",\n    \"hex\": \"DECBC6\"\n  },\n  {\n    \"name\": \"Sapling\",\n    \"hex\": \"DED4A4\"\n  },\n  {\n    \"name\": \"Barberry\",\n    \"hex\": \"DED717\"\n  },\n  {\n    \"name\": \"Beryl Green\",\n    \"hex\": \"DEE5C0\"\n  },\n  {\n    \"name\": \"Pattens Blue\",\n    \"hex\": \"DEF5FF\"\n  },\n  {\n    \"name\": \"Heliotrope\",\n    \"hex\": \"DF73FF\"\n  },\n  {\n    \"name\": \"Apache\",\n    \"hex\": \"DFBE6F\"\n  },\n  {\n    \"name\": \"Chenin\",\n    \"hex\": \"DFCD6F\"\n  },\n  {\n    \"name\": \"Lola\",\n    \"hex\": \"DFCFDB\"\n  },\n  {\n    \"name\": \"Willow Brook\",\n    \"hex\": \"DFECDA\"\n  },\n  {\n    \"name\": \"Chartreuse Yellow\",\n    \"hex\": \"DFFF00\"\n  },\n  {\n    \"name\": \"Mauve\",\n    \"hex\": \"E0B0FF\"\n  },\n  {\n    \"name\": \"Anzac\",\n    \"hex\": \"E0B646\"\n  },\n  {\n    \"name\": \"Harvest Gold\",\n    \"hex\": \"E0B974\"\n  },\n  {\n    \"name\": \"Calico\",\n    \"hex\": \"E0C095\"\n  },\n  {\n    \"name\": \"Baby Blue\",\n    \"hex\": \"E0FFFF\"\n  },\n  {\n    \"name\": \"Sunglo\",\n    \"hex\": \"E16865\"\n  },\n  {\n    \"name\": \"Equator\",\n    \"hex\": \"E1BC64\"\n  },\n  {\n    \"name\": \"Pink Flare\",\n    \"hex\": \"E1C0C8\"\n  },\n  {\n    \"name\": \"Periglacial Blue\",\n    \"hex\": \"E1E6D6\"\n  },\n  {\n    \"name\": \"Kidnapper\",\n    \"hex\": \"E1EAD4\"\n  },\n  {\n    \"name\": \"Tara\",\n    \"hex\": \"E1F6E8\"\n  },\n  {\n    \"name\": \"Mandy\",\n    \"hex\": \"E25465\"\n  },\n  {\n    \"name\": \"Terracotta\",\n    \"hex\": \"E2725B\"\n  },\n  {\n    \"name\": \"Golden Bell\",\n    \"hex\": \"E28913\"\n  },\n  {\n    \"name\": \"Shocking\",\n    \"hex\": \"E292C0\"\n  },\n  {\n    \"name\": \"Dixie\",\n    \"hex\": \"E29418\"\n  },\n  {\n    \"name\": \"Light Orchid\",\n    \"hex\": \"E29CD2\"\n  },\n  {\n    \"name\": \"Snuff\",\n    \"hex\": \"E2D8ED\"\n  },\n  {\n    \"name\": \"Mystic\",\n    \"hex\": \"E2EBED\"\n  },\n  {\n    \"name\": \"Apple Green\",\n    \"hex\": \"E2F3EC\"\n  },\n  {\n    \"name\": \"Razzmatazz\",\n    \"hex\": \"E30B5C\"\n  },\n  {\n    \"name\": \"Alizarin Crimson\",\n    \"hex\": \"E32636\"\n  },\n  {\n    \"name\": \"Cinnabar\",\n    \"hex\": \"E34234\"\n  },\n  {\n    \"name\": \"Cavern Pink\",\n    \"hex\": \"E3BEBE\"\n  },\n  {\n    \"name\": \"Peppermint\",\n    \"hex\": \"E3F5E1\"\n  },\n  {\n    \"name\": \"Mindaro\",\n    \"hex\": \"E3F988\"\n  },\n  {\n    \"name\": \"Deep Blush\",\n    \"hex\": \"E47698\"\n  },\n  {\n    \"name\": \"Gamboge\",\n    \"hex\": \"E49B0F\"\n  },\n  {\n    \"name\": \"Melanie\",\n    \"hex\": \"E4C2D5\"\n  },\n  {\n    \"name\": \"Twilight\",\n    \"hex\": \"E4CFDE\"\n  },\n  {\n    \"name\": \"Bone\",\n    \"hex\": \"E4D1C0\"\n  },\n  {\n    \"name\": \"Sunflower\",\n    \"hex\": \"E4D422\"\n  },\n  {\n    \"name\": \"Grain Brown\",\n    \"hex\": \"E4D5B7\"\n  },\n  {\n    \"name\": \"Zombie\",\n    \"hex\": \"E4D69B\"\n  },\n  {\n    \"name\": \"Frostee\",\n    \"hex\": \"E4F6E7\"\n  },\n  {\n    \"name\": \"Snow Flurry\",\n    \"hex\": \"E4FFD1\"\n  },\n  {\n    \"name\": \"Amaranth\",\n    \"hex\": \"E52B50\"\n  },\n  {\n    \"name\": \"Zest\",\n    \"hex\": \"E5841B\"\n  },\n  {\n    \"name\": \"Dust Storm\",\n    \"hex\": \"E5CCC9\"\n  },\n  {\n    \"name\": \"Stark White\",\n    \"hex\": \"E5D7BD\"\n  },\n  {\n    \"name\": \"Hampton\",\n    \"hex\": \"E5D8AF\"\n  },\n  {\n    \"name\": \"Bon Jour\",\n    \"hex\": \"E5E0E1\"\n  },\n  {\n    \"name\": \"Mercury\",\n    \"hex\": \"E5E5E5\"\n  },\n  {\n    \"name\": \"Polar\",\n    \"hex\": \"E5F9F6\"\n  },\n  {\n    \"name\": \"Trinidad\",\n    \"hex\": \"E64E03\"\n  },\n  {\n    \"name\": \"Gold Sand\",\n    \"hex\": \"E6BE8A\"\n  },\n  {\n    \"name\": \"Cashmere\",\n    \"hex\": \"E6BEA5\"\n  },\n  {\n    \"name\": \"Double Spanish White\",\n    \"hex\": \"E6D7B9\"\n  },\n  {\n    \"name\": \"Satin Linen\",\n    \"hex\": \"E6E4D4\"\n  },\n  {\n    \"name\": \"Harp\",\n    \"hex\": \"E6F2EA\"\n  },\n  {\n    \"name\": \"Off Green\",\n    \"hex\": \"E6F8F3\"\n  },\n  {\n    \"name\": \"Hint of Green\",\n    \"hex\": \"E6FFE9\"\n  },\n  {\n    \"name\": \"Tranquil\",\n    \"hex\": \"E6FFFF\"\n  },\n  {\n    \"name\": \"Mango Tango\",\n    \"hex\": \"E77200\"\n  },\n  {\n    \"name\": \"Christine\",\n    \"hex\": \"E7730A\"\n  },\n  {\n    \"name\": \"Tonys Pink\",\n    \"hex\": \"E79F8C\"\n  },\n  {\n    \"name\": \"Kobi\",\n    \"hex\": \"E79FC4\"\n  },\n  {\n    \"name\": \"Rose Fog\",\n    \"hex\": \"E7BCB4\"\n  },\n  {\n    \"name\": \"Corn\",\n    \"hex\": \"E7BF05\"\n  },\n  {\n    \"name\": \"Putty\",\n    \"hex\": \"E7CD8C\"\n  },\n  {\n    \"name\": \"Gray Nurse\",\n    \"hex\": \"E7ECE6\"\n  },\n  {\n    \"name\": \"Lily White\",\n    \"hex\": \"E7F8FF\"\n  },\n  {\n    \"name\": \"Bubbles\",\n    \"hex\": \"E7FEFF\"\n  },\n  {\n    \"name\": \"Fire Bush\",\n    \"hex\": \"E89928\"\n  },\n  {\n    \"name\": \"Shilo\",\n    \"hex\": \"E8B9B3\"\n  },\n  {\n    \"name\": \"Pearl Bush\",\n    \"hex\": \"E8E0D5\"\n  },\n  {\n    \"name\": \"Green White\",\n    \"hex\": \"E8EBE0\"\n  },\n  {\n    \"name\": \"Chrome White\",\n    \"hex\": \"E8F1D4\"\n  },\n  {\n    \"name\": \"Gin\",\n    \"hex\": \"E8F2EB\"\n  },\n  {\n    \"name\": \"Aqua Squeeze\",\n    \"hex\": \"E8F5F2\"\n  },\n  {\n    \"name\": \"Clementine\",\n    \"hex\": \"E96E00\"\n  },\n  {\n    \"name\": \"Burnt Sienna\",\n    \"hex\": \"E97451\"\n  },\n  {\n    \"name\": \"Tahiti Gold\",\n    \"hex\": \"E97C07\"\n  },\n  {\n    \"name\": \"Oyster Pink\",\n    \"hex\": \"E9CECD\"\n  },\n  {\n    \"name\": \"Confetti\",\n    \"hex\": \"E9D75A\"\n  },\n  {\n    \"name\": \"Ebb\",\n    \"hex\": \"E9E3E3\"\n  },\n  {\n    \"name\": \"Ottoman\",\n    \"hex\": \"E9F8ED\"\n  },\n  {\n    \"name\": \"Clear Day\",\n    \"hex\": \"E9FFFD\"\n  },\n  {\n    \"name\": \"Carissma\",\n    \"hex\": \"EA88A8\"\n  },\n  {\n    \"name\": \"Porsche\",\n    \"hex\": \"EAAE69\"\n  },\n  {\n    \"name\": \"Tulip Tree\",\n    \"hex\": \"EAB33B\"\n  },\n  {\n    \"name\": \"Rob Roy\",\n    \"hex\": \"EAC674\"\n  },\n  {\n    \"name\": \"Raffia\",\n    \"hex\": \"EADAB8\"\n  },\n  {\n    \"name\": \"White Rock\",\n    \"hex\": \"EAE8D4\"\n  },\n  {\n    \"name\": \"Panache\",\n    \"hex\": \"EAF6EE\"\n  },\n  {\n    \"name\": \"Solitude\",\n    \"hex\": \"EAF6FF\"\n  },\n  {\n    \"name\": \"Aqua Spring\",\n    \"hex\": \"EAF9F5\"\n  },\n  {\n    \"name\": \"Dew\",\n    \"hex\": \"EAFFFE\"\n  },\n  {\n    \"name\": \"Apricot\",\n    \"hex\": \"EB9373\"\n  },\n  {\n    \"name\": \"Zinnwaldite\",\n    \"hex\": \"EBC2AF\"\n  },\n  {\n    \"name\": \"Fuel Yellow\",\n    \"hex\": \"ECA927\"\n  },\n  {\n    \"name\": \"Ronchi\",\n    \"hex\": \"ECC54E\"\n  },\n  {\n    \"name\": \"French Lilac\",\n    \"hex\": \"ECC7EE\"\n  },\n  {\n    \"name\": \"Just Right\",\n    \"hex\": \"ECCDB9\"\n  },\n  {\n    \"name\": \"Wild Rice\",\n    \"hex\": \"ECE090\"\n  },\n  {\n    \"name\": \"Fall Green\",\n    \"hex\": \"ECEBBD\"\n  },\n  {\n    \"name\": \"Aths Special\",\n    \"hex\": \"ECEBCE\"\n  },\n  {\n    \"name\": \"Starship\",\n    \"hex\": \"ECF245\"\n  },\n  {\n    \"name\": \"Red Ribbon\",\n    \"hex\": \"ED0A3F\"\n  },\n  {\n    \"name\": \"Tango\",\n    \"hex\": \"ED7A1C\"\n  },\n  {\n    \"name\": \"Carrot Orange\",\n    \"hex\": \"ED9121\"\n  },\n  {\n    \"name\": \"Sea Pink\",\n    \"hex\": \"ED989E\"\n  },\n  {\n    \"name\": \"Tacao\",\n    \"hex\": \"EDB381\"\n  },\n  {\n    \"name\": \"Desert Sand\",\n    \"hex\": \"EDC9AF\"\n  },\n  {\n    \"name\": \"Pancho\",\n    \"hex\": \"EDCDAB\"\n  },\n  {\n    \"name\": \"Chamois\",\n    \"hex\": \"EDDCB1\"\n  },\n  {\n    \"name\": \"Primrose\",\n    \"hex\": \"EDEA99\"\n  },\n  {\n    \"name\": \"Frost\",\n    \"hex\": \"EDF5DD\"\n  },\n  {\n    \"name\": \"Aqua Haze\",\n    \"hex\": \"EDF5F5\"\n  },\n  {\n    \"name\": \"Zumthor\",\n    \"hex\": \"EDF6FF\"\n  },\n  {\n    \"name\": \"Narvik\",\n    \"hex\": \"EDF9F1\"\n  },\n  {\n    \"name\": \"Honeysuckle\",\n    \"hex\": \"EDFC84\"\n  },\n  {\n    \"name\": \"Lavender Magenta\",\n    \"hex\": \"EE82EE\"\n  },\n  {\n    \"name\": \"Beauty Bush\",\n    \"hex\": \"EEC1BE\"\n  },\n  {\n    \"name\": \"Chalky\",\n    \"hex\": \"EED794\"\n  },\n  {\n    \"name\": \"Almond\",\n    \"hex\": \"EED9C4\"\n  },\n  {\n    \"name\": \"Flax\",\n    \"hex\": \"EEDC82\"\n  },\n  {\n    \"name\": \"Bizarre\",\n    \"hex\": \"EEDEDA\"\n  },\n  {\n    \"name\": \"Double Colonial White\",\n    \"hex\": \"EEE3AD\"\n  },\n  {\n    \"name\": \"Cararra\",\n    \"hex\": \"EEEEE8\"\n  },\n  {\n    \"name\": \"Manz\",\n    \"hex\": \"EEEF78\"\n  },\n  {\n    \"name\": \"Tahuna Sands\",\n    \"hex\": \"EEF0C8\"\n  },\n  {\n    \"name\": \"Athens Gray\",\n    \"hex\": \"EEF0F3\"\n  },\n  {\n    \"name\": \"Tusk\",\n    \"hex\": \"EEF3C3\"\n  },\n  {\n    \"name\": \"Loafer\",\n    \"hex\": \"EEF4DE\"\n  },\n  {\n    \"name\": \"Catskill White\",\n    \"hex\": \"EEF6F7\"\n  },\n  {\n    \"name\": \"Twilight Blue\",\n    \"hex\": \"EEFDFF\"\n  },\n  {\n    \"name\": \"Jonquil\",\n    \"hex\": \"EEFF9A\"\n  },\n  {\n    \"name\": \"Rice Flower\",\n    \"hex\": \"EEFFE2\"\n  },\n  {\n    \"name\": \"Jaffa\",\n    \"hex\": \"EF863F\"\n  },\n  {\n    \"name\": \"Gallery\",\n    \"hex\": \"EFEFEF\"\n  },\n  {\n    \"name\": \"Porcelain\",\n    \"hex\": \"EFF2F3\"\n  },\n  {\n    \"name\": \"Mauvelous\",\n    \"hex\": \"F091A9\"\n  },\n  {\n    \"name\": \"Golden Dream\",\n    \"hex\": \"F0D52D\"\n  },\n  {\n    \"name\": \"Golden Sand\",\n    \"hex\": \"F0DB7D\"\n  },\n  {\n    \"name\": \"Buff\",\n    \"hex\": \"F0DC82\"\n  },\n  {\n    \"name\": \"Prim\",\n    \"hex\": \"F0E2EC\"\n  },\n  {\n    \"name\": \"Khaki\",\n    \"hex\": \"F0E68C\"\n  },\n  {\n    \"name\": \"Selago\",\n    \"hex\": \"F0EEFD\"\n  },\n  {\n    \"name\": \"Titan White\",\n    \"hex\": \"F0EEFF\"\n  },\n  {\n    \"name\": \"Alice Blue\",\n    \"hex\": \"F0F8FF\"\n  },\n  {\n    \"name\": \"Feta\",\n    \"hex\": \"F0FCEA\"\n  },\n  {\n    \"name\": \"Gold Drop\",\n    \"hex\": \"F18200\"\n  },\n  {\n    \"name\": \"Wewak\",\n    \"hex\": \"F19BAB\"\n  },\n  {\n    \"name\": \"Sahara Sand\",\n    \"hex\": \"F1E788\"\n  },\n  {\n    \"name\": \"Parchment\",\n    \"hex\": \"F1E9D2\"\n  },\n  {\n    \"name\": \"Blue Chalk\",\n    \"hex\": \"F1E9FF\"\n  },\n  {\n    \"name\": \"Mint Julep\",\n    \"hex\": \"F1EEC1\"\n  },\n  {\n    \"name\": \"Seashell\",\n    \"hex\": \"F1F1F1\"\n  },\n  {\n    \"name\": \"Saltpan\",\n    \"hex\": \"F1F7F2\"\n  },\n  {\n    \"name\": \"Tidal\",\n    \"hex\": \"F1FFAD\"\n  },\n  {\n    \"name\": \"Chiffon\",\n    \"hex\": \"F1FFC8\"\n  },\n  {\n    \"name\": \"Flamingo\",\n    \"hex\": \"F2552A\"\n  },\n  {\n    \"name\": \"Tangerine\",\n    \"hex\": \"F28500\"\n  },\n  {\n    \"name\": \"Mandys Pink\",\n    \"hex\": \"F2C3B2\"\n  },\n  {\n    \"name\": \"Concrete\",\n    \"hex\": \"F2F2F2\"\n  },\n  {\n    \"name\": \"Black Squeeze\",\n    \"hex\": \"F2FAFA\"\n  },\n  {\n    \"name\": \"Pomegranate\",\n    \"hex\": \"F34723\"\n  },\n  {\n    \"name\": \"Buttercup\",\n    \"hex\": \"F3AD16\"\n  },\n  {\n    \"name\": \"New Orleans\",\n    \"hex\": \"F3D69D\"\n  },\n  {\n    \"name\": \"Vanilla Ice\",\n    \"hex\": \"F3D9DF\"\n  },\n  {\n    \"name\": \"Sidecar\",\n    \"hex\": \"F3E7BB\"\n  },\n  {\n    \"name\": \"Dawn Pink\",\n    \"hex\": \"F3E9E5\"\n  },\n  {\n    \"name\": \"Wheatfield\",\n    \"hex\": \"F3EDCF\"\n  },\n  {\n    \"name\": \"Canary\",\n    \"hex\": \"F3FB62\"\n  },\n  {\n    \"name\": \"Orinoco\",\n    \"hex\": \"F3FBD4\"\n  },\n  {\n    \"name\": \"Carla\",\n    \"hex\": \"F3FFD8\"\n  },\n  {\n    \"name\": \"Hollywood Cerise\",\n    \"hex\": \"F400A1\"\n  },\n  {\n    \"name\": \"Sandy brown\",\n    \"hex\": \"F4A460\"\n  },\n  {\n    \"name\": \"Saffron\",\n    \"hex\": \"F4C430\"\n  },\n  {\n    \"name\": \"Ripe Lemon\",\n    \"hex\": \"F4D81C\"\n  },\n  {\n    \"name\": \"Janna\",\n    \"hex\": \"F4EBD3\"\n  },\n  {\n    \"name\": \"Pampas\",\n    \"hex\": \"F4F2EE\"\n  },\n  {\n    \"name\": \"Wild Sand\",\n    \"hex\": \"F4F4F4\"\n  },\n  {\n    \"name\": \"Zircon\",\n    \"hex\": \"F4F8FF\"\n  },\n  {\n    \"name\": \"Froly\",\n    \"hex\": \"F57584\"\n  },\n  {\n    \"name\": \"Cream Can\",\n    \"hex\": \"F5C85C\"\n  },\n  {\n    \"name\": \"Manhattan\",\n    \"hex\": \"F5C999\"\n  },\n  {\n    \"name\": \"Maize\",\n    \"hex\": \"F5D5A0\"\n  },\n  {\n    \"name\": \"Wheat\",\n    \"hex\": \"F5DEB3\"\n  },\n  {\n    \"name\": \"Sandwisp\",\n    \"hex\": \"F5E7A2\"\n  },\n  {\n    \"name\": \"Pot Pourri\",\n    \"hex\": \"F5E7E2\"\n  },\n  {\n    \"name\": \"Albescent White\",\n    \"hex\": \"F5E9D3\"\n  },\n  {\n    \"name\": \"Soft Peach\",\n    \"hex\": \"F5EDEF\"\n  },\n  {\n    \"name\": \"Ecru White\",\n    \"hex\": \"F5F3E5\"\n  },\n  {\n    \"name\": \"Beige\",\n    \"hex\": \"F5F5DC\"\n  },\n  {\n    \"name\": \"Golden Fizz\",\n    \"hex\": \"F5FB3D\"\n  },\n  {\n    \"name\": \"Australian Mint\",\n    \"hex\": \"F5FFBE\"\n  },\n  {\n    \"name\": \"French Rose\",\n    \"hex\": \"F64A8A\"\n  },\n  {\n    \"name\": \"Brilliant Rose\",\n    \"hex\": \"F653A6\"\n  },\n  {\n    \"name\": \"Illusion\",\n    \"hex\": \"F6A4C9\"\n  },\n  {\n    \"name\": \"Merino\",\n    \"hex\": \"F6F0E6\"\n  },\n  {\n    \"name\": \"Black Haze\",\n    \"hex\": \"F6F7F7\"\n  },\n  {\n    \"name\": \"Spring Sun\",\n    \"hex\": \"F6FFDC\"\n  },\n  {\n    \"name\": \"Violet Red\",\n    \"hex\": \"F7468A\"\n  },\n  {\n    \"name\": \"Chilean Fire\",\n    \"hex\": \"F77703\"\n  },\n  {\n    \"name\": \"Persian Pink\",\n    \"hex\": \"F77FBE\"\n  },\n  {\n    \"name\": \"Rajah\",\n    \"hex\": \"F7B668\"\n  },\n  {\n    \"name\": \"Azalea\",\n    \"hex\": \"F7C8DA\"\n  },\n  {\n    \"name\": \"We Peep\",\n    \"hex\": \"F7DBE6\"\n  },\n  {\n    \"name\": \"Quarter Spanish White\",\n    \"hex\": \"F7F2E1\"\n  },\n  {\n    \"name\": \"Whisper\",\n    \"hex\": \"F7F5FA\"\n  },\n  {\n    \"name\": \"Snow Drift\",\n    \"hex\": \"F7FAF7\"\n  },\n  {\n    \"name\": \"Casablanca\",\n    \"hex\": \"F8B853\"\n  },\n  {\n    \"name\": \"Chantilly\",\n    \"hex\": \"F8C3DF\"\n  },\n  {\n    \"name\": \"Cherub\",\n    \"hex\": \"F8D9E9\"\n  },\n  {\n    \"name\": \"Marzipan\",\n    \"hex\": \"F8DB9D\"\n  },\n  {\n    \"name\": \"Energy Yellow\",\n    \"hex\": \"F8DD5C\"\n  },\n  {\n    \"name\": \"Givry\",\n    \"hex\": \"F8E4BF\"\n  },\n  {\n    \"name\": \"White Linen\",\n    \"hex\": \"F8F0E8\"\n  },\n  {\n    \"name\": \"Magnolia\",\n    \"hex\": \"F8F4FF\"\n  },\n  {\n    \"name\": \"Spring Wood\",\n    \"hex\": \"F8F6F1\"\n  },\n  {\n    \"name\": \"Coconut Cream\",\n    \"hex\": \"F8F7DC\"\n  },\n  {\n    \"name\": \"White Lilac\",\n    \"hex\": \"F8F7FC\"\n  },\n  {\n    \"name\": \"Desert Storm\",\n    \"hex\": \"F8F8F7\"\n  },\n  {\n    \"name\": \"Texas\",\n    \"hex\": \"F8F99C\"\n  },\n  {\n    \"name\": \"Corn Field\",\n    \"hex\": \"F8FACD\"\n  },\n  {\n    \"name\": \"Mimosa\",\n    \"hex\": \"F8FDD3\"\n  },\n  {\n    \"name\": \"Carnation\",\n    \"hex\": \"F95A61\"\n  },\n  {\n    \"name\": \"Saffron Mango\",\n    \"hex\": \"F9BF58\"\n  },\n  {\n    \"name\": \"Carousel Pink\",\n    \"hex\": \"F9E0ED\"\n  },\n  {\n    \"name\": \"Dairy Cream\",\n    \"hex\": \"F9E4BC\"\n  },\n  {\n    \"name\": \"Portica\",\n    \"hex\": \"F9E663\"\n  },\n  {\n    \"name\": \"Amour\",\n    \"hex\": \"F9EAF3\"\n  },\n  {\n    \"name\": \"Rum Swizzle\",\n    \"hex\": \"F9F8E4\"\n  },\n  {\n    \"name\": \"Dolly\",\n    \"hex\": \"F9FF8B\"\n  },\n  {\n    \"name\": \"Sugar Cane\",\n    \"hex\": \"F9FFF6\"\n  },\n  {\n    \"name\": \"Ecstasy\",\n    \"hex\": \"FA7814\"\n  },\n  {\n    \"name\": \"Tan Hide\",\n    \"hex\": \"FA9D5A\"\n  },\n  {\n    \"name\": \"Corvette\",\n    \"hex\": \"FAD3A2\"\n  },\n  {\n    \"name\": \"Peach Yellow\",\n    \"hex\": \"FADFAD\"\n  },\n  {\n    \"name\": \"Turbo\",\n    \"hex\": \"FAE600\"\n  },\n  {\n    \"name\": \"Astra\",\n    \"hex\": \"FAEAB9\"\n  },\n  {\n    \"name\": \"Champagne\",\n    \"hex\": \"FAECCC\"\n  },\n  {\n    \"name\": \"Linen\",\n    \"hex\": \"FAF0E6\"\n  },\n  {\n    \"name\": \"Fantasy\",\n    \"hex\": \"FAF3F0\"\n  },\n  {\n    \"name\": \"Citrine White\",\n    \"hex\": \"FAF7D6\"\n  },\n  {\n    \"name\": \"Alabaster\",\n    \"hex\": \"FAFAFA\"\n  },\n  {\n    \"name\": \"Hint of Yellow\",\n    \"hex\": \"FAFDE4\"\n  },\n  {\n    \"name\": \"Milan\",\n    \"hex\": \"FAFFA4\"\n  },\n  {\n    \"name\": \"Brink Pink\",\n    \"hex\": \"FB607F\"\n  },\n  {\n    \"name\": \"Geraldine\",\n    \"hex\": \"FB8989\"\n  },\n  {\n    \"name\": \"Lavender Rose\",\n    \"hex\": \"FBA0E3\"\n  },\n  {\n    \"name\": \"Sea Buckthorn\",\n    \"hex\": \"FBA129\"\n  },\n  {\n    \"name\": \"Sun\",\n    \"hex\": \"FBAC13\"\n  },\n  {\n    \"name\": \"Lavender Pink\",\n    \"hex\": \"FBAED2\"\n  },\n  {\n    \"name\": \"Rose Bud\",\n    \"hex\": \"FBB2A3\"\n  },\n  {\n    \"name\": \"Cupid\",\n    \"hex\": \"FBBEDA\"\n  },\n  {\n    \"name\": \"Classic Rose\",\n    \"hex\": \"FBCCE7\"\n  },\n  {\n    \"name\": \"Apricot Peach\",\n    \"hex\": \"FBCEB1\"\n  },\n  {\n    \"name\": \"Banana Mania\",\n    \"hex\": \"FBE7B2\"\n  },\n  {\n    \"name\": \"Marigold Yellow\",\n    \"hex\": \"FBE870\"\n  },\n  {\n    \"name\": \"Festival\",\n    \"hex\": \"FBE96C\"\n  },\n  {\n    \"name\": \"Sweet Corn\",\n    \"hex\": \"FBEA8C\"\n  },\n  {\n    \"name\": \"Candy Corn\",\n    \"hex\": \"FBEC5D\"\n  },\n  {\n    \"name\": \"Hint of Red\",\n    \"hex\": \"FBF9F9\"\n  },\n  {\n    \"name\": \"Shalimar\",\n    \"hex\": \"FBFFBA\"\n  },\n  {\n    \"name\": \"Shocking Pink\",\n    \"hex\": \"FC0FC0\"\n  },\n  {\n    \"name\": \"Tickle Me Pink\",\n    \"hex\": \"FC80A5\"\n  },\n  {\n    \"name\": \"Tree Poppy\",\n    \"hex\": \"FC9C1D\"\n  },\n  {\n    \"name\": \"Lightning Yellow\",\n    \"hex\": \"FCC01E\"\n  },\n  {\n    \"name\": \"Goldenrod\",\n    \"hex\": \"FCD667\"\n  },\n  {\n    \"name\": \"Candlelight\",\n    \"hex\": \"FCD917\"\n  },\n  {\n    \"name\": \"Cherokee\",\n    \"hex\": \"FCDA98\"\n  },\n  {\n    \"name\": \"Double Pearl Lusta\",\n    \"hex\": \"FCF4D0\"\n  },\n  {\n    \"name\": \"Pearl Lusta\",\n    \"hex\": \"FCF4DC\"\n  },\n  {\n    \"name\": \"Vista White\",\n    \"hex\": \"FCF8F7\"\n  },\n  {\n    \"name\": \"Bianca\",\n    \"hex\": \"FCFBF3\"\n  },\n  {\n    \"name\": \"Moon Glow\",\n    \"hex\": \"FCFEDA\"\n  },\n  {\n    \"name\": \"China Ivory\",\n    \"hex\": \"FCFFE7\"\n  },\n  {\n    \"name\": \"Ceramic\",\n    \"hex\": \"FCFFF9\"\n  },\n  {\n    \"name\": \"Torch Red\",\n    \"hex\": \"FD0E35\"\n  },\n  {\n    \"name\": \"Wild Watermelon\",\n    \"hex\": \"FD5B78\"\n  },\n  {\n    \"name\": \"Crusta\",\n    \"hex\": \"FD7B33\"\n  },\n  {\n    \"name\": \"Sorbus\",\n    \"hex\": \"FD7C07\"\n  },\n  {\n    \"name\": \"Sweet Pink\",\n    \"hex\": \"FD9FA2\"\n  },\n  {\n    \"name\": \"Light Apricot\",\n    \"hex\": \"FDD5B1\"\n  },\n  {\n    \"name\": \"Pig Pink\",\n    \"hex\": \"FDD7E4\"\n  },\n  {\n    \"name\": \"Cinderella\",\n    \"hex\": \"FDE1DC\"\n  },\n  {\n    \"name\": \"Golden Glow\",\n    \"hex\": \"FDE295\"\n  },\n  {\n    \"name\": \"Lemon\",\n    \"hex\": \"FDE910\"\n  },\n  {\n    \"name\": \"Old Lace\",\n    \"hex\": \"FDF5E6\"\n  },\n  {\n    \"name\": \"Half Colonial White\",\n    \"hex\": \"FDF6D3\"\n  },\n  {\n    \"name\": \"Drover\",\n    \"hex\": \"FDF7AD\"\n  },\n  {\n    \"name\": \"Pale Prim\",\n    \"hex\": \"FDFEB8\"\n  },\n  {\n    \"name\": \"Cumulus\",\n    \"hex\": \"FDFFD5\"\n  },\n  {\n    \"name\": \"Persian Rose\",\n    \"hex\": \"FE28A2\"\n  },\n  {\n    \"name\": \"Sunset Orange\",\n    \"hex\": \"FE4C40\"\n  },\n  {\n    \"name\": \"Bittersweet\",\n    \"hex\": \"FE6F5E\"\n  },\n  {\n    \"name\": \"California\",\n    \"hex\": \"FE9D04\"\n  },\n  {\n    \"name\": \"Yellow Sea\",\n    \"hex\": \"FEA904\"\n  },\n  {\n    \"name\": \"Melon\",\n    \"hex\": \"FEBAAD\"\n  },\n  {\n    \"name\": \"Bright Sun\",\n    \"hex\": \"FED33C\"\n  },\n  {\n    \"name\": \"Dandelion\",\n    \"hex\": \"FED85D\"\n  },\n  {\n    \"name\": \"Salomie\",\n    \"hex\": \"FEDB8D\"\n  },\n  {\n    \"name\": \"Cape Honey\",\n    \"hex\": \"FEE5AC\"\n  },\n  {\n    \"name\": \"Remy\",\n    \"hex\": \"FEEBF3\"\n  },\n  {\n    \"name\": \"Oasis\",\n    \"hex\": \"FEEFCE\"\n  },\n  {\n    \"name\": \"Bridesmaid\",\n    \"hex\": \"FEF0EC\"\n  },\n  {\n    \"name\": \"Beeswax\",\n    \"hex\": \"FEF2C7\"\n  },\n  {\n    \"name\": \"Bleach White\",\n    \"hex\": \"FEF3D8\"\n  },\n  {\n    \"name\": \"Pipi\",\n    \"hex\": \"FEF4CC\"\n  },\n  {\n    \"name\": \"Half Spanish White\",\n    \"hex\": \"FEF4DB\"\n  },\n  {\n    \"name\": \"Wisp Pink\",\n    \"hex\": \"FEF4F8\"\n  },\n  {\n    \"name\": \"Provincial Pink\",\n    \"hex\": \"FEF5F1\"\n  },\n  {\n    \"name\": \"Half Dutch White\",\n    \"hex\": \"FEF7DE\"\n  },\n  {\n    \"name\": \"Solitaire\",\n    \"hex\": \"FEF8E2\"\n  },\n  {\n    \"name\": \"White Pointer\",\n    \"hex\": \"FEF8FF\"\n  },\n  {\n    \"name\": \"Off Yellow\",\n    \"hex\": \"FEF9E3\"\n  },\n  {\n    \"name\": \"Orange White\",\n    \"hex\": \"FEFCED\"\n  },\n  {\n    \"name\": \"Red\",\n    \"hex\": \"FF0000\"\n  },\n  {\n    \"name\": \"Rose\",\n    \"hex\": \"FF007F\"\n  },\n  {\n    \"name\": \"Purple Pizzazz\",\n    \"hex\": \"FF00CC\"\n  },\n  {\n    \"name\": \"Magenta / Fuchsia\",\n    \"hex\": \"FF00FF\"\n  },\n  {\n    \"name\": \"Scarlet\",\n    \"hex\": \"FF2400\"\n  },\n  {\n    \"name\": \"Wild Strawberry\",\n    \"hex\": \"FF3399\"\n  },\n  {\n    \"name\": \"Razzle Dazzle Rose\",\n    \"hex\": \"FF33CC\"\n  },\n  {\n    \"name\": \"Radical Red\",\n    \"hex\": \"FF355E\"\n  },\n  {\n    \"name\": \"Red Orange\",\n    \"hex\": \"FF3F34\"\n  },\n  {\n    \"name\": \"Coral Red\",\n    \"hex\": \"FF4040\"\n  },\n  {\n    \"name\": \"Vermilion\",\n    \"hex\": \"FF4D00\"\n  },\n  {\n    \"name\": \"International Orange\",\n    \"hex\": \"FF4F00\"\n  },\n  {\n    \"name\": \"Outrageous Orange\",\n    \"hex\": \"FF6037\"\n  },\n  {\n    \"name\": \"Blaze Orange\",\n    \"hex\": \"FF6600\"\n  },\n  {\n    \"name\": \"Pink Flamingo\",\n    \"hex\": \"FF66FF\"\n  },\n  {\n    \"name\": \"Orange\",\n    \"hex\": \"FF681F\"\n  },\n  {\n    \"name\": \"Hot Pink\",\n    \"hex\": \"FF69B4\"\n  },\n  {\n    \"name\": \"Persimmon\",\n    \"hex\": \"FF6B53\"\n  },\n  {\n    \"name\": \"Blush Pink\",\n    \"hex\": \"FF6FFF\"\n  },\n  {\n    \"name\": \"Burning Orange\",\n    \"hex\": \"FF7034\"\n  },\n  {\n    \"name\": \"Pumpkin\",\n    \"hex\": \"FF7518\"\n  },\n  {\n    \"name\": \"Flamenco\",\n    \"hex\": \"FF7D07\"\n  },\n  {\n    \"name\": \"Flush Orange\",\n    \"hex\": \"FF7F00\"\n  },\n  {\n    \"name\": \"Coral\",\n    \"hex\": \"FF7F50\"\n  },\n  {\n    \"name\": \"Salmon\",\n    \"hex\": \"FF8C69\"\n  },\n  {\n    \"name\": \"Pizazz\",\n    \"hex\": \"FF9000\"\n  },\n  {\n    \"name\": \"West Side\",\n    \"hex\": \"FF910F\"\n  },\n  {\n    \"name\": \"Pink Salmon\",\n    \"hex\": \"FF91A4\"\n  },\n  {\n    \"name\": \"Neon Carrot\",\n    \"hex\": \"FF9933\"\n  },\n  {\n    \"name\": \"Atomic Tangerine\",\n    \"hex\": \"FF9966\"\n  },\n  {\n    \"name\": \"Vivid Tangerine\",\n    \"hex\": \"FF9980\"\n  },\n  {\n    \"name\": \"Sunshade\",\n    \"hex\": \"FF9E2C\"\n  },\n  {\n    \"name\": \"Orange Peel\",\n    \"hex\": \"FFA000\"\n  },\n  {\n    \"name\": \"Mona Lisa\",\n    \"hex\": \"FFA194\"\n  },\n  {\n    \"name\": \"Web Orange\",\n    \"hex\": \"FFA500\"\n  },\n  {\n    \"name\": \"Carnation Pink\",\n    \"hex\": \"FFA6C9\"\n  },\n  {\n    \"name\": \"Hit Pink\",\n    \"hex\": \"FFAB81\"\n  },\n  {\n    \"name\": \"Yellow Orange\",\n    \"hex\": \"FFAE42\"\n  },\n  {\n    \"name\": \"Cornflower Lilac\",\n    \"hex\": \"FFB0AC\"\n  },\n  {\n    \"name\": \"Sundown\",\n    \"hex\": \"FFB1B3\"\n  },\n  {\n    \"name\": \"My Sin\",\n    \"hex\": \"FFB31F\"\n  },\n  {\n    \"name\": \"Texas Rose\",\n    \"hex\": \"FFB555\"\n  },\n  {\n    \"name\": \"Cotton Candy\",\n    \"hex\": \"FFB7D5\"\n  },\n  {\n    \"name\": \"Macaroni and Cheese\",\n    \"hex\": \"FFB97B\"\n  },\n  {\n    \"name\": \"Selective Yellow\",\n    \"hex\": \"FFBA00\"\n  },\n  {\n    \"name\": \"Koromiko\",\n    \"hex\": \"FFBD5F\"\n  },\n  {\n    \"name\": \"Amber\",\n    \"hex\": \"FFBF00\"\n  },\n  {\n    \"name\": \"Wax Flower\",\n    \"hex\": \"FFC0A8\"\n  },\n  {\n    \"name\": \"Pink\",\n    \"hex\": \"FFC0CB\"\n  },\n  {\n    \"name\": \"Your Pink\",\n    \"hex\": \"FFC3C0\"\n  },\n  {\n    \"name\": \"Supernova\",\n    \"hex\": \"FFC901\"\n  },\n  {\n    \"name\": \"Flesh\",\n    \"hex\": \"FFCBA4\"\n  },\n  {\n    \"name\": \"Sunglow\",\n    \"hex\": \"FFCC33\"\n  },\n  {\n    \"name\": \"Golden Tainoi\",\n    \"hex\": \"FFCC5C\"\n  },\n  {\n    \"name\": \"Peach Orange\",\n    \"hex\": \"FFCC99\"\n  },\n  {\n    \"name\": \"Chardonnay\",\n    \"hex\": \"FFCD8C\"\n  },\n  {\n    \"name\": \"Pastel Pink\",\n    \"hex\": \"FFD1DC\"\n  },\n  {\n    \"name\": \"Romantic\",\n    \"hex\": \"FFD2B7\"\n  },\n  {\n    \"name\": \"Grandis\",\n    \"hex\": \"FFD38C\"\n  },\n  {\n    \"name\": \"Gold\",\n    \"hex\": \"FFD700\"\n  },\n  {\n    \"name\": \"School bus Yellow\",\n    \"hex\": \"FFD800\"\n  },\n  {\n    \"name\": \"Cosmos\",\n    \"hex\": \"FFD8D9\"\n  },\n  {\n    \"name\": \"Mustard\",\n    \"hex\": \"FFDB58\"\n  },\n  {\n    \"name\": \"Peach Schnapps\",\n    \"hex\": \"FFDCD6\"\n  },\n  {\n    \"name\": \"Caramel\",\n    \"hex\": \"FFDDAF\"\n  },\n  {\n    \"name\": \"Tuft Bush\",\n    \"hex\": \"FFDDCD\"\n  },\n  {\n    \"name\": \"Watusi\",\n    \"hex\": \"FFDDCF\"\n  },\n  {\n    \"name\": \"Pink Lace\",\n    \"hex\": \"FFDDF4\"\n  },\n  {\n    \"name\": \"Navajo White\",\n    \"hex\": \"FFDEAD\"\n  },\n  {\n    \"name\": \"Frangipani\",\n    \"hex\": \"FFDEB3\"\n  },\n  {\n    \"name\": \"Pippin\",\n    \"hex\": \"FFE1DF\"\n  },\n  {\n    \"name\": \"Pale Rose\",\n    \"hex\": \"FFE1F2\"\n  },\n  {\n    \"name\": \"Negroni\",\n    \"hex\": \"FFE2C5\"\n  },\n  {\n    \"name\": \"Cream Brulee\",\n    \"hex\": \"FFE5A0\"\n  },\n  {\n    \"name\": \"Peach\",\n    \"hex\": \"FFE5B4\"\n  },\n  {\n    \"name\": \"Tequila\",\n    \"hex\": \"FFE6C7\"\n  },\n  {\n    \"name\": \"Kournikova\",\n    \"hex\": \"FFE772\"\n  },\n  {\n    \"name\": \"Sandy Beach\",\n    \"hex\": \"FFEAC8\"\n  },\n  {\n    \"name\": \"Karry\",\n    \"hex\": \"FFEAD4\"\n  },\n  {\n    \"name\": \"Broom\",\n    \"hex\": \"FFEC13\"\n  },\n  {\n    \"name\": \"Colonial White\",\n    \"hex\": \"FFEDBC\"\n  },\n  {\n    \"name\": \"Derby\",\n    \"hex\": \"FFEED8\"\n  },\n  {\n    \"name\": \"Vis Vis\",\n    \"hex\": \"FFEFA1\"\n  },\n  {\n    \"name\": \"Egg White\",\n    \"hex\": \"FFEFC1\"\n  },\n  {\n    \"name\": \"Papaya Whip\",\n    \"hex\": \"FFEFD5\"\n  },\n  {\n    \"name\": \"Fair Pink\",\n    \"hex\": \"FFEFEC\"\n  },\n  {\n    \"name\": \"Peach Cream\",\n    \"hex\": \"FFF0DB\"\n  },\n  {\n    \"name\": \"Lavender blush\",\n    \"hex\": \"FFF0F5\"\n  },\n  {\n    \"name\": \"Gorse\",\n    \"hex\": \"FFF14F\"\n  },\n  {\n    \"name\": \"Buttermilk\",\n    \"hex\": \"FFF1B5\"\n  },\n  {\n    \"name\": \"Pink Lady\",\n    \"hex\": \"FFF1D8\"\n  },\n  {\n    \"name\": \"Forget Me Not\",\n    \"hex\": \"FFF1EE\"\n  },\n  {\n    \"name\": \"Tutu\",\n    \"hex\": \"FFF1F9\"\n  },\n  {\n    \"name\": \"Picasso\",\n    \"hex\": \"FFF39D\"\n  },\n  {\n    \"name\": \"Chardon\",\n    \"hex\": \"FFF3F1\"\n  },\n  {\n    \"name\": \"Paris Daisy\",\n    \"hex\": \"FFF46E\"\n  },\n  {\n    \"name\": \"Barley White\",\n    \"hex\": \"FFF4CE\"\n  },\n  {\n    \"name\": \"Egg Sour\",\n    \"hex\": \"FFF4DD\"\n  },\n  {\n    \"name\": \"Sazerac\",\n    \"hex\": \"FFF4E0\"\n  },\n  {\n    \"name\": \"Serenade\",\n    \"hex\": \"FFF4E8\"\n  },\n  {\n    \"name\": \"Chablis\",\n    \"hex\": \"FFF4F3\"\n  },\n  {\n    \"name\": \"Seashell Peach\",\n    \"hex\": \"FFF5EE\"\n  },\n  {\n    \"name\": \"Sauvignon\",\n    \"hex\": \"FFF5F3\"\n  },\n  {\n    \"name\": \"Milk Punch\",\n    \"hex\": \"FFF6D4\"\n  },\n  {\n    \"name\": \"Varden\",\n    \"hex\": \"FFF6DF\"\n  },\n  {\n    \"name\": \"Rose White\",\n    \"hex\": \"FFF6F5\"\n  },\n  {\n    \"name\": \"Baja White\",\n    \"hex\": \"FFF8D1\"\n  },\n  {\n    \"name\": \"Gin Fizz\",\n    \"hex\": \"FFF9E2\"\n  },\n  {\n    \"name\": \"Early Dawn\",\n    \"hex\": \"FFF9E6\"\n  },\n  {\n    \"name\": \"Lemon Chiffon\",\n    \"hex\": \"FFFACD\"\n  },\n  {\n    \"name\": \"Bridal Heath\",\n    \"hex\": \"FFFAF4\"\n  },\n  {\n    \"name\": \"Scotch Mist\",\n    \"hex\": \"FFFBDC\"\n  },\n  {\n    \"name\": \"Soapstone\",\n    \"hex\": \"FFFBF9\"\n  },\n  {\n    \"name\": \"Witch Haze\",\n    \"hex\": \"FFFC99\"\n  },\n  {\n    \"name\": \"Buttery White\",\n    \"hex\": \"FFFCEA\"\n  },\n  {\n    \"name\": \"Island Spice\",\n    \"hex\": \"FFFCEE\"\n  },\n  {\n    \"name\": \"Cream\",\n    \"hex\": \"FFFDD0\"\n  },\n  {\n    \"name\": \"Chilean Heath\",\n    \"hex\": \"FFFDE6\"\n  },\n  {\n    \"name\": \"Travertine\",\n    \"hex\": \"FFFDE8\"\n  },\n  {\n    \"name\": \"Orchid White\",\n    \"hex\": \"FFFDF3\"\n  },\n  {\n    \"name\": \"Quarter Pearl Lusta\",\n    \"hex\": \"FFFDF4\"\n  },\n  {\n    \"name\": \"Half and Half\",\n    \"hex\": \"FFFEE1\"\n  },\n  {\n    \"name\": \"Apricot White\",\n    \"hex\": \"FFFEEC\"\n  },\n  {\n    \"name\": \"Rice Cake\",\n    \"hex\": \"FFFEF0\"\n  },\n  {\n    \"name\": \"Black White\",\n    \"hex\": \"FFFEF6\"\n  },\n  {\n    \"name\": \"Romance\",\n    \"hex\": \"FFFEFD\"\n  },\n  {\n    \"name\": \"Yellow\",\n    \"hex\": \"FFFF00\"\n  },\n  {\n    \"name\": \"Laser Lemon\",\n    \"hex\": \"FFFF66\"\n  },\n  {\n    \"name\": \"Pale Canary\",\n    \"hex\": \"FFFF99\"\n  },\n  {\n    \"name\": \"Portafino\",\n    \"hex\": \"FFFFB4\"\n  },\n  {\n    \"name\": \"Ivory\",\n    \"hex\": \"FFFFF0\"\n  },\n  {\n    \"name\": \"White\",\n    \"hex\": \"FFFFFF\"\n  }\n]\n", "module.exports = [{\n  \"name\": \"Mahogany\",\n  \"hex\": \"#CD4A4A\"\n},{\n  \"name\": \"Fuzzy Wuzzy Brown\",\n  \"hex\": \"#CC6666\"\n},{\n  \"name\": \"Chestnut\",\n  \"hex\": \"#BC5D58\"\n},{\n  \"name\": \"Red Orange\",\n  \"hex\": \"#FF5349\"\n},{\n  \"name\": \"Sunset Orange\",\n  \"hex\": \"#FD5E53\"\n},{\n  \"name\": \"Bittersweet\",\n  \"hex\": \"#FD7C6E\"\n},{\n  \"name\": \"Melon\",\n  \"hex\": \"#FDBCB4\"\n},{\n  \"name\": \"Outrageous Orange\",\n  \"hex\": \"#FF6E4A\"\n},{\n  \"name\": \"Vivid Tangerine\",\n  \"hex\": \"#FFA089\"\n},{\n  \"name\": \"Burnt Sienna\",\n  \"hex\": \"#EA7E5D\"\n},{\n  \"name\": \"Brown\",\n  \"hex\": \"#B4674D\"\n},{\n  \"name\": \"Sepia\",\n  \"hex\": \"#A5694F\"\n},{\n  \"name\": \"Orange\",\n  \"hex\": \"#FF7538\"\n},{\n  \"name\": \"Burnt Orange\",\n  \"hex\": \"#FF7F49\"\n},{\n  \"name\": \"Copper\",\n  \"hex\": \"#DD9475\"\n},{\n  \"name\": \"Mango Tango\",\n  \"hex\": \"#FF8243\"\n},{\n  \"name\": \"Atomic Tangerine\",\n  \"hex\": \"#FFA474\"\n},{\n  \"name\": \"Beaver\",\n  \"hex\": \"#9F8170\"\n},{\n  \"name\": \"Antique Brass\",\n  \"hex\": \"#CD9575\"\n},{\n  \"name\": \"Desert Sand\",\n  \"hex\": \"#EFCDB8\"\n},{\n  \"name\": \"Raw Sienna\",\n  \"hex\": \"#D68A59\"\n},{\n  \"name\": \"Tumbleweed\",\n  \"hex\": \"#DEAA88\"\n},{\n  \"name\": \"Tan\",\n  \"hex\": \"#FAA76C\"\n},{\n  \"name\": \"Peach\",\n  \"hex\": \"#FFCFAB\"\n},{\n  \"name\": \"Macaroni and Cheese\",\n  \"hex\": \"#FFBD88\"\n},{\n  \"name\": \"Apricot\",\n  \"hex\": \"#FDD9B5\"\n},{\n  \"name\": \"Neon Carrot\",\n  \"hex\": \"#FFA343\"\n},{\n  \"name\": \"Almond\",\n  \"hex\": \"#EFDBC5\"\n},{\n  \"name\": \"Yellow Orange\",\n  \"hex\": \"#FFB653\"\n},{\n  \"name\": \"Gold\",\n  \"hex\": \"#E7C697\"\n},{\n  \"name\": \"Shadow\",\n  \"hex\": \"#8A795D\"\n},{\n  \"name\": \"Banana Mania\",\n  \"hex\": \"#FAE7B5\"\n},{\n  \"name\": \"Sunglow\",\n  \"hex\": \"#FFCF48\"\n},{\n  \"name\": \"Goldenrod\",\n  \"hex\": \"#FCD975\"\n},{\n  \"name\": \"Dandelion\",\n  \"hex\": \"#FDDB6D\"\n},{\n  \"name\": \"Yellow\",\n  \"hex\": \"#FCE883\"\n},{\n  \"name\": \"Green Yellow\",\n  \"hex\": \"#F0E891\"\n},{\n  \"name\": \"Spring Green\",\n  \"hex\": \"#ECEABE\"\n},{\n  \"name\": \"Olive Green\",\n  \"hex\": \"#BAB86C\"\n},{\n  \"name\": \"Laser Lemon\",\n  \"hex\": \"#FDFC74\"\n},{\n  \"name\": \"Unmellow Yellow\",\n  \"hex\": \"#FDFC74\"\n},{\n  \"name\": \"Canary\",\n  \"hex\": \"#FFFF99\"\n},{\n  \"name\": \"Yellow Green\",\n  \"hex\": \"#C5E384\"\n},{\n  \"name\": \"Inch Worm\",\n  \"hex\": \"#B2EC5D\"\n},{\n  \"name\": \"Asparagus\",\n  \"hex\": \"#87A96B\"\n},{\n  \"name\": \"Granny Smith Apple\",\n  \"hex\": \"#A8E4A0\"\n},{\n  \"name\": \"Electric Lime\",\n  \"hex\": \"#1DF914\"\n},{\n  \"name\": \"Screamin Green\",\n  \"hex\": \"#76FF7A\"\n},{\n  \"name\": \"Fern\",\n  \"hex\": \"#71BC78\"\n},{\n  \"name\": \"Forest Green\",\n  \"hex\": \"#6DAE81\"\n},{\n  \"name\": \"Sea Green\",\n  \"hex\": \"#9FE2BF\"\n},{\n  \"name\": \"Green\",\n  \"hex\": \"#1CAC78\"\n},{\n  \"name\": \"Mountain Meadow\",\n  \"hex\": \"#30BA8F\"\n},{\n  \"name\": \"Shamrock\",\n  \"hex\": \"#45CEA2\"\n},{\n  \"name\": \"Jungle Green\",\n  \"hex\": \"#3BB08F\"\n},{\n  \"name\": \"Caribbean Green\",\n  \"hex\": \"#1CD3A2\"\n},{\n  \"name\": \"Tropical Rain Forest\",\n  \"hex\": \"#17806D\"\n},{\n  \"name\": \"Pine Green\",\n  \"hex\": \"#158078\"\n},{\n  \"name\": \"Robin Egg Blue\",\n  \"hex\": \"#1FCECB\"\n},{\n  \"name\": \"Aquamarine\",\n  \"hex\": \"#78DBE2\"\n},{\n  \"name\": \"Turquoise Blue\",\n  \"hex\": \"#77DDE7\"\n},{\n  \"name\": \"Sky Blue\",\n  \"hex\": \"#80DAEB\"\n},{\n  \"name\": \"Outer Space\",\n  \"hex\": \"#414A4C\"\n},{\n  \"name\": \"Blue Green\",\n  \"hex\": \"#199EBD\"\n},{\n  \"name\": \"Pacific Blue\",\n  \"hex\": \"#1CA9C9\"\n},{\n  \"name\": \"Cerulean\",\n  \"hex\": \"#1DACD6\"\n},{\n  \"name\": \"Cornflower\",\n  \"hex\": \"#9ACEEB\"\n},{\n  \"name\": \"Midnight Blue\",\n  \"hex\": \"#1A4876\"\n},{\n  \"name\": \"Navy Blue\",\n  \"hex\": \"#1974D2\"\n},{\n  \"name\": \"Denim\",\n  \"hex\": \"#2B6CC4\"\n},{\n  \"name\": \"Blue\",\n  \"hex\": \"#1F75FE\"\n},{\n  \"name\": \"Periwinkle\",\n  \"hex\": \"#C5D0E6\"\n},{\n  \"name\": \"Cadet Blue\",\n  \"hex\": \"#B0B7C6\"\n},{\n  \"name\": \"Indigo\",\n  \"hex\": \"#5D76CB\"\n},{\n  \"name\": \"Wild Blue Yonder\",\n  \"hex\": \"#A2ADD0\"\n},{\n  \"name\": \"Manatee\",\n  \"hex\": \"#979AAA\"\n},{\n  \"name\": \"Blue Bell\",\n  \"hex\": \"#ADADD6\"\n},{\n  \"name\": \"Blue Violet\",\n  \"hex\": \"#7366BD\"\n},{\n  \"name\": \"Purple Heart\",\n  \"hex\": \"#7442C8\"\n},{\n  \"name\": \"Royal Purple\",\n  \"hex\": \"#7851A9\"\n},{\n  \"name\": \"Purple Mountains\u2019 Majesty\",\n  \"hex\": \"#9D81BA\"\n},{\n  \"name\": \"Violet (Purple)\",\n  \"hex\": \"#926EAE\"\n},{\n  \"name\": \"Wisteria\",\n  \"hex\": \"#CDA4DE\"\n},{\n  \"name\": \"Vivid Violet\",\n  \"hex\": \"#8F509D\"\n},{\n  \"name\": \"Fuchsia\",\n  \"hex\": \"#C364C5\"\n},{\n  \"name\": \"Shocking Pink\",\n  \"hex\": \"#FB7EFD\"\n},{\n  \"name\": \"Pink Flamingo\",\n  \"hex\": \"#FC74FD\"\n},{\n  \"name\": \"Plum\",\n  \"hex\": \"#8E4585\"\n},{\n  \"name\": \"Hot Magenta\",\n  \"hex\": \"#FF1DCE\"\n},{\n  \"name\": \"Purple Pizzazz\",\n  \"hex\": \"#FF1DCE\"\n},{\n  \"name\": \"Razzle Dazzle Rose\",\n  \"hex\": \"#FF48D0\"\n},{\n  \"name\": \"Orchid\",\n  \"hex\": \"#E6A8D7\"\n},{\n  \"name\": \"Red Violet\",\n  \"hex\": \"#C0448F\"\n},{\n  \"name\": \"Eggplant\",\n  \"hex\": \"#6E5160\"\n},{\n  \"name\": \"Cerise\",\n  \"hex\": \"#DD4492\"\n},{\n  \"name\": \"Wild Strawberry\",\n  \"hex\": \"#FF43A4\"\n},{\n  \"name\": \"Magenta\",\n  \"hex\": \"#F664AF\"\n},{\n  \"name\": \"Lavender\",\n  \"hex\": \"#FCB4D5\"\n},{\n  \"name\": \"Cotton Candy\",\n  \"hex\": \"#FFBCD9\"\n},{\n  \"name\": \"Violet Red\",\n  \"hex\": \"#F75394\"\n},{\n  \"name\": \"Carnation Pink\",\n  \"hex\": \"#FFAACC\"\n},{\n  \"name\": \"Razzmatazz\",\n  \"hex\": \"#E3256B\"\n},{\n  \"name\": \"Piggy Pink\",\n  \"hex\": \"#FDD7E4\"\n},{\n  \"name\": \"Jazzberry Jam\",\n  \"hex\": \"#CA3767\"\n},{\n  \"name\": \"Blush\",\n  \"hex\": \"#DE5D83\"\n},{\n  \"name\": \"Tickle Me Pink\",\n  \"hex\": \"#FC89AC\"\n},{\n  \"name\": \"Pink Sherbet\",\n  \"hex\": \"#F780A1\"\n},{\n  \"name\": \"Maroon\",\n  \"hex\": \"#C8385A\"\n},{\n  \"name\": \"Red\",\n  \"hex\": \"#EE204D\"\n},{\n  \"name\": \"Radical Red\",\n  \"hex\": \"#FF496C\"\n},{\n  \"name\": \"Mauvelous\",\n  \"hex\": \"#EF98AA\"\n},{\n  \"name\": \"Wild Watermelon\",\n  \"hex\": \"#FC6C85\"\n},{\n  \"name\": \"Scarlet\",\n  \"hex\": \"#FC2847\"\n},{\n  \"name\": \"Salmon\",\n  \"hex\": \"#FF9BAA\"\n},{\n  \"name\": \"Brick Red\",\n  \"hex\": \"#CB4154\"\n},{\n  \"name\": \"White\",\n  \"hex\": \"#EDEDED\"\n},{\n  \"name\": \"Timberwolf\",\n  \"hex\": \"#DBD7D2\"\n},{\n  \"name\": \"Silver\",\n  \"hex\": \"#CDC5C2\"\n},{\n  \"name\": \"Gray\",\n  \"hex\": \"#95918C\"\n},{\n  \"name\": \"Black\",\n  \"hex\": \"#232323\"\n}]\n", "module.exports = [\n  { name: 'red', hex: '#FF0000' },\n  { name: 'orange', hex: '#FFA500' },\n  { name: 'yellow', hex: '#FFFF00' },\n  { name: 'green', hex: '#008000' },\n  { name: 'blue', hex: '#0000FF' },\n  { name: 'indigo', hex: '#4B0082' },\n  { name: 'violet', hex: '#EE82EE' }\n]\n", "module.exports = [{\n  name: 'indigo',\n  hex: '#4b0082'\n}, {\n  name: 'gold',\n  hex: '#ffd700'\n}, {\n  name: 'hotpink',\n  hex: '#ff69b4'\n}, {\n  name: 'firebrick',\n  hex: '#b22222'\n}, {\n  name: 'indianred',\n  hex: '#cd5c5c'\n}, {\n  name: 'yellow',\n  hex: '#ffff00'\n}, {\n  name: 'mistyrose',\n  hex: '#ffe4e1'\n}, {\n  name: 'darkolivegreen',\n  hex: '#556b2f'\n}, {\n  name: 'olive',\n  hex: '#808000'\n}, {\n  name: 'darkseagreen',\n  hex: '#8fbc8f'\n}, {\n  name: 'pink',\n  hex: '#ffc0cb'\n}, {\n  name: 'tomato',\n  hex: '#ff6347'\n}, {\n  name: 'lightcoral',\n  hex: '#f08080'\n}, {\n  name: 'orangered',\n  hex: '#ff4500'\n}, {\n  name: 'navajowhite',\n  hex: '#ffdead'\n}, {\n  name: 'lime',\n  hex: '#00ff00'\n}, {\n  name: 'palegreen',\n  hex: '#98fb98'\n}, {\n  name: 'darkslategrey',\n  hex: '#2f4f4f'\n}, {\n  name: 'greenyellow',\n  hex: '#adff2f'\n}, {\n  name: 'burlywood',\n  hex: '#deb887'\n}, {\n  name: 'seashell',\n  hex: '#fff5ee'\n}, {\n  name: 'mediumspringgreen',\n  hex: '#00fa9a'\n}, {\n  name: 'fuchsia',\n  hex: '#ff00ff'\n}, {\n  name: 'papayawhip',\n  hex: '#ffefd5'\n}, {\n  name: 'blanchedalmond',\n  hex: '#ffebcd'\n}, {\n  name: 'chartreuse',\n  hex: '#7fff00'\n}, {\n  name: 'dimgray',\n  hex: '#696969'\n}, {\n  name: 'black',\n  hex: '#000000'\n}, {\n  name: 'peachpuff',\n  hex: '#ffdab9'\n}, {\n  name: 'springgreen',\n  hex: '#00ff7f'\n}, {\n  name: 'aquamarine',\n  hex: '#7fffd4'\n}, {\n  name: 'white',\n  hex: '#ffffff'\n}, {\n  name: 'orange',\n  hex: '#ffa500'\n}, {\n  name: 'lightsalmon',\n  hex: '#ffa07a'\n}, {\n  name: 'darkslategray',\n  hex: '#2f4f4f'\n}, {\n  name: 'brown',\n  hex: '#a52a2a'\n}, {\n  name: 'ivory',\n  hex: '#fffff0'\n}, {\n  name: 'dodgerblue',\n  hex: '#1e90ff'\n}, {\n  name: 'peru',\n  hex: '#cd853f'\n}, {\n  name: 'lawngreen',\n  hex: '#7cfc00'\n}, {\n  name: 'chocolate',\n  hex: '#d2691e'\n}, {\n  name: 'crimson',\n  hex: '#dc143c'\n}, {\n  name: 'forestgreen',\n  hex: '#228b22'\n}, {\n  name: 'darkgrey',\n  hex: '#a9a9a9'\n}, {\n  name: 'lightseagreen',\n  hex: '#20b2aa'\n}, {\n  name: 'cyan',\n  hex: '#00ffff'\n}, {\n  name: 'mintcream',\n  hex: '#f5fffa'\n}, {\n  name: 'silver',\n  hex: '#c0c0c0'\n}, {\n  name: 'antiquewhite',\n  hex: '#faebd7'\n}, {\n  name: 'mediumorchid',\n  hex: '#ba55d3'\n}, {\n  name: 'skyblue',\n  hex: '#87ceeb'\n}, {\n  name: 'gray',\n  hex: '#808080'\n}, {\n  name: 'darkturquoise',\n  hex: '#00ced1'\n}, {\n  name: 'goldenrod',\n  hex: '#daa520'\n}, {\n  name: 'darkgreen',\n  hex: '#006400'\n}, {\n  name: 'floralwhite',\n  hex: '#fffaf0'\n}, {\n  name: 'darkviolet',\n  hex: '#9400d3'\n}, {\n  name: 'darkgray',\n  hex: '#a9a9a9'\n}, {\n  name: 'moccasin',\n  hex: '#ffe4b5'\n}, {\n  name: 'saddlebrown',\n  hex: '#8b4513'\n}, {\n  name: 'grey',\n  hex: '#808080'\n}, {\n  name: 'darkslateblue',\n  hex: '#483d8b'\n}, {\n  name: 'lightskyblue',\n  hex: '#87cefa'\n}, {\n  name: 'lightpink',\n  hex: '#ffb6c1'\n}, {\n  name: 'mediumvioletred',\n  hex: '#c71585'\n}, {\n  name: 'slategrey',\n  hex: '#708090'\n}, {\n  name: 'red',\n  hex: '#ff0000'\n}, {\n  name: 'deeppink',\n  hex: '#ff1493'\n}, {\n  name: 'limegreen',\n  hex: '#32cd32'\n}, {\n  name: 'darkmagenta',\n  hex: '#8b008b'\n}, {\n  name: 'palegoldenrod',\n  hex: '#eee8aa'\n}, {\n  name: 'plum',\n  hex: '#dda0dd'\n}, {\n  name: 'turquoise',\n  hex: '#40e0d0'\n}, {\n  name: 'lightgrey',\n  hex: '#d3d3d3'\n}, {\n  name: 'lightgoldenrodyellow',\n  hex: '#fafad2'\n}, {\n  name: 'darkgoldenrod',\n  hex: '#b8860b'\n}, {\n  name: 'lavender',\n  hex: '#e6e6fa'\n}, {\n  name: 'maroon',\n  hex: '#800000'\n}, {\n  name: 'yellowgreen',\n  hex: '#9acd32'\n}, {\n  name: 'sandybrown',\n  hex: '#f4a460'\n}, {\n  name: 'thistle',\n  hex: '#d8bfd8'\n}, {\n  name: 'violet',\n  hex: '#ee82ee'\n}, {\n  name: 'navy',\n  hex: '#000080'\n}, {\n  name: 'magenta',\n  hex: '#ff00ff'\n}, {\n  name: 'dimgrey',\n  hex: '#696969'\n}, {\n  name: 'tan',\n  hex: '#d2b48c'\n}, {\n  name: 'rosybrown',\n  hex: '#bc8f8f'\n}, {\n  name: 'olivedrab',\n  hex: '#6b8e23'\n}, {\n  name: 'blue',\n  hex: '#0000ff'\n}, {\n  name: 'lightblue',\n  hex: '#add8e6'\n}, {\n  name: 'ghostwhite',\n  hex: '#f8f8ff'\n}, {\n  name: 'honeydew',\n  hex: '#f0fff0'\n}, {\n  name: 'cornflowerblue',\n  hex: '#6495ed'\n}, {\n  name: 'slateblue',\n  hex: '#6a5acd'\n}, {\n  name: 'linen',\n  hex: '#faf0e6'\n}, {\n  name: 'darkblue',\n  hex: '#00008b'\n}, {\n  name: 'powderblue',\n  hex: '#b0e0e6'\n}, {\n  name: 'seagreen',\n  hex: '#2e8b57'\n}, {\n  name: 'darkkhaki',\n  hex: '#bdb76b'\n}, {\n  name: 'snow',\n  hex: '#fffafa'\n}, {\n  name: 'sienna',\n  hex: '#a0522d'\n}, {\n  name: 'mediumblue',\n  hex: '#0000cd'\n}, {\n  name: 'royalblue',\n  hex: '#4169e1'\n}, {\n  name: 'lightcyan',\n  hex: '#e0ffff'\n}, {\n  name: 'green',\n  hex: '#008000'\n}, {\n  name: 'mediumpurple',\n  hex: '#9370db'\n}, {\n  name: 'midnightblue',\n  hex: '#191970'\n}, {\n  name: 'cornsilk',\n  hex: '#fff8dc'\n}, {\n  name: 'paleturquoise',\n  hex: '#afeeee'\n}, {\n  name: 'bisque',\n  hex: '#ffe4c4'\n}, {\n  name: 'slategray',\n  hex: '#708090'\n}, {\n  name: 'darkcyan',\n  hex: '#008b8b'\n}, {\n  name: 'khaki',\n  hex: '#f0e68c'\n}, {\n  name: 'wheat',\n  hex: '#f5deb3'\n}, {\n  name: 'teal',\n  hex: '#008080'\n}, {\n  name: 'darkorchid',\n  hex: '#9932cc'\n}, {\n  name: 'deepskyblue',\n  hex: '#00bfff'\n}, {\n  name: 'salmon',\n  hex: '#fa8072'\n}, {\n  name: 'darkred',\n  hex: '#8b0000'\n}, {\n  name: 'steelblue',\n  hex: '#4682b4'\n}, {\n  name: 'palevioletred',\n  hex: '#db7093'\n}, {\n  name: 'lightslategray',\n  hex: '#778899'\n}, {\n  name: 'aliceblue',\n  hex: '#f0f8ff'\n}, {\n  name: 'lightslategrey',\n  hex: '#778899'\n}, {\n  name: 'lightgreen',\n  hex: '#90ee90'\n}, {\n  name: 'orchid',\n  hex: '#da70d6'\n}, {\n  name: 'gainsboro',\n  hex: '#dcdcdc'\n}, {\n  name: 'mediumseagreen',\n  hex: '#3cb371'\n}, {\n  name: 'lightgray',\n  hex: '#d3d3d3'\n}, {\n  name: 'mediumturquoise',\n  hex: '#48d1cc'\n}, {\n  name: 'lemonchiffon',\n  hex: '#fffacd'\n}, {\n  name: 'cadetblue',\n  hex: '#5f9ea0'\n}, {\n  name: 'lightyellow',\n  hex: '#ffffe0'\n}, {\n  name: 'lavenderblush',\n  hex: '#fff0f5'\n}, {\n  name: 'coral',\n  hex: '#ff7f50'\n}, {\n  name: 'purple',\n  hex: '#800080'\n}, {\n  name: 'aqua',\n  hex: '#00ffff'\n}, {\n  name: 'whitesmoke',\n  hex: '#f5f5f5'\n}, {\n  name: 'mediumslateblue',\n  hex: '#7b68ee'\n}, {\n  name: 'darkorange',\n  hex: '#ff8c00'\n}, {\n  name: 'mediumaquamarine',\n  hex: '#66cdaa'\n}, {\n  name: 'darksalmon',\n  hex: '#e9967a'\n}, {\n  name: 'beige',\n  hex: '#f5f5dc'\n}, {\n  name: 'blueviolet',\n  hex: '#8a2be2'\n}, {\n  name: 'azure',\n  hex: '#f0ffff'\n}, {\n  name: 'lightsteelblue',\n  hex: '#b0c4de'\n}, {\n  name: 'oldlace',\n  hex: '#fdf5e6'\n}]\n", "\"use strict\";\n\nvar chroma = require('chroma-js')\nvar WeakMap = require(\"es6-weak-map\")\n\n// These `require` statements are all explicit\n// to keep the browserify build from breaking\nvar lists = {\n  basic: require('./lib/colors/basic'),\n  html: require('./lib/colors/html'),\n  ntc: require('./lib/colors/ntc'),\n  pantone: require('./lib/colors/pantone'),\n  roygbiv: require('./lib/colors/roygbiv'),\n  x11: require('./lib/colors/x11')\n}\n\nvar cache = new WeakMap()\nvar namer = module.exports = function(color, options) {\n  options = options || {}\n\n  var cacheKey = {color, options}\n  if (cache.has(cacheKey)) {\n    return cache.get(cacheKey)\n  }\n\n  var deltaE = String(options.distance).toLowerCase() === 'deltae';\n  color = chroma(color)\n  var results = {}\n  for (var key in lists) {\n    if (options.pick && options.pick.indexOf(key) === -1) {\n      continue\n    }\n    if (options.omit && options.omit.indexOf(key) !== -1) {\n      continue\n    }\n    results[key] = lists[key]\n      .map (function(name) {\n        name.distance = deltaE ? chroma.deltaE(color, chroma(name.hex)) : chroma.distance(color, chroma(name.hex))\n        return name\n      })\n      .sort (function(a, b) {\n        return a.distance - b.distance\n      })\n  }\n  cache.set(cacheKey, results)\n  return results\n}\n\nnamer.chroma = chroma\nnamer.lists = lists\n", "/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n  this.__data__ = [];\n  this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n", "/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n  return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n", "var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n  var length = array.length;\n  while (length--) {\n    if (eq(array[length][0], key)) {\n      return length;\n    }\n  }\n  return -1;\n}\n\nmodule.exports = assocIndexOf;\n", "var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n  var data = this.__data__,\n      index = assocIndexOf(data, key);\n\n  if (index < 0) {\n    return false;\n  }\n  var lastIndex = data.length - 1;\n  if (index == lastIndex) {\n    data.pop();\n  } else {\n    splice.call(data, index, 1);\n  }\n  --this.size;\n  return true;\n}\n\nmodule.exports = listCacheDelete;\n", "var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n  var data = this.__data__,\n      index = assocIndexOf(data, key);\n\n  return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n", "var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n  return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n", "var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n  var data = this.__data__,\n      index = assocIndexOf(data, key);\n\n  if (index < 0) {\n    ++this.size;\n    data.push([key, value]);\n  } else {\n    data[index][1] = value;\n  }\n  return this;\n}\n\nmodule.exports = listCacheSet;\n", "var listCacheClear = require('./_listCacheClear'),\n    listCacheDelete = require('./_listCacheDelete'),\n    listCacheGet = require('./_listCacheGet'),\n    listCacheHas = require('./_listCacheHas'),\n    listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n  var index = -1,\n      length = entries == null ? 0 : entries.length;\n\n  this.clear();\n  while (++index < length) {\n    var entry = entries[index];\n    this.set(entry[0], entry[1]);\n  }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n", "var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n  this.__data__ = new ListCache;\n  this.size = 0;\n}\n\nmodule.exports = stackClear;\n", "/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n  var data = this.__data__,\n      result = data['delete'](key);\n\n  this.size = data.size;\n  return result;\n}\n\nmodule.exports = stackDelete;\n", "/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n  return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n", "/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n  return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n", "/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n", "var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n", "var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n", "var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n  var isOwn = hasOwnProperty.call(value, symToStringTag),\n      tag = value[symToStringTag];\n\n  try {\n    value[symToStringTag] = undefined;\n    var unmasked = true;\n  } catch (e) {}\n\n  var result = nativeObjectToString.call(value);\n  if (unmasked) {\n    if (isOwn) {\n      value[symToStringTag] = tag;\n    } else {\n      delete value[symToStringTag];\n    }\n  }\n  return result;\n}\n\nmodule.exports = getRawTag;\n", "/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n  return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n", "var Symbol = require('./_Symbol'),\n    getRawTag = require('./_getRawTag'),\n    objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n    undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n  if (value == null) {\n    return value === undefined ? undefinedTag : nullTag;\n  }\n  return (symToStringTag && symToStringTag in Object(value))\n    ? getRawTag(value)\n    : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n", "/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n  var type = typeof value;\n  return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n", "var baseGetTag = require('./_baseGetTag'),\n    isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n    funcTag = '[object Function]',\n    genTag = '[object GeneratorFunction]',\n    proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n  if (!isObject(value)) {\n    return false;\n  }\n  // The use of `Object#toString` avoids issues with the `typeof` operator\n  // in Safari 9 which returns 'object' for typed arrays and other constructors.\n  var tag = baseGetTag(value);\n  return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n", "var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n", "var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n  return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n  return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n", "/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n  if (func != null) {\n    try {\n      return funcToString.call(func);\n    } catch (e) {}\n    try {\n      return (func + '');\n    } catch (e) {}\n  }\n  return '';\n}\n\nmodule.exports = toSource;\n", "var isFunction = require('./isFunction'),\n    isMasked = require('./_isMasked'),\n    isObject = require('./isObject'),\n    toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n    objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n  funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n  .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n *  else `false`.\n */\nfunction baseIsNative(value) {\n  if (!isObject(value) || isMasked(value)) {\n    return false;\n  }\n  var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n  return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n", "/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n  return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n", "var baseIsNative = require('./_baseIsNative'),\n    getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n  var value = getValue(object, key);\n  return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n", "var getNative = require('./_getNative'),\n    root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n", "var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n", "var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n  this.__data__ = nativeCreate ? nativeCreate(null) : {};\n  this.size = 0;\n}\n\nmodule.exports = hashClear;\n", "/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n  var result = this.has(key) && delete this.__data__[key];\n  this.size -= result ? 1 : 0;\n  return result;\n}\n\nmodule.exports = hashDelete;\n", "var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n  var data = this.__data__;\n  if (nativeCreate) {\n    var result = data[key];\n    return result === HASH_UNDEFINED ? undefined : result;\n  }\n  return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n", "var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n  var data = this.__data__;\n  return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n", "var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n  var data = this.__data__;\n  this.size += this.has(key) ? 0 : 1;\n  data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n  return this;\n}\n\nmodule.exports = hashSet;\n", "var hashClear = require('./_hashClear'),\n    hashDelete = require('./_hashDelete'),\n    hashGet = require('./_hashGet'),\n    hashHas = require('./_hashHas'),\n    hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n  var index = -1,\n      length = entries == null ? 0 : entries.length;\n\n  this.clear();\n  while (++index < length) {\n    var entry = entries[index];\n    this.set(entry[0], entry[1]);\n  }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n", "var Hash = require('./_Hash'),\n    ListCache = require('./_ListCache'),\n    Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n  this.size = 0;\n  this.__data__ = {\n    'hash': new Hash,\n    'map': new (Map || ListCache),\n    'string': new Hash\n  };\n}\n\nmodule.exports = mapCacheClear;\n", "/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n  var type = typeof value;\n  return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n    ? (value !== '__proto__')\n    : (value === null);\n}\n\nmodule.exports = isKeyable;\n", "var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n  var data = map.__data__;\n  return isKeyable(key)\n    ? data[typeof key == 'string' ? 'string' : 'hash']\n    : data.map;\n}\n\nmodule.exports = getMapData;\n", "var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n  var result = getMapData(this, key)['delete'](key);\n  this.size -= result ? 1 : 0;\n  return result;\n}\n\nmodule.exports = mapCacheDelete;\n", "var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n  return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n", "var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n  return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n", "var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n  var data = getMapData(this, key),\n      size = data.size;\n\n  data.set(key, value);\n  this.size += data.size == size ? 0 : 1;\n  return this;\n}\n\nmodule.exports = mapCacheSet;\n", "var mapCacheClear = require('./_mapCacheClear'),\n    mapCacheDelete = require('./_mapCacheDelete'),\n    mapCacheGet = require('./_mapCacheGet'),\n    mapCacheHas = require('./_mapCacheHas'),\n    mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n  var index = -1,\n      length = entries == null ? 0 : entries.length;\n\n  this.clear();\n  while (++index < length) {\n    var entry = entries[index];\n    this.set(entry[0], entry[1]);\n  }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n", "var ListCache = require('./_ListCache'),\n    Map = require('./_Map'),\n    MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n  var data = this.__data__;\n  if (data instanceof ListCache) {\n    var pairs = data.__data__;\n    if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n      pairs.push([key, value]);\n      this.size = ++data.size;\n      return this;\n    }\n    data = this.__data__ = new MapCache(pairs);\n  }\n  data.set(key, value);\n  this.size = data.size;\n  return this;\n}\n\nmodule.exports = stackSet;\n", "var ListCache = require('./_ListCache'),\n    stackClear = require('./_stackClear'),\n    stackDelete = require('./_stackDelete'),\n    stackGet = require('./_stackGet'),\n    stackHas = require('./_stackHas'),\n    stackSet = require('./_stackSet');\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n  var data = this.__data__ = new ListCache(entries);\n  this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n", "/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n  this.__data__.set(value, HASH_UNDEFINED);\n  return this;\n}\n\nmodule.exports = setCacheAdd;\n", "/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n  return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n", "var MapCache = require('./_MapCache'),\n    setCacheAdd = require('./_setCacheAdd'),\n    setCacheHas = require('./_setCacheHas');\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n  var index = -1,\n      length = values == null ? 0 : values.length;\n\n  this.__data__ = new MapCache;\n  while (++index < length) {\n    this.add(values[index]);\n  }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nmodule.exports = SetCache;\n", "/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n *  else `false`.\n */\nfunction arraySome(array, predicate) {\n  var index = -1,\n      length = array == null ? 0 : array.length;\n\n  while (++index < length) {\n    if (predicate(array[index], index, array)) {\n      return true;\n    }\n  }\n  return false;\n}\n\nmodule.exports = arraySome;\n", "/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n  return cache.has(key);\n}\n\nmodule.exports = cacheHas;\n", "var SetCache = require('./_SetCache'),\n    arraySome = require('./_arraySome'),\n    cacheHas = require('./_cacheHas');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n    COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n      arrLength = array.length,\n      othLength = other.length;\n\n  if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n    return false;\n  }\n  // Check that cyclic values are equal.\n  var arrStacked = stack.get(array);\n  var othStacked = stack.get(other);\n  if (arrStacked && othStacked) {\n    return arrStacked == other && othStacked == array;\n  }\n  var index = -1,\n      result = true,\n      seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n  stack.set(array, other);\n  stack.set(other, array);\n\n  // Ignore non-index properties.\n  while (++index < arrLength) {\n    var arrValue = array[index],\n        othValue = other[index];\n\n    if (customizer) {\n      var compared = isPartial\n        ? customizer(othValue, arrValue, index, other, array, stack)\n        : customizer(arrValue, othValue, index, array, other, stack);\n    }\n    if (compared !== undefined) {\n      if (compared) {\n        continue;\n      }\n      result = false;\n      break;\n    }\n    // Recursively compare arrays (susceptible to call stack limits).\n    if (seen) {\n      if (!arraySome(other, function(othValue, othIndex) {\n            if (!cacheHas(seen, othIndex) &&\n                (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n              return seen.push(othIndex);\n            }\n          })) {\n        result = false;\n        break;\n      }\n    } else if (!(\n          arrValue === othValue ||\n            equalFunc(arrValue, othValue, bitmask, customizer, stack)\n        )) {\n      result = false;\n      break;\n    }\n  }\n  stack['delete'](array);\n  stack['delete'](other);\n  return result;\n}\n\nmodule.exports = equalArrays;\n", "var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n", "/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n  var index = -1,\n      result = Array(map.size);\n\n  map.forEach(function(value, key) {\n    result[++index] = [key, value];\n  });\n  return result;\n}\n\nmodule.exports = mapToArray;\n", "/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n  var index = -1,\n      result = Array(set.size);\n\n  set.forEach(function(value) {\n    result[++index] = value;\n  });\n  return result;\n}\n\nmodule.exports = setToArray;\n", "var Symbol = require('./_Symbol'),\n    Uint8Array = require('./_Uint8Array'),\n    eq = require('./eq'),\n    equalArrays = require('./_equalArrays'),\n    mapToArray = require('./_mapToArray'),\n    setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n    COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n    dateTag = '[object Date]',\n    errorTag = '[object Error]',\n    mapTag = '[object Map]',\n    numberTag = '[object Number]',\n    regexpTag = '[object RegExp]',\n    setTag = '[object Set]',\n    stringTag = '[object String]',\n    symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n    dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n    symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n  switch (tag) {\n    case dataViewTag:\n      if ((object.byteLength != other.byteLength) ||\n          (object.byteOffset != other.byteOffset)) {\n        return false;\n      }\n      object = object.buffer;\n      other = other.buffer;\n\n    case arrayBufferTag:\n      if ((object.byteLength != other.byteLength) ||\n          !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n        return false;\n      }\n      return true;\n\n    case boolTag:\n    case dateTag:\n    case numberTag:\n      // Coerce booleans to `1` or `0` and dates to milliseconds.\n      // Invalid dates are coerced to `NaN`.\n      return eq(+object, +other);\n\n    case errorTag:\n      return object.name == other.name && object.message == other.message;\n\n    case regexpTag:\n    case stringTag:\n      // Coerce regexes to strings and treat strings, primitives and objects,\n      // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n      // for more details.\n      return object == (other + '');\n\n    case mapTag:\n      var convert = mapToArray;\n\n    case setTag:\n      var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n      convert || (convert = setToArray);\n\n      if (object.size != other.size && !isPartial) {\n        return false;\n      }\n      // Assume cyclic values are equal.\n      var stacked = stack.get(object);\n      if (stacked) {\n        return stacked == other;\n      }\n      bitmask |= COMPARE_UNORDERED_FLAG;\n\n      // Recursively compare objects (susceptible to call stack limits).\n      stack.set(object, other);\n      var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n      stack['delete'](object);\n      return result;\n\n    case symbolTag:\n      if (symbolValueOf) {\n        return symbolValueOf.call(object) == symbolValueOf.call(other);\n      }\n  }\n  return false;\n}\n\nmodule.exports = equalByTag;\n", "/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n  var index = -1,\n      length = values.length,\n      offset = array.length;\n\n  while (++index < length) {\n    array[offset + index] = values[index];\n  }\n  return array;\n}\n\nmodule.exports = arrayPush;\n", "/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n", "var arrayPush = require('./_arrayPush'),\n    isArray = require('./isArray');\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n  var result = keysFunc(object);\n  return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n", "/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n  var index = -1,\n      length = array == null ? 0 : array.length,\n      resIndex = 0,\n      result = [];\n\n  while (++index < length) {\n    var value = array[index];\n    if (predicate(value, index, array)) {\n      result[resIndex++] = value;\n    }\n  }\n  return result;\n}\n\nmodule.exports = arrayFilter;\n", "/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n  return [];\n}\n\nmodule.exports = stubArray;\n", "var arrayFilter = require('./_arrayFilter'),\n    stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n  if (object == null) {\n    return [];\n  }\n  object = Object(object);\n  return arrayFilter(nativeGetSymbols(object), function(symbol) {\n    return propertyIsEnumerable.call(object, symbol);\n  });\n};\n\nmodule.exports = getSymbols;\n", "/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n  var index = -1,\n      result = Array(n);\n\n  while (++index < n) {\n    result[index] = iteratee(index);\n  }\n  return result;\n}\n\nmodule.exports = baseTimes;\n", "/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n  return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n", "var baseGetTag = require('./_baseGetTag'),\n    isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n  return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n", "var baseIsArguments = require('./_baseIsArguments'),\n    isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n *  else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n  return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n    !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n", "/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n  return false;\n}\n\nmodule.exports = stubFalse;\n", "var root = require('./_root'),\n    stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n", "/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n  var type = typeof value;\n  length = length == null ? MAX_SAFE_INTEGER : length;\n\n  return !!length &&\n    (type == 'number' ||\n      (type != 'symbol' && reIsUint.test(value))) &&\n        (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n", "/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n  return typeof value == 'number' &&\n    value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n", "var baseGetTag = require('./_baseGetTag'),\n    isLength = require('./isLength'),\n    isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n    arrayTag = '[object Array]',\n    boolTag = '[object Boolean]',\n    dateTag = '[object Date]',\n    errorTag = '[object Error]',\n    funcTag = '[object Function]',\n    mapTag = '[object Map]',\n    numberTag = '[object Number]',\n    objectTag = '[object Object]',\n    regexpTag = '[object RegExp]',\n    setTag = '[object Set]',\n    stringTag = '[object String]',\n    weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n    dataViewTag = '[object DataView]',\n    float32Tag = '[object Float32Array]',\n    float64Tag = '[object Float64Array]',\n    int8Tag = '[object Int8Array]',\n    int16Tag = '[object Int16Array]',\n    int32Tag = '[object Int32Array]',\n    uint8Tag = '[object Uint8Array]',\n    uint8ClampedTag = '[object Uint8ClampedArray]',\n    uint16Tag = '[object Uint16Array]',\n    uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n  return isObjectLike(value) &&\n    isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n", "/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n  return function(value) {\n    return func(value);\n  };\n}\n\nmodule.exports = baseUnary;\n", "var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n  try {\n    // Use `util.types` for Node.js 10+.\n    var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n    if (types) {\n      return types;\n    }\n\n    // Legacy `process.binding('util')` for Node.js < 10.\n    return freeProcess && freeProcess.binding && freeProcess.binding('util');\n  } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n", "var baseIsTypedArray = require('./_baseIsTypedArray'),\n    baseUnary = require('./_baseUnary'),\n    nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n", "var baseTimes = require('./_baseTimes'),\n    isArguments = require('./isArguments'),\n    isArray = require('./isArray'),\n    isBuffer = require('./isBuffer'),\n    isIndex = require('./_isIndex'),\n    isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n  var isArr = isArray(value),\n      isArg = !isArr && isArguments(value),\n      isBuff = !isArr && !isArg && isBuffer(value),\n      isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n      skipIndexes = isArr || isArg || isBuff || isType,\n      result = skipIndexes ? baseTimes(value.length, String) : [],\n      length = result.length;\n\n  for (var key in value) {\n    if ((inherited || hasOwnProperty.call(value, key)) &&\n        !(skipIndexes && (\n           // Safari 9 has enumerable `arguments.length` in strict mode.\n           key == 'length' ||\n           // Node.js 0.10 has enumerable non-index properties on buffers.\n           (isBuff && (key == 'offset' || key == 'parent')) ||\n           // PhantomJS 2 has enumerable non-index properties on typed arrays.\n           (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n           // Skip index properties.\n           isIndex(key, length)\n        ))) {\n      result.push(key);\n    }\n  }\n  return result;\n}\n\nmodule.exports = arrayLikeKeys;\n", "/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n  var Ctor = value && value.constructor,\n      proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n  return value === proto;\n}\n\nmodule.exports = isPrototype;\n", "/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n  return function(arg) {\n    return func(transform(arg));\n  };\n}\n\nmodule.exports = overArg;\n", "var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n", "var isPrototype = require('./_isPrototype'),\n    nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n  if (!isPrototype(object)) {\n    return nativeKeys(object);\n  }\n  var result = [];\n  for (var key in Object(object)) {\n    if (hasOwnProperty.call(object, key) && key != 'constructor') {\n      result.push(key);\n    }\n  }\n  return result;\n}\n\nmodule.exports = baseKeys;\n", "var isFunction = require('./isFunction'),\n    isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n  return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n", "var arrayLikeKeys = require('./_arrayLikeKeys'),\n    baseKeys = require('./_baseKeys'),\n    isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n *   this.a = 1;\n *   this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n", "var baseGetAllKeys = require('./_baseGetAllKeys'),\n    getSymbols = require('./_getSymbols'),\n    keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n  return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n", "var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n      objProps = getAllKeys(object),\n      objLength = objProps.length,\n      othProps = getAllKeys(other),\n      othLength = othProps.length;\n\n  if (objLength != othLength && !isPartial) {\n    return false;\n  }\n  var index = objLength;\n  while (index--) {\n    var key = objProps[index];\n    if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n      return false;\n    }\n  }\n  // Check that cyclic values are equal.\n  var objStacked = stack.get(object);\n  var othStacked = stack.get(other);\n  if (objStacked && othStacked) {\n    return objStacked == other && othStacked == object;\n  }\n  var result = true;\n  stack.set(object, other);\n  stack.set(other, object);\n\n  var skipCtor = isPartial;\n  while (++index < objLength) {\n    key = objProps[index];\n    var objValue = object[key],\n        othValue = other[key];\n\n    if (customizer) {\n      var compared = isPartial\n        ? customizer(othValue, objValue, key, other, object, stack)\n        : customizer(objValue, othValue, key, object, other, stack);\n    }\n    // Recursively compare objects (susceptible to call stack limits).\n    if (!(compared === undefined\n          ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n          : compared\n        )) {\n      result = false;\n      break;\n    }\n    skipCtor || (skipCtor = key == 'constructor');\n  }\n  if (result && !skipCtor) {\n    var objCtor = object.constructor,\n        othCtor = other.constructor;\n\n    // Non `Object` object instances with different constructors are not equal.\n    if (objCtor != othCtor &&\n        ('constructor' in object && 'constructor' in other) &&\n        !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n          typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n      result = false;\n    }\n  }\n  stack['delete'](object);\n  stack['delete'](other);\n  return result;\n}\n\nmodule.exports = equalObjects;\n", "var getNative = require('./_getNative'),\n    root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n", "var getNative = require('./_getNative'),\n    root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n", "var getNative = require('./_getNative'),\n    root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n", "var getNative = require('./_getNative'),\n    root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n", "var DataView = require('./_DataView'),\n    Map = require('./_Map'),\n    Promise = require('./_Promise'),\n    Set = require('./_Set'),\n    WeakMap = require('./_WeakMap'),\n    baseGetTag = require('./_baseGetTag'),\n    toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n    objectTag = '[object Object]',\n    promiseTag = '[object Promise]',\n    setTag = '[object Set]',\n    weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n    mapCtorString = toSource(Map),\n    promiseCtorString = toSource(Promise),\n    setCtorString = toSource(Set),\n    weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n    (Map && getTag(new Map) != mapTag) ||\n    (Promise && getTag(Promise.resolve()) != promiseTag) ||\n    (Set && getTag(new Set) != setTag) ||\n    (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n  getTag = function(value) {\n    var result = baseGetTag(value),\n        Ctor = result == objectTag ? value.constructor : undefined,\n        ctorString = Ctor ? toSource(Ctor) : '';\n\n    if (ctorString) {\n      switch (ctorString) {\n        case dataViewCtorString: return dataViewTag;\n        case mapCtorString: return mapTag;\n        case promiseCtorString: return promiseTag;\n        case setCtorString: return setTag;\n        case weakMapCtorString: return weakMapTag;\n      }\n    }\n    return result;\n  };\n}\n\nmodule.exports = getTag;\n", "var Stack = require('./_Stack'),\n    equalArrays = require('./_equalArrays'),\n    equalByTag = require('./_equalByTag'),\n    equalObjects = require('./_equalObjects'),\n    getTag = require('./_getTag'),\n    isArray = require('./isArray'),\n    isBuffer = require('./isBuffer'),\n    isTypedArray = require('./isTypedArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n    arrayTag = '[object Array]',\n    objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n  var objIsArr = isArray(object),\n      othIsArr = isArray(other),\n      objTag = objIsArr ? arrayTag : getTag(object),\n      othTag = othIsArr ? arrayTag : getTag(other);\n\n  objTag = objTag == argsTag ? objectTag : objTag;\n  othTag = othTag == argsTag ? objectTag : othTag;\n\n  var objIsObj = objTag == objectTag,\n      othIsObj = othTag == objectTag,\n      isSameTag = objTag == othTag;\n\n  if (isSameTag && isBuffer(object)) {\n    if (!isBuffer(other)) {\n      return false;\n    }\n    objIsArr = true;\n    objIsObj = false;\n  }\n  if (isSameTag && !objIsObj) {\n    stack || (stack = new Stack);\n    return (objIsArr || isTypedArray(object))\n      ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n      : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n  }\n  if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n    var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n        othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n    if (objIsWrapped || othIsWrapped) {\n      var objUnwrapped = objIsWrapped ? object.value() : object,\n          othUnwrapped = othIsWrapped ? other.value() : other;\n\n      stack || (stack = new Stack);\n      return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n    }\n  }\n  if (!isSameTag) {\n    return false;\n  }\n  stack || (stack = new Stack);\n  return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nmodule.exports = baseIsEqualDeep;\n", "var baseIsEqualDeep = require('./_baseIsEqualDeep'),\n    isObjectLike = require('./isObjectLike');\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n *  1 - Unordered comparison\n *  2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n  if (value === other) {\n    return true;\n  }\n  if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n    return value !== value && other !== other;\n  }\n  return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n", "var Stack = require('./_Stack'),\n    baseIsEqual = require('./_baseIsEqual');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n    COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\nfunction baseIsMatch(object, source, matchData, customizer) {\n  var index = matchData.length,\n      length = index,\n      noCustomizer = !customizer;\n\n  if (object == null) {\n    return !length;\n  }\n  object = Object(object);\n  while (index--) {\n    var data = matchData[index];\n    if ((noCustomizer && data[2])\n          ? data[1] !== object[data[0]]\n          : !(data[0] in object)\n        ) {\n      return false;\n    }\n  }\n  while (++index < length) {\n    data = matchData[index];\n    var key = data[0],\n        objValue = object[key],\n        srcValue = data[1];\n\n    if (noCustomizer && data[2]) {\n      if (objValue === undefined && !(key in object)) {\n        return false;\n      }\n    } else {\n      var stack = new Stack;\n      if (customizer) {\n        var result = customizer(objValue, srcValue, key, object, source, stack);\n      }\n      if (!(result === undefined\n            ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n            : result\n          )) {\n        return false;\n      }\n    }\n  }\n  return true;\n}\n\nmodule.exports = baseIsMatch;\n", "var isObject = require('./isObject');\n\n/**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n *  equality comparisons, else `false`.\n */\nfunction isStrictComparable(value) {\n  return value === value && !isObject(value);\n}\n\nmodule.exports = isStrictComparable;\n", "var isStrictComparable = require('./_isStrictComparable'),\n    keys = require('./keys');\n\n/**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\nfunction getMatchData(object) {\n  var result = keys(object),\n      length = result.length;\n\n  while (length--) {\n    var key = result[length],\n        value = object[key];\n\n    result[length] = [key, value, isStrictComparable(value)];\n  }\n  return result;\n}\n\nmodule.exports = getMatchData;\n", "/**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction matchesStrictComparable(key, srcValue) {\n  return function(object) {\n    if (object == null) {\n      return false;\n    }\n    return object[key] === srcValue &&\n      (srcValue !== undefined || (key in Object(object)));\n  };\n}\n\nmodule.exports = matchesStrictComparable;\n", "var baseIsMatch = require('./_baseIsMatch'),\n    getMatchData = require('./_getMatchData'),\n    matchesStrictComparable = require('./_matchesStrictComparable');\n\n/**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatches(source) {\n  var matchData = getMatchData(source);\n  if (matchData.length == 1 && matchData[0][2]) {\n    return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n  }\n  return function(object) {\n    return object === source || baseIsMatch(object, source, matchData);\n  };\n}\n\nmodule.exports = baseMatches;\n", "var baseGetTag = require('./_baseGetTag'),\n    isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n  return typeof value == 'symbol' ||\n    (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n", "var isArray = require('./isArray'),\n    isSymbol = require('./isSymbol');\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n    reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n  if (isArray(value)) {\n    return false;\n  }\n  var type = typeof value;\n  if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n      value == null || isSymbol(value)) {\n    return true;\n  }\n  return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n    (object != null && value in Object(object));\n}\n\nmodule.exports = isKey;\n", "var MapCache = require('./_MapCache');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n  if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n    throw new TypeError(FUNC_ERROR_TEXT);\n  }\n  var memoized = function() {\n    var args = arguments,\n        key = resolver ? resolver.apply(this, args) : args[0],\n        cache = memoized.cache;\n\n    if (cache.has(key)) {\n      return cache.get(key);\n    }\n    var result = func.apply(this, args);\n    memoized.cache = cache.set(key, result) || cache;\n    return result;\n  };\n  memoized.cache = new (memoize.Cache || MapCache);\n  return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nmodule.exports = memoize;\n", "var memoize = require('./memoize');\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n  var result = memoize(func, function(key) {\n    if (cache.size === MAX_MEMOIZE_SIZE) {\n      cache.clear();\n    }\n    return key;\n  });\n\n  var cache = result.cache;\n  return result;\n}\n\nmodule.exports = memoizeCapped;\n", "var memoizeCapped = require('./_memoizeCapped');\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n  var result = [];\n  if (string.charCodeAt(0) === 46 /* . */) {\n    result.push('');\n  }\n  string.replace(rePropName, function(match, number, quote, subString) {\n    result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n  });\n  return result;\n});\n\nmodule.exports = stringToPath;\n", "/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n  var index = -1,\n      length = array == null ? 0 : array.length,\n      result = Array(length);\n\n  while (++index < length) {\n    result[index] = iteratee(array[index], index, array);\n  }\n  return result;\n}\n\nmodule.exports = arrayMap;\n", "var Symbol = require('./_Symbol'),\n    arrayMap = require('./_arrayMap'),\n    isArray = require('./isArray'),\n    isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n    symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n  // Exit early for strings to avoid a performance hit in some environments.\n  if (typeof value == 'string') {\n    return value;\n  }\n  if (isArray(value)) {\n    // Recursively convert values (susceptible to call stack limits).\n    return arrayMap(value, baseToString) + '';\n  }\n  if (isSymbol(value)) {\n    return symbolToString ? symbolToString.call(value) : '';\n  }\n  var result = (value + '');\n  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = baseToString;\n", "var baseToString = require('./_baseToString');\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n  return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\n", "var isArray = require('./isArray'),\n    isKey = require('./_isKey'),\n    stringToPath = require('./_stringToPath'),\n    toString = require('./toString');\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n  if (isArray(value)) {\n    return value;\n  }\n  return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nmodule.exports = castPath;\n", "var isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n  if (typeof value == 'string' || isSymbol(value)) {\n    return value;\n  }\n  var result = (value + '');\n  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = toKey;\n", "var castPath = require('./_castPath'),\n    toKey = require('./_toKey');\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n  path = castPath(path, object);\n\n  var index = 0,\n      length = path.length;\n\n  while (object != null && index < length) {\n    object = object[toKey(path[index++])];\n  }\n  return (index && index == length) ? object : undefined;\n}\n\nmodule.exports = baseGet;\n", "var baseGet = require('./_baseGet');\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n  var result = object == null ? undefined : baseGet(object, path);\n  return result === undefined ? defaultValue : result;\n}\n\nmodule.exports = get;\n", "/**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHasIn(object, key) {\n  return object != null && key in Object(object);\n}\n\nmodule.exports = baseHasIn;\n", "var castPath = require('./_castPath'),\n    isArguments = require('./isArguments'),\n    isArray = require('./isArray'),\n    isIndex = require('./_isIndex'),\n    isLength = require('./isLength'),\n    toKey = require('./_toKey');\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n  path = castPath(path, object);\n\n  var index = -1,\n      length = path.length,\n      result = false;\n\n  while (++index < length) {\n    var key = toKey(path[index]);\n    if (!(result = object != null && hasFunc(object, key))) {\n      break;\n    }\n    object = object[key];\n  }\n  if (result || ++index != length) {\n    return result;\n  }\n  length = object == null ? 0 : object.length;\n  return !!length && isLength(length) && isIndex(key, length) &&\n    (isArray(object) || isArguments(object));\n}\n\nmodule.exports = hasPath;\n", "var baseHasIn = require('./_baseHasIn'),\n    hasPath = require('./_hasPath');\n\n/**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\nfunction hasIn(object, path) {\n  return object != null && hasPath(object, path, baseHasIn);\n}\n\nmodule.exports = hasIn;\n", "var baseIsEqual = require('./_baseIsEqual'),\n    get = require('./get'),\n    hasIn = require('./hasIn'),\n    isKey = require('./_isKey'),\n    isStrictComparable = require('./_isStrictComparable'),\n    matchesStrictComparable = require('./_matchesStrictComparable'),\n    toKey = require('./_toKey');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n    COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\nfunction baseMatchesProperty(path, srcValue) {\n  if (isKey(path) && isStrictComparable(srcValue)) {\n    return matchesStrictComparable(toKey(path), srcValue);\n  }\n  return function(object) {\n    var objValue = get(object, path);\n    return (objValue === undefined && objValue === srcValue)\n      ? hasIn(object, path)\n      : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n  };\n}\n\nmodule.exports = baseMatchesProperty;\n", "/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n  return value;\n}\n\nmodule.exports = identity;\n", "/**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction baseProperty(key) {\n  return function(object) {\n    return object == null ? undefined : object[key];\n  };\n}\n\nmodule.exports = baseProperty;\n", "var baseGet = require('./_baseGet');\n\n/**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyDeep(path) {\n  return function(object) {\n    return baseGet(object, path);\n  };\n}\n\nmodule.exports = basePropertyDeep;\n", "var baseProperty = require('./_baseProperty'),\n    basePropertyDeep = require('./_basePropertyDeep'),\n    isKey = require('./_isKey'),\n    toKey = require('./_toKey');\n\n/**\n * Creates a function that returns the value at `path` of a given object.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n * @example\n *\n * var objects = [\n *   { 'a': { 'b': 2 } },\n *   { 'a': { 'b': 1 } }\n * ];\n *\n * _.map(objects, _.property('a.b'));\n * // => [2, 1]\n *\n * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');\n * // => [1, 2]\n */\nfunction property(path) {\n  return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);\n}\n\nmodule.exports = property;\n", "var baseMatches = require('./_baseMatches'),\n    baseMatchesProperty = require('./_baseMatchesProperty'),\n    identity = require('./identity'),\n    isArray = require('./isArray'),\n    property = require('./property');\n\n/**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\nfunction baseIteratee(value) {\n  // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n  // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n  if (typeof value == 'function') {\n    return value;\n  }\n  if (value == null) {\n    return identity;\n  }\n  if (typeof value == 'object') {\n    return isArray(value)\n      ? baseMatchesProperty(value[0], value[1])\n      : baseMatches(value);\n  }\n  return property(value);\n}\n\nmodule.exports = baseIteratee;\n", "/**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction baseFindIndex(array, predicate, fromIndex, fromRight) {\n  var length = array.length,\n      index = fromIndex + (fromRight ? 1 : -1);\n\n  while ((fromRight ? index-- : ++index < length)) {\n    if (predicate(array[index], index, array)) {\n      return index;\n    }\n  }\n  return -1;\n}\n\nmodule.exports = baseFindIndex;\n", "/**\n * The base implementation of `_.isNaN` without support for number objects.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n */\nfunction baseIsNaN(value) {\n  return value !== value;\n}\n\nmodule.exports = baseIsNaN;\n", "/**\n * A specialized version of `_.indexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction strictIndexOf(array, value, fromIndex) {\n  var index = fromIndex - 1,\n      length = array.length;\n\n  while (++index < length) {\n    if (array[index] === value) {\n      return index;\n    }\n  }\n  return -1;\n}\n\nmodule.exports = strictIndexOf;\n", "var baseFindIndex = require('./_baseFindIndex'),\n    baseIsNaN = require('./_baseIsNaN'),\n    strictIndexOf = require('./_strictIndexOf');\n\n/**\n * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction baseIndexOf(array, value, fromIndex) {\n  return value === value\n    ? strictIndexOf(array, value, fromIndex)\n    : baseFindIndex(array, baseIsNaN, fromIndex);\n}\n\nmodule.exports = baseIndexOf;\n", "var baseIndexOf = require('./_baseIndexOf');\n\n/**\n * A specialized version of `_.includes` for arrays without support for\n * specifying an index to search from.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\nfunction arrayIncludes(array, value) {\n  var length = array == null ? 0 : array.length;\n  return !!length && baseIndexOf(array, value, 0) > -1;\n}\n\nmodule.exports = arrayIncludes;\n", "/**\n * This function is like `arrayIncludes` except that it accepts a comparator.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\nfunction arrayIncludesWith(array, value, comparator) {\n  var index = -1,\n      length = array == null ? 0 : array.length;\n\n  while (++index < length) {\n    if (comparator(value, array[index])) {\n      return true;\n    }\n  }\n  return false;\n}\n\nmodule.exports = arrayIncludesWith;\n", "/**\n * This method returns `undefined`.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Util\n * @example\n *\n * _.times(2, _.noop);\n * // => [undefined, undefined]\n */\nfunction noop() {\n  // No operation performed.\n}\n\nmodule.exports = noop;\n", "var Set = require('./_Set'),\n    noop = require('./noop'),\n    setToArray = require('./_setToArray');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Creates a set object of `values`.\n *\n * @private\n * @param {Array} values The values to add to the set.\n * @returns {Object} Returns the new set.\n */\nvar createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n  return new Set(values);\n};\n\nmodule.exports = createSet;\n", "var SetCache = require('./_SetCache'),\n    arrayIncludes = require('./_arrayIncludes'),\n    arrayIncludesWith = require('./_arrayIncludesWith'),\n    cacheHas = require('./_cacheHas'),\n    createSet = require('./_createSet'),\n    setToArray = require('./_setToArray');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\nfunction baseUniq(array, iteratee, comparator) {\n  var index = -1,\n      includes = arrayIncludes,\n      length = array.length,\n      isCommon = true,\n      result = [],\n      seen = result;\n\n  if (comparator) {\n    isCommon = false;\n    includes = arrayIncludesWith;\n  }\n  else if (length >= LARGE_ARRAY_SIZE) {\n    var set = iteratee ? null : createSet(array);\n    if (set) {\n      return setToArray(set);\n    }\n    isCommon = false;\n    includes = cacheHas;\n    seen = new SetCache;\n  }\n  else {\n    seen = iteratee ? [] : result;\n  }\n  outer:\n  while (++index < length) {\n    var value = array[index],\n        computed = iteratee ? iteratee(value) : value;\n\n    value = (comparator || value !== 0) ? value : 0;\n    if (isCommon && computed === computed) {\n      var seenIndex = seen.length;\n      while (seenIndex--) {\n        if (seen[seenIndex] === computed) {\n          continue outer;\n        }\n      }\n      if (iteratee) {\n        seen.push(computed);\n      }\n      result.push(value);\n    }\n    else if (!includes(seen, computed, comparator)) {\n      if (seen !== result) {\n        seen.push(computed);\n      }\n      result.push(value);\n    }\n  }\n  return result;\n}\n\nmodule.exports = baseUniq;\n", "var baseIteratee = require('./_baseIteratee'),\n    baseUniq = require('./_baseUniq');\n\n/**\n * This method is like `_.uniq` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the criterion by which\n * uniqueness is computed. The order of result values is determined by the\n * order they occur in the array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\nfunction uniqBy(array, iteratee) {\n  return (array && array.length) ? baseUniq(array, baseIteratee(iteratee, 2)) : [];\n}\n\nmodule.exports = uniqBy;\n", "import { useEffect, useState } from \"react\";\nimport { List, getPreferenceValues } from \"@raycast/api\";\nimport colorNamer from \"color-namer\";\nimport { ColorNameListItem } from \"./components/ColorNames\";\nimport { getColorByPlatform, getColorByProximity, normalizeColorHex } from \"./utils\";\nimport { SortType } from \"./types\";\n\nexport default function ColorNames() {\n  const [isSearching, setIsSearching] = useState(false);\n  const [searchString, setSearchString] = useState<string>(\"\");\n  const [colors, setColors] = useState<colorNamer.Colors<colorNamer.Palette>>();\n  const [sortBy, setSortBy] = useState<SortType>(\"platform\");\n  const normalizedSearchString = normalizeColorHex(searchString);\n  const { colorNamesPerGroup = \"5\" } = getPreferenceValues<Preferences.ColorNames>();\n\n  const loadColors = (searchString: string) => {\n    setIsSearching(true);\n    try {\n      const colors = colorNamer(searchString);\n      setColors(colors);\n    } catch {\n      setColors(undefined);\n    }\n    setIsSearching(false);\n  };\n\n  useEffect(() => {\n    loadColors(normalizedSearchString);\n  }, [normalizedSearchString]);\n\n  return (\n    <List\n      isLoading={isSearching}\n      onSearchTextChange={setSearchString}\n      searchBarPlaceholder=\"Search HEX (#00ff00)\"\n      searchBarAccessory={\n        <List.Dropdown\n          tooltip=\"Sort colors by\"\n          storeValue\n          onChange={(v) => {\n            setSortBy(v as SortType);\n          }}\n        >\n          <List.Dropdown.Item value=\"platform\" title=\"Sort by Platform\" />\n          <List.Dropdown.Item value=\"proximity\" title=\"Sort by Proximity\" />\n        </List.Dropdown>\n      }\n    >\n      {colors ? (\n        sortBy === \"platform\" ? (\n          getColorByPlatform(normalizedSearchString, colors).map(([palette, colorList]) => (\n            <List.Section key={palette} title={palette}>\n              {colorList.slice(0, Number(colorNamesPerGroup)).map((color, index) => (\n                <ColorNameListItem key={`color-name-${color.name}-${index}`} color={color} />\n              ))}\n            </List.Section>\n          ))\n        ) : (\n          getColorByProximity(colors).map((color, index) => (\n            <ColorNameListItem key={`color-name-${color.name}-${index}`} color={color} />\n          ))\n        )\n      ) : (\n        <List.EmptyView title={searchString ? \"No colors found\" : \"Search for a color to see\"} />\n      )}\n    </List>\n  );\n}\n", "import { Action, ActionPanel, Icon, List } from \"@raycast/api\";\nimport { Color } from \"color-namer\";\nimport { normalizeColorHex } from \"../utils\";\n\nexport const ColorNameListItem = ({ color }: { color: Color }) => {\n  const hexCode = color.hex.replace(/^#/, \"\");\n  return (\n    <List.Item\n      icon={{\n        source: Icon.CircleFilled,\n        tintColor: {\n          light: hexCode,\n          dark: hexCode,\n          adjustContrast: false,\n        },\n      }}\n      title={color.name}\n      accessories={[\n        {\n          tag: {\n            value: normalizeColorHex(color.hex),\n            color: hexCode,\n          },\n        },\n      ]}\n      actions={\n        <ActionPanel>\n          <Action.CopyToClipboard content={color.name} title=\"Copy Name\" />\n          <Action.CopyToClipboard content={color.hex} title=\"Copy Hex\" />\n        </ActionPanel>\n      }\n    />\n  );\n};\n", "import { getPreferenceValues, Icon, Image, Keyboard, List } from \"@raycast/api\";\nimport ColorJS from \"colorjs.io\";\nimport { Colors, Palette } from \"color-namer\";\nimport uniqBy from \"lodash/uniqBy\";\nimport { HistoryColor, HistoryItem } from \"./types\";\nimport { ColorFormatType } from \"./types\";\n\nconst preferences = getPreferenceValues<ExtensionPreferences>();\n\nexport function getFormattedColor(_color: HistoryColor, format?: ColorFormatType) {\n  let color;\n  if (typeof _color === \"string\") {\n    color = new ColorJS(_color);\n  } else if (\"colorSpace\" in _color) {\n    color = new ColorJS(_color.colorSpace, [_color.red, _color.green, _color.blue], _color.alpha);\n  } else {\n    color = new ColorJS(\"srgb\", [_color.red / 255, _color.green / 255, _color.blue / 255], _color.alpha);\n  }\n\n  switch (format || preferences.colorFormat) {\n    default:\n    case \"hex\": {\n      return color.to(\"srgb\").toString({ format: \"hex\" }).toUpperCase();\n    }\n    case \"hex-lower-case\": {\n      return color.to(\"srgb\").toString({ format: \"hex\" }).toLowerCase();\n    }\n    case \"hex-no-prefix\": {\n      return color.to(\"srgb\").toString({ format: \"hex\" }).replace(\"#\", \"\");\n    }\n    case \"rgb\": {\n      return color.to(\"srgb\").toString({ format: \"rgb_number\" });\n    }\n    case \"rgb-percentage\": {\n      return color.to(\"srgb\").toString({ format: \"rgb\" });\n    }\n    case \"rgba\": {\n      return color.to(\"srgb\").toString({ format: \"rgba_number\" });\n    }\n    case \"rgba-percentage\": {\n      return color.to(\"srgb\").toString({ format: \"rgba\" });\n    }\n    case \"hsla\": {\n      return color.to(\"hsl\").toString({ format: \"hsla\" });\n    }\n    case \"hsva\": {\n      return color.to(\"hsv\").toString({ format: \"color\" });\n    }\n    case \"oklch\": {\n      const oklchColor = color.to(\"oklch\");\n      const [l, c, h] = oklchColor.coords;\n      const lPercentage = (l * 100).toFixed(2);\n      return `oklch(${lPercentage}% ${c} ${h})`;\n    }\n    case \"lch\": {\n      const lchColor = color.to(\"lch\");\n      const [l, c, h] = lchColor.coords;\n      return `lch(${l.toFixed(2)}% ${c} ${h})`;\n    }\n    case \"p3\": {\n      return color.to(\"p3\").toString({ format: \"p3\" });\n    }\n  }\n}\n\nconst unsupportedPreviewFormats = [\"p3\", \"rgb\", \"rgb-percentage\"];\nexport function getPreviewColor(color: HistoryColor) {\n  const formattedColor = getFormattedColor(\n    color,\n    unsupportedPreviewFormats.includes(preferences.colorFormat) ? \"oklch\" : undefined,\n  );\n  return formattedColor;\n}\n\nexport function getShortcut(index: number) {\n  const key = index + 1;\n\n  let shortcut: Keyboard.Shortcut | undefined;\n  if (key >= 1 && key <= 9) {\n    shortcut = { modifiers: [\"cmd\"], key: String(key) as Keyboard.KeyEquivalent };\n  }\n\n  return shortcut;\n}\n\nexport function getIcon(color: HistoryColor) {\n  const previewColor = typeof color === \"string\" ? color : getFormattedColor(color, \"hex\");\n  if (!previewColor) {\n    return undefined;\n  }\n\n  const icon: Image.ImageLike = {\n    source: Icon.CircleFilled,\n    tintColor: { light: previewColor, dark: previewColor, adjustContrast: false },\n  };\n\n  return icon;\n}\n\nexport function getAccessories(historyItem: HistoryItem) {\n  const accessories = new Array<List.Item.Accessory>();\n  accessories.push({ date: new Date(historyItem.date), tooltip: new Date(historyItem.date).toLocaleString() });\n  return accessories;\n}\n\nexport function normalizeColorHex(colorInput: string) {\n  let hex = colorInput.replace(/^#/, \"\");\n  const validHexPattern = /^([a-f\\d]{3,4}|[a-f\\d]{6}|[a-f]\\d{8})$/i;\n  if (validHexPattern.test(hex)) {\n    switch (hex.length) {\n      case 3:\n      case 4:\n        hex = hex\n          .slice(0, 3)\n          .split(\"\")\n          .map((x) => x.repeat(2))\n          .join(\"\");\n        break;\n      case 8:\n        hex = hex.slice(0, 6);\n        break;\n    }\n  }\n  return \"#\" + hex.toUpperCase();\n}\n\nexport function getColorByPlatform(normalizedSearchString: string, colors?: Colors<Palette>) {\n  return Object.entries(colors ?? {}).sort(([, a], [, b]) => {\n    if (normalizeColorHex(a[0].hex) === normalizeColorHex(b[0].hex)) return 0;\n    if (normalizedSearchString === normalizeColorHex(a[0].hex)) return -1;\n    return 1;\n  });\n}\n\nexport function getColorByProximity(colors?: Colors<Palette>) {\n  return uniqBy(Object.values(colors ?? {}).flat(), (x) => x.name.toLowerCase()).sort(\n    (a, b) => a.distance - b.distance,\n  );\n}\n"],
      5   "mappings": "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AAK,SAAU,CACnC,ICrJA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAAAA,GAAO,QAAU,CACf,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,2BACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,uBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,oBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,qBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,oBACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,4BACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,qBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,oBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,oBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,oBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,uBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,wBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,wBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,qBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,sBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,qBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,MACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,oBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,qBACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,uBACR,IAAO,QACT,EACA,CACE,KAAQ,oBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,kBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,sBACR,IAAO,QACT,EACA,CACE,KAAQ,mBACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,oBACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,OACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,UACR,IAAO,QACT,EACA,CACE,KAAQ,iBACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,SACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,WACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,cACR,IAAO,QACT,EACA,CACE,KAAQ,YACR,IAAO,QACT,EACA,CACE,KAAQ,aACR,IAAO,QACT,EACA,CACE,KAAQ,gBACR,IAAO,QACT,EACA,CACE,KAAQ,eACR,IAAO,QACT,EACA,CACE,KAAQ,QACR,IAAO,QACT,EACA,CACE,KA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SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,oBACN,IAAK,SACP,EAAG,CACD,KAAM,UACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,iBACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,UACN,IAAK,SACP,EAAG,CACD,KAAM,QACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,QACN,IAAK,SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,QACN,IAAK,SACP,EAAG,CACD,KAAM,QACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,UACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,eACN,IAAK,SACP,EAAG,CACD,KAAM,eACN,IAAK,SACP,EAAG,CACD,KAAM,UACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,eACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,kBACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,MACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,uBACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,UACN,IAAK,SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,UACN,IAAK,SACP,EAAG,CACD,KAAM,UACN,IAAK,SACP,EAAG,CACD,KAAM,MACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,iBACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,QACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,QACN,IAAK,SACP,EAAG,CACD,KAAM,eACN,IAAK,SACP,EAAG,CACD,KAAM,eACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,WACN,IAAK,SACP,EAAG,CACD,KAAM,QACN,IAAK,SACP,EAAG,CACD,KAAM,QACN,IAAK,SACP,EAAG,CACD,KAAM,OACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,cACN,IAAK,SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,UACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,gBACN,IAAK,SACP,EAAG,CACD,KAAM,iBACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,iBACN,IAAK,SACP,EAAG,CACD,KAAM,aACN,IAAK,SACP,EAAG,CACD,KAAM,SACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,iBACN,IAAK,SACP,EAAG,CACD,KAAM,YACN,IAAK,SACP,EAAG,CACD,KAAM,kBACN,IAAK,SACP,EAAG,CA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",
      6   "names": ["require_chroma", "__commonJSMin", "exports", "module", "Color", "DEG2RAD", "LAB_CONSTANTS", "PI", "PITHIRD", "RAD2DEG", "TWOPI", "_average_lrgb", "_guess_formats", "_guess_formats_sorted", "_input", "_interpolators", "abs", "atan2", "bezier", "blend", "blend_f", "brewer", "burn", "chroma", "clip_rgb", "cmyk2rgb", "colors", "cos", "css2rgb", "darken", "dodge", "each", "floor", "hcg2rgb", "hex2rgb", "hsi2rgb", "hsl2css", "hsl2rgb", "hsv2rgb", "interpolate", "interpolate_hsx", "interpolate_lab", "interpolate_lrgb", "interpolate_num", "interpolate_rgb", "lab2lch", "lab2rgb", "lab_xyz", "lch2lab", "lch2rgb", "lighten", "limit", "log", "luminance_x", "m", "max", "multiply", "normal", "num2rgb", "overlay", "pow", "rgb2cmyk", "rgb2css", "rgb2hcg", "rgb2hex", "rgb2hsi", "rgb2hsl", "rgb2hsv", "rgb2lab", "rgb2lch", "rgb2luminance", "rgb2num", "rgb2temperature", "rgb2xyz", "rgb_xyz", "rnd", "root", "round", "screen", "sin", "sqrt", "temperature2rgb", "type", "unpack", "w3cx11", "xyz_lab", "xyz_rgb", "slice", "classToType", "len", "name", "o", "ref", "obj", "strType", "x", "min", "args", "rgb", "i", "func", "ctor", "child", "result", "arg", "chk", "len1", "me", "mode", "w", "a", "b", "key", "results", "g", "l", "r", "y", "z", "t", "ref1", "I", "I0", "I1", "c", "lab0", "lab1", "lab2", "lab3", "ref2", "lab", "f", "start", "rotations", "hue", "gamma", "lightness", "dh", "dl", "fract", "amp", "cos_a", "h", "sin_a", "s", "code", "digits", "col1", "col2", "interpol", "res", "k", "v", "xyz0", "xyz1", "col", "xyz", "A", "alpha", "cnt", "dx", "dy", "first", "xyz2", "hex", "u", "channels", "hxa", "str", "t1", "t2", "t3", "p", "q", "ref3", "ref4", "ref5", "delta", "num", "_c", "_g", "css", "aa", "ab", "hsl", "rgba", "L", "lum", "cur_lum", "eps", "max_iter", "test", "lm", "kelvin", "temp", "maxTemp", "minTemp", "l1", "l2", "d", "sum_sq", "C", "L1", "L2", "a1", "a2", "b1", "b2", "c1", "c2", "c4", "dH2", "delA", "delB", "delC", "delL", "h1", "sc", "sh", "sl", "v1", "v2", "v3", "modechan", "channel", "src", "value", "amount", "lch", "bottom", "top", "c0", "out", "data", "val", "positions", "_classes", "_colorCache", "_colors", "_correctLightness", "_domain", "_fixed", "_gamma", "_max", "_min", "_mode", "_nacol", "_out", "_padding", "_pos", "_spread", "_useCache", "classifyValue", "getClass", "getColor", "resetCache", "setColors", "tmap", "n", "maxc", "minc", "bypassMap", "classes", "domain", "_m", "_o", "L0", "L_actual", "L_diff", "L_ideal", "pol", "t0", "numColors", "dd", "dm", "samples", "filter", "add", "visit", "ac", "ad", "ae", "af", "ag", "ah", "ai", "aj", "ak", "al", "am", "assignments", "best", "centroids", "cluster", "clusterSizes", "dist", "j", "kClusters", "limits", "max_log", "min_log", "mindist", "nb_iters", "newCentroids", "pb", "pr", "ref10", "ref11", "ref12", "ref13", "ref14", "ref6", "ref7", "ref8", "ref9", "repeat", "sum", "tmpKMeansBreaks", "values", "hue0", "hue1", "lbv", "lbv0", "lbv1", "sat", "sat0", "sat1", "n1", "n2", "require_is_implemented", "__commonJSMin", "exports", "module", "weakMap", "obj", "require_noop", "__commonJSMin", "exports", "module", "require_is_value", "__commonJSMin", "exports", "module", "_undefined", "val", "require_is_implemented", "__commonJSMin", "exports", "module", "create", "getPrototypeOf", "plainObject", "setPrototypeOf", "customCreate", "require_is_object", "__commonJSMin", "exports", "module", "isValue", "map", "value", "require_valid_value", "__commonJSMin", "exports", "module", "isValue", "value", "require_create", "__commonJSMin", "exports", "module", "create", "shim", "nullObject", "polyProps", "desc", "name", "prototype", "props", "require_shim", "__commonJSMin", "exports", "module", "isObject", "value", "objIsPrototypeOf", "defineProperty", "nullDesc", "validate", "obj", "prototype", "status", "fn", "set", "self", "isNullBase", "tmpObj1", "tmpObj2", "desc", "require_set_prototype_of", "__commonJSMin", "exports", "module", "require_valid_object", "__commonJSMin", "exports", "module", "isObject", "value", "require_random_uniq", "__commonJSMin", "exports", "module", "generated", "random", "str", "require_is", "__commonJSMin", "exports", "module", "_undefined", "value", "require_is", "__commonJSMin", "exports", "module", "isValue", "possibleTypes", "value", "require_is", "__commonJSMin", "exports", "module", "isObject", "value", "require_is", "__commonJSMin", "exports", "module", "isPrototype", "value", "require_is", "__commonJSMin", "exports", "module", "isFunction", "classRe", "functionToString", "value", "require_is_implemented", "__commonJSMin", "exports", "module", "assign", "obj", "require_is_implemented", "__commonJSMin", "exports", "module", "require_shim", "__commonJSMin", "exports", "module", "isValue", "keys", "object", "require_keys", "__commonJSMin", "exports", "module", "require_shim", "__commonJSMin", "exports", "module", "keys", "value", "max", "dest", "src", "error", "i", "length", "assign", "key", "e", "require_assign", "__commonJSMin", "exports", "module", "require_normalize_options", "__commonJSMin", "exports", "module", "isValue", "forEach", "create", "process", "src", "obj", "key", "opts1", "result", "options", "require_is_implemented", "__commonJSMin", "exports", "module", "str", "require_shim", "__commonJSMin", "exports", "module", "indexOf", "searchString", "require_contains", "__commonJSMin", "exports", "module", "require_d", "__commonJSMin", "exports", "module", "isValue", "isPlainFunction", "assign", "normalizeOpts", "contains", "d", "dscr", "value", "c", "e", "w", "options", "desc", "get", "set", "require_is_arguments", "__commonJSMin", "exports", "module", "objToString", "id", "value", "require_is_string", "__commonJSMin", "exports", "module", "objToString", "id", "value", "require_is_implemented", "__commonJSMin", "exports", "module", "require_implementation", "__commonJSMin", "exports", "module", "naiveFallback", "require_global_this", "__commonJSMin", "exports", "module", "require_is_implemented", "__commonJSMin", "exports", "module", "global", "validTypes", "Symbol", "symbol", "require_is_symbol", "__commonJSMin", "exports", "module", "value", "require_validate_symbol", "__commonJSMin", "exports", "module", "isSymbol", "value", "require_generate_name", "__commonJSMin", "exports", "module", "d", "create", "defineProperty", "objPrototype", "created", "desc", "postfix", "name", "ie11BugWorkaround", "value", "require_standard_symbols", "__commonJSMin", "exports", "module", "d", "NativeSymbol", "SymbolPolyfill", "require_symbol_registry", "__commonJSMin", "exports", "module", "d", "validateSymbol", "registry", "SymbolPolyfill", "key", "symbol", "require_polyfill", "__commonJSMin", "exports", "module", "d", "validateSymbol", "NativeSymbol", "generateName", "setupStandardSymbols", "setupSymbolRegistry", "create", "defineProperties", "defineProperty", "SymbolPolyfill", "HiddenSymbol", "isNativeSafe", "description", "Symbol", "symbol", "require_es6_symbol", "__commonJSMin", "exports", "module", "require_clear", "__commonJSMin", "exports", "module", "value", "require_valid_callable", "__commonJSMin", "exports", "module", "fn", "require_coerce", "__commonJSMin", "exports", "module", "isValue", "isObject", "objectToString", "value", "valueToString", "require_safe_to_string", "__commonJSMin", "exports", "module", "value", "require_to_short_string", "__commonJSMin", "exports", "module", "safeToString", "reNewLine", "value", "string", "char", "require_resolve_error_message", "__commonJSMin", "exports", "module", "stringCoerce", "toShortString", "errorMessage", "value", "inputOptions", "valueInsertIndex", "valueToken", "nameInsertIndex", "firstToken", "secondToken", "firstInsertIndex", "secondInsertIndex", "require_resolve_exception", "__commonJSMin", "exports", "module", "isValue", "resolveErrorMessage", "value", "defaultMessage", "inputOptions", "ErrorConstructor", "error", "require_ensure", "__commonJSMin", "exports", "module", "resolveException", "is", "value", "options", "errorMessage", "require_ensure", "__commonJSMin", "exports", "module", "resolveException", "is", "value", "options", "errorMessage", "require_is_implemented", "__commonJSMin", "exports", "module", "from", "arr", "result", "require_is_function", "__commonJSMin", "exports", "module", "objToString", "isFunctionStringTag", "value", "require_is_implemented", "__commonJSMin", "exports", "module", "sign", "require_shim", "__commonJSMin", "exports", "module", "value", "require_sign", "__commonJSMin", "exports", "module", "require_to_integer", "__commonJSMin", "exports", "module", "sign", "abs", "floor", "value", "require_to_pos_integer", "__commonJSMin", "exports", "module", "toInteger", "max", "value", "require_shim", "__commonJSMin", "exports", "module", "iteratorSymbol", "isArguments", "isFunction", "toPosInt", "callable", "validValue", "isValue", "isString", "isArray", "call", "desc", "defineProperty", "arrayLike", "mapFn", "thisArg", "Context", "i", "j", "arr", "length", "code", "iterator", "result", "getIterator", "value", "require_from", "__commonJSMin", "exports", "module", "require_copy", "__commonJSMin", "exports", "module", "aFrom", "assign", "value", "obj", "copy", "propertyNames", "options", "result", "propertyName", "require_iterate", "__commonJSMin", "exports", "module", "callable", "value", "bind", "call", "keys", "objPropertyIsEnumerable", "method", "defVal", "obj", "cb", "list", "thisArg", "compareFn", "key", "index", "require_for_each", "__commonJSMin", "exports", "module", "require_map", "__commonJSMin", "exports", "module", "callable", "forEach", "call", "obj", "cb", "result", "thisArg", "value", "key", "targetObj", "index", "require_auto_bind", "__commonJSMin", "exports", "module", "isValue", "ensureValue", "ensurePlainFunction", "copy", "normalizeOptions", "map", "bind", "defineProperty", "hasOwnProperty", "define", "name", "desc", "options", "value", "dgs", "props", "require_es6_iterator", "__commonJSMin", "exports", "module", "clear", "assign", "callable", "value", "d", "autoBind", "Symbol", "defineProperty", "defineProperties", "Iterator", "list", "context", "i", "index", "redo", "j", "require_array", "__commonJSMin", "exports", "module", "setPrototypeOf", "contains", "d", "Symbol", "Iterator", "defineProperty", "ArrayIterator", "arr", "kind", "i", "require_string", "__commonJSMin", "exports", "module", "setPrototypeOf", "d", "Symbol", "Iterator", "defineProperty", "StringIterator", "str", "i", "char", "code", "require_is_iterable", "__commonJSMin", "exports", "module", "isArguments", "isValue", "isString", "iteratorSymbol", "isArray", "value", "require_valid_iterable", "__commonJSMin", "exports", "module", "isIterable", "value", "require_get", "__commonJSMin", "exports", "module", "isArguments", "isString", "ArrayIterator", "StringIterator", "iterable", "iteratorSymbol", "obj", "require_for_of", "__commonJSMin", "exports", "module", "isArguments", "callable", "isString", "get", "isArray", "call", "some", "iterable", "cb", "mode", "thisArg", "result", "doBreak", "broken", "i", "length", "char", "code", "value", "require_is_native_implemented", "__commonJSMin", "exports", "module", "require_polyfill", "__commonJSMin", "exports", "module", "isValue", "setPrototypeOf", "object", "ensureValue", "randomUniq", "d", "getIterator", "forOf", "toStringTagSymbol", "isNative", "isArray", "defineProperty", "objHasOwnProperty", "getPrototypeOf", "WeakMapPoly", "iterable", "self", "val", "key", "value", "require_es6_weak_map", "__commonJSMin", "exports", "module", "require_basic", "__commonJSMin", "exports", "module", "require_html", "__commonJSMin", "exports", "module", "require_ntc", "__commonJSMin", "exports", "module", "require_pantone", "__commonJSMin", "exports", "module", "require_roygbiv", "__commonJSMin", "exports", "module", "require_x11", "__commonJSMin", "exports", "module", "require_color_namer", "__commonJSMin", "exports", "module", "chroma", "WeakMap", "lists", "cache", "namer", "color", "options", "cacheKey", "deltaE", "results", "key", "name", "a", "b", "require_listCacheClear", "__commonJSMin", "exports", "module", "listCacheClear", "require_eq", "__commonJSMin", "exports", "module", "eq", "value", "other", "require_assocIndexOf", "__commonJSMin", "exports", "module", "eq", "assocIndexOf", "array", "key", "length", "require_listCacheDelete", "__commonJSMin", "exports", "module", "assocIndexOf", "arrayProto", "splice", "listCacheDelete", "key", "data", "index", "lastIndex", "require_listCacheGet", "__commonJSMin", "exports", "module", "assocIndexOf", "listCacheGet", "key", "data", "index", "require_listCacheHas", "__commonJSMin", "exports", "module", "assocIndexOf", "listCacheHas", "key", "require_listCacheSet", "__commonJSMin", "exports", "module", "assocIndexOf", "listCacheSet", "key", "value", "data", "index", "require_ListCache", "__commonJSMin", "exports", "module", "listCacheClear", "listCacheDelete", "listCacheGet", "listCacheHas", "listCacheSet", "ListCache", "entries", "index", "length", "entry", "require_stackClear", "__commonJSMin", "exports", "module", "ListCache", "stackClear", "require_stackDelete", "__commonJSMin", "exports", "module", "stackDelete", "key", "data", "result", "require_stackGet", "__commonJSMin", "exports", "module", "stackGet", "key", "require_stackHas", "__commonJSMin", "exports", "module", "stackHas", "key", "require_freeGlobal", "__commonJSMin", "exports", "module", "freeGlobal", "require_root", "__commonJSMin", "exports", "module", "freeGlobal", "freeSelf", "root", "require_Symbol", "__commonJSMin", "exports", "module", "root", "Symbol", "require_getRawTag", "__commonJSMin", "exports", "module", "Symbol", "objectProto", "hasOwnProperty", "nativeObjectToString", "symToStringTag", "getRawTag", "value", "isOwn", "tag", "unmasked", "result", "require_objectToString", "__commonJSMin", "exports", "module", "objectProto", "nativeObjectToString", "objectToString", "value", "require_baseGetTag", "__commonJSMin", "exports", "module", "Symbol", "getRawTag", "objectToString", "nullTag", "undefinedTag", "symToStringTag", "baseGetTag", "value", "require_isObject", "__commonJSMin", "exports", "module", "isObject", "value", "type", "require_isFunction", "__commonJSMin", "exports", "module", "baseGetTag", "isObject", "asyncTag", "funcTag", "genTag", "proxyTag", "isFunction", "value", "tag", "require_coreJsData", "__commonJSMin", "exports", "module", "root", "coreJsData", "require_isMasked", "__commonJSMin", "exports", "module", "coreJsData", "maskSrcKey", "uid", "isMasked", "func", "require_toSource", "__commonJSMin", "exports", "module", "funcProto", "funcToString", "toSource", "func", "require_baseIsNative", "__commonJSMin", "exports", "module", "isFunction", "isMasked", "isObject", "toSource", "reRegExpChar", "reIsHostCtor", "funcProto", "objectProto", "funcToString", "hasOwnProperty", "reIsNative", "baseIsNative", "value", "pattern", "require_getValue", "__commonJSMin", "exports", "module", "getValue", "object", "key", "require_getNative", "__commonJSMin", "exports", "module", "baseIsNative", "getValue", "getNative", "object", "key", "value", "require_Map", "__commonJSMin", "exports", "module", "getNative", "root", "Map", "require_nativeCreate", "__commonJSMin", "exports", "module", "getNative", "nativeCreate", "require_hashClear", "__commonJSMin", "exports", "module", "nativeCreate", "hashClear", "require_hashDelete", "__commonJSMin", "exports", "module", "hashDelete", "key", "result", "require_hashGet", "__commonJSMin", "exports", "module", "nativeCreate", "HASH_UNDEFINED", "objectProto", "hasOwnProperty", "hashGet", "key", "data", "result", "require_hashHas", "__commonJSMin", "exports", "module", "nativeCreate", "objectProto", "hasOwnProperty", "hashHas", "key", "data", "require_hashSet", "__commonJSMin", "exports", "module", "nativeCreate", "HASH_UNDEFINED", "hashSet", "key", "value", "data", "require_Hash", "__commonJSMin", "exports", "module", "hashClear", "hashDelete", "hashGet", "hashHas", "hashSet", "Hash", "entries", "index", "length", "entry", "require_mapCacheClear", "__commonJSMin", "exports", "module", "Hash", "ListCache", "Map", "mapCacheClear", "require_isKeyable", "__commonJSMin", "exports", "module", "isKeyable", "value", "type", "require_getMapData", "__commonJSMin", "exports", "module", "isKeyable", "getMapData", "map", "key", "data", "require_mapCacheDelete", "__commonJSMin", "exports", "module", "getMapData", "mapCacheDelete", "key", "result", "require_mapCacheGet", "__commonJSMin", "exports", "module", "getMapData", "mapCacheGet", "key", "require_mapCacheHas", "__commonJSMin", "exports", "module", "getMapData", "mapCacheHas", "key", "require_mapCacheSet", "__commonJSMin", "exports", "module", "getMapData", "mapCacheSet", "key", "value", "data", "size", "require_MapCache", "__commonJSMin", "exports", "module", "mapCacheClear", "mapCacheDelete", "mapCacheGet", "mapCacheHas", "mapCacheSet", "MapCache", "entries", "index", "length", "entry", "require_stackSet", "__commonJSMin", "exports", "module", "ListCache", "Map", "MapCache", "LARGE_ARRAY_SIZE", "stackSet", "key", "value", "data", "pairs", "require_Stack", "__commonJSMin", "exports", "module", "ListCache", "stackClear", "stackDelete", "stackGet", "stackHas", "stackSet", "Stack", "entries", "data", "require_setCacheAdd", "__commonJSMin", "exports", "module", "HASH_UNDEFINED", "setCacheAdd", "value", "require_setCacheHas", "__commonJSMin", "exports", "module", "setCacheHas", "value", "require_SetCache", "__commonJSMin", "exports", "module", "MapCache", "setCacheAdd", "setCacheHas", "SetCache", "values", "index", "length", "require_arraySome", "__commonJSMin", "exports", "module", "arraySome", "array", "predicate", "index", "length", "require_cacheHas", "__commonJSMin", "exports", "module", "cacheHas", "cache", "key", "require_equalArrays", "__commonJSMin", "exports", "module", "SetCache", "arraySome", "cacheHas", "COMPARE_PARTIAL_FLAG", "COMPARE_UNORDERED_FLAG", "equalArrays", "array", "other", "bitmask", "customizer", "equalFunc", "stack", "isPartial", "arrLength", "othLength", "arrStacked", "othStacked", "index", "result", "seen", "arrValue", "othValue", "compared", "othIndex", "require_Uint8Array", "__commonJSMin", "exports", "module", "root", "Uint8Array", "require_mapToArray", "__commonJSMin", "exports", "module", "mapToArray", "map", "index", "result", "value", "key", "require_setToArray", "__commonJSMin", "exports", "module", "setToArray", "set", "index", "result", "value", "require_equalByTag", "__commonJSMin", "exports", "module", "Symbol", "Uint8Array", "eq", "equalArrays", "mapToArray", "setToArray", "COMPARE_PARTIAL_FLAG", "COMPARE_UNORDERED_FLAG", "boolTag", "dateTag", "errorTag", "mapTag", "numberTag", "regexpTag", "setTag", "stringTag", "symbolTag", "arrayBufferTag", "dataViewTag", "symbolProto", "symbolValueOf", "equalByTag", "object", "other", "tag", "bitmask", "customizer", "equalFunc", "stack", "convert", "isPartial", "stacked", "result", "require_arrayPush", "__commonJSMin", "exports", "module", "arrayPush", "array", "values", "index", "length", "offset", "require_isArray", "__commonJSMin", "exports", "module", "isArray", "require_baseGetAllKeys", "__commonJSMin", "exports", "module", "arrayPush", "isArray", "baseGetAllKeys", "object", "keysFunc", "symbolsFunc", "result", "require_arrayFilter", "__commonJSMin", "exports", "module", "arrayFilter", "array", "predicate", "index", "length", "resIndex", "result", "value", "require_stubArray", "__commonJSMin", "exports", "module", "stubArray", "require_getSymbols", "__commonJSMin", "exports", "module", "arrayFilter", "stubArray", "objectProto", "propertyIsEnumerable", "nativeGetSymbols", "getSymbols", "object", "symbol", "require_baseTimes", "__commonJSMin", "exports", "module", "baseTimes", "n", "iteratee", "index", "result", "require_isObjectLike", "__commonJSMin", "exports", "module", "isObjectLike", "value", "require_baseIsArguments", "__commonJSMin", "exports", "module", "baseGetTag", "isObjectLike", "argsTag", "baseIsArguments", "value", "require_isArguments", "__commonJSMin", "exports", "module", "baseIsArguments", "isObjectLike", "objectProto", "hasOwnProperty", "propertyIsEnumerable", "isArguments", "value", "require_stubFalse", "__commonJSMin", "exports", "module", "stubFalse", "require_isBuffer", "__commonJSMin", "exports", "module", "root", "stubFalse", "freeExports", "freeModule", "moduleExports", "Buffer", "nativeIsBuffer", "isBuffer", "require_isIndex", "__commonJSMin", "exports", "module", "MAX_SAFE_INTEGER", "reIsUint", "isIndex", "value", "length", "type", "require_isLength", "__commonJSMin", "exports", "module", "MAX_SAFE_INTEGER", "isLength", "value", "require_baseIsTypedArray", "__commonJSMin", "exports", "module", "baseGetTag", "isLength", "isObjectLike", "argsTag", "arrayTag", "boolTag", "dateTag", "errorTag", "funcTag", "mapTag", "numberTag", "objectTag", "regexpTag", "setTag", "stringTag", "weakMapTag", "arrayBufferTag", "dataViewTag", "float32Tag", "float64Tag", "int8Tag", "int16Tag", "int32Tag", "uint8Tag", "uint8ClampedTag", "uint16Tag", "uint32Tag", "typedArrayTags", "baseIsTypedArray", "value", "require_baseUnary", "__commonJSMin", "exports", "module", "baseUnary", "func", "value", "require_nodeUtil", "__commonJSMin", "exports", "module", "freeGlobal", "freeExports", "freeModule", "moduleExports", "freeProcess", "nodeUtil", "types", "require_isTypedArray", "__commonJSMin", "exports", "module", "baseIsTypedArray", "baseUnary", "nodeUtil", "nodeIsTypedArray", "isTypedArray", "require_arrayLikeKeys", "__commonJSMin", "exports", "module", "baseTimes", "isArguments", "isArray", "isBuffer", "isIndex", "isTypedArray", "objectProto", "hasOwnProperty", "arrayLikeKeys", "value", "inherited", "isArr", "isArg", "isBuff", "isType", "skipIndexes", "result", "length", "key", "require_isPrototype", "__commonJSMin", "exports", "module", "objectProto", "isPrototype", "value", "Ctor", "proto", "require_overArg", "__commonJSMin", "exports", "module", "overArg", "func", "transform", "arg", "require_nativeKeys", "__commonJSMin", "exports", "module", "overArg", "nativeKeys", "require_baseKeys", "__commonJSMin", "exports", "module", "isPrototype", "nativeKeys", "objectProto", "hasOwnProperty", "baseKeys", "object", "result", "key", "require_isArrayLike", "__commonJSMin", "exports", "module", "isFunction", "isLength", "isArrayLike", "value", "require_keys", "__commonJSMin", "exports", "module", "arrayLikeKeys", "baseKeys", "isArrayLike", "keys", "object", "require_getAllKeys", "__commonJSMin", "exports", "module", "baseGetAllKeys", "getSymbols", "keys", "getAllKeys", "object", "require_equalObjects", "__commonJSMin", "exports", "module", "getAllKeys", "COMPARE_PARTIAL_FLAG", "objectProto", "hasOwnProperty", "equalObjects", "object", "other", "bitmask", "customizer", "equalFunc", "stack", "isPartial", "objProps", "objLength", "othProps", "othLength", "index", "key", "objStacked", "othStacked", "result", "skipCtor", "objValue", "othValue", "compared", "objCtor", "othCtor", "require_DataView", "__commonJSMin", "exports", "module", "getNative", "root", "DataView", "require_Promise", "__commonJSMin", "exports", "module", "getNative", "root", "Promise", "require_Set", "__commonJSMin", "exports", "module", "getNative", "root", "Set", "require_WeakMap", "__commonJSMin", "exports", "module", "getNative", "root", "WeakMap", "require_getTag", "__commonJSMin", "exports", "module", "DataView", "Map", "Promise", "Set", "WeakMap", "baseGetTag", "toSource", "mapTag", "objectTag", "promiseTag", "setTag", "weakMapTag", "dataViewTag", "dataViewCtorString", "mapCtorString", "promiseCtorString", "setCtorString", "weakMapCtorString", "getTag", "value", "result", "Ctor", "ctorString", "require_baseIsEqualDeep", "__commonJSMin", "exports", "module", "Stack", "equalArrays", "equalByTag", "equalObjects", "getTag", "isArray", "isBuffer", "isTypedArray", "COMPARE_PARTIAL_FLAG", "argsTag", "arrayTag", "objectTag", "objectProto", "hasOwnProperty", "baseIsEqualDeep", "object", "other", "bitmask", "customizer", "equalFunc", "stack", "objIsArr", "othIsArr", "objTag", "othTag", "objIsObj", "othIsObj", "isSameTag", "objIsWrapped", "othIsWrapped", "objUnwrapped", "othUnwrapped", "require_baseIsEqual", "__commonJSMin", "exports", "module", "baseIsEqualDeep", "isObjectLike", "baseIsEqual", "value", "other", "bitmask", "customizer", "stack", "require_baseIsMatch", "__commonJSMin", "exports", "module", "Stack", "baseIsEqual", "COMPARE_PARTIAL_FLAG", "COMPARE_UNORDERED_FLAG", "baseIsMatch", "object", "source", "matchData", "customizer", "index", "length", "noCustomizer", "data", "key", "objValue", "srcValue", "stack", "result", "require_isStrictComparable", "__commonJSMin", "exports", "module", "isObject", "isStrictComparable", "value", "require_getMatchData", "__commonJSMin", "exports", "module", "isStrictComparable", "keys", "getMatchData", "object", "result", "length", "key", "value", "require_matchesStrictComparable", "__commonJSMin", "exports", "module", "matchesStrictComparable", "key", "srcValue", "object", "require_baseMatches", "__commonJSMin", "exports", "module", "baseIsMatch", "getMatchData", "matchesStrictComparable", "baseMatches", "source", "matchData", "object", "require_isSymbol", "__commonJSMin", "exports", "module", "baseGetTag", "isObjectLike", "symbolTag", "isSymbol", "value", "require_isKey", "__commonJSMin", "exports", "module", "isArray", "isSymbol", "reIsDeepProp", "reIsPlainProp", "isKey", "value", "object", "type", "require_memoize", "__commonJSMin", "exports", "module", "MapCache", "FUNC_ERROR_TEXT", "memoize", "func", "resolver", "memoized", "args", "key", "cache", "result", "require_memoizeCapped", "__commonJSMin", "exports", "module", "memoize", "MAX_MEMOIZE_SIZE", "memoizeCapped", "func", "result", "key", "cache", "require_stringToPath", "__commonJSMin", "exports", "module", "memoizeCapped", "rePropName", "reEscapeChar", "stringToPath", "string", "result", "match", "number", "quote", "subString", "require_arrayMap", "__commonJSMin", "exports", "module", "arrayMap", "array", "iteratee", "index", "length", "result", "require_baseToString", "__commonJSMin", "exports", "module", "Symbol", "arrayMap", "isArray", "isSymbol", "INFINITY", "symbolProto", "symbolToString", "baseToString", "value", "result", "require_toString", "__commonJSMin", "exports", "module", "baseToString", "toString", "value", "require_castPath", "__commonJSMin", "exports", "module", "isArray", "isKey", "stringToPath", "toString", "castPath", "value", "object", "require_toKey", "__commonJSMin", "exports", "module", "isSymbol", "INFINITY", "toKey", "value", "result", "require_baseGet", "__commonJSMin", "exports", "module", "castPath", "toKey", "baseGet", "object", "path", "index", "length", "require_get", "__commonJSMin", "exports", "module", "baseGet", "get", "object", "path", "defaultValue", "result", "require_baseHasIn", "__commonJSMin", "exports", "module", "baseHasIn", "object", "key", "require_hasPath", "__commonJSMin", "exports", "module", "castPath", "isArguments", "isArray", "isIndex", "isLength", "toKey", "hasPath", "object", "path", "hasFunc", "index", "length", "result", "key", "require_hasIn", "__commonJSMin", "exports", "module", "baseHasIn", "hasPath", "hasIn", "object", "path", "require_baseMatchesProperty", "__commonJSMin", "exports", "module", "baseIsEqual", "get", "hasIn", "isKey", "isStrictComparable", "matchesStrictComparable", "toKey", "COMPARE_PARTIAL_FLAG", "COMPARE_UNORDERED_FLAG", "baseMatchesProperty", "path", "srcValue", "object", "objValue", "require_identity", "__commonJSMin", "exports", "module", "identity", "value", "require_baseProperty", "__commonJSMin", "exports", "module", "baseProperty", "key", "object", "require_basePropertyDeep", "__commonJSMin", "exports", "module", "baseGet", "basePropertyDeep", "path", "object", "require_property", "__commonJSMin", "exports", "module", "baseProperty", "basePropertyDeep", "isKey", "toKey", "property", "path", "require_baseIteratee", "__commonJSMin", "exports", "module", "baseMatches", "baseMatchesProperty", "identity", "isArray", "property", "baseIteratee", "value", "require_baseFindIndex", "__commonJSMin", "exports", "module", "baseFindIndex", "array", "predicate", "fromIndex", "fromRight", "length", "index", "require_baseIsNaN", "__commonJSMin", "exports", "module", "baseIsNaN", "value", "require_strictIndexOf", "__commonJSMin", "exports", "module", "strictIndexOf", "array", "value", "fromIndex", "index", "length", "require_baseIndexOf", "__commonJSMin", "exports", "module", "baseFindIndex", "baseIsNaN", "strictIndexOf", "baseIndexOf", "array", "value", "fromIndex", "require_arrayIncludes", "__commonJSMin", "exports", "module", "baseIndexOf", "arrayIncludes", "array", "value", "length", "require_arrayIncludesWith", "__commonJSMin", "exports", "module", "arrayIncludesWith", "array", "value", "comparator", "index", "length", "require_noop", "__commonJSMin", "exports", "module", "noop", "require_createSet", "__commonJSMin", "exports", "module", "Set", "noop", "setToArray", "INFINITY", "createSet", "values", "require_baseUniq", "__commonJSMin", "exports", "module", "SetCache", "arrayIncludes", "arrayIncludesWith", "cacheHas", "createSet", "setToArray", "LARGE_ARRAY_SIZE", "baseUniq", "array", "iteratee", "comparator", "index", "includes", "length", "isCommon", "result", "seen", "set", "outer", "value", "computed", "seenIndex", "require_uniqBy", "__commonJSMin", "exports", "module", "baseIteratee", "baseUniq", "uniqBy", "array", "iteratee", "color_names_exports", "__export", "ColorNames", "__toCommonJS", "import_react", "import_api", "import_color_namer", "import_api", "import_api", "import_uniqBy", "preferences", "normalizeColorHex", "colorInput", "hex", "x", "getColorByPlatform", "normalizedSearchString", "colors", "a", "b", "getColorByProximity", "uniqBy", "import_jsx_runtime", "ColorNameListItem", "color", "hexCode", "normalizeColorHex", "import_jsx_runtime", "ColorNames", "isSearching", "setIsSearching", "searchString", "setSearchString", "colors", "setColors", "sortBy", "setSortBy", "normalizedSearchString", "normalizeColorHex", "colorNamesPerGroup", "loadColors", "colorNamer", "v", "getColorByPlatform", "palette", "colorList", "color", "index", "ColorNameListItem", "getColorByProximity"]
      7 }