palettable-3.3.0/ 0000755 0000765 0000024 00000000000 13535037137 014741 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/MANIFEST.in 0000644 0000765 0000024 00000000073 13276321025 016471 0 ustar jiffyclub staff 0000000 0000000 include README.rst
include license.txt
include ez_setup.py
palettable-3.3.0/PKG-INFO 0000644 0000765 0000024 00000003650 13535037137 016042 0 ustar jiffyclub staff 0000000 0000000 Metadata-Version: 1.1
Name: palettable
Version: 3.3.0
Summary: Color palettes for Python
Home-page: https://jiffyclub.github.io/palettable/
Author: Matt Davis
Author-email: jiffyclub@gmail.com
License: UNKNOWN
Description: Palettable
==========
.. image:: https://travis-ci.org/jiffyclub/palettable.png?branch=master
:alt: Travis-CI
:target: https://travis-ci.org/jiffyclub/palettable
.. image:: https://coveralls.io/repos/jiffyclub/palettable/badge.png
:alt: Coveralls
:target: https://coveralls.io/r/jiffyclub/palettable
.. image:: https://img.shields.io/pypi/v/palettable.svg
:alt: PyPI
:target: https://pypi.python.org/pypi/palettable/
.. image:: https://img.shields.io/pypi/wheel/palettable.svg
:target: https://pypi.python.org/pypi/palettable/
:alt: Wheel Status
Color Palettes for Python
-------------------------
Palettable (formerly brewer2mpl) is a library of color palettes for Python.
It's written in pure Python with no dependencies, but it can supply color maps
for matplotlib. You can use Palettable to customize matplotlib plots or supply
colors for a web application.
For more information see the
`documentation `_.
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Scientific/Engineering :: Visualization
palettable-3.3.0/README.rst 0000644 0000765 0000024 00000001731 12550244036 016424 0 ustar jiffyclub staff 0000000 0000000 Palettable
==========
.. image:: https://travis-ci.org/jiffyclub/palettable.png?branch=master
:alt: Travis-CI
:target: https://travis-ci.org/jiffyclub/palettable
.. image:: https://coveralls.io/repos/jiffyclub/palettable/badge.png
:alt: Coveralls
:target: https://coveralls.io/r/jiffyclub/palettable
.. image:: https://img.shields.io/pypi/v/palettable.svg
:alt: PyPI
:target: https://pypi.python.org/pypi/palettable/
.. image:: https://img.shields.io/pypi/wheel/palettable.svg
:target: https://pypi.python.org/pypi/palettable/
:alt: Wheel Status
Color Palettes for Python
-------------------------
Palettable (formerly brewer2mpl) is a library of color palettes for Python.
It's written in pure Python with no dependencies, but it can supply color maps
for matplotlib. You can use Palettable to customize matplotlib plots or supply
colors for a web application.
For more information see the
`documentation `_.
palettable-3.3.0/ez_setup.py 0000644 0000765 0000024 00000024354 12404364016 017152 0 ustar jiffyclub staff 0000000 0000000 #!/usr/bin/env python
"""Bootstrap setuptools installation
To use setuptools in your package's setup.py, include this
file in the same directory and add this to the top of your setup.py::
from ez_setup import use_setuptools
use_setuptools()
To require a specific version of setuptools, set a download
mirror, or use an alternate download directory, simply supply
the appropriate options to ``use_setuptools()``.
This file can also be run as a script to install or upgrade setuptools.
"""
import os
import shutil
import sys
import tempfile
import zipfile
import optparse
import subprocess
import platform
import textwrap
import contextlib
from distutils import log
try:
from urllib.request import urlopen
except ImportError:
from urllib2 import urlopen
try:
from site import USER_SITE
except ImportError:
USER_SITE = None
DEFAULT_VERSION = "5.7"
DEFAULT_URL = "https://pypi.python.org/packages/source/s/setuptools/"
def _python_cmd(*args):
"""
Return True if the command succeeded.
"""
args = (sys.executable,) + args
return subprocess.call(args) == 0
def _install(archive_filename, install_args=()):
with archive_context(archive_filename):
# installing
log.warn('Installing Setuptools')
if not _python_cmd('setup.py', 'install', *install_args):
log.warn('Something went wrong during the installation.')
log.warn('See the error message above.')
# exitcode will be 2
return 2
def _build_egg(egg, archive_filename, to_dir):
with archive_context(archive_filename):
# building an egg
log.warn('Building a Setuptools egg in %s', to_dir)
_python_cmd('setup.py', '-q', 'bdist_egg', '--dist-dir', to_dir)
# returning the result
log.warn(egg)
if not os.path.exists(egg):
raise IOError('Could not build the egg.')
class ContextualZipFile(zipfile.ZipFile):
"""
Supplement ZipFile class to support context manager for Python 2.6
"""
def __enter__(self):
return self
def __exit__(self, type, value, traceback):
self.close()
def __new__(cls, *args, **kwargs):
"""
Construct a ZipFile or ContextualZipFile as appropriate
"""
if hasattr(zipfile.ZipFile, '__exit__'):
return zipfile.ZipFile(*args, **kwargs)
return super(ContextualZipFile, cls).__new__(cls)
@contextlib.contextmanager
def archive_context(filename):
# extracting the archive
tmpdir = tempfile.mkdtemp()
log.warn('Extracting in %s', tmpdir)
old_wd = os.getcwd()
try:
os.chdir(tmpdir)
with ContextualZipFile(filename) as archive:
archive.extractall()
# going in the directory
subdir = os.path.join(tmpdir, os.listdir(tmpdir)[0])
os.chdir(subdir)
log.warn('Now working in %s', subdir)
yield
finally:
os.chdir(old_wd)
shutil.rmtree(tmpdir)
def _do_download(version, download_base, to_dir, download_delay):
egg = os.path.join(to_dir, 'setuptools-%s-py%d.%d.egg'
% (version, sys.version_info[0], sys.version_info[1]))
if not os.path.exists(egg):
archive = download_setuptools(version, download_base,
to_dir, download_delay)
_build_egg(egg, archive, to_dir)
sys.path.insert(0, egg)
# Remove previously-imported pkg_resources if present (see
# https://bitbucket.org/pypa/setuptools/pull-request/7/ for details).
if 'pkg_resources' in sys.modules:
del sys.modules['pkg_resources']
import setuptools
setuptools.bootstrap_install_from = egg
def use_setuptools(version=DEFAULT_VERSION, download_base=DEFAULT_URL,
to_dir=os.curdir, download_delay=15):
to_dir = os.path.abspath(to_dir)
rep_modules = 'pkg_resources', 'setuptools'
imported = set(sys.modules).intersection(rep_modules)
try:
import pkg_resources
except ImportError:
return _do_download(version, download_base, to_dir, download_delay)
try:
pkg_resources.require("setuptools>=" + version)
return
except pkg_resources.DistributionNotFound:
return _do_download(version, download_base, to_dir, download_delay)
except pkg_resources.VersionConflict as VC_err:
if imported:
msg = textwrap.dedent("""
The required version of setuptools (>={version}) is not available,
and can't be installed while this script is running. Please
install a more recent version first, using
'easy_install -U setuptools'.
(Currently using {VC_err.args[0]!r})
""").format(VC_err=VC_err, version=version)
sys.stderr.write(msg)
sys.exit(2)
# otherwise, reload ok
del pkg_resources, sys.modules['pkg_resources']
return _do_download(version, download_base, to_dir, download_delay)
def _clean_check(cmd, target):
"""
Run the command to download target. If the command fails, clean up before
re-raising the error.
"""
try:
subprocess.check_call(cmd)
except subprocess.CalledProcessError:
if os.access(target, os.F_OK):
os.unlink(target)
raise
def download_file_powershell(url, target):
"""
Download the file at url to target using Powershell (which will validate
trust). Raise an exception if the command cannot complete.
"""
target = os.path.abspath(target)
ps_cmd = (
"[System.Net.WebRequest]::DefaultWebProxy.Credentials = "
"[System.Net.CredentialCache]::DefaultCredentials; "
"(new-object System.Net.WebClient).DownloadFile(%(url)r, %(target)r)"
% vars()
)
cmd = [
'powershell',
'-Command',
ps_cmd,
]
_clean_check(cmd, target)
def has_powershell():
if platform.system() != 'Windows':
return False
cmd = ['powershell', '-Command', 'echo test']
with open(os.path.devnull, 'wb') as devnull:
try:
subprocess.check_call(cmd, stdout=devnull, stderr=devnull)
except Exception:
return False
return True
download_file_powershell.viable = has_powershell
def download_file_curl(url, target):
cmd = ['curl', url, '--silent', '--output', target]
_clean_check(cmd, target)
def has_curl():
cmd = ['curl', '--version']
with open(os.path.devnull, 'wb') as devnull:
try:
subprocess.check_call(cmd, stdout=devnull, stderr=devnull)
except Exception:
return False
return True
download_file_curl.viable = has_curl
def download_file_wget(url, target):
cmd = ['wget', url, '--quiet', '--output-document', target]
_clean_check(cmd, target)
def has_wget():
cmd = ['wget', '--version']
with open(os.path.devnull, 'wb') as devnull:
try:
subprocess.check_call(cmd, stdout=devnull, stderr=devnull)
except Exception:
return False
return True
download_file_wget.viable = has_wget
def download_file_insecure(url, target):
"""
Use Python to download the file, even though it cannot authenticate the
connection.
"""
src = urlopen(url)
try:
# Read all the data in one block.
data = src.read()
finally:
src.close()
# Write all the data in one block to avoid creating a partial file.
with open(target, "wb") as dst:
dst.write(data)
download_file_insecure.viable = lambda: True
def get_best_downloader():
downloaders = (
download_file_powershell,
download_file_curl,
download_file_wget,
download_file_insecure,
)
viable_downloaders = (dl for dl in downloaders if dl.viable())
return next(viable_downloaders, None)
def download_setuptools(version=DEFAULT_VERSION, download_base=DEFAULT_URL,
to_dir=os.curdir, delay=15, downloader_factory=get_best_downloader):
"""
Download setuptools from a specified location and return its filename
`version` should be a valid setuptools version number that is available
as an sdist for download under the `download_base` URL (which should end
with a '/'). `to_dir` is the directory where the egg will be downloaded.
`delay` is the number of seconds to pause before an actual download
attempt.
``downloader_factory`` should be a function taking no arguments and
returning a function for downloading a URL to a target.
"""
# making sure we use the absolute path
to_dir = os.path.abspath(to_dir)
zip_name = "setuptools-%s.zip" % version
url = download_base + zip_name
saveto = os.path.join(to_dir, zip_name)
if not os.path.exists(saveto): # Avoid repeated downloads
log.warn("Downloading %s", url)
downloader = downloader_factory()
downloader(url, saveto)
return os.path.realpath(saveto)
def _build_install_args(options):
"""
Build the arguments to 'python setup.py install' on the setuptools package
"""
return ['--user'] if options.user_install else []
def _parse_args():
"""
Parse the command line for options
"""
parser = optparse.OptionParser()
parser.add_option(
'--user', dest='user_install', action='store_true', default=False,
help='install in user site package (requires Python 2.6 or later)')
parser.add_option(
'--download-base', dest='download_base', metavar="URL",
default=DEFAULT_URL,
help='alternative URL from where to download the setuptools package')
parser.add_option(
'--insecure', dest='downloader_factory', action='store_const',
const=lambda: download_file_insecure, default=get_best_downloader,
help='Use internal, non-validating downloader'
)
parser.add_option(
'--version', help="Specify which version to download",
default=DEFAULT_VERSION,
)
options, args = parser.parse_args()
# positional arguments are ignored
return options
def main():
"""Install or upgrade setuptools and EasyInstall"""
options = _parse_args()
archive = download_setuptools(
version=options.version,
download_base=options.download_base,
downloader_factory=options.downloader_factory,
)
return _install(archive, _build_install_args(options))
if __name__ == '__main__':
sys.exit(main())
palettable-3.3.0/license.txt 0000644 0000765 0000024 00000002051 13511740131 017107 0 ustar jiffyclub staff 0000000 0000000 palettable
Copyright (c) 2019 Matt Davis
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or
substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
palettable-3.3.0/palettable/ 0000755 0000765 0000024 00000000000 13535037137 017056 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/__init__.py 0000644 0000765 0000024 00000000741 13535037054 021167 0 ustar jiffyclub staff 0000000 0000000 """
Palettable is a pure Python package for accessing
a variety of color maps from Python, including colorbrewer2,
Tableau, and whimsical Wes Anderson maps.
"""
from __future__ import absolute_import
from . import cmocean
from . import cartocolors
from . import colorbrewer
from . import cubehelix
from . import lightbartlein
from . import matplotlib
from . import mycarta
from . import scientific
from . import wesanderson
from . import tableau
version = __version__ = '3.3.0'
palettable-3.3.0/palettable/cartocolors/ 0000755 0000765 0000024 00000000000 13535037137 021410 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/cartocolors/__init__.py 0000644 0000765 0000024 00000000131 13152437502 023507 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from . import diverging, sequential, qualitative
palettable-3.3.0/palettable/cartocolors/cartocolorspalette.py 0000644 0000765 0000024 00000001644 13152437502 025673 0 ustar jiffyclub staff 0000000 0000000 """
Palette class and utilities for CartoColors palettes.
"""
from __future__ import absolute_import
from ..palette import Palette
class CartoColorsMap(Palette):
"""
Representation of a color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
palette_type : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
url : str
Website with related info.
"""
url = 'https://github.com/CartoDB/CartoColor/wiki/CARTOColor-Scheme-Names'
def __init__(self, name, palette_type, colors):
super(CartoColorsMap, self).__init__(name, palette_type, colors)
palettable-3.3.0/palettable/cartocolors/colormaps.py 0000644 0000765 0000024 00000013730 13152437502 023760 0 ustar jiffyclub staff 0000000 0000000 """
Color maps from CARTO's CartoColors
Learn more at https://github.com/CartoDB/CartoColor
CARTOColors are made available under a Creative Commons Attribution license:
https://creativecommons.org/licenses/by/3.0/us/
"""
# Sequential schemes
_BURG = [
[255, 198, 196],
[244, 163, 168],
[227, 129, 145],
[204, 96, 125],
[173, 70, 108],
[139, 48, 88],
[103, 32, 68],
]
_BURGYL = [
[251, 230, 197],
[245, 186, 152],
[238, 138, 130],
[220, 113, 118],
[200, 88, 108],
[156, 63, 93],
[112, 40, 74],
]
_REDOR = [
[246, 210, 169],
[245, 183, 142],
[241, 156, 124],
[234, 129, 113],
[221, 104, 108],
[202, 82, 104],
[177, 63, 100],
]
_ORYEL = [
[236, 218, 154],
[239, 196, 126],
[243, 173, 106],
[247, 148, 93],
[249, 123, 87],
[246, 99, 86],
[238, 77, 90],
]
_PEACH = [
[253, 224, 197],
[250, 203, 166],
[248, 181, 139],
[245, 158, 114],
[242, 133, 93],
[239, 106, 76],
[235, 74, 64],
]
_PINKYL = [
[254, 246, 181],
[255, 221, 154],
[255, 194, 133],
[255, 166, 121],
[250, 138, 118],
[241, 109, 122],
[225, 83, 131],
]
_MINT = [
[228, 241, 225],
[180, 217, 204],
[137, 192, 182],
[99, 166, 160],
[68, 140, 138],
[40, 114, 116],
[13, 88, 95],
]
_BLUGRN = [
[196, 230, 195],
[150, 210, 164],
[109, 188, 144],
[77, 162, 132],
[54, 135, 122],
[38, 107, 110],
[29, 79, 96],
]
_DARKMINT = [
[210, 251, 212],
[165, 219, 194],
[123, 188, 176],
[85, 156, 158],
[58, 124, 137],
[35, 93, 114],
[18, 63, 90],
]
_EMRLD = [
[211, 242, 163],
[151, 225, 150],
[108, 192, 139],
[76, 155, 130],
[33, 122, 121],
[16, 89, 101],
[7, 64, 80],
]
_AGGRNYL = [
[36, 86, 104],
[15, 114, 121],
[13, 143, 129],
[57, 171, 126],
[110, 197, 116],
[169, 220, 103],
[237, 239, 93],
]
_BLUYL = [
[247, 254, 174],
[183, 230, 165],
[124, 203, 162],
[70, 174, 160],
[8, 144, 153],
[0, 113, 139],
[4, 82, 117],
]
_TEAL = [
[209, 238, 234],
[168, 219, 217],
[133, 196, 201],
[104, 171, 184],
[79, 144, 166],
[59, 115, 143],
[42, 86, 116],
]
_TEALGRN = [
[176, 242, 188],
[137, 232, 172],
[103, 219, 165],
[76, 200, 163],
[56, 178, 163],
[44, 152, 160],
[37, 125, 152],
]
_PURP = [
[243, 224, 247],
[228, 199, 241],
[209, 175, 232],
[185, 152, 221],
[159, 130, 206],
[130, 109, 186],
[99, 88, 159],
]
_PURPOR = [
[249, 221, 218],
[242, 185, 196],
[229, 151, 185],
[206, 120, 179],
[173, 95, 173],
[131, 75, 160],
[87, 59, 136],
]
_SUNSET = [
[243, 231, 155],
[250, 196, 132],
[248, 160, 126],
[235, 127, 134],
[206, 102, 147],
[160, 89, 160],
[92, 83, 165],
]
_MAGENTA = [
[243, 203, 211],
[234, 169, 189],
[221, 136, 172],
[202, 105, 157],
[177, 77, 142],
[145, 53, 125],
[108, 33, 103],
]
_SUNSETDARK = [
[252, 222, 156],
[250, 164, 118],
[240, 116, 110],
[227, 79, 111],
[220, 57, 119],
[185, 37, 122],
[124, 29, 111],
]
_AGSUNSET = [
[75, 41, 145],
[135, 44, 162],
[192, 54, 157],
[234, 79, 136],
[250, 120, 118],
[246, 169, 122],
[237, 217, 163],
]
_BRWNYL = [
[237, 229, 207],
[224, 194, 162],
[211, 156, 131],
[193, 118, 111],
[166, 84, 97],
[129, 55, 83],
[84, 31, 63],
]
# Diverging schemes
_ARMYROSE = [
[121, 130, 52],
[163, 173, 98],
[208, 211, 162],
[253, 251, 228],
[240, 198, 195],
[223, 145, 163],
[212, 103, 128],
]
_FALL = [
[61, 89, 65],
[119, 136, 104],
[181, 185, 145],
[246, 237, 189],
[237, 187, 138],
[222, 138, 90],
[202, 86, 44],
]
_GEYSER = [
[0, 128, 128],
[112, 164, 148],
[180, 200, 168],
[246, 237, 189],
[237, 187, 138],
[222, 138, 90],
[202, 86, 44],
]
_TEMPS = [
[0, 147, 146],
[57, 177, 133],
[156, 203, 134],
[233, 226, 156],
[238, 180, 121],
[232, 132, 113],
[207, 89, 126],
]
_TEALROSE = [
[0, 147, 146],
[114, 170, 161],
[177, 199, 179],
[241, 234, 200],
[229, 185, 173],
[217, 137, 148],
[208, 88, 126],
]
_TROPIC = [
[0, 155, 158],
[66, 183, 185],
[167, 211, 212],
[241, 241, 241],
[228, 193, 217],
[214, 145, 193],
[199, 93, 171],
]
_EARTH = [
[161, 105, 40],
[189, 146, 90],
[214, 189, 141],
[237, 234, 194],
[181, 200, 184],
[121, 167, 172],
[40, 135, 161],
]
# Qualitative palettes
_ANTIQUE = [
[133, 92, 117],
[217, 175, 107],
[175, 100, 88],
[115, 111, 76],
[82, 106, 131],
[98, 83, 119],
[104, 133, 92],
[156, 156, 94],
[160, 97, 119],
[140, 120, 93],
[124, 124, 124],
]
_BOLD = [
[127, 60, 141],
[17, 165, 121],
[57, 105, 172],
[242, 183, 1],
[231, 63, 116],
[128, 186, 90],
[230, 131, 16],
[0, 134, 149],
[207, 28, 144],
[249, 123, 114],
[165, 170, 153],
]
_PASTEL = [
[102, 197, 204],
[246, 207, 113],
[248, 156, 116],
[220, 176, 242],
[135, 197, 95],
[158, 185, 243],
[254, 136, 177],
[201, 219, 116],
[139, 224, 164],
[180, 151, 231],
[179, 179, 179],
]
_PRISM = [
[95, 70, 144],
[29, 105, 150],
[56, 166, 165],
[15, 133, 84],
[115, 175, 72],
[237, 173, 8],
[225, 124, 5],
[204, 80, 62],
[148, 52, 110],
[111, 64, 112],
[102, 102, 102],
]
_SAFE = [
[136, 204, 238],
[204, 102, 119],
[221, 204, 119],
[17, 119, 51],
[51, 34, 136],
[170, 68, 153],
[68, 170, 153],
[153, 153, 51],
[136, 34, 85],
[102, 17, 0],
[136, 136, 136],
]
_VIVID = [
[229, 134, 6],
[93, 105, 177],
[82, 188, 163],
[153, 201, 69],
[204, 97, 176],
[36, 121, 108],
[218, 165, 27],
[47, 138, 196],
[118, 78, 159],
[237, 100, 90],
[165, 170, 153],
]
palettable-3.3.0/palettable/cartocolors/diverging.py 0000644 0000765 0000024 00000002031 13152437502 023727 0 ustar jiffyclub staff 0000000 0000000 """
Diverging color maps from the CartoColors schemes:
https://github.com/CartoDB/CartoColor/wiki/CARTOColor-Scheme-Names
"""
from __future__ import absolute_import
import itertools
from . import cartocolorspalette
from . import colormaps
from .. import utils
_PALETTE_TYPE = 'diverging'
_NAMES_TO_DATA = {
'ArmyRose': colormaps._ARMYROSE,
'Fall': colormaps._FALL,
'Geyser': colormaps._GEYSER,
'Temps': colormaps._TEMPS,
'TealRose': colormaps._TEALROSE,
'Tropic': colormaps._TROPIC,
'Earth': colormaps._EARTH,
}
_NAME_MAP = utils.make_name_map(_NAMES_TO_DATA.keys())
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(
sorted(_NAMES_TO_DATA.keys()),
range(2, 8))
print_maps = utils.print_maps_factory(
'diverging cartocolors', _NAMES_AND_LENGTHS, _PALETTE_TYPE)
get_map = utils.get_map_factory(
'diverging cartocolors', __name__, _NAMES_TO_DATA, _PALETTE_TYPE,
cartocolorspalette.CartoColorsMap)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/cartocolors/qualitative.py 0000644 0000765 0000024 00000002374 13152437502 024313 0 ustar jiffyclub staff 0000000 0000000 """
Qualitative color maps from the CartoColors schemes:
https://github.com/CartoDB/CartoColor/wiki/CARTOColor-Scheme-Names
"""
from __future__ import absolute_import
import itertools
from . import cartocolorspalette
from . import colormaps
from .. import utils
_PALETTE_TYPE = 'qualitative'
_NAMES_TO_DATA = {
'Antique': colormaps._ANTIQUE,
'Bold': colormaps._BOLD,
'Pastel': colormaps._PASTEL,
'Prism': colormaps._PRISM,
'Safe': colormaps._SAFE,
'Vivid': colormaps._VIVID,
}
_NAME_MAP = utils.make_name_map(_NAMES_TO_DATA.keys())
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(sorted(_NAMES_TO_DATA.keys()),
range(2, 11))
print_maps = utils.print_maps_factory('qualitative cartocolors',
_NAMES_AND_LENGTHS,
_PALETTE_TYPE)
get_map = utils.get_map_factory('qualitative cartocolors',
__name__,
_NAMES_TO_DATA,
_PALETTE_TYPE,
cartocolorspalette.CartoColorsMap,
is_evenly_spaced=False)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/cartocolors/sequential.py 0000644 0000765 0000024 00000002602 13535036654 024137 0 ustar jiffyclub staff 0000000 0000000 """
Sequential color maps from the CartoColors schemes:
https://github.com/CartoDB/CartoColor/wiki/CARTOColor-Scheme-Names
"""
from __future__ import absolute_import
from . import cartocolorspalette
from . import colormaps
from .. import utils
_PALETTE_TYPE = 'sequential'
_NAMES_TO_DATA = {
'Burg': colormaps._BURG,
'BurgYl': colormaps._BURGYL,
'RedOr': colormaps._REDOR,
'OrYel': colormaps._ORYEL,
'Peach': colormaps._PEACH,
'PinkYl': colormaps._PINKYL,
'Mint': colormaps._MINT,
'BluGrn': colormaps._BLUGRN,
'DarkMint': colormaps._DARKMINT,
'Emrld': colormaps._EMRLD,
'agGrnYl': colormaps._AGGRNYL,
'BluYl': colormaps._BLUYL,
'Teal': colormaps._TEAL,
'TealGrn': colormaps._TEALGRN,
'Purp': colormaps._PURP,
'PurpOr': colormaps._PURPOR,
'Sunset': colormaps._SUNSET,
'Magenta': colormaps._MAGENTA,
'SunsetDark': colormaps._SUNSETDARK,
'agSunset': colormaps._AGSUNSET,
'BrwnYl': colormaps._BRWNYL,
}
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(
sorted(_NAMES_TO_DATA.keys()),
range(2, 8))
print_maps = utils.print_maps_factory(
'sequential cartocolors', _NAMES_AND_LENGTHS, _PALETTE_TYPE)
get_map = utils.get_map_factory(
'sequential cartocolors', __name__, _NAMES_TO_DATA, _PALETTE_TYPE,
cartocolorspalette.CartoColorsMap)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/cmocean/ 0000755 0000765 0000024 00000000000 13535037137 020463 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/cmocean/__init__.py 0000644 0000765 0000024 00000000114 13052672644 022572 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from . import diverging, sequential
palettable-3.3.0/palettable/cmocean/cmoceanpalette.py 0000644 0000765 0000024 00000001564 13052672644 024031 0 ustar jiffyclub staff 0000000 0000000 """
Palette class and utilities for cmocean palettes.
"""
from __future__ import absolute_import
from ..palette import Palette
class CmoceanMap(Palette):
"""
Representation of a color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
palette_type : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
url : str
Website with related info.
"""
url = 'http://matplotlib.org/cmocean/'
def __init__(self, name, palette_type, colors):
super(CmoceanMap, self).__init__(name, palette_type, colors)
palettable-3.3.0/palettable/cmocean/colormaps.py 0000644 0000765 0000024 00000305605 13052672644 023047 0 ustar jiffyclub staff 0000000 0000000 """
Color maps from Kristen Thyng's cmocean package
Learn more at https://github.com/matplotlib/cmocean and view the cmocean license at
https://github.com/matplotlib/cmocean/blob/master/LICENSE.txt.
"""
_ALGAE = [
[215, 249, 208],
[214, 248, 206],
[212, 247, 205],
[211, 246, 203],
[210, 245, 202],
[209, 244, 200],
[207, 244, 199],
[206, 243, 197],
[205, 242, 196],
[204, 241, 195],
[202, 240, 193],
[201, 239, 192],
[200, 238, 190],
[199, 237, 189],
[197, 236, 187],
[196, 235, 186],
[195, 235, 185],
[194, 234, 183],
[192, 233, 182],
[191, 232, 180],
[190, 231, 179],
[189, 230, 177],
[187, 229, 176],
[186, 228, 175],
[185, 228, 173],
[184, 227, 172],
[182, 226, 171],
[181, 225, 169],
[180, 224, 168],
[178, 223, 166],
[177, 222, 165],
[176, 222, 164],
[175, 221, 162],
[173, 220, 161],
[172, 219, 160],
[171, 218, 158],
[170, 218, 157],
[168, 217, 156],
[167, 216, 154],
[166, 215, 153],
[164, 214, 152],
[163, 213, 150],
[162, 213, 149],
[160, 212, 148],
[159, 211, 146],
[158, 210, 145],
[157, 209, 144],
[155, 209, 143],
[154, 208, 141],
[153, 207, 140],
[151, 206, 139],
[150, 205, 138],
[149, 205, 136],
[147, 204, 135],
[146, 203, 134],
[145, 202, 133],
[143, 202, 131],
[142, 201, 130],
[140, 200, 129],
[139, 199, 128],
[138, 199, 126],
[136, 198, 125],
[135, 197, 124],
[133, 196, 123],
[132, 196, 122],
[131, 195, 121],
[129, 194, 119],
[128, 193, 118],
[126, 193, 117],
[125, 192, 116],
[123, 191, 115],
[122, 190, 114],
[120, 190, 113],
[119, 189, 111],
[117, 188, 110],
[116, 187, 109],
[114, 187, 108],
[113, 186, 107],
[111, 185, 106],
[110, 185, 105],
[108, 184, 104],
[107, 183, 103],
[105, 182, 102],
[103, 182, 101],
[102, 181, 100],
[100, 180, 99],
[98, 180, 98],
[97, 179, 97],
[95, 178, 96],
[93, 178, 95],
[91, 177, 94],
[90, 176, 93],
[88, 175, 93],
[86, 175, 92],
[84, 174, 91],
[82, 173, 90],
[80, 173, 89],
[78, 172, 89],
[76, 171, 88],
[74, 171, 87],
[72, 170, 87],
[70, 169, 86],
[68, 168, 85],
[66, 168, 85],
[63, 167, 84],
[61, 166, 84],
[59, 166, 84],
[57, 165, 83],
[55, 164, 83],
[52, 163, 83],
[50, 163, 82],
[48, 162, 82],
[46, 161, 82],
[44, 160, 82],
[42, 160, 82],
[40, 159, 81],
[38, 158, 81],
[36, 157, 81],
[34, 156, 81],
[32, 156, 81],
[30, 155, 81],
[28, 154, 81],
[27, 153, 81],
[25, 152, 81],
[24, 151, 80],
[22, 150, 80],
[21, 150, 80],
[19, 149, 80],
[18, 148, 80],
[16, 147, 80],
[15, 146, 80],
[14, 145, 80],
[13, 144, 79],
[12, 143, 79],
[11, 143, 79],
[10, 142, 79],
[9, 141, 79],
[9, 140, 79],
[8, 139, 78],
[8, 138, 78],
[7, 137, 78],
[7, 136, 78],
[7, 135, 77],
[7, 134, 77],
[7, 134, 77],
[7, 133, 77],
[7, 132, 77],
[7, 131, 76],
[7, 130, 76],
[8, 129, 76],
[8, 128, 75],
[8, 127, 75],
[9, 126, 75],
[9, 125, 75],
[10, 124, 74],
[10, 124, 74],
[11, 123, 74],
[11, 122, 73],
[12, 121, 73],
[12, 120, 73],
[13, 119, 72],
[13, 118, 72],
[14, 117, 72],
[14, 116, 71],
[15, 115, 71],
[15, 115, 71],
[16, 114, 70],
[16, 113, 70],
[17, 112, 69],
[17, 111, 69],
[18, 110, 69],
[18, 109, 68],
[18, 108, 68],
[19, 107, 67],
[19, 106, 67],
[20, 106, 67],
[20, 105, 66],
[20, 104, 66],
[21, 103, 65],
[21, 102, 65],
[21, 101, 64],
[22, 100, 64],
[22, 99, 64],
[22, 98, 63],
[23, 98, 63],
[23, 97, 62],
[23, 96, 62],
[23, 95, 61],
[24, 94, 61],
[24, 93, 60],
[24, 92, 60],
[24, 91, 59],
[24, 91, 59],
[25, 90, 58],
[25, 89, 58],
[25, 88, 57],
[25, 87, 57],
[25, 86, 56],
[25, 85, 56],
[25, 84, 55],
[25, 84, 55],
[26, 83, 54],
[26, 82, 53],
[26, 81, 53],
[26, 80, 52],
[26, 79, 52],
[26, 78, 51],
[26, 77, 51],
[26, 77, 50],
[26, 76, 50],
[26, 75, 49],
[26, 74, 48],
[26, 73, 48],
[26, 72, 47],
[26, 71, 47],
[26, 71, 46],
[26, 70, 46],
[26, 69, 45],
[26, 68, 44],
[26, 67, 44],
[25, 66, 43],
[25, 65, 43],
[25, 64, 42],
[25, 64, 41],
[25, 63, 41],
[25, 62, 40],
[25, 61, 39],
[25, 60, 39],
[24, 59, 38],
[24, 59, 38],
[24, 58, 37],
[24, 57, 36],
[24, 56, 36],
[24, 55, 35],
[23, 54, 34],
[23, 53, 34],
[23, 53, 33],
[23, 52, 32],
[23, 51, 32],
[22, 50, 31],
[22, 49, 30],
[22, 48, 30],
[22, 47, 29],
[21, 47, 28],
[21, 46, 28],
[21, 45, 27],
[20, 44, 26],
[20, 43, 26],
[20, 42, 25],
[20, 41, 24],
[19, 41, 24],
[19, 40, 23],
[19, 39, 22],
[18, 38, 22],
[18, 37, 21],
[18, 36, 20],
]
_AMP = [
[241, 237, 236],
[241, 236, 235],
[240, 235, 233],
[239, 233, 232],
[239, 232, 231],
[238, 231, 229],
[238, 230, 228],
[237, 229, 227],
[237, 227, 225],
[236, 226, 224],
[236, 225, 222],
[235, 224, 221],
[235, 223, 220],
[234, 221, 218],
[234, 220, 217],
[233, 219, 215],
[233, 218, 214],
[233, 217, 212],
[232, 216, 211],
[232, 214, 210],
[231, 213, 208],
[231, 212, 207],
[230, 211, 205],
[230, 210, 204],
[230, 209, 202],
[229, 207, 201],
[229, 206, 200],
[228, 205, 198],
[228, 204, 197],
[228, 203, 195],
[227, 201, 194],
[227, 200, 192],
[226, 199, 191],
[226, 198, 189],
[226, 197, 188],
[225, 196, 187],
[225, 195, 185],
[225, 193, 184],
[224, 192, 182],
[224, 191, 181],
[223, 190, 179],
[223, 189, 178],
[223, 188, 176],
[222, 186, 175],
[222, 185, 174],
[222, 184, 172],
[221, 183, 171],
[221, 182, 169],
[221, 181, 168],
[220, 180, 166],
[220, 178, 165],
[220, 177, 163],
[219, 176, 162],
[219, 175, 161],
[219, 174, 159],
[218, 173, 158],
[218, 172, 156],
[217, 170, 155],
[217, 169, 153],
[217, 168, 152],
[216, 167, 150],
[216, 166, 149],
[216, 165, 148],
[215, 164, 146],
[215, 162, 145],
[215, 161, 143],
[214, 160, 142],
[214, 159, 140],
[214, 158, 139],
[213, 157, 137],
[213, 156, 136],
[213, 154, 135],
[212, 153, 133],
[212, 152, 132],
[212, 151, 130],
[211, 150, 129],
[211, 149, 127],
[211, 148, 126],
[210, 146, 125],
[210, 145, 123],
[210, 144, 122],
[209, 143, 120],
[209, 142, 119],
[209, 141, 118],
[208, 140, 116],
[208, 139, 115],
[208, 137, 113],
[207, 136, 112],
[207, 135, 111],
[207, 134, 109],
[206, 133, 108],
[206, 132, 106],
[205, 131, 105],
[205, 129, 104],
[205, 128, 102],
[204, 127, 101],
[204, 126, 100],
[204, 125, 98],
[203, 124, 97],
[203, 122, 96],
[203, 121, 94],
[202, 120, 93],
[202, 119, 91],
[201, 118, 90],
[201, 117, 89],
[201, 116, 87],
[200, 114, 86],
[200, 113, 85],
[200, 112, 84],
[199, 111, 82],
[199, 110, 81],
[198, 109, 80],
[198, 107, 78],
[198, 106, 77],
[197, 105, 76],
[197, 104, 74],
[197, 103, 73],
[196, 101, 72],
[196, 100, 71],
[195, 99, 70],
[195, 98, 68],
[195, 97, 67],
[194, 95, 66],
[194, 94, 65],
[193, 93, 63],
[193, 92, 62],
[192, 91, 61],
[192, 89, 60],
[192, 88, 59],
[191, 87, 58],
[191, 86, 57],
[190, 84, 56],
[190, 83, 54],
[189, 82, 53],
[189, 81, 52],
[189, 79, 51],
[188, 78, 50],
[188, 77, 49],
[187, 76, 48],
[187, 74, 48],
[186, 73, 47],
[186, 72, 46],
[185, 70, 45],
[185, 69, 44],
[184, 68, 43],
[184, 66, 43],
[183, 65, 42],
[183, 64, 41],
[182, 63, 41],
[181, 61, 40],
[181, 60, 39],
[180, 59, 39],
[180, 57, 38],
[179, 56, 38],
[178, 55, 38],
[178, 53, 37],
[177, 52, 37],
[176, 51, 37],
[176, 49, 37],
[175, 48, 36],
[174, 47, 36],
[174, 45, 36],
[173, 44, 36],
[172, 43, 36],
[171, 42, 36],
[170, 40, 36],
[170, 39, 36],
[169, 38, 36],
[168, 37, 36],
[167, 36, 36],
[166, 34, 37],
[165, 33, 37],
[164, 32, 37],
[163, 31, 37],
[162, 30, 37],
[161, 29, 37],
[160, 28, 38],
[159, 27, 38],
[158, 26, 38],
[157, 25, 38],
[156, 24, 39],
[155, 23, 39],
[154, 22, 39],
[153, 21, 39],
[152, 21, 39],
[151, 20, 40],
[149, 19, 40],
[148, 19, 40],
[147, 18, 40],
[146, 17, 40],
[145, 17, 41],
[144, 16, 41],
[142, 16, 41],
[141, 16, 41],
[140, 15, 41],
[139, 15, 41],
[137, 15, 41],
[136, 15, 41],
[135, 14, 41],
[133, 14, 41],
[132, 14, 41],
[131, 14, 41],
[129, 14, 41],
[128, 14, 41],
[127, 14, 41],
[125, 14, 41],
[124, 14, 41],
[123, 14, 41],
[121, 14, 41],
[120, 14, 40],
[119, 14, 40],
[117, 14, 40],
[116, 14, 40],
[115, 14, 39],
[113, 14, 39],
[112, 14, 39],
[111, 14, 38],
[109, 14, 38],
[108, 15, 38],
[107, 15, 37],
[105, 15, 37],
[104, 15, 37],
[103, 15, 36],
[101, 15, 36],
[100, 14, 35],
[99, 14, 35],
[97, 14, 34],
[96, 14, 34],
[95, 14, 33],
[93, 14, 33],
[92, 14, 33],
[91, 14, 32],
[90, 14, 31],
[88, 14, 31],
[87, 14, 30],
[86, 14, 30],
[84, 13, 29],
[83, 13, 29],
[82, 13, 28],
[81, 13, 28],
[79, 13, 27],
[78, 13, 26],
[77, 12, 26],
[75, 12, 25],
[74, 12, 25],
[73, 12, 24],
[72, 11, 23],
[70, 11, 23],
[69, 11, 22],
[68, 11, 22],
[67, 10, 21],
[65, 10, 20],
[64, 10, 20],
[63, 10, 19],
[61, 9, 18],
[60, 9, 18],
]
_BALANCE = [
[24, 28, 67],
[25, 30, 70],
[26, 31, 73],
[27, 33, 76],
[28, 34, 79],
[29, 35, 82],
[30, 37, 85],
[31, 38, 88],
[32, 39, 91],
[33, 41, 95],
[33, 42, 98],
[34, 43, 101],
[35, 45, 105],
[36, 46, 108],
[37, 47, 111],
[37, 48, 115],
[38, 50, 118],
[39, 51, 122],
[39, 52, 125],
[40, 54, 129],
[40, 55, 132],
[41, 56, 136],
[41, 58, 140],
[41, 59, 143],
[41, 60, 147],
[41, 62, 151],
[41, 63, 154],
[41, 64, 158],
[41, 66, 162],
[40, 67, 165],
[39, 69, 169],
[38, 71, 172],
[37, 72, 176],
[35, 74, 179],
[33, 76, 182],
[31, 78, 184],
[28, 80, 186],
[25, 82, 188],
[22, 85, 189],
[19, 87, 190],
[16, 89, 190],
[13, 91, 190],
[12, 94, 190],
[10, 96, 190],
[10, 98, 190],
[10, 100, 190],
[11, 102, 189],
[13, 104, 189],
[15, 106, 189],
[17, 108, 188],
[19, 110, 188],
[22, 112, 188],
[25, 114, 187],
[27, 116, 187],
[30, 118, 187],
[33, 120, 187],
[35, 122, 186],
[38, 123, 186],
[41, 125, 186],
[43, 127, 186],
[46, 129, 186],
[48, 131, 186],
[51, 132, 186],
[54, 134, 186],
[56, 136, 186],
[59, 137, 186],
[62, 139, 186],
[64, 141, 186],
[67, 143, 186],
[70, 144, 186],
[72, 146, 186],
[75, 148, 186],
[78, 149, 186],
[81, 151, 186],
[83, 153, 186],
[86, 154, 187],
[89, 156, 187],
[92, 157, 187],
[95, 159, 187],
[98, 160, 187],
[101, 162, 188],
[104, 164, 188],
[107, 165, 188],
[110, 167, 189],
[113, 168, 189],
[117, 170, 190],
[120, 171, 190],
[123, 172, 191],
[126, 174, 191],
[129, 175, 192],
[133, 177, 192],
[136, 178, 193],
[139, 180, 194],
[142, 181, 195],
[145, 183, 195],
[148, 184, 196],
[152, 186, 197],
[155, 187, 198],
[158, 188, 199],
[161, 190, 200],
[164, 191, 201],
[167, 193, 202],
[170, 194, 203],
[173, 196, 204],
[176, 197, 205],
[179, 199, 206],
[182, 201, 207],
[185, 202, 208],
[188, 204, 210],
[191, 205, 211],
[193, 207, 212],
[196, 208, 213],
[199, 210, 215],
[202, 212, 216],
[205, 213, 217],
[208, 215, 218],
[211, 217, 220],
[213, 218, 221],
[216, 220, 222],
[219, 222, 224],
[222, 224, 225],
[225, 225, 227],
[227, 227, 228],
[230, 229, 230],
[233, 231, 231],
[235, 233, 233],
[238, 234, 234],
[241, 236, 236],
[241, 236, 235],
[240, 234, 233],
[239, 232, 230],
[238, 229, 227],
[237, 227, 224],
[236, 224, 222],
[235, 222, 219],
[234, 220, 216],
[233, 217, 213],
[232, 215, 210],
[231, 213, 207],
[230, 210, 205],
[229, 208, 202],
[229, 206, 199],
[228, 203, 196],
[227, 201, 193],
[226, 199, 190],
[225, 196, 187],
[225, 194, 184],
[224, 192, 181],
[223, 189, 178],
[223, 187, 176],
[222, 185, 173],
[221, 182, 170],
[220, 180, 167],
[220, 178, 164],
[219, 175, 161],
[218, 173, 158],
[218, 171, 155],
[217, 169, 152],
[216, 166, 150],
[216, 164, 147],
[215, 162, 144],
[214, 159, 141],
[214, 157, 138],
[213, 155, 135],
[212, 153, 132],
[211, 150, 129],
[211, 148, 127],
[210, 146, 124],
[209, 143, 121],
[209, 141, 118],
[208, 139, 115],
[207, 137, 112],
[207, 134, 110],
[206, 132, 107],
[205, 130, 104],
[205, 127, 101],
[204, 125, 99],
[203, 123, 96],
[202, 121, 93],
[202, 118, 91],
[201, 116, 88],
[200, 114, 85],
[199, 111, 83],
[199, 109, 80],
[198, 107, 77],
[197, 104, 75],
[196, 102, 72],
[195, 99, 70],
[195, 97, 67],
[194, 95, 65],
[193, 92, 63],
[192, 90, 60],
[191, 87, 58],
[190, 85, 56],
[190, 82, 54],
[189, 80, 52],
[188, 77, 50],
[187, 75, 48],
[186, 72, 46],
[185, 69, 44],
[184, 67, 43],
[183, 64, 41],
[182, 61, 40],
[180, 59, 39],
[179, 56, 38],
[178, 53, 37],
[177, 51, 37],
[175, 48, 36],
[174, 46, 36],
[172, 43, 36],
[171, 41, 36],
[169, 38, 36],
[167, 36, 36],
[165, 33, 37],
[163, 31, 37],
[161, 29, 37],
[159, 27, 38],
[157, 25, 38],
[155, 23, 39],
[153, 22, 39],
[151, 20, 40],
[148, 19, 40],
[146, 18, 40],
[144, 16, 41],
[141, 16, 41],
[139, 15, 41],
[136, 15, 41],
[134, 14, 41],
[131, 14, 41],
[128, 14, 41],
[126, 14, 41],
[123, 14, 41],
[120, 14, 40],
[118, 14, 40],
[115, 14, 39],
[112, 14, 39],
[109, 14, 38],
[107, 15, 37],
[104, 15, 37],
[101, 15, 36],
[99, 14, 35],
[96, 14, 34],
[94, 14, 33],
[91, 14, 32],
[88, 14, 31],
[86, 14, 30],
[83, 13, 29],
[81, 13, 28],
[78, 13, 27],
[75, 12, 25],
[73, 12, 24],
[70, 11, 23],
[68, 11, 22],
[65, 10, 20],
[63, 10, 19],
[60, 9, 18],
]
_CURL = [
[21, 29, 68],
[21, 30, 68],
[21, 31, 69],
[22, 32, 69],
[22, 33, 70],
[22, 34, 70],
[22, 35, 71],
[23, 36, 71],
[23, 37, 72],
[23, 38, 72],
[23, 39, 73],
[23, 40, 74],
[24, 41, 74],
[24, 42, 75],
[24, 43, 75],
[24, 44, 76],
[24, 45, 76],
[25, 46, 77],
[25, 47, 77],
[25, 48, 78],
[25, 49, 79],
[25, 50, 79],
[26, 51, 80],
[26, 52, 80],
[26, 53, 81],
[26, 54, 81],
[26, 54, 82],
[26, 55, 83],
[27, 56, 83],
[27, 57, 84],
[27, 58, 84],
[27, 59, 85],
[27, 60, 86],
[27, 61, 86],
[27, 62, 87],
[27, 63, 87],
[28, 64, 88],
[28, 65, 88],
[28, 66, 89],
[28, 66, 90],
[28, 67, 90],
[28, 68, 91],
[28, 69, 91],
[28, 70, 92],
[28, 71, 93],
[28, 72, 93],
[28, 73, 94],
[28, 74, 94],
[28, 75, 95],
[28, 76, 95],
[28, 76, 96],
[28, 77, 97],
[28, 78, 97],
[28, 79, 98],
[28, 80, 98],
[28, 81, 99],
[28, 82, 99],
[28, 83, 100],
[28, 84, 101],
[28, 85, 101],
[27, 86, 102],
[27, 87, 102],
[27, 88, 103],
[27, 88, 103],
[27, 89, 104],
[27, 90, 104],
[26, 91, 105],
[26, 92, 106],
[26, 93, 106],
[26, 94, 107],
[26, 95, 107],
[25, 96, 108],
[25, 97, 108],
[25, 98, 109],
[25, 99, 109],
[24, 100, 110],
[24, 101, 110],
[24, 101, 111],
[23, 102, 111],
[23, 103, 112],
[23, 104, 112],
[22, 105, 113],
[22, 106, 113],
[22, 107, 114],
[21, 108, 114],
[21, 109, 115],
[20, 110, 115],
[20, 111, 115],
[20, 112, 116],
[19, 113, 116],
[19, 114, 117],
[19, 115, 117],
[18, 116, 118],
[18, 117, 118],
[18, 118, 118],
[17, 118, 119],
[17, 119, 119],
[17, 120, 120],
[17, 121, 120],
[17, 122, 120],
[17, 123, 121],
[17, 124, 121],
[17, 125, 121],
[17, 126, 122],
[17, 127, 122],
[17, 128, 122],
[18, 129, 123],
[18, 130, 123],
[19, 131, 123],
[19, 132, 123],
[20, 132, 124],
[21, 133, 124],
[22, 134, 124],
[22, 135, 124],
[23, 136, 125],
[25, 137, 125],
[26, 138, 125],
[27, 139, 125],
[28, 140, 126],
[30, 141, 126],
[31, 141, 126],
[33, 142, 126],
[34, 143, 126],
[36, 144, 127],
[37, 145, 127],
[39, 146, 127],
[41, 147, 127],
[42, 147, 127],
[44, 148, 127],
[46, 149, 128],
[48, 150, 128],
[50, 151, 128],
[52, 152, 128],
[54, 152, 128],
[56, 153, 129],
[58, 154, 129],
[59, 155, 129],
[61, 156, 129],
[63, 156, 129],
[65, 157, 130],
[67, 158, 130],
[69, 159, 130],
[71, 159, 130],
[73, 160, 131],
[75, 161, 131],
[78, 161, 131],
[80, 162, 132],
[82, 163, 132],
[84, 164, 132],
[86, 164, 133],
[87, 165, 133],
[89, 166, 133],
[91, 166, 134],
[93, 167, 134],
[95, 168, 135],
[97, 169, 135],
[99, 169, 136],
[101, 170, 136],
[103, 171, 137],
[105, 171, 137],
[107, 172, 138],
[109, 173, 138],
[111, 173, 139],
[113, 174, 139],
[114, 175, 140],
[116, 175, 141],
[118, 176, 141],
[120, 177, 142],
[122, 177, 142],
[124, 178, 143],
[125, 179, 144],
[127, 179, 144],
[129, 180, 145],
[131, 181, 146],
[133, 181, 147],
[134, 182, 147],
[136, 183, 148],
[138, 183, 149],
[139, 184, 150],
[141, 185, 151],
[143, 186, 151],
[145, 186, 152],
[146, 187, 153],
[148, 188, 154],
[150, 188, 155],
[151, 189, 156],
[153, 190, 157],
[155, 190, 158],
[156, 191, 159],
[158, 192, 159],
[160, 192, 160],
[161, 193, 161],
[163, 194, 162],
[164, 195, 163],
[166, 195, 164],
[168, 196, 165],
[169, 197, 166],
[171, 197, 168],
[172, 198, 169],
[174, 199, 170],
[176, 200, 171],
[177, 200, 172],
[179, 201, 173],
[180, 202, 174],
[182, 203, 175],
[183, 203, 176],
[185, 204, 178],
[186, 205, 179],
[188, 206, 180],
[189, 206, 181],
[191, 207, 182],
[192, 208, 183],
[194, 209, 185],
[195, 209, 186],
[197, 210, 187],
[198, 211, 188],
[200, 212, 190],
[201, 212, 191],
[203, 213, 192],
[204, 214, 193],
[206, 215, 195],
[207, 216, 196],
[209, 216, 197],
[210, 217, 199],
[211, 218, 200],
[213, 219, 201],
[214, 220, 203],
[216, 221, 204],
[217, 221, 205],
[219, 222, 207],
[220, 223, 208],
[221, 224, 209],
[223, 225, 211],
[224, 226, 212],
[226, 226, 214],
[227, 227, 215],
[228, 228, 216],
[230, 229, 218],
[231, 230, 219],
[233, 231, 221],
[234, 232, 222],
[235, 233, 223],
[237, 234, 225],
[238, 234, 226],
[240, 235, 228],
[241, 236, 229],
[242, 237, 231],
[244, 238, 232],
[245, 239, 234],
[247, 240, 235],
[248, 241, 237],
[249, 242, 238],
[251, 243, 240],
[252, 244, 241],
[253, 245, 243],
[255, 246, 244],
[254, 246, 245],
[253, 245, 243],
[252, 244, 241],
[252, 242, 240],
[251, 241, 238],
[250, 240, 236],
[250, 239, 235],
[249, 237, 233],
[249, 236, 231],
[248, 235, 230],
[248, 234, 228],
[247, 232, 226],
[246, 231, 225],
[246, 230, 223],
[245, 229, 221],
[245, 228, 220],
[244, 226, 218],
[244, 225, 216],
[243, 224, 214],
[243, 223, 213],
[242, 221, 211],
[242, 220, 209],
[242, 219, 208],
[241, 218, 206],
[241, 216, 204],
[240, 215, 203],
[240, 214, 201],
[239, 213, 200],
[239, 211, 198],
[238, 210, 196],
[238, 209, 195],
[238, 208, 193],
[237, 207, 191],
[237, 205, 190],
[236, 204, 188],
[236, 203, 187],
[236, 202, 185],
[235, 200, 183],
[235, 199, 182],
[235, 198, 180],
[234, 197, 179],
[234, 195, 177],
[233, 194, 175],
[233, 193, 174],
[233, 192, 172],
[232, 190, 171],
[232, 189, 169],
[232, 188, 168],
[231, 187, 166],
[231, 186, 165],
[231, 184, 163],
[230, 183, 162],
[230, 182, 160],
[230, 181, 159],
[229, 179, 157],
[229, 178, 156],
[229, 177, 154],
[228, 176, 153],
[228, 174, 152],
[228, 173, 150],
[227, 172, 149],
[227, 171, 147],
[227, 169, 146],
[226, 168, 145],
[226, 167, 143],
[226, 166, 142],
[225, 164, 141],
[225, 163, 139],
[225, 162, 138],
[224, 161, 137],
[224, 159, 136],
[224, 158, 134],
[224, 157, 133],
[223, 155, 132],
[223, 154, 131],
[223, 153, 130],
[222, 152, 128],
[222, 150, 127],
[222, 149, 126],
[221, 148, 125],
[221, 147, 124],
[220, 145, 123],
[220, 144, 122],
[220, 143, 121],
[219, 142, 120],
[219, 140, 119],
[219, 139, 118],
[218, 138, 117],
[218, 137, 116],
[217, 135, 115],
[217, 134, 114],
[217, 133, 114],
[216, 132, 113],
[216, 130, 112],
[215, 129, 111],
[215, 128, 110],
[214, 127, 110],
[214, 125, 109],
[214, 124, 108],
[213, 123, 108],
[213, 122, 107],
[212, 120, 106],
[212, 119, 106],
[211, 118, 105],
[211, 117, 105],
[210, 116, 104],
[210, 114, 104],
[209, 113, 103],
[208, 112, 103],
[208, 111, 102],
[207, 110, 102],
[207, 108, 101],
[206, 107, 101],
[205, 106, 101],
[205, 105, 100],
[204, 104, 100],
[204, 103, 100],
[203, 101, 99],
[202, 100, 99],
[202, 99, 99],
[201, 98, 99],
[200, 97, 98],
[200, 96, 98],
[199, 95, 98],
[198, 93, 98],
[197, 92, 98],
[197, 91, 97],
[196, 90, 97],
[195, 89, 97],
[194, 88, 97],
[194, 87, 97],
[193, 86, 97],
[192, 85, 97],
[191, 84, 96],
[191, 83, 96],
[190, 82, 96],
[189, 81, 96],
[188, 79, 96],
[187, 78, 96],
[186, 77, 96],
[186, 76, 96],
[185, 75, 96],
[184, 74, 96],
[183, 73, 96],
[182, 72, 96],
[181, 71, 96],
[180, 70, 96],
[180, 69, 96],
[179, 68, 96],
[178, 67, 96],
[177, 66, 96],
[176, 65, 96],
[175, 65, 96],
[174, 64, 96],
[173, 63, 96],
[172, 62, 96],
[171, 61, 96],
[170, 60, 96],
[169, 59, 96],
[168, 58, 96],
[167, 57, 96],
[166, 56, 96],
[165, 55, 96],
[164, 54, 96],
[163, 54, 96],
[162, 53, 96],
[161, 52, 96],
[160, 51, 96],
[159, 50, 96],
[158, 49, 96],
[157, 48, 96],
[156, 47, 96],
[155, 47, 96],
[154, 46, 96],
[153, 45, 97],
[152, 44, 97],
[151, 43, 97],
[150, 43, 97],
[149, 42, 97],
[147, 41, 97],
[146, 40, 97],
[145, 39, 96],
[144, 39, 96],
[143, 38, 96],
[142, 37, 96],
[141, 37, 96],
[140, 36, 96],
[138, 35, 96],
[137, 34, 96],
[136, 34, 96],
[135, 33, 96],
[134, 32, 96],
[133, 32, 96],
[131, 31, 96],
[130, 31, 96],
[129, 30, 95],
[128, 29, 95],
[127, 29, 95],
[125, 28, 95],
[124, 28, 95],
[123, 27, 94],
[122, 27, 94],
[120, 26, 94],
[119, 26, 94],
[118, 25, 93],
[117, 25, 93],
[115, 25, 93],
[114, 24, 92],
[113, 24, 92],
[112, 24, 92],
[110, 23, 91],
[109, 23, 91],
[108, 23, 90],
[106, 22, 90],
[105, 22, 89],
[104, 22, 89],
[102, 22, 88],
[101, 21, 88],
[100, 21, 87],
[98, 21, 87],
[97, 21, 86],
[96, 20, 85],
[94, 20, 85],
[93, 20, 84],
[92, 20, 83],
[90, 20, 82],
[89, 20, 82],
[88, 19, 81],
[87, 19, 80],
[85, 19, 79],
[84, 19, 78],
[83, 19, 78],
[81, 19, 77],
[80, 18, 76],
[79, 18, 75],
[77, 18, 74],
[76, 18, 73],
[75, 18, 72],
[73, 18, 71],
[72, 17, 70],
[71, 17, 69],
[70, 17, 68],
[68, 17, 67],
[67, 16, 66],
[66, 16, 65],
[64, 16, 64],
[63, 16, 63],
[62, 15, 62],
[61, 15, 61],
[59, 15, 60],
[58, 15, 59],
[57, 14, 58],
[56, 14, 57],
[54, 14, 55],
[53, 13, 54],
[52, 13, 53],
]
_DEEP = [
[253, 254, 204],
[251, 253, 203],
[249, 252, 202],
[247, 251, 200],
[245, 250, 199],
[243, 250, 198],
[241, 249, 197],
[239, 248, 196],
[237, 247, 195],
[235, 247, 193],
[233, 246, 192],
[231, 245, 191],
[229, 244, 190],
[227, 244, 189],
[225, 243, 188],
[223, 242, 187],
[221, 242, 186],
[219, 241, 185],
[217, 240, 184],
[215, 239, 183],
[212, 239, 182],
[210, 238, 181],
[208, 237, 180],
[206, 236, 179],
[204, 236, 179],
[202, 235, 178],
[200, 234, 177],
[198, 234, 176],
[196, 233, 175],
[193, 232, 175],
[191, 231, 174],
[189, 231, 173],
[187, 230, 172],
[185, 229, 172],
[183, 229, 171],
[181, 228, 170],
[178, 227, 170],
[176, 226, 169],
[174, 226, 169],
[172, 225, 168],
[170, 224, 168],
[167, 224, 167],
[165, 223, 167],
[163, 222, 166],
[161, 221, 166],
[159, 221, 165],
[156, 220, 165],
[154, 219, 165],
[152, 218, 164],
[150, 218, 164],
[148, 217, 164],
[146, 216, 164],
[144, 215, 164],
[141, 215, 163],
[139, 214, 163],
[137, 213, 163],
[135, 212, 163],
[133, 211, 163],
[131, 211, 163],
[129, 210, 163],
[127, 209, 163],
[125, 208, 163],
[124, 207, 163],
[122, 206, 163],
[120, 206, 163],
[118, 205, 163],
[117, 204, 163],
[115, 203, 163],
[113, 202, 163],
[112, 201, 163],
[110, 200, 163],
[109, 199, 163],
[107, 198, 163],
[106, 197, 164],
[105, 196, 164],
[103, 195, 164],
[102, 194, 164],
[101, 194, 164],
[100, 193, 164],
[99, 192, 164],
[98, 191, 164],
[97, 190, 164],
[96, 189, 164],
[95, 188, 164],
[94, 187, 164],
[93, 186, 164],
[92, 185, 164],
[91, 184, 164],
[90, 183, 164],
[90, 182, 164],
[89, 180, 164],
[88, 179, 164],
[88, 178, 164],
[87, 177, 164],
[86, 176, 164],
[86, 175, 164],
[85, 174, 163],
[85, 173, 163],
[84, 172, 163],
[83, 171, 163],
[83, 170, 163],
[82, 169, 163],
[82, 168, 163],
[81, 167, 163],
[81, 166, 162],
[81, 165, 162],
[80, 164, 162],
[80, 163, 162],
[79, 162, 162],
[79, 161, 162],
[79, 160, 162],
[78, 159, 161],
[78, 158, 161],
[77, 157, 161],
[77, 156, 161],
[77, 155, 161],
[76, 154, 160],
[76, 153, 160],
[75, 152, 160],
[75, 151, 160],
[75, 150, 160],
[74, 149, 159],
[74, 148, 159],
[74, 147, 159],
[73, 146, 159],
[73, 145, 158],
[73, 144, 158],
[72, 143, 158],
[72, 142, 158],
[72, 141, 157],
[71, 140, 157],
[71, 139, 157],
[71, 138, 157],
[70, 137, 157],
[70, 136, 156],
[70, 135, 156],
[69, 134, 156],
[69, 133, 156],
[69, 132, 155],
[68, 131, 155],
[68, 130, 155],
[68, 129, 155],
[68, 128, 155],
[67, 127, 154],
[67, 126, 154],
[67, 125, 154],
[66, 124, 154],
[66, 123, 153],
[66, 122, 153],
[66, 121, 153],
[65, 120, 153],
[65, 119, 153],
[65, 118, 152],
[64, 117, 152],
[64, 116, 152],
[64, 115, 152],
[64, 114, 152],
[64, 113, 151],
[63, 112, 151],
[63, 111, 151],
[63, 110, 151],
[63, 109, 151],
[63, 108, 150],
[62, 107, 150],
[62, 106, 150],
[62, 105, 150],
[62, 104, 150],
[62, 103, 149],
[62, 102, 149],
[62, 101, 149],
[62, 100, 149],
[62, 99, 148],
[62, 98, 148],
[62, 97, 148],
[62, 96, 148],
[62, 95, 147],
[62, 94, 147],
[62, 92, 147],
[62, 91, 147],
[62, 90, 146],
[62, 89, 146],
[62, 88, 146],
[62, 87, 145],
[62, 86, 145],
[63, 85, 144],
[63, 84, 144],
[63, 83, 143],
[63, 82, 143],
[63, 80, 142],
[64, 79, 141],
[64, 78, 141],
[64, 77, 140],
[64, 76, 139],
[65, 75, 138],
[65, 74, 137],
[65, 73, 136],
[65, 72, 135],
[65, 71, 133],
[65, 70, 132],
[65, 69, 131],
[65, 68, 129],
[66, 67, 128],
[65, 66, 126],
[65, 65, 125],
[65, 64, 123],
[65, 64, 122],
[65, 63, 120],
[65, 62, 118],
[65, 61, 117],
[64, 60, 115],
[64, 60, 113],
[64, 59, 112],
[64, 58, 110],
[63, 57, 108],
[63, 56, 107],
[63, 56, 105],
[62, 55, 103],
[62, 54, 102],
[61, 53, 100],
[61, 53, 98],
[61, 52, 97],
[60, 51, 95],
[60, 50, 93],
[59, 50, 92],
[59, 49, 90],
[58, 48, 88],
[58, 48, 87],
[57, 47, 85],
[57, 46, 84],
[56, 45, 82],
[56, 45, 81],
[55, 44, 79],
[54, 43, 77],
[54, 42, 76],
[53, 42, 74],
[53, 41, 73],
[52, 40, 71],
[52, 40, 70],
[51, 39, 68],
[50, 38, 67],
[50, 37, 65],
[49, 37, 64],
[48, 36, 62],
[48, 35, 61],
[47, 34, 59],
[47, 34, 58],
[46, 33, 57],
[45, 32, 55],
[45, 31, 54],
[44, 31, 52],
[43, 30, 51],
[43, 29, 50],
[42, 28, 48],
[41, 28, 47],
[40, 27, 45],
[40, 26, 44],
]
_DELTA = [
[17, 32, 64],
[18, 32, 65],
[18, 33, 67],
[19, 34, 68],
[20, 34, 70],
[20, 35, 71],
[21, 36, 73],
[22, 36, 75],
[22, 37, 76],
[23, 38, 78],
[23, 38, 79],
[24, 39, 81],
[25, 40, 83],
[25, 40, 84],
[26, 41, 86],
[27, 42, 88],
[27, 42, 89],
[28, 43, 91],
[28, 44, 93],
[29, 44, 95],
[30, 45, 96],
[30, 46, 98],
[31, 46, 100],
[31, 47, 102],
[32, 48, 103],
[32, 48, 105],
[33, 49, 107],
[33, 49, 109],
[34, 50, 111],
[34, 51, 112],
[35, 51, 114],
[35, 52, 116],
[36, 53, 118],
[36, 53, 120],
[37, 54, 122],
[37, 55, 124],
[37, 55, 126],
[38, 56, 128],
[38, 56, 130],
[38, 57, 132],
[38, 58, 134],
[39, 58, 135],
[39, 59, 137],
[39, 60, 139],
[39, 61, 141],
[38, 61, 143],
[38, 62, 145],
[38, 63, 146],
[37, 64, 148],
[37, 65, 149],
[36, 66, 150],
[35, 67, 151],
[35, 68, 152],
[34, 69, 153],
[33, 70, 154],
[33, 72, 154],
[32, 73, 155],
[31, 74, 155],
[31, 75, 155],
[30, 76, 156],
[30, 77, 156],
[30, 78, 156],
[29, 79, 156],
[29, 81, 156],
[28, 82, 157],
[28, 83, 157],
[28, 84, 157],
[28, 85, 157],
[27, 86, 157],
[27, 87, 158],
[27, 88, 158],
[27, 89, 158],
[27, 90, 158],
[27, 91, 158],
[27, 92, 158],
[27, 93, 158],
[27, 94, 159],
[27, 95, 159],
[27, 96, 159],
[27, 97, 159],
[27, 98, 159],
[27, 99, 159],
[27, 100, 159],
[28, 101, 160],
[28, 102, 160],
[28, 103, 160],
[28, 104, 160],
[29, 105, 160],
[29, 106, 160],
[29, 107, 161],
[30, 108, 161],
[30, 109, 161],
[30, 110, 161],
[31, 111, 161],
[31, 112, 162],
[31, 113, 162],
[32, 114, 162],
[32, 115, 162],
[33, 116, 162],
[33, 117, 163],
[34, 118, 163],
[34, 119, 163],
[35, 120, 163],
[35, 121, 163],
[36, 122, 164],
[36, 123, 164],
[37, 124, 164],
[37, 125, 164],
[38, 126, 165],
[39, 127, 165],
[39, 128, 165],
[40, 128, 165],
[40, 129, 165],
[41, 130, 166],
[42, 131, 166],
[42, 132, 166],
[43, 133, 166],
[43, 134, 167],
[44, 135, 167],
[45, 136, 167],
[45, 137, 167],
[46, 138, 168],
[47, 139, 168],
[48, 140, 168],
[48, 141, 168],
[49, 142, 169],
[50, 143, 169],
[50, 144, 169],
[51, 145, 169],
[52, 146, 170],
[53, 146, 170],
[54, 147, 170],
[54, 148, 170],
[55, 149, 171],
[56, 150, 171],
[57, 151, 171],
[58, 152, 171],
[59, 153, 172],
[60, 154, 172],
[61, 155, 172],
[62, 156, 172],
[63, 157, 172],
[64, 158, 173],
[65, 159, 173],
[66, 160, 173],
[67, 160, 173],
[68, 161, 174],
[70, 162, 174],
[71, 163, 174],
[72, 164, 174],
[73, 165, 174],
[75, 166, 175],
[76, 167, 175],
[78, 168, 175],
[79, 169, 175],
[81, 169, 175],
[82, 170, 176],
[84, 171, 176],
[86, 172, 176],
[87, 173, 176],
[89, 174, 176],
[91, 174, 177],
[93, 175, 177],
[94, 176, 177],
[96, 177, 177],
[98, 178, 178],
[100, 178, 178],
[102, 179, 178],
[104, 180, 178],
[106, 181, 179],
[108, 181, 179],
[110, 182, 179],
[112, 183, 180],
[114, 184, 180],
[116, 184, 181],
[118, 185, 181],
[120, 186, 181],
[122, 186, 182],
[124, 187, 182],
[126, 188, 183],
[128, 189, 183],
[130, 189, 184],
[132, 190, 184],
[134, 191, 185],
[136, 191, 185],
[138, 192, 186],
[139, 193, 186],
[141, 194, 187],
[143, 194, 187],
[145, 195, 188],
[147, 196, 189],
[149, 196, 189],
[151, 197, 190],
[152, 198, 190],
[154, 199, 191],
[156, 199, 192],
[158, 200, 192],
[160, 201, 193],
[161, 202, 194],
[163, 202, 194],
[165, 203, 195],
[167, 204, 196],
[168, 205, 196],
[170, 205, 197],
[172, 206, 198],
[173, 207, 198],
[175, 208, 199],
[177, 208, 200],
[179, 209, 200],
[180, 210, 201],
[182, 211, 202],
[184, 212, 202],
[185, 212, 203],
[187, 213, 204],
[189, 214, 205],
[190, 215, 205],
[192, 216, 206],
[193, 216, 207],
[195, 217, 208],
[197, 218, 208],
[198, 219, 209],
[200, 220, 210],
[202, 221, 211],
[203, 221, 211],
[205, 222, 212],
[206, 223, 213],
[208, 224, 213],
[209, 225, 214],
[211, 226, 215],
[213, 227, 216],
[214, 227, 216],
[216, 228, 217],
[217, 229, 218],
[219, 230, 218],
[220, 231, 219],
[222, 232, 220],
[223, 233, 220],
[225, 234, 221],
[227, 235, 222],
[228, 236, 222],
[230, 237, 223],
[231, 238, 224],
[233, 238, 224],
[234, 239, 225],
[236, 240, 225],
[238, 241, 226],
[239, 242, 226],
[241, 243, 227],
[242, 244, 227],
[244, 245, 228],
[246, 246, 228],
[247, 247, 229],
[249, 248, 229],
[251, 249, 229],
[252, 250, 230],
[254, 251, 230],
[255, 253, 205],
[254, 252, 203],
[254, 250, 201],
[253, 249, 199],
[252, 248, 197],
[252, 247, 194],
[251, 246, 192],
[250, 244, 190],
[249, 243, 188],
[249, 242, 186],
[248, 241, 184],
[247, 240, 182],
[247, 238, 180],
[246, 237, 177],
[246, 236, 175],
[245, 235, 173],
[244, 234, 171],
[243, 233, 169],
[243, 231, 167],
[242, 230, 165],
[241, 229, 162],
[241, 228, 160],
[240, 227, 158],
[239, 226, 156],
[239, 225, 154],
[238, 223, 152],
[237, 222, 150],
[237, 221, 147],
[236, 220, 145],
[235, 219, 143],
[234, 218, 141],
[234, 217, 139],
[233, 216, 137],
[232, 215, 134],
[231, 214, 132],
[231, 213, 130],
[230, 212, 128],
[229, 211, 126],
[228, 210, 123],
[227, 208, 121],
[227, 207, 119],
[226, 206, 117],
[225, 205, 115],
[224, 205, 113],
[223, 204, 110],
[222, 203, 108],
[221, 202, 106],
[220, 201, 104],
[219, 200, 102],
[218, 199, 100],
[217, 198, 97],
[216, 197, 95],
[215, 196, 93],
[214, 195, 91],
[213, 194, 89],
[212, 193, 87],
[211, 193, 85],
[210, 192, 83],
[209, 191, 81],
[208, 190, 79],
[206, 189, 76],
[205, 189, 74],
[204, 188, 72],
[203, 187, 70],
[201, 186, 69],
[200, 185, 67],
[199, 185, 65],
[197, 184, 63],
[196, 183, 61],
[195, 183, 59],
[193, 182, 57],
[192, 181, 55],
[190, 180, 54],
[189, 180, 52],
[187, 179, 50],
[186, 178, 48],
[184, 178, 47],
[183, 177, 45],
[181, 176, 43],
[180, 176, 42],
[178, 175, 40],
[177, 174, 39],
[175, 174, 37],
[173, 173, 35],
[172, 173, 34],
[170, 172, 32],
[169, 171, 31],
[167, 171, 30],
[165, 170, 28],
[164, 169, 27],
[162, 169, 25],
[160, 168, 24],
[159, 168, 23],
[157, 167, 21],
[155, 166, 20],
[154, 166, 19],
[152, 165, 18],
[150, 165, 16],
[149, 164, 15],
[147, 163, 14],
[145, 163, 13],
[143, 162, 12],
[142, 162, 11],
[140, 161, 10],
[138, 160, 9],
[136, 160, 8],
[135, 159, 8],
[133, 159, 7],
[131, 158, 7],
[129, 157, 6],
[128, 157, 6],
[126, 156, 6],
[124, 156, 6],
[122, 155, 6],
[121, 154, 6],
[119, 154, 6],
[117, 153, 6],
[115, 153, 6],
[113, 152, 6],
[112, 151, 7],
[110, 151, 7],
[108, 150, 7],
[106, 149, 8],
[104, 149, 9],
[102, 148, 9],
[101, 148, 10],
[99, 147, 11],
[97, 146, 11],
[95, 146, 12],
[93, 145, 13],
[92, 144, 14],
[90, 144, 15],
[88, 143, 15],
[86, 142, 16],
[84, 142, 17],
[82, 141, 18],
[81, 140, 18],
[79, 140, 19],
[77, 139, 20],
[75, 138, 21],
[73, 138, 22],
[72, 137, 22],
[70, 136, 23],
[68, 136, 24],
[66, 135, 25],
[64, 134, 25],
[63, 133, 26],
[61, 133, 27],
[59, 132, 28],
[57, 131, 28],
[56, 131, 29],
[54, 130, 30],
[52, 129, 30],
[50, 128, 31],
[49, 127, 32],
[47, 127, 32],
[45, 126, 33],
[44, 125, 33],
[42, 124, 34],
[40, 124, 35],
[39, 123, 35],
[37, 122, 36],
[36, 121, 36],
[34, 120, 37],
[33, 120, 37],
[31, 119, 38],
[30, 118, 38],
[28, 117, 39],
[27, 116, 39],
[26, 115, 39],
[24, 115, 40],
[23, 114, 40],
[22, 113, 41],
[21, 112, 41],
[19, 111, 41],
[18, 110, 42],
[17, 109, 42],
[16, 108, 42],
[15, 108, 43],
[15, 107, 43],
[14, 106, 43],
[13, 105, 43],
[13, 104, 43],
[12, 103, 44],
[12, 102, 44],
[11, 101, 44],
[11, 100, 44],
[11, 99, 44],
[11, 99, 44],
[11, 98, 45],
[11, 97, 45],
[11, 96, 45],
[11, 95, 45],
[11, 94, 45],
[12, 93, 45],
[12, 92, 45],
[12, 91, 45],
[13, 90, 45],
[13, 89, 45],
[14, 88, 45],
[14, 87, 45],
[15, 86, 44],
[15, 85, 44],
[16, 84, 44],
[16, 84, 44],
[16, 83, 44],
[17, 82, 44],
[17, 81, 44],
[18, 80, 43],
[18, 79, 43],
[19, 78, 43],
[19, 77, 43],
[20, 76, 42],
[20, 75, 42],
[20, 74, 42],
[21, 73, 42],
[21, 72, 41],
[22, 71, 41],
[22, 70, 41],
[22, 69, 40],
[23, 68, 40],
[23, 67, 39],
[23, 66, 39],
[23, 65, 39],
[24, 64, 38],
[24, 63, 38],
[24, 63, 37],
[24, 62, 37],
[25, 61, 36],
[25, 60, 36],
[25, 59, 35],
[25, 58, 35],
[25, 57, 34],
[25, 56, 34],
[25, 55, 33],
[25, 54, 33],
[25, 53, 32],
[25, 52, 31],
[25, 51, 31],
[25, 50, 30],
[25, 49, 30],
[25, 48, 29],
[25, 47, 28],
[25, 46, 28],
[25, 45, 27],
[25, 44, 26],
[25, 44, 25],
[25, 43, 25],
[25, 42, 24],
[24, 41, 23],
[24, 40, 23],
[24, 39, 22],
[24, 38, 21],
[24, 37, 20],
[23, 36, 19],
[23, 35, 19],
]
_DENSE = [
[230, 241, 241],
[228, 240, 240],
[227, 239, 239],
[225, 238, 239],
[223, 237, 238],
[221, 237, 237],
[220, 236, 237],
[218, 235, 236],
[216, 234, 236],
[215, 233, 235],
[213, 233, 235],
[211, 232, 234],
[209, 231, 234],
[208, 230, 233],
[206, 229, 233],
[204, 228, 232],
[203, 228, 232],
[201, 227, 232],
[199, 226, 231],
[198, 225, 231],
[196, 224, 230],
[194, 223, 230],
[193, 223, 230],
[191, 222, 230],
[190, 221, 229],
[188, 220, 229],
[186, 219, 229],
[185, 218, 228],
[183, 218, 228],
[182, 217, 228],
[180, 216, 228],
[178, 215, 228],
[177, 214, 227],
[175, 213, 227],
[174, 212, 227],
[172, 212, 227],
[171, 211, 227],
[169, 210, 227],
[168, 209, 227],
[166, 208, 227],
[165, 207, 226],
[163, 206, 226],
[162, 206, 226],
[160, 205, 226],
[159, 204, 226],
[158, 203, 226],
[156, 202, 226],
[155, 201, 226],
[154, 200, 226],
[152, 199, 226],
[151, 198, 226],
[150, 197, 226],
[148, 197, 226],
[147, 196, 226],
[146, 195, 226],
[144, 194, 226],
[143, 193, 226],
[142, 192, 226],
[141, 191, 226],
[140, 190, 226],
[138, 189, 227],
[137, 188, 227],
[136, 187, 227],
[135, 186, 227],
[134, 185, 227],
[133, 184, 227],
[132, 183, 227],
[131, 182, 227],
[130, 181, 227],
[129, 180, 227],
[128, 179, 227],
[127, 178, 227],
[127, 177, 228],
[126, 176, 228],
[125, 175, 228],
[124, 174, 228],
[123, 173, 228],
[123, 172, 228],
[122, 171, 228],
[121, 170, 228],
[121, 169, 228],
[120, 168, 228],
[120, 167, 228],
[119, 166, 228],
[119, 165, 228],
[118, 164, 229],
[118, 163, 229],
[117, 161, 229],
[117, 160, 229],
[117, 159, 229],
[117, 158, 229],
[116, 157, 229],
[116, 156, 228],
[116, 155, 228],
[116, 154, 228],
[116, 152, 228],
[115, 151, 228],
[115, 150, 228],
[115, 149, 228],
[115, 148, 228],
[115, 147, 227],
[115, 145, 227],
[115, 144, 227],
[115, 143, 227],
[115, 142, 226],
[116, 141, 226],
[116, 139, 226],
[116, 138, 226],
[116, 137, 225],
[116, 136, 225],
[116, 135, 224],
[116, 133, 224],
[117, 132, 223],
[117, 131, 223],
[117, 130, 222],
[117, 129, 222],
[117, 127, 221],
[117, 126, 221],
[118, 125, 220],
[118, 124, 220],
[118, 123, 219],
[118, 121, 218],
[118, 120, 218],
[119, 119, 217],
[119, 118, 216],
[119, 117, 215],
[119, 115, 215],
[119, 114, 214],
[120, 113, 213],
[120, 112, 212],
[120, 111, 211],
[120, 110, 210],
[120, 108, 210],
[120, 107, 209],
[120, 106, 208],
[121, 105, 207],
[121, 104, 206],
[121, 102, 205],
[121, 101, 204],
[121, 100, 203],
[121, 99, 202],
[121, 98, 201],
[121, 97, 200],
[121, 96, 199],
[121, 94, 197],
[121, 93, 196],
[121, 92, 195],
[121, 91, 194],
[121, 90, 193],
[121, 89, 192],
[121, 88, 191],
[121, 87, 189],
[121, 86, 188],
[121, 84, 187],
[121, 83, 186],
[121, 82, 184],
[121, 81, 183],
[121, 80, 182],
[121, 79, 181],
[120, 78, 179],
[120, 77, 178],
[120, 76, 177],
[120, 75, 175],
[120, 74, 174],
[120, 73, 173],
[119, 72, 171],
[119, 71, 170],
[119, 70, 169],
[119, 69, 167],
[119, 67, 166],
[118, 66, 165],
[118, 65, 163],
[118, 64, 162],
[118, 63, 160],
[117, 62, 159],
[117, 61, 157],
[117, 60, 156],
[116, 59, 155],
[116, 59, 153],
[116, 58, 152],
[115, 57, 150],
[115, 56, 149],
[115, 55, 147],
[114, 54, 146],
[114, 53, 144],
[114, 52, 143],
[113, 51, 141],
[113, 50, 140],
[112, 49, 138],
[112, 48, 136],
[111, 47, 135],
[111, 46, 133],
[110, 45, 132],
[110, 45, 130],
[109, 44, 129],
[109, 43, 127],
[108, 42, 126],
[108, 41, 124],
[107, 40, 122],
[107, 40, 121],
[106, 39, 119],
[106, 38, 117],
[105, 37, 116],
[104, 36, 114],
[104, 36, 113],
[103, 35, 111],
[103, 34, 109],
[102, 33, 108],
[101, 33, 106],
[101, 32, 104],
[100, 31, 103],
[99, 31, 101],
[98, 30, 99],
[98, 29, 98],
[97, 29, 96],
[96, 28, 94],
[95, 27, 93],
[95, 27, 91],
[94, 26, 89],
[93, 26, 88],
[92, 25, 86],
[91, 25, 84],
[90, 24, 83],
[90, 24, 81],
[89, 23, 80],
[88, 23, 78],
[87, 22, 76],
[86, 22, 75],
[85, 22, 73],
[84, 21, 72],
[83, 21, 70],
[82, 21, 68],
[81, 20, 67],
[80, 20, 65],
[79, 20, 64],
[78, 19, 62],
[77, 19, 61],
[75, 19, 59],
[74, 19, 58],
[73, 18, 56],
[72, 18, 55],
[71, 18, 54],
[70, 18, 52],
[69, 17, 51],
[68, 17, 50],
[66, 17, 48],
[65, 17, 47],
[64, 16, 46],
[63, 16, 45],
[62, 16, 43],
[60, 16, 42],
[59, 15, 41],
[58, 15, 40],
[57, 15, 39],
[56, 15, 37],
[54, 14, 36],
]
_GRAY = [
[0, 0, 0],
[0, 0, 0],
[0, 0, 0],
[0, 0, 0],
[1, 1, 1],
[1, 1, 1],
[2, 2, 2],
[2, 2, 2],
[3, 3, 3],
[3, 3, 3],
[4, 4, 4],
[5, 5, 5],
[5, 5, 5],
[6, 6, 6],
[7, 7, 7],
[8, 8, 8],
[9, 9, 9],
[10, 10, 10],
[11, 11, 11],
[12, 12, 12],
[13, 13, 13],
[15, 14, 14],
[16, 15, 15],
[17, 16, 16],
[18, 17, 17],
[19, 18, 18],
[20, 19, 19],
[21, 20, 20],
[22, 21, 21],
[23, 22, 22],
[24, 23, 23],
[25, 24, 24],
[26, 25, 25],
[27, 26, 26],
[28, 27, 27],
[29, 28, 28],
[29, 29, 29],
[30, 30, 30],
[31, 31, 31],
[32, 32, 32],
[33, 33, 33],
[34, 34, 34],
[35, 35, 35],
[36, 36, 36],
[37, 37, 36],
[38, 38, 37],
[39, 38, 38],
[40, 39, 39],
[41, 40, 40],
[42, 41, 41],
[43, 42, 42],
[43, 43, 43],
[44, 44, 44],
[45, 45, 45],
[46, 46, 46],
[47, 47, 46],
[48, 48, 47],
[49, 48, 48],
[50, 49, 49],
[51, 50, 50],
[52, 51, 51],
[53, 52, 52],
[53, 53, 53],
[54, 54, 54],
[55, 55, 55],
[56, 56, 55],
[57, 57, 56],
[58, 57, 57],
[59, 58, 58],
[60, 59, 59],
[61, 60, 60],
[62, 61, 61],
[62, 62, 62],
[63, 63, 63],
[64, 64, 64],
[65, 65, 64],
[66, 66, 65],
[67, 66, 66],
[68, 67, 67],
[69, 68, 68],
[70, 69, 69],
[71, 70, 70],
[71, 71, 71],
[72, 72, 72],
[73, 73, 72],
[74, 74, 73],
[75, 75, 74],
[76, 75, 75],
[77, 76, 76],
[78, 77, 77],
[79, 78, 78],
[80, 79, 79],
[80, 80, 80],
[81, 81, 80],
[82, 82, 81],
[83, 83, 82],
[84, 84, 83],
[85, 84, 84],
[86, 85, 85],
[87, 86, 86],
[88, 87, 87],
[89, 88, 88],
[90, 89, 89],
[90, 90, 90],
[91, 91, 90],
[92, 92, 91],
[93, 93, 92],
[94, 94, 93],
[95, 94, 94],
[96, 95, 95],
[97, 96, 96],
[98, 97, 97],
[99, 98, 98],
[100, 99, 99],
[101, 100, 100],
[101, 101, 100],
[102, 102, 101],
[103, 103, 102],
[104, 104, 103],
[105, 105, 104],
[106, 106, 105],
[107, 107, 106],
[108, 107, 107],
[109, 108, 108],
[110, 109, 109],
[111, 110, 110],
[112, 111, 111],
[113, 112, 112],
[114, 113, 113],
[115, 114, 113],
[115, 115, 114],
[116, 116, 115],
[117, 117, 116],
[118, 118, 117],
[119, 119, 118],
[120, 120, 119],
[121, 121, 120],
[122, 122, 121],
[123, 123, 122],
[124, 124, 123],
[125, 125, 124],
[126, 125, 125],
[127, 126, 126],
[128, 127, 127],
[129, 128, 128],
[130, 129, 129],
[131, 130, 130],
[132, 131, 131],
[133, 132, 132],
[134, 133, 133],
[135, 134, 134],
[136, 135, 135],
[137, 136, 136],
[138, 137, 137],
[139, 138, 138],
[140, 139, 139],
[141, 140, 140],
[142, 141, 141],
[143, 142, 142],
[144, 143, 143],
[145, 144, 144],
[146, 145, 145],
[147, 146, 146],
[148, 147, 147],
[149, 148, 148],
[150, 149, 149],
[151, 150, 150],
[152, 151, 151],
[153, 152, 152],
[154, 153, 153],
[155, 154, 154],
[156, 155, 155],
[157, 157, 156],
[158, 158, 157],
[159, 159, 158],
[160, 160, 159],
[161, 161, 160],
[162, 162, 161],
[163, 163, 162],
[164, 164, 163],
[165, 165, 164],
[166, 166, 165],
[167, 167, 166],
[168, 168, 167],
[170, 169, 168],
[171, 170, 169],
[172, 171, 170],
[173, 172, 172],
[174, 173, 173],
[175, 175, 174],
[176, 176, 175],
[177, 177, 176],
[178, 178, 177],
[179, 179, 178],
[180, 180, 179],
[182, 181, 180],
[183, 182, 181],
[184, 183, 182],
[185, 185, 184],
[186, 186, 185],
[187, 187, 186],
[188, 188, 187],
[189, 189, 188],
[190, 190, 189],
[192, 191, 190],
[193, 192, 191],
[194, 194, 193],
[195, 195, 194],
[196, 196, 195],
[197, 197, 196],
[198, 198, 197],
[200, 199, 198],
[201, 200, 199],
[202, 202, 201],
[203, 203, 202],
[204, 204, 203],
[205, 205, 204],
[207, 206, 205],
[208, 208, 206],
[209, 209, 208],
[210, 210, 209],
[211, 211, 210],
[213, 212, 211],
[214, 214, 212],
[215, 215, 214],
[216, 216, 215],
[217, 217, 216],
[219, 218, 217],
[220, 220, 219],
[221, 221, 220],
[222, 222, 221],
[224, 223, 222],
[225, 225, 223],
[226, 226, 225],
[227, 227, 226],
[229, 228, 227],
[230, 230, 228],
[231, 231, 230],
[232, 232, 231],
[234, 234, 232],
[235, 235, 234],
[236, 236, 235],
[238, 237, 236],
[239, 239, 237],
[240, 240, 239],
[242, 241, 240],
[243, 243, 241],
[244, 244, 243],
[245, 245, 244],
[247, 247, 245],
[248, 248, 247],
[249, 249, 248],
[251, 251, 249],
[252, 252, 251],
[254, 253, 252],
[255, 255, 253],
]
_HALINE = [
[42, 24, 108],
[42, 25, 110],
[42, 25, 113],
[43, 25, 115],
[43, 25, 117],
[44, 26, 120],
[44, 26, 122],
[45, 26, 125],
[45, 26, 127],
[45, 27, 130],
[46, 27, 132],
[46, 27, 135],
[46, 28, 137],
[46, 28, 140],
[46, 28, 142],
[46, 29, 145],
[46, 29, 147],
[46, 30, 149],
[46, 30, 152],
[46, 31, 154],
[45, 32, 156],
[45, 33, 157],
[44, 34, 159],
[43, 36, 160],
[42, 37, 161],
[41, 39, 162],
[40, 41, 163],
[38, 43, 163],
[37, 45, 163],
[36, 46, 163],
[34, 48, 163],
[33, 50, 162],
[32, 52, 162],
[30, 53, 161],
[29, 55, 161],
[28, 57, 160],
[27, 58, 160],
[25, 60, 159],
[24, 61, 158],
[23, 63, 158],
[22, 64, 157],
[21, 65, 156],
[20, 67, 156],
[19, 68, 155],
[18, 69, 155],
[17, 71, 154],
[16, 72, 153],
[15, 73, 153],
[15, 74, 152],
[14, 76, 151],
[13, 77, 151],
[13, 78, 150],
[13, 79, 150],
[12, 80, 149],
[12, 81, 149],
[12, 82, 148],
[12, 83, 148],
[12, 84, 147],
[13, 85, 147],
[13, 86, 146],
[13, 87, 146],
[14, 88, 145],
[14, 89, 145],
[15, 90, 145],
[15, 91, 144],
[16, 92, 144],
[17, 93, 143],
[17, 94, 143],
[18, 95, 143],
[19, 96, 142],
[20, 97, 142],
[20, 98, 142],
[21, 99, 142],
[22, 99, 141],
[23, 100, 141],
[24, 101, 141],
[24, 102, 140],
[25, 103, 140],
[26, 104, 140],
[27, 105, 140],
[28, 106, 140],
[29, 107, 139],
[29, 107, 139],
[30, 108, 139],
[31, 109, 139],
[32, 110, 139],
[33, 111, 139],
[34, 112, 138],
[34, 113, 138],
[35, 113, 138],
[36, 114, 138],
[37, 115, 138],
[38, 116, 138],
[38, 117, 138],
[39, 118, 138],
[40, 118, 137],
[41, 119, 137],
[41, 120, 137],
[42, 121, 137],
[43, 122, 137],
[43, 123, 137],
[44, 124, 137],
[45, 124, 137],
[45, 125, 137],
[46, 126, 137],
[47, 127, 137],
[47, 128, 137],
[48, 129, 137],
[49, 130, 137],
[49, 130, 136],
[50, 131, 136],
[51, 132, 136],
[51, 133, 136],
[52, 134, 136],
[52, 135, 136],
[53, 136, 136],
[53, 137, 136],
[54, 137, 136],
[55, 138, 136],
[55, 139, 136],
[56, 140, 136],
[56, 141, 136],
[57, 142, 136],
[57, 143, 136],
[58, 144, 135],
[58, 144, 135],
[59, 145, 135],
[59, 146, 135],
[60, 147, 135],
[60, 148, 135],
[61, 149, 135],
[61, 150, 135],
[62, 151, 135],
[62, 152, 134],
[63, 153, 134],
[63, 153, 134],
[64, 154, 134],
[65, 155, 134],
[65, 156, 133],
[66, 157, 133],
[66, 158, 133],
[67, 159, 133],
[67, 160, 132],
[68, 161, 132],
[68, 162, 132],
[69, 163, 132],
[70, 164, 131],
[70, 164, 131],
[71, 165, 131],
[72, 166, 130],
[72, 167, 130],
[73, 168, 130],
[74, 169, 129],
[74, 170, 129],
[75, 171, 129],
[76, 172, 128],
[76, 173, 128],
[77, 174, 127],
[78, 174, 127],
[79, 175, 126],
[80, 176, 126],
[81, 177, 125],
[81, 178, 125],
[82, 179, 124],
[83, 180, 124],
[84, 181, 123],
[85, 182, 123],
[86, 183, 122],
[87, 184, 121],
[88, 184, 121],
[90, 185, 120],
[91, 186, 119],
[92, 187, 119],
[93, 188, 118],
[94, 189, 117],
[95, 190, 117],
[97, 191, 116],
[98, 191, 115],
[99, 192, 114],
[101, 193, 114],
[102, 194, 113],
[104, 195, 112],
[105, 196, 111],
[107, 196, 110],
[108, 197, 110],
[110, 198, 109],
[112, 199, 108],
[113, 200, 107],
[115, 200, 106],
[117, 201, 105],
[119, 202, 104],
[120, 203, 104],
[122, 203, 103],
[124, 204, 102],
[126, 205, 101],
[128, 206, 100],
[130, 206, 99],
[132, 207, 98],
[134, 208, 98],
[137, 208, 97],
[139, 209, 96],
[141, 210, 95],
[143, 210, 95],
[146, 211, 94],
[148, 211, 93],
[151, 212, 93],
[153, 212, 93],
[155, 213, 92],
[158, 214, 92],
[160, 214, 92],
[163, 215, 92],
[165, 215, 92],
[168, 216, 92],
[170, 216, 92],
[173, 216, 92],
[175, 217, 93],
[177, 217, 93],
[180, 218, 94],
[182, 218, 95],
[184, 219, 96],
[187, 219, 97],
[189, 220, 98],
[191, 220, 99],
[193, 221, 100],
[196, 221, 101],
[198, 222, 102],
[200, 222, 103],
[202, 223, 105],
[204, 223, 106],
[206, 224, 108],
[208, 224, 109],
[210, 225, 111],
[212, 225, 112],
[214, 226, 114],
[216, 226, 115],
[218, 227, 117],
[220, 227, 119],
[222, 228, 121],
[224, 229, 122],
[225, 229, 124],
[227, 230, 126],
[229, 230, 128],
[231, 231, 129],
[233, 231, 131],
[235, 232, 133],
[236, 233, 135],
[238, 233, 137],
[240, 234, 138],
[242, 234, 140],
[243, 235, 142],
[245, 236, 144],
[247, 236, 146],
[248, 237, 148],
[250, 238, 150],
[252, 238, 152],
[253, 239, 154],
]
_ICE = [
[4, 6, 19],
[5, 6, 20],
[5, 7, 21],
[6, 8, 23],
[7, 9, 24],
[8, 10, 26],
[9, 11, 27],
[10, 12, 29],
[11, 13, 30],
[12, 13, 31],
[13, 14, 33],
[14, 15, 34],
[15, 16, 36],
[16, 17, 37],
[17, 18, 39],
[18, 19, 40],
[19, 19, 42],
[20, 20, 43],
[21, 21, 44],
[22, 22, 46],
[23, 23, 47],
[23, 24, 49],
[24, 24, 50],
[25, 25, 52],
[26, 26, 53],
[27, 27, 55],
[28, 28, 56],
[29, 28, 58],
[30, 29, 59],
[31, 30, 61],
[31, 31, 62],
[32, 31, 64],
[33, 32, 65],
[34, 33, 67],
[35, 34, 68],
[36, 34, 70],
[37, 35, 71],
[37, 36, 73],
[38, 37, 74],
[39, 37, 76],
[40, 38, 78],
[41, 39, 79],
[41, 40, 81],
[42, 40, 82],
[43, 41, 84],
[44, 42, 85],
[44, 43, 87],
[45, 43, 89],
[46, 44, 90],
[47, 45, 92],
[47, 46, 94],
[48, 47, 95],
[49, 47, 97],
[49, 48, 98],
[50, 49, 100],
[51, 50, 102],
[51, 50, 103],
[52, 51, 105],
[53, 52, 107],
[53, 53, 108],
[54, 53, 110],
[54, 54, 112],
[55, 55, 113],
[56, 56, 115],
[56, 57, 117],
[57, 57, 118],
[57, 58, 120],
[58, 59, 122],
[58, 60, 123],
[58, 61, 125],
[59, 62, 127],
[59, 62, 128],
[60, 63, 130],
[60, 64, 132],
[60, 65, 133],
[61, 66, 135],
[61, 67, 137],
[61, 68, 138],
[62, 69, 140],
[62, 70, 141],
[62, 71, 143],
[62, 72, 144],
[62, 73, 146],
[62, 73, 147],
[63, 74, 149],
[63, 75, 150],
[63, 76, 151],
[63, 78, 153],
[63, 79, 154],
[63, 80, 155],
[63, 81, 157],
[63, 82, 158],
[63, 83, 159],
[63, 84, 160],
[63, 85, 161],
[63, 86, 162],
[63, 87, 163],
[63, 88, 164],
[63, 89, 165],
[62, 90, 166],
[62, 92, 167],
[62, 93, 168],
[62, 94, 169],
[62, 95, 170],
[62, 96, 171],
[62, 97, 171],
[62, 98, 172],
[62, 99, 173],
[62, 101, 173],
[62, 102, 174],
[62, 103, 175],
[62, 104, 175],
[62, 105, 176],
[62, 106, 176],
[63, 107, 177],
[63, 108, 178],
[63, 110, 178],
[63, 111, 179],
[63, 112, 179],
[63, 113, 180],
[64, 114, 180],
[64, 115, 180],
[64, 116, 181],
[64, 117, 181],
[65, 118, 182],
[65, 120, 182],
[66, 121, 183],
[66, 122, 183],
[66, 123, 183],
[67, 124, 184],
[67, 125, 184],
[68, 126, 185],
[68, 127, 185],
[69, 128, 185],
[69, 129, 186],
[70, 130, 186],
[70, 132, 187],
[71, 133, 187],
[71, 134, 187],
[72, 135, 188],
[73, 136, 188],
[73, 137, 188],
[74, 138, 189],
[75, 139, 189],
[75, 140, 189],
[76, 141, 190],
[77, 142, 190],
[78, 143, 191],
[78, 144, 191],
[79, 145, 191],
[80, 146, 192],
[81, 148, 192],
[81, 149, 192],
[82, 150, 193],
[83, 151, 193],
[84, 152, 194],
[85, 153, 194],
[85, 154, 194],
[86, 155, 195],
[87, 156, 195],
[88, 157, 195],
[89, 158, 196],
[90, 159, 196],
[91, 160, 197],
[92, 161, 197],
[93, 162, 197],
[94, 163, 198],
[95, 164, 198],
[95, 166, 199],
[96, 167, 199],
[97, 168, 199],
[98, 169, 200],
[99, 170, 200],
[100, 171, 201],
[101, 172, 201],
[103, 173, 201],
[104, 174, 202],
[105, 175, 202],
[106, 176, 203],
[107, 177, 203],
[108, 178, 203],
[109, 179, 204],
[110, 180, 204],
[111, 181, 205],
[113, 182, 205],
[114, 184, 206],
[115, 185, 206],
[116, 186, 206],
[117, 187, 207],
[119, 188, 207],
[120, 189, 208],
[121, 190, 208],
[123, 191, 208],
[124, 192, 209],
[125, 193, 209],
[127, 194, 210],
[128, 195, 210],
[130, 196, 211],
[131, 197, 211],
[133, 198, 211],
[134, 199, 212],
[136, 200, 212],
[137, 201, 213],
[139, 202, 213],
[140, 203, 214],
[142, 204, 214],
[144, 205, 215],
[146, 206, 215],
[147, 207, 216],
[149, 208, 216],
[151, 209, 217],
[153, 210, 217],
[154, 211, 218],
[156, 212, 218],
[158, 213, 219],
[160, 214, 220],
[162, 214, 220],
[164, 215, 221],
[166, 216, 222],
[168, 217, 222],
[169, 218, 223],
[171, 219, 224],
[173, 220, 224],
[175, 221, 225],
[177, 222, 226],
[179, 223, 227],
[181, 224, 227],
[183, 225, 228],
[185, 226, 229],
[186, 227, 230],
[188, 228, 231],
[190, 229, 231],
[192, 230, 232],
[194, 230, 233],
[196, 231, 234],
[198, 232, 235],
[200, 233, 236],
[201, 234, 237],
[203, 235, 238],
[205, 236, 239],
[207, 237, 239],
[209, 238, 240],
[211, 239, 241],
[213, 240, 242],
[214, 241, 243],
[216, 242, 244],
[218, 243, 245],
[220, 244, 246],
[222, 245, 247],
[224, 246, 248],
[225, 247, 249],
[227, 249, 250],
[229, 250, 251],
[231, 251, 251],
[232, 252, 252],
[234, 253, 253],
]
_MATTER = [
[254, 237, 176],
[253, 236, 175],
[253, 234, 173],
[253, 233, 172],
[253, 232, 171],
[253, 230, 169],
[253, 229, 168],
[253, 227, 167],
[253, 226, 165],
[252, 225, 164],
[252, 223, 163],
[252, 222, 161],
[252, 220, 160],
[252, 219, 159],
[252, 218, 157],
[252, 216, 156],
[251, 215, 155],
[251, 213, 154],
[251, 212, 152],
[251, 211, 151],
[251, 209, 150],
[251, 208, 148],
[251, 207, 147],
[250, 205, 146],
[250, 204, 145],
[250, 202, 144],
[250, 201, 142],
[250, 200, 141],
[250, 198, 140],
[250, 197, 139],
[249, 195, 138],
[249, 194, 136],
[249, 193, 135],
[249, 191, 134],
[249, 190, 133],
[249, 189, 132],
[248, 187, 131],
[248, 186, 130],
[248, 184, 128],
[248, 183, 127],
[248, 182, 126],
[247, 180, 125],
[247, 179, 124],
[247, 178, 123],
[247, 176, 122],
[247, 175, 121],
[246, 174, 120],
[246, 172, 119],
[246, 171, 118],
[246, 169, 117],
[245, 168, 116],
[245, 167, 115],
[245, 165, 114],
[245, 164, 113],
[245, 163, 112],
[244, 161, 111],
[244, 160, 110],
[244, 159, 109],
[244, 157, 108],
[243, 156, 107],
[243, 154, 106],
[243, 153, 105],
[242, 152, 104],
[242, 150, 104],
[242, 149, 103],
[242, 148, 102],
[241, 146, 101],
[241, 145, 100],
[241, 143, 99],
[240, 142, 99],
[240, 141, 98],
[240, 139, 97],
[239, 138, 96],
[239, 137, 96],
[239, 135, 95],
[238, 134, 94],
[238, 133, 94],
[238, 131, 93],
[237, 130, 92],
[237, 129, 92],
[237, 127, 91],
[236, 126, 90],
[236, 124, 90],
[236, 123, 89],
[235, 122, 89],
[235, 120, 88],
[234, 119, 88],
[234, 118, 87],
[233, 116, 87],
[233, 115, 86],
[233, 114, 86],
[232, 112, 86],
[232, 111, 85],
[231, 110, 85],
[231, 108, 85],
[230, 107, 84],
[230, 106, 84],
[229, 104, 84],
[229, 103, 84],
[228, 102, 83],
[227, 100, 83],
[227, 99, 83],
[226, 98, 83],
[226, 96, 83],
[225, 95, 83],
[224, 94, 83],
[224, 93, 83],
[223, 91, 83],
[223, 90, 83],
[222, 89, 83],
[221, 88, 83],
[220, 86, 83],
[220, 85, 83],
[219, 84, 83],
[218, 83, 83],
[217, 81, 83],
[217, 80, 83],
[216, 79, 84],
[215, 78, 84],
[214, 77, 84],
[213, 76, 84],
[213, 75, 84],
[212, 74, 85],
[211, 72, 85],
[210, 71, 85],
[209, 70, 86],
[208, 69, 86],
[207, 68, 86],
[206, 67, 86],
[205, 66, 87],
[204, 65, 87],
[203, 64, 87],
[202, 63, 88],
[201, 62, 88],
[200, 61, 88],
[199, 61, 89],
[198, 60, 89],
[197, 59, 89],
[196, 58, 90],
[195, 57, 90],
[194, 56, 90],
[193, 55, 91],
[192, 54, 91],
[191, 54, 91],
[190, 53, 92],
[189, 52, 92],
[187, 51, 92],
[186, 50, 93],
[185, 50, 93],
[184, 49, 93],
[183, 48, 94],
[182, 47, 94],
[181, 47, 94],
[179, 46, 95],
[178, 45, 95],
[177, 45, 95],
[176, 44, 95],
[175, 43, 96],
[174, 43, 96],
[172, 42, 96],
[171, 41, 96],
[170, 41, 97],
[169, 40, 97],
[167, 40, 97],
[166, 39, 97],
[165, 38, 98],
[164, 38, 98],
[163, 37, 98],
[161, 37, 98],
[160, 36, 98],
[159, 36, 98],
[158, 35, 99],
[156, 35, 99],
[155, 34, 99],
[154, 34, 99],
[153, 34, 99],
[151, 33, 99],
[150, 33, 99],
[149, 32, 99],
[147, 32, 99],
[146, 31, 99],
[145, 31, 99],
[144, 31, 99],
[142, 30, 99],
[141, 30, 99],
[140, 30, 99],
[138, 29, 99],
[137, 29, 99],
[136, 29, 99],
[134, 29, 99],
[133, 28, 99],
[132, 28, 99],
[130, 28, 99],
[129, 28, 99],
[128, 27, 98],
[126, 27, 98],
[125, 27, 98],
[124, 27, 98],
[122, 27, 98],
[121, 26, 97],
[120, 26, 97],
[118, 26, 97],
[117, 26, 97],
[116, 26, 96],
[114, 26, 96],
[113, 25, 96],
[112, 25, 95],
[110, 25, 95],
[109, 25, 94],
[107, 25, 94],
[106, 25, 94],
[105, 25, 93],
[103, 25, 93],
[102, 24, 92],
[101, 24, 92],
[99, 24, 91],
[98, 24, 91],
[97, 24, 90],
[95, 24, 90],
[94, 24, 89],
[93, 23, 88],
[91, 23, 88],
[90, 23, 87],
[89, 23, 87],
[87, 23, 86],
[86, 23, 85],
[85, 23, 85],
[83, 22, 84],
[82, 22, 83],
[81, 22, 83],
[79, 22, 82],
[78, 22, 81],
[77, 21, 81],
[75, 21, 80],
[74, 21, 79],
[73, 21, 78],
[71, 21, 78],
[70, 20, 77],
[69, 20, 76],
[68, 20, 75],
[66, 20, 75],
[65, 19, 74],
[64, 19, 73],
[62, 19, 72],
[61, 19, 71],
[60, 18, 71],
[59, 18, 70],
[57, 18, 69],
[56, 17, 68],
[55, 17, 67],
[54, 17, 66],
[52, 17, 65],
[51, 16, 65],
[50, 16, 64],
[48, 15, 63],
[47, 15, 62],
]
_OXY = [
[64, 5, 5],
[65, 5, 5],
[67, 6, 6],
[68, 6, 6],
[71, 6, 7],
[72, 6, 7],
[73, 6, 7],
[75, 6, 8],
[77, 7, 8],
[79, 7, 9],
[80, 7, 9],
[81, 7, 9],
[84, 7, 10],
[85, 7, 11],
[87, 7, 11],
[88, 7, 11],
[91, 7, 12],
[92, 7, 12],
[93, 7, 12],
[95, 7, 13],
[98, 7, 13],
[99, 7, 14],
[100, 7, 14],
[102, 7, 14],
[104, 7, 14],
[106, 6, 15],
[107, 6, 15],
[109, 6, 15],
[111, 6, 15],
[113, 6, 15],
[114, 6, 15],
[115, 5, 15],
[118, 5, 15],
[120, 5, 15],
[121, 5, 15],
[122, 5, 15],
[125, 5, 14],
[126, 5, 14],
[127, 6, 13],
[129, 6, 13],
[131, 8, 12],
[132, 9, 12],
[133, 10, 11],
[134, 12, 11],
[136, 14, 10],
[137, 16, 10],
[138, 17, 9],
[139, 19, 9],
[141, 21, 8],
[142, 23, 8],
[143, 24, 8],
[80, 79, 79],
[80, 80, 80],
[81, 81, 80],
[82, 81, 81],
[83, 83, 83],
[84, 84, 83],
[85, 84, 84],
[86, 85, 85],
[87, 87, 86],
[88, 87, 87],
[89, 88, 88],
[89, 89, 88],
[91, 90, 90],
[92, 91, 91],
[92, 92, 91],
[93, 93, 92],
[95, 94, 94],
[95, 95, 94],
[96, 96, 95],
[97, 96, 96],
[98, 98, 97],
[99, 99, 98],
[100, 99, 99],
[101, 100, 100],
[102, 102, 101],
[103, 102, 102],
[104, 103, 103],
[104, 104, 103],
[106, 105, 105],
[107, 106, 106],
[107, 107, 106],
[108, 108, 107],
[110, 109, 109],
[111, 110, 110],
[111, 111, 110],
[112, 112, 111],
[114, 113, 113],
[114, 114, 113],
[115, 115, 114],
[116, 115, 115],
[118, 117, 116],
[118, 118, 117],
[119, 119, 118],
[120, 119, 119],
[121, 121, 120],
[122, 122, 121],
[123, 123, 122],
[124, 123, 123],
[125, 125, 124],
[126, 126, 125],
[127, 127, 126],
[129, 128, 127],
[129, 129, 128],
[130, 130, 129],
[131, 131, 130],
[133, 132, 131],
[133, 133, 132],
[134, 134, 133],
[135, 135, 134],
[137, 136, 135],
[137, 137, 136],
[138, 138, 137],
[139, 139, 138],
[141, 140, 140],
[141, 141, 140],
[142, 142, 141],
[143, 143, 142],
[145, 144, 144],
[146, 145, 144],
[146, 146, 145],
[147, 147, 146],
[149, 149, 148],
[150, 149, 149],
[151, 150, 149],
[151, 151, 150],
[153, 153, 152],
[154, 154, 153],
[155, 154, 154],
[156, 155, 154],
[157, 157, 156],
[158, 158, 157],
[159, 159, 158],
[160, 160, 159],
[162, 161, 160],
[163, 162, 161],
[163, 163, 162],
[164, 164, 163],
[166, 166, 165],
[167, 166, 166],
[168, 167, 167],
[169, 168, 167],
[170, 170, 169],
[171, 171, 170],
[172, 172, 171],
[173, 173, 172],
[175, 174, 174],
[176, 175, 174],
[177, 176, 175],
[177, 177, 176],
[179, 179, 178],
[180, 180, 179],
[181, 181, 180],
[183, 183, 182],
[184, 183, 183],
[185, 184, 183],
[186, 185, 184],
[187, 187, 186],
[188, 188, 187],
[189, 189, 188],
[190, 190, 189],
[192, 192, 191],
[193, 193, 192],
[194, 194, 193],
[195, 195, 194],
[197, 197, 195],
[198, 197, 196],
[199, 198, 197],
[200, 199, 198],
[202, 201, 200],
[203, 202, 201],
[204, 203, 202],
[204, 204, 203],
[206, 206, 205],
[207, 207, 206],
[208, 208, 207],
[209, 209, 208],
[211, 211, 210],
[212, 212, 211],
[213, 213, 212],
[214, 214, 213],
[216, 216, 215],
[217, 217, 216],
[218, 218, 217],
[219, 219, 218],
[221, 221, 220],
[222, 222, 221],
[223, 223, 222],
[224, 224, 223],
[226, 226, 225],
[227, 227, 226],
[228, 228, 227],
[230, 229, 228],
[232, 231, 230],
[233, 232, 231],
[234, 233, 232],
[235, 235, 233],
[237, 237, 235],
[238, 238, 236],
[239, 239, 238],
[240, 240, 239],
[242, 242, 241],
[243, 243, 242],
[244, 244, 243],
[248, 254, 105],
[246, 253, 103],
[245, 252, 100],
[244, 252, 98],
[241, 250, 93],
[240, 249, 90],
[239, 248, 87],
[238, 247, 84],
[236, 245, 78],
[235, 243, 75],
[235, 242, 72],
[234, 241, 69],
[234, 238, 64],
[234, 237, 62],
[234, 235, 61],
[234, 234, 59],
[234, 231, 56],
[233, 230, 55],
[233, 228, 54],
[233, 227, 52],
[233, 224, 50],
[232, 223, 49],
[232, 221, 48],
[232, 220, 48],
[232, 217, 46],
[231, 216, 45],
[231, 215, 44],
[231, 213, 43],
[230, 211, 42],
[230, 209, 41],
[230, 208, 40],
[229, 207, 40],
[229, 204, 38],
[229, 203, 38],
[228, 201, 37],
[228, 200, 37],
[227, 198, 35],
[227, 196, 35],
[227, 195, 34],
[226, 194, 33],
[226, 191, 32],
[225, 190, 32],
[225, 189, 31],
[224, 187, 31],
[224, 185, 30],
[223, 184, 29],
[223, 182, 29],
[223, 181, 28],
[222, 179, 27],
[221, 177, 26],
[221, 176, 26],
[221, 175, 25],
]
_PHASE = [
[168, 120, 13],
[169, 119, 15],
[171, 118, 17],
[172, 117, 19],
[174, 116, 20],
[175, 115, 22],
[177, 114, 24],
[178, 113, 25],
[179, 112, 27],
[181, 111, 29],
[182, 110, 30],
[183, 109, 32],
[185, 108, 34],
[186, 107, 35],
[187, 106, 37],
[189, 105, 38],
[190, 104, 40],
[191, 103, 42],
[192, 102, 43],
[193, 101, 45],
[194, 100, 46],
[196, 98, 48],
[197, 97, 50],
[198, 96, 51],
[199, 95, 53],
[200, 94, 55],
[201, 93, 56],
[202, 92, 58],
[203, 90, 60],
[204, 89, 62],
[205, 88, 63],
[206, 87, 65],
[207, 86, 67],
[208, 84, 69],
[208, 83, 71],
[209, 82, 73],
[210, 81, 75],
[211, 79, 77],
[212, 78, 79],
[213, 77, 81],
[213, 75, 83],
[214, 74, 85],
[215, 73, 87],
[216, 71, 90],
[216, 70, 92],
[217, 69, 94],
[217, 67, 97],
[218, 66, 99],
[219, 64, 102],
[219, 63, 104],
[220, 61, 107],
[220, 60, 109],
[221, 58, 112],
[221, 57, 115],
[221, 56, 118],
[222, 54, 120],
[222, 53, 123],
[222, 51, 126],
[222, 50, 129],
[223, 49, 132],
[223, 47, 135],
[223, 46, 138],
[223, 45, 141],
[223, 43, 144],
[223, 42, 147],
[222, 41, 151],
[222, 40, 154],
[222, 40, 157],
[222, 39, 160],
[221, 38, 163],
[221, 38, 166],
[220, 37, 169],
[220, 37, 173],
[219, 37, 176],
[218, 37, 179],
[218, 38, 182],
[217, 38, 185],
[216, 39, 188],
[215, 39, 190],
[214, 40, 193],
[213, 41, 196],
[212, 42, 199],
[211, 43, 201],
[210, 45, 204],
[209, 46, 206],
[208, 47, 208],
[207, 49, 211],
[205, 50, 213],
[204, 52, 215],
[203, 53, 217],
[201, 55, 219],
[200, 57, 221],
[198, 58, 223],
[197, 60, 225],
[195, 62, 226],
[194, 63, 228],
[192, 65, 229],
[190, 67, 231],
[189, 69, 232],
[187, 70, 233],
[185, 72, 235],
[184, 74, 236],
[182, 75, 237],
[180, 77, 238],
[178, 79, 239],
[176, 80, 239],
[174, 82, 240],
[172, 84, 241],
[170, 85, 241],
[169, 87, 242],
[167, 89, 243],
[164, 90, 243],
[162, 92, 243],
[160, 93, 244],
[158, 95, 244],
[156, 96, 244],
[154, 98, 244],
[152, 99, 244],
[149, 101, 244],
[147, 102, 244],
[145, 104, 244],
[143, 105, 244],
[140, 107, 243],
[138, 108, 243],
[135, 109, 243],
[133, 111, 242],
[130, 112, 241],
[128, 113, 241],
[125, 115, 240],
[123, 116, 239],
[120, 117, 239],
[118, 119, 238],
[115, 120, 237],
[112, 121, 236],
[110, 122, 235],
[107, 123, 233],
[104, 124, 232],
[102, 126, 231],
[99, 127, 230],
[96, 128, 228],
[93, 129, 227],
[90, 130, 225],
[88, 131, 223],
[85, 132, 222],
[82, 133, 220],
[79, 134, 218],
[77, 135, 216],
[74, 135, 215],
[71, 136, 213],
[69, 137, 211],
[66, 138, 209],
[64, 138, 207],
[61, 139, 205],
[59, 140, 203],
[56, 140, 201],
[54, 141, 199],
[52, 142, 196],
[50, 142, 194],
[48, 143, 192],
[46, 143, 190],
[44, 144, 188],
[42, 144, 186],
[40, 145, 184],
[39, 145, 182],
[37, 145, 180],
[36, 146, 178],
[35, 146, 176],
[33, 146, 174],
[32, 147, 172],
[31, 147, 170],
[30, 147, 168],
[29, 148, 166],
[28, 148, 164],
[27, 148, 162],
[26, 148, 160],
[25, 149, 158],
[25, 149, 156],
[24, 149, 154],
[23, 149, 152],
[22, 150, 150],
[21, 150, 148],
[20, 150, 146],
[20, 150, 144],
[19, 151, 142],
[18, 151, 140],
[17, 151, 138],
[16, 151, 136],
[15, 151, 134],
[14, 152, 132],
[13, 152, 130],
[13, 152, 128],
[12, 152, 126],
[12, 152, 124],
[11, 153, 121],
[11, 153, 119],
[11, 153, 117],
[12, 153, 115],
[13, 153, 112],
[14, 153, 110],
[15, 154, 107],
[17, 154, 105],
[19, 154, 102],
[21, 154, 99],
[23, 154, 97],
[25, 154, 94],
[28, 154, 91],
[31, 154, 88],
[33, 154, 85],
[36, 154, 82],
[39, 154, 79],
[43, 154, 76],
[46, 154, 73],
[49, 153, 70],
[53, 153, 67],
[56, 153, 64],
[60, 153, 60],
[64, 152, 57],
[67, 152, 54],
[71, 151, 50],
[75, 151, 47],
[79, 150, 44],
[83, 150, 41],
[86, 149, 38],
[90, 148, 35],
[94, 148, 32],
[97, 147, 30],
[101, 146, 27],
[104, 145, 25],
[107, 144, 23],
[111, 144, 22],
[114, 143, 20],
[116, 142, 19],
[119, 141, 18],
[122, 140, 17],
[125, 139, 16],
[127, 139, 15],
[130, 138, 15],
[132, 137, 14],
[134, 136, 14],
[136, 135, 14],
[139, 134, 13],
[141, 133, 13],
[143, 132, 13],
[145, 131, 13],
[147, 131, 13],
[149, 130, 13],
[151, 129, 13],
[153, 128, 13],
[155, 127, 13],
[157, 126, 13],
[159, 125, 13],
[161, 124, 13],
[162, 123, 13],
[164, 122, 13],
[166, 121, 13],
[168, 120, 13],
]
_SOLAR = [
[51, 20, 24],
[53, 20, 24],
[54, 21, 25],
[55, 21, 25],
[56, 21, 26],
[58, 22, 26],
[59, 22, 27],
[60, 23, 27],
[61, 23, 28],
[62, 24, 28],
[64, 24, 29],
[65, 24, 29],
[66, 25, 29],
[67, 25, 30],
[69, 26, 30],
[70, 26, 31],
[71, 26, 31],
[72, 27, 31],
[74, 27, 32],
[75, 27, 32],
[76, 28, 32],
[77, 28, 33],
[79, 28, 33],
[80, 29, 33],
[81, 29, 34],
[82, 30, 34],
[84, 30, 34],
[85, 30, 34],
[86, 31, 35],
[87, 31, 35],
[89, 31, 35],
[90, 32, 35],
[91, 32, 35],
[92, 32, 36],
[94, 33, 36],
[95, 33, 36],
[96, 33, 36],
[97, 34, 36],
[99, 34, 36],
[100, 34, 36],
[101, 35, 36],
[102, 35, 37],
[104, 35, 37],
[105, 36, 37],
[106, 36, 37],
[107, 36, 37],
[109, 37, 37],
[110, 37, 37],
[111, 37, 37],
[112, 38, 37],
[114, 38, 37],
[115, 39, 36],
[116, 39, 36],
[117, 39, 36],
[119, 40, 36],
[120, 40, 36],
[121, 41, 36],
[122, 41, 36],
[123, 42, 36],
[124, 42, 35],
[126, 43, 35],
[127, 43, 35],
[128, 44, 35],
[129, 44, 34],
[130, 45, 34],
[131, 45, 34],
[132, 46, 34],
[133, 46, 33],
[135, 47, 33],
[136, 48, 33],
[137, 48, 33],
[138, 49, 32],
[139, 49, 32],
[140, 50, 32],
[141, 51, 31],
[142, 52, 31],
[143, 52, 31],
[144, 53, 30],
[145, 54, 30],
[146, 54, 30],
[147, 55, 29],
[147, 56, 29],
[148, 57, 29],
[149, 58, 29],
[150, 58, 28],
[151, 59, 28],
[152, 60, 28],
[153, 61, 27],
[154, 62, 27],
[154, 63, 27],
[155, 64, 26],
[156, 64, 26],
[157, 65, 26],
[158, 66, 26],
[159, 67, 25],
[159, 68, 25],
[160, 69, 25],
[161, 70, 25],
[162, 71, 24],
[163, 72, 24],
[163, 73, 24],
[164, 74, 24],
[165, 74, 23],
[166, 75, 23],
[166, 76, 23],
[167, 77, 23],
[168, 78, 22],
[168, 79, 22],
[169, 80, 22],
[170, 81, 22],
[171, 82, 22],
[171, 83, 21],
[172, 84, 21],
[173, 85, 21],
[173, 86, 21],
[174, 87, 21],
[175, 88, 20],
[175, 89, 20],
[176, 90, 20],
[177, 91, 20],
[177, 92, 20],
[178, 93, 20],
[178, 94, 20],
[179, 95, 20],
[180, 96, 19],
[180, 97, 19],
[181, 98, 19],
[182, 99, 19],
[182, 100, 19],
[183, 101, 19],
[183, 102, 19],
[184, 104, 19],
[184, 105, 19],
[185, 106, 19],
[186, 107, 19],
[186, 108, 19],
[187, 109, 19],
[187, 110, 19],
[188, 111, 19],
[188, 112, 19],
[189, 113, 19],
[190, 114, 19],
[190, 115, 19],
[191, 116, 19],
[191, 117, 19],
[192, 118, 19],
[192, 119, 20],
[193, 121, 20],
[193, 122, 20],
[194, 123, 20],
[194, 124, 20],
[195, 125, 20],
[195, 126, 21],
[196, 127, 21],
[196, 128, 21],
[197, 129, 21],
[197, 130, 21],
[198, 132, 22],
[198, 133, 22],
[199, 134, 22],
[199, 135, 22],
[199, 136, 23],
[200, 137, 23],
[200, 138, 23],
[201, 139, 24],
[201, 140, 24],
[202, 142, 24],
[202, 143, 25],
[203, 144, 25],
[203, 145, 25],
[203, 146, 26],
[204, 147, 26],
[204, 148, 26],
[205, 150, 27],
[205, 151, 27],
[206, 152, 28],
[206, 153, 28],
[206, 154, 28],
[207, 155, 29],
[207, 156, 29],
[208, 158, 30],
[208, 159, 30],
[208, 160, 31],
[209, 161, 31],
[209, 162, 32],
[209, 164, 32],
[210, 165, 32],
[210, 166, 33],
[211, 167, 33],
[211, 168, 34],
[211, 169, 34],
[212, 171, 35],
[212, 172, 36],
[212, 173, 36],
[213, 174, 37],
[213, 175, 37],
[213, 177, 38],
[214, 178, 38],
[214, 179, 39],
[214, 180, 39],
[215, 181, 40],
[215, 183, 40],
[215, 184, 41],
[215, 185, 42],
[216, 186, 42],
[216, 188, 43],
[216, 189, 43],
[217, 190, 44],
[217, 191, 44],
[217, 193, 45],
[217, 194, 46],
[218, 195, 46],
[218, 196, 47],
[218, 198, 47],
[218, 199, 48],
[219, 200, 49],
[219, 201, 49],
[219, 203, 50],
[219, 204, 50],
[220, 205, 51],
[220, 206, 52],
[220, 208, 52],
[220, 209, 53],
[221, 210, 54],
[221, 212, 54],
[221, 213, 55],
[221, 214, 55],
[221, 215, 56],
[222, 217, 57],
[222, 218, 57],
[222, 219, 58],
[222, 221, 59],
[222, 222, 59],
[222, 223, 60],
[223, 225, 61],
[223, 226, 61],
[223, 227, 62],
[223, 229, 63],
[223, 230, 63],
[223, 231, 64],
[223, 233, 65],
[224, 234, 65],
[224, 235, 66],
[224, 237, 67],
[224, 238, 67],
[224, 240, 68],
[224, 241, 69],
[224, 242, 69],
[224, 244, 70],
[224, 245, 71],
[224, 246, 71],
[224, 248, 72],
[224, 249, 73],
[224, 251, 73],
[225, 252, 74],
[225, 253, 75],
]
_SPEED = [
[255, 253, 205],
[254, 252, 203],
[254, 250, 201],
[253, 249, 199],
[252, 248, 197],
[252, 247, 194],
[251, 246, 192],
[250, 244, 190],
[249, 243, 188],
[249, 242, 186],
[248, 241, 184],
[247, 240, 182],
[247, 238, 180],
[246, 237, 177],
[246, 236, 175],
[245, 235, 173],
[244, 234, 171],
[243, 233, 169],
[243, 231, 167],
[242, 230, 165],
[241, 229, 162],
[241, 228, 160],
[240, 227, 158],
[239, 226, 156],
[239, 225, 154],
[238, 223, 152],
[237, 222, 150],
[237, 221, 147],
[236, 220, 145],
[235, 219, 143],
[234, 218, 141],
[234, 217, 139],
[233, 216, 137],
[232, 215, 134],
[231, 214, 132],
[231, 213, 130],
[230, 212, 128],
[229, 211, 126],
[228, 210, 123],
[227, 208, 121],
[227, 207, 119],
[226, 206, 117],
[225, 205, 115],
[224, 205, 113],
[223, 204, 110],
[222, 203, 108],
[221, 202, 106],
[220, 201, 104],
[219, 200, 102],
[218, 199, 100],
[217, 198, 97],
[216, 197, 95],
[215, 196, 93],
[214, 195, 91],
[213, 194, 89],
[212, 193, 87],
[211, 193, 85],
[210, 192, 83],
[209, 191, 81],
[208, 190, 79],
[206, 189, 76],
[205, 189, 74],
[204, 188, 72],
[203, 187, 70],
[201, 186, 69],
[200, 185, 67],
[199, 185, 65],
[197, 184, 63],
[196, 183, 61],
[195, 183, 59],
[193, 182, 57],
[192, 181, 55],
[190, 180, 54],
[189, 180, 52],
[187, 179, 50],
[186, 178, 48],
[184, 178, 47],
[183, 177, 45],
[181, 176, 43],
[180, 176, 42],
[178, 175, 40],
[177, 174, 39],
[175, 174, 37],
[173, 173, 35],
[172, 173, 34],
[170, 172, 32],
[169, 171, 31],
[167, 171, 30],
[165, 170, 28],
[164, 169, 27],
[162, 169, 25],
[160, 168, 24],
[159, 168, 23],
[157, 167, 21],
[155, 166, 20],
[154, 166, 19],
[152, 165, 18],
[150, 165, 16],
[149, 164, 15],
[147, 163, 14],
[145, 163, 13],
[143, 162, 12],
[142, 162, 11],
[140, 161, 10],
[138, 160, 9],
[136, 160, 8],
[135, 159, 8],
[133, 159, 7],
[131, 158, 7],
[129, 157, 6],
[128, 157, 6],
[126, 156, 6],
[124, 156, 6],
[122, 155, 6],
[121, 154, 6],
[119, 154, 6],
[117, 153, 6],
[115, 153, 6],
[113, 152, 6],
[112, 151, 7],
[110, 151, 7],
[108, 150, 7],
[106, 149, 8],
[104, 149, 9],
[102, 148, 9],
[101, 148, 10],
[99, 147, 11],
[97, 146, 11],
[95, 146, 12],
[93, 145, 13],
[92, 144, 14],
[90, 144, 15],
[88, 143, 15],
[86, 142, 16],
[84, 142, 17],
[82, 141, 18],
[81, 140, 18],
[79, 140, 19],
[77, 139, 20],
[75, 138, 21],
[73, 138, 22],
[72, 137, 22],
[70, 136, 23],
[68, 136, 24],
[66, 135, 25],
[64, 134, 25],
[63, 133, 26],
[61, 133, 27],
[59, 132, 28],
[57, 131, 28],
[56, 131, 29],
[54, 130, 30],
[52, 129, 30],
[50, 128, 31],
[49, 127, 32],
[47, 127, 32],
[45, 126, 33],
[44, 125, 33],
[42, 124, 34],
[40, 124, 35],
[39, 123, 35],
[37, 122, 36],
[36, 121, 36],
[34, 120, 37],
[33, 120, 37],
[31, 119, 38],
[30, 118, 38],
[28, 117, 39],
[27, 116, 39],
[26, 115, 39],
[24, 115, 40],
[23, 114, 40],
[22, 113, 41],
[21, 112, 41],
[19, 111, 41],
[18, 110, 42],
[17, 109, 42],
[16, 108, 42],
[15, 108, 43],
[15, 107, 43],
[14, 106, 43],
[13, 105, 43],
[13, 104, 43],
[12, 103, 44],
[12, 102, 44],
[11, 101, 44],
[11, 100, 44],
[11, 99, 44],
[11, 99, 44],
[11, 98, 45],
[11, 97, 45],
[11, 96, 45],
[11, 95, 45],
[11, 94, 45],
[12, 93, 45],
[12, 92, 45],
[12, 91, 45],
[13, 90, 45],
[13, 89, 45],
[14, 88, 45],
[14, 87, 45],
[15, 86, 44],
[15, 85, 44],
[16, 84, 44],
[16, 84, 44],
[16, 83, 44],
[17, 82, 44],
[17, 81, 44],
[18, 80, 43],
[18, 79, 43],
[19, 78, 43],
[19, 77, 43],
[20, 76, 42],
[20, 75, 42],
[20, 74, 42],
[21, 73, 42],
[21, 72, 41],
[22, 71, 41],
[22, 70, 41],
[22, 69, 40],
[23, 68, 40],
[23, 67, 39],
[23, 66, 39],
[23, 65, 39],
[24, 64, 38],
[24, 63, 38],
[24, 63, 37],
[24, 62, 37],
[25, 61, 36],
[25, 60, 36],
[25, 59, 35],
[25, 58, 35],
[25, 57, 34],
[25, 56, 34],
[25, 55, 33],
[25, 54, 33],
[25, 53, 32],
[25, 52, 31],
[25, 51, 31],
[25, 50, 30],
[25, 49, 30],
[25, 48, 29],
[25, 47, 28],
[25, 46, 28],
[25, 45, 27],
[25, 44, 26],
[25, 44, 25],
[25, 43, 25],
[25, 42, 24],
[24, 41, 23],
[24, 40, 23],
[24, 39, 22],
[24, 38, 21],
[24, 37, 20],
[23, 36, 19],
[23, 35, 19],
]
_TEMPO = [
[255, 246, 244],
[253, 245, 243],
[252, 244, 241],
[251, 243, 240],
[249, 242, 238],
[248, 241, 237],
[247, 240, 235],
[245, 239, 234],
[244, 238, 232],
[242, 237, 231],
[241, 236, 229],
[240, 235, 228],
[238, 234, 226],
[237, 234, 225],
[235, 233, 223],
[234, 232, 222],
[233, 231, 221],
[231, 230, 219],
[230, 229, 218],
[228, 228, 216],
[227, 227, 215],
[226, 226, 214],
[224, 226, 212],
[223, 225, 211],
[221, 224, 209],
[220, 223, 208],
[219, 222, 207],
[217, 221, 205],
[216, 221, 204],
[214, 220, 203],
[213, 219, 201],
[211, 218, 200],
[210, 217, 199],
[209, 216, 197],
[207, 216, 196],
[206, 215, 195],
[204, 214, 193],
[203, 213, 192],
[201, 212, 191],
[200, 212, 190],
[198, 211, 188],
[197, 210, 187],
[195, 209, 186],
[194, 209, 185],
[192, 208, 183],
[191, 207, 182],
[189, 206, 181],
[188, 206, 180],
[186, 205, 179],
[185, 204, 178],
[183, 203, 176],
[182, 203, 175],
[180, 202, 174],
[179, 201, 173],
[177, 200, 172],
[176, 200, 171],
[174, 199, 170],
[172, 198, 169],
[171, 197, 168],
[169, 197, 166],
[168, 196, 165],
[166, 195, 164],
[164, 195, 163],
[163, 194, 162],
[161, 193, 161],
[160, 192, 160],
[158, 192, 159],
[156, 191, 159],
[155, 190, 158],
[153, 190, 157],
[151, 189, 156],
[150, 188, 155],
[148, 188, 154],
[146, 187, 153],
[145, 186, 152],
[143, 186, 151],
[141, 185, 151],
[139, 184, 150],
[138, 183, 149],
[136, 183, 148],
[134, 182, 147],
[133, 181, 147],
[131, 181, 146],
[129, 180, 145],
[127, 179, 144],
[125, 179, 144],
[124, 178, 143],
[122, 177, 142],
[120, 177, 142],
[118, 176, 141],
[116, 175, 141],
[114, 175, 140],
[113, 174, 139],
[111, 173, 139],
[109, 173, 138],
[107, 172, 138],
[105, 171, 137],
[103, 171, 137],
[101, 170, 136],
[99, 169, 136],
[97, 169, 135],
[95, 168, 135],
[93, 167, 134],
[91, 166, 134],
[89, 166, 133],
[87, 165, 133],
[86, 164, 133],
[84, 164, 132],
[82, 163, 132],
[80, 162, 132],
[78, 161, 131],
[75, 161, 131],
[73, 160, 131],
[71, 159, 130],
[69, 159, 130],
[67, 158, 130],
[65, 157, 130],
[63, 156, 129],
[61, 156, 129],
[59, 155, 129],
[58, 154, 129],
[56, 153, 129],
[54, 152, 128],
[52, 152, 128],
[50, 151, 128],
[48, 150, 128],
[46, 149, 128],
[44, 148, 127],
[42, 147, 127],
[41, 147, 127],
[39, 146, 127],
[37, 145, 127],
[36, 144, 127],
[34, 143, 126],
[33, 142, 126],
[31, 141, 126],
[30, 141, 126],
[28, 140, 126],
[27, 139, 125],
[26, 138, 125],
[25, 137, 125],
[23, 136, 125],
[22, 135, 124],
[22, 134, 124],
[21, 133, 124],
[20, 132, 124],
[19, 132, 123],
[19, 131, 123],
[18, 130, 123],
[18, 129, 123],
[17, 128, 122],
[17, 127, 122],
[17, 126, 122],
[17, 125, 121],
[17, 124, 121],
[17, 123, 121],
[17, 122, 120],
[17, 121, 120],
[17, 120, 120],
[17, 119, 119],
[17, 118, 119],
[18, 118, 118],
[18, 117, 118],
[18, 116, 118],
[19, 115, 117],
[19, 114, 117],
[19, 113, 116],
[20, 112, 116],
[20, 111, 115],
[20, 110, 115],
[21, 109, 115],
[21, 108, 114],
[22, 107, 114],
[22, 106, 113],
[22, 105, 113],
[23, 104, 112],
[23, 103, 112],
[23, 102, 111],
[24, 101, 111],
[24, 101, 110],
[24, 100, 110],
[25, 99, 109],
[25, 98, 109],
[25, 97, 108],
[25, 96, 108],
[26, 95, 107],
[26, 94, 107],
[26, 93, 106],
[26, 92, 106],
[26, 91, 105],
[27, 90, 104],
[27, 89, 104],
[27, 88, 103],
[27, 88, 103],
[27, 87, 102],
[27, 86, 102],
[28, 85, 101],
[28, 84, 101],
[28, 83, 100],
[28, 82, 99],
[28, 81, 99],
[28, 80, 98],
[28, 79, 98],
[28, 78, 97],
[28, 77, 97],
[28, 76, 96],
[28, 76, 95],
[28, 75, 95],
[28, 74, 94],
[28, 73, 94],
[28, 72, 93],
[28, 71, 93],
[28, 70, 92],
[28, 69, 91],
[28, 68, 91],
[28, 67, 90],
[28, 66, 90],
[28, 66, 89],
[28, 65, 88],
[28, 64, 88],
[27, 63, 87],
[27, 62, 87],
[27, 61, 86],
[27, 60, 86],
[27, 59, 85],
[27, 58, 84],
[27, 57, 84],
[27, 56, 83],
[26, 55, 83],
[26, 54, 82],
[26, 54, 81],
[26, 53, 81],
[26, 52, 80],
[26, 51, 80],
[25, 50, 79],
[25, 49, 79],
[25, 48, 78],
[25, 47, 77],
[25, 46, 77],
[24, 45, 76],
[24, 44, 76],
[24, 43, 75],
[24, 42, 75],
[24, 41, 74],
[23, 40, 74],
[23, 39, 73],
[23, 38, 72],
[23, 37, 72],
[23, 36, 71],
[22, 35, 71],
[22, 34, 70],
[22, 33, 70],
[22, 32, 69],
[21, 31, 69],
[21, 30, 68],
[21, 29, 68],
]
_THERMAL = [
[4, 35, 51],
[4, 36, 53],
[4, 37, 55],
[4, 37, 57],
[5, 38, 59],
[5, 39, 61],
[5, 39, 63],
[5, 40, 65],
[5, 41, 67],
[6, 41, 69],
[6, 42, 71],
[6, 43, 73],
[7, 43, 75],
[7, 44, 77],
[7, 44, 80],
[8, 45, 82],
[8, 46, 84],
[9, 46, 86],
[9, 47, 89],
[10, 47, 91],
[11, 48, 93],
[12, 48, 96],
[12, 48, 98],
[13, 49, 101],
[14, 49, 103],
[15, 50, 106],
[16, 50, 108],
[18, 50, 111],
[19, 51, 114],
[20, 51, 116],
[22, 51, 119],
[23, 51, 122],
[25, 51, 124],
[26, 52, 127],
[28, 52, 130],
[30, 52, 132],
[31, 52, 135],
[33, 52, 138],
[35, 52, 140],
[37, 52, 143],
[39, 52, 145],
[42, 51, 147],
[44, 51, 149],
[46, 51, 151],
[48, 51, 153],
[51, 51, 155],
[53, 51, 156],
[55, 51, 157],
[57, 51, 158],
[60, 51, 159],
[62, 52, 159],
[64, 52, 159],
[66, 52, 160],
[68, 53, 160],
[70, 53, 160],
[71, 54, 160],
[73, 54, 159],
[75, 55, 159],
[77, 55, 159],
[78, 56, 158],
[80, 57, 158],
[82, 57, 157],
[83, 58, 157],
[85, 59, 157],
[86, 59, 156],
[88, 60, 156],
[89, 61, 155],
[91, 61, 155],
[92, 62, 154],
[94, 63, 154],
[95, 63, 153],
[96, 64, 153],
[98, 65, 152],
[99, 65, 152],
[101, 66, 151],
[102, 67, 151],
[103, 67, 150],
[105, 68, 150],
[106, 69, 149],
[108, 69, 149],
[109, 70, 148],
[110, 71, 148],
[112, 71, 148],
[113, 72, 147],
[114, 72, 147],
[116, 73, 146],
[117, 74, 146],
[118, 74, 146],
[120, 75, 145],
[121, 75, 145],
[122, 76, 145],
[124, 77, 144],
[125, 77, 144],
[126, 78, 144],
[128, 78, 143],
[129, 79, 143],
[131, 80, 143],
[132, 80, 142],
[133, 81, 142],
[135, 81, 142],
[136, 82, 141],
[137, 82, 141],
[139, 83, 141],
[140, 83, 140],
[142, 84, 140],
[143, 84, 140],
[144, 85, 139],
[146, 85, 139],
[147, 86, 139],
[149, 86, 138],
[150, 87, 138],
[151, 87, 138],
[153, 88, 137],
[154, 88, 137],
[156, 89, 137],
[157, 89, 136],
[159, 90, 136],
[160, 90, 135],
[162, 91, 135],
[163, 91, 134],
[165, 92, 134],
[166, 92, 134],
[168, 93, 133],
[169, 93, 132],
[171, 93, 132],
[172, 94, 131],
[174, 94, 131],
[175, 95, 130],
[177, 95, 130],
[178, 96, 129],
[180, 96, 128],
[181, 97, 128],
[183, 97, 127],
[184, 98, 126],
[186, 98, 126],
[187, 98, 125],
[189, 99, 124],
[190, 99, 123],
[192, 100, 123],
[193, 100, 122],
[195, 101, 121],
[196, 101, 120],
[198, 102, 119],
[199, 102, 118],
[201, 103, 117],
[202, 103, 116],
[204, 104, 115],
[205, 104, 114],
[206, 105, 113],
[208, 105, 112],
[209, 106, 111],
[211, 106, 110],
[212, 107, 109],
[214, 108, 108],
[215, 108, 107],
[216, 109, 106],
[218, 110, 105],
[219, 110, 104],
[220, 111, 102],
[222, 112, 101],
[223, 112, 100],
[224, 113, 99],
[225, 114, 98],
[227, 114, 96],
[228, 115, 95],
[229, 116, 94],
[230, 117, 93],
[231, 118, 91],
[232, 119, 90],
[234, 120, 89],
[235, 121, 88],
[236, 121, 86],
[237, 122, 85],
[238, 123, 84],
[238, 125, 83],
[239, 126, 82],
[240, 127, 80],
[241, 128, 79],
[242, 129, 78],
[243, 130, 77],
[243, 131, 76],
[244, 133, 75],
[245, 134, 74],
[245, 135, 73],
[246, 136, 72],
[246, 138, 71],
[247, 139, 70],
[247, 140, 69],
[248, 142, 68],
[248, 143, 67],
[249, 145, 67],
[249, 146, 66],
[249, 147, 65],
[250, 149, 65],
[250, 150, 64],
[250, 152, 63],
[251, 153, 63],
[251, 155, 62],
[251, 156, 62],
[251, 158, 62],
[251, 159, 61],
[251, 161, 61],
[252, 163, 61],
[252, 164, 61],
[252, 166, 60],
[252, 167, 60],
[252, 169, 60],
[252, 170, 60],
[252, 172, 60],
[252, 174, 60],
[252, 175, 60],
[252, 177, 60],
[251, 178, 61],
[251, 180, 61],
[251, 182, 61],
[251, 183, 61],
[251, 185, 62],
[251, 187, 62],
[251, 188, 62],
[250, 190, 63],
[250, 191, 63],
[250, 193, 64],
[250, 195, 64],
[249, 196, 65],
[249, 198, 65],
[249, 200, 66],
[248, 201, 67],
[248, 203, 67],
[248, 205, 68],
[247, 206, 69],
[247, 208, 69],
[247, 210, 70],
[246, 211, 71],
[246, 213, 71],
[245, 215, 72],
[245, 216, 73],
[244, 218, 74],
[244, 220, 75],
[243, 221, 75],
[243, 223, 76],
[242, 225, 77],
[242, 226, 78],
[241, 228, 79],
[241, 230, 80],
[240, 232, 81],
[239, 233, 81],
[239, 235, 82],
[238, 237, 83],
[237, 238, 84],
[237, 240, 85],
[236, 242, 86],
[235, 244, 87],
[234, 245, 88],
[234, 247, 89],
[233, 249, 90],
[232, 250, 91],
]
_TURBID = [
[233, 246, 171],
[232, 245, 170],
[232, 243, 168],
[231, 242, 167],
[230, 241, 165],
[230, 240, 164],
[229, 239, 162],
[229, 238, 161],
[228, 236, 159],
[228, 235, 158],
[227, 234, 156],
[227, 233, 155],
[226, 232, 154],
[226, 231, 152],
[225, 229, 151],
[224, 228, 149],
[224, 227, 148],
[223, 226, 146],
[223, 225, 145],
[222, 224, 143],
[222, 223, 142],
[221, 221, 141],
[221, 220, 139],
[220, 219, 138],
[220, 218, 136],
[219, 217, 135],
[219, 216, 134],
[218, 215, 132],
[218, 213, 131],
[217, 212, 130],
[217, 211, 128],
[217, 210, 127],
[216, 209, 126],
[216, 208, 124],
[215, 207, 123],
[215, 206, 122],
[214, 204, 120],
[214, 203, 119],
[213, 202, 118],
[213, 201, 116],
[212, 200, 115],
[212, 199, 114],
[211, 198, 113],
[211, 197, 111],
[211, 195, 110],
[210, 194, 109],
[210, 193, 108],
[209, 192, 107],
[209, 191, 105],
[208, 190, 104],
[208, 189, 103],
[207, 188, 102],
[207, 187, 101],
[207, 186, 100],
[206, 184, 98],
[206, 183, 97],
[205, 182, 96],
[205, 181, 95],
[204, 180, 94],
[204, 179, 93],
[203, 178, 92],
[203, 177, 91],
[202, 176, 90],
[202, 175, 89],
[202, 174, 88],
[201, 172, 87],
[201, 171, 86],
[200, 170, 85],
[200, 169, 84],
[199, 168, 83],
[199, 167, 82],
[198, 166, 81],
[198, 165, 81],
[197, 164, 80],
[197, 163, 79],
[196, 162, 78],
[196, 161, 77],
[195, 160, 77],
[195, 159, 76],
[194, 158, 75],
[194, 156, 74],
[193, 155, 74],
[193, 154, 73],
[192, 153, 72],
[192, 152, 72],
[191, 151, 71],
[191, 150, 71],
[190, 149, 70],
[189, 148, 69],
[189, 147, 69],
[188, 146, 68],
[188, 145, 68],
[187, 144, 67],
[187, 143, 67],
[186, 142, 66],
[185, 141, 66],
[185, 140, 66],
[184, 139, 65],
[183, 138, 65],
[183, 137, 64],
[182, 137, 64],
[182, 136, 64],
[181, 135, 64],
[180, 134, 63],
[179, 133, 63],
[179, 132, 63],
[178, 131, 62],
[177, 130, 62],
[177, 129, 62],
[176, 128, 62],
[175, 127, 61],
[175, 126, 61],
[174, 125, 61],
[173, 125, 61],
[172, 124, 61],
[172, 123, 61],
[171, 122, 60],
[170, 121, 60],
[169, 120, 60],
[168, 119, 60],
[168, 119, 60],
[167, 118, 60],
[166, 117, 60],
[165, 116, 60],
[164, 115, 59],
[164, 114, 59],
[163, 114, 59],
[162, 113, 59],
[161, 112, 59],
[160, 111, 59],
[159, 110, 59],
[158, 110, 59],
[158, 109, 59],
[157, 108, 59],
[156, 107, 59],
[155, 107, 59],
[154, 106, 59],
[153, 105, 59],
[152, 104, 59],
[151, 104, 58],
[150, 103, 58],
[150, 102, 58],
[149, 101, 58],
[148, 101, 58],
[147, 100, 58],
[146, 99, 58],
[145, 98, 58],
[144, 98, 58],
[143, 97, 58],
[142, 96, 58],
[141, 96, 58],
[140, 95, 58],
[139, 94, 58],
[138, 94, 58],
[137, 93, 58],
[136, 92, 58],
[135, 92, 57],
[134, 91, 57],
[133, 90, 57],
[132, 90, 57],
[131, 89, 57],
[130, 88, 57],
[129, 88, 57],
[128, 87, 57],
[127, 86, 57],
[126, 86, 57],
[125, 85, 56],
[124, 84, 56],
[123, 84, 56],
[122, 83, 56],
[121, 83, 56],
[120, 82, 56],
[119, 81, 56],
[118, 81, 56],
[117, 80, 55],
[116, 79, 55],
[115, 79, 55],
[114, 78, 55],
[113, 78, 55],
[112, 77, 55],
[111, 76, 54],
[110, 76, 54],
[109, 75, 54],
[108, 75, 54],
[107, 74, 53],
[106, 73, 53],
[105, 73, 53],
[103, 72, 53],
[102, 72, 53],
[101, 71, 52],
[100, 70, 52],
[99, 70, 52],
[98, 69, 52],
[97, 69, 51],
[96, 68, 51],
[95, 67, 51],
[94, 67, 51],
[93, 66, 50],
[92, 66, 50],
[91, 65, 50],
[90, 65, 49],
[89, 64, 49],
[88, 63, 49],
[87, 63, 48],
[86, 62, 48],
[85, 62, 48],
[84, 61, 48],
[83, 60, 47],
[82, 60, 47],
[81, 59, 47],
[80, 59, 46],
[79, 58, 46],
[78, 57, 46],
[77, 57, 45],
[75, 56, 45],
[74, 56, 44],
[73, 55, 44],
[72, 54, 44],
[71, 54, 43],
[70, 53, 43],
[69, 53, 43],
[68, 52, 42],
[67, 51, 42],
[66, 51, 41],
[65, 50, 41],
[64, 50, 41],
[63, 49, 40],
[62, 48, 40],
[61, 48, 39],
[60, 47, 39],
[59, 47, 39],
[58, 46, 38],
[57, 45, 38],
[56, 45, 37],
[55, 44, 37],
[54, 43, 36],
[53, 43, 36],
[52, 42, 36],
[51, 42, 35],
[50, 41, 35],
[49, 40, 34],
[48, 40, 34],
[47, 39, 33],
[46, 38, 33],
[45, 38, 32],
[44, 37, 32],
[43, 36, 31],
[42, 36, 31],
[41, 35, 31],
[40, 35, 30],
[39, 34, 30],
[38, 33, 29],
[37, 33, 29],
[36, 32, 28],
[35, 31, 28],
[34, 31, 27],
]
palettable-3.3.0/palettable/cmocean/diverging.py 0000644 0000765 0000024 00000001461 13052672644 023017 0 ustar jiffyclub staff 0000000 0000000 """
Diverging color maps from the cmocean package:
https://github.com/matplotlib/cmocean.
"""
from __future__ import absolute_import
import itertools
from . import cmoceanpalette
from . import colormaps
from .. import utils
_PALETTE_TYPE = 'diverging'
_NAMES_TO_DATA = {
'Balance': colormaps._BALANCE,
'Curl': colormaps._CURL,
'Delta': colormaps._DELTA,
}
_NAME_MAP = utils.make_name_map(_NAMES_TO_DATA.keys())
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(
sorted(_NAMES_TO_DATA.keys()))
print_maps = utils.print_maps_factory(
'diverging cmocean', _NAMES_AND_LENGTHS, _PALETTE_TYPE)
get_map = utils.get_map_factory(
'divergine cmocean', __name__, _NAMES_TO_DATA, _PALETTE_TYPE,
cmoceanpalette.CmoceanMap)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/cmocean/sequential.py 0000644 0000765 0000024 00000002152 13052672644 023211 0 ustar jiffyclub staff 0000000 0000000 """
Sequential color maps from the cmocean package:
https://github.com/matplotlib/cmocean.
"""
from __future__ import absolute_import
import itertools
from . import cmoceanpalette
from . import colormaps
from .. import utils
_PALETTE_TYPE = 'sequential'
_NAMES_TO_DATA = {
'Algae': colormaps._ALGAE,
'Amp': colormaps._AMP,
'Deep': colormaps._DEEP,
'Dense': colormaps._DENSE,
'Gray': colormaps._GRAY,
'Haline': colormaps._HALINE,
'Ice': colormaps._ICE,
'Matter': colormaps._MATTER,
'Oxy': colormaps._OXY,
'Phase': colormaps._PHASE,
'Solar': colormaps._SOLAR,
'Speed': colormaps._SPEED,
'Tempo': colormaps._TEMPO,
'Thermal': colormaps._THERMAL,
'Turbid': colormaps._TURBID,
}
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(
sorted(_NAMES_TO_DATA.keys()))
print_maps = utils.print_maps_factory(
'sequential cmocean', _NAMES_AND_LENGTHS, _PALETTE_TYPE)
get_map = utils.get_map_factory(
'sequential cmocean', __name__, _NAMES_TO_DATA, _PALETTE_TYPE,
cmoceanpalette.CmoceanMap)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/colorbrewer/ 0000755 0000765 0000024 00000000000 13535037137 021403 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/colorbrewer/__init__.py 0000644 0000765 0000024 00000000164 12475521673 023522 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .colorbrewer import *
from . import diverging, qualitative, sequential
palettable-3.3.0/palettable/colorbrewer/colorbrewer.py 0000644 0000765 0000024 00000014432 12475521673 024313 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from __future__ import print_function
import json
import webbrowser
from pkg_resources import resource_string
from ..palette import Palette
__all__ = ('COLOR_MAPS', 'print_maps', 'print_all_maps', 'print_maps_by_type',
'get_map', 'MAP_TYPES', 'BrewerMap')
f = resource_string(__name__, 'data/colorbrewer_all_schemes.json')
COLOR_MAPS = json.loads(f.decode('ascii'))
MAP_TYPES = ('sequential', 'diverging', 'qualitative')
def print_maps(map_type=None, number=None):
"""
Print maps by type and/or number of defined colors.
Parameters
----------
map_type : {'sequential', 'diverging', 'qualitative'}, optional
Filter output by map type. By default all maps are printed.
number : int, optional
Filter output by number of defined colors. By default there is
no numeric filtering.
"""
if not map_type and not number:
print_all_maps()
elif map_type:
print_maps_by_type(map_type, number)
else:
s = ('Invalid parameter combination. '
'number without map_type is not supported.')
raise ValueError(s)
def print_all_maps():
"""
Print the name and number of defined colors of all available color maps.
"""
for t in MAP_TYPES:
print_maps_by_type(t)
def print_maps_by_type(map_type, number=None):
"""
Print all available maps of a given type.
Parameters
----------
map_type : {'sequential', 'diverging', 'qualitative'}
Select map type to print.
number : int, optional
Filter output by number of defined colors. By default there is
no numeric filtering.
"""
if map_type.lower() not in MAP_TYPES:
s = 'Invalid map type, must be one of {0}'.format(MAP_TYPES)
raise ValueError(s)
print(map_type)
# maps are keyed by capitalized types in COLOR_MAPS
map_type = map_type.capitalize()
map_keys = sorted(COLOR_MAPS[map_type].keys())
format_str = '{0:8} : {1}'
for mk in map_keys:
num_keys = sorted(COLOR_MAPS[map_type][mk].keys(), key=int)
if not number or str(number) in num_keys:
num_str = '{' + ', '.join(num_keys) + '}'
print(format_str.format(mk, num_str))
class BrewerMap(Palette):
"""
Representation of a colorbrewer2 color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
map_type : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
colorbrewer2_url : str
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
"""
@property
def colorbrewer2_url(self):
"""
URL that can be used to view the color map at colorbrewer2.org.
"""
url = 'http://colorbrewer2.org/index.html?type={0}&scheme={1}&n={2}'
return url.format(self.type.lower(), self.name, self.number)
def colorbrewer2(self):
"""
View this color map at colorbrewer2.org. This will open
colorbrewer2.org in your default web browser.
"""
webbrowser.open_new_tab(self.colorbrewer2_url) # pragma: no cover
def get_map(name, map_type, number, reverse=False):
"""
Return a `BrewerMap` representation of the specified color map.
Parameters
----------
name : str
Name of color map. Use `print_maps` to see available color maps.
map_type : {'sequential', 'diverging', 'qualitative'}
Select color map type.
number : int
Number of defined colors in color map.
reverse : bool, optional
Set to True to get the reversed color map.
"""
number = str(number)
# check for valid type
if map_type.lower() not in MAP_TYPES:
s = 'Invalid map type, must be one of {0}'.format(MAP_TYPES)
raise ValueError(s)
# maps are keyed by capitalized types in COLOR_MAPS
map_type = map_type.capitalize()
# make a dict of lower case map name to map name so this can be
# insensitive to case.
# this would be a perfect spot for a dict comprehension but going to
# wait on that to preserve 2.6 compatibility.
# map_names = {k.lower(): k for k in COLOR_MAPS[map_type].iterkeys()}
map_names = dict((k.lower(), k) for k in COLOR_MAPS[map_type].keys())
# check for valid name
if name.lower() not in map_names:
s = 'Invalid color map name {0!r} for type {1!r}.\n'
s = s.format(name, map_type)
valid_names = [str(k) for k in COLOR_MAPS[map_type].keys()]
valid_names.sort()
s += 'Valid names are: {0}'.format(valid_names)
raise ValueError(s)
name = map_names[name.lower()]
# check for valid number
if number not in COLOR_MAPS[map_type][name]:
s = 'Invalid number for map type {0!r} and name {1!r}.\n'
s = s.format(map_type, str(name))
valid_numbers = [int(k) for k in COLOR_MAPS[map_type][name].keys()]
valid_numbers.sort()
s += 'Valid numbers are : {0}'.format(valid_numbers)
raise ValueError(s)
colors = COLOR_MAPS[map_type][name][number]['Colors']
if reverse:
name += '_r'
colors = [x for x in reversed(colors)]
return BrewerMap(name, map_type.lower(), colors)
def _load_maps_by_type(map_type):
"""
Load all maps of a given type into a dictionary.
Color maps are loaded as BrewerMap objects. Dictionary is
keyed by map name and then integer numbers of defined
colors. There is an additional 'max' key that points to the
color map with the largest number of defined colors.
Parameters
----------
map_type : {'sequential', 'diverging', 'qualitative'}
Returns
-------
maps : dict of BrewerMap
"""
map_type = map_type.capitalize()
seq_maps = COLOR_MAPS[map_type]
loaded_maps = {}
for map_name in seq_maps:
for num in seq_maps[map_name]:
inum = int(num)
name = '{0}_{1}'.format(map_name, num)
loaded_maps[name] = get_map(map_name, map_type, inum)
loaded_maps[name + '_r'] = get_map(
map_name, map_type, inum, reverse=True)
return loaded_maps
palettable-3.3.0/palettable/colorbrewer/data/ 0000755 0000765 0000024 00000000000 13535037137 022314 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/colorbrewer/data/colorbrewer_all_schemes.csv 0000644 0000765 0000024 00000110550 12475521673 027724 0 ustar jiffyclub staff 0000000 0000000 ColorName,NumOfColors,Type,CritVal,ColorNum,ColorLetter,R,G,B,SchemeType
Accent,3,qual,,1,A,127,201,127,Qualitative
,,,,2,B,190,174,212,
,,,,3,C,253,192,134,
Accent,4,qual,,1,A,127,201,127,
,,,,2,B,190,174,212,
,,,,3,C,253,192,134,
,,,,4,D,255,255,153,
Accent,5,qual,,1,A,127,201,127,
,,,,2,B,190,174,212,
,,,,3,C,253,192,134,
,,,,4,D,255,255,153,
,,,,5,E,56,108,176,
Accent,6,qual,,1,A,127,201,127,
,,,,2,B,190,174,212,
,,,,3,C,253,192,134,
,,,,4,D,255,255,153,
,,,,5,E,56,108,176,
,,,,6,F,240,2,127,
Accent,7,qual,,1,A,127,201,127,
,,,,2,B,190,174,212,
,,,,3,C,253,192,134,
,,,,4,D,255,255,153,
,,,,5,E,56,108,176,
,,,,6,F,240,2,127,
,,,,7,G,191,91,23,
Accent,8,qual,,1,A,127,201,127,
,,,,2,B,190,174,212,
,,,,3,C,253,192,134,
,,,,4,D,255,255,153,
,,,,5,E,56,108,176,
,,,,6,F,240,2,127,
,,,,7,G,191,91,23,
,,,,8,H,102,102,102,
Blues,3,seq,,1,C,222,235,247,Sequential
,,,,2,F,158,202,225,
,,,,3,I,49,130,189,
Blues,4,seq,,1,B,239,243,255,
,,,,2,E,189,215,231,
,,,,3,G,107,174,214,
,,,,4,J,33,113,181,
Blues,5,seq,,1,B,239,243,255,
,,,,2,E,189,215,231,
,,,,3,G,107,174,214,
,,,,4,I,49,130,189,
,,,,5,K,8,81,156,
Blues,6,seq,,1,B,239,243,255,
,,,,2,D,198,219,239,
,,,,3,F,158,202,225,
,,,,4,G,107,174,214,
,,,,5,I,49,130,189,
,,,,6,K,8,81,156,
Blues,7,seq,,1,B,239,243,255,
,,,,2,D,198,219,239,
,,,,3,F,158,202,225,
,,,,4,G,107,174,214,
,,,,5,H,66,146,198,
,,,,6,J,33,113,181,
,,,,7,L,8,69,148,
Blues,8,seq,,1,A,247,251,255,
,,,,2,C,222,235,247,
,,,,3,D,198,219,239,
,,,,4,F,158,202,225,
,,,,5,G,107,174,214,
,,,,6,H,66,146,198,
,,,,7,J,33,113,181,
,,,,8,L,8,69,148,
Blues,9,seq,,1,A,247,251,255,
,,,,2,C,222,235,247,
,,,,3,D,198,219,239,
,,,,4,F,158,202,225,
,,,,5,G,107,174,214,
,,,,6,H,66,146,198,
,,,,7,J,33,113,181,
,,,,8,K,8,81,156,
,,,,9,M,8,48,107,
BrBG,3,div,2,1,E,216,179,101,Diverging
,,,,2,H,245,245,245,
,,,,3,K,90,180,172,
BrBG,4,div,2.5,1,C,166,97,26,
,,,,2,F,223,194,125,
,,,,3,J,128,205,193,
,,,,4,M,1,133,113,
BrBG,5,div,3,1,C,166,97,26,
,,,,2,F,223,194,125,
,,,,3,H,245,245,245,
,,,,4,J,128,205,193,
,,,,5,M,1,133,113,
BrBG,6,div,3.5,1,B,140,81,10,
,,,,2,E,216,179,101,
,,,,3,G,246,232,195,
,,,,4,I,199,234,229,
,,,,5,K,90,180,172,
,,,,6,N,1,102,94,
BrBG,7,div,4,1,B,140,81,10,
,,,,2,E,216,179,101,
,,,,3,G,246,232,195,
,,,,4,H,245,245,245,
,,,,5,I,199,234,229,
,,,,6,K,90,180,172,
,,,,7,N,1,102,94,
BrBG,8,div,4.5,1,B,140,81,10,
,,,,2,D,191,129,45,
,,,,3,F,223,194,125,
,,,,4,G,246,232,195,
,,,,5,I,199,234,229,
,,,,6,J,128,205,193,
,,,,7,L,53,151,143,
,,,,8,N,1,102,94,
BrBG,9,div,5,1,B,140,81,10,
,,,,2,D,191,129,45,
,,,,3,F,223,194,125,
,,,,4,G,246,232,195,
,,,,5,H,245,245,245,
,,,,6,I,199,234,229,
,,,,7,J,128,205,193,
,,,,8,L,53,151,143,
,,,,9,N,1,102,94,
BrBG,10,div,5.5,1,A,84,48,5,
,,,,2,B,140,81,10,
,,,,3,D,191,129,45,
,,,,4,F,223,194,125,
,,,,5,G,246,232,195,
,,,,6,I,199,234,229,
,,,,7,J,128,205,193,
,,,,8,L,53,151,143,
,,,,9,N,1,102,94,
,,,,10,O,0,60,48,
BrBG,11,div,6,1,A,84,48,5,
,,,,2,B,140,81,10,
,,,,3,D,191,129,45,
,,,,4,F,223,194,125,
,,,,5,G,246,232,195,
,,,,6,H,245,245,245,
,,,,7,I,199,234,229,
,,,,8,J,128,205,193,
,,,,9,L,53,151,143,
,,,,10,N,1,102,94,
,,,,11,O,0,60,48,
BuGn,3,seq,,1,C,229,245,249,Sequential
,,,,2,F,153,216,201,
,,,,3,I,44,162,95,
BuGn,4,seq,,1,B,237,248,251,
,,,,2,E,178,226,226,
,,,,3,G,102,194,164,
,,,,4,J,35,139,69,
BuGn,5,seq,,1,B,237,248,251,
,,,,2,E,178,226,226,
,,,,3,G,102,194,164,
,,,,4,I,44,162,95,
,,,,5,K,0,109,44,
BuGn,6,seq,,1,B,237,248,251,
,,,,2,D,204,236,230,
,,,,3,F,153,216,201,
,,,,4,G,102,194,164,
,,,,5,I,44,162,95,
,,,,6,K,0,109,44,
BuGn,7,seq,,1,B,237,248,251,
,,,,2,D,204,236,230,
,,,,3,F,153,216,201,
,,,,4,G,102,194,164,
,,,,5,H,65,174,118,
,,,,6,J,35,139,69,
,,,,7,L,0,88,36,
BuGn,8,seq,,1,A,247,252,253,
,,,,2,C,229,245,249,
,,,,3,D,204,236,230,
,,,,4,F,153,216,201,
,,,,5,G,102,194,164,
,,,,6,H,65,174,118,
,,,,7,J,35,139,69,
,,,,8,L,0,88,36,
BuGn,9,seq,,1,A,247,252,253,
,,,,2,C,229,245,249,
,,,,3,D,204,236,230,
,,,,4,F,153,216,201,
,,,,5,G,102,194,164,
,,,,6,H,65,174,118,
,,,,7,J,35,139,69,
,,,,8,K,0,109,44,
,,,,9,M,0,68,27,
BuPu,3,seq,,1,C,224,236,244,Sequential
,,,,2,F,158,188,218,
,,,,3,I,136,86,167,
BuPu,4,seq,,1,B,237,248,251,
,,,,2,E,179,205,227,
,,,,3,G,140,150,198,
,,,,4,J,136,65,157,
BuPu,5,seq,,1,B,237,248,251,
,,,,2,E,179,205,227,
,,,,3,G,140,150,198,
,,,,4,I,136,86,167,
,,,,5,K,129,15,124,
BuPu,6,seq,,1,B,237,248,251,
,,,,2,D,191,211,230,
,,,,3,F,158,188,218,
,,,,4,G,140,150,198,
,,,,5,I,136,86,167,
,,,,6,K,129,15,124,
BuPu,7,seq,,1,B,237,248,251,
,,,,2,D,191,211,230,
,,,,3,F,158,188,218,
,,,,4,G,140,150,198,
,,,,5,H,140,107,177,
,,,,6,J,136,65,157,
,,,,7,L,110,1,107,
BuPu,8,seq,,1,A,247,252,253,
,,,,2,C,224,236,244,
,,,,3,D,191,211,230,
,,,,4,F,158,188,218,
,,,,5,G,140,150,198,
,,,,6,H,140,107,177,
,,,,7,J,136,65,157,
,,,,8,L,110,1,107,
BuPu,9,seq,,1,A,247,252,253,
,,,,2,C,224,236,244,
,,,,3,D,191,211,230,
,,,,4,F,158,188,218,
,,,,5,G,140,150,198,
,,,,6,H,140,107,177,
,,,,7,J,136,65,157,
,,,,8,K,129,15,124,
,,,,9,M,77,0,75,
Dark2,3,qual,,1,A,27,158,119,Qualitative
,,,,2,B,217,95,2,
,,,,3,C,117,112,179,
Dark2,4,qual,,1,A,27,158,119,
,,,,2,B,217,95,2,
,,,,3,C,117,112,179,
,,,,4,D,231,41,138,
Dark2,5,qual,,1,A,27,158,119,
,,,,2,B,217,95,2,
,,,,3,C,117,112,179,
,,,,4,D,231,41,138,
,,,,5,E,102,166,30,
Dark2,6,qual,,1,A,27,158,119,
,,,,2,B,217,95,2,
,,,,3,C,117,112,179,
,,,,4,D,231,41,138,
,,,,5,E,102,166,30,
,,,,6,F,230,171,2,
Dark2,7,qual,,1,A,27,158,119,
,,,,2,B,217,95,2,
,,,,3,C,117,112,179,
,,,,4,D,231,41,138,
,,,,5,E,102,166,30,
,,,,6,F,230,171,2,
,,,,7,G,166,118,29,
Dark2,8,qual,,1,A,27,158,119,
,,,,2,B,217,95,2,
,,,,3,C,117,112,179,
,,,,4,D,231,41,138,
,,,,5,E,102,166,30,
,,,,6,F,230,171,2,
,,,,7,G,166,118,29,
,,,,8,H,102,102,102,
GnBu,3,seq,,1,C,224,243,219,Sequential
,,,,2,F,168,221,181,
,,,,3,I,67,162,202,
GnBu,4,seq,,1,B,240,249,232,
,,,,2,E,186,228,188,
,,,,3,G,123,204,196,
,,,,4,J,43,140,190,
GnBu,5,seq,,1,B,240,249,232,
,,,,2,E,186,228,188,
,,,,3,G,123,204,196,
,,,,4,I,67,162,202,
,,,,5,K,8,104,172,
GnBu,6,seq,,1,B,240,249,232,
,,,,2,D,204,235,197,
,,,,3,F,168,221,181,
,,,,4,G,123,204,196,
,,,,5,I,67,162,202,
,,,,6,K,8,104,172,
GnBu,7,seq,,1,B,240,249,232,
,,,,2,D,204,235,197,
,,,,3,F,168,221,181,
,,,,4,G,123,204,196,
,,,,5,H,78,179,211,
,,,,6,J,43,140,190,
,,,,7,L,8,88,158,
GnBu,8,seq,,1,A,247,252,240,
,,,,2,C,224,243,219,
,,,,3,D,204,235,197,
,,,,4,F,168,221,181,
,,,,5,G,123,204,196,
,,,,6,H,78,179,211,
,,,,7,J,43,140,190,
,,,,8,L,8,88,158,
GnBu,9,seq,,1,A,247,252,240,
,,,,2,C,224,243,219,
,,,,3,D,204,235,197,
,,,,4,F,168,221,181,
,,,,5,G,123,204,196,
,,,,6,H,78,179,211,
,,,,7,J,43,140,190,
,,,,8,K,8,104,172,
,,,,9,M,8,64,129,
Greens,3,seq,,1,C,229,245,224,Sequential
,,,,2,F,161,217,155,
,,,,3,I,49,163,84,
Greens,4,seq,,1,B,237,248,233,
,,,,2,E,186,228,179,
,,,,3,G,116,196,118,
,,,,4,J,35,139,69,
Greens,5,seq,,1,B,237,248,233,
,,,,2,E,186,228,179,
,,,,3,G,116,196,118,
,,,,4,I,49,163,84,
,,,,5,K,0,109,44,
Greens,6,seq,,1,B,237,248,233,
,,,,2,D,199,233,192,
,,,,3,F,161,217,155,
,,,,4,G,116,196,118,
,,,,5,I,49,163,84,
,,,,6,K,0,109,44,
Greens,7,seq,,1,B,237,248,233,
,,,,2,D,199,233,192,
,,,,3,F,161,217,155,
,,,,4,G,116,196,118,
,,,,5,H,65,171,93,
,,,,6,J,35,139,69,
,,,,7,L,0,90,50,
Greens,8,seq,,1,A,247,252,245,
,,,,2,C,229,245,224,
,,,,3,D,199,233,192,
,,,,4,F,161,217,155,
,,,,5,G,116,196,118,
,,,,6,H,65,171,93,
,,,,7,J,35,139,69,
,,,,8,L,0,90,50,
Greens,9,seq,,1,A,247,252,245,
,,,,2,C,229,245,224,
,,,,3,D,199,233,192,
,,,,4,F,161,217,155,
,,,,5,G,116,196,118,
,,,,6,H,65,171,93,
,,,,7,J,35,139,69,
,,,,8,K,0,109,44,
,,,,9,M,0,68,27,
Greys,3,seq,,1,C,240,240,240,Sequential
,,,,2,F,189,189,189,
,,,,3,I,99,99,99,
Greys,4,seq,,1,B,247,247,247,
,,,,2,E,204,204,204,
,,,,3,G,150,150,150,
,,,,4,J,82,82,82,
Greys,5,seq,,1,B,247,247,247,
,,,,2,E,204,204,204,
,,,,3,G,150,150,150,
,,,,4,I,99,99,99,
,,,,5,K,37,37,37,
Greys,6,seq,,1,B,247,247,247,
,,,,2,D,217,217,217,
,,,,3,F,189,189,189,
,,,,4,G,150,150,150,
,,,,5,I,99,99,99,
,,,,6,K,37,37,37,
Greys,7,seq,,1,B,247,247,247,
,,,,2,D,217,217,217,
,,,,3,F,189,189,189,
,,,,4,G,150,150,150,
,,,,5,H,115,115,115,
,,,,6,J,82,82,82,
,,,,7,L,37,37,37,
Greys,8,seq,,1,A,255,255,255,
,,,,2,C,240,240,240,
,,,,3,D,217,217,217,
,,,,4,F,189,189,189,
,,,,5,G,150,150,150,
,,,,6,H,115,115,115,
,,,,7,J,82,82,82,
,,,,8,L,37,37,37,
Greys,9,seq,,1,A,255,255,255,
,,,,2,C,240,240,240,
,,,,3,D,217,217,217,
,,,,4,F,189,189,189,
,,,,5,G,150,150,150,
,,,,6,H,115,115,115,
,,,,7,J,82,82,82,
,,,,8,K,37,37,37,
,,,,9,M,0,0,0,
Oranges,3,seq,,1,C,254,230,206,Sequential
,,,,2,F,253,174,107,
,,,,3,I,230,85,13,
Oranges,4,seq,,1,B,254,237,222,
,,,,2,E,253,190,133,
,,,,3,G,253,141,60,
,,,,4,J,217,71,1,
Oranges,5,seq,,1,B,254,237,222,
,,,,2,E,253,190,133,
,,,,3,G,253,141,60,
,,,,4,I,230,85,13,
,,,,5,K,166,54,3,
Oranges,6,seq,,1,B,254,237,222,
,,,,2,D,253,208,162,
,,,,3,F,253,174,107,
,,,,4,G,253,141,60,
,,,,5,I,230,85,13,
,,,,6,K,166,54,3,
Oranges,7,seq,,1,B,254,237,222,
,,,,2,D,253,208,162,
,,,,3,F,253,174,107,
,,,,4,G,253,141,60,
,,,,5,H,241,105,19,
,,,,6,J,217,72,1,
,,,,7,L,140,45,4,
Oranges,8,seq,,1,A,255,245,235,
,,,,2,C,254,230,206,
,,,,3,D,253,208,162,
,,,,4,F,253,174,107,
,,,,5,G,253,141,60,
,,,,6,H,241,105,19,
,,,,7,J,217,72,1,
,,,,8,L,140,45,4,
Oranges,9,seq,,1,A,255,245,235,
,,,,2,C,254,230,206,
,,,,3,D,253,208,162,
,,,,4,F,253,174,107,
,,,,5,G,253,141,60,
,,,,6,H,241,105,19,
,,,,7,J,217,72,1,
,,,,8,K,166,54,3,
,,,,9,M,127,39,4,
OrRd,3,seq,,1,C,254,232,200,Sequential
,,,,2,F,253,187,132,
,,,,3,I,227,74,51,
OrRd,4,seq,,1,B,254,240,217,
,,,,2,E,253,204,138,
,,,,3,G,252,141,89,
,,,,4,J,215,48,31,
OrRd,5,seq,,1,B,254,240,217,
,,,,2,E,253,204,138,
,,,,3,G,252,141,89,
,,,,4,I,227,74,51,
,,,,5,K,179,0,0,
OrRd,6,seq,,1,B,254,240,217,
,,,,2,D,253,212,158,
,,,,3,F,253,187,132,
,,,,4,G,252,141,89,
,,,,5,I,227,74,51,
,,,,6,K,179,0,0,
OrRd,7,seq,,1,B,254,240,217,
,,,,2,D,253,212,158,
,,,,3,F,253,187,132,
,,,,4,G,252,141,89,
,,,,5,H,239,101,72,
,,,,6,J,215,48,31,
,,,,7,L,153,0,0,
OrRd,8,seq,,1,A,255,247,236,
,,,,2,C,254,232,200,
,,,,3,D,253,212,158,
,,,,4,F,253,187,132,
,,,,5,G,252,141,89,
,,,,6,H,239,101,72,
,,,,7,J,215,48,31,
,,,,8,L,153,0,0,
OrRd,9,seq,,1,A,255,247,236,
,,,,2,C,254,232,200,
,,,,3,D,253,212,158,
,,,,4,F,253,187,132,
,,,,5,G,252,141,89,
,,,,6,H,239,101,72,
,,,,7,J,215,48,31,
,,,,8,K,179,0,0,
,,,,9,M,127,0,0,
Paired,3,qual,,1,A,166,206,227,Qualitative
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
Paired,4,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
Paired,5,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
,,,,5,E,251,154,153,
Paired,6,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
,,,,5,E,251,154,153,
,,,,6,F,227,26,28,
Paired,7,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
,,,,5,E,251,154,153,
,,,,6,F,227,26,28,
,,,,7,G,253,191,111,
Paired,8,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
,,,,5,E,251,154,153,
,,,,6,F,227,26,28,
,,,,7,G,253,191,111,
,,,,8,H,255,127,0,
Paired,9,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
,,,,5,E,251,154,153,
,,,,6,F,227,26,28,
,,,,7,G,253,191,111,
,,,,8,H,255,127,0,
,,,,9,I,202,178,214,
Paired,10,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
,,,,5,E,251,154,153,
,,,,6,F,227,26,28,
,,,,7,G,253,191,111,
,,,,8,H,255,127,0,
,,,,9,I,202,178,214,
,,,,10,J,106,61,154,
Paired,11,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
,,,,5,E,251,154,153,
,,,,6,F,227,26,28,
,,,,7,G,253,191,111,
,,,,8,H,255,127,0,
,,,,9,I,202,178,214,
,,,,10,J,106,61,154,
,,,,11,K,255,255,153,
Paired,12,qual,,1,A,166,206,227,
,,,,2,B,31,120,180,
,,,,3,C,178,223,138,
,,,,4,D,51,160,44,
,,,,5,E,251,154,153,
,,,,6,F,227,26,28,
,,,,7,G,253,191,111,
,,,,8,H,255,127,0,
,,,,9,I,202,178,214,
,,,,10,J,106,61,154,
,,,,11,K,255,255,153,
,,,,12,L,177,89,40,
Pastel1,3,qual,,1,A,251,180,174,Qualitative
,,,,2,B,179,205,227,
,,,,3,C,204,235,197,
Pastel1,4,qual,,1,A,251,180,174,
,,,,2,B,179,205,227,
,,,,3,C,204,235,197,
,,,,4,D,222,203,228,
Pastel1,5,qual,,1,A,251,180,174,
,,,,2,B,179,205,227,
,,,,3,C,204,235,197,
,,,,4,D,222,203,228,
,,,,5,E,254,217,166,
Pastel1,6,qual,,1,A,251,180,174,
,,,,2,B,179,205,227,
,,,,3,C,204,235,197,
,,,,4,D,222,203,228,
,,,,5,E,254,217,166,
,,,,6,F,255,255,204,
Pastel1,7,qual,,1,A,251,180,174,
,,,,2,B,179,205,227,
,,,,3,C,204,235,197,
,,,,4,D,222,203,228,
,,,,5,E,254,217,166,
,,,,6,F,255,255,204,
,,,,7,G,229,216,189,
Pastel1,8,qual,,1,A,251,180,174,
,,,,2,B,179,205,227,
,,,,3,C,204,235,197,
,,,,4,D,222,203,228,
,,,,5,E,254,217,166,
,,,,6,F,255,255,204,
,,,,7,G,229,216,189,
,,,,8,H,253,218,236,
Pastel1,9,qual,,1,A,251,180,174,
,,,,2,B,179,205,227,
,,,,3,C,204,235,197,
,,,,4,D,222,203,228,
,,,,5,E,254,217,166,
,,,,6,F,255,255,204,
,,,,7,G,229,216,189,
,,,,8,H,253,218,236,
,,,,9,I,242,242,242,
Pastel2,3,qual,,1,A,179,226,205,Qualitative
,,,,2,B,253,205,172,
,,,,3,C,203,213,232,
Pastel2,4,qual,,1,A,179,226,205,
,,,,2,B,253,205,172,
,,,,3,C,203,213,232,
,,,,4,D,244,202,228,
Pastel2,5,qual,,1,A,179,226,205,
,,,,2,B,253,205,172,
,,,,3,C,203,213,232,
,,,,4,D,244,202,228,
,,,,5,E,230,245,201,
Pastel2,6,qual,,1,A,179,226,205,
,,,,2,B,253,205,172,
,,,,3,C,203,213,232,
,,,,4,D,244,202,228,
,,,,5,E,230,245,201,
,,,,6,F,255,242,174,
Pastel2,7,qual,,1,A,179,226,205,
,,,,2,B,253,205,172,
,,,,3,C,203,213,232,
,,,,4,D,244,202,228,
,,,,5,E,230,245,201,
,,,,6,F,255,242,174,
,,,,7,G,241,226,204,
Pastel2,8,qual,,1,A,179,226,205,
,,,,2,B,253,205,172,
,,,,3,C,203,213,232,
,,,,4,D,244,202,228,
,,,,5,E,230,245,201,
,,,,6,F,255,242,174,
,,,,7,G,241,226,204,
,,,,8,H,204,204,204,
PiYG,3,div,2,1,E,233,163,201,Diverging
,,,,2,H,247,247,247,
,,,,3,K,161,215,106,
PiYG,4,div,2.5,1,C,208,28,139,
,,,,2,F,241,182,218,
,,,,3,J,184,225,134,
,,,,4,M,77,172,38,
PiYG,5,div,3,1,C,208,28,139,
,,,,2,F,241,182,218,
,,,,3,H,247,247,247,
,,,,4,J,184,225,134,
,,,,5,M,77,172,38,
PiYG,6,div,3.5,1,B,197,27,125,
,,,,2,E,233,163,201,
,,,,3,G,253,224,239,
,,,,4,I,230,245,208,
,,,,5,K,161,215,106,
,,,,6,N,77,146,33,
PiYG,7,div,4,1,B,197,27,125,
,,,,2,E,233,163,201,
,,,,3,G,253,224,239,
,,,,4,H,247,247,247,
,,,,5,I,230,245,208,
,,,,6,K,161,215,106,
,,,,7,N,77,146,33,
PiYG,8,div,4.5,1,B,197,27,125,
,,,,2,D,222,119,174,
,,,,3,F,241,182,218,
,,,,4,G,253,224,239,
,,,,5,I,230,245,208,
,,,,6,J,184,225,134,
,,,,7,L,127,188,65,
,,,,8,N,77,146,33,
PiYG,9,div,5,1,B,197,27,125,
,,,,2,D,222,119,174,
,,,,3,F,241,182,218,
,,,,4,G,253,224,239,
,,,,5,H,247,247,247,
,,,,6,I,230,245,208,
,,,,7,J,184,225,134,
,,,,8,L,127,188,65,
,,,,9,N,77,146,33,
PiYG,10,div,5.5,1,A,142,1,82,
,,,,2,B,197,27,125,
,,,,3,D,222,119,174,
,,,,4,F,241,182,218,
,,,,5,G,253,224,239,
,,,,6,I,230,245,208,
,,,,7,J,184,225,134,
,,,,8,L,127,188,65,
,,,,9,N,77,146,33,
,,,,10,O,39,100,25,
PiYG,11,div,6,1,A,142,1,82,
,,,,2,B,197,27,125,
,,,,3,D,222,119,174,
,,,,4,F,241,182,218,
,,,,5,G,253,224,239,
,,,,6,H,247,247,247,
,,,,7,I,230,245,208,
,,,,8,J,184,225,134,
,,,,9,L,127,188,65,
,,,,10,N,77,146,33,
,,,,11,O,39,100,25,
PRGn,3,div,2,1,E,175,141,195,Diverging
,,,,2,H,247,247,247,
,,,,3,K,127,191,123,
PRGn,4,div,2.5,1,C,123,50,148,
,,,,2,F,194,165,207,
,,,,3,J,166,219,160,
,,,,4,M,0,136,55,
PRGn,5,div,3,1,C,123,50,148,
,,,,2,F,194,165,207,
,,,,3,H,247,247,247,
,,,,4,J,166,219,160,
,,,,5,M,0,136,55,
PRGn,6,div,3.5,1,B,118,42,131,
,,,,2,E,175,141,195,
,,,,3,G,231,212,232,
,,,,4,I,217,240,211,
,,,,5,K,127,191,123,
,,,,6,N,27,120,55,
PRGn,7,div,4,1,B,118,42,131,
,,,,2,E,175,141,195,
,,,,3,G,231,212,232,
,,,,4,H,247,247,247,
,,,,5,I,217,240,211,
,,,,6,K,127,191,123,
,,,,7,N,27,120,55,
PRGn,8,div,4.5,1,B,118,42,131,
,,,,2,D,153,112,171,
,,,,3,F,194,165,207,
,,,,4,G,231,212,232,
,,,,5,I,217,240,211,
,,,,6,J,166,219,160,
,,,,7,L,90,174,97,
,,,,8,N,27,120,55,
PRGn,9,div,5,1,B,118,42,131,
,,,,2,D,153,112,171,
,,,,3,F,194,165,207,
,,,,4,G,231,212,232,
,,,,5,H,247,247,247,
,,,,6,I,217,240,211,
,,,,7,J,166,219,160,
,,,,8,L,90,174,97,
,,,,9,N,27,120,55,
PRGn,10,div,5.5,1,A,64,0,75,
,,,,2,B,118,42,131,
,,,,3,D,153,112,171,
,,,,4,F,194,165,207,
,,,,5,G,231,212,232,
,,,,6,I,217,240,211,
,,,,7,J,166,219,160,
,,,,8,L,90,174,97,
,,,,9,N,27,120,55,
,,,,10,O,0,68,27,
PRGn,11,div,6,1,A,64,0,75,
,,,,2,B,118,42,131,
,,,,3,D,153,112,171,
,,,,4,F,194,165,207,
,,,,5,G,231,212,232,
,,,,6,H,247,247,247,
,,,,7,I,217,240,211,
,,,,8,J,166,219,160,
,,,,9,L,90,174,97,
,,,,10,N,27,120,55,
,,,,11,O,0,68,27,
PuBu,3,seq,,1,C,236,231,242,Sequential
,,,,2,F,166,189,219,
,,,,3,I,43,140,190,
PuBu,4,seq,,1,B,241,238,246,
,,,,2,E,189,201,225,
,,,,3,G,116,169,207,
,,,,4,J,5,112,176,
PuBu,5,seq,,1,B,241,238,246,
,,,,2,E,189,201,225,
,,,,3,G,116,169,207,
,,,,4,I,43,140,190,
,,,,5,K,4,90,141,
PuBu,6,seq,,1,B,241,238,246,
,,,,2,D,208,209,230,
,,,,3,F,166,189,219,
,,,,4,G,116,169,207,
,,,,5,I,43,140,190,
,,,,6,K,4,90,141,
PuBu,7,seq,,1,B,241,238,246,
,,,,2,D,208,209,230,
,,,,3,F,166,189,219,
,,,,4,G,116,169,207,
,,,,5,H,54,144,192,
,,,,6,J,5,112,176,
,,,,7,L,3,78,123,
PuBu,8,seq,,1,A,255,247,251,
,,,,2,C,236,231,242,
,,,,3,D,208,209,230,
,,,,4,F,166,189,219,
,,,,5,G,116,169,207,
,,,,6,H,54,144,192,
,,,,7,J,5,112,176,
,,,,8,L,3,78,123,
PuBu,9,seq,,1,A,255,247,251,
,,,,2,C,236,231,242,
,,,,3,D,208,209,230,
,,,,4,F,166,189,219,
,,,,5,G,116,169,207,
,,,,6,H,54,144,192,
,,,,7,J,5,112,176,
,,,,8,K,4,90,141,
,,,,9,M,2,56,88,
PuBuGn,3,seq,,1,C,236,226,240,Sequential
,,,,2,F,166,189,219,
,,,,3,I,28,144,153,
PuBuGn,4,seq,,1,B,246,239,247,
,,,,2,E,189,201,225,
,,,,3,G,103,169,207,
,,,,4,J,2,129,138,
PuBuGn,5,seq,,1,B,246,239,247,
,,,,2,E,189,201,225,
,,,,3,G,103,169,207,
,,,,4,I,28,144,153,
,,,,5,K,1,108,89,
PuBuGn,6,seq,,1,B,246,239,247,
,,,,2,D,208,209,230,
,,,,3,F,166,189,219,
,,,,4,G,103,169,207,
,,,,5,I,28,144,153,
,,,,6,K,1,108,89,
PuBuGn,7,seq,,1,B,246,239,247,
,,,,2,D,208,209,230,
,,,,3,F,166,189,219,
,,,,4,G,103,169,207,
,,,,5,H,54,144,192,
,,,,6,J,2,129,138,
,,,,7,L,1,100,80,
PuBuGn,8,seq,,1,A,255,247,251,
,,,,2,C,236,226,240,
,,,,3,D,208,209,230,
,,,,4,F,166,189,219,
,,,,5,G,103,169,207,
,,,,6,H,54,144,192,
,,,,7,J,2,129,138,
,,,,8,L,1,100,80,
PuBuGn,9,seq,,1,A,255,247,251,
,,,,2,C,236,226,240,
,,,,3,D,208,209,230,
,,,,4,F,166,189,219,
,,,,5,G,103,169,207,
,,,,6,H,54,144,192,
,,,,7,J,2,129,138,
,,,,8,K,1,108,89,
,,,,9,M,1,70,54,
PuOr,3,div,2,1,E,241,163,64,Diverging
,,,,2,H,247,247,247,
,,,,3,K,153,142,195,
PuOr,4,div,2.5,1,C,230,97,1,
,,,,2,F,253,184,99,
,,,,3,J,178,171,210,
,,,,4,M,94,60,153,
PuOr,5,div,3,1,C,230,97,1,
,,,,2,F,253,184,99,
,,,,3,H,247,247,247,
,,,,4,J,178,171,210,
,,,,5,M,94,60,153,
PuOr,6,div,3.5,1,B,179,88,6,
,,,,2,E,241,163,64,
,,,,3,G,254,224,182,
,,,,4,I,216,218,235,
,,,,5,K,153,142,195,
,,,,6,N,84,39,136,
PuOr,7,div,4,1,B,179,88,6,
,,,,2,E,241,163,64,
,,,,3,G,254,224,182,
,,,,4,H,247,247,247,
,,,,5,I,216,218,235,
,,,,6,K,153,142,195,
,,,,7,N,84,39,136,
PuOr,8,div,4.5,1,B,179,88,6,
,,,,2,D,224,130,20,
,,,,3,F,253,184,99,
,,,,4,G,254,224,182,
,,,,5,I,216,218,235,
,,,,6,J,178,171,210,
,,,,7,L,128,115,172,
,,,,8,N,84,39,136,
PuOr,9,div,5,1,B,179,88,6,
,,,,2,D,224,130,20,
,,,,3,F,253,184,99,
,,,,4,G,254,224,182,
,,,,5,H,247,247,247,
,,,,6,I,216,218,235,
,,,,7,J,178,171,210,
,,,,8,L,128,115,172,
,,,,9,N,84,39,136,
PuOr,10,div,5.5,1,A,127,59,8,
,,,,2,B,179,88,6,
,,,,3,D,224,130,20,
,,,,4,F,253,184,99,
,,,,5,G,254,224,182,
,,,,6,I,216,218,235,
,,,,7,J,178,171,210,
,,,,8,L,128,115,172,
,,,,9,N,84,39,136,
,,,,10,O,45,0,75,
PuOr,11,div,6,1,A,127,59,8,
,,,,2,B,179,88,6,
,,,,3,D,224,130,20,
,,,,4,F,253,184,99,
,,,,5,G,254,224,182,
,,,,6,H,247,247,247,
,,,,7,I,216,218,235,
,,,,8,J,178,171,210,
,,,,9,L,128,115,172,
,,,,10,N,84,39,136,
,,,,11,O,45,0,75,
PuRd,3,seq,,1,C,231,225,239,Sequential
,,,,2,F,201,148,199,
,,,,3,I,221,28,119,
PuRd,4,seq,,1,B,241,238,246,
,,,,2,E,215,181,216,
,,,,3,G,223,101,176,
,,,,4,J,206,18,86,
PuRd,5,seq,,1,B,241,238,246,
,,,,2,E,215,181,216,
,,,,3,G,223,101,176,
,,,,4,I,221,28,119,
,,,,5,K,152,0,67,
PuRd,6,seq,,1,B,241,238,246,
,,,,2,D,212,185,218,
,,,,3,F,201,148,199,
,,,,4,G,223,101,176,
,,,,5,I,221,28,119,
,,,,6,K,152,0,67,
PuRd,7,seq,,1,B,241,238,246,
,,,,2,D,212,185,218,
,,,,3,F,201,148,199,
,,,,4,G,223,101,176,
,,,,5,H,231,41,138,
,,,,6,J,206,18,86,
,,,,7,L,145,0,63,
PuRd,8,seq,,1,A,247,244,249,
,,,,2,C,231,225,239,
,,,,3,D,212,185,218,
,,,,4,F,201,148,199,
,,,,5,G,223,101,176,
,,,,6,H,231,41,138,
,,,,7,J,206,18,86,
,,,,8,L,145,0,63,
PuRd,9,seq,,1,A,247,244,249,
,,,,2,C,231,225,239,
,,,,3,D,212,185,218,
,,,,4,F,201,148,199,
,,,,5,G,223,101,176,
,,,,6,H,231,41,138,
,,,,7,J,206,18,86,
,,,,8,K,152,0,67,
,,,,9,M,103,0,31,
Purples,3,seq,,1,C,239,237,245,Sequential
,,,,2,F,188,189,220,
,,,,3,I,117,107,177,
Purples,4,seq,,1,B,242,240,247,
,,,,2,E,203,201,226,
,,,,3,G,158,154,200,
,,,,4,J,106,81,163,
Purples,5,seq,,1,B,242,240,247,
,,,,2,E,203,201,226,
,,,,3,G,158,154,200,
,,,,4,I,117,107,177,
,,,,5,K,84,39,143,
Purples,6,seq,,1,B,242,240,247,
,,,,2,D,218,218,235,
,,,,3,F,188,189,220,
,,,,4,G,158,154,200,
,,,,5,I,117,107,177,
,,,,6,K,84,39,143,
Purples,7,seq,,1,B,242,240,247,
,,,,2,D,218,218,235,
,,,,3,F,188,189,220,
,,,,4,G,158,154,200,
,,,,5,H,128,125,186,
,,,,6,J,106,81,163,
,,,,7,L,74,20,134,
Purples,8,seq,,1,A,252,251,253,
,,,,2,C,239,237,245,
,,,,3,D,218,218,235,
,,,,4,F,188,189,220,
,,,,5,G,158,154,200,
,,,,6,H,128,125,186,
,,,,7,J,106,81,163,
,,,,8,L,74,20,134,
Purples,9,seq,,1,A,252,251,253,
,,,,2,C,239,237,245,
,,,,3,D,218,218,235,
,,,,4,F,188,189,220,
,,,,5,G,158,154,200,
,,,,6,H,128,125,186,
,,,,7,J,106,81,163,
,,,,8,K,84,39,143,
,,,,9,M,63,0,125,
RdBu,3,div,2,1,E,239,138,98,Diverging
,,,,2,H,247,247,247,
,,,,3,K,103,169,207,
RdBu,4,div,2.5,1,C,202,0,32,
,,,,2,F,244,165,130,
,,,,3,J,146,197,222,
,,,,4,M,5,113,176,
RdBu,5,div,3,1,C,202,0,32,
,,,,2,F,244,165,130,
,,,,3,H,247,247,247,
,,,,4,J,146,197,222,
,,,,5,M,5,113,176,
RdBu,6,div,3.5,1,B,178,24,43,
,,,,2,E,239,138,98,
,,,,3,G,253,219,199,
,,,,4,I,209,229,240,
,,,,5,K,103,169,207,
,,,,6,N,33,102,172,
RdBu,7,div,4,1,B,178,24,43,
,,,,2,E,239,138,98,
,,,,3,G,253,219,199,
,,,,4,H,247,247,247,
,,,,5,I,209,229,240,
,,,,6,K,103,169,207,
,,,,7,N,33,102,172,
RdBu,8,div,4.5,1,B,178,24,43,
,,,,2,D,214,96,77,
,,,,3,F,244,165,130,
,,,,4,G,253,219,199,
,,,,5,I,209,229,240,
,,,,6,J,146,197,222,
,,,,7,L,67,147,195,
,,,,8,N,33,102,172,
RdBu,9,div,5,1,B,178,24,43,
,,,,2,D,214,96,77,
,,,,3,F,244,165,130,
,,,,4,G,253,219,199,
,,,,5,H,247,247,247,
,,,,6,I,209,229,240,
,,,,7,J,146,197,222,
,,,,8,L,67,147,195,
,,,,9,N,33,102,172,
RdBu,10,div,5.5,1,A,103,0,31,
,,,,2,B,178,24,43,
,,,,3,D,214,96,77,
,,,,4,F,244,165,130,
,,,,5,G,253,219,199,
,,,,6,I,209,229,240,
,,,,7,J,146,197,222,
,,,,8,L,67,147,195,
,,,,9,N,33,102,172,
,,,,10,O,5,48,97,
RdBu,11,div,6,1,A,103,0,31,
,,,,2,B,178,24,43,
,,,,3,D,214,96,77,
,,,,4,F,244,165,130,
,,,,5,G,253,219,199,
,,,,6,H,247,247,247,
,,,,7,I,209,229,240,
,,,,8,J,146,197,222,
,,,,9,L,67,147,195,
,,,,10,N,33,102,172,
,,,,11,O,5,48,97,
RdGy,3,div,2,1,E,239,138,98,Diverging
,,,,2,H,255,255,255,
,,,,3,K,153,153,153,
RdGy,4,div,2.5,1,C,202,0,32,
,,,,2,F,244,165,130,
,,,,3,J,186,186,186,
,,,,4,M,64,64,64,
RdGy,5,div,3,1,C,202,0,32,
,,,,2,F,244,165,130,
,,,,3,H,255,255,255,
,,,,4,J,186,186,186,
,,,,5,M,64,64,64,
RdGy,6,div,3.5,1,B,178,24,43,
,,,,2,E,239,138,98,
,,,,3,G,253,219,199,
,,,,4,I,224,224,224,
,,,,5,K,153,153,153,
,,,,6,N,77,77,77,
RdGy,7,div,4,1,B,178,24,43,
,,,,2,E,239,138,98,
,,,,3,G,253,219,199,
,,,,4,H,255,255,255,
,,,,5,I,224,224,224,
,,,,6,K,153,153,153,
,,,,7,N,77,77,77,
RdGy,8,div,4.5,1,B,178,24,43,
,,,,2,D,214,96,77,
,,,,3,F,244,165,130,
,,,,4,G,253,219,199,
,,,,5,I,224,224,224,
,,,,6,J,186,186,186,
,,,,7,L,135,135,135,
,,,,8,N,77,77,77,
RdGy,9,div,5,1,B,178,24,43,
,,,,2,D,214,96,77,
,,,,3,F,244,165,130,
,,,,4,G,253,219,199,
,,,,5,H,255,255,255,
,,,,6,I,224,224,224,
,,,,7,J,186,186,186,
,,,,8,L,135,135,135,
,,,,9,N,77,77,77,
RdGy,10,div,5.5,1,A,103,0,31,
,,,,2,B,178,24,43,
,,,,3,D,214,96,77,
,,,,4,F,244,165,130,
,,,,5,G,253,219,199,
,,,,6,I,224,224,224,
,,,,7,J,186,186,186,
,,,,8,L,135,135,135,
,,,,9,N,77,77,77,
,,,,10,O,26,26,26,
RdGy,11,div,6,1,A,103,0,31,
,,,,2,B,178,24,43,
,,,,3,D,214,96,77,
,,,,4,F,244,165,130,
,,,,5,G,253,219,199,
,,,,6,H,255,255,255,
,,,,7,I,224,224,224,
,,,,8,J,186,186,186,
,,,,9,L,135,135,135,
,,,,10,N,77,77,77,
,,,,11,O,26,26,26,
RdPu,3,seq,,1,C,253,224,221,Sequential
,,,,2,F,250,159,181,
,,,,3,I,197,27,138,
RdPu,4,seq,,1,B,254,235,226,
,,,,2,E,251,180,185,
,,,,3,G,247,104,161,
,,,,4,J,174,1,126,
RdPu,5,seq,,1,B,254,235,226,
,,,,2,E,251,180,185,
,,,,3,G,247,104,161,
,,,,4,I,197,27,138,
,,,,5,K,122,1,119,
RdPu,6,seq,,1,B,254,235,226,
,,,,2,D,252,197,192,
,,,,3,F,250,159,181,
,,,,4,G,247,104,161,
,,,,5,I,197,27,138,
,,,,6,K,122,1,119,
RdPu,7,seq,,1,B,254,235,226,
,,,,2,D,252,197,192,
,,,,3,F,250,159,181,
,,,,4,G,247,104,161,
,,,,5,H,221,52,151,
,,,,6,J,174,1,126,
,,,,7,L,122,1,119,
RdPu,8,seq,,1,A,255,247,243,
,,,,2,C,253,224,221,
,,,,3,D,252,197,192,
,,,,4,F,250,159,181,
,,,,5,G,247,104,161,
,,,,6,H,221,52,151,
,,,,7,J,174,1,126,
,,,,8,L,122,1,119,
RdPu,9,seq,,1,A,255,247,243,
,,,,2,C,253,224,221,
,,,,3,D,252,197,192,
,,,,4,F,250,159,181,
,,,,5,G,247,104,161,
,,,,6,H,221,52,151,
,,,,7,J,174,1,126,
,,,,8,K,122,1,119,
,,,,9,M,73,0,106,
Reds,3,seq,,1,C,254,224,210,Sequential
,,,,2,F,252,146,114,
,,,,3,I,222,45,38,
Reds,4,seq,,1,B,254,229,217,
,,,,2,E,252,174,145,
,,,,3,G,251,106,74,
,,,,4,J,203,24,29,
Reds,5,seq,,1,B,254,229,217,
,,,,2,E,252,174,145,
,,,,3,G,251,106,74,
,,,,4,I,222,45,38,
,,,,5,K,165,15,21,
Reds,6,seq,,1,B,254,229,217,
,,,,2,D,252,187,161,
,,,,3,F,252,146,114,
,,,,4,G,251,106,74,
,,,,5,I,222,45,38,
,,,,6,K,165,15,21,
Reds,7,seq,,1,B,254,229,217,
,,,,2,D,252,187,161,
,,,,3,F,252,146,114,
,,,,4,G,251,106,74,
,,,,5,H,239,59,44,
,,,,6,J,203,24,29,
,,,,7,L,153,0,13,
Reds,8,seq,,1,A,255,245,240,
,,,,2,C,254,224,210,
,,,,3,D,252,187,161,
,,,,4,F,252,146,114,
,,,,5,G,251,106,74,
,,,,6,H,239,59,44,
,,,,7,J,203,24,29,
,,,,8,L,153,0,13,
Reds,9,seq,,1,A,255,245,240,
,,,,2,C,254,224,210,
,,,,3,D,252,187,161,
,,,,4,F,252,146,114,
,,,,5,G,251,106,74,
,,,,6,H,239,59,44,
,,,,7,J,203,24,29,
,,,,8,K,165,15,21,
,,,,9,M,103,0,13,
RdYlBu,3,div,2,1,E,252,141,89,Diverging
,,,,2,H,255,255,191,
,,,,3,K,145,191,219,
RdYlBu,4,div,2.5,1,C,215,25,28,
,,,,2,F,253,174,97,
,,,,3,J,171,217,233,
,,,,4,M,44,123,182,
RdYlBu,5,div,3,1,C,215,25,28,
,,,,2,F,253,174,97,
,,,,3,H,255,255,191,
,,,,4,J,171,217,233,
,,,,5,M,44,123,182,
RdYlBu,6,div,3.5,1,B,215,48,39,
,,,,2,E,252,141,89,
,,,,3,G,254,224,144,
,,,,4,I,224,243,248,
,,,,5,K,145,191,219,
,,,,6,N,69,117,180,
RdYlBu,7,div,4,1,B,215,48,39,
,,,,2,E,252,141,89,
,,,,3,G,254,224,144,
,,,,4,H,255,255,191,
,,,,5,I,224,243,248,
,,,,6,K,145,191,219,
,,,,7,N,69,117,180,
RdYlBu,8,div,4.5,1,B,215,48,39,
,,,,2,D,244,109,67,
,,,,3,F,253,174,97,
,,,,4,G,254,224,144,
,,,,5,I,224,243,248,
,,,,6,J,171,217,233,
,,,,7,L,116,173,209,
,,,,8,N,69,117,180,
RdYlBu,9,div,5,1,B,215,48,39,
,,,,2,D,244,109,67,
,,,,3,F,253,174,97,
,,,,4,G,254,224,144,
,,,,5,H,255,255,191,
,,,,6,I,224,243,248,
,,,,7,J,171,217,233,
,,,,8,L,116,173,209,
,,,,9,N,69,117,180,
RdYlBu,10,div,5.5,1,A,165,0,38,
,,,,2,B,215,48,39,
,,,,3,D,244,109,67,
,,,,4,F,253,174,97,
,,,,5,G,254,224,144,
,,,,6,I,224,243,248,
,,,,7,J,171,217,233,
,,,,8,L,116,173,209,
,,,,9,N,69,117,180,
,,,,10,O,49,54,149,
RdYlBu,11,div,6,1,A,165,0,38,
,,,,2,B,215,48,39,
,,,,3,D,244,109,67,
,,,,4,F,253,174,97,
,,,,5,G,254,224,144,
,,,,6,H,255,255,191,
,,,,7,I,224,243,248,
,,,,8,J,171,217,233,
,,,,9,L,116,173,209,
,,,,10,N,69,117,180,
,,,,11,O,49,54,149,
RdYlGn,3,div,2,1,E,252,141,89,Diverging
,,,,2,H,255,255,191,
,,,,3,K,145,207,96,
RdYlGn,4,div,2.5,1,C,215,25,28,
,,,,2,F,253,174,97,
,,,,3,J,166,217,106,
,,,,4,M,26,150,65,
RdYlGn,5,div,3,1,C,215,25,28,
,,,,2,F,253,174,97,
,,,,3,H,255,255,191,
,,,,4,J,166,217,106,
,,,,5,M,26,150,65,
RdYlGn,6,div,3.5,1,B,215,48,39,
,,,,2,E,252,141,89,
,,,,3,G,254,224,139,
,,,,4,I,217,239,139,
,,,,5,K,145,207,96,
,,,,6,N,26,152,80,
RdYlGn,7,div,4,1,B,215,48,39,
,,,,2,E,252,141,89,
,,,,3,G,254,224,139,
,,,,4,H,255,255,191,
,,,,5,I,217,239,139,
,,,,6,K,145,207,96,
,,,,7,N,26,152,80,
RdYlGn,8,div,4.5,1,B,215,48,39,
,,,,2,D,244,109,67,
,,,,3,F,253,174,97,
,,,,4,G,254,224,139,
,,,,5,I,217,239,139,
,,,,6,J,166,217,106,
,,,,7,L,102,189,99,
,,,,8,N,26,152,80,
RdYlGn,9,div,5,1,B,215,48,39,
,,,,2,D,244,109,67,
,,,,3,F,253,174,97,
,,,,4,G,254,224,139,
,,,,5,H,255,255,191,
,,,,6,I,217,239,139,
,,,,7,J,166,217,106,
,,,,8,L,102,189,99,
,,,,9,N,26,152,80,
RdYlGn,10,div,5.5,1,A,165,0,38,
,,,,2,B,215,48,39,
,,,,3,D,244,109,67,
,,,,4,F,253,174,97,
,,,,5,G,254,224,139,
,,,,6,I,217,239,139,
,,,,7,J,166,217,106,
,,,,8,L,102,189,99,
,,,,9,N,26,152,80,
,,,,10,O,0,104,55,
RdYlGn,11,div,6,1,A,165,0,38,
,,,,2,B,215,48,39,
,,,,3,D,244,109,67,
,,,,4,F,253,174,97,
,,,,5,G,254,224,139,
,,,,6,H,255,255,191,
,,,,7,I,217,239,139,
,,,,8,J,166,217,106,
,,,,9,L,102,189,99,
,,,,10,N,26,152,80,
,,,,11,O,0,104,55,
Set1,3,qual,,1,A,228,26,28,Qualitative
,,,,2,B,55,126,184,
,,,,3,C,77,175,74,
Set1,4,qual,,1,A,228,26,28,
,,,,2,B,55,126,184,
,,,,3,C,77,175,74,
,,,,4,D,152,78,163,
Set1,5,qual,,1,A,228,26,28,
,,,,2,B,55,126,184,
,,,,3,C,77,175,74,
,,,,4,D,152,78,163,
,,,,5,E,255,127,0,
Set1,6,qual,,1,A,228,26,28,
,,,,2,B,55,126,184,
,,,,3,C,77,175,74,
,,,,4,D,152,78,163,
,,,,5,E,255,127,0,
,,,,6,F,255,255,51,
Set1,7,qual,,1,A,228,26,28,
,,,,2,B,55,126,184,
,,,,3,C,77,175,74,
,,,,4,D,152,78,163,
,,,,5,E,255,127,0,
,,,,6,F,255,255,51,
,,,,7,G,166,86,40,
Set1,8,qual,,1,A,228,26,28,
,,,,2,B,55,126,184,
,,,,3,C,77,175,74,
,,,,4,D,152,78,163,
,,,,5,E,255,127,0,
,,,,6,F,255,255,51,
,,,,7,G,166,86,40,
,,,,8,H,247,129,191,
Set1,9,qual,,1,A,228,26,28,
,,,,2,B,55,126,184,
,,,,3,C,77,175,74,
,,,,4,D,152,78,163,
,,,,5,E,255,127,0,
,,,,6,F,255,255,51,
,,,,7,G,166,86,40,
,,,,8,H,247,129,191,
,,,,9,I,153,153,153,
Set2,3,qual,,1,A,102,194,165,Qualitative
,,,,2,B,252,141,98,
,,,,3,C,141,160,203,
Set2,4,qual,,1,A,102,194,165,
,,,,2,B,252,141,98,
,,,,3,C,141,160,203,
,,,,4,D,231,138,195,
Set2,5,qual,,1,A,102,194,165,
,,,,2,B,252,141,98,
,,,,3,C,141,160,203,
,,,,4,D,231,138,195,
,,,,5,E,166,216,84,
Set2,6,qual,,1,A,102,194,165,
,,,,2,B,252,141,98,
,,,,3,C,141,160,203,
,,,,4,D,231,138,195,
,,,,5,E,166,216,84,
,,,,6,F,255,217,47,
Set2,7,qual,,1,A,102,194,165,
,,,,2,B,252,141,98,
,,,,3,C,141,160,203,
,,,,4,D,231,138,195,
,,,,5,E,166,216,84,
,,,,6,F,255,217,47,
,,,,7,G,229,196,148,
Set2,8,qual,,1,A,102,194,165,
,,,,2,B,252,141,98,
,,,,3,C,141,160,203,
,,,,4,D,231,138,195,
,,,,5,E,166,216,84,
,,,,6,F,255,217,47,
,,,,7,G,229,196,148,
,,,,8,H,179,179,179,
Set3,3,qual,,1,A,141,211,199,Qualitative
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
Set3,4,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
Set3,5,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
,,,,5,E,128,177,211,
Set3,6,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
,,,,5,E,128,177,211,
,,,,6,F,253,180,98,
Set3,7,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
,,,,5,E,128,177,211,
,,,,6,F,253,180,98,
,,,,7,G,179,222,105,
Set3,8,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
,,,,5,E,128,177,211,
,,,,6,F,253,180,98,
,,,,7,G,179,222,105,
,,,,8,H,252,205,229,
Set3,9,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
,,,,5,E,128,177,211,
,,,,6,F,253,180,98,
,,,,7,G,179,222,105,
,,,,8,H,252,205,229,
,,,,9,I,217,217,217,
Set3,10,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
,,,,5,E,128,177,211,
,,,,6,F,253,180,98,
,,,,7,G,179,222,105,
,,,,8,H,252,205,229,
,,,,9,I,217,217,217,
,,,,10,J,188,128,189,
Set3,11,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
,,,,5,E,128,177,211,
,,,,6,F,253,180,98,
,,,,7,G,179,222,105,
,,,,8,H,252,205,229,
,,,,9,I,217,217,217,
,,,,10,J,188,128,189,
,,,,11,K,204,235,197,
Set3,12,qual,,1,A,141,211,199,
,,,,2,B,255,255,179,
,,,,3,C,190,186,218,
,,,,4,D,251,128,114,
,,,,5,E,128,177,211,
,,,,6,F,253,180,98,
,,,,7,G,179,222,105,
,,,,8,H,252,205,229,
,,,,9,I,217,217,217,
,,,,10,J,188,128,189,
,,,,11,K,204,235,197,
,,,,12,L,255,237,111,
Spectral,3,div,2,1,E,252,141,89,Diverging
,,,,2,H,255,255,191,
,,,,3,K,153,213,148,
Spectral,4,div,2.5,1,C,215,25,28,
,,,,2,F,253,174,97,
,,,,3,J,171,221,164,
,,,,4,M,43,131,186,
Spectral,5,div,3,1,C,215,25,28,
,,,,2,F,253,174,97,
,,,,3,H,255,255,191,
,,,,4,J,171,221,164,
,,,,5,M,43,131,186,
Spectral,6,div,3.5,1,B,213,62,79,
,,,,2,E,252,141,89,
,,,,3,G,254,224,139,
,,,,4,I,230,245,152,
,,,,5,K,153,213,148,
,,,,6,N,50,136,189,
Spectral,7,div,4,1,B,213,62,79,
,,,,2,E,252,141,89,
,,,,3,G,254,224,139,
,,,,4,H,255,255,191,
,,,,5,I,230,245,152,
,,,,6,K,153,213,148,
,,,,7,N,50,136,189,
Spectral,8,div,4.5,1,B,213,62,79,
,,,,2,D,244,109,67,
,,,,3,F,253,174,97,
,,,,4,G,254,224,139,
,,,,5,I,230,245,152,
,,,,6,J,171,221,164,
,,,,7,L,102,194,165,
,,,,8,N,50,136,189,
Spectral,9,div,5,1,B,213,62,79,
,,,,2,D,244,109,67,
,,,,3,F,253,174,97,
,,,,4,G,254,224,139,
,,,,5,H,255,255,191,
,,,,6,I,230,245,152,
,,,,7,J,171,221,164,
,,,,8,L,102,194,165,
,,,,9,N,50,136,189,
Spectral,10,div,5.5,1,A,158,1,66,
,,,,2,B,213,62,79,
,,,,3,D,244,109,67,
,,,,4,F,253,174,97,
,,,,5,G,254,224,139,
,,,,6,I,230,245,152,
,,,,7,J,171,221,164,
,,,,8,L,102,194,165,
,,,,9,N,50,136,189,
,,,,10,O,94,79,162,
Spectral,11,div,6,1,A,158,1,66,
,,,,2,B,213,62,79,
,,,,3,D,244,109,67,
,,,,4,F,253,174,97,
,,,,5,G,254,224,139,
,,,,6,H,255,255,191,
,,,,7,I,230,245,152,
,,,,8,J,171,221,164,
,,,,9,L,102,194,165,
,,,,10,N,50,136,189,
,,,,11,O,94,79,162,
YlGn,3,seq,,1,C,247,252,185,Sequential
,,,,2,F,173,221,142,
,,,,3,I,49,163,84,
YlGn,4,seq,,1,B,255,255,204,
,,,,2,E,194,230,153,
,,,,3,G,120,198,121,
,,,,4,J,35,132,67,
YlGn,5,seq,,1,B,255,255,204,
,,,,2,E,194,230,153,
,,,,3,G,120,198,121,
,,,,4,I,49,163,84,
,,,,5,K,0,104,55,
YlGn,6,seq,,1,B,255,255,204,
,,,,2,D,217,240,163,
,,,,3,F,173,221,142,
,,,,4,G,120,198,121,
,,,,5,I,49,163,84,
,,,,6,K,0,104,55,
YlGn,7,seq,,1,B,255,255,204,
,,,,2,D,217,240,163,
,,,,3,F,173,221,142,
,,,,4,G,120,198,121,
,,,,5,H,65,171,93,
,,,,6,J,35,132,67,
,,,,7,L,0,90,50,
YlGn,8,seq,,1,A,255,255,229,
,,,,2,C,247,252,185,
,,,,3,D,217,240,163,
,,,,4,F,173,221,142,
,,,,5,G,120,198,121,
,,,,6,H,65,171,93,
,,,,7,J,35,132,67,
,,,,8,L,0,90,50,
YlGn,9,seq,,1,A,255,255,229,
,,,,2,C,247,252,185,
,,,,3,D,217,240,163,
,,,,4,F,173,221,142,
,,,,5,G,120,198,121,
,,,,6,H,65,171,93,
,,,,7,J,35,132,67,
,,,,8,K,0,104,55,
,,,,9,M,0,69,41,
YlGnBu,3,seq,,1,C,237,248,177,Sequential
,,,,2,F,127,205,187,
,,,,3,I,44,127,184,
YlGnBu,4,seq,,1,B,255,255,204,
,,,,2,E,161,218,180,
,,,,3,G,65,182,196,
,,,,4,J,34,94,168,
YlGnBu,5,seq,,1,B,255,255,204,
,,,,2,E,161,218,180,
,,,,3,G,65,182,196,
,,,,4,I,44,127,184,
,,,,5,K,37,52,148,
YlGnBu,6,seq,,1,B,255,255,204,
,,,,2,D,199,233,180,
,,,,3,F,127,205,187,
,,,,4,G,65,182,196,
,,,,5,I,44,127,184,
,,,,6,K,37,52,148,
YlGnBu,7,seq,,1,B,255,255,204,
,,,,2,D,199,233,180,
,,,,3,F,127,205,187,
,,,,4,G,65,182,196,
,,,,5,H,29,145,192,
,,,,6,J,34,94,168,
,,,,7,L,12,44,132,
YlGnBu,8,seq,,1,A,255,255,217,
,,,,2,C,237,248,177,
,,,,3,D,199,233,180,
,,,,4,F,127,205,187,
,,,,5,G,65,182,196,
,,,,6,H,29,145,192,
,,,,7,J,34,94,168,
,,,,8,L,12,44,132,
YlGnBu,9,seq,,1,A,255,255,217,
,,,,2,C,237,248,177,
,,,,3,D,199,233,180,
,,,,4,F,127,205,187,
,,,,5,G,65,182,196,
,,,,6,H,29,145,192,
,,,,7,J,34,94,168,
,,,,8,K,37,52,148,
,,,,9,M,8,29,88,
YlOrBr,3,seq,,1,C,255,247,188,Sequential
,,,,2,F,254,196,79,
,,,,3,I,217,95,14,
YlOrBr,4,seq,,1,B,255,255,212,
,,,,2,E,254,217,142,
,,,,3,G,254,153,41,
,,,,4,J,204,76,2,
YlOrBr,5,seq,,1,B,255,255,212,
,,,,2,E,254,217,142,
,,,,3,G,254,153,41,
,,,,4,I,217,95,14,
,,,,5,K,153,52,4,
YlOrBr,6,seq,,1,B,255,255,212,
,,,,2,D,254,227,145,
,,,,3,F,254,196,79,
,,,,4,G,254,153,41,
,,,,5,I,217,95,14,
,,,,6,K,153,52,4,
YlOrBr,7,seq,,1,B,255,255,212,
,,,,2,D,254,227,145,
,,,,3,F,254,196,79,
,,,,4,G,254,153,41,
,,,,5,H,236,112,20,
,,,,6,J,204,76,2,
,,,,7,L,140,45,4,
YlOrBr,8,seq,,1,A,255,255,229,
,,,,2,C,255,247,188,
,,,,3,D,254,227,145,
,,,,4,F,254,196,79,
,,,,5,G,254,153,41,
,,,,6,H,236,112,20,
,,,,7,J,204,76,2,
,,,,8,L,140,45,4,
YlOrBr,9,seq,,1,A,255,255,229,
,,,,2,C,255,247,188,
,,,,3,D,254,227,145,
,,,,4,F,254,196,79,
,,,,5,G,254,153,41,
,,,,6,H,236,112,20,
,,,,7,J,204,76,2,
,,,,8,K,153,52,4,
,,,,9,M,102,37,6,
YlOrRd,3,seq,,1,C,255,237,160,Sequential
,,,,2,F,254,178,76,
,,,,3,I,240,59,32,
YlOrRd,4,seq,,1,B,255,255,178,
,,,,2,E,254,204,92,
,,,,3,G,253,141,60,
,,,,4,J,227,26,28,
YlOrRd,5,seq,,1,B,255,255,178,
,,,,2,E,254,204,92,
,,,,3,G,253,141,60,
,,,,4,I,240,59,32,
,,,,5,K,189,0,38,
YlOrRd,6,seq,,1,B,255,255,178,
,,,,2,D,254,217,118,
,,,,3,F,254,178,76,
,,,,4,G,253,141,60,
,,,,5,I,240,59,32,
,,,,6,K,189,0,38,
YlOrRd,7,seq,,1,B,255,255,178,
,,,,2,D,254,217,118,
,,,,3,F,254,178,76,
,,,,4,G,253,141,60,
,,,,5,H,252,78,42,
,,,,6,J,227,26,28,
,,,,7,L,177,0,38,
YlOrRd,8,seq,,1,A,255,255,204,
,,,,2,C,255,237,160,
,,,,3,D,254,217,118,
,,,,4,F,254,178,76,
,,,,5,G,253,141,60,
,,,,6,H,252,78,42,
,,,,7,J,227,26,28,
,,,,8,L,177,0,38,
YlOrRd,9,seq,,1,A,255,255,204,
,,,,2,C,255,237,160,
,,,,3,D,254,217,118,
,,,,4,F,254,178,76,
,,,,5,G,253,141,60,
,,,,6,H,252,78,42,
,,,,7,J,227,26,28,
,,,,8,K,189,0,38,
,,,,9,M,128,0,38,
palettable-3.3.0/palettable/colorbrewer/data/colorbrewer_all_schemes.json 0000644 0000765 0000024 00000315166 12475521673 030114 0 ustar jiffyclub staff 0000000 0000000 {
"Sequential": {
"Blues": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
222,
235,
247
],
[
158,
202,
225
],
[
49,
130,
189
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
239,
243,
255
],
[
189,
215,
231
],
[
107,
174,
214
],
[
33,
113,
181
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
239,
243,
255
],
[
189,
215,
231
],
[
107,
174,
214
],
[
49,
130,
189
],
[
8,
81,
156
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
239,
243,
255
],
[
198,
219,
239
],
[
158,
202,
225
],
[
107,
174,
214
],
[
49,
130,
189
],
[
8,
81,
156
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
239,
243,
255
],
[
198,
219,
239
],
[
158,
202,
225
],
[
107,
174,
214
],
[
66,
146,
198
],
[
33,
113,
181
],
[
8,
69,
148
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
247,
251,
255
],
[
222,
235,
247
],
[
198,
219,
239
],
[
158,
202,
225
],
[
107,
174,
214
],
[
66,
146,
198
],
[
33,
113,
181
],
[
8,
69,
148
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
247,
251,
255
],
[
222,
235,
247
],
[
198,
219,
239
],
[
158,
202,
225
],
[
107,
174,
214
],
[
66,
146,
198
],
[
33,
113,
181
],
[
8,
81,
156
],
[
8,
48,
107
]
]
}
},
"BuGn": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
229,
245,
249
],
[
153,
216,
201
],
[
44,
162,
95
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
237,
248,
251
],
[
178,
226,
226
],
[
102,
194,
164
],
[
35,
139,
69
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
237,
248,
251
],
[
178,
226,
226
],
[
102,
194,
164
],
[
44,
162,
95
],
[
0,
109,
44
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
237,
248,
251
],
[
204,
236,
230
],
[
153,
216,
201
],
[
102,
194,
164
],
[
44,
162,
95
],
[
0,
109,
44
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
237,
248,
251
],
[
204,
236,
230
],
[
153,
216,
201
],
[
102,
194,
164
],
[
65,
174,
118
],
[
35,
139,
69
],
[
0,
88,
36
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
247,
252,
253
],
[
229,
245,
249
],
[
204,
236,
230
],
[
153,
216,
201
],
[
102,
194,
164
],
[
65,
174,
118
],
[
35,
139,
69
],
[
0,
88,
36
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
247,
252,
253
],
[
229,
245,
249
],
[
204,
236,
230
],
[
153,
216,
201
],
[
102,
194,
164
],
[
65,
174,
118
],
[
35,
139,
69
],
[
0,
109,
44
],
[
0,
68,
27
]
]
}
},
"BuPu": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
224,
236,
244
],
[
158,
188,
218
],
[
136,
86,
167
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
237,
248,
251
],
[
179,
205,
227
],
[
140,
150,
198
],
[
136,
65,
157
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
237,
248,
251
],
[
179,
205,
227
],
[
140,
150,
198
],
[
136,
86,
167
],
[
129,
15,
124
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
237,
248,
251
],
[
191,
211,
230
],
[
158,
188,
218
],
[
140,
150,
198
],
[
136,
86,
167
],
[
129,
15,
124
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
237,
248,
251
],
[
191,
211,
230
],
[
158,
188,
218
],
[
140,
150,
198
],
[
140,
107,
177
],
[
136,
65,
157
],
[
110,
1,
107
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
247,
252,
253
],
[
224,
236,
244
],
[
191,
211,
230
],
[
158,
188,
218
],
[
140,
150,
198
],
[
140,
107,
177
],
[
136,
65,
157
],
[
110,
1,
107
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
247,
252,
253
],
[
224,
236,
244
],
[
191,
211,
230
],
[
158,
188,
218
],
[
140,
150,
198
],
[
140,
107,
177
],
[
136,
65,
157
],
[
129,
15,
124
],
[
77,
0,
75
]
]
}
},
"GnBu": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
224,
243,
219
],
[
168,
221,
181
],
[
67,
162,
202
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
240,
249,
232
],
[
186,
228,
188
],
[
123,
204,
196
],
[
43,
140,
190
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
240,
249,
232
],
[
186,
228,
188
],
[
123,
204,
196
],
[
67,
162,
202
],
[
8,
104,
172
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
240,
249,
232
],
[
204,
235,
197
],
[
168,
221,
181
],
[
123,
204,
196
],
[
67,
162,
202
],
[
8,
104,
172
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
240,
249,
232
],
[
204,
235,
197
],
[
168,
221,
181
],
[
123,
204,
196
],
[
78,
179,
211
],
[
43,
140,
190
],
[
8,
88,
158
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
247,
252,
240
],
[
224,
243,
219
],
[
204,
235,
197
],
[
168,
221,
181
],
[
123,
204,
196
],
[
78,
179,
211
],
[
43,
140,
190
],
[
8,
88,
158
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
247,
252,
240
],
[
224,
243,
219
],
[
204,
235,
197
],
[
168,
221,
181
],
[
123,
204,
196
],
[
78,
179,
211
],
[
43,
140,
190
],
[
8,
104,
172
],
[
8,
64,
129
]
]
}
},
"Greens": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
229,
245,
224
],
[
161,
217,
155
],
[
49,
163,
84
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
237,
248,
233
],
[
186,
228,
179
],
[
116,
196,
118
],
[
35,
139,
69
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
237,
248,
233
],
[
186,
228,
179
],
[
116,
196,
118
],
[
49,
163,
84
],
[
0,
109,
44
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
237,
248,
233
],
[
199,
233,
192
],
[
161,
217,
155
],
[
116,
196,
118
],
[
49,
163,
84
],
[
0,
109,
44
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
237,
248,
233
],
[
199,
233,
192
],
[
161,
217,
155
],
[
116,
196,
118
],
[
65,
171,
93
],
[
35,
139,
69
],
[
0,
90,
50
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
247,
252,
245
],
[
229,
245,
224
],
[
199,
233,
192
],
[
161,
217,
155
],
[
116,
196,
118
],
[
65,
171,
93
],
[
35,
139,
69
],
[
0,
90,
50
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
247,
252,
245
],
[
229,
245,
224
],
[
199,
233,
192
],
[
161,
217,
155
],
[
116,
196,
118
],
[
65,
171,
93
],
[
35,
139,
69
],
[
0,
109,
44
],
[
0,
68,
27
]
]
}
},
"Greys": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
240,
240,
240
],
[
189,
189,
189
],
[
99,
99,
99
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
247,
247,
247
],
[
204,
204,
204
],
[
150,
150,
150
],
[
82,
82,
82
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
247,
247,
247
],
[
204,
204,
204
],
[
150,
150,
150
],
[
99,
99,
99
],
[
37,
37,
37
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
247,
247,
247
],
[
217,
217,
217
],
[
189,
189,
189
],
[
150,
150,
150
],
[
99,
99,
99
],
[
37,
37,
37
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
247,
247,
247
],
[
217,
217,
217
],
[
189,
189,
189
],
[
150,
150,
150
],
[
115,
115,
115
],
[
82,
82,
82
],
[
37,
37,
37
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
255,
255
],
[
240,
240,
240
],
[
217,
217,
217
],
[
189,
189,
189
],
[
150,
150,
150
],
[
115,
115,
115
],
[
82,
82,
82
],
[
37,
37,
37
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
255,
255
],
[
240,
240,
240
],
[
217,
217,
217
],
[
189,
189,
189
],
[
150,
150,
150
],
[
115,
115,
115
],
[
82,
82,
82
],
[
37,
37,
37
],
[
0,
0,
0
]
]
}
},
"Oranges": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
254,
230,
206
],
[
253,
174,
107
],
[
230,
85,
13
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
254,
237,
222
],
[
253,
190,
133
],
[
253,
141,
60
],
[
217,
71,
1
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
254,
237,
222
],
[
253,
190,
133
],
[
253,
141,
60
],
[
230,
85,
13
],
[
166,
54,
3
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
254,
237,
222
],
[
253,
208,
162
],
[
253,
174,
107
],
[
253,
141,
60
],
[
230,
85,
13
],
[
166,
54,
3
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
254,
237,
222
],
[
253,
208,
162
],
[
253,
174,
107
],
[
253,
141,
60
],
[
241,
105,
19
],
[
217,
72,
1
],
[
140,
45,
4
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
245,
235
],
[
254,
230,
206
],
[
253,
208,
162
],
[
253,
174,
107
],
[
253,
141,
60
],
[
241,
105,
19
],
[
217,
72,
1
],
[
140,
45,
4
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
245,
235
],
[
254,
230,
206
],
[
253,
208,
162
],
[
253,
174,
107
],
[
253,
141,
60
],
[
241,
105,
19
],
[
217,
72,
1
],
[
166,
54,
3
],
[
127,
39,
4
]
]
}
},
"OrRd": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
254,
232,
200
],
[
253,
187,
132
],
[
227,
74,
51
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
254,
240,
217
],
[
253,
204,
138
],
[
252,
141,
89
],
[
215,
48,
31
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
254,
240,
217
],
[
253,
204,
138
],
[
252,
141,
89
],
[
227,
74,
51
],
[
179,
0,
0
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
254,
240,
217
],
[
253,
212,
158
],
[
253,
187,
132
],
[
252,
141,
89
],
[
227,
74,
51
],
[
179,
0,
0
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
254,
240,
217
],
[
253,
212,
158
],
[
253,
187,
132
],
[
252,
141,
89
],
[
239,
101,
72
],
[
215,
48,
31
],
[
153,
0,
0
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
247,
236
],
[
254,
232,
200
],
[
253,
212,
158
],
[
253,
187,
132
],
[
252,
141,
89
],
[
239,
101,
72
],
[
215,
48,
31
],
[
153,
0,
0
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
247,
236
],
[
254,
232,
200
],
[
253,
212,
158
],
[
253,
187,
132
],
[
252,
141,
89
],
[
239,
101,
72
],
[
215,
48,
31
],
[
179,
0,
0
],
[
127,
0,
0
]
]
}
},
"PuBu": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
236,
231,
242
],
[
166,
189,
219
],
[
43,
140,
190
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
241,
238,
246
],
[
189,
201,
225
],
[
116,
169,
207
],
[
5,
112,
176
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
241,
238,
246
],
[
189,
201,
225
],
[
116,
169,
207
],
[
43,
140,
190
],
[
4,
90,
141
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
241,
238,
246
],
[
208,
209,
230
],
[
166,
189,
219
],
[
116,
169,
207
],
[
43,
140,
190
],
[
4,
90,
141
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
241,
238,
246
],
[
208,
209,
230
],
[
166,
189,
219
],
[
116,
169,
207
],
[
54,
144,
192
],
[
5,
112,
176
],
[
3,
78,
123
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
247,
251
],
[
236,
231,
242
],
[
208,
209,
230
],
[
166,
189,
219
],
[
116,
169,
207
],
[
54,
144,
192
],
[
5,
112,
176
],
[
3,
78,
123
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
247,
251
],
[
236,
231,
242
],
[
208,
209,
230
],
[
166,
189,
219
],
[
116,
169,
207
],
[
54,
144,
192
],
[
5,
112,
176
],
[
4,
90,
141
],
[
2,
56,
88
]
]
}
},
"PuBuGn": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
236,
226,
240
],
[
166,
189,
219
],
[
28,
144,
153
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
246,
239,
247
],
[
189,
201,
225
],
[
103,
169,
207
],
[
2,
129,
138
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
246,
239,
247
],
[
189,
201,
225
],
[
103,
169,
207
],
[
28,
144,
153
],
[
1,
108,
89
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
246,
239,
247
],
[
208,
209,
230
],
[
166,
189,
219
],
[
103,
169,
207
],
[
28,
144,
153
],
[
1,
108,
89
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
246,
239,
247
],
[
208,
209,
230
],
[
166,
189,
219
],
[
103,
169,
207
],
[
54,
144,
192
],
[
2,
129,
138
],
[
1,
100,
80
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
247,
251
],
[
236,
226,
240
],
[
208,
209,
230
],
[
166,
189,
219
],
[
103,
169,
207
],
[
54,
144,
192
],
[
2,
129,
138
],
[
1,
100,
80
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
247,
251
],
[
236,
226,
240
],
[
208,
209,
230
],
[
166,
189,
219
],
[
103,
169,
207
],
[
54,
144,
192
],
[
2,
129,
138
],
[
1,
108,
89
],
[
1,
70,
54
]
]
}
},
"PuRd": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
231,
225,
239
],
[
201,
148,
199
],
[
221,
28,
119
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
241,
238,
246
],
[
215,
181,
216
],
[
223,
101,
176
],
[
206,
18,
86
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
241,
238,
246
],
[
215,
181,
216
],
[
223,
101,
176
],
[
221,
28,
119
],
[
152,
0,
67
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
241,
238,
246
],
[
212,
185,
218
],
[
201,
148,
199
],
[
223,
101,
176
],
[
221,
28,
119
],
[
152,
0,
67
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
241,
238,
246
],
[
212,
185,
218
],
[
201,
148,
199
],
[
223,
101,
176
],
[
231,
41,
138
],
[
206,
18,
86
],
[
145,
0,
63
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
247,
244,
249
],
[
231,
225,
239
],
[
212,
185,
218
],
[
201,
148,
199
],
[
223,
101,
176
],
[
231,
41,
138
],
[
206,
18,
86
],
[
145,
0,
63
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
247,
244,
249
],
[
231,
225,
239
],
[
212,
185,
218
],
[
201,
148,
199
],
[
223,
101,
176
],
[
231,
41,
138
],
[
206,
18,
86
],
[
152,
0,
67
],
[
103,
0,
31
]
]
}
},
"Purples": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
239,
237,
245
],
[
188,
189,
220
],
[
117,
107,
177
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
242,
240,
247
],
[
203,
201,
226
],
[
158,
154,
200
],
[
106,
81,
163
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
242,
240,
247
],
[
203,
201,
226
],
[
158,
154,
200
],
[
117,
107,
177
],
[
84,
39,
143
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
242,
240,
247
],
[
218,
218,
235
],
[
188,
189,
220
],
[
158,
154,
200
],
[
117,
107,
177
],
[
84,
39,
143
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
242,
240,
247
],
[
218,
218,
235
],
[
188,
189,
220
],
[
158,
154,
200
],
[
128,
125,
186
],
[
106,
81,
163
],
[
74,
20,
134
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
252,
251,
253
],
[
239,
237,
245
],
[
218,
218,
235
],
[
188,
189,
220
],
[
158,
154,
200
],
[
128,
125,
186
],
[
106,
81,
163
],
[
74,
20,
134
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
252,
251,
253
],
[
239,
237,
245
],
[
218,
218,
235
],
[
188,
189,
220
],
[
158,
154,
200
],
[
128,
125,
186
],
[
106,
81,
163
],
[
84,
39,
143
],
[
63,
0,
125
]
]
}
},
"RdPu": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
253,
224,
221
],
[
250,
159,
181
],
[
197,
27,
138
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
254,
235,
226
],
[
251,
180,
185
],
[
247,
104,
161
],
[
174,
1,
126
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
254,
235,
226
],
[
251,
180,
185
],
[
247,
104,
161
],
[
197,
27,
138
],
[
122,
1,
119
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
254,
235,
226
],
[
252,
197,
192
],
[
250,
159,
181
],
[
247,
104,
161
],
[
197,
27,
138
],
[
122,
1,
119
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
254,
235,
226
],
[
252,
197,
192
],
[
250,
159,
181
],
[
247,
104,
161
],
[
221,
52,
151
],
[
174,
1,
126
],
[
122,
1,
119
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
247,
243
],
[
253,
224,
221
],
[
252,
197,
192
],
[
250,
159,
181
],
[
247,
104,
161
],
[
221,
52,
151
],
[
174,
1,
126
],
[
122,
1,
119
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
247,
243
],
[
253,
224,
221
],
[
252,
197,
192
],
[
250,
159,
181
],
[
247,
104,
161
],
[
221,
52,
151
],
[
174,
1,
126
],
[
122,
1,
119
],
[
73,
0,
106
]
]
}
},
"Reds": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
254,
224,
210
],
[
252,
146,
114
],
[
222,
45,
38
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
254,
229,
217
],
[
252,
174,
145
],
[
251,
106,
74
],
[
203,
24,
29
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
254,
229,
217
],
[
252,
174,
145
],
[
251,
106,
74
],
[
222,
45,
38
],
[
165,
15,
21
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
254,
229,
217
],
[
252,
187,
161
],
[
252,
146,
114
],
[
251,
106,
74
],
[
222,
45,
38
],
[
165,
15,
21
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
254,
229,
217
],
[
252,
187,
161
],
[
252,
146,
114
],
[
251,
106,
74
],
[
239,
59,
44
],
[
203,
24,
29
],
[
153,
0,
13
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
245,
240
],
[
254,
224,
210
],
[
252,
187,
161
],
[
252,
146,
114
],
[
251,
106,
74
],
[
239,
59,
44
],
[
203,
24,
29
],
[
153,
0,
13
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
245,
240
],
[
254,
224,
210
],
[
252,
187,
161
],
[
252,
146,
114
],
[
251,
106,
74
],
[
239,
59,
44
],
[
203,
24,
29
],
[
165,
15,
21
],
[
103,
0,
13
]
]
}
},
"YlGn": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
247,
252,
185
],
[
173,
221,
142
],
[
49,
163,
84
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
194,
230,
153
],
[
120,
198,
121
],
[
35,
132,
67
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
194,
230,
153
],
[
120,
198,
121
],
[
49,
163,
84
],
[
0,
104,
55
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
217,
240,
163
],
[
173,
221,
142
],
[
120,
198,
121
],
[
49,
163,
84
],
[
0,
104,
55
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
217,
240,
163
],
[
173,
221,
142
],
[
120,
198,
121
],
[
65,
171,
93
],
[
35,
132,
67
],
[
0,
90,
50
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
255,
229
],
[
247,
252,
185
],
[
217,
240,
163
],
[
173,
221,
142
],
[
120,
198,
121
],
[
65,
171,
93
],
[
35,
132,
67
],
[
0,
90,
50
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
255,
229
],
[
247,
252,
185
],
[
217,
240,
163
],
[
173,
221,
142
],
[
120,
198,
121
],
[
65,
171,
93
],
[
35,
132,
67
],
[
0,
104,
55
],
[
0,
69,
41
]
]
}
},
"YlGnBu": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
237,
248,
177
],
[
127,
205,
187
],
[
44,
127,
184
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
161,
218,
180
],
[
65,
182,
196
],
[
34,
94,
168
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
161,
218,
180
],
[
65,
182,
196
],
[
44,
127,
184
],
[
37,
52,
148
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
199,
233,
180
],
[
127,
205,
187
],
[
65,
182,
196
],
[
44,
127,
184
],
[
37,
52,
148
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
199,
233,
180
],
[
127,
205,
187
],
[
65,
182,
196
],
[
29,
145,
192
],
[
34,
94,
168
],
[
12,
44,
132
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
255,
217
],
[
237,
248,
177
],
[
199,
233,
180
],
[
127,
205,
187
],
[
65,
182,
196
],
[
29,
145,
192
],
[
34,
94,
168
],
[
12,
44,
132
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
255,
217
],
[
237,
248,
177
],
[
199,
233,
180
],
[
127,
205,
187
],
[
65,
182,
196
],
[
29,
145,
192
],
[
34,
94,
168
],
[
37,
52,
148
],
[
8,
29,
88
]
]
}
},
"YlOrBr": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
255,
247,
188
],
[
254,
196,
79
],
[
217,
95,
14
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
255,
255,
212
],
[
254,
217,
142
],
[
254,
153,
41
],
[
204,
76,
2
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
255,
255,
212
],
[
254,
217,
142
],
[
254,
153,
41
],
[
217,
95,
14
],
[
153,
52,
4
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
255,
255,
212
],
[
254,
227,
145
],
[
254,
196,
79
],
[
254,
153,
41
],
[
217,
95,
14
],
[
153,
52,
4
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
255,
255,
212
],
[
254,
227,
145
],
[
254,
196,
79
],
[
254,
153,
41
],
[
236,
112,
20
],
[
204,
76,
2
],
[
140,
45,
4
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
255,
229
],
[
255,
247,
188
],
[
254,
227,
145
],
[
254,
196,
79
],
[
254,
153,
41
],
[
236,
112,
20
],
[
204,
76,
2
],
[
140,
45,
4
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
255,
229
],
[
255,
247,
188
],
[
254,
227,
145
],
[
254,
196,
79
],
[
254,
153,
41
],
[
236,
112,
20
],
[
204,
76,
2
],
[
153,
52,
4
],
[
102,
37,
6
]
]
}
},
"YlOrRd": {
"3": {
"NumOfColors": 3,
"Type": "seq",
"Colors": [
[
255,
237,
160
],
[
254,
178,
76
],
[
240,
59,
32
]
]
},
"4": {
"NumOfColors": 4,
"Type": "seq",
"Colors": [
[
255,
255,
178
],
[
254,
204,
92
],
[
253,
141,
60
],
[
227,
26,
28
]
]
},
"5": {
"NumOfColors": 5,
"Type": "seq",
"Colors": [
[
255,
255,
178
],
[
254,
204,
92
],
[
253,
141,
60
],
[
240,
59,
32
],
[
189,
0,
38
]
]
},
"6": {
"NumOfColors": 6,
"Type": "seq",
"Colors": [
[
255,
255,
178
],
[
254,
217,
118
],
[
254,
178,
76
],
[
253,
141,
60
],
[
240,
59,
32
],
[
189,
0,
38
]
]
},
"7": {
"NumOfColors": 7,
"Type": "seq",
"Colors": [
[
255,
255,
178
],
[
254,
217,
118
],
[
254,
178,
76
],
[
253,
141,
60
],
[
252,
78,
42
],
[
227,
26,
28
],
[
177,
0,
38
]
]
},
"8": {
"NumOfColors": 8,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
255,
237,
160
],
[
254,
217,
118
],
[
254,
178,
76
],
[
253,
141,
60
],
[
252,
78,
42
],
[
227,
26,
28
],
[
177,
0,
38
]
]
},
"9": {
"NumOfColors": 9,
"Type": "seq",
"Colors": [
[
255,
255,
204
],
[
255,
237,
160
],
[
254,
217,
118
],
[
254,
178,
76
],
[
253,
141,
60
],
[
252,
78,
42
],
[
227,
26,
28
],
[
189,
0,
38
],
[
128,
0,
38
]
]
}
}
},
"Diverging": {
"BrBG": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
216,
179,
101
],
[
245,
245,
245
],
[
90,
180,
172
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
166,
97,
26
],
[
223,
194,
125
],
[
128,
205,
193
],
[
1,
133,
113
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
166,
97,
26
],
[
223,
194,
125
],
[
245,
245,
245
],
[
128,
205,
193
],
[
1,
133,
113
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
140,
81,
10
],
[
216,
179,
101
],
[
246,
232,
195
],
[
199,
234,
229
],
[
90,
180,
172
],
[
1,
102,
94
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
140,
81,
10
],
[
216,
179,
101
],
[
246,
232,
195
],
[
245,
245,
245
],
[
199,
234,
229
],
[
90,
180,
172
],
[
1,
102,
94
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
140,
81,
10
],
[
191,
129,
45
],
[
223,
194,
125
],
[
246,
232,
195
],
[
199,
234,
229
],
[
128,
205,
193
],
[
53,
151,
143
],
[
1,
102,
94
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
140,
81,
10
],
[
191,
129,
45
],
[
223,
194,
125
],
[
246,
232,
195
],
[
245,
245,
245
],
[
199,
234,
229
],
[
128,
205,
193
],
[
53,
151,
143
],
[
1,
102,
94
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
84,
48,
5
],
[
140,
81,
10
],
[
191,
129,
45
],
[
223,
194,
125
],
[
246,
232,
195
],
[
199,
234,
229
],
[
128,
205,
193
],
[
53,
151,
143
],
[
1,
102,
94
],
[
0,
60,
48
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
84,
48,
5
],
[
140,
81,
10
],
[
191,
129,
45
],
[
223,
194,
125
],
[
246,
232,
195
],
[
245,
245,
245
],
[
199,
234,
229
],
[
128,
205,
193
],
[
53,
151,
143
],
[
1,
102,
94
],
[
0,
60,
48
]
]
}
},
"PiYG": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
233,
163,
201
],
[
247,
247,
247
],
[
161,
215,
106
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
208,
28,
139
],
[
241,
182,
218
],
[
184,
225,
134
],
[
77,
172,
38
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
208,
28,
139
],
[
241,
182,
218
],
[
247,
247,
247
],
[
184,
225,
134
],
[
77,
172,
38
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
197,
27,
125
],
[
233,
163,
201
],
[
253,
224,
239
],
[
230,
245,
208
],
[
161,
215,
106
],
[
77,
146,
33
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
197,
27,
125
],
[
233,
163,
201
],
[
253,
224,
239
],
[
247,
247,
247
],
[
230,
245,
208
],
[
161,
215,
106
],
[
77,
146,
33
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
197,
27,
125
],
[
222,
119,
174
],
[
241,
182,
218
],
[
253,
224,
239
],
[
230,
245,
208
],
[
184,
225,
134
],
[
127,
188,
65
],
[
77,
146,
33
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
197,
27,
125
],
[
222,
119,
174
],
[
241,
182,
218
],
[
253,
224,
239
],
[
247,
247,
247
],
[
230,
245,
208
],
[
184,
225,
134
],
[
127,
188,
65
],
[
77,
146,
33
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
142,
1,
82
],
[
197,
27,
125
],
[
222,
119,
174
],
[
241,
182,
218
],
[
253,
224,
239
],
[
230,
245,
208
],
[
184,
225,
134
],
[
127,
188,
65
],
[
77,
146,
33
],
[
39,
100,
25
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
142,
1,
82
],
[
197,
27,
125
],
[
222,
119,
174
],
[
241,
182,
218
],
[
253,
224,
239
],
[
247,
247,
247
],
[
230,
245,
208
],
[
184,
225,
134
],
[
127,
188,
65
],
[
77,
146,
33
],
[
39,
100,
25
]
]
}
},
"PRGn": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
175,
141,
195
],
[
247,
247,
247
],
[
127,
191,
123
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
123,
50,
148
],
[
194,
165,
207
],
[
166,
219,
160
],
[
0,
136,
55
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
123,
50,
148
],
[
194,
165,
207
],
[
247,
247,
247
],
[
166,
219,
160
],
[
0,
136,
55
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
118,
42,
131
],
[
175,
141,
195
],
[
231,
212,
232
],
[
217,
240,
211
],
[
127,
191,
123
],
[
27,
120,
55
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
118,
42,
131
],
[
175,
141,
195
],
[
231,
212,
232
],
[
247,
247,
247
],
[
217,
240,
211
],
[
127,
191,
123
],
[
27,
120,
55
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
118,
42,
131
],
[
153,
112,
171
],
[
194,
165,
207
],
[
231,
212,
232
],
[
217,
240,
211
],
[
166,
219,
160
],
[
90,
174,
97
],
[
27,
120,
55
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
118,
42,
131
],
[
153,
112,
171
],
[
194,
165,
207
],
[
231,
212,
232
],
[
247,
247,
247
],
[
217,
240,
211
],
[
166,
219,
160
],
[
90,
174,
97
],
[
27,
120,
55
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
64,
0,
75
],
[
118,
42,
131
],
[
153,
112,
171
],
[
194,
165,
207
],
[
231,
212,
232
],
[
217,
240,
211
],
[
166,
219,
160
],
[
90,
174,
97
],
[
27,
120,
55
],
[
0,
68,
27
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
64,
0,
75
],
[
118,
42,
131
],
[
153,
112,
171
],
[
194,
165,
207
],
[
231,
212,
232
],
[
247,
247,
247
],
[
217,
240,
211
],
[
166,
219,
160
],
[
90,
174,
97
],
[
27,
120,
55
],
[
0,
68,
27
]
]
}
},
"PuOr": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
241,
163,
64
],
[
247,
247,
247
],
[
153,
142,
195
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
230,
97,
1
],
[
253,
184,
99
],
[
178,
171,
210
],
[
94,
60,
153
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
230,
97,
1
],
[
253,
184,
99
],
[
247,
247,
247
],
[
178,
171,
210
],
[
94,
60,
153
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
179,
88,
6
],
[
241,
163,
64
],
[
254,
224,
182
],
[
216,
218,
235
],
[
153,
142,
195
],
[
84,
39,
136
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
179,
88,
6
],
[
241,
163,
64
],
[
254,
224,
182
],
[
247,
247,
247
],
[
216,
218,
235
],
[
153,
142,
195
],
[
84,
39,
136
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
179,
88,
6
],
[
224,
130,
20
],
[
253,
184,
99
],
[
254,
224,
182
],
[
216,
218,
235
],
[
178,
171,
210
],
[
128,
115,
172
],
[
84,
39,
136
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
179,
88,
6
],
[
224,
130,
20
],
[
253,
184,
99
],
[
254,
224,
182
],
[
247,
247,
247
],
[
216,
218,
235
],
[
178,
171,
210
],
[
128,
115,
172
],
[
84,
39,
136
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
127,
59,
8
],
[
179,
88,
6
],
[
224,
130,
20
],
[
253,
184,
99
],
[
254,
224,
182
],
[
216,
218,
235
],
[
178,
171,
210
],
[
128,
115,
172
],
[
84,
39,
136
],
[
45,
0,
75
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
127,
59,
8
],
[
179,
88,
6
],
[
224,
130,
20
],
[
253,
184,
99
],
[
254,
224,
182
],
[
247,
247,
247
],
[
216,
218,
235
],
[
178,
171,
210
],
[
128,
115,
172
],
[
84,
39,
136
],
[
45,
0,
75
]
]
}
},
"RdBu": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
239,
138,
98
],
[
247,
247,
247
],
[
103,
169,
207
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
202,
0,
32
],
[
244,
165,
130
],
[
146,
197,
222
],
[
5,
113,
176
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
202,
0,
32
],
[
244,
165,
130
],
[
247,
247,
247
],
[
146,
197,
222
],
[
5,
113,
176
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
178,
24,
43
],
[
239,
138,
98
],
[
253,
219,
199
],
[
209,
229,
240
],
[
103,
169,
207
],
[
33,
102,
172
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
178,
24,
43
],
[
239,
138,
98
],
[
253,
219,
199
],
[
247,
247,
247
],
[
209,
229,
240
],
[
103,
169,
207
],
[
33,
102,
172
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
178,
24,
43
],
[
214,
96,
77
],
[
244,
165,
130
],
[
253,
219,
199
],
[
209,
229,
240
],
[
146,
197,
222
],
[
67,
147,
195
],
[
33,
102,
172
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
178,
24,
43
],
[
214,
96,
77
],
[
244,
165,
130
],
[
253,
219,
199
],
[
247,
247,
247
],
[
209,
229,
240
],
[
146,
197,
222
],
[
67,
147,
195
],
[
33,
102,
172
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
103,
0,
31
],
[
178,
24,
43
],
[
214,
96,
77
],
[
244,
165,
130
],
[
253,
219,
199
],
[
209,
229,
240
],
[
146,
197,
222
],
[
67,
147,
195
],
[
33,
102,
172
],
[
5,
48,
97
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
103,
0,
31
],
[
178,
24,
43
],
[
214,
96,
77
],
[
244,
165,
130
],
[
253,
219,
199
],
[
247,
247,
247
],
[
209,
229,
240
],
[
146,
197,
222
],
[
67,
147,
195
],
[
33,
102,
172
],
[
5,
48,
97
]
]
}
},
"RdGy": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
239,
138,
98
],
[
255,
255,
255
],
[
153,
153,
153
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
202,
0,
32
],
[
244,
165,
130
],
[
186,
186,
186
],
[
64,
64,
64
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
202,
0,
32
],
[
244,
165,
130
],
[
255,
255,
255
],
[
186,
186,
186
],
[
64,
64,
64
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
178,
24,
43
],
[
239,
138,
98
],
[
253,
219,
199
],
[
224,
224,
224
],
[
153,
153,
153
],
[
77,
77,
77
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
178,
24,
43
],
[
239,
138,
98
],
[
253,
219,
199
],
[
255,
255,
255
],
[
224,
224,
224
],
[
153,
153,
153
],
[
77,
77,
77
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
178,
24,
43
],
[
214,
96,
77
],
[
244,
165,
130
],
[
253,
219,
199
],
[
224,
224,
224
],
[
186,
186,
186
],
[
135,
135,
135
],
[
77,
77,
77
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
178,
24,
43
],
[
214,
96,
77
],
[
244,
165,
130
],
[
253,
219,
199
],
[
255,
255,
255
],
[
224,
224,
224
],
[
186,
186,
186
],
[
135,
135,
135
],
[
77,
77,
77
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
103,
0,
31
],
[
178,
24,
43
],
[
214,
96,
77
],
[
244,
165,
130
],
[
253,
219,
199
],
[
224,
224,
224
],
[
186,
186,
186
],
[
135,
135,
135
],
[
77,
77,
77
],
[
26,
26,
26
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
103,
0,
31
],
[
178,
24,
43
],
[
214,
96,
77
],
[
244,
165,
130
],
[
253,
219,
199
],
[
255,
255,
255
],
[
224,
224,
224
],
[
186,
186,
186
],
[
135,
135,
135
],
[
77,
77,
77
],
[
26,
26,
26
]
]
}
},
"RdYlBu": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
252,
141,
89
],
[
255,
255,
191
],
[
145,
191,
219
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
215,
25,
28
],
[
253,
174,
97
],
[
171,
217,
233
],
[
44,
123,
182
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
215,
25,
28
],
[
253,
174,
97
],
[
255,
255,
191
],
[
171,
217,
233
],
[
44,
123,
182
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
215,
48,
39
],
[
252,
141,
89
],
[
254,
224,
144
],
[
224,
243,
248
],
[
145,
191,
219
],
[
69,
117,
180
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
215,
48,
39
],
[
252,
141,
89
],
[
254,
224,
144
],
[
255,
255,
191
],
[
224,
243,
248
],
[
145,
191,
219
],
[
69,
117,
180
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
215,
48,
39
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
144
],
[
224,
243,
248
],
[
171,
217,
233
],
[
116,
173,
209
],
[
69,
117,
180
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
215,
48,
39
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
144
],
[
255,
255,
191
],
[
224,
243,
248
],
[
171,
217,
233
],
[
116,
173,
209
],
[
69,
117,
180
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
165,
0,
38
],
[
215,
48,
39
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
144
],
[
224,
243,
248
],
[
171,
217,
233
],
[
116,
173,
209
],
[
69,
117,
180
],
[
49,
54,
149
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
165,
0,
38
],
[
215,
48,
39
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
144
],
[
255,
255,
191
],
[
224,
243,
248
],
[
171,
217,
233
],
[
116,
173,
209
],
[
69,
117,
180
],
[
49,
54,
149
]
]
}
},
"RdYlGn": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
252,
141,
89
],
[
255,
255,
191
],
[
145,
207,
96
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
215,
25,
28
],
[
253,
174,
97
],
[
166,
217,
106
],
[
26,
150,
65
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
215,
25,
28
],
[
253,
174,
97
],
[
255,
255,
191
],
[
166,
217,
106
],
[
26,
150,
65
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
215,
48,
39
],
[
252,
141,
89
],
[
254,
224,
139
],
[
217,
239,
139
],
[
145,
207,
96
],
[
26,
152,
80
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
215,
48,
39
],
[
252,
141,
89
],
[
254,
224,
139
],
[
255,
255,
191
],
[
217,
239,
139
],
[
145,
207,
96
],
[
26,
152,
80
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
215,
48,
39
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
139
],
[
217,
239,
139
],
[
166,
217,
106
],
[
102,
189,
99
],
[
26,
152,
80
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
215,
48,
39
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
139
],
[
255,
255,
191
],
[
217,
239,
139
],
[
166,
217,
106
],
[
102,
189,
99
],
[
26,
152,
80
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
165,
0,
38
],
[
215,
48,
39
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
139
],
[
217,
239,
139
],
[
166,
217,
106
],
[
102,
189,
99
],
[
26,
152,
80
],
[
0,
104,
55
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
165,
0,
38
],
[
215,
48,
39
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
139
],
[
255,
255,
191
],
[
217,
239,
139
],
[
166,
217,
106
],
[
102,
189,
99
],
[
26,
152,
80
],
[
0,
104,
55
]
]
}
},
"Spectral": {
"3": {
"NumOfColors": 3,
"Type": "div",
"Colors": [
[
252,
141,
89
],
[
255,
255,
191
],
[
153,
213,
148
]
]
},
"4": {
"NumOfColors": 4,
"Type": "div",
"Colors": [
[
215,
25,
28
],
[
253,
174,
97
],
[
171,
221,
164
],
[
43,
131,
186
]
]
},
"5": {
"NumOfColors": 5,
"Type": "div",
"Colors": [
[
215,
25,
28
],
[
253,
174,
97
],
[
255,
255,
191
],
[
171,
221,
164
],
[
43,
131,
186
]
]
},
"6": {
"NumOfColors": 6,
"Type": "div",
"Colors": [
[
213,
62,
79
],
[
252,
141,
89
],
[
254,
224,
139
],
[
230,
245,
152
],
[
153,
213,
148
],
[
50,
136,
189
]
]
},
"7": {
"NumOfColors": 7,
"Type": "div",
"Colors": [
[
213,
62,
79
],
[
252,
141,
89
],
[
254,
224,
139
],
[
255,
255,
191
],
[
230,
245,
152
],
[
153,
213,
148
],
[
50,
136,
189
]
]
},
"8": {
"NumOfColors": 8,
"Type": "div",
"Colors": [
[
213,
62,
79
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
139
],
[
230,
245,
152
],
[
171,
221,
164
],
[
102,
194,
165
],
[
50,
136,
189
]
]
},
"9": {
"NumOfColors": 9,
"Type": "div",
"Colors": [
[
213,
62,
79
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
139
],
[
255,
255,
191
],
[
230,
245,
152
],
[
171,
221,
164
],
[
102,
194,
165
],
[
50,
136,
189
]
]
},
"10": {
"NumOfColors": 10,
"Type": "div",
"Colors": [
[
158,
1,
66
],
[
213,
62,
79
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
139
],
[
230,
245,
152
],
[
171,
221,
164
],
[
102,
194,
165
],
[
50,
136,
189
],
[
94,
79,
162
]
]
},
"11": {
"NumOfColors": 11,
"Type": "div",
"Colors": [
[
158,
1,
66
],
[
213,
62,
79
],
[
244,
109,
67
],
[
253,
174,
97
],
[
254,
224,
139
],
[
255,
255,
191
],
[
230,
245,
152
],
[
171,
221,
164
],
[
102,
194,
165
],
[
50,
136,
189
],
[
94,
79,
162
]
]
}
}
},
"Qualitative": {
"Accent": {
"3": {
"NumOfColors": 3,
"Type": "qual",
"Colors": [
[
127,
201,
127
],
[
190,
174,
212
],
[
253,
192,
134
]
]
},
"4": {
"NumOfColors": 4,
"Type": "qual",
"Colors": [
[
127,
201,
127
],
[
190,
174,
212
],
[
253,
192,
134
],
[
255,
255,
153
]
]
},
"5": {
"NumOfColors": 5,
"Type": "qual",
"Colors": [
[
127,
201,
127
],
[
190,
174,
212
],
[
253,
192,
134
],
[
255,
255,
153
],
[
56,
108,
176
]
]
},
"6": {
"NumOfColors": 6,
"Type": "qual",
"Colors": [
[
127,
201,
127
],
[
190,
174,
212
],
[
253,
192,
134
],
[
255,
255,
153
],
[
56,
108,
176
],
[
240,
2,
127
]
]
},
"7": {
"NumOfColors": 7,
"Type": "qual",
"Colors": [
[
127,
201,
127
],
[
190,
174,
212
],
[
253,
192,
134
],
[
255,
255,
153
],
[
56,
108,
176
],
[
240,
2,
127
],
[
191,
91,
23
]
]
},
"8": {
"NumOfColors": 8,
"Type": "qual",
"Colors": [
[
127,
201,
127
],
[
190,
174,
212
],
[
253,
192,
134
],
[
255,
255,
153
],
[
56,
108,
176
],
[
240,
2,
127
],
[
191,
91,
23
],
[
102,
102,
102
]
]
}
},
"Dark2": {
"3": {
"NumOfColors": 3,
"Type": "qual",
"Colors": [
[
27,
158,
119
],
[
217,
95,
2
],
[
117,
112,
179
]
]
},
"4": {
"NumOfColors": 4,
"Type": "qual",
"Colors": [
[
27,
158,
119
],
[
217,
95,
2
],
[
117,
112,
179
],
[
231,
41,
138
]
]
},
"5": {
"NumOfColors": 5,
"Type": "qual",
"Colors": [
[
27,
158,
119
],
[
217,
95,
2
],
[
117,
112,
179
],
[
231,
41,
138
],
[
102,
166,
30
]
]
},
"6": {
"NumOfColors": 6,
"Type": "qual",
"Colors": [
[
27,
158,
119
],
[
217,
95,
2
],
[
117,
112,
179
],
[
231,
41,
138
],
[
102,
166,
30
],
[
230,
171,
2
]
]
},
"7": {
"NumOfColors": 7,
"Type": "qual",
"Colors": [
[
27,
158,
119
],
[
217,
95,
2
],
[
117,
112,
179
],
[
231,
41,
138
],
[
102,
166,
30
],
[
230,
171,
2
],
[
166,
118,
29
]
]
},
"8": {
"NumOfColors": 8,
"Type": "qual",
"Colors": [
[
27,
158,
119
],
[
217,
95,
2
],
[
117,
112,
179
],
[
231,
41,
138
],
[
102,
166,
30
],
[
230,
171,
2
],
[
166,
118,
29
],
[
102,
102,
102
]
]
}
},
"Paired": {
"3": {
"NumOfColors": 3,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
]
]
},
"4": {
"NumOfColors": 4,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
]
]
},
"5": {
"NumOfColors": 5,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
],
[
251,
154,
153
]
]
},
"6": {
"NumOfColors": 6,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
],
[
251,
154,
153
],
[
227,
26,
28
]
]
},
"7": {
"NumOfColors": 7,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
],
[
251,
154,
153
],
[
227,
26,
28
],
[
253,
191,
111
]
]
},
"8": {
"NumOfColors": 8,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
],
[
251,
154,
153
],
[
227,
26,
28
],
[
253,
191,
111
],
[
255,
127,
0
]
]
},
"9": {
"NumOfColors": 9,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
],
[
251,
154,
153
],
[
227,
26,
28
],
[
253,
191,
111
],
[
255,
127,
0
],
[
202,
178,
214
]
]
},
"10": {
"NumOfColors": 10,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
],
[
251,
154,
153
],
[
227,
26,
28
],
[
253,
191,
111
],
[
255,
127,
0
],
[
202,
178,
214
],
[
106,
61,
154
]
]
},
"11": {
"NumOfColors": 11,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
],
[
251,
154,
153
],
[
227,
26,
28
],
[
253,
191,
111
],
[
255,
127,
0
],
[
202,
178,
214
],
[
106,
61,
154
],
[
255,
255,
153
]
]
},
"12": {
"NumOfColors": 12,
"Type": "qual",
"Colors": [
[
166,
206,
227
],
[
31,
120,
180
],
[
178,
223,
138
],
[
51,
160,
44
],
[
251,
154,
153
],
[
227,
26,
28
],
[
253,
191,
111
],
[
255,
127,
0
],
[
202,
178,
214
],
[
106,
61,
154
],
[
255,
255,
153
],
[
177,
89,
40
]
]
}
},
"Pastel1": {
"3": {
"NumOfColors": 3,
"Type": "qual",
"Colors": [
[
251,
180,
174
],
[
179,
205,
227
],
[
204,
235,
197
]
]
},
"4": {
"NumOfColors": 4,
"Type": "qual",
"Colors": [
[
251,
180,
174
],
[
179,
205,
227
],
[
204,
235,
197
],
[
222,
203,
228
]
]
},
"5": {
"NumOfColors": 5,
"Type": "qual",
"Colors": [
[
251,
180,
174
],
[
179,
205,
227
],
[
204,
235,
197
],
[
222,
203,
228
],
[
254,
217,
166
]
]
},
"6": {
"NumOfColors": 6,
"Type": "qual",
"Colors": [
[
251,
180,
174
],
[
179,
205,
227
],
[
204,
235,
197
],
[
222,
203,
228
],
[
254,
217,
166
],
[
255,
255,
204
]
]
},
"7": {
"NumOfColors": 7,
"Type": "qual",
"Colors": [
[
251,
180,
174
],
[
179,
205,
227
],
[
204,
235,
197
],
[
222,
203,
228
],
[
254,
217,
166
],
[
255,
255,
204
],
[
229,
216,
189
]
]
},
"8": {
"NumOfColors": 8,
"Type": "qual",
"Colors": [
[
251,
180,
174
],
[
179,
205,
227
],
[
204,
235,
197
],
[
222,
203,
228
],
[
254,
217,
166
],
[
255,
255,
204
],
[
229,
216,
189
],
[
253,
218,
236
]
]
},
"9": {
"NumOfColors": 9,
"Type": "qual",
"Colors": [
[
251,
180,
174
],
[
179,
205,
227
],
[
204,
235,
197
],
[
222,
203,
228
],
[
254,
217,
166
],
[
255,
255,
204
],
[
229,
216,
189
],
[
253,
218,
236
],
[
242,
242,
242
]
]
}
},
"Pastel2": {
"3": {
"NumOfColors": 3,
"Type": "qual",
"Colors": [
[
179,
226,
205
],
[
253,
205,
172
],
[
203,
213,
232
]
]
},
"4": {
"NumOfColors": 4,
"Type": "qual",
"Colors": [
[
179,
226,
205
],
[
253,
205,
172
],
[
203,
213,
232
],
[
244,
202,
228
]
]
},
"5": {
"NumOfColors": 5,
"Type": "qual",
"Colors": [
[
179,
226,
205
],
[
253,
205,
172
],
[
203,
213,
232
],
[
244,
202,
228
],
[
230,
245,
201
]
]
},
"6": {
"NumOfColors": 6,
"Type": "qual",
"Colors": [
[
179,
226,
205
],
[
253,
205,
172
],
[
203,
213,
232
],
[
244,
202,
228
],
[
230,
245,
201
],
[
255,
242,
174
]
]
},
"7": {
"NumOfColors": 7,
"Type": "qual",
"Colors": [
[
179,
226,
205
],
[
253,
205,
172
],
[
203,
213,
232
],
[
244,
202,
228
],
[
230,
245,
201
],
[
255,
242,
174
],
[
241,
226,
204
]
]
},
"8": {
"NumOfColors": 8,
"Type": "qual",
"Colors": [
[
179,
226,
205
],
[
253,
205,
172
],
[
203,
213,
232
],
[
244,
202,
228
],
[
230,
245,
201
],
[
255,
242,
174
],
[
241,
226,
204
],
[
204,
204,
204
]
]
}
},
"Set1": {
"3": {
"NumOfColors": 3,
"Type": "qual",
"Colors": [
[
228,
26,
28
],
[
55,
126,
184
],
[
77,
175,
74
]
]
},
"4": {
"NumOfColors": 4,
"Type": "qual",
"Colors": [
[
228,
26,
28
],
[
55,
126,
184
],
[
77,
175,
74
],
[
152,
78,
163
]
]
},
"5": {
"NumOfColors": 5,
"Type": "qual",
"Colors": [
[
228,
26,
28
],
[
55,
126,
184
],
[
77,
175,
74
],
[
152,
78,
163
],
[
255,
127,
0
]
]
},
"6": {
"NumOfColors": 6,
"Type": "qual",
"Colors": [
[
228,
26,
28
],
[
55,
126,
184
],
[
77,
175,
74
],
[
152,
78,
163
],
[
255,
127,
0
],
[
255,
255,
51
]
]
},
"7": {
"NumOfColors": 7,
"Type": "qual",
"Colors": [
[
228,
26,
28
],
[
55,
126,
184
],
[
77,
175,
74
],
[
152,
78,
163
],
[
255,
127,
0
],
[
255,
255,
51
],
[
166,
86,
40
]
]
},
"8": {
"NumOfColors": 8,
"Type": "qual",
"Colors": [
[
228,
26,
28
],
[
55,
126,
184
],
[
77,
175,
74
],
[
152,
78,
163
],
[
255,
127,
0
],
[
255,
255,
51
],
[
166,
86,
40
],
[
247,
129,
191
]
]
},
"9": {
"NumOfColors": 9,
"Type": "qual",
"Colors": [
[
228,
26,
28
],
[
55,
126,
184
],
[
77,
175,
74
],
[
152,
78,
163
],
[
255,
127,
0
],
[
255,
255,
51
],
[
166,
86,
40
],
[
247,
129,
191
],
[
153,
153,
153
]
]
}
},
"Set2": {
"3": {
"NumOfColors": 3,
"Type": "qual",
"Colors": [
[
102,
194,
165
],
[
252,
141,
98
],
[
141,
160,
203
]
]
},
"4": {
"NumOfColors": 4,
"Type": "qual",
"Colors": [
[
102,
194,
165
],
[
252,
141,
98
],
[
141,
160,
203
],
[
231,
138,
195
]
]
},
"5": {
"NumOfColors": 5,
"Type": "qual",
"Colors": [
[
102,
194,
165
],
[
252,
141,
98
],
[
141,
160,
203
],
[
231,
138,
195
],
[
166,
216,
84
]
]
},
"6": {
"NumOfColors": 6,
"Type": "qual",
"Colors": [
[
102,
194,
165
],
[
252,
141,
98
],
[
141,
160,
203
],
[
231,
138,
195
],
[
166,
216,
84
],
[
255,
217,
47
]
]
},
"7": {
"NumOfColors": 7,
"Type": "qual",
"Colors": [
[
102,
194,
165
],
[
252,
141,
98
],
[
141,
160,
203
],
[
231,
138,
195
],
[
166,
216,
84
],
[
255,
217,
47
],
[
229,
196,
148
]
]
},
"8": {
"NumOfColors": 8,
"Type": "qual",
"Colors": [
[
102,
194,
165
],
[
252,
141,
98
],
[
141,
160,
203
],
[
231,
138,
195
],
[
166,
216,
84
],
[
255,
217,
47
],
[
229,
196,
148
],
[
179,
179,
179
]
]
}
},
"Set3": {
"3": {
"NumOfColors": 3,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
]
]
},
"4": {
"NumOfColors": 4,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
]
]
},
"5": {
"NumOfColors": 5,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
],
[
128,
177,
211
]
]
},
"6": {
"NumOfColors": 6,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
],
[
128,
177,
211
],
[
253,
180,
98
]
]
},
"7": {
"NumOfColors": 7,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
],
[
128,
177,
211
],
[
253,
180,
98
],
[
179,
222,
105
]
]
},
"8": {
"NumOfColors": 8,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
],
[
128,
177,
211
],
[
253,
180,
98
],
[
179,
222,
105
],
[
252,
205,
229
]
]
},
"9": {
"NumOfColors": 9,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
],
[
128,
177,
211
],
[
253,
180,
98
],
[
179,
222,
105
],
[
252,
205,
229
],
[
217,
217,
217
]
]
},
"10": {
"NumOfColors": 10,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
],
[
128,
177,
211
],
[
253,
180,
98
],
[
179,
222,
105
],
[
252,
205,
229
],
[
217,
217,
217
],
[
188,
128,
189
]
]
},
"11": {
"NumOfColors": 11,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
],
[
128,
177,
211
],
[
253,
180,
98
],
[
179,
222,
105
],
[
252,
205,
229
],
[
217,
217,
217
],
[
188,
128,
189
],
[
204,
235,
197
]
]
},
"12": {
"NumOfColors": 12,
"Type": "qual",
"Colors": [
[
141,
211,
199
],
[
255,
255,
179
],
[
190,
186,
218
],
[
251,
128,
114
],
[
128,
177,
211
],
[
253,
180,
98
],
[
179,
222,
105
],
[
252,
205,
229
],
[
217,
217,
217
],
[
188,
128,
189
],
[
204,
235,
197
],
[
255,
237,
111
]
]
}
}
}
} palettable-3.3.0/palettable/colorbrewer/data/colorbrewer_licence.txt 0000644 0000765 0000024 00000003260 12475521673 027072 0 ustar jiffyclub staff 0000000 0000000 Apache-Style Software License for ColorBrewer software and ColorBrewer Color Schemes
Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State University.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions as source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. The end-user documentation included with the redistribution, if any, must include the following acknowledgment:
This product includes color specifications and designs developed by Cynthia Brewer (http://colorbrewer.org/).
Alternately, this acknowledgment may appear in the software itself, if and wherever such third-party acknowledgments normally appear.
4. The name "ColorBrewer" must not be used to endorse or promote products derived from this software without prior written permission.
For written permission, please contact Cynthia Brewer at cbrewer@psu.edu.
5. Products derived from this software may not be called "ColorBrewer", nor may "ColorBrewer" appear in their name, without prior written permission of Cynthia Brewer.
palettable-3.3.0/palettable/colorbrewer/data/colorbrewer_schemes_csv_to_json.py 0000644 0000765 0000024 00000003527 12475521673 031344 0 ustar jiffyclub staff 0000000 0000000 """
Color maps come from colorbrewer2.org as an Excel file. I've converted the
Excel file to CSV and here I convert it to JSON for easy reading into Python.
"""
import sys
from csv import DictReader
from collections import OrderedDict
import json
def new_sub_map(row, sm_dict):
num_colors = int(row['NumOfColors'])
sm_dict[num_colors] = OrderedDict()
sub_map = sm_dict[num_colors]
sub_map['NumOfColors'] = num_colors
sub_map['Type'] = row['Type']
sub_map['Colors'] = [(int(row['R']), int(row['G']), int(row['B']))]
return sub_map
def read_csv_to_dict():
color_maps = OrderedDict()
for scheme_type in ('Sequential', 'Diverging', 'Qualitative'):
color_maps[scheme_type] = OrderedDict()
with open('colorbrewer_all_schemes.csv', 'r') as csvf:
csv = DictReader(csvf)
for row in csv:
if row['SchemeType']:
# first row of a new color map block
color_maps[row['SchemeType']][row['ColorName']] = OrderedDict()
current_map = color_maps[row['SchemeType']][row['ColorName']]
current_submap = new_sub_map(row, current_map)
elif row['ColorName']:
# first row of a new sub-map block
current_submap = new_sub_map(row, current_map)
elif not row['ColorName']:
# continuation of a sub-map block
current_submap['Colors'].append((int(row['R']),
int(row['G']),
int(row['B'])))
return color_maps
def save_to_json(color_maps):
with open('colorbrewer_all_schemes.json', 'w') as f:
json.dump(color_maps, f, indent=1)
def main():
color_maps = read_csv_to_dict()
save_to_json(color_maps)
if __name__ == '__main__':
sys.exit(main())
palettable-3.3.0/palettable/colorbrewer/diverging.py 0000644 0000765 0000024 00000000207 13052672644 023734 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .colorbrewer import _load_maps_by_type
globals().update(_load_maps_by_type('diverging'))
palettable-3.3.0/palettable/colorbrewer/qualitative.py 0000644 0000765 0000024 00000000211 13052672644 024301 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .colorbrewer import _load_maps_by_type
globals().update(_load_maps_by_type('qualitative'))
palettable-3.3.0/palettable/colorbrewer/sequential.py 0000644 0000765 0000024 00000000210 13052672644 024122 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .colorbrewer import _load_maps_by_type
globals().update(_load_maps_by_type('sequential'))
palettable-3.3.0/palettable/cubehelix/ 0000755 0000765 0000024 00000000000 13535037137 021026 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/cubehelix/__init__.py 0000644 0000765 0000024 00000000231 12520601204 023114 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .cubehelix import __doc__, Cubehelix, print_maps, get_map, _get_all_maps
globals().update(_get_all_maps())
palettable-3.3.0/palettable/cubehelix/cubehelix.py 0000644 0000765 0000024 00000032107 12520601204 023334 0 ustar jiffyclub staff 0000000 0000000 # coding: utf-8
"""
Cubehelix color maps and palettes.
The Cubehelix algorithm makes color scales with monotonic changes in perceived
brightness. This means that a cubehelix color map gracefully degrades into
a monotonic grayscale color map when rendered without color.
Cubehelix maps are generated algorithmically, giving the user flexibility
in desiging a color map that is also safe for grayscale printers. This
module provides several cubehelix realizations, while also exposing the
algorithm directly through the :class:`Cubehelix` class.
Cubehelix was developed by `D.A Green, 2011, BASI, 39, 289
`_. The original Python
port was done by James R. A. Davenport (see License).
Original License
----------------
Copyright (c) 2014, James R. A. Davenport and contributors
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
"""
from __future__ import absolute_import, print_function
try:
import numpy as np
except ImportError: # pragma: no cover
HAVE_NPY = False
else:
HAVE_NPY = True
from ..palette import Palette
url = 'http://adsabs.harvard.edu/abs/2011arXiv1108.5083G'
palette_type = 'sequential'
palette_names = [
'classic_16',
'perceptual_rainbow_16',
'purple_16',
'jim_special_16',
'red_16',
'cubehelix1_16',
'cubehelix2_16',
'cubehelix3_16'
]
palette_rgb = dict((
('classic_16',
# dict(start=0.5, rotation=-1.5, gamma=1.0, sat=1.2,
# min_light=0., max_light=1., n=16)
[[0, 0, 0],
[22, 10, 34],
[24, 32, 68],
[16, 62, 83],
[14, 94, 74],
[35, 116, 51],
[80, 125, 35],
[138, 122, 45],
[190, 117, 85],
[218, 121, 145],
[219, 138, 203],
[204, 167, 240],
[191, 201, 251],
[195, 229, 244],
[220, 246, 239],
[255, 255, 255]]),
('perceptual_rainbow_16',
# Similar to Matteo Niccoli's Perceptual Rainbow:
# http://mycarta.wordpress.com/2013/02/21/perceptual-rainbow-palette-the-method/
# https://github.com/jradavenport/cubehelix
# dict(start_hue=240., end_hue=-300., min_sat=1., max_sat=2.5,
# min_light=0.3, max_light=0.8, gamma=.9, n=16)
[[135, 59, 97],
[143, 64, 127],
[143, 72, 157],
[135, 85, 185],
[121, 102, 207],
[103, 123, 220],
[84, 146, 223],
[69, 170, 215],
[59, 192, 197],
[60, 210, 172],
[71, 223, 145],
[93, 229, 120],
[124, 231, 103],
[161, 227, 95],
[198, 220, 100],
[233, 213, 117]]),
('purple_16',
# dict(start=0., rotation=0.0, n=16)
[[0, 0, 0],
[15, 14, 35],
[31, 28, 68],
[47, 43, 99],
[63, 59, 127],
[79, 75, 152],
[96, 91, 174],
[113, 107, 194],
[130, 124, 211],
[147, 142, 225],
[164, 160, 237],
[182, 178, 246],
[200, 196, 252],
[218, 215, 255],
[236, 235, 255],
[255, 255, 255]]),
('jim_special_16',
# http://www.ifweassume.com/2014/04/cubehelix-colormap-for-python.html
# dict(start=0.3, rotation=-0.5, n=16)
[[0, 0, 0],
[22, 10, 34],
[37, 25, 68],
[47, 43, 99],
[52, 65, 125],
[55, 88, 146],
[59, 112, 160],
[64, 137, 169],
[74, 160, 173],
[89, 181, 175],
[109, 199, 177],
[134, 214, 180],
[163, 227, 189],
[195, 237, 203],
[226, 246, 225],
[255, 255, 255]]),
('red_16',
# http://www.ifweassume.com/2014/04/cubehelix-colormap-for-python.html
# dict(start=0., rotation=0.5, n=16)
[[0, 0, 0],
[19, 12, 35],
[44, 22, 65],
[73, 32, 90],
[104, 41, 107],
[134, 53, 118],
[162, 67, 124],
[185, 83, 126],
[204, 102, 128],
[216, 124, 130],
[225, 148, 136],
[229, 172, 147],
[232, 196, 164],
[236, 219, 189],
[242, 238, 219],
[255, 255, 255]]),
('cubehelix1_16',
# http://nbviewer.ipython.org/gist/anonymous/a4fa0adb08f9e9ea4f94
# dict(gamma=1.0, start=1.5, rotation=-1.0, sat=1.5, n=16)
[[0, 0, 0],
[27, 15, 0],
[65, 23, 4],
[104, 27, 32],
[133, 33, 75],
[147, 45, 126],
[144, 66, 175],
[129, 96, 210],
[111, 131, 227],
[99, 166, 226],
[101, 197, 211],
[120, 219, 194],
[153, 233, 185],
[193, 240, 191],
[230, 245, 216],
[255, 255, 255]]),
('cubehelix2_16',
# http://nbviewer.ipython.org/gist/anonymous/a4fa0adb08f9e9ea4f94
# dict(gamma=1.0, start=2.0, rotation=1.0, sat=1.5, n=16)
[[0, 0, 0],
[0, 28, 14],
[0, 51, 47],
[7, 65, 91],
[35, 71, 135],
[78, 72, 168],
[129, 72, 184],
[177, 77, 181],
[214, 90, 165],
[235, 113, 143],
[238, 142, 128],
[230, 175, 127],
[219, 206, 144],
[216, 231, 178],
[226, 247, 219],
[255, 255, 255]]),
('cubehelix3_16',
# http://nbviewer.ipython.org/gist/anonymous/a4fa0adb08f9e9ea4f94
# dict(gamma=1.0, start=2.0, rotation=1.0, sat=3, n=16)
[[0, 0, 0],
[0, 39, 12],
[0, 68, 60],
[0, 80, 131],
[3, 75, 202],
[72, 60, 252],
[156, 43, 255],
[235, 36, 244],
[255, 45, 194],
[255, 73, 134],
[255, 115, 86],
[255, 164, 67],
[235, 209, 85],
[211, 241, 135],
[215, 255, 200],
[255, 255, 255]]),
))
class Cubehelix(Palette):
"""
Representation of a Cubehelix color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
"""
url = url
def __init__(self, name, colors):
super(Cubehelix, self).__init__(name, palette_type, colors)
@classmethod
def make(cls, start=0.5, rotation=-1.5, gamma=1.0,
start_hue=None, end_hue=None,
sat=None, min_sat=1.2, max_sat=1.2,
min_light=0., max_light=1.,
n=256., reverse=False, name='custom_cubehelix'):
"""
Create an arbitrary Cubehelix color palette from the algorithm.
See http://adsabs.harvard.edu/abs/2011arXiv1108.5083G for a technical
explanation of the algorithm.
Parameters
----------
start : scalar, optional
Sets the starting position in the RGB color space. 0=blue, 1=red,
2=green. Default is ``0.5`` (purple).
rotation : scalar, optional
The number of rotations through the rainbow. Can be positive
or negative, indicating direction of rainbow. Negative values
correspond to Blue->Red direction. Default is ``-1.5``.
start_hue : scalar, optional
Sets the starting color, ranging from [-360, 360]. Combined with
`end_hue`, this parameter overrides ``start`` and ``rotation``.
This parameter is based on the D3 implementation by @mbostock.
Default is ``None``.
end_hue : scalar, optional
Sets the ending color, ranging from [-360, 360]. Combined with
`start_hue`, this parameter overrides ``start`` and ``rotation``.
This parameter is based on the D3 implementation by @mbostock.
Default is ``None``.
gamma : scalar, optional
The gamma correction for intensity. Values of ``gamma < 1``
emphasize low intensities while ``gamma > 1`` emphasises high
intensities. Default is ``1.0``.
sat : scalar, optional
The uniform saturation intensity factor. ``sat=0`` produces
grayscale, while ``sat=1`` retains the full saturation. Setting
``sat>1`` oversaturates the color map, at the risk of clipping
the color scale. Note that ``sat`` overrides both ``min_stat``
and ``max_sat`` if set.
min_sat : scalar, optional
Saturation at the minimum level. Default is ``1.2``.
max_sat : scalar, optional
Satuation at the maximum level. Default is ``1.2``.
min_light : scalar, optional
Minimum lightness value. Default is ``0``.
max_light : scalar, optional
Maximum lightness value. Default is ``1``.
n : scalar, optional
Number of discrete rendered colors. Default is ``256``.
reverse : bool, optional
Set to ``True`` to reverse the color map. Will go from black to
white. Good for density plots where shade -> density.
Default is ``False``.
name : str, optional
Name of the color map (defaults to ``'custom_cubehelix'``).
Returns
-------
palette : `Cubehelix`
A Cubehelix color palette.
"""
if not HAVE_NPY: # pragma: no cover
raise RuntimeError('numpy not available.')
# start_hue/end_hue were popularized by D3's implementation
# and will override start/rotation if set
if start_hue is not None and end_hue is not None:
start = (start_hue / 360. - 1.) * 3.
rotation = end_hue / 360. - start / 3. - 1.
# lambd is effectively the color map grid
lambd = np.linspace(min_light, max_light, n)
# apply the gamma correction
lambd_gamma = lambd ** gamma
# Rotation angle
# NOTE the equation for phi in Green 2011 does not have an extra `+1`
# but the Fortran code does, as does the original cubehelix.py
# I'm leaving out the +1 to keep to the original equation, but
# worth investigating. In practice I see no difference!
phi = 2.0 * np.pi * (start / 3.0 + rotation * lambd)
if sat is None:
sat = np.linspace(min_sat, max_sat, n)
# Amplitude of helix from grayscale map
amp = sat * lambd_gamma * (1. - lambd_gamma) / 2.
# Compute the RGB vectors according to Green 2011 Eq 2
rot_matrix = np.array([[-0.14861, +1.78277],
[-0.29227, -0.90649],
[+1.97294, 0.0]])
sin_cos = np.array([np.cos(phi), np.sin(phi)])
rgb = (lambd_gamma + amp * np.dot(rot_matrix, sin_cos)).T * 255.
# Clipping is necessary in some cases when sat > 1
np.clip(rgb, 0., 255., out=rgb)
if reverse:
rgb = rgb[::-1, :]
colors = rgb.astype(int).tolist()
return cls(name, colors)
def print_maps():
"""
Print a list of pre-made Cubehelix palettes.
"""
namelen = max(len(name) for name in palette_names)
fmt = '{0:' + str(namelen + 4) + '}{1:16}'
for name in palette_names:
print(fmt.format(name, palette_type))
def get_map(name, reverse=False):
"""
Get a pre-made Cubehelix palette by name.
Parameters
----------
name : str
Name of map. Use `print_maps()` to see available names.
reverse : bool, optional
If True reverse colors from their default order.
Returns
-------
palette : Cubehelix
"""
try:
# Make everthing lower case for matching
index = [s.lower() for s in palette_names].index(name.lower())
except ValueError:
msg = "{0!r} is an unknown Cubehelix palette."
raise KeyError(msg.format(name))
real_name = palette_names[index]
colors = palette_rgb[real_name]
if reverse:
real_name = real_name + '_r'
colors = list(reversed(colors))
return Cubehelix(real_name, colors)
def _get_all_maps():
"""
Returns a dictionary of all Cubehelix palettes, including reversed ones.
These default palettes are rendered with 16 colours.
"""
d = {}
for name in palette_names:
d[name] = get_map(name)
d[name + '_r'] = get_map(name, reverse=True)
return d
palettable-3.3.0/palettable/lightbartlein/ 0000755 0000765 0000024 00000000000 13535037137 021706 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/lightbartlein/__init__.py 0000644 0000765 0000024 00000000114 13511735667 024022 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from . import diverging, sequential
palettable-3.3.0/palettable/lightbartlein/colordata.py 0000644 0000765 0000024 00000010456 13511735667 024245 0 ustar jiffyclub staff 0000000 0000000 """
Color data for Light and Bartlein color maps.
See more at http://geog.uoregon.edu/datagraphics/color_scales.htm.
"""
#
# Diverging Colormaps
#
_BROWN_TO_BLUE_10 = [
[102, 47, 0],
[153, 96, 53],
[204, 155, 122],
[216, 175, 151],
[242, 218, 205],
[204, 253, 255],
[153, 248, 255],
[101, 239, 255],
[50, 227, 255],
[0, 169, 204],
]
_BROWN_TO_BLUE_12 = [
[51, 25, 0],
[2, 47, 0],
[53, 96, 53],
[4, 155, 122],
[16, 175, 151],
[42, 218, 205],
[4, 253, 255],
[53, 248, 255],
[1, 239, 255],
[50, 227, 255],
[0, 169, 204],
[0, 122, 153],
]
_BLUE_TO_ORANGE_8 = [
[0, 127, 255],
[76, 195, 255],
[153, 237, 255],
[204, 255, 255],
[255, 255, 204],
[255, 238, 153],
[255, 195, 76],
[255, 127, 0],
]
_BLUE_TO_ORANGE_10 = [
[0, 84, 255],
[50, 153, 255],
[101, 204, 255],
[153, 237, 255],
[204, 255, 255],
[255, 255, 204],
[255, 238, 153],
[255, 204, 101],
[255, 153, 50],
[255, 85, 0],
]
_BLUE_TO_ORANGE_12 = [
[0, 42, 255],
[25, 101, 255],
[50, 153, 255],
[153, 237, 255],
[101, 204, 255],
[204, 255, 255],
[255, 255, 204],
[255, 238, 153],
[255, 204, 101],
[255, 153, 50],
[255, 102, 25],
[255, 42, 0],
]
_GREEN_TO_MAGENTA = [
[0, 80, 0],
[0, 134, 0],
[0, 187, 0],
[0, 241, 0],
[80, 255, 80],
[134, 255, 134],
[187, 255, 187],
[255, 255, 255],
[255, 241, 255],
[255, 187, 255],
[255, 134, 255],
[255, 80, 255],
[241, 0, 241],
[187, 0, 187],
[134, 0, 134],
[80, 0, 80],
]
_BLUE_TO_DARK_RED_12 = [
[41, 10, 216],
[38, 77, 255],
[63, 160, 255],
[114, 217, 255],
[170, 247, 255],
[224, 255, 255],
[255, 255, 191],
[255, 224, 153],
[255, 173, 114],
[247, 109, 94],
[216, 38, 50],
[165, 0, 33],
]
_BLUE_TO_DARK_RED_18 = [
[36, 0, 216],
[24, 28, 247],
[40, 87, 255],
[61, 135, 255],
[86, 176, 255],
[117, 211, 255],
[153, 234, 255],
[188, 249, 255],
[234, 255, 255],
[255, 255, 234],
[255, 241, 188],
[255, 214, 153],
[255, 172, 117],
[255, 120, 86],
[255, 61, 61],
[247, 39, 53],
[216, 21, 47],
[165, 0, 33],
]
_BLUE_TO_DARK_ORANGE_12 = [
[30, 142, 153],
[81, 195, 204],
[153, 249, 255],
[178, 252, 255],
[204, 254, 255],
[229, 255, 255],
[255, 229, 204],
[255, 202, 153],
[255, 173, 101],
[255, 142, 50],
[204, 88, 0],
[153, 63, 0],
]
_BLUE_TO_DARK_ORANGE_18 = [
[0, 102, 102],
[0, 153, 153],
[0, 204, 204],
[0, 255, 255],
[51, 255, 255],
[101, 255, 255],
[153, 255, 255],
[178, 255, 255],
[203, 255, 255],
[229, 255, 255],
[255, 229, 203],
[255, 202, 153],
[255, 173, 101],
[255, 142, 51],
[255, 110, 0],
[204, 85, 0],
[153, 61, 0],
[102, 39, 0],
]
_BLUE_TO_GREEN = [
[0, 0, 255],
[51, 51, 255],
[101, 101, 255],
[153, 153, 255],
[178, 178, 255],
[203, 203, 255],
[229, 229, 255],
[229, 255, 229],
[203, 255, 203],
[178, 255, 178],
[153, 255, 153],
[101, 255, 101],
[51, 255, 51],
[0, 255, 0],
]
_BLUE_TO_GREY = [
[0, 153, 204],
[102, 229, 255],
[153, 255, 255],
[204, 255, 255],
[229, 229, 229],
[153, 153, 153],
[102, 102, 102],
[51, 51, 51],
]
_BLUE_ORANGE_RED = [
[7, 90, 255],
[50, 118, 255],
[89, 144, 255],
[140, 178, 255],
[191, 212, 255],
[229, 238, 255],
[247, 249, 255],
[255, 255, 204],
[255, 255, 153],
[255, 255, 0],
[255, 204, 0],
[255, 153, 0],
[255, 102, 0],
[255, 0, 0],
]
_RED_YELLOW_BLUE = [
[165, 0, 33],
[216, 38, 50],
[247, 109, 94],
[255, 173, 114],
[255, 224, 153],
[255, 255, 191],
[224, 255, 255],
[170, 247, 255],
[114, 216, 255],
[63, 160, 255],
[38, 76, 255],
]
#
# Sequential colormaps
#
_BLUE_7 = [
[255, 255, 255],
[204, 253, 255],
[153, 248, 255],
[102, 239, 255],
[51, 227, 255],
[0, 170, 204],
[0, 122, 153],
]
_BLUE_10 = [
[229, 255, 255],
[204, 250, 255],
[178, 242, 255],
[153, 229, 255],
[127, 212, 255],
[101, 191, 255],
[76, 165, 255],
[50, 136, 255],
[25, 101, 255],
[0, 63, 255],
]
palettable-3.3.0/palettable/lightbartlein/diverging.py 0000644 0000765 0000024 00000004205 13511735667 024246 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import, print_function
"""
Diverging Light & Bartlein palettes as described at
http://geog.uoregon.edu/datagraphics/color_scales.htm
"""
import itertools as it
from . import colordata
from . import lightbartlein
from .. import utils
_PALETTE_TYPE = 'diverging'
_NAMES_TO_DATA = {
'BlueDarkOrange12': colordata._BLUE_TO_DARK_ORANGE_12,
'BlueDarkOrange18': colordata._BLUE_TO_DARK_ORANGE_18,
'BlueDarkRed12': colordata._BLUE_TO_DARK_RED_12,
'BlueDarkRed18': colordata._BLUE_TO_DARK_RED_18,
'BlueGreen': colordata._BLUE_TO_GREEN,
'BlueGrey': colordata._BLUE_TO_GREY,
'BlueGray': colordata._BLUE_TO_GREY,
'BlueOrange8': colordata._BLUE_TO_ORANGE_8,
'BlueOrange10': colordata._BLUE_TO_ORANGE_10,
'BlueOrange12': colordata._BLUE_TO_ORANGE_12,
'BlueOrangeRed': colordata._BLUE_ORANGE_RED,
'BrownBlue10': colordata._BROWN_TO_BLUE_10,
'BrownBlue12': colordata._BROWN_TO_BLUE_12,
'GreenMagenta': colordata._GREEN_TO_MAGENTA,
'RedYellowBlue': colordata._RED_YELLOW_BLUE,
}
_MAX_LENS = {
'BlueDarkOrange12': 12,
'BlueDarkOrange18': 18,
'BlueDarkRed12': 12,
'BlueDarkRed18': 18,
'BlueGreen': 14,
'BlueGrey': 8,
'BlueGray': 8,
'BlueOrange8': 8,
'BlueOrange10': 10,
'BlueOrange12': 12,
'BlueOrangeRed': 14,
'BrownBlue10': 10,
'BrownBlue12': 12,
'GreenMagenta': 16,
'RedYellowBlue': 11,
}
_NAMES_AND_LENGTHS = list(
it.chain.from_iterable(
utils.make_names_and_lengths([name], range(2, _MAX_LENS[name] + 1))
for name in sorted(_NAMES_TO_DATA)
)
)
print_maps = utils.print_maps_factory('diverging Light & Bartlein',
_NAMES_AND_LENGTHS,
_PALETTE_TYPE)
get_map = utils.get_map_factory('diverging Light & Bartlein',
__name__,
_NAMES_TO_DATA,
_PALETTE_TYPE,
lightbartlein.LightBartleinMap,
is_evenly_spaced=True)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/lightbartlein/lightbartlein.py 0000644 0000765 0000024 00000001746 13511735667 025127 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import, print_function
"""
Light & Bartlein palettes as described at
http://geog.uoregon.edu/datagraphics/color_scales.htm
"""
from ..palette import Palette
class LightBartleinMap(Palette):
"""
Representation of a Light & Bartlein color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
palette_type : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
url : str
Website with related info.
"""
url = 'http://geog.uoregon.edu/datagraphics/color_scales.htm'
def __init__(self, name, palette_type, colors):
super(LightBartleinMap, self).__init__(name, palette_type, colors)
palettable-3.3.0/palettable/lightbartlein/sequential.py 0000644 0000765 0000024 00000002252 13511735667 024442 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import, print_function
"""
Sequential Light & Bartlein palettes as described at
http://geog.uoregon.edu/datagraphics/color_scales.htm
"""
import itertools as it
from . import colordata
from . import lightbartlein
from .. import utils
_PALETTE_TYPE = 'sequential'
_NAMES_TO_DATA = {
'Blues7': colordata._BLUE_7,
'Blues10': colordata._BLUE_10,
}
_MAX_LENS = {
'Blues7': 7,
'Blues10': 10,
}
_NAMES_AND_LENGTHS = list(
it.chain.from_iterable(
utils.make_names_and_lengths([name], range(2, _MAX_LENS[name] + 1))
for name in sorted(_NAMES_TO_DATA)
)
)
print_maps = utils.print_maps_factory('sequential Light & Bartlein',
_NAMES_AND_LENGTHS,
_PALETTE_TYPE)
get_map = utils.get_map_factory('sequential Light & Bartlein',
__name__,
_NAMES_TO_DATA,
_PALETTE_TYPE,
lightbartlein.LightBartleinMap,
is_evenly_spaced=True)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/matplotlib/ 0000755 0000765 0000024 00000000000 13535037137 021225 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/matplotlib/__init__.py 0000644 0000765 0000024 00000000317 13052672644 023341 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .. import utils
from .matplotlib import __doc__, print_maps, get_map, _NAMES_AND_LENGTHS
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/matplotlib/colormaps.py 0000644 0000765 0000024 00000101000 13052672644 023570 0 ustar jiffyclub staff 0000000 0000000 # Derived from the original at
# https://github.com/BIDS/colormap/blob/84cb3771a38dfe3d3977677df31af55f4ab7985e/colormaps.py
#
# Original header follows:
#
# New matplotlib colormaps by Nathaniel J. Smith, Stefan van der Walt,
# and (in the case of viridis) Eric Firing.
#
# This file and the colormaps in it are released under the CC0 license /
# public domain dedication. We would appreciate credit if you use or
# redistribute these colormaps, but do not impose any legal restrictions.
#
# To the extent possible under law, the persons who associated CC0 with
# mpl-colormaps have waived all copyright and related or neighboring rights
# to mpl-colormaps.
#
# You should have received a copy of the CC0 legalcode along with this
# work. If not, see .
_MAGMA_DATA = [[0, 0, 4],
[1, 0, 5],
[1, 1, 6],
[1, 1, 8],
[2, 1, 9],
[2, 2, 11],
[2, 2, 13],
[3, 3, 15],
[3, 3, 18],
[4, 4, 20],
[5, 4, 22],
[6, 5, 24],
[6, 5, 26],
[7, 6, 28],
[8, 7, 30],
[9, 7, 32],
[10, 8, 34],
[11, 9, 36],
[12, 9, 38],
[13, 10, 41],
[14, 11, 43],
[16, 11, 45],
[17, 12, 47],
[18, 13, 49],
[19, 13, 52],
[20, 14, 54],
[21, 14, 56],
[22, 15, 59],
[24, 15, 61],
[25, 16, 63],
[26, 16, 66],
[28, 16, 68],
[29, 17, 71],
[30, 17, 73],
[32, 17, 75],
[33, 17, 78],
[34, 17, 80],
[36, 18, 83],
[37, 18, 85],
[39, 18, 88],
[41, 17, 90],
[42, 17, 92],
[44, 17, 95],
[45, 17, 97],
[47, 17, 99],
[49, 17, 101],
[51, 16, 103],
[52, 16, 105],
[54, 16, 107],
[56, 16, 108],
[57, 15, 110],
[59, 15, 112],
[61, 15, 113],
[63, 15, 114],
[64, 15, 116],
[66, 15, 117],
[68, 15, 118],
[69, 16, 119],
[71, 16, 120],
[73, 16, 120],
[74, 16, 121],
[76, 17, 122],
[78, 17, 123],
[79, 18, 123],
[81, 18, 124],
[82, 19, 124],
[84, 19, 125],
[86, 20, 125],
[87, 21, 126],
[89, 21, 126],
[90, 22, 126],
[92, 22, 127],
[93, 23, 127],
[95, 24, 127],
[96, 24, 128],
[98, 25, 128],
[100, 26, 128],
[101, 26, 128],
[103, 27, 128],
[104, 28, 129],
[106, 28, 129],
[107, 29, 129],
[109, 29, 129],
[110, 30, 129],
[112, 31, 129],
[114, 31, 129],
[115, 32, 129],
[117, 33, 129],
[118, 33, 129],
[120, 34, 129],
[121, 34, 130],
[123, 35, 130],
[124, 35, 130],
[126, 36, 130],
[128, 37, 130],
[129, 37, 129],
[131, 38, 129],
[132, 38, 129],
[134, 39, 129],
[136, 39, 129],
[137, 40, 129],
[139, 41, 129],
[140, 41, 129],
[142, 42, 129],
[144, 42, 129],
[145, 43, 129],
[147, 43, 128],
[148, 44, 128],
[150, 44, 128],
[152, 45, 128],
[153, 45, 128],
[155, 46, 127],
[156, 46, 127],
[158, 47, 127],
[160, 47, 127],
[161, 48, 126],
[163, 48, 126],
[165, 49, 126],
[166, 49, 125],
[168, 50, 125],
[170, 51, 125],
[171, 51, 124],
[173, 52, 124],
[174, 52, 123],
[176, 53, 123],
[178, 53, 123],
[179, 54, 122],
[181, 54, 122],
[183, 55, 121],
[184, 55, 121],
[186, 56, 120],
[188, 57, 120],
[189, 57, 119],
[191, 58, 119],
[192, 58, 118],
[194, 59, 117],
[196, 60, 117],
[197, 60, 116],
[199, 61, 115],
[200, 62, 115],
[202, 62, 114],
[204, 63, 113],
[205, 64, 113],
[207, 64, 112],
[208, 65, 111],
[210, 66, 111],
[211, 67, 110],
[213, 68, 109],
[214, 69, 108],
[216, 69, 108],
[217, 70, 107],
[219, 71, 106],
[220, 72, 105],
[222, 73, 104],
[223, 74, 104],
[224, 76, 103],
[226, 77, 102],
[227, 78, 101],
[228, 79, 100],
[229, 80, 100],
[231, 82, 99],
[232, 83, 98],
[233, 84, 98],
[234, 86, 97],
[235, 87, 96],
[236, 88, 96],
[237, 90, 95],
[238, 91, 94],
[239, 93, 94],
[240, 95, 94],
[241, 96, 93],
[242, 98, 93],
[242, 100, 92],
[243, 101, 92],
[244, 103, 92],
[244, 105, 92],
[245, 107, 92],
[246, 108, 92],
[246, 110, 92],
[247, 112, 92],
[247, 114, 92],
[248, 116, 92],
[248, 118, 92],
[249, 120, 93],
[249, 121, 93],
[249, 123, 93],
[250, 125, 94],
[250, 127, 94],
[250, 129, 95],
[251, 131, 95],
[251, 133, 96],
[251, 135, 97],
[252, 137, 97],
[252, 138, 98],
[252, 140, 99],
[252, 142, 100],
[252, 144, 101],
[253, 146, 102],
[253, 148, 103],
[253, 150, 104],
[253, 152, 105],
[253, 154, 106],
[253, 155, 107],
[254, 157, 108],
[254, 159, 109],
[254, 161, 110],
[254, 163, 111],
[254, 165, 113],
[254, 167, 114],
[254, 169, 115],
[254, 170, 116],
[254, 172, 118],
[254, 174, 119],
[254, 176, 120],
[254, 178, 122],
[254, 180, 123],
[254, 182, 124],
[254, 183, 126],
[254, 185, 127],
[254, 187, 129],
[254, 189, 130],
[254, 191, 132],
[254, 193, 133],
[254, 194, 135],
[254, 196, 136],
[254, 198, 138],
[254, 200, 140],
[254, 202, 141],
[254, 204, 143],
[254, 205, 144],
[254, 207, 146],
[254, 209, 148],
[254, 211, 149],
[254, 213, 151],
[254, 215, 153],
[254, 216, 154],
[253, 218, 156],
[253, 220, 158],
[253, 222, 160],
[253, 224, 161],
[253, 226, 163],
[253, 227, 165],
[253, 229, 167],
[253, 231, 169],
[253, 233, 170],
[253, 235, 172],
[252, 236, 174],
[252, 238, 176],
[252, 240, 178],
[252, 242, 180],
[252, 244, 182],
[252, 246, 184],
[252, 247, 185],
[252, 249, 187],
[252, 251, 189],
[252, 253, 191]]
_INFERNO_DATA = [[0, 0, 4],
[1, 0, 5],
[1, 1, 6],
[1, 1, 8],
[2, 1, 10],
[2, 2, 12],
[2, 2, 14],
[3, 2, 16],
[4, 3, 18],
[4, 3, 20],
[5, 4, 23],
[6, 4, 25],
[7, 5, 27],
[8, 5, 29],
[9, 6, 31],
[10, 7, 34],
[11, 7, 36],
[12, 8, 38],
[13, 8, 41],
[14, 9, 43],
[16, 9, 45],
[17, 10, 48],
[18, 10, 50],
[20, 11, 52],
[21, 11, 55],
[22, 11, 57],
[24, 12, 60],
[25, 12, 62],
[27, 12, 65],
[28, 12, 67],
[30, 12, 69],
[31, 12, 72],
[33, 12, 74],
[35, 12, 76],
[36, 12, 79],
[38, 12, 81],
[40, 11, 83],
[41, 11, 85],
[43, 11, 87],
[45, 11, 89],
[47, 10, 91],
[49, 10, 92],
[50, 10, 94],
[52, 10, 95],
[54, 9, 97],
[56, 9, 98],
[57, 9, 99],
[59, 9, 100],
[61, 9, 101],
[62, 9, 102],
[64, 10, 103],
[66, 10, 104],
[68, 10, 104],
[69, 10, 105],
[71, 11, 106],
[73, 11, 106],
[74, 12, 107],
[76, 12, 107],
[77, 13, 108],
[79, 13, 108],
[81, 14, 108],
[82, 14, 109],
[84, 15, 109],
[85, 15, 109],
[87, 16, 110],
[89, 16, 110],
[90, 17, 110],
[92, 18, 110],
[93, 18, 110],
[95, 19, 110],
[97, 19, 110],
[98, 20, 110],
[100, 21, 110],
[101, 21, 110],
[103, 22, 110],
[105, 22, 110],
[106, 23, 110],
[108, 24, 110],
[109, 24, 110],
[111, 25, 110],
[113, 25, 110],
[114, 26, 110],
[116, 26, 110],
[117, 27, 110],
[119, 28, 109],
[120, 28, 109],
[122, 29, 109],
[124, 29, 109],
[125, 30, 109],
[127, 30, 108],
[128, 31, 108],
[130, 32, 108],
[132, 32, 107],
[133, 33, 107],
[135, 33, 107],
[136, 34, 106],
[138, 34, 106],
[140, 35, 105],
[141, 35, 105],
[143, 36, 105],
[144, 37, 104],
[146, 37, 104],
[147, 38, 103],
[149, 38, 103],
[151, 39, 102],
[152, 39, 102],
[154, 40, 101],
[155, 41, 100],
[157, 41, 100],
[159, 42, 99],
[160, 42, 99],
[162, 43, 98],
[163, 44, 97],
[165, 44, 96],
[166, 45, 96],
[168, 46, 95],
[169, 46, 94],
[171, 47, 94],
[173, 48, 93],
[174, 48, 92],
[176, 49, 91],
[177, 50, 90],
[179, 50, 90],
[180, 51, 89],
[182, 52, 88],
[183, 53, 87],
[185, 53, 86],
[186, 54, 85],
[188, 55, 84],
[189, 56, 83],
[191, 57, 82],
[192, 58, 81],
[193, 58, 80],
[195, 59, 79],
[196, 60, 78],
[198, 61, 77],
[199, 62, 76],
[200, 63, 75],
[202, 64, 74],
[203, 65, 73],
[204, 66, 72],
[206, 67, 71],
[207, 68, 70],
[208, 69, 69],
[210, 70, 68],
[211, 71, 67],
[212, 72, 66],
[213, 74, 65],
[215, 75, 63],
[216, 76, 62],
[217, 77, 61],
[218, 78, 60],
[219, 80, 59],
[221, 81, 58],
[222, 82, 56],
[223, 83, 55],
[224, 85, 54],
[225, 86, 53],
[226, 87, 52],
[227, 89, 51],
[228, 90, 49],
[229, 92, 48],
[230, 93, 47],
[231, 94, 46],
[232, 96, 45],
[233, 97, 43],
[234, 99, 42],
[235, 100, 41],
[235, 102, 40],
[236, 103, 38],
[237, 105, 37],
[238, 106, 36],
[239, 108, 35],
[239, 110, 33],
[240, 111, 32],
[241, 113, 31],
[241, 115, 29],
[242, 116, 28],
[243, 118, 27],
[243, 120, 25],
[244, 121, 24],
[245, 123, 23],
[245, 125, 21],
[246, 126, 20],
[246, 128, 19],
[247, 130, 18],
[247, 132, 16],
[248, 133, 15],
[248, 135, 14],
[248, 137, 12],
[249, 139, 11],
[249, 140, 10],
[249, 142, 9],
[250, 144, 8],
[250, 146, 7],
[250, 148, 7],
[251, 150, 6],
[251, 151, 6],
[251, 153, 6],
[251, 155, 6],
[251, 157, 7],
[252, 159, 7],
[252, 161, 8],
[252, 163, 9],
[252, 165, 10],
[252, 166, 12],
[252, 168, 13],
[252, 170, 15],
[252, 172, 17],
[252, 174, 18],
[252, 176, 20],
[252, 178, 22],
[252, 180, 24],
[251, 182, 26],
[251, 184, 29],
[251, 186, 31],
[251, 188, 33],
[251, 190, 35],
[250, 192, 38],
[250, 194, 40],
[250, 196, 42],
[250, 198, 45],
[249, 199, 47],
[249, 201, 50],
[249, 203, 53],
[248, 205, 55],
[248, 207, 58],
[247, 209, 61],
[247, 211, 64],
[246, 213, 67],
[246, 215, 70],
[245, 217, 73],
[245, 219, 76],
[244, 221, 79],
[244, 223, 83],
[244, 225, 86],
[243, 227, 90],
[243, 229, 93],
[242, 230, 97],
[242, 232, 101],
[242, 234, 105],
[241, 236, 109],
[241, 237, 113],
[241, 239, 117],
[241, 241, 121],
[242, 242, 125],
[242, 244, 130],
[243, 245, 134],
[243, 246, 138],
[244, 248, 142],
[245, 249, 146],
[246, 250, 150],
[248, 251, 154],
[249, 252, 157],
[250, 253, 161],
[252, 255, 164]]
_PLASMA_DATA = [[13, 8, 135],
[16, 7, 136],
[19, 7, 137],
[22, 7, 138],
[25, 6, 140],
[27, 6, 141],
[29, 6, 142],
[32, 6, 143],
[34, 6, 144],
[36, 6, 145],
[38, 5, 145],
[40, 5, 146],
[42, 5, 147],
[44, 5, 148],
[46, 5, 149],
[47, 5, 150],
[49, 5, 151],
[51, 5, 151],
[53, 4, 152],
[55, 4, 153],
[56, 4, 154],
[58, 4, 154],
[60, 4, 155],
[62, 4, 156],
[63, 4, 156],
[65, 4, 157],
[67, 3, 158],
[68, 3, 158],
[70, 3, 159],
[72, 3, 159],
[73, 3, 160],
[75, 3, 161],
[76, 2, 161],
[78, 2, 162],
[80, 2, 162],
[81, 2, 163],
[83, 2, 163],
[85, 2, 164],
[86, 1, 164],
[88, 1, 164],
[89, 1, 165],
[91, 1, 165],
[92, 1, 166],
[94, 1, 166],
[96, 1, 166],
[97, 0, 167],
[99, 0, 167],
[100, 0, 167],
[102, 0, 167],
[103, 0, 168],
[105, 0, 168],
[106, 0, 168],
[108, 0, 168],
[110, 0, 168],
[111, 0, 168],
[113, 0, 168],
[114, 1, 168],
[116, 1, 168],
[117, 1, 168],
[119, 1, 168],
[120, 1, 168],
[122, 2, 168],
[123, 2, 168],
[125, 3, 168],
[126, 3, 168],
[128, 4, 168],
[129, 4, 167],
[131, 5, 167],
[132, 5, 167],
[134, 6, 166],
[135, 7, 166],
[136, 8, 166],
[138, 9, 165],
[139, 10, 165],
[141, 11, 165],
[142, 12, 164],
[143, 13, 164],
[145, 14, 163],
[146, 15, 163],
[148, 16, 162],
[149, 17, 161],
[150, 19, 161],
[152, 20, 160],
[153, 21, 159],
[154, 22, 159],
[156, 23, 158],
[157, 24, 157],
[158, 25, 157],
[160, 26, 156],
[161, 27, 155],
[162, 29, 154],
[163, 30, 154],
[165, 31, 153],
[166, 32, 152],
[167, 33, 151],
[168, 34, 150],
[170, 35, 149],
[171, 36, 148],
[172, 38, 148],
[173, 39, 147],
[174, 40, 146],
[176, 41, 145],
[177, 42, 144],
[178, 43, 143],
[179, 44, 142],
[180, 46, 141],
[181, 47, 140],
[182, 48, 139],
[183, 49, 138],
[184, 50, 137],
[186, 51, 136],
[187, 52, 136],
[188, 53, 135],
[189, 55, 134],
[190, 56, 133],
[191, 57, 132],
[192, 58, 131],
[193, 59, 130],
[194, 60, 129],
[195, 61, 128],
[196, 62, 127],
[197, 64, 126],
[198, 65, 125],
[199, 66, 124],
[200, 67, 123],
[201, 68, 122],
[202, 69, 122],
[203, 70, 121],
[204, 71, 120],
[204, 73, 119],
[205, 74, 118],
[206, 75, 117],
[207, 76, 116],
[208, 77, 115],
[209, 78, 114],
[210, 79, 113],
[211, 81, 113],
[212, 82, 112],
[213, 83, 111],
[213, 84, 110],
[214, 85, 109],
[215, 86, 108],
[216, 87, 107],
[217, 88, 106],
[218, 90, 106],
[218, 91, 105],
[219, 92, 104],
[220, 93, 103],
[221, 94, 102],
[222, 95, 101],
[222, 97, 100],
[223, 98, 99],
[224, 99, 99],
[225, 100, 98],
[226, 101, 97],
[226, 102, 96],
[227, 104, 95],
[228, 105, 94],
[229, 106, 93],
[229, 107, 93],
[230, 108, 92],
[231, 110, 91],
[231, 111, 90],
[232, 112, 89],
[233, 113, 88],
[233, 114, 87],
[234, 116, 87],
[235, 117, 86],
[235, 118, 85],
[236, 119, 84],
[237, 121, 83],
[237, 122, 82],
[238, 123, 81],
[239, 124, 81],
[239, 126, 80],
[240, 127, 79],
[240, 128, 78],
[241, 129, 77],
[241, 131, 76],
[242, 132, 75],
[243, 133, 75],
[243, 135, 74],
[244, 136, 73],
[244, 137, 72],
[245, 139, 71],
[245, 140, 70],
[246, 141, 69],
[246, 143, 68],
[247, 144, 68],
[247, 145, 67],
[247, 147, 66],
[248, 148, 65],
[248, 149, 64],
[249, 151, 63],
[249, 152, 62],
[249, 154, 62],
[250, 155, 61],
[250, 156, 60],
[250, 158, 59],
[251, 159, 58],
[251, 161, 57],
[251, 162, 56],
[252, 163, 56],
[252, 165, 55],
[252, 166, 54],
[252, 168, 53],
[252, 169, 52],
[253, 171, 51],
[253, 172, 51],
[253, 174, 50],
[253, 175, 49],
[253, 177, 48],
[253, 178, 47],
[253, 180, 47],
[253, 181, 46],
[254, 183, 45],
[254, 184, 44],
[254, 186, 44],
[254, 187, 43],
[254, 189, 42],
[254, 190, 42],
[254, 192, 41],
[253, 194, 41],
[253, 195, 40],
[253, 197, 39],
[253, 198, 39],
[253, 200, 39],
[253, 202, 38],
[253, 203, 38],
[252, 205, 37],
[252, 206, 37],
[252, 208, 37],
[252, 210, 37],
[251, 211, 36],
[251, 213, 36],
[251, 215, 36],
[250, 216, 36],
[250, 218, 36],
[249, 220, 36],
[249, 221, 37],
[248, 223, 37],
[248, 225, 37],
[247, 226, 37],
[247, 228, 37],
[246, 230, 38],
[246, 232, 38],
[245, 233, 38],
[245, 235, 39],
[244, 237, 39],
[243, 238, 39],
[243, 240, 39],
[242, 242, 39],
[241, 244, 38],
[241, 245, 37],
[240, 247, 36],
[240, 249, 33]]
_VIRIDIS_DATA = [[68, 1, 84],
[68, 2, 86],
[69, 4, 87],
[69, 5, 89],
[70, 7, 90],
[70, 8, 92],
[70, 10, 93],
[70, 11, 94],
[71, 13, 96],
[71, 14, 97],
[71, 16, 99],
[71, 17, 100],
[71, 19, 101],
[72, 20, 103],
[72, 22, 104],
[72, 23, 105],
[72, 24, 106],
[72, 26, 108],
[72, 27, 109],
[72, 28, 110],
[72, 29, 111],
[72, 31, 112],
[72, 32, 113],
[72, 33, 115],
[72, 35, 116],
[72, 36, 117],
[72, 37, 118],
[72, 38, 119],
[72, 40, 120],
[72, 41, 121],
[71, 42, 122],
[71, 44, 122],
[71, 45, 123],
[71, 46, 124],
[71, 47, 125],
[70, 48, 126],
[70, 50, 126],
[70, 51, 127],
[70, 52, 128],
[69, 53, 129],
[69, 55, 129],
[69, 56, 130],
[68, 57, 131],
[68, 58, 131],
[68, 59, 132],
[67, 61, 132],
[67, 62, 133],
[66, 63, 133],
[66, 64, 134],
[66, 65, 134],
[65, 66, 135],
[65, 68, 135],
[64, 69, 136],
[64, 70, 136],
[63, 71, 136],
[63, 72, 137],
[62, 73, 137],
[62, 74, 137],
[62, 76, 138],
[61, 77, 138],
[61, 78, 138],
[60, 79, 138],
[60, 80, 139],
[59, 81, 139],
[59, 82, 139],
[58, 83, 139],
[58, 84, 140],
[57, 85, 140],
[57, 86, 140],
[56, 88, 140],
[56, 89, 140],
[55, 90, 140],
[55, 91, 141],
[54, 92, 141],
[54, 93, 141],
[53, 94, 141],
[53, 95, 141],
[52, 96, 141],
[52, 97, 141],
[51, 98, 141],
[51, 99, 141],
[50, 100, 142],
[50, 101, 142],
[49, 102, 142],
[49, 103, 142],
[49, 104, 142],
[48, 105, 142],
[48, 106, 142],
[47, 107, 142],
[47, 108, 142],
[46, 109, 142],
[46, 110, 142],
[46, 111, 142],
[45, 112, 142],
[45, 113, 142],
[44, 113, 142],
[44, 114, 142],
[44, 115, 142],
[43, 116, 142],
[43, 117, 142],
[42, 118, 142],
[42, 119, 142],
[42, 120, 142],
[41, 121, 142],
[41, 122, 142],
[41, 123, 142],
[40, 124, 142],
[40, 125, 142],
[39, 126, 142],
[39, 127, 142],
[39, 128, 142],
[38, 129, 142],
[38, 130, 142],
[38, 130, 142],
[37, 131, 142],
[37, 132, 142],
[37, 133, 142],
[36, 134, 142],
[36, 135, 142],
[35, 136, 142],
[35, 137, 142],
[35, 138, 141],
[34, 139, 141],
[34, 140, 141],
[34, 141, 141],
[33, 142, 141],
[33, 143, 141],
[33, 144, 141],
[33, 145, 140],
[32, 146, 140],
[32, 146, 140],
[32, 147, 140],
[31, 148, 140],
[31, 149, 139],
[31, 150, 139],
[31, 151, 139],
[31, 152, 139],
[31, 153, 138],
[31, 154, 138],
[30, 155, 138],
[30, 156, 137],
[30, 157, 137],
[31, 158, 137],
[31, 159, 136],
[31, 160, 136],
[31, 161, 136],
[31, 161, 135],
[31, 162, 135],
[32, 163, 134],
[32, 164, 134],
[33, 165, 133],
[33, 166, 133],
[34, 167, 133],
[34, 168, 132],
[35, 169, 131],
[36, 170, 131],
[37, 171, 130],
[37, 172, 130],
[38, 173, 129],
[39, 173, 129],
[40, 174, 128],
[41, 175, 127],
[42, 176, 127],
[44, 177, 126],
[45, 178, 125],
[46, 179, 124],
[47, 180, 124],
[49, 181, 123],
[50, 182, 122],
[52, 182, 121],
[53, 183, 121],
[55, 184, 120],
[56, 185, 119],
[58, 186, 118],
[59, 187, 117],
[61, 188, 116],
[63, 188, 115],
[64, 189, 114],
[66, 190, 113],
[68, 191, 112],
[70, 192, 111],
[72, 193, 110],
[74, 193, 109],
[76, 194, 108],
[78, 195, 107],
[80, 196, 106],
[82, 197, 105],
[84, 197, 104],
[86, 198, 103],
[88, 199, 101],
[90, 200, 100],
[92, 200, 99],
[94, 201, 98],
[96, 202, 96],
[99, 203, 95],
[101, 203, 94],
[103, 204, 92],
[105, 205, 91],
[108, 205, 90],
[110, 206, 88],
[112, 207, 87],
[115, 208, 86],
[117, 208, 84],
[119, 209, 83],
[122, 209, 81],
[124, 210, 80],
[127, 211, 78],
[129, 211, 77],
[132, 212, 75],
[134, 213, 73],
[137, 213, 72],
[139, 214, 70],
[142, 214, 69],
[144, 215, 67],
[147, 215, 65],
[149, 216, 64],
[152, 216, 62],
[155, 217, 60],
[157, 217, 59],
[160, 218, 57],
[162, 218, 55],
[165, 219, 54],
[168, 219, 52],
[170, 220, 50],
[173, 220, 48],
[176, 221, 47],
[178, 221, 45],
[181, 222, 43],
[184, 222, 41],
[186, 222, 40],
[189, 223, 38],
[192, 223, 37],
[194, 223, 35],
[197, 224, 33],
[200, 224, 32],
[202, 225, 31],
[205, 225, 29],
[208, 225, 28],
[210, 226, 27],
[213, 226, 26],
[216, 226, 25],
[218, 227, 25],
[221, 227, 24],
[223, 227, 24],
[226, 228, 24],
[229, 228, 25],
[231, 228, 25],
[234, 229, 26],
[236, 229, 27],
[239, 229, 28],
[241, 229, 29],
[244, 230, 30],
[246, 230, 32],
[248, 230, 33],
[251, 231, 35],
[253, 231, 37]]
palettable-3.3.0/palettable/matplotlib/matplotlib.py 0000644 0000765 0000024 00000003014 13052672644 023746 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import, print_function
"""
New matplotlib color palettes as described at https://bids.github.io/colormap
"""
import itertools
from . import colormaps
from .. import utils
from ..palette import Palette
_PALETTE_TYPE = 'sequential'
_NAMES_TO_DATA = {
'Magma': colormaps._MAGMA_DATA,
'Inferno': colormaps._INFERNO_DATA,
'Plasma': colormaps._PLASMA_DATA,
'Viridis': colormaps._VIRIDIS_DATA
}
_NAME_MAP = utils.make_name_map(_NAMES_TO_DATA.keys())
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(
sorted(_NAMES_TO_DATA.keys()))
class MatplotlibMap(Palette):
"""
Representation of a color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
palette_type : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
url : str
Website with related info.
"""
url = 'https://bids.github.io/colormap'
def __init__(self, name, palette_type, colors):
super(MatplotlibMap, self).__init__(name, palette_type, colors)
print_maps = utils.print_maps_factory(
'matplotlib', _NAMES_AND_LENGTHS, _PALETTE_TYPE)
get_map = utils.get_map_factory(
'matplotlib', __name__, _NAMES_TO_DATA, _PALETTE_TYPE,
MatplotlibMap)
palettable-3.3.0/palettable/mycarta/ 0000755 0000765 0000024 00000000000 13535037137 020516 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/mycarta/__init__.py 0000644 0000765 0000024 00000000314 13052672644 022627 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .. import utils
from .mycarta import __doc__, print_maps, get_map, _NAMES_AND_LENGTHS
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/mycarta/colordata.py 0000644 0000765 0000024 00000035423 13052672644 023051 0 ustar jiffyclub staff 0000000 0000000 # Via https://mycarta.wordpress.com/color-palettes/
CUBE1 = [
[120, 0, 133],
[121, 0, 136],
[122, 0, 139],
[123, 1, 142],
[124, 1, 145],
[125, 2, 148],
[126, 2, 151],
[127, 3, 153],
[128, 4, 156],
[128, 5, 159],
[129, 5, 162],
[129, 6, 165],
[130, 8, 167],
[130, 9, 170],
[131, 10, 173],
[131, 11, 176],
[131, 12, 178],
[131, 13, 181],
[131, 15, 184],
[131, 17, 186],
[131, 19, 189],
[131, 22, 192],
[130, 25, 194],
[130, 28, 197],
[130, 31, 200],
[130, 34, 202],
[129, 38, 205],
[129, 42, 208],
[129, 45, 210],
[128, 49, 213],
[128, 52, 215],
[127, 55, 217],
[127, 59, 220],
[126, 61, 222],
[126, 64, 224],
[126, 66, 226],
[125, 69, 228],
[124, 71, 230],
[123, 73, 233],
[122, 75, 235],
[121, 77, 237],
[120, 79, 240],
[119, 81, 242],
[118, 83, 244],
[117, 85, 246],
[116, 87, 247],
[115, 89, 249],
[114, 91, 250],
[113, 93, 252],
[112, 94, 252],
[111, 96, 253],
[110, 98, 253],
[109, 100, 253],
[108, 102, 253],
[107, 104, 253],
[106, 107, 252],
[105, 109, 252],
[104, 111, 251],
[103, 113, 251],
[102, 115, 250],
[102, 117, 249],
[101, 119, 248],
[100, 121, 247],
[99, 123, 247],
[98, 125, 246],
[97, 126, 245],
[96, 128, 244],
[95, 130, 243],
[94, 132, 242],
[93, 134, 241],
[92, 135, 240],
[91, 137, 239],
[90, 138, 238],
[89, 140, 236],
[88, 142, 235],
[87, 143, 234],
[86, 145, 232],
[85, 146, 230],
[83, 148, 229],
[82, 149, 227],
[81, 151, 226],
[80, 152, 224],
[79, 153, 222],
[78, 155, 221],
[77, 156, 219],
[76, 158, 217],
[74, 159, 215],
[73, 161, 214],
[72, 162, 212],
[70, 164, 210],
[69, 165, 208],
[67, 167, 206],
[66, 168, 204],
[64, 170, 202],
[63, 171, 201],
[61, 173, 199],
[60, 174, 197],
[59, 175, 194],
[58, 177, 192],
[57, 178, 190],
[57, 179, 188],
[56, 181, 186],
[56, 182, 184],
[56, 183, 182],
[56, 184, 180],
[57, 185, 178],
[57, 187, 176],
[58, 188, 174],
[58, 189, 171],
[59, 190, 169],
[60, 191, 167],
[61, 192, 165],
[62, 193, 163],
[62, 194, 160],
[63, 195, 158],
[64, 196, 156],
[65, 197, 154],
[66, 198, 151],
[67, 199, 149],
[67, 200, 147],
[68, 201, 145],
[69, 202, 142],
[69, 203, 140],
[70, 203, 138],
[71, 204, 135],
[71, 205, 133],
[72, 206, 131],
[73, 207, 129],
[73, 208, 126],
[74, 208, 124],
[75, 209, 122],
[75, 210, 119],
[76, 211, 117],
[77, 211, 115],
[77, 212, 113],
[78, 213, 111],
[79, 214, 108],
[80, 215, 106],
[80, 216, 104],
[81, 216, 101],
[82, 217, 98],
[82, 218, 96],
[83, 219, 93],
[84, 220, 90],
[84, 221, 87],
[85, 222, 85],
[86, 222, 82],
[87, 223, 80],
[87, 224, 78],
[88, 225, 76],
[89, 225, 75],
[90, 226, 74],
[91, 227, 73],
[92, 227, 73],
[94, 228, 73],
[95, 229, 73],
[97, 229, 73],
[99, 230, 74],
[101, 230, 74],
[104, 231, 74],
[106, 231, 75],
[109, 232, 75],
[111, 232, 76],
[114, 233, 76],
[117, 233, 77],
[120, 234, 78],
[122, 234, 78],
[125, 234, 79],
[128, 235, 79],
[130, 235, 80],
[133, 235, 80],
[135, 235, 80],
[137, 235, 81],
[140, 235, 81],
[142, 235, 82],
[145, 235, 82],
[147, 235, 82],
[150, 236, 83],
[152, 236, 83],
[155, 236, 84],
[157, 236, 84],
[160, 236, 84],
[162, 236, 85],
[165, 236, 85],
[167, 236, 85],
[169, 236, 86],
[171, 236, 86],
[173, 236, 86],
[175, 236, 87],
[177, 236, 87],
[180, 236, 87],
[182, 236, 87],
[184, 236, 88],
[185, 236, 88],
[187, 236, 88],
[189, 236, 88],
[191, 236, 89],
[193, 236, 89],
[195, 236, 89],
[196, 236, 89],
[198, 236, 89],
[200, 236, 89],
[201, 236, 90],
[203, 236, 90],
[204, 236, 90],
[205, 236, 90],
[207, 236, 90],
[208, 235, 90],
[209, 234, 91],
[210, 234, 91],
[211, 233, 91],
[212, 232, 91],
[213, 230, 91],
[214, 229, 91],
[215, 228, 91],
[216, 226, 91],
[217, 225, 91],
[218, 224, 92],
[219, 222, 92],
[220, 221, 92],
[221, 219, 92],
[222, 218, 92],
[223, 217, 92],
[224, 215, 92],
[226, 214, 92],
[227, 213, 93],
[229, 211, 93],
[230, 210, 93],
[231, 208, 93],
[233, 206, 93],
[234, 205, 93],
[236, 203, 93],
[237, 201, 94],
[238, 200, 94],
[239, 198, 94],
[240, 196, 94],
[241, 194, 94],
[242, 192, 94],
[243, 190, 94],
[243, 188, 94],
[244, 186, 94],
[244, 184, 94],
[245, 182, 94],
[245, 180, 94],
[246, 178, 94],
[246, 176, 93],
[247, 173, 93],
[247, 171, 93],
[248, 168, 93],
[248, 166, 93],
[248, 163, 92],
[249, 161, 92],
[249, 158, 92],
[249, 156, 92],
[249, 153, 91],
[249, 150, 91]]
CUBEYF = [
[123, 2, 144],
[123, 3, 146],
[124, 4, 149],
[125, 5, 151],
[126, 6, 153],
[127, 7, 156],
[128, 8, 158],
[129, 9, 160],
[129, 10, 163],
[130, 11, 165],
[131, 12, 168],
[131, 12, 171],
[132, 12, 174],
[133, 13, 177],
[133, 15, 179],
[134, 17, 181],
[134, 19, 184],
[134, 21, 186],
[134, 24, 188],
[134, 26, 190],
[134, 29, 192],
[134, 31, 194],
[134, 34, 196],
[134, 36, 198],
[133, 39, 200],
[133, 41, 203],
[133, 43, 204],
[133, 45, 206],
[132, 47, 208],
[132, 49, 210],
[132, 51, 212],
[131, 53, 214],
[131, 55, 216],
[130, 56, 218],
[130, 58, 219],
[129, 60, 221],
[129, 62, 223],
[128, 64, 224],
[128, 66, 226],
[127, 68, 228],
[127, 69, 230],
[126, 71, 232],
[125, 72, 234],
[125, 74, 235],
[122, 77, 238],
[121, 78, 240],
[120, 80, 241],
[119, 81, 242],
[118, 83, 244],
[117, 84, 245],
[117, 86, 247],
[115, 87, 248],
[115, 89, 250],
[114, 90, 251],
[113, 91, 251],
[113, 92, 252],
[112, 94, 252],
[111, 95, 252],
[110, 97, 253],
[110, 98, 253],
[109, 100, 253],
[108, 101, 254],
[108, 103, 254],
[106, 104, 254],
[106, 106, 254],
[105, 107, 255],
[105, 108, 255],
[104, 110, 255],
[104, 112, 254],
[104, 113, 254],
[103, 115, 253],
[103, 116, 253],
[102, 118, 252],
[101, 119, 251],
[100, 120, 250],
[99, 122, 249],
[98, 124, 248],
[97, 126, 246],
[97, 128, 245],
[96, 130, 244],
[95, 131, 243],
[94, 132, 242],
[93, 134, 241],
[92, 135, 240],
[91, 136, 239],
[90, 137, 238],
[90, 138, 237],
[89, 139, 236],
[88, 141, 234],
[87, 142, 233],
[86, 143, 232],
[85, 144, 231],
[84, 145, 230],
[84, 147, 228],
[82, 148, 227],
[82, 150, 225],
[81, 151, 224],
[80, 152, 223],
[79, 153, 222],
[78, 154, 221],
[77, 156, 219],
[76, 157, 218],
[76, 158, 217],
[75, 159, 216],
[74, 160, 215],
[73, 161, 214],
[72, 163, 212],
[71, 164, 211],
[70, 165, 210],
[69, 167, 208],
[67, 169, 205],
[66, 170, 203],
[65, 171, 202],
[64, 172, 200],
[64, 173, 199],
[63, 174, 197],
[62, 175, 196],
[61, 176, 195],
[60, 177, 193],
[60, 178, 191],
[59, 179, 190],
[58, 180, 189],
[57, 181, 187],
[56, 182, 185],
[56, 182, 184],
[55, 184, 182],
[55, 184, 181],
[56, 185, 179],
[57, 186, 177],
[57, 187, 176],
[58, 188, 175],
[58, 188, 173],
[59, 189, 171],
[59, 190, 170],
[60, 191, 168],
[61, 192, 166],
[61, 192, 164],
[62, 193, 163],
[62, 193, 161],
[63, 194, 159],
[64, 195, 158],
[64, 196, 156],
[65, 197, 153],
[66, 198, 150],
[67, 199, 148],
[67, 200, 147],
[68, 201, 145],
[69, 202, 143],
[69, 202, 141],
[70, 203, 140],
[70, 203, 138],
[70, 204, 136],
[71, 205, 134],
[71, 205, 133],
[72, 206, 131],
[72, 207, 129],
[73, 208, 128],
[73, 208, 126],
[74, 209, 124],
[75, 210, 122],
[75, 210, 120],
[76, 211, 118],
[76, 211, 116],
[77, 212, 114],
[77, 212, 113],
[78, 213, 111],
[79, 214, 109],
[79, 214, 107],
[80, 215, 106],
[80, 215, 104],
[81, 216, 102],
[82, 217, 101],
[82, 217, 100],
[83, 218, 98],
[84, 219, 95],
[85, 220, 92],
[86, 220, 90],
[87, 221, 88],
[88, 222, 87],
[88, 222, 85],
[89, 223, 84],
[89, 223, 82],
[89, 224, 81],
[90, 225, 80],
[90, 225, 79],
[91, 226, 78],
[91, 226, 76],
[92, 227, 74],
[92, 227, 73],
[93, 228, 71],
[95, 229, 71],
[96, 229, 71],
[98, 229, 72],
[99, 229, 72],
[101, 230, 72],
[103, 230, 73],
[104, 231, 73],
[106, 231, 74],
[108, 231, 74],
[110, 232, 75],
[111, 232, 75],
[113, 232, 76],
[115, 233, 77],
[116, 233, 77],
[118, 233, 77],
[120, 233, 77],
[123, 233, 78],
[126, 233, 79],
[130, 234, 80],
[132, 235, 80],
[134, 235, 80],
[136, 235, 81],
[138, 235, 81],
[140, 235, 82],
[142, 235, 82],
[145, 235, 82],
[147, 236, 83],
[149, 236, 83],
[152, 236, 84],
[154, 236, 84],
[156, 236, 84],
[159, 236, 85],
[161, 236, 85],
[163, 236, 85],
[164, 236, 85],
[165, 236, 85],
[166, 236, 86],
[168, 236, 86],
[171, 236, 86],
[172, 236, 86],
[173, 236, 86],
[174, 236, 86],
[176, 236, 87],
[178, 236, 87],
[180, 236, 87],
[180, 236, 87],
[182, 236, 87],
[183, 236, 88],
[184, 236, 88],
[184, 236, 88],
[187, 236, 88],
[189, 236, 88],
[191, 236, 89],
[192, 236, 89],
[192, 236, 89],
[194, 236, 89],
[197, 236, 89],
[199, 236, 90],
[200, 236, 90],
[201, 236, 90],
[202, 236, 90],
[204, 236, 90],
[204, 236, 90],
[205, 236, 90],
[207, 236, 91],
[209, 235, 91]]
LINEARL = [
[4, 4, 4],
[10, 3, 8],
[13, 4, 11],
[16, 5, 14],
[18, 5, 16],
[21, 6, 18],
[22, 7, 19],
[24, 8, 21],
[26, 8, 22],
[27, 9, 24],
[28, 10, 25],
[30, 11, 26],
[31, 12, 27],
[32, 12, 28],
[33, 13, 29],
[35, 14, 31],
[36, 14, 32],
[37, 15, 32],
[38, 15, 33],
[39, 16, 34],
[40, 17, 35],
[41, 17, 36],
[42, 18, 38],
[43, 19, 38],
[44, 19, 39],
[46, 20, 41],
[46, 20, 45],
[46, 21, 50],
[45, 21, 55],
[45, 21, 60],
[45, 22, 64],
[45, 23, 67],
[45, 23, 71],
[45, 24, 75],
[45, 24, 77],
[45, 25, 81],
[45, 25, 84],
[44, 26, 87],
[44, 27, 90],
[45, 27, 92],
[45, 28, 95],
[44, 29, 98],
[44, 29, 100],
[44, 30, 103],
[44, 31, 106],
[44, 31, 109],
[44, 32, 110],
[44, 33, 113],
[44, 34, 116],
[43, 34, 118],
[42, 35, 121],
[40, 38, 120],
[38, 40, 119],
[36, 42, 120],
[34, 44, 120],
[33, 46, 120],
[32, 47, 120],
[31, 49, 121],
[30, 50, 122],
[30, 51, 123],
[29, 52, 123],
[29, 53, 125],
[28, 55, 125],
[28, 56, 126],
[27, 57, 127],
[28, 58, 128],
[28, 59, 129],
[27, 60, 129],
[27, 61, 131],
[27, 62, 132],
[27, 63, 133],
[28, 64, 134],
[27, 65, 135],
[27, 66, 136],
[27, 68, 137],
[27, 69, 138],
[25, 71, 136],
[22, 73, 134],
[21, 74, 133],
[20, 76, 131],
[17, 78, 129],
[16, 79, 128],
[15, 81, 126],
[14, 82, 125],
[10, 84, 123],
[10, 85, 122],
[9, 87, 120],
[8, 88, 119],
[7, 89, 118],
[6, 91, 117],
[4, 92, 115],
[4, 94, 114],
[4, 95, 114],
[3, 96, 112],
[1, 98, 111],
[1, 99, 110],
[0, 100, 109],
[0, 101, 108],
[0, 103, 107],
[0, 104, 106],
[0, 105, 105],
[0, 107, 104],
[0, 108, 101],
[0, 110, 100],
[0, 111, 99],
[0, 112, 98],
[0, 114, 96],
[0, 115, 95],
[0, 116, 93],
[0, 118, 92],
[0, 119, 90],
[0, 120, 89],
[0, 121, 88],
[0, 123, 86],
[0, 124, 85],
[0, 125, 83],
[0, 127, 82],
[0, 128, 80],
[0, 129, 79],
[0, 131, 77],
[0, 132, 75],
[0, 133, 73],
[0, 134, 72],
[0, 136, 70],
[0, 137, 68],
[0, 138, 66],
[0, 139, 65],
[0, 141, 64],
[0, 142, 63],
[0, 143, 61],
[0, 145, 60],
[0, 146, 60],
[0, 147, 58],
[0, 149, 57],
[0, 150, 56],
[0, 151, 55],
[0, 153, 53],
[0, 154, 52],
[0, 155, 51],
[0, 157, 50],
[0, 158, 48],
[0, 159, 47],
[0, 160, 45],
[0, 162, 44],
[0, 163, 42],
[0, 164, 41],
[0, 165, 39],
[0, 167, 36],
[0, 168, 34],
[0, 169, 31],
[0, 170, 23],
[0, 169, 8],
[9, 170, 0],
[20, 171, 0],
[29, 172, 0],
[35, 173, 0],
[40, 174, 0],
[45, 175, 0],
[48, 176, 0],
[52, 177, 0],
[55, 178, 0],
[59, 179, 0],
[61, 180, 0],
[64, 181, 0],
[66, 182, 0],
[68, 183, 0],
[71, 184, 0],
[73, 185, 0],
[76, 186, 0],
[78, 187, 0],
[79, 188, 0],
[81, 189, 0],
[83, 190, 0],
[85, 191, 0],
[87, 192, 0],
[92, 193, 0],
[99, 193, 0],
[106, 193, 0],
[114, 193, 0],
[119, 194, 0],
[125, 194, 0],
[130, 194, 0],
[135, 195, 0],
[140, 195, 0],
[145, 195, 0],
[149, 196, 0],
[153, 196, 0],
[157, 197, 0],
[161, 197, 0],
[165, 197, 0],
[169, 198, 0],
[172, 198, 0],
[176, 199, 0],
[180, 199, 0],
[184, 199, 0],
[186, 200, 0],
[190, 201, 0],
[193, 201, 0],
[197, 201, 0],
[200, 202, 0],
[201, 201, 24],
[203, 202, 51],
[206, 202, 65],
[207, 203, 77],
[209, 203, 87],
[212, 203, 95],
[213, 204, 103],
[215, 205, 109],
[218, 205, 116],
[219, 206, 121],
[221, 207, 127],
[223, 207, 132],
[226, 207, 138],
[227, 208, 143],
[229, 209, 147],
[231, 209, 151],
[232, 210, 155],
[235, 211, 159],
[237, 211, 164],
[238, 212, 168],
[240, 212, 172],
[243, 213, 175],
[243, 214, 179],
[245, 214, 183],
[248, 215, 186],
[248, 216, 189],
[248, 218, 193],
[247, 219, 195],
[247, 220, 198],
[247, 222, 201],
[248, 223, 204],
[247, 224, 206],
[247, 226, 209],
[247, 227, 211],
[247, 229, 214],
[247, 230, 216],
[247, 231, 218],
[247, 232, 220],
[248, 234, 224],
[247, 235, 225],
[247, 236, 229],
[247, 238, 231],
[247, 239, 232],
[248, 240, 235],
[248, 242, 237],
[247, 243, 239],
[248, 244, 241],
[248, 246, 244],
[248, 247, 246],
[248, 248, 248],
[249, 249, 249],
[251, 251, 251],
[252, 252, 252],
[253, 253, 253],
[254, 254, 254],
[255, 255, 255]]
palettable-3.3.0/palettable/mycarta/mycarta.py 0000644 0000765 0000024 00000002723 13052672644 022536 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import, print_function
"""
Mycarta palettes as described at https://mycarta.wordpress.com/color-palettes/
"""
import itertools
from . import colordata
from .. import utils
from ..palette import Palette
_PALETTE_TYPE = 'sequential'
_NAMES_TO_DATA = {
'Cube1': colordata.CUBE1,
'CubeYF': colordata.CUBEYF,
'LinearL': colordata.LINEARL,
}
_NAME_MAP = utils.make_name_map(_NAMES_TO_DATA.keys())
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(
sorted(_NAMES_TO_DATA.keys()))
class MycartaMap(Palette):
"""
Representation of a color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
palette_type : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
url : str
Website with related info.
"""
url = 'https://mycarta.wordpress.com/color-palettes/'
def __init__(self, name, palette_type, colors):
super(MycartaMap, self).__init__(name, palette_type, colors)
print_maps = utils.print_maps_factory(
'mycarta', _NAMES_AND_LENGTHS, _PALETTE_TYPE)
get_map = utils.get_map_factory(
'mycarta', __name__, _NAMES_TO_DATA, _PALETTE_TYPE,
MycartaMap)
palettable-3.3.0/palettable/palette.py 0000644 0000765 0000024 00000016040 13152437502 021062 0 ustar jiffyclub staff 0000000 0000000 # coding: utf-8
from __future__ import absolute_import
import sys
try:
import matplotlib.pyplot as plt
from matplotlib.colors import (
ListedColormap, BoundaryNorm, Normalize, LinearSegmentedColormap)
from matplotlib.colorbar import ColorbarBase
except ImportError: # pragma: no cover
HAVE_MPL = False
except RuntimeError: # e.g. OS X, if Python is not installed as a framework
HAVE_MPL = False
else:
HAVE_MPL = True
class Palette(object):
"""
Representation of a color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
map_type : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
"""
def __init__(self, name, map_type, colors):
self.name = name
self.type = map_type
self.number = len(colors)
self.colors = colors
@property
def hex_colors(self):
"""
Colors as a tuple of hex strings. (e.g. '#A912F4')
"""
hc = []
for color in self.colors:
h = '#' + ''.join('{0:>02}'.format(hex(c)[2:].upper())
for c in color)
hc.append(h)
return hc
@property
def mpl_colors(self):
"""
Colors expressed on the range 0-1 as used by matplotlib.
"""
mc = []
for color in self.colors:
mc.append(tuple([x / 255. for x in color]))
return mc
@property
def mpl_colormap(self):
"""
A basic matplotlib color map. If you want to specify keyword arguments
use the `get_mpl_colormap` method.
"""
return self.get_mpl_colormap()
def get_mpl_colormap(self, **kwargs):
"""
A color map that can be used in matplotlib plots. Requires matplotlib
to be importable. Keyword arguments are passed to
`matplotlib.colors.LinearSegmentedColormap.from_list`.
"""
if not HAVE_MPL: # pragma: no cover
raise RuntimeError('matplotlib not available.')
cmap = LinearSegmentedColormap.from_list(self.name,
self.mpl_colors, **kwargs)
return cmap
def show_as_blocks(self, block_size=100):
"""
Show colors in the IPython Notebook using ipythonblocks.
Parameters
----------
block_size : int, optional
Size of displayed blocks.
"""
from ipythonblocks import BlockGrid
grid = BlockGrid(self.number, 1, block_size=block_size)
for block, color in zip(grid, self.colors):
block.rgb = color
grid.show()
def _write_image(self, fp, style, format='png', size=(6, 1)):
"""
Write the color map as an image to a file-like object.
Parameters
----------
fp : file-like
A file-like object such as an open file pointer or
a StringIO/BytesIO instance.
style : {'discrete', 'continuous'}
Whether to make the color map image as a discrete map
or a continuous map.
format : str, optional
An image format that will be understood by matplotlib.
size : tuple of int, optional
(width, height) of image to make in units of inches.
"""
if not HAVE_MPL: # pragma: no cover
raise RuntimeError('matplotlib not available.')
fig = plt.figure(figsize=size, frameon=False)
ax = fig.add_axes([0, 0, 1, 1], frameon=False)
ax.set_axis_off()
if style == 'discrete':
# make a bounded color map showing only the defined colors
ncolors = self.number
norm = BoundaryNorm(range(ncolors + 1), ncolors=ncolors)
cmap = ListedColormap(self.mpl_colors)
elif style == 'continuous':
# make the smooth, interpolated color map
cmap = self.mpl_colormap
norm = Normalize(vmin=0, vmax=1)
ColorbarBase(ax, cmap=cmap, norm=norm, orientation='horizontal')
fig.savefig(fp, format=format)
plt.close(fig)
def show_discrete_image(self, size=(6, 1)):
"""
Embed an image of this discrete color map in the IPython Notebook.
Parameters
----------
size : tuple of int, optional
(width, height) of image to make in units of inches.
"""
if sys.version_info[0] == 2:
from StringIO import StringIO as BytesIO
elif sys.version_info[0] == 3:
from io import BytesIO
from IPython.display import display
from IPython.display import Image as ipyImage
im = BytesIO()
self._write_image(im, 'discrete', format='png', size=size)
display(ipyImage(data=im.getvalue(), format='png'))
def save_discrete_image(self, filename, size=(6, 1), format=None):
"""
Save an image of this discrete color map to a file.
Parameters
----------
filename : str
If `format` is None the format will be inferred from the
`filename` extension.
size : tuple of int, optional
(width, height) of image to make in units of inches.
format : str, optional
An image format that will be understood by matplotlib.
"""
with open(filename, 'wb') as f:
self._write_image(
f, 'discrete', format=filename.split('.')[-1], size=size)
def show_continuous_image(self, size=(6, 1)):
"""
Embed an image of this continuous color map in the IPython Notebook.
Parameters
----------
size : tuple of int, optional
(width, height) of image to make in units of inches.
"""
if sys.version_info[0] == 2:
from StringIO import StringIO as BytesIO
elif sys.version_info[0] == 3:
from io import BytesIO
from IPython.display import display
from IPython.display import Image as ipyImage
im = BytesIO()
self._write_image(im, 'continuous', format='png', size=size)
display(ipyImage(data=im.getvalue(), format='png'))
def save_continuous_image(self, filename, size=(6, 1), format=None):
"""
Save an image of this continuous color map to a file.
Parameters
----------
filename : str
If `format` is None the format will be inferred from the
`filename` extension.
size : tuple of int, optional
(width, height) of image to make in units of inches.
format : str, optional
An image format that will be understood by matplotlib.
"""
with open(filename, 'wb') as f:
self._write_image(
f, 'continuous', format=filename.split('.')[-1], size=size)
palettable-3.3.0/palettable/scientific/ 0000755 0000765 0000024 00000000000 13535037137 021176 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/scientific/__init__.py 0000644 0000765 0000024 00000000114 13535036654 023306 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from . import diverging, sequential
palettable-3.3.0/palettable/scientific/colordata.py 0000644 0000765 0000024 00000357113 13535036654 023535 0 ustar jiffyclub staff 0000000 0000000 # Via http://www.fabiocrameri.ch/colourmaps.php
ACTON = (
(46, 33, 77),
(47, 34, 77),
(48, 35, 78),
(49, 36, 79),
(50, 37, 80),
(51, 38, 81),
(52, 38, 82),
(53, 39, 83),
(54, 40, 84),
(55, 41, 85),
(56, 42, 86),
(57, 43, 87),
(58, 44, 88),
(59, 45, 88),
(60, 46, 89),
(61, 47, 90),
(62, 48, 91),
(63, 48, 92),
(65, 49, 93),
(66, 50, 94),
(67, 51, 95),
(68, 52, 96),
(69, 53, 97),
(70, 54, 98),
(71, 55, 99),
(72, 56, 100),
(73, 57, 100),
(74, 58, 101),
(75, 59, 102),
(76, 60, 103),
(77, 61, 104),
(79, 61, 105),
(80, 62, 106),
(81, 63, 107),
(82, 64, 108),
(83, 65, 109),
(84, 66, 110),
(85, 67, 111),
(86, 68, 112),
(88, 69, 113),
(89, 70, 114),
(90, 71, 114),
(91, 72, 115),
(92, 73, 116),
(94, 73, 117),
(95, 74, 118),
(96, 75, 119),
(97, 76, 120),
(99, 77, 121),
(100, 78, 122),
(101, 79, 123),
(102, 80, 123),
(104, 80, 124),
(105, 81, 125),
(106, 82, 126),
(107, 83, 127),
(109, 84, 128),
(110, 84, 128),
(111, 85, 129),
(113, 86, 130),
(114, 87, 131),
(115, 87, 131),
(117, 88, 132),
(118, 89, 133),
(119, 90, 134),
(121, 90, 134),
(122, 91, 135),
(123, 91, 136),
(125, 92, 136),
(126, 93, 137),
(127, 93, 137),
(129, 94, 138),
(130, 94, 139),
(131, 95, 139),
(133, 95, 140),
(134, 96, 140),
(135, 96, 141),
(136, 97, 141),
(138, 97, 142),
(139, 97, 142),
(140, 98, 142),
(141, 98, 143),
(143, 98, 143),
(144, 99, 144),
(145, 99, 144),
(146, 99, 144),
(148, 100, 144),
(149, 100, 145),
(150, 100, 145),
(151, 100, 145),
(152, 100, 145),
(153, 101, 146),
(155, 101, 146),
(156, 101, 146),
(157, 101, 146),
(158, 101, 146),
(159, 101, 147),
(160, 101, 147),
(161, 101, 147),
(162, 102, 147),
(164, 102, 147),
(165, 102, 147),
(166, 102, 148),
(167, 102, 148),
(168, 102, 148),
(169, 102, 148),
(170, 102, 148),
(171, 102, 148),
(172, 102, 148),
(173, 103, 149),
(175, 103, 149),
(176, 103, 149),
(177, 103, 149),
(178, 103, 149),
(179, 103, 149),
(180, 104, 150),
(181, 104, 150),
(183, 104, 150),
(184, 105, 150),
(185, 105, 151),
(186, 105, 151),
(187, 106, 152),
(189, 106, 152),
(190, 107, 152),
(191, 107, 153),
(192, 108, 153),
(193, 109, 154),
(195, 109, 154),
(196, 110, 155),
(197, 111, 156),
(198, 112, 156),
(199, 112, 157),
(200, 113, 158),
(201, 114, 158),
(202, 115, 159),
(203, 116, 160),
(204, 117, 161),
(205, 118, 161),
(206, 119, 162),
(207, 120, 163),
(208, 121, 164),
(208, 122, 164),
(209, 123, 165),
(209, 124, 166),
(210, 125, 167),
(210, 126, 167),
(211, 127, 168),
(211, 128, 169),
(211, 129, 170),
(212, 130, 170),
(212, 131, 171),
(212, 132, 172),
(212, 133, 172),
(212, 134, 173),
(213, 135, 174),
(213, 136, 174),
(213, 137, 175),
(213, 138, 176),
(213, 139, 176),
(213, 140, 177),
(213, 140, 178),
(213, 141, 178),
(213, 142, 179),
(213, 143, 179),
(213, 144, 180),
(212, 145, 181),
(212, 145, 181),
(212, 146, 182),
(212, 147, 182),
(212, 148, 183),
(212, 149, 184),
(212, 149, 184),
(212, 150, 185),
(212, 151, 185),
(212, 152, 186),
(212, 153, 187),
(212, 154, 187),
(212, 154, 188),
(212, 155, 188),
(212, 156, 189),
(211, 157, 189),
(211, 158, 190),
(211, 159, 191),
(211, 159, 191),
(211, 160, 192),
(211, 161, 193),
(211, 162, 193),
(211, 163, 194),
(211, 164, 194),
(211, 165, 195),
(211, 166, 196),
(212, 166, 196),
(212, 167, 197),
(212, 168, 197),
(212, 169, 198),
(212, 170, 199),
(212, 171, 199),
(212, 172, 200),
(212, 173, 201),
(212, 174, 201),
(212, 175, 202),
(213, 175, 203),
(213, 176, 203),
(213, 177, 204),
(213, 178, 205),
(213, 179, 205),
(213, 180, 206),
(214, 181, 206),
(214, 182, 207),
(214, 183, 208),
(214, 184, 208),
(214, 185, 209),
(215, 186, 210),
(215, 187, 210),
(215, 188, 211),
(215, 189, 212),
(216, 190, 213),
(216, 191, 213),
(216, 192, 214),
(217, 193, 215),
(217, 194, 215),
(217, 195, 216),
(218, 196, 217),
(218, 197, 217),
(218, 198, 218),
(218, 199, 219),
(219, 200, 219),
(219, 201, 220),
(219, 202, 221),
(220, 203, 221),
(220, 204, 222),
(221, 205, 223),
(221, 206, 224),
(221, 207, 224),
(222, 208, 225),
(222, 209, 226),
(222, 210, 226),
(223, 211, 227),
(223, 212, 228),
(223, 213, 228),
(224, 214, 229),
(224, 215, 230),
(225, 216, 231),
(225, 217, 231),
(225, 218, 232),
(226, 219, 233),
(226, 220, 233),
(227, 221, 234),
(227, 222, 235),
(227, 223, 235),
(228, 224, 236),
(228, 225, 237),
(228, 226, 238),
(229, 227, 238),
(229, 228, 239),
(230, 230, 240),
)
BAMAKO = (
(0, 64, 76),
(1, 64, 76),
(2, 65, 76),
(2, 65, 75),
(3, 65, 75),
(4, 66, 75),
(4, 66, 74),
(5, 66, 74),
(6, 67, 74),
(6, 67, 73),
(7, 68, 73),
(8, 68, 73),
(9, 68, 72),
(9, 69, 72),
(10, 69, 71),
(11, 70, 71),
(11, 70, 71),
(12, 70, 70),
(13, 71, 70),
(13, 71, 70),
(14, 72, 69),
(15, 72, 69),
(15, 72, 68),
(16, 73, 68),
(17, 73, 68),
(17, 74, 67),
(18, 74, 67),
(18, 74, 67),
(19, 75, 66),
(20, 75, 66),
(20, 76, 65),
(21, 76, 65),
(21, 76, 65),
(22, 77, 64),
(23, 77, 64),
(23, 78, 64),
(24, 78, 63),
(25, 79, 63),
(25, 79, 62),
(26, 79, 62),
(26, 80, 62),
(27, 80, 61),
(28, 81, 61),
(28, 81, 60),
(29, 82, 60),
(30, 82, 60),
(30, 82, 59),
(31, 83, 59),
(32, 83, 58),
(32, 84, 58),
(33, 84, 58),
(34, 85, 57),
(34, 85, 57),
(35, 85, 56),
(36, 86, 56),
(36, 86, 55),
(37, 87, 55),
(38, 87, 55),
(38, 88, 54),
(39, 88, 54),
(40, 89, 53),
(40, 89, 53),
(41, 90, 52),
(42, 90, 52),
(43, 90, 52),
(43, 91, 51),
(44, 91, 51),
(45, 92, 50),
(45, 92, 50),
(46, 93, 49),
(47, 93, 49),
(48, 94, 49),
(48, 94, 48),
(49, 95, 48),
(50, 95, 47),
(51, 96, 47),
(51, 96, 46),
(52, 97, 46),
(53, 97, 45),
(54, 98, 45),
(54, 98, 45),
(55, 99, 44),
(56, 99, 44),
(57, 100, 43),
(57, 100, 43),
(58, 101, 42),
(59, 101, 42),
(60, 102, 41),
(61, 102, 41),
(61, 103, 40),
(62, 103, 40),
(63, 104, 39),
(64, 104, 39),
(65, 105, 39),
(65, 105, 38),
(66, 106, 38),
(67, 106, 37),
(68, 107, 37),
(69, 107, 36),
(70, 108, 36),
(70, 109, 35),
(71, 109, 35),
(72, 110, 34),
(73, 110, 34),
(74, 111, 33),
(75, 111, 33),
(76, 112, 32),
(76, 113, 32),
(77, 113, 31),
(78, 114, 31),
(79, 114, 30),
(80, 115, 29),
(81, 115, 29),
(82, 116, 28),
(83, 117, 28),
(84, 117, 27),
(85, 118, 27),
(86, 119, 26),
(87, 119, 26),
(88, 120, 25),
(89, 120, 25),
(90, 121, 24),
(91, 122, 23),
(92, 122, 23),
(93, 123, 22),
(94, 124, 22),
(95, 124, 21),
(96, 125, 21),
(97, 126, 20),
(98, 126, 19),
(99, 127, 19),
(100, 128, 18),
(101, 128, 18),
(103, 129, 17),
(104, 130, 16),
(105, 130, 16),
(106, 131, 15),
(107, 132, 14),
(108, 132, 14),
(110, 133, 13),
(111, 134, 12),
(112, 134, 12),
(113, 135, 11),
(115, 136, 10),
(116, 136, 9),
(117, 137, 9),
(118, 137, 8),
(120, 138, 7),
(121, 138, 7),
(122, 139, 6),
(124, 139, 6),
(125, 140, 5),
(126, 140, 5),
(128, 141, 4),
(129, 141, 4),
(130, 141, 4),
(131, 142, 3),
(133, 142, 3),
(134, 142, 3),
(135, 142, 3),
(137, 143, 3),
(138, 143, 3),
(139, 143, 3),
(141, 143, 3),
(142, 144, 3),
(143, 144, 3),
(145, 144, 4),
(146, 145, 4),
(147, 145, 5),
(149, 145, 6),
(150, 146, 6),
(152, 146, 7),
(153, 147, 8),
(155, 147, 9),
(156, 148, 11),
(158, 149, 12),
(160, 149, 13),
(161, 150, 15),
(163, 151, 16),
(165, 152, 17),
(166, 153, 19),
(168, 154, 20),
(170, 155, 22),
(171, 156, 24),
(173, 157, 25),
(175, 158, 27),
(176, 159, 28),
(178, 160, 30),
(180, 161, 32),
(182, 163, 33),
(183, 164, 35),
(185, 165, 37),
(187, 166, 39),
(188, 168, 41),
(190, 169, 42),
(192, 170, 44),
(193, 171, 46),
(195, 173, 48),
(197, 174, 50),
(198, 175, 52),
(200, 176, 54),
(201, 178, 56),
(203, 179, 58),
(204, 180, 59),
(205, 181, 61),
(207, 183, 63),
(208, 184, 65),
(209, 185, 67),
(211, 186, 69),
(212, 187, 71),
(213, 188, 73),
(214, 189, 75),
(216, 190, 77),
(217, 191, 79),
(218, 192, 81),
(219, 193, 82),
(220, 194, 84),
(221, 195, 86),
(222, 196, 88),
(223, 197, 90),
(224, 198, 92),
(225, 199, 94),
(226, 200, 95),
(227, 201, 97),
(228, 202, 99),
(229, 203, 101),
(230, 204, 103),
(231, 205, 104),
(231, 206, 106),
(232, 207, 108),
(233, 208, 110),
(234, 208, 111),
(235, 209, 113),
(236, 210, 115),
(237, 211, 117),
(238, 212, 118),
(239, 213, 120),
(239, 214, 122),
(240, 215, 124),
(241, 216, 125),
(242, 216, 127),
(243, 217, 129),
(244, 218, 131),
(245, 219, 132),
(246, 220, 134),
(246, 221, 136),
(247, 222, 137),
(248, 223, 139),
(249, 223, 141),
(250, 224, 143),
(251, 225, 144),
(252, 226, 146),
(252, 227, 148),
(253, 228, 150),
(254, 229, 151),
(255, 229, 153),
)
BATLOW = (
(1, 25, 89),
(2, 27, 89),
(2, 28, 90),
(3, 29, 90),
(3, 30, 90),
(4, 31, 90),
(4, 32, 90),
(5, 33, 91),
(5, 34, 91),
(6, 35, 91),
(6, 36, 91),
(7, 37, 91),
(7, 38, 91),
(8, 39, 92),
(8, 40, 92),
(9, 41, 92),
(9, 42, 92),
(10, 43, 92),
(10, 44, 92),
(11, 45, 93),
(11, 46, 93),
(11, 47, 93),
(12, 48, 93),
(12, 49, 93),
(13, 50, 94),
(13, 51, 94),
(13, 52, 94),
(14, 53, 94),
(14, 54, 94),
(14, 55, 94),
(15, 56, 95),
(15, 58, 95),
(15, 59, 95),
(16, 60, 95),
(16, 61, 95),
(17, 62, 95),
(17, 63, 96),
(17, 64, 96),
(18, 65, 96),
(18, 66, 96),
(19, 67, 96),
(19, 68, 96),
(19, 69, 96),
(20, 70, 96),
(20, 71, 97),
(21, 72, 97),
(21, 74, 97),
(22, 75, 97),
(22, 76, 97),
(23, 77, 97),
(24, 78, 97),
(24, 79, 97),
(25, 80, 97),
(26, 81, 97),
(26, 82, 97),
(27, 83, 97),
(28, 84, 97),
(29, 85, 97),
(29, 86, 97),
(30, 87, 97),
(31, 88, 97),
(32, 89, 96),
(33, 90, 96),
(34, 91, 96),
(35, 92, 96),
(36, 93, 95),
(37, 94, 95),
(38, 95, 95),
(40, 96, 95),
(41, 97, 94),
(42, 97, 94),
(43, 98, 93),
(44, 99, 93),
(46, 100, 92),
(47, 101, 92),
(48, 102, 91),
(50, 102, 91),
(51, 103, 90),
(52, 104, 90),
(54, 105, 89),
(55, 105, 88),
(56, 106, 88),
(58, 107, 87),
(59, 107, 86),
(61, 108, 86),
(62, 108, 85),
(64, 109, 84),
(65, 110, 83),
(66, 110, 83),
(68, 111, 82),
(69, 111, 81),
(71, 112, 80),
(72, 113, 80),
(74, 113, 79),
(75, 114, 78),
(77, 114, 77),
(78, 115, 76),
(80, 115, 75),
(81, 116, 75),
(83, 116, 74),
(84, 117, 73),
(86, 117, 72),
(87, 118, 71),
(89, 118, 70),
(90, 119, 70),
(92, 119, 69),
(93, 120, 68),
(95, 120, 67),
(96, 120, 66),
(98, 121, 65),
(99, 121, 65),
(101, 122, 64),
(102, 122, 63),
(104, 123, 62),
(106, 123, 61),
(107, 124, 60),
(109, 124, 60),
(110, 125, 59),
(112, 125, 58),
(113, 126, 57),
(115, 126, 56),
(117, 126, 56),
(118, 127, 55),
(120, 127, 54),
(122, 128, 53),
(123, 128, 53),
(125, 129, 52),
(127, 129, 51),
(129, 130, 51),
(130, 130, 50),
(132, 131, 50),
(134, 131, 49),
(136, 132, 48),
(137, 132, 48),
(139, 133, 47),
(141, 133, 47),
(143, 134, 47),
(145, 134, 46),
(147, 134, 46),
(149, 135, 46),
(151, 135, 46),
(153, 136, 46),
(155, 136, 46),
(157, 137, 46),
(159, 137, 46),
(161, 138, 46),
(163, 138, 46),
(165, 139, 46),
(168, 139, 47),
(170, 140, 47),
(172, 140, 48),
(174, 141, 49),
(176, 141, 49),
(178, 141, 50),
(180, 142, 51),
(183, 142, 52),
(185, 143, 53),
(187, 143, 54),
(189, 144, 55),
(191, 144, 56),
(193, 144, 57),
(195, 145, 59),
(197, 145, 60),
(199, 145, 61),
(201, 146, 63),
(203, 146, 64),
(205, 147, 66),
(207, 147, 67),
(209, 147, 69),
(211, 148, 70),
(213, 148, 72),
(215, 149, 74),
(217, 149, 75),
(218, 149, 77),
(220, 150, 79),
(222, 150, 81),
(224, 151, 83),
(225, 151, 85),
(227, 152, 86),
(228, 152, 88),
(230, 152, 90),
(232, 153, 92),
(233, 153, 94),
(234, 154, 96),
(236, 154, 99),
(237, 155, 101),
(238, 156, 103),
(239, 156, 105),
(241, 157, 107),
(242, 157, 109),
(243, 158, 111),
(244, 158, 113),
(245, 159, 116),
(245, 160, 118),
(246, 160, 120),
(247, 161, 122),
(248, 162, 124),
(248, 162, 126),
(249, 163, 128),
(249, 164, 131),
(250, 164, 133),
(250, 165, 135),
(251, 166, 137),
(251, 166, 139),
(252, 167, 141),
(252, 168, 143),
(252, 168, 146),
(252, 169, 148),
(253, 170, 150),
(253, 170, 152),
(253, 171, 154),
(253, 172, 156),
(253, 172, 158),
(253, 173, 160),
(253, 174, 162),
(253, 175, 164),
(253, 175, 166),
(253, 176, 168),
(253, 177, 171),
(253, 177, 173),
(253, 178, 175),
(253, 179, 177),
(253, 180, 179),
(253, 180, 181),
(253, 181, 183),
(253, 182, 185),
(253, 182, 187),
(253, 183, 189),
(253, 184, 191),
(253, 185, 194),
(253, 185, 196),
(253, 186, 198),
(253, 187, 200),
(253, 187, 202),
(253, 188, 204),
(253, 189, 206),
(253, 190, 208),
(253, 190, 211),
(252, 191, 213),
(252, 192, 215),
(252, 193, 217),
(252, 193, 219),
(252, 194, 221),
(252, 195, 224),
(252, 196, 226),
(252, 196, 228),
(252, 197, 230),
(251, 198, 232),
(251, 199, 235),
(251, 199, 237),
(251, 200, 239),
(251, 201, 241),
(251, 202, 243),
(251, 203, 246),
(250, 203, 248),
(250, 204, 250),
)
BERLIN = (
(158, 176, 255),
(156, 176, 254),
(154, 176, 253),
(152, 175, 252),
(149, 175, 251),
(147, 175, 250),
(145, 174, 249),
(142, 174, 247),
(140, 174, 246),
(138, 174, 245),
(135, 173, 244),
(133, 173, 243),
(130, 173, 242),
(128, 172, 241),
(126, 172, 240),
(123, 172, 238),
(121, 171, 237),
(118, 171, 236),
(116, 170, 235),
(113, 170, 233),
(111, 169, 232),
(108, 169, 230),
(106, 168, 229),
(103, 168, 227),
(101, 167, 226),
(98, 166, 224),
(96, 165, 223),
(93, 165, 221),
(91, 164, 219),
(88, 163, 217),
(86, 162, 215),
(84, 160, 213),
(81, 159, 211),
(79, 158, 209),
(77, 157, 207),
(75, 155, 205),
(72, 154, 202),
(70, 152, 200),
(68, 151, 198),
(67, 149, 195),
(65, 148, 193),
(63, 146, 190),
(62, 144, 188),
(60, 142, 185),
(59, 141, 183),
(57, 139, 180),
(56, 137, 178),
(55, 135, 175),
(54, 133, 173),
(53, 132, 170),
(51, 130, 168),
(50, 128, 166),
(50, 126, 163),
(49, 124, 161),
(48, 122, 158),
(47, 120, 156),
(46, 118, 153),
(45, 117, 151),
(44, 115, 148),
(44, 113, 146),
(43, 111, 143),
(42, 109, 141),
(41, 107, 139),
(41, 105, 136),
(40, 104, 134),
(39, 102, 131),
(39, 100, 129),
(38, 98, 127),
(37, 96, 124),
(36, 94, 122),
(36, 93, 120),
(35, 91, 117),
(34, 89, 115),
(34, 87, 113),
(33, 85, 110),
(32, 84, 108),
(32, 82, 106),
(31, 80, 104),
(30, 78, 101),
(30, 77, 99),
(29, 75, 97),
(28, 73, 95),
(28, 71, 92),
(27, 70, 90),
(26, 68, 88),
(26, 66, 86),
(25, 65, 83),
(25, 63, 81),
(24, 61, 79),
(23, 60, 77),
(23, 58, 75),
(22, 56, 73),
(22, 55, 71),
(21, 53, 68),
(21, 51, 66),
(20, 50, 64),
(20, 48, 62),
(19, 47, 60),
(19, 45, 58),
(18, 44, 56),
(18, 42, 54),
(18, 41, 52),
(17, 39, 50),
(17, 38, 48),
(17, 36, 46),
(17, 35, 44),
(17, 33, 42),
(17, 32, 40),
(16, 31, 38),
(16, 29, 37),
(16, 28, 35),
(17, 27, 33),
(17, 26, 32),
(17, 25, 30),
(17, 24, 28),
(17, 22, 27),
(17, 21, 25),
(17, 20, 24),
(17, 19, 23),
(18, 18, 21),
(18, 18, 20),
(19, 17, 18),
(20, 16, 17),
(20, 15, 16),
(21, 14, 14),
(22, 14, 13),
(23, 13, 11),
(24, 12, 10),
(25, 12, 9),
(26, 12, 8),
(27, 11, 7),
(28, 11, 6),
(29, 11, 5),
(30, 11, 4),
(32, 11, 4),
(33, 11, 3),
(34, 12, 2),
(35, 12, 2),
(36, 12, 2),
(37, 12, 1),
(38, 13, 1),
(39, 13, 1),
(40, 13, 1),
(42, 14, 1),
(43, 14, 1),
(44, 14, 0),
(45, 14, 0),
(47, 14, 0),
(48, 15, 0),
(49, 15, 0),
(51, 15, 0),
(52, 15, 0),
(53, 16, 0),
(55, 16, 0),
(56, 16, 0),
(57, 17, 0),
(59, 17, 0),
(60, 17, 1),
(62, 18, 1),
(63, 18, 1),
(65, 18, 1),
(66, 19, 1),
(68, 19, 1),
(69, 20, 1),
(71, 20, 1),
(72, 21, 2),
(74, 21, 2),
(75, 22, 2),
(77, 22, 2),
(79, 23, 3),
(80, 24, 3),
(82, 24, 4),
(84, 25, 5),
(86, 26, 5),
(87, 27, 6),
(89, 28, 7),
(91, 29, 8),
(93, 30, 9),
(95, 31, 10),
(97, 32, 11),
(99, 33, 12),
(101, 35, 14),
(104, 36, 15),
(106, 37, 16),
(108, 39, 17),
(110, 40, 19),
(112, 42, 20),
(115, 43, 22),
(117, 45, 23),
(119, 47, 25),
(121, 48, 27),
(123, 50, 28),
(125, 52, 30),
(128, 54, 32),
(130, 55, 34),
(132, 57, 36),
(134, 59, 38),
(136, 61, 40),
(138, 63, 42),
(140, 64, 44),
(142, 66, 46),
(144, 68, 48),
(146, 70, 50),
(148, 72, 52),
(150, 74, 54),
(152, 76, 57),
(154, 77, 59),
(156, 79, 61),
(158, 81, 63),
(160, 83, 65),
(162, 85, 68),
(164, 87, 70),
(166, 89, 72),
(168, 90, 74),
(170, 92, 76),
(172, 94, 79),
(174, 96, 81),
(176, 98, 83),
(178, 100, 85),
(180, 102, 88),
(182, 104, 90),
(184, 106, 92),
(186, 107, 95),
(188, 109, 97),
(190, 111, 99),
(192, 113, 101),
(194, 115, 104),
(196, 117, 106),
(198, 119, 108),
(200, 121, 111),
(202, 123, 113),
(204, 125, 115),
(206, 127, 118),
(208, 129, 120),
(210, 131, 122),
(213, 133, 125),
(215, 135, 127),
(217, 137, 130),
(219, 139, 132),
(221, 141, 134),
(223, 143, 137),
(225, 145, 139),
(227, 147, 142),
(229, 149, 144),
(231, 151, 146),
(234, 153, 149),
(236, 155, 151),
(238, 157, 154),
(240, 159, 156),
(242, 161, 159),
(244, 163, 161),
(246, 165, 163),
(249, 167, 166),
(251, 169, 168),
(253, 171, 171),
(255, 173, 173),
)
BILBAO = (
(255, 255, 255),
(254, 254, 254),
(252, 252, 252),
(251, 251, 251),
(250, 250, 250),
(248, 248, 248),
(247, 247, 247),
(246, 246, 246),
(245, 245, 244),
(243, 243, 243),
(242, 242, 242),
(241, 241, 240),
(239, 239, 239),
(238, 238, 238),
(237, 237, 236),
(236, 236, 235),
(234, 234, 234),
(233, 233, 232),
(232, 232, 231),
(231, 230, 230),
(229, 229, 228),
(228, 228, 227),
(227, 227, 225),
(226, 225, 224),
(225, 224, 223),
(223, 223, 221),
(222, 222, 220),
(221, 220, 218),
(220, 219, 217),
(219, 218, 216),
(218, 217, 214),
(217, 216, 213),
(215, 215, 211),
(214, 213, 210),
(213, 212, 208),
(212, 211, 207),
(211, 210, 205),
(210, 209, 204),
(210, 208, 202),
(209, 207, 201),
(208, 206, 199),
(207, 205, 198),
(206, 204, 196),
(205, 203, 195),
(205, 202, 194),
(204, 201, 192),
(203, 200, 191),
(202, 200, 189),
(202, 199, 188),
(201, 198, 186),
(201, 197, 185),
(200, 196, 184),
(199, 196, 182),
(199, 195, 181),
(198, 194, 179),
(198, 194, 178),
(197, 193, 177),
(197, 192, 175),
(196, 192, 174),
(196, 191, 173),
(195, 190, 171),
(195, 190, 170),
(194, 189, 169),
(194, 188, 167),
(194, 188, 166),
(193, 187, 165),
(193, 187, 163),
(192, 186, 162),
(192, 185, 161),
(192, 185, 159),
(191, 184, 158),
(191, 184, 157),
(190, 183, 156),
(190, 183, 154),
(190, 182, 153),
(189, 181, 152),
(189, 181, 150),
(189, 180, 149),
(188, 179, 148),
(188, 179, 146),
(187, 178, 145),
(187, 177, 144),
(187, 177, 143),
(186, 176, 141),
(186, 175, 140),
(185, 175, 139),
(185, 174, 137),
(185, 173, 136),
(184, 172, 135),
(184, 171, 133),
(183, 171, 132),
(183, 170, 131),
(182, 169, 129),
(182, 168, 128),
(181, 167, 127),
(181, 166, 126),
(181, 165, 124),
(180, 164, 123),
(180, 163, 122),
(179, 162, 121),
(179, 161, 120),
(178, 160, 119),
(178, 159, 118),
(178, 158, 117),
(177, 157, 116),
(177, 156, 115),
(177, 155, 114),
(176, 154, 113),
(176, 153, 112),
(175, 152, 112),
(175, 151, 111),
(175, 150, 110),
(174, 149, 109),
(174, 148, 109),
(174, 147, 108),
(173, 146, 108),
(173, 145, 107),
(173, 144, 106),
(172, 144, 106),
(172, 143, 105),
(172, 142, 105),
(172, 141, 104),
(171, 140, 104),
(171, 139, 104),
(171, 138, 103),
(171, 137, 103),
(170, 136, 102),
(170, 135, 102),
(170, 134, 101),
(169, 134, 101),
(169, 133, 101),
(169, 132, 100),
(169, 131, 100),
(168, 130, 99),
(168, 129, 99),
(168, 128, 99),
(168, 127, 98),
(167, 126, 98),
(167, 126, 98),
(167, 125, 97),
(167, 124, 97),
(166, 123, 96),
(166, 122, 96),
(166, 121, 96),
(166, 120, 95),
(165, 119, 95),
(165, 119, 94),
(165, 118, 94),
(165, 117, 94),
(164, 116, 93),
(164, 115, 93),
(164, 114, 93),
(164, 113, 92),
(163, 112, 92),
(163, 112, 91),
(163, 111, 91),
(163, 110, 91),
(162, 109, 90),
(162, 108, 90),
(162, 107, 89),
(162, 106, 89),
(161, 105, 89),
(161, 104, 88),
(161, 104, 88),
(160, 103, 87),
(160, 102, 87),
(160, 101, 87),
(159, 100, 86),
(159, 99, 86),
(159, 98, 85),
(158, 97, 85),
(158, 96, 84),
(158, 95, 84),
(157, 94, 83),
(157, 93, 83),
(157, 92, 82),
(156, 91, 82),
(156, 90, 81),
(155, 89, 81),
(155, 88, 80),
(154, 87, 79),
(154, 86, 79),
(153, 85, 78),
(153, 84, 77),
(152, 83, 77),
(151, 82, 76),
(151, 81, 75),
(150, 80, 75),
(150, 79, 74),
(149, 78, 73),
(148, 77, 72),
(147, 75, 71),
(147, 74, 71),
(146, 73, 70),
(145, 72, 69),
(144, 71, 68),
(143, 70, 67),
(142, 69, 66),
(141, 67, 65),
(140, 66, 64),
(139, 65, 63),
(139, 64, 62),
(138, 63, 61),
(137, 62, 60),
(136, 60, 59),
(135, 59, 58),
(133, 58, 57),
(132, 57, 56),
(131, 56, 55),
(130, 55, 54),
(129, 54, 52),
(128, 52, 51),
(127, 51, 50),
(126, 50, 49),
(125, 49, 48),
(124, 48, 47),
(123, 47, 46),
(122, 46, 45),
(120, 44, 44),
(119, 43, 43),
(118, 42, 42),
(117, 41, 40),
(116, 40, 39),
(115, 39, 38),
(114, 38, 37),
(112, 37, 36),
(111, 35, 35),
(110, 34, 34),
(109, 33, 33),
(108, 32, 32),
(107, 31, 31),
(105, 30, 30),
(104, 29, 29),
(103, 28, 28),
(102, 26, 27),
(101, 25, 26),
(100, 24, 25),
(98, 23, 24),
(97, 22, 23),
(96, 21, 22),
(95, 19, 21),
(93, 18, 20),
(92, 17, 19),
(91, 16, 18),
(90, 14, 17),
(89, 13, 16),
(87, 12, 15),
(86, 10, 13),
(85, 9, 12),
(84, 7, 11),
(83, 6, 9),
(81, 5, 8),
(80, 4, 6),
(79, 3, 4),
(78, 1, 3),
(77, 0, 1),
)
BROC = (
(44, 26, 76),
(44, 27, 78),
(44, 29, 79),
(43, 30, 81),
(43, 32, 82),
(43, 33, 84),
(43, 35, 85),
(43, 36, 87),
(43, 38, 88),
(43, 39, 90),
(43, 41, 91),
(43, 42, 93),
(42, 44, 94),
(42, 45, 96),
(42, 46, 97),
(42, 48, 99),
(42, 49, 100),
(42, 51, 102),
(41, 53, 103),
(41, 54, 105),
(41, 56, 106),
(41, 57, 108),
(41, 59, 109),
(41, 60, 111),
(41, 62, 113),
(40, 63, 114),
(40, 65, 116),
(40, 67, 117),
(40, 68, 119),
(40, 70, 120),
(40, 71, 122),
(41, 73, 124),
(41, 75, 125),
(41, 76, 127),
(41, 78, 128),
(42, 80, 130),
(42, 81, 131),
(43, 83, 133),
(44, 85, 134),
(45, 87, 136),
(46, 88, 137),
(47, 90, 139),
(48, 92, 140),
(49, 94, 142),
(51, 95, 143),
(52, 97, 145),
(54, 99, 146),
(55, 101, 147),
(57, 102, 149),
(59, 104, 150),
(61, 106, 151),
(63, 107, 153),
(65, 109, 154),
(67, 111, 155),
(69, 113, 156),
(71, 114, 158),
(73, 116, 159),
(75, 118, 160),
(77, 120, 161),
(80, 121, 163),
(82, 123, 164),
(84, 125, 165),
(86, 127, 166),
(88, 128, 167),
(91, 130, 169),
(93, 132, 170),
(95, 133, 171),
(97, 135, 172),
(100, 137, 173),
(102, 139, 175),
(104, 140, 176),
(107, 142, 177),
(109, 144, 178),
(111, 146, 179),
(113, 147, 181),
(116, 149, 182),
(118, 151, 183),
(120, 153, 184),
(123, 155, 186),
(125, 156, 187),
(127, 158, 188),
(130, 160, 189),
(132, 162, 190),
(134, 163, 192),
(137, 165, 193),
(139, 167, 194),
(141, 169, 195),
(144, 170, 197),
(146, 172, 198),
(148, 174, 199),
(151, 176, 200),
(153, 178, 202),
(155, 179, 203),
(158, 181, 204),
(160, 183, 205),
(162, 185, 206),
(165, 187, 208),
(167, 188, 209),
(170, 190, 210),
(172, 192, 211),
(174, 194, 213),
(177, 196, 214),
(179, 197, 215),
(181, 199, 216),
(184, 201, 218),
(186, 203, 219),
(189, 205, 220),
(191, 207, 221),
(194, 208, 223),
(196, 210, 224),
(198, 212, 225),
(201, 214, 226),
(203, 216, 228),
(206, 217, 229),
(208, 219, 230),
(210, 221, 231),
(213, 223, 232),
(215, 224, 233),
(217, 226, 234),
(220, 228, 235),
(222, 229, 236),
(224, 231, 236),
(226, 232, 237),
(228, 234, 237),
(230, 235, 237),
(231, 236, 237),
(233, 237, 237),
(234, 238, 236),
(235, 238, 236),
(236, 239, 235),
(237, 239, 233),
(237, 239, 232),
(238, 239, 231),
(238, 239, 229),
(238, 239, 227),
(237, 238, 225),
(237, 238, 223),
(236, 237, 221),
(236, 236, 219),
(235, 235, 217),
(234, 234, 214),
(233, 233, 212),
(232, 232, 210),
(231, 231, 207),
(230, 230, 205),
(229, 229, 203),
(228, 228, 200),
(227, 226, 198),
(225, 225, 196),
(224, 224, 193),
(223, 223, 191),
(222, 222, 189),
(221, 221, 186),
(220, 219, 184),
(218, 218, 181),
(217, 217, 179),
(216, 216, 177),
(215, 215, 174),
(213, 213, 172),
(212, 212, 170),
(211, 211, 167),
(210, 210, 165),
(208, 208, 162),
(207, 207, 160),
(206, 206, 158),
(204, 204, 155),
(203, 203, 153),
(201, 201, 150),
(200, 200, 148),
(198, 198, 145),
(197, 197, 143),
(195, 195, 140),
(193, 193, 138),
(192, 191, 135),
(190, 190, 133),
(188, 188, 131),
(186, 186, 128),
(184, 184, 126),
(182, 182, 124),
(180, 180, 121),
(178, 178, 119),
(176, 176, 117),
(174, 174, 115),
(172, 172, 113),
(170, 170, 111),
(168, 168, 109),
(166, 166, 107),
(163, 163, 105),
(161, 161, 103),
(159, 159, 101),
(157, 157, 99),
(155, 155, 98),
(153, 153, 96),
(151, 151, 94),
(149, 149, 92),
(147, 147, 91),
(145, 145, 89),
(143, 143, 87),
(141, 141, 86),
(139, 139, 84),
(137, 137, 82),
(135, 135, 81),
(133, 133, 79),
(131, 131, 77),
(129, 129, 76),
(127, 127, 74),
(125, 125, 72),
(123, 123, 71),
(121, 121, 69),
(119, 119, 68),
(117, 117, 66),
(116, 116, 64),
(114, 114, 63),
(112, 112, 61),
(110, 110, 60),
(108, 108, 58),
(106, 106, 56),
(104, 104, 55),
(102, 102, 53),
(100, 100, 52),
(98, 98, 50),
(97, 96, 49),
(95, 95, 47),
(93, 93, 45),
(91, 91, 44),
(89, 89, 42),
(87, 87, 41),
(85, 85, 39),
(84, 84, 38),
(82, 82, 36),
(80, 80, 35),
(78, 78, 33),
(76, 76, 32),
(75, 75, 31),
(73, 73, 29),
(71, 71, 28),
(69, 69, 26),
(67, 67, 25),
(66, 66, 24),
(64, 64, 22),
(62, 62, 21),
(60, 61, 20),
(59, 59, 18),
(57, 57, 17),
(55, 56, 16),
(54, 54, 15),
(52, 52, 14),
(50, 51, 12),
(49, 49, 11),
(47, 48, 10),
(46, 46, 8),
(44, 44, 7),
(43, 43, 5),
(41, 41, 4),
(40, 40, 2),
(38, 38, 0),
)
BUDA = (
(179, 1, 179),
(179, 3, 178),
(179, 5, 177),
(179, 7, 176),
(179, 9, 175),
(179, 11, 174),
(179, 13, 174),
(179, 15, 173),
(179, 17, 172),
(179, 18, 171),
(179, 20, 170),
(179, 22, 169),
(179, 23, 169),
(179, 24, 168),
(179, 26, 167),
(179, 27, 166),
(179, 28, 166),
(179, 30, 165),
(179, 31, 164),
(179, 32, 164),
(179, 33, 163),
(179, 35, 162),
(179, 36, 162),
(179, 37, 161),
(179, 38, 160),
(179, 39, 160),
(179, 40, 159),
(179, 41, 159),
(179, 43, 158),
(179, 44, 158),
(179, 45, 157),
(179, 46, 157),
(179, 47, 156),
(179, 48, 156),
(180, 49, 155),
(180, 50, 155),
(180, 51, 154),
(180, 52, 154),
(180, 53, 153),
(180, 54, 153),
(181, 55, 152),
(181, 56, 152),
(181, 57, 152),
(181, 58, 151),
(182, 59, 151),
(182, 60, 150),
(182, 61, 150),
(182, 62, 150),
(183, 63, 149),
(183, 64, 149),
(183, 65, 149),
(184, 66, 148),
(184, 67, 148),
(184, 68, 148),
(184, 69, 147),
(185, 70, 147),
(185, 71, 147),
(185, 72, 146),
(186, 73, 146),
(186, 74, 146),
(186, 75, 145),
(187, 75, 145),
(187, 76, 145),
(187, 77, 144),
(188, 78, 144),
(188, 79, 144),
(188, 80, 143),
(188, 81, 143),
(189, 82, 143),
(189, 83, 143),
(189, 84, 142),
(190, 85, 142),
(190, 85, 142),
(190, 86, 141),
(191, 87, 141),
(191, 88, 141),
(191, 89, 140),
(191, 90, 140),
(192, 91, 140),
(192, 92, 140),
(192, 92, 139),
(193, 93, 139),
(193, 94, 139),
(193, 95, 138),
(194, 96, 138),
(194, 97, 138),
(194, 98, 138),
(194, 99, 137),
(195, 99, 137),
(195, 100, 137),
(195, 101, 136),
(196, 102, 136),
(196, 103, 136),
(196, 104, 136),
(196, 105, 135),
(197, 105, 135),
(197, 106, 135),
(197, 107, 134),
(198, 108, 134),
(198, 109, 134),
(198, 110, 134),
(198, 110, 133),
(199, 111, 133),
(199, 112, 133),
(199, 113, 132),
(199, 114, 132),
(200, 115, 132),
(200, 115, 132),
(200, 116, 131),
(201, 117, 131),
(201, 118, 131),
(201, 119, 131),
(201, 120, 130),
(202, 121, 130),
(202, 121, 130),
(202, 122, 129),
(202, 123, 129),
(203, 124, 129),
(203, 125, 129),
(203, 126, 128),
(203, 126, 128),
(204, 127, 128),
(204, 128, 128),
(204, 129, 127),
(204, 130, 127),
(205, 131, 127),
(205, 132, 127),
(205, 132, 126),
(205, 133, 126),
(206, 134, 126),
(206, 135, 126),
(206, 136, 126),
(206, 137, 125),
(207, 138, 125),
(207, 138, 125),
(207, 139, 125),
(207, 140, 124),
(207, 141, 124),
(208, 142, 124),
(208, 143, 124),
(208, 144, 124),
(208, 145, 123),
(209, 145, 123),
(209, 146, 123),
(209, 147, 123),
(209, 148, 122),
(209, 149, 122),
(210, 150, 122),
(210, 151, 122),
(210, 151, 122),
(210, 152, 121),
(210, 153, 121),
(211, 154, 121),
(211, 155, 121),
(211, 156, 120),
(211, 157, 120),
(212, 158, 120),
(212, 158, 120),
(212, 159, 120),
(212, 160, 119),
(212, 161, 119),
(213, 162, 119),
(213, 163, 119),
(213, 164, 119),
(213, 165, 118),
(214, 165, 118),
(214, 166, 118),
(214, 167, 118),
(214, 168, 117),
(214, 169, 117),
(215, 170, 117),
(215, 171, 117),
(215, 172, 117),
(215, 173, 116),
(216, 173, 116),
(216, 174, 116),
(216, 175, 116),
(216, 176, 115),
(216, 177, 115),
(217, 178, 115),
(217, 179, 115),
(217, 180, 115),
(217, 181, 114),
(218, 181, 114),
(218, 182, 114),
(218, 183, 114),
(218, 184, 113),
(218, 185, 113),
(219, 186, 113),
(219, 187, 113),
(219, 188, 113),
(219, 189, 112),
(220, 190, 112),
(220, 191, 112),
(220, 191, 112),
(220, 192, 111),
(221, 193, 111),
(221, 194, 111),
(221, 195, 111),
(221, 196, 110),
(221, 197, 110),
(222, 198, 110),
(222, 199, 110),
(222, 200, 110),
(222, 201, 109),
(223, 202, 109),
(223, 202, 109),
(223, 203, 109),
(223, 204, 108),
(224, 205, 108),
(224, 206, 108),
(224, 207, 108),
(224, 208, 107),
(224, 209, 107),
(225, 210, 107),
(225, 211, 107),
(225, 212, 107),
(226, 213, 106),
(226, 214, 106),
(226, 215, 106),
(226, 216, 106),
(227, 217, 105),
(227, 218, 105),
(227, 219, 105),
(228, 220, 105),
(228, 221, 105),
(229, 222, 104),
(229, 223, 104),
(229, 224, 104),
(230, 225, 104),
(231, 226, 104),
(231, 227, 104),
(232, 228, 103),
(232, 229, 103),
(233, 230, 103),
(234, 231, 103),
(235, 232, 103),
(235, 233, 103),
(236, 235, 103),
(237, 236, 103),
(238, 237, 103),
(239, 238, 102),
(240, 239, 102),
(241, 240, 102),
(242, 242, 102),
(243, 243, 102),
(244, 244, 102),
(246, 245, 102),
(247, 246, 102),
(248, 248, 102),
(249, 249, 102),
(250, 250, 102),
(251, 251, 102),
(253, 253, 102),
(254, 254, 102),
(255, 255, 102),
)
CORK = (
(44, 26, 76),
(44, 27, 78),
(44, 29, 79),
(44, 30, 81),
(44, 31, 82),
(44, 33, 83),
(44, 34, 85),
(43, 36, 86),
(43, 37, 88),
(43, 39, 89),
(43, 40, 91),
(43, 41, 92),
(43, 43, 93),
(43, 44, 95),
(43, 46, 96),
(43, 47, 98),
(42, 49, 99),
(42, 50, 101),
(42, 52, 102),
(42, 53, 104),
(42, 54, 105),
(42, 56, 107),
(42, 57, 108),
(42, 59, 110),
(42, 60, 111),
(42, 62, 113),
(42, 63, 114),
(42, 65, 116),
(42, 67, 117),
(42, 68, 119),
(42, 70, 120),
(42, 71, 122),
(42, 73, 123),
(43, 74, 125),
(43, 76, 126),
(43, 78, 128),
(44, 79, 129),
(45, 81, 131),
(45, 82, 132),
(46, 84, 133),
(47, 86, 135),
(48, 87, 136),
(49, 89, 138),
(50, 91, 139),
(51, 92, 141),
(52, 94, 142),
(54, 96, 143),
(55, 98, 145),
(57, 99, 146),
(58, 101, 147),
(60, 103, 149),
(61, 104, 150),
(63, 106, 151),
(65, 108, 153),
(67, 109, 154),
(69, 111, 155),
(70, 113, 156),
(72, 114, 158),
(74, 116, 159),
(76, 118, 160),
(78, 119, 161),
(80, 121, 162),
(82, 123, 164),
(84, 124, 165),
(87, 126, 166),
(89, 128, 167),
(91, 129, 168),
(93, 131, 169),
(95, 133, 171),
(97, 135, 172),
(99, 136, 173),
(101, 138, 174),
(103, 140, 175),
(106, 141, 176),
(108, 143, 178),
(110, 145, 179),
(112, 146, 180),
(114, 148, 181),
(117, 150, 182),
(119, 151, 183),
(121, 153, 185),
(123, 155, 186),
(125, 156, 187),
(128, 158, 188),
(130, 160, 189),
(132, 161, 190),
(134, 163, 192),
(136, 165, 193),
(139, 167, 194),
(141, 168, 195),
(143, 170, 196),
(145, 172, 197),
(148, 173, 199),
(150, 175, 200),
(152, 177, 201),
(154, 179, 202),
(157, 180, 203),
(159, 182, 205),
(161, 184, 206),
(163, 185, 207),
(166, 187, 208),
(168, 189, 209),
(170, 191, 211),
(172, 192, 212),
(175, 194, 213),
(177, 196, 214),
(179, 198, 215),
(182, 199, 216),
(184, 201, 218),
(186, 203, 219),
(188, 204, 220),
(191, 206, 221),
(193, 208, 222),
(195, 210, 223),
(197, 211, 224),
(199, 213, 225),
(201, 215, 226),
(203, 216, 227),
(205, 218, 228),
(207, 220, 228),
(209, 221, 229),
(211, 223, 229),
(213, 224, 230),
(214, 225, 230),
(215, 226, 230),
(216, 228, 230),
(217, 229, 230),
(218, 229, 229),
(219, 230, 229),
(219, 231, 228),
(219, 231, 227),
(219, 231, 226),
(218, 231, 225),
(218, 231, 223),
(217, 231, 222),
(216, 231, 220),
(214, 230, 219),
(213, 230, 217),
(212, 229, 215),
(210, 228, 213),
(208, 227, 211),
(207, 226, 209),
(205, 225, 207),
(203, 224, 206),
(201, 223, 204),
(199, 222, 202),
(197, 221, 200),
(195, 220, 198),
(193, 219, 196),
(191, 218, 194),
(189, 216, 192),
(187, 215, 190),
(185, 214, 188),
(183, 213, 186),
(181, 212, 184),
(179, 211, 182),
(177, 209, 180),
(175, 208, 178),
(173, 207, 176),
(171, 206, 174),
(169, 205, 172),
(167, 203, 170),
(165, 202, 168),
(163, 201, 166),
(161, 200, 164),
(159, 199, 162),
(157, 198, 160),
(155, 196, 158),
(153, 195, 156),
(151, 194, 154),
(149, 193, 153),
(147, 192, 151),
(145, 190, 149),
(143, 189, 147),
(141, 188, 145),
(139, 187, 143),
(137, 186, 141),
(135, 185, 139),
(133, 183, 137),
(131, 182, 135),
(129, 181, 133),
(127, 180, 131),
(125, 179, 129),
(123, 178, 127),
(121, 176, 125),
(119, 175, 124),
(117, 174, 122),
(115, 173, 120),
(113, 172, 118),
(111, 170, 116),
(109, 169, 114),
(107, 168, 112),
(105, 167, 110),
(103, 165, 108),
(101, 164, 106),
(99, 163, 104),
(97, 161, 102),
(96, 160, 100),
(94, 159, 98),
(92, 157, 96),
(90, 156, 93),
(88, 155, 91),
(86, 153, 89),
(85, 152, 87),
(83, 150, 85),
(81, 148, 83),
(80, 147, 80),
(78, 145, 78),
(77, 144, 76),
(75, 142, 74),
(74, 140, 72),
(73, 139, 69),
(72, 137, 67),
(71, 135, 65),
(70, 133, 63),
(69, 132, 61),
(68, 130, 59),
(67, 128, 57),
(67, 127, 55),
(66, 125, 53),
(66, 123, 51),
(65, 122, 49),
(65, 120, 48),
(65, 118, 46),
(65, 117, 44),
(65, 115, 43),
(65, 114, 41),
(64, 112, 39),
(64, 111, 38),
(64, 109, 36),
(64, 108, 35),
(65, 107, 34),
(65, 105, 32),
(65, 104, 31),
(65, 102, 29),
(65, 101, 28),
(65, 100, 27),
(65, 99, 25),
(65, 97, 24),
(65, 96, 23),
(65, 95, 22),
(65, 93, 20),
(66, 92, 19),
(66, 91, 18),
(66, 90, 16),
(66, 88, 15),
(66, 87, 14),
(66, 86, 12),
(66, 85, 11),
(66, 84, 10),
(66, 82, 8),
(66, 81, 7),
(66, 80, 6),
(66, 79, 5),
(66, 78, 4),
(66, 77, 3),
)
DAVOS = (
(0, 5, 74),
(0, 7, 76),
(0, 9, 77),
(0, 11, 79),
(1, 12, 80),
(1, 14, 81),
(2, 15, 83),
(2, 16, 84),
(3, 18, 86),
(4, 19, 87),
(4, 20, 89),
(5, 22, 90),
(5, 23, 91),
(6, 24, 93),
(7, 26, 94),
(7, 27, 96),
(8, 28, 97),
(9, 30, 98),
(10, 31, 100),
(11, 32, 101),
(11, 34, 103),
(12, 35, 104),
(13, 36, 105),
(14, 38, 107),
(14, 39, 108),
(15, 40, 109),
(16, 42, 111),
(17, 43, 112),
(17, 44, 113),
(18, 46, 115),
(19, 47, 116),
(19, 48, 117),
(20, 50, 119),
(21, 51, 120),
(22, 52, 121),
(23, 54, 122),
(23, 55, 124),
(24, 56, 125),
(25, 58, 126),
(26, 59, 127),
(26, 60, 128),
(27, 62, 130),
(28, 63, 131),
(29, 64, 132),
(30, 65, 133),
(30, 67, 134),
(31, 68, 135),
(32, 69, 136),
(33, 71, 137),
(34, 72, 138),
(35, 73, 139),
(35, 74, 140),
(36, 76, 141),
(37, 77, 142),
(38, 78, 143),
(39, 79, 144),
(40, 81, 144),
(41, 82, 145),
(42, 83, 146),
(42, 84, 147),
(43, 86, 147),
(44, 87, 148),
(45, 88, 149),
(46, 89, 149),
(47, 90, 150),
(48, 91, 151),
(49, 92, 151),
(50, 94, 152),
(51, 95, 152),
(52, 96, 153),
(53, 97, 153),
(54, 98, 154),
(55, 99, 154),
(56, 100, 154),
(57, 101, 155),
(58, 102, 155),
(58, 103, 155),
(59, 104, 156),
(60, 105, 156),
(61, 106, 156),
(62, 107, 156),
(63, 108, 157),
(64, 109, 157),
(65, 110, 157),
(66, 111, 157),
(67, 112, 157),
(68, 112, 157),
(69, 113, 157),
(70, 114, 157),
(71, 115, 157),
(72, 116, 157),
(73, 117, 157),
(74, 118, 157),
(75, 118, 157),
(76, 119, 157),
(77, 120, 157),
(78, 121, 157),
(79, 121, 157),
(80, 122, 156),
(81, 123, 156),
(82, 124, 156),
(83, 124, 156),
(84, 125, 156),
(85, 126, 155),
(86, 127, 155),
(86, 127, 155),
(87, 128, 155),
(88, 129, 154),
(89, 129, 154),
(90, 130, 154),
(91, 131, 153),
(92, 131, 153),
(93, 132, 153),
(94, 133, 152),
(95, 133, 152),
(96, 134, 152),
(97, 134, 151),
(98, 135, 151),
(99, 136, 151),
(100, 136, 150),
(101, 137, 150),
(101, 138, 149),
(102, 138, 149),
(103, 139, 149),
(104, 139, 148),
(105, 140, 148),
(106, 141, 147),
(107, 141, 147),
(108, 142, 147),
(109, 142, 146),
(110, 143, 146),
(111, 144, 145),
(112, 144, 145),
(113, 145, 145),
(114, 145, 144),
(115, 146, 144),
(116, 147, 143),
(116, 147, 143),
(117, 148, 143),
(118, 149, 142),
(119, 149, 142),
(120, 150, 141),
(121, 150, 141),
(122, 151, 141),
(123, 152, 140),
(124, 152, 140),
(125, 153, 140),
(126, 154, 139),
(127, 154, 139),
(128, 155, 139),
(129, 156, 138),
(130, 157, 138),
(131, 157, 138),
(132, 158, 137),
(134, 159, 137),
(135, 160, 137),
(136, 160, 137),
(137, 161, 136),
(138, 162, 136),
(139, 163, 136),
(140, 163, 136),
(141, 164, 136),
(143, 165, 136),
(144, 166, 135),
(145, 167, 135),
(146, 168, 135),
(147, 169, 135),
(149, 170, 135),
(150, 171, 135),
(151, 172, 135),
(153, 173, 136),
(154, 174, 136),
(155, 175, 136),
(157, 176, 136),
(158, 177, 136),
(160, 178, 137),
(161, 179, 137),
(163, 180, 137),
(164, 182, 138),
(166, 183, 138),
(168, 184, 139),
(169, 185, 139),
(171, 187, 140),
(173, 188, 140),
(174, 189, 141),
(176, 191, 142),
(178, 192, 143),
(180, 193, 144),
(182, 195, 145),
(184, 196, 146),
(185, 198, 147),
(187, 199, 148),
(189, 201, 149),
(191, 202, 150),
(193, 204, 152),
(195, 205, 153),
(197, 207, 155),
(199, 208, 156),
(201, 210, 158),
(203, 211, 159),
(205, 213, 161),
(207, 214, 162),
(208, 216, 164),
(210, 217, 166),
(212, 219, 168),
(214, 220, 169),
(216, 222, 171),
(217, 223, 173),
(219, 224, 175),
(221, 226, 177),
(222, 227, 179),
(224, 228, 181),
(225, 229, 182),
(227, 231, 184),
(228, 232, 186),
(230, 233, 188),
(231, 234, 190),
(232, 235, 192),
(234, 236, 194),
(235, 237, 196),
(236, 238, 198),
(237, 239, 199),
(238, 239, 201),
(239, 240, 203),
(240, 241, 205),
(241, 242, 207),
(242, 242, 208),
(243, 243, 210),
(243, 244, 212),
(244, 244, 214),
(245, 245, 215),
(245, 246, 217),
(246, 246, 219),
(247, 247, 221),
(247, 247, 222),
(248, 248, 224),
(248, 248, 225),
(249, 249, 227),
(249, 249, 229),
(250, 249, 230),
(250, 250, 232),
(251, 250, 233),
(251, 251, 235),
(251, 251, 236),
(252, 251, 238),
(252, 252, 240),
(252, 252, 241),
(252, 252, 243),
(253, 253, 244),
(253, 253, 246),
(253, 253, 247),
(254, 253, 249),
(254, 254, 250),
(254, 254, 252),
(254, 254, 253),
(254, 254, 254),
)
DEVON = (
(44, 26, 76),
(44, 27, 77),
(44, 28, 78),
(43, 28, 79),
(43, 29, 80),
(43, 30, 81),
(43, 31, 82),
(43, 32, 83),
(43, 33, 84),
(43, 34, 85),
(43, 35, 86),
(43, 36, 87),
(43, 37, 88),
(43, 38, 88),
(43, 39, 89),
(42, 40, 90),
(42, 41, 91),
(42, 41, 92),
(42, 42, 93),
(42, 43, 94),
(42, 44, 95),
(42, 45, 96),
(42, 46, 97),
(42, 47, 98),
(41, 48, 99),
(41, 49, 100),
(41, 50, 101),
(41, 51, 102),
(41, 52, 103),
(41, 53, 104),
(41, 54, 105),
(41, 55, 106),
(41, 56, 106),
(40, 57, 107),
(40, 57, 108),
(40, 58, 109),
(40, 59, 110),
(40, 60, 111),
(40, 61, 112),
(40, 62, 113),
(40, 63, 114),
(40, 64, 115),
(39, 65, 116),
(39, 66, 117),
(39, 67, 118),
(39, 68, 120),
(39, 69, 121),
(39, 70, 122),
(39, 71, 123),
(39, 72, 124),
(39, 73, 125),
(39, 74, 126),
(39, 76, 127),
(39, 77, 129),
(39, 78, 130),
(39, 79, 131),
(39, 80, 132),
(39, 81, 134),
(39, 82, 135),
(39, 83, 136),
(40, 84, 138),
(40, 85, 139),
(40, 86, 140),
(40, 87, 142),
(41, 88, 143),
(41, 89, 144),
(41, 90, 146),
(42, 91, 147),
(42, 92, 149),
(43, 93, 150),
(43, 93, 152),
(44, 94, 153),
(44, 95, 154),
(45, 96, 156),
(46, 97, 157),
(46, 98, 159),
(47, 98, 160),
(48, 99, 162),
(48, 100, 163),
(49, 101, 164),
(50, 101, 166),
(50, 102, 167),
(51, 103, 169),
(52, 104, 170),
(53, 104, 171),
(54, 105, 173),
(55, 106, 174),
(56, 106, 176),
(57, 107, 177),
(58, 108, 178),
(59, 109, 180),
(60, 109, 181),
(61, 110, 183),
(62, 111, 184),
(63, 112, 185),
(65, 113, 187),
(66, 114, 188),
(68, 114, 189),
(69, 115, 191),
(71, 116, 192),
(72, 117, 193),
(74, 118, 195),
(76, 119, 196),
(77, 120, 197),
(79, 121, 198),
(81, 122, 200),
(83, 123, 201),
(85, 124, 202),
(87, 124, 203),
(89, 125, 204),
(91, 126, 205),
(93, 127, 206),
(95, 128, 207),
(97, 129, 208),
(99, 130, 209),
(101, 131, 210),
(103, 132, 211),
(105, 133, 212),
(107, 134, 213),
(109, 135, 214),
(111, 136, 215),
(113, 136, 216),
(115, 137, 216),
(117, 138, 217),
(119, 139, 218),
(121, 140, 219),
(123, 141, 220),
(125, 142, 220),
(126, 143, 221),
(128, 143, 222),
(130, 144, 223),
(132, 145, 223),
(134, 146, 224),
(136, 147, 225),
(138, 148, 225),
(140, 149, 226),
(141, 149, 227),
(143, 150, 227),
(145, 151, 228),
(147, 152, 229),
(149, 153, 229),
(150, 154, 230),
(152, 155, 231),
(154, 155, 231),
(155, 156, 232),
(157, 157, 232),
(158, 158, 233),
(160, 159, 233),
(162, 160, 234),
(163, 161, 234),
(164, 162, 235),
(166, 163, 235),
(167, 164, 236),
(168, 165, 236),
(170, 165, 237),
(171, 166, 237),
(172, 167, 237),
(173, 168, 238),
(174, 169, 238),
(175, 170, 238),
(176, 171, 238),
(177, 172, 239),
(178, 173, 239),
(179, 173, 239),
(180, 174, 239),
(181, 175, 240),
(182, 176, 240),
(183, 177, 240),
(184, 178, 240),
(185, 179, 240),
(186, 179, 241),
(186, 180, 241),
(187, 181, 241),
(188, 182, 241),
(189, 183, 241),
(190, 184, 242),
(190, 185, 242),
(191, 185, 242),
(192, 186, 242),
(193, 187, 242),
(194, 188, 242),
(194, 189, 243),
(195, 190, 243),
(196, 191, 243),
(197, 192, 243),
(198, 192, 243),
(198, 193, 243),
(199, 194, 244),
(200, 195, 244),
(201, 196, 244),
(202, 197, 244),
(202, 198, 244),
(203, 198, 244),
(204, 199, 244),
(205, 200, 245),
(206, 201, 245),
(206, 202, 245),
(207, 203, 245),
(208, 204, 245),
(209, 205, 245),
(210, 205, 246),
(210, 206, 246),
(211, 207, 246),
(212, 208, 246),
(213, 209, 246),
(214, 210, 246),
(214, 211, 247),
(215, 212, 247),
(216, 212, 247),
(217, 213, 247),
(218, 214, 247),
(218, 215, 247),
(219, 216, 248),
(220, 217, 248),
(221, 218, 248),
(222, 219, 248),
(222, 220, 248),
(223, 220, 248),
(224, 221, 249),
(225, 222, 249),
(226, 223, 249),
(227, 224, 249),
(227, 225, 249),
(228, 226, 250),
(229, 227, 250),
(230, 228, 250),
(231, 228, 250),
(232, 229, 250),
(232, 230, 250),
(233, 231, 251),
(234, 232, 251),
(235, 233, 251),
(236, 234, 251),
(237, 235, 251),
(237, 236, 251),
(238, 237, 252),
(239, 238, 252),
(240, 238, 252),
(241, 239, 252),
(242, 240, 252),
(242, 241, 252),
(243, 242, 253),
(244, 243, 253),
(245, 244, 253),
(246, 245, 253),
(247, 246, 253),
(247, 247, 253),
(248, 248, 254),
(249, 249, 254),
(250, 249, 254),
(251, 250, 254),
(252, 251, 254),
(252, 252, 254),
(253, 253, 255),
(254, 254, 255),
(255, 255, 255),
)
GRAYC = (
(255, 255, 255),
(254, 254, 254),
(253, 253, 253),
(252, 252, 252),
(250, 250, 250),
(249, 249, 249),
(248, 248, 248),
(247, 247, 247),
(246, 246, 246),
(245, 245, 245),
(244, 244, 244),
(243, 243, 243),
(241, 241, 241),
(240, 240, 240),
(239, 239, 239),
(238, 238, 238),
(237, 237, 237),
(236, 236, 236),
(235, 235, 235),
(234, 234, 234),
(232, 232, 232),
(231, 231, 231),
(230, 230, 230),
(229, 229, 229),
(228, 228, 228),
(227, 227, 227),
(226, 226, 226),
(225, 225, 225),
(224, 224, 224),
(222, 222, 222),
(221, 221, 221),
(220, 220, 220),
(219, 219, 219),
(218, 218, 218),
(217, 217, 217),
(216, 216, 216),
(215, 215, 215),
(214, 214, 214),
(213, 213, 213),
(211, 211, 211),
(210, 210, 210),
(209, 209, 209),
(208, 208, 208),
(207, 207, 207),
(206, 206, 206),
(205, 205, 205),
(204, 204, 204),
(203, 203, 203),
(202, 202, 202),
(201, 201, 201),
(199, 199, 199),
(198, 198, 198),
(197, 197, 197),
(196, 196, 196),
(195, 195, 195),
(194, 194, 194),
(193, 193, 193),
(192, 192, 192),
(191, 191, 191),
(190, 190, 190),
(189, 189, 189),
(188, 188, 188),
(186, 186, 186),
(185, 185, 185),
(184, 184, 184),
(183, 183, 183),
(182, 182, 182),
(181, 181, 181),
(180, 180, 180),
(179, 179, 179),
(178, 178, 178),
(177, 177, 177),
(176, 176, 176),
(175, 175, 175),
(174, 174, 174),
(173, 173, 173),
(172, 172, 172),
(171, 171, 171),
(169, 169, 169),
(168, 168, 168),
(167, 167, 167),
(166, 166, 166),
(165, 165, 165),
(164, 164, 164),
(163, 163, 163),
(162, 162, 162),
(161, 161, 161),
(160, 160, 160),
(159, 159, 159),
(158, 158, 158),
(157, 157, 157),
(156, 156, 156),
(155, 155, 155),
(154, 154, 154),
(153, 153, 153),
(152, 152, 152),
(151, 151, 151),
(150, 150, 150),
(149, 149, 149),
(148, 148, 148),
(147, 147, 147),
(146, 146, 146),
(145, 145, 145),
(144, 144, 144),
(143, 143, 143),
(141, 141, 141),
(140, 140, 140),
(139, 139, 139),
(138, 138, 138),
(137, 137, 137),
(136, 136, 136),
(135, 135, 135),
(134, 134, 134),
(133, 133, 133),
(132, 132, 132),
(131, 131, 131),
(130, 130, 130),
(129, 129, 129),
(128, 128, 128),
(127, 127, 127),
(126, 126, 126),
(125, 125, 125),
(124, 124, 124),
(123, 123, 123),
(122, 122, 122),
(121, 121, 121),
(120, 120, 120),
(119, 119, 119),
(118, 118, 118),
(117, 117, 117),
(116, 116, 116),
(115, 115, 115),
(114, 114, 114),
(114, 114, 114),
(113, 113, 113),
(112, 112, 112),
(111, 111, 111),
(110, 110, 110),
(109, 109, 109),
(108, 108, 108),
(107, 107, 107),
(106, 106, 106),
(105, 105, 105),
(104, 104, 104),
(103, 103, 103),
(102, 102, 102),
(101, 101, 101),
(100, 100, 100),
(99, 99, 99),
(98, 98, 98),
(97, 97, 97),
(96, 96, 96),
(95, 95, 95),
(94, 94, 94),
(93, 93, 93),
(92, 92, 92),
(91, 91, 91),
(90, 90, 90),
(90, 90, 90),
(89, 89, 89),
(88, 88, 88),
(87, 87, 87),
(86, 86, 86),
(85, 85, 85),
(84, 84, 84),
(83, 83, 83),
(82, 82, 82),
(81, 81, 81),
(80, 80, 80),
(79, 79, 79),
(78, 78, 78),
(77, 77, 77),
(77, 77, 77),
(76, 76, 76),
(75, 75, 75),
(74, 74, 74),
(73, 73, 73),
(72, 72, 72),
(71, 71, 71),
(70, 70, 70),
(69, 69, 69),
(68, 68, 68),
(67, 67, 67),
(67, 67, 67),
(66, 66, 66),
(65, 65, 65),
(64, 64, 64),
(63, 63, 63),
(62, 62, 62),
(61, 61, 61),
(60, 60, 60),
(60, 60, 60),
(59, 59, 59),
(58, 58, 58),
(57, 57, 57),
(56, 56, 56),
(55, 55, 55),
(54, 54, 54),
(53, 53, 53),
(53, 53, 53),
(52, 52, 52),
(51, 51, 51),
(50, 50, 50),
(49, 49, 49),
(48, 48, 48),
(47, 47, 47),
(47, 47, 47),
(46, 46, 46),
(45, 45, 45),
(44, 44, 44),
(43, 43, 43),
(42, 42, 42),
(42, 42, 42),
(41, 41, 41),
(40, 40, 40),
(39, 39, 39),
(38, 38, 38),
(37, 37, 37),
(37, 37, 37),
(36, 36, 36),
(35, 35, 35),
(34, 34, 34),
(33, 33, 33),
(33, 33, 33),
(32, 32, 32),
(31, 31, 31),
(30, 30, 30),
(29, 29, 29),
(29, 29, 29),
(28, 28, 28),
(27, 27, 27),
(26, 26, 26),
(26, 26, 26),
(25, 25, 25),
(24, 24, 24),
(23, 23, 23),
(22, 22, 22),
(22, 22, 22),
(21, 21, 21),
(20, 20, 20),
(19, 19, 19),
(18, 18, 18),
(17, 17, 17),
(16, 16, 16),
(15, 15, 15),
(14, 14, 14),
(13, 13, 13),
(11, 11, 11),
(10, 10, 10),
(9, 9, 9),
(7, 7, 7),
(6, 6, 6),
(4, 4, 4),
(3, 3, 3),
(1, 1, 1),
(0, 0, 0),
)
HAWAII = (
(140, 2, 115),
(141, 4, 114),
(141, 6, 113),
(141, 8, 112),
(141, 10, 111),
(142, 13, 110),
(142, 14, 109),
(142, 16, 108),
(142, 18, 107),
(142, 19, 106),
(143, 21, 105),
(143, 22, 104),
(143, 24, 103),
(143, 25, 102),
(143, 26, 101),
(144, 28, 100),
(144, 29, 99),
(144, 30, 99),
(144, 31, 98),
(144, 32, 97),
(144, 33, 96),
(145, 35, 95),
(145, 36, 94),
(145, 37, 93),
(145, 38, 92),
(145, 39, 91),
(145, 40, 90),
(146, 41, 90),
(146, 42, 89),
(146, 43, 88),
(146, 44, 87),
(146, 45, 86),
(146, 46, 85),
(146, 47, 84),
(147, 48, 84),
(147, 49, 83),
(147, 50, 82),
(147, 51, 81),
(147, 52, 80),
(147, 53, 80),
(147, 54, 79),
(148, 55, 78),
(148, 56, 77),
(148, 57, 77),
(148, 58, 76),
(148, 59, 75),
(148, 60, 74),
(148, 61, 74),
(149, 62, 73),
(149, 63, 72),
(149, 64, 71),
(149, 65, 71),
(149, 66, 70),
(149, 67, 69),
(149, 68, 69),
(149, 69, 68),
(150, 70, 67),
(150, 71, 66),
(150, 72, 66),
(150, 73, 65),
(150, 74, 64),
(150, 75, 64),
(150, 76, 63),
(150, 77, 62),
(151, 78, 62),
(151, 79, 61),
(151, 80, 60),
(151, 81, 60),
(151, 82, 59),
(151, 83, 58),
(151, 83, 58),
(151, 84, 57),
(152, 85, 56),
(152, 86, 56),
(152, 87, 55),
(152, 88, 54),
(152, 89, 54),
(152, 90, 53),
(152, 92, 52),
(153, 93, 52),
(153, 94, 51),
(153, 95, 50),
(153, 96, 50),
(153, 97, 49),
(153, 98, 48),
(153, 99, 48),
(153, 100, 47),
(154, 101, 46),
(154, 102, 46),
(154, 103, 45),
(154, 104, 44),
(154, 105, 44),
(154, 106, 43),
(154, 107, 42),
(155, 108, 42),
(155, 109, 41),
(155, 111, 40),
(155, 112, 40),
(155, 113, 39),
(155, 114, 38),
(155, 115, 38),
(155, 116, 37),
(156, 117, 36),
(156, 119, 36),
(156, 120, 35),
(156, 121, 35),
(156, 122, 34),
(156, 123, 33),
(156, 125, 33),
(156, 126, 32),
(156, 127, 32),
(156, 128, 31),
(157, 129, 31),
(157, 131, 30),
(157, 132, 30),
(157, 133, 29),
(157, 135, 29),
(157, 136, 29),
(157, 137, 28),
(157, 138, 28),
(157, 140, 28),
(157, 141, 28),
(157, 142, 28),
(157, 144, 28),
(156, 145, 28),
(156, 146, 28),
(156, 148, 28),
(156, 149, 28),
(156, 150, 28),
(156, 152, 29),
(155, 153, 29),
(155, 154, 30),
(155, 156, 31),
(155, 157, 31),
(154, 159, 32),
(154, 160, 33),
(154, 161, 34),
(153, 163, 35),
(153, 164, 36),
(152, 165, 38),
(152, 166, 39),
(151, 168, 40),
(151, 169, 42),
(150, 170, 43),
(149, 171, 45),
(149, 173, 46),
(148, 174, 48),
(147, 175, 50),
(147, 176, 51),
(146, 177, 53),
(145, 179, 55),
(145, 180, 57),
(144, 181, 59),
(143, 182, 60),
(142, 183, 62),
(141, 184, 64),
(140, 185, 66),
(140, 186, 68),
(139, 187, 70),
(138, 188, 72),
(137, 189, 74),
(136, 190, 76),
(135, 190, 78),
(134, 191, 80),
(133, 192, 82),
(132, 193, 84),
(131, 194, 87),
(130, 195, 89),
(130, 195, 91),
(129, 196, 93),
(128, 197, 95),
(127, 198, 97),
(126, 198, 99),
(125, 199, 101),
(124, 200, 103),
(123, 201, 105),
(122, 201, 108),
(121, 202, 110),
(120, 203, 112),
(119, 204, 114),
(118, 204, 116),
(117, 205, 118),
(116, 206, 121),
(115, 206, 123),
(114, 207, 125),
(113, 208, 127),
(112, 208, 129),
(112, 209, 131),
(111, 210, 134),
(110, 210, 136),
(109, 211, 138),
(108, 212, 140),
(107, 212, 142),
(106, 213, 145),
(105, 214, 147),
(104, 214, 149),
(104, 215, 151),
(103, 216, 153),
(102, 216, 156),
(101, 217, 158),
(100, 218, 160),
(100, 218, 162),
(99, 219, 165),
(98, 220, 167),
(98, 220, 169),
(97, 221, 171),
(97, 222, 174),
(96, 222, 176),
(96, 223, 178),
(96, 224, 180),
(95, 224, 183),
(95, 225, 185),
(95, 226, 187),
(95, 226, 189),
(95, 227, 192),
(95, 228, 194),
(96, 228, 196),
(96, 229, 198),
(97, 229, 200),
(97, 230, 202),
(98, 231, 205),
(99, 231, 207),
(100, 232, 209),
(102, 232, 211),
(103, 233, 213),
(104, 233, 215),
(106, 234, 217),
(108, 235, 219),
(109, 235, 220),
(111, 235, 222),
(113, 236, 224),
(115, 236, 226),
(118, 237, 227),
(120, 237, 229),
(122, 238, 231),
(125, 238, 232),
(127, 238, 234),
(130, 239, 235),
(132, 239, 236),
(135, 239, 238),
(138, 240, 239),
(141, 240, 240),
(143, 240, 241),
(146, 240, 243),
(149, 241, 244),
(152, 241, 245),
(154, 241, 246),
(157, 241, 247),
(160, 241, 248),
(163, 241, 249),
(166, 241, 249),
(168, 242, 250),
(171, 242, 251),
(174, 242, 252),
(177, 242, 253),
(179, 242, 253),
)
IMOLA = (
(26, 51, 179),
(26, 52, 178),
(27, 53, 178),
(27, 53, 177),
(28, 54, 177),
(28, 55, 177),
(28, 55, 176),
(29, 56, 176),
(29, 57, 176),
(30, 57, 175),
(30, 58, 175),
(30, 59, 175),
(31, 60, 174),
(31, 60, 174),
(31, 61, 174),
(32, 62, 173),
(32, 62, 173),
(32, 63, 173),
(33, 64, 172),
(33, 64, 172),
(33, 65, 172),
(34, 66, 171),
(34, 66, 171),
(34, 67, 171),
(35, 68, 170),
(35, 68, 170),
(35, 69, 170),
(36, 70, 169),
(36, 70, 169),
(36, 71, 169),
(37, 72, 168),
(37, 72, 168),
(37, 73, 168),
(38, 74, 167),
(38, 74, 167),
(38, 75, 167),
(39, 76, 166),
(39, 76, 166),
(39, 77, 166),
(40, 78, 165),
(40, 78, 165),
(40, 79, 165),
(41, 80, 164),
(41, 80, 164),
(41, 81, 164),
(42, 82, 163),
(42, 82, 163),
(42, 83, 163),
(43, 83, 162),
(43, 84, 162),
(43, 85, 162),
(44, 85, 161),
(44, 86, 161),
(44, 87, 161),
(45, 87, 160),
(45, 88, 160),
(45, 89, 160),
(46, 89, 159),
(46, 90, 159),
(46, 91, 159),
(47, 91, 158),
(47, 92, 158),
(47, 93, 158),
(48, 93, 157),
(48, 94, 157),
(48, 95, 156),
(49, 95, 156),
(49, 96, 156),
(50, 96, 155),
(50, 97, 155),
(50, 98, 155),
(51, 98, 154),
(51, 99, 154),
(52, 100, 153),
(52, 100, 153),
(52, 101, 152),
(53, 101, 152),
(53, 102, 152),
(54, 103, 151),
(54, 103, 151),
(55, 104, 150),
(55, 104, 150),
(56, 105, 149),
(56, 106, 149),
(57, 106, 148),
(57, 107, 148),
(58, 107, 147),
(58, 108, 147),
(59, 108, 146),
(59, 109, 146),
(60, 110, 145),
(60, 110, 145),
(61, 111, 144),
(61, 111, 144),
(62, 112, 143),
(62, 112, 143),
(63, 113, 142),
(64, 114, 141),
(64, 114, 141),
(65, 115, 140),
(65, 115, 140),
(66, 116, 139),
(66, 116, 139),
(67, 117, 138),
(68, 118, 138),
(68, 118, 137),
(69, 119, 137),
(69, 119, 136),
(70, 120, 136),
(70, 121, 135),
(71, 121, 135),
(72, 122, 134),
(72, 123, 134),
(73, 123, 133),
(74, 124, 133),
(74, 125, 132),
(75, 125, 132),
(76, 126, 131),
(76, 127, 131),
(77, 127, 130),
(78, 128, 130),
(78, 129, 129),
(79, 129, 129),
(80, 130, 129),
(81, 131, 128),
(81, 132, 128),
(82, 133, 128),
(83, 133, 127),
(84, 134, 127),
(85, 135, 127),
(86, 136, 126),
(86, 137, 126),
(87, 138, 126),
(88, 138, 125),
(89, 139, 125),
(90, 140, 125),
(91, 141, 125),
(92, 142, 124),
(92, 143, 124),
(93, 144, 124),
(94, 145, 123),
(95, 146, 123),
(96, 146, 123),
(97, 147, 123),
(98, 148, 122),
(99, 149, 122),
(100, 150, 122),
(101, 151, 122),
(102, 152, 122),
(103, 153, 121),
(103, 154, 121),
(104, 155, 121),
(105, 156, 121),
(106, 157, 120),
(107, 158, 120),
(108, 159, 120),
(109, 160, 120),
(110, 161, 119),
(111, 162, 119),
(112, 163, 119),
(113, 164, 119),
(114, 165, 118),
(115, 166, 118),
(116, 167, 118),
(117, 168, 118),
(118, 169, 117),
(119, 170, 117),
(120, 171, 117),
(121, 172, 117),
(122, 173, 116),
(123, 174, 116),
(124, 175, 116),
(125, 176, 116),
(126, 177, 115),
(127, 178, 115),
(128, 179, 115),
(129, 180, 115),
(130, 181, 114),
(131, 182, 114),
(132, 183, 114),
(133, 184, 114),
(134, 185, 113),
(135, 186, 113),
(136, 187, 113),
(137, 188, 113),
(138, 189, 112),
(139, 190, 112),
(140, 191, 112),
(141, 192, 112),
(142, 193, 111),
(144, 194, 111),
(145, 195, 111),
(146, 196, 110),
(147, 198, 110),
(148, 199, 110),
(149, 200, 110),
(150, 201, 109),
(151, 202, 109),
(152, 203, 109),
(153, 204, 109),
(155, 205, 108),
(156, 206, 108),
(157, 207, 108),
(158, 208, 108),
(159, 210, 107),
(161, 211, 107),
(162, 212, 107),
(163, 213, 107),
(164, 214, 106),
(166, 215, 106),
(167, 216, 106),
(169, 217, 106),
(170, 218, 105),
(172, 219, 105),
(173, 221, 105),
(175, 222, 105),
(176, 223, 104),
(178, 224, 104),
(180, 225, 104),
(181, 226, 104),
(183, 227, 104),
(185, 228, 104),
(187, 229, 103),
(189, 230, 103),
(191, 231, 103),
(192, 232, 103),
(194, 233, 103),
(196, 234, 103),
(198, 235, 103),
(200, 235, 103),
(202, 236, 103),
(205, 237, 102),
(207, 238, 102),
(209, 239, 102),
(211, 240, 102),
(213, 240, 102),
(215, 241, 102),
(217, 242, 102),
(219, 243, 102),
(221, 244, 102),
(223, 244, 102),
(226, 245, 102),
(228, 246, 102),
(230, 246, 102),
(232, 247, 102),
(234, 248, 102),
(236, 249, 102),
(238, 249, 102),
(240, 250, 102),
(242, 251, 102),
(245, 251, 102),
(247, 252, 102),
(249, 253, 102),
(251, 254, 102),
(253, 254, 102),
(255, 255, 102),
)
LAJOLLA = (
(255, 255, 204),
(255, 254, 202),
(255, 254, 200),
(255, 253, 199),
(255, 252, 197),
(255, 252, 195),
(254, 251, 193),
(254, 250, 192),
(254, 250, 190),
(254, 249, 188),
(254, 249, 186),
(254, 248, 184),
(254, 247, 183),
(254, 247, 181),
(254, 246, 179),
(253, 245, 177),
(253, 245, 175),
(253, 244, 174),
(253, 243, 172),
(253, 243, 170),
(253, 242, 168),
(253, 241, 166),
(252, 240, 165),
(252, 240, 163),
(252, 239, 161),
(252, 238, 159),
(252, 238, 157),
(252, 237, 156),
(251, 236, 154),
(251, 235, 152),
(251, 234, 150),
(251, 234, 148),
(251, 233, 146),
(250, 232, 144),
(250, 231, 143),
(250, 230, 141),
(250, 229, 139),
(250, 228, 137),
(249, 227, 135),
(249, 226, 133),
(249, 225, 132),
(249, 224, 130),
(248, 223, 128),
(248, 222, 126),
(248, 221, 124),
(248, 220, 123),
(247, 218, 121),
(247, 217, 119),
(247, 216, 117),
(246, 215, 116),
(246, 214, 114),
(246, 212, 112),
(246, 211, 111),
(245, 210, 109),
(245, 208, 108),
(245, 207, 106),
(244, 206, 105),
(244, 204, 104),
(244, 203, 102),
(243, 202, 101),
(243, 200, 100),
(243, 199, 99),
(242, 197, 98),
(242, 196, 97),
(242, 195, 96),
(241, 193, 95),
(241, 192, 94),
(241, 191, 93),
(241, 189, 92),
(240, 188, 91),
(240, 187, 91),
(240, 185, 90),
(239, 184, 89),
(239, 183, 89),
(239, 181, 88),
(238, 180, 88),
(238, 179, 87),
(238, 178, 87),
(238, 176, 87),
(237, 175, 86),
(237, 174, 86),
(237, 173, 86),
(237, 171, 85),
(236, 170, 85),
(236, 169, 85),
(236, 168, 85),
(236, 167, 84),
(235, 165, 84),
(235, 164, 84),
(235, 163, 84),
(235, 162, 84),
(234, 161, 83),
(234, 159, 83),
(234, 158, 83),
(234, 157, 83),
(233, 156, 83),
(233, 155, 83),
(233, 154, 83),
(233, 152, 82),
(232, 151, 82),
(232, 150, 82),
(232, 149, 82),
(231, 148, 82),
(231, 147, 82),
(231, 145, 82),
(231, 144, 82),
(230, 143, 82),
(230, 142, 82),
(230, 141, 81),
(230, 140, 81),
(229, 138, 81),
(229, 137, 81),
(229, 136, 81),
(228, 135, 81),
(228, 134, 81),
(228, 132, 81),
(227, 131, 81),
(227, 130, 81),
(227, 129, 80),
(226, 128, 80),
(226, 126, 80),
(225, 125, 80),
(225, 124, 80),
(224, 123, 80),
(224, 121, 80),
(223, 120, 80),
(223, 119, 79),
(222, 118, 79),
(222, 116, 79),
(221, 115, 79),
(221, 114, 79),
(220, 112, 79),
(219, 111, 79),
(218, 110, 78),
(218, 108, 78),
(217, 107, 78),
(216, 106, 78),
(215, 105, 78),
(214, 103, 78),
(213, 102, 77),
(212, 101, 77),
(211, 99, 77),
(210, 98, 77),
(208, 97, 76),
(207, 95, 76),
(206, 94, 76),
(205, 93, 76),
(203, 92, 75),
(202, 91, 75),
(200, 89, 75),
(199, 88, 75),
(197, 87, 74),
(196, 86, 74),
(194, 85, 74),
(193, 84, 73),
(191, 83, 73),
(189, 82, 72),
(188, 81, 72),
(186, 80, 72),
(184, 79, 71),
(182, 78, 71),
(181, 77, 70),
(179, 77, 70),
(177, 76, 70),
(175, 75, 69),
(174, 74, 69),
(172, 74, 68),
(170, 73, 68),
(168, 72, 67),
(166, 71, 67),
(165, 71, 66),
(163, 70, 66),
(161, 70, 65),
(159, 69, 65),
(157, 68, 64),
(156, 68, 63),
(154, 67, 63),
(152, 67, 62),
(150, 66, 62),
(148, 66, 61),
(147, 65, 60),
(145, 65, 60),
(143, 64, 59),
(141, 64, 58),
(139, 63, 58),
(138, 63, 57),
(136, 62, 56),
(134, 62, 55),
(132, 61, 55),
(131, 61, 54),
(129, 60, 53),
(127, 59, 52),
(125, 59, 52),
(123, 58, 51),
(122, 58, 50),
(120, 57, 49),
(118, 57, 49),
(116, 56, 48),
(115, 56, 47),
(113, 55, 46),
(111, 55, 45),
(110, 54, 45),
(108, 54, 44),
(106, 53, 43),
(104, 53, 42),
(103, 52, 41),
(101, 51, 40),
(99, 51, 40),
(97, 50, 39),
(96, 50, 38),
(94, 49, 37),
(92, 49, 36),
(91, 48, 36),
(89, 48, 35),
(87, 47, 34),
(86, 47, 33),
(84, 46, 32),
(82, 46, 32),
(81, 45, 31),
(79, 44, 30),
(78, 44, 29),
(76, 43, 29),
(74, 43, 28),
(73, 42, 27),
(71, 42, 26),
(69, 41, 26),
(68, 41, 25),
(66, 40, 24),
(65, 40, 23),
(63, 39, 23),
(62, 39, 22),
(60, 38, 21),
(58, 38, 21),
(57, 37, 20),
(55, 37, 19),
(54, 36, 19),
(52, 36, 18),
(51, 35, 17),
(49, 35, 17),
(48, 34, 16),
(46, 34, 15),
(45, 33, 14),
(43, 33, 13),
(42, 32, 13),
(41, 31, 12),
(39, 31, 11),
(38, 30, 10),
(36, 30, 9),
(35, 29, 8),
(34, 29, 7),
(32, 28, 6),
(31, 28, 5),
(30, 27, 4),
(28, 27, 3),
(27, 26, 2),
(26, 26, 1),
)
LAPAZ = (
(26, 12, 100),
(27, 14, 101),
(27, 15, 102),
(27, 16, 103),
(28, 18, 104),
(28, 19, 104),
(28, 20, 105),
(29, 22, 106),
(29, 23, 107),
(29, 24, 108),
(30, 25, 109),
(30, 26, 109),
(30, 28, 110),
(31, 29, 111),
(31, 30, 112),
(31, 31, 113),
(32, 32, 113),
(32, 33, 114),
(32, 35, 115),
(32, 36, 116),
(33, 37, 117),
(33, 38, 117),
(33, 39, 118),
(33, 40, 119),
(34, 41, 120),
(34, 42, 121),
(34, 43, 121),
(34, 44, 122),
(35, 45, 123),
(35, 47, 124),
(35, 48, 124),
(35, 49, 125),
(36, 50, 126),
(36, 51, 127),
(36, 52, 127),
(36, 53, 128),
(37, 54, 129),
(37, 55, 130),
(37, 56, 130),
(37, 57, 131),
(38, 58, 132),
(38, 59, 132),
(38, 60, 133),
(38, 61, 134),
(39, 62, 135),
(39, 63, 135),
(39, 64, 136),
(39, 65, 137),
(40, 66, 137),
(40, 67, 138),
(40, 69, 139),
(40, 70, 139),
(41, 71, 140),
(41, 72, 140),
(41, 73, 141),
(42, 74, 142),
(42, 75, 142),
(42, 76, 143),
(43, 77, 144),
(43, 78, 144),
(43, 79, 145),
(44, 80, 145),
(44, 81, 146),
(44, 82, 146),
(45, 83, 147),
(45, 84, 148),
(45, 85, 148),
(46, 86, 149),
(46, 87, 149),
(46, 88, 150),
(47, 89, 150),
(47, 90, 151),
(48, 91, 151),
(48, 92, 152),
(48, 93, 152),
(49, 94, 153),
(49, 94, 153),
(50, 95, 153),
(50, 96, 154),
(51, 97, 154),
(51, 98, 155),
(52, 99, 155),
(52, 100, 156),
(53, 101, 156),
(53, 102, 156),
(54, 103, 157),
(55, 104, 157),
(55, 105, 157),
(56, 106, 158),
(56, 107, 158),
(57, 108, 158),
(58, 109, 159),
(58, 110, 159),
(59, 111, 159),
(60, 112, 160),
(60, 112, 160),
(61, 113, 160),
(62, 114, 161),
(62, 115, 161),
(63, 116, 161),
(64, 117, 161),
(65, 118, 162),
(66, 119, 162),
(66, 120, 162),
(67, 121, 162),
(68, 122, 162),
(69, 122, 162),
(70, 123, 163),
(71, 124, 163),
(72, 125, 163),
(73, 126, 163),
(74, 127, 163),
(75, 128, 163),
(76, 128, 163),
(77, 129, 163),
(78, 130, 163),
(79, 131, 164),
(80, 132, 164),
(81, 133, 164),
(82, 133, 164),
(83, 134, 164),
(84, 135, 164),
(85, 136, 164),
(86, 136, 164),
(87, 137, 164),
(88, 138, 163),
(90, 139, 163),
(91, 139, 163),
(92, 140, 163),
(93, 141, 163),
(94, 142, 163),
(96, 142, 163),
(97, 143, 163),
(98, 144, 163),
(99, 144, 162),
(101, 145, 162),
(102, 146, 162),
(103, 146, 162),
(104, 147, 162),
(106, 148, 161),
(107, 148, 161),
(108, 149, 161),
(110, 149, 161),
(111, 150, 161),
(112, 151, 160),
(114, 151, 160),
(115, 152, 160),
(116, 152, 159),
(118, 153, 159),
(119, 153, 159),
(120, 154, 159),
(122, 154, 158),
(123, 155, 158),
(124, 155, 158),
(126, 156, 157),
(127, 156, 157),
(128, 157, 157),
(130, 157, 156),
(131, 158, 156),
(133, 158, 156),
(134, 158, 155),
(135, 159, 155),
(137, 159, 154),
(138, 160, 154),
(139, 160, 154),
(141, 160, 153),
(142, 161, 153),
(144, 161, 153),
(145, 162, 152),
(146, 162, 152),
(148, 162, 152),
(149, 163, 152),
(151, 163, 151),
(152, 164, 151),
(153, 164, 151),
(155, 164, 150),
(156, 165, 150),
(158, 165, 150),
(159, 166, 150),
(161, 166, 150),
(162, 166, 150),
(164, 167, 149),
(165, 167, 149),
(167, 168, 149),
(168, 168, 149),
(170, 169, 149),
(171, 169, 149),
(173, 170, 149),
(174, 170, 149),
(176, 171, 149),
(178, 171, 150),
(179, 172, 150),
(181, 173, 150),
(183, 173, 150),
(184, 174, 151),
(186, 175, 151),
(188, 176, 152),
(190, 176, 152),
(191, 177, 153),
(193, 178, 153),
(195, 179, 154),
(197, 180, 155),
(199, 181, 156),
(200, 182, 156),
(202, 183, 157),
(204, 184, 158),
(206, 185, 159),
(208, 186, 160),
(210, 187, 162),
(211, 188, 163),
(213, 189, 164),
(215, 190, 166),
(217, 192, 167),
(218, 193, 168),
(220, 194, 170),
(222, 195, 171),
(223, 197, 173),
(225, 198, 175),
(227, 199, 176),
(228, 201, 178),
(230, 202, 180),
(231, 203, 181),
(232, 204, 183),
(234, 206, 185),
(235, 207, 187),
(236, 208, 189),
(237, 210, 190),
(239, 211, 192),
(240, 212, 194),
(241, 213, 196),
(242, 215, 198),
(243, 216, 200),
(244, 217, 201),
(244, 218, 203),
(245, 219, 205),
(246, 221, 207),
(247, 222, 209),
(247, 223, 211),
(248, 224, 212),
(249, 225, 214),
(249, 226, 216),
(250, 227, 218),
(250, 229, 220),
(251, 230, 221),
(251, 231, 223),
(251, 232, 225),
(252, 233, 227),
(252, 234, 229),
(252, 235, 230),
(253, 236, 232),
(253, 237, 234),
(253, 238, 236),
(254, 239, 237),
(254, 240, 239),
(254, 241, 241),
(254, 242, 243),
)
LISBON = (
(230, 229, 255),
(227, 227, 253),
(224, 226, 252),
(221, 224, 250),
(219, 222, 249),
(216, 220, 247),
(213, 218, 245),
(211, 216, 244),
(208, 214, 242),
(205, 212, 241),
(203, 210, 239),
(200, 208, 237),
(197, 206, 236),
(195, 204, 234),
(192, 202, 233),
(189, 200, 231),
(187, 198, 229),
(184, 196, 228),
(181, 194, 226),
(179, 192, 225),
(176, 190, 223),
(173, 188, 222),
(171, 186, 220),
(168, 185, 218),
(165, 183, 217),
(163, 181, 215),
(160, 179, 214),
(158, 177, 212),
(155, 175, 211),
(152, 173, 209),
(150, 171, 207),
(147, 169, 206),
(144, 167, 204),
(142, 165, 203),
(139, 163, 201),
(137, 162, 200),
(134, 160, 198),
(132, 158, 196),
(129, 156, 195),
(126, 154, 193),
(124, 152, 192),
(121, 150, 190),
(119, 148, 189),
(116, 146, 187),
(114, 144, 185),
(111, 142, 184),
(109, 141, 182),
(106, 139, 181),
(104, 137, 179),
(101, 135, 177),
(98, 133, 176),
(96, 131, 174),
(94, 129, 172),
(91, 127, 171),
(89, 125, 169),
(86, 123, 167),
(84, 121, 166),
(81, 119, 164),
(79, 117, 162),
(76, 115, 160),
(74, 114, 158),
(72, 112, 157),
(69, 110, 155),
(67, 108, 153),
(65, 106, 151),
(63, 104, 149),
(61, 102, 147),
(58, 100, 145),
(56, 98, 143),
(54, 96, 140),
(52, 94, 138),
(50, 92, 136),
(48, 90, 134),
(47, 89, 132),
(45, 87, 130),
(43, 85, 127),
(42, 83, 125),
(40, 81, 123),
(39, 79, 120),
(37, 78, 118),
(36, 76, 116),
(34, 74, 113),
(33, 72, 111),
(32, 71, 109),
(31, 69, 106),
(30, 67, 104),
(29, 66, 102),
(28, 64, 100),
(27, 63, 97),
(26, 61, 95),
(25, 60, 93),
(25, 58, 90),
(24, 57, 88),
(23, 55, 86),
(23, 54, 83),
(22, 52, 81),
(22, 51, 79),
(21, 49, 77),
(21, 48, 75),
(20, 46, 72),
(20, 45, 70),
(19, 44, 68),
(19, 42, 66),
(19, 41, 64),
(18, 40, 62),
(18, 39, 60),
(18, 37, 58),
(18, 36, 55),
(17, 35, 53),
(17, 34, 51),
(17, 33, 50),
(17, 32, 48),
(17, 31, 46),
(17, 30, 44),
(17, 29, 42),
(17, 28, 40),
(17, 27, 39),
(18, 27, 37),
(18, 26, 36),
(18, 26, 34),
(18, 25, 33),
(19, 25, 32),
(19, 25, 30),
(20, 24, 29),
(20, 24, 28),
(21, 24, 27),
(21, 24, 26),
(22, 25, 26),
(23, 25, 25),
(24, 25, 25),
(24, 26, 24),
(25, 26, 24),
(26, 27, 24),
(27, 28, 23),
(28, 28, 23),
(30, 29, 23),
(31, 30, 24),
(32, 31, 24),
(33, 32, 24),
(35, 33, 24),
(36, 35, 25),
(37, 36, 25),
(39, 37, 26),
(40, 38, 26),
(42, 40, 27),
(43, 41, 28),
(45, 43, 28),
(47, 44, 29),
(48, 45, 30),
(50, 47, 31),
(51, 48, 32),
(53, 50, 32),
(55, 52, 33),
(56, 53, 34),
(58, 55, 35),
(60, 56, 36),
(62, 58, 37),
(63, 60, 38),
(65, 61, 39),
(67, 63, 40),
(69, 64, 41),
(70, 66, 42),
(72, 68, 43),
(74, 69, 44),
(76, 71, 45),
(77, 73, 46),
(79, 75, 47),
(81, 76, 49),
(83, 78, 50),
(85, 80, 51),
(87, 81, 52),
(88, 83, 53),
(90, 85, 54),
(92, 87, 55),
(94, 88, 56),
(96, 90, 57),
(98, 92, 58),
(100, 94, 60),
(102, 96, 61),
(104, 97, 62),
(105, 99, 63),
(107, 101, 64),
(109, 103, 65),
(111, 105, 67),
(113, 107, 68),
(115, 108, 69),
(117, 110, 70),
(119, 112, 71),
(121, 114, 73),
(123, 116, 74),
(125, 118, 75),
(127, 120, 76),
(129, 122, 78),
(131, 123, 79),
(133, 125, 80),
(135, 127, 82),
(137, 129, 83),
(139, 131, 85),
(141, 133, 86),
(143, 135, 88),
(145, 137, 89),
(148, 139, 91),
(150, 141, 92),
(152, 143, 94),
(154, 145, 96),
(156, 147, 97),
(158, 150, 99),
(160, 152, 101),
(162, 154, 103),
(164, 156, 105),
(166, 158, 106),
(168, 160, 108),
(171, 162, 110),
(173, 164, 112),
(175, 167, 114),
(177, 169, 117),
(179, 171, 119),
(181, 173, 121),
(183, 175, 123),
(185, 177, 125),
(187, 179, 128),
(189, 182, 130),
(191, 184, 132),
(193, 186, 135),
(195, 188, 137),
(197, 190, 139),
(199, 192, 142),
(201, 195, 144),
(203, 197, 147),
(205, 199, 149),
(207, 201, 152),
(209, 203, 154),
(211, 205, 157),
(213, 207, 159),
(215, 210, 162),
(217, 212, 164),
(218, 214, 167),
(220, 216, 169),
(222, 218, 172),
(224, 220, 175),
(226, 222, 177),
(228, 225, 180),
(230, 227, 182),
(232, 229, 185),
(234, 231, 188),
(236, 233, 190),
(238, 235, 193),
(240, 238, 195),
(241, 240, 198),
(243, 242, 201),
(245, 244, 203),
(247, 246, 206),
(249, 248, 209),
(251, 251, 211),
(253, 253, 214),
(255, 255, 217),
)
NUUK = (
(5, 89, 140),
(7, 90, 140),
(9, 90, 140),
(11, 90, 139),
(13, 91, 139),
(14, 91, 139),
(16, 91, 138),
(17, 91, 138),
(19, 92, 137),
(20, 92, 137),
(21, 92, 137),
(23, 92, 136),
(24, 93, 136),
(25, 93, 136),
(26, 93, 135),
(27, 94, 135),
(28, 94, 135),
(30, 94, 134),
(31, 95, 134),
(32, 95, 134),
(33, 95, 134),
(34, 96, 133),
(35, 96, 133),
(36, 96, 133),
(37, 97, 133),
(38, 97, 132),
(39, 97, 132),
(40, 98, 132),
(41, 98, 132),
(42, 99, 131),
(43, 99, 131),
(44, 99, 131),
(45, 100, 131),
(46, 100, 131),
(47, 101, 131),
(48, 101, 130),
(50, 102, 130),
(51, 102, 130),
(52, 103, 130),
(53, 103, 130),
(54, 104, 130),
(55, 104, 130),
(56, 105, 130),
(57, 105, 130),
(59, 106, 130),
(60, 106, 130),
(61, 107, 130),
(62, 108, 130),
(63, 108, 130),
(64, 109, 130),
(66, 109, 130),
(67, 110, 130),
(68, 111, 130),
(69, 111, 130),
(70, 112, 131),
(72, 113, 131),
(73, 113, 131),
(74, 114, 131),
(75, 115, 131),
(77, 115, 132),
(78, 116, 132),
(79, 117, 132),
(81, 117, 132),
(82, 118, 133),
(83, 119, 133),
(85, 120, 133),
(86, 120, 134),
(87, 121, 134),
(88, 122, 134),
(90, 122, 135),
(91, 123, 135),
(92, 124, 135),
(94, 125, 136),
(95, 125, 136),
(96, 126, 136),
(98, 127, 137),
(99, 128, 137),
(100, 129, 138),
(102, 129, 138),
(103, 130, 138),
(104, 131, 139),
(106, 132, 139),
(107, 132, 140),
(108, 133, 140),
(110, 134, 140),
(111, 135, 141),
(112, 135, 141),
(114, 136, 142),
(115, 137, 142),
(116, 138, 143),
(118, 139, 143),
(119, 139, 143),
(120, 140, 144),
(121, 141, 144),
(123, 142, 145),
(124, 142, 145),
(125, 143, 145),
(127, 144, 146),
(128, 145, 146),
(129, 145, 146),
(130, 146, 147),
(132, 147, 147),
(133, 148, 147),
(134, 148, 148),
(135, 149, 148),
(137, 150, 148),
(138, 151, 149),
(139, 151, 149),
(140, 152, 149),
(141, 153, 150),
(142, 154, 150),
(144, 154, 150),
(145, 155, 150),
(146, 156, 150),
(147, 156, 151),
(148, 157, 151),
(149, 158, 151),
(150, 158, 151),
(151, 159, 151),
(152, 160, 151),
(153, 160, 151),
(154, 161, 152),
(155, 162, 152),
(156, 162, 152),
(157, 163, 152),
(158, 164, 152),
(159, 164, 152),
(160, 165, 152),
(161, 166, 152),
(162, 166, 152),
(162, 167, 152),
(163, 167, 152),
(164, 168, 151),
(165, 168, 151),
(166, 169, 151),
(166, 170, 151),
(167, 170, 151),
(168, 171, 151),
(169, 171, 151),
(169, 172, 151),
(170, 172, 150),
(171, 173, 150),
(171, 173, 150),
(172, 174, 150),
(173, 174, 149),
(173, 175, 149),
(174, 175, 149),
(174, 176, 149),
(175, 176, 148),
(176, 177, 148),
(176, 177, 148),
(177, 177, 148),
(177, 178, 147),
(178, 178, 147),
(178, 179, 147),
(179, 179, 146),
(179, 180, 146),
(180, 180, 146),
(180, 181, 145),
(181, 181, 145),
(181, 181, 145),
(182, 182, 144),
(182, 182, 144),
(183, 183, 144),
(183, 183, 143),
(183, 183, 143),
(184, 184, 142),
(184, 184, 142),
(185, 185, 142),
(185, 185, 141),
(186, 185, 141),
(186, 186, 141),
(186, 186, 140),
(187, 187, 140),
(187, 187, 139),
(188, 187, 139),
(188, 188, 139),
(189, 188, 138),
(189, 189, 138),
(189, 189, 138),
(190, 189, 137),
(190, 190, 137),
(191, 190, 136),
(191, 191, 136),
(192, 191, 136),
(192, 192, 135),
(192, 192, 135),
(193, 193, 135),
(193, 193, 134),
(194, 193, 134),
(194, 194, 134),
(195, 194, 133),
(195, 195, 133),
(196, 195, 133),
(196, 196, 133),
(197, 196, 132),
(197, 197, 132),
(198, 198, 132),
(199, 198, 132),
(199, 199, 132),
(200, 199, 131),
(200, 200, 131),
(201, 201, 131),
(202, 201, 131),
(202, 202, 131),
(203, 203, 131),
(204, 203, 131),
(205, 204, 131),
(205, 205, 131),
(206, 206, 131),
(207, 207, 132),
(208, 207, 132),
(209, 208, 132),
(210, 209, 132),
(210, 210, 133),
(211, 211, 133),
(212, 212, 134),
(213, 213, 134),
(214, 214, 135),
(215, 215, 135),
(216, 216, 136),
(217, 217, 136),
(219, 218, 137),
(220, 219, 138),
(221, 221, 139),
(222, 222, 140),
(223, 223, 141),
(224, 224, 142),
(225, 225, 143),
(227, 226, 144),
(228, 227, 145),
(229, 229, 146),
(230, 230, 147),
(231, 231, 148),
(232, 232, 149),
(233, 233, 151),
(235, 234, 152),
(236, 235, 153),
(237, 237, 154),
(238, 238, 156),
(239, 239, 157),
(240, 240, 158),
(241, 241, 160),
(242, 242, 161),
(243, 243, 163),
(244, 244, 164),
(245, 245, 165),
(246, 246, 167),
(247, 247, 168),
(248, 248, 170),
(249, 249, 171),
(250, 250, 173),
(251, 251, 174),
(252, 252, 175),
(253, 253, 177),
(254, 254, 178),
)
OLERON = (
(26, 38, 89),
(27, 40, 91),
(29, 41, 92),
(30, 43, 94),
(32, 44, 95),
(33, 46, 97),
(35, 47, 98),
(36, 49, 100),
(38, 50, 101),
(40, 52, 103),
(41, 53, 104),
(43, 55, 106),
(44, 56, 107),
(46, 58, 109),
(47, 59, 111),
(49, 61, 112),
(50, 63, 114),
(52, 64, 115),
(53, 66, 117),
(55, 67, 118),
(57, 69, 120),
(58, 71, 122),
(60, 72, 123),
(61, 74, 125),
(63, 75, 126),
(65, 77, 128),
(66, 79, 130),
(68, 80, 131),
(69, 82, 133),
(71, 84, 135),
(73, 85, 136),
(74, 87, 138),
(76, 89, 140),
(78, 90, 141),
(79, 92, 143),
(81, 94, 145),
(83, 95, 146),
(84, 97, 148),
(86, 99, 150),
(88, 100, 151),
(89, 102, 153),
(91, 104, 155),
(93, 105, 156),
(94, 107, 158),
(96, 109, 160),
(98, 111, 162),
(100, 112, 163),
(101, 114, 165),
(103, 116, 167),
(105, 117, 169),
(107, 119, 170),
(108, 121, 172),
(110, 123, 174),
(112, 125, 176),
(114, 126, 177),
(115, 128, 179),
(117, 130, 181),
(119, 132, 183),
(121, 133, 184),
(122, 135, 186),
(124, 137, 188),
(126, 139, 190),
(128, 141, 192),
(130, 142, 193),
(131, 144, 195),
(133, 146, 197),
(135, 148, 199),
(137, 150, 201),
(139, 151, 202),
(141, 153, 204),
(142, 155, 206),
(144, 157, 208),
(146, 159, 210),
(148, 161, 211),
(150, 162, 213),
(152, 164, 215),
(153, 166, 217),
(155, 168, 219),
(157, 170, 220),
(159, 172, 222),
(161, 173, 224),
(163, 175, 225),
(164, 177, 227),
(166, 179, 229),
(168, 181, 230),
(170, 183, 232),
(172, 184, 233),
(173, 186, 234),
(175, 188, 236),
(177, 189, 237),
(178, 191, 238),
(180, 193, 239),
(182, 194, 240),
(183, 196, 241),
(185, 198, 242),
(186, 199, 243),
(188, 201, 243),
(189, 202, 244),
(191, 203, 244),
(192, 205, 245),
(194, 206, 245),
(195, 208, 246),
(196, 209, 246),
(198, 210, 247),
(199, 212, 247),
(200, 213, 248),
(202, 214, 248),
(203, 216, 248),
(204, 217, 249),
(206, 218, 249),
(207, 220, 249),
(208, 221, 250),
(210, 222, 250),
(211, 224, 250),
(212, 225, 251),
(214, 226, 251),
(215, 228, 251),
(216, 229, 252),
(218, 230, 252),
(219, 232, 252),
(220, 233, 253),
(222, 234, 253),
(223, 236, 253),
(224, 237, 254),
(226, 238, 254),
(227, 240, 254),
(228, 241, 255),
(230, 242, 255),
(26, 76, 0),
(29, 77, 0),
(31, 78, 0),
(34, 79, 0),
(37, 79, 0),
(39, 80, 0),
(42, 81, 0),
(44, 81, 0),
(47, 82, 0),
(49, 83, 0),
(51, 84, 0),
(53, 84, 0),
(56, 85, 0),
(58, 86, 0),
(60, 86, 0),
(62, 87, 0),
(64, 87, 0),
(66, 88, 0),
(68, 89, 0),
(70, 89, 0),
(73, 90, 1),
(75, 91, 1),
(77, 92, 1),
(79, 92, 2),
(81, 93, 2),
(83, 94, 2),
(85, 95, 3),
(87, 96, 4),
(90, 96, 5),
(92, 97, 6),
(94, 98, 7),
(96, 99, 9),
(99, 100, 10),
(101, 102, 12),
(103, 103, 14),
(106, 104, 16),
(108, 105, 18),
(110, 106, 20),
(113, 108, 22),
(115, 109, 24),
(117, 110, 26),
(120, 112, 29),
(122, 113, 31),
(124, 114, 33),
(126, 116, 35),
(129, 117, 37),
(131, 118, 40),
(133, 120, 42),
(135, 121, 44),
(138, 123, 46),
(140, 124, 49),
(142, 125, 51),
(144, 127, 53),
(146, 128, 55),
(148, 130, 58),
(151, 131, 60),
(153, 132, 62),
(155, 134, 64),
(157, 135, 67),
(159, 137, 69),
(161, 138, 71),
(163, 140, 73),
(166, 141, 76),
(168, 143, 78),
(170, 144, 80),
(172, 146, 83),
(174, 147, 85),
(177, 149, 87),
(179, 151, 89),
(181, 152, 92),
(183, 154, 94),
(186, 156, 96),
(188, 157, 99),
(190, 159, 101),
(193, 161, 103),
(195, 163, 106),
(197, 164, 108),
(199, 166, 110),
(202, 168, 113),
(204, 170, 115),
(206, 172, 117),
(209, 173, 120),
(211, 175, 122),
(213, 177, 124),
(215, 179, 127),
(217, 181, 129),
(220, 182, 132),
(222, 184, 134),
(224, 186, 137),
(226, 188, 139),
(228, 190, 142),
(229, 192, 144),
(231, 194, 147),
(233, 196, 149),
(234, 197, 152),
(236, 199, 154),
(237, 201, 157),
(238, 203, 159),
(240, 205, 162),
(241, 206, 164),
(242, 208, 167),
(242, 210, 169),
(243, 212, 171),
(244, 213, 174),
(245, 215, 176),
(245, 217, 178),
(246, 218, 181),
(246, 220, 183),
(247, 222, 185),
(247, 223, 188),
(247, 225, 190),
(248, 226, 192),
(248, 228, 195),
(248, 230, 197),
(249, 231, 199),
(249, 233, 201),
(249, 234, 204),
(250, 236, 206),
(250, 238, 208),
(250, 239, 211),
(251, 241, 213),
(251, 243, 215),
(251, 244, 218),
(251, 246, 220),
(252, 248, 222),
(252, 249, 225),
(252, 251, 227),
(253, 253, 230),
)
OSLO = (
(1, 1, 1),
(1, 2, 3),
(2, 4, 5),
(2, 5, 7),
(3, 6, 9),
(4, 7, 11),
(4, 8, 13),
(5, 9, 15),
(5, 10, 16),
(6, 11, 18),
(6, 12, 19),
(7, 13, 21),
(8, 14, 22),
(8, 15, 23),
(9, 16, 24),
(9, 17, 25),
(10, 18, 27),
(11, 19, 28),
(11, 19, 29),
(11, 20, 30),
(12, 21, 31),
(12, 22, 32),
(13, 22, 34),
(13, 23, 35),
(13, 24, 36),
(13, 25, 37),
(13, 25, 39),
(13, 26, 40),
(13, 27, 41),
(14, 27, 42),
(14, 28, 44),
(14, 29, 45),
(14, 30, 46),
(14, 30, 47),
(14, 31, 49),
(14, 32, 50),
(15, 33, 51),
(15, 33, 53),
(15, 34, 54),
(15, 35, 55),
(15, 36, 57),
(15, 37, 58),
(16, 38, 60),
(16, 38, 61),
(16, 39, 62),
(16, 40, 64),
(16, 41, 65),
(17, 42, 67),
(17, 43, 68),
(17, 43, 69),
(17, 44, 71),
(18, 45, 72),
(18, 46, 74),
(18, 47, 75),
(18, 48, 76),
(19, 49, 78),
(19, 50, 79),
(19, 50, 81),
(20, 51, 82),
(20, 52, 84),
(20, 53, 85),
(20, 54, 87),
(21, 55, 88),
(21, 56, 90),
(21, 57, 91),
(22, 58, 93),
(22, 59, 94),
(23, 59, 96),
(23, 60, 97),
(23, 61, 99),
(24, 62, 100),
(24, 63, 102),
(25, 64, 103),
(25, 65, 105),
(25, 66, 106),
(26, 67, 108),
(26, 68, 109),
(27, 69, 111),
(27, 70, 112),
(28, 71, 114),
(28, 72, 115),
(29, 72, 117),
(29, 73, 118),
(30, 74, 120),
(30, 75, 122),
(31, 76, 123),
(32, 77, 125),
(32, 78, 126),
(33, 79, 128),
(33, 80, 129),
(34, 81, 131),
(35, 82, 133),
(35, 83, 134),
(36, 84, 136),
(37, 85, 137),
(38, 86, 139),
(38, 87, 140),
(39, 88, 142),
(40, 89, 144),
(41, 90, 145),
(42, 91, 147),
(43, 92, 148),
(44, 93, 150),
(45, 94, 152),
(46, 95, 153),
(47, 96, 155),
(48, 97, 156),
(49, 98, 158),
(50, 99, 160),
(51, 100, 161),
(52, 101, 163),
(54, 102, 164),
(55, 103, 166),
(56, 105, 168),
(58, 106, 169),
(59, 107, 171),
(61, 108, 172),
(62, 109, 174),
(64, 110, 175),
(65, 112, 177),
(67, 113, 178),
(68, 114, 179),
(70, 115, 181),
(71, 117, 182),
(73, 118, 184),
(75, 119, 185),
(76, 120, 186),
(78, 122, 187),
(80, 123, 188),
(81, 124, 189),
(83, 125, 190),
(84, 126, 191),
(86, 127, 192),
(88, 129, 193),
(89, 130, 194),
(91, 131, 195),
(92, 132, 195),
(94, 133, 196),
(96, 134, 197),
(97, 135, 197),
(99, 136, 198),
(100, 137, 198),
(101, 138, 199),
(103, 139, 199),
(104, 140, 199),
(106, 141, 200),
(107, 142, 200),
(108, 143, 200),
(110, 144, 200),
(111, 144, 201),
(112, 145, 201),
(114, 146, 201),
(115, 147, 201),
(116, 148, 201),
(117, 148, 201),
(119, 149, 201),
(120, 150, 201),
(121, 151, 202),
(122, 152, 202),
(123, 152, 202),
(125, 153, 202),
(126, 154, 202),
(127, 155, 202),
(128, 155, 202),
(129, 156, 202),
(131, 157, 202),
(132, 158, 202),
(133, 158, 202),
(134, 159, 202),
(135, 160, 202),
(137, 160, 202),
(138, 161, 202),
(139, 162, 201),
(140, 163, 201),
(141, 163, 201),
(142, 164, 201),
(144, 165, 201),
(145, 166, 201),
(146, 166, 201),
(147, 167, 201),
(148, 168, 201),
(150, 169, 201),
(151, 169, 201),
(152, 170, 201),
(153, 171, 201),
(154, 172, 201),
(156, 172, 201),
(157, 173, 201),
(158, 174, 201),
(159, 175, 201),
(160, 175, 201),
(162, 176, 202),
(163, 177, 202),
(164, 178, 202),
(165, 179, 202),
(167, 180, 202),
(168, 180, 202),
(169, 181, 202),
(170, 182, 202),
(172, 183, 202),
(173, 184, 203),
(174, 185, 203),
(176, 186, 203),
(177, 187, 203),
(178, 188, 204),
(180, 189, 204),
(181, 189, 204),
(182, 190, 205),
(184, 191, 205),
(185, 193, 205),
(186, 194, 206),
(188, 195, 206),
(189, 196, 207),
(191, 197, 207),
(192, 198, 208),
(194, 199, 209),
(195, 200, 209),
(197, 201, 210),
(198, 203, 211),
(199, 204, 211),
(201, 205, 212),
(202, 206, 213),
(204, 208, 214),
(206, 209, 215),
(207, 210, 216),
(209, 211, 217),
(210, 213, 218),
(212, 214, 219),
(213, 216, 220),
(215, 217, 221),
(216, 218, 222),
(218, 220, 223),
(219, 221, 224),
(221, 222, 225),
(222, 224, 226),
(224, 225, 228),
(226, 227, 229),
(227, 228, 230),
(229, 230, 231),
(230, 231, 233),
(232, 233, 234),
(233, 234, 235),
(235, 236, 237),
(236, 237, 238),
(238, 238, 239),
(239, 240, 241),
(241, 241, 242),
(243, 243, 244),
(244, 244, 245),
(246, 246, 246),
(247, 247, 248),
(249, 249, 249),
(250, 250, 251),
(252, 252, 252),
(253, 253, 254),
(255, 255, 255),
)
ROMA = (
(127, 25, 0),
(128, 28, 1),
(129, 31, 2),
(130, 34, 3),
(131, 37, 4),
(132, 39, 5),
(134, 42, 5),
(135, 44, 6),
(136, 47, 7),
(137, 49, 8),
(138, 51, 8),
(139, 53, 9),
(140, 56, 10),
(141, 58, 11),
(143, 60, 12),
(144, 62, 13),
(145, 64, 14),
(146, 66, 15),
(147, 68, 16),
(148, 71, 16),
(149, 73, 17),
(150, 75, 18),
(151, 77, 19),
(152, 79, 20),
(153, 81, 21),
(154, 83, 22),
(155, 85, 22),
(156, 87, 23),
(157, 89, 24),
(158, 91, 25),
(159, 93, 26),
(160, 95, 27),
(161, 97, 28),
(162, 99, 28),
(163, 101, 29),
(164, 103, 30),
(165, 105, 31),
(166, 107, 32),
(167, 109, 33),
(168, 111, 33),
(169, 113, 34),
(170, 114, 35),
(171, 116, 36),
(172, 118, 37),
(173, 120, 38),
(173, 122, 39),
(174, 124, 39),
(175, 126, 40),
(176, 128, 41),
(177, 130, 42),
(178, 132, 43),
(179, 134, 44),
(180, 136, 45),
(181, 138, 46),
(182, 140, 47),
(183, 143, 48),
(184, 145, 49),
(185, 147, 51),
(186, 149, 52),
(187, 151, 53),
(188, 153, 54),
(189, 155, 56),
(191, 157, 57),
(192, 159, 58),
(193, 162, 60),
(194, 164, 62),
(195, 166, 63),
(196, 168, 65),
(197, 171, 67),
(198, 173, 69),
(200, 175, 71),
(201, 177, 73),
(202, 180, 75),
(203, 182, 77),
(205, 184, 79),
(206, 187, 82),
(207, 189, 84),
(208, 191, 87),
(209, 193, 89),
(211, 195, 92),
(212, 198, 95),
(213, 200, 97),
(214, 202, 100),
(215, 204, 103),
(216, 206, 106),
(217, 207, 109),
(218, 209, 111),
(219, 211, 114),
(220, 213, 117),
(221, 214, 120),
(222, 216, 123),
(222, 217, 126),
(223, 219, 128),
(224, 220, 131),
(224, 221, 134),
(225, 222, 137),
(225, 223, 139),
(226, 224, 142),
(226, 225, 144),
(226, 226, 147),
(227, 227, 149),
(227, 228, 152),
(227, 229, 154),
(227, 229, 157),
(227, 230, 159),
(227, 231, 161),
(226, 231, 163),
(226, 232, 166),
(226, 232, 168),
(225, 233, 170),
(225, 233, 172),
(224, 234, 174),
(224, 234, 176),
(223, 234, 178),
(222, 234, 180),
(221, 235, 182),
(220, 235, 183),
(219, 235, 185),
(218, 235, 187),
(217, 235, 188),
(215, 235, 190),
(214, 236, 192),
(212, 236, 193),
(211, 236, 195),
(209, 236, 196),
(208, 235, 197),
(206, 235, 199),
(204, 235, 200),
(202, 235, 201),
(200, 235, 202),
(198, 235, 203),
(196, 234, 204),
(194, 234, 205),
(191, 234, 206),
(189, 233, 207),
(187, 233, 208),
(184, 232, 209),
(182, 232, 210),
(179, 231, 211),
(177, 230, 211),
(174, 230, 212),
(171, 229, 212),
(169, 228, 213),
(166, 227, 213),
(163, 227, 214),
(160, 226, 214),
(158, 225, 215),
(155, 224, 215),
(152, 223, 215),
(149, 221, 215),
(146, 220, 215),
(143, 219, 216),
(141, 218, 216),
(138, 216, 216),
(135, 215, 216),
(132, 214, 216),
(130, 212, 216),
(127, 211, 215),
(124, 209, 215),
(122, 208, 215),
(119, 206, 215),
(117, 204, 214),
(114, 203, 214),
(112, 201, 214),
(110, 199, 213),
(107, 198, 213),
(105, 196, 213),
(103, 194, 212),
(101, 193, 212),
(99, 191, 211),
(97, 189, 211),
(96, 187, 210),
(94, 186, 209),
(92, 184, 209),
(91, 182, 208),
(89, 180, 208),
(88, 178, 207),
(87, 177, 206),
(85, 175, 206),
(84, 173, 205),
(83, 171, 204),
(82, 170, 204),
(80, 168, 203),
(79, 166, 202),
(78, 164, 201),
(77, 163, 201),
(76, 161, 200),
(75, 159, 199),
(74, 157, 199),
(74, 156, 198),
(73, 154, 197),
(72, 152, 197),
(71, 150, 196),
(70, 149, 195),
(69, 147, 194),
(69, 145, 194),
(68, 144, 193),
(67, 142, 192),
(66, 140, 191),
(66, 138, 191),
(65, 137, 190),
(64, 135, 189),
(64, 133, 189),
(63, 132, 188),
(62, 130, 187),
(61, 129, 187),
(61, 127, 186),
(60, 125, 185),
(59, 124, 184),
(59, 122, 184),
(58, 120, 183),
(57, 119, 182),
(57, 117, 182),
(56, 116, 181),
(56, 114, 180),
(55, 112, 180),
(54, 111, 179),
(54, 109, 178),
(53, 108, 177),
(52, 106, 177),
(52, 104, 176),
(51, 103, 175),
(50, 101, 175),
(50, 100, 174),
(49, 98, 173),
(48, 97, 173),
(48, 95, 172),
(47, 94, 171),
(47, 92, 171),
(46, 90, 170),
(45, 89, 169),
(45, 87, 169),
(44, 86, 168),
(43, 84, 167),
(43, 83, 167),
(42, 81, 166),
(41, 80, 165),
(41, 78, 165),
(40, 77, 164),
(39, 75, 163),
(39, 74, 163),
(38, 72, 162),
(37, 71, 161),
(37, 69, 161),
(36, 68, 160),
(35, 66, 160),
(34, 65, 159),
(34, 63, 158),
(33, 62, 158),
(32, 60, 157),
(31, 59, 156),
(30, 57, 156),
(29, 56, 155),
(28, 54, 154),
(27, 53, 154),
(26, 51, 153),
)
TOFINO = (
(222, 217, 255),
(219, 215, 254),
(217, 213, 253),
(214, 211, 251),
(211, 209, 250),
(208, 207, 249),
(206, 205, 248),
(203, 203, 247),
(200, 202, 246),
(198, 200, 244),
(195, 198, 243),
(192, 196, 242),
(190, 194, 241),
(187, 192, 240),
(184, 190, 239),
(182, 188, 237),
(179, 187, 236),
(176, 185, 235),
(174, 183, 234),
(171, 181, 233),
(168, 179, 232),
(166, 177, 230),
(163, 175, 229),
(160, 173, 228),
(158, 172, 227),
(155, 170, 226),
(152, 168, 225),
(150, 166, 223),
(147, 164, 222),
(144, 162, 221),
(142, 160, 220),
(139, 159, 219),
(136, 157, 217),
(134, 155, 216),
(131, 153, 215),
(128, 151, 213),
(126, 149, 212),
(123, 147, 211),
(121, 145, 209),
(118, 143, 208),
(115, 141, 206),
(113, 139, 205),
(110, 137, 203),
(107, 135, 202),
(105, 133, 200),
(102, 131, 198),
(100, 129, 197),
(97, 127, 195),
(95, 125, 193),
(92, 123, 191),
(90, 121, 189),
(87, 119, 186),
(85, 117, 184),
(83, 115, 182),
(81, 113, 180),
(79, 111, 177),
(76, 109, 175),
(74, 107, 172),
(73, 105, 170),
(71, 103, 167),
(69, 101, 165),
(67, 99, 162),
(66, 98, 160),
(64, 96, 157),
(62, 94, 154),
(61, 92, 152),
(60, 90, 149),
(58, 89, 147),
(57, 87, 144),
(56, 85, 141),
(55, 84, 139),
(53, 82, 136),
(52, 80, 134),
(51, 79, 131),
(50, 77, 128),
(49, 76, 126),
(48, 74, 123),
(47, 73, 121),
(46, 71, 118),
(45, 69, 116),
(44, 68, 113),
(43, 66, 111),
(42, 65, 108),
(41, 63, 106),
(40, 62, 103),
(39, 60, 101),
(38, 59, 98),
(37, 58, 96),
(36, 56, 93),
(35, 55, 91),
(34, 53, 89),
(34, 52, 86),
(33, 50, 84),
(32, 49, 81),
(31, 48, 79),
(30, 46, 77),
(29, 45, 74),
(28, 43, 72),
(28, 42, 70),
(27, 41, 67),
(26, 40, 65),
(25, 38, 63),
(25, 37, 61),
(24, 36, 59),
(23, 35, 56),
(22, 33, 54),
(22, 32, 52),
(21, 31, 50),
(21, 30, 48),
(20, 29, 46),
(19, 28, 44),
(19, 27, 42),
(18, 26, 40),
(18, 25, 38),
(17, 24, 36),
(17, 24, 35),
(17, 23, 33),
(16, 22, 32),
(16, 22, 30),
(15, 21, 29),
(15, 21, 27),
(14, 21, 26),
(14, 21, 25),
(13, 21, 24),
(13, 21, 23),
(13, 21, 22),
(13, 21, 21),
(13, 21, 20),
(13, 22, 19),
(13, 22, 19),
(13, 23, 18),
(13, 23, 18),
(13, 24, 18),
(14, 25, 18),
(14, 26, 17),
(15, 27, 18),
(15, 28, 18),
(16, 28, 18),
(16, 30, 18),
(17, 31, 18),
(17, 32, 19),
(17, 33, 19),
(18, 34, 20),
(18, 35, 20),
(19, 37, 21),
(19, 38, 21),
(20, 39, 22),
(20, 41, 22),
(21, 42, 23),
(21, 44, 24),
(22, 45, 24),
(22, 47, 25),
(23, 48, 26),
(24, 50, 26),
(24, 51, 27),
(25, 53, 28),
(26, 54, 28),
(26, 56, 29),
(27, 57, 30),
(28, 59, 31),
(29, 61, 32),
(29, 62, 32),
(30, 64, 33),
(31, 66, 34),
(32, 67, 35),
(32, 69, 36),
(33, 71, 37),
(34, 72, 37),
(35, 74, 38),
(35, 76, 39),
(36, 77, 40),
(37, 79, 41),
(38, 81, 42),
(39, 83, 43),
(39, 84, 44),
(40, 86, 44),
(41, 88, 45),
(42, 90, 46),
(43, 91, 47),
(44, 93, 48),
(44, 95, 49),
(45, 97, 50),
(46, 98, 51),
(47, 100, 52),
(48, 102, 53),
(49, 104, 54),
(50, 106, 55),
(51, 108, 56),
(52, 109, 57),
(53, 111, 58),
(54, 113, 59),
(55, 115, 60),
(56, 117, 61),
(57, 119, 62),
(58, 121, 63),
(59, 123, 64),
(61, 125, 65),
(62, 127, 66),
(63, 129, 68),
(65, 131, 69),
(66, 133, 70),
(68, 135, 71),
(70, 137, 73),
(72, 139, 74),
(74, 141, 75),
(76, 143, 77),
(78, 145, 78),
(80, 147, 80),
(82, 149, 81),
(85, 151, 83),
(87, 154, 84),
(90, 156, 86),
(92, 158, 87),
(95, 160, 89),
(98, 162, 90),
(100, 164, 92),
(103, 166, 94),
(106, 168, 95),
(109, 169, 97),
(112, 171, 99),
(115, 173, 100),
(118, 175, 102),
(121, 177, 103),
(124, 179, 105),
(127, 180, 107),
(130, 182, 108),
(133, 184, 110),
(136, 185, 112),
(139, 187, 113),
(142, 189, 115),
(145, 190, 116),
(148, 192, 118),
(151, 194, 120),
(154, 195, 121),
(157, 197, 123),
(160, 198, 124),
(163, 200, 126),
(166, 202, 127),
(169, 203, 129),
(172, 205, 131),
(175, 206, 132),
(178, 208, 134),
(181, 209, 135),
(183, 211, 137),
(186, 212, 138),
(189, 214, 140),
(192, 216, 141),
(195, 217, 143),
(198, 219, 145),
(201, 220, 146),
(204, 222, 148),
(207, 223, 149),
(210, 225, 151),
(213, 226, 152),
(216, 228, 154),
(219, 230, 155),
)
TOKYO = (
(26, 14, 52),
(28, 15, 52),
(29, 16, 53),
(31, 16, 54),
(33, 17, 55),
(34, 17, 56),
(36, 18, 57),
(37, 18, 57),
(39, 19, 58),
(40, 19, 59),
(42, 20, 60),
(43, 20, 61),
(45, 21, 62),
(46, 21, 63),
(48, 22, 63),
(49, 22, 64),
(51, 23, 65),
(52, 24, 66),
(54, 24, 67),
(55, 25, 68),
(57, 26, 69),
(58, 26, 70),
(60, 27, 71),
(61, 28, 71),
(63, 28, 72),
(64, 29, 73),
(66, 30, 74),
(67, 31, 75),
(69, 32, 76),
(70, 32, 77),
(72, 33, 78),
(74, 34, 79),
(75, 35, 80),
(77, 36, 81),
(78, 37, 82),
(80, 38, 83),
(81, 39, 84),
(83, 40, 85),
(84, 41, 86),
(86, 42, 87),
(87, 43, 88),
(89, 44, 89),
(90, 45, 89),
(92, 46, 90),
(93, 47, 91),
(95, 48, 92),
(96, 49, 93),
(97, 50, 94),
(99, 51, 95),
(100, 53, 96),
(102, 54, 97),
(103, 55, 98),
(104, 56, 99),
(105, 57, 100),
(107, 58, 100),
(108, 60, 101),
(109, 61, 102),
(110, 62, 103),
(112, 63, 104),
(113, 64, 104),
(114, 66, 105),
(115, 67, 106),
(116, 68, 107),
(117, 69, 108),
(118, 70, 108),
(119, 72, 109),
(120, 73, 110),
(121, 74, 110),
(122, 75, 111),
(122, 76, 112),
(123, 78, 112),
(124, 79, 113),
(125, 80, 114),
(126, 81, 114),
(126, 82, 115),
(127, 83, 115),
(128, 84, 116),
(128, 85, 116),
(129, 87, 117),
(129, 88, 117),
(130, 89, 118),
(131, 90, 118),
(131, 91, 119),
(132, 92, 119),
(132, 93, 120),
(133, 94, 120),
(133, 95, 121),
(134, 96, 121),
(134, 97, 122),
(134, 98, 122),
(135, 99, 122),
(135, 100, 123),
(135, 101, 123),
(136, 102, 123),
(136, 103, 124),
(137, 104, 124),
(137, 105, 125),
(137, 106, 125),
(137, 107, 125),
(138, 108, 126),
(138, 109, 126),
(138, 110, 126),
(139, 111, 127),
(139, 112, 127),
(139, 113, 127),
(139, 114, 128),
(140, 115, 128),
(140, 116, 128),
(140, 117, 128),
(140, 118, 129),
(140, 119, 129),
(141, 119, 129),
(141, 120, 130),
(141, 121, 130),
(141, 122, 130),
(141, 123, 130),
(142, 124, 131),
(142, 125, 131),
(142, 126, 131),
(142, 127, 132),
(142, 128, 132),
(142, 129, 132),
(143, 130, 132),
(143, 131, 133),
(143, 131, 133),
(143, 132, 133),
(143, 133, 133),
(143, 134, 134),
(144, 135, 134),
(144, 136, 134),
(144, 137, 134),
(144, 138, 135),
(144, 139, 135),
(144, 140, 135),
(145, 141, 135),
(145, 141, 136),
(145, 142, 136),
(145, 143, 136),
(145, 144, 136),
(145, 145, 137),
(145, 146, 137),
(146, 147, 137),
(146, 148, 137),
(146, 149, 138),
(146, 150, 138),
(146, 151, 138),
(146, 152, 138),
(147, 152, 139),
(147, 153, 139),
(147, 154, 139),
(147, 155, 139),
(147, 156, 140),
(147, 157, 140),
(148, 158, 140),
(148, 159, 140),
(148, 160, 141),
(148, 161, 141),
(148, 162, 141),
(148, 163, 141),
(149, 164, 142),
(149, 165, 142),
(149, 165, 142),
(149, 166, 143),
(149, 167, 143),
(150, 168, 143),
(150, 169, 143),
(150, 170, 144),
(150, 171, 144),
(151, 172, 144),
(151, 173, 144),
(151, 174, 145),
(151, 175, 145),
(152, 176, 145),
(152, 177, 146),
(152, 178, 146),
(153, 179, 146),
(153, 180, 147),
(153, 181, 147),
(154, 182, 147),
(154, 183, 148),
(154, 184, 148),
(155, 185, 148),
(155, 187, 149),
(156, 188, 149),
(156, 189, 149),
(157, 190, 150),
(157, 191, 150),
(158, 192, 151),
(159, 193, 151),
(159, 194, 152),
(160, 196, 152),
(161, 197, 153),
(161, 198, 153),
(162, 199, 154),
(163, 201, 155),
(164, 202, 155),
(165, 203, 156),
(166, 204, 157),
(167, 206, 157),
(168, 207, 158),
(169, 208, 159),
(170, 210, 160),
(172, 211, 160),
(173, 212, 161),
(174, 214, 162),
(176, 215, 163),
(177, 216, 164),
(178, 218, 165),
(180, 219, 166),
(182, 221, 167),
(183, 222, 168),
(185, 223, 169),
(186, 225, 170),
(188, 226, 171),
(190, 227, 172),
(192, 229, 174),
(193, 230, 175),
(195, 231, 176),
(197, 232, 177),
(199, 234, 178),
(201, 235, 180),
(202, 236, 181),
(204, 237, 182),
(206, 238, 183),
(208, 239, 184),
(210, 240, 186),
(212, 241, 187),
(213, 242, 188),
(215, 243, 189),
(217, 243, 190),
(218, 244, 191),
(220, 245, 193),
(222, 246, 194),
(224, 246, 195),
(225, 247, 196),
(227, 248, 197),
(228, 248, 198),
(230, 249, 199),
(231, 249, 200),
(233, 250, 201),
(234, 250, 202),
(236, 250, 203),
(237, 251, 204),
(239, 251, 205),
(240, 252, 206),
(241, 252, 207),
(243, 252, 208),
(244, 253, 209),
(245, 253, 210),
(247, 253, 211),
(248, 253, 212),
(249, 254, 213),
(251, 254, 214),
(252, 254, 215),
(253, 254, 216),
(254, 254, 216),
)
TURKU = (
(0, 0, 0),
(2, 2, 2),
(4, 4, 3),
(6, 6, 5),
(7, 7, 7),
(9, 9, 8),
(11, 11, 10),
(13, 13, 12),
(14, 14, 13),
(16, 16, 14),
(17, 17, 16),
(18, 18, 17),
(20, 19, 18),
(21, 21, 19),
(22, 22, 20),
(23, 23, 21),
(24, 24, 22),
(25, 25, 23),
(26, 26, 24),
(27, 27, 25),
(28, 28, 25),
(29, 29, 26),
(30, 30, 27),
(31, 31, 28),
(32, 32, 29),
(33, 33, 30),
(34, 34, 31),
(35, 35, 31),
(36, 36, 32),
(37, 37, 33),
(38, 38, 34),
(39, 39, 35),
(40, 40, 35),
(41, 41, 36),
(42, 42, 37),
(43, 43, 38),
(44, 44, 39),
(45, 45, 39),
(46, 46, 40),
(47, 47, 41),
(48, 48, 42),
(50, 49, 42),
(51, 50, 43),
(52, 51, 44),
(53, 52, 45),
(54, 54, 45),
(55, 55, 46),
(56, 56, 47),
(57, 57, 48),
(58, 58, 48),
(59, 59, 49),
(60, 60, 50),
(61, 61, 50),
(62, 62, 51),
(63, 63, 52),
(64, 64, 52),
(65, 65, 53),
(66, 66, 53),
(67, 67, 54),
(68, 68, 55),
(69, 69, 55),
(70, 70, 56),
(71, 71, 56),
(72, 72, 57),
(73, 73, 58),
(75, 74, 58),
(76, 75, 59),
(77, 76, 59),
(78, 77, 60),
(79, 78, 60),
(80, 79, 61),
(81, 80, 61),
(82, 81, 62),
(83, 82, 62),
(84, 83, 63),
(85, 84, 63),
(86, 86, 64),
(87, 87, 64),
(88, 88, 65),
(89, 89, 65),
(90, 90, 66),
(91, 91, 66),
(92, 92, 67),
(93, 93, 67),
(94, 94, 68),
(95, 95, 68),
(96, 96, 69),
(97, 97, 69),
(98, 98, 70),
(99, 99, 70),
(100, 100, 71),
(101, 101, 71),
(102, 102, 71),
(103, 103, 72),
(104, 104, 72),
(106, 105, 73),
(107, 106, 73),
(108, 107, 74),
(109, 108, 74),
(110, 109, 75),
(111, 110, 75),
(112, 111, 76),
(113, 112, 76),
(114, 113, 77),
(115, 114, 77),
(117, 115, 78),
(118, 116, 78),
(119, 117, 79),
(120, 118, 79),
(121, 119, 80),
(123, 121, 80),
(124, 122, 81),
(125, 123, 81),
(126, 124, 82),
(127, 125, 82),
(129, 126, 83),
(130, 127, 83),
(131, 128, 84),
(133, 129, 84),
(134, 130, 85),
(135, 131, 86),
(137, 132, 86),
(138, 133, 87),
(139, 134, 88),
(141, 135, 88),
(142, 136, 89),
(144, 138, 89),
(145, 139, 90),
(147, 140, 91),
(148, 141, 91),
(150, 142, 92),
(151, 143, 93),
(153, 144, 94),
(154, 145, 94),
(156, 146, 95),
(157, 147, 96),
(159, 148, 97),
(161, 148, 97),
(162, 149, 98),
(164, 150, 99),
(165, 151, 100),
(167, 152, 100),
(169, 153, 101),
(170, 154, 102),
(172, 154, 103),
(173, 155, 104),
(175, 156, 104),
(176, 157, 105),
(178, 157, 106),
(179, 158, 107),
(181, 159, 108),
(182, 159, 108),
(184, 160, 109),
(185, 160, 110),
(187, 161, 111),
(188, 161, 112),
(190, 162, 112),
(191, 162, 113),
(192, 162, 114),
(194, 163, 115),
(195, 163, 116),
(196, 164, 116),
(198, 164, 117),
(199, 164, 118),
(200, 164, 119),
(201, 165, 120),
(203, 165, 120),
(204, 165, 121),
(205, 165, 122),
(206, 166, 123),
(207, 166, 124),
(208, 166, 124),
(209, 166, 125),
(210, 166, 126),
(211, 166, 127),
(212, 167, 128),
(214, 167, 128),
(215, 167, 129),
(216, 167, 130),
(217, 167, 131),
(218, 167, 132),
(219, 168, 133),
(219, 168, 134),
(220, 168, 135),
(221, 168, 136),
(222, 168, 137),
(223, 169, 138),
(224, 169, 139),
(225, 169, 140),
(226, 169, 141),
(227, 170, 142),
(228, 170, 143),
(229, 170, 144),
(230, 171, 146),
(231, 171, 147),
(232, 172, 148),
(233, 172, 149),
(233, 173, 151),
(234, 173, 152),
(235, 174, 153),
(236, 174, 155),
(237, 175, 156),
(238, 176, 158),
(239, 176, 159),
(239, 177, 161),
(240, 178, 162),
(241, 179, 163),
(242, 179, 165),
(242, 180, 167),
(243, 181, 168),
(244, 182, 170),
(244, 183, 171),
(245, 184, 173),
(246, 185, 174),
(246, 186, 176),
(247, 187, 177),
(247, 188, 179),
(248, 189, 180),
(248, 190, 182),
(249, 191, 183),
(249, 192, 185),
(250, 193, 186),
(250, 194, 188),
(251, 195, 189),
(251, 196, 191),
(251, 197, 192),
(252, 198, 193),
(252, 199, 195),
(252, 200, 196),
(253, 201, 198),
(253, 203, 199),
(253, 204, 200),
(253, 205, 202),
(253, 206, 203),
(254, 207, 204),
(254, 208, 206),
(254, 209, 207),
(254, 210, 208),
(254, 211, 209),
(254, 212, 211),
(254, 214, 212),
(254, 215, 213),
(255, 216, 214),
(255, 217, 215),
(255, 218, 217),
(255, 219, 218),
(255, 220, 219),
(255, 221, 220),
(255, 222, 221),
(255, 223, 223),
(255, 224, 224),
(255, 226, 225),
(255, 227, 226),
(255, 228, 227),
(255, 229, 229),
(255, 230, 230),
)
VIK = (
(0, 18, 97),
(1, 20, 98),
(1, 21, 99),
(1, 23, 100),
(1, 24, 101),
(1, 26, 102),
(2, 28, 103),
(2, 29, 104),
(2, 31, 105),
(2, 32, 106),
(2, 34, 107),
(2, 35, 108),
(2, 37, 109),
(2, 39, 110),
(2, 40, 111),
(2, 42, 112),
(2, 43, 113),
(2, 45, 114),
(2, 46, 115),
(2, 48, 116),
(2, 49, 117),
(2, 51, 118),
(2, 52, 119),
(2, 54, 120),
(2, 55, 121),
(2, 57, 122),
(2, 58, 123),
(3, 60, 124),
(3, 62, 125),
(3, 63, 126),
(3, 65, 127),
(3, 66, 128),
(3, 68, 129),
(3, 69, 130),
(3, 71, 131),
(3, 73, 132),
(3, 74, 133),
(4, 76, 134),
(4, 77, 135),
(4, 79, 136),
(5, 81, 137),
(5, 82, 138),
(6, 84, 139),
(6, 86, 140),
(7, 87, 141),
(8, 89, 143),
(9, 91, 144),
(11, 93, 145),
(12, 94, 146),
(14, 96, 147),
(16, 98, 148),
(17, 100, 150),
(19, 102, 151),
(21, 103, 152),
(23, 105, 153),
(25, 107, 154),
(28, 109, 156),
(30, 111, 157),
(32, 113, 158),
(35, 115, 160),
(37, 117, 161),
(40, 119, 162),
(43, 121, 164),
(45, 123, 165),
(48, 125, 166),
(51, 127, 168),
(54, 129, 169),
(57, 131, 171),
(60, 133, 172),
(63, 135, 173),
(66, 137, 175),
(69, 139, 176),
(72, 141, 178),
(75, 144, 179),
(78, 146, 180),
(81, 148, 182),
(84, 150, 183),
(87, 152, 185),
(90, 154, 186),
(93, 156, 187),
(97, 158, 189),
(100, 160, 190),
(103, 162, 192),
(106, 164, 193),
(109, 166, 194),
(113, 168, 196),
(116, 170, 197),
(119, 172, 198),
(122, 174, 200),
(125, 176, 201),
(128, 178, 202),
(132, 180, 204),
(135, 182, 205),
(138, 184, 206),
(141, 186, 208),
(144, 188, 209),
(148, 190, 210),
(151, 192, 212),
(154, 194, 213),
(157, 196, 214),
(160, 197, 216),
(163, 199, 217),
(167, 201, 218),
(170, 203, 220),
(173, 205, 221),
(176, 207, 222),
(179, 209, 223),
(182, 211, 225),
(186, 213, 226),
(189, 214, 227),
(192, 216, 228),
(195, 218, 229),
(198, 219, 230),
(201, 221, 231),
(204, 223, 232),
(207, 224, 232),
(210, 225, 233),
(213, 227, 233),
(216, 228, 233),
(219, 229, 233),
(222, 230, 233),
(224, 230, 233),
(226, 231, 232),
(229, 231, 232),
(231, 231, 231),
(232, 231, 229),
(234, 230, 228),
(235, 230, 226),
(236, 229, 224),
(237, 228, 222),
(238, 227, 220),
(238, 225, 218),
(238, 224, 216),
(238, 222, 213),
(238, 221, 211),
(238, 219, 208),
(238, 217, 205),
(237, 215, 203),
(237, 213, 200),
(236, 211, 197),
(236, 209, 195),
(235, 208, 192),
(234, 206, 189),
(233, 204, 186),
(233, 202, 184),
(232, 200, 181),
(231, 198, 178),
(230, 196, 176),
(229, 193, 173),
(228, 191, 170),
(228, 190, 168),
(227, 188, 165),
(226, 186, 162),
(225, 184, 160),
(224, 182, 157),
(223, 180, 154),
(223, 178, 152),
(222, 176, 149),
(221, 174, 147),
(220, 172, 144),
(219, 170, 141),
(219, 168, 139),
(218, 166, 136),
(217, 164, 134),
(216, 162, 131),
(215, 160, 129),
(214, 159, 126),
(214, 157, 124),
(213, 155, 121),
(212, 153, 119),
(211, 151, 116),
(211, 149, 114),
(210, 148, 112),
(209, 146, 109),
(208, 144, 107),
(207, 142, 104),
(207, 140, 102),
(206, 139, 100),
(205, 137, 97),
(204, 135, 95),
(204, 133, 93),
(203, 131, 90),
(202, 130, 88),
(201, 128, 86),
(201, 126, 83),
(200, 124, 81),
(199, 123, 79),
(198, 121, 76),
(198, 119, 74),
(197, 117, 72),
(196, 116, 69),
(195, 114, 67),
(194, 112, 65),
(194, 110, 63),
(193, 109, 60),
(192, 107, 58),
(191, 105, 56),
(190, 103, 54),
(190, 101, 51),
(189, 100, 49),
(188, 98, 47),
(187, 96, 45),
(186, 94, 42),
(184, 92, 40),
(183, 90, 38),
(182, 88, 36),
(181, 85, 33),
(179, 83, 31),
(178, 81, 29),
(176, 79, 27),
(175, 76, 24),
(173, 74, 22),
(171, 72, 20),
(169, 69, 18),
(167, 67, 16),
(165, 64, 15),
(163, 62, 13),
(161, 60, 11),
(159, 57, 10),
(156, 55, 9),
(154, 53, 8),
(152, 51, 7),
(150, 49, 7),
(148, 47, 6),
(145, 45, 6),
(143, 43, 6),
(141, 41, 6),
(139, 39, 6),
(137, 38, 6),
(135, 36, 6),
(133, 34, 6),
(131, 33, 6),
(129, 31, 6),
(127, 30, 6),
(126, 29, 6),
(124, 27, 6),
(122, 26, 6),
(120, 24, 6),
(118, 23, 6),
(116, 21, 6),
(115, 20, 6),
(113, 19, 7),
(111, 17, 7),
(109, 16, 7),
(108, 14, 7),
(106, 13, 7),
(104, 12, 7),
(103, 10, 7),
(101, 9, 7),
(99, 7, 7),
(98, 6, 7),
(96, 4, 8),
(94, 3, 8),
(93, 2, 8),
(91, 1, 8),
(89, 0, 8),
)
palettable-3.3.0/palettable/scientific/diverging.py 0000644 0000765 0000024 00000001437 13535036654 023536 0 ustar jiffyclub staff 0000000 0000000 """
Diverging colormaps from Scientific Colour-Maps:
http://www.fabiocrameri.ch/colourmaps.php
"""
from __future__ import absolute_import
from . import scientific
from . import colordata
from .. import utils
_PALETTE_TYPE = 'diverging'
_MAP_NAMES = (
'Broc', 'Cork', 'Vik', 'Lisbon', 'Tofino', 'Berlin', 'Roma'
)
_NAMES_TO_DATA = {
name: getattr(colordata, name.upper()) for name in _MAP_NAMES
}
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(_MAP_NAMES)
print_maps = utils.print_maps_factory(
'diverging scientific', _NAMES_AND_LENGTHS, _PALETTE_TYPE)
get_map = utils.get_map_factory(
'diverging scientific', __name__, _NAMES_TO_DATA, _PALETTE_TYPE,
scientific.ScientificMap, is_evenly_spaced=True)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/scientific/scientific.py 0000644 0000765 0000024 00000001570 13535036654 023676 0 ustar jiffyclub staff 0000000 0000000 """
Scientific Colour-Maps: http://www.fabiocrameri.ch/colourmaps.php
"""
from ..palette import Palette
class ScientificMap(Palette):
"""
Representation of a Scientific color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
palette_type : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
url : str
Website with related info.
"""
url = 'http://www.fabiocrameri.ch/colourmaps.php'
def __init__(self, name, palette_type, colors):
super(ScientificMap, self).__init__(name, palette_type, colors)
palettable-3.3.0/palettable/scientific/sequential.py 0000644 0000765 0000024 00000001613 13535036654 023726 0 ustar jiffyclub staff 0000000 0000000 """
Sequential colormaps from Scientific Colour-Maps:
http://www.fabiocrameri.ch/colourmaps.php
"""
from __future__ import absolute_import
from . import scientific
from . import colordata
from .. import utils
_PALETTE_TYPE = 'sequential'
_MAP_NAMES = (
'Devon', 'LaJolla', 'Bamako', 'Davos', 'Bilbao', 'Nuuk', 'Oslo', 'GrayC',
'Hawaii', 'LaPaz', 'Tokyo', 'Buda', 'Acton', 'Turku', 'Imola', 'Batlow',
'Oleron'
)
_NAMES_TO_DATA = {
name: getattr(colordata, name.upper()) for name in _MAP_NAMES
}
_NAMES_AND_LENGTHS = utils.make_names_and_lengths(_MAP_NAMES)
print_maps = utils.print_maps_factory(
'sequential scientific', _NAMES_AND_LENGTHS, _PALETTE_TYPE)
get_map = utils.get_map_factory(
'sequential scientific', __name__, _NAMES_TO_DATA, _PALETTE_TYPE,
scientific.ScientificMap, is_evenly_spaced=True)
globals().update(utils.load_all_palettes(_NAMES_AND_LENGTHS, get_map))
palettable-3.3.0/palettable/tableau/ 0000755 0000765 0000024 00000000000 13535037137 020473 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/tableau/__init__.py 0000644 0000765 0000024 00000000214 12475521673 022606 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .tableau import __doc__, print_maps, get_map, _get_all_maps
globals().update(_get_all_maps())
palettable-3.3.0/palettable/tableau/tableau.py 0000644 0000765 0000024 00000013441 12475521673 022472 0 ustar jiffyclub staff 0000000 0000000 # coding: utf-8
"""
Color palettes derived from Tableau: http://www.tableausoftware.com/
See also:
http://kb.tableausoftware.com/articles/knowledgebase/creating-custom-color-palettes
http://tableaufriction.blogspot.ro/2012/11/finally-you-can-use-tableau-data-colors.html
"""
from __future__ import absolute_import, print_function
from ..palette import Palette
# There is no documentation page that lists the color palettes.
url = 'http://www.tableausoftware.com'
palette_type = 'qualitative'
palette_names = [
'Tableau_10',
'TableauLight_10',
'TableauMedium_10',
'Tableau_20',
'Gray_5',
'ColorBlind_10',
'TrafficLight_9',
'PurpleGray_6',
'PurpleGray_12',
'BlueRed_6',
'BlueRed_12',
'GreenOrange_6',
'GreenOrange_12'
]
# Dictionary from name or short name to index.
lookup = dict((name.lower(), i) for i, name in enumerate(palette_names))
colors_rgb = [
# Tableau 10
[[ 31, 119, 180],
[255, 127, 14],
[ 44, 160, 44],
[214, 39, 40],
[148, 103, 189],
[140, 86, 75],
[227, 119, 194],
[127, 127, 127],
[188, 189, 34],
[ 23, 190, 207]],
# Tableau 10 Light
[[174, 199, 232],
[255, 187, 120],
[152, 223, 138],
[255, 152, 150],
[197, 176, 213],
[196, 156, 148],
[247, 182, 210],
[199, 199, 199],
[219, 219, 141],
[158, 218, 229]],
# Tableau 10 Medium
[[114, 158, 206],
[255, 158, 74],
[103, 191, 92],
[237, 102, 93],
[173, 139, 201],
[168, 120, 110],
[237, 151, 202],
[162, 162, 162],
[205, 204, 93],
[109, 204, 218]],
# Tableau 20
[[ 31, 119, 180],
[174, 199, 232],
[255, 127, 14],
[255, 187, 120],
[ 44, 160, 44],
[152, 223, 138],
[214, 39, 40],
[255, 152, 150],
[148, 103, 189],
[197, 176, 213],
[140, 86, 75],
[196, 156, 148],
[227, 119, 194],
[247, 182, 210],
[127, 127, 127],
[199, 199, 199],
[188, 189, 34],
[219, 219, 141],
[ 23, 190, 207],
[158, 218, 229]],
# Gray 5
[[ 96, 99, 106],
[165, 172, 175],
[ 65, 68, 81],
[143, 135, 130],
[207, 207, 207]],
# Color Blind 10
[[ 0, 107, 164],
[255, 128, 14],
[171, 171, 171],
[ 89, 89, 89],
[ 95, 158, 209],
[200, 82, 0],
[137, 137, 137],
[162, 200, 236],
[255, 188, 121],
[207, 207, 207]],
# Traffic Light 9
[[177, 3, 24],
[219, 161, 58],
[ 48, 147, 67],
[216, 37, 38],
[255, 193, 86],
[105, 183, 100],
[242, 108, 100],
[255, 221, 113],
[159, 205, 153]],
# Purple-Gray 6
[[123, 102, 210],
[220, 95, 189],
[148, 145, 123],
[153, 86, 136],
[208, 152, 238],
[215, 213, 197]],
# Purple-Gray 12
[[123, 102, 210],
[166, 153, 232],
[220, 95, 189],
[255, 192, 218],
[ 95, 90, 65],
[180, 177, 155],
[153, 86, 136],
[216, 152, 186],
[171, 106, 213],
[208, 152, 238],
[139, 124, 110],
[219, 212, 197]],
# Blue-Red 6
[[ 44, 105, 176],
[240, 39, 32],
[172, 97, 60],
[107, 163, 214],
[234, 107, 115],
[233, 195, 155]],
# Blue-Red 12
[[ 44, 105, 176],
[181, 200, 226],
[240, 39, 32],
[255, 182, 176],
[172, 97, 60],
[233, 195, 155],
[107, 163, 214],
[181, 223, 253],
[172, 135, 99],
[221, 201, 180],
[189, 10, 54],
[244, 115, 122]],
# Green-Orange 6
[[ 50, 162, 81],
[255, 127, 15],
[ 60, 183, 204],
[255, 217, 74],
[ 57, 115, 124],
[184, 90, 13]],
# Green-Orange 12
[[ 50, 162, 81],
[172, 217, 141],
[255, 127, 15],
[255, 185, 119],
[ 60, 183, 204],
[152, 217, 228],
[184, 90, 13],
[255, 217, 74],
[ 57, 115, 124],
[134, 180, 169],
[130, 133, 59],
[204, 201, 77]]
]
class TableauMap(Palette):
"""
Representation of a color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
colors : list
Colors as list of 0-255 RGB triplets.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
"""
url = url
def __init__(self, name, colors):
super(TableauMap, self).__init__(name, palette_type, colors)
def print_maps():
"""
Print a list of Tableau palettes.
"""
namelen = max(len(name) for name in palette_names)
fmt = '{0:' + str(namelen + 4) + '}{1:16}{2:}'
for i, name in enumerate(palette_names):
print(fmt.format(name, palette_type, len(colors_rgb[i])))
def get_map(name, reverse=False):
"""
Get a Tableau palette by name.
Parameters
----------
name : str
Name of map. Use `print_maps` to see available names. If `None`, then
return a list of all colormaps.
reverse : bool, optional
If True reverse colors from their default order.
Returns
-------
palette : TableauMap
"""
try:
index = lookup[name.lower()]
except KeyError:
msg = "{0!r} is an unknown Tableau palette."
raise KeyError(msg.format(name))
colors = colors_rgb[index]
if reverse:
name = name + '_r'
colors = list(reversed(colors))
return TableauMap(name, colors)
def _get_all_maps():
"""
Returns a dictionary of all Tableau palettes, including reversed ones.
"""
d = dict((name, get_map(name)) for name in palette_names)
d.update(dict(
(name + '_r', get_map(name, reverse=True)) for name in palette_names))
return d
palettable-3.3.0/palettable/utils.py 0000644 0000765 0000024 00000015724 13152437502 020574 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import, division
import itertools
import math
import sys
import textwrap
def round_as_py3(value):
"""
Implement round behaviour consistent with Python 3 for use in Python 2.
(Such that halves are rounded toward the even side.
Only for positive numbers.)
Adapted from https://github.com/python/cpython/blob/6b678aea1ca5c3c3728cd5a7a6eb112b2dad8553/Python/pytime.c#L71
"""
if math.fmod(value, 1) == 0.5:
return 2 * round(value / 2)
else:
return round(value)
if sys.version_info[0] >= 3:
round_ = round
else:
round_ = round_as_py3
def n_to_indices(num, length):
"""
Calculate `num` evenly spaced indices for a sequence of length `length`.
Should be used with num >= 2, result will always include first and last.
Parameters
----------
num : int
length : int
Returns
-------
list of int
"""
if num < 2:
raise ValueError('num must be 2 or larger, got {0}'.format(num))
elif num > length:
raise ValueError('num cannot be greater than length')
# subtract 1 from length to make it equivalent to the last index,
# subtract 1 from num to make the calculation include the last index
step = (length - 1) / (num - 1)
return (int(round_(step * i)) for i in range(num))
def evenly_spaced_values(num, data):
"""
Returns `num` evenly spaced values from sequence `data`.
Parameters
----------
num : int
data : sequence
Returns
-------
values : list
"""
return [data[i] for i in n_to_indices(num, len(data))]
def make_name_map(names):
"""
Create a dictionary mapping lowercase names to capitalized names.
Parameters
----------
names : sequence
Returns
-------
dict
"""
return dict((name.lower(), name) for name in names)
def make_names_and_lengths(names, lengths=None):
"""
Create a list pairing palette names with lengths. (Mostly used to define
the set of palettes that are automatically built.)
Parameters
----------
names : sequence of str
lengths : sequence of int, optional
Returns
-------
list of tuple
Pairs of names and lengths.
"""
lengths = lengths or range(3, 21)
return list(itertools.product(names, lengths))
def palette_name(name, length):
"""Create a palette name like CubeYF_8"""
return '{0}_{1}'.format(name, length)
def split_name_length(name):
"""Split name and length from a name like CubeYF_8"""
split = name.split('_')
return split[0], int(split[1])
def print_maps_factory(desc, names_and_lengths, palette_type):
"""
Create a function that will print the names and lengths of palettes.
Parameters
----------
desc : str
Short description of palettes, for example "sequential cmocean".
Used to populate the print_maps docstring.
names_and_lengths : sequence of tuple
Pairs of names and lengths.
palette_type : str
Palette type to include in printed messages.
Returns
-------
function
Takes no arguments.
"""
def print_maps():
namelen = max(
len(palette_name(name, length))
for name, length in names_and_lengths)
fmt = '{0:' + str(namelen + 4) + '}{1:16}{2:}'
for name, length in names_and_lengths:
print(fmt.format(
palette_name(name, length), palette_type, length))
print_maps.__doc__ = 'Print a list of {0} palettes'.format(desc)
return print_maps
def get_map_factory(desc, mod_path, names_to_data, palette_type, palette_class,
is_evenly_spaced=True):
"""
Create a function that builds a Palette instance from available data
and the given Palette sub-class.
Parameters
----------
desc : str
Short description of palettes, for example "sequential cmocean".
Used to populate the get_map docstring.
mod_path : str
Path to module where get_map will be used. Use to point users to
the print_maps function. E.g. 'palettable.cmocean.sequential'.
names_to_data : dict
Dictionary mapping string palette names to color data.
(Lists of 0-255 integer RGB tuples.)
palette_type : str
Palette type to pass into Palette subclass, e.g. 'diverging'.
palette_class : Palette subclass
Subclass of Palette to use when creating new Palettes.
Must have __init__ signature (name, palette_type, colors).
is_evenly_spaced : bool
Sets sampling of palette. If True, then choose values evenly spaced
in palette array, otherwise choose colors from the beginning of the
array.
Returns
-------
function
The function will have the definition:
def get_map(name, reverse=False):
"""
name_map = make_name_map(names_to_data.keys())
def get_map(name, reverse=False):
# name will be something like Viridis_8
name, length = split_name_length(name)
name_lower = name.lower()
if name_lower not in name_map:
raise KeyError('Unknown palette name: {0}'.format(name))
name = name_map[name_lower]
if len(names_to_data[name]) < length:
raise ValueError('Number of requested colors larger than '
'the number available in {0}'.format(name))
if is_evenly_spaced:
colors = evenly_spaced_values(length, names_to_data[name])
else:
colors = names_to_data[name][:length]
# add number back to name
name = palette_name(name, length)
if reverse:
name += '_r'
colors = list(reversed(colors))
return palette_class(name, palette_type, colors)
get_map.__doc__ = textwrap.dedent("""\
Get a {0} palette by name.
Parameters
----------
name : str
Name of map. Use {1}.print_maps
to see available names.
reverse : bool, optional
If True reverse colors from their default order.
Returns
-------
{2}
""").format(desc, mod_path, palette_class.__class__.__name__)
return get_map
def load_all_palettes(names_and_lengths, get_map_func):
"""
Load all palettes (including reversed ones) into a dictionary,
given a dictionary of names and lengths, plus a get_map function.
Parameters
----------
names_and_lengths : dict
names_and_lengths : sequence of tuple
Pairs of names and lengths.
get_map_func : function
Function with signature get_map(name, reverse=False) that returns
a Palette subclass instance.
Returns
-------
dict
Maps Name_Length strings to instances of a Palette subclass.
"""
maps = {}
for name, length in names_and_lengths:
map_name = palette_name(name, length)
maps[map_name] = get_map_func(map_name)
maps[map_name + '_r'] = get_map_func(map_name, reverse=True)
return maps
palettable-3.3.0/palettable/wesanderson/ 0000755 0000765 0000024 00000000000 13535037137 021406 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable/wesanderson/__init__.py 0000644 0000765 0000024 00000000234 13052672644 023520 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from .wesanderson import __doc__, _palettes, print_maps, get_map, _get_all_maps
globals().update(_get_all_maps())
palettable-3.3.0/palettable/wesanderson/wesanderson.py 0000644 0000765 0000024 00000030453 13534774404 024321 0 ustar jiffyclub staff 0000000 0000000 from __future__ import absolute_import
from __future__ import print_function
"""
Color palettes derived from http://wesandersonpalettes.tumblr.com/.
"""
import webbrowser
from ..palette import Palette
_tumblr_template = 'http://wesandersonpalettes.tumblr.com/post/{0}'
_palette_type = 'qualitative'
# Tumblr palettes in chronological order
_palettes = {
'Chevalier': {
'colors': [
(53, 82, 67), (254, 202, 73), (201, 213, 213), (187, 162, 137)
],
'type': _palette_type,
'url': _tumblr_template.format('79263620764/hotel-chevalier')
},
'Moonrise1': {
'colors': [
(114, 202, 221), (240, 165, 176), (140, 133, 54), (195, 180, 119),
(250, 208, 99)
],
'type': _palette_type,
'url': _tumblr_template.format(
'79263667140/sam-i-love-you-but-you-dont-know-what-youre')
},
'Mendl': {
'colors': [
(222, 141, 185), (184, 192, 246), (207, 147, 135), (92, 128, 204)
],
'type': _palette_type,
'url': _tumblr_template.format('79348206200/mendls-heaven')
},
'Margot1': {
'colors': [
(137, 119, 18), (243, 194, 164), (246, 159, 151), (254, 214, 140),
(98, 144, 117)
],
'type': _palette_type,
'url': _tumblr_template.format('79348364517/margot-takes-a-bath')
},
'Cavalcanti': {
'colors': [
(209, 170, 0), (8, 50, 19), (146, 148, 96), (111, 152, 121),
(132, 33, 17)
],
'type': _palette_type,
'url': _tumblr_template.format(
'79348553036/castello-cavalcanti-how-can-i-help')
},
'Moonrise2': {
'colors': [
(102, 124, 116), (181, 106, 39), (194, 186, 124), (31, 25, 23)
],
'type': _palette_type,
'url': _tumblr_template.format(
'79641731527/sam-why-do-you-always-use-binoculars-suzy-it')
},
'Margot2': {
'colors': [
(118, 139, 147), (188, 36, 15), (249, 236, 197), (212, 115, 41)
],
'type': _palette_type,
'url': _tumblr_template.format('79641785036/margot-takes-a-break')
},
'Moonrise3': {
'colors': [
(242, 218, 82), (197, 157, 0), (203, 203, 201), (27, 30, 20)
],
'type': _palette_type,
'url': _tumblr_template.format(
'79783357790/suzy-ive-always-wanted-to-be-an-orphan-most-of')
},
'GrandBudapest1': {
'colors': [
(238, 174, 101), (251, 79, 85), (72, 19, 19), (204, 95, 39)
],
'type': _palette_type,
'url': _tumblr_template.format('79784389334/the-grand-budapest-hotel')
},
'Moonrise4': {
'colors': [
(123, 135, 97), (193, 166, 46), (79, 143, 107), (59, 69, 60),
(159, 50, 8)
],
'type': _palette_type,
'url': _tumblr_template.format('79956897654/coming-soon')
},
'Zissou': {
'colors': [
(0, 153, 230), (18, 37, 90), (242, 56, 20), (223, 183, 139),
(182, 195, 197)
],
'type': _palette_type,
'url': _tumblr_template.format(
'79956949771/steve-zissou-dont-point-that-gun-at-him-hes-an')
},
'Royal1': {
'colors': [
(121, 164, 58), (242, 214, 175), (94, 72, 41), (24, 20, 1)
],
'type': _palette_type,
'url': _tumblr_template.format(
'79957796915/royal-o-reilly-tenenbaum-1932-2001')
},
'Darjeeling1': {
'colors': [
(158, 151, 151), (194, 142, 0), (131, 102, 89), (156, 90, 51)
],
'type': _palette_type,
'url': _tumblr_template.format(
'80149649946/jack-i-wonder-if-the-three-of-us-wouldve-been')
},
'FantasticFox1': {
'colors': [
(249, 219, 32), (147, 75, 78), (66, 23, 13), (194, 121, 34),
(226, 200, 167)
],
'type': _palette_type,
'url': _tumblr_template.format(
'80149872170/mrs-fox-you-know-you-really-are-fantastic-mr')
},
'Margot3': {
'colors': [
(135, 162, 164), (202, 160, 101), (214, 202, 191), (214, 160, 160)
],
'type': _palette_type,
'url': _tumblr_template.format(
'109473707895/etheline-raleigh-says-youve-been-spending-six')
},
'GrandBudapest2': {
'colors': [
(255, 166, 142), (251, 204, 183), (140, 17, 8), (41, 11, 4)
],
'type': _palette_type,
'url': _tumblr_template.format(
'109473911685/m-gustave-you-see-there-are-still-faint')
},
'Aquatic1': {
'colors': [
(52, 36, 25), (28, 64, 39), (241, 201, 14), (102, 88, 153),
(184, 147, 130)
],
'type': _palette_type,
'url': _tumblr_template.format(
'109568074320/steve-zissou-the-deeper-you-go-the-weirder-life')
},
'Darjeeling2': {
'colors': [
(213, 227, 216), (97, 138, 152), (249, 218, 149), (174, 75, 22),
(120, 112, 100)
],
'type': _palette_type,
'url': _tumblr_template.format('109980167015/peter-fuck-the-itinerary')
},
'FantasticFox2': {
'colors': [
(228, 191, 68), (198, 87, 66), (154, 208, 187), (51, 39, 55),
(171, 161, 141)
],
'type': _palette_type,
'url': _tumblr_template.format('110716093015/ash-should-we-dance')
},
'GrandBudapest3': {
'colors': [
(255, 220, 182), (37, 56, 69), (231, 173, 157), (102, 117, 110),
(139, 63, 49), (150, 109, 53)
],
'type': _palette_type,
'url': _tumblr_template.format(
'112305028860/m-gustave-mendls-is-the-best')
},
'Royal2': {
'colors': [
(194, 171, 186), (140, 59, 73), (182, 172, 166), (33, 32, 83),
(209, 211, 213)
],
'type': _palette_type,
'url': _tumblr_template.format(
'115124780615/royal-anybody-interested-in-grabbing-a-couple-of')
},
'Moonrise5': {
'colors': [
(223, 140, 144), (216, 210, 142), (245, 190, 37), (61, 74, 28),
(209, 48, 96), (168, 107, 76)
],
'type': _palette_type,
'url': _tumblr_template.format(
'116909186645/walt-bishop-our-daughters-been-abducted-by-one')
},
'GrandBudapest4': {
'colors': [
(186, 110, 0), (80, 32, 86), (255, 246, 187), (154, 127, 25),
(31, 18, 27)
],
'type': _palette_type,
'url': _tumblr_template.format(
'117849683385/concierge-and-how-long-will-you-be-staying-with')
},
'Moonrise6': {
'colors': [
(191, 81, 61), (201, 162, 150), (197, 193, 136), (123, 177, 145),
(217, 174, 48)
],
'type': _palette_type,
'url': _tumblr_template.format(
'118877161325/sam-im-not-that-strong-of-a-swimmer-so-i-wear-a')
},
'GrandBudapest5': {
'colors': [
(225, 146, 131), (140, 27, 76), (209, 147, 54), (231, 199, 190),
(51, 12, 0)
],
'type': _palette_type,
'url': _tumblr_template.format(
'122169507295/m-gustave-its-quite-a-thing-winning-the-loyalty')
},
'Aquatic2': {
'colors': [
(139, 156, 184), (233, 229, 65), (88, 159, 194), (160, 141, 94),
(189, 185, 206)
],
'type': _palette_type,
'url': _tumblr_template.format(
'125170837755/steve-zissou-please-dont-make-fun-of-me-i-just')
},
'Royal3': {
'colors': [
(252, 87, 108), (237, 126, 83), (226, 153, 139), (46, 23, 24),
(251, 214, 202)
],
'type': _palette_type,
'url': _tumblr_template.format(
'129921576355/royal-ive-always-been-considered-an-asshole-for')
},
'Moonrise7': {
'colors': [
(35, 35, 85), (97, 104, 96), (167, 91, 68), (145, 43, 41),
(255, 227, 143)
],
'type': _palette_type,
'url': _tumblr_template.format(
'137096576550/social-services-access-denied')
},
'Aquatic3': {
'colors': [
(214, 161, 66), (194, 128, 114), (200, 183, 161), (189, 68, 45),
(100, 84, 60)
],
'type': _palette_type,
'url': _tumblr_template.format(
'139482629630/ah-weve-never-made-great-husbands-have-we-of')
},
'Darjeeling3': {
'colors': [
(168, 171, 80), (255, 232, 61), (169, 211, 210), (36, 71, 125),
(90, 145, 124)
],
'type': _palette_type,
'url': _tumblr_template.format(
'143938510215/the-chief-steward-welcome-aboard')
},
'Darjeeling4': {
'colors': [
(116, 103, 104), (104, 71, 98), (128, 8, 6), (188, 132, 14),
(174, 89, 92)
],
'type': _palette_type,
'url': _tumblr_template.format(
'160334044570/i-wonder-if-the-three-of-us-wouldve-been-friends')
},
'IsleOfDogs1': {
'colors': [
(254, 197, 175), (174, 126, 113), (210, 103, 50), (50, 35, 35),
(24, 18, 19)
],
'type': _palette_type,
'url': _tumblr_template.format(
'172304342835/were-a-pack-of-scary-indestructible-alpha-dogs')
},
'IsleOfDogs2': {
'colors': [
(152, 108, 150), (138, 31, 31), (213, 171, 85), (14, 12, 12),
(220, 194, 201), (130, 114, 108)
],
'type': _palette_type,
'url': _tumblr_template.format(
'172586941620/be-advised-that-small-dogs-still-pose-a-threat-to')
},
'IsleOfDogs3': {
'colors': [
(229, 142, 167), (224, 193, 160), (30, 18, 99), (216, 177, 72)
],
'type': _palette_type,
'url': _tumblr_template.format(
'184134532240/tracy-walker-that-crook-hes-stealing-the')
},
}
_map_names = {}
for k in _palettes:
_map_names[k.lower()] = k
class WesAndersonMap(Palette):
"""
Representation of a color map with matplotlib compatible
views of the map.
Parameters
----------
name : str
map_type : str
colors : list
Colors as list of 0-255 RGB triplets.
url : str
URL on the web where this color map can be viewed.
Attributes
----------
name : str
type : str
number : int
Number of colors in color map.
colors : list
Colors as list of 0-255 RGB triplets.
hex_colors : list
mpl_colors : list
mpl_colormap : matplotlib LinearSegmentedColormap
wap_url : str
URL on the web where this color map can be viewed.
"""
def __init__(self, name, map_type, colors, url):
super(WesAndersonMap, self).__init__(name, map_type, colors)
self.url = url
def wap(self):
"""
View this color palette on the web.
Will open a new tab in your web browser.
"""
webbrowser.open_new_tab(self.url) # pragma: no cover
def print_maps():
"""
Print a list of Wes Anderson palettes.
"""
namelen = max(len(k) for k in _palettes)
fmt = '{0:' + str(namelen + 4) + '}{1:16}{2:}'
for k in sorted(_palettes.keys()):
print(fmt.format(k, _palettes[k]['type'], len(_palettes[k]['colors'])))
def get_map(name, reverse=False):
"""
Get a Wes Anderson palette by name.
Parameters
----------
name : str
Name of map. Use palettable.wesanderson.print_maps
to see available names.
reverse : bool, optional
If True reverse colors from their default order.
Returns
-------
palette : WesAndersonMap
"""
name = _map_names[name.lower()]
palette = _palettes[name]
if reverse:
name += '_r'
palette['colors'] = list(reversed(palette['colors']))
return WesAndersonMap(
name, palette['type'], palette['colors'], palette['url'])
def _get_all_maps():
"""
Returns a dictionary of all Wes Anderson palettes,
including reversed ones.
"""
fmt = '{0}_{1}'.format
d = dict(
(fmt(name, m.number), m)
for name, m in ((name, get_map(name)) for name in _palettes))
fmt = '{0}_{1}_r'.format
d.update(
dict(
(fmt(name, m.number), m)
for name, m in (
(name, get_map(name, reverse=True)) for name in _palettes)))
return d
palettable-3.3.0/palettable.egg-info/ 0000755 0000765 0000024 00000000000 13535037137 020550 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/palettable.egg-info/PKG-INFO 0000644 0000765 0000024 00000003650 13535037137 021651 0 ustar jiffyclub staff 0000000 0000000 Metadata-Version: 1.1
Name: palettable
Version: 3.3.0
Summary: Color palettes for Python
Home-page: https://jiffyclub.github.io/palettable/
Author: Matt Davis
Author-email: jiffyclub@gmail.com
License: UNKNOWN
Description: Palettable
==========
.. image:: https://travis-ci.org/jiffyclub/palettable.png?branch=master
:alt: Travis-CI
:target: https://travis-ci.org/jiffyclub/palettable
.. image:: https://coveralls.io/repos/jiffyclub/palettable/badge.png
:alt: Coveralls
:target: https://coveralls.io/r/jiffyclub/palettable
.. image:: https://img.shields.io/pypi/v/palettable.svg
:alt: PyPI
:target: https://pypi.python.org/pypi/palettable/
.. image:: https://img.shields.io/pypi/wheel/palettable.svg
:target: https://pypi.python.org/pypi/palettable/
:alt: Wheel Status
Color Palettes for Python
-------------------------
Palettable (formerly brewer2mpl) is a library of color palettes for Python.
It's written in pure Python with no dependencies, but it can supply color maps
for matplotlib. You can use Palettable to customize matplotlib plots or supply
colors for a web application.
For more information see the
`documentation `_.
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Scientific/Engineering :: Visualization
palettable-3.3.0/palettable.egg-info/SOURCES.txt 0000644 0000765 0000024 00000003506 13535037137 022440 0 ustar jiffyclub staff 0000000 0000000 MANIFEST.in
README.rst
ez_setup.py
license.txt
setup.cfg
setup.py
palettable/__init__.py
palettable/palette.py
palettable/utils.py
palettable.egg-info/PKG-INFO
palettable.egg-info/SOURCES.txt
palettable.egg-info/dependency_links.txt
palettable.egg-info/top_level.txt
palettable/cartocolors/__init__.py
palettable/cartocolors/cartocolorspalette.py
palettable/cartocolors/colormaps.py
palettable/cartocolors/diverging.py
palettable/cartocolors/qualitative.py
palettable/cartocolors/sequential.py
palettable/cmocean/__init__.py
palettable/cmocean/cmoceanpalette.py
palettable/cmocean/colormaps.py
palettable/cmocean/diverging.py
palettable/cmocean/sequential.py
palettable/colorbrewer/__init__.py
palettable/colorbrewer/colorbrewer.py
palettable/colorbrewer/diverging.py
palettable/colorbrewer/qualitative.py
palettable/colorbrewer/sequential.py
palettable/colorbrewer/data/colorbrewer_all_schemes.csv
palettable/colorbrewer/data/colorbrewer_all_schemes.json
palettable/colorbrewer/data/colorbrewer_licence.txt
palettable/colorbrewer/data/colorbrewer_schemes_csv_to_json.py
palettable/cubehelix/__init__.py
palettable/cubehelix/cubehelix.py
palettable/lightbartlein/__init__.py
palettable/lightbartlein/colordata.py
palettable/lightbartlein/diverging.py
palettable/lightbartlein/lightbartlein.py
palettable/lightbartlein/sequential.py
palettable/matplotlib/__init__.py
palettable/matplotlib/colormaps.py
palettable/matplotlib/matplotlib.py
palettable/mycarta/__init__.py
palettable/mycarta/colordata.py
palettable/mycarta/mycarta.py
palettable/scientific/__init__.py
palettable/scientific/colordata.py
palettable/scientific/diverging.py
palettable/scientific/scientific.py
palettable/scientific/sequential.py
palettable/tableau/__init__.py
palettable/tableau/tableau.py
palettable/wesanderson/__init__.py
palettable/wesanderson/wesanderson.py
test/test_installed.py palettable-3.3.0/palettable.egg-info/dependency_links.txt 0000644 0000765 0000024 00000000001 13535037137 024616 0 ustar jiffyclub staff 0000000 0000000
palettable-3.3.0/palettable.egg-info/top_level.txt 0000644 0000765 0000024 00000000013 13535037137 023274 0 ustar jiffyclub staff 0000000 0000000 palettable
palettable-3.3.0/setup.cfg 0000644 0000765 0000024 00000000103 13535037137 016554 0 ustar jiffyclub staff 0000000 0000000 [bdist_wheel]
universal = 1
[egg_info]
tag_build =
tag_date = 0
palettable-3.3.0/setup.py 0000644 0000765 0000024 00000002037 13535037046 016454 0 ustar jiffyclub staff 0000000 0000000 from ez_setup import use_setuptools
use_setuptools()
from setuptools import setup, find_packages
with open('README.rst', 'r') as f:
long_description = f.read()
setup(
name='palettable',
version='3.3.0',
description=(
'Color palettes for Python'),
long_description=long_description,
author='Matt Davis',
author_email='jiffyclub@gmail.com',
url='https://jiffyclub.github.io/palettable/',
packages=find_packages(exclude=["*.test"]),
package_data={'palettable.colorbrewer': ['data/colorbrewer*']},
classifiers=[
'License :: OSI Approved :: MIT License',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Topic :: Scientific/Engineering :: Visualization'])
palettable-3.3.0/test/ 0000755 0000765 0000024 00000000000 13535037137 015720 5 ustar jiffyclub staff 0000000 0000000 palettable-3.3.0/test/test_installed.py 0000644 0000765 0000024 00000002202 13152437502 021277 0 ustar jiffyclub staff 0000000 0000000 """
Test installed palettable to make sure everything is accessible.
"""
import palettable
from palettable.palette import Palette
def test_colorbrewer():
assert isinstance(palettable.colorbrewer.diverging.PuOr_6, Palette)
assert isinstance(palettable.colorbrewer.qualitative.Pastel1_9, Palette)
assert isinstance(palettable.colorbrewer.sequential.PuBuGn_9, Palette)
def test_cubehelix():
assert isinstance(palettable.cubehelix.classic_16, Palette)
def test_tableau():
assert isinstance(palettable.tableau.ColorBlind_10, Palette)
def test_wes_anderson():
assert isinstance(palettable.wesanderson.Aquatic1_5, Palette)
def test_matplotlib():
assert isinstance(palettable.matplotlib.Viridis_8, Palette)
def test_mycarta():
assert isinstance(palettable.mycarta.CubeYF_8, Palette)
def test_cmocean():
assert isinstance(palettable.cmocean.sequential.Amp_8, Palette)
assert isinstance(palettable.cmocean.diverging.Balance_8, Palette)
def test_cartocolors():
assert isinstance(palettable.cartocolors.sequential.Mint_7, Palette)
assert isinstance(palettable.cartocolors.diverging.Earth_7, Palette)