--- a/examples/DS401_Slave_Gui/main.cpp Mon Feb 04 16:40:44 2008 +0100
+++ b/examples/DS401_Slave_Gui/main.cpp Tue Feb 05 10:17:36 2008 +0100
@@ -18,44 +18,47 @@
#if defined(WIN32) && !defined(__CYGWIN__)
#include <windows.h>
-extern "C" {
- #include "getopt.h"
+extern "C"
+{
+#include "getopt.h"
}
#endif
#include "main.h"
#include "TestSlaveGui.h"
-extern "C" {
- #include "canfestival.h"
- #include "ObjDict.h"
+extern "C"
+{
+#include "canfestival.h"
+#include "ObjDict.h"
}
#include "wx/wxprec.h"
#ifdef __BORLANDC__
- #pragma hdrstop
+#pragma hdrstop
#endif
#ifndef WX_PRECOMP
- #include "wx/wx.h"
+#include "wx/wx.h"
#endif
-wxTextCtrl *textLog;
-int node_id_ext;
+wxTextCtrl *textLog;
+int node_id_ext;
int to_start = 0;
-MyFrame *frame;
+MyFrame *frame;
#define MAXLENGTH_BUSNAME 32
#define MAXLENGTH_BAUDRATE 8
-char _busname[MAXLENGTH_BUSNAME] = "vcan0";
-char _baudrate[MAXLENGTH_BAUDRATE] = "500K";
-s_BOARD SlaveBoard = {_busname, _baudrate};
+char _busname[MAXLENGTH_BUSNAME] = "vcan0";
+char _baudrate[MAXLENGTH_BAUDRATE] = "500K";
+s_BOARD SlaveBoard = { _busname, _baudrate };
+
#define MAXLENGTH_LIBPATH 1024
-char LibraryPath[MAXLENGTH_LIBPATH] = "libcanfestival_can_virtual.so";
-double Gtime = 0;
-double y[28][45];
-double hdelta = 0;
-double old_max = 5;
-double old_min = -5;
+char LibraryPath[MAXLENGTH_LIBPATH] = "libcanfestival_can_virtual.so";
+double Gtime = 0;
+double y[28][45];
+double hdelta = 0;
+double old_max = 5;
+double old_min = -5;
#if defined(WIN32)
#define LIB_EXTENT wxT("*.dll")
@@ -102,751 +105,979 @@
const int INST8 = 138;
// Attach the event handlers. Put this after MyFrame declaration.
-BEGIN_EVENT_TABLE(MyFrame, wxFrame)
- EVT_BUTTON(STOP, MyFrame::OnStop)
- EVT_BUTTON(LOAD, MyFrame::OnLoad)
- EVT_BUTTON(START, MyFrame::OnStart)
- EVT_TOGGLEBUTTON(INBT1, MyFrame::OnInbt1)
- EVT_TOGGLEBUTTON(INBT2, MyFrame::OnInbt2)
- EVT_TOGGLEBUTTON(INBT3, MyFrame::OnInbt3)
- EVT_TOGGLEBUTTON(INBT4, MyFrame::OnInbt4)
- EVT_TOGGLEBUTTON(INBT5, MyFrame::OnInbt5)
- EVT_TOGGLEBUTTON(INBT6, MyFrame::OnInbt6)
- EVT_TOGGLEBUTTON(INBT7, MyFrame::OnInbt7)
- EVT_TOGGLEBUTTON(INBT8, MyFrame::OnInbt8)
- EVT_COMMAND_SCROLL(INS1, MyFrame::OnIns1)
- EVT_COMMAND_SCROLL(INS2, MyFrame::OnIns2)
- EVT_COMMAND_SCROLL(INS3, MyFrame::OnIns3)
- EVT_COMMAND_SCROLL(INS4, MyFrame::OnIns4)
- EVT_COMMAND_SCROLL(INS5, MyFrame::OnIns5)
- EVT_COMMAND_SCROLL(INS6, MyFrame::OnIns6)
- EVT_COMMAND_SCROLL(INS7, MyFrame::OnIns7)
- EVT_COMMAND_SCROLL(INS8, MyFrame::OnIns8)
- EVT_SPINCTRL(INST1, MyFrame::OnInst1)
- EVT_SPINCTRL(INST2, MyFrame::OnInst2)
- EVT_SPINCTRL(INST3, MyFrame::OnInst3)
- EVT_SPINCTRL(INST4, MyFrame::OnInst4)
- EVT_SPINCTRL(INST5, MyFrame::OnInst5)
- EVT_SPINCTRL(INST6, MyFrame::OnInst6)
- EVT_SPINCTRL(INST7, MyFrame::OnInst7)
- EVT_SPINCTRL(INST8, MyFrame::OnInst8)
-
- EVT_LISTBOX(FREQBOX, MyFrame::OnFreqBoxClick)
- EVT_MENU(FILE_QUIT, MyFrame::OnQuit)
- EVT_BUTTON(QUIT, MyFrame::OnQuit)
- EVT_MENU(HELP_ABOUT, MyFrame::OnAbout)
- //EVT_PAINT(MyFrame::OnPaint)
-
- EVT_TIMER(TIMER_ID, MyFrame::OnTimer)
-END_EVENT_TABLE()
-
-IMPLEMENT_APP_NO_MAIN(MyApp);
+BEGIN_EVENT_TABLE (MyFrame, wxFrame)
+EVT_BUTTON (STOP, MyFrame::OnStop)
+EVT_BUTTON (LOAD, MyFrame::OnLoad)
+EVT_BUTTON (START, MyFrame::OnStart)
+EVT_TOGGLEBUTTON (INBT1, MyFrame::OnInbt1)
+EVT_TOGGLEBUTTON (INBT2, MyFrame::OnInbt2)
+EVT_TOGGLEBUTTON (INBT3, MyFrame::OnInbt3)
+EVT_TOGGLEBUTTON (INBT4, MyFrame::OnInbt4)
+EVT_TOGGLEBUTTON (INBT5, MyFrame::OnInbt5)
+EVT_TOGGLEBUTTON (INBT6, MyFrame::OnInbt6)
+EVT_TOGGLEBUTTON (INBT7, MyFrame::OnInbt7)
+EVT_TOGGLEBUTTON (INBT8, MyFrame::OnInbt8)
+EVT_COMMAND_SCROLL (INS1, MyFrame::OnIns1)
+EVT_COMMAND_SCROLL (INS2, MyFrame::OnIns2)
+EVT_COMMAND_SCROLL (INS3, MyFrame::OnIns3)
+EVT_COMMAND_SCROLL (INS4, MyFrame::OnIns4)
+EVT_COMMAND_SCROLL (INS5, MyFrame::OnIns5)
+EVT_COMMAND_SCROLL (INS6, MyFrame::OnIns6)
+EVT_COMMAND_SCROLL (INS7, MyFrame::OnIns7)
+EVT_COMMAND_SCROLL (INS8, MyFrame::OnIns8)
+EVT_SPINCTRL (INST1, MyFrame::OnInst1)
+EVT_SPINCTRL (INST2, MyFrame::OnInst2)
+EVT_SPINCTRL (INST3, MyFrame::OnInst3)
+EVT_SPINCTRL (INST4, MyFrame::OnInst4)
+EVT_SPINCTRL (INST5, MyFrame::OnInst5)
+EVT_SPINCTRL (INST6, MyFrame::OnInst6)
+EVT_SPINCTRL (INST7, MyFrame::OnInst7)
+EVT_SPINCTRL (INST8, MyFrame::OnInst8)
+EVT_LISTBOX (FREQBOX, MyFrame::OnFreqBoxClick)
+EVT_MENU (FILE_QUIT, MyFrame::OnQuit)
+EVT_BUTTON (QUIT, MyFrame::OnQuit) EVT_MENU (HELP_ABOUT, MyFrame::OnAbout)
+ //EVT_PAINT(MyFrame::OnPaint)
+ EVT_TIMER (TIMER_ID, MyFrame::OnTimer)
+END_EVENT_TABLE ()IMPLEMENT_APP_NO_MAIN (MyApp);
IMPLEMENT_WX_THEME_SUPPORT;
-void help()
-{
- printf("**************************************************************\n");
- printf("* DS-401 Slave GUI *\n");
- printf("* *\n");
- printf("* Usage: *\n");
- printf("* ./DS401_Slave_Gui [OPTIONS] *\n");
- printf("* *\n");
- printf("* OPTIONS: *\n");
- printf("* -l : Can library [\"libcanfestival_can_virtual.so\"] *\n");
- printf("* *\n");
- printf("* Slave: *\n");
- printf("* -i : Node id format [0x01 , 0x7F] *\n");
- printf("* *\n");
- printf("* CAN bus: *\n");
- printf("* -b : bus name [\"1\"] *\n");
- printf("* -B : 1M,500K,250K,125K,100K,50K,20K,10K *\n");
- printf("* *\n");
- printf("**************************************************************\n");
-}
-
-
-int main(int argc,char **argv)
+ void
+ help ()
+{
+ printf ("**************************************************************\n");
+ printf ("* DS-401 Slave GUI *\n");
+ printf ("* *\n");
+ printf ("* Usage: *\n");
+ printf ("* ./DS401_Slave_Gui [OPTIONS] *\n");
+ printf ("* *\n");
+ printf ("* OPTIONS: *\n");
+ printf
+ ("* -l : Can library [\"libcanfestival_can_virtual.so\"] *\n");
+ printf ("* *\n");
+ printf ("* Slave: *\n");
+ printf ("* -i : Node id format [0x01 , 0x7F] *\n");
+ printf ("* *\n");
+ printf ("* CAN bus: *\n");
+ printf
+ ("* -b : bus name [\"1\"] *\n");
+ printf ("* -B : 1M,500K,250K,125K,100K,50K,20K,10K *\n");
+ printf ("* *\n");
+ printf ("**************************************************************\n");
+}
+
+
+int
+main (int argc, char **argv)
{
int c;
extern char *optarg;
char *snodeid;
- while ((c = getopt(argc, argv, "-b:B:l:i:s")) != EOF)
- {
- switch(c)
+ while ((c = getopt (argc, argv, "-b:B:l:i:s")) != EOF)
{
- case 'b' :
- if (optarg[0] == 0)
- {
- help();
- exit(1);
- }
- SlaveBoard.busname = optarg;
- break;
- case 'B' :
- if (optarg[0] == 0)
- {
- help();
- exit(1);
- }
- SlaveBoard.baudrate = optarg;
- break;
- case 'l' :
- if (optarg[0] == 0)
- {
- help();
- exit(1);
- }
- strncpy(LibraryPath, optarg, MAXLENGTH_LIBPATH);
- break;
- case 'i' :
- if (optarg[0] == 0)
- {
- help();
- exit(1);
- }
- snodeid = optarg;
- sscanf(snodeid,"%x",&node_id_ext);
- break;
- case 's' :
- to_start = 1;
- break;
- default:
- help();
- exit(1);
+ switch (c)
+ {
+ case 'b':
+ if (optarg[0] == 0)
+ {
+ help ();
+ exit (1);
+ }
+ SlaveBoard.busname = optarg;
+ break;
+ case 'B':
+ if (optarg[0] == 0)
+ {
+ help ();
+ exit (1);
+ }
+ SlaveBoard.baudrate = optarg;
+ break;
+ case 'l':
+ if (optarg[0] == 0)
+ {
+ help ();
+ exit (1);
+ }
+ strncpy (LibraryPath, optarg, MAXLENGTH_LIBPATH);
+ break;
+ case 'i':
+ if (optarg[0] == 0)
+ {
+ help ();
+ exit (1);
+ }
+ snodeid = optarg;
+ sscanf (snodeid, "%x", &node_id_ext);
+ break;
+ case 's':
+ to_start = 1;
+ break;
+ default:
+ help ();
+ exit (1);
+ }
}
- }
- wxEntry(argc,argv);
-}
-
-
-bool MyApp::OnInit()
-{
- frame = new MyFrame( _T("I-O simulator"));
- frame->Show(true);
- return true;
-}
-
-MyFrame::MyFrame(const wxString& title)
- : wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, wxSize(800, 740), wxDEFAULT_FRAME_STYLE, wxT("frame"))
- ,m_timer(this, TIMER_ID)
-{
- wxMenu *fileMenu = new wxMenu;
- wxMenu *helpMenu = new wxMenu;
- wxPanel *panel;
- wxButton *quit;
- wxButton *load;
- wxBoxSizer *mysizer;
- wxBoxSizer *mysssizer;
- wxBoxSizer *myhsizer;
- wxBoxSizer *mybsizer;
- wxBoxSizer *myentrysizer;
- wxListBox *freqlist;
- wxStaticBox *namebox;
- wxStaticBox *freqbox;
+ wxEntry (argc, argv);
+}
+
+
+bool
+MyApp::OnInit ()
+{
+ frame = new MyFrame (_T ("I-O simulator"));
+ frame->Show (true);
+ return true;
+}
+
+MyFrame::MyFrame (const wxString & title):wxFrame (NULL, wxID_ANY, title, wxDefaultPosition, wxSize (800, 740),
+ wxDEFAULT_FRAME_STYLE, wxT ("frame")), m_timer (this,
+ TIMER_ID)
+{
+ wxMenu *
+ fileMenu = new wxMenu;
+ wxMenu *
+ helpMenu = new wxMenu;
+ wxPanel *
+ panel;
+ wxButton *
+ quit;
+ wxButton *
+ load;
+ wxBoxSizer *
+ mysizer;
+ wxBoxSizer *
+ mysssizer;
+ wxBoxSizer *
+ myhsizer;
+ wxBoxSizer *
+ mybsizer;
+ wxBoxSizer *
+ myentrysizer;
+ wxListBox *
+ freqlist;
+ wxStaticBox *
+ namebox;
+ wxStaticBox *
+ freqbox;
// SetIcon(wxICON(monicone));
- SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE));
- helpMenu->Append(HELP_ABOUT, _T("&About...\tF1"),
- _T("Show about dialog"));
- fileMenu->Append(FILE_QUIT, _T("E&xit\tAlt-X"),
- _T("Quit this program"));
- wxMenuBar *menuBar = new wxMenuBar();
- menuBar->Append(fileMenu, _T("&File"));
- menuBar->Append(helpMenu, _T("&Help"));
- SetMenuBar(menuBar);
- CreateStatusBar(2);
- SetStatusText(_T("Lolitech."), 0);
- SetStatusText(_T("Welcome."), 1);
-
- book = new wxNotebook(this, BOOKCTRL);
-
- panel = new wxPanel(book);
- book->AddPage(panel, _T("Configuration"), true);
- mysizer = new wxBoxSizer( wxVERTICAL );
- panel->SetSizer(mysizer);
- wxString choices[] =
- {
- _T("10K"), _T("20K"), _T("50K"), _T("100K"),
- _T("125K"), _T("250K"), _T("500K"), _T("1M")
- };
-
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Bus driver")), wxHORIZONTAL );
- mysizer->Add(myhsizer, 0, wxEXPAND | wxALL, 5);
- load = new wxButton( panel, LOAD, _T("Load can driver"));
- myhsizer->Add(load, 0, wxLEFT, 5);
- drivername = new wxTextCtrl(panel, wxID_ANY, wxString((const char*)LibraryPath,wxConvLocal));
- myhsizer->Add(drivername, 1, wxEXPAND | wxALL, 5);
- myentrysizer = new wxBoxSizer( wxHORIZONTAL );
- mysizer->Add(myentrysizer, 0, wxEXPAND | wxALL, 5);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Bus name")), wxHORIZONTAL );
- myentrysizer->Add(myhsizer, 0, wxEXPAND | wxALL, 5);
- busname = new wxTextCtrl(panel, wxID_ANY, wxString((const char*)SlaveBoard.busname, wxConvLocal));
- myhsizer->Add(busname, 0, wxLEFT, 5);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Node ID (Hexa)")), wxHORIZONTAL );
- myentrysizer->Add(myhsizer, 0, wxEXPAND | wxALL, 5);
- node_id = new wxSpinCtrl(panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 127, node_id_ext, _T("wxSpinCtrl"));
- myhsizer->Add(node_id, 0, wxRIGHT, 5);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Baudrate")), wxHORIZONTAL );
- mysizer->Add(myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
- freqlist = new wxListBox( panel, FREQBOX, wxDefaultPosition, wxDefaultSize, 8, choices, wxLB_SINGLE | wxLB_HSCROLL);
- myhsizer->Add(freqlist, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
- quit = new wxButton( panel, QUIT, _T("QUIT"));
- mysizer->Add(quit, 0, wxALL, 5);
-
-
- panel = new wxPanel(book);
- book->AddPage(panel, wxT("Inputs"), true);
- mysizer = new wxBoxSizer( wxVERTICAL );
- panel->SetSizer(mysizer);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Read Inputs UNSIGNED8")), wxHORIZONTAL );
- mysizer->Add(myhsizer, 0, wxEXPAND | wxALL, 30);
- inbt1 = new wxToggleButton(panel, INBT1, wxT("1"));
- inbt2 = new wxToggleButton(panel, INBT2, wxT("2"));
- inbt3 = new wxToggleButton(panel, INBT3, wxT("3"));
- inbt4 = new wxToggleButton(panel, INBT4, wxT("4"));
- inbt5 = new wxToggleButton(panel, INBT5, wxT("5"));
- inbt6 = new wxToggleButton(panel, INBT6, wxT("6"));
- inbt7 = new wxToggleButton(panel, INBT7, wxT("7"));
- inbt8 = new wxToggleButton(panel, INBT8, wxT("8"));
- myhsizer->Add(inbt1, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(inbt2, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(inbt3, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(inbt4, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(inbt5, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(inbt6, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(inbt7, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(inbt8, wxEXPAND | wxALL, 0, 5);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Analogue Inputs INTEGER16")), wxVERTICAL );
- mysizer->Add(myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 30);
- mysssizer = new wxBoxSizer( wxHORIZONTAL );
- myhsizer->Add(mysssizer, 0, wxEXPAND | wxALL, 0);
- inst1 = new wxSpinCtrl(panel, INST1, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0, _T("0"));
- inst2 = new wxSpinCtrl(panel, INST2, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0, _T("0"));
- inst3 = new wxSpinCtrl(panel, INST3, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0, _T("0"));
- inst4 = new wxSpinCtrl(panel, INST4, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0, _T("0"));
- inst5 = new wxSpinCtrl(panel, INST5, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0, _T("0"));
- inst6 = new wxSpinCtrl(panel, INST6, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0, _T("0"));
- inst7 = new wxSpinCtrl(panel, INST7, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0, _T("0"));
- inst8 = new wxSpinCtrl(panel, INST8, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0, _T("0"));
- mysssizer->Add(inst1, wxALL, 0, 5);
- mysssizer->Add(inst2, wxALL, 0, 5);
- mysssizer->Add(inst3, wxALL, 0, 5);
- mysssizer->Add(inst4, wxALL, 0, 5);
- mysssizer->Add(inst5, wxALL, 0, 5);
- mysssizer->Add(inst6, wxALL, 0, 5);
- mysssizer->Add(inst7, wxALL, 0, 5);
- mysssizer->Add(inst8, wxALL, 0, 5);
- mysssizer = new wxBoxSizer( wxHORIZONTAL );
- myhsizer->Add(mysssizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 0);
- ins1 = new wxSlider(panel, INS1, 0, -32768, 32767, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("slider"));
- ins2 = new wxSlider(panel, INS2, 0, -32768, 32767, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("slider"));
- ins3 = new wxSlider(panel, INS3, 0, -32768, 32767, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("slider"));
- ins4 = new wxSlider(panel, INS4, 0, -32768, 32767, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("slider"));
- ins5 = new wxSlider(panel, INS5, 0, -32768, 32767, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("slider"));
- ins6 = new wxSlider(panel, INS6, 0, -32768, 32767, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("slider"));
- ins7 = new wxSlider(panel, INS7, 0, -32768, 32767, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("slider"));
- ins8 = new wxSlider(panel, INS8, 0, -32768, 32767, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("slider"));
- mysssizer->Add(ins1, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(ins2, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(ins3, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(ins4, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(ins5, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(ins6, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(ins7, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(ins8, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- quit = new wxButton( panel, QUIT, _T("QUIT"));
- mysizer->Add(quit, 0, wxALL, 5);
-
- panel = new wxPanel(book);
- book->AddPage(panel, wxT("Outputs"), true);
- mysizer = new wxBoxSizer( wxVERTICAL );
- panel->SetSizer(mysizer);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Write Outputs UNSIGNED8")), wxHORIZONTAL );
- mysizer->Add(myhsizer, 0, wxEXPAND | wxALL, 30);
- outbt1 = new wxToggleButton(panel, wxID_ANY, wxT("1"));
- outbt2 = new wxToggleButton(panel, wxID_ANY, wxT("2"));
- outbt3 = new wxToggleButton(panel, wxID_ANY, wxT("3"));
- outbt4 = new wxToggleButton(panel, wxID_ANY, wxT("4"));
- outbt5 = new wxToggleButton(panel, wxID_ANY, wxT("5"));
- outbt6 = new wxToggleButton(panel, wxID_ANY, wxT("6"));
- outbt7 = new wxToggleButton(panel, wxID_ANY, wxT("7"));
- outbt8 = new wxToggleButton(panel, wxID_ANY, wxT("8"));
- myhsizer->Add(outbt1, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(outbt2, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(outbt3, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(outbt4, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(outbt5, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(outbt6, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(outbt7, wxEXPAND | wxALL, 0, 5);
- myhsizer->Add(outbt8, wxEXPAND | wxALL, 0, 5);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Analogue Output INTEGER16")), wxVERTICAL );
- mysizer->Add(myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 30);
- mysssizer = new wxBoxSizer( wxHORIZONTAL );
- myhsizer->Add(mysssizer, 0, wxEXPAND | wxALL, 0);
- outst1 = new wxStaticText(panel, wxID_ANY, wxT("label"), wxDefaultPosition, wxDefaultSize, 0, wxT("staticText"));
- outst2 = new wxStaticText(panel, wxID_ANY, wxT("label"), wxDefaultPosition, wxDefaultSize, 0, wxT("staticText"));
- outst3 = new wxStaticText(panel, wxID_ANY, wxT("label"), wxDefaultPosition, wxDefaultSize, 0, wxT("staticText"));
- outst4 = new wxStaticText(panel, wxID_ANY, wxT("label"), wxDefaultPosition, wxDefaultSize, 0, wxT("staticText"));
- mysssizer->Add(outst1, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
- mysssizer->Add(outst2, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
- mysssizer->Add(outst3, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
- mysssizer->Add(outst4, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
- mysssizer = new wxBoxSizer( wxHORIZONTAL );
- myhsizer->Add(mysssizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 0);
- outs1 = new wxGauge(panel, wxID_ANY, 65535, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("gauge"));
- outs2 = new wxGauge(panel, wxID_ANY, 65535, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("gauge"));
- outs3 = new wxGauge(panel, wxID_ANY, 65535, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("gauge"));
- outs4 = new wxGauge(panel, wxID_ANY, 65535, wxDefaultPosition, wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator, wxT("gauge"));
- mysssizer->Add(outs1, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(outs2, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(outs3, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- mysssizer->Add(outs4, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- quit = new wxButton( panel, QUIT, _T("QUIT"));
- mysizer->Add(quit, 0, wxALL, 5);
-
- wxString choice[] =
- {
- _T("Analogue Out 1"), _T("Analogue Out 2"),
- _T("Analogue Out 3"), _T("Analogue Out 4"),
- _T("Bool Out 1"), _T("Bool Out 2"),
- _T("Bool Out 3"), _T("Bool Out 4"),
- _T("Bool Out 5"), _T("Bool Out 6"),
- _T("Bool Out 7"), _T("Bool Out 8"),
- _T("Analogue Input 1"), _T("Analogue Input 2"),
- _T("Analogue Input 3"), _T("Analogue Input 4"),
- _T("Analogue Input 5"), _T("Analogue Input 6"),
- _T("Analogue Input 7"), _T("Analogue Input 8"),
- _T("Bool Input 1"), _T("Bool Input 2"),
- _T("Bool Input 3"), _T("Bool Input 4"),
- _T("Bool Input 5"), _T("Bool Input 6"),
- _T("Bool Input 7"), _T("Bool Input 8"), };
- panel = new wxPanel(book);
- //book->AddPage(panel, wxT("Graphic"), true);
- mysizer = new wxBoxSizer( wxVERTICAL );
- panel->SetSizer(mysizer);
- panel->Hide();
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Graphic")), wxVERTICAL );
- mysizer->Add(myhsizer, 0, wxEXPAND | wxALL, 10);
- mygraphpan = new wxPanel(panel, wxID_ANY, wxDefaultPosition, wxSize(0, 350), wxTAB_TRAVERSAL, wxT("Graphic"));
- myhsizer->Add(mygraphpan, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- echelle = new wxSlider(panel, wxID_ANY, 44, 44, 1000, wxDefaultPosition, wxDefaultSize, wxSL_HORIZONTAL , wxDefaultValidator, wxT("slider"));
- myhsizer->Add(echelle, 0, wxEXPAND | wxALL, 0);
- mybsizer = new wxBoxSizer( wxHORIZONTAL );
- mysizer->Add(mybsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Select viewable Inputs")), wxHORIZONTAL );
- mybsizer->Add(myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 10);
- inlist = new wxListBox( panel, wxID_ANY, wxDefaultPosition, wxDefaultSize, 28, choice, wxLB_EXTENDED | wxLB_HSCROLL);
- myhsizer->Add(inlist, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Legende")), wxHORIZONTAL );
- mybsizer->Add(myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 10);
- mylegpan = new wxPanel(panel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, wxT("Legende"));
- myhsizer->Add(mylegpan, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
- quit = new wxButton( panel, QUIT, _T("QUIT"));
- mysizer->Add(quit, 0, wxALL, 5);
-
- panel = new wxPanel(book);
- book->InsertPage(0, panel, wxT("Control"), true);
- mysizer = new wxBoxSizer( wxVERTICAL );
- panel->SetSizer(mysizer);
- myhsizer = new wxBoxSizer( wxHORIZONTAL );
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Control your node")), wxHORIZONTAL );
- mysizer->Add(myhsizer, 0, wxALL, 5);
- start = new wxButton( panel, START, _T("START"));
- stop = new wxButton( panel, STOP, _T("STOP"));
- stop->Enable(false);
- myhsizer->Add(start, 0, wxRIGHT, 5);
- myhsizer->Add(stop, 0, wxLEFT, 5);
- myhsizer = new wxStaticBoxSizer( new wxStaticBox(panel, wxID_ANY, _T("Operation log")), wxHORIZONTAL );
- mysizer->Add(myhsizer, wxALL, wxEXPAND | wxALL, 5);
- textLog = new wxTextCtrl( panel, TEXTBOX1, _T(""), wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE, wxDefaultValidator, wxTextCtrlNameStr);
- myhsizer->Add(textLog, wxALL, wxEXPAND | wxALL, 5);
- quit = new wxButton( panel, QUIT, _T("QUIT"));
- mysizer->Add(quit, 0, wxALL, 5);
-
- for (int i= 0; i < 28; i++)
- for (int j = 0; j < 44; j++)
- y[i][j] = 0;
- m_timer.Start(100);
- if(to_start)
- {
- Start();
- }
-}
-
-void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
-{
- Close(true);
-}
-
-void MyFrame::Start()
-{
- if (main_can(SlaveBoard, LibraryPath))
- {
- printf("[KO]\n");
- *textLog << wxT("----------------------------------------------------Initialization [KO]\n");
- }
- else
- {
- printf("[OK]\n");
- *textLog << wxT("----------------------------------------------------Initialization [OK]\n");
- stop->Enable(true);
- start->Enable(false);
- }
-}
-
-void MyFrame::OnStart(wxCommandEvent& WXUNUSED(event))
-{
- wxString s;
-
- node_id_ext = node_id->GetValue();
- s = busname->GetValue();
- strncpy(SlaveBoard.busname, s.mb_str(), MAXLENGTH_BUSNAME);
- *textLog << wxT("-- Bus name: ------> ") << s << wxT("\n");
- *textLog << wxT("-- Node ID: -------> ") << node_id->GetValue() << wxT("\n");
- Start();
-}
-
-
-void MyFrame::OnStop(wxCommandEvent& WXUNUSED(event))
-{
-
- *textLog << wxT("----------------------------------------------------Slave [STOPPED]") << wxT("\n");
- stop_slave();
- stop->Enable(false);
- start->Enable(true);
-}
-
-void MyFrame::OnLoad(wxCommandEvent& WXUNUSED(event))
-{
- wxFileDialog fd(this, wxT("Choose a can driver library"), wxT(""), wxT(""), LIB_EXTENT);
-
- if(fd.ShowModal() == wxID_OK)
+ SetBackgroundColour (wxSystemSettings::GetColour (wxSYS_COLOUR_BTNFACE));
+ helpMenu->Append (HELP_ABOUT, _T ("&About...\tF1"),
+ _T ("Show about dialog"));
+ fileMenu->Append (FILE_QUIT, _T ("E&xit\tAlt-X"), _T ("Quit this program"));
+ wxMenuBar *
+ menuBar = new wxMenuBar ();
+ menuBar->Append (fileMenu, _T ("&File"));
+ menuBar->Append (helpMenu, _T ("&Help"));
+ SetMenuBar (menuBar);
+ CreateStatusBar (2);
+ SetStatusText (_T ("Lolitech."), 0);
+ SetStatusText (_T ("Welcome."), 1);
+
+ book = new wxNotebook (this, BOOKCTRL);
+
+ panel = new wxPanel (book);
+ book->AddPage (panel, _T ("Configuration"), true);
+ mysizer = new wxBoxSizer (wxVERTICAL);
+ panel->SetSizer (mysizer);
+ wxString
+ choices[] = {
+ _T ("10K"), _T ("20K"), _T ("50K"), _T ("100K"),
+ _T ("125K"), _T ("250K"), _T ("500K"), _T ("1M")
+ };
+
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY, _T ("Bus driver")),
+ wxHORIZONTAL);
+ mysizer->Add (myhsizer, 0, wxEXPAND | wxALL, 5);
+ load = new wxButton (panel, LOAD, _T ("Load can driver"));
+ myhsizer->Add (load, 0, wxLEFT, 5);
+ drivername =
+ new wxTextCtrl (panel, wxID_ANY,
+ wxString ((const char *) LibraryPath, wxConvLocal));
+ myhsizer->Add (drivername, 1, wxEXPAND | wxALL, 5);
+ myentrysizer = new wxBoxSizer (wxHORIZONTAL);
+ mysizer->Add (myentrysizer, 0, wxEXPAND | wxALL, 5);
+ myhsizer =
+ new wxStaticBoxSizer (new wxStaticBox (panel, wxID_ANY, _T ("Bus name")),
+ wxHORIZONTAL);
+ myentrysizer->Add (myhsizer, 0, wxEXPAND | wxALL, 5);
+ busname =
+ new wxTextCtrl (panel, wxID_ANY,
+ wxString ((const char *) SlaveBoard.busname,
+ wxConvLocal));
+ myhsizer->Add (busname, 0, wxLEFT, 5);
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY,
+ _T ("Node ID (Hexa)")), wxHORIZONTAL);
+ myentrysizer->Add (myhsizer, 0, wxEXPAND | wxALL, 5);
+ node_id =
+ new wxSpinCtrl (panel, wxID_ANY, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, 1, 127, node_id_ext,
+ _T ("wxSpinCtrl"));
+ myhsizer->Add (node_id, 0, wxRIGHT, 5);
+ myhsizer =
+ new wxStaticBoxSizer (new wxStaticBox (panel, wxID_ANY, _T ("Baudrate")),
+ wxHORIZONTAL);
+ mysizer->Add (myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
+ freqlist =
+ new wxListBox (panel, FREQBOX, wxDefaultPosition, wxDefaultSize, 8,
+ choices, wxLB_SINGLE | wxLB_HSCROLL);
+ myhsizer->Add (freqlist, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
+ quit = new wxButton (panel, QUIT, _T ("QUIT"));
+ mysizer->Add (quit, 0, wxALL, 5);
+
+
+ panel = new wxPanel (book);
+ book->AddPage (panel, wxT ("Inputs"), true);
+ mysizer = new wxBoxSizer (wxVERTICAL);
+ panel->SetSizer (mysizer);
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY,
+ _T ("Read Inputs UNSIGNED8")),
+ wxHORIZONTAL);
+ mysizer->Add (myhsizer, 0, wxEXPAND | wxALL, 30);
+ inbt1 = new wxToggleButton (panel, INBT1, wxT ("1"));
+ inbt2 = new wxToggleButton (panel, INBT2, wxT ("2"));
+ inbt3 = new wxToggleButton (panel, INBT3, wxT ("3"));
+ inbt4 = new wxToggleButton (panel, INBT4, wxT ("4"));
+ inbt5 = new wxToggleButton (panel, INBT5, wxT ("5"));
+ inbt6 = new wxToggleButton (panel, INBT6, wxT ("6"));
+ inbt7 = new wxToggleButton (panel, INBT7, wxT ("7"));
+ inbt8 = new wxToggleButton (panel, INBT8, wxT ("8"));
+ myhsizer->Add (inbt1, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (inbt2, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (inbt3, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (inbt4, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (inbt5, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (inbt6, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (inbt7, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (inbt8, wxEXPAND | wxALL, 0, 5);
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY,
+ _T ("Analogue Inputs INTEGER16")),
+ wxVERTICAL);
+ mysizer->Add (myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 30);
+ mysssizer = new wxBoxSizer (wxHORIZONTAL);
+ myhsizer->Add (mysssizer, 0, wxEXPAND | wxALL, 0);
+ inst1 =
+ new wxSpinCtrl (panel, INST1, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0,
+ _T ("0"));
+ inst2 =
+ new wxSpinCtrl (panel, INST2, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0,
+ _T ("0"));
+ inst3 =
+ new wxSpinCtrl (panel, INST3, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0,
+ _T ("0"));
+ inst4 =
+ new wxSpinCtrl (panel, INST4, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0,
+ _T ("0"));
+ inst5 =
+ new wxSpinCtrl (panel, INST5, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0,
+ _T ("0"));
+ inst6 =
+ new wxSpinCtrl (panel, INST6, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0,
+ _T ("0"));
+ inst7 =
+ new wxSpinCtrl (panel, INST7, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0,
+ _T ("0"));
+ inst8 =
+ new wxSpinCtrl (panel, INST8, wxEmptyString, wxDefaultPosition,
+ wxDefaultSize, wxSP_ARROW_KEYS, -32768, 32767, 0,
+ _T ("0"));
+ mysssizer->Add (inst1, wxALL, 0, 5);
+ mysssizer->Add (inst2, wxALL, 0, 5);
+ mysssizer->Add (inst3, wxALL, 0, 5);
+ mysssizer->Add (inst4, wxALL, 0, 5);
+ mysssizer->Add (inst5, wxALL, 0, 5);
+ mysssizer->Add (inst6, wxALL, 0, 5);
+ mysssizer->Add (inst7, wxALL, 0, 5);
+ mysssizer->Add (inst8, wxALL, 0, 5);
+ mysssizer = new wxBoxSizer (wxHORIZONTAL);
+ myhsizer->Add (mysssizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 0);
+ ins1 =
+ new wxSlider (panel, INS1, 0, -32768, 32767, wxDefaultPosition,
+ wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE,
+ wxDefaultValidator, wxT ("slider"));
+ ins2 =
+ new wxSlider (panel, INS2, 0, -32768, 32767, wxDefaultPosition,
+ wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE,
+ wxDefaultValidator, wxT ("slider"));
+ ins3 =
+ new wxSlider (panel, INS3, 0, -32768, 32767, wxDefaultPosition,
+ wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE,
+ wxDefaultValidator, wxT ("slider"));
+ ins4 =
+ new wxSlider (panel, INS4, 0, -32768, 32767, wxDefaultPosition,
+ wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE,
+ wxDefaultValidator, wxT ("slider"));
+ ins5 =
+ new wxSlider (panel, INS5, 0, -32768, 32767, wxDefaultPosition,
+ wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE,
+ wxDefaultValidator, wxT ("slider"));
+ ins6 =
+ new wxSlider (panel, INS6, 0, -32768, 32767, wxDefaultPosition,
+ wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE,
+ wxDefaultValidator, wxT ("slider"));
+ ins7 =
+ new wxSlider (panel, INS7, 0, -32768, 32767, wxDefaultPosition,
+ wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE,
+ wxDefaultValidator, wxT ("slider"));
+ ins8 =
+ new wxSlider (panel, INS8, 0, -32768, 32767, wxDefaultPosition,
+ wxDefaultSize, wxSL_VERTICAL | wxSL_INVERSE,
+ wxDefaultValidator, wxT ("slider"));
+ mysssizer->Add (ins1, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (ins2, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (ins3, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (ins4, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (ins5, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (ins6, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (ins7, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (ins8, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ quit = new wxButton (panel, QUIT, _T ("QUIT"));
+ mysizer->Add (quit, 0, wxALL, 5);
+
+ panel = new wxPanel (book);
+ book->AddPage (panel, wxT ("Outputs"), true);
+ mysizer = new wxBoxSizer (wxVERTICAL);
+ panel->SetSizer (mysizer);
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY,
+ _T ("Write Outputs UNSIGNED8")),
+ wxHORIZONTAL);
+ mysizer->Add (myhsizer, 0, wxEXPAND | wxALL, 30);
+ outbt1 = new wxToggleButton (panel, wxID_ANY, wxT ("1"));
+ outbt2 = new wxToggleButton (panel, wxID_ANY, wxT ("2"));
+ outbt3 = new wxToggleButton (panel, wxID_ANY, wxT ("3"));
+ outbt4 = new wxToggleButton (panel, wxID_ANY, wxT ("4"));
+ outbt5 = new wxToggleButton (panel, wxID_ANY, wxT ("5"));
+ outbt6 = new wxToggleButton (panel, wxID_ANY, wxT ("6"));
+ outbt7 = new wxToggleButton (panel, wxID_ANY, wxT ("7"));
+ outbt8 = new wxToggleButton (panel, wxID_ANY, wxT ("8"));
+ myhsizer->Add (outbt1, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (outbt2, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (outbt3, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (outbt4, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (outbt5, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (outbt6, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (outbt7, wxEXPAND | wxALL, 0, 5);
+ myhsizer->Add (outbt8, wxEXPAND | wxALL, 0, 5);
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY,
+ _T ("Analogue Output INTEGER16")),
+ wxVERTICAL);
+ mysizer->Add (myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 30);
+ mysssizer = new wxBoxSizer (wxHORIZONTAL);
+ myhsizer->Add (mysssizer, 0, wxEXPAND | wxALL, 0);
+ outst1 =
+ new wxStaticText (panel, wxID_ANY, wxT ("label"), wxDefaultPosition,
+ wxDefaultSize, 0, wxT ("staticText"));
+ outst2 =
+ new wxStaticText (panel, wxID_ANY, wxT ("label"), wxDefaultPosition,
+ wxDefaultSize, 0, wxT ("staticText"));
+ outst3 =
+ new wxStaticText (panel, wxID_ANY, wxT ("label"), wxDefaultPosition,
+ wxDefaultSize, 0, wxT ("staticText"));
+ outst4 =
+ new wxStaticText (panel, wxID_ANY, wxT ("label"), wxDefaultPosition,
+ wxDefaultSize, 0, wxT ("staticText"));
+ mysssizer->Add (outst1, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
+ mysssizer->Add (outst2, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
+ mysssizer->Add (outst3, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
+ mysssizer->Add (outst4, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
+ mysssizer = new wxBoxSizer (wxHORIZONTAL);
+ myhsizer->Add (mysssizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 0);
+ outs1 =
+ new wxGauge (panel, wxID_ANY, 65535, wxDefaultPosition, wxDefaultSize,
+ wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator,
+ wxT ("gauge"));
+ outs2 =
+ new wxGauge (panel, wxID_ANY, 65535, wxDefaultPosition, wxDefaultSize,
+ wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator,
+ wxT ("gauge"));
+ outs3 =
+ new wxGauge (panel, wxID_ANY, 65535, wxDefaultPosition, wxDefaultSize,
+ wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator,
+ wxT ("gauge"));
+ outs4 =
+ new wxGauge (panel, wxID_ANY, 65535, wxDefaultPosition, wxDefaultSize,
+ wxSL_VERTICAL | wxSL_INVERSE, wxDefaultValidator,
+ wxT ("gauge"));
+ mysssizer->Add (outs1, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (outs2, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (outs3, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ mysssizer->Add (outs4, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ quit = new wxButton (panel, QUIT, _T ("QUIT"));
+ mysizer->Add (quit, 0, wxALL, 5);
+
+ wxString
+ choice[] = {
+ _T ("Analogue Out 1"), _T ("Analogue Out 2"),
+ _T ("Analogue Out 3"), _T ("Analogue Out 4"),
+ _T ("Bool Out 1"), _T ("Bool Out 2"),
+ _T ("Bool Out 3"), _T ("Bool Out 4"),
+ _T ("Bool Out 5"), _T ("Bool Out 6"),
+ _T ("Bool Out 7"), _T ("Bool Out 8"),
+ _T ("Analogue Input 1"), _T ("Analogue Input 2"),
+ _T ("Analogue Input 3"), _T ("Analogue Input 4"),
+ _T ("Analogue Input 5"), _T ("Analogue Input 6"),
+ _T ("Analogue Input 7"), _T ("Analogue Input 8"),
+ _T ("Bool Input 1"), _T ("Bool Input 2"),
+ _T ("Bool Input 3"), _T ("Bool Input 4"),
+ _T ("Bool Input 5"), _T ("Bool Input 6"),
+ _T ("Bool Input 7"), _T ("Bool Input 8"),
+ };
+ panel = new wxPanel (book);
+ book->AddPage(panel, wxT("Graphic"), true);
+ mysizer = new wxBoxSizer (wxVERTICAL);
+ panel->SetSizer (mysizer);
+ //panel->Hide ();
+ myhsizer =
+ new wxStaticBoxSizer (new wxStaticBox (panel, wxID_ANY, _T ("Graphic")),
+ wxVERTICAL);
+ mysizer->Add (myhsizer, 0, wxEXPAND | wxALL, 10);
+ mygraphpan =
+ new wxPanel (panel, wxID_ANY, wxDefaultPosition, wxSize (0, 350),
+ wxTAB_TRAVERSAL, wxT ("Graphic"));
+ myhsizer->Add (mygraphpan, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ echelle =
+ new wxSlider (panel, wxID_ANY, 44, 44, 1000, wxDefaultPosition,
+ wxDefaultSize, wxSL_HORIZONTAL, wxDefaultValidator,
+ wxT ("slider"));
+ myhsizer->Add (echelle, 0, wxEXPAND | wxALL, 0);
+ mybsizer = new wxBoxSizer (wxHORIZONTAL);
+ mysizer->Add (mybsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY,
+ _T ("Select viewable Inputs")),
+ wxHORIZONTAL);
+ mybsizer->Add (myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 10);
+ inlist =
+ new wxListBox (panel, wxID_ANY, wxDefaultPosition, wxDefaultSize, 28,
+ choice, wxLB_EXTENDED | wxLB_HSCROLL);
+ myhsizer->Add (inlist, wxEXPAND | wxALL, wxEXPAND | wxALL, 5);
+ myhsizer =
+ new wxStaticBoxSizer (new wxStaticBox (panel, wxID_ANY, _T ("Legende")),
+ wxHORIZONTAL);
+ mybsizer->Add (myhsizer, wxEXPAND | wxALL, wxEXPAND | wxALL, 10);
+ mylegpan =
+ new wxPanel (panel, wxID_ANY, wxDefaultPosition, wxDefaultSize,
+ wxTAB_TRAVERSAL, wxT ("Legende"));
+ myhsizer->Add (mylegpan, wxEXPAND | wxALL, wxEXPAND | wxALL, 15);
+ quit = new wxButton (panel, QUIT, _T ("QUIT"));
+ mysizer->Add (quit, 0, wxALL, 5);
+
+ panel = new wxPanel (book);
+ book->InsertPage (0, panel, wxT ("Control"), true);
+ mysizer = new wxBoxSizer (wxVERTICAL);
+ panel->SetSizer (mysizer);
+ myhsizer = new wxBoxSizer (wxHORIZONTAL);
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY,
+ _T ("Control your node")),
+ wxHORIZONTAL);
+ mysizer->Add (myhsizer, 0, wxALL, 5);
+ start = new wxButton (panel, START, _T ("START"));
+ stop = new wxButton (panel, STOP, _T ("STOP"));
+ stop->Enable (false);
+ myhsizer->Add (start, 0, wxRIGHT, 5);
+ myhsizer->Add (stop, 0, wxLEFT, 5);
+ myhsizer =
+ new wxStaticBoxSizer (new
+ wxStaticBox (panel, wxID_ANY, _T ("Operation log")),
+ wxHORIZONTAL);
+ mysizer->Add (myhsizer, wxALL, wxEXPAND | wxALL, 5);
+ textLog =
+ new wxTextCtrl (panel, TEXTBOX1, _T (""), wxDefaultPosition,
+ wxDefaultSize, wxTE_MULTILINE, wxDefaultValidator,
+ wxTextCtrlNameStr);
+ myhsizer->Add (textLog, wxALL, wxEXPAND | wxALL, 5);
+ quit = new wxButton (panel, QUIT, _T ("QUIT"));
+ mysizer->Add (quit, 0, wxALL, 5);
+
+ for (int i = 0; i < 28; i++)
+ for (int j = 0; j < 44; j++)
+ y[i][j] = 0;
+ m_timer.Start (100);
+ if (to_start)
{
- drivername->Clear();
- drivername->AppendText(fd.GetPath());
- *textLog << wxT("LibraryPath: ") << fd.GetPath() << wxT("\n");
- strncpy(LibraryPath, fd.GetPath().mb_str(), MAXLENGTH_LIBPATH);
- printf("path=%s",LibraryPath);
+ Start ();
}
}
-void MyFrame::OnInbt1(wxCommandEvent& WXUNUSED(event))
-{
- Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x1;
-}
-void MyFrame::OnInbt2(wxCommandEvent& WXUNUSED(event))
-{
- Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x2;
-}
-void MyFrame::OnInbt3(wxCommandEvent& WXUNUSED(event))
-{
- Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x4;
-}
-void MyFrame::OnInbt4(wxCommandEvent& WXUNUSED(event))
-{
- Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x8;
-}
-void MyFrame::OnInbt5(wxCommandEvent& WXUNUSED(event))
-{
- Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x10;
-}
-void MyFrame::OnInbt6(wxCommandEvent& WXUNUSED(event))
-{
- Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x20;
-}
-void MyFrame::OnInbt7(wxCommandEvent& WXUNUSED(event))
-{
- Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x40;
-}
-void MyFrame::OnInbt8(wxCommandEvent& WXUNUSED(event))
-{
- Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x80;
-}
-
-
-
-void MyFrame::OnIns1(wxScrollEvent &event)
-{
- Read_Analogue_Input_16_Bit[0] = ins1->GetValue();
- inst1->SetValue(ins1->GetValue());
-}
-void MyFrame::OnIns2(wxScrollEvent &event)
-{
- Read_Analogue_Input_16_Bit[1] = ins2->GetValue();
- inst2->SetValue(ins2->GetValue());
-}
-void MyFrame::OnIns3(wxScrollEvent &event)
-{
- Read_Analogue_Input_16_Bit[2] = ins3->GetValue();
- inst3->SetValue(ins3->GetValue());
-}
-void MyFrame::OnIns4(wxScrollEvent &event)
-{
- Read_Analogue_Input_16_Bit[3] = ins4->GetValue();
- inst4->SetValue(ins4->GetValue());
-}
-void MyFrame::OnIns5(wxScrollEvent &event)
-{
- Read_Analogue_Input_16_Bit[4] = ins5->GetValue();
- inst5->SetValue(ins5->GetValue());
-}
-void MyFrame::OnIns6(wxScrollEvent &event)
-{
- Read_Analogue_Input_16_Bit[5] = ins6->GetValue();
- inst6->SetValue(ins6->GetValue());
-}
-void MyFrame::OnIns7(wxScrollEvent &event)
-{
- Read_Analogue_Input_16_Bit[6] = ins7->GetValue();
- inst7->SetValue(ins7->GetValue());
-}
-void MyFrame::OnIns8(wxScrollEvent &event)
-{
- Read_Analogue_Input_16_Bit[7] = ins8->GetValue();
- inst8->SetValue(ins8->GetValue());
-}
-
-
-void MyFrame::OnInst1 ( wxSpinEvent &ev )
-{
- Read_Analogue_Input_16_Bit[0] = inst1->GetValue();
- ins1->SetValue(inst1->GetValue());
-}
-void MyFrame::OnInst2 ( wxSpinEvent &ev )
-{
- Read_Analogue_Input_16_Bit[1] = inst2->GetValue();
- ins2->SetValue(inst2->GetValue());
-}
-void MyFrame::OnInst3 ( wxSpinEvent &ev )
-{
- Read_Analogue_Input_16_Bit[2] = inst3->GetValue();
- ins3->SetValue(inst3->GetValue());
-}
-void MyFrame::OnInst4 ( wxSpinEvent &ev )
-{
- Read_Analogue_Input_16_Bit[3] = inst4->GetValue();
- ins4->SetValue(inst4->GetValue());
-}
-void MyFrame::OnInst5 ( wxSpinEvent &ev )
-{
- Read_Analogue_Input_16_Bit[4] = inst5->GetValue();
- ins5->SetValue(inst5->GetValue());
-}
-void MyFrame::OnInst6 ( wxSpinEvent &ev )
-{
- Read_Analogue_Input_16_Bit[5] = inst6->GetValue();
- ins6->SetValue(inst6->GetValue());
-}
-void MyFrame::OnInst7 ( wxSpinEvent &ev )
-{
- Read_Analogue_Input_16_Bit[6] = inst7->GetValue();
- ins7->SetValue(inst7->GetValue());
-}
-void MyFrame::OnInst8 ( wxSpinEvent &ev )
-{
- Read_Analogue_Input_16_Bit[7] = inst8->GetValue();
- ins8->SetValue(inst8->GetValue());
-}
-
-
-void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
-{
- wxString msg;
- msg.Printf( _T("About.\n\n")
- _T("Input-Output simulation by GRANDEMANGE Nicolas for CanFestival!!"));
-
- wxMessageBox(msg, _T("About !!!"), wxOK | wxICON_INFORMATION, this);
-}
-
-
-void MyFrame::OnFreqBoxClick( wxCommandEvent &event )
-{
- wxString wxstr;
-
- wxstr = event.GetString();
- strncpy(SlaveBoard.baudrate, wxstr.mb_str(),MAXLENGTH_BAUDRATE);
- *textLog << wxT("Baudrate:") << event.GetString() << wxT("\n");
-}
-
-static int is_set(int i,
- wxListBox *inlist,
- wxArrayInt in)
-{
- inlist->GetSelections(in);
- for (int j = 0; j < in.GetCount(); j++)
- {
- if (i == (in[j] + 1))
- {
- return (i);
- }
- }
- return (0);
-}
-
-static int get_bit(UNS8 input, int bit)
-{
- return input & (((UNS8)1) << bit-1) ? 1 : 0;
-}
-
-void MyFrame::Paint()
-{
- double vmax = old_max;
- double vmin = old_min;
- double vdelta = vmax - vmin;
- double vech = ((float)vdelta) / 10.0;
-
- double hmax = frame->echelle->GetValue();
- double hech = hdelta / 11;
-
- double d = 300 / vdelta;
- double g = 0;
- double top = 5;
- double left = 50;
-
- double tmpi = 0;
- wxString tmps;
- double p = 0;
- double q = 0;
- int i = 0;
- int j = 0;
- wxColor col[8] = {wxColor(wxT("BLUE")), wxColor(wxT("RED")), wxColor(wxT("GREEN")), wxColor(wxT("GREY")),
- wxColor(wxT("ORANGE")), wxColor(wxT("YELLOW")), wxColor(wxT("PINK")), wxColor(wxT("BLACK"))};
- hdelta = hmax - 0;
- g = (Gtime / hdelta) * 44.00;
-
- wxClientDC MonDc(mygraphpan);
- MonDc.Clear();
-
- MonDc.SetPen(wxPen(wxColour(200,200,200), 5, wxSOLID));
- MonDc.DrawRectangle((int) left, (int)top, 660, 300);
-
- MonDc.SetPen(wxPen(wxColor(150,200,150), 2, wxSOLID));
- MonDc.SetFont(wxFont(9, wxSWISS , wxNORMAL, wxNORMAL, false, wxT("Arial Black")));
- for (i=0; i < 11; i++)
- {
- tmpi = (vmin + (vech * i));
- tmps.Printf(wxT("%d"), (int)tmpi);
- MonDc.DrawRotatedText(tmps, 0, (int)(293 - (30 * i) + top), 0);
- }
- for (i=0; i < 12; i++)
- {
- tmpi = (hech * i * 100);
- if (tmpi < 1000)
- tmps.Printf(wxT("%ims"), (int)tmpi);
- if (tmpi > 1000)
- tmps.Printf(wxT("%is"), (int)(tmpi / 1000));
- MonDc.DrawRotatedText(tmps, (int)((60 * i) + left) - 10, (int)(317 + top), 0);
- }
- for (j=1; j < 10; j++)
- MonDc.DrawLine((int)left, (int)(300 - (30 * j) + top), (int)(left + 660), (int)(300 - (30 * j) + top));
- MonDc.SetPen(wxPen(wxColor(150,200,150), 2, wxSOLID));
- for (j=1; j < 22; j++)
- MonDc.DrawLine((int)(30 * j + left), (int)(300 + top), (int)(30 * j + left), (int)(top));
- MonDc.SetPen(wxPen(wxColor(150,170,150), 1, wxSOLID));
- for (j=1; j < 22; j++)
- MonDc.DrawLine((int)(30 * j + left - 15), (int)(300 + top), (int)(30 * j + left - 15), (int)(top));
- MonDc.DrawLine((int)(30 * 22 + left - 15), (int)(300 + top), (int)(30 * 22 + left - 15), (int)(top));
-
- double m = (- vmin) * d;
- MonDc.SetPen(wxPen(wxColor(170,170,150), 3, wxSOLID));
- MonDc.DrawLine((int)(left), (int)(300 + top - m), (int)(left + 660), (int)(300 + top - m));
-
- wxClientDC MaLeg(mylegpan);
- MaLeg.Clear();
-
- MaLeg.SetPen(wxPen(wxColour(150,200,100), 2, wxSOLID));
- MaLeg.SetFont(wxFont(7, wxSWISS , wxNORMAL, wxNORMAL, false, wxT("Arial Black")));
- for (int k=1, tmpi = 0; k < 30; k++)
+void
+MyFrame::OnQuit (wxCommandEvent & WXUNUSED (event))
+{
+ Close (true);
+}
+
+void
+MyFrame::Start ()
+{
+ if (main_can (SlaveBoard, LibraryPath))
{
- if ((tmpi < 8) && is_set(k, inlist, in))
- {
- if (k <= 4)
- tmps.Printf(wxT("Analogue Output %d"), k);
- if ((k > 4) && (k <= 12))
- tmps.Printf(wxT("Bool Output %d"), k - 4);
- if ((k > 12) && (k <= 20))
- tmps.Printf(wxT("Analogue Input %d"), k - 12);
- if ((k > 20) && (k <= 28))
- tmps.Printf(wxT("Bool Input %d"), k - 20);
-
- MaLeg.DrawRotatedText(tmps, 0, 10 * tmpi , 0);
- MaLeg.SetPen(wxPen(col[tmpi], 4, wxSOLID));
- MaLeg.DrawLine(100, 10 * tmpi + 6, 115, 10 * tmpi + 6);
- //////////////////////////////////////////DAW////////////////////////////////////////
- MonDc.SetPen(wxPen(col[tmpi], 4, wxSOLID));
- if (k <= 4)
- y[k - 1][(int)g] = Write_Analogue_Output_16_Bit[k - 1];
- if ((k > 4) && (k <= 12))
- y[k - 1][(int)g] = get_bit(Write_Outputs_8_Bit[0] ,k - 4);
- if ((k > 12) && (k <= 20))
- y[k - 1][(int)g] = Read_Analogue_Input_16_Bit[k - 1 -12];
- if ((k > 20) && (k <= 28))
- y[k - 1][(int)g] = get_bit(Read_Inputs_8_Bit[0] ,k - 20);
-
- if (y[k - 1][(int)g] > old_max)
- old_max = y[k - 1][(int)g];
- if (y[k - 1][(int)g] < old_min)
- old_min = y[k - 1][(int)g];
- for (j=1; j < (g + 1) ; j++)
- {
- p = (y[k - 1][j - 1] - vmin) * d;
- q = (y[k - 1][j ] - vmin) * d;
- MonDc.DrawLine((int)(15 * (j - 1) + left), (int)(300 + top - p), (int)(15 * j + left), (int)(300 + top - q));
- }
- /////////////////////////////////////////////////////////////////////////////////////
- tmpi++;
- }
+ printf ("[KO]\n");
+ *textLog <<
+ wxT
+ ("----------------------------------------------------Initialization [KO]\n");
}
-}
-
-void actu_output(void)
-{
- wxString tmp;
-
- frame->outbt1->SetValue(get_bit(Write_Outputs_8_Bit[0], 1));
- frame->outbt2->SetValue(get_bit(Write_Outputs_8_Bit[0], 2));
- frame->outbt3->SetValue(get_bit(Write_Outputs_8_Bit[0], 3));
- frame->outbt4->SetValue(get_bit(Write_Outputs_8_Bit[0], 4));
- frame->outbt5->SetValue(get_bit(Write_Outputs_8_Bit[0], 5));
- frame->outbt6->SetValue(get_bit(Write_Outputs_8_Bit[0], 6));
- frame->outbt7->SetValue(get_bit(Write_Outputs_8_Bit[0], 7));
- frame->outbt8->SetValue(get_bit(Write_Outputs_8_Bit[0], 8));
-
- frame->outs1->SetValue(Write_Analogue_Output_16_Bit[0] + 32768);
- frame->outs2->SetValue(Write_Analogue_Output_16_Bit[1] + 32768);
- frame->outs3->SetValue(Write_Analogue_Output_16_Bit[2] + 32768);
- frame->outs4->SetValue(Write_Analogue_Output_16_Bit[3] + 32768);
- tmp.Printf(wxT(" %i"), Write_Analogue_Output_16_Bit[0]);
- frame->outst1->SetLabel(tmp);
- tmp.Printf(wxT(" %i"), Write_Analogue_Output_16_Bit[1]);
- frame->outst2->SetLabel(tmp);
- tmp.Printf(wxT(" %i"), Write_Analogue_Output_16_Bit[2]);
- frame->outst3->SetLabel(tmp);
- tmp.Printf(wxT(" %i"), Write_Analogue_Output_16_Bit[3]);
- frame->outst4->SetLabel(tmp);
-}
-
-void actu(void)
-{
- actu_output();
-
- Gtime++;
- if (Gtime > hdelta)
+ else
+ {
+ printf ("[OK]\n");
+ *textLog <<
+ wxT
+ ("----------------------------------------------------Initialization [OK]\n");
+ stop->Enable (true);
+ start->Enable (false);
+ }
+}
+
+void
+MyFrame::OnStart (wxCommandEvent & WXUNUSED (event))
+{
+ wxString s;
+
+ node_id_ext = node_id->GetValue ();
+ s = busname->GetValue ();
+ strncpy (SlaveBoard.busname, s.mb_str (), MAXLENGTH_BUSNAME);
+ *textLog << wxT ("-- Bus name: ------> ") << s << wxT ("\n");
+ *textLog << wxT ("-- Node ID: -------> ") << node_id->
+ GetValue () << wxT ("\n");
+ Start ();
+}
+
+
+void
+MyFrame::OnStop (wxCommandEvent & WXUNUSED (event))
+{
+
+ *textLog <<
+ wxT
+ ("----------------------------------------------------Slave [STOPPED]") <<
+ wxT ("\n");
+ stop_slave ();
+ stop->Enable (false);
+ start->Enable (true);
+}
+
+void
+MyFrame::OnLoad (wxCommandEvent & WXUNUSED (event))
+{
+ wxFileDialog fd (this, wxT ("Choose a can driver library"), wxT (""),
+ wxT (""), LIB_EXTENT);
+
+ if (fd.ShowModal () == wxID_OK)
+ {
+ drivername->Clear ();
+ drivername->AppendText (fd.GetPath ());
+ *textLog << wxT ("LibraryPath: ") << fd.GetPath () << wxT ("\n");
+ strncpy (LibraryPath, fd.GetPath ().mb_str (), MAXLENGTH_LIBPATH);
+ printf ("path=%s", LibraryPath);
+ }
+}
+
+void
+MyFrame::OnInbt1 (wxCommandEvent & WXUNUSED (event))
+{
+ Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x1;
+}
+
+void
+MyFrame::OnInbt2 (wxCommandEvent & WXUNUSED (event))
+{
+ Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x2;
+}
+
+void
+MyFrame::OnInbt3 (wxCommandEvent & WXUNUSED (event))
+{
+ Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x4;
+}
+
+void
+MyFrame::OnInbt4 (wxCommandEvent & WXUNUSED (event))
+{
+ Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x8;
+}
+
+void
+MyFrame::OnInbt5 (wxCommandEvent & WXUNUSED (event))
+{
+ Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x10;
+}
+
+void
+MyFrame::OnInbt6 (wxCommandEvent & WXUNUSED (event))
+{
+ Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x20;
+}
+
+void
+MyFrame::OnInbt7 (wxCommandEvent & WXUNUSED (event))
+{
+ Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x40;
+}
+
+void
+MyFrame::OnInbt8 (wxCommandEvent & WXUNUSED (event))
+{
+ Read_Inputs_8_Bit[0] = Read_Inputs_8_Bit[0] ^ 0x80;
+}
+
+
+
+void
+MyFrame::OnIns1 (wxScrollEvent & event)
+{
+ Read_Analogue_Input_16_Bit[0] = ins1->GetValue ();
+ inst1->SetValue (ins1->GetValue ());
+}
+
+void
+MyFrame::OnIns2 (wxScrollEvent & event)
+{
+ Read_Analogue_Input_16_Bit[1] = ins2->GetValue ();
+ inst2->SetValue (ins2->GetValue ());
+}
+
+void
+MyFrame::OnIns3 (wxScrollEvent & event)
+{
+ Read_Analogue_Input_16_Bit[2] = ins3->GetValue ();
+ inst3->SetValue (ins3->GetValue ());
+}
+
+void
+MyFrame::OnIns4 (wxScrollEvent & event)
+{
+ Read_Analogue_Input_16_Bit[3] = ins4->GetValue ();
+ inst4->SetValue (ins4->GetValue ());
+}
+
+void
+MyFrame::OnIns5 (wxScrollEvent & event)
+{
+ Read_Analogue_Input_16_Bit[4] = ins5->GetValue ();
+ inst5->SetValue (ins5->GetValue ());
+}
+
+void
+MyFrame::OnIns6 (wxScrollEvent & event)
+{
+ Read_Analogue_Input_16_Bit[5] = ins6->GetValue ();
+ inst6->SetValue (ins6->GetValue ());
+}
+
+void
+MyFrame::OnIns7 (wxScrollEvent & event)
+{
+ Read_Analogue_Input_16_Bit[6] = ins7->GetValue ();
+ inst7->SetValue (ins7->GetValue ());
+}
+
+void
+MyFrame::OnIns8 (wxScrollEvent & event)
+{
+ Read_Analogue_Input_16_Bit[7] = ins8->GetValue ();
+ inst8->SetValue (ins8->GetValue ());
+}
+
+
+void
+MyFrame::OnInst1 (wxSpinEvent & ev)
+{
+ Read_Analogue_Input_16_Bit[0] = inst1->GetValue ();
+ ins1->SetValue (inst1->GetValue ());
+}
+
+void
+MyFrame::OnInst2 (wxSpinEvent & ev)
+{
+ Read_Analogue_Input_16_Bit[1] = inst2->GetValue ();
+ ins2->SetValue (inst2->GetValue ());
+}
+
+void
+MyFrame::OnInst3 (wxSpinEvent & ev)
+{
+ Read_Analogue_Input_16_Bit[2] = inst3->GetValue ();
+ ins3->SetValue (inst3->GetValue ());
+}
+
+void
+MyFrame::OnInst4 (wxSpinEvent & ev)
+{
+ Read_Analogue_Input_16_Bit[3] = inst4->GetValue ();
+ ins4->SetValue (inst4->GetValue ());
+}
+
+void
+MyFrame::OnInst5 (wxSpinEvent & ev)
+{
+ Read_Analogue_Input_16_Bit[4] = inst5->GetValue ();
+ ins5->SetValue (inst5->GetValue ());
+}
+
+void
+MyFrame::OnInst6 (wxSpinEvent & ev)
+{
+ Read_Analogue_Input_16_Bit[5] = inst6->GetValue ();
+ ins6->SetValue (inst6->GetValue ());
+}
+
+void
+MyFrame::OnInst7 (wxSpinEvent & ev)
+{
+ Read_Analogue_Input_16_Bit[6] = inst7->GetValue ();
+ ins7->SetValue (inst7->GetValue ());
+}
+
+void
+MyFrame::OnInst8 (wxSpinEvent & ev)
+{
+ Read_Analogue_Input_16_Bit[7] = inst8->GetValue ();
+ ins8->SetValue (inst8->GetValue ());
+}
+
+
+void
+MyFrame::OnAbout (wxCommandEvent & WXUNUSED (event))
+{
+ wxString msg;
+ msg.Printf (_T ("About.\n\n")
+ _T
+ ("Input-Output simulation by GRANDEMANGE Nicolas for CanFestival!!"));
+
+ wxMessageBox (msg, _T ("About !!!"), wxOK | wxICON_INFORMATION, this);
+}
+
+
+void
+MyFrame::OnFreqBoxClick (wxCommandEvent & event)
+{
+ wxString wxstr;
+
+ wxstr = event.GetString ();
+ strncpy (SlaveBoard.baudrate, wxstr.mb_str (), MAXLENGTH_BAUDRATE);
+ *textLog << wxT ("Baudrate:") << event.GetString () << wxT ("\n");
+}
+
+static int
+is_set (int i, wxListBox * inlist, wxArrayInt in)
+{
+ inlist->GetSelections (in);
+ for (int j = 0; j < in.GetCount (); j++)
+ {
+ if (i == (in[j] + 1))
{
- old_max = 5;
- old_min = -5;
- Gtime = 0;
+ return (i);
}
- frame->Paint();
-}
-
-void MyFrame::OnTimer(wxTimerEvent& event)
-{
- actu();// do whatever you want to do every second here
-}
-
-void MyFrame::OnPaint( wxPaintEvent &event )
-{
- //Paint();
-}
+ }
+ return (0);
+}
+
+static int
+get_bit (UNS8 input, int bit)
+{
+ return input & (((UNS8) 1) << bit - 1) ? 1 : 0;
+}
+
+void
+MyFrame::Paint ()
+{
+ double vmax = old_max;
+ double vmin = old_min;
+ double vdelta = vmax - vmin;
+ double vech = ((float) vdelta) / 10.0;
+
+ double hmax = frame->echelle->GetValue ();
+ double hech = hdelta / 11;
+
+ double d = 300 / vdelta;
+ double g = 0;
+ double top = 5;
+ double left = 50;
+
+ double tmpi = 0;
+ wxString tmps;
+ double p = 0;
+ double q = 0;
+ int i = 0;
+ int j = 0;
+ wxColor col[8] =
+ { wxColor (wxT ("BLUE")), wxColor (wxT ("RED")), wxColor (wxT ("GREEN")),
+wxColor (wxT ("GREY")),
+ wxColor (wxT ("ORANGE")), wxColor (wxT ("YELLOW")),
+ wxColor (wxT ("PINK")), wxColor (wxT ("BLACK"))
+ };
+ hdelta = hmax - 0;
+ g = (Gtime / hdelta) * 44.00;
+
+ wxClientDC MonDc (mygraphpan);
+ MonDc.Clear ();
+
+ MonDc.SetPen (wxPen (wxColour (200, 200, 200), 5, wxSOLID));
+ MonDc.DrawRectangle ((int) left, (int) top, 660, 300);
+
+ MonDc.SetPen (wxPen (wxColor (150, 200, 150), 2, wxSOLID));
+ MonDc.
+ SetFont (wxFont
+ (9, wxSWISS, wxNORMAL, wxNORMAL, false, wxT ("Arial Black")));
+ for (i = 0; i < 11; i++)
+ {
+ tmpi = (vmin + (vech * i));
+ tmps.Printf (wxT ("%d"), (int) tmpi);
+ MonDc.DrawRotatedText (tmps, 0, (int) (293 - (30 * i) + top), 0);
+ }
+ for (i = 0; i < 12; i++)
+ {
+ tmpi = (hech * i * 100);
+ if (tmpi < 1000)
+ tmps.Printf (wxT ("%ims"), (int) tmpi);
+ if (tmpi > 1000)
+ tmps.Printf (wxT ("%is"), (int) (tmpi / 1000));
+ MonDc.DrawRotatedText (tmps, (int) ((60 * i) + left) - 10,
+ (int) (317 + top), 0);
+ }
+ for (j = 1; j < 10; j++)
+ MonDc.DrawLine ((int) left, (int) (300 - (30 * j) + top),
+ (int) (left + 660), (int) (300 - (30 * j) + top));
+ MonDc.SetPen (wxPen (wxColor (150, 200, 150), 2, wxSOLID));
+ for (j = 1; j < 22; j++)
+ MonDc.DrawLine ((int) (30 * j + left), (int) (300 + top),
+ (int) (30 * j + left), (int) (top));
+ MonDc.SetPen (wxPen (wxColor (150, 170, 150), 1, wxSOLID));
+ for (j = 1; j < 22; j++)
+ MonDc.DrawLine ((int) (30 * j + left - 15), (int) (300 + top),
+ (int) (30 * j + left - 15), (int) (top));
+ MonDc.DrawLine ((int) (30 * 22 + left - 15), (int) (300 + top),
+ (int) (30 * 22 + left - 15), (int) (top));
+
+ double m = (-vmin) * d;
+ MonDc.SetPen (wxPen (wxColor (170, 170, 150), 3, wxSOLID));
+ MonDc.DrawLine ((int) (left), (int) (300 + top - m), (int) (left + 660),
+ (int) (300 + top - m));
+
+ wxClientDC MaLeg (mylegpan);
+ MaLeg.Clear ();
+
+ MaLeg.SetPen (wxPen (wxColour (150, 200, 100), 2, wxSOLID));
+ MaLeg.
+ SetFont (wxFont
+ (7, wxSWISS, wxNORMAL, wxNORMAL, false, wxT ("Arial Black")));
+ for (int k = 1, tmpi = 0; k < 30; k++)
+ {
+ if ((tmpi < 8) && is_set (k, inlist, in))
+ {
+ if (k <= 4)
+ tmps.Printf (wxT ("Analogue Output %d"), k);
+ if ((k > 4) && (k <= 12))
+ tmps.Printf (wxT ("Bool Output %d"), k - 4);
+ if ((k > 12) && (k <= 20))
+ tmps.Printf (wxT ("Analogue Input %d"), k - 12);
+ if ((k > 20) && (k <= 28))
+ tmps.Printf (wxT ("Bool Input %d"), k - 20);
+
+ MaLeg.DrawRotatedText (tmps, 0, 10 * tmpi, 0);
+ MaLeg.SetPen (wxPen (col[tmpi], 4, wxSOLID));
+ MaLeg.DrawLine (100, 10 * tmpi + 6, 115, 10 * tmpi + 6);
+ //////////////////////////////////////////DAW////////////////////////////////////////
+ MonDc.SetPen (wxPen (col[tmpi], 4, wxSOLID));
+ if (k <= 4)
+ y[k - 1][(int) g] = Write_Analogue_Output_16_Bit[k - 1];
+ if ((k > 4) && (k <= 12))
+ y[k - 1][(int) g] = get_bit (Write_Outputs_8_Bit[0], k - 4);
+ if ((k > 12) && (k <= 20))
+ y[k - 1][(int) g] = Read_Analogue_Input_16_Bit[k - 1 - 12];
+ if ((k > 20) && (k <= 28))
+ y[k - 1][(int) g] = get_bit (Read_Inputs_8_Bit[0], k - 20);
+
+ if (y[k - 1][(int) g] > old_max)
+ old_max = y[k - 1][(int) g];
+ if (y[k - 1][(int) g] < old_min)
+ old_min = y[k - 1][(int) g];
+ for (j = 1; j < (g + 1); j++)
+ {
+ p = (y[k - 1][j - 1] - vmin) * d;
+ q = (y[k - 1][j] - vmin) * d;
+ MonDc.DrawLine ((int) (15 * (j - 1) + left),
+ (int) (300 + top - p), (int) (15 * j + left),
+ (int) (300 + top - q));
+ }
+ /////////////////////////////////////////////////////////////////////////////////////
+ tmpi++;
+ }
+ }
+}
+
+void
+actu_output (void)
+{
+ wxString tmp;
+
+ frame->outbt1->SetValue (get_bit (Write_Outputs_8_Bit[0], 1));
+ frame->outbt2->SetValue (get_bit (Write_Outputs_8_Bit[0], 2));
+ frame->outbt3->SetValue (get_bit (Write_Outputs_8_Bit[0], 3));
+ frame->outbt4->SetValue (get_bit (Write_Outputs_8_Bit[0], 4));
+ frame->outbt5->SetValue (get_bit (Write_Outputs_8_Bit[0], 5));
+ frame->outbt6->SetValue (get_bit (Write_Outputs_8_Bit[0], 6));
+ frame->outbt7->SetValue (get_bit (Write_Outputs_8_Bit[0], 7));
+ frame->outbt8->SetValue (get_bit (Write_Outputs_8_Bit[0], 8));
+
+ frame->outs1->SetValue (Write_Analogue_Output_16_Bit[0] + 32768);
+ frame->outs2->SetValue (Write_Analogue_Output_16_Bit[1] + 32768);
+ frame->outs3->SetValue (Write_Analogue_Output_16_Bit[2] + 32768);
+ frame->outs4->SetValue (Write_Analogue_Output_16_Bit[3] + 32768);
+ tmp.Printf (wxT (" %i"), Write_Analogue_Output_16_Bit[0]);
+ frame->outst1->SetLabel (tmp);
+ tmp.Printf (wxT (" %i"), Write_Analogue_Output_16_Bit[1]);
+ frame->outst2->SetLabel (tmp);
+ tmp.Printf (wxT (" %i"), Write_Analogue_Output_16_Bit[2]);
+ frame->outst3->SetLabel (tmp);
+ tmp.Printf (wxT (" %i"), Write_Analogue_Output_16_Bit[3]);
+ frame->outst4->SetLabel (tmp);
+}
+
+void
+actu (void)
+{
+ actu_output ();
+
+ Gtime++;
+ if (Gtime > hdelta)
+ {
+ old_max = 5;
+ old_min = -5;
+ Gtime = 0;
+ }
+ frame->Paint ();
+}
+
+void
+MyFrame::OnTimer (wxTimerEvent & event)
+{
+ actu (); // do whatever you want to do every second here
+}
+
+void
+MyFrame::OnPaint (wxPaintEvent & event)
+{
+ //Paint();
+}
--- a/examples/DS401_Slave_Gui/monicone.xpm Mon Feb 04 16:40:44 2008 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,6339 +0,0 @@
-/* XPM */
-static char * monicone_xpm[] = {
-"127 126 6210 2",
-" c None",
-". c #020200",
-"+ c #020500",
-"@ c #000201",
-"# c #000503",
-"$ c #000102",
-"% c #00080A",
-"& c #000103",
-"* c #000002",
-"= c #000000",
-"- c #000105",
-"; c #000004",
-"> c #020005",
-", c #020003",
-"' c #070005",
-") c #000008",
-"! c #00000A",
-"~ c #000009",
-"{ c #010007",
-"] c #050007",
-"^ c #060008",
-"/ c #000016",
-"( c #00000E",
-"_ c #000010",
-": c #000113",
-"< c #010012",
-"[ c #010010",
-"} c #030011",
-"| c #04000F",
-"1 c #04000E",
-"2 c #03000C",
-"3 c #04000B",
-"4 c #02000C",
-"5 c #0B0C00",
-"6 c #000117",
-"7 c #000015",
-"8 c #000724",
-"9 c #000627",
-"0 c #000525",
-"a c #000524",
-"b c #000421",
-"c c #00011E",
-"d c #00001D",
-"e c #03001B",
-"f c #020018",
-"g c #000212",
-"h c #000211",
-"i c #000210",
-"j c #00000F",
-"k c #101300",
-"l c #000200",
-"m c #040500",
-"n c #00011C",
-"o c #000019",
-"p c #000625",
-"q c #000C36",
-"r c #001045",
-"s c #00124A",
-"t c #000F43",
-"u c #000C3C",
-"v c #000D39",
-"w c #000A37",
-"x c #000632",
-"y c #00032F",
-"z c #00042A",
-"A c #000523",
-"B c #000420",
-"C c #00041E",
-"D c #000115",
-"E c #000316",
-"F c #000313",
-"G c #000616",
-"H c #080900",
-"I c #080800",
-"J c #010100",
-"K c #000230",
-"L c #000526",
-"M c #000022",
-"N c #00082F",
-"O c #00113E",
-"P c #00164E",
-"Q c #001D67",
-"R c #001B60",
-"S c #001D5F",
-"T c #001A5D",
-"U c #001860",
-"V c #001861",
-"W c #001258",
-"X c #000F4E",
-"Y c #000D43",
-"Z c #000935",
-"` c #00082E",
-" . c #000020",
-".. c #000827",
-"+. c #000622",
-"@. c #00051B",
-"#. c #000617",
-"$. c #000315",
-"%. c #010000",
-"&. c #060500",
-"*. c #030000",
-"=. c #030300",
-"-. c #00030E",
-";. c #000933",
-">. c #000D3B",
-",. c #001249",
-"'. c #001958",
-"). c #001C58",
-"!. c #002676",
-"~. c #002678",
-"{. c #00277A",
-"]. c #002780",
-"^. c #002680",
-"/. c #002179",
-"(. c #001D71",
-"_. c #00186B",
-":. c #001665",
-"<. c #000939",
-"[. c #000B3A",
-"}. c #000027",
-"|. c #000024",
-"1. c #000629",
-"2. c #000621",
-"3. c #000013",
-"4. c #00000D",
-"5. c #010006",
-"6. c #010002",
-"7. c #000411",
-"8. c #000E34",
-"9. c #001654",
-"0. c #001A5F",
-"a. c #00226B",
-"b. c #00246B",
-"c. c #002572",
-"d. c #002E8A",
-"e. c #003398",
-"f. c #003090",
-"g. c #002D8E",
-"h. c #002C8B",
-"i. c #00298A",
-"j. c #002888",
-"k. c #002385",
-"l. c #001D7C",
-"m. c #001973",
-"n. c #001156",
-"o. c #000E53",
-"p. c #000C40",
-"q. c #000C3F",
-"r. c #000936",
-"s. c #000423",
-"t. c #000018",
-"u. c #00000B",
-"v. c #030004",
-"w. c #060004",
-"x. c #040001",
-"y. c #020001",
-"z. c #000100",
-"A. c #050800",
-"B. c #030002",
-"C. c #060007",
-"D. c #020006",
-"E. c #010005",
-"F. c #000405",
-"G. c #000403",
-"H. c #00010E",
-"I. c #000B35",
-"J. c #001862",
-"K. c #001E6F",
-"L. c #00216F",
-"M. c #002976",
-"N. c #00307D",
-"O. c #003684",
-"P. c #004197",
-"Q. c #00469F",
-"R. c #004191",
-"S. c #003A87",
-"T. c #003F92",
-"U. c #0044A2",
-"V. c #0043A4",
-"W. c #003894",
-"X. c #002C7C",
-"Y. c #00195C",
-"Z. c #001C63",
-"`. c #001F68",
-" + c #001F64",
-".+ c #001B56",
-"++ c #00184C",
-"@+ c #001645",
-"#+ c #000D32",
-"$+ c #000017",
-"%+ c #01000E",
-"&+ c #000007",
-"*+ c #010004",
-"=+ c #050004",
-"-+ c #010700",
-";+ c #030500",
-">+ c #040400",
-",+ c #060000",
-"'+ c #000300",
-")+ c #0C1700",
-"!+ c #0E0200",
-"~+ c #080000",
-"{+ c #0C000A",
-"]+ c #0C000F",
-"^+ c #06000C",
-"/+ c #06000E",
-"(+ c #090013",
-"_+ c #04000D",
-":+ c #00030A",
-"<+ c #000A0B",
-"[+ c #000C09",
-"}+ c #000B16",
-"|+ c #000E3F",
-"1+ c #001264",
-"2+ c #001A6D",
-"3+ c #00216C",
-"4+ c #00317C",
-"5+ c #00428D",
-"6+ c #004E92",
-"7+ c #005998",
-"8+ c #00619A",
-"9+ c #00679D",
-"0+ c #0069A2",
-"a+ c #0069A5",
-"b+ c #0067A7",
-"c+ c #005CA0",
-"d+ c #004F91",
-"e+ c #003F7A",
-"f+ c #002654",
-"g+ c #002851",
-"h+ c #002C58",
-"i+ c #003161",
-"j+ c #003B72",
-"k+ c #003C75",
-"l+ c #003974",
-"m+ c #003774",
-"n+ c #002A5F",
-"o+ c #001237",
-"p+ c #000322",
-"q+ c #000920",
-"r+ c #000213",
-"s+ c #040005",
-"t+ c #000501",
-"u+ c #000400",
-"v+ c #000D00",
-"w+ c #011600",
-"x+ c #000500",
-"y+ c #020D00",
-"z+ c #020800",
-"A+ c #070A00",
-"B+ c #010300",
-"C+ c #010C00",
-"D+ c #140900",
-"E+ c #040000",
-"F+ c #01000B",
-"G+ c #030010",
-"H+ c #040012",
-"I+ c #0D001A",
-"J+ c #0A0018",
-"K+ c #050016",
-"L+ c #000314",
-"M+ c #000511",
-"N+ c #00131A",
-"O+ c #001B31",
-"P+ c #001E58",
-"Q+ c #001F60",
-"R+ c #002362",
-"S+ c #00327E",
-"T+ c #004B9F",
-"U+ c #0058A7",
-"V+ c #0070B8",
-"W+ c #009BE8",
-"X+ c #00B7FF",
-"Y+ c #00B5F5",
-"Z+ c #00AAE3",
-"`+ c #00A1DA",
-" @ c #009FDD",
-".@ c #009FE5",
-"+@ c #0093E4",
-"@@ c #0085D4",
-"#@ c #0061A9",
-"$@ c #005595",
-"%@ c #004C83",
-"&@ c #004576",
-"*@ c #004573",
-"=@ c #003967",
-"-@ c #003461",
-";@ c #003765",
-">@ c #002D5D",
-",@ c #002149",
-"'@ c #00163A",
-")@ c #000C27",
-"!@ c #000012",
-"~@ c #000005",
-"{@ c #050009",
-"]@ c #06000A",
-"^@ c #030009",
-"/@ c #000308",
-"(@ c #00080B",
-"_@ c #000404",
-":@ c #000502",
-"<@ c #00130F",
-"[@ c #000903",
-"}@ c #000600",
-"|@ c #000B03",
-"1@ c #040700",
-"2@ c #10000D",
-"3@ c #000205",
-"4@ c #000302",
-"5@ c #000604",
-"6@ c #00140F",
-"7@ c #000E0A",
-"8@ c #000609",
-"9@ c #000D15",
-"0@ c #010011",
-"a@ c #0B001A",
-"b@ c #10001E",
-"c@ c #0C0022",
-"d@ c #010021",
-"e@ c #000726",
-"f@ c #001633",
-"g@ c #00274E",
-"h@ c #004076",
-"i@ c #004F8E",
-"j@ c #005CA9",
-"k@ c #0070C9",
-"l@ c #007CDC",
-"m@ c #008BED",
-"n@ c #00A7F7",
-"o@ c #00B8FB",
-"p@ c #00B9F5",
-"q@ c #00B1EB",
-"r@ c #00AEE1",
-"s@ c #00AFE3",
-"t@ c #0092FF",
-"u@ c #0081E0",
-"v@ c #007ED4",
-"w@ c #007ED0",
-"x@ c #0067A8",
-"y@ c #00487B",
-"z@ c #002F5E",
-"A@ c #002352",
-"B@ c #00143D",
-"C@ c #00072F",
-"D@ c #040020",
-"E@ c #040013",
-"F@ c #06000D",
-"G@ c #02000A",
-"H@ c #02000E",
-"I@ c #000B20",
-"J@ c #00071D",
-"K@ c #00031B",
-"L@ c #000319",
-"M@ c #00081C",
-"N@ c #000B1B",
-"O@ c #00020C",
-"P@ c #000107",
-"Q@ c #000A17",
-"R@ c #00050F",
-"S@ c #00040E",
-"T@ c #00141D",
-"U@ c #00101C",
-"V@ c #000112",
-"W@ c #000D1D",
-"X@ c #000D16",
-"Y@ c #001A1A",
-"Z@ c #000F0B",
-"`@ c #00130D",
-" # c #001A1B",
-".# c #000615",
-"+# c #050018",
-"@# c #0C0023",
-"## c #07002A",
-"$# c #001541",
-"%# c #002D5B",
-"&# c #004775",
-"*# c #006E9F",
-"=# c #006D99",
-"-# c #007AB0",
-";# c #009BE3",
-"># c #008FD9",
-",# c #007DC0",
-"'# c #008BD4",
-")# c #00A4F3",
-"!# c #00ACFF",
-"~# c #00A9FF",
-"{# c #00A7FF",
-"]# c #00B4FF",
-"^# c #00C3FF",
-"/# c #009DF7",
-"(# c #006BAC",
-"_# c #004C84",
-":# c #003568",
-"<# c #001B44",
-"[# c #000F31",
-"}# c #000118",
-"|# c #02000F",
-"1# c #00050A",
-"2# c #000413",
-"3# c #00162B",
-"4# c #001C37",
-"5# c #002044",
-"6# c #00254E",
-"7# c #002B5E",
-"8# c #002F66",
-"9# c #002B5D",
-"0# c #002C5E",
-"a# c #002652",
-"b# c #001D3A",
-"c# c #001023",
-"d# c #000612",
-"e# c #001E2C",
-"f# c #002132",
-"g# c #000C1E",
-"h# c #001326",
-"i# c #002137",
-"j# c #001932",
-"k# c #001E3F",
-"l# c #002242",
-"m# c #00162A",
-"n# c #00232E",
-"o# c #002524",
-"p# c #00342F",
-"q# c #001713",
-"r# c #00090B",
-"s# c #00021A",
-"t# c #010026",
-"u# c #000A39",
-"v# c #001C4B",
-"w# c #003C6E",
-"x# c #0065A2",
-"y# c #008BC3",
-"z# c #00AAD1",
-"A# c #00859F",
-"B# c #007490",
-"C# c #0089AF",
-"D# c #0097CD",
-"E# c #00A2E8",
-"F# c #00A1F1",
-"G# c #008CDD",
-"H# c #00B1FF",
-"I# c #00D5FF",
-"J# c #00CFFF",
-"K# c #00A6F1",
-"L# c #008ACA",
-"M# c #0081BE",
-"N# c #008ED4",
-"O# c #00A3FF",
-"P# c #0067A9",
-"Q# c #003C65",
-"R# c #00132E",
-"S# c #000619",
-"T# c #00121E",
-"U# c #00020B",
-"V# c #00050C",
-"W# c #00222A",
-"X# c #003543",
-"Y# c #004A65",
-"Z# c #005E8D",
-"`# c #005D94",
-" $ c #005791",
-".$ c #005A9E",
-"+$ c #0064B0",
-"@$ c #005CA4",
-"#$ c #0060AB",
-"$$ c #005FA3",
-"%$ c #004E7F",
-"&$ c #004363",
-"*$ c #003649",
-"=$ c #003C4B",
-"-$ c #00394F",
-";$ c #001124",
-">$ c #00142C",
-",$ c #003D5A",
-"'$ c #004066",
-")$ c #00436F",
-"!$ c #003B6A",
-"~$ c #003B64",
-"{$ c #003858",
-"]$ c #004D64",
-"^$ c #005563",
-"/$ c #005259",
-"($ c #003E45",
-"_$ c #002B35",
-":$ c #00172B",
-"<$ c #00102A",
-"[$ c #001438",
-"}$ c #002856",
-"|$ c #004D7E",
-"1$ c #0082BB",
-"2$ c #00BDFF",
-"3$ c #00CCFE",
-"4$ c #00D9F8",
-"5$ c #00EAFF",
-"6$ c #00CDE7",
-"7$ c #008FA9",
-"8$ c #00607D",
-"9$ c #00779A",
-"0$ c #009AD4",
-"a$ c #00B6FF",
-"b$ c #009FF6",
-"c$ c #00A5FF",
-"d$ c #00B0DD",
-"e$ c #00A6CB",
-"f$ c #0093B7",
-"g$ c #0095C2",
-"h$ c #00B4F0",
-"i$ c #00CAFF",
-"j$ c #00AFF7",
-"k$ c #00ADF3",
-"l$ c #00A4E5",
-"m$ c #008ABF",
-"n$ c #005B79",
-"o$ c #00374C",
-"p$ c #001F2D",
-"q$ c #00202A",
-"r$ c #00333D",
-"s$ c #005564",
-"t$ c #00697D",
-"u$ c #007492",
-"v$ c #007EA8",
-"w$ c #0081B4",
-"x$ c #007AB6",
-"y$ c #007BBE",
-"z$ c #007FC8",
-"A$ c #0092E7",
-"B$ c #0090DF",
-"C$ c #0081C7",
-"D$ c #0070A6",
-"E$ c #006F9C",
-"F$ c #006384",
-"G$ c #005369",
-"H$ c #00495A",
-"I$ c #003A50",
-"J$ c #003147",
-"K$ c #003544",
-"L$ c #001F32",
-"M$ c #004C63",
-"N$ c #006A8D",
-"O$ c #0074A4",
-"P$ c #006291",
-"Q$ c #005F92",
-"R$ c #00619B",
-"S$ c #005686",
-"T$ c #00507A",
-"U$ c #004B71",
-"V$ c #004A69",
-"W$ c #00405D",
-"X$ c #003654",
-"Y$ c #00304F",
-"Z$ c #002C51",
-"`$ c #002747",
-" % c #003756",
-".% c #006289",
-"+% c #00A0C8",
-"@% c #00DBFF",
-"#% c #00F9FF",
-"$% c #00E6FF",
-"%% c #00EDFF",
-"&% c #00D2E5",
-"*% c #00C7DA",
-"=% c #00CCE8",
-"-% c #00BCD9",
-";% c #0090AA",
-">% c #00718D",
-",% c #007191",
-"'% c #0080A9",
-")% c #0080AE",
-"!% c #0085B7",
-"~% c #0089BD",
-"{% c #0090C4",
-"]% c #0097C5",
-"^% c #0098C6",
-"/% c #009BB5",
-"(% c #008484",
-"_% c #00A19C",
-":% c #00BCC2",
-"<% c #00CCE4",
-"[% c #00D8FF",
-"}% c #00D4FF",
-"|% c #00CEFF",
-"1% c #00D2FF",
-"2% c #00BBF1",
-"3% c #00C3F6",
-"4% c #00D9FF",
-"5% c #00BFE8",
-"6% c #0087A3",
-"7% c #005567",
-"8% c #003B4A",
-"9% c #005B6E",
-"0% c #007D95",
-"a% c #008AA5",
-"b% c #0082A1",
-"c% c #0083A6",
-"d% c #0092BF",
-"e% c #009BCE",
-"f% c #009CD7",
-"g% c #00A9EB",
-"h% c #00B0F7",
-"i% c #00B0F8",
-"j% c #00A5E6",
-"k% c #008DC4",
-"l% c #007AA6",
-"m% c #007399",
-"n% c #006F92",
-"o% c #006788",
-"p% c #004F71",
-"q% c #002F46",
-"r% c #003752",
-"s% c #002643",
-"t% c #002940",
-"u% c #006C85",
-"v% c #00829F",
-"w% c #0090B7",
-"x% c #008AB9",
-"y% c #007DB1",
-"z% c #007CB6",
-"A% c #0083BF",
-"B% c #0072AC",
-"C% c #005E92",
-"D% c #005489",
-"E% c #004678",
-"F% c #003F72",
-"G% c #003760",
-"H% c #00426D",
-"I% c #003A5A",
-"J% c #00627E",
-"K% c #00AFCE",
-"L% c #00DEF4",
-"M% c #00E1F0",
-"N% c #00F2FB",
-"O% c #00F2FE",
-"P% c #00F1FF",
-"Q% c #00D6EE",
-"R% c #00CCE3",
-"S% c #00DDF2",
-"T% c #00D3EA",
-"U% c #00BDD4",
-"V% c #00BFD5",
-"W% c #009CB4",
-"X% c #0095AC",
-"Y% c #008BA1",
-"Z% c #00859B",
-"`% c #00899D",
-" & c #0092A3",
-".& c #009CAB",
-"+& c #00A1A7",
-"@& c #00DCCA",
-"#& c #00FBE1",
-"$& c #00FBF2",
-"%& c #00E7ED",
-"&& c #00E2F7",
-"*& c #00DDFE",
-"=& c #00DAFF",
-"-& c #00E2FF",
-";& c #00DCFF",
-">& c #00CFF8",
-",& c #00C6E9",
-"'& c #00C1E3",
-")& c #00CAF0",
-"!& c #00A3C1",
-"~& c #006C7F",
-"{& c #005A70",
-"]& c #007E9F",
-"^& c #0088AC",
-"/& c #008BAF",
-"(& c #009EC8",
-"_& c #00C4F7",
-":& c #00BFF0",
-"<& c #00B1E3",
-"[& c #00CBFF",
-"}& c #00E8FF",
-"|& c #00BDF7",
-"1& c #00A5DD",
-"2& c #00A4DE",
-"3& c #0087BA",
-"4& c #0077A4",
-"5& c #0073A2",
-"6& c #006793",
-"7& c #005A84",
-"8& c #004466",
-"9& c #003854",
-"0& c #003A59",
-"a& c #001E41",
-"b& c #005C7D",
-"c& c #007C99",
-"d& c #009DBD",
-"e& c #00AECF",
-"f& c #00ABD3",
-"g& c #00A3D4",
-"h& c #009AD1",
-"i& c #0097CE",
-"j& c #009ED1",
-"k& c #008BBC",
-"l& c #0086C0",
-"m& c #0076BB",
-"n& c #005FA9",
-"o& c #00529A",
-"p& c #004B8B",
-"q& c #005188",
-"r& c #003B65",
-"s& c #007FA1",
-"t& c #00B4CE",
-"u& c #00D0DC",
-"v& c #00E6E9",
-"w& c #00E2DB",
-"x& c #00D4CC",
-"y& c #00D4D5",
-"z& c #00D6F7",
-"A& c #00DEFF",
-"B& c #00CDE5",
-"C& c #00D7E7",
-"D& c #00E9F2",
-"E& c #00E4EA",
-"F& c #00F3F4",
-"G& c #00F5F4",
-"H& c #00E4E0",
-"I& c #00DED9",
-"J& c #00EAE0",
-"K& c #00F8EB",
-"L& c #00F1DF",
-"M& c #00DECC",
-"N& c #00CEC2",
-"O& c #00D6CE",
-"P& c #00DFDD",
-"Q& c #00CACB",
-"R& c #00D4D6",
-"S& c #00E1E8",
-"T& c #00DBE7",
-"U& c #00DDED",
-"V& c #00D4EB",
-"W& c #00CBE8",
-"X& c #00C8E8",
-"Y& c #00CDF2",
-"Z& c #00C7EE",
-"`& c #00C2E7",
-" * c #00E1FF",
-".* c #008FB0",
-"+* c #006C96",
-"@* c #0095CA",
-"#* c #00C7FF",
-"$* c #00F3FF",
-"%* c #00C6F3",
-"&* c #00D2F9",
-"** c #00EBFF",
-"=* c #00BFEA",
-"-* c #00B0E1",
-";* c #0087C3",
-">* c #0079B7",
-",* c #0075B8",
-"'* c #006DAE",
-")* c #006397",
-"!* c #005C87",
-"~* c #004D73",
-"{* c #004160",
-"]* c #00364E",
-"^* c #002753",
-"/* c #005D8B",
-"(* c #0099CB",
-"_* c #009EC3",
-":* c #00A3C0",
-"<* c #00B3D2",
-"[* c #00C8F0",
-"}* c #00B8F1",
-"|* c #00A4D6",
-"1* c #00A7D1",
-"2* c #00A4D1",
-"3* c #009CDA",
-"4* c #0082CB",
-"5* c #0074C8",
-"6* c #006DC7",
-"7* c #0061A5",
-"8* c #005389",
-"9* c #0092BE",
-"0* c #00CFF1",
-"a* c #00D7E6",
-"b* c #00E6E7",
-"c* c #00D1CC",
-"d* c #00D9CC",
-"e* c #00A298",
-"f* c #009396",
-"g* c #00A7CB",
-"h* c #00B5E9",
-"i* c #00C0E7",
-"j* c #00D5F1",
-"k* c #00F2FF",
-"l* c #00F7FF",
-"m* c #00F2F6",
-"n* c #00E9EF",
-"o* c #00F2FC",
-"p* c #00F6FF",
-"q* c #00E5F5",
-"r* c #00C6D2",
-"s* c #00B6C1",
-"t* c #00BDC6",
-"u* c #00C6DD",
-"v* c #00BBE5",
-"w* c #00F0FF",
-"x* c #00F8FF",
-"y* c #00E6F8",
-"z* c #00D6DD",
-"A* c #00D6D5",
-"B* c #00D1CE",
-"C* c #00A9AA",
-"D* c #0095A0",
-"E* c #007688",
-"F* c #007691",
-"G* c #00C0E5",
-"H* c #00C8F1",
-"I* c #007DAE",
-"J* c #0079B3",
-"K* c #00AAEB",
-"L* c #00E7F9",
-"M* c #00E0EE",
-"N* c #00EBFB",
-"O* c #00C5D9",
-"P* c #00BFE5",
-"Q* c #00B0F9",
-"R* c #008FDC",
-"S* c #007FCA",
-"T* c #0071B8",
-"U* c #006DA7",
-"V* c #00618E",
-"W* c #005C86",
-"X* c #00567D",
-"Y* c #003D58",
-"Z* c #00405C",
-"`* c #00356A",
-" = c #00355F",
-".= c #005787",
-"+= c #0075A6",
-"@= c #00ADDD",
-"#= c #00B8DC",
-"$= c #00C2DF",
-"%= c #00CDEC",
-"&= c #00E5FF",
-"*= c #00DDFF",
-"== c #00D3FF",
-"-= c #00C6F0",
-";= c #00B8E6",
-">= c #00ADE7",
-",= c #009CE9",
-"'= c #0090EB",
-")= c #007BCA",
-"!= c #006CA7",
-"~= c #0081B0",
-"{= c #00EEFF",
-"]= c #00EFF4",
-"^= c #00E7E5",
-"/= c #00B1AB",
-"(= c #00726E",
-"_= c #002B2C",
-":= c #001621",
-"<= c #005670",
-"[= c #0080A6",
-"}= c #00A4C7",
-"|= c #00DBFC",
-"1= c #00E1F5",
-"2= c #00FDFF",
-"3= c #00D0FF",
-"4= c #00ABEE",
-"5= c #0090D4",
-"6= c #0081C4",
-"7= c #0076B9",
-"8= c #0075BB",
-"9= c #0078C4",
-"0= c #0072CE",
-"a= c #0082DF",
-"b= c #00ACF5",
-"c= c #00FFFF",
-"d= c #00F7F0",
-"e= c #00D6C3",
-"f= c #008D7D",
-"g= c #003635",
-"h= c #000C15",
-"i= c #00091C",
-"j= c #00364F",
-"k= c #008EBB",
-"l= c #00D0FC",
-"m= c #00D2F2",
-"n= c #00C6EB",
-"o= c #00ACE8",
-"p= c #0081BA",
-"q= c #00D7CE",
-"r= c #00CDFF",
-"s= c #00AFF8",
-"t= c #0099E7",
-"u= c #0088CE",
-"v= c #0076AD",
-"w= c #0073A5",
-"x= c #006591",
-"y= c #00628C",
-"z= c #004F70",
-"A= c #003D55",
-"B= c #003259",
-"C= c #006EA8",
-"D= c #0084BB",
-"E= c #0089B5",
-"F= c #00A7CD",
-"G= c #00C5E7",
-"H= c #00E9FF",
-"I= c #00ECFF",
-"J= c #00DFFF",
-"K= c #00B4F1",
-"L= c #009BE2",
-"M= c #0089D5",
-"N= c #0075B2",
-"O= c #0077A9",
-"P= c #00B4E2",
-"Q= c #00D3F0",
-"R= c #00D4E1",
-"S= c #00FBFF",
-"T= c #00E4E1",
-"U= c #00B8BA",
-"V= c #003B3F",
-"W= c #00142A",
-"X= c #00647F",
-"Y= c #0089A5",
-"Z= c #00C1E0",
-"`= c #00D5F6",
-" - c #00C4E5",
-".- c #00E0FF",
-"+- c #00D1FF",
-"@- c #0090E6",
-"#- c #0075D3",
-"$- c #006ED7",
-"%- c #0072EA",
-"&- c #0074F7",
-"*- c #0074F4",
-"=- c #006DED",
-"-- c #005EDE",
-";- c #005AC7",
-">- c #0077C8",
-",- c #00B0F0",
-"'- c #00C8B8",
-")- c #00655A",
-"!- c #00100E",
-"~- c #000E15",
-"{- c #00081A",
-"]- c #000520",
-"^- c #005174",
-"/- c #00AAD3",
-"(- c #00D0EC",
-"_- c #009ACE",
-":- c #008AB0",
-"<- c #00BEFF",
-"[- c #008DC5",
-"}- c #0087BE",
-"|- c #007CB1",
-"1- c #006E9C",
-"2- c #006995",
-"3- c #005D83",
-"4- c #004361",
-"5- c #003E61",
-"6- c #005B83",
-"7- c #0092C6",
-"8- c #00B8F2",
-"9- c #00D4FD",
-"0- c #00E4FF",
-"a- c #00A6DF",
-"b- c #0076A9",
-"c- c #006A9F",
-"d- c #006D9F",
-"e- c #00B9DC",
-"f- c #00E9FE",
-"g- c #00D8E1",
-"h- c #00EEEF",
-"i- c #00C8CA",
-"j- c #009CA9",
-"k- c #002C3C",
-"l- c #000723",
-"m- c #00213F",
-"n- c #00132B",
-"o- c #006278",
-"p- c #007B91",
-"q- c #00C2EA",
-"r- c #00BBEA",
-"s- c #00B7F8",
-"t- c #008AD1",
-"u- c #0066B9",
-"v- c #005CC3",
-"w- c #0054D4",
-"x- c #0054F0",
-"y- c #0059FF",
-"z- c #005DFF",
-"A- c #0061FF",
-"B- c #0063FF",
-"C- c #0061EE",
-"D- c #006ED0",
-"E- c #007ABD",
-"F- c #0099C6",
-"G- c #00DCFA",
-"H- c #00CFDE",
-"I- c #006266",
-"J- c #000B1A",
-"K- c #000E26",
-"L- c #005273",
-"M- c #009EC5",
-"N- c #00C1DA",
-"O- c #00D2EB",
-"P- c #00B2D1",
-"Q- c #00C5EB",
-"R- c #009CB0",
-"S- c #00989F",
-"T- c #009476",
-"U- c #00D1F8",
-"V- c #00ADD9",
-"W- c #009ED5",
-"X- c #0080B3",
-"Y- c #007BAD",
-"Z- c #0076A4",
-"`- c #00658F",
-" ; c #00658E",
-".; c #005479",
-"+; c #005880",
-"@; c #003355",
-"#; c #004B6B",
-"$; c #007FAA",
-"%; c #009FCC",
-"&; c #00BDEA",
-"*; c #00A7DC",
-"=; c #007FB1",
-"-; c #005C8A",
-";; c #00618C",
-">; c #00718F",
-",; c #009AB3",
-"'; c #00B9C5",
-"); c #00DDE0",
-"!; c #00D9DC",
-"~; c #00D1DA",
-"{; c #0096AD",
-"]; c #005975",
-"^; c #000F34",
-"/; c #002B49",
-"(; c #00748E",
-"_; c #008DA7",
-":; c #00A5C6",
-"<; c #00B3DB",
-"[; c #00A5D5",
-"}; c #0090CD",
-"|; c #006BAE",
-"1; c #005CBC",
-"2; c #004AC1",
-"3; c #003AC5",
-"4; c #0035CD",
-"5; c #0038CD",
-"6; c #003CCE",
-"7; c #0046D5",
-"8; c #004BDD",
-"9; c #0044D3",
-"0; c #0054DF",
-"a; c #0063CE",
-"b; c #006DBA",
-"c; c #007BB2",
-"d; c #009FD1",
-"e; c #00C8FD",
-"f; c #009FC9",
-"g; c #003E56",
-"h; c #000F29",
-"i; c #000D2B",
-"j; c #003856",
-"k; c #00B0D6",
-"l; c #00C2DB",
-"m; c #00C6DC",
-"n; c #00B0C2",
-"o; c #0096A1",
-"p; c #007178",
-"q; c #004748",
-"r; c #003330",
-"s; c #002925",
-"t; c #000E07",
-"u; c #002019",
-"v; c #003631",
-"w; c #004943",
-"x; c #007C7C",
-"y; c #00DDEF",
-"z; c #00A3D3",
-"A; c #00A1DE",
-"B; c #008CC1",
-"C; c #0076A3",
-"D; c #007CAD",
-"E; c #006189",
-"F; c #00628D",
-"G; c #004E6F",
-"H; c #002E44",
-"I; c #00617D",
-"J; c #008CAE",
-"K; c #00B3DA",
-"L; c #00BBDD",
-"M; c #00C8E6",
-"N; c #00C7E9",
-"O; c #00B2DA",
-"P; c #007397",
-"Q; c #00557C",
-"R; c #00436A",
-"S; c #003E62",
-"T; c #003555",
-"U; c #002944",
-"V; c #002335",
-"W; c #00444E",
-"X; c #005F65",
-"Y; c #008C8E",
-"Z; c #00A9AE",
-"`; c #00DEF1",
-" > c #00D0F1",
-".> c #00B7E8",
-"+> c #00709F",
-"@> c #006690",
-"#> c #00779D",
-"$> c #009AC2",
-"%> c #00B7E2",
-"&> c #00AACF",
-"*> c #008AAD",
-"=> c #006B92",
-"-> c #005481",
-";> c #003C76",
-">> c #002663",
-",> c #001754",
-"'> c #001450",
-")> c #001A51",
-"!> c #002155",
-"~> c #002D5C",
-"{> c #00346A",
-"]> c #003587",
-"^> c #003994",
-"/> c #004698",
-"(> c #005AA8",
-"_> c #0064A9",
-":> c #006EAB",
-"<> c #0097DE",
-"[> c #00CCFF",
-"}> c #00B8FC",
-"|> c #0091C2",
-"1> c #0089B3",
-"2> c #0091B6",
-"3> c #00A4C9",
-"4> c #00A8C5",
-"5> c #00DDFC",
-"6> c #00DCF2",
-"7> c #00656A",
-"8> c #003837",
-"9> c #001313",
-"0> c #000A0C",
-"a> c #001218",
-"b> c #000E16",
-"c> c #00010B",
-"d> c #000912",
-"e> c #000E19",
-"f> c #000A15",
-"g> c #002630",
-"h> c #00505B",
-"i> c #00919F",
-"j> c #00D4EC",
-"k> c #00B5E7",
-"l> c #00C9FF",
-"m> c #0077A6",
-"n> c #0088C0",
-"o> c #006790",
-"p> c #005981",
-"q> c #006999",
-"r> c #002A42",
-"s> c #003D54",
-"t> c #006482",
-"u> c #008EB3",
-"v> c #00A3C7",
-"w> c #00FAFF",
-"x> c #007184",
-"y> c #00516E",
-"z> c #004A6B",
-"A> c #004668",
-"B> c #003653",
-"C> c #00263A",
-"D> c #001D2D",
-"E> c #001520",
-"F> c #001017",
-"G> c #00363D",
-"H> c #005E68",
-"I> c #008494",
-"J> c #00BCDB",
-"K> c #00D1F7",
-"L> c #00CBF7",
-"M> c #00C3F9",
-"N> c #00BFF4",
-"O> c #009BC1",
-"P> c #006C88",
-"Q> c #003953",
-"R> c #002743",
-"S> c #001935",
-"T> c #000E2C",
-"U> c #000823",
-"V> c #000821",
-"W> c #000C1D",
-"X> c #000F1B",
-"Y> c #001821",
-"Z> c #002032",
-"`> c #001F4C",
-" , c #00215D",
-"., c #001C57",
-"+, c #003069",
-"@, c #00437E",
-"#, c #005590",
-"$, c #0080C7",
-"%, c #00B3FF",
-"&, c #00CBEF",
-"*, c #00C2D9",
-"=, c #00BECF",
-"-, c #00CADD",
-";, c #006D72",
-">, c #00120E",
-",, c #000D06",
-"', c #000805",
-"), c #001214",
-"!, c #000207",
-"~, c #03000A",
-"{, c #010009",
-"], c #00000C",
-"^, c #000F19",
-"/, c #001E27",
-"(, c #002229",
-"_, c #004A53",
-":, c #008F9C",
-"<, c #00DAFA",
-"[, c #00F4FF",
-"}, c #00B5F3",
-"|, c #00B1EA",
-"1, c #0093C2",
-"2, c #007DA7",
-"3, c #0079A7",
-"4, c #006C99",
-"5, c #006795",
-"6, c #00476A",
-"7, c #00567B",
-"8, c #005671",
-"9, c #005469",
-"0, c #003C4E",
-"a, c #00597A",
-"b, c #0078A6",
-"c, c #0092C8",
-"d, c #00A4DB",
-"e, c #00D7FF",
-"f, c #00FCFF",
-"g, c #00535A",
-"h, c #00394C",
-"i, c #003241",
-"j, c #003340",
-"k, c #00313F",
-"l, c #002C3A",
-"m, c #002E3F",
-"n, c #001F2F",
-"o, c #001B2D",
-"p, c #000F23",
-"q, c #000719",
-"r, c #003E4D",
-"s, c #008A98",
-"t, c #00BAC2",
-"u, c #00EDF3",
-"v, c #00D2FC",
-"w, c #00BFF7",
-"x, c #0096C6",
-"y, c #006283",
-"z, c #003F58",
-"A, c #001A31",
-"B, c #001629",
-"C, c #001627",
-"D, c #000E1E",
-"E, c #00030F",
-"F, c #00040D",
-"G, c #00040C",
-"H, c #00070E",
-"I, c #001117",
-"J, c #000415",
-"K, c #000023",
-"L, c #000330",
-"M, c #000C37",
-"N, c #001439",
-"O, c #001536",
-"P, c #002645",
-"Q, c #004F73",
-"R, c #0074A8",
-"S, c #00B9FF",
-"T, c #00CEF7",
-"U, c #00EEF3",
-"V, c #00E3D9",
-"W, c #007B77",
-"X, c #00211B",
-"Y, c #000A00",
-"Z, c #001005",
-"`, c #000800",
-" ' c #000F09",
-".' c #00100F",
-"+' c #00100D",
-"@' c #00302E",
-"#' c #003038",
-"$' c #005262",
-"%' c #00BCED",
-"&' c #00E3FF",
-"*' c #00C6F4",
-"=' c #00B5DE",
-"-' c #009AC0",
-";' c #0082AB",
-">' c #0075A7",
-",' c #0076B0",
-"'' c #006090",
-")' c #005F89",
-"!' c #007EA6",
-"~' c #007995",
-"{' c #007086",
-"]' c #005E6E",
-"^' c #00495C",
-"/' c #006C93",
-"(' c #0084BC",
-"_' c #009ADC",
-":' c #00A9ED",
-"<' c #00635D",
-"[' c #003034",
-"}' c #00111E",
-"|' c #002234",
-"1' c #00353F",
-"2' c #002732",
-"3' c #001D2C",
-"4' c #000215",
-"5' c #000218",
-"6' c #080016",
-"7' c #020011",
-"8' c #000A1C",
-"9' c #001A27",
-"0' c #005C64",
-"a' c #00C5C5",
-"b' c #00EAE4",
-"c' c #00EFF1",
-"d' c #007599",
-"e' c #00475F",
-"f' c #00283E",
-"g' c #00172E",
-"h' c #000E23",
-"i' c #000517",
-"j' c #00010C",
-"k' c #000710",
-"l' c #000D1A",
-"m' c #001321",
-"n' c #001120",
-"o' c #00041B",
-"p' c #00001E",
-"q' c #000721",
-"r' c #002036",
-"s' c #003750",
-"t' c #004769",
-"u' c #005A89",
-"v' c #009DD9",
-"w' c #00FFFB",
-"x' c #00AF9F",
-"y' c #004039",
-"z' c #00130B",
-"A' c #000C08",
-"B' c #00110F",
-"C' c #00180D",
-"D' c #00333C",
-"E' c #002A3F",
-"F' c #00648F",
-"G' c #00B6FB",
-"H' c #00D3FB",
-"I' c #00C1E4",
-"J' c #00ABD0",
-"K' c #0097C1",
-"L' c #007CB2",
-"M' c #0071AB",
-"N' c #006093",
-"O' c #006594",
-"P' c #0094C1",
-"Q' c #0099BF",
-"R' c #0087A2",
-"S' c #00708A",
-"T' c #006A8A",
-"U' c #008694",
-"V' c #007582",
-"W' c #005C69",
-"X' c #003E51",
-"Y' c #006991",
-"Z' c #007EB3",
-"`' c #0096DA",
-" ) c #00AAEF",
-".) c #00C0FF",
-"+) c #003D3B",
-"@) c #001114",
-"#) c #001422",
-"$) c #002A45",
-"%) c #001C30",
-"&) c #001325",
-"*) c #00071A",
-"=) c #00020E",
-"-) c #00131E",
-";) c #000B13",
-">) c #002C33",
-",) c #00919C",
-"') c #00DAE7",
-")) c #00C7D1",
-"!) c #006D78",
-"~) c #00424C",
-"{) c #000F1D",
-"]) c #000919",
-"^) c #000A1E",
-"/) c #00091E",
-"() c #00031A",
-"_) c #00061D",
-":) c #000C23",
-"<) c #00112C",
-"[) c #001632",
-"}) c #001838",
-"|) c #001537",
-"1) c #000A30",
-"2) c #000D3E",
-"3) c #000E44",
-"4) c #00093D",
-"5) c #000F30",
-"6) c #00112E",
-"7) c #002544",
-"8) c #003659",
-"9) c #003961",
-"0) c #00527A",
-"a) c #009BC0",
-"b) c #00DCF7",
-"c) c #00B5B5",
-"d) c #007771",
-"e) c #001B19",
-"f) c #000505",
-"g) c #110002",
-"h) c #00040F",
-"i) c #000109",
-"j) c #00202F",
-"k) c #003B5D",
-"l) c #0092D0",
-"m) c #00D9FC",
-"n) c #00C9E8",
-"o) c #00BADF",
-"p) c #00A4D2",
-"q) c #006396",
-"r) c #004D7A",
-"s) c #007FA4",
-"t) c #008CAC",
-"u) c #0089A6",
-"v) c #008AAA",
-"w) c #006889",
-"x) c #006385",
-"y) c #007979",
-"z) c #007474",
-"A) c #009494",
-"B) c #007D80",
-"C) c #004C55",
-"D) c #003142",
-"E) c #005E80",
-"F) c #006D9C",
-"G) c #0085C2",
-"H) c #0099D7",
-"I) c #00ABE7",
-"J) c #00C1F8",
-"K) c #006564",
-"L) c #001415",
-"M) c #00151B",
-"N) c #001322",
-"O) c #000B1E",
-"P) c #000E17",
-"Q) c #00161B",
-"R) c #001E22",
-"S) c #001D23",
-"T) c #001B22",
-"U) c #00505D",
-"V) c #008AA4",
-"W) c #006374",
-"X) c #001D1E",
-"Y) c #000E0E",
-"Z) c #000A10",
-"`) c #000E1B",
-" ! c #000A24",
-".! c #000927",
-"+! c #00092C",
-"@! c #000E32",
-"#! c #00143E",
-"$! c #001B4B",
-"%! c #002150",
-"&! c #002055",
-"*! c #002059",
-"=! c #001E55",
-"-! c #000B4A",
-";! c #001C62",
-">! c #001565",
-",! c #00195A",
-"'! c #001E4A",
-")! c #000A2F",
-"!! c #00153C",
-"~! c #001D48",
-"{! c #001A41",
-"]! c #005573",
-"^! c #00777F",
-"/! c #005252",
-"(! c #000D12",
-"_! c #0C0009",
-":! c #010016",
-"<! c #02001A",
-"[! c #001930",
-"}! c #001D34",
-"|! c #002947",
-"1! c #006B99",
-"2! c #00E2FB",
-"3! c #00DFFA",
-"4! c #00D7F5",
-"5! c #00C1EA",
-"6! c #009FCE",
-"7! c #0072A3",
-"8! c #00507F",
-"9! c #00527C",
-"0! c #008DB8",
-"a! c #0099BA",
-"b! c #00AAD2",
-"c! c #007EA3",
-"d! c #0083AE",
-"e! c #00687F",
-"f! c #006769",
-"g! c #007072",
-"h! c #00A3A2",
-"i! c #009694",
-"j! c #009497",
-"k! c #004F59",
-"l! c #00394B",
-"m! c #005676",
-"n! c #008CC5",
-"o! c #009AD2",
-"p! c #00B5EA",
-"q! c #00C2E3",
-"r! c #004043",
-"s! c #000C12",
-"t! c #001921",
-"u! c #000A16",
-"v! c #000418",
-"w! c #000F16",
-"x! c #001818",
-"y! c #001C1A",
-"z! c #001311",
-"A! c #002929",
-"B! c #002F40",
-"C! c #00395A",
-"D! c #002436",
-"E! c #000A05",
-"F! c #00070A",
-"G! c #000813",
-"H! c #00081E",
-"I! c #000828",
-"J! c #000A34",
-"K! c #000E3B",
-"L! c #001245",
-"M! c #001D57",
-"N! c #002466",
-"O! c #00286E",
-"P! c #002977",
-"Q! c #002C7E",
-"R! c #00297E",
-"S! c #00287D",
-"T! c #002E81",
-"U! c #002E88",
-"V! c #002684",
-"W! c #002579",
-"X! c #002968",
-"Y! c #00295B",
-"Z! c #001E4B",
-"`! c #000A38",
-" ~ c #00204B",
-".~ c #001030",
-"+~ c #005064",
-"@~ c #00606B",
-"#~ c #003941",
-"$~ c #000410",
-"%~ c #100014",
-"&~ c #000030",
-"*~ c #00021C",
-"=~ c #00021D",
-"-~ c #000518",
-";~ c #001228",
-">~ c #005370",
-",~ c #00EFFF",
-"'~ c #00C8F5",
-")~ c #006FA0",
-"!~ c #005B8A",
-"~~ c #005581",
-"{~ c #00486D",
-"]~ c #008EB6",
-"^~ c #0095B6",
-"/~ c #00BFF9",
-"(~ c #009ECB",
-"_~ c #00697F",
-":~ c #00525B",
-"<~ c #00646C",
-"[~ c #008C98",
-"}~ c #00818A",
-"|~ c #009CA5",
-"1~ c #008E97",
-"2~ c #004A58",
-"3~ c #003C4F",
-"4~ c #00506F",
-"5~ c #00658D",
-"6~ c #008BC4",
-"7~ c #0096CF",
-"8~ c #00AEE6",
-"9~ c #00B1DF",
-"0~ c #00AFD4",
-"a~ c #00222C",
-"b~ c #00121A",
-"c~ c #00020F",
-"d~ c #00181D",
-"e~ c #002F28",
-"f~ c #002820",
-"g~ c #001E18",
-"h~ c #001414",
-"i~ c #002035",
-"j~ c #001E3D",
-"k~ c #00110B",
-"l~ c #000B0F",
-"m~ c #000717",
-"n~ c #000E48",
-"o~ c #001E62",
-"p~ c #003081",
-"q~ c #003487",
-"r~ c #003692",
-"s~ c #003696",
-"t~ c #003397",
-"u~ c #003BA3",
-"v~ c #0049BB",
-"w~ c #0043B1",
-"x~ c #00379E",
-"y~ c #003193",
-"z~ c #00388C",
-"A~ c #00347C",
-"B~ c #002A66",
-"C~ c #002259",
-"D~ c #00154B",
-"E~ c #001E50",
-"F~ c #000E30",
-"G~ c #00455C",
-"H~ c #004D5F",
-"I~ c #002A38",
-"J~ c #070011",
-"K~ c #000A2B",
-"L~ c #000C2C",
-"M~ c #000C2B",
-"N~ c #002133",
-"O~ c #002A41",
-"P~ c #004857",
-"Q~ c #00C5F7",
-"R~ c #0093C4",
-"S~ c #0072A4",
-"T~ c #006194",
-"U~ c #00557F",
-"V~ c #003B5C",
-"W~ c #00799C",
-"X~ c #008BA8",
-"Y~ c #00A5D2",
-"Z~ c #00819C",
-"`~ c #00374E",
-" { c #005872",
-".{ c #0085A4",
-"+{ c #00718E",
-"@{ c #004052",
-"#{ c #003B4F",
-"${ c #004D6D",
-"%{ c #006188",
-"&{ c #0075A8",
-"*{ c #009CD8",
-"={ c #00AAE6",
-"-{ c #00B7EC",
-";{ c #00B2E4",
-">{ c #0089A9",
-",{ c #002431",
-"'{ c #001B26",
-"){ c #000A14",
-"!{ c #05000B",
-"~{ c #100010",
-"{{ c #020016",
-"]{ c #001F1A",
-"^{ c #001213",
-"/{ c #001722",
-"({ c #001E30",
-"_{ c #00223F",
-":{ c #00051D",
-"<{ c #00040B",
-"[{ c #00090E",
-"}{ c #000816",
-"|{ c #000836",
-"1{ c #000D4D",
-"2{ c #001967",
-"3{ c #002378",
-"4{ c #003192",
-"5{ c #003CA2",
-"6{ c #003FA2",
-"7{ c #0042A2",
-"8{ c #0040A5",
-"9{ c #003C9E",
-"0{ c #003B9A",
-"a{ c #0043AD",
-"b{ c #0056CA",
-"c{ c #0053C4",
-"d{ c #0046B9",
-"e{ c #0044B2",
-"f{ c #0045A4",
-"g{ c #003D8A",
-"h{ c #003074",
-"i{ c #002365",
-"j{ c #001456",
-"k{ c #00184F",
-"l{ c #002C4F",
-"m{ c #00425E",
-"n{ c #004659",
-"o{ c #003244",
-"p{ c #000A23",
-"q{ c #00070D",
-"r{ c #000414",
-"s{ c #00162C",
-"t{ c #001A35",
-"u{ c #001E3E",
-"v{ c #001F41",
-"w{ c #001C36",
-"x{ c #002038",
-"y{ c #00233A",
-"z{ c #002639",
-"A{ c #002535",
-"B{ c #002938",
-"C{ c #001927",
-"D{ c #005A62",
-"E{ c #00BBEE",
-"F{ c #0096CC",
-"G{ c #0076AC",
-"H{ c #006495",
-"I{ c #005178",
-"J{ c #00445F",
-"K{ c #006F90",
-"L{ c #00839F",
-"M{ c #009BBB",
-"N{ c #00A2C6",
-"O{ c #00A1CB",
-"P{ c #00B1DA",
-"Q{ c #0092AD",
-"R{ c #00747E",
-"S{ c #003A54",
-"T{ c #00445E",
-"U{ c #005C89",
-"V{ c #003A56",
-"W{ c #003B55",
-"X{ c #004D70",
-"Y{ c #006D9B",
-"Z{ c #008BC2",
-"`{ c #00A4DD",
-" ] c #009DCD",
-".] c #008FBA",
-"+] c #005974",
-"@] c #000613",
-"#] c #09000C",
-"$] c #000A13",
-"%] c #000C13",
-"&] c #00090D",
-"*] c #001C27",
-"=] c #003E5D",
-"-] c #001D33",
-";] c #001122",
-">] c #000516",
-",] c #000320",
-"'] c #000D37",
-")] c #001051",
-"!] c #001971",
-"~] c #00278E",
-"{] c #0034A5",
-"]] c #0041B6",
-"^] c #004DC1",
-"/] c #004CB9",
-"(] c #004CB2",
-"_] c #004AAE",
-":] c #00419A",
-"<] c #003A92",
-"[] c #0047A8",
-"}] c #0061D3",
-"|] c #005FD2",
-"1] c #005AD5",
-"2] c #005FE3",
-"3] c #0061D4",
-"4] c #004CA5",
-"5] c #003781",
-"6] c #00276B",
-"7] c #001A60",
-"8] c #001E5B",
-"9] c #002E53",
-"0] c #003C56",
-"a] c #005165",
-"b] c #004258",
-"c] c #00021E",
-"d] c #000910",
-"e] c #001216",
-"f] c #001521",
-"g] c #001E37",
-"h] c #002B4E",
-"i] c #00345B",
-"j] c #003A60",
-"k] c #003957",
-"l] c #003C55",
-"m] c #003F55",
-"n] c #003442",
-"o] c #00B7EE",
-"p] c #009CD6",
-"q] c #007EB4",
-"r] c #006493",
-"s] c #002039",
-"t] c #004256",
-"u] c #006780",
-"v] c #00849D",
-"w] c #00AED6",
-"x] c #008CA2",
-"y] c #006B77",
-"z] c #004655",
-"A] c #005A74",
-"B] c #004A81",
-"C] c #00385F",
-"D] c #003351",
-"E] c #004C71",
-"F] c #005980",
-"G] c #007AA5",
-"H] c #0094C8",
-"I] c #0084AF",
-"J] c #0080AA",
-"K] c #007EA7",
-"L] c #00536D",
-"M] c #002034",
-"N] c #001625",
-"O] c #07000B",
-"P] c #0A0009",
-"Q] c #010008",
-"R] c #000D14",
-"S] c #00171C",
-"T] c #001A1C",
-"U] c #000B0C",
-"V] c #00030C",
-"W] c #002635",
-"X] c #006376",
-"Y] c #005F79",
-"Z] c #002948",
-"`] c #001B43",
-" ^ c #001443",
-".^ c #001650",
-"+^ c #001E74",
-"@^ c #002689",
-"#^ c #002B91",
-"$^ c #003BAB",
-"%^ c #0048B7",
-"&^ c #0052C2",
-"*^ c #0057C7",
-"=^ c #005CCB",
-"-^ c #005BC6",
-";^ c #004BA7",
-">^ c #0048A1",
-",^ c #005DC8",
-"'^ c #0064CE",
-")^ c #0073EE",
-"!^ c #0073FC",
-"~^ c #006CEF",
-"{^ c #007AFF",
-"]^ c #003D85",
-"^^ c #00337E",
-"/^ c #00236A",
-"(^ c #001F52",
-"_^ c #00375E",
-":^ c #006A85",
-"<^ c #005D78",
-"[^ c #000D29",
-"}^ c #001013",
-"|^ c #000F0A",
-"1^ c #001010",
-"2^ c #00151C",
-"3^ c #001220",
-"4^ c #001429",
-"5^ c #002D50",
-"6^ c #00365E",
-"7^ c #004470",
-"8^ c #00456B",
-"9^ c #003B5B",
-"0^ c #005371",
-"a^ c #003E52",
-"b^ c #007783",
-"c^ c #00C5BF",
-"d^ c #00A8DA",
-"e^ c #008EC0",
-"f^ c #0079AB",
-"g^ c #006491",
-"h^ c #003F5E",
-"i^ c #002237",
-"j^ c #003542",
-"k^ c #00677C",
-"l^ c #0081A0",
-"m^ c #0096B8",
-"n^ c #009EBF",
-"o^ c #007285",
-"p^ c #005E66",
-"q^ c #007789",
-"r^ c #00708C",
-"s^ c #008DDC",
-"t^ c #00589A",
-"u^ c #003762",
-"v^ c #003254",
-"w^ c #00466C",
-"x^ c #006990",
-"y^ c #0081A8",
-"z^ c #006583",
-"A^ c #005472",
-"B^ c #003246",
-"C^ c #001523",
-"D^ c #000D17",
-"E^ c #030007",
-"F^ c #00060C",
-"G^ c #000F12",
-"H^ c #000D11",
-"I^ c #001E20",
-"J^ c #001A19",
-"K^ c #00211F",
-"L^ c #000E0F",
-"M^ c #16000A",
-"N^ c #0B000C",
-"O^ c #001926",
-"P^ c #003844",
-"Q^ c #00A0B0",
-"R^ c #00839E",
-"S^ c #004D7B",
-"T^ c #002E65",
-"U^ c #002865",
-"V^ c #002D79",
-"W^ c #003298",
-"X^ c #0036A2",
-"Y^ c #003CAE",
-"Z^ c #0048C0",
-"`^ c #0051C8",
-" / c #005ACE",
-"./ c #005CC2",
-"+/ c #005DC0",
-"@/ c #0052AD",
-"#/ c #0059B7",
-"$/ c #0069D2",
-"%/ c #006FDD",
-"&/ c #0094FF",
-"*/ c #007FFF",
-"=/ c #0068D0",
-"-/ c #0065C7",
-";/ c #004D9F",
-">/ c #003B86",
-",/ c #002B70",
-"'/ c #001D51",
-")/ c #004870",
-"!/ c #004D68",
-"~/ c #007C94",
-"{/ c #0086A7",
-"]/ c #002F4D",
-"^/ c #000D26",
-"// c #000C11",
-"(/ c #000D13",
-"_/ c #000F1C",
-":/ c #001E44",
-"</ c #003561",
-"[/ c #004170",
-"}/ c #004C7A",
-"|/ c #00547C",
-"1/ c #005B80",
-"2/ c #004763",
-"3/ c #004860",
-"4/ c #0093A8",
-"5/ c #009293",
-"6/ c #009699",
-"7/ c #00B0C7",
-"8/ c #00B0D8",
-"9/ c #0096C4",
-"0/ c #008FBF",
-"a/ c #0083B4",
-"b/ c #003F5B",
-"c/ c #001121",
-"d/ c #000715",
-"e/ c #003347",
-"f/ c #006784",
-"g/ c #008BAD",
-"h/ c #00B1D6",
-"i/ c #006578",
-"j/ c #007673",
-"k/ c #00878C",
-"l/ c #008A9A",
-"m/ c #0089AA",
-"n/ c #0075B4",
-"o/ c #002751",
-"p/ c #003E64",
-"q/ c #004F74",
-"r/ c #00597B",
-"s/ c #00708F",
-"t/ c #007D9E",
-"u/ c #00738F",
-"v/ c #006C89",
-"w/ c #0084AD",
-"x/ c #000915",
-"y/ c #000C10",
-"z/ c #00090C",
-"A/ c #00191C",
-"B/ c #00373B",
-"C/ c #002A2A",
-"D/ c #001C1B",
-"E/ c #001514",
-"F/ c #000D10",
-"G/ c #13000B",
-"H/ c #0D0005",
-"I/ c #080010",
-"J/ c #00101E",
-"K/ c #006B78",
-"L/ c #00BCC8",
-"M/ c #00ADC5",
-"N/ c #0071A9",
-"O/ c #004685",
-"P/ c #003E83",
-"Q/ c #004297",
-"R/ c #0042A5",
-"S/ c #0044AE",
-"T/ c #0049BC",
-"U/ c #004DBB",
-"V/ c #0053C1",
-"W/ c #005AC3",
-"X/ c #0061CA",
-"Y/ c #006AD8",
-"Z/ c #0069D3",
-"`/ c #0054A8",
-" ( c #004591",
-".( c #004FA3",
-"+( c #0064C6",
-"@( c #0073E4",
-"#( c #008AFF",
-"$( c #006EE5",
-"%( c #0062BF",
-"&( c #0069CA",
-"*( c #005DB9",
-"=( c #0051AA",
-"-( c #00367F",
-";( c #00356B",
-">( c #006D89",
-",( c #00A1BC",
-"'( c #0092AC",
-")( c #006086",
-"!( c #00102B",
-"~( c #001823",
-"{( c #00080E",
-"]( c #000B34",
-"^( c #004290",
-"/( c #003566",
-"(( c #004376",
-"_( c #00578C",
-":( c #004465",
-"<( c #007090",
-"[( c #00BDDE",
-"}( c #00D4E3",
-"|( c #00CAD7",
-"1( c #00A0B8",
-"2( c #008DAA",
-"3( c #008BB2",
-"4( c #00779B",
-"5( c #00739A",
-"6( c #00324A",
-"7( c #001026",
-"8( c #000D25",
-"9( c #00061E",
-"0( c #003249",
-"a( c #007595",
-"b( c #006781",
-"c( c #006F8D",
-"d( c #007773",
-"e( c #009EA1",
-"f( c #008996",
-"g( c #0095B3",
-"h( c #007AA2",
-"i( c #00436C",
-"j( c #004575",
-"k( c #00224F",
-"l( c #00375F",
-"m( c #005C7B",
-"n( c #006680",
-"o( c #006177",
-"p( c #00657A",
-"q( c #006984",
-"r( c #002933",
-"s( c #001518",
-"t( c #000F13",
-"u( c #001014",
-"v( c #000106",
-"w( c #0A0007",
-"x( c #000F1E",
-"y( c #002735",
-"z( c #008C9D",
-"A( c #00B1BE",
-"B( c #00BCD7",
-"C( c #008FCA",
-"D( c #0067AE",
-"E( c #00579F",
-"F( c #0055A6",
-"G( c #0055B2",
-"H( c #0056C3",
-"I( c #0057C6",
-"J( c #0053BB",
-"K( c #005AC4",
-"L( c #005AC0",
-"M( c #005BB7",
-"N( c #0053A6",
-"O( c #004388",
-"P( c #003369",
-"Q( c #002C59",
-"R( c #002E5F",
-"S( c #003F80",
-"T( c #0051A5",
-"U( c #005FD0",
-"V( c #0062D0",
-"W( c #0072E1",
-"X( c #0078E3",
-"Y( c #0068D2",
-"Z( c #004BA1",
-"`( c #00417B",
-" _ c #003861",
-"._ c #00BFDA",
-"+_ c #009BB3",
-"@_ c #008EB9",
-"#_ c #003E5B",
-"$_ c #00051E",
-"%_ c #002554",
-"&_ c #00376C",
-"*_ c #00487E",
-"=_ c #004E7D",
-"-_ c #004E74",
-";_ c #005A79",
-">_ c #0081A3",
-",_ c #00E1F7",
-"'_ c #008EAE",
-")_ c #00708D",
-"!_ c #006D86",
-"~_ c #005A72",
-"{_ c #000F27",
-"]_ c #00233C",
-"^_ c #000323",
-"/_ c #000F32",
-"(_ c #000A27",
-"__ c #00435E",
-":_ c #006D92",
-"<_ c #007679",
-"[_ c #007C85",
-"}_ c #0090A4",
-"|_ c #007B9A",
-"1_ c #005678",
-"2_ c #001740",
-"3_ c #003A6A",
-"4_ c #002F63",
-"5_ c #001345",
-"6_ c #00234F",
-"7_ c #005580",
-"8_ c #005E7C",
-"9_ c #006072",
-"0_ c #006979",
-"a_ c #0091A5",
-"b_ c #004450",
-"c_ c #001315",
-"d_ c #000B0B",
-"e_ c #001617",
-"f_ c #001115",
-"g_ c #001C22",
-"h_ c #00161D",
-"i_ c #000309",
-"j_ c #02000B",
-"k_ c #00111F",
-"l_ c #000D1E",
-"m_ c #006579",
-"n_ c #0090A6",
-"o_ c #00B1C7",
-"p_ c #00B4D3",
-"q_ c #00A7E1",
-"r_ c #008CCE",
-"s_ c #006FAD",
-"t_ c #0064A8",
-"u_ c #006BC3",
-"v_ c #0065C1",
-"w_ c #0055AF",
-"x_ c #0057B7",
-"y_ c #004FA7",
-"z_ c #00458E",
-"A_ c #00366E",
-"B_ c #001847",
-"C_ c #000832",
-"D_ c #000E2F",
-"E_ c #000325",
-"F_ c #002354",
-"G_ c #003787",
-"H_ c #0059CB",
-"I_ c #006BDA",
-"J_ c #006DD3",
-"K_ c #006BD0",
-"L_ c #006AD5",
-"M_ c #003A75",
-"N_ c #0077A5",
-"O_ c #00A1C2",
-"P_ c #00B7D0",
-"Q_ c #00BDD7",
-"R_ c #0099C0",
-"S_ c #007298",
-"T_ c #002139",
-"U_ c #000E21",
-"V_ c #001C2E",
-"W_ c #000E28",
-"X_ c #001538",
-"Y_ c #002651",
-"Z_ c #004C7E",
-"`_ c #004E76",
-" : c #005675",
-".: c #0088AA",
-"+: c #00ABC4",
-"@: c #006877",
-"#: c #000731",
-"$: c #03002D",
-"%: c #000334",
-"&: c #001844",
-"*: c #000A2E",
-"=: c #005685",
-"-: c #00596B",
-";: c #006F91",
-">: c #004666",
-",: c #001940",
-"': c #00447B",
-"): c #00093E",
-"!: c #00205B",
-"~: c #00255B",
-"{: c #002A59",
-"]: c #00476C",
-"^: c #00556E",
-"/: c #007385",
-"(: c #00A1AF",
-"_: c #004445",
-":: c #000E0C",
-"<: c #001614",
-"[: c #000A0E",
-"}: c #000B11",
-"|: c #00121F",
-"1: c #00101B",
-"2: c #000712",
-"3: c #00030B",
-"4: c #000610",
-"5: c #000C19",
-"6: c #004C5B",
-"7: c #00849E",
-"8: c #009AB7",
-"9: c #00B3D4",
-"0: c #00B8EB",
-"a: c #00A5DF",
-"b: c #0083B7",
-"c: c #0078B4",
-"d: c #0082D2",
-"e: c #006CB9",
-"f: c #00569E",
-"g: c #005AAB",
-"h: c #00478D",
-"i: c #003064",
-"j: c #001C46",
-"k: c #001034",
-"l: c #000222",
-"m: c #00001C",
-"n: c #00041D",
-"o: c #00041F",
-"p: c #000321",
-"q: c #000931",
-"r: c #001950",
-"s: c #003079",
-"t: c #0057B9",
-"u: c #006AD1",
-"v: c #0069CE",
-"w: c #006CD7",
-"x: c #0054A9",
-"y: c #00599C",
-"z: c #00A0D8",
-"A: c #00AED0",
-"B: c #00B0C4",
-"C: c #00B6CE",
-"D: c #00ACD2",
-"E: c #0093BD",
-"F: c #007699",
-"G: c #00455E",
-"H: c #001025",
-"I: c #00192A",
-"J: c #001C35",
-"K: c #00213E",
-"L: c #00345C",
-"M: c #00416A",
-"N: c #002A4B",
-"O: c #004D6A",
-"P: c #009FC1",
-"Q: c #005C67",
-"R: c #00073B",
-"S: c #090043",
-"T: c #010035",
-"U: c #000B43",
-"V: c #001A44",
-"W: c #002344",
-"X: c #003055",
-"Y: c #00204A",
-"Z: c #002661",
-"`: c #002069",
-" < c #001C64",
-".< c #002575",
-"+< c #00386B",
-"@< c #004064",
-"#< c #00A5B8",
-"$< c #004C48",
-"%< c #001A17",
-"&< c #000509",
-"*< c #030012",
-"=< c #00080C",
-"-< c #001B20",
-";< c #007B8C",
-">< c #008CA5",
-",< c #00A9D3",
-"'< c #00BAE4",
-")< c #00C0EC",
-"!< c #00A6D5",
-"~< c #0091C3",
-"{< c #0091D1",
-"]< c #0088D3",
-"^< c #006EB5",
-"/< c #005697",
-"(< c #002F5A",
-"_< c #000B2F",
-":< c #020013",
-"<< c #0B0012",
-"[< c #07000E",
-"}< c #080018",
-"|< c #000123",
-"1< c #00002C",
-"2< c #000740",
-"3< c #004294",
-"4< c #006BDC",
-"5< c #0071E3",
-"6< c #0065CA",
-"7< c #0056AD",
-"8< c #0076CA",
-"9< c #009FDA",
-"0< c #00B4D8",
-"a< c #00B9CE",
-"b< c #00A2B9",
-"c< c #009DC6",
-"d< c #0090B6",
-"e< c #007E9E",
-"f< c #00647E",
-"g< c #004255",
-"h< c #001C2A",
-"i< c #001622",
-"j< c #001727",
-"k< c #001D2F",
-"l< c #001E34",
-"m< c #005E77",
-"n< c #00A7C1",
-"o< c #00E3E3",
-"p< c #00C9C7",
-"q< c #004D67",
-"r< c #003265",
-"s< c #000A47",
-"t< c #00003D",
-"u< c #070044",
-"v< c #000443",
-"w< c #001F54",
-"x< c #001C45",
-"y< c #030024",
-"z< c #002462",
-"A< c #001646",
-"B< c #00175B",
-"C< c #001892",
-"D< c #0024A8",
-"E< c #0040B8",
-"F< c #003C8B",
-"G< c #003769",
-"H< c #00849A",
-"I< c #005E56",
-"J< c #00353C",
-"K< c #001720",
-"L< c #000515",
-"M< c #000417",
-"N< c #000419",
-"O< c #001022",
-"P< c #002935",
-"Q< c #00515F",
-"R< c #007D8F",
-"S< c #00879F",
-"T< c #00A0C4",
-"U< c #00A1C9",
-"V< c #00A5D7",
-"W< c #00ADDF",
-"X< c #00A1C6",
-"Y< c #00BEE4",
-"Z< c #00BDE9",
-"`< c #0092BA",
-" [ c #0084B0",
-".[ c #00A4EB",
-"+[ c #0088D5",
-"@[ c #00467B",
-"#[ c #000C33",
-"$[ c #000528",
-"%[ c #06001D",
-"&[ c #1C0011",
-"*[ c #0B0009",
-"=[ c #090012",
-"-[ c #040024",
-";[ c #00123F",
-">[ c #00295D",
-",[ c #0065BB",
-"'[ c #009DFF",
-")[ c #0061A6",
-"![ c #0080DE",
-"~[ c #0085D8",
-"{[ c #00A6EB",
-"][ c #00A7D8",
-"^[ c #00BCDC",
-"/[ c #00B0CB",
-"([ c #00A6C4",
-"_[ c #00ABCE",
-":[ c #009DC3",
-"<[ c #0091B4",
-"[[ c #00546A",
-"}[ c #004153",
-"|[ c #002F41",
-"1[ c #002D3E",
-"2[ c #003A4B",
-"3[ c #007795",
-"4[ c #00E4E8",
-"5[ c #00D5C1",
-"6[ c #00636B",
-"7[ c #004E50",
-"8[ c #004A82",
-"9[ c #00328F",
-"0[ c #000F55",
-"a[ c #000047",
-"b[ c #000546",
-"c[ c #001C5A",
-"d[ c #001C51",
-"e[ c #001130",
-"f[ c #002157",
-"g[ c #002574",
-"h[ c #002B9B",
-"i[ c #003CC0",
-"j[ c #004AA9",
-"k[ c #004D96",
-"l[ c #0094A1",
-"m[ c #005F6C",
-"n[ c #005B6F",
-"o[ c #005972",
-"p[ c #00526B",
-"q[ c #005C7A",
-"r[ c #006B8A",
-"s[ c #007C9E",
-"t[ c #008FB1",
-"u[ c #009EC4",
-"v[ c #00A3CA",
-"w[ c #00A5CE",
-"x[ c #00A5D6",
-"y[ c #00A4CE",
-"z[ c #00B0D7",
-"A[ c #00B3DD",
-"B[ c #0076A2",
-"C[ c #002A56",
-"D[ c #000A3C",
-"E[ c #000C41",
-"F[ c #000038",
-"G[ c #0B0037",
-"H[ c #2A0012",
-"I[ c #1C0010",
-"J[ c #004457",
-"K[ c #009BE4",
-"L[ c #0096E2",
-"M[ c #0093D9",
-"N[ c #0092C5",
-"O[ c #009BBE",
-"P[ c #00A7BB",
-"Q[ c #00A5B5",
-"R[ c #00A3BB",
-"S[ c #0097B5",
-"T[ c #008AAB",
-"U[ c #007498",
-"V[ c #001A2F",
-"W[ c #000A1A",
-"X[ c #000A18",
-"Y[ c #003845",
-"Z[ c #008A9E",
-"`[ c #00E5EA",
-" } c #00E9E5",
-".} c #000208",
-"+} c #006C9C",
-"@} c #005284",
-"#} c #003B79",
-"$} c #00003E",
-"%} c #001D5C",
-"&} c #002260",
-"*} c #001343",
-"=} c #001A39",
-"-} c #002567",
-";} c #002F88",
-">} c #0037AF",
-",} c #0045C9",
-"'} c #0051B7",
-")} c #004B90",
-"!} c #00477C",
-"~} c #000829",
-"{} c #003A71",
-"]} c #00C9E0",
-"^} c #00C1DF",
-"/} c #007891",
-"(} c #005D77",
-"_} c #006D8E",
-":} c #007295",
-"<} c #0090BB",
-"[} c #009AC7",
-"}} c #0096BF",
-"|} c #0096BE",
-"1} c #00A2CE",
-"2} c #00ADDC",
-"3} c #00ACDB",
-"4} c #00A6D6",
-"5} c #00A4D5",
-"6} c #00B8EC",
-"7} c #00A4CF",
-"8} c #00A4CA",
-"9} c #00BBE1",
-"0} c #00A6CC",
-"a} c #0082A7",
-"b} c #0072AA",
-"c} c #001E4D",
-"d} c #00124B",
-"e} c #00003A",
-"f} c #01004A",
-"g} c #0A0041",
-"h} c #2D0014",
-"i} c #0F0005",
-"j} c #070004",
-"k} c #000D0E",
-"l} c #002D31",
-"m} c #007B88",
-"n} c #00A8C6",
-"o} c #009FE0",
-"p} c #009BEB",
-"q} c #0098E5",
-"r} c #008EC9",
-"s} c #0093BC",
-"t} c #009FB4",
-"u} c #009FAD",
-"v} c #009CB8",
-"w} c #006C8C",
-"x} c #004764",
-"y} c #002540",
-"z} c #002E3B",
-"A} c #005260",
-"B} c #00AFC2",
-"C} c #00E4E9",
-"D} c #00E8EA",
-"E} c #008F93",
-"F} c #000810",
-"G} c #070008",
-"H} c #004D39",
-"I} c #007BAA",
-"J} c #005B93",
-"K} c #002666",
-"L} c #001252",
-"M} c #001B57",
-"N} c #002F79",
-"O} c #00162E",
-"P} c #001B42",
-"Q} c #00276D",
-"R} c #002D84",
-"S} c #0033A5",
-"T} c #003CB7",
-"U} c #004EBD",
-"V} c #004086",
-"W} c #005AB2",
-"X} c #00292A",
-"Y} c #00041C",
-"Z} c #007B8F",
-"`} c #00C9BC",
-" | c #00B4D4",
-".| c #0092B5",
-"+| c #006E8F",
-"@| c #00577A",
-"#| c #00678D",
-"$| c #00678C",
-"%| c #007A9E",
-"&| c #009CC6",
-"*| c #00B2DE",
-"=| c #00A3CB",
-"-| c #009FC7",
-";| c #00AFDE",
-">| c #00B4E5",
-",| c #00A8D8",
-"'| c #00ADE3",
-")| c #00A4D3",
-"!| c #00A8D1",
-"~| c #00B3D6",
-"{| c #00AAD4",
-"]| c #008EC3",
-"^| c #004879",
-"/| c #002A64",
-"(| c #001856",
-"_| c #000C53",
-":| c #000141",
-"<| c #000028",
-"[| c #000227",
-"}| c #000104",
-"|| c #0C000C",
-"1| c #000E1A",
-"2| c #007882",
-"3| c #00AECA",
-"4| c #009ABA",
-"5| c #00A3D8",
-"6| c #00A2DE",
-"7| c #00A4E6",
-"8| c #00A1E3",
-"9| c #0098CD",
-"0| c #0097C2",
-"a| c #009CBD",
-"b| c #0097B7",
-"c| c #008EBC",
-"d| c #0074A1",
-"e| c #004F79",
-"f| c #00385B",
-"g| c #002849",
-"h| c #001532",
-"i| c #000318",
-"j| c #003143",
-"k| c #006B7D",
-"l| c #00E8F5",
-"m| c #008B91",
-"n| c #000807",
-"o| c #005542",
-"p| c #00B2EA",
-"q| c #005A86",
-"r| c #00023E",
-"s| c #000E47",
-"t| c #00205F",
-"u| c #00216B",
-"v| c #001F62",
-"w| c #001C4D",
-"x| c #000A21",
-"y| c #00183E",
-"z| c #001750",
-"A| c #001C67",
-"B| c #0033A4",
-"C| c #0047CD",
-"D| c #004FBE",
-"E| c #004995",
-"F| c #001E28",
-"G| c #00131C",
-"H| c #005E64",
-"I| c #00D0CB",
-"J| c #00A3DB",
-"K| c #006490",
-"L| c #004D74",
-"M| c #007CC1",
-"N| c #0081C0",
-"O| c #006693",
-"P| c #006D91",
-"Q| c #007394",
-"R| c #00A6CD",
-"S| c #00ABD4",
-"T| c #009BC2",
-"U| c #009EC9",
-"V| c #00B9EC",
-"W| c #00AFDA",
-"X| c #00A9CE",
-"Y| c #00ADD1",
-"Z| c #00B9E5",
-"`| c #00A8E1",
-" 1 c #0083C1",
-".1 c #004A84",
-"+1 c #000947",
-"@1 c #001C56",
-"#1 c #000437",
-"$1 c #000216",
-"%1 c #000305",
-"&1 c #000214",
-"*1 c #000B19",
-"=1 c #001624",
-"-1 c #006774",
-";1 c #009BB1",
-">1 c #00A4C6",
-",1 c #00ACD9",
-"'1 c #00ABE0",
-")1 c #00A4DA",
-"!1 c #00A4D8",
-"~1 c #00A5D8",
-"{1 c #009ECD",
-"]1 c #009BCB",
-"^1 c #0097C4",
-"/1 c #0074AF",
-"(1 c #005893",
-"_1 c #004A80",
-":1 c #00497A",
-"<1 c #001E42",
-"[1 c #000C24",
-"}1 c #002742",
-"|1 c #004962",
-"11 c #007F9C",
-"21 c #00C2D4",
-"31 c #000B0E",
-"41 c #001817",
-"51 c #008F78",
-"61 c #0083B9",
-"71 c #003E80",
-"81 c #00083E",
-"91 c #001952",
-"01 c #001D68",
-"a1 c #002169",
-"b1 c #001B4D",
-"c1 c #00285E",
-"d1 c #000C29",
-"e1 c #001A49",
-"f1 c #00205D",
-"g1 c #002878",
-"h1 c #003EC1",
-"i1 c #0050E0",
-"j1 c #0054AC",
-"k1 c #006EC1",
-"l1 c #000C0E",
-"m1 c #001715",
-"n1 c #007572",
-"o1 c #00D3D5",
-"p1 c #0067A6",
-"q1 c #003367",
-"r1 c #004178",
-"s1 c #0060B5",
-"t1 c #0086B9",
-"u1 c #007091",
-"v1 c #006885",
-"w1 c #0087A6",
-"x1 c #00ACD5",
-"y1 c #00AAD6",
-"z1 c #00B5E8",
-"A1 c #00ABDE",
-"B1 c #00B0DA",
-"C1 c #00ACD6",
-"D1 c #00A6D3",
-"E1 c #00B8FF",
-"F1 c #0098E7",
-"G1 c #005E9D",
-"H1 c #002E5C",
-"I1 c #000C1A",
-"J1 c #00071B",
-"K1 c #001E2E",
-"L1 c #009DBA",
-"M1 c #00A6C5",
-"N1 c #0094BC",
-"O1 c #00B3E8",
-"P1 c #00A9DD",
-"Q1 c #00A5D4",
-"R1 c #00B0DB",
-"S1 c #00A9D5",
-"T1 c #009DCF",
-"U1 c #0083C0",
-"V1 c #006CB1",
-"W1 c #0062B1",
-"X1 c #0059AB",
-"Y1 c #0057A4",
-"Z1 c #00539C",
-"`1 c #00427B",
-" 2 c #002954",
-".2 c #00183C",
-"+2 c #001539",
-"@2 c #002F55",
-"#2 c #004B6C",
-"$2 c #0083A9",
-"%2 c #008992",
-"&2 c #005358",
-"*2 c #004A4D",
-"=2 c #00706E",
-"-2 c #00AADD",
-";2 c #004379",
-">2 c #002E73",
-",2 c #001B4C",
-"'2 c #001A5C",
-")2 c #001E69",
-"!2 c #00133B",
-"~2 c #000A25",
-"{2 c #001136",
-"]2 c #001C54",
-"^2 c #002772",
-"/2 c #003092",
-"(2 c #0046D2",
-"_2 c #004FC1",
-":2 c #005797",
-"<2 c #009EEA",
-"[2 c #006E68",
-"}2 c #003832",
-"|2 c #003C36",
-"12 c #00695B",
-"22 c #00A799",
-"32 c #0077C3",
-"42 c #002C66",
-"52 c #004386",
-"62 c #0054AE",
-"72 c #005ABE",
-"82 c #0058BD",
-"92 c #0097BC",
-"02 c #007C97",
-"a2 c #007E9C",
-"b2 c #009CC3",
-"c2 c #00B1E2",
-"d2 c #00AEDF",
-"e2 c #00AEDE",
-"f2 c #00AFDD",
-"g2 c #00AEDC",
-"h2 c #00A1D3",
-"i2 c #00AFEA",
-"j2 c #00AFF3",
-"k2 c #009FDF",
-"l2 c #00699B",
-"m2 c #00173B",
-"n2 c #00223C",
-"o2 c #001F30",
-"p2 c #000B18",
-"q2 c #001527",
-"r2 c #005B71",
-"s2 c #008FAC",
-"t2 c #00A5C8",
-"u2 c #00B5E1",
-"v2 c #00ADE1",
-"w2 c #00B9DE",
-"x2 c #00BEE2",
-"y2 c #008CC2",
-"z2 c #0068AE",
-"A2 c #0051A2",
-"B2 c #0059C7",
-"C2 c #0059B9",
-"D2 c #0058AF",
-"E2 c #0059A5",
-"F2 c #004A88",
-"G2 c #002B58",
-"H2 c #000C31",
-"I2 c #000429",
-"J2 c #010023",
-"K2 c #002E51",
-"L2 c #004869",
-"M2 c #00AEE0",
-"N2 c #0082A0",
-"O2 c #0065A1",
-"P2 c #003571",
-"Q2 c #001F57",
-"R2 c #001547",
-"S2 c #001E6C",
-"T2 c #001035",
-"U2 c #00133C",
-"V2 c #00194F",
-"W2 c #00256C",
-"X2 c #002F8C",
-"Y2 c #003FB8",
-"Z2 c #004EAA",
-"`2 c #006794",
-" 3 c #00BAE5",
-".3 c #00DCF3",
-"+3 c #00397D",
-"@3 c #004C9F",
-"#3 c #0071E9",
-"$3 c #0069E2",
-"%3 c #0084A7",
-"&3 c #007A9B",
-"*3 c #0085AE",
-"=3 c #00A2D3",
-"-3 c #00A2CD",
-";3 c #00B5E4",
-">3 c #00A9D6",
-",3 c #00AADA",
-"'3 c #00A7D9",
-")3 c #00B9F2",
-"!3 c #00B0E7",
-"~3 c #00A8D9",
-"{3 c #00B9EF",
-"]3 c #00C4F8",
-"^3 c #003B4E",
-"/3 c #00384F",
-"(3 c #004050",
-"_3 c #006E88",
-":3 c #0092B7",
-"<3 c #0092BB",
-"[3 c #009DCB",
-"}3 c #00A9DE",
-"|3 c #00ACE1",
-"13 c #00A9D2",
-"23 c #00AED1",
-"33 c #00BAD9",
-"43 c #00A4C2",
-"53 c #007A9F",
-"63 c #00608F",
-"73 c #004A90",
-"83 c #003E9E",
-"93 c #0048C1",
-"03 c #004CC2",
-"a3 c #0051B6",
-"b3 c #005FBB",
-"c3 c #007BDC",
-"d3 c #007AD4",
-"e3 c #00427E",
-"f3 c #000F38",
-"g3 c #000932",
-"h3 c #05002A",
-"i3 c #00052E",
-"j3 c #001C42",
-"k3 c #001D3F",
-"l3 c #00668E",
-"m3 c #00C3F5",
-"n3 c #00B4C3",
-"o3 c #004D8B",
-"p3 c #000837",
-"q3 c #001859",
-"r3 c #001A68",
-"s3 c #001753",
-"t3 c #00103C",
-"u3 c #00103D",
-"v3 c #00082C",
-"w3 c #001348",
-"x3 c #002E84",
-"y3 c #003596",
-"z3 c #003CA4",
-"A3 c #004891",
-"B3 c #0079A0",
-"C3 c #00C1D3",
-"D3 c #00B8CB",
-"E3 c #00F1FB",
-"F3 c #0048AC",
-"G3 c #003287",
-"H3 c #0076F3",
-"I3 c #0072E2",
-"J3 c #007AFA",
-"K3 c #00ADE8",
-"L3 c #0088BB",
-"M3 c #0078A3",
-"N3 c #00A1CF",
-"O3 c #0096C0",
-"P3 c #00B1E7",
-"Q3 c #00ADE0",
-"R3 c #00ACDD",
-"S3 c #00B3DF",
-"T3 c #00CBF3",
-"U3 c #00B1D5",
-"V3 c #00323B",
-"W3 c #005362",
-"X3 c #007DA4",
-"Y3 c #0090C2",
-"Z3 c #00A3DD",
-"`3 c #00A0D4",
-" 4 c #00A9CD",
-".4 c #00ABC9",
-"+4 c #00A1B8",
-"@4 c #00758E",
-"#4 c #003F5D",
-"$4 c #002854",
-"%4 c #002E72",
-"&4 c #002F9C",
-"*4 c #0039B8",
-"=4 c #0045C4",
-"-4 c #0058CB",
-";4 c #0072E5",
-">4 c #0098FF",
-",4 c #0095FC",
-"'4 c #0060AC",
-")4 c #00356E",
-"!4 c #000C3A",
-"~4 c #01002E",
-"{4 c #070029",
-"]4 c #03002B",
-"^4 c #00284A",
-"/4 c #0091BD",
-"(4 c #00AEB0",
-"_4 c #008189",
-":4 c #001F42",
-"<4 c #001241",
-"[4 c #001451",
-"}4 c #001043",
-"|4 c #000B31",
-"14 c #00012A",
-"24 c #000A3A",
-"34 c #00124D",
-"44 c #00226D",
-"54 c #002E87",
-"64 c #003691",
-"74 c #003EA2",
-"84 c #004283",
-"94 c #00B9E8",
-"04 c #00C7CE",
-"a4 c #00BBBF",
-"b4 c #002664",
-"c4 c #00378E",
-"d4 c #0062C4",
-"e4 c #006ECD",
-"f4 c #0066C1",
-"g4 c #0080F0",
-"h4 c #00A2D9",
-"i4 c #0079B8",
-"j4 c #0098D0",
-"k4 c #0097CA",
-"l4 c #00ABD1",
-"m4 c #00B5D9",
-"n4 c #00ACCD",
-"o4 c #00A2C1",
-"p4 c #00A9C6",
-"q4 c #00768D",
-"r4 c #005766",
-"s4 c #00333A",
-"t4 c #001F22",
-"u4 c #001411",
-"v4 c #002E37",
-"w4 c #004E6B",
-"x4 c #0077AE",
-"y4 c #0090CB",
-"z4 c #009CCE",
-"A4 c #009CB6",
-"B4 c #007185",
-"C4 c #001A2E",
-"D4 c #000929",
-"E4 c #000F39",
-"F4 c #00144A",
-"G4 c #001A69",
-"H4 c #002EA9",
-"I4 c #004EE3",
-"J4 c #005FD7",
-"K4 c #007AED",
-"L4 c #00A1FF",
-"M4 c #0099FF",
-"N4 c #007FDB",
-"O4 c #0056A4",
-"P4 c #00225F",
-"Q4 c #000638",
-"R4 c #070034",
-"S4 c #001D43",
-"T4 c #002146",
-"U4 c #005D84",
-"V4 c #008A8A",
-"W4 c #00BBC4",
-"X4 c #001C39",
-"Y4 c #001047",
-"Z4 c #00185E",
-"`4 c #00155C",
-" 5 c #00114D",
-".5 c #000A35",
-"+5 c #000835",
-"@5 c #00032C",
-"#5 c #00093C",
-"$5 c #001151",
-"%5 c #002276",
-"&5 c #003293",
-"*5 c #003DA3",
-"=5 c #0042A1",
-"-5 c #004C91",
-";5 c #00A7A3",
-">5 c #00518F",
-",5 c #002A63",
-"'5 c #003B88",
-")5 c #0062B7",
-"!5 c #0072C6",
-"~5 c #0072C9",
-"{5 c #0082E9",
-"]5 c #0093FF",
-"^5 c #0093CC",
-"/5 c #007DDA",
-"(5 c #005EA7",
-"_5 c #00447D",
-":5 c #004571",
-"<5 c #0095D3",
-"[5 c #0097C0",
-"}5 c #00C3E0",
-"|5 c #00B8D2",
-"15 c #009EB4",
-"25 c #0099B1",
-"35 c #006B81",
-"45 c #000702",
-"55 c #00110A",
-"65 c #000D09",
-"75 c #000B22",
-"85 c #00395D",
-"95 c #005E93",
-"05 c #0084BE",
-"a5 c #008EAD",
-"b5 c #0094AB",
-"c5 c #007487",
-"d5 c #00293B",
-"e5 c #001329",
-"f5 c #000F2F",
-"g5 c #000025",
-"h5 c #000432",
-"i5 c #000C47",
-"j5 c #002380",
-"k5 c #0040B9",
-"l5 c #0058C8",
-"m5 c #0072DE",
-"n5 c #008EFB",
-"o5 c #0092F6",
-"p5 c #0088ED",
-"q5 c #0067C3",
-"r5 c #00347F",
-"s5 c #00124E",
-"t5 c #000138",
-"u5 c #01002D",
-"v5 c #000630",
-"w5 c #001C43",
-"x5 c #002248",
-"y5 c #004A74",
-"z5 c #0075AA",
-"A5 c #0093CE",
-"B5 c #00B3EA",
-"C5 c #00A39B",
-"D5 c #009D9B",
-"E5 c #001446",
-"F5 c #00165A",
-"G5 c #00022C",
-"H5 c #000A3F",
-"I5 c #001354",
-"J5 c #00247B",
-"K5 c #0046B2",
-"L5 c #004397",
-"M5 c #005DB0",
-"N5 c #009F98",
-"O5 c #0076A8",
-"P5 c #004673",
-"Q5 c #00417A",
-"R5 c #006BB7",
-"S5 c #007ACA",
-"T5 c #0082DA",
-"U5 c #0086E0",
-"V5 c #0095FF",
-"W5 c #0096F3",
-"X5 c #003A7B",
-"Y5 c #001651",
-"Z5 c #001347",
-"`5 c #004D77",
-" 6 c #009CC8",
-".6 c #00BDCF",
-"+6 c #00ADBA",
-"@6 c #00A3B0",
-"#6 c #006876",
-"$6 c #002634",
-"%6 c #000412",
-"&6 c #001016",
-"*6 c #002018",
-"=6 c #00180F",
-"-6 c #001915",
-";6 c #001F24",
-">6 c #003255",
-",6 c #0083A7",
-"'6 c #0095B7",
-")6 c #00859E",
-"!6 c #00001B",
-"~6 c #03001C",
-"{6 c #000021",
-"]6 c #000634",
-"^6 c #00185D",
-"/6 c #003693",
-"(6 c #0055BC",
-"_6 c #006FD8",
-":6 c #0081E6",
-"<6 c #0088EF",
-"[6 c #0088F4",
-"}6 c #0070D7",
-"|6 c #004398",
-"16 c #002469",
-"26 c #000B45",
-"36 c #000434",
-"46 c #001941",
-"56 c #00284E",
-"66 c #003A69",
-"76 c #00599F",
-"86 c #0068AB",
-"96 c #0081BC",
-"06 c #00C6FF",
-"a6 c #008983",
-"b6 c #00BABC",
-"c6 c #00426E",
-"d6 c #001E43",
-"e6 c #00134F",
-"f6 c #000C48",
-"g6 c #000736",
-"h6 c #000732",
-"i6 c #030020",
-"j6 c #000130",
-"k6 c #000942",
-"l6 c #001256",
-"m6 c #002072",
-"n6 c #00328B",
-"o6 c #0046AA",
-"p6 c #00418B",
-"q6 c #009C8B",
-"r6 c #0074A3",
-"s6 c #005E94",
-"t6 c #004778",
-"u6 c #005591",
-"v6 c #0064AE",
-"w6 c #006DB6",
-"x6 c #0079C8",
-"y6 c #0082D9",
-"z6 c #008DEC",
-"A6 c #008AE5",
-"B6 c #0099F6",
-"C6 c #0098EE",
-"D6 c #0090DC",
-"E6 c #007AC4",
-"F6 c #0067C6",
-"G6 c #00306A",
-"H6 c #00154D",
-"I6 c #00144F",
-"J6 c #000044",
-"K6 c #006489",
-"L6 c #00ADCA",
-"M6 c #00ADBD",
-"N6 c #00C0CB",
-"O6 c #0098A1",
-"P6 c #003C45",
-"Q6 c #00231B",
-"R6 c #001211",
-"S6 c #001219",
-"T6 c #000720",
-"U6 c #002A40",
-"V6 c #005A71",
-"W6 c #00718A",
-"X6 c #00485C",
-"Y6 c #000F24",
-"Z6 c #060019",
-"`6 c #090019",
-" 7 c #00053B",
-".7 c #002C73",
-"+7 c #004DA7",
-"@7 c #006BD3",
-"#7 c #007AE3",
-"$7 c #0085F4",
-"%7 c #008BFF",
-"&7 c #0076E6",
-"*7 c #004595",
-"=7 c #001448",
-"-7 c #000E37",
-";7 c #001338",
-">7 c #003C91",
-",7 c #00469E",
-"'7 c #0065A9",
-")7 c #008DCD",
-"!7 c #00908A",
-"~7 c #002A52",
-"{7 c #001A48",
-"]7 c #000436",
-"^7 c #000E49",
-"/7 c #000A41",
-"(7 c #000636",
-"_7 c #00042D",
-":7 c #00062F",
-"<7 c #030021",
-"[7 c #000237",
-"}7 c #000B49",
-"|7 c #001359",
-"17 c #00206D",
-"27 c #003186",
-"37 c #0048A4",
-"47 c #009785",
-"57 c #009AF4",
-"67 c #007FC9",
-"77 c #0072BC",
-"87 c #004681",
-"97 c #005895",
-"07 c #0071BE",
-"a7 c #0063AB",
-"b7 c #0066B0",
-"c7 c #0069B9",
-"d7 c #0061AA",
-"e7 c #0074CC",
-"f7 c #007CD6",
-"g7 c #008BEB",
-"h7 c #008BE5",
-"i7 c #00A4FF",
-"j7 c #008EF0",
-"k7 c #0083EF",
-"l7 c #000D48",
-"m7 c #001C5E",
-"n7 c #070049",
-"o7 c #000652",
-"p7 c #002C65",
-"q7 c #00244F",
-"r7 c #007594",
-"s7 c #00BFDD",
-"t7 c #00BED0",
-"u7 c #00666D",
-"v7 c #110006",
-"w7 c #002529",
-"x7 c #000911",
-"y7 c #001C26",
-"z7 c #003D4C",
-"A7 c #00546D",
-"B7 c #002C44",
-"C7 c #002441",
-"D7 c #060024",
-"E7 c #010015",
-"F7 c #010013",
-"G7 c #00081F",
-"H7 c #00163E",
-"I7 c #00174C",
-"J7 c #003C84",
-"K7 c #005ABA",
-"L7 c #006DD7",
-"M7 c #007EF5",
-"N7 c #0086FF",
-"O7 c #0076F4",
-"P7 c #0051B1",
-"Q7 c #00367D",
-"R7 c #000B41",
-"S7 c #00133E",
-"T7 c #000F37",
-"U7 c #00053F",
-"V7 c #001A7F",
-"W7 c #0034A2",
-"X7 c #004D9E",
-"Y7 c #005F9B",
-"Z7 c #00D9D1",
-"`7 c #003053",
-" 8 c #001C47",
-".8 c #001146",
-"+8 c #000D4B",
-"@8 c #000940",
-"#8 c #00063B",
-"$8 c #000531",
-"%8 c #000422",
-"&8 c #040025",
-"*8 c #000A4C",
-"=8 c #00125B",
-"-8 c #001F6C",
-";8 c #00348C",
-">8 c #004585",
-",8 c #00C3A8",
-"'8 c #009484",
-")8 c #0065BD",
-"!8 c #0062B8",
-"~8 c #003F8D",
-"{8 c #00428C",
-"]8 c #00589F",
-"^8 c #005DA2",
-"/8 c #00559D",
-"(8 c #00519A",
-"_8 c #004D92",
-":8 c #005BAD",
-"<8 c #0069C0",
-"[8 c #0076D2",
-"}8 c #007BD3",
-"|8 c #009CFF",
-"18 c #004B8D",
-"28 c #001E5D",
-"38 c #001658",
-"48 c #000445",
-"58 c #010048",
-"68 c #000856",
-"78 c #002361",
-"88 c #003C70",
-"98 c #006B90",
-"08 c #000A09",
-"a8 c #0C0300",
-"b8 c #000B1C",
-"c8 c #070013",
-"d8 c #08000F",
-"e8 c #000F0F",
-"f8 c #001410",
-"g8 c #001716",
-"h8 c #001A23",
-"i8 c #002C43",
-"j8 c #001938",
-"k8 c #000C38",
-"l8 c #000831",
-"m8 c #001E46",
-"n8 c #002F6A",
-"o8 c #004AA4",
-"p8 c #006CE7",
-"q8 c #0076FA",
-"r8 c #006EEF",
-"s8 c #005ED1",
-"t8 c #003C89",
-"u8 c #000941",
-"v8 c #000242",
-"w8 c #00067A",
-"x8 c #0022B0",
-"y8 c #004BAD",
-"z8 c #004286",
-"A8 c #009AE7",
-"B8 c #00C8C3",
-"C8 c #00A9A9",
-"D8 c #002F4B",
-"E8 c #001A3F",
-"F8 c #000637",
-"G8 c #000D4A",
-"H8 c #000A46",
-"I8 c #00073F",
-"J8 c #000435",
-"K8 c #000527",
-"L8 c #050014",
-"M8 c #00094C",
-"N8 c #00145E",
-"O8 c #00216E",
-"P8 c #004AA0",
-"Q8 c #004D8D",
-"R8 c #009984",
-"S8 c #0059BE",
-"T8 c #005DCF",
-"U8 c #0051C1",
-"V8 c #002182",
-"W8 c #00399A",
-"X8 c #00479B",
-"Y8 c #00397B",
-"Z8 c #003678",
-"`8 c #003273",
-" 9 c #00397C",
-".9 c #004690",
-"+9 c #0058AE",
-"@9 c #0064B9",
-"#9 c #0074CB",
-"$9 c #008BEF",
-"%9 c #0096FF",
-"&9 c #005099",
-"*9 c #004194",
-"=9 c #002874",
-"-9 c #001D86",
-";9 c #001B7F",
-">9 c #00175C",
-",9 c #002565",
-"'9 c #001B50",
-")9 c #002E59",
-"!9 c #004877",
-"~9 c #00131F",
-"{9 c #000909",
-"]9 c #000700",
-"^9 c #000C00",
-"/9 c #080D00",
-"(9 c #0A001F",
-"_9 c #070015",
-":9 c #19001D",
-"<9 c #003A22",
-"[9 c #000B02",
-"}9 c #00070B",
-"|9 c #00093F",
-"19 c #00103E",
-"29 c #002043",
-"39 c #0045A0",
-"49 c #0056CB",
-"59 c #0064E9",
-"69 c #006CF6",
-"79 c #006DF4",
-"89 c #005BCE",
-"99 c #002961",
-"09 c #001745",
-"a9 c #000C35",
-"b9 c #000229",
-"c9 c #050029",
-"d9 c #050040",
-"e9 c #0C007E",
-"f9 c #0010C1",
-"g9 c #0047C2",
-"h9 c #0057A3",
-"i9 c #0078B8",
-"j9 c #00BEBB",
-"k9 c #00A7AC",
-"l9 c #00334C",
-"m9 c #000E36",
-"n9 c #000C49",
-"o9 c #000943",
-"p9 c #00063C",
-"q9 c #00002F",
-"r9 c #000428",
-"s9 c #030600",
-"t9 c #03000D",
-"u9 c #05001C",
-"v9 c #020029",
-"w9 c #00033A",
-"x9 c #000A4A",
-"y9 c #001358",
-"z9 c #002168",
-"A9 c #003A8F",
-"B9 c #004795",
-"C9 c #004F92",
-"D9 c #00AB96",
-"E9 c #0057C4",
-"F9 c #0052C9",
-"G9 c #0058F3",
-"H9 c #0046CA",
-"I9 c #0035AA",
-"J9 c #0037A5",
-"K9 c #003376",
-"L9 c #002F5F",
-"M9 c #001F4E",
-"N9 c #001D4D",
-"O9 c #001442",
-"P9 c #003675",
-"Q9 c #004B9A",
-"R9 c #0058B0",
-"S9 c #006CCE",
-"T9 c #0086F1",
-"U9 c #007DDE",
-"V9 c #006AC7",
-"W9 c #004B97",
-"X9 c #0046A6",
-"Y9 c #00329A",
-"Z9 c #001A5E",
-"`9 c #001A56",
-" 0 c #001C4C",
-".0 c #001426",
-"+0 c #00171A",
-"@0 c #001409",
-"#0 c #000606",
-"$0 c #0B0011",
-"%0 c #140018",
-"&0 c #290027",
-"*0 c #001C13",
-"=0 c #000E41",
-"-0 c #001543",
-";0 c #00193C",
-">0 c #001C49",
-",0 c #002760",
-"'0 c #005FDE",
-")0 c #006FF8",
-"!0 c #0077FF",
-"~0 c #0066D5",
-"{0 c #005BC1",
-"]0 c #004392",
-"^0 c #00285F",
-"/0 c #00143F",
-"(0 c #00052C",
-"_0 c #020028",
-":0 c #050079",
-"<0 c #0014C4",
-"[0 c #0047CF",
-"}0 c #005FC0",
-"|0 c #00629E",
-"10 c #00AFAC",
-"20 c #00A9B4",
-"30 c #00264D",
-"40 c #00082D",
-"50 c #001344",
-"60 c #000C4A",
-"70 c #000A4F",
-"80 c #000843",
-"90 c #00071F",
-"00 c #060800",
-"a0 c #02001B",
-"b0 c #03001E",
-"c0 c #02002B",
-"d0 c #000131",
-"e0 c #00053E",
-"f0 c #000E4D",
-"g0 c #001350",
-"h0 c #003071",
-"i0 c #00448E",
-"j0 c #004985",
-"k0 c #009D96",
-"l0 c #0047A7",
-"m0 c #0053F3",
-"n0 c #0047EC",
-"o0 c #003FD8",
-"p0 c #002197",
-"q0 c #0038A9",
-"r0 c #00274D",
-"s0 c #001B2E",
-"t0 c #000921",
-"u0 c #001C38",
-"v0 c #00306B",
-"w0 c #003A84",
-"x0 c #004CAB",
-"y0 c #006CE1",
-"z0 c #007AEA",
-"A0 c #0087FC",
-"B0 c #0060BC",
-"C0 c #004AA3",
-"D0 c #003C9C",
-"E0 c #000D44",
-"F0 c #001135",
-"G0 c #00051C",
-"H0 c #000C0C",
-"I0 c #000E09",
-"J0 c #080002",
-"K0 c #100006",
-"L0 c #200019",
-"M0 c #001652",
-"N0 c #000F46",
-"O0 c #000F3F",
-"P0 c #00092A",
-"Q0 c #00266A",
-"R0 c #006EE1",
-"S0 c #0080F5",
-"T0 c #007DE6",
-"U0 c #008BF9",
-"V0 c #007BE2",
-"W0 c #0071D6",
-"X0 c #0061BE",
-"Y0 c #004287",
-"Z0 c #002356",
-"`0 c #00163F",
-" a c #00003B",
-".a c #001B88",
-"+a c #0036CF",
-"@a c #0052E2",
-"#a c #0060CE",
-"$a c #005C9A",
-"%a c #00B3A9",
-"&a c #009EB0",
-"*a c #00102F",
-"=a c #001644",
-"-a c #001857",
-";a c #001368",
-">a c #00105C",
-",a c #000C52",
-"'a c #000839",
-")a c #000A0D",
-"!a c #000239",
-"~a c #000034",
-"{a c #001A55",
-"]a c #002F6C",
-"^a c #004184",
-"/a c #004581",
-"(a c #00A0A0",
-"_a c #00BCC6",
-":a c #004BAE",
-"<a c #004CE6",
-"[a c #0044EB",
-"}a c #003DDD",
-"|a c #0028A1",
-"1a c #0036A1",
-"2a c #002042",
-"3a c #00111B",
-"4a c #000B1D",
-"5a c #00224D",
-"6a c #002E6B",
-"7a c #0046A2",
-"8a c #006BE6",
-"9a c #0089FF",
-"0a c #0091FF",
-"aa c #005EB9",
-"ba c #00489C",
-"ca c #0040AC",
-"da c #000234",
-"ea c #000C2A",
-"fa c #00122B",
-"ga c #000110",
-"ha c #000D0F",
-"ia c #0C0500",
-"ja c #0A0001",
-"ka c #090008",
-"la c #000A1F",
-"ma c #00274F",
-"na c #00275D",
-"oa c #000E43",
-"pa c #001964",
-"qa c #002E7E",
-"ra c #005BC4",
-"sa c #007EEE",
-"ta c #0091F3",
-"ua c #009AFF",
-"va c #0091F8",
-"wa c #007ADC",
-"xa c #005DB4",
-"ya c #004C9C",
-"za c #002C63",
-"Aa c #000430",
-"Ba c #00123A",
-"Ca c #000E45",
-"Da c #002988",
-"Ea c #004FDB",
-"Fa c #0059E5",
-"Ga c #0059C0",
-"Ha c #0075B5",
-"Ia c #00B5AB",
-"Ja c #002958",
-"Ka c #00264E",
-"La c #002348",
-"Ma c #001D4C",
-"Na c #00195B",
-"Oa c #00165D",
-"Pa c #001262",
-"Qa c #000E54",
-"Ra c #000A2A",
-"Sa c #000E12",
-"Ta c #00001A",
-"Ua c #010022",
-"Va c #010033",
-"Wa c #00002E",
-"Xa c #000944",
-"Ya c #00114E",
-"Za c #001C5C",
-"`a c #00276A",
-" b c #00387F",
-".b c #004994",
-"+b c #004A8C",
-"@b c #00A2AA",
-"#b c #00A7B1",
-"$b c #0046C3",
-"%b c #0046E1",
-"&b c #003CCF",
-"*b c #002DA3",
-"=b c #002054",
-"-b c #001028",
-";b c #000620",
-">b c #000519",
-",b c #002249",
-"'b c #003676",
-")b c #0057BC",
-"!b c #0074EB",
-"~b c #0086F0",
-"{b c #006CCB",
-"]b c #0044B0",
-"^b c #00328E",
-"/b c #000424",
-"(b c #000F2D",
-"_b c #002240",
-":b c #004F6B",
-"<b c #002434",
-"[b c #000F1F",
-"}b c #000B05",
-"|b c #0A000B",
-"1b c #090011",
-"2b c #00384E",
-"3b c #00597C",
-"4b c #00466A",
-"5b c #000937",
-"6b c #070022",
-"7b c #0061C2",
-"8b c #0077D9",
-"9b c #008AED",
-"0b c #0088E4",
-"ab c #008AEA",
-"bb c #0073CB",
-"cb c #005FB0",
-"db c #004B96",
-"eb c #004CA6",
-"fb c #003174",
-"gb c #000D3F",
-"hb c #001747",
-"ib c #001A54",
-"jb c #00318B",
-"kb c #0059DA",
-"lb c #005FD9",
-"mb c #0056B1",
-"nb c #009CE4",
-"ob c #00D9CA",
-"pb c #008894",
-"qb c #002B64",
-"rb c #002B5C",
-"sb c #002657",
-"tb c #001042",
-"ub c #001B59",
-"vb c #001966",
-"wb c #001257",
-"xb c #001053",
-"yb c #000D38",
-"zb c #000122",
-"Ab c #00033D",
-"Bb c #000C4C",
-"Cb c #001E63",
-"Db c #0046A3",
-"Eb c #0053B4",
-"Fb c #004D9D",
-"Gb c #009FA9",
-"Hb c #00A6B5",
-"Ib c #00519F",
-"Jb c #0047AD",
-"Kb c #004BD3",
-"Lb c #003FC1",
-"Mb c #00329F",
-"Nb c #0032A3",
-"Ob c #00206B",
-"Pb c #000A33",
-"Qb c #00081D",
-"Rb c #002853",
-"Sb c #004797",
-"Tb c #0070EB",
-"Ub c #007FFA",
-"Vb c #0073D3",
-"Wb c #004A95",
-"Xb c #0042A0",
-"Yb c #00358F",
-"Zb c #000042",
-"`b c #00062C",
-" c c #001F38",
-".c c #004A61",
-"+c c #00697C",
-"@c c #00525D",
-"#c c #000E1C",
-"$c c #000F20",
-"%c c #002619",
-"&c c #00050B",
-"*c c #00132C",
-"=c c #001931",
-"-c c #005F76",
-";c c #007296",
-">c c #003A62",
-",c c #080031",
-"'c c #00152E",
-")c c #00142F",
-"!c c #001B4F",
-"~c c #00296A",
-"{c c #0064BD",
-"]c c #0087E7",
-"^c c #008AE9",
-"/c c #0086E9",
-"(c c #004A96",
-"_c c #00438C",
-":c c #004599",
-"<c c #00337B",
-"[c c #00225D",
-"}c c #001B54",
-"|c c #00449A",
-"1c c #0063D1",
-"2c c #0065CC",
-"3c c #00E2FD",
-"4c c #008C91",
-"5c c #002358",
-"6c c #001147",
-"7c c #001148",
-"8c c #00113F",
-"9c c #000121",
-"0c c #00042C",
-"ac c #000F4C",
-"bc c #00104D",
-"cc c #002166",
-"dc c #004EBA",
-"ec c #00B8C8",
-"fc c #0075CB",
-"gc c #0045B4",
-"hc c #0039A0",
-"ic c #00329E",
-"jc c #001A74",
-"kc c #000233",
-"lc c #002A57",
-"mc c #004E9F",
-"nc c #0078F3",
-"oc c #0082F9",
-"pc c #0090F4",
-"qc c #0093F6",
-"rc c #008AF3",
-"sc c #0056A7",
-"tc c #004096",
-"uc c #003179",
-"vc c #001033",
-"wc c #03002F",
-"xc c #000930",
-"yc c #001D3D",
-"zc c #007F93",
-"Ac c #008591",
-"Bc c #007E87",
-"Cc c #004756",
-"Dc c #00182B",
-"Ec c #10001B",
-"Fc c #002118",
-"Gc c #000A0F",
-"Hc c #000A29",
-"Ic c #001D3B",
-"Jc c #0086A3",
-"Kc c #00A5CA",
-"Lc c #006E96",
-"Mc c #000E3C",
-"Nc c #000338",
-"Oc c #00163C",
-"Pc c #002047",
-"Qc c #00387A",
-"Rc c #005FAD",
-"Sc c #006DBF",
-"Tc c #0082E0",
-"Uc c #0087EF",
-"Vc c #0085EF",
-"Wc c #0075DE",
-"Xc c #0056AB",
-"Yc c #00499E",
-"Zc c #003B89",
-"`c c #00327A",
-" d c #002E7A",
-".d c #001A53",
-"+d c #005AB0",
-"@d c #006CC2",
-"#d c #0071C5",
-"$d c #009DF3",
-"%d c #00E7F6",
-"&d c #00FFEE",
-"*d c #00F7E0",
-"=d c #00A3A5",
-"-d c #00A9B6",
-";d c #00519D",
-">d c #002C6B",
-",d c #002867",
-"'d c #001D56",
-")d c #001F63",
-"!d c #00083F",
-"~d c #000F4D",
-"{d c #003A9E",
-"]d c #0056C5",
-"^d c #0052B2",
-"/d c #00909D",
-"(d c #005898",
-"_d c #004F99",
-":d c #004DA5",
-"<d c #00379F",
-"[d c #00207D",
-"}d c #000B53",
-"|d c #00013B",
-"1d c #000331",
-"2d c #000522",
-"3d c #002B5B",
-"4d c #0052AB",
-"5d c #006EE6",
-"6d c #0077E4",
-"7d c #008BE9",
-"8d c #0093EF",
-"9d c #003E8B",
-"0d c #003177",
-"ad c #00214E",
-"bd c #020035",
-"cd c #001332",
-"dd c #006E85",
-"ed c #00C2D5",
-"fd c #008C95",
-"gd c #007A85",
-"hd c #005B6C",
-"id c #000E22",
-"jd c #001718",
-"kd c #000904",
-"ld c #000925",
-"md c #003353",
-"nd c #00789E",
-"od c #00AFD3",
-"pd c #00B5D5",
-"qd c #00B5DA",
-"rd c #004672",
-"sd c #004185",
-"td c #004D98",
-"ud c #00549D",
-"vd c #0062AF",
-"wd c #006EC5",
-"xd c #0071CD",
-"yd c #006FD3",
-"zd c #006CD5",
-"Ad c #0054B1",
-"Bd c #004FB1",
-"Cd c #003D8F",
-"Dd c #003A8A",
-"Ed c #003F9A",
-"Fd c #002D6C",
-"Gd c #0069B1",
-"Hd c #0074B4",
-"Id c #00EFF5",
-"Jd c #00FFE7",
-"Kd c #00BFBA",
-"Ld c #00858B",
-"Md c #003C7D",
-"Nd c #002D6F",
-"Od c #002061",
-"Pd c #002268",
-"Qd c #001E60",
-"Rd c #001850",
-"Sd c #00113D",
-"Td c #00062A",
-"Ud c #001452",
-"Vd c #001E67",
-"Wd c #002D88",
-"Xd c #003695",
-"Yd c #0043A5",
-"Zd c #0058CE",
-"`d c #0052BA",
-" e c #009AA2",
-".e c #0068A3",
-"+e c #005799",
-"@e c #00468D",
-"#e c #0041A3",
-"$e c #002994",
-"%e c #001269",
-"&e c #000147",
-"*e c #000426",
-"=e c #00265B",
-"-e c #004BA8",
-";e c #0064D6",
-">e c #0077E2",
-",e c #007ED1",
-"'e c #0090EA",
-")e c #007DEC",
-"!e c #004CAA",
-"~e c #003075",
-"{e c #000033",
-"]e c #006989",
-"^e c #0098AA",
-"/e c #0096A2",
-"(e c #008C99",
-"_e c #00808F",
-":e c #00677B",
-"<e c #00566E",
-"[e c #002336",
-"}e c #00192B",
-"|e c #000713",
-"1e c #001217",
-"2e c #000B0D",
-"3e c #001015",
-"4e c #001021",
-"5e c #006C8D",
-"6e c #00A2CA",
-"7e c #00B4D9",
-"8e c #00C3EA",
-"9e c #00B5D8",
-"0e c #009FC5",
-"ae c #00749E",
-"be c #004A73",
-"ce c #003971",
-"de c #003880",
-"ee c #003985",
-"fe c #00347B",
-"ge c #003881",
-"he c #004697",
-"ie c #004998",
-"je c #004F9E",
-"ke c #005CB3",
-"le c #005EB6",
-"me c #005DB6",
-"ne c #004DAD",
-"oe c #0050B5",
-"pe c #0049AB",
-"qe c #0050B1",
-"re c #004AA1",
-"se c #003872",
-"te c #003165",
-"ue c #0075AC",
-"ve c #008BC1",
-"we c #00E7FF",
-"xe c #00F6F1",
-"ye c #00F6DE",
-"ze c #00FFE5",
-"Ae c #00E7DD",
-"Be c #00A1A4",
-"Ce c #00B9C9",
-"De c #003878",
-"Ee c #002B73",
-"Fe c #002471",
-"Ge c #00226C",
-"He c #001E5F",
-"Ie c #001943",
-"Je c #001049",
-"Ke c #002B7B",
-"Le c #002D7B",
-"Me c #003992",
-"Ne c #005DDB",
-"Oe c #0054C2",
-"Pe c #005EC5",
-"Qe c #009DA4",
-"Re c #00A4A7",
-"Se c #00ABDF",
-"Te c #00618D",
-"Ue c #002860",
-"Ve c #004CA1",
-"We c #0037A9",
-"Xe c #001877",
-"Ye c #00034B",
-"Ze c #00052A",
-"`e c #00184B",
-" f c #00398B",
-".f c #0057C0",
-"+f c #0081FF",
-"@f c #008FF5",
-"#f c #0096F1",
-"$f c #009BFF",
-"%f c #003F94",
-"&f c #002D5F",
-"*f c #000E40",
-"=f c #002252",
-"-f c #005278",
-";f c #0084A2",
-">f c #00A8BB",
-",f c #009EAC",
-"'f c #0095A6",
-")f c #0090A5",
-"!f c #007D97",
-"~f c #006074",
-"{f c #005C6F",
-"]f c #004552",
-"^f c #00303A",
-"/f c #000F14",
-"(f c #00384B",
-"_f c #007A9D",
-":f c #00A1CC",
-"<f c #00BCE8",
-"[f c #00CFFE",
-"}f c #00CAF3",
-"|f c #0074A2",
-"1f c #003364",
-"2f c #003E7E",
-"3f c #003D8B",
-"4f c #004097",
-"5f c #003785",
-"6f c #003D91",
-"7f c #00408F",
-"8f c #004699",
-"9f c #0051AC",
-"0f c #004CA8",
-"af c #004FBB",
-"bf c #004DB5",
-"cf c #0057C1",
-"df c #005DC1",
-"ef c #004A8D",
-"ff c #004473",
-"gf c #0087B4",
-"hf c #00B9EA",
-"if c #00EFE3",
-"jf c #00F3DA",
-"kf c #00ECDC",
-"lf c #007F8B",
-"mf c #002F6B",
-"nf c #002477",
-"of c #002066",
-"pf c #00163D",
-"qf c #002063",
-"rf c #00286F",
-"sf c #00388F",
-"tf c #0049B5",
-"uf c #0052C5",
-"vf c #0053B0",
-"wf c #007E7C",
-"xf c #00B9E4",
-"yf c #007AB1",
-"zf c #000959",
-"Af c #00052D",
-"Bf c #001758",
-"Cf c #00439E",
-"Df c #0075F3",
-"Ef c #0080DD",
-"Ff c #0083D9",
-"Gf c #0085E5",
-"Hf c #008EFF",
-"If c #0078FF",
-"Jf c #004687",
-"Kf c #002B53",
-"Lf c #007DA3",
-"Mf c #0096B4",
-"Nf c #00A3B9",
-"Of c #0099B2",
-"Pf c #007F95",
-"Qf c #008698",
-"Rf c #00707D",
-"Sf c #005763",
-"Tf c #00303B",
-"Uf c #0099C5",
-"Vf c #00B3E6",
-"Wf c #00BFE4",
-"Xf c #00BFDE",
-"Yf c #00AECD",
-"Zf c #008BBB",
-"`f c #006EA9",
-" g c #00579C",
-".g c #0055BF",
-"+g c #00358B",
-"@g c #003A91",
-"#g c #003C92",
-"$g c #00429E",
-"%g c #0044A9",
-"&g c #0041A4",
-"*g c #003F9D",
-"=g c #003892",
-"-g c #003FA3",
-";g c #00429C",
-">g c #005088",
-",g c #002C5C",
-"'g c #00E5D9",
-")g c #00D5C9",
-"!g c #00F1E0",
-"~g c #00FDEA",
-"{g c #00EFEB",
-"]g c #00488C",
-"^g c #002D6E",
-"/g c #00246C",
-"(g c #002271",
-"_g c #002483",
-":g c #002478",
-"<g c #001C59",
-"[g c #001B4A",
-"}g c #000730",
-"|g c #000E35",
-"1g c #002468",
-"2g c #0045AE",
-"3g c #0048B5",
-"4g c #00479A",
-"5g c #008289",
-"6g c #00A9A5",
-"7g c #005AB8",
-"8g c #00074F",
-"9g c #00043A",
-"0g c #002364",
-"ag c #003E9F",
-"bg c #0055BA",
-"cg c #007FE1",
-"dg c #0087E3",
-"eg c #0090F7",
-"fg c #0083FF",
-"gg c #005FA4",
-"hg c #00527E",
-"ig c #00A7C9",
-"jg c #00ADCC",
-"kg c #00ACC7",
-"lg c #00A0BB",
-"mg c #0093AA",
-"ng c #0090A3",
-"og c #007282",
-"pg c #00424D",
-"qg c #002530",
-"rg c #00172D",
-"sg c #001B29",
-"tg c #00465E",
-"ug c #008CB8",
-"vg c #00C0F2",
-"wg c #00B8DD",
-"xg c #00CDF1",
-"yg c #00C8E5",
-"zg c #00BBD8",
-"Ag c #0092C3",
-"Bg c #007EC0",
-"Cg c #006FB8",
-"Dg c #0066B4",
-"Eg c #0048A2",
-"Fg c #003482",
-"Gg c #003481",
-"Hg c #003E9A",
-"Ig c #0043AC",
-"Jg c #003792",
-"Kg c #003087",
-"Lg c #003191",
-"Mg c #002B80",
-"Ng c #003E95",
-"Og c #004C99",
-"Pg c #0066AD",
-"Qg c #004574",
-"Rg c #00C2FD",
-"Sg c #00E8E0",
-"Tg c #00E7E0",
-"Ug c #00F7EA",
-"Vg c #00D2CE",
-"Wg c #0084AB",
-"Xg c #0076C7",
-"Yg c #00326C",
-"Zg c #002C71",
-"`g c #002473",
-" h c #00227D",
-".h c #002484",
-"+h c #002175",
-"@h c #001A50",
-"#h c #000926",
-"$h c #00113C",
-"%h c #001F5C",
-"&h c #002B77",
-"*h c #003A99",
-"=h c #0041A8",
-"-h c #007ED2",
-";h c #00A2AF",
-">h c #00BAF5",
-",h c #006AB2",
-"'h c #00418C",
-")h c #001D64",
-"!h c #001055",
-"~h c #00154C",
-"{h c #000137",
-"]h c #001F5F",
-"^h c #0052BD",
-"/h c #0073CA",
-"(h c #0080CD",
-"_h c #0081EA",
-":h c #006FC7",
-"<h c #006499",
-"[h c #00698D",
-"}h c #008BAA",
-"|h c #009EBE",
-"1h c #00A1C8",
-"2h c #0097B9",
-"3h c #0096B3",
-"4h c #008BA6",
-"5h c #0098B1",
-"6h c #009AB4",
-"7h c #004D62",
-"8h c #001A2B",
-"9h c #001420",
-"0h c #001D19",
-"ah c #001B1A",
-"bh c #000822",
-"ch c #00385A",
-"dh c #0091C0",
-"eh c #00CEF5",
-"fh c #00C3DD",
-"gh c #00BED4",
-"hh c #00A3CC",
-"ih c #008EC5",
-"jh c #0087CD",
-"kh c #0088D9",
-"lh c #0084CB",
-"mh c #004A8F",
-"nh c #003579",
-"oh c #00357A",
-"ph c #003182",
-"qh c #00297B",
-"rh c #00287C",
-"sh c #00297C",
-"th c #003A89",
-"uh c #0056A0",
-"vh c #0066A0",
-"wh c #00557A",
-"xh c #0093BB",
-"yh c #00E0E2",
-"zh c #00D7D4",
-"Ah c #00D7F1",
-"Bh c #009CD1",
-"Ch c #004984",
-"Dh c #002E6F",
-"Eh c #00296F",
-"Fh c #002479",
-"Gh c #00237F",
-"Hh c #001A52",
-"Ih c #001A4D",
-"Jh c #002B78",
-"Kh c #003896",
-"Lh c #006BB6",
-"Mh c #0092C7",
-"Nh c #00286A",
-"Oh c #001E5C",
-"Ph c #002050",
-"Qh c #000337",
-"Rh c #002160",
-"Sh c #005ED3",
-"Th c #006BBF",
-"Uh c #0073B6",
-"Vh c #0076C0",
-"Wh c #0070BE",
-"Xh c #006DAF",
-"Yh c #00729D",
-"Zh c #00A9C0",
-"`h c #00B3CF",
-" i c #0098C0",
-".i c #008DB4",
-"+i c #008DB3",
-"@i c #0097B8",
-"#i c #009AB9",
-"$i c #0093B1",
-"%i c #007C9C",
-"&i c #001530",
-"*i c #000C25",
-"=i c #001B2C",
-"-i c #00100B",
-";i c #000725",
-">i c #003A57",
-",i c #009BB8",
-"'i c #00BBD1",
-")i c #00B7CA",
-"!i c #00AAD8",
-"~i c #0093CB",
-"{i c #008ACD",
-"]i c #0095DF",
-"^i c #00A0DF",
-"/i c #0090C9",
-"(i c #005E95",
-"_i c #003A74",
-":i c #00468B",
-"<i c #00489A",
-"[i c #003884",
-"}i c #002974",
-"|i c #002873",
-"1i c #003E86",
-"2i c #005BA0",
-"3i c #004B70",
-"4i c #00D0F6",
-"5i c #009C89",
-"6i c #00D5F5",
-"7i c #0092CB",
-"8i c #00316E",
-"9i c #002876",
-"0i c #00237E",
-"ai c #001D73",
-"bi c #001D70",
-"ci c #000D2F",
-"di c #002D80",
-"ei c #0049A6",
-"fi c #0067BE",
-"gi c #0097E3",
-"hi c #00B5D0",
-"ii c #004161",
-"ji c #002C47",
-"ki c #004157",
-"li c #006DA6",
-"mi c #00346F",
-"ni c #002E56",
-"oi c #001337",
-"pi c #000535",
-"qi c #002C72",
-"ri c #0042AD",
-"si c #005E8E",
-"ti c #006293",
-"ui c #006AA1",
-"vi c #0074B2",
-"wi c #0081B8",
-"xi c #0094B9",
-"yi c #00AEC6",
-"zi c #00B4C9",
-"Ai c #00B4CA",
-"Bi c #0098BE",
-"Ci c #0091B8",
-"Di c #0091BA",
-"Ei c #007DA9",
-"Fi c #00456D",
-"Gi c #001435",
-"Hi c #000A20",
-"Ii c #000D07",
-"Ji c #001210",
-"Ki c #060013",
-"Li c #000A22",
-"Mi c #00586B",
-"Ni c #00B3C9",
-"Oi c #00BFD8",
-"Pi c #00C2E4",
-"Qi c #00B3E4",
-"Ri c #00A2DD",
-"Si c #0096D4",
-"Ti c #0099D2",
-"Ui c #00A8D6",
-"Vi c #00A7D4",
-"Wi c #0085B6",
-"Xi c #00608D",
-"Yi c #003B69",
-"Zi c #003E6F",
-"`i c #00477E",
-" j c #003D76",
-".j c #002C69",
-"+j c #002766",
-"@j c #00225E",
-"#j c #002B6D",
-"$j c #004181",
-"%j c #004873",
-"&j c #0091AC",
-"*j c #00241C",
-"=j c #002A1F",
-"-j c #006465",
-";j c #006492",
-">j c #003080",
-",j c #002A84",
-"'j c #00207E",
-")j c #000119",
-"!j c #00164C",
-"~j c #002776",
-"{j c #0049AD",
-"]j c #0069C8",
-"^j c #004151",
-"/j c #00474D",
-"(j c #0081AD",
-"_j c #005391",
-":j c #00427C",
-"<j c #002C4D",
-"[j c #003479",
-"}j c #003887",
-"|j c #003C7A",
-"1j c #005B86",
-"2j c #008BC6",
-"3j c #009DD2",
-"4j c #00A5C3",
-"5j c #00ACBB",
-"6j c #00A8BD",
-"7j c #00A2B8",
-"8j c #009BB7",
-"9j c #00A1C1",
-"0j c #00ACD4",
-"aj c #00AAD9",
-"bj c #0094C6",
-"cj c #007BAF",
-"dj c #005387",
-"ej c #002456",
-"fj c #001E51",
-"gj c #000F3A",
-"hj c #00202D",
-"ij c #002326",
-"jj c #001E1C",
-"kj c #000504",
-"lj c #0B0007",
-"mj c #04000C",
-"nj c #001324",
-"oj c #00BDDB",
-"pj c #00B3EE",
-"qj c #00AFE6",
-"rj c #00ACD1",
-"sj c #00ADCF",
-"tj c #004B72",
-"uj c #00345E",
-"vj c #003C67",
-"wj c #003464",
-"xj c #002859",
-"yj c #002457",
-"zj c #003767",
-"Aj c #002140",
-"Bj c #006580",
-"Cj c #00CBE7",
-"Dj c #00EBF7",
-"Ej c #00657D",
-"Fj c #00212B",
-"Gj c #00150F",
-"Hj c #001A0F",
-"Ij c #00252B",
-"Jj c #00448C",
-"Kj c #003591",
-"Lj c #002683",
-"Mj c #001C74",
-"Nj c #00124C",
-"Oj c #04001C",
-"Pj c #00011A",
-"Qj c #000F41",
-"Rj c #002067",
-"Sj c #0042A3",
-"Tj c #006BD5",
-"Uj c #0077C5",
-"Vj c #00B7E3",
-"Wj c #00212F",
-"Xj c #000830",
-"Yj c #000223",
-"Zj c #00222E",
-"`j c #008BDB",
-" k c #005B9B",
-".k c #004263",
-"+k c #00336B",
-"@k c #003471",
-"#k c #003E7B",
-"$k c #004C74",
-"%k c #005E82",
-"&k c #00B0C6",
-"*k c #00A3AF",
-"=k c #0098B4",
-"-k c #00CFF5",
-";k c #00C8FA",
-">k c #009DDE",
-",k c #0070BC",
-"'k c #002E6E",
-")k c #000C58",
-"!k c #00053C",
-"~k c #001A40",
-"{k c #070000",
-"]k c #0A0002",
-"^k c #00030D",
-"/k c #004F66",
-"(k c #00ACD8",
-"_k c #00B8E9",
-":k c #00C1F3",
-"<k c #00BFEF",
-"[k c #00B9E1",
-"}k c #00B4D5",
-"|k c #00B7D3",
-"1k c #00A6C1",
-"2k c #00A8C4",
-"3k c #0098BC",
-"4k c #007196",
-"5k c #00133D",
-"6k c #002551",
-"7k c #002650",
-"8k c #002F52",
-"9k c #00425F",
-"0k c #00EDF1",
-"ak c #00485E",
-"bk c #000817",
-"ck c #000F07",
-"dk c #000F05",
-"ek c #005473",
-"fk c #00CED7",
-"gk c #004270",
-"hk c #004594",
-"ik c #003CAB",
-"jk c #001B72",
-"kk c #00186A",
-"lk c #01001F",
-"mk c #000733",
-"nk c #001243",
-"ok c #003687",
-"pk c #002B3C",
-"qk c #000E25",
-"rk c #00192D",
-"sk c #002E35",
-"tk c #0090D0",
-"uk c #005A7C",
-"vk c #004963",
-"wk c #002C50",
-"xk c #003A66",
-"yk c #003D6F",
-"zk c #005085",
-"Ak c #006488",
-"Bk c #007798",
-"Ck c #0089AE",
-"Dk c #0095BE",
-"Ek c #00A0D1",
-"Fk c #00AFCC",
-"Gk c #00A3BD",
-"Hk c #00C0DC",
-"Ik c #00C4E4",
-"Jk c #00B1DD",
-"Kk c #008CCC",
-"Lk c #0066BD",
-"Mk c #00399F",
-"Nk c #001A6E",
-"Ok c #00145F",
-"Pk c #001559",
-"Qk c #001A4C",
-"Rk c #07000C",
-"Sk c #02000D",
-"Tk c #006590",
-"Uk c #007EAD",
-"Vk c #00B8ED",
-"Wk c #00C2F0",
-"Xk c #00C0E0",
-"Yk c #00BDD9",
-"Zk c #00BCD8",
-"`k c #00C5DE",
-" l c #00C4DC",
-".l c #00B1CD",
-"+l c #004768",
-"@l c #002D4D",
-"#l c #001334",
-"$l c #00334F",
-"%l c #004B5A",
-"&l c #001A24",
-"*l c #00120C",
-"=l c #00A1B7",
-"-l c #005F7F",
-";l c #0047A1",
-">l c #003699",
-",l c #002C93",
-"'l c #00237C",
-")l c #001642",
-"!l c #1C0014",
-"~l c #02002D",
-"{l c #005BBD",
-"]l c #006ACB",
-"^l c #005FA2",
-"/l c #008EE0",
-"(l c #00494A",
-"_l c #003F38",
-":l c #004F45",
-"<l c #00B0D5",
-"[l c #0082A2",
-"}l c #00556F",
-"|l c #005376",
-"1l c #00557B",
-"2l c #005C83",
-"3l c #005F7E",
-"4l c #00788E",
-"5l c #009AB2",
-"6l c #00AACA",
-"7l c #00AAE1",
-"8l c #00A9E3",
-"9l c #00A3D9",
-"0l c #00B3E7",
-"al c #00BEE5",
-"bl c #00C9F2",
-"cl c #0070AB",
-"dl c #0073D7",
-"el c #004BB0",
-"fl c #003383",
-"gl c #003886",
-"hl c #00408D",
-"il c #003470",
-"jl c #00388B",
-"kl c #001637",
-"ll c #0086C7",
-"ml c #007AB7",
-"nl c #007EB5",
-"ol c #009DD5",
-"pl c #00BCE6",
-"ql c #00D1E3",
-"rl c #00C6E0",
-"sl c #00BEDB",
-"tl c #00C1D8",
-"ul c #00E2F9",
-"vl c #00C9DB",
-"wl c #00C2D7",
-"xl c #00A1BA",
-"yl c #005569",
-"zl c #003F57",
-"Al c #00425B",
-"Bl c #006581",
-"Cl c #00A7C7",
-"Dl c #00A5A7",
-"El c #005354",
-"Fl c #003A39",
-"Gl c #007D86",
-"Hl c #0085A6",
-"Il c #005C7E",
-"Jl c #005081",
-"Kl c #00396E",
-"Ll c #003C8F",
-"Ml c #002D81",
-"Nl c #000E2A",
-"Ol c #0C0018",
-"Pl c #000738",
-"Ql c #000841",
-"Rl c #003C8C",
-"Sl c #009BB0",
-"Tl c #006E84",
-"Ul c #006481",
-"Vl c #00536F",
-"Wl c #005775",
-"Xl c #00546B",
-"Yl c #00667C",
-"Zl c #007585",
-"`l c #0097A4",
-" m c #009DAE",
-".m c #009EB5",
-"+m c #00A2C5",
-"@m c #009FCD",
-"#m c #00A6E7",
-"$m c #00A8E4",
-"%m c #00B6EC",
-"&m c #00C3F4",
-"*m c #00C6F2",
-"=m c #00A2C8",
-"-m c #0083AD",
-";m c #0086F8",
-">m c #0057BD",
-",m c #00448F",
-"'m c #004992",
-")m c #004589",
-"!m c #001C68",
-"~m c #090046",
-"{m c #002550",
-"]m c #004272",
-"^m c #0065A0",
-"/m c #0080CE",
-"(m c #006FBE",
-"_m c #006FB4",
-":m c #00BCEB",
-"<m c #00CCE1",
-"[m c #00C8D4",
-"}m c #00C5DC",
-"|m c #00C0DA",
-"1m c #00AEC4",
-"2m c #006875",
-"3m c #002C38",
-"4m c #00404A",
-"5m c #002937",
-"6m c #002A3B",
-"7m c #003445",
-"8m c #005367",
-"9m c #00B5B7",
-"0m c #00B6BD",
-"am c #00BDE0",
-"bm c #00B0DC",
-"cm c #005C80",
-"dm c #003E65",
-"em c #002871",
-"fm c #00329B",
-"gm c #002981",
-"hm c #002A71",
-"im c #002641",
-"jm c #001134",
-"km c #002162",
-"lm c #004A98",
-"mm c #0050A4",
-"nm c #003982",
-"om c #003474",
-"pm c #008A99",
-"qm c #004D5A",
-"rm c #001D30",
-"sm c #00364C",
-"tm c #003346",
-"um c #003A49",
-"vm c #004651",
-"wm c #00636C",
-"xm c #007D8A",
-"ym c #008FA1",
-"zm c #00A0BC",
-"Am c #009CC9",
-"Bm c #00A6DA",
-"Cm c #00ABE2",
-"Dm c #00BCF2",
-"Em c #0085AD",
-"Fm c #0081B2",
-"Gm c #009CF5",
-"Hm c #006FE2",
-"Im c #00498C",
-"Jm c #004380",
-"Km c #003D79",
-"Lm c #00295E",
-"Mm c #001945",
-"Nm c #00153B",
-"Om c #001C41",
-"Pm c #002E5A",
-"Qm c #005FB4",
-"Rm c #0088F0",
-"Sm c #008CFC",
-"Tm c #006CD3",
-"Um c #0066BC",
-"Vm c #0077B9",
-"Wm c #00C2FE",
-"Xm c #00C3DA",
-"Ym c #00C9D6",
-"Zm c #00B0CE",
-"`m c #002B3D",
-" n c #001725",
-".n c #001B2B",
-"+n c #003744",
-"@n c #006B7A",
-"#n c #002B4B",
-"$n c #000A31",
-"%n c #001854",
-"&n c #001E72",
-"*n c #000825",
-"=n c #002757",
-"-n c #00256E",
-";n c #003181",
-">n c #004898",
-",n c #004489",
-"'n c #001F56",
-")n c #003868",
-"!n c #006663",
-"~n c #002328",
-"{n c #000F1A",
-"]n c #00303F",
-"^n c #002F43",
-"/n c #002636",
-"(n c #00121D",
-"_n c #00141C",
-":n c #004E57",
-"<n c #007382",
-"[n c #00A6C6",
-"}n c #009BBC",
-"|n c #00AFDF",
-"1n c #00C4FB",
-"2n c #009CCA",
-"3n c #007DAB",
-"4n c #0085C0",
-"5n c #00A0FF",
-"6n c #0085EE",
-"7n c #0078F0",
-"8n c #0073E6",
-"9n c #0072DC",
-"0n c #005197",
-"an c #003C6B",
-"bn c #002D55",
-"cn c #003660",
-"dn c #004C7B",
-"en c #005A99",
-"fn c #0066C4",
-"gn c #0082FF",
-"hn c #0090FF",
-"in c #0077EF",
-"jn c #005FCE",
-"kn c #004EA3",
-"ln c #005398",
-"mn c #00A1DF",
-"nn c #00C9E4",
-"on c #00D5E4",
-"pn c #00CDE6",
-"qn c #0085A0",
-"rn c #00415A",
-"sn c #00071C",
-"tn c #030016",
-"un c #000510",
-"vn c #000B15",
-"wn c #002A33",
-"xn c #005F85",
-"yn c #003453",
-"zn c #001235",
-"An c #001D46",
-"Bn c #00174A",
-"Cn c #00165B",
-"Dn c #001657",
-"En c #002062",
-"Fn c #002A76",
-"Gn c #001E35",
-"Hn c #003258",
-"In c #002273",
-"Jn c #004082",
-"Kn c #001346",
-"Ln c #001449",
-"Mn c #004739",
-"Nn c #000B09",
-"On c #001C28",
-"Pn c #001824",
-"Qn c #001923",
-"Rn c #001D26",
-"Sn c #003E4A",
-"Tn c #006D7D",
-"Un c #0098AE",
-"Vn c #00A2BA",
-"Wn c #00ADCD",
-"Xn c #00B7E4",
-"Yn c #00A5DC",
-"Zn c #0081B1",
-"`n c #0079B4",
-" o c #0082CE",
-".o c #008BE8",
-"+o c #0079D6",
-"@o c #0070D4",
-"#o c #0075E2",
-"$o c #0078E8",
-"%o c #0080D3",
-"&o c #0079BE",
-"*o c #0082C7",
-"=o c #0080D4",
-"-o c #0076E4",
-";o c #0076F8",
-">o c #007CFF",
-",o c #006BEB",
-"'o c #004DC3",
-")o c #002B84",
-"!o c #00266F",
-"~o c #0075AD",
-"{o c #00CBEB",
-"]o c #00D1E1",
-"^o c #00A3B7",
-"/o c #005266",
-"(o c #03000E",
-"_o c #070009",
-":o c #002528",
-"<o c #003F5F",
-"[o c #003558",
-"}o c #001B45",
-"|o c #001B51",
-"1o c #007583",
-"2o c #006A83",
-"3o c #000F2E",
-"4o c #000938",
-"5o c #002857",
-"6o c #002750",
-"7o c #003257",
-"8o c #00344D",
-"9o c #007384",
-"0o c #00CCE5",
-"ao c #001C12",
-"bo c #001A25",
-"co c #000B14",
-"do c #000811",
-"eo c #003846",
-"fo c #007E8E",
-"go c #00A2B5",
-"ho c #00A6BF",
-"io c #00BAE3",
-"jo c #00B7ED",
-"ko c #007DB0",
-"lo c #006498",
-"mo c #0067AF",
-"no c #006ABB",
-"oo c #0068B8",
-"po c #0065B6",
-"qo c #006BC5",
-"ro c #0068CA",
-"so c #0062C3",
-"to c #0074D6",
-"uo c #00ACE3",
-"vo c #00ABFD",
-"wo c #009FEA",
-"xo c #0092E8",
-"yo c #0071D8",
-"zo c #0061D1",
-"Ao c #0063DB",
-"Bo c #005CDE",
-"Co c #0046CC",
-"Do c #00338D",
-"Eo c #003077",
-"Fo c #005C8F",
-"Go c #00B5C5",
-"Ho c #006C7D",
-"Io c #00192C",
-"Jo c #00061A",
-"Ko c #0D0012",
-"Lo c #0A000D",
-"Mo c #11000A",
-"No c #080300",
-"Oo c #002C2F",
-"Po c #005E7D",
-"Qo c #004D6B",
-"Ro c #004A70",
-"So c #002448",
-"To c #001137",
-"Uo c #00265A",
-"Vo c #002756",
-"Wo c #002B54",
-"Xo c #001F47",
-"Yo c #004F7F",
-"Zo c #007F8D",
-"`o c #009BA7",
-" p c #009EB6",
-".p c #001C3D",
-"+p c #00183D",
-"@p c #004C69",
-"#p c #004D66",
-"$p c #00B6E3",
-"%p c #002C24",
-"&p c #0D0002",
-"*p c #000A11",
-"=p c #060009",
-"-p c #000E1D",
-";p c #001D2B",
-">p c #005868",
-",p c #0093A5",
-"'p c #00A7BC",
-")p c #00B8E1",
-"!p c #005E91",
-"~p c #005592",
-"{p c #004D9C",
-"]p c #004495",
-"^p c #004D97",
-"/p c #004D93",
-"(p c #004F98",
-"_p c #00509E",
-":p c #005DC4",
-"<p c #00A5ED",
-"[p c #009AE9",
-"}p c #00A8FF",
-"|p c #006DD4",
-"1p c #004FAD",
-"2p c #00479E",
-"3p c #003B97",
-"4p c #0032A7",
-"5p c #003377",
-"6p c #008CA7",
-"7p c #008E9F",
-"8p c #003A51",
-"9p c #001C32",
-"0p c #000312",
-"ap c #070007",
-"bp c #0B0500",
-"cp c #0C0800",
-"dp c #060900",
-"ep c #030B00",
-"fp c #00160E",
-"gp c #008CA1",
-"hp c #006684",
-"ip c #006184",
-"jp c #005578",
-"kp c #004166",
-"lp c #001B3E",
-"mp c #003559",
-"np c #003F60",
-"op c #005D7C",
-"pp c #007EA0",
-"qp c #009BAC",
-"rp c #00C8D5",
-"sp c #00A9BE",
-"tp c #006E8C",
-"up c #001339",
-"vp c #000B33",
-"wp c #001535",
-"xp c #001029",
-"yp c #002E4F",
-"zp c #004163",
-"Ap c #006087",
-"Bp c #005878",
-"Cp c #006786",
-"Dp c #001917",
-"Ep c #000B07",
-"Fp c #0A0000",
-"Gp c #100003",
-"Hp c #0D000F",
-"Ip c #150011",
-"Jp c #150013",
-"Kp c #090016",
-"Lp c #001428",
-"Mp c #008094",
-"Np c #00B8D5",
-"Op c #00B8E3",
-"Pp c #007CA6",
-"Qp c #005488",
-"Rp c #004F9A",
-"Sp c #002F80",
-"Tp c #003A85",
-"Up c #003C7E",
-"Vp c #004188",
-"Wp c #003F90",
-"Xp c #0096EA",
-"Yp c #0075C2",
-"Zp c #00488D",
-"`p c #003574",
-" q c #00326F",
-".q c #002C6C",
-"+q c #001762",
-"@q c #006678",
-"#q c #006F80",
-"$q c #001B37",
-"%q c #001133",
-"&q c #000203",
-"*q c #000908",
-"=q c #000900",
-"-q c #000E0D",
-";q c #004851",
-">q c #008493",
-",q c #007180",
-"'q c #006C80",
-")q c #00829E",
-"!q c #007B9E",
-"~q c #006E93",
-"{q c #005985",
-"]q c #004972",
-"^q c #001437",
-"/q c #002040",
-"(q c #006886",
-"_q c #0088A0",
-":q c #008397",
-"<q c #005462",
-"[q c #007CA7",
-"}q c #00AEC2",
-"|q c #00B9C8",
-"1q c #00B5C7",
-"2q c #004479",
-"3q c #001238",
-"4q c #000A26",
-"5q c #003652",
-"6q c #004663",
-"7q c #003E60",
-"8q c #00638C",
-"9q c #0072A1",
-"0q c #007DAA",
-"aq c #008BB5",
-"bq c #007591",
-"cq c #006C87",
-"dq c #00070C",
-"eq c #000408",
-"fq c #000E10",
-"gq c #001519",
-"hq c #0C0013",
-"iq c #21001D",
-"jq c #00253F",
-"kq c #00647B",
-"lq c #00B4DC",
-"mq c #0077A3",
-"nq c #00558F",
-"oq c #00257C",
-"pq c #002176",
-"qq c #002E74",
-"rq c #003271",
-"sq c #00A4EE",
-"tq c #00A6EE",
-"uq c #0095F8",
-"vq c #007BCE",
-"wq c #005089",
-"xq c #003267",
-"yq c #00244C",
-"zq c #001733",
-"Aq c #001129",
-"Bq c #004F58",
-"Cq c #00404F",
-"Dq c #001239",
-"Eq c #040027",
-"Fq c #000906",
-"Gq c #001314",
-"Hq c #001413",
-"Iq c #000602",
-"Jq c #030E00",
-"Kq c #006F83",
-"Lq c #008AA7",
-"Mq c #0085A7",
-"Nq c #006B9A",
-"Oq c #005482",
-"Pq c #003458",
-"Qq c #007C9A",
-"Rq c #0093AF",
-"Sq c #0094AA",
-"Tq c #0099AC",
-"Uq c #00666F",
-"Vq c #00668B",
-"Wq c #00AAC5",
-"Xq c #00C4DB",
-"Yq c #005486",
-"Zq c #001D41",
-"`q c #001735",
-" r c #004F6A",
-".r c #0075A9",
-"+r c #0092CF",
-"@r c #0091B2",
-"#r c #007592",
-"$r c #00566D",
-"%r c #003E55",
-"&r c #000512",
-"*r c #001317",
-"=r c #000C16",
-"-r c #090017",
-";r c #002445",
-">r c #003755",
-",r c #004865",
-"'r c #008AB1",
-")r c #0078A7",
-"!r c #005AA0",
-"~r c #003589",
-"{r c #001D72",
-"]r c #00166D",
-"^r c #001E6E",
-"/r c #002367",
-"(r c #002B6C",
-"_r c #002D6D",
-":r c #002C6F",
-"<r c #0046AE",
-"[r c #0062D1",
-"}r c #0074D5",
-"|r c #0083CF",
-"1r c #008EDF",
-"2r c #0075D5",
-"3r c #006ACC",
-"4r c #0059A3",
-"5r c #003B6F",
-"6r c #00214A",
-"7r c #001431",
-"8r c #00191E",
-"9r c #003D40",
-"0r c #003342",
-"ar c #000329",
-"br c #100024",
-"cr c #00181C",
-"dr c #000B01",
-"er c #050C00",
-"fr c #080A00",
-"gr c #003851",
-"hr c #009BC4",
-"ir c #00A9D7",
-"jr c #00A1D6",
-"kr c #0083BD",
-"lr c #0072AD",
-"mr c #0067A0",
-"nr c #005A91",
-"or c #00507E",
-"pr c #005C8C",
-"qr c #00709A",
-"rr c #0086A0",
-"sr c #00A1B4",
-"tr c #007780",
-"ur c #007775",
-"vr c #00B3D7",
-"wr c #00AAC3",
-"xr c #00CEF9",
-"yr c #00548D",
-"zr c #003768",
-"Ar c #003B5E",
-"Br c #008CAA",
-"Cr c #007B9C",
-"Dr c #00769E",
-"Er c #007BB4",
-"Fr c #00A3E4",
-"Gr c #00BCEE",
-"Hr c #00C6EF",
-"Ir c #00ACCE",
-"Jr c #005D73",
-"Kr c #00080F",
-"Lr c #000304",
-"Mr c #00060B",
-"Nr c #00091D",
-"Or c #003052",
-"Pr c #004C6E",
-"Qr c #0074A0",
-"Rr c #005673",
-"Sr c #00658B",
-"Tr c #005191",
-"Ur c #00347E",
-"Vr c #001B6A",
-"Wr c #001561",
-"Xr c #00135B",
-"Yr c #001458",
-"Zr c #002262",
-"`r c #002965",
-" s c #0048A3",
-".s c #005FB9",
-"+s c #0067BA",
-"@s c #006BC2",
-"#s c #0057B6",
-"$s c #003E82",
-"%s c #000B23",
-"&s c #040026",
-"*s c #210036",
-"=s c #000D19",
-"-s c #01000F",
-";s c #001333",
-">s c #00C1FF",
-",s c #00B6F9",
-"'s c #00B3FC",
-")s c #00A0ED",
-"!s c #0089D2",
-"~s c #0077C1",
-"{s c #0072BF",
-"]s c #00599D",
-"^s c #00578E",
-"/s c #006799",
-"(s c #008FC2",
-"_s c #009CC5",
-":s c #009EBD",
-"<s c #008BA0",
-"[s c #008490",
-"}s c #00716F",
-"|s c #006996",
-"1s c #0088AB",
-"2s c #008EAA",
-"3s c #004A7B",
-"4s c #00C8F6",
-"5s c #00D2F7",
-"6s c #00C0E9",
-"7s c #00B6F7",
-"8s c #009DBB",
-"9s c #00354B",
-"0s c #000D21",
-"as c #000818",
-"bs c #000D0D",
-"cs c #000922",
-"ds c #002343",
-"es c #003E63",
-"fs c #00385C",
-"gs c #005F7C",
-"hs c #005777",
-"is c #00416E",
-"js c #00336E",
-"ks c #002675",
-"ls c #00145A",
-"ms c #001255",
-"ns c #001D5B",
-"os c #00265E",
-"ps c #002D68",
-"qs c #004492",
-"rs c #0057B1",
-"ss c #0053A8",
-"ts c #0052A5",
-"us c #004CA0",
-"vs c #003C8A",
-"ws c #00326E",
-"xs c #002353",
-"ys c #000714",
-"zs c #000E0B",
-"As c #003D39",
-"Bs c #000326",
-"Cs c #1A002C",
-"Ds c #000C1C",
-"Es c #000B25",
-"Fs c #000D28",
-"Gs c #00457F",
-"Hs c #00AEF6",
-"Is c #00A4EF",
-"Js c #0097E2",
-"Ks c #0084D0",
-"Ls c #0079C5",
-"Ms c #0072C1",
-"Ns c #0062AB",
-"Os c #004C85",
-"Ps c #008DA5",
-"Qs c #007E8F",
-"Rs c #008488",
-"Ss c #0072A7",
-"Ts c #0085AB",
-"Us c #008DAF",
-"Vs c #007193",
-"Ws c #00577D",
-"Xs c #005364",
-"Ys c #001626",
-"Zs c #000809",
-"`s c #001223",
-" t c #001F34",
-".t c #002E48",
-"+t c #00263C",
-"@t c #003853",
-"#t c #004262",
-"$t c #00466D",
-"%t c #0071A0",
-"&t c #002E85",
-"*t c #001F5D",
-"=t c #002458",
-"-t c #002D5E",
-";t c #00437D",
-">t c #00519C",
-",t c #004199",
-"'t c #003789",
-")t c #002762",
-"!t c #00031E",
-"~t c #001526",
-"{t c #002C2E",
-"]t c #006D68",
-"^t c #002A2D",
-"/t c #00122D",
-"(t c #0A0019",
-"_t c #0070B6",
-":t c #00B2F7",
-"<t c #0097D7",
-"[t c #0088C7",
-"}t c #007FC0",
-"|t c #0073B7",
-"1t c #0067AA",
-"2t c #005D9F",
-"3t c #00538C",
-"4t c #005587",
-"5t c #0080BF",
-"6t c #00B4F9",
-"7t c #00C7F7",
-"8t c #0098B8",
-"9t c #006C82",
-"0t c #007BA9",
-"at c #007B90",
-"bt c #0085A1",
-"ct c #006F9B",
-"dt c #006088",
-"et c #00B7E5",
-"ft c #002E3C",
-"gt c #001B30",
-"ht c #004C68",
-"it c #004467",
-"jt c #00709B",
-"kt c #004E79",
-"lt c #00347D",
-"mt c #001F58",
-"nt c #003866",
-"ot c #004E85",
-"pt c #0061B1",
-"qt c #0050A7",
-"rt c #002C83",
-"st c #002459",
-"tt c #001E5A",
-"ut c #00073E",
-"vt c #001946",
-"wt c #002349",
-"xt c #002946",
-"yt c #003648",
-"zt c #00656F",
-"At c #00B3B0",
-"Bt c #004849",
-"Ct c #001E31",
-"Dt c #0E0500",
-"Et c #00081B",
-"Ft c #00161F",
-"Gt c #008ECA",
-"Ht c #0093C6",
-"It c #0080B7",
-"Jt c #0078B1",
-"Kt c #006BA3",
-"Lt c #006299",
-"Mt c #005D8D",
-"Nt c #005B87",
-"Ot c #0080B5",
-"Pt c #0080A8",
-"Qt c #0093B2",
-"Rt c #006987",
-"St c #007AA3",
-"Tt c #008AAE",
-"Ut c #0095B1",
-"Vt c #00779E",
-"Wt c #005078",
-"Xt c #0086AC",
-"Yt c #00CBEE",
-"Zt c #00CFDD",
-"`t c #00E2E2",
-" u c #00142D",
-".u c #000219",
-"+u c #002236",
-"@u c #002F35",
-"#u c #003339",
-"$u c #005466",
-"%u c #004960",
-"&u c #006390",
-"*u c #007CB0",
-"=u c #004F85",
-"-u c #003C78",
-";u c #001F55",
-">u c #003162",
-",u c #004B7A",
-"'u c #0066A2",
-")u c #007DD8",
-"!u c #003DB0",
-"~u c #002884",
-"{u c #002561",
-"]u c #001F5B",
-"^u c #001054",
-"/u c #00125D",
-"(u c #00256B",
-"_u c #003175",
-":u c #00336D",
-"<u c #006B97",
-"[u c #007B78",
-"}u c #001E29",
-"|u c #0A0700",
-"1u c #0F0800",
-"2u c #000D1F",
-"3u c #001E10",
-"4u c #002627",
-"5u c #00C6ED",
-"6u c #00ABD5",
-"7u c #0099C1",
-"8u c #0091B9",
-"9u c #008BB8",
-"0u c #0086B5",
-"au c #006993",
-"bu c #00698F",
-"cu c #0090B8",
-"du c #008CA9",
-"eu c #00A4C0",
-"fu c #005984",
-"gu c #00658C",
-"hu c #007B9B",
-"iu c #008498",
-"ju c #008EA5",
-"ku c #0088B1",
-"lu c #005378",
-"mu c #0099B5",
-"nu c #00959F",
-"ou c #00A3A4",
-"pu c #00293F",
-"qu c #001225",
-"ru c #001011",
-"su c #002A32",
-"tu c #003438",
-"uu c #004446",
-"vu c #005054",
-"wu c #003F4A",
-"xu c #00576E",
-"yu c #0097CB",
-"zu c #008FCF",
-"Au c #00609F",
-"Bu c #00407C",
-"Cu c #00215C",
-"Du c #00346D",
-"Eu c #003F76",
-"Fu c #0067AD",
-"Gu c #0072D1",
-"Hu c #003AA9",
-"Iu c #002887",
-"Ju c #00215B",
-"Ku c #00296D",
-"Lu c #002C7B",
-"Mu c #002584",
-"Nu c #002F8F",
-"Ou c #003E8E",
-"Pu c #004B8E",
-"Qu c #005DA1",
-"Ru c #0082C6",
-"Su c #00DDDD",
-"Tu c #00E2D8",
-"Uu c #005357",
-"Vu c #000F11",
-"Wu c #020300",
-"Xu c #000913",
-"Yu c #001B18",
-"Zu c #001C20",
-"`u c #00505E",
-" v c #00AAD5",
-".v c #00BCDA",
-"+v c #00ABCB",
-"@v c #00A3C6",
-"#v c #008CB7",
-"$v c #0086B6",
-"%v c #0078A4",
-"&v c #00668A",
-"*v c #009FBC",
-"=v c #009FB1",
-"-v c #008CA4",
-";v c #005F7B",
-">v c #005668",
-",v c #006B83",
-"'v c #006B87",
-")v c #006983",
-"!v c #0098B7",
-"~v c #00B1CC",
-"{v c #00D5E9",
-"]v c #002A30",
-"^v c #002F31",
-"/v c #00202E",
-"(v c #00373C",
-"_v c #00292B",
-":v c #001E21",
-"<v c #003A41",
-"[v c #008096",
-"}v c #007EBB",
-"|v c #003775",
-"1v c #0054B0",
-"2v c #0065E3",
-"3v c #0051CF",
-"4v c #003DAF",
-"5v c #0032A2",
-"6v c #00289B",
-"7v c #00279C",
-"8v c #0034AF",
-"9v c #0041AF",
-"0v c #00439D",
-"av c #004B95",
-"bv c #006AAC",
-"cv c #0093D3",
-"dv c #00F6FD",
-"ev c #00FDF5",
-"fv c #00EFDE",
-"gv c #00C0B4",
-"hv c #003933",
-"iv c #000C0B",
-"jv c #000011",
-"kv c #0B000E",
-"lv c #080009",
-"mv c #004460",
-"nv c #00C2EC",
-"ov c #00D0F5",
-"pv c #00B4D7",
-"qv c #0091BF",
-"rv c #0083BA",
-"sv c #0074A7",
-"tv c #006688",
-"uv c #008EAB",
-"vv c #009CAE",
-"wv c #00919A",
-"xv c #008A8C",
-"yv c #006E74",
-"zv c #005269",
-"Av c #00657C",
-"Bv c #00809B",
-"Cv c #006478",
-"Dv c #00B9E0",
-"Ev c #00BBD7",
-"Fv c #008080",
-"Gv c #002D2A",
-"Hv c #002045",
-"Iv c #000842",
-"Jv c #000F28",
-"Kv c #001928",
-"Lv c #001920",
-"Mv c #004D4D",
-"Nv c #00D0F9",
-"Ov c #00C5FC",
-"Pv c #0087BB",
-"Qv c #007EC9",
-"Rv c #0063B1",
-"Sv c #004999",
-"Tv c #003A9D",
-"Uv c #0039A9",
-"Vv c #0031A0",
-"Wv c #002A91",
-"Xv c #001F86",
-"Yv c #002691",
-"Zv c #004694",
-"`v c #0092DA",
-" w c #00BCFC",
-".w c #00BEEB",
-"+w c #00D8FC",
-"@w c #00CAE0",
-"#w c #00D8E7",
-"$w c #00FBFD",
-"%w c #00E0DD",
-"&w c #00F0E7",
-"*w c #00AFAB",
-"=w c #00161C",
-"-w c #000310",
-";w c #001E2F",
-">w c #00445D",
-",w c #008DBA",
-"'w c #00CFFB",
-")w c #00C3ED",
-"!w c #00A9D1",
-"~w c #0096C3",
-"{w c #007CB4",
-"]w c #006BA4",
-"^w c #006898",
-"/w c #006589",
-"(w c #007B97",
-"_w c #008293",
-":w c #00687D",
-"<w c #006880",
-"[w c #00A5CB",
-"}w c #008BAC",
-"|w c #009EC1",
-"1w c #00AACC",
-"2w c #00B8D7",
-"3w c #00746F",
-"4w c #004143",
-"5w c #00061B",
-"6w c #001E26",
-"7w c #004D4E",
-"8w c #00827F",
-"9w c #009563",
-"0w c #00B785",
-"aw c #00D3D6",
-"bw c #00DCFD",
-"cw c #0099C7",
-"dw c #0071AA",
-"ew c #0075CA",
-"fw c #0069DC",
-"gw c #004FC7",
-"hw c #003BB8",
-"iw c #0037BF",
-"jw c #0036D2",
-"kw c #0035D3",
-"lw c #0034C7",
-"mw c #0039A2",
-"nw c #003C8E",
-"ow c #006AAA",
-"pw c #009AAC",
-"qw c #006273",
-"rw c #004E64",
-"sw c #00A0C2",
-"tw c #00E1FA",
-"uw c #00C7CD",
-"vw c #007273",
-"ww c #005659",
-"xw c #003D42",
-"yw c #002125",
-"zw c #002829",
-"Aw c #003C39",
-"Bw c #004E4A",
-"Cw c #007F79",
-"Dw c #00D4E7",
-"Ew c #00DFF7",
-"Fw c #0099CD",
-"Gw c #004353",
-"Hw c #007597",
-"Iw c #0092BD",
-"Jw c #006D82",
-"Kw c #004364",
-"Lw c #002749",
-"Mw c #00294C",
-"Nw c #003757",
-"Ow c #006E7C",
-"Pw c #009A9E",
-"Qw c #004222",
-"Rw c #003813",
-"Sw c #004925",
-"Tw c #00A26F",
-"Uw c #0087BD",
-"Vw c #0074BA",
-"Ww c #0065C2",
-"Xw c #0060DC",
-"Yw c #0059F2",
-"Zw c #004CF2",
-"`w c #0043EA",
-" x c #003FDB",
-".x c #0048D0",
-"+x c #00579D",
-"@x c #00CCCD",
-"#x c #00A7AA",
-"$x c #00414A",
-"%x c #001424",
-"&x c #001230",
-"*x c #004D71",
-"=x c #00D5FA",
-"-x c #00E6EE",
-";x c #00AAB2",
-">x c #00848C",
-",x c #007C83",
-"'x c #008F95",
-")x c #00E5DF",
-"!x c #00EEEE",
-"~x c #00DEF6",
-"{x c #00B0EB",
-"]x c #0090CC",
-"^x c #007EB6",
-"/x c #0073A9",
-"(x c #00719A",
-"_x c #006288",
-":x c #005572",
-"<x c #0085B9",
-"[x c #009DDB",
-"}x c #00A4E2",
-"|x c #0069A7",
-"1x c #00635C",
-"2x c #000B00",
-"3x c #001000",
-"4x c #005F4C",
-"5x c #008FCC",
-"6x c #005CA8",
-"7x c #0063BE",
-"8x c #006AE2",
-"9x c #0062E8",
-"0x c #0055E6",
-"ax c #0057DE",
-"bx c #0069B7",
-"cx c #009BDB",
-"dx c #00C2BF",
-"ex c #007476",
-"fx c #00152D",
-"gx c #000125",
-"hx c #00C5E1",
-"ix c #0098AC",
-"jx c #00ABBF",
-"kx c #00C6DA",
-"lx c #00C2CD",
-"mx c #00F2FD",
-"nx c #00D6FF",
-"ox c #00AFFB",
-"px c #0085C3",
-"qx c #0070A4",
-"rx c #006F9F",
-"sx c #00739E",
-"tx c #006E94",
-"ux c #0071A6",
-"vx c #00415C",
-"wx c #0093D2",
-"xx c #00A1E5",
-"yx c #00ACEF",
-"zx c #00BCFB",
-"Ax c #00A9D9",
-"Bx c #00A0E1",
-"Cx c #0090C8",
-"Dx c #00A8D3",
-"Ex c #005552",
-"Fx c #000E13",
-"Gx c #00151A",
-"Hx c #00494E",
-"Ix c #00BAC0",
-"Jx c #00DDE6",
-"Kx c #00E0F2",
-"Lx c #0086CF",
-"Mx c #005FAC",
-"Nx c #00469A",
-"Ox c #0062B6",
-"Px c #007FD2",
-"Qx c #00C2C9",
-"Rx c #00717F",
-"Sx c #001132",
-"Tx c #004866",
-"Ux c #00C1E6",
-"Vx c #00EBFC",
-"Wx c #009CC2",
-"Xx c #0098BA",
-"Yx c #00C9F4",
-"Zx c #00C7E3",
-"`x c #00C9D8",
-" y c #00CCFB",
-".y c #00C8FF",
-"+y c #00AAFF",
-"@y c #007DBA",
-"#y c #00729E",
-"$y c #007094",
-"%y c #006282",
-"&y c #005271",
-"*y c #00507D",
-"=y c #0087C2",
-"-y c #0098DC",
-";y c #009BD9",
-">y c #00B2F1",
-",y c #00D5E1",
-"'y c #00AEF5",
-")y c #00B0F2",
-"!y c #008EB4",
-"~y c #00B5D4",
-"{y c #007D82",
-"]y c #00132D",
-"^y c #00092D",
-"/y c #001B39",
-"(y c #005774",
-"_y c #00BFE7",
-":y c #00C2FA",
-"<y c #00B9F4",
-"[y c #00BFFD",
-"}y c #00C5E9",
-"|y c #009CC7",
-"1y c #003047",
-"2y c #008496",
-"3y c #00FCEA",
-"4y c #00F7F7",
-"5y c #00B9F7",
-"6y c #00BEF9",
-"7y c #00C0F6",
-"8y c #00B6E7",
-"9y c #0092C0",
-"0y c #0081B7",
-"ay c #0096E9",
-"by c #007BA8",
-"cy c #00506E",
-"dy c #005784",
-"ey c #0089CB",
-"fy c #008FD3",
-"gy c #0093CF",
-"hy c #00ADEB",
-"iy c #00ACF1",
-"jy c #009DD8",
-"ky c #005D82",
-"ly c #004971",
-"my c #005477",
-"ny c #00E1FC",
-"oy c #00ACE2",
-"py c #0089B7",
-"qy c #0096A9",
-"ry c #00E5E9",
-"sy c #00F2E6",
-"ty c #00FAE0",
-"uy c #00BCF3",
-"vy c #007DB5",
-"wy c #0085C4",
-"xy c #00B2FD",
-"yy c #00B6F6",
-"zy c #00B4E7",
-"Ay c #00ABE5",
-"By c #009AD7",
-"Cy c #006CAB",
-"Dy c #0087CE",
-"Ey c #008CC7",
-"Fy c #005772",
-"Gy c #00415D",
-"Hy c #005F93",
-"Iy c #004A6E",
-"Jy c #0073A7",
-"Ky c #007EB0",
-"Ly c #0089B9",
-"My c #00B6E1",
-"Ny c #00C4EE",
-"Oy c #00D6FA",
-"Py c #00AEF2",
-"Qy c #0097D0",
-"Ry c #0087A9",
-"Sy c #00E1FB",
-"Ty c #00E4F8",
-"Uy c #00CBF0",
-"Vy c #00F3FD",
-"Wy c #00E6E5",
-"Xy c #00FFF6",
-"Yy c #00BEC1",
-"Zy c #007899",
-"`y c #0083BB",
-" z c #008AC3",
-".z c #0090C7",
-"+z c #00A2DB",
-"@z c #00A7D7",
-"#z c #00B3E0",
-"$z c #009DDA",
-"%z c #0088C5",
-"&z c #0095DA",
-"*z c #0079B0",
-"=z c #007EA9",
-"-z c #005272",
-";z c #00759C",
-">z c #0090BE",
-",z c #009BC9",
-"'z c #00C7FC",
-")z c #00C9FD",
-"!z c #00A5DB",
-"~z c #0099D3",
-"{z c #009AD8",
-"]z c #0091C9",
-"^z c #0087B7",
-"/z c #007FA5",
-"(z c #007794",
-"_z c #00839C",
-":z c #00B1CB",
-"<z c #00CBDB",
-"[z c #00CDD0",
-"}z c #00FDFA",
-"|z c #00F3F5",
-"1z c #00F6FB",
-"2z c #00EDFA",
-"3z c #00D4E9",
-"4z c #00AFC6",
-"5z c #009CB1",
-"6z c #009CAF",
-"7z c #00A4B4",
-"8z c #00B2BF",
-"9z c #00B9B9",
-"0z c #00D7E4",
-"az c #00EEF9",
-"bz c #00E8ED",
-"cz c #00CCD7",
-"dz c #007B8B",
-"ez c #006D8D",
-"fz c #007EAE",
-"gz c #008DBF",
-"hz c #00A9E1",
-"iz c #00ABDD",
-"jz c #00B0DF",
-"kz c #00C6F8",
-"lz c #00C4FF",
-"mz c #00B9FB",
-"nz c #0092CC",
-"oz c #007FB9",
-"pz c #008AC6",
-"qz c #006F98",
-"rz c #004760",
-"sz c #006B91",
-"tz c #007199",
-"uz c #0091C5",
-"vz c #00B2ED",
-"wz c #00B2E2",
-"xz c #00B2DD",
-"yz c #0094C0",
-"zz c #0082B0",
-"Az c #0085BB",
-"Bz c #0080B9",
-"Cz c #0077AD",
-"Dz c #007AAD",
-"Ez c #00709E",
-"Fz c #006D96",
-"Gz c #005C75",
-"Hz c #006B84",
-"Iz c #009ABE",
-"Jz c #00FFF0",
-"Kz c #00F7EB",
-"Lz c #00D0D2",
-"Mz c #00AEBA",
-"Nz c #00A3B3",
-"Oz c #007C91",
-"Pz c #008DA9",
-"Qz c #00C4CB",
-"Rz c #00A3AC",
-"Sz c #009598",
-"Tz c #00D0CC",
-"Uz c #00EDE2",
-"Vz c #00E0E5",
-"Wz c #0076A5",
-"Xz c #004164",
-"Yz c #00648A",
-"Zz c #00688D",
-"`z c #0083AF",
-" A c #0089B6",
-".A c #008FB9",
-"+A c #009DC8",
-"@A c #00B3E9",
-"#A c #005287",
-"$A c #007BAB",
-"%A c #00667F",
-"&A c #005275",
-"*A c #004159",
-"=A c #003C52",
-"-A c #004863",
-";A c #00587D",
-">A c #00648D",
-",A c #007092",
-"'A c #006C94",
-")A c #006E9E",
-"!A c #006393",
-"~A c #005C88",
-"{A c #004D72",
-"]A c #00496C",
-"^A c #004664",
-"/A c #004660",
-"(A c #00B8DF",
-"_A c #00E0EB",
-":A c #00F6F6",
-"<A c #00C7CC",
-"[A c #009099",
-"}A c #009AAD",
-"|A c #009AA5",
-"1A c #008384",
-"2A c #00C8BE",
-"3A c #00F7E3",
-"4A c #00E8D2",
-"5A c #00EEE0",
-"6A c #00EBE9",
-"7A c #0089C0",
-"8A c #003B6C",
-"9A c #002C4C",
-"0A c #004F6F",
-"aA c #0077A2",
-"bA c #007BA4",
-"cA c #0086AE",
-"dA c #0083AA",
-"eA c #007290",
-"fA c #006A87",
-"gA c #007BA3",
-"hA c #0096C9",
-"iA c #00677D",
-"jA c #005A6D",
-"kA c #005B85",
-"lA c #00354E",
-"mA c #003B56",
-"nA c #00486B",
-"oA c #004362",
-"pA c #004661",
-"qA c #004965",
-"rA c #005476",
-"sA c #005478",
-"tA c #004B6D",
-"uA c #00486C",
-"vA c #002943",
-"wA c #001A34",
-"xA c #00213B",
-"yA c #002D4A",
-"zA c #003452",
-"AA c #004165",
-"BA c #005173",
-"CA c #007495",
-"DA c #009CC0",
-"EA c #00AFD7",
-"FA c #0093B0",
-"GA c #00819A",
-"HA c #0091AD",
-"IA c #009A9A",
-"JA c #00B5AF",
-"KA c #00EFEC",
-"LA c #009BCF",
-"MA c #005785",
-"NA c #003867",
-"OA c #002E62",
-"PA c #00285C",
-"QA c #00102C",
-"RA c #00233D",
-"SA c #003554",
-"TA c #004469",
-"UA c #00496E",
-"VA c #004E71",
-"WA c #005576",
-"XA c #004F68",
-"YA c #004358",
-"ZA c #004C66",
-"`A c #005577",
-" B c #00486A",
-".B c #00304C",
-"+B c #00273B",
-"@B c #00192E",
-"#B c #00274A",
-"$B c #002F57",
-"%B c #003860",
-"&B c #00456E",
-"*B c #00557E",
-"=B c #00B7CE",
-"-B c #00A0BA",
-";B c #005F8E",
-">B c #003D6B",
-",B c #002C64",
-"'B c #002D72",
-")B c #002770",
-"!B c #00112B",
-"~B c #001C34",
-"{B c #002736",
-"]B c #002532",
-"^B c #001620",
-"/B c #000D18",
-"(B c #000514",
-"_B c #08000B",
-":B c #0E000F",
-"<B c #08000D",
-"[B c #000826",
-"}B c #001C44",
-"|B c #002B5A",
-"1B c #001041",
-"2B c #000B3B",
-"3B c #00153E",
-"4B c #003051",
-"5B c #006AAD",
-"6B c #00487D",
-"7B c #00316C",
-"8B c #002F6D",
-"9B c #003478",
-"0B c #003278",
-"aB c #002B61",
-"bB c #000C1B",
-"cB c #00050E",
-"dB c #000718",
-"eB c #0B0002",
-"fB c #0B0005",
-"gB c #00011B",
-"hB c #001234",
-"iB c #001B41",
-"jB c #00133A",
-"kB c #02002E",
-"lB c #09002F",
-"mB c #000D31",
-"nB c #00233F",
-"oB c #002B47",
-"pB c #003C62",
-"qB c #002855",
-"rB c #002452",
-"sB c #00245C",
-"tB c #002B71",
-"uB c #002A7E",
-"vB c #001F50",
-"wB c #001126",
-"xB c #00060D",
-"yB c #050900",
-"zB c #111100",
-"AB c #131100",
-"BB c #030100",
-"CB c #0E0C00",
-"DB c #130900",
-"EB c #000B29",
-"FB c #00102E",
-"GB c #001E36",
-"HB c #060002",
-"IB c #050006",
-"JB c #001123",
-"KB c #001845",
-"LB c #001843",
-"MB c #001742",
-"NB c #001C4F",
-"OB c #001D52",
-"PB c #001A47",
-"QB c #001A4B",
-"RB c #001948",
-"SB c #001C5B",
-"TB c #001865",
-"UB c #000D36",
-"VB c #000C2D",
-"WB c #000722",
-"XB c #050100",
-"YB c #000301",
-"ZB c #0A0800",
-"`B c #070600",
-" C c #090400",
-".C c #001830",
-"+C c #000407",
-"@C c #000307",
-"#C c #000317",
-"$C c #000934",
-"%C c #000F45",
-"&C c #001752",
-"*C c #00184D",
-"=C c #001649",
-"-C c #001957",
-";C c #001155",
-">C c #00104F",
-",C c #000A45",
-"'C c #002443",
-")C c #000E18",
-"!C c #000508",
-"~C c #00072E",
-"{C c #001342",
-"]C c #00103B",
-"^C c #000B2D",
-"/C c #001C31",
-"(C c #00172A",
-"_C c #000209",
-":C c #00051A",
-"<C c #00072C",
-"[C c #00092F",
-"}C c #000F36",
-"|C c #00122F",
-"1C c #000E2B",
-"2C c #000B28",
-"3C c #001C33",
-"4C c #000614",
-"5C c #000B27",
-"6C c #00203A",
-"7C c #000A12",
-"8C c #000916",
-"9C c #00041A",
-"0C c #00071E",
-"aC c #00080D",
-"bC c #000709",
-"cC c #040300",
-"dC c #000003",
-"eC c #080200",
-"fC c #040009",
-"gC c #02001C",
-" ",
-" ",
-" . ",
-" + @ ",
-" # $ % ",
-" % $ $ & ",
-" * & & * = ",
-" - ; - ; > , ' ",
-" ) ! ~ ~ { { ] ] ^ ",
-" / ( _ _ : < [ } | 1 2 3 4 5 . = = = = = = = ",
-" = = = = = = 6 7 8 9 0 a b c d e f _ g h i j k l l m = = = = = = = = = ",
-" = = = = = = = = = = n o p q r s t u v w x y z A B C D E F G H l I J = = = = = = = = = = = ",
-" = = = = = = = = = = = = = K L M N O P Q R S T U V W X Y Z ` M ...+.@.#.$. = %.&.*.&.=. = = = = = = = = = = ",
-" = = = = = = = = = = = = -.A ;.>.,.'.).S !.~.{.].^./.(._.:.X <.[.u }.|.1.2.3.g 4.5.6.%.*.*. = = = = = = = ",
-" = = = = = = = = = = = = = = 7.8.9.0.S a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.X p.q.r. .s.t.< u.{ v.w.x.y.= = = = = = = = ",
-" y.. z.A. *.x.B.C.D.E.E.> ; * F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.S Y.Z.`. +.+++@+#+p $+E %+&+*+=+6., = = @ l -+z.;+>+ ",
-" ,+m '+)+ !+~+{+]+^+/+(+_+u.:+<+[+}+|+1+2+3+4+5+6+7+8+9+0+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+u.&+E.s+v.6.= t+u+v+ w+x+y+z+A+ ",
-" ,+B+u+C+ D+E+6.&+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+`+ @.@+@@@#@$@%@&@*@=@-@;@>@,@'@)@!@7.:+~@{@]@^@/@(@_@:@<@[@}@x+|@'+1@ ",
-" 2@E.3@_@4@, , 4@5@6@7@8@9@0@a@b@c@d@e@f@g@h@i@j@k@l@m@ n@o@p@q@r@s@ t@u@v@w@x@y@z@A@B@C@D@E@F@*+*+G@H@( !@7 I@J@K@L@M@N@O@P@- ",
-" Q@R@S@T@U@V@W@X@Y@Z@`@[+ #.#+#@###Z $#%#&#*#=#-#;#>#,#'# )# !#~#{#]#^#/#(#_#:#<#[#+.}#|#{ 1#-.2#3#4#5#6#7#8#9#0#a#b#c#d#e# ",
-" f#g#h#i#j#k#l#m#n#o#p#q#r#i s#t#u#v#w#x#y#z#A#B#C#D#E#F#G# H#I#J#K#L#M#N#!#O#P#Q#R#S#T#U#V#W#X#Y#Z#`# $.$+$@$#$$$%$&$*$=$ ",
-" -$;$>$,$'$)$!$~${$]$^$/$($_$:$<$[$}$|$1$2$3$4$5$6$7$8$9$0$a$b$c$ ^#d$e$f$g$h$i$2$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z$A$B$C$D$E$F$G$H$I$ ",
-" J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$`$ %.%+%@%#%$%%%&%*%=%-%;%>%,%'%)%!%~%{%]%^%/%(%_%:%<%[%}%|%1%2%3%4%5%6%7%8%9%0%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r% ",
-" s%t%]$u%v%w%x%y%z%A%-#B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%P%Q%R%S%T%U%V%W%X%Y%Z%`% &.&+&@&#&$&%&&&*&=&-&;&>&,&'&)&!&~&{&]&^&/&(&_&:&<&[&}&|&1&2&3&4&5&6&7&8&9&0& ",
-" a&`$b&c&d&e&f&g&h&i&j&k&l&m&n&o&p&q&r&s&t&u&v&w&x&y&z&A&-&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z&`&,& *.*+*k%@*#*$*%*&***4%=*-*`+;*>*,*'*)*!*~*{*]* ",
-" ^*G%/*(*_*:*<*[*|%}*|*1*2*3*4*5*6*7*8*9*0*a*b*c*d*e*f*g*h*i*j*k*l*N%m*n*o*p*q*r*s*t*u*v*w*x*y*z*A*B*C*D*E*F*f$=*G*A&H*I*J*K*i$ L*M*N*O*P*i$Q*R*S*T*U*V*W*X*Y*Z* ",
-" `* =.=+=@=#=$=%=@%&=*===-=;=>=,='=)=!=~=Z&{=]=^=/=(=_=:=<=[=}=|=w*1=l*2=k*3=4=5=6=7=8=9=0=a=b=}&c=d=e=f=g=h=i=j=k=l=m=n=o=p=Y+ q= r=s=t=u=v=w=x=y=z=A= ",
-" B=C=D=E=F=G=H=I=J==& ***w*}%K=L=M=N=O=P=Q=R=S=T=U=V=Q@i=W=X=Y=Z=`= -.-+-H#@-#-$-%-&-*-=---;->-,-H=c='-)-!-~-{-]-^-/-(-J=A&_-:- }&I=<-[-}-|-1-2-3-^-4- ",
-" 5-6-7-8-+-9-.-5$$%J=A&4%}%0-=&a-b-c-d-'%e-f-g-h-i-j-k-l-m-n-o-p-!&q-r-s-t-u-v-w-x-y-z-A-B-y-C-D-E-F-G-H-I-9@J-K-l-L-M-N-O-P-Q-R-S- T- I=U-V-W-X-Y-Z-`- ;.;+; ",
-" @;#;$;%;&;*=c= $*0-|%*;=;P$-;;;>;,;';);!;~;{;];^;#+/;(;_;:;<;[;};|;1;2;3;4;5;6;7;8;9;0;a;b;c;d;e;f;g;h;i;j;[=k;l;m;n;o;p;q;r;s;t;u;v;w;x; y;1=0-z;A;B;C;D;E;F;G; ",
-" H;I;J;K;L;M;w* N;O;P;Q;R;S;T;U;V;W;X;Y;Z;`; >.>+>@>#>$>%>v*&>*>=>->;>>>,>'>)>!>~>{>]>^>/>(>_>:><>[>}>|>1>2>3>4>5>6>7>8>9>0>a>b>c>d>e>f>g>h>i> j>k>l>f%m>n>o>`-p>q> ",
-" r>s>t>u>v>[*w>{= x>{&y>z>A>B>r>C>D>E>F>G>H>I>J>K>L>==M>N>#*r-O>P>Q>R>S>T>U>V>W>X>Y>Z>`> ,.,+,@,#,$,%,3=3=I#&,*,=,-,;,>,,,',),!,~ ~,{,],^,/,(,_,:, <,[,},|,1,2,3,4,5,6,7,8,9, ",
-" 0,a,b,c,d,e,f,[,%& g,=$h,i,j,k,l,m,n,o,p,E p,q,r,s,t,u,$*v,w,x,y,z,A,B,C,D,E,O@F,G,H,I,J,K,L,M,N,O,P,Q,R,S, T,w>U,V,W,X,Y,Z,`, '.'+'u+ @'#'$'%'&'&'I#*'='-';'>',''')'!'~'{']' ",
-" ^'/'('_':'[>A&l* <'['}'|' 1'2'3'4'5'6'7'8'9'0'a'b'c' d'e'f'g'h'i'_ ( j'k'e>l'm'n'o'` }.M p'q'r's't'u'v'U-#%w'x'y'z'u+z.l A'B'.'C' D'E'F'G'@%*=H'I'J'K'L'M'N'O'P'Q'R'S'T' ",
-" U'V'W'X'Y'Z'`' ).)r=J= +)@)#)$) %)&)p,*)F =)-);)>),)')))!)~){)])^)/)()s#_):)<)[)f@})|)1)2)3)4)v 5)6)7)8)9)0)a)b)c)d)e)f)y.g) h)i) j)W=k)l)|%.-m)n)o)p)-#q).=r)s)t)u)v)w)x) ",
-" y)z)A)B)C)D)E)F)G)H)I)J)%% K)L)M)N) O)^)l'P)Q)R)S)T)U)V)W)X)Y)Z)`);$ !.!+!@!#!$!%!&!*!=!)>-!;!>!,!'!)!1)!!~!{!]!Z%^!/!(!~ _! :!D <! [!}!|!1! 2!3!4!5!6!7!u'8!9!0!J;a!b!c!d!e! ",
-" f!g!h!i!j!k!l!m!x=Z'n!o!p![>q! r!s!t!u! v!])w!x!y!z!A!/,B!C!D!<+E!F!G!H!I!J!K!L!M!N!O!P!Q!R!S!T!U!V!W!X!Y!Z!`!u# ~.~+~@~#~$~| %~ &~*~=~ n--~;~>~ ,~I='~]%)~!~~~{~]~^~c= /~(~_~ ",
-" :~<~[~}~|~1~2~3~4~5~-#6~7~8~9~0~ a~t!b~c~ i G!d~e~f~g~h~T@i~j~@.<+k~l~m~A Z n~'>o~M.p~q~r~s~t~u~v~w~x~y~z~A~B~C~D~E~F~G~H~I~: (+J~ ..K~L~M~ [!W@N~O~P~ $*Q~R~S~T~U~V~W~X~ [%Y~Z~ ",
-" `~G~ { .{+{@{#{${%{&{[-*{={-{;{>{,{'{){!{~{ {{h) ]{^{/{({_{:{<{[{}{+.|{1{2{3{4{5{6{7{8{9{0{a{b{c{d{e{f{g{h{i{j{k{l{m{n{o{p{< ~ q{}+r{s{t{u{v{w{x{y{z{A{B{C{D{ &=E{F{G{H{I{J{K{L{M{N{O{P{Q{R{ ",
-" S{T{ U{V{W{X{3-Y{Z{`+`{ ].]+]C,}'@]#]' #]|# J-$]%] Y)&]*]o,=]-];]>],]'])]!]~]{]]]^]/](]_]:]<][]}]|]1]2]3]4]5]6]7]8]9]0]a]b]c]s#d]Y)e]f]C,g]h]9]i]j]k]l]m]^'n]^! A&o]p]q]r]U$s]t]u]v]a!a)w]x]y] ",
-" z]A] B]C]D]E]F]Z-G]H]I]J]K]L]M]N]j'O]P]Q]q{R]S]T]U] D.V]U@W]X]Y]Z]`] ^.^+^@^#^$^%^&^*^=^-^;^>^,^'^)^!^~^ {^]^^^/^(^_^Q>:^<^[^V>}^|^1^2^3^4^h]5^6^7^8^9^0^G$a^b^c^ I#d^e^f^g^h^i^])j^k^l^m^n^o^ ",
-" p^q^r^ s^t^d+u^v^w^X*Y'x^I]c!y^z^A^B^C^D^) E^F^G^H^I^J^K^L^ M^N^u!O^P^Q^R^S^T^U^V^W^X^Y^Z^`^ /-^./a;+/@/#/$/%/&/*/=/-/;/>/,/'/)/!/~/{/]/^///+'L^(/_/:/ </[/}/|/1/2/3/4/5/6/7/8/9/0/a/.%b/i=c/d/e/f/g/h/i/ ",
-" j/k/l/m//'n/*@o/g@p/q/r/s/t/u/J%v/w/e'x/%]y/z/l~A/B/C/D/E/F/E.G/H/I/m'J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/`/ (.(+(@(#($(%(&(*(=(-(;(p/>(,('()(!(~(H^{(h)F ]( ^(/(((_(U$:(<([(}(|(1(2(3([=4(5(6(M@7(8(9(0(a(b(c( ",
-" d(e(f(g(h(i(j(}$k(l(0)m(n(o(p(v) q(r({(s(r#t( Y)I^u(v(w(]+F x(y(z(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(+(Y(Z(`( _v)._+_@_#_N@:=X>Q@_ $_ %_&_*_=_-_;_>_ ,_ '_)_!_~_{_]_b ^_/_(___:_ ",
-" <_[_}_|_1_2_3_4_5_6_7_8_9_0_a_ b_c_d_e_f_d~ g_h_i_~ j_@]k_l_m_n_o_p_q_r_s_t_u_v_w_x_y_z_A_B_C_o+D_E_B@F_G_H_I_J_K_L_1;M_N_O_P_Q_R_S_T_g#U_V_c/D W_X_Y_3_Z_`_ :.: +:@:B!}!l##:$:%:&:*:=: ",
-" -:;:>:,:':):!:~:{:]:^:/:(: _:::<:[:}:|:1:X@O@c>2:3:4:5:6:7:8:9:k;0:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:A:B:C:D:E:F:G:H:g#I:V_J:K:L:M:N:O:P: ';Q:j=)!R:S:T:U:V:W: ",
-" X:Y:Z:`: <.<S++<@<~_#< $<%<&<S@],[ *<|#=)3:=<-<#~;<><e$,<d$'<)<!<~<{<]<^</<(<_<s.C t.:<<<[<}<|<1<2<3<4<5<6<7<8<9<0<a<b<o)c<d<e<f<g<h<i<j<k<l<]*m<n< o< p< q<r<s<t<u<v<w<x<y< ",
-" z<A<B<C<D<E<F<G<t'H< I<J<K<X>L<M<N<O<N)P<Q<R<S<T<U<V<W<X<Y<Z<`< [.[+[@[#[8.$[m:%[ &[*[=[-[;[>[,['[)[![~[{[][^[/[([_[}=:[<[+{[[}[|[1[2[3[ 4[ 5[ 6[7[ 8[9[0[a[b[c[d[z ",
-" e[f[g[h[i[j[k[l(Y' l[m[n[o[p[q[r[s[t[u[v[w[!<x[g&y[z[A[A[/&B[ C[D[E[F[G[ H[I[P]_ c/J[>;d%l$K[L[M[N[O[P[Q[R[S[T[U[b/V[W[2#X[Y[Z[ `[ }w' #~U#.}%< +}@}#}$}b[%}&}T *} ",
-" =}-};}>},}'})}!} ~}C@{} ]}^}/}(}_}:}<}[}}}|}1}2}3}4}5}6}7}8}9}0}a}b}c}d}e}f}g} h}i}j}y/k}l}m}n}5}o}p}q}r}s}t}u}v}T[w}x}y}{_5'q,J,z}A}B} C}D}E}F}G}' .'H} I}J}K}L}M}&}/^M!N} ",
-" O}P}Q}R}S}T}U}V}W} X}$.Y}3#Z} `} |.|+|n$A>@|#|$|%|&|*|=|-|;|>|,|'|)|!|h/~|{|]|^|/|(|_|:|<|[|{(}|||2 1|R]T)2|3|4|5|6|7|8|9|0|a|b|c|d|e|f|g|h|+._)i|Z>j|k| %%l|m|(/(/H,n|o| p|q|h{r|s|t|u|v|w| ",
-" x|y|z|A|B|C|D|E| Y)F|m'G|H|I| J|K|L|s_ M|N|O|P|Q|.:R|S|T|U|V|d;)|W|X|Y|Z|`| 1.1+1@1#1K,$1(/%1],&1*1=1-1;1>1,1'1)1!1~1{1]1^1~%/1(1_1:1-@<1(_l- ![1}1|111 %%21G>31=<4151 61718]819101a1b1c1 ",
-" L~d1e1f1g1h1i1j1k1 g=l1X}m1n1 o1 p1q1r1d+s1 t1u1v1w10}x1y1z1A1Y~y1B1C1D1j&E1F1G1D~H19 M<<{s!I1J1K1X]L1M1N1O1P1Q1S|R1S1T1U1V1W1X1Y1Z1`1 2.2D_A m:+2@2#2$2 %2&2*2=2 -2;2>2,2D~'2)2r:!2 ",
-" ~2{2]2^2/2(2_2:2<2 [2}2|21222 324252627282 9202a2b2c2d2e2f2y1g2,12}h2i2j2k2l2m2n2o2 p2q2r2s2t2u2v2z;[;,<w2x2S1y2z2A2B2B2C2D2E2F2G2H2I2J2I22_K2L2M2 V%N2O2P2Q2R2'2S2z|T2 ",
-" e@U2V2W2X2Y2Z2`2 3.-m=.3 +3@3#3$3 =|%3&3*3=3-3;3>3,3'3)3!3~3{3S=]3w}^3/3 I~(3_3:3<3[3}3|313233343536373839303a3b3c3d3e3f3g3h3M i3j3k3l3m3 n3,( o3!>p3q3r3s3t3u3 ",
-" v3w3o~x3y3z3A3B3C3D3}(E3 F3G3H3I3J3 [&K3L3M3^%N3O3P3Q3R32}S3P{>1T3U37%n] V3W3<(X3Y3Z3`3[; 4.4+4@4#4$4%4&4*4=4-4;4>4,4'4)4!4~4{4]4U2+!^4/4 {= (4_4 :4<4[4Y.,>}4|4 ",
-" 14243444546474849404a4 b4c4d4e4f4g4 h4 i4)~j4k4,313l4m4n4o4p4q4r4s4t4Y)u4A!v4w45,x4y4z4{|A4X%B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4$:#:S4T4U4@_}% V4W4 X4I.Y4Z4`4 5.5+5 ",
-" @5#5$5%5&5*5=5-5 ;5 >5,5'5)5!5~5{5]5 ^5 /5(5_5:5<5[5n4}5|5152535K$h=y/::455565(/75859505^1a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5A5B5 C5D5 N:o+E5F5j{n~4)v5 ",
-" G5H5I5J5s~K5L5M5 N5 O5P5Q5-5R5S5T5U5V5W5 X5r:Y5Z5`5 6R[.6+6@6#6$6%6$~&6 *6=6-6;6S#l->6~*,6'6)6=$H!~2!6~6{6]6^6/6(6_6:6<6[6}6|6162636v 46566676869606 a6b6 c6d6 ^F4e6s|f6g6h6 ",
-" i6j6k6l6m6n6o6p6 q6 r6s6t6u6v6w6x6y6>-z6A6B6C6D6 E6 F6G6H6I6J61{$!K6L6M6N6O6P62:^@ Q6R6S6m~M<T6U6V6W6X6Y6R#!6Z6`6$+` 7.7+7@7#7$7%7&7*7.7=7>.-7;7S4'/>7,7'7)7 !7 ~7{7]7d}^7/7(7_7:7 ",
-" <7[7}7|717273784 47 576777E(879707a7b7c7d7e7f7g7h7i7O#j7k7V}l7m7_|n7o7p7q7r7s7t7u7(/i_v7 w7U#u.2:x72:y7z7A7B7C7K, .D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7f3)!T7U7V7W7X7Y7^# Z7h! `7 8h5.8+8@8#8$8d %8 ",
-" H+&8[7*8=8-8;8>^>8 ,8'8 )8!8v:~8{8]8^8/8(8k[_8:8<8[8}8T5>4|818Z:28384858687888U298N2V3c_08a8 b8c8d83:e8f8g8h8i8j8[|k8l8m:9( m8<#n8o8,^p8q8r8s8t8u8t3E4N i3v8w8x8y8z8A8 B8C8 D8E8.5F8G8H8I8J8K8_ V# ",
-" G}L8d@[7M8N8O8<]P8Q8 R8 */S8T8U8V8W8X8S(Y8Z8`8 9.9+9@9k@#9$9%9&9*9=9-9 ;9>9o~,9'9)9!9~9{9]9^9/9 (9_9:9 <9[9}9 |919S7(_ 29>[394959697989P.9909a9b9c9d9e9f9g9h9i9 j9k9 l9:4m9J8n9o9p9q9r9E ~@s9 ",
-" !{t9u9v9w9x9y9z9A9B9C9 D9 E9F9G9H9I9J9K9L9M9N9O97#P9Q9R9S9T9U9V9W9X9Y9 Z9`9P 91 0.0+0t;@0}@#0{ $0%0&0 *0<{ =0-0;0 >0,0F3'0)0!0*/~0{0]0^0/0(0_0u<:0<0[0}0|0 1020 85304050l6607080v590F}G.'+00 ",
-" a0{{b0c0d0e060f0g0h0i0j0 k0 l0m0n0o0p0q0r0s0~2,]t0u0v0w0x0y0z0A0B0C0D0 E0F0E_ G0%6}:H0I0A'z.J0K0L0 31g M0 2+N0O0P0 Z4Q0y8R0S0T0U0V0W0X0Y0Z0`0|4 a.a+a@a#a$a %a&a 56*aK8=a-a;a>a,a'aD4]))a ",
-" L+!@~6_0~4!a~al7M0{a]a^a/a (a_a :a<a[a}a|a1a2a3a7 7 }+4a5a6a7a8a9a0aaabaca daeafa J@M@ga3:ha iajaka O@lamanaoa 5p9v9 paqarasaV5tauavawaxayazaAaBaCaDaEaFaGaHa Ia&a JaKaLaMaNaOaPaQaU:Ra8( ",
-" SaV]r+TaUaVaWaXaYaZa`a b.b+b @b#b P8$b%b&b*bB|=b-bA ;b.#>b,b'b)b!b~b&/{bT+]b^b t#/b(b_b :b<bx([b< }b3@) |b1bV@i'2b3b4b5b.8&~J26b c[S t87b8b9b0babbbcbdbebfbgbhbibjbkblbmbnbA& obpb qbrbsbtbubvbwbxbybT7 ",
-" c~3.zbG5AbBbg0CbqaDbEbFb GbHb IbJbKbLbMbNbObPb_7a S#QbRbSbTbUbV5%9VbWbXbYb ZbM `b.. c.c+c@c#c$cF7 %c5@&cH@}#*c=c-c.|;c>c4)Ab,c .'c)c!c~cya{cbb]c^c/cu-(c_c:c<c[c}cM!|c1c2c!5==3c 4c v0,55c6cZaZ4347c8c ",
-" L@9c0cQ4acbcccYbdc-^=( D*ec fcT+(]gchcicjck6kcz 75{_lcmcncocpcqcrcsctcucF_vc]4wcxcycn-zcAcBcCcDc7 Ec Fc[+Gc^)[)HcIcJc9:KcLcMc~aNcg6OcPcH6QcIbRcScTcUcVcWcXcYcZc`c d78.d+d@d#d$d[,%d&d*d=d-d ;d>d,d'dt|)d!dZ58c ",
-" =~0c|9~dq3~.{d/]]d^d /d (d_d:d=5<d[d}d|d1d2d(_3d4d5d6d7d8dV5M59d0dad#!bd1<!2cdddedfdgdhdidG0@.E7G!jdkd5@&]i'ldmdndodpdqd|}rdu#k{}c!c):B~sdtdudvdwdxdydzdAdBdCdDdEdFd=!GdHdu=|%[,IdJd#&KdLd MdNdN!OdPdQdRdSd ",
-" 40Td5bUdVdWdXdYdZd`d#3 e 61.e+e@e#e$e%e&e a1.*e=e-e;e>e,e'e~#)e!e~e2)Pb{et ^;]e^e/e(e_e:e<e[e}e|eG|1e2e#03e4ej#5e6e7e8e9e0eaebecedeeefegeheiejekeleme}0^dneoepeqereseteueve.)weS=xeyezeAeBeCe DeEe)dFeGeHeP+Ie ",
-" A .5JeR KeLeMeNeOePe QeRe SeTeUeVeWeXeYeJ6;.Ze`e f.f+f@f#f$f +f%f&fv5*f=f-f;f>f,f'f)f!f~f{f]f^f(,F,3:* /f(f_f:f<f[f}fA:4|[5|f1f2f3f4f5f6f7f8fEb9f0fBd(]afbfcfdfefP(ffgfhf {=c=ifM&jfkf lf mfz<a1nf].ofpf ",
-" .t (|qfrfsftfufvf wf xfyf/<o63{zfZb`!Afr BfCfDfEfFfGfHf IfJfKf</=_LfMfNfP[NfOfv]PfQfRfSfTfg' 2[UfVfS|[%WfXfYf_*Zf`f gx:.gO.+g@g#g$g%g&g*g=g-g;gT+Z1>g,gZ' 'g)g!g~g{gHbs& ]g^g/g(g_g:g<g[g ",
-" }g|gz|.+1g]>2g3g4g 5g6g 6=7g64>a8gE0#:9g0gagbgcgdgegua fggghg;;!'R_igjgkglgQ{x]mgngogpgqgrg sgtgugvgwgxgygzg3>AgBgCgDgF(EgFgGgHgIgJgKgLgMg64NgOgPgQgl3Rg SgTg UgVg WgXgYgZg`g h.h+h@h ",
-" #h$htb%h&h*h=hX8-h ;h >h,h'h)h!h~h$#{h]hW8^h/h(hdg$9_h:h<h[h}h|h1hb2Q'2h3h4h5h6h!_7h8hN)9ht!0hah5:bhchdhehfhghzghhihjhkhlhx@mh bnhohFgphqhrhshqathuhvhwhxh yh zhAhBhChDhEhFh hGh <Hh ",
-" ;b/b.5Ih0gJhKh;^LhMh C(i@NhOhPh`]QhRhz3ShThUhm&VhWhXhYhR'Zh`h&> i.i+i@i#i$i%i#4&i*i=if]+0-in|=):);i>i,i'i)izg!i~i{i]i^i/i(ir1_i:i<i[i}ig1|i.71i2i3i<(4iA& 5i 6i7i8iO.9i0iaibiP ",
-" K@ci$h]2Rhdieifigihi iijiki limi]anioipiqiriZ(97sitiuiviwixiyiziAiM1BiCiDixh]~EiFipf` GiHif>k}IiJi~ Ki9(LiMiNiOiPiQiRiSiTiUiViWiXiYiZi`i j.j+j@j#j$j%jk]&j 2~*j=j-j 9e ;jsd>j,j'j!]>9Z5 ",
-" )j2dZe!j8]~j{j]jG#U3 ^jj#p+T6/j (j_j:jX:<jh+[j}j|jrdU$1jO52j3j4j5j6j7j8j9j0jajbjcjdjejfjgj)!{_hjijjjkj' ljmjnjn,q^oj9}Vfpjqj,|rjsjb!)|K]tjujvjwjxjyj/|zjAjBjCjDj EjFjGjHjIjo( 3hc6JjKjLjMjjcNjBf ",
-" OjPj .Qj91RjSjTjUjVj Wjp'XjYjZj O_`j k.k{*</+k@k#k$k%kM37-I).>&k*kA4=kn<-%-k;k>k,k'k0.)k!k)!~k =<{kv7]k^kN@/kR_(k_k:k<k[k}k|k1k2kM13k4k85m95k6k7k8k9k 0k akbkckdkD^ek fke!gkhkikLjjkkk7c ",
-" K+lkmknkibok#3bbD; pkqkB rksk tkukvkwkxkykzkAkBkCkDkEkV-FkGk.|92FkHkIkJkKkLkMkNkOkPkQk Rk]@SkF O~TkUkj&VkWkXkYkZk`k l<%N-.ln^:}+l@l#lHc$l %l&lg~*lF|P; =l-l:1;l>l,l'lM})l ",
-" !lc8~l&~8] b{l]l^l/l (l_l:l <l[l}l|l1l2l3l4l;15l6lP=[;7l8l9l0lal[%bl3(cldlelflglhliljl M~!(A kl`_llmlnlolpl0-qlrlsltlulvlwlxlk|yl.czlAlBlCl DlEle)FlGl HlIlJlKlLls~4{MlNl ",
-" Ol<|PlQlRly_M(dble SlTlUlVlWlXlYlZl`l m.m+m@m6|#m$m%m&m*m=m-m4*;mfg>m,m'm)m8i!m ~mkcN,Oc{m]m^m/m(m_m;*:m<m[m}m._|m1m'f2m3m4mX>5m6m7m8m 9m0m ambmcmdm>0~:emfmgmhmim ",
-" p{jmK km4+lmmmnmom pmqm<brmsmI$tmumvmwmxmymzmv[AmBmCmDml>*|EmFmGmHfHm TjImJmKmLmMm!2NmOmPme3QmRmSmTmUmVmWmXmYmB&Zm}hXl`m$cn,X[ n2#G .nN@+n@n |l#n$n(^%n&n hm62< ",
-" *n=n-n;n>n,nN!'n)n !n~n{n]n1[^nd5/n(n-)_n:n<n{;[n}n{||n[&1n2n3n4n5n6nHf7n8n9n0nan6^8kbncndnenfngnhninjnknlnmnnnonpnqnrnfasnM<l_$. tni E,unvnwn xnynznAnBnCnDnZ.EnFn ",
-" GnHnd[InJni:KnLn@2>~ MnNn=<G,d>i<T#OnPnX@Qn;)RnSnTnUnVnWnXn==YnZn`n o.o+o@o#o+f$oRc%o wi6=&o*o=o-o;o>o,o'o)o!o~o{o]o^o/o9(L@{{(o_o *+(@&6}9:o 1/<o[oT2}oE5r:|oBnn+ ",
-" 1o2o3o4od}5o6o$8;[7o8o9o0o aou+* > bocodod>d>4:f>X>eofogohoiojokolomonooopoqoro*(soto uo vowoxoyozoAoBoCoDoEoFoe-GoHoIoJoKoLow(Mo Noz.u+5@n|Oo PoQoRoQ#SoToUoVoWoXoYo ",
-" Zo`o pvk5k[.;0.po++p85@p#pTl$p %p}@m &pv7 *p^k^@=p/+L<-p;p>p,p'p)pdh!p~p{p]p^p/p(p_phe:p <p[p}p5n|p1p2p3p4pi.5p%j6p7p8p9p0p{+P]apw.E+bpcpJ dpepx+fp',T] gp_~hpipjp`_kplpmpnpe[oppphp ",
-" qprpsptpupvpwpxpAjypzpApy,BpCp)| DpEp%.FpGp d]j_HpIpJpKpH:LpD!MpNpOpPpQpRp<]SpTpUpJnVpWpH_ {#XpYpZp`p q.qCn+qyjT;@q#q$q%q],B.* &q}|*qu+'+`,u+=q}@45-q)a;q>q,q'q)q!q~qK|{q]q^q/q_{(q!f_q:q<q ",
-" [q}q|q1qa|2q3q.~4q5q6q7q8q9q0qaqbqcq dqk}4@E+E+eqfqgq3:%+hqiq `bjqw{kqlq(&mqnq3foqpqJhqqrq q>2 sqtquq>4vqwqxqyqcdzq..;bAq`mBqCqDqEqu.Fqe8f)GqHqIqt;x+Jqu+|@f){(G!umKqS<LqMqK]3,NqU{OqniPqx)QqRqSqTqUq ",
-" VqWq)iXq;%Yq qZq`q r8,+l5~.r+rg&@r#r$r%r&r<{0>& * 2e*r_n=rL+-r ;r>r,r'rs&)r!r~r{r]r^r/r(r_r:r<r[r}r|r1r2r3r4r5r6r7rJ,V]:+&+(/8r9r0rarbr S]=<crL):@drerfrt+i_3^W=grhrC1irjr^5krlrmrnrorprqrpprr{;srtrur ",
-" U4vr15wrxr yrzrAr*>BrCrDrErFrGrHrIrJrJ$#.%6KrLr<+G^Mrunm'Nr6 g+OrPrQrRrSrTrUrVrWrXrYrZr`r^g s{0.s+s@s#sba$s~>/_%sV]#0@ l kj08J^Pn&s*s un=sX@ w(-s6 ;sl( >s,s's)s!s~s{s]s%@^s/s(s_s:s<s[s}s ",
-" |s1s2s%% 3stj4s5s6sf27s 8s9s0sas$~L^bsT] 3#0scs dsesfs`2gshsisjsksVrlsmsnsospsqsrssstsusvsh{wsxsg5!6ys[{Lr_@n|zsAsF>BsCs #cDsl_Es 0@Fs[|Gs 2$HsIsJsKsLsMsNsOszkcl |%PsQsRs ",
-" Ss[qTsUs VsU{Ws3=H=** XsYsp,0pZs Y6`s t.t+t@t#t$t%t _}6,!$S.&tA|Na*t=t-t;t>tlm,t'tqi)t6a5c1<g5!t>b~t*]&6{t]t^t/t(t d#Nrx| m~:{|)_t i$:t<t[t}t|t1t2t3t4t5t6t 7t8t9t ",
-" F]0t0!a2atbtctdtetw*w* ft_)O)}^ gtj)z}e#I~e'htit jtkte+lt3+NamtZ0ntotptqt74rtNhstB~ttut9gvtwt30xtytztAtBtCt: ,+Dt*+$~Etq+ Fts0j;Gt [>|,Htt1ItJtKtLtMtNtOtPtS3Qt2(Rt ",
-" !=D$StTt.mUtVtWtXtYtZt`t @c u.u[{ +uwn~n@u#u$u%u&u *u=u-u`aZa;u>u,u'u)u1;!u~u{uZ!=e]u^u/u(u_u:uZi<u [u}uV]|u1u@ U#as2u 3u4u&l+{m35uG*6u7u8u9u0uUkm>aubucudueu4/&j ",
-" fuguhuiujukulut>munuou puquru V[sutuuuvuwuxuyu zuAuBuCuDuEu#,FuGu1pHuIu1gJuKuLuMuNuOuPuQuRu SuTuUuVux+Wu}|XuV@i'$. ,,YuZu`u vJ#5s.v+v@vK'#v$v3&%v&vr7*v=l=v:,-v ",
-" ;v+~>v,v'vf/)v!v~v{v ]vx!^v J@/v(v_v:v<v[v H= e,Y+}vR$yr|v841v2v3v4v5v6v7v8v9v0vavbvcv3=l*c=dvevfvgvhviv8@U#( jvE@d8kvlv/+ga.0mv]| |%nvovpvO>qvrv/1lrsvtvuvvvwvxvyv ",
-" A7zvAvBvCvDv Ev FvGvc_/vHvIv140 JvKvLvT]Mv;, P%l*NvOvPvQvRvSvMeTvUvVvWvXvYvs~Zvd7`v w.w+w@w#w $w%w&w*wBt=w$]}+2#g _ ga],-w;w>w,w .-|%'w)w!w~wve{wU*]w^w/w(w_w ",
-" :w<w[w}w1ht[|w1w2w 3w4wf]5w;i[#;sq'Ys6w7w8w 9w0w awbwcwdwewfwgwhwiwjwkwlwmwnwowjr@%we&%pwqwrw:^sw tw2=uwvwwwxwg_1eywzwAwBwCw DwEww*}%>|FwvewiG{w=%t5~7i ",
-" GwHw%|h(c|Iw0:=& JwKwLwlpMwNw/kOwPw QwRwSwTw ,~-&UwVwWwXwYwZw`w x.x39+xW-P%#%@x#x$x%x;b&x*x =xP% -x;x>x,x'x(4 )x!xu,~x=={x]x^x/x7!C;(x_x ",
-" g<:x)r<x[x}x|%0-*= |xTe 1x^92x3x4x %dc=}%5x6x7x8x9x0xax0fbxcxv,c=c=dxex#cfx+!gx[o0l.-c=we hxixjxkxlx mx5>nxoxpxqxrxsxtxF$ux ",
-" vx&uzuwxxxyxzxi$ AxBx CxDx ExFxI,GxHxIxJxKx3!c==&b=LxMxNxy_OxPx^# c=c=c=QxRx4^6)SxK8TxUxVxc=&'|%WxXxYx=&Zx `xwl y.y+y@y/s#y$y%y&y ",
-" *y{q`n=y-y;y>yr=#% ,y %% i$'yb=)y!y~y {y]y^y/y(y_y.-c=c=&=%%I=4%:y<y[yi$@% l*{=}&}y|y<oF~3o1y2yc'3y4y ;y<xo!5y6y7yJ# 8y9y0yR*ay05byK]Cpcy ",
-" r)dyeyfygyhy-{r= J= $%&={=[%<-iyjy`<X~$* kylymy[;&=$%nyc=c=x*,~p*w*&'}& oypyu1(wqyrysytyw'uyvywyxy6tyy#*zyS1 AyBy;*,'CyDyEyx%y^FyGy ",
-" HyIyJyKyLy9yU|MyNy *#%Oy=&A&^#Pyl$Qy0/Ry'(]} SyTy%%[,x*p*2=$%$% P%{= @%UyZx&&VyWyXy&dYyZy`y z.z+z7l@z3}#z&=#%0-r=$z%z&zJ**zC;=z-l!/ ",
-" h^-z/';z>z,z)|'zl=.-)z!z~z{z<5]z^z/z(z_z:z <z[z}zc=c=|z1z2z3z4zZhVn5z6z7z8z9z DwP%S=0zazc=f,bz czdzezZ-fzgzhz|,izjzB1kzl>lzmznzozpzih3,qz5~Ws ",
-" *$rz-lsztzuzvzwzxzyzzzAzBzCzDzEzFzz^GzHzIz JzKzc=w'LzMzNzOzPzCl QzRzLdSzTz Uzc=H&Vzk* WzXz.%YzZz5(`z A.A&|7}b2+A@A1&%t#A$A_}%A&A!9 ",
-" *A=A-A;A>AE$,A+|P|'A)A+}!A~A{A]A^AT{/A:xh((A_A:A <A[Af(}A |A1A2A3A4A 5A6A 7AYq8A{79AQ>0AguB[aAbAcAdAeAfAgAhAKyO'ApiAjAkA ",
-" lAmAnAoApAqArAsAtAuAXzmdvAwA uxAyAzAAABACADAEAFAGAHA IAJA KA LAMANAOAn8PAQAI@RASATAUAVAWA!/XAtgYAZA`A B/39% ",
-" .BEt/)O~+Bc#V[q%i8l<@BH:O)7 7 .uj8#Bi]$B,@%B&B*B|f =B-BDvP';B>BL9,B'B>j)B(_@]r+N<cs!B~BL${B]BW#;68rt!^B/B ",
-" u!J/(B2#nji'#.])F H.],_B:B<B< [B}B|Bsb1B2B3BPc4B&$~q 5B6BEuM_7B8B9B0B42aBF_( w.&+G!J-bB*1cBH^:@u+epepu+u+z. ",
-" 7.dBm~H: c/=)d>&+' eB&pfB$0gBhBiBjBkBlBG5mBj8nBoBD8pB qBrBsBtBdiuBKe/g*tvBj3=}wB> {kx.v(~ U#xB3@z.yBzBABBBBBCBDB ",
-" EBciFB GBu!xB/@6.x.HBIB~@$~p2JBY6Taa0=~A M~To$#2_KBLBMBNBOBNBOBPBQB{7RBr:SBCb!mr3TBUd*fUBVBWB7 ( ; XB%.* - }|3@* YB ZB`B%. C ",
-" f5Gi.C ~tV]x7}|& = = & +C@CxBU#j'7.h #C*~K8(0$C):gb%CF4&C*C=Cib.+P+'dib(|-C38;C>C,CZ 1.2d.uV@4.V]; = = = = = = = = = ",
-" )c'Cid$c3^)Cd]!C = * }|1#cocoF,u.4.$..uB 9 ~Cg3>.|+Mcnk=7E5hb)lRB`0g3S7{Cu3]CMcM,^CG73.0ph)&+}|* = = = = = = = = = ",
-" .prg/C(C}'P)_Ceq = * eq }+~ u.],_ :Cs.9 <C[Cq ']}Cgj{2T2^q(b&x|Cc]c 1C2CgB6 M@dBI@ G.G.z.= = = = = = = = = = = = ",
-" 3CYsk_){P@+C& = = }| doF,u.4C-~@.2.8 I!Hc.!D45C2C<)U_W@g L<m~g J,])N@ z+B+= = = = = = = = = = = = = ",
-" 6CT#7C&c+C& = 8Cd#( G !@3.3.9C9(0CM@Et){!,!,aCV#d]co + = = = = = = = = = = = ",
-" dBR@$~u.h)7.c~i i h)&<G.$ F.bC = = = = = = = = = ",
-" i_~@~@) ~ {,5.= %.cC = ",
-" dC* E.5.*+, *.eC ",
-" = 6.*+D.6. ",
-" ; { ~@fC ",
-" G@~ j_ ",
-" i gC ",
-" o: "};