[X2Go-Commits] pyhoca-gui.git - build-59a18b6e3b5d3f1dd8f07f26433d37fe5984a57d (branch) updated: 587da059b3260807e8d5dce7d5a2df5174ea1a51

X2Go dev team git-admin at x2go.org
Tue Aug 27 13:21:08 CEST 2013


The branch, build-59a18b6e3b5d3f1dd8f07f26433d37fe5984a57d has been updated
       via  587da059b3260807e8d5dce7d5a2df5174ea1a51 (commit)
      from  cd88f30d73ebd72a155d1a7a92c47e815c176f61 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
-----------------------------------------------------------------------

Summary of changes:
 README                                             |   41 +
 README.i18n                                        |   11 +
 TODO                                               |   26 +
 build-for-reprepro.sh                              |   39 +
 build/mo/de/LC_MESSAGES/pyhoca-gui.mo              |  Bin 0 -> 13122 bytes
 build/mo/en/LC_MESSAGES/pyhoca-gui.mo              |  Bin 0 -> 12332 bytes
 build/mo/es/LC_MESSAGES/pyhoca-gui.mo              |  Bin 0 -> 11154 bytes
 build/mo/nl/LC_MESSAGES/pyhoca-gui.mo              |  Bin 0 -> 10669 bytes
 debian/changelog                                   |  247 ++++
 debian/compat                                      |    1 +
 debian/control                                     |   16 +
 debian/copyright                                   |   14 +
 debian/pyhoca-gui.dirs                             |    1 +
 debian/pyhoca-gui.docs                             |    2 +
 debian/pyhoca-gui.install                          |    5 +
 debian/pyhoca-gui.manpages                         |    1 +
 debian/rules                                       |   24 +
 debian/source/format                               |    1 +
 desktop/pyhoca-gui.desktop                         |   13 +
 examples/printing                                  |   17 +
 examples/settings                                  |   17 +
 examples/xconfig                                   |   24 +
 icons/PyHoca/128x128/pyhoca-session.png            |  Bin 0 -> 19982 bytes
 icons/PyHoca/128x128/pyhoca-trayicon.png           |  Bin 0 -> 19982 bytes
 icons/PyHoca/128x128/pyhoca-winicon.png            |  Bin 0 -> 19982 bytes
 icons/PyHoca/128x128/x2go-logo-rotated.png         |  Bin 0 -> 19360 bytes
 icons/PyHoca/128x128/x2go-logo-ubuntu.png          |  Bin 0 -> 11139 bytes
 icons/PyHoca/128x128/x2go-logo-white-bg.png        |  Bin 0 -> 3714 bytes
 icons/PyHoca/128x128/x2go.png                      |  Bin 0 -> 6095 bytes
 icons/PyHoca/16x16/pyhoca-session.png              |  Bin 0 -> 1099 bytes
 icons/PyHoca/16x16/pyhoca-trayicon.png             |  Bin 0 -> 1099 bytes
 icons/PyHoca/16x16/pyhoca-winicon.png              |  Bin 0 -> 1099 bytes
 icons/PyHoca/16x16/system-search.png               |  Bin 0 -> 885 bytes
 icons/PyHoca/16x16/x2go-logo-rotated.png           |  Bin 0 -> 1367 bytes
 icons/PyHoca/16x16/x2go-logo-ubuntu.png            |  Bin 0 -> 1118 bytes
 icons/PyHoca/16x16/x2go-logo-white-bg.png          |  Bin 0 -> 547 bytes
 icons/PyHoca/16x16/x2go.png                        |  Bin 0 -> 705 bytes
 icons/PyHoca/22x22/pyhoca-session.png              |  Bin 0 -> 1519 bytes
 icons/PyHoca/22x22/pyhoca-trayicon.png             |  Bin 0 -> 1519 bytes
 icons/PyHoca/22x22/pyhoca-winicon.png              |  Bin 0 -> 1519 bytes
 icons/PyHoca/22x22/x2go-logo-rotated.png           |  Bin 0 -> 1903 bytes
 icons/PyHoca/22x22/x2go-logo-ubuntu.png            |  Bin 0 -> 1486 bytes
 icons/PyHoca/22x22/x2go-logo-white-bg.png          |  Bin 0 -> 653 bytes
 icons/PyHoca/22x22/x2go.png                        |  Bin 0 -> 900 bytes
 icons/PyHoca/32x32/audio_error.png                 |    1 +
 icons/PyHoca/32x32/auth_disconnect.png             |    1 +
 icons/PyHoca/32x32/auth_error.png                  |    1 +
 icons/PyHoca/32x32/auth_failed.png                 |    1 +
 icons/PyHoca/32x32/auth_success.png                |    1 +
 icons/PyHoca/32x32/broom-cleanup.png               |  Bin 0 -> 2352 bytes
 icons/PyHoca/32x32/dialog-apply.png                |  Bin 0 -> 1572 bytes
 icons/PyHoca/32x32/dialog-error.png                |  Bin 0 -> 1674 bytes
 icons/PyHoca/32x32/dialog-question.png             |  Bin 0 -> 2102 bytes
 icons/PyHoca/32x32/dialog-warning.png              |  Bin 0 -> 1651 bytes
 icons/PyHoca/32x32/document-save.png               |  Bin 0 -> 1841 bytes
 icons/PyHoca/32x32/edit-delete.png                 |  Bin 0 -> 2415 bytes
 icons/PyHoca/32x32/gnome-dev-printer-network.png   |  Bin 0 -> 1497 bytes
 icons/PyHoca/32x32/gtk-edit.png                    |  Bin 0 -> 1527 bytes
 icons/PyHoca/32x32/list-add.png                    |  Bin 0 -> 829 bytes
 icons/PyHoca/32x32/locked.png                      |  Bin 0 -> 1759 bytes
 icons/PyHoca/32x32/media-eject.png                 |  Bin 0 -> 1107 bytes
 icons/PyHoca/32x32/media-playback-pause.png        |  Bin 0 -> 687 bytes
 icons/PyHoca/32x32/media-playback-start.png        |  Bin 0 -> 1223 bytes
 icons/PyHoca/32x32/media-playback-stop.png         |  Bin 0 -> 407 bytes
 icons/PyHoca/32x32/media-record.png                |  Bin 0 -> 1060 bytes
 icons/PyHoca/32x32/media-seek-backward.png         |  Bin 0 -> 1009 bytes
 icons/PyHoca/32x32/media-seek-forward.png          |  Bin 0 -> 1052 bytes
 icons/PyHoca/32x32/media-skip-backward.png         |  Bin 0 -> 1109 bytes
 icons/PyHoca/32x32/media-skip-forward.png          |  Bin 0 -> 1167 bytes
 icons/PyHoca/32x32/network-wired.png               |  Bin 0 -> 1754 bytes
 icons/PyHoca/32x32/profile_add.png                 |    1 +
 icons/PyHoca/32x32/profile_delete.png              |    1 +
 icons/PyHoca/32x32/profile_edit.png                |    1 +
 icons/PyHoca/32x32/profile_error.png               |    1 +
 icons/PyHoca/32x32/profile_save.png                |    1 +
 icons/PyHoca/32x32/pyhoca-session.png              |  Bin 0 -> 2621 bytes
 icons/PyHoca/32x32/pyhoca-trayicon.png             |  Bin 0 -> 2621 bytes
 icons/PyHoca/32x32/pyhoca-winicon.png              |  Bin 0 -> 2621 bytes
 icons/PyHoca/32x32/session_cleanall.png            |    1 +
 icons/PyHoca/32x32/session_error.png               |    1 +
 icons/PyHoca/32x32/session_printing.png            |    1 +
 icons/PyHoca/32x32/session_resume.png              |    1 +
 icons/PyHoca/32x32/session_start.png               |    1 +
 icons/PyHoca/32x32/session_suspend.png             |    1 +
 icons/PyHoca/32x32/session_terminate.png           |    1 +
 icons/PyHoca/32x32/session_warning.png             |    1 +
 icons/PyHoca/32x32/unlocked.png                    |  Bin 0 -> 1854 bytes
 icons/PyHoca/32x32/window-close.png                |  Bin 0 -> 1718 bytes
 icons/PyHoca/32x32/window-new.png                  |  Bin 0 -> 1240 bytes
 icons/PyHoca/32x32/x2go-logo-rotated.png           |  Bin 0 -> 3107 bytes
 icons/PyHoca/32x32/x2go-logo-ubuntu.png            |  Bin 0 -> 2545 bytes
 icons/PyHoca/32x32/x2go-logo-white-bg.png          |  Bin 0 -> 985 bytes
 icons/PyHoca/32x32/x2go.png                        |  Bin 0 -> 1483 bytes
 icons/PyHoca/48x48/pyhoca-session.png              |  Bin 0 -> 5073 bytes
 icons/PyHoca/48x48/pyhoca-trayicon.png             |  Bin 0 -> 5073 bytes
 icons/PyHoca/48x48/pyhoca-winicon.png              |  Bin 0 -> 5073 bytes
 icons/PyHoca/48x48/x2go-logo-rotated.png           |  Bin 0 -> 5421 bytes
 icons/PyHoca/48x48/x2go-logo-ubuntu.png            |  Bin 0 -> 4205 bytes
 icons/PyHoca/48x48/x2go-logo-white-bg.png          |  Bin 0 -> 3774 bytes
 icons/PyHoca/48x48/x2go.png                        |  Bin 0 -> 2357 bytes
 icons/PyHoca/64x64/pyhoca-session.png              |  Bin 0 -> 7923 bytes
 icons/PyHoca/64x64/pyhoca-trayicon.png             |  Bin 0 -> 7923 bytes
 icons/PyHoca/64x64/pyhoca-winicon.png              |  Bin 0 -> 7923 bytes
 icons/PyHoca/64x64/x2go-logo-rotated.png           |  Bin 0 -> 7840 bytes
 icons/PyHoca/64x64/x2go-logo-ubuntu.png            |  Bin 0 -> 5704 bytes
 icons/PyHoca/64x64/x2go-logo-white-bg.png          |  Bin 0 -> 1872 bytes
 icons/PyHoca/64x64/x2go.png                        |  Bin 0 -> 2960 bytes
 icons/PyHoca/scalable/auth_disconnect.svg          |    1 +
 icons/PyHoca/scalable/auth_error.svg               |    1 +
 icons/PyHoca/scalable/auth_success.svg             |    1 +
 icons/PyHoca/scalable/broom-cleanup.svg            |  Bin 0 -> 75647 bytes
 icons/PyHoca/scalable/dialog-apply.svg             |  150 ++
 icons/PyHoca/scalable/dialog-error.svg             |  178 +++
 icons/PyHoca/scalable/dialog-question.svg          |  185 +++
 icons/PyHoca/scalable/dialog-warning.svg           |  221 +++
 icons/PyHoca/scalable/document-save.svg            |  920 ++++++++++++
 icons/PyHoca/scalable/edit-delete.svg              |  272 ++++
 .../PyHoca/scalable/gnome-dev-printer-network.svg  |  731 ++++++++++
 icons/PyHoca/scalable/gtk-edit.svg                 |  788 +++++++++++
 icons/PyHoca/scalable/list-add.svg                 |  256 ++++
 icons/PyHoca/scalable/locked.svg                   |  534 +++++++
 icons/PyHoca/scalable/media-eject.svg              |  270 ++++
 icons/PyHoca/scalable/media-playback-pause.svg     |  320 +++++
 icons/PyHoca/scalable/media-playback-start.svg     |  140 ++
 icons/PyHoca/scalable/media-playback-stop.svg      |  149 ++
 icons/PyHoca/scalable/media-record.svg             |  185 +++
 icons/PyHoca/scalable/media-seek-backward.svg      |  212 +++
 icons/PyHoca/scalable/media-seek-forward.svg       |  199 +++
 icons/PyHoca/scalable/media-skip-backward.svg      |  243 ++++
 icons/PyHoca/scalable/media-skip-forward.svg       |  244 ++++
 icons/PyHoca/scalable/network-wired.svg            |  661 +++++++++
 icons/PyHoca/scalable/profile_add.svg              |    1 +
 icons/PyHoca/scalable/profile_delete.svg           |    1 +
 icons/PyHoca/scalable/profile_edit.svg             |    1 +
 icons/PyHoca/scalable/profile_save.svg             |    1 +
 icons/PyHoca/scalable/pyhoca-session.svg           |  568 ++++++++
 icons/PyHoca/scalable/pyhoca-trayicon.svg          |  568 ++++++++
 icons/PyHoca/scalable/pyhoca-winicon.svg           |  568 ++++++++
 icons/PyHoca/scalable/session_cleanall.svg         |    1 +
 icons/PyHoca/scalable/session_error.svg            |    1 +
 icons/PyHoca/scalable/session_pause.svg            |    1 +
 icons/PyHoca/scalable/session_printing.svg         |    1 +
 icons/PyHoca/scalable/session_resume.svg           |    1 +
 icons/PyHoca/scalable/session_start.svg            |    1 +
 icons/PyHoca/scalable/session_terminate.svg        |    1 +
 icons/PyHoca/scalable/session_warning.svg          |    1 +
 icons/PyHoca/scalable/system-search.svg            |  430 ++++++
 icons/PyHoca/scalable/unlocked.svg                 |  577 ++++++++
 icons/PyHoca/scalable/window-close.svg             |  170 +++
 icons/PyHoca/scalable/window-new.svg               |  322 +++++
 icons/PyHoca/scalable/x2go-logo-rotated.svg        | 1495 ++++++++++++++++++++
 icons/PyHoca/scalable/x2go-logo-ubuntu.svg         |  358 +++++
 icons/PyHoca/scalable/x2go-logo-white-bg.svg       |  361 +++++
 icons/PyHoca/scalable/x2go.svg                     |  361 +++++
 img/pyhoca-about-logo.png                          |  Bin 0 -> 75269 bytes
 img/pyhoca-splash.png                              |  Bin 0 -> 49098 bytes
 locale                                             |    1 +
 man/pyhoca-gui.1                                   |  159 +++
 pixmaps/pyhoca-gui.ico                             |  Bin 0 -> 27942 bytes
 pixmaps/pyhoca_x2go-logo-ubuntu.ico                |  Bin 0 -> 26150 bytes
 pixmaps/pyhoca_x2go-logo-ubuntu.svg                |  358 +++++
 po/POTFILES.in                                     |   11 +
 po/de.po                                           |  855 +++++++++++
 po/en.po                                           |  852 +++++++++++
 po/es.po                                           |  843 +++++++++++
 po/nl.po                                           |  840 +++++++++++
 po/pyhoca-gui.pot                                  |  807 +++++++++++
 pyhoca-gui                                         |  304 ++++
 pyhoca/__init__.py                                 |   20 +
 pyhoca/__init__.pyc                                |  Bin 0 -> 158 bytes
 pyhoca/wxgui/__init__.py                           |   23 +
 pyhoca/wxgui/__init__.pyc                          |  Bin 0 -> 238 bytes
 pyhoca/wxgui/about.py                              |   76 +
 pyhoca/wxgui/about.pyc                             |  Bin 0 -> 2184 bytes
 pyhoca/wxgui/basepath.py                           |   49 +
 pyhoca/wxgui/basepath.pyc                          |  Bin 0 -> 1154 bytes
 pyhoca/wxgui/frontend.py                           |  588 ++++++++
 pyhoca/wxgui/frontend.pyc                          |  Bin 0 -> 27442 bytes
 pyhoca/wxgui/logon.py                              |  323 +++++
 pyhoca/wxgui/logon.pyc                             |  Bin 0 -> 9870 bytes
 pyhoca/wxgui/menus_taskbar.py                      |  331 +++++
 pyhoca/wxgui/menus_taskbar.pyc                     |  Bin 0 -> 10553 bytes
 pyhoca/wxgui/notify.py                             |  173 +++
 pyhoca/wxgui/notify.pyc                            |  Bin 0 -> 5668 bytes
 pyhoca/wxgui/profilemanager.py                     | 1352 ++++++++++++++++++
 pyhoca/wxgui/profilemanager.pyc                    |  Bin 0 -> 48357 bytes
 pyhoca/wxgui/taskbar.py                            |  144 ++
 pyhoca/wxgui/taskbar.pyc                           |  Bin 0 -> 5177 bytes
 setup.py                                           |  118 ++
 x2go                                               |    1 +
 190 files changed, 21397 insertions(+)
 create mode 100644 README
 create mode 100644 README.i18n
 create mode 100644 TODO
 create mode 100755 build-for-reprepro.sh
 create mode 100644 build/mo/de/LC_MESSAGES/pyhoca-gui.mo
 create mode 100644 build/mo/en/LC_MESSAGES/pyhoca-gui.mo
 create mode 100644 build/mo/es/LC_MESSAGES/pyhoca-gui.mo
 create mode 100644 build/mo/nl/LC_MESSAGES/pyhoca-gui.mo
 create mode 100644 debian/changelog
 create mode 100644 debian/compat
 create mode 100644 debian/control
 create mode 100644 debian/copyright
 create mode 100644 debian/pyhoca-gui.dirs
 create mode 100644 debian/pyhoca-gui.docs
 create mode 100644 debian/pyhoca-gui.install
 create mode 100644 debian/pyhoca-gui.manpages
 create mode 100755 debian/rules
 create mode 100644 debian/source/format
 create mode 100644 desktop/pyhoca-gui.desktop
 create mode 100644 examples/printing
 create mode 100644 examples/settings
 create mode 100644 examples/xconfig
 create mode 100644 icons/PyHoca/128x128/pyhoca-session.png
 create mode 100644 icons/PyHoca/128x128/pyhoca-trayicon.png
 create mode 100644 icons/PyHoca/128x128/pyhoca-winicon.png
 create mode 100644 icons/PyHoca/128x128/x2go-logo-rotated.png
 create mode 100644 icons/PyHoca/128x128/x2go-logo-ubuntu.png
 create mode 100644 icons/PyHoca/128x128/x2go-logo-white-bg.png
 create mode 100644 icons/PyHoca/128x128/x2go.png
 create mode 100644 icons/PyHoca/16x16/pyhoca-session.png
 create mode 100644 icons/PyHoca/16x16/pyhoca-trayicon.png
 create mode 100644 icons/PyHoca/16x16/pyhoca-winicon.png
 create mode 100644 icons/PyHoca/16x16/system-search.png
 create mode 100644 icons/PyHoca/16x16/x2go-logo-rotated.png
 create mode 100644 icons/PyHoca/16x16/x2go-logo-ubuntu.png
 create mode 100644 icons/PyHoca/16x16/x2go-logo-white-bg.png
 create mode 100644 icons/PyHoca/16x16/x2go.png
 create mode 100644 icons/PyHoca/22x22/pyhoca-session.png
 create mode 100644 icons/PyHoca/22x22/pyhoca-trayicon.png
 create mode 100644 icons/PyHoca/22x22/pyhoca-winicon.png
 create mode 100644 icons/PyHoca/22x22/x2go-logo-rotated.png
 create mode 100644 icons/PyHoca/22x22/x2go-logo-ubuntu.png
 create mode 100644 icons/PyHoca/22x22/x2go-logo-white-bg.png
 create mode 100644 icons/PyHoca/22x22/x2go.png
 create mode 120000 icons/PyHoca/32x32/audio_error.png
 create mode 120000 icons/PyHoca/32x32/auth_disconnect.png
 create mode 120000 icons/PyHoca/32x32/auth_error.png
 create mode 120000 icons/PyHoca/32x32/auth_failed.png
 create mode 120000 icons/PyHoca/32x32/auth_success.png
 create mode 100644 icons/PyHoca/32x32/broom-cleanup.png
 create mode 100644 icons/PyHoca/32x32/dialog-apply.png
 create mode 100644 icons/PyHoca/32x32/dialog-error.png
 create mode 100644 icons/PyHoca/32x32/dialog-question.png
 create mode 100644 icons/PyHoca/32x32/dialog-warning.png
 create mode 100644 icons/PyHoca/32x32/document-save.png
 create mode 100644 icons/PyHoca/32x32/edit-delete.png
 create mode 100644 icons/PyHoca/32x32/gnome-dev-printer-network.png
 create mode 100644 icons/PyHoca/32x32/gtk-edit.png
 create mode 100644 icons/PyHoca/32x32/list-add.png
 create mode 100644 icons/PyHoca/32x32/locked.png
 create mode 100644 icons/PyHoca/32x32/media-eject.png
 create mode 100644 icons/PyHoca/32x32/media-playback-pause.png
 create mode 100644 icons/PyHoca/32x32/media-playback-start.png
 create mode 100644 icons/PyHoca/32x32/media-playback-stop.png
 create mode 100644 icons/PyHoca/32x32/media-record.png
 create mode 100644 icons/PyHoca/32x32/media-seek-backward.png
 create mode 100644 icons/PyHoca/32x32/media-seek-forward.png
 create mode 100644 icons/PyHoca/32x32/media-skip-backward.png
 create mode 100644 icons/PyHoca/32x32/media-skip-forward.png
 create mode 100644 icons/PyHoca/32x32/network-wired.png
 create mode 120000 icons/PyHoca/32x32/profile_add.png
 create mode 120000 icons/PyHoca/32x32/profile_delete.png
 create mode 120000 icons/PyHoca/32x32/profile_edit.png
 create mode 120000 icons/PyHoca/32x32/profile_error.png
 create mode 120000 icons/PyHoca/32x32/profile_save.png
 create mode 100644 icons/PyHoca/32x32/pyhoca-session.png
 create mode 100644 icons/PyHoca/32x32/pyhoca-trayicon.png
 create mode 100644 icons/PyHoca/32x32/pyhoca-winicon.png
 create mode 120000 icons/PyHoca/32x32/session_cleanall.png
 create mode 120000 icons/PyHoca/32x32/session_error.png
 create mode 120000 icons/PyHoca/32x32/session_printing.png
 create mode 120000 icons/PyHoca/32x32/session_resume.png
 create mode 120000 icons/PyHoca/32x32/session_start.png
 create mode 120000 icons/PyHoca/32x32/session_suspend.png
 create mode 120000 icons/PyHoca/32x32/session_terminate.png
 create mode 120000 icons/PyHoca/32x32/session_warning.png
 create mode 100644 icons/PyHoca/32x32/unlocked.png
 create mode 100644 icons/PyHoca/32x32/window-close.png
 create mode 100644 icons/PyHoca/32x32/window-new.png
 create mode 100644 icons/PyHoca/32x32/x2go-logo-rotated.png
 create mode 100644 icons/PyHoca/32x32/x2go-logo-ubuntu.png
 create mode 100644 icons/PyHoca/32x32/x2go-logo-white-bg.png
 create mode 100644 icons/PyHoca/32x32/x2go.png
 create mode 100644 icons/PyHoca/48x48/pyhoca-session.png
 create mode 100644 icons/PyHoca/48x48/pyhoca-trayicon.png
 create mode 100644 icons/PyHoca/48x48/pyhoca-winicon.png
 create mode 100644 icons/PyHoca/48x48/x2go-logo-rotated.png
 create mode 100644 icons/PyHoca/48x48/x2go-logo-ubuntu.png
 create mode 100644 icons/PyHoca/48x48/x2go-logo-white-bg.png
 create mode 100644 icons/PyHoca/48x48/x2go.png
 create mode 100644 icons/PyHoca/64x64/pyhoca-session.png
 create mode 100644 icons/PyHoca/64x64/pyhoca-trayicon.png
 create mode 100644 icons/PyHoca/64x64/pyhoca-winicon.png
 create mode 100644 icons/PyHoca/64x64/x2go-logo-rotated.png
 create mode 100644 icons/PyHoca/64x64/x2go-logo-ubuntu.png
 create mode 100644 icons/PyHoca/64x64/x2go-logo-white-bg.png
 create mode 100644 icons/PyHoca/64x64/x2go.png
 create mode 120000 icons/PyHoca/scalable/auth_disconnect.svg
 create mode 120000 icons/PyHoca/scalable/auth_error.svg
 create mode 120000 icons/PyHoca/scalable/auth_success.svg
 create mode 100644 icons/PyHoca/scalable/broom-cleanup.svg
 create mode 100644 icons/PyHoca/scalable/dialog-apply.svg
 create mode 100644 icons/PyHoca/scalable/dialog-error.svg
 create mode 100644 icons/PyHoca/scalable/dialog-question.svg
 create mode 100644 icons/PyHoca/scalable/dialog-warning.svg
 create mode 100644 icons/PyHoca/scalable/document-save.svg
 create mode 100644 icons/PyHoca/scalable/edit-delete.svg
 create mode 100644 icons/PyHoca/scalable/gnome-dev-printer-network.svg
 create mode 100644 icons/PyHoca/scalable/gtk-edit.svg
 create mode 100644 icons/PyHoca/scalable/list-add.svg
 create mode 100644 icons/PyHoca/scalable/locked.svg
 create mode 100644 icons/PyHoca/scalable/media-eject.svg
 create mode 100644 icons/PyHoca/scalable/media-playback-pause.svg
 create mode 100644 icons/PyHoca/scalable/media-playback-start.svg
 create mode 100644 icons/PyHoca/scalable/media-playback-stop.svg
 create mode 100644 icons/PyHoca/scalable/media-record.svg
 create mode 100644 icons/PyHoca/scalable/media-seek-backward.svg
 create mode 100644 icons/PyHoca/scalable/media-seek-forward.svg
 create mode 100644 icons/PyHoca/scalable/media-skip-backward.svg
 create mode 100644 icons/PyHoca/scalable/media-skip-forward.svg
 create mode 100644 icons/PyHoca/scalable/network-wired.svg
 create mode 120000 icons/PyHoca/scalable/profile_add.svg
 create mode 120000 icons/PyHoca/scalable/profile_delete.svg
 create mode 120000 icons/PyHoca/scalable/profile_edit.svg
 create mode 120000 icons/PyHoca/scalable/profile_save.svg
 create mode 100644 icons/PyHoca/scalable/pyhoca-session.svg
 create mode 100644 icons/PyHoca/scalable/pyhoca-trayicon.svg
 create mode 100644 icons/PyHoca/scalable/pyhoca-winicon.svg
 create mode 120000 icons/PyHoca/scalable/session_cleanall.svg
 create mode 120000 icons/PyHoca/scalable/session_error.svg
 create mode 120000 icons/PyHoca/scalable/session_pause.svg
 create mode 120000 icons/PyHoca/scalable/session_printing.svg
 create mode 120000 icons/PyHoca/scalable/session_resume.svg
 create mode 120000 icons/PyHoca/scalable/session_start.svg
 create mode 120000 icons/PyHoca/scalable/session_terminate.svg
 create mode 120000 icons/PyHoca/scalable/session_warning.svg
 create mode 100644 icons/PyHoca/scalable/system-search.svg
 create mode 100644 icons/PyHoca/scalable/unlocked.svg
 create mode 100644 icons/PyHoca/scalable/window-close.svg
 create mode 100644 icons/PyHoca/scalable/window-new.svg
 create mode 100644 icons/PyHoca/scalable/x2go-logo-rotated.svg
 create mode 100644 icons/PyHoca/scalable/x2go-logo-ubuntu.svg
 create mode 100644 icons/PyHoca/scalable/x2go-logo-white-bg.svg
 create mode 100644 icons/PyHoca/scalable/x2go.svg
 create mode 100644 img/pyhoca-about-logo.png
 create mode 100644 img/pyhoca-splash.png
 create mode 120000 locale
 create mode 100644 man/pyhoca-gui.1
 create mode 100644 pixmaps/pyhoca-gui.ico
 create mode 100644 pixmaps/pyhoca_x2go-logo-ubuntu.ico
 create mode 100644 pixmaps/pyhoca_x2go-logo-ubuntu.svg
 create mode 100644 po/POTFILES.in
 create mode 100644 po/de.po
 create mode 100644 po/en.po
 create mode 100644 po/es.po
 create mode 100644 po/nl.po
 create mode 100644 po/pyhoca-gui.pot
 create mode 100755 pyhoca-gui
 create mode 100644 pyhoca/__init__.py
 create mode 100644 pyhoca/__init__.pyc
 create mode 100644 pyhoca/wxgui/__init__.py
 create mode 100644 pyhoca/wxgui/__init__.pyc
 create mode 100644 pyhoca/wxgui/about.py
 create mode 100644 pyhoca/wxgui/about.pyc
 create mode 100644 pyhoca/wxgui/basepath.py
 create mode 100644 pyhoca/wxgui/basepath.pyc
 create mode 100644 pyhoca/wxgui/frontend.py
 create mode 100644 pyhoca/wxgui/frontend.pyc
 create mode 100644 pyhoca/wxgui/logon.py
 create mode 100644 pyhoca/wxgui/logon.pyc
 create mode 100644 pyhoca/wxgui/menus_taskbar.py
 create mode 100644 pyhoca/wxgui/menus_taskbar.pyc
 create mode 100644 pyhoca/wxgui/notify.py
 create mode 100644 pyhoca/wxgui/notify.pyc
 create mode 100644 pyhoca/wxgui/profilemanager.py
 create mode 100644 pyhoca/wxgui/profilemanager.pyc
 create mode 100644 pyhoca/wxgui/taskbar.py
 create mode 100644 pyhoca/wxgui/taskbar.pyc
 create mode 100755 setup.py
 create mode 120000 x2go

The diff of changes is:
diff --git a/README b/README
new file mode 100644
index 0000000..d5a85ec
--- /dev/null
+++ b/README
@@ -0,0 +1,41 @@
+pyhoca-gui - Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+             Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+
+Published under the terms of the GNU General Public License.
+See http://www.gnu.org/licenses/gpl.html for a recent copy.
+
+
+=== What is pyhoca-gui? ===
+
+=== Requirements ===
+
+* the python-x2go module needs to be installed (of course)
+* the python-argparse module needs to be available
+* a working version of nxproxy/nxproxy.exe somewhere on your system (if you have 
+  installed x2goclient, everything should be fine)
+* wxPython (>= 2.8) is needed for the graphical beauty of pyhoca-gui...
+
+=== Current features ===
+
+* session management (start/resume/suspend/terminate)
+* profile management
+* audio, printing, local folder sharing
+* connect throug SSH proxy host (by forward tunneling)
+
+=== How to use it ===
+
+Please refer to the man page: 
+
+  man pyhoca-gui
+
+=== Known issues ===
+
+Please refer to the TODO file that has been shipped with pyhoca-gui.
+
+Thanks in advance for your feedback and contributions,
+
+Kiel (Germany) & LJ Almere Haven (Netherlands), 20101231
+
+  Dick Kniep <dick.kniep at lindix.nl>
+  Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+
diff --git a/README.i18n b/README.i18n
new file mode 100644
index 0000000..3fd3005
--- /dev/null
+++ b/README.i18n
@@ -0,0 +1,11 @@
+Activating i18n for development...
+----------------------------------
+
+If you test/use PyHoca-GUI from VCS (and not as a distribution package)
+then you have to activate i18n support with this command in PyHoca-GUI's 
+base directory:
+
+$ python setup.py build_i18n
+
+light+love,
+Mike Gabriel
\ No newline at end of file
diff --git a/TODO b/TODO
new file mode 100644
index 0000000..fd85115
--- /dev/null
+++ b/TODO
@@ -0,0 +1,26 @@
+pyhoca-gui - Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+             Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+
+Published under the terms of the GNU General Public License.
+See http://www.gnu.org/licenses/gpl.html for a recent copy.
+
+=== pyhoca-gui TODOs ===
+
+* continue sessions that are running on another server (for now:
+  suspend the session and then resume it)
+* profile manager (Windows registry based)
+* options manager
+* print dialog on incoming spool jobs
+* a X2goMimeDropbox for exporting MIME type objects
+
+=== pyhoca-gui Wishlist ===
+
+* SOCKS client support
+
+
+If you find any issues with this programme please let me know.
+
+Kiel (Germany) & LJ Almere Haven (Netherlands), 20101231
+
+  Dick Kniep <dick.kniep at lindix.nl>
+  Mike Gabriel <m.gabriel at das-netzwerkteam.de>
diff --git a/build-for-reprepro.sh b/build-for-reprepro.sh
new file mode 100755
index 0000000..ea4b407
--- /dev/null
+++ b/build-for-reprepro.sh
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# This programme is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This programme is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+PACKAGE=pyhoca-gui
+
+rm -f ../$PACKAGE_*.changes
+rm -f ../$PACKAGE_*.upload
+rm -f ../$PACKAGE_*.build
+rm -f ../$PACKAGE_*.dsc
+rm -f ../$PACKAGE_*.tar.gz
+rm -f ../$PACKAGE*.deb
+
+cp debian/changelog debian/changelog.new
+editor debian/changelog.new
+mv debian/changelog.new debian/changelog
+
+debuild
+
+cd ..
+rm -f $PACKAGE_*.upload
+dupload --to nwt-ubuntu $PACKAGE_*.changes
+rm -f $PACKAGE_*.upload
+dupload --to nwt-debian $PACKAGE_*.changes
diff --git a/build/mo/de/LC_MESSAGES/pyhoca-gui.mo b/build/mo/de/LC_MESSAGES/pyhoca-gui.mo
new file mode 100644
index 0000000..5b6266e
Binary files /dev/null and b/build/mo/de/LC_MESSAGES/pyhoca-gui.mo differ
diff --git a/build/mo/en/LC_MESSAGES/pyhoca-gui.mo b/build/mo/en/LC_MESSAGES/pyhoca-gui.mo
new file mode 100644
index 0000000..2780608
Binary files /dev/null and b/build/mo/en/LC_MESSAGES/pyhoca-gui.mo differ
diff --git a/build/mo/es/LC_MESSAGES/pyhoca-gui.mo b/build/mo/es/LC_MESSAGES/pyhoca-gui.mo
new file mode 100644
index 0000000..06e2edf
Binary files /dev/null and b/build/mo/es/LC_MESSAGES/pyhoca-gui.mo differ
diff --git a/build/mo/nl/LC_MESSAGES/pyhoca-gui.mo b/build/mo/nl/LC_MESSAGES/pyhoca-gui.mo
new file mode 100644
index 0000000..346f90e
Binary files /dev/null and b/build/mo/nl/LC_MESSAGES/pyhoca-gui.mo differ
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..007f951
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,247 @@
+pyhoca-gui (0.0.27-0~nwt2) natty lucid maverick stable testing unstable; urgency=low
+
+  * fixed missing i18n translations
+
+ -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Tue, 22 Feb 2011 12:55:00 +0100
+
+pyhoca-gui (0.0.26-0~nwt2) lucid maverick testing unstable; urgency=low
+
+  * depending on python-x2go (>= 0.0.35)
+
+ -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Wed, 19 Jan 2011 18:26:00 +0100
+
+pyhoca-gui (0.0.26-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * added PulseAudio support for Windows (still unstable)
+  * Unicode / i18n work (Umlaute in profile names, Umlaute in i18n tags)
+  * work on the Windows version stability
+  * work on audio setup in profile manager
+  * now new config files will be created on first application start
+  * NSIS installer for Windows
+
+ -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Wed, 19 Jan 2011 18:25:00 +0100
+
+pyhoca-gui (0.0.25-0~nwt2) lucid maverick testing unstable; urgency=low
+
+  * changed maintainer email address
+
+ -- Mike Gabriel <mike.gabriel at das-netzwerkteam.de>  Mon, 17 Jan 2011 00:26:00 +0100
+
+pyhoca-gui (0.0.25-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * fixed profile manager for Windows
+  * layout change on profile manager's session tab
+  * added i18n support to Windows version
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Mon, 17 Jan 2011 00:25:00 +0100
+
+pyhoca-gui (0.0.24-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * fixed profile manager window for Windows (and KDE4)
+  * reworked logon window
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 14 Jan 2011 03:54:00 +0100
+
+pyhoca-gui (0.0.23-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * uncommenting debug code
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Wed, 12 Jan 2011 00:36:00 +0100
+
+pyhoca-gui (0.0.22-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * bugfix for error reporting when a non-X2go user authenticates 
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Wed, 12 Jan 2011 00:35:00 +0100
+
+pyhoca-gui (0.0.21-0~nwt3) lucid maverick testing unstable; urgency=low
+
+  * simple rebuild
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Tue, 11 Jan 2011 21:40:00 +0100
+
+pyhoca-gui (0.0.21-0~nwt2) lucid maverick testing unstable; urgency=low
+
+  * uncommented build_icons, build_help
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Tue, 11 Jan 2011 21:30:00 +0100
+
+pyhoca-gui (0.0.21-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * added ,,Transfer session'' menu item for running sessions that are not
+    associated (i.e. running from within PyHoca-GUI)
+  * now X2goSessionRegistry.update_status() can differentiate between 
+    ,,already running'' sessions (directly after connect) and newly appearing
+    running sessions while having been connected for quite a while
+  * added i18n support
+  * added i18n English translation file en.po
+  * added i18n German translation file de.po
+  * added i18n Dutch translation file nl.po
+  * added i18n Spanish translation file es.po
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Tue, 11 Jan 2011 14:00:00 +0100
+
+pyhoca-gui (0.0.20-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * profile manager: added encoding support for local folder sharing
+  * profile manager: removed widgets for fstunnel and soundtunnel (PyHoca-GUI will
+    always tunnel through SSH)
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 31 Dec 2010 23:35:00 +0100
+
+pyhoca-gui (0.0.19-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * bugfix release (add_to_known_hosts / known_hosts issue when using X2goSSHProxy)
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 31 Dec 2010 13:35:00 +0100
+
+pyhoca-gui (0.0.18-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * bugfix release (enables profilemanager for release versions)
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 31 Dec 2010 02:10:00 +0100
+
+pyhoca-gui (0.0.17-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * updated documentation
+  * updated man page
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 31 Dec 2010 02:00:00 +0100
+
+pyhoca-gui (0.0.16-0~nwt3) lucid maverick testing unstable; urgency=low
+
+  * updated Python X2go dependency
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 31 Dec 2010 01:05:00 +0100
+
+pyhoca-gui (0.0.16-0~nwt2) lucid maverick testing unstable; urgency=low
+
+  * updated Python X2go dependency
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 31 Dec 2010 00:30:00 +0100
+
+pyhoca-gui (0.0.16-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * implemented profile manager
+  * using X2goClient HOOL_* methods for notifications
+  * menu changes
+  * implemented editing of connected sessions
+  * implemented local folder sharing for connected sessions
+  * added XMDCP support (still buggy)
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Thu, 30 Dec 2010 23:00:00 +0100
+
+pyhoca-gui (0.0.15-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * using setproctitle module to change the process name during runtime
+  * much work for Windows compatibitity
+  * Windows: added necessary information for build environment (py2exe)
+  * Windows: Logon window now understands ENTER and ESC keys
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 17 Dec 2010 17:00:00 +0100
+
+pyhoca-gui (0.0.14-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * artwork fine-tuning
+  * work on Windows code
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Tue, 14 Dec 2010 18:36:00 +0100
+
+pyhoca-gui (0.0.13-0~nwt3) lucid maverick testing unstable; urgency=low
+
+  * fixing image path
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Tue, 14 Dec 2010 16:21:00 +0100
+
+pyhoca-gui (0.0.13-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * added splash screen
+  * added ,,About...'' window
+  * added new artwork from Heinz-M. Graesing
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Tue, 14 Dec 2010 16:15:00 +0100
+
+pyhoca-gui (0.0.12-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * added MS remote desktop (RDP) support
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 21:19:00 +0100
+
+pyhoca-gui (0.0.11-0~nwt2) lucid maverick testing unstable; urgency=low
+
+  * added dependencies: wx-common (>=2.8.10.0) and python-wxtools (>=2.8.10.0)
+    Thanks to Udo Lembke!!!
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 17:22:00 +0100
+
+pyhoca-gui (0.0.11-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * forgot to adapt version for Python egg (setup.py)
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 13:45:00 +0100
+
+pyhoca-gui (0.0.10-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * depending on Python X2go 0.0.22
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 13:40:00 +0100
+
+pyhoca-gui (0.0.9-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * reducing CPU usage by factor 2-3 (allowing 25 nxproxy window refreshes 
+    per second, instead of 50)
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 12:39:00 +0100
+
+pyhoca-gui (0.0.8-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * reverting back to pixmaps based desktop icon, but now as .svg...
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 12:12:00 +0100
+
+pyhoca-gui (0.0.7-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * still fiddling around with desktop icon... 
+    using hicolor folder in /usr/share/icons now
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 12:10:00 +0100
+
+pyhoca-gui (0.0.6-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * replacing desktop icon .xpm by .png image
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 11:52:00 +0100
+
+pyhoca-gui (0.0.5-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * fixing pixmap desktop icon
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 11:50:00 +0100
+
+pyhoca-gui (0.0.4-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * changed handling of icons
+  * added pixmap for PyHocaGUI app menu item
+  * changed systray icon
+  * removed images.py
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Fri, 10 Dec 2010 11:25:00 +0100
+
+pyhoca-gui (0.0.3-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * really disabled options and profilemanager menu (bugfix)
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Thu, 09 Dec 2010 23:55:00 +0100
+
+pyhoca-gui (0.0.2-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * bugfix in frontend.py
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Thu, 09 Dec 2010 23:50:00 +0100
+
+pyhoca-gui (0.0.1-0~nwt1) lucid maverick testing unstable; urgency=low
+
+  * initializing PyHoca-GUI .deb package
+
+ -- Mike Gabriel <m.gabriel at das-netzwerkteam.de>  Thu, 09 Dec 2010 23:30:00 +0100
+
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7f8f011
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+7
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..1aff272
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,16 @@
+Source: pyhoca-gui
+Section: python
+Priority: optional
+Maintainer: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>
+Build-Depends: debhelper (>= 7), python, python-setuptools, python-support, python-distutils-extra
+Standards-Version: 3.9.1
+Homepage: http://das-netzwerkteam.de/site/?q=node/71
+XS-Python-Version: >= 2.6
+
+Package: pyhoca-gui
+Architecture: all
+Depends: ${misc:Depends}, python, python-x2go (>=0.0.36-0~nwt1),
+    python-argparse, python-notify, python-setproctitle (>=1.0.1-1),
+    wx-common(>=2.8.10.0), python-wxtools (>=2.8.10.0)
+Description: An graphical X2go client written in (wx)Python
+ A graphical X2go client implementation written in (wx)Python.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..f4fd8bb
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,14 @@
+pyhoca-gui - Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+             Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+
+Published under the terms of the GNU General Public License.
+See http://www.gnu.org/licenses/gpl.html for a recent copy.
+
+On Debian/Ubuntu systems a local copy of the GPL license can also be 
+found in /usr/share/common-licenses.
+
+The code has been packaged for Debian/Ubuntu by Mike Gabriel 
+<m.gabriel at das-netzwerkteam.de>
+
+light+love,
+Dick Kniep and Mike Gabriel
diff --git a/debian/pyhoca-gui.dirs b/debian/pyhoca-gui.dirs
new file mode 100644
index 0000000..22ccb76
--- /dev/null
+++ b/debian/pyhoca-gui.dirs
@@ -0,0 +1 @@
+usr/share/pyhoca/img
diff --git a/debian/pyhoca-gui.docs b/debian/pyhoca-gui.docs
new file mode 100644
index 0000000..1d23e9b
--- /dev/null
+++ b/debian/pyhoca-gui.docs
@@ -0,0 +1,2 @@
+README
+TODO
\ No newline at end of file
diff --git a/debian/pyhoca-gui.install b/debian/pyhoca-gui.install
new file mode 100644
index 0000000..88c8033
--- /dev/null
+++ b/debian/pyhoca-gui.install
@@ -0,0 +1,5 @@
+pyhoca-gui /usr/bin/
+icons/* /usr/share/icons/
+desktop/* /usr/share/applications/
+pixmaps/*.svg /usr/share/pixmaps/
+img/*.png /usr/share/pyhoca/img/
\ No newline at end of file
diff --git a/debian/pyhoca-gui.manpages b/debian/pyhoca-gui.manpages
new file mode 100644
index 0000000..b27fa76
--- /dev/null
+++ b/debian/pyhoca-gui.manpages
@@ -0,0 +1 @@
+man/pyhoca-gui.1
\ No newline at end of file
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..db6b2c7
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,24 @@
+#!/usr/bin/make -f
+# debian/rules file - for pyhoca-cli
+# Based on sample debian/rules file - for GNU Hello (1.3).
+# Copyright 2010-2011 by Mike Gabriel
+
+#PYVERS=$(shell pyversions -vr)
+
+%:
+	dh ${@}
+
+build:
+	dh ${@}
+
+install:
+	dh ${@}
+
+
+binary-indep:
+	dh ${@}
+
+clean:
+	rm -Rfv debian/pyhoca-gui debian/pyhoca-gui.*.debhelper debian/pyhoca-gui.substvars
+	rm -Rfv debian/tmp debian/patches
+	dh ${@}
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..d3827e7
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+1.0
diff --git a/desktop/pyhoca-gui.desktop b/desktop/pyhoca-gui.desktop
new file mode 100644
index 0000000..0fcee16
--- /dev/null
+++ b/desktop/pyhoca-gui.desktop
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Name=PyHoca-GUI
+GenericName=PyHoca-GUI
+Comment=Python X2go Client Applet
+Exec=pyhoca-gui
+Icon=pyhoca_x2go-logo-ubuntu
+X-Window-Icon=pyhoca_x2go-logo-ubuntu
+X-HildonDesk-ShowInToolbar=true
+X-Osso-Type=application/x-executable
+Terminal=false
+Type=Application
+Encoding=UTF-8
+Categories=GNOME;KDE;Network
diff --git a/examples/printing b/examples/printing
new file mode 100644
index 0000000..4ee8ba2
--- /dev/null
+++ b/examples/printing
@@ -0,0 +1,17 @@
+[print]
+command = lpr
+stdin = 0
+startcmd = 0
+ps = 0
+
+[view]
+command = xpdf
+open = 1
+
+[CUPS]
+defaultprinter = PDF
+
+[General]
+pdfview = 1
+showdialog = 0
+
diff --git a/examples/settings b/examples/settings
new file mode 100644
index 0000000..e29d305
--- /dev/null
+++ b/examples/settings
@@ -0,0 +1,17 @@
+[General]
+clientport = 22
+autoresume = 1
+
+[Authorization]
+suspend = 1
+editprofile = 1
+newprofile = 1
+resume = 1
+
+[LDAP]
+useldap = 0
+port1 = 0
+port2 = 0
+port = 389
+server = localhost
+
diff --git a/examples/xconfig b/examples/xconfig
new file mode 100644
index 0000000..fb014d4
--- /dev/null
+++ b/examples/xconfig
@@ -0,0 +1,24 @@
+[XServers]
+known_xservers = ['VcXsrv', 'Xming', 'Cygwin-X']
+
+[VcXsrv]
+test_installed = C:\Programme\VcXsrv\vcxsrv.exe
+process_name = vcxsrv.exe
+parameters = [':40', '-clipboard', '-multiwindow', '-notrayicon', '-nowinkill']
+display = localhost:40
+run_command = C:\Programme\VcXsrv\vcxsrv.exe
+
+[Cygwin-X]
+test_installed = C:\cygwin\bin\XWin.exe
+process_name = XWin.exe
+parameters = [':40', '-clipboard', '-multiwindow', '-notrayicon', '-nowinkill']
+display = localhost:40
+run_command = C:\cygwin\bin\XWin.exe
+
+[Xming]
+test_installed = C:\Programme\Xming\Xming.exe
+process_name = Xming.exe
+parameters = [':40', '-clipboard', '-multiwindow', '-notrayicon', '-nowinkill']
+display = localhost:40
+run_command = C:\Programme\Xming\Xming.exe
+
diff --git a/icons/PyHoca/128x128/pyhoca-session.png b/icons/PyHoca/128x128/pyhoca-session.png
new file mode 100644
index 0000000..3ab93b5
Binary files /dev/null and b/icons/PyHoca/128x128/pyhoca-session.png differ
diff --git a/icons/PyHoca/128x128/pyhoca-trayicon.png b/icons/PyHoca/128x128/pyhoca-trayicon.png
new file mode 100644
index 0000000..3ab93b5
Binary files /dev/null and b/icons/PyHoca/128x128/pyhoca-trayicon.png differ
diff --git a/icons/PyHoca/128x128/pyhoca-winicon.png b/icons/PyHoca/128x128/pyhoca-winicon.png
new file mode 100644
index 0000000..3ab93b5
Binary files /dev/null and b/icons/PyHoca/128x128/pyhoca-winicon.png differ
diff --git a/icons/PyHoca/128x128/x2go-logo-rotated.png b/icons/PyHoca/128x128/x2go-logo-rotated.png
new file mode 100644
index 0000000..fa18078
Binary files /dev/null and b/icons/PyHoca/128x128/x2go-logo-rotated.png differ
diff --git a/icons/PyHoca/128x128/x2go-logo-ubuntu.png b/icons/PyHoca/128x128/x2go-logo-ubuntu.png
new file mode 100644
index 0000000..7ff0fb7
Binary files /dev/null and b/icons/PyHoca/128x128/x2go-logo-ubuntu.png differ
diff --git a/icons/PyHoca/128x128/x2go-logo-white-bg.png b/icons/PyHoca/128x128/x2go-logo-white-bg.png
new file mode 100644
index 0000000..1542435
Binary files /dev/null and b/icons/PyHoca/128x128/x2go-logo-white-bg.png differ
diff --git a/icons/PyHoca/128x128/x2go.png b/icons/PyHoca/128x128/x2go.png
new file mode 100644
index 0000000..0f96ecc
Binary files /dev/null and b/icons/PyHoca/128x128/x2go.png differ
diff --git a/icons/PyHoca/16x16/pyhoca-session.png b/icons/PyHoca/16x16/pyhoca-session.png
new file mode 100644
index 0000000..25bd64c
Binary files /dev/null and b/icons/PyHoca/16x16/pyhoca-session.png differ
diff --git a/icons/PyHoca/16x16/pyhoca-trayicon.png b/icons/PyHoca/16x16/pyhoca-trayicon.png
new file mode 100644
index 0000000..25bd64c
Binary files /dev/null and b/icons/PyHoca/16x16/pyhoca-trayicon.png differ
diff --git a/icons/PyHoca/16x16/pyhoca-winicon.png b/icons/PyHoca/16x16/pyhoca-winicon.png
new file mode 100644
index 0000000..25bd64c
Binary files /dev/null and b/icons/PyHoca/16x16/pyhoca-winicon.png differ
diff --git a/icons/PyHoca/16x16/system-search.png b/icons/PyHoca/16x16/system-search.png
new file mode 100644
index 0000000..1400155
Binary files /dev/null and b/icons/PyHoca/16x16/system-search.png differ
diff --git a/icons/PyHoca/16x16/x2go-logo-rotated.png b/icons/PyHoca/16x16/x2go-logo-rotated.png
new file mode 100644
index 0000000..b5c3970
Binary files /dev/null and b/icons/PyHoca/16x16/x2go-logo-rotated.png differ
diff --git a/icons/PyHoca/16x16/x2go-logo-ubuntu.png b/icons/PyHoca/16x16/x2go-logo-ubuntu.png
new file mode 100644
index 0000000..63b9ee4
Binary files /dev/null and b/icons/PyHoca/16x16/x2go-logo-ubuntu.png differ
diff --git a/icons/PyHoca/16x16/x2go-logo-white-bg.png b/icons/PyHoca/16x16/x2go-logo-white-bg.png
new file mode 100644
index 0000000..5a2df75
Binary files /dev/null and b/icons/PyHoca/16x16/x2go-logo-white-bg.png differ
diff --git a/icons/PyHoca/16x16/x2go.png b/icons/PyHoca/16x16/x2go.png
new file mode 100644
index 0000000..e00b6d9
Binary files /dev/null and b/icons/PyHoca/16x16/x2go.png differ
diff --git a/icons/PyHoca/22x22/pyhoca-session.png b/icons/PyHoca/22x22/pyhoca-session.png
new file mode 100644
index 0000000..03679bf
Binary files /dev/null and b/icons/PyHoca/22x22/pyhoca-session.png differ
diff --git a/icons/PyHoca/22x22/pyhoca-trayicon.png b/icons/PyHoca/22x22/pyhoca-trayicon.png
new file mode 100644
index 0000000..03679bf
Binary files /dev/null and b/icons/PyHoca/22x22/pyhoca-trayicon.png differ
diff --git a/icons/PyHoca/22x22/pyhoca-winicon.png b/icons/PyHoca/22x22/pyhoca-winicon.png
new file mode 100644
index 0000000..03679bf
Binary files /dev/null and b/icons/PyHoca/22x22/pyhoca-winicon.png differ
diff --git a/icons/PyHoca/22x22/x2go-logo-rotated.png b/icons/PyHoca/22x22/x2go-logo-rotated.png
new file mode 100644
index 0000000..a1f7db2
Binary files /dev/null and b/icons/PyHoca/22x22/x2go-logo-rotated.png differ
diff --git a/icons/PyHoca/22x22/x2go-logo-ubuntu.png b/icons/PyHoca/22x22/x2go-logo-ubuntu.png
new file mode 100644
index 0000000..fb1ad70
Binary files /dev/null and b/icons/PyHoca/22x22/x2go-logo-ubuntu.png differ
diff --git a/icons/PyHoca/22x22/x2go-logo-white-bg.png b/icons/PyHoca/22x22/x2go-logo-white-bg.png
new file mode 100644
index 0000000..7cd46ec
Binary files /dev/null and b/icons/PyHoca/22x22/x2go-logo-white-bg.png differ
diff --git a/icons/PyHoca/22x22/x2go.png b/icons/PyHoca/22x22/x2go.png
new file mode 100644
index 0000000..e1e06e2
Binary files /dev/null and b/icons/PyHoca/22x22/x2go.png differ
diff --git a/icons/PyHoca/32x32/audio_error.png b/icons/PyHoca/32x32/audio_error.png
new file mode 120000
index 0000000..ab8db5e
--- /dev/null
+++ b/icons/PyHoca/32x32/audio_error.png
@@ -0,0 +1 @@
+dialog-error.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/auth_disconnect.png b/icons/PyHoca/32x32/auth_disconnect.png
new file mode 120000
index 0000000..54f2738
--- /dev/null
+++ b/icons/PyHoca/32x32/auth_disconnect.png
@@ -0,0 +1 @@
+network-wired.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/auth_error.png b/icons/PyHoca/32x32/auth_error.png
new file mode 120000
index 0000000..ab8db5e
--- /dev/null
+++ b/icons/PyHoca/32x32/auth_error.png
@@ -0,0 +1 @@
+dialog-error.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/auth_failed.png b/icons/PyHoca/32x32/auth_failed.png
new file mode 120000
index 0000000..91cec00
--- /dev/null
+++ b/icons/PyHoca/32x32/auth_failed.png
@@ -0,0 +1 @@
+dialog-warning.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/auth_success.png b/icons/PyHoca/32x32/auth_success.png
new file mode 120000
index 0000000..d3a064b
--- /dev/null
+++ b/icons/PyHoca/32x32/auth_success.png
@@ -0,0 +1 @@
+dialog-apply.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/broom-cleanup.png b/icons/PyHoca/32x32/broom-cleanup.png
new file mode 100644
index 0000000..7ad1eb0
Binary files /dev/null and b/icons/PyHoca/32x32/broom-cleanup.png differ
diff --git a/icons/PyHoca/32x32/dialog-apply.png b/icons/PyHoca/32x32/dialog-apply.png
new file mode 100644
index 0000000..4343b02
Binary files /dev/null and b/icons/PyHoca/32x32/dialog-apply.png differ
diff --git a/icons/PyHoca/32x32/dialog-error.png b/icons/PyHoca/32x32/dialog-error.png
new file mode 100644
index 0000000..030d8c5
Binary files /dev/null and b/icons/PyHoca/32x32/dialog-error.png differ
diff --git a/icons/PyHoca/32x32/dialog-question.png b/icons/PyHoca/32x32/dialog-question.png
new file mode 100644
index 0000000..e8a06f4
Binary files /dev/null and b/icons/PyHoca/32x32/dialog-question.png differ
diff --git a/icons/PyHoca/32x32/dialog-warning.png b/icons/PyHoca/32x32/dialog-warning.png
new file mode 100644
index 0000000..aad64d4
Binary files /dev/null and b/icons/PyHoca/32x32/dialog-warning.png differ
diff --git a/icons/PyHoca/32x32/document-save.png b/icons/PyHoca/32x32/document-save.png
new file mode 100644
index 0000000..8ed656a
Binary files /dev/null and b/icons/PyHoca/32x32/document-save.png differ
diff --git a/icons/PyHoca/32x32/edit-delete.png b/icons/PyHoca/32x32/edit-delete.png
new file mode 100644
index 0000000..56c6331
Binary files /dev/null and b/icons/PyHoca/32x32/edit-delete.png differ
diff --git a/icons/PyHoca/32x32/gnome-dev-printer-network.png b/icons/PyHoca/32x32/gnome-dev-printer-network.png
new file mode 100644
index 0000000..9ea94fc
Binary files /dev/null and b/icons/PyHoca/32x32/gnome-dev-printer-network.png differ
diff --git a/icons/PyHoca/32x32/gtk-edit.png b/icons/PyHoca/32x32/gtk-edit.png
new file mode 100644
index 0000000..930f91f
Binary files /dev/null and b/icons/PyHoca/32x32/gtk-edit.png differ
diff --git a/icons/PyHoca/32x32/list-add.png b/icons/PyHoca/32x32/list-add.png
new file mode 100644
index 0000000..81f3c5e
Binary files /dev/null and b/icons/PyHoca/32x32/list-add.png differ
diff --git a/icons/PyHoca/32x32/locked.png b/icons/PyHoca/32x32/locked.png
new file mode 100644
index 0000000..29a5bcc
Binary files /dev/null and b/icons/PyHoca/32x32/locked.png differ
diff --git a/icons/PyHoca/32x32/media-eject.png b/icons/PyHoca/32x32/media-eject.png
new file mode 100644
index 0000000..8ce9424
Binary files /dev/null and b/icons/PyHoca/32x32/media-eject.png differ
diff --git a/icons/PyHoca/32x32/media-playback-pause.png b/icons/PyHoca/32x32/media-playback-pause.png
new file mode 100644
index 0000000..9c558aa
Binary files /dev/null and b/icons/PyHoca/32x32/media-playback-pause.png differ
diff --git a/icons/PyHoca/32x32/media-playback-start.png b/icons/PyHoca/32x32/media-playback-start.png
new file mode 100644
index 0000000..8b41724
Binary files /dev/null and b/icons/PyHoca/32x32/media-playback-start.png differ
diff --git a/icons/PyHoca/32x32/media-playback-stop.png b/icons/PyHoca/32x32/media-playback-stop.png
new file mode 100644
index 0000000..b694445
Binary files /dev/null and b/icons/PyHoca/32x32/media-playback-stop.png differ
diff --git a/icons/PyHoca/32x32/media-record.png b/icons/PyHoca/32x32/media-record.png
new file mode 100644
index 0000000..d763eb7
Binary files /dev/null and b/icons/PyHoca/32x32/media-record.png differ
diff --git a/icons/PyHoca/32x32/media-seek-backward.png b/icons/PyHoca/32x32/media-seek-backward.png
new file mode 100644
index 0000000..b600fcc
Binary files /dev/null and b/icons/PyHoca/32x32/media-seek-backward.png differ
diff --git a/icons/PyHoca/32x32/media-seek-forward.png b/icons/PyHoca/32x32/media-seek-forward.png
new file mode 100644
index 0000000..6019dad
Binary files /dev/null and b/icons/PyHoca/32x32/media-seek-forward.png differ
diff --git a/icons/PyHoca/32x32/media-skip-backward.png b/icons/PyHoca/32x32/media-skip-backward.png
new file mode 100644
index 0000000..4c026ba
Binary files /dev/null and b/icons/PyHoca/32x32/media-skip-backward.png differ
diff --git a/icons/PyHoca/32x32/media-skip-forward.png b/icons/PyHoca/32x32/media-skip-forward.png
new file mode 100644
index 0000000..836e38c
Binary files /dev/null and b/icons/PyHoca/32x32/media-skip-forward.png differ
diff --git a/icons/PyHoca/32x32/network-wired.png b/icons/PyHoca/32x32/network-wired.png
new file mode 100644
index 0000000..99ff359
Binary files /dev/null and b/icons/PyHoca/32x32/network-wired.png differ
diff --git a/icons/PyHoca/32x32/profile_add.png b/icons/PyHoca/32x32/profile_add.png
new file mode 120000
index 0000000..7d4c878
--- /dev/null
+++ b/icons/PyHoca/32x32/profile_add.png
@@ -0,0 +1 @@
+list-add.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/profile_delete.png b/icons/PyHoca/32x32/profile_delete.png
new file mode 120000
index 0000000..bb0a74a
--- /dev/null
+++ b/icons/PyHoca/32x32/profile_delete.png
@@ -0,0 +1 @@
+edit-delete.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/profile_edit.png b/icons/PyHoca/32x32/profile_edit.png
new file mode 120000
index 0000000..a09517d
--- /dev/null
+++ b/icons/PyHoca/32x32/profile_edit.png
@@ -0,0 +1 @@
+gtk-edit.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/profile_error.png b/icons/PyHoca/32x32/profile_error.png
new file mode 120000
index 0000000..ab8db5e
--- /dev/null
+++ b/icons/PyHoca/32x32/profile_error.png
@@ -0,0 +1 @@
+dialog-error.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/profile_save.png b/icons/PyHoca/32x32/profile_save.png
new file mode 120000
index 0000000..b1240e1
--- /dev/null
+++ b/icons/PyHoca/32x32/profile_save.png
@@ -0,0 +1 @@
+document-save.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/pyhoca-session.png b/icons/PyHoca/32x32/pyhoca-session.png
new file mode 100644
index 0000000..1cdd8ff
Binary files /dev/null and b/icons/PyHoca/32x32/pyhoca-session.png differ
diff --git a/icons/PyHoca/32x32/pyhoca-trayicon.png b/icons/PyHoca/32x32/pyhoca-trayicon.png
new file mode 100644
index 0000000..1cdd8ff
Binary files /dev/null and b/icons/PyHoca/32x32/pyhoca-trayicon.png differ
diff --git a/icons/PyHoca/32x32/pyhoca-winicon.png b/icons/PyHoca/32x32/pyhoca-winicon.png
new file mode 100644
index 0000000..1cdd8ff
Binary files /dev/null and b/icons/PyHoca/32x32/pyhoca-winicon.png differ
diff --git a/icons/PyHoca/32x32/session_cleanall.png b/icons/PyHoca/32x32/session_cleanall.png
new file mode 120000
index 0000000..406821b
--- /dev/null
+++ b/icons/PyHoca/32x32/session_cleanall.png
@@ -0,0 +1 @@
+broom-cleanup.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/session_error.png b/icons/PyHoca/32x32/session_error.png
new file mode 120000
index 0000000..ab8db5e
--- /dev/null
+++ b/icons/PyHoca/32x32/session_error.png
@@ -0,0 +1 @@
+dialog-error.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/session_printing.png b/icons/PyHoca/32x32/session_printing.png
new file mode 120000
index 0000000..70a342f
--- /dev/null
+++ b/icons/PyHoca/32x32/session_printing.png
@@ -0,0 +1 @@
+gnome-dev-printer-network.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/session_resume.png b/icons/PyHoca/32x32/session_resume.png
new file mode 120000
index 0000000..e06eca2
--- /dev/null
+++ b/icons/PyHoca/32x32/session_resume.png
@@ -0,0 +1 @@
+x2go-logo-rotated.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/session_start.png b/icons/PyHoca/32x32/session_start.png
new file mode 120000
index 0000000..e06eca2
--- /dev/null
+++ b/icons/PyHoca/32x32/session_start.png
@@ -0,0 +1 @@
+x2go-logo-rotated.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/session_suspend.png b/icons/PyHoca/32x32/session_suspend.png
new file mode 120000
index 0000000..0ef65d6
--- /dev/null
+++ b/icons/PyHoca/32x32/session_suspend.png
@@ -0,0 +1 @@
+media-playback-pause.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/session_terminate.png b/icons/PyHoca/32x32/session_terminate.png
new file mode 120000
index 0000000..f8a647d
--- /dev/null
+++ b/icons/PyHoca/32x32/session_terminate.png
@@ -0,0 +1 @@
+window-close.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/session_warning.png b/icons/PyHoca/32x32/session_warning.png
new file mode 120000
index 0000000..91cec00
--- /dev/null
+++ b/icons/PyHoca/32x32/session_warning.png
@@ -0,0 +1 @@
+dialog-warning.png
\ No newline at end of file
diff --git a/icons/PyHoca/32x32/unlocked.png b/icons/PyHoca/32x32/unlocked.png
new file mode 100644
index 0000000..0e18606
Binary files /dev/null and b/icons/PyHoca/32x32/unlocked.png differ
diff --git a/icons/PyHoca/32x32/window-close.png b/icons/PyHoca/32x32/window-close.png
new file mode 100644
index 0000000..843767f
Binary files /dev/null and b/icons/PyHoca/32x32/window-close.png differ
diff --git a/icons/PyHoca/32x32/window-new.png b/icons/PyHoca/32x32/window-new.png
new file mode 100644
index 0000000..1540e8c
Binary files /dev/null and b/icons/PyHoca/32x32/window-new.png differ
diff --git a/icons/PyHoca/32x32/x2go-logo-rotated.png b/icons/PyHoca/32x32/x2go-logo-rotated.png
new file mode 100644
index 0000000..3f28eb0
Binary files /dev/null and b/icons/PyHoca/32x32/x2go-logo-rotated.png differ
diff --git a/icons/PyHoca/32x32/x2go-logo-ubuntu.png b/icons/PyHoca/32x32/x2go-logo-ubuntu.png
new file mode 100644
index 0000000..5b7c8e5
Binary files /dev/null and b/icons/PyHoca/32x32/x2go-logo-ubuntu.png differ
diff --git a/icons/PyHoca/32x32/x2go-logo-white-bg.png b/icons/PyHoca/32x32/x2go-logo-white-bg.png
new file mode 100644
index 0000000..6a35c8b
Binary files /dev/null and b/icons/PyHoca/32x32/x2go-logo-white-bg.png differ
diff --git a/icons/PyHoca/32x32/x2go.png b/icons/PyHoca/32x32/x2go.png
new file mode 100644
index 0000000..9059745
Binary files /dev/null and b/icons/PyHoca/32x32/x2go.png differ
diff --git a/icons/PyHoca/48x48/pyhoca-session.png b/icons/PyHoca/48x48/pyhoca-session.png
new file mode 100644
index 0000000..5932207
Binary files /dev/null and b/icons/PyHoca/48x48/pyhoca-session.png differ
diff --git a/icons/PyHoca/48x48/pyhoca-trayicon.png b/icons/PyHoca/48x48/pyhoca-trayicon.png
new file mode 100644
index 0000000..5932207
Binary files /dev/null and b/icons/PyHoca/48x48/pyhoca-trayicon.png differ
diff --git a/icons/PyHoca/48x48/pyhoca-winicon.png b/icons/PyHoca/48x48/pyhoca-winicon.png
new file mode 100644
index 0000000..5932207
Binary files /dev/null and b/icons/PyHoca/48x48/pyhoca-winicon.png differ
diff --git a/icons/PyHoca/48x48/x2go-logo-rotated.png b/icons/PyHoca/48x48/x2go-logo-rotated.png
new file mode 100644
index 0000000..e3b7e20
Binary files /dev/null and b/icons/PyHoca/48x48/x2go-logo-rotated.png differ
diff --git a/icons/PyHoca/48x48/x2go-logo-ubuntu.png b/icons/PyHoca/48x48/x2go-logo-ubuntu.png
new file mode 100644
index 0000000..b547c98
Binary files /dev/null and b/icons/PyHoca/48x48/x2go-logo-ubuntu.png differ
diff --git a/icons/PyHoca/48x48/x2go-logo-white-bg.png b/icons/PyHoca/48x48/x2go-logo-white-bg.png
new file mode 100644
index 0000000..bfcb097
Binary files /dev/null and b/icons/PyHoca/48x48/x2go-logo-white-bg.png differ
diff --git a/icons/PyHoca/48x48/x2go.png b/icons/PyHoca/48x48/x2go.png
new file mode 100644
index 0000000..8e543b9
Binary files /dev/null and b/icons/PyHoca/48x48/x2go.png differ
diff --git a/icons/PyHoca/64x64/pyhoca-session.png b/icons/PyHoca/64x64/pyhoca-session.png
new file mode 100644
index 0000000..aa87bc3
Binary files /dev/null and b/icons/PyHoca/64x64/pyhoca-session.png differ
diff --git a/icons/PyHoca/64x64/pyhoca-trayicon.png b/icons/PyHoca/64x64/pyhoca-trayicon.png
new file mode 100644
index 0000000..aa87bc3
Binary files /dev/null and b/icons/PyHoca/64x64/pyhoca-trayicon.png differ
diff --git a/icons/PyHoca/64x64/pyhoca-winicon.png b/icons/PyHoca/64x64/pyhoca-winicon.png
new file mode 100644
index 0000000..aa87bc3
Binary files /dev/null and b/icons/PyHoca/64x64/pyhoca-winicon.png differ
diff --git a/icons/PyHoca/64x64/x2go-logo-rotated.png b/icons/PyHoca/64x64/x2go-logo-rotated.png
new file mode 100644
index 0000000..8428b47
Binary files /dev/null and b/icons/PyHoca/64x64/x2go-logo-rotated.png differ
diff --git a/icons/PyHoca/64x64/x2go-logo-ubuntu.png b/icons/PyHoca/64x64/x2go-logo-ubuntu.png
new file mode 100644
index 0000000..67fc789
Binary files /dev/null and b/icons/PyHoca/64x64/x2go-logo-ubuntu.png differ
diff --git a/icons/PyHoca/64x64/x2go-logo-white-bg.png b/icons/PyHoca/64x64/x2go-logo-white-bg.png
new file mode 100644
index 0000000..05dcbf0
Binary files /dev/null and b/icons/PyHoca/64x64/x2go-logo-white-bg.png differ
diff --git a/icons/PyHoca/64x64/x2go.png b/icons/PyHoca/64x64/x2go.png
new file mode 100644
index 0000000..2c37783
Binary files /dev/null and b/icons/PyHoca/64x64/x2go.png differ
diff --git a/icons/PyHoca/scalable/auth_disconnect.svg b/icons/PyHoca/scalable/auth_disconnect.svg
new file mode 120000
index 0000000..84ab203
--- /dev/null
+++ b/icons/PyHoca/scalable/auth_disconnect.svg
@@ -0,0 +1 @@
+network-wired.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/auth_error.svg b/icons/PyHoca/scalable/auth_error.svg
new file mode 120000
index 0000000..3b41d91
--- /dev/null
+++ b/icons/PyHoca/scalable/auth_error.svg
@@ -0,0 +1 @@
+dialog-error.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/auth_success.svg b/icons/PyHoca/scalable/auth_success.svg
new file mode 120000
index 0000000..9af349f
--- /dev/null
+++ b/icons/PyHoca/scalable/auth_success.svg
@@ -0,0 +1 @@
+dialog-apply.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/broom-cleanup.svg b/icons/PyHoca/scalable/broom-cleanup.svg
new file mode 100644
index 0000000..36af1c6
Binary files /dev/null and b/icons/PyHoca/scalable/broom-cleanup.svg differ
diff --git a/icons/PyHoca/scalable/dialog-apply.svg b/icons/PyHoca/scalable/dialog-apply.svg
new file mode 100644
index 0000000..1524dd3
--- /dev/null
+++ b/icons/PyHoca/scalable/dialog-apply.svg
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7976"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7978">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7948">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="0"
+         id="stop7950" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="1"
+         id="stop7952" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7948"
+       id="linearGradient7954"
+       x1="-81.959923"
+       y1="35.301952"
+       x2="-91.354408"
+       y2="-8.3031855"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient1731">
+      <stop
+         id="stop1733"
+         offset="0"
+         style="stop-color:#b8d67a;stop-opacity:1" />
+      <stop
+         id="stop1735"
+         offset="1"
+         style="stop-color:#789e2d;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient1731"
+       id="linearGradient1455"
+       gradientUnits="userSpaceOnUse"
+       x1="-85.334991"
+       y1="-6.8188653"
+       x2="-91.536674"
+       y2="27.080305"
+       gradientTransform="translate(0.5271438,-2.3199355e-2)" />
+    <linearGradient
+       id="linearGradient8662"
+       inkscape:collect="always">
+      <stop
+         id="stop8664"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" />
+      <stop
+         id="stop8666"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient8662"
+       id="radialGradient1444"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.536723,0,16.87306)"
+       cx="24.837126"
+       cy="36.421127"
+       fx="24.837126"
+       fy="36.421127"
+       r="15.644737" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="14"
+     inkscape:cx="17.79899"
+     inkscape:cy="21.497325"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="1680"
+     inkscape:window-height="1000"
+     inkscape:window-x="0"
+     inkscape:window-y="25" />
+  <metadata
+     id="metadata7981">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       transform="matrix(1.214466,0,0,0.595458,-6.1638433,20.312751)"
+       d="M 40.481863,36.421127 A 15.644737,8.3968935 0 1 1 9.1923885,36.421127 A 15.644737,8.3968935 0 1 1 40.481863,36.421127 z"
+       sodipodi:ry="8.3968935"
+       sodipodi:rx="15.644737"
+       sodipodi:cy="36.421127"
+       sodipodi:cx="24.837126"
+       id="path8660"
+       style="opacity:0.20454544;fill:url(#radialGradient1444);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:10;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       sodipodi:type="arc" />
+    <g
+       id="g1529"
+       inkscape:label="Layer 1"
+       transform="translate(111.7398,15.579231)">
+      <g
+         id="g1450"
+         transform="matrix(1.017301,-0.243559,0.243559,1.017301,-1.745715,-23.38258)">
+        <path
+           style="fill:url(#linearGradient1455);fill-opacity:1;fill-rule:nonzero;stroke:#42770c;stroke-width:0.95597649;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+           d="M -73.881889,-4.6293179 C -74.389631,-4.8067199 -74.968019,-4.6757149 -75.352541,-4.2504169 L -91.734788,13.86571 L -97.664774,6.2884221 C -98.231838,5.7757261 -99.100737,5.8101851 -99.613436,6.3772491 L -103.90755,9.8077721 C -104.42024,10.374832 -104.37524,11.245996 -103.80818,11.75869 C -103.80818,11.75869 -93.079342,26.005593 -93.064798,26.017716 C -92.931895,26.137881 -92.782055,26.218205 -92.624431,26.277658 C -92.109522,26.471875 -91.506409,26.352506 -91.113876,25.918351 L -69.020292,1.4865271 C -68.507598,0.91946515 -68.552594,0.048303155 -69.11966,-0.46439283 L -73.40162,-4.3497839 C -73.543388,-4.4779589 -73.712642,-4.5701849 -73.881889,-4.6293179 z"
+           id="path1542"
+           sodipodi:nodetypes="cccccccssccccc" />
+        <path
+           style="opacity:0.4;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7954);stroke-width:0.95597649;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+           d="M -74.978545,-3.2016699 L -83.289347,6.0212271 L -90.672863,14.143297 C -90.879108,14.271935 -90.955853,14.816814 -91.724224,14.828343 C -92.255838,14.83632 -92.301842,14.628226 -92.748497,14.162478 L -97.987967,7.5093115 C -98.568531,6.7592215 -98.553829,6.7944924 -99.185739,7.1858061 L -102.56429,9.8385081 C -103.44236,10.41927 -103.44231,10.897191 -102.70467,11.663785 C -102.70467,11.663785 -92.945374,24.597046 -92.931619,24.608516 C -92.805911,24.722171 -92.8741,24.734491 -92.355719,25.314704 C -92.023194,25.686891 -91.460716,24.892021 -91.091836,24.484045 L -69.849981,1.0476071 C -69.36818,0.51473817 -69.395599,0.51691517 -69.931971,0.031992155 L -73.780932,-3.3612149 C -74.334112,-3.8587709 -74.338372,-3.8556239 -74.978545,-3.2016699 z"
+           id="path1544"
+           sodipodi:nodetypes="cccscccccssccccc" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/dialog-error.svg b/icons/PyHoca/scalable/dialog-error.svg
new file mode 100644
index 0000000..74b4a17
--- /dev/null
+++ b/icons/PyHoca/scalable/dialog-error.svg
@@ -0,0 +1,178 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7187"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7189">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4873">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4875" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4877" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4873"
+       id="linearGradient2704"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.3440063,0,0,2.3440063,-121.79862,31.22942)"
+       x1="62.745731"
+       y1="-13.444987"
+       x2="62.608765"
+       y2="7.1072145" />
+    <linearGradient
+       id="linearGradient3811">
+      <stop
+         id="stop3813"
+         offset="0"
+         style="stop-color:#a40000;stop-opacity:1" />
+      <stop
+         id="stop3815"
+         offset="1"
+         style="stop-color:#c22f2f;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3811"
+       id="linearGradient3927"
+       x1="15.046636"
+       y1="44.787998"
+       x2="15.046636"
+       y2="3.8851264"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0805272,0,0,1.0805026,-1.508285,-3.3507596)" />
+    <linearGradient
+       id="linearGradient5106">
+      <stop
+         style="stop-color:#e78181;stop-opacity:1"
+         offset="0"
+         id="stop5108" />
+      <stop
+         id="stop8208"
+         offset="0.25288007"
+         style="stop-color:#e15f5f;stop-opacity:1" />
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0.68271071"
+         id="stop8210" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop5110" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5106"
+       id="radialGradient2707"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-7.565785,-6.219707e-7,3.9644633e-7,-4.8230546,494.60904,-26.555114)"
+       cx="62.202274"
+       cy="-5.7132163"
+       fx="62.202274"
+       fy="-5.7132163"
+       r="9.7552835" />
+    <linearGradient
+       id="linearGradient10691"
+       inkscape:collect="always">
+      <stop
+         id="stop10693"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" />
+      <stop
+         id="stop10695"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient10691"
+       id="radialGradient3080"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.902215,0.525703)"
+       cx="6.702713"
+       cy="73.615715"
+       fx="6.702713"
+       fy="73.615715"
+       r="7.228416" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="690"
+     inkscape:window-x="0"
+     inkscape:window-y="331" />
+  <metadata
+     id="metadata7192">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       transform="matrix(1.6,0,0,1.8421053,3.6,-30.289477)"
+       d="M 26.5,38.700001 A 13.75,3.8 0 1 1 -1,38.700001 A 13.75,3.8 0 1 1 26.5,38.700001 z"
+       sodipodi:ry="3.8"
+       sodipodi:rx="13.75"
+       sodipodi:cy="38.700001"
+       sodipodi:cx="12.75"
+       id="path2625"
+       style="opacity:0.5;fill:url(#radialGradient3080);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       sodipodi:type="arc" />
+    <path
+       style="fill:url(#radialGradient2707);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient3927);stroke-width:1.00004065;stroke-miterlimit:4;stroke-dasharray:none"
+       d="M 45.499979,22.999239 C 45.499979,34.87373 35.873401,44.49998 24.000271,44.49998 C 12.126053,44.49998 2.500021,34.873621 2.500021,22.999239 C 2.500021,11.12529 12.126053,1.5000204 24.000271,1.5000204 C 35.873401,1.5000204 45.499979,11.12529 45.499979,22.999239 L 45.499979,22.999239 z"
+       id="path6495" />
+    <path
+       id="path8655"
+       d="M 44.49904,22.999272 C 44.49904,34.321462 35.320423,43.499975 23.999791,43.499975 C 12.678124,43.499975 3.500025,34.321356 3.500025,22.999272 C 3.500025,11.677606 12.678124,2.5000254 23.999791,2.5000254 C 35.320423,2.5000254 44.49904,11.677606 44.49904,22.999272 L 44.49904,22.999272 z"
+       style="opacity:0.6;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient2704);stroke-width:1.00004995;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       style="font-size:89.63063812px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.15;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.7688275;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Georgia"
+       id="path2975"
+       d="M 9.9999996,24 C 19.333334,24 28.666667,24 38,24 C 38,22.333334 38,20.666667 38,19 C 28.666667,19 19.333334,19 9.9999996,19 C 9.9999996,20.666667 9.9999996,22.333334 9.9999996,24 z" />
+    <path
+       style="font-size:89.63063812px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.7688275;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Georgia"
+       id="path3360"
+       d="M 9.9999996,26 C 19.333334,26 28.666667,26 38,26 C 38,24.000001 38,22 38,20 C 28.666667,20 19.333334,20 9.9999996,20 C 9.9999996,22 9.9999996,24.000001 9.9999996,26 z" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/dialog-question.svg b/icons/PyHoca/scalable/dialog-question.svg
new file mode 100644
index 0000000..50123ac
--- /dev/null
+++ b/icons/PyHoca/scalable/dialog-question.svg
@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7220"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="dialog-question.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7222">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4873">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4875" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4877" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4873"
+       id="linearGradient2704"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.3440063,0,0,2.3440063,-121.79862,31.22942)"
+       x1="62.745731"
+       y1="-13.444987"
+       x2="62.608765"
+       y2="7.1072145" />
+    <linearGradient
+       id="linearGradient3811">
+      <stop
+         id="stop3813"
+         offset="0"
+         style="stop-color:#204a87;stop-opacity:1" />
+      <stop
+         id="stop3815"
+         offset="1"
+         style="stop-color:#3465a4;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3811"
+       id="linearGradient3927"
+       x1="15.046636"
+       y1="44.787998"
+       x2="15.046636"
+       y2="3.8851264"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0805272,0,0,1.0805026,-1.5082857,-3.3507604)" />
+    <linearGradient
+       id="linearGradient5106">
+      <stop
+         style="stop-color:#8fb3d9;stop-opacity:1"
+         offset="0"
+         id="stop5108" />
+      <stop
+         id="stop8208"
+         offset="0.25288007"
+         style="stop-color:#729fcf;stop-opacity:1" />
+      <stop
+         style="stop-color:#3465a4;stop-opacity:1"
+         offset="0.68271071"
+         id="stop8210" />
+      <stop
+         style="stop-color:#204a87;stop-opacity:1"
+         offset="1"
+         id="stop5110" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5106"
+       id="radialGradient2707"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-7.565785,-6.219707e-7,3.9644633e-7,-4.8230546,494.60904,-26.555114)"
+       cx="62.202274"
+       cy="-5.7132163"
+       fx="62.202274"
+       fy="-5.7132163"
+       r="9.7552835" />
+    <linearGradient
+       id="linearGradient10691"
+       inkscape:collect="always">
+      <stop
+         id="stop10693"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" />
+      <stop
+         id="stop10695"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient10691"
+       id="radialGradient3080"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.902215,0.525703)"
+       cx="6.702713"
+       cy="73.615715"
+       fx="6.702713"
+       fy="73.615715"
+       r="7.228416" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="1680"
+     inkscape:window-height="1000"
+     inkscape:window-x="0"
+     inkscape:window-y="25" />
+  <metadata
+     id="metadata7225">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       transform="matrix(1.6,0,0,1.8421053,3.6000003,-30.289476)"
+       d="M 26.5,38.700001 A 13.75,3.8 0 1 1 -1,38.700001 A 13.75,3.8 0 1 1 26.5,38.700001 z"
+       sodipodi:ry="3.8"
+       sodipodi:rx="13.75"
+       sodipodi:cy="38.700001"
+       sodipodi:cx="12.75"
+       id="path2625"
+       style="opacity:0.5;fill:url(#radialGradient3080);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.80000001;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       sodipodi:type="arc" />
+    <path
+       style="fill:url(#radialGradient2707);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient3927);stroke-width:1.00004065;stroke-miterlimit:4;stroke-dasharray:none"
+       d="M 45.499979,22.999239 C 45.499979,34.87373 35.873401,44.49998 24.000271,44.49998 C 12.126053,44.49998 2.5000203,34.873621 2.5000203,22.999239 C 2.5000203,11.12529 12.126053,1.5000193 24.000271,1.5000193 C 35.873401,1.5000193 45.499979,11.12529 45.499979,22.999239 L 45.499979,22.999239 z"
+       id="path6495" />
+    <path
+       id="path8655"
+       d="M 44.49904,22.999272 C 44.49904,34.321462 35.320423,43.499975 23.999791,43.499975 C 12.678124,43.499975 3.5000253,34.321356 3.5000253,22.999272 C 3.5000253,11.677606 12.678124,2.5000243 23.999791,2.5000243 C 35.320423,2.5000243 44.49904,11.677606 44.49904,22.999272 L 44.49904,22.999272 z"
+       style="opacity:0.6;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient2704);stroke-width:1.00004995;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       id="path9053"
+       style="font-size:72px;font-style:normal;font-weight:bold;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Standard Symbols L"
+       d="M 25.499549,29.000001 C 25.500288,27.000001 24.999549,24.022899 27.499549,22.000001 C 29.987045,20.009725 32.016392,18.017155 31.999549,15.000001 C 32.036328,12.012312 28.999549,10.023333 25.999549,9.7499987 C 22.008774,9.4823727 17.999549,10.031438 15.999549,14.000001 C 15.707504,15.711192 15.898252,18.000001 17.999549,18.000001 C 18.983603,18.000001 19.999549,17.038081 19.999549,16.000001 L 19.999549,15.000001 C 19.999549,14.500001 20.028884,14.041648 20.999549,13.500001 C 22.019064,12.931095 22.407751,13.018029 22.499549,13.000001 C 24.999549,12.506705 26.748239,12.989752 27.499549,14.000001 C 29.001034,16.018972 27.981707,17.013135 25.999549,19.500001 C 24.029691,21.971435 22.499549,24.000001 22.499549,27.000001 L 22.499549,29.000001 L 25.499549,29.000001 z"
+       sodipodi:nodetypes="cccccsssssssscc" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       id="path8287"
+       sodipodi:cx="18.4417"
+       sodipodi:cy="34.547359"
+       sodipodi:rx="2.2272584"
+       sodipodi:ry="2.4054391"
+       d="M 20.668958,34.547359 A 2.2272584,2.4054391 0 1 1 16.214442,34.547359 A 2.2272584,2.4054391 0 1 1 20.668958,34.547359 z"
+       transform="matrix(0.8979649,0,0,0.831449,7.4395493,5.2756317)" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/dialog-warning.svg b/icons/PyHoca/scalable/dialog-warning.svg
new file mode 100644
index 0000000..1f093b5
--- /dev/null
+++ b/icons/PyHoca/scalable/dialog-warning.svg
@@ -0,0 +1,221 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7299"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="dialog-warning.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7301">
+    <filter
+       inkscape:collect="always"
+       id="filter11277"
+       x="-0.02834265"
+       width="1.0566853"
+       y="-0.4156922"
+       height="1.8313844">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.51961525"
+         id="feGaussianBlur11279" />
+    </filter>
+    <filter
+       inkscape:collect="always"
+       id="filter11267"
+       x="-0.08502795"
+       width="1.1700559"
+       y="-1.2470766"
+       height="3.4941532">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="1.5588457"
+         id="feGaussianBlur11269" />
+    </filter>
+    <linearGradient
+       y2="56.052299"
+       x2="47.319698"
+       y1="11.1133"
+       x1="4.1914001"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient11223">
+      <stop
+         id="stop11225"
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0" />
+      <stop
+         id="stop11227"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient11223"
+       id="linearGradient11177"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.646153,0,-2.812685e-3,0.671002,2.320937,4.636421)"
+       x1="22.858232"
+       y1="27.427332"
+       x2="23.075396"
+       y2="77.315834" />
+    <linearGradient
+       id="linearGradient5252">
+      <stop
+         id="stop5256"
+         offset="0"
+         style="stop-color:#fed496;stop-opacity:1;" />
+      <stop
+         id="stop5254"
+         offset="1"
+         style="stop-color:#fcaf3e;stop-opacity:1;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5252"
+       id="radialGradient11221"
+       cx="21.080828"
+       cy="27.925562"
+       fx="21.080828"
+       fy="27.925562"
+       r="8.803154"
+       gradientTransform="matrix(2.794628,0,0,2.6342217,-37.832243,-46.946604)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5402">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5404" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5406" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5402"
+       id="radialGradient11181"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.5111798,0,0,0.4916103,-18.445765,-11.688203)"
+       cx="79.377068"
+       cy="44.534161"
+       fx="79.377068"
+       fy="44.534161"
+       r="50.66839" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24.055179"
+     inkscape:cy="24.019671"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="1037"
+     inkscape:window-y="333" />
+  <metadata
+     id="metadata7304">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <rect
+       style="opacity:0.3;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;filter:url(#filter11277);enable-background:new"
+       id="rect11271"
+       width="44"
+       height="3"
+       x="298"
+       y="91"
+       rx="3.25"
+       ry="1.5"
+       transform="matrix(1,0,0,1.3333333,-296,-80.833333)" />
+    <rect
+       style="opacity:0.5;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;filter:url(#filter11267);enable-background:new"
+       id="rect11249"
+       width="44"
+       height="3"
+       x="298"
+       y="91"
+       rx="3.25"
+       ry="1.5"
+       transform="matrix(1,0,0,1.5833333,-296,-103.95833)" />
+    <g
+       style="display:inline;enable-background:new"
+       transform="matrix(1.566667,0,0,1.566667,-8.914935,-24.83992)"
+       id="g11137">
+      <g
+         style="display:inline"
+         transform="matrix(1.508284e-2,0,0,1.391344e-2,34.42474,40.95434)"
+         id="g11139" />
+      <g
+         id="g11147"
+         transform="matrix(1.508284e-2,0,0,1.391344e-2,34.42474,40.95434)"
+         style="display:inline" />
+      <path
+         style="fill:#f57900;fill-opacity:1;fill-rule:nonzero;stroke:#ce5c00;stroke-width:0.63829809;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         d="M 34.661531,40.883147 L 22.706683,18.443515 C 22.363065,17.820192 21.741298,17.473902 21.048838,17.473902 C 20.356376,17.473902 19.731421,17.889449 19.382581,18.512773 L 7.5167568,40.952406 C 7.2374515,41.506471 7.2342608,42.26831 7.5781714,42.822375 C 7.9220807,43.37644 8.4748902,43.653472 9.167352,43.653472 L 32.988021,43.653472 C 33.680481,43.653472 34.305147,43.307182 34.584454,42.753116 C 34.933004,42.199051 34.935904,41.506471 34.661531,40.883147 z"
+         id="path11155"
+         inkscape:r_cx="true"
+         inkscape:r_cy="true" />
+      <path
+         inkscape:r_cy="true"
+         inkscape:r_cx="true"
+         id="path11157"
+         d="M 12.350235,39.643509 C 12.169549,39.94119 12.347947,40.179336 12.646973,40.179336 L 29.512056,40.179336 C 29.811084,40.179336 29.991516,39.94119 29.813372,39.643509 L 21.328843,23.806857 C 21.150698,23.509176 20.911478,23.509176 20.790595,23.806857 L 12.350235,39.643509 z"
+         style="fill:url(#radialGradient11221);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-miterlimit:4" />
+      <path
+         style="opacity:0.5;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient11177);stroke-width:0.63829821;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         d="M 33.589554,40.372476 L 22.40647,19.408588 C 21.930192,18.505487 21.759362,18.215736 21.035555,18.215736 C 20.413025,18.215736 20.087298,18.63772 19.637426,19.490174 L 8.5784665,40.437181 C 7.9362948,41.613232 7.8674918,41.919785 8.176589,42.437412 C 8.4856845,42.95504 8.8825484,42.926847 10.348923,42.960612 L 32.084644,42.960612 C 33.449812,42.977494 33.757327,42.873453 34.008507,42.355827 C 34.32194,41.838198 34.188623,41.427523 33.589554,40.372476 z"
+         id="path11159"
+         sodipodi:nodetypes="ccsccscccc"
+         inkscape:r_cx="true"
+         inkscape:r_cy="true" />
+      <g
+         style="fill:#121312;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.98018837;stroke-miterlimit:4"
+         transform="matrix(0.561759,0,0,0.570854,7.608308,17.60115)"
+         id="g11161"
+         inkscape:r_cx="true"
+         inkscape:r_cy="true">
+        <path
+           style="fill:#121312;fill-opacity:1;stroke:none"
+           d="M 23.9,36.5 C 22.6,36.5 21.6,35.5 21.6,34.2 C 21.6,32.8 22.5,31.9 23.9,31.9 C 25.3,31.9 26.1,32.8 26.2,34.2 C 26.2,35.5 25.3,36.5 23.9,36.5 L 23.9,36.5 z M 23.167629,29.066754 L 21.9,19.1 L 25.9,19.1 L 24.632371,30.709518 L 23.167629,29.066754 z"
+           id="path11163"
+           inkscape:r_cx="true"
+           inkscape:r_cy="true"
+           sodipodi:nodetypes="csscccccccc" />
+      </g>
+    </g>
+    <path
+       id="path11179"
+       d="M 23.982235,3.0642796 C 22.983955,3.0642796 22.084515,3.6634646 21.581625,4.5632536 L 6.9499354,32.262453 L 37.310435,25.017218 L 26.371965,4.4600786 C 25.876595,3.5602906 24.980525,3.0642796 23.982235,3.0642796 z"
+       style="opacity:0.47126435;fill:url(#radialGradient11181);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.63829809;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;enable-background:new" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/document-save.svg b/icons/PyHoca/scalable/document-save.svg
new file mode 100644
index 0000000..c53130d
--- /dev/null
+++ b/icons/PyHoca/scalable/document-save.svg
@@ -0,0 +1,920 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.0"
+   width="48"
+   height="48"
+   id="svg7836"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="document-save.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <metadata
+     id="metadata137">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <sodipodi:namedview
+     inkscape:window-height="1000"
+     inkscape:window-width="1680"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10.0"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="true"
+     inkscape:zoom="10.291667"
+     inkscape:cx="33.986371"
+     inkscape:cy="14.425604"
+     inkscape:window-x="0"
+     inkscape:window-y="25"
+     inkscape:current-layer="svg7836">
+    <inkscape:grid
+       type="xygrid"
+       id="grid9762" />
+  </sodipodi:namedview>
+  <defs
+     id="defs7838">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3911">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3913" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3915" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3911"
+       id="linearGradient3917"
+       x1="436.22424"
+       y1="69.261185"
+       x2="443.29364"
+       y2="62.392006"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient8660">
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0"
+         id="stop8662" />
+      <stop
+         style="stop-color:#da3f3f;stop-opacity:1"
+         offset="1"
+         id="stop8664" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient8660"
+       id="linearGradient3892"
+       gradientUnits="userSpaceOnUse"
+       x1="404.01727"
+       y1="197.6288"
+       x2="404.01727"
+       y2="185.93324"
+       gradientTransform="matrix(1.2796712,0,0,1.2692354,-77.48715,-173.86623)" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3956">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3958" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3960" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3956"
+       id="radialGradient3901"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.352381,0,93.783333)"
+       cx="378.9375"
+       cy="144.8125"
+       fx="378.9375"
+       fy="144.8125"
+       r="6.5625" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5060"
+       id="radialGradient8272"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-2.774389,0,0,1.969706,112.7623,-872.8854)"
+       cx="605.71429"
+       cy="486.64789"
+       fx="605.71429"
+       fy="486.64789"
+       r="117.14286" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5060">
+      <stop
+         style="stop-color:black;stop-opacity:1;"
+         offset="0"
+         id="stop5062" />
+      <stop
+         style="stop-color:black;stop-opacity:0;"
+         offset="1"
+         id="stop5064" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5060"
+       id="radialGradient8270"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.774389,0,0,1.969706,-1891.633,-872.8854)"
+       cx="605.71429"
+       cy="486.64789"
+       fx="605.71429"
+       fy="486.64789"
+       r="117.14286" />
+    <linearGradient
+       id="linearGradient5048">
+      <stop
+         style="stop-color:black;stop-opacity:0;"
+         offset="0"
+         id="stop5050" />
+      <stop
+         id="stop5056"
+         offset="0.5"
+         style="stop-color:black;stop-opacity:1;" />
+      <stop
+         style="stop-color:black;stop-opacity:0;"
+         offset="1"
+         id="stop5052" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5048"
+       id="linearGradient8268"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.774389,0,0,1.969706,-1892.179,-872.8854)"
+       x1="302.85715"
+       y1="366.64789"
+       x2="302.85715"
+       y2="609.50507" />
+    <linearGradient
+       id="linearGradient9111">
+      <stop
+         id="stop9113"
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop9115"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="320.01709"
+       y1="79.980797"
+       x2="320.01709"
+       y2="74.42086"
+       id="linearGradient4045"
+       xlink:href="#linearGradient9111"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-0.3124939,13.883653)" />
+    <linearGradient
+       id="linearGradient9101">
+      <stop
+         id="stop9103"
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop9105"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="115.948"
+       y1="186.81287"
+       x2="210.23586"
+       y2="85.606262"
+       id="linearGradient4048"
+       xlink:href="#linearGradient9101"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1964069,0,0,0.1964069,291.11029,53.069992)" />
+    <radialGradient
+       cx="113.0654"
+       cy="97.587898"
+       r="2.5631001"
+       fx="113.667"
+       fy="98"
+       id="radialGradient4128"
+       xlink:href="#XMLID_64_"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.4956521,0,0,2.4956521,-223.97574,-53.226089)" />
+    <linearGradient
+       x1="113.0654"
+       y1="100.6621"
+       x2="113.0654"
+       y2="94.512703"
+       id="linearGradient4126"
+       xlink:href="#XMLID_63_"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.4956521,0,0,2.4956521,-223.97574,-53.226089)" />
+    <radialGradient
+       cx="127.31733"
+       cy="143.82751"
+       r="78.728165"
+       fx="127.31733"
+       fy="143.82751"
+       id="radialGradient4057"
+       xlink:href="#linearGradient7609"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1691796,-2.118677e-2,7.64681e-3,6.311337e-2,291.54812,67.154866)" />
+    <radialGradient
+       cx="230"
+       cy="133"
+       r="16.5"
+       fx="230"
+       fy="133"
+       id="radialGradient4060"
+       xlink:href="#linearGradient7665"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-0.1964069,0,0,0.4901248,348.1398,14.167053)" />
+    <linearGradient
+       id="linearGradient7665">
+      <stop
+         id="stop7667"
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop7669"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <radialGradient
+       cx="230"
+       cy="133"
+       r="16.5"
+       fx="230"
+       fy="133"
+       id="radialGradient4063"
+       xlink:href="#linearGradient7665"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1964069,0,0,0.4901248,290.75046,14.167053)" />
+    <filter
+       height="1.4934545"
+       y="-0.24672721"
+       width="1.2185298"
+       x="-0.10926491"
+       id="filter7557">
+      <feGaussianBlur
+         id="feGaussianBlur7559"
+         stdDeviation="3.1868932"
+         inkscape:collect="always" />
+    </filter>
+    <linearGradient
+       id="linearGradient7537">
+      <stop
+         id="stop7539"
+         style="stop-color:#ffffff;stop-opacity:0.24752475"
+         offset="0" />
+      <stop
+         id="stop7561"
+         style="stop-color:#ffffff;stop-opacity:0.61176473"
+         offset="0.38571429" />
+      <stop
+         id="stop7541"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="152"
+       y1="202.5"
+       x2="222"
+       y2="202.5"
+       id="linearGradient4100"
+       xlink:href="#linearGradient7537"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient4144">
+      <stop
+         id="stop4146"
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop4148"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="305.02817"
+       y1="76.907806"
+       x2="302.04178"
+       y2="76.907806"
+       id="linearGradient7755"
+       xlink:href="#linearGradient4144"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.7481482,0,0,1,76.821909,0)" />
+    <linearGradient
+       id="linearGradient7691">
+      <stop
+         id="stop7693"
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop7695"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <radialGradient
+       cx="85.750008"
+       cy="214.08336"
+       r="14"
+       fx="85.750008"
+       fy="214.08336"
+       id="radialGradient7753"
+       xlink:href="#linearGradient7691"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.2665522,9.092593e-2,-2.342877e-2,7.099072e-2,291.11104,54.883977)" />
+    <linearGradient
+       id="linearGradient4236">
+      <stop
+         id="stop4238"
+         style="stop-color:#eeeeee;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop4240"
+         style="stop-color:#eeeeee;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="12.277412"
+       y1="37.205811"
+       x2="12.221823"
+       y2="33.758667"
+       id="linearGradient7751"
+       xlink:href="#linearGradient4236"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(5.0962816,0,0,5.0962816,21.323205,37.043678)" />
+    <linearGradient
+       id="linearGradient4110">
+      <stop
+         id="stop4112"
+         style="stop-color:#000000;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop4114"
+         style="stop-color:#bbbbbb;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="7.0625"
+       y1="35.28125"
+       x2="24.6875"
+       y2="35.28125"
+       id="linearGradient7749"
+       xlink:href="#linearGradient4110"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(5.0962816,0,0,5.0962816,25.377261,30.286921)" />
+    <filter
+       height="1.0836165"
+       y="-0.041808251"
+       width="1.8027184"
+       x="-0.40135923"
+       id="filter7527">
+      <feGaussianBlur
+         id="feGaussianBlur7529"
+         stdDeviation="0.52260316"
+         inkscape:collect="always" />
+    </filter>
+    <radialGradient
+       cx="43.5625"
+       cy="202.25"
+       r="1.5625"
+       fx="43.5625"
+       fy="202.25"
+       id="radialGradient4102"
+       xlink:href="#linearGradient7507"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(3.16,0,0,11.28,-94.095,-2079.13)" />
+    <filter
+       height="1.0837955"
+       y="-0.041897796"
+       width="1.8044378"
+       x="-0.40221885"
+       id="filter4116">
+      <feGaussianBlur
+         id="feGaussianBlur4118"
+         stdDeviation="0.52372246"
+         inkscape:collect="always" />
+    </filter>
+    <linearGradient
+       id="linearGradient7507">
+      <stop
+         id="stop7509"
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop7511"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <radialGradient
+       cx="43.5625"
+       cy="202.25"
+       r="1.5625"
+       fx="43.5625"
+       fy="202.25"
+       id="radialGradient4104"
+       xlink:href="#linearGradient7507"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(3.16,0,0,11.28,-94.095,-2079.13)" />
+    <radialGradient
+       cx="113.0654"
+       cy="97.587898"
+       r="2.5631001"
+       fx="113.667"
+       fy="98"
+       id="radialGradient4132"
+       xlink:href="#XMLID_64_"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.4956521,0,0,2.4956521,-223.97574,-53.226089)" />
+    <linearGradient
+       x1="113.0654"
+       y1="100.6621"
+       x2="113.0654"
+       y2="94.512703"
+       id="linearGradient4130"
+       xlink:href="#XMLID_63_"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.4956521,0,0,2.4956521,-223.97574,-53.226089)" />
+    <radialGradient
+       cx="113.0654"
+       cy="97.587898"
+       r="2.5631001"
+       fx="113.667"
+       fy="98"
+       id="radialGradient4136"
+       xlink:href="#XMLID_64_"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.4956521,0,0,2.4956521,-223.97574,-53.226089)" />
+    <linearGradient
+       x1="113.0654"
+       y1="100.6621"
+       x2="113.0654"
+       y2="94.512703"
+       id="linearGradient4134"
+       xlink:href="#XMLID_63_"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.4956521,0,0,2.4956521,-223.97574,-53.226089)" />
+    <radialGradient
+       cx="113.0654"
+       cy="97.587898"
+       r="2.5631001"
+       fx="113.667"
+       fy="98"
+       id="XMLID_64_"
+       gradientUnits="userSpaceOnUse">
+      <stop
+         id="stop505"
+         style="stop-color:#eeeeee;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop507"
+         style="stop-color:#cecece;stop-opacity:1"
+         offset="0.16" />
+      <stop
+         id="stop509"
+         style="stop-color:#888888;stop-opacity:1"
+         offset="0.4675" />
+      <stop
+         id="stop511"
+         style="stop-color:#555555;stop-opacity:1"
+         offset="1" />
+    </radialGradient>
+    <radialGradient
+       cx="113.0654"
+       cy="97.587898"
+       r="2.5631001"
+       fx="113.667"
+       fy="98"
+       id="radialGradient4140"
+       xlink:href="#XMLID_64_"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.4956521,0,0,2.4956521,-223.97574,-53.226089)" />
+    <linearGradient
+       x1="113.0654"
+       y1="100.6621"
+       x2="113.0654"
+       y2="94.512703"
+       id="XMLID_63_"
+       gradientUnits="userSpaceOnUse">
+      <stop
+         id="stop496"
+         style="stop-color:#eeeeee;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop498"
+         style="stop-color:#dddddd;stop-opacity:1"
+         offset="0.66860002" />
+      <stop
+         id="stop500"
+         style="stop-color:#555555;stop-opacity:1"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="113.0654"
+       y1="100.6621"
+       x2="113.0654"
+       y2="94.512703"
+       id="linearGradient4138"
+       xlink:href="#XMLID_63_"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.4956521,0,0,2.4956521,-223.97574,-53.226089)" />
+    <radialGradient
+       cx="142.62215"
+       cy="191.85428"
+       r="78.728165"
+       fx="142.62215"
+       fy="191.85428"
+       id="radialGradient4078"
+       xlink:href="#linearGradient7609"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.155354,0,0,-9.045696e-2,296.87519,93.678924)" />
+    <linearGradient
+       id="linearGradient7609">
+      <stop
+         id="stop7611"
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop7677"
+         style="stop-color:#e7e7e7;stop-opacity:1"
+         offset="0.47025558" />
+      <stop
+         id="stop7613"
+         style="stop-color:#8c8c8c;stop-opacity:1"
+         offset="0.67183787" />
+      <stop
+         id="stop7617"
+         style="stop-color:#dddddd;stop-opacity:1"
+         offset="0.83542866" />
+      <stop
+         id="stop7615"
+         style="stop-color:#a8a8a8;stop-opacity:1"
+         offset="1" />
+    </linearGradient>
+    <radialGradient
+       cx="141.74666"
+       cy="206.42612"
+       r="78.728165"
+       fx="141.74666"
+       fy="206.42612"
+       id="radialGradient4081"
+       xlink:href="#linearGradient7609"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.3079313,-3.68762e-3,2.27901e-3,0.2121779,275.0745,43.487346)" />
+    <linearGradient
+       id="linearGradient10652">
+      <stop
+         id="stop10654"
+         style="stop-color:#535353;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop10656"
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="317.625"
+       y1="72.5"
+       x2="312.125"
+       y2="55.25"
+       id="linearGradient10658"
+       xlink:href="#linearGradient10652"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(0,16)" />
+    <linearGradient
+       id="linearGradient7497">
+      <stop
+         id="stop7499"
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop7501"
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1" />
+    </linearGradient>
+    <radialGradient
+       cx="150.17931"
+       cy="301.80243"
+       r="106.18474"
+       fx="150.17931"
+       fy="301.80243"
+       id="radialGradient4089"
+       xlink:href="#linearGradient7497"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1949405,2.435491e-2,-1.29477e-2,0.1071189,295.23816,53.829929)" />
+    <linearGradient
+       id="linearGradient4244">
+      <stop
+         id="stop4246"
+         style="stop-color:#efefef;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop7563"
+         style="stop-color:#bcbcbc;stop-opacity:1"
+         offset="0.69516969" />
+      <stop
+         id="stop4248"
+         style="stop-color:#e4e4e4;stop-opacity:1"
+         offset="1" />
+    </linearGradient>
+    <radialGradient
+       cx="15.571491"
+       cy="2.958519"
+       r="20.935818"
+       fx="15.571491"
+       fy="2.958519"
+       id="radialGradient4092"
+       xlink:href="#linearGradient4244"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.2874573,0.7785045,-0.7114536,1.164774,292.94174,56.71277)" />
+    <linearGradient
+       id="linearGradient4120">
+      <stop
+         id="stop4122"
+         style="stop-color:#555753;stop-opacity:1"
+         offset="0" />
+      <stop
+         id="stop4124"
+         style="stop-color:#2e3436;stop-opacity:1"
+         offset="1" />
+    </linearGradient>
+    <linearGradient
+       x1="8.4787941"
+       y1="30.712189"
+       x2="36.183067"
+       y2="40.943935"
+       id="linearGradient4095"
+       xlink:href="#linearGradient4120"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0009449,0,0,0.560284,295.29831,72.625339)" />
+  </defs>
+  <g
+     style="opacity:1;display:inline"
+     id="g5022"
+     transform="matrix(2.3640267e-2,0,0,1.5678661e-2,45.026494,35.862725)">
+    <rect
+       y="-150.69685"
+       x="-1559.2523"
+       height="478.35718"
+       width="1339.6335"
+       id="rect4173"
+       style="opacity:0.40206185;fill:url(#linearGradient8268);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+    <path
+       sodipodi:nodetypes="cccc"
+       id="path5058"
+       d="M -219.61876,-150.68038 C -219.61876,-150.68038 -219.61876,327.65041 -219.61876,327.65041 C -76.744594,328.55086 125.78146,220.48075 125.78138,88.454235 C 125.78138,-43.572302 -33.655436,-150.68036 -219.61876,-150.68038 z"
+       style="opacity:0.40206185;fill:url(#radialGradient8270);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+    <path
+       style="opacity:0.40206185;fill:url(#radialGradient8272);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M -1559.2523,-150.68038 C -1559.2523,-150.68038 -1559.2523,327.65041 -1559.2523,327.65041 C -1702.1265,328.55086 -1904.6525,220.48075 -1904.6525,88.454235 C -1904.6525,-43.572302 -1745.2157,-150.68036 -1559.2523,-150.68038 z"
+       id="path5018"
+       sodipodi:nodetypes="cccc" />
+  </g>
+  <g
+     id="layer1">
+    <g
+       transform="translate(-296.00011,-55.999737)"
+       id="g2923"
+       style="display:inline;enable-background:new">
+      <g
+         transform="matrix(0.1964069,0,0,0.1996805,302.8947,50.396787)"
+         id="g8979"
+         style="opacity:0.8960396" />
+      <path
+         d="M 298.575,87.751222 L 299.34032,87.363385 L 336.98555,87.398405 L 340.45123,87.576183 L 340.45123,93.424725 C 340.45123,94.055362 339.84364,94.457513 338.85785,94.457513 L 300.23841,94.457513 C 299.239,94.457513 298.575,94.153811 298.575,93.547239 L 298.575,87.751225 L 298.575,87.751222 z"
+         id="path8985"
+         style="fill:url(#linearGradient4095);fill-opacity:1;fill-rule:evenodd;stroke:none" />
+      <path
+         d="M 298.85075,87.378245 C 298.13579,88.836549 298.85014,89.761327 299.88745,89.761327 C 299.88745,89.761327 338.92429,89.761327 338.92429,89.761327 C 340.0444,89.737617 340.77128,88.753555 340.35421,87.62722 L 333.63358,70.486835 C 333.44889,69.97702 332.9782,69.502773 332.48965,69.490917 L 306.60807,69.490917 C 305.98248,69.490917 305.57138,69.793249 305.32115,70.34456 C 305.32115,70.34456 298.85075,87.378245 298.85075,87.378245 L 298.85075,87.378245 z"
+         id="path8987"
+         style="fill:url(#radialGradient4092);fill-opacity:1;fill-rule:evenodd;stroke:none" />
+      <path
+         d="M 340.1368,86.636171 C 340.2004,87.90818 339.72241,88.992836 338.81344,89.021238 C 338.81344,89.021238 300.6587,89.021236 300.6587,89.021238 C 299.36825,89.021238 298.7892,88.690561 298.57268,88.137878 C 298.66458,89.098856 299.39928,89.81626 300.6587,89.81626 C 300.6587,89.816258 338.81344,89.81626 338.81344,89.81626 C 339.89046,89.78261 340.5679,88.367132 340.16688,86.768675 L 340.13678,86.636171 L 340.1368,86.636171 z"
+         id="path8989"
+         style="fill:url(#radialGradient4089);fill-opacity:1;fill-rule:evenodd;stroke:none" />
+      <path
+         d="M 306.59467,69.5 C 305.96908,69.5 305.56244,69.795295 305.31221,70.358626 C 305.31221,70.358626 298.83735,87.763684 298.83735,87.763684 C 298.83735,87.763684 298.58711,88.44708 298.58711,89.576333 C 298.58711,89.576333 298.58711,92.80376 298.58711,92.80376 C 298.58711,93.905455 299.24552,94.457408 300.24493,94.457406 L 338.84386,94.457406 C 339.82964,94.457406 340.43912,93.726564 340.43912,92.581152 L 340.43912,89.353727 C 340.43912,89.353727 340.54518,88.569724 340.34532,88.018092 L 333.62022,70.517631 C 333.43552,69.996701 332.98271,69.512114 332.49416,69.5 L 306.59471,69.5 L 306.59467,69.5 z"
+         id="path8999"
+         style="fill:none;stroke:url(#linearGradient10658);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <path
+         d="M 334.62368,80.618568 C 334.43304,79.152166 333.15543,77.753895 331.03264,76.65052 C 330.98994,76.226401 330.44582,70.800848 330.44582,70.800848 C 330.40412,70.383771 329.76994,70.068992 328.97012,70.068992 L 323.9508,70.068992 C 323.14523,70.068992 322.52251,70.387911 322.5022,70.81079 C 322.4101,72.7214 319.6016,73.718954 315.41223,74.626423 C 313.94432,74.839517 310.11727,75.841212 309.2389,76.280864 C 306.65322,77.435804 305.11116,78.975518 304.89749,80.618568 C 304.70312,82.11293 305.63737,83.608327 307.52821,84.829329 C 310.29572,86.616516 314.86841,87.68365 319.76041,87.68365 C 324.65242,87.68365 329.2251,86.616516 331.99296,84.829329 C 333.71991,83.714359 334.64873,82.370136 334.64873,81.007072 C 334.64873,80.877638 334.63973,80.748 334.62363,80.618568 L 334.62368,80.618568 z M 319.76041,86.942475 C 311.61261,86.942475 305.37358,83.947747 305.82496,80.476297 C 306.01967,78.97966 307.44897,77.381961 309.8159,76.329116 C 310.25915,76.049132 314.26229,74.960
 044 315.
 69836,74.768692 C 319.67847,73.908442 323.31827,72.79202 323.43238,70.439271 C 323.43738,70.326613 323.6667,70.237358 323.9508,70.237358 L 328.96945,70.237358 C 329.25998,70.237358 329.50514,70.330958 329.51665,70.446519 L 330.12616,76.525024 C 332.23575,77.549496 333.51403,79.078647 333.69553,80.476297 C 334.14724,83.947747 327.90822,86.942475 319.76041,86.942475 L 319.76041,86.942475 z"
+         id="path9001"
+         style="fill:url(#radialGradient4081);fill-opacity:1" />
+      <path
+         d="M 319.6475,81.883652 C 316.82104,81.883652 314.65427,81.006976 314.6086,79.844145 C 314.60824,79.831575 314.60789,79.819215 314.60789,79.806855 C 314.60789,79.386077 314.89188,78.985894 315.43153,78.647059 C 316.34441,78.074315 317.92053,77.732445 319.64785,77.732445 C 321.37482,77.732445 322.95093,78.074315 323.86381,78.647059 C 324.4194,78.99543 324.70411,79.409491 324.68675,79.843927 C 324.64035,81.006758 322.4736,81.88365 319.6475,81.88365 L 319.6475,81.883652 z M 319.6475,78.383019 C 316.99171,78.383019 315.63868,79.25189 315.67055,80.045103 C 315.70135,80.825962 317.4818,81.449868 319.6475,81.449868 C 321.8132,81.449868 323.59363,80.825744 323.62444,80.045103 C 323.65594,79.251672 322.30328,78.383019 319.6475,78.383019 L 319.6475,78.383019 z"
+         id="path9003"
+         style="fill:url(#radialGradient4078);fill-opacity:1;fill-rule:nonzero;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <g
+         transform="matrix(-0.1320251,0,0,0.1401423,309.19335,61.406788)"
+         id="g9005">
+        <path
+           d="M 48.2999,190.27968 C 48.61436,194.52728 53.32365,197.99124 58.81409,197.99124 C 64.30203,197.99124 68.45729,194.52728 68.09043,190.27968 C 67.72606,186.05454 63.01926,182.64298 57.58373,182.64298 C 52.1457,182.64498 47.99044,186.05454 48.2999,190.27968 z"
+           id="path9007"
+           style="fill:url(#linearGradient4138)" />
+        <path
+           d="M 51.85122,187.29238 C 51.34959,187.83144 50.77559,188.69494 50.77559,189.84294 C 50.77559,189.92534 50.78059,190.00765 50.78559,190.095 C 51.00272,193.0224 54.67881,195.49559 58.81161,195.49559 C 61.16501,195.49559 63.31626,194.6845 64.56409,193.32188 C 65.10065,192.74039 65.71209,191.77707 65.60228,190.4943 C 65.35022,187.59186 61.67912,185.13863 57.58125,185.13863 C 55.24532,185.14063 53.10156,185.94473 51.85124,187.29238 L 51.85122,187.29238 z"
+           id="path9009"
+           style="fill:url(#radialGradient4140)" />
+      </g>
+      <g
+         transform="matrix(9.05434e-2,0,0,6.056511e-2,301.91757,58.935593)"
+         id="g9017">
+        <path
+           d="M 48.2999,190.27968 C 48.61436,194.52728 53.32365,197.99124 58.81409,197.99124 C 64.30203,197.99124 68.45729,194.52728 68.09043,190.27968 C 67.72606,186.05454 63.01926,182.64298 57.58373,182.64298 C 52.1457,182.64498 47.99044,186.05454 48.2999,190.27968 z"
+           id="path9019"
+           style="fill:url(#linearGradient4134)" />
+        <path
+           d="M 51.85122,187.29238 C 51.34959,187.83144 50.77559,188.69494 50.77559,189.84294 C 50.77559,189.92534 50.78059,190.00765 50.78559,190.095 C 51.00272,193.0224 54.67881,195.49559 58.81161,195.49559 C 61.16501,195.49559 63.31626,194.6845 64.56409,193.32188 C 65.10065,192.74039 65.71209,191.77707 65.60228,190.4943 C 65.35022,187.59186 61.67912,185.13863 57.58125,185.13863 C 55.24532,185.14063 53.10156,185.94473 51.85124,187.29238 L 51.85122,187.29238 z"
+           id="path9021"
+           style="fill:url(#radialGradient4136)" />
+      </g>
+      <g
+         transform="matrix(9.05434e-2,0,0,6.056511e-2,326.70176,58.935593)"
+         id="g9023">
+        <path
+           d="M 48.2999,190.27968 C 48.61436,194.52728 53.32365,197.99124 58.81409,197.99124 C 64.30203,197.99124 68.45729,194.52728 68.09043,190.27968 C 67.72606,186.05454 63.01926,182.64298 57.58373,182.64298 C 52.1457,182.64498 47.99044,186.05454 48.2999,190.27968 z"
+           id="path9025"
+           style="fill:url(#linearGradient4130)" />
+        <path
+           d="M 51.85122,187.29238 C 51.34959,187.83144 50.77559,188.69494 50.77559,189.84294 C 50.77559,189.92534 50.78059,190.00765 50.78559,190.095 C 51.00272,193.0224 54.67881,195.49559 58.81161,195.49559 C 61.16501,195.49559 63.31626,194.6845 64.56409,193.32188 C 65.10065,192.74039 65.71209,191.77707 65.60228,190.4943 C 65.35022,187.59186 61.67912,185.13863 57.58125,185.13863 C 55.24532,185.14063 53.10156,185.94473 51.85124,187.29238 L 51.85122,187.29238 z"
+           id="path9027"
+           style="fill:url(#radialGradient4132)" />
+      </g>
+      <path
+         d="M 42.5,187.25 L 42,215.5 L 45.125,217.25 L 45.125,187.25 L 42.5,187.25 z"
+         transform="matrix(0.6764069,0,0,0.1996805,270.95029,50.796148)"
+         id="path9029"
+         style="opacity:0.5;fill:url(#radialGradient4104);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.54031181;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4116);enable-background:accumulate" />
+      <path
+         d="M 42.5,187.25 L 42,215.5 L 45.125,217.25 L 45.125,187.25 L 42.5,187.25 z"
+         transform="matrix(-0.1335567,0,0,0.1996805,345.55134,52.796148)"
+         id="path9031"
+         style="fill:url(#radialGradient4102);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.54031181;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter7527);enable-background:accumulate" />
+      <g
+         transform="matrix(1,0,0,0.8675042,0,25.228511)"
+         id="g7741">
+        <g
+           transform="matrix(0.1964069,0,0,0.1996805,293.09232,34.304422)"
+           id="g8991">
+          <rect
+             width="89.82196"
+             height="28.348066"
+             x="61.369766"
+             y="195.91609"
+             id="rect8993"
+             style="fill:url(#linearGradient7749);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.40899992;marker:none;visibility:visible;display:inline;overflow:visible" />
+          <path
+             d="M 61.369759,224.26414 C 61.369759,224.26414 61.369759,203.82049 61.369759,203.82049 C 70.724123,220.02272 103.65101,224.26414 127.30289,224.26414 C 127.30289,224.26414 61.369759,224.26414 61.369759,224.26414 z"
+             id="path8995"
+             style="opacity:0.81142853;fill:url(#linearGradient7751);fill-opacity:1;fill-rule:evenodd;stroke:none" />
+          <path
+             d="M 61.456423,195.98396 L 61.456423,224.17277 L 125.47846,224.17277 L 63.208269,222.42092 L 61.456423,195.98396 L 61.456423,195.98396 z"
+             id="path8997"
+             style="opacity:0.43999999;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+        </g>
+        <path
+           d="M 306.4971,76.431125 C 307.65679,77.6956 309.3344,78.525089 311.99649,78.52777 C 309.48297,78.059464 307.63579,77.365342 306.4971,76.431125 z"
+           id="path9041"
+           style="opacity:0.55445545;fill:url(#radialGradient7753);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+        <rect
+           width="2.2318058"
+           height="5.0602326"
+           x="302.79639"
+           y="73.836319"
+           id="rect4142"
+           style="opacity:0.48936169;fill:url(#linearGradient7755);fill-opacity:1;stroke:none" />
+      </g>
+      <path
+         d="M 161.5,187 L 152,218 L 208,218 L 222,187 L 161.5,187 z"
+         transform="matrix(-0.1964069,0,0,0.1996805,356.31738,50.796148)"
+         id="path9033"
+         style="opacity:0.67821781;fill:url(#linearGradient4100);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.54031181;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter7557);enable-background:accumulate" />
+      <path
+         d="M 332.78153,71.366432 L 339.06655,87.340869"
+         id="path9035"
+         style="opacity:0.8960396;fill:none;stroke:url(#radialGradient4063);stroke-width:0.99999988;stroke-linecap:butt;stroke-linejoin:miter;marker:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         d="M 306.10872,71.366432 L 299.8237,87.340869"
+         id="path9037"
+         style="opacity:0.8960396;fill:none;stroke:url(#radialGradient4060);stroke-width:0.99999988;stroke-linecap:butt;stroke-linejoin:miter;marker:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         d="M 308.1179,70.205932 L 308.0258,70.474252 L 306.65096,74.467862 L 306.41772,75.135543 L 307.09901,74.992023 L 318.68702,72.496017 L 318.72382,72.483537 L 318.75452,72.471057 C 319.36816,72.22151 319.69605,71.717214 319.77338,71.254253 C 319.81208,71.022772 319.80048,70.796101 319.69978,70.586572 C 319.60468,70.388771 319.3571,70.212784 319.09828,70.218411 L 319.09828,70.205931 L 319.05528,70.205931 L 308.39407,70.205931 L 308.11787,70.205931 L 308.1179,70.205932 z M 308.51012,70.452678 L 319.19013,70.452678 C 319.19513,70.486398 319.20713,70.505108 319.19613,70.568876 C 319.16263,70.769596 319.0185,71.487685 318.65641,71.644333 L 307.42399,74.065114 L 308.50977,70.452678 L 308.51012,70.452678 z"
+         id="path9039"
+         style="fill:url(#radialGradient4057);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <g
+         transform="matrix(0.1320251,0,0,0.1401423,329.80012,61.406788)"
+         id="g9089">
+        <path
+           d="M 48.2999,190.27968 C 48.61436,194.52728 53.32365,197.99124 58.81409,197.99124 C 64.30203,197.99124 68.45729,194.52728 68.09043,190.27968 C 67.72606,186.05454 63.01926,182.64298 57.58373,182.64298 C 52.1457,182.64498 47.99044,186.05454 48.2999,190.27968 z"
+           id="path9091"
+           style="fill:url(#linearGradient4126)" />
+        <path
+           d="M 51.85122,187.29238 C 51.34959,187.83144 50.77559,188.69494 50.77559,189.84294 C 50.77559,189.92534 50.78059,190.00765 50.78559,190.095 C 51.00272,193.0224 54.67881,195.49559 58.81161,195.49559 C 61.16501,195.49559 63.31626,194.6845 64.56409,193.32188 C 65.10065,192.74039 65.71209,191.77707 65.60228,190.4943 C 65.35022,187.59186 61.67912,185.13863 57.58125,185.13863 C 55.24532,185.14063 53.10156,185.94473 51.85124,187.29238 L 51.85122,187.29238 z"
+           id="path9093"
+           style="fill:url(#radialGradient4128)" />
+      </g>
+      <path
+         d="M 300.15376,87.041983 C 299.48387,88.400089 300.15318,89.261328 301.12509,89.261328 C 301.12509,89.261328 337.70075,89.261328 337.70075,89.261328 C 338.75023,89.239248 339.43128,88.322797 339.04051,87.273851 L 332.8686,71.311143 C 332.69555,70.836356 332.25454,70.394694 331.79679,70.383652 L 307.297,70.383652 C 306.71085,70.383652 306.32567,70.665212 306.09121,71.178644 C 306.09121,71.178644 300.15376,87.041983 300.15376,87.041983 L 300.15376,87.041983 z"
+         id="path9099"
+         style="fill:none;stroke:url(#linearGradient4048);stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <path
+         d="M 299.68751,87.133654 L 299.68751,92.382453 C 299.68751,93.133753 300.07256,93.354724 300.64984,93.354724 L 338.92199,93.354724 C 339.45232,93.443114 339.76168,92.912783 339.71748,92.426647 L 339.45232,87.521094"
+         id="path9109"
+         style="opacity:0.25;fill:none;stroke:url(#linearGradient4045);stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         d="M 322.61433,70.871152 L 329.90637,70.871152 L 329.90637,71.931812 L 324.64727,71.931812 C 322.14293,73.507421 319.6386,74.153569 317.13427,74.318297 C 319.19125,73.295909 322.66451,73.052478 322.61433,70.871152 L 322.61433,70.871152 z"
+         id="rect9123"
+         style="opacity:0.42079204;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <rect
+         width="12.020816"
+         height="1.0606601"
+         x="307.58829"
+         y="70.871155"
+         id="rect9125"
+         style="opacity:0.31188121;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    </g>
+  </g>
+  <g
+     style="display:inline;enable-background:new"
+     id="g4303"
+     transform="translate(-415.99998,-56.00001)">
+    <path
+       transform="matrix(1.6729902,0,0,1.6775966,-194.95875,-163.81639)"
+       d="M 385.5,144.8125 A 6.5625,2.3125 0 1 1 372.375,144.8125 A 6.5625,2.3125 0 1 1 385.5,144.8125 z"
+       sodipodi:ry="2.3125"
+       sodipodi:rx="6.5625"
+       sodipodi:cy="144.8125"
+       sodipodi:cx="378.9375"
+       id="path3899"
+       style="opacity:0.26086958;fill:url(#radialGradient3901);fill-opacity:1;stroke:none;display:inline;enable-background:new"
+       sodipodi:type="arc" />
+    <path
+       sodipodi:nodetypes="cccccccccc"
+       id="path3843"
+       d="M 436.5176,60.501821 L 436.5176,67.481166 L 429.54472,67.481166 L 429.50472,68.99181 L 439.53999,79.346232 L 449.53949,69.075668 L 449.53949,67.481166 L 442.47821,67.481166 L 442.47821,60.501821 L 436.51759,60.501821 L 436.5176,60.501821 z"
+       style="fill:url(#linearGradient3892);fill-opacity:1;stroke:#a40000;stroke-width:0.99999994;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;enable-background:new" />
+    <path
+       d="M 437.5,61.46875 L 437.5,67.46875 C 437.49995,68.003754 437.06625,68.437447 436.53125,68.4375 L 430.46875,68.4375 L 430.46875,68.625 L 439.53125,77.9375 L 448.5625,68.65625 L 448.5625,68.4375 L 442.46875,68.4375 C 441.93375,68.437447 441.50005,68.003754 441.5,67.46875 L 441.5,61.46875 L 437.5,61.46875 z"
+       id="path3907"
+       style="opacity:0.3;fill:none;stroke:url(#linearGradient3917);stroke-width:0.99999994;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;enable-background:new"
+       inkscape:original="M 436.53125 60.5 L 436.53125 67.46875 L 429.53125 67.46875 L 429.5 69 L 439.53125 79.34375 L 449.53125 69.0625 L 449.53125 67.46875 L 442.46875 67.46875 L 442.46875 60.5 L 436.53125 60.5 z "
+       inkscape:radius="-0.96875"
+       sodipodi:type="inkscape:offset" />
+    <g
+       transform="matrix(1.2796712,0,0,1.2692354,-39.097014,-172.59699)"
+       style="opacity:0.5;display:inline;enable-background:new"
+       id="g3853">
+      <rect
+         y="189.56058"
+         x="366.5762"
+         height="0.78787541"
+         width="5.4701591"
+         id="rect3855"
+         style="opacity:0.3;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new" />
+      <rect
+         y="189.56058"
+         x="375.95361"
+         height="0.78787541"
+         width="5.4701519"
+         id="rect3858"
+         style="opacity:0.3;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new" />
+    </g>
+    <rect
+       y="61.000008"
+       x="437"
+       height="0.99999934"
+       width="5"
+       id="rect3897"
+       style="opacity:0.3;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/edit-delete.svg b/icons/PyHoca/scalable/edit-delete.svg
new file mode 100644
index 0000000..592fde6
--- /dev/null
+++ b/icons/PyHoca/scalable/edit-delete.svg
@@ -0,0 +1,272 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7352"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="edit-delete.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7354">
+    <filter
+       inkscape:collect="always"
+       id="filter7079"
+       x="-0.084445536"
+       width="1.1688911"
+       y="-0.25950053"
+       height="1.519001">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="1.3093102"
+         id="feGaussianBlur7081" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6983">
+      <stop
+         style="stop-color:#2e3436;stop-opacity:1;"
+         offset="0"
+         id="stop6985" />
+      <stop
+         style="stop-color:#2e3436;stop-opacity:0;"
+         offset="1"
+         id="stop6987" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6983"
+       id="radialGradient6989"
+       cx="318.03488"
+       cy="90.563477"
+       fx="318.03488"
+       fy="90.563477"
+       r="18.605747"
+       gradientTransform="matrix(0.9288572,2.6280209e-6,-8.1854474e-7,0.3017001,22.656541,62.141708)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient9361"
+       inkscape:collect="always">
+      <stop
+         id="stop9363"
+         offset="0"
+         style="stop-color:#da3f3f;stop-opacity:1" />
+      <stop
+         id="stop9365"
+         offset="1"
+         style="stop-color:#c22f2f;stop-opacity:1" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9361"
+       id="radialGradient9378"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.3924733,0,0,0.2885739,205.8207,140.5416)"
+       cx="-464.70734"
+       cy="-357.84525"
+       fx="-464.70734"
+       fy="-357.84525"
+       r="63.512196" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient8972"
+       id="radialGradient8978"
+       cx="323.85492"
+       cy="68.128128"
+       fx="323.85492"
+       fy="68.128128"
+       r="15.419154"
+       gradientTransform="matrix(1.0541479,0,0,2.7641865,-17.53606,-127.10337)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient8987">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop8989" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop8991" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient8987"
+       id="radialGradient9352"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.2696808,0,0,2.5886157,-703.01411,-138.28208)"
+       cx="320.48438"
+       cy="55.027756"
+       fx="320.48438"
+       fy="55.027756"
+       r="16.234375" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient8972">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop8974" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop8976" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient8972"
+       id="radialGradient9391"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.6895929,-0.7179879,1.5975314,1.6633121,-13.568216,185.77726)"
+       cx="323.85492"
+       cy="75.626114"
+       fx="323.85492"
+       fy="75.626114"
+       r="15.419154" />
+    <linearGradient
+       id="linearGradient9420">
+      <stop
+         id="stop9422"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0.73950005"
+         id="stop9424" />
+      <stop
+         id="stop9426"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9420"
+       id="radialGradient9416"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.7162417,-0.7162422,0.6276207,0.6276203,-268.69581,-17.371239)"
+       cx="175.44765"
+       cy="264.42752"
+       fx="175.44765"
+       fy="264.42752"
+       r="16.03125" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient9428">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop9430" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop9432" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9428"
+       id="radialGradient9434"
+       cx="174.65625"
+       cy="279.4375"
+       fx="174.65625"
+       fy="279.4375"
+       r="16.03125"
+       gradientTransform="matrix(1.3036497,-1.3036513,0.2559723,0.255972,-274.12603,181.25401)"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="3.5"
+     inkscape:cx="-15.768306"
+     inkscape:cy="0.35046343"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="598"
+     inkscape:window-y="287">
+    <inkscape:grid
+       type="xygrid"
+       id="grid7397" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7357">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.78341011;fill:url(#radialGradient6989);fill-opacity:1;stroke:none;display:inline;filter:url(#filter7079);enable-background:new"
+       id="path6981"
+       sodipodi:cx="318.06546"
+       sodipodi:cy="88.88443"
+       sodipodi:rx="18.605747"
+       sodipodi:ry="6.0546017"
+       d="M 336.67121,88.88443 A 18.605747,6.0546017 0 1 1 299.45971,88.88443 A 18.605747,6.0546017 0 1 1 336.67121,88.88443 z"
+       transform="matrix(1.1824306,0,0,0.5985401,-352.09033,-10.715817)" />
+    <path
+       style="fill:url(#radialGradient9378);fill-opacity:1;stroke:#900000;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline;enable-background:new"
+       d="M 24.000023,3.4998004 C 12.684023,3.4998004 3.500023,12.683806 3.500023,23.999801 C 3.500023,35.315799 12.684023,44.4998 24.000023,44.499801 C 35.316023,44.499801 44.500023,35.315801 44.500023,23.999801 C 44.500023,12.683803 35.316023,3.4997994 24.000023,3.4998004 z M 24.000023,8.4998004 C 27.378453,8.4998004 30.483773,9.6002134 33.031273,11.437301 L 11.437523,33.031051 C 9.6004329,30.483553 8.5000229,27.378233 8.5000229,23.999801 C 8.5000229,15.443795 15.444013,8.4998004 24.000023,8.4998004 z M 36.562523,14.968551 C 38.399613,17.516049 39.500023,20.621369 39.500023,23.999801 C 39.500023,32.555808 32.556033,39.499801 24.000023,39.499801 C 20.621583,39.4998 17.516273,38.399388 14.968773,36.562301 L 36.562523,14.968551 z"
+       id="path6626" />
+    <path
+       transform="matrix(1.2977488,0,0,1.2464255,-396.28233,-65.800728)"
+       d="M 338.88094,72.046448 A 15.026019,15.644737 0 1 1 308.8289,72.046448 A 15.026019,15.644737 0 1 1 338.88094,72.046448 z"
+       sodipodi:ry="15.644737"
+       sodipodi:rx="15.026019"
+       sodipodi:cy="72.046448"
+       sodipodi:cx="323.85492"
+       id="path6629"
+       style="opacity:0.84615383;fill:none;stroke:url(#radialGradient8978);stroke-width:0.78626961;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline;enable-background:new"
+       sodipodi:type="arc" />
+    <path
+       style="opacity:0.32692339;fill:url(#radialGradient9352);fill-opacity:1;stroke:none;display:inline;enable-background:new"
+       d="M 23.906273,4.9998004 C 13.432953,4.9998004 4.9375228,13.495227 4.9375228,23.968551 C 4.9375328,31.481673 9.3173429,37.958208 15.656273,41.031051 C 15.656273,41.031051 15.471133,39.640863 15.437523,37.499801 C 15.178943,37.334992 14.935953,37.147705 14.687523,36.968551 C 14.566613,36.886464 14.480893,36.739194 14.468773,36.593551 C 14.456633,36.447912 14.519363,36.319519 14.625023,36.218551 L 15.468773,35.374801 C 15.543763,33.459554 15.775163,31.224037 16.312523,28.843551 L 11.781273,33.374801 C 11.680303,33.480458 11.551913,33.543187 11.406273,33.531051 C 11.260633,33.518914 11.113363,33.433213 11.031273,33.312301 C 9.1387029,30.68787 8.0312729,27.483271 8.0312729,23.999801 C 8.0312729,15.182071 15.182293,8.0310504 24.000023,8.0310504 C 27.275013,8.0310504 30.312133,8.9974374 32.843773,10.6873 C 33.998323,10.344836 35.221273,10.067369 36.531273,9.8435504 C 33.869273,6.9186164 28.753453,4.9998004 23.906273,4.9998004 z"
+       id="path8980" />
+    <path
+       transform="matrix(1.0980964,0,0,1.0546689,-331.62391,-51.985347)"
+       d="M 338.88094,72.046448 A 15.026019,15.644737 0 1 1 308.8289,72.046448 A 15.026019,15.644737 0 1 1 338.88094,72.046448 z"
+       sodipodi:ry="15.644737"
+       sodipodi:rx="15.026019"
+       sodipodi:cy="72.046448"
+       sodipodi:cx="323.85492"
+       id="path9389"
+       style="opacity:0.84615383;fill:none;stroke:url(#radialGradient9391);stroke-width:0.9292267;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline;enable-background:new"
+       sodipodi:type="arc" />
+    <path
+       style="opacity:0.5;fill:none;fill-opacity:1;stroke:url(#radialGradient9416);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;display:inline;enable-background:new"
+       d="M 33.90954,11.943568 L 11.945035,33.908074"
+       id="path9395"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="opacity:0.3;fill:none;fill-opacity:1;stroke:url(#radialGradient9434);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;display:inline;enable-background:new"
+       d="M 14.110549,36.073588 L 36.075054,14.109083"
+       id="path9414"
+       sodipodi:nodetypes="cc" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/gnome-dev-printer-network.svg b/icons/PyHoca/scalable/gnome-dev-printer-network.svg
new file mode 100644
index 0000000..9c58af1
--- /dev/null
+++ b/icons/PyHoca/scalable/gnome-dev-printer-network.svg
@@ -0,0 +1,731 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7612"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7614">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2463">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop2465" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop2467" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2463"
+       id="linearGradient8678"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0441567,0,0,0.986366,-0.4734719,-4.7264972)"
+       x1="11.3125"
+       y1="21.6875"
+       x2="11.3125"
+       y2="33.216167" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7644">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop7646" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop7648" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7644"
+       id="linearGradient7650"
+       x1="20.125"
+       y1="24.43815"
+       x2="20.125"
+       y2="20"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.6666666,5.9604645e-8,0.6661948)" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7591">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop7593" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7595" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7591"
+       id="linearGradient7597"
+       x1="41.820312"
+       y1="33.109375"
+       x2="41.820312"
+       y2="33.46909"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(0.5000001,-6.0004713)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7434"
+       id="linearGradient3334"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.120543,0,0,1.2799981,-3.8930409,-17.060385)"
+       x1="15.916752"
+       y1="38.720707"
+       x2="15.916752"
+       y2="43.940079" />
+    <linearGradient
+       id="linearGradient7652">
+      <stop
+         id="stop7654"
+         offset="0"
+         style="stop-color:#555753;stop-opacity:1;" />
+      <stop
+         id="stop7656"
+         offset="1"
+         style="stop-color:#888a85;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7652"
+       id="linearGradient3340"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.129032,0,0,1.3333314,-4.0967759,-19.167046)"
+       x1="10.823892"
+       y1="43.8125"
+       x2="10.602463"
+       y2="34.705021" />
+    <linearGradient
+       id="linearGradient7658"
+       inkscape:collect="always">
+      <stop
+         id="stop7660"
+         offset="0"
+         style="stop-color:#d3d7cf" />
+      <stop
+         id="stop7662"
+         offset="1"
+         style="stop-color:#eeeeec" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7658"
+       id="linearGradient3338"
+       gradientUnits="userSpaceOnUse"
+       x1="40.315235"
+       y1="60.195492"
+       x2="9.8578663"
+       y2="40.000011"
+       gradientTransform="translate(-0.9999999,-7.0004712)" />
+    <linearGradient
+       id="linearGradient2304">
+      <stop
+         style="stop-color:#babdb6"
+         offset="0"
+         id="stop2306" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop2308" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2304"
+       id="linearGradient2324"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8853266,0,0,1.499469,5.4882695,-17.734803)"
+       x1="38.742561"
+       y1="29.743778"
+       x2="38.742561"
+       y2="31.167559" />
+    <linearGradient
+       id="linearGradient2326"
+       inkscape:collect="always">
+      <stop
+         id="stop2328"
+         offset="0"
+         style="stop-color:#789e2d;stop-opacity:1" />
+      <stop
+         id="stop2330"
+         offset="1"
+         style="stop-color:#a7cc5c;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2326"
+       id="linearGradient2322"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.6666666,0,0,1,15,-2.0004702)"
+       x1="40.791222"
+       y1="30.003317"
+       x2="40.791222"
+       y2="29.084894" />
+    <linearGradient
+       id="linearGradient1385">
+      <stop
+         style="stop-color:#888a85"
+         offset="0"
+         id="stop1387" />
+      <stop
+         style="stop-color:#888a85;stop-opacity:1"
+         offset="1"
+         id="stop1389" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient1385"
+       id="linearGradient7641"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.079998,0,0,1.003906,-1.9199909,-17.100076)"
+       x1="36.523464"
+       y1="32.096741"
+       x2="36.523464"
+       y2="13.749178" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2248">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop2250" />
+      <stop
+         style="stop-color:#babdb6"
+         offset="1"
+         id="stop2252" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2248"
+       id="linearGradient7587"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.079998,0,0,1.003906,-1.9199909,-13.084451)"
+       x1="17.409122"
+       y1="33.322712"
+       x2="21.360058"
+       y2="-23.806805" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2384">
+      <stop
+         style="stop-color:#2e3436"
+         offset="0"
+         id="stop2386" />
+      <stop
+         style="stop-color:#babdb6"
+         offset="1"
+         id="stop2388" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2384"
+       id="linearGradient7852"
+       gradientUnits="userSpaceOnUse"
+       x1="17.5"
+       y1="30.755291"
+       x2="17.5"
+       y2="20.140139"
+       gradientTransform="matrix(1.003915,0,0,0.9841327,0.9560781,-5.7035472)" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2431">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop2433" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop2435" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2431"
+       id="linearGradient7822"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.0000001,-5.0004712)"
+       x1="3.6239223"
+       y1="38.100166"
+       x2="3.6239223"
+       y2="42.336136" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7434">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop7436" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7438" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7434"
+       id="linearGradient7440"
+       x1="5.126524"
+       y1="25.372583"
+       x2="5.126524"
+       y2="69.140259"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(5.9604645e-8,-7.0004712)" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2683">
+      <stop
+         style="stop-color:#555753"
+         offset="0"
+         id="stop2685" />
+      <stop
+         style="stop-color:#2e3436"
+         offset="1"
+         id="stop2687" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2683"
+       id="linearGradient7820"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.0000001,-5.0004712)"
+       x1="3.2640579"
+       y1="35.072964"
+       x2="3.2640579"
+       y2="41.012157" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2675">
+      <stop
+         style="stop-color:#2e3436"
+         offset="0"
+         id="stop2677" />
+      <stop
+         style="stop-color:#555753"
+         offset="1"
+         id="stop2679" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2675"
+       id="linearGradient7818"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.0000001,-5.0004712)"
+       x1="5.0569911"
+       y1="40.414822"
+       x2="5.0569911"
+       y2="37.14798" />
+    <linearGradient
+       id="linearGradient7426">
+      <stop
+         style="stop-color:#555753;stop-opacity:1;"
+         offset="0"
+         id="stop7428" />
+      <stop
+         style="stop-color:#888a85;stop-opacity:1"
+         offset="1"
+         id="stop7430" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7426"
+       id="linearGradient7432"
+       x1="0.75"
+       y1="67.989044"
+       x2="0.75"
+       y2="24.367777"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(5.9604645e-8,-7.0004712)" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2222">
+      <stop
+         style="stop-color:#d3d7cf"
+         offset="0"
+         id="stop2224" />
+      <stop
+         style="stop-color:#eeeeec"
+         offset="1"
+         id="stop2226" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2222"
+       id="linearGradient2220"
+       x1="35.5"
+       y1="31.190165"
+       x2="35.5"
+       y2="24.248672"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.921571,5.9604645e-8,-0.7223252)" />
+    <linearGradient
+       id="linearGradient319"
+       inkscape:collect="always">
+      <stop
+         id="stop320"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop321"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient319"
+       id="linearGradient11473"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-0.9997339,-1.0004662)"
+       x1="24.391294"
+       y1="37.228275"
+       x2="24"
+       y2="41.998386" />
+    <linearGradient
+       id="linearGradient9347">
+      <stop
+         id="stop9349"
+         offset="0.0000000"
+         style="stop-color:#7a7a7a;stop-opacity:1.0000000;" />
+      <stop
+         id="stop9351"
+         offset="0.19801980"
+         style="stop-color:#ebebeb;stop-opacity:1" />
+      <stop
+         id="stop9353"
+         offset="0.59900987"
+         style="stop-color:#b9b9b9;stop-opacity:1" />
+      <stop
+         id="stop9355"
+         offset="1.0000000"
+         style="stop-color:#878787;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9347"
+       id="linearGradient7755"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.7312763,0,0,0.6969978,6.8679705,14.121761)"
+       x1="23.100046"
+       y1="38.296745"
+       x2="23.143667"
+       y2="46.03775" />
+    <linearGradient
+       id="linearGradient178">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0.0000000;"
+         offset="0.0000000"
+         id="stop179" />
+      <stop
+         style="stop-color:#d9d9d9;stop-opacity:1"
+         offset="0.10827128"
+         id="stop180" />
+      <stop
+         style="stop-color:#d9d9d9;stop-opacity:1"
+         offset="0.92053902"
+         id="stop181" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0.0000000;"
+         offset="1.0000000"
+         id="stop182" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient178"
+       id="linearGradient7832"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(3.1119049,0,0,9.1235758e-2,28.948795,19.750004)"
+       x1="1.6422368"
+       y1="117.8271"
+       x2="15.343062"
+       y2="117.8271" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient272"
+       id="linearGradient7834"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(9.3885418,0,0,0.2235361,29.130383,-45.865211)"
+       x1="0.61210024"
+       y1="372.57819"
+       x2="5.0856376"
+       y2="372.57819" />
+    <linearGradient
+       id="linearGradient272">
+      <stop
+         style="stop-color:#474747;stop-opacity:0.0000000;"
+         offset="0.0000000"
+         id="stop273" />
+      <stop
+         style="stop-color:#474747;stop-opacity:1.0000000;"
+         offset="0.10000000"
+         id="stop275" />
+      <stop
+         style="stop-color:#474747;stop-opacity:1.0000000;"
+         offset="0.89999998"
+         id="stop276" />
+      <stop
+         style="stop-color:#474747;stop-opacity:0.0000000;"
+         offset="1.0000000"
+         id="stop274" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient272"
+       id="linearGradient7830"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(9.3885424,0,0,0.2235366,29.130395,-51.784906)"
+       x1="0.61210024"
+       y1="372.57819"
+       x2="5.0856376"
+       y2="372.57819" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6704">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6706" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6708" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6704"
+       id="radialGradient7753"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.1166667,0,348.72344)"
+       cx="1120.375"
+       cy="394.78125"
+       fx="1120.375"
+       fy="394.78125"
+       r="20.625" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="690"
+     inkscape:window-x="180"
+     inkscape:window-y="424" />
+  <metadata
+     id="metadata7617">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <rect
+       style="fill:#d9d9d9;fill-opacity:1;stroke:#707070;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       id="rect8955"
+       width="2.9998591"
+       height="2.9998591"
+       x="22.5"
+       y="37.500156" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.3;fill:url(#radialGradient7753);fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline;enable-background:new"
+       id="path6774"
+       sodipodi:cx="1120.375"
+       sodipodi:cy="394.78125"
+       sodipodi:rx="20.625"
+       sodipodi:ry="2.40625"
+       d="M 1141,394.78125 A 20.625,2.40625 0 1 1 1099.75,394.78125 A 20.625,2.40625 0 1 1 1141,394.78125 z"
+       transform="matrix(1.0181815,0,0,1.2467532,-1116.7451,-447.19479)" />
+    <g
+       style="display:inline;enable-background:new"
+       id="g7753"
+       transform="translate(-31.877101,12.999551)">
+      <rect
+         style="opacity:0.65;fill:url(#linearGradient7830);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
+         id="rect8601"
+         width="41.999989"
+         height="1"
+         x="34.877113"
+         y="31" />
+      <rect
+         style="opacity:0.65;fill:url(#linearGradient7834);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
+         id="rect8603"
+         width="41.999989"
+         height="1"
+         x="34.877102"
+         y="29" />
+      <rect
+         style="fill:url(#linearGradient7832);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible"
+         id="rect8605"
+         width="41.5"
+         height="1"
+         x="34.627102"
+         y="30" />
+      <g
+         transform="matrix(0.544365,0,0,0.9411763,42.076688,-8.6470511)"
+         id="g8613"
+         style="fill:#ffffff;fill-opacity:0.72023806" />
+    </g>
+    <path
+       sodipodi:nodetypes="ccccccccccc"
+       style="fill:url(#linearGradient7755);fill-opacity:1;fill-rule:nonzero;stroke:#555753;stroke-width:1.00006688;stroke-linecap:butt;stroke-linejoin:miter;marker:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible;enable-background:new"
+       d="M 21.778719,40.500052 L 18.545321,40.500052 C 17.962949,40.500052 17.500033,40.927092 17.500033,41.464327 L 17.500033,45.53541 C 17.500033,46.07264 17.962949,46.499985 18.545321,46.499985 L 29.454675,46.499985 C 30.037042,46.499985 30.499965,46.07264 30.499965,45.53541 L 30.499965,41.464327 C 30.499965,40.927092 30.037042,40.500052 29.454675,40.500052 L 26.63351,40.500052 L 21.778719,40.500052 z"
+       id="path8607" />
+    <rect
+       style="fill:#ffffff;fill-opacity:0.72023806;fill-rule:nonzero;stroke:none;stroke-width:1.13999999;marker:none;visibility:visible;display:block;overflow:visible;enable-background:new"
+       id="rect8615"
+       width="8"
+       height="1.5"
+       x="21"
+       y="41.250015"
+       rx="0.49999997"
+       ry="0.5" />
+    <path
+       sodipodi:type="arc"
+       style="fill:#ffffff;fill-opacity:0.72023806;fill-rule:nonzero;stroke:none;stroke-width:1.13999999;marker:none;visibility:visible;display:block;overflow:visible;enable-background:new"
+       id="path8617"
+       sodipodi:cx="18.46875"
+       sodipodi:cy="40.625"
+       sodipodi:rx="0.53125"
+       sodipodi:ry="0.53125"
+       d="M 19,40.625 A 0.53125,0.53125 0 1 1 17.9375,40.625 A 0.53125,0.53125 0 1 1 19,40.625 z"
+       transform="matrix(1.4117647,0,0,1.4117647,-6.5735289,-15.352923)" />
+    <rect
+       style="opacity:0.265625;fill:url(#linearGradient11473);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       id="rect8963"
+       width="2"
+       height="2.9924619"
+       x="23.000271"
+       y="36.999538" />
+    <path
+       style="opacity:1;fill:url(#linearGradient2220);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7432);stroke-width:1.00000012;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 7,14.499527 L 4.7500005,17.248317 C 2.5994065,19.875664 1.5000001,22.31696 1.5000001,26.003246 L 1.5000001,31.499527 L 46.499999,31.499527 L 46.499999,26.003246 C 46.499999,22.31696 45.400592,19.875663 43.249999,17.248317 L 40.999999,14.499527 L 7,14.499527 z"
+       id="rect1314"
+       sodipodi:nodetypes="czzcczzcc" />
+    <path
+       sodipodi:nodetypes="ccccccc"
+       id="rect2412"
+       d="M 2.5000005,31.499527 L 2.5000005,34.405777 C 2.5000005,35.557524 3.4420035,36.499527 4.5937495,36.499527 L 43.406249,36.499527 C 44.557996,36.499527 45.499999,35.557522 45.499999,34.405777 L 45.499999,31.499527 L 2.5000005,31.499527 z"
+       style="opacity:1;fill:url(#linearGradient7818);fill-opacity:1;stroke:url(#linearGradient7820);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;enable-background:new" />
+    <path
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7440);stroke-width:0.9999994;stroke-linecap:square;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 7.5118983,15.562027 L 5.5997361,17.851283 C 3.5643395,20.288076 2.5000005,22.337354 2.5000005,25.707493 L 2.5000005,30.499527 L 45.499994,30.499527 L 45.499994,25.707493 C 45.499994,22.337354 44.427882,20.293974 42.400259,17.851283 L 40.499999,15.562027 L 7.5118983,15.562027 z"
+       id="path2231"
+       sodipodi:nodetypes="czzcczzcc" />
+    <path
+       sodipodi:nodetypes="ccccccc"
+       id="rect2428"
+       d="M 44.499999,32.499527 L 44.499999,34.499527 C 44.499999,35.018344 44.018816,35.499527 43.499999,35.499527 L 4.4999995,35.499527 C 3.9811835,35.499527 3.5000005,35.018344 3.5000005,34.499527 L 3.5000005,32.499527 L 44.499999,32.499527 z"
+       style="opacity:0.07999998;fill:none;fill-opacity:1;stroke:url(#linearGradient7822);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;display:inline;enable-background:new" />
+    <rect
+       y="15.499414"
+       x="9.4998884"
+       height="10.000113"
+       width="29.000111"
+       id="rect2319"
+       style="opacity:1;fill:url(#linearGradient7852);fill-opacity:1;stroke:#2e3436;stroke-width:0.99977696;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;enable-background:new"
+       ry="0.5"
+       rx="0.5078125" />
+    <path
+       style="fill:url(#linearGradient7587);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7641);stroke-width:1;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 12.119999,0.49952878 L 35.879981,0.49952878 C 36.77746,0.49952878 37.49998,1.1652828 37.49998,1.9995288 L 37.499982,16.686439 L 10.500001,16.682533 L 10.499999,1.9995288 C 10.499999,1.1652828 11.222519,0.49952878 12.119999,0.49952878 z"
+       id="rect2233"
+       sodipodi:nodetypes="ccccccc" />
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.99987608;stroke-linecap:square;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       id="rect2256"
+       width="25.000061"
+       height="15.000061"
+       x="11.5"
+       y="1.4995297"
+       rx="0.62364459"
+       ry="0.52842641" />
+    <rect
+       style="opacity:1;fill:url(#linearGradient2322);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient2324);stroke-width:1.00000012;stroke-linecap:square;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       id="rect2320"
+       width="2.9999998"
+       height="2"
+       x="41"
+       y="26.499527"
+       rx="0.99999988"
+       ry="1" />
+    <path
+       style="fill:url(#linearGradient3338);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient3340);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 9.1935479,29.499527 L 38.806452,29.499527 C 39.770137,29.499527 40.500001,30.347165 40.500001,31.232527 L 40.500001,37.499526 L 7.4999999,37.499537 L 7.4999999,31.232527 C 7.4999999,30.245278 8.273658,29.499527 9.1935479,29.499527 z"
+       id="path3330"
+       sodipodi:nodetypes="ccccccc" />
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient3334);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 9.3063922,30.539527 C 8.8526427,30.539527 8.5000007,30.836089 8.5000007,31.349527 L 8.5000007,36.499525 L 39.5,36.499525 L 39.5,31.349527 C 39.5,30.95625 39.150633,30.539527 38.693609,30.539527 L 9.3063922,30.539527 z"
+       id="path3336"
+       sodipodi:nodetypes="ccccccc" />
+    <rect
+       style="opacity:1;fill:url(#linearGradient7597);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.00000012;stroke-linecap:square;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       id="rect7589"
+       width="1.5468748"
+       height="0.35937488"
+       x="41.734375"
+       y="27.108902"
+       rx="0.51562488"
+       ry="0.17968744" />
+    <rect
+       style="opacity:0.15;fill:url(#linearGradient7650);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10.43299961;stroke-dasharray:none;stroke-opacity:0;display:inline"
+       id="rect7639"
+       width="28"
+       height="2"
+       x="10"
+       y="13.999525"
+       rx="0"
+       ry="0" />
+    <rect
+       y="17.499899"
+       x="10.500184"
+       height="6.9996305"
+       width="26.999687"
+       id="rect2459"
+       style="opacity:0.24313725;fill:none;fill-opacity:1;stroke:url(#linearGradient8678);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;enable-background:new" />
+    <path
+       style="fill:#888a85;fill-opacity:0.75;fill-rule:evenodd;stroke:#2e3436;stroke-width:0.99994069;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline;enable-background:new"
+       d="M 10.499969,16.499557 L 37.500087,16.499557"
+       id="path2259"
+       sodipodi:nodetypes="cc" />
+    <path
+       sodipodi:nodetypes="ccccc"
+       id="rect2440"
+       d="M 10,16.999527 L 37.999999,16.999527 L 37.999999,19.992919 C 31.538461,18.989615 14.846153,17.986311 10,21.999527 L 10,16.999527 z"
+       style="opacity:0.2627451;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;display:inline;enable-background:new" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/gtk-edit.svg b/icons/PyHoca/scalable/gtk-edit.svg
new file mode 100644
index 0000000..513eca2
--- /dev/null
+++ b/icons/PyHoca/scalable/gtk-edit.svg
@@ -0,0 +1,788 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg10316"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="gtk-edit.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs10318">
+    <linearGradient
+       id="linearGradient4099-6-7"
+       inkscape:collect="always">
+      <stop
+         id="stop4101-1-8"
+         offset="0"
+         style="stop-color:#dddddd;stop-opacity:1;" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0.34467545"
+         id="stop4107-2-2" />
+      <stop
+         id="stop4109-5-7"
+         offset="0.72694808"
+         style="stop-color:#737373;stop-opacity:1" />
+      <stop
+         id="stop4103-9-2"
+         offset="1"
+         style="stop-color:#bbbbbb;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4099-6-7"
+       id="linearGradient649"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.1892115,-0.1892253,0.1892115,0.1892253,49.738733,-37.732231)"
+       x1="-158.75"
+       y1="115.93846"
+       x2="-158.75"
+       y2="134.25" />
+    <linearGradient
+       id="linearGradient4117-1-0"
+       inkscape:collect="always">
+      <stop
+         style="stop-color:#f9a9a9;stop-opacity:1"
+         offset="0"
+         id="stop4121-0-5" />
+      <stop
+         style="stop-color:#ab5f5f;stop-opacity:1"
+         offset="1"
+         id="stop4119-1-6" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4117-1-0"
+       id="radialGradient691"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.320394,-0.3203948,0.322414,0.3224148,50.518433,-74.157887)"
+       cx="-138.83727"
+       cy="128.00087"
+       fx="-138.83727"
+       fy="128.00087"
+       r="9.1267023" />
+    <linearGradient
+       id="linearGradient6437"
+       inkscape:collect="always">
+      <stop
+         id="stop6439"
+         offset="0"
+         style="stop-color:#e9b96e;stop-opacity:1" />
+      <stop
+         id="stop6441"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       y2="32.714375"
+       x2="25.485056"
+       y1="34.389839"
+       x1="26.379272"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient6488"
+       xlink:href="#linearGradient6437"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient2301">
+      <stop
+         style="stop-color:#ce5c00;stop-opacity:1"
+         offset="0"
+         id="stop2303" />
+      <stop
+         style="stop-color:#ce5c00"
+         offset="1"
+         id="stop2305" />
+    </linearGradient>
+    <linearGradient
+       y2="22.118853"
+       x2="22.810215"
+       y1="21.481258"
+       x1="23.447809"
+       gradientTransform="translate(6.39225,12.18459)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient6486"
+       xlink:href="#linearGradient2301"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient6445"
+       inkscape:collect="always">
+      <stop
+         id="stop6447"
+         offset="0"
+         style="stop-color:#fcaf3e;stop-opacity:1" />
+      <stop
+         id="stop6449"
+         offset="1"
+         style="stop-color:#ce5c00" />
+    </linearGradient>
+    <linearGradient
+       y2="14.691495"
+       x2="30.432114"
+       y1="12.338078"
+       x1="28.078697"
+       gradientTransform="translate(6.39225,12.18459)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient6484"
+       xlink:href="#linearGradient6445"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient1813">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop1815" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop1817" />
+    </linearGradient>
+    <linearGradient
+       y2="18.392296"
+       x2="32.9375"
+       y1="18.53828"
+       x1="18.1875"
+       gradientTransform="matrix(1,0,0,0.415008,6.5485,26.7669)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient6482"
+       xlink:href="#linearGradient1813"
+       inkscape:collect="always" />
+    <linearGradient
+       id="linearGradient4333"
+       inkscape:collect="always">
+      <stop
+         id="stop4335"
+         offset="0"
+         style="stop-color:black;stop-opacity:1;" />
+      <stop
+         id="stop4337"
+         offset="1"
+         style="stop-color:black;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.226496,0,25.67067)"
+       r="14.625"
+       fy="33.1875"
+       fx="37.375"
+       cy="33.1875"
+       cx="37.375"
+       id="radialGradient4339"
+       xlink:href="#linearGradient4333"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3656">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3658" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3660" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3656"
+       id="linearGradient5816"
+       gradientUnits="userSpaceOnUse"
+       x1="-26.753757"
+       y1="11.566258"
+       x2="-24.75"
+       y2="9.687501" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3520">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.41295547"
+         offset="0"
+         id="stop3522" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3524" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3520"
+       id="linearGradient5836"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9223058,0,0,0.9185751,-92.447368,61.3257)"
+       x1="-18.588562"
+       y1="11.052948"
+       x2="-28.789402"
+       y2="14.069944" />
+    <linearGradient
+       id="linearGradient3671">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3673" />
+      <stop
+         id="stop3691"
+         offset="0.47533694"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3675" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3671"
+       id="radialGradient5839"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.4073362,-0.2798276,0.7510293,1.0932492,-115.18484,51.56213)"
+       cx="-26.305403"
+       cy="10.108011"
+       fx="-26.305403"
+       fy="10.108011"
+       r="7.0421038" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6469">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6471" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6473" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6469"
+       id="linearGradient6475"
+       x1="58.282169"
+       y1="70.751839"
+       x2="61.181217"
+       y2="67.799171"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-180,0)" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3741">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3743" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3745" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3741"
+       id="radialGradient5810"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8860258,0,0,1.1764706,-3.5441033,-4.2352941)"
+       cx="4"
+       cy="5.2999997"
+       fx="4"
+       fy="5.2999997"
+       r="17" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3613">
+      <stop
+         style="stop-color:#888a85;stop-opacity:1"
+         offset="0"
+         id="stop3615" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1"
+         id="stop3617" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3613"
+       id="linearGradient5845"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-90,60)"
+       x1="-47.5"
+       y1="49.020683"
+       x2="-62.75"
+       y2="-22.502075" />
+    <linearGradient
+       id="linearGradient3683">
+      <stop
+         id="stop3685"
+         offset="0"
+         style="stop-color:#f6f6f5;stop-opacity:1;" />
+      <stop
+         id="stop3689"
+         offset="1"
+         style="stop-color:#d3d7cf;stop-opacity:1" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3683"
+       id="radialGradient5843"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(3.9957492,0,0,1.9350367,0.62141,28.832578)"
+       cx="-30.249996"
+       cy="35.357208"
+       fx="-30.249996"
+       fy="35.357208"
+       r="18.000002" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3702"
+       id="linearGradient5804"
+       gradientUnits="userSpaceOnUse"
+       x1="25.058096"
+       y1="47.027729"
+       x2="25.058096"
+       y2="39.999443" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3688"
+       id="radialGradient5802"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.003784,0,0,1.4,-20.01187,-104.4)"
+       cx="4.9929786"
+       cy="43.5"
+       fx="4.9929786"
+       fy="43.5"
+       r="2.5" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3688"
+       id="radialGradient5800"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.003784,0,0,1.4,27.98813,-17.4)"
+       cx="4.9929786"
+       cy="43.5"
+       fx="4.9929786"
+       fy="43.5"
+       r="2.5" />
+    <linearGradient
+       id="linearGradient3702">
+      <stop
+         id="stop3704"
+         offset="0"
+         style="stop-color:black;stop-opacity:0;" />
+      <stop
+         style="stop-color:black;stop-opacity:1;"
+         offset="0.5"
+         id="stop3710" />
+      <stop
+         id="stop3706"
+         offset="1"
+         style="stop-color:black;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3702"
+       id="linearGradient5798"
+       gradientUnits="userSpaceOnUse"
+       x1="25.058096"
+       y1="47.027729"
+       x2="25.058096"
+       y2="39.999443" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3688"
+       id="radialGradient5796"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.003784,0,0,1.4,-20.01187,-104.4)"
+       cx="4.9929786"
+       cy="43.5"
+       fx="4.9929786"
+       fy="43.5"
+       r="2.5" />
+    <linearGradient
+       id="linearGradient3688"
+       inkscape:collect="always">
+      <stop
+         id="stop3690"
+         offset="0"
+         style="stop-color:black;stop-opacity:1;" />
+      <stop
+         id="stop3692"
+         offset="1"
+         style="stop-color:black;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3688"
+       id="radialGradient5794"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.003784,0,0,1.4,27.98813,-17.4)"
+       cx="4.9929786"
+       cy="43.5"
+       fx="4.9929786"
+       fy="43.5"
+       r="2.5" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="1037"
+     inkscape:window-y="25" />
+  <metadata
+     id="metadata10321">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       style="display:inline"
+       id="g6015"
+       transform="translate(150,-60)">
+      <rect
+         y="60"
+         x="-150"
+         height="48"
+         width="48"
+         id="rect5504"
+         style="opacity:0;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;display:inline" />
+      <g
+         transform="matrix(1.0464281,0,0,0.8888889,-151.18572,65.72224)"
+         inkscape:label="Shadow"
+         id="g5508"
+         style="opacity:0.65587045;display:inline">
+        <g
+           transform="matrix(1.052632,0,0,1.285713,-1.263158,-13.42854)"
+           style="opacity:0.4"
+           id="g5511">
+          <rect
+             style="opacity:1;fill:url(#radialGradient5794);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+             id="rect5513"
+             width="5"
+             height="7"
+             x="38"
+             y="40" />
+          <rect
+             style="opacity:1;fill:url(#radialGradient5796);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+             id="rect5515"
+             width="5"
+             height="7"
+             x="-10"
+             y="-47"
+             transform="scale(-1,-1)" />
+          <rect
+             style="opacity:1;fill:url(#linearGradient5798);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+             id="rect5517"
+             width="28"
+             height="7.0000005"
+             x="10"
+             y="40" />
+        </g>
+      </g>
+      <g
+         transform="matrix(0.9548466,0,0,0.5555562,-148.98776,79.888875)"
+         inkscape:label="Shadow"
+         id="g5519"
+         style="display:inline">
+        <g
+           transform="matrix(1.052632,0,0,1.285713,-1.263158,-13.42854)"
+           style="opacity:0.4"
+           id="g5521">
+          <rect
+             style="opacity:1;fill:url(#radialGradient5800);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+             id="rect5523"
+             width="5"
+             height="7"
+             x="38"
+             y="40" />
+          <rect
+             style="opacity:1;fill:url(#radialGradient5802);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+             id="rect5525"
+             width="5"
+             height="7"
+             x="-10"
+             y="-47"
+             transform="scale(-1,-1)" />
+          <rect
+             style="opacity:1;fill:url(#linearGradient5804);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+             id="rect5527"
+             width="28"
+             height="7.0000005"
+             x="10"
+             y="40" />
+        </g>
+      </g>
+      <path
+         sodipodi:nodetypes="ccsccccccc"
+         id="path5529"
+         d="M -141.47614,63.5 C -141.47614,63.5 -124,63.5 -122.5,63.5 C -118.62295,63.572942 -116,66 -113.5,68.5 C -111,71 -108.89232,73.752625 -108.5,77.5 C -108.5,79 -108.5,102.47614 -108.5,102.47614 C -108.5,103.59736 -109.40264,104.5 -110.52385,104.5 L -141.47614,104.5 C -142.59736,104.5 -143.5,103.59736 -143.5,102.47614 L -143.5,65.523858 C -143.5,64.402641 -142.59736,63.5 -141.47614,63.5 z"
+         style="fill:url(#radialGradient5843);fill-opacity:1;stroke:url(#linearGradient5845);stroke-width:1;stroke-miterlimit:4;display:inline" />
+      <path
+         transform="translate(-150,60)"
+         d="M 8.53125,4 C 7.6730803,4 7,4.6730802 7,5.53125 L 7,42.46875 C 7,43.32692 7.6730802,44 8.53125,44 L 39.46875,44 C 40.326919,44 41,43.326918 41,42.46875 C 41,42.46875 41,19 41,17.5 C 41,16.10803 40.513021,13.200521 38.65625,11.34375 C 36.65625,9.34375 35.65625,8.34375 33.65625,6.34375 C 31.799479,4.4869792 28.89197,4 27.5,4 C 26,4 8.53125,4 8.53125,4 z"
+         id="path5531"
+         style="opacity:0.68016196;fill:url(#radialGradient5810);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;display:inline"
+         inkscape:original="M 8.53125 3.5 C 7.410033 3.5 6.5 4.4100329 6.5 5.53125 L 6.5 42.46875 C 6.5 43.589967 7.4100329 44.5 8.53125 44.5 L 39.46875 44.5 C 40.589967 44.5 41.5 43.589966 41.5 42.46875 C 41.5 42.46875 41.5 19 41.5 17.5 C 41.5 16 41 13 39 11 C 37 9 36 8 34 6 C 32 4 29 3.5 27.5 3.5 C 26 3.5 8.5312499 3.5 8.53125 3.5 z "
+         inkscape:radius="-0.4861359"
+         sodipodi:type="inkscape:offset" />
+      <path
+         id="rect5857"
+         d="M -138.59375,69.125 C -138.81243,69.125 -139,69.312565 -139,69.53125 C -139,69.749934 -138.81243,69.937499 -138.59375,69.9375 L -117.40625,69.9375 C -117.18757,69.9375 -117,69.749934 -117,69.53125 C -117,69.312566 -117.18757,69.125 -117.40625,69.125 L -138.59375,69.125 z M -138.53125,71.0625 C -138.79094,71.0625 -139,71.271563 -139,71.53125 C -139,71.790937 -138.79094,72 -138.53125,72 L -116.46875,72 C -116.20906,72 -116,71.790937 -116,71.53125 C -116,71.271563 -116.20906,71.0625 -116.46875,71.0625 L -138.53125,71.0625 z M -138.53125,73.0625 C -138.79094,73.0625 -139,73.271563 -139,73.53125 C -139,73.790937 -138.79094,74 -138.53125,74 L -113.34375,74 C -113.08406,74 -112.875,73.790937 -112.875,73.53125 C -112.875,73.271563 -113.08406,73.0625 -113.34375,73.0625 L -138.53125,73.0625 z M -138.53125,75.0625 C -138.79094,75.0625 -139,75.271563 -139,75.53125 C -139,75.790937 -138.79094,76 -138.53125,76 L -113.34375,76 C -113.08406,76 -112.875,75.790937 -112.875,75.5312
 5 C -112
 .875,75.271563 -113.08406,75.0625 -113.34375,75.0625 L -138.53125,75.0625 z M -138.53125,77.0625 C -138.79094,77.0625 -139,77.271563 -139,77.53125 C -139,77.790937 -138.79094,78 -138.53125,78 L -113.34375,78 C -113.08406,78 -112.875,77.790937 -112.875,77.53125 C -112.875,77.271563 -113.08406,77.0625 -113.34375,77.0625 L -138.53125,77.0625 z"
+         style="opacity:0.15;fill:url(#linearGradient6475);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+      <path
+         sodipodi:nodetypes="ccccczc"
+         id="path5533"
+         d="M -122.5,64 C -123.88889,64 -122.54207,64.497088 -121.15625,65.125 C -119.77043,65.752912 -116.18337,68.340052 -117,72 C -112.67669,71.569417 -110.32087,75.122378 -110,76.28125 C -109.67913,77.440122 -109,78.888889 -109,77.5 C -108.97167,73.694419 -111.84543,71.068299 -113.84375,68.84375 C -115.84207,66.619201 -118.84621,64.476761 -122.5,64 z"
+         style="fill:url(#radialGradient5839);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;display:inline" />
+      <path
+         sodipodi:nodetypes="ccccc"
+         id="path5535"
+         d="M -121.39912,65.014353 C -120.47682,65.014353 -118.39068,71.210015 -119.31298,75.343603 C -115.01802,74.915844 -110.4596,75.43178 -110,76.28125 C -110.32087,75.122378 -112.67669,71.569417 -117,72 C -116.13534,68.124761 -120.18657,65.382702 -121.39912,65.014353 z"
+         style="opacity:0.87854249;fill:url(#linearGradient5836);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;display:inline" />
+      <path
+         transform="translate(-90,60)"
+         d="M -51.46875,4.5 C -52.051916,4.5 -52.5,4.9480842 -52.5,5.53125 L -52.5,42.46875 C -52.5,43.051915 -52.051914,43.5 -51.46875,43.5 L -20.53125,43.5 C -19.948085,43.5 -19.5,43.051914 -19.5,42.46875 C -19.5,42.46875 -19.5,19 -19.5,17.5 C -19.5,16.220971 -19.980469,13.394531 -21.6875,11.6875 C -23.6875,9.6875 -24.6875,8.6875 -26.6875,6.6875 C -28.394531,4.9804687 -31.220971,4.5 -32.5,4.5 C -34,4.5 -51.46875,4.5 -51.46875,4.5 z"
+         id="path5537"
+         style="fill:none;fill-opacity:1;stroke:url(#linearGradient5816);stroke-width:1;stroke-miterlimit:4;display:inline"
+         inkscape:original="M -51.46875 3.5 C -52.589967 3.5 -53.5 4.4100329 -53.5 5.53125 L -53.5 42.46875 C -53.5 43.589967 -52.589966 44.5 -51.46875 44.5 L -20.53125 44.5 C -19.410033 44.5 -18.5 43.589966 -18.5 42.46875 C -18.5 42.46875 -18.5 19 -18.5 17.5 C -18.5 16 -19 13 -21 11 C -23 9 -24 8 -26 6 C -28 4 -31 3.5 -32.5 3.5 C -34 3.5 -51.468749 3.5 -51.46875 3.5 z "
+         inkscape:radius="-0.99436891"
+         sodipodi:type="inkscape:offset" />
+      <g
+         inkscape:r_cy="true"
+         inkscape:r_cx="true"
+         transform="matrix(0.928889,0,0,1,-148.28889,60)"
+         style="opacity:0.15;fill:#000000;display:inline"
+         id="g5539">
+        <rect
+           ry="0.46875"
+           rx="0.50463516"
+           inkscape:r_cy="true"
+           inkscape:r_cx="true"
+           y="19.0625"
+           x="10"
+           height="0.9375"
+           width="28.125"
+           id="rect5549"
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+        <rect
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+           id="rect5553"
+           width="28.125"
+           height="0.9375"
+           x="10"
+           y="21.0625"
+           inkscape:r_cx="true"
+           inkscape:r_cy="true"
+           rx="0.50463516"
+           ry="0.46875" />
+        <rect
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+           id="rect5555"
+           width="28.125"
+           height="0.9375"
+           x="10"
+           y="23.0625"
+           inkscape:r_cx="true"
+           inkscape:r_cy="true"
+           rx="0.50463516"
+           ry="0.46875" />
+        <rect
+           ry="0.46875"
+           rx="0.50463516"
+           inkscape:r_cy="true"
+           inkscape:r_cx="true"
+           y="25.0625"
+           x="10"
+           height="0.9375"
+           width="28.125"
+           id="rect5557"
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+        <rect
+           ry="0.46875"
+           rx="0.50463516"
+           inkscape:r_cy="true"
+           inkscape:r_cx="true"
+           y="27.0625"
+           x="10"
+           height="0.9375"
+           width="28.125"
+           id="rect5559"
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+        <rect
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+           id="rect5561"
+           width="28.125"
+           height="0.9375"
+           x="10"
+           y="29.0625"
+           inkscape:r_cx="true"
+           inkscape:r_cy="true"
+           rx="0.50463516"
+           ry="0.46875" />
+        <rect
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+           id="rect5563"
+           width="28.125"
+           height="0.9375"
+           x="10"
+           y="31.0625"
+           inkscape:r_cx="true"
+           inkscape:r_cy="true"
+           rx="0.50463516"
+           ry="0.46875" />
+        <rect
+           ry="0.46875"
+           rx="0.50463516"
+           inkscape:r_cy="true"
+           inkscape:r_cx="true"
+           y="33.0625"
+           x="10"
+           height="0.9375"
+           width="28.125"
+           id="rect5565"
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+        <rect
+           ry="0.46875"
+           rx="0.50463516"
+           inkscape:r_cy="true"
+           inkscape:r_cx="true"
+           y="35.0625"
+           x="10"
+           height="0.9375"
+           width="28.125"
+           id="rect5567"
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+        <rect
+           ry="0.46875"
+           rx="1.0051866"
+           inkscape:r_cy="true"
+           inkscape:r_cx="true"
+           y="37.0625"
+           x="10"
+           height="0.9375"
+           width="12.918659"
+           id="rect5569"
+           style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+      </g>
+    </g>
+    <g
+       id="g7666"
+       transform="matrix(1.0512963,0,0,0.4615385,-3.154159,26.269239)"
+       style="opacity:0.5" />
+    <g
+       style="display:inline;enable-background:new"
+       id="layer1-7"
+       inkscape:label="Livello 1"
+       transform="matrix(1.0000135,0,0,1,-2.000297,2.000003)">
+      <g
+         style="opacity:0.4"
+         transform="matrix(1.0416677,0,0,0.4579337,-0.9375015,24.411627)"
+         id="g3425" />
+      <path
+         transform="matrix(0.897436,0,0,0.981132,1.333333,1.688679)"
+         d="M 52,33.1875 A 14.625,3.3125 0 1 1 22.75,33.1875 A 14.625,3.3125 0 1 1 52,33.1875 z"
+         sodipodi:ry="3.3125"
+         sodipodi:rx="14.625"
+         sodipodi:cy="33.1875"
+         sodipodi:cx="37.375"
+         id="path4331"
+         style="opacity:0.07000002;fill:url(#radialGradient4339);fill-opacity:1;stroke:none"
+         sodipodi:type="arc" />
+      <g
+         transform="translate(-1.75,-1)"
+         id="g2894" />
+      <g
+         transform="translate(-2,-1)"
+         id="g2814" />
+      <g
+         transform="translate(60.78337,49.43458)"
+         style="display:inline"
+         inkscape:label="base"
+         id="g2637" />
+      <g
+         transform="translate(0,-1)"
+         style="opacity:0.6"
+         id="g2953" />
+      <g
+         id="g6471">
+        <path
+           sodipodi:nodetypes="cccccccccc"
+           style="opacity:0.4;fill:url(#linearGradient6482);fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline"
+           d="M 41.07975,28.46584 L 26.07975,32.938753 L 25.95475,33.003593 L 25.861,33.081403 L 23.111,35.934581 L 30.5485,35.091597 L 30.82975,35.065657 L 31.01725,34.987847 L 41.07975,32.304654 L 41.07975,28.465833 L 41.07975,28.46584 L 41.07975,28.46584 z"
+           id="path2334" />
+        <g
+           id="g6462">
+          <g
+             id="g6458">
+            <path
+               sodipodi:nodetypes="ccccccc"
+               id="path2273"
+               d="M 25.89225,30.18459 L 44.89225,11.18459 C 47.067299,11.544551 47.976969,12.916815 48.39225,14.68459 L 29.39225,33.68459 L 24.776133,34.389095 L 25.89225,30.18459 L 25.89225,30.18459 L 25.89225,30.18459 z"
+               style="fill:url(#linearGradient6484);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient6486);stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+            <path
+               sodipodi:nodetypes="ccccccc"
+               id="path2313"
+               d="M 26.792248,30.68459 L 45.289998,12.286842 C 46.379743,12.465277 46.807259,13.274786 47.289998,14.286842 L 28.89225,32.784592 L 25.592247,33.684593 L 26.792248,30.68459 L 26.792248,30.68459 L 26.792248,30.68459 z"
+               style="opacity:0.28235294;fill:none;stroke:#ffffff;stroke-width:1.0000006;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline" />
+          </g>
+          <g
+             id="g6451">
+            <path
+               sodipodi:nodetypes="cczcc"
+               id="path2298"
+               d="M 24.549577,34.633026 L 26.215899,30.452717 C 26.215899,30.452717 27.415434,30.698077 28.148076,31.427806 C 28.880718,32.157535 29.146467,33.371634 29.146467,33.371634 L 24.549577,34.633026 z"
+               style="fill:url(#linearGradient6488);fill-opacity:1;fill-rule:evenodd;stroke:none" />
+            <path
+               transform="translate(6.39225,12.18459)"
+               sodipodi:nodetypes="ccc"
+               id="path5446"
+               d="M 23,21.5 L 17.5,23 L 19.5,18"
+               style="fill:none;stroke:#e9b96e;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+            <path
+               id="path2283"
+               d="M 23.95475,33.68459 L 23.0485,35.93459 L 25.39225,35.27834 C 25.39425,35.2465 25.39225,35.21693 25.39225,35.18459 C 25.39225,34.382465 24.746942,33.724789 23.95475,33.68459 z"
+               style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;display:inline"
+               sodipodi:nodetypes="cccsc" />
+          </g>
+        </g>
+      </g>
+      <path
+         style="fill:url(#radialGradient691);fill-opacity:1;fill-rule:nonzero;stroke:#ef2929;stroke-width:0.99999994;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new"
+         d="M 42.821682,13.147263 C 44.655834,12.646732 46.706734,14.798738 46.271593,16.597182 L 48.46699,14.40178 C 49.533501,11.935217 47.334738,9.9920671 44.972276,10.907057 L 42.821682,13.147263 L 42.821682,13.147263 z"
+         id="path4113-1"
+         sodipodi:nodetypes="ccccc" />
+      <path
+         sodipodi:nodetypes="ccccc"
+         id="path4095-8"
+         d="M 40.561976,15.25084 C 42.498424,14.722356 44.663708,16.994546 44.204297,18.893426 L 46.522138,16.575416 C 47.276595,14.97964 44.477505,12.237921 42.832513,12.885525 L 40.561976,15.25084 L 40.561976,15.25084 z"
+         style="fill:url(#linearGradient649);fill-opacity:1;fill-rule:nonzero;stroke:#888a85;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:new" />
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/list-add.svg b/icons/PyHoca/scalable/list-add.svg
new file mode 100644
index 0000000..5c23d09
--- /dev/null
+++ b/icons/PyHoca/scalable/list-add.svg
@@ -0,0 +1,256 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7206"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="list-add.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7208">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4222">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4224" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop4226" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4222"
+       id="linearGradient2785"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0724657,0,0,1.0724657,-1.2644573,-1.32954)"
+       x1="15.25967"
+       y1="0.90033573"
+       x2="38.399845"
+       y2="42.305672" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient8002">
+      <stop
+         style="stop-color:#789e2d;stop-opacity:1"
+         offset="0"
+         id="stop8004" />
+      <stop
+         style="stop-color:#42770c;stop-opacity:1"
+         offset="1"
+         id="stop8006" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient8002"
+       id="linearGradient8008"
+       x1="22.142857"
+       y1="5"
+       x2="22"
+       y2="42.57143"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient2264">
+      <stop
+         style="stop-color:#b8d67a;stop-opacity:1"
+         offset="0"
+         id="stop2266" />
+      <stop
+         id="stop7998"
+         offset="0.25"
+         style="stop-color:#a7cc5c;stop-opacity:1" />
+      <stop
+         style="stop-color:#789e2d;stop-opacity:1"
+         offset="0.68000001"
+         id="stop8000" />
+      <stop
+         style="stop-color:#42770c;stop-opacity:1"
+         offset="1"
+         id="stop2268" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2264"
+       id="radialGradient7996"
+       cx="24"
+       cy="5"
+       fx="24"
+       fy="5"
+       r="19"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-1.3100728e-8,2.2593985,-4.0026986,0,44.013493,-49.225564)" />
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.3137255;"
+         offset="0"
+         id="stop7579" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.31"
+         offset="1"
+         id="stop7581" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient7386"
+       gradientUnits="userSpaceOnUse"
+       x1="23.563137"
+       y1="31.488117"
+       x2="23.563137"
+       y2="36.89304"
+       gradientTransform="matrix(1.1449541,0,0,1.8604651,-2.9788993,-40.500001)" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="690"
+     inkscape:window-x="0"
+     inkscape:window-y="25" />
+  <metadata
+     id="metadata7211">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       sodipodi:nodetypes="ccccccccccccccccccccc"
+       id="path7342"
+       d="M 6,17 C 4.020574,17.022097 4.022097,17 4,19 L 4,29 C 4.066292,30.934502 4.064762,30.977903 6,31 L 17,31 L 17,42 C 16.95956,43.948298 17.051702,44 19,44 L 29,44 C 31.036686,44 31.04044,44 31,42 L 31,31 L 42,31 C 44,31 44,31.044987 44,29 L 44,19 C 44.044194,17.043401 44.045725,17.022097 42,17 L 31,17 L 31,6 C 31,4.145833 31,4 29,4 L 19,4 C 17.145833,4 17.041667,4 17,6 L 17,17 L 6,17 z"
+       style="opacity:0.3;fill:url(#linearGradient7386);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible;enable-background:accumulate" />
+    <g
+       id="layer6"
+       inkscape:label="Shadow"
+       transform="translate(-77.633592,-36.5046)" />
+    <g
+       style="display:inline"
+       inkscape:label="Base"
+       id="g2170"
+       transform="translate(-77.633592,-36.5046)" />
+    <g
+       inkscape:label="Layer 1"
+       id="g5398"
+       transform="translate(-206.16377,-7.977602)" />
+    <g
+       id="layer5"
+       inkscape:label="shadiw"
+       transform="translate(-206.16377,-7.977602)" />
+    <g
+       id="layer4"
+       inkscape:label="white"
+       transform="translate(-206.16377,-7.977602)" />
+    <g
+       transform="translate(-285.16138,-16.332446)"
+       style="display:inline"
+       id="g3678"
+       inkscape:label="Layer 1" />
+    <g
+       transform="translate(-285.16138,-16.332446)"
+       inkscape:label="bottom"
+       id="g3680" />
+    <g
+       transform="translate(-285.16138,-16.332446)"
+       style="display:inline"
+       inkscape:label="back"
+       id="layer2" />
+    <g
+       id="g3698"
+       inkscape:label="shadiw"
+       transform="translate(-128.63708,-7.424841)" />
+    <g
+       id="g3760"
+       inkscape:label="shadiw"
+       transform="translate(39.691618,-2.164572)" />
+    <g
+       transform="translate(-314.49797,-42.377569)"
+       inkscape:label="Shadow"
+       id="g5431" />
+    <g
+       transform="translate(-314.49797,-42.377569)"
+       id="g4258"
+       inkscape:label="Base"
+       style="display:inline" />
+    <g
+       transform="translate(-314.49797,-42.377569)"
+       inkscape:label="new"
+       id="g5440" />
+    <g
+       transform="translate(-283.06086,-28.136472)"
+       style="display:inline"
+       id="g3928"
+       inkscape:label="Layer 1" />
+    <g
+       transform="translate(-283.06086,-28.136472)"
+       inkscape:label="bottom"
+       id="g3930" />
+    <g
+       transform="translate(-283.06086,-28.136472)"
+       style="display:inline"
+       inkscape:label="back"
+       id="g3932" />
+    <g
+       id="g3934"
+       inkscape:label="shadiw"
+       transform="translate(-126.53656,-19.228866)" />
+    <g
+       id="g3936"
+       inkscape:label="shadiw"
+       transform="translate(41.792138,-13.968597)" />
+    <g
+       transform="translate(-312.39745,-54.181595)"
+       inkscape:label="Shadow"
+       id="g3961" />
+    <g
+       transform="translate(-312.39745,-54.181595)"
+       id="g3963"
+       inkscape:label="Base"
+       style="display:inline" />
+    <g
+       transform="translate(-312.39745,-54.181595)"
+       inkscape:label="new"
+       id="layer7" />
+    <path
+       style="fill:url(#radialGradient7996);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient8008);stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 18.5,18.5 L 18.5,5.5 L 29.5,5.5 L 29.5,18.5 L 42.5,18.5 L 42.5,29.5 L 29.5,29.5 L 29.5,42.5 L 18.5,42.5 L 18.5,29.5 L 5.5,29.5 L 5.5,18.5 L 18.5,18.5 z"
+       id="path2262"
+       sodipodi:nodetypes="ccccccccccccc" />
+    <path
+       style="opacity:0.5;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient2785);stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 19.5,19.5 L 19.5,6.5 L 28.5,6.5 L 28.5,19.5 L 41.5,19.5 L 41.5,28.5 L 28.5,28.5 L 28.5,41.5 L 19.5,41.5 L 19.5,28.5 L 6.5,28.5 L 6.5,19.5 L 19.5,19.5 z"
+       id="path2272"
+       sodipodi:nodetypes="ccccccccccccc" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/locked.svg b/icons/PyHoca/scalable/locked.svg
new file mode 100644
index 0000000..d648e80
--- /dev/null
+++ b/icons/PyHoca/scalable/locked.svg
@@ -0,0 +1,534 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7373"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7375">
+    <filter
+       inkscape:collect="always"
+       x="-0.085115738"
+       width="1.1702315"
+       y="-0.4135721"
+       height="1.8271442"
+       id="filter6328">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.42546784"
+         id="feGaussianBlur6330" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6057">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop6059" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop6061" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6057"
+       id="radialGradient6071"
+       gradientUnits="userSpaceOnUse"
+       cx="18.031223"
+       cy="6.2806997"
+       fx="18.031223"
+       fy="6.2806997"
+       r="3.1819806" />
+    <filter
+       inkscape:collect="always"
+       x="-0.49411764"
+       width="1.9882353"
+       y="-0.082352942"
+       height="1.1647059"
+       id="filter5957">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.69878785"
+         id="feGaussianBlur5959" />
+    </filter>
+    <linearGradient
+       id="linearGradient12071"
+       inkscape:collect="always">
+      <stop
+         id="stop12073"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop12075"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient12071"
+       id="linearGradient1387"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9697914,0,0,0.951923,2.2265649,4.0339473)"
+       x1="21.941509"
+       y1="21.550869"
+       x2="21.941509"
+       y2="18.037588" />
+    <filter
+       inkscape:collect="always"
+       id="filter5745">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.8362597"
+         id="feGaussianBlur5747" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6227"
+       id="linearGradient6334"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-19.532826,1.7437184)"
+       x1="32.128025"
+       y1="13.789077"
+       x2="35.020981"
+       y2="13.789077" />
+    <filter
+       inkscape:collect="always"
+       x="-0.24242527"
+       width="1.4848505"
+       y="-0.047579074"
+       height="1.0951581"
+       id="filter6251">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.24444548"
+         id="feGaussianBlur6253" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6227">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6229" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6231" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6227"
+       id="linearGradient6233"
+       x1="35.004684"
+       y1="14.849737"
+       x2="33.004314"
+       y2="14.849737"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.6824037,1.125)" />
+    <linearGradient
+       id="linearGradient10591">
+      <stop
+         id="stop10593"
+         offset="0.0000000"
+         style="stop-color:#cad0c6;stop-opacity:1.0000000;" />
+      <stop
+         style="stop-color:#eaece9;stop-opacity:1.0000000;"
+         offset="0.50000000"
+         id="stop10599" />
+      <stop
+         id="stop10595"
+         offset="1.0000000"
+         style="stop-color:#c5cbc0;stop-opacity:1.0000000;" />
+    </linearGradient>
+    <linearGradient
+       y2="17.470011"
+       x2="27.192274"
+       y1="2.9136841"
+       x1="10.650842"
+       gradientTransform="translate(0,-1.926279)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient1392"
+       xlink:href="#linearGradient10591"
+       inkscape:collect="always" />
+    <filter
+       inkscape:collect="always"
+       x="-0.14143888"
+       width="1.2828778"
+       y="-1.5218824"
+       height="4.0437647"
+       id="filter6171">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="1.1889706"
+         id="feGaussianBlur6173" />
+    </filter>
+    <linearGradient
+       id="linearGradient6089">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6091" />
+      <stop
+         id="stop6097"
+         offset="0.5"
+         style="stop-color:#000000;stop-opacity:0.17171717;" />
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="1"
+         id="stop6093" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6089"
+       id="linearGradient6095"
+       x1="17.1875"
+       y1="20.09375"
+       x2="34"
+       y2="20.09375"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-1.25e-7,-0.4998777)" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6075"
+       id="radialGradient6085"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.5849057,0,8.4316038)"
+       cx="15.9375"
+       cy="20.3125"
+       fx="15.9375"
+       fy="20.3125"
+       r="3.3125" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6075">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6077" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6079" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6075"
+       id="radialGradient6081"
+       cx="15.9375"
+       cy="20.3125"
+       fx="15.9375"
+       fy="20.3125"
+       r="3.3125"
+       gradientTransform="matrix(1,0,0,0.5849057,0,8.4316038)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient5881">
+      <stop
+         id="stop5883"
+         offset="0"
+         style="stop-color:#fffac7;stop-opacity:1;" />
+      <stop
+         style="stop-color:#fff8b2;stop-opacity:1;"
+         offset="1"
+         id="stop5885" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5881"
+       id="linearGradient1591"
+       x1="24.875"
+       y1="21"
+       x2="24.75"
+       y2="17"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9706798,0,0,1.5,2.2052409,-7.4998763)" />
+    <linearGradient
+       id="linearGradient9845">
+      <stop
+         id="stop9847"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop9849"
+         offset="1.0000000"
+         style="stop-color:#ffffff;stop-opacity:0.49484536;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9845"
+       id="linearGradient1575"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.968931,0,0,1.1176137,2.2618789,-4.094888)"
+       x1="10.907269"
+       y1="25.002281"
+       x2="30.875446"
+       y2="36.127281" />
+    <linearGradient
+       id="linearGradient6215">
+      <stop
+         id="stop6217"
+         offset="0"
+         style="stop-color:#ead200;stop-opacity:1;" />
+      <stop
+         style="stop-color:#fff16a;stop-opacity:1;"
+         offset="0.20999999"
+         id="stop6219" />
+      <stop
+         id="stop6221"
+         offset="0.83999997"
+         style="stop-color:#b5a300;stop-opacity:1;" />
+      <stop
+         id="stop6223"
+         offset="1"
+         style="stop-color:#e8d000;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6215"
+       id="linearGradient6225"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9715125,0,0,1.1298556,2.1851679,-5.9390134)"
+       x1="6.72682"
+       y1="32.161697"
+       x2="40.938126"
+       y2="32.161697" />
+    <filter
+       inkscape:collect="always"
+       x="-0.074990261"
+       width="1.1499805"
+       y="-0.47181373"
+       height="1.9436275"
+       id="filter6051">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="1.4154412"
+         id="feGaussianBlur6053" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="690"
+     inkscape:window-x="1037"
+     inkscape:window-y="25" />
+  <metadata
+     id="metadata7378">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <rect
+       style="opacity:0.45882353;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter6051);enable-background:accumulate"
+       id="rect5961"
+       width="37.75"
+       height="6"
+       x="6.25"
+       y="39.75"
+       rx="3.1708715"
+       ry="1.9748279"
+       transform="matrix(1.0264901,0,0,1,-0.1655631,1.2231888e-4)" />
+    <path
+       style="fill:url(#linearGradient6225);fill-opacity:1;fill-rule:evenodd;stroke:#7d6400;stroke-width:0.99999952;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 10.671306,17.500122 C 20.465852,16.056723 30.364614,16.280806 40.32558,17.500122 C 41.528484,17.500122 42.496886,18.543692 42.496886,19.839966 L 42.496886,43.160278 C 42.496886,44.456552 41.465984,45.312622 40.32558,45.500122 C 29.998397,46.708725 21.143531,46.699184 10.671306,45.500122 C 9.2809019,45.062622 8.4999999,44.456552 8.4999999,43.160278 L 8.4999999,19.839966 C 8.4999999,18.543692 9.4684019,17.500122 10.671306,17.500122 z"
+       id="rect1314"
+       sodipodi:nodetypes="ccccccccc" />
+    <g
+       id="g4695"
+       transform="translate(-1.25e-7,1.2231888e-4)">
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path6193"
+         d="M 41.940271,24.444505 C 41.542065,25.774817 37.406119,26.114917 36.638195,26.217936 C 36.638195,26.217936 20.32932,26.698408 20.32932,26.698408 C 20.32932,26.698408 36.59256,26.857542 36.59256,26.857542 C 37.418473,26.760419 41.811211,26.960931 42.02866,25.151612 L 41.940271,24.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 41.940271,26.444505 C 41.542065,27.774817 37.406119,28.114917 36.638195,28.217936 C 36.638195,28.217936 17.57932,28.698408 17.57932,28.698408 C 17.57932,28.698408 36.59256,28.857542 36.59256,28.857542 C 37.418473,28.760419 41.811211,28.960931 42.02866,27.151612 L 41.940271,26.444505 z"
+         id="path4678"
+         sodipodi:nodetypes="cscscc" />
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path4680"
+         d="M 41.940271,28.444505 C 41.542065,29.774817 37.406119,30.114917 36.638195,30.217936 C 36.638195,30.217936 20.32932,30.698408 20.32932,30.698408 C 20.32932,30.698408 36.59256,30.857542 36.59256,30.857542 C 37.418473,30.760419 41.811211,30.960931 42.02866,29.151612 L 41.940271,28.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 41.940271,30.444505 C 41.542065,31.774817 37.406119,32.114917 36.638195,32.217936 C 36.638195,32.217936 25.57932,32.698408 25.57932,32.698408 C 25.57932,32.698408 36.59256,32.857542 36.59256,32.857542 C 37.418473,32.760419 41.811211,32.960931 42.02866,31.151612 L 41.940271,30.444505 z"
+         id="path4682"
+         sodipodi:nodetypes="cscscc" />
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path4684"
+         d="M 41.940271,32.444505 C 41.542065,33.774817 37.406119,34.114917 36.638195,34.217936 C 36.638195,34.217936 20.32932,34.698408 20.32932,34.698408 C 20.32932,34.698408 36.59256,34.857542 36.59256,34.857542 C 37.418473,34.760419 41.811211,34.960931 42.02866,33.151612 L 41.940271,32.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 41.940271,34.444505 C 41.542065,35.774817 37.406119,36.114917 36.638195,36.217936 C 36.638195,36.217936 17.89182,36.698408 17.89182,36.698408 C 17.89182,36.698408 36.59256,36.857542 36.59256,36.857542 C 37.418473,36.760419 41.811211,36.960931 42.02866,35.151612 L 41.940271,34.444505 z"
+         id="path4686"
+         sodipodi:nodetypes="cscscc" />
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path4688"
+         d="M 41.940271,36.444505 C 41.542065,37.774817 37.406119,38.114917 36.638195,38.217936 C 36.638195,38.217936 22.64182,38.698408 22.64182,38.698408 C 22.64182,38.698408 36.59256,38.857542 36.59256,38.857542 C 37.418473,38.760419 41.811211,38.960931 42.02866,37.151612 L 41.940271,36.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 41.940271,38.444505 C 41.542065,39.774817 37.406119,40.114917 36.638195,40.217936 C 36.638195,40.217936 28.20432,40.698408 28.20432,40.698408 C 28.20432,40.698408 36.59256,40.857542 36.59256,40.857542 C 37.418473,40.760419 41.811211,40.960931 42.02866,39.151612 L 41.940271,38.444505 z"
+         id="path4690"
+         sodipodi:nodetypes="cscscc" />
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path4692"
+         d="M 41.940271,40.444505 C 41.542065,41.774817 37.406119,42.114917 36.638195,42.217936 C 36.638195,42.217936 20.32932,42.698408 20.32932,42.698408 C 20.32932,42.698408 36.59256,42.857542 36.59256,42.857542 C 37.418473,42.760419 41.811211,42.960931 42.02866,41.151612 L 41.940271,40.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    </g>
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient1575);stroke-width:1.00000024;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:0.60109289"
+       d="M 10.749588,18.995483 L 40.254432,18.995483 C 40.946703,18.995483 41.50402,19.581598 41.50402,20.309642 L 41.50402,43.185963 C 41.50402,43.914007 41.009203,44.250122 40.254432,44.500122 C 30.606984,45.703735 21.084536,45.700943 10.749588,44.500122 C 10.057316,44.250122 9.4999999,43.914007 9.4999999,43.185963 L 9.4999999,20.309642 C 9.4999999,19.581598 10.057316,18.995483 10.749588,18.995483 z"
+       id="rect6903"
+       sodipodi:nodetypes="ccccccccc" />
+    <path
+       style="fill:url(#linearGradient1591);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 10.607725,18.000122 C 20.536946,16.539375 30.466165,16.799553 40.395386,18.000122 C 41.286066,18.000122 42.003112,18.717168 42.003112,19.607847 L 42.003112,22.392397 C 42.003112,23.283076 41.286066,24.000122 40.395386,24.000122 C 30.033657,24.690222 20.499962,24.443932 10.607725,24.000122 C 9.7170449,24.000122 8.9999999,23.283076 8.9999999,22.392397 L 8.9999999,19.607847 C 8.9999999,18.717168 9.7170449,18.000122 10.607725,18.000122 z"
+       id="rect1460"
+       sodipodi:nodetypes="ccccccccc" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.36470588;fill:url(#radialGradient6081);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="path6073"
+       sodipodi:cx="15.9375"
+       sodipodi:cy="20.3125"
+       sodipodi:rx="3.3125"
+       sodipodi:ry="1.9375"
+       d="M 19.25,20.3125 A 3.3125,1.9375 0 1 1 12.625,20.3125 A 3.3125,1.9375 0 1 1 19.25,20.3125 z"
+       transform="matrix(1.3870968,0,0,1.3870968,-6.1693551,-7.8627805)" />
+    <path
+       transform="matrix(1.3870968,0,0,1.3870968,12.955645,-7.8627805)"
+       d="M 19.25,20.3125 A 3.3125,1.9375 0 1 1 12.625,20.3125 A 3.3125,1.9375 0 1 1 19.25,20.3125 z"
+       sodipodi:ry="1.9375"
+       sodipodi:rx="3.3125"
+       sodipodi:cy="20.3125"
+       sodipodi:cx="15.9375"
+       id="path6083"
+       style="opacity:0.34705882;fill:url(#radialGradient6085);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       sodipodi:type="arc" />
+    <rect
+       style="opacity:0.48235294;fill:url(#linearGradient6095);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter6171);enable-background:accumulate"
+       id="rect6087"
+       width="16.8125"
+       height="1.5625"
+       x="17.187498"
+       y="18.812622"
+       rx="0.78125"
+       ry="0.78125" />
+    <g
+       id="g1387"
+       inkscape:r_cx="true"
+       inkscape:r_cy="true"
+       transform="matrix(0.8915815,0,0,1,4.0426599,-0.4919207)">
+      <path
+         inkscape:r_cy="true"
+         inkscape:r_cx="true"
+         sodipodi:nodetypes="cczcccczccc"
+         id="path2086"
+         d="M 10.6402,20.234846 L 10.6402,14.5 C 10.6402,6.6298666 15.897609,2.8910066 24.020027,2.9892921 C 32.18664,3.0875777 37.5,6.5372782 37.5,14.5 L 37.5,20.484846 C 37.5,22.439075 32.009299,22.687797 32.009299,20.484846 L 32.009299,16.5 C 32.009299,14.5 32.577752,8.028147 24.077241,8.028147 C 15.646828,8.028147 16.261091,14.539885 16.293782,16.492026 L 16.293782,20.268524 C 16.293782,22.623144 10.6402,22.613133 10.6402,20.234846 z"
+         style="fill:url(#linearGradient1392);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.05905688;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <path
+         style="opacity:0.18235294;fill:url(#linearGradient6233);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter6251)"
+         d="M 34.687087,10.837069 L 35.951035,10.962069 C 36.878274,13.784802 36.687087,20.472482 36.687087,20.472482 C 36.624587,21.597482 34.655837,21.003732 34.687087,20.472482 L 34.687087,10.837069 z"
+         id="rect1345"
+         sodipodi:nodetypes="ccccc"
+         inkscape:r_cx="true"
+         inkscape:r_cy="true" />
+      <path
+         inkscape:r_cy="true"
+         inkscape:r_cx="true"
+         sodipodi:nodetypes="ccccc"
+         id="path6332"
+         d="M 12.926606,11.544175 L 13.298325,11.71337 C 15.018656,12.768336 15.471857,21.0912 15.471857,21.0912 C 15.409357,22.2162 13.440607,21.62245 13.471857,21.0912 C 13.471857,21.0912 13.850077,14.22056 12.926606,11.544175 z"
+         style="opacity:0.14117647;fill:url(#linearGradient6334);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter6251)"
+         transform="matrix(-1,0,0,1,29.05878,-0.6187184)" />
+    </g>
+    <path
+       style="opacity:0.62352941;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter5745);enable-background:accumulate"
+       d="M 15.375,19.625122 L 15.5,12.125122 C 15.5,2.2487493 34.187499,1.4487223 34.187499,13.000122 L 34.187499,19.875122"
+       id="path5675"
+       sodipodi:nodetypes="cccc" />
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient1387);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 10.663938,20.692602 L 40.339178,20.692602 C 40.983999,20.692602 41.503116,21.181796 41.503116,21.78945 L 41.503116,22.451524 C 41.503116,23.059178 40.983999,23.548372 40.339178,23.548372 C 30.539744,24.748444 20.629609,24.821884 10.663938,23.548372 C 10.019116,23.548372 9.4999999,23.059178 9.4999999,22.451524 L 9.4999999,21.78945 C 9.4999999,21.181796 10.019116,20.692602 10.663938,20.692602 z"
+       id="rect1593"
+       sodipodi:nodetypes="ccccccccc" />
+    <rect
+       style="opacity:0.29411765;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter5957);enable-background:accumulate"
+       id="rect5887"
+       width="2.8284271"
+       height="16.970562"
+       x="14.594036"
+       y="23.226137"
+       rx="1.6077254"
+       ry="1.6077254"
+       transform="matrix(1.9722718,0,0,1.2283366,-15.56437,-5.3032539)" />
+    <g
+       id="g6067"
+       transform="translate(0.8838829,-0.5302077)">
+      <path
+         d="M 21.213204,6.2806997 A 3.1819806,3.1819806 0 1 1 14.849243,6.2806997 A 3.1819806,3.1819806 0 1 1 21.213204,6.2806997 z"
+         sodipodi:ry="3.1819806"
+         sodipodi:rx="3.1819806"
+         sodipodi:cy="6.2806997"
+         sodipodi:cx="18.031223"
+         id="path6055"
+         style="opacity:1;fill:url(#radialGradient6071);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         sodipodi:type="arc" />
+      <path
+         transform="matrix(0.4343344,0,0,0.4343344,10.199642,3.5527756)"
+         sodipodi:type="arc"
+         style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         id="path6065"
+         sodipodi:cx="18.031223"
+         sodipodi:cy="6.2806997"
+         sodipodi:rx="3.1819806"
+         sodipodi:ry="3.1819806"
+         d="M 21.213204,6.2806997 A 3.1819806,3.1819806 0 1 1 14.849243,6.2806997 A 3.1819806,3.1819806 0 1 1 21.213204,6.2806997 z" />
+    </g>
+    <path
+       style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter6328);enable-background:accumulate"
+       d="M 21.715689,3.9563403 C 24.168434,3.3660463 26.768803,3.3281143 29.32858,3.9563403 C 31.016329,4.3705523 30.561969,5.8454783 29.32858,5.4998383 C 26.795998,4.7901193 24.232097,4.9798893 21.715689,5.4998383 C 19.936529,5.8674553 20.076197,4.3509113 21.715689,3.9563403 z"
+       id="rect6257"
+       sodipodi:nodetypes="cssss" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-eject.svg b/icons/PyHoca/scalable/media-eject.svg
new file mode 100644
index 0000000..ac26f17
--- /dev/null
+++ b/icons/PyHoca/scalable/media-eject.svg
@@ -0,0 +1,270 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7204"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7206">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7960">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop7962" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7964" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7960"
+       id="linearGradient7966"
+       x1="24.839811"
+       y1="22.896124"
+       x2="30.24213"
+       y2="42.93504"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient5590"
+       inkscape:collect="always">
+      <stop
+         id="stop5592"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop5594"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5590"
+       id="linearGradient7393"
+       gradientUnits="userSpaceOnUse"
+       x1="20.171806"
+       y1="6.452569"
+       x2="25.110491"
+       y2="31.468895" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7973">
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0"
+         id="stop7975" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop7977" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7973"
+       id="linearGradient7979"
+       x1="27.193972"
+       y1="7.9997501"
+       x2="27.107143"
+       y2="37.738838"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient5578"
+       inkscape:collect="always">
+      <stop
+         id="stop5580"
+         offset="0"
+         style="stop-color:#c22f2f;stop-opacity:1" />
+      <stop
+         id="stop5582"
+         offset="1"
+         style="stop-color:#e15f5f;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5578"
+       id="linearGradient7391"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-1e-6,0.9375)"
+       x1="24.99975"
+       y1="38.153625"
+       x2="20.121071"
+       y2="7" />
+    <linearGradient
+       id="linearGradient10816">
+      <stop
+         id="stop10818"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:0.3137255;" />
+      <stop
+         id="stop10820"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0.31" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient10816"
+       id="linearGradient7389"
+       gradientUnits="userSpaceOnUse"
+       x1="22.18045"
+       y1="13.177"
+       x2="24.81955"
+       y2="25.137793" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7983">
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0"
+         id="stop7985" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop7987" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7983"
+       id="linearGradient7989"
+       x1="24"
+       y1="7.8987346"
+       x2="23.938574"
+       y2="39.999748"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7968">
+      <stop
+         style="stop-color:#e15f5f;stop-opacity:1"
+         offset="0"
+         id="stop7970" />
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="1"
+         id="stop7972" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7968"
+       id="linearGradient7974"
+       x1="19.959141"
+       y1="8.2017803"
+       x2="25.111168"
+       y2="40.089279"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.3137255;"
+         offset="0"
+         id="stop7579" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.31"
+         offset="1"
+         id="stop7581" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient7386"
+       gradientUnits="userSpaceOnUse"
+       x1="23.41782"
+       y1="31.488117"
+       x2="23.67593"
+       y2="36.456322" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="690"
+     inkscape:window-x="220"
+     inkscape:window-y="172" />
+  <metadata
+     id="metadata7209">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       id="g7422"
+       transform="translate(-88,2.5e-4)" />
+    <g
+       id="g7377"
+       transform="translate(0,2.5e-4)">
+      <path
+         sodipodi:nodetypes="ccccccccc"
+         id="path7342"
+         d="M 9.125,30.90625 C 7.9751604,30.90625 6.96875,31.899555 6.96875,33.0625 L 6.96875,36.8125 C 6.96875,37.975447 7.9751547,38.96875 9.125,38.96875 L 38.875,38.96875 C 40.02484,38.96875 41.031253,37.97545 41.03125,36.8125 L 41.03125,33.0625 C 41.03125,31.89955 40.024847,30.90625 38.875,30.90625 L 9.125,30.90625 z"
+         style="opacity:0.4;fill:url(#linearGradient7386);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible;enable-background:accumulate" />
+      <rect
+         ry="0.63725162"
+         rx="0.62257558"
+         y="32.4375"
+         x="8.499999"
+         height="5"
+         width="31.000002"
+         id="rect4595"
+         style="fill:url(#linearGradient7974);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7989);stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible;enable-background:accumulate" />
+      <path
+         sodipodi:nodetypes="cccsccsccc"
+         id="path7339"
+         d="M 23.78125,6.90625 C 23.321479,6.9301871 22.896874,7.1597036 22.625,7.53125 L 8.125,27.5625 C 7.7817975,28.030059 7.7321882,28.651386 7.9968518,29.16748 C 8.2615154,29.683574 8.7950298,30.005862 9.375,30 L 38.75,30 C 39.324346,29.994086 39.847091,29.66728 40.10396,29.153542 C 40.360829,28.639805 40.308626,28.025525 39.96875,27.5625 L 25.09375,7.53125 C 24.789314,7.1153075 24.296053,6.8804216 23.78125,6.90625 z"
+         style="opacity:0.4;fill:url(#linearGradient7389);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible;enable-background:accumulate" />
+      <path
+         id="path5566"
+         d="M 9.374999,28.46875 L 38.749999,28.46875 L 23.874999,8.4374999 L 9.374999,28.46875 z"
+         style="fill:url(#linearGradient7391);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7979);stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible;enable-background:accumulate" />
+      <path
+         transform="matrix(1.025279,0,0,1.0257353,-0.6078818,-0.5474494)"
+         d="M 23.875,10.34375 L 11.5625,27.34375 L 36.53125,27.34375 L 23.875,10.34375 z"
+         inkscape:href="#path5566"
+         id="path5586"
+         style="opacity:0.5;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7393);stroke-width:0.97512734;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible;enable-background:accumulate"
+         xlink:href="#path5566"
+         inkscape:original="M 23.875 8.4375 L 9.375 28.46875 L 38.75 28.46875 L 23.875 8.4375 z "
+         inkscape:radius="-1.116814"
+         sodipodi:type="inkscape:offset" />
+      <rect
+         style="opacity:0.4;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7966);stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible;enable-background:accumulate"
+         id="rect5598"
+         width="29"
+         height="3"
+         x="9.500001"
+         y="33.4375" />
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-playback-pause.svg b/icons/PyHoca/scalable/media-playback-pause.svg
new file mode 100644
index 0000000..1d86b6f
--- /dev/null
+++ b/icons/PyHoca/scalable/media-playback-pause.svg
@@ -0,0 +1,320 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48"
+   height="48"
+   id="svg7854"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docname="media-playback-pause.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/lapo/Desktop/media-icons.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs7856">
+    <linearGradient
+       id="linearGradient3227"
+       inkscape:collect="always">
+      <stop
+         id="stop3229"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1" />
+      <stop
+         id="stop3231"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3217">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop3219" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3221" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3196">
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="0"
+         id="stop3198" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1"
+         id="stop3200" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         offset="0"
+         id="stop7579"
+         style="stop-color:#000000;stop-opacity:0.3137255;" />
+      <stop
+         offset="1"
+         id="stop7581"
+         style="stop-color:#000000;stop-opacity:0.31" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient7344">
+      <stop
+         id="stop7346"
+         offset="0"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+      <stop
+         id="stop7348"
+         offset="1"
+         style="stop-color:#babdb6;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7344"
+       id="linearGradient3192"
+       x1="-13"
+       y1="3"
+       x2="-13"
+       y2="45"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3196"
+       id="linearGradient3194"
+       x1="-39"
+       y1="3"
+       x2="-39"
+       y2="45"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient3215"
+       gradientUnits="userSpaceOnUse"
+       x1="-27.669012"
+       y1="13.129915"
+       x2="-24.330988"
+       y2="25.587595" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3217"
+       id="linearGradient3223"
+       x1="-13"
+       y1="0"
+       x2="-13"
+       y2="48"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227"
+       id="linearGradient3225"
+       x1="-39"
+       y1="0"
+       x2="-39"
+       y2="48"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#000000"
+     borderopacity="1"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="11.313708"
+     inkscape:cx="-2.3582699"
+     inkscape:cy="32.957461"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="48px"
+     height="48px"
+     inkscape:showpageshadow="true"
+     inkscape:window-width="1678"
+     inkscape:window-height="978"
+     inkscape:window-x="0"
+     inkscape:window-y="43"
+     showgrid="true"
+     inkscape:grid-points="true"
+     showborder="true"
+     showguides="false"
+     inkscape:guide-bbox="true"
+     borderlayer="true">
+    <sodipodi:guide
+       orientation="horizontal"
+       position="13.125"
+       id="guide7377" />
+    <sodipodi:guide
+       orientation="horizontal"
+       position="5.4800776"
+       id="guide7379" />
+    <sodipodi:guide
+       orientation="horizontal"
+       position="35"
+       id="guide7492" />
+    <sodipodi:guide
+       orientation="horizontal"
+       position="48"
+       id="guide7046" />
+    <sodipodi:guide
+       orientation="horizontal"
+       position="-17.5"
+       id="guide7233" />
+    <sodipodi:guide
+       orientation="horizontal"
+       position="-29"
+       id="guide7235" />
+    <sodipodi:guide
+       orientation="horizontal"
+       position="22.097087"
+       id="guide7556" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="-76.125"
+       id="guide7644" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="-26.125"
+       id="guide7646" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="24"
+       id="guide7648" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="-125.28125"
+       id="guide7665" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="-175.125"
+       id="guide7667" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="-225.83223"
+       id="guide7685" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="-326.06462"
+       id="guide7695" />
+    <inkscape:grid
+       id="GridFromPre046Settings"
+       type="xygrid"
+       originx="0px"
+       originy="0px"
+       spacingx="0.5px"
+       spacingy="0.5px"
+       color="#0000ff"
+       empcolor="#0000ff"
+       opacity="0.2"
+       empopacity="0.4"
+       empspacing="2"
+       visible="true"
+       enabled="true" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7859">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:creator>
+          <cc:Agent>
+            <dc:title>Lapo Calamandrei</dc:title>
+          </cc:Agent>
+        </dc:creator>
+        <dc:source />
+        <cc:license
+           rdf:resource="http://creativecommons.org/licenses/GPL/2.0/" />
+        <dc:title>Pause</dc:title>
+        <dc:subject>
+          <rdf:Bag>
+            <rdf:li>playback</rdf:li>
+            <rdf:li>pause</rdf:li>
+          </rdf:Bag>
+        </dc:subject>
+      </cc:Work>
+      <cc:License
+         rdf:about="http://creativecommons.org/licenses/GPL/2.0/">
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/Reproduction" />
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/Distribution" />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/Notice" />
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/ShareAlike" />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/SourceCode" />
+      </cc:License>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <g
+       id="g7104"
+       transform="translate(50,0)">
+      <path
+         d="M -37.03125,11.25 C -37.937434,11.25 -38.75,12.062566 -38.75,12.96875 L -38.75,35.03125 C -38.75,35.937438 -37.937447,36.750007 -37.03125,36.75 L -29.96875,36.75 C -29.062569,36.75 -28.249997,35.937439 -28.25,35.03125 L -28.25,12.96875 C -28.25,12.062566 -29.062566,11.25 -29.96875,11.25 L -37.03125,11.25 z M -22.03125,11.25 C -22.937434,11.25 -23.75,12.062566 -23.75,12.96875 L -23.75,35.03125 C -23.75,35.937438 -22.937447,36.750007 -22.03125,36.75 L -14.96875,36.75 C -14.062569,36.75 -13.25,35.937433 -13.25,35.03125 L -13.25,12.96875 C -13.25,12.062566 -14.062566,11.25 -14.96875,11.25 L -22.03125,11.25 z"
+         id="path7594"
+         style="opacity:0.3;fill:url(#linearGradient3215);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992000000000;stroke-opacity:1"
+         inkscape:original="M -37.03125 12.5 C -37.295499 12.5 -37.5 12.704501 -37.5 12.96875 L -37.5 35.03125 C -37.5 35.295499 -37.295498 35.500002 -37.03125 35.5 L -29.96875 35.5 C -29.704501 35.5 -29.499999 35.2955 -29.5 35.03125 L -29.5 12.96875 C -29.5 12.704501 -29.704501 12.5 -29.96875 12.5 L -37.03125 12.5 z M -22.03125 12.5 C -22.295499 12.5 -22.5 12.704501 -22.5 12.96875 L -22.5 35.03125 C -22.5 35.295499 -22.295498 35.500002 -22.03125 35.5 L -14.96875 35.5 C -14.704501 35.5 -14.5 35.2955 -14.5 35.03125 L -14.5 12.96875 C -14.5 12.704501 -14.704501 12.5 -14.96875 12.5 L -22.03125 12.5 z "
+         inkscape:radius="1.2442297"
+         sodipodi:type="inkscape:offset"
+         transform="matrix(1.7254902,0,0,1.7254902,18.862745,-17.411764)" />
+      <g
+         id="g7451">
+        <rect
+           style="fill:url(#linearGradient3194);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992000000000;stroke-opacity:1"
+           id="rect7865"
+           width="15"
+           height="41"
+           x="-46.5"
+           y="3.5"
+           rx="0.47698301"
+           ry="0.47698301" />
+        <rect
+           ry="0.47698301"
+           rx="0.47698301"
+           y="3.5"
+           x="-20.5"
+           height="41"
+           width="15"
+           id="rect7879"
+           style="fill:url(#linearGradient3192);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992000000000;stroke-opacity:1" />
+        <rect
+           style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3225);stroke-width:0.99999987999999995;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992000000000;stroke-opacity:1"
+           id="rect7867"
+           width="13"
+           height="39"
+           x="-45.5"
+           y="4.5" />
+        <rect
+           style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3223);stroke-width:0.99999987999999995;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992000000000;stroke-opacity:1"
+           id="rect7889"
+           width="13"
+           height="39"
+           x="-19.5"
+           y="4.5" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-playback-start.svg b/icons/PyHoca/scalable/media-playback-start.svg
new file mode 100644
index 0000000..ef0fbff
--- /dev/null
+++ b/icons/PyHoca/scalable/media-playback-start.svg
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7196"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="media-playback-start.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7198">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3203">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3205" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3207" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3203"
+       id="linearGradient3209"
+       x1="-183"
+       y1="2"
+       x2="-183"
+       y2="46"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7344">
+      <stop
+         id="stop7346"
+         offset="0"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+      <stop
+         id="stop7348"
+         offset="1"
+         style="stop-color:#babdb6;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7344"
+       id="linearGradient3197"
+       x1="-180"
+       y1="4"
+       x2="-180"
+       y2="44"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient9792">
+      <stop
+         id="stop9794"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:0.3137255;" />
+      <stop
+         id="stop9796"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0.31" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9792"
+       id="linearGradient3201"
+       gradientUnits="userSpaceOnUse"
+       x1="-178.27779"
+       y1="13.096572"
+       x2="-170.07779"
+       y2="31.289717"
+       gradientTransform="matrix(1.0975609,0,0,1.0993152,217.67073,-2.396871)" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="306"
+     inkscape:window-y="333" />
+  <metadata
+     id="metadata7201">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       sodipodi:nodetypes="ccccc"
+       id="path3199"
+       d="M 2,45.973 L 2,2.00039 L 8.2003814,5.0316876 L 47,24.00039 L 2,45.973 z"
+       style="opacity:0.3;fill:url(#linearGradient3201);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999981999999998;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992000000000;stroke-opacity:1" />
+    <g
+       id="g7138"
+       transform="translate(200,3.9e-4)">
+      <g
+         id="g7515">
+        <path
+           sodipodi:nodetypes="cccc"
+           id="path7812"
+           d="M -196.5,43.5 L -196.5,4.5 L -156.5,24 L -196.5,43.5 z"
+           style="fill:url(#linearGradient3197);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999982;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+        <path
+           sodipodi:nodetypes="cccc"
+           id="path7828"
+           d="M -195.46875,41.875 L -195.46875,6.109375 L -158.79688,24 L -195.46875,41.875 z"
+           style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3209);stroke-width:0.99999982;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-playback-stop.svg b/icons/PyHoca/scalable/media-playback-stop.svg
new file mode 100644
index 0000000..e2b2d09
--- /dev/null
+++ b/icons/PyHoca/scalable/media-playback-stop.svg
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7182"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="media-playback-stop.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7184">
+    <linearGradient
+       id="linearGradient3192">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3194" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3196" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3192"
+       id="linearGradient3198"
+       x1="23.393908"
+       y1="13.000002"
+       x2="23"
+       y2="48"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7344"
+       inkscape:collect="always">
+      <stop
+         id="stop7346"
+         offset="0"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+      <stop
+         id="stop7348"
+         offset="1"
+         style="stop-color:#babdb6;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7344"
+       id="linearGradient3190"
+       x1="24"
+       y1="12"
+       x2="24"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.3137255;"
+         offset="0"
+         id="stop7579" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.31"
+         offset="1"
+         id="stop7581" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient7469"
+       gradientUnits="userSpaceOnUse"
+       x1="22.28924"
+       y1="12.965953"
+       x2="25.71076"
+       y2="25.735243" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="9.8994949"
+     inkscape:cx="23.916316"
+     inkscape:cy="19.35555"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="0"
+     inkscape:window-y="333" />
+  <metadata
+     id="metadata7187">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       id="g7422"
+       transform="translate(-88,0)" />
+    <g
+       id="g7097">
+      <path
+         d="M 13,11 C 11.942666,11 11,11.942666 11,13 L 11,35 C 11,36.057334 11.942653,37.000008 13,37 L 35,37 C 36.057331,37 37.000008,36.057345 37,35 L 37,13 C 37,11.942669 36.057333,11 35,11 L 13,11 z"
+         id="path7573"
+         style="opacity:0.3;fill:url(#linearGradient7469);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999994000000003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992000000000;stroke-opacity:1"
+         inkscape:original="M 13 12.5 C 12.718439 12.5 12.5 12.718439 12.5 13 L 12.5 35 C 12.5 35.281561 12.718439 35.500002 13 35.5 L 35 35.5 C 35.281561 35.5 35.500002 35.281562 35.5 35 L 35.5 13 C 35.5 12.718439 35.281562 12.5 35 12.5 L 13 12.5 z "
+         inkscape:radius="1.4999211"
+         sodipodi:type="inkscape:offset" />
+      <g
+         id="g7427">
+        <rect
+           style="fill:url(#linearGradient3190);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+           id="rect7340"
+           width="23.000002"
+           height="23.000002"
+           x="12.5"
+           y="12.5"
+           rx="0.50823301"
+           ry="0.50823301" />
+        <rect
+           style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3198);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992000000000;stroke-opacity:1"
+           id="rect7354"
+           width="20.999998"
+           height="20.999998"
+           x="13.500002"
+           y="13.500002" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-record.svg b/icons/PyHoca/scalable/media-record.svg
new file mode 100644
index 0000000..2d98584
--- /dev/null
+++ b/icons/PyHoca/scalable/media-record.svg
@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7964"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7966">
+    <linearGradient
+       id="linearGradient5172"
+       inkscape:collect="always">
+      <stop
+         id="stop5174"
+         offset="0"
+         style="stop-color:white;stop-opacity:1;" />
+      <stop
+         id="stop5176"
+         offset="1"
+         style="stop-color:white;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5172"
+       id="linearGradient8323"
+       gradientUnits="userSpaceOnUse"
+       x1="8.9317284"
+       y1="2.0178134"
+       x2="13.458839"
+       y2="26.431587" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7953">
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0"
+         id="stop7956" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop7958" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7953"
+       id="linearGradient7960"
+       x1="14.317019"
+       y1="8.7555399"
+       x2="14.326317"
+       y2="23.513041"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient5167">
+      <stop
+         id="stop5169"
+         offset="0"
+         style="stop-color:#e78181;stop-opacity:1" />
+      <stop
+         style="stop-color:#e15f5f;stop-opacity:1"
+         offset="0.25"
+         id="stop7955" />
+      <stop
+         id="stop7957"
+         offset="0.68000001"
+         style="stop-color:#c22f2f;stop-opacity:1" />
+      <stop
+         id="stop5171"
+         offset="1"
+         style="stop-color:#a40000;stop-opacity:1" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5167"
+       id="radialGradient7951"
+       cx="15.865708"
+       cy="8.7555399"
+       fx="15.865708"
+       fy="8.7555399"
+       r="7.3787756"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-7.992859e-8,2.1425397,-5.4504165,-2.0325241e-7,63.587049,-25.23737)" />
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.3137255;"
+         offset="0"
+         id="stop7579" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.31"
+         offset="1"
+         id="stop7581" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient8317"
+       gradientUnits="userSpaceOnUse"
+       x1="15.011773"
+       y1="10.883683"
+       x2="16.657505"
+       y2="17.024479" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="690"
+     inkscape:window-x="656"
+     inkscape:window-y="361" />
+  <metadata
+     id="metadata7969">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       id="g7170"
+       transform="translate(350.00028,6.4088923e-8)">
+      <path
+         sodipodi:type="arc"
+         style="opacity:0.4;fill:url(#linearGradient8317);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.52702755;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+         id="path7691"
+         sodipodi:cx="15.865708"
+         sodipodi:cy="16.134291"
+         sodipodi:rx="7.115262"
+         sodipodi:ry="7.115262"
+         d="M 22.98097,16.134291 A 7.115262,7.115262 0 1 1 8.7504463,16.134291 A 7.115262,7.115262 0 1 1 22.98097,16.134291 z"
+         transform="matrix(2.1074616,0,0,2.1078593,-359.43551,-10.006786)" />
+      <g
+         id="g7564">
+        <path
+           sodipodi:type="arc"
+           style="fill:url(#radialGradient7951);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient7960);stroke-width:0.52702701;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+           id="path7968"
+           sodipodi:cx="15.865708"
+           sodipodi:cy="16.134291"
+           sodipodi:rx="7.115262"
+           sodipodi:ry="7.115262"
+           d="M 22.98097,16.134291 A 7.115262,7.115262 0 1 1 8.7504463,16.134291 A 7.115262,7.115262 0 1 1 22.98097,16.134291 z"
+           transform="matrix(1.897257,0,0,1.897615,-356.10046,-6.6146433)" />
+        <path
+           transform="matrix(1.7591324,0,0,1.7580929,-353.90899,-4.3562887)"
+           d="M 22.98097,16.134291 A 7.115262,7.115262 0 1 1 8.7504463,16.134291 A 7.115262,7.115262 0 1 1 22.98097,16.134291 z"
+           sodipodi:ry="7.115262"
+           sodipodi:rx="7.115262"
+           sodipodi:cy="16.134291"
+           sodipodi:cx="15.865708"
+           id="path7972"
+           style="opacity:0.54494413;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient8323);stroke-width:0.56863129;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+           sodipodi:type="arc" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-seek-backward.svg b/icons/PyHoca/scalable/media-seek-backward.svg
new file mode 100644
index 0000000..7ed4a7a
--- /dev/null
+++ b/icons/PyHoca/scalable/media-seek-backward.svg
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7209"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7211">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3211">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3213" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3215" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3211"
+       id="linearGradient3219"
+       x1="29"
+       y1="12"
+       x2="29"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient3205"
+       inkscape:collect="always">
+      <stop
+         id="stop3207"
+         offset="0"
+         style="stop-color:#babdb6;stop-opacity:1" />
+      <stop
+         id="stop3209"
+         offset="1"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3205"
+       id="linearGradient3203"
+       x1="29"
+       y1="36"
+       x2="29"
+       y2="12"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient3221"
+       inkscape:collect="always">
+      <stop
+         id="stop3223"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1" />
+      <stop
+         id="stop3225"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3221"
+       id="linearGradient3217"
+       x1="29"
+       y1="12"
+       x2="29"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3195">
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="0"
+         id="stop3197" />
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="1"
+         id="stop3199" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3195"
+       id="linearGradient3201"
+       x1="29"
+       y1="36"
+       x2="29"
+       y2="12"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.3137255;"
+         offset="0"
+         id="stop7579" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.5"
+         offset="1"
+         id="stop7581" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient8098"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-1,0,0,1,-250.51531,0)"
+       x1="-127.01692"
+       y1="12.838128"
+       x2="-123.49838"
+       y2="25.969481" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="287"
+     inkscape:window-y="163" />
+  <metadata
+     id="metadata7214">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       id="g7145"
+       transform="translate(250.00003,1.5827295e-4)">
+      <path
+         transform="matrix(-1,0,0,1,-351.01531,0)"
+         d="M -143.75,11.53125 C -144.47126,11.646642 -145.00141,12.269567 -145,13 L -145,35 C -145.00337,35.536848 -144.71663,36.033688 -144.25011,36.299347 C -143.78358,36.565005 -143.20998,36.558085 -142.75,36.28125 L -127,26.9375 L -127,35 C -127.00337,35.536848 -126.71663,36.033688 -126.25011,36.299347 C -125.78358,36.565005 -125.20998,36.558085 -124.75,36.28125 L -106.25,25.28125 C -105.79494,25.014944 -105.51528,24.527253 -105.51528,24 C -105.51528,23.472747 -105.79494,22.985056 -106.25,22.71875 L -124.75,11.71875 C -125.20998,11.441915 -125.78358,11.434995 -126.25011,11.700653 C -126.71663,11.966312 -127.00337,12.463152 -127,13 L -127,21.0625 L -142.75,11.71875 C -143.05084,11.540409 -143.40499,11.474007 -143.75,11.53125 L -143.75,11.53125 z"
+         id="path7681"
+         style="opacity:0.31000001;fill:url(#linearGradient8098);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+         inkscape:original="M -143.5 13 L -143.5 35 L -125.5 24.3125 L -125.5 35 L -107 24 L -125.5 13 L -125.5 23.6875 L -143.5 13 z "
+         inkscape:radius="1.484375"
+         sodipodi:type="inkscape:offset" />
+      <g
+         id="g7530">
+        <g
+           id="g7964"
+           transform="translate(-132,0)">
+          <g
+             transform="matrix(-1,0,0,1,-54,0)"
+             id="g7952">
+            <path
+               style="fill:url(#linearGradient3201);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+               d="M 21.5,35 L 21.5,13.000461 L 39.995767,24.010194 L 21.5,35 z"
+               id="path7954"
+               sodipodi:nodetypes="cccc" />
+            <path
+               sodipodi:type="inkscape:offset"
+               inkscape:radius="-1.0054175"
+               inkscape:original="M 21.5 13 L 21.5 35 L 40 24 L 21.5 13 z "
+               style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3217);stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+               id="path7956"
+               d="M 22.5,14.78125 L 22.5,33.21875 L 38.03125,24 L 22.5,14.78125 z" />
+          </g>
+          <g
+             transform="matrix(-1,0,0,1,-72,0)"
+             id="g7958">
+            <path
+               style="fill:url(#linearGradient3203);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+               d="M 21.5,35 L 21.5,13.000461 L 39.995767,24.010194 L 21.5,35 z"
+               id="path7960"
+               sodipodi:nodetypes="cccc" />
+            <path
+               sodipodi:type="inkscape:offset"
+               inkscape:radius="-1.0054175"
+               inkscape:original="M 21.5 13 L 21.5 35 L 40 24 L 21.5 13 z "
+               style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3219);stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+               id="path7962"
+               d="M 22.5,14.78125 L 22.5,33.21875 L 38.03125,24 L 22.5,14.78125 z" />
+          </g>
+        </g>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-seek-forward.svg b/icons/PyHoca/scalable/media-seek-forward.svg
new file mode 100644
index 0000000..fe128c4
--- /dev/null
+++ b/icons/PyHoca/scalable/media-seek-forward.svg
@@ -0,0 +1,199 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7206"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7208">
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3205"
+       id="linearGradient3211"
+       x1="28"
+       y1="12"
+       x2="28"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3199">
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="0"
+         id="stop3201" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1"
+         id="stop3203" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3199"
+       id="linearGradient3195"
+       x1="148"
+       y1="12"
+       x2="148"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3205">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3207" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3209" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3205"
+       id="linearGradient3213"
+       x1="28"
+       y1="12"
+       x2="28"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7344"
+       inkscape:collect="always">
+      <stop
+         id="stop7346"
+         offset="0"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+      <stop
+         id="stop7348"
+         offset="1"
+         style="stop-color:#babdb6;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7344"
+       id="linearGradient3197"
+       x1="148"
+       y1="12"
+       x2="148"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.3137255;"
+         offset="0"
+         id="stop7579" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.31"
+         offset="1"
+         id="stop7581" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient7871"
+       gradientUnits="userSpaceOnUse"
+       x1="-127.01692"
+       y1="12.838128"
+       x2="-123.49838"
+       y2="25.969481" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="1037"
+     inkscape:window-y="333" />
+  <metadata
+     id="metadata7211">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       id="g7126"
+       transform="translate(150.00003,1.5827295e-4)">
+      <path
+         d="M -143.75,11.53125 C -144.47126,11.646642 -145.00141,12.269567 -145,13 L -145,35 C -145.00337,35.536848 -144.71663,36.033688 -144.25011,36.299347 C -143.78358,36.565005 -143.20998,36.558085 -142.75,36.28125 L -127,26.9375 L -127,35 C -127.00337,35.536848 -126.71663,36.033688 -126.25011,36.299347 C -125.78358,36.565005 -125.20998,36.558085 -124.75,36.28125 L -106.25,25.28125 C -105.79494,25.014944 -105.51528,24.527253 -105.51528,24 C -105.51528,23.472747 -105.79494,22.985056 -106.25,22.71875 L -124.75,11.71875 C -125.20998,11.441915 -125.78358,11.434995 -126.25011,11.700653 C -126.71663,11.966312 -127.00337,12.463152 -127,13 L -127,21.0625 L -142.75,11.71875 C -143.05084,11.540409 -143.40499,11.474007 -143.75,11.53125 L -143.75,11.53125 z"
+         id="path7659"
+         style="opacity:0.4;fill:url(#linearGradient7871);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+         inkscape:original="M -143.5 13 L -143.5 35 L -125.5 24.3125 L -125.5 35 L -107 24 L -125.5 13 L -125.5 23.6875 L -143.5 13 z "
+         inkscape:radius="1.484375"
+         sodipodi:type="inkscape:offset" />
+      <g
+         id="g7498">
+        <g
+           id="g8037"
+           transform="translate(-267,0)">
+          <g
+             transform="translate(-18,0)"
+             id="g8025">
+            <path
+               style="fill:url(#linearGradient3197);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+               d="M 141.5,35 L 141.5,13.000461 L 159.99577,24.010194 L 141.5,35 z"
+               id="path8027"
+               sodipodi:nodetypes="cccc" />
+            <path
+               sodipodi:type="inkscape:offset"
+               inkscape:radius="-1.0054175"
+               inkscape:original="M 21.5 13 L 21.5 35 L 40 24 L 21.5 13 z "
+               style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3213);stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+               id="path8029"
+               d="M 22.5,14.78125 L 22.5,33.21875 L 38.03125,24 L 22.5,14.78125 z"
+               transform="translate(120,0)" />
+          </g>
+          <g
+             id="g8031">
+            <path
+               style="fill:url(#linearGradient3195);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+               d="M 141.5,35 L 141.5,13.000461 L 159.99577,24.010194 L 141.5,35 z"
+               id="path8033"
+               sodipodi:nodetypes="cccc" />
+            <path
+               sodipodi:type="inkscape:offset"
+               inkscape:radius="-1.0054175"
+               inkscape:original="M 21.5 13 L 21.5 35 L 40 24 L 21.5 13 z "
+               style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3211);stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+               id="path8035"
+               d="M 22.5,14.78125 L 22.5,33.21875 L 38.03125,24 L 22.5,14.78125 z"
+               transform="translate(120,0)" />
+          </g>
+        </g>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-skip-backward.svg b/icons/PyHoca/scalable/media-skip-backward.svg
new file mode 100644
index 0000000..82402f6
--- /dev/null
+++ b/icons/PyHoca/scalable/media-skip-backward.svg
@@ -0,0 +1,243 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7212"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7214">
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3215"
+       id="linearGradient3221"
+       x1="-294"
+       y1="12"
+       x2="-294"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3203">
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="0"
+         id="stop3205" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1"
+         id="stop3207" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3203"
+       id="linearGradient3197"
+       x1="-294"
+       y1="12"
+       x2="-294"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3215"
+       id="linearGradient3225"
+       x1="28"
+       y1="12"
+       x2="28"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7344"
+       inkscape:collect="always">
+      <stop
+         id="stop7346"
+         offset="0"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+      <stop
+         id="stop7348"
+         offset="1"
+         style="stop-color:#babdb6;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7344"
+       id="linearGradient3201"
+       x1="28"
+       y1="12"
+       x2="28"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3215">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3217" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3219" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3215"
+       id="linearGradient3223"
+       x1="28"
+       y1="12"
+       x2="28"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient3209">
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="0"
+         id="stop3211" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1"
+         id="stop3213" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3209"
+       id="linearGradient3199"
+       x1="28"
+       y1="12"
+       x2="28"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.3137255;"
+         offset="0"
+         id="stop7579" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.31"
+         offset="1"
+         id="stop7581" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient8208"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-1,0,0,1,-152,0)"
+       x1="-77.711723"
+       y1="13.246527"
+       x2="-74.288277"
+       y2="26.023027" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="1037"
+     inkscape:window-y="333" />
+  <metadata
+     id="metadata7217">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       id="g7157"
+       transform="translate(300,0)">
+      <path
+         transform="matrix(-1,0,0,1,-352,0)"
+         d="M -59.9375,11 C -61.083327,11 -62,11.916673 -62,13.0625 L -62,21.0625 L -77.71875,11.71875 C -78.182222,11.438527 -78.760596,11.429252 -79.232814,11.694471 C -79.705033,11.959689 -79.998098,12.458403 -80,13 L -80,21.0625 L -95.71875,11.71875 C -96.182222,11.438527 -96.760596,11.429252 -97.232814,11.694471 C -97.705033,11.959689 -97.998098,12.458403 -98,13 L -98,35 C -97.998098,35.541597 -97.705033,36.040311 -97.232814,36.305529 C -96.760596,36.570748 -96.182222,36.561473 -95.71875,36.28125 L -80,26.9375 L -80,35 C -79.998098,35.541597 -79.705033,36.040311 -79.232814,36.305529 C -78.760596,36.570748 -78.182222,36.561473 -77.71875,36.28125 L -62,26.9375 L -62,34.9375 C -62,36.083333 -61.083342,37.000007 -59.9375,37 L -56.0625,37 C -54.916673,37 -53.999996,36.083333 -54,34.9375 L -54,13.0625 C -54,11.91667 -54.916672,11 -56.0625,11 L -59.9375,11 z"
+         id="path7687"
+         style="opacity:0.4;fill:url(#linearGradient8208);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+         inkscape:original="M -59.9375 12.5 C -60.243545 12.5 -60.5 12.756455 -60.5 13.0625 L -60.5 23.6875 L -78.5 13 L -78.5 23.6875 L -96.5 13 L -96.5 35 L -78.5 24.3125 L -78.5 35 L -60.5 24.3125 L -60.5 34.9375 C -60.5 35.243545 -60.243543 35.500002 -59.9375 35.5 L -56.0625 35.5 C -55.756455 35.5 -55.499999 35.243545 -55.5 34.9375 L -55.5 13.0625 C -55.5 12.756455 -55.756456 12.5 -56.0625 12.5 L -59.9375 12.5 z "
+         inkscape:radius="1.5032517"
+         sodipodi:type="inkscape:offset" />
+      <g
+         id="g7553">
+        <g
+           id="g7944"
+           transform="matrix(-1,0,0,1,-234,0)">
+          <path
+             sodipodi:nodetypes="cccc"
+             id="path7946"
+             d="M 21.5,35 L 21.5,13.000461 L 39.995767,24.010194 L 21.5,35 z"
+             style="fill:url(#linearGradient3199);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+          <path
+             d="M 22.5,14.78125 L 22.5,33.21875 L 38.03125,24 L 22.5,14.78125 z"
+             id="path7948"
+             style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3223);stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+             inkscape:original="M 21.5 13 L 21.5 35 L 40 24 L 21.5 13 z "
+             inkscape:radius="-1.0054175"
+             sodipodi:type="inkscape:offset" />
+        </g>
+        <g
+           id="g7744"
+           transform="matrix(-1,0,0,1,-252,0)">
+          <path
+             sodipodi:nodetypes="cccc"
+             id="path7746"
+             d="M 21.5,35 L 21.5,13.000461 L 39.995767,24.010194 L 21.5,35 z"
+             style="fill:url(#linearGradient3201);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+          <path
+             d="M 22.5,14.78125 L 22.5,33.21875 L 38.03125,24 L 22.5,14.78125 z"
+             id="path7748"
+             style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3225);stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+             inkscape:original="M 21.5 13 L 21.5 35 L 40 24 L 21.5 13 z "
+             inkscape:radius="-1.0054175"
+             sodipodi:type="inkscape:offset" />
+        </g>
+        <rect
+           style="fill:url(#linearGradient3197);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+           id="rect7736"
+           width="4.9886603"
+           height="23.000002"
+           x="-296.48865"
+           y="12.5"
+           rx="0.55242717"
+           ry="0.55242717" />
+        <rect
+           style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3221);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+           id="rect7750"
+           width="3.0097761"
+           height="21.000002"
+           x="-295.48395"
+           y="13.5"
+           rx="0"
+           ry="0" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/media-skip-forward.svg b/icons/PyHoca/scalable/media-skip-forward.svg
new file mode 100644
index 0000000..554a052
--- /dev/null
+++ b/icons/PyHoca/scalable/media-skip-forward.svg
@@ -0,0 +1,244 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7212"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7214">
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227"
+       id="linearGradient3237"
+       x1="-58"
+       y1="12"
+       x2="-58"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3203">
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="0"
+         id="stop3205" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1"
+         id="stop3207" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3203"
+       id="linearGradient3201"
+       x1="-58"
+       y1="12"
+       x2="-58"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227"
+       id="linearGradient3235"
+       x1="27.983948"
+       y1="11.999998"
+       x2="28"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3209">
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="0"
+         id="stop3211" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1"
+         id="stop3213" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3209"
+       id="linearGradient3199"
+       x1="148"
+       y1="12"
+       x2="148"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3227">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3229" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3231" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3227"
+       id="linearGradient3233"
+       x1="27.983948"
+       y1="11.999998"
+       x2="38.53125"
+       y2="24"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7344"
+       inkscape:collect="always">
+      <stop
+         id="stop7346"
+         offset="0"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+      <stop
+         id="stop7348"
+         offset="1"
+         style="stop-color:#babdb6;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7344"
+       id="linearGradient3197"
+       x1="148"
+       y1="12"
+       x2="148"
+       y2="36"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient7577">
+      <stop
+         style="stop-color:#000000;stop-opacity:0.3137255;"
+         offset="0"
+         id="stop7579" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.31"
+         offset="1"
+         id="stop7581" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7577"
+       id="linearGradient7762"
+       gradientUnits="userSpaceOnUse"
+       x1="-77.711723"
+       y1="13.246527"
+       x2="-74.288277"
+       y2="26.023027" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="1037"
+     inkscape:window-y="333" />
+  <metadata
+     id="metadata7217">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       id="g7113"
+       transform="translate(100,0)">
+      <path
+         d="M -59.9375,11 C -61.083327,11 -62,11.916673 -62,13.0625 L -62,21.0625 L -77.71875,11.71875 C -78.182222,11.438527 -78.760596,11.429252 -79.232814,11.694471 C -79.705033,11.959689 -79.998098,12.458403 -80,13 L -80,21.0625 L -95.71875,11.71875 C -96.182222,11.438527 -96.760596,11.429252 -97.232814,11.694471 C -97.705033,11.959689 -97.998098,12.458403 -98,13 L -98,35 C -97.998098,35.541597 -97.705033,36.040311 -97.232814,36.305529 C -96.760596,36.570748 -96.182222,36.561473 -95.71875,36.28125 L -80,26.9375 L -80,35 C -79.998098,35.541597 -79.705033,36.040311 -79.232814,36.305529 C -78.760596,36.570748 -78.182222,36.561473 -77.71875,36.28125 L -62,26.9375 L -62,34.9375 C -62,36.083333 -61.083342,37.000007 -59.9375,37 L -56.0625,37 C -54.916673,37 -53.999996,36.083333 -54,34.9375 L -54,13.0625 C -54,11.91667 -54.916672,11 -56.0625,11 L -59.9375,11 z"
+         id="path7638"
+         style="opacity:0.4;fill:url(#linearGradient7762);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+         inkscape:original="M -59.9375 12.5 C -60.243545 12.5 -60.5 12.756455 -60.5 13.0625 L -60.5 23.6875 L -78.5 13 L -78.5 23.6875 L -96.5 13 L -96.5 35 L -78.5 24.3125 L -78.5 35 L -60.5 24.3125 L -60.5 34.9375 C -60.5 35.243545 -60.243543 35.500002 -59.9375 35.5 L -56.0625 35.5 C -55.756455 35.5 -55.499999 35.243545 -55.5 34.9375 L -55.5 13.0625 C -55.5 12.756455 -55.756456 12.5 -56.0625 12.5 L -59.9375 12.5 z "
+         inkscape:radius="1.5032517"
+         sodipodi:type="inkscape:offset" />
+      <g
+         id="g7474">
+        <g
+           id="g8003"
+           transform="translate(-238,0)">
+          <path
+             sodipodi:nodetypes="cccc"
+             id="path8005"
+             d="M 141.5,35 L 141.5,13.000461 L 159.99577,24.010194 L 141.5,35 z"
+             style="fill:url(#linearGradient3197);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+          <path
+             transform="translate(120,0)"
+             d="M 22.5,14.78125 L 22.5,33.21875 L 38.03125,24 L 22.5,14.78125 z"
+             id="path8007"
+             style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3233);stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+             inkscape:original="M 21.5 13 L 21.5 35 L 40 24 L 21.5 13 z "
+             inkscape:radius="-1.0054175"
+             sodipodi:type="inkscape:offset" />
+        </g>
+        <g
+           id="g7999"
+           transform="translate(-220,0)">
+          <path
+             sodipodi:nodetypes="cccc"
+             id="path7621"
+             d="M 141.5,35 L 141.5,13.000461 L 159.99577,24.010194 L 141.5,35 z"
+             style="fill:url(#linearGradient3199);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+          <path
+             transform="translate(120,0)"
+             d="M 22.5,14.78125 L 22.5,33.21875 L 38.03125,24 L 22.5,14.78125 z"
+             id="path7627"
+             style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3235);stroke-width:0.99999994;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+             inkscape:original="M 21.5 13 L 21.5 35 L 40 24 L 21.5 13 z "
+             inkscape:radius="-1.0054175"
+             sodipodi:type="inkscape:offset" />
+        </g>
+        <rect
+           style="fill:url(#linearGradient3201);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+           id="rect7623"
+           width="4.9886603"
+           height="23.000002"
+           x="-60.488663"
+           y="12.5"
+           rx="0.55242717"
+           ry="0.55242717" />
+        <rect
+           style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3237);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+           id="rect7625"
+           width="3.0097761"
+           height="21.000002"
+           x="-59.483948"
+           y="13.5"
+           rx="0"
+           ry="0" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/network-wired.svg b/icons/PyHoca/scalable/network-wired.svg
new file mode 100644
index 0000000..d96da8e
--- /dev/null
+++ b/icons/PyHoca/scalable/network-wired.svg
@@ -0,0 +1,661 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7541"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7543">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7812">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop7814" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop7816" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7812"
+       id="linearGradient7818"
+       x1="-6.40625"
+       y1="32.4375"
+       x2="-7.78125"
+       y2="34.5625"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(19.999794,6.7695801e-5)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7269"
+       id="linearGradient7574"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.1249999,0,0,1.1666666,15.874793,-34.13535)"
+       x1="-4.1097827"
+       y1="58.807774"
+       x2="-4.1097827"
+       y2="55.000004" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7660">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop7662" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7664" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7660"
+       id="linearGradient7666"
+       x1="41.1875"
+       y1="38.3125"
+       x2="42.123722"
+       y2="42.9375"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-2.0655489e-4,6.7695801e-5)" />
+    <linearGradient
+       id="linearGradient7576">
+      <stop
+         style="stop-color:#888a85;stop-opacity:1"
+         offset="0"
+         id="stop7578" />
+      <stop
+         style="stop-color:#888a85;stop-opacity:0"
+         offset="1"
+         id="stop7580" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7576"
+       id="linearGradient7582"
+       x1="38.75"
+       y1="40.625"
+       x2="40.125"
+       y2="46.5625"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-2.0655489e-4,6.7695801e-5)" />
+    <linearGradient
+       id="linearGradient7652">
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="0"
+         id="stop7654" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:0"
+         offset="1"
+         id="stop7656" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7652"
+       id="linearGradient7658"
+       x1="37.625"
+       y1="40.3125"
+       x2="38.875"
+       y2="45.0625"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-2.0655489e-4,6.7695801e-5)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7422"
+       id="linearGradient7452"
+       gradientUnits="userSpaceOnUse"
+       x1="30.3125"
+       y1="27.313059"
+       x2="30.3125"
+       y2="24.6875" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7422"
+       id="linearGradient7450"
+       gradientUnits="userSpaceOnUse"
+       x1="30.3125"
+       y1="27.313059"
+       x2="30.3125"
+       y2="24.6875" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7422"
+       id="linearGradient7448"
+       gradientUnits="userSpaceOnUse"
+       x1="30.3125"
+       y1="27.313059"
+       x2="30.3125"
+       y2="24.6875" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7422"
+       id="linearGradient7446"
+       gradientUnits="userSpaceOnUse"
+       x1="30.3125"
+       y1="27.313059"
+       x2="30.3125"
+       y2="24.6875" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7422">
+      <stop
+         style="stop-color:#edd400;stop-opacity:1;"
+         offset="0"
+         id="stop7424" />
+      <stop
+         style="stop-color:#edd400;stop-opacity:0;"
+         offset="1"
+         id="stop7426" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7422"
+       id="linearGradient7428"
+       x1="30.3125"
+       y1="27.313059"
+       x2="30.3125"
+       y2="24.6875"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7430">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop7432" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7434" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7430"
+       id="linearGradient7436"
+       x1="28.875"
+       y1="29"
+       x2="29"
+       y2="16"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(0.9997935,-6.9999327)" />
+    <linearGradient
+       id="linearGradient7340">
+      <stop
+         style="stop-color:#2e3436;stop-opacity:1;"
+         offset="0"
+         id="stop7342" />
+      <stop
+         style="stop-color:#555753;stop-opacity:1"
+         offset="1"
+         id="stop7344" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7340"
+       id="linearGradient7346"
+       x1="32.8125"
+       y1="21"
+       x2="32.8125"
+       y2="26.204767"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0874899,0,0,1.086371,-1.5811596,-8.9432787)" />
+    <linearGradient
+       id="linearGradient7277">
+      <stop
+         style="stop-color:#555753;stop-opacity:1"
+         offset="0"
+         id="stop7279" />
+      <stop
+         style="stop-color:#d3d7cf;stop-opacity:1"
+         offset="1"
+         id="stop7281" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7277"
+       id="linearGradient7567"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.0285717,-4,-25.142872)"
+       x1="-3.5355339"
+       y1="55.866562"
+       x2="-3.5355339"
+       y2="59.444622" />
+    <linearGradient
+       id="linearGradient7186">
+      <stop
+         style="stop-color:#888a85;stop-opacity:1;"
+         offset="0"
+         id="stop7188" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop7190" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7186"
+       id="linearGradient7565"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-4,-24)"
+       x1="-5.96875"
+       y1="52.875"
+       x2="-5.96875"
+       y2="51.812416" />
+    <linearGradient
+       id="linearGradient7245">
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1;"
+         offset="0"
+         id="stop7247" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop7249" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7245"
+       id="linearGradient7563"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-4,-24)"
+       x1="-5.0823302"
+       y1="50.51907"
+       x2="0.26516503"
+       y2="49.458408" />
+    <linearGradient
+       id="linearGradient7237">
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="0"
+         id="stop7239" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1;"
+         offset="1"
+         id="stop7241" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7237"
+       id="linearGradient7561"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-4,-24)"
+       x1="-4.6845822"
+       y1="52.640388"
+       x2="0.88388348"
+       y2="50.563263" />
+    <linearGradient
+       id="linearGradient7257">
+      <stop
+         id="stop7259"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1" />
+      <stop
+         id="stop7261"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7257"
+       id="linearGradient7559"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-4,-24)"
+       x1="-1.9887378"
+       y1="51.137787"
+       x2="-3.3587573"
+       y2="54" />
+    <linearGradient
+       id="linearGradient7269">
+      <stop
+         id="stop7271"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop7273"
+         offset="1"
+         style="stop-color:#d3d7cf;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7269"
+       id="linearGradient7557"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9642856,0,0,0.9722222,-0.2500008,1.6944444)"
+       x1="-4.2208939"
+       y1="59.878922"
+       x2="-4.2208939"
+       y2="54.707691" />
+    <linearGradient
+       id="linearGradient7263">
+      <stop
+         id="stop7265"
+         offset="0"
+         style="stop-color:#adb0a8;stop-opacity:1;" />
+      <stop
+         id="stop7267"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7263"
+       id="linearGradient7555"
+       gradientUnits="userSpaceOnUse"
+       x1="1.6256078"
+       y1="55.219357"
+       x2="0.82206726"
+       y2="54.415817" />
+    <filter
+       inkscape:collect="always"
+       id="filter5406">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.78208031"
+         id="feGaussianBlur5408" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7688">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop7690" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop7692" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7688"
+       id="linearGradient7694"
+       x1="28.625"
+       y1="41.125"
+       x2="30.5"
+       y2="47.8125"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7438">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop7440" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7442" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7438"
+       id="linearGradient7444"
+       x1="-7.8516631"
+       y1="3.7545938"
+       x2="-5.5098634"
+       y2="18.937717"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient6991">
+      <stop
+         style="stop-color:#d3d7cf;stop-opacity:1"
+         offset="0"
+         id="stop6993" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="1"
+         id="stop6995" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6991"
+       id="linearGradient6047"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.0000002,0,0,1.9333333,43.499797,0.5334007)"
+       x1="-7.975069"
+       y1="25.357235"
+       x2="-11.005972"
+       y2="-6.5683565" />
+    <filter
+       inkscape:collect="always"
+       id="filter5386">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.26293105"
+         id="feGaussianBlur5388" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7822">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop7824" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop7826" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7822"
+       id="radialGradient7828"
+       cx="14.363107"
+       cy="34.785942"
+       fx="14.363107"
+       fy="34.785942"
+       r="8.7946405"
+       gradientTransform="matrix(1,0,0,0.6884422,0,10.837832)"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="1037"
+     inkscape:window-y="333" />
+  <metadata
+     id="metadata7546">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642"
+       d="M 4.9997935,12.000068 L 7.9997935,12.000068 L 9.9997935,12.000068 L 6.9997935,12.000068 L 4.9997935,12.000068 z"
+       id="path7013"
+       sodipodi:nodetypes="ccccc" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.45895523;fill:url(#radialGradient7828);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+       id="path7820"
+       sodipodi:cx="14.363107"
+       sodipodi:cy="34.785942"
+       sodipodi:rx="8.7946405"
+       sodipodi:ry="6.0546017"
+       d="M 23.157747,34.785942 A 8.7946405,6.0546017 0 1 1 5.5684662,34.785942 A 8.7946405,6.0546017 0 1 1 23.157747,34.785942 z"
+       transform="matrix(1.1559927,0,0,1.1167882,-1.4894456,-5.8125237)" />
+    <rect
+       style="opacity:0.1204819;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.00000012;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642;filter:url(#filter5386)"
+       id="rect7696"
+       width="32.000004"
+       height="29"
+       x="15.375001"
+       y="2.875"
+       rx="3.7225697"
+       ry="3.7225697"
+       transform="matrix(1.015625,0,0,1.015625,-0.4904406,-0.2714167)" />
+    <rect
+       style="fill:url(#linearGradient6047);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.00000012;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642"
+       id="rect5925"
+       width="32.000004"
+       height="29"
+       x="14.499794"
+       y="1.5000677"
+       rx="2.8766227"
+       ry="2.780735" />
+    <path
+       sodipodi:type="inkscape:offset"
+       inkscape:radius="-0.99866015"
+       inkscape:original="M -12.5 0.5 C -13.608449 0.5 -14.5 1.3915505 -14.5 2.5 L -14.5 13.5 C -14.5 14.608449 -13.60845 15.5 -12.5 15.5 L -0.5 15.5 C 0.60844948 15.5 1.5 14.60845 1.5 13.5 L 1.5 2.5 C 1.5 1.3915505 0.60844948 0.5 -0.5 0.5 L -12.5 0.5 z "
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient7444);stroke-width:0.47289538;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642"
+       id="path6964"
+       d="M -12.5,1.5 C -13.072952,1.5 -13.5,1.9270471 -13.5,2.5 L -13.5,13.5 C -13.5,14.072953 -13.072954,14.5 -12.5,14.5 L -0.5,14.5 C 0.072953444,14.5 0.5,14.072954 0.5,13.5 L 0.5,2.5 C 0.5,1.9270468 0.072953144,1.5 -0.5,1.5 L -12.5,1.5 z"
+       transform="matrix(2.1428572,0,0,2.0867798,44.428365,-0.630102)" />
+    <path
+       sodipodi:type="inkscape:offset"
+       inkscape:radius="0.50945717"
+       inkscape:original="M 14.8125 31.5 C 14.8125 31.5 10.498126 34.830189 6.59375 38.0625 C 4.6415622 39.678655 2.8956918 41.28355 1.875 42.84375 C 1.3646541 43.62385 0.8878846 44.466971 1.21875 45.625 C 1.3841827 46.204014 1.8301355 46.746216 2.3125 47.03125 C 2.7948645 47.316284 3.2706533 47.437479 3.8125 47.5 C 5.9363798 47.745063 8.5434834 47.106406 11.65625 46.21875 C 14.769017 45.331094 18.325496 44.136387 21.90625 42.96875 C 25.487004 41.801113 29.102635 40.662687 32.25 39.96875 C 35.397365 39.274813 38.085104 39.083776 39.625 39.46875 C 40.353931 39.650983 40.370552 39.769574 40.375 39.78125 C 40.379448 39.792926 40.439577 40.11668 40.15625 40.71875 C 39.589596 41.92289 37.911115 43.835283 35.96875 45.65625 C 32.08402 49.298184 27.125 52.78125 27.125 52.78125 L 28.875 55.21875 C 28.875 55.21875 33.91598 51.701816 38.03125 47.84375 C 40.088885 45.914717 41.910404 43.95211 42.84375 41.96875 C 43.310423 40.97707 43.620552 39.855512 43.1875 38.71875 C 42.754448 37.5819
 88 41.64
 6069 36.849017 40.375 36.53125 C 37.914896 35.916224 34.93076 36.32675 31.59375 37.0625 C 28.25674 37.79825 24.575496 38.917637 20.96875 40.09375 C 17.362004 41.269863 13.840358 42.489218 10.84375 43.34375 C 7.9314529 44.174239 5.5458184 44.563842 4.375 44.46875 C 4.9949332 43.521138 6.6709378 41.915095 8.53125 40.375 C 12.251874 37.294811 16.5 34 16.5 34 L 14.8125 31.5 z "
+       style="opacity:0.31927712;fill:url(#linearGradient7694);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;filter:url(#filter5406)"
+       id="path7678"
+       d="M 14.6875,31 C 14.619177,31.017916 14.555326,31.049841 14.5,31.09375 C 14.5,31.09375 10.195229,34.415989 6.28125,37.65625 C 4.316376,39.282908 2.5162731,40.913519 1.4375,42.5625 C 0.91466802,43.361686 0.33442463,44.404861 0.71875,45.75 C 0.9275427,46.480774 1.4549221,47.109726 2.0625,47.46875 C 2.6167319,47.796251 3.1674141,47.932778 3.75,48 C 6.0211642,48.262057 8.6583138,47.609306 11.78125,46.71875 C 14.911534,45.826099 18.484598,44.604207 22.0625,43.4375 C 25.639946,42.270942 29.261929,41.155126 32.375,40.46875 C 35.48201,39.783711 38.133895,39.627224 39.5,39.96875 C 39.718805,40.023451 39.763413,40.030877 39.84375,40.0625 C 39.824168,40.168535 39.78709,40.288372 39.6875,40.5 C 39.197395,41.541473 37.544362,43.481849 35.625,45.28125 C 31.779852,48.886076 26.84375,52.375 26.84375,52.375 C 26.730444,52.452627 26.653276,52.57271 26.629743,52.708026 C 26.60621,52.843342 26.638304,52.982428 26.71875,53.09375 L 28.46875,55.53125 C 28.637946,55.737822 28.937922,55.7787
 28 29.15
 625,55.625 C 29.15625,55.625 34.220988,52.113137 38.375,48.21875 C 40.448974,46.2744 42.325551,44.284766 43.3125,42.1875 C 43.80516,41.140598 44.157793,39.847802 43.65625,38.53125 C 43.146184,37.192325 41.882294,36.376823 40.5,36.03125 C 37.894103,35.379776 34.829212,35.821579 31.46875,36.5625 C 28.102571,37.304681 24.425802,38.446749 20.8125,39.625 C 17.200009,40.802986 13.693676,41.995401 10.71875,42.84375 C 8.5379899,43.465629 6.8269173,43.771279 5.59375,43.875 C 6.3789191,42.999609 7.4710187,41.917692 8.84375,40.78125 C 12.555108,37.708732 16.8125,34.40625 16.8125,34.40625 C 17.029502,34.246251 17.084294,33.944894 16.9375,33.71875 L 15.25,31.21875 C 15.130504,31.030679 14.902661,30.942074 14.6875,31 L 14.6875,31 z"
+       transform="translate(0.2497934,-0.6249323)" />
+    <g
+       id="g7542"
+       transform="translate(19.999794,6.7695801e-5)">
+      <g
+         transform="matrix(1.1666667,0,0,1.2,-3.833333,-36.2)"
+         id="g7162">
+        <path
+           style="fill:url(#linearGradient7555);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642"
+           d="M -2.34375,51 C -2.5485199,51 -2.7249072,51.101237 -2.84375,51.25 L -6.859375,55.25 C -6.8943841,55.381797 -6.9584881,55.521336 -7,55.65625 L -7,61.177083 C -7,61.540646 -6.7034811,61.833333 -6.34375,61.833333 L 0.34375,61.833333 C 0.52361547,61.833333 0.6951329,61.76445 0.8125,61.645833 L 4.8125,57.645833 C 4.9298671,57.527216 5,57.358864 5,57.177083 L 5,51.65625 C 5,51.474469 4.9298671,51.306117 4.8125,51.1875 C 4.6934039,51.068883 4.5236156,51 4.34375,51 L -2.34375,51 z"
+           id="rect6100"
+           sodipodi:nodetypes="cccccccccccscc" />
+        <path
+           sodipodi:nodetypes="ccccccccc"
+           style="fill:url(#linearGradient7557);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642"
+           d="M -6.3738568,55.166667 L 0.088142442,55.166667 C 0.43502581,55.166667 0.71428575,55.451224 0.71428575,55.804688 L 0.71428575,61.195312 C 0.71428575,61.548776 0.43502581,61.833333 0.088142442,61.833333 L -6.3738568,61.833333 C -6.7207401,61.833333 -7,61.548776 -7,61.195312 L -7,55.804688 C -7,55.451224 -6.7207401,55.166667 -6.3738568,55.166667 z"
+           id="path6105" />
+      </g>
+      <path
+         sodipodi:nodetypes="ccccc"
+         id="path7253"
+         d="M -5,25 L -10,30 L -6,30 L -1,25 L -5,25"
+         style="opacity:0.12313436;fill:url(#linearGradient7559);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="ccccc"
+         id="path6126"
+         d="M -1,25 L -10.5,29 L -7,29 L -2,26 L -1,25"
+         style="fill:#babdb6;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="csssccccccssssccsccsccsccccscc"
+         id="path7235"
+         d="M -6.5625,25.5 C -6.586332,25.5 -6.617114,25.506448 -6.71875,25.625 C -6.748761,25.647634 -6.780064,25.668503 -6.8125,25.6875 C -6.832372,25.709273 -6.853227,25.730128 -6.875,25.75 C -6.894872,25.771773 -6.915727,25.792628 -6.9375,25.8125 L -6.96875,25.8125 C -6.988622,25.834273 -7.009477,25.855128 -7.03125,25.875 L -7.21875,26.0625 C -7.325593,26.162845 -7.453812,26.237639 -7.59375,26.28125 L -11.84375,27.5 C -12.244246,27.708356 -12.377785,27.84932 -12.4375,27.96875 C -12.438388,27.970526 -12.403483,28.103321 -12.4375,28.0625 C -12.355653,28.160716 -12.077127,28.314744 -11.59375,28.40625 C -11.253853,28.475121 -10.976692,28.720417 -10.867022,29.049424 C -10.757353,29.378432 -10.831905,29.740965 -11.0625,30 L -11.40625,30.375 C -11.426065,30.462564 -11.460093,30.545084 -11.5,30.6875 C -11.507455,30.714105 -11.491841,30.722726 -11.5,30.75 L -11.5,37.25 C -11.5,37.304188 -11.499624,37.365539 -11.4375,37.4375 C -11.40601,37.473977 -11.334247,37.5 -11.28125,37.5 L -
 3.4375,3
 7.5 C -3.344928,37.5 -3.269061,37.4898 -3.21875,37.4375 C -3.218918,37.427084 -3.218918,37.416666 -3.21875,37.40625 L 1.4375,32.59375 C 1.489686,32.539502 1.5,32.514607 1.5,32.40625 L 1.5,25.78125 C 1.5,25.6729 1.489688,25.616751 1.4375,25.5625 C 1.400675,25.524775 1.282521,25.5 1.25,25.5 L -6.5625,25.5 z"
+         style="opacity:0.53358208;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="ccccccsssccssccsccccccscc"
+         id="path7229"
+         d="M -6.5625,24.53125 C -6.950241,24.53125 -7.254192,24.749731 -7.46875,25 L -7.5,24.96875 L -7.53125,25.03125 L -7.875,25.34375 L -12.125,26.5625 C -12.157264,26.569585 -12.188688,26.58006 -12.21875,26.59375 C -12.767664,26.868207 -13.120777,27.147804 -13.3125,27.53125 C -13.504223,27.914696 -13.429021,28.397675 -13.1875,28.6875 C -12.859423,29.081192 -12.329894,29.239888 -11.78125,29.34375 L -12.1875,29.78125 C -12.243792,29.832657 -12.286698,29.897016 -12.3125,29.96875 C -12.343846,30.090131 -12.382395,30.284537 -12.4375,30.46875 C -12.45362,30.50878 -12.464136,30.550844 -12.46875,30.59375 L -12.46875,37.25 C -12.46875,37.54887 -12.355519,37.831675 -12.15625,38.0625 C -11.956981,38.293325 -11.645384,38.46875 -11.28125,38.46875 L -3.4375,38.46875 C -3.113867,38.46875 -2.780607,38.352963 -2.53125,38.09375 L 2.125,33.28125 C 2.35088,33.046445 2.46875,32.741604 2.46875,32.40625 L 2.46875,25.78125 C 2.46875,25.445897 2.350877,25.141055 2.125,24.90625 C 1.901344,24.677
 132 1.57
 3636,24.53125 1.25,24.53125 L -6.5625,24.53125 z"
+         style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#555753;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccccc"
+         id="path7184"
+         d="M -1,25 L -12,27.5 L -10,29 L -7,29 L -2,26 L -1,25"
+         style="fill:url(#linearGradient7561);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="ccccc"
+         id="path7171"
+         d="M -5,25 L -12,27 L -8,27 L -1,25 L -5,25"
+         style="fill:url(#linearGradient7563);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cccccc"
+         id="rect7173"
+         d="M -12,27 L -8.2868349,27 L -8,27 C -10,28 -8.5,29 -7,29 L -11,29 C -12.5,29 -14,28 -12,27 z"
+         style="fill:url(#linearGradient7565);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1" />
+      <path
+         style="fill:url(#linearGradient7567);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642"
+         d="M -9.5941664,32 L -5.405834,32 C -5.181002,32 -5,32.195125 -5,32.4375 L -5,35.5625 C -5,35.804876 -5.181002,36 -5.405834,36 L -9.5941664,36 C -9.8189979,36 -10,35.804876 -10,35.5625 L -10,32.4375 C -10,32.195125 -9.8189979,32 -9.5941664,32 z"
+         id="path7275" />
+    </g>
+    <path
+       style="opacity:1;fill:url(#linearGradient7346);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999988;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0.69999992;stroke-opacity:1"
+       d="M 29.480271,10.068213 C 28.841256,10.068213 28.324813,10.584125 28.324813,11.222482 L 28.324813,11.51027 C 28.324813,11.803492 28.095501,12.053455 27.781068,12.053455 L 26.217801,12.053455 C 25.578786,12.053455 25.062343,12.756867 25.062343,13.395224 L 25.062343,19.840153 C 25.062343,20.478511 25.578787,20.994422 26.217801,20.994422 L 34.781785,20.994422 C 35.4208,20.994422 35.937243,20.47851 35.937243,19.840153 L 35.937243,13.395224 C 35.937243,12.756866 35.420801,12.053455 34.781785,12.053455 L 33.218518,12.053455 C 32.956741,12.071123 32.674773,11.867159 32.674773,11.527244 L 32.674773,11.222482 C 32.674773,10.584124 32.158329,10.068213 31.519315,10.068213 L 29.480271,10.068213 z"
+       id="rect7327"
+       sodipodi:nodetypes="ccccccccccccccccc" />
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient7436);stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:1"
+       d="M 29.562293,9.4375677 C 28.452937,9.4375677 27.577607,10.345581 27.499793,11.437568 L 26.562293,11.437568 C 25.403213,11.437568 24.437293,12.403489 24.437293,13.562568 L 24.437293,19.437567 C 24.437293,20.596647 25.403214,21.562567 26.562293,21.562567 L 34.437293,21.562567 C 35.596373,21.562567 36.562293,20.596646 36.562293,19.437567 L 36.562293,13.562568 C 36.562293,12.403491 35.596372,11.437568 34.437293,11.437568 L 33.499793,11.437568 C 33.421979,10.34558 32.546648,9.4375677 31.437293,9.4375677 L 29.562293,9.4375677 z"
+       id="path7350"
+       sodipodi:nodetypes="ccccccccccccc" />
+    <g
+       id="g7393"
+       style="fill-opacity:1;stroke:url(#linearGradient7428)"
+       transform="translate(0.9997935,-7.9999327)">
+      <path
+         sodipodi:nodetypes="cc"
+         id="path7352"
+         d="M 26.5,26.5 L 26.5,24.5"
+         style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient7446);stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path7362"
+         d="M 28.5,26.5 L 28.5,24.5"
+         style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient7448);stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path7364"
+         d="M 30.5,26.5 L 30.5,24.5"
+         style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient7450);stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" />
+      <path
+         sodipodi:nodetypes="cc"
+         id="path7366"
+         d="M 32.5,26.5 L 32.5,24.5"
+         style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient7452);stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:url(#linearGradient7658);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient7582);stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 14.687294,30.562567 C 14.687294,30.562567 10.49792,33.830256 6.5935435,37.062567 C 4.6413557,38.678722 2.8954853,40.283617 1.8747935,41.843817 C 1.3644476,42.623917 0.88767815,43.467038 1.2185435,44.625067 C 1.3839762,45.204081 1.829929,45.746283 2.3122935,46.031317 C 2.794658,46.316351 3.2704468,46.437546 3.8122935,46.500067 C 5.9361733,46.74513 8.5432769,46.106473 11.656044,45.218817 C 14.768811,44.331161 18.32529,43.136454 21.906043,41.968817 C 25.486797,40.80118 29.102428,39.662754 32.249793,38.968817 C 35.397158,38.27488 38.084897,38.083843 39.624793,38.468817 C 40.353724,38.65105 40.370345,38.769641 40.374793,38.781317 C 40.379241,38.792993 40.43937,39.116747 40.156043,39.718817 C 39.589389,40.922957 37.910908,42.83535 35.968543,44.656317 C 32.083813,48.298251 27.124793,51.781317 27.124793,51.781317 L 28.874793,54.218817 C 28.874793,54.218817 33.915773,50.701883 38.031043,46.843817 C 40.088678,44.914784 41.910197,42.952177 42.843543,40.968817 C 43.310216,39
 .977137 
 43.620345,38.855579 43.187293,37.718817 C 42.754241,36.582055 41.645862,35.849084 40.374793,35.531317 C 37.914689,34.916291 34.930553,35.326817 31.593543,36.062567 C 28.256533,36.798317 24.575289,37.917704 20.968543,39.093817 C 17.361798,40.26993 13.840152,41.489285 10.843544,42.343817 C 7.9312464,43.174306 5.5456119,43.563909 4.3747935,43.468817 C 4.9947267,42.521205 6.6707313,40.915162 8.5310435,39.375067 C 12.251668,36.294878 16.499794,33.000067 16.499794,33.000067 L 14.687294,30.562567 z"
+       id="path7506"
+       sodipodi:nodetypes="cssssssssssssccssssssscscc" />
+    <path
+       style="opacity:0.19029852;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient7666);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 15.672129,31.269674 C 15.672129,31.269674 -2.7653716,43.957174 3.7346285,44.707174 C 10.234629,45.457174 31.734628,34.707174 39.734628,36.707174 C 47.734628,38.707174 27.734628,52.707174 27.734628,52.707174"
+       id="path7502"
+       sodipodi:nodetypes="cssc" />
+    <path
+       style="fill:url(#linearGradient7574);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642"
+       d="M 10.088563,30.031317 L 10.406044,32.031317 L 14.593544,32.031317 C 14.818376,32.031317 14.999794,32.226442 14.999794,32.468817 L 14.999794,35.593817 L 16.999794,35.281317 L 16.999794,30.812567 C 16.999794,30.38841 16.68574,30.031317 16.281044,30.031317 L 10.088563,30.031317 z"
+       id="path7512"
+       sodipodi:nodetypes="ccccccccc" />
+    <path
+       style="opacity:0.35447765;fill:url(#linearGradient7818);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0.69999992;stroke-opacity:0.99236642"
+       d="M 10.405627,32.000067 L 14.59396,32.000067 C 14.818792,32.000067 14.999794,32.195192 14.999794,32.437567 L 14.999794,35.562567 C 14.999794,35.804943 14.818792,36.000067 14.59396,36.000067 L 10.405627,36.000067 C 10.180796,36.000067 9.9997935,35.804943 9.9997935,35.562567 L 9.9997935,32.437567 C 9.9997935,32.195192 10.180796,32.000067 10.405627,32.000067 z"
+       id="path7810" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/profile_add.svg b/icons/PyHoca/scalable/profile_add.svg
new file mode 120000
index 0000000..742bd8e
--- /dev/null
+++ b/icons/PyHoca/scalable/profile_add.svg
@@ -0,0 +1 @@
+list-add.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/profile_delete.svg b/icons/PyHoca/scalable/profile_delete.svg
new file mode 120000
index 0000000..e3a4068
--- /dev/null
+++ b/icons/PyHoca/scalable/profile_delete.svg
@@ -0,0 +1 @@
+edit-delete.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/profile_edit.svg b/icons/PyHoca/scalable/profile_edit.svg
new file mode 120000
index 0000000..b3fad1b
--- /dev/null
+++ b/icons/PyHoca/scalable/profile_edit.svg
@@ -0,0 +1 @@
+gtk-edit.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/profile_save.svg b/icons/PyHoca/scalable/profile_save.svg
new file mode 120000
index 0000000..e2277db
--- /dev/null
+++ b/icons/PyHoca/scalable/profile_save.svg
@@ -0,0 +1 @@
+document-save.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/pyhoca-session.svg b/icons/PyHoca/scalable/pyhoca-session.svg
new file mode 100644
index 0000000..e1588b8
--- /dev/null
+++ b/icons/PyHoca/scalable/pyhoca-session.svg
@@ -0,0 +1,568 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7187"
+   sodipodi:version="0.32"
+   inkscape:version="0.47 r22583"
+   sodipodi:docname="auth_error.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.1">
+  <defs
+     id="defs7189">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 24 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="48 : 24 : 1"
+       inkscape:persp3d-origin="24 : 16 : 1"
+       id="perspective3859" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4873">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4875" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4877" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4873"
+       id="linearGradient2704"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.3440063,0,0,2.3440063,-121.79862,31.22942)"
+       x1="62.745731"
+       y1="-13.444987"
+       x2="62.608765"
+       y2="7.1072145" />
+    <linearGradient
+       id="linearGradient3811">
+      <stop
+         id="stop3813"
+         offset="0"
+         style="stop-color:#a40000;stop-opacity:1" />
+      <stop
+         id="stop3815"
+         offset="1"
+         style="stop-color:#c22f2f;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3811"
+       id="linearGradient3927"
+       x1="15.046636"
+       y1="44.787998"
+       x2="15.046636"
+       y2="3.8851264"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0805272,0,0,1.0805026,-1.508285,-3.3507596)" />
+    <linearGradient
+       id="linearGradient5106">
+      <stop
+         style="stop-color:#e78181;stop-opacity:1"
+         offset="0"
+         id="stop5108" />
+      <stop
+         id="stop8208"
+         offset="0.25288007"
+         style="stop-color:#e15f5f;stop-opacity:1" />
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0.68271071"
+         id="stop8210" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop5110" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5106"
+       id="radialGradient2707"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-7.565785,-6.219707e-7,3.9644633e-7,-4.8230546,494.60904,-26.555114)"
+       cx="62.202274"
+       cy="-5.7132163"
+       fx="62.202274"
+       fy="-5.7132163"
+       r="9.7552835" />
+    <linearGradient
+       id="linearGradient10691"
+       inkscape:collect="always">
+      <stop
+         id="stop10693"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" />
+      <stop
+         id="stop10695"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient10691"
+       id="radialGradient3080"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.902215,0.525703)"
+       cx="6.702713"
+       cy="73.615715"
+       fx="6.702713"
+       fy="73.615715"
+       r="7.228416" />
+    <inkscape:perspective
+       id="perspective3453"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <pattern
+       inkscape:stockid="Wavy"
+       id="Wavy"
+       height="5.1805778"
+       width="30.066020"
+       patternUnits="userSpaceOnUse"
+       inkscape:collect="always">
+      <path
+         id="path5228"
+         d="M 7.597,0.061 C 5.079,-0.187 2.656,0.302 -0.01,1.788 L -0.01,3.061 C 2.773,1.431 5.173,1.052 7.472,1.280 C 9.770,1.508 11.969,2.361 14.253,3.218 C 18.820,4.931 23.804,6.676 30.066,3.061 L 30.062,1.788 C 23.622,5.497 19.246,3.770 14.691,2.061 C 12.413,1.207 10.115,0.311 7.597,0.061 z "
+         style="fill:black;stroke:none;" />
+    </pattern>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter5442">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.57490299"
+         id="feGaussianBlur5444" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5430"
+       id="linearGradient5436"
+       x1="185"
+       y1="1047.3622"
+       x2="185"
+       y2="796.36218"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5430">
+      <stop
+         style="stop-color:#906f6f;stop-opacity:1;"
+         offset="0"
+         id="stop5432" />
+      <stop
+         style="stop-color:#906f6f;stop-opacity:0;"
+         offset="1"
+         id="stop5434" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter6083">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="3.312185"
+         id="feGaussianBlur6085" />
+    </filter>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3785"
+       id="radialGradient5416"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.1160336,-4.3876452,5.2088758,1.3249203,-2874.6294,1237.254)"
+       cx="315.79904"
+       cy="584.86487"
+       fx="315.79904"
+       fy="584.86487"
+       r="65.742714" />
+    <linearGradient
+       id="linearGradient3785">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3787" />
+      <stop
+         style="stop-color:#969696;stop-opacity:1;"
+         offset="1"
+         id="stop3789" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5937"
+       id="linearGradient5418"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="310.53839"
+       y1="551.9931"
+       x2="324.48233"
+       y2="615.26996" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5937">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5939" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5941" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter6139">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.78400333"
+         id="feGaussianBlur6141" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5947"
+       id="linearGradient5420"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="261.17963"
+       y1="635.13214"
+       x2="261.17963"
+       y2="612.84375" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5947">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5949" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5951" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5937"
+       id="linearGradient5422"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="387.78506"
+       y1="620.52393"
+       x2="378.39252"
+       y2="603.82446" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="23.859533"
+     inkscape:cy="34.916834"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="1024"
+     inkscape:window-height="571"
+     inkscape:window-x="0"
+     inkscape:window-y="6"
+     inkscape:window-maximized="1" />
+  <metadata
+     id="metadata7192">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       transform="matrix(0.38132965,0,0,0.38132965,-60.655233,-353.27311)"
+       style="display:inline"
+       id="g3410"
+       inkscape:export-filename="/home/mike/MyDocuments/4projects/nwt-x2go/pyhoca-gui/trunk/icons/PyHoca/pyhoca-trayicon.png"
+       inkscape:export-xdpi="457.14001"
+       inkscape:export-ydpi="457.14001">
+      <rect
+         y="926.42456"
+         x="159.0625"
+         height="125.87531"
+         width="125.87534"
+         id="rect2927"
+         style="fill:none;stroke:#000000;stroke-width:0.01776883;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+      <rect
+         y="932.37238"
+         x="165.00909"
+         height="114.98058"
+         width="114.98061"
+         id="rect5426"
+         style="fill:url(#Wavy);fill-opacity:1;stroke:none;filter:url(#filter5442)"
+         ry="14.010298" />
+      <rect
+         ry="14.010298"
+         style="fill:url(#linearGradient5436);fill-opacity:1;stroke:#000000;stroke-width:2.01939631;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+         id="rect5424"
+         width="114.98061"
+         height="114.98058"
+         x="165.00909"
+         y="932.37238" />
+      <g
+         inkscape:export-ydpi="510.97"
+         inkscape:export-xdpi="510.97"
+         inkscape:export-filename="/home/mike/MyDocuments/4projects/nwt-x2go/pyhoca-gui/trunk/icons/PyHoca/pyhoca-trayicon.png"
+         id="g5356"
+         transform="matrix(0.40396742,0,0,0.40396742,19.556638,743.47149)">
+        <path
+           sodipodi:nodetypes="cscscscssccc"
+           id="path5358"
+           d="m 316.61834,524.71563 c 26.41286,-0.50329 59.97357,20.96914 59.97357,54.77527 0,3.59736 -0.19322,7.03227 -0.56789,10.30345 18.06989,6.26688 16.71273,32.24949 4.78688,32.70339 -5.47132,0.20824 -3.56548,-18.31078 -10.6487,-17.92457 -7.89714,13.75136 -23.13,29.30724 -43.89259,30.96552 -18.87348,1.5074 -26.67203,-2.56514 -36.54057,-8.85826 -3.46673,2.19939 -7.55736,6.26792 -11.8477,7.98433 -9.00177,3.60129 -18.6864,4.30272 -18.6864,-5.73669 0,-8.21915 4.89649,-15.13053 12.51148,-17.381 -2.4969,-6.34498 -8.57035,-21.99078 -7.79103,-29.98531 0,-33.80609 29.80775,-56.84613 52.70295,-56.84613 z"
+           style="fill:#000000;fill-opacity:1;stroke:#737373;stroke-width:0.97799999;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline;filter:url(#filter6083)"
+           transform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)" />
+        <path
+           style="fill:url(#radialGradient5416);fill-opacity:1;stroke:#737373;stroke-width:1.85168302;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
+           d="m 494.14518,498.08769 c 50.00843,-0.9529 113.55014,39.70163 113.55014,103.70802 0,6.81101 -0.36583,13.31445 -1.0752,19.50789 34.21238,11.86532 31.64282,61.05914 9.06317,61.91853 -10.35905,0.39427 -6.75065,-34.66848 -20.16157,-33.93724 -14.95194,26.03594 -43.79287,55.48846 -83.10344,58.62814 -35.73385,2.85402 -50.49914,-4.85667 -69.1836,-16.77167 -6.56369,4.16419 -14.30863,11.86728 -22.43168,15.11703 -17.04338,6.81846 -35.37965,8.1465 -35.37965,-10.86149 0,-15.56161 9.27071,-28.64718 23.68844,-32.90808 -4.72747,-12.01317 -16.22655,-41.63594 -14.75104,-56.77228 0,-64.0063 56.4361,-107.62885 99.78443,-107.62885 z"
+           id="path5360"
+           sodipodi:nodetypes="cscscscssccc" />
+        <path
+           style="fill:url(#linearGradient5418);fill-opacity:1;stroke:none;display:inline"
+           d="m 490.31195,501.99861 c -60.00789,5.2168 -107.09001,72.04563 -87.91275,130.02861 3.24896,11.23668 7.4696,22.02332 11.76512,32.91665 -17.10352,2.3543 -30.64729,22.97 -22.60171,38.87257 9.92701,7.54432 25.07255,0.6534 34.73089,-4.85167 7.42667,-3.29797 14.4103,-16.70707 22.4242,-8.81585 27.77649,18.77637 65.82806,19.08025 95.67267,4.67417 20.86926,-11.02272 37.47189,-28.76927 48.93091,-49.34508 14.74215,-1.58804 16.27001,17.47813 18.99254,27.45338 0.40886,4.51328 3.3967,8.81801 7.98751,5.20668 14.08663,-11.21914 9.21231,-35.07831 -2.89918,-46.09092 -4.88828,-6.56095 -18.41674,-5.38103 -14.08168,-15.79752 5.24687,-35.96374 -12.50977,-72.63257 -42.30424,-92.47766 -20.53437,-14.48216 -45.42828,-23.02847 -70.70428,-21.77336 z"
+           id="path5362" />
+        <g
+           id="g5364"
+           style="filter:url(#filter6139)"
+           transform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)">
+          <path
+             style="fill:#000000"
+             d="m 298.82133,588.93345 c -2.29156,-1.78445 -2.67759,-2.6514 -2.36383,-5.30877 0.43402,-3.67579 2.33363,-6.95779 4.7302,-8.17246 2.89097,-1.46525 8.66145,0.59446 10.64667,3.80022 1.73266,2.79791 1.70055,3.08784 -0.64437,5.81654 -5.03306,5.85678 -8.44226,6.92196 -12.36867,3.86447 z m 0.41149,-3.50969 c -0.51028,-1.00681 -0.55336,-2.93153 -0.0957,-4.27716 0.75581,-2.22223 0.70222,-2.29827 -0.58439,-0.82916 -1.55776,1.77869 -1.11814,7.38176 0.55771,7.10826 0.59569,-0.0972 0.64864,-0.96358 0.12236,-2.00194 z m 42.53089,-10.56797 c -4.37619,-1.12247 -4.76359,-1.68534 -4.27461,-6.2109 0.71771,-6.64236 7.74124,-8.66 11.45175,-3.28971 l 1.4422,2.08734 -1.98548,-1.94863 c -2.57753,-2.52969 -4.41704,-2.25588 -1.93633,0.28823 1.03863,1.06518 2.01083,2.68676 2.16044,3.60351 0.14961,0.91674 0.85584,1.76277 1.56939,1.88004 1.01145,0.16623 1.05862,0.6223 0.21404,2.06936 -1.28705,2.20519 -4.06622,2.69428 -8.6414,1.52076 z"
+             id="path5366"
+             sodipodi:nodetypes="cssssccsssccscccssssc" />
+          <path
+             style="fill:#000000;fill-rule:evenodd;stroke:none"
+             d="m 326.7844,595.06579 c -2.46648,-3.36183 4.00801,-2.92998 8.50563,-3.66397 5.54213,-0.90445 8.50715,-10.28293 7.21632,-4.59151 -1.29085,5.69142 -3.73324,11.98871 -2.82879,17.53084 -7.35103,-10.17981 -10.42669,-5.91353 -12.89316,-9.27536 z"
+             id="path5368"
+             sodipodi:nodetypes="cszcz" />
+          <path
+             style="fill:#000000;fill-rule:evenodd;stroke:none"
+             d="m 320.3929,612.59663 c 11.98871,3.73323 13.94857,-6.3862 19.66087,-8.09427 6.9752,-2.08571 11.6125,3.57202 16.25018,-2.87455 -4.63768,6.44657 -10.95623,2.5679 -16.296,5.78527 -5.18035,3.1213 -7.62634,8.91678 -19.61505,5.18355 z"
+             id="path5370"
+             sodipodi:nodetypes="cscsc" />
+          <path
+             style="fill:#ffffff;stroke:none"
+             d="m 336.68588,599.4815 c 0.006,-0.2019 -0.36096,-0.64796 -0.42276,-1.47067 -0.29657,-3.94831 -6.1911,-6.21808 -7.25759,-3.43571 -0.24338,0.63493 0.58774,1.16912 1.89749,1.23685 1.26995,0.0657 3.17607,1.09972 4.23457,2.30131 1.09251,1.24015 1.53854,1.70469 1.54829,1.36822 z"
+             id="path5372"
+             sodipodi:nodetypes="cssssc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5374"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(158.05541,475.03407)" />
+          <path
+             transform="translate(162.2659,476.65349)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5376"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5378"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(159.35094,479.24456)" />
+          <path
+             transform="translate(178.4601,467.90862)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5380"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5382"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(178.13622,471.79523)" />
+          <path
+             transform="translate(182.02283,470.17581)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5384"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5386"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(142.83286,441.9979)" />
+          <path
+             transform="translate(163.88532,436.81576)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5388"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+        </g>
+        <path
+           style="fill:#000000"
+           d="m 460.44944,619.67363 c -4.33869,-3.37857 -5.06957,-5.01999 -4.47552,-10.05129 0.82174,-6.9595 4.41835,-13.17343 8.95586,-15.47322 5.47358,-2.7742 16.39904,1.12552 20.15773,7.1951 3.28051,5.29739 3.21971,5.84632 -1.22001,11.01267 -9.52928,11.08886 -15.98404,13.1056 -23.41806,7.31674 z m 0.77909,-6.64502 c -0.96613,-1.90623 -1.0477,-5.55038 -0.18119,-8.09811 1.431,-4.20743 1.32954,-4.35139 -1.10644,-1.56987 -2.94937,3.36765 -2.11702,13.97616 1.05592,13.45832 1.12785,-0.18403 1.2281,-1.82437 0.23167,-3.79034 z m 80.52529,-20.00873 c -8.2856,-2.12521 -9.01908,-3.19091 -8.09328,-11.75932 1.35887,-12.57622 14.65678,-16.3963 21.68203,-6.22853 l 2.73056,3.95204 -3.75918,-3.68942 c -4.88013,-4.78955 -8.36295,-4.27113 -3.66612,0.54573 1.96648,2.01674 3.80717,5.08693 4.09043,6.82265 0.28327,1.7357 1.6204,3.33752 2.97139,3.55955 1.91502,0.31473 2.00433,1.17822 0.40525,3.91799 -2.43681,4.17517 -7.69872,5.10118 -16.36108,2.87931 z"
+           id="path5390"
+           sodipodi:nodetypes="cssssccsssccscccssssc" />
+        <path
+           style="fill:#000000;fill-rule:evenodd;stroke:none"
+           d="m 543.50287,612.20201 c -1.0397,0.5283 -6.15268,10.84486 -14.02253,12.12919 -8.5155,1.38969 -20.76323,0.61661 -16.09335,6.98168 4.66985,6.36508 10.51789,-1.76044 24.43586,17.51336 -1.71242,-10.49311 2.881,-22.41678 5.32502,-33.19256 0.61099,-2.69393 0.70155,-3.60776 0.355,-3.43167 z M 521.552,627.99954 c 3.99071,0.0596 9.37648,3.73563 9.76251,8.87501 0.11701,1.55767 0.8397,2.39858 0.82834,2.78085 -0.0184,0.63705 -0.88985,-0.25532 -2.95834,-2.60335 -2.0041,-2.27501 -5.58307,-4.25394 -7.98752,-4.37833 -2.47979,-0.12824 -4.06997,-1.10537 -3.60917,-2.30751 0.63101,-1.64624 2.15021,-2.39375 3.96418,-2.36667 z"
+           id="path5392" />
+        <path
+           style="fill:#000000;fill-rule:evenodd;stroke:none"
+           d="m 501.29168,664.476 c 22.69867,7.06826 26.40934,-12.09123 37.22465,-15.32518 13.2064,-3.94896 21.98637,6.76303 30.76706,-5.44249 -8.78069,12.20552 -20.74383,4.8619 -30.85381,10.95346 -9.80815,5.90967 -14.43923,16.88247 -37.1379,9.81421 z"
+           id="path5394"
+           sodipodi:nodetypes="cscsc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5396"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,193.93219,404.02378)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,201.90406,407.08988)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5398"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5400"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,196.38506,411.99565)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,232.56513,390.5329)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5402"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5404"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,231.95192,397.89157)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,239.31058,394.82545)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5406"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5408"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,165.11077,341.47519)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,204.97017,331.66365)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5410"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           id="path5412"
+           d="m 414.16432,664.94387 c -17.10352,2.3543 -30.64729,22.97 -22.60171,38.87257 9.92701,7.54432 25.07255,0.6534 34.73089,-4.85167 7.42667,-3.29797 8.51536,-16.70707 16.52927,-8.81585 -12.5884,-9.64496 -22.24114,-11.62267 -28.65845,-25.20505 z"
+           style="fill:url(#linearGradient5420);fill-opacity:1;stroke:none;display:inline"
+           sodipodi:nodetypes="ccccc" />
+        <path
+           id="path5414"
+           d="m 593.32128,645.47801 c 14.74215,-1.58804 16.27001,17.47813 18.99254,27.45338 0.40886,4.51328 3.3967,8.81801 7.98751,5.20668 14.08663,-11.21914 9.21231,-35.07831 -2.89918,-46.09092 -4.88828,-6.56095 -18.41674,-5.38103 -14.08168,-15.79752 l -9.99919,29.22838 z"
+           style="fill:url(#linearGradient5422);fill-opacity:1;stroke:none;display:inline"
+           sodipodi:nodetypes="cccccc" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/pyhoca-trayicon.svg b/icons/PyHoca/scalable/pyhoca-trayicon.svg
new file mode 100644
index 0000000..e1588b8
--- /dev/null
+++ b/icons/PyHoca/scalable/pyhoca-trayicon.svg
@@ -0,0 +1,568 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7187"
+   sodipodi:version="0.32"
+   inkscape:version="0.47 r22583"
+   sodipodi:docname="auth_error.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.1">
+  <defs
+     id="defs7189">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 24 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="48 : 24 : 1"
+       inkscape:persp3d-origin="24 : 16 : 1"
+       id="perspective3859" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4873">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4875" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4877" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4873"
+       id="linearGradient2704"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.3440063,0,0,2.3440063,-121.79862,31.22942)"
+       x1="62.745731"
+       y1="-13.444987"
+       x2="62.608765"
+       y2="7.1072145" />
+    <linearGradient
+       id="linearGradient3811">
+      <stop
+         id="stop3813"
+         offset="0"
+         style="stop-color:#a40000;stop-opacity:1" />
+      <stop
+         id="stop3815"
+         offset="1"
+         style="stop-color:#c22f2f;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3811"
+       id="linearGradient3927"
+       x1="15.046636"
+       y1="44.787998"
+       x2="15.046636"
+       y2="3.8851264"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0805272,0,0,1.0805026,-1.508285,-3.3507596)" />
+    <linearGradient
+       id="linearGradient5106">
+      <stop
+         style="stop-color:#e78181;stop-opacity:1"
+         offset="0"
+         id="stop5108" />
+      <stop
+         id="stop8208"
+         offset="0.25288007"
+         style="stop-color:#e15f5f;stop-opacity:1" />
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0.68271071"
+         id="stop8210" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop5110" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5106"
+       id="radialGradient2707"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-7.565785,-6.219707e-7,3.9644633e-7,-4.8230546,494.60904,-26.555114)"
+       cx="62.202274"
+       cy="-5.7132163"
+       fx="62.202274"
+       fy="-5.7132163"
+       r="9.7552835" />
+    <linearGradient
+       id="linearGradient10691"
+       inkscape:collect="always">
+      <stop
+         id="stop10693"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" />
+      <stop
+         id="stop10695"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient10691"
+       id="radialGradient3080"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.902215,0.525703)"
+       cx="6.702713"
+       cy="73.615715"
+       fx="6.702713"
+       fy="73.615715"
+       r="7.228416" />
+    <inkscape:perspective
+       id="perspective3453"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <pattern
+       inkscape:stockid="Wavy"
+       id="Wavy"
+       height="5.1805778"
+       width="30.066020"
+       patternUnits="userSpaceOnUse"
+       inkscape:collect="always">
+      <path
+         id="path5228"
+         d="M 7.597,0.061 C 5.079,-0.187 2.656,0.302 -0.01,1.788 L -0.01,3.061 C 2.773,1.431 5.173,1.052 7.472,1.280 C 9.770,1.508 11.969,2.361 14.253,3.218 C 18.820,4.931 23.804,6.676 30.066,3.061 L 30.062,1.788 C 23.622,5.497 19.246,3.770 14.691,2.061 C 12.413,1.207 10.115,0.311 7.597,0.061 z "
+         style="fill:black;stroke:none;" />
+    </pattern>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter5442">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.57490299"
+         id="feGaussianBlur5444" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5430"
+       id="linearGradient5436"
+       x1="185"
+       y1="1047.3622"
+       x2="185"
+       y2="796.36218"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5430">
+      <stop
+         style="stop-color:#906f6f;stop-opacity:1;"
+         offset="0"
+         id="stop5432" />
+      <stop
+         style="stop-color:#906f6f;stop-opacity:0;"
+         offset="1"
+         id="stop5434" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter6083">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="3.312185"
+         id="feGaussianBlur6085" />
+    </filter>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3785"
+       id="radialGradient5416"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.1160336,-4.3876452,5.2088758,1.3249203,-2874.6294,1237.254)"
+       cx="315.79904"
+       cy="584.86487"
+       fx="315.79904"
+       fy="584.86487"
+       r="65.742714" />
+    <linearGradient
+       id="linearGradient3785">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3787" />
+      <stop
+         style="stop-color:#969696;stop-opacity:1;"
+         offset="1"
+         id="stop3789" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5937"
+       id="linearGradient5418"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="310.53839"
+       y1="551.9931"
+       x2="324.48233"
+       y2="615.26996" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5937">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5939" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5941" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter6139">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.78400333"
+         id="feGaussianBlur6141" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5947"
+       id="linearGradient5420"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="261.17963"
+       y1="635.13214"
+       x2="261.17963"
+       y2="612.84375" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5947">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5949" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5951" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5937"
+       id="linearGradient5422"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="387.78506"
+       y1="620.52393"
+       x2="378.39252"
+       y2="603.82446" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="23.859533"
+     inkscape:cy="34.916834"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="1024"
+     inkscape:window-height="571"
+     inkscape:window-x="0"
+     inkscape:window-y="6"
+     inkscape:window-maximized="1" />
+  <metadata
+     id="metadata7192">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       transform="matrix(0.38132965,0,0,0.38132965,-60.655233,-353.27311)"
+       style="display:inline"
+       id="g3410"
+       inkscape:export-filename="/home/mike/MyDocuments/4projects/nwt-x2go/pyhoca-gui/trunk/icons/PyHoca/pyhoca-trayicon.png"
+       inkscape:export-xdpi="457.14001"
+       inkscape:export-ydpi="457.14001">
+      <rect
+         y="926.42456"
+         x="159.0625"
+         height="125.87531"
+         width="125.87534"
+         id="rect2927"
+         style="fill:none;stroke:#000000;stroke-width:0.01776883;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+      <rect
+         y="932.37238"
+         x="165.00909"
+         height="114.98058"
+         width="114.98061"
+         id="rect5426"
+         style="fill:url(#Wavy);fill-opacity:1;stroke:none;filter:url(#filter5442)"
+         ry="14.010298" />
+      <rect
+         ry="14.010298"
+         style="fill:url(#linearGradient5436);fill-opacity:1;stroke:#000000;stroke-width:2.01939631;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+         id="rect5424"
+         width="114.98061"
+         height="114.98058"
+         x="165.00909"
+         y="932.37238" />
+      <g
+         inkscape:export-ydpi="510.97"
+         inkscape:export-xdpi="510.97"
+         inkscape:export-filename="/home/mike/MyDocuments/4projects/nwt-x2go/pyhoca-gui/trunk/icons/PyHoca/pyhoca-trayicon.png"
+         id="g5356"
+         transform="matrix(0.40396742,0,0,0.40396742,19.556638,743.47149)">
+        <path
+           sodipodi:nodetypes="cscscscssccc"
+           id="path5358"
+           d="m 316.61834,524.71563 c 26.41286,-0.50329 59.97357,20.96914 59.97357,54.77527 0,3.59736 -0.19322,7.03227 -0.56789,10.30345 18.06989,6.26688 16.71273,32.24949 4.78688,32.70339 -5.47132,0.20824 -3.56548,-18.31078 -10.6487,-17.92457 -7.89714,13.75136 -23.13,29.30724 -43.89259,30.96552 -18.87348,1.5074 -26.67203,-2.56514 -36.54057,-8.85826 -3.46673,2.19939 -7.55736,6.26792 -11.8477,7.98433 -9.00177,3.60129 -18.6864,4.30272 -18.6864,-5.73669 0,-8.21915 4.89649,-15.13053 12.51148,-17.381 -2.4969,-6.34498 -8.57035,-21.99078 -7.79103,-29.98531 0,-33.80609 29.80775,-56.84613 52.70295,-56.84613 z"
+           style="fill:#000000;fill-opacity:1;stroke:#737373;stroke-width:0.97799999;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline;filter:url(#filter6083)"
+           transform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)" />
+        <path
+           style="fill:url(#radialGradient5416);fill-opacity:1;stroke:#737373;stroke-width:1.85168302;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
+           d="m 494.14518,498.08769 c 50.00843,-0.9529 113.55014,39.70163 113.55014,103.70802 0,6.81101 -0.36583,13.31445 -1.0752,19.50789 34.21238,11.86532 31.64282,61.05914 9.06317,61.91853 -10.35905,0.39427 -6.75065,-34.66848 -20.16157,-33.93724 -14.95194,26.03594 -43.79287,55.48846 -83.10344,58.62814 -35.73385,2.85402 -50.49914,-4.85667 -69.1836,-16.77167 -6.56369,4.16419 -14.30863,11.86728 -22.43168,15.11703 -17.04338,6.81846 -35.37965,8.1465 -35.37965,-10.86149 0,-15.56161 9.27071,-28.64718 23.68844,-32.90808 -4.72747,-12.01317 -16.22655,-41.63594 -14.75104,-56.77228 0,-64.0063 56.4361,-107.62885 99.78443,-107.62885 z"
+           id="path5360"
+           sodipodi:nodetypes="cscscscssccc" />
+        <path
+           style="fill:url(#linearGradient5418);fill-opacity:1;stroke:none;display:inline"
+           d="m 490.31195,501.99861 c -60.00789,5.2168 -107.09001,72.04563 -87.91275,130.02861 3.24896,11.23668 7.4696,22.02332 11.76512,32.91665 -17.10352,2.3543 -30.64729,22.97 -22.60171,38.87257 9.92701,7.54432 25.07255,0.6534 34.73089,-4.85167 7.42667,-3.29797 14.4103,-16.70707 22.4242,-8.81585 27.77649,18.77637 65.82806,19.08025 95.67267,4.67417 20.86926,-11.02272 37.47189,-28.76927 48.93091,-49.34508 14.74215,-1.58804 16.27001,17.47813 18.99254,27.45338 0.40886,4.51328 3.3967,8.81801 7.98751,5.20668 14.08663,-11.21914 9.21231,-35.07831 -2.89918,-46.09092 -4.88828,-6.56095 -18.41674,-5.38103 -14.08168,-15.79752 5.24687,-35.96374 -12.50977,-72.63257 -42.30424,-92.47766 -20.53437,-14.48216 -45.42828,-23.02847 -70.70428,-21.77336 z"
+           id="path5362" />
+        <g
+           id="g5364"
+           style="filter:url(#filter6139)"
+           transform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)">
+          <path
+             style="fill:#000000"
+             d="m 298.82133,588.93345 c -2.29156,-1.78445 -2.67759,-2.6514 -2.36383,-5.30877 0.43402,-3.67579 2.33363,-6.95779 4.7302,-8.17246 2.89097,-1.46525 8.66145,0.59446 10.64667,3.80022 1.73266,2.79791 1.70055,3.08784 -0.64437,5.81654 -5.03306,5.85678 -8.44226,6.92196 -12.36867,3.86447 z m 0.41149,-3.50969 c -0.51028,-1.00681 -0.55336,-2.93153 -0.0957,-4.27716 0.75581,-2.22223 0.70222,-2.29827 -0.58439,-0.82916 -1.55776,1.77869 -1.11814,7.38176 0.55771,7.10826 0.59569,-0.0972 0.64864,-0.96358 0.12236,-2.00194 z m 42.53089,-10.56797 c -4.37619,-1.12247 -4.76359,-1.68534 -4.27461,-6.2109 0.71771,-6.64236 7.74124,-8.66 11.45175,-3.28971 l 1.4422,2.08734 -1.98548,-1.94863 c -2.57753,-2.52969 -4.41704,-2.25588 -1.93633,0.28823 1.03863,1.06518 2.01083,2.68676 2.16044,3.60351 0.14961,0.91674 0.85584,1.76277 1.56939,1.88004 1.01145,0.16623 1.05862,0.6223 0.21404,2.06936 -1.28705,2.20519 -4.06622,2.69428 -8.6414,1.52076 z"
+             id="path5366"
+             sodipodi:nodetypes="cssssccsssccscccssssc" />
+          <path
+             style="fill:#000000;fill-rule:evenodd;stroke:none"
+             d="m 326.7844,595.06579 c -2.46648,-3.36183 4.00801,-2.92998 8.50563,-3.66397 5.54213,-0.90445 8.50715,-10.28293 7.21632,-4.59151 -1.29085,5.69142 -3.73324,11.98871 -2.82879,17.53084 -7.35103,-10.17981 -10.42669,-5.91353 -12.89316,-9.27536 z"
+             id="path5368"
+             sodipodi:nodetypes="cszcz" />
+          <path
+             style="fill:#000000;fill-rule:evenodd;stroke:none"
+             d="m 320.3929,612.59663 c 11.98871,3.73323 13.94857,-6.3862 19.66087,-8.09427 6.9752,-2.08571 11.6125,3.57202 16.25018,-2.87455 -4.63768,6.44657 -10.95623,2.5679 -16.296,5.78527 -5.18035,3.1213 -7.62634,8.91678 -19.61505,5.18355 z"
+             id="path5370"
+             sodipodi:nodetypes="cscsc" />
+          <path
+             style="fill:#ffffff;stroke:none"
+             d="m 336.68588,599.4815 c 0.006,-0.2019 -0.36096,-0.64796 -0.42276,-1.47067 -0.29657,-3.94831 -6.1911,-6.21808 -7.25759,-3.43571 -0.24338,0.63493 0.58774,1.16912 1.89749,1.23685 1.26995,0.0657 3.17607,1.09972 4.23457,2.30131 1.09251,1.24015 1.53854,1.70469 1.54829,1.36822 z"
+             id="path5372"
+             sodipodi:nodetypes="cssssc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5374"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(158.05541,475.03407)" />
+          <path
+             transform="translate(162.2659,476.65349)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5376"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5378"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(159.35094,479.24456)" />
+          <path
+             transform="translate(178.4601,467.90862)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5380"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5382"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(178.13622,471.79523)" />
+          <path
+             transform="translate(182.02283,470.17581)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5384"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5386"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(142.83286,441.9979)" />
+          <path
+             transform="translate(163.88532,436.81576)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5388"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+        </g>
+        <path
+           style="fill:#000000"
+           d="m 460.44944,619.67363 c -4.33869,-3.37857 -5.06957,-5.01999 -4.47552,-10.05129 0.82174,-6.9595 4.41835,-13.17343 8.95586,-15.47322 5.47358,-2.7742 16.39904,1.12552 20.15773,7.1951 3.28051,5.29739 3.21971,5.84632 -1.22001,11.01267 -9.52928,11.08886 -15.98404,13.1056 -23.41806,7.31674 z m 0.77909,-6.64502 c -0.96613,-1.90623 -1.0477,-5.55038 -0.18119,-8.09811 1.431,-4.20743 1.32954,-4.35139 -1.10644,-1.56987 -2.94937,3.36765 -2.11702,13.97616 1.05592,13.45832 1.12785,-0.18403 1.2281,-1.82437 0.23167,-3.79034 z m 80.52529,-20.00873 c -8.2856,-2.12521 -9.01908,-3.19091 -8.09328,-11.75932 1.35887,-12.57622 14.65678,-16.3963 21.68203,-6.22853 l 2.73056,3.95204 -3.75918,-3.68942 c -4.88013,-4.78955 -8.36295,-4.27113 -3.66612,0.54573 1.96648,2.01674 3.80717,5.08693 4.09043,6.82265 0.28327,1.7357 1.6204,3.33752 2.97139,3.55955 1.91502,0.31473 2.00433,1.17822 0.40525,3.91799 -2.43681,4.17517 -7.69872,5.10118 -16.36108,2.87931 z"
+           id="path5390"
+           sodipodi:nodetypes="cssssccsssccscccssssc" />
+        <path
+           style="fill:#000000;fill-rule:evenodd;stroke:none"
+           d="m 543.50287,612.20201 c -1.0397,0.5283 -6.15268,10.84486 -14.02253,12.12919 -8.5155,1.38969 -20.76323,0.61661 -16.09335,6.98168 4.66985,6.36508 10.51789,-1.76044 24.43586,17.51336 -1.71242,-10.49311 2.881,-22.41678 5.32502,-33.19256 0.61099,-2.69393 0.70155,-3.60776 0.355,-3.43167 z M 521.552,627.99954 c 3.99071,0.0596 9.37648,3.73563 9.76251,8.87501 0.11701,1.55767 0.8397,2.39858 0.82834,2.78085 -0.0184,0.63705 -0.88985,-0.25532 -2.95834,-2.60335 -2.0041,-2.27501 -5.58307,-4.25394 -7.98752,-4.37833 -2.47979,-0.12824 -4.06997,-1.10537 -3.60917,-2.30751 0.63101,-1.64624 2.15021,-2.39375 3.96418,-2.36667 z"
+           id="path5392" />
+        <path
+           style="fill:#000000;fill-rule:evenodd;stroke:none"
+           d="m 501.29168,664.476 c 22.69867,7.06826 26.40934,-12.09123 37.22465,-15.32518 13.2064,-3.94896 21.98637,6.76303 30.76706,-5.44249 -8.78069,12.20552 -20.74383,4.8619 -30.85381,10.95346 -9.80815,5.90967 -14.43923,16.88247 -37.1379,9.81421 z"
+           id="path5394"
+           sodipodi:nodetypes="cscsc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5396"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,193.93219,404.02378)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,201.90406,407.08988)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5398"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5400"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,196.38506,411.99565)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,232.56513,390.5329)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5402"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5404"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,231.95192,397.89157)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,239.31058,394.82545)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5406"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5408"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,165.11077,341.47519)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,204.97017,331.66365)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5410"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           id="path5412"
+           d="m 414.16432,664.94387 c -17.10352,2.3543 -30.64729,22.97 -22.60171,38.87257 9.92701,7.54432 25.07255,0.6534 34.73089,-4.85167 7.42667,-3.29797 8.51536,-16.70707 16.52927,-8.81585 -12.5884,-9.64496 -22.24114,-11.62267 -28.65845,-25.20505 z"
+           style="fill:url(#linearGradient5420);fill-opacity:1;stroke:none;display:inline"
+           sodipodi:nodetypes="ccccc" />
+        <path
+           id="path5414"
+           d="m 593.32128,645.47801 c 14.74215,-1.58804 16.27001,17.47813 18.99254,27.45338 0.40886,4.51328 3.3967,8.81801 7.98751,5.20668 14.08663,-11.21914 9.21231,-35.07831 -2.89918,-46.09092 -4.88828,-6.56095 -18.41674,-5.38103 -14.08168,-15.79752 l -9.99919,29.22838 z"
+           style="fill:url(#linearGradient5422);fill-opacity:1;stroke:none;display:inline"
+           sodipodi:nodetypes="cccccc" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/pyhoca-winicon.svg b/icons/PyHoca/scalable/pyhoca-winicon.svg
new file mode 100644
index 0000000..e1588b8
--- /dev/null
+++ b/icons/PyHoca/scalable/pyhoca-winicon.svg
@@ -0,0 +1,568 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7187"
+   sodipodi:version="0.32"
+   inkscape:version="0.47 r22583"
+   sodipodi:docname="auth_error.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.1">
+  <defs
+     id="defs7189">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 24 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="48 : 24 : 1"
+       inkscape:persp3d-origin="24 : 16 : 1"
+       id="perspective3859" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4873">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4875" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4877" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4873"
+       id="linearGradient2704"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(2.3440063,0,0,2.3440063,-121.79862,31.22942)"
+       x1="62.745731"
+       y1="-13.444987"
+       x2="62.608765"
+       y2="7.1072145" />
+    <linearGradient
+       id="linearGradient3811">
+      <stop
+         id="stop3813"
+         offset="0"
+         style="stop-color:#a40000;stop-opacity:1" />
+      <stop
+         id="stop3815"
+         offset="1"
+         style="stop-color:#c22f2f;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3811"
+       id="linearGradient3927"
+       x1="15.046636"
+       y1="44.787998"
+       x2="15.046636"
+       y2="3.8851264"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0805272,0,0,1.0805026,-1.508285,-3.3507596)" />
+    <linearGradient
+       id="linearGradient5106">
+      <stop
+         style="stop-color:#e78181;stop-opacity:1"
+         offset="0"
+         id="stop5108" />
+      <stop
+         id="stop8208"
+         offset="0.25288007"
+         style="stop-color:#e15f5f;stop-opacity:1" />
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0.68271071"
+         id="stop8210" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop5110" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5106"
+       id="radialGradient2707"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-7.565785,-6.219707e-7,3.9644633e-7,-4.8230546,494.60904,-26.555114)"
+       cx="62.202274"
+       cy="-5.7132163"
+       fx="62.202274"
+       fy="-5.7132163"
+       r="9.7552835" />
+    <linearGradient
+       id="linearGradient10691"
+       inkscape:collect="always">
+      <stop
+         id="stop10693"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" />
+      <stop
+         id="stop10695"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient10691"
+       id="radialGradient3080"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.902215,0.525703)"
+       cx="6.702713"
+       cy="73.615715"
+       fx="6.702713"
+       fy="73.615715"
+       r="7.228416" />
+    <inkscape:perspective
+       id="perspective3453"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <pattern
+       inkscape:stockid="Wavy"
+       id="Wavy"
+       height="5.1805778"
+       width="30.066020"
+       patternUnits="userSpaceOnUse"
+       inkscape:collect="always">
+      <path
+         id="path5228"
+         d="M 7.597,0.061 C 5.079,-0.187 2.656,0.302 -0.01,1.788 L -0.01,3.061 C 2.773,1.431 5.173,1.052 7.472,1.280 C 9.770,1.508 11.969,2.361 14.253,3.218 C 18.820,4.931 23.804,6.676 30.066,3.061 L 30.062,1.788 C 23.622,5.497 19.246,3.770 14.691,2.061 C 12.413,1.207 10.115,0.311 7.597,0.061 z "
+         style="fill:black;stroke:none;" />
+    </pattern>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter5442">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.57490299"
+         id="feGaussianBlur5444" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5430"
+       id="linearGradient5436"
+       x1="185"
+       y1="1047.3622"
+       x2="185"
+       y2="796.36218"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5430">
+      <stop
+         style="stop-color:#906f6f;stop-opacity:1;"
+         offset="0"
+         id="stop5432" />
+      <stop
+         style="stop-color:#906f6f;stop-opacity:0;"
+         offset="1"
+         id="stop5434" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter6083">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="3.312185"
+         id="feGaussianBlur6085" />
+    </filter>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3785"
+       id="radialGradient5416"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.1160336,-4.3876452,5.2088758,1.3249203,-2874.6294,1237.254)"
+       cx="315.79904"
+       cy="584.86487"
+       fx="315.79904"
+       fy="584.86487"
+       r="65.742714" />
+    <linearGradient
+       id="linearGradient3785">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3787" />
+      <stop
+         style="stop-color:#969696;stop-opacity:1;"
+         offset="1"
+         id="stop3789" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5937"
+       id="linearGradient5418"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="310.53839"
+       y1="551.9931"
+       x2="324.48233"
+       y2="615.26996" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5937">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5939" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5941" />
+    </linearGradient>
+    <filter
+       color-interpolation-filters="sRGB"
+       inkscape:collect="always"
+       id="filter6139">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.78400333"
+         id="feGaussianBlur6141" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5947"
+       id="linearGradient5420"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="261.17963"
+       y1="635.13214"
+       x2="261.17963"
+       y2="612.84375" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5947">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5949" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5951" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5937"
+       id="linearGradient5422"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)"
+       x1="387.78506"
+       y1="620.52393"
+       x2="378.39252"
+       y2="603.82446" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="23.859533"
+     inkscape:cy="34.916834"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="1024"
+     inkscape:window-height="571"
+     inkscape:window-x="0"
+     inkscape:window-y="6"
+     inkscape:window-maximized="1" />
+  <metadata
+     id="metadata7192">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       transform="matrix(0.38132965,0,0,0.38132965,-60.655233,-353.27311)"
+       style="display:inline"
+       id="g3410"
+       inkscape:export-filename="/home/mike/MyDocuments/4projects/nwt-x2go/pyhoca-gui/trunk/icons/PyHoca/pyhoca-trayicon.png"
+       inkscape:export-xdpi="457.14001"
+       inkscape:export-ydpi="457.14001">
+      <rect
+         y="926.42456"
+         x="159.0625"
+         height="125.87531"
+         width="125.87534"
+         id="rect2927"
+         style="fill:none;stroke:#000000;stroke-width:0.01776883;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+      <rect
+         y="932.37238"
+         x="165.00909"
+         height="114.98058"
+         width="114.98061"
+         id="rect5426"
+         style="fill:url(#Wavy);fill-opacity:1;stroke:none;filter:url(#filter5442)"
+         ry="14.010298" />
+      <rect
+         ry="14.010298"
+         style="fill:url(#linearGradient5436);fill-opacity:1;stroke:#000000;stroke-width:2.01939631;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+         id="rect5424"
+         width="114.98061"
+         height="114.98058"
+         x="165.00909"
+         y="932.37238" />
+      <g
+         inkscape:export-ydpi="510.97"
+         inkscape:export-xdpi="510.97"
+         inkscape:export-filename="/home/mike/MyDocuments/4projects/nwt-x2go/pyhoca-gui/trunk/icons/PyHoca/pyhoca-trayicon.png"
+         id="g5356"
+         transform="matrix(0.40396742,0,0,0.40396742,19.556638,743.47149)">
+        <path
+           sodipodi:nodetypes="cscscscssccc"
+           id="path5358"
+           d="m 316.61834,524.71563 c 26.41286,-0.50329 59.97357,20.96914 59.97357,54.77527 0,3.59736 -0.19322,7.03227 -0.56789,10.30345 18.06989,6.26688 16.71273,32.24949 4.78688,32.70339 -5.47132,0.20824 -3.56548,-18.31078 -10.6487,-17.92457 -7.89714,13.75136 -23.13,29.30724 -43.89259,30.96552 -18.87348,1.5074 -26.67203,-2.56514 -36.54057,-8.85826 -3.46673,2.19939 -7.55736,6.26792 -11.8477,7.98433 -9.00177,3.60129 -18.6864,4.30272 -18.6864,-5.73669 0,-8.21915 4.89649,-15.13053 12.51148,-17.381 -2.4969,-6.34498 -8.57035,-21.99078 -7.79103,-29.98531 0,-33.80609 29.80775,-56.84613 52.70295,-56.84613 z"
+           style="fill:#000000;fill-opacity:1;stroke:#737373;stroke-width:0.97799999;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline;filter:url(#filter6083)"
+           transform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)" />
+        <path
+           style="fill:url(#radialGradient5416);fill-opacity:1;stroke:#737373;stroke-width:1.85168302;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
+           d="m 494.14518,498.08769 c 50.00843,-0.9529 113.55014,39.70163 113.55014,103.70802 0,6.81101 -0.36583,13.31445 -1.0752,19.50789 34.21238,11.86532 31.64282,61.05914 9.06317,61.91853 -10.35905,0.39427 -6.75065,-34.66848 -20.16157,-33.93724 -14.95194,26.03594 -43.79287,55.48846 -83.10344,58.62814 -35.73385,2.85402 -50.49914,-4.85667 -69.1836,-16.77167 -6.56369,4.16419 -14.30863,11.86728 -22.43168,15.11703 -17.04338,6.81846 -35.37965,8.1465 -35.37965,-10.86149 0,-15.56161 9.27071,-28.64718 23.68844,-32.90808 -4.72747,-12.01317 -16.22655,-41.63594 -14.75104,-56.77228 0,-64.0063 56.4361,-107.62885 99.78443,-107.62885 z"
+           id="path5360"
+           sodipodi:nodetypes="cscscscssccc" />
+        <path
+           style="fill:url(#linearGradient5418);fill-opacity:1;stroke:none;display:inline"
+           d="m 490.31195,501.99861 c -60.00789,5.2168 -107.09001,72.04563 -87.91275,130.02861 3.24896,11.23668 7.4696,22.02332 11.76512,32.91665 -17.10352,2.3543 -30.64729,22.97 -22.60171,38.87257 9.92701,7.54432 25.07255,0.6534 34.73089,-4.85167 7.42667,-3.29797 14.4103,-16.70707 22.4242,-8.81585 27.77649,18.77637 65.82806,19.08025 95.67267,4.67417 20.86926,-11.02272 37.47189,-28.76927 48.93091,-49.34508 14.74215,-1.58804 16.27001,17.47813 18.99254,27.45338 0.40886,4.51328 3.3967,8.81801 7.98751,5.20668 14.08663,-11.21914 9.21231,-35.07831 -2.89918,-46.09092 -4.88828,-6.56095 -18.41674,-5.38103 -14.08168,-15.79752 5.24687,-35.96374 -12.50977,-72.63257 -42.30424,-92.47766 -20.53437,-14.48216 -45.42828,-23.02847 -70.70428,-21.77336 z"
+           id="path5362" />
+        <g
+           id="g5364"
+           style="filter:url(#filter6139)"
+           transform="matrix(1.8933365,0,0,1.8933365,-105.31989,-495.37559)">
+          <path
+             style="fill:#000000"
+             d="m 298.82133,588.93345 c -2.29156,-1.78445 -2.67759,-2.6514 -2.36383,-5.30877 0.43402,-3.67579 2.33363,-6.95779 4.7302,-8.17246 2.89097,-1.46525 8.66145,0.59446 10.64667,3.80022 1.73266,2.79791 1.70055,3.08784 -0.64437,5.81654 -5.03306,5.85678 -8.44226,6.92196 -12.36867,3.86447 z m 0.41149,-3.50969 c -0.51028,-1.00681 -0.55336,-2.93153 -0.0957,-4.27716 0.75581,-2.22223 0.70222,-2.29827 -0.58439,-0.82916 -1.55776,1.77869 -1.11814,7.38176 0.55771,7.10826 0.59569,-0.0972 0.64864,-0.96358 0.12236,-2.00194 z m 42.53089,-10.56797 c -4.37619,-1.12247 -4.76359,-1.68534 -4.27461,-6.2109 0.71771,-6.64236 7.74124,-8.66 11.45175,-3.28971 l 1.4422,2.08734 -1.98548,-1.94863 c -2.57753,-2.52969 -4.41704,-2.25588 -1.93633,0.28823 1.03863,1.06518 2.01083,2.68676 2.16044,3.60351 0.14961,0.91674 0.85584,1.76277 1.56939,1.88004 1.01145,0.16623 1.05862,0.6223 0.21404,2.06936 -1.28705,2.20519 -4.06622,2.69428 -8.6414,1.52076 z"
+             id="path5366"
+             sodipodi:nodetypes="cssssccsssccscccssssc" />
+          <path
+             style="fill:#000000;fill-rule:evenodd;stroke:none"
+             d="m 326.7844,595.06579 c -2.46648,-3.36183 4.00801,-2.92998 8.50563,-3.66397 5.54213,-0.90445 8.50715,-10.28293 7.21632,-4.59151 -1.29085,5.69142 -3.73324,11.98871 -2.82879,17.53084 -7.35103,-10.17981 -10.42669,-5.91353 -12.89316,-9.27536 z"
+             id="path5368"
+             sodipodi:nodetypes="cszcz" />
+          <path
+             style="fill:#000000;fill-rule:evenodd;stroke:none"
+             d="m 320.3929,612.59663 c 11.98871,3.73323 13.94857,-6.3862 19.66087,-8.09427 6.9752,-2.08571 11.6125,3.57202 16.25018,-2.87455 -4.63768,6.44657 -10.95623,2.5679 -16.296,5.78527 -5.18035,3.1213 -7.62634,8.91678 -19.61505,5.18355 z"
+             id="path5370"
+             sodipodi:nodetypes="cscsc" />
+          <path
+             style="fill:#ffffff;stroke:none"
+             d="m 336.68588,599.4815 c 0.006,-0.2019 -0.36096,-0.64796 -0.42276,-1.47067 -0.29657,-3.94831 -6.1911,-6.21808 -7.25759,-3.43571 -0.24338,0.63493 0.58774,1.16912 1.89749,1.23685 1.26995,0.0657 3.17607,1.09972 4.23457,2.30131 1.09251,1.24015 1.53854,1.70469 1.54829,1.36822 z"
+             id="path5372"
+             sodipodi:nodetypes="cssssc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5374"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(158.05541,475.03407)" />
+          <path
+             transform="translate(162.2659,476.65349)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5376"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5378"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(159.35094,479.24456)" />
+          <path
+             transform="translate(178.4601,467.90862)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5380"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5382"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(178.13622,471.79523)" />
+          <path
+             transform="translate(182.02283,470.17581)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5384"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+          <path
+             sodipodi:type="arc"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             id="path5386"
+             sodipodi:cx="166.31445"
+             sodipodi:cy="123.08076"
+             sodipodi:rx="1.1335942"
+             sodipodi:ry="1.1335942"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             transform="translate(142.83286,441.9979)" />
+          <path
+             transform="translate(163.88532,436.81576)"
+             d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+             sodipodi:ry="1.1335942"
+             sodipodi:rx="1.1335942"
+             sodipodi:cy="123.08076"
+             sodipodi:cx="166.31445"
+             id="path5388"
+             style="fill:#ffffff;stroke:#000000;stroke-opacity:1"
+             sodipodi:type="arc" />
+        </g>
+        <path
+           style="fill:#000000"
+           d="m 460.44944,619.67363 c -4.33869,-3.37857 -5.06957,-5.01999 -4.47552,-10.05129 0.82174,-6.9595 4.41835,-13.17343 8.95586,-15.47322 5.47358,-2.7742 16.39904,1.12552 20.15773,7.1951 3.28051,5.29739 3.21971,5.84632 -1.22001,11.01267 -9.52928,11.08886 -15.98404,13.1056 -23.41806,7.31674 z m 0.77909,-6.64502 c -0.96613,-1.90623 -1.0477,-5.55038 -0.18119,-8.09811 1.431,-4.20743 1.32954,-4.35139 -1.10644,-1.56987 -2.94937,3.36765 -2.11702,13.97616 1.05592,13.45832 1.12785,-0.18403 1.2281,-1.82437 0.23167,-3.79034 z m 80.52529,-20.00873 c -8.2856,-2.12521 -9.01908,-3.19091 -8.09328,-11.75932 1.35887,-12.57622 14.65678,-16.3963 21.68203,-6.22853 l 2.73056,3.95204 -3.75918,-3.68942 c -4.88013,-4.78955 -8.36295,-4.27113 -3.66612,0.54573 1.96648,2.01674 3.80717,5.08693 4.09043,6.82265 0.28327,1.7357 1.6204,3.33752 2.97139,3.55955 1.91502,0.31473 2.00433,1.17822 0.40525,3.91799 -2.43681,4.17517 -7.69872,5.10118 -16.36108,2.87931 z"
+           id="path5390"
+           sodipodi:nodetypes="cssssccsssccscccssssc" />
+        <path
+           style="fill:#000000;fill-rule:evenodd;stroke:none"
+           d="m 543.50287,612.20201 c -1.0397,0.5283 -6.15268,10.84486 -14.02253,12.12919 -8.5155,1.38969 -20.76323,0.61661 -16.09335,6.98168 4.66985,6.36508 10.51789,-1.76044 24.43586,17.51336 -1.71242,-10.49311 2.881,-22.41678 5.32502,-33.19256 0.61099,-2.69393 0.70155,-3.60776 0.355,-3.43167 z M 521.552,627.99954 c 3.99071,0.0596 9.37648,3.73563 9.76251,8.87501 0.11701,1.55767 0.8397,2.39858 0.82834,2.78085 -0.0184,0.63705 -0.88985,-0.25532 -2.95834,-2.60335 -2.0041,-2.27501 -5.58307,-4.25394 -7.98752,-4.37833 -2.47979,-0.12824 -4.06997,-1.10537 -3.60917,-2.30751 0.63101,-1.64624 2.15021,-2.39375 3.96418,-2.36667 z"
+           id="path5392" />
+        <path
+           style="fill:#000000;fill-rule:evenodd;stroke:none"
+           d="m 501.29168,664.476 c 22.69867,7.06826 26.40934,-12.09123 37.22465,-15.32518 13.2064,-3.94896 21.98637,6.76303 30.76706,-5.44249 -8.78069,12.20552 -20.74383,4.8619 -30.85381,10.95346 -9.80815,5.90967 -14.43923,16.88247 -37.1379,9.81421 z"
+           id="path5394"
+           sodipodi:nodetypes="cscsc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5396"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,193.93219,404.02378)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,201.90406,407.08988)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5398"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5400"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,196.38506,411.99565)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,232.56513,390.5329)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5402"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5404"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,231.95192,397.89157)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,239.31058,394.82545)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5406"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           sodipodi:type="arc"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           id="path5408"
+           sodipodi:cx="166.31445"
+           sodipodi:cy="123.08076"
+           sodipodi:rx="1.1335942"
+           sodipodi:ry="1.1335942"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           transform="matrix(1.8933365,0,0,1.8933365,165.11077,341.47519)" />
+        <path
+           transform="matrix(1.8933365,0,0,1.8933365,204.97017,331.66365)"
+           d="m 167.44805,123.08076 c 0,0.62606 -0.50753,1.13359 -1.1336,1.13359 -0.62606,0 -1.13359,-0.50753 -1.13359,-1.13359 0,-0.62607 0.50753,-1.1336 1.13359,-1.1336 0.62607,0 1.1336,0.50753 1.1336,1.1336 z"
+           sodipodi:ry="1.1335942"
+           sodipodi:rx="1.1335942"
+           sodipodi:cy="123.08076"
+           sodipodi:cx="166.31445"
+           id="path5410"
+           style="fill:none;stroke:#000000;stroke-opacity:1"
+           sodipodi:type="arc" />
+        <path
+           id="path5412"
+           d="m 414.16432,664.94387 c -17.10352,2.3543 -30.64729,22.97 -22.60171,38.87257 9.92701,7.54432 25.07255,0.6534 34.73089,-4.85167 7.42667,-3.29797 8.51536,-16.70707 16.52927,-8.81585 -12.5884,-9.64496 -22.24114,-11.62267 -28.65845,-25.20505 z"
+           style="fill:url(#linearGradient5420);fill-opacity:1;stroke:none;display:inline"
+           sodipodi:nodetypes="ccccc" />
+        <path
+           id="path5414"
+           d="m 593.32128,645.47801 c 14.74215,-1.58804 16.27001,17.47813 18.99254,27.45338 0.40886,4.51328 3.3967,8.81801 7.98751,5.20668 14.08663,-11.21914 9.21231,-35.07831 -2.89918,-46.09092 -4.88828,-6.56095 -18.41674,-5.38103 -14.08168,-15.79752 l -9.99919,29.22838 z"
+           style="fill:url(#linearGradient5422);fill-opacity:1;stroke:none;display:inline"
+           sodipodi:nodetypes="cccccc" />
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/session_cleanall.svg b/icons/PyHoca/scalable/session_cleanall.svg
new file mode 120000
index 0000000..c0b3175
--- /dev/null
+++ b/icons/PyHoca/scalable/session_cleanall.svg
@@ -0,0 +1 @@
+broom-cleanup.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/session_error.svg b/icons/PyHoca/scalable/session_error.svg
new file mode 120000
index 0000000..3b41d91
--- /dev/null
+++ b/icons/PyHoca/scalable/session_error.svg
@@ -0,0 +1 @@
+dialog-error.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/session_pause.svg b/icons/PyHoca/scalable/session_pause.svg
new file mode 120000
index 0000000..020f415
--- /dev/null
+++ b/icons/PyHoca/scalable/session_pause.svg
@@ -0,0 +1 @@
+media-playback-pause.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/session_printing.svg b/icons/PyHoca/scalable/session_printing.svg
new file mode 120000
index 0000000..519c84b
--- /dev/null
+++ b/icons/PyHoca/scalable/session_printing.svg
@@ -0,0 +1 @@
+gnome-dev-printer-network.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/session_resume.svg b/icons/PyHoca/scalable/session_resume.svg
new file mode 120000
index 0000000..a5452f2
--- /dev/null
+++ b/icons/PyHoca/scalable/session_resume.svg
@@ -0,0 +1 @@
+x2go-logo-rotated.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/session_start.svg b/icons/PyHoca/scalable/session_start.svg
new file mode 120000
index 0000000..a5452f2
--- /dev/null
+++ b/icons/PyHoca/scalable/session_start.svg
@@ -0,0 +1 @@
+x2go-logo-rotated.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/session_terminate.svg b/icons/PyHoca/scalable/session_terminate.svg
new file mode 120000
index 0000000..b943971
--- /dev/null
+++ b/icons/PyHoca/scalable/session_terminate.svg
@@ -0,0 +1 @@
+window-close.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/session_warning.svg b/icons/PyHoca/scalable/session_warning.svg
new file mode 120000
index 0000000..a626e0c
--- /dev/null
+++ b/icons/PyHoca/scalable/session_warning.svg
@@ -0,0 +1 @@
+dialog-warning.svg
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/system-search.svg b/icons/PyHoca/scalable/system-search.svg
new file mode 100644
index 0000000..ed08f02
--- /dev/null
+++ b/icons/PyHoca/scalable/system-search.svg
@@ -0,0 +1,430 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7233"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="search48.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7235">
+    <linearGradient
+       id="linearGradient4467">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4469" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0.24761905;"
+         offset="1.0000000"
+         id="stop4471" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4467"
+       id="radialGradient4473"
+       cx="15.414371"
+       cy="13.078408"
+       fx="15.414371"
+       fy="13.078408"
+       r="6.6562500"
+       gradientTransform="matrix(2.789229,0,0,2.4225698,-25.723775,-20.247482)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient4454">
+      <stop
+         style="stop-color:#729fcf;stop-opacity:0.20784314;"
+         offset="0.0000000"
+         id="stop4456" />
+      <stop
+         style="stop-color:#729fcf;stop-opacity:0.67619050;"
+         offset="1.0000000"
+         id="stop4458" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4454"
+       id="radialGradient4460"
+       cx="18.240929"
+       cy="21.817987"
+       fx="18.240929"
+       fy="21.817987"
+       r="8.3085051"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4931">
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1;"
+         offset="0"
+         id="stop4933" />
+      <stop
+         style="stop-color:#888a85"
+         offset="1"
+         id="stop4935" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4931"
+       id="linearGradient4937"
+       x1="54.1129"
+       y1="12.846775"
+       x2="50.079948"
+       y2="-3.8813655"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient23434">
+      <stop
+         style="stop-color:#888a85;stop-opacity:1"
+         offset="0"
+         id="stop23436" />
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="1"
+         id="stop23438" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient23434"
+       id="linearGradient23440"
+       x1="55.878288"
+       y1="12.472493"
+       x2="52.5"
+       y2="-4.6213989"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3904">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop3906" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop3908" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3904"
+       id="linearGradient7863"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9999494,0,0,1.0000027,11.137591,10.721751)"
+       x1="21.397852"
+       y1="20.653446"
+       x2="23.475424"
+       y2="22.873726" />
+    <linearGradient
+       id="linearGradient2609"
+       inkscape:collect="always">
+      <stop
+         id="stop2611"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1" />
+      <stop
+         id="stop2613"
+         offset="1"
+         style="stop-color:#eeeeec" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2609"
+       id="radialGradient1409"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0,1.143443,-1.247217,-1.248581e-6,41.735,-54.25682)"
+       cx="45.094624"
+       cy="-2.6936908"
+       fx="45.094624"
+       fy="-2.6936908"
+       r="10.498367" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient19914">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop19916" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop19918" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient19914"
+       id="linearGradient19920"
+       x1="33.985317"
+       y1="32.045906"
+       x2="37.211494"
+       y2="35.272079"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-0.9999995,2.5184337e-4)" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient19900">
+      <stop
+         style="stop-color:#d3d7cf;stop-opacity:0.2"
+         offset="0"
+         id="stop19902" />
+      <stop
+         style="stop-color:#d3d7cf"
+         offset="1"
+         id="stop19904" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient19900"
+       id="linearGradient19906"
+       x1="40.25"
+       y1="41"
+       x2="43.0625"
+       y2="38.434578"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-0.9999995,2.52e-4)" />
+    <linearGradient
+       id="linearGradient2690"
+       inkscape:collect="always">
+      <stop
+         id="stop2692"
+         offset="0"
+         style="stop-color:#2e3436" />
+      <stop
+         id="stop2694"
+         offset="1"
+         style="stop-color:#555753" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2690"
+       id="linearGradient1423"
+       gradientUnits="userSpaceOnUse"
+       x1="81.096306"
+       y1="57.148193"
+       x2="83.629295"
+       y2="54.615208" />
+    <linearGradient
+       id="linearGradient2698">
+      <stop
+         id="stop2700"
+         offset="0"
+         style="stop-color:#888a85;stop-opacity:1" />
+      <stop
+         style="stop-color:#a3a5a2;stop-opacity:1;"
+         offset="0.70238096"
+         id="stop2706" />
+      <stop
+         id="stop2702"
+         offset="1"
+         style="stop-color:#888a85" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2698"
+       id="linearGradient1421"
+       gradientUnits="userSpaceOnUse"
+       x1="81.332451"
+       y1="55.106758"
+       x2="82.919647"
+       y2="53.511261" />
+    <linearGradient
+       id="linearGradient2617">
+      <stop
+         id="stop2619"
+         offset="0"
+         style="stop-color:#fbfbfa;stop-opacity:1;" />
+      <stop
+         id="stop2621"
+         offset="1"
+         style="stop-color:#d3d7cf" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2617"
+       id="radialGradient8419"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0,-1.686609,1.66336,0,41.65431,111.7396)"
+       cx="59.787472"
+       cy="10.901535"
+       fx="59.787472"
+       fy="10.901535"
+       r="10.55559" />
+    <filter
+       inkscape:collect="always"
+       id="filter3268"
+       x="-0.088636374"
+       width="1.1772727"
+       y="-0.38360636"
+       height="1.7672127">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="1.5983598"
+         id="feGaussianBlur3270" />
+    </filter>
+    <linearGradient
+       id="linearGradient3244">
+      <stop
+         style="stop-color:#000000;stop-opacity:0"
+         offset="0"
+         id="stop3246" />
+      <stop
+         id="stop3274"
+         offset="0.0807889"
+         style="stop-color:#000000;stop-opacity:0;" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.24705882;"
+         offset="0.61539668"
+         id="stop3276" />
+      <stop
+         id="stop3272"
+         offset="0.74850917"
+         style="stop-color:#000000;stop-opacity:0.49803922;" />
+      <stop
+         style="stop-color:#000000;stop-opacity:1"
+         offset="1"
+         id="stop3248" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3244"
+       id="linearGradient3250"
+       x1="3.5"
+       y1="35.742943"
+       x2="46.77866"
+       y2="45.742943"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="688"
+     inkscape:window-x="276"
+     inkscape:window-y="123" />
+  <metadata
+     id="metadata7238">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       transform="translate(-12.26513,47.500242)"
+       style="display:inline"
+       inkscape:label="base"
+       id="g2637" />
+    <path
+       style="opacity:0.6;fill:url(#linearGradient3250);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.67653471;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter3268)"
+       d="M 21,35.742942 C 11.34,35.742942 3.5,37.555955 3.5,39.789845 C 3.5,42.023736 11.34,43.836748 21,43.836748 C 25.496436,43.836748 29.586827,43.441342 32.6875,42.796116 L 33.5,43.742802 C 33.525278,43.764 33.586841,43.785509 33.65625,43.800615 L 41.625,45.657855 C 41.981813,45.740449 42.507656,45.759155 43.15625,45.730121 C 43.804844,45.701087 44.567815,45.60604 45.375,45.419377 C 46.175523,45.234255 46.580812,45.069505 46.71875,44.92074 C 46.856687,44.771976 46.758027,44.640759 46.40625,44.55941 L 38.375,42.716623 C 38.29626,42.698751 38.203146,42.684259 38.09375,42.68049 L 34,42.492598 C 36.790145,41.775563 38.5,40.829653 38.5,39.789845 C 38.5,37.555955 30.66,35.742942 21,35.742942 z"
+       id="path2462"
+       transform="matrix(1.0166673,0,0,0.9,-0.5583355,4.3316038)" />
+    <path
+       transform="matrix(1.5085714,0,0,1.5085715,-58.199999,12.211681)"
+       d="M 62.5,4.5 A 10,10 0 1 1 42.5,4.5 A 10,10 0 1 1 62.5,4.5 z"
+       sodipodi:ry="10"
+       sodipodi:rx="10"
+       sodipodi:cy="4.5"
+       sodipodi:cx="52.5"
+       id="path2607"
+       style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#radialGradient8419);stroke-width:1.87499988;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       sodipodi:type="arc" />
+    <g
+       style="display:inline"
+       transform="matrix(1.544052,0,0,1.536016,-85.57756,-44.444898)"
+       id="g2708">
+      <path
+         style="fill:url(#linearGradient1421);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient1423);stroke-width:0.67653471;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+         d="M 74.853412,50.354391 L 77.443998,53.023634 L 82.625171,58.237128 C 82.817674,58.430832 83.596641,58.55743 84.56811,57.580878 C 85.53958,56.604326 85.463684,55.876998 85.215757,55.627773 L 80.034584,50.419494 L 77.443998,47.815355 L 74.853412,50.354391 z"
+         id="path2682"
+         sodipodi:nodetypes="cczzzccc" />
+    </g>
+    <path
+       sodipodi:nodetypes="cczzzccc"
+       id="path17267"
+       d="M 31.453125,32.922127 L 34.90721,36.480066 L 42.406806,44.028842 C 42.77564,44.400095 43.340655,44.246748 44.274502,43.3129 C 45.208352,42.379052 45.449128,41.911605 44.985457,41.445202 L 37.485862,33.901412 L 34.0625,30.500252 L 31.453125,32.922127 z"
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient19906);stroke-width:0.99999934;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" />
+    <path
+       style="opacity:0.15294118;fill:url(#linearGradient19920);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.67653471;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 32.550678,31.195018 C 32.29085,31.282527 30.033957,33.133188 30.103541,33.39715 L 33.50745,37.107952 C 33.532728,37.199617 33.582796,37.282629 33.652205,37.347954 L 41.613723,45.364038 C 41.970537,45.7212 42.509181,45.825593 43.157775,45.700041 C 43.80637,45.574489 44.570165,45.163213 45.37735,44.356027 C 46.177873,43.555506 46.590458,42.839306 46.728396,42.196005 C 46.866334,41.552703 46.742411,40.963765 46.390634,40.611988 L 38.380865,32.643905 C 38.302123,32.566621 38.200751,32.516199 38.091355,32.499904 L 34.340187,29.132518 C 34.245612,29.105383 32.645253,31.167883 32.550678,31.195018 z"
+       id="path19908"
+       sodipodi:nodetypes="cccccsssccccc" />
+    <path
+       transform="matrix(1.5500015,0,0,1.5500015,-60.375079,12.025245)"
+       d="M 62.5,4.5 A 10,10 0 1 1 42.5,4.5 A 10,10 0 1 1 62.5,4.5 z"
+       sodipodi:ry="10"
+       sodipodi:rx="10"
+       sodipodi:cy="4.5"
+       sodipodi:cx="52.5"
+       id="path2605"
+       style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#radialGradient1409);stroke-width:0.6451413;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       sodipodi:type="arc" />
+    <path
+       style="opacity:0.36936939;fill:url(#linearGradient7863);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.67653471;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 32.571456,31.340596 C 32.398245,31.398935 30.441228,32.522909 30.487615,32.698884 L 33.370692,35.607487 C 33.387543,35.668598 33.42092,35.723939 33.467191,35.767489 L 36.754802,32.468631 C 36.702309,32.417109 36.618546,32.320669 36.545618,32.309805 L 34.028798,29.731957 C 33.983608,29.606724 32.634502,31.322506 32.571456,31.340596 z"
+       id="path7861"
+       sodipodi:nodetypes="cccccccc" />
+    <path
+       transform="matrix(1.6500024,0,0,1.6500024,-65.653719,11.575241)"
+       d="M 62.5,4.5 A 10,10 0 1 1 42.5,4.5 A 10,10 0 1 1 62.5,4.5 z"
+       sodipodi:ry="10"
+       sodipodi:rx="10"
+       sodipodi:cy="4.5"
+       sodipodi:cx="52.5"
+       id="path2599"
+       style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient23440);stroke-width:0.60603064;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       sodipodi:type="arc" />
+    <path
+       transform="matrix(1.3500044,0,0,1.3500044,-49.875231,12.925232)"
+       d="M 62.5,4.5 A 10,10 0 1 1 42.5,4.5 A 10,10 0 1 1 62.5,4.5 z"
+       sodipodi:ry="10"
+       sodipodi:rx="10"
+       sodipodi:cy="4.5"
+       sodipodi:cx="52.5"
+       id="path4927"
+       style="fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient4937);stroke-width:0.74067366;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       sodipodi:type="arc" />
+    <path
+       sodipodi:type="arc"
+       style="fill:url(#radialGradient4460);fill-opacity:1;fill-rule:evenodd;stroke:#3063a3;stroke-width:0.66473687;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:10;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline"
+       id="path4452"
+       sodipodi:cx="17.589281"
+       sodipodi:cy="18.478292"
+       sodipodi:rx="8.3085051"
+       sodipodi:ry="8.3085051"
+       d="M 25.897786,18.478292 A 8.3085051,8.3085051 0 1 1 9.280776,18.478292 A 8.3085051,8.3085051 0 1 1 25.897786,18.478292 z"
+       transform="matrix(1.5044775,0,0,1.5044776,-5.4626775,-8.7999259)" />
+    <path
+       style="opacity:0.83422457;fill:url(#radialGradient4473);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:10;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 20.764036,8.0837588 C 15.162274,8.0837588 10.626128,12.619905 10.626128,18.221665 C 10.626128,19.839479 11.078249,21.328019 11.752561,22.685682 C 13.099737,23.182235 14.530813,23.520079 16.0497,23.520079 C 22.687746,23.520079 27.989107,18.290454 28.398756,11.755099 C 26.536772,9.5547378 23.870051,8.0837588 20.764036,8.0837588 z"
+       id="path4462" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/unlocked.svg b/icons/PyHoca/scalable/unlocked.svg
new file mode 100644
index 0000000..83d2e80
--- /dev/null
+++ b/icons/PyHoca/scalable/unlocked.svg
@@ -0,0 +1,577 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7516"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing-3.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7518">
+    <filter
+       inkscape:collect="always"
+       x="-0.085115738"
+       width="1.1702315"
+       y="-0.4135721"
+       height="1.8271442"
+       id="filter6328">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.42546784"
+         id="feGaussianBlur6330" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6057">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop6059" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop6061" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6057"
+       id="radialGradient6071"
+       gradientUnits="userSpaceOnUse"
+       cx="18.031223"
+       cy="6.2806997"
+       fx="18.031223"
+       fy="6.2806997"
+       r="3.1819806" />
+    <filter
+       inkscape:collect="always"
+       id="filter5246">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.52810278"
+         id="feGaussianBlur5248" />
+    </filter>
+    <filter
+       inkscape:collect="always"
+       x="-0.24242527"
+       width="1.4848505"
+       y="-0.047579074"
+       height="1.0951581"
+       id="filter6251">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.24444548"
+         id="feGaussianBlur6253" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6227">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6229" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6231" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6227"
+       id="linearGradient6233"
+       x1="33.950081"
+       y1="14.00656"
+       x2="39.619183"
+       y2="9.5222654"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.6824037,1.125)" />
+    <filter
+       inkscape:collect="always"
+       x="-0.49337935"
+       width="1.9867587"
+       y="-0.11410162"
+       height="1.2282032"
+       id="filter5306">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.68862765"
+         id="feGaussianBlur5308" />
+    </filter>
+    <linearGradient
+       id="linearGradient5310"
+       inkscape:collect="always">
+      <stop
+         id="stop5312"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:0.59770115" />
+      <stop
+         id="stop5314"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5310"
+       id="linearGradient6334"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-19.532826,1.7437184)"
+       x1="35.004684"
+       y1="24.300459"
+       x2="30.279551"
+       y2="9.1301517" />
+    <linearGradient
+       id="linearGradient10591">
+      <stop
+         id="stop10593"
+         offset="0.0000000"
+         style="stop-color:#cad0c6;stop-opacity:1.0000000;" />
+      <stop
+         style="stop-color:#eaece9;stop-opacity:1.0000000;"
+         offset="0.50000000"
+         id="stop10599" />
+      <stop
+         id="stop10595"
+         offset="1.0000000"
+         style="stop-color:#c5cbc0;stop-opacity:1.0000000;" />
+    </linearGradient>
+    <linearGradient
+       y2="17.470011"
+       x2="27.192274"
+       y1="2.9136841"
+       x1="10.650842"
+       gradientTransform="translate(0,-1.926279)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient1392"
+       xlink:href="#linearGradient10591"
+       inkscape:collect="always" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5753">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop5755" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop5757" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5753"
+       id="linearGradient5759"
+       x1="31.375"
+       y1="20.4375"
+       x2="38.25"
+       y2="20.4375"
+       gradientUnits="userSpaceOnUse" />
+    <filter
+       inkscape:collect="always"
+       x="-0.14143888"
+       width="1.2828778"
+       y="-1.5218824"
+       height="4.0437647"
+       id="filter6171">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="1.1889706"
+         id="feGaussianBlur6173" />
+    </filter>
+    <linearGradient
+       id="linearGradient6089">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6091" />
+      <stop
+         id="stop6097"
+         offset="0.5"
+         style="stop-color:#000000;stop-opacity:0.17171717;" />
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="1"
+         id="stop6093" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6089"
+       id="linearGradient6095"
+       x1="17.1875"
+       y1="20.09375"
+       x2="34"
+       y2="20.09375"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(0,-0.5)" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient6075">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6077" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6079" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6075"
+       id="radialGradient6085"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.5849057,0,8.4316038)"
+       cx="15.9375"
+       cy="20.3125"
+       fx="15.9375"
+       fy="20.3125"
+       r="3.3125" />
+    <filter
+       inkscape:collect="always"
+       x="-0.49411764"
+       width="1.9882353"
+       y="-0.082352942"
+       height="1.1647059"
+       id="filter5957">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.69878785"
+         id="feGaussianBlur5959" />
+    </filter>
+    <linearGradient
+       id="linearGradient12071"
+       inkscape:collect="always">
+      <stop
+         id="stop12073"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop12075"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient12071"
+       id="linearGradient1387"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9697914,0,0,0.951923,-2.7734351,2.0339473)"
+       x1="21.941509"
+       y1="21.550869"
+       x2="21.941509"
+       y2="18.037588" />
+    <linearGradient
+       id="linearGradient5881">
+      <stop
+         id="stop5883"
+         offset="0"
+         style="stop-color:#fffac7;stop-opacity:1;" />
+      <stop
+         style="stop-color:#fff8b2;stop-opacity:1;"
+         offset="1"
+         id="stop5885" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5881"
+       id="linearGradient1591"
+       x1="24.875"
+       y1="21"
+       x2="24.75"
+       y2="17"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9706798,0,0,1.5,-2.7947591,-9.4998767)" />
+    <linearGradient
+       id="linearGradient9845">
+      <stop
+         id="stop9847"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop9849"
+         offset="1.0000000"
+         style="stop-color:#ffffff;stop-opacity:0.49484536;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient9845"
+       id="linearGradient1575"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.968931,0,0,1.1176137,-2.7381201,-6.0948884)"
+       x1="10.907269"
+       y1="25.002281"
+       x2="30.875446"
+       y2="36.127281" />
+    <linearGradient
+       id="linearGradient6215">
+      <stop
+         id="stop6217"
+         offset="0"
+         style="stop-color:#ead200;stop-opacity:1;" />
+      <stop
+         style="stop-color:#fff16a;stop-opacity:1;"
+         offset="0.20999999"
+         id="stop6219" />
+      <stop
+         id="stop6221"
+         offset="0.83999997"
+         style="stop-color:#b5a300;stop-opacity:1;" />
+      <stop
+         id="stop6223"
+         offset="1"
+         style="stop-color:#e8d000;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6215"
+       id="linearGradient6225"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9715125,0,0,1.1298556,-2.8148311,-7.9390138)"
+       x1="6.72682"
+       y1="32.161697"
+       x2="40.938126"
+       y2="32.161697" />
+    <filter
+       inkscape:collect="always"
+       x="-0.074990261"
+       width="1.1499805"
+       y="-0.47181373"
+       height="1.9436275"
+       id="filter6051">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="1.4154412"
+         id="feGaussianBlur6053" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="690"
+     inkscape:window-x="1037"
+     inkscape:window-y="25" />
+  <metadata
+     id="metadata7521">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <rect
+       style="opacity:0.45882353;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter6051);enable-background:accumulate"
+       id="rect5961"
+       width="37.75"
+       height="6"
+       x="6.25"
+       y="39.75"
+       rx="3.1708715"
+       ry="1.9748279"
+       transform="matrix(1.0264901,0,0,1,-5.1655631,-1.9998777)" />
+    <path
+       style="fill:url(#linearGradient6225);fill-opacity:1;fill-rule:evenodd;stroke:#7d6400;stroke-width:0.99999952;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+       d="M 5.6713057,15.500122 C 15.465852,14.056723 25.364615,14.280806 35.325581,15.500122 C 36.528485,15.500122 37.496887,16.543692 37.496887,17.839966 L 37.496887,41.160278 C 37.496887,42.456552 36.465985,43.312622 35.325581,43.500122 C 24.998398,44.708725 16.143531,44.699184 5.6713057,43.500122 C 4.2809017,43.062622 3.4999997,42.456552 3.4999997,41.160278 L 3.4999997,17.839966 C 3.4999997,16.543692 4.4684017,15.500122 5.6713057,15.500122 z"
+       id="rect1314"
+       sodipodi:nodetypes="ccccccccc" />
+    <g
+       id="g4695"
+       transform="translate(-5.0000001,-1.9998777)">
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path6193"
+         d="M 41.940271,24.444505 C 41.542065,25.774817 37.406119,26.114917 36.638195,26.217936 C 36.638195,26.217936 20.32932,26.698408 20.32932,26.698408 C 20.32932,26.698408 36.59256,26.857542 36.59256,26.857542 C 37.418473,26.760419 41.811211,26.960931 42.02866,25.151612 L 41.940271,24.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 41.940271,26.444505 C 41.542065,27.774817 37.406119,28.114917 36.638195,28.217936 C 36.638195,28.217936 17.57932,28.698408 17.57932,28.698408 C 17.57932,28.698408 36.59256,28.857542 36.59256,28.857542 C 37.418473,28.760419 41.811211,28.960931 42.02866,27.151612 L 41.940271,26.444505 z"
+         id="path4678"
+         sodipodi:nodetypes="cscscc" />
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path4680"
+         d="M 41.940271,28.444505 C 41.542065,29.774817 37.406119,30.114917 36.638195,30.217936 C 36.638195,30.217936 20.32932,30.698408 20.32932,30.698408 C 20.32932,30.698408 36.59256,30.857542 36.59256,30.857542 C 37.418473,30.760419 41.811211,30.960931 42.02866,29.151612 L 41.940271,28.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 41.940271,30.444505 C 41.542065,31.774817 37.406119,32.114917 36.638195,32.217936 C 36.638195,32.217936 25.57932,32.698408 25.57932,32.698408 C 25.57932,32.698408 36.59256,32.857542 36.59256,32.857542 C 37.418473,32.760419 41.811211,32.960931 42.02866,31.151612 L 41.940271,30.444505 z"
+         id="path4682"
+         sodipodi:nodetypes="cscscc" />
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path4684"
+         d="M 41.940271,32.444505 C 41.542065,33.774817 37.406119,34.114917 36.638195,34.217936 C 36.638195,34.217936 20.32932,34.698408 20.32932,34.698408 C 20.32932,34.698408 36.59256,34.857542 36.59256,34.857542 C 37.418473,34.760419 41.811211,34.960931 42.02866,33.151612 L 41.940271,32.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 41.940271,34.444505 C 41.542065,35.774817 37.406119,36.114917 36.638195,36.217936 C 36.638195,36.217936 17.89182,36.698408 17.89182,36.698408 C 17.89182,36.698408 36.59256,36.857542 36.59256,36.857542 C 37.418473,36.760419 41.811211,36.960931 42.02866,35.151612 L 41.940271,34.444505 z"
+         id="path4686"
+         sodipodi:nodetypes="cscscc" />
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path4688"
+         d="M 41.940271,36.444505 C 41.542065,37.774817 37.406119,38.114917 36.638195,38.217936 C 36.638195,38.217936 22.64182,38.698408 22.64182,38.698408 C 22.64182,38.698408 36.59256,38.857542 36.59256,38.857542 C 37.418473,38.760419 41.811211,38.960931 42.02866,37.151612 L 41.940271,36.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+      <path
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         d="M 41.940271,38.444505 C 41.542065,39.774817 37.406119,40.114917 36.638195,40.217936 C 36.638195,40.217936 28.20432,40.698408 28.20432,40.698408 C 28.20432,40.698408 36.59256,40.857542 36.59256,40.857542 C 37.418473,40.760419 41.811211,40.960931 42.02866,39.151612 L 41.940271,38.444505 z"
+         id="path4690"
+         sodipodi:nodetypes="cscscc" />
+      <path
+         sodipodi:nodetypes="cscscc"
+         id="path4692"
+         d="M 41.940271,40.444505 C 41.542065,41.774817 37.406119,42.114917 36.638195,42.217936 C 36.638195,42.217936 20.32932,42.698408 20.32932,42.698408 C 20.32932,42.698408 36.59256,42.857542 36.59256,42.857542 C 37.418473,42.760419 41.811211,42.960931 42.02866,41.151612 L 41.940271,40.444505 z"
+         style="opacity:0.14117647;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+    </g>
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient1575);stroke-width:1.00000024;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:0.60109289"
+       d="M 5.7495877,16.995483 L 35.254433,16.995483 C 35.946704,16.995483 36.504021,17.581598 36.504021,18.309642 L 36.504021,41.185963 C 36.504021,41.914007 36.009204,42.250122 35.254433,42.500122 C 25.606985,43.703735 16.084536,43.700943 5.7495877,42.500122 C 5.0573157,42.250122 4.4999997,41.914007 4.4999997,41.185963 L 4.4999997,18.309642 C 4.4999997,17.581598 5.0573157,16.995483 5.7495877,16.995483 z"
+       id="rect6903"
+       sodipodi:nodetypes="ccccccccc" />
+    <path
+       style="fill:url(#linearGradient1591);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 5.6077247,16.000122 C 15.536946,14.539375 25.466166,14.799553 35.395387,16.000122 C 36.286067,16.000122 37.003113,16.717168 37.003113,17.607847 L 37.003113,20.392397 C 37.003113,21.283076 36.286067,22.000122 35.395387,22.000122 C 25.033658,22.690222 15.499962,22.443932 5.6077247,22.000122 C 4.7170447,22.000122 3.9999997,21.283076 3.9999997,20.392397 L 3.9999997,17.607847 C 3.9999997,16.717168 4.7170447,16.000122 5.6077247,16.000122 z"
+       id="rect1460"
+       sodipodi:nodetypes="ccccccccc" />
+    <path
+       style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient1387);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       d="M 5.6639377,18.692602 L 35.339179,18.692602 C 35.984,18.692602 36.503117,19.181796 36.503117,19.78945 L 36.503117,20.451524 C 36.503117,21.059178 35.984,21.548372 35.339179,21.548372 C 25.539745,22.748444 15.629609,22.821884 5.6639377,21.548372 C 5.0191157,21.548372 4.4999997,21.059178 4.4999997,20.451524 L 4.4999997,19.78945 C 4.4999997,19.181796 5.0191157,18.692602 5.6639377,18.692602 z"
+       id="rect1593"
+       sodipodi:nodetypes="ccccccccc" />
+    <rect
+       style="opacity:0.29411765;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter5957);enable-background:accumulate"
+       id="rect5887"
+       width="2.8284271"
+       height="16.970562"
+       x="14.594036"
+       y="23.226137"
+       rx="1.6077254"
+       ry="1.6077254"
+       transform="matrix(1.9722718,0,0,1.2416619,-20.56437,-7.8388872)" />
+    <path
+       transform="matrix(1.7556483,1.8684597e-2,-0.2566879,1.4540468,6.67711,-11.231529)"
+       d="M 19.25,20.3125 A 3.3125,1.9375 0 1 1 12.625,20.3125 A 3.3125,1.9375 0 1 1 19.25,20.3125 z"
+       sodipodi:ry="1.9375"
+       sodipodi:rx="3.3125"
+       sodipodi:cy="20.3125"
+       sodipodi:cx="15.9375"
+       id="path6083"
+       style="opacity:0.62643678;fill:url(#radialGradient6085);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       sodipodi:type="arc" />
+    <rect
+       style="opacity:0.48235294;fill:url(#linearGradient6095);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter6171);enable-background:accumulate"
+       id="rect6087"
+       width="16.8125"
+       height="1.5625"
+       x="17.1875"
+       y="18.8125"
+       rx="0.78125"
+       ry="0.78125"
+       transform="matrix(-1,-0.1942467,0,1,63.818732,3.4534123)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.54705882;fill:url(#linearGradient5759);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       id="path5751"
+       sodipodi:cx="34.8125"
+       sodipodi:cy="20.4375"
+       sodipodi:rx="3.4375"
+       sodipodi:ry="1.5625"
+       d="M 38.25,20.4375 A 3.4375,1.5625 0 1 1 31.375,20.4375 A 3.4375,1.5625 0 1 1 38.25,20.4375 z"
+       transform="translate(-24.125,-1.9998777)" />
+    <g
+       id="g1387"
+       inkscape:r_cx="true"
+       inkscape:r_cy="true"
+       transform="matrix(-0.8575185,-0.1731867,0,1,58.479607,2.1760963)">
+      <path
+         inkscape:r_cy="true"
+         inkscape:r_cx="true"
+         sodipodi:nodetypes="ccccczccccsccc"
+         id="path2086"
+         d="M 12.743205,25.823932 L 12.743205,24.193353 L 13.794707,23.750459 L 12.673105,22.306213 L 12.743205,20.089086 C 12.743205,5.6408774 16.806669,3.7152321 24.020027,3.0776805 C 31.167919,2.4459151 37.354231,6.5120329 37.354231,14.474755 L 37.354231,22.459601 C 37.354231,24.41383 30.260065,23.447353 30.260065,21.244402 L 30.260065,15.259556 C 30.260065,11.490752 29.659869,8.710042 25.465153,8.9756217 C 19.67247,9.3423733 19.586426,15.511882 19.586426,23.287142 L 19.586426,27.06364 C 19.586426,29.41826 12.743205,28.202219 12.743205,25.823932 z"
+         style="fill:url(#linearGradient1392);fill-opacity:1;fill-rule:evenodd;stroke:#888a85;stroke-width:1.07988632;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <path
+         inkscape:r_cy="true"
+         inkscape:r_cx="true"
+         sodipodi:nodetypes="ccccc"
+         id="path6332"
+         d="M 12.122089,14.371007 L 12.493808,14.540202 C 15.234525,14.91845 15.471857,26.162899 15.471857,26.162899 C 15.409357,27.287899 13.440607,29.87613 13.471857,29.34488 C 13.471857,29.34488 14.065946,16.620674 12.122089,14.371007 z"
+         style="opacity:0.62643678;fill:url(#linearGradient6334);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter5306)"
+         transform="matrix(-1,0,0,1,28.762476,-5.6647124)" />
+      <path
+         style="opacity:0.10344831;fill:url(#linearGradient6233);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter6251)"
+         d="M 43.423941,11.814335 C 38.103497,9.9100511 36.795,11.892458 36.566172,14.801975 C 36.566172,14.801975 36.687087,22.472482 36.687087,22.472482 C 36.659989,23.60464 34.655837,23.003732 34.687087,22.472482 C 34.687087,22.472482 34.630467,14.508742 34.630467,14.508742 C 34.678721,11.551858 36.71871,8.1994403 43.423941,11.814335 z"
+         id="rect1345"
+         sodipodi:nodetypes="csccsc"
+         inkscape:r_cx="true"
+         inkscape:r_cy="true"
+         transform="matrix(-1,-0.3463734,0,1,67.435126,11.502092)" />
+    </g>
+    <path
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter5246);enable-background:accumulate"
+       d="M 18.5,27.169521 L 19.25,11.915925 C 19.25,3.852052 34.1875,2.6985997 34.1875,14.25 L 34.1875,21.875"
+       id="path5675"
+       sodipodi:nodetypes="cccc"
+       transform="matrix(-1,-0.1942467,0,1,62.318732,2.5784123)" />
+    <g
+       id="g6067"
+       transform="matrix(-1,-1.3719228e-2,0,1,50.629257,-3.9259803)">
+      <path
+         d="M 21.213204,6.2806997 A 3.1819806,3.1819806 0 1 1 14.849243,6.2806997 A 3.1819806,3.1819806 0 1 1 21.213204,6.2806997 z"
+         sodipodi:ry="3.1819806"
+         sodipodi:rx="3.1819806"
+         sodipodi:cy="6.2806997"
+         sodipodi:cx="18.031223"
+         id="path6055"
+         style="opacity:1;fill:url(#radialGradient6071);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         sodipodi:type="arc" />
+      <path
+         transform="matrix(0.4343344,0,0,0.4343344,10.199642,3.5527756)"
+         sodipodi:type="arc"
+         style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+         id="path6065"
+         sodipodi:cx="18.031223"
+         sodipodi:cy="6.2806997"
+         sodipodi:rx="3.1819806"
+         sodipodi:ry="3.1819806"
+         d="M 21.213204,6.2806997 A 3.1819806,3.1819806 0 1 1 14.849243,6.2806997 A 3.1819806,3.1819806 0 1 1 21.213204,6.2806997 z" />
+    </g>
+    <path
+       style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;filter:url(#filter6328);enable-background:accumulate"
+       d="M 21.715689,3.956218 C 24.043434,2.9041432 26.831304,2.6526319 29.328581,3.956218 C 30.934482,4.7945032 30.56197,5.8453552 29.328581,5.4997159 C 26.795999,4.7899971 24.232097,4.9797662 21.715689,5.4997159 C 19.936529,5.8673328 20.2141,4.6348935 21.715689,3.956218 z"
+       id="rect6257"
+       sodipodi:nodetypes="cssss"
+       transform="matrix(-1,-0.1942467,0,1,61.251892,3.4098353)" />
+    <path
+       style="opacity:1;fill:#999b97;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+       d="M 47.288402,24.325755 L 44.288402,25.325755 C 44.288402,25.325755 45.663402,23.638255 46.413402,23.388255 C 47.163402,23.138255 47.288402,24.325755 47.288402,24.325755 z"
+       id="path5749"
+       sodipodi:nodetypes="ccsc" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/window-close.svg b/icons/PyHoca/scalable/window-close.svg
new file mode 100644
index 0000000..8aa7eb3
--- /dev/null
+++ b/icons/PyHoca/scalable/window-close.svg
@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="48px"
+   height="48px"
+   id="svg7216"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="drawing.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs7218">
+    <linearGradient
+       id="linearGradient7916">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop7918" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1.0000000"
+         id="stop7920" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7916"
+       id="linearGradient2181"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0494758,-1.0494758,1.0494758,1.0494758,-26.939092,23.169297)"
+       x1="31.972097"
+       y1="17.041941"
+       x2="12.717501"
+       y2="36.296539" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient7955">
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0"
+         id="stop7957" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop7959" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient7955"
+       id="linearGradient7961"
+       x1="23.172504"
+       y1="6.0004601"
+       x2="23.099995"
+       y2="43.000458"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient3165">
+      <stop
+         style="stop-color:#e78181;stop-opacity:1"
+         offset="0"
+         id="stop3167" />
+      <stop
+         id="stop8599"
+         offset="0.25"
+         style="stop-color:#e15f5f;stop-opacity:1" />
+      <stop
+         style="stop-color:#c22f2f;stop-opacity:1"
+         offset="0.68000001"
+         id="stop8601" />
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="1"
+         id="stop3169" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3165"
+       id="radialGradient7958"
+       cx="6.5734448"
+       cy="24.500458"
+       fx="6.5734448"
+       fy="24.500458"
+       r="18.500046"
+       gradientTransform="matrix(-2.1314195e-8,2.5479117,-4.8841578,-2.2328085e-8,144.16406,-10.748097)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient2091">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop2093" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop2095" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2091"
+       id="radialGradient2177"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.914812,1.265023e-2,-8.21502e-3,0.213562,2.253914,27.18889)"
+       cx="23.070683"
+       cy="35.127438"
+       fx="23.070683"
+       fy="35.127438"
+       r="10.31934" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="7"
+     inkscape:cx="24"
+     inkscape:cy="24"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:window-width="641"
+     inkscape:window-height="690"
+     inkscape:window-x="0"
+     inkscape:window-y="25" />
+  <metadata
+     id="metadata7221">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       sodipodi:type="arc"
+       style="opacity:0.2557078;fill:url(#radialGradient2177);fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path1361"
+       sodipodi:cx="22.958872"
+       sodipodi:cy="34.94062"
+       sodipodi:rx="10.31934"
+       sodipodi:ry="2.320194"
+       d="M 33.278212,34.94062 A 10.31934,2.320194 0 1 1 12.639532,34.94062 A 10.31934,2.320194 0 1 1 33.278212,34.94062 z"
+       transform="matrix(2.2288248,0,0,1.9190478,-27.171303,-25.505284)" />
+    <path
+       style="font-size:59.90107727px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:url(#radialGradient7958);fill-opacity:1;stroke:url(#linearGradient7961);stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       d="M 42.5,35.000459 L 31.99991,24.000459 L 42.499911,14.000459 L 34.99991,6.5004602 L 24.499911,17.000459 L 13.999912,6.5004602 L 6.4999133,14.000459 L 16.999911,24.000459 L 6.4999133,35.000459 L 13.999912,42.500458 L 24.499911,32.000458 L 33.999911,42.500458 L 42.5,35.000459 z"
+       id="text1314"
+       sodipodi:nodetypes="ccccccccccccc" />
+    <path
+       style="font-size:59.90107727px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;opacity:0.4;fill:none;fill-opacity:1;stroke:url(#linearGradient2181);stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       d="M 41,35.000459 L 30.49991,24.000459 L 40.99991,14.000459 L 34.99991,8.0004592 L 24.50022,18.500459 L 13.999912,8.0004592 L 7.9999123,14.000459 L 18.499911,24.000459 L 7.9999123,35.000459 L 13.999912,41.000459 L 24.499911,30.500459 L 34,41 L 41,35.000459 z"
+       id="path7076"
+       sodipodi:nodetypes="ccccccccccccc" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/window-new.svg b/icons/PyHoca/scalable/window-new.svg
new file mode 100644
index 0000000..30bad58
--- /dev/null
+++ b/icons/PyHoca/scalable/window-new.svg
@@ -0,0 +1,322 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   inkscape:export-ydpi="240"
+   inkscape:export-xdpi="240"
+   inkscape:export-filename="/home/patrick/Desktop/ccsm.png"
+   width="48px"
+   height="48px"
+   id="svg11300"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="window-new.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs3">
+    <linearGradient
+       id="linearGradient2378">
+      <stop
+         id="stop2380"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         style="stop-color:#fefede;stop-opacity:0.91836733;"
+         offset="0.25"
+         id="stop4146" />
+      <stop
+         style="stop-color:#f5f328;stop-opacity:1;"
+         offset="0.5"
+         id="stop2386" />
+      <stop
+         id="stop2382"
+         offset="1"
+         style="stop-color:#f5f32d;stop-opacity:0.12234043;" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2378"
+       id="radialGradient4835"
+       gradientUnits="userSpaceOnUse"
+       cx="38.658855"
+       cy="9.3411446"
+       fx="38.658855"
+       fy="9.3411446"
+       r="8.341651" />
+    <linearGradient
+       id="linearGradient47870">
+      <stop
+         id="stop47872"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:0" />
+      <stop
+         id="stop47878"
+         offset="0.5"
+         style="stop-color:#000000;stop-opacity:1" />
+      <stop
+         id="stop47874"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient51765">
+      <stop
+         id="stop51767"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1" />
+      <stop
+         id="stop51769"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2781">
+      <stop
+         id="stop2783"
+         offset="0"
+         style="stop-color:#d3d7cf;stop-opacity:1" />
+      <stop
+         id="stop2785"
+         offset="1"
+         style="stop-color:#eeeeec;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3674">
+      <stop
+         id="stop3676"
+         offset="0"
+         style="stop-color:#555753;stop-opacity:1" />
+      <stop
+         id="stop3678"
+         offset="1"
+         style="stop-color:#888a85;stop-opacity:1" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3690">
+      <stop
+         id="stop3692"
+         offset="0"
+         style="stop-color:white;stop-opacity:1;" />
+      <stop
+         id="stop3694"
+         offset="1"
+         style="stop-color:white;stop-opacity:0.46875" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient47870"
+       id="linearGradient2282"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.9788196,0,0,0.7154223,-8.5008021,52.112719)"
+       x1="32.084972"
+       y1="-14.402173"
+       x2="32.084972"
+       y2="-5.5633383" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient51765"
+       id="radialGradient2284"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.9576392,-8.146468e-7,6.6614241e-7,1.4565793,-59.017557,62.738067)"
+       cx="51.4375"
+       cy="-12.203125"
+       fx="51.4375"
+       fy="-12.203125"
+       r="2.171875" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient51765"
+       id="radialGradient2286"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(-1.9576392,-9.2540676e-8,-1.2888861e-7,1.4565793,110.01781,62.73803)"
+       cx="51.4375"
+       cy="-12.203125"
+       fx="51.4375"
+       fy="-12.203125"
+       r="2.171875" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3690"
+       id="linearGradient2289"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.2605424,0,0,1.2058553,-7.4733927,-4.9459439)"
+       x1="9.5"
+       y1="16.26436"
+       x2="9.5"
+       y2="13.408723" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3674"
+       id="linearGradient2292"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.2446306,0,0,1.2707947,-7.0741541,-5.3017616)"
+       x1="23.069359"
+       y1="6.7993021"
+       x2="23.069359"
+       y2="12.403291" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2781"
+       id="linearGradient2295"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.2446306,0,0,1.1767765,-7.0741541,-3.982654)"
+       x1="24.925514"
+       y1="40.000107"
+       x2="25.000017"
+       y2="18.787563" />
+  </defs>
+  <sodipodi:namedview
+     stroke="#ef2929"
+     fill="#eeeeec"
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="0.25490196"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="11.313708"
+     inkscape:cx="13.972244"
+     inkscape:cy="11.280026"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:grid-bbox="true"
+     inkscape:document-units="px"
+     inkscape:showpageshadow="false"
+     inkscape:window-width="1280"
+     inkscape:window-height="724"
+     inkscape:window-x="109"
+     inkscape:window-y="262"
+     showguides="true"
+     inkscape:guide-bbox="true">
+    <inkscape:grid
+       type="xygrid"
+       id="grid7194" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata4">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:creator>
+          <cc:Agent>
+            <dc:title>Patrick Niklaus</dc:title>
+          </cc:Agent>
+        </dc:creator>
+        <dc:source />
+        <cc:license
+           rdf:resource="http://creativecommons.org/licenses/GPL/2.0/" />
+        <dc:title>State</dc:title>
+        <dc:subject>
+          <rdf:Bag />
+        </dc:subject>
+      </cc:Work>
+      <cc:License
+         rdf:about="http://creativecommons.org/licenses/GPL/2.0/">
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/Reproduction" />
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/Distribution" />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/Notice" />
+        <cc:permits
+           rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/ShareAlike" />
+        <cc:requires
+           rdf:resource="http://web.resource.org/cc/SourceCode" />
+      </cc:License>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <g
+       transform="matrix(1.1257886,0,0,1.2632476,-4.7077482,-15.803368)"
+       id="g54724">
+      <rect
+         width="32.357079"
+         height="6.3234997"
+         x="9.3215466"
+         y="41.809082"
+         style="opacity:0.3;fill:url(#linearGradient2282);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.02400005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="rect46899" />
+      <path
+         d="M 41.6785,41.799698 L 41.6785,48.126714 C 44.022298,48.102828 45.930248,46.705313 45.930248,44.974385 C 45.930248,43.243458 44.022299,41.823584 41.6785,41.799698 z"
+         style="opacity:0.3;fill:url(#radialGradient2284);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.02400005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="path48849" />
+      <path
+         d="M 9.3217476,41.799698 L 9.3217476,48.126714 C 6.9779494,48.102828 5.07,46.705313 5.07,44.974385 C 5.07,43.243458 6.9779484,41.823584 9.3217476,41.799698 z"
+         style="opacity:0.3;fill:url(#radialGradient2286);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.02400005;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="path52742" />
+    </g>
+    <rect
+       style="fill:url(#linearGradient2295);fill-opacity:1;stroke:#888a85;stroke-width:1.00000024000000010;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       id="rect1915"
+       width="41.072853"
+       height="35.891666"
+       x="3.5052049"
+       y="6.6083345"
+       rx="1.9999999"
+       ry="2" />
+    <path
+       style="fill:url(#linearGradient2292);fill-opacity:1;stroke:#555753;stroke-width:1.00000047999999997;stroke-miterlimit:4;stroke-opacity:1"
+       d="M 3.505204,13 L 3.505204,8.0415897 C 3.505204,6.6335492 4.6154143,5.5000002 5.994465,5.5000002 L 42.08875,5.5000002 C 43.4678,5.5000002 44.578011,6.6335492 44.578011,8.0415897 L 44.578011,13"
+       id="path1917"
+       sodipodi:nodetypes="cccccc" />
+    <rect
+       style="opacity:0.8;fill:none;fill-opacity:1;stroke:url(#linearGradient2289);stroke-width:1.00000095;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       id="rect1919"
+       width="39.076817"
+       height="34.969814"
+       x="4.5017591"
+       y="6.5096912"
+       rx="1.5110159"
+       ry="1.5110158" />
+    <g
+       style="display:inline"
+       inkscape:label="Base"
+       id="g2721"
+       transform="translate(-11.172678,-40.076333)" />
+    <g
+       id="g4831"
+       transform="translate(-45.445588,7.0028596)">
+      <path
+         sodipodi:type="arc"
+         style="fill:url(#radialGradient4835);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline"
+         id="path4827"
+         sodipodi:cx="38.658855"
+         sodipodi:cy="9.3411446"
+         sodipodi:rx="8.341651"
+         sodipodi:ry="8.341651"
+         d="M 47.000506,9.3411446 A 8.341651,8.341651 0 1 1 30.317204,9.3411446 A 8.341651,8.341651 0 1 1 47.000506,9.3411446 z"
+         transform="matrix(1.14985,0,0,1.14985,37.40235,-4.152422)" />
+      <path
+         sodipodi:type="star"
+         style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+         id="path4829"
+         sodipodi:sides="5"
+         sodipodi:cx="36.9375"
+         sodipodi:cy="11.125"
+         sodipodi:r1="8.755579"
+         sodipodi:r2="5.0676599"
+         sodipodi:arg1="0.52359878"
+         sodipodi:arg2="1.1519173"
+         inkscape:flatsided="false"
+         inkscape:rounded="0.18352206"
+         inkscape:randomized="0"
+         d="M 44.520054,15.50279 C 44.012883,16.381236 39.925351,15.341967 38.998703,15.754538 C 38.072055,16.167108 36.109289,19.900142 35.117113,19.689249 C 34.124936,19.478355 33.850222,15.26973 33.171495,14.515926 C 32.492767,13.762123 28.335913,13.048993 28.229885,12.040207 C 28.123857,11.031421 32.041607,9.4696164 32.548778,8.5911701 C 33.055949,7.7127238 32.449637,3.5389508 33.376285,3.1263806 C 34.302933,2.7138103 36.998949,5.957187 37.991126,6.1680807 C 38.983302,6.3789743 42.765436,4.5125708 43.444163,5.2663741 C 44.122891,6.0201775 41.871371,9.5864995 41.977399,10.595285 C 42.083426,11.604071 45.027225,14.624343 44.520054,15.50279 z"
+         transform="matrix(0.674116,0.299577,-0.299577,0.674116,60.46181,-11.83579)" />
+    </g>
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/x2go-logo-rotated.svg b/icons/PyHoca/scalable/x2go-logo-rotated.svg
new file mode 100644
index 0000000..f8b57b1
--- /dev/null
+++ b/icons/PyHoca/scalable/x2go-logo-rotated.svg
@@ -0,0 +1,1495 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Creator: CorelDRAW -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xml:space="preserve"
+   width="256"
+   height="256"
+   style="fill-rule: evenodd;"
+   viewBox="0 0 90.311 90.311"
+   sodipodi:version="0.32"
+   inkscape:version="0.47pre4 r22446"
+   sodipodi:docname="x2go-logo-rotated.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0"
+   inkscape:export-filename="/home/h1-ubuntu/Desktop/x2go-logo.png"
+   inkscape:export-xdpi="225"
+   inkscape:export-ydpi="225"
+   id="svg2"><metadata
+   id="metadata59" /><sodipodi:namedview
+   inkscape:window-height="694"
+   inkscape:window-width="1024"
+   inkscape:pageshadow="2"
+   inkscape:pageopacity="0.0"
+   guidetolerance="10.0"
+   gridtolerance="10.0"
+   objecttolerance="10.0"
+   borderopacity="1.0"
+   bordercolor="#666666"
+   pagecolor="#ffffff"
+   id="namedview57"
+   showgrid="true"
+   inkscape:zoom="1.7226562"
+   inkscape:cx="128"
+   inkscape:cy="128"
+   inkscape:window-x="0"
+   inkscape:window-y="25"
+   inkscape:current-layer="svg2"
+   inkscape:window-maximized="1"><inkscape:grid
+     type="xygrid"
+     id="grid4562"
+     visible="true"
+     enabled="true"
+     dotted="true" /></sodipodi:namedview>
+ <defs
+   id="defs4"><linearGradient
+   id="linearGradient4472"><stop
+     style="stop-color: rgb(23, 118, 255); stop-opacity: 1;"
+     offset="0"
+     id="stop4474" /><stop
+     id="stop4564"
+     offset="1"
+     style="stop-color: rgb(255, 255, 255); stop-opacity: 1;" /></linearGradient><linearGradient
+   id="linearGradient4024"><stop
+     style="stop-color: rgb(77, 77, 77); stop-opacity: 1;"
+     offset="0"
+     id="stop4026" /><stop
+     style="stop-color: rgb(0, 0, 0); stop-opacity: 1;"
+     offset="1"
+     id="stop4028" /></linearGradient><linearGradient
+   id="linearGradient3385"><stop
+     style="stop-color: rgb(77, 77, 77); stop-opacity: 1;"
+     offset="0"
+     id="stop3387" /><stop
+     style="stop-color: rgb(255, 255, 255); stop-opacity: 1;"
+     offset="1"
+     id="stop3389" /></linearGradient><inkscape:perspective
+   sodipodi:type="inkscape:persp3d"
+   inkscape:vp_x="0 : 159.9998 : 1"
+   inkscape:vp_y="0 : 1000 : 0"
+   inkscape:vp_z="319.9996 : 159.9998 : 1"
+   inkscape:persp3d-origin="159.9998 : 106.66653 : 1"
+   id="perspective61" />
+  <style
+   type="text/css"
+   id="style6">
+   
+    .str0 {stroke:black;stroke-width:0.0762}
+    .fil1 {fill:#9900CC}
+    .fil0 {fill:#4D4D4D}
+   
+  </style>
+ <inkscape:perspective
+   id="perspective2498"
+   inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+   inkscape:vp_z="744.09448 : 526.18109 : 1"
+   inkscape:vp_y="0 : 1000 : 0"
+   inkscape:vp_x="0 : 526.18109 : 1"
+   sodipodi:type="inkscape:persp3d" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3391"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662"
+   gradientUnits="userSpaceOnUse" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3471"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3473"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3475"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3477"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3479"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3481"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3483"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3485"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3487"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3489"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3491"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3493"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3495"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3497"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3499"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3501"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3503"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3505"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3507"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3509"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3511"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3513"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3515"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3517"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3519"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3521"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3523"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3525"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3527"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3529"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3531"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3533"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3535"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3537"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3539"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3541"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3543"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3545"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" />
+  <metadata
+   id="metadata3301" />
+  <metadata
+   id="metadata3303">
+   <rdf:RDF
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+    <cc:Work
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   rdf:about="">
+     <dc:format
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      image/svg+xml     </dc:format>
+     <dc:type
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+     <dc:title
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      x2go Logo     </dc:title>
+     <dc:date
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      12.06.2007     </dc:date>
+     <dc:creator
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      <cc:Agent
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+       <dc:title
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+        Heinz-M. Graesing       </dc:title>
+      </cc:Agent>
+     </dc:creator>
+     <dc:rights
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      <cc:Agent
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+       <dc:title
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+        obviously-nice       </dc:title>
+      </cc:Agent>
+     </dc:rights>
+     <dc:publisher
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      <cc:Agent
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+       <dc:title
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+        obviously-nice       </dc:title>
+      </cc:Agent>
+     </dc:publisher>
+     <dc:source
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      http://www.x2go.org/artwork     </dc:source>
+     <dc:language
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      DE     </dc:language>
+     <dc:subject
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+      <rdf:Bag
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+       <rdf:li
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)">
+        Logo       </rdf:li>
+      </rdf:Bag>
+     </dc:subject>
+     <cc:license
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   rdf:resource="http://creativecommons.org/licenses/by-nd/3.0/" />
+    </cc:Work>
+    <cc:License
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   rdf:about="http://creativecommons.org/licenses/by-nd/3.0/">
+     <cc:permits
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   rdf:resource="http://creativecommons.org/ns#Reproduction" />
+     <cc:permits
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   rdf:resource="http://creativecommons.org/ns#Distribution" />
+     <cc:requires
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   rdf:resource="http://creativecommons.org/ns#Notice" />
+     <cc:requires
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   rdf:resource="http://creativecommons.org/ns#Attribution" />
+    </cc:License>
+   </rdf:RDF>
+  </metadata>
+  <sodipodi:namedview
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   inkscape:window-height="834"
+   inkscape:window-width="1295"
+   inkscape:pageshadow="2"
+   inkscape:pageopacity="0.0"
+   guidetolerance="10.0"
+   gridtolerance="10.0"
+   objecttolerance="10.0"
+   borderopacity="1.0"
+   bordercolor="#666666"
+   pagecolor="#ffffff"
+   id="namedview3305"
+   showgrid="true"
+   inkscape:object-nodes="true"
+   inkscape:grid-points="true"
+   inkscape:guide-points="true"
+   width="128px"
+   height="128px"
+   inkscape:zoom="3.9375"
+   inkscape:cx="64"
+   inkscape:cy="64"
+   inkscape:window-x="395"
+   inkscape:window-y="117"
+   inkscape:current-layer="svg2">
+   <inkscape:grid
+   style="fill-opacity:1.0;fill:url(#linearGradient3391)"
+   id="grid3307"
+   type="xygrid"
+   originx="0px"
+   originy="0px"
+   spacingx="1px"
+   spacingy="1px"
+   color="#0000ff"
+   empcolor="#0000ff"
+   opacity="0.2"
+   empopacity="0.4"
+   empspacing="5" />
+  </sodipodi:namedview>
+  
+  
+ <linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3589"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3591"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3593"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3595"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3597"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3599"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3601"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3603"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3605"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3607"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3609"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3611"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3613"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3615"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3617"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3619"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3621"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3623"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3625"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3627"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3629"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3631"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3633"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3635"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3637"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3639"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3641"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3643"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3645"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3647"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3649"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3651"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3653"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3655"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3657"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3659"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3661"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3663"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" />
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+  <linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3666"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3712"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3714"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" />
+    
+   <linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3717"
+   gradientUnits="userSpaceOnUse"
+   x1="43.865341"
+   y1="21.932671"
+   x2="46.680233"
+   y2="59.933662" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient3385"
+   id="linearGradient3720"
+   gradientUnits="userSpaceOnUse"
+   x1="186.41063"
+   y1="52.270298"
+   x2="197.95351"
+   y2="160.08939" />
+  <metadata
+   id="metadata3832" />
+  <metadata
+   id="metadata3834">
+   <rdf:RDF>
+    <cc:Work
+   rdf:about="">
+     <dc:format>
+      image/svg+xml     </dc:format>
+     <dc:type
+   rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+     <dc:title>
+      x2go Logo     </dc:title>
+     <dc:date>
+      12.06.2007     </dc:date>
+     <dc:creator>
+      <cc:Agent>
+       <dc:title>
+        Heinz-M. Graesing       </dc:title>
+      </cc:Agent>
+     </dc:creator>
+     <dc:rights>
+      <cc:Agent>
+       <dc:title>
+        obviously-nice       </dc:title>
+      </cc:Agent>
+     </dc:rights>
+     <dc:publisher>
+      <cc:Agent>
+       <dc:title>
+        obviously-nice       </dc:title>
+      </cc:Agent>
+     </dc:publisher>
+     <dc:source>
+      http://www.x2go.org/artwork     </dc:source>
+     <dc:language>
+      DE     </dc:language>
+     <dc:subject>
+      <rdf:Bag>
+       <rdf:li>
+        Logo       </rdf:li>
+      </rdf:Bag>
+     </dc:subject>
+     <cc:license
+   rdf:resource="http://creativecommons.org/licenses/by-nd/3.0/" />
+    </cc:Work>
+    <cc:License
+   rdf:about="http://creativecommons.org/licenses/by-nd/3.0/">
+     <cc:permits
+   rdf:resource="http://creativecommons.org/ns#Reproduction" />
+     <cc:permits
+   rdf:resource="http://creativecommons.org/ns#Distribution" />
+     <cc:requires
+   rdf:resource="http://creativecommons.org/ns#Notice" />
+     <cc:requires
+   rdf:resource="http://creativecommons.org/ns#Attribution" />
+    </cc:License>
+   </rdf:RDF>
+  </metadata>
+  <sodipodi:namedview
+   inkscape:window-height="834"
+   inkscape:window-width="1295"
+   inkscape:pageshadow="2"
+   inkscape:pageopacity="0.0"
+   guidetolerance="10.0"
+   gridtolerance="10.0"
+   objecttolerance="10.0"
+   borderopacity="1.0"
+   bordercolor="#666666"
+   pagecolor="#ffffff"
+   id="namedview3836"
+   showgrid="true"
+   inkscape:object-nodes="true"
+   inkscape:grid-points="true"
+   inkscape:guide-points="true"
+   width="128px"
+   height="128px"
+   inkscape:zoom="3.9375"
+   inkscape:cx="64"
+   inkscape:cy="64"
+   inkscape:window-x="395"
+   inkscape:window-y="117"
+   inkscape:current-layer="svg2">
+   <inkscape:grid
+   id="grid3838"
+   type="xygrid"
+   originx="0px"
+   originy="0px"
+   spacingx="1px"
+   spacingy="1px"
+   color="#0000ff"
+   empcolor="#0000ff"
+   opacity="0.2"
+   empopacity="0.4"
+   empspacing="5" />
+  </sodipodi:namedview>
+  
+  
+ 
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+   
+  
+    
+   <linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient4024"
+   id="linearGradient4030"
+   x1="73.773529"
+   y1="34.716957"
+   x2="7.6236558"
+   y2="72.366089"
+   gradientUnits="userSpaceOnUse" /><linearGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient4024"
+   id="linearGradient4116"
+   gradientUnits="userSpaceOnUse"
+   x1="9.4750996"
+   y1="78.465012"
+   x2="64.742432"
+   y2="46.914806" />
+  <metadata
+   id="metadata4160" />
+  
+ <radialGradient
+   inkscape:collect="always"
+   xlink:href="#linearGradient4472"
+   id="radialGradient4478"
+   cx="44.602337"
+   cy="44.941875"
+   fx="44.602337"
+   fy="44.941875"
+   r="35.79092"
+   gradientTransform="matrix(1, 0, 0, 1.15885, 0, -7.1388)"
+   gradientUnits="userSpaceOnUse" /><filter
+   inkscape:collect="always"
+   id="filter3357"><feGaussianBlur
+     inkscape:collect="always"
+     stdDeviation="2.6811911"
+     id="feGaussianBlur3359" /></filter></defs>
+ 
+ <path
+   style="fill: rgb(0, 0, 0); fill-opacity: 1; stroke: none; stroke-width: 1; stroke-linecap: butt; stroke-linejoin: round; stroke-miterlimit: 4; stroke-dashoffset: 0pt; stroke-opacity: 1; filter: url(#filter3357);"
+   d="M 17.091117,8.0900691 L 80.688789,3.507838 C 83.229977,4.1306547 84.660349,6.5850788 84.592564,8.7115923 L 84.666563,83.255453 C 84.627506,84.204671 84.368459,84.929044 84.046689,85.456149 C 83.061689,86.21353 81.854514,86.556277 80.541045,86.436862 L 18.151615,78.623279 C 16.029205,78.182442 14.445482,76.236797 14.328795,73.719407 L 13.085984,12.818162 C 13.047067,11.517857 13.900155,8.36003 17.091117,8.0900691 z"
+   id="path2573"
+   sodipodi:nodetypes="cccccccccc"
+   transform="matrix(1, 0, 0, 1.01684, 0, -0.11242)" /><path
+   style="fill: rgb(255, 255, 255); fill-opacity: 1; stroke: none; stroke-width: 1; stroke-linecap: butt; stroke-linejoin: round; stroke-miterlimit: 4; stroke-dashoffset: 0pt; stroke-opacity: 1;"
+   d="M 12.817811,7.3540988 L 76.415483,3.4657395 C 78.956672,4.0885562 80.387044,6.5429803 80.319258,8.6694938 L 80.393257,83.213355 C 80.354201,84.162573 80.095153,84.886946 79.773383,85.414051 C 78.788384,86.171432 77.581208,86.514179 76.267739,86.394764 L 13.878309,79.275053 C 11.755899,78.834216 10.172176,76.888571 10.055489,74.371181 L 8.8126782,12.082192 C 8.7737615,10.781887 9.6268498,7.6240597 12.817811,7.3540988 z"
+   id="rect4467"
+   sodipodi:nodetypes="cccccccccc" /><path
+   sodipodi:nodetypes="cccccccccc"
+   id="path4470"
+   d="M 12.817811,7.3540988 L 76.415483,3.4657395 C 78.956672,4.0885562 80.387044,6.5429803 80.319258,8.6694938 L 80.393257,83.213355 C 80.354201,84.162573 80.095153,84.886946 79.773383,85.414051 C 78.788384,86.171432 77.581208,86.514179 76.267739,86.394764 L 13.878309,79.275053 C 11.755899,78.834216 10.172176,76.888571 10.055489,74.371181 L 8.8126782,12.082192 C 8.7737615,10.781887 9.6268498,7.6240597 12.817811,7.3540988 z"
+   style="fill: url(#radialGradient4478) rgb(0, 0, 0); fill-opacity: 1; stroke: none; stroke-width: 1; stroke-linecap: butt; stroke-linejoin: round; stroke-miterlimit: 4; stroke-dashoffset: 0pt; stroke-opacity: 1;" /><g
+   id="Ebene_x0020_2"
+   visibility="hidden"
+   style="fill: rgb(0, 0, 0); stroke: none; visibility: hidden;">
+  <metadata
+   id="CorelCorpID_1Corel-Layer" />
+  <path
+   class="fil1 str0"
+   d="M 82.9259,82.4551 L 82.9178,82.762 L 82.894,83.0632 L 82.8547,83.3577 L 82.8006,83.6459 L 82.7318,83.9269 L 82.6489,84.2006 L 82.5524,84.4666 L 82.4425,84.7249 L 82.3195,84.9747 L 82.1841,85.2161 L 82.0366,85.4486 L 81.8774,85.6719 L 81.7068,85.8855 L 80.5321,87.3512 L 80.7062,87.1333 L 80.8686,86.9054 L 81.0192,86.6682 L 81.1574,86.4219 L 81.2829,86.167 L 81.3949,85.9034 L 81.4935,85.632 L 81.578,85.3526 L 81.6482,85.0659 L 81.7034,84.7719 L 81.7436,84.4713 L 81.7678,84.1641 L 81.7761,83.8509 L 81.7761,83.2671 L 81.7761,82.6833 L 81.7761,82.0994 L 81.7761,7.8138 L 81.7676,7.4861 L 81.7426,7.1631 L 81.7015,6.846 L 81.6447,6.5344 L 81.5724,6.2293 L 81.4855,5.9308 L 81.384,5.6395 L 81.2686,5.3554 L 81.1395,5.0794 L 80.9973,4.8116 L 80.8422,4.5524 L 80.6752,4.3021 L 80.4958,4.0615 L 80.3054,3.8304 L 80.1038,3.6097 L 79.8917,3.3994 L 79.6691,3.2004 L 79.4369,3.0125 L 79.1954,2.8366 L 78.9451,2.6725 L 78.6861,2.5213 L 78.4193,2.3828 L 78.1447,2.2577 L 77.8631,2.1462 L 77.57
 44,2.049
  L 77.2796,1.9662 L 76.9787,1.8983 L 78.2245,2.1417 L 78.5193,2.2083 L 78.8083,2.2893 L 79.0911,2.3847 L 79.3671,2.494 L 79.6362,2.6166 L 79.8977,2.7523 L 80.1515,2.9004 L 80.3968,3.0612 L 80.6335,3.2336 L 80.861,3.4178 L 81.0791,3.6128 L 81.287,3.8188 L 81.4846,4.0352 L 81.6713,4.2617 L 81.847,4.4975 L 82.0108,4.7428 L 82.1627,4.9968 L 82.3021,5.2592 L 82.4286,5.5296 L 82.5417,5.8081 L 82.6411,6.0935 L 82.7263,6.3862 L 82.797,6.6852 L 82.8528,6.9904 L 82.893,7.3012 L 82.9176,7.6178 L 82.9259,7.9389 L 82.9259,82.4551 z M 76.189,86.3723 L 76.4601,86.3962 L 76.7286,86.4064 L 76.9933,86.4028 L 77.2543,86.3859 L 77.5108,86.3559 L 77.763,86.3132 L 78.01,86.2579 L 78.252,86.1906 L 78.4879,86.1112 L 78.7181,86.0203 L 78.9416,85.918 L 79.1588,85.8049 L 79.3686,85.6809 L 79.571,85.5466 L 79.7655,85.4022 L 79.9521,85.2481 L 80.1297,85.0841 L 80.2988,84.9111 L 80.4584,84.7291 L 79.2583,86.1712 L 79.0953,86.3569 L 78.9229,86.5336 L 78.7416,86.7007 L 78.5512,86.8581 L 78.3527,87.0055 L 7
 8.1462,8
 7.1425 L 77.9321,87.269 L 77.7106,87.3845 L 77.4824,87.4888 L 77.2475,87.5815 L 77.0067,87.6626 L 76.7599,87.7313 L 76.5078,87.7877 L 76.2505,87.8312 L 75.9888,87.8619 L 75.7224,87.8791 L 75.4523,87.8828 L 75.1784,87.8724 L 74.9016,87.8479 L 14.1538,80.9158 L 13.7157,80.8658 L 13.2781,80.816 L 12.8414,80.7661 L 12.4052,80.7164 L 11.9698,80.6667 L 11.5349,80.6172 L 11.3276,80.5874 L 11.1226,80.5463 L 10.9206,80.4939 L 10.7215,80.4308 L 10.5258,80.3571 L 10.3336,80.2734 L 10.1453,80.1796 L 9.961,80.0764 L 9.7813,79.9638 L 9.606,79.8425 L 9.4356,79.7124 L 9.2703,79.5743 L 9.1105,79.428 L 8.956,79.2743 L 8.8074,79.1132 L 8.6649,78.9452 L 8.5291,78.7703 L 8.3997,78.5892 L 8.2773,78.4021 L 8.1618,78.2095 L 8.0539,78.0111 L 7.9536,77.808 L 7.8613,77.6 L 7.7769,77.3878 L 7.7012,77.1713 L 7.6338,76.951 L 7.5756,76.7274 L 7.5264,76.5007 L 7.4868,76.2709 L 7.4566,76.0389 L 7.4365,75.8047 L 7.4264,75.5688 L 6.1539,12.2599 L 6.1544,12.0164 L 6.1655,11.7752 L 6.1869,11.5367 L 6.2181,11.30
 11 L 6.2
 593,11.069 L 6.3098,10.8404 L 6.3699,10.6158 L 6.4387,10.3953 L 6.5166,10.1798 L 6.603,9.9691 L 6.6977,9.7637 L 6.8003,9.5637 L 6.9109,9.3699 L 7.0288,9.1821 L 7.1542,9.0011 L 7.2866,8.8267 L 7.4259,8.66 L 7.5716,8.5006 L 7.7238,8.3492 L 7.8819,8.2058 L 8.0459,8.0712 L 8.2154,7.9452 L 8.3903,7.8286 L 8.57,7.7213 L 8.7547,7.6241 L 8.944,7.5369 L 9.1376,7.4603 L 9.3351,7.3944 L 9.5367,7.3397 L 9.7416,7.2965 L 9.9499,7.2651 L 10.1611,7.2456 L 10.6036,7.2185 L 11.0468,7.1913 L 11.4905,7.164 L 11.935,7.1366 L 12.3801,7.1094 L 12.8257,7.0819 L 13.2721,7.0545 L 74.7051,3.281 L 74.9903,3.2711 L 75.2722,3.2758 L 75.5503,3.2951 L 75.8244,3.3283 L 77.0932,3.5431 L 76.8246,3.5105 L 76.552,3.4917 L 76.2758,3.4871 L 75.9963,3.4968 L 75.433,3.5315 L 74.8706,3.5663 L 13.177,7.3555 L 12.7434,7.3821 L 12.5363,7.4011 L 12.3321,7.4319 L 12.1314,7.4744 L 11.9338,7.5279 L 11.7403,7.5924 L 11.5506,7.6675 L 11.3651,7.753 L 11.1841,7.8483 L 11.0079,7.9533 L 10.8365,8.0677 L 10.6705,8.1911 L 10.5097,
 8.3231 L
  10.3547,8.4636 L 10.2056,8.6119 L 10.0627,8.7682 L 9.9263,8.9316 L 9.7965,9.1025 L 9.6737,9.2798 L 9.558,9.4638 L 9.4497,9.6538 L 9.3492,9.8498 L 9.2563,10.0511 L 9.1717,10.2576 L 9.0954,10.4688 L 9.0279,10.6848 L 8.969,10.905 L 8.9196,11.1289 L 8.8791,11.3565 L 8.8486,11.5873 L 8.8276,11.8211 L 8.8168,12.0574 L 8.8162,12.296 L 8.8264,12.7894 L 8.8362,13.2825 L 8.8462,13.7757 L 8.856,14.2686 L 8.8659,14.7615 L 8.8757,15.2542 L 8.8856,15.7469 L 8.8954,16.2394 L 8.9055,16.7319 L 8.9154,17.2243 L 8.9253,17.7165 L 8.9351,18.2084 L 8.945,18.7006 L 8.9548,19.1924 L 8.9647,19.684 L 8.9745,20.1755 L 8.9844,20.6672 L 8.9943,21.1586 L 9.0042,21.6498 L 9.014,22.1409 L 9.0239,22.6318 L 9.0294,22.9058 L 38.765323,21.259149 L 39.671538,23.190289 L 41.589655,23.080505 L 40.7533,21.1049 L 38.7427,21.2485 L 9.0294,22.9072 L 9.0337,23.1227 L 9.0436,23.6132 L 9.0534,24.1037 L 9.0634,24.594 L 9.0732,25.0842 L 9.0831,25.5742 L 9.0929,26.0641 L 9.1008,26.4565 L 11.6093,26.2178 L 42.3483,24.7592 
 L 43.136
 8,26.6197 L 43.1911,26.7427 L 41.2302,27.0014 L 41.1749,26.8758 L 40.3703,24.9774 L 9.1009,26.4613 L 9.1028,26.5539 L 9.1126,27.0433 L 9.1225,27.5328 L 9.1322,28.0219 L 9.142,28.5092 L 9.1519,28.9963 L 9.1617,29.4835 L 9.1714,29.9706 L 9.1726,30.0297 L 11.6769,29.7224 L 43.8813,28.5197 L 43.9345,28.6467 L 44.7377,30.5489 L 42.8084,30.8852 L 41.9889,28.9442 L 41.9346,28.8146 L 9.1728,30.0382 L 9.1812,30.458 L 9.1912,30.9451 L 9.201,31.4323 L 9.2106,31.9193 L 9.2204,32.4065 L 9.2302,32.8936 L 9.2401,33.3807 L 9.2446,33.6092 L 11.7372,33.2346 L 45.4331,32.2177 L 45.4892,32.3557 L 46.3414,34.4054 L 44.445,34.8204 L 43.5753,32.7289 L 43.518,32.5881 L 9.2448,33.6223 L 9.2496,33.8677 L 9.2596,34.3547 L 9.2694,34.8417 L 9.2793,35.3285 L 9.2888,35.8151 L 9.2986,36.3019 L 9.3085,36.7885 L 9.3159,37.1515 L 11.8043,36.7095 L 46.997,35.9493 L 47.9492,38.2329 L 46.0855,38.726 L 45.1138,36.3958 L 9.4635,37.167 L 9.3163,37.1696 L 9.3184,37.275 L 9.328,37.7614 L 9.3378,38.2477 L 9.3476,38.73
 39 L 9.3
 574,39.2198 L 9.3669,39.7055 L 9.3768,40.1913 L 9.3867,40.6768 L 9.3867,40.6788 L 11.871,40.1698 L 48.5657,39.7387 L 49.5761,42.0796 L 47.7457,42.6512 L 46.7147,40.2626 L 9.3872,40.7015 L 9.3966,41.1624 L 9.4061,41.6474 L 9.4159,42.1324 L 9.4255,42.6171 L 9.4353,43.1015 L 9.4449,43.5859 L 9.4548,44.0694 L 9.4573,44.1908 L 11.9376,43.6152 L 50.1537,43.4978 L 51.071,45.6095 L 50.887733,45.807399 L 49.130423,46.599325 L 49.271,46.2533 L 48.335,44.0985 L 9.6196,44.2176 L 9.4578,44.218 L 9.4646,44.553 L 9.4745,45.0366 L 9.484,45.5202 L 9.4939,46.0036 L 9.5035,46.4871 L 9.5133,46.9706 L 9.5229,47.4542 L 9.5284,47.7252 L 12.0046,47.0827 L 50.3179,47.2212 L 50.2453,47.3716 L 49.1779,49.5958 L 47.3393,50.321 L 48.5026,47.8978 L 9.6891,47.7583 L 9.529,47.7573 L 9.5327,47.9375 L 9.5423,48.4209 L 9.5522,48.9042 L 9.5618,49.3875 L 9.5717,49.8705 L 9.5812,50.3538 L 9.591,50.8367 L 9.5989,51.2368 L 12.071,50.5281 L 48.5063,51.0119 L 47.4565,53.2183 L 45.5827,54.0173 L 46.6541,51.766 L 9.74
 32,51.27
 65 L 9.5997,51.2743 L 9.6006,51.3199 L 9.6104,51.8026 L 9.62,52.2854 L 9.6299,52.7681 L 9.6394,53.2507 L 9.6493,53.733 L 9.6588,54.2156 L 9.6686,54.6977 L 9.6696,54.7484 L 12.1376,53.9736 L 46.7127,54.6995 L 45.7309,56.8104 L 43.8218,57.6827 L 44.8238,55.5288 L 9.6705,54.7908 L 9.6783,55.18 L 9.6881,55.6618 L 9.6976,56.1438 L 9.7075,56.6254 L 9.717,57.1072 L 9.7268,57.5885 L 9.7365,58.0699 L 9.741,58.297 L 12.2046,57.4557 L 44.9898,58.4231 L 44.0157,60.3658 L 42.0717,61.3107 L 43.0657,59.3284 L 9.7419,58.3452 L 9.746,58.5509 L 9.7555,59.032 L 9.7654,59.5112 L 9.7749,59.9907 L 9.7847,60.4699 L 9.7943,60.9494 L 9.8041,61.4286 L 9.811,61.7781 L 12.2707,60.8716 L 43.2399,62.0428 L 42.4,63.8833 L 40.423,64.9 L 41.2801,63.022 L 9.8121,61.832 L 9.8136,61.9078 L 9.8232,62.3869 L 9.8328,62.8661 L 9.8426,63.345 L 9.8522,63.824 L 9.8617,64.3029 L 9.8712,64.7818 L 9.8811,65.2603 L 9.8812,65.2665 L 12.3367,64.2948 L 41.5531,65.6845 L 39.5589,66.738 L 10.1861,65.341 L 9.8824,65.3264 L 9.8
 907,65.7
 391 L 9.9002,66.2176 L 9.9097,66.6963 L 9.9196,67.1745 L 9.9291,67.6529 L 9.9387,68.1311 L 9.9483,68.6092 L 9.9519,68.7849 L 12.4035,67.7475 L 39.0528,69.1849 L 39.4995,69.2094 L 39.4942,69.2205 L 39.4889,69.2319 L 39.4838,69.2431 L 39.4788,69.254 L 39.4743,69.2644 L 39.4702,69.2745 L 39.4666,69.2841 L 39.4635,69.2932 L 39.3558,69.3528 L 39.3503,69.3584 L 39.3397,69.3696 L 39.3297,69.3804 L 39.3201,69.3913 L 39.3108,69.4021 L 39.3022,69.4133 L 39.2128,69.4628 L 39.2104,69.4674 L 39.205,69.4775 L 39.1996,69.4874 L 39.1942,69.4973 L 39.1888,69.5073 L 39.1834,69.5178 L 39.178,69.529 L 39.0695,69.5891 L 39.0645,69.5941 L 39.0591,69.5995 L 39.0533,69.6053 L 37.008,70.7387 L 37.0139,70.7329 L 37.0194,70.7273 L 37.0249,70.7218 L 37.0304,70.7163 L 37.0362,70.7108 L 37.0417,70.7053 L 37.0472,70.6998 L 37.0527,70.6942 L 37.1438,70.6437 L 37.1463,70.6388 L 37.1519,70.6285 L 37.1574,70.6185 L 37.1603,70.6129 L 36.8052,70.8096 L 36.8111,70.8037 L 36.8151,70.7997 L 36.7228,70.8508 L 36.73
 17,70.84
 54 L 36.8162,70.7986 L 36.8166,70.7982 L 36.8221,70.7927 L 36.8276,70.7872 L 36.8334,70.7817 L 36.8389,70.7762 L 36.8444,70.7706 L 36.8499,70.7651 L 37.175,70.5851 L 37.1795,70.5762 L 37.2801,70.5205 L 37.2802,70.5204 L 37.2901,70.5093 L 37.3002,70.4983 L 37.311,70.4869 L 37.3219,70.4759 L 37.3329,70.4648 L 37.3439,70.4538 L 37.432,70.4051 L 37.4334,70.4013 L 37.4377,70.3909 L 37.4422,70.3803 L 37.4473,70.3692 L 37.4525,70.3578 L 37.4579,70.3462 L 37.4633,70.3348 L 37.4371,70.3334 L 36.3918,70.9109 L 36.4006,70.9055 L 37.4362,70.3333 L 35.6439,70.2363 L 34.386604,70.174359 L 10.224,68.8652 L 9.9532,68.8506 L 9.958,69.0871 L 9.9675,69.5652 L 9.977,70.043 L 9.9866,70.5209 L 9.9965,70.9983 L 10.006,71.4759 L 10.0156,71.9532 L 10.0215,72.2504 L 12.4689,71.1486 L 35.5517,72.6014 L 35.5697,74.0705 L 33.4534,75.295 L 33.4524,75.2021 L 33.435,73.796 L 10.2332,72.336 L 10.0229,72.3226 L 10.0251,72.4307 L 10.0346,72.9077 L 10.0442,73.3849 L 10.0538,73.8618 L 10.0633,74.3387 L 10.0731,
 74.5699 
 L 10.0928,74.7994 L 10.1225,75.0268 L 10.1613,75.252 L 10.2095,75.4741 L 10.2666,75.6933 L 10.3325,75.9091 L 10.4068,76.1214 L 10.4896,76.3294 L 10.58,76.5331 L 10.6783,76.7322 L 10.784,76.9266 L 10.8972,77.1153 L 11.0171,77.2987 L 11.1439,77.4761 L 11.277,77.6476 L 11.4167,77.8122 L 11.5623,77.9701 L 11.7137,78.1208 L 11.8703,78.2641 L 12.0324,78.3994 L 12.1993,78.5269 L 12.3711,78.6458 L 12.5473,78.7562 L 12.7279,78.8573 L 12.9124,78.9491 L 13.1007,79.0313 L 13.2924,79.1035 L 13.4876,79.1654 L 13.6856,79.2167 L 13.8864,79.2569 L 14.0897,79.2861 L 74.5381,86.1836 L 75.0875,86.2464 L 75.6378,86.3092 L 76.189,86.3723 L 76.189,86.3723 z M 34.8606,18.7453 L 36.228214,18.724592 C 37.971462,18.712199 37.943293,18.825508 38.346563,19.205978 L 37.487073,19.279179 C 36.690089,18.733992 35.720531,18.821581 34.7766,18.8152 L 32.7297,18.8407 L 32.7169,17.8041 L 34.8479,17.7294 L 34.8606,18.7453 L 34.8606,18.7453 z M 32.6622,13.9686 L 34.7944,13.9707 L 34.8206,15.4945 L 32.6889,15.5236 
 L 32.662
 2,13.9686 L 32.6622,13.9686 z M 78.1675,76.3511 L 78.1675,76.446 L 78.1675,76.5411 L 78.1675,76.6361 L 78.1678,76.7313 L 78.1678,76.8261 L 78.1679,76.9212 L 78.1679,77.0163 L 78.1682,77.1114 L 78.1682,77.2062 L 78.1682,77.3013 L 78.1682,77.3965 L 78.1686,77.4916 L 78.1686,77.5864 L 78.1689,77.6815 L 78.1689,77.7767 L 78.1692,77.8719 L 76.9223,79.174 L 76.922,79.0769 L 76.922,78.9799 L 76.9217,78.8828 L 76.9217,78.7861 L 76.9214,78.689 L 76.9214,78.5919 L 76.9214,78.4949 L 76.9214,78.3981 L 76.921,78.301 L 76.921,78.204 L 76.9209,78.1069 L 76.9209,78.0102 L 76.9206,77.9131 L 76.9206,77.8161 L 76.9206,77.7191 L 76.9206,77.6223 L 76.7971,77.6092 L 76.6747,77.5933 L 76.5532,77.5743 L 76.4328,77.5524 L 76.313,77.5273 L 76.1943,77.4996 L 76.0764,77.4689 L 75.9597,77.4353 L 75.8436,77.3987 L 75.7286,77.3593 L 75.6146,77.3171 L 75.5017,77.2722 L 75.3895,77.2243 L 75.2785,77.1739 L 75.1684,77.1206 L 75.0594,77.0648 L 74.9512,77.0059 L 74.8442,76.9446 L 74.7381,76.8804 L 74.6331,76.81
 38 L 74.
 529,76.7444 L 74.4262,76.6725 L 74.3244,76.5979 L 74.2238,76.521 L 74.1239,76.4414 L 74.0253,76.3592 L 73.9277,76.2745 L 73.8315,76.1875 L 73.736,76.0979 L 73.6419,76.0059 L 73.5488,75.9114 L 73.4571,75.8148 L 73.3664,75.7089 L 73.275,75.5985 L 73.1826,75.4832 L 73.0894,75.3633 L 72.9951,75.2384 L 72.9001,75.1091 L 72.804,74.9748 L 72.7071,74.8361 L 72.6091,74.6923 L 72.5103,74.5439 L 72.4105,74.3908 L 72.3101,74.2332 L 72.2086,74.0706 L 72.1062,73.9036 L 72.003,73.7316 L 71.899,73.5552 L 71.7938,73.3739 L 71.6879,73.1881 L 71.5811,72.9975 L 71.4736,72.8024 L 71.3649,72.6024 L 71.2556,72.3981 L 71.1453,72.1889 L 71.0345,71.9753 L 70.9225,71.7568 L 70.8098,71.5339 L 70.6961,71.3063 L 70.5819,71.0742 L 70.4665,70.8372 L 70.3505,70.596 L 70.2336,70.3499 L 70.1161,70.0996 L 69.9227,69.6531 L 69.7296,69.207 L 69.5366,68.761 L 57.9695,41.9684 L 67.3913,22.906 L 67.569,22.5466 L 67.7438,22.1955 L 67.9155,21.8532 L 68.0845,21.5194 L 68.2503,21.1945 L 68.4133,20.8781 L 68.5734,20.570
 4 L 68.7
 308,20.2712 L 68.8852,19.981 L 69.0369,19.6993 L 69.1857,19.4263 L 69.332,19.1618 L 69.4754,18.9062 L 69.6163,18.6591 L 69.7543,18.4208 L 69.89,18.1911 L 70.0228,17.9702 L 70.1533,17.7579 L 70.2811,17.5543 L 70.4066,17.3593 L 70.5293,17.1732 L 70.6498,16.9956 L 70.7679,16.8268 L 70.8837,16.6665 L 70.9969,16.5151 L 71.1079,16.3723 L 71.2166,16.2382 L 71.3231,16.1127 L 71.4273,15.996 L 71.5293,15.8879 L 71.6291,15.7886 L 71.7269,15.6978 L 71.8247,15.6101 L 71.9254,15.5251 L 72.0286,15.4427 L 72.1348,15.3629 L 72.2435,15.2859 L 72.3552,15.2113 L 72.4696,15.1395 L 72.5869,15.07 L 72.7069,15.0035 L 72.8299,14.9395 L 72.9558,14.8782 L 73.0848,14.8192 L 73.2165,14.763 L 73.3514,14.7092 L 73.4892,14.6582 L 73.6303,14.6095 L 73.7741,14.5636 L 73.9213,14.5201 L 74.0714,14.4792 L 74.225,14.4407 L 74.3814,14.4048 L 74.5413,14.3714 L 74.7042,14.3406 L 74.8707,14.312 L 75.0401,14.2861 L 75.2131,14.2626 L 75.3892,14.2415 L 75.5689,14.2229 L 75.7518,14.2068 L 75.9382,14.1931 L 76.128,14.181
 8 L 76.3
 215,14.1728 L 76.3212,14.0696 L 76.3212,13.966 L 76.3209,13.8626 L 76.3209,13.759 L 76.3206,13.6554 L 76.3206,13.5519 L 76.3204,13.4481 L 76.3204,13.3442 L 76.3201,13.2404 L 76.3201,13.1364 L 76.3198,13.0322 L 76.3198,12.9279 L 76.3195,12.8235 L 76.3195,12.7188 L 76.3195,12.614 L 76.3195,12.5089 L 77.5785,12.5401 L 77.5785,12.6431 L 77.5785,12.7459 L 77.5785,12.8484 L 77.5787,12.9507 L 77.5787,13.053 L 77.579,13.155 L 77.579,13.257 L 77.5793,13.3587 L 77.5793,13.4605 L 77.5794,13.5623 L 77.5794,13.6637 L 77.5798,13.7652 L 77.5798,13.8667 L 77.5801,13.9681 L 77.5801,14.0696 L 77.5804,14.1708 L 77.3908,14.1795 L 77.2048,14.1906 L 77.022,14.2041 L 76.8428,14.2199 L 76.6667,14.2381 L 76.4941,14.2587 L 76.3247,14.2818 L 76.1586,14.3071 L 75.9955,14.3351 L 75.8357,14.3653 L 75.6792,14.3981 L 75.5258,14.4332 L 75.3753,14.471 L 75.2282,14.5111 L 75.084,14.5537 L 74.9431,14.5986 L 74.8048,14.6464 L 74.6697,14.6965 L 74.5375,14.7492 L 74.4084,14.8041 L 74.282,14.8619 L 74.1586,14.9221
  L 74.03
 81,14.9848 L 73.9204,15.05 L 73.8055,15.1181 L 73.6934,15.1884 L 73.584,15.2616 L 73.4774,15.337 L 73.3734,15.4152 L 73.2722,15.496 L 73.1735,15.5793 L 73.0776,15.6652 L 72.9818,15.7542 L 72.8841,15.8516 L 72.7841,15.9575 L 72.682,16.0718 L 72.5776,16.1948 L 72.4711,16.3262 L 72.3622,16.4662 L 72.2513,16.6146 L 72.1379,16.7716 L 72.0221,16.9371 L 71.9041,17.1111 L 71.7837,17.2935 L 71.6609,17.4847 L 71.5356,17.6841 L 71.4077,17.8922 L 71.2776,18.1086 L 71.1446,18.3338 L 71.0092,18.5674 L 70.8711,18.8094 L 70.7307,19.0599 L 70.5873,19.3191 L 70.4414,19.5866 L 70.2928,19.8627 L 70.1415,20.1472 L 69.9872,20.4403 L 69.8304,20.7419 L 69.6706,21.052 L 69.5082,21.3704 L 69.3426,21.6975 L 69.1742,22.033 L 69.003,22.377 L 68.8289,22.7293 L 59.5955,41.4104 L 71.3096,68.5413 L 71.4991,68.9789 L 71.6142,69.2241 L 71.7288,69.4653 L 71.8425,69.7017 L 71.9556,69.934 L 72.0676,70.1615 L 72.1789,70.3845 L 72.2894,70.6029 L 72.3991,70.8171 L 72.5078,71.0265 L 72.6158,71.2314 L 72.7229,71.4316
  L 72.82
 94,71.6276 L 72.9348,71.8188 L 73.0396,72.0056 L 73.1432,72.1877 L 73.2464,72.3654 L 73.3482,72.5382 L 73.4494,72.7068 L 73.5497,72.8705 L 73.6492,73.0299 L 73.7476,73.1843 L 73.8454,73.3343 L 73.9422,73.4797 L 74.0383,73.6206 L 74.1332,73.7566 L 74.2274,73.8882 L 74.3205,74.0149 L 74.413,74.1373 L 74.5043,74.2549 L 74.5948,74.3677 L 74.6843,74.476 L 74.7733,74.5797 L 74.8632,74.6745 L 74.9543,74.767 L 75.0466,74.8572 L 75.1401,74.9451 L 75.2345,75.0302 L 75.3302,75.1133 L 75.4267,75.1938 L 75.5246,75.2719 L 75.6232,75.3473 L 75.723,75.4203 L 75.8237,75.4908 L 75.9258,75.5589 L 76.0287,75.6241 L 76.1326,75.687 L 76.2374,75.747 L 76.3435,75.8047 L 76.4503,75.8595 L 76.5583,75.9116 L 76.667,75.9611 L 76.777,76.0081 L 76.8876,76.0521 L 76.9994,76.0934 L 77.112,76.1321 L 77.2258,76.1679 L 77.3402,76.2008 L 77.4557,76.2309 L 77.5721,76.258 L 77.6895,76.2826 L 77.8074,76.304 L 77.9266,76.3227 L 78.0465,76.3383 L 78.1675,76.3511 L 78.1675,76.3511 z M 59.5721,76.0232 L 61.166,74.784
  L 61.43
 79,74.807 L 61.6998,74.8248 L 61.9519,74.8374 L 62.194,74.8447 L 62.4259,74.8466 L 62.6479,74.843 L 62.86,74.8338 L 63.0624,74.8189 L 63.2546,74.798 L 63.437,74.7715 L 63.652439,74.730232 C 63.475205,75.275112 63.15486,75.533771 62.7963,75.716 L 62.67,75.781 L 62.5339,75.8398 L 62.3877,75.8919 L 62.2317,75.9378 L 62.0656,75.9771 L 61.8895,76.0104 L 61.7033,76.0375 L 61.5072,76.0588 L 61.3007,76.074 L 61.0843,76.0834 L 60.8577,76.0871 L 60.621,76.0852 L 60.374,76.0776 L 60.1169,76.0649 L 59.8496,76.0466 L 59.5721,76.0232 L 59.5721,76.0232 z M 49.6986,73.7269 L 49.6996,73.8159 L 49.7002,73.9054 L 49.7012,73.9945 L 49.7019,74.0839 L 49.7028,74.1729 L 49.7034,74.2623 L 49.704,74.3517 L 49.7047,74.4412 L 49.7056,74.5303 L 49.7063,74.6196 L 49.7071,74.709 L 49.7077,74.7984 L 49.7086,74.8875 L 49.7092,74.977 L 49.7099,75.0664 L 49.7105,75.1558 L 47.8829,76.4025 L 47.8822,76.3113 L 47.8816,76.2201 L 47.8809,76.1288 L 47.8799,76.0379 L 47.8793,75.9467 L 47.8785,75.8555 L 47.8779,75.7
 642 L 47
 .8769,75.6733 L 47.8763,75.5821 L 47.8756,75.4909 L 47.875,75.3997 L 47.874,75.3088 L 47.8733,75.2175 L 47.8724,75.1266 L 47.8717,75.0354 L 47.8707,74.9445 L 47.6308,74.9195 L 47.3986,74.8903 L 47.174,74.8562 L 46.9572,74.8179 L 46.7481,74.7747 L 46.5466,74.7271 L 46.3528,74.6748 L 46.1664,74.618 L 45.988,74.5563 L 45.8171,74.4902 L 45.6538,74.4192 L 45.4981,74.3439 L 45.3502,74.2636 L 45.2096,74.1788 L 45.0768,74.0892 L 44.9514,73.995 L 44.8338,73.8958 L 44.7236,73.7921 L 44.6211,73.6835 L 44.526,73.5704 L 44.4386,73.4522 L 44.3586,73.3294 L 44.2861,73.2017 L 44.2209,73.0694 L 44.1636,72.9319 L 44.1135,72.7899 L 44.071,72.643 L 44.0358,72.4913 L 44.0083,72.3346 L 43.988,72.173 L 43.9752,72.0066 L 43.9697,71.8354 L 43.9702,71.7448 L 43.9731,71.6527 L 43.9784,71.559 L 43.9861,71.4636 L 43.9963,71.3665 L 44.0088,71.2679 L 44.0239,71.1677 L 44.0412,71.066 L 44.0611,70.9624 L 44.0833,70.8574 L 44.108,70.7507 L 44.1348,70.6426 L 44.1642,70.5327 L 44.1959,70.4214 L 44.2301,70.3086
  L 44.26
 65,70.1943 L 44.3055,70.0782 L 44.3466,69.9606 L 44.3902,69.8415 L 44.436,69.7209 L 44.4842,69.5987 L 44.5347,69.4752 L 44.5875,69.35 L 44.6424,69.2236 L 44.7,69.0953 L 44.7596,68.9658 L 44.8217,68.8348 L 44.8858,68.7025 L 44.9525,68.5684 L 45.0211,68.4332 L 45.0921,68.2963 L 45.1652,68.1582 L 45.439,67.6014 L 45.713,67.0441 L 54.0715,50.0642 L 54.739858,51.476036 L 47.0473,67.0764 L 46.9757,67.2116 L 46.9061,67.3458 L 46.8389,67.4784 L 46.7735,67.6098 L 46.7107,67.7393 L 46.6498,67.8677 L 46.5914,67.9947 L 46.535,68.1204 L 46.4811,68.2442 L 46.4294,68.3669 L 46.38,68.4879 L 46.3327,68.6078 L 46.2879,68.7259 L 46.2451,68.8427 L 46.2048,68.9579 L 46.1666,69.0716 L 46.131,69.1836 L 46.0974,69.2942 L 46.0663,69.4033 L 46.0376,69.511 L 46.0113,69.6169 L 45.987,69.7216 L 45.9653,69.8244 L 45.9458,69.9259 L 45.9288,70.0256 L 45.9141,70.1238 L 45.9018,70.2205 L 45.8918,70.3157 L 45.8843,70.4091 L 45.8791,70.501 L 45.8762,70.5912 L 45.8757,70.6799 L 45.8811,70.8477 L 45.8936,71.0109
  L 45.91
 35,71.1692 L 45.9405,71.3227 L 45.975,71.4714 L 46.0167,71.6154 L 46.0657,71.7545 L 46.122,71.8893 L 46.1858,72.0189 L 46.2568,72.1441 L 46.3353,72.2644 L 46.4209,72.3802 L 46.5141,72.491 L 46.6146,72.5975 L 46.7226,72.6991 L 46.8378,72.7964 L 46.9608,72.8886 L 47.0908,72.9765 L 47.2286,73.0596 L 47.3736,73.1383 L 47.5262,73.2121 L 47.6862,73.2817 L 47.8536,73.3465 L 48.0285,73.407 L 48.2112,73.4626 L 48.4011,73.5138 L 48.5985,73.5605 L 48.8033,73.6029 L 49.0159,73.6404 L 49.236,73.6737 L 49.4636,73.7024 L 49.6986,73.7269 L 49.6986,73.7269 z M 36.147,73.863 L 38.2095,72.667 L 38.4132,72.6812 L 38.6139,72.6863 L 38.8116,72.6819 L 39.0061,72.6685 L 39.1977,72.6457 L 39.3859,72.614 L 39.549468,72.547381 C 39.287636,72.794272 39.064915,73.032929 38.5956,73.3235 L 38.4279,73.4203 L 38.2568,73.5079 L 38.082,73.5865 L 37.9035,73.6559 L 37.7215,73.7163 L 37.5362,73.7671 L 37.3474,73.8089 L 37.1553,73.8413 L 36.9599,73.8645 L 36.7614,73.8783 L 36.5596,73.8826 L 36.3548,73.8775 L 36.1
 47,73.86
 3 z M 51.0368,21.3892 L 51.2553,21.9033 L 57.4258,36.3803 L 56.4356,38.43 L 49.2362,21.5385 L 49.1371,21.3131 L 49.0444,21.0894 L 48.9579,20.868 L 48.8779,20.6487 L 48.804,20.4317 L 48.7365,20.2168 L 48.6752,20.0043 L 48.6205,19.7942 L 48.5715,19.5867 L 48.5292,19.3817 L 48.4931,19.1792 L 48.4634,18.9792 L 48.4401,18.7822 L 48.4229,18.5877 L 48.4119,18.396 L 48.4072,18.2072 L 48.4092,18.0252 L 48.4193,17.8484 L 48.4376,17.6771 L 48.4639,17.5111 L 48.4984,17.3507 L 48.5411,17.1956 L 48.592,17.0461 L 48.6512,16.9018 L 48.7182,16.7633 L 48.7935,16.63 L 48.8768,16.5023 L 48.9685,16.3799 L 49.0679,16.2631 L 49.1756,16.1517 L 49.2914,16.0457 L 49.4153,15.9451 L 49.547,15.8502 L 49.6868,15.7607 L 49.8347,15.6767 L 49.9907,15.598 L 50.1545,15.525 L 50.3266,15.4572 L 50.5064,15.3951 L 50.6944,15.3383 L 50.8902,15.2872 L 51.0941,15.2414 L 51.3058,15.2013 L 51.5256,15.1665 L 51.7532,15.1373 L 51.9888,15.1134 L 52.2323,15.0951 L 52.4838,15.0823 L 52.4828,14.9839 L 52.4821,14.8855 L 52.4
 815,14.7
 872 L 52.4808,14.6888 L 52.4802,14.5904 L 52.4795,14.4921 L 52.4789,14.3937 L 52.4782,14.2953 L 52.4773,14.1969 L 52.4766,14.0986 L 52.476,14.0002 L 52.4753,13.9018 L 52.4747,13.8035 L 52.474,13.7051 L 52.4734,13.6067 L 52.4727,13.508 L 54.2086,13.5193 L 54.2093,13.6159 L 54.2099,13.7124 L 54.2104,13.8088 L 54.2111,13.9052 L 54.2117,14.0016 L 54.2124,14.098 L 54.213,14.1944 L 54.214,14.2908 L 54.2147,14.3872 L 54.2153,14.4836 L 54.2159,14.58 L 54.2165,14.6763 L 54.2172,14.7728 L 54.2178,14.8692 L 54.2185,14.9656 L 54.2194,15.062 L 53.9729,15.0746 L 53.7343,15.0925 L 53.5035,15.116 L 53.2804,15.1445 L 53.065,15.1787 L 52.8575,15.218 L 52.6577,15.2629 L 52.4658,15.3129 L 52.2816,15.3686 L 52.1053,15.4294 L 51.9367,15.4959 L 51.7762,15.5674 L 51.6233,15.6446 L 51.4784,15.7268 L 51.3414,15.8146 L 51.2123,15.9075 L 51.0909,16.0062 L 50.9774,16.11 L 50.8719,16.2193 L 50.7744,16.3337 L 50.6846,16.4536 L 50.603,16.5788 L 50.5292,16.7094 L 50.4635,16.8451 L 50.4055,16.9865 L 50.3556,
 17.1331 
 L 50.3137,17.2851 L 50.2799,17.4422 L 50.2542,17.6049 L 50.2362,17.7728 L 50.2264,17.9461 L 50.2243,18.1244 L 50.229,18.3095 L 50.2397,18.4973 L 50.2566,18.6879 L 50.2795,18.8811 L 50.3085,19.077 L 50.344,19.2754 L 50.3855,19.4764 L 50.4334,19.6797 L 50.4871,19.8856 L 50.547,20.0938 L 50.6132,20.3044 L 50.6856,20.5171 L 50.764,20.732 L 50.8488,20.9491 L 50.9396,21.1682 L 51.0368,21.3892 L 51.0368,21.3892 z"
+   id="path55"
+   sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
 cccccccc
 ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc"
+   style="fill: rgb(0, 0, 0); stroke: none; stroke-width: 0.0762;" />
+ </g><g
+   id="Ebene_x0020_1">
+  <metadata
+   id="CorelCorpID_0Corel-Layer" />
+  <metadata
+   id="metadata87">
+   <rdf:RDF>
+    <cc:Work
+   rdf:about="">
+     <dc:format>
+      image/svg+xml     </dc:format>
+     <dc:type
+   rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+     <dc:title>
+      x2go Logo     </dc:title>
+     <dc:date>
+      12.06.2007     </dc:date>
+     <dc:creator>
+      <cc:Agent>
+       <dc:title>
+        Heinz-M. Graesing       </dc:title>
+      </cc:Agent>
+     </dc:creator>
+     <dc:rights>
+      <cc:Agent>
+       <dc:title>
+        obviously-nice       </dc:title>
+      </cc:Agent>
+     </dc:rights>
+     <dc:publisher>
+      <cc:Agent>
+       <dc:title>
+        obviously-nice       </dc:title>
+      </cc:Agent>
+     </dc:publisher>
+     <dc:source>
+      http://www.x2go.org/artwork     </dc:source>
+     <dc:language>
+      DE     </dc:language>
+     <dc:subject>
+      <rdf:Bag>
+       <rdf:li>
+        Logo       </rdf:li>
+      </rdf:Bag>
+     </dc:subject>
+     <cc:license
+   rdf:resource="http://creativecommons.org/licenses/by-nd/3.0/" />
+    </cc:Work>
+    <cc:License
+   rdf:about="http://creativecommons.org/licenses/by-nd/3.0/">
+     <cc:permits
+   rdf:resource="http://creativecommons.org/ns#Reproduction" />
+     <cc:permits
+   rdf:resource="http://creativecommons.org/ns#Distribution" />
+     <cc:requires
+   rdf:resource="http://creativecommons.org/ns#Notice" />
+     <cc:requires
+   rdf:resource="http://creativecommons.org/ns#Attribution" />
+    </cc:License>
+   </rdf:RDF>
+  </metadata>
+  <sodipodi:namedview
+   inkscape:window-height="834"
+   inkscape:window-width="1295"
+   inkscape:pageshadow="2"
+   inkscape:pageopacity="0.0"
+   guidetolerance="10.0"
+   gridtolerance="10.0"
+   objecttolerance="10.0"
+   borderopacity="1.0"
+   bordercolor="#666666"
+   pagecolor="#ffffff"
+   id="base"
+   showgrid="true"
+   inkscape:object-nodes="true"
+   inkscape:grid-points="true"
+   inkscape:guide-points="true"
+   width="128px"
+   height="128px"
+   inkscape:zoom="3.9375"
+   inkscape:cx="64"
+   inkscape:cy="64"
+   inkscape:window-x="395"
+   inkscape:window-y="117"
+   inkscape:current-layer="svg2">
+   <inkscape:grid
+   id="GridFromPre046Settings"
+   type="xygrid"
+   originx="0px"
+   originy="0px"
+   spacingx="1px"
+   spacingy="1px"
+   color="#0000ff"
+   empcolor="#0000ff"
+   opacity="0.2"
+   empopacity="0.4"
+   empspacing="5" />
+  </sodipodi:namedview>
+  <g
+   id="_135140408">
+   <g
+   id="g4">
+    <path
+   id="path6"
+   class="fil0"
+   d="M 56.4356,38.43 C 59.2274,32.7584 62.0575,26.9919 64.9409,21.1546 C 65.5532,19.4258 65.8314,18.1924 65.829,17.5582 C 65.8252,16.5385 65.4858,15.7624 64.8722,15.349 C 64.2047,14.8873 63.0639,14.6841 61.4573,14.747 C 61.4548,14.2121 61.4522,13.6772 61.4498,13.1423 C 66.3017,12.9357 71.2532,12.7248 76.3195,12.5089 C 76.3202,13.0694 76.3209,13.6211 76.3215,14.1728 C 74.2408,14.2544 72.7575,14.7472 71.7269,15.6978 C 70.6968,16.6183 69.3043,19.0232 67.3913,22.906 C 64.2032,29.3799 61.0627,35.7249 57.9695,41.9684 C 59.9695,46.5821 61.9754,51.2459 63.9869,55.91 C 66.0141,60.6105 68.0547,65.3372 70.1161,70.0996 C 71.3761,72.7964 72.497,74.713 73.4571,75.8148 C 74.4316,76.8604 75.6011,77.5002 76.9206,77.6223 C 76.9211,78.1395 76.9218,78.6567 76.9223,79.174 C 71.006,78.6089 65.2176,78.0569 59.5801,77.5189 C 59.5774,77.0203 59.5748,76.5218 59.5721,76.0232 C 61.08,76.1622 62.1498,76.082 62.7963,75.716 C 63.4281,75.3988 63.7646,74.7644 63.7533,73.9111 C 63.75,73.1095 63.2758,71.639 
 62.4209,
 69.5039 C 59.6235,62.9675 56.8327,56.4818 54.0715,50.0642 C 51.0608,56.1928 48.0821,62.2228 45.1652,68.1582 C 44.3715,69.6405 43.9607,70.8799 43.9697,71.8354 C 43.9871,73.6892 45.2696,74.7046 47.8707,74.9445 C 47.8747,75.4305 47.8789,75.9165 47.8829,76.4025 C 43.911,76.0228 40.007,75.6502 36.1633,75.2831 C 36.1579,74.8098 36.1524,74.3364 36.147,73.863 C 37.2628,73.9662 38.2536,73.663 39.0749,72.9796 C 39.919,72.287 40.7807,71.0587 41.6063,69.1968 C 43.3816,65.5014 45.1679,61.7672 46.9877,58.0028 C 48.8264,54.1991 50.6911,50.339 52.5594,46.4381 C 50.8284,42.3579 49.0942,38.2576 47.3863,34.2046 C 45.6837,30.1642 43.9763,26.1211 42.2893,22.1313 C 41.2324,19.5642 40.2901,17.8729 39.3706,16.9811 C 38.4277,16.0942 37.1147,15.6849 35.424,15.7351 C 35.4181,15.2297 35.4123,14.7242 35.4066,14.2187 C 40.9549,13.9985 46.6335,13.7568 52.4727,13.508 C 52.4764,14.0328 52.4801,14.5575 52.4838,15.0823 C 49.7603,15.1892 48.3836,16.2343 48.4072,18.2072 C 48.4152,19.2061 48.6918,20.3296 49.2362
 ,21.5385
  C 51.6146,27.1313 54.017,32.756 56.4356,38.43 L 56.4356,38.43 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g8">
+    <path
+   id="path10"
+   class="fil0"
+   d="M 8.7887,15.7146 C 12.5976,15.4493 16.4523,15.1534 20.3992,14.8738 C 24.4001,14.5904 28.4927,14.2764 32.6622,13.9686 C 32.6686,14.4949 32.675,15.0132 32.6889,15.5236 C 28.5099,15.556 24.4222,15.5875 20.411,15.6181 C 16.4683,15.6482 12.6019,15.6853 8.7887,15.7146 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g12">
+    <path
+   id="path14"
+   class="fil0"
+   d="M 8.858,19.2982 C 12.6631,19.058 16.522,18.8138 20.4576,18.5722 C 24.4546,18.327 28.5436,18.0679 32.7169,17.8041 C 32.7212,18.1469 32.7254,18.4979 32.7297,18.8407 C 33.7237,18.8325 34.71,18.8164 35.7116,18.8 C 35.7803,18.7979 35.8492,18.7955 35.9257,18.793 C 35.9791,18.7914 36.0327,18.7896 36.0938,18.7877 C 36.1398,18.8021 36.2012,18.8162 36.2625,18.8303 C 36.316,18.8287 36.3696,18.827 36.4307,18.8248 C 36.4844,18.8392 36.5457,18.8534 36.607,18.8595 C 36.6454,18.8744 36.6914,18.8891 36.7298,18.9037 C 36.7682,18.9186 36.8067,18.9334 36.8525,18.94 C 36.891,18.955 36.9371,18.9697 36.983,18.9843 C 37.0139,18.9995 37.0446,19.0146 37.0677,19.0298 C 37.0908,19.0452 37.1216,19.0604 37.1522,19.0674 C 37.1753,19.0829 37.2061,19.098 37.2368,19.1132 C 37.26,19.1286 37.2907,19.1437 37.3214,19.167 C 37.3369,19.1827 37.3524,19.1982 37.3602,19.2058 C 37.3832,19.2213 37.414,19.2364 37.4448,19.2516 C 37.4449,19.2677 37.4451,19.2838 37.4452,19.292 C 37.4605,19.2914 37.4757,19.291 37.4911
 ,19.2906
  C 32.4524,19.2963 27.5049,19.3017 22.71,19.3067 C 17.9836,19.3116 13.3788,19.3009 8.858,19.2982 L 8.858,19.2982 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g16">
+    <path
+   id="path18"
+   class="fil0"
+   d="M 8.9354,22.9122 C 13.6223,22.6595 18.4243,22.3933 23.3257,22.121 C 28.3345,21.8428 33.4735,21.5411 38.7427,21.2485 C 38.7818,21.3283 38.8284,21.4079 38.8751,21.4795 C 38.9222,21.5993 38.9846,21.7191 39.047,21.8388 C 39.1018,21.9669 39.1566,22.087 39.2189,22.2068 C 39.2739,22.343 39.3364,22.4791 39.3989,22.6072 C 39.4538,22.7516 39.5087,22.888 39.5712,23.0242 C 39.5946,23.0724 39.6257,23.1202 39.6567,23.16 C 34.2106,23.1141 28.9163,23.0726 23.752,23.04 C 18.6939,23.0081 13.7651,22.9538 8.9354,22.9122 L 8.9354,22.9122 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g20">
+    <path
+   id="path22"
+   class="fil0"
+   d="M 9.004,26.4657 C 13.9153,26.2415 18.9492,26.0004 24.1054,25.7609 C 29.3843,25.5157 34.8008,25.2479 40.3703,24.9774 C 40.6443,25.6541 40.9336,26.3314 41.2302,27.0014 C 35.5147,26.9202 29.9433,26.8288 24.5167,26.7398 C 19.2191,26.6529 14.0507,26.5525 9.004,26.4657 L 9.004,26.4657 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g24">
+    <path
+   id="path26"
+   class="fil0"
+   d="M 9.0729,30.0419 C 14.2083,29.8503 19.4811,29.6459 24.8766,29.452 C 30.4097,29.2532 36.0957,29.0328 41.9346,28.8146 C 42.2234,29.504 42.5122,30.1942 42.8084,30.8852 C 36.8163,30.7397 30.9681,30.586 25.2874,30.4439 C 19.7509,30.3055 14.336,30.1778 9.0729,30.0419 L 9.0729,30.0419 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g28">
+    <path
+   id="path30"
+   class="fil0"
+   d="M 9.1345,33.6257 C 14.5008,33.4629 19.997,33.2883 25.646,33.1241 C 31.4328,32.956 37.4028,32.7745 43.518,32.5881 C 43.8221,33.3395 44.1336,34.0753 44.445,34.8204 C 38.1538,34.6051 32.0375,34.3918 26.0802,34.1995 C 20.2903,34.0126 14.6363,33.8145 9.1345,33.6257 L 9.1345,33.6257 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g32">
+    <path
+   id="path34"
+   class="fil0"
+   d="M 9.2029,37.1716 C 11.9786,37.122 14.7923,37.0525 17.6368,36.9976 C 20.5192,36.9418 23.4475,36.8657 26.4065,36.8082 C 29.4111,36.7499 32.4691,36.6705 35.5579,36.6105 C 38.6999,36.5495 41.8954,36.4712 45.1138,36.3958 C 45.4404,37.1769 45.7592,37.951 46.0855,38.726 C 42.7681,38.5965 39.4962,38.4486 36.2698,38.3188 C 33.0891,38.1909 29.9458,38.0566 26.8635,37.9284 C 23.819,37.8019 20.812,37.6733 17.8513,37.5461 C 14.9431,37.4212 12.0427,37.2973 9.2029,37.1716 L 9.2029,37.1716 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g36">
+    <path
+   id="path38"
+   class="fil0"
+   d="M 9.271,40.7025 C 12.1506,40.6782 15.0757,40.6344 18.0315,40.6056 C 21.0405,40.5763 24.0954,40.5388 27.1808,40.5044 C 30.3119,40.4696 33.4964,40.4223 36.7343,40.3904 C 40.0103,40.358 43.3395,40.3005 46.7147,40.2626 C 47.056,41.0576 47.3972,41.8538 47.7457,42.6512 C 44.2795,42.4817 40.8509,42.2983 37.4833,42.1338 C 34.1686,41.9719 30.8838,41.7997 27.6677,41.6387 C 24.4891,41.4797 21.3559,41.3191 18.2686,41.1644 C 15.2341,41.0125 12.2224,40.8619 9.271,40.7025 L 9.271,40.7025 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g40">
+    <path
+   id="path42"
+   class="fil0"
+   d="M 9.3389,44.2183 C 12.3297,44.2136 15.3735,44.2051 18.4481,44.2042 C 21.5684,44.2032 24.7417,44.1829 27.9609,44.1737 C 31.2181,44.1644 34.5441,44.1509 37.9002,44.1411 C 41.3252,44.1312 44.7958,44.1129 48.335,44.0985 C 48.6446,44.8241 48.9541,45.534 49.271,46.2533 C 49.2264,46.3677 49.1817,46.4737 49.1445,46.5801 C 45.5374,46.3684 41.9904,46.1644 38.4894,45.9629 C 35.0563,45.7653 31.669,45.5459 28.3414,45.3503 C 25.0526,45.157 21.8235,44.9789 18.6322,44.7873 C 15.4945,44.5989 12.3938,44.4052 9.3389,44.2183 L 9.3389,44.2183 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g44">
+    <path
+   id="path46"
+   class="fil0"
+   d="M 9.4073,47.7566 C 12.4103,47.7777 15.4511,47.7878 18.5379,47.8055 C 21.6701,47.8236 24.8482,47.8265 28.0795,47.8408 C 31.3488,47.8553 34.6793,47.8741 38.0475,47.8848 C 41.4691,47.8957 44.9592,47.8989 48.5026,47.8978 C 48.1072,48.7178 47.7193,49.52 47.3393,50.321 C 43.9174,50.0866 40.5406,49.8671 37.225,49.6437 C 33.9542,49.4231 30.714,49.2051 27.5493,48.9955 C 24.415,48.7879 21.3258,48.5719 18.2818,48.3666 C 15.2837,48.1644 12.3226,47.9647 9.4073,47.7566 L 9.4073,47.7566 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g48">
+    <path
+   id="path50"
+   class="fil0"
+   d="M 9.4751,51.2723 C 12.3314,51.3205 15.2483,51.3582 18.1881,51.396 C 21.1658,51.4342 24.197,51.4659 27.266,51.5092 C 30.3733,51.5531 33.5334,51.5937 36.7396,51.6428 C 39.9987,51.6928 43.3112,51.7192 46.6541,51.766 C 46.2968,52.515 45.9396,53.2708 45.5827,54.0173 C 42.3459,53.7789 39.1393,53.5235 35.9856,53.2878 C 32.8776,53.0555 29.807,52.8179 26.7888,52.5884 C 23.8019,52.3614 20.8592,52.1414 17.9622,51.9247 C 15.0959,51.7105 12.2665,51.492 9.4751,51.2723 L 9.4751,51.2723 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g52">
+    <path
+   id="path54"
+   class="fil0"
+   d="M 9.543,54.7881 C 15.0381,54.9049 20.6775,55.0251 26.4615,55.1556 C 32.4051,55.2898 38.5309,55.4038 44.8238,55.5288 C 44.4898,56.2642 44.1557,56.974 43.8218,57.6827 C 37.7251,57.1749 31.7788,56.6677 26.007,56.1827 C 20.3779,55.7097 14.8927,55.2485 9.543,54.7881 L 9.543,54.7881 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g56">
+    <path
+   id="path58"
+   class="fil0"
+   d="M 9.6114,58.3412 C 14.8367,58.5046 20.1988,58.6609 25.6896,58.8282 C 31.3249,58.9998 37.1193,59.1522 43.0657,59.3284 C 42.7318,59.9929 42.3979,60.6565 42.0717,61.3107 C 36.306,60.7894 30.6911,60.2729 25.2271,59.7783 C 19.8839,59.2947 14.6986,58.8089 9.6114,58.3412 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g60">
+    <path
+   id="path62"
+   class="fil0"
+   d="M 9.8812,72.3136 C 13.6329,72.5533 17.4457,72.7897 21.3253,73.0379 C 25.2818,73.2909 29.3202,73.5331 33.435,73.796 C 33.4411,74.2984 33.4473,74.8007 33.4534,75.295 C 29.3368,74.7731 25.2885,74.2642 21.3368,73.7666 C 17.4463,73.2767 13.6371,72.7893 9.8812,72.3136 L 9.8812,72.3136 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g64">
+    <path
+   id="path66"
+   class="fil0"
+   d="M 9.8143,68.8431 C 14.1801,69.0811 18.6374,69.3242 23.1847,69.5724 C 27.8387,69.8263 32.5977,70.0697 37.4633,70.3348 C 37.4486,70.3658 37.4339,70.3967 37.4265,70.4203 C 37.3965,70.434 37.3666,70.4475 37.3439,70.4538 C 37.3142,70.4834 37.2843,70.5131 37.262,70.5428 C 37.232,70.5564 37.2021,70.57 37.1795,70.5762 C 37.1647,70.6071 37.15,70.63 37.1353,70.6609 C 37.1053,70.6744 37.0752,70.6881 37.0527,70.6942 C 37.0378,70.7091 37.0229,70.7239 37.008,70.7387 C 36.9853,70.7362 36.9551,70.7337 36.9325,70.7318 C 36.9025,70.7454 36.8726,70.7589 36.8499,70.7651 C 36.8351,70.7799 36.8202,70.7948 36.8052,70.8096 C 36.7753,70.8231 36.7453,70.8366 36.7228,70.8508 C 36.7077,70.8496 36.6926,70.8483 36.685,70.8471 C 36.655,70.8607 36.6251,70.8742 36.6026,70.8804 C 36.5724,70.8779 36.5422,70.8753 36.5196,70.8734 C 36.5044,70.8721 36.4894,70.8709 36.4742,70.8696 C 36.4442,70.8832 36.4143,70.8967 36.3918,70.9109 C 36.3691,70.9084 36.3389,70.9059 36.3163,70.904 C 36.2861,70.9015 36.2559,70.
 899 36.2
 257,70.8964 C 35.2753,70.8313 34.3323,70.7662 33.3969,70.7021 C 33.4006,70.9972 33.4041,71.2842 33.4077,71.5793 C 29.28,71.1082 25.2349,70.6376 21.2802,70.177 C 17.3931,69.7242 13.566,69.2797 9.8143,68.8431 L 9.8143,68.8431 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g68">
+    <path
+   id="path70"
+   class="fil0"
+   d="M 9.7462,65.3199 C 14.4335,65.5452 19.2272,65.7764 24.1337,66.0124 C 29.1471,66.2535 34.2885,66.4923 39.5589,66.738 C 39.4114,67.0576 39.2562,67.369 39.1087,67.6888 C 39.0494,67.7972 38.9827,67.889 38.9308,67.9898 C 38.8942,68.0913 38.85,68.1927 38.8134,68.2948 C 38.7689,68.3719 38.7244,68.433 38.6874,68.5026 C 33.5818,67.945 28.5964,67.4008 23.7317,66.8696 C 18.9646,66.3489 14.3026,65.8248 9.7462,65.3199 L 9.7462,65.3199 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <g
+   id="g72">
+    <path
+   id="path74"
+   class="fil0"
+   d="M 9.6788,61.8268 C 14.6273,62.0229 19.7049,62.2052 24.8956,62.4069 C 30.2237,62.6138 35.6796,62.8171 41.2801,63.022 C 40.9842,63.6509 40.7036,64.2802 40.423,64.9 C 34.9878,64.3619 29.6732,63.8327 24.5011,63.3166 C 19.4505,62.8127 14.5041,62.3194 9.6788,61.8268 L 9.6788,61.8268 z"
+   style="fill: rgb(77, 77, 77);" />
+   </g>
+   <path
+   id="path78"
+   class="fil0"
+   d="M 40.1418,4.0695 C 45.627,3.7154 51.2964,3.3498 57.0886,2.9765 C 63.034,2.5933 69.1331,2.1997 75.4009,1.7957 C 78.8762,1.5718 81.7761,4.2897 81.7761,7.8138 C 81.7761,14.2869 81.7761,20.7157 81.7761,27.1176 C 81.7761,33.5108 81.7761,39.8775 81.7761,46.2087 C 81.7761,52.54 81.7761,58.8536 81.7761,65.1316 C 81.7761,71.383 81.7761,77.6259 81.7761,83.8509 C 81.7761,87.2246 78.9565,89.6056 75.5879,89.2109 C 69.4599,88.4947 63.4897,87.7964 57.6625,87.1151 C 51.9856,86.4513 46.4291,85.8018 41.038,85.1705 C 35.7296,84.5494 30.5564,83.9454 25.5262,83.3564 C 20.6013,82.7799 15.7816,82.2167 11.0747,81.6663 C 8.5709,81.3737 6.5391,78.8588 6.4811,76.0161 C 6.3735,70.7421 6.2656,65.453 6.1574,60.1491 C 6.049,54.8377 5.9397,49.4889 5.8304,44.1327 C 5.7211,38.7765 5.6114,33.3976 5.5013,28.004 C 5.391,22.5952 5.28,17.1642 5.1688,11.7106 C 5.1086,8.7631 7.0921,6.2003 9.6468,6.0353 C 14.4416,5.7267 19.3363,5.411 24.3535,5.0875 C 29.4782,4.7571 34.7409,4.4176 40.1418,4.0695 L 40.1418,4.069
 5 z M 41
 .0182,83.9783 C 46.3132,84.5829 51.7661,85.2053 57.3394,85.8417 C 63.0404,86.4926 68.8997,87.1624 74.9016,87.8479 C 77.8726,88.1876 80.3538,86.0429 80.3528,83.0675 C 80.3508,76.9667 80.3488,70.8569 80.3468,64.7208 C 80.3449,58.567 80.3427,52.3954 80.3408,46.1975 C 80.3388,39.9997 80.329,33.7664 80.327,27.5067 C 80.325,21.2295 80.3152,14.9343 80.3132,8.5953 C 80.3121,5.4963 77.7651,3.0927 74.7051,3.281 C 68.5697,3.6587 62.5803,4.0233 56.7744,4.3765 C 51.0995,4.7218 45.5313,5.0683 40.1553,5.3995 C 34.8483,5.7259 29.6716,6.0448 24.6329,6.355 C 19.7016,6.6585 14.8776,6.9558 10.1611,7.2456 C 7.891,7.3855 6.1014,9.6505 6.1539,12.2599 C 6.2616,17.6288 6.3692,22.9829 6.4763,28.3067 C 6.5827,33.608 6.6893,38.9171 6.7954,44.1884 C 6.9012,49.4522 7.0072,54.716 7.1124,59.9497 C 7.2172,65.1686 7.3221,70.38 7.4264,75.5688 C 7.4772,78.0958 9.3087,80.3632 11.5349,80.6172 C 16.1681,81.1464 20.922,81.6857 25.7651,82.2355 C 30.7144,82.7975 35.8061,83.3823 41.0182,83.9783 L 41.0182,83.9783 z"
+   style="fill: rgb(77, 77, 77);" />
+  </g>
+  
+ </g>
+<g
+   id="g3723"><path
+     id="path3313"
+     transform="scale(0.282222)"
+     d="M 270.4375,44.3125 C 252.48604,45.0775 234.94178,45.830454 217.75,46.5625 C 217.7585,48.457815 217.74114,50.354683 217.75,52.25 C 223.44268,52.027126 227.50984,52.739056 229.875,54.375 C 232.04917,55.839803 233.23653,58.605641 233.25,62.21875 C 233.2585,64.465915 232.26332,68.843079 230.09375,74.96875 C 219.87698,95.652096 209.86096,116.06002 199.96875,136.15625 C 191.39891,116.05153 182.89616,96.129507 174.46875,76.3125 C 172.53977,72.028996 171.55959,68.039407 171.53125,64.5 C 171.44763,57.50941 176.31855,53.81628 185.96875,53.4375 C 185.95564,51.577972 185.9506,49.734528 185.9375,47.875 C 165.24742,48.756575 145.12808,49.594762 125.46875,50.375 C 125.48895,52.166142 125.51034,53.959212 125.53125,55.75 C 131.52192,55.572126 136.15902,57.013692 139.5,60.15625 C 142.75807,63.316171 146.09882,69.310226 149.84375,78.40625 C 155.82131,92.543336 161.87342,106.87112 167.90625,121.1875 C 172.39627,131.84272 176.95007,142.60154 181.5,153.34375 L 207.40625,153.34375 C 206.74
 188,151.
 80903 206.07025,150.2505 205.40625,148.71875 C 216.36641,126.59611 227.48483,104.09526 238.78125,81.15625 C 245.5596,67.398297 250.50628,58.886616 254.15625,55.625 C 257.80798,52.256732 263.06494,50.507884 270.4375,50.21875 C 270.43537,48.263907 270.43997,46.298525 270.4375,44.3125 z"
+     style="fill: url(#linearGradient3720) rgb(0, 0, 0); fill-opacity: 1;" /><g
+     style="fill: url(#linearGradient3595) rgb(0, 0, 0); fill-opacity: 1;"
+     id="g3315">
+    <path
+   style="fill: url(#linearGradient3593) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3317"
+   class="fil0"
+   d="M 8.7887,15.7146 C 12.5976,15.4493 16.4523,15.1534 20.3992,14.8738 C 24.4001,14.5904 28.4927,14.2764 32.6622,13.9686 C 32.6686,14.4949 32.675,15.0132 32.6889,15.5236 C 28.5099,15.556 24.4222,15.5875 20.411,15.6181 C 16.4683,15.6482 12.6019,15.6853 8.7887,15.7146 z" />
+   </g><g
+     style="fill: url(#linearGradient3599) rgb(0, 0, 0); fill-opacity: 1;"
+     id="g3319">
+    <path
+   style="fill: url(#linearGradient3597) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3321"
+   class="fil0"
+   d="M 8.858,19.2982 C 12.6631,19.058 16.522,18.8138 20.4576,18.5722 C 24.4546,18.327 28.5436,18.0679 32.7169,17.8041 C 32.7212,18.1469 32.7254,18.4979 32.7297,18.8407 C 33.7237,18.8325 34.71,18.8164 35.7116,18.8 C 35.7803,18.7979 35.8492,18.7955 35.9257,18.793 C 35.9791,18.7914 36.0327,18.7896 36.0938,18.7877 C 36.1398,18.8021 36.2012,18.8162 36.2625,18.8303 C 36.316,18.8287 36.3696,18.827 36.4307,18.8248 C 36.4844,18.8392 36.5457,18.8534 36.607,18.8595 C 36.6454,18.8744 36.6914,18.8891 36.7298,18.9037 C 36.7682,18.9186 36.8067,18.9334 36.8525,18.94 C 36.891,18.955 36.9371,18.9697 36.983,18.9843 C 37.0139,18.9995 37.0446,19.0146 37.0677,19.0298 C 37.0908,19.0452 37.1216,19.0604 37.1522,19.0674 C 37.1753,19.0829 37.2061,19.098 37.2368,19.1132 C 37.26,19.1286 37.2907,19.1437 37.3214,19.167 C 37.3369,19.1827 37.3524,19.1982 37.3602,19.2058 C 37.3832,19.2213 37.414,19.2364 37.4448,19.2516 C 37.4449,19.2677 37.4451,19.2838 37.4452,19.292 C 37.4605,19.2914 37.4757,19.291 37.4911
 ,19.2906
  C 32.4524,19.2963 27.5049,19.3017 22.71,19.3067 C 17.9836,19.3116 13.3788,19.3009 8.858,19.2982 L 8.858,19.2982 z" />
+   </g><g
+     style="fill: url(#linearGradient3603) rgb(0, 0, 0); fill-opacity: 1;"
+     id="g3323">
+    <path
+   style="fill: url(#linearGradient3601) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3325"
+   class="fil0"
+   d="M 8.9354,22.9122 C 13.6223,22.6595 18.4243,22.3933 23.3257,22.121 C 28.3345,21.8428 33.4735,21.5411 38.7427,21.2485 C 38.7818,21.3283 38.8284,21.4079 38.8751,21.4795 C 38.9222,21.5993 38.9846,21.7191 39.047,21.8388 C 39.1018,21.9669 39.1566,22.087 39.2189,22.2068 C 39.2739,22.343 39.3364,22.4791 39.3989,22.6072 C 39.4538,22.7516 39.5087,22.888 39.5712,23.0242 C 39.5946,23.0724 39.6257,23.1202 39.6567,23.16 C 34.2106,23.1141 28.9163,23.0726 23.752,23.04 C 18.6939,23.0081 13.7651,22.9538 8.9354,22.9122 L 8.9354,22.9122 z" />
+   </g><g
+     style="fill: url(#linearGradient3607) rgb(0, 0, 0); fill-opacity: 1;"
+     id="g3327">
+    <path
+   style="fill: url(#linearGradient3605) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3329"
+   class="fil0"
+   d="M 9.004,26.4657 C 13.9153,26.2415 18.9492,26.0004 24.1054,25.7609 C 29.3843,25.5157 34.8008,25.2479 40.3703,24.9774 C 40.6443,25.6541 40.9336,26.3314 41.2302,27.0014 C 35.5147,26.9202 29.9433,26.8288 24.5167,26.7398 C 19.2191,26.6529 14.0507,26.5525 9.004,26.4657 L 9.004,26.4657 z" />
+   </g><g
+     style="fill: url(#linearGradient3611) rgb(0, 0, 0); fill-opacity: 1;"
+     id="g3331">
+    <path
+   style="fill: url(#linearGradient3609) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3333"
+   class="fil0"
+   d="M 9.0729,30.0419 C 14.2083,29.8503 19.4811,29.6459 24.8766,29.452 C 30.4097,29.2532 36.0957,29.0328 41.9346,28.8146 C 42.2234,29.504 42.5122,30.1942 42.8084,30.8852 C 36.8163,30.7397 30.9681,30.586 25.2874,30.4439 C 19.7509,30.3055 14.336,30.1778 9.0729,30.0419 L 9.0729,30.0419 z" />
+   </g><g
+     style="fill: url(#linearGradient3615) rgb(0, 0, 0); fill-opacity: 1;"
+     id="g3335">
+    <path
+   style="fill: url(#linearGradient3613) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3337"
+   class="fil0"
+   d="M 9.1345,33.6257 C 14.5008,33.4629 19.997,33.2883 25.646,33.1241 C 31.4328,32.956 37.4028,32.7745 43.518,32.5881 C 43.8221,33.3395 44.1336,34.0753 44.445,34.8204 C 38.1538,34.6051 32.0375,34.3918 26.0802,34.1995 C 20.2903,34.0126 14.6363,33.8145 9.1345,33.6257 L 9.1345,33.6257 z" />
+   </g><g
+     style="fill: url(#linearGradient3619) rgb(0, 0, 0); fill-opacity: 1;"
+     id="g3339">
+    <path
+   style="fill: url(#linearGradient3617) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3341"
+   class="fil0"
+   d="M 9.2029,37.1716 C 11.9786,37.122 14.7923,37.0525 17.6368,36.9976 C 20.5192,36.9418 23.4475,36.8657 26.4065,36.8082 C 29.4111,36.7499 32.4691,36.6705 35.5579,36.6105 C 38.6999,36.5495 41.8954,36.4712 45.1138,36.3958 C 45.4404,37.1769 45.7592,37.951 46.0855,38.726 C 42.7681,38.5965 39.4962,38.4486 36.2698,38.3188 C 33.0891,38.1909 29.9458,38.0566 26.8635,37.9284 C 23.819,37.8019 20.812,37.6733 17.8513,37.5461 C 14.9431,37.4212 12.0427,37.2973 9.2029,37.1716 L 9.2029,37.1716 z" />
+   </g><g
+     style="fill: url(#linearGradient3623) rgb(0, 0, 0); fill-opacity: 1;"
+     id="g3343">
+    <path
+   style="fill: url(#linearGradient3621) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3345"
+   class="fil0"
+   d="M 9.271,40.7025 C 12.1506,40.6782 15.0757,40.6344 18.0315,40.6056 C 21.0405,40.5763 24.0954,40.5388 27.1808,40.5044 C 30.3119,40.4696 33.4964,40.4223 36.7343,40.3904 C 40.0103,40.358 43.3395,40.3005 46.7147,40.2626 C 47.056,41.0576 47.3972,41.8538 47.7457,42.6512 C 44.2795,42.4817 40.8509,42.2983 37.4833,42.1338 C 34.1686,41.9719 30.8838,41.7997 27.6677,41.6387 C 24.4891,41.4797 21.3559,41.3191 18.2686,41.1644 C 15.2341,41.0125 12.2224,40.8619 9.271,40.7025 L 9.271,40.7025 z" />
+   </g><path
+     id="path3383"
+     transform="scale(0.282222)"
+     d="M 268.3125,6.3125 C 267.93192,6.3171642 267.54106,6.3502079 267.15625,6.375 C 244.94751,7.806496 223.34763,9.1734544 202.28125,10.53125 C 181.75771,11.853967 161.68574,13.151565 142.25,14.40625 C 123.11295,15.639675 104.43963,16.860541 86.28125,18.03125 C 68.50377,19.17751 51.176947,20.281536 34.1875,21.375 C 25.135413,21.959646 18.099193,31.056103 18.3125,41.5 C 18.706516,60.823779 19.109172,80.053713 19.5,99.21875 C 19.869428,117.31637 20.226864,135.36362 20.59375,153.34375 L 24.03125,153.34375 C 23.676634,135.72073 23.292935,118.02179 22.9375,100.3125 C 22.558012,81.448642 22.194115,62.461161 21.8125,43.4375 C 21.626476,34.191595 27.956337,26.183209 36,25.6875 C 52.712008,24.66065 69.808139,23.606645 87.28125,22.53125 C 105.13491,21.432116 123.47691,20.281536 142.28125,19.125 C 161.33007,17.951457 181.04834,16.723504 201.15625,15.5 C 221.72834,14.248504 242.94791,12.963307 264.6875,11.625 C 275.53002,10.957795 284.55859,19.488041 284.5625,30.46875 C 284.56959,52.9
 29773 28
 4.61791,75.226704 284.625,97.46875 C 284.63098,116.18414 284.67537,134.78093 284.6875,153.34375 L 289.75,153.34375 C 289.75,134.32005 289.74999,115.2714 289.75,96.09375 C 289.75,73.409853 289.74999,50.62368 289.75,27.6875 C 289.75,15.590749 280.1105,6.1679092 268.3125,6.3125 z"
+     style="fill: url(#linearGradient3666) rgb(0, 0, 0); fill-opacity: 1;" /></g><g
+   id="g4001"
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"><path
+     sodipodi:nodetypes="cccc"
+     id="rect3296"
+     d="M 33.38491,70.707314 L 34.790051,70.798579 L 33.401665,71.586967 L 33.38491,70.707314 z"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1; stroke: none; stroke-width: 1; stroke-linecap: butt; stroke-linejoin: round; stroke-miterlimit: 4; stroke-dashoffset: 0pt; stroke-opacity: 1;" /><path
+     id="path3844"
+     transform="scale(0.282222)"
+     d="M 181.5,153.34375 C 183.08243,157.0798 184.63603,160.80058 186.21875,164.53125 C 179.59879,178.35334 173.01508,192.05357 166.5,205.53125 C 160.05189,218.86968 153.72794,232.09356 147.4375,245.1875 C 144.51215,251.78478 141.45965,256.13965 138.46875,258.59375 C 135.55863,261.01525 132.04737,262.08441 128.09375,261.71875 C 128.11288,263.39615 128.10586,265.07296 128.125,266.75 C 141.74441,268.05075 155.58259,269.37334 169.65625,270.71875 C 169.64208,268.9967 169.63917,267.28456 169.625,265.5625 C 160.4085,264.71246 155.87416,261.09983 155.8125,254.53125 C 155.78061,251.14562 157.21893,246.75224 160.03125,241.5 C 170.36672,220.46906 180.92591,199.12176 191.59375,177.40625 C 201.37753,200.14578 211.27545,223.12077 221.1875,246.28125 C 224.21667,253.84656 225.89455,259.0347 225.90625,261.875 C 225.94629,264.8985 224.73866,267.15732 222.5,268.28125 C 220.20925,269.5781 216.4367,269.86753 211.09375,269.375 C 211.10332,271.14169 211.11543,272.92079 211.125,274.6875 C 231.100
 39,276.5
 938 251.59923,278.52894 272.5625,280.53125 C 272.56073,278.6983 272.56426,276.86385 272.5625,275.03125 C 267.88711,274.59861 263.7342,272.3299 260.28125,268.625 C 256.87932,264.72098 252.90207,257.93058 248.4375,248.375 C 241.13333,231.50035 233.90174,214.74907 226.71875,198.09375 C 220.25921,183.11589 213.83241,168.18851 207.40625,153.34375 L 181.5,153.34375 z"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;" /><g
+     id="g3878"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3880"
+   class="fil0"
+   d="M 9.3389,44.2183 C 12.3297,44.2136 15.3735,44.2051 18.4481,44.2042 C 21.5684,44.2032 24.7417,44.1829 27.9609,44.1737 C 31.2181,44.1644 34.5441,44.1509 37.9002,44.1411 C 41.3252,44.1312 44.7958,44.1129 48.335,44.0985 C 48.6446,44.8241 48.9541,45.534 49.271,46.2533 C 49.2264,46.3677 49.1817,46.4737 49.1445,46.5801 C 45.5374,46.3684 41.9904,46.1644 38.4894,45.9629 C 35.0563,45.7653 31.669,45.5459 28.3414,45.3503 C 25.0526,45.157 21.8235,44.9789 18.6322,44.7873 C 15.4945,44.5989 12.3938,44.4052 9.3389,44.2183 L 9.3389,44.2183 z" />
+   </g><g
+     id="g3882"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3884"
+   class="fil0"
+   d="M 9.4073,47.7566 C 12.4103,47.7777 15.4511,47.7878 18.5379,47.8055 C 21.6701,47.8236 24.8482,47.8265 28.0795,47.8408 C 31.3488,47.8553 34.6793,47.8741 38.0475,47.8848 C 41.4691,47.8957 44.9592,47.8989 48.5026,47.8978 C 48.1072,48.7178 47.7193,49.52 47.3393,50.321 C 43.9174,50.0866 40.5406,49.8671 37.225,49.6437 C 33.9542,49.4231 30.714,49.2051 27.5493,48.9955 C 24.415,48.7879 21.3258,48.5719 18.2818,48.3666 C 15.2837,48.1644 12.3226,47.9647 9.4073,47.7566 L 9.4073,47.7566 z" />
+   </g><g
+     id="g3886"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4116) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3888"
+   class="fil0"
+   d="M 9.4751,51.2723 C 12.3314,51.3205 15.2483,51.3582 18.1881,51.396 C 21.1658,51.4342 24.197,51.4659 27.266,51.5092 C 30.3733,51.5531 33.5334,51.5937 36.7396,51.6428 C 39.9987,51.6928 43.3112,51.7192 46.6541,51.766 C 46.2968,52.515 45.9396,53.2708 45.5827,54.0173 C 42.3459,53.7789 39.1393,53.5235 35.9856,53.2878 C 32.8776,53.0555 29.807,52.8179 26.7888,52.5884 C 23.8019,52.3614 20.8592,52.1414 17.9622,51.9247 C 15.0959,51.7105 12.2665,51.492 9.4751,51.2723 L 9.4751,51.2723 z" />
+   </g><g
+     id="g3890"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3892"
+   class="fil0"
+   d="M 9.543,54.7881 C 15.0381,54.9049 20.6775,55.0251 26.4615,55.1556 C 32.4051,55.2898 38.5309,55.4038 44.8238,55.5288 C 44.4898,56.2642 44.1557,56.974 43.8218,57.6827 C 37.7251,57.1749 31.7788,56.6677 26.007,56.1827 C 20.3779,55.7097 14.8927,55.2485 9.543,54.7881 L 9.543,54.7881 z" />
+   </g><g
+     id="g3894"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3896"
+   class="fil0"
+   d="M 9.6114,58.3412 C 14.8367,58.5046 20.1988,58.6609 25.6896,58.8282 C 31.3249,58.9998 37.1193,59.1522 43.0657,59.3284 C 42.7318,59.9929 42.3979,60.6565 42.0717,61.3107 C 36.306,60.7894 30.6911,60.2729 25.2271,59.7783 C 19.8839,59.2947 14.6986,58.8089 9.6114,58.3412 z" />
+   </g><g
+     id="g3898"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3900"
+   class="fil0"
+   d="M 9.8812,72.3136 C 13.6329,72.5533 17.4457,72.7897 21.3253,73.0379 C 25.2818,73.2909 29.3202,73.5331 33.435,73.796 C 33.4411,74.2984 33.4473,74.8007 33.4534,75.295 C 29.3368,74.7731 25.2885,74.2642 21.3368,73.7666 C 17.4463,73.2767 13.6371,72.7893 9.8812,72.3136 L 9.8812,72.3136 z" />
+   </g><g
+     id="g3902"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3904"
+   class="fil0"
+   d="M 9.8143,68.8431 C 14.1801,69.0811 18.6374,69.3242 23.1847,69.5724 C 27.8387,69.8263 32.5977,70.0697 37.4633,70.3348 C 37.4486,70.3658 37.4339,70.3967 37.4265,70.4203 C 37.3965,70.434 37.3666,70.4475 37.3439,70.4538 C 37.3142,70.4834 37.2843,70.5131 37.262,70.5428 C 37.232,70.5564 37.2021,70.57 37.1795,70.5762 C 37.1647,70.6071 37.15,70.63 37.1353,70.6609 C 37.1053,70.6744 37.0752,70.6881 37.0527,70.6942 C 37.0378,70.7091 37.0229,70.7239 37.008,70.7387 C 36.9853,70.7362 36.9551,70.7337 36.9325,70.7318 C 36.9025,70.7454 36.8726,70.7589 36.8499,70.7651 C 36.8351,70.7799 36.8202,70.7948 36.8052,70.8096 C 36.7753,70.8231 36.7453,70.8366 36.7228,70.8508 C 36.7077,70.8496 36.6926,70.8483 36.685,70.8471 C 36.655,70.8607 36.6251,70.8742 36.6026,70.8804 C 36.5724,70.8779 36.5422,70.8753 36.5196,70.8734 C 36.5044,70.8721 36.4894,70.8709 36.4742,70.8696 C 36.4442,70.8832 36.4143,70.8967 36.3918,70.9109 C 36.3691,70.9084 36.3389,70.9059 36.3163,70.904 C 36.2861,70.9015 36.2559,70.
 899 36.2
 257,70.8964 C 35.2753,70.8313 34.3323,70.7662 33.3969,70.7021 C 33.4006,70.9972 33.4041,71.2842 33.4077,71.5793 C 29.28,71.1082 25.2349,70.6376 21.2802,70.177 C 17.3931,69.7242 13.566,69.2797 9.8143,68.8431 L 9.8143,68.8431 z" />
+   </g><g
+     id="g3906"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3908"
+   class="fil0"
+   d="M 9.7462,65.3199 C 14.4335,65.5452 19.2272,65.7764 24.1337,66.0124 C 29.1471,66.2535 34.2885,66.4923 39.5589,66.738 C 39.4114,67.0576 39.2562,67.369 39.1087,67.6888 C 39.0494,67.7972 38.9827,67.889 38.9308,67.9898 C 38.8942,68.0913 38.85,68.1927 38.8134,68.2948 C 38.7689,68.3719 38.7244,68.433 38.6874,68.5026 C 33.5818,67.945 28.5964,67.4008 23.7317,66.8696 C 18.9646,66.3489 14.3026,65.8248 9.7462,65.3199 L 9.7462,65.3199 z" />
+   </g><g
+     id="g3910"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;">
+    <path
+   style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;"
+   id="path3912"
+   class="fil0"
+   d="M 9.6788,61.8268 C 14.6273,62.0229 19.7049,62.2052 24.8956,62.4069 C 30.2237,62.6138 35.6796,62.8171 41.2801,63.022 C 40.9842,63.6509 40.7036,64.2802 40.423,64.9 C 34.9878,64.3619 29.6732,63.8327 24.5011,63.3166 C 19.4505,62.8127 14.5041,62.3194 9.6788,61.8268 L 9.6788,61.8268 z" />
+   </g><path
+     id="path3914"
+     transform="scale(0.282222)"
+     d="M 20.59375,153.34375 C 20.614297,154.35073 20.63571,155.36847 20.65625,156.375 C 21.043533,175.35366 21.428406,194.30508 21.8125,213.125 C 22.195886,231.91835 22.58749,250.65634 22.96875,269.34375 C 23.174262,279.41631 30.378268,288.33823 39.25,289.375 C 55.927992,291.32524 72.987065,293.30102 90.4375,295.34375 C 108.26104,297.43076 126.59696,299.58049 145.40625,301.78125 C 164.50857,304.01814 184.19749,306.33546 204.3125,308.6875 C 224.96006,311.10156 246.13036,313.55602 267.84375,316.09375 C 279.77973,317.49229 289.74999,309.07904 289.75,297.125 C 289.75,275.06791 289.74999,252.93187 289.75,230.78125 C 289.75,208.53637 289.74999,186.15249 289.75,163.71875 C 289.75,160.27703 289.75,156.79128 289.75,153.34375 L 284.6875,153.34375 C 284.68974,156.78015 284.68639,160.25711 284.6875,163.6875 C 284.69423,185.64856 284.68076,207.5077 284.6875,229.3125 C 284.69459,251.05459 284.71168,272.72675 284.71875,294.34375 C 284.72229,304.88651 275.93343,312.4849 265.40625,311.28125
  C 244.1
 3968,308.85231 223.35665,306.46258 203.15625,304.15625 C 183.40834,301.90129 164.10557,299.70477 145.34375,297.5625 C 126.87568,295.45069 108.81814,293.36635 91.28125,291.375 C 74.12066,289.42689 57.29185,287.53137 40.875,285.65625 C 32.98689,284.75625 26.492499,276.70394 26.3125,267.75 C 25.942933,249.36449 25.558838,230.89841 25.1875,212.40625 C 24.814744,193.86164 24.468633,175.21375 24.09375,156.5625 C 24.072238,155.49374 24.052773,154.41336 24.03125,153.34375 L 20.59375,153.34375 z"
+     style="fill: url(#linearGradient4030) rgb(0, 0, 0); fill-opacity: 1;" /></g></svg>
\ No newline at end of file
diff --git a/icons/PyHoca/scalable/x2go-logo-ubuntu.svg b/icons/PyHoca/scalable/x2go-logo-ubuntu.svg
new file mode 100644
index 0000000..04c15f4
--- /dev/null
+++ b/icons/PyHoca/scalable/x2go-logo-ubuntu.svg
@@ -0,0 +1,358 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   width="128"
+   height="128"
+   sodipodi:docname="x2go-logo-ubuntu.svg"
+   sodipodi:docbase="/Users/h1/Documents/Projekte/x2go/x2go"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0"
+   inkscape:export-filename="/home/h1/Desktop/x2go-logo.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <metadata
+     id="metadata87">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs85">
+    <linearGradient
+       id="linearGradient3453">
+      <stop
+         style="stop-color:#2b0000;stop-opacity:1;"
+         offset="0"
+         id="stop3455" />
+      <stop
+         id="stop3461"
+         offset="0.5"
+         style="stop-color:#950000;stop-opacity:1;" />
+      <stop
+         style="stop-color:#ffe400;stop-opacity:1;"
+         offset="1"
+         id="stop3457" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 300 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="800 : 300 : 1"
+       inkscape:persp3d-origin="400 : 200 : 1"
+       id="perspective2637" />
+    <linearGradient
+       id="linearGradient4665">
+      <stop
+         style="stop-color:#162d50;stop-opacity:1;"
+         offset="0"
+         id="stop4667" />
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="1"
+         id="stop4669" />
+    </linearGradient>
+    <filter
+       inkscape:collect="always"
+       x="-0.20268817"
+       width="1.4053763"
+       y="-0.4560484"
+       height="1.9120969"
+       id="filter3580">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="15.201613"
+         id="feGaussianBlur3582" />
+    </filter>
+    <filter
+       inkscape:collect="always"
+       id="filter4659">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.82806857"
+         id="feGaussianBlur4661" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4665"
+       id="linearGradient4671"
+       x1="400"
+       y1="100"
+       x2="400"
+       y2="0"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1,1.1)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3453"
+       id="linearGradient3459"
+       x1="0"
+       y1="3"
+       x2="0"
+       y2="128"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     inkscape:window-height="816"
+     inkscape:window-width="1503"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10000"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="true"
+     inkscape:object-nodes="true"
+     inkscape:grid-points="true"
+     inkscape:guide-points="true"
+     width="800px"
+     height="600px"
+     inkscape:zoom="4.625"
+     inkscape:cx="37.664865"
+     inkscape:cy="66.782471"
+     inkscape:window-x="0"
+     inkscape:window-y="22"
+     inkscape:current-layer="svg2"
+     units="mm"
+     showguides="true"
+     inkscape:guide-bbox="true">
+    <sodipodi:guide
+       orientation="vertical"
+       position="100"
+       id="guide2393" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="700"
+       id="guide2395" />
+    <inkscape:grid
+       id="GridFromPre046Settings"
+       type="xygrid"
+       originx="0px"
+       originy="0px"
+       spacingx="1px"
+       spacingy="1px"
+       color="#0000ff"
+       empcolor="#0000ff"
+       opacity="0.2"
+       empopacity="0.4"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       dotted="true" />
+  </sodipodi:namedview>
+  <rect
+     style="fill:url(#linearGradient3459);fill-opacity:1;opacity:0.5"
+     id="rect2681"
+     width="128"
+     height="128"
+     x="0"
+     y="-7.1054274e-15"
+     ry="10.162162" />
+  <path
+     sodipodi:type="arc"
+     style="opacity:0.11693546;fill:#ffffff;fill-opacity:1;stroke:none;stroke-opacity:1;filter:url(#filter3580)"
+     id="path2397"
+     sodipodi:cx="410"
+     sodipodi:cy="150"
+     sodipodi:rx="90"
+     sodipodi:ry="40"
+     d="M 500,150 A 90,40 0 1 1 320,150 A 90,40 0 1 1 500,150 z"
+     transform="matrix(0.888889,0,0,0.75,-224.4445,38.25)" />
+  <g
+     style="fill:#ffffff"
+     id="g4"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 90,977.626 L 103.32,951.85 C 104.256,949.33 104.688,947.53 104.688,946.594 C 104.688,945.082 104.184,943.93 103.248,943.282 C 102.24,942.562 100.512,942.202 98.064,942.202 L 98.064,939.826 L 120.168,939.826 L 120.168,942.202 C 117.144,942.202 114.984,942.85 113.472,944.146 C 111.96,945.442 109.872,948.898 106.992,954.514 L 92.376,982.954 L 110.808,1024.498 C 112.68,1028.386 114.336,1031.122 115.776,1032.634 C 117.216,1034.074 118.944,1034.866 120.888,1034.866 L 120.888,1037.17 L 94.536,1037.17 L 94.536,1034.866 C 96.912,1034.866 98.568,1034.578 99.576,1033.93 C 100.584,1033.354 101.088,1032.346 101.088,1031.05 C 101.088,1029.826 100.368,1027.666 99.072,1024.498 L 86.112,995.482 L 71.28,1024.498 C 69.912,1026.946 69.192,1028.962 69.192,1030.474 C 69.192,1033.426 71.352,1034.866 75.672,1034.866 L 75.672,1037.17 L 55.728,1037.17 L 55.728,1034.866 C 57.672,1034.866 59.4,1034.218 60.84,1032.994 C 62.28,1031.77 63.792,1029.682 65.232,1026.586 L 83.736,990.01 L 67.248,9
 52.498 C
  65.52,948.466 63.936,945.802 62.424,944.362 C 60.84,942.922 58.608,942.202 55.728,942.202 L 55.728,939.826 L 84.024,939.826 L 84.024,942.202 C 79.632,942.202 77.4,943.714 77.4,946.738 C 77.4,948.25 77.832,949.978 78.696,951.85 L 90,977.626 z"
+       id="path6" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g8"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,940.474 L 50.976,939.25 L 50.976,941.698 L 6.984,940.474 z"
+       id="path10" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g12"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,946.45 L 50.976,945.298 L 50.976,946.954 L 56.16,947.026 L 56.52,947.026 L 56.808,947.026 L 57.096,947.098 L 57.384,947.098 L 57.672,947.17 L 57.888,947.242 L 58.104,947.314 L 58.32,947.386 L 58.464,947.458 L 58.608,947.53 L 58.752,947.602 L 58.896,947.674 L 58.968,947.746 L 59.112,947.818 L 59.112,947.89 L 59.184,947.89 L 6.984,946.45 z"
+       id="path14" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g16"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,952.498 L 61.272,950.986 L 61.488,951.346 L 61.776,951.922 L 62.064,952.498 L 62.352,953.146 L 62.64,953.794 L 62.784,954.01 L 6.984,952.498 z"
+       id="path18" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g20"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,958.474 L 63.936,956.89 L 65.376,960.058 L 6.984,958.474 z"
+       id="path22" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g24"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,964.45 L 66.528,962.866 L 67.968,966.106 L 6.984,964.45 z"
+       id="path26" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g28"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,970.498 L 69.12,968.77 L 70.632,972.226 L 6.984,970.498 z"
+       id="path30" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g32"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,976.474 L 71.712,974.674 L 73.296,978.274 L 6.984,976.474 z"
+       id="path34" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g36"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,982.45 L 74.304,980.65 L 75.96,984.322 L 6.984,982.45 z"
+       id="path38" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g40"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,988.426 L 76.896,986.554 L 78.408,989.866 L 78.192,990.37 L 6.984,988.426 z"
+       id="path42" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g44"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,994.402 L 77.112,992.458 L 75.168,996.274 L 6.984,994.402 z"
+       id="path46" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g48"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1000.378 L 74.016,998.578 L 72.216,1002.178 L 6.984,1000.378 z"
+       id="path50" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g52"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1006.354 L 70.92,1004.626 L 69.192,1008.082 L 6.984,1006.354 z"
+       id="path54" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g56"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1012.402 L 67.896,1010.746 L 66.168,1013.986 L 6.984,1012.402 z"
+       id="path58" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g60"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1036.378 L 50.976,1035.154 L 50.976,1037.602 L 6.984,1036.378 z"
+       id="path62" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g64"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1030.402 L 58.104,1028.962 L 58.032,1029.106 L 57.888,1029.178 L 57.744,1029.322 L 57.6,1029.394 L 57.528,1029.538 L 57.384,1029.61 L 57.312,1029.682 L 57.168,1029.682 L 57.024,1029.754 L 56.952,1029.826 L 56.808,1029.898 L 56.736,1029.898 L 56.592,1029.97 L 56.448,1029.97 L 56.376,1029.97 L 56.232,1030.042 L 56.088,1030.042 L 55.944,1030.042 L 50.976,1030.114 L 50.976,1031.554 L 6.984,1030.402 z"
+       id="path66" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g68"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1024.354 L 61.776,1022.914 L 60.984,1024.498 L 60.696,1025.002 L 60.48,1025.506 L 60.264,1025.866 L 6.984,1024.354 z"
+       id="path70" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g72"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1018.378 L 64.8,1016.794 L 63.288,1019.89 L 6.984,1018.378 z"
+       id="path74" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g76"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 63.936,924.49 L 118.872,924.49 C 123.84,924.49 127.872,928.522 127.872,933.49 L 127.872,1043.362 C 127.872,1048.33 123.84,1052.362 118.872,1052.362 L 63.936,1052.362 L 63.936,1050.418 L 117.864,1050.418 C 122.256,1050.418 125.856,1046.818 125.856,1042.426 L 125.856,934.498 C 125.856,930.106 122.256,926.506 117.864,926.506 L 63.936,926.506 L 63.936,924.49 z"
+       id="path78" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g80"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 9,924.49 L 63.936,924.49 L 63.936,926.506 L 9.936,926.506 C 5.544,926.506 1.944,930.106 1.944,934.498 L 1.944,1042.426 C 1.944,1046.818 5.544,1050.418 9.936,1050.418 L 63.936,1050.418 L 63.936,1052.362 L 9,1052.362 C 4.032,1052.362 0,1048.33 0,1043.362 L 0,933.49 C 0,928.522 4.032,924.49 9,924.49 z"
+       id="path82" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/x2go-logo-white-bg.svg b/icons/PyHoca/scalable/x2go-logo-white-bg.svg
new file mode 100644
index 0000000..f1e4dd6
--- /dev/null
+++ b/icons/PyHoca/scalable/x2go-logo-white-bg.svg
@@ -0,0 +1,361 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.47 r22583"
+   width="128"
+   height="128"
+   sodipodi:docname="x2go-logo-white-bg.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0"
+   inkscape:export-filename=""
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <metadata
+     id="metadata87">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs85">
+    <linearGradient
+       id="linearGradient3453">
+      <stop
+         style="stop-color:#2b0000;stop-opacity:1;"
+         offset="0"
+         id="stop3455" />
+      <stop
+         id="stop3461"
+         offset="0.5"
+         style="stop-color:#950000;stop-opacity:1;" />
+      <stop
+         style="stop-color:#ffe400;stop-opacity:1;"
+         offset="1"
+         id="stop3457" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 300 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="800 : 300 : 1"
+       inkscape:persp3d-origin="400 : 200 : 1"
+       id="perspective2637" />
+    <linearGradient
+       id="linearGradient4665">
+      <stop
+         style="stop-color:#162d50;stop-opacity:1;"
+         offset="0"
+         id="stop4667" />
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="1"
+         id="stop4669" />
+    </linearGradient>
+    <filter
+       inkscape:collect="always"
+       x="-0.20268817"
+       width="1.4053763"
+       y="-0.4560484"
+       height="1.9120969"
+       id="filter3580">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="15.201613"
+         id="feGaussianBlur3582" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4665"
+       id="linearGradient4671"
+       x1="400"
+       y1="100"
+       x2="400"
+       y2="0"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1,1.1)" />
+    <inkscape:perspective
+       id="perspective46"
+       inkscape:persp3d-origin="64 : 42.666667 : 1"
+       inkscape:vp_z="128 : 64 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 64 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <filter
+       inkscape:collect="always"
+       id="filter4218">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="2.0924925"
+         id="feGaussianBlur4220" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     inkscape:window-height="709"
+     inkscape:window-width="1366"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10000"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="true"
+     inkscape:object-nodes="true"
+     inkscape:grid-points="true"
+     inkscape:guide-points="true"
+     width="800px"
+     height="600px"
+     inkscape:zoom="3.640625"
+     inkscape:cx="64"
+     inkscape:cy="64"
+     inkscape:window-x="-4"
+     inkscape:window-y="-3"
+     inkscape:current-layer="svg2"
+     units="mm"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     inkscape:window-maximized="1">
+    <sodipodi:guide
+       orientation="vertical"
+       position="100"
+       id="guide2393" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="700"
+       id="guide2395" />
+    <inkscape:grid
+       id="GridFromPre046Settings"
+       type="xygrid"
+       originx="0px"
+       originy="0px"
+       spacingx="1px"
+       spacingy="1px"
+       color="#0000ff"
+       empcolor="#0000ff"
+       opacity="0.2"
+       empopacity="0.4"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       dotted="true" />
+  </sodipodi:namedview>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;opacity:1"
+     id="rect2681"
+     width="128"
+     height="128"
+     x="0"
+     y="-7.1054274e-15"
+     ry="10.162162" />
+  <g
+     id="g3246"
+     style="fill:#4d4d4d;fill-opacity:1">
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g4"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path6"
+         d="M 90,977.626 L 103.32,951.85 C 104.256,949.33 104.688,947.53 104.688,946.594 C 104.688,945.082 104.184,943.93 103.248,943.282 C 102.24,942.562 100.512,942.202 98.064,942.202 L 98.064,939.826 L 120.168,939.826 L 120.168,942.202 C 117.144,942.202 114.984,942.85 113.472,944.146 C 111.96,945.442 109.872,948.898 106.992,954.514 L 92.376,982.954 L 110.808,1024.498 C 112.68,1028.386 114.336,1031.122 115.776,1032.634 C 117.216,1034.074 118.944,1034.866 120.888,1034.866 L 120.888,1037.17 L 94.536,1037.17 L 94.536,1034.866 C 96.912,1034.866 98.568,1034.578 99.576,1033.93 C 100.584,1033.354 101.088,1032.346 101.088,1031.05 C 101.088,1029.826 100.368,1027.666 99.072,1024.498 L 86.112,995.482 L 71.28,1024.498 C 69.912,1026.946 69.192,1028.962 69.192,1030.474 C 69.192,1033.426 71.352,1034.866 75.672,1034.866 L 75.672,1037.17 L 55.728,1037.17 L 55.728,1034.866 C 57.672,1034.866 59.4,1034.218 60.84,1032.994 C 62.28,1031.77 63.792,1029.682 65.232,1026.586 L 83.736,990.01 L 67.248
 ,952.498
  C 65.52,948.466 63.936,945.802 62.424,944.362 C 60.84,942.922 58.608,942.202 55.728,942.202 L 55.728,939.826 L 84.024,939.826 L 84.024,942.202 C 79.632,942.202 77.4,943.714 77.4,946.738 C 77.4,948.25 77.832,949.978 78.696,951.85 L 90,977.626 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g8"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path10"
+         d="M 6.984,940.474 L 50.976,939.25 L 50.976,941.698 L 6.984,940.474 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g12"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path14"
+         d="M 6.984,946.45 L 50.976,945.298 L 50.976,946.954 L 56.16,947.026 L 56.52,947.026 L 56.808,947.026 L 57.096,947.098 L 57.384,947.098 L 57.672,947.17 L 57.888,947.242 L 58.104,947.314 L 58.32,947.386 L 58.464,947.458 L 58.608,947.53 L 58.752,947.602 L 58.896,947.674 L 58.968,947.746 L 59.112,947.818 L 59.112,947.89 L 59.184,947.89 L 6.984,946.45 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g16"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path18"
+         d="M 6.984,952.498 L 61.272,950.986 L 61.488,951.346 L 61.776,951.922 L 62.064,952.498 L 62.352,953.146 L 62.64,953.794 L 62.784,954.01 L 6.984,952.498 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g20"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path22"
+         d="M 6.984,958.474 L 63.936,956.89 L 65.376,960.058 L 6.984,958.474 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g24"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path26"
+         d="M 6.984,964.45 L 66.528,962.866 L 67.968,966.106 L 6.984,964.45 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g28"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path30"
+         d="M 6.984,970.498 L 69.12,968.77 L 70.632,972.226 L 6.984,970.498 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g32"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path34"
+         d="M 6.984,976.474 L 71.712,974.674 L 73.296,978.274 L 6.984,976.474 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g36"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path38"
+         d="M 6.984,982.45 L 74.304,980.65 L 75.96,984.322 L 6.984,982.45 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g40"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path42"
+         d="M 6.984,988.426 L 76.896,986.554 L 78.408,989.866 L 78.192,990.37 L 6.984,988.426 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g44"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path46"
+         d="M 6.984,994.402 L 77.112,992.458 L 75.168,996.274 L 6.984,994.402 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g48"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path50"
+         d="M 6.984,1000.378 L 74.016,998.578 L 72.216,1002.178 L 6.984,1000.378 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g52"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path54"
+         d="M 6.984,1006.354 L 70.92,1004.626 L 69.192,1008.082 L 6.984,1006.354 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g56"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path58"
+         d="M 6.984,1012.402 L 67.896,1010.746 L 66.168,1013.986 L 6.984,1012.402 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g60"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path62"
+         d="M 6.984,1036.378 L 50.976,1035.154 L 50.976,1037.602 L 6.984,1036.378 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g64"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path66"
+         d="M 6.984,1030.402 L 58.104,1028.962 L 58.032,1029.106 L 57.888,1029.178 L 57.744,1029.322 L 57.6,1029.394 L 57.528,1029.538 L 57.384,1029.61 L 57.312,1029.682 L 57.168,1029.682 L 57.024,1029.754 L 56.952,1029.826 L 56.808,1029.898 L 56.736,1029.898 L 56.592,1029.97 L 56.448,1029.97 L 56.376,1029.97 L 56.232,1030.042 L 56.088,1030.042 L 55.944,1030.042 L 50.976,1030.114 L 50.976,1031.554 L 6.984,1030.402 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g68"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path70"
+         d="M 6.984,1024.354 L 61.776,1022.914 L 60.984,1024.498 L 60.696,1025.002 L 60.48,1025.506 L 60.264,1025.866 L 6.984,1024.354 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g72"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path74"
+         d="M 6.984,1018.378 L 64.8,1016.794 L 63.288,1019.89 L 6.984,1018.378 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+  </g>
+  <path
+     sodipodi:type="arc"
+     style="opacity:0.11693546;fill:#ffffff;fill-opacity:1;stroke:none;stroke-opacity:1;filter:url(#filter3580)"
+     id="path2397"
+     sodipodi:cx="410"
+     sodipodi:cy="150"
+     sodipodi:rx="90"
+     sodipodi:ry="40"
+     d="M 500,150 A 90,40 0 1 1 320,150 A 90,40 0 1 1 500,150 z"
+     transform="matrix(0.888889,0,0,0.75,-224.4445,38.25)" />
+  <g
+     style="fill:#4d4d4d;fill-opacity:1"
+     id="g76"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#4d4d4d;fill-opacity:1"
+       d="M 63.936,924.49 L 118.872,924.49 C 123.84,924.49 127.872,928.522 127.872,933.49 L 127.872,1043.362 C 127.872,1048.33 123.84,1052.362 118.872,1052.362 L 63.936,1052.362 L 63.936,1050.418 L 117.864,1050.418 C 122.256,1050.418 125.856,1046.818 125.856,1042.426 L 125.856,934.498 C 125.856,930.106 122.256,926.506 117.864,926.506 L 63.936,926.506 L 63.936,924.49 z"
+       id="path78" />
+  </g>
+  <g
+     style="fill:#4d4d4d;fill-opacity:1"
+     id="g80"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#4d4d4d;fill-opacity:1"
+       d="M 9,924.49 L 63.936,924.49 L 63.936,926.506 L 9.936,926.506 C 5.544,926.506 1.944,930.106 1.944,934.498 L 1.944,1042.426 C 1.944,1046.818 5.544,1050.418 9.936,1050.418 L 63.936,1050.418 L 63.936,1052.362 L 9,1052.362 C 4.032,1052.362 0,1048.33 0,1043.362 L 0,933.49 C 0,928.522 4.032,924.49 9,924.49 z"
+       id="path82" />
+  </g>
+</svg>
diff --git a/icons/PyHoca/scalable/x2go.svg b/icons/PyHoca/scalable/x2go.svg
new file mode 100644
index 0000000..f1e4dd6
--- /dev/null
+++ b/icons/PyHoca/scalable/x2go.svg
@@ -0,0 +1,361 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.47 r22583"
+   width="128"
+   height="128"
+   sodipodi:docname="x2go-logo-white-bg.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0"
+   inkscape:export-filename=""
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <metadata
+     id="metadata87">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs85">
+    <linearGradient
+       id="linearGradient3453">
+      <stop
+         style="stop-color:#2b0000;stop-opacity:1;"
+         offset="0"
+         id="stop3455" />
+      <stop
+         id="stop3461"
+         offset="0.5"
+         style="stop-color:#950000;stop-opacity:1;" />
+      <stop
+         style="stop-color:#ffe400;stop-opacity:1;"
+         offset="1"
+         id="stop3457" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 300 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="800 : 300 : 1"
+       inkscape:persp3d-origin="400 : 200 : 1"
+       id="perspective2637" />
+    <linearGradient
+       id="linearGradient4665">
+      <stop
+         style="stop-color:#162d50;stop-opacity:1;"
+         offset="0"
+         id="stop4667" />
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="1"
+         id="stop4669" />
+    </linearGradient>
+    <filter
+       inkscape:collect="always"
+       x="-0.20268817"
+       width="1.4053763"
+       y="-0.4560484"
+       height="1.9120969"
+       id="filter3580">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="15.201613"
+         id="feGaussianBlur3582" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4665"
+       id="linearGradient4671"
+       x1="400"
+       y1="100"
+       x2="400"
+       y2="0"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1,1.1)" />
+    <inkscape:perspective
+       id="perspective46"
+       inkscape:persp3d-origin="64 : 42.666667 : 1"
+       inkscape:vp_z="128 : 64 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 64 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <filter
+       inkscape:collect="always"
+       id="filter4218">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="2.0924925"
+         id="feGaussianBlur4220" />
+    </filter>
+  </defs>
+  <sodipodi:namedview
+     inkscape:window-height="709"
+     inkscape:window-width="1366"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10000"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="true"
+     inkscape:object-nodes="true"
+     inkscape:grid-points="true"
+     inkscape:guide-points="true"
+     width="800px"
+     height="600px"
+     inkscape:zoom="3.640625"
+     inkscape:cx="64"
+     inkscape:cy="64"
+     inkscape:window-x="-4"
+     inkscape:window-y="-3"
+     inkscape:current-layer="svg2"
+     units="mm"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     inkscape:window-maximized="1">
+    <sodipodi:guide
+       orientation="vertical"
+       position="100"
+       id="guide2393" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="700"
+       id="guide2395" />
+    <inkscape:grid
+       id="GridFromPre046Settings"
+       type="xygrid"
+       originx="0px"
+       originy="0px"
+       spacingx="1px"
+       spacingy="1px"
+       color="#0000ff"
+       empcolor="#0000ff"
+       opacity="0.2"
+       empopacity="0.4"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       dotted="true" />
+  </sodipodi:namedview>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;opacity:1"
+     id="rect2681"
+     width="128"
+     height="128"
+     x="0"
+     y="-7.1054274e-15"
+     ry="10.162162" />
+  <g
+     id="g3246"
+     style="fill:#4d4d4d;fill-opacity:1">
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g4"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path6"
+         d="M 90,977.626 L 103.32,951.85 C 104.256,949.33 104.688,947.53 104.688,946.594 C 104.688,945.082 104.184,943.93 103.248,943.282 C 102.24,942.562 100.512,942.202 98.064,942.202 L 98.064,939.826 L 120.168,939.826 L 120.168,942.202 C 117.144,942.202 114.984,942.85 113.472,944.146 C 111.96,945.442 109.872,948.898 106.992,954.514 L 92.376,982.954 L 110.808,1024.498 C 112.68,1028.386 114.336,1031.122 115.776,1032.634 C 117.216,1034.074 118.944,1034.866 120.888,1034.866 L 120.888,1037.17 L 94.536,1037.17 L 94.536,1034.866 C 96.912,1034.866 98.568,1034.578 99.576,1033.93 C 100.584,1033.354 101.088,1032.346 101.088,1031.05 C 101.088,1029.826 100.368,1027.666 99.072,1024.498 L 86.112,995.482 L 71.28,1024.498 C 69.912,1026.946 69.192,1028.962 69.192,1030.474 C 69.192,1033.426 71.352,1034.866 75.672,1034.866 L 75.672,1037.17 L 55.728,1037.17 L 55.728,1034.866 C 57.672,1034.866 59.4,1034.218 60.84,1032.994 C 62.28,1031.77 63.792,1029.682 65.232,1026.586 L 83.736,990.01 L 67.248
 ,952.498
  C 65.52,948.466 63.936,945.802 62.424,944.362 C 60.84,942.922 58.608,942.202 55.728,942.202 L 55.728,939.826 L 84.024,939.826 L 84.024,942.202 C 79.632,942.202 77.4,943.714 77.4,946.738 C 77.4,948.25 77.832,949.978 78.696,951.85 L 90,977.626 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g8"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path10"
+         d="M 6.984,940.474 L 50.976,939.25 L 50.976,941.698 L 6.984,940.474 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g12"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path14"
+         d="M 6.984,946.45 L 50.976,945.298 L 50.976,946.954 L 56.16,947.026 L 56.52,947.026 L 56.808,947.026 L 57.096,947.098 L 57.384,947.098 L 57.672,947.17 L 57.888,947.242 L 58.104,947.314 L 58.32,947.386 L 58.464,947.458 L 58.608,947.53 L 58.752,947.602 L 58.896,947.674 L 58.968,947.746 L 59.112,947.818 L 59.112,947.89 L 59.184,947.89 L 6.984,946.45 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g16"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path18"
+         d="M 6.984,952.498 L 61.272,950.986 L 61.488,951.346 L 61.776,951.922 L 62.064,952.498 L 62.352,953.146 L 62.64,953.794 L 62.784,954.01 L 6.984,952.498 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g20"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path22"
+         d="M 6.984,958.474 L 63.936,956.89 L 65.376,960.058 L 6.984,958.474 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g24"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path26"
+         d="M 6.984,964.45 L 66.528,962.866 L 67.968,966.106 L 6.984,964.45 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g28"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path30"
+         d="M 6.984,970.498 L 69.12,968.77 L 70.632,972.226 L 6.984,970.498 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g32"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path34"
+         d="M 6.984,976.474 L 71.712,974.674 L 73.296,978.274 L 6.984,976.474 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g36"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path38"
+         d="M 6.984,982.45 L 74.304,980.65 L 75.96,984.322 L 6.984,982.45 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g40"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path42"
+         d="M 6.984,988.426 L 76.896,986.554 L 78.408,989.866 L 78.192,990.37 L 6.984,988.426 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g44"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path46"
+         d="M 6.984,994.402 L 77.112,992.458 L 75.168,996.274 L 6.984,994.402 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g48"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path50"
+         d="M 6.984,1000.378 L 74.016,998.578 L 72.216,1002.178 L 6.984,1000.378 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g52"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path54"
+         d="M 6.984,1006.354 L 70.92,1004.626 L 69.192,1008.082 L 6.984,1006.354 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g56"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path58"
+         d="M 6.984,1012.402 L 67.896,1010.746 L 66.168,1013.986 L 6.984,1012.402 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g60"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path62"
+         d="M 6.984,1036.378 L 50.976,1035.154 L 50.976,1037.602 L 6.984,1036.378 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g64"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path66"
+         d="M 6.984,1030.402 L 58.104,1028.962 L 58.032,1029.106 L 57.888,1029.178 L 57.744,1029.322 L 57.6,1029.394 L 57.528,1029.538 L 57.384,1029.61 L 57.312,1029.682 L 57.168,1029.682 L 57.024,1029.754 L 56.952,1029.826 L 56.808,1029.898 L 56.736,1029.898 L 56.592,1029.97 L 56.448,1029.97 L 56.376,1029.97 L 56.232,1030.042 L 56.088,1030.042 L 55.944,1030.042 L 50.976,1030.114 L 50.976,1031.554 L 6.984,1030.402 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g68"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path70"
+         d="M 6.984,1024.354 L 61.776,1022.914 L 60.984,1024.498 L 60.696,1025.002 L 60.48,1025.506 L 60.264,1025.866 L 6.984,1024.354 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+    <g
+       transform="matrix(1.001001,0,0,1.001001,0,-925.41541)"
+       id="g72"
+       style="fill:#4d4d4d;fill-opacity:1">
+      <path
+         id="path74"
+         d="M 6.984,1018.378 L 64.8,1016.794 L 63.288,1019.89 L 6.984,1018.378 z"
+         style="fill:#4d4d4d;fill-opacity:1" />
+    </g>
+  </g>
+  <path
+     sodipodi:type="arc"
+     style="opacity:0.11693546;fill:#ffffff;fill-opacity:1;stroke:none;stroke-opacity:1;filter:url(#filter3580)"
+     id="path2397"
+     sodipodi:cx="410"
+     sodipodi:cy="150"
+     sodipodi:rx="90"
+     sodipodi:ry="40"
+     d="M 500,150 A 90,40 0 1 1 320,150 A 90,40 0 1 1 500,150 z"
+     transform="matrix(0.888889,0,0,0.75,-224.4445,38.25)" />
+  <g
+     style="fill:#4d4d4d;fill-opacity:1"
+     id="g76"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#4d4d4d;fill-opacity:1"
+       d="M 63.936,924.49 L 118.872,924.49 C 123.84,924.49 127.872,928.522 127.872,933.49 L 127.872,1043.362 C 127.872,1048.33 123.84,1052.362 118.872,1052.362 L 63.936,1052.362 L 63.936,1050.418 L 117.864,1050.418 C 122.256,1050.418 125.856,1046.818 125.856,1042.426 L 125.856,934.498 C 125.856,930.106 122.256,926.506 117.864,926.506 L 63.936,926.506 L 63.936,924.49 z"
+       id="path78" />
+  </g>
+  <g
+     style="fill:#4d4d4d;fill-opacity:1"
+     id="g80"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#4d4d4d;fill-opacity:1"
+       d="M 9,924.49 L 63.936,924.49 L 63.936,926.506 L 9.936,926.506 C 5.544,926.506 1.944,930.106 1.944,934.498 L 1.944,1042.426 C 1.944,1046.818 5.544,1050.418 9.936,1050.418 L 63.936,1050.418 L 63.936,1052.362 L 9,1052.362 C 4.032,1052.362 0,1048.33 0,1043.362 L 0,933.49 C 0,928.522 4.032,924.49 9,924.49 z"
+       id="path82" />
+  </g>
+</svg>
diff --git a/img/pyhoca-about-logo.png b/img/pyhoca-about-logo.png
new file mode 100644
index 0000000..42899a9
Binary files /dev/null and b/img/pyhoca-about-logo.png differ
diff --git a/img/pyhoca-splash.png b/img/pyhoca-splash.png
new file mode 100644
index 0000000..5f4f46e
Binary files /dev/null and b/img/pyhoca-splash.png differ
diff --git a/locale b/locale
new file mode 120000
index 0000000..7822838
--- /dev/null
+++ b/locale
@@ -0,0 +1 @@
+build/mo
\ No newline at end of file
diff --git a/man/pyhoca-gui.1 b/man/pyhoca-gui.1
new file mode 100644
index 0000000..b60bf95
--- /dev/null
+++ b/man/pyhoca-gui.1
@@ -0,0 +1,159 @@
+'\" -*- coding: utf-8 -*-
+.if \n(.g .ds T< \\FC
+.if \n(.g .ds T> \\F[\n[.fam]]
+.de URL
+\\$2 \(la\\$1\(ra\\$3
+..
+.if \n(.g .mso www.tmac
+.TH pyhoca-gui 1 "31 Dec 2010" "Version 0.0.21" "X2go Application"
+.SH NAME
+pyhoca-gui \- graphical X2go client applet written in Python
+.SH SYNOPSIS
+'nh
+.fi
+.ad l
+\fBpyhoca-gui\fR \kx
+.if (\nx>(\n(.l/2)) .nr x (\n(.l/5)
+'in \n(.iu+\nxu
+[
+\fIoptions\fR
+]
+'in \n(.iu-\nxu
+.ad b
+'hy
+.SH DESCRIPTION
+\fBpyhoca-gui\fR is a cross-platform (Windows, MacOS X, Linux) graphical X2go client applet that
+docks to your desktop's system tray.
+.PP
+From your desktop's system tray you can start/resume/share pre-configured X2go sessions. You can manage the
+pre-configured session profiles in the X2go profile manager and also configure the basic setup of
+\fBpyhoca-gui\fR.
+.PP
+\fBpyhoca-gui\fR uses the same set of config files (\fBsettings\fR, \fBprinting\fR and \fBsessions\fR in ~/.x2goclient) as the original 
+X2go Client application (by Heinz-M. Graesing and Oleksandr Schneydr) does.
+.PP
+On Windows systems \fBpyhoca-gui\fR uses the same set of Windows registry keys and values as the original X2go Client application.
+.PP
+See the included README and TODO for further information on \fBpyhoca-gui\fR.
+.SH COMMON OPTIONS
+\fBpyhoca-gui\fR accepts the following common options:
+.TP
+\*(T<\fB\-h, \-\-help\fR\*(T> 
+Display a help with all available command line options and exit.
+.TP 
+\*(T<\fB\-V, \-\-version\fR\*(T> 
+Output version information and exit.
+.TP 
+\*(T<\fB\-d, \-\-quiet\fR\*(T> 
+No output to stdout at all! Use this option on Windows!!!
+.TP 
+\*(T<\fB\-d, \-\-debug\fR\*(T> 
+Enable debugging output.
+.TP 
+\*(T<\fB\-\-libdebug\fR\*(T> 
+Enable debugging code of the unterlying Python X2go module.
+.TP 
+\*(T<\fB\-\-libdebug-sftpxfer\fR\*(T> 
+Enable debugging code of Python X2go's sFTP server code (very verbose, and it may even reveal promiscuous data).
+.SH GUI OPTIONS
+.TP 
+\*(T<\fB\-u, \-\-username\fR \fI<USERNAME>\fR\*(T> 
+Username for the session (default: currently logged in user).
+.TP 
+\*(T<\fB\-P, \-\-session-profile\fR\*(T>
+The name of the session profile to be used to make the connection. You can actually pass a komma-separated list of
+session profile names to this option.
+.TP 
+\*(T<\fB\-\-show-profile-metatypes\fR\*(T>
+Show descriptive meta information on session profiles in menus (NOTE: this makes menus appear a bit more sluggish, use it mostly for debugging).
+.TP 
+\*(T<\fB\-\-auto-connect\fR\*(T>
+Connect sessions via SSH public key authentication on application startup, if possible.
+.TP 
+\*(T<\fB\-\-start-on-connect\fR\*(T>
+Start a session directly after authentication (only if no suspended sessions are available).
+.TP 
+\*(T<\fB\-\-resume-on-connect, \-\-resume-newest-on-connect\fR\*(T>
+After authentication directly auto-resume the newest available running/suspended session.
+.TP 
+\*(T<\fB\-\-resume-oldest-on-connect\fR\*(T>
+After authentication directly auto-resume the oldest available running/suspended session.
+.TP 
+\*(T<\fB\-\-resume-all-on-connect\fR\*(T>
+After authentication directly auto-resume all available running/suspended session.
+.TP 
+\*(T<\fB\-\-disable-options\fR\*(T>
+Grey-out the ,,Options'' menu item and thus disable the client configuration window.
+.TP 
+\*(T<\fB\-\-disable-profilemanager\fR\*(T>
+Grey-out the profile manager menu items and thus disable all profile management functionalities.B
+.TP 
+\*(T<\fB\-\-display <hostname>:<screennumber>\fR\*(T>
+Set the DISPLAY environment variable to <hostname>:<screennumber>.
+.SH BACKEND OPTIONS
+\fBpyhoca-gui\fR supports transparent use of different data backends. For configuration three backends are common:
+FILE, GCONF (Linux only) and WINREG (Windows only). The default backend currently is the FILE backend 
+on all platforms.
+.PP
+For client-server communication the only yet implemented backend is the STDOUT backend (as X2go server commands
+print their execution results to /dev/stdout. (But other communication backends might be possible in the future...).
+.PP
+In the same way we are focusing on a successor of the current NX3 agent/proxy tool. A change in the proxy backend
+will also be implemented as a backend.
+.TP 
+\*(T<\fB\-\-backend-controlsession <CONTROLSESSION_BACKEND>\fR\*(T>
+Force usage of a certain CONTROLSESSION_BACKEND (do not use this unless you know exactly what you are doing).
+.TP 
+\*(T<\fB\-\-backend-terminalsession <TERMINALSESSION_BACKEND>\fR\*(T>
+Force usage of a certain TERMINALSESSION_BACKEND (do not use this unless you know exactly what you are doing).
+.TP 
+\*(T<\fB\-\-backend-serversessioninfo <SERVERSESSIONINFO_BACKEND>\fR\*(T>
+Force usage of a certain SERVERSESSIONINFO_BACKEND (do not use this unless you know exactly what you are doing).
+.TP 
+\*(T<\fB\-\-backend-serversessionlist <SERVERSESSIONLIST_BACKEND>\fR\*(T>
+Force usage of a certain SERVERSESSIONLIST_BACKEND (do not use this unless you know exactly what you are doing).
+.TP 
+\*(T<\fB\-\-backend-proxy <PROXY_BACKEND>\fR\*(T>
+Force usage of a certain PROXY_BACKEND (do not use this unless you know exactly what you are doing).
+.TP 
+\*(T<\fB\-\-backend-sessionprofiles <SESSIONPROFILES_BACKEND>\fR\*(T>
+Use given backend for accessing session profiles, available backends on Linux: FILES, GCONF; on Windows: FILES, WINREG.
+.TP 
+\*(T<\fB\-\-backend-clientsettings <CLIENTSETTINGS_BACKEND>\fR\*(T>
+Use given backend for accessing the client settings configuration, available backends on Linux: FILES, GCONF; on Windows: FILES, WINREG.
+.TP 
+\*(T<\fB\-\-backend-clientprinting <CLIENTPRINTING_BACKEND>\fR\*(T>
+Use given backend for accessing the client printing configuration, available backends on Linux: FILES, GCONF; on Windows: FILES, WINREG.
+.SH PORTABLE OPTIONS
+.TP 
+\*(T<\fB\-\-client-rootdir <CLIENT_ROOTDIR>\fR\*(T>
+Define an alternative location where to find plain text config files (default: <HOME>/.x2goclient).
+This option will set ,,--backend-profiles FILE'', ,,--backend-clientsettings FILE'' and ,,--backend-clientprinting FILE''
+.TP 
+\*(T<\fB\-\-sessions-rootdir <SESSIONS_ROOTDIR>\fR\*(T>
+Define an alternative location for session runtime files (default: <HOME>/.x2go).
+.TP 
+\*(T<\fB\-\-ssh-rootdir <SSH_ROOTDIR>\fR\*(T>
+Define an alternative location for user SSH files (default: <HOME>/.ssh).
+.SH WINDOWS OPTIONS
+There are some options that are only available on Windows:
+.TP 
+\*(T<\fB\-\-start-xserver\fR\*(T>
+Start an  XServer (if available) before starting \fBpyhoca-gui\fR. The application will detect the best 
+suitable XServer automatically, if more than one XServer is installed on your system (currently known:
+Xming, Cygwin-X).
+.TP
+\*(T<\fB\-\-preferred-xserver <XSERVER_NAME>\fR\*(T>
+Start either of the currently supported XServers: Xming, Cygwin-X -- make sure your preferred XServer is installed 
+on your system.
+.TP 
+\*(T<\fB\-\-start-pulseaudio\fR\*(T>
+Start the PulseAudio server before starting \fBpyhoca-gui\fR. This option is needed to get X2go audio working. However, it is
+not enabled by default.
+.TP 
+\*(T<\fB\-\-lang [en|de|nl|es]\fR\*(T>
+Select the GUI language.
+.SH "SEE ALSO"
+\fB/usr/share/doc/pyhoca-gui\fR
+.SH AUTHOR
+This manual has been written by Dick Kniep <dick.kniep at lindix.nl> and Mike Gabriel <m.gabriel at das-netzwerkteam.de>.
diff --git a/pixmaps/pyhoca-gui.ico b/pixmaps/pyhoca-gui.ico
new file mode 100644
index 0000000..ffe7520
Binary files /dev/null and b/pixmaps/pyhoca-gui.ico differ
diff --git a/pixmaps/pyhoca_x2go-logo-ubuntu.ico b/pixmaps/pyhoca_x2go-logo-ubuntu.ico
new file mode 100644
index 0000000..209495c
Binary files /dev/null and b/pixmaps/pyhoca_x2go-logo-ubuntu.ico differ
diff --git a/pixmaps/pyhoca_x2go-logo-ubuntu.svg b/pixmaps/pyhoca_x2go-logo-ubuntu.svg
new file mode 100644
index 0000000..04c15f4
--- /dev/null
+++ b/pixmaps/pyhoca_x2go-logo-ubuntu.svg
@@ -0,0 +1,358 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   width="128"
+   height="128"
+   sodipodi:docname="x2go-logo-ubuntu.svg"
+   sodipodi:docbase="/Users/h1/Documents/Projekte/x2go/x2go"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0"
+   inkscape:export-filename="/home/h1/Desktop/x2go-logo.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <metadata
+     id="metadata87">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs85">
+    <linearGradient
+       id="linearGradient3453">
+      <stop
+         style="stop-color:#2b0000;stop-opacity:1;"
+         offset="0"
+         id="stop3455" />
+      <stop
+         id="stop3461"
+         offset="0.5"
+         style="stop-color:#950000;stop-opacity:1;" />
+      <stop
+         style="stop-color:#ffe400;stop-opacity:1;"
+         offset="1"
+         id="stop3457" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 300 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="800 : 300 : 1"
+       inkscape:persp3d-origin="400 : 200 : 1"
+       id="perspective2637" />
+    <linearGradient
+       id="linearGradient4665">
+      <stop
+         style="stop-color:#162d50;stop-opacity:1;"
+         offset="0"
+         id="stop4667" />
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="1"
+         id="stop4669" />
+    </linearGradient>
+    <filter
+       inkscape:collect="always"
+       x="-0.20268817"
+       width="1.4053763"
+       y="-0.4560484"
+       height="1.9120969"
+       id="filter3580">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="15.201613"
+         id="feGaussianBlur3582" />
+    </filter>
+    <filter
+       inkscape:collect="always"
+       id="filter4659">
+      <feGaussianBlur
+         inkscape:collect="always"
+         stdDeviation="0.82806857"
+         id="feGaussianBlur4661" />
+    </filter>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4665"
+       id="linearGradient4671"
+       x1="400"
+       y1="100"
+       x2="400"
+       y2="0"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1,1.1)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3453"
+       id="linearGradient3459"
+       x1="0"
+       y1="3"
+       x2="0"
+       y2="128"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     inkscape:window-height="816"
+     inkscape:window-width="1503"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10000"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="true"
+     inkscape:object-nodes="true"
+     inkscape:grid-points="true"
+     inkscape:guide-points="true"
+     width="800px"
+     height="600px"
+     inkscape:zoom="4.625"
+     inkscape:cx="37.664865"
+     inkscape:cy="66.782471"
+     inkscape:window-x="0"
+     inkscape:window-y="22"
+     inkscape:current-layer="svg2"
+     units="mm"
+     showguides="true"
+     inkscape:guide-bbox="true">
+    <sodipodi:guide
+       orientation="vertical"
+       position="100"
+       id="guide2393" />
+    <sodipodi:guide
+       orientation="vertical"
+       position="700"
+       id="guide2395" />
+    <inkscape:grid
+       id="GridFromPre046Settings"
+       type="xygrid"
+       originx="0px"
+       originy="0px"
+       spacingx="1px"
+       spacingy="1px"
+       color="#0000ff"
+       empcolor="#0000ff"
+       opacity="0.2"
+       empopacity="0.4"
+       empspacing="5"
+       visible="true"
+       enabled="true"
+       dotted="true" />
+  </sodipodi:namedview>
+  <rect
+     style="fill:url(#linearGradient3459);fill-opacity:1;opacity:0.5"
+     id="rect2681"
+     width="128"
+     height="128"
+     x="0"
+     y="-7.1054274e-15"
+     ry="10.162162" />
+  <path
+     sodipodi:type="arc"
+     style="opacity:0.11693546;fill:#ffffff;fill-opacity:1;stroke:none;stroke-opacity:1;filter:url(#filter3580)"
+     id="path2397"
+     sodipodi:cx="410"
+     sodipodi:cy="150"
+     sodipodi:rx="90"
+     sodipodi:ry="40"
+     d="M 500,150 A 90,40 0 1 1 320,150 A 90,40 0 1 1 500,150 z"
+     transform="matrix(0.888889,0,0,0.75,-224.4445,38.25)" />
+  <g
+     style="fill:#ffffff"
+     id="g4"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 90,977.626 L 103.32,951.85 C 104.256,949.33 104.688,947.53 104.688,946.594 C 104.688,945.082 104.184,943.93 103.248,943.282 C 102.24,942.562 100.512,942.202 98.064,942.202 L 98.064,939.826 L 120.168,939.826 L 120.168,942.202 C 117.144,942.202 114.984,942.85 113.472,944.146 C 111.96,945.442 109.872,948.898 106.992,954.514 L 92.376,982.954 L 110.808,1024.498 C 112.68,1028.386 114.336,1031.122 115.776,1032.634 C 117.216,1034.074 118.944,1034.866 120.888,1034.866 L 120.888,1037.17 L 94.536,1037.17 L 94.536,1034.866 C 96.912,1034.866 98.568,1034.578 99.576,1033.93 C 100.584,1033.354 101.088,1032.346 101.088,1031.05 C 101.088,1029.826 100.368,1027.666 99.072,1024.498 L 86.112,995.482 L 71.28,1024.498 C 69.912,1026.946 69.192,1028.962 69.192,1030.474 C 69.192,1033.426 71.352,1034.866 75.672,1034.866 L 75.672,1037.17 L 55.728,1037.17 L 55.728,1034.866 C 57.672,1034.866 59.4,1034.218 60.84,1032.994 C 62.28,1031.77 63.792,1029.682 65.232,1026.586 L 83.736,990.01 L 67.248,9
 52.498 C
  65.52,948.466 63.936,945.802 62.424,944.362 C 60.84,942.922 58.608,942.202 55.728,942.202 L 55.728,939.826 L 84.024,939.826 L 84.024,942.202 C 79.632,942.202 77.4,943.714 77.4,946.738 C 77.4,948.25 77.832,949.978 78.696,951.85 L 90,977.626 z"
+       id="path6" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g8"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,940.474 L 50.976,939.25 L 50.976,941.698 L 6.984,940.474 z"
+       id="path10" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g12"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,946.45 L 50.976,945.298 L 50.976,946.954 L 56.16,947.026 L 56.52,947.026 L 56.808,947.026 L 57.096,947.098 L 57.384,947.098 L 57.672,947.17 L 57.888,947.242 L 58.104,947.314 L 58.32,947.386 L 58.464,947.458 L 58.608,947.53 L 58.752,947.602 L 58.896,947.674 L 58.968,947.746 L 59.112,947.818 L 59.112,947.89 L 59.184,947.89 L 6.984,946.45 z"
+       id="path14" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g16"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,952.498 L 61.272,950.986 L 61.488,951.346 L 61.776,951.922 L 62.064,952.498 L 62.352,953.146 L 62.64,953.794 L 62.784,954.01 L 6.984,952.498 z"
+       id="path18" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g20"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,958.474 L 63.936,956.89 L 65.376,960.058 L 6.984,958.474 z"
+       id="path22" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g24"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,964.45 L 66.528,962.866 L 67.968,966.106 L 6.984,964.45 z"
+       id="path26" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g28"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,970.498 L 69.12,968.77 L 70.632,972.226 L 6.984,970.498 z"
+       id="path30" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g32"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,976.474 L 71.712,974.674 L 73.296,978.274 L 6.984,976.474 z"
+       id="path34" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g36"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,982.45 L 74.304,980.65 L 75.96,984.322 L 6.984,982.45 z"
+       id="path38" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g40"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,988.426 L 76.896,986.554 L 78.408,989.866 L 78.192,990.37 L 6.984,988.426 z"
+       id="path42" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g44"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,994.402 L 77.112,992.458 L 75.168,996.274 L 6.984,994.402 z"
+       id="path46" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g48"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1000.378 L 74.016,998.578 L 72.216,1002.178 L 6.984,1000.378 z"
+       id="path50" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g52"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1006.354 L 70.92,1004.626 L 69.192,1008.082 L 6.984,1006.354 z"
+       id="path54" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g56"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1012.402 L 67.896,1010.746 L 66.168,1013.986 L 6.984,1012.402 z"
+       id="path58" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g60"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1036.378 L 50.976,1035.154 L 50.976,1037.602 L 6.984,1036.378 z"
+       id="path62" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g64"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1030.402 L 58.104,1028.962 L 58.032,1029.106 L 57.888,1029.178 L 57.744,1029.322 L 57.6,1029.394 L 57.528,1029.538 L 57.384,1029.61 L 57.312,1029.682 L 57.168,1029.682 L 57.024,1029.754 L 56.952,1029.826 L 56.808,1029.898 L 56.736,1029.898 L 56.592,1029.97 L 56.448,1029.97 L 56.376,1029.97 L 56.232,1030.042 L 56.088,1030.042 L 55.944,1030.042 L 50.976,1030.114 L 50.976,1031.554 L 6.984,1030.402 z"
+       id="path66" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g68"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1024.354 L 61.776,1022.914 L 60.984,1024.498 L 60.696,1025.002 L 60.48,1025.506 L 60.264,1025.866 L 6.984,1024.354 z"
+       id="path70" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g72"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 6.984,1018.378 L 64.8,1016.794 L 63.288,1019.89 L 6.984,1018.378 z"
+       id="path74" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g76"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 63.936,924.49 L 118.872,924.49 C 123.84,924.49 127.872,928.522 127.872,933.49 L 127.872,1043.362 C 127.872,1048.33 123.84,1052.362 118.872,1052.362 L 63.936,1052.362 L 63.936,1050.418 L 117.864,1050.418 C 122.256,1050.418 125.856,1046.818 125.856,1042.426 L 125.856,934.498 C 125.856,930.106 122.256,926.506 117.864,926.506 L 63.936,926.506 L 63.936,924.49 z"
+       id="path78" />
+  </g>
+  <g
+     style="fill:#ffffff"
+     id="g80"
+     transform="matrix(1.001001,0,0,1.001001,0,-925.41541)">
+    <path
+       style="fill:#ffffff"
+       d="M 9,924.49 L 63.936,924.49 L 63.936,926.506 L 9.936,926.506 C 5.544,926.506 1.944,930.106 1.944,934.498 L 1.944,1042.426 C 1.944,1046.818 5.544,1050.418 9.936,1050.418 L 63.936,1050.418 L 63.936,1052.362 L 9,1052.362 C 4.032,1052.362 0,1048.33 0,1043.362 L 0,933.49 C 0,928.522 4.032,924.49 9,924.49 z"
+       id="path82" />
+  </g>
+</svg>
diff --git a/po/POTFILES.in b/po/POTFILES.in
new file mode 100644
index 0000000..1bf078d
--- /dev/null
+++ b/po/POTFILES.in
@@ -0,0 +1,11 @@
+pyhoca/__init__.py
+pyhoca/wxgui/notify.py
+pyhoca/wxgui/logon.py
+pyhoca/wxgui/taskbar.py
+pyhoca/wxgui/__init__.py
+pyhoca/wxgui/profilemanager.py
+pyhoca/wxgui/menus_taskbar.py
+pyhoca/wxgui/about.py
+pyhoca/wxgui/basepath.py
+pyhoca/wxgui/frontend.py
+pyhoca-gui
diff --git a/po/de.po b/po/de.po
new file mode 100644
index 0000000..31188fd
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,855 @@
+# PyHoca-GUI / i18n.
+# Copyright (C) 2010-2011 Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#                         Dick Kniep <dick.kniep at lindix.nl>
+# This file is distributed under the same license as the PyHoca-GUI package.
+# Mike Gabriel <m.gabriel at das-netzwerkteam.de>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PyHoca-GUI VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-02-22 13:01+0100\n"
+"PO-Revision-Date: 2011-02-22 13:01+0100\n"
+"Last-Translator: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>\n"
+"Language-Team: de <m.gabriel at das-netzwerkteam.de>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: German\n"
+"X-Poedit-Country: GERMANY\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../pyhoca/wxgui/logon.py:80
+#, python-format
+msgid "%s (via %s)"
+msgstr "%s (via %s)"
+
+#: ../pyhoca/wxgui/logon.py:82 ../pyhoca/wxgui/logon.py:92
+msgid "Username"
+msgstr "Benutzername"
+
+#: ../pyhoca/wxgui/logon.py:84 ../pyhoca/wxgui/logon.py:94
+msgid "Password"
+msgstr "Kennwort"
+
+#: ../pyhoca/wxgui/logon.py:87
+msgid "Authenticate"
+msgstr "Anmelden"
+
+#: ../pyhoca/wxgui/logon.py:97
+msgid "  Start SSH tunnel  "
+msgstr "SSH Tunnel aufbauen"
+
+#: ../pyhoca/wxgui/logon.py:103
+msgid "Session login"
+msgstr "Sitzungslogin"
+
+#: ../pyhoca/wxgui/logon.py:104
+msgid "SSH proxy server login"
+msgstr "Anmeldung an SSH Proxy"
+
+#: ../pyhoca/wxgui/logon.py:115 ../pyhoca/wxgui/profilemanager.py:258
+msgid "Cancel"
+msgstr "Abbrechen"
+
+#: ../pyhoca/wxgui/logon.py:235 ../pyhoca/wxgui/logon.py:267
+#: ../pyhoca/wxgui/frontend.py:309
+#, python-format
+msgid "%s - connect failure"
+msgstr "%s - Verbindung fehlgeschlagen"
+
+#: ../pyhoca/wxgui/logon.py:236 ../pyhoca/wxgui/frontend.py:309
+msgid "User is not allowed to start X2go sessions!"
+msgstr "Benutzer darf keine X2go Sitzungen starten!"
+
+#: ../pyhoca/wxgui/logon.py:241 ../pyhoca/wxgui/frontend.py:313
+#, python-format
+msgid "%s - connect"
+msgstr "%s - verbinden"
+
+#: ../pyhoca/wxgui/logon.py:242
+msgid "Authentication has been successful."
+msgstr "Anmeldung war erfolgreich."
+
+#: ../pyhoca/wxgui/logon.py:263
+msgid "SSH tunnel started"
+msgstr "SSH Tunnel gestartet"
+
+#: ../pyhoca/wxgui/logon.py:268
+msgid "Authentication failed!"
+msgstr "Anmeldung fehlgeschlagen!"
+
+#: ../pyhoca/wxgui/logon.py:273
+#, python-format
+msgid "%s - ssh proxy"
+msgstr "%s - SSH Proxy"
+
+#: ../pyhoca/wxgui/logon.py:274
+msgid "Authentication to the SSH proxy server failed!"
+msgstr "Anmeldung am SSH Proxy Server ist fehlgeschlagen"
+
+#: ../pyhoca/wxgui/logon.py:280 ../pyhoca/wxgui/logon.py:286
+#: ../pyhoca/wxgui/logon.py:295 ../pyhoca/wxgui/frontend.py:326
+#: ../pyhoca/wxgui/frontend.py:329 ../pyhoca/wxgui/frontend.py:332
+#: ../pyhoca/wxgui/frontend.py:335
+#, python-format
+msgid "%s - connect error"
+msgstr "%s - Verbindungsfehler"
+
+#: ../pyhoca/wxgui/logon.py:291 ../pyhoca/wxgui/frontend.py:338
+#, python-format
+msgid "%s - key error"
+msgstr "%s - ungültiger Schlüssel"
+
+#: ../pyhoca/wxgui/logon.py:296
+msgid "An unknown error occured during authentication!"
+msgstr "Ein unbekannter Fehler ist während der Serveranmeldung aufgetreten!"
+
+#: ../pyhoca/wxgui/taskbar.py:94
+#, python-format
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+msgstr ""
+"PyHoca-GUI\n"
+"Verbinde mit ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:97
+#, python-format
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Verbindungsaufbau zu X2go server ,,%s'' läuft"
+
+#: ../pyhoca/wxgui/taskbar.py:102
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+msgstr "Verbindlich mit X2go ..."
+
+#: ../pyhoca/wxgui/taskbar.py:105
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Verbindungen zu entferntem X2go server aufbauen"
+
+#: ../pyhoca/wxgui/profilemanager.py:61
+msgid "GNOME Desktop (GNOME)"
+msgstr "GNOME Desktop (GNOME)"
+
+#: ../pyhoca/wxgui/profilemanager.py:62
+msgid "K Desktop Environment (KDE)"
+msgstr "K Desktop Environment (KDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:63
+msgid "Lightweight X Desktop (LXDE)"
+msgstr "Lightweight X Desktop (LXDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:64
+msgid "XDMCP Query"
+msgstr "XDMCP-Serveranfrage (Query)"
+
+#. 'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+#: ../pyhoca/wxgui/profilemanager.py:66
+msgid "Windows Terminal Server (RDP-proxy)"
+msgstr "Windows Terminalserver (RDP-proxy)"
+
+#. 'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+#: ../pyhoca/wxgui/profilemanager.py:68
+msgid "Single Application"
+msgstr "Einzelne Anwendung"
+
+#: ../pyhoca/wxgui/profilemanager.py:69 ../pyhoca/wxgui/profilemanager.py:152
+msgid "Custom command"
+msgstr "Benutzerdef. Kommando"
+
+#: ../pyhoca/wxgui/profilemanager.py:72
+msgid "Internet Browser"
+msgstr "Internetbrowser"
+
+#: ../pyhoca/wxgui/profilemanager.py:73
+msgid "Email Client"
+msgstr "E-Mail Programm"
+
+#: ../pyhoca/wxgui/profilemanager.py:74
+msgid "Openoffice.org"
+msgstr "Openoffice.org"
+
+#: ../pyhoca/wxgui/profilemanager.py:75
+msgid "Terminal"
+msgstr "Terminalkonsole"
+
+#: ../pyhoca/wxgui/profilemanager.py:89
+msgid "Open file with system's default application"
+msgstr "Mit Standardanwendung des Systems öffnen"
+
+#: ../pyhoca/wxgui/profilemanager.py:90
+msgid "Open application chooser dialog"
+msgstr "Auswahldialog öffnen, um Anwendung auszuwählen"
+
+#: ../pyhoca/wxgui/profilemanager.py:91
+msgid "Save incoming file as ..."
+msgstr "Eingehende Datei speichern unter ..."
+
+#: ../pyhoca/wxgui/profilemanager.py:123
+msgid "Server"
+msgstr "Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:124
+msgid "Connection Link Speed"
+msgstr "Verbindungsgeschwindigkeit"
+
+#: ../pyhoca/wxgui/profilemanager.py:125
+msgid "Compression"
+msgstr "Komprimierung"
+
+#: ../pyhoca/wxgui/profilemanager.py:126
+msgid "Display"
+msgstr "Anzeige"
+
+#: ../pyhoca/wxgui/profilemanager.py:127
+msgid "Keyboard"
+msgstr "Tastatur"
+
+#: ../pyhoca/wxgui/profilemanager.py:128
+msgid "Sound"
+msgstr "Audio"
+
+#: ../pyhoca/wxgui/profilemanager.py:129
+msgid "Printing"
+msgstr "Drucken"
+
+#: ../pyhoca/wxgui/profilemanager.py:130
+msgid "Folder Exports"
+msgstr "Ordnerfreigabe"
+
+#: ../pyhoca/wxgui/profilemanager.py:131
+msgid "File Import"
+msgstr "Dateiimport"
+
+#. ##
+#. ## widgets for the SESSION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:136
+msgid "Profile name"
+msgstr "Profilname"
+
+#: ../pyhoca/wxgui/profilemanager.py:146
+msgid "Profile icon"
+msgstr "Profilsymbol"
+
+#: ../pyhoca/wxgui/profilemanager.py:148
+msgid "Session type"
+msgstr "Sitzungstyp"
+
+#: ../pyhoca/wxgui/profilemanager.py:150
+msgid "Application"
+msgstr "Anwendung"
+
+#: ../pyhoca/wxgui/profilemanager.py:154
+msgid "RDP settings"
+msgstr "RDP Einstellungen"
+
+#: ../pyhoca/wxgui/profilemanager.py:155
+msgid "RDP server"
+msgstr "RDP Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:157
+msgid "RDP options"
+msgstr "RDP Optionen"
+
+#: ../pyhoca/wxgui/profilemanager.py:159
+msgid "XDMCP server"
+msgstr "XDMCP Server"
+
+#. ##
+#. ## widgets for the CONNECTION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:165 ../pyhoca/wxgui/profilemanager.py:175
+msgid "User"
+msgstr "Benutzer"
+
+#: ../pyhoca/wxgui/profilemanager.py:167
+msgid "Host"
+msgstr "Hostname"
+
+#: ../pyhoca/wxgui/profilemanager.py:169
+msgid "Port"
+msgstr "Port"
+
+#: ../pyhoca/wxgui/profilemanager.py:171
+msgid "RSA/DSA private key"
+msgstr "Privater RSA/DSA Schlüssel"
+
+#: ../pyhoca/wxgui/profilemanager.py:174
+msgid "Server behind SSH proxy"
+msgstr "Server hinter SSH-Proxy"
+
+#: ../pyhoca/wxgui/profilemanager.py:177
+msgid "Key file"
+msgstr "Schlüssel"
+
+#: ../pyhoca/wxgui/profilemanager.py:180
+msgid "Host[:Port]"
+msgstr "Hostname[:Port]"
+
+#: ../pyhoca/wxgui/profilemanager.py:182
+msgid "SSH Proxy Tunnel"
+msgstr "SSH-Proxytunnel"
+
+#: ../pyhoca/wxgui/profilemanager.py:190
+msgid "Modem"
+msgstr "Modem"
+
+#: ../pyhoca/wxgui/profilemanager.py:191
+msgid "ISDN"
+msgstr "ISDN"
+
+#: ../pyhoca/wxgui/profilemanager.py:192
+msgid "ADSL"
+msgstr "ADSL"
+
+#: ../pyhoca/wxgui/profilemanager.py:193
+msgid "WAN"
+msgstr "WAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:194
+msgid "LAN"
+msgstr "LAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:196
+msgid "Method"
+msgstr "Methode"
+
+#: ../pyhoca/wxgui/profilemanager.py:198
+msgid "Image quality"
+msgstr "Bildqualität"
+
+#. ##
+#. ## wigdets for the SETTINGS tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:204
+msgid "Fullscreen"
+msgstr "Vollbild"
+
+#: ../pyhoca/wxgui/profilemanager.py:205
+msgid "Custom Size"
+msgstr "Benutzerdefinierte Größe"
+
+#: ../pyhoca/wxgui/profilemanager.py:210
+msgid "Set display DPI"
+msgstr "DPI-Wert für Anzeige setzen"
+
+#: ../pyhoca/wxgui/profilemanager.py:212
+msgid "Keep current keyboard settings"
+msgstr "Aktuelle Tastatureinstellungen beibehalten"
+
+#: ../pyhoca/wxgui/profilemanager.py:213
+msgid "Keyboard layout"
+msgstr "Tastaturlayout"
+
+#: ../pyhoca/wxgui/profilemanager.py:215
+msgid "Keyboard model"
+msgstr "Tastaturmodell"
+
+#: ../pyhoca/wxgui/profilemanager.py:217
+msgid "Enable sound support"
+msgstr "Audiounterstützung aktivieren"
+
+#: ../pyhoca/wxgui/profilemanager.py:218
+msgid "Pulse Audio"
+msgstr "Pulse Audio"
+
+#. Arts daemon is not supported by PyHoca-GUI / Python X2go as it is outdated.
+#. However, config files can contain an Arts configuration, so we will honour this
+#: ../pyhoca/wxgui/profilemanager.py:222
+msgid "Arts (not supported)"
+msgstr "Arts (nicht unterstützt)"
+
+#: ../pyhoca/wxgui/profilemanager.py:225
+msgid "esd"
+msgstr "esd"
+
+#: ../pyhoca/wxgui/profilemanager.py:226
+msgid "Use default sound port"
+msgstr "Standard Audio-Port verwenden"
+
+#: ../pyhoca/wxgui/profilemanager.py:227
+msgid "Custom sound port"
+msgstr "Benutzerdefinierter Audio-Port"
+
+#: ../pyhoca/wxgui/profilemanager.py:229
+msgid "Client Side printing"
+msgstr "Unterstützung für lokale Druckeranbindung"
+
+#: ../pyhoca/wxgui/profilemanager.py:231
+msgid "Use local folder sharing"
+msgstr "Lokale Ordnerfreigabe verwenden"
+
+#: ../pyhoca/wxgui/profilemanager.py:232
+msgid "Path"
+msgstr "Pfad"
+
+#: ../pyhoca/wxgui/profilemanager.py:235 ../pyhoca/wxgui/profilemanager.py:252
+msgid "Add"
+msgstr "Hinzufügen"
+
+#: ../pyhoca/wxgui/profilemanager.py:237
+msgid "Delete"
+msgstr "Entfernen"
+
+#: ../pyhoca/wxgui/profilemanager.py:239
+msgid "Convert between client and server encodings"
+msgstr "Zeichenkodierung zwischen Server und Client übersetzen"
+
+#: ../pyhoca/wxgui/profilemanager.py:240
+msgid "Client encoding"
+msgstr "Zeichenkodierung Client"
+
+#: ../pyhoca/wxgui/profilemanager.py:242
+msgid "Server encoding"
+msgstr "Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:245
+msgid "Use file dropbox for local file import"
+msgstr "Datei-Dropbox für lokalen Dateiimport verwenden"
+
+#: ../pyhoca/wxgui/profilemanager.py:246
+msgid "Extensions"
+msgstr "Erweiterungen"
+
+#: ../pyhoca/wxgui/profilemanager.py:248
+msgid "Action"
+msgstr "Aktion"
+
+#: ../pyhoca/wxgui/profilemanager.py:253
+msgid "Defaults"
+msgstr "Standardwerte"
+
+#: ../pyhoca/wxgui/profilemanager.py:255
+msgid "Save"
+msgstr "Speichern"
+
+#: ../pyhoca/wxgui/profilemanager.py:256
+msgid "Reset"
+msgstr "Zurücksetzen"
+
+#: ../pyhoca/wxgui/profilemanager.py:293
+msgid "PyHoca-GUI Profile Manager - new profile"
+msgstr "PyHoca-GUI Profilmanager - neues Sitzungsprofil"
+
+#: ../pyhoca/wxgui/profilemanager.py:295
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s (connected)"
+msgstr "PyHoca-GUI Profilmanager - %s (verbunden)"
+
+#: ../pyhoca/wxgui/profilemanager.py:297
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s"
+msgstr "PyHoca-GUI Profilmanager - %s"
+
+#: ../pyhoca/wxgui/profilemanager.py:613
+msgid "Session Profile"
+msgstr "Sitzungsprofil"
+
+#: ../pyhoca/wxgui/profilemanager.py:614
+msgid "Connection"
+msgstr "Verbindung"
+
+#: ../pyhoca/wxgui/profilemanager.py:615
+msgid "Settings"
+msgstr "Einstellungen"
+
+#: ../pyhoca/wxgui/profilemanager.py:616
+msgid "Sharing"
+msgstr "Ordnerfreigabe"
+
+#: ../pyhoca/wxgui/profilemanager.py:980
+msgid "Icon Files (*.png)|*.png|All files (*.*)|*"
+msgstr "Icon Dateien (*.png)|*.png|Alle Dateien (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:983
+msgid "Choose an icon for this session profile"
+msgstr "Sitzungs-Icon für dieses Sitzungsprofil auswählen"
+
+#: ../pyhoca/wxgui/profilemanager.py:1091
+msgid "All files (*.*)|*"
+msgstr "Alle Dateien (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:1093
+#: ../pyhoca/wxgui/profilemanager.py:1108
+msgid "Choose a public SSH key"
+msgstr "Öffentlichen SSH-Schlüssel auswählen"
+
+#: ../pyhoca/wxgui/profilemanager.py:1242
+msgid "Choose a folder to share within a session"
+msgstr "Ordner zur Freigabe für Sitzungen auswählen"
+
+#: ../pyhoca/wxgui/profilemanager.py:1307 ../pyhoca/wxgui/menus_taskbar.py:86
+msgid "Profile Manager"
+msgstr "Profilmanager"
+
+#: ../pyhoca/wxgui/profilemanager.py:1307
+msgid "Profile name is missing, profile unusable!!!"
+msgstr "Der Profilname fehlt, Profil so nicht verwendbar!!!"
+
+#: ../pyhoca/wxgui/profilemanager.py:1329
+#, python-format
+msgid "%s - profile added"
+msgstr "%s - Profil hinzugefügt"
+
+#: ../pyhoca/wxgui/profilemanager.py:1330
+msgid "A new session profile has been added."
+msgstr "Ein neues Sitzungsprofil wurde hinzugefügt."
+
+#: ../pyhoca/wxgui/profilemanager.py:1334
+#, python-format
+msgid "%s - modified"
+msgstr "%s - modifiziert"
+
+#: ../pyhoca/wxgui/profilemanager.py:1335
+msgid "Changes to profile have been saved."
+msgstr "Änderungen am Profil wurden übernommen."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:55
+msgid "Edit Profile"
+msgstr "Sitzungsprofil bearbeiten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:57
+msgid "Delete Profile"
+msgstr "Sitzungsprofil löschen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:79 ../pyhoca/wxgui/about.py:55
+#: ../pyhoca/wxgui/about.py:57
+#, python-format
+msgid "About %s ..."
+msgstr "Über %s ..."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:97
+msgid "Client Options"
+msgstr "Optionen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:105 ../pyhoca/wxgui/menus_taskbar.py:328
+msgid "E&xit"
+msgstr "&Beenden"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:142
+msgid "Resume Session"
+msgstr "Sitzung fortsetzen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:145
+msgid "Transfer Session"
+msgstr "Sitzung übernehmen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:146
+msgid "Suspend Session"
+msgstr "Sitzung anhalten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:148
+msgid "Terminate Session"
+msgstr "Sitzung beenden"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:186
+msgid "Start &new Session"
+msgstr "&Neue Sitzung starten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:199
+msgid "Running"
+msgstr "aktiv"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:201
+msgid "Suspended"
+msgstr "angehalten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:211
+msgid "&Clean all sessions"
+msgstr "Alle Sitzungen beenden"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:213
+msgid "Customize &profile"
+msgstr "Sitzungsprofil anpassen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:215
+msgid "Share local &folder"
+msgstr "Lokalen Ordner verbinden"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:220
+msgid "&Disconnect from Server"
+msgstr "Von Server trennen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:248
+msgid "Add Profile"
+msgstr "Sitzungsprofil hinzufügen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:274
+msgid "No session profiles defined"
+msgstr "keine Sitzungsprofile definiert"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Start/Resume Session"
+msgstr "Sitzung starten/fortsetzen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Connect Server"
+msgstr "Serververbindung aufbauen"
+
+#: ../pyhoca/wxgui/frontend.py:313
+msgid "Public SSH key authentication has been successful."
+msgstr "Authentifizierung mit öffentlichem SSH Schlüssel war erfolgreich."
+
+#: ../pyhoca/wxgui/frontend.py:335
+msgid "Authentication protocol communication incomplete! Try again..."
+msgstr ""
+"Kommunikation während Authentifizierungsprotokoll unvollständig! Nochmal "
+"versuchen..."
+
+#: ../pyhoca/wxgui/frontend.py:414
+msgid "Cleaning X2go sessions..."
+msgstr "Beende X2go Sitzungen..."
+
+#: ../pyhoca/wxgui/frontend.py:434
+#, python-format
+msgid "%s - disconnect"
+msgstr "%s - trennen"
+
+#: ../pyhoca/wxgui/frontend.py:434
+msgid "X2go Profile is now disconnected."
+msgstr "X2go Profil ist nun nicht mehr verbunden."
+
+#: ../pyhoca/wxgui/frontend.py:442
+msgid "New Session Profile"
+msgstr "Neues Sitzungsprofil"
+
+#: ../pyhoca/wxgui/frontend.py:471
+#, python-format
+msgid "%s - profile deleted"
+msgstr "%s - Profil gelöscht"
+
+#: ../pyhoca/wxgui/frontend.py:471
+msgid "The session profile has been deleted."
+msgstr "Das Sitzungsprofil wurde gelöscht."
+
+#: ../pyhoca/wxgui/frontend.py:486
+#, python-format
+msgid "%s - share local folder with sessions of this profile"
+msgstr "%s - lokalen Ordner für dieses Sitzungsprofile freigeben"
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid "%s - channel error"
+msgstr "%s - Verbindungsfehler"
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+msgstr ""
+"Die Verbindung zum Server %s wurde unerwartet unterbrochen! Bitte versuchen "
+"Sie, sich neu am Server anzumelden..."
+
+#: ../pyhoca/wxgui/frontend.py:531 ../pyhoca/wxgui/frontend.py:535
+#, python-format
+msgid "%s - session failure"
+msgstr "%s - Verbindung fehlgeschlagen"
+
+#: ../pyhoca/wxgui/frontend.py:531
+#, python-format
+msgid ""
+"The command ,,%s'' is not available on X2go server\n"
+"%s)."
+msgstr ""
+"Der Befehl ,,%s'' ist auf dem X2go Server nicht  verfügbar\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, python-format
+msgid "%s - session warning"
+msgstr "%s - Sitzungsfunktion eingeschränkt"
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, python-format
+msgid ""
+"Reverse TCP port forwarding request for session %s to server port %s has "
+"been denied by the X2go server. This is a common issue with SSH, it might "
+"help to restart the X2go server's SSH daemon."
+msgstr ""
+"Eine Reverse TCP Port Weiterleitungsanfrage für Sitzung %s an Serverport %s "
+"wurde vom X2go Server abgelehnt. Leider kann dieses Problem aufgrund der SSH "
+"Implementation häufiger vorkommen. Falls administrativ die Möglichkeit "
+"besteht, wird es helfen, den SSH-Server Prozess auf dem X2go Server neu zu "
+"starten."
+
+#: ../pyhoca/wxgui/frontend.py:535
+#, python-format
+msgid ""
+"Forwarding tunnel request to [%s]:%s for session %s was denied by remote "
+"X2go/SSH server. Session startup failed."
+msgstr ""
+"SSH Forwarding Tunnel zu [%s]:%s wurde für Sitzung %s vom X2go/SSH Server "
+"verweigert. Die Sitzung konnte nicht gestartet werden."
+
+#: ../pyhoca/wxgui/frontend.py:537
+#, python-format
+msgid "%s - audio warning"
+msgstr "%s - Warnung Audiosystem"
+
+#: ../pyhoca/wxgui/frontend.py:537
+msgid ""
+"The X2go PulseAudio system is not available within Remote Desktop sessions."
+msgstr ""
+"Das X2go PulseAudio System ist innerhalb von Remote Desktop Sitzungen nicht "
+"verfügbar."
+
+#: ../pyhoca/wxgui/frontend.py:539 ../pyhoca/wxgui/frontend.py:541
+#, python-format
+msgid "%s - audio error"
+msgstr "%s - Audiofehler"
+
+#: ../pyhoca/wxgui/frontend.py:539
+msgid "The X2go PulseAudio system could not be started."
+msgstr "Das X2go PulseAudio System konnte nicht gestartet werden."
+
+#: ../pyhoca/wxgui/frontend.py:541
+msgid "The X2go PulseAudio system has died unexpectedly."
+msgstr "Das X2go PulseAudio System ist soeben abgestürzt."
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid "%s - audio problem"
+msgstr "%s - Audioproblem"
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid ""
+"The audio connection could not be set up for this session.\n"
+"%s"
+msgstr ""
+"Die Audio-Verbindung für diese Sitzung konnte nicht aufgebaut werden.\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid "%s - print job"
+msgstr "%s - Druckauftrag"
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+msgstr ""
+"Druckdialog für eingehende Druckaufträge ist bislang nicht implementiert!!!\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid "%s - print error"
+msgstr "%s - Druckfehler"
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid ""
+"%s\n"
+"...caused by session\n"
+"%s"
+msgstr ""
+"%s\n"
+"...verursacht von Sitzung\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:570 ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid "%s - start"
+msgstr "%s - starten"
+
+#: ../pyhoca/wxgui/frontend.py:570
+#, python-format
+msgid ""
+"New X2go session starting up...\n"
+"%s"
+msgstr ""
+"Neue X2go Sitzung wird gestartet...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid ""
+"Another client started X2go session\n"
+"%s"
+msgstr ""
+"Ein anderes X2go Programm hat diese Sitzung gestartet\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:574 ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid "%s - resume"
+msgstr "%s - fortsetzen"
+
+#: ../pyhoca/wxgui/frontend.py:574
+#, python-format
+msgid ""
+"Resuming X2go session...\n"
+"%s"
+msgstr ""
+"X2go Sitzung wird fortgesetzt...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid ""
+"Another client resumed X2go session\n"
+"%s"
+msgstr ""
+"Eine andere X2go Anwendung hat die Sitzung fortgesetzt\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid "%s - running"
+msgstr "%s - aktiv"
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid ""
+"Found already running session\n"
+"%s"
+msgstr ""
+"Bereits aktive Sitzung gefunden\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid "%s - suspend"
+msgstr "%s - anhalten"
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid ""
+"X2go Session has been suspended\n"
+"%s"
+msgstr ""
+"X2go Sitzung wurde angehalten\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid "%s - terminate"
+msgstr "%s - beenden"
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid ""
+"X2go Session has terminated\n"
+"%s"
+msgstr ""
+"X2go Sitzung wurde beendet\n"
+"%s"
+
+#~ msgid "Arts"
+#~ msgstr "Arts"
diff --git a/po/en.po b/po/en.po
new file mode 100644
index 0000000..e998472
--- /dev/null
+++ b/po/en.po
@@ -0,0 +1,852 @@
+# PyHoca-GUI / i18n.
+# Copyright (C) 2010-2011 Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#                         Dick Kniep <dick.kniep at lindix.nl>
+# This file is distributed under the same license as the PyHoca-GUI package.
+# Mike Gabriel <m.gabriel at das-netzwerkteam.de>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PyHoca-GUI VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-02-22 13:01+0100\n"
+"PO-Revision-Date: 2011-02-22 13:00+0100\n"
+"Last-Translator: Mike Gabriel <mike.gabriel at das-netzwerkteam.de>\n"
+"Language-Team: en <m.gabriel at das-netzwerkteam.de>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: English\n"
+"X-Poedit-Country: UNITED STATES\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../pyhoca/wxgui/logon.py:80
+#, python-format
+msgid "%s (via %s)"
+msgstr "%s (via %s)"
+
+#: ../pyhoca/wxgui/logon.py:82 ../pyhoca/wxgui/logon.py:92
+msgid "Username"
+msgstr "Username"
+
+#: ../pyhoca/wxgui/logon.py:84 ../pyhoca/wxgui/logon.py:94
+msgid "Password"
+msgstr "Password"
+
+#: ../pyhoca/wxgui/logon.py:87
+msgid "Authenticate"
+msgstr "Authenticate"
+
+#: ../pyhoca/wxgui/logon.py:97
+msgid "  Start SSH tunnel  "
+msgstr "  Start SSH tunnel  "
+
+#: ../pyhoca/wxgui/logon.py:103
+msgid "Session login"
+msgstr "Session login"
+
+#: ../pyhoca/wxgui/logon.py:104
+msgid "SSH proxy server login"
+msgstr "SSH proxy server login"
+
+#: ../pyhoca/wxgui/logon.py:115 ../pyhoca/wxgui/profilemanager.py:258
+msgid "Cancel"
+msgstr "Cancel"
+
+#: ../pyhoca/wxgui/logon.py:235 ../pyhoca/wxgui/logon.py:267
+#: ../pyhoca/wxgui/frontend.py:309
+#, python-format
+msgid "%s - connect failure"
+msgstr "%s - connect failure"
+
+#: ../pyhoca/wxgui/logon.py:236 ../pyhoca/wxgui/frontend.py:309
+msgid "User is not allowed to start X2go sessions!"
+msgstr "User is not allowed to start X2go sessions!"
+
+#: ../pyhoca/wxgui/logon.py:241 ../pyhoca/wxgui/frontend.py:313
+#, python-format
+msgid "%s - connect"
+msgstr "%s - connect"
+
+#: ../pyhoca/wxgui/logon.py:242
+msgid "Authentication has been successful."
+msgstr "Authentication has been successful."
+
+#: ../pyhoca/wxgui/logon.py:263
+msgid "SSH tunnel started"
+msgstr "SSH tunnel started"
+
+#: ../pyhoca/wxgui/logon.py:268
+msgid "Authentication failed!"
+msgstr "Authentication failed!"
+
+#: ../pyhoca/wxgui/logon.py:273
+#, python-format
+msgid "%s - ssh proxy"
+msgstr "%s - ssh proxy"
+
+#: ../pyhoca/wxgui/logon.py:274
+msgid "Authentication to the SSH proxy server failed!"
+msgstr "Authentication to the SSH proxy server failed!"
+
+#: ../pyhoca/wxgui/logon.py:280 ../pyhoca/wxgui/logon.py:286
+#: ../pyhoca/wxgui/logon.py:295 ../pyhoca/wxgui/frontend.py:326
+#: ../pyhoca/wxgui/frontend.py:329 ../pyhoca/wxgui/frontend.py:332
+#: ../pyhoca/wxgui/frontend.py:335
+#, python-format
+msgid "%s - connect error"
+msgstr "%s - connect error"
+
+#: ../pyhoca/wxgui/logon.py:291 ../pyhoca/wxgui/frontend.py:338
+#, python-format
+msgid "%s - key error"
+msgstr "%s - key error"
+
+#: ../pyhoca/wxgui/logon.py:296
+msgid "An unknown error occured during authentication!"
+msgstr "An unknown error occured during authentication!"
+
+#: ../pyhoca/wxgui/taskbar.py:94
+#, python-format
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+msgstr ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:97
+#, python-format
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:102
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+msgstr ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+
+#: ../pyhoca/wxgui/taskbar.py:105
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+
+#: ../pyhoca/wxgui/profilemanager.py:61
+msgid "GNOME Desktop (GNOME)"
+msgstr "GNOME Desktop (GNOME)"
+
+#: ../pyhoca/wxgui/profilemanager.py:62
+msgid "K Desktop Environment (KDE)"
+msgstr "K Desktop Environment (KDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:63
+msgid "Lightweight X Desktop (LXDE)"
+msgstr "Lightweight X Desktop (LXDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:64
+msgid "XDMCP Query"
+msgstr "XDMCP Query"
+
+#. 'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+#: ../pyhoca/wxgui/profilemanager.py:66
+msgid "Windows Terminal Server (RDP-proxy)"
+msgstr "Windows Terminal Server (RDP-proxy)"
+
+#. 'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+#: ../pyhoca/wxgui/profilemanager.py:68
+msgid "Single Application"
+msgstr "Single Application"
+
+#: ../pyhoca/wxgui/profilemanager.py:69 ../pyhoca/wxgui/profilemanager.py:152
+msgid "Custom command"
+msgstr "Custom command"
+
+#: ../pyhoca/wxgui/profilemanager.py:72
+msgid "Internet Browser"
+msgstr "Internet Browser"
+
+#: ../pyhoca/wxgui/profilemanager.py:73
+msgid "Email Client"
+msgstr "Email Client"
+
+#: ../pyhoca/wxgui/profilemanager.py:74
+msgid "Openoffice.org"
+msgstr "Openoffice.org"
+
+#: ../pyhoca/wxgui/profilemanager.py:75
+msgid "Terminal"
+msgstr "Terminal"
+
+#: ../pyhoca/wxgui/profilemanager.py:89
+msgid "Open file with system's default application"
+msgstr "Open file with system's default application"
+
+#: ../pyhoca/wxgui/profilemanager.py:90
+msgid "Open application chooser dialog"
+msgstr "Open application chooser dialog"
+
+#: ../pyhoca/wxgui/profilemanager.py:91
+msgid "Save incoming file as ..."
+msgstr "Save incoming file as ..."
+
+#: ../pyhoca/wxgui/profilemanager.py:123
+msgid "Server"
+msgstr "Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:124
+msgid "Connection Link Speed"
+msgstr "Connection Link Speed"
+
+#: ../pyhoca/wxgui/profilemanager.py:125
+msgid "Compression"
+msgstr "Compression"
+
+#: ../pyhoca/wxgui/profilemanager.py:126
+msgid "Display"
+msgstr "Display"
+
+#: ../pyhoca/wxgui/profilemanager.py:127
+msgid "Keyboard"
+msgstr "Keyboard"
+
+#: ../pyhoca/wxgui/profilemanager.py:128
+msgid "Sound"
+msgstr "Sound"
+
+#: ../pyhoca/wxgui/profilemanager.py:129
+msgid "Printing"
+msgstr "Printing"
+
+#: ../pyhoca/wxgui/profilemanager.py:130
+msgid "Folder Exports"
+msgstr "Folder Exports"
+
+#: ../pyhoca/wxgui/profilemanager.py:131
+msgid "File Import"
+msgstr "File Import"
+
+#. ##
+#. ## widgets for the SESSION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:136
+msgid "Profile name"
+msgstr "Profile name"
+
+#: ../pyhoca/wxgui/profilemanager.py:146
+msgid "Profile icon"
+msgstr "Profile icon"
+
+#: ../pyhoca/wxgui/profilemanager.py:148
+msgid "Session type"
+msgstr "Session type"
+
+#: ../pyhoca/wxgui/profilemanager.py:150
+msgid "Application"
+msgstr "Application"
+
+#: ../pyhoca/wxgui/profilemanager.py:154
+msgid "RDP settings"
+msgstr "RDP settings"
+
+#: ../pyhoca/wxgui/profilemanager.py:155
+msgid "RDP server"
+msgstr "RDP server"
+
+#: ../pyhoca/wxgui/profilemanager.py:157
+msgid "RDP options"
+msgstr "RDP options"
+
+#: ../pyhoca/wxgui/profilemanager.py:159
+msgid "XDMCP server"
+msgstr "XDMCP server"
+
+#. ##
+#. ## widgets for the CONNECTION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:165 ../pyhoca/wxgui/profilemanager.py:175
+msgid "User"
+msgstr "User"
+
+#: ../pyhoca/wxgui/profilemanager.py:167
+msgid "Host"
+msgstr "Host"
+
+#: ../pyhoca/wxgui/profilemanager.py:169
+msgid "Port"
+msgstr "Port"
+
+#: ../pyhoca/wxgui/profilemanager.py:171
+msgid "RSA/DSA private key"
+msgstr "RSA/DSA private key"
+
+#: ../pyhoca/wxgui/profilemanager.py:174
+msgid "Server behind SSH proxy"
+msgstr "Server behind SSH proxy"
+
+#: ../pyhoca/wxgui/profilemanager.py:177
+msgid "Key file"
+msgstr "Key file"
+
+#: ../pyhoca/wxgui/profilemanager.py:180
+msgid "Host[:Port]"
+msgstr "Host[:Port]"
+
+#: ../pyhoca/wxgui/profilemanager.py:182
+msgid "SSH Proxy Tunnel"
+msgstr "SSH Proxy Tunnel"
+
+#: ../pyhoca/wxgui/profilemanager.py:190
+msgid "Modem"
+msgstr "Modem"
+
+#: ../pyhoca/wxgui/profilemanager.py:191
+msgid "ISDN"
+msgstr "ISDN"
+
+#: ../pyhoca/wxgui/profilemanager.py:192
+msgid "ADSL"
+msgstr "ADSL"
+
+#: ../pyhoca/wxgui/profilemanager.py:193
+msgid "WAN"
+msgstr "WAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:194
+msgid "LAN"
+msgstr "LAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:196
+msgid "Method"
+msgstr "Method"
+
+#: ../pyhoca/wxgui/profilemanager.py:198
+msgid "Image quality"
+msgstr "Image quality"
+
+#. ##
+#. ## wigdets for the SETTINGS tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:204
+msgid "Fullscreen"
+msgstr "Fullscreen"
+
+#: ../pyhoca/wxgui/profilemanager.py:205
+msgid "Custom Size"
+msgstr "Custom Size"
+
+#: ../pyhoca/wxgui/profilemanager.py:210
+msgid "Set display DPI"
+msgstr "Set display DPI"
+
+#: ../pyhoca/wxgui/profilemanager.py:212
+msgid "Keep current keyboard settings"
+msgstr "Keep current keyboard settings"
+
+#: ../pyhoca/wxgui/profilemanager.py:213
+msgid "Keyboard layout"
+msgstr "Keyboard layout"
+
+#: ../pyhoca/wxgui/profilemanager.py:215
+msgid "Keyboard model"
+msgstr "Keyboard model"
+
+#: ../pyhoca/wxgui/profilemanager.py:217
+msgid "Enable sound support"
+msgstr "Enable sound support"
+
+#: ../pyhoca/wxgui/profilemanager.py:218
+msgid "Pulse Audio"
+msgstr "Pulse Audio"
+
+#. Arts daemon is not supported by PyHoca-GUI / Python X2go as it is outdated.
+#. However, config files can contain an Arts configuration, so we will honour this
+#: ../pyhoca/wxgui/profilemanager.py:222
+msgid "Arts (not supported)"
+msgstr "Arts (not supported)"
+
+#: ../pyhoca/wxgui/profilemanager.py:225
+msgid "esd"
+msgstr "esd"
+
+#: ../pyhoca/wxgui/profilemanager.py:226
+msgid "Use default sound port"
+msgstr "Use default sound port"
+
+#: ../pyhoca/wxgui/profilemanager.py:227
+msgid "Custom sound port"
+msgstr "Custom sound port"
+
+#: ../pyhoca/wxgui/profilemanager.py:229
+msgid "Client Side printing"
+msgstr "Client Side printing"
+
+#: ../pyhoca/wxgui/profilemanager.py:231
+msgid "Use local folder sharing"
+msgstr "Use local folder sharing"
+
+#: ../pyhoca/wxgui/profilemanager.py:232
+msgid "Path"
+msgstr "Path"
+
+#: ../pyhoca/wxgui/profilemanager.py:235 ../pyhoca/wxgui/profilemanager.py:252
+msgid "Add"
+msgstr "Add"
+
+#: ../pyhoca/wxgui/profilemanager.py:237
+msgid "Delete"
+msgstr "Delete"
+
+#: ../pyhoca/wxgui/profilemanager.py:239
+msgid "Convert between client and server encodings"
+msgstr "Convert between client and server encodings"
+
+#: ../pyhoca/wxgui/profilemanager.py:240
+msgid "Client encoding"
+msgstr "Client encoding"
+
+#: ../pyhoca/wxgui/profilemanager.py:242
+msgid "Server encoding"
+msgstr "Server encoding"
+
+#: ../pyhoca/wxgui/profilemanager.py:245
+msgid "Use file dropbox for local file import"
+msgstr "Use file dropbox for local file import"
+
+#: ../pyhoca/wxgui/profilemanager.py:246
+msgid "Extensions"
+msgstr "Extensions"
+
+#: ../pyhoca/wxgui/profilemanager.py:248
+msgid "Action"
+msgstr "Action"
+
+#: ../pyhoca/wxgui/profilemanager.py:253
+msgid "Defaults"
+msgstr "Defaults"
+
+#: ../pyhoca/wxgui/profilemanager.py:255
+msgid "Save"
+msgstr "Save"
+
+#: ../pyhoca/wxgui/profilemanager.py:256
+msgid "Reset"
+msgstr "Reset"
+
+#: ../pyhoca/wxgui/profilemanager.py:293
+msgid "PyHoca-GUI Profile Manager - new profile"
+msgstr "PyHoca-GUI Profile Manager - new profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:295
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s (connected)"
+msgstr "PyHoca-GUI Profile Manager - %s (connected)"
+
+#: ../pyhoca/wxgui/profilemanager.py:297
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s"
+msgstr "PyHoca-GUI Profile Manager - %s"
+
+#: ../pyhoca/wxgui/profilemanager.py:613
+msgid "Session Profile"
+msgstr "Session Profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:614
+msgid "Connection"
+msgstr "Connection"
+
+#: ../pyhoca/wxgui/profilemanager.py:615
+msgid "Settings"
+msgstr "Settings"
+
+#: ../pyhoca/wxgui/profilemanager.py:616
+msgid "Sharing"
+msgstr "Sharing"
+
+#: ../pyhoca/wxgui/profilemanager.py:980
+msgid "Icon Files (*.png)|*.png|All files (*.*)|*"
+msgstr "Icon Files (*.png)|*.png|All files (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:983
+msgid "Choose an icon for this session profile"
+msgstr "Choose an icon for this session profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:1091
+msgid "All files (*.*)|*"
+msgstr "All files (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:1093
+#: ../pyhoca/wxgui/profilemanager.py:1108
+msgid "Choose a public SSH key"
+msgstr "Choose a public SSH key"
+
+#: ../pyhoca/wxgui/profilemanager.py:1242
+msgid "Choose a folder to share within a session"
+msgstr "Choose a folder to share within a session"
+
+#: ../pyhoca/wxgui/profilemanager.py:1307 ../pyhoca/wxgui/menus_taskbar.py:86
+msgid "Profile Manager"
+msgstr "Profile Manager"
+
+#: ../pyhoca/wxgui/profilemanager.py:1307
+msgid "Profile name is missing, profile unusable!!!"
+msgstr "Profile name is missing, profile unusable!!!"
+
+#: ../pyhoca/wxgui/profilemanager.py:1329
+#, python-format
+msgid "%s - profile added"
+msgstr "%s - profile added"
+
+#: ../pyhoca/wxgui/profilemanager.py:1330
+msgid "A new session profile has been added."
+msgstr "A new session profile has been added."
+
+#: ../pyhoca/wxgui/profilemanager.py:1334
+#, python-format
+msgid "%s - modified"
+msgstr "%s - modified"
+
+#: ../pyhoca/wxgui/profilemanager.py:1335
+msgid "Changes to profile have been saved."
+msgstr "Changes to profile have been saved."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:55
+msgid "Edit Profile"
+msgstr "Edit Profile"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:57
+msgid "Delete Profile"
+msgstr "Delete Profile"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:79 ../pyhoca/wxgui/about.py:55
+#: ../pyhoca/wxgui/about.py:57
+#, python-format
+msgid "About %s ..."
+msgstr "About %s ..."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:97
+msgid "Client Options"
+msgstr "Client Options"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:105 ../pyhoca/wxgui/menus_taskbar.py:328
+msgid "E&xit"
+msgstr "E&xit"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:142
+msgid "Resume Session"
+msgstr "Resume Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:145
+msgid "Transfer Session"
+msgstr "Transfer Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:146
+msgid "Suspend Session"
+msgstr "Suspend Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:148
+msgid "Terminate Session"
+msgstr "Terminate Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:186
+msgid "Start &new Session"
+msgstr "Start &new Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:199
+msgid "Running"
+msgstr "Running"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:201
+msgid "Suspended"
+msgstr "Suspended"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:211
+msgid "&Clean all sessions"
+msgstr "&Clean all sessions"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:213
+msgid "Customize &profile"
+msgstr "Customize &profile"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:215
+msgid "Share local &folder"
+msgstr "Share local &folder"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:220
+msgid "&Disconnect from Server"
+msgstr "&Disconnect from Server"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:248
+msgid "Add Profile"
+msgstr "Add Profile"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:274
+msgid "No session profiles defined"
+msgstr "No session profiles defined"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Start/Resume Session"
+msgstr "Start/Resume Session"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Connect Server"
+msgstr "Connect Server"
+
+#: ../pyhoca/wxgui/frontend.py:313
+msgid "Public SSH key authentication has been successful."
+msgstr "Public SSH key authentication has been successful."
+
+#: ../pyhoca/wxgui/frontend.py:335
+msgid "Authentication protocol communication incomplete! Try again..."
+msgstr "Authentication protocol communication incomplete! Try again..."
+
+#: ../pyhoca/wxgui/frontend.py:414
+msgid "Cleaning X2go sessions..."
+msgstr "Cleaning X2go sessions..."
+
+#: ../pyhoca/wxgui/frontend.py:434
+#, python-format
+msgid "%s - disconnect"
+msgstr "%s - disconnect"
+
+#: ../pyhoca/wxgui/frontend.py:434
+msgid "X2go Profile is now disconnected."
+msgstr "X2go Profile is now disconnected."
+
+#: ../pyhoca/wxgui/frontend.py:442
+msgid "New Session Profile"
+msgstr "New Session Profile"
+
+#: ../pyhoca/wxgui/frontend.py:471
+#, python-format
+msgid "%s - profile deleted"
+msgstr "%s - profile deleted"
+
+#: ../pyhoca/wxgui/frontend.py:471
+msgid "The session profile has been deleted."
+msgstr "The session profile has been deleted."
+
+#: ../pyhoca/wxgui/frontend.py:486
+#, python-format
+msgid "%s - share local folder with sessions of this profile"
+msgstr "%s - share local folder with sessions of this profile"
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid "%s - channel error"
+msgstr "%s - channel error"
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+msgstr ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+
+#: ../pyhoca/wxgui/frontend.py:531 ../pyhoca/wxgui/frontend.py:535
+#, python-format
+msgid "%s - session failure"
+msgstr "%s - session failure"
+
+#: ../pyhoca/wxgui/frontend.py:531
+#, python-format
+msgid ""
+"The command ,,%s'' is not available on X2go server\n"
+"%s)."
+msgstr ""
+"The command ,,%s'' is not available on X2go server\n"
+"%s)."
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, python-format
+msgid "%s - session warning"
+msgstr "%s - session warning"
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, python-format
+msgid ""
+"Reverse TCP port forwarding request for session %s to server port %s has "
+"been denied by the X2go server. This is a common issue with SSH, it might "
+"help to restart the X2go server's SSH daemon."
+msgstr ""
+"Reverse TCP port forwarding request for session %s to server port %s has "
+"been denied by the X2go server. This is a common issue with SSH, it might "
+"help to restart the X2go server's SSH daemon."
+
+#: ../pyhoca/wxgui/frontend.py:535
+#, python-format
+msgid ""
+"Forwarding tunnel request to [%s]:%s for session %s was denied by remote "
+"X2go/SSH server. Session startup failed."
+msgstr ""
+"Forwarding tunnel request to [%s]:%s for session %s was denied by remote "
+"X2go/SSH server. Session startup failed."
+
+#: ../pyhoca/wxgui/frontend.py:537
+#, python-format
+msgid "%s - audio warning"
+msgstr "%s - audio warning"
+
+#: ../pyhoca/wxgui/frontend.py:537
+msgid ""
+"The X2go PulseAudio system is not available within Remote Desktop sessions."
+msgstr ""
+"The X2go PulseAudio system is not available within Remote Desktop sessions."
+
+#: ../pyhoca/wxgui/frontend.py:539 ../pyhoca/wxgui/frontend.py:541
+#, python-format
+msgid "%s - audio error"
+msgstr "%s - audio error"
+
+#: ../pyhoca/wxgui/frontend.py:539
+msgid "The X2go PulseAudio system could not be started."
+msgstr "The X2go PulseAudio system could not be started."
+
+#: ../pyhoca/wxgui/frontend.py:541
+msgid "The X2go PulseAudio system has died unexpectedly."
+msgstr "The X2go PulseAudio system has died unexpectedly."
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid "%s - audio problem"
+msgstr "%s - audio problem"
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid ""
+"The audio connection could not be set up for this session.\n"
+"%s"
+msgstr ""
+"The audio connection could not be set up for this session.\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid "%s - print job"
+msgstr "%s - print job"
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+msgstr ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid "%s - print error"
+msgstr "%s - print error"
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid ""
+"%s\n"
+"...caused by session\n"
+"%s"
+msgstr ""
+"%s\n"
+"...caused by session\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:570 ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid "%s - start"
+msgstr "%s - start"
+
+#: ../pyhoca/wxgui/frontend.py:570
+#, python-format
+msgid ""
+"New X2go session starting up...\n"
+"%s"
+msgstr ""
+"New X2go session starting up...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid ""
+"Another client started X2go session\n"
+"%s"
+msgstr ""
+"Another client started X2go session\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:574 ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid "%s - resume"
+msgstr "%s - resume"
+
+#: ../pyhoca/wxgui/frontend.py:574
+#, python-format
+msgid ""
+"Resuming X2go session...\n"
+"%s"
+msgstr ""
+"Resuming X2go session...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid ""
+"Another client resumed X2go session\n"
+"%s"
+msgstr ""
+"Another client resumed X2go session\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid "%s - running"
+msgstr "%s - running"
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid ""
+"Found already running session\n"
+"%s"
+msgstr ""
+"Found already running session\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid "%s - suspend"
+msgstr "%s - suspend"
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid ""
+"X2go Session has been suspended\n"
+"%s"
+msgstr ""
+"X2go Session has been suspended\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid "%s - terminate"
+msgstr "%s - terminate"
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid ""
+"X2go Session has terminated\n"
+"%s"
+msgstr ""
+"X2go Session has terminated\n"
+"%s"
+
+#~ msgid "Arts"
+#~ msgstr "Arts"
diff --git a/po/es.po b/po/es.po
new file mode 100644
index 0000000..05af93d
--- /dev/null
+++ b/po/es.po
@@ -0,0 +1,843 @@
+# PyHoca-GUI / i18n.
+# Copyright (C) 2010-2011 Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#                         Dick Kniep <dick.kniep at lindix.nl>
+# This file is distributed under the same license as the PyHoca-GUI package.
+# Mike Gabriel <m.gabriel at das-netzwerkteam.de>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PyHoca-GUI VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-02-22 13:01+0100\n"
+"PO-Revision-Date: 2011-01-11 14:24+0100\n"
+"Last-Translator: Mike Gabriel <m.gabriel at das-netzwerkteam.de>\n"
+"Language-Team: es <oceanosoftlapalma at gmail.com>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Spanish\n"
+"X-Poedit-Country: SPAIN\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../pyhoca/wxgui/logon.py:80
+#, python-format
+msgid "%s (via %s)"
+msgstr "%s (vía %s)"
+
+#: ../pyhoca/wxgui/logon.py:82 ../pyhoca/wxgui/logon.py:92
+msgid "Username"
+msgstr "Nombre de usuario"
+
+#: ../pyhoca/wxgui/logon.py:84 ../pyhoca/wxgui/logon.py:94
+msgid "Password"
+msgstr "Contraseña"
+
+#: ../pyhoca/wxgui/logon.py:87
+msgid "Authenticate"
+msgstr "Autenticar"
+
+#: ../pyhoca/wxgui/logon.py:97
+msgid "  Start SSH tunnel  "
+msgstr "  Iniciar tunerl SSH   "
+
+#: ../pyhoca/wxgui/logon.py:103
+msgid "Session login"
+msgstr "Inicio de sesión"
+
+#: ../pyhoca/wxgui/logon.py:104
+msgid "SSH proxy server login"
+msgstr "Inicio de sesión en el servidor proxy SSH"
+
+#: ../pyhoca/wxgui/logon.py:115 ../pyhoca/wxgui/profilemanager.py:258
+msgid "Cancel"
+msgstr "Cancelar"
+
+#: ../pyhoca/wxgui/logon.py:235 ../pyhoca/wxgui/logon.py:267
+#: ../pyhoca/wxgui/frontend.py:309
+#, python-format
+msgid "%s - connect failure"
+msgstr "%s - fallo en la conexión"
+
+#: ../pyhoca/wxgui/logon.py:236 ../pyhoca/wxgui/frontend.py:309
+msgid "User is not allowed to start X2go sessions!"
+msgstr "El usuario no tiene permisos para iniciar X2go sesiones!"
+
+#: ../pyhoca/wxgui/logon.py:241 ../pyhoca/wxgui/frontend.py:313
+#, python-format
+msgid "%s - connect"
+msgstr "%s - conectado"
+
+#: ../pyhoca/wxgui/logon.py:242
+msgid "Authentication has been successful."
+msgstr "Inicio de sesión correcto."
+
+#: ../pyhoca/wxgui/logon.py:263
+msgid "SSH tunnel started"
+msgstr "Iniciado tunel SSH"
+
+#: ../pyhoca/wxgui/logon.py:268
+msgid "Authentication failed!"
+msgstr "Error en el nombre de usuario o contraseña!"
+
+#: ../pyhoca/wxgui/logon.py:273
+#, python-format
+msgid "%s - ssh proxy"
+msgstr "%s - proxy ssh"
+
+#: ../pyhoca/wxgui/logon.py:274
+msgid "Authentication to the SSH proxy server failed!"
+msgstr "Nombre de usuario o cantraseña erróneo en el servidor proxy SSH!"
+
+#: ../pyhoca/wxgui/logon.py:280 ../pyhoca/wxgui/logon.py:286
+#: ../pyhoca/wxgui/logon.py:295 ../pyhoca/wxgui/frontend.py:326
+#: ../pyhoca/wxgui/frontend.py:329 ../pyhoca/wxgui/frontend.py:332
+#: ../pyhoca/wxgui/frontend.py:335
+#, python-format
+msgid "%s - connect error"
+msgstr "%s - error en la conexión"
+
+#: ../pyhoca/wxgui/logon.py:291 ../pyhoca/wxgui/frontend.py:338
+#, fuzzy, python-format
+msgid "%s - key error"
+msgstr "%s - error en la conexión"
+
+#: ../pyhoca/wxgui/logon.py:296
+msgid "An unknown error occured during authentication!"
+msgstr ""
+"Error desconocido al tratar de validad el nombre de usuario y la contraseña!"
+
+#: ../pyhoca/wxgui/taskbar.py:94
+#, python-format
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+msgstr ""
+"PyHoca-GUI\n"
+"Conectándote a ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:97
+#, python-format
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Conectandote a tu servidor X2go ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:102
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+msgstr ""
+"PyHoca-GUI\n"
+"Conectándote a X2go..."
+
+#: ../pyhoca/wxgui/taskbar.py:105
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Cliente para conexiones remotas a servidores X2go"
+
+#: ../pyhoca/wxgui/profilemanager.py:61
+msgid "GNOME Desktop (GNOME)"
+msgstr "GNOME Desktop (GNOME)"
+
+#: ../pyhoca/wxgui/profilemanager.py:62
+msgid "K Desktop Environment (KDE)"
+msgstr "K Desktop Environment (KDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:63
+msgid "Lightweight X Desktop (LXDE)"
+msgstr "Lightweight X Desktop (LXDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:64
+msgid "XDMCP Query"
+msgstr "XDMCP Query"
+
+#. 'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+#: ../pyhoca/wxgui/profilemanager.py:66
+msgid "Windows Terminal Server (RDP-proxy)"
+msgstr "Windows Terminal Server (RDP-proxy)"
+
+#. 'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+#: ../pyhoca/wxgui/profilemanager.py:68
+msgid "Single Application"
+msgstr "Aplicación"
+
+#: ../pyhoca/wxgui/profilemanager.py:69 ../pyhoca/wxgui/profilemanager.py:152
+msgid "Custom command"
+msgstr "Comando personalizado"
+
+#: ../pyhoca/wxgui/profilemanager.py:72
+msgid "Internet Browser"
+msgstr "Navegador web"
+
+#: ../pyhoca/wxgui/profilemanager.py:73
+msgid "Email Client"
+msgstr "Cliente de Correo"
+
+#: ../pyhoca/wxgui/profilemanager.py:74
+msgid "Openoffice.org"
+msgstr "Openoffice.org"
+
+#: ../pyhoca/wxgui/profilemanager.py:75
+msgid "Terminal"
+msgstr "Terminal"
+
+#: ../pyhoca/wxgui/profilemanager.py:89
+msgid "Open file with system's default application"
+msgstr "Abrir archivo con la aplicación por defecto"
+
+#: ../pyhoca/wxgui/profilemanager.py:90
+msgid "Open application chooser dialog"
+msgstr "Abrir selector de aplicaciones"
+
+#: ../pyhoca/wxgui/profilemanager.py:91
+msgid "Save incoming file as ..."
+msgstr "Guardar archivo recibido como ..."
+
+#: ../pyhoca/wxgui/profilemanager.py:123
+msgid "Server"
+msgstr "Servidor"
+
+#: ../pyhoca/wxgui/profilemanager.py:124
+msgid "Connection Link Speed"
+msgstr "Velocidad de conexión"
+
+#: ../pyhoca/wxgui/profilemanager.py:125
+msgid "Compression"
+msgstr "Compresión"
+
+#: ../pyhoca/wxgui/profilemanager.py:126
+msgid "Display"
+msgstr "Pantalla"
+
+#: ../pyhoca/wxgui/profilemanager.py:127
+msgid "Keyboard"
+msgstr "Teclado"
+
+#: ../pyhoca/wxgui/profilemanager.py:128
+msgid "Sound"
+msgstr "Sonido"
+
+#: ../pyhoca/wxgui/profilemanager.py:129
+msgid "Printing"
+msgstr "Impresora"
+
+#: ../pyhoca/wxgui/profilemanager.py:130
+msgid "Folder Exports"
+msgstr "Exportaciones de Carpeta"
+
+#: ../pyhoca/wxgui/profilemanager.py:131
+msgid "File Import"
+msgstr "Importar Archivo"
+
+#. ##
+#. ## widgets for the SESSION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:136
+msgid "Profile name"
+msgstr "Nombre del perfil"
+
+#: ../pyhoca/wxgui/profilemanager.py:146
+msgid "Profile icon"
+msgstr "Icono del perfil"
+
+#: ../pyhoca/wxgui/profilemanager.py:148
+msgid "Session type"
+msgstr "Tipo de sesión"
+
+#: ../pyhoca/wxgui/profilemanager.py:150
+msgid "Application"
+msgstr "Aplicación"
+
+#: ../pyhoca/wxgui/profilemanager.py:154
+msgid "RDP settings"
+msgstr "Parámetros RDP"
+
+#: ../pyhoca/wxgui/profilemanager.py:155
+msgid "RDP server"
+msgstr "Servidor RDP"
+
+#: ../pyhoca/wxgui/profilemanager.py:157
+msgid "RDP options"
+msgstr "Opciones RDP"
+
+#: ../pyhoca/wxgui/profilemanager.py:159
+msgid "XDMCP server"
+msgstr "Servidor XDMCP"
+
+#. ##
+#. ## widgets for the CONNECTION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:165 ../pyhoca/wxgui/profilemanager.py:175
+msgid "User"
+msgstr "Usuario"
+
+#: ../pyhoca/wxgui/profilemanager.py:167
+msgid "Host"
+msgstr "Host"
+
+#: ../pyhoca/wxgui/profilemanager.py:169
+msgid "Port"
+msgstr "Puerto"
+
+#: ../pyhoca/wxgui/profilemanager.py:171
+msgid "RSA/DSA private key"
+msgstr "Clave privada RSA/DSA"
+
+#: ../pyhoca/wxgui/profilemanager.py:174
+msgid "Server behind SSH proxy"
+msgstr "Servidor detrás del proxy SSH"
+
+#: ../pyhoca/wxgui/profilemanager.py:177
+msgid "Key file"
+msgstr "Clave"
+
+#: ../pyhoca/wxgui/profilemanager.py:180
+msgid "Host[:Port]"
+msgstr "Host[:Puerto]"
+
+#: ../pyhoca/wxgui/profilemanager.py:182
+msgid "SSH Proxy Tunnel"
+msgstr "Tunel Proxy SSH"
+
+#: ../pyhoca/wxgui/profilemanager.py:190
+msgid "Modem"
+msgstr "Módem"
+
+#: ../pyhoca/wxgui/profilemanager.py:191
+msgid "ISDN"
+msgstr "ISDN"
+
+#: ../pyhoca/wxgui/profilemanager.py:192
+msgid "ADSL"
+msgstr "ADSL"
+
+#: ../pyhoca/wxgui/profilemanager.py:193
+msgid "WAN"
+msgstr "WAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:194
+msgid "LAN"
+msgstr "LAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:196
+msgid "Method"
+msgstr "Método"
+
+#: ../pyhoca/wxgui/profilemanager.py:198
+msgid "Image quality"
+msgstr "Calidad de imagen"
+
+#. ##
+#. ## wigdets for the SETTINGS tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:204
+msgid "Fullscreen"
+msgstr "Pantalla Completa"
+
+#: ../pyhoca/wxgui/profilemanager.py:205
+msgid "Custom Size"
+msgstr "Tamaño Personalizado"
+
+#: ../pyhoca/wxgui/profilemanager.py:210
+msgid "Set display DPI"
+msgstr "Establecer DPI"
+
+#: ../pyhoca/wxgui/profilemanager.py:212
+msgid "Keep current keyboard settings"
+msgstr "Mantener configuración actual del teclado"
+
+#: ../pyhoca/wxgui/profilemanager.py:213
+msgid "Keyboard layout"
+msgstr "Máscara de teclado"
+
+#: ../pyhoca/wxgui/profilemanager.py:215
+msgid "Keyboard model"
+msgstr "Modelo de teclado"
+
+#: ../pyhoca/wxgui/profilemanager.py:217
+msgid "Enable sound support"
+msgstr "Activar soporte de sonido"
+
+#: ../pyhoca/wxgui/profilemanager.py:218
+msgid "Pulse Audio"
+msgstr "Pulse Audio"
+
+#. Arts daemon is not supported by PyHoca-GUI / Python X2go as it is outdated.
+#. However, config files can contain an Arts configuration, so we will honour this
+#: ../pyhoca/wxgui/profilemanager.py:222
+msgid "Arts (not supported)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:225
+msgid "esd"
+msgstr "esd"
+
+#: ../pyhoca/wxgui/profilemanager.py:226
+msgid "Use default sound port"
+msgstr "Usar puerto de sonido por defecto"
+
+#: ../pyhoca/wxgui/profilemanager.py:227
+msgid "Custom sound port"
+msgstr "Puerto de sonido personalizado"
+
+#: ../pyhoca/wxgui/profilemanager.py:229
+msgid "Client Side printing"
+msgstr "Impresión local"
+
+#: ../pyhoca/wxgui/profilemanager.py:231
+msgid "Use local folder sharing"
+msgstr "Compartir carpetas locales"
+
+#: ../pyhoca/wxgui/profilemanager.py:232
+msgid "Path"
+msgstr "Ruta"
+
+#: ../pyhoca/wxgui/profilemanager.py:235 ../pyhoca/wxgui/profilemanager.py:252
+msgid "Add"
+msgstr "Añadir"
+
+#: ../pyhoca/wxgui/profilemanager.py:237
+msgid "Delete"
+msgstr "Eliminar"
+
+#: ../pyhoca/wxgui/profilemanager.py:239
+msgid "Convert between client and server encodings"
+msgstr "Convertir codificaciones entre cliente y servidor"
+
+#: ../pyhoca/wxgui/profilemanager.py:240
+msgid "Client encoding"
+msgstr "Codificación del cliente"
+
+#: ../pyhoca/wxgui/profilemanager.py:242
+msgid "Server encoding"
+msgstr "Del Servidor"
+
+#: ../pyhoca/wxgui/profilemanager.py:245
+msgid "Use file dropbox for local file import"
+msgstr "Usar arrastar archivos para la importar archivos locales"
+
+#: ../pyhoca/wxgui/profilemanager.py:246
+msgid "Extensions"
+msgstr "Extensiones"
+
+#: ../pyhoca/wxgui/profilemanager.py:248
+msgid "Action"
+msgstr "Acción"
+
+#: ../pyhoca/wxgui/profilemanager.py:253
+msgid "Defaults"
+msgstr "Valores por defecto"
+
+#: ../pyhoca/wxgui/profilemanager.py:255
+msgid "Save"
+msgstr "Guardar"
+
+#: ../pyhoca/wxgui/profilemanager.py:256
+msgid "Reset"
+msgstr "Reiniciar"
+
+#: ../pyhoca/wxgui/profilemanager.py:293
+msgid "PyHoca-GUI Profile Manager - new profile"
+msgstr "PyHoca-GUI Gestor de Perfiles - nuevo perfil"
+
+#: ../pyhoca/wxgui/profilemanager.py:295
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s (connected)"
+msgstr "PyHoca-GUI Gestor de Perfiles - %s (conectado)"
+
+#: ../pyhoca/wxgui/profilemanager.py:297
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s"
+msgstr "PyHoca-GUI Gestor de Perfiles - %s"
+
+#: ../pyhoca/wxgui/profilemanager.py:613
+msgid "Session Profile"
+msgstr "Perfil de Sesión"
+
+#: ../pyhoca/wxgui/profilemanager.py:614
+msgid "Connection"
+msgstr "Conexión"
+
+#: ../pyhoca/wxgui/profilemanager.py:615
+msgid "Settings"
+msgstr "Opciones"
+
+#: ../pyhoca/wxgui/profilemanager.py:616
+msgid "Sharing"
+msgstr "Compartir"
+
+#: ../pyhoca/wxgui/profilemanager.py:980
+msgid "Icon Files (*.png)|*.png|All files (*.*)|*"
+msgstr "Iconos (*.png)|*.png|Todos (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:983
+msgid "Choose an icon for this session profile"
+msgstr "Elige un icono para este perfil de sesión"
+
+#: ../pyhoca/wxgui/profilemanager.py:1091
+msgid "All files (*.*)|*"
+msgstr "Todos (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:1093
+#: ../pyhoca/wxgui/profilemanager.py:1108
+msgid "Choose a public SSH key"
+msgstr "Elige una clave pública SSH"
+
+#: ../pyhoca/wxgui/profilemanager.py:1242
+msgid "Choose a folder to share within a session"
+msgstr "Elige la carpeta que quieres compartir en la conexión"
+
+#: ../pyhoca/wxgui/profilemanager.py:1307 ../pyhoca/wxgui/menus_taskbar.py:86
+msgid "Profile Manager"
+msgstr "Gestor de Sesiones"
+
+#: ../pyhoca/wxgui/profilemanager.py:1307
+msgid "Profile name is missing, profile unusable!!!"
+msgstr "Nombre de pefil no encontrado o no válido!!!"
+
+#: ../pyhoca/wxgui/profilemanager.py:1329
+#, python-format
+msgid "%s - profile added"
+msgstr "%s - añadido el perfil"
+
+#: ../pyhoca/wxgui/profilemanager.py:1330
+msgid "A new session profile has been added."
+msgstr "Se ha añadido un nuevo perfil de sesión."
+
+#: ../pyhoca/wxgui/profilemanager.py:1334
+#, python-format
+msgid "%s - modified"
+msgstr "%s - modificado"
+
+#: ../pyhoca/wxgui/profilemanager.py:1335
+msgid "Changes to profile have been saved."
+msgstr "Se han guardado los cambios en el perfil."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:55
+msgid "Edit Profile"
+msgstr "Editar Perfil"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:57
+msgid "Delete Profile"
+msgstr "Borrar Perfil"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:79 ../pyhoca/wxgui/about.py:55
+#: ../pyhoca/wxgui/about.py:57
+#, python-format
+msgid "About %s ..."
+msgstr "Acerca de %s ..."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:97
+msgid "Client Options"
+msgstr "Opciones del Cliente"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:105 ../pyhoca/wxgui/menus_taskbar.py:328
+msgid "E&xit"
+msgstr "S&alir"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:142
+msgid "Resume Session"
+msgstr "Retomar Sesión"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:145
+msgid "Transfer Session"
+msgstr "Transferir Sesión"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:146
+msgid "Suspend Session"
+msgstr "Suspender Sesión"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:148
+msgid "Terminate Session"
+msgstr "Finalizar Sesión"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:186
+msgid "Start &new Session"
+msgstr "Iniciar &nueva Sesión"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:199
+msgid "Running"
+msgstr "Activa"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:201
+msgid "Suspended"
+msgstr "Suspendida"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:211
+msgid "&Clean all sessions"
+msgstr "&Limpiar el registro de sesiones"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:213
+msgid "Customize &profile"
+msgstr "Configurar &perfil"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:215
+msgid "Share local &folder"
+msgstr "Comporarti &Carpeta local"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:220
+msgid "&Disconnect from Server"
+msgstr "&Desconectar del servidor"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:248
+msgid "Add Profile"
+msgstr "Añadir Perfil"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:274
+msgid "No session profiles defined"
+msgstr "No se han definido perfiles de sesión"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Start/Resume Session"
+msgstr "Iniciar/Retomar Sesión"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Connect Server"
+msgstr "Conectar con el Servidor"
+
+#: ../pyhoca/wxgui/frontend.py:313
+msgid "Public SSH key authentication has been successful."
+msgstr "Se ha iniciado sesión con éxito usando la clave pública SSH."
+
+#: ../pyhoca/wxgui/frontend.py:335
+msgid "Authentication protocol communication incomplete! Try again..."
+msgstr "¡El protocolo de comunicaciones está incompleto! Inténtalo otra vez..."
+
+#: ../pyhoca/wxgui/frontend.py:414
+msgid "Cleaning X2go sessions..."
+msgstr "Limpieado sesiones X2go..."
+
+#: ../pyhoca/wxgui/frontend.py:434
+#, python-format
+msgid "%s - disconnect"
+msgstr "%s - desconectado"
+
+#: ../pyhoca/wxgui/frontend.py:434
+msgid "X2go Profile is now disconnected."
+msgstr "Se ha desconectado el Perfil X2go."
+
+#: ../pyhoca/wxgui/frontend.py:442
+msgid "New Session Profile"
+msgstr "Nuevo Perfil de Sesión"
+
+#: ../pyhoca/wxgui/frontend.py:471
+#, python-format
+msgid "%s - profile deleted"
+msgstr "%s - perfil eliminado"
+
+#: ../pyhoca/wxgui/frontend.py:471
+msgid "The session profile has been deleted."
+msgstr "Se ha eliminado el perfil de sesión."
+
+#: ../pyhoca/wxgui/frontend.py:486
+#, python-format
+msgid "%s - share local folder with sessions of this profile"
+msgstr "%s - compartir carpetas locales con las sesiones de este perfil"
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid "%s - channel error"
+msgstr "%s - error en el canal"
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+msgstr ""
+"La conexión con el servidor %s ha finalizado inesperadamente! Intenta "
+"iniciar sesión nuevamente..."
+
+#: ../pyhoca/wxgui/frontend.py:531 ../pyhoca/wxgui/frontend.py:535
+#, fuzzy, python-format
+msgid "%s - session failure"
+msgstr "%s - fallo en la conexión"
+
+#: ../pyhoca/wxgui/frontend.py:531
+#, python-format
+msgid ""
+"The command ,,%s'' is not available on X2go server\n"
+"%s)."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, fuzzy, python-format
+msgid "%s - session warning"
+msgstr "%s - fallo en la conexión"
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, python-format
+msgid ""
+"Reverse TCP port forwarding request for session %s to server port %s has "
+"been denied by the X2go server. This is a common issue with SSH, it might "
+"help to restart the X2go server's SSH daemon."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:535
+#, python-format
+msgid ""
+"Forwarding tunnel request to [%s]:%s for session %s was denied by remote "
+"X2go/SSH server. Session startup failed."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:537
+#, fuzzy, python-format
+msgid "%s - audio warning"
+msgstr "%s - fallo en la conexión"
+
+#: ../pyhoca/wxgui/frontend.py:537
+msgid ""
+"The X2go PulseAudio system is not available within Remote Desktop sessions."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:539 ../pyhoca/wxgui/frontend.py:541
+#, fuzzy, python-format
+msgid "%s - audio error"
+msgstr "%s - error de impresión"
+
+#: ../pyhoca/wxgui/frontend.py:539
+msgid "The X2go PulseAudio system could not be started."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:541
+msgid "The X2go PulseAudio system has died unexpectedly."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid "%s - audio problem"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid ""
+"The audio connection could not be set up for this session.\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid "%s - print job"
+msgstr "%s - imprimir"
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+msgstr ""
+"¡¡¡El cuadro de diálogo de imprimir no ha sido desarrollado todavía!!!\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid "%s - print error"
+msgstr "%s - error de impresión"
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid ""
+"%s\n"
+"...caused by session\n"
+"%s"
+msgstr ""
+"%s\n"
+"...provocado por la sesión\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:570 ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid "%s - start"
+msgstr "%s - inicio"
+
+#: ../pyhoca/wxgui/frontend.py:570
+#, python-format
+msgid ""
+"New X2go session starting up...\n"
+"%s"
+msgstr ""
+"Iniciaciando nueva sesión X2go...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid ""
+"Another client started X2go session\n"
+"%s"
+msgstr ""
+"Otro cliente ha iniciado sesión X2go\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:574 ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid "%s - resume"
+msgstr "%s - retornar a la sesión"
+
+#: ../pyhoca/wxgui/frontend.py:574
+#, python-format
+msgid ""
+"Resuming X2go session...\n"
+"%s"
+msgstr ""
+"Retornando sesión X2go...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid ""
+"Another client resumed X2go session\n"
+"%s"
+msgstr ""
+"Otro cliente retornó a la sesión X2go\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid "%s - running"
+msgstr "%s - en ejecución"
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid ""
+"Found already running session\n"
+"%s"
+msgstr ""
+"La sesión ya está en ejecución\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid "%s - suspend"
+msgstr "%s - suspender"
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid ""
+"X2go Session has been suspended\n"
+"%s"
+msgstr ""
+"Se ha suspendido la Sesión X2go\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid "%s - terminate"
+msgstr "%s - finalizar"
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid ""
+"X2go Session has terminated\n"
+"%s"
+msgstr ""
+"Se ha finalizado la sesión X2go\n"
+"%s"
+
+#~ msgid "Arts"
+#~ msgstr "Arts"
diff --git a/po/nl.po b/po/nl.po
new file mode 100644
index 0000000..eaeb20b
--- /dev/null
+++ b/po/nl.po
@@ -0,0 +1,840 @@
+# PyHoca-GUI / i18n.
+# Copyright (C) 2010-2011 Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#                         Dick Kniep <dick.kniep at lindix.nl>
+# This file is distributed under the same license as the PyHoca-GUI package.
+# Mike Gabriel <m.gabriel at das-netzwerkteam.de>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PyHoca-GUI VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-02-22 13:01+0100\n"
+"PO-Revision-Date: 2011-01-10 17:32+0100\n"
+"Last-Translator: Dick Kniep <dick.kniep at lindix.nl>\n"
+"Language-Team: nl <dick.kniep at lindix.nl>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Dutch\n"
+"X-Poedit-Country: NETHERLANDS\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../pyhoca/wxgui/logon.py:80
+#, python-format
+msgid "%s (via %s)"
+msgstr "%s (via %s)"
+
+#: ../pyhoca/wxgui/logon.py:82 ../pyhoca/wxgui/logon.py:92
+msgid "Username"
+msgstr "Gebruiker"
+
+#: ../pyhoca/wxgui/logon.py:84 ../pyhoca/wxgui/logon.py:94
+msgid "Password"
+msgstr "Wachtwoord"
+
+#: ../pyhoca/wxgui/logon.py:87
+msgid "Authenticate"
+msgstr "Aanmelden"
+
+#: ../pyhoca/wxgui/logon.py:97
+msgid "  Start SSH tunnel  "
+msgstr "  Start SSH Tunnel  "
+
+#: ../pyhoca/wxgui/logon.py:103
+msgid "Session login"
+msgstr "Sessie login"
+
+#: ../pyhoca/wxgui/logon.py:104
+msgid "SSH proxy server login"
+msgstr "Login via SSH Proxy"
+
+#: ../pyhoca/wxgui/logon.py:115 ../pyhoca/wxgui/profilemanager.py:258
+msgid "Cancel"
+msgstr "Afbreken"
+
+#: ../pyhoca/wxgui/logon.py:235 ../pyhoca/wxgui/logon.py:267
+#: ../pyhoca/wxgui/frontend.py:309
+#, python-format
+msgid "%s - connect failure"
+msgstr "%s - verbinden mislukt"
+
+#: ../pyhoca/wxgui/logon.py:236 ../pyhoca/wxgui/frontend.py:309
+msgid "User is not allowed to start X2go sessions!"
+msgstr "Gebruiker mag geen X2go sessie starten!"
+
+#: ../pyhoca/wxgui/logon.py:241 ../pyhoca/wxgui/frontend.py:313
+#, python-format
+msgid "%s - connect"
+msgstr "%s - verbinden"
+
+#: ../pyhoca/wxgui/logon.py:242
+msgid "Authentication has been successful."
+msgstr "Authenticatie is gelukt."
+
+#: ../pyhoca/wxgui/logon.py:263
+msgid "SSH tunnel started"
+msgstr "SSH Tunnel gestart"
+
+#: ../pyhoca/wxgui/logon.py:268
+msgid "Authentication failed!"
+msgstr "Authenticatie mislukt!"
+
+#: ../pyhoca/wxgui/logon.py:273
+#, python-format
+msgid "%s - ssh proxy"
+msgstr "%s - SSH Proxy"
+
+#: ../pyhoca/wxgui/logon.py:274
+msgid "Authentication to the SSH proxy server failed!"
+msgstr "Authenticatie via SSH Proxy Server mislukt!"
+
+#: ../pyhoca/wxgui/logon.py:280 ../pyhoca/wxgui/logon.py:286
+#: ../pyhoca/wxgui/logon.py:295 ../pyhoca/wxgui/frontend.py:326
+#: ../pyhoca/wxgui/frontend.py:329 ../pyhoca/wxgui/frontend.py:332
+#: ../pyhoca/wxgui/frontend.py:335
+#, python-format
+msgid "%s - connect error"
+msgstr "%s - Verbindingsfout"
+
+#: ../pyhoca/wxgui/logon.py:291 ../pyhoca/wxgui/frontend.py:338
+#, fuzzy, python-format
+msgid "%s - key error"
+msgstr "%s - Verbindingsfout"
+
+#: ../pyhoca/wxgui/logon.py:296
+msgid "An unknown error occured during authentication!"
+msgstr "Een onbekende fout is bij de authenticatie opgetreden"
+
+#: ../pyhoca/wxgui/taskbar.py:94
+#, python-format
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+msgstr ""
+"PyHoca-GUI\n"
+"Verbinden met ,,%s''"
+
+#: ../pyhoca/wxgui/taskbar.py:97
+#, python-format
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Verbinding met X2go server ,,%s'' wordt gemaakt"
+
+#: ../pyhoca/wxgui/taskbar.py:102
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+msgstr "Bezig je te verbinden met X2go ..."
+
+#: ../pyhoca/wxgui/taskbar.py:105
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+msgstr ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Verbinding met remote X2go server aan het opbouwen"
+
+#: ../pyhoca/wxgui/profilemanager.py:61
+msgid "GNOME Desktop (GNOME)"
+msgstr "GNOME Desktop (GNOME)"
+
+#: ../pyhoca/wxgui/profilemanager.py:62
+msgid "K Desktop Environment (KDE)"
+msgstr "K Desktop Environment (KDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:63
+msgid "Lightweight X Desktop (LXDE)"
+msgstr "Lightweight X Desktop (LXDE)"
+
+#: ../pyhoca/wxgui/profilemanager.py:64
+msgid "XDMCP Query"
+msgstr "XDMCP Query"
+
+#. 'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+#: ../pyhoca/wxgui/profilemanager.py:66
+msgid "Windows Terminal Server (RDP-proxy)"
+msgstr "Windows Terminalserver (RDP-proxy)"
+
+#. 'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+#: ../pyhoca/wxgui/profilemanager.py:68
+msgid "Single Application"
+msgstr "Enkelvoudige Applicatie"
+
+#: ../pyhoca/wxgui/profilemanager.py:69 ../pyhoca/wxgui/profilemanager.py:152
+msgid "Custom command"
+msgstr "Speciaal Commando"
+
+#: ../pyhoca/wxgui/profilemanager.py:72
+msgid "Internet Browser"
+msgstr "Internetbrowser"
+
+#: ../pyhoca/wxgui/profilemanager.py:73
+msgid "Email Client"
+msgstr "E-Mail Programma"
+
+#: ../pyhoca/wxgui/profilemanager.py:74
+msgid "Openoffice.org"
+msgstr "Openoffice.org"
+
+#: ../pyhoca/wxgui/profilemanager.py:75
+msgid "Terminal"
+msgstr "Terminal"
+
+#: ../pyhoca/wxgui/profilemanager.py:89
+msgid "Open file with system's default application"
+msgstr "Open bestand met het geassocieerde programma"
+
+#: ../pyhoca/wxgui/profilemanager.py:90
+msgid "Open application chooser dialog"
+msgstr "Open dialoog, om Applicatie te kiezen"
+
+#: ../pyhoca/wxgui/profilemanager.py:91
+msgid "Save incoming file as ..."
+msgstr "Opslaan bestand als ..."
+
+#: ../pyhoca/wxgui/profilemanager.py:123
+msgid "Server"
+msgstr "Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:124
+msgid "Connection Link Speed"
+msgstr "Verbindings snelheid"
+
+#: ../pyhoca/wxgui/profilemanager.py:125
+msgid "Compression"
+msgstr "Compressie"
+
+#: ../pyhoca/wxgui/profilemanager.py:126
+msgid "Display"
+msgstr "Display"
+
+#: ../pyhoca/wxgui/profilemanager.py:127
+msgid "Keyboard"
+msgstr "Toetsenbord"
+
+#: ../pyhoca/wxgui/profilemanager.py:128
+msgid "Sound"
+msgstr "Geluid"
+
+#: ../pyhoca/wxgui/profilemanager.py:129
+msgid "Printing"
+msgstr "Afdrukken"
+
+#: ../pyhoca/wxgui/profilemanager.py:130
+msgid "Folder Exports"
+msgstr "Map export"
+
+#: ../pyhoca/wxgui/profilemanager.py:131
+msgid "File Import"
+msgstr "Bestands import"
+
+#. ##
+#. ## widgets for the SESSION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:136
+msgid "Profile name"
+msgstr "Profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:146
+msgid "Profile icon"
+msgstr "Profile icon"
+
+#: ../pyhoca/wxgui/profilemanager.py:148
+msgid "Session type"
+msgstr "Sessie type"
+
+#: ../pyhoca/wxgui/profilemanager.py:150
+msgid "Application"
+msgstr "Applicatie"
+
+#: ../pyhoca/wxgui/profilemanager.py:154
+msgid "RDP settings"
+msgstr "RDP instellingen"
+
+#: ../pyhoca/wxgui/profilemanager.py:155
+msgid "RDP server"
+msgstr "RDP Server"
+
+#: ../pyhoca/wxgui/profilemanager.py:157
+msgid "RDP options"
+msgstr "RDP Opties"
+
+#: ../pyhoca/wxgui/profilemanager.py:159
+msgid "XDMCP server"
+msgstr "XDMCP Server"
+
+#. ##
+#. ## widgets for the CONNECTION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:165 ../pyhoca/wxgui/profilemanager.py:175
+msgid "User"
+msgstr "Gebruiker"
+
+#: ../pyhoca/wxgui/profilemanager.py:167
+msgid "Host"
+msgstr "Host"
+
+#: ../pyhoca/wxgui/profilemanager.py:169
+msgid "Port"
+msgstr "Port"
+
+#: ../pyhoca/wxgui/profilemanager.py:171
+msgid "RSA/DSA private key"
+msgstr "Private RSA/DSA Key"
+
+#: ../pyhoca/wxgui/profilemanager.py:174
+msgid "Server behind SSH proxy"
+msgstr "Server achter SSH-Proxy"
+
+#: ../pyhoca/wxgui/profilemanager.py:177
+msgid "Key file"
+msgstr "Key"
+
+#: ../pyhoca/wxgui/profilemanager.py:180
+msgid "Host[:Port]"
+msgstr "Host[:Port]"
+
+#: ../pyhoca/wxgui/profilemanager.py:182
+msgid "SSH Proxy Tunnel"
+msgstr "SSH Proxy Tunnel"
+
+#: ../pyhoca/wxgui/profilemanager.py:190
+msgid "Modem"
+msgstr "Modem"
+
+#: ../pyhoca/wxgui/profilemanager.py:191
+msgid "ISDN"
+msgstr "ISDN"
+
+#: ../pyhoca/wxgui/profilemanager.py:192
+msgid "ADSL"
+msgstr "ADSL"
+
+#: ../pyhoca/wxgui/profilemanager.py:193
+msgid "WAN"
+msgstr "WAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:194
+msgid "LAN"
+msgstr "LAN"
+
+#: ../pyhoca/wxgui/profilemanager.py:196
+msgid "Method"
+msgstr "Methode"
+
+#: ../pyhoca/wxgui/profilemanager.py:198
+msgid "Image quality"
+msgstr "Beeldkwaliteit"
+
+#. ##
+#. ## wigdets for the SETTINGS tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:204
+msgid "Fullscreen"
+msgstr "Fullscreen"
+
+#: ../pyhoca/wxgui/profilemanager.py:205
+msgid "Custom Size"
+msgstr "Grootte instellen"
+
+#: ../pyhoca/wxgui/profilemanager.py:210
+msgid "Set display DPI"
+msgstr "DPI-waarde instellen"
+
+#: ../pyhoca/wxgui/profilemanager.py:212
+msgid "Keep current keyboard settings"
+msgstr "Huidige toetsenbord-instellingen behouden"
+
+#: ../pyhoca/wxgui/profilemanager.py:213
+msgid "Keyboard layout"
+msgstr "Toetsenbord layout"
+
+#: ../pyhoca/wxgui/profilemanager.py:215
+msgid "Keyboard model"
+msgstr "Toetsenbord model"
+
+#: ../pyhoca/wxgui/profilemanager.py:217
+msgid "Enable sound support"
+msgstr "Geluid gebruiken"
+
+#: ../pyhoca/wxgui/profilemanager.py:218
+msgid "Pulse Audio"
+msgstr "Pulse Audio"
+
+#. Arts daemon is not supported by PyHoca-GUI / Python X2go as it is outdated.
+#. However, config files can contain an Arts configuration, so we will honour this
+#: ../pyhoca/wxgui/profilemanager.py:222
+msgid "Arts (not supported)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:225
+msgid "esd"
+msgstr "esd"
+
+#: ../pyhoca/wxgui/profilemanager.py:226
+msgid "Use default sound port"
+msgstr "Standaard Audio-Port gebruiken"
+
+#: ../pyhoca/wxgui/profilemanager.py:227
+msgid "Custom sound port"
+msgstr "Speciale Audio-Port"
+
+#: ../pyhoca/wxgui/profilemanager.py:229
+msgid "Client Side printing"
+msgstr "Client Side printen"
+
+#: ../pyhoca/wxgui/profilemanager.py:231
+msgid "Use local folder sharing"
+msgstr "Delen van lokale mappen"
+
+#: ../pyhoca/wxgui/profilemanager.py:232
+msgid "Path"
+msgstr "Pad"
+
+#: ../pyhoca/wxgui/profilemanager.py:235 ../pyhoca/wxgui/profilemanager.py:252
+msgid "Add"
+msgstr "Toevoegen"
+
+#: ../pyhoca/wxgui/profilemanager.py:237
+msgid "Delete"
+msgstr "Verwijderen"
+
+#: ../pyhoca/wxgui/profilemanager.py:239
+msgid "Convert between client and server encodings"
+msgstr "Encoding tussen client en server vertalen"
+
+#: ../pyhoca/wxgui/profilemanager.py:240
+msgid "Client encoding"
+msgstr "Client encoding"
+
+#: ../pyhoca/wxgui/profilemanager.py:242
+msgid "Server encoding"
+msgstr "Server encoding"
+
+#: ../pyhoca/wxgui/profilemanager.py:245
+msgid "Use file dropbox for local file import"
+msgstr "Importeren lokale bestanden via dropbox"
+
+#: ../pyhoca/wxgui/profilemanager.py:246
+msgid "Extensions"
+msgstr "Uitbreidingen"
+
+#: ../pyhoca/wxgui/profilemanager.py:248
+msgid "Action"
+msgstr "Actie"
+
+#: ../pyhoca/wxgui/profilemanager.py:253
+msgid "Defaults"
+msgstr "Standaardwaarden"
+
+#: ../pyhoca/wxgui/profilemanager.py:255
+msgid "Save"
+msgstr "Opslaan"
+
+#: ../pyhoca/wxgui/profilemanager.py:256
+msgid "Reset"
+msgstr "Reset"
+
+#: ../pyhoca/wxgui/profilemanager.py:293
+msgid "PyHoca-GUI Profile Manager - new profile"
+msgstr "PyHoca-GUI Profile manager - nieuw profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:295
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s (connected)"
+msgstr "PyHoca-GUI Profile manager - %s (verbonden)"
+
+#: ../pyhoca/wxgui/profilemanager.py:297
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s"
+msgstr "PyHoca-GUI Profile manager - %s"
+
+#: ../pyhoca/wxgui/profilemanager.py:613
+msgid "Session Profile"
+msgstr "Sessie Profile"
+
+#: ../pyhoca/wxgui/profilemanager.py:614
+msgid "Connection"
+msgstr "Verbinding"
+
+#: ../pyhoca/wxgui/profilemanager.py:615
+msgid "Settings"
+msgstr "Instellingen"
+
+#: ../pyhoca/wxgui/profilemanager.py:616
+msgid "Sharing"
+msgstr "Delen"
+
+#: ../pyhoca/wxgui/profilemanager.py:980
+msgid "Icon Files (*.png)|*.png|All files (*.*)|*"
+msgstr "Icon Bestanden (*.png)|*.png|Alle Bestanden (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:983
+msgid "Choose an icon for this session profile"
+msgstr "Icon voor dit Profile kiezen"
+
+#: ../pyhoca/wxgui/profilemanager.py:1091
+msgid "All files (*.*)|*"
+msgstr "Alle Bestanden (*.*)|*"
+
+#: ../pyhoca/wxgui/profilemanager.py:1093
+#: ../pyhoca/wxgui/profilemanager.py:1108
+msgid "Choose a public SSH key"
+msgstr "Kies een public SSH-key"
+
+#: ../pyhoca/wxgui/profilemanager.py:1242
+msgid "Choose a folder to share within a session"
+msgstr "Kies een map om te delen"
+
+#: ../pyhoca/wxgui/profilemanager.py:1307 ../pyhoca/wxgui/menus_taskbar.py:86
+msgid "Profile Manager"
+msgstr "Profile manager"
+
+#: ../pyhoca/wxgui/profilemanager.py:1307
+msgid "Profile name is missing, profile unusable!!!"
+msgstr "Profile naam ontbreekt, kan niet gebruikt worden!!!"
+
+#: ../pyhoca/wxgui/profilemanager.py:1329
+#, python-format
+msgid "%s - profile added"
+msgstr "%s - Profile toegevoegd"
+
+#: ../pyhoca/wxgui/profilemanager.py:1330
+msgid "A new session profile has been added."
+msgstr "Een nieuw Profile is toegevoegd"
+
+#: ../pyhoca/wxgui/profilemanager.py:1334
+#, python-format
+msgid "%s - modified"
+msgstr "%s - gewijzigd"
+
+#: ../pyhoca/wxgui/profilemanager.py:1335
+msgid "Changes to profile have been saved."
+msgstr "Wijzigingen in het profile zijn opgeslagen."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:55
+msgid "Edit Profile"
+msgstr "Profile bijwerken"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:57
+msgid "Delete Profile"
+msgstr "Profile verwijderen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:79 ../pyhoca/wxgui/about.py:55
+#: ../pyhoca/wxgui/about.py:57
+#, python-format
+msgid "About %s ..."
+msgstr "About %s ..."
+
+#: ../pyhoca/wxgui/menus_taskbar.py:97
+msgid "Client Options"
+msgstr "Opties"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:105 ../pyhoca/wxgui/menus_taskbar.py:328
+msgid "E&xit"
+msgstr "&Beeindigen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:142
+msgid "Resume Session"
+msgstr "Sessie hervatten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:145
+msgid "Transfer Session"
+msgstr "Sessie overnemen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:146
+msgid "Suspend Session"
+msgstr "Suspend Sessie"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:148
+msgid "Terminate Session"
+msgstr "Sessie beeindigen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:186
+msgid "Start &new Session"
+msgstr "&Nieuwe Sessie starten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:199
+msgid "Running"
+msgstr "aktief"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:201
+msgid "Suspended"
+msgstr "hervatten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:211
+msgid "&Clean all sessions"
+msgstr "Alle Sessies beeindigen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:213
+msgid "Customize &profile"
+msgstr "Sessieprofile wijzigen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:215
+msgid "Share local &folder"
+msgstr "Delen lokale &map"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:220
+msgid "&Disconnect from Server"
+msgstr "&Verbinding verbreken"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:248
+msgid "Add Profile"
+msgstr "Profile toevoegen"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:274
+msgid "No session profiles defined"
+msgstr "Geen Profile gedefinieerd"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Start/Resume Session"
+msgstr "Sessie starten/hervatten"
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Connect Server"
+msgstr "Verbinden met Server"
+
+#: ../pyhoca/wxgui/frontend.py:313
+msgid "Public SSH key authentication has been successful."
+msgstr "Public SSH-key authenticatie is gelukt."
+
+#: ../pyhoca/wxgui/frontend.py:335
+msgid "Authentication protocol communication incomplete! Try again..."
+msgstr "Authenticatie was niet volledig! Opnieuw proberen..."
+
+#: ../pyhoca/wxgui/frontend.py:414
+msgid "Cleaning X2go sessions..."
+msgstr "Eindig X2go Sessies..."
+
+#: ../pyhoca/wxgui/frontend.py:434
+#, python-format
+msgid "%s - disconnect"
+msgstr "%s - verbinding verbreken"
+
+#: ../pyhoca/wxgui/frontend.py:434
+msgid "X2go Profile is now disconnected."
+msgstr "X2go Profil is nu niet meer verbonden."
+
+#: ../pyhoca/wxgui/frontend.py:442
+msgid "New Session Profile"
+msgstr "Nieuw Profile"
+
+#: ../pyhoca/wxgui/frontend.py:471
+#, python-format
+msgid "%s - profile deleted"
+msgstr "%s - Profile verwijderd"
+
+#: ../pyhoca/wxgui/frontend.py:471
+msgid "The session profile has been deleted."
+msgstr "Het Profile wordt verwijderd."
+
+#: ../pyhoca/wxgui/frontend.py:486
+#, python-format
+msgid "%s - share local folder with sessions of this profile"
+msgstr "%s - deel lokale map met dit Profile"
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid "%s - channel error"
+msgstr "%s - Verbindingsfout"
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+msgstr ""
+"De Verbinding met de server %s werd onverwacht verbroken! Probeer om u "
+"opnieuw aan te melden..."
+
+#: ../pyhoca/wxgui/frontend.py:531 ../pyhoca/wxgui/frontend.py:535
+#, fuzzy, python-format
+msgid "%s - session failure"
+msgstr "%s - verbinden mislukt"
+
+#: ../pyhoca/wxgui/frontend.py:531
+#, python-format
+msgid ""
+"The command ,,%s'' is not available on X2go server\n"
+"%s)."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, fuzzy, python-format
+msgid "%s - session warning"
+msgstr "%s - verbinden mislukt"
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, python-format
+msgid ""
+"Reverse TCP port forwarding request for session %s to server port %s has "
+"been denied by the X2go server. This is a common issue with SSH, it might "
+"help to restart the X2go server's SSH daemon."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:535
+#, python-format
+msgid ""
+"Forwarding tunnel request to [%s]:%s for session %s was denied by remote "
+"X2go/SSH server. Session startup failed."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:537
+#, fuzzy, python-format
+msgid "%s - audio warning"
+msgstr "%s - verbinden mislukt"
+
+#: ../pyhoca/wxgui/frontend.py:537
+msgid ""
+"The X2go PulseAudio system is not available within Remote Desktop sessions."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:539 ../pyhoca/wxgui/frontend.py:541
+#, fuzzy, python-format
+msgid "%s - audio error"
+msgstr "%s - Printfout"
+
+#: ../pyhoca/wxgui/frontend.py:539
+msgid "The X2go PulseAudio system could not be started."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:541
+msgid "The X2go PulseAudio system has died unexpectedly."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid "%s - audio problem"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid ""
+"The audio connection could not be set up for this session.\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid "%s - print job"
+msgstr "%s - print job"
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+msgstr ""
+"De Print job dialog is nog niet geimplementeerd!!!\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid "%s - print error"
+msgstr "%s - Printfout"
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid ""
+"%s\n"
+"...caused by session\n"
+"%s"
+msgstr ""
+"%s\n"
+"...veroorzaakt door sessie\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:570 ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid "%s - start"
+msgstr "%s - Start"
+
+#: ../pyhoca/wxgui/frontend.py:570
+#, python-format
+msgid ""
+"New X2go session starting up...\n"
+"%s"
+msgstr ""
+"Neue X2go sessie wordt gestart...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid ""
+"Another client started X2go session\n"
+"%s"
+msgstr ""
+"Een andere X2go-client heeft deze sessie gestart\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:574 ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid "%s - resume"
+msgstr "%s - hervatten"
+
+#: ../pyhoca/wxgui/frontend.py:574
+#, python-format
+msgid ""
+"Resuming X2go session...\n"
+"%s"
+msgstr ""
+"X2go Sessie wordt hervat...\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid ""
+"Another client resumed X2go session\n"
+"%s"
+msgstr ""
+"Een andere X2go-client heeft de Sessie hervat\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid "%s - running"
+msgstr "%s - actief"
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid ""
+"Found already running session\n"
+"%s"
+msgstr ""
+"Reeds actieve sessie gevonden\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid "%s - suspend"
+msgstr "%s - suspend"
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid ""
+"X2go Session has been suspended\n"
+"%s"
+msgstr ""
+"X2go Sessie is suspended\n"
+"%s"
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid "%s - terminate"
+msgstr "%s - beeindigen"
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid ""
+"X2go Session has terminated\n"
+"%s"
+msgstr ""
+"X2go Sessie wordt beeindigd\n"
+"%s"
+
+#~ msgid "Arts"
+#~ msgstr "Arts"
diff --git a/po/pyhoca-gui.pot b/po/pyhoca-gui.pot
new file mode 100644
index 0000000..4861bd7
--- /dev/null
+++ b/po/pyhoca-gui.pot
@@ -0,0 +1,807 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL at ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-02-22 13:03+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
+"Language-Team: LANGUAGE <LL at li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../pyhoca/wxgui/logon.py:80
+#, python-format
+msgid "%s (via %s)"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:82 ../pyhoca/wxgui/logon.py:92
+msgid "Username"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:84 ../pyhoca/wxgui/logon.py:94
+msgid "Password"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:87
+msgid "Authenticate"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:97
+msgid "  Start SSH tunnel  "
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:103
+msgid "Session login"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:104
+msgid "SSH proxy server login"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:115 ../pyhoca/wxgui/profilemanager.py:258
+msgid "Cancel"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:235 ../pyhoca/wxgui/logon.py:267
+#: ../pyhoca/wxgui/frontend.py:309
+#, python-format
+msgid "%s - connect failure"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:236 ../pyhoca/wxgui/frontend.py:309
+msgid "User is not allowed to start X2go sessions!"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:241 ../pyhoca/wxgui/frontend.py:313
+#, python-format
+msgid "%s - connect"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:242
+msgid "Authentication has been successful."
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:263
+msgid "SSH tunnel started"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:268
+msgid "Authentication failed!"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:273
+#, python-format
+msgid "%s - ssh proxy"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:274
+msgid "Authentication to the SSH proxy server failed!"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:280 ../pyhoca/wxgui/logon.py:286
+#: ../pyhoca/wxgui/logon.py:295 ../pyhoca/wxgui/frontend.py:326
+#: ../pyhoca/wxgui/frontend.py:329 ../pyhoca/wxgui/frontend.py:332
+#: ../pyhoca/wxgui/frontend.py:335
+#, python-format
+msgid "%s - connect error"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:291 ../pyhoca/wxgui/frontend.py:338
+#, python-format
+msgid "%s - key error"
+msgstr ""
+
+#: ../pyhoca/wxgui/logon.py:296
+msgid "An unknown error occured during authentication!"
+msgstr ""
+
+#: ../pyhoca/wxgui/taskbar.py:94
+#, python-format
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to ,,%s''"
+msgstr ""
+
+#: ../pyhoca/wxgui/taskbar.py:97
+#, python-format
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Currently connecting you to remote X2go server ,,%s''"
+msgstr ""
+
+#: ../pyhoca/wxgui/taskbar.py:102
+msgid ""
+"PyHoca-GUI\n"
+"Connecting you to X2go..."
+msgstr ""
+
+#: ../pyhoca/wxgui/taskbar.py:105
+msgid ""
+"PyHoca-GUI (Python X2goClient)\n"
+"Client for connecting you to a remote X2go server"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:61
+msgid "GNOME Desktop (GNOME)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:62
+msgid "K Desktop Environment (KDE)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:63
+msgid "Lightweight X Desktop (LXDE)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:64
+msgid "XDMCP Query"
+msgstr ""
+
+#. 'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+#: ../pyhoca/wxgui/profilemanager.py:66
+msgid "Windows Terminal Server (RDP-proxy)"
+msgstr ""
+
+#. 'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+#: ../pyhoca/wxgui/profilemanager.py:68
+msgid "Single Application"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:69 ../pyhoca/wxgui/profilemanager.py:152
+msgid "Custom command"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:72
+msgid "Internet Browser"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:73
+msgid "Email Client"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:74
+msgid "Openoffice.org"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:75
+msgid "Terminal"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:89
+msgid "Open file with system's default application"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:90
+msgid "Open application chooser dialog"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:91
+msgid "Save incoming file as ..."
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:123
+msgid "Server"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:124
+msgid "Connection Link Speed"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:125
+msgid "Compression"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:126
+msgid "Display"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:127
+msgid "Keyboard"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:128
+msgid "Sound"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:129
+msgid "Printing"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:130
+msgid "Folder Exports"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:131
+msgid "File Import"
+msgstr ""
+
+#. ##
+#. ## widgets for the SESSION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:136
+msgid "Profile name"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:146
+msgid "Profile icon"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:148
+msgid "Session type"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:150
+msgid "Application"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:154
+msgid "RDP settings"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:155
+msgid "RDP server"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:157
+msgid "RDP options"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:159
+msgid "XDMCP server"
+msgstr ""
+
+#. ##
+#. ## widgets for the CONNECTION tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:165 ../pyhoca/wxgui/profilemanager.py:175
+msgid "User"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:167
+msgid "Host"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:169
+msgid "Port"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:171
+msgid "RSA/DSA private key"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:174
+msgid "Server behind SSH proxy"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:177
+msgid "Key file"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:180
+msgid "Host[:Port]"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:182
+msgid "SSH Proxy Tunnel"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:190
+msgid "Modem"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:191
+msgid "ISDN"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:192
+msgid "ADSL"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:193
+msgid "WAN"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:194
+msgid "LAN"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:196
+msgid "Method"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:198
+msgid "Image quality"
+msgstr ""
+
+#. ##
+#. ## wigdets for the SETTINGS tab
+#. ##
+#: ../pyhoca/wxgui/profilemanager.py:204
+msgid "Fullscreen"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:205
+msgid "Custom Size"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:210
+msgid "Set display DPI"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:212
+msgid "Keep current keyboard settings"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:213
+msgid "Keyboard layout"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:215
+msgid "Keyboard model"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:217
+msgid "Enable sound support"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:218
+msgid "Pulse Audio"
+msgstr ""
+
+#. Arts daemon is not supported by PyHoca-GUI / Python X2go as it is outdated.
+#. However, config files can contain an Arts configuration, so we will honour this
+#: ../pyhoca/wxgui/profilemanager.py:222
+msgid "Arts (not supported)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:225
+msgid "esd"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:226
+msgid "Use default sound port"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:227
+msgid "Custom sound port"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:229
+msgid "Client Side printing"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:231
+msgid "Use local folder sharing"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:232
+msgid "Path"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:235 ../pyhoca/wxgui/profilemanager.py:252
+msgid "Add"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:237
+msgid "Delete"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:239
+msgid "Convert between client and server encodings"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:240
+msgid "Client encoding"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:242
+msgid "Server encoding"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:245
+msgid "Use file dropbox for local file import"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:246
+msgid "Extensions"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:248
+msgid "Action"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:253
+msgid "Defaults"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:255
+msgid "Save"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:256
+msgid "Reset"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:293
+msgid "PyHoca-GUI Profile Manager - new profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:295
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s (connected)"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:297
+#, python-format
+msgid "PyHoca-GUI Profile Manager - %s"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:613
+msgid "Session Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:614
+msgid "Connection"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:615
+msgid "Settings"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:616
+msgid "Sharing"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:980
+msgid "Icon Files (*.png)|*.png|All files (*.*)|*"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:983
+msgid "Choose an icon for this session profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1091
+msgid "All files (*.*)|*"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1093
+#: ../pyhoca/wxgui/profilemanager.py:1108
+msgid "Choose a public SSH key"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1242
+msgid "Choose a folder to share within a session"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1307 ../pyhoca/wxgui/menus_taskbar.py:86
+msgid "Profile Manager"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1307
+msgid "Profile name is missing, profile unusable!!!"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1329
+#, python-format
+msgid "%s - profile added"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1330
+msgid "A new session profile has been added."
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1334
+#, python-format
+msgid "%s - modified"
+msgstr ""
+
+#: ../pyhoca/wxgui/profilemanager.py:1335
+msgid "Changes to profile have been saved."
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:55
+msgid "Edit Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:57
+msgid "Delete Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:79 ../pyhoca/wxgui/about.py:55
+#: ../pyhoca/wxgui/about.py:57
+#, python-format
+msgid "About %s ..."
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:97
+msgid "Client Options"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:105 ../pyhoca/wxgui/menus_taskbar.py:328
+msgid "E&xit"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:142
+msgid "Resume Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:145
+msgid "Transfer Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:146
+msgid "Suspend Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:148
+msgid "Terminate Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:186
+msgid "Start &new Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:199
+msgid "Running"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:201
+msgid "Suspended"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:211
+msgid "&Clean all sessions"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:213
+msgid "Customize &profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:215
+msgid "Share local &folder"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:220
+msgid "&Disconnect from Server"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:248
+msgid "Add Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:274
+msgid "No session profiles defined"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Start/Resume Session"
+msgstr ""
+
+#: ../pyhoca/wxgui/menus_taskbar.py:305
+msgid "Connect Server"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:313
+msgid "Public SSH key authentication has been successful."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:335
+msgid "Authentication protocol communication incomplete! Try again..."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:414
+msgid "Cleaning X2go sessions..."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:434
+#, python-format
+msgid "%s - disconnect"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:434
+msgid "X2go Profile is now disconnected."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:442
+msgid "New Session Profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:471
+#, python-format
+msgid "%s - profile deleted"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:471
+msgid "The session profile has been deleted."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:486
+#, python-format
+msgid "%s - share local folder with sessions of this profile"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid "%s - channel error"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:528
+#, python-format
+msgid ""
+"Lost connection to server %s unexpectedly! Try to re-authenticate to the "
+"server..."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:531 ../pyhoca/wxgui/frontend.py:535
+#, python-format
+msgid "%s - session failure"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:531
+#, python-format
+msgid ""
+"The command ,,%s'' is not available on X2go server\n"
+"%s)."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, python-format
+msgid "%s - session warning"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:533
+#, python-format
+msgid ""
+"Reverse TCP port forwarding request for session %s to server port %s has "
+"been denied by the X2go server. This is a common issue with SSH, it might "
+"help to restart the X2go server's SSH daemon."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:535
+#, python-format
+msgid ""
+"Forwarding tunnel request to [%s]:%s for session %s was denied by remote "
+"X2go/SSH server. Session startup failed."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:537
+#, python-format
+msgid "%s - audio warning"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:537
+msgid ""
+"The X2go PulseAudio system is not available within Remote Desktop sessions."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:539 ../pyhoca/wxgui/frontend.py:541
+#, python-format
+msgid "%s - audio error"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:539
+msgid "The X2go PulseAudio system could not be started."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:541
+msgid "The X2go PulseAudio system has died unexpectedly."
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid "%s - audio problem"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:543
+#, python-format
+msgid ""
+"The audio connection could not be set up for this session.\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid "%s - print job"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:547
+#, python-format
+msgid ""
+"Opening print job dialog not implemented yet!!!\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid "%s - print error"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:568
+#, python-format
+msgid ""
+"%s\n"
+"...caused by session\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:570 ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid "%s - start"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:570
+#, python-format
+msgid ""
+"New X2go session starting up...\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:572
+#, python-format
+msgid ""
+"Another client started X2go session\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:574 ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid "%s - resume"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:574
+#, python-format
+msgid ""
+"Resuming X2go session...\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:576
+#, python-format
+msgid ""
+"Another client resumed X2go session\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid "%s - running"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:578
+#, python-format
+msgid ""
+"Found already running session\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid "%s - suspend"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:580
+#, python-format
+msgid ""
+"X2go Session has been suspended\n"
+"%s"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid "%s - terminate"
+msgstr ""
+
+#: ../pyhoca/wxgui/frontend.py:588
+#, python-format
+msgid ""
+"X2go Session has terminated\n"
+"%s"
+msgstr ""
diff --git a/pyhoca-gui b/pyhoca-gui
new file mode 100755
index 0000000..1438b88
--- /dev/null
+++ b/pyhoca-gui
@@ -0,0 +1,304 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+modules ={}
+
+import gevent
+import gevent.monkey
+gevent.monkey.patch_all()
+
+import subprocess
+
+try:
+    import wxversion
+    wxversion.select('2.9')
+except: pass
+try:
+    import wxversion
+    wxversion.select('2.8')
+except: pass
+
+import argparse
+import os
+import sys
+import exceptions
+import locale
+import gettext
+
+PROG_NAME = os.path.basename(sys.argv[0])
+PROG_PID  = os.getpid()
+
+from x2go import X2GOCLIENT_OS as _X2GOCLIENT_OS
+
+if _X2GOCLIENT_OS in ('Linux', 'Mac'):
+    import setproctitle
+    setproctitle.setproctitle(PROG_NAME)
+
+app = sys.argv[0]
+if app.startswith('./') or os.path.dirname(PROG_NAME).endswith('trunk'):
+    sys.path.insert(0, os.path.join(os.path.dirname(PROG_NAME)))
+    os.environ['PYHOCAGUI_DEVELOPMENT'] = '1'
+    print '### PyHoca-GUI running in development mode ###'
+else:
+    if _X2GOCLIENT_OS == 'Windows':
+        sys.stdout = open(os.path.join(os.environ['TEMP'], '%s_stdout.log' % PROG_NAME), 'w')
+        sys.stderr = open(os.path.join(os.environ['TEMP'], '%s_stderr.log' % PROG_NAME), 'w')
+
+from pyhoca.wxgui.basepath import locale_basepath
+
+# Python X2go modules
+from x2go import CURRENT_LOCAL_USER as _CURRENT_LOCAL_USER
+if _X2GOCLIENT_OS == 'Windows':
+    from x2go import X2goClientXConfig as _X2goClientXConfig
+from x2go import X2goLogger as _X2goLogger
+from x2go import x2go_cleanup as _x2go_cleanup
+
+# X2go backends
+from x2go.defaults import BACKENDS_CONTROLSESSION, BACKEND_CONTROLSESSION_DEFAULT
+from x2go.defaults import BACKENDS_TERMINALSESSION, BACKEND_TERMINALSESSION_DEFAULT
+from x2go.defaults import BACKENDS_SERVERSESSIONINFO, BACKEND_SERVERSESSIONINFO_DEFAULT
+from x2go.defaults import BACKENDS_SERVERSESSIONLIST, BACKEND_SERVERSESSIONLIST_DEFAULT
+from x2go.defaults import BACKENDS_PROXY, BACKEND_PROXY_DEFAULT
+from x2go.defaults import BACKENDS_SESSIONPROFILES, BACKEND_SESSIONPROFILES_DEFAULT
+from x2go.defaults import BACKENDS_CLIENTSETTINGS, BACKEND_CLIENTSETTINGS_DEFAULT
+from x2go.defaults import BACKENDS_CLIENTPRINTING, BACKEND_CLIENTPRINTING_DEFAULT
+
+from pyhoca.wxgui import __VERSION__ as _version
+from pyhoca.wxgui import PyHocaGUI
+
+if _X2GOCLIENT_OS == 'Windows':
+    from pyhoca.wxgui.basepath import nxproxy_binary
+    os.environ.update({'NXPROXY_BINARY': nxproxy_binary, })
+
+__author__ = "Mike Gabriel, Dick Kniep"
+__version__ = _version
+
+# version information
+VERSION=_version
+VERSION_TEXT="""
+%s[%s] - an X2go GUI client written in Python
+----------------------------------------------------------------------
+developed by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+sponsored by Dick Kniep <dick.kniep at lindix.nl> (2010-2011)
+
+VERSION: %s
+
+""" % (PROG_NAME, PROG_PID, VERSION)
+
+def check_running():
+    if _X2GOCLIENT_OS  in ('Linux', 'Mac'):
+        p = subprocess.Popen(['ps', '-A'], stdout=subprocess.PIPE)
+        psA_out = p.communicate()
+        return psA_out[0].count(PROG_NAME) > 1
+    elif _X2GOCLIENT_OS == 'Windows':
+        import wmi
+        w = wmi.WMI()
+        _p_names = []
+        for process in w.Win32_Process():
+            _p_names.append(process.Name)
+        return len([ _p_name for _p_name in _p_names if _p_name == PROG_NAME]) > 1
+
+
+def version():
+    # print version text and exit
+    sys.stderr.write ("%s\n" % VERSION_TEXT)
+    sys.exit(0)
+
+
+# sometimes we have to fail...
+def runtime_error(m, parser=None, exitcode=-1):
+    """\
+    STILL UNDOCUMENTED
+    """
+    if parser is not None:
+        parser.print_usage()
+    sys.stderr.write ("%s: error: %s\n" % (PROG_NAME, m))
+    sys.exit(exitcode)
+
+
+if _X2GOCLIENT_OS == 'Windows':
+    _x = _X2goClientXConfig()
+    _known_xservers = _x.known_xservers
+    _installed_xservers = _x.installed_xservers
+
+
+if _X2GOCLIENT_OS == 'Windows':
+    _config_backends = ('FILE', 'WINREG')
+elif _X2GOCLIENT_OS == 'Linux':
+    _config_backends = ('FILE', 'GCONF')
+else:
+    _config_backends = ('FILE')
+
+for _profiles_backend_default in _config_backends:
+    if BACKENDS_SESSIONPROFILES[_profiles_backend_default] == BACKEND_SESSIONPROFILES_DEFAULT:
+        break
+for _settings_backend_default in _config_backends:
+    if BACKENDS_CLIENTSETTINGS[_settings_backend_default] == BACKEND_CLIENTSETTINGS_DEFAULT:
+        break
+for _printing_backend_default in _config_backends:
+    if BACKENDS_CLIENTPRINTING[_printing_backend_default] == BACKEND_CLIENTPRINTING_DEFAULT:
+        break
+
+# debug options...
+debug_options =  [
+                   {'args':['-d','--debug'], 'default': False, 'action': 'store_true', 'help': 'enable application debugging code', },
+                   {'args':['--quiet'], 'default': False, 'action': 'store_true', 'help': 'disable any kind of log output', },
+                   {'args':['--libdebug'], 'default': False, 'action': 'store_true', 'help': 'enable debugging code of the underlying Python X2go module', },
+                   {'args':['--libdebug-sftpxfer'], 'default': False, 'action': 'store_true', 'help': 'enable debugging code of Python X2go\'s sFTP server code (very verbose, and even promiscuous)', },
+                   {'args':['-V', '--version'], 'default': False, 'action': 'store_true', 'help': 'print version number and exit', },
+                 ]
+x2go_gui_options = [
+                   {'args':['-u','--username'], 'default': None, 'help': 'username for the session (default: current user)', },
+                   {'args':['-P','--session-profile'], 'default': None, 'help': 'directly connect to a session profile', },
+                   {'args':['--auto-connect'], 'default': False, 'action': 'store_true', 'help': 'connect sessions via SSH pubkey authentication if possible', },
+                   {'args':['--show-profile-metatypes'], 'default': False, 'action': 'store_true', 'help': 'show descriptive meta information on session profiles in menus (NOTE: this makes menus appear a bit more sluggish, use it mostly for debugging)', },
+                   {'args':['--start-on-connect'], 'default': False, 'action': 'store_true', 'help': 'start a session directly after authentication', },
+                   {'args':['--resume-newest-on-connect', '--resume-on-connect'], 'default': False, 'action': 'store_true', 'help': ' on connect auto-resume the newest suspended session', },
+                   {'args':['--resume-oldest-on-connect'], 'default': False, 'action': 'store_true', 'help': ' on connect auto-resume the oldest suspended session', },
+                   {'args':['--resume-all-on-connect'], 'default': False, 'action': 'store_true', 'help': 'auto-resume all suspended session on connect', },
+                   {'args':['--disable-options'], 'default': False, 'action': 'store_true', 'help': 'disable the client options configuration window', },
+                   {'args':['--disable-profilemanager'], 'default': False, 'action': 'store_true', 'help': 'disable the session profile manager window', },
+                   {'args':['--display'], 'default': None, 'metavar': '<hostname>:<screennumber>', 'help': 'set the DISPLAY environment variable to <hostname>:<screennumber>', },
+                 ]
+if _X2GOCLIENT_OS == 'Windows':
+    x2go_gui_options.append(
+                   {'args':['--lang'], 'default': None, 'metavar': 'LANGUAGE', 'help': 'set the GUI language (currently available: en, de, nl, es)', },
+        )
+
+backend_options = [
+                   {'args':['--backend-controlsession'], 'default': None, 'metavar': 'CONTROLSESSION_BACKEND', 'choices': BACKENDS_CONTROLSESSION.keys(), 'help': 'force usage of a certain CONTROLSESSION_BACKEND (do not use this unless you know exactly what you are doing)', },
+                   {'args':['--backend-terminalsession'], 'default': None, 'metavar': 'TERMINALSESSION_BACKEND', 'choices': BACKENDS_TERMINALSESSION.keys(), 'help': 'force usage of a certain TERMINALSESSION_BACKEND (do not use this unless you know exactly what you are doing)', },
+                   {'args':['--backend-serversessioninfo'], 'default': None, 'metavar': 'SERVERSESSIONINFO_BACKEND', 'choices': BACKENDS_TERMINALSESSION.keys(), 'help': 'force usage of a certain SERVERSESSIONINFO_BACKEND (do not use this unless you know exactly what you are doing)', },
+                   {'args':['--backend-serversessionlist'], 'default': None, 'metavar': 'SERVERSESSIONLIST_BACKEND', 'choices': BACKENDS_TERMINALSESSION.keys(), 'help': 'force usage of a certain SERVERSESSIONLIST_BACKEND (do not use this unless you know exactly what you are doing)', },
+                   {'args':['--backend-proxy'], 'default': None, 'metavar': 'PROXY_BACKEND', 'choices': BACKENDS_PROXY.keys(), 'help': 'force usage of a certain PROXY_BACKEND (do not use this unless you know exactly what you are doing)', },
+                   {'args':['--backend-sessionprofiles'], 'default': None, 'metavar': 'SESSIONPROFILES_BACKEND', 'choices': _config_backends, 'help': 'use given backend for accessing session profiles, available backends on your system: %s (default: %s)' % (', '.join(_config_backends), _profiles_backend_default), },
+                   {'args':['--backend-clientsettings'], 'default': None, 'metavar': 'CLIENTSETTINGS_BACKEND', 'choices': _config_backends, 'help': 'use given backend for accessing the client settings configuration, available backends on your system: %s (default: %s)' % (', '.join(_config_backends), _settings_backend_default), },
+                   {'args':['--backend-clientprinting'], 'default': None, 'metavar': 'CLIENTPRINTING_BACKEND', 'choices': _config_backends, 'help': 'use given backend for accessing the client printing configuration, available backends on your system: %s (default: %s)' % (', '.join(_config_backends), _printing_backend_default), },
+                  ]
+
+if _X2GOCLIENT_OS == 'Windows':
+    contrib_options = [
+                       {'args':['--start-xserver'], 'default': False, 'action': 'store_true', 'help': 'start the XServer before starting PyHoca-GUI, detect best XServer automatically, if more than one XServer is installed on your system', },
+                       {'args':['-X', '--preferred-xserver'], 'default': None, 'metavar': 'XSERVER', 'choices': _known_xservers, 'help': 'start either of the currently supported XServers: %s -- make sure your preferred XServer is installed on your system' % _known_xservers, },
+                       {'args':['--start-pulseaudio'], 'default': False, 'action': 'store_true', 'help': 'start the PulseAudio server before starting PyHoca-GUI', },
+                      ]
+
+portable_options = [
+                   {'args':['--client-rootdir'], 'default': None, 'help': 'define an alternative location where to find plain text config files (default: <HOME>/.x2goclient). This option will set ,,--backend-profiles FILE\'\', ,,--backend-clientsettings FILE\'\' and ,,--backend-clientprinting FILE\'\'', },
+                   {'args':['--sessions-rootdir'], 'default': None, 'help': 'define an alternative location for session runtime files'},
+                   {'args':['--ssh-rootdir'], 'default': None, 'help': 'define an alternative location for SSH files', },
+                  ]
+
+
+def parseargs():
+
+    global DEBUG
+    global print_action_args
+
+    p = argparse.ArgumentParser(description='Graphical X2go client implemented in (wx)Python.',\
+                                formatter_class=argparse.RawDescriptionHelpFormatter, \
+                                add_help=True, argument_default=None)
+    p_debugopts = p.add_argument_group('Debug options')
+    p_guiopts = p.add_argument_group('PyHoca-GUI options')
+    p_portableopts = p.add_argument_group('Portable application support')
+    p_backendopts = p.add_argument_group('Python X2go backend options (for experts only)')
+
+    if _X2GOCLIENT_OS == 'Windows':
+        p_contribopts = p.add_argument_group('XServer options (MS Windows only)')
+        p_portableopts = p.add_argument_group('File locations for portable setups (MS Windows only)')
+        _option_groups = ((p_guiopts, x2go_gui_options), (p_debugopts, debug_options), (p_contribopts, contrib_options), (p_portableopts, portable_options), (p_backendopts, backend_options), )
+    else:
+        _option_groups = ((p_guiopts, x2go_gui_options), (p_debugopts, debug_options),  (p_portableopts, portable_options), (p_backendopts, backend_options), )
+    for (p_group, opts) in _option_groups:
+        required = False
+        for opt in opts:
+
+            args = opt['args']
+            del opt['args']
+            p_group.add_argument(*args, **opt)
+
+    a = p.parse_args()
+
+    logger = _X2goLogger(tag='PyHoca-GUI')
+    liblogger = _X2goLogger()
+
+    if a.debug:
+        logger.set_loglevel_debug()
+
+    if a.libdebug:
+        liblogger.set_loglevel_debug()
+
+    if a.quiet:
+        logger.set_loglevel_quiet()
+        liblogger.set_loglevel_quiet()
+
+    if a.libdebug_sftpxfer:
+        liblogger.enable_debug_sftpxfer()
+
+    if a.version:
+        version()
+
+    if a.username is None:
+        a.username = _CURRENT_LOCAL_USER
+
+    if _X2GOCLIENT_OS == 'Windows' and a.preferred_xserver:
+        if a.preferred_xserver not in _installed_xservers:
+            runtime_error('Xserver ,,%s\'\' is not installed on your Windows system' % a.preferred_xserver, parser=p)
+        a.start_xserver = a.preferred_xserver
+
+    if _X2GOCLIENT_OS == 'Windows' and a.start_xserver and a.display:
+        runtime_error('You can tell PyHoca-GUI to handle XServer startup and then specify a DISPLAY environment variable!', parser=p)
+
+    if a.display:
+        os.environ.update({'DISPLAY': a.display})
+    else:
+        if _X2GOCLIENT_OS == 'Windows' and not a.start_xserver:
+            os.environ.update({'DISPLAY': 'localhost:0'})
+
+    if a.client_rootdir:
+        a.backend_sessionprofiles='FILE'
+        a.backend_clientsettings='FILE'
+        a.backend_clientprinting='FILE'
+
+    return a, logger, liblogger
+
+def main():
+    args, logger, liblogger = parseargs()
+    if _X2GOCLIENT_OS == 'Windows':
+        if args.lang:
+            lang = gettext.translation('pyhoca-gui', localedir=locale_basepath, languages=[args.lang], )
+        else:
+            lang = gettext.translation('pyhoca-gui', localedir=locale_basepath, languages=['en'], )
+        lang.install(unicode=True)
+    else:
+        gettext.install('pyhoca-gui', localedir=locale_basepath, unicode=True)
+
+    if check_running(): 
+        sys.stderr.write("\n###############################\n### %s: already running for user %s\n###############################\n" % (PROG_NAME, _CURRENT_LOCAL_USER))
+        version()
+    try:
+        thisPyHocaGUI = PyHocaGUI(args, logger, liblogger)
+        thisPyHocaGUI.MainLoop()
+    except KeyboardInterrupt:
+        _x2go_cleanup()
+
+if __name__ == '__main__':
+    main()
diff --git a/pyhoca/__init__.py b/pyhoca/__init__.py
new file mode 100644
index 0000000..e7fc640
--- /dev/null
+++ b/pyhoca/__init__.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
diff --git a/pyhoca/__init__.pyc b/pyhoca/__init__.pyc
new file mode 100644
index 0000000..a903da1
Binary files /dev/null and b/pyhoca/__init__.pyc differ
diff --git a/pyhoca/wxgui/__init__.py b/pyhoca/wxgui/__init__.py
new file mode 100644
index 0000000..14e27f4
--- /dev/null
+++ b/pyhoca/wxgui/__init__.py
@@ -0,0 +1,23 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+__VERSION__ = '0.0.27'
+
+from frontend import *
diff --git a/pyhoca/wxgui/__init__.pyc b/pyhoca/wxgui/__init__.pyc
new file mode 100644
index 0000000..aae2f6a
Binary files /dev/null and b/pyhoca/wxgui/__init__.pyc differ
diff --git a/pyhoca/wxgui/about.py b/pyhoca/wxgui/about.py
new file mode 100644
index 0000000..7014774
--- /dev/null
+++ b/pyhoca/wxgui/about.py
@@ -0,0 +1,76 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+modules ={}
+
+import os
+
+try:
+    import wxversion
+    wxversion.select('2.9')
+except: pass
+
+try:
+    import wxversion
+    wxversion.select('2.8')
+except: pass
+
+# Python X2go
+import x2go
+
+# wxPython
+import wx
+
+# PyHoca-GUI modules
+import basepath
+
+class PyHocaGUI_AboutFrame(wx.Frame):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, caller=None): 
+
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+        if x2go.X2GOCLIENT_OS == 'Windows':
+            wx.Frame.__init__(self, None, -1, _('About %s ...') % 'PyHoca-GUI', size=(403,319))
+        else:
+            wx.Frame.__init__(self, None, -1, _('About %s ...') % 'PyHoca-GUI', size=(400,298))
+        self.Bind(wx.EVT_CLOSE, self.OnHide)
+
+        _logo_bitmap = wx.StaticBitmap(self, wx.ID_ANY, wx.Bitmap(os.path.join(basepath.images_basepath, 'pyhoca-about-logo.png')), (0, 0))
+        self.bitmap = _logo_bitmap
+
+        if x2go.X2GOCLIENT_OS == 'Windows':
+            _icon = wx.Bitmap(os.path.join(basepath.icons_basepath, os.path.normpath('PyHoca/16x16/pyhoca-winicon.png')))
+        elif x2go.X2GOCLIENT_OS == 'Mac':
+            _icon = wx.Bitmap(os.path.join(basepath.icons_basepath, os.path.normpath('PyHoca/128x128/pyhoca-winicon.png')))
+        else:
+            _icon = wx.Bitmap(os.path.join(basepath.icons_basepath, os.path.normpath('PyHoca/22x22/pyhoca-winicon.png')))
+        self.icon = self.SetIcon(wx.IconFromBitmap(_icon))
+
+        self.CenterOnScreen()
+
+    def OnHide(self, evt):
+        self.Show(False)
+
+
diff --git a/pyhoca/wxgui/about.pyc b/pyhoca/wxgui/about.pyc
new file mode 100644
index 0000000..5843945
Binary files /dev/null and b/pyhoca/wxgui/about.pyc differ
diff --git a/pyhoca/wxgui/basepath.py b/pyhoca/wxgui/basepath.py
new file mode 100644
index 0000000..9b11e0a
--- /dev/null
+++ b/pyhoca/wxgui/basepath.py
@@ -0,0 +1,49 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+import os
+from x2go import X2GOCLIENT_OS as _X2GOCLIENT_OS
+
+if os.environ.has_key('PYHOCAGUI_DEVELOPMENT') and os.environ['PYHOCAGUI_DEVELOPMENT'] == '1':
+    _base_location = os.path.abspath(os.path.curdir)
+    _icons_location = os.path.join(_base_location, 'icons')
+    _images_location = os.path.join(_base_location, 'img')
+    if _X2GOCLIENT_OS != 'Windows':
+        _locale_location = os.path.join(_base_location, 'locale')
+    else:
+        _locale_location = os.path.join(_base_location, 'build', 'mo')
+        _nxproxy_location = os.path.join(_base_location, 'contrib', 'nxproxy-mswin', 'nxproxy.exe')
+else:
+    if _X2GOCLIENT_OS == 'Windows':
+        _base_location = os.path.abspath(os.path.curdir)
+        _icons_location = os.path.join(_base_location, 'icons')
+        _images_location = os.path.join(_base_location, 'img')
+        _locale_location = os.path.join(_base_location, 'mo')
+        _nxproxy_location = os.path.join(_base_location, 'nxproxy', 'nxproxy.exe')
+    else:
+        _icons_location = '/usr/share/icons'
+        _images_location = '/usr/share/pyhoca/img'
+        _locale_location = '/usr/share/locale'
+
+icons_basepath = _icons_location
+images_basepath = _images_location
+if _X2GOCLIENT_OS == 'Windows':
+    nxproxy_binary = _nxproxy_location
+locale_basepath = _locale_location
diff --git a/pyhoca/wxgui/basepath.pyc b/pyhoca/wxgui/basepath.pyc
new file mode 100644
index 0000000..2c13bdc
Binary files /dev/null and b/pyhoca/wxgui/basepath.pyc differ
diff --git a/pyhoca/wxgui/frontend.py b/pyhoca/wxgui/frontend.py
new file mode 100644
index 0000000..9201c1a
--- /dev/null
+++ b/pyhoca/wxgui/frontend.py
@@ -0,0 +1,588 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+modules ={}
+
+try:
+    import wxversion
+    wxversion.select('2.9')
+    #print 'USING wxPython 2.9'
+
+except: pass
+
+try:
+    import wxversion
+    wxversion.select('2.8')
+    #print 'USING wxPython 2.8'
+
+except: pass
+
+    
+# Python X2go
+import x2go
+
+import os
+import gevent
+import gevent.monkey
+gevent.monkey.patch_all()
+
+import wx
+
+import time
+import sys
+import platform
+import types
+import copy
+import threading
+
+# PyHoca-GUI modules
+import about
+import logon
+import taskbar
+import menus_taskbar
+import profilemanager
+import notify
+import basepath
+
+wx.SetDefaultPyEncoding("utf-8")
+
+class PyHocaGUI(wx.App, x2go.X2goClient):
+
+    def __init__(self, args, logger, liblogger, 
+                 appname='PyHoca-GUI', 
+                 vendorname='Open Source Software Foundation',):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.appname = appname
+        self.vendorname = vendorname
+
+        self.args = args
+        if logger is None:
+            self._pyhoca_logger = x2go.X2goLogger(tag=self.appname)
+        else:
+            self._pyhoca_logger = copy.deepcopy(logger)
+            self._pyhoca_logger.tag = self.appname
+
+        if liblogger is None:
+            self._pyhoca_liblogger = x2go.X2goLogger()
+        else:
+            self._pyhoca_liblogger = copy.deepcopy(liblogger)
+
+        wx.App.__init__(self)
+        self.Bind(wx.EVT_IDLE, self.OnIdle)
+
+    def OnInit(self):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        wx.BeginBusyCursor()
+
+        splash_bitmap = wx.Bitmap(os.path.join(basepath.images_basepath, 'pyhoca-splash.png'), wx.BITMAP_TYPE_PNG)
+        wx.SplashScreen(splash_bitmap, wx.SPLASH_CENTRE_ON_SCREEN|wx.SPLASH_TIMEOUT, 3000, None, style=wx.SIMPLE_BORDER|wx.STAY_ON_TOP)
+        wx.Yield()
+
+        _x2goclient_kwargs = {
+            'use_listsessions_cache': True,
+            'auto_update_listsessions_cache': True,
+            'auto_update_sessionregistry': True,
+            'auto_register_sessions': True,
+            'logger': self._pyhoca_liblogger,
+        }
+        if self.args.backend_controlsession is not None:
+            _x2goclient_kwargs['control_backend'] = self.args.backend_controlsession
+        if self.args.backend_terminalsession is not None:
+            _x2goclient_kwargs['terminal_backend'] = self.args.backend_terminalsession
+        if self.args.backend_serversessioninfo is not None:
+            _x2goclient_kwargs['info_backend'] = self.args.backend_serversessioninfo
+        if self.args.backend_serversessionlist is not None:
+            _x2goclient_kwargs['list_backend'] = self.args.backend_serversessionlist
+        if self.args.backend_proxy is not None:
+            _x2goclient_kwargs['proxy_backend'] = self.args.backend_proxy
+        if self.args.backend_sessionprofiles is not None:
+            _x2goclient_kwargs['profiles_backend'] = self.args.backend_sessionprofiles
+        if self.args.backend_clientsettings is not None:
+            _x2goclient_kwargs['settings_backend'] = self.args.backend_clientsettings
+        if self.args.backend_clientprinting is not None:
+            _x2goclient_kwargs['printing_backend'] = self.args.backend_clientprinting
+
+        if self.args.client_rootdir is not None:
+            _x2goclient_kwargs['client_rootdir'] = self.args.client_rootdir
+        if self.args.sessions_rootdir is not None:
+            _x2goclient_kwargs['sessions_rootdir'] = self.args.sessions_rootdir
+        if self.args.ssh_rootdir is not None:
+            _x2goclient_kwargs['ssh_rootdir'] = self.args.ssh_rootdir
+
+        if x2go.X2GOCLIENT_OS == 'Windows':
+            _x2goclient_kwargs['start_xserver'] = self.args.start_xserver
+            _x2goclient_kwargs['start_pulseaudio'] = self.args.start_pulseaudio
+            
+        if x2go.X2GOCLIENT_OS == 'Windows' and self.args.start_pulseaudio and os.environ.has_key('PYHOCAGUI_DEVELOPMENT') and os.environ['PYHOCAGUI_DEVELOPMENT'] == '1':
+            _x2goclient_kwargs['pulseaudio_installdir'] = os.path.normpath('../../contrib/pulseaudio-mswin/pulseaudio-0.9.6')
+        x2go.X2goClient.__init__(self, **_x2goclient_kwargs)
+        self.SetAppName(self.appname)
+        self.SetVendorName(self.vendorname)
+        self.startGUI()
+        wx.EndBusyCursor()
+        return True
+
+    def OnIdle(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        gevent.sleep(.04)
+        evt.RequestMore()
+        return True
+
+    def startGUI(self):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+
+        # cmd line options
+        self.start_on_connect = self.args.start_on_connect
+        self.resume_newest_on_connect = self.args.resume_newest_on_connect
+        self.resume_oldest_on_connect = self.args.resume_oldest_on_connect
+        self.resume_all_on_connect = self.args.resume_all_on_connect
+        self.show_profile_metatypes = self.args.show_profile_metatypes
+
+        self._pyhoca_logger('PyHoca GUI is starting up', loglevel=x2go.log.loglevel_INFO, )
+        self._pyhoca_logger('registering PyHocaGUI control sessions', loglevel=x2go.log.loglevel_INFO, )
+
+        self.about = about.PyHocaGUI_AboutFrame(self)
+        self.about.Show(False)
+
+        self.taskbar = taskbar.PyHocaGUI_TaskBarIcon(self.about)
+        self.taskbar.Bind(wx.EVT_TASKBAR_LEFT_DCLICK, lambda _Show: self.about.Show(True))
+        self.taskbar.Bind(wx.EVT_TASKBAR_LEFT_DOWN, self.taskbar.CreateSessionManagerPopupMenu)
+
+        if x2go.X2GOCLIENT_OS in ('Linux', 'Mac'):
+            self.notifier = notify.libnotify_NotifierPopup(self)
+        if x2go.X2GOCLIENT_OS in ('Windows'):
+            self.notifier = notify.notificationmessage_NotifierPopup(self.about)
+
+        self._sub_windows = []
+        self._hide_notifications_map = {}
+        self._eventid_profilenames_map = {}
+        self._eventid_sessionnames_map = {}
+        self._temp_disabled_profile_names = []
+
+        # We register one session per available session profile.
+        # These registered sessions will be used to access the profile's 
+        # ,,control'' sessions at first. Later, any session can be used
+        # to access the profile's control session.
+        self.register_all_session_profiles(return_objects=True)
+
+        if self.args.auto_connect:
+
+            for session_uuid in self._X2goClient__client_registered_sessions:
+                self._pyhoca_logger('auto-connecting to %s session profile' % s.get_profile_name(), loglevel=x2go.log.loglevel_NOTICE)
+                gevent.spawn(self._auto_connect, session_uuid)
+
+        self.profilemanager_disabled = self.args.disable_profilemanager
+
+        ###
+        ### disable functionality for release versions
+        ###
+        if os.environ.has_key('PYHOCAGUI_DEVELOPMENT') and os.environ['PYHOCAGUI_DEVELOPMENT'] == '1':
+            self.options_disabled = self.args.disable_options
+        else:
+            self._pyhoca_logger('the current release of %s does not support client configuration' % self.appname, loglevel=x2go.log.loglevel_WARN)
+            self.options_disabled = True
+
+        if self.args.session_profile:
+            for profile_name in self.args.session_profile.split(','):
+                if not self._X2goClient__client_registered_sessions_of_profile_name(profile_name):
+                    continue
+                _dummy_id = wx.NewId()
+                self._eventid_profilenames_map[_dummy_id] = profile_name
+                evt = wx.CommandEvent()
+                evt.SetId(_dummy_id)
+                self.start_on_connect = True
+                self.resume_newest_on_connect = True
+                self._pyhoca_logger('opening default session profile %s' % profile_name, loglevel=x2go.log.loglevel_NOTICE)
+                self.OnSessionAuthenticate(evt)
+
+    def _auto_connect(self, session_uuid):
+
+        try:
+            self._X2goClient__connect_session(session_uuid)
+            self._pyhoca_logger('auto-connected session profile %s' % self._X2goClient__get_session_profile_name(session_uuid), loglevel=x2go.log.loglevel_NOTICE)
+        except x2go.AuthenticationException:
+            self._pyhoca_logger('no pubkey authentication available for session profile %s' % self._X2goClient__get_session_profile_name(session_uuid), loglevel=x2go.log.loglevel_NOTICE)
+
+    # wx.App's OnExit method
+    def OnExit(self):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        x2go.x2go_cleanup()
+        # close open password dialogs (or other remaining windows)
+        for _win in self._sub_windows:
+            _win.Close()
+            _win.Destroy()
+        self.taskbar.Close()
+        self.taskbar.Destroy()
+        self.about.Close()
+        self.about.Destroy()
+
+    # the taskbar's OnExit method...
+    def OnTaskbarExit(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._pyhoca_logger('exit application', loglevel=x2go.log.loglevel_INFO, )
+        self.Exit()
+
+    def _start_on_connect(self, evt, session_uuid):
+        if not self._X2goClient__list_sessions(session_uuid):
+            self.OnSessionStart(evt)
+
+    def _resume_newest_on_connect(self, evt, session_uuid):
+        session_infos = self._X2goClient__list_sessions(session_uuid)
+        if session_infos: 
+            newest_session_name = x2go.utils.session_names_by_timestamp(session_infos)[-1]
+            self._resume_on_connect(evt, session_uuid, newest_session_name)
+            return True
+        return False
+
+    def _resume_oldest_on_connect(self, evt, session_uuid):
+        session_infos = self._X2goClient__list_sessions(session_uuid)
+        if session_infos:
+            newest_session_name = x2go.utils.session_names_by_timestamp(session_infos)[0]
+            self._resume_on_connect(evt, session_uuid, newest_session_name)
+            return True
+        return False
+
+    def _resume_all_on_connect(self, evt, session_uuid):
+        session_infos = self._X2goClient__list_sessions(session_uuid)
+        if session_infos:
+            for session_name in session_infos.keys():
+                self._resume_on_connect(evt, session_uuid, session_name)
+            return True
+        return False
+
+    def _resume_on_connect(self, evt, session_uuid, session_name):
+        self._eventid_sessionnames_map[evt.GetId()] = session_name
+        self.OnSessionResume(evt)
+
+    def _post_authenticate(self, evt, session_uuid):
+
+        _resumed = False
+        if self.resume_newest_on_connect:
+            _resumed = self._resume_newest_on_connect(evt, session_uuid)
+        elif self.resume_oldest_on_connect:
+            _resumed = self._resume_oldest_on_connect(evt, session_uuid)
+        elif self.resume_all_on_connect:
+            _resumed = self._resume_all_on_connect(evt, session_uuid)
+        if not _resumed and self.start_on_connect:
+            self._start_on_connect(evt, session_uuid)
+
+    def _do_authenticate(self, evt, session_uuid):
+        profile_name = self.current_profile_name
+        try:
+            self._X2goClient__connect_session(session_uuid, add_to_known_hosts=True)
+            if not self._X2goClient__server_valid_x2gouser(session_uuid):
+                self.notifier.send(_(u'%s - connect failure') % profile_name, _(u'User is not allowed to start X2go sessions!'), icon='session_warning', timeout=10000)
+                self._X2goClient__disconnect_profile(profile_name)
+                self._temp_disabled_profile_names.remove(profile_name)
+            else:
+                self.notifier.send(_(u'%s - connect') % profile_name, _(u'Public SSH key authentication has been successful.'), icon='auth_success', timeout=4000)
+                _dummy = self._X2goClient__list_sessions(session_uuid, refresh_cache=True)
+                self._post_authenticate(evt, session_uuid)
+                self._temp_disabled_profile_names.remove(profile_name)
+        except x2go.AuthenticationException:
+            self._pyhoca_logger('public SSH key authentication to server failed, trying next auth-mechanism', loglevel=x2go.log.loglevel_INFO, )
+            _logon_window = logon.PyHocaGUI_DialogBoxPassword(self, profile_name, caller=self )
+            self._sub_windows.append(_logon_window)
+        except x2go.X2goSSHProxyAuthenticationException:
+            self._pyhoca_logger('public SSH key authentication for SSH proxy failed, trying next auth-mechanism', loglevel=x2go.log.loglevel_INFO, )
+            _logon_window = logon.PyHocaGUI_DialogBoxPassword(self, profile_name, caller=self, sshproxy_auth=True )
+            self._sub_windows.append(_logon_window)
+        except x2go.SSHException, e:
+            self.notifier.send(_(u'%s - connect error') % profile_name, '%s!' % str(e), icon='auth_error', timeout=4000)
+            self._temp_disabled_profile_names.remove(profile_name)
+        except gevent.dns.DNSError, e:
+            self.notifier.send(_(u'%s - connect error') % profile_name, '%s!' % e.strerror, icon='auth_error', timeout=4000)
+            self._temp_disabled_profile_names.remove(profile_name)
+        except gevent.socket.error, e:
+            self.notifier.send(_(u'%s - connect error') % profile_name, '%s!' % e.strerror, icon='auth_error', timeout=4000)
+            self._temp_disabled_profile_names.remove(profile_name)
+        except EOFError, e:
+            self.notifier.send(_(u'%s - connect error') % profile_name, _(u'Authentication protocol communication incomplete! Try again...'), icon='auth_error', timeout=4000)
+            self._temp_disabled_profile_names.remove(profile_name)
+        except x2go.X2goSSHProxyException, e:
+            self.notifier.send(_(u'%s - key error') % profile_name, '%s!' % str(e), icon='auth_error', timeout=4000)
+            self._temp_disabled_profile_names.remove(profile_name)
+        except:
+            self.notifier.send('%s - connect error' % profile_name, 'An unknown error occurred during authentication!', icon='auth_error', timeout=4000)
+            self._temp_disabled_profile_names.remove(profile_name)
+        self.taskbar.SetIconIdle()
+
+
+    def OnSessionAuthenticate(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        self.taskbar.SetIconConnecting(self.current_profile_name)
+        session_uuid = self._X2goClient__register_session(profile_name=self.current_profile_name)
+        self._temp_disabled_profile_names.append(self.current_profile_name)
+        gevent.spawn(self._do_authenticate, evt, session_uuid)
+
+    def OnSessionStart(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        _query_session = self._X2goClient__client_registered_sessions_of_profile_name(self.current_profile_name)[0]
+        session_uuid = self._X2goClient__register_session(profile_name=self.current_profile_name)
+        if self._X2goClient__server_is_alive(session_uuid):
+            gevent.spawn(self._X2goClient__start_session, session_uuid)
+            _dummy = self._X2goClient__list_sessions(session_uuid, refresh_cache=True)
+
+    def OnSessionResume(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        session_uuid = self._X2goClient__client_registered_sessions_of_profile_name(self.current_profile_name)[0]
+        session_name = self._eventid_sessionnames_map[evt.GetId()]
+        if self._X2goClient__server_is_alive(session_uuid):
+            gevent.spawn(self._X2goClient__resume_session, session_name=session_name)
+            _dummy = self._X2goClient__list_sessions(session_uuid, refresh_cache=True)
+        self._eventid_sessionnames_map = {}
+
+    def OnSessionSuspend(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        session_uuid = self._X2goClient__client_registered_sessions_of_profile_name(self.current_profile_name)[0]
+        session_name = self._eventid_sessionnames_map[evt.GetId()]
+        gevent.spawn(self._X2goClient__suspend_session, session_uuid, session_name=session_name)
+        self._eventid_sessionnames_map = {}
+
+    def OnSessionTerminate(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        session_uuid = self._X2goClient__client_registered_sessions_of_profile_name(self.current_profile_name)[0]
+        session_name = self._eventid_sessionnames_map[evt.GetId()]
+        gevent.spawn(self._X2goClient__terminate_session, session_uuid, session_name=session_name)
+        self._eventid_sessionnames_map = {}
+
+    def OnCleanSessions(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        session_uuid = self._X2goClient__client_registered_sessions_of_profile_name(self.current_profile_name)[0]
+        session_names = self._X2goClient__server_running_sessions(session_uuid) + self._X2goClient__server_suspended_sessions(session_uuid)
+        if self._X2goClient__server_is_alive(session_uuid):
+            if session_names:
+                _notify_text = _(u'Cleaning X2go sessions...')
+                self._hide_notifications_map[self.current_profile_name] = []
+                for session_name in session_names:
+                    _notify_text += '\n%s' % session_name
+                    self._hide_notifications_map[self.current_profile_name].append(session_name)
+                self.notifier.send(self.current_profile_name, _notify_text, icon='session_cleanall', timeout=10000)
+            gevent.spawn(self._X2goClient__clean_sessions, session_uuid)
+
+    def OnSessionDisconnect(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        session_uuid = self._X2goClient__client_registered_sessions_of_profile_name(self.current_profile_name)[0]
+        # disconnect all profile sessions
+        if self._X2goClient__server_is_alive(session_uuid):
+            self._X2goClient__disconnect_profile(self.current_profile_name)
+            gevent.sleep(2)
+            if not self._X2goClient__is_session_connected(session_uuid):
+                self.notifier.send(_(u'%s - disconnect') % self.current_profile_name, _(u'X2go Profile is now disconnected.'), icon='auth_disconnect', timeout=4000)
+
+    def OnProfileAdd(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._pyhoca_logger('adding new X2go session profile', loglevel=x2go.log.loglevel_INFO, )
+        profilemanager.PyHocaGUI_ProfileManager(self, 'ADD', profile_name=_(u'New Session Profile'))
+
+    def OnProfileEdit(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        self._pyhoca_logger('editing session profile %s' % self.current_profile_name, loglevel=x2go.log.loglevel_INFO, )
+        profilemanager.PyHocaGUI_ProfileManager(self, 'EDIT', profile_name=self.current_profile_name)
+
+    def OnProfileEditWhileConnected(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        self._pyhoca_logger('editing session profile %s' % self.current_profile_name, loglevel=x2go.log.loglevel_INFO, )
+        profilemanager.PyHocaGUI_ProfileManager(self, 'EDIT_CONNECTED', profile_name=self.current_profile_name)
+
+    def OnProfileDelete(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        self._pyhoca_logger('deleting session profile %s' % self.current_profile_name, loglevel=x2go.log.loglevel_INFO, )
+        try:
+            self.session_profiles.delete_profile(self.current_profile_name)
+            self.notifier.send(title=_(u'%s - profile deleted') % self.current_profile_name, text=_(u'The session profile has been deleted.'), icon='profile_delete')
+        except:
+            pass
+
+    def OnShareLocalFolder(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.current_profile_name = self._eventid_profilenames_map[evt.GetId()]
+        self._pyhoca_logger('Evoking file dialog for ,,Share Local Folder\'\' menu item action', loglevel=x2go.log.loglevel_NOTICE, )
+        shared_folder = os.path.expanduser('~')
+        if not os.path.exists(shared_folder):
+            shared_folder = os.getcwd()
+        dlg = wx.DirDialog(
+            self.about, message=_(u"%s - share local folder with sessions of this profile") % self.current_profile_name, style=1, defaultPath=shared_folder)
+        # Show the dialog and retrieve the user response. If it is the OK response,
+        # process the data.
+        if dlg.ShowModal() == wx.ID_OK:
+            # This returns a Python list of files that were selected.
+            self._X2goClient__share_local_folder_with_session(profile_name=self.current_profile_name, folder_name=str(dlg.GetPath()))
+
+    def OnListSessions(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._pyhoca_logger('The ,,List Sessions\'\' information window is not implemented yet', loglevel=x2go.log.loglevel_WARN, )
+
+    def OnAbout(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._pyhoca_logger('Showing the ,,About...\'\' window', loglevel=x2go.log.loglevel_INFO, )
+        self.about.Show(True)
+
+    def OnOptions(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._pyhoca_logger('The ,,Options\'\' configuration window is not implemented yet', loglevel=x2go.log.loglevel_WARN, )
+
+    def OnClose(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.OnExit(evt)
+
+    ##
+    ## Python X2go (X2goClient) notification HOOK's...
+    ##
+
+    # this hook gets called from Python X2go classes if profile_name's control session has died...
+    def HOOK_on_control_session_death(self, profile_name):
+        self.notifier.send(_(u'%s - channel error') % profile_name, _(u'Lost connection to server %s unexpectedly! Try to re-authenticate to the server...') % profile_name, icon='session_warning', timeout=10000)
+
+    def HOOK_no_such_command(self, cmd, profile_name='UNKNOWN', session_name='UNKNOWN'):
+        self.notifier.send(_(u'%s - session failure') % profile_name, _('The command ,,%s\'\' is not available on X2go server\n%s).') % (cmd, session_name), icon='session_error', timeout=10000)
+    def HOOK_rforward_request_denied(self, profile_name='UNKNOWN', session_name='UNKNOWN', server_port=0):
+        self.notifier.send(_(u'%s - session warning') % profile_name, _(u'Reverse TCP port forwarding request for session %s to server port %s has been denied by the X2go server. This is a common issue with SSH, it might help to restart the X2go server\'s SSH daemon.') % (session_name, server_port), icon='session_warning', timeout=10000)
+    def HOOK_forwarding_tunnel_setup_failed(self, profile_name='UNKNOWN', session_name='UNKNOWN', chain_host='UNKNOWN', chain_port=0):
+        self.notifier.send(_(u'%s - session failure') % profile_name, _(u'Forwarding tunnel request to [%s]:%s for session %s was denied by remote X2go/SSH server. Session startup failed.') % (chain_host, chain_port, session_name), icon='session_error', timeout=10000)
+    def HOOK_pulseaudio_not_supported_in_RDPsession(self):
+        self.notifier.send(_(u'%s - audio warning') % self.appname, _(u'The X2go PulseAudio system is not available within Remote Desktop sessions.'), icon='audio_error', timeout=10000)
+    def HOOK_pulseaudio_server_startup_failed(self):
+        self.notifier.send(_(u'%s - audio error') % self.appname, _(u'The X2go PulseAudio system could not be started.'), icon='audio_error', timeout=10000)
+    def HOOK_pulseaudio_server_died(self):
+        self.notifier.send(_(u'%s - audio error') % self.appname, _(u'The X2go PulseAudio system has died unexpectedly.'), icon='audio_error', timeout=10000)
+    def HOOK_on_sound_tunnel_failed(self, profile_name='UNKNOWN', session_name='UNKNOWN'):
+        self.notifier.send(_(u'%s - audio problem') % profile_name, _(u'The audio connection could not be set up for this session.\n%s') % session_name, icon='session_warning', timeout=5000)
+
+    # this hook gets called from Python X2go classes if a print job is coming in and the print action is ,,DIALOG''...
+    def HOOK_open_print_dialog(self, filename, profile_name='UNKNOWN', session_name='UNKNOWN'):
+        self.notifier.send(_(u'%s - print job') % profile_name, _(u'Opening print job dialog not implemented yet!!!\n%s')  % session_name, icon='session_printing', timeout=5000)
+
+        #_p = wx.Dialog(None, -1, '%s (%s)' % (session_name, profile_name), size=(450,380))
+        #print 1
+        #_p_data = wx.PrintData()
+        #print 2
+        #_p_data.SetFilename(filename)
+        #print 3
+        #_p_dialogdata = wx.PrintDialogData(_p_data)
+        #print 4
+        ##_p_dialog = wx.PrintDialog(_p, _p_dialogdata)
+        #print 5
+        ##_p_dialog.ShowModal()
+        #print 6
+        ##_p.Fit()
+        #print 7
+        ##_p.Layout()
+        #print 8
+        ##_p.Show(True)
+        #print 9
+    def HOOK_printaction_error(self, filename, profile_name='UNKNOWN', session_name='UNKNOWN', err_msg='GENERIC_ERROR'):
+        self.notifier.send(_(u'%s - print error') % profile_name, _(u'%s\n...caused by session\n%s')  % (err_msg, session_name), icon='session_error', timeout=5000)
+    def HOOK_on_session_has_started_by_me(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
+        self.notifier.send(_(u'%s - start') % profile_name, _(u'New X2go session starting up...\n%s') % session_name, icon='session_start', timeout=5000)
+    def HOOK_on_session_has_started_by_other(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
+        self.notifier.send(_(u'%s - start') % profile_name, _(u'Another client started X2go session\n%s') % session_name, icon='session_start', timeout=5000)
+    def HOOK_on_session_has_resumed_by_me(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
+        self.notifier.send(_(u'%s - resume') % profile_name, _(u'Resuming X2go session...\n%s') % session_name, icon='session_resume', timeout=5000)
+    def HOOK_on_session_has_resumed_by_other(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
+        self.notifier.send(_(u'%s - resume') % profile_name, _(u'Another client resumed X2go session\n%s') % session_name, icon='session_resume', timeout=5000)
+    def HOOK_on_found_session_running_after_connect(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
+        gevent.spawn_later(5, self.notifier.send, _(u'%s - running') % profile_name, _(u'Found already running session\n%s') %  session_name, icon='session_resume', timeout=5000)
+    def HOOK_on_session_has_been_suspended(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
+        self.notifier.send(_(u'%s - suspend') % profile_name, _(u'X2go Session has been suspended\n%s') % session_name, icon='session_suspend', timeout=5000)
+    def HOOK_on_session_has_terminated(self, session_uuid='UNKNOWN', profile_name='UNKNOWN', session_name='UNKNOWN'):
+        # avoid notification if X2goClient.clean_sessions has been used to terminate sessions
+        if self._hide_notifications_map.has_key(profile_name) and session_name in self._hide_notifications_map[profile_name]:
+            self._hide_notifications_map[profile_name].remove(session_name)
+            if not self._hide_notifications_map[profile_name]:
+                del self._hide_notifications_map[profile_name]
+        else:
+            self.notifier.send(_(u'%s - terminate') % profile_name, _(u'X2go Session has terminated\n%s') % session_name, icon='session_terminate', timeout=5000)
diff --git a/pyhoca/wxgui/frontend.pyc b/pyhoca/wxgui/frontend.pyc
new file mode 100644
index 0000000..7cf3372
Binary files /dev/null and b/pyhoca/wxgui/frontend.pyc differ
diff --git a/pyhoca/wxgui/logon.py b/pyhoca/wxgui/logon.py
new file mode 100644
index 0000000..a42c238
--- /dev/null
+++ b/pyhoca/wxgui/logon.py
@@ -0,0 +1,323 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+modules ={}
+
+try:
+    import wxversion
+    wxversion.select('2.9')
+except: pass
+
+try:
+    import wxversion
+    wxversion.select('2.8')
+except: pass
+
+# Python X2go
+import x2go
+
+import gevent
+import gevent.monkey
+gevent.monkey.patch_all()
+
+import wx
+import wx.lib.scrolledpanel as scrolled
+import wx.lib.mixins.listctrl as listmix
+
+import time
+import os
+import sys
+import platform
+import types
+import copy
+import threading
+
+# PyHoca-GUI modules
+# ... NONE ...
+
+if os.environ.has_key('DESKTOP_SESSION'):
+    WINDOW_MANAGER = os.environ['DESKTOP_SESSION']
+else:
+    WINDOW_MANAGER = 'generic'
+
+class PyHocaGUI_DialogBoxPassword(wx.Dialog):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, profile_name, caller=None, sshproxy_auth=False): 
+
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+        self._pyhoca_logger('password dialog box started', loglevel=x2go.loglevel_INFO, )
+
+        self.sshproxy_auth = sshproxy_auth
+
+        self.current_profile_name = profile_name
+        self.current_profile_config = self._PyHocaGUI.session_profiles.get_profile_config(profile_name)
+
+        wx.Dialog.__init__(self, None, -1, profile_name)
+
+        if self.sshproxy_auth:
+            self.sshproxy_started = False
+            self.SetTitle(_(u'%s (via %s)') % (profile_name, self.current_profile_config['sshproxyhost']))
+
+        self.userLbl = wx.StaticText(self, wx.ID_ANY, _(u'Username')+':', size=(-1, -1)) 
+        self.userTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER, size=(120, -1)) 
+        self.passwordLbl = wx.StaticText(self, wx.ID_ANY, _(u'Password')+':', size=(-1, -1)) 
+        self.passwordTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER|wx.TE_PASSWORD, size=(120, -1)) 
+        self.passwordTxt.SetFocus()
+        self.loginBtn = wx.Button(self, wx.ID_OK, _(u'Authenticate'))
+        self.loginBtn.SetDefault()
+
+        # widgets 
+        if self.sshproxy_auth:
+            self.sshProxyUserLbl = wx.StaticText(self, wx.ID_ANY, _(u'Username')+':', size=(-1, -1)) 
+            self.sshProxyUserTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER, size=(120, -1)) 
+            self.sshProxyPasswordLbl = wx.StaticText(self, wx.ID_ANY, _(u'Password')+':', size=(-1, -1)) 
+            self.sshProxyPasswordTxt = wx.TextCtrl(self, wx.ID_ANY, '', style=wx.TE_PROCESS_ENTER|wx.TE_PASSWORD, size=(120, -1)) 
+            self.sshProxyPasswordTxt.SetFocus()
+            self.sshProxyLoginBtn = wx.Button(self, wx.ID_OK, _(u'  Start SSH tunnel  '))
+            self.sshProxyLoginBtn.SetDefault()
+
+            headerWidth = max(self.userLbl.GetSize().GetWidth(), self.passwordLbl.GetSize().GetWidth()) + 150
+            sshProxyHeaderWidth = max(self.sshProxyUserLbl.GetSize().GetWidth(), self.sshProxyPasswordLbl.GetSize().GetWidth()) + 150
+
+            self.headerLbl = wx.StaticText(self, wx.ID_ANY, _(u'Session login')+':', size=(headerWidth, -1))
+            self.sshProxyHeaderLbl = wx.StaticText(self, wx.ID_ANY, _(u'SSH proxy server login')+':', size=(sshProxyHeaderWidth, -1))
+            self.headerLbl.SetFont(wx.Font(-1, wx.DEFAULT, wx.NORMAL, wx.FONTWEIGHT_BOLD, 0, ""))
+            self.sshProxyHeaderLbl.SetFont(wx.Font(-1, wx.DEFAULT, wx.NORMAL, wx.FONTWEIGHT_BOLD, 0, ""))
+
+            self.headerLbl.Enable(False)
+            self.userLbl.Enable(False)
+            self.userTxt.Enable(False)
+            self.passwordLbl.Enable(False)
+            self.passwordTxt.Enable(False)
+            self.loginBtn.Enable(False)
+
+        self.cancelBtn = wx.Button(self, wx.ID_CANCEL, _(u'Cancel'))
+
+        if self.sshproxy_auth:
+            self.Bind(wx.EVT_BUTTON, self.OnLogin, self.sshProxyLoginBtn)
+            self.Bind(wx.EVT_TEXT_ENTER, self.OnLogin, self.sshProxyUserTxt)
+            self.Bind(wx.EVT_TEXT_ENTER, self.OnLogin, self.sshProxyPasswordTxt)
+
+        self.Bind(wx.EVT_BUTTON, self.OnLogin, self.loginBtn)
+        self.Bind(wx.EVT_TEXT_ENTER, self.OnLogin, self.userTxt)
+        self.Bind(wx.EVT_TEXT_ENTER, self.OnLogin, self.passwordTxt)
+        self.Bind(wx.EVT_BUTTON, self.OnCancel, self.cancelBtn)
+
+        btnSizer = wx.BoxSizer(wx.HORIZONTAL)
+        if not self.sshproxy_auth:
+            credSizer = wx.GridBagSizer(hgap=2, vgap=2)
+        mainSizer = wx.BoxSizer(wx.VERTICAL)
+
+        # sizer / layout 
+        if self.sshproxy_auth:
+
+            credSizer = wx.GridBagSizer(hgap=4, vgap=2)
+
+            credSizer.Add(self.sshProxyHeaderLbl, pos=(0,0), span=(1,2), flag=wx.ALL|wx.EXPAND, border=5)
+            credSizer.Add(self.headerLbl, pos=(0,2), span=(1,2), flag=wx.ALL|wx.EXPAND, border=5)
+
+            credSizer.Add(self.sshProxyUserLbl, pos=(1,0), flag=wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5)
+            credSizer.Add(self.sshProxyUserTxt, pos=(1,1), flag=wx.ALL, border=5)
+
+            credSizer.Add(self.userLbl, pos=(1,2), flag=wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) 
+            credSizer.Add(self.userTxt, pos=(1,3), flag=wx.ALL, border=5) 
+
+        else:
+            credSizer.Add(self.userLbl, pos=(0,0), flag=wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) 
+            credSizer.Add(self.userTxt, pos=(0,1), flag=wx.ALL, border=5) 
+
+        if self.sshproxy_auth:
+
+            credSizer.Add(self.sshProxyPasswordLbl, pos=(2,0), flag=wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5)
+            credSizer.Add(self.sshProxyPasswordTxt, pos=(2,1), flag=wx.ALL, border=5)
+
+            credSizer.Add(self.passwordLbl, pos=(2,2), flag=wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) 
+            credSizer.Add(self.passwordTxt, pos=(2,3), flag=wx.ALL, border=5)
+
+        else:
+            credSizer.Add(self.passwordLbl, pos=(1,0), flag=wx.LEFT|wx.ALIGN_CENTER_VERTICAL, border=5) 
+            credSizer.Add(self.passwordTxt, pos=(1,1), flag=wx.ALL, border=5)
+
+        if self.sshproxy_auth:
+            btnSizer.Add(self.sshProxyLoginBtn, 0, wx.ALL, 5)
+        btnSizer.Add(self.loginBtn, 0, wx.ALL, 5) 
+        btnSizer.Add(self.cancelBtn, 0, wx.ALL, 5) 
+
+        mainSizer.Add(credSizer, 0, wx.ALL, 5) 
+        mainSizer.Add(btnSizer, 0, wx.ALL|wx.ALIGN_RIGHT, 5)
+
+        if self.current_profile_config.has_key('user'):
+            self.userTxt.SetValue(self.current_profile_config['user'])
+        else:
+            self.userTxt.SetValue(self._PyHocaGUI.args.username)
+
+        if self.sshproxy_auth:
+
+            if self.current_profile_config.has_key('sshproxyuser'):
+                self.sshProxyUserTxt.SetValue(self.current_profile_config['sshproxyuser'])
+
+        # Logged in variable 
+        self.loggedIn = False
+
+        self.SetSizerAndFit(mainSizer) 
+        self.Layout()
+
+        maxX, maxY = wx.GetDisplaySize()
+
+        if (x2go.X2GOCLIENT_OS == 'Linux') and (WINDOW_MANAGER == 'gnome'):
+            self.Move((maxX - (self.GetSize().GetWidth() + 20), 35))
+        else:
+            self.Move((maxX - (self.GetSize().GetWidth() + 20), maxY - (self.GetSize().GetHeight() + 70), ))
+
+        self.Show()
+
+    def OnLogin(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        username = self.userTxt.GetValue()
+        password = self.passwordTxt.GetValue()
+        if self.sshproxy_auth:
+            sshproxy_user = self.sshProxyUserTxt.GetValue()
+            sshproxy_password = self.sshProxyPasswordTxt.GetValue()
+            if len(sshproxy_user) == 0:
+                return
+            if len(sshproxy_password) == 0:
+                return
+        else:
+            sshproxy_user = sshproxy_password = None
+
+        if (not self.sshproxy_auth) or self.sshproxy_started:
+            if len(username) == 0:
+                return
+            if len(password) == 0:
+                return
+
+        if self.sshproxy_auth and (not self.sshproxy_started):
+            force_password_auth=False
+        else:
+            force_password_auth=True
+
+        session_uuid = self._PyHocaGUI._X2goClient__client_registered_sessions_of_profile_name(self.current_profile_name)[0]
+        try:
+            wx.BeginBusyCursor()
+            self._PyHocaGUI._X2goClient__connect_session(session_uuid, 
+                                                         username=username, 
+                                                         password=password, 
+                                                         force_password_auth=force_password_auth, 
+                                                         add_to_known_hosts=True,
+                                                         sshproxy_user=sshproxy_user, 
+                                                         sshproxy_password=sshproxy_password)
+            if not self._PyHocaGUI._X2goClient__server_valid_x2gouser(session_uuid):
+                self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name, 
+                                                 title=_(u'%s - connect failure') % self.current_profile_name, 
+                                                 text=_(u'User is not allowed to start X2go sessions!'),
+                                                 icon='auth_error')
+                self._PyHocaGUI._X2goClient__disconnect_profile(self.current_profile_name)
+            else:
+                self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name, 
+                                             title=_(u'%s - connect') % self.current_profile_name,
+                                             text=_(u'Authentication has been successful.'),
+                                             icon='auth_success')
+
+        except x2go.AuthenticationException:
+            if self.sshproxy_auth and (not self.sshproxy_started):
+                wx.EndBusyCursor()
+                self.sshproxy_started = True
+                self.headerLbl.Enable(True)
+                self.userLbl.Enable(True)
+                self.userTxt.Enable(True)
+                self.passwordLbl.Enable(True)
+                self.passwordTxt.Enable(True)
+                self.passwordTxt.SetFocus()
+                self.loginBtn.Enable(True)
+                self.loginBtn.SetDefault()
+                self.sshProxyHeaderLbl.Enable(False)
+                self.sshProxyUserLbl.Enable(False)
+                self.sshProxyUserTxt.Enable(False)
+                self.sshProxyPasswordLbl.Enable(False)
+                self.sshProxyPasswordTxt.Enable(False)
+                self.sshProxyLoginBtn.Enable(False)
+                self.sshProxyLoginBtn.SetLabel(_(u'SSH tunnel started'))
+                return
+            else:
+                self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name, 
+                                                 title=_(u'%s - connect failure') % self.current_profile_name, 
+                                                 text=_(u'Authentication failed!'),
+                                                 icon='auth_failed')
+        except x2go.X2goSSHProxyAuthenticationException:
+            wx.EndBusyCursor()
+            self.sshProxyPasswordTxt.SetValue('')
+            self._PyHocaGUI.notifier.send(title=_(u'%s - ssh proxy') % self.current_profile_name, 
+                                          text=_(u'Authentication to the SSH proxy server failed!'),
+                                          icon='auth_failed')
+            return
+
+        except gevent.dns.DNSError, e:
+            self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name, 
+                                             title=_(u'%s - connect error') % self.current_profile_name, 
+                                             text='%s!' % e.strerror,
+                                             icon='auth_error')
+
+        except gevent.socket.error, e:
+            self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name, 
+                                             title=_(u'%s - connect error') % self.current_profile_name, 
+                                             text='%s!' % e.strerror,
+                                             icon='auth_error')
+
+        except x2go.X2goSSHProxyException, e:
+            self._PyHocaGUI.notifier.prepare(_(u'%s - key error') % profile_name, '%s!' % str(e), icon='auth_error', timeout=4000)
+
+        except:
+            self._PyHocaGUI.notifier.prepare('AUTH_%s' % self.current_profile_name, 
+                                             title=_(u'%s - connect error') % self.current_profile_name, 
+                                             text=_(u'An unknown error occured during authentication!'),
+                                             icon='auth_error')
+
+        self._PyHocaGUI.notifier.send(self.current_profile_name, context='AUTH_%s' % self.current_profile_name, timeout=4000)
+        wx.SetCursor(wx.StockCursor(wx.CURSOR_ARROW))
+        wx.EndBusyCursor()
+        if self._PyHocaGUI._X2goClient__is_session_connected(session_uuid):
+            _dummy = self._PyHocaGUI.list_sessions(session_uuid, refresh_cache=True)
+            self._PyHocaGUI._post_authenticate(evt, session_uuid)
+        self.sshproxy_started = False
+        self.Destroy()
+
+    def OnCancel(self, evt):
+        self.Destroy()
+
+    def Destroy(self):
+        try:
+            self._PyHocaGUI._sub_windows.remove(self)
+        except ValueError:
+            pass
+        try:
+            self._PyHocaGUI._temp_disabled_profile_names.remove(self.current_profile_name)
+        except ValueError:
+            pass
+        wx.Dialog.Destroy(self)
+
+
+
diff --git a/pyhoca/wxgui/logon.pyc b/pyhoca/wxgui/logon.pyc
new file mode 100644
index 0000000..f93703a
Binary files /dev/null and b/pyhoca/wxgui/logon.pyc differ
diff --git a/pyhoca/wxgui/menus_taskbar.py b/pyhoca/wxgui/menus_taskbar.py
new file mode 100644
index 0000000..4b8075c
--- /dev/null
+++ b/pyhoca/wxgui/menus_taskbar.py
@@ -0,0 +1,331 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+try:
+    import wxversion
+    wxversion.select('2.9')
+except: pass
+
+try:
+    import wxversion
+    wxversion.select('2.8')
+except: pass
+
+import wx
+
+class PyHocaGUI_Menu_TaskbarManageProfile(wx.Menu):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, caller=None, profile_name=None):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+        wx.Menu.__init__(self)
+
+        ID_EDITPROFILE = wx.NewId()
+        ID_DELETEPROFILE = wx.NewId()
+
+        # preparing profile_name information for the main PyHocaGUI instance
+        self._PyHocaGUI._eventid_profilenames_map[ID_EDITPROFILE] = \
+            self._PyHocaGUI._eventid_profilenames_map[ID_DELETEPROFILE] = profile_name
+
+        self.Append(text=_(u"Edit Profile"), id=ID_EDITPROFILE)
+        self.AppendSeparator()
+        self.Append(text=_(u"Delete Profile"), id=ID_DELETEPROFILE)
+
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnProfileEdit, id=ID_EDITPROFILE)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnProfileDelete, id=ID_DELETEPROFILE)
+
+
+class PyHocaGUI_Menu_TaskbarOptionsManager(wx.Menu):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, caller=None):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+        wx.Menu.__init__(self)
+
+        ID_ABOUT = wx.NewId()
+        self.Append(id=ID_ABOUT, text=_(u"About %s ...") % self._PyHocaGUI.appname)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnAbout, id=ID_ABOUT)
+
+        self.AppendSeparator()
+
+        ID_PROFILEMANAGER = wx.NewId()
+        _maintain_profiles_item = self.AppendMenu(id=ID_PROFILEMANAGER, 
+                        text=_(u"Profile Manager"), 
+                        submenu=PyHocaGUI_Menu_TaskbarProfileNames(self._PyHocaGUI, 
+                                                                   caller=self,
+                                                                   disabled_profiles=self._PyHocaGUI.client_connected_profiles(return_profile_names=True),
+                                                                   submenu=PyHocaGUI_Menu_TaskbarManageProfile))
+        if self._PyHocaGUI.profilemanager_disabled:
+            _maintain_profiles_item.Enable(False)
+
+        self.AppendSeparator()
+
+        ID_OPTIONS = wx.NewId()
+        _options_item = self.Append(id=ID_OPTIONS, text=_(u"Client Options"))
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnOptions, id=ID_OPTIONS)
+        if self._PyHocaGUI.options_disabled:
+            _options_item.Enable(False)
+
+        self.AppendSeparator()
+
+        ID_EXIT = wx.NewId()
+        self.Append(id=ID_EXIT, text=_("E&xit"))
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnTaskbarExit, id=ID_EXIT)
+
+
+class PyHocaGUI_Menu_TaskbarSessionActions(wx.Menu):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, caller=None, profile_name=None, session_name=None, status=None):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+        wx.Menu.__init__(self)
+
+        ID_TRANSFERSESSION = wx.NewId()
+        ID_RESUMESESSION = wx.NewId()
+        ID_SUSPENDSESSION = wx.NewId()
+        ID_TERMINATESESSION = wx.NewId()
+
+        # preparing profile_name information for the main PyHocaGUI instance
+        self._PyHocaGUI._eventid_profilenames_map[ID_TRANSFERSESSION] = \
+            self._PyHocaGUI._eventid_profilenames_map[ID_RESUMESESSION] = \
+            self._PyHocaGUI._eventid_profilenames_map[ID_SUSPENDSESSION] = \
+            self._PyHocaGUI._eventid_profilenames_map[ID_TERMINATESESSION] = profile_name
+
+        # preparing session_name information for the main PyHocaGUI instance
+        self._PyHocaGUI._eventid_sessionnames_map[ID_TRANSFERSESSION] = \
+            self._PyHocaGUI._eventid_sessionnames_map[ID_RESUMESESSION] = \
+            self._PyHocaGUI._eventid_sessionnames_map[ID_SUSPENDSESSION] = \
+            self._PyHocaGUI._eventid_sessionnames_map[ID_TERMINATESESSION] = session_name
+
+        if status == 'S':
+            self.Append(text=_("Resume Session"), id=ID_RESUMESESSION)
+        elif status == 'R':
+            if not session_name in self._PyHocaGUI.client_associated_sessions_of_profile_name(profile_name, return_session_names=True):
+                self.Append(text=_(u"Transfer Session"), id=ID_TRANSFERSESSION)
+            self.Append(text=_(u"Suspend Session"), id=ID_SUSPENDSESSION)
+
+        self.Append(text=_(u"Terminate Session"), id=ID_TERMINATESESSION)
+
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionResume, id=ID_RESUMESESSION)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionResume, id=ID_TRANSFERSESSION)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionSuspend, id=ID_SUSPENDSESSION)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionTerminate, id=ID_TERMINATESESSION)
+
+
+class PyHocaGUI_Menu_TaskbarSessionProfile(wx.Menu):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, caller=None, profile_name=None):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+        wx.Menu.__init__(self)
+
+        ID_SESSIONSTART=wx.NewId()
+        ID_CLEANSESSIONS = wx.NewId()
+        ID_EDITPROFILEWHILECONNECTED = wx.NewId()
+        ID_SHARELOCALFOLDER = wx.NewId()
+        ID_DISCONNECT = wx.NewId()
+
+        current_profile_config = self._PyHocaGUI.get_profile_config(profile_name)
+
+        # preparing profile_name information for the main PyHocaGUI instance
+        self._PyHocaGUI._eventid_profilenames_map[ID_SESSIONSTART] = \
+            self._PyHocaGUI._eventid_profilenames_map[ID_CLEANSESSIONS] = \
+            self._PyHocaGUI._eventid_profilenames_map[ID_EDITPROFILEWHILECONNECTED] = \
+            self._PyHocaGUI._eventid_profilenames_map[ID_SHARELOCALFOLDER] = \
+            self._PyHocaGUI._eventid_profilenames_map[ID_DISCONNECT] = profile_name
+
+        self.Append(id=ID_SESSIONSTART, text=_(u"Start &new Session"))
+        self.AppendSeparator()
+
+        _query_session_uuid = self._PyHocaGUI.client_connected_sessions_of_profile_name(profile_name, return_objects=False)[0]
+        _session_list = self._PyHocaGUI.list_sessions(_query_session_uuid)
+
+        if _session_list:
+
+            for session_name in _session_list.keys():
+
+                _s_id = wx.NewId()
+
+                if _session_list[session_name].status == 'R':
+                    state = _(u'Running')
+                elif _session_list[session_name].status == 'S':
+                    state = _(u'Suspended')
+                self.AppendMenu(id=_s_id, text=u'%s: »%s«' % (state, session_name), 
+                                submenu=PyHocaGUI_Menu_TaskbarSessionActions(self._PyHocaGUI, caller=self,
+                                                                             profile_name=profile_name,
+                                                                             session_name=session_name,
+                                                                             status=_session_list[session_name].status,
+                                                                            )
+                               )
+
+        if _session_list.keys():
+            self.Append(id=ID_CLEANSESSIONS, text=_(u"&Clean all sessions"))
+            self.AppendSeparator()
+        self.Append(id=ID_EDITPROFILEWHILECONNECTED, text=_(u"Customize &profile"))
+        if current_profile_config['useexports']:
+            _share_folder = self.Append(id=ID_SHARELOCALFOLDER, text=_(u"Share local &folder"))
+            if not self._PyHocaGUI._X2goClient__client_associated_sessions_of_profile_name(profile_name, return_objects=False):
+                _share_folder.Enable(False)
+
+        self.AppendSeparator()
+        self.Append(id=ID_DISCONNECT, text=_(u"&Disconnect from Server"))
+
+        self._PyHocaGUI.current_profile_name = profile_name
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionStart, id=ID_SESSIONSTART)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnCleanSessions, id=ID_CLEANSESSIONS)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnProfileEditWhileConnected, id=ID_EDITPROFILEWHILECONNECTED)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnShareLocalFolder, id=ID_SHARELOCALFOLDER)
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnSessionDisconnect, id=ID_DISCONNECT)
+
+
+class PyHocaGUI_Menu_TaskbarProfileNames(wx.Menu):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, caller=None, filter_profiles=None, disabled_profiles=None, bind_method=None, submenu=None):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+
+        wx.Menu.__init__(self)
+
+        if type(caller) == PyHocaGUI_Menu_TaskbarOptionsManager:
+            ID_ADDPROFILE = wx.NewId()
+            self.Append(id=ID_ADDPROFILE, text=_(u"Add Profile"))
+            self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnProfileAdd, id=ID_ADDPROFILE)
+
+            self.AppendSeparator()
+
+        _profile_names = self._PyHocaGUI.session_profiles.profile_names
+        _profile_names.sort()
+        if filter_profiles:
+            _profile_names = [ p for p in _profile_names if p not in filter_profiles ]
+        for profile_name in _profile_names:
+            _this_id = wx.NewId()
+            self._PyHocaGUI._eventid_profilenames_map[_this_id] = profile_name
+            _menu_profile_name = self._PyHocaGUI.show_profile_metatypes and '%s (%s)' % (profile_name, self._PyHocaGUI.get_profile_metatype(profile_name)) or profile_name
+            if submenu is not None:
+                _sub = self.AppendMenu(text=_menu_profile_name, id=_this_id, submenu=submenu(self._PyHocaGUI, caller=self, profile_name=profile_name))
+                if disabled_profiles and profile_name in disabled_profiles:
+                    _sub.Enable(False)
+            else:
+                _item = self.Append(text=_menu_profile_name, id=_this_id)
+                if disabled_profiles and profile_name in disabled_profiles:
+                    _item.Enable(False)
+                if bind_method is not None:
+                    self._PyHocaGUI.Bind(wx.EVT_MENU, bind_method, id=_this_id)
+                    self._PyHocaGUI.Bind(wx.EVT_UPDATE_UI, self.OnUpdateUI, id=_this_id)
+
+        if not _profile_names:
+            _dummy = self.Append(text=_('No session profiles defined'), id=wx.NewId())
+            _dummy.Enable(False)
+
+    def OnUpdateUI(self, evt):
+        profile_name = self._PyHocaGUI._eventid_profilenames_map[evt.GetId()]
+        if profile_name in self._PyHocaGUI._temp_disabled_profile_names:
+            self._pyhoca_logger('Updating UI, temporarily disabling session profile %s' % profile_name)
+            self.Enable(id=evt.GetId(), enable=False)
+        elif profile_name not in self._PyHocaGUI._temp_disabled_profile_names:
+            self._pyhoca_logger('Updating UI, re-enabling session profile %s' % profile_name)
+            self.Enable(id=evt.GetId(), enable=True)
+
+
+class PyHocaGUI_Menu_TaskbarSessionManager(wx.Menu):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, caller=None):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+        wx.Menu.__init__(self)
+
+        ID_AUTHENTICATE = wx.NewId()
+        ID_EXIT = wx.NewId()
+
+        _auth_menu_text = self._PyHocaGUI.start_on_connect and _(u'Start/Resume Session') or _(u'Connect Server')
+        self.AppendMenu(id=ID_AUTHENTICATE, 
+                        text=_auth_menu_text, 
+                        submenu=PyHocaGUI_Menu_TaskbarProfileNames(self._PyHocaGUI, 
+                                                                   caller=self,
+                                                                   filter_profiles=self._PyHocaGUI.client_connected_sessions(return_profile_names=True),
+                                                                   bind_method=self._PyHocaGUI.OnSessionAuthenticate))
+        self.AppendSeparator()
+
+        _connected_sessions = False
+        for profile_name in self._PyHocaGUI.session_profiles.profile_names:
+            if profile_name in self._PyHocaGUI._X2goClient__client_connected_sessions(return_profile_names=True):
+                _connected_sessions = True
+                _this_id = wx.NewId()
+
+                _menu_profile_name = self._PyHocaGUI.show_profile_metatypes and '%s (%s)' % (profile_name, self._PyHocaGUI.get_profile_metatype(profile_name)) or profile_name
+                self.AppendMenu(text=_menu_profile_name, 
+                                id=_this_id, 
+                                submenu=PyHocaGUI_Menu_TaskbarSessionProfile(self._PyHocaGUI, caller=self, profile_name=profile_name))
+
+        if _connected_sessions:
+            self.AppendSeparator()
+
+        self.Append(id=ID_EXIT, text=_(u"E&xit"))
+        self._PyHocaGUI.Bind(wx.EVT_MENU, self._PyHocaGUI.OnTaskbarExit, id=ID_EXIT)
+
+
diff --git a/pyhoca/wxgui/menus_taskbar.pyc b/pyhoca/wxgui/menus_taskbar.pyc
new file mode 100644
index 0000000..eb0cdac
Binary files /dev/null and b/pyhoca/wxgui/menus_taskbar.pyc differ
diff --git a/pyhoca/wxgui/notify.py b/pyhoca/wxgui/notify.py
new file mode 100644
index 0000000..5f17abc
--- /dev/null
+++ b/pyhoca/wxgui/notify.py
@@ -0,0 +1,173 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+import os
+import wx
+from x2go import X2GOCLIENT_OS
+from x2go import log
+if X2GOCLIENT_OS in ('Linux', 'Mac'):
+    import pynotify
+import exceptions
+import basepath
+
+_icons_location = basepath.icons_basepath
+
+class NotSupportedException(exceptions.StandardError): pass
+class PyHocaNotificationException(exceptions.StandardError): pass
+
+class libnotify_NotifierPopup(object):
+
+    title = {}
+    text = {}
+    icon = {}
+
+    def __init__(self, _PyHocaGUI):
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+        if not pynotify.init("PyHocaGUI"):
+            raise NotSupportedException
+
+    def prepare(self, context, title=None, text=None, icon=None):
+        if title is not None:
+            self.title[context] = title
+        if text is not None:
+            self.text[context] = text
+        if icon is not None:
+            self.icon[context] = icon
+
+    def send(self, title=None, text=None, context=None, icon=None, timeout=8000):
+        if context is not None:
+            try:
+                title = self.title[context]
+                del self.title[context]
+            except KeyError:
+                pass
+            try:
+                text = self.text[context]
+                del self.text[context]
+            except KeyError:
+                pass
+            try:
+                icon = self.icon[context]
+                del self.icon[context]
+            except KeyError:
+                pass
+
+        icon = 'file://%s/PyHoca/32x32/%s.png' % (_icons_location, icon)
+
+        n = pynotify.Notification(title, text, icon)
+        n.set_urgency(pynotify.URGENCY_NORMAL)
+        n.set_timeout(timeout)
+
+        self._pyhoca_logger('[%s] %s' % (title, text), loglevel=log.loglevel_NOTICE)
+        if not n.show():
+            raise PyHocaNotificationException('could not notify user')
+
+
+    def Close(self):
+        pass
+
+    def Destroy(self):
+        pass
+
+
+class notificationmessage_NotifierPopup(object):
+
+    title = {}
+    text = {}
+    icon = {}
+
+    def __init__(self, _about):
+        self._PyHocaGUI = _about._PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+        self.taskbar = self._PyHocaGUI.taskbar
+
+    def prepare(self, context, title=None, text=None, icon=None):
+        if title is not None:
+            self.title[context] = title
+        if text is not None:
+            self.text[context] = text
+        if icon is not None:
+            self.icon[context] = icon
+
+    def send(self, title=None, text=None, context=None, icon=None, timeout=8000):
+        if context is not None:
+            try:
+                title = self.title[context]
+                del self.title[context]
+            except KeyError:
+                pass
+            try:
+                text = self.text[context]
+                del self.text[context]
+            except KeyError:
+                pass
+            try:
+                icon = self.icon[context]
+                del self.icon[context]
+            except KeyError:
+                pass
+
+        _icon_map_wx = {
+            'audio_error': wx.ICON_ERROR,
+            'auth_success': wx.ICON_INFORMATION,
+            'auth_failed': wx.ICON_WARNING,
+            'auth_error': wx.ICON_ERROR,
+            'auth_disconnect': wx.ICON_INFORMATION,
+            'profile_add': wx.ICON_INFORMATION,
+            'profile_delete': wx.ICON_INFORMATION,
+            'profile_edit': wx.ICON_INFORMATION,
+            'profile_save': wx.ICON_INFORMATION,
+            'profile_error': wx.ICON_ERROR,
+            'session_cleanall': wx.ICON_INFORMATION,
+            'session_error': wx.ICON_ERROR,
+            'session_pause': wx.ICON_INFORMATION,
+            'session_printing': wx.ICON_INFORMATION,
+            'session_resume': wx.ICON_INFORMATION,
+            'session_start': wx.ICON_INFORMATION,
+            'session_terminate': wx.ICON_INFORMATION,
+            'session_warning': wx.ICON_WARNING,
+        }
+        if icon in _icon_map_wx.keys():
+           icon = _icon_map_wx[icon]
+        else:
+           icon = wx.ICON_INFORMATION
+
+        try:
+            # you will need wxPython >= 2.9 for this
+            _notification_msg = wx.NotificationMessage()
+            _notification_msg.SetTitle(title)
+            _notification_msg.SetMessage(text)
+            _notification_msg.SetParent(self._PyHocaGUI.about)
+            _notification_msg.SetFlags(icon)
+            _notification_msg.Show(timeout=1)
+        except:
+            # if we are running wxPython 2.8, we ignore missing 
+            # wx.NotificationMessage class
+            pass
+
+        self._pyhoca_logger('[%s] %s' % (title, text), loglevel=log.loglevel_NOTICE)
+
+    def Close(self):
+        pass
+
+    def Destroy(self):
+        pass
diff --git a/pyhoca/wxgui/notify.pyc b/pyhoca/wxgui/notify.pyc
new file mode 100644
index 0000000..bfbcbfa
Binary files /dev/null and b/pyhoca/wxgui/notify.pyc differ
diff --git a/pyhoca/wxgui/profilemanager.py b/pyhoca/wxgui/profilemanager.py
new file mode 100644
index 0000000..aed9bf2
--- /dev/null
+++ b/pyhoca/wxgui/profilemanager.py
@@ -0,0 +1,1352 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+import wx
+import os 
+import copy
+
+import sys
+import locale
+
+import x2go.log as log
+import x2go.utils as utils
+from x2go import X2GOCLIENT_OS
+
+from x2go import defaults
+
+import notify
+import basepath
+
+_icons_location = basepath.icons_basepath
+_known_encodings = utils.known_encodings()
+
+class PyHocaGUI_ProfileManager(wx.Dialog):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _PyHocaGUI, action, profile_id=None, profile_name=None):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self._PyHocaGUI = _PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+
+        self._pyhoca_logger('starting profile manager, action is: %s' % action, loglevel=log.loglevel_INFO)
+
+        wx.Dialog.__init__(self, None, -1, style=wx.DEFAULT_DIALOG_STYLE, size=wx.Size(550,450))
+
+        self.profileManagerDefaults = defaults.X2GO_SESSIONPROFILE_DEFAULTS
+        self.success = False
+
+        self.sessionChoices = {
+            'GNOME': _(u'GNOME Desktop (GNOME)'),
+            'KDE': _(u'K Desktop Environment (KDE)'),
+            'LXDE': _(u'Lightweight X Desktop (LXDE)'),
+            'XDMCP': _(u'XDMCP Query'),
+            #'EMBEDDED_MENU': _(u'Embedded Application Menu'),
+            'RDP': _(u'Windows Terminal Server (RDP-proxy)'),
+            #'DirectRDP': 'Windows Terminal Server (RDP-direct)',
+            'APPLICATION': _(u'Single Application'),
+            'CUSTOM': _(u'Custom command'),
+            }
+        self.applicationChoices = {
+            'WWWBROWSER': _(u'Internet Browser'),
+            'MAILCLIENT': _(u'Email Client'),
+            'OFFICE': _(u'Openoffice.org'), 
+            'TERMINAL': _(u'Terminal'), 
+            }
+        self.linkChoices = {
+            0: 'MODEM',
+            1: 'ISDN',
+            2: 'ADSL',
+            3: 'WAN',
+            4: 'LAN',
+        }
+        self.audioPorts = {
+            'esd': 16001,
+            'pulse': 4713,
+        }
+        self.dropboxactionChoices = {
+            'OPEN': _(u'Open file with system\'s default application'),
+            'OPENWITH': _(u'Open application chooser dialog'),
+            'SAVEAS': _(u'Save incoming file as ...'),
+        }
+        _compressions = ["4k-jpeg", "32k-jpeg", "64k-jpeg", "256k-jpeg", "2m-jpeg", "16m-jpeg"]
+        self.compressionChoices = {}
+        for _comp in _compressions:
+            self.compressionChoices[_comp] = _comp
+
+        self.session_profiles = self._PyHocaGUI.session_profiles
+        self.action = action
+
+        if self.action in ('EDIT', 'EDIT_CONNECTED'):
+            if profile_id is not None:
+                self.profile_id = profile_id
+            elif profile_name is not None:
+                self.profile_id = self.session_profiles.check_profile_id_or_name(profile_name)
+            self.profile_config = self.session_profiles.get_profile_config(self.profile_id)
+
+        if self.action == 'ADD':
+            self.profile_config = self.session_profiles.default_profile_config()
+
+        # we create a backup dict of our profile_config immediately (for being able to reset erroneously made changes)
+        self.profile_config_bak = copy.deepcopy(self.profile_config)
+
+        self.X2goTabs = wx.Notebook(self, -1, style=0)
+        self.tab_Session = wx.Panel(self.X2goTabs, -1)
+        self.tab_Connection = wx.Panel(self.X2goTabs, -1)
+        self.tab_Settings = wx.Panel(self.X2goTabs, -1)
+        self.tab_SharedFilesAndFolders = wx.Panel(self.X2goTabs, -1)
+
+        # boxes for all tabs
+        self.staticbox_Profile = wx.StaticBox(self.tab_Session, -1, '')
+        self.staticbox_SessionType = wx.StaticBox(self.tab_Session, -1, '')
+        self.staticbox_Server = wx.StaticBox(self.tab_Connection, -1, _(u"Server"))
+        self.staticbox_LinkSpeed = wx.StaticBox(self.tab_Connection, -1, _(u"Connection Link Speed"))
+        self.staticbox_Compression = wx.StaticBox(self.tab_Connection, -1, _(u"Compression"))
+        self.staticbox_Display = wx.StaticBox(self.tab_Settings, -1, _(u"Display"))
+        self.staticbox_Keyboard = wx.StaticBox(self.tab_Settings, -1, _(u"Keyboard"))
+        self.staticbox_Sound = wx.StaticBox(self.tab_Settings, -1, _(u"Sound"))
+        self.staticbox_Printing = wx.StaticBox(self.tab_Settings, -1, _(u"Printing"))
+        self.staticbox_FolderSharing = wx.StaticBox(self.tab_SharedFilesAndFolders, -1, _(u"Folder Exports"))
+        self.staticbox_FileDropbox = wx.StaticBox(self.tab_SharedFilesAndFolders, -1, _(u"File Import"))
+
+        ###
+        ### widgets for the SESSION tab
+        ###
+        self.ProfileNameLabel = wx.StaticText(self.tab_Session, -1, _(u"Profile name")+":")
+        self.ProfileName = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(200,20))
+        _share_location = os.path.split(_icons_location)[0]
+        if 'icon' in self.profile_config:
+            path_to_icon = self.profile_config['icon']
+            path_to_icon = path_to_icon.lstrip(':')
+            path_to_icon = os.path.join(os.path.normpath(_share_location), os.path.normpath(path_to_icon))
+        if not os.path.exists(path_to_icon) or not 'icon' in self.profile_config:
+            path_to_icon = os.path.normpath('%s/icons/PyHoca/128x128/pyhoca-session.png' % _share_location)
+        self.IconPath = path_to_icon
+        self.IconButtonLabel = wx.StaticText(self.tab_Session, -1, _(u"Profile icon")+':')
+        self.IconButton = wx.BitmapButton(self.tab_Session, -1, wx.Bitmap(path_to_icon, wx.BITMAP_TYPE_ANY))
+        self.SessionTypeLabel = wx.StaticText(self.tab_Session, -1, _(u"Session type")+':')
+        self.SessionType = wx.ComboBox(self.tab_Session, -1, choices=self.sessionChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY)
+        self.ApplicationLabel = wx.StaticText(self.tab_Session, -1, _(u"Application")+':')
+        self.Application = wx.ComboBox(self.tab_Session, -1, choices=self.applicationChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY)
+        self.CommandLabel = wx.StaticText(self.tab_Session, -1, _(u"Custom command")+':')
+        self.Command = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(200,20))
+        self.RDPSettingsLabel = wx.StaticText(self.tab_Session, -1, _(u"RDP settings")+':')
+        self.RDPServerLabel = wx.StaticText(self.tab_Session, -1, _(u"RDP server")+':')
+        self.RDPServer = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(160,20))
+        self.RDPOptionsLabel = wx.StaticText(self.tab_Session, -1, _(u"RDP options")+':')
+        self.RDPOptions = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(160,20))
+        self.XDMCPServerLabel = wx.StaticText(self.tab_Session, -1, _(u"XDMCP server")+':')
+        self.XDMCPServer = wx.TextCtrl(self.tab_Session, -1, "", size=wx.Size(160,20))
+
+        ###
+        ### widgets for the CONNECTION tab
+        ###
+        self.UserNameLabel = wx.StaticText(self.tab_Connection, -1, _(u"User")+':')
+        self.UserName = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
+        self.HostLabel = wx.StaticText(self.tab_Connection, -1, _(u"Host")+':')
+        self.Host = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
+        self.SSHPortLabel = wx.StaticText(self.tab_Connection, -1, _(u"Port")+':')
+        self.SSHPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000)
+        self.SSHKeyFileLabel = wx.StaticText(self.tab_Connection, -1, _(u"RSA/DSA private key")+':')
+        self.SSHKeyFile = wx.TextCtrl(self.tab_Connection, -1, style=wx.TE_PROCESS_ENTER)
+        self.SSHKeyFileBrowseButton = wx.BitmapButton(self.tab_Connection, -1, wx.Bitmap('%s/PyHoca/16x16/system-search.png' % _icons_location, wx.BITMAP_TYPE_ANY))
+        self.UseSSHProxy = wx.CheckBox(self.tab_Connection, -1, _(u"Server behind SSH proxy"))
+        self.SSHProxyUserLabel = wx.StaticText(self.tab_Connection, -1, _(u"User")+':')
+        self.SSHProxyUser = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(80,20))
+        self.SSHProxyKeyFileLabel = wx.StaticText(self.tab_Connection, -1, _(u"Key file")+':')
+        self.SSHProxyKeyFile = wx.TextCtrl(self.tab_Connection, -1, style=wx.TE_PROCESS_ENTER)
+        self.SSHProxyKeyFileBrowseButton = wx.BitmapButton(self.tab_Connection, -1, wx.Bitmap('%s/PyHoca/16x16/system-search.png' % _icons_location, wx.BITMAP_TYPE_ANY))
+        self.SSHProxyHostLabel = wx.StaticText(self.tab_Connection, -1, _(u"Host[:Port]")+':')
+        self.SSHProxyHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(80,20))
+        self.SSHProxyTunnelLabel = wx.StaticText(self.tab_Connection, -1, _(u"SSH Proxy Tunnel")+':')
+        self.SSHProxyTunnelFromHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
+        self.SSHProxyTunnelFromPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000)
+        self.SSHProxyTunnelBetweenLabel = wx.StaticText(self.tab_Connection, -1, " -> ")
+        self.SSHProxyTunnelToHost = wx.TextCtrl(self.tab_Connection, -1, "", size=wx.Size(200,20))
+        self.SSHProxyTunnelToPort = wx.SpinCtrl(self.tab_Connection, -1, "0", min=22, max=64000)
+
+        self.LinkSpeed = wx.Slider(self.tab_Connection, -1, 0, 0, 4)
+        self.ModemLabel = wx.StaticText(self.tab_Connection, -1, "|\n "+_(u"Modem"), style=wx.ALIGN_CENTRE)
+        self.ISDNLabel = wx.StaticText(self.tab_Connection, -1, "|\n "+_(u"ISDN"), style=wx.ALIGN_CENTRE)
+        self.ADSLLabel = wx.StaticText(self.tab_Connection, -1, "|\n"+_(u"ADSL"), style=wx.ALIGN_CENTRE)
+        self.WANLabel = wx.StaticText(self.tab_Connection, -1, "|\n"+_(u"WAN"), style=wx.ALIGN_CENTRE)
+        self.LANLabel = wx.StaticText(self.tab_Connection, -1, "|\n"+_(u"LAN"), style=wx.ALIGN_CENTRE)
+
+        self.CompressionLabel = wx.StaticText(self.tab_Connection, -1, _(u"Method")+':')
+        self.Compression = wx.ComboBox(self.tab_Connection, -1, choices=self.compressionChoices.values(), style=wx.CB_DROPDOWN)
+        self.ImageQualityLabel = wx.StaticText(self.tab_Connection, -1, _(u"Image quality")+':')
+        self.ImageQuality = wx.SpinCtrl(self.tab_Connection, -1, "9", min=0, max=9)
+
+        ###
+        ### wigdets for the SETTINGS tab
+        ###
+        self.DisplayTypeFullscreen = wx.RadioButton(self.tab_Settings, -1, _(u"Fullscreen"), style=wx.RB_GROUP)
+        self.DisplayTypeCustom = wx.RadioButton(self.tab_Settings, -1, _(u"Custom Size")+':')
+        self.ScreenWidthLabel = wx.StaticText(self.tab_Settings, -1, '')
+        self.ScreenWidth = wx.SpinCtrl(self.tab_Settings, -1, "800", min=400, max=3000)
+        self.ScreenHeightLabel = wx.StaticText(self.tab_Settings, -1, "x")
+        self.ScreenHeight = wx.SpinCtrl(self.tab_Settings, -1, "600", min=500, max=3000)
+        self.SetDisplayDPI = wx.CheckBox(self.tab_Settings, -1, _(u"Set display DPI")+':')
+        self.DisplayDPI = wx.SpinCtrl(self.tab_Settings, -1, "96", min=32, max=512)
+        self.CurrentKeyBoard = wx.CheckBox(self.tab_Settings, -1, _(u"Keep current keyboard settings"))
+        self.KeyboardLayoutLabel = wx.StaticText(self.tab_Settings, -1, _(u"Keyboard layout")+':')
+        self.KeyboardLayout = wx.TextCtrl(self.tab_Settings, -1, "")
+        self.KeyboardModelLabel = wx.StaticText(self.tab_Settings, -1, _(u"Keyboard model")+':')
+        self.KeyboardModel = wx.TextCtrl(self.tab_Settings, -1, "")
+        self.EnableSound = wx.CheckBox(self.tab_Settings, -1, _(u"Enable sound support"))
+        self.PulseAudio = wx.RadioButton(self.tab_Settings, -1, _(u"Pulse Audio"), style=wx.RB_GROUP)
+
+        # Arts daemon is not supported by PyHoca-GUI / Python X2go as it is outdated.
+        # However, config files can contain an Arts configuration, so we will honour this
+        self.Arts = wx.RadioButton(self.tab_Settings, -1, _(u"Arts (not supported)"))
+        self.Arts.Enable(False)
+
+        self.Esd = wx.RadioButton(self.tab_Settings, -1, _(u"esd"))
+        self.DefaultSoundPort = wx.CheckBox(self.tab_Settings, -1, _(u"Use default sound port"))
+        self.SoundPortLabel = wx.StaticText(self.tab_Settings, -1, _(u"Custom sound port")+':')
+        self.SoundPort = wx.SpinCtrl(self.tab_Settings, -1, "4713", min=23, max=64889)
+        self.ClientSidePrinting = wx.CheckBox(self.tab_Settings, -1, _(u"Client Side printing"))
+
+        self.UseLocalFolderSharing = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, _(u"Use local folder sharing"))
+        self.SharedFolderPathLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Path")+':')
+        self.SharedFolderPath = wx.TextCtrl(self.tab_SharedFilesAndFolders, -1, "", style=wx.TE_PROCESS_ENTER)
+        self.SharedFolderPathBrowseButton = wx.BitmapButton(self.tab_SharedFilesAndFolders, -1, wx.Bitmap('%s/PyHoca/16x16/system-search.png' % _icons_location, wx.BITMAP_TYPE_ANY))
+        self.AddSharedFolderPathButton = wx.Button(self.tab_SharedFilesAndFolders, -1, _(u"Add"))
+        self.SharedFoldersList = wx.ListCtrl(self.tab_SharedFilesAndFolders, -1, style=wx.LC_LIST|wx.SUNKEN_BORDER|wx.LC_SINGLE_SEL|wx.LC_VRULES)
+        self.DeleteSharedFolderPathButton = wx.Button(self.tab_SharedFilesAndFolders, -1, _(u"Delete"))
+
+        self.UseEncodingConverter = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, _(u"Convert between client and server encodings"))
+        self.ClientEncodingLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Client encoding")+':')
+        self.ClientEncoding = wx.ComboBox(self.tab_SharedFilesAndFolders, -1, choices=_known_encodings, style=wx.CB_DROPDOWN|wx.CB_READONLY)
+        self.ServerEncodingLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Server encoding")+':')
+        self.ServerEncoding = wx.ComboBox(self.tab_SharedFilesAndFolders, -1, choices=_known_encodings, style=wx.CB_DROPDOWN|wx.CB_READONLY)
+
+        self.UseFileDropbox = wx.CheckBox(self.tab_SharedFilesAndFolders, -1, _(u"Use file dropbox for local file import"))
+        self.FileDropboxExtensionsLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Extensions")+':')
+        self.FileDropboxExtensions = wx.TextCtrl(self.tab_SharedFilesAndFolders, -1, "", style=wx.TE_PROCESS_ENTER)
+        self.FileDropboxActionLabel = wx.StaticText(self.tab_SharedFilesAndFolders, -1, _(u"Action")+':')
+        self.FileDropboxAction = wx.ComboBox(self.tab_SharedFilesAndFolders, -1, choices=self.dropboxactionChoices.values(), style=wx.CB_DROPDOWN|wx.CB_READONLY)
+
+        if self.action == 'ADD':
+            self.OKButton = wx.Button(self, -1, _(u"Add"))
+            self.DefaultButton = wx.Button(self, -1, _(u'Defaults'))
+        else:
+            self.OKButton = wx.Button(self, -1, _(u"Save"))
+            self.DefaultButton = wx.Button(self, -1, _(u'Reset'))
+        self.OKButton.SetDefault()
+        self.CancelButton = wx.Button(self, -1, _(u"Cancel"))
+
+        self.__set_properties()
+        self.__update_fields()
+        self.__do_layout()
+
+        self.Bind(wx.EVT_BUTTON, self.OnIconChange, self.IconButton)
+        self.Bind(wx.EVT_COMBOBOX, self.OnSessionTypeSelected, self.SessionType)
+        self.Bind(wx.EVT_BUTTON, self.OnSSHKeyFileBrowse, self.SSHKeyFileBrowseButton)
+        self.Bind(wx.EVT_BUTTON, self.OnSSHProxyKeyFileBrowse, self.SSHProxyKeyFileBrowseButton)
+        self.Bind(wx.EVT_CHECKBOX, self.OnUseSSHProxy, self.UseSSHProxy)
+        self.Bind(wx.EVT_RADIOBUTTON, self.OnSetDisplayFullscreen, self.DisplayTypeFullscreen)
+        self.Bind(wx.EVT_RADIOBUTTON, self.OnSetDisplayCustom, self.DisplayTypeCustom)
+        self.Bind(wx.EVT_CHECKBOX, self.OnSetDisplayDPI, self.SetDisplayDPI)
+        self.Bind(wx.EVT_CHECKBOX, self.OnKeepKeyboard, self.CurrentKeyBoard)
+        self.Bind(wx.EVT_CHECKBOX, self.OnSoundEnable, self.EnableSound)
+        self.Bind(wx.EVT_CHECKBOX, self.OnDefaultSoundPort, self.DefaultSoundPort)
+        self.Bind(wx.EVT_RADIOBUTTON, self.OnPulseAudio, self.PulseAudio)
+        self.Bind(wx.EVT_RADIOBUTTON, self.OnEsd, self.Esd)
+        self.Bind(wx.EVT_BUTTON, self.OnSelectSharedFolderPath, self.SharedFolderPathBrowseButton)
+        self.Bind(wx.EVT_BUTTON, self.OnAddSharedFolderPath, self.AddSharedFolderPathButton)
+        self.Bind(wx.EVT_BUTTON, self.OnDeleteSharedFolderPath, self.DeleteSharedFolderPathButton)
+        self.Bind(wx.EVT_LIST_ITEM_SELECTED, self.OnSharedFolderListItemSelected, self.SharedFoldersList)
+        self.Bind(wx.EVT_LIST_ITEM_DESELECTED, self.OnSharedFolderListItemDeselected, self.SharedFoldersList)
+        self.Bind(wx.EVT_TEXT, self.OnSharedFolderPathKeyPressed, self.SharedFolderPath)
+        self.Bind(wx.EVT_TEXT_ENTER, self.OnAddSharedFolderPath, self.SharedFolderPath)
+        self.Bind(wx.EVT_CHECKBOX, self.OnToggleEncodingConverter, self.UseEncodingConverter)
+        self.Bind(wx.EVT_CHECKBOX, self.OnToggleLocalFolderSharing, self.UseLocalFolderSharing)
+        self.Bind(wx.EVT_CHECKBOX, self.OnToggleFileDropbox, self.UseFileDropbox)
+        self.Bind(wx.EVT_BUTTON, self.OnOKButton, self.OKButton)
+        self.Bind(wx.EVT_BUTTON, self.OnCancel, self.CancelButton)
+        self.Bind(wx.EVT_BUTTON, self.OnDefault, self.DefaultButton)
+
+    def __set_properties(self):
+        if self.action == 'ADD':
+            self.SetTitle(_(u"PyHoca-GUI Profile Manager - new profile"))
+        elif self.action == 'EDIT_CONNECTED':
+            self.SetTitle(_(u"PyHoca-GUI Profile Manager - %s (connected)") % self.profile_config['name'])
+        else:
+            self.SetTitle(_(u"PyHoca-GUI Profile Manager - %s") % self.profile_config['name'])
+        self.SetFont(wx.Font(9, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
+        _textfield_height = self.SSHKeyFileBrowseButton.GetBestSize().GetHeight()-2
+
+        self.ProfileNameLabel.SetMinSize((120, 16))
+        self.ProfileName.SetMinSize((180, _textfield_height))
+        self.IconButton.SetSize(self.IconButton.GetBestSize())
+        self.SessionTypeLabel.SetMinSize((120, 16))
+        self.SessionType.SetMinSize((-1, _textfield_height))
+        self.SessionType.SetSelection(5)
+        self.ApplicationLabel.SetMinSize((120, 16))
+        self.Application.SetMinSize((-1, _textfield_height))
+        self.Application.SetSelection(0)
+        self.Command.SetMinSize((-1, _textfield_height))
+        self.XDMCPServerLabel.SetMinSize((120, 16))
+        self.XDMCPServer.SetMinSize((-1, _textfield_height))
+        self.RDPSettingsLabel.SetMinSize((120, 16))
+        self.RDPServerLabel.SetMinSize((180, 16))
+        self.RDPServer.SetMinSize((180, _textfield_height))
+        self.RDPOptionsLabel.SetMinSize((120, 16))
+        self.RDPOptions.SetMinSize((120, _textfield_height))
+
+        self.HostLabel.SetMinSize((110, 16))
+        self.Host.SetMinSize((180, _textfield_height))
+        self.UserNameLabel.SetMinSize((110, 16))
+        self.UserName.SetMinSize((180, _textfield_height))
+        self.SSHPortLabel.SetMinSize((110, 16))
+        self.SSHPort.SetMinSize((65, _textfield_height))
+        self.SSHKeyFileLabel.SetMinSize((-1, 16))
+        self.SSHKeyFile.SetMinSize((152, _textfield_height))
+        self.SSHKeyFileBrowseButton.SetSize(self.SSHKeyFileBrowseButton.GetBestSize())
+        self.SSHProxyUserLabel.SetMinSize((110, 16))
+        self.SSHProxyUser.SetMinSize((180, _textfield_height))
+        self.SSHProxyHostLabel.SetMinSize((110, 16))
+        self.SSHProxyHost.SetMinSize((180, _textfield_height))
+        self.SSHProxyKeyFile.SetMinSize((120, _textfield_height))
+        self.SSHProxyKeyFileBrowseButton.SetSize(self.SSHProxyKeyFileBrowseButton.GetBestSize())
+        self.SSHProxyTunnelLabel.SetMinSize((110, 16))
+        self.SSHProxyTunnelFromPort.SetMinSize((60, _textfield_height))
+        self.SSHProxyTunnelToPort.SetMinSize((60, _textfield_height))
+        self.SSHProxyTunnelFromHost.SetMinSize((120, _textfield_height))
+        self.SSHProxyTunnelToHost.SetMinSize((120, _textfield_height))
+        if X2GOCLIENT_OS == 'Windows':
+            self.LinkSpeed.SetMinSize((425, _textfield_height))
+        else:
+            self.LinkSpeed.SetMinSize((440, _textfield_height))
+        self.ModemLabel.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
+        self.ISDNLabel.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
+        self.ADSLLabel.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
+        self.WANLabel.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
+        self.LANLabel.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.NORMAL, 0, ""))
+        self.CompressionLabel.SetMinSize((120, 16))
+        self.Compression.SetMinSize((180, _textfield_height))
+        self.Compression.SetSelection(0)
+        self.ImageQualityLabel.SetMinSize((120, 16))
+        self.ImageQuality.SetMinSize((180, _textfield_height))
+        self.DisplayTypeFullscreen.SetMinSize((-1, _textfield_height))
+        self.ScreenWidth.SetMinSize((60, _textfield_height))
+        self.ScreenHeight.SetMinSize((60, _textfield_height))
+        self.SetDisplayDPI.SetMinSize((-1, _textfield_height))
+        self.DisplayDPI.SetMinSize((60, _textfield_height))
+        self.KeyboardLayoutLabel.SetMinSize((120, 16))
+        self.KeyboardLayout.SetMinSize((120, _textfield_height))
+        self.KeyboardModelLabel.SetMinSize((120, 16))
+        self.KeyboardModel.SetMinSize((120, _textfield_height))
+        self.PulseAudio.SetMinSize((-1, _textfield_height))
+        self.Arts.SetMinSize((-1, _textfield_height))
+        self.Esd.SetMinSize((-1, _textfield_height))
+        self.DefaultSoundPort.SetMinSize((-1, _textfield_height))
+        self.SoundPort.SetMinSize((-1, _textfield_height))
+        self.ClientSidePrinting.SetMinSize((-1, _textfield_height))
+        self.SharedFolderPath.SetMinSize((220, _textfield_height))
+        self.SharedFolderPathBrowseButton.SetSize(self.SharedFolderPathBrowseButton.GetBestSize())
+        self.SharedFoldersList.SetMinSize((-1, 180))
+
+        self.ClientEncoding.SetMinSize((140, _textfield_height))
+        self.ServerEncoding.SetMinSize((140, _textfield_height))
+
+        self.FileDropboxExtensions.SetMinSize((140, _textfield_height))
+        self.FileDropboxAction.SetMinSize((180, _textfield_height))
+
+        self.OKButton.SetMinSize((-1, 30))
+        self.CancelButton.SetMinSize((-1, 30))
+        self.DefaultButton.SetMinSize((-1, 30))
+
+    def __do_layout(self):
+
+        # SESSION TAB
+        sizer_1 = wx.BoxSizer(wx.VERTICAL)
+        sizer_1_1 = wx.StaticBoxSizer(self.staticbox_Profile, wx.VERTICAL)
+        sizer_1_1_1 = wx.FlexGridSizer(2, 2, 7, 9)
+        sizer_1_1_1.Add(self.ProfileNameLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_1_1_1.Add(self.ProfileName, 0, 0, 0)
+        sizer_1_1_1.Add(self.IconButtonLabel, 0, wx.TOP, 0)
+        sizer_1_1_1.Add(self.IconButton, 0, 0, 0)
+        sizer_1_1.Add(sizer_1_1_1, 0, wx.EXPAND, 0)
+
+        sizer_1_2 = wx.StaticBoxSizer(self.staticbox_SessionType, wx.VERTICAL)
+        sizer_1_2_1 = wx.GridBagSizer(hgap=3,vgap=6)
+        sizer_1_2_1.Add(self.SessionTypeLabel, pos=(0,0), flag=wx.ALIGN_CENTRE_VERTICAL, )
+        sizer_1_2_1.Add(self.SessionType, pos=(0,1), span=(1,2), flag=wx.EXPAND, )
+        sizer_1_2_1.Add(self.ApplicationLabel, pos=(1,0), flag=wx.ALIGN_CENTRE_VERTICAL, )
+        sizer_1_2_1.Add(self.Application, pos=(1,1), span=(1,2), flag=wx.EXPAND, )
+        sizer_1_2_1.Add(self.CommandLabel, pos=(2,0), flag=wx.ALIGN_CENTRE_VERTICAL, )
+        sizer_1_2_1.Add(self.Command, pos=(2, 1), span=(1,2), flag=wx.EXPAND, )
+        sizer_1_2_1.Add(self.XDMCPServerLabel, (3,0), flag=wx.ALIGN_CENTRE_VERTICAL, )
+        sizer_1_2_1.Add(self.XDMCPServer, pos=(3,1), span=(1,2), flag=wx.EXPAND, )
+        sizer_1_2_1.Add(self.RDPServerLabel, pos=(4,1), flag=wx.ALIGN_BOTTOM, )
+        sizer_1_2_1.Add(self.RDPOptionsLabel, pos=(4,2), flag=wx.ALIGN_BOTTOM, )
+        sizer_1_2_1.Add(self.RDPSettingsLabel, pos=(5,0), flag=wx.ALIGN_CENTRE_VERTICAL, )
+        sizer_1_2_1.Add(self.RDPServer, pos=(5, 1), )
+        sizer_1_2_1.Add(self.RDPOptions, pos=(5,2), )
+        sizer_1_2.Add(sizer_1_2_1, 0, wx.EXPAND, 0)
+
+        sizer_1.Add(sizer_1_1, 1, wx.EXPAND, 0)
+        sizer_1.Add(sizer_1_2, 1, wx.EXPAND, 0)
+        self.tab_Session.SetSizerAndFit(sizer_1)
+        self.tab_Session.Layout()
+
+        ## CONNECTION TAB
+        sizer_2 = wx.BoxSizer(wx.VERTICAL)
+        sizer_2_1 = wx.StaticBoxSizer(self.staticbox_Server, wx.VERTICAL)
+        sizer_2_1_1 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_1_1.Add(self.UserNameLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_1.Add(self.UserName, 0, 0, 0)
+        sizer_2_1_1.Add((0,32))
+        sizer_2_1_2 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_1_2.Add(self.HostLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_2.Add(self.Host, 0, 0, 0)
+        sizer_2_1_2.Add((0,32))
+        sizer_2_1_3 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_1_3.Add(self.SSHPortLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_3.Add(self.SSHPort, 0, 0, 0)
+        sizer_2_1_3.Add((16,0))
+        sizer_2_1_3.Add(self.SSHKeyFileLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_3.Add((8,0))
+        sizer_2_1_3.Add(self.SSHKeyFile, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_3.Add(self.SSHKeyFileBrowseButton, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_3.Add((0,32))
+        sizer_2_1_4 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_1_4.Add(self.UseSSHProxy, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_1_5.Add(self.SSHProxyUserLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add(self.SSHProxyUser, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add((16,0))
+        sizer_2_1_5.Add(self.SSHProxyKeyFileLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add((8,0))
+        sizer_2_1_5.Add(self.SSHProxyKeyFile, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add(self.SSHProxyKeyFileBrowseButton, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_5.Add((0,32))
+        sizer_2_1_6 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_1_6.Add(self.SSHProxyHostLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_6.Add(self.SSHProxyHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_6.Add((0,32))
+        sizer_2_1_7 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_1_7.Add(self.SSHProxyTunnelLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_7.Add(self.SSHProxyTunnelFromHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_7.Add((4, 0))
+        sizer_2_1_7.Add(self.SSHProxyTunnelFromPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_7.Add((8, 0))
+        sizer_2_1_7.Add(self.SSHProxyTunnelBetweenLabel, 0, wx.ALIGN_CENTRE_VERTICAL|wx.ALIGN_CENTRE_HORIZONTAL, 0)
+        sizer_2_1_7.Add((8, 0))
+        sizer_2_1_7.Add(self.SSHProxyTunnelToHost, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_7.Add((4, 0))
+        sizer_2_1_7.Add(self.SSHProxyTunnelToPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_1_7.Add((0,32))
+        sizer_2_1.Add(sizer_2_1_1, 0, wx.EXPAND, 0)
+        sizer_2_1.Add(sizer_2_1_2, 0, wx.EXPAND, 0)
+        sizer_2_1.Add(sizer_2_1_3, 0, wx.EXPAND, 0)
+        sizer_2_1.Add(sizer_2_1_4, 0, wx.EXPAND, 0)
+        sizer_2_1.Add(sizer_2_1_5, 0, wx.EXPAND, 0)
+        sizer_2_1.Add(sizer_2_1_6, 0, wx.EXPAND, 0)
+        sizer_2_1.Add(sizer_2_1_7, 0, wx.EXPAND, 0)
+
+        sizer_2_2 = wx.StaticBoxSizer(self.staticbox_LinkSpeed, wx.VERTICAL)
+        sizer_2_2_1 = wx.BoxSizer(wx.VERTICAL)
+        sizer_2_2_1.Add(self.LinkSpeed, 0, 0, 0)
+        sizer_2_2_2 = wx.GridSizer(1,5,0,0)
+        sizer_2_2_2.SetMinSize((454/5*6 - 30, -1))
+        sizer_2_2_2.Add(self.ModemLabel, 0, wx.ALIGN_CENTRE_HORIZONTAL, 0)
+        sizer_2_2_2.Add(self.ISDNLabel, 0, wx.ALIGN_CENTRE_HORIZONTAL, 0)
+        sizer_2_2_2.Add(self.ADSLLabel, 0, wx.ALIGN_CENTRE_HORIZONTAL, 0)
+        sizer_2_2_2.Add(self.WANLabel, 0, wx.ALIGN_CENTRE_HORIZONTAL, 0)
+        sizer_2_2_2.Add(self.LANLabel, 0, wx.ALIGN_CENTRE_HORIZONTAL, 0)
+        sizer_2_2.Add(sizer_2_2_1, 0, wx.ALIGN_CENTRE_HORIZONTAL, 0)
+        sizer_2_2.Add(sizer_2_2_2, 0, wx.ALIGN_CENTRE_HORIZONTAL, 0)
+
+        sizer_2_3 = wx.StaticBoxSizer(self.staticbox_Compression, wx.VERTICAL)
+        sizer_2_3_1 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_3_1.Add(self.CompressionLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_3_1.Add(self.Compression, 0, 0, 0)
+        sizer_2_3_1.Add((0,32))
+        sizer_2_3_2 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2_3_2.Add(self.ImageQualityLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_2_3_2.Add(self.ImageQuality, 0, 0, 0)
+        sizer_2_3.Add(sizer_2_3_1, 1, wx.EXPAND, 0)
+        sizer_2_3.Add(sizer_2_3_2, 1, wx.EXPAND, 0)
+
+        sizer_2.Add(sizer_2_1, 0, wx.EXPAND, 0)
+        sizer_2.Add(sizer_2_2, 1, wx.EXPAND, 0)
+        sizer_2.Add(sizer_2_3, 0, wx.EXPAND, 0)
+        self.tab_Connection.SetSizerAndFit(sizer_2)
+        self.tab_Connection.Layout()
+
+        ## SETTINGS TAB
+        sizer_3 = wx.BoxSizer(wx.VERTICAL)
+        sizer_3_1 = wx.StaticBoxSizer(self.staticbox_Display, wx.VERTICAL)
+        sizer_3_1_1 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_3_1_1.Add(self.DisplayTypeFullscreen, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_1_1.Add((16, 0))
+        sizer_3_1_1.Add(self.DisplayTypeCustom, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_1_1.Add(self.ScreenWidthLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_1_1.Add((8,0))
+        sizer_3_1_1.Add(self.ScreenWidth, 0, 0, 0)
+        sizer_3_1_1.Add((8,0))
+        sizer_3_1_1.Add(self.ScreenHeightLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_1_1.Add((8,0))
+        sizer_3_1_1.Add(self.ScreenHeight, 0, 0, 0)
+        sizer_3_1_2 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_3_1_2.Add((-1,48))
+        sizer_3_1_2.Add(self.SetDisplayDPI, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_1_2.Add((8,0))
+        sizer_3_1_2.Add(self.DisplayDPI, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_1.Add(sizer_3_1_1, 0, 0, 0)
+        sizer_3_1.Add(sizer_3_1_2, 0, 0, 0)
+
+        sizer_3_2 = wx.StaticBoxSizer(self.staticbox_Keyboard, wx.VERTICAL)
+        sizer_3_2_1 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_3_2_1.Add(self.CurrentKeyBoard, 0, wx.ALIGN_TOP, 0)
+        sizer_3_2_1.Add((0, 32))
+        sizer_3_2_2 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_3_2_2.Add((32,0))
+        sizer_3_2_2_1 = wx.BoxSizer(wx.VERTICAL)
+        sizer_3_2_2_1.Add(self.KeyboardLayoutLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_2_2_1.Add(self.KeyboardLayout, 0, wx.EXPAND, 0)
+        sizer_3_2_2_2 = wx.BoxSizer(wx.VERTICAL)
+        sizer_3_2_2_2.Add(self.KeyboardModelLabel, 0, 0, 0)
+        sizer_3_2_2_2.Add(self.KeyboardModel, 0, wx.EXPAND, 0)
+        sizer_3_2_2.Add(sizer_3_2_2_1, 0, 0, 0)
+        sizer_3_2_2.Add((32,0))
+        sizer_3_2_2.Add(sizer_3_2_2_2, 0, 0, 0)
+        sizer_3_2.Add(sizer_3_2_1, 0, 0, 0)
+        sizer_3_2.Add(sizer_3_2_2, 0, 0, 0)
+
+        sizer_3_3 = wx.StaticBoxSizer(self.staticbox_Sound, wx.VERTICAL)
+        sizer_3_3_1 = wx.GridBagSizer(vgap=4, hgap=2)
+        sizer_3_3_1.Add(self.EnableSound, pos=(0,0), span=(1,2), border=16, )
+        sizer_3_3_1.Add(self.PulseAudio, pos=(1,0), flag=wx.RIGHT, border=16, )
+        sizer_3_3_1.Add(self.Arts, pos=(2,0), flag=wx.RIGHT, border=16, )
+        sizer_3_3_1.Add(self.Esd, pos=(3,0), flag=wx.RIGHT, border=16, )
+        sizer_3_3_1.Add(self.DefaultSoundPort, pos=(1,1), )
+        sizer_3_3_1_1 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_3_3_1_1.Add(self.SoundPortLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_3_1_1.Add((8, -1))
+        sizer_3_3_1_1.Add(self.SoundPort, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_3_3_1.Add(sizer_3_3_1_1, pos=(2,1), )
+        sizer_3_3.Add(sizer_3_3_1, 0, 0, 0)
+
+        sizer_3_4 = wx.StaticBoxSizer(self.staticbox_Printing, wx.VERTICAL)
+        sizer_3_4.Add(self.ClientSidePrinting, 0, 0, 0)
+
+        sizer_3.Add(sizer_3_1, 0, wx.EXPAND, 0)
+        sizer_3.Add(sizer_3_2, 1, wx.EXPAND, 0)
+        sizer_3.Add(sizer_3_3, 1, wx.EXPAND, 0)
+        sizer_3.Add(sizer_3_4, 0, wx.EXPAND, 0)
+        self.tab_Settings.SetSizerAndFit(sizer_3)
+        self.tab_Settings.Layout()
+
+        # FOLDERSHARING TAB
+        sizer_4 = wx.BoxSizer(wx.VERTICAL)
+        sizer_4_1 = wx.StaticBoxSizer(self.staticbox_FolderSharing, wx.VERTICAL)
+        sizer_4_1_1 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_4_1_1.Add(self.UseLocalFolderSharing, 0, 0, 0)
+        sizer_4_1_2 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_4_1_2.Add(self.SharedFolderPathLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_1_2.Add(self.SharedFolderPath, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_1_2.Add(self.SharedFolderPathBrowseButton, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_1_2.Add(self.AddSharedFolderPathButton, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_1_2.Add(self.DeleteSharedFolderPathButton, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_1_3 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_4_1_3.Add(self.SharedFoldersList, 1, wx.EXPAND, 0)
+        sizer_4_1_4 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_4_1_4.Add(self.UseEncodingConverter, 0, 0, 0)
+        sizer_4_1_5 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_4_1_5.Add(self.ClientEncodingLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_1_5.Add((8,0))
+        sizer_4_1_5.Add(self.ClientEncoding, 0, 0, 0)
+        sizer_4_1_5.Add((16,0))
+        sizer_4_1_5.Add(self.ServerEncodingLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_1_5.Add((8,0))
+        sizer_4_1_5.Add(self.ServerEncoding, 0, 0, 0)
+        sizer_4_1.Add(sizer_4_1_1, 0, wx.EXPAND, 0)
+        sizer_4_1.Add(sizer_4_1_2, 0, wx.EXPAND, 0)
+        sizer_4_1.Add(sizer_4_1_3, 0, wx.EXPAND, 0)
+        sizer_4_1.Add(sizer_4_1_4, 0, wx.EXPAND, 0)
+        sizer_4_1.Add(sizer_4_1_5, 0, wx.EXPAND, 0)
+
+        sizer_4_2 = wx.StaticBoxSizer(self.staticbox_FileDropbox, wx.VERTICAL)
+        sizer_4_2_1 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_4_2_1.Add(self.UseFileDropbox, 0, 0, 0)
+        sizer_4_2_2 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_4_2_2.Add(self.FileDropboxExtensionsLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_2_2.Add((8,0))
+        sizer_4_2_2.Add(self.FileDropboxExtensions, 0, 0, 0)
+        sizer_4_2_2.Add((16,0))
+        sizer_4_2_2.Add(self.FileDropboxActionLabel, 0, wx.ALIGN_CENTRE_VERTICAL, 0)
+        sizer_4_2_2.Add((8,0))
+        sizer_4_2_2.Add(self.FileDropboxAction, 0, 0, 0)
+        sizer_4_2.Add(sizer_4_2_1, 0, wx.EXPAND, 0)
+        sizer_4_2.Add(sizer_4_2_2, 0, wx.EXPAND, 0)
+
+        sizer_4.Add(sizer_4_1, 0, wx.EXPAND, 0)
+        sizer_4.Add(sizer_4_2, 1, wx.EXPAND, 0)
+        self.tab_SharedFilesAndFolders.SetSizerAndFit(sizer_4)
+        self.tab_SharedFilesAndFolders.Layout()
+
+        self.X2goTabs.AddPage(self.tab_Session, _(u"Session Profile"))
+        self.X2goTabs.AddPage(self.tab_Connection, _(u"Connection"))
+        self.X2goTabs.AddPage(self.tab_Settings, _(u"Settings"))
+        self.X2goTabs.AddPage(self.tab_SharedFilesAndFolders, _(u"Sharing"))
+
+        # the bottom area with OK, Defaults and Cancel buttons
+        sizer_B = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_B_1 = wx.GridSizer(1, 3, 7, 14)
+        sizer_B_1.Add(self.OKButton, 0, 0, 0)
+        sizer_B_1.Add(self.DefaultButton, 0, 0, 0)
+        sizer_B_1.Add(self.CancelButton, 0, 0, 0)
+        sizer_B.Add(sizer_B_1, 1, wx.EXPAND, 0)
+
+        # put it all together...
+        MainSizer = wx.BoxSizer(wx.VERTICAL)
+        MainSizer.Add(self.X2goTabs, 1, wx.EXPAND|wx.FIXED_MINSIZE, 0)
+        MainSizer.Add(sizer_B, 0, wx.ALIGN_RIGHT, 0)
+        self.SetSizerAndFit(MainSizer)
+
+        max1_x, max1_y = self.tab_Session.GetBestSize()
+        max2_x, max2_y = self.tab_Connection.GetBestSize()
+        max3_x, max3_y = self.tab_Settings.GetBestSize()
+        max4_x, max4_y = self.tab_SharedFilesAndFolders.GetBestSize()
+        sizer_B_x, sizer_B_y = sizer_B.GetSize()
+
+        self.SetSize((max(max1_x, max2_x, max3_x, max4_x) * 1.05, (max(max1_y, max2_y, max3_y, max4_y) + sizer_B_y) * 1.2))
+
+        self.SetAutoLayout(True)
+        self.Layout()
+        self.CentreOnScreen()
+        self.Show(True)
+
+    def __update_fields(self):
+
+        self.ProfileName.SetValue(self.profile_config['name'])
+        self.Host.SetValue(self.profile_config['host'])
+        self.UserName.SetValue(self.profile_config['user'])
+        self.SSHPort.SetValue(self.profile_config['sshport'])
+        self.SSHKeyFile.SetValue(self.profile_config['key'])
+        self.UseSSHProxy.SetValue(self.profile_config['usesshproxy'])
+
+        _ssh_proxy = self.profile_config['usesshproxy']
+        self.SSHProxyHost.SetValue(self.profile_config['sshproxyhost'])
+        self.SSHProxyUser.SetValue(self.profile_config['sshproxyuser'])
+        self.SSHProxyKeyFile.SetValue(self.profile_config['sshproxykeyfile'])
+        _from_host = _from_port = _to_host = _to_port = None
+        if self.profile_config['sshproxytunnel'].count(':') == 2:
+            _from_port, _to_host, _to_port = self.profile_config['sshproxytunnel'].split(':')
+            _from_host = 'localhost'
+        elif self.profile_config['sshproxytunnel'].count(':') == 3:
+            _from_host, _from_port, _to_host, _to_port = self.profile_config['sshproxytunnel'].split(':')
+
+        if _from_host: self.SSHProxyTunnelFromHost.SetValue(_from_host)
+        if _from_port: self.SSHProxyTunnelFromPort.SetValue(int(_from_port))
+        if _to_host: self.SSHProxyTunnelToHost.SetValue(_to_host)
+        if _to_port: self.SSHProxyTunnelToPort.SetValue(int(_to_port))
+        if _ssh_proxy:
+            self.SSHProxyHostLabel.Enable(True)
+            self.SSHProxyHost.Enable(True)
+            self.SSHProxyUserLabel.Enable(True)
+            self.SSHProxyUser.Enable(True)
+            self.SSHProxyKeyFileLabel.Enable(True)
+            self.SSHProxyKeyFile.Enable(True)
+            self.SSHProxyKeyFileBrowseButton.Enable(True)
+            self.SSHProxyTunnelLabel.Enable(True)
+            self.SSHProxyTunnelFromHost.Enable(True)
+            self.SSHProxyTunnelFromPort.Enable(True)
+            self.SSHProxyTunnelBetweenLabel.Enable(True)
+            self.SSHProxyTunnelToHost.Enable(True)
+            self.SSHProxyTunnelToPort.Enable(True)
+        else:
+            self.SSHProxyHostLabel.Enable(False)
+            self.SSHProxyHost.Enable(False)
+            self.SSHProxyUserLabel.Enable(False)
+            self.SSHProxyUser.Enable(False)
+            self.SSHProxyKeyFileLabel.Enable(False)
+            self.SSHProxyKeyFile.Enable(False)
+            self.SSHProxyKeyFileBrowseButton.Enable(False)
+            self.SSHProxyTunnelLabel.Enable(False)
+            self.SSHProxyTunnelFromHost.Enable(False)
+            self.SSHProxyTunnelFromPort.Enable(False)
+            self.SSHProxyTunnelBetweenLabel.Enable(False)
+            self.SSHProxyTunnelToHost.Enable(False)
+            self.SSHProxyTunnelToPort.Enable(False)
+
+        _command = self.profile_config['command']
+
+        # disable all command relevant widgets first
+        self.ApplicationLabel.Enable(False)
+        self.Application.Enable(False)
+        self.CommandLabel.Enable(False)
+        self.Command.Enable(False)
+        self.XDMCPServerLabel.Enable(False)
+        self.XDMCPServer.Enable(False)
+
+        if _command in self.sessionChoices.keys():
+            self.SessionType.SetValue(self.sessionChoices[_command])
+            self.Application.SetValue('')
+            self.Command.SetValue('')
+        elif _command in self.applicationChoices.keys():
+            self.SessionType.SetValue(self.sessionChoices['APPLICATION'])
+            self.ApplicationLabel.Enable(True)
+            self.Application.Enable(True)
+            self.Application.SetValue(self.applicationChoices[_command])
+            self.Command.SetValue('')
+        else:
+            self.SessionType.SetValue(self.sessionChoices['CUSTOM'])
+            self.Command.Enable(True)
+            self.Command.SetValue(_command)
+
+        if _command == 'XDMCP':
+            self.XDMCPServerLabel.Enable(True)
+            self.XDMCPServer.Enable(True)
+
+        if _command in ('RDP', 'DirectRDP'):
+            self.RDPSettingsLabel.Enable(True)
+            self.RDPServerLabel.Enable(True)
+            self.RDPServer.Enable(True)
+            self.RDPOptionsLabel.Enable(True)
+            self.RDPOptions.Enable(True)
+        else:
+            self.RDPSettingsLabel.Enable(False)
+            self.RDPServerLabel.Enable(False)
+            self.RDPServer.Enable(False)
+            self.RDPOptionsLabel.Enable(False)
+            self.RDPOptions.Enable(False)
+
+        if _command == 'DirectRDP':
+            self.enable_DirectRDP()
+        else:
+            self.disable_DirectRDP()
+
+        self.RDPServer.SetValue(self.profile_config['rdpserver'])
+        self.RDPOptions.SetValue(self.profile_config['rdpoptions'])
+
+        self.XDMCPServer.SetValue(self.profile_config['xdmcpserver'])
+
+        if 0 < self.profile_config['speed'] <= 5:
+            _link_speed = self.profile_config['speed']
+        else:
+            _link_speed = self.profileManagerDefaults['speed']
+        self.LinkSpeed.SetValue(_link_speed)
+
+        self.Compression.SetValue(self.profile_config['pack'])
+        self.ImageQuality.SetValue(self.profile_config['quality'])
+        self.DisplayTypeFullscreen.SetValue(self.profile_config['fullscreen'])
+        self.DisplayTypeCustom.SetValue(not self.profile_config['fullscreen'])
+        self.ScreenWidth.SetValue(self.profile_config['width'])
+        self.ScreenHeight.SetValue(self.profile_config['height'])
+        if self.profile_config['fullscreen']:
+            self.ScreenWidth.Enable(False)
+            self.ScreenHeight.Enable(False)
+        else:
+            self.ScreenWidth.Enable(True)
+            self.ScreenHeight.Enable(True)
+
+        self.SetDisplayDPI.SetValue(self.profile_config['setdpi'])
+        self.DisplayDPI.SetValue(self.profile_config['dpi'])
+        if not self.profile_config['setdpi']:
+            self.DisplayDPI.Enable(False)
+        else:
+            self.DisplayDPI.Enable(True)
+
+        # TODO Fill in the actual DPI
+        self.CurrentKeyBoard.SetValue(self.profile_config['usekbd'])
+        self.KeyboardLayout.SetValue(self.profile_config['layout'])
+        self.KeyboardModel.SetValue(self.profile_config['type'])
+        if self.profile_config['usekbd']:
+            self.KeyboardLayoutLabel.Enable(False)
+            self.KeyboardModelLabel.Enable(False)
+            self.KeyboardLayout.Enable(False)
+            self.KeyboardModel.Enable(False)
+        else:
+            self.KeyboardLayoutLabel.Enable(True)
+            self.KeyboardModelLabel.Enable(True)
+            self.KeyboardLayout.Enable(True)
+            self.KeyboardModel.Enable(True)
+
+        self.EnableSound.SetValue(self.profile_config['sound'])
+        self.DefaultSoundPort.SetValue(self.profile_config['defsndport'])
+        self.SoundPort.SetValue(self.profile_config['sndport'])
+        if self.profile_config['soundsystem'] == 'pulse':
+            self.PulseAudio.SetValue(True)
+        elif self.profile_config['soundsystem'] == 'arts':
+            self.Arts.SetValue(True)
+        elif self.profile_config['soundsystem'] == 'esd':
+            self.Esd.SetValue(True)
+        if self.profile_config['sound']:
+            self.PulseAudio.Enable(True)
+            self.Esd.Enable(True)
+            self.DefaultSoundPort.Enable(True)
+            if not self.profile_config['defsndport']:
+                self.SoundPortLabel.Enable(True)
+                self.SoundPort.Enable(True)
+            else:
+                self.SoundPortLabel.Enable(False)
+                self.SoundPort.Enable(False)
+        else:
+            self.PulseAudio.Enable(False)
+            self.Esd.Enable(False)
+            self.DefaultSoundPort.Enable(False)
+            self.SoundPortLabel.Enable(False)
+            self.SoundPort.Enable(False)
+
+        self.ClientSidePrinting.SetValue(self.profile_config['print'])
+
+        self.UseLocalFolderSharing.SetValue(self.profile_config['useexports'])
+        self._toggle_localFolderSharing()
+
+        self.SharedFoldersList.DeleteAllItems()
+        _shared_folders = self.profile_config['export'].strip().strip(',').strip()
+        for _shared_folder_path in [ sf.strip() for sf in _shared_folders.split(',') ]:
+            if self.SharedFoldersList.FindItem(0, _shared_folder_path) == -1:
+                _item = wx.ListItem()
+                _item.SetData(wx.NewId())
+                _item.SetText(_shared_folder_path)
+                self.SharedFoldersList.InsertItem(_item)
+        self.AddSharedFolderPathButton.Enable(False)
+        self.DeleteSharedFolderPathButton.Enable(False)
+
+        self.UseEncodingConverter.SetValue(self.profile_config['useiconv'])
+        self.ClientEncoding.SetValue(self.profile_config['iconvfrom'])
+        self.ServerEncoding.SetValue(self.profile_config['iconvto'])
+        self._toggle_useEncodingConverter()
+
+        self.UseFileDropbox.SetValue(self.profile_config['usedropbox'])
+        self.FileDropboxExtensions.SetValue(self.profile_config['dropboxextensions'])
+        if self.profile_config['dropboxaction'] in self.dropboxactionChoices.keys():
+            self.FileDropboxAction.SetValue(self.dropboxactionChoices[self.profile_config['dropboxaction']])
+        else:
+            self.FileDropboxAction.SetValue(self.dropboxactionChoices['OPEN'])
+        self._toggle_useFileDropbox()
+
+        self.disable_EditConnected_options()
+
+    def disable_EditConnected_options(self):
+        # disable widgets when editing connected sessions
+        if self.action == 'EDIT_CONNECTED':
+
+            self.staticbox_Profile.Enable(False)
+            self.ProfileNameLabel.Enable(False)
+            self.ProfileName.Enable(False)
+            self.IconButton.Enable(False)
+            self.IconButtonLabel.Enable(False)
+            self.HostLabel.Enable(False)
+            self.Host.Enable(False)
+            self.UserNameLabel.Enable(False)
+            self.UserName.Enable(False)
+            self.staticbox_Server.Enable(False)
+            self.SSHPortLabel.Enable(False)
+            self.SSHPort.Enable(False)
+            self.SSHKeyFileLabel.Enable(False)
+            self.SSHKeyFile.Enable(False)
+            self.UseSSHProxy.Enable(False)
+            self.SSHProxyHostLabel.Enable(False)
+            self.SSHProxyHost.Enable(False)
+            self.SSHProxyUserLabel.Enable(False)
+            self.SSHProxyUser.Enable(False)
+            self.SSHProxyKeyFileLabel.Enable(False)
+            self.SSHProxyKeyFile.Enable(False)
+            self.SSHProxyKeyFileBrowseButton.Enable(False)
+            self.SSHProxyTunnelLabel.Enable(False)
+            self.SSHProxyTunnelFromHost.Enable(False)
+            self.SSHProxyTunnelFromPort.Enable(False)
+            self.SSHProxyTunnelBetweenLabel.Enable(False)
+            self.SSHProxyTunnelToHost.Enable(False)
+            self.SSHProxyTunnelToPort.Enable(False)
+            self.tab_SharedFilesAndFolders.Enable(False)
+
+    def __update_from_screen(self):
+        self.profile_config['name'] = self.ProfileName.GetValue()
+        self.profile_config['icon'] = self.IconPath
+        self.profile_config['host'] = self.Host.GetValue()
+        self.profile_config['user'] = self.UserName.GetValue()
+        self.profile_config['sshport'] = self.SSHPort.GetValue()
+        self.profile_config['key'] = self.SSHKeyFile.GetValue()
+        if self.UseSSHProxy.GetValue():
+            self.profile_config['usesshproxy'] = True
+        else:
+            self.profile_config['usesshproxy'] = False
+        self.profile_config['sshproxyhost'] = self.SSHProxyHost.GetValue()
+        self.profile_config['sshproxyuser'] = self.SSHProxyUser.GetValue()
+        self.profile_config['sshproxytunnel'] = '%s:%s:%s:%s' % (self.SSHProxyTunnelFromHost.GetValue(),
+                                                                 self.SSHProxyTunnelFromPort.GetValue(),
+                                                                 self.SSHProxyTunnelToHost.GetValue(),
+                                                                 self.SSHProxyTunnelToPort.GetValue(),
+                                                                )
+        self.profile_config['sshproxykeyfile'] = self.SSHProxyKeyFile.GetValue()
+
+        _session_type = [ s for s in self.sessionChoices.keys() if self.sessionChoices[s] == self.SessionType.GetValue() ][0]
+        if _session_type == 'APPLICATION':
+            _command = [ a for a in self.applicationChoices.keys() if self.applicationChoices[a] == self.Application.GetValue() ][0]
+            self.profile_config['rootless'] = True
+        elif _session_type == 'CUSTOM':
+            _command = self.Command.GetValue()
+            self.profile_config['rootless'] = True
+        elif _session_type in ('RDP', 'EMBEDDED_MENU'):
+            _command = _session_type
+            self.profile_config['rootless'] = True
+        else:
+            _command = _session_type
+        self.profile_config['command'] = _command
+        self.profile_config['rdpserver'] = self.RDPServer.GetValue()
+        self.profile_config['rdpoptions'] = self.RDPOptions.GetValue()
+        self.profile_config['xdmcpserver'] = self.XDMCPServer.GetValue()
+
+        _link_idx = self.LinkSpeed.GetValue()
+        self.profile_config['speed'] = _link_idx
+
+        self.profile_config['pack'] = self.Compression.GetValue()
+        self.profile_config['quality'] = self.ImageQuality.GetValue()
+        self.profile_config['fullscreen'] = self.DisplayTypeFullscreen.GetValue()
+        self.profile_config['width'] = self.ScreenWidth.GetValue()
+        self.profile_config['height'] = self.ScreenHeight.GetValue()
+
+        self.profile_config['setdpi'] = self.SetDisplayDPI.GetValue()
+        self.profile_config['dpi'] = self.DisplayDPI.GetValue()
+
+        self.profile_config['usekbd'] = self.CurrentKeyBoard.GetValue()
+        self.profile_config['layout'] = self.KeyboardLayout.GetValue()
+        self.profile_config['type'] = self.KeyboardModel.GetValue()
+
+        self.profile_config['sound'] = self.EnableSound.GetValue()
+        self.profile_config['defsndport'] = self.DefaultSoundPort.GetValue()
+        self.profile_config['sndport'] = self.SoundPort.GetValue()
+        if self.PulseAudio.GetValue():
+            self.profile_config['soundsystem'] = 'pulse'
+        elif self.Arts.GetValue():
+            self.profile_config['soundsystem'] = 'arts'
+        elif self.Esd.GetValue():
+            self.profile_config['soundsystem'] = 'esd'
+
+        self.profile_config['print'] = self.ClientSidePrinting.GetValue()
+
+        self.profile_config['useexports'] = self.UseLocalFolderSharing.GetValue()
+        _shared_folders = []
+        _item_id = self.SharedFoldersList.GetTopItem()
+        while _item_id != -1 and self.SharedFoldersList.ItemCount > 0:
+            _item = self.SharedFoldersList.GetItem(_item_id)
+            _shared_folders.append(_item.GetText())
+            _item_id = self.SharedFoldersList.GetNextItem(_item_id)
+        self.profile_config['export'] = ','.join([ f for f in _shared_folders if f ])
+        self.profile_config['useiconv'] = self.UseEncodingConverter.GetValue()
+        self.profile_config['iconvfrom'] = self.ClientEncoding.GetValue()
+        self.profile_config['iconvto'] = self.ServerEncoding.GetValue()
+
+        self.profile_config['usedropbox'] = self.UseFileDropbox.GetValue()
+        _extensions = self.FileDropboxExtensions.GetValue()
+        _extensions = _extensions.replace(' ', ',').replace(';', ',')
+        _normalized_exts = []
+        for _ext in _extensions.split(','):
+            _ext = _ext.upper()
+            _ext = _ext.lstrip().lstrip('.').rstrip()
+            if _ext:
+                _normalized_exts.append(_ext)
+        self.profile_config['dropboxextensions'] = ','.join(_normalized_exts)
+        try:
+            _dropbox_action = [ a for a in self.dropboxactionChoices.keys() if self.dropboxactionChoices[a] == self.FileDropboxAction.GetValue() ][0]
+        except IndexError:
+            _dropbox_action = 'OPEN'
+        self.profile_config['dropboxaction'] = _dropbox_action
+
+    def OnIconChange(self, event):
+        _share_location = os.path.split(_icons_location)[0]
+        iconsdir = _icons_location
+        if not os.path.exists(iconsdir):
+            iconsdir = os.getcwd()
+        wildcard = _(u"Icon Files (*.png)|*.png|"     \
+           "All files (*.*)|*")
+        dlg = wx.FileDialog(
+            self, message=_(u"Choose an icon for this session profile"), defaultDir=iconsdir,
+            defaultFile="", wildcard=wildcard, style=wx.OPEN | wx.CHANGE_DIR )
+        # Show the dialog and retrieve the user response. If it is the OK response,
+        # process the data.
+        if dlg.ShowModal() == wx.ID_OK:
+            # This returns a Python list of files that were selected.
+            path_to_icon = dlg.GetPath()
+            self.IconButton.SetBitmapLabel(wx.Bitmap(path_to_icon, wx.BITMAP_TYPE_ANY))
+            rel_path = path_to_icon.replace('%s/' % _share_location, ':')
+            rel_path = rel_path.replace( 'icons/PyHoca/128x128/pyhoca-session.png', 'icons/128x128/x2gosession.png')
+            self.IconPath = rel_path
+
+    def enable_DirectRDP(self):
+        self.HostLabel.Enable(False)
+        self.Host.Enable(False)
+        self.SSHPortLabel.Enable(False)
+        self.SSHPort.Enable(False)
+        self.SSHKeyFileLabel.Enable(False)
+        self.SSHKeyFile.Enable(False)
+        self.staticbox_LinkSpeed.Enable(False)
+        self.LinkSpeed.Enable(False)
+        self.ModemLabel.Enable(False)
+        self.ISDNLabel.Enable(False)
+        self.ADSLLabel.Enable(False)
+        self.WANLabel.Enable(False)
+        self.LANLabel.Enable(False)
+        self.staticbox_Compression.Enable(False)
+        self.CompressionLabel.Enable(False)
+        self.Compression.Enable(False)
+        self.ImageQualityLabel.Enable(False)
+        self.ImageQuality.Enable(False)
+        self.tab_Settings.Enable(False)
+        self.tab_SharedFilesAndFolders.Enable(False)
+
+
+    def disable_DirectRDP(self):
+        self.HostLabel.Enable(True)
+        self.Host.Enable(True)
+        self.SSHPortLabel.Enable(True)
+        self.SSHPort.Enable(True)
+        self.SSHKeyFileLabel.Enable(True)
+        self.SSHKeyFile.Enable(True)
+        self.staticbox_LinkSpeed.Enable(True)
+        self.LinkSpeed.Enable(True)
+        self.ModemLabel.Enable(True)
+        self.ISDNLabel.Enable(True)
+        self.ADSLLabel.Enable(True)
+        self.WANLabel.Enable(True)
+        self.LANLabel.Enable(True)
+        self.staticbox_Compression.Enable(True)
+        self.CompressionLabel.Enable(True)
+        self.Compression.Enable(True)
+        self.ImageQualityLabel.Enable(True)
+        self.ImageQuality.Enable(True)
+        self.tab_Settings.Enable(True)
+        self.tab_SharedFilesAndFolders.Enable(True)
+
+    def OnSessionTypeSelected(self, event):
+        _session_type = [ i for i in self.sessionChoices.keys() if self.sessionChoices[i] == self.SessionType.GetValue() ][0]
+        if _session_type == 'APPLICATION':
+            self.ApplicationLabel.Enable(True)
+            self.Application.Enable(True)
+            if not self.Application.GetValue():
+                self.Application.SetValue(self.applicationChoices['TERMINAL'])
+        else:
+            self.ApplicationLabel.Enable(False)
+            self.Application.Enable(False)
+
+        if _session_type == 'CUSTOM':
+            self.CommandLabel.Enable(True)
+            self.Command.Enable(True)
+            if not self.Command.GetValue():
+                self.Command.SetValue('xterm')
+        else:
+            self.CommandLabel.Enable(False)
+            self.Command.Enable(False)
+
+        if _session_type == 'XDMCP':
+            self.XDMCPServerLabel.Enable(True)
+            self.XDMCPServer.Enable(True)
+        else:
+            self.XDMCPServerLabel.Enable(False)
+            self.XDMCPServer.Enable(False)
+
+        if _session_type in ('RDP', 'DirectRDP', ):
+            self.RDPSettingsLabel.Enable(True)
+            self.RDPServerLabel.Enable(True)
+            self.RDPServer.Enable(True)
+            self.RDPOptionsLabel.Enable(True)
+            self.RDPOptions.Enable(True)
+        else:
+            self.RDPSettingsLabel.Enable(False)
+            self.RDPServerLabel.Enable(False)
+            self.RDPServer.Enable(False)
+            self.RDPOptionsLabel.Enable(False)
+            self.RDPOptions.Enable(False)
+
+        if _session_type == 'DirectRDP':
+            self.enable_DirectRDP()
+        else:
+            self.disable_DirectRDP()
+
+        self.disable_EditConnected_options()
+
+    def OnSSHKeyFileBrowse(self, event):
+        sshdir = os.path.expanduser('~/.ssh')
+        if not os.path.exists(sshdir):
+            sshdir = os.getcwd()
+        wildcard = _(u"All files (*.*)|*")
+        dlg = wx.FileDialog(
+            self, message=_(u"Choose a public SSH key"), defaultDir=sshdir,
+            defaultFile="", wildcard=wildcard, style=wx.OPEN | wx.CHANGE_DIR )
+        # Show the dialog and retrieve the user response. If it is the OK response,
+        # process the data.
+        if dlg.ShowModal() == wx.ID_OK:
+            # This returns a Python list of files that were selected.
+            path = dlg.GetPath()
+            self.SSHKeyFile.SetValue(path)
+
+    def OnSSHProxyKeyFileBrowse(self, event):
+        sshdir = os.path.expanduser('~/.ssh')
+        if not os.path.exists(sshdir):
+            sshdir = os.getcwd()
+        wildcard = "All files (*.*)|*"
+        dlg = wx.FileDialog(
+            self, message=_(u"Choose a public SSH key"), defaultDir=sshdir,
+            defaultFile="", wildcard=wildcard, style=wx.OPEN | wx.CHANGE_DIR )
+        # Show the dialog and retrieve the user response. If it is the OK response,
+        # process the data.
+        if dlg.ShowModal() == wx.ID_OK:
+            # This returns a Python list of files that were selected.
+            path = dlg.GetPath()
+            self.SSHProxyKeyFile.SetValue(path)
+
+    def OnUseSSHProxy(self, event):
+        if self.UseSSHProxy.GetValue():
+            self.SSHProxyHostLabel.Enable(True)
+            self.SSHProxyHost.Enable(True)
+            self.SSHProxyUserLabel.Enable(True)
+            self.SSHProxyUser.Enable(True)
+            self.SSHProxyKeyFileLabel.Enable(True)
+            self.SSHProxyKeyFile.Enable(True)
+            self.SSHProxyKeyFileBrowseButton.Enable(True)
+            self.SSHProxyTunnelLabel.Enable(True)
+            self.SSHProxyTunnelFromHost.Enable(True)
+            self.SSHProxyTunnelBetweenLabel.Enable(True)
+            self.SSHProxyTunnelFromPort.Enable(True)
+            self.SSHProxyTunnelToHost.Enable(True)
+            self.SSHProxyTunnelToPort.Enable(True)
+        else:
+            self.SSHProxyHostLabel.Enable(False)
+            self.SSHProxyHost.Enable(False)
+            self.SSHProxyUserLabel.Enable(False)
+            self.SSHProxyUser.Enable(False)
+            self.SSHProxyKeyFileLabel.Enable(False)
+            self.SSHProxyKeyFile.Enable(False)
+            self.SSHProxyKeyFileBrowseButton.Enable(False)
+            self.SSHProxyTunnelLabel.Enable(False)
+            self.SSHProxyTunnelFromHost.Enable(False)
+            self.SSHProxyTunnelFromPort.Enable(False)
+            self.SSHProxyTunnelBetweenLabel.Enable(False)
+            self.SSHProxyTunnelToHost.Enable(False)
+            self.SSHProxyTunnelToPort.Enable(False)
+
+    def OnKeepKeyboard(self, event):
+        if self.CurrentKeyBoard.GetValue():
+            self.KeyboardLayoutLabel.Enable(False)
+            self.KeyboardModelLabel.Enable(False)
+            self.KeyboardLayout.Enable(False)
+            self.KeyboardModel.Enable(False)
+        else:
+            self.KeyboardLayoutLabel.Enable(True)
+            self.KeyboardModelLabel.Enable(True)
+            self.KeyboardLayout.Enable(True)
+            self.KeyboardModel.Enable(True)
+
+    def OnSoundEnable(self, event): # wxGlade: X2goMaintProfile.<event_handler>
+        if self.EnableSound.GetValue():
+            self.PulseAudio.Enable(True)
+            self.Esd.Enable(True)
+            self.DefaultSoundPort.Enable(True)
+            if self.DefaultSoundPort.GetValue() is False:
+                self.SoundPortLabel.Enable(True)
+                self.SoundPort.Enable(True)
+        else:
+            self.PulseAudio.Enable(False)
+            self.Esd.Enable(False)
+            self.DefaultSoundPort.Enable(False)
+            self.SoundPortLabel.Enable(False)
+            self.SoundPort.Enable(False)
+
+
+    def OnSetDisplayFullscreen(self, event):
+        self.ScreenWidthLabel.Enable(False)
+        self.ScreenWidth.Enable(False)
+        self.ScreenHeightLabel.Enable(False)
+        self.ScreenHeight.Enable(False)
+
+    def OnSetDisplayCustom(self, event):
+        self.ScreenWidthLabel.Enable(True)
+        self.ScreenWidth.Enable(True)
+        self.ScreenHeightLabel.Enable(True)
+        self.ScreenHeight.Enable(True)
+
+    def OnSetDisplayDPI(self, event):
+        if self.SetDisplayDPI.GetValue():
+            self.DisplayDPI.Enable(True)
+        else:
+            self.DisplayDPI.Enable(False)
+
+    def OnPulseAudio(self, event):
+        if self.DefaultSoundPort.GetValue():
+            self.SoundPort.SetValue(self.audioPorts['pulse'])
+
+    def OnEsd(self, event):
+        if self.DefaultSoundPort.GetValue():
+            self.SoundPort.SetValue(self.audioPorts['esd'])
+
+    def OnDefaultSoundPort(self, event):
+        if not self.DefaultSoundPort.GetValue():
+            self.SoundPortLabel.Enable(True)
+            self.SoundPort.Enable(True)
+        else:
+            if self.PulseAudio.GetValue():
+                self.SoundPort.SetValue(self.audioPorts['pulse'])
+            if self.Esd.GetValue():
+                self.SoundPort.SetValue(self.audioPorts['esd'])
+            self.SoundPortLabel.Enable(False)
+            self.SoundPort.Enable(False)
+
+    def _toggle_localFolderSharing(self):
+        if self.UseLocalFolderSharing.GetValue():
+            self.SharedFolderPathLabel.Enable(True)
+            self.SharedFolderPath.Enable(True)
+            self.SharedFolderPathBrowseButton.Enable(True)
+            self.SharedFoldersList.Enable(True)
+            self.UseEncodingConverter.Enable(True)
+            self._toggle_useEncodingConverter()
+        else:
+            self.AddSharedFolderPathButton.Enable(False)
+            self.DeleteSharedFolderPathButton.Enable(False)
+            self.SharedFolderPathLabel.Enable(False)
+            self.SharedFolderPath.Enable(False)
+            self.SharedFolderPathBrowseButton.Enable(False)
+            self.SharedFoldersList.Enable(False)
+            self.UseEncodingConverter.Enable(False)
+            self.ClientEncodingLabel.Enable(False)
+            self.ClientEncoding.Enable(False)
+            self.ServerEncodingLabel.Enable(False)
+            self.ServerEncoding.Enable(False)
+
+    def OnToggleLocalFolderSharing(self, event):
+        self._toggle_localFolderSharing()
+
+    def OnSelectSharedFolderPath(self, event):
+        shared_folder = os.path.expanduser('~')
+        if not os.path.exists(shared_folder):
+            shared_folder = os.getcwd()
+        dlg = wx.DirDialog(
+            self, message=_(u"Choose a folder to share within a session"), style=1, defaultPath=shared_folder)
+        # Show the dialog and retrieve the user response. If it is the OK response,
+        # process the data.
+        if dlg.ShowModal() == wx.ID_OK:
+            # This returns a Python list of files that were selected.
+            self.SharedFolderPath.SetValue(dlg.GetPath())
+
+    def OnSharedFolderListItemSelected(self, event):
+        self.DeleteSharedFolderPathButton.Enable(True)
+
+    def OnSharedFolderListItemDeselected(self, event):
+        self.DeleteSharedFolderPathButton.Enable(False)
+
+    def OnSharedFolderPathKeyPressed(self, event):
+        self.AddSharedFolderPathButton.Enable(True)
+
+    def OnAddSharedFolderPath(self, event):
+        _shared_folder_path = self.SharedFolderPath.GetValue()
+        if _shared_folder_path and (self.SharedFoldersList.FindItem(0, _shared_folder_path) == -1):
+            _item = wx.ListItem()
+            _item.SetData(wx.NewId())
+            _item.SetText(_shared_folder_path)
+            self.SharedFoldersList.InsertItem(_item)
+            self.SharedFolderPath.SetValue('')
+        self.AddSharedFolderPathButton.Enable(False)
+
+    def OnDeleteSharedFolderPath(self, event):
+        _item = self.SharedFoldersList.GetFocusedItem()
+        self.SharedFoldersList.DeleteItem(_item)
+        self.DeleteSharedFolderPathButton.Enable(False)
+
+    def _toggle_useEncodingConverter(self):
+        if self.UseEncodingConverter.GetValue():
+            self.ClientEncodingLabel.Enable(True)
+            self.ClientEncoding.Enable(True)
+            self.ServerEncodingLabel.Enable(True)
+            self.ServerEncoding.Enable(True)
+        else:
+            self.ClientEncodingLabel.Enable(False)
+            self.ClientEncoding.Enable(False)
+            self.ServerEncodingLabel.Enable(False)
+            self.ServerEncoding.Enable(False)
+
+    def OnToggleEncodingConverter(self, event):
+        self._toggle_useEncodingConverter()
+
+    def _toggle_useFileDropbox(self):
+        if self.UseFileDropbox.GetValue():
+            self.FileDropboxExtensionsLabel.Enable(True)
+            self.FileDropboxExtensions.Enable(True)
+            self.FileDropboxActionLabel.Enable(True)
+            self.FileDropboxAction.Enable(True)
+        else:
+            self.FileDropboxExtensionsLabel.Enable(False)
+            self.FileDropboxExtensions.Enable(False)
+            self.FileDropboxActionLabel.Enable(False)
+            self.FileDropboxAction.Enable(False)
+
+    def OnToggleFileDropbox(self, event):
+        self._toggle_useFileDropbox()
+
+    def __validate(self):
+        validateOk = True
+        if len(self.profile_config['name'].strip()) == 0:
+            validateOk = False
+            self._PyHocaGUI.notifier.send(title=_(u'Profile Manager'), text=_(u'Profile name is missing, profile unusable!!!'), icon='profile_error')
+        return validateOk
+
+    def OnOKButton(self, event):
+        wx.BeginBusyCursor()
+        self.__update_from_screen()
+        if self.__validate():
+
+            if self.profile_config != self.profile_config_bak:
+
+                if self.action == 'ADD':
+                    self.profile_id = self.session_profiles.add_profile()
+
+                print self.profile_id
+                for k in self.profile_config.keys():
+                    self.session_profiles.update_value(self.profile_id, k, self.profile_config[k])
+
+                self.session_profiles.write_user_config = True
+                self.session_profiles.write()
+
+                if self.action == 'ADD':
+                    print 
+                    self._PyHocaGUI.notifier.send(title=_(u'%s - profile added') % self.profile_config['name'],
+                                                  text=_(u'A new session profile has been added.'),
+                                                  icon='profile_add',
+                                                 )
+                elif self.action == 'EDIT':
+                    self._PyHocaGUI.notifier.send(title=_(u'%s - modified') % self.profile_config['name'],
+                                                  text=_(u'Changes to profile have been saved.'),
+                                                  icon='profile_save',
+                                                 )
+
+            wx.EndBusyCursor()
+            self.Close()
+            self.Destroy()
+        else:
+            wx.EndBusyCursor()
+
+    def OnCancel(self, event):
+        self.Close()
+        self.Destroy()
+
+    def OnDefault(self, event):
+        self.profile_config = copy.deepcopy(self.profile_config_bak)
+        self.__update_fields()
+
diff --git a/pyhoca/wxgui/profilemanager.pyc b/pyhoca/wxgui/profilemanager.pyc
new file mode 100644
index 0000000..b23c2d0
Binary files /dev/null and b/pyhoca/wxgui/profilemanager.pyc differ
diff --git a/pyhoca/wxgui/taskbar.py b/pyhoca/wxgui/taskbar.py
new file mode 100644
index 0000000..f90c99f
--- /dev/null
+++ b/pyhoca/wxgui/taskbar.py
@@ -0,0 +1,144 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Dick Kniep <dick.kniep at lindix.nl>
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+#
+# PyHoca GUI is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# PyHoca GUI is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+
+modules ={}
+
+try:
+    import wxversion
+    wxversion.select('2.9')
+except: pass
+
+try:
+    import wxversion
+    wxversion.select('2.8')
+except: pass
+
+# Python X2go
+import x2go
+
+import gevent
+import gevent.monkey
+gevent.monkey.patch_all()
+
+import wx
+import wx.lib.scrolledpanel as scrolled
+import wx.lib.mixins.listctrl as listmix
+
+if x2go.X2GOCLIENT_OS == 'Windows':
+    import win32gui
+
+import os
+import sys
+import copy
+
+# PyHoca-GUI modules
+import menus_taskbar
+import profilemanager
+import basepath
+
+_icons_location = basepath.icons_basepath
+
+
+try:
+    from agw import knobctrl as KC
+    knobctrlavailable = True
+except ImportError: # if it's not there locally, try the wxPython lib.
+    try:
+        import wx.lib.agw.knobctrl as KC
+        knobctrlavailable = True
+    except ImportError:
+        knobctrlavailable = False
+
+import wx.lib.sized_controls as sc
+
+
+class PyHocaGUI_TaskBarIcon(wx.TaskBarIcon):
+    """\
+    STILL UNDOCUMENTED
+
+    """
+    def __init__(self, _about):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        wx.TaskBarIcon.__init__(self)
+        self._PyHocaGUI = _about._PyHocaGUI
+        self._pyhoca_logger = self._PyHocaGUI._pyhoca_logger
+        self._pyhoca_logger('start TaskBarIcon of type: %s' % (wx.PlatformInfo, ), loglevel=x2go.loglevel_INFO)
+        self.SetIconIdle()
+        self.imgidx = 1
+        self.tooltip = ""
+
+    def SetIconConnecting(self, profile_name):
+        self.icon = self.MakeIcon(icon_name='pyhoca-trayicon')
+        if x2go.X2GOCLIENT_OS == 'Windows':
+            self.icon = self.MakeIcon(icon_name='x2go-logo-ubuntu')
+            self.SetIcon(self.icon, _(u"PyHoca-GUI\nConnecting you to ,,%s\'\'") % profile_name)
+        else:
+            self.icon = self.MakeIcon(icon_name='pyhoca-trayicon')
+            self.SetIcon(self.icon, _(u"PyHoca-GUI (Python X2goClient)\nCurrently connecting you to remote X2go server ,,%s\'\'") % profile_name)
+
+    def SetIconIdle(self):
+        if x2go.X2GOCLIENT_OS == 'Windows':
+            self.icon = self.MakeIcon(icon_name='x2go-logo-ubuntu')
+            self.SetIcon(self.icon, _(u"PyHoca-GUI\nConnecting you to X2go..."))
+        else:
+            self.icon = self.MakeIcon(icon_name='pyhoca-trayicon')
+            self.SetIcon(self.icon, _(u"PyHoca-GUI (Python X2goClient)\nClient for connecting you to a remote X2go server"))
+
+    def CreateSessionManagerPopupMenu(self, evt):
+        """\
+        STILL UNDOCUMENTED
+
+        """
+        self.menu_sessionmanager = self.PopupMenu(menus_taskbar.PyHocaGUI_Menu_TaskbarSessionManager(self._PyHocaGUI, caller=self))
+        return self.menu_sessionmanager
+
+    def CreatePopupMenu(self):
+        """\
+        This method is called by the base class when it needs to popup
+        the menu for the default EVT_RIGHT_DOWN event.  Just create
+        the menu how you want it and return it from this function,
+        the base class takes care of the rest.
+        """
+        return self.CreateProfileManagerPopupMenu()
+
+    def CreateProfileManagerPopupMenu(self):
+        self.menu_optionsmanager = self.PopupMenu(menus_taskbar.PyHocaGUI_Menu_TaskbarOptionsManager(self._PyHocaGUI, caller=self))
+        return self.menu_optionsmanager
+
+    def MakeIcon(self, icon_name):
+        """\
+        The various platforms have different requirements for the
+        icon size...
+        """
+        if "wxMSW" in wx.PlatformInfo:
+            img = wx.Image('%s/PyHoca/16x16/%s.png' % (_icons_location, icon_name))
+        elif "wxGTK" in wx.PlatformInfo:
+            img = wx.Image('%s/PyHoca/22x22/%s.png' % (_icons_location, icon_name))
+        elif "wxMAC" in wx.PlatformInfo:
+            img = wx.Image('%s/PyHoca/128x128/%s.png' % (_icons_location, icon_name))
+        icon = wx.IconFromBitmap(img.ConvertToBitmap())
+        return icon
+
+    def Close(self):
+        self.RemoveIcon()
+
diff --git a/pyhoca/wxgui/taskbar.pyc b/pyhoca/wxgui/taskbar.pyc
new file mode 100644
index 0000000..ec0b34a
Binary files /dev/null and b/pyhoca/wxgui/taskbar.pyc differ
diff --git a/setup.py b/setup.py
new file mode 100755
index 0000000..63018d2
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,118 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+# Copyright (C) 2010-2011 by Mike Gabriel <m.gabriel at das-netzwerkteam.de>
+# 
+# PyHoca is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PyHoca is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the
+# Free Software Foundation, Inc.,
+# 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+import gevent.monkey
+gevent.monkey.patch_all()
+
+import platform
+from setuptools import setup, find_packages
+from distutils.core import setup
+if platform.system() == 'Windows':
+    import py2exe
+if platform.system() == 'Linux':
+    from DistUtilsExtra.command import *
+from glob import glob
+
+import os
+
+# import the PyHoca-GUI
+import pyhoca.wxgui
+
+#
+# to build .exe file, run on Windows:
+# ,,python setup.py py2exe''
+#
+# to update i18n .mo files (and merge .pot file into .po files) run on Linux:
+# ,,python setup.py build_i18n -m''
+
+cmd_class = {}
+data_files = []
+
+if platform.system() == 'Windows':
+    # building from trunk
+    dll_data_files = [("Microsoft.VC90.CRT", glob(r'..\\pyhoca-contrib\\mswin\\ms-vc-runtime\\*.*'))]
+    nxproxy_files = [("nxproxy", glob(r'..\\pyhoca-contrib\\mswin\\nxproxy-mswin\\nxproxy-3.0.4-2\\*.*'))]
+    pulseaudio_files = [("pulseaudio", glob(r'..\\pyhoca-contrib\\mswin\\pulseaudio-mswin\\pulseaudio-0.9.6\\*.*'))]
+
+    icon_files = [
+        ("icons\\PyHoca\\16x16", glob(r'icons\\PyHoca\\16x16\\*.*')),
+        ("icons\\PyHoca\\22x22", glob(r'icons\\PyHoca\\22x22\\*.*')),
+        ("icons\\PyHoca\\32x32", glob(r'icons\\PyHoca\\32x32\\pyhoca-*.*')),
+        ("icons\\PyHoca\\32x32", glob(r'icons\\PyHoca\\32x32\\x2go*.*')),
+        ("icons\\PyHoca\\48x48", glob(r'icons\\PyHoca\\48x48\\*.*')),
+        ("icons\\PyHoca\\64x64", glob(r'icons\\PyHoca\\64x64\\*.*')),
+        ("icons\\PyHoca\\128x128", glob(r'icons\\PyHoca\\128x128\\*.*')),
+        ("PyHoca_GUI.egg-infocons\\PyHoca\\128x128", glob(r'icons\\PyHoca\\128x128\\*.*')),
+        ("icons", glob(r'pixmaps\\*.ico')),
+        ]
+    img_files = [("img", glob(r'img\\*.*'))]
+    i18n_files = [
+            ("mo\\en\\LC_MESSAGES", glob(r'build\\mo\\en\\LC_MESSAGES\\*.*')),
+            ("mo\\de\\LC_MESSAGES", glob(r'build\\mo\\de\\LC_MESSAGES\\*.*')),
+            ("mo\\nl\\LC_MESSAGES", glob(r'build\\mo\\nl\\LC_MESSAGES\\*.*')),
+            ("mo\\es\\LC_MESSAGES", glob(r'build\\mo\\es\\LC_MESSAGES\\*.*')),
+        ]
+
+    data_files.extend([ "pixmaps\\pyhoca-gui.ico", ] + 
+                      dll_data_files +
+                      icon_files +
+                      img_files +
+                      nxproxy_files +
+                      pulseaudio_files +
+                      i18n_files
+    )
+
+if platform.system() == 'Linux':
+    cmd_class.update(
+        {
+            "build" : build_extra.build_extra,
+            "build_i18n" :  build_i18n.build_i18n,
+            "clean": clean_i18n.clean_i18n,
+        }
+    )
+
+
+setup(
+    name = "pyhoca-gui",
+    version = pyhoca.wxgui.__VERSION__,
+    description = "PyHoca-GUI is a cross-platform (Windows, MacOS X, Linux) graphical X2go client.",
+    license = 'GPL',
+    author = 'Mike Gabriel, Dick Kniep',
+    url = 'http://www.x2go.org',
+    packages = [ 'pyhoca.wxgui', ],
+    package_dir = {'': '.'},
+    install_requires = [ 'setuptools', ],
+    cmdclass = cmd_class,
+    windows = [
+        {
+            "script": "pyhoca-gui",
+            "icon_resources": [(0, "pixmaps/pyhoca_x2go-logo-ubuntu.ico")],
+        },
+    ],
+    data_files=data_files,
+    options={
+        'py2exe': {
+            'dll_excludes': ['MSVCP90.DLL'],
+            'includes': ['greenlet'],
+            'compressed': 1,
+            'optimize': 2,
+        }
+    }
+)
diff --git a/x2go b/x2go
new file mode 120000
index 0000000..f437981
--- /dev/null
+++ b/x2go
@@ -0,0 +1 @@
+../python-x2go/x2go
\ No newline at end of file


hooks/post-receive
-- 
pyhoca-gui.git (Python X2Go Client (wxPython GUI))

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "pyhoca-gui.git" (Python X2Go Client (wxPython GUI)).




More information about the x2go-commits mailing list