diff --git a/README.asciidoc b/README.asciidoc index 8140ebc..5d8e866 100644 --- a/README.asciidoc +++ b/README.asciidoc @@ -1,3 +1,5 @@ +Please note that this branch is in BETA. Still some work remaining to be done... + FlaxPDF ======= @@ -20,7 +22,7 @@ those two itches scratched? Requirements ------------ -Poppler, LZO, and FLTK 1.3. +Poppler, LZO, Config{plus}{plus}, and FLTK 1.3. Comparison ---------- @@ -37,3 +39,85 @@ FlaxPDF 57% (5% *) 36.5 MB 45 KB * To be fair to all, these measurements were done using the Vesa driver. FlaxPDF, as the only one of the three, is able to take advantage of the GPU, dropping its CPU use when scrolling to 5% (tested on radeon). + +New capabilities / modifications added (November 2016) +------------------------------------------------------ + +The following modifications have been made + +- Multi-columns document display +- Selection for the last 10 viewed documents +- Automatically open the last viewed document with last display parameters +- Fullscreen mode +- PageUp and PageDown buttons +- Exit button +- Gnome standard icons + +image::screenshot.png[Screenshot,350,350,align="center"] + +Installation +============ + +The following packages are required and may need to be built and installed if not +available as a package: + +- poppler (http://poppler.freedesktop.org/poppler-0.48.0.tar.xz) +- fltk 1.3.3 (http://www.fltk.org/software.php?VERSION=1.3.3&FILE=fltk/1.3.3/fltk-1.3.3-source.tar.gz) + +The following packages are usually available via package management under linux (command +examples in parenthesis for the apt-get package management tool): + +- libconfig{plus}{plus} ("$ sudo apt-get install libconfig{plus}{plus}-dev") +- libjpeg ("$ sudo apt-get install libjpeg-dev") +- libpng ("$ sudo apt-get install libpng-dev") +- libtiff ("$ sudi apt-get install libtiff-dev") + +Poppler +------- + +To properly build poppler, some libraries are required to be installed. That's the case for +libjpeg, libpng and libtiff to manage embedded images in PDFs. Other libraries are required +and are often already installed. Here is a page to get some more information about dependencies: + +http://www.linuxfromscratch.org/blfs/view/svn/general/poppler.html + +Once the popper library is untared, you need to build it with the following commands: + +------------------------------------------ +$ ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --disable-static \ + --enable-build-type=release \ + --enable-cmyk \ + --enable-xpdf-headers +$ make +$ sudo make install +------------------------------------------ + + +FLTK +---- + +The FLTK library is installed using the usual GNU autoconf commands: + +-------------------- +$ ./configure +$ make +$ sudo make install +-------------------- + +FlaxPDF +------- + +To install FlaxPDF, the following commands are required: + +-------------------- +$ ./autogen.sh +$ ./configure +$ make +$ sudo make install +-------------------- + +All the previously indicated libraries must have been installed before building +the application. The installation will add an entry into the OFFICE main menu of you +linux installation. diff --git a/TODO.txt b/TODO.txt new file mode 100644 index 0000000..b3e9245 --- /dev/null +++ b/TODO.txt @@ -0,0 +1,25 @@ +TODO +---- + +- [DONE] Re-integrate the original code for PageDown, PageUp, j and k +- [DONE] Mouse scrolling left-right not working properly with multi-columns +- [DONE] Get rid of compilation warnings +- [DONE] Add a new integrated mode "Page + Trim" +- [DONE] Dimensions functions to be revised for discripencies in the Width / High computations +- [DONE] Bug with load of a new file when the current file is still being processed -> crash +- [DONE] When changing document, save the previous document parameters +- [DONE] Text selection + +- Other features + + - Title page(s) management: to offset rest of the document when columns > 1 + - Get rid of the "Create Directory" icon in the open file dialog + - Text search + - Printing + - Page rotation + . For the whole document + . For a specific page + - Double-click or Ctrl-Click: page selection (goto one column in page mode) + - Scrollbars integration (I doubt FLTK Fl_Scroll is a solution) + +- Tests, tests, tests \ No newline at end of file diff --git a/configure.ac b/configure.ac index cecd99e..9628a1a 100644 --- a/configure.ac +++ b/configure.ac @@ -47,10 +47,10 @@ LIBS=["$LIBS $($fltkconfig --ldflags --use-images)"] # Checks for libraries. AC_CHECK_LIB([lzo2], [__lzo_init_v2], [], AC_MSG_ERROR([LZO not found])) +AC_CHECK_LIB([config++], [_ZNK9libconfig6Config7getRootEv], [], AC_MSG_ERROR([libconfig++ not found])) #AC_CHECK_LIB([dl], [dlopen], [], AC_MSG_ERROR([libdl not found])) #AC_CHECK_LIB([rt], [sched_get_priority_min], [], AC_MSG_ERROR([librt not found])) PKG_CHECK_MODULES([DEPS], [poppler >= 0.31.0 xrender]) - DEPS_CFLAGS=$(echo $DEPS_CFLAGS | sed 's@-I@-isystem @g') LIBS=["$LIBS $DEPS_LIBS"] diff --git a/screenshot.png b/screenshot.png new file mode 100644 index 0000000..7c11197 Binary files /dev/null and b/screenshot.png differ diff --git a/src/Makefile.am b/src/Makefile.am index 0ec83ba..ed9655c 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,7 +1,7 @@ bin_PROGRAMS = flaxpdf -flaxpdf_SOURCES = main.cpp main.h loadfile.cpp gettext.h icons.h wmicon.h \ +flaxpdf_SOURCES = main.cpp main.h loadfile.cpp gettext.h \"icons 32x32.h\" wmicon.h \ lrtypes.h macros.h helpers.h helpers.cpp \ - view.cpp view.h + view.cpp view.h config.cpp config.h AM_CPPFLAGS=-DDATADIR=\"$(pkgdatadir)\" -DLOCALEDIR=\"$(localedir)\" diff --git a/src/config.cpp b/src/config.cpp new file mode 100644 index 0000000..dd99736 --- /dev/null +++ b/src/config.cpp @@ -0,0 +1,269 @@ +/* +Copyright (C) 2016 Guy Turcotte + +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, version 3 of the License. + +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, see . +*/ + +//#define TEST 1 + +#ifdef TEST + #include "config.h" +#else + #include "main.h" +#endif + +#ifdef TEST + #define fl_alert printf + #define fl_message printf + #define xmalloc malloc + #define _(a) a +#endif + +std::string CONFIG_VERSION("1.0"); +std::string version("ERROR"); + +recent_file_struct *recent_files = NULL; + +void save_to_config( + char * filename, + int columns, + float xoff, + float yoff, + float zoom, + int zoommode, + int x, + int y, + int w, + int h, + bool full) { + + recent_file_struct *prev = NULL; + recent_file_struct *rf = recent_files; + + while ((rf != NULL) && (rf->filename.compare(filename) != 0)) { + + prev = rf; + rf = rf->next; + } + + if (rf) { + rf->columns = columns; + rf->xoff = xoff; + rf->yoff = yoff; + rf->zoom = zoom; + rf->zoom_mode = zoommode; + rf->x = x; + rf->y = y; + rf->width = w; + rf->height = h; + rf->fullscreen = full; + + // prev is NULL if it's already the first entry in the list + if (prev) { + prev->next = rf->next; + rf->next = recent_files; + recent_files = rf; + } + } + else { + rf = new recent_file_struct; + + rf->filename = filename; + rf->columns = columns; + rf->xoff = xoff; + rf->yoff = yoff; + rf->zoom = zoom; + rf->zoom_mode = zoommode; + rf->x = x; + rf->y = y; + rf->width = w; + rf->height = h; + rf->fullscreen = full; + + rf->next = recent_files; + recent_files = rf; + } +} + +bool file_exists (const char * name) { + struct stat buffer; + return (stat (name, &buffer) == 0); +} + +void load_config() { + + Config cfg; + + static char config_filename[301]; + char * homedir; + + if ((homedir = getenv("HOME")) == NULL) { + homedir = getpwuid(getuid())->pw_dir; + } + + strncpy(config_filename, homedir, 300); + strncat(config_filename, "/.flaxpdf", 300 - strlen(config_filename) - 1); + + try { + cfg.readFile(config_filename); + + Setting &root = cfg.getRoot(); + + if (root.exists("version")){ + + version = root["version"].c_str(); + + if (version.compare(CONFIG_VERSION) != 0) { + fl_alert(_("Error: Config file version is expected to be %s."), CONFIG_VERSION.c_str()); + return; + } + } + else { + fl_alert(_("Error: Config file structure error.")); + return; + } + + if (!root.exists("recent_files")) + root.add("recent_files", Setting::TypeList); + + Setting &rf_setting = root["recent_files"]; + recent_file_struct *prev = NULL; + + for (int i = 0; i < rf_setting.getLength(); i++) { + + Setting &s = rf_setting[i]; + std::string filename = s["filename"]; + + if (file_exists(filename.c_str())) { + recent_file_struct *rf = new recent_file_struct; + + if (!(s.lookupValue("filename" , rf->filename ) && + s.lookupValue("columns" , rf->columns ) && + s.lookupValue("xoff" , rf->xoff ) && + s.lookupValue("yoff" , rf->yoff ) && + s.lookupValue("zoom" , rf->zoom ) && + s.lookupValue("zoom_mode" , rf->zoom_mode ) && + s.lookupValue("x" , rf->x ) && + s.lookupValue("y" , rf->y ) && + s.lookupValue("width" , rf->width ) && + s.lookupValue("height" , rf->height ) && + s.lookupValue("fullscreen", rf->fullscreen))) { + fl_alert(_("Configuration file content error: %s."), config_filename); + return; + } + + if (prev == NULL) { + prev = rf; + recent_files = rf; + } + else { + prev->next = rf; + prev = rf; + } + rf->next = NULL; + } + } + } + catch (const FileIOException &e) { + } + catch (const ParseException &e) { + fl_alert(_("Parse Exception (config file %s error): %s"), config_filename, e.getError()); + } + catch (const ConfigException &e) { + fl_alert(_("Load Config Exception: %s"), e.what()); + } +} + +void save_config() { + + Config cfg; + + char config_filename[301]; + char * homedir; + + if ((homedir = getenv("HOME")) == NULL) { + homedir = getpwuid(getuid())->pw_dir; + } + + strncpy(config_filename, homedir, 300); + strncat(config_filename, "/.flaxpdf", 300 - strlen(config_filename) - 1); + + try { + Setting &root = cfg.getRoot(); + if (root.exists("recent_files")) + root.remove("recent_files"); + + root.add("version", Setting::TypeString) = CONFIG_VERSION; + + Setting &rf_setting = root.add("recent_files", Setting::TypeList); + + recent_file_struct *rf = recent_files; + + int cnt = 0; + while ((rf != NULL) && (cnt < 10)) { + Setting &gr = rf_setting.add(Setting::TypeGroup); + + gr.add("filename", Setting::TypeString ) = rf->filename; + gr.add("columns", Setting::TypeInt ) = rf->columns; + gr.add("xoff", Setting::TypeFloat ) = rf->xoff; + gr.add("yoff", Setting::TypeFloat ) = rf->yoff; + gr.add("zoom", Setting::TypeFloat ) = rf->zoom; + gr.add("zoom_mode", Setting::TypeInt ) = (int)rf->zoom_mode; + gr.add("x", Setting::TypeInt ) = rf->x; + gr.add("y", Setting::TypeInt ) = rf->y; + gr.add("width", Setting::TypeInt ) = rf->width; + gr.add("height", Setting::TypeInt ) = rf->height; + gr.add("fullscreen", Setting::TypeBoolean) = rf->fullscreen; + + rf = rf->next; + cnt += 1; + } + + cfg.writeFile(config_filename); + } + catch (const FileIOException &e) { + fl_alert(_("File IO Error: Unable to create or write config file %s."), config_filename); + } + catch (const ConfigException &e) { + fl_alert(_("Save Config Exception: %s."), e.what()); + } +} + +#ifdef TEST + +main() +{ + printf("Begin. Config version: %s\n", CONFIG_VERSION.c_str()); + + load_config(); + + printf("Config file:\nVersion: %s\n\n", version.c_str()); + + printf("recent file descriptors:\n\n"); + + recent_file_struct *rf = recent_files; + while (rf != NULL) { + printf("filename: %s, columns: %d, xoff: %f, yoff: %f, zoom: %f, mode: %d\n", + rf->filename.c_str(), + rf->columns, + rf->xoff, + rf->yoff, + rf->zoom, + rf->zoom_mode); + rf = rf->next; + } + printf("End\n"); +} + +#endif + diff --git a/src/config.h b/src/config.h new file mode 100644 index 0000000..22aed08 --- /dev/null +++ b/src/config.h @@ -0,0 +1,69 @@ +/* +Copyright (C) 2016 Guy Turcotte + +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, version 3 of the License. + +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, see . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +using namespace std; +using namespace libconfig; + +struct recent_file_struct { + std::string filename; + int columns; + float xoff; + float yoff; + float zoom; + int zoom_mode; + int x; // App Window x pos + int y; // App Window y pos + int width; // App Windows width + int height; // App Window height + bool fullscreen; + + struct recent_file_struct *next; +}; + +extern recent_file_struct *recent_files; + +extern void save_to_config( + char * filename, + int columns, + float xoff, + float yoff, + float zoom, + int zoommode, + int x, + int y, + int w, + int h, + bool full); + +extern void load_config(); +extern void save_config(); + +#endif + diff --git a/src/icons 32x32.h b/src/icons 32x32.h new file mode 100644 index 0000000..eb0fbc8 --- /dev/null +++ b/src/icons 32x32.h @@ -0,0 +1,2104 @@ +unsigned char application_exit_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x06, 0x13, 0x49, 0x44, 0x41, 0x54, 0x58, 0xc3, 0x95, 0x57, 0x6b, + 0x6c, 0x14, 0x55, 0x14, 0xfe, 0x66, 0x76, 0xf6, 0xd1, 0x7d, 0x14, 0xda, + 0x4a, 0x81, 0xc6, 0x6e, 0x5b, 0x68, 0xa1, 0x08, 0x45, 0x04, 0x94, 0xd6, + 0x50, 0x2d, 0x48, 0x4c, 0x48, 0x63, 0x62, 0x4c, 0xf0, 0x51, 0xfd, 0x47, + 0x8c, 0x22, 0x31, 0x26, 0x26, 0x26, 0x82, 0x10, 0x12, 0x8c, 0x4a, 0xb0, + 0xfe, 0x20, 0x1a, 0xa2, 0x26, 0x18, 0x43, 0xc2, 0xa3, 0x88, 0x34, 0x68, + 0x0c, 0x24, 0x36, 0x56, 0x8c, 0x4d, 0x83, 0xb6, 0x8a, 0xa4, 0xd2, 0x96, + 0x16, 0xa9, 0x76, 0xe9, 0xf6, 0xfd, 0xde, 0xee, 0x63, 0x76, 0x66, 0xbd, + 0xe7, 0xce, 0x4c, 0x19, 0xb6, 0xfb, 0xe2, 0x36, 0xa7, 0xb3, 0x73, 0x67, + 0xe6, 0x9e, 0xef, 0x3c, 0xee, 0x77, 0xce, 0x15, 0x62, 0xb1, 0x18, 0xee, + 0x63, 0x08, 0xba, 0x58, 0x98, 0x58, 0x75, 0x11, 0xf5, 0x39, 0x1a, 0xb4, + 0x58, 0x54, 0x97, 0x08, 0x13, 0x55, 0x9f, 0x4b, 0xbe, 0x60, 0xdd, 0x2b, + 0x2f, 0x7e, 0x20, 0xcb, 0xf2, 0xfe, 0x8c, 0xb4, 0x0b, 0x02, 0x44, 0x51, + 0x84, 0xdd, 0x6e, 0x47, 0x56, 0x96, 0x93, 0x89, 0x03, 0x56, 0xab, 0x0d, + 0xa2, 0xa0, 0xe9, 0x57, 0x54, 0x05, 0xe1, 0x70, 0x04, 0x59, 0x76, 0xc7, + 0xb1, 0x23, 0x47, 0x8e, 0xbe, 0xc7, 0xa6, 0x42, 0xe9, 0x40, 0x48, 0xa4, + 0xfc, 0xa5, 0x17, 0x5e, 0x46, 0x47, 0x47, 0x07, 0x02, 0x81, 0x00, 0x42, + 0xa1, 0x10, 0x22, 0x91, 0x08, 0xd8, 0x3c, 0xa2, 0xd1, 0x28, 0x17, 0x45, + 0x51, 0xf8, 0xbd, 0x68, 0xb1, 0x40, 0x12, 0x25, 0xb8, 0xb2, 0xdc, 0xd8, + 0xb7, 0xef, 0x5d, 0xe4, 0xe4, 0xe4, 0x30, 0x50, 0xe2, 0xfc, 0x62, 0xe4, + 0xcd, 0xb9, 0xb9, 0x39, 0xd4, 0x7f, 0xf2, 0xf1, 0x5b, 0xec, 0xf6, 0x23, + 0xdd, 0x13, 0x72, 0x4a, 0x00, 0xf4, 0x2f, 0x37, 0x37, 0x17, 0x2e, 0x97, + 0x8b, 0x4f, 0x90, 0x85, 0x24, 0x82, 0x6e, 0x15, 0x2d, 0x4a, 0x20, 0xe8, + 0x4a, 0x20, 0x24, 0x49, 0x62, 0x62, 0xe5, 0x62, 0xb1, 0x48, 0xfc, 0x3d, + 0xf3, 0xbb, 0x6e, 0xb7, 0x9b, 0x01, 0xcb, 0xa5, 0x5b, 0x37, 0x93, 0x59, + 0x1d, 0x04, 0x52, 0x02, 0xd0, 0x5c, 0x9a, 0x05, 0x23, 0x1f, 0xcc, 0x8b, + 0xaa, 0xaa, 0xca, 0x01, 0xd1, 0x33, 0x12, 0xfa, 0xed, 0x70, 0x38, 0x98, + 0x72, 0xcb, 0x3c, 0x58, 0x23, 0x05, 0x8c, 0xef, 0x09, 0x04, 0x1b, 0x0e, + 0x3d, 0x57, 0x52, 0x0e, 0xd1, 0x50, 0x48, 0x0b, 0x92, 0x58, 0xad, 0x56, + 0x6e, 0xa5, 0x71, 0x6f, 0x28, 0xd1, 0x14, 0x69, 0xef, 0xd2, 0x73, 0x03, + 0x64, 0xbc, 0x10, 0x18, 0xab, 0x8d, 0x72, 0x93, 0x2b, 0x17, 0x4c, 0xc9, + 0x9b, 0x1c, 0x80, 0xa1, 0xc0, 0xac, 0xd0, 0xf8, 0x6d, 0xbe, 0x9a, 0x13, + 0xd1, 0xf0, 0x10, 0xad, 0x2d, 0x08, 0xe6, 0x44, 0xe5, 0x33, 0xe6, 0x1d, + 0x93, 0x99, 0x07, 0xcc, 0x96, 0xc6, 0x2b, 0x8f, 0xcf, 0x0b, 0xcd, 0xdd, + 0xf1, 0x3b, 0x64, 0xc1, 0xef, 0xb4, 0xca, 0x17, 0x84, 0x20, 0x91, 0x52, + 0xf3, 0x1c, 0xb9, 0xfe, 0x6e, 0x8e, 0x24, 0x59, 0x91, 0x21, 0xb3, 0xfc, + 0xde, 0x86, 0x06, 0x97, 0xb3, 0xf1, 0x8c, 0xc3, 0xf6, 0xed, 0x69, 0x9b, + 0x6d, 0x6f, 0xda, 0x24, 0x4c, 0xa4, 0x3c, 0x51, 0x08, 0x68, 0x3b, 0x2e, + 0xe4, 0xa5, 0x7b, 0xc7, 0x6f, 0xbb, 0x77, 0x63, 0xe5, 0x95, 0x4b, 0x58, + 0x57, 0x5b, 0x56, 0xac, 0x0a, 0x6a, 0xf1, 0x8d, 0x6b, 0x03, 0xdb, 0x4f, + 0x4b, 0x92, 0xaf, 0x2e, 0x1a, 0xbd, 0x90, 0xd4, 0x03, 0xe6, 0x3c, 0x48, + 0x15, 0x02, 0x73, 0x22, 0x26, 0x1a, 0x37, 0x8f, 0x1d, 0x43, 0xe0, 0xf2, + 0x45, 0x6c, 0xac, 0x29, 0x85, 0xf3, 0x91, 0xe7, 0xe0, 0x2a, 0x7e, 0x1a, + 0x6b, 0x37, 0x14, 0x30, 0xa7, 0xa8, 0xef, 0xa7, 0xf4, 0x40, 0x32, 0x2f, + 0x18, 0xb2, 0x68, 0xd1, 0x22, 0xd4, 0xd6, 0xd6, 0x62, 0x6c, 0x6c, 0x0c, + 0x6d, 0x6d, 0x6d, 0x1c, 0x00, 0x6d, 0x4f, 0xb6, 0x30, 0x13, 0x0d, 0xcc, + 0x50, 0x73, 0x33, 0xba, 0x0f, 0x1d, 0x40, 0xcd, 0xce, 0x32, 0x58, 0xbc, + 0x5b, 0xa1, 0xfa, 0xc7, 0x10, 0xbb, 0xd3, 0xc3, 0xd9, 0x11, 0x6a, 0x6c, + 0x20, 0x2d, 0x80, 0x54, 0x21, 0x30, 0xf6, 0x77, 0x49, 0x49, 0x09, 0x4a, + 0x4b, 0x4b, 0x71, 0xf5, 0xea, 0x55, 0x04, 0xe6, 0x02, 0x9c, 0x0f, 0x68, + 0xdb, 0x06, 0x7d, 0x3e, 0xb4, 0xd6, 0xd5, 0xa1, 0xb2, 0xba, 0x08, 0xd6, + 0x82, 0x0d, 0xcc, 0x45, 0x4e, 0x44, 0x7e, 0xbe, 0x08, 0xeb, 0x1a, 0x0b, + 0x6e, 0xb5, 0x8f, 0xd0, 0xe2, 0x97, 0x33, 0x02, 0x90, 0x2c, 0x04, 0xc1, + 0x60, 0x10, 0x0d, 0x0d, 0x0d, 0x28, 0x2f, 0x2f, 0xc7, 0xb6, 0x6d, 0xdb, + 0x50, 0x51, 0x51, 0xc1, 0xf2, 0x81, 0x51, 0x34, 0xf3, 0x82, 0xc0, 0xa8, + 0xb7, 0x65, 0xd7, 0x2e, 0x94, 0x15, 0xda, 0x60, 0x5f, 0xe6, 0x85, 0xfc, + 0x40, 0x19, 0x02, 0x67, 0xcf, 0xc0, 0x56, 0xa8, 0xa2, 0xbf, 0x77, 0x1c, + 0xb7, 0x6f, 0x8d, 0xd2, 0xf2, 0xf5, 0xa7, 0x04, 0xa1, 0xde, 0xa4, 0xb7, + 0x9d, 0xc9, 0x17, 0x01, 0xe0, 0x6b, 0x29, 0xbe, 0xd0, 0x24, 0xdb, 0x05, + 0x44, 0xc3, 0xc4, 0x98, 0x34, 0xba, 0xba, 0xba, 0x50, 0x95, 0x5b, 0xc9, + 0xc3, 0xd0, 0xfe, 0xc6, 0x5e, 0xb8, 0xc7, 0xfb, 0x90, 0xb7, 0x65, 0x05, + 0x94, 0x92, 0xc7, 0x31, 0x7e, 0xe1, 0x02, 0x24, 0x77, 0x00, 0x82, 0xdb, + 0x81, 0x3c, 0xc6, 0x88, 0x35, 0x25, 0xab, 0x16, 0x58, 0x1d, 0x9e, 0x95, + 0x37, 0x75, 0xff, 0x35, 0xfc, 0x25, 0x06, 0x03, 0x11, 0xc9, 0xfc, 0x20, + 0xd5, 0x2e, 0x58, 0xb2, 0x64, 0x09, 0x36, 0x6f, 0xde, 0x8c, 0xce, 0xce, + 0x4e, 0xf4, 0xf7, 0xf7, 0x63, 0x4b, 0xec, 0x31, 0xdc, 0x3e, 0x7e, 0x1c, + 0x93, 0x97, 0x1a, 0xf1, 0x50, 0xd5, 0x72, 0xc8, 0xcb, 0x2b, 0x31, 0xd1, + 0xf4, 0x13, 0x54, 0xf6, 0x6e, 0xde, 0xb3, 0xaf, 0xa7, 0xdc, 0xfb, 0x96, + 0x81, 0x5e, 0x14, 0x2b, 0x3f, 0x62, 0x6c, 0x28, 0xf0, 0xe6, 0x3d, 0x00, + 0x92, 0x29, 0x27, 0xcb, 0x6b, 0x6a, 0x6a, 0xe0, 0xf7, 0xfb, 0xd1, 0xd2, + 0xd2, 0x82, 0xfc, 0xfc, 0x7c, 0xad, 0x4e, 0xb0, 0xfc, 0x0b, 0x33, 0x2f, + 0x84, 0xc2, 0x61, 0x0c, 0x9d, 0x3f, 0x87, 0xd0, 0xe0, 0x04, 0x9f, 0x1f, + 0xbe, 0x76, 0x2d, 0x79, 0x49, 0x27, 0x80, 0x4f, 0x6e, 0x84, 0xca, 0xbe, + 0x89, 0xb0, 0x3a, 0xb7, 0x00, 0x40, 0xa2, 0x10, 0x54, 0x55, 0x55, 0xf1, + 0x10, 0x34, 0x35, 0x35, 0xdd, 0xa5, 0x62, 0xf6, 0xb7, 0x72, 0xcf, 0x1e, + 0x8c, 0x5f, 0xef, 0xc0, 0xed, 0x2b, 0xdf, 0x61, 0x45, 0x99, 0x07, 0xa3, + 0xa3, 0x02, 0xdc, 0x1b, 0x1f, 0x85, 0xcb, 0xcb, 0x2a, 0xeb, 0x54, 0x67, + 0x52, 0x10, 0x73, 0xb3, 0x7d, 0xf8, 0xa7, 0x6b, 0x8a, 0x3a, 0x96, 0xcf, + 0xa5, 0x05, 0xc4, 0x10, 0xe7, 0x05, 0xaa, 0xf9, 0x74, 0x6d, 0x66, 0xdb, + 0x8c, 0x88, 0x88, 0xd8, 0x90, 0xf3, 0x81, 0x4e, 0x05, 0x95, 0x9f, 0x7d, + 0x8a, 0x1f, 0x76, 0x74, 0x61, 0x64, 0xb8, 0x0f, 0xf9, 0x0f, 0xe7, 0x61, + 0xa6, 0xa7, 0x07, 0x59, 0x4f, 0xec, 0x86, 0xdc, 0x3b, 0x0b, 0xdf, 0xdf, + 0x5d, 0xe8, 0xe8, 0x9e, 0x4a, 0x84, 0xa1, 0x8d, 0x7d, 0x7e, 0xdc, 0x06, + 0x9c, 0x4a, 0x08, 0xc0, 0x1c, 0x82, 0xd9, 0xd9, 0x59, 0xb4, 0xb6, 0xb6, + 0x72, 0xe5, 0x06, 0x1d, 0x6b, 0x1e, 0xd0, 0xb7, 0x11, 0x2b, 0xe3, 0x3b, + 0x1a, 0xce, 0xe2, 0xfc, 0xd6, 0xad, 0x58, 0xbc, 0x18, 0xc8, 0x66, 0xd1, + 0x99, 0x6e, 0x6c, 0x44, 0xee, 0xf3, 0xbb, 0x50, 0x1c, 0x9d, 0xc1, 0xc4, + 0xb4, 0x8c, 0xbe, 0xa1, 0xd0, 0x3b, 0x6f, 0x2b, 0x4a, 0x7d, 0x4a, 0x26, + 0x4c, 0x94, 0x88, 0x89, 0x6a, 0x81, 0x71, 0xa5, 0x26, 0x45, 0x55, 0x63, + 0xbc, 0xd5, 0x71, 0x17, 0x16, 0xe2, 0xa9, 0x93, 0x27, 0xf1, 0xcb, 0xf5, + 0x49, 0x58, 0x97, 0x33, 0x6e, 0x88, 0x8c, 0x22, 0xf4, 0x6b, 0x0b, 0xec, + 0x65, 0xdb, 0xb1, 0x6e, 0x4d, 0x0e, 0x42, 0xaa, 0xfa, 0x4c, 0xca, 0x62, + 0x94, 0xa8, 0xef, 0x8b, 0x4f, 0x44, 0xa3, 0x47, 0x20, 0xe2, 0xa1, 0xeb, + 0x1d, 0xdf, 0x00, 0xa6, 0xa7, 0xa7, 0x38, 0x1f, 0xa8, 0x8c, 0x11, 0x0b, + 0xaa, 0xab, 0xb1, 0xfe, 0xc0, 0x21, 0x34, 0xb7, 0x8f, 0xc2, 0x53, 0x9e, + 0x0d, 0xc1, 0x77, 0x13, 0x4a, 0xc7, 0x0d, 0xc4, 0xac, 0x22, 0x14, 0x51, + 0x28, 0xc8, 0x18, 0x40, 0x3c, 0x2d, 0x9b, 0x1b, 0x15, 0x62, 0x3e, 0xa7, + 0xd3, 0x09, 0xc9, 0x2a, 0x21, 0x1c, 0x09, 0xb3, 0xf0, 0x04, 0x78, 0xff, + 0xc8, 0xfb, 0x46, 0x26, 0x15, 0xaf, 0xbd, 0x0a, 0xc7, 0x8e, 0x5a, 0x34, + 0xfd, 0xc9, 0xc8, 0x67, 0xa5, 0x15, 0x61, 0xf1, 0x16, 0xfe, 0xe8, 0x99, + 0x42, 0x54, 0x10, 0x0f, 0xa7, 0x65, 0xc2, 0x64, 0x89, 0x48, 0x96, 0x93, + 0x62, 0x83, 0x8e, 0x63, 0x50, 0xd8, 0xbd, 0x1d, 0x2e, 0xa7, 0x8b, 0x77, + 0xc5, 0x44, 0x46, 0xb4, 0x43, 0xe8, 0x39, 0xe5, 0x49, 0x75, 0xfd, 0x51, + 0x7c, 0x73, 0xd8, 0x83, 0xd3, 0x0d, 0xe7, 0x7a, 0x55, 0x25, 0xea, 0x57, + 0x95, 0xd8, 0xf7, 0xe2, 0xc1, 0x83, 0xa7, 0xee, 0x0b, 0x80, 0xa1, 0xd8, + 0x48, 0x3c, 0xe2, 0x81, 0xc9, 0xa9, 0x09, 0xde, 0x03, 0x78, 0x8b, 0xbc, + 0xf0, 0x7a, 0x8b, 0x90, 0xc7, 0x1a, 0x59, 0x1b, 0x6b, 0xbd, 0x64, 0x39, + 0xa2, 0x97, 0x65, 0x0d, 0x80, 0x1c, 0x95, 0xa1, 0xac, 0x5e, 0x85, 0x83, + 0x81, 0xb9, 0x9d, 0x6c, 0x72, 0x90, 0x49, 0x50, 0x6f, 0xcd, 0x33, 0x03, + 0x60, 0x94, 0x5a, 0x9b, 0xcd, 0xc6, 0x2d, 0xf5, 0xfb, 0x07, 0x30, 0x13, + 0x98, 0x41, 0x11, 0x53, 0x5a, 0xe8, 0x7d, 0x10, 0x1e, 0x4f, 0x36, 0x07, + 0x24, 0x88, 0x02, 0x57, 0x16, 0x8d, 0xca, 0x1c, 0x00, 0xa5, 0x23, 0x79, + 0x83, 0x42, 0x12, 0x0a, 0x92, 0xce, 0xf9, 0x83, 0x09, 0xd2, 0x36, 0x24, + 0x66, 0xe5, 0x64, 0x3d, 0x75, 0xb5, 0xfd, 0xbe, 0xff, 0x30, 0x3c, 0x32, + 0x88, 0x42, 0x96, 0xe1, 0xeb, 0xd6, 0xaf, 0xe5, 0x6d, 0x3b, 0x81, 0xa2, + 0xe7, 0x9a, 0xdb, 0x23, 0x71, 0x0d, 0x89, 0x06, 0x80, 0xf2, 0x21, 0x18, + 0xba, 0x07, 0x40, 0x2c, 0x23, 0x00, 0xe4, 0x72, 0x8f, 0xc7, 0xc3, 0x32, + 0x7b, 0x12, 0x9d, 0xdd, 0x1d, 0xc8, 0x5f, 0xba, 0x14, 0x9b, 0x8a, 0x36, + 0xc1, 0x61, 0xd7, 0x4a, 0x2e, 0x59, 0x4c, 0x2e, 0xa6, 0xfa, 0x2e, 0x24, + 0x69, 0xf7, 0x8c, 0x33, 0x44, 0x30, 0x18, 0xe2, 0x35, 0x27, 0x23, 0x00, + 0x46, 0x72, 0x79, 0xb2, 0x3d, 0xcc, 0xea, 0x7f, 0xe1, 0xf6, 0xb8, 0xb0, + 0x6a, 0x75, 0x19, 0xec, 0x36, 0x3b, 0x2c, 0xbc, 0xfd, 0x86, 0x5e, 0x7a, + 0x05, 0x4d, 0x71, 0xd2, 0x5e, 0x10, 0xf3, 0x61, 0xa0, 0xd3, 0x95, 0xee, + 0x01, 0x25, 0xa3, 0x10, 0x0c, 0x8d, 0x0c, 0x20, 0xaa, 0xc8, 0x58, 0xba, + 0x2c, 0x5f, 0xdb, 0xef, 0x7a, 0xeb, 0x45, 0x16, 0xab, 0x42, 0xc6, 0x0d, + 0x2e, 0x47, 0x41, 0x06, 0x85, 0xc3, 0x1c, 0x80, 0x71, 0x24, 0x4b, 0xed, + 0x01, 0x16, 0xd7, 0x0f, 0x4f, 0x9c, 0xf8, 0x6a, 0xbf, 0xf9, 0x70, 0x61, + 0xee, 0xfd, 0x04, 0x21, 0x53, 0xe5, 0xda, 0x20, 0x0f, 0xb0, 0x35, 0x8f, + 0xe8, 0xd6, 0xa7, 0x3d, 0x7a, 0x0b, 0xa6, 0xe3, 0xb9, 0xf9, 0x14, 0x73, + 0x7f, 0x5a, 0x13, 0x06, 0x24, 0xbd, 0xf5, 0x34, 0xfe, 0x07, 0xae, 0x35, + 0x79, 0xa8, 0x3b, 0x02, 0x98, 0x8d, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, + 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int application_exit_png_len = 1686; +unsigned char document_open_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x0e, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x46, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x21, 0x54, 0xaa, 0x60, + 0x41, 0x00, 0x00, 0x00, 0x17, 0x74, 0x45, 0x58, 0x74, 0x41, 0x75, 0x74, + 0x68, 0x6f, 0x72, 0x00, 0x4c, 0x61, 0x70, 0x6f, 0x20, 0x43, 0x61, 0x6c, + 0x61, 0x6d, 0x61, 0x6e, 0x64, 0x72, 0x65, 0x69, 0xdf, 0x91, 0x1a, 0x2a, + 0x00, 0x00, 0x00, 0x29, 0x74, 0x45, 0x58, 0x74, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x42, 0x61, 0x73, 0x65, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x4a, 0x61, 0x6b, 0x75, 0x62, 0x20, 0x53, + 0x74, 0x65, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x64, 0x65, 0x73, 0x69, 0x67, + 0x6e, 0xa0, 0x84, 0x05, 0x73, 0x00, 0x00, 0x04, 0x99, 0x49, 0x44, 0x41, + 0x54, 0x58, 0xc3, 0xed, 0x96, 0xcf, 0x6f, 0x54, 0x55, 0x14, 0xc7, 0x3f, + 0xf7, 0xbd, 0x37, 0x33, 0x4c, 0x5b, 0xaa, 0x09, 0x94, 0x1a, 0x02, 0xb2, + 0xb0, 0x11, 0x64, 0x05, 0x2e, 0x5c, 0x18, 0xe3, 0x46, 0x89, 0x89, 0x89, + 0x4b, 0x88, 0x89, 0x3b, 0x34, 0x1a, 0x57, 0x2e, 0x8c, 0x0b, 0x7f, 0x25, + 0x8a, 0x2b, 0xff, 0x08, 0x42, 0xd8, 0x18, 0x63, 0x37, 0x1a, 0x63, 0x5c, + 0xb8, 0x11, 0x82, 0x21, 0x31, 0xc6, 0x94, 0xdf, 0xb6, 0x30, 0x58, 0x06, + 0x28, 0x23, 0xa5, 0x08, 0xb4, 0xd3, 0xce, 0xbb, 0x3f, 0xce, 0x71, 0xf1, + 0xde, 0xcc, 0xbc, 0x69, 0xa7, 0xd8, 0x1a, 0xd4, 0x85, 0x9e, 0xe4, 0xe5, + 0x9d, 0xfb, 0xee, 0x3d, 0xf7, 0x7c, 0xef, 0xf7, 0x9c, 0x7b, 0xce, 0x83, + 0xff, 0xe5, 0xbf, 0x2e, 0xa6, 0xad, 0x1c, 0x7a, 0x75, 0xcf, 0x97, 0x11, + 0x66, 0x1f, 0xda, 0xfd, 0xb6, 0x8a, 0x85, 0x62, 0xf8, 0x41, 0x9d, 0x7b, + 0xf3, 0xc3, 0xa3, 0x67, 0x6b, 0x0f, 0x04, 0xc0, 0x17, 0xfb, 0xf7, 0xc7, + 0x93, 0x1b, 0xa7, 0xfc, 0x9e, 0x67, 0x0f, 0x80, 0x31, 0x18, 0xd3, 0x8b, + 0x41, 0x55, 0xbb, 0x06, 0x06, 0x7e, 0xab, 0x9f, 0xd7, 0x99, 0x5f, 0xcf, + 0xce, 0x19, 0xe4, 0xe0, 0x07, 0x87, 0x4f, 0x7f, 0xfd, 0x40, 0x00, 0x5c, + 0x18, 0x9a, 0xf2, 0x3b, 0xf7, 0x3e, 0xcf, 0xd2, 0xe2, 0x3c, 0xa0, 0xf7, + 0x35, 0x29, 0x57, 0x06, 0x88, 0x62, 0xd3, 0xbc, 0x78, 0xea, 0xfb, 0x2b, + 0x2a, 0xb2, 0x7b, 0x9d, 0x3e, 0x45, 0xd1, 0xcf, 0x3f, 0x3a, 0x72, 0xfa, + 0x95, 0x1e, 0x00, 0xe7, 0x07, 0x27, 0xfd, 0xae, 0x27, 0xf7, 0xad, 0x01, + 0x40, 0x26, 0x71, 0x52, 0x62, 0x68, 0x78, 0x13, 0xa5, 0x72, 0xa5, 0x40, + 0x55, 0x51, 0xd5, 0x65, 0x2c, 0x0a, 0x22, 0x42, 0x08, 0x22, 0x67, 0x4f, + 0x7e, 0x65, 0x76, 0x37, 0x77, 0x96, 0x0e, 0x8c, 0x8f, 0x87, 0x04, 0x60, + 0x1c, 0x78, 0x42, 0xc0, 0x8b, 0x12, 0x44, 0xd6, 0x04, 0x20, 0xd8, 0x94, + 0xdb, 0xb7, 0x66, 0xd6, 0x4d, 0x78, 0x75, 0x70, 0x38, 0x12, 0xc9, 0x7c, + 0x02, 0x24, 0x5d, 0x5e, 0x14, 0xe7, 0x1c, 0xd6, 0xba, 0x1e, 0x00, 0x8b, + 0xc9, 0x08, 0x4d, 0xa9, 0xe2, 0x7c, 0x40, 0x44, 0xd6, 0xf1, 0x68, 0x47, + 0x8f, 0x22, 0xc3, 0xd6, 0x61, 0xc3, 0xd6, 0x61, 0x25, 0x2e, 0x79, 0xa4, + 0x90, 0x53, 0x05, 0x00, 0x60, 0x5d, 0xc0, 0x7a, 0x0f, 0x85, 0x05, 0x77, + 0xb4, 0xcc, 0xfb, 0xef, 0xbe, 0x47, 0xb9, 0x54, 0xf9, 0xcb, 0x89, 0x66, + 0x6d, 0xca, 0x6b, 0xaf, 0x1f, 0x64, 0xf3, 0x40, 0x4c, 0xe2, 0x3d, 0x52, + 0x20, 0x38, 0x29, 0x66, 0xba, 0xf3, 0x0e, 0xeb, 0x5c, 0x0f, 0x00, 0xaf, + 0x9e, 0x72, 0xa9, 0xcc, 0xec, 0xdc, 0x4d, 0x54, 0x65, 0xfd, 0x59, 0x6e, + 0x22, 0x36, 0x6f, 0x1a, 0xc1, 0xfb, 0x80, 0x75, 0x42, 0xe2, 0x7c, 0xcf, + 0xad, 0xea, 0x32, 0x20, 0xe0, 0x9c, 0xc7, 0xda, 0x5e, 0x06, 0x3c, 0x1e, + 0x55, 0x18, 0xa8, 0x0e, 0xf4, 0x18, 0xae, 0x1d, 0x80, 0xe9, 0x44, 0x34, + 0xb5, 0x9e, 0xa4, 0xe2, 0x11, 0xa1, 0x5f, 0x08, 0x14, 0xeb, 0x3d, 0xce, + 0xb9, 0x1e, 0x47, 0x2e, 0xf2, 0x44, 0x91, 0xa1, 0xba, 0xa1, 0x0a, 0xc0, + 0xa5, 0x4b, 0x35, 0xbc, 0xf7, 0xab, 0x3a, 0x4c, 0x92, 0x98, 0xb1, 0xb1, + 0xb1, 0x95, 0x20, 0x00, 0x67, 0x2d, 0xce, 0xb9, 0xfe, 0x39, 0xa0, 0x9a, + 0x33, 0xe0, 0x3c, 0x52, 0x80, 0xe8, 0x23, 0x9f, 0x13, 0x92, 0x6d, 0xb2, + 0x7c, 0xf3, 0xf5, 0x48, 0x6a, 0x3d, 0x89, 0xf5, 0x45, 0x82, 0xdb, 0x00, + 0xc6, 0x11, 0xdd, 0x8d, 0xb5, 0x96, 0x34, 0xb5, 0xa8, 0x6a, 0x67, 0x91, + 0x8b, 0x2d, 0x21, 0x64, 0xcc, 0x00, 0xd4, 0xeb, 0x57, 0xef, 0xcb, 0x40, + 0x5b, 0x4a, 0xa5, 0x12, 0xdb, 0xb7, 0x6f, 0xcb, 0x59, 0x29, 0xa1, 0xaa, + 0xb4, 0x52, 0x4b, 0xc9, 0xda, 0x9c, 0x81, 0xf1, 0x95, 0x39, 0x60, 0xbd, + 0xa7, 0x65, 0xdb, 0x49, 0xa2, 0xa0, 0xe0, 0xca, 0x1e, 0xe7, 0x32, 0x60, + 0xa0, 0x8c, 0x8e, 0x8e, 0xac, 0xfd, 0xc4, 0x69, 0x2b, 0x6b, 0x1e, 0xf9, + 0x69, 0x96, 0x5a, 0x96, 0x72, 0xd5, 0x65, 0x39, 0x60, 0xfa, 0xdc, 0x02, + 0x9b, 0x3a, 0x52, 0x6b, 0x51, 0x11, 0x34, 0x0f, 0x4b, 0xa8, 0xb4, 0x43, + 0x92, 0x6d, 0xd2, 0x68, 0xdc, 0x24, 0x84, 0xf0, 0xa7, 0xce, 0x93, 0x24, + 0xc9, 0xc1, 0x6a, 0x27, 0xa4, 0x4b, 0xa9, 0x65, 0x43, 0x6a, 0x31, 0xaa, + 0x2b, 0x01, 0x88, 0x82, 0xb3, 0x8e, 0x34, 0x75, 0x88, 0x68, 0x27, 0x0c, + 0x8b, 0x7a, 0x97, 0xe9, 0xe9, 0xe9, 0x35, 0x39, 0xed, 0xa9, 0x94, 0xc1, + 0x51, 0xaf, 0xd7, 0x01, 0x88, 0xa2, 0x98, 0x66, 0xb3, 0x89, 0x5a, 0x4b, + 0x2b, 0x75, 0x54, 0x94, 0x55, 0x0a, 0x91, 0xf5, 0xb4, 0xd2, 0x3c, 0x46, + 0xaa, 0x88, 0xc2, 0x8d, 0xb9, 0x06, 0xc7, 0x8e, 0x1d, 0x47, 0xe6, 0xaf, + 0xa1, 0xcd, 0x19, 0x0c, 0xd2, 0xa7, 0x9f, 0x2d, 0xbb, 0x9e, 0xba, 0x52, + 0x7d, 0xea, 0x51, 0x43, 0x12, 0x3d, 0x42, 0x1c, 0x27, 0x44, 0xba, 0x83, + 0xc7, 0xca, 0x63, 0xa7, 0x9e, 0x7e, 0x5b, 0xce, 0x99, 0x4f, 0xdf, 0x7a, + 0xe1, 0x33, 0x94, 0x5d, 0xce, 0xd9, 0xbd, 0x42, 0x42, 0x08, 0x21, 0x6b, + 0x24, 0xb9, 0x65, 0xcb, 0x29, 0x43, 0x43, 0x83, 0x6c, 0xd9, 0xbe, 0x93, + 0xe7, 0x5e, 0x7c, 0x99, 0x52, 0x7e, 0x1d, 0xb3, 0x9b, 0x65, 0x50, 0xc0, + 0xe4, 0x7c, 0x6a, 0xfb, 0x3a, 0xad, 0xd0, 0xb3, 0x03, 0x65, 0xe7, 0xca, + 0x12, 0x20, 0x5d, 0x5a, 0xe0, 0x9b, 0xa3, 0x9f, 0x68, 0xe2, 0x9d, 0x3b, + 0xb0, 0xff, 0x8d, 0x43, 0xf1, 0xf0, 0xc3, 0x5b, 0xf2, 0xb8, 0x98, 0xfc, + 0x9f, 0xa0, 0xab, 0xab, 0x08, 0xce, 0x59, 0xee, 0xce, 0x35, 0x98, 0xbd, + 0x71, 0x39, 0xdf, 0x48, 0x3b, 0xb9, 0xd3, 0xab, 0x77, 0xbb, 0x61, 0x71, + 0x8e, 0x82, 0xcd, 0xc6, 0x87, 0x36, 0x11, 0xc7, 0xc6, 0x39, 0x6b, 0x67, + 0x13, 0x6b, 0xed, 0x85, 0x52, 0xa5, 0xfa, 0xf8, 0xc2, 0xbd, 0xd9, 0xf2, + 0x5c, 0xa3, 0xde, 0xdd, 0x20, 0x0f, 0x43, 0xbb, 0xad, 0xae, 0xea, 0x74, + 0xd9, 0x98, 0xe5, 0xeb, 0x96, 0xd9, 0xab, 0x2a, 0x22, 0x8e, 0x46, 0xbd, + 0x76, 0xcb, 0x79, 0x37, 0x99, 0xa4, 0xce, 0x4f, 0xdc, 0xb8, 0x5a, 0x1b, + 0xdd, 0xb6, 0x63, 0x6c, 0x44, 0x35, 0x2f, 0x12, 0x3d, 0x1b, 0xd0, 0xe3, + 0xb4, 0xbb, 0x79, 0xa1, 0xe7, 0x6b, 0x37, 0x64, 0x9d, 0x75, 0xab, 0x00, + 0x47, 0xc1, 0xdb, 0x25, 0xea, 0xb5, 0x73, 0x0b, 0xd6, 0x86, 0x8b, 0x91, + 0xf3, 0x6e, 0xe2, 0xfc, 0xcf, 0x27, 0x44, 0x55, 0xd0, 0x10, 0x40, 0x02, + 0x2a, 0x01, 0x15, 0x0f, 0x9a, 0x8f, 0x83, 0x07, 0x09, 0xbd, 0x4f, 0x3e, + 0x47, 0x61, 0xae, 0xb3, 0x4e, 0x43, 0x56, 0x58, 0x44, 0x0a, 0x73, 0xf9, + 0x37, 0x0d, 0x2c, 0xce, 0xdf, 0x61, 0xe6, 0xca, 0x64, 0xc5, 0x39, 0x7b, + 0x31, 0x71, 0xa9, 0x9b, 0xa8, 0xfd, 0x32, 0xb1, 0xf9, 0x99, 0xf9, 0x97, + 0x30, 0x06, 0x24, 0xf8, 0x02, 0xfd, 0xf4, 0x89, 0x33, 0x85, 0xd3, 0xf5, + 0x3b, 0xf9, 0x4a, 0x9b, 0x3c, 0x23, 0xbb, 0x36, 0xc0, 0x62, 0xb3, 0x39, + 0x8a, 0x61, 0x2a, 0x99, 0x6f, 0x2e, 0x9e, 0xf6, 0x3e, 0xc4, 0x37, 0x67, + 0x2e, 0x33, 0x38, 0x38, 0x48, 0x30, 0xa6, 0x9d, 0xe2, 0x85, 0x46, 0x62, + 0x72, 0xf3, 0xec, 0x87, 0xb5, 0x9d, 0xf9, 0xc6, 0x64, 0xd7, 0x57, 0xf3, + 0x42, 0x25, 0x2a, 0x68, 0x5e, 0x43, 0x3a, 0x7a, 0x61, 0xae, 0x5d, 0x90, + 0xee, 0xde, 0xbe, 0x85, 0x75, 0xae, 0xe2, 0xc5, 0xd4, 0xa2, 0x23, 0xdf, + 0x5e, 0x6a, 0x79, 0xe7, 0xa7, 0x2f, 0x9c, 0xf9, 0x49, 0xbd, 0x44, 0x68, + 0x54, 0x46, 0x4d, 0x09, 0xa2, 0x32, 0x44, 0xe5, 0x6c, 0x1c, 0x57, 0x20, + 0xae, 0x40, 0x9c, 0x8d, 0x8b, 0xba, 0x89, 0xcb, 0x90, 0x54, 0xd0, 0xa8, + 0x02, 0x51, 0xa5, 0x63, 0x67, 0xe2, 0x4a, 0x36, 0xd7, 0xb6, 0x31, 0xd9, + 0x7c, 0xd0, 0x98, 0x46, 0xe3, 0x3a, 0xa2, 0xba, 0xf0, 0xdd, 0x99, 0x99, + 0xeb, 0x09, 0x30, 0x34, 0x75, 0xed, 0xde, 0x61, 0x4e, 0x1e, 0x7f, 0x67, + 0xe2, 0xc7, 0x13, 0xc3, 0xa6, 0x7f, 0x3d, 0xe9, 0xdb, 0x5e, 0x97, 0xcb, + 0x5a, 0xff, 0x17, 0x82, 0xc8, 0x7c, 0x6d, 0x66, 0xe1, 0xe3, 0xe9, 0xe9, + 0x3b, 0xb1, 0x01, 0x06, 0x81, 0x11, 0x60, 0xb8, 0x58, 0x19, 0xff, 0x46, + 0x51, 0xc0, 0x02, 0xbf, 0x03, 0xb7, 0x0d, 0x10, 0x01, 0x71, 0xfe, 0x36, + 0xfc, 0x33, 0xa2, 0x40, 0xc8, 0x9f, 0x7f, 0x57, 0xfe, 0x00, 0x78, 0x44, + 0xa0, 0xe9, 0x8f, 0x7f, 0xa4, 0x26, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, + 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int document_open_png_len = 1422; +unsigned char edit_select_all_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x12, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x50, 0x61, 0x70, 0x65, 0x72, 0x20, 0x53, 0x68, 0x65, 0x65, 0x74, + 0x73, 0xb9, 0xaf, 0x91, 0xf9, 0x00, 0x00, 0x00, 0x17, 0x74, 0x45, 0x58, + 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x00, 0x4c, 0x61, 0x70, 0x6f, + 0x20, 0x43, 0x61, 0x6c, 0x61, 0x6d, 0x61, 0x6e, 0x64, 0x72, 0x65, 0x69, + 0xdf, 0x91, 0x1a, 0x2a, 0x00, 0x00, 0x00, 0x27, 0x74, 0x45, 0x58, 0x74, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x00, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x20, 0x48, 0x55, 0x47, 0x45, 0x20, + 0x68, 0x65, 0x6c, 0x70, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x4a, 0x61, + 0x6b, 0x75, 0x62, 0x86, 0x54, 0x07, 0xb3, 0x00, 0x00, 0x05, 0x57, 0x49, + 0x44, 0x41, 0x54, 0x58, 0xc3, 0xc5, 0x97, 0x4d, 0x88, 0x5b, 0x65, 0x14, + 0x86, 0x9f, 0x73, 0x73, 0x93, 0x9b, 0x3b, 0x93, 0x49, 0x66, 0xc6, 0x76, + 0x6c, 0xad, 0xb8, 0x50, 0xdb, 0xda, 0x8c, 0xa2, 0xb6, 0x0b, 0x8b, 0x22, + 0xb5, 0xf5, 0x97, 0x2a, 0xfd, 0x19, 0xad, 0xe0, 0xae, 0x0b, 0x37, 0x0a, + 0x15, 0xc4, 0x8d, 0x0b, 0x41, 0x44, 0x14, 0x5c, 0x57, 0x14, 0xdc, 0x58, + 0xaa, 0x28, 0x56, 0xac, 0x28, 0x68, 0x41, 0xf0, 0xa7, 0xe2, 0xbf, 0x55, + 0x0b, 0x6a, 0x3b, 0x85, 0x22, 0x55, 0xb1, 0x9d, 0xa9, 0x36, 0xd3, 0x76, + 0x32, 0x63, 0x92, 0xe6, 0x3b, 0xc7, 0xc5, 0xfd, 0x99, 0x24, 0xd3, 0x99, + 0x49, 0xbb, 0xf1, 0x83, 0xcb, 0x47, 0x6e, 0x6e, 0x72, 0xde, 0xf3, 0xbe, + 0xe7, 0x3d, 0xdf, 0xb9, 0x62, 0x66, 0xfc, 0x9f, 0xcb, 0xe3, 0x7f, 0x5e, + 0x7e, 0xe7, 0x8d, 0x8f, 0x3e, 0xde, 0xb7, 0x45, 0xd5, 0xbd, 0xa2, 0xaa, + 0x8b, 0x01, 0x12, 0x86, 0xa2, 0xcd, 0xd2, 0xbd, 0xfd, 0x3b, 0x43, 0x44, + 0x9a, 0x22, 0xf2, 0x87, 0x9a, 0x7d, 0xd0, 0x30, 0xf7, 0xc2, 0xb6, 0xfb, + 0xb6, 0xfd, 0xd5, 0x0d, 0x00, 0xe9, 0x94, 0x60, 0xdf, 0x47, 0xef, 0xff, + 0xb9, 0x7e, 0xdd, 0x5d, 0x97, 0xe7, 0x83, 0xfc, 0x1c, 0x3f, 0x31, 0x5a, + 0x30, 0xa4, 0xeb, 0xdf, 0xda, 0x34, 0x7f, 0xff, 0x73, 0x92, 0xe3, 0x27, + 0x8e, 0x37, 0xc6, 0xc6, 0x8e, 0x37, 0x31, 0x79, 0x64, 0xeb, 0xe6, 0x07, + 0x76, 0x5f, 0x30, 0x03, 0xcd, 0xa6, 0x5b, 0x12, 0xe4, 0x02, 0xfe, 0xad, + 0x4d, 0xa3, 0xaa, 0xa8, 0x2a, 0x86, 0x61, 0x0a, 0x66, 0x8a, 0xa1, 0x98, + 0x1a, 0x6a, 0x8a, 0x99, 0xa2, 0x66, 0xa8, 0x2a, 0xbe, 0xef, 0x53, 0x2c, + 0x96, 0x08, 0xc3, 0x7c, 0x6e, 0x70, 0x70, 0x20, 0x37, 0x3a, 0x7a, 0xe4, + 0xe5, 0x3d, 0x7b, 0xdf, 0x1c, 0x7e, 0x70, 0xe4, 0xa1, 0x27, 0x67, 0xc3, + 0x9d, 0xa7, 0x06, 0x54, 0x35, 0xdd, 0x55, 0x15, 0x33, 0xc3, 0xd4, 0xa2, + 0xc0, 0x28, 0xaa, 0x16, 0x01, 0xb1, 0x48, 0x0e, 0x53, 0x03, 0x83, 0x46, + 0xa3, 0x41, 0xb5, 0x3a, 0x49, 0xa1, 0xb7, 0xc8, 0xe0, 0xc0, 0x22, 0x86, + 0xcb, 0xe5, 0x9e, 0x30, 0x0c, 0x1f, 0xdd, 0xf3, 0xf6, 0x1b, 0x6f, 0x03, + 0xd2, 0x35, 0x00, 0xe7, 0x5a, 0x00, 0xc4, 0x59, 0x1a, 0x33, 0x01, 0x53, + 0x09, 0x12, 0x0d, 0x25, 0xfa, 0x6f, 0x41, 0x00, 0xe3, 0xc4, 0xd8, 0x09, + 0x06, 0xfb, 0x07, 0x29, 0xf4, 0x15, 0x29, 0xaf, 0x2a, 0x17, 0xfc, 0x5c, + 0xf6, 0xee, 0x37, 0xf6, 0xbc, 0xfe, 0xcc, 0x05, 0x30, 0xe0, 0xe2, 0xc2, + 0x4a, 0x82, 0x76, 0x5e, 0x49, 0x41, 0xb6, 0x82, 0x88, 0x72, 0x14, 0xcf, + 0xa3, 0x56, 0x9b, 0x06, 0x84, 0x52, 0x5f, 0x89, 0x6c, 0x36, 0xcb, 0xf0, + 0xf0, 0x70, 0x01, 0xd3, 0x27, 0x76, 0xef, 0x7e, 0x75, 0x73, 0x57, 0x35, + 0x90, 0x4a, 0x60, 0xc6, 0xe7, 0xa3, 0x67, 0x50, 0xb5, 0x36, 0x09, 0x3b, + 0x5d, 0x31, 0x73, 0x2f, 0x02, 0x77, 0xed, 0x90, 0x8f, 0x08, 0x84, 0xf9, + 0x1e, 0x7a, 0xc2, 0x5e, 0x04, 0x8f, 0xeb, 0xae, 0xbb, 0xbe, 0xe7, 0xa7, + 0x1f, 0x0f, 0xbc, 0xbe, 0x6b, 0xd7, 0xae, 0xc5, 0xdb, 0xb7, 0x6f, 0xaf, + 0xcd, 0x0b, 0x20, 0x91, 0xc0, 0x4c, 0x51, 0xa7, 0xbc, 0xf6, 0xe1, 0xcf, + 0x38, 0x55, 0x30, 0x50, 0x6d, 0xe2, 0x65, 0xfc, 0xf3, 0x52, 0x19, 0x64, + 0x7d, 0xb6, 0xdd, 0xb1, 0x92, 0x03, 0xbf, 0xd7, 0xf9, 0xe2, 0xf0, 0x37, + 0xd4, 0x6b, 0x53, 0x34, 0xea, 0x75, 0xf2, 0x85, 0x3e, 0x36, 0xdf, 0xb2, + 0x9c, 0x9e, 0x42, 0x41, 0x4f, 0x9f, 0x3e, 0xbd, 0x11, 0xd8, 0xbb, 0x00, + 0x03, 0x2e, 0xcd, 0x2a, 0x52, 0x5f, 0x10, 0x2f, 0x13, 0xa3, 0x6b, 0x70, + 0xae, 0x76, 0x96, 0x6c, 0xd8, 0x8f, 0xa9, 0x4b, 0xc1, 0x98, 0x3a, 0x9a, + 0x16, 0x49, 0xb1, 0xef, 0xeb, 0x63, 0x8c, 0x8d, 0x57, 0x70, 0xe7, 0x6a, + 0xf4, 0x87, 0xc2, 0xea, 0x15, 0x25, 0x4e, 0x8e, 0x97, 0xb8, 0x66, 0xe5, + 0xaa, 0xe2, 0xf7, 0xdf, 0x7d, 0xfb, 0xf0, 0xc2, 0x00, 0x52, 0x06, 0x22, + 0x7a, 0x83, 0x20, 0x68, 0x49, 0x33, 0xc0, 0x4c, 0x99, 0x9e, 0x38, 0x4e, + 0xd0, 0x3b, 0x40, 0x26, 0x97, 0xa5, 0x5e, 0x3d, 0x45, 0xc6, 0x0f, 0xc8, + 0x65, 0x43, 0x40, 0x18, 0xb9, 0x7d, 0x18, 0x55, 0x87, 0x73, 0x4a, 0xb3, + 0x79, 0x8e, 0xe9, 0xea, 0x24, 0x95, 0x4a, 0x85, 0xb5, 0x37, 0xad, 0xe5, + 0xcb, 0x2f, 0xbf, 0xd8, 0xb0, 0x73, 0xe7, 0xce, 0x60, 0xc7, 0x8e, 0x1d, + 0xf5, 0xb9, 0x01, 0x58, 0x0c, 0x20, 0x89, 0x99, 0xcf, 0xb5, 0x7d, 0x5f, + 0xab, 0x56, 0xc8, 0x05, 0x39, 0x7a, 0x4b, 0x03, 0x00, 0x9c, 0xab, 0x36, + 0xe9, 0xed, 0x5f, 0x4a, 0x26, 0x93, 0x41, 0x04, 0xde, 0xdf, 0x7f, 0x94, + 0x93, 0x13, 0xd3, 0x00, 0x2c, 0x59, 0x54, 0xe0, 0xde, 0x5b, 0xae, 0xa2, + 0xbc, 0xbc, 0x97, 0x30, 0xdf, 0x83, 0x20, 0x38, 0xe7, 0x42, 0xa0, 0x3e, + 0x4f, 0x0d, 0xb8, 0xa4, 0xe1, 0x21, 0x40, 0x3e, 0x1f, 0xb4, 0xd9, 0x2d, + 0x9f, 0x5f, 0xca, 0xdf, 0xc7, 0x7e, 0xc1, 0xcf, 0x40, 0xad, 0x3a, 0x41, + 0xa1, 0x74, 0x09, 0x61, 0x18, 0xe2, 0x49, 0x64, 0xc6, 0x4d, 0xeb, 0x56, + 0xcc, 0xb6, 0x9a, 0xe7, 0xa5, 0x85, 0xbd, 0xa0, 0x0b, 0xa2, 0x22, 0xb4, + 0x94, 0x85, 0x20, 0x9f, 0xc3, 0x13, 0x8f, 0x4b, 0x8a, 0x01, 0x61, 0xce, + 0x67, 0x6c, 0x62, 0x9a, 0xdc, 0x8a, 0x1b, 0xf8, 0xfd, 0x97, 0xaf, 0x28, + 0x2d, 0x5a, 0x46, 0xff, 0xd0, 0x15, 0x51, 0x10, 0x11, 0x44, 0x3c, 0xde, + 0xdb, 0x7f, 0x84, 0x93, 0x95, 0x29, 0x00, 0x96, 0x2e, 0xea, 0xe3, 0xbe, + 0x5b, 0xaf, 0x4e, 0x01, 0x58, 0xec, 0xb0, 0xae, 0x6c, 0x08, 0x86, 0x08, + 0x64, 0x7d, 0x9f, 0xde, 0xbc, 0xcf, 0xea, 0x2b, 0x07, 0xf1, 0x33, 0x42, + 0x98, 0xcb, 0xf0, 0xdb, 0x78, 0x95, 0x6c, 0x2e, 0xa0, 0x7f, 0x68, 0x19, + 0x59, 0xdf, 0x8f, 0xb3, 0x8c, 0x58, 0xda, 0x72, 0xdb, 0x35, 0x6d, 0xe7, + 0x46, 0x04, 0xce, 0x03, 0xe9, 0x12, 0x40, 0x22, 0x81, 0x88, 0x20, 0x08, + 0x95, 0x3f, 0x0f, 0x71, 0x46, 0x84, 0xcf, 0xfe, 0xe9, 0x8b, 0x0f, 0x9d, + 0x06, 0x67, 0xce, 0x9e, 0x05, 0x57, 0xe7, 0xd4, 0x1f, 0xbf, 0x92, 0xf1, + 0xb3, 0x00, 0xe4, 0xf2, 0x21, 0xb2, 0xf2, 0x26, 0xde, 0xfd, 0xf4, 0x70, + 0x1b, 0x03, 0x9b, 0xd6, 0xad, 0x40, 0x3c, 0x2f, 0xd2, 0xdf, 0x14, 0x38, + 0xd3, 0x0d, 0x03, 0x11, 0x9d, 0x9e, 0x27, 0x6c, 0xba, 0x63, 0x6d, 0xda, + 0x68, 0x67, 0x3a, 0xfa, 0xec, 0xd6, 0x2e, 0x12, 0x81, 0x1e, 0xd9, 0x50, + 0x9e, 0xcd, 0x40, 0x52, 0x03, 0x4e, 0x3b, 0xc2, 0xcf, 0x63, 0x43, 0x2f, + 0xee, 0xaf, 0xef, 0xed, 0x1f, 0x4d, 0x33, 0xba, 0xd0, 0x75, 0xd9, 0xe2, + 0x22, 0x9b, 0xd7, 0xad, 0x8c, 0x24, 0x00, 0x9c, 0xba, 0x4e, 0x02, 0xce, + 0x23, 0x81, 0x26, 0x12, 0x78, 0x88, 0xc0, 0xc8, 0x86, 0x55, 0x1d, 0x0c, + 0x48, 0x07, 0x07, 0x32, 0xf7, 0x59, 0x67, 0x9d, 0x0c, 0x74, 0xe1, 0x82, + 0x84, 0x01, 0xf1, 0xa2, 0x1a, 0xd8, 0xfb, 0xc9, 0x61, 0xc6, 0x2b, 0xd5, + 0x8b, 0x66, 0x60, 0xeb, 0xfa, 0x55, 0xa9, 0x85, 0x2f, 0xc8, 0x05, 0x82, + 0x80, 0x08, 0x23, 0xb7, 0x97, 0x5b, 0xa4, 0x97, 0x99, 0xfc, 0x5b, 0x12, + 0xdf, 0xb8, 0xe6, 0xf2, 0x59, 0x7f, 0xfc, 0xe1, 0x0f, 0x7f, 0xa5, 0x47, + 0x77, 0xc2, 0x80, 0x33, 0xd7, 0x85, 0x0b, 0xb4, 0xd5, 0x05, 0xf0, 0xce, + 0x27, 0x87, 0x18, 0x3f, 0x35, 0x3f, 0x03, 0x1b, 0xd7, 0x3c, 0x90, 0x66, + 0x99, 0xb4, 0xf1, 0x17, 0xdf, 0xfa, 0x9a, 0x65, 0x43, 0x25, 0xb6, 0xae, + 0x2f, 0x23, 0xe2, 0xb5, 0xb1, 0xbb, 0x80, 0x04, 0x96, 0x4a, 0xab, 0x06, + 0xf7, 0x6f, 0x28, 0xcf, 0x64, 0xde, 0xc2, 0x80, 0xb4, 0xdb, 0x22, 0x19, + 0x4c, 0xd3, 0x33, 0xe4, 0xb1, 0x87, 0x6e, 0x4e, 0xe7, 0x86, 0x04, 0x9c, + 0x53, 0x05, 0x4e, 0x2f, 0x00, 0x20, 0xa6, 0x29, 0x9e, 0x31, 0x16, 0x64, + 0xe0, 0x8a, 0x25, 0xfd, 0x88, 0x08, 0xf7, 0xdc, 0xb8, 0xb4, 0xed, 0x3c, + 0xb9, 0xf3, 0xfa, 0x4b, 0xa1, 0x65, 0x90, 0x89, 0x92, 0x6b, 0x76, 0x84, + 0x9f, 0xa7, 0x08, 0x13, 0x17, 0x2f, 0xc4, 0x80, 0x08, 0x6d, 0xc1, 0x93, + 0xce, 0xe7, 0xd4, 0x91, 0x8c, 0x32, 0xd6, 0xda, 0xe6, 0xe7, 0xb2, 0xa1, + 0x44, 0x3c, 0xc9, 0xd3, 0xcf, 0x3c, 0x95, 0x3a, 0x68, 0x7d, 0x79, 0x20, + 0xaa, 0x85, 0xe4, 0x8a, 0x0b, 0x33, 0xfa, 0x3c, 0x53, 0xa8, 0xad, 0x34, + 0x27, 0x32, 0x44, 0xb3, 0x64, 0x7c, 0xac, 0xc7, 0x0c, 0x38, 0x35, 0x26, + 0x26, 0x26, 0x32, 0x22, 0x22, 0x16, 0xd3, 0xe2, 0xb7, 0x04, 0xf7, 0x80, + 0x6c, 0xd2, 0x8a, 0xd3, 0xd1, 0xf3, 0xbc, 0x03, 0xb5, 0x81, 0x09, 0x26, + 0x20, 0xd6, 0xfe, 0x92, 0x32, 0x23, 0x43, 0x14, 0xd8, 0xd2, 0x97, 0x19, + 0x30, 0xa7, 0x72, 0xf4, 0xe8, 0xd1, 0x5e, 0x60, 0x52, 0x44, 0x9a, 0x66, + 0xa6, 0x7e, 0x07, 0x1b, 0x45, 0xcc, 0x2a, 0x93, 0x93, 0x67, 0x87, 0x8a, + 0xc5, 0xe2, 0x9c, 0x6d, 0xb7, 0x9b, 0x95, 0xcb, 0x76, 0xcc, 0x11, 0xb5, + 0x1a, 0xb5, 0x46, 0xcd, 0x1d, 0x3c, 0x78, 0xb0, 0x18, 0x1f, 0x08, 0x53, + 0x22, 0x62, 0x7e, 0x4b, 0x14, 0x01, 0xb2, 0x3f, 0x1d, 0xfc, 0xf9, 0xa5, + 0xe7, 0x9e, 0x7f, 0xf6, 0x71, 0x13, 0xfa, 0xe8, 0x7c, 0x2d, 0x8b, 0x3f, + 0x74, 0xee, 0x6d, 0xcf, 0xcc, 0xfd, 0x6c, 0xed, 0xf0, 0xa1, 0xd1, 0x3d, + 0x53, 0x53, 0x53, 0x41, 0x9c, 0xac, 0x07, 0x38, 0x89, 0xed, 0x23, 0xf1, + 0xcd, 0x10, 0x28, 0x02, 0x05, 0x20, 0xdb, 0xf2, 0xa0, 0x5c, 0x24, 0x15, + 0x49, 0x45, 0x3b, 0xa0, 0x49, 0x34, 0x09, 0x4d, 0xc6, 0x57, 0x3d, 0x05, + 0x10, 0xd7, 0x81, 0x17, 0x07, 0xf3, 0x5a, 0x82, 0x5e, 0xbc, 0x06, 0xb3, + 0x8a, 0x26, 0xdd, 0x35, 0x06, 0xa4, 0x66, 0x66, 0xff, 0x01, 0x4f, 0x04, + 0xd6, 0x0b, 0x9d, 0x73, 0x34, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, + 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int edit_select_all_png_len = 1614; +unsigned char media_seek_backward_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x13, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x4f, 0x70, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, + 0x76, 0x65, 0x3e, 0x67, 0xba, 0x0c, 0x00, 0x00, 0x04, 0x6a, 0x49, 0x44, + 0x41, 0x54, 0x58, 0x85, 0xed, 0x97, 0x6d, 0x4c, 0x5b, 0x55, 0x18, 0xc7, + 0xff, 0xa7, 0xf7, 0xdc, 0x96, 0xd9, 0x42, 0x7b, 0x5b, 0x5c, 0x58, 0x21, + 0xdb, 0xa4, 0x1d, 0x1b, 0xda, 0x38, 0xa0, 0x28, 0xc2, 0x88, 0x6e, 0xce, + 0x17, 0x08, 0x64, 0x2f, 0x6a, 0x02, 0x2e, 0x9a, 0x98, 0x18, 0x33, 0x9c, + 0xca, 0xc6, 0x96, 0xa0, 0x18, 0x33, 0x25, 0x2a, 0x02, 0x0e, 0xbf, 0xc8, + 0x84, 0xb0, 0xc9, 0x90, 0x8d, 0x2f, 0x48, 0x8c, 0xcb, 0x96, 0x4d, 0x1d, + 0x9b, 0x71, 0xbc, 0x28, 0xcc, 0x6c, 0x5f, 0x66, 0x64, 0x3a, 0x60, 0x89, + 0x5b, 0x07, 0x86, 0xf1, 0x56, 0xfa, 0xc2, 0x3d, 0xb7, 0xf7, 0xf8, 0x01, + 0xda, 0x8c, 0xd0, 0x41, 0xb7, 0x2f, 0xf3, 0x03, 0x27, 0x39, 0xdf, 0x7e, + 0x27, 0xe7, 0xf7, 0x3c, 0xcf, 0xb9, 0xcf, 0x93, 0x4b, 0x38, 0xe7, 0xb8, + 0x9f, 0x4b, 0x73, 0x5f, 0x6f, 0x5f, 0x12, 0x58, 0x12, 0xf8, 0x3f, 0x08, + 0xd0, 0x7b, 0x3d, 0x48, 0x08, 0x21, 0x00, 0xf4, 0x00, 0x74, 0x00, 0x3c, + 0x9c, 0x73, 0x7f, 0x84, 0xbc, 0x00, 0xc0, 0xc7, 0x39, 0x97, 0xef, 0x59, + 0x80, 0x10, 0xa2, 0x03, 0x60, 0x6c, 0x3a, 0xda, 0xb8, 0x39, 0x21, 0x61, + 0xc5, 0xf6, 0x1f, 0x4f, 0x9d, 0x2b, 0x03, 0xd0, 0x1f, 0x09, 0x6f, 0xb5, + 0xc6, 0xbd, 0x70, 0xfa, 0xe4, 0x99, 0x77, 0x01, 0x0c, 0x00, 0x00, 0x38, + 0xe7, 0x11, 0xef, 0x59, 0x7b, 0xa9, 0xb4, 0xb4, 0x34, 0xbd, 0xfd, 0xe7, + 0x1f, 0x3a, 0x7a, 0x7f, 0xef, 0xf2, 0xff, 0x74, 0xf6, 0x14, 0x67, 0x8c, + 0xed, 0x5d, 0x8c, 0x3f, 0x73, 0xee, 0x74, 0x47, 0xef, 0x85, 0x10, 0xbf, + 0x2f, 0xc8, 0x44, 0xf4, 0x06, 0xc8, 0xcc, 0x32, 0x38, 0x1c, 0x0e, 0xeb, + 0xf7, 0xc7, 0xdb, 0xca, 0x9e, 0xcf, 0xdd, 0x7c, 0xde, 0xf1, 0xf0, 0xa3, + 0x1b, 0xd2, 0xd3, 0x32, 0x75, 0x8c, 0x31, 0x50, 0x4a, 0x0d, 0x61, 0xce, + 0x18, 0x1c, 0x0e, 0x87, 0xf5, 0xbb, 0xe3, 0xad, 0x65, 0xcf, 0xe5, 0x6e, + 0x3a, 0xef, 0x78, 0x64, 0xfd, 0x86, 0x74, 0xe7, 0x7c, 0x7e, 0xd1, 0x12, + 0x04, 0xd3, 0x57, 0xd7, 0x50, 0xbb, 0x31, 0x21, 0xde, 0x5a, 0x9b, 0xb4, + 0x26, 0x59, 0x4a, 0x4c, 0xb4, 0x53, 0x8f, 0x77, 0x0a, 0x84, 0x10, 0x30, + 0x99, 0x85, 0xe3, 0x63, 0xea, 0x1a, 0x6a, 0x37, 0x25, 0xc4, 0x5b, 0x6b, + 0xed, 0xb6, 0x24, 0xc9, 0x6e, 0x5b, 0x4b, 0xfd, 0xd3, 0xbe, 0xb0, 0xfc, + 0x1d, 0x05, 0x08, 0x21, 0x02, 0x80, 0x98, 0xa2, 0xa2, 0xa2, 0xd5, 0xcf, + 0xe4, 0x6c, 0xaa, 0x89, 0x5b, 0x1e, 0x97, 0xe5, 0x4c, 0x7d, 0x4c, 0x47, + 0x34, 0x1a, 0xdc, 0x1c, 0xbe, 0x01, 0xb7, 0x7b, 0x02, 0xc6, 0xb5, 0x26, + 0xc8, 0x4c, 0x9e, 0xc7, 0x3f, 0x9b, 0xb3, 0xb1, 0x26, 0x36, 0xf6, 0xc1, + 0x0d, 0xe9, 0xa9, 0x19, 0x5a, 0x8d, 0x20, 0xe0, 0xd6, 0xd8, 0xbf, 0x50, + 0x55, 0x0e, 0x83, 0x3e, 0x3a, 0xc4, 0x2f, 0x28, 0x40, 0x08, 0xd1, 0xdb, + 0x6c, 0x36, 0xf3, 0x07, 0xfb, 0xdf, 0xdb, 0x65, 0xb1, 0x98, 0xf7, 0x64, + 0x65, 0x3e, 0xa5, 0x93, 0x4c, 0x26, 0x32, 0x3e, 0x31, 0x86, 0xb1, 0x89, + 0x51, 0xc8, 0xf2, 0x34, 0x88, 0x86, 0x00, 0x40, 0x28, 0x22, 0xa7, 0xd3, + 0x19, 0xff, 0x76, 0x71, 0xd1, 0x9b, 0x66, 0xb3, 0x79, 0x4f, 0x46, 0x46, + 0x96, 0xce, 0x22, 0xc5, 0x92, 0xf1, 0xc9, 0x51, 0xf8, 0xfc, 0x3e, 0x50, + 0x4a, 0x41, 0x29, 0x9d, 0xc3, 0x87, 0x15, 0x20, 0x84, 0x88, 0x00, 0x4c, + 0x9f, 0x55, 0x7f, 0xf2, 0xe4, 0xea, 0x55, 0xab, 0x0e, 0xa6, 0xa5, 0xa6, + 0x5b, 0xec, 0xb6, 0x24, 0xea, 0x9f, 0xf6, 0x61, 0x68, 0xd8, 0x05, 0xbf, + 0xec, 0x07, 0x63, 0x32, 0x38, 0x38, 0xb4, 0x54, 0x07, 0x00, 0x90, 0x99, + 0x8c, 0x3f, 0xfb, 0xfe, 0xb0, 0xed, 0x2b, 0xdd, 0xdd, 0x9b, 0xb2, 0x3e, + 0xcd, 0x92, 0x64, 0x5f, 0x4b, 0x27, 0xa7, 0x26, 0xe1, 0x1a, 0xfa, 0x07, + 0x1a, 0x41, 0x80, 0x48, 0xc5, 0x19, 0x01, 0x81, 0x86, 0xf8, 0x85, 0x32, + 0x60, 0x3a, 0xfc, 0x75, 0x7d, 0xb3, 0xdd, 0x6e, 0x7f, 0x3a, 0xf3, 0x89, + 0x6c, 0x2d, 0x40, 0x30, 0x31, 0x39, 0x06, 0x9f, 0xcf, 0x0b, 0x99, 0x4d, + 0x83, 0x31, 0x86, 0x80, 0x1a, 0x80, 0x56, 0xd4, 0x82, 0x52, 0x31, 0x14, + 0xd1, 0xf0, 0xf0, 0xf0, 0x8e, 0xed, 0x5b, 0x5e, 0xa2, 0x01, 0x35, 0x80, + 0x1b, 0x43, 0xd7, 0xc1, 0xb9, 0x0a, 0x2a, 0xcc, 0x44, 0x2d, 0x08, 0x73, + 0x05, 0x16, 0xcc, 0x40, 0x72, 0x72, 0x32, 0x7d, 0xc0, 0x60, 0x58, 0x19, + 0x50, 0x55, 0x0d, 0x40, 0x40, 0x08, 0xa0, 0x30, 0x05, 0x4c, 0x61, 0x90, + 0x19, 0x03, 0x53, 0xe4, 0xd0, 0xe5, 0xa2, 0x28, 0x86, 0x22, 0x52, 0x54, + 0x05, 0x20, 0x04, 0x84, 0x10, 0x08, 0x02, 0x05, 0xc0, 0x43, 0x02, 0x54, + 0x58, 0x38, 0x03, 0x73, 0x3e, 0x43, 0x8d, 0x46, 0x73, 0x6b, 0xfb, 0x96, + 0x17, 0xab, 0x8c, 0xd1, 0xc6, 0xd6, 0xa3, 0xc7, 0x8e, 0x4c, 0x5d, 0xb9, + 0xd2, 0x17, 0x30, 0x9b, 0x63, 0x11, 0x13, 0x6d, 0x44, 0x40, 0x55, 0x66, + 0xd3, 0x29, 0x42, 0x14, 0xb5, 0x10, 0x6f, 0xcb, 0x80, 0x14, 0x63, 0x6a, + 0x3d, 0xd6, 0xd2, 0x34, 0xd5, 0xdf, 0x7f, 0x35, 0x10, 0xb7, 0x7c, 0x05, + 0x24, 0xa3, 0x39, 0x24, 0x3a, 0x53, 0x7f, 0x71, 0x4e, 0xc6, 0xee, 0x28, + 0x70, 0xf9, 0xf2, 0x65, 0x39, 0x2a, 0x2a, 0xaa, 0x59, 0x92, 0x62, 0x3f, + 0x7a, 0xb9, 0xf0, 0xd5, 0xca, 0x81, 0xc1, 0xfe, 0xae, 0xc6, 0x6f, 0x0e, + 0x31, 0x8f, 0xd7, 0xcb, 0xd7, 0x3c, 0xb4, 0x0e, 0x92, 0xc9, 0x12, 0xba, + 0x3c, 0x28, 0x20, 0x33, 0x19, 0x4e, 0xe7, 0xe3, 0x7f, 0xbd, 0xb2, 0xe3, + 0xb5, 0xca, 0xc1, 0xc1, 0x81, 0xae, 0x23, 0x4d, 0x87, 0x99, 0xdb, 0xed, + 0xe6, 0xc6, 0x18, 0x09, 0xcb, 0x74, 0xcb, 0x66, 0x59, 0x0a, 0x41, 0x10, + 0x22, 0x7a, 0x03, 0x00, 0x80, 0xc4, 0xc4, 0xc4, 0xbf, 0x77, 0xee, 0xdc, + 0x59, 0x5d, 0x51, 0x51, 0xd1, 0xe3, 0xf5, 0x7a, 0xf2, 0x4e, 0x9f, 0x3a, + 0xb9, 0xd5, 0x68, 0x92, 0x12, 0xf2, 0x72, 0xf3, 0x45, 0xc9, 0x68, 0x86, + 0xcf, 0xe7, 0x05, 0xd1, 0x68, 0x6e, 0x8f, 0x88, 0x37, 0x37, 0x37, 0x57, + 0x17, 0x14, 0x14, 0xf4, 0x4c, 0x4e, 0x4e, 0xe4, 0x9d, 0x38, 0x71, 0x7c, + 0xab, 0x24, 0x49, 0x09, 0xf9, 0x79, 0x5b, 0x44, 0x9d, 0x2e, 0x0a, 0xc0, + 0x4c, 0xc7, 0x0d, 0xd7, 0x07, 0x16, 0x6d, 0xbf, 0x97, 0x2e, 0x5d, 0x32, + 0xc9, 0xb2, 0xfc, 0x7a, 0x67, 0xe7, 0x2f, 0x2d, 0x95, 0x07, 0x3e, 0x75, + 0x77, 0xff, 0xda, 0xa9, 0x28, 0x8a, 0xc2, 0x15, 0x85, 0x71, 0xce, 0x39, + 0xdf, 0x5f, 0xfe, 0x3e, 0xe7, 0x9c, 0xef, 0x0f, 0xf2, 0x1d, 0x1d, 0x1d, + 0x52, 0x90, 0xaf, 0xaa, 0xa9, 0x70, 0xf7, 0xf4, 0xfe, 0xa6, 0xa8, 0xaa, + 0xca, 0x55, 0x55, 0xbd, 0x9d, 0xff, 0x30, 0xe2, 0x56, 0x9c, 0x92, 0x92, + 0x32, 0xae, 0xd5, 0x6a, 0x1b, 0xe3, 0xe3, 0x57, 0x7e, 0xbc, 0xfb, 0xad, + 0xbd, 0x55, 0xd7, 0xae, 0x0d, 0x76, 0xd7, 0x7c, 0x51, 0x25, 0xdf, 0x1c, + 0xba, 0xc9, 0xc3, 0xd5, 0x34, 0x3b, 0x3b, 0x7b, 0x2c, 0xc8, 0x17, 0xef, + 0x2a, 0xa9, 0x1a, 0x18, 0xb8, 0xda, 0xfd, 0xf9, 0x81, 0x4a, 0xf9, 0x86, + 0xeb, 0x7a, 0x58, 0x3e, 0xa2, 0x69, 0xc8, 0x67, 0x26, 0x4b, 0x5f, 0x43, + 0x43, 0x43, 0x55, 0x61, 0x61, 0xe1, 0x85, 0x91, 0xd1, 0x91, 0x9c, 0xb6, + 0xb6, 0xd6, 0x6d, 0x7a, 0x83, 0x21, 0x5e, 0x96, 0x65, 0xf1, 0x4e, 0x7c, + 0x79, 0x79, 0x79, 0x75, 0x49, 0x49, 0xc9, 0x85, 0x91, 0xd1, 0x91, 0x9c, + 0x6f, 0xdb, 0x5a, 0xb7, 0xe9, 0xf5, 0xfa, 0xf9, 0xfc, 0xdd, 0x4c, 0xc3, + 0xe0, 0xee, 0xee, 0xee, 0x36, 0x2b, 0x8a, 0xf2, 0xc6, 0xd9, 0xb3, 0x67, + 0x5a, 0xea, 0xea, 0x0f, 0x5e, 0xe4, 0x9c, 0xbf, 0xb3, 0x10, 0xdf, 0xde, + 0xde, 0x6e, 0x09, 0xf2, 0x5f, 0xd5, 0x7f, 0x79, 0x91, 0x73, 0x5e, 0x1c, + 0x9a, 0x98, 0xf7, 0x22, 0x30, 0x3b, 0x6a, 0x89, 0xcb, 0xe5, 0x5a, 0xc7, + 0x39, 0xcf, 0xf7, 0x78, 0x3c, 0xd6, 0xbb, 0xe1, 0x39, 0xe7, 0x21, 0x9e, + 0x2c, 0xfd, 0x98, 0x2c, 0x09, 0x2c, 0x09, 0xdc, 0x6f, 0x81, 0xff, 0x00, + 0x22, 0x33, 0xf5, 0x54, 0xc3, 0xec, 0xb3, 0x75, 0x00, 0x00, 0x00, 0x00, + 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int media_seek_backward_png_len = 1292; +unsigned char system_log_out_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x20, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x53, + 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x20, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x73, 0x2c, 0x82, 0xc9, 0xba, 0x00, 0x00, 0x00, 0x17, 0x74, + 0x45, 0x58, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x00, 0x4c, 0x61, + 0x70, 0x6f, 0x20, 0x43, 0x61, 0x6c, 0x61, 0x6d, 0x61, 0x6e, 0x64, 0x72, + 0x65, 0x69, 0xdf, 0x91, 0x1a, 0x2a, 0x00, 0x00, 0x05, 0xd9, 0x49, 0x44, + 0x41, 0x54, 0x58, 0xc3, 0xbd, 0x97, 0x5d, 0x6c, 0x14, 0xd7, 0x15, 0x80, + 0xbf, 0x73, 0xee, 0xcc, 0xda, 0x60, 0x27, 0xd8, 0x86, 0xd6, 0xae, 0xf1, + 0x42, 0xd8, 0x00, 0x51, 0x81, 0xd6, 0x44, 0xaa, 0x43, 0xfe, 0x5a, 0xd1, + 0x2a, 0x51, 0x1e, 0x00, 0x25, 0x05, 0x85, 0x4a, 0x49, 0xd5, 0x36, 0xed, + 0x43, 0xa2, 0x48, 0x79, 0x08, 0x21, 0x8d, 0xf2, 0xd4, 0x9f, 0x48, 0x81, + 0x46, 0x51, 0xfa, 0x10, 0xf5, 0x29, 0xc2, 0x95, 0xaa, 0x54, 0x6d, 0x05, + 0x11, 0x10, 0xaa, 0x26, 0x6d, 0x54, 0x14, 0x55, 0x55, 0xf8, 0x6b, 0xd4, + 0x86, 0x08, 0x28, 0xc4, 0x80, 0x63, 0xb0, 0x0d, 0x01, 0x6c, 0x83, 0x8d, + 0xf1, 0x7a, 0x67, 0xee, 0xed, 0xc3, 0x9d, 0xdd, 0x9d, 0x61, 0x4d, 0xed, + 0xa8, 0x2a, 0x57, 0xba, 0xda, 0x59, 0xed, 0x99, 0x73, 0xbe, 0x7b, 0xce, + 0x3d, 0x3f, 0x2b, 0xce, 0x39, 0xee, 0xde, 0x1c, 0x3e, 0x18, 0x2a, 0xdd, + 0xd6, 0xd2, 0xc1, 0x4d, 0x58, 0xaa, 0x9c, 0x2d, 0x59, 0x7e, 0xb8, 0xff, + 0xd5, 0xd2, 0x7b, 0x01, 0x40, 0xa8, 0x74, 0x77, 0x14, 0xda, 0x3a, 0xbe, + 0xd4, 0x3a, 0x1f, 0x00, 0x41, 0xbc, 0xa4, 0xc8, 0xf4, 0xda, 0x9c, 0xab, + 0x3e, 0xe2, 0x66, 0x04, 0x30, 0x78, 0xbe, 0xbf, 0xe3, 0xec, 0xa9, 0x73, + 0xdd, 0x40, 0x3e, 0x00, 0xb0, 0x96, 0x8e, 0xf6, 0xd6, 0x3c, 0x7d, 0x23, + 0x47, 0xb1, 0x36, 0x46, 0x52, 0x86, 0xcb, 0x30, 0xb5, 0x50, 0x02, 0xb8, + 0x8a, 0xac, 0x73, 0x1e, 0x40, 0x32, 0x6c, 0x96, 0x52, 0x5c, 0xcc, 0x80, + 0x19, 0x0d, 0x58, 0xf8, 0xc5, 0x15, 0xf4, 0xf5, 0x9c, 0xeb, 0x00, 0x08, + 0xca, 0x3f, 0x04, 0x1a, 0xa0, 0x28, 0x6a, 0x4c, 0xc6, 0xe0, 0xef, 0x7f, + 0x70, 0xf1, 0x7f, 0x72, 0xf7, 0xfa, 0x6d, 0x8d, 0xde, 0x37, 0xce, 0xe1, + 0x9c, 0x25, 0xb6, 0x11, 0xa4, 0x80, 0x2a, 0x00, 0xa2, 0x06, 0xa3, 0x61, + 0x72, 0xa2, 0xe4, 0xd4, 0x33, 0x09, 0xc1, 0x34, 0x2b, 0xd0, 0x10, 0x87, + 0x37, 0xee, 0x9c, 0xc3, 0x61, 0x33, 0xa1, 0xad, 0x00, 0x18, 0x09, 0x08, + 0x4c, 0x88, 0x20, 0x9f, 0xcb, 0x70, 0x64, 0x4b, 0xec, 0xf9, 0xf8, 0x75, + 0xfe, 0xd9, 0xff, 0x17, 0xba, 0x16, 0xac, 0x65, 0xed, 0xf2, 0xa7, 0x11, + 0xd1, 0x8c, 0xcb, 0xcb, 0x86, 0x9d, 0x78, 0x10, 0x41, 0x6b, 0x01, 0x54, + 0x03, 0x02, 0x0d, 0x13, 0xe7, 0xcf, 0x1c, 0xe2, 0x1f, 0x7d, 0x7f, 0x62, + 0xcf, 0x91, 0xd7, 0x71, 0xce, 0xd1, 0x37, 0x7c, 0x8c, 0x05, 0xcd, 0xcb, + 0xe8, 0x9c, 0xff, 0xad, 0xea, 0x8d, 0x97, 0x00, 0xc4, 0x61, 0x9d, 0xf5, + 0x5e, 0x10, 0x45, 0x53, 0x80, 0x5a, 0x15, 0x34, 0x04, 0x9a, 0x23, 0xd4, + 0x1c, 0x81, 0xc9, 0x61, 0x34, 0x24, 0xd0, 0xdc, 0xb4, 0x00, 0xe7, 0x46, + 0x4f, 0x27, 0xb2, 0x7e, 0x0f, 0x5e, 0x39, 0x95, 0xf9, 0xdd, 0xa8, 0xc1, + 0x48, 0x80, 0x51, 0xbf, 0x55, 0x4c, 0xda, 0x6c, 0x1a, 0x40, 0x31, 0x1a, + 0xa6, 0x94, 0x79, 0x88, 0xe9, 0xd6, 0xfd, 0x85, 0x47, 0x69, 0x9e, 0xd5, + 0x8a, 0xd1, 0x90, 0x96, 0xd9, 0xed, 0xdc, 0xb7, 0x68, 0x7d, 0x16, 0x40, + 0x02, 0x54, 0xfd, 0xa9, 0x55, 0x0c, 0x2a, 0x26, 0x93, 0xdd, 0xa9, 0x3b, + 0x60, 0x08, 0x35, 0x07, 0x22, 0xd5, 0xd4, 0x9b, 0x41, 0x18, 0xe6, 0x35, + 0xcc, 0x67, 0xcb, 0xba, 0xbd, 0xf4, 0x0e, 0x1d, 0xe6, 0xb6, 0x96, 0x95, + 0x18, 0x35, 0xd9, 0xa2, 0x23, 0x26, 0x49, 0x4e, 0xc1, 0x61, 0xcb, 0x01, + 0x9e, 0xfa, 0x0e, 0xa4, 0xb3, 0x40, 0x24, 0x2b, 0x08, 0xf0, 0xee, 0xb1, + 0x37, 0xf8, 0xfb, 0xc9, 0x1d, 0x49, 0x5e, 0xfb, 0xd4, 0xb2, 0x44, 0xe0, + 0x84, 0xfa, 0xb0, 0x81, 0x27, 0x56, 0xfd, 0x82, 0x85, 0x2d, 0xcb, 0xaf, + 0xab, 0x7a, 0x06, 0x6b, 0x41, 0x05, 0x2c, 0x00, 0x36, 0xe3, 0x01, 0x4d, + 0x7b, 0xa0, 0x1c, 0x82, 0xd0, 0xe4, 0x6a, 0x42, 0x70, 0xea, 0xd2, 0xbf, + 0x78, 0xff, 0x93, 0xdf, 0xb2, 0xbc, 0xfd, 0xeb, 0x3c, 0x70, 0xc7, 0xf7, + 0x59, 0xb5, 0x70, 0x1d, 0xc5, 0x78, 0x9c, 0xc9, 0xa8, 0x48, 0x31, 0x1a, + 0x67, 0xe4, 0xda, 0x79, 0xba, 0xf7, 0x3f, 0xcf, 0x58, 0x71, 0x38, 0x03, + 0x20, 0x08, 0x2a, 0x8a, 0xe0, 0xc3, 0x20, 0x22, 0xe0, 0xa4, 0x16, 0x40, + 0xc4, 0x60, 0x92, 0x4c, 0x48, 0x5f, 0x2a, 0x80, 0xc9, 0x78, 0x82, 0x9d, + 0x1f, 0xbd, 0x46, 0xbe, 0x79, 0x19, 0xdf, 0x59, 0xf9, 0x22, 0xdf, 0x5c, + 0xf2, 0x38, 0x91, 0x8b, 0x7c, 0x7c, 0xc5, 0x20, 0x89, 0x81, 0xf1, 0xd2, + 0x28, 0xbf, 0x3e, 0xf0, 0x02, 0xd6, 0xc5, 0x55, 0x00, 0x51, 0x1f, 0xd6, + 0x54, 0x05, 0x75, 0x53, 0x16, 0x22, 0x04, 0xa3, 0x41, 0x95, 0x58, 0xb4, + 0x12, 0x82, 0xfd, 0xbd, 0x6f, 0x73, 0x75, 0xf2, 0x32, 0xdf, 0xed, 0xfa, + 0x39, 0xaa, 0x86, 0x0b, 0x63, 0x7d, 0x7c, 0x78, 0xe6, 0x1d, 0x54, 0x35, + 0xa9, 0xc1, 0x4a, 0x7e, 0xce, 0x72, 0xd6, 0xac, 0x78, 0x9a, 0x5f, 0xfd, + 0xed, 0x29, 0xde, 0x3c, 0xf4, 0x13, 0x0a, 0x73, 0x3b, 0x2b, 0x15, 0x4f, + 0x90, 0xca, 0x53, 0x4d, 0xa1, 0xaa, 0x92, 0x4a, 0xc5, 0x78, 0xf9, 0x54, + 0x3e, 0x65, 0x60, 0xd1, 0xdc, 0xaf, 0x30, 0xbf, 0xe9, 0xa7, 0xb4, 0xde, + 0x72, 0x1b, 0x00, 0xef, 0x9d, 0xe8, 0x46, 0xc4, 0xa2, 0x26, 0xb1, 0x61, + 0x85, 0x75, 0x5f, 0x7d, 0x86, 0x42, 0x4b, 0x27, 0x1b, 0x56, 0x6e, 0x66, + 0xfb, 0x47, 0xaf, 0xf0, 0x41, 0xef, 0x5b, 0x44, 0x71, 0x89, 0xc8, 0x4e, + 0x12, 0xd9, 0x88, 0xd8, 0x46, 0x58, 0x1b, 0x61, 0x5d, 0xcc, 0xd5, 0xdc, + 0x9c, 0x5a, 0x80, 0x32, 0xad, 0x23, 0x29, 0x97, 0x0e, 0x6c, 0x02, 0x9c, + 0x6f, 0xfa, 0x72, 0x45, 0x6a, 0x68, 0x7c, 0x80, 0x43, 0xfd, 0x7b, 0x28, + 0xc5, 0x45, 0x22, 0x5b, 0x24, 0x8a, 0x27, 0x59, 0xd1, 0xb6, 0x9a, 0x42, + 0x4b, 0x67, 0x92, 0x96, 0x1b, 0xb9, 0xbf, 0xb0, 0xb1, 0x22, 0xff, 0xc8, + 0xb6, 0x7a, 0x9c, 0x75, 0x35, 0xd5, 0xb3, 0x06, 0x60, 0x74, 0x62, 0x88, + 0xa1, 0xf1, 0x01, 0x22, 0x5b, 0xc2, 0xba, 0x12, 0xb1, 0x8b, 0x88, 0x29, + 0xd5, 0xb8, 0xec, 0xb3, 0xab, 0xbd, 0x0c, 0x8c, 0x1e, 0x23, 0x17, 0xcc, + 0x22, 0xb2, 0x93, 0x58, 0x17, 0x73, 0xef, 0xa2, 0x0d, 0x37, 0xee, 0xfd, + 0x06, 0x9c, 0x88, 0x2f, 0xc7, 0xb6, 0xda, 0x25, 0x6b, 0x2e, 0xe1, 0xc0, + 0x95, 0x1e, 0x06, 0xae, 0xf4, 0x70, 0x71, 0xbc, 0x8f, 0xe1, 0xe2, 0x20, + 0xa3, 0xd1, 0x45, 0xae, 0xc5, 0x97, 0x6b, 0x14, 0x4e, 0x44, 0xa3, 0x68, + 0x20, 0x7c, 0xe1, 0xd6, 0x3c, 0xdf, 0xb8, 0xfd, 0x31, 0x34, 0x50, 0xfe, + 0x7a, 0x7a, 0xdb, 0x7f, 0x01, 0x10, 0x34, 0x10, 0xff, 0x69, 0x04, 0x24, + 0x3b, 0x37, 0x68, 0x3a, 0x04, 0xaa, 0xe2, 0xb7, 0x49, 0xbd, 0x70, 0xdd, + 0xba, 0x96, 0x00, 0x34, 0xd6, 0x35, 0xb1, 0x7e, 0xd9, 0x0b, 0x84, 0x61, + 0xc0, 0x91, 0x0b, 0x7b, 0xf9, 0x64, 0xe8, 0xc0, 0x8d, 0x01, 0xca, 0x3b, + 0xd1, 0xcf, 0x94, 0x00, 0xea, 0x85, 0xc5, 0x90, 0x01, 0xa9, 0x01, 0x88, + 0xaf, 0x60, 0x02, 0xa1, 0xb1, 0x7e, 0x0e, 0xad, 0x0d, 0x05, 0xee, 0x5b, + 0xb0, 0x11, 0x0d, 0x84, 0x9d, 0xc7, 0xb7, 0xdc, 0x18, 0x20, 0xd1, 0x27, + 0xc6, 0x7f, 0x4f, 0x1f, 0x3b, 0x35, 0x0f, 0xf8, 0x5d, 0x7e, 0xa1, 0x30, + 0xf7, 0x4e, 0x56, 0x17, 0xbe, 0xc7, 0xfe, 0xb3, 0x6f, 0x81, 0x24, 0x09, + 0x24, 0xd0, 0x33, 0xbc, 0x0f, 0x35, 0x42, 0x43, 0x9d, 0xbf, 0xc9, 0x0f, + 0xdf, 0xf1, 0x63, 0x0e, 0x9e, 0xdf, 0xc1, 0xd1, 0xa1, 0xbd, 0xf4, 0x0c, + 0x1f, 0x64, 0x71, 0xf3, 0x5d, 0x35, 0x00, 0x4e, 0x1c, 0x4e, 0xbc, 0x12, + 0x8b, 0x43, 0xa6, 0x02, 0x40, 0xaa, 0x21, 0x78, 0x68, 0xe9, 0x93, 0x8c, + 0x14, 0x07, 0xf9, 0xcd, 0xe1, 0xe7, 0x50, 0x05, 0x51, 0xf1, 0x80, 0xe2, + 0x3f, 0x4d, 0xa0, 0xdc, 0x52, 0xdf, 0x02, 0x40, 0x5b, 0xc3, 0x62, 0xee, + 0xe9, 0x78, 0x94, 0x7d, 0x03, 0x7f, 0x60, 0x77, 0xcf, 0xcb, 0x3c, 0xd7, + 0xb5, 0x6b, 0x0a, 0x00, 0x6f, 0x58, 0xfd, 0x05, 0x00, 0x99, 0xaa, 0x10, + 0x89, 0x43, 0x54, 0x98, 0x95, 0x6b, 0xe4, 0xae, 0xfc, 0xc3, 0x6c, 0x3f, + 0xfa, 0x33, 0x96, 0xce, 0xed, 0x02, 0x23, 0x68, 0x62, 0xd8, 0x57, 0x34, + 0xa8, 0x0f, 0x1a, 0x58, 0x9d, 0x7f, 0xa2, 0xa2, 0x64, 0xed, 0xed, 0x9b, + 0x39, 0xf8, 0xd9, 0x0e, 0x8e, 0x8d, 0xbc, 0x4f, 0xcf, 0xc8, 0x01, 0x16, + 0x37, 0xad, 0x4a, 0xf5, 0x02, 0x28, 0x8f, 0x20, 0x16, 0x87, 0x38, 0x41, + 0xa6, 0x02, 0x40, 0xbc, 0x6b, 0x1a, 0xea, 0x9a, 0x38, 0x7e, 0xe9, 0x03, + 0x3a, 0xdb, 0x1e, 0x44, 0x04, 0x1e, 0x59, 0xfa, 0xe2, 0xb4, 0x1d, 0xb1, + 0x6d, 0xf6, 0x12, 0x56, 0xb5, 0x6f, 0xe0, 0xc0, 0xe0, 0x76, 0xde, 0x3e, + 0xbd, 0x95, 0x4d, 0x77, 0xee, 0xac, 0xaa, 0x35, 0x82, 0x96, 0xfb, 0xa0, + 0x03, 0x71, 0x2e, 0xe3, 0x01, 0x4d, 0x75, 0x0d, 0x44, 0x60, 0x78, 0xa2, + 0x9f, 0x9d, 0xff, 0x7e, 0x99, 0x5d, 0x27, 0xb6, 0xb0, 0xbb, 0x67, 0xeb, + 0x8c, 0x47, 0xb3, 0x35, 0x0b, 0x9f, 0xc7, 0x04, 0x86, 0xe3, 0x97, 0xbd, + 0x17, 0xaa, 0x1e, 0x10, 0x1f, 0xc2, 0x44, 0x7f, 0x6a, 0xe4, 0xbc, 0x1e, + 0xc0, 0x25, 0xb1, 0xbe, 0x4e, 0x78, 0x86, 0xab, 0x6d, 0xf6, 0x12, 0xba, + 0x5a, 0xbf, 0x8d, 0xaa, 0xf0, 0xc7, 0x4f, 0xb7, 0xa6, 0x9a, 0x51, 0x6a, + 0x27, 0xfa, 0xa7, 0xbc, 0x03, 0xb8, 0xd4, 0x4c, 0x5f, 0x79, 0xe3, 0xf3, + 0x4d, 0xc0, 0x1b, 0x16, 0xbd, 0xc4, 0xd7, 0xe6, 0x65, 0x27, 0x22, 0x3f, + 0x8b, 0x94, 0x75, 0x25, 0x36, 0x52, 0x7f, 0x66, 0x54, 0xc4, 0x77, 0x1c, + 0x27, 0x16, 0x51, 0xcd, 0x10, 0xaf, 0x29, 0x6c, 0x9a, 0xb1, 0x71, 0x87, + 0xe3, 0xcf, 0xfd, 0xaf, 0xd1, 0x7d, 0xe2, 0x47, 0x9c, 0x19, 0x3b, 0x0c, + 0xc0, 0x3b, 0xbd, 0xbf, 0xf4, 0x99, 0x93, 0xf1, 0x82, 0xe2, 0xc4, 0x96, + 0x1b, 0xa0, 0x09, 0x80, 0x3a, 0xe0, 0xe2, 0xf0, 0x85, 0xb1, 0x79, 0x2d, + 0xad, 0x4d, 0x95, 0xaa, 0x75, 0x6b, 0xfd, 0x3c, 0x44, 0x84, 0x5d, 0x27, + 0x5f, 0x02, 0x95, 0x8a, 0x22, 0x2d, 0x87, 0x28, 0x49, 0x4d, 0x00, 0x67, + 0xe1, 0xd2, 0xc4, 0xa7, 0x1c, 0x19, 0xda, 0x4b, 0x73, 0x5d, 0x9e, 0xc8, + 0x95, 0x78, 0xf3, 0xf8, 0xb3, 0x7c, 0x78, 0x6e, 0x37, 0x8d, 0x61, 0x0b, + 0xd6, 0x38, 0x6c, 0x5c, 0xdd, 0x43, 0xe7, 0xc7, 0x70, 0x70, 0x09, 0xc8, + 0x09, 0xd0, 0xd4, 0xde, 0xa5, 0xaf, 0xe4, 0xef, 0xd1, 0xc7, 0x4c, 0x48, + 0x03, 0x37, 0x61, 0xc5, 0x25, 0xae, 0x9e, 0xd9, 0x67, 0x7f, 0x37, 0x70, + 0xc8, 0x6e, 0x92, 0xc4, 0x03, 0x05, 0xa0, 0x23, 0xdb, 0x9e, 0xff, 0xaf, + 0x2b, 0x02, 0xfa, 0x81, 0x93, 0x92, 0x64, 0x42, 0x98, 0x6c, 0xb9, 0x49, + 0x00, 0x0e, 0x28, 0x01, 0xa5, 0xff, 0x00, 0x58, 0x97, 0x10, 0x38, 0x29, + 0xb1, 0x19, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, + 0x42, 0x60, 0x82 +}; +unsigned int system_log_out_png_len = 1707; +unsigned char view_fullscreen_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x03, 0x00, 0x00, 0x00, 0x44, 0xa4, 0x8a, 0xc6, 0x00, 0x00, 0x00, + 0x03, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0xdb, 0xe1, 0x4f, 0xe0, + 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, 0xd7, + 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, 0x00, + 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, + 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, 0x61, + 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, 0x00, + 0x00, 0x13, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x00, + 0x4f, 0x70, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, 0x76, + 0x65, 0x3e, 0x67, 0xba, 0x0c, 0x00, 0x00, 0x01, 0x32, 0x50, 0x4c, 0x54, + 0x45, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x1f, 0x4b, 0x88, 0x20, 0x4b, 0x88, 0x1f, 0x4b, 0x88, 0x83, 0x86, + 0x80, 0x21, 0x49, 0x86, 0x20, 0x4a, 0x87, 0x20, 0x4a, 0x87, 0x21, 0x4b, + 0x88, 0x20, 0x4a, 0x87, 0x1f, 0x4a, 0x86, 0x21, 0x4b, 0x88, 0x23, 0x4c, + 0x88, 0x20, 0x4a, 0x87, 0x21, 0x4b, 0x88, 0x8e, 0x90, 0x8b, 0x8d, 0x8f, + 0x8b, 0x28, 0x52, 0x8d, 0x2b, 0x54, 0x8e, 0x2d, 0x56, 0x90, 0x2e, 0x57, + 0x90, 0x30, 0x58, 0x91, 0x30, 0x59, 0x92, 0x37, 0x5e, 0x95, 0x27, 0x52, + 0x8e, 0x2f, 0x57, 0x92, 0x5f, 0x8b, 0xbe, 0x60, 0x8b, 0xbe, 0x60, 0x8d, + 0xbf, 0x61, 0x8d, 0xbf, 0x62, 0x8d, 0xbf, 0x63, 0x8c, 0xbd, 0x64, 0x8d, + 0xbd, 0x65, 0x92, 0xc4, 0x66, 0x92, 0xc4, 0x66, 0x93, 0xc4, 0x67, 0x8f, + 0xbe, 0x6e, 0x98, 0xc7, 0x6f, 0x97, 0xc5, 0x71, 0x9a, 0xc6, 0x74, 0xa1, + 0xd0, 0x7b, 0x9d, 0xc7, 0x80, 0xa5, 0xce, 0x87, 0xad, 0xd6, 0x88, 0x8a, + 0x85, 0x8d, 0xab, 0xcf, 0x8d, 0xb1, 0xd8, 0x94, 0xb2, 0xd4, 0x95, 0xb1, + 0xd2, 0x95, 0xb3, 0xd4, 0x95, 0xb6, 0xdb, 0x95, 0xb7, 0xdb, 0x96, 0xb3, + 0xd5, 0x97, 0xb8, 0xdc, 0x98, 0xb4, 0xd4, 0x99, 0xba, 0xdc, 0x9b, 0xb8, + 0xd7, 0x9b, 0xb9, 0xd9, 0x9c, 0xb9, 0xda, 0x9c, 0xbc, 0xdd, 0x9d, 0xb8, + 0xd7, 0x9e, 0xb9, 0xd8, 0x9e, 0xbd, 0xde, 0x9f, 0xba, 0xd9, 0x9f, 0xbe, + 0xde, 0xa0, 0xbb, 0xda, 0xa1, 0xbd, 0xdb, 0xa3, 0xbd, 0xdc, 0xa4, 0xbf, + 0xdc, 0xa6, 0xbf, 0xdc, 0xbc, 0xc0, 0xb8, 0xc3, 0xc7, 0xbf, 0xc7, 0xcb, + 0xc3, 0xc8, 0xcc, 0xc4, 0xd3, 0xd7, 0xcf, 0xd4, 0xd7, 0xd2, 0xd7, 0xd9, + 0xd4, 0xd8, 0xd9, 0xd7, 0xd8, 0xdc, 0xd6, 0xda, 0xde, 0xd7, 0xde, 0xe1, + 0xdc, 0xe4, 0xe5, 0xe2, 0xe5, 0xe8, 0xe2, 0xe6, 0xe8, 0xe5, 0xeb, 0xec, + 0xe9, 0xed, 0xee, 0xeb, 0xee, 0xf0, 0xec, 0xf0, 0xf1, 0xee, 0xf2, 0xf3, + 0xf1, 0xf3, 0xf4, 0xf2, 0xf4, 0xf5, 0xf2, 0xf5, 0xf5, 0xf3, 0xf6, 0xf6, + 0xf5, 0xfb, 0xfc, 0xfb, 0xff, 0xff, 0xff, 0x5f, 0x88, 0xd4, 0x90, 0x00, + 0x00, 0x00, 0x21, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x01, 0x02, 0x04, 0x09, + 0x0b, 0x1f, 0x28, 0x3a, 0x47, 0x4b, 0x4c, 0x54, 0x59, 0xc1, 0xc1, 0xc2, + 0xcb, 0xcb, 0xcc, 0xd9, 0xd9, 0xe3, 0xe4, 0xfb, 0xfb, 0xfb, 0xfb, 0xfb, + 0xfb, 0xfb, 0xfc, 0xfc, 0x3d, 0xd3, 0x0b, 0xcf, 0x00, 0x00, 0x01, 0x4c, + 0x49, 0x44, 0x41, 0x54, 0x38, 0xcb, 0xb5, 0xd3, 0xd9, 0x52, 0xc2, 0x30, + 0x14, 0x80, 0xe1, 0x00, 0x05, 0x9b, 0x50, 0x6a, 0xaa, 0x15, 0x22, 0x8b, + 0x45, 0x71, 0xa9, 0xe2, 0x5e, 0x37, 0x10, 0x51, 0x70, 0x03, 0x51, 0x14, + 0x17, 0xdc, 0x01, 0x41, 0xdf, 0xff, 0x15, 0x3c, 0x65, 0xa6, 0xd2, 0x76, + 0x9a, 0xde, 0xf9, 0xdf, 0x9e, 0xef, 0x22, 0x93, 0x9c, 0x20, 0xe4, 0x2c, + 0x16, 0x43, 0xbe, 0x49, 0xd9, 0xac, 0xe4, 0x3b, 0x4f, 0xd5, 0xeb, 0x29, + 0x1f, 0x81, 0x93, 0xb5, 0x72, 0xb9, 0x96, 0x24, 0x5c, 0x20, 0xef, 0x55, + 0x75, 0xbd, 0x7a, 0xa0, 0x72, 0x81, 0xb2, 0x34, 0xcf, 0xd8, 0xdc, 0x22, + 0xe5, 0x02, 0x91, 0xaa, 0x04, 0xcb, 0x8a, 0x88, 0xfe, 0xa5, 0x40, 0x34, + 0x6e, 0xd8, 0x8a, 0x47, 0x03, 0x2e, 0x10, 0x4a, 0x3c, 0x7e, 0x5b, 0xb5, + 0xdb, 0xed, 0xa7, 0x44, 0xc8, 0x05, 0x04, 0xe3, 0xab, 0x63, 0x75, 0xf7, + 0xf1, 0xfe, 0x60, 0x08, 0xa3, 0x19, 0x99, 0xa2, 0x22, 0x0a, 0x1b, 0x9f, + 0xaf, 0x56, 0x37, 0x6f, 0x2f, 0xf7, 0x46, 0x18, 0x89, 0x13, 0x32, 0x1e, + 0x5e, 0x6f, 0xfa, 0x62, 0x47, 0x01, 0xd0, 0x69, 0x59, 0xdd, 0x36, 0x9b, + 0xcf, 0x00, 0xe8, 0xd1, 0xe1, 0xb4, 0x64, 0xce, 0x1b, 0x85, 0x35, 0x19, + 0x40, 0xb7, 0xf5, 0xf3, 0x57, 0xab, 0x0b, 0x40, 0x5d, 0xbf, 0x3c, 0x01, + 0xa1, 0xd5, 0x0b, 0x2b, 0x0c, 0x03, 0xe8, 0xd9, 0x41, 0x0f, 0x00, 0x61, + 0xcb, 0xe7, 0x15, 0x0d, 0x69, 0xab, 0xdb, 0x57, 0x69, 0x02, 0xa0, 0x6f, + 0x07, 0x7d, 0x00, 0x78, 0xa6, 0xb2, 0xb1, 0xa5, 0x21, 0x89, 0xe9, 0xc5, + 0x63, 0x15, 0xc0, 0xc0, 0x0e, 0x06, 0x00, 0xc6, 0xaf, 0x77, 0x75, 0x66, + 0x1e, 0x82, 0x2d, 0xec, 0x53, 0x2f, 0x30, 0xb9, 0x99, 0x63, 0xc3, 0xdd, + 0x18, 0x3e, 0x8f, 0x07, 0x30, 0x9f, 0x6e, 0x74, 0x19, 0x26, 0xb0, 0x65, + 0x02, 0x67, 0x00, 0x1c, 0x79, 0x00, 0x57, 0x6e, 0x20, 0x44, 0xc6, 0x1c, + 0x45, 0x04, 0x17, 0x08, 0x0a, 0x61, 0x47, 0x42, 0xd0, 0x73, 0xe5, 0x14, + 0x19, 0x13, 0x95, 0xf2, 0x57, 0x8e, 0xe6, 0x4f, 0x33, 0x99, 0xb3, 0xbc, + 0xc2, 0x05, 0x6a, 0xae, 0xd4, 0x68, 0x94, 0x66, 0x65, 0x2e, 0x20, 0x70, + 0xed, 0x45, 0x9d, 0x61, 0xfe, 0x66, 0xc2, 0xc3, 0xe8, 0xcc, 0xff, 0x73, + 0x6a, 0x9a, 0xef, 0xdc, 0xe3, 0xfb, 0xff, 0x02, 0xf8, 0xf6, 0x5e, 0x2b, + 0xe6, 0xa3, 0xa7, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, + 0xae, 0x42, 0x60, 0x82 +}; +unsigned int view_fullscreen_png_len = 856; +unsigned char view_restore_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x03, 0x00, 0x00, 0x00, 0x44, 0xa4, 0x8a, 0xc6, 0x00, 0x00, 0x00, + 0x03, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0xdb, 0xe1, 0x4f, 0xe0, + 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, 0xd7, + 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, 0x00, + 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, + 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, 0x61, + 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, 0x00, + 0x00, 0x13, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x00, + 0x4f, 0x70, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, 0x76, + 0x65, 0x3e, 0x67, 0xba, 0x0c, 0x00, 0x00, 0x01, 0x05, 0x50, 0x4c, 0x54, + 0x45, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x1c, 0x55, 0x8e, 0x00, 0x00, 0x00, 0x24, 0x49, 0x80, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x49, 0x86, 0x00, 0x00, + 0x00, 0x2f, 0x5e, 0x92, 0x1e, 0x4b, 0x87, 0x1f, 0x4b, 0x88, 0x1f, 0x4b, + 0x88, 0x83, 0x86, 0x80, 0x21, 0x49, 0x87, 0x41, 0x6a, 0xa2, 0x5d, 0x84, + 0xb5, 0x21, 0x4a, 0x88, 0x20, 0x4a, 0x88, 0x4e, 0x75, 0xa8, 0x20, 0x4a, + 0x87, 0x23, 0x4d, 0x88, 0x20, 0x4a, 0x87, 0x22, 0x4d, 0x88, 0x24, 0x4e, + 0x89, 0x7d, 0xa1, 0xcb, 0x20, 0x4a, 0x87, 0x4a, 0x71, 0xa4, 0x8e, 0x90, + 0x8b, 0x8d, 0x8f, 0x8b, 0x99, 0xba, 0xda, 0x98, 0xb8, 0xda, 0x20, 0x4a, + 0x87, 0x44, 0x6b, 0xa0, 0x72, 0x9f, 0xcf, 0x79, 0xa4, 0xd1, 0x7b, 0x9e, + 0xc6, 0x82, 0x84, 0x7f, 0x83, 0xa5, 0xca, 0x86, 0xad, 0xd6, 0x87, 0xa8, + 0xcd, 0x88, 0x8a, 0x85, 0x89, 0xaa, 0xce, 0x97, 0xb7, 0xd9, 0x99, 0x9b, + 0x97, 0x9a, 0x9c, 0x98, 0xa2, 0xbf, 0xdf, 0xaa, 0xc5, 0xe2, 0xbc, 0xc0, + 0xb8, 0xc3, 0xc7, 0xbf, 0xc7, 0xcb, 0xc3, 0xc8, 0xcc, 0xc4, 0xca, 0xce, + 0xc6, 0xd3, 0xd7, 0xcf, 0xd4, 0xd7, 0xd2, 0xd7, 0xd9, 0xd4, 0xd8, 0xd9, + 0xd7, 0xd8, 0xdc, 0xd6, 0xda, 0xdb, 0xd9, 0xda, 0xde, 0xd7, 0xde, 0xe1, + 0xdc, 0xe4, 0xe5, 0xe2, 0xe5, 0xe8, 0xe2, 0xe6, 0xe8, 0xe5, 0xeb, 0xeb, + 0xea, 0xeb, 0xec, 0xe9, 0xed, 0xee, 0xeb, 0xee, 0xf0, 0xec, 0xf0, 0xf1, + 0xee, 0xf2, 0xf3, 0xf1, 0xf3, 0xf4, 0xf2, 0xf4, 0xf4, 0xf4, 0xf4, 0xf5, + 0xf2, 0xf5, 0xf5, 0xf3, 0xf6, 0xf6, 0xf5, 0xf6, 0xf6, 0xf6, 0xfb, 0xfb, + 0xfb, 0xfb, 0xfc, 0xfb, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x87, 0x5f, + 0x5e, 0x82, 0x00, 0x00, 0x00, 0x27, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x01, + 0x01, 0x02, 0x02, 0x02, 0x04, 0x09, 0x09, 0x0b, 0x0e, 0x16, 0x1f, 0x28, + 0x2a, 0x31, 0x31, 0x33, 0x3a, 0x4b, 0x4c, 0x6c, 0x76, 0x7c, 0x8d, 0x9e, + 0xb0, 0xbd, 0xbe, 0xc5, 0xca, 0xcb, 0xd4, 0xd7, 0xd8, 0xe3, 0xe4, 0xfa, + 0xfd, 0x37, 0xdc, 0x9b, 0x18, 0x00, 0x00, 0x01, 0x1a, 0x49, 0x44, 0x41, + 0x54, 0x38, 0xcb, 0xad, 0xd0, 0x69, 0x57, 0x82, 0x40, 0x14, 0xc6, 0xf1, + 0x41, 0xa5, 0x89, 0x72, 0x37, 0x4d, 0x2c, 0x2b, 0x6d, 0x19, 0x6c, 0x9d, + 0x2c, 0xc9, 0x8a, 0xb2, 0xb0, 0x5d, 0x29, 0x68, 0xe1, 0xfb, 0x7f, 0x94, + 0xee, 0xc9, 0x83, 0xe7, 0x0e, 0x0c, 0xf3, 0xaa, 0xff, 0xdb, 0xfb, 0x3b, + 0xc3, 0x73, 0x20, 0x44, 0xd5, 0xa2, 0xf2, 0x4a, 0xb4, 0x62, 0x79, 0x49, + 0x75, 0xcf, 0xd4, 0x1a, 0xab, 0x65, 0xc5, 0x1b, 0xb9, 0x7a, 0x6b, 0xab, + 0x51, 0x94, 0x9e, 0x2a, 0x9b, 0x6b, 0x55, 0xa2, 0x37, 0xbb, 0xbb, 0xad, + 0x9a, 0x26, 0x05, 0x9d, 0xd3, 0x83, 0xb6, 0x6e, 0x5a, 0x7b, 0xdd, 0x7a, + 0x46, 0xfe, 0x38, 0xb3, 0xf7, 0x99, 0x69, 0xf5, 0xad, 0x66, 0x8e, 0xa4, + 0x81, 0x1e, 0x83, 0xbb, 0xa9, 0x93, 0x74, 0x90, 0xbc, 0x6b, 0x2b, 0xdb, + 0x3c, 0x0a, 0x40, 0xdf, 0x62, 0xac, 0x53, 0xc1, 0x60, 0x61, 0x67, 0xf4, + 0x1d, 0x05, 0x60, 0x60, 0xdb, 0xf6, 0xc9, 0x06, 0x06, 0x94, 0x7f, 0x4c, + 0xa2, 0xd8, 0xa0, 0x07, 0x1d, 0x1f, 0xad, 0x63, 0x60, 0xf0, 0xb7, 0xc7, + 0x28, 0x36, 0xab, 0x5d, 0x15, 0xc1, 0xc4, 0x89, 0xba, 0x1c, 0x0e, 0xc7, + 0xdc, 0x90, 0xce, 0x83, 0xce, 0xef, 0x7f, 0xc2, 0xd0, 0x99, 0x22, 0x80, + 0xe7, 0xb9, 0xae, 0x7b, 0x77, 0xf6, 0x05, 0xc0, 0x43, 0x00, 0xcf, 0xbb, + 0x7a, 0x7d, 0xb9, 0xe5, 0x9f, 0x00, 0x7c, 0x04, 0xf0, 0xbc, 0x8b, 0xa7, + 0x87, 0x1b, 0xfe, 0x0e, 0x20, 0x10, 0x40, 0x6c, 0x5e, 0x12, 0x4c, 0x9d, + 0x70, 0x1e, 0xcc, 0x4b, 0x02, 0x0f, 0x03, 0x8f, 0x5f, 0xc3, 0x53, 0x22, + 0xf0, 0x31, 0xf0, 0xf9, 0x73, 0x00, 0x09, 0x20, 0xc0, 0x20, 0xe0, 0x87, + 0x7f, 0xff, 0x43, 0x01, 0x4a, 0x05, 0x28, 0x4f, 0xd3, 0xc1, 0xb2, 0x01, + 0xd1, 0xac, 0x00, 0x50, 0xf8, 0xeb, 0x73, 0x20, 0x24, 0x01, 0xb1, 0xe2, + 0x80, 0xe6, 0x0b, 0x42, 0x68, 0xde, 0xac, 0x2c, 0x35, 0x84, 0xd0, 0xbc, + 0xff, 0xe9, 0x17, 0x84, 0x12, 0x69, 0x8d, 0xe3, 0xb2, 0x09, 0xe5, 0x00, + 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int view_restore_png_len = 767; +unsigned char zoom_in_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x0a, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x5a, 0x6f, 0x6f, 0x6d, 0xbc, 0x01, 0x55, 0x2b, 0x00, 0x00, 0x00, + 0x26, 0x74, 0x45, 0x58, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x00, + 0x4a, 0x61, 0x6b, 0x75, 0x62, 0x20, 0x53, 0x74, 0x65, 0x69, 0x6e, 0x65, + 0x72, 0x2c, 0x20, 0x4c, 0x61, 0x70, 0x6f, 0x20, 0x43, 0x61, 0x6c, 0x61, + 0x6d, 0x61, 0x6e, 0x64, 0x72, 0x65, 0x69, 0x14, 0x54, 0xf1, 0xa7, 0x00, + 0x00, 0x04, 0x08, 0x49, 0x44, 0x41, 0x54, 0x58, 0x85, 0xed, 0x97, 0x5d, + 0x68, 0x1d, 0x45, 0x14, 0xc7, 0xff, 0xf3, 0xb1, 0x9b, 0x64, 0x27, 0xb9, + 0xa8, 0xb5, 0xa5, 0x2d, 0x4a, 0xee, 0x83, 0x4f, 0xd6, 0x52, 0x41, 0x10, + 0xb5, 0x9a, 0xb4, 0x10, 0x49, 0x11, 0x44, 0x29, 0x41, 0x7d, 0xb0, 0x36, + 0x3e, 0x14, 0x1f, 0xfa, 0xe6, 0x8b, 0x4b, 0xb4, 0x62, 0x4b, 0xd4, 0x88, + 0x88, 0x0f, 0xa2, 0x20, 0x62, 0x5b, 0x63, 0x5a, 0xb5, 0x86, 0x48, 0x51, + 0x44, 0x90, 0x52, 0x04, 0xab, 0xe0, 0x43, 0xc1, 0x22, 0x7d, 0xb1, 0x94, + 0x9b, 0x9a, 0x60, 0x5b, 0xad, 0x1f, 0x69, 0x9a, 0xde, 0xd9, 0x3b, 0x33, + 0xc7, 0x87, 0xbb, 0xbb, 0xbd, 0x7b, 0xef, 0xae, 0xde, 0x1b, 0xc1, 0xbc, + 0x78, 0x60, 0xd9, 0xdd, 0xb3, 0x73, 0xce, 0xfc, 0xe6, 0x9c, 0x99, 0x33, + 0xb3, 0x2c, 0x0c, 0x43, 0xac, 0xa4, 0xf0, 0x15, 0xed, 0xfd, 0x7f, 0x00, + 0x00, 0xb2, 0xe8, 0xc3, 0x96, 0xe1, 0x2d, 0xb7, 0x78, 0x8c, 0xbd, 0x0c, + 0xc6, 0xee, 0x74, 0xd6, 0xae, 0x03, 0xc0, 0x3a, 0xf0, 0x4b, 0x82, 0xf3, + 0x79, 0x47, 0x38, 0x41, 0x26, 0x1a, 0x3b, 0x76, 0xec, 0xc4, 0xb9, 0x8e, + 0x00, 0x86, 0x86, 0xb7, 0xee, 0xf4, 0x3c, 0xef, 0xcd, 0x8d, 0x1b, 0x36, + 0x05, 0x7d, 0xbd, 0x7d, 0x4c, 0x88, 0x42, 0xce, 0x42, 0x31, 0xc6, 0x94, + 0xff, 0x5c, 0xf8, 0xa3, 0xff, 0x87, 0xd3, 0xa7, 0x1e, 0xbe, 0x7f, 0xdb, + 0xe0, 0x8e, 0x2f, 0xbf, 0xf8, 0xea, 0x93, 0xbc, 0x76, 0x2d, 0x29, 0x18, + 0x1a, 0x1a, 0xb8, 0xb5, 0xab, 0xcb, 0x7b, 0xeb, 0xbe, 0x7b, 0x06, 0xd5, + 0xf5, 0xd7, 0xdd, 0xb0, 0xac, 0xce, 0x01, 0x40, 0x4a, 0x89, 0x1b, 0x57, + 0xad, 0x66, 0x03, 0x9b, 0xb7, 0x2a, 0x21, 0xbc, 0xf7, 0x07, 0x86, 0x07, + 0x6e, 0x6a, 0x0b, 0x40, 0x48, 0x39, 0xb1, 0xe9, 0xb6, 0x3b, 0x7a, 0x88, + 0x00, 0x63, 0x0c, 0xac, 0xb5, 0xcb, 0xbe, 0x8c, 0x31, 0x00, 0x80, 0x8d, + 0x1b, 0x6e, 0xef, 0xe9, 0x66, 0x62, 0x6f, 0x2e, 0x68, 0xb3, 0xc2, 0x81, + 0xee, 0x0a, 0x94, 0x62, 0xd6, 0x5a, 0x10, 0xd1, 0xb2, 0x46, 0xdf, 0x28, + 0x44, 0x84, 0xbe, 0xde, 0x12, 0x67, 0x9c, 0x6f, 0x6e, 0x0b, 0xc0, 0x5a, + 0xbb, 0x9a, 0x33, 0x8e, 0xc8, 0x44, 0xb9, 0x0e, 0x19, 0x63, 0x78, 0x62, + 0xf4, 0xf1, 0x16, 0xfd, 0xe4, 0xc1, 0xa9, 0x5c, 0x60, 0xc6, 0x18, 0x7c, + 0xdf, 0x87, 0x35, 0xf6, 0xe6, 0xb6, 0x00, 0x12, 0x6a, 0x6b, 0x6d, 0x21, + 0x00, 0x00, 0x1c, 0xf9, 0x70, 0x3a, 0xd5, 0x3d, 0xf2, 0xd8, 0x08, 0x8a, + 0x22, 0xc6, 0x18, 0x03, 0x11, 0x81, 0x0a, 0x96, 0x7c, 0xe1, 0x0c, 0x73, + 0xce, 0xe5, 0xea, 0x39, 0xe7, 0x90, 0x32, 0x6b, 0x26, 0xa5, 0x04, 0x11, + 0xe5, 0xda, 0xd4, 0x81, 0x8b, 0x53, 0xd9, 0x02, 0x50, 0xab, 0xd5, 0x62, + 0x67, 0x36, 0x75, 0xde, 0x18, 0x0d, 0x6b, 0x1d, 0x94, 0x52, 0x19, 0x1b, + 0xa5, 0x14, 0xac, 0x35, 0x19, 0x9d, 0x10, 0x02, 0xc6, 0x98, 0x34, 0x02, + 0xa6, 0x56, 0x6b, 0x0f, 0x40, 0xeb, 0x28, 0x03, 0x40, 0x24, 0xf0, 0xfc, + 0x0b, 0x7b, 0x32, 0xa3, 0x2e, 0x95, 0x4a, 0x19, 0x9b, 0x52, 0xa9, 0x84, + 0x7d, 0xe3, 0xd7, 0x26, 0xb9, 0x31, 0x06, 0xe3, 0xfb, 0x5e, 0x84, 0x73, + 0x36, 0x05, 0xd0, 0x91, 0x6e, 0x0f, 0x20, 0xd2, 0xba, 0x4e, 0x1c, 0x2f, + 0x21, 0x29, 0x25, 0x94, 0x0a, 0xf0, 0xd2, 0xf8, 0x2b, 0xb9, 0x0e, 0x00, + 0xe0, 0xb5, 0x57, 0x5f, 0xcf, 0xbc, 0x8f, 0x3d, 0xf7, 0x0c, 0x88, 0x5c, + 0x1a, 0x01, 0xe7, 0x1c, 0x74, 0xb5, 0x4d, 0x00, 0x1d, 0x45, 0x70, 0xe4, + 0x60, 0x6c, 0x12, 0x01, 0x20, 0x08, 0x82, 0xc2, 0xce, 0xf3, 0x24, 0x08, + 0x02, 0x10, 0x01, 0xc6, 0xda, 0x18, 0x80, 0xa0, 0xa3, 0xb6, 0x53, 0xa0, + 0x41, 0xce, 0xa5, 0x11, 0x20, 0x22, 0x04, 0x2a, 0x80, 0x69, 0xca, 0xb1, + 0x6c, 0xa8, 0x90, 0xcd, 0xdf, 0x02, 0x15, 0xa4, 0x51, 0xac, 0x03, 0x58, + 0x44, 0x9d, 0xa4, 0xc0, 0x35, 0x00, 0x00, 0x40, 0xa9, 0xaf, 0x0f, 0x07, + 0x0e, 0xbe, 0x93, 0xbe, 0x3b, 0xe7, 0xf0, 0xd4, 0xae, 0xdd, 0xe9, 0xfb, + 0xbb, 0xfb, 0xdf, 0x06, 0xe7, 0x3c, 0xd3, 0x1e, 0x40, 0x0c, 0xc0, 0xe1, + 0x9c, 0x43, 0xa4, 0x3b, 0x48, 0x81, 0x6d, 0x02, 0x18, 0xd9, 0xfe, 0x68, + 0xa6, 0xcd, 0xa7, 0x9f, 0x1f, 0x6d, 0x1a, 0xb1, 0xc2, 0x83, 0x0f, 0x3c, + 0xd4, 0xe2, 0xdc, 0x18, 0x03, 0xce, 0x39, 0xac, 0x73, 0xa8, 0xb6, 0x1b, + 0x01, 0xad, 0x35, 0x18, 0x00, 0x21, 0xea, 0x23, 0xba, 0xf4, 0xdb, 0xaf, + 0x99, 0xef, 0x6b, 0xd6, 0xac, 0x6d, 0x99, 0x13, 0x41, 0x10, 0x40, 0x48, + 0x89, 0x8b, 0x17, 0xcf, 0x67, 0xf4, 0x42, 0xf0, 0xb4, 0x70, 0x45, 0x3a, + 0xbf, 0xb2, 0xe6, 0xa4, 0x20, 0x8a, 0x8d, 0x45, 0xae, 0x81, 0x10, 0x02, + 0x4a, 0x05, 0xa8, 0x99, 0x6b, 0x93, 0x4a, 0xa9, 0x00, 0x42, 0x88, 0x5c, + 0x9b, 0x8e, 0x01, 0xb4, 0xd6, 0x00, 0x63, 0x28, 0xda, 0x86, 0x19, 0x63, + 0xf0, 0x3c, 0x0f, 0x5f, 0x7f, 0x73, 0x3c, 0xd5, 0x79, 0x9e, 0x07, 0x56, + 0x60, 0x93, 0x54, 0xc2, 0x28, 0xaa, 0xe5, 0x96, 0xd6, 0xd6, 0xdd, 0x90, + 0xe8, 0x92, 0xae, 0x56, 0x57, 0xf9, 0xbe, 0x9f, 0x5b, 0x5a, 0x39, 0x63, + 0xb8, 0xf7, 0xee, 0xc1, 0xfc, 0xd1, 0xc8, 0x56, 0x00, 0x21, 0x04, 0x96, + 0xae, 0x2c, 0x81, 0xc8, 0xcd, 0xb7, 0x05, 0x60, 0x4c, 0xed, 0xbb, 0xb9, + 0xf9, 0xf9, 0x6d, 0xe5, 0xfe, 0x7e, 0x16, 0x45, 0xad, 0x61, 0x5b, 0x58, + 0x58, 0xc8, 0xed, 0x1c, 0xc8, 0x2e, 0xcd, 0x44, 0x7c, 0xbf, 0x0b, 0x67, + 0xcf, 0x9e, 0x76, 0x57, 0xab, 0xd5, 0x6f, 0x7d, 0xd1, 0x9d, 0x0f, 0x30, + 0x31, 0x31, 0x91, 0x9c, 0xf7, 0xd8, 0xe8, 0xae, 0xd1, 0xb1, 0x43, 0x87, + 0x26, 0x07, 0xc3, 0xf0, 0xd9, 0xa0, 0xbb, 0xbb, 0x07, 0xc6, 0x9a, 0x65, + 0x9d, 0x0b, 0x18, 0x63, 0x90, 0x52, 0xa2, 0x5a, 0xad, 0xe2, 0xc8, 0xc7, + 0x1f, 0x5d, 0xb9, 0xf0, 0xfb, 0x2f, 0x7b, 0x0f, 0xef, 0x3f, 0xcc, 0x11, + 0xef, 0x4c, 0x61, 0x18, 0x12, 0x50, 0x3f, 0x68, 0x26, 0x97, 0x00, 0xe0, + 0x01, 0xe8, 0x1a, 0x19, 0xd9, 0xbe, 0x7b, 0xed, 0xfa, 0x75, 0x7b, 0x46, + 0x77, 0x3e, 0xe9, 0x97, 0xfb, 0xcb, 0x2d, 0x9b, 0x4f, 0x3b, 0xb2, 0xb8, + 0xb8, 0x88, 0x33, 0x67, 0x7e, 0xa4, 0xc9, 0xa9, 0xf7, 0xa2, 0x0b, 0x3f, + 0x9f, 0x7f, 0x7a, 0x66, 0xe6, 0xe8, 0x14, 0x80, 0x08, 0x40, 0x2d, 0x86, + 0xa0, 0x30, 0x0c, 0x29, 0x89, 0x59, 0x02, 0xd0, 0x05, 0xa0, 0x77, 0x7a, + 0x7a, 0xe6, 0xb3, 0x72, 0xb9, 0x2c, 0xe7, 0xe6, 0x7e, 0xda, 0xa1, 0x94, + 0x5a, 0x6f, 0xad, 0x6d, 0x8d, 0xdd, 0x3f, 0x88, 0x10, 0x72, 0xe9, 0xf2, + 0xe2, 0xe5, 0x73, 0xdf, 0x9f, 0x3c, 0xf5, 0xc6, 0xec, 0xec, 0xec, 0x71, + 0x00, 0x2a, 0xee, 0xd8, 0x01, 0x48, 0x8b, 0x4c, 0x02, 0x40, 0xb1, 0xb2, + 0x1a, 0x37, 0xd0, 0x95, 0x4a, 0xe5, 0x40, 0xa5, 0x52, 0xf9, 0x00, 0x80, + 0x1f, 0xc3, 0x25, 0x91, 0xfa, 0x3b, 0xa1, 0x86, 0xbb, 0x01, 0xa0, 0x63, + 0x9f, 0x57, 0xe3, 0xe7, 0x08, 0x80, 0x6d, 0x68, 0x07, 0x96, 0xfc, 0x1b, + 0x36, 0xce, 0x03, 0xd4, 0x4f, 0x2f, 0x1c, 0xd9, 0x14, 0x75, 0x22, 0xd4, + 0x74, 0xb9, 0x86, 0xe7, 0x34, 0xff, 0x19, 0x80, 0x66, 0x69, 0x00, 0xfa, + 0xd7, 0xd2, 0xd8, 0x61, 0xb3, 0x14, 0x02, 0xfc, 0x57, 0xb2, 0xe2, 0xff, + 0x86, 0x7f, 0x01, 0x48, 0xae, 0x03, 0x1c, 0x3b, 0xb4, 0x54, 0x8d, 0x00, + 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int zoom_in_png_len = 1235; +unsigned char zoom_out_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x0a, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x5a, 0x6f, 0x6f, 0x6d, 0xbc, 0x01, 0x55, 0x2b, 0x00, 0x00, 0x00, + 0x26, 0x74, 0x45, 0x58, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x00, + 0x4a, 0x61, 0x6b, 0x75, 0x62, 0x20, 0x53, 0x74, 0x65, 0x69, 0x6e, 0x65, + 0x72, 0x2c, 0x20, 0x4c, 0x61, 0x70, 0x6f, 0x20, 0x43, 0x61, 0x6c, 0x61, + 0x6d, 0x61, 0x6e, 0x64, 0x72, 0x65, 0x69, 0x14, 0x54, 0xf1, 0xa7, 0x00, + 0x00, 0x03, 0x56, 0x49, 0x44, 0x41, 0x54, 0x58, 0x85, 0xed, 0x97, 0x3b, + 0x68, 0x14, 0x41, 0x18, 0xc7, 0xff, 0xb3, 0x33, 0xb7, 0x77, 0xd9, 0xcd, + 0x05, 0x9f, 0xa0, 0xa2, 0x78, 0x85, 0x95, 0x0f, 0x14, 0x04, 0x11, 0xc5, + 0x44, 0x21, 0x12, 0x4b, 0x91, 0x80, 0x95, 0x18, 0x0b, 0x2b, 0x3b, 0x1b, + 0x97, 0xf8, 0x40, 0xc5, 0x47, 0xac, 0x45, 0x1b, 0xc1, 0xf7, 0x03, 0x1f, + 0x44, 0x04, 0x0b, 0x41, 0x44, 0x2c, 0x44, 0xb0, 0x10, 0x14, 0xb1, 0xd1, + 0xe2, 0x12, 0x13, 0x54, 0x7c, 0x6b, 0x8c, 0x3b, 0x73, 0x33, 0xf3, 0x59, + 0xec, 0xde, 0xb1, 0xb9, 0xdc, 0xc9, 0xde, 0x25, 0x98, 0xc6, 0x3f, 0x0c, + 0xb7, 0xec, 0xce, 0xce, 0xf7, 0xbb, 0xff, 0x37, 0xf3, 0xcd, 0x2c, 0x0b, + 0x82, 0x00, 0x53, 0x29, 0x67, 0x4a, 0xa3, 0xff, 0x07, 0x00, 0x20, 0xea, + 0x3d, 0x58, 0xdf, 0xb5, 0x7e, 0x51, 0x86, 0xb1, 0xe3, 0x60, 0x6c, 0x95, + 0x35, 0x66, 0x2e, 0x00, 0xd6, 0xc0, 0xb8, 0xc4, 0x1d, 0x67, 0xd8, 0x12, + 0x1e, 0x93, 0x56, 0xbd, 0x0f, 0x1e, 0x3c, 0x1e, 0x6c, 0x08, 0xa0, 0xb3, + 0x6b, 0xc3, 0xf6, 0x4c, 0x26, 0x73, 0x6a, 0xd9, 0x92, 0xe5, 0x5e, 0xbe, + 0x35, 0xcf, 0x38, 0xaf, 0xcb, 0x59, 0x57, 0x5a, 0xeb, 0xc2, 0xf7, 0x1f, + 0xdf, 0x16, 0xbe, 0x7c, 0xf5, 0x62, 0xf3, 0xc6, 0x4d, 0x1d, 0xdb, 0xee, + 0xdf, 0x7b, 0x74, 0xbb, 0x56, 0xbf, 0x71, 0x29, 0xe8, 0xec, 0x6c, 0x5f, + 0x9c, 0xcd, 0x66, 0x4e, 0xaf, 0x5b, 0xd3, 0xe1, 0x4f, 0x9f, 0x36, 0xa3, + 0xa9, 0xe0, 0x00, 0x20, 0x84, 0xc0, 0xac, 0x99, 0xb3, 0x59, 0xfb, 0xda, + 0x0d, 0x3e, 0xe7, 0x99, 0x4b, 0xed, 0x5d, 0xed, 0xf3, 0x53, 0x01, 0x70, + 0x21, 0xfa, 0x96, 0x2f, 0x5d, 0xd9, 0x42, 0x04, 0x68, 0xad, 0x61, 0x8c, + 0x69, 0xba, 0x69, 0xad, 0x01, 0x00, 0xcb, 0x96, 0xac, 0x68, 0xc9, 0x31, + 0x7e, 0xa8, 0x26, 0x68, 0xf5, 0x0d, 0x0b, 0x5a, 0xed, 0xf9, 0x3e, 0x33, + 0xc6, 0x80, 0x88, 0x9a, 0xfa, 0xf7, 0x49, 0x11, 0x11, 0xf2, 0xad, 0x6d, + 0x0e, 0x73, 0x9c, 0xb5, 0xa9, 0x00, 0x8c, 0x31, 0xb3, 0x1d, 0xe6, 0x40, + 0x69, 0x35, 0xe1, 0xe0, 0x00, 0xc0, 0x18, 0x83, 0xeb, 0xba, 0x30, 0xda, + 0x2c, 0x48, 0x05, 0x00, 0x44, 0xd4, 0xc6, 0x98, 0x49, 0x03, 0x20, 0x22, + 0x50, 0x9d, 0x25, 0x5f, 0x77, 0x86, 0x59, 0x6b, 0x27, 0x0d, 0x00, 0xa8, + 0x9f, 0xca, 0x71, 0x00, 0xa5, 0x52, 0x09, 0x44, 0x04, 0x6b, 0x23, 0x07, + 0x84, 0x10, 0x4d, 0xb9, 0xc1, 0x39, 0x87, 0xd6, 0xba, 0xe2, 0x80, 0x2e, + 0x95, 0xd2, 0x01, 0x48, 0xa9, 0xc6, 0x00, 0x10, 0x71, 0x1c, 0x38, 0xb8, + 0x1f, 0x42, 0xa4, 0x5f, 0x8e, 0x5a, 0x6b, 0x1c, 0x39, 0x7c, 0x14, 0xd6, + 0x9a, 0x0a, 0x80, 0x54, 0x32, 0x1d, 0x80, 0x92, 0x32, 0x22, 0x8e, 0x97, + 0x90, 0x10, 0x02, 0xbe, 0xef, 0xe1, 0xd8, 0x91, 0x13, 0xa9, 0x01, 0x7a, + 0xf7, 0xed, 0x01, 0x91, 0xad, 0x38, 0x60, 0xad, 0x85, 0x0c, 0x53, 0x02, + 0x48, 0xa5, 0x60, 0xc9, 0x42, 0x9b, 0xb2, 0x03, 0x80, 0xe7, 0x79, 0xa9, + 0x83, 0x03, 0x51, 0x7f, 0x22, 0x40, 0x1b, 0x13, 0x03, 0x10, 0xa4, 0x4a, + 0x9d, 0x02, 0x09, 0xb2, 0xb6, 0xe2, 0x00, 0x11, 0xc1, 0xf3, 0x3d, 0x68, + 0xa3, 0xd3, 0x03, 0xf8, 0x5e, 0xc5, 0xc5, 0x08, 0xc0, 0x40, 0x35, 0x92, + 0x02, 0x9b, 0x00, 0x00, 0x80, 0xb6, 0x7c, 0x1e, 0xe7, 0xce, 0x9f, 0x49, + 0x0d, 0xd0, 0x96, 0xcf, 0x03, 0x40, 0x0c, 0xe0, 0xc0, 0x5a, 0x0b, 0x25, + 0x1b, 0x48, 0x81, 0xa9, 0x02, 0xe8, 0xde, 0xb2, 0x35, 0x75, 0xf0, 0xa4, + 0xb4, 0xd6, 0x70, 0x1c, 0x07, 0xc6, 0x5a, 0x84, 0x69, 0x1d, 0x90, 0x52, + 0x82, 0x01, 0xe0, 0x3c, 0xaa, 0x1b, 0x9f, 0xbf, 0x7c, 0x6a, 0x2a, 0x38, + 0xe2, 0x31, 0xa2, 0x3a, 0x00, 0x28, 0x59, 0xbb, 0xb2, 0xd6, 0x48, 0x81, + 0x8a, 0x5f, 0xe6, 0x4d, 0x07, 0x4e, 0xaa, 0x61, 0x00, 0x29, 0x25, 0xc0, + 0x18, 0x9a, 0xdd, 0x86, 0x6b, 0x03, 0x10, 0x94, 0x2a, 0xd5, 0x2c, 0xad, + 0xe3, 0x77, 0x43, 0xa2, 0xcf, 0x32, 0x0c, 0x67, 0xba, 0xae, 0x3b, 0x29, + 0xe5, 0x98, 0x73, 0x8e, 0xd1, 0x5f, 0xa3, 0x20, 0xb2, 0xc3, 0xb5, 0x9e, + 0x8f, 0xdb, 0x20, 0xb4, 0x2e, 0x3d, 0x1d, 0x1a, 0x1e, 0xa6, 0x5c, 0x36, + 0x07, 0xc1, 0xc5, 0x84, 0x5b, 0xd6, 0xcd, 0x61, 0xf0, 0xed, 0xa0, 0xfd, + 0x1d, 0x86, 0x4f, 0xea, 0x3a, 0xd0, 0xd7, 0xd7, 0x57, 0x3e, 0xef, 0xb1, + 0x9e, 0x9d, 0x3d, 0xbd, 0x57, 0xae, 0x5c, 0xec, 0x08, 0x82, 0xbd, 0x5e, + 0x2e, 0xd7, 0x02, 0x6d, 0x74, 0x53, 0xe7, 0x02, 0xc6, 0x18, 0x84, 0x10, + 0x08, 0xc3, 0x10, 0x37, 0x6e, 0x5e, 0xff, 0xf5, 0xe1, 0xeb, 0xc7, 0x43, + 0x57, 0xcf, 0x5e, 0x75, 0x10, 0xef, 0x4c, 0x41, 0x10, 0x10, 0x10, 0x1d, + 0x34, 0xcb, 0x8d, 0x03, 0xc8, 0x00, 0xc8, 0x76, 0x77, 0x6f, 0xd9, 0x35, + 0x67, 0xde, 0xdc, 0xfd, 0x3d, 0xdb, 0x77, 0xb8, 0x85, 0x85, 0x05, 0xf8, + 0xbe, 0xdf, 0x30, 0xc0, 0xc8, 0xc8, 0x08, 0xde, 0xbc, 0x79, 0x4d, 0x17, + 0x2f, 0x5f, 0x50, 0x1f, 0xde, 0xbd, 0xdf, 0xdd, 0xdf, 0x7f, 0xe7, 0x32, + 0x00, 0x05, 0xa0, 0x14, 0x43, 0x50, 0x10, 0x04, 0x54, 0x9e, 0x03, 0x65, + 0x80, 0x2c, 0x80, 0xd6, 0x5b, 0xb7, 0xfa, 0xef, 0x16, 0x0a, 0x05, 0x31, + 0x34, 0xf4, 0x76, 0x9b, 0xef, 0xfb, 0xf3, 0x8c, 0x31, 0xb9, 0x46, 0x01, + 0x38, 0x17, 0xa3, 0x3f, 0x47, 0x7e, 0x0e, 0x3e, 0x7f, 0xf6, 0xe2, 0xe4, + 0xc0, 0xc0, 0xc0, 0x43, 0x00, 0x7e, 0x1c, 0xd8, 0x02, 0xa8, 0x14, 0x99, + 0x32, 0x00, 0xc5, 0x37, 0xc3, 0xb8, 0x83, 0x2c, 0x16, 0x8b, 0xe7, 0x8a, + 0xc5, 0xe2, 0x35, 0x00, 0x6e, 0x0c, 0x57, 0x76, 0xea, 0x6f, 0xa2, 0xc4, + 0xaf, 0x06, 0x20, 0xe3, 0x31, 0x7f, 0xc7, 0xd7, 0x0a, 0x80, 0x49, 0xf4, + 0x03, 0x2b, 0x7f, 0x1b, 0x26, 0xe7, 0x01, 0xa2, 0xc9, 0xe9, 0x60, 0x6c, + 0x8a, 0x1a, 0x11, 0x55, 0x35, 0x9b, 0xb8, 0xae, 0xe4, 0x7f, 0x0c, 0x40, + 0xb5, 0x12, 0x40, 0x13, 0x56, 0x32, 0x60, 0xb5, 0xea, 0x02, 0xfc, 0x2b, + 0x4d, 0xf9, 0xb7, 0xe1, 0x1f, 0x7a, 0xb2, 0xc9, 0xb4, 0x03, 0xd5, 0xde, + 0x5d, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, + 0x82 +}; +unsigned int zoom_out_png_len = 1057; +unsigned char go_next_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x13, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x4f, 0x70, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, + 0x76, 0x65, 0x3e, 0x67, 0xba, 0x0c, 0x00, 0x00, 0x06, 0x03, 0x49, 0x44, + 0x41, 0x54, 0x58, 0x85, 0xed, 0x57, 0x6d, 0x6c, 0x14, 0x55, 0x17, 0x7e, + 0xee, 0xcc, 0x74, 0xb6, 0xdd, 0xed, 0x17, 0x4a, 0x30, 0x2d, 0xa8, 0x41, + 0x0d, 0xc6, 0x28, 0x51, 0x11, 0x91, 0x18, 0x35, 0x1b, 0x8d, 0xbe, 0x02, + 0x52, 0x63, 0xaa, 0xa0, 0x62, 0x09, 0x82, 0xb4, 0x36, 0x2a, 0x46, 0x37, + 0x1a, 0x81, 0x42, 0x57, 0x53, 0x35, 0x8a, 0xfb, 0x2a, 0x02, 0x02, 0x5a, + 0xca, 0x52, 0xac, 0x2d, 0xcb, 0x16, 0x94, 0x8f, 0x82, 0x81, 0xd0, 0x06, + 0x83, 0x56, 0x24, 0xd4, 0x68, 0xa5, 0xad, 0xa5, 0x18, 0x30, 0x42, 0x0b, + 0x6d, 0xb7, 0xbb, 0xdb, 0xdd, 0xed, 0xcc, 0xdc, 0x7b, 0x8f, 0x3f, 0x68, + 0x37, 0xad, 0x22, 0x7d, 0xbb, 0xaf, 0x86, 0x3f, 0xde, 0xe4, 0x24, 0x93, + 0x79, 0xe6, 0x3e, 0xe7, 0x99, 0xf3, 0x71, 0xcf, 0x0c, 0x23, 0x22, 0x5c, + 0xca, 0xa5, 0x5c, 0x52, 0xef, 0xff, 0x0a, 0x00, 0xa0, 0x25, 0xba, 0x71, + 0x5f, 0x5d, 0xcd, 0x64, 0x26, 0xd8, 0x42, 0x02, 0x66, 0x0a, 0x29, 0x77, + 0x98, 0x42, 0x7c, 0x94, 0xf3, 0x60, 0xce, 0x0f, 0x23, 0x26, 0x22, 0xa2, + 0x11, 0xdb, 0x9e, 0x03, 0x7b, 0xae, 0xff, 0xf6, 0xbb, 0x43, 0x22, 0x16, + 0x8b, 0x91, 0x94, 0x92, 0xc2, 0xbd, 0x61, 0x3a, 0xf8, 0x55, 0x2d, 0x6d, + 0xad, 0xde, 0xe2, 0x1a, 0x29, 0x57, 0x42, 0x02, 0xf6, 0xee, 0xdf, 0xb5, + 0x31, 0x14, 0x0e, 0x92, 0x94, 0x92, 0x38, 0xe7, 0x24, 0xa5, 0x24, 0x29, + 0x25, 0xd5, 0x1d, 0xdc, 0x4f, 0xe5, 0x9f, 0x95, 0x2d, 0x1e, 0x09, 0x57, + 0x42, 0x35, 0x60, 0x99, 0xd6, 0x03, 0x49, 0x5a, 0x12, 0x38, 0xe7, 0x90, + 0x52, 0x82, 0x73, 0x0e, 0x22, 0xc2, 0x3d, 0x77, 0xdd, 0x8b, 0xac, 0x31, + 0xd9, 0x6f, 0x95, 0x96, 0xad, 0x2b, 0xfe, 0x5f, 0xb9, 0x12, 0x12, 0x60, + 0x5a, 0xd6, 0xae, 0xae, 0xee, 0x6e, 0x10, 0x11, 0xa4, 0x94, 0x90, 0x52, + 0xc2, 0xb2, 0x2c, 0x48, 0x29, 0x71, 0xdf, 0xbd, 0x0f, 0x60, 0xdc, 0xb8, + 0xab, 0xdc, 0xab, 0xd6, 0xae, 0x7c, 0xf3, 0x9f, 0x13, 0x60, 0x1a, 0x95, + 0x47, 0x1b, 0x0e, 0xc3, 0x30, 0x8c, 0x21, 0x22, 0x4c, 0xd3, 0x04, 0xe7, + 0x1c, 0xff, 0xb9, 0x7f, 0x1a, 0xc6, 0x5f, 0x3d, 0x7e, 0xc9, 0x8a, 0xf7, + 0xde, 0x59, 0x31, 0x2c, 0x59, 0x22, 0x35, 0x40, 0x44, 0xf0, 0x96, 0x7f, + 0xb2, 0x68, 0xab, 0xbf, 0x92, 0x02, 0x81, 0x00, 0x45, 0x22, 0x11, 0x0a, + 0x87, 0xc3, 0x71, 0x33, 0x0c, 0x83, 0xa4, 0x94, 0xf4, 0xc5, 0xce, 0xed, + 0xe4, 0x2e, 0x29, 0x5e, 0xf9, 0xb7, 0x17, 0xe1, 0x80, 0xad, 0x5d, 0xbf, + 0xba, 0xb0, 0xfc, 0xd3, 0x8d, 0xb2, 0xb3, 0xab, 0x93, 0xc2, 0xe1, 0x30, + 0x05, 0x83, 0xc1, 0xb8, 0x0d, 0x74, 0xc8, 0xb6, 0xed, 0x7e, 0x5a, 0xbc, + 0xe4, 0x95, 0x8f, 0x00, 0xb0, 0x0b, 0x71, 0xa8, 0x6e, 0xb7, 0x3b, 0x91, + 0x2c, 0x00, 0x00, 0x26, 0xdf, 0x36, 0xe5, 0x48, 0x5d, 0xed, 0xfe, 0xd3, + 0xad, 0x6d, 0xc7, 0x1f, 0xba, 0xee, 0xda, 0x6b, 0x99, 0xae, 0xeb, 0x90, + 0x52, 0x02, 0x20, 0x08, 0xc1, 0x41, 0x04, 0xdc, 0x74, 0xd3, 0x44, 0x84, + 0x42, 0xc1, 0xdb, 0xc7, 0x8e, 0xcd, 0x1a, 0x57, 0x5f, 0x7f, 0x78, 0x97, + 0xd3, 0xe9, 0x1c, 0x32, 0x7c, 0xd8, 0xe0, 0x61, 0xb4, 0x63, 0x4f, 0xf5, + 0xad, 0x0a, 0x34, 0x17, 0xe7, 0x3c, 0x87, 0x48, 0xec, 0x90, 0x96, 0xf4, + 0xe4, 0xe6, 0x3e, 0xde, 0x30, 0x80, 0x97, 0x57, 0x95, 0xdf, 0xaa, 0x31, + 0xe6, 0xe2, 0x16, 0xcf, 0x21, 0xd0, 0x0e, 0x6e, 0x98, 0x9e, 0x05, 0x0b, + 0x9e, 0x6d, 0x78, 0xfb, 0xdd, 0x92, 0xa7, 0x1d, 0x76, 0x47, 0xe9, 0xac, + 0x47, 0x1f, 0x57, 0xec, 0x76, 0x07, 0x84, 0xe0, 0x71, 0x4e, 0x9b, 0xcd, + 0x86, 0x94, 0x14, 0x3b, 0xaa, 0xb7, 0xf9, 0x71, 0xe0, 0xc0, 0xbe, 0xf2, + 0xce, 0x73, 0x3d, 0xf3, 0x7d, 0x3e, 0x9f, 0xf8, 0x93, 0x80, 0x9d, 0x3b, + 0xb7, 0x4d, 0xb5, 0xd9, 0xed, 0x75, 0xb7, 0x4f, 0x9a, 0xa2, 0xa7, 0x67, + 0x64, 0xb0, 0x8e, 0x8e, 0x76, 0x3a, 0x72, 0xf4, 0xb0, 0x19, 0xee, 0x8d, + 0x3a, 0xe7, 0xcc, 0x9e, 0x53, 0x5f, 0x51, 0xe1, 0x9d, 0x6a, 0x4f, 0x75, + 0xd4, 0xdd, 0x7d, 0x97, 0x53, 0x1f, 0x95, 0x79, 0x19, 0x3b, 0x7d, 0xe6, + 0x37, 0xfa, 0xea, 0x50, 0x9d, 0x19, 0x0c, 0x07, 0x9d, 0x85, 0xcf, 0xbc, + 0x50, 0x5f, 0xfc, 0x46, 0x51, 0x9e, 0xc3, 0xee, 0xd8, 0xf8, 0xe4, 0x13, + 0x4f, 0xa9, 0x69, 0xa9, 0xa9, 0xe0, 0x7c, 0xa8, 0x08, 0x87, 0x23, 0x15, + 0x7e, 0xff, 0x56, 0xec, 0xde, 0x5b, 0x53, 0x79, 0xf2, 0xc4, 0xa9, 0xb9, + 0xb5, 0xb5, 0xb5, 0x1c, 0x18, 0xd4, 0x05, 0x9c, 0xa4, 0xeb, 0xe6, 0x89, + 0xb7, 0xe8, 0x69, 0x69, 0xe9, 0x8c, 0x5b, 0x16, 0x52, 0x92, 0x53, 0xd8, + 0xf8, 0xab, 0xaf, 0xd1, 0x15, 0x26, 0x5c, 0x00, 0x20, 0x40, 0xae, 0x3b, + 0xa6, 0xdc, 0xa9, 0x67, 0x66, 0x8c, 0x62, 0x9c, 0x5b, 0x48, 0x75, 0xa4, + 0xb2, 0x1b, 0x26, 0xdc, 0xa8, 0x33, 0x52, 0x5c, 0x00, 0xf0, 0xfa, 0xf2, + 0x92, 0xcd, 0x9d, 0x5d, 0x5d, 0x79, 0x1b, 0xca, 0x3e, 0x16, 0x81, 0x40, + 0x00, 0x8a, 0xa2, 0x40, 0x08, 0x01, 0x21, 0x04, 0xa2, 0xd1, 0x28, 0x42, + 0xa1, 0x10, 0x72, 0x73, 0x1f, 0xc3, 0x8c, 0x69, 0xd3, 0x9e, 0xb8, 0x22, + 0x7b, 0x4c, 0x55, 0x41, 0x41, 0x41, 0xd2, 0x10, 0x01, 0x42, 0x88, 0xe9, + 0xc9, 0xb6, 0x64, 0xd6, 0xdb, 0x1b, 0x42, 0x24, 0xd2, 0x8b, 0x9e, 0x9e, + 0x00, 0x6c, 0x36, 0x1b, 0x33, 0x0d, 0x6b, 0x3a, 0x00, 0x58, 0x96, 0x35, + 0xdd, 0x6e, 0x77, 0x0c, 0xc1, 0x53, 0xec, 0x29, 0xcc, 0xb2, 0xce, 0xe3, + 0x00, 0xf0, 0xee, 0xdb, 0xef, 0x55, 0x76, 0x77, 0x77, 0x7b, 0x2a, 0x2a, + 0x2b, 0x90, 0x9a, 0x9a, 0x06, 0x5d, 0xb7, 0x0d, 0x12, 0x11, 0x41, 0x28, + 0x14, 0xc4, 0xf4, 0x69, 0x33, 0x91, 0x91, 0x9e, 0x96, 0x1b, 0x08, 0x76, + 0x2d, 0x06, 0x06, 0x0d, 0x23, 0x12, 0xb2, 0xe6, 0xc4, 0x2f, 0x6d, 0xb9, + 0x99, 0x99, 0xa3, 0x58, 0x5f, 0x5f, 0x0c, 0x96, 0x69, 0xa1, 0x27, 0xd4, + 0x2d, 0x41, 0x54, 0x03, 0x00, 0x44, 0x54, 0xd3, 0xda, 0xda, 0x9c, 0x3b, + 0x7a, 0xf4, 0x98, 0x38, 0xde, 0xd1, 0xd9, 0x1e, 0xc7, 0x01, 0xe0, 0xb9, + 0x45, 0xcf, 0xcd, 0xcc, 0x48, 0x4f, 0x7b, 0xf1, 0xa5, 0x17, 0x5d, 0x10, + 0x42, 0x22, 0xdc, 0x1b, 0x8e, 0xa7, 0x41, 0x51, 0x14, 0x58, 0xdc, 0x82, + 0x77, 0x93, 0x17, 0x81, 0x40, 0xcf, 0x97, 0x90, 0xca, 0x8a, 0x21, 0x11, + 0x30, 0x0d, 0xc3, 0xf3, 0x73, 0x6b, 0x53, 0xec, 0xb7, 0xd3, 0x27, 0x65, + 0xcc, 0x88, 0xe0, 0x6c, 0x57, 0xbb, 0x3c, 0xde, 0xd6, 0xd6, 0x17, 0x35, + 0x2d, 0x0f, 0x00, 0x58, 0x7d, 0xa6, 0xa7, 0xe1, 0xfb, 0xef, 0x63, 0x6d, + 0xbf, 0xb4, 0xca, 0x48, 0xac, 0x17, 0xbf, 0x9e, 0x3e, 0x25, 0x7f, 0xfa, + 0xa9, 0xb1, 0x2f, 0x66, 0x44, 0x3d, 0x00, 0x50, 0xf8, 0x7c, 0xfe, 0x23, + 0x19, 0xe9, 0x69, 0xd5, 0xcb, 0x96, 0x2e, 0xb7, 0x81, 0x01, 0xed, 0x1d, + 0x67, 0xe2, 0x6f, 0x0f, 0x00, 0xaa, 0xaa, 0xc2, 0xbb, 0xc9, 0x8b, 0xaf, + 0xbf, 0x39, 0xb4, 0xab, 0x37, 0x14, 0x7d, 0xd8, 0xe7, 0xf3, 0xc5, 0xfe, + 0xd4, 0x05, 0x5e, 0x6f, 0xe9, 0x54, 0x45, 0x53, 0x5c, 0x9c, 0x5b, 0x33, + 0x40, 0xd8, 0x6d, 0x08, 0xe9, 0x29, 0x7c, 0xa6, 0xb0, 0x7e, 0x00, 0x5f, + 0xb5, 0xea, 0xbf, 0x53, 0xa1, 0x2a, 0x2e, 0x6e, 0xf1, 0x19, 0x4c, 0xc1, + 0x6e, 0xd3, 0x32, 0x3c, 0xaf, 0xbe, 0xbc, 0xb4, 0x3e, 0xbf, 0x30, 0x7f, + 0xd6, 0xe8, 0xcb, 0x2e, 0xaf, 0x58, 0x56, 0xb4, 0x5c, 0x13, 0x52, 0xa0, + 0xa3, 0xa3, 0x3d, 0xce, 0xa9, 0xaa, 0x2a, 0x92, 0x92, 0x74, 0x6c, 0xde, + 0xbc, 0x09, 0x47, 0x1b, 0x8e, 0x7e, 0x0e, 0xa9, 0xcc, 0xf6, 0xf9, 0x7c, + 0x66, 0xfc, 0x81, 0x0b, 0x1d, 0x0e, 0x6e, 0xb7, 0x5b, 0xb9, 0xd8, 0x01, + 0x34, 0x18, 0x5f, 0xb8, 0x70, 0xfe, 0x9c, 0x25, 0x45, 0xaf, 0xf1, 0x58, + 0x2c, 0x4a, 0xa1, 0x50, 0x88, 0x5a, 0x7e, 0x6e, 0x8e, 0x5b, 0xdb, 0x89, + 0xe3, 0x74, 0xea, 0xd4, 0x49, 0x2a, 0x29, 0x79, 0x83, 0x66, 0xcd, 0xce, + 0xf5, 0x39, 0x9d, 0x4e, 0xed, 0x8f, 0x5c, 0x43, 0x22, 0x30, 0xd2, 0x35, + 0x7f, 0xe1, 0xbc, 0xa7, 0xb3, 0xb3, 0xb2, 0x4a, 0x8b, 0x96, 0x16, 0x2b, + 0x96, 0x69, 0xe2, 0xec, 0xb9, 0x8e, 0x38, 0xa6, 0x69, 0x1a, 0x54, 0x55, + 0x43, 0xd9, 0xc6, 0x32, 0x34, 0x36, 0xfe, 0xf8, 0x19, 0xa4, 0x32, 0x77, + 0x70, 0xff, 0xc7, 0x6b, 0x23, 0x51, 0xe7, 0xf3, 0x16, 0xcc, 0xcd, 0xcf, + 0xce, 0x1a, 0xbb, 0x61, 0x59, 0x91, 0x5b, 0xb1, 0x4c, 0x13, 0x9d, 0x5d, + 0xe7, 0xa0, 0x28, 0x0a, 0x14, 0x45, 0x81, 0xae, 0xeb, 0xd0, 0xb4, 0x24, + 0x6c, 0x28, 0x2b, 0x45, 0x63, 0xe3, 0x8f, 0xde, 0x1b, 0x6f, 0x98, 0x98, + 0x77, 0x21, 0xe7, 0x00, 0x12, 0x8b, 0x40, 0xde, 0x82, 0xbc, 0xeb, 0xaf, + 0xca, 0xbe, 0xb2, 0xa9, 0x78, 0xb9, 0x9b, 0x19, 0x86, 0x81, 0x40, 0xa0, + 0x2b, 0x8e, 0x69, 0x9a, 0x06, 0x06, 0x86, 0x75, 0xeb, 0xd7, 0xe1, 0x58, + 0x4b, 0xd3, 0x27, 0xfe, 0xaa, 0xea, 0x02, 0xba, 0x88, 0x93, 0x84, 0xbe, + 0x09, 0x2d, 0xc3, 0x7c, 0xa9, 0x20, 0xbf, 0x80, 0x71, 0xce, 0x11, 0x0a, + 0x05, 0xa1, 0xaa, 0xe7, 0x69, 0x54, 0x55, 0x3b, 0x3f, 0xa4, 0xd6, 0xae, + 0x41, 0x53, 0x73, 0xf3, 0x1a, 0xbf, 0xaf, 0xfa, 0x85, 0x8b, 0x39, 0x07, + 0x12, 0x4c, 0x81, 0xb4, 0x44, 0x4e, 0x66, 0xe6, 0x28, 0x44, 0xa3, 0x11, + 0xa8, 0xaa, 0x0a, 0x55, 0x55, 0xa1, 0xeb, 0x3a, 0x18, 0x63, 0x58, 0xbd, + 0xe6, 0x43, 0xb4, 0xb4, 0xb4, 0x7c, 0xb0, 0x75, 0x8b, 0xff, 0xf9, 0xe1, + 0x9c, 0x8f, 0x48, 0x00, 0x3b, 0xbf, 0x54, 0xc6, 0x58, 0x92, 0x24, 0xfa, + 0xf2, 0xc8, 0x91, 0xef, 0xa0, 0x2a, 0x1a, 0x34, 0x55, 0x83, 0x4d, 0xb7, + 0x81, 0x24, 0x61, 0xe5, 0x87, 0xef, 0xa3, 0xa5, 0xb9, 0xe5, 0x7d, 0xdf, + 0x16, 0xff, 0x62, 0xc6, 0x98, 0xce, 0x18, 0x4b, 0xea, 0xdf, 0xc3, 0xfe, + 0x8a, 0x77, 0xd8, 0x14, 0x30, 0xc6, 0x14, 0x00, 0x6a, 0xbf, 0xd8, 0x64, + 0x00, 0x8e, 0x8e, 0x33, 0x67, 0xf7, 0x6d, 0xff, 0x7c, 0xdb, 0x3c, 0x9b, + 0x9e, 0x8c, 0x09, 0x13, 0x26, 0xa0, 0xed, 0x44, 0x1b, 0xaa, 0xb6, 0x54, + 0xa1, 0xe9, 0xd8, 0xb1, 0xf5, 0x35, 0xbb, 0xf7, 0xae, 0x06, 0x90, 0x09, + 0x20, 0x0a, 0x40, 0x02, 0x10, 0x00, 0x24, 0x63, 0x4c, 0x02, 0x10, 0x44, + 0x24, 0x87, 0xf0, 0x0f, 0x17, 0xa5, 0x7e, 0xf5, 0x03, 0x02, 0x34, 0x00, + 0x76, 0x00, 0x29, 0x93, 0xef, 0x98, 0x3c, 0x69, 0x5c, 0x76, 0xd6, 0x22, + 0x55, 0xd3, 0x26, 0x99, 0xa6, 0x79, 0x28, 0x18, 0x0c, 0xef, 0x39, 0x58, + 0x77, 0x70, 0x2f, 0x80, 0x3e, 0x00, 0x31, 0x00, 0x66, 0xbf, 0x80, 0x01, + 0x13, 0x00, 0xe4, 0x1f, 0xd3, 0x32, 0xe2, 0x2e, 0xe8, 0x17, 0x34, 0x60, + 0xea, 0xc0, 0x6d, 0x00, 0xd4, 0xef, 0x08, 0xfd, 0xd7, 0x04, 0x80, 0x86, + 0xab, 0x83, 0xff, 0xeb, 0x20, 0xfa, 0x3b, 0xd6, 0x25, 0xff, 0x37, 0xfc, + 0x1d, 0xb2, 0xd0, 0x94, 0xc5, 0xc1, 0xa5, 0x75, 0xe4, 0x00, 0x00, 0x00, + 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int go_next_png_len = 1701; +unsigned char go_previous_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x13, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x4f, 0x70, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, + 0x76, 0x65, 0x3e, 0x67, 0xba, 0x0c, 0x00, 0x00, 0x05, 0xe5, 0x49, 0x44, + 0x41, 0x54, 0x58, 0x85, 0xed, 0x97, 0x6b, 0x4c, 0x14, 0x57, 0x14, 0xc7, + 0xff, 0x77, 0x67, 0x76, 0x67, 0x45, 0x58, 0x11, 0x16, 0x90, 0xa2, 0xf6, + 0xa1, 0xa6, 0x9f, 0x5c, 0x57, 0x50, 0xd3, 0xd4, 0x98, 0x56, 0xd4, 0xd6, + 0x68, 0xa9, 0x49, 0x8d, 0xd6, 0xb6, 0x6a, 0xac, 0x31, 0x18, 0x15, 0x11, + 0x04, 0xad, 0xa4, 0xb1, 0x74, 0xb1, 0xf5, 0x11, 0x04, 0xaa, 0xf8, 0xa8, + 0xa0, 0xb5, 0x56, 0xad, 0x52, 0x6c, 0x2b, 0x55, 0x11, 0xd7, 0x17, 0x15, + 0x95, 0xe2, 0xab, 0xa5, 0x62, 0xd4, 0x5d, 0xab, 0x16, 0xaa, 0x11, 0x14, + 0x77, 0x97, 0xd9, 0xd7, 0x3c, 0x6f, 0x3f, 0xb8, 0xac, 0x12, 0xd2, 0x20, + 0xa8, 0xf1, 0x4b, 0x4f, 0x72, 0x92, 0x49, 0xce, 0xdc, 0xf9, 0xff, 0xee, + 0xb9, 0xe7, 0xdc, 0x7b, 0x87, 0x50, 0x4a, 0xf1, 0x3c, 0x4d, 0xf3, 0x5c, + 0xd5, 0xff, 0x07, 0x00, 0xc0, 0x76, 0x65, 0x90, 0xf5, 0xd8, 0xc1, 0x44, + 0x42, 0xe8, 0x64, 0x50, 0x32, 0x9e, 0x52, 0xd4, 0xc8, 0x94, 0x5a, 0xc6, + 0x8d, 0x1e, 0x77, 0xb1, 0x4b, 0x04, 0x94, 0xd2, 0x4e, 0xf9, 0xe1, 0xa3, + 0xe5, 0x29, 0x67, 0x2f, 0xfc, 0xa6, 0x7a, 0x7d, 0x5e, 0x4a, 0x29, 0xa5, + 0x7e, 0xbf, 0x9f, 0x56, 0x9d, 0xac, 0x54, 0x7f, 0xde, 0x57, 0x3a, 0xaa, + 0xb3, 0xdf, 0xa2, 0x94, 0x76, 0x6e, 0x09, 0x0e, 0x1f, 0x3d, 0x98, 0x61, + 0x8c, 0x8c, 0x2a, 0x4c, 0x30, 0x0f, 0x23, 0x7a, 0x4e, 0x0f, 0x45, 0x51, + 0xa0, 0xd3, 0xe9, 0x60, 0x32, 0x99, 0x89, 0x28, 0x8a, 0xd3, 0xbb, 0x92, + 0x80, 0xc7, 0x5e, 0x02, 0xeb, 0xf1, 0xf2, 0xac, 0x28, 0x63, 0xf4, 0xf2, + 0x41, 0xa6, 0x04, 0x50, 0x4a, 0xa1, 0x28, 0x0a, 0x00, 0x40, 0x55, 0x55, + 0xe8, 0xb4, 0x1c, 0x24, 0x41, 0x7a, 0xe7, 0x99, 0x01, 0x58, 0x8f, 0x94, + 0x7f, 0x6e, 0x8c, 0x8a, 0xc9, 0x36, 0x9b, 0xe2, 0xa1, 0x28, 0x4a, 0x50, + 0x1c, 0x00, 0x08, 0x21, 0xb8, 0xd3, 0x74, 0x07, 0xa2, 0x24, 0x95, 0x3f, + 0x13, 0x80, 0x0a, 0xeb, 0xfe, 0x15, 0xd1, 0xd1, 0xbd, 0x96, 0x0c, 0x36, + 0xc5, 0x43, 0x96, 0x65, 0xc8, 0xb2, 0xdc, 0x46, 0x5c, 0x92, 0x44, 0x9c, + 0x3b, 0x7f, 0x06, 0x82, 0x24, 0xe7, 0x3f, 0x75, 0x80, 0xf2, 0x8a, 0x7d, + 0xf9, 0xbd, 0x62, 0x63, 0xd3, 0x07, 0x9b, 0x12, 0x20, 0x8a, 0x22, 0x24, + 0x49, 0x0a, 0xc6, 0x34, 0x1a, 0x0d, 0x44, 0x51, 0xc0, 0xa1, 0xc3, 0x15, + 0x68, 0xbe, 0x7f, 0x77, 0xf1, 0x9c, 0xe4, 0xf9, 0xbf, 0x77, 0x05, 0xe0, + 0xbf, 0xaa, 0x93, 0x94, 0x1d, 0xd8, 0xbb, 0xee, 0xfc, 0x1f, 0xe7, 0xa8, + 0xaa, 0xaa, 0xd4, 0xe7, 0xf3, 0x51, 0x97, 0xcb, 0x15, 0x74, 0x9e, 0xe7, + 0x69, 0xf3, 0xfd, 0x66, 0xba, 0x73, 0xf7, 0x76, 0x5a, 0xf8, 0xf5, 0x9a, + 0x05, 0x5d, 0xa9, 0xfe, 0x56, 0x6f, 0x97, 0x01, 0x8b, 0xc5, 0xa2, 0x31, + 0x27, 0x0c, 0xdc, 0xd4, 0xb7, 0xcf, 0x8b, 0xb3, 0xcc, 0xa6, 0x78, 0xf8, + 0xfd, 0x3e, 0x88, 0xa2, 0x18, 0x8c, 0x33, 0x0c, 0x03, 0x41, 0xf0, 0xe1, + 0xe0, 0xa1, 0x72, 0xea, 0x70, 0x38, 0xe6, 0xcd, 0x9f, 0x97, 0xb6, 0xb1, + 0x4b, 0x33, 0x0f, 0x18, 0x79, 0xf4, 0x30, 0x2a, 0x2d, 0x2d, 0x65, 0x58, + 0x8e, 0x7e, 0xf3, 0xf2, 0x4b, 0xfd, 0xa6, 0x0f, 0x1a, 0x18, 0x0f, 0x9f, + 0xcf, 0x0b, 0x41, 0x10, 0xda, 0x88, 0xfb, 0xfd, 0x7e, 0x1c, 0xac, 0xd8, + 0xaf, 0x3a, 0x9c, 0xce, 0xd9, 0x69, 0xa9, 0x19, 0x9b, 0x8b, 0x8b, 0x37, + 0x0c, 0x25, 0x2c, 0x93, 0xa1, 0x28, 0x4a, 0x12, 0x28, 0xac, 0x92, 0x20, + 0xae, 0x4e, 0x49, 0x49, 0x3b, 0xd5, 0x3a, 0x26, 0x2f, 0x6f, 0xe5, 0x50, + 0xc2, 0x30, 0x19, 0xb2, 0x2a, 0x27, 0x81, 0xc2, 0x2a, 0x88, 0xf2, 0xea, + 0xa5, 0x59, 0x4b, 0x4f, 0xb5, 0x03, 0xa8, 0xac, 0xac, 0x64, 0xef, 0x39, + 0x1a, 0xb7, 0xf7, 0x7f, 0x65, 0xc0, 0x94, 0x41, 0xa6, 0xc1, 0xf0, 0x78, + 0xdc, 0x10, 0x04, 0x7f, 0x50, 0x9c, 0x65, 0x59, 0x78, 0x7d, 0x3e, 0x1c, + 0x28, 0xdf, 0xa7, 0xf2, 0x6e, 0xd7, 0xcc, 0xf4, 0xd4, 0xc5, 0xdb, 0x8a, + 0x8b, 0x37, 0x98, 0x43, 0x0d, 0x86, 0xea, 0x51, 0x89, 0x63, 0xb8, 0xc8, + 0x08, 0x23, 0xf9, 0xe7, 0x56, 0x03, 0x3d, 0x76, 0xfc, 0x88, 0xe0, 0x72, + 0x38, 0x13, 0xd3, 0xd2, 0x32, 0xab, 0x73, 0x73, 0x97, 0x9b, 0xc3, 0x23, + 0x22, 0xab, 0x93, 0xc6, 0xbf, 0xcb, 0x45, 0x45, 0x45, 0x93, 0xfa, 0xfa, + 0x9b, 0x74, 0xdf, 0x81, 0x32, 0xe1, 0x9e, 0xe3, 0x5e, 0x62, 0xce, 0xd2, + 0xe5, 0xd5, 0x40, 0xe0, 0x2c, 0x28, 0x2a, 0x2a, 0xd2, 0x36, 0x35, 0xdf, + 0xde, 0x3d, 0xa0, 0xdf, 0x03, 0x71, 0x9e, 0x77, 0xc1, 0xeb, 0xf5, 0x04, + 0x5b, 0x8e, 0x10, 0x0d, 0x78, 0xb7, 0x1b, 0x65, 0xbf, 0xec, 0x55, 0x9c, + 0x2e, 0xe7, 0xb4, 0xf4, 0xd4, 0xc5, 0xdb, 0x00, 0x80, 0x6a, 0xc8, 0xc2, + 0x11, 0xc3, 0xdf, 0xe0, 0x22, 0x7a, 0x46, 0x12, 0x59, 0x96, 0x60, 0x08, + 0x33, 0x90, 0x41, 0x26, 0x33, 0x47, 0x35, 0x58, 0x04, 0x00, 0x44, 0x43, + 0x16, 0xbe, 0x35, 0xfa, 0x6d, 0xce, 0x68, 0x8c, 0x22, 0xb2, 0x2c, 0x21, + 0x3c, 0xbc, 0x27, 0x79, 0x6d, 0xd8, 0xeb, 0x1c, 0x0b, 0xed, 0xa2, 0xd6, + 0x89, 0x69, 0x00, 0x20, 0x2c, 0xa2, 0x5b, 0x3a, 0x21, 0x64, 0xe2, 0x80, + 0xfe, 0xaf, 0xa2, 0xa5, 0xc5, 0x09, 0x8f, 0xe7, 0xa1, 0xb8, 0x4e, 0xa7, + 0x43, 0x58, 0x98, 0x01, 0xc7, 0x8e, 0x1d, 0x41, 0x4b, 0x8b, 0x6b, 0x7d, + 0x66, 0xfa, 0x27, 0xdf, 0xb7, 0x0e, 0x96, 0x44, 0x69, 0x42, 0xf7, 0xd0, + 0xee, 0xc4, 0xed, 0x6e, 0x81, 0xc7, 0xe3, 0x86, 0xd3, 0xe9, 0x40, 0x48, + 0x48, 0x77, 0x22, 0x89, 0xd2, 0x58, 0x8b, 0xc5, 0xa2, 0x11, 0x25, 0x79, + 0x42, 0x98, 0xc1, 0xd0, 0x26, 0x6e, 0x30, 0x18, 0x88, 0x20, 0x0a, 0x63, + 0x2d, 0x16, 0x8b, 0x26, 0x08, 0xc0, 0xdf, 0xf7, 0x15, 0xf0, 0xbc, 0x7b, + 0x6f, 0xd5, 0xa9, 0x2a, 0x48, 0x92, 0x0c, 0x0a, 0x40, 0x56, 0x14, 0xc8, + 0x8a, 0x02, 0xde, 0xed, 0x86, 0x2c, 0x4b, 0x98, 0x3c, 0xe9, 0x03, 0x84, + 0x74, 0x0f, 0x99, 0x67, 0x59, 0xf6, 0xd9, 0x94, 0x56, 0x00, 0x55, 0x55, + 0xcb, 0xae, 0x5c, 0xbe, 0xac, 0x3a, 0x9c, 0x4e, 0x34, 0x36, 0x35, 0x82, + 0xe7, 0x79, 0xfc, 0xdd, 0x70, 0x83, 0x52, 0xd0, 0x8a, 0xec, 0xec, 0x6c, + 0x95, 0x52, 0x5a, 0x56, 0x77, 0xb1, 0xb6, 0x4d, 0xdc, 0x7e, 0xc3, 0x46, + 0x09, 0x21, 0x15, 0xd9, 0xd9, 0xd9, 0x6a, 0x10, 0x20, 0x39, 0x39, 0x59, + 0x92, 0x05, 0x3a, 0xf9, 0xfa, 0x8d, 0x6b, 0x3f, 0x9e, 0xae, 0x39, 0x0d, + 0x86, 0x61, 0x00, 0x20, 0x98, 0x85, 0xc6, 0xa6, 0x46, 0xa8, 0xaa, 0x82, + 0x59, 0x1f, 0xcf, 0x66, 0x7a, 0xf4, 0xe8, 0xb1, 0x63, 0xc9, 0xa7, 0x8b, + 0xa6, 0x02, 0x80, 0x5f, 0x92, 0xf2, 0xcf, 0x9e, 0xaf, 0x11, 0xae, 0xda, + 0xaf, 0x28, 0xbc, 0x87, 0xc7, 0x8d, 0xfa, 0xeb, 0xea, 0x85, 0x0b, 0x17, + 0xfc, 0xa2, 0xcf, 0x9f, 0x0b, 0x00, 0x5e, 0x51, 0xc8, 0x3f, 0x71, 0xf2, + 0x84, 0x70, 0xf1, 0xd2, 0x9f, 0x4a, 0x0b, 0xef, 0xc2, 0x15, 0xfb, 0x65, + 0xf5, 0xf4, 0xa9, 0x6a, 0xbf, 0x27, 0x10, 0x6f, 0xd7, 0x05, 0x16, 0x8b, + 0x85, 0xed, 0x11, 0x1e, 0xba, 0x23, 0x2e, 0xae, 0xf7, 0xfb, 0xc3, 0x87, + 0x8f, 0x80, 0x24, 0x8a, 0x90, 0x95, 0x87, 0x3b, 0x5f, 0x4c, 0x74, 0x0c, + 0x58, 0xad, 0x16, 0x6b, 0x0b, 0x0b, 0xd4, 0x5b, 0xb7, 0x6f, 0xcf, 0x5a, + 0x93, 0x5f, 0xb8, 0x75, 0xe5, 0xca, 0x65, 0x43, 0x35, 0x5a, 0x36, 0x43, + 0x96, 0xe4, 0x24, 0x42, 0x88, 0xd5, 0x27, 0x8a, 0xab, 0x73, 0x96, 0xe6, + 0x04, 0xab, 0x3c, 0x2b, 0x2b, 0x73, 0x28, 0xc3, 0x6a, 0x33, 0x64, 0x45, + 0x4e, 0x02, 0x21, 0x56, 0xc1, 0xeb, 0x5b, 0x5d, 0x50, 0x50, 0xd8, 0xbe, + 0x0b, 0x1e, 0x6d, 0x45, 0xdb, 0x5f, 0x57, 0xb7, 0xf6, 0x89, 0xeb, 0x3d, + 0x6d, 0xe4, 0xc8, 0x51, 0x90, 0x24, 0xb1, 0xcd, 0xf6, 0xdb, 0x2b, 0xa6, + 0x17, 0x38, 0x4e, 0x8f, 0xbc, 0x82, 0x5c, 0xda, 0xd0, 0x50, 0x3f, 0x7b, + 0xe3, 0xfa, 0xa2, 0x62, 0x3c, 0x81, 0xb5, 0x3b, 0x8e, 0x27, 0x4d, 0x9a, + 0xa4, 0xc8, 0x82, 0x32, 0xc3, 0x7e, 0xfd, 0xda, 0x96, 0xf2, 0x8a, 0xfd, + 0xe0, 0x38, 0x1d, 0x38, 0x4e, 0x07, 0x86, 0xd1, 0x80, 0x61, 0x34, 0xb8, + 0x7b, 0xaf, 0x09, 0x82, 0xe0, 0x47, 0xe6, 0xc2, 0x45, 0x24, 0x36, 0x36, + 0x6e, 0xd3, 0x8c, 0x99, 0xd3, 0xe6, 0x3c, 0x09, 0x40, 0xbb, 0x0c, 0x04, + 0x03, 0x84, 0x90, 0xcc, 0x25, 0x19, 0xeb, 0xfa, 0xc4, 0xf5, 0x9e, 0x3b, + 0xf1, 0xbd, 0x89, 0x50, 0x55, 0xb5, 0x4d, 0x26, 0x22, 0x23, 0x8c, 0xd0, + 0x77, 0xeb, 0x86, 0x2f, 0xbe, 0xcc, 0xc1, 0xd5, 0xab, 0x57, 0x16, 0x94, + 0xec, 0xda, 0xb3, 0xf6, 0xa9, 0x02, 0xb4, 0x5a, 0x6a, 0xda, 0xdc, 0x82, + 0xde, 0x71, 0x7d, 0xd3, 0xa6, 0x7e, 0x34, 0x15, 0x20, 0x68, 0x03, 0xd1, + 0x33, 0xbc, 0x27, 0xf4, 0xfa, 0x10, 0x58, 0x72, 0xb2, 0x61, 0xb7, 0xd9, + 0xc6, 0x94, 0x94, 0xec, 0x39, 0xd2, 0x59, 0x80, 0x0e, 0x6f, 0x44, 0x6b, + 0xbf, 0xda, 0x90, 0x6e, 0xb3, 0xdb, 0x57, 0x6d, 0xde, 0xb2, 0x19, 0x00, + 0x81, 0x4e, 0xa7, 0x07, 0xc3, 0xb0, 0x60, 0x18, 0x16, 0x2d, 0x3c, 0x0f, + 0x49, 0x12, 0x91, 0x32, 0x6f, 0x3e, 0x40, 0xe8, 0x87, 0x9d, 0x15, 0x7f, + 0x2c, 0x00, 0x00, 0xd8, 0x5c, 0xb4, 0x65, 0x89, 0xcd, 0x6e, 0xcb, 0x29, + 0x2c, 0x5c, 0x0b, 0x55, 0x7d, 0xb0, 0x39, 0x31, 0x0c, 0x03, 0x86, 0x61, + 0xe0, 0xf1, 0x7a, 0x10, 0x19, 0x69, 0x04, 0x05, 0x92, 0x9e, 0x2a, 0x00, + 0x79, 0x60, 0x0c, 0x21, 0x44, 0x4b, 0x08, 0xd1, 0xed, 0xdc, 0xbe, 0x6b, + 0x85, 0xcd, 0x6e, 0xb3, 0xe4, 0xe7, 0xe7, 0x41, 0x96, 0x24, 0x70, 0x3a, + 0x0e, 0x2c, 0xc3, 0x82, 0x65, 0xb4, 0x38, 0x73, 0xb6, 0x06, 0x54, 0x45, + 0x55, 0xe0, 0x5d, 0x86, 0x10, 0x42, 0xba, 0x0c, 0x40, 0x08, 0xd1, 0x10, + 0x42, 0xb4, 0x00, 0x74, 0x01, 0xe7, 0x00, 0xe8, 0x01, 0x84, 0xff, 0xb4, + 0x67, 0xef, 0x77, 0x75, 0x97, 0xea, 0xf2, 0x56, 0xac, 0x5a, 0x89, 0xda, + 0xda, 0x5a, 0x50, 0x0a, 0x5c, 0xba, 0x54, 0x87, 0x1f, 0x4a, 0x4b, 0x70, + 0xb3, 0xa1, 0xfe, 0x5b, 0x00, 0x46, 0x00, 0xa1, 0x00, 0x74, 0x01, 0x98, + 0x0e, 0x33, 0xdc, 0xae, 0x08, 0x03, 0xf4, 0x4c, 0x00, 0xee, 0x51, 0x6f, + 0x05, 0xd1, 0x0f, 0x19, 0x32, 0x64, 0x70, 0xec, 0x0b, 0x31, 0x53, 0x39, + 0x3d, 0xf7, 0xa6, 0x28, 0x88, 0xbf, 0xde, 0x6f, 0x6e, 0x2e, 0x39, 0x79, + 0xb2, 0xba, 0x0a, 0x80, 0x1f, 0x80, 0x07, 0x80, 0x0c, 0x40, 0x01, 0xa0, + 0xd2, 0x0e, 0xaa, 0xbc, 0xc3, 0x2e, 0x08, 0x00, 0x3d, 0xea, 0x08, 0x00, + 0x11, 0x00, 0x34, 0xe0, 0x6a, 0xeb, 0x73, 0x47, 0x82, 0x9d, 0x06, 0x78, + 0xd6, 0xf6, 0xdc, 0xff, 0x0d, 0xff, 0x05, 0x05, 0x21, 0x89, 0x68, 0xc6, + 0xaf, 0xc4, 0x15, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, + 0x42, 0x60, 0x82 +}; +unsigned int go_previous_png_len = 1671; +unsigned char go_up_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x13, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x4f, 0x70, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, + 0x76, 0x65, 0x3e, 0x67, 0xba, 0x0c, 0x00, 0x00, 0x05, 0xe7, 0x49, 0x44, + 0x41, 0x54, 0x58, 0x85, 0xbd, 0x56, 0x7b, 0x6c, 0x93, 0x55, 0x14, 0xff, + 0xdd, 0xaf, 0xdd, 0xc3, 0x5a, 0x19, 0x45, 0x11, 0x0c, 0x23, 0x80, 0x88, + 0xc0, 0x30, 0xf2, 0x50, 0x54, 0x34, 0xc1, 0xc5, 0xa8, 0x88, 0xca, 0x00, + 0x61, 0x43, 0xd1, 0x45, 0x65, 0x44, 0x41, 0x0d, 0x2a, 0xe3, 0x35, 0x24, + 0x68, 0x21, 0x10, 0x1c, 0xd3, 0x89, 0xc8, 0x50, 0xe7, 0x93, 0x47, 0x94, + 0x96, 0x97, 0xdd, 0x56, 0x70, 0x28, 0x0c, 0xc9, 0x20, 0xba, 0x0d, 0x1c, + 0x3e, 0x88, 0x1a, 0x9d, 0x8f, 0x04, 0x75, 0x6c, 0xa5, 0xed, 0xda, 0x7e, + 0xdf, 0xbd, 0xb7, 0xdf, 0x3d, 0xfe, 0xc1, 0x68, 0xaa, 0x63, 0x6c, 0xad, + 0xe8, 0x49, 0xce, 0x1f, 0xdf, 0x77, 0xce, 0xf9, 0xfd, 0x7e, 0x39, 0xf7, + 0xdc, 0x9b, 0xc3, 0x88, 0x08, 0xc9, 0x5a, 0x43, 0x43, 0x43, 0x8a, 0xcf, + 0xdf, 0x5c, 0x64, 0xb7, 0x85, 0xd6, 0x8e, 0x1b, 0x97, 0xab, 0x27, 0x83, + 0xc1, 0x92, 0x15, 0x50, 0x53, 0x53, 0x63, 0x15, 0xa6, 0xfe, 0xa1, 0xcd, + 0x66, 0x9b, 0xa6, 0x47, 0x22, 0x1f, 0x47, 0x05, 0x26, 0x4f, 0x9c, 0x38, + 0x91, 0x27, 0x8a, 0xa3, 0x25, 0x43, 0xee, 0x76, 0xbb, 0x2d, 0x52, 0x45, + 0x36, 0x0d, 0x1c, 0x30, 0x68, 0xda, 0x2d, 0x37, 0x8d, 0xc7, 0xe0, 0x2b, + 0x87, 0x4c, 0xb0, 0xa4, 0xd2, 0x76, 0xb7, 0xdb, 0x9d, 0xfa, 0x9f, 0x0b, + 0x70, 0x3a, 0x9d, 0x5a, 0x46, 0x2f, 0xfb, 0x3b, 0x03, 0x32, 0x07, 0x3e, + 0x30, 0x64, 0xf0, 0x50, 0x70, 0x6e, 0x60, 0xd0, 0xc0, 0xc1, 0x18, 0xd0, + 0x7f, 0xd0, 0xbd, 0xa9, 0x17, 0x59, 0xb6, 0xd5, 0xd4, 0xd4, 0x58, 0x13, + 0x02, 0x24, 0xa2, 0x44, 0x9c, 0x55, 0xef, 0xaf, 0x7a, 0xeb, 0xbb, 0x1f, + 0x4e, 0x10, 0x11, 0x91, 0x52, 0x2a, 0xe6, 0x44, 0x44, 0xdf, 0x9c, 0xf8, + 0x8a, 0x3e, 0x74, 0x6f, 0x71, 0xb9, 0x5c, 0x2e, 0x4b, 0x77, 0x31, 0x13, + 0xea, 0x40, 0xf5, 0xfe, 0x3d, 0x1b, 0xfa, 0xf7, 0x1b, 0x58, 0x70, 0xf5, + 0x55, 0xc3, 0xa0, 0x94, 0xea, 0xe0, 0x59, 0xc3, 0xae, 0xc1, 0xd5, 0x57, + 0x0d, 0xcf, 0xd5, 0x8d, 0xe0, 0x26, 0xa7, 0xd3, 0xd9, 0x2d, 0xec, 0x6e, + 0xb7, 0x6b, 0xdf, 0xa7, 0xde, 0x75, 0xfd, 0xae, 0xc8, 0x9c, 0x3b, 0x74, + 0xc8, 0x70, 0x98, 0xa6, 0x09, 0xa5, 0x54, 0x87, 0x1c, 0xa5, 0x14, 0x46, + 0x8f, 0x1a, 0x0d, 0x21, 0xc5, 0xcc, 0x88, 0x61, 0x08, 0x00, 0xb3, 0x00, + 0x9c, 0x7f, 0xca, 0xbb, 0xd3, 0xa6, 0x8f, 0xf7, 0x79, 0xd7, 0x36, 0x1e, + 0x3f, 0x4a, 0x4a, 0x29, 0x92, 0x52, 0x92, 0x61, 0x18, 0x31, 0xe7, 0x9c, + 0xff, 0xed, 0x5b, 0x4a, 0x49, 0x4a, 0x29, 0x3a, 0x78, 0x70, 0x3f, 0xbd, + 0xfc, 0xea, 0x4b, 0x6f, 0x12, 0x11, 0x3b, 0x1f, 0x76, 0x97, 0xe4, 0xde, + 0x6a, 0xcf, 0xaa, 0xfa, 0x63, 0x75, 0xa4, 0x94, 0x22, 0xce, 0x39, 0x85, + 0xc3, 0xe1, 0x98, 0xeb, 0xba, 0x1e, 0xf3, 0xf8, 0xff, 0x9c, 0x73, 0x52, + 0x4a, 0xd1, 0xde, 0xea, 0x3d, 0xb4, 0xba, 0x78, 0xe5, 0x6b, 0x49, 0xcf, + 0x80, 0x77, 0xaf, 0xe7, 0xf9, 0x4b, 0x1d, 0xbd, 0x97, 0x8e, 0x19, 0x79, + 0x1d, 0xa4, 0x94, 0x10, 0x42, 0xc4, 0xce, 0x1b, 0x00, 0x42, 0xa1, 0x36, + 0xec, 0xae, 0xd8, 0x89, 0x40, 0xc0, 0x0f, 0xc6, 0x58, 0x2c, 0x26, 0x84, + 0x80, 0x10, 0x02, 0x77, 0xde, 0x3e, 0x01, 0x59, 0xc3, 0xae, 0x79, 0xf2, + 0x05, 0xe7, 0xb2, 0xd2, 0xce, 0x38, 0x3a, 0x15, 0xe0, 0xf1, 0xee, 0x2e, + 0x72, 0x38, 0x7a, 0xbd, 0x70, 0xfd, 0x98, 0x1b, 0x20, 0x84, 0x80, 0x61, + 0x18, 0x31, 0x02, 0xc6, 0x18, 0xc2, 0xe1, 0x10, 0xaa, 0xf6, 0x56, 0x9a, + 0xbe, 0xd6, 0x96, 0xe2, 0x8f, 0x2a, 0x76, 0x71, 0xbf, 0xff, 0xef, 0x22, + 0x38, 0xe7, 0xe0, 0x9c, 0x23, 0xe7, 0xde, 0xc9, 0x18, 0x3e, 0x7c, 0xc4, + 0x33, 0x8b, 0x96, 0x2c, 0x78, 0xb1, 0xdb, 0x02, 0x76, 0x57, 0xed, 0x2c, + 0xec, 0xd5, 0xd3, 0xb1, 0xfa, 0xc6, 0xb1, 0x37, 0x43, 0x4a, 0x01, 0xc3, + 0xd0, 0x41, 0xa4, 0x40, 0xa4, 0xa0, 0x69, 0x0c, 0x91, 0x48, 0x18, 0xde, + 0xbd, 0x15, 0x66, 0x30, 0x18, 0xc8, 0x7f, 0x62, 0xce, 0xbc, 0xc5, 0xc1, + 0xb6, 0x60, 0xee, 0xf6, 0x9d, 0xdb, 0x64, 0x30, 0x18, 0x80, 0xa6, 0xb1, + 0x58, 0x2e, 0xe7, 0x06, 0x38, 0x37, 0x90, 0x3b, 0x7d, 0x06, 0x46, 0x64, + 0x8d, 0x58, 0x34, 0x6f, 0xfe, 0x53, 0x2b, 0xff, 0xc9, 0xd5, 0xe1, 0x29, + 0xde, 0xe1, 0xd9, 0x71, 0xad, 0xa3, 0x47, 0x46, 0x63, 0xf6, 0xf8, 0xdb, + 0x20, 0x04, 0x87, 0xae, 0x47, 0x62, 0x31, 0x8b, 0xc5, 0x02, 0xce, 0x39, + 0x2a, 0xaa, 0x3c, 0x2a, 0x18, 0x0c, 0x3e, 0xf2, 0xcc, 0xbc, 0xc2, 0xcd, + 0x67, 0x63, 0xab, 0xd6, 0xac, 0x98, 0x9a, 0x9e, 0x9e, 0xee, 0x7a, 0x20, + 0x6f, 0xa6, 0xd5, 0x6e, 0xbf, 0x04, 0xa6, 0x19, 0x8d, 0xd5, 0xa5, 0xa7, + 0x5f, 0x84, 0xb4, 0xb4, 0x74, 0x94, 0xbd, 0xbe, 0x01, 0x8d, 0xc7, 0x8f, + 0x4f, 0x29, 0x7f, 0xbd, 0xfc, 0xa3, 0x4e, 0x3b, 0x10, 0x15, 0xc6, 0x13, + 0xa3, 0x46, 0x8e, 0x86, 0x94, 0x12, 0xa1, 0x70, 0x08, 0xa6, 0x52, 0x30, + 0x95, 0x02, 0x98, 0x06, 0x83, 0x73, 0x54, 0x78, 0x3d, 0x14, 0x38, 0x7d, + 0x7a, 0x76, 0x3c, 0x39, 0x00, 0x3c, 0xb7, 0x64, 0xf9, 0x2e, 0x9f, 0xcf, + 0xf7, 0xe0, 0xfb, 0x9b, 0xdf, 0x37, 0x83, 0xa1, 0x20, 0x18, 0xd3, 0x62, + 0xb5, 0xe1, 0x48, 0x18, 0x42, 0x08, 0xcc, 0xbc, 0x7f, 0x26, 0x64, 0xd4, + 0x98, 0x1e, 0x5f, 0xd7, 0xe1, 0x1d, 0x90, 0x42, 0xe6, 0x64, 0xf4, 0xe8, + 0x89, 0xb6, 0xb6, 0x20, 0x4c, 0xd3, 0x3c, 0x93, 0x64, 0xb5, 0x82, 0x73, + 0x03, 0x95, 0x55, 0x1e, 0xf2, 0xfb, 0x7d, 0x8f, 0x2f, 0x98, 0x5f, 0xf4, + 0x6e, 0x59, 0x79, 0xd9, 0x58, 0x0b, 0x43, 0xa1, 0x69, 0x9a, 0x93, 0x00, + 0x54, 0x0b, 0x69, 0x94, 0xac, 0x5a, 0xb1, 0xc6, 0xb5, 0x60, 0xf1, 0xb3, + 0x29, 0x6f, 0xbd, 0x5d, 0xbe, 0xa9, 0xe0, 0xd1, 0x02, 0xcd, 0x66, 0xbb, + 0x18, 0xd1, 0xe8, 0x99, 0x4e, 0x84, 0x42, 0x6d, 0xc8, 0xc8, 0xe8, 0x09, + 0xc9, 0xa3, 0x77, 0xc5, 0xf3, 0x75, 0xe8, 0x80, 0x90, 0xa2, 0xe2, 0xb4, + 0xdf, 0x87, 0xd4, 0xd4, 0x54, 0x90, 0x22, 0x68, 0x9a, 0x06, 0xc1, 0x05, + 0x2a, 0xbd, 0x1e, 0xb4, 0xb6, 0xfa, 0x9e, 0x5c, 0x30, 0xbf, 0xa8, 0xfc, + 0x8d, 0x37, 0xd6, 0x67, 0x65, 0xd8, 0xed, 0x9f, 0x4d, 0xc9, 0xb9, 0x2f, + 0xef, 0xb1, 0x82, 0xb9, 0xb6, 0x89, 0x13, 0xee, 0x99, 0x6c, 0xb7, 0xf7, + 0xd8, 0x57, 0x52, 0xb2, 0x26, 0xbb, 0xe4, 0xc5, 0xd2, 0xad, 0xcd, 0xcd, + 0x2d, 0xb3, 0x37, 0x6e, 0xdc, 0x48, 0xe1, 0x50, 0x18, 0x9a, 0xa6, 0x41, + 0x29, 0x05, 0x22, 0x42, 0x5d, 0xfd, 0xe7, 0x90, 0x52, 0xd6, 0x9e, 0x57, + 0x80, 0x34, 0x45, 0xf9, 0xa7, 0xfb, 0x3f, 0x51, 0xbf, 0xfe, 0xf6, 0x2b, + 0x14, 0x29, 0x9c, 0x3c, 0x79, 0x12, 0x9e, 0xca, 0x5d, 0x38, 0x75, 0xaa, + 0xe5, 0xe9, 0xc5, 0x0b, 0x8b, 0x36, 0x02, 0x40, 0x94, 0xd8, 0xa2, 0x5b, + 0xc7, 0xdf, 0x96, 0xd6, 0xfb, 0xb2, 0xde, 0x8c, 0x73, 0x03, 0xf6, 0x8b, + 0xed, 0x6c, 0xcc, 0xc8, 0xeb, 0xd2, 0xa1, 0x69, 0x0b, 0x01, 0xa0, 0x6c, + 0x7d, 0xd9, 0xbb, 0x7f, 0x36, 0xff, 0x31, 0x67, 0xdd, 0xfa, 0x52, 0x6a, + 0x6c, 0xfc, 0x12, 0x52, 0x4a, 0x7c, 0xfd, 0xed, 0xd7, 0xd8, 0xb2, 0x75, + 0x2b, 0x29, 0x06, 0x67, 0x3c, 0xdf, 0x39, 0xf7, 0x81, 0x75, 0xeb, 0x8a, + 0x87, 0x46, 0x09, 0x45, 0xca, 0x54, 0x77, 0x98, 0xa6, 0x59, 0x19, 0x55, + 0xd1, 0x0f, 0x96, 0x2d, 0x79, 0xbe, 0xe6, 0x6c, 0x7c, 0xfd, 0x86, 0x52, + 0xff, 0xc3, 0xf9, 0xb3, 0x32, 0x2c, 0x16, 0x0d, 0x42, 0x08, 0xb4, 0xfa, + 0x5a, 0xa1, 0x94, 0xc2, 0xf6, 0x1d, 0x6e, 0x31, 0x64, 0xf0, 0x57, 0xb6, + 0xdc, 0x5c, 0x97, 0x09, 0x00, 0xf9, 0xf9, 0x79, 0x43, 0x85, 0xa4, 0x67, + 0x89, 0x28, 0x07, 0x0c, 0x5e, 0x28, 0x6d, 0xb3, 0xcb, 0xe5, 0x3a, 0xd8, + 0xa5, 0x80, 0xae, 0xec, 0x95, 0x57, 0x5f, 0x7a, 0x6f, 0xdc, 0x4d, 0x37, + 0xe7, 0x67, 0x66, 0xf6, 0xd7, 0x22, 0x91, 0x30, 0xf4, 0x88, 0x8e, 0xdf, + 0x9b, 0x7f, 0xa7, 0xa3, 0xf5, 0x0d, 0x7b, 0x8a, 0x96, 0x2c, 0xbb, 0x27, + 0x11, 0xac, 0xa4, 0x16, 0x12, 0x5d, 0x8a, 0xe2, 0xc3, 0x47, 0x6a, 0x79, + 0xe3, 0xf1, 0x63, 0xa6, 0xcf, 0xd7, 0x8a, 0xa6, 0x5f, 0x7e, 0x52, 0xf5, + 0xf5, 0x75, 0x7a, 0x84, 0xf3, 0xb5, 0x89, 0x62, 0x25, 0xbd, 0x92, 0xad, + 0x5c, 0xb3, 0x72, 0x6c, 0x8a, 0xc6, 0x0a, 0xa5, 0x8c, 0x4e, 0x62, 0x8c, + 0x55, 0x0b, 0x83, 0x97, 0xac, 0x58, 0xb1, 0xba, 0xb6, 0xeb, 0xca, 0x0b, + 0x24, 0xe0, 0x42, 0x59, 0x62, 0xeb, 0x53, 0x9c, 0x2d, 0x5f, 0x5e, 0x34, + 0xd6, 0x62, 0xb5, 0x16, 0x4a, 0x53, 0x4d, 0x62, 0x0c, 0xd5, 0x5c, 0xc8, + 0x92, 0xe2, 0xd5, 0xc5, 0xff, 0x4f, 0x07, 0x96, 0x3a, 0x97, 0x66, 0xf5, + 0x71, 0x5c, 0xda, 0x30, 0x7d, 0xda, 0x8c, 0xb4, 0x3e, 0x7d, 0xfa, 0xb2, + 0xa6, 0xa6, 0x9f, 0x68, 0xfb, 0x4e, 0xb7, 0xd1, 0xdc, 0xd2, 0x72, 0x77, + 0xe9, 0xda, 0xd2, 0x9a, 0x44, 0xb0, 0x92, 0x1a, 0x42, 0x0b, 0xb4, 0x45, + 0x39, 0x39, 0x53, 0xd3, 0xfa, 0xf6, 0xbd, 0x82, 0x71, 0xce, 0xe1, 0x70, + 0x38, 0x58, 0xf6, 0xad, 0xd9, 0xe9, 0x9a, 0xc6, 0x16, 0x26, 0x8a, 0x95, + 0x94, 0x80, 0xa8, 0x94, 0x53, 0x1c, 0x3d, 0x1d, 0x4c, 0xd7, 0x23, 0x90, + 0x92, 0x23, 0x10, 0xf4, 0xc3, 0xe1, 0x70, 0x30, 0x61, 0x18, 0xb7, 0xe7, + 0xe5, 0xe5, 0x59, 0x2e, 0xb8, 0x00, 0xc6, 0x98, 0xc6, 0x18, 0xb3, 0x32, + 0xc6, 0x52, 0x18, 0x63, 0x69, 0x52, 0x46, 0x2b, 0x8f, 0x35, 0x1e, 0x53, + 0x81, 0x40, 0x00, 0x2d, 0x2d, 0x2d, 0x08, 0x87, 0x23, 0x38, 0xf1, 0xdd, + 0xb7, 0x44, 0x44, 0x07, 0xdc, 0x6e, 0x77, 0x4a, 0x7b, 0x9e, 0x95, 0x31, + 0xd6, 0x25, 0x7e, 0xa7, 0x43, 0xc8, 0x18, 0x63, 0x00, 0x2c, 0xed, 0x22, + 0xcf, 0xba, 0x0d, 0x80, 0xed, 0x8b, 0xba, 0xba, 0x0f, 0x34, 0x86, 0xe9, + 0xa7, 0xae, 0x6f, 0x4e, 0xc9, 0xcc, 0xec, 0xa7, 0xfd, 0xfc, 0x4b, 0x93, + 0xaa, 0xad, 0x3d, 0x22, 0x7e, 0xf8, 0xfe, 0xfb, 0xad, 0x00, 0x2e, 0x07, + 0xa0, 0x03, 0x08, 0x03, 0x50, 0x8c, 0x31, 0x05, 0x40, 0x01, 0x30, 0xe9, + 0x1c, 0x03, 0xd7, 0xa9, 0x00, 0x22, 0xa2, 0xf6, 0x62, 0x86, 0x33, 0x9b, + 0x2d, 0x01, 0x10, 0x00, 0xac, 0x87, 0x0e, 0x1c, 0xfa, 0x26, 0x55, 0xb3, + 0x3c, 0x74, 0xda, 0xef, 0x2f, 0xb0, 0x5a, 0xac, 0xd9, 0x42, 0xc8, 0xc3, + 0x4d, 0x3f, 0xfe, 0xf8, 0xf6, 0x81, 0x03, 0x9f, 0x1d, 0x6e, 0xcf, 0x11, + 0x71, 0x35, 0x04, 0x40, 0x9d, 0x8b, 0x1c, 0x48, 0xf0, 0x16, 0xb4, 0x77, + 0x25, 0xde, 0xe3, 0xcf, 0xdb, 0x8c, 0x27, 0xed, 0x8c, 0xf0, 0x5f, 0x09, + 0xf8, 0x2f, 0x2c, 0xa9, 0x5b, 0x70, 0x21, 0xed, 0x2f, 0xc1, 0x0b, 0x20, + 0xa9, 0x9d, 0x93, 0x25, 0x29, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, + 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int go_up_png_len = 1673; +unsigned char go_down_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x13, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x4f, 0x70, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, + 0x76, 0x65, 0x3e, 0x67, 0xba, 0x0c, 0x00, 0x00, 0x06, 0x22, 0x49, 0x44, + 0x41, 0x54, 0x58, 0x85, 0xc5, 0x57, 0x6b, 0x70, 0x54, 0x45, 0x16, 0xfe, + 0xfa, 0x3e, 0x32, 0x99, 0x41, 0x32, 0x99, 0x41, 0x89, 0xc1, 0x72, 0x6b, + 0x2d, 0xcb, 0x07, 0xb0, 0xba, 0x3f, 0x76, 0xb1, 0xd0, 0x5a, 0x75, 0xab, + 0xd6, 0xc7, 0x2e, 0x12, 0x85, 0x8a, 0x41, 0x31, 0xa5, 0x31, 0x24, 0x24, + 0xc1, 0x84, 0x09, 0x90, 0x51, 0x16, 0x75, 0xd1, 0x20, 0x42, 0x2d, 0x89, + 0xae, 0xa8, 0x71, 0x42, 0x06, 0x82, 0x62, 0x45, 0x19, 0x06, 0x14, 0x45, + 0x57, 0x01, 0x63, 0x45, 0xb7, 0x90, 0x97, 0x29, 0x25, 0x0a, 0x81, 0xc4, + 0x37, 0x43, 0x32, 0x93, 0xf7, 0x4c, 0x1e, 0x73, 0x73, 0xef, 0xed, 0x3e, + 0xfb, 0x23, 0x0f, 0xc2, 0x2b, 0x66, 0x52, 0xae, 0xdb, 0x55, 0xe7, 0xcf, + 0xed, 0x3e, 0xdf, 0xf7, 0x75, 0x9f, 0xd3, 0x7d, 0xce, 0x65, 0x44, 0x84, + 0xf1, 0x8c, 0xea, 0xea, 0x0f, 0x67, 0x90, 0xc4, 0x8a, 0x88, 0x28, 0x85, + 0x81, 0xed, 0x21, 0x2e, 0x4a, 0x6f, 0xbf, 0xfd, 0x6f, 0xfb, 0x62, 0xc5, + 0x61, 0xe3, 0x11, 0x50, 0x5d, 0xfd, 0xc1, 0x34, 0x8b, 0x6d, 0x42, 0xed, + 0xf4, 0xa9, 0xbf, 0xb3, 0x24, 0x4c, 0xb4, 0xb3, 0xd6, 0xd6, 0x10, 0x1d, + 0x6f, 0x3c, 0xa6, 0xf5, 0xf4, 0xf6, 0xcc, 0x9a, 0xfd, 0xd7, 0x39, 0x35, + 0xb1, 0x60, 0x49, 0x31, 0xb3, 0x03, 0x10, 0x12, 0x7b, 0x6c, 0xea, 0xd5, + 0xd3, 0x2c, 0x09, 0x13, 0xed, 0x4c, 0xd3, 0xa2, 0x50, 0x14, 0x95, 0x25, + 0x27, 0x5d, 0x16, 0x0f, 0xc2, 0xa3, 0xb1, 0x62, 0x8d, 0x4b, 0x00, 0x88, + 0xe6, 0x58, 0x2c, 0x16, 0xa6, 0x69, 0x7d, 0x30, 0x0c, 0x1d, 0xe1, 0x48, + 0x17, 0x64, 0x45, 0x66, 0x86, 0x61, 0xde, 0xe6, 0xf7, 0xfb, 0xe5, 0xff, + 0xb9, 0x00, 0xd3, 0xe4, 0x3b, 0x4f, 0x06, 0x7e, 0x12, 0x5d, 0xe1, 0x30, + 0xda, 0xda, 0xdb, 0xd0, 0xdb, 0xdb, 0x87, 0xf6, 0x8e, 0x56, 0x12, 0x42, + 0x7c, 0x94, 0x96, 0x96, 0xc6, 0x63, 0xc1, 0x52, 0xc6, 0x23, 0x40, 0xe7, + 0x7c, 0xdd, 0x77, 0x3f, 0x7c, 0x3b, 0xcf, 0x99, 0xe8, 0x8c, 0xb3, 0xc4, + 0x5b, 0xe4, 0xbe, 0x68, 0x8f, 0x08, 0x06, 0x5b, 0x34, 0x93, 0x1b, 0x25, + 0xb1, 0x62, 0x8d, 0x2b, 0x09, 0x01, 0xe0, 0xad, 0x5d, 0xbe, 0x19, 0x10, + 0x52, 0x91, 0x10, 0x22, 0x85, 0x04, 0xf6, 0xe8, 0x5c, 0x2b, 0x4d, 0x9f, + 0x97, 0xf1, 0xeb, 0xdc, 0x82, 0x5f, 0x72, 0x8c, 0x2b, 0x04, 0x00, 0xe0, + 0xf3, 0x55, 0xcd, 0x20, 0x09, 0x45, 0x5c, 0x98, 0x29, 0x24, 0xb0, 0x87, + 0xeb, 0x66, 0x69, 0x46, 0x46, 0xd6, 0xaf, 0x73, 0x02, 0x55, 0xfe, 0xaa, + 0x69, 0x13, 0x6d, 0xd6, 0xda, 0x9b, 0x66, 0xde, 0x6c, 0x71, 0x24, 0x3a, + 0x59, 0x53, 0xd3, 0x29, 0xda, 0x7f, 0xf0, 0x33, 0x2d, 0xd2, 0xd5, 0x35, + 0x2b, 0x3b, 0x3b, 0xaf, 0x26, 0x16, 0xac, 0xf1, 0x5d, 0x43, 0xce, 0x1f, + 0xbb, 0xe1, 0x0f, 0x33, 0x2d, 0x4e, 0x87, 0x93, 0x69, 0x9a, 0x06, 0xab, + 0xd5, 0xca, 0xae, 0xbd, 0xe6, 0xda, 0x78, 0x92, 0x63, 0x7f, 0x07, 0xce, + 0x1b, 0x02, 0xff, 0xdb, 0x6f, 0xde, 0x28, 0x0c, 0x91, 0x61, 0x0a, 0x9e, + 0xc2, 0x05, 0xff, 0x37, 0x27, 0xfc, 0x2b, 0x33, 0x3d, 0xf3, 0xd8, 0xd0, + 0xbc, 0xc9, 0xcd, 0x39, 0x36, 0xdb, 0x04, 0xd6, 0xdb, 0xdb, 0x0b, 0xd3, + 0x34, 0xd0, 0x15, 0xee, 0x44, 0xbc, 0x35, 0x9e, 0x99, 0xba, 0x71, 0x9b, + 0xdf, 0xef, 0x97, 0x87, 0xae, 0x62, 0xd1, 0xdf, 0x8b, 0x6e, 0x22, 0xd3, + 0x4c, 0xe7, 0x9c, 0xdf, 0xc3, 0x05, 0xff, 0x84, 0xeb, 0x58, 0xeb, 0xf1, + 0x78, 0xbe, 0x3e, 0x83, 0x8c, 0x88, 0xce, 0xb0, 0xaa, 0xed, 0x55, 0x57, + 0x7d, 0xb0, 0xfb, 0x3d, 0xb3, 0xb3, 0xab, 0x83, 0x38, 0xe7, 0xd4, 0xd1, + 0xd9, 0x41, 0x3b, 0xdf, 0xd9, 0x21, 0x3c, 0x1b, 0x5e, 0x74, 0x0d, 0xad, + 0xa9, 0xdc, 0xec, 0x7d, 0xb5, 0xb6, 0xf6, 0x30, 0x3f, 0x19, 0xf8, 0x91, + 0x4e, 0x34, 0xd4, 0xd3, 0x91, 0x23, 0x5f, 0xd0, 0xc7, 0x9f, 0xec, 0x15, + 0x2f, 0x7b, 0xd6, 0xbf, 0x3f, 0xb4, 0xa6, 0xa8, 0xc8, 0x95, 0x53, 0xfa, + 0x7c, 0x89, 0x68, 0xef, 0x68, 0x27, 0x21, 0x38, 0x45, 0x22, 0x61, 0x5a, + 0xb3, 0xf6, 0x19, 0x91, 0x91, 0x95, 0xfe, 0x97, 0x91, 0x7c, 0xe7, 0x84, + 0x80, 0xf7, 0xeb, 0x4f, 0xdf, 0xf0, 0xc7, 0x99, 0xb2, 0xcd, 0x6a, 0x1b, + 0xd8, 0x59, 0x7c, 0x3c, 0x66, 0xdf, 0x75, 0x0f, 0x73, 0x38, 0x2e, 0x59, + 0xff, 0xfc, 0x0b, 0x25, 0x8b, 0x00, 0x40, 0x27, 0xbe, 0xee, 0xcb, 0xba, + 0xda, 0xfe, 0x13, 0x0d, 0xc7, 0x79, 0x38, 0x12, 0x46, 0x53, 0x28, 0x20, + 0x8e, 0x1e, 0x3d, 0x1a, 0x8d, 0x6a, 0x7a, 0x09, 0x00, 0x14, 0x2e, 0x5b, + 0x9c, 0x39, 0x79, 0x4a, 0x72, 0xb9, 0x6b, 0x71, 0x21, 0xb3, 0x5a, 0xad, + 0x68, 0xef, 0x68, 0x87, 0xa2, 0x28, 0x58, 0xb4, 0xa8, 0x80, 0x99, 0xfd, + 0x3c, 0x67, 0x24, 0xdf, 0x39, 0x02, 0x0c, 0xc3, 0xb8, 0xc5, 0x6e, 0xb7, + 0xa3, 0xbb, 0xa7, 0x1b, 0x9a, 0xa6, 0xa1, 0xb3, 0xb3, 0x03, 0x51, 0x2d, + 0x8a, 0xd4, 0xb9, 0xf7, 0x62, 0xd2, 0xa4, 0x8b, 0xcb, 0xd6, 0xfe, 0x73, + 0xd5, 0xc2, 0xdc, 0xcc, 0xdc, 0x63, 0x5a, 0x9f, 0x76, 0x6b, 0x43, 0xc3, + 0x89, 0xed, 0x07, 0x0e, 0xec, 0xef, 0x6b, 0x6c, 0xfc, 0xe6, 0xdd, 0x68, + 0xbf, 0x7e, 0x87, 0x7b, 0x89, 0xbb, 0xc6, 0xb5, 0x34, 0x3f, 0x3d, 0x69, + 0x72, 0xd2, 0xc6, 0xa5, 0x8b, 0x97, 0x31, 0xbd, 0x5f, 0x47, 0x67, 0x67, + 0x07, 0x74, 0x5d, 0x47, 0x38, 0x12, 0xc6, 0x45, 0x13, 0x2e, 0x82, 0x6e, + 0x18, 0xb3, 0x8a, 0x8b, 0x8b, 0x4f, 0xf3, 0x9e, 0x1d, 0x82, 0x72, 0x6f, + 0x99, 0xa7, 0xb5, 0xb5, 0x85, 0xba, 0xbb, 0xbb, 0xe9, 0xa7, 0x93, 0x3f, + 0x0e, 0x5b, 0x77, 0x77, 0x84, 0x74, 0x5d, 0x27, 0x4f, 0x79, 0x99, 0x58, + 0xb9, 0x72, 0x45, 0xe6, 0xd9, 0x7e, 0x44, 0x84, 0x7c, 0x57, 0xde, 0xbc, + 0xe2, 0xd5, 0x2b, 0xcd, 0xfe, 0xfe, 0x7e, 0xea, 0xee, 0x39, 0xd3, 0xbf, + 0x39, 0xd8, 0x44, 0x1f, 0xd7, 0x54, 0x53, 0xda, 0x7d, 0xa9, 0x5b, 0x47, + 0x0d, 0x81, 0xa1, 0xe9, 0xbe, 0x3d, 0x7b, 0x3f, 0x44, 0x4f, 0x6f, 0x0f, + 0x24, 0x49, 0x02, 0xe7, 0x1c, 0x9c, 0x73, 0xb4, 0xb5, 0xb7, 0x41, 0xd3, + 0x34, 0x2c, 0xc8, 0xcc, 0x66, 0x76, 0xe7, 0xa4, 0x8d, 0xee, 0xe5, 0xee, + 0x07, 0x47, 0xfa, 0x2d, 0x2a, 0xc8, 0x99, 0x9b, 0x68, 0x77, 0x56, 0x2d, + 0x77, 0x3f, 0x2e, 0xeb, 0x86, 0x8e, 0xb6, 0xb6, 0xd6, 0x61, 0x5f, 0xc6, + 0x24, 0xe8, 0xba, 0x81, 0xf7, 0x76, 0xed, 0x02, 0x23, 0x7a, 0x65, 0xd4, + 0x10, 0x14, 0x14, 0x2c, 0xa9, 0x09, 0x04, 0x4f, 0xb9, 0xdf, 0xdd, 0xf5, + 0x36, 0x4c, 0xd3, 0x84, 0xc4, 0x24, 0x70, 0xd3, 0x04, 0x37, 0x4d, 0xb4, + 0xb4, 0x04, 0xa1, 0x69, 0x1a, 0xf2, 0xf3, 0x0a, 0x24, 0xa7, 0x23, 0x71, + 0xb3, 0xcb, 0x95, 0x3f, 0x1f, 0x00, 0xf2, 0xf2, 0xb2, 0x53, 0x12, 0x13, + 0x1c, 0xbe, 0x27, 0x56, 0x3c, 0xa9, 0x18, 0x86, 0x8e, 0x50, 0xb0, 0x79, + 0xd8, 0x47, 0x62, 0x0c, 0x82, 0x9b, 0x28, 0x7b, 0xe5, 0x25, 0x04, 0x4e, + 0x05, 0x56, 0xfb, 0x7c, 0x3b, 0x3e, 0x1d, 0xc9, 0x77, 0xc1, 0x87, 0x68, + 0xf5, 0x9a, 0xa7, 0x56, 0x24, 0xda, 0x9d, 0x6b, 0x66, 0xcf, 0xbe, 0x1b, + 0x44, 0x80, 0x61, 0xe8, 0xc3, 0x73, 0x97, 0x5e, 0x9a, 0x0c, 0x55, 0x55, + 0xf1, 0xec, 0x9a, 0x55, 0xbc, 0x25, 0x14, 0x7a, 0x2e, 0xc1, 0x9e, 0x58, + 0xb8, 0xaa, 0x78, 0xb5, 0x45, 0x70, 0x8e, 0xa6, 0xe6, 0xa6, 0xe1, 0x75, + 0xaa, 0xa2, 0x82, 0x31, 0x86, 0x72, 0x6f, 0x39, 0xbe, 0xff, 0xf6, 0xbb, + 0x75, 0xbe, 0xad, 0xfe, 0xe5, 0x67, 0xf3, 0x8c, 0xfa, 0x12, 0x3e, 0xf1, + 0x8f, 0xe5, 0x4f, 0x5d, 0x7c, 0xc9, 0xe4, 0xa7, 0x53, 0xe7, 0xde, 0x0b, + 0x80, 0x60, 0x18, 0xc6, 0xf0, 0x5c, 0x52, 0x52, 0x32, 0x64, 0x49, 0x42, + 0x49, 0xe9, 0x3a, 0xb8, 0x8b, 0x1e, 0x05, 0x11, 0x10, 0x0c, 0x9d, 0x26, + 0x57, 0x14, 0x05, 0x92, 0x24, 0x63, 0x43, 0x45, 0x39, 0x1a, 0x1b, 0x1a, + 0x5f, 0xf0, 0x6d, 0xf5, 0x2f, 0x3d, 0x1f, 0xc7, 0xcf, 0x3e, 0xc5, 0xcb, + 0xdc, 0x4b, 0x9e, 0x4d, 0x4e, 0x9e, 0xf2, 0xf8, 0xfc, 0xfb, 0xef, 0x07, + 0x11, 0x60, 0x9a, 0xe6, 0x69, 0x11, 0x93, 0x93, 0x60, 0xb5, 0xda, 0x10, + 0xd5, 0xa2, 0x08, 0x85, 0x82, 0xc3, 0xdf, 0x65, 0x59, 0x81, 0x2c, 0xcb, + 0xd8, 0x50, 0xe1, 0x41, 0x7d, 0xfd, 0xf1, 0x32, 0xbf, 0x6f, 0x7b, 0xc1, + 0x85, 0xf0, 0xc7, 0x54, 0x0b, 0x1e, 0xc9, 0xcf, 0x2b, 0xf9, 0xcd, 0xe5, + 0x97, 0xbb, 0x1f, 0xca, 0x78, 0x18, 0x20, 0xc0, 0xe4, 0xa7, 0x45, 0x24, + 0x24, 0xd8, 0x11, 0x89, 0x84, 0x47, 0x90, 0xcb, 0x90, 0x24, 0x19, 0x5e, + 0xef, 0x06, 0x7c, 0x75, 0xec, 0x6b, 0xef, 0xf6, 0xad, 0x3b, 0x72, 0x69, + 0x14, 0x92, 0x31, 0x17, 0xa3, 0x05, 0x59, 0x0f, 0xad, 0xff, 0xed, 0x15, + 0x57, 0xba, 0x72, 0x16, 0xe6, 0x02, 0x20, 0x70, 0x7e, 0x6e, 0xe3, 0x23, + 0x4b, 0x32, 0x24, 0x59, 0x42, 0x85, 0xb7, 0x02, 0x75, 0x75, 0x47, 0x5e, + 0xf5, 0xfb, 0x76, 0x2c, 0x18, 0x8d, 0x1c, 0x88, 0xa1, 0x18, 0x55, 0x6e, + 0xda, 0x52, 0x58, 0x5f, 0x5f, 0xef, 0xa9, 0xa8, 0xf0, 0x40, 0x96, 0x65, + 0xc4, 0xa9, 0x71, 0x90, 0x65, 0x79, 0xd8, 0x54, 0x55, 0x85, 0x1a, 0xa7, + 0xa2, 0xb2, 0x72, 0x13, 0xea, 0xea, 0x8e, 0xbc, 0x31, 0x7d, 0xea, 0x75, + 0x59, 0x3f, 0x47, 0x0e, 0xc4, 0x58, 0x8e, 0x19, 0x63, 0x2c, 0xed, 0xbe, + 0x54, 0xef, 0xf5, 0xd7, 0xff, 0x3e, 0xeb, 0x91, 0xbc, 0x7c, 0x00, 0x04, + 0x21, 0x04, 0x24, 0x49, 0x82, 0x24, 0x49, 0xd8, 0xb8, 0xc9, 0x8b, 0xc3, + 0x87, 0x0f, 0xf9, 0x49, 0x48, 0xf3, 0xb7, 0x6d, 0xdb, 0x36, 0xa6, 0xde, + 0x30, 0xa6, 0x72, 0x4c, 0x44, 0x34, 0x7d, 0xea, 0x75, 0x39, 0x5f, 0xd5, + 0x7d, 0xb9, 0xa5, 0x62, 0x63, 0xf9, 0xc0, 0x49, 0xc4, 0xc5, 0x41, 0x51, + 0x54, 0x6c, 0x7e, 0x6d, 0x33, 0x0e, 0x1d, 0x3e, 0xb4, 0xb3, 0x25, 0xd4, + 0xfe, 0xc0, 0x58, 0xc9, 0x81, 0x31, 0x76, 0x44, 0x8c, 0x31, 0x69, 0x50, + 0x2c, 0x03, 0x20, 0x39, 0x1c, 0x0e, 0x97, 0x29, 0xc4, 0x04, 0x45, 0xf1, + 0xa6, 0xe6, 0x64, 0xe7, 0x62, 0xcb, 0xeb, 0xaf, 0x61, 0xdf, 0xbe, 0xff, + 0xec, 0x3e, 0xb8, 0xff, 0xf3, 0xac, 0x40, 0x20, 0xa0, 0x30, 0xc6, 0x18, + 0x00, 0x02, 0x20, 0x88, 0x48, 0x8c, 0x8a, 0x7d, 0xa1, 0x10, 0x0c, 0x82, + 0xc8, 0x83, 0xc4, 0x43, 0x66, 0x1b, 0x34, 0xab, 0xaa, 0xaa, 0x13, 0xef, + 0x9c, 0x75, 0x47, 0xc9, 0x65, 0x53, 0xa6, 0xfc, 0xb9, 0xb9, 0x39, 0x78, + 0x70, 0xef, 0xee, 0x8f, 0x0a, 0xa3, 0xd1, 0x68, 0x17, 0x80, 0xe8, 0xa0, + 0xf5, 0x02, 0x10, 0x23, 0x8c, 0x9f, 0x2f, 0x27, 0x46, 0xcd, 0x81, 0xc1, + 0x9d, 0x8f, 0x14, 0xa1, 0x0e, 0x0a, 0x88, 0x07, 0x60, 0xb1, 0xd9, 0x6c, + 0xb6, 0x9b, 0x6f, 0xfd, 0xd3, 0xc2, 0x03, 0x9f, 0x1d, 0xac, 0x0c, 0x87, + 0xc3, 0x3d, 0x00, 0xb4, 0x41, 0x8b, 0x02, 0xd0, 0xcf, 0x22, 0x3f, 0xef, + 0x49, 0xc4, 0x9c, 0x84, 0x18, 0x08, 0xc3, 0x90, 0x8d, 0xfc, 0x0b, 0xe2, + 0x18, 0x38, 0x76, 0xc2, 0x40, 0xba, 0x8c, 0x09, 0xf8, 0xff, 0xde, 0x96, + 0x8f, 0xaf, 0x29, 0xfd, 0x05, 0xc7, 0x7f, 0x01, 0x0d, 0x13, 0x7d, 0x85, + 0x4b, 0xbd, 0xae, 0xde, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, + 0xae, 0x42, 0x60, 0x82 +}; +unsigned int go_down_png_len = 1732; +unsigned char folder_new_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x00, 0x0e, 0x74, 0x45, 0x58, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x00, 0x46, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x21, 0x54, 0xaa, 0x60, + 0x41, 0x00, 0x00, 0x00, 0x17, 0x74, 0x45, 0x58, 0x74, 0x41, 0x75, 0x74, + 0x68, 0x6f, 0x72, 0x00, 0x4c, 0x61, 0x70, 0x6f, 0x20, 0x43, 0x61, 0x6c, + 0x61, 0x6d, 0x61, 0x6e, 0x64, 0x72, 0x65, 0x69, 0xdf, 0x91, 0x1a, 0x2a, + 0x00, 0x00, 0x00, 0x29, 0x74, 0x45, 0x58, 0x74, 0x44, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x42, 0x61, 0x73, 0x65, + 0x64, 0x20, 0x6f, 0x66, 0x20, 0x4a, 0x61, 0x6b, 0x75, 0x62, 0x20, 0x53, + 0x74, 0x65, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x64, 0x65, 0x73, 0x69, 0x67, + 0x6e, 0xa0, 0x84, 0x05, 0x73, 0x00, 0x00, 0x04, 0xda, 0x49, 0x44, 0x41, + 0x54, 0x58, 0xc3, 0xcd, 0x96, 0x4d, 0x8c, 0x14, 0x55, 0x10, 0xc7, 0x7f, + 0xf5, 0xba, 0xa7, 0x67, 0x67, 0x66, 0xbf, 0x70, 0x65, 0x05, 0x54, 0x40, + 0x20, 0x0b, 0xca, 0xa2, 0x22, 0x86, 0x84, 0x68, 0x22, 0xd1, 0x68, 0xa2, + 0x89, 0x1c, 0x4c, 0xbc, 0xe8, 0x41, 0x21, 0xf1, 0xa0, 0x26, 0x26, 0x7a, + 0xf3, 0x60, 0x00, 0x0f, 0x1e, 0x38, 0x9a, 0x78, 0xf0, 0x60, 0x4c, 0x4c, + 0x3c, 0xa8, 0x17, 0x0e, 0x1e, 0x94, 0x8b, 0x24, 0xa2, 0xc1, 0xf8, 0x15, + 0x40, 0x3e, 0x25, 0xa8, 0x51, 0xcc, 0xae, 0xeb, 0xc2, 0xb2, 0xbb, 0x33, + 0xd3, 0xd3, 0xfd, 0x5e, 0x95, 0x87, 0x99, 0x9d, 0x65, 0xd8, 0x55, 0x48, + 0x58, 0x36, 0x56, 0x3a, 0xe9, 0xee, 0x4a, 0xbf, 0xfa, 0xff, 0xfb, 0xff, + 0xaa, 0xea, 0x95, 0x70, 0x83, 0xcc, 0x6c, 0x5b, 0xa9, 0x56, 0x9b, 0xe8, + 0x77, 0xae, 0x2b, 0x51, 0x4d, 0xb3, 0x72, 0x79, 0x6a, 0x42, 0xe4, 0x8f, + 0xfa, 0x95, 0xdf, 0xc9, 0x82, 0x03, 0x5f, 0x58, 0xd3, 0x57, 0x2b, 0x96, + 0x86, 0x42, 0x70, 0xb7, 0x3a, 0xb4, 0x5f, 0xa0, 0xe0, 0x1c, 0x99, 0xaa, + 0x4d, 0x10, 0xb9, 0xf3, 0x69, 0x9a, 0x9e, 0x19, 0x18, 0x38, 0x3b, 0x79, + 0x43, 0x08, 0x54, 0xab, 0x9b, 0x57, 0x44, 0xf8, 0x7b, 0xd5, 0x74, 0xbd, + 0x1a, 0xab, 0x9c, 0xd9, 0x00, 0x52, 0x28, 0x22, 0x3e, 0x55, 0x63, 0xdc, + 0x09, 0xbf, 0x59, 0xb0, 0xd3, 0x16, 0xc9, 0x8f, 0xdd, 0xdd, 0xc7, 0x47, + 0x00, 0xe2, 0x85, 0x02, 0xbf, 0x78, 0x71, 0x75, 0x3f, 0x3e, 0xdf, 0x6c, + 0xb1, 0xdd, 0x67, 0x66, 0x9b, 0x04, 0x5b, 0x67, 0x52, 0x5a, 0xde, 0x55, + 0xde, 0x3f, 0x98, 0xa5, 0xaf, 0xfc, 0x2d, 0x76, 0xfa, 0x0f, 0x35, 0x39, + 0x2b, 0x4e, 0xba, 0x25, 0x18, 0x66, 0xeb, 0x0f, 0x89, 0x9c, 0x9e, 0x6a, + 0x13, 0x78, 0x73, 0xd7, 0x3d, 0x9f, 0x0a, 0x3c, 0x71, 0x35, 0x55, 0x04, + 0x72, 0x8c, 0xcf, 0xbc, 0x8b, 0x5e, 0xdb, 0xf3, 0xde, 0x0f, 0x67, 0x67, + 0xfc, 0x45, 0x57, 0x19, 0x52, 0xb1, 0xf5, 0xa6, 0xb6, 0x09, 0xd3, 0xfb, + 0xc5, 0xf5, 0xae, 0x2a, 0x24, 0xaf, 0xaa, 0x73, 0xb7, 0xbb, 0xa4, 0xf8, + 0xfa, 0xcd, 0x69, 0xfd, 0xe5, 0xa5, 0x42, 0xb5, 0x4f, 0x10, 0x53, 0x64, + 0xba, 0x76, 0xa9, 0x30, 0x06, 0x7c, 0xd7, 0x06, 0x7b, 0x73, 0xe7, 0x3d, + 0xb6, 0xe5, 0x91, 0x67, 0x31, 0x0d, 0x4d, 0x20, 0x91, 0x56, 0x32, 0xd9, + 0x95, 0xd9, 0xc5, 0xe8, 0xef, 0x27, 0xeb, 0xe7, 0xcf, 0x1d, 0x4b, 0xcd, + 0xec, 0xc5, 0xdd, 0xef, 0x1f, 0xf9, 0x68, 0x64, 0xe4, 0xee, 0x4a, 0x4f, + 0xd9, 0x1e, 0x35, 0xd1, 0xed, 0x91, 0x5b, 0xfa, 0xb0, 0xb8, 0xcd, 0xc3, + 0x71, 0xbc, 0xc3, 0x47, 0xf1, 0x83, 0x31, 0xc4, 0x02, 0xa0, 0x7a, 0x38, + 0xf7, 0xd9, 0xfe, 0x58, 0xc3, 0xa9, 0x13, 0x41, 0xcf, 0x1c, 0x10, 0xdc, + 0xc1, 0x72, 0x4f, 0xf5, 0x40, 0x9b, 0xc0, 0xde, 0x9d, 0x77, 0xdb, 0xf0, + 0xb6, 0x27, 0x99, 0xbc, 0xf0, 0xd7, 0x55, 0xc4, 0x16, 0x92, 0xae, 0x32, + 0x91, 0x13, 0xce, 0x9d, 0xf8, 0x7a, 0x3c, 0x6f, 0xd4, 0x07, 0xba, 0xfb, + 0x60, 0xf5, 0x06, 0x63, 0xe5, 0x7a, 0x65, 0x78, 0xeb, 0x6e, 0xba, 0xca, + 0x4f, 0xff, 0xeb, 0x6a, 0x9f, 0xff, 0xcc, 0x99, 0xa3, 0x4f, 0x9d, 0x5b, + 0xb5, 0xc1, 0xf6, 0x52, 0x95, 0xcf, 0xe3, 0xcb, 0x7e, 0x0c, 0x55, 0x50, + 0xb5, 0x7f, 0x29, 0x2b, 0x00, 0xc3, 0xcc, 0xc8, 0xa7, 0x26, 0x89, 0x0b, + 0x09, 0x6b, 0x37, 0x3d, 0x3c, 0x50, 0x2c, 0x95, 0x29, 0x55, 0xaa, 0x0c, + 0xdc, 0x32, 0xc2, 0x4d, 0x83, 0x23, 0x34, 0xd2, 0x7d, 0x14, 0x8a, 0xc3, + 0x44, 0xd1, 0x9d, 0x73, 0x63, 0xe8, 0x18, 0xf5, 0xe9, 0x97, 0xa8, 0x57, + 0x6d, 0x8d, 0x28, 0x89, 0xf4, 0x90, 0x74, 0x10, 0x68, 0x64, 0x19, 0x69, + 0x23, 0x9b, 0xbb, 0x10, 0x08, 0x41, 0x69, 0x64, 0x39, 0xf5, 0x34, 0x23, + 0xf7, 0xda, 0x22, 0xf3, 0x27, 0x00, 0xdd, 0xbd, 0x9e, 0xb5, 0x43, 0x75, + 0x82, 0xab, 0x51, 0xe9, 0x6b, 0x10, 0x17, 0xdf, 0xa6, 0x52, 0x79, 0x07, + 0x70, 0x1d, 0x71, 0x1a, 0xe9, 0xbb, 0xa4, 0xe9, 0x5f, 0x68, 0x0e, 0xe6, + 0xc8, 0x6c, 0x8a, 0xac, 0x83, 0x40, 0xb5, 0x5a, 0xa7, 0x5a, 0x4b, 0xe7, + 0xca, 0x16, 0x94, 0x5a, 0xbd, 0xc1, 0x92, 0xde, 0x2e, 0x86, 0x56, 0x0e, + 0xe0, 0xa4, 0x53, 0x25, 0x17, 0x29, 0x83, 0xfd, 0x97, 0xa8, 0xc4, 0x8e, + 0x90, 0x05, 0x84, 0x53, 0xf3, 0xe6, 0xb2, 0xc8, 0x28, 0x3e, 0x2d, 0x52, + 0x2e, 0xf7, 0x72, 0xfc, 0xab, 0xca, 0xf3, 0x5b, 0x1f, 0x3b, 0xfa, 0xf1, + 0x2c, 0x01, 0x8c, 0xf3, 0xa3, 0xe3, 0x5c, 0x18, 0xfb, 0x7b, 0x8e, 0xf4, + 0x86, 0xb2, 0x61, 0xf5, 0x20, 0x6b, 0xd6, 0xdd, 0xc5, 0x03, 0x8f, 0x3f, + 0x43, 0x5c, 0x28, 0xce, 0x93, 0x1a, 0xa7, 0x11, 0x77, 0x02, 0xdc, 0xc9, + 0x16, 0x41, 0x41, 0xf5, 0x04, 0xea, 0xbf, 0x45, 0xdc, 0x1d, 0x44, 0xf1, + 0x83, 0x88, 0x0c, 0xd1, 0xb3, 0x24, 0xa3, 0xa7, 0x77, 0x03, 0x87, 0x3e, + 0xfd, 0x66, 0xbb, 0xc8, 0xaf, 0x69, 0x0c, 0xf0, 0xe1, 0xbe, 0xe7, 0xde, + 0x0d, 0x6a, 0x4d, 0xce, 0xcb, 0x6e, 0x9b, 0x13, 0x3b, 0x98, 0xb0, 0x66, + 0xe3, 0x36, 0x86, 0xb7, 0x3c, 0x84, 0x4f, 0xab, 0xe4, 0xf5, 0xa9, 0xb9, + 0xf8, 0xae, 0x84, 0x2b, 0xf4, 0xe1, 0xa2, 0x5b, 0xd0, 0xc2, 0x28, 0xaa, + 0xaf, 0x60, 0xfa, 0x1d, 0x22, 0x19, 0x66, 0x45, 0x84, 0x3b, 0x09, 0xa1, + 0x8f, 0x90, 0x2d, 0x47, 0x64, 0x19, 0x13, 0xe3, 0xcd, 0x7f, 0x8f, 0xcd, + 0x90, 0x0f, 0xde, 0xf2, 0x2f, 0xec, 0xd8, 0xb5, 0x1b, 0xe7, 0xa2, 0xf9, + 0x13, 0x50, 0x95, 0x2c, 0x9d, 0xa6, 0x51, 0xbb, 0x34, 0x93, 0x8d, 0xf3, + 0x58, 0x8c, 0x84, 0xe5, 0x44, 0x71, 0x8e, 0xfa, 0x18, 0x9f, 0x8f, 0xe3, + 0xa2, 0x8d, 0x40, 0x8e, 0x59, 0x01, 0xd3, 0x6e, 0x2c, 0x2c, 0x41, 0xfd, + 0x32, 0x22, 0x77, 0x3b, 0x8d, 0xfa, 0xcc, 0x2a, 0x20, 0xcf, 0x3d, 0x3e, + 0xad, 0x92, 0xd5, 0x27, 0xaf, 0xaf, 0x1d, 0xfa, 0x12, 0x9a, 0xad, 0xc4, + 0x15, 0xba, 0x70, 0x51, 0x3f, 0xe2, 0xea, 0x88, 0x04, 0x4c, 0x23, 0xcc, + 0xca, 0xa8, 0xef, 0x47, 0xfd, 0x20, 0x94, 0xba, 0xf1, 0xde, 0xcf, 0xd0, + 0x06, 0xff, 0x46, 0xc0, 0x00, 0x6d, 0x35, 0xa1, 0xeb, 0xb3, 0x84, 0x10, + 0x6e, 0x43, 0xdc, 0x20, 0x42, 0x1d, 0x9c, 0x81, 0x39, 0x54, 0xbb, 0xc0, + 0x92, 0x26, 0xa8, 0x1a, 0x3e, 0x84, 0x59, 0x05, 0x82, 0x0f, 0x60, 0x86, + 0xa9, 0x2e, 0xdc, 0xa9, 0xa8, 0x31, 0xd0, 0x73, 0x85, 0x57, 0xdb, 0xdd, + 0x35, 0xf8, 0x16, 0x81, 0xbd, 0x7b, 0xf6, 0xc8, 0x4d, 0xb5, 0xef, 0x31, + 0xb3, 0x76, 0x1b, 0xbe, 0xf1, 0x66, 0xf8, 0xe0, 0xad, 0xad, 0x80, 0xf7, + 0x1e, 0xc3, 0x50, 0xd3, 0xc5, 0x81, 0x37, 0xf0, 0xfe, 0xf2, 0x2d, 0x08, + 0x01, 0x4c, 0x17, 0x4d, 0x01, 0x33, 0x6d, 0x62, 0x5e, 0x5e, 0x05, 0xb6, + 0xc0, 0x39, 0xf0, 0xdf, 0x04, 0x6c, 0xb6, 0x0a, 0xee, 0x3a, 0x7e, 0x5c, + 0x4e, 0x0d, 0x98, 0x99, 0xa9, 0x98, 0x2d, 0x92, 0x02, 0xea, 0x67, 0x09, + 0x7c, 0x02, 0x6c, 0x0c, 0x39, 0xa6, 0xba, 0x68, 0x0a, 0x78, 0x9f, 0xa3, + 0x41, 0xad, 0x73, 0x0b, 0x34, 0x2c, 0x50, 0x1f, 0xb8, 0x06, 0x02, 0x79, + 0x83, 0x7c, 0x46, 0x81, 0x8d, 0x63, 0x63, 0x52, 0xef, 0x52, 0x33, 0x53, + 0x6c, 0x91, 0xaa, 0x20, 0x64, 0x59, 0x67, 0x23, 0xf2, 0x3e, 0xa0, 0xde, + 0x63, 0xa6, 0xf3, 0x1d, 0xa2, 0x5c, 0x8b, 0xab, 0x3d, 0x38, 0x5c, 0xc5, + 0x69, 0x40, 0x96, 0xa7, 0xb3, 0x8d, 0xa8, 0x59, 0x86, 0xde, 0x70, 0x11, + 0x51, 0x52, 0x41, 0x10, 0x68, 0xcd, 0x83, 0xcd, 0xb9, 0xb0, 0xf9, 0x2e, + 0x4d, 0x07, 0x20, 0xed, 0x79, 0x51, 0x44, 0x9a, 0xe1, 0xcd, 0x5a, 0x03, + 0x4a, 0x0b, 0xc2, 0x0c, 0xc3, 0x5a, 0xd8, 0xd6, 0x9a, 0x2b, 0xad, 0x75, + 0x19, 0x8d, 0x5a, 0x8a, 0x0f, 0xcd, 0x2d, 0x70, 0x7b, 0x0e, 0x1e, 0x54, + 0x9f, 0x87, 0xd0, 0xc8, 0x72, 0x70, 0x09, 0xe6, 0x12, 0xcc, 0x15, 0x20, + 0x9a, 0x79, 0x4e, 0xc0, 0x15, 0xb0, 0x28, 0x01, 0x97, 0xb4, 0xfc, 0x85, + 0xd9, 0xfb, 0x65, 0xdf, 0xe2, 0x0a, 0xed, 0x18, 0xb3, 0xb1, 0x92, 0xce, + 0xb8, 0x2e, 0x61, 0x7a, 0x7a, 0x12, 0xef, 0xc3, 0x04, 0x20, 0x31, 0x90, + 0x64, 0x79, 0xfe, 0xdb, 0xf7, 0x5f, 0x7c, 0x3c, 0xb4, 0x62, 0xc5, 0xb2, + 0x79, 0xb5, 0x96, 0xd9, 0x91, 0xe6, 0xda, 0x5b, 0x5d, 0x87, 0xf8, 0xd6, + 0xb1, 0x07, 0x47, 0x8e, 0x1c, 0xb3, 0x34, 0xcb, 0x8f, 0x01, 0x85, 0x18, + 0x28, 0x1d, 0xfb, 0x65, 0xe2, 0x80, 0x73, 0x5f, 0xae, 0x05, 0x89, 0x16, + 0xa9, 0x11, 0x65, 0x87, 0x7f, 0x1a, 0xdd, 0x0f, 0x24, 0x02, 0x24, 0xc0, + 0x72, 0xa0, 0x6f, 0xce, 0x14, 0x79, 0xa3, 0x4e, 0xa2, 0xe6, 0xb1, 0x38, + 0x0a, 0x5c, 0x68, 0x65, 0x19, 0xb2, 0x48, 0xe0, 0x1d, 0xd5, 0xc8, 0xff, + 0xc1, 0xfe, 0x01, 0x69, 0x12, 0xa7, 0x19, 0x81, 0x1d, 0xc5, 0xbf, 0x00, + 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int folder_new_png_len = 1487; +unsigned char emblem_documents_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x00, + 0x04, 0x73, 0x42, 0x49, 0x54, 0x08, 0x08, 0x08, 0x08, 0x7c, 0x08, 0x64, + 0x88, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00, 0x0d, + 0xd7, 0x00, 0x00, 0x0d, 0xd7, 0x01, 0x42, 0x28, 0x9b, 0x78, 0x00, 0x00, + 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, + 0x72, 0x65, 0x00, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x6b, 0x73, 0x63, + 0x61, 0x70, 0x65, 0x2e, 0x6f, 0x72, 0x67, 0x9b, 0xee, 0x3c, 0x1a, 0x00, + 0x00, 0x06, 0x48, 0x49, 0x44, 0x41, 0x54, 0x58, 0x85, 0xa5, 0x57, 0x6b, + 0x4c, 0x93, 0x67, 0x14, 0xae, 0xb7, 0xa1, 0x4b, 0xe6, 0x96, 0xfd, 0xd8, + 0x8f, 0x2d, 0x66, 0x09, 0x61, 0xc9, 0x92, 0xed, 0xaf, 0x71, 0xbf, 0xcd, + 0xe2, 0xb2, 0xc4, 0xec, 0xcf, 0x62, 0xf6, 0x83, 0x90, 0x88, 0xe8, 0x1c, + 0x0a, 0x8a, 0x56, 0x4b, 0xaf, 0x28, 0x20, 0x58, 0x10, 0xc1, 0x65, 0x0a, + 0x73, 0x4e, 0xf1, 0x16, 0x99, 0x46, 0xe7, 0x06, 0x3a, 0x44, 0x45, 0x11, + 0xb9, 0x28, 0xe5, 0x22, 0x52, 0xa1, 0x37, 0x6e, 0x2d, 0x42, 0xb9, 0x09, + 0x08, 0x6d, 0xb9, 0xf6, 0xec, 0x7d, 0x5e, 0xfa, 0x76, 0x1f, 0xb5, 0xe5, + 0xe2, 0x48, 0x4e, 0xda, 0xaf, 0xdf, 0x77, 0xde, 0xf3, 0x9c, 0xe7, 0x3c, + 0xe7, 0x7c, 0x07, 0xd9, 0x91, 0xec, 0x23, 0x9f, 0x1c, 0xcf, 0xc9, 0xbc, + 0x90, 0x71, 0x2c, 0x7d, 0x42, 0x9f, 0x99, 0x46, 0x8b, 0x35, 0x3c, 0x0f, + 0x3f, 0xf8, 0x13, 0x91, 0xec, 0x6d, 0x4d, 0x86, 0x43, 0x0c, 0x86, 0xa7, + 0xde, 0xa9, 0xa9, 0x29, 0xf2, 0x7a, 0xbd, 0x8b, 0xb6, 0xa9, 0xe9, 0x29, + 0xaa, 0xad, 0x35, 0x78, 0xe1, 0xff, 0xbf, 0x00, 0x20, 0x13, 0x04, 0x1f, + 0x18, 0x18, 0xa0, 0xde, 0xde, 0x5e, 0xea, 0xeb, 0xeb, 0xa3, 0xfe, 0xfe, + 0x7e, 0x7e, 0x0d, 0x1b, 0x1c, 0x1c, 0x0c, 0x6a, 0x43, 0x43, 0x43, 0x34, + 0x3d, 0x3d, 0xcd, 0x99, 0x90, 0xc9, 0x64, 0xcb, 0xde, 0x1a, 0x00, 0xe8, + 0x44, 0x46, 0x22, 0xb0, 0x08, 0x2e, 0x02, 0xbd, 0x7a, 0xf5, 0x2a, 0xa4, + 0xc1, 0x0f, 0xfe, 0x0c, 0xc0, 0x2a, 0x66, 0x2b, 0x98, 0x2d, 0x5f, 0x2a, + 0x18, 0x3f, 0x00, 0x04, 0x2e, 0xaf, 0x78, 0x40, 0x77, 0x4b, 0xff, 0x59, + 0xd0, 0xf0, 0x1c, 0x18, 0x10, 0x00, 0xb6, 0x6f, 0xdf, 0xfa, 0x15, 0x0b, + 0xbc, 0xda, 0x07, 0x64, 0x25, 0x80, 0x2c, 0x19, 0x80, 0xc8, 0x1a, 0x99, + 0xe1, 0x70, 0xd8, 0xf0, 0xf0, 0x30, 0x8d, 0x8c, 0x8c, 0x04, 0x35, 0xdc, + 0x13, 0x00, 0xd2, 0xd2, 0x52, 0xdd, 0x4a, 0x75, 0xe2, 0xa8, 0x4a, 0xa3, + 0xbc, 0xbd, 0x6f, 0xdf, 0x9e, 0x1f, 0x63, 0x63, 0xb7, 0x85, 0xfb, 0x18, + 0x59, 0x90, 0x0d, 0x3f, 0x00, 0x04, 0x5f, 0x2c, 0x03, 0x8f, 0x2b, 0x1f, + 0xd2, 0xeb, 0xd7, 0xaf, 0xfd, 0x00, 0x1c, 0x0e, 0x07, 0x4d, 0x4e, 0x4e, + 0x52, 0x57, 0x57, 0x17, 0x95, 0x3e, 0xb8, 0xef, 0x39, 0xaa, 0x4f, 0xf3, + 0xa8, 0x35, 0xca, 0x6e, 0xa5, 0x5a, 0xa1, 0xdf, 0xb2, 0x65, 0xcb, 0x3b, + 0x8b, 0x06, 0x20, 0xcd, 0x1a, 0x01, 0x60, 0xa3, 0xa3, 0xa3, 0x34, 0x36, + 0x36, 0x36, 0xc7, 0xf0, 0x1b, 0x4c, 0x00, 0x68, 0x6e, 0x6e, 0xe6, 0x7e, + 0xb8, 0x37, 0x3e, 0x3e, 0xce, 0xc5, 0xe9, 0x76, 0xbb, 0xa9, 0xe4, 0x6e, + 0x89, 0x47, 0xa5, 0x49, 0x34, 0xcc, 0x57, 0x12, 0x3f, 0x00, 0x50, 0xbf, + 0x14, 0x06, 0x10, 0x4c, 0x00, 0x30, 0x1a, 0x9b, 0xe6, 0x88, 0x13, 0xc9, + 0x00, 0xd0, 0xcc, 0xcc, 0x0c, 0xe9, 0x33, 0x8e, 0x8e, 0x47, 0x45, 0x45, + 0x7d, 0x14, 0xaa, 0x1c, 0x7e, 0x00, 0x22, 0x7b, 0x69, 0xd6, 0x2e, 0x97, + 0x8b, 0x67, 0x02, 0xf3, 0x78, 0x3c, 0xdc, 0xc4, 0x35, 0xee, 0x09, 0x00, + 0xd7, 0xae, 0x17, 0x50, 0xd5, 0x93, 0x72, 0x6a, 0x7a, 0xd1, 0x48, 0x76, + 0x7b, 0x27, 0xd7, 0x13, 0x80, 0x80, 0x89, 0x9c, 0x9f, 0xb3, 0xc7, 0x62, + 0x7e, 0x8a, 0xf9, 0xd2, 0x27, 0xce, 0x37, 0x40, 0xf8, 0x01, 0x20, 0x38, + 0x32, 0x5b, 0x0c, 0x03, 0x15, 0x55, 0x65, 0x1c, 0x84, 0x00, 0x60, 0x32, + 0x99, 0xc8, 0xd1, 0x65, 0x27, 0xe3, 0x8b, 0xe7, 0x54, 0xc9, 0x80, 0x74, + 0x76, 0xb6, 0xf3, 0x44, 0xa0, 0x0b, 0x88, 0x93, 0x05, 0x7e, 0x97, 0xd9, + 0x3b, 0x10, 0xe6, 0xbc, 0x00, 0xa4, 0xd9, 0x8b, 0xac, 0x51, 0xd3, 0x89, + 0x89, 0x89, 0x39, 0x86, 0xdf, 0x70, 0xcf, 0xcf, 0xc0, 0x8d, 0x02, 0xaa, + 0xa9, 0xad, 0x26, 0x8b, 0xd5, 0x44, 0x4e, 0x67, 0x0f, 0xd7, 0x10, 0xfc, + 0xbb, 0xbb, 0xbb, 0x29, 0x51, 0xad, 0x30, 0x85, 0x87, 0x87, 0xbf, 0x2f, + 0x69, 0xd3, 0xe5, 0x41, 0x01, 0xc0, 0x69, 0x29, 0x0c, 0x00, 0x04, 0xfe, + 0x38, 0x03, 0x66, 0x13, 0xd9, 0x1d, 0x1d, 0xd4, 0xd8, 0x54, 0x4f, 0x0d, + 0x8d, 0xb5, 0xfe, 0xec, 0xcb, 0x1e, 0x3d, 0xa4, 0xe3, 0xd9, 0xc7, 0xa6, + 0x18, 0x0b, 0x8e, 0xd8, 0xb8, 0xd8, 0xef, 0x58, 0xf0, 0x30, 0x94, 0x22, + 0x24, 0x00, 0x38, 0x8a, 0xda, 0x8b, 0xec, 0x71, 0x10, 0x46, 0x35, 0xea, + 0x09, 0xc3, 0x77, 0xfc, 0x06, 0x26, 0x04, 0x80, 0x1b, 0x7f, 0x5d, 0xa3, + 0x67, 0xcf, 0xeb, 0xa8, 0xbd, 0xa3, 0x8d, 0x9d, 0x33, 0xec, 0xef, 0x90, + 0xcc, 0x2c, 0x3d, 0x99, 0xcd, 0x66, 0x2e, 0xca, 0x93, 0xb9, 0xbf, 0xb8, + 0x35, 0x5a, 0xe5, 0xa3, 0xdd, 0xbb, 0x77, 0x7c, 0x21, 0x65, 0x61, 0x5e, + 0x06, 0x90, 0x29, 0x82, 0x21, 0x30, 0x14, 0x0d, 0x13, 0x20, 0xa4, 0x00, + 0x4c, 0xa6, 0x16, 0x6a, 0x6b, 0xb7, 0x51, 0x5d, 0x43, 0x0d, 0x1b, 0xe9, + 0xbd, 0xfe, 0xf2, 0xa5, 0xa6, 0x25, 0x33, 0x3d, 0x74, 0xf2, 0x84, 0xe0, + 0x67, 0xb3, 0xd9, 0xbc, 0x29, 0xa9, 0xc9, 0x6e, 0x95, 0xfa, 0x60, 0x6e, + 0x42, 0x42, 0xc2, 0x07, 0x6f, 0x00, 0x08, 0xac, 0x3f, 0x82, 0x48, 0x01, + 0xe0, 0x39, 0x7c, 0x0a, 0x16, 0x04, 0x80, 0xc2, 0xa2, 0x9b, 0xd4, 0xdc, + 0xd2, 0x44, 0x3d, 0xce, 0x6e, 0xee, 0x8b, 0x7b, 0xed, 0xed, 0x6d, 0x94, + 0xfb, 0xeb, 0x29, 0xea, 0xe9, 0xe9, 0xf1, 0xb7, 0x27, 0xce, 0x84, 0x6f, + 0x55, 0x55, 0xe5, 0xa4, 0x5a, 0x9b, 0x38, 0xa8, 0x50, 0x28, 0x3e, 0xe6, + 0x6f, 0x43, 0x04, 0x10, 0xc3, 0x25, 0x18, 0x00, 0x51, 0x02, 0x29, 0x03, + 0xf8, 0x1d, 0xd7, 0x59, 0xd9, 0x19, 0x4c, 0xfd, 0x46, 0xb2, 0xda, 0xcc, + 0x64, 0xb6, 0x34, 0x73, 0x3f, 0x3c, 0x53, 0x58, 0xf4, 0x37, 0x9d, 0xbf, + 0x78, 0x96, 0xb3, 0x68, 0x77, 0x74, 0xf2, 0x36, 0x07, 0x08, 0x88, 0x1d, + 0xbe, 0x56, 0x9b, 0x75, 0x46, 0x93, 0xa4, 0xae, 0xe6, 0xfb, 0x40, 0x6d, + 0x9d, 0xc1, 0x0b, 0x27, 0xe9, 0xfb, 0x7e, 0xa1, 0x3f, 0x04, 0xaf, 0x6f, + 0xa8, 0xa3, 0xd3, 0x67, 0x72, 0xe9, 0x76, 0x71, 0x11, 0x59, 0x6c, 0x26, + 0x9e, 0x00, 0x74, 0x03, 0xff, 0xa4, 0xc3, 0x5a, 0x36, 0xa0, 0x8c, 0x4c, + 0x17, 0xad, 0x54, 0xf6, 0xb8, 0x94, 0x6a, 0xeb, 0x9f, 0x92, 0xb3, 0xd7, + 0xe9, 0x07, 0x01, 0xa0, 0x5a, 0x9d, 0xba, 0x43, 0x86, 0x8d, 0x26, 0xe7, + 0xc4, 0xb1, 0x25, 0x6f, 0x44, 0xc8, 0xfc, 0xcf, 0x9b, 0xd7, 0xa9, 0x85, + 0xd5, 0xdf, 0x62, 0x35, 0x93, 0x89, 0x65, 0x3f, 0x3a, 0x3a, 0xab, 0x7e, + 0x00, 0xd1, 0x67, 0xa4, 0x53, 0x71, 0x49, 0x11, 0x2b, 0x8d, 0x91, 0x65, + 0x3f, 0xc8, 0x3f, 0x1b, 0x1a, 0xeb, 0x38, 0x13, 0x00, 0x69, 0xb5, 0x5a, + 0xbc, 0x5a, 0x9d, 0xea, 0xe6, 0x7f, 0xed, 0x30, 0xfb, 0x2e, 0x47, 0x9f, + 0xae, 0xd9, 0x2f, 0x4f, 0x30, 0x5a, 0x2c, 0x16, 0x56, 0xc7, 0x76, 0xf6, + 0xa0, 0x15, 0xe2, 0xa1, 0xd6, 0xd6, 0x56, 0x7e, 0x0d, 0x83, 0xb0, 0xec, + 0x76, 0x3b, 0x7f, 0xf9, 0x40, 0xe1, 0x28, 0x95, 0x28, 0x0b, 0x98, 0xc4, + 0x68, 0x3e, 0x97, 0xff, 0x3b, 0xdf, 0x31, 0x10, 0xf4, 0x11, 0x1b, 0xf1, + 0x1d, 0x9d, 0x6d, 0x7e, 0x9d, 0xe1, 0xd9, 0xe4, 0x94, 0xc3, 0x1e, 0xb9, + 0x4a, 0xfe, 0xf9, 0xdc, 0xa9, 0x34, 0x3b, 0x2e, 0xc3, 0x0e, 0x26, 0xca, + 0x53, 0x73, 0xf3, 0x4e, 0xba, 0xe1, 0x20, 0xea, 0x2e, 0x5a, 0x4f, 0xda, + 0x9a, 0xc1, 0x84, 0x89, 0xef, 0x97, 0xaf, 0x5c, 0xa2, 0x2b, 0x05, 0x17, + 0xa9, 0xba, 0xa6, 0x82, 0x6d, 0x59, 0x4e, 0x2e, 0x4e, 0x74, 0x09, 0xda, + 0x9c, 0x8b, 0xb0, 0x9a, 0x89, 0x50, 0xa3, 0xcc, 0xe3, 0x31, 0x03, 0x00, + 0x08, 0x16, 0x56, 0xc7, 0xed, 0x89, 0x8d, 0xd6, 0xe8, 0x54, 0x56, 0x56, + 0xcb, 0x89, 0xa2, 0x5b, 0x85, 0x9e, 0x8e, 0x8e, 0x76, 0x0e, 0x40, 0x04, + 0x14, 0xc0, 0x82, 0x09, 0x53, 0xad, 0x55, 0xce, 0xb2, 0xc5, 0xb2, 0x2e, + 0x2b, 0xbf, 0x4f, 0x2f, 0x58, 0x87, 0x40, 0xdc, 0xe2, 0x5d, 0xa2, 0xd1, + 0xaa, 0x46, 0x62, 0x62, 0x62, 0x3e, 0x7c, 0x03, 0x80, 0x0f, 0xc4, 0x0a, + 0xdf, 0xc4, 0xc2, 0xfc, 0x7e, 0x6f, 0xe3, 0xc6, 0x8d, 0x9f, 0xee, 0xda, + 0xb5, 0x73, 0xaf, 0x2e, 0x49, 0x33, 0x73, 0x24, 0x3d, 0x85, 0x72, 0x4e, + 0x1c, 0xa7, 0xca, 0xca, 0x0a, 0xbe, 0x41, 0x49, 0x19, 0x10, 0x83, 0x0a, + 0x42, 0xcb, 0x3e, 0x91, 0x45, 0xc5, 0x77, 0x8b, 0xf8, 0x68, 0x46, 0xd6, + 0x7d, 0xfd, 0x7d, 0x7c, 0x16, 0xe0, 0xb9, 0xab, 0xd7, 0xfe, 0xf0, 0x1c, + 0x50, 0xec, 0x8b, 0x13, 0x2f, 0xa6, 0x60, 0x00, 0x96, 0x89, 0x52, 0x08, + 0x10, 0xd1, 0xd1, 0x51, 0xdf, 0x5c, 0xb8, 0x98, 0xef, 0x42, 0xbd, 0x1b, + 0x1a, 0x1a, 0x78, 0x8b, 0x9d, 0xca, 0x3b, 0x49, 0xba, 0x43, 0x5a, 0x5e, + 0xeb, 0xe7, 0x4d, 0x8d, 0x5c, 0xd9, 0xfd, 0x2c, 0x90, 0x3e, 0x33, 0x9d, + 0x2d, 0x25, 0xf7, 0xd8, 0xf5, 0x10, 0xd5, 0x3f, 0x33, 0xf0, 0x09, 0x29, + 0x66, 0xc3, 0xc0, 0x40, 0x3f, 0x31, 0xea, 0x5b, 0x23, 0x22, 0x22, 0xc2, + 0x42, 0x02, 0x08, 0x2c, 0x05, 0x40, 0x6c, 0xfe, 0x7e, 0xf3, 0x67, 0xac, + 0x65, 0x46, 0x44, 0x0d, 0xa1, 0x0d, 0x30, 0xf0, 0xf2, 0xe5, 0x4b, 0x7a, + 0x50, 0x56, 0x4a, 0x67, 0xf3, 0xcf, 0x70, 0x40, 0xe7, 0xce, 0x9f, 0x65, + 0x2d, 0x79, 0x8b, 0xee, 0xdc, 0xbb, 0x4d, 0x86, 0xfa, 0x27, 0x34, 0xc4, + 0x40, 0x20, 0x73, 0xe8, 0x06, 0xd9, 0x33, 0x66, 0xdc, 0xf1, 0xf1, 0xb1, + 0x5f, 0x4b, 0xdf, 0x8a, 0xa1, 0x57, 0xa5, 0x00, 0x10, 0x3b, 0x76, 0x6c, + 0xfb, 0x96, 0xd5, 0x76, 0xd4, 0x60, 0xa8, 0x99, 0x14, 0xa2, 0xc4, 0xc1, + 0x30, 0xd4, 0x17, 0xed, 0x85, 0x3d, 0x00, 0x4c, 0x00, 0x24, 0xea, 0xdf, + 0x62, 0x32, 0x72, 0xdd, 0xe0, 0x79, 0x8b, 0xd5, 0x32, 0xc3, 0x34, 0x75, + 0xc7, 0x77, 0xe6, 0xb2, 0x05, 0x01, 0x04, 0x80, 0x00, 0x65, 0x6b, 0x36, + 0x6d, 0xda, 0xb4, 0x2e, 0x51, 0x79, 0x30, 0x3f, 0x35, 0x2d, 0xc5, 0xc3, + 0x16, 0x0f, 0x2f, 0xff, 0x07, 0xc5, 0x27, 0xbe, 0xc0, 0xae, 0x10, 0x20, + 0x45, 0x6b, 0x1e, 0x4a, 0x4e, 0x72, 0x31, 0xe1, 0x45, 0x04, 0xee, 0x04, + 0x0b, 0xaf, 0xcd, 0xb3, 0x20, 0x56, 0xfa, 0x16, 0x0a, 0xce, 0xc6, 0xd6, + 0xad, 0x91, 0xeb, 0xd5, 0x5a, 0xd5, 0xd3, 0xd3, 0xbf, 0xe5, 0xb9, 0xc5, + 0x72, 0x2a, 0x44, 0x28, 0x3a, 0x44, 0xda, 0x15, 0xe5, 0x15, 0xe5, 0x13, + 0x6c, 0x41, 0xcd, 0x0a, 0xba, 0x90, 0x2c, 0x04, 0x40, 0x22, 0xcc, 0x15, + 0x12, 0x36, 0x38, 0x90, 0x5d, 0x71, 0x3b, 0x7f, 0x60, 0x4b, 0xa7, 0xf3, + 0x4e, 0x49, 0xb1, 0x47, 0xfc, 0x6b, 0x27, 0x6d, 0x49, 0x7c, 0xf2, 0xb6, + 0xd3, 0xa9, 0x06, 0x23, 0x23, 0x23, 0xd7, 0x06, 0x3d, 0x7b, 0x31, 0x00, + 0x82, 0xb0, 0xb1, 0xca, 0xc7, 0x48, 0xd8, 0x86, 0x0d, 0x1b, 0xd6, 0x1e, + 0x50, 0xec, 0xd7, 0xb1, 0x8e, 0x70, 0xb1, 0x6e, 0x98, 0x16, 0x0c, 0x00, + 0x00, 0x00, 0x5d, 0x2e, 0xb8, 0xe4, 0x92, 0x2b, 0xe4, 0x51, 0x21, 0xcf, + 0x5c, 0x0a, 0x80, 0x20, 0x8c, 0x08, 0x30, 0xab, 0xa2, 0xa3, 0xa3, 0xd7, + 0xa9, 0xd4, 0x89, 0x57, 0x33, 0x32, 0x8f, 0x7a, 0x1c, 0x5d, 0x0e, 0x3e, + 0x74, 0xd8, 0xbc, 0x98, 0xd0, 0x26, 0xa9, 0x6b, 0xe6, 0x3d, 0xeb, 0x6d, + 0x00, 0x84, 0x00, 0xc4, 0x4d, 0x2e, 0xdf, 0xbb, 0x5e, 0x97, 0xa4, 0x2e, + 0x64, 0x13, 0xd4, 0xc2, 0x5a, 0xf7, 0x42, 0x7c, 0x7c, 0x7c, 0xd8, 0x7c, + 0xbe, 0xff, 0x02, 0x7a, 0x8f, 0xfb, 0xf3, 0x8a, 0x91, 0x13, 0x31, 0x00, + 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int emblem_documents_png_len = 1739; +unsigned char go_top_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x05, + 0x53, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0xed, 0x57, 0x5b, 0x4c, 0x93, + 0x67, 0x18, 0x06, 0xc4, 0xe1, 0x76, 0xb1, 0xdd, 0x6c, 0xc9, 0x2e, 0xc8, + 0xb2, 0x8b, 0x25, 0xbb, 0xd9, 0xbc, 0x32, 0xd9, 0xcd, 0x2e, 0x16, 0x49, + 0xd4, 0x6c, 0xd9, 0x0d, 0xa5, 0x80, 0x31, 0x44, 0xe4, 0x4c, 0x01, 0x11, + 0x71, 0x80, 0xb4, 0x60, 0x45, 0x2b, 0x43, 0x14, 0x90, 0x83, 0x96, 0xf3, + 0x19, 0x04, 0x41, 0x10, 0x66, 0x15, 0x95, 0x42, 0x65, 0x08, 0x6e, 0x73, + 0x19, 0x6e, 0x5a, 0x0a, 0x6a, 0x39, 0xb5, 0x20, 0xf4, 0x00, 0xb4, 0x9c, + 0xda, 0xfe, 0xff, 0xbb, 0xf7, 0xfb, 0xf2, 0x97, 0x94, 0x65, 0x2b, 0xe0, + 0x90, 0x6d, 0xc9, 0x9a, 0x3c, 0xf9, 0xdb, 0xef, 0x7b, 0xbf, 0xef, 0x7d, + 0xde, 0xf3, 0x5f, 0x17, 0x00, 0xf8, 0x47, 0xf1, 0xef, 0x23, 0x20, 0xeb, + 0x92, 0x79, 0xca, 0x15, 0x1d, 0xb5, 0x77, 0xe5, 0xb7, 0x2d, 0x77, 0x3a, + 0x65, 0xb0, 0x19, 0x74, 0xdc, 0xbb, 0x09, 0xb2, 0x8e, 0x36, 0x68, 0x97, + 0xb5, 0x40, 0x6b, 0x7b, 0x13, 0x34, 0xb7, 0x36, 0x40, 0x63, 0x53, 0x1d, + 0xd4, 0x37, 0x54, 0x43, 0x6d, 0x7d, 0xa5, 0xad, 0xb6, 0xae, 0xa2, 0xa5, + 0xa4, 0xba, 0xe4, 0x23, 0xa7, 0x04, 0xe4, 0x8a, 0x3b, 0x15, 0x3a, 0xdd, + 0x34, 0x03, 0x5b, 0xfc, 0x61, 0x59, 0x16, 0x26, 0x34, 0x13, 0x6c, 0x69, + 0x99, 0xb4, 0xdd, 0x29, 0x81, 0xce, 0xae, 0x8e, 0x59, 0x22, 0xcc, 0x30, + 0x0c, 0x58, 0xad, 0x56, 0xb0, 0x58, 0x2c, 0xb0, 0xbc, 0xbc, 0x0c, 0x4b, + 0x4b, 0x4b, 0xb0, 0xb8, 0xb8, 0x08, 0x0b, 0x0b, 0x0b, 0x60, 0x36, 0x9b, + 0xc1, 0x64, 0x32, 0xc1, 0xfc, 0xfc, 0x1c, 0xcc, 0xcd, 0xcd, 0xc2, 0xec, + 0xac, 0x11, 0x8c, 0x46, 0x03, 0x18, 0x0c, 0x7a, 0xd0, 0xeb, 0x67, 0x60, + 0x66, 0xe6, 0x25, 0x4c, 0x4f, 0x4f, 0xc1, 0xd4, 0x94, 0x16, 0xb4, 0x93, + 0x1a, 0xd0, 0x68, 0xc6, 0x41, 0xab, 0xd5, 0xd0, 0xfb, 0xf2, 0xa5, 0x97, + 0x56, 0x1a, 0x1b, 0x1b, 0x77, 0xac, 0xeb, 0x01, 0x42, 0xc2, 0x66, 0xb3, + 0xad, 0x92, 0x58, 0x59, 0x59, 0xa1, 0x44, 0x38, 0x32, 0x1c, 0xa1, 0x05, + 0x24, 0x44, 0x60, 0x46, 0x98, 0xc0, 0x64, 0x46, 0x98, 0x38, 0x52, 0x73, + 0x8e, 0xa4, 0x74, 0xf0, 0xf2, 0xe5, 0x24, 0x28, 0x7a, 0xba, 0x99, 0xbc, + 0xcb, 0x39, 0xed, 0x1b, 0xcc, 0x81, 0x5b, 0x96, 0x0d, 0xc7, 0xb9, 0x19, + 0xe3, 0xdc, 0x58, 0x0d, 0x35, 0xf5, 0x15, 0x50, 0x59, 0x53, 0x0a, 0x65, + 0x95, 0x45, 0x50, 0x5c, 0x26, 0x05, 0x69, 0x71, 0x01, 0x14, 0x48, 0x73, + 0x21, 0xb7, 0x20, 0x1b, 0x72, 0xf2, 0x2e, 0xda, 0x10, 0x2d, 0xe9, 0x59, + 0xe9, 0x6b, 0x72, 0xe0, 0xbf, 0x5d, 0x86, 0x24, 0x96, 0x35, 0x75, 0x55, + 0x09, 0xb9, 0xb2, 0x5c, 0x8f, 0x6d, 0x27, 0x20, 0x16, 0x8b, 0xdd, 0xaa, + 0x6a, 0xcb, 0x6a, 0x89, 0xfb, 0x4b, 0xca, 0xa5, 0x6d, 0x85, 0x85, 0x85, + 0x3b, 0xb7, 0x93, 0x80, 0x6b, 0x79, 0x75, 0x49, 0xc5, 0x4f, 0x8f, 0x7e, + 0xa0, 0xe5, 0xf5, 0xe8, 0xe7, 0x1f, 0x01, 0x93, 0xab, 0x19, 0x49, 0xb9, + 0x6f, 0x07, 0x01, 0xd7, 0xd2, 0xca, 0xa2, 0xa2, 0xbe, 0xfe, 0x5e, 0xaa, + 0x1c, 0xab, 0x83, 0x3e, 0x1f, 0xf4, 0x3f, 0x80, 0x0b, 0xd9, 0x19, 0x57, + 0x49, 0x58, 0x5e, 0x2b, 0x81, 0x92, 0x52, 0x69, 0x41, 0x4f, 0xaf, 0x82, + 0x2a, 0xc5, 0x32, 0xa4, 0x3d, 0x00, 0xcb, 0x90, 0xfe, 0xee, 0x56, 0xc8, + 0xe1, 0x8c, 0x44, 0x5c, 0x4d, 0xc2, 0xf3, 0x5a, 0x08, 0x14, 0x16, 0x5f, + 0xce, 0x96, 0x77, 0xdf, 0xa3, 0xca, 0x50, 0x29, 0xad, 0x71, 0x3b, 0xcc, + 0x66, 0x13, 0x5d, 0xbf, 0xd5, 0x21, 0x03, 0xa1, 0x28, 0xb1, 0xcc, 0xc5, + 0xc5, 0xc5, 0x75, 0x4b, 0x09, 0x5c, 0x29, 0xcc, 0xcb, 0xb8, 0x73, 0xf7, + 0x36, 0x30, 0x2c, 0x83, 0xca, 0xe6, 0x01, 0x9b, 0xd5, 0x1f, 0x41, 0x9a, + 0x10, 0x25, 0xd1, 0xd2, 0xda, 0x0c, 0xc7, 0x4f, 0xc4, 0x4a, 0x09, 0x89, + 0x2d, 0x21, 0x90, 0x2f, 0xcd, 0x39, 0x73, 0xf3, 0x76, 0x3b, 0x6d, 0xcf, + 0xa8, 0x84, 0x76, 0x35, 0x0e, 0x54, 0xb1, 0xe3, 0x6f, 0xec, 0x82, 0x54, + 0xae, 0xfe, 0x6a, 0x0d, 0x08, 0xa2, 0xc3, 0xf2, 0xfe, 0x36, 0x81, 0xbc, + 0x82, 0xec, 0x94, 0x1b, 0x6d, 0xcd, 0xe4, 0x52, 0x7a, 0xb9, 0x56, 0x3b, + 0x61, 0x07, 0xed, 0xf9, 0xd8, 0x66, 0xf1, 0x39, 0xed, 0xb8, 0x4e, 0xf2, + 0x82, 0xca, 0x97, 0x96, 0x17, 0x43, 0x50, 0x70, 0xe0, 0xc5, 0x57, 0x26, + 0x90, 0x93, 0x9b, 0x99, 0x78, 0xed, 0x7a, 0x03, 0x99, 0x09, 0xf4, 0xd2, + 0xb1, 0xf1, 0x51, 0x3b, 0x70, 0xd0, 0x4c, 0xc2, 0xf0, 0xf3, 0x61, 0x90, + 0xa4, 0x9f, 0x85, 0xc1, 0x41, 0x25, 0x4c, 0xa1, 0xf5, 0x8e, 0xfb, 0x06, + 0x83, 0x01, 0x49, 0xd8, 0x20, 0x2f, 0x3f, 0x17, 0x0e, 0x1e, 0xf2, 0x4b, + 0xdf, 0x34, 0x81, 0x0b, 0x39, 0xe7, 0xe3, 0xea, 0xd0, 0x8d, 0x56, 0x9b, + 0x95, 0x0e, 0x15, 0xf5, 0xc8, 0x8b, 0x55, 0x68, 0xd0, 0xca, 0xe1, 0x67, + 0x43, 0x90, 0x2a, 0x16, 0x32, 0xb1, 0x71, 0x51, 0x97, 0x12, 0x92, 0xe2, + 0x2d, 0x4a, 0xe5, 0x53, 0xba, 0xee, 0x28, 0xa7, 0x37, 0xe8, 0x28, 0xf9, + 0xf3, 0x99, 0x19, 0xc0, 0xf7, 0xe3, 0x9d, 0xde, 0x30, 0x81, 0xcc, 0xac, + 0x8c, 0xe8, 0xaa, 0x9a, 0x0a, 0x3a, 0x09, 0x0d, 0x46, 0x3d, 0x3c, 0x43, + 0x4b, 0x39, 0x50, 0xeb, 0x86, 0x86, 0x87, 0x20, 0xe5, 0x94, 0x90, 0x89, + 0x3a, 0x1a, 0x79, 0x98, 0xc8, 0x87, 0x46, 0x84, 0xf2, 0x8e, 0xc5, 0xc5, + 0x58, 0x9f, 0x28, 0x9f, 0xe0, 0xfe, 0xd8, 0x1a, 0x79, 0x9d, 0x4e, 0x47, + 0x8d, 0x38, 0xf7, 0xad, 0x84, 0x90, 0x10, 0xae, 0x4b, 0x40, 0x92, 0x29, + 0xf9, 0xa4, 0xb4, 0xac, 0x98, 0x25, 0x23, 0x58, 0x8f, 0xe5, 0xa5, 0x1a, + 0x1a, 0xb4, 0x03, 0xad, 0x52, 0x83, 0x6a, 0x58, 0x05, 0xa2, 0x54, 0x21, + 0x2b, 0x88, 0x0e, 0x0f, 0x76, 0x3c, 0x17, 0x10, 0x18, 0xe0, 0x2f, 0x88, + 0x8a, 0xb0, 0xfd, 0xf6, 0xf4, 0x57, 0x18, 0x19, 0x55, 0xaf, 0x39, 0x37, + 0xa3, 0x9b, 0xa6, 0xc6, 0x9c, 0x3a, 0x9d, 0x02, 0x7c, 0x7f, 0xef, 0xaf, + 0x9c, 0x12, 0x38, 0x2b, 0x11, 0x5f, 0x99, 0xd0, 0x8c, 0xe3, 0x6c, 0x9f, + 0x47, 0x0b, 0x86, 0x56, 0x31, 0x3a, 0x36, 0x42, 0x2c, 0x42, 0xe5, 0xc9, + 0x10, 0x1e, 0x19, 0x1a, 0xf1, 0x67, 0x9e, 0xe3, 0xfb, 0xf3, 0x03, 0xc2, + 0x22, 0x42, 0x98, 0x41, 0x95, 0x12, 0x3d, 0x31, 0xe2, 0x78, 0x9e, 0x26, + 0xf0, 0x24, 0xe6, 0x8d, 0x8f, 0x3f, 0xaf, 0xc2, 0x29, 0x01, 0x8c, 0xab, + 0xd6, 0x6a, 0xb5, 0xd0, 0xb7, 0x99, 0x17, 0xea, 0x67, 0x14, 0xe3, 0x13, + 0xa3, 0x24, 0xa6, 0xe8, 0xf6, 0x64, 0x08, 0x8b, 0x08, 0x8e, 0x26, 0x72, + 0x69, 0x69, 0x29, 0x9f, 0xa6, 0x49, 0xc4, 0xe5, 0xe2, 0xb4, 0x94, 0x39, + 0xf1, 0x69, 0x51, 0x9d, 0x50, 0x98, 0xb0, 0x87, 0xac, 0xfb, 0xfa, 0xf2, + 0x82, 0x22, 0x05, 0xe1, 0x2c, 0xe6, 0x08, 0x9e, 0x1b, 0xb3, 0xdf, 0x41, + 0x0d, 0xc0, 0xb6, 0x4d, 0xc2, 0x30, 0xed, 0x94, 0x40, 0xa2, 0x30, 0xa1, + 0x88, 0xbc, 0x46, 0x99, 0x4c, 0xf3, 0x34, 0xde, 0xe4, 0xfb, 0x18, 0x1e, + 0x4e, 0x41, 0xcb, 0x83, 0xc3, 0x8e, 0xc4, 0x11, 0x19, 0xd1, 0x19, 0xd1, + 0xc7, 0x97, 0xf2, 0xb3, 0x96, 0xc6, 0xc7, 0xc7, 0x58, 0xe2, 0x5a, 0x95, + 0x4a, 0xc9, 0x66, 0x64, 0x9e, 0x5b, 0x8c, 0x4f, 0x8c, 0xff, 0x9c, 0x23, + 0x11, 0x11, 0x15, 0x23, 0x00, 0xb5, 0xfa, 0x39, 0x3d, 0x8f, 0xde, 0xc0, + 0xe7, 0x04, 0xf4, 0x7c, 0xaf, 0x00, 0xbe, 0xaf, 0xcf, 0x77, 0x4e, 0x09, + 0x9c, 0x38, 0x11, 0xfb, 0x59, 0x56, 0x76, 0x26, 0x3b, 0xf0, 0x78, 0x80, + 0x66, 0x75, 0xff, 0xc3, 0x3e, 0x48, 0x16, 0x25, 0x41, 0x50, 0x50, 0xe0, + 0x37, 0x76, 0x19, 0xb4, 0xba, 0x58, 0xad, 0x7e, 0xc1, 0x60, 0x86, 0x93, + 0x16, 0x4c, 0xfb, 0x40, 0x5f, 0x5f, 0x2f, 0x9b, 0x74, 0x32, 0xfe, 0x86, + 0x5d, 0xc6, 0xc7, 0xcf, 0x3b, 0x26, 0x1a, 0x49, 0xc8, 0xbb, 0x3a, 0xe9, + 0xfb, 0xe0, 0xfd, 0x9e, 0xfb, 0x10, 0x7d, 0x54, 0x00, 0x3c, 0x7f, 0xde, + 0x9e, 0x75, 0xab, 0x20, 0x32, 0x36, 0x72, 0x77, 0xb8, 0x20, 0xec, 0x6a, + 0x48, 0x78, 0x90, 0xee, 0x48, 0xc8, 0xe1, 0xca, 0x80, 0x23, 0x01, 0xfb, + 0x1d, 0xf7, 0x45, 0xa9, 0x27, 0x67, 0x8d, 0x46, 0x23, 0x6d, 0xc9, 0x46, + 0x5a, 0x25, 0x43, 0xa0, 0x54, 0x3d, 0x81, 0xd8, 0xe3, 0x31, 0x2b, 0x7c, + 0x3e, 0x7f, 0x75, 0x1a, 0xf2, 0x0e, 0xf2, 0x76, 0x93, 0x98, 0xa3, 0xdb, + 0xf5, 0xbe, 0x7e, 0xde, 0x35, 0xe8, 0x99, 0xfd, 0xaf, 0xd4, 0x8a, 0xf1, + 0xe3, 0x86, 0x70, 0x47, 0xec, 0x44, 0x78, 0x24, 0x26, 0x27, 0xd4, 0x2b, + 0x14, 0x72, 0x06, 0x93, 0x15, 0xfb, 0x81, 0x0a, 0x06, 0x1e, 0xff, 0x02, + 0x2d, 0x6d, 0xcd, 0xec, 0xd1, 0xb8, 0x98, 0xbb, 0xb8, 0xbf, 0x8b, 0xc8, + 0x71, 0xf2, 0xeb, 0x4e, 0x45, 0x67, 0x4a, 0x5d, 0xb9, 0x4b, 0xde, 0xe0, + 0x2e, 0x7d, 0x0b, 0xf1, 0x2e, 0xe2, 0x83, 0xbd, 0x7b, 0xf7, 0x7e, 0x8d, + 0x24, 0x56, 0xae, 0xb7, 0x5c, 0x63, 0xfa, 0x1f, 0xf6, 0x42, 0x43, 0x53, + 0x1d, 0x2a, 0x8f, 0x5a, 0x3a, 0xf0, 0xe5, 0x81, 0x40, 0xb2, 0x8f, 0x78, + 0x8f, 0x93, 0xdf, 0xc5, 0x9d, 0x77, 0xff, 0xab, 0xc1, 0xb4, 0xbe, 0xe5, + 0x9c, 0xd5, 0x88, 0x37, 0x11, 0x6f, 0x23, 0xde, 0x47, 0x7c, 0xb8, 0x6f, + 0x9f, 0x97, 0x0f, 0x66, 0x7b, 0x07, 0x36, 0xa3, 0xe5, 0xf0, 0xc8, 0x90, + 0x2e, 0x2f, 0xaf, 0x2f, 0x0e, 0x91, 0x75, 0x6e, 0xff, 0x1d, 0x4e, 0xde, + 0x83, 0x3b, 0xef, 0xb6, 0x29, 0x0f, 0x38, 0xf7, 0x0a, 0x25, 0xb5, 0x83, + 0xb3, 0xca, 0xc3, 0xd3, 0xd3, 0xd3, 0xae, 0xc8, 0x9d, 0x5b, 0x77, 0xb3, + 0x5b, 0xbb, 0x11, 0xfc, 0xff, 0xef, 0xf8, 0x77, 0xaf, 0x8d, 0xa3, 0xf6, + 0x91, 0xdf, 0xa3, 0x23, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, + 0xae, 0x42, 0x60, 0x82 +}; +unsigned int go_top_png_len = 1420; +unsigned char go_bottom_png[] = { + 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x06, 0x00, 0x00, 0x00, 0x73, 0x7a, 0x7a, 0xf4, 0x00, 0x00, 0x05, + 0x92, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0xdd, 0x56, 0x5b, 0x4c, 0xd3, + 0x57, 0x18, 0x47, 0xf1, 0x32, 0x17, 0x92, 0x85, 0x2c, 0xfa, 0xb0, 0xa7, + 0x6d, 0xc9, 0x1e, 0xe6, 0x16, 0x13, 0x1f, 0x4c, 0x76, 0x49, 0x16, 0x92, + 0xed, 0xc5, 0x07, 0x1e, 0xf6, 0x80, 0x8a, 0x57, 0x04, 0x44, 0x50, 0x41, + 0x11, 0x15, 0xaf, 0x88, 0xa8, 0x28, 0x4e, 0xb4, 0xa5, 0x17, 0xa0, 0x2d, + 0x50, 0x2e, 0x85, 0x52, 0x28, 0xa5, 0x76, 0x6d, 0x69, 0x0b, 0x45, 0x87, + 0xd3, 0x65, 0x5b, 0x96, 0x6c, 0x3a, 0xa2, 0xc8, 0x45, 0xa0, 0x2d, 0x6d, + 0x69, 0x69, 0xa1, 0x94, 0xdb, 0xe9, 0xff, 0xff, 0xed, 0x9c, 0x23, 0x7f, + 0xd3, 0x80, 0x43, 0x37, 0x95, 0x5d, 0xfe, 0xc9, 0x2f, 0xed, 0xb9, 0xfe, + 0x7e, 0xdf, 0x77, 0xce, 0xf9, 0xbe, 0x2f, 0x02, 0x00, 0xfe, 0x51, 0xfc, + 0x77, 0x05, 0xb4, 0xb6, 0x1a, 0x37, 0x58, 0xac, 0x2d, 0x4a, 0x73, 0x9b, + 0x31, 0x68, 0x69, 0x6f, 0xd1, 0x98, 0xcd, 0x86, 0xcf, 0x17, 0x47, 0x00, + 0x25, 0x37, 0xac, 0xed, 0xb8, 0x73, 0x6b, 0x72, 0xc4, 0xe7, 0x65, 0x43, + 0xa1, 0x10, 0x38, 0x86, 0xec, 0x6c, 0xfb, 0x77, 0x96, 0x09, 0x9d, 0x51, + 0x13, 0xb3, 0x28, 0x02, 0xcc, 0x56, 0xa3, 0xdc, 0xe3, 0x19, 0xa6, 0xe4, + 0xe3, 0xe3, 0x01, 0x70, 0xbb, 0x5d, 0xf0, 0xe0, 0x61, 0x27, 0xab, 0x33, + 0x68, 0xf4, 0x2f, 0x2b, 0x80, 0x73, 0xef, 0xa7, 0x66, 0xab, 0xbe, 0xc4, + 0xdc, 0x66, 0xb0, 0x63, 0x17, 0x4b, 0x89, 0xc5, 0xe1, 0xe3, 0xb8, 0xdf, + 0x1f, 0x08, 0x8c, 0x41, 0x30, 0x18, 0x00, 0x9f, 0xcf, 0x0b, 0xdd, 0x3d, + 0x5d, 0xf0, 0xa8, 0xe7, 0x21, 0x68, 0x6e, 0x34, 0x4c, 0xab, 0x54, 0xaa, + 0x48, 0x6e, 0x5e, 0x79, 0xb5, 0xe4, 0x33, 0x59, 0x45, 0x89, 0xa8, 0x54, + 0x2a, 0xb6, 0x89, 0x4b, 0x05, 0x0a, 0x7e, 0x31, 0xff, 0xe3, 0xe7, 0x0a, + 0x30, 0x9b, 0x75, 0x1f, 0x74, 0x7c, 0xdf, 0x1e, 0x72, 0x0c, 0xd9, 0x60, + 0x6a, 0x6a, 0x92, 0xb8, 0x17, 0x6e, 0xdf, 0xbd, 0xc9, 0x9a, 0xac, 0xc6, + 0x0c, 0x6e, 0x8e, 0xd1, 0xa4, 0x93, 0x77, 0x3e, 0xb8, 0xcf, 0x38, 0x1c, + 0x36, 0xe8, 0xee, 0xee, 0x82, 0xdf, 0xee, 0xfd, 0x0a, 0x3f, 0xfc, 0x74, + 0x9b, 0x6d, 0xd4, 0xd4, 0xeb, 0x9f, 0x92, 0xcb, 0x4b, 0x53, 0x94, 0xaa, + 0x1a, 0xb6, 0xef, 0x71, 0x1f, 0x4c, 0x4c, 0x4c, 0x40, 0x6f, 0x5f, 0x0f, + 0x94, 0xcb, 0xa5, 0x6c, 0x61, 0x61, 0xc1, 0x97, 0x0b, 0x0a, 0x30, 0xb5, + 0x19, 0x14, 0x84, 0x14, 0x21, 0x04, 0x33, 0x33, 0x33, 0xf4, 0x77, 0x72, + 0x72, 0x92, 0x88, 0x00, 0x93, 0xc5, 0x90, 0x46, 0xe6, 0x34, 0x1b, 0x9a, + 0xd7, 0xea, 0x8d, 0xda, 0x89, 0x3b, 0x77, 0x3b, 0x42, 0x3f, 0xff, 0xf2, + 0x23, 0x74, 0xdc, 0xb1, 0x32, 0x0d, 0x4d, 0xca, 0x60, 0x5d, 0x43, 0x35, + 0xbd, 0x03, 0xd2, 0x72, 0xf1, 0x6e, 0x45, 0x5d, 0x15, 0x3b, 0x86, 0xbd, + 0x14, 0xbe, 0xcf, 0xc3, 0xae, 0x07, 0x70, 0xf1, 0x72, 0x5e, 0xfd, 0x02, + 0x02, 0xa8, 0x7b, 0x07, 0x89, 0xe2, 0xe9, 0xe9, 0x69, 0xec, 0x81, 0x29, + 0x02, 0xfa, 0x7f, 0x7c, 0x7c, 0x1c, 0xda, 0x6e, 0x9a, 0x59, 0xad, 0xae, + 0x69, 0x0f, 0x99, 0xa7, 0xbe, 0xa1, 0xdc, 0xa0, 0x6e, 0x56, 0x29, 0x1b, + 0x31, 0xb1, 0x4a, 0xad, 0xd4, 0xd4, 0xd4, 0xcb, 0xe9, 0x2b, 0x28, 0x96, + 0x88, 0xb6, 0x55, 0xd6, 0x54, 0x30, 0x3e, 0xbf, 0x2f, 0x7c, 0x0f, 0x8a, + 0x60, 0x30, 0x08, 0xb9, 0x79, 0x67, 0x02, 0xb9, 0xb9, 0xb9, 0x4b, 0x17, + 0x12, 0x50, 0xfc, 0xc4, 0xfd, 0x53, 0xc4, 0x75, 0x1c, 0x68, 0x7b, 0x6c, + 0x6c, 0x0c, 0xf4, 0x2d, 0x5a, 0x56, 0xd9, 0x50, 0xbd, 0x7b, 0xee, 0xba, + 0x27, 0xe4, 0xc2, 0x4d, 0xe5, 0x72, 0x59, 0xc8, 0xeb, 0xf5, 0x3c, 0x73, + 0xfd, 0xfd, 0xdf, 0xef, 0xc1, 0xa9, 0xd3, 0xc7, 0x95, 0x0b, 0x7a, 0xc0, + 0x62, 0x31, 0xc6, 0xe0, 0x3b, 0x40, 0xc8, 0xa8, 0xe2, 0x40, 0x20, 0xc0, + 0x81, 0xb6, 0x7d, 0x3e, 0x1f, 0xa8, 0x35, 0x2a, 0xa6, 0xa2, 0x4a, 0xb6, + 0x23, 0x7c, 0x9d, 0xb0, 0x98, 0xff, 0xb5, 0xb4, 0xac, 0x04, 0xb9, 0xdc, + 0xae, 0x67, 0xae, 0x1b, 0x1d, 0x1d, 0x05, 0x9e, 0xe0, 0x3a, 0x64, 0x65, + 0x67, 0x7d, 0xf1, 0xdc, 0x57, 0x60, 0x68, 0xd1, 0x66, 0xb5, 0xdf, 0x6a, + 0x05, 0xff, 0xa8, 0x9f, 0x6c, 0x40, 0x16, 0x73, 0xa0, 0x47, 0x81, 0x9f, + 0x20, 0xd4, 0xd4, 0x55, 0x85, 0x4a, 0xa4, 0xa2, 0x78, 0x32, 0xbf, 0x48, + 0x74, 0x2d, 0x16, 0x5b, 0x3f, 0x33, 0xe4, 0x1c, 0x22, 0xe3, 0xe1, 0xf3, + 0xe9, 0x7a, 0xbf, 0xdf, 0x0f, 0x02, 0x21, 0x0f, 0xb2, 0x8e, 0x66, 0x9e, + 0x7f, 0xe1, 0x38, 0xa0, 0xd6, 0xd6, 0x9f, 0x30, 0x59, 0xf4, 0x58, 0x84, + 0x0f, 0x7b, 0x63, 0x14, 0x6f, 0xe2, 0x7b, 0x0a, 0xf2, 0x04, 0x89, 0xa5, + 0xb2, 0xf2, 0xd2, 0xd0, 0x75, 0xfe, 0xd5, 0x02, 0xa1, 0x98, 0x3f, 0x65, + 0xb7, 0x0f, 0x92, 0xfe, 0xf0, 0x79, 0x74, 0x1d, 0xb9, 0x0b, 0x42, 0x11, + 0x1f, 0x0e, 0x67, 0x65, 0x14, 0xfc, 0xe5, 0x40, 0xa4, 0xa8, 0xab, 0x3c, + 0xab, 0xd3, 0x37, 0x63, 0xb7, 0x8f, 0xd0, 0x0d, 0x47, 0x46, 0xbc, 0x1c, + 0xa8, 0x75, 0x76, 0xbb, 0x0d, 0x24, 0xb2, 0x62, 0x18, 0x18, 0xec, 0x27, + 0x64, 0xe1, 0xe3, 0x64, 0x3e, 0x5d, 0x27, 0xc0, 0xe4, 0x07, 0x0f, 0xa5, + 0x5f, 0xff, 0xdb, 0x91, 0x50, 0x5a, 0x51, 0x7a, 0x51, 0xdd, 0xdc, 0x80, + 0x37, 0xf5, 0xd0, 0x8d, 0x3d, 0x1e, 0x37, 0x07, 0x4c, 0x42, 0x85, 0x51, + 0x84, 0xf7, 0x73, 0x73, 0x85, 0x22, 0x1e, 0xa4, 0x67, 0xec, 0x17, 0xbe, + 0x74, 0x28, 0x16, 0x89, 0xf9, 0xdf, 0x28, 0x55, 0xb5, 0xe4, 0xec, 0x29, + 0x81, 0xcb, 0x35, 0xc4, 0x61, 0x5e, 0x7b, 0x78, 0xd8, 0x05, 0x5e, 0xef, + 0x30, 0x08, 0x30, 0xf9, 0xbe, 0x03, 0x7b, 0x25, 0x11, 0x11, 0x11, 0x4b, + 0x5e, 0x49, 0x2e, 0x28, 0xbc, 0x56, 0xc0, 0xaf, 0x56, 0xc8, 0x71, 0xdc, + 0x77, 0x52, 0x22, 0x1c, 0x05, 0xe7, 0xc1, 0xe9, 0x24, 0x02, 0xdc, 0x94, + 0x7c, 0x6f, 0xea, 0x9e, 0x0a, 0x42, 0xfe, 0x4a, 0x93, 0xd1, 0xf9, 0xfc, + 0x5c, 0x71, 0x99, 0x5c, 0x06, 0x4e, 0x2c, 0xc0, 0x8e, 0x09, 0xf1, 0xd9, + 0x73, 0x20, 0xf7, 0x01, 0xf7, 0x3b, 0xa1, 0x48, 0xc0, 0x83, 0xe4, 0xd4, + 0x24, 0x05, 0x17, 0x6c, 0x5e, 0xa9, 0x80, 0x08, 0x88, 0x58, 0x72, 0xea, + 0x74, 0xb6, 0xac, 0x54, 0x52, 0x4c, 0x72, 0x04, 0x25, 0xee, 0x7b, 0xdc, + 0x4b, 0x7f, 0x87, 0x9c, 0x0e, 0xfc, 0xd4, 0xf8, 0x90, 0xb4, 0x27, 0x41, + 0x15, 0x17, 0x17, 0x17, 0xf9, 0xda, 0xd2, 0x31, 0xb1, 0xec, 0xf0, 0xd1, + 0x43, 0x95, 0x22, 0xb1, 0x80, 0x5a, 0xdd, 0x3f, 0xd0, 0x8f, 0xdd, 0x6f, + 0x87, 0x22, 0x7c, 0xdb, 0x13, 0x12, 0x77, 0x69, 0x62, 0x62, 0x62, 0x96, + 0xbd, 0xf6, 0x7a, 0x80, 0x58, 0xb8, 0xef, 0x40, 0x6a, 0x2d, 0x4f, 0xc0, + 0xc3, 0xd6, 0x0f, 0xe0, 0x33, 0x2f, 0x82, 0x9d, 0xbb, 0x76, 0xe8, 0x70, + 0xff, 0x8a, 0x45, 0x2a, 0xc9, 0xa8, 0x27, 0x96, 0x25, 0x26, 0xed, 0x6a, + 0xcc, 0x38, 0xb4, 0x1f, 0xb6, 0xed, 0x8c, 0x6f, 0xd9, 0xb8, 0x71, 0xe3, + 0xca, 0x45, 0x2f, 0x4a, 0x53, 0x52, 0x52, 0x96, 0xc7, 0x6f, 0xdb, 0x9c, + 0x83, 0x2d, 0x5f, 0xf5, 0xff, 0xa9, 0x8a, 0xb5, 0x66, 0xed, 0x3b, 0xad, + 0x37, 0x4d, 0x65, 0x16, 0xab, 0x31, 0x88, 0x81, 0x4c, 0xad, 0x7a, 0x84, + 0x53, 0x30, 0xd2, 0x7e, 0xab, 0x46, 0x38, 0xff, 0xa3, 0xfa, 0xc6, 0x5a, + 0x54, 0x5b, 0x5f, 0x85, 0xaa, 0x14, 0x65, 0xa8, 0xac, 0x52, 0x82, 0x4a, + 0x65, 0x62, 0x24, 0x2a, 0x29, 0x42, 0x7c, 0xe1, 0x35, 0x54, 0xc8, 0xbb, + 0x82, 0x0a, 0xae, 0xe6, 0x23, 0x5c, 0x74, 0xa0, 0x73, 0x17, 0x72, 0x50, + 0x4e, 0xee, 0x69, 0x74, 0xf2, 0xcc, 0x71, 0x74, 0xec, 0xc4, 0x11, 0x74, + 0xe4, 0x58, 0xe6, 0xe4, 0x91, 0xec, 0xcc, 0xba, 0xb4, 0xb4, 0xc4, 0xf7, + 0x49, 0x7c, 0x98, 0x27, 0x80, 0x74, 0x62, 0x44, 0x9a, 0xad, 0x06, 0xb9, + 0xcb, 0xed, 0x64, 0xe0, 0x85, 0x3e, 0x16, 0x58, 0xf6, 0xcf, 0x11, 0xf6, + 0xd1, 0x76, 0x67, 0x67, 0x27, 0x9b, 0x94, 0xbc, 0xfb, 0x06, 0xe1, 0x21, + 0x7c, 0x73, 0x04, 0xd0, 0xce, 0x55, 0xb8, 0xb0, 0x1c, 0x25, 0x93, 0x11, + 0x42, 0xa4, 0x90, 0xe0, 0xd2, 0x31, 0x49, 0x2c, 0x24, 0xbe, 0x93, 0x50, + 0x4b, 0xdf, 0xbc, 0xcd, 0x36, 0x00, 0x8f, 0xfb, 0xfb, 0xa0, 0xa7, 0xb7, + 0x1b, 0x1e, 0x75, 0x77, 0x91, 0x5f, 0xdc, 0xee, 0x05, 0x9b, 0x7d, 0x80, + 0x8c, 0xd3, 0x88, 0xe8, 0xf5, 0x7a, 0x49, 0x2a, 0x26, 0xa0, 0xf5, 0x05, + 0xa9, 0xa2, 0xf1, 0x9d, 0x99, 0x5e, 0xbd, 0x7a, 0x75, 0x14, 0xe6, 0x5a, + 0x46, 0x44, 0x84, 0x5b, 0xbf, 0x02, 0xe3, 0x2d, 0x49, 0x99, 0xa8, 0x69, + 0xd0, 0x36, 0xc0, 0x32, 0x0c, 0x43, 0x05, 0x04, 0x83, 0xe3, 0xa4, 0xf4, + 0x9e, 0x4d, 0xc9, 0x23, 0xe0, 0x1d, 0xf1, 0x90, 0xcd, 0x69, 0xd4, 0x73, + 0x0c, 0x39, 0x28, 0x19, 0xf6, 0x18, 0x0c, 0x7b, 0xdc, 0x5c, 0x16, 0x24, + 0x64, 0xa4, 0x2e, 0x20, 0x85, 0x08, 0x07, 0x9a, 0x96, 0x9b, 0x9a, 0xd4, + 0xec, 0xd6, 0x1d, 0xf1, 0x56, 0xc2, 0x83, 0xb1, 0x72, 0xae, 0x80, 0xe5, + 0x64, 0x20, 0x36, 0x36, 0xf6, 0x93, 0xfc, 0xcb, 0xe7, 0xdb, 0xaf, 0x14, + 0x5e, 0x42, 0x97, 0xae, 0x5c, 0x64, 0x2e, 0xe4, 0xe7, 0x31, 0xe7, 0xf2, + 0x72, 0x98, 0x33, 0x67, 0x4f, 0x32, 0x27, 0x4e, 0x1d, 0x63, 0x8e, 0x66, + 0x1f, 0x66, 0x32, 0xb3, 0x32, 0x98, 0xf4, 0x83, 0xfb, 0x98, 0xb4, 0xfd, + 0x29, 0x4c, 0x4a, 0x6a, 0x32, 0x93, 0x98, 0x9c, 0xc0, 0xec, 0x4c, 0xd8, + 0xce, 0x6c, 0xdd, 0xbe, 0x85, 0xc1, 0x16, 0x3e, 0x13, 0x5b, 0xb6, 0x6e, + 0x0a, 0x6d, 0xde, 0x12, 0x77, 0x77, 0xfd, 0xfa, 0xf5, 0x5f, 0xcd, 0x0a, + 0x58, 0x41, 0x78, 0xe7, 0x1e, 0xc1, 0x1b, 0x18, 0xd1, 0x18, 0xef, 0x46, + 0x45, 0x45, 0x7d, 0xb8, 0x66, 0xcd, 0x9a, 0x75, 0x4f, 0x10, 0xbd, 0x2e, + 0x3a, 0xfa, 0xe5, 0x80, 0xf7, 0xfb, 0x08, 0xef, 0xfb, 0x1e, 0xc6, 0xdb, + 0xb3, 0x3c, 0x91, 0xf3, 0x5e, 0x01, 0xfe, 0x96, 0x86, 0x09, 0x79, 0xf3, + 0x35, 0x60, 0xe5, 0xac, 0xa7, 0x97, 0xfe, 0x6b, 0xe2, 0xc0, 0x1f, 0xd7, + 0x40, 0x5c, 0xba, 0xa6, 0xc9, 0x79, 0x83, 0x00, 0x00, 0x00, 0x00, 0x49, + 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 +}; +unsigned int go_bottom_png_len = 1483; diff --git a/src/loadfile.cpp b/src/loadfile.cpp index 4e02374..968f681 100644 --- a/src/loadfile.cpp +++ b/src/loadfile.cpp @@ -181,6 +181,8 @@ static bool notdone(const bool arr[], const u32 num) { return false; } +static bool aborting = false; + static void *renderer(void *) { // Optional timing @@ -208,6 +210,8 @@ static void *renderer(void *) { while (notdone(done, chunks)) { for (c = 0; c < chunks; c++) { + if (aborting) return NULL; + // Did the user skip around? const u32 first = __sync_fetch_and_add(&file->first_visible, 0); if (first) { @@ -267,18 +271,29 @@ static void *renderer(void *) { return NULL; } -void loadfile(const char *file) { +bool loadfile(const char *file, recent_file_struct *recent_files) { + + bool recent = false; + + if (!file) { + if (!recent_files) { + file = fl_file_chooser(_("Open PDF"), "*.pdf", NULL, 0); + } + else { + file = recent_files->filename.c_str(); + recent = true; + } + } if (!file) - file = fl_file_chooser(_("Open PDF"), "*.pdf", NULL, 0); - if (!file) - return; + return false; // Refresh window Fl::check(); // Parse info GooString gooname(file); + PDFDoc *pdf = new PDFDoc(&gooname); if (!pdf->isOk()) { const int err = pdf->getErrorCode(); @@ -298,12 +313,13 @@ void loadfile(const char *file) { fl_alert(_("Error %d, %s"), err, msg); - return; + return false; } if (::file->cache) { // Free the old one - pthread_cancel(::file->tid); + //pthread_cancel(::file->tid); + aborting = true; pthread_join(::file->tid, NULL); u32 i; @@ -316,6 +332,10 @@ void loadfile(const char *file) { ::file->cache = NULL; } + if (::file->filename) free(::file->filename); + if (::file->pdf) free(::file->pdf); + ::file->filename = (char *) xmalloc(strlen(file) + 1); + strcpy(::file->filename, file); ::file->pdf = pdf; ::file->pages = pdf->getNumPages(); ::file->maxw = ::file->maxh = ::file->first_visible = ::file->last_visible = 0; @@ -323,7 +343,7 @@ void loadfile(const char *file) { // Start threaded magic if (::file->pages < 1) { fl_alert(_("Couldn't open %s, perhaps it's corrupted?"), file); - return; + return false; } fl_cursor(FL_CURSOR_WAIT); @@ -340,6 +360,7 @@ void loadfile(const char *file) { const struct sched_param nice = { 15 }; pthread_attr_setschedparam(&attr, &nice); + aborting = false; pthread_create(&::file->tid, &attr, renderer, NULL); // Update title @@ -360,5 +381,12 @@ void loadfile(const char *file) { sprintf(tmp, "/ %u", ::file->pages); pagectr->copy_label(tmp); pagebox->value("1"); + if (recent) { + ::file->zoom = recent_files->zoom; + ::file->mode = (zoommode)recent_files->zoom_mode; + } + view->reset(); + + return recent; } diff --git a/src/main.cpp b/src/main.cpp index 703137f..ed11c36 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -16,45 +16,161 @@ along with this program. If not, see . #include "main.h" #include "wmicon.h" -#include "icons.h" +//#include "icons.h" +#include "icons 32x32.h" #include #include #include +#include +#include +#include +#include -Fl_Double_Window *win = (Fl_Double_Window *) 0; -static Fl_Pack *buttons = (Fl_Pack *) 0; +using namespace std; +using namespace libconfig; + +Fl_Double_Window *win = NULL; +static Fl_Pack* win_pack = NULL; +static Fl_Pack *buttons = NULL; static Fl_Button *showbtn = NULL; +static Fl_Button *fullscreenbtn = NULL; +static Fl_Button *recentselectbtn = NULL; + +static Fl_PNG_Image *fullscreen_image = NULL; +static Fl_PNG_Image *fullscreenreverse_image = NULL; + Fl_Box *pagectr = (Fl_Box *) 0; +Fl_Box *debug1 = (Fl_Box *) 0, + *debug2 = (Fl_Box *) 0, + *debug3 = (Fl_Box *) 0, + *debug4 = (Fl_Box *) 0, + *debug5 = (Fl_Box *) 0, + *debug6 = (Fl_Box *) 0, + *debug7 = (Fl_Box *) 0; + Fl_Input *pagebox = NULL; -Fl_Input_Choice *zoombar = (Fl_Input_Choice *) 0; +Fl_Input_Choice *zoombar = NULL; +Fl_Choice *columns = NULL; Fl_Light_Button *selecting = NULL; + +Fl_Window *recent_win = NULL; +Fl_Select_Browser *recent_select = NULL; + pdfview *view = NULL; int writepipe; +bool fullscreen; u8 details = 0; openfile *file = NULL; static Fl_Menu_Item menu_zoombar[] = { - {"Trim", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, - {"Width", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, - {"Page", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {"Trim", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {"Width", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {"Page", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {"PgTrim", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {0,0,0,0,0,0,0,0,0} +}; + +static Fl_Menu_Item menu_columns[] = { + {"1 Col.", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {"2 Col.", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {"3 Col.", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {"4 Col.", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, + {"5 Col.", 0, 0, 0, 0, FL_NORMAL_LABEL, 0, 14, 0}, {0,0,0,0,0,0,0,0,0} }; +void debug(Fl_Box * ctrl, const float value, const char * hint) { + + char tmp[20]; + + snprintf(tmp, 20, "%5.3f", value); + ctrl->copy_label(tmp); + ctrl->tooltip(hint); + ctrl->redraw_label(); +} + +void debug(Fl_Box * ctrl, const u32 value, const char * hint) { + + char tmp[20]; + + snprintf(tmp, 20, "%u", value); + ctrl->copy_label(tmp); + ctrl->tooltip(hint); + ctrl->redraw_label(); + Fl::check(); +} + +void debug(Fl_Box * ctrl, const s32 value, const char * hint) { + + char tmp[20]; + + snprintf(tmp, 20, "%d", value); + ctrl->copy_label(tmp); + ctrl->tooltip(hint); + ctrl->redraw_label(); + Fl::check(); +} + +void save_current_to_config() { + save_to_config( + file->filename, + view->get_columns(), + view->get_xoff(), + view->get_yoff(), + file->zoom, + file->mode, + win->x(), + win->y(), + win->w(), + win->h(), + fullscreen); +} + +void cb_exit(Fl_Widget*, void*) { + save_current_to_config(); + save_config(); + exit(0); +} + +void cb_fullscreen(Fl_Button*, void*) { + if (fullscreen) { + fullscreen = false; + fullscreenbtn->image(fullscreen_image); + fullscreenbtn->tooltip(_("Enter Full Screen")); + win->fullscreen_off(); + } + else { + fullscreen = true; + fullscreenbtn->image(fullscreenreverse_image); + fullscreenbtn->tooltip(_("Exit Full Screen")); + win->fullscreen(); + } + view->take_focus(); +} + static void cb_Open(Fl_Button*, void*) { - loadfile(NULL); + save_current_to_config(); + loadfile(NULL, NULL); + view->take_focus(); +} + +static void display_zoom(const float what) +{ + char tmp[10]; + snprintf(tmp, 10, "%.0f%%", what * 100); + zoombar->value(tmp); } static void applyzoom(const float what) { file->zoom = what > 0.01f ? what : 0.01f; file->mode = Z_CUSTOM; - char tmp[10]; - snprintf(tmp, 10, "%.0f%%", what * 100); - zoombar->value(tmp); + display_zoom(what); - view->resetselection(); + view->take_focus(); + view->reset_selection(); view->redraw(); } @@ -70,22 +186,127 @@ static void cb_zoombar(Fl_Input_Choice *w, void*) { file->mode = Z_WIDTH; } else if (!strcmp(val, menu_zoombar[2].text)) { file->mode = Z_PAGE; + } else if (!strcmp(val, menu_zoombar[3].text)) { + file->mode = Z_PGTRIM; } else { //fl_alert(_("Unrecognized zoom level")); } } + view->take_focus(); view->redraw(); } +static void adjust_display_from_recent(recent_file_struct &recent) +{ + view->set_params(recent.columns, recent.xoff, recent.yoff); + if ((recent.columns >= 1) && (recent.columns <= 5)) { + columns->value(recent.columns - 1); + } + + fullscreen = !recent.fullscreen; // Must be inversed... + cb_fullscreen(NULL, NULL); // ...as cb_fullscreen is a toggle + + if (recent.zoom_mode == Z_CUSTOM) + display_zoom(recent.zoom); + else + zoombar->value(menu_zoombar[recent.zoom_mode].text); + + win->damage(FL_DAMAGE_ALL); + win->flush(); + + win->position(recent.x, recent.y); + win->size(recent.width, recent.height); +} + +void cb_recent_select(Fl_Select_Browser *, void *) { + + recent_win->hide(); + + int i = recent_select->value(); + + if (i <= 0) return; + + i -= 1; + + recent_file_struct *rf = recent_files; + while ((i > 0) && (rf != NULL)) { + rf = rf->next; + i -= 1; + } + + save_current_to_config(); + if ((rf != NULL) && loadfile(NULL, rf)) { + adjust_display_from_recent(*rf); + view->take_focus(); + } +} + +static void cb_OpenRecent(Fl_Button*, void*) { + + if (recent_win == NULL){ + recent_win = new Fl_Window( + win->x() + 30, + win->y() + 100, 450, 180, "Recent Files"); + Fl_Pack *p = new Fl_Pack(10, 10, 430, 160); + p->type(1); + { + recent_select = new Fl_Select_Browser(0, 0, 430, 160); + recent_select->callback((Fl_Callback*)cb_recent_select); + recent_select->resizable(); + recent_select->show(); + } + p->resizable(); + } + else { + recent_select->clear(); + } + + recent_file_struct *rf = recent_files; + while (rf != NULL) { + recent_select->add(rf->filename.c_str()); + rf = rf->next; + } + + recent_win->set_modal(); + recent_win->show(); +} + +static void cb_columns(Fl_Choice *w, void*) { + const int idx = w->value(); + view->set_columns(idx + 1); +} + +void cb_page_up(Fl_Button*, void*) { + view->page_up(); + view->take_focus(); +} + +void cb_page_down(Fl_Button*, void*) { + view->page_down(); + view->take_focus(); +} + +void cb_page_top(Fl_Button*, void*) { + view->page_top(); + view->take_focus(); +} + +void cb_page_bottom(Fl_Button*, void*) { + view->page_bottom(); + view->take_focus(); +} + void cb_Zoomin(Fl_Button*, void*) { file->zoom *= 1.2f; applyzoom(file->zoom); + view->take_focus(); } void cb_Zoomout(Fl_Button*, void*) { file->zoom *= 0.833333; applyzoom(file->zoom); + view->take_focus(); } void cb_hide(Fl_Widget*, void*) { @@ -97,9 +318,10 @@ void cb_hide(Fl_Widget*, void*) { showbtn->hide(); buttons->show(); } + view->take_focus(); } -static void goto_page(Fl_Input *w, void*) { +static void cb_goto_page(Fl_Input *w, void*) { const u32 which = atoi(w->value()) - 1; if (which >= file->pages) { fl_alert(_("Page out of bounds")); @@ -140,7 +362,7 @@ static void checkX() { } static void selecting_changed(Fl_Widget *, void *) { - view->resetselection(); + view->reset_selection(); view->redraw(); } @@ -155,10 +377,10 @@ int main(int argc, char **argv) { #endif const struct option opts[] = { - {"details", 0, NULL, 'd'}, - {"help", 0, NULL, 'h'}, - {"version", 0, NULL, 'v'}, - {NULL, 0, NULL, 0} + { "details", 0, NULL, 'd' }, + { "help", 0, NULL, 'h' }, + { "version", 0, NULL, 'v' }, + { NULL, 0, NULL, 0 } }; while (1) { @@ -199,25 +421,44 @@ int main(int argc, char **argv) { #define img(a) a, sizeof(a) - win = new Fl_Double_Window(705, 700, "FlaxPDF"); - Fl_Pack* o = new Fl_Pack(0, 0, 705, 700); - o->type(1); - { buttons = new Fl_Pack(0, -4, 64, 704); - { Fl_Button* o = new Fl_Button(0, 0, 64, 64); + fullscreen_image = new Fl_PNG_Image("fullscreen.png", img(view_fullscreen_png)); + fullscreenreverse_image = new Fl_PNG_Image("fullscreenreverse.png", img(view_restore_png)); + + fullscreen = false; + + int pos; + + win = new Fl_Double_Window(700, 700, "FlaxPDF"); + win_pack = new Fl_Pack(0, 0, 700, 700); + win_pack->type(1); + + { buttons = new Fl_Pack(0, 0, 64, 700); + { Fl_Button* o = new Fl_Button(0, pos = 0, 64, 32); + o->tooltip(_("Hide toolbar (F8)")); + o->callback(cb_hide); + o->image(new Fl_PNG_Image("back.png", img(media_seek_backward_png))); + } // Fl_Button* o + { Fl_Button* o = new Fl_Button(0, pos += 32, 64, 48); o->tooltip(_("Open a new file")); o->callback((Fl_Callback*)cb_Open); - o->image(new Fl_PNG_Image("fileopen.png", img(fileopen_png))); + o->image(new Fl_PNG_Image("fileopen.png", img(document_open_png))); } // Fl_Button* o - { pagebox = new Fl_Input(0, 64, 64, 32); + { Fl_Button* recentselectbtn = new Fl_Button(0, pos += 48, 64, 48); + recentselectbtn->tooltip(_("Open a recent file")); + recentselectbtn->callback((Fl_Callback*)cb_OpenRecent); + recentselectbtn->image(new Fl_PNG_Image("fileopen.png", img(emblem_documents_png))); + } // Fl_Button* recentselectbtn + { pagebox = new Fl_Input(0, pos += 48, 64, 24); pagebox->value("0"); - pagebox->callback((Fl_Callback*)goto_page); + pagebox->callback((Fl_Callback*)cb_goto_page); pagebox->when(FL_WHEN_ENTER_KEY | FL_WHEN_NOT_CHANGED); } // Fl_Box* pagectr - { pagectr = new Fl_Box(0, 64, 64, 32, "/ 0"); + { pagectr = new Fl_Box(0, pos += 24, 64, 24, "/ 0"); + pagectr->tooltip(_("Document Page Count")); pagectr->box(FL_ENGRAVED_FRAME); pagectr->align(FL_ALIGN_WRAP); } // Fl_Box* pagectr - { zoombar = new Fl_Input_Choice(0, 128, 64, 32); + { zoombar = new Fl_Input_Choice(0, pos += 24, 64, 24); zoombar->tooltip(_("Preset zoom choices")); zoombar->callback((Fl_Callback*)cb_zoombar); zoombar->menu(menu_zoombar); @@ -225,27 +466,103 @@ int main(int argc, char **argv) { zoombar->textsize(11); zoombar->input()->when(FL_WHEN_ENTER_KEY | FL_WHEN_NOT_CHANGED); } // Fl_Input_Choice* zoombar - { Fl_Button* o = new Fl_Button(0, 160, 64, 64); - o->tooltip(_("Zoom in")); - o->callback((Fl_Callback*)cb_Zoomin); - o->image(new Fl_PNG_Image("zoomin.png", img(zoomin_png))); - } // Fl_Button* o - { Fl_Button* o = new Fl_Button(0, 224, 64, 64); - o->tooltip(_("Zoom out")); - o->callback((Fl_Callback*)cb_Zoomout); - o->image(new Fl_PNG_Image("zoomout.png", img(zoomout_png))); - } // Fl_Button* o - { selecting = new Fl_Light_Button(0, 288, 64, 64); + { Fl_Pack* zooms = new Fl_Pack(0, pos += 24, 64, 32); + zooms->type(Fl_Pack::HORIZONTAL); + { Fl_Button* o = new Fl_Button(0, 0, 32, 32); + o->tooltip(_("Zoom in")); + o->callback((Fl_Callback*)cb_Zoomin); + o->image(new Fl_PNG_Image("zoomin.png", img(zoom_in_png))); + } // Fl_Button* o + { Fl_Button* o = new Fl_Button(32, 0, 32, 32); + o->tooltip(_("Zoom out")); + o->callback((Fl_Callback*)cb_Zoomout); + o->image(new Fl_PNG_Image("zoomout.png", img(zoom_out_png))); + } // Fl_Button* o + zooms->end(); + zooms->show(); + } // Fl_Pack* zooms + { selecting = new Fl_Light_Button(0, pos += 32, 64, 38); selecting->tooltip(_("Select text")); selecting->align(FL_ALIGN_CENTER); - selecting->image(new Fl_PNG_Image("text.png", img(text_png))); + selecting->image(new Fl_PNG_Image("text.png", img(edit_select_all_png))); selecting->callback(selecting_changed); - } // Fl_Light_Button* o - { Fl_Button* o = new Fl_Button(0, 224, 64, 64); - o->tooltip(_("Hide toolbar (F8)")); - o->callback(cb_hide); - o->image(new Fl_PNG_Image("back.png", img(back_png))); - } // Fl_Button* o + } // Fl_Light_Button* selecting + + { columns = new Fl_Choice(0, pos += 38, 64, 24); + columns->tooltip(_("Number of Columns")); + columns->callback((Fl_Callback*)cb_columns); + columns->menu(menu_columns); + columns->value(0); + columns->textsize(11); + columns->align(FL_ALIGN_CENTER); + //columns->input()->when(FL_WHEN_ENTER_KEY | FL_WHEN_NOT_CHANGED); + } // Fl_Input_Choice* zoombar + { Fl_Pack* page_moves = new Fl_Pack(0, pos += 24, 64, 42); + page_moves->type(Fl_Pack::HORIZONTAL); + { Fl_Button* o = new Fl_Button(0, 0, 32, 42); + o->tooltip(_("Beginning of Document")); + o->callback((Fl_Callback*)cb_page_top); + o->image(new Fl_PNG_Image("pagetop.png", img(go_top_png))); + } // Fl_Button* o + { Fl_Button* o = new Fl_Button(32, 0, 32, 42); + o->tooltip(_("Page Up")); + o->callback((Fl_Callback*)cb_page_up); + o->image(new Fl_PNG_Image("pageup.png", img(go_up_png))); + } // Fl_Button* o + page_moves->end(); + page_moves->show(); + } // Fl_Pack* page_moves + { Fl_Pack* page_moves2 = new Fl_Pack(0, pos += 42, 64, 42); + page_moves2->type(Fl_Pack::HORIZONTAL); + { Fl_Button* o = new Fl_Button(0, 0, 32, 42); + o->tooltip(_("End of Document")); + o->callback((Fl_Callback*)cb_page_bottom); + o->image(new Fl_PNG_Image("pagebottom.png", img(go_bottom_png))); + } // Fl_Button* o + { Fl_Button* o = new Fl_Button(32, 0, 32, 42); + o->tooltip(_("Page Down")); + o->callback((Fl_Callback*)cb_page_down); + o->image(new Fl_PNG_Image("pagedown.png", img(go_down_png))); + } // Fl_Button* o + page_moves2->end(); + page_moves2->show(); + } // Fl_Pack* page_moves2 + { fullscreenbtn = new Fl_Button(0, pos += 42, 64, 38); + fullscreenbtn->image(fullscreen_image); + fullscreenbtn->callback((Fl_Callback*)cb_fullscreen); + fullscreenbtn->tooltip(_("Enter Full Screen")); + } + { debug1 = new Fl_Box(0, pos += 38, 64, 32, ""); + debug1->align(FL_ALIGN_WRAP); + } // Fl_Box* debug1 + { debug2 = new Fl_Box(0, pos += 32, 64, 32, ""); + debug2->align(FL_ALIGN_WRAP); + } // Fl_Box* debug2 + { debug3 = new Fl_Box(0, pos += 32, 64, 32, ""); + debug3->align(FL_ALIGN_WRAP); + } // Fl_Box* debug3 + { debug4 = new Fl_Box(0, pos += 32, 64, 32, ""); + debug4->align(FL_ALIGN_WRAP); + } // Fl_Box* debug4 + { debug5 = new Fl_Box(0, pos += 32, 64, 32, ""); + debug5->align(FL_ALIGN_WRAP); + } // Fl_Box* debug5 + { debug6 = new Fl_Box(0, pos += 32, 64, 32, ""); + debug6->align(FL_ALIGN_WRAP); + } // Fl_Box* debug6 + { debug7 = new Fl_Box(0, pos += 32, 64, 32, ""); + debug7->align(FL_ALIGN_WRAP); + } // Fl_Box* debug7 + { Fl_Box *fill_box = new Fl_Box(0, pos += 32, 64, 64, ""); + Fl_Group::current()->resizable(fill_box); + } + { Fl_Button* exitbtn = new Fl_Button(0, 700, 64, 38); + //exitbtn->image(fullscreen_image); + exitbtn->callback((Fl_Callback*)cb_exit); + exitbtn->image(new Fl_PNG_Image("exit.png", img(application_exit_png))); + exitbtn->tooltip(_("Exit")); + } + buttons->end(); buttons->spacing(4); buttons->show(); @@ -254,36 +571,46 @@ int main(int argc, char **argv) { showbtn->hide(); showbtn->callback(cb_hide); } - { view = new pdfview(64, 0, 641, 700); - Fl_Group::current()->resizable(view); - } // Fl_Box* o - o->end(); - o->show(); - Fl_Group::current()->resizable(o); + { view = new pdfview(64, 0, 700-64, 700); + view->show(); + } - fl_open_display(); - win->size_range(700, 700); + Fl_Group::current()->resizable(view); + win_pack->end(); + win_pack->show(); + + win->resizable(win_pack); + win->callback((Fl_Callback*)cb_exit); + win->size_range(500, 500); win->end(); Fl_PNG_Image wmicon("wmicon.png", img(wmicon_png)); win->icon(&wmicon); + fl_open_display(); + win->show(); + checkX(); + #undef img if (lzo_init() != LZO_E_OK) die(_("LZO init failed\n")); // Set the width to half of the screen, 90% of height - win->size(Fl::w() * 0.4f, Fl::h() * 0.9f); + //win->size(Fl::w() * 0.4f, Fl::h() * 0.9f); - win->show(); + load_config(); - checkX(); + bool used_recent = false; if (optind < argc) - loadfile(argv[optind]); + used_recent = loadfile(argv[optind], recent_files); else - loadfile(NULL); + used_recent = loadfile(NULL, recent_files); + + if (used_recent) { + adjust_display_from_recent(*recent_files); + } view->take_focus(); diff --git a/src/main.h b/src/main.h index bc67538..7562c53 100644 --- a/src/main.h +++ b/src/main.h @@ -34,8 +34,10 @@ along with this program. If not, see . #include #include #include +#include #include #include +#include #include #include @@ -46,17 +48,25 @@ along with this program. If not, see . #include "macros.h" #include "helpers.h" #include "view.h" +#include "config.h" extern Fl_Double_Window *win; extern Fl_Box *pagectr; extern Fl_Input *pagebox; extern Fl_Input_Choice *zoombar; extern Fl_Light_Button *selecting; +extern Fl_Box *debug1, *debug2, *debug3, *debug4, *debug5, *debug6, *debug7; extern u8 details; extern int writepipe; -void loadfile(const char *); +void debug(Fl_Box * ctrl, const float value, const char * hint); +void debug(Fl_Box * ctrl, const s32 value, const char * hint); +void debug(Fl_Box * ctrl, const u32 value, const char * hint); + +bool loadfile(const char *, recent_file_struct *recent_files); + +const int MAX_COLUMNS_COUNT = 5; struct cachedpage { u8 *data; @@ -71,8 +81,9 @@ struct cachedpage { enum zoommode { Z_TRIM = 0, - Z_PAGE, Z_WIDTH, + Z_PAGE, + Z_PGTRIM, Z_CUSTOM }; @@ -82,6 +93,7 @@ enum msg { }; struct openfile { + char * filename; cachedpage *cache; PDFDoc *pdf; u32 maxw, maxh; diff --git a/src/view.cpp b/src/view.cpp index e4984b1..e6d5b01 100644 --- a/src/view.cpp +++ b/src/view.cpp @@ -14,17 +14,26 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ +/* +The pdfview class has been modified extensively to allow for multiple +columns visualization of a document. You can think of this view as a +matrix of pages, each line of this matrix composed of as many columns +as required by the user. +*/ + #include "view.h" #include // Quarter inch in double resolution #define MARGIN 36 +#define MARGINHALF 18 pdfview::pdfview(int x, int y, int w, int h): Fl_Widget(x, y, w, h), yoff(0), xoff(0), - selx(0), sely(0), selx2(0), sely2(0) { + selx(0), sely(0), selx2(0), sely2(0), + columns(1) { - cachedsize = 7 * 1024 * 1024; + cachedsize = 7 * 1024 * 1024; // 7 megabytes u32 i; for (i = 0; i < CACHE_MAX; i++) { @@ -34,15 +43,48 @@ pdfview::pdfview(int x, int y, int w, int h): Fl_Widget(x, y, w, h), } } -void pdfview::resetselection() { +void pdfview::reset_selection() { selx = sely = selx2 = sely2 = 0; } +void pdfview::compute_screen_size() { + screen_x = x(); + screen_y = y(); + screen_height = h(); + screen_width = w(); +} + + +void pdfview::go(const u32 page) { + yoff = page; + adjust_yoff(0); + reset_selection(); + redraw(); +} + +void pdfview::set_columns(int count) { + if ((count >= 1) && (count <= 5)) { + columns = count; + redraw(); + } +} + +void pdfview::set_params(int columns_count, float x, float y) { + + yoff = y; + xoff = x; + + set_columns(columns_count); + go(y); +} + void pdfview::reset() { yoff = 0; xoff = 0; - resetselection(); + adjust_yoff(0); + + reset_selection(); u32 i; for (i = 0; i < CACHE_MAX; i++) { @@ -50,95 +92,180 @@ void pdfview::reset() { } } -static u32 fullh(u32 page) { +u32 pdfview::pageh(u32 page) const { + if (file->cache[page].ready) { + if (file->mode == Z_TRIM || file->mode == Z_PGTRIM) + return file->cache[page].h; + else + return file->cache[page].h + + file->cache[page].top + + file->cache[page].bottom; + } + return 0; +} + +u32 pdfview::pagew(u32 page) const { + if (file->cache[page].ready) { + if (file->mode == Z_TRIM || file->mode == Z_PGTRIM) + return file->cache[page].w; + else + return file->cache[page].w + + file->cache[page].left + + file->cache[page].right; + } + return 0; +} + +// Compute the height of a line of pages, selecting the page that is the +// highest. +u32 pdfview::fullh(u32 page) const { + if (!file->cache[page].ready) page = 0; - if (file->mode == Z_TRIM) - return file->cache[page].h; + u32 fh = 0; + u32 i; - return file->cache[page].h + - file->cache[page].top + - file->cache[page].bottom; + if (file->mode == Z_TRIM || file->mode == Z_PGTRIM) { + for (i = page; (i < (page + columns)) && (i < file->pages); i++) { + if (file->cache[i].ready && (file->cache[i].h > fh)) + fh = file->cache[i].h; + } + } + else { + for (i = page; (i < (page + columns)) && (i < file->pages); i++) { + if (file->cache[i].ready) { + u32 h = file->cache[i].h + + file->cache[i].top + + file->cache[i].bottom; + if (h > fh) + fh = h; + } + } + } + + return fh; } -static u32 fullw(u32 page) { - if (!file->cache[page].ready) - page = 0; +u32 pdfview::fullw(u32 page) const { + u32 fw = 0; + u32 i; - if (file->mode == Z_TRIM) - return file->cache[page].w; + if (file->mode == Z_TRIM || file->mode == Z_PGTRIM) { + for (i = page; i < (page + columns); i++) { + if (file->cache[i].ready && (i < file->pages)) + fw += file->cache[i].w; + else + fw += file->cache[0].w; + } + } + else { + for (i = page; i < (page + columns); i++) { + if (file->cache[i].ready && (i < file->pages)) + fw += file->cache[i].w + + file->cache[i].left + + file->cache[i].right; + else + fw += file->cache[0].w + + file->cache[0].left + + file->cache[0].right; + } + } - return file->cache[page].w + - file->cache[page].left + - file->cache[page].right; + // Add the margins between columns + return fw + (columns - 1) * MARGINHALF; } static bool hasmargins(const u32 page) { if (!file->cache[page].ready) - return file->cache[0].left > MARGIN || - file->cache[0].right > MARGIN || - file->cache[0].top > MARGIN || + return + file->cache[0].left > MARGIN || + file->cache[0].right > MARGIN || + file->cache[0].top > MARGIN || file->cache[0].bottom > MARGIN; - return file->cache[page].left > MARGIN || - file->cache[page].right > MARGIN || - file->cache[page].top > MARGIN || + return + file->cache[page].left > MARGIN || + file->cache[page].right > MARGIN || + file->cache[page].top > MARGIN || file->cache[page].bottom > MARGIN; } -static void updatevisible(const float yoff, const u32 w, const u32 h, const bool fromdraw) { - // From the current zoom mode and view offset, update the visible page info - const u32 prev = file->first_visible; - file->first_visible = yoff < 0 ? 0 : yoff; - if (file->first_visible > file->pages - 1) - file->first_visible = file->pages - 1; - u32 i; +float pdfview::line_zoom_factor(const u32 first_page, u32 &width, u32 &height) const { + + // compute the required zoom factor to fit the line of pages on the screen, + // according to the zoom mode parameter if not a custom zoom. - const u32 maxw = file->maxw ? file->maxw : file->cache[0].w; - const u32 maxh = file->maxh ? file->maxh : file->cache[0].h; - const u32 maxwmargin = hasmargins(file->first_visible) ? maxw + MARGIN * 2 : maxw; - const u32 fullw = ::fullw(0); - const u32 fullh = ::fullh(0); + const u32 line_width = fullw(first_page); + const u32 line_height = fullh(first_page); - const float visible = yoff < 0 ? 0 : 1 - (yoff - floorf(yoff)); + float zoom_factor; - u32 usedh = fullh; switch (file->mode) { case Z_TRIM: - file->zoom = w / (float) maxwmargin; - usedh = maxh; - break; case Z_WIDTH: - file->zoom = w / (float) fullw; + zoom_factor = (float)screen_width / line_width; break; case Z_PAGE: - if (fullw > fullh) { - file->zoom = w / (float) fullw; - } else { - file->zoom = h / (float) fullh; + case Z_PGTRIM: + if (((float)line_width / line_height) > ((float)screen_width / screen_height)) { + zoom_factor = (float)screen_width / line_width; + } + else { + zoom_factor = (float)screen_height / line_height; } break; - case Z_CUSTOM: + default: + zoom_factor = file->zoom; break; } - const u32 zoomedmargin = MARGIN * file->zoom; - i = file->first_visible; - u32 tmp = visible * usedh * file->zoom; - tmp += zoomedmargin; - while (tmp < h) { - tmp += usedh * file->zoom; - tmp += zoomedmargin; - i++; - } - // Be conservative - if (i < file->pages - 1) - i++; - if (i > file->pages - 1) - i = file->pages - 1; - file->last_visible = i; + width = line_width; + height = line_height; + + file->zoom = zoom_factor; + + return zoom_factor; +} + +void pdfview::update_visible(const bool fromdraw) const { + + // From the current zoom mode and view offset, update the visible page info + // Will adjust the following parameters: + // + // - file->first_visible + // - file->last_visible + // - pagebox->value + // + // This method as been extensively modified to take into account multicolumns + // and the fact that no page will be expected to be of the same size as the others, + // both for vertical and horizontal limits. Because of these constraints, the + // zoom factor cannot be applied to the whole screen but for each "line" of + // pages. + + const u32 prev = file->first_visible; + + // Those are very very conservative numbers to compute last_visible. + // The end of the draw process will adjust precisely the value + static const u32 max_lines_per_screen[MAX_COLUMNS_COUNT] = { 2, 3, 4, 5, 6 }; + + // Adjust file->first_visible + file->first_visible = yoff < 0 ? 0 : yoff; + if (file->first_visible > file->pages - 1) + file->first_visible = file->pages - 1; + + // Adjust file->last_visible + + u32 new_last_visible = file->first_visible + max_lines_per_screen[columns - 1] * columns; + if (new_last_visible >= file->pages) + file->last_visible = file->pages - 1; + else + file->last_visible = new_last_visible; + + // If position has changed: + // - update current page visible number in the pagebox + // - request a redraw (if not already called by draw...) if (prev != file->first_visible) { char buf[10]; snprintf(buf, 10, "%u", file->first_visible + 1); @@ -146,22 +273,39 @@ static void updatevisible(const float yoff, const u32 w, const u32 h, const bool if (!fromdraw) pagebox->redraw(); + + Fl::check(); } } +// Compute the vertical screen size of a line of pages +u32 pdfview::pxrel(u32 page) const { + float zoom; + u32 line_width, line_height; + + zoom = line_zoom_factor(page, line_width, line_height); + return line_height * zoom; +} + void pdfview::draw() { if (!file->cache) return; - updatevisible(yoff, w(), h(), true); + compute_screen_size(); + update_visible(true); const Fl_Color pagecol = FL_WHITE; int X, Y, W, H; - fl_clip_box(x(), y(), w(), h(), X, Y, W, H); - if (!W) + int Xs, Ys, Ws, Hs; // Saved values + + fl_clip_box(screen_x, screen_y, screen_width, screen_height, X, Y, W, H); + + // If nothing is visible on screen, nothing to do + if (W == 0 || H == 0) return; + // Paint the background with page separation color fl_rectf(X, Y, W, H, FL_GRAY + 1); struct cachedpage *cur = &file->cache[file->first_visible]; @@ -170,117 +314,285 @@ void pdfview::draw() { fl_push_clip(X, Y, W, H); + if (file->mode != Z_CUSTOM) + xoff = 0.0f; + // As the variables are used for calculations, reset them to full widget dimensions. - X = x(); - Y = y(); - W = w(); - H = h(); - - // Fill each page rect - const int zoomedmargin = file->zoom * MARGIN; - const int zoomedmarginhalf = zoomedmargin / 2; - u32 i; - const u32 max = file->last_visible; - const float visible = yoff - floorf(yoff); - H = pxrel(file->first_visible); - Y = y() - visible * H; - - for (i = file->first_visible; i <= max; i++) { - cur = &file->cache[i]; - if (!cur->ready) - break; + // (doesn´t seems to be needed... they are adjusted to something else in the code + // that follow...) - H = (fullh(i) + MARGIN) * file->zoom; - if (file->mode == Z_CUSTOM || file->mode == Z_PAGE) { - W = fullw(i) * file->zoom; - X = x() + (w() - W) / 2 + xoff * W; - } else { - X = x(); - W = w(); - - // In case of different page sizes, H needs to be adjusted per-page - const float ratio = W / (float) fullw(i); - H = fullh(i) * ratio + zoomedmargin; - } + s32 current_screen_pos = 0; + u32 first_page_in_line = file->first_visible; + bool first_line = true; - // XYWH is now the full area including grey margins. + const float invisibleY = yoff - floorf(yoff); - Y += zoomedmarginhalf; - H -= zoomedmargin; + page_pos_struct *pp = page_pos_on_screen; + page_pos_count = 0; - // XYWH is now the page's area. - if (Y >= y() + h()) - break; - fl_rectf(X, Y, W, H, pagecol); - - const bool margins = hasmargins(i); - const bool trimmed = margins && file->mode == Z_TRIM; - if (trimmed) { - // If the page was trimmed, have the real one a bit smaller - X += zoomedmarginhalf; - Y += zoomedmarginhalf; - W -= zoomedmargin; - H -= zoomedmargin; - } else if (margins) { - // Restore the full size with empty borders - X += cur->left * file->zoom; - Y += cur->top * file->zoom; - W -= (cur->left + cur->right) * file->zoom; - H -= (cur->top + cur->bottom) * file->zoom; + u32 page = file->first_visible; + + // Do the following for each line of pages + while (current_screen_pos < screen_height && (first_page_in_line < file->pages)) { + + float zoom; + u32 line_width, line_height; + zoom = line_zoom_factor(first_page_in_line, line_width, line_height); + + const int zoomedmargin = zoom * MARGIN; + const int zoomedmarginhalf = zoomedmargin / 2; + + H = line_height * zoom; // Line of pages height in screen pixels + + if (first_line) { + Y = screen_y - invisibleY * H; + + first_line = false; } - // Render real content - content(i, X, Y, W, H); + X = screen_x + screen_width / 2 - zoom * line_width / 2 + (zoom * xoff * line_width); + + // Do the following for each page in the line + + s32 column = 0; + page = first_page_in_line; + + while ((column < columns) && (page < file->pages)) { + + cur = &file->cache[page]; + if (!cur->ready) + break; + + H = pageh(page) * zoom; + W = pagew(page) * zoom; + + fl_rectf(Xs = X, Ys = Y, Ws = W, Hs = H, pagecol); + + const bool margins = hasmargins(page); + const bool trimmed = margins && (file->mode == Z_TRIM || file->mode == Z_PGTRIM); + + float ratio_x = 1.0f; + float ratio_y = 1.0f; + + if (trimmed) { + // If the page was trimmed, have the real one a bit smaller + X += zoomedmarginhalf; + Y += zoomedmarginhalf; + W -= zoomedmargin; + H -= zoomedmargin; + + // These changes in size have an impact on the zoom factor + // previously used. We need to keep track of these changes + // to help into the text selection process. + ratio_x = W / (float)(W + zoomedmargin); + ratio_y = H / (float)(H + zoomedmargin); + } + else if (margins) { + // Restore the full size with empty borders + X += cur->left * zoom; + Y += cur->top * zoom; + W -= (cur->left + cur->right) * zoom; + H -= (cur->top + cur->bottom) * zoom; + } + + // Render real content + content(page, X, Y, W, H); + + // For each displayed page, we keep those parameters + // to permit the localization of the page on screen when + // a selection is made to retrieve the text underneath + if (page_pos_count < PAGES_ON_SCREEN_MAX) { + + pp->page = page; + pp->X0 = Xs; + pp->Y0 = Ys; + pp->X = X; + pp->Y = Y; + pp->W = W; + pp->H = H; + pp->zoom = zoom; + pp->ratio_x = ratio_x; + pp->ratio_y = ratio_y; + + // if (page_pos_count == 0) + // printf("Copy X0:%d Y0:%d X:%d Y:%d W:%d H:%d Zoom: %6.3f page: %d\n", + // pp->X0, pp->Y0, pp->X, pp->Y, pp->W, pp->H, pp->zoom, pp->page + 1); + + page_pos_count++; + pp++; + } - if (trimmed) { - // And undo. - Y -= zoomedmarginhalf; - H += zoomedmargin; - } else if (margins) { // And undo. - Y -= cur->top * file->zoom; - H += (cur->top + cur->bottom) * file->zoom; + X = Xs; + Y = Ys; + W = Ws; + H = Hs; + + X += zoomedmarginhalf + (pagew(page) * zoom); + page++; column++; } - Y -= zoomedmarginhalf; - H += zoomedmargin; - Y += H; + // Prepare for next line of pages + + Y += (line_height * zoom) + zoomedmarginhalf; + + first_page_in_line += columns; + current_screen_pos = Y - screen_y; } + file->last_visible = page; + fl_pop_clip(); } -u32 pdfview::pxrel(u32 page) const { - if (file->mode != Z_CUSTOM && file->mode != Z_PAGE) { - const float ratio = w() / (float) fullw(page); - return fullh(page) * ratio + MARGIN * file->zoom; +// Compute the maximum yoff value, taking care of the number of +// columns displayed and the screen size. Start at the end of the +// document, getting up to the point where the line of pages will be +// out of reach on screen. +float pdfview::maxyoff() const { + + float zoom, f; + u32 line_width, line_height, h; + + s32 last = file->pages - 1; + last -= (last % columns); + + if (!file->cache[last].ready) + f = last + 0.5f; + else { + s32 H = screen_height; + + while (true) { + zoom = line_zoom_factor(last, line_width, line_height); + H -= (h = zoom * (line_height + MARGINHALF)); + + if (H <= 0) { + H += (MARGINHALF * zoom); + f = last + (float)(-H) / (zoom * line_height); + break; + } + + last -= columns; + if (last < 0) { + f = 0.0f; + break; + } + } } - return (fullh(page) + MARGIN) * file->zoom; + return f; } -float pdfview::maxyoff() const { +#include - const u32 last = file->pages - 1; - if (!file->cache[last].ready) - return last + 0.5f; +void pdfview::end_of_selection() { - s32 sh = pxrel(last); + s32 X, Y, W, H; + if (selx < selx2) { + X = selx; + W = selx2 - X; + } + else { + X = selx2; + W = selx - X; + } - const s32 hidden = sh - h(); + if (sely < sely2) { + Y = sely; + H = sely2 - Y; + } + else { + Y = sely2; + H = sely - Y; + } - float f = last; + // Search for the page caracteristics saved before with + // the draw method. + u32 idx = 0; + page_pos_struct *pp = page_pos_on_screen; - if (hidden > 0) { - f += hidden / (float) sh; - } else { - f -= 1 - (sh / (float) h()); - f += MARGIN / (float) h(); + while (idx < page_pos_count) { + if ((X >= pp->X0) && + (Y >= pp->Y0) && + (X < (pp->X + pp->W)) && + (Y < (pp->Y + pp->H))) + break; + idx++; + pp++; + } + if (idx >= page_pos_count) + return; // Not found + + // Adjust the selection rectangle to be inside the real page data + if ((X + W) > (pp->X + pp->W)) + W = pp->X + pp->W - X; + if ((Y + H) > (pp->Y + pp->H)) + H = pp->Y + pp->H - Y; + if (((X + W) < pp->X) || + ((Y + H) < pp->Y)) + return; // Out of the printed area + if (X < pp->X) { + W -= (pp->X - X); + X = pp->X; + } + if (Y < pp->Y) { + H -= (pp->Y - Y); + Y = pp->Y; } - if (f < 0) - return 0; + // Convert to page coords + if (file->mode == Z_TRIM || file->mode == Z_PGTRIM) { + X = X - pp->X0 + (pp->zoom * file->cache[pp->page].left); + Y = Y - pp->Y0 + (pp->zoom * file->cache[pp->page].top ) ; - return f; + if (hasmargins(pp->page)) { + X -= (pp->X - pp->X0); + Y -= (pp->Y - pp->Y0); + } + } + else { + X -= pp->X0; + Y -= pp->Y0; + } + + // Convert to original page resolution + X /= (pp->zoom * pp->ratio_x); + Y /= (pp->zoom * pp->ratio_y); + W /= (pp->zoom * pp->ratio_x); + H /= (pp->zoom * pp->ratio_y); + + TextOutputDev * const dev = new TextOutputDev(NULL, true, 0, false, false); + file->pdf->displayPage(dev, pp->page + 1, 144, 144, 0, true, false, false); + GooString *str = dev->getText(X, Y, X + W, Y + H); + const char * const cstr = str->getCString(); + + // Put it to clipboard + Fl::copy(cstr, strlen(cstr), 1); + + delete str; + delete dev; +} + +void pdfview::page_up() { + if (floorf(yoff) == yoff) + adjust_floor_yoff(-1.0f); + else + adjust_floor_yoff(0.0f); + redraw(); +} + +void pdfview::page_down() { + adjust_floor_yoff(1.0f); + redraw(); +} + +void pdfview::page_top() { + yoff = 0.0f; + redraw(); +} + +void pdfview::page_bottom() { + yoff = maxyoff(); + redraw(); } int pdfview::handle(int e) { @@ -288,127 +600,30 @@ int pdfview::handle(int e) { if (!file->cache) return Fl_Widget::handle(e); - const float move = 0.05f; + float zoom; + u32 line_width, line_height; + zoom = line_zoom_factor(yoff, line_width, line_height); + static int lasty, lastx; + const float move = 0.05f; switch (e) { case FL_RELEASE: // Was this a dragging text selection? if (selecting->value() && Fl::event_button() == FL_LEFT_MOUSE && selx && sely && selx2 && sely2 && selx != selx2 && - sely != sely2) { - - const u32 zoomedmargin = MARGIN * file->zoom; - const u32 zoomedmarginhalf = zoomedmargin / 2; - - // Which page is selx,sely on? - u32 page = yoff; - const float floored = yoff - floorf(yoff); - const float visible = 1 - floored; - u32 zoomedh = fullh(page) * visible * file->zoom; - const u32 ratiominus = hasmargins(page) ? zoomedmargin : 0; - const float ratio = w() / (float) fullw(page); - const float ratiox = (w() - ratiominus) / (float) fullw(page); - if (file->mode != Z_CUSTOM && file->mode != Z_PAGE) { - zoomedh = fullh(page) * visible * ratio; - } + sely != sely2) - if (y() + zoomedh < sely) - page++; - - // We assume nobody selects text with a tiny zoom. - u32 X, Y, W, H; - if (selx < selx2) { - X = selx; - W = selx2 - X; - } else { - X = selx2; - W = selx - X; - } + end_of_selection(); - if (sely < sely2) { - Y = sely; - H = sely2 - Y; - } else { - Y = sely2; - H = sely - Y; - } - - // Convert to widget coords - X -= x(); - Y -= y(); - - // Offset - switch (file->mode) { - case Z_TRIM: - // X and Y start in widget space, 0 to w/h. - Y += floored * (fullh(page) * ratiox + - zoomedmargin + ratiominus); - Y -= zoomedmarginhalf; // Grey margin - - if (hasmargins(page)) { - X -= zoomedmarginhalf; - Y -= zoomedmarginhalf; - } - - // Now page's area. - - X += file->cache[page].left * ratiox; - Y += file->cache[page].top * ratiox; - - X /= ratiox; - Y /= ratiox; - W /= ratiox; - H /= ratiox; - break; - case Z_WIDTH: - // X and Y start in widget space, 0 to w/h. - Y += floored * (fullh(page) * ratio + - zoomedmargin); - Y -= zoomedmarginhalf; // Grey margin - - X /= ratio; - Y /= ratio; - W /= ratio; - H /= ratio; - break; - case Z_PAGE: - case Z_CUSTOM: - // X and Y start in widget space, 0 to w/h. - Y += floored * (fullh(page) * file->zoom + - zoomedmargin); - Y -= zoomedmarginhalf; // Grey margin - - X -= (w() - (fullw(page) * file->zoom)) / 2 + - xoff * (fullw(page) * file->zoom); - - X /= file->zoom; - Y /= file->zoom; - W /= file->zoom; - H /= file->zoom; - break; - } - - TextOutputDev * const dev = new TextOutputDev(NULL, true, - 0, false, false); - file->pdf->displayPage(dev, page + 1, 144, 144, 0, - true, false, false); - GooString *str = dev->getText(X, Y, X + W, Y + H); - const char * const cstr = str->getCString(); - - // Put it to clipboard - Fl::copy(cstr, strlen(cstr)); - - delete str; - delete dev; - } - break; + break; + case FL_PUSH: take_focus(); lasty = Fl::event_y(); lastx = Fl::event_x(); - resetselection(); + reset_selection(); if (selecting->value() && Fl::event_button() == FL_LEFT_MOUSE) { selx = lastx; sely = lasty; @@ -419,232 +634,183 @@ int pdfview::handle(int e) { case FL_FOCUS: case FL_ENTER: return 1; - break; - case FL_DRAG: { - const int my = Fl::event_y(); - const int mx = Fl::event_x(); - const int movedy = my - lasty; - const int movedx = mx - lastx; - - if (selecting->value() && Fl::event_button() == FL_LEFT_MOUSE) { - selx2 = mx; - sely2 = my; - redraw(); - return 1; - } + break; + + case FL_DRAG: + { + const int my = Fl::event_y(); + const int mx = Fl::event_x(); + const int movedy = my - lasty; + const int movedx = mx - lastx; + + if (selecting->value() && Fl::event_button() == FL_LEFT_MOUSE) { + selx2 = mx; + sely2 = my; + redraw(); + return 1; + } - fl_cursor(FL_CURSOR_MOVE); + fl_cursor(FL_CURSOR_MOVE); - if (file->maxh) { - if (file->mode != Z_TRIM) - yoff -= (movedy / file->zoom) / fullh(0); + // I don't understand this... + if (file->maxh) + adjust_yoff(-((movedy / zoom) / file->maxh)); else - yoff -= (movedy / file->zoom) / file->maxh; - } else { - yoff -= (movedy / (float) h()) / file->zoom; - } - - xoff += (movedx / file->zoom) / fullw(0); - - if (yoff < 0) - yoff = 0; - if (yoff >= maxyoff()) - yoff = maxyoff(); - - if (xoff < -1) - xoff = -1; - if (xoff > 1) - xoff = 1; - if (file->mode != Z_CUSTOM) - xoff = 0; - - lasty = my; - lastx = mx; + adjust_yoff(-((movedy / (float) screen_height) / zoom)); + + if (file->mode == Z_CUSTOM) { + xoff += ((float) movedx / zoom) / line_width; + float maxchg = (((((float)screen_width / zoom) + line_width) / 2) / line_width) - 0.1f; + if (xoff < -maxchg) + xoff = -maxchg; + if (xoff > maxchg) + xoff = maxchg; + } - if (file->cache) - updatevisible(yoff, w(), h(), false); + lasty = my; + lastx = mx; + } redraw(); - } - break; + break; + case FL_MOUSEWHEEL: - if (Fl::event_ctrl()) { + if (Fl::event_ctrl()) if (Fl::event_dy() > 0) cb_Zoomout(NULL, NULL); else cb_Zoomin(NULL, NULL); - } else { - yoff += move * Fl::event_dy(); - if (yoff < 0) - yoff = 0; - if (yoff >= maxyoff()) - yoff = maxyoff(); - } + else + adjust_yoff(move * Fl::event_dy()); - resetselection(); - if (file->cache) - updatevisible(yoff, w(), h(), false); + reset_selection(); redraw(); - break; + break; + case FL_KEYDOWN: case FL_SHORTCUT: - resetselection(); + reset_selection(); switch (Fl::event_key()) { case 'k': - if (Fl::event_ctrl()) { + if (Fl::event_ctrl()) yoff = 0; - } else { - const u32 page = yoff; - s32 sh = pxrel(page); - s32 shp = sh; - if (page > 0) - shp = pxrel(page - 1); - if (h() + 2 * MARGIN * file->zoom >= sh) { + else { + const s32 page = yoff; + s32 sh; + s32 shp = sh = pxrel(page); + if (page >= columns) + shp = pxrel(page - columns); + if (screen_height >= sh) { /* scroll up like Page_Up */ - if (floorf(yoff) + MARGIN * file->zoom / (float) sh >= yoff) { - yoff = floorf(yoff - 1) + MARGIN * file->zoom / 2 / (float) shp; - } else { - yoff = floorf(yoff) + MARGIN * file->zoom / 2 / (float) sh; - } - } else { - /* scroll up less than one page height */ - float d = (h() - MARGIN) / (float) sh; - if (((u32) yoff) == ((u32) (yoff - d))) { - /* not scrolling over page border */ - yoff -= d; - } else { - /* scrolling over page border */ - d -= (yoff - floorf(yoff)); - yoff = floorf(yoff); - /* ratio of prev page can be different */ - d = d * (float) sh / (float) shp; - yoff -= d; + if (floorf(yoff) >= yoff) + adjust_floor_yoff(-1.0f); + else + adjust_floor_yoff(0.0f); + } + else { + /* scroll up a bit less than one screen height */ + float d = (screen_height - 2 * MARGIN) / (float) sh; + if (((u32) yoff) != ((u32) (yoff - d))) { + /* scrolling over page border */ + d -= (yoff - floorf(yoff)); + yoff = floorf(yoff); + /* ratio of prev page can be different */ + d = d * (float) sh / (float) shp; } + adjust_yoff(-d); } - if (yoff < 0) - yoff = 0; - if (yoff >= maxyoff()) - yoff = maxyoff(); } redraw(); - break; + break; + case 'j': - if (Fl::event_ctrl()) { + if (Fl::event_ctrl()) yoff = maxyoff(); - } else { - const u32 page = yoff; - s32 sh = pxrel(page); - s32 shn = sh; - if (page + 1 <= file->pages - 1) - shn = pxrel(page + 1); - if (h() + 2 * MARGIN * file->zoom >= sh) { + else { + const s32 page = yoff; + s32 sh; + s32 shn = sh = pxrel(page); + if (page + columns <= (s32)(file->pages - 1)) + shn = pxrel(page + columns); + if (screen_height >= sh) /* scroll down like Page_Down */ - yoff = floorf(yoff + 1) + MARGIN * file->zoom / 2 / (float) shn; - } else { - /* scroll down less than one page height */ - float d = (h() - MARGIN) / (float) sh; - if (((u32) yoff) == ((u32) (yoff + d))) { - /* not scrolling over page border */ - yoff += d; - } else { - /* scrolling over page border */ - d -= (ceilf(yoff) - yoff); - yoff = ceilf(yoff); - /* ratio of next page can be different */ - d = d * (float) sh / (float) shn; - yoff += d; + adjust_floor_yoff(1.0f); + else { + /* scroll down a bit less than one screen height */ + float d = (screen_height - 2 * MARGIN) / (float) sh; + if (((u32) yoff) != ((u32) (yoff + d))) { + /* scrolling over page border */ + d -= (ceilf(yoff) - yoff); + yoff = floorf(yoff) + columns; + /* ratio of next page can be different */ + d = d * (float) sh / (float) shn; } + adjust_yoff(d); } - if (yoff < 0) - yoff = 0; - if (yoff >= maxyoff()) - yoff = maxyoff(); } redraw(); - break; + break; + case FL_Up: - yoff -= move; - if (yoff < 0) - yoff = 0; + adjust_yoff(-move); redraw(); - break; + break; + case FL_Down: - yoff += move; - if (yoff >= maxyoff()) - yoff = maxyoff(); + adjust_yoff(move); redraw(); - break; + break; + case FL_Page_Up: - { - const u32 page = yoff; - s32 sh = pxrel(page); - s32 shp = sh; - if (page) - shp = pxrel(page - 1); - if (floorf(yoff) + MARGIN * file->zoom / (float) sh >= yoff) { - yoff = floorf(yoff - 1) + MARGIN * file->zoom / 2 / (float) shp; - } - else { - yoff = floorf(yoff) + MARGIN * file->zoom / 2 / (float) sh; - } - if (yoff < 0) - yoff = 0; - redraw(); - } - break; + page_up(); + break; + case FL_Page_Down: - { - u32 page = floorf(yoff); - s32 shn = pxrel(page); - if (page + 1 <= file->pages - 1) - shn = pxrel(page + 1); - yoff = floorf(yoff + 1) + MARGIN * file->zoom / 2 / (float) shn; - if (yoff >= maxyoff()) - yoff = maxyoff(); - redraw(); - } - break; + page_down(); + break; + case FL_Home: - if (Fl::event_ctrl()) { + if (Fl::event_ctrl()) yoff = 0; - } else { + else yoff = floorf(yoff); - } redraw(); - break; + break; + case FL_End: - if (Fl::event_ctrl()) { + if (Fl::event_ctrl()) yoff = maxyoff(); - } else { + else { u32 page = yoff; - s32 sh = pxrel(page); + s32 sh = line_height * zoom; if (file->cache[page].ready) { - const s32 hidden = sh - h(); + const s32 hidden = sh - screen_height; float tmp = floorf(yoff) + hidden / (float) sh; if (tmp > yoff) yoff = tmp; - if (yoff < 0) - yoff = 0; - if (yoff >= maxyoff()) - yoff = maxyoff(); - } else { - yoff = ceilf(yoff) - 0.4f; + adjust_yoff(0); } + else + yoff = ceilf(yoff) - 0.4f; } redraw(); - break; + break; + case FL_F + 8: - cb_hide(NULL, NULL); - break; + cb_hide(NULL, NULL); // Hide toolbar + break; + default: return 0; - } + + } // switch (Fl::event_key()) if (file->cache) - updatevisible(yoff, w(), h(), false); + update_visible(false); return 1; - break; + break; + case FL_MOVE: // Set the cursor appropriately if (!file->maxw) @@ -659,7 +825,48 @@ int pdfview::handle(int e) { return Fl_Widget::handle(e); } +void pdfview::adjust_yoff(float offset) { + + if (offset != 0.0f) { + float y = floorf(yoff); + yoff += offset; + float diff = floorf(yoff) - y; + yoff = yoff + (diff * columns) - diff; + } + + if (yoff < 0.0f) + yoff = 0.0f; + else { + float y = maxyoff(); + + if (yoff > y) + yoff = y; + } +} + +void pdfview::adjust_floor_yoff(float offset) { + + if (offset != 0.0f) { + float y = floorf(yoff); + yoff = y + offset; + float diff = floorf(yoff) - y; + yoff = yoff + (diff * columns) - diff; + } + else + yoff = floorf(yoff); + + if (yoff < 0.0f) + yoff = 0.0f; + else { + float max = maxyoff(); + + if (yoff > max) + yoff = max; + } +} + u8 pdfview::iscached(const u32 page) const { + u32 i; for (i = 0; i < CACHE_MAX; i++) { if (cachedpage[i] == page) @@ -723,14 +930,7 @@ void pdfview::docache(const u32 page) { XDestroyImage(xi); } -void pdfview::go(const u32 page) { - yoff = page; - resetselection(); - redraw(); -} - -void pdfview::content(const u32 page, const s32 X, const s32 Y, - const u32 W, const u32 H) { +void pdfview::content(const u32 page, const s32 X, const s32 Y, const u32 W, const u32 H) { // Do a gpu-accelerated bilinear blit u8 c = iscached(page); @@ -773,7 +973,8 @@ void pdfview::content(const u32 page, const s32 X, const s32 Y, if (selx < selx2) { x = selx; w = selx2 - x; - } else { + } + else { x = selx2; w = selx - x; } @@ -781,13 +982,13 @@ void pdfview::content(const u32 page, const s32 X, const s32 Y, if (sely < sely2) { y = sely; h = sely2 - y; - } else { + } + else { y = sely2; h = sely - y; } - XRenderFillRectangle(fl_display, PictOpOver, dst, &col, - x, y, w, h); + XRenderFillRectangle(fl_display, PictOpOver, dst, &col, x, y, w, h); } XRenderFreePicture(fl_display, src); diff --git a/src/view.h b/src/view.h index f824b13..e45c983 100644 --- a/src/view.h +++ b/src/view.h @@ -14,12 +14,29 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ +/* +The pdfview class has been modified extensively to allow for multiple +columns visualization of a document. You can think of this view as a +matrix of pages, each line of this matrix composed of as many columns +as required by the user. +*/ + #ifndef VIEW_H #define VIEW_H #include "main.h" -#define CACHE_MAX 3 +#define CACHE_MAX 15 +#define PAGES_ON_SCREEN_MAX 50 + +// Used to keep drawing postion of displayed pages to +// help in the identification of the selection zone. +// Used by the end_of_selection method. +struct page_pos_struct { + float zoom, ratio_x, ratio_y; + u32 page; + int X0, Y0, X, Y, W, H; +}; class pdfview: public Fl_Widget { public: @@ -29,14 +46,33 @@ class pdfview: public Fl_Widget { void go(const u32 page); void reset(); - void resetselection(); + void reset_selection(); + void set_columns(int count); + inline float get_xoff() { return xoff; }; + inline float get_yoff() { return yoff; }; + inline int get_columns() { return columns; }; + void set_params(int columns_count, float x, float y); + void page_up(); + void page_down(); + void page_top(); + void page_bottom(); private: + void compute_screen_size(); + float line_zoom_factor(u32 first_page, u32 &width,u32 &height) const; + void update_visible(const bool fromdraw) const; u8 iscached(const u32 page) const; void docache(const u32 page); float maxyoff() const; u32 pxrel(u32 page) const; void content(const u32 page, const s32 X, const s32 y, const u32 w, const u32 h); + void adjust_yoff(float offset); + void adjust_floor_yoff(float offset); + void end_of_selection(); + u32 pageh(u32 page) const; + u32 pagew(u32 page) const; + u32 fullh(u32 page) const; + u32 fullw(u32 page) const; float yoff, xoff; u32 cachedsize; @@ -44,8 +80,14 @@ class pdfview: public Fl_Widget { u16 cachedpage[CACHE_MAX]; Pixmap pix[CACHE_MAX]; + page_pos_struct page_pos_on_screen[PAGES_ON_SCREEN_MAX]; + u32 page_pos_count; + // Text selection coords u16 selx, sely, selx2, sely2; + s32 columns; + + s32 screen_x, screen_y, screen_width, screen_height; }; extern pdfview *view;