a
    `0                    @   s  d dl mZmZmZ ze W n ey2   eZY n0 dddddddd	d
dddddddddddddddddddddddd d!d"d#d$d%d%d&d'd(d)d*d*d+d,d-d.d/d0d1d2d3d4d5d6d4d7d8d9d:d;d<d=d>d?d@dAdBdCdDdEdFdEdGdHdIdJdKdLdLdMdNdOdPdQd/dRdSdTdUdVdWdXdYdZd[d\d]d^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~ddddddddddddddddddZdd Zdd Z	g dZ
g dZg dZg dZg dZg dZeed d  edd  edd  edd  edd  edd  edd  Zdd Zg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d¢g dâg dĢg dŢg dƢg dǢg dȢg dɢg dʢg dˢg d̢g d͢g d΢g dϢg dТg dѢg dҢg dӢg dԢg dբg d֢g dעg dآg d٢g dڢg dۢg dܢg dݢg dޢg dߢg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d g dg dg dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d g d!g d"g d#g d$g d%g d&g d'g d(g d)g d*g d+g d,g d-g d.g d/g d0g d1g d2g d3g d4g d5g d6g d7g d8g d9g d:g d;g d<g d=g d>g d?g d@g dAg dBg dCg dDg dEg dFg dGg dHg dIg dJg dKg dLg dMg dNg dOg dPg dQg dRg dSg dTg dUg dVg dWg dXg dYg dZg d[g d\g d]g d^g d_g d`g dag dbg dcg ddg deg dfg dgg dhg dig djg dkg dlg dmg dng dog dpg dqg drg dsg dtg dug dvg dwg dxg dyg dzg d{g d|g d}g d~g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg ZeeZg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d¢g dâg dĢg dŢg dƢg dǢg dȢg dɢg dʢg dˢg d̢g d͢g d΢g dϢg dТg dѢg dҢg dӢg dԢg dբg d֢g dעg dآg d٢g dڢg dۢg dܢg dݢg dޢg dߢg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d g dg dg dg dg dg dg dg dg d	g d
g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg d g d!g d"g d#g d$g d%g d&g d'g d(g d)g d*g d+g d,g d-g d.g d/g d0g d1g d2g d3g d4g d5g d6g d7g d8g d9g d:g d;g d<g d=g d>g d?g d@g dAg dBg dCg dDg dEg dFg dGg dHg dIg dJg dKg dLg dMg dNg dOg dPg dQg dRg dSg dTg dUg dVg dWg dXg dYg dZg d[g d\g d]g d^g d_g d`g dag dbg dcg ddg deg dfg dgg dhg dig djg dkg dlg dmg dng dog dpg dqg drg dsg dtg dug dvg dwg dxg dyg dzg d{g d|g d}g d~g dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg dg ZeeZdddZdS (      )absolute_importdivisionprint_functionz#F0F8FFz#FAEBD7z#00FFFFz#7FFFD4z#F0FFFFz#F5F5DCz#FFE4C4#000000z#FFEBCDz#0000FFz#8A2BE2z#A52A2Az#DEB887z#5F9EA0z#7FFF00z#D2691Ez#FF7F50z#6495EDz#FFF8DCz#DC143Cz#00008Bz#008B8Bz#B8860Bz#A9A9A9z#006400z#BDB76Bz#8B008Bz#556B2Fz#FF8C00z#9932CCz#8B0000z#598556z#E9967Az#8FBC8Fz#483D8Bz#2F4F4Fz#00CED1z#9400D3z#FF1493z#00BFFFz#696969z#1E90FFz#B22222z#FFFAF0z#228B22z#FF00FFz#DCDCDCz#F8F8FFz#FFD700z#DAA520z#808080z#008000z#ADFF2Fz#F0FFF0z#FF69B4z#CD5C5Cz#4B0082z#FFFFF0z#F0E68Cz#E6E6FAz#FFF0F5z#7CFC00z#FFFACDz#ADD8E6z#F08080z#E0FFFFz#FAFAD2z#D3D3D3z#90EE90z#FFB6C1z#BCECACz#FFA07Az#20B2AAz#87CEFAz#778899z#B0C4DEz#FFFFE0z#00FF00z#32CD32z#FAF0E6z#800000z#66CDAAz#0000CDz#BA55D3z#9370DBz#3CB371z#7B68EEz#00FA9Az#48D1CCz#C71585z#191970z#F5FFFAz#FFE4E1z#FFE4B5z#FFDEADz#000080z#FDF5E6z#808000z#6B8E23z#FFA500z#FF4500z#DA70D6z#EEE8AAz#98FB98z#AFEEEEz#DB7093z#FFEFD5z#FFDAB9z#CD853Fz#FFC0CBz#DDA0DDz#B0E0E6z#800080z#FF0000z#BC8F8Fz#4169E1z#8B4513z#87AE73z#FA8072z#FAA460z#2E8B57z#FFF5EEz#A0522Dz#C0C0C0z#87CEEBz#6A5ACDz#708090z#FFFAFAz#00FF7Fz#4682B4z#D2B48Cz#008080z#D8BFD8z#FF6347z#40E0D0z#EE82EEz#F5DEB3z#FFFFFFz#F5F5F5z#FFFF00z#9ACD32)Z	aliceblueZantiquewhiteaquaZ
aquamarineZazureZbeigeZbisqueblackZblanchedalmondZblueZ
bluevioletZbrownZ	burlywoodZ	cadetblueZ
chartreuseZ	chocolateZcoralZcornflowerblueZcornsilkZcrimsonZcyanZdarkblueZdarkcyanZdarkgoldenrodZdarkgray	darkgreenZdarkgreyZ	darkkhakiZdarkmagentaZdarkolivegreen
darkorangeZ
darkorchiddarkredZdarksageZ
darksalmonZdarkseagreenZdarkslateblueZdarkslategrayZdarkslategreyZdarkturquoiseZ
darkvioletZdeeppinkZdeepskyblueZdimgrayZdimgreyZ
dodgerblueZ	firebrickZfloralwhiteZforestgreenZfuchsiaZ	gainsboroZ
ghostwhitegoldZ	goldenrodgraygreenZgreenyellowZgreyZhoneydewZhotpinkZ	indianredZindigoZivoryZkhakiZlavenderZlavenderblushZ	lawngreenZlemonchiffonZ	lightblueZ
lightcoralZ	lightcyanZlightgoldenrodyellowZ	lightgrayZ
lightgreenZ	lightgreyZ	lightpinkZ	lightsageZlightsalmonZlightseagreenZlightskyblueZlightslategrayZlightslategreyZlightsteelblueZlightyellowZlime	limegreenZlinenZmagentamaroonZmediumaquamarineZ
mediumblueZmediumorchidZmediumpurpleZmediumseagreenZmediumslateblueZmediumspringgreenZmediumturquoiseZmediumvioletredZmidnightblueZ	mintcreamZ	mistyroseZmoccasinZnavajowhiteZnavyZoldlaceZoliveZ	olivedraborange	orangeredZorchidZpalegoldenrodZ	palegreenZpaleturquoiseZpalevioletredZ
papayawhipZ	peachpuffZperuZpinkZplumZ
powderblueZpurpleredZ	rosybrownZ	royalbluesaddlebrownZsageZsalmon
sandybrownZseagreenZseashellZsiennaZsilverZskyblueZ	slateblueZ	slategrayZ	slategreyZsnowZspringgreenZ	steelblueZtanZtealZthistleZtomatoZ	turquoiseZvioletZwheatwhiteZ
whitesmokeyellowZyellowgreenc                 C   s~   |  drt| dkstd| d} z6t| dd dt| dd dt| dd dfW S  tyx   tdY n0 dS )zqConvert a color hexcode to an rgb tuple.

    Example
    -------
    >>> rgb('#FFFFFF')
    (255, 255, 255)
    #   zInvalid hex colorN         )
