Initial commit

This commit is contained in:
Kristofers Solo
2022-04-27 11:41:37 +03:00
commit f1d310a07d
700 changed files with 101758 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
/autoload/css_color.vim export-subst
/.gitattributes export-ignore
/README.md export-ignore
/LICENSE export-ignore
/tests export-ignore

View File

@@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2014 Aristotle Pagaltzis
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.

View File

@@ -0,0 +1,16 @@
<h1 align="center">CSS Color</h1>
<div align="center">
A very fast, multi-syntax context-sensitive color name highlighter<br>
<img src="https://raw.githubusercontent.com/ap/vim-css-color/5377c65022ee6d660b898bad954aeea73fa613b8/screenshot.png" width="763">
<sub>
<pre><code># <b>Install</b>: If you use a plugin manager then follow its instructions. Otherwise:
git clone https://github.com/ap/vim-css-color.git ~/.vim/pack/css-color/start/css-color</code></pre>
</sub><br>
</div>
<sub>Inspired
by [Niklas Hofer](http://www.vim.org/scripts/script.php?script_id=2150)
and [Max Vasiliev](https://github.com/skammer/vim-css-color).</sub>

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'cComment,cCommentL,cString,cCppString')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'CfgComment,CfgString')

View File

@@ -0,0 +1,2 @@
let [type, keywords] = expand('%:e') ==? 'cljs' ? ['css', 'extended'] : ['hex', 'none']
call css_color#init(type, keywords, 'clojureComment,clojureString')

View File

@@ -0,0 +1,4 @@
syn match cshCommentColor contained '\(#[^#]*\)\@<=\zs#\x\{3}\%(\x\{3}\)\?\>' containedin=cshComment
call css_color#init( 'hex', 'none'
\, 'cshDblQuote,cshSnglQuote,cshHereDoc,'
\. 'cshCommentColor' )

View File

@@ -0,0 +1 @@
call css_color#init('css', 'extended', 'cssMediaBlock,cssFunction,cssDefinition,cssAttrRegion,cssComment')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'dosiniValue')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'elmLineComment,elmString')

View File

@@ -0,0 +1,3 @@
" https://github.com/dag/vim-fish (and presumably its various forks)
syn match fishCommentColor contained '\(#[^#]*\)\@<=\zs#\x\{3}\%(\x\{3}\)\?\>' containedin=fishComment
call css_color#init( 'hex', 'none', 'fishString,fishCommentColor' )

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'goComment,goString,goRawString')

View File

@@ -0,0 +1,2 @@
" default html syntax should already be including the css syntax
call css_color#init('none', 'none', 'htmlString,htmlCommentPart')

View File

@@ -0,0 +1,4 @@
" see also: i3config.vim for the stock Vim 8.2+ syntax
" Colour => https://github.com/moon-musick/vim-i3-config-syntax
" i3* => https://github.com/PotatoesMaster/i3-vim-syntax
call css_color#init('hex', 'none', 'Colour,i3SimpleString,i3Color1st,i3Color2nd,i3ColorLast')

View File

@@ -0,0 +1,3 @@
" i3ConfigColor => stock Vim syntax and recent https://github.com/mboughaba/i3config.vim
" Color => https://github.com/mboughaba/i3config.vim prior to dff3b177ebaf6aae35591cd4c9c734fff9ed7145
call css_color#init('hex', 'none', 'i3ConfigColor,Color')

View File

@@ -0,0 +1,14 @@
" ft=coffee includes javascript, but mostly sets up own syntax groups
" so until it has specific support there's no point in loading anyway
" and for some reason the W3C syntax color keywords break its highlighting
" (this refers to the https://github.com/kchmck/vim-coffee-script plugin)
if &syntax =~# '\(^\|\.\)coffee\($\|\.\)' | finish | endif
" javaScriptX = default Vim syntax
" jsX = https://github.com/pangloss/vim-javascript
" javascriptX = https://github.com/othree/yajs.vim
call css_color#init('hex', 'extended'
\, 'javaScriptComment,javaScriptLineComment,javaScriptStringS,javaScriptStringD,javaScriptStringT'
\. ',jsComment,jsString,jsTemplateString,jsObjectKeyString,jsObjectStringKey,jsClassStringKey'
\. ',javascriptComment,javascriptLineComment,javascriptLineComment,javascriptString,javascriptTemplate'
\)

View File

@@ -0,0 +1 @@
call css_color#init('css', 'none', 'jsonString')

View File

@@ -0,0 +1,3 @@
" jsx syntax should already be including the javascript and xml syntaxes
" but those only use `hex` parsing; JSX needs `css` for inline CSS styles
call css_color#init('css', 'none', '')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'kittyColor')

View File

@@ -0,0 +1,8 @@
" variable | property | multiline | end-of-line | plugin
" -----------------------+----------------+----------------+-------------+---------
" lessCssAttribute | lessCssComment | lessComment | https://github.com/genoma/vim-less
" lessAttribute | lessCssComment | lessComment | https://github.com/KohPoll/vim-less
" lessVariableValue | lessDefinition | cssComment | lessComment | https://github.com/groenewege/vim-less
" lessVariableDefinition | cssDefinition | cssComment | lessComment | https://github.com/lunaru/vim-less
call css_color#init('css', 'extended', 'lessVariableValue,lessVariableDefinition,lessDefinition,lessCssAttribute,lessAttribute,cssDefinition,cssComment,lessCssComment,lessComment')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'extended', 'moonComment,moonString')

View File

@@ -0,0 +1,2 @@
" https://github.com/LnL7/vim-nix
call css_color#init('hex', 'none', 'nixComment,nixString,nixSimpleString')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'perlComment,perlDATA,perlString,perlStringUnexpanded,perlQQ,perlHereDoc')

View File

@@ -0,0 +1 @@
call css_color#init('css', 'basic', 'phpComment,phpStringSingle,phpStringDouble')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'pythonComment,pythonString')

View File

@@ -0,0 +1 @@
call css_color#init('css', 'extended', 'qmlStringD')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'extended', 'rComment,rString')

View File

@@ -0,0 +1,4 @@
" https://github.com/Fymyte/rasi.vim
call css_color#init('css', 'extended'
\, 'rasiHexColor,rasiRGBColor,rasiRGBAColor,rasiHSLColor,rasiHSLAColor,rasiNamedColor'
\. ',rasiPropertyVal,rasiComment,rasiCommentL,rasiEnvVar,rasiVarReference')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'rubyComment,rubyData,rubyString')

View File

@@ -0,0 +1 @@
call css_color#init('css', 'extended', 'sassCssAttribute,sassComment,sassCssComment')

View File

@@ -0,0 +1 @@
call css_color#init('css', 'extended', 'scssAttribute,scssComment,scssVariableValue,scssMap,scssMapValue,sassCssAttribute,cssComment')

View File

@@ -0,0 +1,6 @@
syn match shCommentColor contained '\(#[^#]*\)\@<=\zs#\x\{3}\%(\x\{3}\)\?\>' containedin=shQuickComment,shBQComment,shComment
call css_color#init( 'hex', 'none'
\, 'shSingleQuote,shDoubleQuote,shHereDoc,'
\. 'shTestSingleQuote,shTestDoubleQuote,'
\. 'shEchoQuote,shEmbeddedEcho,shEcho,'
\. 'shCommentColor' )

View File

@@ -0,0 +1 @@
call css_color#init('css', 'extended', 'stylusCssAttribute,stylusComment,cssComment')

View File

@@ -0,0 +1,4 @@
syn match tcshCommentColor contained '\(#[^#]*\)\@<=\zs#\x\{3}\%(\x\{3}\)\?\>' containedin=tcshComment
call css_color#init( 'hex', 'none'
\, 'tcshSQuote,tcshDQuote,tcshHereDoc,'
\. 'tcshCommentColor' )

View File

@@ -0,0 +1 @@
call css_color#init('css', 'none', 'tmuxString,tmuxComment')

View File

@@ -0,0 +1,6 @@
" https://github.com/HerringtonDarkholme/yats.vim (stock Vim syntax)
" https://github.com/leafgarland/typescript-vim
call css_color#init('css', 'extended'
\, 'typescriptString,typescriptStringProperty,typescriptStringS,typescriptStringD,typescriptStringB,'
\. 'typescriptComment,typescriptLineComment,typescriptCommentSkip,typescriptDocComment'
\)

View File

@@ -0,0 +1 @@
runtime after/syntax/typescript.vim

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'extended', 'valaString')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'vimHiGuiRgb,vimString,vimComment,vimLineComment')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'extended', 'xdefaultsValue')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'none', 'xmlComment,xmlCommentPart,xmlString')

View File

@@ -0,0 +1 @@
call css_color#init('hex', 'extended', 'yamlComment,yamlFlowString,yamlPlainScalar')

View File

@@ -0,0 +1,4 @@
syn match zshCommentColor contained '\(#[^#]*\)\@<=\zs#\x\{3}\%(\x\{3}\)\?\>' containedin=zshComment
call css_color#init( 'hex', 'none'
\, 'zshString,zshPOSIXString,zshHereDoc,'
\. 'zshCommentColor' )

View File

@@ -0,0 +1,336 @@
" Language: Colorful CSS Color Preview
" Author: Aristotle Pagaltzis <pagaltzis@gmx.de>
" Commit: $Format:%H$
" Licence: The MIT License (MIT)
if ! ( v:version >= 700 && has('syntax') && ( has('gui_running') || has('nvim') || &t_Co == 256 ) )
function! css_color#init(type, keywords, groups)
endfunction
function! css_color#extend(groups)
endfunction
finish
endif
function! s:rgb2color(r,g,b)
" Convert 80% -> 204, 100% -> 255, etc.
let rgb = map( [a:r,a:g,a:b], 'v:val =~ "%$" ? ( 255 * v:val ) / 100 : v:val' )
return printf( '%02x%02x%02x', rgb[0], rgb[1], rgb[2] )
endfunction
function! s:hsl2color(h,s,l)
" Convert 80% -> 0.8, 100% -> 1.0, etc.
let [s,l] = map( [a:s, a:l], 'v:val =~ "%$" ? v:val / 100.0 : v:val + 0.0' )
" algorithm transcoded to vim from http://www.w3.org/TR/css3-color/#hsl-color
let hh = ( a:h % 360 ) / 360.0
let m2 = l <= 0.5 ? l * ( s + 1 ) : l + s - l * s
let m1 = l * 2 - m2
let rgb = []
for h in [ hh + (1/3.0), hh, hh - (1/3.0) ]
let h = h < 0 ? h + 1 : h > 1 ? h - 1 : h
let v =
\ h * 6 < 1 ? m1 + ( m2 - m1 ) * h * 6 :
\ h * 2 < 1 ? m2 :
\ h * 3 < 2 ? m1 + ( m2 - m1 ) * ( 2/3.0 - h ) * 6 :
\ m1
if v > 1.0 | return '' | endif
let rgb += [ float2nr( 255 * v ) ]
endfor
return printf( '%02x%02x%02x', rgb[0], rgb[1], rgb[2] )
endfunction
let s:_1_3 = 1.0/3
let s:_16_116 = 16.0/116.0
let s:cos16 = cos(16*(180/atan2(0,-1)))
let s:sin16 = sin(16*(180/atan2(0,-1)))
function s:rgb2din99(rgb)
let [r,g,b] = map( copy(a:rgb), 'v:val > 0.04045 ? pow((v:val + 0.055) / 1.055, 2.4) : v:val / 12.92' )
let x = r * 0.4124 + g * 0.3576 + b * 0.1805
let y = r * 0.2126 + g * 0.7152 + b * 0.0722
let z = r * 0.0193 + g * 0.1192 + b * 0.9505
" Observer 2°, Illuminant D65
let x = ( x * 100 ) / 95.0489
let z = ( z * 100 ) / 108.8840
let [x,y,z] = map( [x,y,z], 'v:val > 0.008856 ? pow(v:val, s:_1_3) : 7.787 * v:val + s:_16_116' )
let [L,a,b] = [ (116 * y) - 16, 500 * (x - y), 200 * (y - z) ]
let L99 = 105.51 * log(1 + 0.0158 * L)
let e = a * s:cos16 + b * s:sin16
let f = 0.7 * (b * s:cos16 - a * s:sin16)
let g = 0.045 * sqrt(e*e + f*f)
if g == 0
let [a99, b99] = [0.0, 0.0]
else
let k = log(1 + g) / g
let a99 = k * e
let b99 = k * f
endif
return [L99, a99, b99]
endfunction
let s:hex={}
for i in range(0, 255)
let s:hex[ printf( '%02x', i ) ] = i
endfor
let s:exe=[]
function! s:flush_exe()
if len(s:exe) | exe join( remove( s:exe, 0, -1 ), ' | ' ) | endif
endfunction
if has('gui_running')
function! s:create_highlight(color, is_bright)
call add( s:exe, 'hi BG'.a:color.' guibg=#'.a:color.' guifg=#'.( a:is_bright ? '000000' : 'ffffff' ) )
endfunction
else
" preset 16 vt100 colors
let s:xtermcolor = [
\ [ 0x00, 0x00, 0x00 ],
\ [ 0xCD, 0x00, 0x00 ],
\ [ 0x00, 0xCD, 0x00 ],
\ [ 0xCD, 0xCD, 0x00 ],
\ [ 0x00, 0x00, 0xEE ],
\ [ 0xCD, 0x00, 0xCD ],
\ [ 0x00, 0xCD, 0xCD ],
\ [ 0xE5, 0xE5, 0xE5 ],
\ [ 0x7F, 0x7F, 0x7F ],
\ [ 0xFF, 0x00, 0x00 ],
\ [ 0x00, 0xFF, 0x00 ],
\ [ 0xFF, 0xFF, 0x00 ],
\ [ 0x5C, 0x5C, 0xFF ],
\ [ 0xFF, 0x00, 0xFF ],
\ [ 0x00, 0xFF, 0xFF ],
\ [ 0xFF, 0xFF, 0xFF ]]
" the 6 values used in the xterm color cube
" 0 95 135 175 215 255
let s:cubergb = [ 0x00, 0x5F, 0x87, 0xAF, 0xD7, 0xFF ]
for s:rrr in s:cubergb
for s:ggg in s:cubergb
for s:bbb in s:cubergb
call add( s:xtermcolor, [ s:rrr, s:ggg, s:bbb ] )
endfor
endfor
endfor
" grayscale ramp
let s:xtermcolor += map( range(24), 'repeat( [10 * v:val + 8], 3 )' )
for idx in range(len(s:xtermcolor))
let s:xtermcolor[idx] = s:rgb2din99( map(s:xtermcolor[idx], 'v:val / 255.0') )
endfor
" selects the nearest xterm color for a rgb value like #FF0000
function! s:rgb2xterm(color)
let best_match=0
let smallest_distance = 10000000000
let color = tolower(a:color)
let r = s:hex[color[0:1]]
let g = s:hex[color[2:3]]
let b = s:hex[color[4:5]]
let [L1,a1,b1] = s:rgb2din99([ r/255.0, g/255.0, b/255.0 ])
for idx in range(len(s:xtermcolor))
let [L2,a2,b2] = s:xtermcolor[idx]
let dL = L1 - L2
let da = a1 - a2
let db = b1 - b2
let distance = dL*dL + da*da + db*db
if distance == 0 | return idx | endif
if distance > smallest_distance | continue | endif
let smallest_distance = distance
let best_match = idx
endfor
return best_match
endfunction
let s:color_idx = {}
function! s:create_highlight(color, is_bright)
let color_idx = get( s:color_idx, a:color, -1 )
if color_idx == -1
let color_idx = s:rgb2xterm(a:color)
let s:color_idx[a:color] = color_idx
endif
call add( s:exe,
\ 'hi BG'.a:color
\ . ' guibg=#' .a:color .' guifg=#' .( a:is_bright ? '000000' : 'ffffff' )
\ . ' ctermbg='.color_idx.' ctermfg='.( a:is_bright ? 0 : 15 )
\ )
endfunction
endif
function! s:recreate_highlights()
call filter( copy( b:css_color_hi ), 's:create_highlight( v:key, v:val )' )
endfunction
let s:pattern_color = {}
let s:color_bright = {}
function! s:create_syn_match()
let pattern = submatch(0)
if has_key( b:css_color_syn, pattern ) | return | endif
let b:css_color_syn[pattern] = 1
let rgb_color = get( s:pattern_color, pattern, '' )
if ! strlen( rgb_color )
let hex = submatch(1)
let funcname = submatch(2)
let rgb_color
\ = funcname == 'rgb' ? s:rgb2color(submatch(3),submatch(4),submatch(5))
\ : funcname == 'hsl' ? s:hsl2color(submatch(3),submatch(4),submatch(5))
\ : strlen(hex) >= 6 ? tolower(hex[0:5])
\ : strlen(hex) >= 3 ? tolower(hex[0].hex[0].hex[1].hex[1].hex[2].hex[2])
\ : ''
if rgb_color == '' | throw 'css_color: create_syn_match invoked on bad match data' | endif
let s:pattern_color[pattern] = rgb_color
endif
if ! has_key( b:css_color_hi, rgb_color )
let is_bright = get( s:color_bright, rgb_color, -1 )
if is_bright == -1
let r = s:hex[rgb_color[0:1]]
let g = s:hex[rgb_color[2:3]]
let b = s:hex[rgb_color[4:5]]
let is_bright = r*30 + g*59 + b*11 > 12000
let s:color_bright[rgb_color] = is_bright
endif
call s:create_highlight( rgb_color, is_bright )
let b:css_color_hi[rgb_color] = is_bright
endif
" iff pattern ends on word character, require word break to match
if pattern =~ '\>$' | let pattern .= '\>' | endif
call add( s:exe, 'syn match BG'.rgb_color.' /'.escape(pattern, '/').'/ contained containedin=@colorableGroup' )
return ''
endfunction
function! s:clear_matches()
call map(get(w:, 'css_color_match_id', []), 'matchdelete(v:val)')
let w:css_color_match_id = []
endfunction
function! s:create_matches()
call s:clear_matches()
if ! &l:cursorline | return | endif
" adds matches based that duplicate the highlighted colors on the current line
let lnr = line('.')
let group = ''
let groupstart = 0
let endcol = &l:synmaxcol ? &l:synmaxcol : col('$')
for col in range( 1, endcol )
let nextgroup = col < endcol ? synIDattr( synID( lnr, col, 1 ), 'name' ) : ''
if group == nextgroup | continue | endif
if group =~ '^BG\x\{6}$'
let regex = '\%'.lnr.'l\%'.groupstart.'c'.repeat( '.', col - groupstart )
let w:css_color_match_id += [ matchadd( group, regex, -1 ) ]
endif
let group = nextgroup
let groupstart = col
endfor
endfunction
let s:_hexcolor = '#\(\x\{3}\%(\>\|\x\{3}\>\)\)' " submatch 1
let s:_rgbacolor = '#\(\x\{3}\%(\>\|\x\%(\>\|\x\{2}\%(\>\|\x\{2}\>\)\)\)\)' " submatch 1
let s:_funcname = '\(rgb\|hsl\)a\?' " submatch 2
let s:_ws_ = '\s*'
let s:_numval = s:_ws_ . '\(\d\{1,3}%\?\)' " submatch 3,4,5
let s:_listsep = s:_ws_ . ','
let s:_otherargs_ = '\%(,[^)]*\)\?'
let s:_funcexpr = s:_funcname . '[(]' . s:_numval . s:_listsep . s:_numval . s:_listsep . s:_numval . s:_ws_ . s:_otherargs_ . '[)]'
let s:_csscolor = s:_rgbacolor . '\|' . s:_funcexpr
" N.B. sloppy heuristic constants for performance reasons:
" a) start somewhere left of screen in case of partially visible colorref
" b) take some multiple of &columns to handle multibyte chars etc
" N.B. these substitute() calls are here just for the side effect
" of invoking s:create_syn_match during substitution -- because
" match() and friends do not allow finding all matches in a single
" scan without examining the start of the string over and over
function! s:parse_screen()
let leftcol = winsaveview().leftcol
let left = max([ leftcol - 15, 0 ])
let width = &columns * 4
call filter( range( line('w0'), line('w$') ), 'substitute( strpart( getline(v:val), col([v:val, left]), width ), b:css_color_pat, ''\=s:create_syn_match()'', ''g'' )' )
call s:flush_exe()
endfunction
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
function! css_color#reinit()
call s:recreate_highlights()
call s:flush_exe()
endfunction
function! css_color#enable()
if ! b:css_color_off | return | endif
if len( b:css_color_grp ) | exe 'syn cluster colorableGroup add=' . join( b:css_color_grp, ',' ) | endif
augroup CSSColor
autocmd! * <buffer>
if has('nvim-0.3.1')
autocmd CursorMoved,CursorMovedI <buffer> call s:parse_screen()
else
autocmd CursorMoved,CursorMovedI <buffer> call s:parse_screen() | call s:create_matches()
autocmd BufWinEnter <buffer> call s:create_matches()
autocmd BufWinLeave <buffer> call s:clear_matches()
endif
autocmd ColorScheme <buffer> call css_color#reinit()
augroup END
let b:css_color_off = 0
doautocmd CSSColor CursorMoved
endfunction
function! css_color#disable()
if b:css_color_off | return | endif
if len( b:css_color_grp ) | exe 'syn cluster colorableGroup remove=' . join( b:css_color_grp, ',' ) | endif
autocmd! CSSColor * <buffer>
let b:css_color_off = 1
endfunction
function! css_color#toggle()
if b:css_color_off | call css_color#enable()
else | call css_color#disable()
endif
endfunction
let s:type = [ 'none', 'hex', 'rgba', 'css', 'none' ] " with wraparound for index() == -1
let s:pat_for_type = [ '^$', s:_hexcolor, s:_rgbacolor, s:_csscolor, '^$' ]
function! css_color#init(type, keywords, groups)
let new_type = index( s:type, a:type )
let old_type = index( s:pat_for_type, get( b:, 'css_color_pat', '$^' ) )
let b:css_color_pat = s:pat_for_type[ max( [ old_type, new_type ] ) ]
let b:css_color_grp = extend( get( b:, 'css_color_grp', [] ), split( a:groups, ',' ), 0 )
let b:css_color_hi = {}
let b:css_color_syn = {}
let b:css_color_off = 1
call css_color#enable()
if a:keywords != 'none'
exe 'syntax include syntax/colornames/'.a:keywords.'.vim'
call extend( s:color_bright, b:css_color_hi )
endif
endfunction
" utility function for development use
function! css_color#dump_highlights()
call s:recreate_highlights()
let cmd = join( sort( remove( s:exe, 0, -1 ) ), "\n" )
let cmd = substitute( cmd, '#......', '\U&', 'g' )
let cmd = substitute( cmd, 'ctermbg=\zs\d\+', '\=printf("%-3d",submatch(0))', 'g' )
return cmd
endfunction

