-1,
_T("Select image(s) - Gimmick! (c) CREATIS-LRMN 2008"),
wxDefaultPosition,
- wxSize(635,750),
+ wxSize(810,750),
min_dim,
max_dim,
output_dim,
#include "icons/create-database.xpm"
#include "icons/help.xpm"
#include "icons/synchronize.xpm"
+#include "icons/settings.xpm"
+#include "icons/tools.xpm"
#include <wx/imaglist.h>
#include <wx/popupwin.h>
TOOL_ADDDATABASE_ID = 4,
TOOL_REMOVE_ID = 5,
TOOL_SYNCHRONIZE_ID = 6,
- TOOL_HELP_ID = 7
+ TOOL_HELP_ID = 7,
+ TOOL_SETTINGS_ID = 8,
+ TOOL_TOOLS_ID = 9
};
//======================================================================
//================================================================
//
- const int icon_number = 9;
+ const int icon_number = 11;
// Icon ids
typedef enum
{
Icon_database_add,
Icon_remove,
Icon_synchronize,
- Icon_help
+ Icon_help,
+ Icon_settings,
+ Icon_tools
}
icon_id;
//================================================================
mIcon->GetBitmap(Icon_help),
_T("Open help window")
);
+ mToolSettings = mToolBar->AddTool( TOOL_SETTINGS_ID,
+ _T("System settings"),
+ mIcon->GetBitmap(Icon_settings),
+ _T("Allows the modification of various system settings")
+ );
+ mToolTools = mToolBar->AddTool( TOOL_TOOLS_ID,
+ _T("Tools"),
+ mIcon->GetBitmap(Icon_tools),
+ _T("Applies tools to images")
+ );
//const wxBitmap& bitmap1, const wxString& shortHelpString = "", wxItemKind kind = wxITEM_NORMAL)
mToolBar->Realize();
icons[Icon_help] = wxIcon(help_xpm);
icons[Icon_synchronize] = wxIcon(synchronize_xpm);
icons[Icon_create_database] = wxIcon(create_database_xpm);
+ icons[Icon_settings] = wxIcon(settings_xpm);
+ icons[Icon_tools] = wxIcon(tools_xpm);
// unsigned int NbIcons = 8;
// Make an image list containing small icons
}
//=================================================
+ //=================================================
+ void WxGimmickView::OnSettings(wxCommandEvent& event)
+ {
+ wxDialog* dial= new wxDialog (this,-1,"System Settings",wxDefaultPosition, wxSize(450,600));
+ wxBoxSizer *siz = new wxBoxSizer(wxVERTICAL);
+ // Notebook
+ wxNotebook* nb= new wxNotebook(dial,
+ -1,wxDefaultPosition, wxDefaultSize, 0);
+
+ siz->Add( nb,1,wxGROW ,0);
+ CreateSettingsDialog(nb);
+ dial->SetSizer(siz);
+ dial->ShowModal();
+ }
+ //=================================================
+
+ //=================================================
+ void WxGimmickView::OnTools(wxCommandEvent& event)
+ {
+ wxDialog* dial= new wxDialog (this,-1,"Tools",wxDefaultPosition, wxDefaultSize);
+ wxBoxSizer *siz = new wxBoxSizer(wxVERTICAL);
+ dial->SetSizer(siz);
+ dial->ShowModal();
+ }
+ //=================================================
+
+ void WxGimmickView::CreateSettingsDialog(wxNotebook* nb)
+ {
+ //First page: Customization of configurations
+ wxPanel* customConfig=new wxPanel(nb);
+ nb->AddPage( customConfig, crea::std2wx("Customize Configuration") );
+ //Second page: Creation of Databases
+ wxPanel* databaseCreation=new wxPanel(nb);
+ nb->AddPage( databaseCreation, crea::std2wx("Create Database") );
+ //Third page: CD/DVD Watch
+ wxPanel* cdWatch=new wxPanel(nb);
+ nb->AddPage( cdWatch, crea::std2wx("CD/DVD") );
+ //Fourth page: Selection of attributes to show (edit)
+ wxPanel* attSelection=new wxPanel(nb);
+ nb->AddPage( attSelection, crea::std2wx("Selection of Attributes") );
+
+ }
+
+
//=================================================
/// AddProgress Gimmick callback
void WxGimmickView::OnAddProgress( Gimmick::AddProgress& p)
EVT_TOOL(TOOL_ADDDATABASE_ID, WxGimmickView::OnAddDB)
EVT_TOOL(TOOL_REMOVE_ID, WxGimmickView::OnRemove)
EVT_TOOL(TOOL_SYNCHRONIZE_ID, WxGimmickView::OnSynchronize)
+ EVT_TOOL(TOOL_SETTINGS_ID, WxGimmickView::OnSettings)
+ EVT_TOOL(TOOL_TOOLS_ID, WxGimmickView::OnTools)
END_EVENT_TABLE()
//=================================================
wxToolBarToolBase* mToolAddDatabase;
wxToolBarToolBase* mToolHelp;
wxToolBarToolBase* mToolSynchronize;
+ wxToolBarToolBase* mToolSettings;
+ wxToolBarToolBase* mToolTools;
wxSplitterWindow* mSplitter;
wxPanel* mBottomPanel;
void OnAddDir(wxCommandEvent& event);
/// Callback for removing files
void OnRemove(wxCommandEvent& event);
- /// Callback for removing files
+ /// Callback for synchronization
void OnSynchronize(wxCommandEvent& event);
+ /// Callback for settings edition
+ void OnSettings(wxCommandEvent& event);
+ /// Callback for settings edition
+ void OnTools(wxCommandEvent& event);
+ ///Creates the settings dialog (the pages inside and the information)
+ void CreateSettingsDialog(wxNotebook* nb);
/// Display a message box with the last addition statistics
void DisplayAddSummary();
int l = level - 1;
// the selection of upper level
std::vector<tree::Node*>& sel(mLevelList[l].Selected);
- std::cout<<l<<std::endl;
sel.clear();
if (level == 1)
{
::wxWakeUpIdle();
clock_t endwait;
endwait = clock () + 0.2 * CLOCKS_PER_SEC ;
- while (clock() < endwait) {}
+ while (clock() < endwait ) {}
}
return 0;
--- /dev/null
+/* XPM */
+static char *settings_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"40 40 69 1",
+" c #474A4A",
+". c #494D4D",
+"X c #575B5B",
+"o c #5B5F5F",
+"O c #5D6262",
+"+ c #626565",
+"@ c #656969",
+"# c #696D6D",
+"$ c #6D7171",
+"% c #727777",
+"& c #757A7A",
+"* c #7A7E7E",
+"= c #7C8282",
+"- c #828787",
+"; c #858A8A",
+": c #898E8E",
+"> c #818E92",
+", c #859295",
+"< c #8C9292",
+"1 c #899699",
+"2 c #8D999C",
+"3 c #919696",
+"4 c #949A9B",
+"5 c #9A9E9E",
+"6 c #949FA1",
+"7 c #999FA0",
+"8 c #95A2A4",
+"9 c #9CA3A3",
+"0 c #99A6A9",
+"q c #9DAAAD",
+"w c #A1A6A6",
+"e c #A4AAAB",
+"r c #A9ADAD",
+"t c #A2AEB1",
+"y c #A5B2B4",
+"u c #ABB2B3",
+"i c #ACB7B9",
+"p c #AEBABC",
+"a c #B1B6B6",
+"s c #B4BBBC",
+"d c #BABEBE",
+"f c #B4BEC0",
+"g c #B8BFC0",
+"h c #B6C1C3",
+"j c #BBC3C4",
+"k c #BBC6C8",
+"l c #BEC9CB",
+"z c #C2C5C5",
+"x c #C5CBCB",
+"c c #CACDCD",
+"v c #C3CED0",
+"b c #C6D1D3",
+"n c #CCD3D4",
+"m c #CCD7D9",
+"M c #CED9DB",
+"N c #D2D5D5",
+"B c #D5DADB",
+"V c #DBDDDD",
+"C c #D5DFE0",
+"Z c #D7E1E3",
+"A c #DDE1E1",
+"S c #E2E5E5",
+"D c #E5E8E8",
+"F c #EAEDED",
+"G c #EEF1F1",
+"H c #F3F5F5",
+"J c #F6F9F9",
+"K c #FAFBFB",
+"L c None",
+/* pixels */
+"LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL",
+"LLLLLLLLLLLLLLLLLihlbmxLLLLLLLLLLLLLLLLL",
+"LLLLLLLLLLLLLLLLLhbmVANLLLLLLLLLLLLLLLLL",
+"LLLLLLLLLLLLLLLLLlmCSSVdLLLLLLLLLLLLLLLL",
+"LLLLLLLLLLLLLLLLjmAAASAzLLLLLLLLLLLLLLLL",
+"LLLLLLLL80eLLLLkbVSSSSSVcLLLLxVVLLLLLLLL",
+"LLLLLL8880yiihMCAAAVBASSSSccBDDDScLLLLLL",
+"LLLLLL68qyphlnZANhewwrdNSSSSDDDDDSzLLLLL",
+"LLLLL40qypklmndw<;------5dVDDDDDDDaLLLLL",
+"LLLLL<tyfhlbzw<<3:;;;;;;;:rNDDDDDV-LLLLL",
+"LLLLLL4pkxmh<::3raaw53<;<<3wNDDDSrLLLLLL",
+"LLLLLL=uvmj6<:<9VDVVNNcu37wwaNDDn-LLLLLL",
+"LLLLLLLkmn53<<rNDDNzaarjzrrrrdSDBrLLLLLL",
+"LLLLLLsmMs444wcVKJxw55-*5arraaNSSxLLLLLL",
+"LLLLLLbCxw55wsrxjLLLLLL@#&aaaszVDVLLLLLL",
+"LLLLsjVAdw99r54;LLLLLLLLO+<addzNDSNnLLLL",
+"LrhbNVSVrwee5&LLLLLLLLLLLL%wdzzcDDDDAAhL",
+"LibmAAANurra*+LLLLLLLLLLLL@3zzccDDDDDZkL",
+"LsBZASSNauas+LLLLLLLLLLLLLL*ccccAFDAZMpL",
+"LsAAAAAcaaaa+LLLLLLLLLLLLLL&ccNcADAZMbyL",
+"LdAASVSNaddd+LLLLLLLLLLLLLL*NNNcSAZMlkeL",
+"LwNVASAVazdd&LLLLLLLLLLLLLL3NVNcZZmlkf4L",
+"L#*:rdAAazzze$LLLLLLLLLLLL&aVVNcMbdy9=@L",
+"LLLL$-VAzzccz;LLLLLLLLLLLL5NVAccbl<*LLLL",
+"LLLLLLdANacNVc:LLLLLLLLLL5VSSVdzksLLLLLL",
+"LLLLLL4VSazVVScrLLLLLLLLsNSDSchjp5LLLLLL",
+"LLLLLL:cVSaNSSSSnzLLLLxNDDDDnfgpy=LLLLLL",
+"LLLLLLdBSSNaVSDDDSASFGFFDDDNsgiyq4LLLLLL",
+"LLLLLLVSSVVSdcSDDFFFHJHGDAxffiq068LLLLLL",
+"LLLLLcSVVSSVVczNDFDHHJHGBlffyt06216LLLLL",
+"LLLLLzVVSVVSSVVNzcBSGHGClhfy0861,>,LLLLL",
+"LLLL+-BSVVSVNVVSVVNVSFZmffyy061,>1%LLLLL",
+"LLLLL.-zVVx4o:xNVAAAZZBliy:O;21>2= LLLLL",
+"LLLLLL+5Bz:oL+:<cVCBmMmk;=XLO:q04#LLLLLL",
+"LLLLLLL:a:LLLLLLeVMbllbqLLLLLLea%LLLLLLL",
+"LLLLLLLLLLLLLLLL4bxkhpk4LLLLLLLLLLLLLLLL",
+"LLLLLLLLLLLLLLLL;ghpyqs9LLLLLLLLLLLLLLLL",
+"LLLLLLLLLLLLLLLLLeshshxLLLLLLLLLLLLLLLLL",
+"LLLLLLLLLLLLLLLLL#4ryzNLLLLLLLLLLLLLLLLL",
+"LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL"
+};
--- /dev/null
+/* XPM */
+static char *tools_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"48 48 254 2",
+" c #435C69",
+". c #47606D",
+"X c #49626E",
+"o c #4B6370",
+"O c #546D7A",
+"+ c #57707D",
+"@ c #59717E",
+"# c #008636",
+"$ c #058D3A",
+"% c #0C8E3E",
+"& c #029037",
+"* c #0B933D",
+"= c #0E9B3C",
+"- c #20A23E",
+"; c #4CAE3D",
+": c #52B030",
+"> c #5DB435",
+", c #56B33D",
+"< c #7EBF25",
+"1 c #74BC2D",
+"2 c #7DBF2B",
+"3 c #73BC34",
+"4 c #78BE3B",
+"5 c #7FC028",
+"6 c #7FC136",
+"7 c #7DC03D",
+"8 c #128F41",
+"9 c #139344",
+"0 c #199346",
+"q c #119941",
+"w c #1C9B4D",
+"e c #21974D",
+"r c #20994F",
+"t c #249B53",
+"y c #2A9F57",
+"u c #1BA04A",
+"i c #29A440",
+"p c #21A04F",
+"a c #3BAA4D",
+"s c #29A256",
+"d c #2DA35A",
+"f c #3AA957",
+"g c #32A55D",
+"h c #33AA5D",
+"j c #3CAD5D",
+"k c #4EAF41",
+"l c #57B44C",
+"z c #41AC57",
+"x c #43AE5B",
+"c c #47B05C",
+"v c #4CB15D",
+"b c #5AB557",
+"n c #53B35C",
+"m c #5AB65B",
+"M c #5FB85B",
+"N c #6CBB43",
+"B c #76BF42",
+"V c #74BD49",
+"C c #66BB55",
+"Z c #6BBC54",
+"A c #64BA5B",
+"S c #6BBD5B",
+"D c #71BF5E",
+"F c #43A567",
+"G c #48A86C",
+"H c #4DB36E",
+"J c #5EB862",
+"K c #5BB76A",
+"L c #57B375",
+"P c #62BC7D",
+"I c #79C044",
+"U c #7EC150",
+"Y c #75C061",
+"T c #7AC265",
+"R c #7FC469",
+"E c #76C172",
+"W c #70C07C",
+"Q c #82C024",
+"! c #83C229",
+"~ c #8BC536",
+"^ c #83C33B",
+"/ c #85C443",
+"( c #8CC745",
+") c #87C64B",
+"_ c #8AC74B",
+"` c #8DC84D",
+"' c #96CB45",
+"] c #91C94D",
+"[ c #9BCE4E",
+"{ c #8ECA51",
+"} c #92CA50",
+"| c #95CB5B",
+" . c #98CD5D",
+".. c #82C66B",
+"X. c #99CD66",
+"o. c #9FD06C",
+"O. c #81C771",
+"+. c #8CCA75",
+"@. c #8ACA7A",
+"#. c #A2D36E",
+"$. c #ABD669",
+"%. c #5D7582",
+"&. c #5F7988",
+"*. c #5E7F91",
+"=. c #617580",
+"-. c #617986",
+";. c #647C89",
+":. c #687F8C",
+">. c #607F91",
+",. c #6B818D",
+"<. c #638495",
+"1. c #6B8694",
+"2. c #6E8897",
+"3. c #668698",
+"4. c #6C8B9C",
+"5. c #728793",
+"6. c #758A95",
+"7. c #768C9A",
+"8. c #798E9A",
+"9. c #7E929E",
+"0. c #66B881",
+"q. c #69BB82",
+"w. c #728FA0",
+"e. c #7592A4",
+"r. c #7C96A5",
+"t. c #7B98A9",
+"y. c #75C08C",
+"u. c #7AC391",
+"i. c #82939D",
+"p. c #8496A1",
+"a. c #8399A7",
+"s. c #8C9BA4",
+"d. c #819DAE",
+"f. c #8C9DA8",
+"g. c #909EA5",
+"h. c #8FA1AC",
+"j. c #93A3AD",
+"k. c #9AA7AD",
+"l. c #9BA8AF",
+"z. c #87A1B1",
+"x. c #8BA5B5",
+"c. c #93A5B0",
+"v. c #94A8B5",
+"b. c #9AA9B2",
+"n. c #93ACBB",
+"m. c #99AFBD",
+"M. c #99B0BF",
+"N. c #A2AEB4",
+"B. c #A2B2BC",
+"V. c #ABB5BB",
+"C. c #AEB8BE",
+"Z. c #B1BABF",
+"A. c #82C786",
+"S. c #97D087",
+"D. c #9BD084",
+"F. c #90CE9B",
+"G. c #A4D387",
+"H. c #B1D986",
+"J. c #B3DA8A",
+"K. c #AFD993",
+"L. c #A5D79C",
+"P. c #A7D89C",
+"I. c #ADD99D",
+"U. c #B1DA94",
+"Y. c #BADE9E",
+"T. c #90CEA2",
+"R. c #98CEA9",
+"E. c #93D1A0",
+"W. c #A0D5A6",
+"Q. c #ADD9A2",
+"!. c #B1DBA6",
+"~. c #BCDFA9",
+"^. c #A2D5B3",
+"/. c #A3D9B6",
+"(. c #ADDBB4",
+"). c #B0DABC",
+"_. c #BFE2B4",
+"`. c #C1E2AD",
+"'. c #CBE5A8",
+"]. c #CEE7B6",
+"[. c #D1E9BC",
+"{. c #9DB4C2",
+"}. c #A1B6C3",
+"|. c #A4B9C7",
+" X c #ABBAC3",
+".X c #A6BAC9",
+"XX c #ABBECD",
+"oX c #B3BDC2",
+"OX c #ABC1C0",
+"+X c #AEC1CE",
+"@X c #B9C2C7",
+"#X c #B3C2CC",
+"$X c #BCC5CB",
+"%X c #AFDEC1",
+"&X c #B7DCC1",
+"*X c #B9DDC3",
+"=X c #B5C7D3",
+"-X c #B9C7D0",
+";X c #B7C8D4",
+":X c #BACBD5",
+">X c #BFCFD9",
+",X c #C0C7CC",
+"<X c #C3CBCE",
+"1X c #C7D1CB",
+"2X c #CCD4CE",
+"3X c #C3CDD3",
+"4X c #C8CFD3",
+"5X c #CAD1D5",
+"6X c #C2D1DB",
+"7X c #CAD6DD",
+"8X c #CFD9DF",
+"9X c #D7DDD3",
+"0X c #DADDD5",
+"qX c #D1D7DA",
+"wX c #D4DADE",
+"eX c #D9DCDC",
+"rX c #C6E4CE",
+"tX c #D7ECC5",
+"yX c #D8ECC6",
+"uX c #D7ECCF",
+"iX c #D1EAD7",
+"pX c #DCEED6",
+"aX c #D4EADA",
+"sX c #E2E4DE",
+"dX c #E6EBDE",
+"fX c #E4F2DA",
+"gX c #CDD8E0",
+"hX c #D3DDE4",
+"jX c #D9DDE0",
+"kX c #D6E0E6",
+"lX c #DBE1E5",
+"zX c #DCE4E9",
+"xX c #E3E4E4",
+"cX c #E2EFE5",
+"vX c #E1E7EB",
+"bX c #E4EAEE",
+"nX c #EBECED",
+"mX c #E2F2E4",
+"MX c #EEF6E4",
+"NX c #E6F4EC",
+"BX c #EDF4ED",
+"VX c #EFF8ED",
+"CX c #F1F8E7",
+"ZX c #F2F8ED",
+"AX c #E6ECF0",
+"SX c #EAEEF1",
+"DX c #EDF1F3",
+"FX c #F2F4F5",
+"GX c #F5F9F4",
+"HX c #F9FBF7",
+"JX c #F4F6F8",
+"KX c #F7F9FA",
+"LX c #FDFDFD",
+"PX c None",
+/* pixels */
+"PXPXPXPXPXPXPXPXPXPXPXPXPXPX@XoXoXoX@X$X$XoXoXC.@XPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXPXPXPXPXPXPX X4XjXnXnXbXlXqX4X<X,X,X,X,X<X5XeXvXnXbXlX5XV.PXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXPXPXPXoXjXDXjXoXN.N.N.C.@X,X4X5X5X4X:X$X#X XB.b.j.j.l. XqXnXlX@XPXPXPXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXPX@XSXwXV.l.oXgXAXDXFXJXJXFXDXSXbXzXzXhXgXgX7X>X;X=X+X}.v.s.k.4XFX$XPXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPX5XnXV. X7XlXvXbXSXDXKXKXKXJXDXDXAXzXzXhXgXgXgX>X:X=X#XXXXX|.{.x.j.lXjXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXLX X3XgXhXlXzXAXSXDXJXKXKXJXDXSXAXvXzXkXgXgX6X>X:X=X+XXX.X|.|.{.m.j.LXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXLXhXgXhXhXkXzXbXSXDXJXJXJXJXDXAXAXzXkXhXhXgX6X>X:X=X+XXXXX|.|.{.{.{.KXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPX>XJXhXgXhXkXzXbXAXSXDXSXDXDXDXAXvXzXkXhXgXgX6X>X:X=X+XXX.X|.}.{.|.AXSXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPX<.XXGXDXzXkXzXzXvXAXAXSXSXAXAXbXvXzXhXgXgXgX6X:X;X+X+XXX{..X+XhXKXzX+XPXPXPXPXPXPXPXPXPXPXPX",
+"PXPX;.<.4..XvXKXDXDXAXAXvXAXAXAXvXzXzXkXhXgXgXgX6X:X;X;X>XgXkXJXKXvX>X+X|.PXPXPXPXPXPXPXPXPXPXPX",
+"PXPX<.<.3.4.w.z..XhXAXJXKXKXJXSXDXDXDXAXAXbXAXAXAXDXJXKXKXKXDXvXhXgX:X+X|.PXPXPXPXPXPXPXPXPXPXPX",
+"PXPX&.<.3.4.4.e.r.t.t.n.|.+X:XgXkXzXvXAXAXDXDXJXKXLXLXJXDXAXvXkXgXgX:X+X|.PXPXPXPXPXPXPXPXPXPXPX",
+"PXPX*.<.<.4.4.e.e.t.d.x.x.{.{.{..X+X=X>XgXkXzXSXFXLXKXJXDXAXzXkXhXgX:X+X|.PXPXPXPXPXPXPXPXPXPXPX",
+"PXPX*.<.3.3.4.w.e.t.d.z.x.n.{.{..X+X=X>XgXkXvXSXFXLXLXJXDXAXzXzXhX6X:XXX|.PXPXPXPXPXPXPXPXPXPXPX",
+"PXPX<.<.3.4.4.e.t.t.d.z.x.n.{.{..X+X=X>XgXkXvXSXFXLXLXJXDXAXvXkXhXgX:X+X|.PXPXPXPXPXPXPXPXPXPXPX",
+"PXPXPX<.3.4.4.e.e.t.d.x.x.{.{.{..X+X=X6XgXkXvXAXFXLXKXJXDXAXzXzXhX7X:X+XPXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXPXPX7.r.w.e.e.t.d.x.z.{.{.}..X+X=X6XgXhXbXSXJXKXKXJXDXbXvXhXjXgX-XPXPXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXPXC.bX5Xw.>.w.t.d.x.x.x.{.}..XXX=X>XgXhXbXSXJXLXLXJXDXAXzXoXN.<XSXoXPXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPX,XnXg.=. . %.&.:.r.d.x.{.|.XX=X6XhXhXjXxXzXjX7XC.s.5.o X @ i.xXeXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXLXg.%.O %.%.O %.O %.O %.%.=.&.;.>.<.:.:.:.;.-.%.+ + O O O %.@ O @ 6.LXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPXLXs.:.:.:.:.-.:.:.:.:.:.:.:.:.:.:.:.:.:.;.:.:.:.:.:.:.:.:.:.:.:.:.5.KXPXPXPXPXPXPXPXPXPXPXPX",
+"PXPX7XbXj.i.i.i.r.w.i.i.i.i.r.8.8.r.i.i.i.r.r.i.9.9.9.9.p.j.C.$X<X4X,X5XnXOXPXPXPXPXPXPXPXPXPXPX",
+"PXPX<.#XSXgX Xv.c.j.j.j.j.j.c.c.c.j.c.c.f.j.c.c.c.c.l.@XxXFXnXaX*X).iXcXFXxX1XPXPXPXPXPXPXPXPXPX",
+"PXPX*.<.p.XXnXDXjX3XXX}.}.}.}.}.}.}.}.B.}.}.}.V.}.$XnXGX^.G 8 # # # # % F R.VXxXPXPXPXPXPXPXPXPX",
+"PXPX*.<.<.4.w.x.XXhXSXFXDXAXvXzXhXhXhXgXhXhXhXjXjXKX).e $ 8 w y d d d t 0 $ 0 ^.nX2XPXPXPXPXPXPX",
+"PXPX*.<.3.3.4.e.e.t.z.{.|.=X6XgXhXzXbXSXSXDXJXFXLXq.$ 9 s g g g h g g g g d w $ q.BX2XPXPXPXPXPX",
+"PXPX*.<.3.3.4.e.t.t.t.x.x.{.{.{..XXX=X6XgXhXbXHXq.* w g h h h /.%X%X/.d g h g s % L GX1XPXPXPXPX",
+"PXPX*.<.4.3.4.e.t.t.d.z.x.{.x.{.|.=X=X6XgXzXHXT.$ p h j c c v BXLXLXNXg F c h h d * u.nXPXPXPXPX",
+"PXPX*.<.3.4.4.e.t.t.d.x.x.n.{.{.|.XX;X6XgXSXaXq u j c v n m M BXLXLXBXf m n v c j s = rX0XPXPXPX",
+"PXPXPX<.3.3.4.e.e.t.d.z.x.n.{.{..XXX;X6XhXKXP = c v m m A S Y VXLXLXNXz S M M m v j w H FXPXPXPX",
+"PXPXPXPX4.w.4.e.e.t.t.z.x.{.{.{..XXX;X>XcXmXu a n b A Y U Y Y NXLXLXNXc Y Y A J m n z - iX2XPXPX",
+"PXPXPXV.zX4X9.1.e.t.d.z.x.n.{.}..XXX=X6XDX(.: I M Y Y T E R ..VXLXLXNXv T T Y U A A A , E.xXPXPX",
+"PXPX@XDXk.@ o O %.2.r.z.n.}..XXX;X7XJXA.3 [ T P.Q.!.!.!.!.HXLXLXGXF.!.!.Q.Q.P.J { I W nXPXPX",
+"PXPXLXs.+ O + O O O O O O O O + %.-.:.p.LXD ^ [ #.GXLXLXLXLXLXLXLXLXLXLXLXLXLXLXLXK [ ) b FXPXPX",
+"PXPXLXp.-.;.;.;.;.;.;.;.;.-.;.;.;.;.;.i.KXD / [ $.HXLXLXLXLXLXLXLXLXLXLXLXLXLXLXKXK [ ` l FXPXPX",
+"PXPXqXcXs.7.7.7.8.8.8.7.8.8.8.8.7.7.8.s.LXO.^ [ $.HXLXLXLXLXLXLXLXLXLXLXLXLXLXLXKXK [ ` C FXPXPX",
+"PXPX<.:XFX5XB.h.j.f.f.f.f.f.x.g.h.h.h.b.JXS.6 [ ' J.J.J.J.Y.'.GXLXLXGXR.Y.J.H.H.H.N [ / +.FXPXPX",
+"PXPX*.<.t.-XSXbXjX:X X}.B.B.B.B.B.B.M.B.SX_.4 ' Q Q Q Q Q Q ~ CXLXLXNXk ! ! Q Q Q Q ~ B I.xXPXPX",
+"PXPX*.<.3.4.e.v.=XzXJXJXSXvXhXhXhX7X7X7XnXmXV ! Q Q Q Q Q Q Q CXLXLXBX; Q Q Q Q Q Q ! N pX9XPXPX",
+"PXPX*.<.3.4.4.e.e.t.d.v.XX:XgXhXzXvXbXDXDXLXD.2 Q Q Q Q Q Q Q CXLXLXNX; Q Q Q Q Q Q 1 +.FXPXPXPX",
+"PXPX*.<.3.4.w.w.e.t.d.z.n.n.{.{..XXX;X6XgXDXdXU Q Q Q Q Q Q Q MXLXLXNX; Q Q Q Q Q 5 B uXxXPXPXPX",
+"PXPX*.<.3.4.4.w.e.t.d.z.x.{.{.{..XXX;X6XgXzXKX~./ Q Q Q Q Q Q CXLXHXNX; Q Q Q Q 5 4 I.FXPXPXPXPX",
+"PXPX<.<.3.3.4.e.r.t.d.x.x.n.{.{.|.XX=X6XgXhXSXLXK./ Q Q Q Q Q '.[.[.`.> Q Q Q < 7 G.GX0XPXPXPXPX",
+"PXPX1.<.3.4.4.e.e.t.d.x.x.x.{.{.|.XX=X6XgXhXbXJXHXY.} Q Q Q Q Q Q Q Q Q Q Q < ) K.GXsXPXPXPXPXPX",
+"PXPXPX5.5.4.4.w.e.t.d.x.x.x.{.{..XXX;X6XgXzXvXSXFXHXyXo.( Q Q Q Q Q Q Q < / X.[.HXsXPXPXPXPXPXPX",
+"PXPXPXPXPX6.7.7.e.t.d.z.n.{.{.{..XXX;X6XgXhXvXnXFXKXKXHX[.J. .] ( ( ` .H.].GXFXPXPXPXPXPXPXPXPX",
+"PXPXPXPXPXPXPXPX8.8.r.a.z.x.{.{.|.XX=X6XgXhXzXbXnXFXvXeXFXHXZXfXyXyXfXZXKXGXsXPXPXPXPXPXPXPXPXPX",
+"PXPXPXPXPXPXPXPXPXPXPXPXPXPXp.w.i.i.p.s.s.s.s.s.N.PXPXPXPXPXdXnXnXnXnXdXPXPXPXPXPXPXPXPXPXPXPXPX"
+};