startswithlen
ValueErrorstripintx r#   0lib/python3.9/site-packages/datashader/colors.py
hex_to_rgbX   s    
6r%   c                 C   s   t | tr@| drt| S | tv r0tt|  S td| nFt | trxt| dkrxt	| dk snt
| dkrtdntd| | S )a%  Return a triple representing rgb color.

    Can convert colors by name or hexcode. Passing in a valid rgb tuple is
    idempotent.

    Example
    -------
    >>> rgb('plum')
    (221, 160, 221)
    >>> rgb('#FFFFFF')
    (255, 255, 255)
    >>> rgb((255, 255, 255))
    (255, 255, 255)
    r   zUnknown color: '{0}'   r      zInvalid RGB tuplez$Don't know how to convert {0} to RGB)
isinstance
basestringr   r%   color_lookupr   formattupler   minmax	TypeErrorr!   r#   r#   r$   rgbi   s    


r0   )	r   z#252525z#525252z#737373z#969696z#bdbdbd#d9d9d9z#f0f0f0z#ffffff)
r   r   r
   r   r   r	   r   r   r   r   )	r   r   r   r   r   r   r   r   r   )	z#e41a1cz#377eb8z#4daf4az#984ea3z#ff7f00z#ffff33z#a65628z#f781bfz#999999)z#66c2a5z#fc8d62z#8da0cbz#e78ac3z#a6d854z#ffd92fz#e5c494z#b3b3b3)z#8dd3c7z#ffffb3z#bebadaz#fb8072z#80b1d3z#fdb462z#b3de69z#fccde5r1   z#bc80bdz#ccebc5z#ffed6fr&   r   r      r         	   
   Nc                 C   s   dd | D S )zGiven the data from a Matplotlib colormap as a list of three-item lists in the range 0,1.0,
    convert colors into the range 0,256 and return as a list of tuplesc                 S   s4   g | ],\}}}t |d  t |d  t |d  fqS )   )r    ).0rgbr#   r#   r$   