View File

@@ -0,0 +1,47 @@
" Language: Colorful CSS Color Preview
" Author: Aristotle Pagaltzis <pagaltzis@gmx.de>
" Commit: $Format:%H$
" Licence: The MIT License (MIT)
" W3C basic colors
hi BG000000 guibg=#000000 guifg=#FFFFFF ctermbg=16 ctermfg=15
hi BGc0c0c0 guibg=#C0C0C0 guifg=#000000 ctermbg=250 ctermfg=0
hi BG808080 guibg=#808080 guifg=#000000 ctermbg=244 ctermfg=0
hi BGffffff guibg=#FFFFFF guifg=#000000 ctermbg=231 ctermfg=0
hi BG800000 guibg=#800000 guifg=#FFFFFF ctermbg=88 ctermfg=15
hi BGff0000 guibg=#FF0000 guifg=#FFFFFF ctermbg=196 ctermfg=15
hi BG800080 guibg=#800080 guifg=#FFFFFF ctermbg=90 ctermfg=15
hi BGff00ff guibg=#FF00FF guifg=#FFFFFF ctermbg=201 ctermfg=15
hi BG008000 guibg=#008000 guifg=#FFFFFF ctermbg=28 ctermfg=15
hi BG00ff00 guibg=#00FF00 guifg=#000000 ctermbg=46 ctermfg=0
hi BG808000 guibg=#808000 guifg=#FFFFFF ctermbg=100 ctermfg=15
hi BGffff00 guibg=#FFFF00 guifg=#000000 ctermbg=226 ctermfg=0
hi BG000080 guibg=#000080 guifg=#FFFFFF ctermbg=18 ctermfg=15
hi BG0000ff guibg=#0000FF guifg=#FFFFFF ctermbg=21 ctermfg=15
hi BG008080 guibg=#008080 guifg=#FFFFFF ctermbg=30 ctermfg=15
hi BG00ffff guibg=#00FFFF guifg=#000000 ctermbg=51 ctermfg=0
call extend( b:css_color_hi,
\{'000000':0,'c0c0c0':1,'808080':1,'ffffff':1,'800000':0,'ff0000':0
\,'800080':0,'ff00ff':0,'008000':0,'00ff00':1,'808000':0,'ffff00':1
\,'000080':0,'0000ff':0,'008080':0,'00ffff':1} )
syn case ignore
syn keyword BG000000 black contained containedin=@colorableGroup
syn keyword BGc0c0c0 silver contained containedin=@colorableGroup
syn keyword BG808080 gray contained containedin=@colorableGroup
syn match BGffffff "\c\<white\(-\)\@!\>" contained containedin=@colorableGroup
syn keyword BG800000 maroon contained containedin=@colorableGroup
syn keyword BGff0000 red contained containedin=@colorableGroup
syn keyword BG800080 purple contained containedin=@colorableGroup
syn keyword BGff00ff fuchsia contained containedin=@colorableGroup
syn keyword BG008000 green contained containedin=@colorableGroup
syn keyword BG00ff00 lime contained containedin=@colorableGroup
syn keyword BG808000 olive contained containedin=@colorableGroup
syn keyword BGffff00 yellow contained containedin=@colorableGroup
syn keyword BG000080 navy contained containedin=@colorableGroup
syn keyword BG0000ff blue contained containedin=@colorableGroup
syn keyword BG008080 teal contained containedin=@colorableGroup
syn keyword BG00ffff aqua contained containedin=@colorableGroup

View File

