rbutil: removed the wx version of rbutil. 

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14581 a1c6a512-1295-4272-9138-f99709370657
diff --git a/rbutil/Makefile b/rbutil/Makefile
deleted file mode 100644
index fe3b5b7..0000000
--- a/rbutil/Makefile
+++ /dev/null
@@ -1,78 +0,0 @@
-#             __________               __   ___.
-#   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
-#   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
-#   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
-#   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
-#                     \/            \/     \/    \/            \/
-# $Id$
-#
-
-# Unix-style Makefile for rbutil
-
-#detect cygwin 
-ifneq ($(strip $(shell gcc -v 2>&1 | grep "cygwin")),)
-   __CYGWIN__ := 1
-endif
-
-CXX=$(shell $(PREFIX)wx-config --version=2.8 --cxx)
-INC = `$(PREFIX)wx-config --version=2.8 --cxxflags`
-LIBS = `$(PREFIX)wx-config --version=2.8 --libs`
-CFLAGS= -Wall -Wundef -DRBUTIL -D_LARGEFILE64_SOURCE
-OBJS=rbutil.o rbutilApp.o rbutilFrm.o rbutilCtrls.o install_dialogs.o bootloaders.o installlog.o ipodpatcher/ipodpatcher.o sansapatcher/sansapatcher.o irivertools.o md5sum.o autodetection.o talkfile.o
-
-ifdef __CYGWIN__
-OBJS+=ipodpatcher/ipodio-win32.o sansapatcher/sansaio-win32.o
-CFLAGS+= -mno-cygwin -mwindows
-else
-OBJS+=ipodpatcher/ipodio-posix.o sansapatcher/sansaio-posix.o
-endif
-
-
-EXTRAOBJS = $(wildcard icons/*.o)
-
-SILENT = @
-
-# Install with / as root by default
-ifndef DESTDIR
-  DESTDIR=""
-endif
-
-# type "make WIN=1" for a Windows build using the Debian mingw cross-compiler
-ifdef WIN
-  CROSS=i586-mingw32msvc-
-  WINDRES=i586-mingw32msvc-windres
-  EXT=.exe
-  PREFIX=/usr/i586-mingw32msvc/bin/
-  OBJS+=rbutil-rc.o
-endif
-
-.PHONY: all
-all: icons rbutil$(EXT)
-
-.cpp.o :
-	$(SILENT) echo CXX $<
-	$(SILENT) $(CXX) $(CFLAGS) $(INC) -c -o $@ $<
-
-.c.o :
-	$(SILENT) echo CC $<
-	$(SILENT) $(CC) $(CFLAGS) $(INC) -c -o $@ $<
-
-rbutil-rc.o: rbutil-rc.rc
-	$(WINDRES) -O coff -F pe-i386 -o $@ $<
-
-rbutil$(EXT): $(OBJS)
-	$(SILENT) echo CXX $<
-	$(SILENT) $(CXX) -o $@ $(OBJS) $(EXTRAOBJS) $(LIBS)
-
-.PHONY: icons
-icons:
-	$(SILENT) $(MAKE) -C icons
-
-.PHONY: clean
-clean:
-	rm -f rbutil rbutil.exe $(OBJS) *~
-	make -C icons clean
-
-.PHONY: install
-install:
-	install -D rbutil$(EXT) $(DESTDIR)/usr/bin/rbutil$(EXT)
diff --git a/rbutil/Makefile.macosx b/rbutil/Makefile.macosx
deleted file mode 100755
index 6939280..0000000
--- a/rbutil/Makefile.macosx
+++ /dev/null
@@ -1,218 +0,0 @@
-# =========================================================================
-#     This makefile was generated by
-#     Bakefile 0.2.1 (http://bakefile.sourceforge.net)
-#     Do not modify, all changes will be overwritten!
-# =========================================================================
-
-
-
-
-srcdir = /Users/dave/rockbox/rockbox-devel/rbutil
-top_srcdir = /Users/dave/src/wxMac-2.8.0/
-BK_DEPS = /Users/dave/src/wxMac-2.8.0/osx_build/bk-deps
-wx_top_builddir = /Users/dave/src/wxMac-2.8.0/osx_build
-
-prefix = /usr/local
-exec_prefix = ${prefix}
-INSTALL = /usr/bin/install -c
-EXEEXT = 
-WINDRES = 
-REZ = /Developer/Tools/Rez
-SETFILE = /Developer/Tools/SetFile
-NM = nm
-LIBS = -lz -lpthread -liconv
-LDFLAGS_GUI = 
-CXX = g++
-CXXFLAGS = -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 -Wall -Wundef -Wno-ctor-dtor-privacy -O2 -fno-strict-aliasing -fno-common
-CPPFLAGS = -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I${wx_top_builddir}/lib/wx/include/mac-ansi-release-static-2.8 -I${top_srcdir}/include -fpascal-strings -I${top_srcdir}/src/mac/carbon/morefilex -I/Developer/Headers/FlatCarbon
-RBUTIL_CFLAGS = $(CXXFLAGS) -DRBUTIL -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I${wx_top_builddir}/lib/wx/include/mac-ansi-release-static-2.8 -I${top_srcdir}/include -fpascal-strings -I${top_srcdir}/src/mac/carbon/morefilex -I/Developer/Headers/FlatCarbon
-LDFLAGS = -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386   -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System 
-WX_LIB_FLAVOUR = 
-TOOLKIT = MAC
-TOOLKIT_LOWERCASE = mac
-TOOLKIT_VERSION = 
-TOOLCHAIN_FULLNAME = mac-ansi-release-static-2.8
-EXTRALIBS =   -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System  -lz -lpthread -liconv 
-EXTRALIBS_GUI = -framework WebKit
-HOST_SUFFIX = 
-SAMPLES_RPATH_FLAG = 
-SAMPLES_RPATH_POSTLINK = 
-
-### Variables: ###
-
-DESTDIR = 
-WX_RELEASE = 2.8
-WX_VERSION = $(WX_RELEASE).0
-LIBDIRNAME = $(wx_top_builddir)/lib
-RBUTIL_CXXFLAGS = -DRBUTIL -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \
-	$(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \
-	-I$(srcdir) $(__DLLFLAG_p) $(CPPFLAGS) $(CXXFLAGS)
-RBUTIL_OBJECTS =  \
-	$(__rbutil_os2_lib_res) \
-        rbutil.o rbutilApp.o rbutilFrm.o install_dialogs.o bootloaders.o installlog.o \
-        rbutilCtrls.o ipodpatcher/ipodpatcher.o ipodpatcher/ipodio-posix.o \
-        sansapatcher/sansapatcher.o sansapatcher/sansaio-posix.o \
-        md5sum.o irivertools.o autodetection.o talkfile.o \
-	$(__rbutil___win32rc)
-
-### Conditionally set variables: ###
-
-#CXXC = $(CXX)
-CXXC = $(BK_DEPS) $(CXX)
-#PORTNAME = base
-PORTNAME = $(TOOLKIT_LOWERCASE)$(TOOLKIT_VERSION)
-WXBASEPORT = _carbon
-#WXDEBUGFLAG = d
-#WXDEBUGFLAG = d
-#WXUNICODEFLAG = u
-#WXUNIVNAME = univ
-EXTRALIBS_FOR_BASE = $(EXTRALIBS)
-#EXTRALIBS_FOR_BASE = $(EXTRALIBS) $(EXTRALIBS_GUI)
-EXTRALIBS_FOR_GUI = $(EXTRALIBS_GUI)
-#EXTRALIBS_FOR_GUI = 
-__rbutil___mac_setfilecmd = \
-	$(SETFILE) -a C rbutil$(EXEEXT)
-__rbutil___mac_rezcmd = $(__MACOSX_RESOURCES_p_1)
-#__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
-#__WXUNIV_DEFINE_p_1 = -d __WXUNIVERSAL__
-#__WXUNIV_DEFINE_p_2 = --define __WXUNIVERSAL__
-#__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
-#__EXCEPTIONS_DEFINE_p_1 = -d wxNO_EXCEPTIONS
-#__EXCEPTIONS_DEFINE_p_2 = --define wxNO_EXCEPTIONS
-#__RTTI_DEFINE_p = -DwxNO_RTTI
-#__RTTI_DEFINE_p_1 = -d wxNO_RTTI
-#__RTTI_DEFINE_p_2 = --define wxNO_RTTI
-#__THREAD_DEFINE_p = -DwxNO_THREADS
-#__THREAD_DEFINE_p_1 = -d wxNO_THREADS
-#__THREAD_DEFINE_p_2 = --define wxNO_THREADS
-#__DLLFLAG_p = -DWXUSINGDLL
-#__DLLFLAG_p_1 = -d WXUSINGDLL
-#__DLLFLAG_p_2 = --define WXUSINGDLL
-COND_PLATFORM_OS2_1___rbutil___os2_emxbindcmd = $(NM) rbutil$(EXEEXT) | if \
-	grep -q pmwin.763 ; then emxbind -ep rbutil$(EXEEXT) ; fi
-#__rbutil___os2_emxbindcmd = $(COND_PLATFORM_OS2_1___rbutil___os2_emxbindcmd)
-#__RCDEFDIR_p = -i \
-#	$(LIBDIRNAME)/wx/include/$(TOOLCHAIN_FULLNAME)
-#__RCDEFDIR_p_1 = --include-dir \
-#	$(LIBDIRNAME)/wx/include/$(TOOLCHAIN_FULLNAME)
-#__rbutil_os2_lib_res = \
-#	$(top_srcdir)/include/wx/os2/wx.res
-__rbutil_bundle___depname = rbutil_bundle
-#____rbutil_BUNDLE_TGT_REF_DEP = \
-#	rbutil.app/Contents/PkgInfo
-____rbutil_BUNDLE_TGT_REF_DEP = \
-	rbutil.app/Contents/PkgInfo
-COND_MONOLITHIC_0___WXLIB_CORE_p = \
-	-lwx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core-$(WX_RELEASE)$(HOST_SUFFIX)
-__WXLIB_CORE_p = $(COND_MONOLITHIC_0___WXLIB_CORE_p)
-COND_MONOLITHIC_0___WXLIB_BASE_p = \
-	-lwx_base$(WXBASEPORT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-__WXLIB_BASE_p = $(COND_MONOLITHIC_0___WXLIB_BASE_p)
-
-__WXLIB_ADV_p = -lwx_mac_adv$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-__WXLIB_NET_p = -lwx_base_carbon_net-$(WX_RELEASE)$(HOST_SUFFIX)
-__WXLIB_HTML_p = -lwx_mac_html-$(WX_RELEASE)$(HOST_SUFFIX)
-
-#__rbutil___win32rc = rbutil_rc.o
-COND_MONOLITHIC_1___WXLIB_MONO_p = \
-	-lwx_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-#__WXLIB_MONO_p = $(COND_MONOLITHIC_1___WXLIB_MONO_p)
-__LIB_TIFF_p \
-	= \
-	-lwxtiff$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-__LIB_JPEG_p \
-	= \
-	-lwxjpeg$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-__LIB_PNG_p \
-	= \
-	-lwxpng$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-#__LIB_ZLIB_p = \
-#	-lwxzlib$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-#__LIB_ODBC_p = \
-#	-lwxodbc$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-COND_WXUSE_REGEX_BUILTIN___LIB_REGEX_p = \
-	-lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-#__LIB_REGEX_p = $(COND_WXUSE_REGEX_BUILTIN___LIB_REGEX_p)
-__LIB_EXPAT_p = \
-	-lwxexpat$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
-COND_TOOLKIT_MAC___MACOSX_RESOURCES_p_1 = $(REZ) -d __DARWIN__ -t APPL -d \
-	__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) \
-	$(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) -i $(srcdir) $(__DLLFLAG_p_1) -i \
-	$(srcdir)/../../samples $(__RCDEFDIR_p) -i $(top_srcdir)/include -o \
-	rbutil$(EXEEXT) Carbon.r rbutil.r
-__MACOSX_RESOURCES_p_1 = $(COND_TOOLKIT_MAC___MACOSX_RESOURCES_p_1)
-
-### Targets: ###
-
-all: rbutil$(EXEEXT) $(__rbutil_bundle___depname) data
-
-install: all
-
-uninstall: 
-
-install-strip: install
-
-clean: 
-	rm -rf ./.deps ./.pch
-	rm -f $(RBUTIL_OBJECTS)
-	rm -f rbutil$(EXEEXT)
-	rm -rf rbutil.app
-
-distclean: clean
-	rm -f config.cache config.log config.status bk-deps bk-make-pch shared-ld-sh Makefile
-
-rbutil$(EXEEXT): $(RBUTIL_OBJECTS) $(__rbutil___win32rc)
-	$(CXX) -o $@ $(RBUTIL_OBJECTS) $(LDFLAGS)   -L$(LIBDIRNAME) $(LDFLAGS_GUI) $(SAMPLES_RPATH_FLAG)  $(LIBS) $(__WXLIB_CORE_p)  $(__WXLIB_BASE_p)  $(__WXLIB_MONO_p) $(__LIB_TIFF_p) $(__WXLIB_ADV_p) $(__WXLIB_NET_p) $(__WXLIB_HTML_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) $(EXTRALIBS_FOR_GUI) $(__LIB_ZLIB_p) $(__LIB_ODBC_p) $(__LIB_REGEX_p) $(__LIB_EXPAT_p) $(EXTRALIBS_FOR_BASE)
-	$(__rbutil___mac_rezcmd)
-	$(__rbutil___mac_setfilecmd)
-	$(__rbutil___os2_emxbindcmd)
-	$(SAMPLES_RPATH_POSTLINK)
-
-rbutil.app/Contents/PkgInfo: rbutil$(EXEEXT) $(top_srcdir)/src/mac/carbon/Info.plist.in $(top_srcdir)/src/mac/carbon/wxmac.icns
-	mkdir -p rbutil.app/Contents
-	mkdir -p rbutil.app/Contents/MacOS
-	mkdir -p rbutil.app/Contents/Resources
-	
-	
-	sed -e "s/IDENTIFIER/`echo $(srcdir) | sed -e 's,\.\./,,g' | sed -e 's,/,.,g'`/" \
-	-e "s/EXECUTABLE/rbutil/" \
-	-e "s/VERSION/$(WX_VERSION)/" \
-	$(top_srcdir)/src/mac/carbon/Info.plist.in >rbutil.app/Contents/Info.plist
-	
-	
-	echo -n "APPL????" >rbutil.app/Contents/PkgInfo
-	
-	
-	ln -f rbutil$(EXEEXT) rbutil.app/Contents/MacOS/rbutil
-	
-	
-	cp -f $(top_srcdir)/src/mac/carbon/wxmac.icns rbutil.app/Contents/Resources/wxmac.icns
-
-rbutil_bundle: $(____rbutil_BUNDLE_TGT_REF_DEP)
-
-data: 
-	@mkdir -p .
-	@for f in rbutil.ini; do \
-	if test ! -f ./$$f -a ! -d ./$$f ; \
-	then x=yep ; \
-	else x=`find $(srcdir)/$$f -newer ./$$f -print` ; \
-	fi; \
-	case "$$x" in ?*) \
-	cp -pRf $(srcdir)/$$f . ;; \
-	esac; \
-	done
-
-.cpp.o :
-	$(CXXC) $(RBUTIL_CXXFLAGS) -c -o $@ $<
-
-.c.o :
-	$(CC) $(RBUTIL_CFLAGS) -c -o $@ $<
-
-rbutil_rc.o: $(srcdir)/rbutil.rc
-	$(WINDRES) -i$< -o$@   --define __WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p_2)  $(__EXCEPTIONS_DEFINE_p_2) $(__RTTI_DEFINE_p_2) $(__THREAD_DEFINE_p_2)   --include-dir $(srcdir) $(__DLLFLAG_p_2) --include-dir $(srcdir)/../../samples $(__RCDEFDIR_p_1) --include-dir $(top_srcdir)/include
-
-
-# Include dependency info, if present:
--include .deps/*.d
-
-.PHONY: all install uninstall clean distclean rbutil_bundle data
diff --git a/rbutil/archos.ico b/rbutil/archos.ico
deleted file mode 100644
index 6c21713..0000000
--- a/rbutil/archos.ico
+++ /dev/null
Binary files differ
diff --git a/rbutil/autodetection.cpp b/rbutil/autodetection.cpp
deleted file mode 100644
index 85bfc21..0000000
--- a/rbutil/autodetection.cpp
+++ /dev/null
@@ -1,274 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: autodetection.cpp
- *
- * Copyright (C) 2008 Dominik Wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "autodetection.h"
-#include "bootloaders.h"
-/***************************************************
-* General autodetection code
-****************************************************/
-
-bool ipodpatcherDetect(UsbDeviceInfo* tempdevice)
-{
-   /* use ipodpatcher for ipod detecting */
-    struct ipod_t ipod;
-    int n = ipod_scan(&ipod);
-    if(n == 1)  /* we found an ipod */
-    {
-        wxString temp(ipod.targetname,wxConvUTF8);
-        int index = gv->plat_bootloadername.Index(temp);   // use the bootloader names..
-        tempdevice->device_index = index;
-        tempdevice->status=DEVICEFOUND;
-
-        /* find mount point if possible */
-#if !(defined( __WXMSW__ ) || defined( __DARWIN__))          //linux code
-        wxString tmp = resolve_mount_point(wxString(ipod.diskname,wxConvUTF8)+wxT("2"));
-        if( tmp != wxT("") )
-            tempdevice->path = tmp;
-#endif
-        return true;
-
-    }
-    else if (n > 1)  /* to many ipods */
-    {
-        tempdevice->status = TOMANYDEVICES;
-        return true;
-    }
-    else  /* no ipod */
-    {
-        return false;
-    }
-
-}
-
-bool sansapatcherDetect(UsbDeviceInfo* tempdevice)
-{
-   /* scann for sansas */
-    struct sansa_t sansa;
-    int n = sansa_scan(&sansa);
-    if(n==1)
-    {
-        tempdevice->device_index = gv->plat_id.Index(wxT("sansae200"));
-        tempdevice->status = DEVICEFOUND;
-       /* find mount point if possible */
-#if !(defined( __WXMSW__ ) || defined( __DARWIN__))    //linux code
-        wxString tmp = resolve_mount_point(wxString(sansa.diskname,wxConvUTF8)+wxT("1"));
-        if( tmp != wxT("") )
-           tempdevice->path = tmp;
-#endif
-        return true;
-    }
-    else if (n > 1)
-    {
-        tempdevice->status = TOMANYDEVICES;
-        return true;
-    }
-    else
-    {
-        return false;
-    }
-}
-
-
-bool rockboxinfoDetect(wxString filename,UsbDeviceInfo* tempdevice)
-{
-    wxTextFile rockboxinfo(filename);
-    rockboxinfo.Open();
-    wxString line = rockboxinfo.GetFirstLine();
-    wxString targetstring;
-    if(line.StartsWith(wxT("Target: "), &targetstring))
-    {
-        int index = gv->plat_id.Index(targetstring);
-        if(index < 0) return false;
-
-        tempdevice->device_index = index;
-        wxString myPath;
-        if(filename.EndsWith(wxT(".rockbox" PATH_SEP "rockbox-info.txt"),&myPath));
-            tempdevice->path = myPath;
-
-        tempdevice->status = DEVICEFOUND;
-
-        return true;
-    }
-    else
-    {
-        return false;
-    }
-
-
-}
-
-
-bool detectDevices(UsbDeviceInfo* tempdevice)
-{
-    tempdevice->device_index= 0;
-    tempdevice->path=wxT("");
-    tempdevice->status =NODEVICE;
-
-    /* try ipodpatcher */
-    if(ipodpatcherDetect(tempdevice))
-    {
-        return true;
-    }
-
-    /* try sansapatcher */
-    if(sansapatcherDetect(tempdevice))
-    {
-        return true;
-    }
-
-    /*try via files on the devices */
-    wxArrayString mountpoints = getPossibleMountPoints();
-
-    for(unsigned int i=0;i<mountpoints.GetCount();i++)
-    {
-        if(wxDir::Exists(mountpoints[i]))
-        {
-            /*check for rockbox-info.txt */
-            wxString filename;
-            filename.Printf("%s" PATH_SEP ".rockbox" PATH_SEP "rockbox-info.txt",mountpoints[i].c_str());
-            if(wxFile::Exists(filename))
-            {
-                if(rockboxinfoDetect(filename,tempdevice))
-                     return true;
-            }
-
-        }
-    }
-
-    return false;
-}
-
-
-
-
-
-/***************************************************
-* Windows code for autodetection
-****************************************************/
-#if defined( __WXMSW__ )
-
-wxArrayString getPossibleMountPoints()
-{
-    wxArrayString tempList;
-    tempList.Add(wxT("D:\\"));
-    tempList.Add(wxT("E:\\"));
-    tempList.Add(wxT("F:\\"));
-    tempList.Add(wxT("G:\\"));
-    tempList.Add(wxT("H:\\"));
-    tempList.Add(wxT("I:\\"));
-    tempList.Add(wxT("J:\\"));
-    tempList.Add(wxT("K:\\"));
-    tempList.Add(wxT("L:\\"));
-    tempList.Add(wxT("M:\\"));
-    tempList.Add(wxT("N:\\"));
-    tempList.Add(wxT("O:\\"));
-    tempList.Add(wxT("P:\\"));
-    tempList.Add(wxT("Q:\\"));
-    tempList.Add(wxT("R:\\"));
-    tempList.Add(wxT("S:\\"));
-    tempList.Add(wxT("T:\\"));
-    tempList.Add(wxT("U:\\"));
-    tempList.Add(wxT("V:\\"));
-    tempList.Add(wxT("W:\\"));
-    tempList.Add(wxT("X:\\"));
-    tempList.Add(wxT("Y:\\"));
-    tempList.Add(wxT("Z:\\"));
-
-    return tempList;
-}
-
-
-#endif /* windows code */
-
-/**********************************************************
-* Linux code for autodetection
-*******************************************************/
-#if !(defined( __WXMSW__ ) || defined( __DARWIN__))
-
-wxArrayString getPossibleMountPoints()
-{
-    wxArrayString tempList;
-
-    FILE *fp = fopen( "/proc/mounts", "r" );
-    if( !fp ) return tempList;
-    char *dev, *dir;
-    while( fscanf( fp, "%as %as %*s %*s %*s %*s", &dev, &dir ) != EOF )
-    {
-        wxString directory = wxString( dir, wxConvUTF8 );
-        tempList.Add(directory);
-        free( dev );
-        free( dir );
-    }
-    fclose( fp );
-
-    return tempList;
-}
-
-wxString resolve_mount_point( const wxString device )
-{
-    FILE *fp = fopen( "/proc/mounts", "r" );
-    if( !fp ) return wxT("");
-    char *dev, *dir;
-    while( fscanf( fp, "%as %as %*s %*s %*s %*s", &dev, &dir ) != EOF )
-    {
-        if( wxString( dev, wxConvUTF8 ) == device )
-        {
-            wxString directory = wxString( dir, wxConvUTF8 );
-            free( dev );
-            free( dir );
-            return directory;
-        }
-        free( dev );
-        free( dir );
-    }
-    fclose( fp );
-    return wxT("");
-}
-
-
-
-#endif /* linux code */
-
-/**********************************************************
-* MAC  code for autodetection
-*******************************************************/
-#if  defined( __DARWIN__)
-
-wxArrayString getPossibleMountPoints()
-{
-    wxArrayString tempList;
-
-    wxDir volumes;
-
-    if(volumes.Open(wxT("/Volumes")))
-    {
-        wxString filename;
-        bool cont = volumes.GetFirst(&filename, wxEmptyString, wxDIR_DIRS);
-        while ( cont )
-        {
-            tempList.Add(filename);
-            cont = dir.GetNext(&filename);
-        }
-    }
-    return tempList;
-
-}
-
-#endif /* Mac Code */
diff --git a/rbutil/autodetection.h b/rbutil/autodetection.h
deleted file mode 100644
index cfd0dba..0000000
--- a/rbutil/autodetection.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: autodetection.h
- *
- * Copyright (C) 2008 Dominik Wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef AUTODETECTION_H_INCLUDED
-#define AUTODETECTION_H_INCLUDED
-
-
-/**************************************
-* General code for USB Device detection
-***************************************/
-#include "rbutil.h"
-
-#define TOMANYDEVICES 2
-#define NODEVICE 1
-#define DEVICEFOUND 0
-
-struct UsbDeviceInfo
-{
-  int device_index;
-  wxString path;
-  int status;
-};
-
-
-bool detectDevices(UsbDeviceInfo* tempdevice);
-
-wxArrayString getPossibleMountPoints(); /* this funktion has to be implemented for every OS */
-
-
-/********************************
-* Windows header for USB Device detection and information
-**************************************/
-
-#if defined( __WXMSW__ )
-
-
-#endif /*__WXMSW__ */
-
-
-/************************************************************************+
-*Linux header for autodetection
-**************************************************************************/
-
-
-#if !(defined( __WXMSW__ ) || defined( __DARWIN__))
-
-wxString resolve_mount_point( const wxString device );
-
-
-#endif /* Linux Code */
-
-
-
-
-/************************************************************************+
-*MAc header for autodetection
-**************************************************************************/
-
-
-#if defined( __DARWIN__)
-
-
-
-#endif /* MAc Code */
-
-
-
-
-
-
-
-
-#endif
diff --git a/rbutil/bootloaders.cpp b/rbutil/bootloaders.cpp
deleted file mode 100755
index 4ac4828..0000000
--- a/rbutil/bootloaders.cpp
+++ /dev/null
@@ -1,549 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: bootloaders.cpp
- *
- * Copyright (C) 2007 Dominik Wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "bootloaders.h"
-
-
-
-int verbose =0;
-// reserves memory for ipodpatcher
-bool initIpodpatcher()
-{
-      if (ipod_alloc_buffer(&sectorbuf,BUFFER_SIZE) < 0) return true;
-      else return false;
-}
-// uses ipodpatcher for add and rem of bootloader
-bool ipodpatcher(int mode,wxString bootloadername)
-{
-    wxString src,dest,buf;
-
-    struct ipod_t ipod;
-
-    int n = ipod_scan(&ipod);
-    if (n == 0)
-    {
-         ERR_DIALOG(wxT("[ERR]  No ipods found."), wxT("Scanning for Ipods"));
-         return false;
-    }
-    if (n > 1)
-    {
-         ERR_DIALOG(wxT("[ERR]  to many ipods found."), wxT("Scanning for Ipods"));
-         return false;
-    }
-
-     // downloading files
-    if(mode == BOOTLOADER_ADD)
-    {
-        src = gv->bootloader_url + wxT("/ipod/")
-              + bootloadername + wxT(".ipod");
-        dest = gv->stdpaths->GetUserDataDir()
-               + wxT("" PATH_SEP "download" PATH_SEP) + bootloadername;
-        if ( DownloadURL(src, dest) )
-        {
-            wxRemoveFile(dest);
-            ERR_DIALOG(wxT("Unable to download ") + src, wxT("Install"));
-            return false;
-        }
-    }
-
-    if (ipod_open(&ipod, 0) < 0)
-    {
-       ERR_DIALOG(wxT("[ERR] could not open ipod"), wxT("open Ipod"));
-       return false;
-    }
-
-    if (read_partinfo(&ipod,0) < 0)
-    {
-       ERR_DIALOG(wxT("[ERR] could not read partitiontable"), wxT("reading partitiontable"));
-       return false;
-    }
-
-    if (ipod.pinfo[0].start==0)
-    {
-       ERR_DIALOG(wxT("[ERR]  No partition 0 on disk"), wxT("reading partitiontable"));
-       int i;
-       double sectors_per_MB = (1024.0*1024.0)/ipod.sector_size;
-
-       buf.Printf(wxT("[INFO] Part    Start Sector    End Sector   Size (MB)   Type\n"));
-       ERR_DIALOG(buf, wxT("reading partitiontable"));
-       for ( i = 0; i < 4; i++ ) {
-         if (ipod.pinfo[i].start != 0) {
-             buf.Printf(wxT("[INFO]    %d      %10ld    %10ld  %10.1f   %s (0x%02x)\n"),
-                   i,
-                   ipod.pinfo[i].start,
-                   ipod.pinfo[i].start+ipod.pinfo[i].size-1,
-                   ipod.pinfo[i].size/sectors_per_MB,
-                   get_parttype(ipod.pinfo[i].type),
-                   ipod.pinfo[i].type);
-             ERR_DIALOG(buf, wxT("reading partitiontable"));
-        }
-    }
-       return false;
-    }
-
-    read_directory(&ipod);
-
-    if (ipod.nimages <= 0)
-    {
-        ERR_DIALOG(wxT("[ERR]  Failed to read firmware directory"), wxT("reading directory"));
-        return false;
-    }
-    if (getmodel(&ipod,(ipod.ipod_directory[0].vers>>8)) < 0)
-    {
-       buf.Printf(wxT("[ERR] Unknown version number in firmware (%08x)\n"),
-                                        ipod.ipod_directory[0].vers );
-       ERR_DIALOG(buf, wxT("reading directory"));
-       return false;
-    }
-
-    if (ipod.macpod)
-    {
-      WARN_DIALOG(wxT("Warning this is a MacPod, Rockbox doesnt work on this. Convert it to WinPod"),wxT("MacPod"));
-    }
-
-
-    if(mode == BOOTLOADER_ADD)
-    {
-        if (ipod_reopen_rw(&ipod) < 0) {
-          ERR_DIALOG(wxT("[ERR] Could not open Ipod in RW mode"), wxT("Bootloader add"));
-          return false;
-        }
-
-        if (add_bootloader(&ipod, (char*)dest.c_str(), FILETYPE_DOT_IPOD)==0) {
-
-        } else {
-           ERR_DIALOG(wxT("[ERR] failed to add Bootloader"), wxT("Bootloader add"));
-           return false;
-        }
-    }
-    else if(mode == BOOTLOADER_REM)
-    {
-        if (ipod_reopen_rw(&ipod) < 0) {
-          ERR_DIALOG(wxT("[ERR] Could not open Ipod in RW mode"), wxT("Bootloader add"));
-          return false;
-        }
-
-        if (ipod.ipod_directory[0].entryOffset==0) {
-            ERR_DIALOG(wxT("[ERR]  No bootloader detected.\n"), wxT("Bootloader del"));
-            return false;
-        } else {
-            if (delete_bootloader(&ipod)==0) {
-
-            } else {
-               ERR_DIALOG(wxT("[ERR]  --delete-bootloader failed.\n"), wxT("Bootloader del"));
-               return false;
-            }
-        }
-    }
-
-    ipod_close(&ipod);
-    return true;
-}
-
-// reserves memory for sansapatcher
-bool initSansaPatcher()
-{
-      if (sansa_alloc_buffer(&sectorbuf,BUFFER_SIZE) < 0) return true;
-      else return false;
-}
-
-
-// sansainstallation
-bool sansapatcher(int mode,wxString bootloadername)
-{
-    wxString src,dest,buf;
-
-    struct sansa_t sansa;
-
-    int n = sansa_scan(&sansa);
-    if (n == 0)
-    {
-         ERR_DIALOG(wxT("[ERR]  No Sansa found."), wxT("Scanning for Sansa"));
-         return false;
-    }
-    if (n > 1)
-    {
-         ERR_DIALOG(wxT("[ERR]  to many Sansa found."), wxT("Scanning for Sansa"));
-         return false;
-    }
-
-      // downloading files
-    if(mode == BOOTLOADER_ADD)
-    {
-        src = gv->bootloader_url + wxT("/sandisk-sansa/e200/")
-              + bootloadername;
-        dest = gv->stdpaths->GetUserDataDir()
-               + wxT("" PATH_SEP "download" PATH_SEP) + bootloadername;
-        if ( DownloadURL(src, dest) )
-        {
-            wxRemoveFile(dest);
-            ERR_DIALOG(wxT("Unable to download ") + src, wxT("Download"));
-            return false;
-        }
-    }
-
-    if (sansa_open(&sansa, 0) < 0)
-    {
-       ERR_DIALOG(wxT("[ERR] could not open sansa"), wxT("open Sansa"));
-       return false;
-    }
-
-    if (sansa_read_partinfo(&sansa,0) < 0)
-    {
-       ERR_DIALOG(wxT("[ERR] could not read partitiontable"), wxT("reading partitiontable"));
-       return false;
-    }
-
-    int i = is_e200(&sansa);
-    if (i < 0) {
-        ERR_DIALOG(wxT("[ERR]  Disk is not an E200 (%d), aborting.\n"), wxT("Checking Disk"));
-        return false;
-    }
-
-    if (sansa.hasoldbootloader)
-    {
-        ERR_DIALOG(wxT("[ERR]  ************************************************************************\n"
-                      "[ERR]  *** OLD ROCKBOX INSTALLATION DETECTED, ABORTING.\n"
-                      "[ERR]  *** You must reinstall the original Sansa firmware before running\n"
-                      "[ERR]  *** sansapatcher for the first time.\n"
-                      "[ERR]  *** See http://www.rockbox.org/twiki/bin/view/Main/SansaE200Install\n"
-                      "[ERR]  ************************************************************************\n"),wxT("Checking Disk"));
-        return false;
-    }
-
-    if(mode == BOOTLOADER_ADD)
-    {
-        if (sansa_reopen_rw(&sansa) < 0) {
-              ERR_DIALOG(wxT("[ERR] Could not open Sansa in RW mode"), wxT("Bootloader add"));
-          return false;
-        }
-
-        if (sansa_add_bootloader(&sansa, (char*)dest.c_str(), FILETYPE_MI4)==0) {
-
-        } else {
-           ERR_DIALOG(wxT("[ERR] failed to add Bootloader"), wxT("Bootloader add"));
-        }
-
-    }
-    else if(mode == BOOTLOADER_REM)
-    {
-         if (sansa_reopen_rw(&sansa) < 0) {
-             ERR_DIALOG(wxT("[ERR] Could not open Sansa in RW mode"), wxT("Bootloader Remove"));
-         }
-
-         if (sansa_delete_bootloader(&sansa)==0) {
-
-         } else {
-             ERR_DIALOG(wxT("[ERR] failed to remove Bootloader"), wxT("Bootloader remove"));
-         }
-    }
-
-    sansa_close(&sansa);
-    return true;
-}
-
-// gigabeatinstallation
-bool gigabeatf(int mode,wxString bootloadername,wxString deviceDir)
-{
-   wxString path1,path2;
-   wxString err;
-   wxString src,dest;
-
-   path1 = deviceDir
-         + wxT("" PATH_SEP "GBSYSTEM" PATH_SEP "FWIMG" PATH_SEP "FWIMG01.DAT");
-
-    if(mode == BOOTLOADER_ADD)
-    {
-        //Files downloaden
-        src = gv->bootloader_url + wxT("/gigabeat/") + bootloadername;
-        dest = gv->stdpaths->GetUserDataDir()
-               + wxT("" PATH_SEP "download" PATH_SEP) + bootloadername;
-         if( DownloadURL(src, dest) )
-         {
-              wxRemoveFile(dest);
-              ERR_DIALOG(wxT("Unable to download ") + src, wxT("Install"));
-              return false;
-         }
-
-
-      if(!wxFileExists(path1))
-      {
-          ERR_DIALOG(wxT("[ERR] Coud not find ")+path1, wxT("Bootloader add"));
-          return false;
-      }
-      path2 = path1;
-      path2.Append(wxT(".ORIG"));
-      if(!wxFileExists(path2))
-      {
-         if(!wxRenameFile(path1,path2,false))
-         {
-            ERR_DIALOG(wxT("[ERR] Coud not rename ") + path1 + wxT(" to ")
-                       + path2, wxT("Bootloader add"));
-           return false;
-         }
-      }
-
-
-      if(!wxCopyFile(dest,path1))
-      {
-         ERR_DIALOG(wxT("[ERR] Coud not copy ") + dest + wxT(" to ")
-                    + path2, wxT("Bootloader add"));
-         return false;
-      }
-    }
-    else if(mode == BOOTLOADER_REM)
-    {
-      path2 = path1;
-      path2.Append(wxT(".ORIG"));
-      if(!wxFileExists(path2))
-      {
-          ERR_DIALOG(wxT("[ERR] Coud not find ") + path1,
-                     wxT("Bootloader del"));
-          return false;
-      }
-      if(!wxRenameFile(path2,path1,true))
-      {
-         ERR_DIALOG(wxT("[ERR] Coud not rename ") + path1 + wxT(" to ")
-                    + path2, wxT("Bootloader del"));
-         return false;
-      }
-    }
-    return true;
-}
-
-// iaudio bootloader install
-bool iaudiox5(int mode,wxString bootloadername,wxString deviceDir)
-{
-    wxString path1,path2;
-    wxString err;
-    wxString src,dest;
-
-    path1 = deviceDir + wxT("" PATH_SEP "FIRMWARE" PATH_SEP)
-            + bootloadername;
-
-    if(mode == BOOTLOADER_ADD)
-    {
-        //Files downloaden
-        src = gv->bootloader_url + wxT("/iaudio/") + bootloadername;
-        dest = gv->stdpaths->GetUserDataDir()
-               + wxT("" PATH_SEP "download" PATH_SEP) + bootloadername;
-         if( DownloadURL(src, dest) )
-         {
-              wxRemoveFile(dest);
-              ERR_DIALOG(wxT("Unable to download ") + src, wxT("Install"));
-              return false;
-         }
-
-         // copy file
-         if(!wxCopyFile(dest,path1))
-         {
-            ERR_DIALOG(wxT("[ERR] Coud not copy ")+dest+wxT(" to ")+path2,
-                       wxT("Bootloader add"));
-            return false;
-         }
-
-         return true;   // install ready
-    }
-    else
-      return false;   //no uninstallation possible
-}
-
-// H10 install
-bool h10(int mode,wxString bootloadername,wxString deviceDir)
-{
-  wxString err,src,dest,path1,path2;
-
-   int pos = bootloadername.Find('/');
-   if(pos == wxNOT_FOUND) pos = 0;
-   wxString firmwarename = bootloadername.SubString(pos,bootloadername.Length());
-   //wxString firmDir = gv->curbootloader.SubString(0,pos);
-
-  if(mode == BOOTLOADER_ADD)
-  {
-     //Files downloaden
-     src = gv->bootloader_url + wxT("/iriver/") + bootloadername;
-     dest = gv->stdpaths->GetUserDataDir()
-            + wxT("" PATH_SEP "download" PATH_SEP) + firmwarename;
-     if( DownloadURL(src, dest) )
-     {
-           wxRemoveFile(dest);
-           ERR_DIALOG(wxT("Unable to download ") + src, wxT("Install"));
-           return false;
-     }
-
-     path1 = deviceDir + wxT("SYSTEM" PATH_SEP) + firmwarename;
-     path2 = deviceDir + wxT("SYSTEM" PATH_SEP "Original.mi4");
-
-     if(!wxFileExists(path1))  //Firmware dosent exists on player
-     {
-        path1 = deviceDir + wxT("SYSTEM" PATH_SEP "H10EMP.mi4");   //attempt other firmwarename
-        if(!wxFileExists(path1))  //Firmware dosent exists on player
-        {
-            ERR_DIALOG(wxT("[ERR] File ") + path1 + wxT(" does not Exist"),
-                       wxT("Bootloader add"));
-            return false;
-        }
-     }
-     if(!wxFileExists(path2))  //there is already a original firmware
-     {
-        if(!wxRenameFile(path1,path2,false))  //rename Firmware to Original
-        {
-           ERR_DIALOG(wxT("[ERR] Coud not rename ") + path1 + wxT(" to ")
-                      + path2, wxT("Bootloader add"));
-           return false;
-        }
-     }
-
-     if(!wxCopyFile(dest,path1))  // copy file
-     {
-        ERR_DIALOG(wxT("[ERR] Coud not copy ") + dest + wxT(" to ") + path1,
-                   wxT("Bootloader add"));
-        return false;
-     }
-
-     return true;  //install ready
-
-  }
-  else if(mode == BOOTLOADER_REM)
-  {
-     path1 = deviceDir + wxT("SYSTEM" PATH_SEP) + firmwarename;
-     path2 = gv->curdestdir + wxT("SYSTEM" PATH_SEP "Original.mi4");
-     if(!wxFileExists(path1))  //Firmware dosent exists on player
-     {
-         path1 = deviceDir + wxT("" PATH_SEP "SYSTEM" PATH_SEP "H10EMP.mi4");   //attempt other firmwarename
-         if(!wxFileExists(path1))  //Firmware dosent exists on player
-         {
-            ERR_DIALOG(wxT("[ERR] File ") + path1 + wxT(" does not Exist"),
-                       wxT("Bootloader rem"));
-            return false;
-         }
-     }
-
-     if(!wxFileExists(path2))  //Original Firmware dosent exists on player
-     {
-         ERR_DIALOG(wxT("[ERR] File ") + path2 + wxT(" does not Exist"),
-                    wxT("Bootloader rem"));
-         return false;
-     }
-
-     if(!wxRenameFile(path2,path1,true))  //rename Firmware to Original
-     {
-         ERR_DIALOG(wxT("[ERR] Coud not rename ") + path2 + wxT(" to ")
-                    + path1, wxT("Bootloader add"));
-         return false;
-     }
-
-  }
-  // shouldn't get here
-  return false;
-}
-
-// FWPatcher
-bool fwpatcher(int mode,wxString bootloadername,wxString deviceDir,wxString firmware)
-{
-    if(mode == BOOTLOADER_ADD)
-    {
-		char md5sum_str[32];
-        wxString src,dest,err;
-        int series,table_entry;
-
-        if (!FileMD5(firmware, md5sum_str)) {
-        ERR_DIALOG(wxT("Could not open firmware"), wxT("Open Firmware"));
-        return false;
-       }
-       else {
-               /* Check firmware against md5sums in h120sums and h100sums */
-                series = 0;
-                table_entry = intable(md5sum_str, &h120pairs[0],
-                                      sizeof(h120pairs)/sizeof(struct sumpairs));
-                if (table_entry >= 0) {
-                    series = 120;
-                }
-                else {
-                    table_entry = intable(md5sum_str, &h100pairs[0],
-                                          sizeof(h100pairs)/sizeof(struct sumpairs));
-                    if (table_entry >= 0) {
-                        series = 100;
-                    }
-                    else {
-                        table_entry =
-                            intable(md5sum_str, &h300pairs[0],
-                                    sizeof(h300pairs)/sizeof(struct sumpairs));
-                        if (table_entry >= 0)
-                            series = 300;
-                    }
-                }
-                if (series == 0) {
-                    ERR_DIALOG(wxT("Could not detect firmware type"), wxT("Detect Player out of Firmware"));
-                    return false;
-                }
-                else
-                {
-                    //Download bootloader
-                    src = gv->bootloader_url + wxT("/iriver/")
-                          + bootloadername;
-                    dest = gv->stdpaths->GetUserDataDir()
-                           + wxT("" PATH_SEP "download" PATH_SEP)
-                           + bootloadername;
-                    if( DownloadURL(src, dest) )
-                    {
-                        wxRemoveFile(dest);
-                        ERR_DIALOG(wxT("Unable to download ") + src,
-                                   wxT("Install"));
-                        return false;
-                    }
-
-                    if(!PatchFirmware(firmware,dest,series, table_entry))  // Patch firmware
-                    {
-                        ERR_DIALOG(wxT("Patching Firmware failed"),
-                                   wxT("Patching Firmware"));
-                        return false;
-                    }
-                }
-
-                // Load patched Firmware to player
-                src = gv->stdpaths->GetUserDataDir()
-                      + wxT("" PATH_SEP "download" PATH_SEP "new.hex");
-
-                if(gv->curplat == wxT("h100"))
-                    dest = deviceDir + wxT("" PATH_SEP "ihp_100.hex");
-                else if(gv->curplat == wxT("h120"))
-                    dest = deviceDir + wxT("" PATH_SEP "ihp_120.hex");
-                else if(gv->curplat == wxT("h300"))
-                    dest = deviceDir + wxT("" PATH_SEP "H300.hex");
-
-                if(!wxRenameFile(src,dest))
-                {
-                     ERR_DIALOG(wxT("Copying Firmware to Device failed"),
-                                wxT("Copying Firmware"));
-                     return false;
-                }
-                else
-                {
-                    return true;
-                }
-         }
-
-    }
-    else
-    {
-        return false;  //no uninstall possible
-    }
-}
diff --git a/rbutil/bootloaders.h b/rbutil/bootloaders.h
deleted file mode 100755
index d5bda12..0000000
--- a/rbutil/bootloaders.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: bootloaders.h
- *
- * Copyright (C) 2007 Dominik Wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-
-
-#ifndef BOOTLOADERS_H_INCLUDED
-#define BOOTLOADERS_H_INCLUDED
-
-#include <wx/string.h>
-#include "irivertools.h"
-#include "md5sum.h"
-
-#include "rbutil.h"
-#include "installlog.h"
-
-extern "C" {
-    // Ipodpatcher
-    #include "ipodpatcher/ipodpatcher.h"
-    // Sansapatcher
-    #include "sansapatcher/sansapatcher.h"
-};
-
-
-bool initIpodpatcher();
-bool initSansaPatcher();
-bool ipodpatcher(int mode,wxString bootloadername);
-bool sansapatcher(int mode,wxString bootloadername);
-bool gigabeatf(int mode,wxString bootloadername,wxString deviceDir);
-bool iaudiox5(int mode,wxString bootloadername,wxString deviceDir);
-bool fwpatcher(int mode,wxString bootloadername,wxString deviceDir,wxString firmware);
-bool h10(int mode,wxString bootloadername,wxString deviceDir);
-
-
-#endif // BOOTLOADERS_H_INCLUDED
diff --git a/rbutil/copying.txt b/rbutil/copying.txt
deleted file mode 100644
index d57cce3..0000000
--- a/rbutil/copying.txt
+++ /dev/null
@@ -1,370 +0,0 @@
-
-		   GNU GENERAL PUBLIC LICENSE
-
-                       Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-                          675 Mass Ave, Cambridge, MA 02139, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                            Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-
-compelled to copy the source along with the object code.
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                            NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-
-POSSIBILITY OF SUCH DAMAGES.
-
-                     END OF TERMS AND CONDITIONS
-
-        Appendix: How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) 19yy  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) 19yy name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/rbutil/credits.h b/rbutil/credits.h
deleted file mode 100644
index b124620..0000000
--- a/rbutil/credits.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: credits.h
- *
- * Copyright (C) 2006 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef CREDITS_H_INCLUDED
-#define CREDITS_H_INCLUDED
-
-#define RBUTIL_FULLNAME "The Rockbox Utility"
-#define RBUTIL_VERSION "Version 0.3.2.6"
-
-static const wxString rbutil_developers[] = {
-    wxT("Christi Alice Scarborough"),
-    wxT("Dave Chapman"),
-    wxT("Dominik Wenger"),
-    wxT("Bryan Childs"),
-    wxT("Dave Hooper"),
-    wxT("")
-};
-
-#define RBUTIL_WEBSITE "http://www.rockbox.org/"
-#define RBUTIL_COPYRIGHT wxT("© 2005-2007 The Rockbox Team\n" \
-        "Released under the GNU General Public License v2.")
-#define RBUTIL_DESCRIPTION wxT("Installer and housekeeping utility for " \
-        "the Rockbox open source digital audio player firmware.")
-
-
-class AboutDlg: public wxDialog
-{
-	public:
-		AboutDlg(rbutilFrm *parent);
-		~AboutDlg();
-};
-
-#include <wx/hyperlink.h>
-
-#endif // CREDITS_H_INCLUDED
diff --git a/rbutil/h100sums.h b/rbutil/h100sums.h
deleted file mode 100755
index ebbdcc2..0000000
--- a/rbutil/h100sums.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Checksums of firmwares for ihp_100 */
-/* order: unpatched, patched */
-
-/* 1.63eu */
-{"86103cb05658970b43ce1f40f93d53a8", "4938420d83aa6da3764d33e5a008c8d4"},
-/* 1.63k */
-{"70127fa9ee69afab7645297fbb61636d", "044b737ddb74436353e290d3fbcc3333"},
-/* 1.63us */
-{"7a504a450c76a0dda757fdb6b5531b22", "e51883ed89d49f5677b0a976aef7b154"},
-/* 1.65eu */
-{"478dc657b97e77d1b4944ef26c3dcb8e", "528917d9e5b34a3e5bcac8fe1f4bd7a9"},
-/* 1.65k */
-{"97ba82fb8099bb23ca0c78fc119f8cce", "ef24f69a679e5eba2216045cb24d8b15"},
-/* 1.65us */
-{"d3725865e0948cd5f604b00db2ec89aa", "76d83812b9e1856f768ba913eeba44e1"},
-/* 1.66eu */
-{"fc59f742fe383da3e4d17a660c46afb9", "2aa9d16d3e166a7575fc652db8588daa"},
-/* 1.66k */
-{"22d214401994c276ec6878288caa0dba", "a87dbe604ea98d035450a34b6e184a08"},
-/* 1.66us */
-{"0ae247f567aeafcafecf823a50cbf33e", "f7668e8949f1a78e8ecd685db78b6824"},
-/* 1.66jp */
-{"8bfc8ae5805c270597232efeafade5fd", "72613b75c5196f63e99e41b7a88d7241"},
diff --git a/rbutil/h120sums.h b/rbutil/h120sums.h
deleted file mode 100755
index 09da891..0000000
--- a/rbutil/h120sums.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Checksums of firmwares for ihp_120 */
-/* order: unpatched, patched */
-
-/* 1.63eu */
-{"14488347a171480c63c94bc7b885225d", "15f09130a1aa02c25f820e8cc68259a4"},
-/* 1.63k */
-{"3401fe8845e569156abfaddf05ca7771", "55e4cb20e36f4da06ad80b31aaaa3054"},
-/* 1.63us */
-{"d9078209105c186cee5246055fdb99c9", "dbdd012a3d821d26f907879cca71e9f4"},
-/* 1.65eu */
-{"c9e71aac4a498f1e2f0e684c2d554ea1", "43454df30c176e55d0df7e3c48e67785"},
-/* 1.65k */
-{"360c0c565266f84e9bca610c596f3207", "d8cb7d9f586186bf9780ee761fc8a677"},
-/* 1.65us */
-{"b9e516d4b8a0265605f46f254897bfb0", "99c5666e990dc782b9daefcb1a087ec0"},
-/* 1.66eu */
-{"a094999b41781f4322a57b9be7fa4534", "e26d2574f39cee0adcdd54fb9f316293"},
-/* 1.66k */
-{"79daba973bb31b60b4b87c2ef497587d", "e76121ba9efe72ecfbb6392eaefe6d96"},
-/* 1.66us */
-{"7fa020a3104c76fbbfcb8313e287dbe2", "12194678a2fdd0814d2e0bb57c8e8e6e"},
-/* 1.66jp */
-{"271d151eb6586929da24b3458ea965fe", "51716393ea0605d225e70a6be29dfdbd"},
diff --git a/rbutil/h300sums.h b/rbutil/h300sums.h
deleted file mode 100755
index 1c6581a..0000000
--- a/rbutil/h300sums.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Checksums of firmwares for ihp_300 */
-/* order: unpatched, patched */
-
-/* 1.28eu */
-{"0b2083d37f24899b82d21a14d2b38060", "9cd7e291a66f55335c619d63f3a7634b"},
-/* 1.28k */
-{"c6f854ae3d8f48e8982819a4b5302fb0", "90967247ba3f1bcb257432a4d78553bf"},
-/* 1.28jp */
-{"7fcd7bca6b98a34134e2518a616f4e85", "cfd22c20e473727148f11f83d0028fb3"},
-/* 1.29eu */
-{"27d90fc316709c096979ab24c914ee31", "5982302507d57c2a96e9480c242b5de0"},
-/* 1.29k */
-{"44416d97737fc47cd417a64d44064768", "1303e22ef5b1af866aa4def03d6c5f5a"},
-/* 1.29jp */
-{"1ac242c645572a0a5de99ae2b23453b8", "ce433c404ff7531f5852ce3cb61143ee"},
-/* 1.30eu */
-{"8d2d775b018f0532235d38f5317ae10c", "7fb49041294b3e6aea3894218d6d64cf"},
diff --git a/rbutil/icons/Makefile b/rbutil/icons/Makefile
deleted file mode 100644
index 8eb630f..0000000
--- a/rbutil/icons/Makefile
+++ /dev/null
@@ -1,39 +0,0 @@
-#             __________               __   ___.
-#   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
-#   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
-#   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
-#   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
-#                     \/            \/     \/    \/            \/
-# $Id$
-#
-CC = gcc
-CXX = $(shell $(PREFIX)wx-config --version=2.8 --cxx)
-INC = `$(PREFIX)wx-config --version=2.8 --cxxflags`
-LIBS = `$(PREFIX)wx-config --version=2.8 --libs`
-
-CFLAGS = -Wall -Wundef -DRBUTIL -D_LARGEFILE64_SOURCE
-ICONS := $(wildcard *.png)
-HEADERS := $(subst .png,.h,$(ICONS))
-OBJS := $(subst .png,.o,$(ICONS))
-CXXSOURCES = $(subst .png,.cpp,$(ICONS))
-SILENT = @
-BIN2C = ./bin2c
-
-all: $(OBJS)
-	
-
-bin2c: bin2c.c
-	$(SILENT) echo CC $<
-	$(SILENT) $(CC) -o $@ $<
-
-%.cpp: %.png bin2c
-	$(SILENT) echo BIN2C $<
-	$(SILENT) $(BIN2C) $<
-
-%.o: %.cpp
-	$(SILENT) echo CXX $<
-	$(SILENT) $(CXX) $(CFLAGS) $(INC) -c -o $@ $<
-
-clean:
-	$(SILENT) echo cleaning icons. 
-	$(SILENT) rm -f bin2c $(OBJS) $(HEADERS) $(CXXSOURCES)
diff --git a/rbutil/icons/bin2c.c b/rbutil/icons/bin2c.c
deleted file mode 100644
index 9940044..0000000
--- a/rbutil/icons/bin2c.c
+++ /dev/null
@@ -1,172 +0,0 @@
- // bin2c.c

- //

- // convert a binary file into a C source vector

- //

- // put into the public domain by Sandro Sigala

- //

- // syntax:  bin2c [-c] [-z] <input_file> <output_file>

- //

- //          -c    add the "const" keyword to definition

- //          -z    terminate the array with a zero (useful for embedded C strings)

- //

- // examples:

- //     bin2c -c myimage.png myimage_png.cpp

- //     bin2c -z sometext.txt sometext_txt.cpp

- 

- #include <ctype.h>

- #include <stdio.h>

- #include <stdlib.h>

- #include <string.h>

- 

- #ifndef PATH_MAX

- #define PATH_MAX 1024

- #endif

- 

- int useconst = 0;

- int zeroterminated = 0;

- 

- int myfgetc(FILE *f)

- {

- 	int c = fgetc(f);

- 	if (c == EOF && zeroterminated) {

- 		zeroterminated = 0;

- 		return 0;

- 	}

- 	return c;

- }

- 

- 

- void process(const char *ifname, const char *ofname)

- {

- 	FILE *ifile, *ofile;

-	/* modified */

-	int counter=0;	

- 	char buf2[PATH_MAX];

- 	char* cp2;

- 	char* cp3;

- 	if ((cp3 = strrchr(ofname, '/')) != NULL)

- 		++cp3;

- 	else {

- 		if ((cp3 = strrchr(ofname, '\\')) != NULL)

- 			++cp3;

- 		else

- 			cp3 = (char*) ofname;

- 	}

- 	

- 	strcpy(buf2, cp3);

- 	cp2 = strrchr(buf2, '.');

- 	*cp2 = '.';

- 	cp2++;

- 	*cp2 = 'h';

- 	cp2++;

- 	*cp2 ='\0';

- 	

- 	

- 	ifile = fopen(ifname, "rb");

- 	if (ifile == NULL) {

- 		fprintf(stderr, "cannot open %s for reading\n", ifname);

- 		exit(1);

- 	}

- 	ofile = fopen(ofname, "wb");

- 	if (ofile == NULL) {

- 		fprintf(stderr, "cannot open %s for writing\n", ofname);

- 		exit(1);

- 	}

- 	char buf[PATH_MAX], *p;

- 	const char *cp;

- 	if ((cp = strrchr(ifname, '/')) != NULL)

- 		++cp;

- 	else {

- 		if ((cp = strrchr(ifname, '\\')) != NULL)

- 			++cp;

- 		else

- 			cp = ifname;

- 	}

- 	strcpy(buf, cp);

- 	for (p = buf; *p != '\0'; ++p)

- 		if (!isalnum(*p))

- 			*p = '_';

-	fprintf(ofile,"#include \"%s\" \n\n",buf2);

- 	fprintf(ofile, "%sunsigned char %s[] = {\n", useconst ? "const " : "", buf);

- 	int c, col = 1;

- 	while ((c = myfgetc(ifile)) != EOF) {

-         counter++;

- 		if (col >= 78 - 6) {

- 			fputc('\n', ofile);

- 			col = 1;

- 		}

- 		fprintf(ofile, "0x%.2x, ", c);

- 		col += 6;

- 

- 	}

- 	fprintf(ofile, "\n};\n");

- 	

- 	/* modified */

- 	fprintf(ofile,"int %s_length = %i; \n",buf,counter);

- 	

- 	

- 	FILE *o2file;

- 	o2file = fopen(buf2, "wb");

-    	if (o2file == NULL) {

- 		fprintf(stderr, "cannot open %s for writing\n", buf2);

- 		exit(1);

- 	}

- 	

- 	fprintf(o2file, "#ifndef __%s__ \n", buf);

- 	fprintf(o2file, "#define __%s__ \n", buf);

-  	

- 	fprintf(o2file, "extern %sunsigned char %s[]; \n\n", useconst ? "const " : "", buf);

- 	fprintf(o2file, "extern int %s_length; \n\n", buf);

- 	

- 	fprintf(o2file, "#endif \n");

- 	

- 	fclose(ifile);

- 	fclose(ofile);

- 	fclose(o2file);

- }

- 

- void usage(void)

- {

- 	fprintf(stderr, "usage: bin2c <input_files> \n");

- 	exit(1);

- }

- 

- int main(int argc, char **argv)

- {

-    if (argc < 2) {

- 		usage();

- 	}

- 	int i;

- 	for(i = 1;i < argc ; i++)

- 	{

-       char buf[PATH_MAX];

- 	   char* cp;

- 	   strcpy(buf, argv[i]);

- 	   cp = strrchr(buf, '.');

- 	   cp++;

- 	   strcpy(cp,"cpp");

- 	   process(argv[i], buf);    

-    }

-     

-     

-    /* 

- 	while (argc > 3) {

- 		if (!strcmp(argv[1], "-c")) {

- 			useconst = 1;

- 			--argc;

- 			++argv;

- 		} else if (!strcmp(argv[1], "-z")) {

- 			zeroterminated = 1;

- 			--argc;

- 			++argv;

- 		} else {

- 			usage();

- 		}

- 	}

- 	if (argc != 3) {

- 		usage();

- 	}

- 	process(argv[1], argv[2]);

- 	*/

- 	return 0;

- }

diff --git a/rbutil/icons/bootloader_btn.png b/rbutil/icons/bootloader_btn.png
deleted file mode 100644
index 3590c9c..0000000
--- a/rbutil/icons/bootloader_btn.png
+++ /dev/null
Binary files differ
diff --git a/rbutil/icons/doom_btn.png b/rbutil/icons/doom_btn.png
deleted file mode 100644
index c086024..0000000
--- a/rbutil/icons/doom_btn.png
+++ /dev/null
Binary files differ
diff --git a/rbutil/icons/font_btn.png b/rbutil/icons/font_btn.png
deleted file mode 100644
index dd47a29..0000000
--- a/rbutil/icons/font_btn.png
+++ /dev/null
Binary files differ
diff --git a/rbutil/icons/rbinstall_btn.png b/rbutil/icons/rbinstall_btn.png
deleted file mode 100644
index c37ebec..0000000
--- a/rbutil/icons/rbinstall_btn.png
+++ /dev/null
Binary files differ
diff --git a/rbutil/icons/rembootloader_btn.png b/rbutil/icons/rembootloader_btn.png
deleted file mode 100644
index 8abf1da..0000000
--- a/rbutil/icons/rembootloader_btn.png
+++ /dev/null
Binary files differ
diff --git a/rbutil/icons/remrb_btn.png b/rbutil/icons/remrb_btn.png
deleted file mode 100644
index bd484b9..0000000
--- a/rbutil/icons/remrb_btn.png
+++ /dev/null
Binary files differ
diff --git a/rbutil/icons/talkfile_btn.png b/rbutil/icons/talkfile_btn.png
deleted file mode 100644
index 64e2763..0000000
--- a/rbutil/icons/talkfile_btn.png
+++ /dev/null
Binary files differ
diff --git a/rbutil/icons/themes_btn.png b/rbutil/icons/themes_btn.png
deleted file mode 100644
index 264ba79..0000000
--- a/rbutil/icons/themes_btn.png
+++ /dev/null
Binary files differ
diff --git a/rbutil/install_3d.xpm b/rbutil/install_3d.xpm
deleted file mode 100644
index c077e61..0000000
--- a/rbutil/install_3d.xpm
+++ /dev/null
@@ -1,70 +0,0 @@
-/* WxBitmapButton1 XPM */
-static char *install_3d_xpm[]={
-"56 46 20 1",
-"      c None",
-"0     c #BEBABE",
-"1     c #BEC3BE",
-"2     c #000011",
-"3     c #AEAAAE",
-"4     c #9E9A9E",
-"5     c #010101",
-"6     c #79869E",
-"7     c #C7BAC7",
-"8     c #5155FF",
-"9     c #8E8A8E",
-"a     c #AEAEB6",
-"b     c #202496",
-"c     c #B6AEB6",
-"d     c #CFC7CF",
-"e     c #9696AE",
-"f     c #7992B6",
-"g     c #717986",
-"h     c #28FF20",
-"i     c #A69EA6",
-"                                                       0",
-" 0101010101010101010101010101010101010101010101010101012",
-" 1010101010101010101010101010101010101010101010101010102",
-" 1001000100010001000100010001000100010001000100010001002",
-" 3030410331304103313041033130410331304103313041033130312",
-" 0101010100101010100101010010101010010101001010101001002",
-" 3030303030303030313030303030303031303030303030303130302",
-" 0101030010101301001015555555555555555300101013101001032",
-" 3041303140303045503050101010101010010530403030403040302",
-" 0103010300130153510350552552525252520563010310131013012",
-" 3030374131303530503051288888888888851566373040303130302",
-" 0301031303005305155150588888881818850296031013030300132",
-" 3030403030453051305555558888883838851266a03030304131302",
-" 0373030303151503050301558888880818850566030313730303032",
-" 3131303030355030513135b58888888838851566c03040313030412",
-" 330333d33303535555035bb58888888818820566330333033373332",
-" 30303040303035303055bbb58888888888851546303130303030302",
-" 3333333333333555555bbbb58888888888850566333333333333332",
-" 30303030373035bbbb5bbb35888888888885126e303030413030302",
-" 33333333333335bbbb5bb33588888888888505fg333333333333332",
-" 33303330333035bbbb5b33355555555555551566a33033303330332",
-" 3333333333333533335333351111110dhh110566333333333333332",
-" 3333333333333533335333355252552555252555333333333333332",
-" 3333333333333533335335051001001000100100533333333333332",
-" 4333433343334533435353350 10 10 10 10 10563343334333432",
-" 3333333333333533335335351001001055555500566333333333332",
-" 3343434333434545335353450101010105505551566c43433343432",
-" 3333333333333533535335350 10 00 10555555566333333333332",
-" 4343434343434545435353455555555555555555666343434343432",
-" 333333333333353353533335666666666666666fge6333333333332",
-" 434343434343454543534355666egf66966669gfgf4343434343432",
-" 34333433343335335453356555555552a3a7aaa7343334333433342",
-" 4343434343434545435356654000305555555343434343434343432",
-" 3434343434343534345566665555555300303534343434343434342",
-" 434343434343454343566egc4555505555555553434343434343432",
-" 443444344434455555egfga44455555555545555443444344434442",
-" 434343434343434666666ce34346555555555555534343434343432",
-" 4444444444444446666644444444666666555555564444444444442",
-" 4343434343434343i34a43434340434743666666666343434343432",
-" 444444444444444444i44444444444444444444444i444444444442",
-" 4443444344434443444344434443444344434443444344434443442",
-" 4444444444444444444444444444444444444444444444444444442",
-" 4344444443444444434444444344444443444444434444444344442",
-" 4444444444444444444444444444444444444444444444444444442",
-" 4444444444444444444444444444444444444444444444444444442",
-"12222222222222222222222222222222222222222222222222222222"};
-
diff --git a/rbutil/install_dialogs.cpp b/rbutil/install_dialogs.cpp
deleted file mode 100644
index 331a07d..0000000
--- a/rbutil/install_dialogs.cpp
+++ /dev/null
@@ -1,948 +0,0 @@
-
-#include "install_dialogs.h"
-#include "wizard.xpm"
-
-
-
-////////////////////////////////////////////////
-//// Bootloader Installation
-/////////////////////////////////////////////////
-
-IMPLEMENT_CLASS( bootloaderInstallDlg, wxDialog )
-
-BEGIN_EVENT_TABLE( bootloaderInstallDlg, wxDialog )
-
-END_EVENT_TABLE()
-
-bootloaderInstallDlg::bootloaderInstallDlg( )
-{
-    Init();
-}
-
-bootloaderInstallDlg::bootloaderInstallDlg( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-    Init();
-    Create(parent, id, caption, pos, size, style);
-}
-
-void bootloaderInstallDlg::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    wxBoxSizer* wxBoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(wxBoxSizer2, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // bitmap
-    wxBitmap sidebmp(wizard_xpm);
-    ImageCtrl* sideimage = new ImageCtrl(this,wxID_ANY);
-    sideimage->SetBitmap(sidebmp);
-    wxBoxSizer2->Add(sideimage,0,wxALIGN_LEFT | wxALL,5);
-
-    wxBoxSizer* wxBoxSizer3 = new wxBoxSizer(wxVERTICAL);
-    wxBoxSizer2->Add(wxBoxSizer3, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_devicepos = new DevicePositionCtrl(this,ID_DEVICEPOS);
-    wxBoxSizer3->Add(m_devicepos, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_firmwarepos = new FirmwarePositionCtrl(this,ID_FIRMWARE);
-    wxBoxSizer3->Add(m_firmwarepos, 0, wxALIGN_LEFT|wxALL, 5);
-
-    OkCancelCtrl* okCancel = new OkCancelCtrl(this,wxID_ANY);
-    topSizer->Add(okCancel, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
-
-}
-
-//init the local variables
-void bootloaderInstallDlg::Init()
-{
-
-}
-
-// create the window
-bool bootloaderInstallDlg::Create( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-
-    if (!wxDialog::Create( parent, id, caption, pos, size, style ))
-        return false;
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-    Centre();
-    return true;
-}
-
-
-
-// tranver data from the controls
-bool bootloaderInstallDlg::TransferDataFromWindow()
-{
-
-    if( m_devicepos->IsShown())
-    {
-        gv->curdestdir = m_devicepos->getDevicePos();
-        if(!wxDirExists(gv->curdestdir))
-        {
-            WARN_DIALOG(wxT("The Devicepostion is not valid"),
-                wxT("Select a Deviceposition"));
-            gv->curdestdir = wxT("");
-            return false;
-        }
-    }
-
-    if(m_firmwarepos->IsShown())
-    {
-       gv->curfirmware = m_firmwarepos->getFirmwarePos();
-        if(!wxFileExists(gv->curfirmware))
-        {
-            WARN_DIALOG(wxT("The Firmware position is not valid"),
-                wxT("Select a original Firmware"));
-            gv->curfirmware = wxT("");
-            return false;
-        }
-    }
-
-	return true;
-
-}
-
-// tranver data to the controls
-bool bootloaderInstallDlg::TransferDataToWindow()
-{
-    if(gv->curplat == wxT(""))
-    {
-        WARN_DIALOG(wxT("You have not selected a audio device"),
-                wxT("Select a Device"));
-        return false;
-    }
-	 int index = gv->plat_id.Index(gv->curplat);
-
-    if(!gv->plat_needsbootloader[index])
-    {
-    	 WARN_DIALOG(wxT("This Device doesnt need a Bootloader"),
-                wxT("Bootloader"));
-        return false;
-    }
-
-    if(gv->plat_bootloadermethod[index] != wxT("ipodpatcher") && gv->plat_bootloadermethod[index] != wxT("sansapatcher"))
-    {
-        m_devicepos->Show(true);
-    }else
-    {
-        m_devicepos->Show(false);
-    }
-    if(gv->plat_bootloadermethod[index] == wxT("fwpatcher"))
-    {
-        m_firmwarepos->Show(true);
-    }else
-    {
-        m_firmwarepos->Show(false);
-    }
-
-    m_devicepos->setDefault();
-    m_firmwarepos->setDefault();
-    return true;
-}
-////////////////////////////////////////////////
-//// Talk file creation
-/////////////////////////////////////////////////
-
-
-IMPLEMENT_CLASS( talkInstallDlg, wxDialog )
-
-BEGIN_EVENT_TABLE( talkInstallDlg, wxDialog )
-    EVT_BUTTON(ID_BROWSE_ENC_BTN, talkInstallDlg::OnBrowseEncBtn)
-    EVT_BUTTON(ID_BROWSE_TTS_BTN, talkInstallDlg::OnBrowseTtsBtn)
-END_EVENT_TABLE()
-
-talkInstallDlg::talkInstallDlg(TalkFileCreator* talkcreator )
-{
-    m_talkCreator = talkcreator;
-    Init();
-}
-
-talkInstallDlg::talkInstallDlg(TalkFileCreator* talkcreator, wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-    m_talkCreator = talkcreator;
-    Init();
-    Create(parent, id, caption, pos, size, style);
-}
-
-void talkInstallDlg::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    wxBoxSizer* wxBoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(wxBoxSizer2, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // bitmap
-    wxBitmap sidebmp(wizard_xpm);
-
-    ImageCtrl* sideimage = new ImageCtrl(this,wxID_ANY);
-    sideimage->SetBitmap(sidebmp);
-    wxBoxSizer2->Add(sideimage,0,wxALIGN_LEFT | wxALL,5);
-
-    wxBoxSizer* wxBoxSizer3 = new wxBoxSizer(wxVERTICAL);
-    wxBoxSizer2->Add(wxBoxSizer3, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // Device position
-    m_devicepos = new DevicePositionCtrl(this,ID_DEVICEPOS);
-    wxBoxSizer3->Add(m_devicepos, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // Encoder
-    wxStaticBox* WxStaticBoxSizer2_StaticBoxObj = new wxStaticBox(this,
-        wxID_ANY, wxT("Encoder"));
-	wxStaticBoxSizer* WxStaticBoxSizer2 =
-        new wxStaticBoxSizer(WxStaticBoxSizer2_StaticBoxObj,wxVERTICAL);
-	wxBoxSizer3->Add(WxStaticBoxSizer2,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    m_Enc = new wxComboBox(this,ID_ENC_CBX,wxT("lame"),
-            wxDefaultPosition,wxDefaultSize,m_talkCreator->getSupportedEnc(),wxCB_READONLY);
-    m_Enc->SetToolTip(wxT("Select your Encoder."));
-    m_Enc->SetHelpText(wxT("Select your Encoder."));
-    WxStaticBoxSizer2->Add(m_Enc,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    wxStaticText* enc_desc = new wxStaticText( this, wxID_STATIC,
-        wxT("Select the Encoder executable"), wxDefaultPosition,
-        wxDefaultSize, 0 );
-    WxStaticBoxSizer2->Add(enc_desc, 0, wxALIGN_LEFT|wxALL, 5);
-
-    wxBoxSizer* horizontalSizer = new wxBoxSizer(wxHORIZONTAL);
-    WxStaticBoxSizer2->Add(horizontalSizer, 0, wxGROW|wxALL, 5);
-
-    m_EncExe = new wxTextCtrl(this,wxID_ANY,gv->pathToEnc);
-    m_EncExe->SetToolTip(wxT("Type the folder where your Encoder exe is"));
-    m_EncExe->SetHelpText(wxT("Type the folder where your Encoder exe is"));
-    horizontalSizer->Add(m_EncExe,0,wxGROW | wxALL,5);
-
-    m_browseEncBtn = new wxButton(this, ID_BROWSE_ENC_BTN, wxT("Browse"),
-         wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator,
-         wxT("BrowseEncBtn"));
-    m_browseEncBtn->SetToolTip(wxT("Browse for your Encoder Exe"));
-    m_browseEncBtn->SetHelpText(wxT("Browse for your Encoder exe"));
-    horizontalSizer->Add(m_browseEncBtn,0,wxGROW | wxALL,5);
-
-    wxStaticText* enc_desc_opt = new wxStaticText( this, wxID_STATIC,
-        wxT("Encoder Options"), wxDefaultPosition,
-        wxDefaultSize, 0 );
-    WxStaticBoxSizer2->Add(enc_desc_opt, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_EncOpts = new wxTextCtrl(this,wxID_ANY,m_talkCreator->getEncOpts(wxT("lame")));
-    m_EncOpts->SetToolTip(wxT("Encoder Options"));
-    m_EncOpts->SetHelpText(wxT("Encoder Options"));
-    WxStaticBoxSizer2->Add(m_EncOpts, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // TTS
-    wxStaticBox* WxStaticBoxSizer3_StaticBoxObj = new wxStaticBox(this,
-        wxID_ANY, wxT("Text to Speach"));
-	wxStaticBoxSizer* WxStaticBoxSizer3 =
-        new wxStaticBoxSizer(WxStaticBoxSizer3_StaticBoxObj,wxVERTICAL);
-	wxBoxSizer3->Add(WxStaticBoxSizer3,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    m_Tts = new wxComboBox(this,ID_TTS_CBX,wxT("espeak"),
-            wxDefaultPosition,wxDefaultSize,m_talkCreator->getSupportedTTS(),wxCB_READONLY);
-    m_Tts->SetToolTip(wxT("Select your TTS."));
-    m_Tts->SetHelpText(wxT("Select your TTS."));
-    WxStaticBoxSizer3->Add(m_Tts,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    wxStaticText* tts_desc = new wxStaticText( this, wxID_STATIC,
-        wxT("Select the TTS executable"), wxDefaultPosition,
-        wxDefaultSize, 0 );
-    WxStaticBoxSizer3->Add(tts_desc, 0, wxALIGN_LEFT|wxALL, 5);
-
-    wxBoxSizer* horizontalSizer2 = new wxBoxSizer(wxHORIZONTAL);
-    WxStaticBoxSizer3->Add(horizontalSizer2, 0, wxGROW|wxALL, 5);
-
-    m_TtsExe = new wxTextCtrl(this,wxID_ANY,gv->pathToTts);
-    m_TtsExe->SetToolTip(wxT("Type the folder where your TTS exe is"));
-    m_TtsExe->SetHelpText(wxT("Type the folder where your TTS exe is"));
-    horizontalSizer2->Add(m_TtsExe,0,wxGROW | wxALL,5);
-
-    m_browseTtsBtn = new wxButton(this, ID_BROWSE_TTS_BTN, wxT("Browse"),
-         wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator,
-         wxT("BrowseEncBtn"));
-    m_browseTtsBtn->SetToolTip(wxT("Browse for your Encoder Exe"));
-    m_browseTtsBtn->SetHelpText(wxT("Browse for your Encoder exe"));
-    horizontalSizer2->Add(m_browseTtsBtn,0,wxGROW | wxALL,5);
-
-    wxStaticText* tts_desc_opt = new wxStaticText( this, wxID_STATIC,
-        wxT("TTS Options"), wxDefaultPosition,
-        wxDefaultSize, 0 );
-    WxStaticBoxSizer3->Add(tts_desc_opt, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_TtsOpts = new wxTextCtrl(this,wxID_ANY,m_talkCreator->getTTsOpts(wxT("espeak")));
-    m_TtsOpts->SetToolTip(wxT("TTS Options"));
-    m_TtsOpts->SetHelpText(wxT("TTS Options"));
-    WxStaticBoxSizer3->Add(m_TtsOpts, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_OverwriteWave = new wxCheckBox(this,wxID_ANY,wxT("Overwrite Wav"));
-    m_OverwriteWave->SetToolTip(wxT("Overwrite Wavefiles"));
-    m_OverwriteWave->SetHelpText(wxT("Overwrite Wavefiles"));
-    wxBoxSizer3->Add(m_OverwriteWave,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    m_OverwriteTalk = new wxCheckBox(this,wxID_ANY,wxT("Overwrite Talk"));
-    m_OverwriteTalk->SetToolTip(wxT("Overwrite Talkfiles"));
-    m_OverwriteTalk->SetHelpText(wxT("Overwrite Talkfiles"));
-    wxBoxSizer3->Add(m_OverwriteTalk,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    m_RemoveWave = new wxCheckBox(this,wxID_ANY,wxT("Remove Wav"));
-    m_RemoveWave->SetToolTip(wxT("Remove Wavfiles"));
-    m_RemoveWave->SetHelpText(wxT("Remove Wavfiles"));
-    wxBoxSizer3->Add(m_RemoveWave,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    m_Recursive = new wxCheckBox(this,wxID_ANY,wxT("Recursive"));
-    m_Recursive->SetToolTip(wxT("Recursive"));
-    m_Recursive->SetHelpText(wxT("Recursive"));
-    wxBoxSizer3->Add(m_Recursive,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    m_StripExtensions = new wxCheckBox(this,wxID_ANY,wxT("Strip Extensions"));
-    m_StripExtensions->SetToolTip(wxT("Strip Extensions"));
-    m_StripExtensions->SetHelpText(wxT("Strip Extensions"));
-    wxBoxSizer3->Add(m_StripExtensions,0,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-    OkCancelCtrl* okCancel = new OkCancelCtrl(this,wxID_ANY);
-    topSizer->Add(okCancel, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
-
-    // controls at the bottom
-    wxBoxSizer* wxBoxSizer7 = new wxBoxSizer(wxVERTICAL);
-    topSizer->Add(wxBoxSizer7, 0, wxGROW | wxALL, 5);
-
-}
-
-//init the local variables
-void talkInstallDlg::Init()
-{
-
-}
-
-// create the window
-bool talkInstallDlg::Create( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-
-    if (!wxDialog::Create( parent, id, caption, pos, size, style ))
-        return false;
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-    Centre();
-    return true;
-}
-
-void talkInstallDlg::OnBrowseEncBtn(wxCommandEvent& event)
-{
-    const wxString& temp = wxFileSelector(
-        wxT("Please select the location of your encoder"), wxT(""),
-        wxT(""),wxT(""),wxT("*.*"),0, this);
-
-    if (!temp.empty())
-    {
-        m_EncExe->SetValue(temp);
-    }
-}
-
-void talkInstallDlg::OnBrowseTtsBtn(wxCommandEvent& event)
-{
-    const wxString& temp = wxFileSelector(
-        wxT("Please select the location of your TTS engine"), wxT(""),
-        wxT(""),wxT(""),wxT("*.*"),0, this);
-
-
-    if (!temp.empty())
-    {
-        m_TtsExe->SetValue(temp);
-    }
-}
-
-// tranver data from the controls
-bool talkInstallDlg::TransferDataFromWindow()
-{
-    gv->curdestdir = m_devicepos->getDevicePos();
-    if(!wxDirExists(gv->curdestdir))
-    {
-        WARN_DIALOG(wxT("The Devicepostion is not valid"),
-            wxT("Select a Deviceposition"));
-        gv->curdestdir = wxT("");
-        return false;
-    }
-    m_talkCreator->setDir(gv->curdestdir);
-
-    gv->pathToEnc = m_EncExe->GetValue();
-    if(!wxFileExists(gv->pathToEnc))
-    {
-        WARN_DIALOG(wxT("The Encoder exe is not valid"),
-            wxT("Select an Encoder"));
-        gv->pathToEnc = wxT("");
-        return false;
-    }
-    m_talkCreator->setEncexe(gv->pathToEnc);
-
-    gv->pathToTts = m_TtsExe->GetValue();
-    if(!wxFileExists(gv->pathToTts))
-    {
-        WARN_DIALOG(wxT("The TTs exe is not valid"),
-            wxT("Select an TTS engine"));
-        gv->pathToTts = wxT("");
-        return false;
-    }
-    m_talkCreator->setTTSexe(gv->pathToTts);
-
-    m_talkCreator->setTTsType(m_Tts->GetValue());
-    m_talkCreator->setEncType(m_Enc->GetValue());
-
-
-    m_talkCreator->setOverwriteTalk(m_OverwriteWave->IsChecked());
-    m_talkCreator->setOverwriteWav(m_OverwriteTalk->IsChecked());
-    m_talkCreator->setRemoveWav(m_RemoveWave->IsChecked());
-    m_talkCreator->setRecursive(m_Recursive->IsChecked());
-    m_talkCreator->setStripExtensions(m_StripExtensions->IsChecked());
-
-    m_talkCreator->setEncOpts(m_EncOpts->GetValue());
-    m_talkCreator->setTTsOpts(m_TtsOpts->GetValue());
-
-    return true;
-}
-
-// tranver data to the controls
-bool talkInstallDlg::TransferDataToWindow()
-{
-   m_devicepos->setDefault();
-
-   m_OverwriteWave->SetValue(true);
-   m_OverwriteTalk->SetValue(true);
-   m_RemoveWave->SetValue(true);
-   m_Recursive->SetValue(true);
-   m_StripExtensions->SetValue(false);
-
-
-
-   return true;
-}
-
-////////////////////////////////////////////////
-//// Font Installation
-/////////////////////////////////////////////////
-
-
-IMPLEMENT_CLASS( fontInstallDlg, wxDialog )
-
-BEGIN_EVENT_TABLE( fontInstallDlg, wxDialog )
-
-END_EVENT_TABLE()
-
-fontInstallDlg::fontInstallDlg( )
-{
-    Init();
-}
-
-fontInstallDlg::fontInstallDlg( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-    Init();
-    Create(parent, id, caption, pos, size, style);
-}
-
-void fontInstallDlg::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    wxBoxSizer* wxBoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(wxBoxSizer2, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // bitmap
-    wxBitmap sidebmp(wizard_xpm);
-
-    ImageCtrl* sideimage = new ImageCtrl(this,wxID_ANY);
-    sideimage->SetBitmap(sidebmp);
-    wxBoxSizer2->Add(sideimage,0,wxALIGN_LEFT | wxALL,5);
-
-    wxBoxSizer* wxBoxSizer3 = new wxBoxSizer(wxVERTICAL);
-    wxBoxSizer2->Add(wxBoxSizer3, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_devicepos = new DevicePositionCtrl(this,ID_DEVICEPOS);
-    wxBoxSizer3->Add(m_devicepos, 0, wxALIGN_LEFT|wxALL, 5);
-
-
-    OkCancelCtrl* okCancel = new OkCancelCtrl(this,wxID_ANY);
-    topSizer->Add(okCancel, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
-
-    // controls at the bottom
-    wxBoxSizer* wxBoxSizer7 = new wxBoxSizer(wxVERTICAL);
-    topSizer->Add(wxBoxSizer7, 0, wxGROW | wxALL, 5);
-
-}
-
-//init the local variables
-void fontInstallDlg::Init()
-{
-
-}
-
-// create the window
-bool fontInstallDlg::Create( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-
-    if (!wxDialog::Create( parent, id, caption, pos, size, style ))
-        return false;
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-    Centre();
-    return true;
-}
-
-
-// tranver data from the controls
-bool fontInstallDlg::TransferDataFromWindow()
-{
-    gv->curdestdir = m_devicepos->getDevicePos();
-    if(!wxDirExists(gv->curdestdir))
-    {
-        WARN_DIALOG(wxT("The Devicepostion is not valid"),
-            wxT("Select a Deviceposition"));
-        gv->curdestdir = wxT("");
-        return false;
-    }
-
-    return true;
-}
-
-// tranver data to the controls
-bool fontInstallDlg::TransferDataToWindow()
-{
-   m_devicepos->setDefault();
-   return true;
-}
-
-////////////////////////////////////////////////
-//// Rockbox DeInstallation
-/////////////////////////////////////////////////
-
-IMPLEMENT_CLASS( rockboxDeInstallDlg, wxDialog )
-
-BEGIN_EVENT_TABLE( rockboxDeInstallDlg, wxDialog )
-
-END_EVENT_TABLE()
-
-rockboxDeInstallDlg::rockboxDeInstallDlg( )
-{
-    Init();
-}
-
-rockboxDeInstallDlg::rockboxDeInstallDlg( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-    Init();
-    Create(parent, id, caption, pos, size, style);
-}
-
-void rockboxDeInstallDlg::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    wxBoxSizer* wxBoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(wxBoxSizer2, 0, wxALIGN_LEFT|wxALL, 5);
-
-     // bitmap
-    wxBitmap sidebmp(wizard_xpm);
-
-    ImageCtrl* sideimage = new ImageCtrl(this,wxID_ANY);
-    sideimage->SetBitmap(sidebmp);
-    wxBoxSizer2->Add(sideimage,0,wxALIGN_LEFT | wxALL,5);
-
-    wxBoxSizer* wxBoxSizer3 = new wxBoxSizer(wxVERTICAL);
-    wxBoxSizer2->Add(wxBoxSizer3, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_devicepos = new DevicePositionCtrl(this,ID_DEVICEPOS);
-    wxBoxSizer3->Add(m_devicepos, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // Full deinstallation ?
-    wxStaticText* WxStaticText1 = new wxStaticText(this, wxID_ANY,
-        wxT("Rockbox Utility normally uninstalls Rockbox using an uninstall\n"
-          "file created during installation.  This means that when Rockbox is\n"
-          "uninstalled all your configuration files are preserved.  However,\n"
-          "you can also perform a full uninstall, which will completely\n"
-          "remove all traces of Rockbox from your system, and can be used\n"
-          "even if Rockbox was previously installed manually."));
-    wxBoxSizer3->Add(WxStaticText1,0,wxGROW | wxALL,5);
-
-    wxCheckBox* FullCheckBox = new wxCheckBox(this, ID_FULL_CHCKBX,
-        wxT("Perform a full uninstall"));
-    wxBoxSizer3->Add(FullCheckBox, 0, wxALL, 5);
-
-   // controls at the bottom
-    OkCancelCtrl* okCancel = new OkCancelCtrl(this,wxID_ANY);
-    topSizer->Add(okCancel, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
-
-}
-
-//init the local variables
-void rockboxDeInstallDlg::Init()
-{
-
-}
-
-// create the window
-bool rockboxDeInstallDlg::Create( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-    if (!wxDialog::Create( parent, id, caption, pos, size, style ))
-        return false;
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-    Centre();
-    return true;
-}
-
-
-// tranver data from the controls
-bool rockboxDeInstallDlg::TransferDataFromWindow()
-{
-
-    gv->curdestdir = m_devicepos->getDevicePos();
-    if(!wxDirExists(gv->curdestdir))
-    {
-        WARN_DIALOG(wxT("The Devicepostion is not valid"),
-            wxT("Select a Deviceposition"));
-        gv->curdestdir = wxT("");
-        return false;
-    }
-
-    wxCheckBox* fullchkbx = (wxCheckBox*) FindWindow(ID_FULL_CHCKBX);
-    gv->curisfull = fullchkbx->IsChecked();
-
-    return true;
-}
-
-// tranver data to the controls
-bool rockboxDeInstallDlg::TransferDataToWindow()
-{
-    m_devicepos->setDefault();
-    return true;
-}
-
-////////////////////////////////////////////////
-//// Themes Installation
-/////////////////////////////////////////////////
-
-IMPLEMENT_CLASS( themesInstallDlg, wxDialog )
-
-BEGIN_EVENT_TABLE( themesInstallDlg, wxDialog )
-
-END_EVENT_TABLE()
-
-themesInstallDlg::themesInstallDlg( )
-{
-
-}
-
-themesInstallDlg::themesInstallDlg( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-    Create(parent, id, caption, pos, size, style);
-}
-
-void themesInstallDlg::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    wxBoxSizer* topHoriSizer = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(topHoriSizer, 0, wxALIGN_LEFT|wxALL, 5);
-
-      // bitmap
-    wxBitmap sidebmp(wizard_xpm);
-
-    ImageCtrl* sideimage = new ImageCtrl(this,wxID_ANY);
-    sideimage->SetBitmap(sidebmp);
-    topHoriSizer->Add(sideimage,0,wxALIGN_LEFT | wxALL,5);
-
-    wxBoxSizer* mainVertiSizer = new wxBoxSizer(wxVERTICAL);
-    topHoriSizer->Add(mainVertiSizer, 0, wxGROW|wxALL, 5);
-
-    wxBoxSizer* wxBoxSizer4 = new wxBoxSizer(wxHORIZONTAL);
-    mainVertiSizer->Add(wxBoxSizer4, 0, wxGROW|wxALL, 0);
-
-    wxBoxSizer* wxBoxSizer5 = new wxBoxSizer(wxVERTICAL);
-    wxBoxSizer4->Add(wxBoxSizer5, 0, wxGROW|wxALL, 0);
-
-    m_devicepos = new DevicePositionCtrl(this,ID_DEVICEPOS);
-    wxBoxSizer5->Add(m_devicepos, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_theme = new ThemeCtrl(this,ID_THEME);
-    wxBoxSizer5->Add(m_theme, 0, wxALIGN_LEFT|wxALL, 5);
-
-     // controls at the bottom
-    OkCancelCtrl* okCancel = new OkCancelCtrl(this,wxID_ANY);
-    topSizer->Add(okCancel, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
-
-
-}
-
-
-// create the window
-bool themesInstallDlg::Create( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-
-    if (!wxDialog::Create( parent, id, caption, pos, size, style ))
-        return false;
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-    Centre();
-    return true;
-}
-
-
-// tranver data from the controls
-bool themesInstallDlg::TransferDataFromWindow()
-{
-
-    gv->curdestdir = m_devicepos->getDevicePos();
-    if(!wxDirExists(gv->curdestdir))
-    {
-        WARN_DIALOG(wxT("The Devicepostion is not valid"),
-            wxT("Select a Deviceposition"));
-        gv->curdestdir = wxT("");
-        return false;
-    }
-
-    gv->themesToInstall.Clear();
-    gv->themesToInstall = m_theme->getThemesToInstall();
-
-    if(gv->themesToInstall.GetCount() == 0)
-    {
-         WARN_DIALOG(wxT("You have not selected a Theme to Install"), wxT("Select a Theme"));
-         return false;
-    }
-
-    return true;
-}
-
-// tranver data to the controls
-bool themesInstallDlg::TransferDataToWindow()
-{
-    if(gv->curplat == wxT(""))
-    {
-        WARN_DIALOG(wxT("You have not selected a audio device"),
-                wxT("Select a Device"));
-        return false;
-    }
-
-    m_devicepos->setDefault();
-    m_theme->setDevice(gv->curplat);
-    return true;
-}
-////////////////////////////////////////////////
-//// Rockbox Installation
-/////////////////////////////////////////////////
-
-IMPLEMENT_CLASS( rockboxInstallDlg, wxDialog )
-
-BEGIN_EVENT_TABLE( rockboxInstallDlg, wxDialog )
-    EVT_RADIOBOX(ID_BUILD_BOX, rockboxInstallDlg::OnBuildBox)
-END_EVENT_TABLE()
-
-rockboxInstallDlg::rockboxInstallDlg( )
-{
-}
-
-rockboxInstallDlg::rockboxInstallDlg( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-    Create(parent, id, caption, pos, size, style);
-}
-
-void rockboxInstallDlg::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    wxBoxSizer* wxBoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(wxBoxSizer2, 0, wxALIGN_LEFT|wxALL, 5);
-
-       // bitmap
-    wxBitmap sidebmp(wizard_xpm);
-
-    ImageCtrl* sideimage = new ImageCtrl(this,wxID_ANY);
-    sideimage->SetBitmap(sidebmp);
-    wxBoxSizer2->Add(sideimage,0,wxALIGN_LEFT | wxALL,5);
-
-    wxBoxSizer* wxBoxSizer3 = new wxBoxSizer(wxVERTICAL);
-    wxBoxSizer2->Add(wxBoxSizer3, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_devicepos = new DevicePositionCtrl(this,ID_DEVICEPOS);
-    wxBoxSizer3->Add(m_devicepos, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // Build information
-    wxStaticText* WxStaticText1 = new wxStaticText(this, wxID_ANY,
-    wxT("Please select the Rockbox version you would like "
-        "to install on your audio\ndevice:"));
-    wxBoxSizer3->Add(WxStaticText1,0,wxGROW | wxALL,5);
-
-    wxArrayString array;
-    array.Add(wxT("Rockbox stable version (") + gv->last_release + wxT(")"));
-    array.Add(wxT("Archived Build"));
-    array.Add(wxT("Current Build "));
-
-    wxRadioBox* BuildRadioBox = new wxRadioBox(this, ID_BUILD_BOX, wxT("Version"),
-        wxDefaultPosition, wxDefaultSize, array, 0, wxRA_SPECIFY_ROWS);
-    wxBoxSizer3->Add(BuildRadioBox, 0, wxGROW | wxALL, 5);
-
-    wxStaticBox* WxStaticBox1 = new wxStaticBox(this, wxID_ANY, wxT("Details:"));
-    wxStaticBoxSizer* WxStaticBoxSizer2 = new wxStaticBoxSizer(WxStaticBox1,
-        wxVERTICAL);
-    wxStaticText* DetailText = new wxStaticText(this, ID_DETAIL_TXT, wxT(""));
-    wxBoxSizer3->Add(WxStaticBoxSizer2, 1, wxGROW | wxALL, 5);
-    WxStaticBoxSizer2->Add(DetailText, 1, wxGROW | wxALL, 5);
-
-    wxStaticText* WxStaticText2 = new wxStaticText(this, wxID_ANY,
-        wxT("Rockbox Utility stores copies of Rockbox it has downloaded on the\n"
-        "local hard disk to save network traffic.  If your local copy is\n"
-        "no longer working, tick this box to download a fresh copy.") );
-    wxBoxSizer3->Add(WxStaticText2, 0 , wxALL, 5);
-
-    wxCheckBox* NoCacheCheckBox = new wxCheckBox(this, ID_NOCACHE_CHCKBX,
-        wxT("Don't use locally cached copies of Rockbox") );
-    wxBoxSizer3->Add(NoCacheCheckBox, 0, wxALL, 5);
-    // controls at the bottom
-    OkCancelCtrl* okCancel = new OkCancelCtrl(this,wxID_ANY);
-    topSizer->Add(okCancel, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
-
-}
-
-// create the window
-bool rockboxInstallDlg::Create( wxWindow* parent,
-    wxWindowID id, const wxString& caption,
-    const wxPoint& pos, const wxSize& size, long style )
-{
-
-    if (!wxDialog::Create( parent, id, caption, pos, size, style ))
-        return false;
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-    Centre();
-    return true;
-}
-
-void rockboxInstallDlg::OnBuildBox(wxCommandEvent& event)
-{
-    wxString str;
-    wxRadioBox* BuildRadioBox = (wxRadioBox*) FindWindow(ID_BUILD_BOX);
-    wxCheckBox* NoCacheCheckBox = (wxCheckBox*) FindWindow(ID_NOCACHE_CHCKBX);
-    wxStaticText* DetailText = (wxStaticText*)FindWindow(ID_DETAIL_TXT);
-
-    switch(BuildRadioBox->GetSelection() )
-    {
-         case BUILD_RELEASE:
-            str = _("This is the last released version of Rockbox, and is the\n"
-               "recommended version to install.");
-            NoCacheCheckBox->Enable();
-            break;
-         case BUILD_DAILY:
-            str = _("These are automatically built each day from the current\n"
-                "development source code.  This generally has more features\n"
-                "than the last release but may be much less stable.  Features\n"
-                "may change regularly.");
-            NoCacheCheckBox->Enable();
-            break;
-        case BUILD_BLEEDING:
-            str = _("This is the absolute up to the minute Rockbox built after\n"
-                "the last change was made.\n\n"
-                "Note:  This option will always download a fresh copy from the\n"
-                "web server.\n");
-            NoCacheCheckBox->Enable(false);
-            break;
-        default:
-            break;
-    }
-
-    DetailText->SetLabel(str);
-
-    this->GetSizer()->Layout();
-    this->GetSizer()->Fit(this);
-    this->GetSizer()->SetSizeHints(this);
-    Refresh();
-}
-
-
-// tranver data from the controls
-bool rockboxInstallDlg::TransferDataFromWindow()
-{
-    wxRadioBox* BuildRadioBox = (wxRadioBox*) FindWindow(ID_BUILD_BOX);
-    wxCheckBox* NoCacheCheckBox = (wxCheckBox*) FindWindow(ID_NOCACHE_CHCKBX);
-
-    gv->curdestdir = m_devicepos->getDevicePos();
-    if(!wxDirExists(gv->curdestdir))
-    {
-       WARN_DIALOG(wxT("The Devicepostion is not valid"),
-           wxT("Select a Deviceposition"));
-       gv->curdestdir = wxT("");
-       return false;
-    }
-
-    gv->curbuild = BuildRadioBox->GetSelection();
-    gv->nocache = (gv->curbuild == BUILD_BLEEDING) ? true :
-                  NoCacheCheckBox->IsChecked();
-
-    return true;
-}
-
-// tranver data to the controls
-bool rockboxInstallDlg::TransferDataToWindow()
-{
-    m_devicepos->setDefault();
-
-	 if(gv->curplat == wxT(""))
-    {
-        WARN_DIALOG(wxT("You have not selected a audio device"),
-                wxT("Select a Device"));
-        return false;
-    }
-
-    wxRadioBox* BuildRadioBox = (wxRadioBox*) FindWindow(ID_BUILD_BOX);
-
-    int index =gv->plat_id.Index(gv->curplat);
-
-    wxCommandEvent updateradiobox(wxEVT_COMMAND_RADIOBOX_SELECTED,
-        ID_BUILD_BOX);
-
-    if (gv->plat_released[index] )
-    {
-        BuildRadioBox->Enable(BUILD_RELEASE, true);
-        BuildRadioBox->SetSelection(BUILD_RELEASE);
-    } else {
-        BuildRadioBox->Enable(BUILD_RELEASE, false);
-        BuildRadioBox->SetSelection(BUILD_BLEEDING);
-
-    }
-    wxPostEvent(this, updateradiobox);
-    return true;
-}
diff --git a/rbutil/install_dialogs.h b/rbutil/install_dialogs.h
deleted file mode 100644
index 87c557a..0000000
--- a/rbutil/install_dialogs.h
+++ /dev/null
@@ -1,261 +0,0 @@
-#ifndef INSTALL_DIALOGS_H_INCLUDED
-#define INSTALL_DIALOGS_H_INCLUDED
-
-#include "rbutil.h"
-#include "talkfile.h"
-
-#include "rbutilCtrls.h"
-class bootloaderInstallDlg : public wxDialog
-{
-    DECLARE_CLASS( bootloaderInstallDlg )
-    DECLARE_EVENT_TABLE()
-public:
-enum {
-			ID_DEVICEPOS = 1002,
-			ID_FIRMWARE = 1003,
-     }; //End of Enum
-public:
-	bootloaderInstallDlg( );
-    bootloaderInstallDlg( wxWindow* parent,
-            wxWindowID id = wxID_ANY,
-            const wxString& caption = wxT("Bootloader Installation"),
-            const wxPoint& pos = wxDefaultPosition,
-            const wxSize& size = wxDefaultSize,
-            long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
-    // Member initialization
-    void Init();
-    //Creation
-    bool Create( wxWindow* parent,
-        wxWindowID id = wxID_ANY,
-        const wxString& caption = wxT("Bootloader Installation"),
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxDEFAULT_DIALOG_STYLE |wxRESIZE_BORDER );
-    // Creates the controls and sizers
-    void CreateControls();
-
-    bool TransferDataFromWindow();
-    bool TransferDataToWindow();
-
-private:
-
-    DevicePositionCtrl* m_devicepos;
-    FirmwarePositionCtrl* m_firmwarepos;
-
-
-};
-
-class talkInstallDlg : public wxDialog
-{
-    DECLARE_CLASS( talkInstallDlg )
-    DECLARE_EVENT_TABLE()
-public:
-enum {
-			ID_DEVICEPOS = 1002,
-			ID_BROWSE_ENC_BTN = 1003,
-			ID_BROWSE_TTS_BTN = 1004,
-			ID_TTS_CBX = 1005,
-			ID_ENC_CBX = 1006,
-     }; //End of Enum
-public:
-	talkInstallDlg(TalkFileCreator* talkcreator);
-    talkInstallDlg(TalkFileCreator* talkcreator, wxWindow* parent,
-            wxWindowID id = wxID_ANY,
-            const wxString& caption = wxT("Talk file creation"),
-            const wxPoint& pos = wxDefaultPosition,
-            const wxSize& size = wxDefaultSize,
-            long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER  );
-    /// Member initialization
-    void Init();
-    /// Creation
-    bool Create( wxWindow* parent,
-        wxWindowID id = wxID_ANY,
-        const wxString& caption = wxT("Talk file creation"),
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER  );
-    /// Creates the controls and sizers
-    void CreateControls();
-
-    void OnBrowseEncBtn(wxCommandEvent& event);
-    void OnBrowseTtsBtn(wxCommandEvent& event);
-
-    bool TransferDataFromWindow();
-    bool TransferDataToWindow();
-
-private:
-    TalkFileCreator* m_talkCreator;
-
-     DevicePositionCtrl* m_devicepos;
-
-     wxTextCtrl* m_EncExe;
-     wxButton* m_browseEncBtn;
-     wxTextCtrl* m_EncOpts;
-     wxComboBox* m_Enc;
-
-     wxTextCtrl* m_TtsExe;
-     wxButton* m_browseTtsBtn;
-     wxTextCtrl* m_TtsOpts;
-     wxComboBox* m_Tts;
-
-
-     wxCheckBox* m_OverwriteWave;
-     wxCheckBox* m_OverwriteTalk;
-     wxCheckBox* m_RemoveWave;
-     wxCheckBox* m_Recursive;
-     wxCheckBox* m_StripExtensions;
-
-};
-
-
-class fontInstallDlg : public wxDialog
-{
-    DECLARE_CLASS( fontInstallDlg )
-    DECLARE_EVENT_TABLE()
-public:
-enum {
-			ID_DEVICEPOS = 1002,
-     }; //End of Enum
-public:
-	fontInstallDlg( );
-    fontInstallDlg( wxWindow* parent,
-            wxWindowID id = wxID_ANY,
-            const wxString& caption = wxT("Font Installation"),
-            const wxPoint& pos = wxDefaultPosition,
-            const wxSize& size = wxDefaultSize,
-            long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER  );
-    /// Member initialization
-    void Init();
-    /// Creation
-    bool Create( wxWindow* parent,
-        wxWindowID id = wxID_ANY,
-        const wxString& caption = wxT("Font Installation"),
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER  );
-    /// Creates the controls and sizers
-    void CreateControls();
-
-    bool TransferDataFromWindow();
-    bool TransferDataToWindow();
-
-private:
-     DevicePositionCtrl* m_devicepos;
-};
-
-
-class rockboxDeInstallDlg : public wxDialog
-{
-    DECLARE_CLASS( rockboxDeInstallDlg )
-    DECLARE_EVENT_TABLE()
-public:
-enum {
-			ID_DEVICEPOS = 1002,
-			ID_FULL_CHCKBX = 1003,
-     }; //End of Enum
-public:
-	rockboxDeInstallDlg( );
-    rockboxDeInstallDlg( wxWindow* parent,
-            wxWindowID id = wxID_ANY,
-            const wxString& caption = wxT("Rockbox Deinstallation"),
-            const wxPoint& pos = wxDefaultPosition,
-            const wxSize& size = wxDefaultSize,
-            long style =wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER  );
-    /// Member initialization
-    void Init();
-    /// Creation
-    bool Create( wxWindow* parent,
-        wxWindowID id = wxID_ANY,
-        const wxString& caption = wxT("Rockbox Deinstallation"),
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style =wxDEFAULT_DIALOG_STYLE |wxRESIZE_BORDER );
-    /// Creates the controls and sizers
-    void CreateControls();
-
-    bool TransferDataFromWindow();
-    bool TransferDataToWindow();
-
-private:
-    DevicePositionCtrl* m_devicepos;
-};
-
-class themesInstallDlg : public wxDialog
-{
-    DECLARE_CLASS( themesInstallDlg )
-    DECLARE_EVENT_TABLE()
-public:
-enum {
-			ID_DEVICE = 1001,
-			ID_DEVICEPOS = 1002,
-			ID_THEME = 1006,
-     }; //End of Enum
-public:
-	themesInstallDlg( );
-    themesInstallDlg( wxWindow* parent,
-            wxWindowID id = wxID_ANY,
-            const wxString& caption = wxT("Themes Installation"),
-            const wxPoint& pos = wxDefaultPosition,
-            const wxSize& size = wxDefaultSize,
-            long style = wxDEFAULT_DIALOG_STYLE |wxRESIZE_BORDER );
-    // Creation
-    bool Create( wxWindow* parent,
-        wxWindowID id = wxID_ANY,
-        const wxString& caption = wxT("Themes Installation"),
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxDEFAULT_DIALOG_STYLE |wxRESIZE_BORDER );
-    // Creates the controls and sizers
-    void CreateControls();
-
-    bool TransferDataFromWindow();
-    bool TransferDataToWindow();
-
-private:
-    wxString currentPreview;
-    DevicePositionCtrl* m_devicepos;
-    ThemeCtrl*  m_theme;
-
-};
-
-class rockboxInstallDlg : public wxDialog
-{
-    DECLARE_CLASS( rockboxInstallDlg )
-    DECLARE_EVENT_TABLE()
-public:
-enum {
-			ID_DEVICEPOS = 1002,
-			ID_BUILD_BOX = 1006,
-			ID_DEVICE_POS_CTRL = 1007,
-			ID_DETAIL_TXT = 1008,
-			ID_NOCACHE_CHCKBX =1009,
-
-     }; //End of Enum
-public:
-	rockboxInstallDlg( );
-    rockboxInstallDlg( wxWindow* parent,
-            wxWindowID id = wxID_ANY,
-            const wxString& caption = wxT("Rockbox Installation"),
-            const wxPoint& pos = wxDefaultPosition,
-            const wxSize& size = wxDefaultSize,
-            long style = wxDEFAULT_DIALOG_STYLE |wxRESIZE_BORDER  );
-    // Creation
-    bool Create( wxWindow* parent,
-        wxWindowID id = wxID_ANY,
-        const wxString& caption = wxT("Rockbox Installation"),
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxDEFAULT_DIALOG_STYLE |wxRESIZE_BORDER );
-    // Creates the controls and sizers
-    void CreateControls();
-
-    void OnBuildBox(wxCommandEvent& event);
-
-    bool TransferDataFromWindow();
-    bool TransferDataToWindow();
-
-private:
-    DevicePositionCtrl* m_devicepos;
-};
-
-#endif // INSTALL_DIALOGS_H_INCLUDED
diff --git a/rbutil/installlog.cpp b/rbutil/installlog.cpp
deleted file mode 100644
index 7f6fa99..0000000
--- a/rbutil/installlog.cpp
+++ /dev/null
@@ -1,150 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: installlog.cpp
- *
- * Copyright (C) 2006 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "installlog.h"
-#include "rbutil.h"
-
-InstallLog::InstallLog(wxString logname, bool CreateLog)
-{
-    wxString buf;
-    dirtyflag = true;
-
-    if (! CreateLog && ! wxFileExists(logname) ) return;
-
-    logfile = new wxFileConfig(wxEmptyString, wxEmptyString, logname);
-
-
-    if (!logfile)
-    {
-        wxLogWarning(_("Failed to create install log file: ") + logname);
-        return;
-    }
-
-    logfile->SetPath(wxT("/InstallLog"));
-    if (logfile->Exists(wxT("Version")) &&
-        logfile->Read(wxT("Version"), 0l) != LOGFILE_VERSION )
-    {
-        wxLogWarning(_("Logfile version mismatch: ") + logname);
-        delete logfile;
-        return;
-    }
-
-    logfile->Write(wxT("Version"), LOGFILE_VERSION);
-    dirtyflag = false;
-}
-
-InstallLog::~InstallLog()
-{
-    if (dirtyflag) return;
-
-    delete logfile;
-}
-
-unsigned int InstallLog::WriteFile(wxString filepath, bool isDir)
-{
-    wxString key, buf;
-    long installcount = 0;
-
-    if (dirtyflag) return true;
-
-    filepath.Replace(PATH_SEP, wxT("/") );
-
-    if (filepath.GetChar(0) == '/')
-        filepath = filepath.Right(filepath.Len() - 1);
-
-    logfile->SetPath(wxT("/FilePaths"));
-    installcount = logfile->Read(filepath, 0l);
-
-    if (isDir)
-    {
-        filepath.Append(wxT("/" DIRECTORY_KLUDGE) ); // Needed for empty dirs
-    }
-
-    logfile->Write(filepath, ++installcount);
-
-    return false;
-}
-
-unsigned int InstallLog::WriteFile(wxArrayString filepaths)
-{
-    unsigned long i;
-    unsigned int finalrc = false;
-    wxString thisone;
-
-    if (dirtyflag) return true;
-
-    for (i = 0; i < filepaths.GetCount(); i++);
-    {
-        if ( WriteFile(filepaths[i]) )
-        {
-            finalrc++;
-        }
-    }
-
-    return finalrc;
-}
-
-wxArrayString* InstallLog::GetInstalledFiles()
-{
-    wxString curdir = wxT("");
-
-    if (dirtyflag) return NULL;
-    workingAS.Clear();
-
-    EnumerateCurDir(wxT(""));
-
-    wxArrayString* out = new wxArrayString(workingAS);
-    return out;
-}
-
-void InstallLog::EnumerateCurDir(wxString curdir)
-{
-    bool contflag;
-    wxString curname, buf, buf2, pathcache;
-    long dummy;
-
-    buf = wxT("/FilePaths/") + curdir;
-    pathcache = logfile->GetPath();
-    logfile->SetPath(buf);
-
-    contflag = logfile->GetFirstGroup(curname, dummy);
-    while (contflag)
-    {
-        buf = curdir + wxT("/") + curname;
-        buf2 = buf; buf2.Replace(wxT("/"), PATH_SEP);
-        workingAS.Add(buf2);
-        EnumerateCurDir(buf);
-        contflag = logfile->GetNextGroup(curname, dummy);
-    }
-
-    contflag = logfile->GetFirstEntry(curname, dummy);
-    while (contflag)
-    {
-        if (curname != wxT(DIRECTORY_KLUDGE) )
-        {
-            buf = curdir + wxT("" PATH_SEP) + curname;
-            workingAS.Add(buf);
-        }
-        contflag = logfile->GetNextEntry(curname, dummy);
-    }
-
-    logfile->SetPath(pathcache);
-}
-
diff --git a/rbutil/installlog.h b/rbutil/installlog.h
deleted file mode 100644
index cb85e08..0000000
--- a/rbutil/installlog.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: installlog.h
- *
- * Copyright (C) 2006 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-
-#ifndef INSTALLLOG_H_INCLUDED
-#define INSTALLLOG_H_INCLUDED
-
-#include <wx/wxprec.h>
-#ifdef __BORLANDC__
-        #pragma hdrstop
-#endif
-#ifndef WX_PRECOMP
-        #include <wx/wx.h>
-#endif
-
-#include <wx/confbase.h>
-#include <wx/fileconf.h>
-
-#define LOGFILE_VERSION 1
-#define DIRECTORY_KLUDGE "_DIRECTORY_MARKER_RECORD_KLUDGE_"
-class InstallLog
-{
-    // Class variables
-    wxFileConfig*        logfile;
-
-    // Methods
-    public:
-    InstallLog(wxString logname, bool CreateLog = true);
-    ~InstallLog();
-    unsigned int        WriteFile(wxString filepath, bool isDir = false);
-    unsigned int        WriteFile(wxArrayString filepaths);
-    wxArrayString*      GetInstalledFiles();
-
-    private:
-    bool                dirtyflag;
-    wxArrayString       workingAS;
-//    long                dummy;
-
-    private:
-    void                EnumerateCurDir(wxString curdir);
-}; // InstallLog
-
-
-#endif // INSTALLLOG_H_INCLUDED
diff --git a/rbutil/irivertools.cpp b/rbutil/irivertools.cpp
deleted file mode 100755
index 9b7cd5a..0000000
--- a/rbutil/irivertools.cpp
+++ /dev/null
@@ -1,604 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: irivertools.cpp
- *
- * Copyright (C) 2007 Dominik Wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "irivertools.h"
-
-
-const unsigned char munge[] = {
-  0x7a, 0x36, 0xc4, 0x43, 0x49, 0x6b, 0x35, 0x4e, 0xa3, 0x46, 0x25, 0x84,
-  0x4d, 0x73, 0x74, 0x61
-};
-
-const unsigned char header_modify[] = "* IHPFIRM-DECODED ";
-
-const char * const models[] = { "iHP-100", "iHP-120/iHP-140", "H300 series",
-                                NULL };
-
-/* aligns with models array;  expected min firmware size */
-const unsigned int firmware_minsize[] = { 0x100000, 0x100000, 0x200000 };
-/* aligns with models array;  expected max firmware size */
-const unsigned int firmware_maxsize[] = { 0x200000, 0x200000, 0x400000 };
-
-const unsigned char header[][16] = {
-  { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 },
-  { 0x20, 0x03, 0x08, 0x27, 0x24, 0x00, 0x02, 0x30, 0x19, 0x17, 0x65, 0x73,
-    0x85, 0x32, 0x83, 0x22 },
-  { 0x20, 0x04, 0x03, 0x27, 0x20, 0x50, 0x01, 0x70, 0x80, 0x30, 0x80, 0x06,
-    0x30, 0x19, 0x17, 0x65 }
-};
-
-/* begin mkboot.c excerpt */
-unsigned char image[0x400000 + 0x220 + 0x400000/0x200];
-
-bool mkboot(wxString infile, wxString outfile,wxString bootloader,int origin)
-{
-    wxString err;
-    int i;
-    int len,bllen;
-    int actual_length, total_length, binary_length, num_chksums;
-
-    memset(image, 0xff, sizeof(image));
-
-    /* First, read the iriver original firmware into the image */
-    wxFile f;
-    if(!f.Open(infile))
-    {
-        ERR_DIALOG(wxT("Could not open: ") + infile, wxT("mkboot"));
-        return false;
-    }
-    i = f.Read(image,16);
-    if(i < 16) {
-        ERR_DIALOG(wxT("reading header failed"), wxT("mkboot"));
-        return false;
-    }
-
-    /* This is the length of the binary image without the scrambling
-       overhead (but including the ESTFBINR header) */
-    binary_length = image[4] + (image[5] << 8) +
-        (image[6] << 16) + (image[7] << 24);
-
-    /* Read the rest of the binary data, but not the checksum block */
-    len = binary_length+0x200-16;
-    i = f.Read(image+16, len);
-    if(i < len) {
-        ERR_DIALOG(wxT("reading firmware failed"),wxT("mkboot"));
-        return false;
-    }
-
-    f.Close();
-    /* Now, read the boot loader into the image */
-    if(!f.Open(bootloader))
-    {
-        ERR_DIALOG(wxT("Could not open: ") + bootloader, wxT("mkboot"));
-        return false;
-    }
-
-    bllen = f.Length();
-
-    i = f.Read(image+0x220 + origin, bllen);
-    if(i < bllen) {
-       ERR_DIALOG(wxT("reading bootloader failed"), wxT("mkboot"));
-       return false;
-    }
-
-    f.Close();
-
-    if(!f.Open(outfile,wxFile::write))
-    {
-        ERR_DIALOG(wxT("Could not open: ") + outfile, wxT("mkboot"));
-        return false;
-    }
-
-    /* Patch the reset vector to start the boot loader */
-    image[0x220 + 4] = image[origin + 0x220 + 4];
-    image[0x220 + 5] = image[origin + 0x220 + 5];
-    image[0x220 + 6] = image[origin + 0x220 + 6];
-    image[0x220 + 7] = image[origin + 0x220 + 7];
-
-    /* This is the actual length of the binary, excluding all headers */
-    actual_length = origin + bllen;
-
-    /* Patch the ESTFBINR header */
-    image[0x20c] = (actual_length >> 24) & 0xff;
-    image[0x20d] = (actual_length >> 16) & 0xff;
-    image[0x20e] = (actual_length >> 8) & 0xff;
-    image[0x20f] = actual_length & 0xff;
-
-    image[0x21c] = (actual_length >> 24) & 0xff;
-    image[0x21d] = (actual_length >> 16) & 0xff;
-    image[0x21e] = (actual_length >> 8) & 0xff;
-    image[0x21f] = actual_length & 0xff;
-
-    /* This is the length of the binary, including the ESTFBINR header and
-       rounded up to the nearest 0x200 boundary */
-    binary_length = (actual_length + 0x20 + 0x1ff) & 0xfffffe00;
-
-    /* The number of checksums, i.e number of 0x200 byte blocks */
-    num_chksums = binary_length / 0x200;
-
-    /* The total file length, including all headers and checksums */
-    total_length = binary_length + num_chksums + 0x200;
-
-    /* Patch the scrambler header with the new length info */
-    image[0] = total_length & 0xff;
-    image[1] = (total_length >> 8) & 0xff;
-    image[2] = (total_length >> 16) & 0xff;
-    image[3] = (total_length >> 24) & 0xff;
-
-    image[4] = binary_length & 0xff;
-    image[5] = (binary_length >> 8) & 0xff;
-    image[6] = (binary_length >> 16) & 0xff;
-    image[7] = (binary_length >> 24) & 0xff;
-
-    image[8] = num_chksums & 0xff;
-    image[9] = (num_chksums >> 8) & 0xff;
-    image[10] = (num_chksums >> 16) & 0xff;
-    image[11] = (num_chksums >> 24) & 0xff;
-
-    i = f.Write(image,total_length);
-    if(i < total_length) {
-        ERR_DIALOG(wxT("writing bootloader failed"), wxT("mkboot"));
-        return false;
-    }
-
-    f.Close();
-
-    return true;
-}
-
-/* end mkboot.c excerpt */
-
-
-int intable(char *md5, struct sumpairs *table, int len)
-{
-    int i;
-    for (i = 0; i < len; i++) {
-        if (strncmp(md5, table[i].unpatched, 32) == 0) {
-            return i;
-        }
-    }
-    return -1;
-}
-
-
-
-
-static int testheader( const unsigned char * const data )
-{
-    const unsigned char * const d = data+16;
-    const char * const * m = models;
-    int index = 0;
-    while( *m )
-    {
-        if( memcmp( header[ index ], d, 16 ) == 0 )
-            return index;
-        index++;
-        m++;
-    };
-    return -1;
-};
-
-static void modifyheader( unsigned char * data )
-{
-    const unsigned char * h = header_modify;
-    int i;
-    for( i=0; i<512; i++ )
-    {
-        if( *h == '\0' )
-            h = header_modify;
-        *data++ ^= *h++;
-    };
-};
-
-int iriver_decode(wxString infile_name, wxString outfile_name, unsigned int modify,
-                  enum striptype stripmode )
-{
-    wxString err;
-    wxFile infile;
-    wxFile outfile;
-    int i = -1;
-    unsigned char headerdata[512];
-    unsigned long dwLength1, dwLength2, dwLength3, fp = 0;
-    unsigned char blockdata[16+16];
-    unsigned char out[16];
-    unsigned char newmunge;
-    signed long lenread;
-    int s = 0;
-    unsigned char * pChecksums, * ppChecksums = 0;
-    unsigned char ck;
-
-    if(!infile.Open(infile_name))
-    {
-        ERR_DIALOG(wxT("Could not open: ") + infile_name, wxT("iriver_decode"));
-        return -1;
-    }
-    if(!outfile.Open(outfile_name,wxFile::write))
-    {
-        ERR_DIALOG(wxT("Could not open: ") + outfile_name,
-                   wxT("iriver_decode"));
-        return -1;
-    }
-    lenread = infile.Read( headerdata, 512);
-    if( lenread != 512 )
-    {
-        ERR_DIALOG(wxT("This doesn't look like a valid encrypted iHP "
-                 "firmware - reason: header length\n"),wxT("iriver_decode"));
-
-        infile.Close();
-        outfile.Close();
-        return -1;
-    };
-
-    i = testheader( headerdata );
-    if( i == -1 )
-    {
-        ERR_DIALOG( wxT( "This firmware is for an unknown model, or is not"
-                 " a valid encrypted iHP firmware\n" ),wxT("iriver_decode"));
-        infile.Close();
-        outfile.Close();
-        return -1;
-    };
-    fprintf( stderr, "Model %s\n", models[ i ] );
-
-    dwLength1 = headerdata[0] | (headerdata[1]<<8) |
-        (headerdata[2]<<16) | (headerdata[3]<<24);
-    dwLength2 = headerdata[4] | (headerdata[5]<<8) |
-        (headerdata[6]<<16) | (headerdata[7]<<24);
-    dwLength3 = headerdata[8] | (headerdata[9]<<8) |
-        (headerdata[10]<<16) | (headerdata[11]<<24);
-
-    if( dwLength1 < firmware_minsize[ i ] ||
-        dwLength1 > firmware_maxsize[ i ] ||
-        dwLength2 < firmware_minsize[ i ] ||
-        dwLength2 > dwLength1 ||
-        dwLength3 > dwLength1 ||
-        dwLength2>>9 != dwLength3 ||
-        dwLength2+dwLength3+512 != dwLength1 )
-    {
-        ERR_DIALOG( wxT( "This doesn't look like a valid encrypted "
-                 "iHP firmware - reason: file 'length' data\n" ),wxT("iriver_decode"));
-        infile.Close();
-        outfile.Close();
-        return -1;
-    };
-
-    pChecksums = ppChecksums = (unsigned char *)( malloc( dwLength3 ) );
-
-    if( modify )
-    {
-        modifyheader( headerdata );
-    };
-
-    if( stripmode == STRIP_NONE )
-        outfile.Write( headerdata, 512);
-
-    memset( blockdata, 0, 16 );
-
-    ck = 0;
-    while( ( fp < dwLength2 ) &&
-           ( lenread = infile.Read( blockdata+16, 16) == 16) )
-    {
-        fp += 16;
-
-        for( i=0; i<16; ++i )
-        {
-            newmunge = blockdata[16+i] ^ munge[i];
-            out[i] = newmunge ^ blockdata[i];
-            blockdata[i] = newmunge;
-            ck += out[i];
-        }
-
-        if( fp > ESTF_SIZE || stripmode != STRIP_HEADER_CHECKSUM_ESTF )
-        {
-            outfile.Write( out+4, 12);
-            outfile.Write( out, 4);
-        }
-        else
-        {
-            if( ESTF_SIZE - fp < 16 )
-            {
-                memcpy( out+4, blockdata+16, 12 );
-                memcpy( out, blockdata+28, 4 );
-                outfile.Write( blockdata+16+ESTF_SIZE-fp, ESTF_SIZE-fp);
-            }
-        }
-
-
-        if( s == 496 )
-        {
-            s = 0;
-            memset( blockdata, 0, 16 );
-            *ppChecksums++ = ck;
-            ck = 0;
-        }
-        else
-            s+=16;
-    };
-
-    if( fp != dwLength2 )
-    {
-        ERR_DIALOG( wxT(  "This doesn't look like a valid encrypted "
-                 "iHP firmware - reason: 'length2' mismatch\n" ),wxT("iriver_decode"));
-        infile.Close();
-        outfile.Close();
-        return -1;
-    };
-
-    fp = 0;
-    ppChecksums = pChecksums;
-    while( ( fp < dwLength3 ) &&
-           ( lenread = infile.Read( blockdata, 32 ) ) > 0 )
-    {
-        fp += lenread;
-        if( stripmode == STRIP_NONE )
-            outfile.Write( blockdata, lenread );
-        if( memcmp( ppChecksums, blockdata, lenread ) != 0 )
-        {
-            ERR_DIALOG( wxT(  "This doesn't look like a valid encrypted "
-                     "iHP firmware - reason: Checksum mismatch!" ),wxT("iriver_decode"));
-            infile.Close();
-            outfile.Close();
-            return -1;
-        };
-        ppChecksums += lenread;
-    };
-
-    if( fp != dwLength3 )
-    {
-        ERR_DIALOG(wxT(  "This doesn't look like a valid encrypted "
-                 "iHP firmware - reason: 'length3' mismatch\n" ),wxT("iriver_decode"));
-        infile.Close();
-        outfile.Close();
-        return -1;
-    };
-
-
-    fprintf( stderr, "File decoded correctly and all checksums matched!\n" );
-    switch( stripmode )
-    {
-        default:
-        case STRIP_NONE:
-            fprintf(stderr, "Output file contains all headers and "
-                    "checksums\n");
-            break;
-        case STRIP_HEADER_CHECKSUM:
-            fprintf( stderr, "NB:  output file contains only ESTFBINR header"
-                     " and decoded firmware code\n" );
-            break;
-        case STRIP_HEADER_CHECKSUM_ESTF:
-            fprintf( stderr, "NB:  output file contains only raw decoded "
-                     "firmware code\n" );
-            break;
-    };
-
-    infile.Close();
-    outfile.Close();
-    return 0;
-
-};
-
-int iriver_encode(wxString infile_name, wxString outfile_name, unsigned int modify )
-{
-    wxString err;
-    wxFile infile;
-    wxFile outfile;
-    int i = -1;
-    unsigned char headerdata[512];
-    unsigned long dwLength1, dwLength2, dwLength3, fp = 0;
-    unsigned char blockdata[16+16];
-    unsigned char out[16];
-    unsigned char newmunge;
-    signed long lenread;
-    int s = 0;
-    unsigned char * pChecksums, * ppChecksums;
-    unsigned char ck;
-
-    if(!infile.Open(infile_name,wxFile::read))
-    {
-        ERR_DIALOG(wxT("Could not open: ") + infile_name, wxT("iriver_decode"));
-        return -1;
-    }
-    if(!outfile.Open(outfile_name,wxFile::write))
-    {
-        ERR_DIALOG(wxT("Could not open: ") + outfile_name,
-                   wxT("iriver_decode"));
-        return -1;
-    }
-
-    lenread = infile.Read( headerdata, 512 );
-    if( lenread != 512 )
-    {
-        ERR_DIALOG(wxT("This doesn't look like a valid decoded "
-                 "iHP firmware - reason: header length\n"), wxT("iriver_decode"));
-        infile.Close();
-        outfile.Close();
-    };
-
-    if( modify )
-    {
-        modifyheader( headerdata ); /* reversible */
-    };
-
-    i = testheader( headerdata );
-    if( i == -1 )
-    {
-        ERR_DIALOG(wxT("This firmware is for an unknown model, or is not"
-                 " a valid decoded iHP firmware\n"), wxT("iriver_decode"));
-       infile.Close();
-       outfile.Close();
-    };
-    fprintf( stderr, "Model %s\n", models[ i ] );
-
-    dwLength1 = headerdata[0] | (headerdata[1]<<8) |
-        (headerdata[2]<<16) | (headerdata[3]<<24);
-    dwLength2 = headerdata[4] | (headerdata[5]<<8) |
-        (headerdata[6]<<16) | (headerdata[7]<<24);
-    dwLength3 = headerdata[8] | (headerdata[9]<<8) |
-        (headerdata[10]<<16) | (headerdata[11]<<24);
-
-    if( dwLength1 < firmware_minsize[i] ||
-        dwLength1 > firmware_maxsize[i] ||
-        dwLength2 < firmware_minsize[i] ||
-        dwLength2 > dwLength1 ||
-        dwLength3 > dwLength1 ||
-        dwLength2+dwLength3+512 != dwLength1 )
-    {
-        ERR_DIALOG(wxT("This doesn't look like a valid decoded iHP"
-                 " firmware - reason: file 'length' data\n"), wxT("iriver_decode"));
-       infile.Close();
-       outfile.Close();
-    };
-
-    pChecksums = ppChecksums = (unsigned char *)( malloc( dwLength3 ) );
-
-    outfile.Write( headerdata, 512);
-
-    memset( blockdata, 0, 16 );
-    ck = 0;
-    while( ( fp < dwLength2 ) &&
-           ( lenread = infile.Read( blockdata+16, 16) ) == 16 )
-    {
-        fp += 16;
-        for( i=0; i<16; ++i )
-        {
-            newmunge = blockdata[16+((12+i)&0xf)] ^ blockdata[i];
-            out[i] = newmunge ^ munge[i];
-            ck += blockdata[16+i];
-            blockdata[i] = newmunge;
-        };
-        outfile.Write( out, 16);
-
-        if( s == 496 )
-        {
-            s = 0;
-            memset( blockdata, 0, 16 );
-            *ppChecksums++ = ck;
-            ck = 0;
-        }
-        else
-            s+=16;
-    };
-
-    if( fp != dwLength2 )
-    {
-        ERR_DIALOG(wxT("This doesn't look like a valid decoded "
-                 "iHP firmware - reason: 'length1' mismatch\n"), wxT("iriver_decode"));
-        infile.Close();
-        outfile.Close();
-    };
-
-    /* write out remainder w/out applying descrambler */
-    fp = 0;
-    lenread = dwLength3;
-    ppChecksums = pChecksums;
-    while( ( fp < dwLength3) &&
-           ( lenread = outfile.Write( ppChecksums, lenread) ) > 0 )
-    {
-        fp += lenread;
-        ppChecksums += lenread;
-        lenread = dwLength3 - fp;
-    };
-
-    if( fp != dwLength3 )
-    {
-       ERR_DIALOG(wxT("This doesn't look like a valid decoded "
-                 "iHP firmware - reason: 'length2' mismatch\n"), wxT("iriver_decode"));
-       infile.Close();
-       outfile.Close();
-    };
-
-    fprintf( stderr, "File encoded successfully and checksum table built!\n" );
-
-    infile.Close();
-    outfile.Close();
-    return 0;
-
-};
-
-bool PatchFirmware(wxString firmware,wxString bootloader,int series, int table_entry)
-{
-    wxString name1, name2, name3;
-
-    char md5sum_str[32];
-    struct sumpairs *sums;
-    int origin;
-
-    /* get pointer to the correct bootloader.bin */
-    switch(series) {
-        case 100:
-            sums = &h100pairs[0];
-            origin = 0x1f0000;
-            break;
-        case 120:
-            sums = &h120pairs[0];
-            origin = 0x1f0000;
-            break;
-        case 300:
-            sums = &h300pairs[0];
-            origin = 0x3f0000;
-            break;
-    }
-
-    name1 = gv->stdpaths->GetUserDataDir()
-            + wxT("" PATH_SEP "download" PATH_SEP "firmware.bin"),
-                                        /* descrambled file */
-    name2 = gv->stdpaths->GetUserDataDir()
-            + wxT("" PATH_SEP "download" PATH_SEP "new.bin");
-                                    /* patched file */
-    name3 = gv->stdpaths->GetUserDataDir()
-            + wxT("" PATH_SEP "download" PATH_SEP "new.hex");
-    if (iriver_decode(firmware, name1, FALSE, STRIP_NONE) == -1) {
-        ERR_DIALOG(wxT("Error in descramble"), wxT("Descramble Firmware"));
-        wxRemoveFile(name1);
-        wxRemoveFile(name2);
-        wxRemoveFile(name3);
-        return false;
-    }
-    if (!mkboot(name1, name2, bootloader, origin)) {
-        ERR_DIALOG(wxT("Error in patching"),wxT("Patching Firmware"));
-        wxRemoveFile(name1);
-        wxRemoveFile(name2);
-        wxRemoveFile(name3);
-        return false;
-    }
-    if (iriver_encode(name2, name3, FALSE) == -1) {
-        ERR_DIALOG(wxT("Error in scramble"),wxT("Scramble Firmware"));
-        wxRemoveFile(name1);
-        wxRemoveFile(name2);
-        wxRemoveFile(name3);
-        return false;
-    }
-    /* now md5sum it */
-    if (!FileMD5(name3, md5sum_str)) {
-        ERR_DIALOG(wxT("Error in checksumming"),wxT("Checksumming Firmware"));
-        wxRemoveFile(name1);
-        wxRemoveFile(name2);
-        wxRemoveFile(name3);
-        return false;
-    }
-    if (strncmp(sums[table_entry].patched, md5sum_str, 32) == 0) {
-        /* delete temp files */
-        wxRemoveFile(name1);
-        wxRemoveFile(name2);
-    }
-
-    return true;
-}
-
diff --git a/rbutil/irivertools.h b/rbutil/irivertools.h
deleted file mode 100755
index d646cf1..0000000
--- a/rbutil/irivertools.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: irivertools.h
- *
- * Copyright (C) 2007 Dominik Wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-
-#ifndef IRIVERTOOLS_H_INCLUDED
-#define IRIVERTOOLS_H_INCLUDED
-
-#include "rbutil.h"
-#include "installlog.h"
-#include "md5sum.h"
-
-#define ESTF_SIZE 32
-
-struct sumpairs {
-    char *unpatched;
-    char *patched;
-};
-
-/* precalculated checksums for H110/H115 */
-static struct sumpairs h100pairs[] = {
-#include "h100sums.h"
-};
-
-/* precalculated checksums for H120/H140 */
-static struct sumpairs h120pairs[] = {
-#include "h120sums.h"
-};
-
-/* precalculated checksums for H320/H340 */
-static struct sumpairs h300pairs[] = {
-#include "h300sums.h"
-};
-
-
-enum striptype
-{
-  STRIP_NONE,
-  STRIP_HEADER_CHECKSUM,
-  STRIP_HEADER_CHECKSUM_ESTF
-};
-
-/* protos for iriver.c */
-
-int intable(char *md5, struct sumpairs *table, int len);
-
-bool PatchFirmware(wxString firmware,wxString bootloader,int series, int table_entry);
-
-
-#endif // IRIVERTOOLS_H_INCLUDED
diff --git a/rbutil/md5sum.cpp b/rbutil/md5sum.cpp
deleted file mode 100755
index e1c23c9..0000000
--- a/rbutil/md5sum.cpp
+++ /dev/null
@@ -1,298 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: md5sum.cpp
- *
- * Copyright (C) 2007 Dominik Wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-
-/*
- *  RFC 1321 compliant MD5 implementation
- *
- *  Copyright (C) 2001-2003  Christophe Devine
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- */
-
-
-#include "md5sum.h"
-
-
-#define GET_UINT32(n,b,i)                       \
-{                                               \
-    (n) = ( (uint32) (b)[(i)    ]       )       \
-        | ( (uint32) (b)[(i) + 1] <<  8 )       \
-        | ( (uint32) (b)[(i) + 2] << 16 )       \
-        | ( (uint32) (b)[(i) + 3] << 24 );      \
-}
-
-#define PUT_UINT32(n,b,i)                       \
-{                                               \
-    (b)[(i)    ] = (uint8) ( (n)       );       \
-    (b)[(i) + 1] = (uint8) ( (n) >>  8 );       \
-    (b)[(i) + 2] = (uint8) ( (n) >> 16 );       \
-    (b)[(i) + 3] = (uint8) ( (n) >> 24 );       \
-}
-
-void md5_starts( md5_context *ctx )
-{
-    ctx->total[0] = 0;
-    ctx->total[1] = 0;
-
-    ctx->state[0] = 0x67452301;
-    ctx->state[1] = 0xEFCDAB89;
-    ctx->state[2] = 0x98BADCFE;
-    ctx->state[3] = 0x10325476;
-}
-
-void md5_process( md5_context *ctx, uint8 data[64] )
-{
-    uint32 X[16], A, B, C, D;
-
-    GET_UINT32( X[0],  data,  0 );
-    GET_UINT32( X[1],  data,  4 );
-    GET_UINT32( X[2],  data,  8 );
-    GET_UINT32( X[3],  data, 12 );
-    GET_UINT32( X[4],  data, 16 );
-    GET_UINT32( X[5],  data, 20 );
-    GET_UINT32( X[6],  data, 24 );
-    GET_UINT32( X[7],  data, 28 );
-    GET_UINT32( X[8],  data, 32 );
-    GET_UINT32( X[9],  data, 36 );
-    GET_UINT32( X[10], data, 40 );
-    GET_UINT32( X[11], data, 44 );
-    GET_UINT32( X[12], data, 48 );
-    GET_UINT32( X[13], data, 52 );
-    GET_UINT32( X[14], data, 56 );
-    GET_UINT32( X[15], data, 60 );
-
-#define S(x,n) ((x << n) | ((x & 0xFFFFFFFF) >> (32 - n)))
-
-#define P(a,b,c,d,k,s,t)                                \
-{                                                       \
-    a += F(b,c,d) + X[k] + t; a = S(a,s) + b;           \
-}
-
-    A = ctx->state[0];
-    B = ctx->state[1];
-    C = ctx->state[2];
-    D = ctx->state[3];
-
-#define F(x,y,z) (z ^ (x & (y ^ z)))
-
-    P( A, B, C, D,  0,  7, 0xD76AA478 );
-    P( D, A, B, C,  1, 12, 0xE8C7B756 );
-    P( C, D, A, B,  2, 17, 0x242070DB );
-    P( B, C, D, A,  3, 22, 0xC1BDCEEE );
-    P( A, B, C, D,  4,  7, 0xF57C0FAF );
-    P( D, A, B, C,  5, 12, 0x4787C62A );
-    P( C, D, A, B,  6, 17, 0xA8304613 );
-    P( B, C, D, A,  7, 22, 0xFD469501 );
-    P( A, B, C, D,  8,  7, 0x698098D8 );
-    P( D, A, B, C,  9, 12, 0x8B44F7AF );
-    P( C, D, A, B, 10, 17, 0xFFFF5BB1 );
-    P( B, C, D, A, 11, 22, 0x895CD7BE );
-    P( A, B, C, D, 12,  7, 0x6B901122 );
-    P( D, A, B, C, 13, 12, 0xFD987193 );
-    P( C, D, A, B, 14, 17, 0xA679438E );
-    P( B, C, D, A, 15, 22, 0x49B40821 );
-
-#undef F
-
-#define F(x,y,z) (y ^ (z & (x ^ y)))
-
-    P( A, B, C, D,  1,  5, 0xF61E2562 );
-    P( D, A, B, C,  6,  9, 0xC040B340 );
-    P( C, D, A, B, 11, 14, 0x265E5A51 );
-    P( B, C, D, A,  0, 20, 0xE9B6C7AA );
-    P( A, B, C, D,  5,  5, 0xD62F105D );
-    P( D, A, B, C, 10,  9, 0x02441453 );
-    P( C, D, A, B, 15, 14, 0xD8A1E681 );
-    P( B, C, D, A,  4, 20, 0xE7D3FBC8 );
-    P( A, B, C, D,  9,  5, 0x21E1CDE6 );
-    P( D, A, B, C, 14,  9, 0xC33707D6 );
-    P( C, D, A, B,  3, 14, 0xF4D50D87 );
-    P( B, C, D, A,  8, 20, 0x455A14ED );
-    P( A, B, C, D, 13,  5, 0xA9E3E905 );
-    P( D, A, B, C,  2,  9, 0xFCEFA3F8 );
-    P( C, D, A, B,  7, 14, 0x676F02D9 );
-    P( B, C, D, A, 12, 20, 0x8D2A4C8A );
-
-#undef F
-
-#define F(x,y,z) (x ^ y ^ z)
-
-    P( A, B, C, D,  5,  4, 0xFFFA3942 );
-    P( D, A, B, C,  8, 11, 0x8771F681 );
-    P( C, D, A, B, 11, 16, 0x6D9D6122 );
-    P( B, C, D, A, 14, 23, 0xFDE5380C );
-    P( A, B, C, D,  1,  4, 0xA4BEEA44 );
-    P( D, A, B, C,  4, 11, 0x4BDECFA9 );
-    P( C, D, A, B,  7, 16, 0xF6BB4B60 );
-    P( B, C, D, A, 10, 23, 0xBEBFBC70 );
-    P( A, B, C, D, 13,  4, 0x289B7EC6 );
-    P( D, A, B, C,  0, 11, 0xEAA127FA );
-    P( C, D, A, B,  3, 16, 0xD4EF3085 );
-    P( B, C, D, A,  6, 23, 0x04881D05 );
-    P( A, B, C, D,  9,  4, 0xD9D4D039 );
-    P( D, A, B, C, 12, 11, 0xE6DB99E5 );
-    P( C, D, A, B, 15, 16, 0x1FA27CF8 );
-    P( B, C, D, A,  2, 23, 0xC4AC5665 );
-
-#undef F
-
-#define F(x,y,z) (y ^ (x | ~z))
-
-    P( A, B, C, D,  0,  6, 0xF4292244 );
-    P( D, A, B, C,  7, 10, 0x432AFF97 );
-    P( C, D, A, B, 14, 15, 0xAB9423A7 );
-    P( B, C, D, A,  5, 21, 0xFC93A039 );
-    P( A, B, C, D, 12,  6, 0x655B59C3 );
-    P( D, A, B, C,  3, 10, 0x8F0CCC92 );
-    P( C, D, A, B, 10, 15, 0xFFEFF47D );
-    P( B, C, D, A,  1, 21, 0x85845DD1 );
-    P( A, B, C, D,  8,  6, 0x6FA87E4F );
-    P( D, A, B, C, 15, 10, 0xFE2CE6E0 );
-    P( C, D, A, B,  6, 15, 0xA3014314 );
-    P( B, C, D, A, 13, 21, 0x4E0811A1 );
-    P( A, B, C, D,  4,  6, 0xF7537E82 );
-    P( D, A, B, C, 11, 10, 0xBD3AF235 );
-    P( C, D, A, B,  2, 15, 0x2AD7D2BB );
-    P( B, C, D, A,  9, 21, 0xEB86D391 );
-
-#undef F
-#undef S
-#undef P
-
-
-    ctx->state[0] += A;
-    ctx->state[1] += B;
-    ctx->state[2] += C;
-    ctx->state[3] += D;
-}
-
-void md5_update( md5_context *ctx, uint8 *input, uint32 length )
-{
-    uint32 left, fill;
-
-    if( ! length ) return;
-
-    left = ctx->total[0] & 0x3F;
-    fill = 64 - left;
-
-    ctx->total[0] += length;
-    ctx->total[0] &= 0xFFFFFFFF;
-
-    if( ctx->total[0] < length )
-        ctx->total[1]++;
-
-    if( left && length >= fill )
-    {
-        memcpy( (void *) (ctx->buffer + left),
-                (void *) input, fill );
-        md5_process( ctx, ctx->buffer );
-        length -= fill;
-        input  += fill;
-        left = 0;
-    }
-
-    while( length >= 64 )
-    {
-        md5_process( ctx, input );
-        length -= 64;
-        input  += 64;
-    }
-
-    if( length )
-    {
-        memcpy( (void *) (ctx->buffer + left),
-                (void *) input, length );
-    }
-}
-
-static uint8 md5_padding[64] =
-{
- 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
-};
-
-void md5_finish( md5_context *ctx, uint8 digest[16] )
-{
-    uint32 last, padn;
-    uint32 high, low;
-    uint8 msglen[8];
-
-    high = ( ctx->total[0] >> 29 )
-         | ( ctx->total[1] <<  3 );
-    low  = ( ctx->total[0] <<  3 );
-
-    PUT_UINT32( low,  msglen, 0 );
-    PUT_UINT32( high, msglen, 4 );
-
-    last = ctx->total[0] & 0x3F;
-    padn = ( last < 56 ) ? ( 56 - last ) : ( 120 - last );
-
-    md5_update( ctx, md5_padding, padn );
-    md5_update( ctx, msglen, 8 );
-
-    PUT_UINT32( ctx->state[0], digest,  0 );
-    PUT_UINT32( ctx->state[1], digest,  4 );
-    PUT_UINT32( ctx->state[2], digest,  8 );
-    PUT_UINT32( ctx->state[3], digest, 12 );
-}
-
-int FileMD5(wxString name, char *md5)
-{
-    int i, read;
-    md5_context ctx;
-    unsigned char md5sum[16];
-    unsigned char block[32768];
-
-    wxFile file;
-
-    file.Open(name);
-
-    if (!file.IsOpened()) {
-        ERR_DIALOG(wxT("Could not open patched firmware for checksum check"), wxT("Open Firmware"));
-        return 0;
-    }
-    md5_starts(&ctx);
-    while ( !file.Eof() ) {
-        read = file.Read(block, sizeof(block));
-        md5_update(&ctx, block, read);
-    }
-    file.Close();
-    md5_finish(&ctx, md5sum);
-    for (i = 0; i < 16; ++i)
-    {
-        sprintf(md5 + 2*i, "%02x", md5sum[i]);
-    }
-    return 1;
-}
diff --git a/rbutil/md5sum.h b/rbutil/md5sum.h
deleted file mode 100755
index f7ea439..0000000
--- a/rbutil/md5sum.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: md5sum.h
- *
- * Copyright (C) 2007 Dominik Wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-
-#ifndef MD5SUM_H_INCLUDED
-#define MD5SUM_H_INCLUDED
-
-#ifndef uint8
-#define uint8  unsigned char
-#endif
-
-
-#ifndef uint32
-#define uint32 unsigned long int
-#endif
-
-#include "rbutil.h"
-
-
-typedef struct
-{
-    uint32 total[2];
-    uint32 state[4];
-    uint8 buffer[64];
-}
-md5_context;
-
-void md5_starts( md5_context *ctx );
-void md5_update( md5_context *ctx, uint8 *input, uint32 length );
-void md5_finish( md5_context *ctx, uint8 digest[16] );
-
-int FileMD5(wxString name, char *md5);
-
-#endif // MD5SUM_H_INCLUDED
diff --git a/rbutil/rblogo.xpm b/rbutil/rblogo.xpm
deleted file mode 100644
index d14f015..0000000
--- a/rbutil/rblogo.xpm
+++ /dev/null
@@ -1,254 +0,0 @@
-/* WxStaticBitmap1_XPM XPM */
-static char * rblogo_xpm[] = {
-"400 123 128 2",
-"  	c #FFC500",
-". 	c #DBA500",
-"+ 	c #C79600",
-"@ 	c #A1B4C5",
-"# 	c #798C9C",
-"$ 	c #8C8F92",
-"% 	c #6B7176",
-"& 	c #B38700",
-"* 	c #876601",
-"= 	c #B3C3D2",
-"- 	c #392B00",
-"; 	c #E7E7E7",
-"> 	c #EBB200",
-", 	c #9CB1C4",
-"' 	c #FFC800",
-") 	c #8497A9",
-"! 	c #4A4D4F",
-"~ 	c #2D2E30",
-"{ 	c #FEFEFE",
-"] 	c #CCD8E2",
-"^ 	c #E3AC00",
-"/ 	c #745801",
-"( 	c #BBC9D6",
-"_ 	c #97ADC1",
-": 	c #A5B9CA",
-"< 	c #C7C7C7",
-"[ 	c #C6D2DD",
-"} 	c #8AA1B6",
-"| 	c #493801",
-"1 	c #C1CDD9",
-"2 	c #654D00",
-"3 	c #A37B00",
-"4 	c #9A7400",
-"5 	c #F4B800",
-"6 	c #BECBD8",
-"7 	c #5A4401",
-"8 	c #AABCCC",
-"9 	c #D5D5D5",
-"0 	c #B8B8B8",
-"a 	c #A6A6A6",
-"b 	c #ACBECD",
-"c 	c #FFC300",
-"d 	c #93AABE",
-"e 	c #000000",
-"f 	c #FCBE00",
-"g 	c #98ABBD",
-"h 	c #A2B6C7",
-"i 	c #FFD200",
-"j 	c #FFCC00",
-"k 	c #AC8200",
-"l 	c #AFC1D0",
-"m 	c #EFB500",
-"n 	c #B2C1CE",
-"o 	c #757D86",
-"p 	c #F2F2F2",
-"q 	c #6E5300",
-"r 	c #191300",
-"s 	c #A8BACA",
-"t 	c #FABD00",
-"u 	c #D09D01",
-"v 	c #92A3B4",
-"w 	c #AEBFCE",
-"x 	c #171718",
-"y 	c #DCE0E4",
-"z 	c #261D00",
-"A 	c #A8BCCC",
-"B 	c #B8C6D3",
-"C 	c #616468",
-"D 	c #AFBECC",
-"E 	c #ABB0B5",
-"F 	c #A1AEB9",
-"G 	c #BE8F00",
-"H 	c #AABED0",
-"I 	c #969DA4",
-"J 	c #8F6C00",
-"K 	c #A7BBCD",
-"L 	c #F7BB00",
-"M 	c #8FA6BB",
-"N 	c #9BA9B6",
-"O 	c #7E5F01",
-"P 	c #ACBDCB",
-"Q 	c #54595D",
-"R 	c #0B0B0C",
-"S 	c #B7CADA",
-"T 	c #F9C000",
-"U 	c #130E00",
-"V 	c #ABB9C5",
-"W 	c #A5B7C7",
-"X 	c #424446",
-"Y 	c #0C0900",
-"Z 	c #FCC000",
-"` 	c #9D7B0F",
-" .	c #FFC000",
-"..	c #080A10",
-"+.	c #FDC200",
-"@.	c #B3C6D5",
-"#.	c #FFC202",
-"$.	c #A7B6C3",
-"%.	c #DFE8EF",
-"&.	c #9DAFBF",
-"*.	c #98A5B0",
-"=.	c #FAC500",
-"-.	c #ACBBC8",
-";.	c #393A3C",
-">.	c #232425",
-",.	c #1C1D1E",
-"'.	c #B7C7D5",
-").	c #ECF4FA",
-"!.	c #F7BE05",
-"~.	c #070500",
-"{.	c #644F0B",
-"].	c #FFC100",
-"^.	c #050506",
-"/.	c #080909",
-"(.	c #101011",
-"_.	c #FEBF00",
-":.	c #FDC100",
-"<.	c #F5BF00",
-"[.	c #8A6B0B",
-"}.	c #8E6F0D",
-"|.	c #FCC003",
-"1.	c #FFC102",
-"2.	c #B78F0B",
-"3.	c #716027",
-"4.	c #FEC304",
-"5.	c #F7C10D",
-"6.	c #977E20",
-"7.	c #FBC303",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ",
-"e e ~.r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r r Y e e ",
-"e e - _. ._._._._._._._._._._._._._.c ]._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._.].' ]._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._.  J e e ",
-"e e - ].c ].].].].].].].].].].].].].L f ].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].c c ].].].].].].].].].].].].].].].].].].].].].].].].].  m 3 > c ].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].' J e e ",
-"e e -  .]. . . . . . . . . . . .].t | 3    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .c ' ' ' '   c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .c   ' ' ' ' ' '     c  . . . . . . . . . . . . . . . . . . . . . . . . . .> m  . . . . . . . . . . . . . . . . . . . . . . . . .' 3 e k '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L ~.O ' ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  u | 7 * & ^ t j c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  j t ^ . G 3 k k + ^ >   j    . . . . . . . . . . . . . . . . . . . . . .c t - /   ]. . . . . . . . . . . . . . . . . . . . . . . .  - z m    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . .  ' T ~.O j ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  u - z Y e Y - J > '    . . . . . . . . . . . . . . . . . . . . . . . . . .c '   u O | r e e e e e e ~.z 7 J . c ' ' ]. . .].' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' T z 7 j '    . . . . . . .  ' ' ' ' ' ' ' ' ' ' ' ' ' i G e J i ' c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . .' k 2 q e - / / / / / / / / / / / / / / / / / / / q / ^ c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .]._.L m ^ G / z e U / ^ ' c  . . . . . . . . . . . . . . . . . . . . . . .  =.G | e e z q 4 G . . u & * | r e e - 4 . ' ' c 5 / / / / / / / / / / / / / / / / q U z / q 4  .]. . . .c 5 J q / / / / / / / / / / / / O - e 7 / q G    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . .j / ~.r e Y r r r r r r r r r r r r r r r r r r r r r u    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  ' '         ' j i i T G | e r 4 +.'  . . . . . . . . . . . . . . . . . . . .].' ^ 7 e U / u ' i i j ' ' ' j j i =.+ O - e Y 2 + j > e Y r r r r r r r r r r r r r r r ~.Y r Y 7  .c  . . .  m | U r r r r r r r r r r r r U e r r r U 4 '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . .].5 m > e / L m m m m m m m m m m m m m m m m m m m m _.].].].]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  j > + J q | | | 7 O & . ' i   G - e | ^ '  . . . . . . . . . . . . . . . . . .].' k r e / > j i T u 3 / | | | 7 q J + 5 i +.+ 7 ~.e 7 G e J L m m m m m m m m m m m m m > z 7 5 m 5  . . . . . ._.m m m m m m m m m m m m m _.q e G L m m L ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . .c   T e O j   c c c c c c c c c c c c c c c c c c c  . . .c   ' '    . . . . . . . . . . . . . . . . . . . . . . . .  ' . q z e e e e e e e e e U 7 k +.i T * e r + j ]. . . . . . . . . . . . . . . .c ' * e z + j j 5 4 | Y e e e e e e e e e z 2 + ' i . q ~.~.e 4 j   c c c c c c c c c c c   T z 2 '   c  . . . . . . .c   c c c c c c c c c c   m r | c       c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' 5 - - - - - - - - - - - - - - - - - - - - - - 7 / 3 + 5 j c  . . . . . . . . . . . . . . . . . . . . .' > / Y e e e e e e e e e e e e e e - + j j G r ~.k j  . . . . . . . . . . . . . .].  O e | > j ' & z e e e e e e e e e e e e e e e - G j j . | e 4 j + - - - - - - - - - - - G ].z 7   ]. . . . . . . . .' u - - - - - - - - - - - z e 4 j  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e ~.- J L '  . . . . . . . . . . . . . . . . . .].j G z e e e e e e e e e e e e e e e e e Y *   j . - e k ' ]. . . . . . . . . . . .].j J e 7 ].j L q e e e e e e e e e e e e e e e e e e e 7 > i   4 & j & e e e e e e e e e e e 3 c z 7   ]. . . . . . . . .' q e e e e e e e e e e e e z m c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e - u ' ]. . . . . . . . . . . . . . . .].j 3 ~.e e e e e e e e e e e e e e e e e e e e 2 L i > - ~.G '  . . . . . . . . . . .j & e | L j ^ | e e e e e e e e e e e e e e e e e e e e e z + ' '  .' & e e e e e e e e e e e 3 c z 7   ]. . . . . . . .c m r e e e e e e e e e e e e O '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e U & '  . . . . . . . . . . . . . .].' 3 ~.e e e e e e e e e e e e e e e e e e e e e e 7 <.j . z r .    . . . . . . . . .  . U z > i ^ - e e e e e e e e e e e e e e e e e e e e e e e Y k ' c ' & e e e e e e e e e e e 3 c z 7   ]. . . . . . . .j 4 e e e e e e e e e e e e Y . '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e U + '  . . . . . . . . . . . . .j & ~.e e e e e e e e e e e e e e e e e e e e e e e e / ' j + ~.| T c  . . . . . . .c T | e + j L | e e e e e e e e e e e e e e e e e e e e e e e e e e J   ' & e e e e e e e e e e e 3 c z 7   ]. . . . . . .c t | e e e e e e e e e e e e 7 c c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e z ^    . . . . . . . . . . .  . z e e e e e e e e e e e e e e e e e e e e e e e e e e 4 ' ' J e J '  . . . . . . .' 4 e J j +.2 e e e e e e e e e e e e e e e e e e e e e e e e e e e e 3 j & e e e e e e e e e e e 3 c z 7   ]. . . . . . .' u e e e e e e e e e e e e ~.& '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e 7   c  . . . . . . . . .c +.| e e e e e e e e e e e e e e e e e e e e e e e e e e e r . ' c | Y ^    . . . . .  > U - L i 3 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . . . . . .' q e e e e e e e e e e e e - c ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e k '  . . . . . . . . .j 4 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e |  .j G e / '  . . . .].' q e G j ^ r e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . . . . .c m z e e e e e e e e e e e e 4 '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e z 5 c  . . . . . . .  ^ r e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e 3 j   | Y . '  . . .' . e 7 j   2 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . . . . .j 4 e e e e e e e e e e e e z ^    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e 3 '  . . . . . .].' / e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e z > j + e J '  . . .' q e u j + ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . . . .c Z | e e e e e e e e e e e e q ' ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e - c c  . . . . .  ^ U e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e J j :.- r L ]. .  . Y 7   ' 7 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . . . .' u ~.e e e e e e e e e e e Y u    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L e O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e Y + '  . . . . .' / e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e z 5 j 3 e 3 '  .' O e + i + Y e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . . . .' / e e e e e e e e e e e e |    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .c L ~.O ' m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e * ' ]. . . .  ^ z e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e 3 j m r |     m z - ' ' 2 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . . .c m z e e e e e e e e e e e e k '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . .].f 4 +   m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e - t c  . . .' 4 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e | _.j q e u j & e k i . U e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . . .j 3 e e e e e e e e e e e e - 5    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . .'   c m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ~.^    . .c t - e e e e e e e e e e e e e e e e e ~.e e e e e e e e e e e e e e e e e ~.+ i u e J i 7 U ^ j J e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . .c c 7 e e e e e e e e e e e e * j  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e & '  . .  u e e e e e e e e e e e e e e e Y 7 k u G O z e e e e e e e e e e e e e e e O ' t - z > U 2 '   - e e e e e e e e e e e e e e e e ~.- 2 O 2 - ~.e e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . .  u ~.e e e e e e e e e e e U ^ c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e r - - - - - - - U e e e e e e e e e e e e e e e e * '  . .j O e e e e e e e e e e e e e e - + ' i i j j > 2 e e e e e e e e e e e e e e z f j O Y / ~.k i + Y e e e e e e e e e e e e e e e - G L j j j T + | e e e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. . .' O e e e e e e e e e e e e q '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e 2 i             L & - e e e e e e e e e e e e e e 2 j  .c _.- e e e e e e e e e e e e e - ^ j Z + & ^ ' ' ' O e e e e e e e e e e e e e ~.+ j + U e r > j * e e e e e e e e e e e e e e e O +.'     c  .c ' :.* ~.e e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. .c 5 z e e e e e e e e e e e ~.+ '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e | + G G G G G . 5 i <.2 e e e e e e e e e e e e e | j  .' u U e e e e e e e e e e e e r u ' c L - e U * T '   7 e e e e e e e e e e e e e / j ].- e | j t | e e e e e e e e e e e e e e O ' c   ' m >  . . .c ' 3 ~.e e e e e e q j & e e e e e e e e e e e 3 c z 7   ]. .j k e e e e e e e e e e e e | ].c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e e e e e e e e e z 3 j L - e e e e e e e e e e e e - L c j 4 e e e e e e e e e e e e e J j  .c L z - | e | L j . r e e e e e e e e e e e e | _.j q e * j ^ Y e e e e e e e e e e e e e 7   c   L O Y 7 c c  . .].j 3 ~.e e e e e q j & e e e e e e e e e e e 3 c z 7   ].c c 7 e e e e e e e e e e e e & i ' ' ' ' ' ' ' ' '    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e | u + + + + G 4 z e 3 i k e e e e e e e e e e e e - 5   c 2 e e e e e e e e e e e e - L c  .c L z 2 ' O e / ' ' O e e e e e e e e e e e e r . j + | u j & e e e e e e e e e e e e e z .     > | e 7 + ].]. . . .].' J e e e e e q j & e e e e e e e e e e e 3 c z 7   ].  . ~.e e e e e e e e e e e Y O [.[.* * * * * * * * 3    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e 2 i ' ' ' ' ' j m z r ^   - e e e e e e e e e e e z . ' 5 z e e e e e e e e e e e e k '  . .c L z 7 ' ' 7 e G j ^ r e e e e e e e e e e e e & ' c ' c ' q e e e e e e e e e e e e e J j c   | e 3 '    . . . . . .c   7 e e e e q j & e e e e e e e e e e e 3 c z 7    .' O e e e e e e e e e e e e e e e e e e e e e e e e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e 2 '  . . . . ._.' & e 4 i q e e e e e e e e e e e r . j u e e e e e e e e e e e e z m c  . .c L z 7   ' ^ U | ].j 2 e e e e e e e e e e e e O    . . .  - e e e e e e e e e e e e z t ].' 4 e * j ]. . . . . . . . .  > z e e e q j & e e e e e e e e e e e 3 c z 7   c t z e e e e e e e e e e e R Q C C C C C C C C C Q e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . ._.  '   ' ' c  . . . . .c m ~.e e e e e e e e e e 2 '  . . . . . .c 5 r 7 j 4 e e e e e e e e e e e r . j 3 e e e e e e e e e e e e / ' ]. . .c L z 7    .j / e u i + e e e e e e e e e e e e |   ]. .  ^ r e e e e e e e e e e e e 4 '   > r - <.   . . . . . . . . . .' & e e e q j & e e e e e e e e e e e 3 c z 7   j & e e e e e e e e e e e e X [ 6 ( ( ( 6 6 1 6 [ $.e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . .  . q | O + ].c  . . . .c m ~.e e e e e e e e e e 2 '  . . . . . .c  .| z ' G e e e e e e e e e e e r . i q e e e e e e e e e e e ~.G '  . . .c L z 7   ].  . e O j m z e e e e e e e e e e e r L ]. .' G Y e e e e e e e e e e e r . ' j 4 e k '  . . . . . . . . . . .].' / e e q j & e e e e e e e e e e e 3 c z 7   c 7 e e e e e e e e e e e e ) S = = = = = = @.= S F e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . .j O e e e ~.7 . c f  . .c m ~.e e e e e e e e e e 2 '  . . . . . .].  q Y ' ^ e e e e e e e e e e e r . i | e e e e e e e e e e e z m c  . . .c L z 7   ].c f | z  .' q e e e e e e e e e e e Y .    .j J e e e e e e e e e e e e 7 ' c t - z  .]. . . . . . . . . . . . .  > z e q j & e e e e e e e e e e e 3 c z 7 ' . Y e e e e e e e e e e e >., , , , , , , , , , h ) e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . .j O e z z e e r & t t _.c m ~.e e e e e e e e e e 2 '  . . . . . .].' / ~.f ^ e e e e e e e e e e e r ^ t - e e e e e e e e e e e 7 j  . . . .c L z 7   ]. .j J e + i 3 e e e e e e e e e e e e k ' ].' / e e e e e e e e e e e e 3 '   u e * '  . . . . . . . . . . . . . .' k e q j & e e e e e e e e e e e 3 c z 7 i * e e e e e e e e e e e e % H , , @ @ , @ , , , : v e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . .j O e 2 & 7 Y e U k m L c m ~.e e e e e e e e e e 2 '  . . . . . . .j 4 e . ^ e e e e e e e e e e e r ^ . U e e e e e e e e e e e * '  . . . .c L z 7   ]. .' + ~.* i . U e e e e e e e e e e e * j c t | e e e e e e e e e e e Y ^ c ' O e + '  . . . . . . . . . . . . . .].T G . ' & e e e e e e e e e e e 3 c z 2  .- e e e e e e e e e e e ,.*.b : : : s s s W : : H N e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . .j O e r * J 2 Y e r G > t > ~.e e e e e e e e e e 2 '  . . . . . . .j J e > ^ e e e e e e e e e e e z m + e e e e e e e e e e e e +    . . . .c L z 7   ]. .c t r 7   c z e e e e e e e e e e e 2 j   m z e e e e e e e e e e e - :.c ' - - 5    . . . . . . . . . . . . . . .].'   ' & e e e e e e e e e e e 3 c z q G e e e e e e e e e e e e Q l s s s s : 8 s s s : H N e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . .' k ~.e | * * 7 e e 7 u > ^ ~.e e e e e e e e e e 2 '  . . . . . .].  q Y ' ^ e e e e e e e e e e e -   k e e e e e e e e e e e ~.^    . . . .c L z 7   ]. . .' | z m ' | e e e e e e e e e e e | ].' ^ Y e e e e e e e e e e e /     ^ U 2 j  . . . . . . . . . . . . . . . . . . .' & e e e e e e e e e e e 3 c z 2 2 e e e e e e e e e e e e *.A : : : s : : s s s W H *.e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . .t 7 e Y / 4 3 z e U 4 . . ~.e e e e e e e e e e 2 '  . . . . . .].  q Y   u e e e e e e e e e e e -   J e e e e e e e e e e e z m    . . . .c L z 7   ]. . .' O ~.^ j * e e e e e e e e e e e - m ' u e e e e e e e e e e e e k j ' & e 4 '  . . . . . . . . . . . . . . . . . . .' & e e e e e e e e e e e 3 c z - U e e e e e e e e e e e e N : @ W h h h @ @ @ W h K v e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . .t + r e - 3 G q e e 7 + u ~.e e e e e e e e e e 2 '  . . . . . .c  .| z ' & e e e e e e e e e e e | i q e e e e e e e e e e e 7 _.c  . . . .c L z 7   ]. . .' k e + i k e e e e e e e e e e e z ^ j & e e e e e e e e e e e ~.+ ' j J e u    . . . . . . . . . . . . . . . . . . .' & e e e e e e e e e e e 3 c - e e e e e e e e e e e e e e v , d _ _ _ _ _ _ &., &.h ) e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . .L m * e e O + 4 ~.e - 3 G ~.e e e e e e e e e e 2 '  . . . . . .c 5 r 7 j J e e e e e e e e e e e 7 j 7 e e e e e e e e e e e q   ]. . . . .c L z 7   ]. . .' u e 3 i u e e e e e e e e e e e U . i 4 e e e e e e e e e e e z ^ '   2 Y f ]. . . . . . . . . . . . . . . . . . . .' & e e e e e e e e e e e 3 c - e e e e e e e e e e e e e e F @.l l l l l l l = l l @.N e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . .f m . - e z & 3 U e z 4 k ~.e e e e e e e e e e 2 '  . . . . . .' G e 3 i 7 e e e e e e e e e e e * ' - e e e e e e e e e e e * j  . . . . .c L z 7   ]. . .  ^ ~.* j . Y e e e e e e e e e e e u i * e e e e e e e e e e e - L   f | - c  . . . . . . . . . . . . . . . . . . . .' & e e e e e e e e e e e 3 c - e e e e e e e e e e e ~.7 e F = w w l l l l l = l w @.F e - '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .L m 3 e e / J e e z J 4 ~.e e e e e e e e e e 2 '  . . . . .c j 7 U ^ L z e e e e e e e e e e e k   - e e e e e e e e e e e 3 j  . . . . .c L z 7   ]. . .  > z 2 j ^ z e e e e e e e e e e e G i q e e e e e e e e e e e | j c 5 r 2    . . . . . . . . . . . . . . . . . . . .' & e e e e e e e e e e e 3   - e e e e e e e e e e e z k e F l 8 8 8 8 8 8 8 b 8 8 l *.e - '  . .  ' ' ' ' ' ' ' ' ' ' ' ' '   c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . .c   ' ' ' ' ' ' ' ' ' ' ' ' '   ]. .].c c c c c c c c c c c c c c c c c c c ]. . . . . . . . . . . .].c c c c c c c c c c c c c c c c c c c c ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . ._.5 . | e z 7 e e - * 4 ~.e e e e e e e e e e 2 ' ].  ' ' j j 3 e / i 3 e e e e e e e e e e e e u f r e e e e e e e e e e e k '  . . . . .c L z 7   ]. . .c 5 - | j m - e e e e e e e e e e e & i 2 e e e e e e e e e e e 2 j c > e * '  . . . . . . . . . . . . . . . . . . . .' & e e e e e e e e e e e 3 m U e e e e e e e e e e e O + e F = w w w w w w w w w b '.N e - ' ' j 5 . k * 7 | z z z z | 7 * & ^ t '    . . . . . . . . . . . . . . . . . . . . . . . . .  j t ^ G J 2 | z z z z - 7 O 4 u > ' '  .c c #.#.#.#.#.#.#.#.#.#.c c c c c #.c   c  . . . . . . . . . .  c #.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.1._. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .f 5 k ~.e Y e e | * J ~.e e e e e e e e e e 2 j t + G 3 J 7 e - m T - e e e e e e e e e e e r L L Y e e e e e e e e e e Y + '  . . . . .c L z 7   ]. . .c _.| z ' _.| e e e e e e e e e e e 4 i | e e e e e e e e e e e O j   . e k '  . . . . . . . . . . . . . . . . . . . .' & e e e e e e e e e e e k 4 e e e e e e e e e e e Y u + e F = w w w w w w w w l b = F e - j + / - e e e e e e e e e e e e e Y | * . ' ' c  . . . . . . . . . . . . . . . . . . .c ' ' . * | Y e e e e e e e e e e e e e z 2 k J 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 2 ^    . . . . . . . .' 4 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 .    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . ._.L ^ | e e e Y 2 * J ~.e e e e e e e e e e 2 j > - e ~.~.U 2 ^ i J e e e e e e e e e e e e | ].5 Y e e e e e e e e e e U + '  . . . . .c L z 7   ]. . .c c 7 z j _.| e e e e e e e e e e e 4 i - e e e e e e e e e e e 4 '   G e G '  . . . .].  ]. . . . . . . . . . . . . .' & e e e e e e e e e e e 4 | e e e e e e e e e e e | i G e F @.l w w w l l n l w w = F e r 7 ~.e ^.>.~ % # o # # # ) ) # C ~ ,.^.e Y 7 + =.'  . . . . . . . . . . . . . . . . .' t & 7 Y e e ,.~ C $ I I *.*.*.I ) o X >...e e ~.e e e e e e e e e e e e e e e e e e e e {.' ]. . . . . . .' u U e e e e e e e e e e e e e e e e e e e 7 f c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . .f L 3 e e e z q O 4 ~.e e e e e e e e e e 2 j ^ z 7 G u 5 i j & U e e e e e e e e e e e e * j u ~.e e e e e e e e e e r ^    . . . . .c L z 7   ]. . .].  7 r _.' 2 e e e e e e e e e e e * i - e e e e e e e e e e e 3 ' ' 3 ~.u '  . . .].L . 5 ]. . . . . . . . . . . . .' & e e e e e e e e e e ~.7 Y e e e e e e e e e e e k i G e F @.= w 8 b w w l l w b @.N e e e x C ) l @.@., # ) , d , d d _ h F % Q (.e ~.7 u ' c  . . . . . . . . . . . . .    G - e e (.Q # -.S l 1 H h @.S 1 = H : [ ( I o ;.e e e /.% % % % % % o % % % % % % o o o x e 2.'  . . . . .c +.| e X o % % % % % % % % % % % o C % ! e r .    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . ._.f u z e e | 2 * 3 ~.e e e e e e e e e e 2 i m z 3 i c m + q ~.e e e e e e e e e e e e Y + j + ~.e e e e e e e e e e z > c  . . . . .c L z 7   ]. . . .j O Y > i q e e e e e e e e e e e q   z e e e e e e e e e e e k ' ' 4 ~.u '  . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e U e e e e e e e e e e e - 5 j G e F = l n b b w b b b b H @.N e x % $.S @.A -.w g o ) d M d M M d , &.} S $.% ,.e Y O L '  . . . . . . . . . .].' > 2 ~.e >.% F = @.8 8 8 b s @ 8 b b P s h @.l @.y N N Q (.e $ %.] ] ] ] ] ] ] ] ] ] [ %.%.).C e - !.c  . . . .j 3 e >.( %.] ] ] y ] ] ] ] ] [ ] %.@.1 ~ e J '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . .  G e e e | 2 J & ~.e e e e e e e e e e z 2 7 Y - 7 - z ~.e e e e e e e e e e e e e e -  .' u ~.e e e e e e e e e e z > c  . . . . .c L z 7   ]. . . .j O Y > i q e e e e e e e e e e e / 5 z e e e e e e e e e e ~.+   ' * r .    . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e J ' ' G e F = w l l l l = b b b b @.*.~ F S w 8 w s -.w g o ) d M _ } M M &.N ) = 1 ] @ Q ^.e | . '  . . . . . . . .c ' G z e /.% P @.H A s s s 8 : l : s 8 8 : W @ l w n 1 M S ).E ;.x V [ 6 1 1 1 1 1 ( ( ( B [ ] ] n ~ e }.j  . . .  > z e # ] 1 ( 6 6 [ 6 ( ( 6 6 = 1 [ l % e - <.   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . .  / e e e z / 3 G ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e J '   u ~.e e e e e e e e e e z >    . . . . .c L z 7   ]. . . .j O Y > i q e e e e e e e e e e e / 5 z e e e e e e e e e e e +   ' 2 z >    . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e & j ' G e F = b b l l l B l w w b b B $.= b 8 8 w 8 s b g o ) M M @ M M M _ N ) = 1 1 H S ) >.e r + '  . . . . . .c   J ~.e X F @.H b A A A A A A h = A 8 w = s : @ s 8 w [ v = %.] [ o % [ ( 6 6 1 6 1 ( 6 ( = [ ] ] '.$ e r . '  .].  q e X B [ 6 '.( 6 1 6 ( ( 6 6 = 1 ] I /.~.+ '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . .].t z e e e Y 2 k + ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e Y ^     u ~.e e e e e e e e e e z > c  . .].    ' T z 2 ' '       i O Y m i / e e e e e e e e e e e / <.z e e e e e e e e e e e u j i q z > j       j u e & j          . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e q   j G e F l 8 b l l l n n l w b 8 ( K K w 8 A b b D w g o ) d } , } M _ _ N ) = 6 1 s P l V X e R & j  . . . .    / e ^.C = l A A b A A A A A A : s h b w w 8 l K h W 8 [ v @.y 1 1 ] E n 1 6 6 1 1 1 ( 1 1 B [ ] ] n 6 ! e 7    .' + e (.N @.1 1 ( ( ( 1 ( '.( 6 6 = [ y ;.e q '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . .' G ~.e U U e | k + ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e / ' ].  u ~.e e e e e e e e e e - '  . .].L . . . u z | . . . . . > 2 Y + > 7 e e e e e e e e e e e 2 u r e e e e e e e e e e e k ^ ^ 7 r + . . . . ^ & e 4 ^ . . . ^ _. . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e r > j G e F = b 8 l l l = w n l l w ( : A 8 8 8 b A P w g o ) d M _ M M M _ N ) l 6 6 8 w h @.@.Q e U u '  . .c c q e (.# S b 8 b A A A A A 8 K : = s , A b w : = = 8 W s [ v @.%.1 6 1 [ 1 6 6 1 1 6 6 ( 6 1 6 ] ] [ n = V x e & j L - e % 6 n [ 1 ( ( ( ( ( ( ( ( ( = ] $ e z >    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . .j O e e | - e U 4 G ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e r . '  .  u ~.e e e e e e e e e e - '  . .  . r U U U e ~.U U U U U U Y e U U ~.e e e e e e e e e e e ~.U e e e e e e e e e e e e U U U ~.e U U U U U U U e Y U U U Y - L c  . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e k i G e F = b 8 l l l = w w w l n ( : 8 b 8 8 w A -.b g o # M M _ M M M _ N ) l 1 1 s w h w w @.Q e r . ' ].' O e (.$ @.8 8 8 b A A A A K 8 8 : l w h s 8 8 h : b n s 8 [ v = %.1 6 1 1 1 6 6 6 1 6 ( '.'.( ( [ ] ] n D ] o e - T J e ;.n D = [ 1 ( ( 6 '.( ( ( 6 ( '.n ,.e k '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .c _.| e ~./ 7 e e q k ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e O j  . .  u ~.e e e e e e e e e e - '  . .c > * O * O U - * * * * * J - ~./ J - e e e e e e e e e e e - O U e e e e e e e e e e e 2 * * - U / * * * * * q e 7 * * * O 4 t ]. . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e | i G e F = w b l l l = w w w w w 6 W A w 8 A b b P w d o # } } d M M M _ N ) = 6 6 8 w h w P H @.! e | !.j 3 e (.$ S 8 8 8 s b K A A A b s K K : w : A b l s : h b 8 w [ v = %.1 6 [ 1 6 6 6 6 1 1 1 '.( ( '.[ ] ] D D ( y X e 2 r e E [ -.D [ 1 ( ( ( ( ( ( ( 6 ( 1 Q e 7 '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .  ^ r e z O q z e - 3 ~.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e - m c  . .  u ~.e e e e e e e e e e z 5 c  . .c j j j =.z 2 i j j j j i O Y m i / e e e e e e e e e e e / T z e e e e e e e e e e e u i i q z m i j j j i . e G i j j j '  . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e U . + e F = w b w l l = w l w b b 6 W A w 8 8 b 8 P l d o # } } M M M M _ N ) = 6 6 8 w h w b K l -.~ e O . U e o S b 8 s 8 P 8 K : A A 8 8 A K h = : K b l 8 W @ b 8 w [ v = %.1 6 1 6 6 6 6 6 1 1 1 B ( ( B [ ] ] n D = %.E e e e Q %.1 D D [ 1 6 ( ( 6 ( 6 ( 6 [ ) e U . '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .' G e e | * O 7 e Y O Y e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ~.G '  . . .  u ~.e e e e e e e e e e z >    . . . . .c L z 7   ]. . . .j O Y > i q e e e e e e e e e e e / 5 z e e e e e e e e e e e +   ' 2 z ^    . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e e J u e F = w H l l l l w l w b b 1 : K b 8 8 w : s l g o # d M M d M M _ N ) l 1 1 8 w h w b A s S I /.U z e Q @.b b 8 8 8 8 b K : A A A b 8 K h w : s b l b A @ 8 s b [ v = %.1 6 1 6 6 6 6 1 1 1 1 6 6 6 B [ ] ] n n B y ] Q e ,.-.%.1 n D [ 6 6 ( ( ( ( 6 ( 1 6 ~ e [.j  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .' J e e 2 * J J r e | Y e e e e e e e e e e e e e e e e e e e e e e e e e e e e e * '  . . . .  u ~.e e e e e e e e e e z > c  . . . . .c L z 7   ]. . . .j O Y > i q e e e e e e e e e e e / 5 z e e e e e e e e e e ~.+   ' q r ^    . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e e - & e F = b b l l l = w w w b b ( : 8 l 8 K l 8 s b g o ) d _ } d M M &.v ) l 6 1 8 w h w P b 8 8 S C e e >.W H b b s b 8 s b K : A A A A 8 8 K b h b b b : l b : s b [ v = %.1 6 1 6 6 6 6 1 1 6 1 ( ( ( B [ ] ] D D ( y ] $.,.o [ y 1 D D 1 1 ( ( ( ( ( ( ( [ % e - !.c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .  7 e U O * 4 G | e U e e e e e e e e e e e e e e e e e e e e e e e e e e e e e 7 +.c  . . . .  + ~.e e e e e e e e e e z > c  . . . . .c L z 7   ]. . . .j O Y ^ i q e e e e e e e e e e e q t z e e e e e e e e e e e G   ' 4 Y u '  . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e e ~./ e F = b b l w b = w w w b b 6 W 8 8 l b 8 w D w g o } , _ M M M } d ) ) l 6 1 8 w : w b 8 b 8 l -.>.e $ @.8 b b b b b 8 8 A : : : : : s 8 K H H = @.@.H l l : W 8 6 v = %.[ 1 1 6 1 1 ( 1 1 6 1 6 ( ( B [ [ [ -.D = y [ B $ B [ y 1 D D 1 [ 6 ( ( ( 6 ( 1 E (.e 2.'  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .c z e z J * 3 u 3 e e U Y U Y e e e e e e e e e e e e e e e e e e e e e e e e z 5    . . . . .  u ~.e e e e e e e e e e z >    . . . . . ._.. ^ ]. . . .].' 2 U 5 j 2 e e e e e e e e e e e O i - e e e e e e e e e e e 3 ' ' 4 ~.u '  . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e e e r e F @.w b l = l = w w w b s 1 W P W w @.h b @.'.) C o # o ) , d ) } ) ) l ( ( s b : w b K w w w S % ;.l K 8 8 K b 8 8 8 A 8 K K K 8 8 A l S W ) ) ) ) v l S : W 8 1 v = y [ 1 1 ( 1 [ ( ( 1 6 ( [ 6 6 B [ ] y D n b ] ] 1 w = [ y [ n D 6 1 1 1 6 B 6 1 1 X e {.' ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .c > r e - J J & . > z e 4 + u + 4 - e e e e e e e e e e e e e e e e e e e e e e U u '  . . . . .c > Y e e e e e e e e e e U u    . . . . . . .     . . . .c c 7 z j  .| e e e e e e e e e e e 4 i - e e e e e e e e e e e 3 ' ' & e + '  . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e e e e e F = b b b b b = b b b w w B s s 8 8 b @.D % X x e e e e >.X o M d v ) = 1 [ W 8 s w b K b b 8 l $.V b s s 8 b 8 8 8 b b K A A : s l @.$ ! ~ e e e e (.X C &.l b 1 v = ] 1 1 [ 1 ( [ 6 6 1 6 6 1 ( 6 B 1 [ y = = B ] [ B D = [ y 1 = D ( 6 6 6 ( ( 6 [ $ e x >    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .  + Y e - J J + > 4 Y ~.u i i i j L O e e e e e e e e e e e e e e e e e e e e e e O ' ]. . . . .c 5 Y e e e e e e e e e e U u '  . . . . . . . . . . . . .c ].| z ' _.| e e e e e e e e e e e 4 i - e e e e e e e e e e e * '   + e & '  . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e e e e e e e e e e e e e e e e F = l w b b b l b b b w w n b A b w l o ,.e e r - | | - Y e ^.~ # g ) = 1 [ : s s w b K w w 8 b b l 8 8 8 8 8 8 8 8 8 l : : A A @.*.;.^.e ~.z | | | z e e (.% D ] v = y 1 1 1 6 6 1 6 1 [ ( '.6 [ 1 ( ( 1 ] B ( [ 1 6 6 6 ( 6 1 1 6 1 [ ( 6 6 6 B [ n >.e ` '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .' k e e | * 4 u / e e ~.u + 2 J m ' ' / e e e e e e e e e e e e e e e e e e e e e z m    . . . .c 5 U e e e e e e e e e e ~.& '  . . . . . . . . . . . . .c 5 - | j m - e e e e e e e e e e e k i 7 e e e e e e e e e e e / j   > e 4 '  . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e Y Y e e e e e e e e e e e e e F = l w b b b l w w w b w B l = @.$.! e e | k ^ ' ^ 4 3 k }.z e ^.% } = 6 1 8 8 : w b K b w b b s w 8 8 8 b b b 8 8 8 l 8 s 8 S o (.e r * u T m 3 3 3 k 2 ~.e ;.( g = y 1 6 6 6 6 1 6 6 [ ( '.6 6 1 6 ( ( 1 '.B [ B B ( 6 1 ( ( 6 6 1 1 6 6 ( ( '.[ C e | 4.c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .' 4 e e - * k / e e z z u & e e - m ' > z e e e e e e e e e e e e e e e e e e e e e k '  . . . .c t - e e e e e e e e e e e k j  . . . . . . . . . . . . .  m z 7 j > z e e e e e e e e e e e G i 7 e e e e e e e e e e e 7 i c m Y /    . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e e q | e e e e e e e e e e e e e ) @.l l w w w w w w w P : '.s [ @ ;.e x &   j     . 4 J q O + O e e % 1 '.( b b : w b s 8 b w b s 8 8 8 8 8 8 8 b 8 8 K 8 b @.% e e q m ' '   > 4 4 * q 3 & - e >.v S y [ 1 1 1 6 [ ( 6 [ 6 ( 1 6 1 1 1 1 1 6 6 1 B ( 1 6 6 1 6 6 6 1 1 1 1 6 ( [ *.e Y u '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .j J e e - J * U e | k q + 5 r e e J ' j * e e e e e e e e e e e e e e e e e e e e e | '  . . . .c f - e e e e e e e e e e e J j  . . . . . . . . . . . . .  ^ Y O j . U e e e e e e e e e e e + i / e e e e e e e e e e e | c   L - |    . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e ~.u 3 e e e e e e e e e e e e e ! S l l l l l l l l l l w = : [ ! e ~ u j c  . .  u q 2 4 4 7 & 4 e ^.) [ ( s P K b 8 8 8 8 b 8 A 8 8 8 8 s s s 8 8 8 8 K @.$ e e J '    . .  . * q O k * q u | e ~ ( y 1 1 1 1 6 [ 6 6 [ 6 ( 1 6 6 6 1 1 [ 1 6 6 1 1 1 ( 6 1 1 1 6 6 1 1 1 1 1 ( ~ e * '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .j / e e r J 2 e 7 + 3 O u ' q e e - c ' G Y e z O q U | 2 e e e e e e e e e e e e e U u '  . . .].].7 e e e e e e e e e e e O ' ]. . . . . . . . . . . . .  . e 4 i u e e e e e e e e e e e Y u i * e e e e e e e e e e e z >   ].7 z    . . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e z   > U e e e e e e e e e e e e ,.g H h h h h : h h h W 8 l l o e x . j  . . . . ._.5 . * 7 k 2 & 4 e >.n 1 : s b s 8 8 8 8 b 8 s 8 8 8 8 8 s s s s s 8 H @ >.e * ' c  . . . ._.L m G q O 3 2 u - e o %.1 6 6 ( ( 1 ( 6 1 B = '.B '.= B @.B = n l = B B n = B B B B = = = B = 1 % e - m    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .j / e e U / J * G & 4 O J i & e e r >   ^ r e 7 i m z 4 ' r e e e e e e e e e e e e e * ' ]. . .].  q e e e e e e e e e e e 7 ].c  . . . . . . . . . . . .' G e G i & e e e e e e e e e e e z ^ j 3 e e e e e e e e e e e U u ' ' O e ^ c  . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e e ~.u ' 2 e e e e e e e e e e e e e % @.s : : : s W W W h h b P ,.e 6.j  . . . . . . .c c j + | & 7 u | e o ] W W w s s 8 8 8 s 8 : s s s s b s s s s s 8 l % e | T    . . . . . .].c     J q 3 / G e ,.6 [ 6 1 6 B 1 ( 6 [ = l B B F ( B B 6 B ( = B = B = = n B B B B B = B 6 E (.e 2.'  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .' J e e e 7 4 G G k 3 J |  .5 z e U . ' ^ r e 7  .^ z J j / e e e e e e e e e e e e e z 5 c  . . .' * e e e e e e e e e e e - 5 c  . . . . . . . . . . . .' J e . j J e e e e e e e e e e e - m j G e e e e e e e e e e e e & j j 3 e & '  . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e Y e / i & e e e e e e e e e e e e e ;.8 s s s s w s s s W , @.o e | 5.c  . . . . . . . . . .j + 7 3 / G e >.1 b s : b 8 : s 8 b s : s s s : s s 8 s s s b s x e G '  . . . . . . . . . .c j * J q & 7 e $ ] 1 6 6 B 1 6 1 y ( = B B $ I 1 B ( ( B n 1 ( D B 6 = n B B 1 B n B 1 X e 2 ' ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .' 4 e e e - J k G G + G Y + i 7 e z t ' + Y e | t ^ z J i G e e e e e e e e e e e e e e G '  . . .j 3 e e e e e e e e e e e Y ^    . . . . . . . . . . . .' 7 z > j 7 e e e e e e e e e e e |  .' . e e e e e e e e e e e e J ' ' u ~.O j  . .' u e & '  . . . . . . . . . . . .' & e e e e e e e e e e e O | z L L z e e e e e e e e e e e e ^.v b @ W W W $.@ W $.8 l ! e 4 j  . . . . . . . . . . . .j * J 2 + | e $ 6 = b l w w w w l l l w w l l w w l b w l @.I e >.!.c  . . . . . . . . . . .].L 2 3 / & e ;.'.1 ( '.'.'.'.( 1 = l = S # ;.'.= = '.@.l n P s b @.= = = = = = n 6 # e r ^    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .  + Y e e Y O k + . > . e O j & e 7 ' j * e e | L ^ z J j t - e e e e e e e e e e e e e 7 '  . . .' G e e e e e e e e e e e e +    . . . . . . . . . . .].c z | ].  - e e e e e e e e e e e 2 j   ^ U e e e e e e e e e e e | c c  .z | c c  .' u e & '  . . . . . . . . . .    ' & e e e e e e e e e e e & 3 e G i / e e e e e e e e e e e e e Q H g &.&.g &.g &.g , $.>.Y u '  . . . . . . . . . . . .  . q J k O e % @.h : h h h h h h h h : h h h h h h h h h H Q e 3.' ]. . . . . . . . . . . . .' 4 J / u U /.D ( B B B B B ( 1 n l = 6 ) e o 1 l n = = B D D D n n B n n n = B B ,.e 3 j  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . .].5 z e e e | k u > t > e z c ^ - u j > z e e | t ^ z J ' ' * e e e e e e e e e e e e e r .    . .' u U e e e e e e e e e e e J '  . . . . . . . . . . .  u ~.O i ^ r e e e e e e e e e e e * j c 5 - e e e e e e e e e e e U 5 c j 2 Y ^    .' u e & '  . . . . . . . . .+.^ > ' & e e e e e e e e e e e 3 > e q j u e e e e e e e e e e e e e >.h l b l s l P D B ] F e z m c  . . . . . . . . . . . . .c 2 3 3 ` e Q : , , _ _ _ _ _ _ &.g d _ _ _ _ _ _ _ _ _ h X e 3 j  . . . . . . . . . . . . .' G O * G - e I v ) v v v } v &.} ) } v o e ,.) } } } ) ) # # # # # # # # # # ) ! e | f c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .].O e e e ~.7 + m   m ~.~.G _.^ '   2 e e e 7 _.^ z J '   . Y e e e e e e e e e e e e e J j  . .  > z e e e e e e e e e e e 7 j  . . . . . . . . . . .j 3 e & i k e e e e e e e e e e e e 3 ' c  .7 e e e e e e e e e e e e & '   & e & '  .' u e & '  . . . . . . . .  . ~.q j & e e e e e e e e e e e 3 j 7 U t :.| e e e e e e e e e e e e e # @.b w 8 = l n 1 y E e - j  . . . . . . . . . . . . . .  O 4 3 ` e ! P W W @ @ @ @ @ @ h @ , @ @ @ @ @ @ @ @ @ H X e 2.'  . . . . . . . . . . . . .' + * 4 k | e ) g d g g d M g $.v v v g o e e C , N v } v # # # ) ) ) ) # # ) o (.e 2.j  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . .u z e e e e z * u u z 2 u   ' 5 q e e e e 7   ^ z J ' ].c 7 e e e e e e e e e e e e e - L c  .].' | e e e e e e e e e e e z 5 c  . . . . . . . . .c   7 U 5 j / e e e e e e e e e e e Y u    .j O e e e e e e e e e e e e q j   > U |    .' u e & '  . . . . . . .c c | e q j & e e e e e e e e e e e 3 i 3 e k i 4 e e e e e e e e e e e e e ! @.n = 8 B = = 6 [ 0 e z f c  . . . . . . . . . . . . .c 2 3 3 3 e Q l W h h h h h h h @ h h @ @ @ h h @ @ @ @ H X e k j  . . . . . . . . . . . . .' G O * G - e F = w P P s W D [ s @ W H # e /.# l P W , W v v d &.V @ &.g d &.$.! e 7 c c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . .f 5 3 U e e e e e e U + i ' c > | e e e e e 7 ' ^ z J '  .j k e e e e e e e e e e e e e e + '  . .j 2 e e e e e e e e e e e ~.G '  . . . . . . . . .  ^ ~.2 j 5 - e e e e e e e e e e e r L c  .j 3 e e e e e e e e e e e e - m   ' q e .   ' u e & '  . . . . . . .j k e e q j & e e e e e e e e e e e 3 j ^ U 7 j ^ r e e e e e e e e e e e e R &.@.= 8 B = l '.1 -.x U .    . . . . . . . . . . . .  ^ q J k J e C l W W @ @ h @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ l X e J '  . . . . . . . . . . . . .' 4 J / . r ^.&.b b h : s h 8 1 W , @ H # e Q = h s @ _ , ) } } M _ , _ _ d _ W } x e & '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . .5 ^ 3 - Y ~.e e ~.U k G * ^ f z e e e e e 7 j ^ z J '  .  > z e e e e e e e e e e e e e 2 '  . .' 3 e e e e e e e e e e e e O ' ]. . . . .j '  . .j O e + j u e e e e e e e e e e e e | c ]. .' + Y e e e e e e e e e e e e & ' ' + e q ' ' u e & '  . . . . . .  > z e e q j & e e e e e e e e e e e 3 ' j 7 U ^ i 7 e e e e e e e e e e e e e % 6 = s ( '.l 6 [ [ ! e k j  . . . . . . . . . . . .j * J 2 u 7 e o = &.8 h h h h h h h h @ @ @ @ W @ , @ @ @ : o e | +.]. . . . . . . . . . . .].L 2 3 q u e >.@ @ s s W h h s 6 W , h H # x &.: h 8 h , , } } } M _ , , _ d _ s h % e z m    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ._._. ._. . . ._.f _.' J e e ",
-"e e -  .]. . . . . . . .t > u k / 7 | | 2 / Y e e k i 2 e e e e e 2 j ^ z J '  . .j 2 e e e e e e e e e e e e e r .    .  u e e e e e e e e e e e e z 5 c  . .].t O 3 c ' ^ Y 7   j / e e e e e e e e e e e e O    . .c L z e e e e e e e e e e e e |   ].' 7 e + i u e & '  . . . . .c ' 2 e e e q j & e e e e e e e e e e e 3 ' ' & e k i G e e e e e e e e e e e e e ~ = '.: '.( b ( ] ] C e 7   c  . . . . . . . . . .j + 7 3 / . ~.>.g 8 = d @ @ @ @ @ @ @ @ W @ @ @ @ @ @ @ @ @ , @ R ~..    . . . . . . . . . .c j * * q & / e % S n : h s W h 8 1 h , W K o % l W @ s h , , } M } d _ _ _ , _ d : , , ~ e O '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .f t L f L  .t L L 5 t ' * e e ",
-"e e -  .]. . . . . . . ._.5 ^ + 3 J O O * O ~.e e 2 j & e e e e e 2 j ^ z J '  . .  + e e e e e e e e e e e e e e 4 '  .c 5 r e e e e e e e e e e e e k '  . .c L r 7   j 2 e + j > r e e e e e e e e e e e e & '  . . .' | e e e e e e e e e e e e e & '   ^ U - 5 . e & '  . . . . .' 3 e e e e q j & e e e e e e e e e e e 3 ' c 5 r | ' m z e e e e e e e e e e e e ^.) 1 : '.B l ( [ ] N x e + '  . . . . . . .].c j u | & 7 . / e X = W @ s @ @ @ @ @ @ @ @ @ @ @ @ W @ , @ @ @ h 8 ! e q ' ]. . . . . . .].].    4 2 3 q u /.R ) = 8 : w : s h 8 [ h _ @ h I W : W @ h h , @ } M M d _ _ _ _ d _ _ , , # ^.~.u '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ._.L 5 t m c 5 5 L m L ' J e e ",
-"e e -  .]. . . . . . . . .f 5 ^ u G 3 4 4 J ~.e e z c ^ Y e e e e 2 j ^ z J '  . .c L - e e e e e e e e e e e e e - T c ].c 7 e e e e e e e e e e e e - Z c  .c L z 2 i 3 e 2 ' j J e e e e e e e e e e e e Y u '  . . .' * e e e e e e e e e e e e e - 5   ' & e - 4 e & '  . . . .' u U e e e e q j & e e e e e e e e e e e 3 ' ].' / ~.^ j / e e e e e e e e e e e e e Q 6 8 = ( w ( [ [ H C e - 5    . . . . ._.L ^ * 7 k 2 k 2.e (.v K h @ s h h h h h h h h @ @ @ @ h h @ @ @ @ h A v (.e & j ]. . . . ._.t 5 u q / 3 7 ^ 7 e ! l : s 8 b s s @ 8 [ h , @ @ s W W W @ : @ , @ } } d _ d _ _ _ d _ d , _ h Q e | 7.c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .].L m > t 5 > ^ > > ^ 5 ' J e e ",
-"e e -  .]. . . . . . . . . .f L m ^ . u + & ~.e e Y u f - e e e e 2 j ^ z J '  . . .' J e e e e e e e e e e e e e e +    .' 4 e e e e e e e e e e e e e k j  .c L z | J e z > j ^ z e e e e e e e e e e e e - L c  . . .' + e e e e e e e e e e e e e e / j ].' & r e e & '  . . .' > z e e e e e q j & e e e e e e e e e e e 3 '  .' G e J i + Y e e e e e e e e e e e e x V w l 6 b 6 ] 1 : g ~ e 7 |.   . . .  . 2 2 4 4 7 k u r e % w , @ @ h @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ W , H % e r u ' ]. . .  ^ * q O k J 2 ^ {.e >.&.8 W W 8 s P 8 h 8 [ W , @ , s s @ W @ P @ _ , } } d , d _ _ , d d _ _ _ , g >.e 3 j  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ._.f f ].f ^ ^ 5 f t ].' J e e ",
-"e e -  .]. . . . . . . . . . . .f L 5 m m . ~.e e e 4 i q e e e e 2 j ^ z J '  . . .' u U e e e e e e e e e e e e e q j  .' + Y e e e e e e e e e e e e z > ' c L z e e | ^ ' ' 2 e e e e e e e e e e e e e / j  . . . .  > z e e e e e e e e e e e e e e 4 j c ' m * e & '  . .' ^ - e e e e e e q j & e e e e e e e e e e e 3 '  .c t z - _.' - e e e e e e e e e e e e e o @.n 6 b 6 ] 1 W h F x e | ^ j ' ].  . 4 J 2 O . & (.e Q 8 h @ @ @ h @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ W , , H Q e U 3   ' c   ^ 4 4 * 2 3 . 7 e x *.l : s 8 s : s b h 8 [ W , @ @ @ W W h @ s W , , } } M _ d _ _ _ _ _ _ _ _ _ : o e r ^    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .]. . .].]. .].].].].].].].f > 5 ]. .].].' J e e ",
-"e e -  .]. . . . . . . . . . . . . . ._.c > ~.e e e 2 i 4 e e e e 2 j ^ z J '  . . .].  | e e e e e e e e e e e e e z ^   c t - e e e e e e e e e e e e e | m ' f 4 O & +.j ' J e e e e e e e e e e e e e ~.G '  . . . .c   7 e e e e e e e e e e e e e e ~.4 '   j . e & '   j + z e e e e e e e q j & e e e e e e e e e e e 3 '  . .' O e u i J e e e e e e e e e e e e e ;.l = 6 b 6 ] 1 W _ S *.,.e r * .   i u * & u G 7 e e C s W @ @ @ @ W @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ W @ , h w Q e e 7 G 5 i k 2 3 + u 4 r e ,.I @.W h h s 8 W W : @ s 6 W , h @ @ W W @ , s s , , } } M _ d _ _ d _ , _ _ _ d , h X e 2 ' ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .f t  .t 5 t t 5 m L c t 5 L 5 t m > ^ ^ f c     ].c c ].' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e | c + Y e e e 2 j ^ z J '  . . . .' 3 e e e e e e e e e e e e e e 3 '  .j / e e e e e e e e e e e e e e - ^ ' i i j j t O e e e e e e e e e e e e e e r L c  . . . . .j 4 e e e e e e e e e e e e e e e e 7 u ' . e G j > O U e e e e e e e e q j & e e e e e e e e e e e 3 '  . .  u e * j ^ Y e e e e e e e e e e e e /.I ( 6 b ( ] [ W , l @.F ! e e U | {./ O {.- e e x o 8 h @ @ @ @ @ W @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ h , @ @ h 8 o ,.e e z 2 | {./ | U e e ;.N l = W @ , h P W , @ , h ( : @ : h @ W W h , h s @ , } } d &.d , _ d d _ _ _ _ _ _ , ) (.e 2.'  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .L 5 f t m L ^ t m ^ t L ^ . m u u u u . . . ^ ^ > _.^ u t > q e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e z > > r e e e 2 j ^ z J '  . . . .  > r e e e e e e e e e e e e e | +.].  u e e e e e e e e e e e e e e e r O + u u 3 - e e e e e e e e e e e e e e e q   ]. . . . . .  ^ r e e e e e e e e e e e e e e e e ~.7 q e 2 q U e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . .c L - z c   2 e e e e e e e e e e e e e C ( 6 b ( ] [ h , = 8 l '.) ! x e e e e e e ~ Q &.H h @ @ @ W h @ @ @ @ @ @ @ @ @ h 8 @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ H &.C ~ e e e e e e (.X # h : b ( w @ , , 6 B &.h , W B h , @ s h W W h h , 8 h @ } } d _ _ , _ _ d _ _ _ _ _ _ _ : % e - !.c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .m m m 5 > 5 ^ L > . 5 . ^ u ^ . . u u + + ^ + + + + + G + u / e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e ~.u j z e e e 2 j ^ z J '  . . . .].  q e e e e e e e e e e e e e ~.u   c L - e e e e e e e e e e e e e e e e Y U U e e e e e e e e e e e e e e e e e G '  . . . . . . .' 7 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . .j J e + i k e e e e e e e e e e e e e >.n 6 b ( ] [ W , = P 8 8 w S v I # % o # ) @ H , h @ @ @ @ W h @ @ @ @ @ @ @ @ K ) % K @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ h l @ # # o o o # v H @.&., s ( w W @ , '.B @ W @ : ( W , @ s @ @ h W w g W @ @ } } _ _ _ , _ _ d _ _ _ _ _ _ _ , , ~ e * '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .> m > ^ . 5 . m m ^ . ^ . G . u t + G u u + G G k k & k . G O e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e + i | e e e 2 j ^ z J '  . . . . .' G ~.e e e e e e e e e e e e e / j  .' J e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e - t c  . . . . . . .' k e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . .' u ~./ j L z e e e e e e e e e e e e ^.# [ b ( ] 6 W , l 8 8 P s w : [ '.@ : K l h @ , h @ @ @ @ W h @ @ @ @ @ @ @ h K X ^.*.: @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ h A 8 K : : K : , = , , : B b s W h w l W : h K 6 s @ h s @ @ s 8 n M _ , @ } M ) , _ , _ _ d , , , _ _ _ _ _ h # ^.Y . '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .f ^ > c m . 5 m . . f c t ^ 5 > _.^ . + +  .. ^ . > . & t ^ * e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e 3 j 2 e e e 2 j ^ z J '  . . . . .c f - e e e e e e e e e e e e e z >     ^ r e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e J '  . . . . . . . .  > z e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . .].' - z > j / e e e e e e e e e e e e e ! [ b ( ] 1 W , l 8 s P s w @ ( D g , , W , , @ @ @ @ @ @ W h @ @ @ @ @ @ @ A $ e e ! H h @ @ @ @ @ @ h @ @ @ @ @ @ @ @ , @ h @ , , @ @ , P , , : w : : : : : : s s @ : @.@ , h = W d h K 6 M d d , } } ~ o , _ _ _ d d _ , , _ d d _ _ : ! e | c ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .c c  .c c ].].     . . .c c c  .c        .c c   c   ' ].j J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e 4 j * e e e 2 j ^ z J '  . . . . . .' * e e e e e e e e e e e e e e k '  .' q e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e r > c  . . . . . . . . .' * e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . . .' 3 e G i + e e e e e e e e e e e e e (.$.= ( [ [ W , l w 8 P s 8 @ ( n g , , W , , @ @ @ @ @ @ W W h h @ @ @ @ h W ~ e e e % H @ @ @ @ @ @ @ @ @ @ @ @ @ @ h @ W @ h s b @ @ h s &._ : s 8 h s : @ h s h : 8 6 , d _ 8 8 h d g @ , @ _ , _ Q e >.} M d _ _ d } M , , , } M M , g ,.e 3 j  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .]. . .].]. .].].]. . ._. .].f f ].].].].].]. .]. .c c  .c c c ]._.L ].c c c ].c   ]. .c   c  .  c  .c   ].' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e 4 j O e e e 2 j ^ z J '  . . . . . .  . ~.e e e e e e e e e e e e e |   ].  . Y e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e * '  . . . . . . . . . .  ^ r e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . . .  ^ ~.2 j L | e e e e e e e e e e e e e o S 6 [ [ W , 8 w w 8 n W @ ( D g , , W , @ @ @ , @ @ @ @ @ @ W @ @ @ @ l C e - [.e (.v A h h h h h h h @ @ , , @ , @ @ W _ @ l ( @ _ @ W , , b W l @ 8 P h W l @ : W ] n &._ , s 6 @ &.d -.W , h # R e e C _ M d : h M } _ h n d M } _ , % e z >    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .t _.].t t ].f f t c 5 . f ].> m ].f L t f t ].L  .m 5   L > > _.^ . c > > > t 5 ^ Z c m ^ 5 +.^ m ].m ^ c  .J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e - | e 4 j O e e e 2 j ^ z J '  . . . . . .c Z 7 e e e e e e e e e e e e e Y .   ].' q e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e z ^    . . . . . . . . . . .' O e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . . .c c 7 U m j J e e e e e e e e e e e e e ~ @.6 [ 6 h , K b P : D s @ ( n g , , s , , @ , , @ @ @ @ @ @ h @ @ @ H o e Y u j {.e >.&.K , @ @ @ @ @ W @ , , @ @ @ s @ d , b 6 s , @ , d , W W = : b P , @ 8 h w w = W @ , h @ W W @ g n P h : ;.e | U /.# _ _ 8 d , } _ _ W _ g } K K d ;.e / '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 > t L > ^ L ^ ^ ^ t ^ + t ].u > _.u u . . ^ ' u ^ + G ^ + G + L + + c + & 4 ^ + k u . & 3 . . 3 u ' u 3 . + 7 e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m e /  . .| k i O e e e 7 j ^ z J '  . . . . . . .j 3 e e e e e e e e e e e e e e O j  .' . r e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e J '  . . . . . . . . . . . .  > z e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . . . .j k e k i . U e e e e e e e e e e e e /.) [ ] 1 @ , b P P s P h h ( n &., , W , , W @ @ @ , @ @ @ @ W @ @ H # R e 4 j   5 | e ~ &.: @ @ @ , @ @ @ @ @ , , @ W @ _ , : n W &.&.( , _ 8 @ @ s = n @ h b @ @ s [ W &._ : 8 D , , &.8 8 K o e z . - e ~ _ d @.s M } , h W d _ M d _ @.v ^.~.+ '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .].L ^   L . L 5 . . 5 ^ > m u m   . . f G m u k ^ T 3 & & & . u G u ].. G ' L + > u 4 k & ^ G k > 4   5 . G 3 4 & 7 e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m e G i u | . i 2 e e e 7 j ^ z J '  . . . . . . .  > z e e e e e e e e e e e e e - m   _.j J e e e e e e e e e e e e e e e e e e e e e e e e e e e e e - L c  . . . . . . . . . . . . .j 3 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . . . .c m U 7   ' | e e e e e e e e e e e e e Q ] ] [ @ , b 8 8 P D s @ 6 n &., , s , , @ @ @ @ , , @ @ @ h @ H I ,.e /   c  .' ^ z e >.&.H @ @ h h @ @ h W @ @ h @ , @ , W P P , , B h @ B : @ w l b s l = ( 8 b '.: : h = n = W @ , = = &.,.e & * * - e % h b b , M @ 8 : , K , : , K l C e - !.c  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ._.^ u ^ > . u m u c . ^ ].+ .   G & 5 G ].+ + G + 3 u 3 & m & 3 G t & J m k J & u & * ^ u 3 * ^ + 4 k . k O 4 & / e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m e & i / 4 ' L z e e e 7 j ^ z J '  . . . . . . . .' 2 e e e e e e e e e e e e e e & '  .c L - e e e e e e e e e e e e e e e e e e e e e e e e e e e Y + '  . . . . . . . . . . . . . .].  7 e e e e e e e e e e e e e e e e e e e e e e e e e e e e e q j & e e e e e e e e e e e 3 '  . . . . . .' 7 Y ^ j & e e e e e e e e e e e e e ,.n y [ @ , l s : 8 8 8 h 6 n _ , @ s , h s @ @ @ @ @ @ @ @ h l o (.e {.4.c  . . .' ^ - e ,.I H h @ h h h h @ @ @ @ P d , , , h 8 , _ _ d _ @ , , H @ @ @ W h 8 @ : @ _ , , , , s , _ d h @.Q e 7 + 2 . | e x } h M d } M d _ d d } _ _ M _ d >.e }.j  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .].Z 5 f c L L c f  ._.f c t ]._.5 5 _.t  .f +.5 L Z c 5 5 f m m T ].5 m t 5 5 > f f > _.5 m m   +.^ 5   L > t   J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m e 2 ' j i j * e e e e 2 j ^ z J '  . . . . . . . .' G e e e e e e e e e e e e e e 7    . .' u U e e e e e e e e e e e e e e e e e e e e e e e e e e * ' ]. . . . . . . . . . . . . . . .  > z e e e e e e e e e e e e e e e e e e e e e e e e e e e ~.k j & e e e e e e e e e e e 3 '  . . . . . .' G e 3 j ^ z e e e e e e e e e e e e e $ y [ : @ b : : b 8 l , '.D _ &., W &., h h h h @ h h @ A 8 % /.e q 7.   . . . . .' ^ | e x % b K , @ @ @ @ , , , _ h = , &.&.@ h P } M M M } } M } _ # % } } } M v ) ) ) } } ) ) ) } } o e U u 2 + q G {.e X } # # # ) ) # # ) # # # # # # % e (.u '  . . . . . . . . . . . . . . . . . .].]. . . . . .].]. . . . . . .].]. .c c  .].].].]. .]. . .c c  .]. .].].].].]. .c c ].c c c  .c c  .c c c ].].c ].].c c  . .c ]. .].c c ' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.~.O k k O ~.e e e e 2 j ^ z J '  . . . . . . . .  5 - e e e e e e e e e e e e e Y ^    . .' 3 e e e e e e e e e e e e e e e e e e e e e e e e e 7 +.c  . . . . . . . . . . . . . . . . .' + U e e e e e e e e e e e e e e e e e e e e e e e e e U &   ' & e e e e e e e e e e e 3 '  . . . . . .  m z - ' ' q e e e e e e e e e e e e e X [ *.Q : K , , h , s _ w h M d g , d _ _ _ _ _ _ _ , : ) ;.e ~.[.     . . . . . . .' !.q ^.e ;.) : , _ _ &.g g g M h s M d d _ s B } g g g M M s g C x # g g &.&.} } } M } } ) } v g v ~ e }.3 * & q j . r e % ) ) # ) ) # ) } ) # # # # } } X e 7     c  .].c c  . . . .c c ].].c c   > u u ^   c c c ^ . c ].c c ].c  .c f u ^ ].  ^ 5 c c   c c > ^   c c c  .c   c c c   ].c ' u m     ].  c c ].c   c c ].].c c   c c c  .  ' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e 2 j ^ z J '  . . . . . . . . .' O e e e e e e e e e e e e e e * j c c   ' 4 e e e e e e e e e e e e e e e e e e e e e e e | m    . . . . . . . . . . . . . . . . . . .j & Y e e e e e e e e e e e e e e e e e e e e e e e z + j  .' & e e e e e e e e e e e 3 '  . . . . . .].' / ~.. j G ~.e e e e e e e e e e e e x B < e ;.N b A l W b _ ( n d &.&.h _ , @ @ , , H 8 *.Q (.e z G ' c  . . . . . . . . .c   k z e /.Q v h K h , , , M W [ g g _ d @ = ) M d , h v o ~ e Q , M M s s } } M A , , d M d ] % e - u 7 . 7 ^ c j }.e >.) } ) d , } ) } : d M ) ) _ d v ,.e 3 5 >  .m . ^ f ].].f . ^ m > ^ u 5 t . & > ^ u ^   > k   L u . t . c ^ L + +   L k m ].. G u   3 4 t . + u c u G > . u + c u + 4 . + & 5 & . u ].u G . u m m . 5 & . ^ ^ _.u   q e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e 2 i m z 4 i j    . . . . . . .' u U e e e e e e e e e e e e e - ^ 5 m m 5 j 4 ~.e e e e e e e e e e e e e e e e e e e e | 5 '  . . . . . . . . . . . . . . . . . . . .].' G U e e e e e e e e e e e e e e e e e e e e e - . '  . .' & e e e e e e e e e e e 3 '  . . .].' j j i u e J i j - e e e e e e e e e e e e e C I e e ^.! # B @.l h 1 = d &., h , h h : H 8 # Q /.e /./ > j ]. . . . . . . . . . . .c ' > / Y e ^.! o @ H h h w _ @ @ : b , h '.} d , ) % ~ e e /.$ # # o # ) I o o o ) # I # o o x e 2./ k O 4 '  .c !.| e X o o # # *.# % o # # o o o o *.! e z u . . . u ^  .  c L + + + + G > +   u & ^ k . G m Z G   5 + k u G ' G > . u   ].& > > G k ^   G G t 3 G + 5 + k 3 k & G & & . J & + + & 3 & & & G G 3 k ^ ^ & & 3 3 4 u +.k + 7 e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m ~.e e e e e e e e e e z 2 7 Y - 2 7 &    . . . . . . .  | e e e e e e e e e e e e e e r r r U - ' ' k r e e e e e e e e e e e e e e e e e e 2 L    . . . . . . . . . . . . . . . . . . . . . . .' + z e e e e e e e e e e e e e e e e e e Y O 5 '  . . .' & e e e e e e e e e e e 3 '  . .c 5 7 - - - - e r - - U e e e e e e e e e e e e e ^.R e ~.U e /.>.! $ I $.$.d g g &.d } v # X >./.e ~.{.u '    . . . . . . . . . . . . . . .c ' u {.U e ^.,.;.o I v N d &.h W g } F # Q >.(.e e e e e ..............................^.e {.& q G 7 T c  . .' + Y e /.............................^.e e 7 . > ^ G + L & ^ L G G k k + 5 & 5 ^ u k k > k > > 4 f + & * G & ^ k > + k _.  4 u t G 4 G j u & G 3 5   . 3 k / 4 > u J k t J 4 + u 4 4 3 k J G . 4 3 u 4 3 4 4 k & G & * & | e e ",
-"e e -  .]. . . . . . . . . . . . . . . .c m r U U U U U U U U U U r z z ~.r z r 4    . . . . . . .' k Y U U U U U U U U U U U U e r q 2 2 O   ].' . 7 e e e e e e e e e e e e e e e z k      . . . . . . . . . . . . ._.  ' ' ' ' ' ' ' ' ' ' i <.O U e e e e e e e e e e e e e e e | + '    . . . .  & Y U U U U U U U U U U k '  . .c m | z z z z z e r z z U U U U U U U U U U U U U U U z 7 ^ O z e e e e e >.~ ~ ~ ~ >.^.e e e e z O u ' ' ]. . . . . . . . . . . . . . . . . .].' ' ^ [.- ~.e e e e ,.~ ~ ;.~ >./.e e e e r {.7 - - - z z z z z z z z z z z z z z z z - > & ^ G u    . . . .' [.z z z z z z z z z z z z z z z z z - z - + Z u G > ].+ > _.. . . G k G 5 ^ & G ^ 3 & . ' . & > 5 G k m > 3 4 ^ + G 5 5 & + ^ G k m c c u > u f ].c + & G u L ^ ^ . k & 5 + k m u . . ^ . 4 4 m G + . t 3 +   + + u ' q e e ",
-"e e -  .]. . . . . . . . . . . . . . . . .f . . . . . . . . . . . ^ 5 . z * L > L  . . . . . . . .].t . . . . . . . . . . . . ^ 7 U L i i j  . . .  T G | U e e e e e e e e e ~.z J > '  . . . . . . . . . . . . . . .' k | 7 7 7 7 7 7 7 7 7 7 7 7 z e e e e e e e e e e e e U 7 G :.'  . . . . . .].5 . . . . . . . . . . . 5 ]. . . ._.m m m m L + e / f > . . . . . . . . . . . . . . ^ m m   ' m u }.7 z z z z z r z z z z 7 }.u m j    . . . . . . . . . . . . . . . . . . . . . . .c j L . 3 {.- z z z z r z z z z | O G >   L m m m m m m m m m m m m m m m m > > > m c '        . . . . . .|.> > m m m m m m m m > > > > > > > m m > f c     c  .  c  .c c ' u ^ j ].c ' ' m +     _.  ' c ].  '   ^ 4 u  .' ' ].].'   c ' ' ]. . .  c    . . .  '     ].c c c ' ' ].  ' ].      c   <.G L '   c ].'   _.      ' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . . . .                        ' > z J j   c  . . . . . . . . .c                         i G e * j  . . . . . .c ' ' u 4 q | - - - - 2 * G t '    . . . . . . . . . . . . . . . .j 4 z - - - - - - - - - - - - - - - - - - - - - - | q 4 . ' ' c  . . . . . . . .c                       c  . . . . .c       ' T - z :.                                  c  . .  ' ' '                     ' ' '    . . . . . . . . . . . . . . . . . . . . . . . . . . .c ' ' '                     ' ' '   c c                                          . . . . . . . . . . .c                                         ]. . . . . . . . . . . .].]. . . . . . .c  . . . . . . . . . . .f c ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .c  . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  > - 3 '  . . . . . . . . . . . . . . . . . . . . . . . .c t - q   ]. . . . . . . . .  j ' t 5 5 5 5   j ' ]. . . . . . . . . . . . . . . . . . .].t 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 t ' j    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .j J e k '  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e -  .]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ._.m L ]. . . . . . . . . . . . . . . . . . . . . . . . . .c >  . . . . . . . . . . . . .].c c c c c c  . . . . . . . . . . . . . . . . . . . . . .].c c c c c c c c c c c c c c c c c c c c c c c c ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .c > J +    . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .' J e e ",
-"e e - ].c ].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].c c ].].].].].].].].].].].].].].].].].].].].].].].].].].].  ].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].  j    .].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].' J e e ",
-"e e -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   j J e e ",
-"e e r 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 q - e e ",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ,.$ ! e e e e e e e e e e e e e e e e e e e e e ~ 0 ! e e e e e e e e e e e e e e e e e e e e e e e e /.$ $ e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e Q I ;.e e e e e e e >.I ;.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e e ^.^.e e e e e e e e e e e e e R ^.e e e e e e e e e e e e /./.e e e e e e e e e e e e e /.e e e e e e e e e e e e e e e e e e e e e e e /.e e e e e e e e e e e e ^./.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e R e e e e e e e e e e e ^.(.e e e e e e e e e e e e e e e e e e e e e ~ p o e e e e e e e e e e e e e e e e e e e e e X { % e e ^.e e e e e e e e e e R ^.e e e e e e e e e (.9 9 e /.e e e e e e e e e e e e e R ^.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e % { { C e e e e e e e ;.{ C e e e e e e e e e e ^.e e e e e e e e e e ^.^.e e /.e e e e e e e e e e e e e e e e e e e e e e e e e e e e R ^.e e e e e e e e e e e e e ^.e e e e e e e e e e /.e e e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e R o y 9 % ^.e e e e e e e e % < E y < X e e e e e e e e e /.o y 9 % ^.e e e e e e e e $ 0 < y % e e e e e e e e e e e e e e e e e e e e (.I y 0 >.e e e e e e e e e % 9 y $ R e e e e e e e e ! < ~ e o 0 /.e e e e e e e % < < X e e e e e e e e ;.0 ; 0 ~ e e e e e e e e X < ; E >.e e e e e e e e e e e e e e e e e e e >.< C e e e e e e e (.E o e ~ < ! e e e e e e e ;.{ C ~ < o e e e e e e e e ,.a ; < ! e e e e e e e e R < p E ; E >.e e e e e e e e e ,.I ; < ! e e e e e e e e $ < >.C 9 X e e e e e e e e e e e e e e e e e e % p { 0 (.e e e e e e e ~ 9 ! e e e e e e e >.E < E e e e e e e e (.I 0 < 9 % a ; 0 ~ e e e e e e e (.a I e I 0 e o 0 ,.e e e e e e e R $ y < a 0 x e e e e e e e ~ 0 0 I e e e e e e e e ,.I ; < ! e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e $ { < 9 { o e e e e e e e e $ { p 0 p p ;.e e e e e e e e $ { < < { $ e e e e e e e e 0 { 9 y { C e e e e e e e e e e e e e e e e e e e $ { < ; $ e e e e e e e e % { 9 < { I e e e e e e e e % { ;.e a { /.e e e e e e e a { ; ;.e e e e e e e ~ p p < ; ! e e e e e e e ;.p ; E { 9 x e e e e e e e e e e e e e e e e e e ;.{ $ e e e e e e e x p a e X { % e e e e e e e ;.{ o < { ;.e e e e e e e R < { 0 ; { ! e e e e e e e R < { y < { < (.e e e e e e e R < { 0 ; { ! e e e e e e e X { 9 ; < (.e e e e e e e e e e e e e e e e e e o { { $ e e e e e e e e ;.{ C e e e e e e e ~ p { a e e e e e e e x 9 { < y { { < { 9 /.e e e e e e e E p ! ; { ! < 9 /.e e e e e e e I { < 9 { { x e e e e e e e ! { { $ e e e e e e e (.< { 0 y { ! e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e R { E ^.(.< p (.e e e e e e e I { Q e X { $ e e e e e e e ,.p { E 0 { ; ,.e e e e e e e < p ,.,.p a e e e e e e e e e e e e e e e e e e e o { < I ~ e e e e e e e (.y 9 (.e a { ~ e e e e e e e % { ;.e a { /.e e e e e e e a p ~ e e e e e e e e $ { ;.e x e e e e e e e e I { < a y { % e e e e e e e e e e e e e e e e e e ;.{ $ e e e e e e e x p a e X { % e e e e e e e ;.{ ; { C e e e e e e e e Q { ; a < { 0 e e e e e e e R < p >.e o { Q e e e e e e e ! { % e ~ p 0 e e e e e e e e o { p ;.e e e e e e e e e e e e e e e e e e e R 0 p R e e e e e e e e ;.{ C e e e e e e e ~ { a e e e e e e e e x y < e ! { I e o { X e e e e e e e % { < p { < { $ e e e e e e e >.p E ^./.0 { x e e e e e e e X { $ e e e e e e e e ! { ; a < { 0 e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e R { $ e e I { ,.e e e e e e e I { ;.e (.{ I e e e e e e e >.{ { y y ; 9 ~ e e e e e e e < y (./.; E e e e e e e e e e e e e e e e e e e e /.% < { E e e e e e e e ,.p E e e o { ;.e e e e e e e % { ;.e a { /.e e e e e e e a p (.e e e e e e e e a { (.e e e e e e e e e e E { ; ; y ; o e e e e e e e e e e e e e e e e e e ;.{ $ e e e e e e e x p a e X { % e e e e e e e ;.{ { { Q e e e e e e e e % { p ; y ; 0 e e e e e e e R 9 9 e e Q { C e e e e e e e C { X e (.9 9 e e e e e e e e C { ; x e e e e e e e e e e e e e e e e e e e e E p e e e e e e e e e ;.{ C e e e e e e e ~ { $ e e e e e e e e x ; 0 e ;.{ o e C { ! e e e e e e e >.p { p ; { { X e e e e e e e ~ { $ e e I { x e e e e e e e X { % e e e e e e e e C { p y y ; E /.e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e ^.< { % o { E e e e e e e e e $ { < Q 0 { C e e e e e e e /.< { $ I $ ,.^.e e e e e e e < y (.R ; E e e e e e e e e e e e e e e e e e e e a < % y y R e e e e e e e a { o C p 9 (.e e e e e e e ! { E C ; p /.e e e e e e e a p x e e e e e e e e Q { 0 C $ >.e e e e e e e C { < o E ;.R e e e e e e e e e e e e e e e e e e ;.{ $ e e e e e e e e 9 p C E { % e e e e e e e ;.{ $ 9 p ~ e e e e e e e >.p ; o E C x e e e e e e e R < { I Q y p ~ e e e e e e e >.p 9 Q I { o e e e e e e e ,.y { { I e e e e e e e e e e e e e e e e e e e e 0 p e e e e e e e e e ;.{ C e e e e e e e ~ { $ e e e e e e e e x ; 0 e ;.{ o e C { ! e e e e e e e e < { E $ { ; R e e e e e e e /.9 { % o p { x e e e e e e e X { % e e e e e e e e >.p ; o a % (.e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e ~ 9 { { < >.e e e e e e e e $ { p { { $ /.e e e e e e e e ~ < { { 0 R e e e e e e e e < y (.R ; E e e e e e e e e e e e e e e e e e e e Q p { { o e e e e e e e e ,.< { { 9 ;.e e e e e e e e ^.$ { { p p /.e e e e e e e a p x e e e e e e e e ^.$ { { { Q e e e e e e e /.$ { { p X e e e e e e e e e e e e e e e e e e e ;.{ $ e e e e e e e e X ; { p { % e e e e e e e ;.{ C ;.{ 9 x e e e e e e e Q p { { $ e e e e e e e e R < { p { p C e e e e e e e e e Q p { { I R e e e e e e e I { ! a { ! e e e e e e e e e e e e e e e e e e e 0 p e e e e e e e e e ;.{ C e e e e e e e ~ { $ e e e e e e e e x ; 0 e ;.{ o e C { ! e e e e e e e e o { C ! { a e e e e e e e e e ;.y { { p { x e e e e e e e ! { % e e e e e e e e e Q ; { { $ e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e (.X ;.R e e e e e e e e e I { X X ~ e e e e e e e e e e e (.X ;.R e e e e e e e e e x ,.e e ,.x e e e e e e e e e e e e e e e e e e e e ,.! ~ e e e e e e e e e e /.;.X (.e e e e e e e e e e ^.;.;.,.,.e e e e e e e e x ,.^.e e e e e e e e e e >.! >.e e e e e e e e e e >.! ,.e e e e e e e e e e e e e e e e e e e e C { o e e e e e e e e e ,.X >.>.(.e e e e e e e /.>.(.e x >.R e e e e e e e e x ! ~ ^.e e e e e e e e e ,.,.>.X >.e e e e e e e e e e e x ! ~ ^.e e e e e e e e >.>.e (.>.(.e e e e e e e e e e e e e e e e e e e x ,.e e e e e e e e e /.>.(.e e e e e e e ^.>.x e e e e e e e e ^.,.x e /.>.(.e (.>.R e e e e e e e e R >./.^.>.(.e e e e e e e e e e (.! ~ x >.^.e e e e e e e /.>.(.e e e e e e e e e e ,.X ~ ^.e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e I { ~ e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e /.p p ~ e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e X C (.e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ^.C ~ e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e ",
-"e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e e "};
diff --git a/rbutil/rbutil-rc.rc b/rbutil/rbutil-rc.rc
deleted file mode 100644
index 3202cef..0000000
--- a/rbutil/rbutil-rc.rc
+++ /dev/null
@@ -1,27 +0,0 @@
-#define RBUTIL 1
-#include <wx/msw/wx.rc>
-RBUTIL VERSIONINFO
-FILEVERSION 0,3,2,6
-PRODUCTVERSION 0,3,2,6
-FILEOS 0x00000004
-FILETYPE 0x00000001
-BEGIN
-  BLOCK "StringFileInfo"
-  BEGIN
-    BLOCK "FFFF0000"
-    BEGIN
-      VALUE "FileVersion", "0.3.2.6\0"
-      VALUE "ProductVersion", "0.3.2.6\0"
-      VALUE "CompanyName", "Rockbox Team\0"
-      VALUE "FileDescription", "Rockbox Utility\0"
-      VALUE "InternalName", "rbutil\0"
-      VALUE "LegalCopyright", "(C) 2005 - 2007 Rockbox Team\0"
-      VALUE "ProductName", "Rockbox Utility\0"
-    END
-  END
-  BLOCK "VarFileInfo"
-  BEGIN
-    VALUE "Translation", 0xFFFF, 0x0000
-  END
-END
-RBUTIL_ICON ICON archos.ico
diff --git a/rbutil/rbutil.cbp b/rbutil/rbutil.cbp
deleted file mode 100644
index 2db68ce..0000000
--- a/rbutil/rbutil.cbp
+++ /dev/null
@@ -1,196 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
-<CodeBlocks_project_file>
-	<FileVersion major="1" minor="6" />
-	<Project>
-		<Option title="rbutil" />
-		<Option pch_mode="0" />
-		<Option compiler="gcc" />
-		<MakeCommands>
-			<Build command="$make -f $makefile all" />
-			<CompileFile command="$make -f $makefile $file" />
-			<Clean command="$make -f $makefile clean" />
-			<DistClean command="$make -f $makefile distclean" />
-		</MakeCommands>
-		<Build>
-			<Target title="Release">
-				<Option output="rbutil.exe" prefix_auto="0" extension_auto="0" />
-				<Option type="0" />
-				<Option compiler="gcc" />
-				<Option projectResourceIncludeDirsRelation="0" />
-				<ExtraCommands>
-					<Add before="cmd /c cd icons &amp;&amp; bin2c.exe *.png" />
-					<Add after="upx --best --compress-icons=0  rbutil.exe" />
-				</ExtraCommands>
-				<MakeCommands>
-					<Build command="$make -f $makefile all" />
-					<CompileFile command="$make -f $makefile $file" />
-					<Clean command="$make -f $makefile clean" />
-					<DistClean command="$make -f $makefile distclean" />
-				</MakeCommands>
-			</Target>
-			<Target title="Debug">
-				<Option output="rbutil.exe" prefix_auto="0" extension_auto="0" />
-				<Option type="0" />
-				<Option compiler="gcc" />
-				<Compiler>
-					<Add option="-g" />
-				</Compiler>
-				<MakeCommands>
-					<Build command="$make -f $makefile all" />
-					<CompileFile command="$make -f $makefile all" />
-					<Clean command="$make -f $makefile clean" />
-					<DistClean command="$make -f $makefile distclean" />
-				</MakeCommands>
-			</Target>
-			<Environment>
-				<Variable name="WX_CFG" value="" />
-			</Environment>
-		</Build>
-		<VirtualTargets>
-			<Add alias="All" targets="default;" />
-		</VirtualTargets>
-		<Compiler>
-			<Add option="-W" />
-			<Add option="-g" />
-			<Add option="-pipe" />
-			<Add option="-mthreads" />
-			<Add option="-Winvalid-pch" />
-			<Add option='-include &quot;wx_pch.h&quot;' />
-			<Add option="-D__GNUWIN32__" />
-			<Add option="-D__WXMSW__" />
-			<Add option="-DUSE_PCH" />
-			<Add option="-DRBUTIL" />
-			<Add directory="$(#WX.include)" />
-			<Add directory="$(#WX.lib)\gcc_lib$(WX_CFG)\msw" />
-			<Add directory="$(#WX)\contrib\include" />
-			<Add directory=".\" />
-		</Compiler>
-		<ResourceCompiler>
-			<Add directory="$(#WX.include)" />
-		</ResourceCompiler>
-		<Linker>
-			<Add library="wxmsw28" />
-			<Add library="winspool" />
-			<Add library="winmm" />
-			<Add library="shell32" />
-			<Add library="comctl32" />
-			<Add library="ctl3d32" />
-			<Add library="odbc32" />
-			<Add library="advapi32" />
-			<Add library="wsock32" />
-			<Add library="opengl32" />
-			<Add library="glu32" />
-			<Add library="ole32" />
-			<Add library="oleaut32" />
-			<Add library="uuid" />
-			<Add library="libwxzlib" />
-			<Add library="libwxregex" />
-			<Add library="libwxpng" />
-			<Add library="libwxjpeg" />
-			<Add library="libwxtiff" />
-			<Add directory="$(#WX.lib)\gcc_lib$(WX_CFG)" />
-			<Add directory="$(#WX.lib)" />
-			<Add directory=".\" />
-		</Linker>
-		<Unit filename="Makefile" />
-		<Unit filename="archos.ico" />
-		<Unit filename="autodetection.cpp" />
-		<Unit filename="autodetection.h" />
-		<Unit filename="bootloaders.cpp" />
-		<Unit filename="bootloaders.h" />
-		<Unit filename="copying.txt" />
-		<Unit filename="credits.h" />
-		<Unit filename="fonts_3d.xpm" />
-		<Unit filename="h100sums.h" />
-		<Unit filename="h120sums.h" />
-		<Unit filename="h300sums.h" />
-		<Unit filename="icons\bin2c.c">
-			<Option compilerVar="CC" />
-			<Option compile="0" />
-			<Option link="0" />
-		</Unit>
-		<Unit filename="icons\bootloader_btn.cpp" />
-		<Unit filename="icons\bootloader_btn.h" />
-		<Unit filename="icons\bootloader_btn.png" />
-		<Unit filename="icons\talkfile_btn.cpp" />
-		<Unit filename="icons\talkfile_btn.h" />
-		<Unit filename="icons\talkfile_btn.png" />
-		<Unit filename="icons\doom_btn.cpp" />
-		<Unit filename="icons\doom_btn.h" />
-		<Unit filename="icons\doom_btn.png" />
-		<Unit filename="icons\font_btn.cpp" />
-		<Unit filename="icons\font_btn.h" />
-		<Unit filename="icons\font_btn.png" />
-		<Unit filename="icons\rbinstall_btn.cpp" />
-		<Unit filename="icons\rbinstall_btn.h" />
-		<Unit filename="icons\rbinstall_btn.png" />
-		<Unit filename="icons\rembootloader_btn.cpp" />
-		<Unit filename="icons\rembootloader_btn.h" />
-		<Unit filename="icons\rembootloader_btn.png" />
-		<Unit filename="icons\remrb_btn.cpp" />
-		<Unit filename="icons\remrb_btn.h" />
-		<Unit filename="icons\remrb_btn.png" />
-		<Unit filename="icons\themes_btn.cpp" />
-		<Unit filename="icons\themes_btn.h" />
-		<Unit filename="icons\themes_btn.png" />
-		<Unit filename="install_3d.xpm" />
-		<Unit filename="install_dialogs.cpp" />
-		<Unit filename="install_dialogs.h" />
-		<Unit filename="installlog.cpp" />
-		<Unit filename="installlog.h" />
-		<Unit filename="ipodpatcher\ipodio-win32.c">
-			<Option compilerVar="CC" />
-			<Option compiler="gcc" use="1" buildCommand="mingw32-gcc.exe -W -g -pipe -mthreads -Winvalid-pch  -D__GNUWIN32__ -D__WXMSW__ -DUSE_PCH -g   -I.\ -IC:\Dev-Cpp\include  -c $file -o .objs\ipodpatcher\ipodio-win32.o" />
-		</Unit>
-		<Unit filename="ipodpatcher\ipodio.h" />
-		<Unit filename="ipodpatcher\ipodpatcher.c">
-			<Option compilerVar="CC" />
-			<Option compiler="gcc" use="1" buildCommand="mingw32-gcc.exe -W -g -pipe -mthreads -Winvalid-pch  -D__GNUWIN32__ -D__WXMSW__ -DUSE_PCH -g  -I.\ -IC:\Dev-Cpp\include  -c $file -o .objs\ipodpatcher\ipodpatcher.o\n" />
-		</Unit>
-		<Unit filename="ipodpatcher\ipodpatcher.h" />
-		<Unit filename="ipodpatcher\parttypes.h" />
-		<Unit filename="irivertools.cpp" />
-		<Unit filename="irivertools.h" />
-		<Unit filename="md5sum.cpp" />
-		<Unit filename="md5sum.h" />
-		<Unit filename="rblogo.xpm" />
-		<Unit filename="rbutil-rc.rc">
-			<Option compilerVar="WINDRES" />
-		</Unit>
-		<Unit filename="rbutil.cpp" />
-		<Unit filename="rbutil.h" />
-		<Unit filename="rbutil.ini" />
-		<Unit filename="rbutil.iss" />
-		<Unit filename="rbutilApp.cpp" />
-		<Unit filename="rbutilApp.h" />
-		<Unit filename="rbutilCtrls.cpp" />
-		<Unit filename="rbutilCtrls.h" />
-		<Unit filename="rbutilFrm.cpp" />
-		<Unit filename="rbutilFrm.h" />
-		<Unit filename="rbutilFrm_XPM.xpm" />
-		<Unit filename="sansapatcher\parttypes.h" />
-		<Unit filename="sansapatcher\sansaio-win32.c">
-			<Option compilerVar="CC" />
-			<Option compiler="gcc" use="1" buildCommand="mingw32-gcc.exe -W -g -pipe -mthreads -Winvalid-pch  -D__GNUWIN32__ -D__WXMSW__ -DUSE_PCH -DRBUTIL -g   -I.\ -IC:\Dev-Cpp\include  -c $file -o .objs\sansapatcher\sansaio-win32.o" />
-		</Unit>
-		<Unit filename="sansapatcher\sansaio.h" />
-		<Unit filename="sansapatcher\sansapatcher.c">
-			<Option compilerVar="CC" />
-			<Option compiler="gcc" use="1" buildCommand="mingw32-gcc.exe -W -g -pipe -mthreads -Winvalid-pch  -D__GNUWIN32__ -D__WXMSW__ -DUSE_PCH -g  -DRBUTIL -I.\ -IC:\Dev-Cpp\include  -c $file -o .objs\sansapatcher\sansapatcher.o" />
-		</Unit>
-		<Unit filename="sansapatcher\sansapatcher.h" />
-		<Unit filename="themes_3d.xpm" />
-		<Unit filename="tools2_3d.xpm" />
-		<Unit filename="tts.cpp">
-			<Option compiler="gcc" use="0" buildCommand="gcc -Wall -g tts.cpp -I$FLITEDIR/include -L$FLITEDIR/lib \n    -lflite_cmu_us_kal -lflite_usenglish -lflite_cmulex -lflite -lm" />
-		</Unit>
-		<Unit filename="tts.h" />
-		<Unit filename="uninstall_3d.xpm" />
-		<Unit filename="untools2_3d.xpm" />
-		<Unit filename="wizard.xpm" />
-		<Unit filename="wx_pch.h" />
-		<Extensions>
-			<code_completion />
-		</Extensions>
-	</Project>
-</CodeBlocks_project_file>
diff --git a/rbutil/rbutil.cpp b/rbutil/rbutil.cpp
deleted file mode 100644
index 058ca10..0000000
--- a/rbutil/rbutil.cpp
+++ /dev/null
@@ -1,783 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: rbutil.cpp
- *
- * Copyright (C) 2005 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "rbutil.h"
-#include "installlog.h"
-
-/* this function gets a Bitmap from embedded memory */
-wxBitmap wxGetBitmapFromMemory(const unsigned char *data,int length)
-{
-    wxMemoryInputStream istream( data,length);
-    return wxBitmap(wxImage(istream, wxBITMAP_TYPE_ANY, -1), -1);
-}
-
-// This class allows us to return directories as well as files to
-// wxDir::Traverse
-class wxDirTraverserIncludeDirs : public wxDirTraverser
-{
-public:
-    wxDirTraverserIncludeDirs(wxArrayString& files) : m_files(files) { }
-
-    virtual wxDirTraverseResult OnFile(const wxString& filename)
-    {
-        m_files.Add(filename);
-        return wxDIR_CONTINUE;
-    }
-
-    virtual wxDirTraverseResult OnDir(const wxString& dirname)
-    {
-        m_files.Add(dirname);
-        return wxDIR_CONTINUE;
-    }
-
-private:
-    wxArrayString& m_files;
-};
-
-wxDEFINE_SCOPED_PTR_TYPE(wxZipEntry);
-
-const wxChar* _rootmatch[] = {
-    wxT("rockbox.*"),
-    wxT("ajbrec.ajz"),
-    wxT("archos.mod"),
-    wxT(".scrobbler.*"),
-    wxT("battery_bench.txt"),
-    wxT("battery.dummy"),
-};
-const wxArrayString* rootmatch = new wxArrayString(
-    (size_t) (sizeof(_rootmatch) / sizeof(wxChar*)), _rootmatch);
-
-bool InstallTheme(wxString Themesrc)
-{
-    wxString dest,src,err;
-
-    int pos = Themesrc.Find('/',true);
-    wxString themename = Themesrc.SubString(pos+1,Themesrc.Length());
-
-    src = gv->themes_url + wxT("/") + Themesrc;
-    dest = gv->stdpaths->GetUserDataDir()
-           + wxT("" PATH_SEP "download" PATH_SEP) + themename;
-    if( DownloadURL(src, dest) )
-    {
-        wxRemoveFile(dest);
-        ERR_DIALOG(wxT("Unable to download ") + src, wxT("Install Theme"));
-        return false;
-    }
-
-    if(!checkZip(dest))
-    {
-        ERR_DIALOG(wxT("The Zip ") + dest
-                   + wxT(" does not contain the correct dir structure"),
-                   wxT("Install Theme"));
-        return false;
-    }
-
-    if(UnzipFile(dest,gv->curdestdir, true))
-    {
-        ERR_DIALOG(wxT("Unable to unzip ") + dest + wxT(" to ")
-                   + gv->curdestdir, wxT("Install Theme"));
-        return false;
-    }
-
-    return true;
-}
-
-bool checkZip(wxString zipname)
-{
-
-    wxZipEntryPtr       entry;
-
-    wxFFileInputStream* in_file = new wxFFileInputStream(zipname);
-    wxZipInputStream* in_zip = new wxZipInputStream(*in_file);
-
-    entry.reset(in_zip->GetNextEntry());
-
-    wxString name = entry->GetName();
-    if(entry->IsDir())
-    {
-       if( 0==name.Cmp(wxT(".rockbox"))
-        || 0==name.Cmp(wxT(".rockbox\\"))
-        || 0==name.Cmp(wxT(".rockbox/")) )
-           return true;
-    }
-    else
-    {
-      if( name.StartsWith(wxT(".rockbox/"))
-       || name.StartsWith(wxT(".rockbox\\")) )
-           return true;
-    }
-
-    return false;
-
-}
-
-int DownloadURL(wxString src, wxString dest)
-{
-    int input, errnum = 0, success = false;
-    wxString buf, errstr;
-    wxLogVerbose(wxT("=== begin DownloadURL(%s,%s)"), src.c_str(),
-        dest.c_str());
-
-    buf = wxT("Fetching ") + src;
-    wxProgressDialog* progress = new wxProgressDialog(wxT("Downloading"),
-                buf, 100, NULL, wxPD_APP_MODAL |
-                wxPD_AUTO_HIDE | wxPD_SMOOTH | wxPD_ELAPSED_TIME |
-                wxPD_REMAINING_TIME | wxPD_CAN_ABORT);
-    progress->SetSize(500,200);
-    progress->Update(0);
-
-
-    input = true;
-    wxURL* in_http = new wxURL(src);
-
-    if(gv->proxy_url != wxT(""))
-        in_http->SetProxy(gv->proxy_url);
-
-    if (in_http->GetError() == wxURL_NOERR)
-    {
-
-    wxFFileOutputStream* os = new wxFFileOutputStream(dest);
-    input = false;
-    if (os->IsOk())
-    {
-        wxInputStream* is = in_http->GetInputStream();
-        input = true;
-        if (is)
-        {
-            size_t filesize = is->GetSize();
-            input = true;
-            if (is->IsOk())
-            {
-                char buffer[FILE_BUFFER_SIZE + 1];
-                size_t current = 0;
-
-                while (! is->Eof())
-                {
-                    is->Read(buffer, FILE_BUFFER_SIZE);
-                    input = true;
-                    if (is->LastRead() )
-                    {
-                        os->Write(buffer, is->LastRead());
-                        input = false;
-                        if (os->IsOk())
-                        {
-                            current += os->LastWrite();
-                            if (!progress->Update(current * 100 / filesize))
-                            {
-                                errstr = wxT("Download aborted by user");
-                                errnum = 1000;
-                                break;
-                            }
-
-                        } else
-                        {
-                            errnum = os->GetLastError();
-                            errstr = wxT("Can't write to output stream (")
-                                     + stream_err_str(errnum) + wxT(")");
-
-                            break;
-                        }
-
-                    } else
-                    {
-                        errnum = is->GetLastError();
-                        if (errnum == wxSTREAM_EOF)
-                        {
-                            errnum = 0;
-                            break;
-                        }
-                        errstr = wxT("Can't read from input stream (")
-                                 + stream_err_str(errnum) + wxT(")");
-                    }
-                }
-
-                os->Close();
-                if (! errnum)
-                {
-                    errnum = os->GetLastError();
-                    errstr = wxT("Can't close output file (")
-                             + stream_err_str(errnum) + wxT(")");
-
-                    input = false;
-                }
-
-                if (! errnum) success = true;
-
-                } else
-                {
-                    errnum = is->GetLastError();
-                    errstr = wxT("Can't get input stream size (")
-                             + stream_err_str(errnum) + wxT(")");
-                }
-            } else
-            {
-                errnum = in_http->GetError();
-                errstr.Printf(wxT("Can't get input stream (%d)"), errnum);
-            }
-            delete is;
-        } else
-        {
-            errnum = os->GetLastError();
-            errstr = wxT("Can't create output stream (")
-                     + stream_err_str(errnum) + wxT(")");
-        }
-        delete os;
-    } else
-    {
-        errstr.Printf(wxT("Can't open URL %s (%d)"), src.c_str(),
-            in_http->GetError() );
-        errnum = 100;
-    }
-
-    delete in_http;
-    delete progress;
-
-    if (!success)
-    {
-        if (errnum == 0) errnum = 999;
-        if (input)
-        {
-            ERR_DIALOG(errstr + wxT(" reading\n") + src, wxT("Download URL"));
-        } else
-        {
-            ERR_DIALOG(errstr + wxT("writing to download\n/") + dest,
-                       wxT("Download URL"));
-        }
-
-    }
-
-    wxLogVerbose(wxT("=== end DownloadURL"));
-    return errnum;
-}
-
-int UnzipFile(wxString src, wxString destdir, bool isInstall)
-{
-
-    wxZipEntryPtr       entry;
-    wxString            in_str, progress_msg, buf,subdir;
-    int                 errnum = 0, curfile = 0, totalfiles = 0;
-    InstallLog*         log = NULL;
-
-    wxLogVerbose(wxT("===begin UnzipFile(%s,%s,%i)"),
-               src.c_str(), destdir.c_str(), isInstall);
-
-    wxFFileInputStream* in_file = new wxFFileInputStream(src);
-    wxZipInputStream* in_zip = new wxZipInputStream(*in_file);
-    if (in_file->Ok() )
-    {
-        if (! in_zip->IsOk() )
-        {
-            errnum = in_zip->GetLastError();
-            ERR_DIALOG(wxT("Can't open ZIP stream ") + src
-                       + wxT(" for reading (") + stream_err_str(errnum)
-                       + wxT(")"), wxT("Unzip File") );
-            delete in_zip;
-            delete in_file;
-            return true;
-        }
-
-        totalfiles = in_zip->GetTotalEntries();
-        if (! in_zip->IsOk() )
-        {
-            errnum = in_zip->GetLastError();
-            ERR_DIALOG( wxT("Error Getting total ZIP entries for ")
-                        + src + wxT(" (") + stream_err_str(errnum) + wxT(")"),
-                        wxT("Unzip File") );
-            delete in_zip;
-            delete in_file;
-            return true;
-        }
-    } else
-    {
-        errnum = in_file->GetLastError();
-        ERR_DIALOG(wxT("Can't open ") + src + wxT(" (")
-                   + stream_err_str(errnum) + wxT(")"), wxT("Unzip File") );
-        delete in_zip;
-        delete in_file;
-        return true;
-    }
-
-    wxProgressDialog* progress = new wxProgressDialog(wxT("Unpacking archive"),
-                  wxT("Preparing to unpack the downloaded files to your audio"
-                  "device"), totalfiles, NULL, wxPD_APP_MODAL |
-                  wxPD_AUTO_HIDE | wxPD_SMOOTH | wxPD_ELAPSED_TIME |
-                  wxPD_REMAINING_TIME | wxPD_CAN_ABORT);
-    progress->Update(0);
-
-    // We're not overly worried if the logging fails
-    if (isInstall)
-    {
-        log = new InstallLog(destdir + wxT("" PATH_SEP UNINSTALL_FILE));
-    }
-
-    while (! errnum &&
-           (entry.reset(in_zip->GetNextEntry()), entry.get() != NULL) )
-    {
-
-
-        curfile++;
-        wxString name = entry->GetName();
-        // set progress
-        progress_msg = wxT("Unpacking ") + name;
-        if (! progress->Update(curfile, progress_msg) )
-        {
-            MESG_DIALOG(wxT("Unpacking cancelled by user"));
-            errnum = 1000;
-            break;
-        }
-
-        in_str = destdir + wxT("" PATH_SEP) + name;
-
-        subdir = wxPathOnly(in_str);
-        if(!(wxDirExists(subdir)))
-        {
-            if (! wxMkdir(subdir, 0777) )
-            {
-                buf = wxT("Unable to create directory ") + subdir;
-                errnum = 100;
-                break;
-            }
-            log->WriteFile(subdir, true); // Directory
-        }
-
-        if(entry->IsDir())
-        {
-            if(!wxDirExists(name))
-            {
-                if(!wxMkdir(name, 0777) )
-                {
-                    buf = wxT("Unable to create directory ") + name;
-                    errnum = 100;
-                    break;
-                }
-            }
-            log->WriteFile(name, true); // Directory
-            continue; // this is just a directory, nothing else to do
-        }
-
-        // its a file, copy it
-        wxFFileOutputStream* out = new wxFFileOutputStream(in_str);
-        if (! out->IsOk() )
-        {
-            buf = wxT("Can't open file ") + in_str + wxT(" for writing");
-            delete out;
-            errnum = 100;
-            break;
-        } else if (isInstall)
-        {
-            log->WriteFile(name);
-        }
-
-        in_zip->Read(*out);
-        if (! out->IsOk()) {
-            buf.Printf(wxT("Can't write to %s (%d)"), in_str.c_str(),
-                        errnum = out->GetLastError() );
-        }
-
-        if (!in_zip->IsOk() && ! in_file->GetLastError() == wxSTREAM_EOF)
-        {
-            buf.Printf(wxT("Can't read from %s (%d)"), src.c_str(),
-            errnum = in_file->GetLastError() );
-        }
-
-        if (! out->Close() && errnum == 0)
-        {
-            buf.Printf(wxT("Unable to close %s (%d)"), in_str.c_str(),
-                errnum = out->GetLastError() );
-
-        }
-
-        delete out;
-
-    }
-
-    delete in_zip; delete in_file; delete progress;
-
-    if (errnum)
-    {
-        ERR_DIALOG(buf, wxT("Unzip File"));
-    }
-
-    if (log) delete log;
-    wxLogVerbose(wxT("=== end UnzipFile"));
-    return(errnum);
-
-}
-
-int Uninstall(const wxString dir, bool isFullUninstall) {
-    wxString buf, uninst;
-    unsigned int i;
-    bool errflag = false;
-    InstallLog *log = NULL;
-    wxArrayString* FilesToRemove = NULL;
-
-    wxLogVerbose(wxT("=== begin Uninstall(%s,%i)"), dir.c_str(), isFullUninstall);
-
-    wxProgressDialog* progress = new wxProgressDialog(wxT("Uninstalling"),
-                wxT("Reading uninstall data from jukebox"), 100, NULL,
-                wxPD_APP_MODAL | wxPD_AUTO_HIDE | wxPD_SMOOTH |
-                wxPD_ELAPSED_TIME | wxPD_REMAINING_TIME | wxPD_CAN_ABORT);
-    progress->Update(0);
-
-    if (! isFullUninstall)
-    {
-
-        buf = dir + wxT("" PATH_SEP UNINSTALL_FILE);
-        log = new InstallLog(buf, false); // Don't create the log
-        FilesToRemove = log->GetInstalledFiles();
-        if (log) delete log;
-
-        if (FilesToRemove == NULL || FilesToRemove->GetCount() < 1) {
-            wxLogNull lognull;
-            if ( wxMessageDialog(NULL,
-                wxT("Rockbox Utility can't find any uninstall data on this "
-                "jukebox.\n"
-                "Would you like to attempt a full uninstall?\n"
-                "(WARNING: A full uninstall removes all files in your Rockbox "
-                "folder)"),
-                wxT("Standard uninstall not possible"),
-                wxICON_EXCLAMATION | wxYES_NO | wxNO_DEFAULT).ShowModal()
-                == wxID_YES)
-            {
-                isFullUninstall = true;
-            }
-            else {
-                MESG_DIALOG(wxT("Uninstall cancelled by user"));
-                delete progress;
-                return 1000;
-            }
-        }
-    }
-
-    if (isFullUninstall )
-    {
-        buf = dir + wxT("" PATH_SEP ".rockbox");
-        if (rm_rf(buf) )
-        {
-            WARN_DIALOG(wxT("Unable to completely remove Rockbox directory"),
-            wxT("Full uninstall") );
-            errflag = true;
-        }
-
-        wxDir* root = new wxDir(dir);
-        wxArrayString* special = new wxArrayString();
-        // Search for files for deletion in the jukebox root
-        for (i = 0; i < rootmatch->GetCount(); i++)
-        {
-            const wxString match = (*rootmatch)[i];
-            root->GetAllFiles(dir, special, match, wxDIR_FILES);
-        }
-        delete root;
-
-        // Sort in reverse order so we get directories last
-        special->Sort(true);
-
-        for (i = 0; i < special->GetCount(); i++)
-        {
-
-            if (wxDirExists((*special)[i]) )
-            {
-                // We don't check the return code since we don't want non
-                // empty dirs disappearing.
-                wxRmdir((*special)[i]);
-
-            } else if (wxFileExists((*special)[i]) )
-            {
-                if (! wxRemoveFile((*special)[i]) )
-                {
-                    WARN_DIALOG(wxT("Can't delete ") + (*special)[i],
-                                wxT("Full uninstall"));
-                    errflag = true;
-                }
-            }
-            // Otherwise there isn't anything there, so we don't have to worry.
-        }
-        delete special;
-    } else
-    {
-        wxString instplat, this_path_sep;
-        unsigned int totalfiles, rc;
-        totalfiles = FilesToRemove->GetCount();
-        FilesToRemove->Sort(true); // Reverse alphabetical ie dirs after files
-
-        for (i = 0; i < totalfiles; i++)
-        {
-            // If we're running on the device, let's not delete our own
-            // installation, eh?
-            if (gv->portable &&
-                FilesToRemove->Item(i).StartsWith(PATH_SEP
-                    wxT("RockboxUtility")) )
-            {
-                continue;
-            }
-
-            wxString* buf2 = new wxString;
-            buf = dir + FilesToRemove->Item(i);
-            buf2->Format(wxT("Deleting %s"), buf.c_str());
-
-            if (! progress->Update((i + 1) * 100 / totalfiles, *buf2) )
-            {
-                WARN_DIALOG(wxT("Cancelled by user"), wxT("Normal Uninstall"));
-                delete progress;
-                return true;
-            }
-
-            if (wxDirExists(buf) )
-            {
-                // If we're about to attempt to remove .rockbox. delete
-                // install data first
-                *buf2 = dir + wxT("" PATH_SEP ".rockbox");
-                if ( buf.IsSameAs(buf2->c_str()) )
-                {
-                    *buf2 = dir +wxT("" PATH_SEP UNINSTALL_FILE);
-                    wxRemoveFile(*buf2);
-                }
-
-                if ( (rc = ! wxRmdir(buf)) )
-                {
-                    buf = buf.Format(wxT("Can't remove directory %s"),
-                        buf.c_str());
-                    errflag = true;
-                    WARN_DIALOG(buf.c_str(), wxT("Standard uninstall"));
-                }
-            } else if (wxFileExists(buf) )
-            {
-                if ( (rc = ! wxRemoveFile(buf)) )
-                {
-                    buf = buf.Format(wxT("Can't delete file %s"),
-                        buf.c_str());
-                    errflag = true;
-                    WARN_DIALOG(buf.c_str(), wxT("Standard uninstall"));
-                }
-            } else
-            {
-                errflag = true;
-                buf = buf.Format(wxT("Can't find file or directory %s"),
-                    buf.c_str() );
-                WARN_DIALOG(buf.c_str(), wxT("Standard uninstall") );
-            }
-
-            uninst = uninst.AfterFirst('\n');
-        }
-        if (errflag)
-        {
-            ERR_DIALOG(wxT("Unable to remove some files"),
-                wxT("Standard uninstall"))    ;
-        }
-
-        if (FilesToRemove != NULL) delete FilesToRemove;
-    }
-
-    delete progress;
-    wxLogVerbose(wxT("=== end Uninstall"));
-    return errflag;
-}
-
-
-wxString stream_err_str(int errnum)
-{
-    wxString out;
-
-    switch (errnum) {
-    case wxSTREAM_NO_ERROR:
-        out = wxT("wxSTREAM_NO_ERROR");
-        break;
-    case wxSTREAM_EOF:
-        out = wxT("wxSTREAM_EOF");
-        break;
-    case wxSTREAM_WRITE_ERROR:
-        out = wxT("wxSTREAM_WRITE_ERROR");
-        break;
-    case wxSTREAM_READ_ERROR:
-        out = wxT("wxSTREAM_READ_ERROR");
-        break;
-    default:
-        out = wxT("UNKNOWN");
-        break;
-    }
-    return out;
-}
-
-bool InstallRbutil(wxString dest)
-{
-    wxArrayString   filestocopy;
-    wxString        str, buf, dstr, localpath, destdir;
-    unsigned int    i;
-    wxDir           dir;
-    bool            copied_exe = false, made_rbdir = false;
-    InstallLog*     log;
-
-    buf = dest + wxT("" PATH_SEP ".rockbox");
-
-    if (! wxDirExists(buf) )
-    {
-        wxMkdir(buf);
-        made_rbdir = true;
-    }
-
-    buf = dest + wxT("" PATH_SEP UNINSTALL_FILE);
-    log = new InstallLog(buf);
-    if (made_rbdir) log->WriteFile(wxT(".rockbox"), true);
-
-    destdir = dest + wxT("" PATH_SEP "RockboxUtility");
-    if (! wxDirExists(destdir) )
-    {
-        if (! wxMkdir(destdir, 0777) )
-        {
-            WARN_DIALOG( wxT("Unable to create directory for installer (")
-                         + destdir + wxT(")"), wxT("Portable install") );
-            return false;
-        }
-        log->WriteFile(wxT("RockboxUtility"), true);
-    }
-
-    dir.GetAllFiles(gv->ResourceDir, &filestocopy, wxT("*"),
-        wxDIR_FILES);
-    if (filestocopy.GetCount() < 1)
-    {
-        WARN_DIALOG(wxT("No files to copy"), wxT("Portable install") );
-        return false;
-    }
-
-    // Copy the contents of the program directory
-    for (i = 0; i < filestocopy.GetCount(); i++)
-    {
-        if (filestocopy[i].AfterLast(PATH_SEP_CHR) == EXE_NAME)
-        {
-            copied_exe = true;
-        }
-
-        dstr = destdir + wxT("" PATH_SEP)
-               + filestocopy[i].AfterLast(PATH_SEP_CHR);
-        if (! wxCopyFile(filestocopy[i], dstr) )
-        {
-            WARN_DIALOG( wxT("Error copying file (")
-                         + filestocopy[i].c_str() + wxT(" -> ")
-                         + dstr + wxT(")"), wxT("Portable Install") );
-            return false;
-        }
-        buf = dstr;
-        buf.Replace(dest, wxEmptyString, false);
-        log->WriteFile(buf);
-    }
-
-    if (! copied_exe)
-    {
-        str = gv->AppDir + wxT("" PATH_SEP EXE_NAME);
-        dstr = destdir + wxT("" PATH_SEP EXE_NAME);
-        if (! wxCopyFile(str, dstr) )
-        {
-            WARN_DIALOG(wxT("Can't copy program binary ")
-                        + str + wxT(" -> ") + dstr, wxT("Portable Install") );
-            return false;
-        }
-        buf = dstr;
-        buf.Replace(dest, wxEmptyString, false);
-        log->WriteFile(buf);
-    }
-
-    // Copy the local ini file so that it knows that it's a portable copy
-    gv->UserConfig->Flush();
-    dstr = destdir + wxT("" PATH_SEP "RockboxUtility.cfg");
-    if (! wxCopyFile(gv->UserConfigFile, dstr) )
-    {
-        WARN_DIALOG(wxT("Unable to install user config file (")
-                    + gv->UserConfigFile + wxT(" -> ") + dstr + wxT(")"),
-                    wxT("Portable Install") );
-        return false;
-    }
-    buf = dstr;
-    buf.Replace(dest, wxEmptyString, false);
-    log->WriteFile(buf);
-
-    delete log;
-    return true;
-}
-
-bool rm_rf(wxString file)
-{
-    wxLogVerbose(wxT("=== begin rm-rf(%s)"), file.c_str() );
-
-    wxString buf;
-    wxArrayString selected;
-    wxDirTraverserIncludeDirs wxdtid(selected);
-    unsigned int rc = 0, i;
-    bool errflag = false;
-
-    if (wxFileExists(file) )
-    {
-        rc = ! wxRemoveFile(file);
-    } else if (wxDirExists(file) )
-    {
-        wxDir* dir = new wxDir(file);;
-        dir->Traverse(wxdtid);
-        delete dir;
-        // Sort into reverse alphabetical order for deletion in correct order
-        // (directories after files)
-        selected.Sort(true);
-        selected.Add(file);
-
-        wxProgressDialog* progress = new wxProgressDialog(wxT("Removing files"),
-                wxT("Deleting files"), selected.GetCount(), NULL,
-                wxPD_APP_MODAL | wxPD_AUTO_HIDE | wxPD_SMOOTH |
-                wxPD_ELAPSED_TIME | wxPD_REMAINING_TIME | wxPD_CAN_ABORT);
-
-        for (i = 0; i < selected.GetCount(); i++)
-        {
-            wxLogVerbose(selected[i]);
-            if (progress != NULL)
-            {
-                buf = wxT("Deleting ") + selected[i];
-                if (! progress->Update(i, buf))
-                {
-                    WARN_DIALOG(wxT("Cancelled by user"), wxT("Erase Files"));
-                    delete progress;
-                    return true;
-                }
-            }
-
-            if (wxDirExists(selected[i]) )
-            {
-                if ((rc = ! wxRmdir(selected[i])) )
-                {
-                    errflag = true;
-                    WARN_DIALOG(wxT("Can't remove directory ") + selected[i],
-                                wxT("Erase files"));
-                }
-            } else if ((rc = ! wxRemoveFile(selected[i])) )
-            {
-                errflag = true;
-                WARN_DIALOG(wxT("Error deleting file ") + selected[i],
-                            wxT("Erase files"));
-            }
-        }
-        delete progress;
-    } else
-    {
-        WARN_DIALOG(wxT("Can't find expected file ") + file,
-                    wxT("Erase files"));
-        return true;
-    }
-
-    wxLogVerbose(wxT("=== end rm-rf"));
-    return rc ? true : false;
-}
-
-
diff --git a/rbutil/rbutil.h b/rbutil/rbutil.h
deleted file mode 100644
index eb31986..0000000
--- a/rbutil/rbutil.h
+++ /dev/null
@@ -1,176 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: rbutil.h
- *
- * Copyright (C) 2005 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <wx/wxprec.h>
-#ifdef __BORLANDC__
-        #pragma hdrstop
-#endif
-#ifndef WX_PRECOMP
-        #include <wx/wx.h>
-#endif
-
-#ifndef __rbutil_HPP_
-#define __rbutil_HPP_
-
-#include <wx/config.h>
-#include <wx/confbase.h>
-#include <wx/fileconf.h>
-#include <wx/stdpaths.h>
-#include <wx/wfstream.h>
-#include <wx/filesys.h>
-#include <wx/fs_inet.h>
-#include <wx/fs_zip.h>
-#include <wx/progdlg.h>
-#include <wx/protocol/http.h>
-#include <wx/string.h>
-#include <wx/url.h>
-#include <wx/ptr_scpd.h>
-#include <wx/zipstrm.h>
-#include <wx/dir.h>
-#include <wx/filefn.h>
-#include <wx/sstream.h>
-#include <wx/msgdlg.h>
-#include <wx/log.h>
-#include <wx/file.h>
-#include <wx/wizard.h>
-#include <wx/event.h>
-#include <wx/statline.h>
-#include <wx/valgen.h>
-#include <wx/thread.h>
-#include <wx/regex.h>
-#include <wx/tokenzr.h>
-#include <wx/notebook.h>
-#include <wx/html/htmlwin.h>
-#include <wx/hyperlink.h>
-#include <wx/mstream.h>
-
-#ifdef __WXMSW__
-#define PATH_SEP "\\"
-#define PATH_SEP_CHR '\\'
-#define EXE_NAME wxT("rbutil.exe")
-#else
-#define PATH_SEP wxT("/")
-#define PATH_SEP_CHR '/'
-#define EXE_NAME wxT("rbutil")
-#endif
-
-#define UNINSTALL_FILE wxT(".rockbox" PATH_SEP ".rbutil_install_data")
-#define MAX_PLATFORMS 50
-#define SYSTEM_CONFIG rbutil.ini
-#define FILE_BUFFER_SIZE 1024
-
-//WX_DEFINE_OBJARRAY(bool, wxArrayBool);
-
-class GlobalVars
-{
-public:
-    // Program configuration data (rbutil.ini and environment)
-    wxFileConfig*           GlobalConfig;
-    wxFileConfig*           UserConfig;
-    wxString                UserConfigFile;
-    wxString                GlobalConfigFile;
-    wxString                AppDir;
-    wxString                ResourceDir;
-
-    wxString*               ErrStr;
-    wxStandardPaths*        stdpaths;
-    wxArrayString           plat_id;
-    wxArrayString           plat_name;
-    wxArrayInt              plat_released;
-    wxArrayInt              plat_needsbootloader;
-    wxArrayString           plat_bootloadermethod;
-    wxArrayString           plat_bootloadername;
-    wxArrayString           plat_resolution;
-    wxArrayString           plat_manualname;
-    wxString                download_url;
-    wxString                daily_url;
-    wxString                bleeding_url;
-    wxString                server_conf_url;
-    wxString                font_url;
-    wxString                last_release;
-    wxString                prog_name;
-    wxString                bootloader_url;
-    wxString                themes_url;
-    wxString                manual_url;
-    wxString                doom_url;
-    wxString                proxy_url;
-
-
-    // User configuration data.
-    wxString                curplat;
-   // unsigned int            curplatnum;
-    wxString                curdestdir;
-    wxString                curfirmware;
-    unsigned int            curbuild;
-    bool                    curisfull;
-    bool                    nocache;
-    bool                    portable;
-    wxString                curresolution;
-    wxArrayString           themesToInstall;
-    wxString                pathToTts;
-    wxString                pathToEnc;
-
-
-
-    // Global system variables
-    wxFFile*                 logfile;
-    wxLogStderr*             logstderr;
-    wxLogChain*              logchain;
-    wxLogGui*                loggui;
-};
-
-extern GlobalVars* gv;
-
-
-wxString wxFindAppPath(const wxString& argv0, const wxString& cwd,
-    const wxString& appVariableName);
-int DownloadURL(wxString src, wxString dest);
-int UnzipFile(wxString src, wxString destdir, bool isInstall = false);
-int Uninstall(const wxString dir, bool isFullUninstall = false);
-bool InstallRbutil(wxString dest);
-bool InstallTheme(wxString src);
-bool checkZip(wxString zipname);
-wxString stream_err_str(int errnum);
-bool rm_rf(wxString file);
-
-wxBitmap wxGetBitmapFromMemory(const unsigned char *data,int length);
-
-
-#define ERR_DIALOG(msg, title) \
-    wxLogError(wxT("%s: %s"), ((wxString) title).c_str(), ((wxString) msg).c_str())
-
-#define WARN_DIALOG(msg, title) \
-    wxLogWarning(wxT("%s: %s"), ((wxString) title).c_str(), ((wxString) msg).c_str())
-
-#define MESG_DIALOG(msg) \
-   wxLogMessage(msg)
-
-#define INFO_DIALOG(msg) \
-    wxLogInfo(msg)
-
-#define BUILD_RELEASE       0
-#define BUILD_DAILY         1
-#define BUILD_BLEEDING      2
-
-#define BOOTLOADER_ADD      0
-#define BOOTLOADER_REM      1
-
-
-#endif
diff --git a/rbutil/rbutil.ini b/rbutil/rbutil.ini
deleted file mode 100644
index 1ab45ec..0000000
--- a/rbutil/rbutil.ini
+++ /dev/null
@@ -1,299 +0,0 @@
-[general]
-download_url=http://www.rockbox.org/download/
-daily_url=http://download.rockbox.org/daily/
-bleeding_url=http://build.rockbox.org/dist/build-
-server_conf_url=http://www.rockbox.org/daily/build-info
-font_url=http://www.rockbox.org/daily/fonts/rockbox-fonts-
-last_release=2.5
-prog_name=rockbox
-bootloader_url=http://download.rockbox.org/bootloader
-themes_url=http://www.rockbox-themes.org/
-manual_url=http://download.rockbox.org/manual
-doom_url=http://download.rockbox.org/useful/rockdoom.zip
-
-[platforms]
-platform1=player
-platform2=recorder
-platform3=recorder8mb
-platform4=recorderv2
-platform5=fmrecorder
-platform6=fmrecorder8mb
-platform7=ondiosp
-platform8=ondiofm
-platform9=h100
-platform10=h120
-platform11=h300
-platform12=h10_5gbums
-platform13=h10_5gbmtp
-platform14=h10
-platform15=ipod3g
-platform16=ipod4gray
-platform17=ipodcolor
-platform18=ipodvideo
-platform19=ipodmini1g
-platform20=ipodmini2g
-platform21=ipodnano
-platform22=iaudiox5
-platform23=iaudiom5
-platform24=iaudiox5v
-platform25=gigabeatf
-platform26=sansae200
-
-[player]
-name=Archos Jukebox Player 6000, Jukebox Studio 5/10/20
-platform=player
-released=yes
-needsbootloader=no
-bootloadermethod=
-bootloadername=
-resolution=11x2x1
-manualname=
-
-[recorder]
-name=Archos Jukebox Recorder 10, 20
-platform=recorder
-released=yes
-needsbootloader=no
-bootloadermethod=
-bootloadername=
-resolution=112x64x1
-manualname=
-
-[recorder8mb]
-name=Archos Jukebox Recorder 10, 20 (with 8mb memory)
-platform=recorder8mb
-released=no
-needsbootloader=no
-bootloadermethod=
-bootloadername=
-resolution=112x64x1
-manualname=rockbox-recorder
-
-[recorderv2]
-name=Archos Jukebox Recorder v2 (20GB)
-platform=recorderv2
-released=yes
-needsbootloader=no
-bootloadermethod=
-bootloadername=
-resolution=112x64x1
-manualname=
-
-[fmrecorder]
-name=Archos Jukebox Recorder FM
-platform=fmrecorder
-released=yes
-needsbootloader=no
-bootloadermethod=
-bootloadername=
-resolution=112x64x1
-manualname=
-
-[fmrecorder8mb]
-name=Archos Jukebox Recorder FM (with 8mb memory)
-platform=fmrecorder8mb
-released=no
-needsbootloader=no
-bootloadermethod=
-bootloadername=
-resolution=112x64x1
-manualname=rockbox-fmrecorder
-
-[ondiosp]
-name=Archos Ondio SP
-platform=ondiosp
-released=yes
-needsbootloader=no
-bootloadermethod=
-bootloadername=
-resolution=112x64x1
-manualname=
-
-[ondiofm]
-name=Archos Ondio FM
-platform=ondiofm
-released=yes
-needsbootloader=no
-bootloadermethod=
-bootloadername=
-resolution=112x64x1
-manualname=
-
-[h100]
-name=Iriver iHP100, iHP110
-platform=h100
-released=no
-needsbootloader=yes
-bootloadermethod=fwpatcher
-bootloadername=bootloader-h100.bin
-resolution=160x128x2
-manualname=rockbox-h100
-
-[h120]
-name=Iriver iHP120, iHP140, H120, H140
-platform=h120
-released=no
-needsbootloader=yes
-bootloadermethod=fwpatcher
-bootloadername=bootloader-h120.bin
-resolution=160x128x2
-manualname=rockbox-h100
-
-[h300]
-name=Iriver H320, H340
-platform=h300
-released=no
-needsbootloader=yes
-bootloadermethod=fwpatcher
-bootloadername=bootloader-h300.bin
-resolution=220x176x16
-manualname=rockbox-h300
-
-[h10_5gbums]
-name=Iriver H10 (5/6GB) UMS
-platform=h10_5gb
-released=no
-needsbootloader=yes
-bootloadermethod=h10
-bootloadername=H10.mi4
-resolution=128x128x16
-manualname=
-
-[h10_5gbmtp]
-name=Iriver H10 (5/6GB) MTP
-platform=h10_5gb
-released=no
-needsbootloader=yes
-bootloadermethod=h10
-bootloadername=H10_5GB-MTP/H10.mi4
-resolution=128x128x16
-manualname=
-
-[h10]
-name=Iriver H10 (20GB)
-platform=h10
-released=no
-needsbootloader=yes
-bootloadermethod=h10
-bootloadername=H10_20GC.mi4
-resolution=160x128x16
-manualname=
-
-[ipodcolor]
-name=Apple Ipod Colour/Photo/U2 (4th gen)
-platform=ipodcolor
-released=no
-needsbootloader=yes
-bootloadermethod=ipodpatcher
-bootloadername=ipodcolor
-resolution=220x176x16
-manualname=
-
-[ipodnano]
-name=Apple Ipod Nano (1st gen)
-platform=ipodnano
-released=no
-needsbootloader=yes
-bootloadermethod=ipodpatcher
-bootloadername=ipodnano
-resolution=176x132x16
-manualname=
-
-[ipod4gray]
-name=Apple Ipod (4th gen, greyscale)
-platform=ipod4gray
-released=no
-needsbootloader=yes
-bootloadermethod=ipodpatcher
-bootloadername=ipod4g
-resolution=160x128x2
-manualname=
-
-[ipodvideo]
-name=Apple Ipod Video (5th gen)
-platform=ipodvideo
-released=no
-needsbootloader=yes
-bootloadermethod=ipodpatcher
-bootloadername=ipodvideo
-resolution=320x240x16
-manualname=
-
-[ipod3g]
-name=Apple Ipod (3rd gen)
-platform=ipod3g
-released=no
-needsbootloader=yes
-bootloadermethod=ipodpatcher
-bootloadername=ipod3g
-resolution=160x128x2
-manualname=
-
-[ipodmini1g]
-name=Apple Ipod Mini (1st gen)
-platform=ipodmini1g
-released=no
-needsbootloader=yes
-bootloadermethod=ipodpatcher
-bootloadername=ipodmini
-resolution=138x110x2
-manualname=rockbox-ipodmini2g
-
-[ipodmini2g]
-name=Apple Ipod Mini (2nd gen)
-platform=ipodmini2g
-released=no
-needsbootloader=yes
-bootloadermethod=ipodpatcher
-bootloadername=ipodmini2g
-resolution=138x110x2
-manualname=rockbox-ipodmini2g
-
-[iaudiox5]
-name=Cowon iAudio X5 , X5L
-platform=iaudiox5
-released=no
-needsbootloader=yes
-bootloadermethod=iaudio
-bootloadername=x5_fw.bin
-resolution=160x128x16
-manualname=
-
-[iaudiox5v]
-name=Cowon iAudio X5V
-platform=iaudiox5
-released=no
-needsbootloader=yes
-bootloadermethod=iaudio
-bootloadername=x5v_fw.bin
-resolution=160x128x2
-manualname=
-
-[iaudiom5]
-name=Cowon iAudio M5 , M5L
-platform=iaudiom5
-released=no
-needsbootloader=yes
-bootloadermethod=iaudio
-bootloadername=m5_fw.bin
-resolution=160x128x16
-manualname=
-
-[gigabeatf]
-name=Toshiba Gigabeat F , X
-platform=gigabeatf
-needsbootloader=yes
-bootloadermethod=gigabeatf
-bootloadername=FWIMG01.DAT
-resolution=240x320x16
-manualname=
-
-[sansae200]
-name=Sandisk Sansa E200
-platform=sansae200
-released=no
-needsbootloader=yes
-bootloadermethod=sansapatcher
-bootloadername=PP5022.mi4
-resolution=176x220x16
-manualname=
diff --git a/rbutil/rbutil.iss b/rbutil/rbutil.iss
deleted file mode 100644
index d945d85..0000000
--- a/rbutil/rbutil.iss
+++ /dev/null
@@ -1,55 +0,0 @@
-; Script generated by the Inno Setup Script Wizard.
-; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
-
-#define MyAppName "Rockbox Utility"
-#define MyAppVerName "Rockbox Utility v0.2.1"
-#define MyAppPublisher "Rockbox Team"
-#define MyAppURL "http://www.rockbox.org/"
-#define MyAppExeName "rbutil.exe"
-#define MyAppUrlName "rbutil.url"
-
-[Setup]
-AppName={#MyAppName}
-AppVerName={#MyAppVerName}
-AppPublisher={#MyAppPublisher}
-AppPublisherURL={#MyAppURL}
-AppSupportURL={#MyAppURL}
-AppUpdatesURL={#MyAppURL}
-DefaultDirName={pf}\{#MyAppName}
-DefaultGroupName={#MyAppName}
-LicenseFile=copying.txt
-OutputBaseFilename=rbutil-0.2.1-setup
-Compression=lzma/ultra
-SolidCompression=true
-OutputDir=.
-AppCopyright=© 2005-6 Rockbox Team
-AppID={{BDAF1E02-1CC9-48BB-AE03-95D87F65BF4A}
-
-[Languages]
-Name: english; MessagesFile: compiler:Default.isl
-
-[Tasks]
-Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked
-Name: quicklaunchicon; Description: {cm:CreateQuickLaunchIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked
-
-[Files]
-Source: rbutil.exe; DestDir: {app}; Flags: ignoreversion
-; NOTE: Don't use "Flags: ignoreversion" on any shared system files
-Source: rbutil.ini; DestDir: {app}; Flags: ignoreversion
-
-[INI]
-Filename: {app}\{#MyAppUrlName}; Section: InternetShortcut; Key: URL; String: {#MyAppURL}
-
-[Icons]
-Name: {group}\{#MyAppName}; Filename: {app}\{#MyAppExeName}
-Name: {group}\{cm:ProgramOnTheWeb,{#MyAppName}}; Filename: {app}\{#MyAppUrlName}
-Name: {group}\{cm:UninstallProgram,{#MyAppName}}; Filename: {uninstallexe}
-Name: {userdesktop}\{#MyAppName}; Filename: {app}\{#MyAppExeName}; Tasks: desktopicon
-Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}; Filename: {app}\{#MyAppExeName}; Tasks: quicklaunchicon
-
-[Run]
-Filename: {app}\{#MyAppExeName}; Description: {cm:LaunchProgram,{#MyAppName}}; Flags: nowait postinstall skipifsilent
-
-[UninstallDelete]
-Type: files; Name: {app}\{#MyAppUrlName}
-
diff --git a/rbutil/rbutil.r b/rbutil/rbutil.r
deleted file mode 100755
index e7c39a8..0000000
--- a/rbutil/rbutil.r
+++ /dev/null
@@ -1,2675 +0,0 @@
-data 'vers' (2) {
-$"0100 2000 0000 0531 2E30 6430 0531 2E30"
-$"6430"} ;
-
-data 'vers' (1) {
-$"0100 2000 0000 0531 2E30 6430 0531 2E30"
-$"6430"} ;
-
-data 'ICN#' (-16455, "Item Icon") {
-	$"FFFF FFFF F700 001D BB00 002B D700 0057"            
-	$"ED00 009D BB00 0539 DD00 1261 F700 A4E1"            
-	$"FFFE 539F 8100 A52F 8102 AED7 8105 4BAB"            
-	$"8103 BD12 810E 4A65 8105 2492 8102 F926"            
-	$"810B 5FA9 8114 0B7E 8108 05AC 8100 0021"            
-	$"8100 0027 8100 0021 8100 0021 8100 0021"            
-	$"81FF FFE1 8100 0FE1 8122 0AE1 8108 2FA1"            
-	$"8141 0DE1 8104 0B61 8100 9DA1 FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-};
-
-data 'icl4' (-16455, "Item Icon") {
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"F333 333F 0000 0000 0000 0000 0003 3E0F"            
-	$"F333 333F 0000 0000 0000 0000 00A4 3AEF"            
-	$"F333 333F 0000 0000 0000 0000 0DCA 3EEF"            
-	$"F333 333F 0000 0000 0000 0000 E1C5 FE0F"            
-	$"F333 333F 0000 0000 000C CDCB 1DEA E00F"            
-	$"F333 333F 0000 0000 0CCC 1CB1 C3FD 000F"            
-	$"F333 333F 0000 0000 D02C CB1D A9E0 000F"            
-	$"FFFF FFFF FFFF FFFC C2C3 BCD3 EDDF FFFF"            
-	$"F000 000F 0000 00CC 2DAB 02BF 2DDD 666F"            
-	$"F000 000F 0000 0C1D BBB1 BEAB BDCB D66F"            
-	$"F000 000F 0000 CCD4 E2CB BAEE B42C CD6F"            
-	$"F000 000F 0000 C2BA BD2E FF3B DCC2 DCDD"            
-	$"F000 000F 0000 D3BD D2CC 2DCD 02D0 DCEB"            
-	$"F000 000F 0000 0EAC CDB2 CCCC 20D2 CDDB"            
-	$"F000 000F 0000 CBBB 3AAE E2D2 CC2C C2DC"            
-	$"F000 000F 0000 BC2E DD4A EEAE EBBB BBCD"            
-	$"F000 000F 000C DEDD 00CD DAEA AAEF 35DC"            
-	$"F000 000F 000B D000 0000 CCD4 DEBE EADC"            
-	$"F000 000F 0000 0000 0000 0000 00F0 0BCD"            
-	$"F000 000F 0000 0000 0000 0000 00F0 0FEE"            
-	$"F000 000F 0000 0000 0000 0000 00F0 000F"            
-	$"F000 000F 0000 0000 0000 0000 00F0 000F"            
-	$"F000 000F 0000 0000 0000 0000 00F0 000F"            
-	$"F000 000F FFFF FFFF FFFF FFFF FFF0 000F"            
-	$"F000 000F 1111 1111 1111 F999 99F0 000F"            
-	$"F000 000F 1111 1111 1111 F898 99F0 000F"            
-	$"F000 000F 1111 1111 1111 F999 98F0 000F"            
-	$"F000 000F 1111 1111 1111 F989 99F0 000F"            
-	$"F000 000F 1111 1111 1111 F899 89F0 000F"            
-	$"F000 000F 1111 1111 1111 F989 98F0 000F"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-};
-
-data 'icl8' (-16455, "Item Icon") {
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 00DB 22FC 00FF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 DB21 6BDB FCFF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0081 2BDA 6BB2 FCFF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 FB03 5581 FDFB 00FF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0007 2C32 325E 0358 88DE FC00 00FF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"002B 0832 0832 5803 3988 ADFB 0000 00FF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"3208 3208 5658 0934 88AD FC00 0000 00FF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FF32"            
-	$"0833 3964 5809 3388 AD32 FBFF FFFF FFFF"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 3208"            
-	$"3339 8858 0934 82DF 3933 3281 D2D2 D2FF"            
-	$"FF00 0000 0000 00FF 0000 0000 002C 0833"            
-	$"6488 5E09 3388 B35E 6433 3233 81D2 D2FF"            
-	$"FF00 0000 0000 00FF 0000 0000 F608 395D"            
-	$"8858 0934 82E0 8888 5E39 332C 3281 D2FF"            
-	$"FF00 0000 0000 00FF 0000 0000 F739 5E8E"            
-	$"820F 5788 FFFD 645E 3357 0E32 3332 81F9"            
-	$"FF00 0000 0000 00FF 0000 0000 3965 8833"            
-	$"3933 3332 3357 320E 2C0E 322C 0E2D 815D"            
-	$"FF00 0000 0000 00FF 0000 0000 F5FC 8808"            
-	$"325D 5D34 320E 082C 0E2C 3233 3232 FA58"            
-	$"FF00 0000 0000 00FF 0000 0000 2B58 3464"            
-	$"88DE 8988 885E 5D33 3232 3332 335E F954"            
-	$"FF00 0000 0000 00FF 0000 0000 5D33 5D82"            
-	$"FA5D 8789 8EAC 89AC 885E 645E 5D64 5654"            
-	$"FF00 0000 0000 00FF 0000 002C 8187 5756"            
-	$"0000 F632 8189 B2DE 89B2 88AC 8888 F9F8"            
-	$"FF00 0000 0000 00FF 0000 0081 562B 0000"            
-	$"0000 0000 F6F7 325D 815E FB88 88FC 5656"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 005D 57F8"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 00FD AB88"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE6 E6E6 E6E6 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE5 E6E5 E6E6 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE6 E6E6 E6E5 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE6 E5E6 E6E6 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE6 E6E6 E5E6 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE5 E6E6 E6E6 FF00 0000 00FF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-};
-
-data 'icm#' (-16455, "Item Icon") {
-	$"F24B D007 B028 5557 81B1 124A 8236 1005"            
-	$"8000 1ABD 8030 557D FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-};
-
-data 'icm4' (-16455, "Item Icon") {
-	$"A33F CDCC DCCD CAAE A333 0000 0000 CDEE"            
-	$"333A 0000 CCCB 2E0D EDCE CDCD DB2B DB6F"            
-	$"D00D 00C2 BBEA BCD5 D00D 00BD 2D2D CC2D"            
-	$"D00D 0CDC CCDB BADC D00D 0000 0000 0DCE"            
-	$"D00D 0000 0000 0D0D D00D B1BB 1BF9 FD0D"            
-	$"D00D 1111 1199 8D0D ECDB BB1B B1F9 FECE"            
-};
-
-data 'icm8' (-16455, "Item Icon") {
-	$"DDDA DADD F8F8 F8F8 F8F8 F8F8 F864 8EAC"            
-	$"DB23 23DC 0000 0000 0000 0000 F85C 89FB"            
-	$"DC23 23DB 0000 0000 F608 3234 5E82 2AFA"            
-	$"FBF8 F8FB F8F8 5633 335D 3488 575D EFF1"            
-	$"F900 00FA 0000 2C63 5E34 FD64 5D2C 33AA"            
-	$"FA00 00F9 0000 395E 5D5D 5733 0832 33F9"            
-	$"F900 00FA 00F6 F92C 2B32 5D88 8888 88F8"            
-	$"FA00 00F9 0000 0000 0000 0000 00FA F781"            
-	$"F900 00FA 0000 0000 0000 0000 00F9 00F9"            
-	$"FA00 00F9 3559 5335 5959 E9E7 E7FA 00FA"            
-	$"F900 00FA 0505 0505 0505 E8E6 E6F9 00F9"            
-	$"FBF8 F8FB 592F 5959 2F59 E9E7 E7FB F8FB"            
-};
-
-data 'icns' (-16455, "Item Icon") {
-	$"6963 6E73 0000 9AB8 4943 4E23 0000 0108"            
-	$"FFFF FFFF F700 001D BB00 002B D700 0057"            
-	$"ED00 009D BB00 0539 DD00 1261 F700 A4E1"            
-	$"FFFE 539F 8100 A52F 8102 AED7 8105 4BAB"            
-	$"8103 BD12 810E 4A65 8105 2492 8102 F926"            
-	$"810B 5FA9 8114 0B7E 8108 05AC 8100 0021"            
-	$"8100 0027 8100 0021 8100 0021 8100 0021"            
-	$"81FF FFE1 8100 0FE1 8122 0AE1 8108 2FA1"            
-	$"8141 0DE1 8104 0B61 8100 9DA1 FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"6963 6C34 0000 0208 FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF F333 333F 0000 0000"            
-	$"0000 0000 0003 3E0F F333 333F 0000 0000"            
-	$"0000 0000 00A4 3AEF F333 333F 0000 0000"            
-	$"0000 0000 0DCA 3EEF F333 333F 0000 0000"            
-	$"0000 0000 E1C5 FE0F F333 333F 0000 0000"            
-	$"000C CDCB 1DEA E00F F333 333F 0000 0000"            
-	$"0CCC 1CB1 C3FD 000F F333 333F 0000 0000"            
-	$"D02C CB1D A9E0 000F FFFF FFFF FFFF FFFC"            
-	$"C2C3 BCD3 EDDF FFFF F000 000F 0000 00CC"            
-	$"2DAB 02BF 2DDD 666F F000 000F 0000 0C1D"            
-	$"BBB1 BEAB BDCB D66F F000 000F 0000 CCD4"            
-	$"E2CB BAEE B42C CD6F F000 000F 0000 C2BA"            
-	$"BD2E FF3B DCC2 DCDD F000 000F 0000 D3BD"            
-	$"D2CC 2DCD 02D0 DCEB F000 000F 0000 0EAC"            
-	$"CDB2 CCCC 20D2 CDDB F000 000F 0000 CBBB"            
-	$"3AAE E2D2 CC2C C2DC F000 000F 0000 BC2E"            
-	$"DD4A EEAE EBBB BBCD F000 000F 000C DEDD"            
-	$"00CD DAEA AAEF 35DC F000 000F 000B D000"            
-	$"0000 CCD4 DEBE EADC F000 000F 0000 0000"            
-	$"0000 0000 00F0 0BCD F000 000F 0000 0000"            
-	$"0000 0000 00F0 0FEE F000 000F 0000 0000"            
-	$"0000 0000 00F0 000F F000 000F 0000 0000"            
-	$"0000 0000 00F0 000F F000 000F 0000 0000"            
-	$"0000 0000 00F0 000F F000 000F FFFF FFFF"            
-	$"FFFF FFFF FFF0 000F F000 000F 1111 1111"            
-	$"1111 F999 99F0 000F F000 000F 1111 1111"            
-	$"1111 F898 99F0 000F F000 000F 1111 1111"            
-	$"1111 F999 98F0 000F F000 000F 1111 1111"            
-	$"1111 F989 99F0 000F F000 000F 1111 1111"            
-	$"1111 F899 89F0 000F F000 000F 1111 1111"            
-	$"1111 F989 98F0 000F FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF 6963 6C38 0000 0408"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 00DB 22FC 00FF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 DB21 6BDB FCFF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0081 2BDA 6BB2 FCFF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 FB03 5581 FDFB 00FF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"0000 0007 2C32 325E 0358 88DE FC00 00FF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"002B 0832 0832 5803 3988 ADFB 0000 00FF"            
-	$"FF23 2323 2323 23FF 0000 0000 0000 0000"            
-	$"3208 3208 5658 0934 88AD FC00 0000 00FF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FF32"            
-	$"0833 3964 5809 3388 AD32 FBFF FFFF FFFF"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 3208"            
-	$"3339 8858 0934 82DF 3933 3281 D2D2 D2FF"            
-	$"FF00 0000 0000 00FF 0000 0000 002C 0833"            
-	$"6488 5E09 3388 B35E 6433 3233 81D2 D2FF"            
-	$"FF00 0000 0000 00FF 0000 0000 F608 395D"            
-	$"8858 0934 82E0 8888 5E39 332C 3281 D2FF"            
-	$"FF00 0000 0000 00FF 0000 0000 F739 5E8E"            
-	$"820F 5788 FFFD 645E 3357 0E32 3332 81F9"            
-	$"FF00 0000 0000 00FF 0000 0000 3965 8833"            
-	$"3933 3332 3357 320E 2C0E 322C 0E2D 815D"            
-	$"FF00 0000 0000 00FF 0000 0000 F5FC 8808"            
-	$"325D 5D34 320E 082C 0E2C 3233 3232 FA58"            
-	$"FF00 0000 0000 00FF 0000 0000 2B58 3464"            
-	$"88DE 8988 885E 5D33 3232 3332 335E F954"            
-	$"FF00 0000 0000 00FF 0000 0000 5D33 5D82"            
-	$"FA5D 8789 8EAC 89AC 885E 645E 5D64 5654"            
-	$"FF00 0000 0000 00FF 0000 002C 8187 5756"            
-	$"0000 F632 8189 B2DE 89B2 88AC 8888 F9F8"            
-	$"FF00 0000 0000 00FF 0000 0081 562B 0000"            
-	$"0000 0000 F6F7 325D 815E FB88 88FC 5656"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 005D 57F8"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 00FD AB88"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE6 E6E6 E6E6 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE5 E6E5 E6E6 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE6 E6E6 E6E5 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE6 E5E6 E6E6 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE6 E6E6 E5E6 FF00 0000 00FF"            
-	$"FF00 0000 0000 00FF 0505 0505 0505 0505"            
-	$"0505 0505 FFE5 E6E6 E6E6 FF00 0000 00FF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"696C 3332 0000 0670 9E00 83FF 0000 90FF"            
-	$"058E EA44 FF00 0083 FF00 008F FF06 8FEA"            
-	$"AB8E 4400 0083 FF00 008E FF07 5ABE AB8E"            
-	$"4544 0000 83FF 0000 8DFF 0864 FE91 6945"            
-	$"44FF 0000 83FF 0000 88FF 0DE2 E1CB B8A1"            
-	$"FEB1 6245 44FF FF00 0083 FF00 0086 FF0A"            
-	$"E2E6 E9EF B89F FEC1 6245 4480 FF01 0000"            
-	$"83FF 0000 85FF 0AD9 E4E9 EBB8 9FFE C362"            
-	$"4544 81FF 8D00 0BD7 E3DE BA8F A2FE C662"            
-	$"45D0 6183 0083 FF00 0083 FF0D DAE5 D4B3"            
-	$"679A FEC8 6245 A5C9 D361 8200 83FF 0000"            
-	$"82FF 0FDC E2D4 A469 9EF2 C962 4579 9BC2"            
-	$"D2D0 6181 0083 FF00 0081 FF11 E8DD D2B3"            
-	$"6AA0 F3C7 5C1B 5D89 9CB5 CDD5 D361 8000"            
-	$"83FF 0000 81FF 14DF C29C 657A DEB3 6A0D"            
-	$"2082 ADBD C3D1 D5D7 D069 8800 83FF 0000"            
-	$"81FF 14AE 8170 B9C5 C1CE C7B2 AFDA E7EA"            
-	$"E1D9 D8D9 D469 8600 83FF 0000 81FF 14EE"            
-	$"5C75 EBD4 9FB3 C4DE E7EC EBE3 E4DD D6CE"            
-	$"C672 9C00 83FF 0000 81FF 14C6 A2C7 886F"            
-	$"4D61 6F7F 9094 C1DB CCC1 C0B7 AB82 A200"            
-	$"83FF 0000 81FF 1499 BFAE 5C8A 856D 504E"            
-	$"5A5B 556C 8F8B 8C95 888F A400 83FF 0000"            
-	$"80FF 15CA 667C 8C9F FFFF DCB5 8251 4A43"            
-	$"3F4B 535E 6860 8FA6 0083 FF00 0080 FF02"            
-	$"669F C283 FF0C DCC3 A88D 847B 686D 5A5E"            
-	$"8FAF 0083 FF00 008F FF06 00FF FF81 8FB5"            
-	$"0083 FF00 008F FF06 00FF FF22 4444 0083"            
-	$"FF00 008F FF00 0081 FF01 0000 83FF 0000"            
-	$"8FFF 0000 81FF 0100 0083 FF00 008F FF00"            
-	$"0081 FF01 0000 83FF 9100 81FF 0100 0083"            
-	$"FF00 0089 FF84 0081 FF01 0000 83FF 0000"            
-	$"89FF 8400 81FF 0100 0083 FF00 0089 FF84"            
-	$"0081 FF01 0000 83FF 0000 89FF 8400 81FF"            
-	$"0100 0083 FF00 0089 FF84 0081 FF01 0000"            
-	$"83FF 0000 89FF 8400 81FF 9E00 A500 90FF"            
-	$"0301 0044 FF86 008F FF04 0900 0001 4486"            
-	$"008E FF05 67BC 0001 1944 8600 8DFF 0666"            
-	$"E49D 7119 44FF 8600 88FF 0BC9 BEA7 9B82"            
-	$"E489 4419 44FF FF86 0086 FF0A CFB6 B9BB"            
-	$"9B79 E493 4419 4480 FF86 0085 FF0A B2AC"            
-	$"B6B5 9B7D E497 4419 4481 FF8D 000B AFAF"            
-	$"A06E 5180 E49A 4419 9B62 8300 83FF 0000"            
-	$"83FF 0DB2 B397 682E 76E4 9D44 1963 96A1"            
-	$"6282 0083 FF00 0082 FF0F BEB0 9953 307E"            
-	$"CF9C 4619 3459 8BA6 9C62 8100 83FF 0000"            
-	$"81FF 11E0 B191 672E 7ED0 9A44 0E2A 3C55"            
-	$"7BA0 A8A2 6280 0083 FF00 0081 FF14 C576"            
-	$"4B2D 51B5 864F 040E 3461 818A 9FA8 A7A1"            
-	$"687C 0083 FF00 0081 FF14 722D 3A7D 8683"            
-	$"9998 8C85 A0B3 B9AE A9AA AAA5 687E 0083"            
-	$"FF00 0081 FF14 E844 38B3 A962 6F7D 9DB2"            
-	$"BEBC B5B7 AFA5 9B95 7392 0083 FF00 0081"            
-	$"FF14 C283 9A44 3D1E 2934 4455 5C8E AC9A"            
-	$"8B89 7D75 829A 0083 FF00 0081 FF14 6E8B"            
-	$"8044 746B 4522 222F 302E 425C 5558 6055"            
-	$"8E9E 0083 FF00 0080 FF15 B466 5A81 9FFF"            
-	$"FFD6 9F5B 231B 1310 202B 333C 378E A000"            
-	$"83FF 0000 80FF 0266 9FC2 83FF 0CD6 B692"            
-	$"6F66 5B47 4931 3B8E A600 83FF 0000 8FFF"            
-	$"0600 FFFF 728E AB00 83FF 0000 8FFF 0600"            
-	$"FFFF 2244 4400 83FF 0000 8FFF 0000 81FF"            
-	$"0100 0083 FF00 008F FF00 0081 FF01 0000"            
-	$"83FF 0000 8FFF 0000 81FF 0100 0083 FF91"            
-	$"0081 FF01 0000 83FF 0000 89FF 0000 827B"            
-	$"0000 81FF 0100 0083 FF00 0089 FF00 0082"            
-	$"7B00 0081 FF01 0000 83FF 0000 89FF 0000"            
-	$"827B 0000 81FF 0100 0083 FF00 0089 FF00"            
-	$"0082 7B00 0081 FF01 0000 83FF 0000 89FF"            
-	$"0000 827B 0000 81FF 0100 0083 FF00 0089"            
-	$"FF00 0082 7B00 0081 FF9E 00A5 0090 FF03"            
-	$"0F43 44FF 8600 8FFF 0417 4316 0F44 8600"            
-	$"8EFF 0565 C416 0F1A 4486 008D FF06 5567"            
-	$"A76C 1A44 FF86 0088 FF0B BCA9 9293 3E67"            
-	$"4D23 1A44 FFFF 8600 86FF 0AC6 9A98 9893"            
-	$"3167 4A23 1A44 80FF 8600 85FF 0A9C 8E99"            
-	$"9593 3767 4F23 1A44 81FF 8D00 0B92 8F86"            
-	$"5747 3967 5223 1A7A 6183 0083 FF00 0083"            
-	$"FF0D 9591 7C51 2A32 6753 231A 4B78 8361"            
-	$"80FF 0100 0083 FF00 0082 FF13 A98B 7D41"            
-	$"2C37 6353 241A 2C44 6D8A 8061 FFFF 0000"            
-	$"83FF 0000 81FF 14DA 9278 5427 3761 5122"            
-	$"1124 323F 6084 8D86 61FF 0000 83FF 0000"            
-	$"81FF 14B7 5B3C 2730 5956 2A0A 0C2C 4F65"            
-	$"6C85 8D89 8869 8800 83FF 0000 81FF 1461"            
-	$"202F 6A76 7683 8378 748C 9A9D 918E 8E8C"            
-	$"8869 5500 83FF 0000 81FF 14E7 2230 9694"            
-	$"5354 5F80 95A2 9E9A 9D94 8881 7A73 4400"            
-	$"83FF 0000 81FF 14C6 4651 3538 191F 2A36"            
-	$"444A 7591 8173 7268 6081 FF00 83FF 0000"            
-	$"81FF 0859 6A49 2277 683C 1A1D 8028 0838"            
-	$"4D47 484F 478E FF00 83FF 0000 80FF 15A8"            
-	$"654A 7F9F FFFF D39A 551C 140E 0B1B 262B"            
-	$"3330 8E9A 0083 FF00 0080 FF02 659F C283"            
-	$"FF0C D3B2 8E69 5F56 4243 2B35 8E9F 0083"            
-	$"FF00 008F FF06 00FF FF6B 8EA7 0083 FF00"            
-	$"008F FF06 00FF FF22 4444 0083 FF00 008F"            
-	$"FF00 0081 FF01 0000 83FF 0000 8FFF 0000"            
-	$"81FF 0100 0083 FF00 008F FF00 0081 FF01"            
-	$"0000 83FF 9100 81FF 0100 0083 FF91 0081"            
-	$"FF01 0000 83FF 9100 81FF 0100 0083 FF91"            
-	$"0081 FF01 0000 83FF 9100 81FF 0100 0083"            
-	$"FF91 0081 FF01 0000 83FF 9100 81FF 9E00"            
-	$"6C38 6D6B 0000 0408 FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF 6963 6823 0000 0248"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF F770 0000"            
-	$"0001 EEB0 0000 0001 F5D0 0000 0001 EF70"            
-	$"0000 0001 DBB0 0000 0001 F570 0000 0001"            
-	$"FED0 0000 0001 D5B0 0000 0001 EF70 0000"            
-	$"0001 FAD0 0000 0001 FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF C010 0000 01FF C010 0000 01FF"            
-	$"C010 0000 01EF C010 0000 01FF C010 0000"            
-	$"01FB C010 0000 01DF C010 0000 01FF C010"            
-	$"0000 01FF C010 0000 01FF C010 0000 0181"            
-	$"C010 0000 0181 C010 0000 0181 C010 0000"            
-	$"0181 C010 0000 0181 C010 0000 0181 C010"            
-	$"0000 0181 C010 0000 0181 C010 0000 0181"            
-	$"C010 0000 0181 C010 0000 0181 C010 0000"            
-	$"0181 C010 0000 0181 C01F FFFF FF81 C01F"            
-	$"FFFF FF81 C010 0003 FF81 C011 1113 D581"            
-	$"C010 4443 6F81 C012 000B BB81 C010 8883"            
-	$"DD81 C014 2203 6B81 C011 004B BD81 C010"            
-	$"1103 F781 C014 0423 5B81 FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"6963 6834 0000 0488 FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FF33 3333 333F 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 000F"            
-	$"FF33 3333 333F 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 000F FF33 3333 333F 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 000F"            
-	$"FF33 3333 333F 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 000F FF33 3333 333F 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 000F"            
-	$"FF33 3333 333F 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 000F FF33 3333 333F 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 000F"            
-	$"FF33 3333 333F 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 000F FF33 3333 333F 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 000F"            
-	$"FF33 3333 333F 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 000F FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F666 666F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F666 666F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F666 666F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F666 666F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F666 666F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F666 666F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F666 666F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F FFFF FFFF FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F FFFF FFFF"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F000 000F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F000 000F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F000 000F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F000 000F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F000 000F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F000 000F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F000 000F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F000 000F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F000 000F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F000 000F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F000 000F FF00 0000 000F 0000"            
-	$"0000 0000 0000 0000 0000 000F F000 000F"            
-	$"FF00 0000 000F 0000 0000 0000 0000 0000"            
-	$"0000 000F F000 000F FF00 0000 000F FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF F000 000F"            
-	$"FF00 0000 000F FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF F000 000F FF00 0000 000F 1111"            
-	$"1111 1111 1111 11FF 9999 999F F000 000F"            
-	$"FF00 0000 000F 1111 1111 1111 1111 11FF"            
-	$"9989 898F F000 000F FF00 0000 000F 1111"            
-	$"1111 1111 1111 11FF 8998 999F F000 000F"            
-	$"FF00 0000 000F 1111 1111 1111 1111 11FF"            
-	$"9899 989F F000 000F FF00 0000 000F 1111"            
-	$"1111 1111 1111 11FF 9989 998F F000 000F"            
-	$"FF00 0000 000F 1111 1111 1111 1111 11FF"            
-	$"8999 899F F000 000F FF00 0000 000F 1111"            
-	$"1111 1111 1111 11FF 9899 989F F000 000F"            
-	$"FF00 0000 000F 1111 1111 1111 1111 11FF"            
-	$"9999 899F F000 000F FF00 0000 000F 1111"            
-	$"1111 1111 1111 11FF 8989 989F F000 000F"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF 6963 6838 0000 0908"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF 2323 2323 2323 2323 23FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 00FF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFD2 D2D2 D2D2 D2FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFD2 D2D2 D2D2 D2FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFD2 D2D2 D2D2 D2FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFD2 D2D2 D2D2 D2FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFD2 D2D2 D2D2 D2FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFD2 D2D2 D2D2 D2FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFD2 D2D2 D2D2 D2FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFFF FFFF FFFF FFFF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FFFF FFFF FFFF FFFF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0000 0000"            
-	$"0000 0000 0000 0000 0000 0000 0000 0000"            
-	$"0000 0000 0000 00FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E6E6 E6E6 E6E6 E6FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E6E6 E5E6 E5E6 E5FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E5E6 E6E6 E6E6 E6FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E6E6 E6E5 E6E5 E6FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E6E5 E6E6 E6E6 E5FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E6E6 E6E6 E5E6 E6FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E5E6 E6E6 E6E5 E6FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E6E6 E6E5 E6E6 E6FF FF00 0000 0000 00FF"            
-	$"FFFF 0000 0000 0000 0000 00FF 0505 0505"            
-	$"0505 0505 0505 0505 0505 0505 0505 FFFF"            
-	$"E6E5 E6E6 E5E6 E6FF FF00 0000 0000 00FF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"6968 3332 0000 052A DF00 86FF 0000 A0FF"            
-	$"8000 86FF 0000 A0FF 8000 86FF 0000 A0FF"            
-	$"8000 86FF 0000 A0FF 8000 86FF 0000 A0FF"            
-	$"8000 86FF 0000 A0FF 8000 86FF 0000 A0FF"            
-	$"8000 86FF 0000 A0FF 8000 86FF 0000 A0FF"            
-	$"8000 86FF 0000 A0FF E000 86FF 0000 98FF"            
-	$"8800 86FF 0000 98FF 8800 86FF 0000 98FF"            
-	$"8800 86FF 0000 98FF 8800 86FF 0000 98FF"            
-	$"8800 86FF 0000 98FF 8800 86FF 0000 98FF"            
-	$"8800 86FF 0000 98FF 8800 86FF 0000 98FF"            
-	$"8800 86FF 0000 98FF 0100 0083 FF80 0086"            
-	$"FF00 0098 FF01 0000 83FF 8000 86FF 0000"            
-	$"98FF 0100 0083 FF80 0086 FF00 0098 FF01"            
-	$"0000 83FF 8000 86FF 0000 98FF 0100 0083"            
-	$"FF80 0086 FF00 0098 FF01 0000 83FF 8000"            
-	$"86FF 0000 98FF 0100 0083 FF80 0086 FF00"            
-	$"0098 FF01 0000 83FF 8000 86FF 0000 98FF"            
-	$"0100 0083 FF80 0086 FF00 0098 FF01 0000"            
-	$"83FF 8000 86FF 0000 98FF 0100 0083 FF80"            
-	$"0086 FF00 0098 FF01 0000 83FF 8000 86FF"            
-	$"0000 98FF 0100 0083 FF80 0086 FF9B 0083"            
-	$"FF80 0086 FF9B 0083 FF80 0086 FF00 008F"            
-	$"FF88 0083 FF80 0086 FF00 008F FF88 0083"            
-	$"FF80 0086 FF00 008F FF88 0083 FF80 0086"            
-	$"FF00 008F FF88 0083 FF80 0086 FF00 008F"            
-	$"FF88 0083 FF80 0086 FF00 008F FF88 0083"            
-	$"FF80 0086 FF00 008F FF88 0083 FF80 0086"            
-	$"FF00 008F FF88 0083 FF80 0086 FF00 008F"            
-	$"FF88 0083 FFAE 00E9 00A0 FF8A 00A0 FF8A"            
-	$"00A0 FF8A 00A0 FF8A 00A0 FF8A 00A0 FF8A"            
-	$"00A0 FF8A 00A0 FF8A 00A0 FF8A 00A0 FFE0"            
-	$"0086 FF00 0098 FF88 0086 FF00 0098 FF88"            
-	$"0086 FF00 0098 FF88 0086 FF00 0098 FF88"            
-	$"0086 FF00 0098 FF88 0086 FF00 0098 FF88"            
-	$"0086 FF00 0098 FF88 0086 FF00 0098 FF88"            
-	$"0086 FF00 0098 FF88 0086 FF00 0098 FF01"            
-	$"0000 83FF 8000 86FF 0000 98FF 0100 0083"            
-	$"FF80 0086 FF00 0098 FF01 0000 83FF 8000"            
-	$"86FF 0000 98FF 0100 0083 FF80 0086 FF00"            
-	$"0098 FF01 0000 83FF 8000 86FF 0000 98FF"            
-	$"0100 0083 FF80 0086 FF00 0098 FF01 0000"            
-	$"83FF 8000 86FF 0000 98FF 0100 0083 FF80"            
-	$"0086 FF00 0098 FF01 0000 83FF 8000 86FF"            
-	$"0000 98FF 0100 0083 FF80 0086 FF00 0098"            
-	$"FF01 0000 83FF 8000 86FF 0000 98FF 0100"            
-	$"0083 FF80 0086 FF00 0098 FF01 0000 83FF"            
-	$"8000 86FF 9B00 83FF 8000 86FF 9B00 83FF"            
-	$"8000 86FF 0000 8FFF 0100 0084 7B01 0000"            
-	$"83FF 8000 86FF 0000 8FFF 0100 0084 7B01"            
-	$"0000 83FF 8000 86FF 0000 8FFF 0100 0084"            
-	$"7B01 0000 83FF 8000 86FF 0000 8FFF 0100"            
-	$"0084 7B01 0000 83FF 8000 86FF 0000 8FFF"            
-	$"0100 0084 7B01 0000 83FF 8000 86FF 0000"            
-	$"8FFF 0100 0084 7B01 0000 83FF 8000 86FF"            
-	$"0000 8FFF 0100 0084 7B01 0000 83FF 8000"            
-	$"86FF 0000 8FFF 0100 0084 7B01 0000 83FF"            
-	$"8000 86FF 0000 8FFF 0100 0084 7B01 0000"            
-	$"83FF AE00 E900 A0FF 8A00 A0FF 8A00 A0FF"            
-	$"8A00 A0FF 8A00 A0FF 8A00 A0FF 8A00 A0FF"            
-	$"8A00 A0FF 8A00 A0FF 8A00 A0FF E000 86FF"            
-	$"0000 98FF 0100 0083 FF80 0086 FF00 0098"            
-	$"FF01 0000 83FF 8000 86FF 0000 98FF 0100"            
-	$"0083 FF80 0086 FF00 0098 FF01 0000 83FF"            
-	$"8000 86FF 0000 98FF 0100 0083 FF80 0086"            
-	$"FF00 0098 FF01 0000 83FF 8000 86FF 0000"            
-	$"98FF 0100 0083 FF80 0086 FF00 0098 FF88"            
-	$"0086 FF00 0098 FF88 0086 FF00 0098 FF01"            
-	$"0000 83FF 8000 86FF 0000 98FF 0100 0083"            
-	$"FF80 0086 FF00 0098 FF01 0000 83FF 8000"            
-	$"86FF 0000 98FF 0100 0083 FF80 0086 FF00"            
-	$"0098 FF01 0000 83FF 8000 86FF 0000 98FF"            
-	$"0100 0083 FF80 0086 FF00 0098 FF01 0000"            
-	$"83FF 8000 86FF 0000 98FF 0100 0083 FF80"            
-	$"0086 FF00 0098 FF01 0000 83FF 8000 86FF"            
-	$"0000 98FF 0100 0083 FF80 0086 FF00 0098"            
-	$"FF01 0000 83FF 8000 86FF 0000 98FF 0100"            
-	$"0083 FF80 0086 FF00 0098 FF01 0000 83FF"            
-	$"8000 86FF 9B00 83FF 8000 86FF 9B00 83FF"            
-	$"8000 86FF 9B00 83FF 8000 86FF 9B00 83FF"            
-	$"8000 86FF 9B00 83FF 8000 86FF 9B00 83FF"            
-	$"8000 86FF 9B00 83FF 8000 86FF 9B00 83FF"            
-	$"8000 86FF 9B00 83FF 8000 86FF 9B00 83FF"            
-	$"8000 86FF 9B00 83FF AE00 6838 6D6B 0000"            
-	$"0908 FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF 6963 7323 0000 0048 F557 D001 700E"            
-	$"E024 9A9B 0175 9299 0162 923E 0001 9004"            
-	$"0000 9BBC 102C 8434 5AFD FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF 6963 7334 0000"            
-	$"0088 AA3F DDDD DDDD DDAE A333 0000 0000"            
-	$"0C3E 333A 0000 000C DBEC A333 0000 0CBC"            
-	$"2A00 EDDF DDDB D2CB ECFF D00D 00CD BBBA"            
-	$"B2D6 D00D 00B2 DDBB DCCB D00D 00D4 D2D2"            
-	$"CC2D D00D 00BD CCE5 3EEC D00D 0C00 0000"            
-	$"CBCB D00D 0000 0000 0D0D D00D 0000 0000"            
-	$"0D00 D00D ABAB ABAF 9F00 D00D 1111 11B8"            
-	$"9900 D00D 1111 1189 9F00 EDDA 8291 ABAF"            
-	$"9FDD 6963 7338 0000 0108 DEDC DBB3 F9FA"            
-	$"F9FA F9FA F9FA F9FA 8FFB DC23 23DB 0000"            
-	$"0000 0000 0000 0032 6A88 DB23 23DC 0000"            
-	$"0000 0000 F52B 3357 882B DC23 23DB 0000"            
-	$"0000 F608 3234 33AD F600 FCFA F9AC F9FA"            
-	$"F95D 0E5D 3457 8833 F1F2 FA00 00F9 0000"            
-	$"0733 825E 33AD 6432 33EF F900 00FA 0000"            
-	$"5D5E 5D33 825D 3332 2C57 FA00 00F9 0000"            
-	$"5739 5D64 5D33 3232 335C F900 00FA 00F5"            
-	$"5D57 F732 828E 8988 88F9 FA00 00F9 00F6"            
-	$"F600 0000 F5F6 4F5D F85D F900 00FA 0000"            
-	$"0000 0000 0000 00FA 0056 FA00 00FA 0000"            
-	$"0000 0000 0000 00F9 0000 F900 00F9 8359"            
-	$"8359 8359 ADD1 E8EA 0000 FA00 00FA 0505"            
-	$"0505 0505 5FE5 E6E8 0000 F900 00F9 0505"            
-	$"0505 0505 7DE6 E6D1 0000 ACF9 FAFC 8359"            
-	$"8359 8359 ADD1 E8E9 FAF9 6973 3332 0000"            
-	$"026C 0340 8080 4087 8005 5E51 80FF FF80"            
-	$"86FF 06AA B457 80FF FF80 83FF 09F1 E1C1"            
-	$"A94E D180 FFFF 8081 FF0B ECE6 DFBE BA4D"            
-	$"D1FF 4080 8040 8080 4FA6 DCAD B3BC 65B4"            
-	$"1900 80FF FF80 FFFF E9CF 87A7 B848 8FC6"            
-	$"B719 80FF FF80 FFFF B58B A0C9 7D8B CFD4"            
-	$"D89E 80FF FF80 FFFF ADAC A280 A5BE DBD4"            
-	$"C79A 80FF FF80 FFF2 8F8E C5B4 7655 516E"            
-	$"7A82 80FF FF80 FFD9 D880 FF09 F7DB C479"            
-	$"B280 80FF FF80 86FF 0680 FF9A 80FF FF80"            
-	$"86FF 0580 FFFF 80FF FF84 8000 4080 0005"            
-	$"FFFF 80FF FF80 83FF 0080 8000 05FF FF80"            
-	$"FFFF 8083 FF00 8080 0005 FFFF 4080 8040"            
-	$"8380 0040 8000 0180 8081 0087 8001 0151"            
-	$"8100 86FF 028B 0129 8100 83FF 05E2 D0B3"            
-	$"943A D181 0081 FF0B D9BA B19E 952F D1FF"            
-	$"4080 8040 8080 4F85 A369 8B98 378E 1900"            
-	$"80FF FF80 FFFF D491 417F 9326 4893 9219"            
-	$"80FF FF80 FFFF 774C 6C96 5E5A 94A0 A986"            
-	$"80FF FF80 FFFF 9D73 7346 6589 ABA3 9280"            
-	$"80FF FF80 FFED 6F7A BAA2 5028 253F 4A6A"            
-	$"80FF FF80 FFD9 D880 FF09 F5D2 B569 9E73"            
-	$"80FF FF80 86FF 0680 FF9A 80FF FF80 86FF"            
-	$"0580 FFFF 80FF FF84 8009 403E 3E1F FFFF"            
-	$"80FF FF80 83FF 0980 7B7B 3EFF FF80 FFFF"            
-	$"8083 FF09 807B 7B3E FFFF 4080 8040 8380"            
-	$"0540 3E3E 1F80 8081 0087 8001 1551 8100"            
-	$"86FF 0290 202D 8100 83FF 05D9 C97F 6039"            
-	$"D181 0081 FF0B CEA2 9759 4927 D1FF 4080"            
-	$"8040 8080 4F6F 8657 474C 2976 5980 80FF"            
-	$"FF80 FFFF C676 343F 4B1D 3977 7ED8 80FF"            
-	$"FF80 FFFF 6540 536B 4C4E 7B85 8D79 80FF"            
-	$"FF80 FFFF 8654 6638 5072 908A 7974 80FF"            
-	$"FF80 FFEA 5D63 BB9E 4A20 1F36 3E65 80FF"            
-	$"FF80 FFD9 D880 FF09 F4D0 B266 9B6F 80FF"            
-	$"FF80 86FF 0680 FF9A 80FF FF80 86FF 0680"            
-	$"FFFF 80FF FF80 8700 05FF FF80 FFFF 8087"            
-	$"0005 FFFF 80FF FF80 8700 05FF FF40 8080"            
-	$"4087 0001 8080 7338 6D6B 0000 0108 FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF 6963"            
-	$"6D23 0000 0038 F24B D007 B028 5557 81B1"            
-	$"124A 8236 1005 8000 1ABD 8030 557D FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF 6963 6D34 0000 0068 A33F"            
-	$"CDCC DCCD CAAE A333 0000 0000 CDEE 333A"            
-	$"0000 CCCB 2E0D EDCE CDCD DB2B DB6F D00D"            
-	$"00C2 BBEA BCD5 D00D 00BD 2D2D CC2D D00D"            
-	$"0CDC CCDB BADC D00D 0000 0000 0DCE D00D"            
-	$"0000 0000 0D0D D00D B1BB 1BF9 FD0D D00D"            
-	$"1111 1199 8D0D ECDB BB1B B1F9 FECE 6963"            
-	$"6D38 0000 00C8 DDDA DADD F8F8 F8F8 F8F8"            
-	$"F8F8 F864 8EAC DB23 23DC 0000 0000 0000"            
-	$"0000 F85C 89FB DC23 23DB 0000 0000 F608"            
-	$"3234 5E82 2AFA FBF8 F8FB F8F8 5633 335D"            
-	$"3488 575D EFF1 F900 00FA 0000 2C63 5E34"            
-	$"FD64 5D2C 33AA FA00 00F9 0000 395E 5D5D"            
-	$"5733 0832 33F9 F900 00FA 00F6 F92C 2B32"            
-	$"5D88 8888 88F8 FA00 00F9 0000 0000 0000"            
-	$"0000 00FA F781 F900 00FA 0000 0000 0000"            
-	$"0000 00F9 00F9 FA00 00F9 3559 5335 5959"            
-	$"E9E7 E7FA 00FA F900 00FA 0505 0505 0505"            
-	$"E8E6 E6F9 00F9 FBF8 F8FB 592F 5959 2F59"            
-	$"E9E7 E7FB F8FB 6974 3332 0000 245A 0000"            
-	$"0000 FF00 FF00 FF00 FB00 95FF 8100 C9FF"            
-	$"818E 81EA 8144 81FF 8500 95FF 8100 C9FF"            
-	$"818E 81EA 8144 81FF 8500 95FF 8100 C9FF"            
-	$"818E 81EA 8144 81FF 8500 95FF 8100 C9FF"            
-	$"818E 81EA 8144 81FF 8500 95FF 8100 C5FF"            
-	$"818F 81EA 81AB 818E 8144 8500 95FF 8100"            
-	$"C5FF 818F 81EA 81AB 818E 8144 8500 95FF"            
-	$"8100 C5FF 818F 81EA 81AB 818E 8144 8500"            
-	$"95FF 8100 C5FF 818F 81EA 81AB 818E 8144"            
-	$"8500 95FF 8100 C1FF 815A 81BE 81AB 818E"            
-	$"8145 8144 8500 95FF 8100 C1FF 815A 81BE"            
-	$"81AB 818E 8145 8144 8500 95FF 8100 C1FF"            
-	$"815A 81BE 81AB 818E 8145 8144 8500 95FF"            
-	$"8100 C1FF 815A 81BE 81AB 818E 8145 8144"            
-	$"8500 95FF 8100 BDFF 8164 81FE 8191 8169"            
-	$"8145 8144 81FF 8500 95FF 8100 BDFF 8164"            
-	$"81FE 8191 8169 8145 8144 81FF 8500 95FF"            
-	$"8100 BDFF 8164 81FE 8191 8169 8145 8144"            
-	$"81FF 8500 95FF 8100 BDFF 8164 81FE 8191"            
-	$"8169 8145 8144 81FF 8500 95FF 8100 A9FF"            
-	$"81E2 81E1 81CB 81B8 81A1 81FE 81B1 8162"            
-	$"8145 8144 85FF 8500 95FF 8100 A9FF 81E2"            
-	$"81E1 81CB 81B8 81A1 81FE 81B1 8162 8145"            
-	$"8144 85FF 8500 95FF 8100 A9FF 81E2 81E1"            
-	$"81CB 81B8 81A1 81FE 81B1 8162 8145 8144"            
-	$"85FF 8500 95FF 8100 A9FF 81E2 81E1 81CB"            
-	$"81B8 81A1 81FE 81B1 8162 8145 8144 85FF"            
-	$"8500 95FF 8100 A1FF 81E2 81E6 81E9 81EF"            
-	$"81B8 819F 81FE 81C1 8162 8145 8144 89FF"            
-	$"8500 95FF 8100 A1FF 81E2 81E6 81E9 81EF"            
-	$"81B8 819F 81FE 81C1 8162 8145 8144 89FF"            
-	$"8500 95FF 8100 A1FF 81E2 81E6 81E9 81EF"            
-	$"81B8 819F 81FE 81C1 8162 8145 8144 89FF"            
-	$"8500 95FF 8100 A1FF 81E2 81E6 81E9 81EF"            
-	$"81B8 819F 81FE 81C1 8162 8145 8144 89FF"            
-	$"8500 95FF 8100 9DFF 81D9 81E4 81E9 81EB"            
-	$"81B8 819F 81FE 81C3 8162 8145 8144 8DFF"            
-	$"8500 95FF 8100 9DFF 81D9 81E4 81E9 81EB"            
-	$"81B8 819F 81FE 81C3 8162 8145 8144 8DFF"            
-	$"8500 95FF 8100 9DFF 81D9 81E4 81E9 81EB"            
-	$"81B8 819F 81FE 81C3 8162 8145 8144 8DFF"            
-	$"8500 95FF 8100 9DFF 81D9 81E4 81E9 81EB"            
-	$"81B8 819F 81FE 81C3 8162 8145 8144 8DFF"            
-	$"BD00 81D7 81E3 81DE 81BA 818F 81A2 81FE"            
-	$"81C6 8162 8145 81D0 8161 CD00 81D7 81E3"            
-	$"81DE 81BA 818F 81A2 81FE 81C6 8162 8145"            
-	$"81D0 8161 CD00 81D7 81E3 81DE 81BA 818F"            
-	$"81A2 81FE 81C6 8162 8145 81D0 8161 CD00"            
-	$"81D7 81E3 81DE 81BA 818F 81A2 81FE 81C6"            
-	$"8162 8145 81D0 8161 9500 95FF 8100 95FF"            
-	$"81DA 81E5 81D4 81B3 8167 819A 81FE 81C8"            
-	$"8162 8145 81A5 81C9 81D3 8161 9100 95FF"            
-	$"8100 95FF 81DA 81E5 81D4 81B3 8167 819A"            
-	$"81FE 81C8 8162 8145 81A5 81C9 81D3 8161"            
-	$"9100 95FF 8100 95FF 81DA 81E5 81D4 81B3"            
-	$"8167 819A 81FE 81C8 8162 8145 81A5 81C9"            
-	$"81D3 8161 9100 95FF 8100 95FF 81DA 81E5"            
-	$"81D4 81B3 8167 819A 81FE 81C8 8162 8145"            
-	$"81A5 81C9 81D3 8161 9100 95FF 8100 91FF"            
-	$"81DC 81E2 81D4 81A4 8169 819E 81F2 81C9"            
-	$"8162 8145 8179 819B 81C2 81D2 81D0 8161"            
-	$"8D00 95FF 8100 91FF 81DC 81E2 81D4 81A4"            
-	$"8169 819E 81F2 81C9 8162 8145 8179 819B"            
-	$"81C2 81D2 81D0 8161 8D00 95FF 8100 91FF"            
-	$"81DC 81E2 81D4 81A4 8169 819E 81F2 81C9"            
-	$"8162 8145 8179 819B 81C2 81D2 81D0 8161"            
-	$"8D00 95FF 8100 91FF 81DC 81E2 81D4 81A4"            
-	$"8169 819E 81F2 81C9 8162 8145 8179 819B"            
-	$"81C2 81D2 81D0 8161 8D00 95FF 8100 8DFF"            
-	$"81E8 81DD 81D2 81B3 816A 81A0 81F3 81C7"            
-	$"815C 811B 815D 8189 819C 81B5 81CD 81D5"            
-	$"81D3 8161 8900 95FF 8100 8DFF 81E8 81DD"            
-	$"81D2 81B3 816A 81A0 81F3 81C7 815C 811B"            
-	$"815D 8189 819C 81B5 81CD 81D5 81D3 8161"            
-	$"8900 95FF 8100 8DFF 81E8 81DD 81D2 81B3"            
-	$"816A 81A0 81F3 81C7 815C 811B 815D 8189"            
-	$"819C 81B5 81CD 81D5 81D3 8161 8900 95FF"            
-	$"8100 8DFF 81E8 81DD 81D2 81B3 816A 81A0"            
-	$"81F3 81C7 815C 811B 815D 8189 819C 81B5"            
-	$"81CD 81D5 81D3 8161 8900 95FF 8100 8DFF"            
-	$"81DF 81C2 819C 8165 817A 81DE 81B3 816A"            
-	$"810D 8120 8182 81AD 81BD 81C3 81D1 81D5"            
-	$"81D7 81D0 8169 8188 8100 95FF 8100 8DFF"            
-	$"81DF 81C2 819C 8165 817A 81DE 81B3 816A"            
-	$"810D 8120 8182 81AD 81BD 81C3 81D1 81D5"            
-	$"81D7 81D0 8169 8188 8100 95FF 8100 8DFF"            
-	$"81DF 81C2 819C 8165 817A 81DE 81B3 816A"            
-	$"810D 8120 8182 81AD 81BD 81C3 81D1 81D5"            
-	$"81D7 81D0 8169 8188 8100 95FF 8100 8DFF"            
-	$"81DF 81C2 819C 8165 817A 81DE 81B3 816A"            
-	$"810D 8120 8182 81AD 81BD 81C3 81D1 81D5"            
-	$"81D7 81D0 8169 8188 8100 95FF 8100 8DFF"            
-	$"81AE 8181 8170 81B9 81C5 81C1 81CE 81C7"            
-	$"81B2 81AF 81DA 81E7 81EA 81E1 81D9 81D8"            
-	$"81D9 81D4 8169 8186 8100 95FF 8100 8DFF"            
-	$"81AE 8181 8170 81B9 81C5 81C1 81CE 81C7"            
-	$"81B2 81AF 81DA 81E7 81EA 81E1 81D9 81D8"            
-	$"81D9 81D4 8169 8186 8100 95FF 8100 8DFF"            
-	$"81AE 8181 8170 81B9 81C5 81C1 81CE 81C7"            
-	$"81B2 81AF 81DA 81E7 81EA 81E1 81D9 81D8"            
-	$"81D9 81D4 8169 8186 8100 95FF 8100 8DFF"            
-	$"81AE 8181 8170 81B9 81C5 81C1 81CE 81C7"            
-	$"81B2 81AF 81DA 81E7 81EA 81E1 81D9 81D8"            
-	$"81D9 81D4 8169 8186 8100 95FF 8100 8DFF"            
-	$"81EE 815C 8175 81EB 81D4 819F 81B3 81C4"            
-	$"81DE 81E7 81EC 81EB 81E3 81E4 81DD 81D6"            
-	$"81CE 81C6 8172 819C 8100 95FF 8100 8DFF"            
-	$"81EE 815C 8175 81EB 81D4 819F 81B3 81C4"            
-	$"81DE 81E7 81EC 81EB 81E3 81E4 81DD 81D6"            
-	$"81CE 81C6 8172 819C 8100 95FF 8100 8DFF"            
-	$"81EE 815C 8175 81EB 81D4 819F 81B3 81C4"            
-	$"81DE 81E7 81EC 81EB 81E3 81E4 81DD 81D6"            
-	$"81CE 81C6 8172 819C 8100 95FF 8100 8DFF"            
-	$"81EE 815C 8175 81EB 81D4 819F 81B3 81C4"            
-	$"81DE 81E7 81EC 81EB 81E3 81E4 81DD 81D6"            
-	$"81CE 81C6 8172 819C 8100 95FF 8100 8DFF"            
-	$"81C6 81A2 81C7 8188 816F 814D 8161 816F"            
-	$"817F 8190 8194 81C1 81DB 81CC 81C1 81C0"            
-	$"81B7 81AB 8182 81A2 8100 95FF 8100 8DFF"            
-	$"81C6 81A2 81C7 8188 816F 814D 8161 816F"            
-	$"817F 8190 8194 81C1 81DB 81CC 81C1 81C0"            
-	$"81B7 81AB 8182 81A2 8100 95FF 8100 8DFF"            
-	$"81C6 81A2 81C7 8188 816F 814D 8161 816F"            
-	$"817F 8190 8194 81C1 81DB 81CC 81C1 81C0"            
-	$"81B7 81AB 8182 81A2 8100 95FF 8100 8DFF"            
-	$"81C6 81A2 81C7 8188 816F 814D 8161 816F"            
-	$"817F 8190 8194 81C1 81DB 81CC 81C1 81C0"            
-	$"81B7 81AB 8182 81A2 8100 95FF 8100 8DFF"            
-	$"8199 81BF 81AE 815C 818A 8185 816D 8150"            
-	$"814E 815A 815B 8155 816C 818F 818B 818C"            
-	$"8195 8188 818F 81A4 8100 95FF 8100 8DFF"            
-	$"8199 81BF 81AE 815C 818A 8185 816D 8150"            
-	$"814E 815A 815B 8155 816C 818F 818B 818C"            
-	$"8195 8188 818F 81A4 8100 95FF 8100 8DFF"            
-	$"8199 81BF 81AE 815C 818A 8185 816D 8150"            
-	$"814E 815A 815B 8155 816C 818F 818B 818C"            
-	$"8195 8188 818F 81A4 8100 95FF 8100 8DFF"            
-	$"8199 81BF 81AE 815C 818A 8185 816D 8150"            
-	$"814E 815A 815B 8155 816C 818F 818B 818C"            
-	$"8195 8188 818F 81A4 8100 95FF 8100 89FF"            
-	$"81CA 8166 817C 818C 819F 85FF 81DC 81B5"            
-	$"8182 8151 814A 8143 813F 814B 8153 815E"            
-	$"8168 8160 818F 81A6 8100 95FF 8100 89FF"            
-	$"81CA 8166 817C 818C 819F 85FF 81DC 81B5"            
-	$"8182 8151 814A 8143 813F 814B 8153 815E"            
-	$"8168 8160 818F 81A6 8100 95FF 8100 89FF"            
-	$"81CA 8166 817C 818C 819F 85FF 81DC 81B5"            
-	$"8182 8151 814A 8143 813F 814B 8153 815E"            
-	$"8168 8160 818F 81A6 8100 95FF 8100 89FF"            
-	$"81CA 8166 817C 818C 819F 85FF 81DC 81B5"            
-	$"8182 8151 814A 8143 813F 814B 8153 815E"            
-	$"8168 8160 818F 81A6 8100 95FF 8100 89FF"            
-	$"8166 819F 81C2 95FF 81DC 81C3 81A8 818D"            
-	$"8184 817B 8168 816D 815A 815E 818F 81AF"            
-	$"8100 95FF 8100 89FF 8166 819F 81C2 95FF"            
-	$"81DC 81C3 81A8 818D 8184 817B 8168 816D"            
-	$"815A 815E 818F 81AF 8100 95FF 8100 89FF"            
-	$"8166 819F 81C2 95FF 81DC 81C3 81A8 818D"            
-	$"8184 817B 8168 816D 815A 815E 818F 81AF"            
-	$"8100 95FF 8100 89FF 8166 819F 81C2 95FF"            
-	$"81DC 81C3 81A8 818D 8184 817B 8168 816D"            
-	$"815A 815E 818F 81AF 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8181 818F 81B5 8100 95FF 8100"            
-	$"C5FF 8100 85FF 8181 818F 81B5 8100 95FF"            
-	$"8100 C5FF 8100 85FF 8181 818F 81B5 8100"            
-	$"95FF 8100 C5FF 8100 85FF 8181 818F 81B5"            
-	$"8100 95FF 8100 C5FF 8100 85FF 8122 8544"            
-	$"8100 95FF 8100 C5FF 8100 85FF 8122 8544"            
-	$"8100 95FF 8100 C5FF 8100 85FF 8122 8544"            
-	$"8100 95FF 8100 C5FF 8100 85FF 8122 8544"            
-	$"8100 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF 8100 ADFF 9900 8DFF 8500 95FF"            
-	$"8100 ADFF 9900 8DFF 8500 95FF 8100 ADFF"            
-	$"9900 8DFF 8500 95FF 8100 ADFF 9900 8DFF"            
-	$"8500 95FF 8100 ADFF 9900 8DFF 8500 95FF"            
-	$"8100 ADFF 9900 8DFF 8500 95FF 8100 ADFF"            
-	$"9900 8DFF 8500 95FF 8100 ADFF 9900 8DFF"            
-	$"8500 95FF 8100 ADFF 9900 8DFF 8500 95FF"            
-	$"8100 ADFF 9900 8DFF 8500 95FF 8100 ADFF"            
-	$"9900 8DFF 8500 95FF 8100 ADFF 9900 8DFF"            
-	$"8500 95FF 8100 ADFF 9900 8DFF 8500 95FF"            
-	$"8100 ADFF 9900 8DFF 8500 95FF 8100 ADFF"            
-	$"9900 8DFF 8500 95FF 8100 ADFF 9900 8DFF"            
-	$"8500 95FF 8100 ADFF 9900 8DFF 8500 95FF"            
-	$"8100 ADFF 9900 8DFF 8500 95FF 8100 ADFF"            
-	$"9900 8DFF 8500 95FF 8100 ADFF 9900 8DFF"            
-	$"8500 95FF 8100 ADFF 9900 8DFF 8500 95FF"            
-	$"8100 ADFF 9900 8DFF 8500 95FF 8100 ADFF"            
-	$"9900 8DFF 8500 95FF 8100 ADFF 9900 8DFF"            
-	$"FF00 FF00 FF00 FB00 FF00 FF00 FF00 FF00"            
-	$"9500 C9FF 8101 8100 8144 81FF A100 C9FF"            
-	$"8101 8100 8144 81FF A100 C9FF 8101 8100"            
-	$"8144 81FF A100 C9FF 8101 8100 8144 81FF"            
-	$"A100 C5FF 8109 8500 8101 8144 A100 C5FF"            
-	$"8109 8500 8101 8144 A100 C5FF 8109 8500"            
-	$"8101 8144 A100 C5FF 8109 8500 8101 8144"            
-	$"A100 C1FF 8167 81BC 8100 8101 8119 8144"            
-	$"A100 C1FF 8167 81BC 8100 8101 8119 8144"            
-	$"A100 C1FF 8167 81BC 8100 8101 8119 8144"            
-	$"A100 C1FF 8167 81BC 8100 8101 8119 8144"            
-	$"A100 BDFF 8166 81E4 819D 8171 8119 8144"            
-	$"81FF A100 BDFF 8166 81E4 819D 8171 8119"            
-	$"8144 81FF A100 BDFF 8166 81E4 819D 8171"            
-	$"8119 8144 81FF A100 BDFF 8166 81E4 819D"            
-	$"8171 8119 8144 81FF A100 A9FF 81C9 81BE"            
-	$"81A7 819B 8182 81E4 8189 8144 8119 8144"            
-	$"85FF A100 A9FF 81C9 81BE 81A7 819B 8182"            
-	$"81E4 8189 8144 8119 8144 85FF A100 A9FF"            
-	$"81C9 81BE 81A7 819B 8182 81E4 8189 8144"            
-	$"8119 8144 85FF A100 A9FF 81C9 81BE 81A7"            
-	$"819B 8182 81E4 8189 8144 8119 8144 85FF"            
-	$"A100 A1FF 81CF 81B6 81B9 81BB 819B 8179"            
-	$"81E4 8193 8144 8119 8144 89FF A100 A1FF"            
-	$"81CF 81B6 81B9 81BB 819B 8179 81E4 8193"            
-	$"8144 8119 8144 89FF A100 A1FF 81CF 81B6"            
-	$"81B9 81BB 819B 8179 81E4 8193 8144 8119"            
-	$"8144 89FF A100 A1FF 81CF 81B6 81B9 81BB"            
-	$"819B 8179 81E4 8193 8144 8119 8144 89FF"            
-	$"A100 9DFF 81B2 81AC 81B6 81B5 819B 817D"            
-	$"81E4 8197 8144 8119 8144 8DFF A100 9DFF"            
-	$"81B2 81AC 81B6 81B5 819B 817D 81E4 8197"            
-	$"8144 8119 8144 8DFF A100 9DFF 81B2 81AC"            
-	$"81B6 81B5 819B 817D 81E4 8197 8144 8119"            
-	$"8144 8DFF A100 9DFF 81B2 81AC 81B6 81B5"            
-	$"819B 817D 81E4 8197 8144 8119 8144 8DFF"            
-	$"BD00 85AF 81A0 816E 8151 8180 81E4 819A"            
-	$"8144 8119 819B 8162 CD00 85AF 81A0 816E"            
-	$"8151 8180 81E4 819A 8144 8119 819B 8162"            
-	$"CD00 85AF 81A0 816E 8151 8180 81E4 819A"            
-	$"8144 8119 819B 8162 CD00 85AF 81A0 816E"            
-	$"8151 8180 81E4 819A 8144 8119 819B 8162"            
-	$"9500 95FF 8100 95FF 81B2 81B3 8197 8168"            
-	$"812E 8176 81E4 819D 8144 8119 8163 8196"            
-	$"81A1 8162 9100 95FF 8100 95FF 81B2 81B3"            
-	$"8197 8168 812E 8176 81E4 819D 8144 8119"            
-	$"8163 8196 81A1 8162 9100 95FF 8100 95FF"            
-	$"81B2 81B3 8197 8168 812E 8176 81E4 819D"            
-	$"8144 8119 8163 8196 81A1 8162 9100 95FF"            
-	$"8100 95FF 81B2 81B3 8197 8168 812E 8176"            
-	$"81E4 819D 8144 8119 8163 8196 81A1 8162"            
-	$"9100 95FF 8100 91FF 81BE 81B0 8199 8153"            
-	$"8130 817E 81CF 819C 8146 8119 8134 8159"            
-	$"818B 81A6 819C 8162 8D00 95FF 8100 91FF"            
-	$"81BE 81B0 8199 8153 8130 817E 81CF 819C"            
-	$"8146 8119 8134 8159 818B 81A6 819C 8162"            
-	$"8D00 95FF 8100 91FF 81BE 81B0 8199 8153"            
-	$"8130 817E 81CF 819C 8146 8119 8134 8159"            
-	$"818B 81A6 819C 8162 8D00 95FF 8100 91FF"            
-	$"81BE 81B0 8199 8153 8130 817E 81CF 819C"            
-	$"8146 8119 8134 8159 818B 81A6 819C 8162"            
-	$"8D00 95FF 8100 8DFF 81E0 81B1 8191 8167"            
-	$"812E 817E 81D0 819A 8144 810E 812A 813C"            
-	$"8155 817B 81A0 81A8 81A2 8162 8900 95FF"            
-	$"8100 8DFF 81E0 81B1 8191 8167 812E 817E"            
-	$"81D0 819A 8144 810E 812A 813C 8155 817B"            
-	$"81A0 81A8 81A2 8162 8900 95FF 8100 8DFF"            
-	$"81E0 81B1 8191 8167 812E 817E 81D0 819A"            
-	$"8144 810E 812A 813C 8155 817B 81A0 81A8"            
-	$"81A2 8162 8900 95FF 8100 8DFF 81E0 81B1"            
-	$"8191 8167 812E 817E 81D0 819A 8144 810E"            
-	$"812A 813C 8155 817B 81A0 81A8 81A2 8162"            
-	$"8900 95FF 8100 8DFF 81C5 8176 814B 812D"            
-	$"8151 81B5 8186 814F 8104 810E 8134 8161"            
-	$"8181 818A 819F 81A8 81A7 81A1 8168 817C"            
-	$"8100 95FF 8100 8DFF 81C5 8176 814B 812D"            
-	$"8151 81B5 8186 814F 8104 810E 8134 8161"            
-	$"8181 818A 819F 81A8 81A7 81A1 8168 817C"            
-	$"8100 95FF 8100 8DFF 81C5 8176 814B 812D"            
-	$"8151 81B5 8186 814F 8104 810E 8134 8161"            
-	$"8181 818A 819F 81A8 81A7 81A1 8168 817C"            
-	$"8100 95FF 8100 8DFF 81C5 8176 814B 812D"            
-	$"8151 81B5 8186 814F 8104 810E 8134 8161"            
-	$"8181 818A 819F 81A8 81A7 81A1 8168 817C"            
-	$"8100 95FF 8100 8DFF 8172 812D 813A 817D"            
-	$"8186 8183 8199 8198 818C 8185 81A0 81B3"            
-	$"81B9 81AE 81A9 85AA 81A5 8168 817E 8100"            
-	$"95FF 8100 8DFF 8172 812D 813A 817D 8186"            
-	$"8183 8199 8198 818C 8185 81A0 81B3 81B9"            
-	$"81AE 81A9 85AA 81A5 8168 817E 8100 95FF"            
-	$"8100 8DFF 8172 812D 813A 817D 8186 8183"            
-	$"8199 8198 818C 8185 81A0 81B3 81B9 81AE"            
-	$"81A9 85AA 81A5 8168 817E 8100 95FF 8100"            
-	$"8DFF 8172 812D 813A 817D 8186 8183 8199"            
-	$"8198 818C 8185 81A0 81B3 81B9 81AE 81A9"            
-	$"85AA 81A5 8168 817E 8100 95FF 8100 8DFF"            
-	$"81E8 8144 8138 81B3 81A9 8162 816F 817D"            
-	$"819D 81B2 81BE 81BC 81B5 81B7 81AF 81A5"            
-	$"819B 8195 8173 8192 8100 95FF 8100 8DFF"            
-	$"81E8 8144 8138 81B3 81A9 8162 816F 817D"            
-	$"819D 81B2 81BE 81BC 81B5 81B7 81AF 81A5"            
-	$"819B 8195 8173 8192 8100 95FF 8100 8DFF"            
-	$"81E8 8144 8138 81B3 81A9 8162 816F 817D"            
-	$"819D 81B2 81BE 81BC 81B5 81B7 81AF 81A5"            
-	$"819B 8195 8173 8192 8100 95FF 8100 8DFF"            
-	$"81E8 8144 8138 81B3 81A9 8162 816F 817D"            
-	$"819D 81B2 81BE 81BC 81B5 81B7 81AF 81A5"            
-	$"819B 8195 8173 8192 8100 95FF 8100 8DFF"            
-	$"81C2 8183 819A 8144 813D 811E 8129 8134"            
-	$"8144 8155 815C 818E 81AC 819A 818B 8189"            
-	$"817D 8175 8182 819A 8100 95FF 8100 8DFF"            
-	$"81C2 8183 819A 8144 813D 811E 8129 8134"            
-	$"8144 8155 815C 818E 81AC 819A 818B 8189"            
-	$"817D 8175 8182 819A 8100 95FF 8100 8DFF"            
-	$"81C2 8183 819A 8144 813D 811E 8129 8134"            
-	$"8144 8155 815C 818E 81AC 819A 818B 8189"            
-	$"817D 8175 8182 819A 8100 95FF 8100 8DFF"            
-	$"81C2 8183 819A 8144 813D 811E 8129 8134"            
-	$"8144 8155 815C 818E 81AC 819A 818B 8189"            
-	$"817D 8175 8182 819A 8100 95FF 8100 8DFF"            
-	$"816E 818B 8180 8144 8174 816B 8145 8522"            
-	$"812F 8130 812E 8142 815C 8155 8158 8160"            
-	$"8155 818E 819E 8100 95FF 8100 8DFF 816E"            
-	$"818B 8180 8144 8174 816B 8145 8522 812F"            
-	$"8130 812E 8142 815C 8155 8158 8160 8155"            
-	$"818E 819E 8100 95FF 8100 8DFF 816E 818B"            
-	$"8180 8144 8174 816B 8145 8522 812F 8130"            
-	$"812E 8142 815C 8155 8158 8160 8155 818E"            
-	$"819E 8100 95FF 8100 8DFF 816E 818B 8180"            
-	$"8144 8174 816B 8145 8522 812F 8130 812E"            
-	$"8142 815C 8155 8158 8160 8155 818E 819E"            
-	$"8100 95FF 8100 89FF 81B4 8166 815A 8181"            
-	$"819F 85FF 81D6 819F 815B 8123 811B 8113"            
-	$"8110 8120 812B 8133 813C 8137 818E 81A0"            
-	$"8100 95FF 8100 89FF 81B4 8166 815A 8181"            
-	$"819F 85FF 81D6 819F 815B 8123 811B 8113"            
-	$"8110 8120 812B 8133 813C 8137 818E 81A0"            
-	$"8100 95FF 8100 89FF 81B4 8166 815A 8181"            
-	$"819F 85FF 81D6 819F 815B 8123 811B 8113"            
-	$"8110 8120 812B 8133 813C 8137 818E 81A0"            
-	$"8100 95FF 8100 89FF 81B4 8166 815A 8181"            
-	$"819F 85FF 81D6 819F 815B 8123 811B 8113"            
-	$"8110 8120 812B 8133 813C 8137 818E 81A0"            
-	$"8100 95FF 8100 89FF 8166 819F 81C2 95FF"            
-	$"81D6 81B6 8192 816F 8166 815B 8147 8149"            
-	$"8131 813B 818E 81A6 8100 95FF 8100 89FF"            
-	$"8166 819F 81C2 95FF 81D6 81B6 8192 816F"            
-	$"8166 815B 8147 8149 8131 813B 818E 81A6"            
-	$"8100 95FF 8100 89FF 8166 819F 81C2 95FF"            
-	$"81D6 81B6 8192 816F 8166 815B 8147 8149"            
-	$"8131 813B 818E 81A6 8100 95FF 8100 89FF"            
-	$"8166 819F 81C2 95FF 81D6 81B6 8192 816F"            
-	$"8166 815B 8147 8149 8131 813B 818E 81A6"            
-	$"8100 95FF 8100 C5FF 8100 85FF 8172 818E"            
-	$"81AB 8100 95FF 8100 C5FF 8100 85FF 8172"            
-	$"818E 81AB 8100 95FF 8100 C5FF 8100 85FF"            
-	$"8172 818E 81AB 8100 95FF 8100 C5FF 8100"            
-	$"85FF 8172 818E 81AB 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8122 8544 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8122 8544 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8122 8544 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8122 8544 8100 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF 8500 95FF 8100 ADFF"            
-	$"8100 917B 8100 8DFF FF00 FF00 FF00 FB00"            
-	$"FF00 FF00 FF00 FF00 9500 C9FF 810F 8143"            
-	$"8144 81FF A100 C9FF 810F 8143 8144 81FF"            
-	$"A100 C9FF 810F 8143 8144 81FF A100 C9FF"            
-	$"810F 8143 8144 81FF A100 C5FF 8117 8143"            
-	$"8116 810F 8144 A100 C5FF 8117 8143 8116"            
-	$"810F 8144 A100 C5FF 8117 8143 8116 810F"            
-	$"8144 A100 C5FF 8117 8143 8116 810F 8144"            
-	$"A100 C1FF 8165 81C4 8116 810F 811A 8144"            
-	$"A100 C1FF 8165 81C4 8116 810F 811A 8144"            
-	$"A100 C1FF 8165 81C4 8116 810F 811A 8144"            
-	$"A100 C1FF 8165 81C4 8116 810F 811A 8144"            
-	$"A100 BDFF 8155 8167 81A7 816C 811A 8144"            
-	$"81FF A100 BDFF 8155 8167 81A7 816C 811A"            
-	$"8144 81FF A100 BDFF 8155 8167 81A7 816C"            
-	$"811A 8144 81FF A100 BDFF 8155 8167 81A7"            
-	$"816C 811A 8144 81FF A100 A9FF 81BC 81A9"            
-	$"8192 8193 813E 8167 814D 8123 811A 8144"            
-	$"85FF A100 A9FF 81BC 81A9 8192 8193 813E"            
-	$"8167 814D 8123 811A 8144 85FF A100 A9FF"            
-	$"81BC 81A9 8192 8193 813E 8167 814D 8123"            
-	$"811A 8144 85FF A100 A9FF 81BC 81A9 8192"            
-	$"8193 813E 8167 814D 8123 811A 8144 85FF"            
-	$"A100 A1FF 81C6 819A 8598 8193 8131 8167"            
-	$"814A 8123 811A 8144 89FF A100 A1FF 81C6"            
-	$"819A 8598 8193 8131 8167 814A 8123 811A"            
-	$"8144 89FF A100 A1FF 81C6 819A 8598 8193"            
-	$"8131 8167 814A 8123 811A 8144 89FF A100"            
-	$"A1FF 81C6 819A 8598 8193 8131 8167 814A"            
-	$"8123 811A 8144 89FF A100 9DFF 819C 818E"            
-	$"8199 8195 8193 8137 8167 814F 8123 811A"            
-	$"8144 8DFF A100 9DFF 819C 818E 8199 8195"            
-	$"8193 8137 8167 814F 8123 811A 8144 8DFF"            
-	$"A100 9DFF 819C 818E 8199 8195 8193 8137"            
-	$"8167 814F 8123 811A 8144 8DFF A100 9DFF"            
-	$"819C 818E 8199 8195 8193 8137 8167 814F"            
-	$"8123 811A 8144 8DFF BD00 8192 818F 8186"            
-	$"8157 8147 8139 8167 8152 8123 811A 817A"            
-	$"8161 CD00 8192 818F 8186 8157 8147 8139"            
-	$"8167 8152 8123 811A 817A 8161 CD00 8192"            
-	$"818F 8186 8157 8147 8139 8167 8152 8123"            
-	$"811A 817A 8161 CD00 8192 818F 8186 8157"            
-	$"8147 8139 8167 8152 8123 811A 817A 8161"            
-	$"9500 95FF 8100 95FF 8195 8191 817C 8151"            
-	$"812A 8132 8167 8153 8123 811A 814B 8178"            
-	$"8183 8161 89FF 8500 95FF 8100 95FF 8195"            
-	$"8191 817C 8151 812A 8132 8167 8153 8123"            
-	$"811A 814B 8178 8183 8161 89FF 8500 95FF"            
-	$"8100 95FF 8195 8191 817C 8151 812A 8132"            
-	$"8167 8153 8123 811A 814B 8178 8183 8161"            
-	$"89FF 8500 95FF 8100 95FF 8195 8191 817C"            
-	$"8151 812A 8132 8167 8153 8123 811A 814B"            
-	$"8178 8183 8161 89FF 8500 95FF 8100 91FF"            
-	$"81A9 818B 817D 8141 812C 8137 8163 8153"            
-	$"8124 811A 812C 8144 816D 818A 8180 8161"            
-	$"85FF 8500 95FF 8100 91FF 81A9 818B 817D"            
-	$"8141 812C 8137 8163 8153 8124 811A 812C"            
-	$"8144 816D 818A 8180 8161 85FF 8500 95FF"            
-	$"8100 91FF 81A9 818B 817D 8141 812C 8137"            
-	$"8163 8153 8124 811A 812C 8144 816D 818A"            
-	$"8180 8161 85FF 8500 95FF 8100 91FF 81A9"            
-	$"818B 817D 8141 812C 8137 8163 8153 8124"            
-	$"811A 812C 8144 816D 818A 8180 8161 85FF"            
-	$"8500 95FF 8100 8DFF 81DA 8192 8178 8154"            
-	$"8127 8137 8161 8151 8122 8111 8124 8132"            
-	$"813F 8160 8184 818D 8186 8161 81FF 8500"            
-	$"95FF 8100 8DFF 81DA 8192 8178 8154 8127"            
-	$"8137 8161 8151 8122 8111 8124 8132 813F"            
-	$"8160 8184 818D 8186 8161 81FF 8500 95FF"            
-	$"8100 8DFF 81DA 8192 8178 8154 8127 8137"            
-	$"8161 8151 8122 8111 8124 8132 813F 8160"            
-	$"8184 818D 8186 8161 81FF 8500 95FF 8100"            
-	$"8DFF 81DA 8192 8178 8154 8127 8137 8161"            
-	$"8151 8122 8111 8124 8132 813F 8160 8184"            
-	$"818D 8186 8161 81FF 8500 95FF 8100 8DFF"            
-	$"81B7 815B 813C 8127 8130 8159 8156 812A"            
-	$"810A 810C 812C 814F 8165 816C 8185 818D"            
-	$"8189 8188 8169 8188 8100 95FF 8100 8DFF"            
-	$"81B7 815B 813C 8127 8130 8159 8156 812A"            
-	$"810A 810C 812C 814F 8165 816C 8185 818D"            
-	$"8189 8188 8169 8188 8100 95FF 8100 8DFF"            
-	$"81B7 815B 813C 8127 8130 8159 8156 812A"            
-	$"810A 810C 812C 814F 8165 816C 8185 818D"            
-	$"8189 8188 8169 8188 8100 95FF 8100 8DFF"            
-	$"81B7 815B 813C 8127 8130 8159 8156 812A"            
-	$"810A 810C 812C 814F 8165 816C 8185 818D"            
-	$"8189 8188 8169 8188 8100 95FF 8100 8DFF"            
-	$"8161 8120 812F 816A 8576 8583 8178 8174"            
-	$"818C 819A 819D 8191 858E 818C 8188 8169"            
-	$"8155 8100 95FF 8100 8DFF 8161 8120 812F"            
-	$"816A 8576 8583 8178 8174 818C 819A 819D"            
-	$"8191 858E 818C 8188 8169 8155 8100 95FF"            
-	$"8100 8DFF 8161 8120 812F 816A 8576 8583"            
-	$"8178 8174 818C 819A 819D 8191 858E 818C"            
-	$"8188 8169 8155 8100 95FF 8100 8DFF 8161"            
-	$"8120 812F 816A 8576 8583 8178 8174 818C"            
-	$"819A 819D 8191 858E 818C 8188 8169 8155"            
-	$"8100 95FF 8100 8DFF 81E7 8122 8130 8196"            
-	$"8194 8153 8154 815F 8180 8195 81A2 819E"            
-	$"819A 819D 8194 8188 8181 817A 8173 8144"            
-	$"8100 95FF 8100 8DFF 81E7 8122 8130 8196"            
-	$"8194 8153 8154 815F 8180 8195 81A2 819E"            
-	$"819A 819D 8194 8188 8181 817A 8173 8144"            
-	$"8100 95FF 8100 8DFF 81E7 8122 8130 8196"            
-	$"8194 8153 8154 815F 8180 8195 81A2 819E"            
-	$"819A 819D 8194 8188 8181 817A 8173 8144"            
-	$"8100 95FF 8100 8DFF 81E7 8122 8130 8196"            
-	$"8194 8153 8154 815F 8180 8195 81A2 819E"            
-	$"819A 819D 8194 8188 8181 817A 8173 8144"            
-	$"8100 95FF 8100 8DFF 81C6 8146 8151 8135"            
-	$"8138 8119 811F 812A 8136 8144 814A 8175"            
-	$"8191 8181 8173 8172 8168 8160 8181 81FF"            
-	$"8100 95FF 8100 8DFF 81C6 8146 8151 8135"            
-	$"8138 8119 811F 812A 8136 8144 814A 8175"            
-	$"8191 8181 8173 8172 8168 8160 8181 81FF"            
-	$"8100 95FF 8100 8DFF 81C6 8146 8151 8135"            
-	$"8138 8119 811F 812A 8136 8144 814A 8175"            
-	$"8191 8181 8173 8172 8168 8160 8181 81FF"            
-	$"8100 95FF 8100 8DFF 81C6 8146 8151 8135"            
-	$"8138 8119 811F 812A 8136 8144 814A 8175"            
-	$"8191 8181 8173 8172 8168 8160 8181 81FF"            
-	$"8100 95FF 8100 8DFF 8159 816A 8149 8122"            
-	$"8177 8168 813C 811A 811D 8928 8138 814D"            
-	$"8147 8148 814F 8147 818E 81FF 8100 95FF"            
-	$"8100 8DFF 8159 816A 8149 8122 8177 8168"            
-	$"813C 811A 811D 8928 8138 814D 8147 8148"            
-	$"814F 8147 818E 81FF 8100 95FF 8100 8DFF"            
-	$"8159 816A 8149 8122 8177 8168 813C 811A"            
-	$"811D 8928 8138 814D 8147 8148 814F 8147"            
-	$"818E 81FF 8100 95FF 8100 8DFF 8159 816A"            
-	$"8149 8122 8177 8168 813C 811A 811D 8928"            
-	$"8138 814D 8147 8148 814F 8147 818E 81FF"            
-	$"8100 95FF 8100 89FF 81A8 8165 814A 817F"            
-	$"819F 85FF 81D3 819A 8155 811C 8114 810E"            
-	$"810B 811B 8126 812B 8133 8130 818E 819A"            
-	$"8100 95FF 8100 89FF 81A8 8165 814A 817F"            
-	$"819F 85FF 81D3 819A 8155 811C 8114 810E"            
-	$"810B 811B 8126 812B 8133 8130 818E 819A"            
-	$"8100 95FF 8100 89FF 81A8 8165 814A 817F"            
-	$"819F 85FF 81D3 819A 8155 811C 8114 810E"            
-	$"810B 811B 8126 812B 8133 8130 818E 819A"            
-	$"8100 95FF 8100 89FF 81A8 8165 814A 817F"            
-	$"819F 85FF 81D3 819A 8155 811C 8114 810E"            
-	$"810B 811B 8126 812B 8133 8130 818E 819A"            
-	$"8100 95FF 8100 89FF 8165 819F 81C2 95FF"            
-	$"81D3 81B2 818E 8169 815F 8156 8142 8143"            
-	$"812B 8135 818E 819F 8100 95FF 8100 89FF"            
-	$"8165 819F 81C2 95FF 81D3 81B2 818E 8169"            
-	$"815F 8156 8142 8143 812B 8135 818E 819F"            
-	$"8100 95FF 8100 89FF 8165 819F 81C2 95FF"            
-	$"81D3 81B2 818E 8169 815F 8156 8142 8143"            
-	$"812B 8135 818E 819F 8100 95FF 8100 89FF"            
-	$"8165 819F 81C2 95FF 81D3 81B2 818E 8169"            
-	$"815F 8156 8142 8143 812B 8135 818E 819F"            
-	$"8100 95FF 8100 C5FF 8100 85FF 816B 818E"            
-	$"81A7 8100 95FF 8100 C5FF 8100 85FF 816B"            
-	$"818E 81A7 8100 95FF 8100 C5FF 8100 85FF"            
-	$"816B 818E 81A7 8100 95FF 8100 C5FF 8100"            
-	$"85FF 816B 818E 81A7 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8122 8544 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8122 8544 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8122 8544 8100 95FF 8100 C5FF"            
-	$"8100 85FF 8122 8544 8100 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF 8100 C5FF"            
-	$"8100 8DFF 8500 95FF 8100 C5FF 8100 8DFF"            
-	$"8500 95FF 8100 C5FF 8100 8DFF 8500 95FF"            
-	$"8100 C5FF 8100 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF 8500 95FF CD00 8DFF"            
-	$"8500 95FF CD00 8DFF FF00 FF00 FF00 FB00"            
-	$"7438 6D6B 0000 4008 FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF"                                
-};
-
-data 'ics#' (-16455, "Item Icon") {
-	$"F557 D001 700E E024 9A9B 0175 9299 0162"            
-	$"923E 0001 9004 0000 9BBC 102C 8434 5AFD"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-	$"FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"            
-};
-
-data 'ics4' (-16455, "Item Icon") {
-	$"AA3F DDDD DDDD DDAE A333 0000 0000 0C3E"            
-	$"333A 0000 000C DBEC A333 0000 0CBC 2A00"            
-	$"EDDF DDDB D2CB ECFF D00D 00CD BBBA B2D6"            
-	$"D00D 00B2 DDBB DCCB D00D 00D4 D2D2 CC2D"            
-	$"D00D 00BD CCE5 3EEC D00D 0C00 0000 CBCB"            
-	$"D00D 0000 0000 0D0D D00D 0000 0000 0D00"            
-	$"D00D ABAB ABAF 9F00 D00D 1111 11B8 9900"            
-	$"D00D 1111 1189 9F00 EDDA 8291 ABAF 9FDD"            
-};
-
-data 'ics8' (-16455, "Item Icon") {
-	$"DEDC DBB3 F9FA F9FA F9FA F9FA F9FA 8FFB"            
-	$"DC23 23DB 0000 0000 0000 0000 0032 6A88"            
-	$"DB23 23DC 0000 0000 0000 F52B 3357 882B"            
-	$"DC23 23DB 0000 0000 F608 3234 33AD F600"            
-	$"FCFA F9AC F9FA F95D 0E5D 3457 8833 F1F2"            
-	$"FA00 00F9 0000 0733 825E 33AD 6432 33EF"            
-	$"F900 00FA 0000 5D5E 5D33 825D 3332 2C57"            
-	$"FA00 00F9 0000 5739 5D64 5D33 3232 335C"            
-	$"F900 00FA 00F5 5D57 F732 828E 8988 88F9"            
-	$"FA00 00F9 00F6 F600 0000 F5F6 4F5D F85D"            
-	$"F900 00FA 0000 0000 0000 0000 00FA 0056"            
-	$"FA00 00FA 0000 0000 0000 0000 00F9 0000"            
-	$"F900 00F9 8359 8359 8359 ADD1 E8EA 0000"            
-	$"FA00 00FA 0505 0505 0505 5FE5 E6E8 0000"            
-	$"F900 00F9 0505 0505 0505 7DE6 E6D1 0000"            
-	$"ACF9 FAFC 8359 8359 8359 ADD1 E8E9 FAF9"            
-};
-
diff --git a/rbutil/rbutilApp.cpp b/rbutil/rbutilApp.cpp
deleted file mode 100644
index 1901a62..0000000
--- a/rbutil/rbutilApp.cpp
+++ /dev/null
@@ -1,288 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: rbutilApp.cpp
- *
- * Copyright (C) 2005 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "rbutilApp.h"
-#include "bootloaders.h"
-
-GlobalVars* gv = new GlobalVars();
-
-IMPLEMENT_APP(rbutilFrmApp)
-
-bool rbutilFrmApp::OnInit()
-{
-    wxString buf = wxT("");
-
-    wxLogVerbose(wxT("=== begin rbutilFrmApp::Oninit()"));
-
-
-    gv->stdpaths = new wxStandardPaths();
-
-    // Get application directory
-    // DANGER!  GetDataDir() doesn't portably return the application directory
-    // We want to use the form below instead, but not until wxWidgets 2.8 is
-    // released.  *Datadir gives the wrong dir for this on Linux/Mac even on Wx2.8 *
-    gv->AppDir = gv->stdpaths->GetExecutablePath().BeforeLast(PATH_SEP_CHR);
- //   buf = gv->stdpaths->GetDataDir(); buf.Append(PATH_SEP);
- //   gv->AppDir = buf.BeforeLast(PATH_SEP_CHR).c_str();
-
-    buf = gv->stdpaths->GetUserDataDir();
-    if (! wxDirExists(buf) )
-    {
-        wxLogNull lognull;
-        if (! wxMkdir(buf, 0777))
-        {
-            wxLogFatalError(wxT("Can't create data directory %s"),
-                buf.c_str());
-        }
-    }
-
-    buf += PATH_SEP wxT("rbutil.log");
-    gv->logfile = new wxFFile(buf, wxT("w"));
-    if (! gv->logfile->IsOpened() )
-        wxLogFatalError(wxT("Unable to open log file"));
-
-    gv->loggui = new wxLogGui();
-    gv->loggui->SetActiveTarget(gv->loggui);
-    gv->loggui->SetLogLevel(wxLOG_Message);
-    gv->logchain = new wxLogChain(
-        gv->logstderr = new wxLogStderr(gv->logfile->fp() ) );
-
-    buf = buf.Left(buf.Len() - 10);
-    buf.Append(wxT("download"));
-    if (! wxDirExists(buf) ) wxMkdir(buf, 0777);
-
-    wxFileSystem::AddHandler(new wxInternetFSHandler);
-    wxFileSystem::AddHandler(new wxZipFSHandler);
-
-    if (!ReadGlobalConfig(NULL))
-    {
-        ERR_DIALOG(gv->ErrStr->GetData(), wxT("Rockbox Utility"));
-        return FALSE;
-    }
-    ReadUserConfig();
-
-    wxInitAllImageHandlers();       //init Image handlers
-    initIpodpatcher();             // reserve mem for ipodpatcher
-    initSansaPatcher();            // reserve mem for sansapatcher
-
-    rbutilFrm *myFrame = new  rbutilFrm(NULL);
-    SetTopWindow(myFrame);
-
-    myFrame->Show(TRUE);
-
-    wxLogVerbose(wxT("=== end rbUtilFrmApp::OnInit()"));
-    return TRUE;
-}
-
-int rbutilFrmApp::OnExit()
-{
-    wxLogVerbose(wxT("=== begin rbUtilFrmApp::OnExit()"));
-
-    WriteUserConfig();
-
-    gv->logfile->Close();
-    /* Enabling this code causes the program to crash.  I
-     * have no idea why.  (possibly because deleting non existing objects ? :-) )
-    wxLog::DontCreateOnDemand();
-    // Free a bunch of structures.
-    delete gv->GlobalConfig;
-    delete gv->ErrStr;
-    delete gv->stdpaths;
-    delete gv->platform;
-
-    delete gv->logstderr;
-    delete gv->logchain;
-    delete gv->logfile;
-    delete gv->loggui;
-*/
-    wxLogVerbose(wxT("=== end rbUtilFrmApp::OnExit()"));
-	return 0;
-}
-
-bool rbutilFrmApp::ReadGlobalConfig(rbutilFrm* myFrame)
-{
-    wxString buf, tmpstr, stack;
-    wxLogVerbose(wxT("=== begin rbutilFrmApp::ReadGlobalConfig(%p)"),
-        (void*) myFrame);
-
-    // Cross-platform compatibility: look for rbutil.ini in then in the app dir
-    //  then in the user config dir (linux ~/) and
-    //  then config dir (linux /etc/ )
-
-    buf = gv->AppDir + wxT("" PATH_SEP "rbutil.ini");
-    if (! wxFileExists(buf) )
-    {
-        buf = gv->stdpaths->GetUserConfigDir()
-              + wxT("" PATH_SEP ".rbutil" PATH_SEP "rbutil.ini");
-        if (! wxFileExists(buf) )
-        {
-            buf = gv->stdpaths->GetConfigDir()
-                  + wxT("" PATH_SEP "rbutil.ini");
-        }
-    }
-
-    if (! wxFileExists(buf) )
-    {
-        gv->ErrStr = new wxString(wxT("Configuration file doesnt exist!"));
-        return false;
-    }
-
-
-    wxFileInputStream* cfgis = new wxFileInputStream(buf);
-
-    if (!cfgis->CanRead()) {
-        gv->ErrStr = new wxString(wxT("Unable to open configuration file"));
-        return false;
-    }
-
-    gv->GlobalConfig = new wxFileConfig(*cfgis);
-    gv->GlobalConfigFile = buf;
-
-    unsigned int i = 0;
-
-    stack = gv->GlobalConfig->GetPath();
-    gv->GlobalConfig->SetPath(wxT("/platforms"));
-    while(gv->GlobalConfig->Read(buf.Format(wxT("platform%d"), i + 1),
-        &tmpstr)) {
-        wxString cur = tmpstr;
-        //gv->plat_id.Add(tmpstr);
-        gv->GlobalConfig->Read(buf.Format(wxT("/%s/name"),
-            cur.c_str()), &tmpstr);
-        gv->plat_name.Add(tmpstr);
-        gv->GlobalConfig->Read(buf.Format(wxT("/%s/platform"),
-            cur.c_str()), &tmpstr);
-        gv->plat_id.Add(tmpstr);
-        gv->GlobalConfig->Read(buf.Format(wxT("/%s/released"),
-            cur.c_str()), &tmpstr);
-        gv->plat_released.Add( (tmpstr == wxT("yes")) ? true : false ) ;
-        gv->GlobalConfig->Read(buf.Format(wxT("/%s/needsbootloader"),
-            cur.c_str()), &tmpstr);
-        gv->plat_needsbootloader.Add( (tmpstr == wxT("yes")) ? true : false ) ;
-        gv->GlobalConfig->Read(buf.Format(wxT("/%s/bootloadermethod"),
-            cur.c_str()), &tmpstr);
-        gv->plat_bootloadermethod.Add(tmpstr);
-        gv->GlobalConfig->Read(buf.Format(wxT("/%s/bootloadername"),
-            cur.c_str()), &tmpstr);
-        gv->plat_bootloadername.Add(tmpstr);
-        gv->GlobalConfig->Read(buf.Format(wxT("/%s/resolution"),
-            cur.c_str()), &tmpstr);
-        gv->plat_resolution.Add(tmpstr);
-        gv->GlobalConfig->Read(buf.Format(wxT("/%s/manualname"),
-            cur.c_str()), &tmpstr);
-        gv->plat_manualname.Add(tmpstr);
-
-        i++;
-    }
-
-    gv->GlobalConfig->SetPath(wxT("/general"));
-    gv->GlobalConfig->Read(wxT("default_platform"), &tmpstr, wxT("cthulhu"));
-
-
-    gv->GlobalConfig->Read(wxT("last_release"), &tmpstr);
-    gv->last_release = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("download_url"), &tmpstr);
-    gv->download_url = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("daily_url"), &tmpstr);
-    gv->daily_url = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("bleeding_url"), &tmpstr);
-    gv->bleeding_url = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("server_conf_url"), &tmpstr);
-    gv->server_conf_url = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("font_url"), &tmpstr);
-    gv->font_url = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("prog_name"), &tmpstr);
-    gv->prog_name = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("bootloader_url"), &tmpstr);
-    gv->bootloader_url = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("themes_url"), &tmpstr);
-    gv->themes_url = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("manual_url"), &tmpstr);
-    gv->manual_url = tmpstr;
-
-    gv->GlobalConfig->Read(wxT("doom_url"), &tmpstr);
-    gv->doom_url = tmpstr;
-
-#ifdef __WXMSW__
-    gv->curdestdir = wxT("D:\\");
-#else
-    gv->curdestdir = wxT("/mnt");
-#endif
-    gv->GlobalConfig->SetPath(stack);
-
-    wxLogVerbose(wxT("=== end rbutilFrmApp::ReadGlobalConfig()"));
-    return true;
-}
-
-void rbutilFrmApp::ReadUserConfig()
-{
-    wxString buf, str, stack;
-
-    buf = gv->AppDir + wxT("" PATH_SEP "RockboxUtility.cfg");
-
-    if (wxFileExists(buf) )
-    {
-        gv->portable = true;
-    }
-    else
-    {
-        gv->portable = false;
-        buf = gv->stdpaths->GetUserDataDir()
-              + wxT("" PATH_SEP "RockboxUtility.cfg");
-    }
-
-    gv->UserConfig = new wxFileConfig(wxEmptyString, wxEmptyString, buf);
-    gv->UserConfigFile = buf;
-    gv->UserConfig->Set(gv->UserConfig); // Store wxWidgets internal settings
-    stack = gv->UserConfig->GetPath();
-
-    gv->UserConfig->SetPath(wxT("/defaults"));
-    if (gv->UserConfig->Read(wxT("curdestdir"), &str) ) gv->curdestdir = str;
-    if (gv->UserConfig->Read(wxT("curplatform"), &str) ) gv->curplat = str;
-    if (gv->UserConfig->Read(wxT("curfirmware"), &str) ) gv->curfirmware = str;
-    if (gv->UserConfig->Read(wxT("proxy_url"), &str) ) gv->proxy_url = str;
-
-    if (gv->UserConfig->Read(wxT("pathToTts"), &str) ) gv->pathToTts = str;
-    if (gv->UserConfig->Read(wxT("pathToEnc"), &str) ) gv->pathToEnc = str;
-    gv->UserConfig->SetPath(stack);
-}
-
-void rbutilFrmApp::WriteUserConfig()
-{
-    gv->UserConfig->SetPath(wxT("/defaults"));
-    gv->UserConfig->Write(wxT("curdestdir"), gv->curdestdir);
-    gv->UserConfig->Write(wxT("curplatform"), gv->curplat);
-    gv->UserConfig->Write(wxT("curfirmware"), gv->curfirmware);
-    gv->UserConfig->Write(wxT("proxy_url"), gv->proxy_url);
-    gv->UserConfig->Write(wxT("pathToTts"), gv->pathToTts);
-    gv->UserConfig->Write(wxT("pathToEnc"), gv->pathToEnc);
-
-    delete gv->UserConfig;
-
-}
-
diff --git a/rbutil/rbutilApp.h b/rbutil/rbutilApp.h
deleted file mode 100644
index b20e39e..0000000
--- a/rbutil/rbutilApp.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: rbutilApp.h
- *
- * Copyright (C) 2005 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <wx/wxprec.h>
-#ifdef __BORLANDC__
-        #pragma hdrstop
-#endif
-#ifndef WX_PRECOMP
-        #include <wx/wx.h>
-#endif
-
-#include <wx/msgdlg.h>
-#include <wx/config.h>
-#include <wx/confbase.h>
-#include <wx/fileconf.h>
-#include <wx/string.h>
-#include <wx/wfstream.h>
-#include <wx/fs_inet.h>
-#include <wx/fs_zip.h>
-#include <wx/stdpaths.h>
-
-#include "rbutilFrm.h"
-#include "rbutil.h"
-
-class rbutilFrmApp:public wxApp
-{
-public:
-	bool OnInit();
-	int OnExit();
-	bool ReadGlobalConfig(rbutilFrm* myFrame);
-	void ReadUserConfig(void);
-	void WriteUserConfig(void);
-
-};
-
-
diff --git a/rbutil/rbutilCtrls.cpp b/rbutil/rbutilCtrls.cpp
deleted file mode 100644
index fdede63..0000000
--- a/rbutil/rbutilCtrls.cpp
+++ /dev/null
@@ -1,628 +0,0 @@
-
-#include "rbutilCtrls.h"
-#include "bootloaders.h"
-#include "autodetection.h"
-
-/////////////////////////////////////////////////////////////
-//// Controls
-////////////////////////////////////////////////////////////////
-
-/////////////////////////////////////////////
-//// Image Ctrl
-//////////////////////////////////////////////
-
-BEGIN_EVENT_TABLE(ImageCtrl, wxControl)
-    EVT_PAINT(ImageCtrl::OnPaint)
-END_EVENT_TABLE()
-
-IMPLEMENT_DYNAMIC_CLASS(ImageCtrl, wxControl)
-
-bool ImageCtrl::Create(wxWindow* parent, wxWindowID id,
-    const wxPoint& pos, const wxSize& size, long style,
-    const wxValidator& validator)
-{
-    if (!wxControl::Create(parent, id, pos, size, style, validator)) return false;
-
-return true;
-}
-
-void ImageCtrl::OnPaint(wxPaintEvent& event)
-{
-    wxPaintDC dc(this);
-    dc.DrawBitmap(m_bitmap,0,0,false);
-}
-
-void ImageCtrl::SetBitmap(wxBitmap bmp)
-{
-    m_bitmap = bmp;
-    Refresh();
-
-}
-
-wxSize ImageCtrl::DoGetBestSize() const
-{
-    wxSize bestsize;
-    bestsize.x = m_bitmap.GetWidth();
-    bestsize.y = m_bitmap.GetHeight();
-    return bestsize;
-}
-
-
-
-/////////////////////////////////////////////
-//// Theme Control
-//////////////////////////////////////////////
-
-BEGIN_EVENT_TABLE(ThemeCtrl, wxPanel)
-    EVT_LISTBOX(ID_THEME_LST, ThemeCtrl::OnThemesLst)
-    EVT_BUTTON(ID_THEME_SELECT_ALL, ThemeCtrl::OnSelectAll)
-END_EVENT_TABLE()
-
-IMPLEMENT_DYNAMIC_CLASS(ThemeCtrl, wxPanel)
-
-bool ThemeCtrl::Create(wxWindow* parent, wxWindowID id,
-    const wxPoint& pos, const wxSize& size, long style,
-    const wxString title )
-{
-    if (!wxPanel::Create(parent, id, pos, size, style, title)) return false;
-
-    CreateControls();
-
-    GetSizer()->Fit(this);
-
-    GetSizer()->SetSizeHints(this);
-return true;
-}
-
-void ThemeCtrl::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    wxBoxSizer* horizontalSizer = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(horizontalSizer, 0, wxALIGN_LEFT|wxALL, 5);
-
-    //Device Selection
-    wxBoxSizer* wxBoxSizer7 = new wxBoxSizer(wxVERTICAL);
-    horizontalSizer->Add(wxBoxSizer7,0,wxGROW | wxALL,0);
-
-    wxStaticText* m_desc = new wxStaticText( this, wxID_STATIC,
-        wxT("Select one or more Themes to install"), wxDefaultPosition,
-        wxDefaultSize, 0 );
-    wxBoxSizer7->Add(m_desc, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_themeList = new wxListBox(this,ID_THEME_LST,wxDefaultPosition,
-            wxDefaultSize,0,NULL,wxLB_EXTENDED);
-    wxBoxSizer7->Add(m_themeList, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_selectAllThemes = new wxButton(this, ID_THEME_SELECT_ALL,
-            wxT("Select All"));
-    wxBoxSizer7->Add(m_selectAllThemes, 0, wxALIGN_LEFT|wxALL, 5);
-
-    // Preview Picture
-    wxBoxSizer* wxBoxSizer9 = new wxBoxSizer(wxVERTICAL);
-    horizontalSizer->Add(wxBoxSizer9,0,wxGROW | wxALL,0);
-
-    wxStaticText* preview_desc= new wxStaticText(this,wxID_ANY,wxT("Preview:"));
-    wxBoxSizer9->Add(preview_desc,0,wxGROW | wxALL,5);
-
-    m_PreviewBitmap = new ImageCtrl(this,ID_PREVIEW_BITMAP );
-    wxBoxSizer9->Add(m_PreviewBitmap,0,wxALIGN_LEFT | wxALL,5);
-
-    wxStaticBox* groupbox= new wxStaticBox(this,wxID_ANY,wxT("Selected Theme:"));
-    wxStaticBoxSizer* styleSizer = new wxStaticBoxSizer( groupbox, wxVERTICAL );
-    topSizer->Add(styleSizer,0,wxGROW|wxALL,0);
-
-    // horizontal sizer
-    wxBoxSizer* wxBoxSizer8 = new wxBoxSizer(wxHORIZONTAL);
-    styleSizer->Add(wxBoxSizer8,0,wxGROW | wxALL,0);
-
-    // File size
-    wxStaticText* size_desc= new wxStaticText(this,wxID_ANY,wxT("Filesize:"));
-    wxBoxSizer8->Add(size_desc,0,wxGROW | wxALL,5);
-
-    m_size= new wxStaticText(this,ID_FILESIZE,wxT(""));
-    wxBoxSizer8->Add(m_size,0,wxGROW | wxALL,5);
-
-    // Description
-    wxStaticText* desc_desc= new wxStaticText(this,wxID_ANY,wxT("Description:"));
-    styleSizer->Add(desc_desc,0,wxGROW | wxALL,5);
-
-    m_themedesc= new wxTextCtrl(this,ID_DESC,wxT(""),wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE|wxTE_READONLY);
-    styleSizer->Add(m_themedesc,0,wxGROW | wxALL,5);
-
-    topSizer->Fit(this);
-    topSizer->SetSizeHints(this);
-    Layout();
-
-}
-
-void ThemeCtrl::Init()
-{
-    m_Themes.Clear();
-    m_Themes_path.Clear();
-    m_Themes_size.Clear();
-    m_Themes_image.Clear();
-    m_Themes_desc.Clear();
-
-}
-
-void ThemeCtrl::setDevice(wxString device)
-{
-
-    int index = gv->plat_id.Index(device);
-    if(index  == -1) return;
-
-    if(gv->plat_resolution[index] == m_currentResolution)
-        return;
-    else
-        m_currentResolution = gv->plat_resolution[index];
-
-    // load the themelist
-    Init();
-    m_size->SetLabel(wxT(""));
-    m_themedesc->SetValue(wxT(""));
-    m_themeList->Clear();
-
-     //get correct Themes list
-    wxString src,dest,err;
-
-    src = gv->themes_url + wxT("rbutil.php?res=") + m_currentResolution;
-    dest = gv->stdpaths->GetUserDataDir() + wxT("" PATH_SEP "download" PATH_SEP)
-           + m_currentResolution + wxT(".list");
-
-    if(DownloadURL(src, dest))
-    {
-        MESG_DIALOG(wxT("Unable to download themes list."));
-        return;
-    }
-
-     //read and parse Themes list
-    wxString themelistraw;
-    wxFFile themefile;
-    if(!themefile.Open(dest))       //open file
-    {
-        MESG_DIALOG(wxT("Unable to open themes list."));
-        return;
-    }
-    if(!themefile.ReadAll(&themelistraw))  //read complete file
-    {
-        MESG_DIALOG(wxT("Unable to read themes list."));
-        return;
-    }
-    wxRegEx reAll(wxT("<body >(.+)</body>"));  //extract body part
-    if(! reAll.Matches(themelistraw))
-    {
-        MESG_DIALOG(wxT("Themes list is in wrong Format."));
-        return;
-    }
-    wxString lines = reAll.GetMatch(themelistraw,1);
-
-    // prepare text
-    lines.Replace(wxT("<br />"),wxT(""),true);   //replace <br /> with nothing
-    lines.Replace(wxT("\n"),wxT(""),true);   //replace \n with nothing
-    lines.Trim(true);                         //strip WS at end
-    lines.Trim(false);                         //strip WS at beginning
-    wxStringTokenizer tkz(lines,wxT("|"));   //tokenize it
-
-    while ( tkz.HasMoreTokens() )           // read all entrys
-    {
-        m_Themes.Add(tkz.GetNextToken());         //Theme name
-        m_Themes_path.Add(tkz.GetNextToken());    //Theme path
-        m_Themes_size.Add(tkz.GetNextToken());    //File size
-        m_Themes_image.Add(tkz.GetNextToken());   //Screenshot
-        m_Themes_desc.Add(tkz.GetNextToken());    //Description
-
-        m_themeList->Append(m_Themes.Last());
-    }
-
-    this->GetSizer()->Layout();
-    this->GetSizer()->Fit(this);
-    this->GetSizer()->SetSizeHints(this);
-    m_parent->GetSizer()->Layout();
-    m_parent->GetSizer()->Fit(m_parent);
-    m_parent->GetSizer()->SetSizeHints(m_parent);
-}
-
-
-void ThemeCtrl::OnThemesLst(wxCommandEvent& event)
-{
-    ThemePreview();
-}
-
-void ThemeCtrl::ThemePreview()
-{
-  //  wxCriticalSectionLocker locker(m_ThemeSelectSection);
-
-    wxArrayInt selected;
-    int numSelected = m_themeList->GetSelections(selected);
-    if(numSelected == 0) return;
-
-    int index = selected[0];
-
-    m_size->SetLabel(m_Themes_size[index]);
-    m_themedesc->SetValue(m_Themes_desc[index]);
-   // m_themedesc->Wrap(200);                       // wrap desc
-
-    wxString src,dest;
-
-    int pos = m_Themes_image[index].Find('/',true);
-    wxString filename = m_Themes_image[index](pos+1,m_Themes_image[index].Length());
-
-    dest = gv->stdpaths->GetUserDataDir()
-           + wxT(""  PATH_SEP "download" PATH_SEP)
-           + m_currentResolution;
-
-    if(!wxDirExists(dest))
-        wxMkdir(dest);
-
-    //this is a URL no PATH_SEP
-    src = gv->themes_url + wxT("/data/") + m_currentResolution + wxT("/")
-          + filename;
-    dest = gv->stdpaths->GetUserDataDir() + wxT("" PATH_SEP "download" PATH_SEP)
-           + m_currentResolution + wxT("" PATH_SEP) + filename;
-
-    if(!wxFileExists(dest))
-    {
-        if(DownloadURL(src, dest))
-        {
-            MESG_DIALOG(wxT("Unable to download image."));
-            return;
-        }
-    }
-
-    m_currentimage = dest;
-    wxBitmap bmp;
-    bmp.LoadFile(m_currentimage,wxBITMAP_TYPE_PNG);
-    m_PreviewBitmap->SetBitmap(bmp);
-
-    Refresh();
-    this->GetSizer()->Layout();
-    this->GetSizer()->Fit(this);
-    this->GetSizer()->SetSizeHints(this);
-
-    m_parent->GetSizer()->Layout();
-    m_parent->GetSizer()->Fit(m_parent);
-    m_parent->GetSizer()->SetSizeHints(m_parent);
-
-}
-
-void ThemeCtrl::OnSelectAll(wxCommandEvent& event)
-{
-    for(unsigned int i=0; i < m_themeList->GetCount(); i++)
-        m_themeList->Select(i);
-    ThemePreview();
-}
-
-wxArrayString ThemeCtrl::getThemesToInstall()
-{
-    wxArrayString themes;
-    wxArrayInt selected;
-    int numSelected = m_themeList->GetSelections(selected);
-
-    for(int i=0; i < numSelected; i++)
-    {
-        themes.Add(m_Themes_path[selected[i]]);
-    }
-    return themes;
-
- }
-
-/////////////////////////////////////////////
-//// Ok Cancel Control
-//////////////////////////////////////////////
-
-BEGIN_EVENT_TABLE(OkCancelCtrl, wxPanel)
-
-END_EVENT_TABLE()
-
-IMPLEMENT_DYNAMIC_CLASS(OkCancelCtrl, wxPanel)
-
-bool OkCancelCtrl::Create(wxWindow* parent, wxWindowID id,
-    const wxPoint& pos, const wxSize& size, long style,
-    const wxString title)
-{
-    if (!wxPanel::Create(parent, id, pos, size, style, title)) return false;
-
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-return true;
-}
-
-void OkCancelCtrl::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxHORIZONTAL);
-    this->SetSizer(topSizer);
-
-    // The OK button
-    m_OkBtn = new wxButton ( this, wxID_OK, wxT("&OK"),
-        wxDefaultPosition, wxDefaultSize, 0 );
-    topSizer->Add(m_OkBtn, 0, wxALL, 5);
-    // The Cancel button
-    m_CancelBtn = new wxButton ( this, wxID_CANCEL,
-        wxT("&Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
-    topSizer->Add(m_CancelBtn, 0, wxALL, 5);
-
-    Layout();
-
-}
-
-
-/////////////////////////////////////////////
-//// Device Selector
-//////////////////////////////////////////////
-
-BEGIN_EVENT_TABLE(DeviceSelectorCtrl, wxPanel)
-    EVT_BUTTON(ID_AUTODETECT_BTN, DeviceSelectorCtrl::OnAutoDetect)
-    EVT_COMBOBOX(ID_DEVICE_CBX,DeviceSelectorCtrl::OnComboBox)
-END_EVENT_TABLE()
-
-IMPLEMENT_DYNAMIC_CLASS(DeviceSelectorCtrl, wxPanel)
-
-bool DeviceSelectorCtrl::Create(wxWindow* parent, wxWindowID id,
-    const wxPoint& pos, const wxSize& size, long style,
-    const wxString title)
-{
-    if (!wxPanel::Create(parent, id, pos, size, style, title)) return false;
-
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-    return true;
-}
-
-void DeviceSelectorCtrl::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-     //Device Selection
-    wxBoxSizer* horizontalSizer = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(horizontalSizer, 0, wxALIGN_LEFT|wxALL, 5);
-    m_desc = new wxStaticText( this, wxID_STATIC,
-        wxT("Device:"), wxDefaultPosition,
-        wxDefaultSize, 0 );
-    horizontalSizer->Add(m_desc, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_deviceCbx = new wxComboBox(this, ID_DEVICE_CBX,wxT("Select your Device"),
-            wxDefaultPosition,wxDefaultSize,gv->plat_name,wxCB_READONLY);
-
-    m_deviceCbx->SetToolTip(wxT("Select your Device."));
-    m_deviceCbx->SetHelpText(wxT("Select your Device."));
-
-    horizontalSizer->Add(m_deviceCbx, 0, wxALIGN_LEFT|wxALL, 5);
-
-    wxButton* m_autodetectBtn = new wxButton(this, ID_AUTODETECT_BTN, wxT("Autodetect"),
-         wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator,
-         wxT("AutodetectBtn"));
-
-    m_autodetectBtn->SetToolTip(wxT("Click here to autodetect your Device."));
-    m_autodetectBtn->SetHelpText(wxT("Autodetection of the Device."));
-   // m_autodetectBtn->SetFocus();
-
-    horizontalSizer->Add(m_autodetectBtn,0,wxGROW | wxALL,5);
-    Layout();
-
-}
-
-wxString DeviceSelectorCtrl::getDevice()
-{
-    return m_currentDevice;
-}
-
-void DeviceSelectorCtrl::setDefault()
-{
-    int index = gv->plat_id.Index(gv->curplat);
-    if(index == -1) return;
-    m_deviceCbx->SetValue(gv->plat_name[index]);
-}
-
-void DeviceSelectorCtrl::OnComboBox(wxCommandEvent& event)
-{
-    int index = gv->plat_name.Index(m_deviceCbx->GetValue());
-
-    if(index == -1)
-    {
-        m_currentDevice = wxT("");
-        return;
-    }
-
-    gv->curplat = gv->plat_id[index];
-}
-
-void DeviceSelectorCtrl::OnAutoDetect(wxCommandEvent& event)
-{
-    if(!AutoDetect())
-    {
-        WARN_DIALOG(wxT("No Device detected. If you have a Device connected, select the correct one manually."),
-                wxT("Detecting a Device"));
-    }
-}
-
-
-bool DeviceSelectorCtrl::AutoDetect()
-{
-    UsbDeviceInfo device;
-
-    if(detectDevices(&device))
-    {
-
-        if(device.status == DEVICEFOUND)
-        {
-            m_deviceCbx->SetValue(gv->plat_name[device.device_index]);
-            gv->curplat=gv->plat_id[device.device_index];
-
-            if(device.path != wxT(""))
-            {
-                gv->curdestdir = device.path;
-            }
-            return true;
-        }
-        else if(device.status == TOMANYDEVICES)
-        {
-             WARN_DIALOG(wxT("More then one device detected, please connect only One"),
-                wxT("Detecting a Device"));
-              return true;
-        }
-    }
-    return false;
-}
-
-/////////////////////////////////////////////
-//// DevicePosition Selector
-//////////////////////////////////////////////
-
-BEGIN_EVENT_TABLE(DevicePositionCtrl, wxPanel)
-    EVT_BUTTON(ID_BROWSE_BTN, DevicePositionCtrl::OnBrowseBtn)
-END_EVENT_TABLE()
-
-IMPLEMENT_DYNAMIC_CLASS(DevicePositionCtrl, wxPanel)
-
-bool DevicePositionCtrl::Create(wxWindow* parent, wxWindowID id,
-    const wxPoint& pos, const wxSize& size, long style,
-    const wxString title)
-{
-    if (!wxPanel::Create(parent, id, pos, size, style, title)) return false;
-
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-return true;
-}
-
-void DevicePositionCtrl::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    //Device Selection
-    m_desc = new wxStaticText( this, wxID_STATIC,
-        wxT("Select your Device in the Filesystem"), wxDefaultPosition,
-        wxDefaultSize, 0 );
-    topSizer->Add(m_desc, 0, wxALIGN_LEFT|wxALL, 5);
-
-    wxBoxSizer* horizontalSizer = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(horizontalSizer, 0, wxGROW|wxALL, 5);
-
-    m_devicePos = new wxTextCtrl(this,wxID_ANY,gv->curdestdir);
-    m_devicePos->SetToolTip(wxT("Type the folder where your Device is here"));
-    m_devicePos->SetHelpText(wxT("Type the folder where your Device is here"));
-    horizontalSizer->Add(m_devicePos,0,wxGROW | wxALL,5);
-
-    m_browseBtn = new wxButton(this, ID_BROWSE_BTN, wxT("Browse"),
-         wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator,
-         wxT("BrowseBtn"));
-    m_browseBtn->SetToolTip(wxT("Browse for your Device"));
-    m_browseBtn->SetHelpText(wxT("Browse for your Device"));
-    horizontalSizer->Add(m_browseBtn,0,wxGROW | wxALL,5);
-
-    topSizer->Fit(this);
-    Layout();
-
-}
-
-wxString DevicePositionCtrl::getDevicePos()
-{
-    return m_devicePos->GetValue();
-
-}
-
-void DevicePositionCtrl::setDefault()
-{
-    m_devicePos->SetValue(gv->curdestdir);
-}
-
-void DevicePositionCtrl::OnBrowseBtn(wxCommandEvent& event)
-{
-     const wxString& temp = wxDirSelector(
-        wxT("Please select the location of your audio device"), gv->curdestdir,
-        0, wxDefaultPosition, this);
-
-    if (!temp.empty())
-    {
-        m_devicePos->SetValue(temp);
-    }
-
-}
-
-/////////////////////////////////////////////
-//// FirmwarePosition Selector
-//////////////////////////////////////////////
-
-BEGIN_EVENT_TABLE(FirmwarePositionCtrl, wxPanel)
-    EVT_BUTTON(ID_BROWSE_BTN, FirmwarePositionCtrl::OnBrowseBtn)
-END_EVENT_TABLE()
-
-IMPLEMENT_DYNAMIC_CLASS(FirmwarePositionCtrl, wxControl)
-
-bool FirmwarePositionCtrl::Create(wxWindow* parent, wxWindowID id,
-    const wxPoint& pos, const wxSize& size, long style,
-    const wxString title)
-{
-    if (!wxPanel::Create(parent, id, pos, size, style, title)) return false;
-
-    CreateControls();
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-return true;
-}
-
-void FirmwarePositionCtrl::CreateControls()
-{
-    // A top-level sizer
-    wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(topSizer);
-
-    //Device Selection
-    m_desc = new wxStaticText( this, wxID_STATIC,
-        wxT("Select original Firmware from the Manufacturer"), wxDefaultPosition,
-        wxDefaultSize, 0 );
-    topSizer->Add(m_desc, 0, wxALIGN_LEFT|wxALL, 5);
-
-    wxBoxSizer* horizontalSizer = new wxBoxSizer(wxHORIZONTAL);
-    topSizer->Add(horizontalSizer, 0, wxALIGN_LEFT|wxALL, 5);
-
-    m_firmwarePos = new wxTextCtrl(this,wxID_ANY,gv->curdestdir);
-    m_firmwarePos->SetToolTip(wxT("Type the folder where the original Firmware is here"));
-    m_firmwarePos->SetHelpText(wxT("Type the folder where the original Firmware is here"));
-    horizontalSizer->Add(m_firmwarePos,0,wxGROW | wxALL,5);
-
-    m_browseBtn = new wxButton(this, ID_BROWSE_BTN, wxT("Browse"),
-         wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator,
-         wxT("BrowseBtn"));
-    m_browseBtn->SetToolTip(wxT("Browse for the original Firmware"));
-    m_browseBtn->SetHelpText(wxT("Browse for the original Firmware"));
-    horizontalSizer->Add(m_browseBtn,0,wxGROW | wxALL,5);
-
-    Layout();
-
-}
-
-wxString FirmwarePositionCtrl::getFirmwarePos()
-{
-    return m_firmwarePos->GetValue();
-
-}
-
-void FirmwarePositionCtrl::setDefault()
-{
-    m_firmwarePos->SetValue(gv->curfirmware);
-}
-
-void FirmwarePositionCtrl::OnBrowseBtn(wxCommandEvent& event)
-{
-     wxString temp = wxFileSelector(
-        wxT("Please select the location of the original Firmware"), gv->curdestdir,wxT(""),wxT(""),wxT("*.hex"));
-
-    if (!temp.empty())
-    {
-        m_firmwarePos->SetValue(temp);
-    }
-
-}
-
diff --git a/rbutil/rbutilCtrls.h b/rbutil/rbutilCtrls.h
deleted file mode 100644
index 7998dc6..0000000
--- a/rbutil/rbutilCtrls.h
+++ /dev/null
@@ -1,286 +0,0 @@
-#ifndef RBUTILCTRLS_H_INCLUDED
-#define RBUTILCTRLS_H_INCLUDED
-
-#include "rbutil.h"
-
-
-class ImageCtrl: public wxControl
-{
-DECLARE_DYNAMIC_CLASS(ImageCtrl)
-DECLARE_EVENT_TABLE()
-
-public:
-    // Constructors
-    ImageCtrl() { }
-    ImageCtrl(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER,
-        const wxValidator& validator = wxDefaultValidator)
-        {
-            Create(parent, id, pos, size, style, validator);
-        }
-    // Creation
-    bool Create(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER,
-        const wxValidator& validator = wxDefaultValidator);
-
-    // Event handlers
-    void OnPaint(wxPaintEvent& event);
-
-    wxSize DoGetBestSize() const ;
-
-    void SetBitmap(wxBitmap bmp);
-
-protected:
-    wxBitmap m_bitmap;
-
-};
-
-class ThemeCtrl: public wxPanel
-{
-DECLARE_DYNAMIC_CLASS(ThemeCtrl)
-DECLARE_EVENT_TABLE()
-public:
-enum {
-            ID_DESC = 10001,
-            ID_FILESIZE= 10002,
-            ID_INSTALLCHECKBOX= 10003,
-            ID_PREVIEW_BITMAP = 10004,
-            ID_THEME_LST = 10005,
-            ID_THEME_SELECT_ALL = 10006
-     }; //End of Enum
-
-public:
-    // Constructors
-    ThemeCtrl() { Init(); }
-    ThemeCtrl(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""))
-        {
-            Init();
-            Create(parent, id, pos, size, style, title);
-        }
-    // Creation
-    bool Create(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""));
-
-     // Creates the controls and sizers
-   void CreateControls();
-   // Common initialization
-   void Init();
-   // Event handlers
-   void OnThemesLst(wxCommandEvent& event);
-   void OnSelectAll(wxCommandEvent& event);
-   void OnCheckBox(wxCommandEvent& event);
-
-   void setDevice(wxString device);
-   wxArrayString getThemesToInstall();
-
-protected:
-    void ThemePreview(void);
-
-    wxString m_currentimage;
-    wxString m_currentResolution;
-
-    wxStaticText* m_desc;
-    wxListBox* m_themeList;
-    wxButton* m_selectAllThemes;
-    wxStaticText* m_size;
-    wxTextCtrl* m_themedesc;
-    ImageCtrl* m_PreviewBitmap;
-
-    wxArrayString m_Themes;
-    wxArrayString m_Themes_path;
-    wxArrayString m_Themes_size;
-    wxArrayString m_Themes_image;
-    wxArrayString m_Themes_desc;
-
-};
-
-class OkCancelCtrl: public wxPanel
-{
-DECLARE_DYNAMIC_CLASS(OkCancelCtrl)
-DECLARE_EVENT_TABLE()
-
-public:
-    // Constructors
-    OkCancelCtrl() { Init(); }
-    OkCancelCtrl(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""))
-        {
-            Init();
-            Create(parent, id, pos, size, style, title);
-            }
-    // Creation
-    bool Create(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""));
-
-     // Creates the controls and sizers
-   void CreateControls();
-   // Common initialization
-   void Init() { }
-
-protected:
-    wxButton* m_OkBtn;
-    wxButton* m_CancelBtn;
-
-};
-
-class DeviceSelectorCtrl: public wxPanel
-{
-DECLARE_DYNAMIC_CLASS(DeviceSelectorCtrl)
-DECLARE_EVENT_TABLE()
-public:
-enum {
-            ID_DEVICE_CBX = 10001,
-            ID_AUTODETECT_BTN= 10002,
-     }; //End of Enum
-
-public:
-    // Constructors
-    DeviceSelectorCtrl() { }
-    DeviceSelectorCtrl(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""))
-        {
-            Create(parent, id, pos, size, style, title);
-        }
-    // Creation
-    bool Create(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""));
-
-     // Creates the controls and sizers
-   void CreateControls();
-   // Event handlers
-   void OnAutoDetect(wxCommandEvent& event);
-   void OnComboBox(wxCommandEvent& event);
-   // Accessors
-   wxString getDevice();
-   void setDefault();
-
-   bool AutoDetect();
-
-protected:
-    wxString m_currentDevice;
-    wxComboBox* m_deviceCbx;
-    wxStaticText* m_desc;
-    wxButton* m_autodetectBtn;
-
-};
-
-
-class DevicePositionCtrl: public wxPanel
-{
-DECLARE_DYNAMIC_CLASS(DevicePositionCtrl)
-DECLARE_EVENT_TABLE()
-public:
-enum {
-            ID_BROWSE_BTN = 10003,
-     }; //End of Enum
-
-public:
-    // Constructors
-    DevicePositionCtrl() { Init(); }
-    DevicePositionCtrl(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""))
-        {
-            Init();
-            Create(parent, id, pos, size, style, title);
-            }
-    // Creation
-    bool Create(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""));
-
-     // Creates the controls and sizers
-   void CreateControls();
-   // Common initialization
-   void Init() { }
-   // Event handlers
-   void OnBrowseBtn(wxCommandEvent& event);
-   // Accessors
-   wxString getDevicePos();
-
-   void setDefault();
-
-protected:
-    wxTextCtrl* m_devicePos;
-    wxStaticText* m_desc;
-    wxButton* m_browseBtn;
-
-};
-
-
-class FirmwarePositionCtrl: public wxPanel
-{
-DECLARE_DYNAMIC_CLASS(FirmwarePositionCtrl)
-DECLARE_EVENT_TABLE()
-public:
-enum {
-            ID_BROWSE_BTN = 10004,
-     }; //End of Enum
-
-public:
-    // Constructors
-    FirmwarePositionCtrl() { Init(); }
-    FirmwarePositionCtrl(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""))
-        {
-            Init();
-            Create(parent, id, pos, size, style, title);
-            }
-    // Creation
-    bool Create(wxWindow* parent, wxWindowID id,
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxNO_BORDER|wxTAB_TRAVERSAL,
-        const wxString title = wxT(""));
-
-     // Creates the controls and sizers
-   void CreateControls();
-   // Common initialization
-   void Init() { }
-   // Event handlers
-   void OnBrowseBtn(wxCommandEvent& event);
-   // Accessors
-   wxString getFirmwarePos();
-    void setDefault();
-
-protected:
-    wxTextCtrl* m_firmwarePos;
-    wxStaticText* m_desc;
-    wxButton* m_browseBtn;
-
-};
-
-
-
-#endif
-
diff --git a/rbutil/rbutilFrm.cpp b/rbutil/rbutilFrm.cpp
deleted file mode 100644
index 306f955..0000000
--- a/rbutil/rbutilFrm.cpp
+++ /dev/null
@@ -1,1164 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: rbutilFrm.cpp
- *
- * Copyright (C) 2005 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "rbutilFrm.h"
-#include "credits.h"
-
-#include "rbutilFrm_XPM.xpm"
-#include "icons/rbinstall_btn.h"
-#include "icons/remrb_btn.h"
-#include "icons/font_btn.h"
-#include "icons/bootloader_btn.h"
-#include "icons/rembootloader_btn.h"
-#include "icons/themes_btn.h"
-#include "icons/doom_btn.h"
-#include "icons/talkfile_btn.h"
-
-#include "rblogo.xpm"
-
-#include "bootloaders.h"
-#include "install_dialogs.h"
-
-
-
-//----------------------------------------------------------------------------
-// rbutilFrm
-//----------------------------------------------------------------------------
-
-BEGIN_EVENT_TABLE(rbutilFrm,wxFrame)
-	EVT_BUTTON      (ID_INSTALL_BTN, rbutilFrm::OnInstallBtn)
-	EVT_BUTTON      (ID_REMOVE_BTN, rbutilFrm::OnRemoveBtn)
-	EVT_BUTTON      (ID_FONT_BTN, rbutilFrm::OnFontBtn)
-	EVT_BUTTON      (ID_THEMES_BTN, rbutilFrm::OnThemesBtn)
-	EVT_BUTTON      (ID_BOOTLOADER_BTN, rbutilFrm::OnBootloaderBtn)
-	EVT_BUTTON      (ID_BOOTLOADERREMOVE_BTN, rbutilFrm::OnBootloaderRemoveBtn)
-	EVT_BUTTON      (ID_DOOM_BTN, rbutilFrm::OnDoomBtn)
-    EVT_BUTTON      (ID_TALK_BTN, rbutilFrm::OnTalkBtn)
-
-	EVT_CLOSE(rbutilFrm::rbutilFrmClose)
-	EVT_MENU(ID_FILE_EXIT, rbutilFrm::OnFileExit)
-	EVT_MENU(ID_FILE_ABOUT, rbutilFrm::OnFileAbout)
-	EVT_MENU(ID_FILE_WIPECACHE, rbutilFrm::OnFileWipeCache)
-	EVT_MENU(ID_PORTABLE_INSTALL, rbutilFrm::OnPortableInstall)
-
-	EVT_MENU(ID_FILE_PROXY, rbutilFrm::OnFileProxy)
-
-	EVT_UPDATE_UI   (ID_MANUAL, rbutilFrm::OnManualUpdate)
-
-END_EVENT_TABLE()
-
-rbutilFrm::rbutilFrm( wxWindow *parent, wxWindowID id, const wxString &title,
-    const wxPoint &position, const wxSize& size, long style )
-    : wxFrame( parent, id, title, position, size, style)
-{
-    wxLogVerbose(wxT("=== begin rbutilFrm::rbutilFrm(...)"));
-    CreateGUIControls();
-    wxLogVerbose(wxT("=== end rbutilFrm::rbutilFrm"));
-}
-
-rbutilFrm::~rbutilFrm() {}
-
-void rbutilFrm::CreateGUIControls(void)
-{
-    wxLogVerbose(wxT("=== begin rbutilFrm::CreateGUIControls()"));
-
-  	wxBoxSizer* WxBoxSizer1 = new wxBoxSizer(wxVERTICAL);
-	this->SetSizer(WxBoxSizer1);
-	this->SetAutoLayout(TRUE);
-
-	wxPanel* mainPanel = new wxPanel(this,wxID_ANY);
-	WxBoxSizer1->Add(mainPanel,1,wxGROW|wxALL,0);
-	wxBoxSizer* WxBoxSizer0 = new wxBoxSizer(wxVERTICAL);
-	mainPanel->SetSizer(WxBoxSizer0);
-	mainPanel->SetAutoLayout(TRUE);
-
-    wxBitmap rockboxbmp(rblogo_xpm);
-    ImageCtrl* rockboxbmpCtrl = new ImageCtrl(mainPanel,wxID_ANY);
-    rockboxbmpCtrl->SetBitmap(rockboxbmp);
-
-    WxBoxSizer0->Add(rockboxbmpCtrl,0,wxALIGN_CENTER_HORIZONTAL | wxALL,5);
-
-	myDeviceSelector = new DeviceSelectorCtrl(mainPanel,wxID_ANY);
-	myDeviceSelector->setDefault();
-	myDeviceSelector->AutoDetect();
-	WxBoxSizer0->Add(myDeviceSelector,0,wxGROW|wxALL,5);
-
-
-    wxNotebook* tabwindow = new wxNotebook(mainPanel,wxID_ANY);
-    WxBoxSizer0->Add(tabwindow,1,wxGROW|wxALL,5);
-
-    wxPanel* installpage = new wxPanel(tabwindow,wxID_ANY);
-    wxPanel* themepage = new wxPanel(tabwindow,wxID_ANY);
-    wxPanel* uninstallpage = new wxPanel(tabwindow,wxID_ANY);
-    wxPanel* manualpage = new wxPanel(tabwindow,wxID_ANY);
-    tabwindow->AddPage(installpage,wxT("Installation"),true);
-    tabwindow->AddPage(themepage,wxT("Extras"));
-    tabwindow->AddPage(uninstallpage,wxT("Uninstallation"));
-    tabwindow->AddPage(manualpage,wxT("Manual"));
-
-	/*********************
-	Install Page
-	***********************/
-
-	wxBoxSizer* WxBoxSizer2 = new wxBoxSizer(wxVERTICAL);
-	installpage->SetSizer(WxBoxSizer2);
-	installpage->SetAutoLayout(TRUE);
-
-	wxStaticBox* WxStaticBoxSizer3_StaticBoxObj = new wxStaticBox(installpage,
-        wxID_ANY, wxT("Please choose an option"));
-	wxStaticBoxSizer* WxStaticBoxSizer3 =
-        new wxStaticBoxSizer(WxStaticBoxSizer3_StaticBoxObj,wxHORIZONTAL);
-	WxBoxSizer2->Add(WxStaticBoxSizer3,1,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-	wxFlexGridSizer* WxFlexGridSizer1 = new wxFlexGridSizer(2,2,0,0);
-	WxStaticBoxSizer3->Add(WxFlexGridSizer1,0,wxGROW | wxALL,0);
-
-
-    wxBitmap BootloaderInstallButton (wxGetBitmapFromMemory(bootloader_btn_png,bootloader_btn_png_length));
-    WxBitmapButton4 = new wxBitmapButton(installpage, ID_BOOTLOADER_BTN,
-        BootloaderInstallButton, wxPoint(0,0), wxSize(64,54),
-        wxRAISED_BORDER | wxBU_AUTODRAW, wxDefaultValidator,wxT("Bootloader Installation"));
-    WxBitmapButton4->SetToolTip(wxT("Click here to install the Rockbox bootloader"));
-    WxFlexGridSizer1->Add(WxBitmapButton4, 0,
-        wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxStaticText* WxStaticText5 =  new wxStaticText(installpage, wxID_ANY,
-        wxT("Bootloader installation\n\n"
-        "Before Rockbox can be installed on your audio player, you "
-        "may have to\ninstall a bootloader.\nThis is only necessary the first time "
-        "Rockbox is installed."));
-	WxFlexGridSizer1->Add(WxStaticText5, 0,
-        wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-	wxBitmap WxBitmapButton1_BITMAP (wxGetBitmapFromMemory(rbinstall_btn_png,rbinstall_btn_png_length));
-	WxBitmapButton1 = new wxBitmapButton(installpage, ID_INSTALL_BTN,
-        WxBitmapButton1_BITMAP, wxPoint(0,0), wxSize(64,54),
-        wxRAISED_BORDER | wxBU_AUTODRAW, wxDefaultValidator,
-        wxT("Rockbox Installation"));
-	WxBitmapButton1->SetToolTip(wxT("Click here to install Rockbox"));
-	WxFlexGridSizer1->Add(WxBitmapButton1,0,
-        wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-	WxStaticText2 = new wxStaticText(installpage, ID_WXSTATICTEXT2,
-        wxT("Install Rockbox on your audio player"));
-	WxFlexGridSizer1->Add(WxStaticText2,0,
-        wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    /*********************+
-	Extras Page
-	***********************/
-
-	wxBoxSizer* WxBoxSizer3 = new wxBoxSizer(wxVERTICAL);
-	themepage->SetSizer(WxBoxSizer3);
-	themepage->SetAutoLayout(TRUE);
-
-	wxStaticBox* WxStaticBoxSizer4_StaticBoxObj = new wxStaticBox(themepage,
-        wxID_ANY, wxT("Please choose an option"));
-	wxStaticBoxSizer* WxStaticBoxSizer4 =
-        new wxStaticBoxSizer(WxStaticBoxSizer4_StaticBoxObj,wxHORIZONTAL);
-	WxBoxSizer3->Add(WxStaticBoxSizer4,1,wxALIGN_CENTER_HORIZONTAL |wxGROW| wxALL, 5);
-
-	wxFlexGridSizer* WxFlexGridSizer2 = new wxFlexGridSizer(2,2,0,0);
-	WxStaticBoxSizer4->Add(WxFlexGridSizer2,0,wxGROW | wxALL,0);
-
-    wxBitmap FontInstallButton (wxGetBitmapFromMemory(font_btn_png,font_btn_png_length));
-    WxBitmapButton3 = new wxBitmapButton(themepage, ID_FONT_BTN,
-        FontInstallButton, wxPoint(0,0), wxSize(64,54),
-        wxRAISED_BORDER | wxBU_AUTODRAW,wxDefaultValidator, wxT("Font installation"));
-    WxBitmapButton3->SetToolTip(wxT("Click here to install the most up to date "
-        "Rockbox fonts."));
-    WxFlexGridSizer2->Add(WxBitmapButton3, 0,
-        wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxStaticText* WxStaticText4 =  new wxStaticText(themepage, wxID_ANY,
-        wxT("Install the Rockbox fonts package\n\n"
-        "This step is needed for many Themes. You "
-        "will not need to download these\nagain unless you uninstall "
-        "Rockbox."));
-	WxFlexGridSizer2->Add(WxStaticText4, 0,
-        wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxBitmap ThemesInstallButton (wxGetBitmapFromMemory(themes_btn_png,themes_btn_png_length));
-    WxBitmapButton5 = new wxBitmapButton(themepage, ID_THEMES_BTN,
-        ThemesInstallButton, wxPoint(0,0), wxSize(64,54),
-        wxRAISED_BORDER | wxBU_AUTODRAW,wxDefaultValidator, wxT("Theme installation"));
-    WxBitmapButton5->SetToolTip(wxT("Click here to install themes for Rockbox."));
-    WxFlexGridSizer2->Add(WxBitmapButton5, 0,
-        wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxStaticText* WxStaticText6 =  new wxStaticText(themepage, wxID_ANY,
-        wxT("Install more Themes for Rockbox.\n\n"));
-	WxFlexGridSizer2->Add(WxStaticText6, 0,
-        wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxBitmap DoomInstallButton (wxGetBitmapFromMemory(doom_btn_png,doom_btn_png_length));
-    WxBitmapButton6 = new wxBitmapButton(themepage, ID_DOOM_BTN,
-        DoomInstallButton, wxPoint(0,0), wxSize(64,54),
-        wxRAISED_BORDER | wxBU_AUTODRAW,wxDefaultValidator, wxT("Freedoom installation"));
-    WxBitmapButton6->SetToolTip(wxT("Click here to install the freedoom wad files."));
-    WxFlexGridSizer2->Add(WxBitmapButton6, 0,
-        wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxStaticText* WxStaticText7 =  new wxStaticText(themepage, wxID_ANY,
-        wxT("Install the freedoom wad files.\n\n"));
-	WxFlexGridSizer2->Add(WxStaticText7, 0,
-        wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxBitmap TalkInstallButton (wxGetBitmapFromMemory(talkfile_btn_png,talkfile_btn_png_length));
-    WxBitmapButton7 = new wxBitmapButton(themepage, ID_TALK_BTN,
-        TalkInstallButton, wxPoint(0,0), wxSize(64,54),
-        wxRAISED_BORDER | wxBU_AUTODRAW,wxDefaultValidator, wxT("Create Talk Files"));
-    WxBitmapButton7->SetToolTip(wxT("Click here to create Talk files."));
-    WxFlexGridSizer2->Add(WxBitmapButton7, 0,
-        wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxStaticText* WxStaticText8 =  new wxStaticText(themepage, wxID_ANY,
-        wxT("Create Talk Files.\n\n"));
-	WxFlexGridSizer2->Add(WxStaticText8, 0,
-        wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-
-
-   /*********************+
-	Uninstall Page
-	***********************/
-
-	wxBoxSizer* WxBoxSizer4 = new wxBoxSizer(wxVERTICAL);
-	uninstallpage->SetSizer(WxBoxSizer4);
-	uninstallpage->SetAutoLayout(TRUE);
-
-	wxStaticBox* WxStaticBoxSizer5_StaticBoxObj = new wxStaticBox(uninstallpage,
-        wxID_ANY, wxT("Please choose an option"));
-	wxStaticBoxSizer* WxStaticBoxSizer5 =
-        new wxStaticBoxSizer(WxStaticBoxSizer5_StaticBoxObj,wxHORIZONTAL);
-	WxBoxSizer4->Add(WxStaticBoxSizer5,1,wxALIGN_CENTER_HORIZONTAL|wxGROW | wxALL, 5);
-
-	wxFlexGridSizer* WxFlexGridSizer3 = new wxFlexGridSizer(2,2,0,0);
-	WxStaticBoxSizer5->Add(WxFlexGridSizer3,0,wxGROW | wxALL,0);
-
-	wxBitmap WxBitmapButton2_BITMAP (wxGetBitmapFromMemory(remrb_btn_png,remrb_btn_png_length));
-	WxBitmapButton2 = new wxBitmapButton(uninstallpage, ID_REMOVE_BTN,
-        WxBitmapButton2_BITMAP, wxPoint(0,0), wxSize(64,54),
-        wxRAISED_BORDER | wxBU_AUTODRAW,wxDefaultValidator, wxT("Rockbox uninstallation"));
-	WxBitmapButton2->SetToolTip(wxT("Click here to uninstall Rockbox"));
-	WxFlexGridSizer3->Add(WxBitmapButton2,0,
-        wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-	WxStaticText3 = new wxStaticText(uninstallpage, ID_WXSTATICTEXT3,
-        wxT("Remove Rockbox from your audio player"));
-	WxFlexGridSizer3->Add(WxStaticText3,0,
-        wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-    wxBitmap WxBitmapButton4_BITMAP (wxGetBitmapFromMemory(rembootloader_btn_png,rembootloader_btn_png_length));
-	WxBitmapButton4 = new wxBitmapButton(uninstallpage, ID_BOOTLOADERREMOVE_BTN,
-        WxBitmapButton4_BITMAP, wxPoint(0,0), wxSize(64,54),
-        wxRAISED_BORDER | wxBU_AUTODRAW, wxDefaultValidator,
-        wxT("Bootloader uninstallation"));
-	WxBitmapButton4->SetToolTip(wxT("Click here to uninstall the Bootloader"));
-	WxFlexGridSizer3->Add(WxBitmapButton4,0,
-        wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-	WxStaticText4 = new wxStaticText(uninstallpage, ID_WXSTATICTEXT4,
-        wxT("Remove Rockbox Bootloader from your audio player"));
-	WxFlexGridSizer3->Add(WxStaticText4,0,
-        wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL,5);
-
-
-    /*****************
-    * Manual Page
-    ******************/
-
-    wxBoxSizer* WxBoxSizer5 = new wxBoxSizer(wxVERTICAL);
-	manualpage->SetSizer(WxBoxSizer5);
-	manualpage->SetAutoLayout(TRUE);
-
-    manuallink = new wxHyperlinkCtrl(manualpage,wxID_ANY,wxT("Rockbox PDF Manual"),wxT("http://www.rockbox.org"));
-    WxBoxSizer5->Add(manuallink,1,wxGROW | wxALL, 5);
-
-    manual =new wxHtmlWindow(manualpage,ID_MANUAL);
-    WxBoxSizer5->Add(manual,10,wxGROW | wxALL, 5);
-
-
-    /**********
-    ** rest of the controls
-    **********/
-
-	WxMenuBar1 =  new wxMenuBar();
-	wxMenu *ID_FILE_MENU_Mnu_Obj = new wxMenu(0);
-	WxMenuBar1->Append(ID_FILE_MENU_Mnu_Obj, wxT("&File"));
-
-    ID_FILE_MENU_Mnu_Obj->Append(ID_FILE_WIPECACHE,
-        wxT("&Empty local download cache"), wxT(""), wxITEM_NORMAL);
-    if (! gv->portable )
-    {
-        ID_FILE_MENU_Mnu_Obj->Append(ID_PORTABLE_INSTALL,
-            wxT("&Install Rockbox Utility on device"), wxT(""), wxITEM_NORMAL);
-    }
-    ID_FILE_MENU_Mnu_Obj->Append(ID_FILE_PROXY, wxT("Set &Proxy"), wxT(""),
-        wxITEM_NORMAL);
-    ID_FILE_MENU_Mnu_Obj->Append(ID_FILE_ABOUT, wxT("&About"), wxT(""),
-        wxITEM_NORMAL);
-    ID_FILE_MENU_Mnu_Obj->Append(ID_FILE_EXIT, wxT("E&xit\tCtrl+X"), wxT(""),
-        wxITEM_NORMAL);
-
-	this->SetMenuBar(WxMenuBar1);
-	Layout();
-	GetSizer()->Fit(this);
-	GetSizer()->SetSizeHints(this);
-	if (gv->portable)
-	{
-	    this->SetTitle(wxT("Rockbox Utility (portable)"));
-	} else
-	{
-        this->SetTitle(wxT("Rockbox Utility"));
-	}
-	this->Center();
-	wxIcon rbutilFrm_ICON (rbutilFrm_XPM);
-	this->SetIcon(rbutilFrm_XPM);
-	this->SetToolTip(wxT("Install Rockbox"));
-
-    wxLogVerbose(wxT("=== end rbutilFrm::CreateGUIControls"));
-}
-
-void  rbutilFrm::OnManualUpdate(wxUpdateUIEvent& event)
-{
-    wxString tmp = wxT("/rockbox-") + gv->curplat;
-
-    int index = GetDeviceId(false);
-    if(index < 0) {
-        curManualDevice = tmp;
-        wxString pdflink;
-        pdflink = gv->manual_url;
-        manuallink->SetURL(pdflink);
-        manual->SetPage(wxT("<p><b>no device selected</b> &mdash; "
-            "You can find an overview of available manuals at "
-            "<a href='http://www.rockbox.org/manual.shtml'>"
-            "http://www.rockbox.org/manual.shtml</a></p>"));
-        return;
-    }
-
-    if(gv->plat_manualname[index] != wxT(""))
-        tmp = wxT("/") + gv->plat_manualname[index];
-
-    if( tmp == curManualDevice)
-        return;
-
-    curManualDevice = tmp;
-
-    // construct link to pdf
-    wxString pdflink;
-    pdflink = gv->manual_url + tmp + wxT(".pdf");
-    manuallink->SetURL(pdflink);
-
-    // construct link to html
-    wxString htmllink;
-    htmllink = gv->manual_url + tmp + wxT("/rockbox-build.html");
-    if(gv->proxy_url == wxT(""))
-        if(manual->LoadPage(htmllink)) return;
-    manual->SetPage(wxT("<p>unable to display manual &mdash;"
-        "please use the PDF link above</p>"));
-
-
-}
-
-
-void rbutilFrm::OnFileProxy(wxCommandEvent& event)
-{
-
-    wxTextEntryDialog proxydlg(this,wxT("Please enter your Proxy in the Format: URL:PORT"),wxT("Proxy Configuration"), gv->proxy_url);
-
-    if(proxydlg.ShowModal() == wxID_OK)
-    {
-        gv->proxy_url = proxydlg.GetValue();
-    }
-
-}
-
-
-void rbutilFrm::rbutilFrmClose(wxCloseEvent& event)
-{
-    wxLogVerbose(wxT("=== begin rbutilFrm::rbutilFrmClose(event)"));
-    Destroy();
-    wxLogVerbose(wxT("=== end rbutilFrm::rbutilFrmClose"));
-}
-
-
-
-/*
- * OnFileExit
- */
-void rbutilFrm::OnFileExit(wxCommandEvent& event)
-{
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnFileExit(event)"));
-	Close();
-	wxLogVerbose(wxT("=== end rbutilFrm::OnFileExit"));
-}
-
-// The routines this code uses are in the wxWidgets documentation, but
-// not yet the library (2.7.0-1).  This code can be re-enabled later.
-
-void rbutilFrm::OnFileAbout(wxCommandEvent& event)
-{
-/*
-    wxAboutDialogInfo *info = new wxAboutDialogInfo();
-
-    info->SetName(wxT(RBUTIL_FULLNAME));
-    info->SetVersion(wxT(RBUTIL_VERSION));
-    info->SetCopyright(wxT(RBUTIL_COPYRIGHT));
-    info->SetDescription(wxT(RBUTIL_DESCRIPTION));
-    info->SetWebSite(wxT(RBUTIL_WEBSITE));
-
-    long i = 0;
-    while (rbutil_developers[i] != "")
-    {
-        info->AddDeveloper(wxT(rbutil_developers[i++]));
-    }
-
-    wxAboutBox(*info);
-    delete info;
-*/
-
-    AboutDlg(this).ShowModal();
-}
-
-void rbutilFrm::OnFileWipeCache(wxCommandEvent& event)
-{
-    wxString cacheloc, datadir;
-
-    datadir = gv->stdpaths->GetUserDataDir();
-    if (datadir == wxT(""))
-    {
-        ERR_DIALOG(wxT("Can't locate user data directory.  Unable to delete "
-            "cache."), wxT("Delete download cache.") );
-        return;
-    }
-
-    cacheloc = datadir + wxT("" PATH_SEP "download");
-
-    if (! rm_rf(cacheloc) )
-    {
-        wxMessageDialog* msg = new wxMessageDialog(this, wxT("Local download cache has been deleted.")
-                            , wxT("Cache deletion"), wxOK |wxICON_INFORMATION);
-        msg->ShowModal();
-        delete msg;
-    }
-    else {
-        MESG_DIALOG(wxT("Errors occured deleting the local download cache."));
-    }
-
-    wxMkdir(cacheloc, 0777);
-}
-
-void rbutilFrm::OnBootloaderRemoveBtn(wxCommandEvent& event)
-{
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnBootloaderRemoveBtn(event)"));
-
-    int index = GetDeviceId(true);
-    if(index < 0)
-        return;
-
-    wxString bootloadermethod = gv->plat_bootloadermethod[index];
-
-    if(!gv->plat_needsbootloader[index])
-    {
-    	 WARN_DIALOG(wxT("This Device doesnt need a Bootloader"),
-                wxT("Bootloader"));
-        return;
-    }
-
-    // really deinstall ?
-    wxMessageDialog msg(this,wxT("Do you really want to deinstall the Bootloader ?"),wxT("Bootloader deinstallation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-        return;
-
-
-    if(bootloadermethod == wxT("ipodpatcher"))
-    {
-        wxString bootloadername = wxT("bootloader-");
-        bootloadername.Append(gv->plat_bootloadername[index] );
-        if(ipodpatcher(BOOTLOADER_REM,bootloadername))
-        {
-            MESG_DIALOG(wxT("The Bootloader has been uninstalled.") );
-        }
-        else
-        {
-            MESG_DIALOG(wxT("The Uninstallation failed.") );
-        }
-    }
-    else if(bootloadermethod == wxT("sansapatcher"))
-    {
-        if(sansapatcher(BOOTLOADER_REM,gv->plat_bootloadername[index]))
-        {
-            MESG_DIALOG(wxT("The Bootloader has been uninstalled.") );
-        }
-        else
-        {
-            MESG_DIALOG(wxT("The Uninstallation failed.") );
-        }
-    }
-    else if(bootloadermethod== wxT("gigabeatf"))
-    {
-
-        if(gigabeatf(BOOTLOADER_REM,gv->plat_bootloadername[index],gv->curdestdir))
-        {
-           MESG_DIALOG(wxT("The Bootloader has been uninstalled."));
-        }
-        else
-            MESG_DIALOG(wxT("The Uninstallation failed.") );
-    }
-    else if(bootloadermethod == wxT("iaudio") )
-    {
-       MESG_DIALOG(wxT("To uninstall the Bootloader on this Device,\n"
-                "you need to download and install an Original Firmware from the Manufacturer."));
-    }
-    else if(bootloadermethod == wxT("fwpatcher"))
-    {
-       MESG_DIALOG(wxT("To uninstall the Bootloader on this Device,\n"
-                     "you need to download and install an original Firmware from the Manufacturer.\n"
-                     "To do this, you need to boot into the original Firmware."));
-    }
-    else if(bootloadermethod == wxT("h10"))
-    {
-        if(h10(BOOTLOADER_REM,gv->plat_bootloadername[index],gv->curdestdir))
-        {
-           MESG_DIALOG(wxT("The Bootloader has been uninstalled."));
-        }
-        else
-          MESG_DIALOG(wxT("The Uninstallation failed.") );
-    }
-    else
-    {
-        MESG_DIALOG(wxT("Unsupported Bootloader Uninstall method.") );
-    }
-
-    wxLogVerbose(wxT("=== end rbutilFrm::OnBootloaderRemoveBtn"));
-}
-
-void rbutilFrm::OnBootloaderBtn(wxCommandEvent& event)
-{
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnBootloaderBtn(event)"));
-
-    int index = GetDeviceId(true);
-    if(index < 0)
-        return;
-
-    wxString bootloadermethod = gv->plat_bootloadermethod[index];
-
-    if(!gv->plat_needsbootloader[index])
-    {
-    	 WARN_DIALOG(wxT("This Device doesnt need a Bootloader"),
-                wxT("Bootloader"));
-        return;
-    }
-
-    // Bootloader dialog
-    if(bootloadermethod != wxT("ipodpatcher") && bootloadermethod != wxT("sansapatcher") )
-    {
-        bootloaderInstallDlg dialog(NULL, wxID_ANY,wxT("Bootloader Installation"));
-        if (dialog.ShowModal() != wxID_OK)
-            return;
-    }
-
-    // really install ?
-    wxMessageDialog msg(this,wxT("Do you really want to install the Bootloader ?"),wxT("Bootloader installation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-       return;
-
-
-    if(bootloadermethod == wxT("ipodpatcher"))
-    {
-       wxString bootloadername = wxT("bootloader-");
-       bootloadername.Append(gv->plat_bootloadername[index] );
-       if(ipodpatcher(BOOTLOADER_ADD,bootloadername))
-       {
-           MESG_DIALOG(wxT("The Bootloader has been installed on your device.") );
-       }
-       else
-       {
-           MESG_DIALOG(wxT("The installation has failed.") );
-       }
-    }
-    else if(bootloadermethod == wxT("sansapatcher"))
-    {
-       if(sansapatcher(BOOTLOADER_ADD,gv->plat_bootloadername[index]))
-       {
-          MESG_DIALOG(wxT("The Bootloader has been installed on your device.") );
-       }
-       else
-       {
-          MESG_DIALOG(wxT("The installation has failed.") );
-       }
-
-    }
-    else if(bootloadermethod== wxT("gigabeatf"))
-    {
-
-       if(gigabeatf(BOOTLOADER_ADD,gv->plat_bootloadername[index],gv->curdestdir))
-       {
-          MESG_DIALOG(wxT("The Bootloader has been installed on your device."));
-       }
-       else
-           MESG_DIALOG(wxT("The installation has failed.") );
-    }
-    else if(bootloadermethod == wxT("iaudio") )
-    {
-       if(iaudiox5(BOOTLOADER_ADD,gv->plat_bootloadername[index],gv->curdestdir))
-       {
-           MESG_DIALOG(wxT("The Bootloader has been installed on your device.\n"
-                        "Now turn OFF your Device, unplug USB,and insert Charger\n"
-                        "Your Device will automatically upgrade the flash with the Rockbox bootloader"));
-       }
-       else
-           MESG_DIALOG(wxT("The installation has failed.") );
-    }
-    else if(bootloadermethod == wxT("fwpatcher"))
-    {
-       if(fwpatcher(BOOTLOADER_ADD,gv->plat_bootloadername[index],gv->curdestdir,gv->curfirmware))
-       {
-         MESG_DIALOG(wxT("The Bootloader has been patched and copied on your device.\n"
-                        "Now use the Firmware upgrade option of your Device\n"));
-       }
-       else
-           MESG_DIALOG(wxT("The installation has failed.") );
-    }
-    else if(bootloadermethod == wxT("h10"))
-    {
-       if(h10(BOOTLOADER_ADD,gv->plat_bootloadername[index],gv->curdestdir))
-       {
-          MESG_DIALOG(wxT("The Bootloader has been patched and copied on your device.\n"));
-       }
-       else
-         MESG_DIALOG(wxT("The installation has failed.") );
-    }
-    else
-    {
-       MESG_DIALOG(wxT("Unsupported Bootloader Install method.") );
-    }
-
-
-
-    wxLogVerbose(wxT("=== end rbutilFrm::OnBootloaderBtn"));
-
-}
-
-void rbutilFrm::OnInstallBtn(wxCommandEvent& event)
-{
-    wxString src, dest, buf;
-    wxDateTime date;
-    wxTimeSpan day(24);
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnInstallBtn(event)"));
-    wxFileSystem fs;
-    wxFileConfig* buildinfo;
-    wxDateSpan oneday;
-
-    int index = GetDeviceId(true);
-    if(index < 0)
-        return;
-
-    // rockbox install dialog
-    rockboxInstallDlg dialog(NULL, wxID_ANY,
-        wxT("Rockbox Installation"));
-    if (dialog.ShowModal() != wxID_OK)
-        return;
-
-    // really install
-    wxMessageDialog msg(this,wxT("Do you really want to install Rockbox ?"),wxT("rockbox installation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-        return;
-
-
-    switch (gv->curbuild)
-    {
-        case BUILD_RELEASE:
-            // This is a URL - don't use PATH_SEP
-            src = gv->download_url + gv->prog_name + wxT("-")
-                  + gv->last_release + wxT("-") + gv->curplat + wxT(".zip");
-            dest = gv->stdpaths->GetUserDataDir() + wxT("download" PATH_SEP)
-                   + gv->prog_name + wxT("-") + gv->last_release + wxT("-")
-                   + gv->curplat + wxT(".zip");
-            break;
-        case BUILD_DAILY:
-            dest = gv->stdpaths->GetUserDataDir()
-                   + PATH_SEP + wxT("download") + PATH_SEP + wxT("build-info");
-            if (DownloadURL(gv->server_conf_url, dest)) {
-                WARN_DIALOG(wxT("Unable to download build status."),
-                wxT("Install"));
-                buf = wxT("");
-            } else
-            {
-                buildinfo = new wxFileConfig(wxEmptyString,
-                    wxEmptyString, dest);
-                buf = buildinfo->Read(wxT("/dailies/date"));
-                buildinfo->DeleteAll();
-
-                if (buf.Len() != 8) {
-                    dest = wxT("Invalid build date: ") + buf;
-                    WARN_DIALOG(dest, wxT("Install"));
-                    buf = wxT("");
-                }
-            }
-
-            if (buf == wxT("")) {
-                WARN_DIALOG(wxT("Can't get date of latest build from "
-                    "server.  Using yesterday's date."), wxT("Install") );
-                date = wxDateTime::Now();
-                date.Subtract(oneday.Day());
-                buf = date.Format(wxT("%Y%m%d")); // yes, we want UTC
-            }
-
-            src = gv->daily_url + gv->curplat + wxT("/") + gv->prog_name
-                  + wxT("-") + gv->curplat + wxT("-") + buf + wxT(".zip");
-
-            dest = gv->stdpaths->GetUserDataDir() + PATH_SEP wxT("download")
-                   + gv->prog_name + wxT("-") + gv->curplat + wxT("-")
-                   + buf + wxT(".zip");
-            break;
-        case BUILD_BLEEDING:
-            src = gv->bleeding_url + gv->curplat + wxT("/")
-                  + gv->prog_name + wxT(".zip");
-            dest = gv->stdpaths->GetUserDataDir()
-                   + PATH_SEP wxT("download") PATH_SEP
-                   + gv->prog_name + wxT(".zip");
-            break;
-        default:
-            ERR_DIALOG(wxT("Something seriously odd has happened."),
-                wxT("Install"));
-            return;
-            break;
-    }
-
-    if (gv->nocache || ( ! wxFileExists(dest) ) )
-    {
-        if ( DownloadURL(src, dest) )
-        {
-            wxRemoveFile(dest);
-            ERR_DIALOG(wxT("Unable to download ")+src, wxT("Install"));
-            return;
-        }
-    }
-
-    if ( !UnzipFile(dest, gv->curdestdir, true) )
-    {
-        wxMessageDialog* msg = new wxMessageDialog(this, wxT("Rockbox has been installed on your device.")
-                        ,wxT("Installation"), wxOK |wxICON_INFORMATION);
-        msg->ShowModal();
-        delete msg;
-    } else
-    {
-        wxRemoveFile(dest);
-        ERR_DIALOG(wxT("Unable to unzip ")+dest, wxT("Install"));
-    }
-
-
-    wxLogVerbose(wxT("=== end rbutilFrm::OnInstallBtn"));
-}
-
-void rbutilFrm::OnFontBtn(wxCommandEvent& event)
-{
-    wxString src, dest, buf;
-    wxDateTime date;
-    wxTimeSpan day(24);
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnFontBtn(event)"));
-    wxFileSystem fs;
-    wxFileConfig* buildinfo;
-    wxDateSpan oneday;
-
-    int index = GetDeviceId(true);
-    if(index < 0)
-        return;
-
-    // font install dialog
-    fontInstallDlg dialog(NULL, wxID_ANY,
-        wxT("Font Installation"));
-    if (dialog.ShowModal() != wxID_OK)
-        return;
-
-    // really install ?
-    wxMessageDialog msg(this,wxT("Do you really want to install the Fonts ?"),wxT("Font installation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-        return;
-
-
-    buf = gv->curdestdir + wxT("" PATH_SEP ".rockbox");
-    if (! wxDirExists(buf) )
-    {
-        WARN_DIALOG(wxT("Rockbox is not yet installed on ") + buf
-                    + wxT(" - install Rockbox first."),
-                    wxT("Can't install fonts") );
-        return;
-    }
-
-    dest = gv->stdpaths->GetUserDataDir()
-           + wxT( "" PATH_SEP "download" PATH_SEP "build-info");
-    if (DownloadURL(gv->server_conf_url, dest))
-    {
-        WARN_DIALOG(wxT("Unable to download build status."),
-            wxT("Font Install"));
-            buf = wxT("");
-    } else
-    {
-        buildinfo = new wxFileConfig(wxEmptyString,
-            wxEmptyString, dest);
-        buf = buildinfo->Read(wxT("/dailies/date"));
-            buildinfo->DeleteAll();
-
-        if (buf.Len() != 8) {
-            WARN_DIALOG(wxT("Invalid build date: ") + buf, wxT("Font Install"));
-            buf = wxT("");
-        }
-    }
-
-    if (buf == wxT("")) {
-        WARN_DIALOG(wxT("Can't get date of latest build from "
-            "server.  Using yesterday's date."),
-            wxT("Font Install") );
-        date = wxDateTime::Now();
-        date.Subtract(oneday.Day());
-         buf = date.Format(wxT("%Y%m%d")); // yes, we want UTC
-    }
-
-    src = gv->font_url + buf + wxT(".zip");
-
-    dest = gv->stdpaths->GetUserDataDir() + wxT( "" PATH_SEP "download"
-           PATH_SEP "rockbox-fonts-") + buf + wxT(".zip");
-
-    if ( ! wxFileExists(dest)  )
-    {
-        if ( DownloadURL(src, dest) )
-        {
-            wxRemoveFile(dest);
-            ERR_DIALOG(wxT("Unable to download ") + src, wxT("Font Install"));
-            return;
-        }
-    }
-
-    if ( !UnzipFile(dest, gv->curdestdir, true) )
-    {
-        wxMessageDialog* msg = new wxMessageDialog(this, wxT("The Rockbox fonts have been installed on your device.")
-                        ,wxT("Installation"), wxOK |wxICON_INFORMATION);
-        msg->ShowModal();
-        delete msg;
-    } else
-    {
-        wxRemoveFile(dest);
-        ERR_DIALOG(wxT("Unable to unzip ") + dest, wxT("Font Install"));
-    }
-
-    wxLogVerbose(wxT("=== end rbutilFrm::OnFontBtn"));
-}
-
-void rbutilFrm::OnDoomBtn(wxCommandEvent& event)
-{
-    wxString src, dest, buf;
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnDoomBtn(event)"));
-
-    int index = GetDeviceId(true);
-    if(index < 0)
-        return;
-
-     // font install dialog, reused
-    fontInstallDlg dialog(NULL, wxID_ANY,
-        wxT("Freedoom wad file Installation"));
-    if (dialog.ShowModal() != wxID_OK)
-        return;
-
-    // really install ?
-    wxMessageDialog msg(this,wxT("Do you really want to install the Freedoom wads ?"),wxT("Freedoom installation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-        return;
-
-    buf = gv->curdestdir + wxT("" PATH_SEP ".rockbox");
-    if (! wxDirExists(buf) )
-    {
-        WARN_DIALOG(wxT("Rockbox is not yet installed on ") + buf
-                    + wxT(" - install Rockbox first."),
-                    wxT("Can't install freedoom wads") );
-        return;
-    }
-
-    src = gv->doom_url;
-
-    dest = gv->stdpaths->GetUserDataDir() + wxT("" PATH_SEP "download" PATH_SEP
-           "rockdoom.zip");
-
-    if ( ! wxFileExists(dest)  )
-    {
-        if ( DownloadURL(src, dest) )
-        {
-            wxRemoveFile(dest);
-            ERR_DIALOG(wxT("Unable to download ") + src,
-                       wxT("Freedoom Install"));
-            return;
-        }
-    }
-
-    if ( !UnzipFile(dest, gv->curdestdir, true) )
-    {
-        wxMessageDialog* msg = new wxMessageDialog(this, wxT("The Freedoom wads have been installed on your device.")
-                        ,wxT("Installation"), wxOK |wxICON_INFORMATION);
-        msg->ShowModal();
-        delete msg;
-    } else
-    {
-        wxRemoveFile(dest);
-        ERR_DIALOG(wxT("Unable to unzip ") + dest, wxT("Freedoom Install"));
-    }
-
-
-    wxLogVerbose(wxT("=== end rbutilFrm::OnDoomBtn"));
-}
-
-
-void rbutilFrm::OnThemesBtn(wxCommandEvent& event)
-{
-    wxString src, dest, buf;
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnThemesBtn(event)"));
-
-    int index = GetDeviceId(true);
-    if(index < 0)
-        return;
-
-    // Theme install dialog
-    themesInstallDlg dialog(NULL, wxID_ANY,
-        wxT("Theme Installation"));
-    if (dialog.ShowModal() != wxID_OK)
-        return;
-
-    // really install ?
-    wxMessageDialog msg(this,wxT("Do you really want to install the selected Themes ?"),wxT("Theme installation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-        return;
-
-    bool success=true;
-    for(unsigned int i=0 ;i < gv->themesToInstall.GetCount();i++)
-    {
-        if(!InstallTheme(gv->themesToInstall[i]))
-        {
-            MESG_DIALOG(wxT("The Themes installation has failed") );
-            success=false;
-            break;
-        }
-    }
-    if(success)
-    {
-        MESG_DIALOG(wxT("The Theme installation completed successfully.") );
-    }
-
-
-     wxLogVerbose(wxT("=== end rbutilFrm::OnThemesBtn(event)"));
-}
-
-
-void rbutilFrm::OnRemoveBtn(wxCommandEvent& event)
-{
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnRemoveBtn(event)"));
-
-    int index = GetDeviceId(true);
-    if(index < 0)
-        return;
-
-    // Rockbox deinstall dialog
-    rockboxDeInstallDlg dialog(NULL, wxID_ANY,
-        wxT("Rockbox Deinstallation"));
-    if (dialog.ShowModal() != wxID_OK)
-        return;
-
-    // really install ?
-    wxMessageDialog msg(this,wxT("Do you really want to deinstall Rockbox ?"),wxT("Rockbox deinstallation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-        return;
-
-
-    if (Uninstall(gv->curdestdir, gv->curisfull) )
-    {
-       MESG_DIALOG(
-       wxT("The uninstallation wizard was cancelled or completed with "
-         "some errors.") );
-    } else {
-        wxMessageDialog* msg = new wxMessageDialog(this, wxT("The uninstall wizard completed successfully\n"
-                      "Depending on which Device you own, you also have to uninstall the Bootloader")
-                        ,wxT("Uninstallation"), wxOK |wxICON_INFORMATION);
-        msg->ShowModal();
-        delete msg;
-    }
-
-    wxLogVerbose(wxT("=== end rbutilFrm::OnRemoveBtn"));
-}
-
-void rbutilFrm::OnPortableInstall(wxCommandEvent& event)
-{
-    wxString src, dest, buf;
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnPortableInstall(event)"));
-    wxFileSystem fs;
-    wxDateSpan oneday;
-
-    int index = GetDeviceId(true);
-    if(index < 0)
-        return;
-
-    //portable install dialog ( reused font dialog)
-    fontInstallDlg dialog(NULL, wxID_ANY,
-        wxT("Rockbox Utility Portable Installation"));
-    if (dialog.ShowModal() != wxID_OK)
-        return;
-
-     // really install ?
-    wxMessageDialog msg(this,wxT("Do you really want a portable install of rbutil ?"),wxT("rbutil installation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-        return;
-
-    if ( InstallRbutil(gv->curdestdir) )
-    {
-        MESG_DIALOG(wxT("The Rockbox Utility has been installed on your device."));
-
-    } else
-    {
-        ERR_DIALOG(wxT("Installation failed"), wxT("Portable Install"));
-    }
-
-    wxLogVerbose(wxT("=== end rbutilFrm::OnUnstallPortable"));
-}
-
-void rbutilFrm::OnTalkBtn(wxCommandEvent& event)
-{
-    wxLogVerbose(wxT("=== begin rbutilFrm::OnTalkBtn(event)"));
-
-    TalkFileCreator talk;
-
-    talkInstallDlg dialog(&talk,NULL,wxID_ANY);
-
-    if (dialog.ShowModal() != wxID_OK)
-       return;
-
-     // really install ?
-    wxMessageDialog msg(this,wxT("Do you really want to create Talkfiles ?"),wxT("Talk file creation"),wxOK|wxCANCEL);
-    if(msg.ShowModal() != wxID_OK )
-        return;
-
-    if(talk.createTalkFiles())
-    {
-          MESG_DIALOG(wxT("Talk files have been successfully created."));
-    }
-    else
-    {
-         ERR_DIALOG(wxT("Talkfile creation failed"), wxT("Talk file creation"));
-    }
-
-    wxLogVerbose(wxT("=== end rbutilFrm::OnTalkBtn"));
-}
-
-int rbutilFrm::GetDeviceId(bool detect)
-{
-    int index = gv->plat_id.Index(gv->curplat);
-    if(index < 0 && detect)
-    {
-        if( wxMessageBox(wxT("No device selected. Do you want to autodetect "
-                         "the device?"),
-                         wxT("Warning"), wxYES_NO ) == wxYES )
-        {
-            myDeviceSelector->AutoDetect();
-            index = gv->plat_id.Index(gv->curplat);
-            if(index < 0)
-            {
-                WARN_DIALOG( wxT("Aborting"), wxT("Auto detection failed") );
-                return index;
-            }
-            else
-            {
-                if( wxMessageBox(wxT("Found ") + gv->plat_name[index] +
-                                 wxT(". Do you want to continue?"),
-                                 wxT("Device found"), wxYES_NO ) == wxYES )
-                    return index;
-                else
-                    return -1;
-            }
-        }
-        else
-        {
-            return -1;
-        }
-    }
-    return index;
-}
-
-AboutDlg::AboutDlg(rbutilFrm* parent)
-    : wxDialog(parent, -1, wxT("About"), wxDefaultPosition, wxDefaultSize,
-    wxDEFAULT_DIALOG_STYLE)
-{
-    wxBoxSizer* WxBoxSizer1 = new wxBoxSizer(wxVERTICAL);
-    this->SetSizer(WxBoxSizer1);
-    this->SetAutoLayout(TRUE);
-
-    wxBoxSizer* WxBoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
-
-    wxBitmap WxBitmap1 = wxBitmap(rbutilFrm_XPM);
-    wxStaticBitmap* WxStaticBitmap1 = new wxStaticBitmap(this, wxID_ANY,
-        WxBitmap1);
-    WxBoxSizer2->Add(WxStaticBitmap1, 0, wxALL | wxCENTER, 5);
-
-    wxStaticText* WxStaticText1 = new wxStaticText(this, wxID_ANY,
-        wxT(RBUTIL_FULLNAME), wxDefaultPosition, wxDefaultSize,
-        wxALIGN_CENTER | wxST_NO_AUTORESIZE );
-    WxBoxSizer2->Add(WxStaticText1, 0, wxALL | wxCENTER, 5);
-    WxBoxSizer1->Add(WxBoxSizer2, 0, wxALL, 5);
-
-    wxStaticText* WxStaticText2 = new wxStaticText(this, wxID_ANY,
-        wxT(RBUTIL_VERSION "\n" RBUTIL_DESCRIPTION "\n\n" RBUTIL_COPYRIGHT));
-    WxStaticText2->Wrap(400);
-    WxBoxSizer1->Add(WxStaticText2, 0, wxALL, 5);
-
-    wxHyperlinkCtrl* WxHyperlink1 = new wxHyperlinkCtrl(this, wxID_ANY,
-        wxT(RBUTIL_WEBSITE), wxT(RBUTIL_WEBSITE) );
-    WxBoxSizer1->Add(WxHyperlink1, 0, wxALL, 5);
-
-    wxStaticBox* WxStaticBox1 = new wxStaticBox(this, wxID_ANY, wxT("Contributors:"));
-    wxStaticBoxSizer* WxStaticBoxSizer2 = new wxStaticBoxSizer(WxStaticBox1,
-        wxVERTICAL);
-    wxTextCtrl* WxTextCtrl1 = new wxTextCtrl(this, wxID_ANY, wxEmptyString,
-        wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY);
-
-    long i = 0;
-    while ( rbutil_developers[i] != wxT(""))
-    {
-        WxTextCtrl1->AppendText(rbutil_developers[i++]);
-        WxTextCtrl1->AppendText(wxT("\n"));
-    }
-
-    WxBoxSizer1->Add(WxStaticBoxSizer2, 1, wxGROW | wxALL, 5);
-    WxStaticBoxSizer2->Add(WxTextCtrl1, 1, wxGROW | wxALL, 0);
-
-    wxStdDialogButtonSizer* WxStdDialogButtonSizer1 = new wxStdDialogButtonSizer();
-    wxButton* WxOKButton = new wxButton(this, wxID_OK);
-    WxStdDialogButtonSizer1->AddButton(WxOKButton);
-    WxStdDialogButtonSizer1->Realize();
-
-    WxBoxSizer1->Add(WxStdDialogButtonSizer1, 0, wxALL | wxCENTER, 5);
-
-    GetSizer()->Fit(this);
-    GetSizer()->SetSizeHints(this);
-
-//this->Center();
-    this->Show();
-
-}
-
-AboutDlg::~AboutDlg()
-{
-}
diff --git a/rbutil/rbutilFrm.h b/rbutil/rbutilFrm.h
deleted file mode 100644
index 7341323..0000000
--- a/rbutil/rbutilFrm.h
+++ /dev/null
@@ -1,135 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: rbutilFrm.h
- *
- * Copyright (C) 2005 Christi Alice Scarborough
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef __rbutilFrm_HPP_
-#define __rbutilFrm_HPP_
-
-#include <wx/wxprec.h>
-#ifdef __BORLANDC__
-        #pragma hdrstop
-#endif
-#ifndef WX_PRECOMP
-        #include <wx/wx.h>
-#endif
-
-#include <wx/menu.h>
-#include <wx/stattext.h>
-#include <wx/bmpbuttn.h>
-#include <wx/statbmp.h>
-#include <wx/panel.h>
-
-#include <wx/frame.h>
-#include <wx/valgen.h>
-//#include <wx/aboutdlg.h>
-#include <wx/richtext/richtextctrl.h>
-
-#include "rbutil.h"
-#include "rbutilCtrls.h"
-
-
-class rbutilFrm : public wxFrame
-{
-private:
-    DECLARE_EVENT_TABLE()
-public:
-    rbutilFrm( wxWindow *parent, wxWindowID id = 1,
-        const wxString &title = wxT("Rockbox Utility"),
-        const wxPoint& pos = wxDefaultPosition,
-        const wxSize& size = wxDefaultSize,
-        long style = wxCAPTION | wxRESIZE_BORDER | wxSYSTEM_MENU |
-            wxMINIMIZE_BOX|wxMAXIMIZE_BOX | wxCLOSE_BOX);
-    virtual ~rbutilFrm();
-public:
-	    DeviceSelectorCtrl* myDeviceSelector;
-	    wxHyperlinkCtrl* manuallink;
-	    wxHtmlWindow* manual;
-        wxString curManualDevice;
-
-        wxMenuBar *WxMenuBar1;
-		wxStaticText *WxStaticText3;
-		wxBitmapButton *WxBitmapButton2;
-		wxStaticText *WxStaticText2;
-		wxBitmapButton *WxBitmapButton1;
-		wxBitmapButton *WxBitmapButton3;
-		wxBitmapButton *WxBitmapButton4;
-		wxBitmapButton *WxBitmapButton5;
-		wxBitmapButton *WxBitmapButton6;
-		wxBitmapButton *WxBitmapButton7;
-		wxFlexGridSizer *WxFlexGridSizer1;
-		wxStaticBoxSizer *WxStaticBoxSizer3;
-		wxStaticBitmap *WxStaticBitmap1;
-		wxBoxSizer *WxBoxSizer2;
-		wxPanel *WxPanel1;
-		wxBoxSizer *WxBoxSizer1;
-public:
-	enum {
-			ID_FILE_MENU = 1033,
-			ID_FILE_EXIT = 1034,
-			ID_FILE_ABOUT = 1035,
-			ID_FILE_WIPECACHE = 1036,
-			ID_PORTABLE_INSTALL = 1037,
-
-			ID_WXSTATICTEXT3 = 1032,
-			ID_WXSTATICTEXT4 = 1032,
-			ID_REMOVE_BTN = 1039,
-			ID_BOOTLOADERREMOVE_BTN = 1038,
-			ID_WXSTATICTEXT2 = 1029,
-			ID_INSTALL_BTN = 1028,
-			ID_WXSTATICBITMAP1 = 1053,
-            ID_FONT_BTN = 1128,
-            ID_THEMES_BTN = 1139,
-            ID_DOOM_BTN = 1140,
-            ID_TALK_BTN = 1141,
-            ID_BOOTLOADER_BTN = 1129,
-			ID_WXPANEL1 = 1064,
-
-            ID_MANUAL = 1065,
-            ID_FILE_PROXY = 1066,
-
-            ID_DUMMY_VALUE_
-   }; //End of Enum
-public:
-    void rbutilFrmClose(wxCloseEvent& event);
-    void CreateGUIControls(void);
-	void OnFileExit(wxCommandEvent& event);
-	void OnFileAbout(wxCommandEvent &event);
-	void OnFileWipeCache(wxCommandEvent &event);
-	void OnLocationBtn(wxCommandEvent& event);
-	void OnInstallBtn(wxCommandEvent& event);
-	void OnRemoveBtn(wxCommandEvent& event);
-	void OnFontBtn(wxCommandEvent& event);
-	void OnThemesBtn(wxCommandEvent& event);
-	void OnBootloaderBtn(wxCommandEvent& event);
-	void OnPortableInstall(wxCommandEvent& event);
-	void OnBootloaderRemoveBtn(wxCommandEvent& event);
-    void OnManualUpdate(wxUpdateUIEvent& event);
-    void OnFileProxy(wxCommandEvent& event);
-    void OnDoomBtn(wxCommandEvent& event);
-    void OnTalkBtn(wxCommandEvent& event);
-
-    int GetDeviceId(bool);
-
-};
-
-#endif
-
-
-
-
diff --git a/rbutil/rbutilFrm_XPM.xpm b/rbutil/rbutilFrm_XPM.xpm
deleted file mode 100644
index 84d3d52..0000000
--- a/rbutil/rbutilFrm_XPM.xpm
+++ /dev/null
@@ -1,666 +0,0 @@
-/* rbutilFrm XPM */
-static char *rbutilFrm_XPM[]={
-"32 32 630 2",
-"      c None",
-" 0    c #F7F8FD",
-" 1    c #EBEEF5",
-" 2    c #E4E9F8",
-" 3    c #FAFCFE",
-" 4    c #FAFBFD",
-" 5    c #7085D8",
-" 6    c #204DC6",
-" 7    c #2350C7",
-" 8    c #7C95D6",
-" 9    c #F3F7FD",
-" a    c #8C9ED8",
-" b    c #1F4FD1",
-" c    c #2153D3",
-" d    c #1645BF",
-" e    c #001F94",
-" f    c #687AB7",
-" g    c #FFFFFE",
-" h    c #FCFCFD",
-" i    c #FDFDFE",
-" j    c #FEFEFE",
-" k    c #F4F6FC",
-" l    c #F5F7FC",
-" m    c #DEE2F6",
-" n    c #2B54CF",
-" o    c #1B4ECF",
-" p    c #1B4AC5",
-" q    c #153DB6",
-" r    c #062793",
-" s    c #7788B7",
-" t    c #D5D8E0",
-" u    c #DCDCE5",
-" v    c #E4E2EB",
-" w    c #E5E2E9",
-" x    c #F4F4F6",
-" y    c #F7F6F9",
-" z    c #F9F9FA",
-" A    c #FEFEFF",
-" B    c #C6CDF0",
-" C    c #6C86D4",
-" D    c #6989D4",
-" E    c #BECFED",
-" F    c #F9FAFE",
-" G    c #FEFFFF",
-" H    c #7F96D4",
-" I    c #0532B3",
-" J    c #1342BC",
-" K    c #1A48C2",
-" L    c #072BA3",
-" M    c #394C9D",
-" N    c #CCBEBC",
-" O    c #D7D0D0",
-" P    c #C4C4CE",
-" Q    c #B7BCC6",
-" R    c #B4B9C4",
-" S    c #C3C6D0",
-" T    c #D1D3DE",
-" U    c #D8DBE4",
-" V    c #DDDFE3",
-" W    c #9EA7D4",
-" X    c #3559C6",
-" Y    c #194BC4",
-" Z    c #1240B9",
-" &    c #002397",
-"0     c #8191C7",
-"00    c #FDFEFE",
-"01    c #EEF1F9",
-"02    c #3048A1",
-"03    c #4B5B9A",
-"04    c #4059A0",
-"05    c #0B288B",
-"06    c #16338B",
-"07    c #A8ADBE",
-"08    c #EDC5B8",
-"09    c #E5BDAD",
-"0a    c #DAB6A6",
-"0b    c #D5B6A7",
-"0c    c #BDB0B3",
-"0d    c #AEB2C0",
-"0e    c #C7CBD7",
-"0f    c #D3D7DE",
-"0g    c #97A8C8",
-"0h    c #2E50B9",
-"0i    c #1D4ECC",
-"0j    c #184AC6",
-"0k    c #173EB1",
-"0l    c #08248F",
-"0m    c #000A5E",
-"0n    c #E0E0EB",
-"0o    c #F2F2F7",
-"0p    c #B7B4CC",
-"0q    c #FFFBFF",
-"0r    c #CED1E1",
-"0s    c #6B7588",
-"0t    c #6179B2",
-"0u    c #8198CD",
-"0v    c #97A3D6",
-"0w    c #9DAADB",
-"0x    c #A5AED1",
-"0y    c #C9C6D4",
-"0z    c #C5BEC3",
-"0A    c #C5CACC",
-"0B    c #C2C3C9",
-"0C    c #C7C5CA",
-"0D    c #627BBC",
-"0E    c #204CCC",
-"0F    c #1949C5",
-"0G    c #1746C1",
-"0H    c #1439AB",
-"0I    c #072282",
-"0J    c #080D53",
-"0K    c #CFCEE5",
-"0L    c #FAF9F9",
-"0M    c #F5F0F1",
-"0N    c #F7F9FD",
-"0O    c #BCBFCC",
-"0P    c #A9B4CB",
-"0Q    c #5474C9",
-"0R    c #6B6F83",
-"0S    c #757679",
-"0T    c #6B738C",
-"0U    c #6B78A2",
-"0V    c #6E81B2",
-"0W    c #778CB9",
-"0X    c #8E9DCC",
-"0Y    c #A3B2DD",
-"0Z    c #AFB8D6",
-"0&    c #2C4395",
-"1     c #082887",
-"10    c #0E3095",
-"11    c #0F33A7",
-"12    c #0C2C9C",
-"13    c #071A67",
-"14    c #191955",
-"15    c #BEBDD9",
-"16    c #EEEDF0",
-"17    c #F9F8FB",
-"18    c #D1D8E8",
-"19    c #BBBEC3",
-"1a    c #889FE5",
-"1b    c #5C6994",
-"1c    c #918B6C",
-"1d    c #8C886D",
-"1e    c #8F846F",
-"1f    c #8F8471",
-"1g    c #878274",
-"1h    c #7E7C79",
-"1i    c #7B7B7E",
-"1j    c #5268AC",
-"1k    c #688AD7",
-"1l    c #798699",
-"1m    c #959AAC",
-"1n    c #9FA9C8",
-"1o    c #495181",
-"1p    c #0B1765",
-"1q    c #131455",
-"1r    c #161547",
-"1s    c #ACACC5",
-"1t    c #FBFAFB",
-"1u    c #EBE8ED",
-"1v    c #F7F8FF",
-"1w    c #B8BAC4",
-"1x    c #ACB5CB",
-"1y    c #5474C4",
-"1z    c #7E7B73",
-"1A    c #93896C",
-"1B    c #8A836C",
-"1C    c #8B846E",
-"1D    c #918870",
-"1E    c #928D70",
-"1F    c #958D71",
-"1G    c #968D73",
-"1H    c #4D6AB1",
-"1I    c #8399C5",
-"1J    c #C4C0B8",
-"1K    c #F8F7F7",
-"1L    c #EDF4FF",
-"1M    c #B0ABAA",
-"1N    c #353448",
-"1O    c #16134E",
-"1P    c #161638",
-"1Q    c #C5C5CC",
-"1R    c #EAE5EB",
-"1S    c #FAFBFF",
-"1T    c #D9DBED",
-"1U    c #B6B6BA",
-"1V    c #7F94D5",
-"1W    c #576895",
-"1X    c #98896B",
-"1Y    c #96886C",
-"1Z    c #95886B",
-"1&    c #93896D",
-"2     c #8F8672",
-"20    c #8A8673",
-"21    c #948F6F",
-"22    c #768092",
-"23    c #5B7DD7",
-"24    c #B3B5B8",
-"25    c #D1CFD3",
-"26    c #F7FFFF",
-"27    c #C9D0DF",
-"28    c #A09088",
-"29    c #5B5255",
-"2a    c #3B3852",
-"2b    c #94949D",
-"2c    c #F8F8F9",
-"2d    c #EFEEF5",
-"2e    c #F5F9FF",
-"2f    c #B3B4C0",
-"2g    c #A0A9B2",
-"2h    c #4D78EB",
-"2i    c #3C63D6",
-"2j    c #5D72B4",
-"2k    c #6576A3",
-"2l    c #707B91",
-"2m    c #827F86",
-"2n    c #887F7B",
-"2o    c #8B8071",
-"2p    c #918871",
-"2q    c #5873B6",
-"2r    c #91A3D4",
-"2s    c #B9B7B5",
-"2t    c #EAF0F5",
-"2u    c #E8F2FC",
-"2v    c #B1AFBA",
-"2w    c #84736E",
-"2x    c #93807A",
-"2y    c #665E65",
-"2z    c #D8D9E2",
-"2A    c #EAEAEF",
-"2B    c #F8FAFE",
-"2C    c #D4DEF0",
-"2D    c #9C9C9F",
-"2E    c #6D81BE",
-"2F    c #436EE8",
-"2G    c #5E87ED",
-"2H    c #3867DA",
-"2I    c #4069DB",
-"2J    c #456CDF",
-"2K    c #4261D2",
-"2L    c #4663C3",
-"2M    c #5871BC",
-"2N    c #5C73B8",
-"2O    c #5D80D7",
-"2P    c #B2B6BB",
-"2Q    c #C3C3CE",
-"2R    c #FCFFFF",
-"2S    c #CFD9E9",
-"2T    c #9C8F8E",
-"2U    c #7C6E66",
-"2V    c #927C7C",
-"2W    c #83819D",
-"2X    c #FCFCFF",
-"2Y    c #F9F6FA",
-"2Z    c #ECEBF1",
-"2&    c #FBFFFF",
-"3     c #B9BCC9",
-"30    c #AAB0C3",
-"31    c #4870EB",
-"32    c #2B5DE1",
-"33    c #4F72CE",
-"34    c #3C62CB",
-"35    c #4E73D6",
-"36    c #5777DA",
-"37    c #456ED4",
-"38    c #7393E1",
-"39    c #4D77F4",
-"3a    c #3060F1",
-"3b    c #7C94C8",
-"3c    c #A8A6A6",
-"3d    c #E6E9EF",
-"3e    c #EDFAFF",
-"3f    c #BBBDC7",
-"3g    c #8C7A74",
-"3h    c #827670",
-"3i    c #90847E",
-"3j    c #ECECF0",
-"3k    c #ECE5EC",
-"3l    c #DAE0EF",
-"3m    c #ACB0B3",
-"3n    c #869EDC",
-"3o    c #577EDE",
-"3p    c #B0C0E7",
-"3q    c #EFF4FF",
-"3r    c #E4EAFF",
-"3s    c #9EC0FC",
-"3t    c #3265E4",
-"3u    c #3366E5",
-"3v    c #4871DC",
-"3w    c #3660DB",
-"3x    c #5075E7",
-"3y    c #8C9097",
-"3z    c #B3B4B6",
-"3A    c #D8E4F1",
-"3B    c #A89A92",
-"3C    c #837069",
-"3D    c #91817A",
-"3E    c #E0DDD8",
-"3F    c #F8F5F6",
-"3G    c #F6F2F2",
-"3H    c #B9BCC7",
-"3I    c #A8ACC0",
-"3J    c #BBCCEC",
-"3K    c #F8F9FA",
-"3L    c #DCD3CD",
-"3M    c #EEECEF",
-"3N    c #D9D8D9",
-"3O    c #E2E4DB",
-"3P    c #A4BADE",
-"3Q    c #3161E4",
-"3R    c #5F85F4",
-"3S    c #6387ED",
-"3T    c #8597D5",
-"3U    c #A4A8AA",
-"3V    c #DEE2E9",
-"3W    c #F4FFFF",
-"3X    c #BEC3CC",
-"3Y    c #8D7C6F",
-"3Z    c #7A6D65",
-"3&    c #A2928E",
-"4     c #FDFBFB",
-"40    c #FCFCFE",
-"41    c #D1D6EB",
-"42    c #F7FAFD",
-"43    c #B2B4C6",
-"44    c #D0D4E4",
-"45    c #F9FCFF",
-"46    c #E7EBF4",
-"47    c #C3C4CE",
-"48    c #B6B3C1",
-"49    c #989BA1",
-"4a    c #E7E7E4",
-"4b    c #E9ECF7",
-"4c    c #3B61D1",
-"4d    c #92A0D0",
-"4e    c #C7CACC",
-"4f    c #A0A6B2",
-"4g    c #B2B4BA",
-"4h    c #FAFFFF",
-"4i    c #E2EAF6",
-"4j    c #A9A3A4",
-"4k    c #7F6F64",
-"4l    c #85776E",
-"4m    c #CAC4C0",
-"4n    c #EAEDFA",
-"4o    c #5A80EA",
-"4p    c #2D64E7",
-"4q    c #4778E8",
-"4r    c #788FC7",
-"4s    c #B4B7CA",
-"4t    c #CBCCD7",
-"4u    c #E7EAE9",
-"4v    c #C6CDD5",
-"4w    c #AEB3B9",
-"4x    c #8A8C8B",
-"4y    c #C0C5C5",
-"4z    c #B8C4E3",
-"4A    c #2859CF",
-"4B    c #2855CD",
-"4C    c #7989A5",
-"4D    c #A4A69F",
-"4E    c #D6DAE0",
-"4F    c #CBD1DD",
-"4G    c #938781",
-"4H    c #84756D",
-"4I    c #9B8985",
-"4J    c #F6F3F2",
-"4K    c #F7F9FE",
-"4L    c #5C7CE7",
-"4M    c #205CF1",
-"4N    c #1C5DEA",
-"4O    c #0641C7",
-"4P    c #072DAA",
-"4Q    c #8593C5",
-"4R    c #B1B1B5",
-"4S    c #BCC0C2",
-"4T    c #F7FBFD",
-"4U    c #E3E3E1",
-"4V    c #C6BCA9",
-"4W    c #AAB4CC",
-"4X    c #4168D4",
-"4Y    c #7AA1DF",
-"4Z    c #9AB2E2",
-"4&    c #A4ADBD",
-"5     c #BDB8BB",
-"50    c #E8F4FE",
-"51    c #B5B2B9",
-"52    c #82736C",
-"53    c #817770",
-"54    c #BFB4B2",
-"55    c #FFFEFE",
-"56    c #9FB3ED",
-"57    c #1857E7",
-"58    c #185ADE",
-"59    c #1656DD",
-"5a    c #1244C2",
-"5b    c #112D9F",
-"5c    c #959EC7",
-"5d    c #D0D1D3",
-"5e    c #A7AFB2",
-"5f    c #ACAEB5",
-"5g    c #B5B2B6",
-"5h    c #B0AEB5",
-"5i    c #948C8B",
-"5j    c #8990B2",
-"5k    c #7792D9",
-"5l    c #ABABB5",
-"5m    c #BAB5B4",
-"5n    c #8B95AE",
-"5o    c #A8B1D8",
-"5p    c #E7EEFF",
-"5q    c #D7DEE7",
-"5r    c #9E918A",
-"5s    c #80736A",
-"5t    c #898078",
-"5u    c #EBE9E8",
-"5v    c #EEF1FA",
-"5w    c #3262E5",
-"5x    c #1457E6",
-"5y    c #1653D9",
-"5z    c #1852D7",
-"5A    c #1039BB",
-"5B    c #2E46A6",
-"5C    c #BDC4CB",
-"5D    c #CECDD4",
-"5E    c #AEB4BF",
-"5F    c #A2A6B2",
-"5G    c #A4A3A7",
-"5H    c #ABADB5",
-"5I    c #C1C1CF",
-"5J    c #D4D0DE",
-"5K    c #DBD8E5",
-"5L    c #B7BAC3",
-"5M    c #586DB4",
-"5N    c #2A5BD4",
-"5O    c #2457CF",
-"5P    c #375FCF",
-"5Q    c #6F7AB3",
-"5R    c #8C7C77",
-"5S    c #928274",
-"5T    c #B4A6A2",
-"5U    c #FDFDFD",
-"5V    c #A6B3EA",
-"5W    c #1037B9",
-"5X    c #1C4CD1",
-"5Y    c #1E53DC",
-"5Z    c #1547CB",
-"5&    c #1331A4",
-"6     c #7788BA",
-"60    c #CBCBD3",
-"61    c #C6C6D4",
-"62    c #BABDCA",
-"63    c #B5B9C7",
-"64    c #BABDC7",
-"65    c #AEB4C0",
-"66    c #C8BBC1",
-"67    c #C5BDC7",
-"68    c #CDCDD0",
-"69    c #6C7AB2",
-"6a    c #204ED0",
-"6b    c #1E53D9",
-"6c    c #164BC8",
-"6d    c #0C33B1",
-"6e    c #001B87",
-"6f    c #3F4877",
-"6g    c #8A7971",
-"6h    c #E2DDDA",
-"6i    c #4B5DA9",
-"6j    c #02126B",
-"6k    c #0F2079",
-"6l    c #152C8F",
-"6m    c #0B2596",
-"6n    c #3A4CA9",
-"6o    c #CBCED8",
-"6p    c #CFD2D5",
-"6q    c #CAD2D9",
-"6r    c #D1D1D8",
-"6s    c #DBCECD",
-"6t    c #C5C2CF",
-"6u    c #C3C3D2",
-"6v    c #CBC5CD",
-"6w    c #D6D5DF",
-"6x    c #A5AFC9",
-"6y    c #2B4DB9",
-"6z    c #1B50D9",
-"6A    c #174AC5",
-"6B    c #1547BF",
-"6C    c #1636AA",
-"6D    c #031D7B",
-"6E    c #192066",
-"6F    c #9A8F99",
-"6G    c #FDFCFC",
-"6H    c #6778B7",
-"6I    c #001B72",
-"6J    c #041E7A",
-"6K    c #00166D",
-"6L    c #000F66",
-"6M    c #1D2364",
-"6N    c #908886",
-"6O    c #B4A89F",
-"6P    c #C1B7B3",
-"6Q    c #DDD6D4",
-"6R    c #EBE2DB",
-"6S    c #E2DFE4",
-"6T    c #E7E7F3",
-"6U    c #D4D6E2",
-"6V    c #E9D2C8",
-"6W    c #6A7AA7",
-"6X    c #1549C7",
-"6Y    c #184AC8",
-"6Z    c #1545C2",
-"6&    c #1544BD",
-"7     c #0F309F",
-"70    c #05196E",
-"71    c #231F64",
-"72    c #C6C1C9",
-"73    c #AAB6E3",
-"74    c #001D80",
-"75    c #102874",
-"76    c #27397E",
-"77    c #162769",
-"78    c #21274C",
-"79    c #393D43",
-"7a    c #6F695C",
-"7b    c #897C73",
-"7c    c #7A6D69",
-"7d    c #96827C",
-"7e    c #AA958B",
-"7f    c #BFB1AC",
-"7g    c #DBCFC9",
-"7h    c #DFD4D1",
-"7i    c #344B90",
-"7j    c #0B38B0",
-"7k    c #1A46BF",
-"7l    c #1A4AC3",
-"7m    c #123FB6",
-"7n    c #08288F",
-"7o    c #08115A",
-"7p    c #3E3B6F",
-"7q    c #F7F7F7",
-"7r    c #E1E6F7",
-"7s    c #04228A",
-"7t    c #131C4C",
-"7u    c #74696C",
-"7v    c #847675",
-"7w    c #897872",
-"7x    c #766B61",
-"7y    c #6C625B",
-"7z    c #675E57",
-"7A    c #46463B",
-"7B    c #595645",
-"7C    c #645F4B",
-"7D    c #7A6C60",
-"7E    c #615249",
-"7F    c #2D2E34",
-"7G    c #0D1C65",
-"7H    c #0D155F",
-"7I    c #17236A",
-"7J    c #172B7C",
-"7K    c #0B2582",
-"7L    c #081C6E",
-"7M    c #11104A",
-"7N    c #65678F",
-"7O    c #B4C0E3",
-"7P    c #4A5B97",
-"7Q    c #6976AA",
-"7R    c #8283A2",
-"7S    c #807B88",
-"7T    c #80767D",
-"7U    c #9D8A84",
-"7V    c #928075",
-"7W    c #8E7D73",
-"7X    c #746C61",
-"7Y    c #605D4F",
-"7Z    c #625E51",
-"7&    c #594F48",
-"8     c #332F34",
-"80    c #1B1E58",
-"81    c #110C4C",
-"82    c #120D3F",
-"83    c #15103F",
-"84    c #16123D",
-"85    c #22225B",
-"86    c #8081A9",
-"87    c #F8FCFF",
-"88    c #E6EBF9",
-"89    c #D5DBEF",
-"8a    c #D5DAE8",
-"8b    c #E7E5E7",
-"8c    c #EAE3DF",
-"8d    c #D2CAC5",
-"8e    c #BBACA8",
-"8f    c #AA938F",
-"8g    c #948079",
-"8h    c #927D76",
-"8i    c #9C857A",
-"8j    c #766F73",
-"8k    c #524F6B",
-"8l    c #332F5D",
-"8m    c #171656",
-"8n    c #17154A",
-"8o    c #1A1744",
-"8p    c #282E71",
-"8q    c #D3D5E3",
-"8r    c #FBFAFA",
-"8s    c #FBFAF9",
-"8t    c #F0EDED",
-"8u    c #DAD3CF",
-"8v    c #C1B7AF",
-"8w    c #968F8B",
-"8x    c #7E736F",
-"8y    c #8A7570",
-"8z    c #55506E",
-"8A    c #151C6A",
-"8B    c #151964",
-"8C    c #30378A",
-"8D    c #EDEFF6",
-"8E    c #F0F3F9",
-"8F    c #9FA9C6",
-"8G    c #9396B4",
-"8H    c #455687",
-"8I    c #071F7B",
-"8J    c #00106C",
-"8K    c #7C81B7",
-"8L    c #F9FAFC",
-"8M    c #F6F7FD",
-"8N    c #EFF2F9",
-"8O    c #B8C1DD",
-"8P    c #939FCA",
-"8Q    c #F7F7FB",
-"                         0 1 2 3                                ",
-"                       4 5 6 7 8 9                              ",
-"                       a b c d e f g h i j           j k l j    ",
-"                     m n o p q r s t u v w x y z g 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 &0 00",
-"                  0102030405060708090a0b0c0d0e0f0g0h0i0j0k0l0m0n",
-"                  0o0p0q0r0s0t0u0v0w0x0y0z0A0B0C0D0E0F0G0H0I0J0K",
-"                  0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0&1 101112131415",
-"                 j161718191a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s",
-"                1t1u1v1w1x1y1z1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q",
-"                1R1S1T1U1V1W1X1Y1Z1&2 202122232425262728292a2b j",
-"              2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z  ",
-"             j2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X  ",
-"            2Y2Z2&3 303132333435363738393a3b3c3d3e3f3g3h3i3j    ",
-"           j3k  3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z2&3A3B3C3D3E      ",
-"          3F3G G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3&4       ",
-"        4041423d434445464748494a4b4c4d4e4f4g4h4i4j4k4l4m        ",
-"      4n4o4p4q4r4s4t4u4v4w4x4y  4z4A4B4C4D4E4h4F4G4H4I4J        ",
-"    4K4L4M4N4O4P4Q4R4S  4T4U4V4W4X4Y4Z4&5 3K505152535455        ",
-"   j565758595a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u          ",
-"  5v5w5x5y5z5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U          ",
-"  5V5W5X5Y5Z5&6 606162636465666768696a6b6c6d6e6f6g6h            ",
-"  6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6A6B6C6D6E6F6G            ",
-"  6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6&7 707172              ",
-"  737475767778797a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q              ",
-"  7r7s7t7u7v7w7x7y7z7A7B7C7D7E7F7G7H7I7J7K7L7M7N j              ",
-"   A7O7P7Q7R7S7T7U7V7W7X7Y7Z7&8 8081828384848586 i              ",
-"     A 48788898a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q                ",
-"                     j8r8s8t8u8v8w8x8y8z8A8B8C8D                ",
-"                                8E8F8G8H8I8J8K8L                ",
-"                                   A8M8N8O8P8Q                  ",
-"                                                                "};
-
diff --git a/rbutil/mksums.pl b/rbutil/rbutilqt/irivertools/mksums.pl
similarity index 100%
rename from rbutil/mksums.pl
rename to rbutil/rbutilqt/irivertools/mksums.pl
diff --git a/rbutil/talkfile.cpp b/rbutil/talkfile.cpp
deleted file mode 100644
index 345b327..0000000
--- a/rbutil/talkfile.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: tts.cpp
- *
- * Copyright (C) 2007 Dominik wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "talkfile.h"
-
-TalkFileCreator::TalkFileCreator()
-{
-    m_supportedTTS.Add(wxT("espeak"));
-    m_supportedTTSOpts.Add(wxT(""));
-
-    m_supportedEnc.Add(wxT("lame"));
-    m_supportedEncOpts.Add(wxT("--vbr-new -t --nores -S"));
-
-}
-
-bool TalkFileCreator::initEncoder()
-{
-    if(::wxFileExists(m_EncExec))
-    {
-        return true;
-    }
-    else
-    {
-        return false;
-    }
-}
-
-bool TalkFileCreator::initTTS()
-{
-    if(::wxFileExists(m_TTSexec))
-    {
-        return true;
-    }
-    else
-    {
-        return false;
-    }
-}
-
-bool TalkFileCreator::createTalkFiles()
-{
-    if(!initTTS())
-    {
-        MESG_DIALOG(wxT("Init of TTS engine failed") );
-        return false;
-    }
-    if(!initEncoder())
-    {
-        MESG_DIALOG(wxT("Init of encoder failed") );
-        return false;
-    }
-
-    // enumerate the dirs
-    wxDir talkdir(m_dir);
-    TalkTraverser traverser(this);
-    if(talkdir.Traverse(traverser) == (size_t)-1)
-        return false;
-    else
-        return true;
-
-
-}
-
-bool TalkFileCreator::voice(wxString text,wxString wavfile)
-{
-    if(m_curTTS == wxT("espeak"))
-    {
-        wxArrayString out;
-        wxArrayString err;
-        wxExecute(m_TTSexec+wxT(" ")+m_TTSOpts+wxT(" -w \"")+wavfile+wxT("\" \"")+text+wxT("\""),out,err);
-        return true;
-    }
-    else
-    {
-        MESG_DIALOG(wxT("Unsupported TTS engine") );
-        return false;
-    }
-}
-
-bool TalkFileCreator::encode(wxString input,wxString output)
-{
-    if(m_curEnc == wxT("lame"))
-    {
-        wxArrayString out;
-        wxArrayString err;
-        wxExecute(m_EncExec+wxT(" ")+m_EncOpts+wxT(" \"")+input+wxT("\" \"")+output+wxT("\""),out,err);
-        return true;
-    }
-    else
-    {
-        MESG_DIALOG(wxT("Unsupported encoder") );
-        return false;
-    }
-
-}
-
-wxString TalkFileCreator::getTTsOpts(wxString ttsname)
-{
-    int index = m_supportedTTS.Index(ttsname);
-
-    return m_supportedTTSOpts[index];
-}
-
-wxString TalkFileCreator::getEncOpts(wxString encname)
-{
-    int index = m_supportedEnc.Index(encname);
-
-    return m_supportedEncOpts[index];
-}
-
-wxDirTraverseResult TalkTraverser::OnFile(const wxString& file)
-{
-    if(file.EndsWith(wxT(".talk")) || file.EndsWith(wxT(".talk.wav")))
-    {
-        return wxDIR_CONTINUE;
-    }
-
-    wxFileName fname(file);
-    wxString toSpeak;
-    if(m_talkcreator->m_stripExtensions)
-    {
-        toSpeak = fname.GetName();
-    }
-    else
-    {
-        toSpeak = fname.GetName()+fname.GetExt();
-    }
-    wxString filename = file+ wxT(".talk");
-    wxString wavname = filename + wxT(".wav");
-
-    if(!wxFileExists(filename) || m_talkcreator->m_overwriteTalk)
-    {
-        if(!wxFileExists(wavname) || m_talkcreator->m_overwriteWav)
-        {
-            if(!m_talkcreator->voice(toSpeak,wavname))
-            {
-                return wxDIR_STOP;
-            }
-        }
-        if(!m_talkcreator->encode(wavname,filename))
-        {
-            return wxDIR_STOP;
-        }
-    }
-
-    if(m_talkcreator->m_removeWav)
-    {
-        wxRemoveFile(wavname);
-    }
-
-    return wxDIR_CONTINUE;
-}
-
-wxDirTraverseResult TalkTraverser::OnDir(const wxString& dirname)
-{
-    wxFileName fname(dirname,wxEmptyString);
-    wxArrayString dirs=fname.GetDirs();
-    wxString toSpeak = dirs[dirs.GetCount()-1];
-
-    wxString filename = dirname + wxT("" PATH_SEP "_dirname.talk");
-    wxString wavname = filename + wxT(".wav");
-
-    if(!wxFileExists(filename) || m_talkcreator->m_overwriteTalk)
-    {
-        if(!wxFileExists(wavname) || m_talkcreator->m_overwriteWav)
-        {
-            if(!m_talkcreator->voice(toSpeak,wavname))
-            {
-                return wxDIR_STOP;
-            }
-        }
-        if(!m_talkcreator->encode(wavname,filename))
-        {
-            return wxDIR_STOP;
-        }
-    }
-
-    if(m_talkcreator->m_removeWav)
-    {
-        wxRemoveFile(wavname);
-    }
-
-    if(!m_talkcreator->m_recursive)
-        return wxDIR_IGNORE;
-    else
-        return wxDIR_CONTINUE;
-}
diff --git a/rbutil/talkfile.h b/rbutil/talkfile.h
deleted file mode 100644
index 9d6d28a..0000000
--- a/rbutil/talkfile.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/***************************************************************************
- *             __________               __   ___.
- *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
- *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
- *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
- *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
- *                     \/            \/     \/    \/            \/
- * Module: rbutil
- * File: tts.h
- *
- * Copyright (C) 2007 Dominik wenger
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-
-#ifndef _TALKFILE_H
-#define _TALKFILE_H
-
-#include "rbutil.h"
-
-class TalkFileCreator
-{
-     friend class TalkTraverser;
-public:
-    TalkFileCreator();
-    ~TalkFileCreator() {};
-
-    bool createTalkFiles();
-
-    void setTTSexe(wxString exe){m_TTSexec=exe;}
-    void setEncexe(wxString exe){m_EncExec=exe;}
-
-    wxArrayString getSupportedTTS(){return m_supportedTTS;}
-    void setTTsType(wxString tts) {m_curTTS = tts; }
-    wxString getTTsOpts(wxString ttsname);
-    void setTTsOpts(wxString opts) {m_TTSOpts=opts;}
-
-    wxArrayString getSupportedEnc(){return m_supportedEnc;}
-    void setEncType(wxString enc) {m_curEnc =enc; }
-    wxString getEncOpts(wxString encname);
-    void setEncOpts(wxString opts) {m_EncOpts=opts;}
-
-    void setDir(wxString dir){m_dir = dir; }
-
-    void setOverwriteTalk(bool ov) {m_overwriteTalk = ov;}
-    void setOverwriteWav(bool ov) {m_overwriteWav = ov;}
-    void setRemoveWav(bool ov) {m_removeWav = ov;}
-    void setRecursive(bool ov) {m_recursive = ov;}
-    void setStripExtensions(bool ov) {m_stripExtensions = ov;}
-
-private:
-
-    bool initTTS();
-    bool stopTTS();
-    bool initEncoder();
-
-    bool encode(wxString input,wxString output);
-    bool voice(wxString text,wxString wavfile);
-
-    wxString m_dir;
-
-    wxString m_curTTS;
-    wxString m_TTSexec;
-    wxArrayString m_supportedTTS;
-    wxArrayString m_supportedTTSOpts;
-    wxString m_TTSOpts;
-
-    wxString m_curEnc;
-    wxString m_EncExec;
-    wxArrayString m_supportedEnc;
-    wxArrayString m_supportedEncOpts;
-    wxString m_EncOpts;
-
-    bool m_overwriteTalk;
-    bool m_overwriteWav;
-    bool m_removeWav;
-    bool m_recursive;
-    bool m_stripExtensions;
-};
-
-
-class TalkTraverser: public wxDirTraverser
-{
-    public:
-        TalkTraverser(TalkFileCreator* talkcreator) : m_talkcreator(talkcreator) { }
-
-        virtual wxDirTraverseResult OnFile(const wxString& filename);
-
-        virtual wxDirTraverseResult OnDir(const wxString& dirname);
-
-    private:
-        TalkFileCreator* m_talkcreator;
-};
-
-#endif
diff --git a/rbutil/wizard.xpm b/rbutil/wizard.xpm
deleted file mode 100644
index d19402a..0000000
--- a/rbutil/wizard.xpm
+++ /dev/null
@@ -1,689 +0,0 @@
-/* XPM */
-static char * wizard_xpm[] = {
-"200 430 256 2",
-"  	c #040B0E",
-". 	c #0B080D",
-"+ 	c #090B07",
-"@ 	c #030D15",
-"# 	c #140F0D",
-"$ 	c #0D1214",
-"% 	c #071515",
-"& 	c #0A1319",
-"* 	c #181008",
-"= 	c #09141E",
-"- 	c #081424",
-"; 	c #101411",
-"> 	c #14140B",
-", 	c #061630",
-"' 	c #1C1406",
-") 	c #0F1B1E",
-"! 	c #061A3D",
-"~ 	c #151A1F",
-"{ 	c #101C26",
-"] 	c #161D16",
-"^ 	c #1B1B16",
-"/ 	c #211911",
-"( 	c #131D2F",
-"_ 	c #251B0C",
-": 	c #0F202F",
-"< 	c #171C31",
-"[ 	c #142225",
-"} 	c #13222B",
-"| 	c #10223D",
-"1 	c #0A234C",
-"2 	c #0F214C",
-"3 	c #2B1F0B",
-"4 	c #0E2447",
-"5 	c #172832",
-"6 	c #152838",
-"7 	c #11294B",
-"8 	c #18264A",
-"9 	c #122755",
-"0 	c #1A2B2E",
-"a 	c #1D283B",
-"b 	c #0E2B54",
-"c 	c #1E2D24",
-"d 	c #312711",
-"e 	c #102D4C",
-"f 	c #372511",
-"g 	c #272A2D",
-"h 	c #292B25",
-"i 	c #172E46",
-"j 	c #1C2F38",
-"k 	c #1A2F3F",
-"l 	c #34291C",
-"m 	c #3C2B0F",
-"n 	c #342C27",
-"o 	c #422B11",
-"p 	c #1C3645",
-"q 	c #0F3864",
-"r 	c #223448",
-"s 	c #18395A",
-"t 	c #223942",
-"u 	c #233A3C",
-"v 	c #1D3A52",
-"w 	c #40341E",
-"x 	c #4A3113",
-"y 	c #32373B",
-"z 	c #463415",
-"A 	c #2C3C31",
-"B 	c #203D4D",
-"C 	c #353831",
-"D 	c #4C3811",
-"E 	c #4D3A0C",
-"F 	c #164770",
-"G 	c #244558",
-"H 	c #0E4A81",
-"I 	c #1E486B",
-"J 	c #064E8D",
-"K 	c #2A484E",
-"L 	c #024F96",
-"M 	c #284855",
-"N 	c #2E4846",
-"O 	c #264862",
-"P 	c #334A3E",
-"Q 	c #584117",
-"R 	c #4A4531",
-"S 	c #2A4D5F",
-"T 	c #3F4841",
-"U 	c #574220",
-"V 	c #464540",
-"W 	c #3F484B",
-"X 	c #57471C",