<listcomp>       z0_mpl_cmdata_to_bokeh_palette.<locals>.<listcomp>r#   )Zcm_datar#   r#   r$   _mpl_cmdata_to_bokeh_palette   s    r>   )gW?gk*.>?g5e?)ga[>b?gT?g3?)g#k?g~[~lb?g]&Ҙ?)gr?grQ-"k?g?)g3FYx?g^f(7s?g߽?)glp?g]@"y?g`?)gT?g?gh4;?)g\?g!6X8I?g; >?)gui?gH.!?g)=Ke?)gd]?gk3?gut\?)g(֓?g?g!o?)gbX?gJzZ?gl?)gzi?g&2s˓?gO}:?)gl#?gD?gPoFW?)gZ?g/fKVE?gҬl?)g!6X8I?gS?g	i?)gPj/?gRxМ?gY?)g8b->?g"1A?gy8?)g=q?gn?gh`ob?)g!?gV-(?g6"?)gGg?gΥ컢?g-2?)g?g2Ƈ˶?g ^?)gsi+I?gY6sHj?g*8 "?)gީ{?gyt?g&VF#W?)gƃ-v?g n/?g6"?)g'O:`?g_EЦ?g[[!?)gP1η?gӁV?g)dq?)g+ƈD?g §?g쉮?8?)g̛õú?g	Ln?gctv28?)gYL?g蹅D?gunڌ?)gI*ݽ?gG[?g@m?)gOjv?g}zV?gr2q ?)gn/i?gҨ6?gnEE?)gj,a?g$>w?gg/?)g:q9?gO<g?gJU?)gй?g7pG?gVCK?)gq?g>$|oЦ?gXyV?)g5??gO8L?gSiT?)g3?g &B?g
.?)g|R?g)]2?g.\sG?)gvz?g() ?gIط?)gj#]?gZ~*O ?g0!?)g&L1A?ga2U0*?gH?)g-AF@#?gbD?g!?)g4)?g/?gqN`:?)gb?gW	3?g۟?)g,?^?gDh?)g	?r?   g[Ӽ?)gB˺?gޑ?g*]?)g"[?gzNz?g?)g?Ŋ?gN?gA{?)g-?gm%?g!T?)g4i?gĐL?g^2?)gο]?g_w?gN)]?)gc]K?gdJ?gVf?)g9$P2?g*nb~?g> Й?)giܛ?g]j~^?gP?)g?gM?gPS?)g-zm?g!?nJ?gn?)gK8?gc)R?g7h>?)g=?gyS
c?gg@5?)g/4i?gFaE|?gI?)gl}
?g6Φ#?gPW\?)g2t?g t//?gJEcl?)gB`"?gEGr?g]m{?)gcKA?g_̖?gK⬈?)g2ou?gH.!?g|i?)giQ?g̚X+?g|ԗ?)gG6u?gX S?g])ʥ?)gt?Pn?g#?gꕲq?)gծ	iA?g8Q?gV?)g&9`W?g*.?gh㈵?)g:?gB]¡?gᛦ?)g[}s?g)TP?g0E?)gl=C8f?g1%?gPi4?)gQJ??gr-Z?g}?)gS*?gNG 7?gcV?)gG
?gdA%?g]?)gdVp?gM(D?gxa?)g˶?gtٸ?g-熦?)g
H<?g%@7n?gp<?)g#?g(_B?gfk}Ж?)gt34?g4HSȕ?g{G?)g;On?g w(?g)@̘?)g1*?go?gX9v?)g?8:?gL?gpi?)gNϻ?gj*޼?g6[?)gyq?gn?g9&L?)gtl?g)dq?gEկt><?)g@-?ggED?g<b*?)gJzZ?g	?g/C?)gVHIO?g/5B?S?gs?)ga9͂?gUMu?gx?)gx[?gH}8g?gr?)g8d?g)?g`ũ?)gDׅ?g?g?)gu7O?gPi>?gjP4`?)geO?go?gRbv?)gƻ#c?g5~$?g0עh[?)gAp?g1е/?gȳ˷>?)g	y?g`uHg`?g$) ?)g75|N?gmmy?g$F?)gcw?gg*#?gG!ɬ?)g+hZbe?g{ds<?gT?)gTTJ?g13/?gY?)g`5!?g+?g{Gz?)g&(L?g'P"?gq4GV?)gϠ?gGߤi?g.0?)g@iQH?gwak?gj	?)g=?g,cC7?gc?)g|R?gd`TR?gW?)gOWw,I?g?gc
8?)gy@e{?gT-?g)t^c?)gЖs)?g(_B?glɪ7?)g>4?gR臭?gxܙ	?)gT ?g6:?gim?)gkHcC?gi<?gR?)g^u?g:TS?g1z?)gc'?gԱJ?gުPMI?)gaMeQ?gǚA?ge3?)glZ)r	?gI?g.|?)gefb:?gl@r?gK?)g\k?g ={.S?g$x?)gS㥛?gGt?gtCSvA?)g9?g,Yf?gv^
?)gԜ?ggs?g*SA?)g+?gypw?g8Z?)gGˁj[?g;vٯ;?g;]?)g1$'?grM΢?g"?)g0?g?g$?)gɬv?g!ɬv?gOT6?)g2 Tq?ggA(?g9}k?)g%$6D?gLNS?gkqQ-?)g$zr?gFXT?gdt@?)g33?g<+i7?gխ?)g/H?gewh?gPl?)g?gV%?gtYb+?)gKT&?g#?g\?)g$ER?gX S?gi>"?)g1x}?gXvM?gy\Tb?)g΋_?gՔd?gDK?)gf?g:?g":v?)g$?gEA?g_%?)g	P'?g.rOW?gN?)g1qP?gDӜ?g1=a?)g	4y?gDkE?gn?)g/1?g1zn+?gx?)gcA?g[t?g0?)gh?gӺj?gA{?)gRy=?gYh4?g/C??)g%Ί>?gS:X?gaxwd?)g{gUId?gE(?gW횐?)g|?g	?gt!V?)g7 !?g)F?gs^?)gW#2?gEИ?gSY?)g)?gmo$?gz?)g^?gx@?g`
+?)gT:?gk6?g捓?)g#\?g3Q?g78?)g6h}?gooD?goa?)g%?gH?gѱJ\?)g10&?g-e?g?,?)g<e5?g@S?gU?)g@z?g@_?gD?)g?gX S?gX?)gy7?gzfl?g&?)g'S?gm}?g):?)gިo?gfI-?gZ{,}?)g	/?g??gk=]?)g/4i?gJ?gl<?)g#Ƥ?giU?gtub?)gC?gIMf?gf+/?)gGJ?g ?gHV?)gaTR'	?gsf?gF@1?)g2 ?gu<?gTf?)gN#-7?gh^`V?gKZϾ?)g˜.M?g?g$>w?)g~b?ga)?gP293?)gڊew?gdS?gO?)g*P?g?gW?)g?gE};l?g?x=?)gX?g?Q?g Sh?)g?g=ByG?g|i?)gL?gI??g! >?)g%??g[~l?gWel?)g&qVDM?gk#]J?gxߢ?)gȯb?g/?g!>@?)g?g66?gTG?)gUMu?go?g/HM?)g%s,?g>$@M-?g!ƨ?)gW8?g*4f?gɪ7U?)g	%qVD?g-?g<Nё\?)g/u;O?gN?gٯ;y?)glY?g%j?g'?)g8db?gxB?O?g~31?)gc#k?gra?gzG?)gIs?gbe4y?gU@?)g{?gd8 ?g,)W?)g0ā?g\4d<?g+,?)gCR?gXWj1x?g0hȘ?)gm5?gNbX9?go,(4?)gnl?g+y?g{E{?)gʆ5?g>,?g3X?)g/C?gAJi?g6?)gps?g v?gs"k?)gk6?g"3?gPdV?)gqǛ?gT㥛 ?g"~?)g!'>?gd1^?gvLݭ?)g2R臭?gQ-"ɛ?gGȮ?)gcZ?g[?gQ?)ggF?N?gpz?g`9z?)g3#?gΧU?gju?)g K?g@ȓ?gelf?)g?߾?gj=&?gݲCÖ?)g͕A?gti?g6,
?)g3?g#FO?g?)gZڊ}?gX S?gxy:W?)gD1uWv?gmē?g:<Ӹ?)gG&jin?g?gah?)gVe?g{{J?gy7?)g4l\?g?gKK?)gK`R?gb?gfba?)gɧG?gA?gI*S?)g+F<?g֍wG?g)?)g<0?g_?g#Di?)gZ)r#?g\?gx #?)gr#D?gAm?gCV#?)g[v?gW2D?gҫJC?)g1?gڧ1?g6u?)gLpv?gƠ?g-2?)gNP?gpY ?gS<?)gOs?gQJ??g?;bF?)gTr?g<E~}?ga?)gխ?g=Ab?gUy?)gzm6Vb?goa?gFq?)gKXU?g[15?g)0?)ga?gNA~6r?gf|?)gwԘs?ge%?g6nf?)g &f?g/?gx'-\V?)gihs[?g#E"?g;jL?)gXR?gcB%U[?gc('UH?)gQcBL?gO Ȓ?g"oI?)gE&H?g\J?guO?)gºH?g4?gJCBY?)gJ/M?g}%/?g1%e?)g$cU?g!p$`?gܙ	s?)g"2b?g(G?g8J^c@?)gpqt?gξ ?g ^E?)gf?gyj?gY&J?)g?g#,*t?g:?)gϜ)?gH5:?g>yX5M?)g]?g=Զa?gz<d?)gCƣT?gn?g$wD?)gm%??g{?gdw?)gۋh;n?gu?g
GJ1?)g,~SX?g0?g7?)g ?g{is?g0"?)g)D/?gNGɫ?gM΢w?)gU2F?gʡE?g¢"N'?)g"q]?goDk?g3z9?)g$~.r?gY/-?ga?)gn/?g_ ?gBĒr?)gEИ?g_:T?g+)T?)g,-X?g?gXİ?)g Й?gSƩ?gwg?)gM?g֬?gne?)g 4?goG8-xѯ?g{K9_?)gдh?g}9]?go
+?)g[y?g;nt˲?g\k?)g *?gl?3?gaN"¿?)ge6?gf?gͮ{+?)gG
?g)Y?gLOXe?)gXC?gWxN?g&?)g)1	?g0q?gzk`?)gm2?g+2: 	?g5&\R?)g)?g'y3M?gO?)gTO?g X4?gN?)gl ?g=?g;2?)g#]?gQ-"?g`9z?)gs?g*?gmR]?)gN#~?g/oe?g?)g;~?g	?gMLbG?)g8
?g>?g1=a?)g,o
?g><KP?gE2?)g,z?g/lV^?g c?)g"ƽ?gp$?g!*C?)g9⪲?g]m5?g w~?)g<X?gz"0?g0fKVE?)gXI?g4ctv?g??)gP?gr#D?g,&?)g>?g&?g=$}Z?)g}V)?gFXT?gLT?)gI?g4i?g;i?)g*P?gw-u?gV'g(?)gW'g(x?g_-?g2?)gƈDe?g73p?gⱟR$?)gݰmQ?g0f?gq9?)gVF#W<?g*Xl:?gfltN?)gDAc&?g8@?gJ^b?)g!q?gup7?g^u?)g"?g?gD?)gl?gNj?g
Ĳ?)g||Bv?g #G:?g~1[?)gN1?gMT#?g-?)gs?g..?gY&?)gۤw?gaod?g	?)g겘|\?g[?gB?)gx@?g?gs?)gՏM#?gD?g:?)gsF?gu?g.?)g(7?gHPs?g-</?)g܂?g ?grm&?)gi7>[?g~8gDi?g].;1?)gS?g<ۤ?gt;?)gCʠ?gJ8?gnkKE?)gV6?guT5A?gAN?)gpaxwd?gh+m?gjW?)gȭI%?gΧUJ?gq_?)g?gk$	?g:Ug?)gB^~?gSD[?gwGo?)gih?g_ ?g(dmlv?)gnP(?gwD?gF0}?)gs/0+?g$+?gT?)g?g`̖p?g0q?)g."j?gVд?gZ`?)gj *?gK9_?gu_ʔ?)gc#?g)^emS<?gԱJ?)gxĬ?g?gLm?)gn?g1v?gǂ L?)gje/?gV{?g	ܺ?)gZ&?g2kMG?gꫫ?)g(?gKxB??g:#J{?)g2: 	v?g?g};l"?)gB:?gf8?gr7֊?)g?g%qVDM?gD?)g3?gY4?gKƼ?)g?g,?g_?)gA"L?gnt?gg)YN?)gL?g56N?gG,?)g*D?gRb?g9@0?)gx'?g-?g>h?)gHMf?gI?gJ({?)g);.?g[tYL?gC.l?)gkv/?goe2?g/u;?)g>ɋL?gҌE?g|eު?)g`;?gAشR?gs69|?)g#*T?gAF?gR~R?)g?g?ܵ?gzȔA?)gwj.7?gf?ypw?)g\sG˵?g|?q ?g?)g;%8?gYQi>?gF6?)goEEN?gLQԙ{?gn?)g2?gN?g
1?)g\?gJ^c@?g&jj?)g?gUe3?ga?)g'?gO[#qp?gO?)gS?g80Qd?gֈ`?)gɍ"?g=|(B?gбJ?)gl?g`?'?gg}1Y?)gm?gy9c?gjH?)gPN?gUt<f?gy?)gx`?g(?gx?)gPv0?g?gi7>?)gGŧ ?gU?gZ(?)gX?gClp?gҌE?)g1zn?g+?g7 ?)g<֌r?g ?g5?)gVj-B?gu#?r@   )gj?g0g+A?gE?)gB?gDi`?gǟlX?)g%?g+]gC~?g#w~?)gfv?gRh?gg;p?)g%<Y?gjGq?g̴++?)g{1*?g1<?g;?)g`i?gRb?gMLb?)g+?gF?g;O ?)gY/r?g};l"3?giUK:?)gt=u?g{M
JQ?g!S?)gfI?gboo?g#?)g҈}?gvöE?g'?)gF?gt~?g-R?)gQ}>?g!?g
0,?)g ?gĭ?g/ި?)g1z?gg?RD?gj?)g{%T?g7:r$?gӝ'?)gK/?gx #B?gz'L?)g ?g!p$`?gh ?)g2Yؿ?g~?gnM-?)gDkE?gkD0.?gzk`?)gKXc?g۠[?ge}?)g Q0?gr߉?g@]u?)g)?g1
Ƿ?gam?)g>
Yݾ?g\?gWBe?)glY?gp\M4?g*g\?)gJ&?gn4R?g&S?)gzV?g>WXp?gVBwI?)gcw?gw?g>-W??)gPmp?glˀ?gADj4?)g(]?g\?g	/)?)gHߠ?g{/?gSG?)g!?gyq?gmU?)gmscz?g	"h$?g:\=?)gO?g?B?gQ9?)g8.?gD`?g
b?)g1?gn+~?gص?)g*7QKs+?gPH?gmTY?)gx'e?g׈`\?g2p?)gr	?gg$B#?g{B?)gV'g(?g4?g6 ?)g3c=?g͋?gӹ?)gdS?g+6+1?g4?)g<If?g闈N?gDum?)g5W?gbiG5l?g@0G[?)g &P?gaTR'?g9x&4I?)gʧǶ8?g|?gPmp"5?)gzp̲?g˃9?gqQ-"?)gR)v4?g6$#g?gō[?)gබ?g~?gAº?)g 	L?g
~?gS?)g?g[d8?gw?)gV%}?g|a2U?gnm?)gOv3?g*kq?gQ}>?)g獓¼?gw?go(|?)gKu?g%s,?gص?)g.+=)?gjI?gR?)gO?g?g)x?)gK?gGS=?gTC?)g1Zd?gzю?gӺ?)g8H-?gj~^7?gߢ?)g1t?gLNS?gU?)gU?gBn?g[d?)gIΣ?gj?gZK )?)gkC8?g&?gdt@?)g;I/?ghwH1?g{_?)g<(A?g	?gɭI%r?)gΉ=?g;?g	Y2?)ghN??g_#I?gHRE?)gTd?g1Z{*?gpt?)g*}?gqo~D?gcTk?)g<?g,^?g(9x&?)g&4I,)w?g0tx?g˚X?)g؁sF?g*dq?g:?)g*w?g@S?gkzPP?)g?g1Bxq?gJOc?)g#?gLT?g혺+?)gYN?gϝ`?gLP÷n?)g?gom?gHξ ?)gTka?gz&?g?)g	l3?g>?g˸?)ge-?g}EV?g(8'0?)g<FzQ?g@m?gk=]?)g2J?gMJ?g.T?)goH'?gQڛ?gp\M4?)gť*m?g
?g~?)gzi ?g>?gH?)g*r9?gF^?gPT6,?)g0a4+?g_ѭ?g@g?)gq?g Q0c
?gsv?)gܡa1Z?g(CUL?gfF??)g+?gd> Й4?g
~b?)gEcl?goDI?gN]?)gNo+?gC;Y]?g368?)gG?g`q?g*F?)g9}=_3?g>7j?g!9?)g쟧?gmyؘ?gɒ9w?)g0(?gTPQ?g:p?)gI#?gt//?g
?)get?g8*7?gX;ۣ?)gpa?gqJ[\?g`;?)gQB?gje/?gȷw?)gj4k?g}F?gui?)g߽?g9?gg+/?)gU?g;э(?gg%?)g0{d?gPi49?ggI-L?)g?g'bdI?g0Xr?)gD+g?gx@Y?gS;Ԗ?)gG9Ma?gWдh?g'kC4?)g"mOT?gd]Fx?g}Yک?)g;O<g?g?g 4J?)g>Ȳ`?gE~?gf! ?)gC6.?gECƣ?g7aA?)gFИI?gzo?gOec?)goꐛa?gǙ&l?gl7?)gݯ|?g?g=ϟ6?)gƥ*mq?gZB>?gf,?)gU2 Tqc?g~b?gy!?)gSs?g9*7QK?g6$?)g\Wo?gGS=?gKU?)gO\e?g-X?g*P?)g4?gŎơ~?g
.?)gpn?gK#?gbE?)gJ_{f?gc	.?gFB[Υ?)gۻ?g)r9?gD/Xn?)gjh?g}eD?g26t??)g1%e?grCQO?g{G	1?)g&?gI}YZ?gG?)g8?g`d?gӅX?)gP2b?g4,F]ko?g@?)g%`?g8ty?g4`?)g9y	?gjt?gMb?)g: U\?g^9S?g2nj?)gG?g唀?gui?)gk)  ?g/?gQ?)g'Q?ggǬ?g$&ݖȹ?)g#?gwg?gFve?)g9B?gUe?g$y?)grmB?g^hH?g ?)g6;Nё?gh?RD?g_=?)gwiai?g({?gj/혺?)giSul.?g_5?g	m9?)gr{?g%Y?gVDׅ?)g5(?gS<?g~[~l?      ?Fc                 C   s8   t |rt| n| }t|}|t|| t||  S )a  
    Given a colormap in the form of a list, such as a Bokeh palette,
    return a version of the colormap reversed if requested, and selecting
    a subset (on a scale 0,1.0) of the elements in the colormap list.

    For instance:

    >>> cmap = ["#000000", "#969696", "#d9d9d9", "#ffffff"]
    >>> colormap_select(cmap,reverse=True)
    ['#ffffff', '#d9d9d9', '#969696', '#000000']
    >>> colormap_select(cmap,0.3,reverse=True)
    ['#d9d9d9', '#969696', '#000000']
    )listreversedr   r    )Zbase_colormapstartendreverseZfullZnumr#   r#   r$   colormap_select  s    rG   )r   rA   F)Z
__future__r   r   r   r)   	NameErrorstrr*   r%   r0   ZGreys9ZHotZ	ElevationZSet1ZSet2ZSet3ZSets1to3r>   Z_inferno_dataZinfernoZ_viridis_dataZviridisrG   r#   r#   r#   r$   <module>   s  
M X      