@@ -0,0 +1,290 @@
" Language: Colorful CSS Color Preview
" Author: Aristotle Pagaltzis <pagaltzis@gmx.de>
" Commit: $Format:%H$
" Licence: The MIT License (MIT)
" W3C extended colors
syntax include syntax/colornames/basic.vim
hi BG00008b guibg=#00008B guifg=#FFFFFF ctermbg=18 ctermfg=15
hi BG0000cd guibg=#0000CD guifg=#FFFFFF ctermbg=20 ctermfg=15
hi BG006400 guibg=#006400 guifg=#FFFFFF ctermbg=22 ctermfg=15
hi BG008b8b guibg=#008B8B guifg=#FFFFFF ctermbg=30 ctermfg=15
hi BG00bfff guibg=#00BFFF guifg=#000000 ctermbg=74 ctermfg=0
hi BG00ced1 guibg=#00CED1 guifg=#000000 ctermbg=6 ctermfg=0
hi BG00fa9a guibg=#00FA9A guifg=#000000 ctermbg=49 ctermfg=0
hi BG00ff7f guibg=#00FF7F guifg=#000000 ctermbg=48 ctermfg=0
hi BG191970 guibg=#191970 guifg=#FFFFFF ctermbg=18 ctermfg=15
hi BG1e90ff guibg=#1E90FF guifg=#000000 ctermbg=33 ctermfg=0
hi BG20b2aa guibg=#20B2AA guifg=#000000 ctermbg=37 ctermfg=0
hi BG228b22 guibg=#228B22 guifg=#FFFFFF ctermbg=28 ctermfg=15
hi BG2e8b57 guibg=#2E8B57 guifg=#FFFFFF ctermbg=29 ctermfg=15
hi BG2f4f4f guibg=#2F4F4F guifg=#FFFFFF ctermbg=23 ctermfg=15
hi BG32cd32 guibg=#32CD32 guifg=#000000 ctermbg=2 ctermfg=0
hi BG3cb371 guibg=#3CB371 guifg=#000000 ctermbg=35 ctermfg=0
hi BG40e0d0 guibg=#40E0D0 guifg=#000000 ctermbg=44 ctermfg=0
hi BG4169e1 guibg=#4169E1 guifg=#FFFFFF ctermbg=62 ctermfg=15
hi BG4682b4 guibg=#4682B4 guifg=#FFFFFF ctermbg=67 ctermfg=15
hi BG483d8b guibg=#483D8B guifg=#FFFFFF ctermbg=90 ctermfg=15
hi BG48d1cc guibg=#48D1CC guifg=#000000 ctermbg=44 ctermfg=0
hi BG4b0082 guibg=#4B0082 guifg=#FFFFFF ctermbg=54 ctermfg=15
hi BG556b2f guibg=#556B2F guifg=#FFFFFF ctermbg=58 ctermfg=15
hi BG5f9ea0 guibg=#5F9EA0 guifg=#000000 ctermbg=73 ctermfg=0
hi BG6495ed guibg=#6495ED guifg=#000000 ctermbg=68 ctermfg=0
hi BG663399 guibg=#663399 guifg=#FFFFFF ctermbg=91 ctermfg=15
hi BG66cdaa guibg=#66CDAA guifg=#000000 ctermbg=79 ctermfg=0
hi BG696969 guibg=#696969 guifg=#FFFFFF ctermbg=242 ctermfg=15
hi BG6a5acd guibg=#6A5ACD guifg=#FFFFFF ctermbg=62 ctermfg=15
hi BG6b8e23 guibg=#6B8E23 guifg=#FFFFFF ctermbg=64 ctermfg=15
hi BG708090 guibg=#708090 guifg=#000000 ctermbg=8 ctermfg=0
hi BG778899 guibg=#778899 guifg=#000000 ctermbg=67 ctermfg=0
hi BG7b68ee guibg=#7B68EE guifg=#000000 ctermbg=98 ctermfg=0
hi BG7cfc00 guibg=#7CFC00 guifg=#000000 ctermbg=118 ctermfg=0
hi BG7fff00 guibg=#7FFF00 guifg=#000000 ctermbg=118 ctermfg=0
hi BG7fffd4 guibg=#7FFFD4 guifg=#000000 ctermbg=122 ctermfg=0
hi BG87ceeb guibg=#87CEEB guifg=#000000 ctermbg=117 ctermfg=0
hi BG87cefa guibg=#87CEFA guifg=#000000 ctermbg=117 ctermfg=0
hi BG8a2be2 guibg=#8A2BE2 guifg=#FFFFFF ctermbg=93 ctermfg=15
hi BG8b0000 guibg=#8B0000 guifg=#FFFFFF ctermbg=88 ctermfg=15
hi BG8b008b guibg=#8B008B guifg=#FFFFFF ctermbg=90 ctermfg=15
hi BG8b4513 guibg=#8B4513 guifg=#FFFFFF ctermbg=130 ctermfg=15
hi BG8fbc8f guibg=#8FBC8F guifg=#000000 ctermbg=108 ctermfg=0
hi BG90ee90 guibg=#90EE90 guifg=#000000 ctermbg=120 ctermfg=0
hi BG9370d8 guibg=#9370D8 guifg=#000000 ctermbg=134 ctermfg=0
hi BG9400d3 guibg=#9400D3 guifg=#FFFFFF ctermbg=92 ctermfg=15
hi BG98fb98 guibg=#98FB98 guifg=#000000 ctermbg=120 ctermfg=0
hi BG9932cc guibg=#9932CC guifg=#FFFFFF ctermbg=128 ctermfg=15
hi BG9acd32 guibg=#9ACD32 guifg=#000000 ctermbg=112 ctermfg=0
hi BGa0522d guibg=#A0522D guifg=#FFFFFF ctermbg=130 ctermfg=15
hi BGa52a2a guibg=#A52A2A guifg=#FFFFFF ctermbg=124 ctermfg=15
hi BGa9a9a9 guibg=#A9A9A9 guifg=#000000 ctermbg=248 ctermfg=0
hi BGadd8e6 guibg=#ADD8E6 guifg=#000000 ctermbg=152 ctermfg=0
hi BGadff2f guibg=#ADFF2F guifg=#000000 ctermbg=154 ctermfg=0
hi BGafeeee guibg=#AFEEEE guifg=#000000 ctermbg=159 ctermfg=0
hi BGb0c4de guibg=#B0C4DE guifg=#000000 ctermbg=153 ctermfg=0
hi BGb0e0e6 guibg=#B0E0E6 guifg=#000000 ctermbg=152 ctermfg=0
hi BGb22222 guibg=#B22222 guifg=#FFFFFF ctermbg=124 ctermfg=15
hi BGb8860b guibg=#B8860B guifg=#000000 ctermbg=136 ctermfg=0
hi BGba55d3 guibg=#BA55D3 guifg=#000000 ctermbg=134 ctermfg=0
hi BGbc8f8f guibg=#BC8F8F guifg=#000000 ctermbg=138 ctermfg=0
hi BGbdb76b guibg=#BDB76B guifg=#000000 ctermbg=143 ctermfg=0
hi BGc71585 guibg=#C71585 guifg=#FFFFFF ctermbg=162 ctermfg=15
hi BGcd5c5c guibg=#CD5C5C guifg=#000000 ctermbg=167 ctermfg=0
hi BGcd853f guibg=#CD853F guifg=#000000 ctermbg=172 ctermfg=0
hi BGd2691e guibg=#D2691E guifg=#000000 ctermbg=166 ctermfg=0
hi BGd2b48c guibg=#D2B48C guifg=#000000 ctermbg=180 ctermfg=0
hi BGd3d3d3 guibg=#D3D3D3 guifg=#000000 ctermbg=252 ctermfg=0
hi BGd87093 guibg=#D87093 guifg=#000000 ctermbg=168 ctermfg=0
hi BGd8bfd8 guibg=#D8BFD8 guifg=#000000 ctermbg=182 ctermfg=0
hi BGda70d6 guibg=#DA70D6 guifg=#000000 ctermbg=170 ctermfg=0
hi BGdaa520 guibg=#DAA520 guifg=#000000 ctermbg=178 ctermfg=0
hi BGdc143c guibg=#DC143C guifg=#FFFFFF ctermbg=197 ctermfg=15
hi BGdcdcdc guibg=#DCDCDC guifg=#000000 ctermbg=253 ctermfg=0
hi BGdda0dd guibg=#DDA0DD guifg=#000000 ctermbg=183 ctermfg=0
hi BGdeb887 guibg=#DEB887 guifg=#000000 ctermbg=180 ctermfg=0
hi BGe0ffff guibg=#E0FFFF guifg=#000000 ctermbg=195 ctermfg=0
hi BGe6e6fa guibg=#E6E6FA guifg=#000000 ctermbg=189 ctermfg=0
hi BGe9967a guibg=#E9967A guifg=#000000 ctermbg=209 ctermfg=0
hi BGee82ee guibg=#EE82EE guifg=#000000 ctermbg=213 ctermfg=0
hi BGeee8aa guibg=#EEE8AA guifg=#000000 ctermbg=229 ctermfg=0
hi BGf08080 guibg=#F08080 guifg=#000000 ctermbg=210 ctermfg=0
hi BGf0e68c guibg=#F0E68C guifg=#000000 ctermbg=186 ctermfg=0
hi BGf0f8ff guibg=#F0F8FF guifg=#000000 ctermbg=231 ctermfg=0
hi BGf0fff0 guibg=#F0FFF0 guifg=#000000 ctermbg=195 ctermfg=0
hi BGf0ffff guibg=#F0FFFF guifg=#000000 ctermbg=231 ctermfg=0
hi BGf4a460 guibg=#F4A460 guifg=#000000 ctermbg=215 ctermfg=0
hi BGf5deb3 guibg=#F5DEB3 guifg=#000000 ctermbg=223 ctermfg=0
hi BGf5f5dc guibg=#F5F5DC guifg=#000000 ctermbg=230 ctermfg=0
hi BGf5f5f5 guibg=#F5F5F5 guifg=#000000 ctermbg=255 ctermfg=0
hi BGf5fffa guibg=#F5FFFA guifg=#000000 ctermbg=231 ctermfg=0
hi BGf8f8ff guibg=#F8F8FF guifg=#000000 ctermbg=231 ctermfg=0
hi BGfa8072 guibg=#FA8072 guifg=#000000 ctermbg=210 ctermfg=0
hi BGfaebd7 guibg=#FAEBD7 guifg=#000000 ctermbg=255 ctermfg=0
hi BGfaf0e6 guibg=#FAF0E6 guifg=#000000 ctermbg=255 ctermfg=0
hi BGfafad2 guibg=#FAFAD2 guifg=#000000 ctermbg=230 ctermfg=0
hi BGfdf5e6 guibg=#FDF5E6 guifg=#000000 ctermbg=255 ctermfg=0
hi BGff1493 guibg=#FF1493 guifg=#FFFFFF ctermbg=198 ctermfg=15
hi BGff4500 guibg=#FF4500 guifg=#FFFFFF ctermbg=202 ctermfg=15
hi BGff6347 guibg=#FF6347 guifg=#000000 ctermbg=203 ctermfg=0
hi BGff69b4 guibg=#FF69B4 guifg=#000000 ctermbg=205 ctermfg=0
hi BGff7f50 guibg=#FF7F50 guifg=#000000 ctermbg=209 ctermfg=0
hi BGff8c00 guibg=#FF8C00 guifg=#000000 ctermbg=208 ctermfg=0
hi BGffa07a guibg=#FFA07A guifg=#000000 ctermbg=216 ctermfg=0
hi BGffa500 guibg=#FFA500 guifg=#000000 ctermbg=214 ctermfg=0
hi BGffb6c1 guibg=#FFB6C1 guifg=#000000 ctermbg=217 ctermfg=0
hi BGffc0cb guibg=#FFC0CB guifg=#000000 ctermbg=217 ctermfg=0
hi BGffd700 guibg=#FFD700 guifg=#000000 ctermbg=220 ctermfg=0
hi BGffdab9 guibg=#FFDAB9 guifg=#000000 ctermbg=223 ctermfg=0
hi BGffdead guibg=#FFDEAD guifg=#000000 ctermbg=223 ctermfg=0
hi BGffe4b5 guibg=#FFE4B5 guifg=#000000 ctermbg=223 ctermfg=0
hi BGffe4c4 guibg=#FFE4C4 guifg=#000000 ctermbg=223 ctermfg=0
hi BGffe4e1 guibg=#FFE4E1 guifg=#000000 ctermbg=224 ctermfg=0
hi BGffebcd guibg=#FFEBCD guifg=#000000 ctermbg=223 ctermfg=0
hi BGffefd5 guibg=#FFEFD5 guifg=#000000 ctermbg=230 ctermfg=0
hi BGfff0f5 guibg=#FFF0F5 guifg=#000000 ctermbg=255 ctermfg=0
hi BGfff5ee guibg=#FFF5EE guifg=#000000 ctermbg=231 ctermfg=0
hi BGfff8dc guibg=#FFF8DC guifg=#000000 ctermbg=230 ctermfg=0
hi BGfffacd guibg=#FFFACD guifg=#000000 ctermbg=230 ctermfg=0
hi BGfffaf0 guibg=#FFFAF0 guifg=#000000 ctermbg=231 ctermfg=0
hi BGfffafa guibg=#FFFAFA guifg=#000000 ctermbg=231 ctermfg=0
hi BGffffe0 guibg=#FFFFE0 guifg=#000000 ctermbg=230 ctermfg=0
hi BGfffff0 guibg=#FFFFF0 guifg=#000000 ctermbg=231 ctermfg=0
call extend( b:css_color_hi,
\{'00008b':0,'0000cd':0,'006400':0,'008b8b':0,'00bfff':1,'00ced1':1
\,'00fa9a':1,'00ff7f':1,'191970':0,'1e90ff':1,'20b2aa':1,'228b22':0
\,'2e8b57':0,'2f4f4f':0,'32cd32':1,'3cb371':1,'40e0d0':1,'4169e1':0
\,'4682b4':0,'483d8b':0,'48d1cc':1,'4b0082':0,'556b2f':0,'5f9ea0':1
\,'6495ed':1,'66cdaa':1,'696969':0,'6a5acd':0,'6b8e23':0,'708090':1
\,'778899':1,'7b68ee':1,'7cfc00':1,'7fff00':1,'7fffd4':1,'87ceeb':1
\,'87cefa':1,'8a2be2':0,'8b0000':0,'8b008b':0,'8b4513':0,'8fbc8f':1
\,'90ee90':1,'9370d8':1,'9400d3':0,'98fb98':1,'9932cc':0,'9acd32':1
\,'a0522d':0,'a52a2a':0,'a9a9a9':1,'add8e6':1,'adff2f':1,'afeeee':1
\,'b0c4de':1,'b0e0e6':1,'b22222':0,'b8860b':1,'ba55d3':1,'bc8f8f':1
\,'bdb76b':1,'c71585':0,'cd5c5c':1,'cd853f':1,'d2691e':1,'d2b48c':1
\,'d3d3d3':1,'d87093':1,'d8bfd8':1,'da70d6':1,'daa520':1,'dc143c':0
\,'dcdcdc':1,'dda0dd':1,'deb887':1,'e0ffff':1,'e6e6fa':1,'e9967a':1
\,'ee82ee':1,'eee8aa':1,'f08080':1,'f0e68c':1,'f0f8ff':1,'f0fff0':1
\,'f0ffff':1,'f4a460':1,'f5deb3':1,'f5f5dc':1,'f5f5f5':1,'f5fffa':1
\,'f8f8ff':1,'fa8072':1,'faebd7':1,'faf0e6':1,'fafad2':1,'fdf5e6':1
\,'ff1493':0,'ff4500':0,'ff6347':1,'ff69b4':1,'ff7f50':1,'ff8c00':1
\,'ffa07a':1,'ffa500':1,'ffb6c1':1,'ffc0cb':1,'ffd700':1,'ffdab9':1
\,'ffdead':1,'ffe4b5':1,'ffe4c4':1,'ffe4e1':1,'ffebcd':1,'ffefd5':1
\,'fff0f5':1,'fff5ee':1,'fff8dc':1,'fffacd':1,'fffaf0':1,'fffafa':1
\,'ffffe0':1,'fffff0':1} )
syn case ignore
syn keyword BGf0f8ff AliceBlue contained containedin=@colorableGroup
syn keyword BGfaebd7 AntiqueWhite contained containedin=@colorableGroup
syn keyword BG7fffd4 Aquamarine contained containedin=@colorableGroup
syn keyword BGf0ffff Azure contained containedin=@colorableGroup
syn keyword BGf5f5dc Beige contained containedin=@colorableGroup
syn keyword BGffe4c4 Bisque contained containedin=@colorableGroup
syn keyword BGffebcd BlanchedAlmond contained containedin=@colorableGroup
syn keyword BG8a2be2 BlueViolet contained containedin=@colorableGroup
syn keyword BGa52a2a Brown contained containedin=@colorableGroup
syn keyword BGdeb887 BurlyWood contained containedin=@colorableGroup
syn keyword BG5f9ea0 CadetBlue contained containedin=@colorableGroup
syn keyword BG7fff00 Chartreuse contained containedin=@colorableGroup
syn keyword BGd2691e Chocolate contained containedin=@colorableGroup
syn keyword BGff7f50 Coral contained containedin=@colorableGroup
syn keyword BG6495ed CornflowerBlue contained containedin=@colorableGroup
syn keyword BGfff8dc Cornsilk contained containedin=@colorableGroup
syn keyword BGdc143c Crimson contained containedin=@colorableGroup
syn keyword BG00ffff Cyan contained containedin=@colorableGroup
syn keyword BG00008b DarkBlue contained containedin=@colorableGroup
syn keyword BG008b8b DarkCyan contained containedin=@colorableGroup
syn keyword BGb8860b DarkGoldenRod contained containedin=@colorableGroup
syn keyword BGa9a9a9 DarkGray contained containedin=@colorableGroup
syn keyword BG006400 DarkGreen contained containedin=@colorableGroup
syn keyword BGa9a9a9 DarkGrey contained containedin=@colorableGroup
syn keyword BGbdb76b DarkKhaki contained containedin=@colorableGroup
syn keyword BG8b008b DarkMagenta contained containedin=@colorableGroup
syn keyword BG556b2f DarkOliveGreen contained containedin=@colorableGroup
syn keyword BG9932cc DarkOrchid contained containedin=@colorableGroup
syn keyword BG8b0000 DarkRed contained containedin=@colorableGroup
syn keyword BGe9967a DarkSalmon contained containedin=@colorableGroup
syn keyword BG8fbc8f DarkSeaGreen contained containedin=@colorableGroup
syn keyword BG483d8b DarkSlateBlue contained containedin=@colorableGroup
syn keyword BG2f4f4f DarkSlateGray contained containedin=@colorableGroup
syn keyword BG2f4f4f DarkSlateGrey contained containedin=@colorableGroup
syn keyword BG00ced1 DarkTurquoise contained containedin=@colorableGroup
syn keyword BG9400d3 DarkViolet contained containedin=@colorableGroup
syn keyword BGff8c00 Darkorange contained containedin=@colorableGroup
syn keyword BGff1493 DeepPink contained containedin=@colorableGroup
syn keyword BG00bfff DeepSkyBlue contained containedin=@colorableGroup
syn keyword BG696969 DimGray contained containedin=@colorableGroup
syn keyword BG696969 DimGrey contained containedin=@colorableGroup
syn keyword BG1e90ff DodgerBlue contained containedin=@colorableGroup
syn keyword BGb22222 FireBrick contained containedin=@colorableGroup
syn keyword BGfffaf0 FloralWhite contained containedin=@colorableGroup
syn keyword BG228b22 ForestGreen contained containedin=@colorableGroup
syn keyword BGdcdcdc Gainsboro contained containedin=@colorableGroup
syn keyword BGf8f8ff GhostWhite contained containedin=@colorableGroup
syn keyword BGffd700 Gold contained containedin=@colorableGroup
syn keyword BGdaa520 GoldenRod contained containedin=@colorableGroup
syn keyword BGadff2f GreenYellow contained containedin=@colorableGroup
syn keyword BG808080 Grey contained containedin=@colorableGroup
syn keyword BGf0fff0 HoneyDew contained containedin=@colorableGroup
syn keyword BGff69b4 HotPink contained containedin=@colorableGroup
syn keyword BGcd5c5c IndianRed contained containedin=@colorableGroup
syn keyword BG4b0082 Indigo contained containedin=@colorableGroup
syn keyword BGfffff0 Ivory contained containedin=@colorableGroup
syn keyword BGf0e68c Khaki contained containedin=@colorableGroup
syn keyword BGe6e6fa Lavender contained containedin=@colorableGroup
syn keyword BGfff0f5 LavenderBlush contained containedin=@colorableGroup
syn keyword BG7cfc00 LawnGreen contained containedin=@colorableGroup
syn keyword BGfffacd LemonChiffon contained containedin=@colorableGroup
syn keyword BGadd8e6 LightBlue contained containedin=@colorableGroup
syn keyword BGf08080 LightCoral contained containedin=@colorableGroup
syn keyword BGe0ffff LightCyan contained containedin=@colorableGroup
syn keyword BGfafad2 LightGoldenRodYellow contained containedin=@colorableGroup
syn keyword BGd3d3d3 LightGray contained containedin=@colorableGroup
syn keyword BG90ee90 LightGreen contained containedin=@colorableGroup
syn keyword BGd3d3d3 LightGrey contained containedin=@colorableGroup
syn keyword BGffb6c1 LightPink contained containedin=@colorableGroup
syn keyword BGffa07a LightSalmon contained containedin=@colorableGroup
syn keyword BG20b2aa LightSeaGreen contained containedin=@colorableGroup
syn keyword BG87cefa LightSkyBlue contained containedin=@colorableGroup
syn keyword BG778899 LightSlateGray contained containedin=@colorableGroup
syn keyword BG778899 LightSlateGrey contained containedin=@colorableGroup
syn keyword BGb0c4de LightSteelBlue contained containedin=@colorableGroup
syn keyword BGffffe0 LightYellow contained containedin=@colorableGroup
syn keyword BG32cd32 LimeGreen contained containedin=@colorableGroup
syn keyword BGfaf0e6 Linen contained containedin=@colorableGroup
syn keyword BGff00ff Magenta contained containedin=@colorableGroup
syn keyword BG66cdaa MediumAquaMarine contained containedin=@colorableGroup
syn keyword BG0000cd MediumBlue contained containedin=@colorableGroup
syn keyword BGba55d3 MediumOrchid contained containedin=@colorableGroup
syn keyword BG9370d8 MediumPurple contained containedin=@colorableGroup
syn keyword BG3cb371 MediumSeaGreen contained containedin=@colorableGroup
syn keyword BG7b68ee MediumSlateBlue contained containedin=@colorableGroup
syn keyword BG00fa9a MediumSpringGreen contained containedin=@colorableGroup
syn keyword BG48d1cc MediumTurquoise contained containedin=@colorableGroup
syn keyword BGc71585 MediumVioletRed contained containedin=@colorableGroup
syn keyword BG191970 MidnightBlue contained containedin=@colorableGroup
syn keyword BGf5fffa MintCream contained containedin=@colorableGroup
syn keyword BGffe4e1 MistyRose contained containedin=@colorableGroup
syn keyword BGffe4b5 Moccasin contained containedin=@colorableGroup
syn keyword BGffdead NavajoWhite contained containedin=@colorableGroup
syn keyword BGfdf5e6 OldLace contained containedin=@colorableGroup
syn keyword BG6b8e23 OliveDrab contained containedin=@colorableGroup
syn keyword BGffa500 Orange contained containedin=@colorableGroup
syn keyword BGff4500 OrangeRed contained containedin=@colorableGroup
syn keyword BGda70d6 Orchid contained containedin=@colorableGroup
syn keyword BGeee8aa PaleGoldenRod contained containedin=@colorableGroup
syn keyword BG98fb98 PaleGreen contained containedin=@colorableGroup
syn keyword BGafeeee PaleTurquoise contained containedin=@colorableGroup
syn keyword BGd87093 PaleVioletRed contained containedin=@colorableGroup
syn keyword BGffefd5 PapayaWhip contained containedin=@colorableGroup
syn keyword BGffdab9 PeachPuff contained containedin=@colorableGroup
syn keyword BGcd853f Peru contained containedin=@colorableGroup
syn keyword BGffc0cb Pink contained containedin=@colorableGroup
syn keyword BGdda0dd Plum contained containedin=@colorableGroup
syn keyword BGb0e0e6 PowderBlue contained containedin=@colorableGroup
syn keyword BGbc8f8f RosyBrown contained containedin=@colorableGroup
syn keyword BG4169e1 RoyalBlue contained containedin=@colorableGroup
syn keyword BG663399 RebeccaPurple contained containedin=@colorableGroup
syn keyword BG8b4513 SaddleBrown contained containedin=@colorableGroup
syn keyword BGfa8072 Salmon contained containedin=@colorableGroup
syn keyword BGf4a460 SandyBrown contained containedin=@colorableGroup
syn keyword BG2e8b57 SeaGreen contained containedin=@colorableGroup
syn keyword BGfff5ee SeaShell contained containedin=@colorableGroup
syn keyword BGa0522d Sienna contained containedin=@colorableGroup
syn keyword BG87ceeb SkyBlue contained containedin=@colorableGroup
syn keyword BG6a5acd SlateBlue contained containedin=@colorableGroup
syn keyword BG708090 SlateGray contained containedin=@colorableGroup
syn keyword BG708090 SlateGrey contained containedin=@colorableGroup
syn keyword BGfffafa Snow contained containedin=@colorableGroup
syn keyword BG00ff7f SpringGreen contained containedin=@colorableGroup
syn keyword BG4682b4 SteelBlue contained containedin=@colorableGroup
syn keyword BGd2b48c Tan contained containedin=@colorableGroup
syn keyword BGd8bfd8 Thistle contained containedin=@colorableGroup
syn keyword BGff6347 Tomato contained containedin=@colorableGroup
syn keyword BG40e0d0 Turquoise contained containedin=@colorableGroup
syn keyword BGee82ee Violet contained containedin=@colorableGroup
syn keyword BGf5deb3 Wheat contained containedin=@colorableGroup
syn keyword BGf5f5f5 WhiteSmoke contained containedin=@colorableGroup
syn keyword BG9acd32 YellowGreen contained containedin=@colorableGroup

