aboutsummaryrefslogtreecommitdiffstats
path: root/web/nms-public.gathering.org/old/speedometer/d3-master/lib
diff options
context:
space:
mode:
authorNicolai Tellefsen <niccofyren@gmail.com>2016-03-21 20:33:44 +0100
committerNicolai Tellefsen <niccofyren@gmail.com>2016-03-21 20:33:44 +0100
commit5ba657e0bca0e4970b08583f6dfc94bfae34741c (patch)
tree44ed77deecd40ca984aae4bfa1bb949cb87bf7a0 /web/nms-public.gathering.org/old/speedometer/d3-master/lib
parentd528cad67897dd2c3b98ec15a82868ac2764e2c7 (diff)
parent727e4ab31aa6d1a754711d4cd29dbcefae2e952a (diff)
Merge branch 'master' of https://github.com/tech-server/tgmanage
Diffstat (limited to 'web/nms-public.gathering.org/old/speedometer/d3-master/lib')
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/LICENSE38
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/colorbrewer.css1690
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/colorbrewer.js302
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/geographiclib/LICENSE23
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/penner/LICENSE31
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/polymaps/LICENSE28
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/protovis/LICENSE27
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/rhill-voronoi/LICENSE23
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/LICENSE26
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.js225
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.lin.js27
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.lin.min.js1
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.min.js1
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.stats.js720
-rw-r--r--web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.stats.min.js1
15 files changed, 3163 insertions, 0 deletions
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/LICENSE b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/LICENSE
new file mode 100644
index 0000000..2ac775d
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/LICENSE
@@ -0,0 +1,38 @@
+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.
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/colorbrewer.css b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/colorbrewer.css
new file mode 100644
index 0000000..faed650
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/colorbrewer.css
@@ -0,0 +1,1690 @@
+/* This product includes color specifications and designs developed by Cynthia Brewer (http://colorbrewer.org/). */
+.YlGn .q0-3{fill:rgb(247,252,185)}
+.YlGn .q1-3{fill:rgb(173,221,142)}
+.YlGn .q2-3{fill:rgb(49,163,84)}
+.YlGn .q0-4{fill:rgb(255,255,204)}
+.YlGn .q1-4{fill:rgb(194,230,153)}
+.YlGn .q2-4{fill:rgb(120,198,121)}
+.YlGn .q3-4{fill:rgb(35,132,67)}
+.YlGn .q0-5{fill:rgb(255,255,204)}
+.YlGn .q1-5{fill:rgb(194,230,153)}
+.YlGn .q2-5{fill:rgb(120,198,121)}
+.YlGn .q3-5{fill:rgb(49,163,84)}
+.YlGn .q4-5{fill:rgb(0,104,55)}
+.YlGn .q0-6{fill:rgb(255,255,204)}
+.YlGn .q1-6{fill:rgb(217,240,163)}
+.YlGn .q2-6{fill:rgb(173,221,142)}
+.YlGn .q3-6{fill:rgb(120,198,121)}
+.YlGn .q4-6{fill:rgb(49,163,84)}
+.YlGn .q5-6{fill:rgb(0,104,55)}
+.YlGn .q0-7{fill:rgb(255,255,204)}
+.YlGn .q1-7{fill:rgb(217,240,163)}
+.YlGn .q2-7{fill:rgb(173,221,142)}
+.YlGn .q3-7{fill:rgb(120,198,121)}
+.YlGn .q4-7{fill:rgb(65,171,93)}
+.YlGn .q5-7{fill:rgb(35,132,67)}
+.YlGn .q6-7{fill:rgb(0,90,50)}
+.YlGn .q0-8{fill:rgb(255,255,229)}
+.YlGn .q1-8{fill:rgb(247,252,185)}
+.YlGn .q2-8{fill:rgb(217,240,163)}
+.YlGn .q3-8{fill:rgb(173,221,142)}
+.YlGn .q4-8{fill:rgb(120,198,121)}
+.YlGn .q5-8{fill:rgb(65,171,93)}
+.YlGn .q6-8{fill:rgb(35,132,67)}
+.YlGn .q7-8{fill:rgb(0,90,50)}
+.YlGn .q0-9{fill:rgb(255,255,229)}
+.YlGn .q1-9{fill:rgb(247,252,185)}
+.YlGn .q2-9{fill:rgb(217,240,163)}
+.YlGn .q3-9{fill:rgb(173,221,142)}
+.YlGn .q4-9{fill:rgb(120,198,121)}
+.YlGn .q5-9{fill:rgb(65,171,93)}
+.YlGn .q6-9{fill:rgb(35,132,67)}
+.YlGn .q7-9{fill:rgb(0,104,55)}
+.YlGn .q8-9{fill:rgb(0,69,41)}
+.YlGnBu .q0-3{fill:rgb(237,248,177)}
+.YlGnBu .q1-3{fill:rgb(127,205,187)}
+.YlGnBu .q2-3{fill:rgb(44,127,184)}
+.YlGnBu .q0-4{fill:rgb(255,255,204)}
+.YlGnBu .q1-4{fill:rgb(161,218,180)}
+.YlGnBu .q2-4{fill:rgb(65,182,196)}
+.YlGnBu .q3-4{fill:rgb(34,94,168)}
+.YlGnBu .q0-5{fill:rgb(255,255,204)}
+.YlGnBu .q1-5{fill:rgb(161,218,180)}
+.YlGnBu .q2-5{fill:rgb(65,182,196)}
+.YlGnBu .q3-5{fill:rgb(44,127,184)}
+.YlGnBu .q4-5{fill:rgb(37,52,148)}
+.YlGnBu .q0-6{fill:rgb(255,255,204)}
+.YlGnBu .q1-6{fill:rgb(199,233,180)}
+.YlGnBu .q2-6{fill:rgb(127,205,187)}
+.YlGnBu .q3-6{fill:rgb(65,182,196)}
+.YlGnBu .q4-6{fill:rgb(44,127,184)}
+.YlGnBu .q5-6{fill:rgb(37,52,148)}
+.YlGnBu .q0-7{fill:rgb(255,255,204)}
+.YlGnBu .q1-7{fill:rgb(199,233,180)}
+.YlGnBu .q2-7{fill:rgb(127,205,187)}
+.YlGnBu .q3-7{fill:rgb(65,182,196)}
+.YlGnBu .q4-7{fill:rgb(29,145,192)}
+.YlGnBu .q5-7{fill:rgb(34,94,168)}
+.YlGnBu .q6-7{fill:rgb(12,44,132)}
+.YlGnBu .q0-8{fill:rgb(255,255,217)}
+.YlGnBu .q1-8{fill:rgb(237,248,177)}
+.YlGnBu .q2-8{fill:rgb(199,233,180)}
+.YlGnBu .q3-8{fill:rgb(127,205,187)}
+.YlGnBu .q4-8{fill:rgb(65,182,196)}
+.YlGnBu .q5-8{fill:rgb(29,145,192)}
+.YlGnBu .q6-8{fill:rgb(34,94,168)}
+.YlGnBu .q7-8{fill:rgb(12,44,132)}
+.YlGnBu .q0-9{fill:rgb(255,255,217)}
+.YlGnBu .q1-9{fill:rgb(237,248,177)}
+.YlGnBu .q2-9{fill:rgb(199,233,180)}
+.YlGnBu .q3-9{fill:rgb(127,205,187)}
+.YlGnBu .q4-9{fill:rgb(65,182,196)}
+.YlGnBu .q5-9{fill:rgb(29,145,192)}
+.YlGnBu .q6-9{fill:rgb(34,94,168)}
+.YlGnBu .q7-9{fill:rgb(37,52,148)}
+.YlGnBu .q8-9{fill:rgb(8,29,88)}
+.GnBu .q0-3{fill:rgb(224,243,219)}
+.GnBu .q1-3{fill:rgb(168,221,181)}
+.GnBu .q2-3{fill:rgb(67,162,202)}
+.GnBu .q0-4{fill:rgb(240,249,232)}
+.GnBu .q1-4{fill:rgb(186,228,188)}
+.GnBu .q2-4{fill:rgb(123,204,196)}
+.GnBu .q3-4{fill:rgb(43,140,190)}
+.GnBu .q0-5{fill:rgb(240,249,232)}
+.GnBu .q1-5{fill:rgb(186,228,188)}
+.GnBu .q2-5{fill:rgb(123,204,196)}
+.GnBu .q3-5{fill:rgb(67,162,202)}
+.GnBu .q4-5{fill:rgb(8,104,172)}
+.GnBu .q0-6{fill:rgb(240,249,232)}
+.GnBu .q1-6{fill:rgb(204,235,197)}
+.GnBu .q2-6{fill:rgb(168,221,181)}
+.GnBu .q3-6{fill:rgb(123,204,196)}
+.GnBu .q4-6{fill:rgb(67,162,202)}
+.GnBu .q5-6{fill:rgb(8,104,172)}
+.GnBu .q0-7{fill:rgb(240,249,232)}
+.GnBu .q1-7{fill:rgb(204,235,197)}
+.GnBu .q2-7{fill:rgb(168,221,181)}
+.GnBu .q3-7{fill:rgb(123,204,196)}
+.GnBu .q4-7{fill:rgb(78,179,211)}
+.GnBu .q5-7{fill:rgb(43,140,190)}
+.GnBu .q6-7{fill:rgb(8,88,158)}
+.GnBu .q0-8{fill:rgb(247,252,240)}
+.GnBu .q1-8{fill:rgb(224,243,219)}
+.GnBu .q2-8{fill:rgb(204,235,197)}
+.GnBu .q3-8{fill:rgb(168,221,181)}
+.GnBu .q4-8{fill:rgb(123,204,196)}
+.GnBu .q5-8{fill:rgb(78,179,211)}
+.GnBu .q6-8{fill:rgb(43,140,190)}
+.GnBu .q7-8{fill:rgb(8,88,158)}
+.GnBu .q0-9{fill:rgb(247,252,240)}
+.GnBu .q1-9{fill:rgb(224,243,219)}
+.GnBu .q2-9{fill:rgb(204,235,197)}
+.GnBu .q3-9{fill:rgb(168,221,181)}
+.GnBu .q4-9{fill:rgb(123,204,196)}
+.GnBu .q5-9{fill:rgb(78,179,211)}
+.GnBu .q6-9{fill:rgb(43,140,190)}
+.GnBu .q7-9{fill:rgb(8,104,172)}
+.GnBu .q8-9{fill:rgb(8,64,129)}
+.BuGn .q0-3{fill:rgb(229,245,249)}
+.BuGn .q1-3{fill:rgb(153,216,201)}
+.BuGn .q2-3{fill:rgb(44,162,95)}
+.BuGn .q0-4{fill:rgb(237,248,251)}
+.BuGn .q1-4{fill:rgb(178,226,226)}
+.BuGn .q2-4{fill:rgb(102,194,164)}
+.BuGn .q3-4{fill:rgb(35,139,69)}
+.BuGn .q0-5{fill:rgb(237,248,251)}
+.BuGn .q1-5{fill:rgb(178,226,226)}
+.BuGn .q2-5{fill:rgb(102,194,164)}
+.BuGn .q3-5{fill:rgb(44,162,95)}
+.BuGn .q4-5{fill:rgb(0,109,44)}
+.BuGn .q0-6{fill:rgb(237,248,251)}
+.BuGn .q1-6{fill:rgb(204,236,230)}
+.BuGn .q2-6{fill:rgb(153,216,201)}
+.BuGn .q3-6{fill:rgb(102,194,164)}
+.BuGn .q4-6{fill:rgb(44,162,95)}
+.BuGn .q5-6{fill:rgb(0,109,44)}
+.BuGn .q0-7{fill:rgb(237,248,251)}
+.BuGn .q1-7{fill:rgb(204,236,230)}
+.BuGn .q2-7{fill:rgb(153,216,201)}
+.BuGn .q3-7{fill:rgb(102,194,164)}
+.BuGn .q4-7{fill:rgb(65,174,118)}
+.BuGn .q5-7{fill:rgb(35,139,69)}
+.BuGn .q6-7{fill:rgb(0,88,36)}
+.BuGn .q0-8{fill:rgb(247,252,253)}
+.BuGn .q1-8{fill:rgb(229,245,249)}
+.BuGn .q2-8{fill:rgb(204,236,230)}
+.BuGn .q3-8{fill:rgb(153,216,201)}
+.BuGn .q4-8{fill:rgb(102,194,164)}
+.BuGn .q5-8{fill:rgb(65,174,118)}
+.BuGn .q6-8{fill:rgb(35,139,69)}
+.BuGn .q7-8{fill:rgb(0,88,36)}
+.BuGn .q0-9{fill:rgb(247,252,253)}
+.BuGn .q1-9{fill:rgb(229,245,249)}
+.BuGn .q2-9{fill:rgb(204,236,230)}
+.BuGn .q3-9{fill:rgb(153,216,201)}
+.BuGn .q4-9{fill:rgb(102,194,164)}
+.BuGn .q5-9{fill:rgb(65,174,118)}
+.BuGn .q6-9{fill:rgb(35,139,69)}
+.BuGn .q7-9{fill:rgb(0,109,44)}
+.BuGn .q8-9{fill:rgb(0,68,27)}
+.PuBuGn .q0-3{fill:rgb(236,226,240)}
+.PuBuGn .q1-3{fill:rgb(166,189,219)}
+.PuBuGn .q2-3{fill:rgb(28,144,153)}
+.PuBuGn .q0-4{fill:rgb(246,239,247)}
+.PuBuGn .q1-4{fill:rgb(189,201,225)}
+.PuBuGn .q2-4{fill:rgb(103,169,207)}
+.PuBuGn .q3-4{fill:rgb(2,129,138)}
+.PuBuGn .q0-5{fill:rgb(246,239,247)}
+.PuBuGn .q1-5{fill:rgb(189,201,225)}
+.PuBuGn .q2-5{fill:rgb(103,169,207)}
+.PuBuGn .q3-5{fill:rgb(28,144,153)}
+.PuBuGn .q4-5{fill:rgb(1,108,89)}
+.PuBuGn .q0-6{fill:rgb(246,239,247)}
+.PuBuGn .q1-6{fill:rgb(208,209,230)}
+.PuBuGn .q2-6{fill:rgb(166,189,219)}
+.PuBuGn .q3-6{fill:rgb(103,169,207)}
+.PuBuGn .q4-6{fill:rgb(28,144,153)}
+.PuBuGn .q5-6{fill:rgb(1,108,89)}
+.PuBuGn .q0-7{fill:rgb(246,239,247)}
+.PuBuGn .q1-7{fill:rgb(208,209,230)}
+.PuBuGn .q2-7{fill:rgb(166,189,219)}
+.PuBuGn .q3-7{fill:rgb(103,169,207)}
+.PuBuGn .q4-7{fill:rgb(54,144,192)}
+.PuBuGn .q5-7{fill:rgb(2,129,138)}
+.PuBuGn .q6-7{fill:rgb(1,100,80)}
+.PuBuGn .q0-8{fill:rgb(255,247,251)}
+.PuBuGn .q1-8{fill:rgb(236,226,240)}
+.PuBuGn .q2-8{fill:rgb(208,209,230)}
+.PuBuGn .q3-8{fill:rgb(166,189,219)}
+.PuBuGn .q4-8{fill:rgb(103,169,207)}
+.PuBuGn .q5-8{fill:rgb(54,144,192)}
+.PuBuGn .q6-8{fill:rgb(2,129,138)}
+.PuBuGn .q7-8{fill:rgb(1,100,80)}
+.PuBuGn .q0-9{fill:rgb(255,247,251)}
+.PuBuGn .q1-9{fill:rgb(236,226,240)}
+.PuBuGn .q2-9{fill:rgb(208,209,230)}
+.PuBuGn .q3-9{fill:rgb(166,189,219)}
+.PuBuGn .q4-9{fill:rgb(103,169,207)}
+.PuBuGn .q5-9{fill:rgb(54,144,192)}
+.PuBuGn .q6-9{fill:rgb(2,129,138)}
+.PuBuGn .q7-9{fill:rgb(1,108,89)}
+.PuBuGn .q8-9{fill:rgb(1,70,54)}
+.PuBu .q0-3{fill:rgb(236,231,242)}
+.PuBu .q1-3{fill:rgb(166,189,219)}
+.PuBu .q2-3{fill:rgb(43,140,190)}
+.PuBu .q0-4{fill:rgb(241,238,246)}
+.PuBu .q1-4{fill:rgb(189,201,225)}
+.PuBu .q2-4{fill:rgb(116,169,207)}
+.PuBu .q3-4{fill:rgb(5,112,176)}
+.PuBu .q0-5{fill:rgb(241,238,246)}
+.PuBu .q1-5{fill:rgb(189,201,225)}
+.PuBu .q2-5{fill:rgb(116,169,207)}
+.PuBu .q3-5{fill:rgb(43,140,190)}
+.PuBu .q4-5{fill:rgb(4,90,141)}
+.PuBu .q0-6{fill:rgb(241,238,246)}
+.PuBu .q1-6{fill:rgb(208,209,230)}
+.PuBu .q2-6{fill:rgb(166,189,219)}
+.PuBu .q3-6{fill:rgb(116,169,207)}
+.PuBu .q4-6{fill:rgb(43,140,190)}
+.PuBu .q5-6{fill:rgb(4,90,141)}
+.PuBu .q0-7{fill:rgb(241,238,246)}
+.PuBu .q1-7{fill:rgb(208,209,230)}
+.PuBu .q2-7{fill:rgb(166,189,219)}
+.PuBu .q3-7{fill:rgb(116,169,207)}
+.PuBu .q4-7{fill:rgb(54,144,192)}
+.PuBu .q5-7{fill:rgb(5,112,176)}
+.PuBu .q6-7{fill:rgb(3,78,123)}
+.PuBu .q0-8{fill:rgb(255,247,251)}
+.PuBu .q1-8{fill:rgb(236,231,242)}
+.PuBu .q2-8{fill:rgb(208,209,230)}
+.PuBu .q3-8{fill:rgb(166,189,219)}
+.PuBu .q4-8{fill:rgb(116,169,207)}
+.PuBu .q5-8{fill:rgb(54,144,192)}
+.PuBu .q6-8{fill:rgb(5,112,176)}
+.PuBu .q7-8{fill:rgb(3,78,123)}
+.PuBu .q0-9{fill:rgb(255,247,251)}
+.PuBu .q1-9{fill:rgb(236,231,242)}
+.PuBu .q2-9{fill:rgb(208,209,230)}
+.PuBu .q3-9{fill:rgb(166,189,219)}
+.PuBu .q4-9{fill:rgb(116,169,207)}
+.PuBu .q5-9{fill:rgb(54,144,192)}
+.PuBu .q6-9{fill:rgb(5,112,176)}
+.PuBu .q7-9{fill:rgb(4,90,141)}
+.PuBu .q8-9{fill:rgb(2,56,88)}
+.BuPu .q0-3{fill:rgb(224,236,244)}
+.BuPu .q1-3{fill:rgb(158,188,218)}
+.BuPu .q2-3{fill:rgb(136,86,167)}
+.BuPu .q0-4{fill:rgb(237,248,251)}
+.BuPu .q1-4{fill:rgb(179,205,227)}
+.BuPu .q2-4{fill:rgb(140,150,198)}
+.BuPu .q3-4{fill:rgb(136,65,157)}
+.BuPu .q0-5{fill:rgb(237,248,251)}
+.BuPu .q1-5{fill:rgb(179,205,227)}
+.BuPu .q2-5{fill:rgb(140,150,198)}
+.BuPu .q3-5{fill:rgb(136,86,167)}
+.BuPu .q4-5{fill:rgb(129,15,124)}
+.BuPu .q0-6{fill:rgb(237,248,251)}
+.BuPu .q1-6{fill:rgb(191,211,230)}
+.BuPu .q2-6{fill:rgb(158,188,218)}
+.BuPu .q3-6{fill:rgb(140,150,198)}
+.BuPu .q4-6{fill:rgb(136,86,167)}
+.BuPu .q5-6{fill:rgb(129,15,124)}
+.BuPu .q0-7{fill:rgb(237,248,251)}
+.BuPu .q1-7{fill:rgb(191,211,230)}
+.BuPu .q2-7{fill:rgb(158,188,218)}
+.BuPu .q3-7{fill:rgb(140,150,198)}
+.BuPu .q4-7{fill:rgb(140,107,177)}
+.BuPu .q5-7{fill:rgb(136,65,157)}
+.BuPu .q6-7{fill:rgb(110,1,107)}
+.BuPu .q0-8{fill:rgb(247,252,253)}
+.BuPu .q1-8{fill:rgb(224,236,244)}
+.BuPu .q2-8{fill:rgb(191,211,230)}
+.BuPu .q3-8{fill:rgb(158,188,218)}
+.BuPu .q4-8{fill:rgb(140,150,198)}
+.BuPu .q5-8{fill:rgb(140,107,177)}
+.BuPu .q6-8{fill:rgb(136,65,157)}
+.BuPu .q7-8{fill:rgb(110,1,107)}
+.BuPu .q0-9{fill:rgb(247,252,253)}
+.BuPu .q1-9{fill:rgb(224,236,244)}
+.BuPu .q2-9{fill:rgb(191,211,230)}
+.BuPu .q3-9{fill:rgb(158,188,218)}
+.BuPu .q4-9{fill:rgb(140,150,198)}
+.BuPu .q5-9{fill:rgb(140,107,177)}
+.BuPu .q6-9{fill:rgb(136,65,157)}
+.BuPu .q7-9{fill:rgb(129,15,124)}
+.BuPu .q8-9{fill:rgb(77,0,75)}
+.RdPu .q0-3{fill:rgb(253,224,221)}
+.RdPu .q1-3{fill:rgb(250,159,181)}
+.RdPu .q2-3{fill:rgb(197,27,138)}
+.RdPu .q0-4{fill:rgb(254,235,226)}
+.RdPu .q1-4{fill:rgb(251,180,185)}
+.RdPu .q2-4{fill:rgb(247,104,161)}
+.RdPu .q3-4{fill:rgb(174,1,126)}
+.RdPu .q0-5{fill:rgb(254,235,226)}
+.RdPu .q1-5{fill:rgb(251,180,185)}
+.RdPu .q2-5{fill:rgb(247,104,161)}
+.RdPu .q3-5{fill:rgb(197,27,138)}
+.RdPu .q4-5{fill:rgb(122,1,119)}
+.RdPu .q0-6{fill:rgb(254,235,226)}
+.RdPu .q1-6{fill:rgb(252,197,192)}
+.RdPu .q2-6{fill:rgb(250,159,181)}
+.RdPu .q3-6{fill:rgb(247,104,161)}
+.RdPu .q4-6{fill:rgb(197,27,138)}
+.RdPu .q5-6{fill:rgb(122,1,119)}
+.RdPu .q0-7{fill:rgb(254,235,226)}
+.RdPu .q1-7{fill:rgb(252,197,192)}
+.RdPu .q2-7{fill:rgb(250,159,181)}
+.RdPu .q3-7{fill:rgb(247,104,161)}
+.RdPu .q4-7{fill:rgb(221,52,151)}
+.RdPu .q5-7{fill:rgb(174,1,126)}
+.RdPu .q6-7{fill:rgb(122,1,119)}
+.RdPu .q0-8{fill:rgb(255,247,243)}
+.RdPu .q1-8{fill:rgb(253,224,221)}
+.RdPu .q2-8{fill:rgb(252,197,192)}
+.RdPu .q3-8{fill:rgb(250,159,181)}
+.RdPu .q4-8{fill:rgb(247,104,161)}
+.RdPu .q5-8{fill:rgb(221,52,151)}
+.RdPu .q6-8{fill:rgb(174,1,126)}
+.RdPu .q7-8{fill:rgb(122,1,119)}
+.RdPu .q0-9{fill:rgb(255,247,243)}
+.RdPu .q1-9{fill:rgb(253,224,221)}
+.RdPu .q2-9{fill:rgb(252,197,192)}
+.RdPu .q3-9{fill:rgb(250,159,181)}
+.RdPu .q4-9{fill:rgb(247,104,161)}
+.RdPu .q5-9{fill:rgb(221,52,151)}
+.RdPu .q6-9{fill:rgb(174,1,126)}
+.RdPu .q7-9{fill:rgb(122,1,119)}
+.RdPu .q8-9{fill:rgb(73,0,106)}
+.PuRd .q0-3{fill:rgb(231,225,239)}
+.PuRd .q1-3{fill:rgb(201,148,199)}
+.PuRd .q2-3{fill:rgb(221,28,119)}
+.PuRd .q0-4{fill:rgb(241,238,246)}
+.PuRd .q1-4{fill:rgb(215,181,216)}
+.PuRd .q2-4{fill:rgb(223,101,176)}
+.PuRd .q3-4{fill:rgb(206,18,86)}
+.PuRd .q0-5{fill:rgb(241,238,246)}
+.PuRd .q1-5{fill:rgb(215,181,216)}
+.PuRd .q2-5{fill:rgb(223,101,176)}
+.PuRd .q3-5{fill:rgb(221,28,119)}
+.PuRd .q4-5{fill:rgb(152,0,67)}
+.PuRd .q0-6{fill:rgb(241,238,246)}
+.PuRd .q1-6{fill:rgb(212,185,218)}
+.PuRd .q2-6{fill:rgb(201,148,199)}
+.PuRd .q3-6{fill:rgb(223,101,176)}
+.PuRd .q4-6{fill:rgb(221,28,119)}
+.PuRd .q5-6{fill:rgb(152,0,67)}
+.PuRd .q0-7{fill:rgb(241,238,246)}
+.PuRd .q1-7{fill:rgb(212,185,218)}
+.PuRd .q2-7{fill:rgb(201,148,199)}
+.PuRd .q3-7{fill:rgb(223,101,176)}
+.PuRd .q4-7{fill:rgb(231,41,138)}
+.PuRd .q5-7{fill:rgb(206,18,86)}
+.PuRd .q6-7{fill:rgb(145,0,63)}
+.PuRd .q0-8{fill:rgb(247,244,249)}
+.PuRd .q1-8{fill:rgb(231,225,239)}
+.PuRd .q2-8{fill:rgb(212,185,218)}
+.PuRd .q3-8{fill:rgb(201,148,199)}
+.PuRd .q4-8{fill:rgb(223,101,176)}
+.PuRd .q5-8{fill:rgb(231,41,138)}
+.PuRd .q6-8{fill:rgb(206,18,86)}
+.PuRd .q7-8{fill:rgb(145,0,63)}
+.PuRd .q0-9{fill:rgb(247,244,249)}
+.PuRd .q1-9{fill:rgb(231,225,239)}
+.PuRd .q2-9{fill:rgb(212,185,218)}
+.PuRd .q3-9{fill:rgb(201,148,199)}
+.PuRd .q4-9{fill:rgb(223,101,176)}
+.PuRd .q5-9{fill:rgb(231,41,138)}
+.PuRd .q6-9{fill:rgb(206,18,86)}
+.PuRd .q7-9{fill:rgb(152,0,67)}
+.PuRd .q8-9{fill:rgb(103,0,31)}
+.OrRd .q0-3{fill:rgb(254,232,200)}
+.OrRd .q1-3{fill:rgb(253,187,132)}
+.OrRd .q2-3{fill:rgb(227,74,51)}
+.OrRd .q0-4{fill:rgb(254,240,217)}
+.OrRd .q1-4{fill:rgb(253,204,138)}
+.OrRd .q2-4{fill:rgb(252,141,89)}
+.OrRd .q3-4{fill:rgb(215,48,31)}
+.OrRd .q0-5{fill:rgb(254,240,217)}
+.OrRd .q1-5{fill:rgb(253,204,138)}
+.OrRd .q2-5{fill:rgb(252,141,89)}
+.OrRd .q3-5{fill:rgb(227,74,51)}
+.OrRd .q4-5{fill:rgb(179,0,0)}
+.OrRd .q0-6{fill:rgb(254,240,217)}
+.OrRd .q1-6{fill:rgb(253,212,158)}
+.OrRd .q2-6{fill:rgb(253,187,132)}
+.OrRd .q3-6{fill:rgb(252,141,89)}
+.OrRd .q4-6{fill:rgb(227,74,51)}
+.OrRd .q5-6{fill:rgb(179,0,0)}
+.OrRd .q0-7{fill:rgb(254,240,217)}
+.OrRd .q1-7{fill:rgb(253,212,158)}
+.OrRd .q2-7{fill:rgb(253,187,132)}
+.OrRd .q3-7{fill:rgb(252,141,89)}
+.OrRd .q4-7{fill:rgb(239,101,72)}
+.OrRd .q5-7{fill:rgb(215,48,31)}
+.OrRd .q6-7{fill:rgb(153,0,0)}
+.OrRd .q0-8{fill:rgb(255,247,236)}
+.OrRd .q1-8{fill:rgb(254,232,200)}
+.OrRd .q2-8{fill:rgb(253,212,158)}
+.OrRd .q3-8{fill:rgb(253,187,132)}
+.OrRd .q4-8{fill:rgb(252,141,89)}
+.OrRd .q5-8{fill:rgb(239,101,72)}
+.OrRd .q6-8{fill:rgb(215,48,31)}
+.OrRd .q7-8{fill:rgb(153,0,0)}
+.OrRd .q0-9{fill:rgb(255,247,236)}
+.OrRd .q1-9{fill:rgb(254,232,200)}
+.OrRd .q2-9{fill:rgb(253,212,158)}
+.OrRd .q3-9{fill:rgb(253,187,132)}
+.OrRd .q4-9{fill:rgb(252,141,89)}
+.OrRd .q5-9{fill:rgb(239,101,72)}
+.OrRd .q6-9{fill:rgb(215,48,31)}
+.OrRd .q7-9{fill:rgb(179,0,0)}
+.OrRd .q8-9{fill:rgb(127,0,0)}
+.YlOrRd .q0-3{fill:rgb(255,237,160)}
+.YlOrRd .q1-3{fill:rgb(254,178,76)}
+.YlOrRd .q2-3{fill:rgb(240,59,32)}
+.YlOrRd .q0-4{fill:rgb(255,255,178)}
+.YlOrRd .q1-4{fill:rgb(254,204,92)}
+.YlOrRd .q2-4{fill:rgb(253,141,60)}
+.YlOrRd .q3-4{fill:rgb(227,26,28)}
+.YlOrRd .q0-5{fill:rgb(255,255,178)}
+.YlOrRd .q1-5{fill:rgb(254,204,92)}
+.YlOrRd .q2-5{fill:rgb(253,141,60)}
+.YlOrRd .q3-5{fill:rgb(240,59,32)}
+.YlOrRd .q4-5{fill:rgb(189,0,38)}
+.YlOrRd .q0-6{fill:rgb(255,255,178)}
+.YlOrRd .q1-6{fill:rgb(254,217,118)}
+.YlOrRd .q2-6{fill:rgb(254,178,76)}
+.YlOrRd .q3-6{fill:rgb(253,141,60)}
+.YlOrRd .q4-6{fill:rgb(240,59,32)}
+.YlOrRd .q5-6{fill:rgb(189,0,38)}
+.YlOrRd .q0-7{fill:rgb(255,255,178)}
+.YlOrRd .q1-7{fill:rgb(254,217,118)}
+.YlOrRd .q2-7{fill:rgb(254,178,76)}
+.YlOrRd .q3-7{fill:rgb(253,141,60)}
+.YlOrRd .q4-7{fill:rgb(252,78,42)}
+.YlOrRd .q5-7{fill:rgb(227,26,28)}
+.YlOrRd .q6-7{fill:rgb(177,0,38)}
+.YlOrRd .q0-8{fill:rgb(255,255,204)}
+.YlOrRd .q1-8{fill:rgb(255,237,160)}
+.YlOrRd .q2-8{fill:rgb(254,217,118)}
+.YlOrRd .q3-8{fill:rgb(254,178,76)}
+.YlOrRd .q4-8{fill:rgb(253,141,60)}
+.YlOrRd .q5-8{fill:rgb(252,78,42)}
+.YlOrRd .q6-8{fill:rgb(227,26,28)}
+.YlOrRd .q7-8{fill:rgb(177,0,38)}
+.YlOrRd .q0-9{fill:rgb(255,255,204)}
+.YlOrRd .q1-9{fill:rgb(255,237,160)}
+.YlOrRd .q2-9{fill:rgb(254,217,118)}
+.YlOrRd .q3-9{fill:rgb(254,178,76)}
+.YlOrRd .q4-9{fill:rgb(253,141,60)}
+.YlOrRd .q5-9{fill:rgb(252,78,42)}
+.YlOrRd .q6-9{fill:rgb(227,26,28)}
+.YlOrRd .q7-9{fill:rgb(189,0,38)}
+.YlOrRd .q8-9{fill:rgb(128,0,38)}
+.YlOrBr .q0-3{fill:rgb(255,247,188)}
+.YlOrBr .q1-3{fill:rgb(254,196,79)}
+.YlOrBr .q2-3{fill:rgb(217,95,14)}
+.YlOrBr .q0-4{fill:rgb(255,255,212)}
+.YlOrBr .q1-4{fill:rgb(254,217,142)}
+.YlOrBr .q2-4{fill:rgb(254,153,41)}
+.YlOrBr .q3-4{fill:rgb(204,76,2)}
+.YlOrBr .q0-5{fill:rgb(255,255,212)}
+.YlOrBr .q1-5{fill:rgb(254,217,142)}
+.YlOrBr .q2-5{fill:rgb(254,153,41)}
+.YlOrBr .q3-5{fill:rgb(217,95,14)}
+.YlOrBr .q4-5{fill:rgb(153,52,4)}
+.YlOrBr .q0-6{fill:rgb(255,255,212)}
+.YlOrBr .q1-6{fill:rgb(254,227,145)}
+.YlOrBr .q2-6{fill:rgb(254,196,79)}
+.YlOrBr .q3-6{fill:rgb(254,153,41)}
+.YlOrBr .q4-6{fill:rgb(217,95,14)}
+.YlOrBr .q5-6{fill:rgb(153,52,4)}
+.YlOrBr .q0-7{fill:rgb(255,255,212)}
+.YlOrBr .q1-7{fill:rgb(254,227,145)}
+.YlOrBr .q2-7{fill:rgb(254,196,79)}
+.YlOrBr .q3-7{fill:rgb(254,153,41)}
+.YlOrBr .q4-7{fill:rgb(236,112,20)}
+.YlOrBr .q5-7{fill:rgb(204,76,2)}
+.YlOrBr .q6-7{fill:rgb(140,45,4)}
+.YlOrBr .q0-8{fill:rgb(255,255,229)}
+.YlOrBr .q1-8{fill:rgb(255,247,188)}
+.YlOrBr .q2-8{fill:rgb(254,227,145)}
+.YlOrBr .q3-8{fill:rgb(254,196,79)}
+.YlOrBr .q4-8{fill:rgb(254,153,41)}
+.YlOrBr .q5-8{fill:rgb(236,112,20)}
+.YlOrBr .q6-8{fill:rgb(204,76,2)}
+.YlOrBr .q7-8{fill:rgb(140,45,4)}
+.YlOrBr .q0-9{fill:rgb(255,255,229)}
+.YlOrBr .q1-9{fill:rgb(255,247,188)}
+.YlOrBr .q2-9{fill:rgb(254,227,145)}
+.YlOrBr .q3-9{fill:rgb(254,196,79)}
+.YlOrBr .q4-9{fill:rgb(254,153,41)}
+.YlOrBr .q5-9{fill:rgb(236,112,20)}
+.YlOrBr .q6-9{fill:rgb(204,76,2)}
+.YlOrBr .q7-9{fill:rgb(153,52,4)}
+.YlOrBr .q8-9{fill:rgb(102,37,6)}
+.Purples .q0-3{fill:rgb(239,237,245)}
+.Purples .q1-3{fill:rgb(188,189,220)}
+.Purples .q2-3{fill:rgb(117,107,177)}
+.Purples .q0-4{fill:rgb(242,240,247)}
+.Purples .q1-4{fill:rgb(203,201,226)}
+.Purples .q2-4{fill:rgb(158,154,200)}
+.Purples .q3-4{fill:rgb(106,81,163)}
+.Purples .q0-5{fill:rgb(242,240,247)}
+.Purples .q1-5{fill:rgb(203,201,226)}
+.Purples .q2-5{fill:rgb(158,154,200)}
+.Purples .q3-5{fill:rgb(117,107,177)}
+.Purples .q4-5{fill:rgb(84,39,143)}
+.Purples .q0-6{fill:rgb(242,240,247)}
+.Purples .q1-6{fill:rgb(218,218,235)}
+.Purples .q2-6{fill:rgb(188,189,220)}
+.Purples .q3-6{fill:rgb(158,154,200)}
+.Purples .q4-6{fill:rgb(117,107,177)}
+.Purples .q5-6{fill:rgb(84,39,143)}
+.Purples .q0-7{fill:rgb(242,240,247)}
+.Purples .q1-7{fill:rgb(218,218,235)}
+.Purples .q2-7{fill:rgb(188,189,220)}
+.Purples .q3-7{fill:rgb(158,154,200)}
+.Purples .q4-7{fill:rgb(128,125,186)}
+.Purples .q5-7{fill:rgb(106,81,163)}
+.Purples .q6-7{fill:rgb(74,20,134)}
+.Purples .q0-8{fill:rgb(252,251,253)}
+.Purples .q1-8{fill:rgb(239,237,245)}
+.Purples .q2-8{fill:rgb(218,218,235)}
+.Purples .q3-8{fill:rgb(188,189,220)}
+.Purples .q4-8{fill:rgb(158,154,200)}
+.Purples .q5-8{fill:rgb(128,125,186)}
+.Purples .q6-8{fill:rgb(106,81,163)}
+.Purples .q7-8{fill:rgb(74,20,134)}
+.Purples .q0-9{fill:rgb(252,251,253)}
+.Purples .q1-9{fill:rgb(239,237,245)}
+.Purples .q2-9{fill:rgb(218,218,235)}
+.Purples .q3-9{fill:rgb(188,189,220)}
+.Purples .q4-9{fill:rgb(158,154,200)}
+.Purples .q5-9{fill:rgb(128,125,186)}
+.Purples .q6-9{fill:rgb(106,81,163)}
+.Purples .q7-9{fill:rgb(84,39,143)}
+.Purples .q8-9{fill:rgb(63,0,125)}
+.Blues .q0-3{fill:rgb(222,235,247)}
+.Blues .q1-3{fill:rgb(158,202,225)}
+.Blues .q2-3{fill:rgb(49,130,189)}
+.Blues .q0-4{fill:rgb(239,243,255)}
+.Blues .q1-4{fill:rgb(189,215,231)}
+.Blues .q2-4{fill:rgb(107,174,214)}
+.Blues .q3-4{fill:rgb(33,113,181)}
+.Blues .q0-5{fill:rgb(239,243,255)}
+.Blues .q1-5{fill:rgb(189,215,231)}
+.Blues .q2-5{fill:rgb(107,174,214)}
+.Blues .q3-5{fill:rgb(49,130,189)}
+.Blues .q4-5{fill:rgb(8,81,156)}
+.Blues .q0-6{fill:rgb(239,243,255)}
+.Blues .q1-6{fill:rgb(198,219,239)}
+.Blues .q2-6{fill:rgb(158,202,225)}
+.Blues .q3-6{fill:rgb(107,174,214)}
+.Blues .q4-6{fill:rgb(49,130,189)}
+.Blues .q5-6{fill:rgb(8,81,156)}
+.Blues .q0-7{fill:rgb(239,243,255)}
+.Blues .q1-7{fill:rgb(198,219,239)}
+.Blues .q2-7{fill:rgb(158,202,225)}
+.Blues .q3-7{fill:rgb(107,174,214)}
+.Blues .q4-7{fill:rgb(66,146,198)}
+.Blues .q5-7{fill:rgb(33,113,181)}
+.Blues .q6-7{fill:rgb(8,69,148)}
+.Blues .q0-8{fill:rgb(247,251,255)}
+.Blues .q1-8{fill:rgb(222,235,247)}
+.Blues .q2-8{fill:rgb(198,219,239)}
+.Blues .q3-8{fill:rgb(158,202,225)}
+.Blues .q4-8{fill:rgb(107,174,214)}
+.Blues .q5-8{fill:rgb(66,146,198)}
+.Blues .q6-8{fill:rgb(33,113,181)}
+.Blues .q7-8{fill:rgb(8,69,148)}
+.Blues .q0-9{fill:rgb(247,251,255)}
+.Blues .q1-9{fill:rgb(222,235,247)}
+.Blues .q2-9{fill:rgb(198,219,239)}
+.Blues .q3-9{fill:rgb(158,202,225)}
+.Blues .q4-9{fill:rgb(107,174,214)}
+.Blues .q5-9{fill:rgb(66,146,198)}
+.Blues .q6-9{fill:rgb(33,113,181)}
+.Blues .q7-9{fill:rgb(8,81,156)}
+.Blues .q8-9{fill:rgb(8,48,107)}
+.Greens .q0-3{fill:rgb(229,245,224)}
+.Greens .q1-3{fill:rgb(161,217,155)}
+.Greens .q2-3{fill:rgb(49,163,84)}
+.Greens .q0-4{fill:rgb(237,248,233)}
+.Greens .q1-4{fill:rgb(186,228,179)}
+.Greens .q2-4{fill:rgb(116,196,118)}
+.Greens .q3-4{fill:rgb(35,139,69)}
+.Greens .q0-5{fill:rgb(237,248,233)}
+.Greens .q1-5{fill:rgb(186,228,179)}
+.Greens .q2-5{fill:rgb(116,196,118)}
+.Greens .q3-5{fill:rgb(49,163,84)}
+.Greens .q4-5{fill:rgb(0,109,44)}
+.Greens .q0-6{fill:rgb(237,248,233)}
+.Greens .q1-6{fill:rgb(199,233,192)}
+.Greens .q2-6{fill:rgb(161,217,155)}
+.Greens .q3-6{fill:rgb(116,196,118)}
+.Greens .q4-6{fill:rgb(49,163,84)}
+.Greens .q5-6{fill:rgb(0,109,44)}
+.Greens .q0-7{fill:rgb(237,248,233)}
+.Greens .q1-7{fill:rgb(199,233,192)}
+.Greens .q2-7{fill:rgb(161,217,155)}
+.Greens .q3-7{fill:rgb(116,196,118)}
+.Greens .q4-7{fill:rgb(65,171,93)}
+.Greens .q5-7{fill:rgb(35,139,69)}
+.Greens .q6-7{fill:rgb(0,90,50)}
+.Greens .q0-8{fill:rgb(247,252,245)}
+.Greens .q1-8{fill:rgb(229,245,224)}
+.Greens .q2-8{fill:rgb(199,233,192)}
+.Greens .q3-8{fill:rgb(161,217,155)}
+.Greens .q4-8{fill:rgb(116,196,118)}
+.Greens .q5-8{fill:rgb(65,171,93)}
+.Greens .q6-8{fill:rgb(35,139,69)}
+.Greens .q7-8{fill:rgb(0,90,50)}
+.Greens .q0-9{fill:rgb(247,252,245)}
+.Greens .q1-9{fill:rgb(229,245,224)}
+.Greens .q2-9{fill:rgb(199,233,192)}
+.Greens .q3-9{fill:rgb(161,217,155)}
+.Greens .q4-9{fill:rgb(116,196,118)}
+.Greens .q5-9{fill:rgb(65,171,93)}
+.Greens .q6-9{fill:rgb(35,139,69)}
+.Greens .q7-9{fill:rgb(0,109,44)}
+.Greens .q8-9{fill:rgb(0,68,27)}
+.Oranges .q0-3{fill:rgb(254,230,206)}
+.Oranges .q1-3{fill:rgb(253,174,107)}
+.Oranges .q2-3{fill:rgb(230,85,13)}
+.Oranges .q0-4{fill:rgb(254,237,222)}
+.Oranges .q1-4{fill:rgb(253,190,133)}
+.Oranges .q2-4{fill:rgb(253,141,60)}
+.Oranges .q3-4{fill:rgb(217,71,1)}
+.Oranges .q0-5{fill:rgb(254,237,222)}
+.Oranges .q1-5{fill:rgb(253,190,133)}
+.Oranges .q2-5{fill:rgb(253,141,60)}
+.Oranges .q3-5{fill:rgb(230,85,13)}
+.Oranges .q4-5{fill:rgb(166,54,3)}
+.Oranges .q0-6{fill:rgb(254,237,222)}
+.Oranges .q1-6{fill:rgb(253,208,162)}
+.Oranges .q2-6{fill:rgb(253,174,107)}
+.Oranges .q3-6{fill:rgb(253,141,60)}
+.Oranges .q4-6{fill:rgb(230,85,13)}
+.Oranges .q5-6{fill:rgb(166,54,3)}
+.Oranges .q0-7{fill:rgb(254,237,222)}
+.Oranges .q1-7{fill:rgb(253,208,162)}
+.Oranges .q2-7{fill:rgb(253,174,107)}
+.Oranges .q3-7{fill:rgb(253,141,60)}
+.Oranges .q4-7{fill:rgb(241,105,19)}
+.Oranges .q5-7{fill:rgb(217,72,1)}
+.Oranges .q6-7{fill:rgb(140,45,4)}
+.Oranges .q0-8{fill:rgb(255,245,235)}
+.Oranges .q1-8{fill:rgb(254,230,206)}
+.Oranges .q2-8{fill:rgb(253,208,162)}
+.Oranges .q3-8{fill:rgb(253,174,107)}
+.Oranges .q4-8{fill:rgb(253,141,60)}
+.Oranges .q5-8{fill:rgb(241,105,19)}
+.Oranges .q6-8{fill:rgb(217,72,1)}
+.Oranges .q7-8{fill:rgb(140,45,4)}
+.Oranges .q0-9{fill:rgb(255,245,235)}
+.Oranges .q1-9{fill:rgb(254,230,206)}
+.Oranges .q2-9{fill:rgb(253,208,162)}
+.Oranges .q3-9{fill:rgb(253,174,107)}
+.Oranges .q4-9{fill:rgb(253,141,60)}
+.Oranges .q5-9{fill:rgb(241,105,19)}
+.Oranges .q6-9{fill:rgb(217,72,1)}
+.Oranges .q7-9{fill:rgb(166,54,3)}
+.Oranges .q8-9{fill:rgb(127,39,4)}
+.Reds .q0-3{fill:rgb(254,224,210)}
+.Reds .q1-3{fill:rgb(252,146,114)}
+.Reds .q2-3{fill:rgb(222,45,38)}
+.Reds .q0-4{fill:rgb(254,229,217)}
+.Reds .q1-4{fill:rgb(252,174,145)}
+.Reds .q2-4{fill:rgb(251,106,74)}
+.Reds .q3-4{fill:rgb(203,24,29)}
+.Reds .q0-5{fill:rgb(254,229,217)}
+.Reds .q1-5{fill:rgb(252,174,145)}
+.Reds .q2-5{fill:rgb(251,106,74)}
+.Reds .q3-5{fill:rgb(222,45,38)}
+.Reds .q4-5{fill:rgb(165,15,21)}
+.Reds .q0-6{fill:rgb(254,229,217)}
+.Reds .q1-6{fill:rgb(252,187,161)}
+.Reds .q2-6{fill:rgb(252,146,114)}
+.Reds .q3-6{fill:rgb(251,106,74)}
+.Reds .q4-6{fill:rgb(222,45,38)}
+.Reds .q5-6{fill:rgb(165,15,21)}
+.Reds .q0-7{fill:rgb(254,229,217)}
+.Reds .q1-7{fill:rgb(252,187,161)}
+.Reds .q2-7{fill:rgb(252,146,114)}
+.Reds .q3-7{fill:rgb(251,106,74)}
+.Reds .q4-7{fill:rgb(239,59,44)}
+.Reds .q5-7{fill:rgb(203,24,29)}
+.Reds .q6-7{fill:rgb(153,0,13)}
+.Reds .q0-8{fill:rgb(255,245,240)}
+.Reds .q1-8{fill:rgb(254,224,210)}
+.Reds .q2-8{fill:rgb(252,187,161)}
+.Reds .q3-8{fill:rgb(252,146,114)}
+.Reds .q4-8{fill:rgb(251,106,74)}
+.Reds .q5-8{fill:rgb(239,59,44)}
+.Reds .q6-8{fill:rgb(203,24,29)}
+.Reds .q7-8{fill:rgb(153,0,13)}
+.Reds .q0-9{fill:rgb(255,245,240)}
+.Reds .q1-9{fill:rgb(254,224,210)}
+.Reds .q2-9{fill:rgb(252,187,161)}
+.Reds .q3-9{fill:rgb(252,146,114)}
+.Reds .q4-9{fill:rgb(251,106,74)}
+.Reds .q5-9{fill:rgb(239,59,44)}
+.Reds .q6-9{fill:rgb(203,24,29)}
+.Reds .q7-9{fill:rgb(165,15,21)}
+.Reds .q8-9{fill:rgb(103,0,13)}
+.Greys .q0-3{fill:rgb(240,240,240)}
+.Greys .q1-3{fill:rgb(189,189,189)}
+.Greys .q2-3{fill:rgb(99,99,99)}
+.Greys .q0-4{fill:rgb(247,247,247)}
+.Greys .q1-4{fill:rgb(204,204,204)}
+.Greys .q2-4{fill:rgb(150,150,150)}
+.Greys .q3-4{fill:rgb(82,82,82)}
+.Greys .q0-5{fill:rgb(247,247,247)}
+.Greys .q1-5{fill:rgb(204,204,204)}
+.Greys .q2-5{fill:rgb(150,150,150)}
+.Greys .q3-5{fill:rgb(99,99,99)}
+.Greys .q4-5{fill:rgb(37,37,37)}
+.Greys .q0-6{fill:rgb(247,247,247)}
+.Greys .q1-6{fill:rgb(217,217,217)}
+.Greys .q2-6{fill:rgb(189,189,189)}
+.Greys .q3-6{fill:rgb(150,150,150)}
+.Greys .q4-6{fill:rgb(99,99,99)}
+.Greys .q5-6{fill:rgb(37,37,37)}
+.Greys .q0-7{fill:rgb(247,247,247)}
+.Greys .q1-7{fill:rgb(217,217,217)}
+.Greys .q2-7{fill:rgb(189,189,189)}
+.Greys .q3-7{fill:rgb(150,150,150)}
+.Greys .q4-7{fill:rgb(115,115,115)}
+.Greys .q5-7{fill:rgb(82,82,82)}
+.Greys .q6-7{fill:rgb(37,37,37)}
+.Greys .q0-8{fill:rgb(255,255,255)}
+.Greys .q1-8{fill:rgb(240,240,240)}
+.Greys .q2-8{fill:rgb(217,217,217)}
+.Greys .q3-8{fill:rgb(189,189,189)}
+.Greys .q4-8{fill:rgb(150,150,150)}
+.Greys .q5-8{fill:rgb(115,115,115)}
+.Greys .q6-8{fill:rgb(82,82,82)}
+.Greys .q7-8{fill:rgb(37,37,37)}
+.Greys .q0-9{fill:rgb(255,255,255)}
+.Greys .q1-9{fill:rgb(240,240,240)}
+.Greys .q2-9{fill:rgb(217,217,217)}
+.Greys .q3-9{fill:rgb(189,189,189)}
+.Greys .q4-9{fill:rgb(150,150,150)}
+.Greys .q5-9{fill:rgb(115,115,115)}
+.Greys .q6-9{fill:rgb(82,82,82)}
+.Greys .q7-9{fill:rgb(37,37,37)}
+.Greys .q8-9{fill:rgb(0,0,0)}
+.PuOr .q0-3{fill:rgb(241,163,64)}
+.PuOr .q1-3{fill:rgb(247,247,247)}
+.PuOr .q2-3{fill:rgb(153,142,195)}
+.PuOr .q0-4{fill:rgb(230,97,1)}
+.PuOr .q1-4{fill:rgb(253,184,99)}
+.PuOr .q2-4{fill:rgb(178,171,210)}
+.PuOr .q3-4{fill:rgb(94,60,153)}
+.PuOr .q0-5{fill:rgb(230,97,1)}
+.PuOr .q1-5{fill:rgb(253,184,99)}
+.PuOr .q2-5{fill:rgb(247,247,247)}
+.PuOr .q3-5{fill:rgb(178,171,210)}
+.PuOr .q4-5{fill:rgb(94,60,153)}
+.PuOr .q0-6{fill:rgb(179,88,6)}
+.PuOr .q1-6{fill:rgb(241,163,64)}
+.PuOr .q2-6{fill:rgb(254,224,182)}
+.PuOr .q3-6{fill:rgb(216,218,235)}
+.PuOr .q4-6{fill:rgb(153,142,195)}
+.PuOr .q5-6{fill:rgb(84,39,136)}
+.PuOr .q0-7{fill:rgb(179,88,6)}
+.PuOr .q1-7{fill:rgb(241,163,64)}
+.PuOr .q2-7{fill:rgb(254,224,182)}
+.PuOr .q3-7{fill:rgb(247,247,247)}
+.PuOr .q4-7{fill:rgb(216,218,235)}
+.PuOr .q5-7{fill:rgb(153,142,195)}
+.PuOr .q6-7{fill:rgb(84,39,136)}
+.PuOr .q0-8{fill:rgb(179,88,6)}
+.PuOr .q1-8{fill:rgb(224,130,20)}
+.PuOr .q2-8{fill:rgb(253,184,99)}
+.PuOr .q3-8{fill:rgb(254,224,182)}
+.PuOr .q4-8{fill:rgb(216,218,235)}
+.PuOr .q5-8{fill:rgb(178,171,210)}
+.PuOr .q6-8{fill:rgb(128,115,172)}
+.PuOr .q7-8{fill:rgb(84,39,136)}
+.PuOr .q0-9{fill:rgb(179,88,6)}
+.PuOr .q1-9{fill:rgb(224,130,20)}
+.PuOr .q2-9{fill:rgb(253,184,99)}
+.PuOr .q3-9{fill:rgb(254,224,182)}
+.PuOr .q4-9{fill:rgb(247,247,247)}
+.PuOr .q5-9{fill:rgb(216,218,235)}
+.PuOr .q6-9{fill:rgb(178,171,210)}
+.PuOr .q7-9{fill:rgb(128,115,172)}
+.PuOr .q8-9{fill:rgb(84,39,136)}
+.PuOr .q0-10{fill:rgb(127,59,8)}
+.PuOr .q1-10{fill:rgb(179,88,6)}
+.PuOr .q2-10{fill:rgb(224,130,20)}
+.PuOr .q3-10{fill:rgb(253,184,99)}
+.PuOr .q4-10{fill:rgb(254,224,182)}
+.PuOr .q5-10{fill:rgb(216,218,235)}
+.PuOr .q6-10{fill:rgb(178,171,210)}
+.PuOr .q7-10{fill:rgb(128,115,172)}
+.PuOr .q8-10{fill:rgb(84,39,136)}
+.PuOr .q9-10{fill:rgb(45,0,75)}
+.PuOr .q0-11{fill:rgb(127,59,8)}
+.PuOr .q1-11{fill:rgb(179,88,6)}
+.PuOr .q2-11{fill:rgb(224,130,20)}
+.PuOr .q3-11{fill:rgb(253,184,99)}
+.PuOr .q4-11{fill:rgb(254,224,182)}
+.PuOr .q5-11{fill:rgb(247,247,247)}
+.PuOr .q6-11{fill:rgb(216,218,235)}
+.PuOr .q7-11{fill:rgb(178,171,210)}
+.PuOr .q8-11{fill:rgb(128,115,172)}
+.PuOr .q9-11{fill:rgb(84,39,136)}
+.PuOr .q10-11{fill:rgb(45,0,75)}
+.BrBG .q0-3{fill:rgb(216,179,101)}
+.BrBG .q1-3{fill:rgb(245,245,245)}
+.BrBG .q2-3{fill:rgb(90,180,172)}
+.BrBG .q0-4{fill:rgb(166,97,26)}
+.BrBG .q1-4{fill:rgb(223,194,125)}
+.BrBG .q2-4{fill:rgb(128,205,193)}
+.BrBG .q3-4{fill:rgb(1,133,113)}
+.BrBG .q0-5{fill:rgb(166,97,26)}
+.BrBG .q1-5{fill:rgb(223,194,125)}
+.BrBG .q2-5{fill:rgb(245,245,245)}
+.BrBG .q3-5{fill:rgb(128,205,193)}
+.BrBG .q4-5{fill:rgb(1,133,113)}
+.BrBG .q0-6{fill:rgb(140,81,10)}
+.BrBG .q1-6{fill:rgb(216,179,101)}
+.BrBG .q2-6{fill:rgb(246,232,195)}
+.BrBG .q3-6{fill:rgb(199,234,229)}
+.BrBG .q4-6{fill:rgb(90,180,172)}
+.BrBG .q5-6{fill:rgb(1,102,94)}
+.BrBG .q0-7{fill:rgb(140,81,10)}
+.BrBG .q1-7{fill:rgb(216,179,101)}
+.BrBG .q2-7{fill:rgb(246,232,195)}
+.BrBG .q3-7{fill:rgb(245,245,245)}
+.BrBG .q4-7{fill:rgb(199,234,229)}
+.BrBG .q5-7{fill:rgb(90,180,172)}
+.BrBG .q6-7{fill:rgb(1,102,94)}
+.BrBG .q0-8{fill:rgb(140,81,10)}
+.BrBG .q1-8{fill:rgb(191,129,45)}
+.BrBG .q2-8{fill:rgb(223,194,125)}
+.BrBG .q3-8{fill:rgb(246,232,195)}
+.BrBG .q4-8{fill:rgb(199,234,229)}
+.BrBG .q5-8{fill:rgb(128,205,193)}
+.BrBG .q6-8{fill:rgb(53,151,143)}
+.BrBG .q7-8{fill:rgb(1,102,94)}
+.BrBG .q0-9{fill:rgb(140,81,10)}
+.BrBG .q1-9{fill:rgb(191,129,45)}
+.BrBG .q2-9{fill:rgb(223,194,125)}
+.BrBG .q3-9{fill:rgb(246,232,195)}
+.BrBG .q4-9{fill:rgb(245,245,245)}
+.BrBG .q5-9{fill:rgb(199,234,229)}
+.BrBG .q6-9{fill:rgb(128,205,193)}
+.BrBG .q7-9{fill:rgb(53,151,143)}
+.BrBG .q8-9{fill:rgb(1,102,94)}
+.BrBG .q0-10{fill:rgb(84,48,5)}
+.BrBG .q1-10{fill:rgb(140,81,10)}
+.BrBG .q2-10{fill:rgb(191,129,45)}
+.BrBG .q3-10{fill:rgb(223,194,125)}
+.BrBG .q4-10{fill:rgb(246,232,195)}
+.BrBG .q5-10{fill:rgb(199,234,229)}
+.BrBG .q6-10{fill:rgb(128,205,193)}
+.BrBG .q7-10{fill:rgb(53,151,143)}
+.BrBG .q8-10{fill:rgb(1,102,94)}
+.BrBG .q9-10{fill:rgb(0,60,48)}
+.BrBG .q0-11{fill:rgb(84,48,5)}
+.BrBG .q1-11{fill:rgb(140,81,10)}
+.BrBG .q2-11{fill:rgb(191,129,45)}
+.BrBG .q3-11{fill:rgb(223,194,125)}
+.BrBG .q4-11{fill:rgb(246,232,195)}
+.BrBG .q5-11{fill:rgb(245,245,245)}
+.BrBG .q6-11{fill:rgb(199,234,229)}
+.BrBG .q7-11{fill:rgb(128,205,193)}
+.BrBG .q8-11{fill:rgb(53,151,143)}
+.BrBG .q9-11{fill:rgb(1,102,94)}
+.BrBG .q10-11{fill:rgb(0,60,48)}
+.PRGn .q0-3{fill:rgb(175,141,195)}
+.PRGn .q1-3{fill:rgb(247,247,247)}
+.PRGn .q2-3{fill:rgb(127,191,123)}
+.PRGn .q0-4{fill:rgb(123,50,148)}
+.PRGn .q1-4{fill:rgb(194,165,207)}
+.PRGn .q2-4{fill:rgb(166,219,160)}
+.PRGn .q3-4{fill:rgb(0,136,55)}
+.PRGn .q0-5{fill:rgb(123,50,148)}
+.PRGn .q1-5{fill:rgb(194,165,207)}
+.PRGn .q2-5{fill:rgb(247,247,247)}
+.PRGn .q3-5{fill:rgb(166,219,160)}
+.PRGn .q4-5{fill:rgb(0,136,55)}
+.PRGn .q0-6{fill:rgb(118,42,131)}
+.PRGn .q1-6{fill:rgb(175,141,195)}
+.PRGn .q2-6{fill:rgb(231,212,232)}
+.PRGn .q3-6{fill:rgb(217,240,211)}
+.PRGn .q4-6{fill:rgb(127,191,123)}
+.PRGn .q5-6{fill:rgb(27,120,55)}
+.PRGn .q0-7{fill:rgb(118,42,131)}
+.PRGn .q1-7{fill:rgb(175,141,195)}
+.PRGn .q2-7{fill:rgb(231,212,232)}
+.PRGn .q3-7{fill:rgb(247,247,247)}
+.PRGn .q4-7{fill:rgb(217,240,211)}
+.PRGn .q5-7{fill:rgb(127,191,123)}
+.PRGn .q6-7{fill:rgb(27,120,55)}
+.PRGn .q0-8{fill:rgb(118,42,131)}
+.PRGn .q1-8{fill:rgb(153,112,171)}
+.PRGn .q2-8{fill:rgb(194,165,207)}
+.PRGn .q3-8{fill:rgb(231,212,232)}
+.PRGn .q4-8{fill:rgb(217,240,211)}
+.PRGn .q5-8{fill:rgb(166,219,160)}
+.PRGn .q6-8{fill:rgb(90,174,97)}
+.PRGn .q7-8{fill:rgb(27,120,55)}
+.PRGn .q0-9{fill:rgb(118,42,131)}
+.PRGn .q1-9{fill:rgb(153,112,171)}
+.PRGn .q2-9{fill:rgb(194,165,207)}
+.PRGn .q3-9{fill:rgb(231,212,232)}
+.PRGn .q4-9{fill:rgb(247,247,247)}
+.PRGn .q5-9{fill:rgb(217,240,211)}
+.PRGn .q6-9{fill:rgb(166,219,160)}
+.PRGn .q7-9{fill:rgb(90,174,97)}
+.PRGn .q8-9{fill:rgb(27,120,55)}
+.PRGn .q0-10{fill:rgb(64,0,75)}
+.PRGn .q1-10{fill:rgb(118,42,131)}
+.PRGn .q2-10{fill:rgb(153,112,171)}
+.PRGn .q3-10{fill:rgb(194,165,207)}
+.PRGn .q4-10{fill:rgb(231,212,232)}
+.PRGn .q5-10{fill:rgb(217,240,211)}
+.PRGn .q6-10{fill:rgb(166,219,160)}
+.PRGn .q7-10{fill:rgb(90,174,97)}
+.PRGn .q8-10{fill:rgb(27,120,55)}
+.PRGn .q9-10{fill:rgb(0,68,27)}
+.PRGn .q0-11{fill:rgb(64,0,75)}
+.PRGn .q1-11{fill:rgb(118,42,131)}
+.PRGn .q2-11{fill:rgb(153,112,171)}
+.PRGn .q3-11{fill:rgb(194,165,207)}
+.PRGn .q4-11{fill:rgb(231,212,232)}
+.PRGn .q5-11{fill:rgb(247,247,247)}
+.PRGn .q6-11{fill:rgb(217,240,211)}
+.PRGn .q7-11{fill:rgb(166,219,160)}
+.PRGn .q8-11{fill:rgb(90,174,97)}
+.PRGn .q9-11{fill:rgb(27,120,55)}
+.PRGn .q10-11{fill:rgb(0,68,27)}
+.PiYG .q0-3{fill:rgb(233,163,201)}
+.PiYG .q1-3{fill:rgb(247,247,247)}
+.PiYG .q2-3{fill:rgb(161,215,106)}
+.PiYG .q0-4{fill:rgb(208,28,139)}
+.PiYG .q1-4{fill:rgb(241,182,218)}
+.PiYG .q2-4{fill:rgb(184,225,134)}
+.PiYG .q3-4{fill:rgb(77,172,38)}
+.PiYG .q0-5{fill:rgb(208,28,139)}
+.PiYG .q1-5{fill:rgb(241,182,218)}
+.PiYG .q2-5{fill:rgb(247,247,247)}
+.PiYG .q3-5{fill:rgb(184,225,134)}
+.PiYG .q4-5{fill:rgb(77,172,38)}
+.PiYG .q0-6{fill:rgb(197,27,125)}
+.PiYG .q1-6{fill:rgb(233,163,201)}
+.PiYG .q2-6{fill:rgb(253,224,239)}
+.PiYG .q3-6{fill:rgb(230,245,208)}
+.PiYG .q4-6{fill:rgb(161,215,106)}
+.PiYG .q5-6{fill:rgb(77,146,33)}
+.PiYG .q0-7{fill:rgb(197,27,125)}
+.PiYG .q1-7{fill:rgb(233,163,201)}
+.PiYG .q2-7{fill:rgb(253,224,239)}
+.PiYG .q3-7{fill:rgb(247,247,247)}
+.PiYG .q4-7{fill:rgb(230,245,208)}
+.PiYG .q5-7{fill:rgb(161,215,106)}
+.PiYG .q6-7{fill:rgb(77,146,33)}
+.PiYG .q0-8{fill:rgb(197,27,125)}
+.PiYG .q1-8{fill:rgb(222,119,174)}
+.PiYG .q2-8{fill:rgb(241,182,218)}
+.PiYG .q3-8{fill:rgb(253,224,239)}
+.PiYG .q4-8{fill:rgb(230,245,208)}
+.PiYG .q5-8{fill:rgb(184,225,134)}
+.PiYG .q6-8{fill:rgb(127,188,65)}
+.PiYG .q7-8{fill:rgb(77,146,33)}
+.PiYG .q0-9{fill:rgb(197,27,125)}
+.PiYG .q1-9{fill:rgb(222,119,174)}
+.PiYG .q2-9{fill:rgb(241,182,218)}
+.PiYG .q3-9{fill:rgb(253,224,239)}
+.PiYG .q4-9{fill:rgb(247,247,247)}
+.PiYG .q5-9{fill:rgb(230,245,208)}
+.PiYG .q6-9{fill:rgb(184,225,134)}
+.PiYG .q7-9{fill:rgb(127,188,65)}
+.PiYG .q8-9{fill:rgb(77,146,33)}
+.PiYG .q0-10{fill:rgb(142,1,82)}
+.PiYG .q1-10{fill:rgb(197,27,125)}
+.PiYG .q2-10{fill:rgb(222,119,174)}
+.PiYG .q3-10{fill:rgb(241,182,218)}
+.PiYG .q4-10{fill:rgb(253,224,239)}
+.PiYG .q5-10{fill:rgb(230,245,208)}
+.PiYG .q6-10{fill:rgb(184,225,134)}
+.PiYG .q7-10{fill:rgb(127,188,65)}
+.PiYG .q8-10{fill:rgb(77,146,33)}
+.PiYG .q9-10{fill:rgb(39,100,25)}
+.PiYG .q0-11{fill:rgb(142,1,82)}
+.PiYG .q1-11{fill:rgb(197,27,125)}
+.PiYG .q2-11{fill:rgb(222,119,174)}
+.PiYG .q3-11{fill:rgb(241,182,218)}
+.PiYG .q4-11{fill:rgb(253,224,239)}
+.PiYG .q5-11{fill:rgb(247,247,247)}
+.PiYG .q6-11{fill:rgb(230,245,208)}
+.PiYG .q7-11{fill:rgb(184,225,134)}
+.PiYG .q8-11{fill:rgb(127,188,65)}
+.PiYG .q9-11{fill:rgb(77,146,33)}
+.PiYG .q10-11{fill:rgb(39,100,25)}
+.RdBu .q0-3{fill:rgb(239,138,98)}
+.RdBu .q1-3{fill:rgb(247,247,247)}
+.RdBu .q2-3{fill:rgb(103,169,207)}
+.RdBu .q0-4{fill:rgb(202,0,32)}
+.RdBu .q1-4{fill:rgb(244,165,130)}
+.RdBu .q2-4{fill:rgb(146,197,222)}
+.RdBu .q3-4{fill:rgb(5,113,176)}
+.RdBu .q0-5{fill:rgb(202,0,32)}
+.RdBu .q1-5{fill:rgb(244,165,130)}
+.RdBu .q2-5{fill:rgb(247,247,247)}
+.RdBu .q3-5{fill:rgb(146,197,222)}
+.RdBu .q4-5{fill:rgb(5,113,176)}
+.RdBu .q0-6{fill:rgb(178,24,43)}
+.RdBu .q1-6{fill:rgb(239,138,98)}
+.RdBu .q2-6{fill:rgb(253,219,199)}
+.RdBu .q3-6{fill:rgb(209,229,240)}
+.RdBu .q4-6{fill:rgb(103,169,207)}
+.RdBu .q5-6{fill:rgb(33,102,172)}
+.RdBu .q0-7{fill:rgb(178,24,43)}
+.RdBu .q1-7{fill:rgb(239,138,98)}
+.RdBu .q2-7{fill:rgb(253,219,199)}
+.RdBu .q3-7{fill:rgb(247,247,247)}
+.RdBu .q4-7{fill:rgb(209,229,240)}
+.RdBu .q5-7{fill:rgb(103,169,207)}
+.RdBu .q6-7{fill:rgb(33,102,172)}
+.RdBu .q0-8{fill:rgb(178,24,43)}
+.RdBu .q1-8{fill:rgb(214,96,77)}
+.RdBu .q2-8{fill:rgb(244,165,130)}
+.RdBu .q3-8{fill:rgb(253,219,199)}
+.RdBu .q4-8{fill:rgb(209,229,240)}
+.RdBu .q5-8{fill:rgb(146,197,222)}
+.RdBu .q6-8{fill:rgb(67,147,195)}
+.RdBu .q7-8{fill:rgb(33,102,172)}
+.RdBu .q0-9{fill:rgb(178,24,43)}
+.RdBu .q1-9{fill:rgb(214,96,77)}
+.RdBu .q2-9{fill:rgb(244,165,130)}
+.RdBu .q3-9{fill:rgb(253,219,199)}
+.RdBu .q4-9{fill:rgb(247,247,247)}
+.RdBu .q5-9{fill:rgb(209,229,240)}
+.RdBu .q6-9{fill:rgb(146,197,222)}
+.RdBu .q7-9{fill:rgb(67,147,195)}
+.RdBu .q8-9{fill:rgb(33,102,172)}
+.RdBu .q0-10{fill:rgb(103,0,31)}
+.RdBu .q1-10{fill:rgb(178,24,43)}
+.RdBu .q2-10{fill:rgb(214,96,77)}
+.RdBu .q3-10{fill:rgb(244,165,130)}
+.RdBu .q4-10{fill:rgb(253,219,199)}
+.RdBu .q5-10{fill:rgb(209,229,240)}
+.RdBu .q6-10{fill:rgb(146,197,222)}
+.RdBu .q7-10{fill:rgb(67,147,195)}
+.RdBu .q8-10{fill:rgb(33,102,172)}
+.RdBu .q9-10{fill:rgb(5,48,97)}
+.RdBu .q0-11{fill:rgb(103,0,31)}
+.RdBu .q1-11{fill:rgb(178,24,43)}
+.RdBu .q2-11{fill:rgb(214,96,77)}
+.RdBu .q3-11{fill:rgb(244,165,130)}
+.RdBu .q4-11{fill:rgb(253,219,199)}
+.RdBu .q5-11{fill:rgb(247,247,247)}
+.RdBu .q6-11{fill:rgb(209,229,240)}
+.RdBu .q7-11{fill:rgb(146,197,222)}
+.RdBu .q8-11{fill:rgb(67,147,195)}
+.RdBu .q9-11{fill:rgb(33,102,172)}
+.RdBu .q10-11{fill:rgb(5,48,97)}
+.RdGy .q0-3{fill:rgb(239,138,98)}
+.RdGy .q1-3{fill:rgb(255,255,255)}
+.RdGy .q2-3{fill:rgb(153,153,153)}
+.RdGy .q0-4{fill:rgb(202,0,32)}
+.RdGy .q1-4{fill:rgb(244,165,130)}
+.RdGy .q2-4{fill:rgb(186,186,186)}
+.RdGy .q3-4{fill:rgb(64,64,64)}
+.RdGy .q0-5{fill:rgb(202,0,32)}
+.RdGy .q1-5{fill:rgb(244,165,130)}
+.RdGy .q2-5{fill:rgb(255,255,255)}
+.RdGy .q3-5{fill:rgb(186,186,186)}
+.RdGy .q4-5{fill:rgb(64,64,64)}
+.RdGy .q0-6{fill:rgb(178,24,43)}
+.RdGy .q1-6{fill:rgb(239,138,98)}
+.RdGy .q2-6{fill:rgb(253,219,199)}
+.RdGy .q3-6{fill:rgb(224,224,224)}
+.RdGy .q4-6{fill:rgb(153,153,153)}
+.RdGy .q5-6{fill:rgb(77,77,77)}
+.RdGy .q0-7{fill:rgb(178,24,43)}
+.RdGy .q1-7{fill:rgb(239,138,98)}
+.RdGy .q2-7{fill:rgb(253,219,199)}
+.RdGy .q3-7{fill:rgb(255,255,255)}
+.RdGy .q4-7{fill:rgb(224,224,224)}
+.RdGy .q5-7{fill:rgb(153,153,153)}
+.RdGy .q6-7{fill:rgb(77,77,77)}
+.RdGy .q0-8{fill:rgb(178,24,43)}
+.RdGy .q1-8{fill:rgb(214,96,77)}
+.RdGy .q2-8{fill:rgb(244,165,130)}
+.RdGy .q3-8{fill:rgb(253,219,199)}
+.RdGy .q4-8{fill:rgb(224,224,224)}
+.RdGy .q5-8{fill:rgb(186,186,186)}
+.RdGy .q6-8{fill:rgb(135,135,135)}
+.RdGy .q7-8{fill:rgb(77,77,77)}
+.RdGy .q0-9{fill:rgb(178,24,43)}
+.RdGy .q1-9{fill:rgb(214,96,77)}
+.RdGy .q2-9{fill:rgb(244,165,130)}
+.RdGy .q3-9{fill:rgb(253,219,199)}
+.RdGy .q4-9{fill:rgb(255,255,255)}
+.RdGy .q5-9{fill:rgb(224,224,224)}
+.RdGy .q6-9{fill:rgb(186,186,186)}
+.RdGy .q7-9{fill:rgb(135,135,135)}
+.RdGy .q8-9{fill:rgb(77,77,77)}
+.RdGy .q0-10{fill:rgb(103,0,31)}
+.RdGy .q1-10{fill:rgb(178,24,43)}
+.RdGy .q2-10{fill:rgb(214,96,77)}
+.RdGy .q3-10{fill:rgb(244,165,130)}
+.RdGy .q4-10{fill:rgb(253,219,199)}
+.RdGy .q5-10{fill:rgb(224,224,224)}
+.RdGy .q6-10{fill:rgb(186,186,186)}
+.RdGy .q7-10{fill:rgb(135,135,135)}
+.RdGy .q8-10{fill:rgb(77,77,77)}
+.RdGy .q9-10{fill:rgb(26,26,26)}
+.RdGy .q0-11{fill:rgb(103,0,31)}
+.RdGy .q1-11{fill:rgb(178,24,43)}
+.RdGy .q2-11{fill:rgb(214,96,77)}
+.RdGy .q3-11{fill:rgb(244,165,130)}
+.RdGy .q4-11{fill:rgb(253,219,199)}
+.RdGy .q5-11{fill:rgb(255,255,255)}
+.RdGy .q6-11{fill:rgb(224,224,224)}
+.RdGy .q7-11{fill:rgb(186,186,186)}
+.RdGy .q8-11{fill:rgb(135,135,135)}
+.RdGy .q9-11{fill:rgb(77,77,77)}
+.RdGy .q10-11{fill:rgb(26,26,26)}
+.RdYlBu .q0-3{fill:rgb(252,141,89)}
+.RdYlBu .q1-3{fill:rgb(255,255,191)}
+.RdYlBu .q2-3{fill:rgb(145,191,219)}
+.RdYlBu .q0-4{fill:rgb(215,25,28)}
+.RdYlBu .q1-4{fill:rgb(253,174,97)}
+.RdYlBu .q2-4{fill:rgb(171,217,233)}
+.RdYlBu .q3-4{fill:rgb(44,123,182)}
+.RdYlBu .q0-5{fill:rgb(215,25,28)}
+.RdYlBu .q1-5{fill:rgb(253,174,97)}
+.RdYlBu .q2-5{fill:rgb(255,255,191)}
+.RdYlBu .q3-5{fill:rgb(171,217,233)}
+.RdYlBu .q4-5{fill:rgb(44,123,182)}
+.RdYlBu .q0-6{fill:rgb(215,48,39)}
+.RdYlBu .q1-6{fill:rgb(252,141,89)}
+.RdYlBu .q2-6{fill:rgb(254,224,144)}
+.RdYlBu .q3-6{fill:rgb(224,243,248)}
+.RdYlBu .q4-6{fill:rgb(145,191,219)}
+.RdYlBu .q5-6{fill:rgb(69,117,180)}
+.RdYlBu .q0-7{fill:rgb(215,48,39)}
+.RdYlBu .q1-7{fill:rgb(252,141,89)}
+.RdYlBu .q2-7{fill:rgb(254,224,144)}
+.RdYlBu .q3-7{fill:rgb(255,255,191)}
+.RdYlBu .q4-7{fill:rgb(224,243,248)}
+.RdYlBu .q5-7{fill:rgb(145,191,219)}
+.RdYlBu .q6-7{fill:rgb(69,117,180)}
+.RdYlBu .q0-8{fill:rgb(215,48,39)}
+.RdYlBu .q1-8{fill:rgb(244,109,67)}
+.RdYlBu .q2-8{fill:rgb(253,174,97)}
+.RdYlBu .q3-8{fill:rgb(254,224,144)}
+.RdYlBu .q4-8{fill:rgb(224,243,248)}
+.RdYlBu .q5-8{fill:rgb(171,217,233)}
+.RdYlBu .q6-8{fill:rgb(116,173,209)}
+.RdYlBu .q7-8{fill:rgb(69,117,180)}
+.RdYlBu .q0-9{fill:rgb(215,48,39)}
+.RdYlBu .q1-9{fill:rgb(244,109,67)}
+.RdYlBu .q2-9{fill:rgb(253,174,97)}
+.RdYlBu .q3-9{fill:rgb(254,224,144)}
+.RdYlBu .q4-9{fill:rgb(255,255,191)}
+.RdYlBu .q5-9{fill:rgb(224,243,248)}
+.RdYlBu .q6-9{fill:rgb(171,217,233)}
+.RdYlBu .q7-9{fill:rgb(116,173,209)}
+.RdYlBu .q8-9{fill:rgb(69,117,180)}
+.RdYlBu .q0-10{fill:rgb(165,0,38)}
+.RdYlBu .q1-10{fill:rgb(215,48,39)}
+.RdYlBu .q2-10{fill:rgb(244,109,67)}
+.RdYlBu .q3-10{fill:rgb(253,174,97)}
+.RdYlBu .q4-10{fill:rgb(254,224,144)}
+.RdYlBu .q5-10{fill:rgb(224,243,248)}
+.RdYlBu .q6-10{fill:rgb(171,217,233)}
+.RdYlBu .q7-10{fill:rgb(116,173,209)}
+.RdYlBu .q8-10{fill:rgb(69,117,180)}
+.RdYlBu .q9-10{fill:rgb(49,54,149)}
+.RdYlBu .q0-11{fill:rgb(165,0,38)}
+.RdYlBu .q1-11{fill:rgb(215,48,39)}
+.RdYlBu .q2-11{fill:rgb(244,109,67)}
+.RdYlBu .q3-11{fill:rgb(253,174,97)}
+.RdYlBu .q4-11{fill:rgb(254,224,144)}
+.RdYlBu .q5-11{fill:rgb(255,255,191)}
+.RdYlBu .q6-11{fill:rgb(224,243,248)}
+.RdYlBu .q7-11{fill:rgb(171,217,233)}
+.RdYlBu .q8-11{fill:rgb(116,173,209)}
+.RdYlBu .q9-11{fill:rgb(69,117,180)}
+.RdYlBu .q10-11{fill:rgb(49,54,149)}
+.Spectral .q0-3{fill:rgb(252,141,89)}
+.Spectral .q1-3{fill:rgb(255,255,191)}
+.Spectral .q2-3{fill:rgb(153,213,148)}
+.Spectral .q0-4{fill:rgb(215,25,28)}
+.Spectral .q1-4{fill:rgb(253,174,97)}
+.Spectral .q2-4{fill:rgb(171,221,164)}
+.Spectral .q3-4{fill:rgb(43,131,186)}
+.Spectral .q0-5{fill:rgb(215,25,28)}
+.Spectral .q1-5{fill:rgb(253,174,97)}
+.Spectral .q2-5{fill:rgb(255,255,191)}
+.Spectral .q3-5{fill:rgb(171,221,164)}
+.Spectral .q4-5{fill:rgb(43,131,186)}
+.Spectral .q0-6{fill:rgb(213,62,79)}
+.Spectral .q1-6{fill:rgb(252,141,89)}
+.Spectral .q2-6{fill:rgb(254,224,139)}
+.Spectral .q3-6{fill:rgb(230,245,152)}
+.Spectral .q4-6{fill:rgb(153,213,148)}
+.Spectral .q5-6{fill:rgb(50,136,189)}
+.Spectral .q0-7{fill:rgb(213,62,79)}
+.Spectral .q1-7{fill:rgb(252,141,89)}
+.Spectral .q2-7{fill:rgb(254,224,139)}
+.Spectral .q3-7{fill:rgb(255,255,191)}
+.Spectral .q4-7{fill:rgb(230,245,152)}
+.Spectral .q5-7{fill:rgb(153,213,148)}
+.Spectral .q6-7{fill:rgb(50,136,189)}
+.Spectral .q0-8{fill:rgb(213,62,79)}
+.Spectral .q1-8{fill:rgb(244,109,67)}
+.Spectral .q2-8{fill:rgb(253,174,97)}
+.Spectral .q3-8{fill:rgb(254,224,139)}
+.Spectral .q4-8{fill:rgb(230,245,152)}
+.Spectral .q5-8{fill:rgb(171,221,164)}
+.Spectral .q6-8{fill:rgb(102,194,165)}
+.Spectral .q7-8{fill:rgb(50,136,189)}
+.Spectral .q0-9{fill:rgb(213,62,79)}
+.Spectral .q1-9{fill:rgb(244,109,67)}
+.Spectral .q2-9{fill:rgb(253,174,97)}
+.Spectral .q3-9{fill:rgb(254,224,139)}
+.Spectral .q4-9{fill:rgb(255,255,191)}
+.Spectral .q5-9{fill:rgb(230,245,152)}
+.Spectral .q6-9{fill:rgb(171,221,164)}
+.Spectral .q7-9{fill:rgb(102,194,165)}
+.Spectral .q8-9{fill:rgb(50,136,189)}
+.Spectral .q0-10{fill:rgb(158,1,66)}
+.Spectral .q1-10{fill:rgb(213,62,79)}
+.Spectral .q2-10{fill:rgb(244,109,67)}
+.Spectral .q3-10{fill:rgb(253,174,97)}
+.Spectral .q4-10{fill:rgb(254,224,139)}
+.Spectral .q5-10{fill:rgb(230,245,152)}
+.Spectral .q6-10{fill:rgb(171,221,164)}
+.Spectral .q7-10{fill:rgb(102,194,165)}
+.Spectral .q8-10{fill:rgb(50,136,189)}
+.Spectral .q9-10{fill:rgb(94,79,162)}
+.Spectral .q0-11{fill:rgb(158,1,66)}
+.Spectral .q1-11{fill:rgb(213,62,79)}
+.Spectral .q2-11{fill:rgb(244,109,67)}
+.Spectral .q3-11{fill:rgb(253,174,97)}
+.Spectral .q4-11{fill:rgb(254,224,139)}
+.Spectral .q5-11{fill:rgb(255,255,191)}
+.Spectral .q6-11{fill:rgb(230,245,152)}
+.Spectral .q7-11{fill:rgb(171,221,164)}
+.Spectral .q8-11{fill:rgb(102,194,165)}
+.Spectral .q9-11{fill:rgb(50,136,189)}
+.Spectral .q10-11{fill:rgb(94,79,162)}
+.RdYlGn .q0-3{fill:rgb(252,141,89)}
+.RdYlGn .q1-3{fill:rgb(255,255,191)}
+.RdYlGn .q2-3{fill:rgb(145,207,96)}
+.RdYlGn .q0-4{fill:rgb(215,25,28)}
+.RdYlGn .q1-4{fill:rgb(253,174,97)}
+.RdYlGn .q2-4{fill:rgb(166,217,106)}
+.RdYlGn .q3-4{fill:rgb(26,150,65)}
+.RdYlGn .q0-5{fill:rgb(215,25,28)}
+.RdYlGn .q1-5{fill:rgb(253,174,97)}
+.RdYlGn .q2-5{fill:rgb(255,255,191)}
+.RdYlGn .q3-5{fill:rgb(166,217,106)}
+.RdYlGn .q4-5{fill:rgb(26,150,65)}
+.RdYlGn .q0-6{fill:rgb(215,48,39)}
+.RdYlGn .q1-6{fill:rgb(252,141,89)}
+.RdYlGn .q2-6{fill:rgb(254,224,139)}
+.RdYlGn .q3-6{fill:rgb(217,239,139)}
+.RdYlGn .q4-6{fill:rgb(145,207,96)}
+.RdYlGn .q5-6{fill:rgb(26,152,80)}
+.RdYlGn .q0-7{fill:rgb(215,48,39)}
+.RdYlGn .q1-7{fill:rgb(252,141,89)}
+.RdYlGn .q2-7{fill:rgb(254,224,139)}
+.RdYlGn .q3-7{fill:rgb(255,255,191)}
+.RdYlGn .q4-7{fill:rgb(217,239,139)}
+.RdYlGn .q5-7{fill:rgb(145,207,96)}
+.RdYlGn .q6-7{fill:rgb(26,152,80)}
+.RdYlGn .q0-8{fill:rgb(215,48,39)}
+.RdYlGn .q1-8{fill:rgb(244,109,67)}
+.RdYlGn .q2-8{fill:rgb(253,174,97)}
+.RdYlGn .q3-8{fill:rgb(254,224,139)}
+.RdYlGn .q4-8{fill:rgb(217,239,139)}
+.RdYlGn .q5-8{fill:rgb(166,217,106)}
+.RdYlGn .q6-8{fill:rgb(102,189,99)}
+.RdYlGn .q7-8{fill:rgb(26,152,80)}
+.RdYlGn .q0-9{fill:rgb(215,48,39)}
+.RdYlGn .q1-9{fill:rgb(244,109,67)}
+.RdYlGn .q2-9{fill:rgb(253,174,97)}
+.RdYlGn .q3-9{fill:rgb(254,224,139)}
+.RdYlGn .q4-9{fill:rgb(255,255,191)}
+.RdYlGn .q5-9{fill:rgb(217,239,139)}
+.RdYlGn .q6-9{fill:rgb(166,217,106)}
+.RdYlGn .q7-9{fill:rgb(102,189,99)}
+.RdYlGn .q8-9{fill:rgb(26,152,80)}
+.RdYlGn .q0-10{fill:rgb(165,0,38)}
+.RdYlGn .q1-10{fill:rgb(215,48,39)}
+.RdYlGn .q2-10{fill:rgb(244,109,67)}
+.RdYlGn .q3-10{fill:rgb(253,174,97)}
+.RdYlGn .q4-10{fill:rgb(254,224,139)}
+.RdYlGn .q5-10{fill:rgb(217,239,139)}
+.RdYlGn .q6-10{fill:rgb(166,217,106)}
+.RdYlGn .q7-10{fill:rgb(102,189,99)}
+.RdYlGn .q8-10{fill:rgb(26,152,80)}
+.RdYlGn .q9-10{fill:rgb(0,104,55)}
+.RdYlGn .q0-11{fill:rgb(165,0,38)}
+.RdYlGn .q1-11{fill:rgb(215,48,39)}
+.RdYlGn .q2-11{fill:rgb(244,109,67)}
+.RdYlGn .q3-11{fill:rgb(253,174,97)}
+.RdYlGn .q4-11{fill:rgb(254,224,139)}
+.RdYlGn .q5-11{fill:rgb(255,255,191)}
+.RdYlGn .q6-11{fill:rgb(217,239,139)}
+.RdYlGn .q7-11{fill:rgb(166,217,106)}
+.RdYlGn .q8-11{fill:rgb(102,189,99)}
+.RdYlGn .q9-11{fill:rgb(26,152,80)}
+.RdYlGn .q10-11{fill:rgb(0,104,55)}
+.Accent .q0-3{fill:rgb(127,201,127)}
+.Accent .q1-3{fill:rgb(190,174,212)}
+.Accent .q2-3{fill:rgb(253,192,134)}
+.Accent .q0-4{fill:rgb(127,201,127)}
+.Accent .q1-4{fill:rgb(190,174,212)}
+.Accent .q2-4{fill:rgb(253,192,134)}
+.Accent .q3-4{fill:rgb(255,255,153)}
+.Accent .q0-5{fill:rgb(127,201,127)}
+.Accent .q1-5{fill:rgb(190,174,212)}
+.Accent .q2-5{fill:rgb(253,192,134)}
+.Accent .q3-5{fill:rgb(255,255,153)}
+.Accent .q4-5{fill:rgb(56,108,176)}
+.Accent .q0-6{fill:rgb(127,201,127)}
+.Accent .q1-6{fill:rgb(190,174,212)}
+.Accent .q2-6{fill:rgb(253,192,134)}
+.Accent .q3-6{fill:rgb(255,255,153)}
+.Accent .q4-6{fill:rgb(56,108,176)}
+.Accent .q5-6{fill:rgb(240,2,127)}
+.Accent .q0-7{fill:rgb(127,201,127)}
+.Accent .q1-7{fill:rgb(190,174,212)}
+.Accent .q2-7{fill:rgb(253,192,134)}
+.Accent .q3-7{fill:rgb(255,255,153)}
+.Accent .q4-7{fill:rgb(56,108,176)}
+.Accent .q5-7{fill:rgb(240,2,127)}
+.Accent .q6-7{fill:rgb(191,91,23)}
+.Accent .q0-8{fill:rgb(127,201,127)}
+.Accent .q1-8{fill:rgb(190,174,212)}
+.Accent .q2-8{fill:rgb(253,192,134)}
+.Accent .q3-8{fill:rgb(255,255,153)}
+.Accent .q4-8{fill:rgb(56,108,176)}
+.Accent .q5-8{fill:rgb(240,2,127)}
+.Accent .q6-8{fill:rgb(191,91,23)}
+.Accent .q7-8{fill:rgb(102,102,102)}
+.Dark2 .q0-3{fill:rgb(27,158,119)}
+.Dark2 .q1-3{fill:rgb(217,95,2)}
+.Dark2 .q2-3{fill:rgb(117,112,179)}
+.Dark2 .q0-4{fill:rgb(27,158,119)}
+.Dark2 .q1-4{fill:rgb(217,95,2)}
+.Dark2 .q2-4{fill:rgb(117,112,179)}
+.Dark2 .q3-4{fill:rgb(231,41,138)}
+.Dark2 .q0-5{fill:rgb(27,158,119)}
+.Dark2 .q1-5{fill:rgb(217,95,2)}
+.Dark2 .q2-5{fill:rgb(117,112,179)}
+.Dark2 .q3-5{fill:rgb(231,41,138)}
+.Dark2 .q4-5{fill:rgb(102,166,30)}
+.Dark2 .q0-6{fill:rgb(27,158,119)}
+.Dark2 .q1-6{fill:rgb(217,95,2)}
+.Dark2 .q2-6{fill:rgb(117,112,179)}
+.Dark2 .q3-6{fill:rgb(231,41,138)}
+.Dark2 .q4-6{fill:rgb(102,166,30)}
+.Dark2 .q5-6{fill:rgb(230,171,2)}
+.Dark2 .q0-7{fill:rgb(27,158,119)}
+.Dark2 .q1-7{fill:rgb(217,95,2)}
+.Dark2 .q2-7{fill:rgb(117,112,179)}
+.Dark2 .q3-7{fill:rgb(231,41,138)}
+.Dark2 .q4-7{fill:rgb(102,166,30)}
+.Dark2 .q5-7{fill:rgb(230,171,2)}
+.Dark2 .q6-7{fill:rgb(166,118,29)}
+.Dark2 .q0-8{fill:rgb(27,158,119)}
+.Dark2 .q1-8{fill:rgb(217,95,2)}
+.Dark2 .q2-8{fill:rgb(117,112,179)}
+.Dark2 .q3-8{fill:rgb(231,41,138)}
+.Dark2 .q4-8{fill:rgb(102,166,30)}
+.Dark2 .q5-8{fill:rgb(230,171,2)}
+.Dark2 .q6-8{fill:rgb(166,118,29)}
+.Dark2 .q7-8{fill:rgb(102,102,102)}
+.Paired .q0-3{fill:rgb(166,206,227)}
+.Paired .q1-3{fill:rgb(31,120,180)}
+.Paired .q2-3{fill:rgb(178,223,138)}
+.Paired .q0-4{fill:rgb(166,206,227)}
+.Paired .q1-4{fill:rgb(31,120,180)}
+.Paired .q2-4{fill:rgb(178,223,138)}
+.Paired .q3-4{fill:rgb(51,160,44)}
+.Paired .q0-5{fill:rgb(166,206,227)}
+.Paired .q1-5{fill:rgb(31,120,180)}
+.Paired .q2-5{fill:rgb(178,223,138)}
+.Paired .q3-5{fill:rgb(51,160,44)}
+.Paired .q4-5{fill:rgb(251,154,153)}
+.Paired .q0-6{fill:rgb(166,206,227)}
+.Paired .q1-6{fill:rgb(31,120,180)}
+.Paired .q2-6{fill:rgb(178,223,138)}
+.Paired .q3-6{fill:rgb(51,160,44)}
+.Paired .q4-6{fill:rgb(251,154,153)}
+.Paired .q5-6{fill:rgb(227,26,28)}
+.Paired .q0-7{fill:rgb(166,206,227)}
+.Paired .q1-7{fill:rgb(31,120,180)}
+.Paired .q2-7{fill:rgb(178,223,138)}
+.Paired .q3-7{fill:rgb(51,160,44)}
+.Paired .q4-7{fill:rgb(251,154,153)}
+.Paired .q5-7{fill:rgb(227,26,28)}
+.Paired .q6-7{fill:rgb(253,191,111)}
+.Paired .q0-8{fill:rgb(166,206,227)}
+.Paired .q1-8{fill:rgb(31,120,180)}
+.Paired .q2-8{fill:rgb(178,223,138)}
+.Paired .q3-8{fill:rgb(51,160,44)}
+.Paired .q4-8{fill:rgb(251,154,153)}
+.Paired .q5-8{fill:rgb(227,26,28)}
+.Paired .q6-8{fill:rgb(253,191,111)}
+.Paired .q7-8{fill:rgb(255,127,0)}
+.Paired .q0-9{fill:rgb(166,206,227)}
+.Paired .q1-9{fill:rgb(31,120,180)}
+.Paired .q2-9{fill:rgb(178,223,138)}
+.Paired .q3-9{fill:rgb(51,160,44)}
+.Paired .q4-9{fill:rgb(251,154,153)}
+.Paired .q5-9{fill:rgb(227,26,28)}
+.Paired .q6-9{fill:rgb(253,191,111)}
+.Paired .q7-9{fill:rgb(255,127,0)}
+.Paired .q8-9{fill:rgb(202,178,214)}
+.Paired .q0-10{fill:rgb(166,206,227)}
+.Paired .q1-10{fill:rgb(31,120,180)}
+.Paired .q2-10{fill:rgb(178,223,138)}
+.Paired .q3-10{fill:rgb(51,160,44)}
+.Paired .q4-10{fill:rgb(251,154,153)}
+.Paired .q5-10{fill:rgb(227,26,28)}
+.Paired .q6-10{fill:rgb(253,191,111)}
+.Paired .q7-10{fill:rgb(255,127,0)}
+.Paired .q8-10{fill:rgb(202,178,214)}
+.Paired .q9-10{fill:rgb(106,61,154)}
+.Paired .q0-11{fill:rgb(166,206,227)}
+.Paired .q1-11{fill:rgb(31,120,180)}
+.Paired .q2-11{fill:rgb(178,223,138)}
+.Paired .q3-11{fill:rgb(51,160,44)}
+.Paired .q4-11{fill:rgb(251,154,153)}
+.Paired .q5-11{fill:rgb(227,26,28)}
+.Paired .q6-11{fill:rgb(253,191,111)}
+.Paired .q7-11{fill:rgb(255,127,0)}
+.Paired .q8-11{fill:rgb(202,178,214)}
+.Paired .q9-11{fill:rgb(106,61,154)}
+.Paired .q10-11{fill:rgb(255,255,153)}
+.Paired .q0-12{fill:rgb(166,206,227)}
+.Paired .q1-12{fill:rgb(31,120,180)}
+.Paired .q2-12{fill:rgb(178,223,138)}
+.Paired .q3-12{fill:rgb(51,160,44)}
+.Paired .q4-12{fill:rgb(251,154,153)}
+.Paired .q5-12{fill:rgb(227,26,28)}
+.Paired .q6-12{fill:rgb(253,191,111)}
+.Paired .q7-12{fill:rgb(255,127,0)}
+.Paired .q8-12{fill:rgb(202,178,214)}
+.Paired .q9-12{fill:rgb(106,61,154)}
+.Paired .q10-12{fill:rgb(255,255,153)}
+.Paired .q11-12{fill:rgb(177,89,40)}
+.Pastel1 .q0-3{fill:rgb(251,180,174)}
+.Pastel1 .q1-3{fill:rgb(179,205,227)}
+.Pastel1 .q2-3{fill:rgb(204,235,197)}
+.Pastel1 .q0-4{fill:rgb(251,180,174)}
+.Pastel1 .q1-4{fill:rgb(179,205,227)}
+.Pastel1 .q2-4{fill:rgb(204,235,197)}
+.Pastel1 .q3-4{fill:rgb(222,203,228)}
+.Pastel1 .q0-5{fill:rgb(251,180,174)}
+.Pastel1 .q1-5{fill:rgb(179,205,227)}
+.Pastel1 .q2-5{fill:rgb(204,235,197)}
+.Pastel1 .q3-5{fill:rgb(222,203,228)}
+.Pastel1 .q4-5{fill:rgb(254,217,166)}
+.Pastel1 .q0-6{fill:rgb(251,180,174)}
+.Pastel1 .q1-6{fill:rgb(179,205,227)}
+.Pastel1 .q2-6{fill:rgb(204,235,197)}
+.Pastel1 .q3-6{fill:rgb(222,203,228)}
+.Pastel1 .q4-6{fill:rgb(254,217,166)}
+.Pastel1 .q5-6{fill:rgb(255,255,204)}
+.Pastel1 .q0-7{fill:rgb(251,180,174)}
+.Pastel1 .q1-7{fill:rgb(179,205,227)}
+.Pastel1 .q2-7{fill:rgb(204,235,197)}
+.Pastel1 .q3-7{fill:rgb(222,203,228)}
+.Pastel1 .q4-7{fill:rgb(254,217,166)}
+.Pastel1 .q5-7{fill:rgb(255,255,204)}
+.Pastel1 .q6-7{fill:rgb(229,216,189)}
+.Pastel1 .q0-8{fill:rgb(251,180,174)}
+.Pastel1 .q1-8{fill:rgb(179,205,227)}
+.Pastel1 .q2-8{fill:rgb(204,235,197)}
+.Pastel1 .q3-8{fill:rgb(222,203,228)}
+.Pastel1 .q4-8{fill:rgb(254,217,166)}
+.Pastel1 .q5-8{fill:rgb(255,255,204)}
+.Pastel1 .q6-8{fill:rgb(229,216,189)}
+.Pastel1 .q7-8{fill:rgb(253,218,236)}
+.Pastel1 .q0-9{fill:rgb(251,180,174)}
+.Pastel1 .q1-9{fill:rgb(179,205,227)}
+.Pastel1 .q2-9{fill:rgb(204,235,197)}
+.Pastel1 .q3-9{fill:rgb(222,203,228)}
+.Pastel1 .q4-9{fill:rgb(254,217,166)}
+.Pastel1 .q5-9{fill:rgb(255,255,204)}
+.Pastel1 .q6-9{fill:rgb(229,216,189)}
+.Pastel1 .q7-9{fill:rgb(253,218,236)}
+.Pastel1 .q8-9{fill:rgb(242,242,242)}
+.Pastel2 .q0-3{fill:rgb(179,226,205)}
+.Pastel2 .q1-3{fill:rgb(253,205,172)}
+.Pastel2 .q2-3{fill:rgb(203,213,232)}
+.Pastel2 .q0-4{fill:rgb(179,226,205)}
+.Pastel2 .q1-4{fill:rgb(253,205,172)}
+.Pastel2 .q2-4{fill:rgb(203,213,232)}
+.Pastel2 .q3-4{fill:rgb(244,202,228)}
+.Pastel2 .q0-5{fill:rgb(179,226,205)}
+.Pastel2 .q1-5{fill:rgb(253,205,172)}
+.Pastel2 .q2-5{fill:rgb(203,213,232)}
+.Pastel2 .q3-5{fill:rgb(244,202,228)}
+.Pastel2 .q4-5{fill:rgb(230,245,201)}
+.Pastel2 .q0-6{fill:rgb(179,226,205)}
+.Pastel2 .q1-6{fill:rgb(253,205,172)}
+.Pastel2 .q2-6{fill:rgb(203,213,232)}
+.Pastel2 .q3-6{fill:rgb(244,202,228)}
+.Pastel2 .q4-6{fill:rgb(230,245,201)}
+.Pastel2 .q5-6{fill:rgb(255,242,174)}
+.Pastel2 .q0-7{fill:rgb(179,226,205)}
+.Pastel2 .q1-7{fill:rgb(253,205,172)}
+.Pastel2 .q2-7{fill:rgb(203,213,232)}
+.Pastel2 .q3-7{fill:rgb(244,202,228)}
+.Pastel2 .q4-7{fill:rgb(230,245,201)}
+.Pastel2 .q5-7{fill:rgb(255,242,174)}
+.Pastel2 .q6-7{fill:rgb(241,226,204)}
+.Pastel2 .q0-8{fill:rgb(179,226,205)}
+.Pastel2 .q1-8{fill:rgb(253,205,172)}
+.Pastel2 .q2-8{fill:rgb(203,213,232)}
+.Pastel2 .q3-8{fill:rgb(244,202,228)}
+.Pastel2 .q4-8{fill:rgb(230,245,201)}
+.Pastel2 .q5-8{fill:rgb(255,242,174)}
+.Pastel2 .q6-8{fill:rgb(241,226,204)}
+.Pastel2 .q7-8{fill:rgb(204,204,204)}
+.Set1 .q0-3{fill:rgb(228,26,28)}
+.Set1 .q1-3{fill:rgb(55,126,184)}
+.Set1 .q2-3{fill:rgb(77,175,74)}
+.Set1 .q0-4{fill:rgb(228,26,28)}
+.Set1 .q1-4{fill:rgb(55,126,184)}
+.Set1 .q2-4{fill:rgb(77,175,74)}
+.Set1 .q3-4{fill:rgb(152,78,163)}
+.Set1 .q0-5{fill:rgb(228,26,28)}
+.Set1 .q1-5{fill:rgb(55,126,184)}
+.Set1 .q2-5{fill:rgb(77,175,74)}
+.Set1 .q3-5{fill:rgb(152,78,163)}
+.Set1 .q4-5{fill:rgb(255,127,0)}
+.Set1 .q0-6{fill:rgb(228,26,28)}
+.Set1 .q1-6{fill:rgb(55,126,184)}
+.Set1 .q2-6{fill:rgb(77,175,74)}
+.Set1 .q3-6{fill:rgb(152,78,163)}
+.Set1 .q4-6{fill:rgb(255,127,0)}
+.Set1 .q5-6{fill:rgb(255,255,51)}
+.Set1 .q0-7{fill:rgb(228,26,28)}
+.Set1 .q1-7{fill:rgb(55,126,184)}
+.Set1 .q2-7{fill:rgb(77,175,74)}
+.Set1 .q3-7{fill:rgb(152,78,163)}
+.Set1 .q4-7{fill:rgb(255,127,0)}
+.Set1 .q5-7{fill:rgb(255,255,51)}
+.Set1 .q6-7{fill:rgb(166,86,40)}
+.Set1 .q0-8{fill:rgb(228,26,28)}
+.Set1 .q1-8{fill:rgb(55,126,184)}
+.Set1 .q2-8{fill:rgb(77,175,74)}
+.Set1 .q3-8{fill:rgb(152,78,163)}
+.Set1 .q4-8{fill:rgb(255,127,0)}
+.Set1 .q5-8{fill:rgb(255,255,51)}
+.Set1 .q6-8{fill:rgb(166,86,40)}
+.Set1 .q7-8{fill:rgb(247,129,191)}
+.Set1 .q0-9{fill:rgb(228,26,28)}
+.Set1 .q1-9{fill:rgb(55,126,184)}
+.Set1 .q2-9{fill:rgb(77,175,74)}
+.Set1 .q3-9{fill:rgb(152,78,163)}
+.Set1 .q4-9{fill:rgb(255,127,0)}
+.Set1 .q5-9{fill:rgb(255,255,51)}
+.Set1 .q6-9{fill:rgb(166,86,40)}
+.Set1 .q7-9{fill:rgb(247,129,191)}
+.Set1 .q8-9{fill:rgb(153,153,153)}
+.Set2 .q0-3{fill:rgb(102,194,165)}
+.Set2 .q1-3{fill:rgb(252,141,98)}
+.Set2 .q2-3{fill:rgb(141,160,203)}
+.Set2 .q0-4{fill:rgb(102,194,165)}
+.Set2 .q1-4{fill:rgb(252,141,98)}
+.Set2 .q2-4{fill:rgb(141,160,203)}
+.Set2 .q3-4{fill:rgb(231,138,195)}
+.Set2 .q0-5{fill:rgb(102,194,165)}
+.Set2 .q1-5{fill:rgb(252,141,98)}
+.Set2 .q2-5{fill:rgb(141,160,203)}
+.Set2 .q3-5{fill:rgb(231,138,195)}
+.Set2 .q4-5{fill:rgb(166,216,84)}
+.Set2 .q0-6{fill:rgb(102,194,165)}
+.Set2 .q1-6{fill:rgb(252,141,98)}
+.Set2 .q2-6{fill:rgb(141,160,203)}
+.Set2 .q3-6{fill:rgb(231,138,195)}
+.Set2 .q4-6{fill:rgb(166,216,84)}
+.Set2 .q5-6{fill:rgb(255,217,47)}
+.Set2 .q0-7{fill:rgb(102,194,165)}
+.Set2 .q1-7{fill:rgb(252,141,98)}
+.Set2 .q2-7{fill:rgb(141,160,203)}
+.Set2 .q3-7{fill:rgb(231,138,195)}
+.Set2 .q4-7{fill:rgb(166,216,84)}
+.Set2 .q5-7{fill:rgb(255,217,47)}
+.Set2 .q6-7{fill:rgb(229,196,148)}
+.Set2 .q0-8{fill:rgb(102,194,165)}
+.Set2 .q1-8{fill:rgb(252,141,98)}
+.Set2 .q2-8{fill:rgb(141,160,203)}
+.Set2 .q3-8{fill:rgb(231,138,195)}
+.Set2 .q4-8{fill:rgb(166,216,84)}
+.Set2 .q5-8{fill:rgb(255,217,47)}
+.Set2 .q6-8{fill:rgb(229,196,148)}
+.Set2 .q7-8{fill:rgb(179,179,179)}
+.Set3 .q0-3{fill:rgb(141,211,199)}
+.Set3 .q1-3{fill:rgb(255,255,179)}
+.Set3 .q2-3{fill:rgb(190,186,218)}
+.Set3 .q0-4{fill:rgb(141,211,199)}
+.Set3 .q1-4{fill:rgb(255,255,179)}
+.Set3 .q2-4{fill:rgb(190,186,218)}
+.Set3 .q3-4{fill:rgb(251,128,114)}
+.Set3 .q0-5{fill:rgb(141,211,199)}
+.Set3 .q1-5{fill:rgb(255,255,179)}
+.Set3 .q2-5{fill:rgb(190,186,218)}
+.Set3 .q3-5{fill:rgb(251,128,114)}
+.Set3 .q4-5{fill:rgb(128,177,211)}
+.Set3 .q0-6{fill:rgb(141,211,199)}
+.Set3 .q1-6{fill:rgb(255,255,179)}
+.Set3 .q2-6{fill:rgb(190,186,218)}
+.Set3 .q3-6{fill:rgb(251,128,114)}
+.Set3 .q4-6{fill:rgb(128,177,211)}
+.Set3 .q5-6{fill:rgb(253,180,98)}
+.Set3 .q0-7{fill:rgb(141,211,199)}
+.Set3 .q1-7{fill:rgb(255,255,179)}
+.Set3 .q2-7{fill:rgb(190,186,218)}
+.Set3 .q3-7{fill:rgb(251,128,114)}
+.Set3 .q4-7{fill:rgb(128,177,211)}
+.Set3 .q5-7{fill:rgb(253,180,98)}
+.Set3 .q6-7{fill:rgb(179,222,105)}
+.Set3 .q0-8{fill:rgb(141,211,199)}
+.Set3 .q1-8{fill:rgb(255,255,179)}
+.Set3 .q2-8{fill:rgb(190,186,218)}
+.Set3 .q3-8{fill:rgb(251,128,114)}
+.Set3 .q4-8{fill:rgb(128,177,211)}
+.Set3 .q5-8{fill:rgb(253,180,98)}
+.Set3 .q6-8{fill:rgb(179,222,105)}
+.Set3 .q7-8{fill:rgb(252,205,229)}
+.Set3 .q0-9{fill:rgb(141,211,199)}
+.Set3 .q1-9{fill:rgb(255,255,179)}
+.Set3 .q2-9{fill:rgb(190,186,218)}
+.Set3 .q3-9{fill:rgb(251,128,114)}
+.Set3 .q4-9{fill:rgb(128,177,211)}
+.Set3 .q5-9{fill:rgb(253,180,98)}
+.Set3 .q6-9{fill:rgb(179,222,105)}
+.Set3 .q7-9{fill:rgb(252,205,229)}
+.Set3 .q8-9{fill:rgb(217,217,217)}
+.Set3 .q0-10{fill:rgb(141,211,199)}
+.Set3 .q1-10{fill:rgb(255,255,179)}
+.Set3 .q2-10{fill:rgb(190,186,218)}
+.Set3 .q3-10{fill:rgb(251,128,114)}
+.Set3 .q4-10{fill:rgb(128,177,211)}
+.Set3 .q5-10{fill:rgb(253,180,98)}
+.Set3 .q6-10{fill:rgb(179,222,105)}
+.Set3 .q7-10{fill:rgb(252,205,229)}
+.Set3 .q8-10{fill:rgb(217,217,217)}
+.Set3 .q9-10{fill:rgb(188,128,189)}
+.Set3 .q0-11{fill:rgb(141,211,199)}
+.Set3 .q1-11{fill:rgb(255,255,179)}
+.Set3 .q2-11{fill:rgb(190,186,218)}
+.Set3 .q3-11{fill:rgb(251,128,114)}
+.Set3 .q4-11{fill:rgb(128,177,211)}
+.Set3 .q5-11{fill:rgb(253,180,98)}
+.Set3 .q6-11{fill:rgb(179,222,105)}
+.Set3 .q7-11{fill:rgb(252,205,229)}
+.Set3 .q8-11{fill:rgb(217,217,217)}
+.Set3 .q9-11{fill:rgb(188,128,189)}
+.Set3 .q10-11{fill:rgb(204,235,197)}
+.Set3 .q0-12{fill:rgb(141,211,199)}
+.Set3 .q1-12{fill:rgb(255,255,179)}
+.Set3 .q2-12{fill:rgb(190,186,218)}
+.Set3 .q3-12{fill:rgb(251,128,114)}
+.Set3 .q4-12{fill:rgb(128,177,211)}
+.Set3 .q5-12{fill:rgb(253,180,98)}
+.Set3 .q6-12{fill:rgb(179,222,105)}
+.Set3 .q7-12{fill:rgb(252,205,229)}
+.Set3 .q8-12{fill:rgb(217,217,217)}
+.Set3 .q9-12{fill:rgb(188,128,189)}
+.Set3 .q10-12{fill:rgb(204,235,197)}
+.Set3 .q11-12{fill:rgb(255,237,111)}
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/colorbrewer.js b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/colorbrewer.js
new file mode 100644
index 0000000..2295527
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/colorbrewer/colorbrewer.js
@@ -0,0 +1,302 @@
+// This product includes color specifications and designs developed by Cynthia Brewer (http://colorbrewer.org/).
+var colorbrewer = {YlGn: {
+3: ["#f7fcb9","#addd8e","#31a354"],
+4: ["#ffffcc","#c2e699","#78c679","#238443"],
+5: ["#ffffcc","#c2e699","#78c679","#31a354","#006837"],
+6: ["#ffffcc","#d9f0a3","#addd8e","#78c679","#31a354","#006837"],
+7: ["#ffffcc","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],
+8: ["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#005a32"],
+9: ["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"]
+},YlGnBu: {
+3: ["#edf8b1","#7fcdbb","#2c7fb8"],
+4: ["#ffffcc","#a1dab4","#41b6c4","#225ea8"],
+5: ["#ffffcc","#a1dab4","#41b6c4","#2c7fb8","#253494"],
+6: ["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#2c7fb8","#253494"],
+7: ["#ffffcc","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],
+8: ["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#0c2c84"],
+9: ["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"]
+},GnBu: {
+3: ["#e0f3db","#a8ddb5","#43a2ca"],
+4: ["#f0f9e8","#bae4bc","#7bccc4","#2b8cbe"],
+5: ["#f0f9e8","#bae4bc","#7bccc4","#43a2ca","#0868ac"],
+6: ["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#43a2ca","#0868ac"],
+7: ["#f0f9e8","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],
+8: ["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#08589e"],
+9: ["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"]
+},BuGn: {
+3: ["#e5f5f9","#99d8c9","#2ca25f"],
+4: ["#edf8fb","#b2e2e2","#66c2a4","#238b45"],
+5: ["#edf8fb","#b2e2e2","#66c2a4","#2ca25f","#006d2c"],
+6: ["#edf8fb","#ccece6","#99d8c9","#66c2a4","#2ca25f","#006d2c"],
+7: ["#edf8fb","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],
+8: ["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#005824"],
+9: ["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"]
+},PuBuGn: {
+3: ["#ece2f0","#a6bddb","#1c9099"],
+4: ["#f6eff7","#bdc9e1","#67a9cf","#02818a"],
+5: ["#f6eff7","#bdc9e1","#67a9cf","#1c9099","#016c59"],
+6: ["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#1c9099","#016c59"],
+7: ["#f6eff7","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],
+8: ["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016450"],
+9: ["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"]
+},PuBu: {
+3: ["#ece7f2","#a6bddb","#2b8cbe"],
+4: ["#f1eef6","#bdc9e1","#74a9cf","#0570b0"],
+5: ["#f1eef6","#bdc9e1","#74a9cf","#2b8cbe","#045a8d"],
+6: ["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#2b8cbe","#045a8d"],
+7: ["#f1eef6","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],
+8: ["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#034e7b"],
+9: ["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"]
+},BuPu: {
+3: ["#e0ecf4","#9ebcda","#8856a7"],
+4: ["#edf8fb","#b3cde3","#8c96c6","#88419d"],
+5: ["#edf8fb","#b3cde3","#8c96c6","#8856a7","#810f7c"],
+6: ["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8856a7","#810f7c"],
+7: ["#edf8fb","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],
+8: ["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#6e016b"],
+9: ["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"]
+},RdPu: {
+3: ["#fde0dd","#fa9fb5","#c51b8a"],
+4: ["#feebe2","#fbb4b9","#f768a1","#ae017e"],
+5: ["#feebe2","#fbb4b9","#f768a1","#c51b8a","#7a0177"],
+6: ["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#c51b8a","#7a0177"],
+7: ["#feebe2","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],
+8: ["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177"],
+9: ["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"]
+},PuRd: {
+3: ["#e7e1ef","#c994c7","#dd1c77"],
+4: ["#f1eef6","#d7b5d8","#df65b0","#ce1256"],
+5: ["#f1eef6","#d7b5d8","#df65b0","#dd1c77","#980043"],
+6: ["#f1eef6","#d4b9da","#c994c7","#df65b0","#dd1c77","#980043"],
+7: ["#f1eef6","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],
+8: ["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#91003f"],
+9: ["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"]
+},OrRd: {
+3: ["#fee8c8","#fdbb84","#e34a33"],
+4: ["#fef0d9","#fdcc8a","#fc8d59","#d7301f"],
+5: ["#fef0d9","#fdcc8a","#fc8d59","#e34a33","#b30000"],
+6: ["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#e34a33","#b30000"],
+7: ["#fef0d9","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],
+8: ["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#990000"],
+9: ["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"]
+},YlOrRd: {
+3: ["#ffeda0","#feb24c","#f03b20"],
+4: ["#ffffb2","#fecc5c","#fd8d3c","#e31a1c"],
+5: ["#ffffb2","#fecc5c","#fd8d3c","#f03b20","#bd0026"],
+6: ["#ffffb2","#fed976","#feb24c","#fd8d3c","#f03b20","#bd0026"],
+7: ["#ffffb2","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],
+8: ["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#b10026"],
+9: ["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"]
+},YlOrBr: {
+3: ["#fff7bc","#fec44f","#d95f0e"],
+4: ["#ffffd4","#fed98e","#fe9929","#cc4c02"],
+5: ["#ffffd4","#fed98e","#fe9929","#d95f0e","#993404"],
+6: ["#ffffd4","#fee391","#fec44f","#fe9929","#d95f0e","#993404"],
+7: ["#ffffd4","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],
+8: ["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#8c2d04"],
+9: ["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"]
+},Purples: {
+3: ["#efedf5","#bcbddc","#756bb1"],
+4: ["#f2f0f7","#cbc9e2","#9e9ac8","#6a51a3"],
+5: ["#f2f0f7","#cbc9e2","#9e9ac8","#756bb1","#54278f"],
+6: ["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#756bb1","#54278f"],
+7: ["#f2f0f7","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],
+8: ["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#4a1486"],
+9: ["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"]
+},Blues: {
+3: ["#deebf7","#9ecae1","#3182bd"],
+4: ["#eff3ff","#bdd7e7","#6baed6","#2171b5"],
+5: ["#eff3ff","#bdd7e7","#6baed6","#3182bd","#08519c"],
+6: ["#eff3ff","#c6dbef","#9ecae1","#6baed6","#3182bd","#08519c"],
+7: ["#eff3ff","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],
+8: ["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#084594"],
+9: ["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"]
+},Greens: {
+3: ["#e5f5e0","#a1d99b","#31a354"],
+4: ["#edf8e9","#bae4b3","#74c476","#238b45"],
+5: ["#edf8e9","#bae4b3","#74c476","#31a354","#006d2c"],
+6: ["#edf8e9","#c7e9c0","#a1d99b","#74c476","#31a354","#006d2c"],
+7: ["#edf8e9","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],
+8: ["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#005a32"],
+9: ["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"]
+},Oranges: {
+3: ["#fee6ce","#fdae6b","#e6550d"],
+4: ["#feedde","#fdbe85","#fd8d3c","#d94701"],
+5: ["#feedde","#fdbe85","#fd8d3c","#e6550d","#a63603"],
+6: ["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#e6550d","#a63603"],
+7: ["#feedde","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],
+8: ["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#8c2d04"],
+9: ["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"]
+},Reds: {
+3: ["#fee0d2","#fc9272","#de2d26"],
+4: ["#fee5d9","#fcae91","#fb6a4a","#cb181d"],
+5: ["#fee5d9","#fcae91","#fb6a4a","#de2d26","#a50f15"],
+6: ["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#de2d26","#a50f15"],
+7: ["#fee5d9","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],
+8: ["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#99000d"],
+9: ["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"]
+},Greys: {
+3: ["#f0f0f0","#bdbdbd","#636363"],
+4: ["#f7f7f7","#cccccc","#969696","#525252"],
+5: ["#f7f7f7","#cccccc","#969696","#636363","#252525"],
+6: ["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#636363","#252525"],
+7: ["#f7f7f7","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],
+8: ["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525"],
+9: ["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"]
+},PuOr: {
+3: ["#f1a340","#f7f7f7","#998ec3"],
+4: ["#e66101","#fdb863","#b2abd2","#5e3c99"],
+5: ["#e66101","#fdb863","#f7f7f7","#b2abd2","#5e3c99"],
+6: ["#b35806","#f1a340","#fee0b6","#d8daeb","#998ec3","#542788"],
+7: ["#b35806","#f1a340","#fee0b6","#f7f7f7","#d8daeb","#998ec3","#542788"],
+8: ["#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788"],
+9: ["#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788"],
+10: ["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],
+11: ["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"]
+},BrBG: {
+3: ["#d8b365","#f5f5f5","#5ab4ac"],
+4: ["#a6611a","#dfc27d","#80cdc1","#018571"],
+5: ["#a6611a","#dfc27d","#f5f5f5","#80cdc1","#018571"],
+6: ["#8c510a","#d8b365","#f6e8c3","#c7eae5","#5ab4ac","#01665e"],
+7: ["#8c510a","#d8b365","#f6e8c3","#f5f5f5","#c7eae5","#5ab4ac","#01665e"],
+8: ["#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e"],
+9: ["#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e"],
+10: ["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],
+11: ["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"]
+},PRGn: {
+3: ["#af8dc3","#f7f7f7","#7fbf7b"],
+4: ["#7b3294","#c2a5cf","#a6dba0","#008837"],
+5: ["#7b3294","#c2a5cf","#f7f7f7","#a6dba0","#008837"],
+6: ["#762a83","#af8dc3","#e7d4e8","#d9f0d3","#7fbf7b","#1b7837"],
+7: ["#762a83","#af8dc3","#e7d4e8","#f7f7f7","#d9f0d3","#7fbf7b","#1b7837"],
+8: ["#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837"],
+9: ["#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837"],
+10: ["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],
+11: ["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"]
+},PiYG: {
+3: ["#e9a3c9","#f7f7f7","#a1d76a"],
+4: ["#d01c8b","#f1b6da","#b8e186","#4dac26"],
+5: ["#d01c8b","#f1b6da","#f7f7f7","#b8e186","#4dac26"],
+6: ["#c51b7d","#e9a3c9","#fde0ef","#e6f5d0","#a1d76a","#4d9221"],
+7: ["#c51b7d","#e9a3c9","#fde0ef","#f7f7f7","#e6f5d0","#a1d76a","#4d9221"],
+8: ["#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221"],
+9: ["#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221"],
+10: ["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],
+11: ["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"]
+},RdBu: {
+3: ["#ef8a62","#f7f7f7","#67a9cf"],
+4: ["#ca0020","#f4a582","#92c5de","#0571b0"],
+5: ["#ca0020","#f4a582","#f7f7f7","#92c5de","#0571b0"],
+6: ["#b2182b","#ef8a62","#fddbc7","#d1e5f0","#67a9cf","#2166ac"],
+7: ["#b2182b","#ef8a62","#fddbc7","#f7f7f7","#d1e5f0","#67a9cf","#2166ac"],
+8: ["#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac"],
+9: ["#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac"],
+10: ["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],
+11: ["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"]
+},RdGy: {
+3: ["#ef8a62","#ffffff","#999999"],
+4: ["#ca0020","#f4a582","#bababa","#404040"],
+5: ["#ca0020","#f4a582","#ffffff","#bababa","#404040"],
+6: ["#b2182b","#ef8a62","#fddbc7","#e0e0e0","#999999","#4d4d4d"],
+7: ["#b2182b","#ef8a62","#fddbc7","#ffffff","#e0e0e0","#999999","#4d4d4d"],
+8: ["#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d"],
+9: ["#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d"],
+10: ["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],
+11: ["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"]
+},RdYlBu: {
+3: ["#fc8d59","#ffffbf","#91bfdb"],
+4: ["#d7191c","#fdae61","#abd9e9","#2c7bb6"],
+5: ["#d7191c","#fdae61","#ffffbf","#abd9e9","#2c7bb6"],
+6: ["#d73027","#fc8d59","#fee090","#e0f3f8","#91bfdb","#4575b4"],
+7: ["#d73027","#fc8d59","#fee090","#ffffbf","#e0f3f8","#91bfdb","#4575b4"],
+8: ["#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4"],
+9: ["#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4"],
+10: ["#a50026","#d73027","#f46d43","#fdae61","#fee090","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],
+11: ["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"]
+},Spectral: {
+3: ["#fc8d59","#ffffbf","#99d594"],
+4: ["#d7191c","#fdae61","#abdda4","#2b83ba"],
+5: ["#d7191c","#fdae61","#ffffbf","#abdda4","#2b83ba"],
+6: ["#d53e4f","#fc8d59","#fee08b","#e6f598","#99d594","#3288bd"],
+7: ["#d53e4f","#fc8d59","#fee08b","#ffffbf","#e6f598","#99d594","#3288bd"],
+8: ["#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd"],
+9: ["#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd"],
+10: ["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],
+11: ["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"]
+},RdYlGn: {
+3: ["#fc8d59","#ffffbf","#91cf60"],
+4: ["#d7191c","#fdae61","#a6d96a","#1a9641"],
+5: ["#d7191c","#fdae61","#ffffbf","#a6d96a","#1a9641"],
+6: ["#d73027","#fc8d59","#fee08b","#d9ef8b","#91cf60","#1a9850"],
+7: ["#d73027","#fc8d59","#fee08b","#ffffbf","#d9ef8b","#91cf60","#1a9850"],
+8: ["#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850"],
+9: ["#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850"],
+10: ["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],
+11: ["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"]
+},Accent: {
+3: ["#7fc97f","#beaed4","#fdc086"],
+4: ["#7fc97f","#beaed4","#fdc086","#ffff99"],
+5: ["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0"],
+6: ["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f"],
+7: ["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17"],
+8: ["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"]
+},Dark2: {
+3: ["#1b9e77","#d95f02","#7570b3"],
+4: ["#1b9e77","#d95f02","#7570b3","#e7298a"],
+5: ["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e"],
+6: ["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02"],
+7: ["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d"],
+8: ["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"]
+},Paired: {
+3: ["#a6cee3","#1f78b4","#b2df8a"],
+4: ["#a6cee3","#1f78b4","#b2df8a","#33a02c"],
+5: ["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99"],
+6: ["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c"],
+7: ["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f"],
+8: ["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00"],
+9: ["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6"],
+10: ["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a"],
+11: ["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99"],
+12: ["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"]
+},Pastel1: {
+3: ["#fbb4ae","#b3cde3","#ccebc5"],
+4: ["#fbb4ae","#b3cde3","#ccebc5","#decbe4"],
+5: ["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6"],
+6: ["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc"],
+7: ["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd"],
+8: ["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec"],
+9: ["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]
+},Pastel2: {
+3: ["#b3e2cd","#fdcdac","#cbd5e8"],
+4: ["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4"],
+5: ["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9"],
+6: ["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae"],
+7: ["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc"],
+8: ["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"]
+},Set1: {
+3: ["#e41a1c","#377eb8","#4daf4a"],
+4: ["#e41a1c","#377eb8","#4daf4a","#984ea3"],
+5: ["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00"],
+6: ["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33"],
+7: ["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628"],
+8: ["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf"],
+9: ["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"]
+},Set2: {
+3: ["#66c2a5","#fc8d62","#8da0cb"],
+4: ["#66c2a5","#fc8d62","#8da0cb","#e78ac3"],
+5: ["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854"],
+6: ["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f"],
+7: ["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494"],
+8: ["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"]
+},Set3: {
+3: ["#8dd3c7","#ffffb3","#bebada"],
+4: ["#8dd3c7","#ffffb3","#bebada","#fb8072"],
+5: ["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3"],
+6: ["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462"],
+7: ["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69"],
+8: ["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5"],
+9: ["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9"],
+10: ["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd"],
+11: ["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5"],
+12: ["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"]
+}};
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/geographiclib/LICENSE b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/geographiclib/LICENSE
new file mode 100644
index 0000000..692304c
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/geographiclib/LICENSE
@@ -0,0 +1,23 @@
+This license applies to GeographicLib, versions 1.12 and later.
+
+Copyright (c) 2008-2012, Charles Karney
+
+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.
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/penner/LICENSE b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/penner/LICENSE
new file mode 100644
index 0000000..8429685
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/penner/LICENSE
@@ -0,0 +1,31 @@
+TERMS OF USE - EASING EQUATIONS
+
+Open source under the BSD License.
+
+Copyright 2001 Robert Penner
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+- Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+- 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.
+
+- Neither the name of the author nor the names of contributors may be used to
+ endorse or promote products derived from this software without specific prior
+ written permission.
+
+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.
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/polymaps/LICENSE b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/polymaps/LICENSE
new file mode 100644
index 0000000..df48fc5
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/polymaps/LICENSE
@@ -0,0 +1,28 @@
+Copyright (c) 2010, SimpleGeo and Stamen Design
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+* 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.
+
+* Neither the name of SimpleGeo nor the names of its contributors may be used
+ to endorse or promote products derived from this software without specific
+ prior written permission.
+
+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 SIMPLEGEO 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.
+
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/protovis/LICENSE b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/protovis/LICENSE
new file mode 100644
index 0000000..4c6e405
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/protovis/LICENSE
@@ -0,0 +1,27 @@
+Copyright (c) 2010, Stanford Visualization Group
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+* 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.
+
+* Neither the name of Stanford University nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+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.
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/rhill-voronoi/LICENSE b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/rhill-voronoi/LICENSE
new file mode 100644
index 0000000..2be40c3
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/rhill-voronoi/LICENSE
@@ -0,0 +1,23 @@
+Copyright (C) 2010-2013 Raymond Hill
+https://github.com/gorhill/Javascript-Voronoi
+
+Licensed under The MIT License
+http://en.wikipedia.org/wiki/MIT_License
+
+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. \ No newline at end of file
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/LICENSE b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/LICENSE
new file mode 100644
index 0000000..a59d17e
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/LICENSE
@@ -0,0 +1,26 @@
+Copyright (c) 2011, Jason Davies
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+ * 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.
+
+ * The name Jason Davies may not be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+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 JASON DAVIES 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.
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.js b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.js
new file mode 100644
index 0000000..2f5556a
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.js
@@ -0,0 +1,225 @@
+(function(){science = {version: "1.7.0"}; // semver
+science.ascending = function(a, b) {
+ return a - b;
+};
+// Euler's constant.
+science.EULER = .5772156649015329;
+// Compute exp(x) - 1 accurately for small x.
+science.expm1 = function(x) {
+ return (x < 1e-5 && x > -1e-5) ? x + .5 * x * x : Math.exp(x) - 1;
+};
+science.functor = function(v) {
+ return typeof v === "function" ? v : function() { return v; };
+};
+// Based on:
+// http://www.johndcook.com/blog/2010/06/02/whats-so-hard-about-finding-a-hypotenuse/
+science.hypot = function(x, y) {
+ x = Math.abs(x);
+ y = Math.abs(y);
+ var max,
+ min;
+ if (x > y) { max = x; min = y; }
+ else { max = y; min = x; }
+ var r = min / max;
+ return max * Math.sqrt(1 + r * r);
+};
+science.quadratic = function() {
+ var complex = false;
+
+ function quadratic(a, b, c) {
+ var d = b * b - 4 * a * c;
+ if (d > 0) {
+ d = Math.sqrt(d) / (2 * a);
+ return complex
+ ? [{r: -b - d, i: 0}, {r: -b + d, i: 0}]
+ : [-b - d, -b + d];
+ } else if (d === 0) {
+ d = -b / (2 * a);
+ return complex ? [{r: d, i: 0}] : [d];
+ } else {
+ if (complex) {
+ d = Math.sqrt(-d) / (2 * a);
+ return [
+ {r: -b, i: -d},
+ {r: -b, i: d}
+ ];
+ }
+ return [];
+ }
+ }
+
+ quadratic.complex = function(x) {
+ if (!arguments.length) return complex;
+ complex = x;
+ return quadratic;
+ };
+
+ return quadratic;
+};
+// Constructs a multi-dimensional array filled with zeroes.
+science.zeroes = function(n) {
+ var i = -1,
+ a = [];
+ if (arguments.length === 1)
+ while (++i < n)
+ a[i] = 0;
+ else
+ while (++i < n)
+ a[i] = science.zeroes.apply(
+ this, Array.prototype.slice.call(arguments, 1));
+ return a;
+};
+science.vector = {};
+science.vector.cross = function(a, b) {
+ // TODO how to handle non-3D vectors?
+ // TODO handle 7D vectors?
+ return [
+ a[1] * b[2] - a[2] * b[1],
+ a[2] * b[0] - a[0] * b[2],
+ a[0] * b[1] - a[1] * b[0]
+ ];
+};
+science.vector.dot = function(a, b) {
+ var s = 0,
+ i = -1,
+ n = Math.min(a.length, b.length);
+ while (++i < n) s += a[i] * b[i];
+ return s;
+};
+science.vector.length = function(p) {
+ return Math.sqrt(science.vector.dot(p, p));
+};
+science.vector.normalize = function(p) {
+ var length = science.vector.length(p);
+ return p.map(function(d) { return d / length; });
+};
+// 4x4 matrix determinant.
+science.vector.determinant = function(matrix) {
+ var m = matrix[0].concat(matrix[1]).concat(matrix[2]).concat(matrix[3]);
+ return (
+ m[12] * m[9] * m[6] * m[3] - m[8] * m[13] * m[6] * m[3] -
+ m[12] * m[5] * m[10] * m[3] + m[4] * m[13] * m[10] * m[3] +
+ m[8] * m[5] * m[14] * m[3] - m[4] * m[9] * m[14] * m[3] -
+ m[12] * m[9] * m[2] * m[7] + m[8] * m[13] * m[2] * m[7] +
+ m[12] * m[1] * m[10] * m[7] - m[0] * m[13] * m[10] * m[7] -
+ m[8] * m[1] * m[14] * m[7] + m[0] * m[9] * m[14] * m[7] +
+ m[12] * m[5] * m[2] * m[11] - m[4] * m[13] * m[2] * m[11] -
+ m[12] * m[1] * m[6] * m[11] + m[0] * m[13] * m[6] * m[11] +
+ m[4] * m[1] * m[14] * m[11] - m[0] * m[5] * m[14] * m[11] -
+ m[8] * m[5] * m[2] * m[15] + m[4] * m[9] * m[2] * m[15] +
+ m[8] * m[1] * m[6] * m[15] - m[0] * m[9] * m[6] * m[15] -
+ m[4] * m[1] * m[10] * m[15] + m[0] * m[5] * m[10] * m[15]);
+};
+// Performs in-place Gauss-Jordan elimination.
+//
+// Based on Jarno Elonen's Python version (public domain):
+// http://elonen.iki.fi/code/misc-notes/python-gaussj/index.html
+science.vector.gaussjordan = function(m, eps) {
+ if (!eps) eps = 1e-10;
+
+ var h = m.length,
+ w = m[0].length,
+ y = -1,
+ y2,
+ x;
+
+ while (++y < h) {
+ var maxrow = y;
+
+ // Find max pivot.
+ y2 = y; while (++y2 < h) {
+ if (Math.abs(m[y2][y]) > Math.abs(m[maxrow][y]))
+ maxrow = y2;
+ }
+
+ // Swap.
+ var tmp = m[y];
+ m[y] = m[maxrow];
+ m[maxrow] = tmp;
+
+ // Singular?
+ if (Math.abs(m[y][y]) <= eps) return false;
+
+ // Eliminate column y.
+ y2 = y; while (++y2 < h) {
+ var c = m[y2][y] / m[y][y];
+ x = y - 1; while (++x < w) {
+ m[y2][x] -= m[y][x] * c;
+ }
+ }
+ }
+
+ // Backsubstitute.
+ y = h; while (--y >= 0) {
+ var c = m[y][y];
+ y2 = -1; while (++y2 < y) {
+ x = w; while (--x >= y) {
+ m[y2][x] -= m[y][x] * m[y2][y] / c;
+ }
+ }
+ m[y][y] /= c;
+ // Normalize row y.
+ x = h - 1; while (++x < w) {
+ m[y][x] /= c;
+ }
+ }
+ return true;
+};
+// Find matrix inverse using Gauss-Jordan.
+science.vector.inverse = function(m) {
+ var n = m.length
+ i = -1;
+
+ // Check if the matrix is square.
+ if (n !== m[0].length) return;
+
+ // Augment with identity matrix I to get AI.
+ m = m.map(function(row, i) {
+ var identity = new Array(n),
+ j = -1;
+ while (++j < n) identity[j] = i === j ? 1 : 0;
+ return row.concat(identity);
+ });
+
+ // Compute IA^-1.
+ science.vector.gaussjordan(m);
+
+ // Remove identity matrix I to get A^-1.
+ while (++i < n) {
+ m[i] = m[i].slice(n);
+ }
+
+ return m;
+};
+science.vector.multiply = function(a, b) {
+ var m = a.length,
+ n = b[0].length,
+ p = b.length,
+ i = -1,
+ j,
+ k;
+ if (p !== a[0].length) throw {"error": "columns(a) != rows(b); " + a[0].length + " != " + p};
+ var ab = new Array(m);
+ while (++i < m) {
+ ab[i] = new Array(n);
+ j = -1; while(++j < n) {
+ var s = 0;
+ k = -1; while (++k < p) s += a[i][k] * b[k][j];
+ ab[i][j] = s;
+ }
+ }
+ return ab;
+};
+science.vector.transpose = function(a) {
+ var m = a.length,
+ n = a[0].length,
+ i = -1,
+ j,
+ b = new Array(n);
+ while (++i < n) {
+ b[i] = new Array(m);
+ j = -1; while (++j < m) b[i][j] = a[j][i];
+ }
+ return b;
+};
+})() \ No newline at end of file
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.lin.js b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.lin.js
new file mode 100644
index 0000000..cbdc2ac
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.lin.js
@@ -0,0 +1,27 @@
+(function(){science.lin = {};
+/**
+ * Solves tridiagonal systems of linear equations.
+ *
+ * Source: http://en.wikipedia.org/wiki/Tridiagonal_matrix_algorithm
+ *
+ * @param {number[]} a
+ * @param {number[]} b
+ * @param {number[]} c
+ * @param {number[]} d
+ * @param {number[]} x
+ * @param {number} n
+ */
+science.lin.tridag = function(a, b, c, d, x, n) {
+ var i,
+ m;
+ for (i = 1; i < n; i++) {
+ m = a[i] / b[i - 1];
+ b[i] -= m * c[i - 1];
+ d[i] -= m * d[i - 1];
+ }
+ x[n - 1] = d[n - 1] / b[n - 1];
+ for (i = n - 2; i >= 0; i--) {
+ x[i] = (d[i] - c[i] * x[i + 1]) / b[i];
+ }
+};
+})() \ No newline at end of file
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.lin.min.js b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.lin.min.js
new file mode 100644
index 0000000..a470da4
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.lin.min.js
@@ -0,0 +1 @@
+(function(){science.lin={},science.lin.tridag=function(a,b,c,d,e,f){var g,h;for(g=1;g<f;g++)h=a[g]/b[g-1],b[g]-=h*c[g-1],d[g]-=h*d[g-1];e[f-1]=d[f-1]/b[f-1];for(g=f-2;g>=0;g--)e[g]=(d[g]-c[g]*e[g+1])/b[g]}})() \ No newline at end of file
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.min.js b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.min.js
new file mode 100644
index 0000000..41cf0eb
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.min.js
@@ -0,0 +1 @@
+(function(){science={version:"1.7.0"},science.ascending=function(a,b){return a-b},science.EULER=.5772156649015329,science.expm1=function(a){return a<1e-5&&a>-0.00001?a+.5*a*a:Math.exp(a)-1},science.functor=function(a){return typeof a=="function"?a:function(){return a}},science.hypot=function(a,b){a=Math.abs(a),b=Math.abs(b);var c,d;a>b?(c=a,d=b):(c=b,d=a);var e=d/c;return c*Math.sqrt(1+e*e)},science.quadratic=function(){function b(b,c,d){var e=c*c-4*b*d;if(e>0){e=Math.sqrt(e)/(2*b);return a?[{r:-c-e,i:0},{r:-c+e,i:0}]:[-c-e,-c+e]}if(e===0){e=-c/(2*b);return a?[{r:e,i:0}]:[e]}if(a){e=Math.sqrt(-e)/(2*b);return[{r:-c,i:-e},{r:-c,i:e}]}return[]}var a=!1;b.complex=function(c){if(!arguments.length)return a;a=c;return b};return b},science.zeroes=function(a){var b=-1,c=[];if(arguments.length===1)while(++b<a)c[b]=0;else while(++b<a)c[b]=science.zeroes.apply(this,Array.prototype.slice.call(arguments,1));return c},science.vector={},science.vector.cross=function(a,b){return[a[1]*b[2]-a[2]*b[1],a[2]*b[0]-a[0]*b[2],a[0]*b[1]-a[1]*b[0]]},science.vector.dot=function(a,b){var c=0,d=-1,e=Math.min(a.length,b.length);while(++d<e)c+=a[d]*b[d];return c},science.vector.length=function(a){return Math.sqrt(science.vector.dot(a,a))},science.vector.normalize=function(a){var b=science.vector.length(a);return a.map(function(a){return a/b})},science.vector.determinant=function(a){var b=a[0].concat(a[1]).concat(a[2]).concat(a[3]);return b[12]*b[9]*b[6]*b[3]-b[8]*b[13]*b[6]*b[3]-b[12]*b[5]*b[10]*b[3]+b[4]*b[13]*b[10]*b[3]+b[8]*b[5]*b[14]*b[3]-b[4]*b[9]*b[14]*b[3]-b[12]*b[9]*b[2]*b[7]+b[8]*b[13]*b[2]*b[7]+b[12]*b[1]*b[10]*b[7]-b[0]*b[13]*b[10]*b[7]-b[8]*b[1]*b[14]*b[7]+b[0]*b[9]*b[14]*b[7]+b[12]*b[5]*b[2]*b[11]-b[4]*b[13]*b[2]*b[11]-b[12]*b[1]*b[6]*b[11]+b[0]*b[13]*b[6]*b[11]+b[4]*b[1]*b[14]*b[11]-b[0]*b[5]*b[14]*b[11]-b[8]*b[5]*b[2]*b[15]+b[4]*b[9]*b[2]*b[15]+b[8]*b[1]*b[6]*b[15]-b[0]*b[9]*b[6]*b[15]-b[4]*b[1]*b[10]*b[15]+b[0]*b[5]*b[10]*b[15]},science.vector.gaussjordan=function(a,b){b||(b=1e-10);var c=a.length,d=a[0].length,e=-1,f,g;while(++e<c){var h=e;f=e;while(++f<c)Math.abs(a[f][e])>Math.abs(a[h][e])&&(h=f);var i=a[e];a[e]=a[h],a[h]=i;if(Math.abs(a[e][e])<=b)return!1;f=e;while(++f<c){var j=a[f][e]/a[e][e];g=e-1;while(++g<d)a[f][g]-=a[e][g]*j}}e=c;while(--e>=0){var j=a[e][e];f=-1;while(++f<e){g=d;while(--g>=e)a[f][g]-=a[e][g]*a[f][e]/j}a[e][e]/=j,g=c-1;while(++g<d)a[e][g]/=j}return!0},science.vector.inverse=function(a){var b=a.length;i=-1;if(b===a[0].length){a=a.map(function(a,c){var d=Array(b),e=-1;while(++e<b)d[e]=c===e?1:0;return a.concat(d)}),science.vector.gaussjordan(a);while(++i<b)a[i]=a[i].slice(b);return a}},science.vector.multiply=function(a,b){var c=a.length,d=b[0].length,e=b.length,f=-1,g,h;if(e!==a[0].length)throw{error:"columns(a) != rows(b); "+a[0].length+" != "+e};var i=Array(c);while(++f<c){i[f]=Array(d),g=-1;while(++g<d){var j=0;h=-1;while(++h<e)j+=a[f][h]*b[h][g];i[f][g]=j}}return i},science.vector.transpose=function(a){var b=a.length,c=a[0].length,d=-1,e,f=Array(c);while(++d<c){f[d]=Array(b),e=-1;while(++e<b)f[d][e]=a[e][d]}return f}})() \ No newline at end of file
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.stats.js b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.stats.js
new file mode 100644
index 0000000..d98df12
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.stats.js
@@ -0,0 +1,720 @@
+(function(){science.stats = {};
+// Bandwidth selectors for Gaussian kernels.
+// Based on R's implementations in `stats.bw`.
+science.stats.bandwidth = {
+
+ // Silverman, B. W. (1986) Density Estimation. London: Chapman and Hall.
+ nrd0: function(x) {
+ var hi = Math.sqrt(science.stats.variance(x));
+ if (!(lo = Math.min(hi, science.stats.iqr(x) / 1.34)))
+ (lo = hi) || (lo = Math.abs(x[1])) || (lo = 1);
+ return .9 * lo * Math.pow(x.length, -.2);
+ },
+
+ // Scott, D. W. (1992) Multivariate Density Estimation: Theory, Practice, and
+ // Visualization. Wiley.
+ nrd: function(x) {
+ var h = science.stats.iqr(x) / 1.34;
+ return 1.06 * Math.min(Math.sqrt(science.stats.variance(x)), h)
+ * Math.pow(x.length, -1/5);
+ }
+};
+science.stats.distance = {
+ euclidean: function(a, b) {
+ var n = a.length,
+ i = -1,
+ s = 0,
+ x;
+ while (++i < n) {
+ x = a[i] - b[i];
+ s += x * x;
+ }
+ return Math.sqrt(s);
+ },
+ manhattan: function(a, b) {
+ var n = a.length,
+ i = -1,
+ s = 0;
+ while (++i < n) s += Math.abs(a[i] - b[i]);
+ return s;
+ },
+ minkowski: function(p) {
+ return function(a, b) {
+ var n = a.length,
+ i = -1,
+ s = 0;
+ while (++i < n) s += Math.pow(Math.abs(a[i] - b[i]), p);
+ return Math.pow(s, 1 / p);
+ };
+ },
+ chebyshev: function(a, b) {
+ var n = a.length,
+ i = -1,
+ max = 0,
+ x;
+ while (++i < n) {
+ x = Math.abs(a[i] - b[i]);
+ if (x > max) max = x;
+ }
+ return max;
+ },
+ hamming: function(a, b) {
+ var n = a.length,
+ i = -1,
+ d = 0;
+ while (++i < n) if (a[i] !== b[i]) d++;
+ return d;
+ },
+ jaccard: function(a, b) {
+ var n = a.length,
+ i = -1,
+ s = 0;
+ while (++i < n) if (a[i] === b[i]) s++;
+ return s / n;
+ },
+ braycurtis: function(a, b) {
+ var n = a.length,
+ i = -1,
+ s0 = 0,
+ s1 = 0,
+ ai,
+ bi;
+ while (++i < n) {
+ ai = a[i];
+ bi = b[i];
+ s0 += Math.abs(ai - bi);
+ s1 += Math.abs(ai + bi);
+ }
+ return s0 / s1;
+ }
+};
+// Based on implementation in http://picomath.org/.
+science.stats.erf = function(x) {
+ var a1 = 0.254829592,
+ a2 = -0.284496736,
+ a3 = 1.421413741,
+ a4 = -1.453152027,
+ a5 = 1.061405429,
+ p = 0.3275911;
+
+ // Save the sign of x
+ var sign = x < 0 ? -1 : 1;
+ if (x < 0) {
+ sign = -1;
+ x = -x;
+ }
+
+ // A&S formula 7.1.26
+ var t = 1 / (1 + p * x);
+ return sign * (
+ 1 - (((((a5 * t + a4) * t) + a3) * t + a2) * t + a1)
+ * t * Math.exp(-x * x));
+};
+science.stats.phi = function(x) {
+ return .5 * (1 + science.stats.erf(x / Math.SQRT2));
+};
+// See <http://en.wikipedia.org/wiki/Kernel_(statistics)>.
+science.stats.kernel = {
+ uniform: function(u) {
+ if (u <= 1 && u >= -1) return .5;
+ return 0;
+ },
+ triangular: function(u) {
+ if (u <= 1 && u >= -1) return 1 - Math.abs(u);
+ return 0;
+ },
+ epanechnikov: function(u) {
+ if (u <= 1 && u >= -1) return .75 * (1 - u * u);
+ return 0;
+ },
+ quartic: function(u) {
+ if (u <= 1 && u >= -1) {
+ var tmp = 1 - u * u;
+ return (15 / 16) * tmp * tmp;
+ }
+ return 0;
+ },
+ triweight: function(u) {
+ if (u <= 1 && u >= -1) {
+ var tmp = 1 - u * u;
+ return (35 / 32) * tmp * tmp * tmp;
+ }
+ return 0;
+ },
+ gaussian: function(u) {
+ return 1 / Math.sqrt(2 * Math.PI) * Math.exp(-.5 * u * u);
+ },
+ cosine: function(u) {
+ if (u <= 1 && u >= -1) return Math.PI / 4 * Math.cos(Math.PI / 2 * u);
+ return 0;
+ }
+};
+// http://exploringdata.net/den_trac.htm
+science.stats.kde = function() {
+ var kernel = science.stats.kernel.gaussian,
+ sample = [],
+ bandwidth = science.stats.bandwidth.nrd;
+
+ function kde(points, i) {
+ var bw = bandwidth.call(this, sample);
+ return points.map(function(x) {
+ var i = -1,
+ y = 0,
+ n = sample.length;
+ while (++i < n) {
+ y += kernel((x - sample[i]) / bw);
+ }
+ return [x, y / bw / n];
+ });
+ }
+
+ kde.kernel = function(x) {
+ if (!arguments.length) return kernel;
+ kernel = x;
+ return kde;
+ };
+
+ kde.sample = function(x) {
+ if (!arguments.length) return sample;
+ sample = x;
+ return kde;
+ };
+
+ kde.bandwidth = function(x) {
+ if (!arguments.length) return bandwidth;
+ bandwidth = science.functor(x);
+ return kde;
+ };
+
+ return kde;
+};
+// Based on figue implementation by Jean-Yves Delort.
+// http://code.google.com/p/figue/
+science.stats.kmeans = function() {
+ var distance = science.stats.distance.euclidean,
+ maxIterations = 1000,
+ k = 1;
+
+ function kmeans(vectors) {
+ var n = vectors.length,
+ assignments = [],
+ clusterSizes = [],
+ repeat = 1,
+ iterations = 0,
+ centroids = science_stats_kmeansRandom(k, vectors),
+ newCentroids,
+ i,
+ j,
+ x,
+ d,
+ min,
+ best;
+
+ while (repeat && iterations < maxIterations) {
+ // Assignment step.
+ j = -1; while (++j < k) {
+ clusterSizes[j] = 0;
+ }
+
+ i = -1; while (++i < n) {
+ x = vectors[i];
+ min = Infinity;
+ j = -1; while (++j < k) {
+ d = distance.call(this, centroids[j], x);
+ if (d < min) {
+ min = d;
+ best = j;
+ }
+ }
+ clusterSizes[assignments[i] = best]++;
+ }
+
+ // Update centroids step.
+ newCentroids = [];
+ i = -1; while (++i < n) {
+ x = assignments[i];
+ d = newCentroids[x];
+ if (d == null) newCentroids[x] = vectors[i].slice();
+ else {
+ j = -1; while (++j < d.length) {
+ d[j] += vectors[i][j];
+ }
+ }
+ }
+ j = -1; while (++j < k) {
+ x = newCentroids[j];
+ d = 1 / clusterSizes[j];
+ i = -1; while (++i < x.length) x[i] *= d;
+ }
+
+ // Check convergence.
+ repeat = 0;
+ j = -1; while (++j < k) {
+ if (!science_stats_kmeansCompare(newCentroids[j], centroids[j])) {
+ repeat = 1;
+ break;
+ }
+ }
+ centroids = newCentroids;
+ iterations++;
+ }
+ return {assignments: assignments, centroids: centroids};
+ }
+
+ kmeans.k = function(x) {
+ if (!arguments.length) return k;
+ k = x;
+ return kmeans;
+ };
+
+ kmeans.distance = function(x) {
+ if (!arguments.length) return distance;
+ distance = x;
+ return kmeans;
+ };
+
+ return kmeans;
+};
+
+function science_stats_kmeansCompare(a, b) {
+ if (!a || !b || a.length !== b.length) return false;
+ var n = a.length,
+ i = -1;
+ while (++i < n) if (a[i] !== b[i]) return false;
+ return true;
+}
+
+// Returns an array of k distinct vectors randomly selected from the input
+// array of vectors. Returns null if k > n or if there are less than k distinct
+// objects in vectors.
+function science_stats_kmeansRandom(k, vectors) {
+ var n = vectors.length;
+ if (k > n) return null;
+
+ var selected_vectors = [];
+ var selected_indices = [];
+ var tested_indices = {};
+ var tested = 0;
+ var selected = 0;
+ var i,
+ vector,
+ select;
+
+ while (selected < k) {
+ if (tested === n) return null;
+
+ var random_index = Math.floor(Math.random() * n);
+ if (random_index in tested_indices) continue;
+
+ tested_indices[random_index] = 1;
+ tested++;
+ vector = vectors[random_index];
+ select = true;
+ for (i = 0; i < selected; i++) {
+ if (science_stats_kmeansCompare(vector, selected_vectors[i])) {
+ select = false;
+ break;
+ }
+ }
+ if (select) {
+ selected_vectors[selected] = vector;
+ selected_indices[selected] = random_index;
+ selected++;
+ }
+ }
+ return selected_vectors;
+}
+science.stats.hcluster = function() {
+ var distance = science.stats.distance.euclidean,
+ linkage = "simple"; // simple, complete or average
+
+ function hcluster(vectors) {
+ var n = vectors.length,
+ dMin = [],
+ cSize = [],
+ distMatrix = [],
+ clusters = [],
+ c1,
+ c2,
+ c1Cluster,
+ c2Cluster,
+ p,
+ root,
+ i,
+ j;
+
+ // Initialise distance matrix and vector of closest clusters.
+ i = -1; while (++i < n) {
+ dMin[i] = 0;
+ distMatrix[i] = [];
+ j = -1; while (++j < n) {
+ distMatrix[i][j] = i === j ? Infinity : distance(vectors[i] , vectors[j]);
+ if (distMatrix[i][dMin[i]] > distMatrix[i][j]) dMin[i] = j;
+ }
+ }
+
+ // create leaves of the tree
+ i = -1; while (++i < n) {
+ clusters[i] = [];
+ clusters[i][0] = {
+ left: null,
+ right: null,
+ dist: 0,
+ centroid: vectors[i],
+ size: 1,
+ depth: 0
+ };
+ cSize[i] = 1;
+ }
+
+ // Main loop
+ for (p = 0; p < n-1; p++) {
+ // find the closest pair of clusters
+ c1 = 0;
+ for (i = 0; i < n; i++) {
+ if (distMatrix[i][dMin[i]] < distMatrix[c1][dMin[c1]]) c1 = i;
+ }
+ c2 = dMin[c1];
+
+ // create node to store cluster info
+ c1Cluster = clusters[c1][0];
+ c2Cluster = clusters[c2][0];
+
+ newCluster = {
+ left: c1Cluster,
+ right: c2Cluster,
+ dist: distMatrix[c1][c2],
+ centroid: calculateCentroid(c1Cluster.size, c1Cluster.centroid,
+ c2Cluster.size, c2Cluster.centroid),
+ size: c1Cluster.size + c2Cluster.size,
+ depth: 1 + Math.max(c1Cluster.depth, c2Cluster.depth)
+ };
+ clusters[c1].splice(0, 0, newCluster);
+ cSize[c1] += cSize[c2];
+
+ // overwrite row c1 with respect to the linkage type
+ for (j = 0; j < n; j++) {
+ switch (linkage) {
+ case "single":
+ if (distMatrix[c1][j] > distMatrix[c2][j])
+ distMatrix[j][c1] = distMatrix[c1][j] = distMatrix[c2][j];
+ break;
+ case "complete":
+ if (distMatrix[c1][j] < distMatrix[c2][j])
+ distMatrix[j][c1] = distMatrix[c1][j] = distMatrix[c2][j];
+ break;
+ case "average":
+ distMatrix[j][c1] = distMatrix[c1][j] = (cSize[c1] * distMatrix[c1][j] + cSize[c2] * distMatrix[c2][j]) / (cSize[c1] + cSize[j]);
+ break;
+ }
+ }
+ distMatrix[c1][c1] = Infinity;
+
+ // infinity ­out old row c2 and column c2
+ for (i = 0; i < n; i++)
+ distMatrix[i][c2] = distMatrix[c2][i] = Infinity;
+
+ // update dmin and replace ones that previous pointed to c2 to point to c1
+ for (j = 0; j < n; j++) {
+ if (dMin[j] == c2) dMin[j] = c1;
+ if (distMatrix[c1][j] < distMatrix[c1][dMin[c1]]) dMin[c1] = j;
+ }
+
+ // keep track of the last added cluster
+ root = newCluster;
+ }
+
+ return root;
+ }
+
+ hcluster.distance = function(x) {
+ if (!arguments.length) return distance;
+ distance = x;
+ return hcluster;
+ };
+
+ return hcluster;
+};
+
+function calculateCentroid(c1Size, c1Centroid, c2Size, c2Centroid) {
+ var newCentroid = [],
+ newSize = c1Size + c2Size,
+ n = c1Centroid.length,
+ i = -1;
+ while (++i < n) {
+ newCentroid[i] = (c1Size * c1Centroid[i] + c2Size * c2Centroid[i]) / newSize;
+ }
+ return newCentroid;
+}
+science.stats.iqr = function(x) {
+ var quartiles = science.stats.quantiles(x, [.25, .75]);
+ return quartiles[1] - quartiles[0];
+};
+// Based on org.apache.commons.math.analysis.interpolation.LoessInterpolator
+// from http://commons.apache.org/math/
+science.stats.loess = function() {
+ var bandwidth = .3,
+ robustnessIters = 2,
+ accuracy = 1e-12;
+
+ function smooth(xval, yval, weights) {
+ var n = xval.length,
+ i;
+
+ if (n !== yval.length) throw {error: "Mismatched array lengths"};
+ if (n == 0) throw {error: "At least one point required."};
+
+ if (arguments.length < 3) {
+ weights = [];
+ i = -1; while (++i < n) weights[i] = 1;
+ }
+
+ science_stats_loessFiniteReal(xval);
+ science_stats_loessFiniteReal(yval);
+ science_stats_loessFiniteReal(weights);
+ science_stats_loessStrictlyIncreasing(xval);
+
+ if (n == 1) return [yval[0]];
+ if (n == 2) return [yval[0], yval[1]];
+
+ var bandwidthInPoints = Math.floor(bandwidth * n);
+
+ if (bandwidthInPoints < 2) throw {error: "Bandwidth too small."};
+
+ var res = [],
+ residuals = [],
+ robustnessWeights = [];
+
+ // Do an initial fit and 'robustnessIters' robustness iterations.
+ // This is equivalent to doing 'robustnessIters+1' robustness iterations
+ // starting with all robustness weights set to 1.
+ i = -1; while (++i < n) {
+ res[i] = 0;
+ residuals[i] = 0;
+ robustnessWeights[i] = 1;
+ }
+
+ var iter = -1;
+ while (++iter <= robustnessIters) {
+ var bandwidthInterval = [0, bandwidthInPoints - 1];
+ // At each x, compute a local weighted linear regression
+ var x;
+ i = -1; while (++i < n) {
+ x = xval[i];
+
+ // Find out the interval of source points on which
+ // a regression is to be made.
+ if (i > 0) {
+ science_stats_loessUpdateBandwidthInterval(xval, weights, i, bandwidthInterval);
+ }
+
+ var ileft = bandwidthInterval[0],
+ iright = bandwidthInterval[1];
+
+ // Compute the point of the bandwidth interval that is
+ // farthest from x
+ var edge = (xval[i] - xval[ileft]) > (xval[iright] - xval[i]) ? ileft : iright;
+
+ // Compute a least-squares linear fit weighted by
+ // the product of robustness weights and the tricube
+ // weight function.
+ // See http://en.wikipedia.org/wiki/Linear_regression
+ // (section "Univariate linear case")
+ // and http://en.wikipedia.org/wiki/Weighted_least_squares
+ // (section "Weighted least squares")
+ var sumWeights = 0,
+ sumX = 0,
+ sumXSquared = 0,
+ sumY = 0,
+ sumXY = 0,
+ denom = Math.abs(1 / (xval[edge] - x));
+
+ for (var k = ileft; k <= iright; ++k) {
+ var xk = xval[k],
+ yk = yval[k],
+ dist = k < i ? x - xk : xk - x,
+ w = science_stats_loessTricube(dist * denom) * robustnessWeights[k] * weights[k],
+ xkw = xk * w;
+ sumWeights += w;
+ sumX += xkw;
+ sumXSquared += xk * xkw;
+ sumY += yk * w;
+ sumXY += yk * xkw;
+ }
+
+ var meanX = sumX / sumWeights,
+ meanY = sumY / sumWeights,
+ meanXY = sumXY / sumWeights,
+ meanXSquared = sumXSquared / sumWeights;
+
+ var beta = (Math.sqrt(Math.abs(meanXSquared - meanX * meanX)) < accuracy)
+ ? 0 : ((meanXY - meanX * meanY) / (meanXSquared - meanX * meanX));
+
+ var alpha = meanY - beta * meanX;
+
+ res[i] = beta * x + alpha;
+ residuals[i] = Math.abs(yval[i] - res[i]);
+ }
+
+ // No need to recompute the robustness weights at the last
+ // iteration, they won't be needed anymore
+ if (iter === robustnessIters) {
+ break;
+ }
+
+ // Recompute the robustness weights.
+
+ // Find the median residual.
+ var sortedResiduals = residuals.slice();
+ sortedResiduals.sort();
+ var medianResidual = sortedResiduals[Math.floor(n / 2)];
+
+ if (Math.abs(medianResidual) < accuracy)
+ break;
+
+ var arg,
+ w;
+ i = -1; while (++i < n) {
+ arg = residuals[i] / (6 * medianResidual);
+ robustnessWeights[i] = (arg >= 1) ? 0 : ((w = 1 - arg * arg) * w);
+ }
+ }
+
+ return res;
+ }
+
+ smooth.bandwidth = function(x) {
+ if (!arguments.length) return x;
+ bandwidth = x;
+ return smooth;
+ };
+
+ smooth.robustnessIterations = function(x) {
+ if (!arguments.length) return x;
+ robustnessIters = x;
+ return smooth;
+ };
+
+ smooth.accuracy = function(x) {
+ if (!arguments.length) return x;
+ accuracy = x;
+ return smooth;
+ };
+
+ return smooth;
+};
+
+function science_stats_loessFiniteReal(values) {
+ var n = values.length,
+ i = -1;
+
+ while (++i < n) if (!isFinite(values[i])) return false;
+
+ return true;
+}
+
+function science_stats_loessStrictlyIncreasing(xval) {
+ var n = xval.length,
+ i = 0;
+
+ while (++i < n) if (xval[i - 1] >= xval[i]) return false;
+
+ return true;
+}
+
+// Compute the tricube weight function.
+// http://en.wikipedia.org/wiki/Local_regression#Weight_function
+function science_stats_loessTricube(x) {
+ return (x = 1 - x * x * x) * x * x;
+}
+
+// Given an index interval into xval that embraces a certain number of
+// points closest to xval[i-1], update the interval so that it embraces
+// the same number of points closest to xval[i], ignoring zero weights.
+function science_stats_loessUpdateBandwidthInterval(
+ xval, weights, i, bandwidthInterval) {
+
+ var left = bandwidthInterval[0],
+ right = bandwidthInterval[1];
+
+ // The right edge should be adjusted if the next point to the right
+ // is closer to xval[i] than the leftmost point of the current interval
+ var nextRight = science_stats_loessNextNonzero(weights, right);
+ if ((nextRight < xval.length) && (xval[nextRight] - xval[i]) < (xval[i] - xval[left])) {
+ var nextLeft = science_stats_loessNextNonzero(weights, left);
+ bandwidthInterval[0] = nextLeft;
+ bandwidthInterval[1] = nextRight;
+ }
+}
+
+function science_stats_loessNextNonzero(weights, i) {
+ var j = i + 1;
+ while (j < weights.length && weights[j] === 0) j++;
+ return j;
+}
+// Welford's algorithm.
+science.stats.mean = function(x) {
+ var n = x.length;
+ if (n === 0) return NaN;
+ var m = 0,
+ i = -1;
+ while (++i < n) m += (x[i] - m) / (i + 1);
+ return m;
+};
+science.stats.median = function(x) {
+ return science.stats.quantiles(x, [.5])[0];
+};
+science.stats.mode = function(x) {
+ x = x.slice().sort(science.ascending);
+ var mode,
+ n = x.length,
+ i = -1,
+ l = i,
+ last = null,
+ max = 0,
+ tmp,
+ v;
+ while (++i < n) {
+ if ((v = x[i]) !== last) {
+ if ((tmp = i - l) > max) {
+ max = tmp;
+ mode = last;
+ }
+ last = v;
+ l = i;
+ }
+ }
+ return mode;
+};
+// Uses R's quantile algorithm type=7.
+science.stats.quantiles = function(d, quantiles) {
+ d = d.slice().sort(science.ascending);
+ var n_1 = d.length - 1;
+ return quantiles.map(function(q) {
+ if (q === 0) return d[0];
+ else if (q === 1) return d[n_1];
+
+ var index = 1 + q * n_1,
+ lo = Math.floor(index),
+ h = index - lo,
+ a = d[lo - 1];
+
+ return h === 0 ? a : a + h * (d[lo] - a);
+ });
+};
+// Unbiased estimate of a sample's variance.
+// Also known as the sample variance, where the denominator is n - 1.
+science.stats.variance = function(x) {
+ var n = x.length;
+ if (n < 1) return NaN;
+ if (n === 1) return 0;
+ var mean = science.stats.mean(x),
+ i = -1,
+ s = 0;
+ while (++i < n) {
+ var v = x[i] - mean;
+ s += v * v;
+ }
+ return s / (n - 1);
+};
+})() \ No newline at end of file
diff --git a/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.stats.min.js b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.stats.min.js
new file mode 100644
index 0000000..fd69f13
--- /dev/null
+++ b/web/nms-public.gathering.org/old/speedometer/d3-master/lib/science/science.stats.min.js
@@ -0,0 +1 @@
+(function(){function h(a,b){var c=b+1;while(c<a.length&&a[c]===0)c++;return c}function g(a,b,c,d){var e=d[0],f=d[1],g=h(b,f);if(g<a.length&&a[g]-a[c]<a[c]-a[e]){var i=h(b,e);d[0]=i,d[1]=g}}function f(a){return(a=1-a*a*a)*a*a}function e(a){var b=a.length,c=0;while(++c<b)if(a[c-1]>=a[c])return!1;return!0}function d(a){var b=a.length,c=-1;while(++c<b)if(!isFinite(a[c]))return!1;return!0}function c(a,b,c,d){var e=[],f=a+c,g=b.length,h=-1;while(++h<g)e[h]=(a*b[h]+c*d[h])/f;return e}function b(b,c){var d=c.length;if(b>d)return null;var e=[],f=[],g={},h=0,i=0,j,k,l;while(i<b){if(h===d)return null;var m=Math.floor(Math.random()*d);if(m in g)continue;g[m]=1,h++,k=c[m],l=!0;for(j=0;j<i;j++)if(a(k,e[j])){l=!1;break}l&&(e[i]=k,f[i]=m,i++)}return e}function a(a,b){if(!a||!b||a.length!==b.length)return!1;var c=a.length,d=-1;while(++d<c)if(a[d]!==b[d])return!1;return!0}science.stats={},science.stats.bandwidth={nrd0:function(a){var b=Math.sqrt(science.stats.variance(a));(lo=Math.min(b,science.stats.iqr(a)/1.34))||(lo=b)||(lo=Math.abs(a[1]))||(lo=1);return.9*lo*Math.pow(a.length,-0.2)},nrd:function(a){var b=science.stats.iqr(a)/1.34;return 1.06*Math.min(Math.sqrt(science.stats.variance(a)),b)*Math.pow(a.length,-0.2)}},science.stats.distance={euclidean:function(a,b){var c=a.length,d=-1,e=0,f;while(++d<c)f=a[d]-b[d],e+=f*f;return Math.sqrt(e)},manhattan:function(a,b){var c=a.length,d=-1,e=0;while(++d<c)e+=Math.abs(a[d]-b[d]);return e},minkowski:function(a){return function(b,c){var d=b.length,e=-1,f=0;while(++e<d)f+=Math.pow(Math.abs(b[e]-c[e]),a);return Math.pow(f,1/a)}},chebyshev:function(a,b){var c=a.length,d=-1,e=0,f;while(++d<c)f=Math.abs(a[d]-b[d]),f>e&&(e=f);return e},hamming:function(a,b){var c=a.length,d=-1,e=0;while(++d<c)a[d]!==b[d]&&e++;return e},jaccard:function(a,b){var c=a.length,d=-1,e=0;while(++d<c)a[d]===b[d]&&e++;return e/c},braycurtis:function(a,b){var c=a.length,d=-1,e=0,f=0,g,h;while(++d<c)g=a[d],h=b[d],e+=Math.abs(g-h),f+=Math.abs(g+h);return e/f}},science.stats.erf=function(a){var b=.254829592,c=-0.284496736,d=1.421413741,e=-1.453152027,f=1.061405429,g=.3275911,h=a<0?-1:1;a<0&&(h=-1,a=-a);var i=1/(1+g*a);return h*(1-((((f*i+e)*i+d)*i+c)*i+b)*i*Math.exp(-a*a))},science.stats.phi=function(a){return.5*(1+science.stats.erf(a/Math.SQRT2))},science.stats.kernel={uniform:function(a){return a<=1&&a>=-1?.5:0},triangular:function(a){return a<=1&&a>=-1?1-Math.abs(a):0},epanechnikov:function(a){return a<=1&&a>=-1?.75*(1-a*a):0},quartic:function(a){if(a<=1&&a>=-1){var b=1-a*a;return.9375*b*b}return 0},triweight:function(a){if(a<=1&&a>=-1){var b=1-a*a;return 35/32*b*b*b}return 0},gaussian:function(a){return 1/Math.sqrt(2*Math.PI)*Math.exp(-0.5*a*a)},cosine:function(a){return a<=1&&a>=-1?Math.PI/4*Math.cos(Math.PI/2*a):0}},science.stats.kde=function(){function d(d,e){var f=c.call(this,b);return d.map(function(c){var d=-1,e=0,g=b.length;while(++d<g)e+=a((c-b[d])/f);return[c,e/f/g]})}var a=science.stats.kernel.gaussian,b=[],c=science.stats.bandwidth.nrd;d.kernel=function(b){if(!arguments.length)return a;a=b;return d},d.sample=function(a){if(!arguments.length)return b;b=a;return d},d.bandwidth=function(a){if(!arguments.length)return c;c=science.functor(a);return d};return d},science.stats.kmeans=function(){function f(f){var g=f.length,h=[],i=[],j=1,l=0,m=b(e,f),n,o,p,q,r,s,t;while(j&&l<d){p=-1;while(++p<e)i[p]=0;o=-1;while(++o<g){q=f[o],s=Infinity,p=-1;while(++p<e)r=c.call(this,m[p],q),r<s&&(s=r,t=p);i[h[o]=t]++}n=[],o=-1;while(++o<g){q=h[o],r=n[q];if(r==null)n[q]=f[o].slice();else{p=-1;while(++p<r.length)r[p]+=f[o][p]}}p=-1;while(++p<e){q=n[p],r=1/i[p],o=-1;while(++o<q.length)q[o]*=r}j=0,p=-1;while(++p<e)if(!a(n[p],m[p])){j=1;break}m=n,l++}return{assignments:h,centroids:m}}var c=science.stats.distance.euclidean,d=1e3,e=1;f.k=function(a){if(!arguments.length)return e;e=a;return f},f.distance=function(a){if(!arguments.length)return c;c=a;return f};return f},science.stats.hcluster=function(){function d(d){var e=d.length,f=[],g=[],h=[],i=[],j,k,l,m,n,o,p,q;p=-1;while(++p<e){f[p]=0,h[p]=[],q=-1;while(++q<e)h[p][q]=p===q?Infinity:a(d[p],d[q]),h[p][f[p]]>h[p][q]&&(f[p]=q)}p=-1;while(++p<e)i[p]=[],i[p][0]={left:null,right:null,dist:0,centroid:d[p],size:1,depth:0},g[p]=1;for(n=0;n<e-1;n++){j=0;for(p=0;p<e;p++)h[p][f[p]]<h[j][f[j]]&&(j=p);k=f[j],l=i[j][0],m=i[k][0],newCluster={left:l,right:m,dist:h[j][k],centroid:c(l.size,l.centroid,m.size,m.centroid),size:l.size+m.size,depth:1+Math.max(l.depth,m.depth)},i[j].splice(0,0,newCluster),g[j]+=g[k];for(q=0;q<e;q++)switch(b){case"single":h[j][q]>h[k][q]&&(h[q][j]=h[j][q]=h[k][q]);break;case"complete":h[j][q]<h[k][q]&&(h[q][j]=h[j][q]=h[k][q]);break;case"average":h[q][j]=h[j][q]=(g[j]*h[j][q]+g[k]*h[k][q])/(g[j]+g[q])}h[j][j]=Infinity;for(p=0;p<e;p++)h[p][k]=h[k][p]=Infinity;for(q=0;q<e;q++)f[q]==k&&(f[q]=j),h[j][q]<h[j][f[j]]&&(f[j]=q);o=newCluster}return o}var a=science.stats.distance.euclidean,b="simple";d.distance=function(b){if(!arguments.length)return a;a=b;return d};return d},science.stats.iqr=function(a){var b=science.stats.quantiles(a,[.25,.75]);return b[1]-b[0]},science.stats.loess=function(){function h(h,i,j){var k=h.length,l;if(k!==i.length)throw{error:"Mismatched array lengths"};if(k==0)throw{error:"At least one point required."};if(arguments.length<3){j=[],l=-1;while(++l<k)j[l]=1}d(h),d(i),d(j),e(h);if(k==1)return[i[0]];if(k==2)return[i[0],i[1]];var m=Math.floor(a*k);if(m<2)throw{error:"Bandwidth too small."};var n=[],o=[],p=[];l=-1;while(++l<k)n[l]=0,o[l]=0,p[l]=1;var q=-1;while(++q<=b){var r=[0,m-1],s;l=-1;while(++l<k){s=h[l],l>0&&g(h,j,l,r);var t=r[0],u=r[1],v=h[l]-h[t]>h[u]-h[l]?t:u,w=0,x=0,y=0,z=0,A=0,B=Math.abs(1/(h[v]-s));for(var C=t;C<=u;++C){var D=h[C],E=i[C],F=C<l?s-D:D-s,G=f(F*B)*p[C]*j[C],H=D*G;w+=G,x+=H,y+=D*H,z+=E*G,A+=E*H}var I=x/w,J=z/w,K=A/w,L=y/w,M=Math.sqrt(Math.abs(L-I*I))<c?0:(K-I*J)/(L-I*I),N=J-M*I;n[l]=M*s+N,o[l]=Math.abs(i[l]-n[l])}if(q===b)break;var O=o.slice();O.sort();var P=O[Math.floor(k/2)];if(Math.abs(P)<c)break;var Q,G;l=-1;while(++l<k)Q=o[l]/(6*P),p[l]=Q>=1?0:(G=1-Q*Q)*G}return n}var a=.3,b=2,c=1e-12;h.bandwidth=function(b){if(!arguments.length)return b;a=b;return h},h.robustnessIterations=function(a){if(!arguments.length)return a;b=a;return h},h.accuracy=function(a){if(!arguments.length)return a;c=a;return h};return h},science.stats.mean=function(a){var b=a.length;if(b===0)return NaN;var c=0,d=-1;while(++d<b)c+=(a[d]-c)/(d+1);return c},science.stats.median=function(a){return science.stats.quantiles(a,[.5])[0]},science.stats.mode=function(a){a=a.slice().sort(science.ascending);var b,c=a.length,d=-1,e=d,f=null,g=0,h,i;while(++d<c)(i=a[d])!==f&&((h=d-e)>g&&(g=h,b=f),f=i,e=d);return b},science.stats.quantiles=function(a,b){a=a.slice().sort(science.ascending);var c=a.length-1;return b.map(function(b){if(b===0)return a[0];if(b===1)return a[c];var d=1+b*c,e=Math.floor(d),f=d-e,g=a[e-1];return f===0?g:g+f*(a[e]-g)})},science.stats.variance=function(a){var b=a.length;if(b<1)return NaN;if(b===1)return 0;var c=science.stats.mean(a),d=-1,e=0;while(++d<b){var f=a[d]-c;e+=f*f}return e/(b-1)}})() \ No newline at end of file