View File

@@ -0,0 +1,6 @@
#!/bin/sh
set -e
s=startuptime.txt
vim --startuptime $s -o -c qa "$@"
perl -lane'$sum += $F[1] if m!/\.vim/after/syntax/css\.vim$!; END {print $sum}' $s
rm $s

View File

@@ -0,0 +1,13 @@
# TODO #0f0 should show up green
# TODO f00 should not show up red
set word = '#0f0'
echo "#0f0"
echo #f00
#f00
##0f0
# TODO #0f0
# TODO #0f0 TODO
cat <<X
#0f0
X

View File

@@ -0,0 +1,24 @@
i { background: #359 }
b { background: #335599 }
u { background: rgba(144, 0, 0, .5) }
s { background: hsl(0, 100%, 50%) }
*::color1 { -x-: #359 }
*::color2 { -x-: #335599 }
*::color3 { -x-: rgba(144, 0, 0, .5) }
*::color4 { -x-: hsl(0, 100%, 50%) }
/*
* #123, #456
*/
/* #123456 */
ul {
color: white;
}
ul li {
color: yellow;
background: black;
}

View File

@@ -0,0 +1,10 @@
# #0f0 should show up green
# f00 should not show up red
#f00
##0f0
# #0f0
echo '#0f0'
set result "#0f0"
echo #f00
echo ##0f0

View File

@@ -0,0 +1,11 @@
var Example = React.createClass({
render: function() {
var style = {
color: '#ffde00',
backgroundColor: 'green',
border: '3px dotted rgba(255,0,0)'
fontSize: 200
};
return <div style={style}> Hi! </div>;
}
});

View File

@@ -0,0 +1,24 @@
i { background: #359 }
b { background: #335599 }
u { background: rgba(144, 0, 0, .5) }
s { background: hsl(0, 100%, 50%) }
@color1: #359;
@color1: #335599;
@color3: rgba(144, 0, 0, .5);
@color4: hsl(0, 100%, 50%);
/*
* #123, #456
*/
// #123456
ul {
color: white;
li {
color: yellow;
background: black;
}
}

View File

@@ -0,0 +1,69 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.colorscheme.nord;
hexColor = types.str // {
check = (x: hasPrefix "#" x && builtins.stringLength x == 7);
description = "hexadecimal color";
};
mkHexColorOption = name: default:
mkOption {
type = hexColor;
default = default;
description = name;
};
in {
## POLAR NIGHT
# The origin color or the Polar Night palette.
nord0 = mkHexColorOption "nord0" "#2E3440";
# A brighter shade color based on nord0.
nord1 = mkHexColorOption "nord1" "#3B4252";
# An even more brighter shade color of nord0.
nord2 = mkHexColorOption "nord2" "#434C5E";
# The brightest shade color based on nord0.
nord3 = mkHexColorOption "nord3" "#4C566A";
## SNOW STORM
# The origin color or the Snow Storm palette.
nord4 = mkHexColorOption "nord4" "#D8DEE9";
# A brighter shade color of nord4.
nord5 = mkHexColorOption "nord5" "#E5E9F0";
# The brightest shade color based on nord4.
nord6 = mkHexColorOption "nord6" "#ECEFF4";
## FROST
# A calm and highly contrasted color reminiscent of frozen polar water.
nord7 = mkHexColorOption "nord7" "#8FBCBB";
# The bright and shiny primary accent color reminiscent of pure and clear ice.
nord8 = mkHexColorOption "nord8" "#88C0D0";
# A more darkened and less saturated color reminiscent of arctic waters.
nord9 = mkHexColorOption "nord9" "#81A1C1";
# A dark and intensive color reminiscent of the deep arctic ocean.
nord10 = mkHexColorOption "nord10" "#5E81AC";
## AURORA
# RED
nord11 = mkHexColorOption "nord11" "#BF616A";
# ORANGE
nord12 = mkHexColorOption "nord12" "#D08770";
# YELLOW
nord13 = mkHexColorOption "nord13" "#EBCB8B";
# GREEN
nord14 = mkHexColorOption "nord14" "#A3BE8C";
# PURPLE
nord15 = mkHexColorOption "nord15" "#B48EAD";
}

View File

@@ -0,0 +1,25 @@
i
background: #359
b
background: #335599
u
background: rgba(144, 0, 0, .5)
s
background: hsl(0, 100%, 50%)
!color1 = #359
!color2 = #335599
!color3 = rgba(144, 0, 0, .5)
!color4 = hsl(0, 100%, 50%)
/*
* #123, #456
*/
// #123456
ul
color = white
li
color = yellow
background = black

View File

@@ -0,0 +1,24 @@
i { background: #359 }
b { background: #335599 }
u { background: rgba(144, 0, 0, .5) }
s { background: hsl(0, 100%, 50%) }
$color1: #359;
$color2: #335599;
$color3: rgba(144, 0, 0, .5);
$color4: hsl(0, 100%, 50%);
/*
* #123, #456
*/
// #123456
ul {
color: white;
li {
color: yellow;
background: black;
}
}

View File

@@ -0,0 +1,26 @@
# XXX #0f0 should show up green
# XXX f00 should not show up red
# FIXME ff0 should show up yellow but are known not to
echo '#0f0'
echo ##0f0
echo \#ff0
echo #f00
echo ##0f0
echo # #0f0
cmd '#0f0'
cmd "#0f0"
cmd \#ff0
cmd #f00
cmd ##0f0
cmd # #0f0
echo `foo # #0f0`
for (( x = '#0f0' )) ; do : ; done
for (( x = "#0f0" )) ; do : ; done
#f00
##0f0 XXX
# #0f0 XXX
# XXX #0f0 XXX
cat << ''
#0f0

View File

@@ -0,0 +1,28 @@
i
background #359
b
background #335599
u
background rgba(144, 0, 0, .5)
s
background hsl(0, 100%, 50%)
color1 = #359
color2 = #335599
color3 = rgba(144, 0, 0, .5)
color4 = hsl(0, 100%, 50%)
/*
* #123, #456
*/
// #123456
ul {
color: white;
li {
color: yellow;
background: black;
}
}

View File

@@ -0,0 +1,13 @@
# TODO #0f0 should show up green
# TODO f00 should not show up red
set word = '#0f0'
echo "#0f0"
echo #f00
#f00
##0f0
# TODO #0f0
# TODO #0f0 TODO
cat <<X
#0f0
X

View File

@@ -0,0 +1,21 @@
import { DefaultTheme } from 'styled-components';
const MyTheme = {
green2: '#2f7a5c',
green3: '#35b281',
green4: '#26805c',
green5: '#28664D',
};
/* green darker variations
'#3fa27b'
'#378e6c'
'#2f7a5c'
'#28664D'
'#20513e'
*/
let x = '#20513e';
let y = foo('#20513e');
export default myTheme;

View File

@@ -0,0 +1,53 @@
export class ResultRow extends b.Component<IFood> {
static id: string = "search-result-row";
render(): b.INode {
return (
<Tr style={this.rowColorStyle(this.data.pH)}>
<Td>{this.data.name}</Td>
<Td>{this.data.pH}</Td>
</Tr>
);
}
private rowColorStyle(ph: number): b.IStyle {
let backgroundColor = "#00000000";
let color = "whitesmoke";
if (ph >= 9) {
backgroundColor = "#ac39ac";
} else if (ph >= 8.5) {
backgroundColor = "#d279d2";
} else if (ph >= 8.25) {
backgroundColor = "#e6b3e6";
} else if (ph >= 8) {
backgroundColor = "#80bfff";
} else if (ph >= 7.75) {
backgroundColor = "#77b300";
} else if (ph >= 7.5) {
backgroundColor = "#5cd65c";
} else if (ph >= 7.25) {
backgroundColor = "#00e600";
} else if (ph >= 7) {
backgroundColor = "#ffff33";
} else if (ph >= 6.5) {
backgroundColor = "#ffcc00";
} else if (ph >= 6.25) {
backgroundColor = "#ff8000";
} else if (ph >= 6) {
backgroundColor = "#ff6600";
} else if (ph >= 5.5) {
backgroundColor = "#ff1a1a";
} else if (ph >= 5) {
backgroundColor = "#cc0000";
color = "#ffffff";
} else if (ph >= 4.5) {
backgroundColor = "#990000";
color = "#ffffff";
} else {
backgroundColor = "#660000";
color = "#ffffff";
}
return { backgroundColor, color };
}
}

View File

@@ -0,0 +1,23 @@
# XXX #0f0 should show up green
# XXX f00 should not show up red
# FIXME ff0 should show up yellow but are known not to
echo '#0f0'
echo ##0f0
echo \#ff0
echo #f00
echo ##0f0
echo # #0f0
cmd '#0f0'
cmd "#0f0"
cmd \#ff0
cmd #f00
cmd ##0f0
cmd # #0f0
#f00
##0f0 XXX
# #0f0 XXX
# XXX #0f0 XXX
cat << ''
#0f0

View File

@@ -0,0 +1,256 @@
p { color: #300000; color: #300001; color: #300002; color: #300003; color: #300004; color: #300005; color: #300006; color: #300007; color: #300008; color: #300009; color: #30000a; color: #30000b; color: #30000c; color: #30000d; color: #30000e; color: #30000f;
color: #300100; color: #300101; color: #300102; color: #300103; color: #300104; color: #300105; color: #300106; color: #300107; color: #300108; color: #300109; color: #30010a; color: #30010b; color: #30010c; color: #30010d; color: #30010e; color: #30010f;
color: #300200; color: #300201; color: #300202; color: #300203; color: #300204; color: #300205; color: #300206; color: #300207; color: #300208; color: #300209; color: #30020a; color: #30020b; color: #30020c; color: #30020d; color: #30020e; color: #30020f;
color: #300300; color: #300301; color: #300302; color: #300303; color: #300304; color: #300305; color: #300306; color: #300307; color: #300308; color: #300309; color: #30030a; color: #30030b; color: #30030c; color: #30030d; color: #30030e; color: #30030f;
color: #300400; color: #300401; color: #300402; color: #300403; color: #300404; color: #300405; color: #300406; color: #300407; color: #300408; color: #300409; color: #30040a; color: #30040b; color: #30040c; color: #30040d; color: #30040e; color: #30040f;
color: #300500; color: #300501; color: #300502; color: #300503; color: #300504; color: #300505; color: #300506; color: #300507; color: #300508; color: #300509; color: #30050a; color: #30050b; color: #30050c; color: #30050d; color: #30050e; color: #30050f;
color: #300600; color: #300601; color: #300602; color: #300603; color: #300604; color: #300605; color: #300606; color: #300607; color: #300608; color: #300609; color: #30060a; color: #30060b; color: #30060c; color: #30060d; color: #30060e; color: #30060f;
color: #300700; color: #300701; color: #300702; color: #300703; color: #300704; color: #300705; color: #300706; color: #300707; color: #300708; color: #300709; color: #30070a; color: #30070b; color: #30070c; color: #30070d; color: #30070e; color: #30070f;
color: #300800; color: #300801; color: #300802; color: #300803; color: #300804; color: #300805; color: #300806; color: #300807; color: #300808; color: #300809; color: #30080a; color: #30080b; color: #30080c; color: #30080d; color: #30080e; color: #30080f;
color: #300900; color: #300901; color: #300902; color: #300903; color: #300904; color: #300905; color: #300906; color: #300907; color: #300908; color: #300909; color: #30090a; color: #30090b; color: #30090c; color: #30090d; color: #30090e; color: #30090f;
color: #300a00; color: #300a01; color: #300a02; color: #300a03; color: #300a04; color: #300a05; color: #300a06; color: #300a07; color: #300a08; color: #300a09; color: #300a0a; color: #300a0b; color: #300a0c; color: #300a0d; color: #300a0e; color: #300a0f;
color: #300b00; color: #300b01; color: #300b02; color: #300b03; color: #300b04; color: #300b05; color: #300b06; color: #300b07; color: #300b08; color: #300b09; color: #300b0a; color: #300b0b; color: #300b0c; color: #300b0d; color: #300b0e; color: #300b0f;
color: #300c00; color: #300c01; color: #300c02; color: #300c03; color: #300c04; color: #300c05; color: #300c06; color: #300c07; color: #300c08; color: #300c09; color: #300c0a; color: #300c0b; color: #300c0c; color: #300c0d; color: #300c0e; color: #300c0f;
color: #300d00; color: #300d01; color: #300d02; color: #300d03; color: #300d04; color: #300d05; color: #300d06; color: #300d07; color: #300d08; color: #300d09; color: #300d0a; color: #300d0b; color: #300d0c; color: #300d0d; color: #300d0e; color: #300d0f;
color: #300e00; color: #300e01; color: #300e02; color: #300e03; color: #300e04; color: #300e05; color: #300e06; color: #300e07; color: #300e08; color: #300e09; color: #300e0a; color: #300e0b; color: #300e0c; color: #300e0d; color: #300e0e; color: #300e0f;
color: #300f00; color: #300f01; color: #300f02; color: #300f03; color: #300f04; color: #300f05; color: #300f06; color: #300f07; color: #300f08; color: #300f09; color: #300f0a; color: #300f0b; color: #300f0c; color: #300f0d; color: #300f0e; color: #300f0f;
color: #301000; color: #301001; color: #301002; color: #301003; color: #301004; color: #301005; color: #301006; color: #301007; color: #301008; color: #301009; color: #30100a; color: #30100b; color: #30100c; color: #30100d; color: #30100e; color: #30100f;
color: #301100; color: #301101; color: #301102; color: #301103; color: #301104; color: #301105; color: #301106; color: #301107; color: #301108; color: #301109; color: #30110a; color: #30110b; color: #30110c; color: #30110d; color: #30110e; color: #30110f;
color: #301200; color: #301201; color: #301202; color: #301203; color: #301204; color: #301205; color: #301206; color: #301207; color: #301208; color: #301209; color: #30120a; color: #30120b; color: #30120c; color: #30120d; color: #30120e; color: #30120f;
color: #301300; color: #301301; color: #301302; color: #301303; color: #301304; color: #301305; color: #301306; color: #301307; color: #301308; color: #301309; color: #30130a; color: #30130b; color: #30130c; color: #30130d; color: #30130e; color: #30130f;
color: #301400; color: #301401; color: #301402; color: #301403; color: #301404; color: #301405; color: #301406; color: #301407; color: #301408; color: #301409; color: #30140a; color: #30140b; color: #30140c; color: #30140d; color: #30140e; color: #30140f;
color: #301500; color: #301501; color: #301502; color: #301503; color: #301504; color: #301505; color: #301506; color: #301507; color: #301508; color: #301509; color: #30150a; color: #30150b; color: #30150c; color: #30150d; color: #30150e; color: #30150f;
color: #301600; color: #301601; color: #301602; color: #301603; color: #301604; color: #301605; color: #301606; color: #301607; color: #301608; color: #301609; color: #30160a; color: #30160b; color: #30160c; color: #30160d; color: #30160e; color: #30160f;
color: #301700; color: #301701; color: #301702; color: #301703; color: #301704; color: #301705; color: #301706; color: #301707; color: #301708; color: #301709; color: #30170a; color: #30170b; color: #30170c; color: #30170d; color: #30170e; color: #30170f;
color: #301800; color: #301801; color: #301802; color: #301803; color: #301804; color: #301805; color: #301806; color: #301807; color: #301808; color: #301809; color: #30180a; color: #30180b; color: #30180c; color: #30180d; color: #30180e; color: #30180f;
color: #301900; color: #301901; color: #301902; color: #301903; color: #301904; color: #301905; color: #301906; color: #301907; color: #301908; color: #301909; color: #30190a; color: #30190b; color: #30190c; color: #30190d; color: #30190e; color: #30190f;
color: #301a00; color: #301a01; color: #301a02; color: #301a03; color: #301a04; color: #301a05; color: #301a06; color: #301a07; color: #301a08; color: #301a09; color: #301a0a; color: #301a0b; color: #301a0c; color: #301a0d; color: #301a0e; color: #301a0f;
color: #301b00; color: #301b01; color: #301b02; color: #301b03; color: #301b04; color: #301b05; color: #301b06; color: #301b07; color: #301b08; color: #301b09; color: #301b0a; color: #301b0b; color: #301b0c; color: #301b0d; color: #301b0e; color: #301b0f;
color: #301c00; color: #301c01; color: #301c02; color: #301c03; color: #301c04; color: #301c05; color: #301c06; color: #301c07; color: #301c08; color: #301c09; color: #301c0a; color: #301c0b; color: #301c0c; color: #301c0d; color: #301c0e; color: #301c0f;
color: #301d00; color: #301d01; color: #301d02; color: #301d03; color: #301d04; color: #301d05; color: #301d06; color: #301d07; color: #301d08; color: #301d09; color: #301d0a; color: #301d0b; color: #301d0c; color: #301d0d; color: #301d0e; color: #301d0f;
color: #301e00; color: #301e01; color: #301e02; color: #301e03; color: #301e04; color: #301e05; color: #301e06; color: #301e07; color: #301e08; color: #301e09; color: #301e0a; color: #301e0b; color: #301e0c; color: #301e0d; color: #301e0e; color: #301e0f;
color: #301f00; color: #301f01; color: #301f02; color: #301f03; color: #301f04; color: #301f05; color: #301f06; color: #301f07; color: #301f08; color: #301f09; color: #301f0a; color: #301f0b; color: #301f0c; color: #301f0d; color: #301f0e; color: #301f0f;
color: #302000; color: #302001; color: #302002; color: #302003; color: #302004; color: #302005; color: #302006; color: #302007; color: #302008; color: #302009; color: #30200a; color: #30200b; color: #30200c; color: #30200d; color: #30200e; color: #30200f;
color: #302100; color: #302101; color: #302102; color: #302103; color: #302104; color: #302105; color: #302106; color: #302107; color: #302108; color: #302109; color: #30210a; color: #30210b; color: #30210c; color: #30210d; color: #30210e; color: #30210f;
color: #302200; color: #302201; color: #302202; color: #302203; color: #302204; color: #302205; color: #302206; color: #302207; color: #302208; color: #302209; color: #30220a; color: #30220b; color: #30220c; color: #30220d; color: #30220e; color: #30220f;
color: #302300; color: #302301; color: #302302; color: #302303; color: #302304; color: #302305; color: #302306; color: #302307; color: #302308; color: #302309; color: #30230a; color: #30230b; color: #30230c; color: #30230d; color: #30230e; color: #30230f;
color: #302400; color: #302401; color: #302402; color: #302403; color: #302404; color: #302405; color: #302406; color: #302407; color: #302408; color: #302409; color: #30240a; color: #30240b; color: #30240c; color: #30240d; color: #30240e; color: #30240f;
color: #302500; color: #302501; color: #302502; color: #302503; color: #302504; color: #302505; color: #302506; color: #302507; color: #302508; color: #302509; color: #30250a; color: #30250b; color: #30250c; color: #30250d; color: #30250e; color: #30250f;
color: #302600; color: #302601; color: #302602; color: #302603; color: #302604; color: #302605; color: #302606; color: #302607; color: #302608; color: #302609; color: #30260a; color: #30260b; color: #30260c; color: #30260d; color: #30260e; color: #30260f;
color: #302700; color: #302701; color: #302702; color: #302703; color: #302704; color: #302705; color: #302706; color: #302707; color: #302708; color: #302709; color: #30270a; color: #30270b; color: #30270c; color: #30270d; color: #30270e; color: #30270f;
color: #302800; color: #302801; color: #302802; color: #302803; color: #302804; color: #302805; color: #302806; color: #302807; color: #302808; color: #302809; color: #30280a; color: #30280b; color: #30280c; color: #30280d; color: #30280e; color: #30280f;
color: #302900; color: #302901; color: #302902; color: #302903; color: #302904; color: #302905; color: #302906; color: #302907; color: #302908; color: #302909; color: #30290a; color: #30290b; color: #30290c; color: #30290d; color: #30290e; color: #30290f;
color: #302a00; color: #302a01; color: #302a02; color: #302a03; color: #302a04; color: #302a05; color: #302a06; color: #302a07; color: #302a08; color: #302a09; color: #302a0a; color: #302a0b; color: #302a0c; color: #302a0d; color: #302a0e; color: #302a0f;
color: #302b00; color: #302b01; color: #302b02; color: #302b03; color: #302b04; color: #302b05; color: #302b06; color: #302b07; color: #302b08; color: #302b09; color: #302b0a; color: #302b0b; color: #302b0c; color: #302b0d; color: #302b0e; color: #302b0f;
color: #302c00; color: #302c01; color: #302c02; color: #302c03; color: #302c04; color: #302c05; color: #302c06; color: #302c07; color: #302c08; color: #302c09; color: #302c0a; color: #302c0b; color: #302c0c; color: #302c0d; color: #302c0e; color: #302c0f;
color: #302d00; color: #302d01; color: #302d02; color: #302d03; color: #302d04; color: #302d05; color: #302d06; color: #302d07; color: #302d08; color: #302d09; color: #302d0a; color: #302d0b; color: #302d0c; color: #302d0d; color: #302d0e; color: #302d0f;
color: #302e00; color: #302e01; color: #302e02; color: #302e03; color: #302e04; color: #302e05; color: #302e06; color: #302e07; color: #302e08; color: #302e09; color: #302e0a; color: #302e0b; color: #302e0c; color: #302e0d; color: #302e0e; color: #302e0f;
color: #302f00; color: #302f01; color: #302f02; color: #302f03; color: #302f04; color: #302f05; color: #302f06; color: #302f07; color: #302f08; color: #302f09; color: #302f0a; color: #302f0b; color: #302f0c; color: #302f0d; color: #302f0e; color: #302f0f;
color: #303000; color: #303001; color: #303002; color: #303003; color: #303004; color: #303005; color: #303006; color: #303007; color: #303008; color: #303009; color: #30300a; color: #30300b; color: #30300c; color: #30300d; color: #30300e; color: #30300f;
color: #303100; color: #303101; color: #303102; color: #303103; color: #303104; color: #303105; color: #303106; color: #303107; color: #303108; color: #303109; color: #30310a; color: #30310b; color: #30310c; color: #30310d; color: #30310e; color: #30310f;
color: #303200; color: #303201; color: #303202; color: #303203; color: #303204; color: #303205; color: #303206; color: #303207; color: #303208; color: #303209; color: #30320a; color: #30320b; color: #30320c; color: #30320d; color: #30320e; color: #30320f;
color: #303300; color: #303301; color: #303302; color: #303303; color: #303304; color: #303305; color: #303306; color: #303307; color: #303308; color: #303309; color: #30330a; color: #30330b; color: #30330c; color: #30330d; color: #30330e; color: #30330f;
color: #303400; color: #303401; color: #303402; color: #303403; color: #303404; color: #303405; color: #303406; color: #303407; color: #303408; color: #303409; color: #30340a; color: #30340b; color: #30340c; color: #30340d; color: #30340e; color: #30340f;
color: #303500; color: #303501; color: #303502; color: #303503; color: #303504; color: #303505; color: #303506; color: #303507; color: #303508; color: #303509; color: #30350a; color: #30350b; color: #30350c; color: #30350d; color: #30350e; color: #30350f;
color: #303600; color: #303601; color: #303602; color: #303603; color: #303604; color: #303605; color: #303606; color: #303607; color: #303608; color: #303609; color: #30360a; color: #30360b; color: #30360c; color: #30360d; color: #30360e; color: #30360f;
color: #303700; color: #303701; color: #303702; color: #303703; color: #303704; color: #303705; color: #303706; color: #303707; color: #303708; color: #303709; color: #30370a; color: #30370b; color: #30370c; color: #30370d; color: #30370e; color: #30370f;
color: #303800; color: #303801; color: #303802; color: #303803; color: #303804; color: #303805; color: #303806; color: #303807; color: #303808; color: #303809; color: #30380a; color: #30380b; color: #30380c; color: #30380d; color: #30380e; color: #30380f;
color: #303900; color: #303901; color: #303902; color: #303903; color: #303904; color: #303905; color: #303906; color: #303907; color: #303908; color: #303909; color: #30390a; color: #30390b; color: #30390c; color: #30390d; color: #30390e; color: #30390f;
color: #303a00; color: #303a01; color: #303a02; color: #303a03; color: #303a04; color: #303a05; color: #303a06; color: #303a07; color: #303a08; color: #303a09; color: #303a0a; color: #303a0b; color: #303a0c; color: #303a0d; color: #303a0e; color: #303a0f;
color: #303b00; color: #303b01; color: #303b02; color: #303b03; color: #303b04; color: #303b05; color: #303b06; color: #303b07; color: #303b08; color: #303b09; color: #303b0a; color: #303b0b; color: #303b0c; color: #303b0d; color: #303b0e; color: #303b0f;
color: #303c00; color: #303c01; color: #303c02; color: #303c03; color: #303c04; color: #303c05; color: #303c06; color: #303c07; color: #303c08; color: #303c09; color: #303c0a; color: #303c0b; color: #303c0c; color: #303c0d; color: #303c0e; color: #303c0f;
color: #303d00; color: #303d01; color: #303d02; color: #303d03; color: #303d04; color: #303d05; color: #303d06; color: #303d07; color: #303d08; color: #303d09; color: #303d0a; color: #303d0b; color: #303d0c; color: #303d0d; color: #303d0e; color: #303d0f;
color: #303e00; color: #303e01; color: #303e02; color: #303e03; color: #303e04; color: #303e05; color: #303e06; color: #303e07; color: #303e08; color: #303e09; color: #303e0a; color: #303e0b; color: #303e0c; color: #303e0d; color: #303e0e; color: #303e0f;
color: #303f00; color: #303f01; color: #303f02; color: #303f03; color: #303f04; color: #303f05; color: #303f06; color: #303f07; color: #303f08; color: #303f09; color: #303f0a; color: #303f0b; color: #303f0c; color: #303f0d; color: #303f0e; color: #303f0f;
color: #304000; color: #304001; color: #304002; color: #304003; color: #304004; color: #304005; color: #304006; color: #304007; color: #304008; color: #304009; color: #30400a; color: #30400b; color: #30400c; color: #30400d; color: #30400e; color: #30400f;
color: #304100; color: #304101; color: #304102; color: #304103; color: #304104; color: #304105; color: #304106; color: #304107; color: #304108; color: #304109; color: #30410a; color: #30410b; color: #30410c; color: #30410d; color: #30410e; color: #30410f;
color: #304200; color: #304201; color: #304202; color: #304203; color: #304204; color: #304205; color: #304206; color: #304207; color: #304208; color: #304209; color: #30420a; color: #30420b; color: #30420c; color: #30420d; color: #30420e; color: #30420f;
color: #304300; color: #304301; color: #304302; color: #304303; color: #304304; color: #304305; color: #304306; color: #304307; color: #304308; color: #304309; color: #30430a; color: #30430b; color: #30430c; color: #30430d; color: #30430e; color: #30430f;
color: #304400; color: #304401; color: #304402; color: #304403; color: #304404; color: #304405; color: #304406; color: #304407; color: #304408; color: #304409; color: #30440a; color: #30440b; color: #30440c; color: #30440d; color: #30440e; color: #30440f;
color: #304500; color: #304501; color: #304502; color: #304503; color: #304504; color: #304505; color: #304506; color: #304507; color: #304508; color: #304509; color: #30450a; color: #30450b; color: #30450c; color: #30450d; color: #30450e; color: #30450f;
color: #304600; color: #304601; color: #304602; color: #304603; color: #304604; color: #304605; color: #304606; color: #304607; color: #304608; color: #304609; color: #30460a; color: #30460b; color: #30460c; color: #30460d; color: #30460e; color: #30460f;
color: #304700; color: #304701; color: #304702; color: #304703; color: #304704; color: #304705; color: #304706; color: #304707; color: #304708; color: #304709; color: #30470a; color: #30470b; color: #30470c; color: #30470d; color: #30470e; color: #30470f;
color: #304800; color: #304801; color: #304802; color: #304803; color: #304804; color: #304805; color: #304806; color: #304807; color: #304808; color: #304809; color: #30480a; color: #30480b; color: #30480c; color: #30480d; color: #30480e; color: #30480f;
color: #304900; color: #304901; color: #304902; color: #304903; color: #304904; color: #304905; color: #304906; color: #304907; color: #304908; color: #304909; color: #30490a; color: #30490b; color: #30490c; color: #30490d; color: #30490e; color: #30490f;
color: #304a00; color: #304a01; color: #304a02; color: #304a03; color: #304a04; color: #304a05; color: #304a06; color: #304a07; color: #304a08; color: #304a09; color: #304a0a; color: #304a0b; color: #304a0c; color: #304a0d; color: #304a0e; color: #304a0f;
color: #304b00; color: #304b01; color: #304b02; color: #304b03; color: #304b04; color: #304b05; color: #304b06; color: #304b07; color: #304b08; color: #304b09; color: #304b0a; color: #304b0b; color: #304b0c; color: #304b0d; color: #304b0e; color: #304b0f;
color: #304c00; color: #304c01; color: #304c02; color: #304c03; color: #304c04; color: #304c05; color: #304c06; color: #304c07; color: #304c08; color: #304c09; color: #304c0a; color: #304c0b; color: #304c0c; color: #304c0d; color: #304c0e; color: #304c0f;
color: #304d00; color: #304d01; color: #304d02; color: #304d03; color: #304d04; color: #304d05; color: #304d06; color: #304d07; color: #304d08; color: #304d09; color: #304d0a; color: #304d0b; color: #304d0c; color: #304d0d; color: #304d0e; color: #304d0f;
color: #304e00; color: #304e01; color: #304e02; color: #304e03; color: #304e04; color: #304e05; color: #304e06; color: #304e07; color: #304e08; color: #304e09; color: #304e0a; color: #304e0b; color: #304e0c; color: #304e0d; color: #304e0e; color: #304e0f;
color: #304f00; color: #304f01; color: #304f02; color: #304f03; color: #304f04; color: #304f05; color: #304f06; color: #304f07; color: #304f08; color: #304f09; color: #304f0a; color: #304f0b; color: #304f0c; color: #304f0d; color: #304f0e; color: #304f0f;
color: #305000; color: #305001; color: #305002; color: #305003; color: #305004; color: #305005; color: #305006; color: #305007; color: #305008; color: #305009; color: #30500a; color: #30500b; color: #30500c; color: #30500d; color: #30500e; color: #30500f;
color: #305100; color: #305101; color: #305102; color: #305103; color: #305104; color: #305105; color: #305106; color: #305107; color: #305108; color: #305109; color: #30510a; color: #30510b; color: #30510c; color: #30510d; color: #30510e; color: #30510f;
color: #305200; color: #305201; color: #305202; color: #305203; color: #305204; color: #305205; color: #305206; color: #305207; color: #305208; color: #305209; color: #30520a; color: #30520b; color: #30520c; color: #30520d; color: #30520e; color: #30520f;
color: #305300; color: #305301; color: #305302; color: #305303; color: #305304; color: #305305; color: #305306; color: #305307; color: #305308; color: #305309; color: #30530a; color: #30530b; color: #30530c; color: #30530d; color: #30530e; color: #30530f;
color: #305400; color: #305401; color: #305402; color: #305403; color: #305404; color: #305405; color: #305406; color: #305407; color: #305408; color: #305409; color: #30540a; color: #30540b; color: #30540c; color: #30540d; color: #30540e; color: #30540f;
color: #305500; color: #305501; color: #305502; color: #305503; color: #305504; color: #305505; color: #305506; color: #305507; color: #305508; color: #305509; color: #30550a; color: #30550b; color: #30550c; color: #30550d; color: #30550e; color: #30550f;
color: #305600; color: #305601; color: #305602; color: #305603; color: #305604; color: #305605; color: #305606; color: #305607; color: #305608; color: #305609; color: #30560a; color: #30560b; color: #30560c; color: #30560d; color: #30560e; color: #30560f;
color: #305700; color: #305701; color: #305702; color: #305703; color: #305704; color: #305705; color: #305706; color: #305707; color: #305708; color: #305709; color: #30570a; color: #30570b; color: #30570c; color: #30570d; color: #30570e; color: #30570f;
color: #305800; color: #305801; color: #305802; color: #305803; color: #305804; color: #305805; color: #305806; color: #305807; color: #305808; color: #305809; color: #30580a; color: #30580b; color: #30580c; color: #30580d; color: #30580e; color: #30580f;
color: #305900; color: #305901; color: #305902; color: #305903; color: #305904; color: #305905; color: #305906; color: #305907; color: #305908; color: #305909; color: #30590a; color: #30590b; color: #30590c; color: #30590d; color: #30590e; color: #30590f;
color: #305a00; color: #305a01; color: #305a02; color: #305a03; color: #305a04; color: #305a05; color: #305a06; color: #305a07; color: #305a08; color: #305a09; color: #305a0a; color: #305a0b; color: #305a0c; color: #305a0d; color: #305a0e; color: #305a0f;
color: #305b00; color: #305b01; color: #305b02; color: #305b03; color: #305b04; color: #305b05; color: #305b06; color: #305b07; color: #305b08; color: #305b09; color: #305b0a; color: #305b0b; color: #305b0c; color: #305b0d; color: #305b0e; color: #305b0f;
color: #305c00; color: #305c01; color: #305c02; color: #305c03; color: #305c04; color: #305c05; color: #305c06; color: #305c07; color: #305c08; color: #305c09; color: #305c0a; color: #305c0b; color: #305c0c; color: #305c0d; color: #305c0e; color: #305c0f;
color: #305d00; color: #305d01; color: #305d02; color: #305d03; color: #305d04; color: #305d05; color: #305d06; color: #305d07; color: #305d08; color: #305d09; color: #305d0a; color: #305d0b; color: #305d0c; color: #305d0d; color: #305d0e; color: #305d0f;
color: #305e00; color: #305e01; color: #305e02; color: #305e03; color: #305e04; color: #305e05; color: #305e06; color: #305e07; color: #305e08; color: #305e09; color: #305e0a; color: #305e0b; color: #305e0c; color: #305e0d; color: #305e0e; color: #305e0f;
color: #305f00; color: #305f01; color: #305f02; color: #305f03; color: #305f04; color: #305f05; color: #305f06; color: #305f07; color: #305f08; color: #305f09; color: #305f0a; color: #305f0b; color: #305f0c; color: #305f0d; color: #305f0e; color: #305f0f;
color: #306000; color: #306001; color: #306002; color: #306003; color: #306004; color: #306005; color: #306006; color: #306007; color: #306008; color: #306009; color: #30600a; color: #30600b; color: #30600c; color: #30600d; color: #30600e; color: #30600f;
color: #306100; color: #306101; color: #306102; color: #306103; color: #306104; color: #306105; color: #306106; color: #306107; color: #306108; color: #306109; color: #30610a; color: #30610b; color: #30610c; color: #30610d; color: #30610e; color: #30610f;
color: #306200; color: #306201; color: #306202; color: #306203; color: #306204; color: #306205; color: #306206; color: #306207; color: #306208; color: #306209; color: #30620a; color: #30620b; color: #30620c; color: #30620d; color: #30620e; color: #30620f;
color: #306300; color: #306301; color: #306302; color: #306303; color: #306304; color: #306305; color: #306306; color: #306307; color: #306308; color: #306309; color: #30630a; color: #30630b; color: #30630c; color: #30630d; color: #30630e; color: #30630f;
color: #306400; color: #306401; color: #306402; color: #306403; color: #306404; color: #306405; color: #306406; color: #306407; color: #306408; color: #306409; color: #30640a; color: #30640b; color: #30640c; color: #30640d; color: #30640e; color: #30640f;
color: #306500; color: #306501; color: #306502; color: #306503; color: #306504; color: #306505; color: #306506; color: #306507; color: #306508; color: #306509; color: #30650a; color: #30650b; color: #30650c; color: #30650d; color: #30650e; color: #30650f;
color: #306600; color: #306601; color: #306602; color: #306603; color: #306604; color: #306605; color: #306606; color: #306607; color: #306608; color: #306609; color: #30660a; color: #30660b; color: #30660c; color: #30660d; color: #30660e; color: #30660f;
color: #306700; color: #306701; color: #306702; color: #306703; color: #306704; color: #306705; color: #306706; color: #306707; color: #306708; color: #306709; color: #30670a; color: #30670b; color: #30670c; color: #30670d; color: #30670e; color: #30670f;
color: #306800; color: #306801; color: #306802; color: #306803; color: #306804; color: #306805; color: #306806; color: #306807; color: #306808; color: #306809; color: #30680a; color: #30680b; color: #30680c; color: #30680d; color: #30680e; color: #30680f;
color: #306900; color: #306901; color: #306902; color: #306903; color: #306904; color: #306905; color: #306906; color: #306907; color: #306908; color: #306909; color: #30690a; color: #30690b; color: #30690c; color: #30690d; color: #30690e; color: #30690f;
color: #306a00; color: #306a01; color: #306a02; color: #306a03; color: #306a04; color: #306a05; color: #306a06; color: #306a07; color: #306a08; color: #306a09; color: #306a0a; color: #306a0b; color: #306a0c; color: #306a0d; color: #306a0e; color: #306a0f;
color: #306b00; color: #306b01; color: #306b02; color: #306b03; color: #306b04; color: #306b05; color: #306b06; color: #306b07; color: #306b08; color: #306b09; color: #306b0a; color: #306b0b; color: #306b0c; color: #306b0d; color: #306b0e; color: #306b0f;
color: #306c00; color: #306c01; color: #306c02; color: #306c03; color: #306c04; color: #306c05; color: #306c06; color: #306c07; color: #306c08; color: #306c09; color: #306c0a; color: #306c0b; color: #306c0c; color: #306c0d; color: #306c0e; color: #306c0f;
color: #306d00; color: #306d01; color: #306d02; color: #306d03; color: #306d04; color: #306d05; color: #306d06; color: #306d07; color: #306d08; color: #306d09; color: #306d0a; color: #306d0b; color: #306d0c; color: #306d0d; color: #306d0e; color: #306d0f;
color: #306e00; color: #306e01; color: #306e02; color: #306e03; color: #306e04; color: #306e05; color: #306e06; color: #306e07; color: #306e08; color: #306e09; color: #306e0a; color: #306e0b; color: #306e0c; color: #306e0d; color: #306e0e; color: #306e0f;
color: #306f00; color: #306f01; color: #306f02; color: #306f03; color: #306f04; color: #306f05; color: #306f06; color: #306f07; color: #306f08; color: #306f09; color: #306f0a; color: #306f0b; color: #306f0c; color: #306f0d; color: #306f0e; color: #306f0f;
color: #307000; color: #307001; color: #307002; color: #307003; color: #307004; color: #307005; color: #307006; color: #307007; color: #307008; color: #307009; color: #30700a; color: #30700b; color: #30700c; color: #30700d; color: #30700e; color: #30700f;
color: #307100; color: #307101; color: #307102; color: #307103; color: #307104; color: #307105; color: #307106; color: #307107; color: #307108; color: #307109; color: #30710a; color: #30710b; color: #30710c; color: #30710d; color: #30710e; color: #30710f;
color: #307200; color: #307201; color: #307202; color: #307203; color: #307204; color: #307205; color: #307206; color: #307207; color: #307208; color: #307209; color: #30720a; color: #30720b; color: #30720c; color: #30720d; color: #30720e; color: #30720f;
color: #307300; color: #307301; color: #307302; color: #307303; color: #307304; color: #307305; color: #307306; color: #307307; color: #307308; color: #307309; color: #30730a; color: #30730b; color: #30730c; color: #30730d; color: #30730e; color: #30730f;
color: #307400; color: #307401; color: #307402; color: #307403; color: #307404; color: #307405; color: #307406; color: #307407; color: #307408; color: #307409; color: #30740a; color: #30740b; color: #30740c; color: #30740d; color: #30740e; color: #30740f;
color: #307500; color: #307501; color: #307502; color: #307503; color: #307504; color: #307505; color: #307506; color: #307507; color: #307508; color: #307509; color: #30750a; color: #30750b; color: #30750c; color: #30750d; color: #30750e; color: #30750f;
color: #307600; color: #307601; color: #307602; color: #307603; color: #307604; color: #307605; color: #307606; color: #307607; color: #307608; color: #307609; color: #30760a; color: #30760b; color: #30760c; color: #30760d; color: #30760e; color: #30760f;
color: #307700; color: #307701; color: #307702; color: #307703; color: #307704; color: #307705; color: #307706; color: #307707; color: #307708; color: #307709; color: #30770a; color: #30770b; color: #30770c; color: #30770d; color: #30770e; color: #30770f;
color: #307800; color: #307801; color: #307802; color: #307803; color: #307804; color: #307805; color: #307806; color: #307807; color: #307808; color: #307809; color: #30780a; color: #30780b; color: #30780c; color: #30780d; color: #30780e; color: #30780f;
color: #307900; color: #307901; color: #307902; color: #307903; color: #307904; color: #307905; color: #307906; color: #307907; color: #307908; color: #307909; color: #30790a; color: #30790b; color: #30790c; color: #30790d; color: #30790e; color: #30790f;
color: #307a00; color: #307a01; color: #307a02; color: #307a03; color: #307a04; color: #307a05; color: #307a06; color: #307a07; color: #307a08; color: #307a09; color: #307a0a; color: #307a0b; color: #307a0c; color: #307a0d; color: #307a0e; color: #307a0f;
color: #307b00; color: #307b01; color: #307b02; color: #307b03; color: #307b04; color: #307b05; color: #307b06; color: #307b07; color: #307b08; color: #307b09; color: #307b0a; color: #307b0b; color: #307b0c; color: #307b0d; color: #307b0e; color: #307b0f;
color: #307c00; color: #307c01; color: #307c02; color: #307c03; color: #307c04; color: #307c05; color: #307c06; color: #307c07; color: #307c08; color: #307c09; color: #307c0a; color: #307c0b; color: #307c0c; color: #307c0d; color: #307c0e; color: #307c0f;
color: #307d00; color: #307d01; color: #307d02; color: #307d03; color: #307d04; color: #307d05; color: #307d06; color: #307d07; color: #307d08; color: #307d09; color: #307d0a; color: #307d0b; color: #307d0c; color: #307d0d; color: #307d0e; color: #307d0f;
color: #307e00; color: #307e01; color: #307e02; color: #307e03; color: #307e04; color: #307e05; color: #307e06; color: #307e07; color: #307e08; color: #307e09; color: #307e0a; color: #307e0b; color: #307e0c; color: #307e0d; color: #307e0e; color: #307e0f;
color: #307f00; color: #307f01; color: #307f02; color: #307f03; color: #307f04; color: #307f05; color: #307f06; color: #307f07; color: #307f08; color: #307f09; color: #307f0a; color: #307f0b; color: #307f0c; color: #307f0d; color: #307f0e; color: #307f0f;
color: #308000; color: #308001; color: #308002; color: #308003; color: #308004; color: #308005; color: #308006; color: #308007; color: #308008; color: #308009; color: #30800a; color: #30800b; color: #30800c; color: #30800d; color: #30800e; color: #30800f;
color: #308100; color: #308101; color: #308102; color: #308103; color: #308104; color: #308105; color: #308106; color: #308107; color: #308108; color: #308109; color: #30810a; color: #30810b; color: #30810c; color: #30810d; color: #30810e; color: #30810f;
color: #308200; color: #308201; color: #308202; color: #308203; color: #308204; color: #308205; color: #308206; color: #308207; color: #308208; color: #308209; color: #30820a; color: #30820b; color: #30820c; color: #30820d; color: #30820e; color: #30820f;
color: #308300; color: #308301; color: #308302; color: #308303; color: #308304; color: #308305; color: #308306; color: #308307; color: #308308; color: #308309; color: #30830a; color: #30830b; color: #30830c; color: #30830d; color: #30830e; color: #30830f;
color: #308400; color: #308401; color: #308402; color: #308403; color: #308404; color: #308405; color: #308406; color: #308407; color: #308408; color: #308409; color: #30840a; color: #30840b; color: #30840c; color: #30840d; color: #30840e; color: #30840f;
color: #308500; color: #308501; color: #308502; color: #308503; color: #308504; color: #308505; color: #308506; color: #308507; color: #308508; color: #308509; color: #30850a; color: #30850b; color: #30850c; color: #30850d; color: #30850e; color: #30850f;
color: #308600; color: #308601; color: #308602; color: #308603; color: #308604; color: #308605; color: #308606; color: #308607; color: #308608; color: #308609; color: #30860a; color: #30860b; color: #30860c; color: #30860d; color: #30860e; color: #30860f;
color: #308700; color: #308701; color: #308702; color: #308703; color: #308704; color: #308705; color: #308706; color: #308707; color: #308708; color: #308709; color: #30870a; color: #30870b; color: #30870c; color: #30870d; color: #30870e; color: #30870f;
color: #308800; color: #308801; color: #308802; color: #308803; color: #308804; color: #308805; color: #308806; color: #308807; color: #308808; color: #308809; color: #30880a; color: #30880b; color: #30880c; color: #30880d; color: #30880e; color: #30880f;
color: #308900; color: #308901; color: #308902; color: #308903; color: #308904; color: #308905; color: #308906; color: #308907; color: #308908; color: #308909; color: #30890a; color: #30890b; color: #30890c; color: #30890d; color: #30890e; color: #30890f;
color: #308a00; color: #308a01; color: #308a02; color: #308a03; color: #308a04; color: #308a05; color: #308a06; color: #308a07; color: #308a08; color: #308a09; color: #308a0a; color: #308a0b; color: #308a0c; color: #308a0d; color: #308a0e; color: #308a0f;
color: #308b00; color: #308b01; color: #308b02; color: #308b03; color: #308b04; color: #308b05; color: #308b06; color: #308b07; color: #308b08; color: #308b09; color: #308b0a; color: #308b0b; color: #308b0c; color: #308b0d; color: #308b0e; color: #308b0f;
color: #308c00; color: #308c01; color: #308c02; color: #308c03; color: #308c04; color: #308c05; color: #308c06; color: #308c07; color: #308c08; color: #308c09; color: #308c0a; color: #308c0b; color: #308c0c; color: #308c0d; color: #308c0e; color: #308c0f;
color: #308d00; color: #308d01; color: #308d02; color: #308d03; color: #308d04; color: #308d05; color: #308d06; color: #308d07; color: #308d08; color: #308d09; color: #308d0a; color: #308d0b; color: #308d0c; color: #308d0d; color: #308d0e; color: #308d0f;
color: #308e00; color: #308e01; color: #308e02; color: #308e03; color: #308e04; color: #308e05; color: #308e06; color: #308e07; color: #308e08; color: #308e09; color: #308e0a; color: #308e0b; color: #308e0c; color: #308e0d; color: #308e0e; color: #308e0f;
color: #308f00; color: #308f01; color: #308f02; color: #308f03; color: #308f04; color: #308f05; color: #308f06; color: #308f07; color: #308f08; color: #308f09; color: #308f0a; color: #308f0b; color: #308f0c; color: #308f0d; color: #308f0e; color: #308f0f;
color: #309000; color: #309001; color: #309002; color: #309003; color: #309004; color: #309005; color: #309006; color: #309007; color: #309008; color: #309009; color: #30900a; color: #30900b; color: #30900c; color: #30900d; color: #30900e; color: #30900f;
color: #309100; color: #309101; color: #309102; color: #309103; color: #309104; color: #309105; color: #309106; color: #309107; color: #309108; color: #309109; color: #30910a; color: #30910b; color: #30910c; color: #30910d; color: #30910e; color: #30910f;
color: #309200; color: #309201; color: #309202; color: #309203; color: #309204; color: #309205; color: #309206; color: #309207; color: #309208; color: #309209; color: #30920a; color: #30920b; color: #30920c; color: #30920d; color: #30920e; color: #30920f;
color: #309300; color: #309301; color: #309302; color: #309303; color: #309304; color: #309305; color: #309306; color: #309307; color: #309308; color: #309309; color: #30930a; color: #30930b; color: #30930c; color: #30930d; color: #30930e; color: #30930f;
color: #309400; color: #309401; color: #309402; color: #309403; color: #309404; color: #309405; color: #309406; color: #309407; color: #309408; color: #309409; color: #30940a; color: #30940b; color: #30940c; color: #30940d; color: #30940e; color: #30940f;
color: #309500; color: #309501; color: #309502; color: #309503; color: #309504; color: #309505; color: #309506; color: #309507; color: #309508; color: #309509; color: #30950a; color: #30950b; color: #30950c; color: #30950d; color: #30950e; color: #30950f;
color: #309600; color: #309601; color: #309602; color: #309603; color: #309604; color: #309605; color: #309606; color: #309607; color: #309608; color: #309609; color: #30960a; color: #30960b; color: #30960c; color: #30960d; color: #30960e; color: #30960f;
color: #309700; color: #309701; color: #309702; color: #309703; color: #309704; color: #309705; color: #309706; color: #309707; color: #309708; color: #309709; color: #30970a; color: #30970b; color: #30970c; color: #30970d; color: #30970e; color: #30970f;
color: #309800; color: #309801; color: #309802; color: #309803; color: #309804; color: #309805; color: #309806; color: #309807; color: #309808; color: #309809; color: #30980a; color: #30980b; color: #30980c; color: #30980d; color: #30980e; color: #30980f;
color: #309900; color: #309901; color: #309902; color: #309903; color: #309904; color: #309905; color: #309906; color: #309907; color: #309908; color: #309909; color: #30990a; color: #30990b; color: #30990c; color: #30990d; color: #30990e; color: #30990f;
color: #309a00; color: #309a01; color: #309a02; color: #309a03; color: #309a04; color: #309a05; color: #309a06; color: #309a07; color: #309a08; color: #309a09; color: #309a0a; color: #309a0b; color: #309a0c; color: #309a0d; color: #309a0e; color: #309a0f;
color: #309b00; color: #309b01; color: #309b02; color: #309b03; color: #309b04; color: #309b05; color: #309b06; color: #309b07; color: #309b08; color: #309b09; color: #309b0a; color: #309b0b; color: #309b0c; color: #309b0d; color: #309b0e; color: #309b0f;
color: #309c00; color: #309c01; color: #309c02; color: #309c03; color: #309c04; color: #309c05; color: #309c06; color: #309c07; color: #309c08; color: #309c09; color: #309c0a; color: #309c0b; color: #309c0c; color: #309c0d; color: #309c0e; color: #309c0f;
color: #309d00; color: #309d01; color: #309d02; color: #309d03; color: #309d04; color: #309d05; color: #309d06; color: #309d07; color: #309d08; color: #309d09; color: #309d0a; color: #309d0b; color: #309d0c; color: #309d0d; color: #309d0e; color: #309d0f;
color: #309e00; color: #309e01; color: #309e02; color: #309e03; color: #309e04; color: #309e05; color: #309e06; color: #309e07; color: #309e08; color: #309e09; color: #309e0a; color: #309e0b; color: #309e0c; color: #309e0d; color: #309e0e; color: #309e0f;
color: #309f00; color: #309f01; color: #309f02; color: #309f03; color: #309f04; color: #309f05; color: #309f06; color: #309f07; color: #309f08; color: #309f09; color: #309f0a; color: #309f0b; color: #309f0c; color: #309f0d; color: #309f0e; color: #309f0f;
color: #30a000; color: #30a001; color: #30a002; color: #30a003; color: #30a004; color: #30a005; color: #30a006; color: #30a007; color: #30a008; color: #30a009; color: #30a00a; color: #30a00b; color: #30a00c; color: #30a00d; color: #30a00e; color: #30a00f;
color: #30a100; color: #30a101; color: #30a102; color: #30a103; color: #30a104; color: #30a105; color: #30a106; color: #30a107; color: #30a108; color: #30a109; color: #30a10a; color: #30a10b; color: #30a10c; color: #30a10d; color: #30a10e; color: #30a10f;
color: #30a200; color: #30a201; color: #30a202; color: #30a203; color: #30a204; color: #30a205; color: #30a206; color: #30a207; color: #30a208; color: #30a209; color: #30a20a; color: #30a20b; color: #30a20c; color: #30a20d; color: #30a20e; color: #30a20f;
color: #30a300; color: #30a301; color: #30a302; color: #30a303; color: #30a304; color: #30a305; color: #30a306; color: #30a307; color: #30a308; color: #30a309; color: #30a30a; color: #30a30b; color: #30a30c; color: #30a30d; color: #30a30e; color: #30a30f;
color: #30a400; color: #30a401; color: #30a402; color: #30a403; color: #30a404; color: #30a405; color: #30a406; color: #30a407; color: #30a408; color: #30a409; color: #30a40a; color: #30a40b; color: #30a40c; color: #30a40d; color: #30a40e; color: #30a40f;
color: #30a500; color: #30a501; color: #30a502; color: #30a503; color: #30a504; color: #30a505; color: #30a506; color: #30a507; color: #30a508; color: #30a509; color: #30a50a; color: #30a50b; color: #30a50c; color: #30a50d; color: #30a50e; color: #30a50f;
color: #30a600; color: #30a601; color: #30a602; color: #30a603; color: #30a604; color: #30a605; color: #30a606; color: #30a607; color: #30a608; color: #30a609; color: #30a60a; color: #30a60b; color: #30a60c; color: #30a60d; color: #30a60e; color: #30a60f;
color: #30a700; color: #30a701; color: #30a702; color: #30a703; color: #30a704; color: #30a705; color: #30a706; color: #30a707; color: #30a708; color: #30a709; color: #30a70a; color: #30a70b; color: #30a70c; color: #30a70d; color: #30a70e; color: #30a70f;
color: #30a800; color: #30a801; color: #30a802; color: #30a803; color: #30a804; color: #30a805; color: #30a806; color: #30a807; color: #30a808; color: #30a809; color: #30a80a; color: #30a80b; color: #30a80c; color: #30a80d; color: #30a80e; color: #30a80f;
color: #30a900; color: #30a901; color: #30a902; color: #30a903; color: #30a904; color: #30a905; color: #30a906; color: #30a907; color: #30a908; color: #30a909; color: #30a90a; color: #30a90b; color: #30a90c; color: #30a90d; color: #30a90e; color: #30a90f;
color: #30aa00; color: #30aa01; color: #30aa02; color: #30aa03; color: #30aa04; color: #30aa05; color: #30aa06; color: #30aa07; color: #30aa08; color: #30aa09; color: #30aa0a; color: #30aa0b; color: #30aa0c; color: #30aa0d; color: #30aa0e; color: #30aa0f;
color: #30ab00; color: #30ab01; color: #30ab02; color: #30ab03; color: #30ab04; color: #30ab05; color: #30ab06; color: #30ab07; color: #30ab08; color: #30ab09; color: #30ab0a; color: #30ab0b; color: #30ab0c; color: #30ab0d; color: #30ab0e; color: #30ab0f;
color: #30ac00; color: #30ac01; color: #30ac02; color: #30ac03; color: #30ac04; color: #30ac05; color: #30ac06; color: #30ac07; color: #30ac08; color: #30ac09; color: #30ac0a; color: #30ac0b; color: #30ac0c; color: #30ac0d; color: #30ac0e; color: #30ac0f;
color: #30ad00; color: #30ad01; color: #30ad02; color: #30ad03; color: #30ad04; color: #30ad05; color: #30ad06; color: #30ad07; color: #30ad08; color: #30ad09; color: #30ad0a; color: #30ad0b; color: #30ad0c; color: #30ad0d; color: #30ad0e; color: #30ad0f;
color: #30ae00; color: #30ae01; color: #30ae02; color: #30ae03; color: #30ae04; color: #30ae05; color: #30ae06; color: #30ae07; color: #30ae08; color: #30ae09; color: #30ae0a; color: #30ae0b; color: #30ae0c; color: #30ae0d; color: #30ae0e; color: #30ae0f;
color: #30af00; color: #30af01; color: #30af02; color: #30af03; color: #30af04; color: #30af05; color: #30af06; color: #30af07; color: #30af08; color: #30af09; color: #30af0a; color: #30af0b; color: #30af0c; color: #30af0d; color: #30af0e; color: #30af0f;
color: #30b000; color: #30b001; color: #30b002; color: #30b003; color: #30b004; color: #30b005; color: #30b006; color: #30b007; color: #30b008; color: #30b009; color: #30b00a; color: #30b00b; color: #30b00c; color: #30b00d; color: #30b00e; color: #30b00f;
color: #30b100; color: #30b101; color: #30b102; color: #30b103; color: #30b104; color: #30b105; color: #30b106; color: #30b107; color: #30b108; color: #30b109; color: #30b10a; color: #30b10b; color: #30b10c; color: #30b10d; color: #30b10e; color: #30b10f;
color: #30b200; color: #30b201; color: #30b202; color: #30b203; color: #30b204; color: #30b205; color: #30b206; color: #30b207; color: #30b208; color: #30b209; color: #30b20a; color: #30b20b; color: #30b20c; color: #30b20d; color: #30b20e; color: #30b20f;
color: #30b300; color: #30b301; color: #30b302; color: #30b303; color: #30b304; color: #30b305; color: #30b306; color: #30b307; color: #30b308; color: #30b309; color: #30b30a; color: #30b30b; color: #30b30c; color: #30b30d; color: #30b30e; color: #30b30f;
color: #30b400; color: #30b401; color: #30b402; color: #30b403; color: #30b404; color: #30b405; color: #30b406; color: #30b407; color: #30b408; color: #30b409; color: #30b40a; color: #30b40b; color: #30b40c; color: #30b40d; color: #30b40e; color: #30b40f;
color: #30b500; color: #30b501; color: #30b502; color: #30b503; color: #30b504; color: #30b505; color: #30b506; color: #30b507; color: #30b508; color: #30b509; color: #30b50a; color: #30b50b; color: #30b50c; color: #30b50d; color: #30b50e; color: #30b50f;
color: #30b600; color: #30b601; color: #30b602; color: #30b603; color: #30b604; color: #30b605; color: #30b606; color: #30b607; color: #30b608; color: #30b609; color: #30b60a; color: #30b60b; color: #30b60c; color: #30b60d; color: #30b60e; color: #30b60f;
color: #30b700; color: #30b701; color: #30b702; color: #30b703; color: #30b704; color: #30b705; color: #30b706; color: #30b707; color: #30b708; color: #30b709; color: #30b70a; color: #30b70b; color: #30b70c; color: #30b70d; color: #30b70e; color: #30b70f;
color: #30b800; color: #30b801; color: #30b802; color: #30b803; color: #30b804; color: #30b805; color: #30b806; color: #30b807; color: #30b808; color: #30b809; color: #30b80a; color: #30b80b; color: #30b80c; color: #30b80d; color: #30b80e; color: #30b80f;
color: #30b900; color: #30b901; color: #30b902; color: #30b903; color: #30b904; color: #30b905; color: #30b906; color: #30b907; color: #30b908; color: #30b909; color: #30b90a; color: #30b90b; color: #30b90c; color: #30b90d; color: #30b90e; color: #30b90f;
color: #30ba00; color: #30ba01; color: #30ba02; color: #30ba03; color: #30ba04; color: #30ba05; color: #30ba06; color: #30ba07; color: #30ba08; color: #30ba09; color: #30ba0a; color: #30ba0b; color: #30ba0c; color: #30ba0d; color: #30ba0e; color: #30ba0f;
color: #30bb00; color: #30bb01; color: #30bb02; color: #30bb03; color: #30bb04; color: #30bb05; color: #30bb06; color: #30bb07; color: #30bb08; color: #30bb09; color: #30bb0a; color: #30bb0b; color: #30bb0c; color: #30bb0d; color: #30bb0e; color: #30bb0f;
color: #30bc00; color: #30bc01; color: #30bc02; color: #30bc03; color: #30bc04; color: #30bc05; color: #30bc06; color: #30bc07; color: #30bc08; color: #30bc09; color: #30bc0a; color: #30bc0b; color: #30bc0c; color: #30bc0d; color: #30bc0e; color: #30bc0f;
color: #30bd00; color: #30bd01; color: #30bd02; color: #30bd03; color: #30bd04; color: #30bd05; color: #30bd06; color: #30bd07; color: #30bd08; color: #30bd09; color: #30bd0a; color: #30bd0b; color: #30bd0c; color: #30bd0d; color: #30bd0e; color: #30bd0f;
color: #30be00; color: #30be01; color: #30be02; color: #30be03; color: #30be04; color: #30be05; color: #30be06; color: #30be07; color: #30be08; color: #30be09; color: #30be0a; color: #30be0b; color: #30be0c; color: #30be0d; color: #30be0e; color: #30be0f;
color: #30bf00; color: #30bf01; color: #30bf02; color: #30bf03; color: #30bf04; color: #30bf05; color: #30bf06; color: #30bf07; color: #30bf08; color: #30bf09; color: #30bf0a; color: #30bf0b; color: #30bf0c; color: #30bf0d; color: #30bf0e; color: #30bf0f;
color: #30c000; color: #30c001; color: #30c002; color: #30c003; color: #30c004; color: #30c005; color: #30c006; color: #30c007; color: #30c008; color: #30c009; color: #30c00a; color: #30c00b; color: #30c00c; color: #30c00d; color: #30c00e; color: #30c00f;
color: #30c100; color: #30c101; color: #30c102; color: #30c103; color: #30c104; color: #30c105; color: #30c106; color: #30c107; color: #30c108; color: #30c109; color: #30c10a; color: #30c10b; color: #30c10c; color: #30c10d; color: #30c10e; color: #30c10f;
color: #30c200; color: #30c201; color: #30c202; color: #30c203; color: #30c204; color: #30c205; color: #30c206; color: #30c207; color: #30c208; color: #30c209; color: #30c20a; color: #30c20b; color: #30c20c; color: #30c20d; color: #30c20e; color: #30c20f;
color: #30c300; color: #30c301; color: #30c302; color: #30c303; color: #30c304; color: #30c305; color: #30c306; color: #30c307; color: #30c308; color: #30c309; color: #30c30a; color: #30c30b; color: #30c30c; color: #30c30d; color: #30c30e; color: #30c30f;
color: #30c400; color: #30c401; color: #30c402; color: #30c403; color: #30c404; color: #30c405; color: #30c406; color: #30c407; color: #30c408; color: #30c409; color: #30c40a; color: #30c40b; color: #30c40c; color: #30c40d; color: #30c40e; color: #30c40f;
color: #30c500; color: #30c501; color: #30c502; color: #30c503; color: #30c504; color: #30c505; color: #30c506; color: #30c507; color: #30c508; color: #30c509; color: #30c50a; color: #30c50b; color: #30c50c; color: #30c50d; color: #30c50e; color: #30c50f;
color: #30c600; color: #30c601; color: #30c602; color: #30c603; color: #30c604; color: #30c605; color: #30c606; color: #30c607; color: #30c608; color: #30c609; color: #30c60a; color: #30c60b; color: #30c60c; color: #30c60d; color: #30c60e; color: #30c60f;
color: #30c700; color: #30c701; color: #30c702; color: #30c703; color: #30c704; color: #30c705; color: #30c706; color: #30c707; color: #30c708; color: #30c709; color: #30c70a; color: #30c70b; color: #30c70c; color: #30c70d; color: #30c70e; color: #30c70f;
color: #30c800; color: #30c801; color: #30c802; color: #30c803; color: #30c804; color: #30c805; color: #30c806; color: #30c807; color: #30c808; color: #30c809; color: #30c80a; color: #30c80b; color: #30c80c; color: #30c80d; color: #30c80e; color: #30c80f;
color: #30c900; color: #30c901; color: #30c902; color: #30c903; color: #30c904; color: #30c905; color: #30c906; color: #30c907; color: #30c908; color: #30c909; color: #30c90a; color: #30c90b; color: #30c90c; color: #30c90d; color: #30c90e; color: #30c90f;
color: #30ca00; color: #30ca01; color: #30ca02; color: #30ca03; color: #30ca04; color: #30ca05; color: #30ca06; color: #30ca07; color: #30ca08; color: #30ca09; color: #30ca0a; color: #30ca0b; color: #30ca0c; color: #30ca0d; color: #30ca0e; color: #30ca0f;
color: #30cb00; color: #30cb01; color: #30cb02; color: #30cb03; color: #30cb04; color: #30cb05; color: #30cb06; color: #30cb07; color: #30cb08; color: #30cb09; color: #30cb0a; color: #30cb0b; color: #30cb0c; color: #30cb0d; color: #30cb0e; color: #30cb0f;
color: #30cc00; color: #30cc01; color: #30cc02; color: #30cc03; color: #30cc04; color: #30cc05; color: #30cc06; color: #30cc07; color: #30cc08; color: #30cc09; color: #30cc0a; color: #30cc0b; color: #30cc0c; color: #30cc0d; color: #30cc0e; color: #30cc0f;
color: #30cd00; color: #30cd01; color: #30cd02; color: #30cd03; color: #30cd04; color: #30cd05; color: #30cd06; color: #30cd07; color: #30cd08; color: #30cd09; color: #30cd0a; color: #30cd0b; color: #30cd0c; color: #30cd0d; color: #30cd0e; color: #30cd0f;
color: #30ce00; color: #30ce01; color: #30ce02; color: #30ce03; color: #30ce04; color: #30ce05; color: #30ce06; color: #30ce07; color: #30ce08; color: #30ce09; color: #30ce0a; color: #30ce0b; color: #30ce0c; color: #30ce0d; color: #30ce0e; color: #30ce0f;
color: #30cf00; color: #30cf01; color: #30cf02; color: #30cf03; color: #30cf04; color: #30cf05; color: #30cf06; color: #30cf07; color: #30cf08; color: #30cf09; color: #30cf0a; color: #30cf0b; color: #30cf0c; color: #30cf0d; color: #30cf0e; color: #30cf0f;
color: #30d000; color: #30d001; color: #30d002; color: #30d003; color: #30d004; color: #30d005; color: #30d006; color: #30d007; color: #30d008; color: #30d009; color: #30d00a; color: #30d00b; color: #30d00c; color: #30d00d; color: #30d00e; color: #30d00f;
color: #30d100; color: #30d101; color: #30d102; color: #30d103; color: #30d104; color: #30d105; color: #30d106; color: #30d107; color: #30d108; color: #30d109; color: #30d10a; color: #30d10b; color: #30d10c; color: #30d10d; color: #30d10e; color: #30d10f;
color: #30d200; color: #30d201; color: #30d202; color: #30d203; color: #30d204; color: #30d205; color: #30d206; color: #30d207; color: #30d208; color: #30d209; color: #30d20a; color: #30d20b; color: #30d20c; color: #30d20d; color: #30d20e; color: #30d20f;
color: #30d300; color: #30d301; color: #30d302; color: #30d303; color: #30d304; color: #30d305; color: #30d306; color: #30d307; color: #30d308; color: #30d309; color: #30d30a; color: #30d30b; color: #30d30c; color: #30d30d; color: #30d30e; color: #30d30f;
color: #30d400; color: #30d401; color: #30d402; color: #30d403; color: #30d404; color: #30d405; color: #30d406; color: #30d407; color: #30d408; color: #30d409; color: #30d40a; color: #30d40b; color: #30d40c; color: #30d40d; color: #30d40e; color: #30d40f;
color: #30d500; color: #30d501; color: #30d502; color: #30d503; color: #30d504; color: #30d505; color: #30d506; color: #30d507; color: #30d508; color: #30d509; color: #30d50a; color: #30d50b; color: #30d50c; color: #30d50d; color: #30d50e; color: #30d50f;
color: #30d600; color: #30d601; color: #30d602; color: #30d603; color: #30d604; color: #30d605; color: #30d606; color: #30d607; color: #30d608; color: #30d609; color: #30d60a; color: #30d60b; color: #30d60c; color: #30d60d; color: #30d60e; color: #30d60f;
color: #30d700; color: #30d701; color: #30d702; color: #30d703; color: #30d704; color: #30d705; color: #30d706; color: #30d707; color: #30d708; color: #30d709; color: #30d70a; color: #30d70b; color: #30d70c; color: #30d70d; color: #30d70e; color: #30d70f;
color: #30d800; color: #30d801; color: #30d802; color: #30d803; color: #30d804; color: #30d805; color: #30d806; color: #30d807; color: #30d808; color: #30d809; color: #30d80a; color: #30d80b; color: #30d80c; color: #30d80d; color: #30d80e; color: #30d80f;
color: #30d900; color: #30d901; color: #30d902; color: #30d903; color: #30d904; color: #30d905; color: #30d906; color: #30d907; color: #30d908; color: #30d909; color: #30d90a; color: #30d90b; color: #30d90c; color: #30d90d; color: #30d90e; color: #30d90f;
color: #30da00; color: #30da01; color: #30da02; color: #30da03; color: #30da04; color: #30da05; color: #30da06; color: #30da07; color: #30da08; color: #30da09; color: #30da0a; color: #30da0b; color: #30da0c; color: #30da0d; color: #30da0e; color: #30da0f;
color: #30db00; color: #30db01; color: #30db02; color: #30db03; color: #30db04; color: #30db05; color: #30db06; color: #30db07; color: #30db08; color: #30db09; color: #30db0a; color: #30db0b; color: #30db0c; color: #30db0d; color: #30db0e; color: #30db0f;
color: #30dc00; color: #30dc01; color: #30dc02; color: #30dc03; color: #30dc04; color: #30dc05; color: #30dc06; color: #30dc07; color: #30dc08; color: #30dc09; color: #30dc0a; color: #30dc0b; color: #30dc0c; color: #30dc0d; color: #30dc0e; color: #30dc0f;
color: #30dd00; color: #30dd01; color: #30dd02; color: #30dd03; color: #30dd04; color: #30dd05; color: #30dd06; color: #30dd07; color: #30dd08; color: #30dd09; color: #30dd0a; color: #30dd0b; color: #30dd0c; color: #30dd0d; color: #30dd0e; color: #30dd0f;
color: #30de00; color: #30de01; color: #30de02; color: #30de03; color: #30de04; color: #30de05; color: #30de06; color: #30de07; color: #30de08; color: #30de09; color: #30de0a; color: #30de0b; color: #30de0c; color: #30de0d; color: #30de0e; color: #30de0f;
color: #30df00; color: #30df01; color: #30df02; color: #30df03; color: #30df04; color: #30df05; color: #30df06; color: #30df07; color: #30df08; color: #30df09; color: #30df0a; color: #30df0b; color: #30df0c; color: #30df0d; color: #30df0e; color: #30df0f;
color: #30e000; color: #30e001; color: #30e002; color: #30e003; color: #30e004; color: #30e005; color: #30e006; color: #30e007; color: #30e008; color: #30e009; color: #30e00a; color: #30e00b; color: #30e00c; color: #30e00d; color: #30e00e; color: #30e00f;
color: #30e100; color: #30e101; color: #30e102; color: #30e103; color: #30e104; color: #30e105; color: #30e106; color: #30e107; color: #30e108; color: #30e109; color: #30e10a; color: #30e10b; color: #30e10c; color: #30e10d; color: #30e10e; color: #30e10f;
color: #30e200; color: #30e201; color: #30e202; color: #30e203; color: #30e204; color: #30e205; color: #30e206; color: #30e207; color: #30e208; color: #30e209; color: #30e20a; color: #30e20b; color: #30e20c; color: #30e20d; color: #30e20e; color: #30e20f;
color: #30e300; color: #30e301; color: #30e302; color: #30e303; color: #30e304; color: #30e305; color: #30e306; color: #30e307; color: #30e308; color: #30e309; color: #30e30a; color: #30e30b; color: #30e30c; color: #30e30d; color: #30e30e; color: #30e30f;
color: #30e400; color: #30e401; color: #30e402; color: #30e403; color: #30e404; color: #30e405; color: #30e406; color: #30e407; color: #30e408; color: #30e409; color: #30e40a; color: #30e40b; color: #30e40c; color: #30e40d; color: #30e40e; color: #30e40f;
color: #30e500; color: #30e501; color: #30e502; color: #30e503; color: #30e504; color: #30e505; color: #30e506; color: #30e507; color: #30e508; color: #30e509; color: #30e50a; color: #30e50b; color: #30e50c; color: #30e50d; color: #30e50e; color: #30e50f;
color: #30e600; color: #30e601; color: #30e602; color: #30e603; color: #30e604; color: #30e605; color: #30e606; color: #30e607; color: #30e608; color: #30e609; color: #30e60a; color: #30e60b; color: #30e60c; color: #30e60d; color: #30e60e; color: #30e60f;
color: #30e700; color: #30e701; color: #30e702; color: #30e703; color: #30e704; color: #30e705; color: #30e706; color: #30e707; color: #30e708; color: #30e709; color: #30e70a; color: #30e70b; color: #30e70c; color: #30e70d; color: #30e70e; color: #30e70f;
color: #30e800; color: #30e801; color: #30e802; color: #30e803; color: #30e804; color: #30e805; color: #30e806; color: #30e807; color: #30e808; color: #30e809; color: #30e80a; color: #30e80b; color: #30e80c; color: #30e80d; color: #30e80e; color: #30e80f;
color: #30e900; color: #30e901; color: #30e902; color: #30e903; color: #30e904; color: #30e905; color: #30e906; color: #30e907; color: #30e908; color: #30e909; color: #30e90a; color: #30e90b; color: #30e90c; color: #30e90d; color: #30e90e; color: #30e90f;
color: #30ea00; color: #30ea01; color: #30ea02; color: #30ea03; color: #30ea04; color: #30ea05; color: #30ea06; color: #30ea07; color: #30ea08; color: #30ea09; color: #30ea0a; color: #30ea0b; color: #30ea0c; color: #30ea0d; color: #30ea0e; color: #30ea0f;
color: #30eb00; color: #30eb01; color: #30eb02; color: #30eb03; color: #30eb04; color: #30eb05; color: #30eb06; color: #30eb07; color: #30eb08; color: #30eb09; color: #30eb0a; color: #30eb0b; color: #30eb0c; color: #30eb0d; color: #30eb0e; color: #30eb0f;
color: #30ec00; color: #30ec01; color: #30ec02; color: #30ec03; color: #30ec04; color: #30ec05; color: #30ec06; color: #30ec07; color: #30ec08; color: #30ec09; color: #30ec0a; color: #30ec0b; color: #30ec0c; color: #30ec0d; color: #30ec0e; color: #30ec0f;
color: #30ed00; color: #30ed01; color: #30ed02; color: #30ed03; color: #30ed04; color: #30ed05; color: #30ed06; color: #30ed07; color: #30ed08; color: #30ed09; color: #30ed0a; color: #30ed0b; color: #30ed0c; color: #30ed0d; color: #30ed0e; color: #30ed0f;
color: #30ee00; color: #30ee01; color: #30ee02; color: #30ee03; color: #30ee04; color: #30ee05; color: #30ee06; color: #30ee07; color: #30ee08; color: #30ee09; color: #30ee0a; color: #30ee0b; color: #30ee0c; color: #30ee0d; color: #30ee0e; color: #30ee0f;
color: #30ef00; color: #30ef01; color: #30ef02; color: #30ef03; color: #30ef04; color: #30ef05; color: #30ef06; color: #30ef07; color: #30ef08; color: #30ef09; color: #30ef0a; color: #30ef0b; color: #30ef0c; color: #30ef0d; color: #30ef0e; color: #30ef0f;
color: #30f000; color: #30f001; color: #30f002; color: #30f003; color: #30f004; color: #30f005; color: #30f006; color: #30f007; color: #30f008; color: #30f009; color: #30f00a; color: #30f00b; color: #30f00c; color: #30f00d; color: #30f00e; color: #30f00f;
color: #30f100; color: #30f101; color: #30f102; color: #30f103; color: #30f104; color: #30f105; color: #30f106; color: #30f107; color: #30f108; color: #30f109; color: #30f10a; color: #30f10b; color: #30f10c; color: #30f10d; color: #30f10e; color: #30f10f;
color: #30f200; color: #30f201; color: #30f202; color: #30f203; color: #30f204; color: #30f205; color: #30f206; color: #30f207; color: #30f208; color: #30f209; color: #30f20a; color: #30f20b; color: #30f20c; color: #30f20d; color: #30f20e; color: #30f20f;
color: #30f300; color: #30f301; color: #30f302; color: #30f303; color: #30f304; color: #30f305; color: #30f306; color: #30f307; color: #30f308; color: #30f309; color: #30f30a; color: #30f30b; color: #30f30c; color: #30f30d; color: #30f30e; color: #30f30f;
color: #30f400; color: #30f401; color: #30f402; color: #30f403; color: #30f404; color: #30f405; color: #30f406; color: #30f407; color: #30f408; color: #30f409; color: #30f40a; color: #30f40b; color: #30f40c; color: #30f40d; color: #30f40e; color: #30f40f;
color: #30f500; color: #30f501; color: #30f502; color: #30f503; color: #30f504; color: #30f505; color: #30f506; color: #30f507; color: #30f508; color: #30f509; color: #30f50a; color: #30f50b; color: #30f50c; color: #30f50d; color: #30f50e; color: #30f50f;
color: #30f600; color: #30f601; color: #30f602; color: #30f603; color: #30f604; color: #30f605; color: #30f606; color: #30f607; color: #30f608; color: #30f609; color: #30f60a; color: #30f60b; color: #30f60c; color: #30f60d; color: #30f60e; color: #30f60f;
color: #30f700; color: #30f701; color: #30f702; color: #30f703; color: #30f704; color: #30f705; color: #30f706; color: #30f707; color: #30f708; color: #30f709; color: #30f70a; color: #30f70b; color: #30f70c; color: #30f70d; color: #30f70e; color: #30f70f;
color: #30f800; color: #30f801; color: #30f802; color: #30f803; color: #30f804; color: #30f805; color: #30f806; color: #30f807; color: #30f808; color: #30f809; color: #30f80a; color: #30f80b; color: #30f80c; color: #30f80d; color: #30f80e; color: #30f80f;
color: #30f900; color: #30f901; color: #30f902; color: #30f903; color: #30f904; color: #30f905; color: #30f906; color: #30f907; color: #30f908; color: #30f909; color: #30f90a; color: #30f90b; color: #30f90c; color: #30f90d; color: #30f90e; color: #30f90f;
color: #30fa00; color: #30fa01; color: #30fa02; color: #30fa03; color: #30fa04; color: #30fa05; color: #30fa06; color: #30fa07; color: #30fa08; color: #30fa09; color: #30fa0a; color: #30fa0b; color: #30fa0c; color: #30fa0d; color: #30fa0e; color: #30fa0f;
color: #30fb00; color: #30fb01; color: #30fb02; color: #30fb03; color: #30fb04; color: #30fb05; color: #30fb06; color: #30fb07; color: #30fb08; color: #30fb09; color: #30fb0a; color: #30fb0b; color: #30fb0c; color: #30fb0d; color: #30fb0e; color: #30fb0f;
color: #30fc00; color: #30fc01; color: #30fc02; color: #30fc03; color: #30fc04; color: #30fc05; color: #30fc06; color: #30fc07; color: #30fc08; color: #30fc09; color: #30fc0a; color: #30fc0b; color: #30fc0c; color: #30fc0d; color: #30fc0e; color: #30fc0f;
color: #30fd00; color: #30fd01; color: #30fd02; color: #30fd03; color: #30fd04; color: #30fd05; color: #30fd06; color: #30fd07; color: #30fd08; color: #30fd09; color: #30fd0a; color: #30fd0b; color: #30fd0c; color: #30fd0d; color: #30fd0e; color: #30fd0f;
color: #30fe00; color: #30fe01; color: #30fe02; color: #30fe03; color: #30fe04; color: #30fe05; color: #30fe06; color: #30fe07; color: #30fe08; color: #30fe09; color: #30fe0a; color: #30fe0b; color: #30fe0c; color: #30fe0d; color: #30fe0e; color: #30fe0f;
color: #30ff00; color: #30ff01; color: #30ff02; color: #30ff03; color: #30ff04; color: #30ff05; color: #30ff06; color: #30ff07; color: #30ff08; color: #30ff09; color: #30ff0a; color: #30ff0b; color: #30ff0c; color: #30ff0d; color: #30ff0e; color: #30ff0f; }