From cf559ceaa0d621fc362d94491f2a8fa9871a8d49 Mon Sep 17 00:00:00 2001 From: marta Date: Tue, 31 Aug 2010 11:32:20 +0200 Subject: [PATCH 1/1] Initial commit --- Doxyfile | 1252 ++++ HEAD | 1 + Makefile | 256 + bin/tietoopcom | Bin 0 -> 506067 bytes build/release/moc_tecaccountintermediatewidget.cpp | 103 + build/release/moc_tecaccountsettingswidget.cpp | 129 + build/release/moc_tecbaseengine.cpp | 176 + build/release/moc_tecbasemainwindow.cpp | 180 + build/release/moc_tecchatwidget.cpp | 103 + build/release/moc_teccontactlistwidget.cpp | 153 + build/release/moc_tecemoticonsdialog.cpp | 80 + build/release/moc_tecengine.cpp | 133 + build/release/moc_tecgeneralsettingswidget.cpp | 98 + build/release/moc_tecmaintoolbar.cpp | 268 + build/release/moc_tecmainwindow.cpp | 148 + build/release/moc_tecsettingswidget.cpp | 86 + build/release/moc_tecthemessettingswidget.cpp | 98 + build/release/moc_tecuserinfowidget.cpp | 103 + build/release/moc_tocaccountintermediatewidget.cpp | 103 + build/release/moc_tocaccountsettingswidget.cpp | 129 + build/release/moc_tocbaseengine.cpp | 176 + build/release/moc_tocbasemainwindow.cpp | 180 + build/release/moc_tocchatwidget.cpp | 103 + build/release/moc_toccontactlistwidget.cpp | 199 + build/release/moc_tocemoticonsdialog.cpp | 80 + build/release/moc_tocengine.cpp | 133 + build/release/moc_tocgeneralsettingswidget.cpp | 98 + build/release/moc_tocmaintoolbar.cpp | 268 + build/release/moc_tocmainwindow.cpp | 156 + build/release/moc_tocsettingswidget.cpp | 86 + build/release/moc_tocthemessettingswidget.cpp | 98 + build/release/moc_tocuserinfowidget.cpp | 103 + build/release/qrc_application.cpp | 6191 ++++++++++++++++++++ build/release/ui_TecAccountSettingsWidget.h | 374 ++ build/release/ui_TecChatWidget.h | 174 + build/release/ui_TecEmoticonsDialog.h | 97 + build/release/ui_TecGeneralSettingsWidget.h | 322 + build/release/ui_TecThemesSettingsWidget.h | 192 + build/release/ui_TecUserInfoWidget.h | 329 ++ build/release/ui_TocAccountSettingsWidget.h | 374 ++ build/release/ui_TocChatWidget.h | 174 + build/release/ui_TocEmoticonsDialog.h | 97 + build/release/ui_TocGeneralSettingsWidget.h | 322 + build/release/ui_TocThemesSettingsWidget.h | 192 + build/release/ui_TocUserInfoWidget.h | 329 ++ config | 4 + configure | 18 + data/com.tieto.tietoopcom.service | 4 + data/copyright | 30 + data/emoticons/face-angel24x24.png | Bin 0 -> 1885 bytes data/emoticons/face-angel32x32.png | Bin 0 -> 2813 bytes data/emoticons/face-crying24x24.png | Bin 0 -> 1909 bytes data/emoticons/face-crying32x32.png | Bin 0 -> 2751 bytes data/emoticons/face-devilish24x24.png | Bin 0 -> 1823 bytes data/emoticons/face-devilish32x32.png | Bin 0 -> 2701 bytes data/emoticons/face-glasses24x24.png | Bin 0 -> 1874 bytes data/emoticons/face-glasses32x32.png | Bin 0 -> 2774 bytes data/emoticons/face-grin24x24.png | Bin 0 -> 1867 bytes data/emoticons/face-grin32x32.png | Bin 0 -> 2702 bytes data/emoticons/face-kiss24x24.png | Bin 0 -> 1818 bytes data/emoticons/face-kiss32x32.png | Bin 0 -> 2646 bytes data/emoticons/face-monkey24x24.png | Bin 0 -> 1661 bytes data/emoticons/face-monkey32x32.png | Bin 0 -> 2445 bytes data/emoticons/face-plain24x24.png | Bin 0 -> 1785 bytes data/emoticons/face-plain32x32.png | Bin 0 -> 2579 bytes data/emoticons/face-sad24x24.png | Bin 0 -> 1841 bytes data/emoticons/face-sad32x32.png | Bin 0 -> 2672 bytes data/emoticons/face-smile-big24x24.png | Bin 0 -> 1831 bytes data/emoticons/face-smile-big32x32.png | Bin 0 -> 2613 bytes data/emoticons/face-smile24x24.png | Bin 0 -> 1845 bytes data/emoticons/face-smile32x32.png | Bin 0 -> 2676 bytes data/emoticons/face-surprise24x24.png | Bin 0 -> 1839 bytes data/emoticons/face-surprise32x32.png | Bin 0 -> 2665 bytes data/emoticons/face-wink24x24.png | Bin 0 -> 1842 bytes data/emoticons/face-wink32x32.png | Bin 0 -> 2668 bytes data/stylesheets/default.qss | 97 + data/stylesheets/my.qss | 69 + data/tietoopcom.desktop | 13 + debian/changelog | 14 + debian/changelog_old | 244 + debian/compat | 1 + debian/control | 12 + debian/copyright | 28 + debian/files | 1 + debian/rules | 105 + debian/tietoopcom.install | 2 + debian/tietoopcom.substvars | 1 + debian/tietoopcom/DEBIAN/control | 10 + debian/tietoopcom/DEBIAN/md5sums | 32 + debian/tietoopcom/usr/bin/tietoopcom | Bin 0 -> 438852 bytes .../share/applications/hildon/tietoopcom.desktop | 13 + .../dbus-1/services/com.tieto.tietoopcom.service | 4 + .../share/tietoopcom/emoticons/face-angel24x24.png | Bin 0 -> 1885 bytes .../share/tietoopcom/emoticons/face-angel32x32.png | Bin 0 -> 2813 bytes .../tietoopcom/emoticons/face-crying24x24.png | Bin 0 -> 1909 bytes .../tietoopcom/emoticons/face-crying32x32.png | Bin 0 -> 2751 bytes .../tietoopcom/emoticons/face-devilish24x24.png | Bin 0 -> 1823 bytes .../tietoopcom/emoticons/face-devilish32x32.png | Bin 0 -> 2701 bytes .../tietoopcom/emoticons/face-glasses24x24.png | Bin 0 -> 1874 bytes .../tietoopcom/emoticons/face-glasses32x32.png | Bin 0 -> 2774 bytes .../share/tietoopcom/emoticons/face-grin24x24.png | Bin 0 -> 1867 bytes .../share/tietoopcom/emoticons/face-grin32x32.png | Bin 0 -> 2702 bytes .../share/tietoopcom/emoticons/face-kiss24x24.png | Bin 0 -> 1818 bytes .../share/tietoopcom/emoticons/face-kiss32x32.png | Bin 0 -> 2646 bytes .../tietoopcom/emoticons/face-monkey24x24.png | Bin 0 -> 1661 bytes .../tietoopcom/emoticons/face-monkey32x32.png | Bin 0 -> 2445 bytes .../share/tietoopcom/emoticons/face-plain24x24.png | Bin 0 -> 1785 bytes .../share/tietoopcom/emoticons/face-plain32x32.png | Bin 0 -> 2579 bytes .../share/tietoopcom/emoticons/face-sad24x24.png | Bin 0 -> 1841 bytes .../share/tietoopcom/emoticons/face-sad32x32.png | Bin 0 -> 2672 bytes .../tietoopcom/emoticons/face-smile-big24x24.png | Bin 0 -> 1831 bytes .../tietoopcom/emoticons/face-smile-big32x32.png | Bin 0 -> 2613 bytes .../share/tietoopcom/emoticons/face-smile24x24.png | Bin 0 -> 1845 bytes .../share/tietoopcom/emoticons/face-smile32x32.png | Bin 0 -> 2676 bytes .../tietoopcom/emoticons/face-surprise24x24.png | Bin 0 -> 1839 bytes .../tietoopcom/emoticons/face-surprise32x32.png | Bin 0 -> 2665 bytes .../share/tietoopcom/emoticons/face-wink24x24.png | Bin 0 -> 1842 bytes .../share/tietoopcom/emoticons/face-wink32x32.png | Bin 0 -> 2668 bytes .../usr/share/tietoopcom/licence/copyright | 30 + .../usr/share/tietoopcom/stylesheets/default.qss | 97 + .../usr/share/tietoopcom/stylesheets/my.qss | 69 + debian/tmp/usr/bin/tietoopcom | Bin 0 -> 439496 bytes .../share/applications/hildon/tietoopcom.desktop | 13 + .../dbus-1/services/com.tieto.tietoopcom.service | 4 + .../share/tietoopcom/emoticons/face-angel24x24.png | Bin 0 -> 1885 bytes .../share/tietoopcom/emoticons/face-angel32x32.png | Bin 0 -> 2813 bytes .../tietoopcom/emoticons/face-crying24x24.png | Bin 0 -> 1909 bytes .../tietoopcom/emoticons/face-crying32x32.png | Bin 0 -> 2751 bytes .../tietoopcom/emoticons/face-devilish24x24.png | Bin 0 -> 1823 bytes .../tietoopcom/emoticons/face-devilish32x32.png | Bin 0 -> 2701 bytes .../tietoopcom/emoticons/face-glasses24x24.png | Bin 0 -> 1874 bytes .../tietoopcom/emoticons/face-glasses32x32.png | Bin 0 -> 2774 bytes .../share/tietoopcom/emoticons/face-grin24x24.png | Bin 0 -> 1867 bytes .../share/tietoopcom/emoticons/face-grin32x32.png | Bin 0 -> 2702 bytes .../share/tietoopcom/emoticons/face-kiss24x24.png | Bin 0 -> 1818 bytes .../share/tietoopcom/emoticons/face-kiss32x32.png | Bin 0 -> 2646 bytes .../tietoopcom/emoticons/face-monkey24x24.png | Bin 0 -> 1661 bytes .../tietoopcom/emoticons/face-monkey32x32.png | Bin 0 -> 2445 bytes .../share/tietoopcom/emoticons/face-plain24x24.png | Bin 0 -> 1785 bytes .../share/tietoopcom/emoticons/face-plain32x32.png | Bin 0 -> 2579 bytes .../share/tietoopcom/emoticons/face-sad24x24.png | Bin 0 -> 1841 bytes .../share/tietoopcom/emoticons/face-sad32x32.png | Bin 0 -> 2672 bytes .../tietoopcom/emoticons/face-smile-big24x24.png | Bin 0 -> 1831 bytes .../tietoopcom/emoticons/face-smile-big32x32.png | Bin 0 -> 2613 bytes .../share/tietoopcom/emoticons/face-smile24x24.png | Bin 0 -> 1845 bytes .../share/tietoopcom/emoticons/face-smile32x32.png | Bin 0 -> 2676 bytes .../tietoopcom/emoticons/face-surprise24x24.png | Bin 0 -> 1839 bytes .../tietoopcom/emoticons/face-surprise32x32.png | Bin 0 -> 2665 bytes .../share/tietoopcom/emoticons/face-wink24x24.png | Bin 0 -> 1842 bytes .../share/tietoopcom/emoticons/face-wink32x32.png | Bin 0 -> 2668 bytes debian/tmp/usr/share/tietoopcom/licence/copyright | 30 + .../usr/share/tietoopcom/stylesheets/default.qss | 97 + debian/tmp/usr/share/tietoopcom/stylesheets/my.qss | 69 + description | 1 + hooks/applypatch-msg.sample | 15 + hooks/commit-msg.sample | 24 + hooks/post-commit.sample | 8 + hooks/post-receive.sample | 15 + hooks/post-update.sample | 8 + hooks/pre-applypatch.sample | 14 + hooks/pre-commit.sample | 46 + hooks/pre-rebase.sample | 169 + hooks/prepare-commit-msg.sample | 36 + hooks/update.sample | 128 + include/TocEngine/TocBaseEngine | 1 + include/TocEngine/TocEngine | 1 + include/TocEngine/TocEngine.pri | 11 + include/TocEngine/tocbaseengine.h | 191 + include/TocEngine/tocengine.h | 239 + include/TocSettings | 1 + include/TocUi/IconProvider | 1 + include/TocUi/TocAccountIntermediateWidget | 1 + include/TocUi/TocAccountSettingsWidget | 1 + include/TocUi/TocBaseMainWindow | 1 + include/TocUi/TocChatWidget | 1 + include/TocUi/TocContactListWidget | 1 + include/TocUi/TocEmoticonsDialog | 1 + include/TocUi/TocGeneralSettingsWidget | 1 + include/TocUi/TocMainToolbar | 1 + include/TocUi/TocMainWindow | 1 + include/TocUi/TocSettingsWidget | 1 + include/TocUi/TocThemesSettingsWidget | 1 + include/TocUi/TocUi.pri | 28 + include/TocUi/TocUserInfoWidget | 1 + include/TocUi/iconprovider.h | 126 + include/TocUi/tocaccountintermediatewidget.h | 108 + include/TocUi/tocaccountsettingswidget.h | 204 + include/TocUi/tocbasemainwindow.h | 192 + include/TocUi/tocchatwidget.h | 194 + include/TocUi/toccontactlistwidget.h | 284 + include/TocUi/tocemoticonsdialog.h | 97 + include/TocUi/tocgeneralsettingswidget.h | 90 + include/TocUi/tocmaintoolbar.h | 456 ++ include/TocUi/tocmainwindow.h | 322 + include/TocUi/tocsettingswidget.h | 97 + include/TocUi/tocthemessettingswidget.h | 105 + include/TocUi/tocuserinfowidget.h | 122 + include/defs.h | 123 + include/include.pri | 12 + include/macros.h | 46 + include/tocsettings.h | 334 ++ include/uidefs.h | 113 + include/version.h | 8 + include/version.in | 8 + info/exclude | 6 + resources/account.png | Bin 0 -> 11001 bytes resources/activesessions.png | Bin 0 -> 7935 bytes resources/addcontact.png | Bin 0 -> 3858 bytes resources/away.png | Bin 0 -> 3789 bytes resources/busy.png | Bin 0 -> 3119 bytes resources/close.png | Bin 0 -> 2772 bytes resources/contactfemale.png | Bin 0 -> 4280 bytes resources/contactmale.png | Bin 0 -> 4049 bytes resources/contacts.png | Bin 0 -> 8273 bytes resources/enter.png | Bin 0 -> 2055 bytes resources/general.png | Bin 0 -> 7101 bytes resources/greenframe.png | Bin 0 -> 1747 bytes resources/hidden.png | Bin 0 -> 2805 bytes resources/jabber.png | Bin 0 -> 4762 bytes resources/network.png | Bin 0 -> 5571 bytes resources/offline.png | Bin 0 -> 2472 bytes resources/online.png | Bin 0 -> 2941 bytes resources/redframe.png | Bin 0 -> 1250 bytes resources/restore.png | Bin 0 -> 2312 bytes resources/settings.png | Bin 0 -> 4454 bytes resources/themes.png | Bin 0 -> 7886 bytes resources/tieto-logo.png | Bin 0 -> 1080 bytes resources/unknown.png | Bin 0 -> 3770 bytes resources/yellowframe.png | Bin 0 -> 1998 bytes src/Makefile | 155 + src/Makefile.Debug | 555 ++ src/Makefile.Release | 556 ++ src/TocEngine/TocBaseEngine.cpp | 39 + src/TocEngine/TocEngine.cpp | 535 ++ src/TocEngine/TocEngine.pri | 9 + src/TocSettings.cpp | 380 ++ src/TocUi/ChangePasswordDialog.ui | 386 ++ src/TocUi/IconProvider.cpp | 263 + src/TocUi/TocAccountIntermediateWidget.cpp | 154 + src/TocUi/TocAccountSettingsWidget.cpp | 234 + src/TocUi/TocAccountSettingsWidget.ui | 609 ++ src/TocUi/TocBaseMainWindow.cpp | 71 + src/TocUi/TocChatWidget.cpp | 362 ++ src/TocUi/TocChatWidget.ui | 257 + src/TocUi/TocContactListWidget.cpp | 417 ++ src/TocUi/TocEmoticonsDialog.cpp | 114 + src/TocUi/TocEmoticonsDialog.ui | 125 + src/TocUi/TocGeneralSettingsWidget.cpp | 119 + src/TocUi/TocGeneralSettingsWidget.ui | 454 ++ src/TocUi/TocMainToolbar.cpp | 980 ++++ src/TocUi/TocMainWindow.cpp | 613 ++ src/TocUi/TocSettingsWidget.cpp | 129 + src/TocUi/TocThemesSettingsWidget.cpp | 102 + src/TocUi/TocThemesSettingsWidget.ui | 255 + src/TocUi/TocUi.pri | 21 + src/TocUi/TocUserInfoWidget.cpp | 250 + src/TocUi/TocUserInfoWidget.ui | 497 ++ src/application.qrc | 26 + src/main.cpp | 67 + src/src.pro | 36 + tieto-logo.png | Bin 0 -> 3628 bytes tietoopcom.pro | 33 + 262 files changed, 28356 insertions(+) create mode 100644 Doxyfile create mode 100644 HEAD create mode 100644 Makefile create mode 100644 bin/tietoopcom create mode 100644 build-stamp create mode 100644 build/release/moc_tecaccountintermediatewidget.cpp create mode 100644 build/release/moc_tecaccountsettingswidget.cpp create mode 100644 build/release/moc_tecbaseengine.cpp create mode 100644 build/release/moc_tecbasemainwindow.cpp create mode 100644 build/release/moc_tecchatwidget.cpp create mode 100644 build/release/moc_teccontactlistwidget.cpp create mode 100644 build/release/moc_tecemoticonsdialog.cpp create mode 100644 build/release/moc_tecengine.cpp create mode 100644 build/release/moc_tecgeneralsettingswidget.cpp create mode 100644 build/release/moc_tecmaintoolbar.cpp create mode 100644 build/release/moc_tecmainwindow.cpp create mode 100644 build/release/moc_tecsettingswidget.cpp create mode 100644 build/release/moc_tecthemessettingswidget.cpp create mode 100644 build/release/moc_tecuserinfowidget.cpp create mode 100644 build/release/moc_tocaccountintermediatewidget.cpp create mode 100644 build/release/moc_tocaccountsettingswidget.cpp create mode 100644 build/release/moc_tocbaseengine.cpp create mode 100644 build/release/moc_tocbasemainwindow.cpp create mode 100644 build/release/moc_tocchatwidget.cpp create mode 100644 build/release/moc_toccontactlistwidget.cpp create mode 100644 build/release/moc_tocemoticonsdialog.cpp create mode 100644 build/release/moc_tocengine.cpp create mode 100644 build/release/moc_tocgeneralsettingswidget.cpp create mode 100644 build/release/moc_tocmaintoolbar.cpp create mode 100644 build/release/moc_tocmainwindow.cpp create mode 100644 build/release/moc_tocsettingswidget.cpp create mode 100644 build/release/moc_tocthemessettingswidget.cpp create mode 100644 build/release/moc_tocuserinfowidget.cpp create mode 100644 build/release/qrc_application.cpp create mode 100644 build/release/ui_TecAccountSettingsWidget.h create mode 100644 build/release/ui_TecChatWidget.h create mode 100644 build/release/ui_TecEmoticonsDialog.h create mode 100644 build/release/ui_TecGeneralSettingsWidget.h create mode 100644 build/release/ui_TecThemesSettingsWidget.h create mode 100644 build/release/ui_TecUserInfoWidget.h create mode 100644 build/release/ui_TocAccountSettingsWidget.h create mode 100644 build/release/ui_TocChatWidget.h create mode 100644 build/release/ui_TocEmoticonsDialog.h create mode 100644 build/release/ui_TocGeneralSettingsWidget.h create mode 100644 build/release/ui_TocThemesSettingsWidget.h create mode 100644 build/release/ui_TocUserInfoWidget.h create mode 100644 config create mode 100644 configure create mode 100644 configure-stamp create mode 100644 data/com.tieto.tietoopcom.service create mode 100644 data/copyright create mode 100644 data/emoticons/face-angel24x24.png create mode 100644 data/emoticons/face-angel32x32.png create mode 100644 data/emoticons/face-crying24x24.png create mode 100644 data/emoticons/face-crying32x32.png create mode 100644 data/emoticons/face-devilish24x24.png create mode 100644 data/emoticons/face-devilish32x32.png create mode 100644 data/emoticons/face-glasses24x24.png create mode 100644 data/emoticons/face-glasses32x32.png create mode 100644 data/emoticons/face-grin24x24.png create mode 100644 data/emoticons/face-grin32x32.png create mode 100644 data/emoticons/face-kiss24x24.png create mode 100644 data/emoticons/face-kiss32x32.png create mode 100644 data/emoticons/face-monkey24x24.png create mode 100644 data/emoticons/face-monkey32x32.png create mode 100644 data/emoticons/face-plain24x24.png create mode 100644 data/emoticons/face-plain32x32.png create mode 100644 data/emoticons/face-sad24x24.png create mode 100644 data/emoticons/face-sad32x32.png create mode 100644 data/emoticons/face-smile-big24x24.png create mode 100644 data/emoticons/face-smile-big32x32.png create mode 100644 data/emoticons/face-smile24x24.png create mode 100644 data/emoticons/face-smile32x32.png create mode 100644 data/emoticons/face-surprise24x24.png create mode 100644 data/emoticons/face-surprise32x32.png create mode 100644 data/emoticons/face-wink24x24.png create mode 100644 data/emoticons/face-wink32x32.png create mode 100644 data/stylesheets/default.qss create mode 100644 data/stylesheets/my.qss create mode 100644 data/tietoopcom.desktop create mode 100644 debian/changelog create mode 100644 debian/changelog_old create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/files create mode 100644 debian/rules create mode 100644 debian/tietoopcom.install create mode 100644 debian/tietoopcom.substvars create mode 100644 debian/tietoopcom/DEBIAN/control create mode 100644 debian/tietoopcom/DEBIAN/md5sums create mode 100644 debian/tietoopcom/usr/bin/tietoopcom create mode 100644 debian/tietoopcom/usr/share/applications/hildon/tietoopcom.desktop create mode 100644 debian/tietoopcom/usr/share/dbus-1/services/com.tieto.tietoopcom.service create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-angel24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-angel32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-crying24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-crying32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-devilish24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-devilish32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-glasses24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-glasses32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-grin24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-grin32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-kiss24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-kiss32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-monkey24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-monkey32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-plain24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-plain32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-sad24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-sad32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-smile-big24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-smile-big32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-smile24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-smile32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-surprise24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-surprise32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-wink24x24.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/emoticons/face-wink32x32.png create mode 100644 debian/tietoopcom/usr/share/tietoopcom/licence/copyright create mode 100644 debian/tietoopcom/usr/share/tietoopcom/stylesheets/default.qss create mode 100644 debian/tietoopcom/usr/share/tietoopcom/stylesheets/my.qss create mode 100644 debian/tmp/usr/bin/tietoopcom create mode 100644 debian/tmp/usr/share/applications/hildon/tietoopcom.desktop create mode 100644 debian/tmp/usr/share/dbus-1/services/com.tieto.tietoopcom.service create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-angel24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-angel32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-crying24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-crying32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-devilish24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-devilish32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-glasses24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-glasses32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-grin24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-grin32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-kiss24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-kiss32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-monkey24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-monkey32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-plain24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-plain32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-sad24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-sad32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-smile-big24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-smile-big32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-smile24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-smile32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-surprise24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-surprise32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-wink24x24.png create mode 100644 debian/tmp/usr/share/tietoopcom/emoticons/face-wink32x32.png create mode 100644 debian/tmp/usr/share/tietoopcom/licence/copyright create mode 100644 debian/tmp/usr/share/tietoopcom/stylesheets/default.qss create mode 100644 debian/tmp/usr/share/tietoopcom/stylesheets/my.qss create mode 100644 description create mode 100755 hooks/applypatch-msg.sample create mode 100755 hooks/commit-msg.sample create mode 100755 hooks/post-commit.sample create mode 100755 hooks/post-receive.sample create mode 100755 hooks/post-update.sample create mode 100755 hooks/pre-applypatch.sample create mode 100755 hooks/pre-commit.sample create mode 100755 hooks/pre-rebase.sample create mode 100755 hooks/prepare-commit-msg.sample create mode 100755 hooks/update.sample create mode 100644 include/TocEngine/TocBaseEngine create mode 100644 include/TocEngine/TocEngine create mode 100644 include/TocEngine/TocEngine.pri create mode 100644 include/TocEngine/tocbaseengine.h create mode 100644 include/TocEngine/tocengine.h create mode 100644 include/TocSettings create mode 100644 include/TocUi/IconProvider create mode 100644 include/TocUi/TocAccountIntermediateWidget create mode 100644 include/TocUi/TocAccountSettingsWidget create mode 100644 include/TocUi/TocBaseMainWindow create mode 100644 include/TocUi/TocChatWidget create mode 100644 include/TocUi/TocContactListWidget create mode 100644 include/TocUi/TocEmoticonsDialog create mode 100644 include/TocUi/TocGeneralSettingsWidget create mode 100644 include/TocUi/TocMainToolbar create mode 100644 include/TocUi/TocMainWindow create mode 100644 include/TocUi/TocSettingsWidget create mode 100644 include/TocUi/TocThemesSettingsWidget create mode 100644 include/TocUi/TocUi.pri create mode 100644 include/TocUi/TocUserInfoWidget create mode 100644 include/TocUi/iconprovider.h create mode 100644 include/TocUi/tocaccountintermediatewidget.h create mode 100644 include/TocUi/tocaccountsettingswidget.h create mode 100644 include/TocUi/tocbasemainwindow.h create mode 100644 include/TocUi/tocchatwidget.h create mode 100644 include/TocUi/toccontactlistwidget.h create mode 100644 include/TocUi/tocemoticonsdialog.h create mode 100644 include/TocUi/tocgeneralsettingswidget.h create mode 100644 include/TocUi/tocmaintoolbar.h create mode 100644 include/TocUi/tocmainwindow.h create mode 100644 include/TocUi/tocsettingswidget.h create mode 100644 include/TocUi/tocthemessettingswidget.h create mode 100644 include/TocUi/tocuserinfowidget.h create mode 100644 include/defs.h create mode 100644 include/include.pri create mode 100644 include/macros.h create mode 100644 include/tocsettings.h create mode 100644 include/uidefs.h create mode 100644 include/version.h create mode 100644 include/version.in create mode 100644 info/exclude create mode 100644 resources/account.png create mode 100644 resources/activesessions.png create mode 100644 resources/addcontact.png create mode 100644 resources/away.png create mode 100644 resources/busy.png create mode 100644 resources/close.png create mode 100644 resources/contactfemale.png create mode 100644 resources/contactmale.png create mode 100644 resources/contacts.png create mode 100644 resources/enter.png create mode 100644 resources/general.png create mode 100644 resources/greenframe.png create mode 100644 resources/hidden.png create mode 100644 resources/jabber.png create mode 100644 resources/network.png create mode 100644 resources/offline.png create mode 100644 resources/online.png create mode 100644 resources/redframe.png create mode 100644 resources/restore.png create mode 100644 resources/settings.png create mode 100644 resources/themes.png create mode 100644 resources/tieto-logo.png create mode 100644 resources/unknown.png create mode 100644 resources/yellowframe.png create mode 100644 src/Makefile create mode 100644 src/Makefile.Debug create mode 100644 src/Makefile.Release create mode 100644 src/TocEngine/TocBaseEngine.cpp create mode 100644 src/TocEngine/TocEngine.cpp create mode 100644 src/TocEngine/TocEngine.pri create mode 100644 src/TocSettings.cpp create mode 100644 src/TocUi/ChangePasswordDialog.ui create mode 100644 src/TocUi/IconProvider.cpp create mode 100644 src/TocUi/TocAccountIntermediateWidget.cpp create mode 100644 src/TocUi/TocAccountSettingsWidget.cpp create mode 100644 src/TocUi/TocAccountSettingsWidget.ui create mode 100644 src/TocUi/TocBaseMainWindow.cpp create mode 100644 src/TocUi/TocChatWidget.cpp create mode 100644 src/TocUi/TocChatWidget.ui create mode 100644 src/TocUi/TocContactListWidget.cpp create mode 100644 src/TocUi/TocEmoticonsDialog.cpp create mode 100644 src/TocUi/TocEmoticonsDialog.ui create mode 100644 src/TocUi/TocGeneralSettingsWidget.cpp create mode 100644 src/TocUi/TocGeneralSettingsWidget.ui create mode 100644 src/TocUi/TocMainToolbar.cpp create mode 100644 src/TocUi/TocMainWindow.cpp create mode 100644 src/TocUi/TocSettingsWidget.cpp create mode 100644 src/TocUi/TocThemesSettingsWidget.cpp create mode 100644 src/TocUi/TocThemesSettingsWidget.ui create mode 100644 src/TocUi/TocUi.pri create mode 100644 src/TocUi/TocUserInfoWidget.cpp create mode 100644 src/TocUi/TocUserInfoWidget.ui create mode 100644 src/application.qrc create mode 100644 src/main.cpp create mode 100644 src/src.pro create mode 100644 tieto-logo.png create mode 100644 tietoopcom.pro diff --git a/Doxyfile b/Doxyfile new file mode 100644 index 0000000..fa0f3bc --- /dev/null +++ b/Doxyfile @@ -0,0 +1,1252 @@ +# Doxyfile 1.5.1 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project +# +# All text after a hash (#) is considered a comment and will be ignored +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" ") + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded +# by quotes) that should identify the project. + +PROJECT_NAME = Tieto Open Communicator (tietoopcom) + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = 0.5 + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = docs + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 4096 sub-directories (in 2 levels) under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of +# source files, where putting all generated files in the same directory would +# otherwise cause performance problems for the file system. + +CREATE_SUBDIRS = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, +# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, +# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, +# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, +# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. + +OUTPUT_LANGUAGE = English + +# This tag can be used to specify the encoding used in the generated output. +# The encoding is not always determined by the language that is chosen, +# but also whether or not the output is meant for Windows or non-Windows users. +# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES +# forces the Windows encoding (this is the default for the Windows binary), +# whereas setting the tag to NO uses a Unix-style encoding (the default for +# all platforms other than Windows). + +USE_WINDOWS_ENCODING = NO + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is +# used as the annotated text. Otherwise, the brief description is used as-is. +# If left blank, the following values are used ("$name" is automatically +# replaced with the name of the entity): "The $name class" "The $name widget" +# "The $name file" "is" "provides" "specifies" "contains" +# "represents" "a" "an" "the" + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = YES + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the +# path to strip. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that +# are normally passed to the compiler using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful is your file systems +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like the Qt-style comments (thus requiring an +# explicit @brief command for a brief description. + +JAVADOC_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the DETAILS_AT_TOP tag is set to YES then Doxygen +# will output the detailed description near the top, like JavaDoc. +# If set to NO, the detailed description appears after the member +# documentation. + +DETAILS_AT_TOP = NO + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# re-implements. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce +# a new page for each member. If set to NO, the documentation of a member will +# be part of the file/class/namespace that contains it. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 8 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C +# sources only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java +# sources only. Doxygen will then generate output that is more tailored for Java. +# For instance, namespaces will be presented as packages, qualified scopes +# will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to +# include (a tag file for) the STL sources as input, then you should +# set this tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. +# func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. + +BUILTIN_STL_SUPPORT = NO + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = YES + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = YES + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = YES + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. +# If set to NO (the default) only methods in the interface are included. + +EXTRACT_LOCAL_METHODS = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = YES + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in +# declaration order. + +SORT_BRIEF_DOCS = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the +# alphabetical list. + +SORT_BY_SCOPE_NAME = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or define consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and defines in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = YES + +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# in the documentation. The default is NO. + +SHOW_DIRECTORIES = NO + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from the +# version control system). Doxygen will invoke the program by executing (via +# popen()) the command , where is the value of +# the FILE_VERSION_FILTER tag, and is the name of an input file +# provided by doxygen. Whatever the program writes to standard output +# is used as the file version. See the manual for examples. + +FILE_VERSION_FILTER = + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be abled to get warnings for +# functions that are documented, but have no documentation for their parameters +# or return value. If set to NO (the default) doxygen will only warn about +# wrong or incomplete parameter documentation, but not about the absence of +# documentation. + +WARN_NO_PARAMDOC = NO + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. Optionally the format may contain +# $version, which will be replaced by the version of the file (if it could +# be obtained via FILE_VERSION_FILTER) + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +INPUT = include src + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py + +FILE_PATTERNS = + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = YES + +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or +# directories that are symbolic links (a Unix filesystem feature) are excluded +# from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. Note that the wildcards are matched +# against the file with absolute path, so to exclude all test directories +# for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command , where +# is the value of the INPUT_FILTER tag, and is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. If FILTER_PATTERNS is specified, this tag will be +# ignored. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER +# is applied to all files. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES (the default) +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = YES + +# If the REFERENCES_RELATION tag is set to YES (the default) +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = YES + +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will +# link to the source code. Otherwise they will link to the documentstion. + +REFERENCES_LINK_SOURCE = YES + +# If the USE_HTAGS tag is set to YES then the references to source code +# will point to the HTML generated by the htags(1) tool instead of doxygen +# built-in source browser. The htags tool is part of GNU's global source +# tagging system (see http://www.gnu.org/software/global/global.html). You +# will need version 4.8.6 or higher. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = YES + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = NO + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own +# stylesheet in the HTML output directory as well, or it will be erased! + +HTML_STYLESHEET = + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output directory. + +CHM_FILE = + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = NO + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. + +DISABLE_INDEX = NO + +# This tag can be used to set the number of enum values (range [1..20]) +# that doxygen will group on one line in the generated HTML documentation. + +ENUM_VALUES_PER_LINE = 4 + +# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be +# generated containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are +# probably better off using the HTML help feature. + +GENERATE_TREEVIEW = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = YES + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, a4wide, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = a4wide + +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# packages that should be included in the LaTeX output. + +EXTRA_PACKAGES = + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a +# standard header. Notice: only use this tag if you know what you are doing! + +LATEX_HEADER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references +# This makes the output suitable for online browsing using a pdf viewer. + +PDF_HYPERLINKS = NO + +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a +# higher quality PDF documentation. + +USE_PDFLATEX = NO + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. +# This option is also used when generating formulas in HTML. + +LATEX_BATCHMODE = NO + +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) +# in the output. + +LATEX_HIDE_INDICES = NO + +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimized for Word 97 and may not look very pretty with +# other RTF readers or editors. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `rtf' will be used as the default path. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. +# Note: wordpad (write) and others do not support links. + +RTF_HYPERLINKS = NO + +# Load stylesheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assignments. You only have to provide +# replacements, missing definitions are set to their default value. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an rtf document. +# Syntax is similar to doxygen's config file. + +RTF_EXTENSIONS_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# generate man pages + +GENERATE_MAN = NO + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `man' will be used as the default path. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to +# the generated man pages (default is the subroutine's section .3) + +MAN_EXTENSION = .3 + +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command +# would be unable to find the correct page. The default is NO. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of +# the code including all documentation. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `xml' will be used as the default path. + +XML_OUTPUT = xml + +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will +# dump the program listings (including syntax highlighting +# and cross-referencing information) to the XML output. Note that +# enabling this will significantly increase the size of the XML output. + +XML_PROGRAMLISTING = YES + +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental +# and incomplete at the moment. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# to generate PDF and DVI output from the Perl module output. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. This is useful +# if you want to understand what is going on. On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller +# and Perl will parse it just the same. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same +# Makefile don't overwrite each other's variables. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include +# files. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled +# way by setting EXPAND_ONLY_PREDEF to YES. + +MACRO_EXPANSION = NO + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the +# PREDEFINED and EXPAND_AS_DEFINED tags. + +EXPAND_ONLY_PREDEF = NO + +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# in the INCLUDE_PATH (see below) will be search if a #include is found. + +SEARCH_INCLUDES = YES + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by +# the preprocessor. + +INCLUDE_PATH = + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will +# be used. + +INCLUDE_FILE_PATTERNS = + +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. To prevent a macro definition from being +# undefined via #undef or recursively expanded use the := operator +# instead of the = operator. + +PREDEFINED = + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition. + +EXPAND_AS_DEFINED = + +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all function-like macros that are alone +# on a line, have an all uppercase name, and do not end with a semicolon. Such +# function macros are typically used for boiler-plate code, and will confuse +# the parser if not removed. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool +# does not have to be run to correct the links. +# Note that each tag file must have a unique name +# (where the name does NOT include the path) +# If a tag file is not located in the directory in which doxygen +# is run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# a tag file that is based on the input files it reads. + +GENERATE_TAGFILE = + +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes +# will be listed. + +ALLEXTERNALS = NO + +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will +# be listed. + +EXTERNAL_GROUPS = YES + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of `which perl'). + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base +# or super classes. Setting the tag to NO turns the diagrams off. Note that +# this option is superseded by the HAVE_DOT option below. This is only a +# fallback. It is recommended to install and use dot, since it yields more +# powerful graphs. + +CLASS_DIAGRAMS = YES + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented +# or is not a class. + +HIDE_UNDOC_RELATIONS = YES + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# have no effect if this option is set to NO (the default) + +HAVE_DOT = NO + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the +# the CLASS_DIAGRAMS tag to NO. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and +# class references variables) of the class with other documented classes. + +COLLABORATION_GRAPH = YES + +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for groups, showing the direct groups dependencies + +GROUP_GRAPHS = YES + +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling +# Language. + +UML_LOOK = NO + +# If set to YES, the inheritance and collaboration graphs will show the +# relations between templates and their instances. + +TEMPLATE_RELATIONS = NO + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with +# other documented files. + +INCLUDE_GRAPH = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or +# indirectly include this file. + +INCLUDED_BY_GRAPH = YES + +# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will +# generate a call dependency graph for every global function or class method. +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable call graphs for selected +# functions only using the \callgraph command. + +CALL_GRAPH = NO + +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then doxygen will +# generate a caller dependency graph for every global function or class method. +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable caller graphs for selected +# functions only using the \callergraph command. + +CALLER_GRAPH = NO + +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will graphical hierarchy of all classes instead of a textual one. + +GRAPHICAL_HIERARCHY = YES + +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES +# then doxygen will show the dependencies a directory has on other directories +# in a graphical way. The dependency relations are determined by the #include +# relations between the files in the directories. + +DIRECTORY_GRAPH = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are png, jpg, or gif +# If left blank png will be used. + +DOT_IMAGE_FORMAT = png + +# The tag DOT_PATH can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found in the path. + +DOT_PATH = + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the +# \dotfile command). + +DOTFILE_DIRS = + +# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width +# (in pixels) of the graphs generated by dot. If a graph becomes larger than +# this value, doxygen will try to truncate the graph, so that it fits within +# the specified constraint. Beware that most browsers cannot cope with very +# large images. + +MAX_DOT_GRAPH_WIDTH = 1024 + +# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height +# (in pixels) of the graphs generated by dot. If a graph becomes larger than +# this value, doxygen will try to truncate the graph, so that it fits within +# the specified constraint. Beware that most browsers cannot cope with very +# large images. + +MAX_DOT_GRAPH_HEIGHT = 1024 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes +# that lay further from the root node will be omitted. Note that setting this +# option to 1 or 2 may greatly reduce the computation time needed for large +# code bases. Also note that a graph may be further truncated if the graph's +# image dimensions are not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH +# and MAX_DOT_GRAPH_HEIGHT). If 0 is used for the depth value (the default), +# the graph is not depth-constrained. + +MAX_DOT_GRAPH_DEPTH = 0 + +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent +# background. This is disabled by default, which results in a white background. +# Warning: Depending on the platform used, enabling this option may lead to +# badly anti-aliased labels on the edges of a graph (i.e. they become hard to +# read). + +DOT_TRANSPARENT = NO + +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output +# files in one run (i.e. multiple -o and -T options on the command line). This +# makes dot run faster, but since only newer versions of dot (>1.8.10) +# support this, this feature is disabled by default. + +DOT_MULTI_TARGETS = NO + +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and +# arrows in the dot generated graphs. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate +# the various graphs. + +DOT_CLEANUP = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to the search engine +#--------------------------------------------------------------------------- + +# The SEARCHENGINE tag specifies whether or not a search engine should be +# used. If set to NO the values of all tags below this one will be ignored. + +SEARCHENGINE = NO diff --git a/HEAD b/HEAD new file mode 100644 index 0000000..cb089cd --- /dev/null +++ b/HEAD @@ -0,0 +1 @@ +ref: refs/heads/master diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..7a3d257 --- /dev/null +++ b/Makefile @@ -0,0 +1,256 @@ +############################################################################# +# Makefile for building: tietoopcom +# Generated by qmake (2.01a) (Qt 4.6.2) on: Thu Jul 8 08:48:04 2010 +# Project: tietoopcom.pro +# Template: subdirs +# Command: /usr/bin/qmake -unix -o Makefile tietoopcom.pro +############################################################################# + +first: make_default +MAKEFILE = Makefile +QMAKE = /usr/bin/qmake +DEL_FILE = rm -f +CHK_DIR_EXISTS= test -d +MKDIR = mkdir -p +COPY = cp -f +COPY_FILE = $(COPY) +COPY_DIR = $(COPY) -r +INSTALL_FILE = install -m 644 -p +INSTALL_PROGRAM = install -m 755 -p +INSTALL_DIR = $(COPY_DIR) +DEL_FILE = rm -f +SYMLINK = ln -f -s +DEL_DIR = rmdir +MOVE = mv -f +CHK_DIR_EXISTS= test -d +MKDIR = mkdir -p +SUBTARGETS = \ + sub-src + +src/$(MAKEFILE): + @$(CHK_DIR_EXISTS) src/ || $(MKDIR) src/ + cd src/ && $(QMAKE) /home/maemo/tietoopcom/src/src.pro -unix -o $(MAKEFILE) +sub-src-qmake_all: FORCE + @$(CHK_DIR_EXISTS) src/ || $(MKDIR) src/ + cd src/ && $(QMAKE) /home/maemo/tietoopcom/src/src.pro -unix -o $(MAKEFILE) +sub-src: src/$(MAKEFILE) FORCE + cd src/ && $(MAKE) -f $(MAKEFILE) +sub-src-make_default: src/$(MAKEFILE) FORCE + cd src/ && $(MAKE) -f $(MAKEFILE) +sub-src-make_first: src/$(MAKEFILE) FORCE + cd src/ && $(MAKE) -f $(MAKEFILE) first +sub-src-all: src/$(MAKEFILE) FORCE + cd src/ && $(MAKE) -f $(MAKEFILE) all +sub-src-clean: src/$(MAKEFILE) FORCE + cd src/ && $(MAKE) -f $(MAKEFILE) clean +sub-src-distclean: src/$(MAKEFILE) FORCE + cd src/ && $(MAKE) -f $(MAKEFILE) distclean +sub-src-install_subtargets: src/$(MAKEFILE) FORCE + cd src/ && $(MAKE) -f $(MAKEFILE) install +sub-src-uninstall_subtargets: src/$(MAKEFILE) FORCE + cd src/ && $(MAKE) -f $(MAKEFILE) uninstall + +Makefile: tietoopcom.pro /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/linux-g++/qmake.conf /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/g++.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/unix.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/linux.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/qconfig.pri \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_functions.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_config.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/exclusive_builds.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_pre.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/release.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/debug_and_release.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_post.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/warn_on.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/unix/thread.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/moc.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/resources.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/uic.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/yacc.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/lex.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/include_source_dir.prf + $(QMAKE) -unix -o Makefile tietoopcom.pro +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/g++.conf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/unix.conf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/linux.conf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/qconfig.pri: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_functions.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_config.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/exclusive_builds.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_pre.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/release.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/debug_and_release.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_post.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/warn_on.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/unix/thread.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/moc.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/resources.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/uic.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/yacc.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/lex.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/include_source_dir.prf: +qmake: qmake_all FORCE + @$(QMAKE) -unix -o Makefile tietoopcom.pro + +qmake_all: sub-src-qmake_all FORCE + +make_default: sub-src-make_default FORCE +make_first: sub-src-make_first FORCE +all: sub-src-all FORCE +clean: sub-src-clean FORCE +distclean: sub-src-distclean FORCE + -$(DEL_FILE) Makefile +install_subtargets: sub-src-install_subtargets FORCE +uninstall_subtargets: sub-src-uninstall_subtargets FORCE + +sub-src-sub_Debug: src/$(MAKEFILE) + cd src/ && $(MAKE) debug +debug: sub-src-sub_Debug + +sub-src-sub_Release: src/$(MAKEFILE) + cd src/ && $(MAKE) release +release: sub-src-sub_Release + +mocclean: compiler_moc_header_clean compiler_moc_source_clean + +mocables: compiler_moc_header_make_all compiler_moc_source_make_all +install_service: FORCE + @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/usr/share/dbus-1/services/ || $(MKDIR) $(INSTALL_ROOT)/usr/share/dbus-1/services/ + -$(INSTALL_FILE) /home/maemo/tietoopcom/data/com.tieto.tietoopcom.service $(INSTALL_ROOT)/usr/share/dbus-1/services/ + + +uninstall_service: FORCE + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/dbus-1/services/com.tieto.tietoopcom.service + -$(DEL_DIR) $(INSTALL_ROOT)/usr/share/dbus-1/services/ + + +install_emoticons: FORCE + @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ || $(MKDIR) $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-angel24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-angel24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-angel32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-angel32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-crying24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-crying24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-crying32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-crying32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-devilish24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-devilish24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-devilish32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-devilish32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-glasses24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-glasses24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-glasses32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-glasses32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-grin24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-grin24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-grin32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-grin32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-kiss24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-kiss24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-kiss32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-kiss32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-monkey24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-monkey24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-monkey32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-monkey32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-plain24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-plain24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-plain32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-plain32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-sad24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-sad24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-sad32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-sad32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-smile-big24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-smile-big24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-smile-big32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-smile-big32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-smile24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-smile24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-smile32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-smile32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-surprise24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-surprise24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-surprise32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-surprise32x32.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-wink24x24.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-wink24x24.png + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/emoticons/face-wink32x32.png $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-wink32x32.png + + +uninstall_emoticons: FORCE + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-angel24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-angel32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-crying24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-crying32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-devilish24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-devilish32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-glasses24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-glasses32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-grin24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-grin32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-kiss24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-kiss32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-monkey24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-monkey32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-plain24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-plain32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-sad24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-sad32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-smile-big24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-smile-big32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-smile24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-smile32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-surprise24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-surprise32x32.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-wink24x24.png + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/face-wink32x32.png + -$(DEL_DIR) $(INSTALL_ROOT)/usr/share/tietoopcom/emoticons/ + + +install_desktop: FORCE + @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/usr/share/applications/hildon/ || $(MKDIR) $(INSTALL_ROOT)/usr/share/applications/hildon/ + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/tietoopcom.desktop $(INSTALL_ROOT)/usr/share/applications/hildon/ + -strip $(INSTALL_ROOT)/usr/share/applications/hildon/tietoopcom.desktop + + +uninstall_desktop: FORCE + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/applications/hildon/tietoopcom.desktop + -$(DEL_DIR) $(INSTALL_ROOT)/usr/share/applications/hildon/ + + +install_stylesheets: FORCE + @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/ || $(MKDIR) $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/ + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/stylesheets/default.qss $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/default.qss + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/stylesheets/my.qss $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/my.qss + + +uninstall_stylesheets: FORCE + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/default.qss + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/my.qss + -$(DEL_DIR) $(INSTALL_ROOT)/usr/share/tietoopcom/stylesheets/ + + +install_licence: FORCE + @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/usr/share/tietoopcom/licence/ || $(MKDIR) $(INSTALL_ROOT)/usr/share/tietoopcom/licence/ + -$(INSTALL_PROGRAM) /home/maemo/tietoopcom/data/copyright $(INSTALL_ROOT)/usr/share/tietoopcom/licence/ + -strip $(INSTALL_ROOT)/usr/share/tietoopcom/licence/copyright + + +uninstall_licence: FORCE + -$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/tietoopcom/licence/copyright + -$(DEL_DIR) $(INSTALL_ROOT)/usr/share/tietoopcom/licence/ + + +install: install_subtargets install_service install_emoticons install_desktop install_stylesheets install_licence FORCE + +uninstall: uninstall_service uninstall_emoticons uninstall_desktop uninstall_stylesheets uninstall_licence uninstall_subtargets FORCE + +FORCE: + diff --git a/bin/tietoopcom b/bin/tietoopcom new file mode 100644 index 0000000000000000000000000000000000000000..f832d681925c7ed6bea8fe36ec430adc362c67bf GIT binary patch literal 506067 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 z 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�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." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecAccountIntermediateWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 3, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 3, // signalCount + + // signals: signature, parameters, type, tag, flags + 30, 29, 29, 29, 0x05, + 46, 29, 29, 29, 0x05, + 60, 29, 29, 29, 0x05, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecAccountIntermediateWidget[] = { + "TecAccountIntermediateWidget\0\0" + "createClicked()\0editClicked()\0" + "backClicked()\0" +}; + +const QMetaObject TecAccountIntermediateWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TecAccountIntermediateWidget, + qt_meta_data_TecAccountIntermediateWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecAccountIntermediateWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecAccountIntermediateWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecAccountIntermediateWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecAccountIntermediateWidget)) + return static_cast(const_cast< TecAccountIntermediateWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TecAccountIntermediateWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: createClicked(); break; + case 1: editClicked(); break; + case 2: backClicked(); break; + default: ; + } + _id -= 3; + } + return _id; +} + +// SIGNAL 0 +void TecAccountIntermediateWidget::createClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 0, 0); +} + +// SIGNAL 1 +void TecAccountIntermediateWidget::editClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} + +// SIGNAL 2 +void TecAccountIntermediateWidget::backClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 2, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecaccountsettingswidget.cpp b/build/release/moc_tecaccountsettingswidget.cpp new file mode 100644 index 0000000..e3a9aaf --- /dev/null +++ b/build/release/moc_tecaccountsettingswidget.cpp @@ -0,0 +1,129 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecaccountsettingswidget.h' +** +** Created: Fri Jun 18 17:41:02 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecaccountsettingswidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecaccountsettingswidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecAccountSettingsWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 10, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 4, // signalCount + + // signals: signature, parameters, type, tag, flags + 26, 25, 25, 25, 0x05, + 51, 25, 25, 25, 0x05, + 79, 25, 25, 25, 0x05, + 90, 25, 25, 25, 0x05, + + // slots: signature, parameters, type, tag, flags + 104, 25, 25, 25, 0x0a, + 113, 25, 25, 25, 0x08, + 126, 25, 25, 25, 0x08, + 160, 151, 25, 25, 0x08, + 193, 181, 25, 25, 0x08, + 217, 25, 25, 25, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecAccountSettingsWidget[] = { + "TecAccountSettingsWidget\0\0" + "accountSettingsChanged()\0" + "newAccountSettingsCreated()\0finished()\0" + "backClicked()\0reload()\0onOkButton()\0" + "onChangePasswordButton()\0newLogin\0" + "loginEdited(QString)\0newProtocol\0" + "protocolEdited(QString)\0disconnectHints()\0" +}; + +const QMetaObject TecAccountSettingsWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TecAccountSettingsWidget, + qt_meta_data_TecAccountSettingsWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecAccountSettingsWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecAccountSettingsWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecAccountSettingsWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecAccountSettingsWidget)) + return static_cast(const_cast< TecAccountSettingsWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TecAccountSettingsWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: accountSettingsChanged(); break; + case 1: newAccountSettingsCreated(); break; + case 2: finished(); break; + case 3: backClicked(); break; + case 4: reload(); break; + case 5: onOkButton(); break; + case 6: onChangePasswordButton(); break; + case 7: loginEdited((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 8: protocolEdited((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 9: disconnectHints(); break; + default: ; + } + _id -= 10; + } + return _id; +} + +// SIGNAL 0 +void TecAccountSettingsWidget::accountSettingsChanged() +{ + QMetaObject::activate(this, &staticMetaObject, 0, 0); +} + +// SIGNAL 1 +void TecAccountSettingsWidget::newAccountSettingsCreated() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} + +// SIGNAL 2 +void TecAccountSettingsWidget::finished() +{ + QMetaObject::activate(this, &staticMetaObject, 2, 0); +} + +// SIGNAL 3 +void TecAccountSettingsWidget::backClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 3, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecbaseengine.cpp b/build/release/moc_tecbaseengine.cpp new file mode 100644 index 0000000..dab31d1 --- /dev/null +++ b/build/release/moc_tecbaseengine.cpp @@ -0,0 +1,176 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecbaseengine.h' +** +** Created: Fri Jun 18 17:41:03 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecEngine/tecbaseengine.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecbaseengine.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecBaseEngine[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 15, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 7, // signalCount + + // signals: signature, parameters, type, tag, flags + 29, 15, 14, 14, 0x05, + 79, 58, 14, 14, 0x05, + 138, 113, 14, 14, 0x05, + 199, 187, 14, 14, 0x05, + 244, 232, 14, 14, 0x05, + 284, 280, 14, 14, 0x05, + 314, 280, 14, 14, 0x05, + + // slots: signature, parameters, type, tag, flags + 344, 14, 14, 14, 0x0a, + 369, 58, 14, 14, 0x0a, + 404, 280, 14, 14, 0x0a, + 429, 187, 14, 14, 0x0a, + 473, 464, 14, 14, 0x0a, + 522, 506, 14, 14, 0x0a, + 564, 280, 14, 14, 0x0a, + 612, 596, 14, 14, 0x0a, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecBaseEngine[] = { + "TecBaseEngine\0\0status,reason\0" + "statusChanged(Status,Reason)\0" + "presence,description\0" + "presenceUpdated(Presence,QString)\0" + "uid,presence,description\0" + "contactPresenceUpdated(QString,Presence,QString)\0" + "uid,message\0incomingMessage(QString,Message)\0" + "contactList\0contactListReceived(TecContactList)\0" + "uid\0subscriptionAccepted(QString)\0" + "authorizationRequest(QString)\0" + "initializeFromSettings()\0" + "onPresenceChange(Presence,QString)\0" + "onSessionClosed(QString)\0" + "onNewMessageReady(QString,Message)\0" + "pContact\0onAddContactRequest(TecContact*)\0" + "pContact,oldUid\0" + "onEditContactRequest(TecContact*,QString)\0" + "onRemoveContactRequest(QString)\0" + "uid,bAuthorized\0onSubscriptionAccepted(QString,bool)\0" +}; + +const QMetaObject TecBaseEngine::staticMetaObject = { + { &QObject::staticMetaObject, qt_meta_stringdata_TecBaseEngine, + qt_meta_data_TecBaseEngine, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecBaseEngine::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecBaseEngine::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecBaseEngine::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecBaseEngine)) + return static_cast(const_cast< TecBaseEngine*>(this)); + return QObject::qt_metacast(_clname); +} + +int TecBaseEngine::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QObject::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: statusChanged((*reinterpret_cast< Status(*)>(_a[1])),(*reinterpret_cast< Reason(*)>(_a[2]))); break; + case 1: presenceUpdated((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 2: contactPresenceUpdated((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Presence(*)>(_a[2])),(*reinterpret_cast< QString(*)>(_a[3]))); break; + case 3: incomingMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 4: contactListReceived((*reinterpret_cast< const TecContactList(*)>(_a[1]))); break; + case 5: subscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 6: authorizationRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 7: initializeFromSettings(); break; + case 8: onPresenceChange((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 9: onSessionClosed((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 10: onNewMessageReady((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 11: onAddContactRequest((*reinterpret_cast< TecContact*(*)>(_a[1]))); break; + case 12: onEditContactRequest((*reinterpret_cast< TecContact*(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 13: onRemoveContactRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 14: onSubscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break; + default: ; + } + _id -= 15; + } + return _id; +} + +// SIGNAL 0 +void TecBaseEngine::statusChanged(Status _t1, Reason _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TecBaseEngine::presenceUpdated(Presence _t1, QString _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 1, _a); +} + +// SIGNAL 2 +void TecBaseEngine::contactPresenceUpdated(QString _t1, Presence _t2, QString _t3) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)), const_cast(reinterpret_cast(&_t3)) }; + QMetaObject::activate(this, &staticMetaObject, 2, _a); +} + +// SIGNAL 3 +void TecBaseEngine::incomingMessage(QString _t1, Message _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 3, _a); +} + +// SIGNAL 4 +void TecBaseEngine::contactListReceived(const TecContactList & _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 4, _a); +} + +// SIGNAL 5 +void TecBaseEngine::subscriptionAccepted(QString _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 5, _a); +} + +// SIGNAL 6 +void TecBaseEngine::authorizationRequest(QString _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 6, _a); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecbasemainwindow.cpp b/build/release/moc_tecbasemainwindow.cpp new file mode 100644 index 0000000..9520aee --- /dev/null +++ b/build/release/moc_tecbasemainwindow.cpp @@ -0,0 +1,180 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecbasemainwindow.h' +** +** Created: Fri Jun 18 17:41:01 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecbasemainwindow.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecbasemainwindow.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecBaseMainWindow[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 15, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 8, // signalCount + + // signals: signature, parameters, type, tag, flags + 33, 19, 18, 18, 0x05, + 71, 67, 18, 18, 0x05, + 106, 94, 18, 18, 0x05, + 148, 139, 18, 18, 0x05, + 188, 172, 18, 18, 0x05, + 221, 67, 18, 18, 0x05, + 259, 244, 18, 18, 0x05, + 294, 18, 18, 18, 0x05, + + // slots: signature, parameters, type, tag, flags + 319, 67, 18, 18, 0x09, + 351, 67, 18, 18, 0x09, + 397, 383, 18, 18, 0x09, + 427, 19, 18, 18, 0x09, + 480, 462, 18, 18, 0x09, + 530, 94, 18, 18, 0x09, + 571, 565, 18, 18, 0x09, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecBaseMainWindow[] = { + "TecBaseMainWindow\0\0presence,desc\0" + "presenceChanged(Presence,QString)\0uid\0" + "sessionClosed(QString)\0uid,message\0" + "newMessageReady(QString,Message)\0" + "pContact\0addContact(TecContact*)\0" + "pContact,oldUid\0editContact(TecContact*,QString)\0" + "removeContact(QString)\0uid,authorized\0" + "subscriptionAccepted(QString,bool)\0" + "accountSettingsChanged()\0" + "onAuthorizationRequest(QString)\0" + "onSubscriptionAccepted(QString)\0" + "status,reason\0onStatusChange(Status,Reason)\0" + "onPresenceUpdate(Presence,QString)\0" + "uid,presence,desc\0" + "onContactPresenceUpdate(QString,Presence,QString)\0" + "onIncomingMessage(QString,Message)\0" + "cList\0onContactListReceived(TecContactList)\0" +}; + +const QMetaObject TecBaseMainWindow::staticMetaObject = { + { &QMainWindow::staticMetaObject, qt_meta_stringdata_TecBaseMainWindow, + qt_meta_data_TecBaseMainWindow, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecBaseMainWindow::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecBaseMainWindow::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecBaseMainWindow::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecBaseMainWindow)) + return static_cast(const_cast< TecBaseMainWindow*>(this)); + return QMainWindow::qt_metacast(_clname); +} + +int TecBaseMainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QMainWindow::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: presenceChanged((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 1: sessionClosed((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 2: newMessageReady((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 3: addContact((*reinterpret_cast< TecContact*(*)>(_a[1]))); break; + case 4: editContact((*reinterpret_cast< TecContact*(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 5: removeContact((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 6: subscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break; + case 7: accountSettingsChanged(); break; + case 8: onAuthorizationRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 9: onSubscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 10: onStatusChange((*reinterpret_cast< Status(*)>(_a[1])),(*reinterpret_cast< Reason(*)>(_a[2]))); break; + case 11: onPresenceUpdate((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 12: onContactPresenceUpdate((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Presence(*)>(_a[2])),(*reinterpret_cast< QString(*)>(_a[3]))); break; + case 13: onIncomingMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 14: onContactListReceived((*reinterpret_cast< const TecContactList(*)>(_a[1]))); break; + default: ; + } + _id -= 15; + } + return _id; +} + +// SIGNAL 0 +void TecBaseMainWindow::presenceChanged(Presence _t1, QString _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TecBaseMainWindow::sessionClosed(QString _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 1, _a); +} + +// SIGNAL 2 +void TecBaseMainWindow::newMessageReady(QString _t1, Message _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 2, _a); +} + +// SIGNAL 3 +void TecBaseMainWindow::addContact(TecContact * _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 3, _a); +} + +// SIGNAL 4 +void TecBaseMainWindow::editContact(TecContact * _t1, QString _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 4, _a); +} + +// SIGNAL 5 +void TecBaseMainWindow::removeContact(QString _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 5, _a); +} + +// SIGNAL 6 +void TecBaseMainWindow::subscriptionAccepted(QString _t1, bool _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 6, _a); +} + +// SIGNAL 7 +void TecBaseMainWindow::accountSettingsChanged() +{ + QMetaObject::activate(this, &staticMetaObject, 7, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecchatwidget.cpp b/build/release/moc_tecchatwidget.cpp new file mode 100644 index 0000000..82d8271 --- /dev/null +++ b/build/release/moc_tecchatwidget.cpp @@ -0,0 +1,103 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecchatwidget.h' +** +** Created: Fri Jun 18 17:41:02 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecchatwidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecchatwidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecChatWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 4, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 2, // signalCount + + // signals: signature, parameters, type, tag, flags + 27, 15, 14, 14, 0x05, + 60, 14, 14, 14, 0x05, + + // slots: signature, parameters, type, tag, flags + 81, 14, 14, 14, 0x08, + 101, 14, 14, 14, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecChatWidget[] = { + "TecChatWidget\0\0uid,message\0" + "newMessageReady(QString,Message)\0" + "smileButtonClicked()\0pressedSendButton()\0" + "showEmoticonsDialog()\0" +}; + +const QMetaObject TecChatWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TecChatWidget, + qt_meta_data_TecChatWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecChatWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecChatWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecChatWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecChatWidget)) + return static_cast(const_cast< TecChatWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TecChatWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: newMessageReady((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 1: smileButtonClicked(); break; + case 2: pressedSendButton(); break; + case 3: showEmoticonsDialog(); break; + default: ; + } + _id -= 4; + } + return _id; +} + +// SIGNAL 0 +void TecChatWidget::newMessageReady(const QString & _t1, Message _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TecChatWidget::smileButtonClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_teccontactlistwidget.cpp b/build/release/moc_teccontactlistwidget.cpp new file mode 100644 index 0000000..6fe95f6 --- /dev/null +++ b/build/release/moc_teccontactlistwidget.cpp @@ -0,0 +1,153 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'teccontactlistwidget.h' +** +** Created: Fri Jun 18 17:41:01 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/teccontactlistwidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'teccontactlistwidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecContactListWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 11, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 6, // signalCount + + // signals: signature, parameters, type, tag, flags + 40, 22, 21, 21, 0x05, + 82, 76, 21, 21, 0x05, + 123, 119, 21, 21, 0x05, + 156, 147, 21, 21, 0x05, + 196, 180, 21, 21, 0x05, + 238, 229, 21, 21, 0x05, + + // slots: signature, parameters, type, tag, flags + 288, 276, 21, 21, 0x0a, + 330, 321, 21, 21, 0x0a, + 370, 358, 21, 21, 0x0a, + 399, 21, 21, 21, 0x08, + 417, 21, 21, 21, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecContactListWidget[] = { + "TecContactListWidget\0\0uid,name,presence\0" + "triggered(QString,QString,Presence)\0" + "pItem\0contactInfoRequest(QListWidgetItem*)\0" + "uid\0removedContact(QString)\0pContact\0" + "addContact(TecContact*)\0pContact,oldUid\0" + "editContact(TecContact*,QString)\0" + "uid,name\0displayedNameChanged(QString,QString)\0" + "contactList\0onNewContactList(TecContactList)\0" + "pNewItem\0commitAdd(QListWidgetItem*)\0" + "pEditedItem\0commitEdit(QListWidgetItem*)\0" + "onEditRequested()\0onRemoveRequested()\0" +}; + +const QMetaObject TecContactListWidget::staticMetaObject = { + { &QListWidget::staticMetaObject, qt_meta_stringdata_TecContactListWidget, + qt_meta_data_TecContactListWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecContactListWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecContactListWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecContactListWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecContactListWidget)) + return static_cast(const_cast< TecContactListWidget*>(this)); + return QListWidget::qt_metacast(_clname); +} + +int TecContactListWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QListWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: triggered((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])),(*reinterpret_cast< Presence(*)>(_a[3]))); break; + case 1: contactInfoRequest((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 2: removedContact((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 3: addContact((*reinterpret_cast< TecContact*(*)>(_a[1]))); break; + case 4: editContact((*reinterpret_cast< TecContact*(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 5: displayedNameChanged((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 6: onNewContactList((*reinterpret_cast< const TecContactList(*)>(_a[1]))); break; + case 7: commitAdd((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 8: commitEdit((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 9: onEditRequested(); break; + case 10: onRemoveRequested(); break; + default: ; + } + _id -= 11; + } + return _id; +} + +// SIGNAL 0 +void TecContactListWidget::triggered(const QString & _t1, const QString & _t2, Presence _t3) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)), const_cast(reinterpret_cast(&_t3)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TecContactListWidget::contactInfoRequest(QListWidgetItem * _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 1, _a); +} + +// SIGNAL 2 +void TecContactListWidget::removedContact(const QString & _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 2, _a); +} + +// SIGNAL 3 +void TecContactListWidget::addContact(TecContact * _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 3, _a); +} + +// SIGNAL 4 +void TecContactListWidget::editContact(TecContact * _t1, QString _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 4, _a); +} + +// SIGNAL 5 +void TecContactListWidget::displayedNameChanged(const QString & _t1, const QString & _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 5, _a); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecemoticonsdialog.cpp b/build/release/moc_tecemoticonsdialog.cpp new file mode 100644 index 0000000..337b4b4 --- /dev/null +++ b/build/release/moc_tecemoticonsdialog.cpp @@ -0,0 +1,80 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecemoticonsdialog.h' +** +** Created: Fri Jun 18 17:41:03 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecemoticonsdialog.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecemoticonsdialog.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecEmoticonsDialog[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 1, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + // slots: signature, parameters, type, tag, flags + 26, 20, 19, 19, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecEmoticonsDialog[] = { + "TecEmoticonsDialog\0\0pItem\0" + "onEmoticonSelected(QListWidgetItem*)\0" +}; + +const QMetaObject TecEmoticonsDialog::staticMetaObject = { + { &QDialog::staticMetaObject, qt_meta_stringdata_TecEmoticonsDialog, + qt_meta_data_TecEmoticonsDialog, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecEmoticonsDialog::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecEmoticonsDialog::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecEmoticonsDialog::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecEmoticonsDialog)) + return static_cast(const_cast< TecEmoticonsDialog*>(this)); + return QDialog::qt_metacast(_clname); +} + +int TecEmoticonsDialog::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QDialog::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: onEmoticonSelected((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + default: ; + } + _id -= 1; + } + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecengine.cpp b/build/release/moc_tecengine.cpp new file mode 100644 index 0000000..2329658 --- /dev/null +++ b/build/release/moc_tecengine.cpp @@ -0,0 +1,133 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecengine.h' +** +** Created: Fri Jun 18 17:41:04 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecEngine/tecengine.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecengine.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecEngine[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 15, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + // slots: signature, parameters, type, tag, flags + 32, 11, 10, 10, 0x0a, + 76, 67, 10, 10, 0x0a, + 125, 109, 10, 10, 0x0a, + 171, 167, 10, 10, 0x0a, + 205, 203, 10, 10, 0x0a, + 242, 10, 10, 10, 0x0a, + 279, 267, 10, 10, 0x0a, + 314, 167, 10, 10, 0x0a, + 365, 339, 10, 10, 0x08, + 498, 464, 10, 10, 0x08, + 582, 464, 10, 10, 0x08, + 691, 670, 10, 10, 0x08, + 786, 772, 10, 10, 0x08, + 926, 889, 10, 10, 0x08, + 992, 67, 10, 10, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecEngine[] = { + "TecEngine\0\0presence,description\0" + "onPresenceChange(Presence,QString)\0" + "pContact\0onAddContactRequest(TecContact*)\0" + "pContact,oldUid\0" + "onEditContactRequest(TecContact*,QString)\0" + "uid\0onRemoveContactRequest(QString)\0" + ",\0onSubscriptionAccepted(QString,bool)\0" + "initializeFromSettings()\0uid,message\0" + "onNewMessageReady(QString,Message)\0" + "onSessionClosed(QString)\0" + "pConnection,status,reason\0" + "onStatusChange(QtTapioca::Connection*,QtTapioca::Connection::Status,Qt" + "Tapioca::Connection::Reason)\0" + "pContact,presence,presenceMessage\0" + "onPresenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::Pres" + "ence,QString)\0" + "onSelfPresenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::" + "Presence,QString)\0" + "pTextChannel,message\0" + "onMessageReceived(const QtTapioca::TextChannel*,QtTapioca::TextChannel" + "::Message)\0" + "message,error\0" + "onMessageDeliveryError(QtTapioca::TextChannel::Message,QtTapioca::Text" + "Channel::Message::DeliveryError)\0" + "pConnection,pChannel,bSuppresHandler\0" + "onChannelCreated(QtTapioca::Connection*,QtTapioca::Channel*,bool)\0" + "onAuthorizationRequested(QtTapioca::Contact*)\0" +}; + +const QMetaObject TecEngine::staticMetaObject = { + { &TecBaseEngine::staticMetaObject, qt_meta_stringdata_TecEngine, + qt_meta_data_TecEngine, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecEngine::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecEngine::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecEngine::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecEngine)) + return static_cast(const_cast< TecEngine*>(this)); + return TecBaseEngine::qt_metacast(_clname); +} + +int TecEngine::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = TecBaseEngine::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: onPresenceChange((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 1: onAddContactRequest((*reinterpret_cast< TecContact*(*)>(_a[1]))); break; + case 2: onEditContactRequest((*reinterpret_cast< TecContact*(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 3: onRemoveContactRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 4: onSubscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break; + case 5: initializeFromSettings(); break; + case 6: onNewMessageReady((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 7: onSessionClosed((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 8: onStatusChange((*reinterpret_cast< QtTapioca::Connection*(*)>(_a[1])),(*reinterpret_cast< QtTapioca::Connection::Status(*)>(_a[2])),(*reinterpret_cast< QtTapioca::Connection::Reason(*)>(_a[3]))); break; + case 9: onPresenceUpdated((*reinterpret_cast< QtTapioca::ContactBase*(*)>(_a[1])),(*reinterpret_cast< QtTapioca::ContactBase::Presence(*)>(_a[2])),(*reinterpret_cast< const QString(*)>(_a[3]))); break; + case 10: onSelfPresenceUpdated((*reinterpret_cast< QtTapioca::ContactBase*(*)>(_a[1])),(*reinterpret_cast< QtTapioca::ContactBase::Presence(*)>(_a[2])),(*reinterpret_cast< const QString(*)>(_a[3]))); break; + case 11: onMessageReceived((*reinterpret_cast< const QtTapioca::TextChannel*(*)>(_a[1])),(*reinterpret_cast< const QtTapioca::TextChannel::Message(*)>(_a[2]))); break; + case 12: onMessageDeliveryError((*reinterpret_cast< const QtTapioca::TextChannel::Message(*)>(_a[1])),(*reinterpret_cast< QtTapioca::TextChannel::Message::DeliveryError(*)>(_a[2]))); break; + case 13: onChannelCreated((*reinterpret_cast< QtTapioca::Connection*(*)>(_a[1])),(*reinterpret_cast< QtTapioca::Channel*(*)>(_a[2])),(*reinterpret_cast< bool(*)>(_a[3]))); break; + case 14: onAuthorizationRequested((*reinterpret_cast< QtTapioca::Contact*(*)>(_a[1]))); break; + default: ; + } + _id -= 15; + } + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecgeneralsettingswidget.cpp b/build/release/moc_tecgeneralsettingswidget.cpp new file mode 100644 index 0000000..4f2d349 --- /dev/null +++ b/build/release/moc_tecgeneralsettingswidget.cpp @@ -0,0 +1,98 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecgeneralsettingswidget.h' +** +** Created: Fri Jun 18 17:41:02 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecgeneralsettingswidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecgeneralsettingswidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecGeneralSettingsWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 3, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 2, // signalCount + + // signals: signature, parameters, type, tag, flags + 26, 25, 25, 25, 0x05, + 37, 25, 25, 25, 0x05, + + // slots: signature, parameters, type, tag, flags + 51, 25, 25, 25, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecGeneralSettingsWidget[] = { + "TecGeneralSettingsWidget\0\0finished()\0" + "backClicked()\0saveGeneralSettings()\0" +}; + +const QMetaObject TecGeneralSettingsWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TecGeneralSettingsWidget, + qt_meta_data_TecGeneralSettingsWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecGeneralSettingsWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecGeneralSettingsWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecGeneralSettingsWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecGeneralSettingsWidget)) + return static_cast(const_cast< TecGeneralSettingsWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TecGeneralSettingsWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: finished(); break; + case 1: backClicked(); break; + case 2: saveGeneralSettings(); break; + default: ; + } + _id -= 3; + } + return _id; +} + +// SIGNAL 0 +void TecGeneralSettingsWidget::finished() +{ + QMetaObject::activate(this, &staticMetaObject, 0, 0); +} + +// SIGNAL 1 +void TecGeneralSettingsWidget::backClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecmaintoolbar.cpp b/build/release/moc_tecmaintoolbar.cpp new file mode 100644 index 0000000..7a9b426 --- /dev/null +++ b/build/release/moc_tecmaintoolbar.cpp @@ -0,0 +1,268 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecmaintoolbar.h' +** +** Created: Fri Jun 18 17:41:03 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecmaintoolbar.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecmaintoolbar.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecMainToolbar[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 14, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 6, // signalCount + + // signals: signature, parameters, type, tag, flags + 25, 16, 15, 15, 0x05, + 69, 65, 15, 15, 0x05, + 94, 15, 15, 15, 0x05, + 116, 15, 15, 15, 0x05, + 134, 15, 15, 15, 0x05, + 166, 152, 15, 15, 0x05, + + // slots: signature, parameters, type, tag, flags + 217, 199, 15, 15, 0x0a, + 256, 15, 15, 15, 0x08, + 278, 15, 15, 15, 0x08, + 297, 15, 15, 15, 0x08, + 329, 321, 15, 15, 0x08, + 371, 364, 15, 15, 0x08, + 401, 15, 15, 15, 0x08, + 421, 15, 15, 15, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecMainToolbar[] = { + "TecMainToolbar\0\0uid,name\0" + "activeSessionTriggered(QString,QString)\0" + "uid\0finishedSession(QString)\0" + "finishedAllSessions()\0contactsClicked()\0" + "settingsClicked()\0presence,desc\0" + "presenceUpdate(Presence,QString)\0" + "uid,name,presence\0" + "onNewSession(QString,QString,Presence)\0" + "closeCurrentSession()\0closeAllSessions()\0" + "restoreCurrentSession()\0pAction\0" + "onActiveSessionTriggered(QAction*)\0" + "action\0onTriggeredPresence(QAction*)\0" + "onContactsClicked()\0onSettingsClicked()\0" +}; + +const QMetaObject TecMainToolbar::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TecMainToolbar, + qt_meta_data_TecMainToolbar, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecMainToolbar::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecMainToolbar::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecMainToolbar::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecMainToolbar)) + return static_cast(const_cast< TecMainToolbar*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TecMainToolbar::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: activeSessionTriggered((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 1: finishedSession((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 2: finishedAllSessions(); break; + case 3: contactsClicked(); break; + case 4: settingsClicked(); break; + case 5: presenceUpdate((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 6: onNewSession((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])),(*reinterpret_cast< Presence(*)>(_a[3]))); break; + case 7: closeCurrentSession(); break; + case 8: closeAllSessions(); break; + case 9: restoreCurrentSession(); break; + case 10: onActiveSessionTriggered((*reinterpret_cast< QAction*(*)>(_a[1]))); break; + case 11: onTriggeredPresence((*reinterpret_cast< QAction*(*)>(_a[1]))); break; + case 12: onContactsClicked(); break; + case 13: onSettingsClicked(); break; + default: ; + } + _id -= 14; + } + return _id; +} + +// SIGNAL 0 +void TecMainToolbar::activeSessionTriggered(const QString & _t1, const QString & _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TecMainToolbar::finishedSession(const QString & _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 1, _a); +} + +// SIGNAL 2 +void TecMainToolbar::finishedAllSessions() +{ + QMetaObject::activate(this, &staticMetaObject, 2, 0); +} + +// SIGNAL 3 +void TecMainToolbar::contactsClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 3, 0); +} + +// SIGNAL 4 +void TecMainToolbar::settingsClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 4, 0); +} + +// SIGNAL 5 +void TecMainToolbar::presenceUpdate(Presence _t1, const QString & _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 5, _a); +} +static const uint qt_meta_data_ActiveSessions[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 2, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + // slots: signature, parameters, type, tag, flags + 16, 15, 15, 15, 0x08, + 27, 15, 15, 15, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_ActiveSessions[] = { + "ActiveSessions\0\0scrollUp()\0scrollDown()\0" +}; + +const QMetaObject ActiveSessions::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_ActiveSessions, + qt_meta_data_ActiveSessions, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &ActiveSessions::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *ActiveSessions::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *ActiveSessions::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_ActiveSessions)) + return static_cast(const_cast< ActiveSessions*>(this)); + return QWidget::qt_metacast(_clname); +} + +int ActiveSessions::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: scrollUp(); break; + case 1: scrollDown(); break; + default: ; + } + _id -= 2; + } + return _id; +} +static const uint qt_meta_data_ScrollWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 0, 0, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + 0 // eod +}; + +static const char qt_meta_stringdata_ScrollWidget[] = { + "ScrollWidget\0" +}; + +const QMetaObject ScrollWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_ScrollWidget, + qt_meta_data_ScrollWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &ScrollWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *ScrollWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *ScrollWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_ScrollWidget)) + return static_cast(const_cast< ScrollWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int ScrollWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecmainwindow.cpp b/build/release/moc_tecmainwindow.cpp new file mode 100644 index 0000000..4e018ef --- /dev/null +++ b/build/release/moc_tecmainwindow.cpp @@ -0,0 +1,148 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecmainwindow.h' +** +** Created: Fri Jun 18 17:41:01 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecmainwindow.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecmainwindow.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecMainWindow[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 26, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + // slots: signature, parameters, type, tag, flags + 19, 15, 14, 14, 0x09, + 51, 15, 14, 14, 0x09, + 97, 83, 14, 14, 0x09, + 141, 127, 14, 14, 0x09, + 194, 176, 14, 14, 0x09, + 256, 244, 14, 14, 0x09, + 297, 291, 14, 14, 0x09, + 353, 335, 14, 14, 0x08, + 397, 388, 14, 14, 0x28, + 423, 15, 14, 14, 0x08, + 442, 14, 14, 14, 0x08, + 462, 14, 14, 14, 0x08, + 483, 478, 14, 14, 0x08, + 502, 497, 14, 14, 0x08, + 533, 14, 14, 14, 0x08, + 548, 14, 14, 14, 0x08, + 567, 14, 14, 14, 0x08, + 582, 14, 14, 14, 0x08, + 601, 14, 14, 14, 0x08, + 615, 14, 14, 14, 0x08, + 638, 14, 14, 14, 0x08, + 658, 388, 14, 14, 0x08, + 697, 14, 14, 14, 0x08, + 711, 14, 14, 14, 0x08, + 738, 14, 14, 14, 0x08, + 765, 14, 14, 14, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecMainWindow[] = { + "TecMainWindow\0\0uid\0onAuthorizationRequest(QString)\0" + "onSubscriptionAccepted(QString)\0" + "status,reason\0onStatusChange(Status,Reason)\0" + "presence,desc\0onPresenceUpdate(Presence,QString)\0" + "uid,presence,desc\0" + "onContactPresenceUpdate(QString,Presence,QString)\0" + "uid,message\0onIncomingMessage(QString,Message)\0" + "cList\0onContactListReceived(TecContactList)\0" + "uid,name,presence\0showChat(QString,QString,Presence)\0" + "uid,name\0showChat(QString,QString)\0" + "closeChat(QString)\0closeAllOpenChats()\0" + "clearAllChats()\0type\0showView(int)\0" + "item\0showUserInfo(QListWidgetItem*)\0" + "showContacts()\0returnToContacts()\0" + "showSettings()\0returnToSettings()\0" + "showAccount()\0returnToIntermediate()\0" + "showAccountCreate()\0" + "onDisplayedNameChange(QString,QString)\0" + "reloadTheme()\0onAccountSettingsChanged()\0" + "onAccountSettingsCreated()\0showAbout()\0" +}; + +const QMetaObject TecMainWindow::staticMetaObject = { + { &TecBaseMainWindow::staticMetaObject, qt_meta_stringdata_TecMainWindow, + qt_meta_data_TecMainWindow, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecMainWindow::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecMainWindow::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecMainWindow::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecMainWindow)) + return static_cast(const_cast< TecMainWindow*>(this)); + return TecBaseMainWindow::qt_metacast(_clname); +} + +int TecMainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = TecBaseMainWindow::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: onAuthorizationRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 1: onSubscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 2: onStatusChange((*reinterpret_cast< Status(*)>(_a[1])),(*reinterpret_cast< Reason(*)>(_a[2]))); break; + case 3: onPresenceUpdate((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 4: onContactPresenceUpdate((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Presence(*)>(_a[2])),(*reinterpret_cast< QString(*)>(_a[3]))); break; + case 5: onIncomingMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 6: onContactListReceived((*reinterpret_cast< const TecContactList(*)>(_a[1]))); break; + case 7: showChat((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])),(*reinterpret_cast< Presence(*)>(_a[3]))); break; + case 8: showChat((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 9: closeChat((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 10: closeAllOpenChats(); break; + case 11: clearAllChats(); break; + case 12: showView((*reinterpret_cast< int(*)>(_a[1]))); break; + case 13: showUserInfo((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 14: showContacts(); break; + case 15: returnToContacts(); break; + case 16: showSettings(); break; + case 17: returnToSettings(); break; + case 18: showAccount(); break; + case 19: returnToIntermediate(); break; + case 20: showAccountCreate(); break; + case 21: onDisplayedNameChange((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 22: reloadTheme(); break; + case 23: onAccountSettingsChanged(); break; + case 24: onAccountSettingsCreated(); break; + case 25: showAbout(); break; + default: ; + } + _id -= 26; + } + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecsettingswidget.cpp b/build/release/moc_tecsettingswidget.cpp new file mode 100644 index 0000000..4183419 --- /dev/null +++ b/build/release/moc_tecsettingswidget.cpp @@ -0,0 +1,86 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecsettingswidget.h' +** +** Created: Fri Jun 18 17:41:02 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecsettingswidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecsettingswidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecSettingsWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 1, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 1, // signalCount + + // signals: signature, parameters, type, tag, flags + 28, 19, 18, 18, 0x05, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecSettingsWidget[] = { + "TecSettingsWidget\0\0viewType\0triggered(int)\0" +}; + +const QMetaObject TecSettingsWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TecSettingsWidget, + qt_meta_data_TecSettingsWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecSettingsWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecSettingsWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecSettingsWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecSettingsWidget)) + return static_cast(const_cast< TecSettingsWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TecSettingsWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: triggered((*reinterpret_cast< int(*)>(_a[1]))); break; + default: ; + } + _id -= 1; + } + return _id; +} + +// SIGNAL 0 +void TecSettingsWidget::triggered(int _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecthemessettingswidget.cpp b/build/release/moc_tecthemessettingswidget.cpp new file mode 100644 index 0000000..3aee0f0 --- /dev/null +++ b/build/release/moc_tecthemessettingswidget.cpp @@ -0,0 +1,98 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecthemessettingswidget.h' +** +** Created: Fri Jun 18 17:41:03 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecthemessettingswidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecthemessettingswidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecThemesSettingsWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 3, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 2, // signalCount + + // signals: signature, parameters, type, tag, flags + 25, 24, 24, 24, 0x05, + 39, 24, 24, 24, 0x05, + + // slots: signature, parameters, type, tag, flags + 61, 24, 24, 24, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecThemesSettingsWidget[] = { + "TecThemesSettingsWidget\0\0backClicked()\0" + "currentThemeChanged()\0saveThemesSettings()\0" +}; + +const QMetaObject TecThemesSettingsWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TecThemesSettingsWidget, + qt_meta_data_TecThemesSettingsWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecThemesSettingsWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecThemesSettingsWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecThemesSettingsWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecThemesSettingsWidget)) + return static_cast(const_cast< TecThemesSettingsWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TecThemesSettingsWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: backClicked(); break; + case 1: currentThemeChanged(); break; + case 2: saveThemesSettings(); break; + default: ; + } + _id -= 3; + } + return _id; +} + +// SIGNAL 0 +void TecThemesSettingsWidget::backClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 0, 0); +} + +// SIGNAL 1 +void TecThemesSettingsWidget::currentThemeChanged() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tecuserinfowidget.cpp b/build/release/moc_tecuserinfowidget.cpp new file mode 100644 index 0000000..199d44c --- /dev/null +++ b/build/release/moc_tecuserinfowidget.cpp @@ -0,0 +1,103 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tecuserinfowidget.h' +** +** Created: Fri Jun 18 17:41:02 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TecUi/tecuserinfowidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tecuserinfowidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TecUserInfoWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 4, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 2, // signalCount + + // signals: signature, parameters, type, tag, flags + 31, 19, 18, 18, 0x05, + 64, 18, 18, 18, 0x05, + + // slots: signature, parameters, type, tag, flags + 75, 18, 18, 18, 0x08, + 93, 87, 18, 18, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TecUserInfoWidget[] = { + "TecUserInfoWidget\0\0contactItem\0" + "contactChanged(QListWidgetItem*)\0" + "finished()\0okClicked()\0index\0" + "onCurrentIndexChanged(int)\0" +}; + +const QMetaObject TecUserInfoWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TecUserInfoWidget, + qt_meta_data_TecUserInfoWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TecUserInfoWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TecUserInfoWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TecUserInfoWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TecUserInfoWidget)) + return static_cast(const_cast< TecUserInfoWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TecUserInfoWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: contactChanged((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 1: finished(); break; + case 2: okClicked(); break; + case 3: onCurrentIndexChanged((*reinterpret_cast< int(*)>(_a[1]))); break; + default: ; + } + _id -= 4; + } + return _id; +} + +// SIGNAL 0 +void TecUserInfoWidget::contactChanged(QListWidgetItem * _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TecUserInfoWidget::finished() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocaccountintermediatewidget.cpp b/build/release/moc_tocaccountintermediatewidget.cpp new file mode 100644 index 0000000..d2f91d2 --- /dev/null +++ b/build/release/moc_tocaccountintermediatewidget.cpp @@ -0,0 +1,103 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocaccountintermediatewidget.h' +** +** Created: Thu Jul 8 08:48:17 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocaccountintermediatewidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocaccountintermediatewidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocAccountIntermediateWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 3, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 3, // signalCount + + // signals: signature, parameters, type, tag, flags + 30, 29, 29, 29, 0x05, + 46, 29, 29, 29, 0x05, + 60, 29, 29, 29, 0x05, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocAccountIntermediateWidget[] = { + "TocAccountIntermediateWidget\0\0" + "createClicked()\0editClicked()\0" + "backClicked()\0" +}; + +const QMetaObject TocAccountIntermediateWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TocAccountIntermediateWidget, + qt_meta_data_TocAccountIntermediateWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocAccountIntermediateWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocAccountIntermediateWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocAccountIntermediateWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocAccountIntermediateWidget)) + return static_cast(const_cast< TocAccountIntermediateWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TocAccountIntermediateWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: createClicked(); break; + case 1: editClicked(); break; + case 2: backClicked(); break; + default: ; + } + _id -= 3; + } + return _id; +} + +// SIGNAL 0 +void TocAccountIntermediateWidget::createClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 0, 0); +} + +// SIGNAL 1 +void TocAccountIntermediateWidget::editClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} + +// SIGNAL 2 +void TocAccountIntermediateWidget::backClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 2, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocaccountsettingswidget.cpp b/build/release/moc_tocaccountsettingswidget.cpp new file mode 100644 index 0000000..fca4498 --- /dev/null +++ b/build/release/moc_tocaccountsettingswidget.cpp @@ -0,0 +1,129 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocaccountsettingswidget.h' +** +** Created: Thu Jul 8 08:48:16 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocaccountsettingswidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocaccountsettingswidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocAccountSettingsWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 10, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 4, // signalCount + + // signals: signature, parameters, type, tag, flags + 26, 25, 25, 25, 0x05, + 51, 25, 25, 25, 0x05, + 79, 25, 25, 25, 0x05, + 90, 25, 25, 25, 0x05, + + // slots: signature, parameters, type, tag, flags + 104, 25, 25, 25, 0x0a, + 113, 25, 25, 25, 0x08, + 126, 25, 25, 25, 0x08, + 160, 151, 25, 25, 0x08, + 193, 181, 25, 25, 0x08, + 217, 25, 25, 25, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocAccountSettingsWidget[] = { + "TocAccountSettingsWidget\0\0" + "accountSettingsChanged()\0" + "newAccountSettingsCreated()\0finished()\0" + "backClicked()\0reload()\0onOkButton()\0" + "onChangePasswordButton()\0newLogin\0" + "loginEdited(QString)\0newProtocol\0" + "protocolEdited(QString)\0disconnectHints()\0" +}; + +const QMetaObject TocAccountSettingsWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TocAccountSettingsWidget, + qt_meta_data_TocAccountSettingsWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocAccountSettingsWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocAccountSettingsWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocAccountSettingsWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocAccountSettingsWidget)) + return static_cast(const_cast< TocAccountSettingsWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TocAccountSettingsWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: accountSettingsChanged(); break; + case 1: newAccountSettingsCreated(); break; + case 2: finished(); break; + case 3: backClicked(); break; + case 4: reload(); break; + case 5: onOkButton(); break; + case 6: onChangePasswordButton(); break; + case 7: loginEdited((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 8: protocolEdited((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 9: disconnectHints(); break; + default: ; + } + _id -= 10; + } + return _id; +} + +// SIGNAL 0 +void TocAccountSettingsWidget::accountSettingsChanged() +{ + QMetaObject::activate(this, &staticMetaObject, 0, 0); +} + +// SIGNAL 1 +void TocAccountSettingsWidget::newAccountSettingsCreated() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} + +// SIGNAL 2 +void TocAccountSettingsWidget::finished() +{ + QMetaObject::activate(this, &staticMetaObject, 2, 0); +} + +// SIGNAL 3 +void TocAccountSettingsWidget::backClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 3, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocbaseengine.cpp b/build/release/moc_tocbaseengine.cpp new file mode 100644 index 0000000..537bcd9 --- /dev/null +++ b/build/release/moc_tocbaseengine.cpp @@ -0,0 +1,176 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocbaseengine.h' +** +** Created: Thu Jul 8 08:48:17 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocEngine/tocbaseengine.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocbaseengine.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocBaseEngine[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 15, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 7, // signalCount + + // signals: signature, parameters, type, tag, flags + 29, 15, 14, 14, 0x05, + 79, 58, 14, 14, 0x05, + 138, 113, 14, 14, 0x05, + 199, 187, 14, 14, 0x05, + 244, 232, 14, 14, 0x05, + 284, 280, 14, 14, 0x05, + 314, 280, 14, 14, 0x05, + + // slots: signature, parameters, type, tag, flags + 344, 14, 14, 14, 0x0a, + 369, 58, 14, 14, 0x0a, + 404, 280, 14, 14, 0x0a, + 429, 187, 14, 14, 0x0a, + 473, 464, 14, 14, 0x0a, + 522, 506, 14, 14, 0x0a, + 564, 280, 14, 14, 0x0a, + 612, 596, 14, 14, 0x0a, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocBaseEngine[] = { + "TocBaseEngine\0\0status,reason\0" + "statusChanged(Status,Reason)\0" + "presence,description\0" + "presenceUpdated(Presence,QString)\0" + "uid,presence,description\0" + "contactPresenceUpdated(QString,Presence,QString)\0" + "uid,message\0incomingMessage(QString,Message)\0" + "contactList\0contactListReceived(TocContactList)\0" + "uid\0subscriptionAccepted(QString)\0" + "authorizationRequest(QString)\0" + "initializeFromSettings()\0" + "onPresenceChange(Presence,QString)\0" + "onSessionClosed(QString)\0" + "onNewMessageReady(QString,Message)\0" + "pContact\0onAddContactRequest(TocContact*)\0" + "pContact,oldUid\0" + "onEditContactRequest(TocContact*,QString)\0" + "onRemoveContactRequest(QString)\0" + "uid,bAuthorized\0onSubscriptionAccepted(QString,bool)\0" +}; + +const QMetaObject TocBaseEngine::staticMetaObject = { + { &QObject::staticMetaObject, qt_meta_stringdata_TocBaseEngine, + qt_meta_data_TocBaseEngine, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocBaseEngine::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocBaseEngine::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocBaseEngine::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocBaseEngine)) + return static_cast(const_cast< TocBaseEngine*>(this)); + return QObject::qt_metacast(_clname); +} + +int TocBaseEngine::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QObject::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: statusChanged((*reinterpret_cast< Status(*)>(_a[1])),(*reinterpret_cast< Reason(*)>(_a[2]))); break; + case 1: presenceUpdated((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 2: contactPresenceUpdated((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Presence(*)>(_a[2])),(*reinterpret_cast< QString(*)>(_a[3]))); break; + case 3: incomingMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 4: contactListReceived((*reinterpret_cast< const TocContactList(*)>(_a[1]))); break; + case 5: subscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 6: authorizationRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 7: initializeFromSettings(); break; + case 8: onPresenceChange((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 9: onSessionClosed((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 10: onNewMessageReady((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 11: onAddContactRequest((*reinterpret_cast< TocContact*(*)>(_a[1]))); break; + case 12: onEditContactRequest((*reinterpret_cast< TocContact*(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 13: onRemoveContactRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 14: onSubscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break; + default: ; + } + _id -= 15; + } + return _id; +} + +// SIGNAL 0 +void TocBaseEngine::statusChanged(Status _t1, Reason _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TocBaseEngine::presenceUpdated(Presence _t1, QString _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 1, _a); +} + +// SIGNAL 2 +void TocBaseEngine::contactPresenceUpdated(QString _t1, Presence _t2, QString _t3) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)), const_cast(reinterpret_cast(&_t3)) }; + QMetaObject::activate(this, &staticMetaObject, 2, _a); +} + +// SIGNAL 3 +void TocBaseEngine::incomingMessage(QString _t1, Message _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 3, _a); +} + +// SIGNAL 4 +void TocBaseEngine::contactListReceived(const TocContactList & _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 4, _a); +} + +// SIGNAL 5 +void TocBaseEngine::subscriptionAccepted(QString _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 5, _a); +} + +// SIGNAL 6 +void TocBaseEngine::authorizationRequest(QString _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 6, _a); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocbasemainwindow.cpp b/build/release/moc_tocbasemainwindow.cpp new file mode 100644 index 0000000..c45d400 --- /dev/null +++ b/build/release/moc_tocbasemainwindow.cpp @@ -0,0 +1,180 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocbasemainwindow.h' +** +** Created: Thu Jul 8 08:48:15 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocbasemainwindow.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocbasemainwindow.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocBaseMainWindow[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 15, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 8, // signalCount + + // signals: signature, parameters, type, tag, flags + 33, 19, 18, 18, 0x05, + 71, 67, 18, 18, 0x05, + 106, 94, 18, 18, 0x05, + 148, 139, 18, 18, 0x05, + 188, 172, 18, 18, 0x05, + 221, 67, 18, 18, 0x05, + 259, 244, 18, 18, 0x05, + 294, 18, 18, 18, 0x05, + + // slots: signature, parameters, type, tag, flags + 319, 67, 18, 18, 0x09, + 351, 67, 18, 18, 0x09, + 397, 383, 18, 18, 0x09, + 427, 19, 18, 18, 0x09, + 480, 462, 18, 18, 0x09, + 530, 94, 18, 18, 0x09, + 571, 565, 18, 18, 0x09, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocBaseMainWindow[] = { + "TocBaseMainWindow\0\0presence,desc\0" + "presenceChanged(Presence,QString)\0uid\0" + "sessionClosed(QString)\0uid,message\0" + "newMessageReady(QString,Message)\0" + "pContact\0addContact(TocContact*)\0" + "pContact,oldUid\0editContact(TocContact*,QString)\0" + "removeContact(QString)\0uid,authorized\0" + "subscriptionAccepted(QString,bool)\0" + "accountSettingsChanged()\0" + "onAuthorizationRequest(QString)\0" + "onSubscriptionAccepted(QString)\0" + "status,reason\0onStatusChange(Status,Reason)\0" + "onPresenceUpdate(Presence,QString)\0" + "uid,presence,desc\0" + "onContactPresenceUpdate(QString,Presence,QString)\0" + "onIncomingMessage(QString,Message)\0" + "cList\0onContactListReceived(TocContactList)\0" +}; + +const QMetaObject TocBaseMainWindow::staticMetaObject = { + { &QMainWindow::staticMetaObject, qt_meta_stringdata_TocBaseMainWindow, + qt_meta_data_TocBaseMainWindow, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocBaseMainWindow::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocBaseMainWindow::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocBaseMainWindow::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocBaseMainWindow)) + return static_cast(const_cast< TocBaseMainWindow*>(this)); + return QMainWindow::qt_metacast(_clname); +} + +int TocBaseMainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QMainWindow::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: presenceChanged((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 1: sessionClosed((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 2: newMessageReady((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 3: addContact((*reinterpret_cast< TocContact*(*)>(_a[1]))); break; + case 4: editContact((*reinterpret_cast< TocContact*(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 5: removeContact((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 6: subscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break; + case 7: accountSettingsChanged(); break; + case 8: onAuthorizationRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 9: onSubscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 10: onStatusChange((*reinterpret_cast< Status(*)>(_a[1])),(*reinterpret_cast< Reason(*)>(_a[2]))); break; + case 11: onPresenceUpdate((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 12: onContactPresenceUpdate((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Presence(*)>(_a[2])),(*reinterpret_cast< QString(*)>(_a[3]))); break; + case 13: onIncomingMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 14: onContactListReceived((*reinterpret_cast< const TocContactList(*)>(_a[1]))); break; + default: ; + } + _id -= 15; + } + return _id; +} + +// SIGNAL 0 +void TocBaseMainWindow::presenceChanged(Presence _t1, QString _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TocBaseMainWindow::sessionClosed(QString _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 1, _a); +} + +// SIGNAL 2 +void TocBaseMainWindow::newMessageReady(QString _t1, Message _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 2, _a); +} + +// SIGNAL 3 +void TocBaseMainWindow::addContact(TocContact * _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 3, _a); +} + +// SIGNAL 4 +void TocBaseMainWindow::editContact(TocContact * _t1, QString _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 4, _a); +} + +// SIGNAL 5 +void TocBaseMainWindow::removeContact(QString _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 5, _a); +} + +// SIGNAL 6 +void TocBaseMainWindow::subscriptionAccepted(QString _t1, bool _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 6, _a); +} + +// SIGNAL 7 +void TocBaseMainWindow::accountSettingsChanged() +{ + QMetaObject::activate(this, &staticMetaObject, 7, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocchatwidget.cpp b/build/release/moc_tocchatwidget.cpp new file mode 100644 index 0000000..17f372d --- /dev/null +++ b/build/release/moc_tocchatwidget.cpp @@ -0,0 +1,103 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocchatwidget.h' +** +** Created: Thu Jul 8 08:48:16 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocchatwidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocchatwidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocChatWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 4, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 2, // signalCount + + // signals: signature, parameters, type, tag, flags + 27, 15, 14, 14, 0x05, + 60, 14, 14, 14, 0x05, + + // slots: signature, parameters, type, tag, flags + 81, 14, 14, 14, 0x08, + 101, 14, 14, 14, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocChatWidget[] = { + "TocChatWidget\0\0uid,message\0" + "newMessageReady(QString,Message)\0" + "smileButtonClicked()\0pressedSendButton()\0" + "showEmoticonsDialog()\0" +}; + +const QMetaObject TocChatWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TocChatWidget, + qt_meta_data_TocChatWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocChatWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocChatWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocChatWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocChatWidget)) + return static_cast(const_cast< TocChatWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TocChatWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: newMessageReady((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 1: smileButtonClicked(); break; + case 2: pressedSendButton(); break; + case 3: showEmoticonsDialog(); break; + default: ; + } + _id -= 4; + } + return _id; +} + +// SIGNAL 0 +void TocChatWidget::newMessageReady(const QString & _t1, Message _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TocChatWidget::smileButtonClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_toccontactlistwidget.cpp b/build/release/moc_toccontactlistwidget.cpp new file mode 100644 index 0000000..4db011d --- /dev/null +++ b/build/release/moc_toccontactlistwidget.cpp @@ -0,0 +1,199 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'toccontactlistwidget.h' +** +** Created: Thu Jul 8 08:48:15 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/toccontactlistwidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'toccontactlistwidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocContactListWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 13, 14, // methods + 1, 79, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 7, // signalCount + + // signals: signature, parameters, type, tag, flags + 40, 22, 21, 21, 0x05, + 82, 76, 21, 21, 0x05, + 123, 119, 21, 21, 0x05, + 156, 147, 21, 21, 0x05, + 196, 180, 21, 21, 0x05, + 238, 229, 21, 21, 0x05, + 280, 276, 21, 21, 0x05, + + // slots: signature, parameters, type, tag, flags + 317, 305, 21, 21, 0x0a, + 359, 350, 21, 21, 0x0a, + 399, 387, 21, 21, 0x0a, + 428, 21, 21, 21, 0x08, + 446, 21, 21, 21, 0x08, + 466, 276, 21, 21, 0x08, + + // properties: name, type, flags + 497, 490, 0x43495103, + + // properties: notify_signal_id + 6, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocContactListWidget[] = { + "TocContactListWidget\0\0uid,name,presence\0" + "triggered(QString,QString,Presence)\0" + "pItem\0contactInfoRequest(QListWidgetItem*)\0" + "uid\0removedContact(QString)\0pContact\0" + "addContact(TocContact*)\0pContact,oldUid\0" + "editContact(TocContact*,QString)\0" + "uid,name\0displayedNameChanged(QString,QString)\0" + "rgb\0logoColorChanged(QColor)\0contactList\0" + "onNewContactList(TocContactList)\0" + "pNewItem\0commitAdd(QListWidgetItem*)\0" + "pEditedItem\0commitEdit(QListWidgetItem*)\0" + "onEditRequested()\0onRemoveRequested()\0" + "changeLogoColor(QColor)\0QColor\0logoColor\0" +}; + +const QMetaObject TocContactListWidget::staticMetaObject = { + { &QListWidget::staticMetaObject, qt_meta_stringdata_TocContactListWidget, + qt_meta_data_TocContactListWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocContactListWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocContactListWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocContactListWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocContactListWidget)) + return static_cast(const_cast< TocContactListWidget*>(this)); + return QListWidget::qt_metacast(_clname); +} + +int TocContactListWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QListWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: triggered((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])),(*reinterpret_cast< Presence(*)>(_a[3]))); break; + case 1: contactInfoRequest((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 2: removedContact((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 3: addContact((*reinterpret_cast< TocContact*(*)>(_a[1]))); break; + case 4: editContact((*reinterpret_cast< TocContact*(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 5: displayedNameChanged((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 6: logoColorChanged((*reinterpret_cast< QColor(*)>(_a[1]))); break; + case 7: onNewContactList((*reinterpret_cast< const TocContactList(*)>(_a[1]))); break; + case 8: commitAdd((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 9: commitEdit((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 10: onEditRequested(); break; + case 11: onRemoveRequested(); break; + case 12: changeLogoColor((*reinterpret_cast< QColor(*)>(_a[1]))); break; + default: ; + } + _id -= 13; + } +#ifndef QT_NO_PROPERTIES + else if (_c == QMetaObject::ReadProperty) { + void *_v = _a[0]; + switch (_id) { + case 0: *reinterpret_cast< QColor*>(_v) = logoColor(); break; + } + _id -= 1; + } else if (_c == QMetaObject::WriteProperty) { + void *_v = _a[0]; + switch (_id) { + case 0: setLogoColor(*reinterpret_cast< QColor*>(_v)); break; + } + _id -= 1; + } else if (_c == QMetaObject::ResetProperty) { + _id -= 1; + } else if (_c == QMetaObject::QueryPropertyDesignable) { + _id -= 1; + } else if (_c == QMetaObject::QueryPropertyScriptable) { + _id -= 1; + } else if (_c == QMetaObject::QueryPropertyStored) { + _id -= 1; + } else if (_c == QMetaObject::QueryPropertyEditable) { + _id -= 1; + } else if (_c == QMetaObject::QueryPropertyUser) { + _id -= 1; + } +#endif // QT_NO_PROPERTIES + return _id; +} + +// SIGNAL 0 +void TocContactListWidget::triggered(const QString & _t1, const QString & _t2, Presence _t3) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)), const_cast(reinterpret_cast(&_t3)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TocContactListWidget::contactInfoRequest(QListWidgetItem * _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 1, _a); +} + +// SIGNAL 2 +void TocContactListWidget::removedContact(const QString & _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 2, _a); +} + +// SIGNAL 3 +void TocContactListWidget::addContact(TocContact * _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 3, _a); +} + +// SIGNAL 4 +void TocContactListWidget::editContact(TocContact * _t1, QString _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 4, _a); +} + +// SIGNAL 5 +void TocContactListWidget::displayedNameChanged(const QString & _t1, const QString & _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 5, _a); +} + +// SIGNAL 6 +void TocContactListWidget::logoColorChanged(QColor _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 6, _a); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocemoticonsdialog.cpp b/build/release/moc_tocemoticonsdialog.cpp new file mode 100644 index 0000000..5459c79 --- /dev/null +++ b/build/release/moc_tocemoticonsdialog.cpp @@ -0,0 +1,80 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocemoticonsdialog.h' +** +** Created: Thu Jul 8 08:48:17 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocemoticonsdialog.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocemoticonsdialog.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocEmoticonsDialog[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 1, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + // slots: signature, parameters, type, tag, flags + 26, 20, 19, 19, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocEmoticonsDialog[] = { + "TocEmoticonsDialog\0\0pItem\0" + "onEmoticonSelected(QListWidgetItem*)\0" +}; + +const QMetaObject TocEmoticonsDialog::staticMetaObject = { + { &QDialog::staticMetaObject, qt_meta_stringdata_TocEmoticonsDialog, + qt_meta_data_TocEmoticonsDialog, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocEmoticonsDialog::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocEmoticonsDialog::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocEmoticonsDialog::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocEmoticonsDialog)) + return static_cast(const_cast< TocEmoticonsDialog*>(this)); + return QDialog::qt_metacast(_clname); +} + +int TocEmoticonsDialog::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QDialog::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: onEmoticonSelected((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + default: ; + } + _id -= 1; + } + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocengine.cpp b/build/release/moc_tocengine.cpp new file mode 100644 index 0000000..227fe4c --- /dev/null +++ b/build/release/moc_tocengine.cpp @@ -0,0 +1,133 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocengine.h' +** +** Created: Thu Jul 8 08:48:18 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocEngine/tocengine.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocengine.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocEngine[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 15, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + // slots: signature, parameters, type, tag, flags + 32, 11, 10, 10, 0x0a, + 76, 67, 10, 10, 0x0a, + 125, 109, 10, 10, 0x0a, + 171, 167, 10, 10, 0x0a, + 205, 203, 10, 10, 0x0a, + 242, 10, 10, 10, 0x0a, + 279, 267, 10, 10, 0x0a, + 314, 167, 10, 10, 0x0a, + 365, 339, 10, 10, 0x08, + 498, 464, 10, 10, 0x08, + 582, 464, 10, 10, 0x08, + 691, 670, 10, 10, 0x08, + 786, 772, 10, 10, 0x08, + 926, 889, 10, 10, 0x08, + 992, 67, 10, 10, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocEngine[] = { + "TocEngine\0\0presence,description\0" + "onPresenceChange(Presence,QString)\0" + "pContact\0onAddContactRequest(TocContact*)\0" + "pContact,oldUid\0" + "onEditContactRequest(TocContact*,QString)\0" + "uid\0onRemoveContactRequest(QString)\0" + ",\0onSubscriptionAccepted(QString,bool)\0" + "initializeFromSettings()\0uid,message\0" + "onNewMessageReady(QString,Message)\0" + "onSessionClosed(QString)\0" + "pConnection,status,reason\0" + "onStatusChange(QtTapioca::Connection*,QtTapioca::Connection::Status,Qt" + "Tapioca::Connection::Reason)\0" + "pContact,presence,presenceMessage\0" + "onPresenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::Pres" + "ence,QString)\0" + "onSelfPresenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::" + "Presence,QString)\0" + "pTextChannel,message\0" + "onMessageReceived(const QtTapioca::TextChannel*,QtTapioca::TextChannel" + "::Message)\0" + "message,error\0" + "onMessageDeliveryError(QtTapioca::TextChannel::Message,QtTapioca::Text" + "Channel::Message::DeliveryError)\0" + "pConnection,pChannel,bSuppresHandler\0" + "onChannelCreated(QtTapioca::Connection*,QtTapioca::Channel*,bool)\0" + "onAuthorizationRequested(QtTapioca::Contact*)\0" +}; + +const QMetaObject TocEngine::staticMetaObject = { + { &TocBaseEngine::staticMetaObject, qt_meta_stringdata_TocEngine, + qt_meta_data_TocEngine, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocEngine::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocEngine::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocEngine::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocEngine)) + return static_cast(const_cast< TocEngine*>(this)); + return TocBaseEngine::qt_metacast(_clname); +} + +int TocEngine::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = TocBaseEngine::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: onPresenceChange((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 1: onAddContactRequest((*reinterpret_cast< TocContact*(*)>(_a[1]))); break; + case 2: onEditContactRequest((*reinterpret_cast< TocContact*(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 3: onRemoveContactRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 4: onSubscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break; + case 5: initializeFromSettings(); break; + case 6: onNewMessageReady((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 7: onSessionClosed((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 8: onStatusChange((*reinterpret_cast< QtTapioca::Connection*(*)>(_a[1])),(*reinterpret_cast< QtTapioca::Connection::Status(*)>(_a[2])),(*reinterpret_cast< QtTapioca::Connection::Reason(*)>(_a[3]))); break; + case 9: onPresenceUpdated((*reinterpret_cast< QtTapioca::ContactBase*(*)>(_a[1])),(*reinterpret_cast< QtTapioca::ContactBase::Presence(*)>(_a[2])),(*reinterpret_cast< const QString(*)>(_a[3]))); break; + case 10: onSelfPresenceUpdated((*reinterpret_cast< QtTapioca::ContactBase*(*)>(_a[1])),(*reinterpret_cast< QtTapioca::ContactBase::Presence(*)>(_a[2])),(*reinterpret_cast< const QString(*)>(_a[3]))); break; + case 11: onMessageReceived((*reinterpret_cast< const QtTapioca::TextChannel*(*)>(_a[1])),(*reinterpret_cast< const QtTapioca::TextChannel::Message(*)>(_a[2]))); break; + case 12: onMessageDeliveryError((*reinterpret_cast< const QtTapioca::TextChannel::Message(*)>(_a[1])),(*reinterpret_cast< QtTapioca::TextChannel::Message::DeliveryError(*)>(_a[2]))); break; + case 13: onChannelCreated((*reinterpret_cast< QtTapioca::Connection*(*)>(_a[1])),(*reinterpret_cast< QtTapioca::Channel*(*)>(_a[2])),(*reinterpret_cast< bool(*)>(_a[3]))); break; + case 14: onAuthorizationRequested((*reinterpret_cast< QtTapioca::Contact*(*)>(_a[1]))); break; + default: ; + } + _id -= 15; + } + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocgeneralsettingswidget.cpp b/build/release/moc_tocgeneralsettingswidget.cpp new file mode 100644 index 0000000..4e39f59 --- /dev/null +++ b/build/release/moc_tocgeneralsettingswidget.cpp @@ -0,0 +1,98 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocgeneralsettingswidget.h' +** +** Created: Thu Jul 8 08:48:16 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocgeneralsettingswidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocgeneralsettingswidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocGeneralSettingsWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 3, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 2, // signalCount + + // signals: signature, parameters, type, tag, flags + 26, 25, 25, 25, 0x05, + 37, 25, 25, 25, 0x05, + + // slots: signature, parameters, type, tag, flags + 51, 25, 25, 25, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocGeneralSettingsWidget[] = { + "TocGeneralSettingsWidget\0\0finished()\0" + "backClicked()\0saveGeneralSettings()\0" +}; + +const QMetaObject TocGeneralSettingsWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TocGeneralSettingsWidget, + qt_meta_data_TocGeneralSettingsWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocGeneralSettingsWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocGeneralSettingsWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocGeneralSettingsWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocGeneralSettingsWidget)) + return static_cast(const_cast< TocGeneralSettingsWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TocGeneralSettingsWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: finished(); break; + case 1: backClicked(); break; + case 2: saveGeneralSettings(); break; + default: ; + } + _id -= 3; + } + return _id; +} + +// SIGNAL 0 +void TocGeneralSettingsWidget::finished() +{ + QMetaObject::activate(this, &staticMetaObject, 0, 0); +} + +// SIGNAL 1 +void TocGeneralSettingsWidget::backClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocmaintoolbar.cpp b/build/release/moc_tocmaintoolbar.cpp new file mode 100644 index 0000000..0d662ff --- /dev/null +++ b/build/release/moc_tocmaintoolbar.cpp @@ -0,0 +1,268 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocmaintoolbar.h' +** +** Created: Thu Jul 8 08:48:17 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocmaintoolbar.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocmaintoolbar.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocMainToolbar[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 14, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 6, // signalCount + + // signals: signature, parameters, type, tag, flags + 25, 16, 15, 15, 0x05, + 69, 65, 15, 15, 0x05, + 94, 15, 15, 15, 0x05, + 116, 15, 15, 15, 0x05, + 134, 15, 15, 15, 0x05, + 166, 152, 15, 15, 0x05, + + // slots: signature, parameters, type, tag, flags + 217, 199, 15, 15, 0x0a, + 256, 15, 15, 15, 0x08, + 278, 15, 15, 15, 0x08, + 297, 15, 15, 15, 0x08, + 329, 321, 15, 15, 0x08, + 371, 364, 15, 15, 0x08, + 401, 15, 15, 15, 0x08, + 421, 15, 15, 15, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocMainToolbar[] = { + "TocMainToolbar\0\0uid,name\0" + "activeSessionTriggered(QString,QString)\0" + "uid\0finishedSession(QString)\0" + "finishedAllSessions()\0contactsClicked()\0" + "settingsClicked()\0presence,desc\0" + "presenceUpdate(Presence,QString)\0" + "uid,name,presence\0" + "onNewSession(QString,QString,Presence)\0" + "closeCurrentSession()\0closeAllSessions()\0" + "restoreCurrentSession()\0pAction\0" + "onActiveSessionTriggered(QAction*)\0" + "action\0onTriggeredPresence(QAction*)\0" + "onContactsClicked()\0onSettingsClicked()\0" +}; + +const QMetaObject TocMainToolbar::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TocMainToolbar, + qt_meta_data_TocMainToolbar, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocMainToolbar::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocMainToolbar::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocMainToolbar::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocMainToolbar)) + return static_cast(const_cast< TocMainToolbar*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TocMainToolbar::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: activeSessionTriggered((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 1: finishedSession((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 2: finishedAllSessions(); break; + case 3: contactsClicked(); break; + case 4: settingsClicked(); break; + case 5: presenceUpdate((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 6: onNewSession((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])),(*reinterpret_cast< Presence(*)>(_a[3]))); break; + case 7: closeCurrentSession(); break; + case 8: closeAllSessions(); break; + case 9: restoreCurrentSession(); break; + case 10: onActiveSessionTriggered((*reinterpret_cast< QAction*(*)>(_a[1]))); break; + case 11: onTriggeredPresence((*reinterpret_cast< QAction*(*)>(_a[1]))); break; + case 12: onContactsClicked(); break; + case 13: onSettingsClicked(); break; + default: ; + } + _id -= 14; + } + return _id; +} + +// SIGNAL 0 +void TocMainToolbar::activeSessionTriggered(const QString & _t1, const QString & _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TocMainToolbar::finishedSession(const QString & _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 1, _a); +} + +// SIGNAL 2 +void TocMainToolbar::finishedAllSessions() +{ + QMetaObject::activate(this, &staticMetaObject, 2, 0); +} + +// SIGNAL 3 +void TocMainToolbar::contactsClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 3, 0); +} + +// SIGNAL 4 +void TocMainToolbar::settingsClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 4, 0); +} + +// SIGNAL 5 +void TocMainToolbar::presenceUpdate(Presence _t1, const QString & _t2) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)), const_cast(reinterpret_cast(&_t2)) }; + QMetaObject::activate(this, &staticMetaObject, 5, _a); +} +static const uint qt_meta_data_ActiveSessions[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 2, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + // slots: signature, parameters, type, tag, flags + 16, 15, 15, 15, 0x08, + 27, 15, 15, 15, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_ActiveSessions[] = { + "ActiveSessions\0\0scrollUp()\0scrollDown()\0" +}; + +const QMetaObject ActiveSessions::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_ActiveSessions, + qt_meta_data_ActiveSessions, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &ActiveSessions::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *ActiveSessions::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *ActiveSessions::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_ActiveSessions)) + return static_cast(const_cast< ActiveSessions*>(this)); + return QWidget::qt_metacast(_clname); +} + +int ActiveSessions::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: scrollUp(); break; + case 1: scrollDown(); break; + default: ; + } + _id -= 2; + } + return _id; +} +static const uint qt_meta_data_ScrollWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 0, 0, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + 0 // eod +}; + +static const char qt_meta_stringdata_ScrollWidget[] = { + "ScrollWidget\0" +}; + +const QMetaObject ScrollWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_ScrollWidget, + qt_meta_data_ScrollWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &ScrollWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *ScrollWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *ScrollWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_ScrollWidget)) + return static_cast(const_cast< ScrollWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int ScrollWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocmainwindow.cpp b/build/release/moc_tocmainwindow.cpp new file mode 100644 index 0000000..3160767 --- /dev/null +++ b/build/release/moc_tocmainwindow.cpp @@ -0,0 +1,156 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocmainwindow.h' +** +** Created: Thu Jul 8 08:48:15 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocmainwindow.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocmainwindow.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocMainWindow[] = { + + // content: + 4, // revision + 0, // classname + 1, 14, // classinfo + 27, 16, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 0, // signalCount + + // classinfo: key, value + 34, 14, + + // slots: signature, parameters, type, tag, flags + 55, 50, 51, 50, 0x4a, + 77, 73, 50, 50, 0x09, + 109, 73, 50, 50, 0x09, + 155, 141, 50, 50, 0x09, + 199, 185, 50, 50, 0x09, + 252, 234, 50, 50, 0x09, + 314, 302, 50, 50, 0x09, + 355, 349, 50, 50, 0x09, + 411, 393, 50, 50, 0x08, + 455, 446, 50, 50, 0x28, + 481, 73, 50, 50, 0x08, + 500, 50, 50, 50, 0x08, + 520, 50, 50, 50, 0x08, + 541, 536, 50, 50, 0x08, + 560, 555, 50, 50, 0x08, + 591, 50, 50, 50, 0x08, + 606, 50, 50, 50, 0x08, + 625, 50, 50, 50, 0x08, + 640, 50, 50, 50, 0x08, + 659, 50, 50, 50, 0x08, + 673, 50, 50, 50, 0x08, + 696, 50, 50, 50, 0x08, + 716, 446, 50, 50, 0x08, + 755, 50, 50, 50, 0x08, + 769, 50, 50, 50, 0x08, + 796, 50, 50, 50, 0x08, + 823, 50, 50, 50, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocMainWindow[] = { + "TocMainWindow\0org.indt.tietoopcom\0" + "D-Bus Interface\0\0int\0top_application()\0" + "uid\0onAuthorizationRequest(QString)\0" + "onSubscriptionAccepted(QString)\0" + "status,reason\0onStatusChange(Status,Reason)\0" + "presence,desc\0onPresenceUpdate(Presence,QString)\0" + "uid,presence,desc\0" + "onContactPresenceUpdate(QString,Presence,QString)\0" + "uid,message\0onIncomingMessage(QString,Message)\0" + "cList\0onContactListReceived(TocContactList)\0" + "uid,name,presence\0showChat(QString,QString,Presence)\0" + "uid,name\0showChat(QString,QString)\0" + "closeChat(QString)\0closeAllOpenChats()\0" + "clearAllChats()\0type\0showView(int)\0" + "item\0showUserInfo(QListWidgetItem*)\0" + "showContacts()\0returnToContacts()\0" + "showSettings()\0returnToSettings()\0" + "showAccount()\0returnToIntermediate()\0" + "showAccountCreate()\0" + "onDisplayedNameChange(QString,QString)\0" + "reloadTheme()\0onAccountSettingsChanged()\0" + "onAccountSettingsCreated()\0showAbout()\0" +}; + +const QMetaObject TocMainWindow::staticMetaObject = { + { &TocBaseMainWindow::staticMetaObject, qt_meta_stringdata_TocMainWindow, + qt_meta_data_TocMainWindow, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocMainWindow::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocMainWindow::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocMainWindow::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocMainWindow)) + return static_cast(const_cast< TocMainWindow*>(this)); + return TocBaseMainWindow::qt_metacast(_clname); +} + +int TocMainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = TocBaseMainWindow::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: { int _r = top_application(); + if (_a[0]) *reinterpret_cast< int*>(_a[0]) = _r; } break; + case 1: onAuthorizationRequest((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 2: onSubscriptionAccepted((*reinterpret_cast< QString(*)>(_a[1]))); break; + case 3: onStatusChange((*reinterpret_cast< Status(*)>(_a[1])),(*reinterpret_cast< Reason(*)>(_a[2]))); break; + case 4: onPresenceUpdate((*reinterpret_cast< Presence(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break; + case 5: onContactPresenceUpdate((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Presence(*)>(_a[2])),(*reinterpret_cast< QString(*)>(_a[3]))); break; + case 6: onIncomingMessage((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< Message(*)>(_a[2]))); break; + case 7: onContactListReceived((*reinterpret_cast< const TocContactList(*)>(_a[1]))); break; + case 8: showChat((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])),(*reinterpret_cast< Presence(*)>(_a[3]))); break; + case 9: showChat((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 10: closeChat((*reinterpret_cast< const QString(*)>(_a[1]))); break; + case 11: closeAllOpenChats(); break; + case 12: clearAllChats(); break; + case 13: showView((*reinterpret_cast< int(*)>(_a[1]))); break; + case 14: showUserInfo((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 15: showContacts(); break; + case 16: returnToContacts(); break; + case 17: showSettings(); break; + case 18: returnToSettings(); break; + case 19: showAccount(); break; + case 20: returnToIntermediate(); break; + case 21: showAccountCreate(); break; + case 22: onDisplayedNameChange((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2]))); break; + case 23: reloadTheme(); break; + case 24: onAccountSettingsChanged(); break; + case 25: onAccountSettingsCreated(); break; + case 26: showAbout(); break; + default: ; + } + _id -= 27; + } + return _id; +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocsettingswidget.cpp b/build/release/moc_tocsettingswidget.cpp new file mode 100644 index 0000000..3da872b --- /dev/null +++ b/build/release/moc_tocsettingswidget.cpp @@ -0,0 +1,86 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocsettingswidget.h' +** +** Created: Thu Jul 8 08:48:16 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocsettingswidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocsettingswidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocSettingsWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 1, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 1, // signalCount + + // signals: signature, parameters, type, tag, flags + 28, 19, 18, 18, 0x05, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocSettingsWidget[] = { + "TocSettingsWidget\0\0viewType\0triggered(int)\0" +}; + +const QMetaObject TocSettingsWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TocSettingsWidget, + qt_meta_data_TocSettingsWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocSettingsWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocSettingsWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocSettingsWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocSettingsWidget)) + return static_cast(const_cast< TocSettingsWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TocSettingsWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: triggered((*reinterpret_cast< int(*)>(_a[1]))); break; + default: ; + } + _id -= 1; + } + return _id; +} + +// SIGNAL 0 +void TocSettingsWidget::triggered(int _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocthemessettingswidget.cpp b/build/release/moc_tocthemessettingswidget.cpp new file mode 100644 index 0000000..9cfa7dc --- /dev/null +++ b/build/release/moc_tocthemessettingswidget.cpp @@ -0,0 +1,98 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocthemessettingswidget.h' +** +** Created: Thu Jul 8 08:48:17 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocthemessettingswidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocthemessettingswidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocThemesSettingsWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 3, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 2, // signalCount + + // signals: signature, parameters, type, tag, flags + 25, 24, 24, 24, 0x05, + 39, 24, 24, 24, 0x05, + + // slots: signature, parameters, type, tag, flags + 61, 24, 24, 24, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocThemesSettingsWidget[] = { + "TocThemesSettingsWidget\0\0backClicked()\0" + "currentThemeChanged()\0saveThemesSettings()\0" +}; + +const QMetaObject TocThemesSettingsWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TocThemesSettingsWidget, + qt_meta_data_TocThemesSettingsWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocThemesSettingsWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocThemesSettingsWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocThemesSettingsWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocThemesSettingsWidget)) + return static_cast(const_cast< TocThemesSettingsWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TocThemesSettingsWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: backClicked(); break; + case 1: currentThemeChanged(); break; + case 2: saveThemesSettings(); break; + default: ; + } + _id -= 3; + } + return _id; +} + +// SIGNAL 0 +void TocThemesSettingsWidget::backClicked() +{ + QMetaObject::activate(this, &staticMetaObject, 0, 0); +} + +// SIGNAL 1 +void TocThemesSettingsWidget::currentThemeChanged() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/moc_tocuserinfowidget.cpp b/build/release/moc_tocuserinfowidget.cpp new file mode 100644 index 0000000..3334342 --- /dev/null +++ b/build/release/moc_tocuserinfowidget.cpp @@ -0,0 +1,103 @@ +/**************************************************************************** +** Meta object code from reading C++ file 'tocuserinfowidget.h' +** +** Created: Thu Jul 8 08:48:16 2010 +** by: The Qt Meta Object Compiler version 62 (Qt 4.6.2) +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include "../../include/TocUi/tocuserinfowidget.h" +#if !defined(Q_MOC_OUTPUT_REVISION) +#error "The header file 'tocuserinfowidget.h' doesn't include ." +#elif Q_MOC_OUTPUT_REVISION != 62 +#error "This file was generated using the moc from 4.6.2. It" +#error "cannot be used with the include files from this version of Qt." +#error "(The moc has changed too much.)" +#endif + +QT_BEGIN_MOC_NAMESPACE +static const uint qt_meta_data_TocUserInfoWidget[] = { + + // content: + 4, // revision + 0, // classname + 0, 0, // classinfo + 4, 14, // methods + 0, 0, // properties + 0, 0, // enums/sets + 0, 0, // constructors + 0, // flags + 2, // signalCount + + // signals: signature, parameters, type, tag, flags + 31, 19, 18, 18, 0x05, + 64, 18, 18, 18, 0x05, + + // slots: signature, parameters, type, tag, flags + 75, 18, 18, 18, 0x08, + 93, 87, 18, 18, 0x08, + + 0 // eod +}; + +static const char qt_meta_stringdata_TocUserInfoWidget[] = { + "TocUserInfoWidget\0\0contactItem\0" + "contactChanged(QListWidgetItem*)\0" + "finished()\0okClicked()\0index\0" + "onCurrentIndexChanged(int)\0" +}; + +const QMetaObject TocUserInfoWidget::staticMetaObject = { + { &QWidget::staticMetaObject, qt_meta_stringdata_TocUserInfoWidget, + qt_meta_data_TocUserInfoWidget, 0 } +}; + +#ifdef Q_NO_DATA_RELOCATION +const QMetaObject &TocUserInfoWidget::getStaticMetaObject() { return staticMetaObject; } +#endif //Q_NO_DATA_RELOCATION + +const QMetaObject *TocUserInfoWidget::metaObject() const +{ + return QObject::d_ptr->metaObject ? QObject::d_ptr->metaObject : &staticMetaObject; +} + +void *TocUserInfoWidget::qt_metacast(const char *_clname) +{ + if (!_clname) return 0; + if (!strcmp(_clname, qt_meta_stringdata_TocUserInfoWidget)) + return static_cast(const_cast< TocUserInfoWidget*>(this)); + return QWidget::qt_metacast(_clname); +} + +int TocUserInfoWidget::qt_metacall(QMetaObject::Call _c, int _id, void **_a) +{ + _id = QWidget::qt_metacall(_c, _id, _a); + if (_id < 0) + return _id; + if (_c == QMetaObject::InvokeMetaMethod) { + switch (_id) { + case 0: contactChanged((*reinterpret_cast< QListWidgetItem*(*)>(_a[1]))); break; + case 1: finished(); break; + case 2: okClicked(); break; + case 3: onCurrentIndexChanged((*reinterpret_cast< int(*)>(_a[1]))); break; + default: ; + } + _id -= 4; + } + return _id; +} + +// SIGNAL 0 +void TocUserInfoWidget::contactChanged(QListWidgetItem * _t1) +{ + void *_a[] = { 0, const_cast(reinterpret_cast(&_t1)) }; + QMetaObject::activate(this, &staticMetaObject, 0, _a); +} + +// SIGNAL 1 +void TocUserInfoWidget::finished() +{ + QMetaObject::activate(this, &staticMetaObject, 1, 0); +} +QT_END_MOC_NAMESPACE diff --git a/build/release/qrc_application.cpp b/build/release/qrc_application.cpp new file mode 100644 index 0000000..2b5d845 --- /dev/null +++ b/build/release/qrc_application.cpp @@ -0,0 +1,6191 @@ +/**************************************************************************** +** Resource object code +** +** Created: Thu Jul 8 08:48:18 2010 +** by: The Resource Compiler for Qt version 4.6.2 +** +** WARNING! All changes made in this file will be lost! +*****************************************************************************/ + +#include + +static const unsigned char qt_resource_data[] = { + // /home/maemo/tietoopcom/resources/offline.png + 0x0,0x0,0x9,0xa8, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0x14,0xc3,0x0,0x0,0x14,0xc3,0x1, + 0x15,0x70,0x4d,0x42,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xa, + 0xd,0x12,0x2b,0xd,0x68,0x67,0x33,0x0,0x0,0x9,0x28,0x49,0x44,0x41,0x54,0x68, + 0xde,0xd5,0x5a,0x5b,0x6c,0x53,0xc9,0x19,0xfe,0x66,0xc6,0xc7,0xd7,0x13,0x30,0x36, + 0xb9,0xd8,0x81,0x36,0x80,0x1d,0x2e,0x22,0x6,0xd4,0x3e,0x0,0xb,0x8a,0xa,0x6, + 0x2a,0xf1,0x92,0x65,0x79,0xe1,0xb5,0x7d,0xec,0x6b,0x55,0xf5,0x9,0xb5,0x55,0xb5, + 0xaa,0x56,0x54,0xea,0xbe,0x56,0xda,0x87,0xbe,0xf1,0xc2,0x45,0x42,0x41,0x15,0x98, + 0xec,0x22,0x2e,0x29,0x52,0xd5,0x5,0x1b,0x42,0xa,0x6,0xa5,0xa,0x38,0xb1,0x95, + 0x18,0x25,0xf8,0xd8,0x3e,0x97,0x99,0xe9,0x3,0xe7,0x78,0x4f,0x42,0xe2,0xd8,0xb9, + 0xec,0xb6,0x96,0x3e,0xc5,0x39,0x67,0xce,0x9c,0xef,0xfb,0xff,0x7f,0xfe,0x99,0x7f, + 0xc6,0x44,0x4a,0x89,0xff,0xe7,0x8f,0x67,0x3d,0x3b,0x3b,0x7d,0xfa,0x74,0xc8,0x34, + 0xcd,0xed,0x8c,0xb1,0xb8,0x94,0x32,0x6,0x20,0x66,0xdf,0x9a,0x22,0x84,0x4c,0x71, + 0xce,0xb,0x8a,0xa2,0x4c,0xde,0xba,0x75,0x4b,0x5b,0xaf,0x77,0x92,0xb5,0x7a,0xe0, + 0xe4,0xc9,0x93,0x3f,0x6,0x30,0x4,0xe0,0x53,0x0,0xc7,0x1,0xd0,0x15,0x1e,0x11, + 0x0,0xee,0x1,0xb8,0x6,0xe0,0xfa,0x9d,0x3b,0x77,0xfe,0xf3,0x83,0x8,0x48,0xa7, + 0xd3,0x43,0x52,0xca,0x8b,0x0,0xe,0x1,0x40,0x3c,0x1e,0xe7,0x7b,0xf6,0xec,0x61, + 0x91,0x48,0x4,0xa1,0x50,0x8,0xa1,0x50,0x8,0xc1,0x60,0x10,0x0,0x50,0xad,0x56, + 0xa1,0x69,0x1a,0x34,0x4d,0x43,0xb9,0x5c,0xc6,0xf8,0xf8,0x38,0x2f,0x14,0xa,0xcc, + 0xee,0xea,0x5b,0x42,0xc8,0x1f,0x32,0x99,0xcc,0xf5,0xef,0x45,0x40,0x3a,0x9d,0xfe, + 0x4,0xc0,0x25,0x29,0xe5,0xe1,0x78,0x3c,0xce,0x53,0xa9,0x14,0x4b,0x24,0x12,0x8, + 0x85,0x42,0x1f,0xcc,0x2b,0x4,0x0,0x40,0x4a,0x9,0xa7,0x6f,0x42,0x8,0x8,0x21, + 0x0,0x0,0x4a,0x3f,0x38,0x48,0xd3,0x34,0xe4,0xf3,0x79,0x64,0xb3,0x59,0x5e,0x28, + 0x14,0x18,0x21,0xe4,0x1f,0x0,0x7e,0x9d,0xc9,0x64,0x1e,0x6c,0x88,0x80,0x53,0xa7, + 0x4e,0x6d,0x16,0x42,0x7c,0x5,0xe0,0xb3,0x48,0x24,0xc2,0x7,0x7,0x7,0x59,0x7f, + 0x7f,0x3f,0xa4,0x94,0x10,0x42,0x80,0x73,0xe,0xce,0x79,0x4b,0x7d,0x31,0xc6,0xc0, + 0x18,0x3,0xa5,0x14,0x84,0x10,0xbc,0x78,0xf1,0x2,0x77,0xef,0xde,0xe5,0xe5,0x72, + 0x99,0x1,0xb8,0x42,0x29,0xfd,0xe5,0xed,0xdb,0xb7,0xe7,0xd6,0x4d,0xc0,0x89,0x13, + 0x27,0x92,0x94,0xd2,0x61,0x42,0xc8,0xae,0x74,0x3a,0x4d,0xf,0x1c,0x38,0x0,0x42, + 0x8,0x38,0xe7,0x30,0x4d,0x73,0x4d,0x63,0x48,0x51,0x14,0x30,0xc6,0x20,0x84,0x40, + 0x36,0x9b,0x45,0x26,0x93,0x11,0x52,0xca,0x57,0x42,0x88,0xb3,0x23,0x23,0x23,0x2f, + 0xd7,0x2c,0x20,0x9d,0x4e,0xa7,0xa5,0x94,0x57,0x54,0x55,0xd,0x9d,0x3f,0x7f,0x9e, + 0x75,0x77,0x77,0x37,0x88,0xaf,0x57,0xa,0x26,0x84,0xc0,0xe3,0xf1,0x80,0x31,0x86, + 0x62,0xb1,0x88,0x2b,0x57,0xae,0xf0,0x4a,0xa5,0xa2,0x11,0x42,0x3e,0xcb,0x64,0x32, + 0x99,0x55,0xb,0x48,0xa7,0xd3,0x69,0x0,0x7f,0x8f,0xc5,0x62,0x38,0x77,0xee,0x1c, + 0xb,0x6,0x83,0x30,0x4d,0xb3,0xe5,0x50,0x69,0xe5,0xe3,0x7e,0x3f,0x63,0xc,0x8a, + 0xa2,0xa0,0x5a,0xad,0xe2,0xea,0xd5,0xab,0x7c,0x7a,0x7a,0x1a,0x0,0x7e,0xde,0x4c, + 0xc4,0xb2,0x2,0x4e,0x9c,0x38,0x91,0x24,0x84,0xfc,0x33,0x1e,0x8f,0x87,0x2e,0x5c, + 0xb8,0xc0,0x28,0xa5,0x30,0xc,0x63,0x5d,0xac,0xde,0xac,0xf,0x42,0x8,0x14,0x45, + 0x81,0x10,0x2,0x97,0x2f,0x5f,0xe6,0x53,0x53,0x53,0x9a,0x94,0xf2,0xa7,0xcb,0x85, + 0x13,0x5d,0x6e,0xc0,0x52,0x4a,0x87,0x3b,0x3a,0x3a,0x42,0xe7,0xce,0x9d,0x5b,0x17, + 0xf2,0x4e,0x56,0x5a,0xae,0xf,0xe7,0x9e,0x10,0x2,0xba,0xae,0x83,0x10,0x82,0xa1, + 0xa1,0x21,0xa6,0xaa,0x6a,0x88,0x52,0x3a,0x7c,0xea,0xd4,0xa9,0xcd,0x2d,0xb,0x10, + 0x42,0x7c,0x45,0x29,0xdd,0x75,0xfe,0xfc,0x79,0x16,0x8,0x4,0xa0,0xeb,0x3a,0x84, + 0x10,0xb,0x48,0xb8,0x21,0x84,0x68,0xa,0xce,0x79,0x5b,0xf7,0x39,0xe7,0xd0,0x75, + 0x1d,0x81,0x40,0x0,0xb6,0x1,0x77,0xd9,0x19,0x70,0xe5,0x10,0x4a,0xa7,0xd3,0x9f, + 0x48,0x29,0xef,0x9f,0x39,0x73,0x6,0x7,0xf,0x1e,0x44,0xbd,0x5e,0x87,0x65,0x59, + 0xab,0xa,0x87,0xb5,0xde,0x67,0x8c,0xc1,0xef,0xf7,0xe3,0xf1,0xe3,0xc7,0xb8,0x73, + 0xe7,0xe,0x8,0x21,0xc7,0x16,0xcf,0x13,0x4b,0x79,0xe0,0x52,0x24,0x12,0xe1,0xa9, + 0x54,0xa,0x86,0x61,0x34,0xb2,0xcd,0x52,0x96,0x6e,0xd7,0xb2,0xee,0xeb,0xe,0x9a, + 0x3d,0x6b,0x18,0x6,0xc,0xc3,0x40,0x2a,0x95,0x42,0x38,0x1c,0xe6,0x0,0x2e,0x35, + 0xd,0x21,0x7b,0x79,0x70,0x78,0x70,0x70,0x90,0x1,0x40,0xbd,0x5e,0x6f,0x4a,0x66, + 0xa5,0x30,0x5a,0x8d,0xe8,0xc5,0x6d,0xea,0xf5,0x3a,0x0,0xe0,0xf8,0xf1,0xe3,0x4c, + 0x4a,0x79,0x38,0x9d,0x4e,0xf,0x2d,0xbb,0x1a,0x95,0x52,0x5e,0x8c,0xc7,0xe3,0x3c, + 0x99,0x4c,0x32,0x5d,0xd7,0x1b,0xe9,0xb2,0xd9,0xc0,0x6b,0x27,0x34,0xda,0x6d,0xef, + 0x2c,0x4d,0x74,0x5d,0x47,0x32,0x99,0x44,0x77,0x77,0x37,0x2f,0x16,0x8b,0x17,0x1, + 0x5c,0xff,0xc8,0x3,0xf6,0xaa,0xf2,0x50,0x2a,0x95,0x62,0xce,0x2,0xac,0x99,0x25, + 0x5b,0xf1,0xc0,0x72,0xed,0xdb,0xed,0xab,0x5a,0xad,0x42,0x4a,0x89,0x81,0x81,0x1, + 0x6,0xe0,0x90,0xcd,0xf5,0x23,0xf,0xc,0x1,0xc0,0xce,0x9d,0x3b,0x61,0x18,0xc6, + 0x82,0xc9,0x6a,0xbd,0x3c,0xd0,0xec,0xfe,0x4a,0xef,0x30,0xc,0x3,0x7d,0x7d,0x7d, + 0x6e,0xae,0x5f,0x2e,0x1e,0x3,0x9f,0xc6,0xe3,0x71,0xae,0xaa,0x6a,0x23,0x6d,0x2e, + 0x65,0x1d,0xb7,0x85,0x56,0x6b,0xd1,0xe5,0xc6,0x53,0xb3,0x71,0x54,0xaf,0xd7,0xa1, + 0xaa,0x2a,0x7a,0x7a,0x7a,0xb8,0x5d,0x7b,0x7c,0x17,0x42,0xa7,0x4f,0x9f,0xe,0x1, + 0x38,0xde,0xdf,0xdf,0xcf,0xa4,0x94,0xa8,0xd7,0xeb,0xcb,0x12,0x58,0x8f,0xc1,0xbc, + 0x5c,0xfb,0x66,0xd7,0x6b,0xb5,0x1a,0x0,0x20,0x91,0x48,0x30,0x0,0xc7,0x6d,0xce, + 0x1f,0x42,0xc8,0x34,0xcd,0xed,0x94,0x52,0x1a,0x89,0x44,0x60,0x9a,0x26,0x2c,0xcb, + 0x6a,0x6b,0x10,0xae,0xd7,0xf5,0xa5,0xee,0xbb,0xbf,0x1b,0x86,0x81,0x48,0x24,0x2, + 0x0,0xd4,0x34,0xcd,0xed,0x0,0xc6,0x3d,0xf6,0x84,0x11,0x97,0x52,0x42,0x55,0xd5, + 0x5,0xaa,0xd7,0x42,0x6a,0x23,0x9e,0x17,0x42,0x34,0xaa,0x3c,0xc6,0x58,0xbc,0x21, + 0xc0,0x2e,0xc0,0xe1,0xf7,0xfb,0x97,0x2c,0x4c,0x5a,0xb5,0xd8,0x46,0x7b,0x88,0x73, + 0x8e,0x40,0x20,0x0,0x37,0x67,0x27,0xb,0xc5,0x0,0x20,0x10,0x8,0xa0,0x56,0xab, + 0x35,0xca,0xc2,0x8d,0x26,0xd5,0x6e,0x98,0x9a,0xa6,0xd9,0xf0,0x80,0xc3,0xd9,0xb3, + 0x78,0x29,0xeb,0x28,0xfd,0x5f,0x21,0xbd,0x52,0x3b,0x47,0xc0,0x94,0x33,0x79,0x11, + 0x42,0x9a,0x3e,0xf8,0x7d,0x8d,0x8d,0xa5,0xda,0x51,0x4a,0x51,0xad,0x56,0xe1,0xe6, + 0xec,0xb1,0x2d,0x3f,0x25,0xa5,0x84,0xa6,0x69,0xd8,0xbc,0x79,0xf3,0x82,0x9d,0x85, + 0xd5,0x92,0xdd,0x88,0x2c,0x46,0x29,0xc5,0xfb,0xf7,0xef,0x9d,0x68,0xf9,0x4e,0x0, + 0xe7,0xbc,0x40,0x29,0x85,0xa6,0x69,0x8,0x87,0xc3,0x4b,0x86,0xd0,0xf,0x69,0x79, + 0xe7,0x3a,0x63,0xc,0x95,0x4a,0xc5,0x9,0xf3,0x42,0x43,0x80,0xa2,0x28,0x93,0x9c, + 0x73,0x31,0x3b,0x3b,0x4b,0x77,0xec,0xd8,0xd1,0xd8,0x71,0x68,0xf7,0x65,0xab,0x25, + 0xd9,0xca,0x73,0x8c,0x31,0x78,0xbd,0x5e,0xbc,0x7b,0xf7,0xe,0x0,0x84,0xa2,0x28, + 0x93,0x8d,0x99,0xd8,0xde,0xab,0xbc,0x97,0xcf,0xe7,0x39,0x0,0x84,0x42,0xa1,0x96, + 0xaa,0xa6,0x56,0xd7,0xfe,0xcd,0x66,0xe6,0x56,0x9f,0x73,0x36,0xce,0x5e,0xbf,0x7e, + 0xcd,0x1,0xdc,0x73,0xf6,0x57,0xdd,0x59,0xe8,0xda,0xd4,0xd4,0xd4,0x60,0xa5,0x52, + 0x81,0xaa,0xaa,0x28,0x97,0xcb,0xab,0xce,0xf3,0x1b,0x11,0x6e,0x1d,0x1d,0x1d,0xa8, + 0x54,0x2a,0x28,0x16,0x8b,0xcc,0xde,0x57,0xfd,0xa8,0xa0,0xb9,0x6e,0x2b,0x6c,0xe4, + 0xda,0xc5,0x55,0xd3,0x6a,0x16,0x66,0xcb,0x55,0x5f,0x8b,0xaf,0x37,0xab,0xd2,0x9c, + 0xa8,0x98,0x98,0x98,0x58,0xc0,0x75,0x81,0x0,0x7b,0x97,0xf8,0xf1,0xd3,0xa7,0x4f, + 0x39,0x0,0x44,0xa3,0xd1,0xb6,0x5f,0xe6,0x5c,0xb3,0x2c,0x6b,0xcd,0xa4,0xdd,0xe8, + 0xec,0xec,0x4,0x21,0x4,0x63,0x63,0x63,0x5c,0x4a,0x99,0x1d,0x19,0x19,0x99,0xfe, + 0x48,0x0,0x21,0xc4,0xab,0xeb,0xfa,0xa5,0x62,0xb1,0xc8,0xf2,0xf9,0x3c,0xa2,0xd1, + 0x28,0x18,0x63,0x2d,0x2f,0x7d,0xd7,0xea,0xa9,0xe5,0xc0,0x18,0x43,0x67,0x67,0x27, + 0xf2,0xf9,0x3c,0x4a,0xa5,0x12,0xab,0x56,0xab,0x7f,0x1,0x10,0x20,0x84,0x28,0xd, + 0x1,0x84,0x10,0xa,0xc0,0xfb,0xe0,0xc1,0x83,0xc,0xe7,0xfc,0xdb,0xfb,0xf7,0xef, + 0xb,0x29,0x25,0xba,0xba,0xba,0xda,0xb2,0x60,0xbb,0x9e,0x6a,0xa5,0x3e,0xee,0xe9, + 0xe9,0x81,0x94,0x12,0xa3,0xa3,0xa3,0x82,0x73,0xfe,0xe4,0xd1,0xa3,0x47,0xdf,0x0, + 0xf0,0x1,0xf0,0x11,0x9b,0x38,0x0,0x28,0xe,0xca,0xe5,0xf2,0x17,0x73,0x73,0x73, + 0x34,0x97,0xcb,0x21,0x1a,0x8d,0x62,0xd3,0xa6,0x4d,0x2d,0x67,0x8f,0xa5,0xd6,0xf1, + 0x2b,0x15,0x3b,0xcd,0x10,0xe,0x87,0xd1,0xd9,0xd9,0x89,0x5c,0x2e,0x87,0xf9,0xf9, + 0x79,0x5a,0x2a,0x95,0xbe,0x74,0x73,0x5,0xe0,0xa1,0xae,0x50,0x62,0x0,0x58,0x2e, + 0x97,0x7b,0x62,0x9a,0xe6,0xc8,0xbd,0x7b,0xf7,0x44,0xb1,0x58,0x44,0x5f,0x5f,0x1f, + 0xbc,0x5e,0xef,0x86,0xc4,0x76,0x33,0xf8,0xfd,0x7e,0xec,0xd8,0xb1,0x3,0xc5,0x62, + 0x11,0xf,0x1f,0x3e,0x94,0x86,0x61,0xdc,0x7d,0xfe,0xfc,0x79,0xce,0xe1,0xe9,0xc0, + 0x11,0x40,0x6c,0x0,0x0,0xc9,0x66,0xb3,0x7f,0xb4,0x2c,0xab,0x70,0xe3,0xc6,0xd, + 0x51,0xad,0x56,0x91,0x4c,0x26,0x1b,0x5b,0xe0,0x1b,0x49,0xda,0x81,0xc7,0xe3,0x41, + 0x32,0x99,0x44,0xad,0x56,0xc3,0xf0,0xf0,0xb0,0xb0,0x2c,0x6b,0xea,0xc9,0x93,0x27, + 0x5f,0x2c,0xe6,0xe9,0x1e,0xc4,0xc2,0x8d,0xb9,0xb9,0xb9,0xf9,0x97,0x2f,0x5f,0xfe, + 0x46,0xd3,0xb4,0xfa,0xf0,0xf0,0xb0,0xa0,0x94,0x62,0xef,0xde,0xbd,0xf0,0xfb,0xfd, + 0x6d,0x4d,0x62,0xab,0x41,0x20,0x10,0xc0,0xbe,0x7d,0xfb,0xc0,0x18,0xc3,0xcd,0x9b, + 0x37,0x85,0xa6,0x69,0xfa,0xf8,0xf8,0xf8,0xc5,0xf7,0x1f,0x16,0x41,0x62,0x11,0xb8, + 0x23,0x80,0x3,0xb0,0x5c,0x30,0xdf,0xbe,0x7d,0x3b,0x51,0x28,0x14,0x7e,0x57,0x2a, + 0x95,0x70,0xf5,0xea,0x55,0x61,0x59,0x16,0x6,0x6,0x6,0x10,0xe,0x87,0x57,0x1d, + 0xd3,0x2b,0x21,0x12,0x89,0x60,0x60,0x60,0x0,0x9c,0x73,0x5c,0xbb,0x76,0x4d,0x94, + 0x4a,0x25,0xbc,0x79,0xf3,0xe6,0xf3,0xe9,0xe9,0xe9,0x9,0x87,0xd7,0x22,0x9e,0x16, + 0x71,0x9d,0x63,0x5,0x0,0x4,0x6d,0x84,0x0,0x4,0x0,0x4,0xfb,0xfb,0xfb,0x8f, + 0xf5,0xf6,0xf6,0x5e,0xc,0x85,0x42,0xfe,0xb3,0x67,0xcf,0xd2,0xee,0xee,0x6e,0x4c, + 0x4f,0x4f,0x63,0x62,0x62,0x2,0x86,0x61,0xac,0xcb,0x19,0x81,0xd7,0xeb,0x45,0x5f, + 0x5f,0x1f,0x7a,0x7a,0x7a,0x50,0x2c,0x16,0x31,0x3c,0x3c,0x2c,0x34,0x4d,0xd3,0x27, + 0x27,0x27,0xff,0x94,0xcf,0xe7,0x47,0x1,0x54,0x6d,0xd4,0x0,0x68,0xf6,0xf7,0x79, + 0x29,0xa5,0xe9,0x16,0x40,0x5c,0x2,0x82,0x8e,0x0,0x0,0x81,0x58,0x2c,0x96,0xd8, + 0xbd,0x7b,0xf7,0xe7,0x1e,0x8f,0x27,0x76,0xf4,0xe8,0x51,0x32,0x30,0x30,0x0,0x0, + 0x78,0xf3,0xe6,0xd,0x26,0x27,0x27,0x9b,0x6e,0xfe,0x36,0x3d,0xa4,0xf6,0x78,0xb0, + 0x7d,0xfb,0x76,0x6c,0xdb,0xb6,0xd,0x0,0x90,0xcb,0xe5,0xf0,0xf0,0xe1,0x43,0x69, + 0x9a,0xe6,0xf4,0xf8,0xf8,0xf8,0xef,0x8b,0xc5,0xe2,0x2b,0x9b,0x74,0xcd,0x25,0xa0, + 0xa,0x60,0x1e,0x80,0x2e,0xa5,0x5c,0xb8,0x3b,0xed,0x12,0x11,0x58,0x8c,0x8e,0x8e, + 0x8e,0x68,0x2a,0x95,0xfa,0xad,0xcf,0xe7,0x3b,0xb6,0x69,0xd3,0x26,0x71,0xe4,0xc8, + 0x11,0x9a,0x48,0x24,0x20,0xa5,0x44,0xb9,0x5c,0xc6,0xcc,0xcc,0xc,0x66,0x66,0x66, + 0x56,0xf4,0x8a,0xd7,0xeb,0xc5,0xd6,0xad,0x5b,0xb1,0x75,0xeb,0x56,0x44,0x22,0x11, + 0x10,0x42,0x90,0xcf,0xe7,0x31,0x3a,0x3a,0x2a,0xe6,0xe7,0xe7,0x69,0xbd,0x5e,0x1f, + 0xcd,0x66,0xb3,0x7f,0xae,0x54,0x2a,0xb3,0x0,0xea,0x2e,0x1,0xe,0xe6,0x1,0x18, + 0xd,0xc3,0x2f,0xb5,0x70,0x22,0x84,0xf8,0x5c,0xe4,0xfd,0x6e,0x24,0x12,0x89,0x9f, + 0xc4,0x62,0xb1,0x5f,0x29,0x8a,0xb2,0xa7,0xab,0xab,0x4b,0xec,0xdb,0xb7,0x8f,0xf6, + 0xf5,0xf5,0x41,0x55,0x55,0x48,0x29,0x51,0xad,0x56,0xa1,0xeb,0x3a,0xc,0xc3,0x80, + 0xae,0xeb,0x0,0x0,0x9f,0xcf,0x7,0xaf,0xd7,0xb,0x9f,0xcf,0x87,0x60,0x30,0x8, + 0x42,0x8,0x2a,0x95,0xa,0x26,0x26,0x26,0x30,0x36,0x36,0x26,0x4a,0xa5,0x12,0x35, + 0xc,0xe3,0xdf,0x85,0x42,0xe1,0xaf,0xaf,0x5f,0xbf,0xfe,0x17,0x0,0xdd,0x26,0xef, + 0x46,0x5,0x80,0x26,0xa5,0x14,0x2d,0x1d,0x31,0xd9,0xde,0xf0,0xdb,0x22,0x7c,0xf6, + 0x77,0x1f,0x0,0x2f,0x0,0xdf,0xfe,0xfd,0xfb,0x4f,0x46,0xa3,0xd1,0x5f,0x30,0xc6, + 0x92,0x0,0xd0,0xd5,0xd5,0x25,0x76,0xed,0xda,0x45,0xb7,0x6c,0xd9,0xd2,0x38,0xe4, + 0x76,0x76,0x10,0x6a,0xb5,0x5a,0xe3,0xb0,0xfb,0xdd,0xbb,0x77,0x78,0xf5,0xea,0x95, + 0x28,0x95,0x4a,0x14,0x0,0x2c,0xcb,0xca,0xcf,0xce,0xce,0xfe,0xed,0xd9,0xb3,0x67, + 0x5f,0x3,0x30,0x6c,0xf2,0x86,0x4b,0x44,0xcd,0x26,0x6f,0x2d,0x69,0xec,0x95,0xb6, + 0x4c,0xec,0x42,0xdf,0x63,0xb,0x8,0xda,0x2,0xbc,0xce,0x6c,0xd8,0xdb,0xdb,0xfb, + 0xa3,0x58,0x2c,0x76,0x32,0x10,0x8,0xfc,0x4c,0x51,0x94,0x3,0xad,0xfc,0xd4,0xc0, + 0x34,0xcd,0x6c,0xad,0x56,0xfb,0xa6,0x50,0x28,0x7c,0x5d,0x28,0x14,0x26,0xed,0xec, + 0xe2,0xc0,0xb0,0xe3,0x5c,0x3,0x60,0x2e,0xb6,0xf8,0x9a,0x4e,0xea,0x5d,0x62,0x1c, + 0x8f,0x28,0xf6,0xff,0x1e,0x0,0x2c,0x1c,0xe,0xab,0x91,0x48,0xa4,0x57,0x55,0xd5, + 0x6e,0x8f,0xc7,0xd3,0xe5,0xf1,0x78,0x3a,0x1,0x10,0xcb,0xb2,0x4a,0xa6,0x69,0xce, + 0x68,0x9a,0x36,0x3d,0x3b,0x3b,0x5b,0x98,0x9b,0x9b,0xd3,0xec,0xd4,0xed,0x4e,0xdf, + 0x55,0xdb,0xe2,0xa6,0x6c,0x83,0xd4,0x9a,0x7e,0xec,0x61,0x87,0x19,0xb1,0xad,0x4e, + 0x17,0x4f,0xf3,0x36,0x9c,0x89,0x92,0xbb,0x20,0x5c,0x7f,0xc5,0x87,0x1a,0x66,0x75, + 0x3c,0xfe,0xb,0xd3,0x92,0x8,0x1,0x5f,0x2d,0xd9,0x20,0x0,0x0,0x0,0x0,0x49, + 0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/close.png + 0x0,0x0,0xa,0xd4, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x4,0x67,0x41,0x4d,0x41,0x0,0x0,0xaf,0xc8,0x37,0x5,0x8a,0xe9, + 0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x53,0x6f,0x66,0x74,0x77,0x61,0x72,0x65, + 0x0,0x41,0x64,0x6f,0x62,0x65,0x20,0x49,0x6d,0x61,0x67,0x65,0x52,0x65,0x61,0x64, + 0x79,0x71,0xc9,0x65,0x3c,0x0,0x0,0xa,0x66,0x49,0x44,0x41,0x54,0x68,0x43,0xc5, + 0x9a,0x57,0x6c,0x54,0xdd,0x15,0x85,0xf1,0xff,0x12,0xf1,0x2,0x8,0x8,0xbd,0x98, + 0xde,0xc1,0x14,0x29,0x34,0x1,0xf,0x1,0x21,0xd1,0x11,0x10,0x8a,0xe8,0xbd,0x83, + 0x90,0xe8,0xa,0x4f,0xd4,0x44,0xf4,0x22,0x64,0x1e,0x90,0x10,0x1,0x21,0xc0,0xf0, + 0x92,0x20,0x44,0x15,0xbd,0x1a,0x4c,0xef,0xdd,0x54,0x53,0x4c,0x31,0x60,0xe0,0xe4, + 0x7c,0x5b,0x5e,0xce,0x61,0x98,0x71,0x8c,0xff,0x4,0x8f,0xb4,0x75,0xef,0x1d,0xdf, + 0xb9,0xb3,0xd6,0x3a,0xeb,0xec,0xbd,0xcf,0x19,0xc7,0x15,0xf8,0xcf,0xeb,0xb7,0x6, + 0xd,0x1a,0x54,0xf0,0x97,0xed,0xbe,0x7d,0xfb,0xd6,0x2d,0x2e,0x2e,0xae,0xc9,0x6f, + 0xfe,0xe5,0x9c,0xb,0x6e,0xf9,0xf5,0xa7,0x1e,0x47,0x1,0x8f,0x27,0xc3,0x1f,0xf, + 0x7b,0x2c,0x49,0x5,0xb,0x16,0x3c,0x70,0xe2,0xc4,0x89,0x67,0x1e,0xc9,0xf7,0xc0, + 0xea,0xd5,0xab,0xf7,0xe7,0xfa,0xf5,0xeb,0x27,0x79,0x12,0xa9,0xfe,0xf8,0x35,0x21, + 0x21,0xc1,0x11,0xfe,0x3a,0x5f,0x23,0xc0,0xf1,0xc9,0x9f,0xdf,0xf7,0x78,0xfe,0xe1, + 0xf1,0xfd,0x29,0x94,0x32,0xce,0x83,0xef,0xec,0xdf,0xdc,0xe7,0x6f,0xf8,0xda,0xa8, + 0x51,0x23,0x3,0x5c,0xb3,0x66,0x4d,0x57,0xa5,0x4a,0x15,0x57,0xa9,0x52,0xa5,0x7c, + 0x8d,0xaa,0x55,0xab,0xba,0xda,0xb5,0x6b,0x9b,0x98,0x59,0xd8,0x32,0x3d,0xde,0x4d, + 0x3e,0x1a,0x19,0x9,0xf,0x36,0xde,0x83,0xff,0x67,0xc3,0x86,0xd,0x1d,0x51,0xbd, + 0x7a,0x75,0x57,0xab,0x56,0x2d,0xd7,0xbb,0x77,0x6f,0x37,0x7f,0xfe,0x7c,0xb7,0x7a, + 0xf5,0xea,0x5f,0x1e,0xab,0x56,0xad,0x72,0x8a,0x39,0x73,0xe6,0xb8,0x4e,0x9d,0x3a, + 0xb9,0x6a,0xd5,0xaa,0x19,0x91,0x2c,0x9c,0xef,0x3c,0xee,0xa5,0x3e,0x8a,0x40,0x60, + 0xa4,0x8f,0x34,0xd8,0x1,0xbc,0x59,0xb3,0x66,0x6e,0xca,0x94,0x29,0x6e,0xff,0xfe, + 0xfd,0xee,0xf3,0xe7,0xcf,0xde,0x76,0xf9,0xfb,0x7a,0xf9,0xf2,0xa5,0xdb,0xb6,0x6d, + 0x9b,0x1b,0x3a,0x74,0x68,0xb6,0x33,0x1a,0x37,0x6e,0xcc,0xf9,0x35,0x2f,0x7c,0x27, + 0x8,0xfc,0xcb,0x47,0xa6,0xbf,0x70,0xc4,0xac,0x59,0xb3,0xdc,0xb3,0x67,0xcf,0xf2, + 0x15,0xf5,0xd7,0xaf,0x5f,0xdd,0x97,0x2f,0x5f,0x2c,0x38,0x27,0x2e,0x5c,0xb8,0xe0, + 0xfa,0xf6,0xed,0x6b,0xd6,0xc6,0xe2,0x1e,0xeb,0x7b,0x7f,0x4c,0x84,0xc0,0x73,0xfc, + 0xc5,0x1f,0xfa,0xf4,0xe9,0xe3,0xe,0x1c,0x38,0xf0,0x1d,0x78,0x9f,0x1,0xdc,0xaf, + 0x8,0x81,0xce,0xcc,0xcc,0xb4,0x91,0xff,0xf4,0xe9,0x93,0xfb,0xf8,0xf1,0xa3,0x5, + 0x7f,0x4b,0x4f,0x4f,0x77,0x1b,0x37,0x6e,0x74,0xed,0xdb,0xb7,0x77,0x35,0x6a,0xd4, + 0xd0,0x7c,0x38,0x3,0x81,0xd7,0x10,0x60,0xc2,0xce,0x9b,0x37,0xcf,0x65,0x64,0x64, + 0x18,0x81,0x5f,0x1,0x9a,0xef,0x90,0xc2,0xa8,0xd,0x78,0x1,0x7,0xc7,0x87,0xf, + 0x1f,0xdc,0xfb,0xf7,0xef,0x2d,0x20,0x72,0xff,0xfe,0x7d,0x37,0x62,0xc4,0x8,0x4b, + 0x2a,0x59,0x13,0x3a,0x5,0x2,0x69,0xc,0x9,0x6f,0xae,0x59,0xb3,0x26,0x5b,0xfd, + 0xff,0x37,0x81,0x48,0xe0,0x52,0x1e,0xa0,0x21,0xf8,0x77,0xef,0xde,0x99,0xfa,0x7a, + 0x6f,0xf2,0xe4,0xc9,0xae,0x62,0xc5,0x8a,0x46,0xc0,0xdb,0x28,0x39,0x4f,0x4,0x42, + 0x8f,0xe5,0x85,0xa8,0xec,0xc2,0x51,0x9f,0x87,0x80,0xc0,0xa3,0x38,0xc0,0x5,0xfe, + 0xcd,0x9b,0x37,0x36,0xa,0x5c,0x4f,0x9a,0x34,0x29,0x36,0x1,0x52,0xa6,0x5e,0xd1, + 0x80,0x85,0xc0,0x65,0xb5,0x9c,0xee,0x8f,0x45,0xe,0xe0,0x7a,0x1,0xfa,0xed,0xdb, + 0xb7,0x66,0x1f,0xee,0xc7,0x36,0x5c,0x13,0x28,0xf,0xf8,0xd7,0xaf,0x5f,0x1b,0x78, + 0xce,0x27,0x4e,0x9c,0x98,0x77,0x2,0x7c,0xf1,0xe3,0xc7,0x8f,0xdd,0xee,0xdd,0xbb, + 0xdd,0x86,0xd,0x1b,0xdc,0xbe,0x7d,0xfb,0xdc,0x8b,0x17,0x2f,0x72,0x6d,0x3b,0xd9, + 0x86,0xf,0xe0,0xf5,0x4b,0x97,0x2e,0x59,0x8a,0x5c,0xbf,0x7e,0xbd,0xa5,0x6d,0x9e, + 0x1d,0x2a,0xf,0x70,0xe2,0xd5,0xab,0x57,0x46,0x86,0xf3,0x9,0x13,0x26,0xe4,0x8d, + 0x0,0x5f,0x9a,0x9a,0x9a,0xea,0x66,0xcf,0x9e,0xed,0x9a,0x34,0x69,0xe2,0xa8,0x90, + 0x1c,0x29,0x76,0x7c,0x41,0x4e,0x23,0x21,0xe0,0x52,0x1e,0xf0,0x47,0x8e,0x1c,0x71, + 0xfd,0xfb,0xf7,0x77,0x75,0xea,0xd4,0xb1,0x4,0xd2,0xa6,0x4d,0x1b,0x9b,0x83,0x8, + 0xc2,0xe8,0xa,0x38,0x75,0x20,0x2d,0x2d,0xcd,0xae,0x39,0xcf,0x13,0x1,0xc0,0xf1, + 0xe5,0x28,0xf,0xe8,0x62,0xc5,0x8a,0xb9,0x52,0xa5,0x4a,0x59,0x90,0xc1,0xe6,0xce, + 0x9d,0x6b,0xf,0x8f,0x46,0x22,0x4c,0x8f,0xfc,0x1d,0xab,0x1c,0x3c,0x78,0xd0,0x75, + 0xef,0xde,0xdd,0xc5,0xc7,0xc7,0x67,0x3f,0xa7,0x68,0xd1,0xa2,0xf6,0xde,0x83,0x7, + 0xf,0x6c,0x74,0x4,0x1c,0x42,0xcf,0x9f,0x3f,0x37,0x91,0x20,0x32,0x7e,0xfc,0x78, + 0xfb,0x5c,0xd4,0x49,0x1c,0x6b,0xe,0xf0,0xc5,0x78,0x15,0xdb,0xa0,0x3c,0xc0,0x51, + 0x8d,0x7,0x95,0x29,0x53,0xc6,0x48,0x90,0x82,0x23,0xed,0x14,0x16,0x24,0xcd,0x7, + 0xea,0xc,0x40,0xcb,0x97,0x2f,0xef,0xca,0x96,0x2d,0xeb,0x2a,0x57,0xae,0x6c,0xcf, + 0x2a,0x54,0xa8,0x90,0x6b,0xdd,0xba,0xb5,0xbb,0x7b,0xf7,0xae,0x11,0x0,0xac,0xc0, + 0x53,0x58,0x21,0xc4,0x75,0x9e,0x8,0xf0,0xe5,0x14,0x17,0x7c,0xca,0x8,0x94,0x2c, + 0x59,0xd2,0xc0,0xf3,0xe5,0x1c,0x1,0xe2,0x9b,0x2b,0xb7,0x70,0xe1,0x42,0xf7,0xf4, + 0xe9,0xd3,0xec,0x3a,0xa2,0xdc,0x1e,0x82,0xef,0xd1,0xa3,0x87,0x2b,0x5d,0xba,0xb4, + 0xab,0x50,0xa1,0x82,0x7d,0x9e,0x28,0x57,0xae,0x9c,0xbd,0x37,0x68,0xd0,0x20,0x1b, + 0x1,0x26,0x32,0xaa,0x13,0x3c,0xef,0xc9,0x93,0x27,0x6,0x1e,0x22,0x79,0x26,0x0, + 0x2a,0x54,0xc1,0xf3,0x28,0x8e,0xf2,0x21,0x9,0x14,0xc5,0xcf,0x8b,0x16,0x2d,0xb2, + 0xc9,0xc8,0xb,0x2,0x22,0x8f,0xf2,0x80,0x67,0xf4,0xf4,0x39,0xc0,0xf3,0x39,0xc8, + 0x30,0x2a,0x49,0x49,0x49,0x6,0x18,0xbb,0x0,0x56,0xe0,0x79,0x1e,0xd7,0x10,0x19, + 0x37,0x6e,0xdc,0xcf,0x5b,0x8,0x10,0x7a,0xf1,0x70,0x3c,0xf,0x9,0x94,0xa7,0x0, + 0x2,0x84,0x23,0x40,0x20,0x81,0x9d,0xd4,0x4f,0x61,0x7,0xd9,0x6,0x95,0x5,0x5e, + 0xf7,0x73,0xdd,0xad,0x5b,0x37,0xb7,0x63,0xc7,0xe,0x4b,0x93,0x88,0x4,0x70,0x2, + 0xe0,0x4,0xc9,0x43,0xd7,0x63,0xc7,0x8e,0xcd,0x1b,0x81,0x68,0x24,0x68,0xfe,0x50, + 0x30,0x24,0xc1,0x35,0x76,0x5a,0xb0,0x60,0x81,0x29,0x46,0xb6,0x91,0xe7,0x65,0x9b, + 0x10,0x7c,0x97,0x2e,0x5d,0xc,0xbc,0xb2,0x8e,0x94,0x16,0xf0,0x47,0x8f,0x1e,0xb9, + 0x87,0xf,0x1f,0x1a,0x11,0xce,0xc7,0x8c,0x19,0x93,0x77,0x2,0x21,0x9,0x3c,0x9, + 0x48,0x14,0x7,0x58,0x48,0x82,0x91,0x69,0xd1,0xa2,0x85,0xf5,0x2d,0x1d,0x3b,0x76, + 0xb4,0x89,0x8f,0xcf,0xe5,0x79,0xdd,0xdf,0xb9,0x73,0x67,0x3,0xcf,0xa8,0x42,0x40, + 0x96,0x41,0x71,0x1,0x67,0x4e,0xd0,0x3,0xe9,0xfa,0x77,0x13,0x8,0x49,0xa0,0xb0, + 0x48,0xa0,0x7c,0x38,0x27,0xb4,0x92,0x3,0x38,0xbd,0x8b,0xc0,0x73,0x1f,0xd7,0x28, + 0xbf,0x73,0xe7,0x4e,0xcb,0x2e,0x14,0x29,0x9e,0x45,0x48,0x69,0x54,0x17,0xf8,0x7b, + 0xf7,0xee,0xd9,0x28,0x40,0xe4,0x7f,0x42,0x40,0x59,0x85,0x79,0xc1,0x17,0x32,0x27, + 0xb0,0xd,0xca,0x87,0x1e,0x7,0xa8,0x46,0x46,0xd9,0x6,0xf5,0xbb,0x76,0xed,0x6a, + 0x13,0x36,0x4,0x1f,0x5a,0x46,0xc0,0x1,0x4c,0x5a,0xbd,0x73,0xe7,0x8e,0x81,0xe7, + 0xfc,0x77,0x13,0x8,0xb,0x13,0x45,0x89,0x17,0xca,0x91,0x9d,0xb0,0x8d,0x94,0x97, + 0xe2,0x3a,0x42,0x4c,0x6b,0xe,0x6c,0x3,0x78,0xac,0xa3,0x89,0x1a,0x69,0x19,0x54, + 0x17,0xf8,0xdb,0xb7,0x6f,0x3b,0xae,0x21,0x32,0x7a,0xf4,0xe8,0xec,0x76,0xfa,0x87, + 0x6e,0xf4,0xbf,0x35,0x73,0xd1,0x16,0x1d,0x5a,0x76,0x2,0x60,0xf8,0xf0,0xe1,0x66, + 0x95,0xd0,0x32,0xca,0x50,0x58,0xa7,0x79,0xf3,0xe6,0x6e,0xdd,0xba,0x75,0xd6,0xef, + 0x40,0x20,0x27,0xcb,0x84,0xe0,0x6f,0xdd,0xba,0x65,0x64,0x20,0x32,0x6a,0xd4,0xa8, + 0xbc,0x11,0x88,0xb5,0x62,0x22,0xd7,0x53,0x78,0xe,0x1d,0x3a,0x64,0x13,0x16,0xcf, + 0x87,0xb6,0xd1,0x8,0x40,0x8a,0x45,0x39,0x4b,0x56,0x80,0x90,0x4,0x20,0x0,0x71, + 0x2c,0x23,0xdb,0x84,0xc0,0xb9,0xef,0xe6,0xcd,0x9b,0xee,0xc6,0x8d,0x1b,0xf6,0x19, + 0xce,0x47,0x8e,0x1c,0x99,0x7b,0x2,0x61,0x13,0x16,0xb9,0xd4,0xa3,0xe1,0x42,0x7d, + 0xc0,0xd3,0x95,0x92,0x2a,0xc9,0x36,0xa1,0xfa,0x91,0x44,0xb0,0x11,0xb,0x72,0x1a, + 0xc2,0x6b,0xd7,0xae,0x59,0xa5,0x85,0x0,0xf6,0x8,0x2d,0x83,0xe2,0x80,0x25,0xae, + 0x5f,0xbf,0x6e,0xf7,0xea,0x3c,0xd7,0x4,0xc2,0x3e,0x6,0x95,0xc3,0x75,0x2a,0xe0, + 0x29,0x50,0xbc,0xb7,0x67,0xcf,0x1e,0x2b,0x44,0x58,0x24,0x4c,0x95,0x80,0x55,0xc6, + 0x9,0xe7,0x1,0x15,0x9c,0x15,0xe0,0xcc,0x99,0x33,0xdd,0xc5,0x8b,0x17,0x8d,0x44, + 0xa4,0xdf,0xa5,0x3a,0xca,0x3,0xfe,0xea,0xd5,0xab,0x36,0xa,0x9c,0xff,0x34,0x1, + 0x1,0xd7,0x5a,0x15,0xc5,0x69,0xec,0xb8,0xde,0xbb,0x77,0xaf,0xb5,0x7,0xd1,0x7a, + 0x1b,0x16,0xde,0x6c,0xd1,0x60,0x1b,0xc8,0x44,0xf6,0x4e,0x75,0xeb,0xd6,0x35,0x3b, + 0x9d,0x3f,0x7f,0xde,0xaa,0x36,0x13,0x54,0xca,0x4b,0x75,0x80,0x13,0x57,0xae,0x5c, + 0xb1,0x91,0xe0,0x98,0x6b,0x2,0xd1,0x2c,0x23,0xe5,0x59,0xde,0xa1,0x7c,0x4e,0xbd, + 0xd,0x3b,0x1c,0x89,0x89,0x89,0xa6,0x34,0xad,0x6f,0x64,0xef,0x44,0x3a,0x85,0x1c, + 0x7f,0x3f,0x7b,0xf6,0xac,0xb5,0xb,0x10,0x8,0xc1,0x3,0xf8,0xf2,0xe5,0xcb,0xb6, + 0xf0,0x81,0x8,0xc7,0x70,0x51,0xff,0x43,0x16,0x62,0x37,0x8c,0x97,0x1a,0xb0,0xc8, + 0x1d,0x2,0x94,0xa7,0xe8,0xa0,0x3c,0xb6,0x9,0x41,0x45,0xb6,0x7,0xdb,0xb7,0x6f, + 0xb7,0x7b,0x1,0x5,0x48,0xda,0x8e,0x70,0x82,0x73,0xbf,0x26,0xf6,0xf4,0xe9,0xd3, + 0xdd,0x99,0x33,0x67,0x6c,0x14,0xa4,0x74,0x8,0x1e,0xab,0x41,0x84,0xa3,0x32,0x5d, + 0xd4,0xf5,0xc0,0xca,0x95,0x2b,0xb3,0xbb,0x48,0xc0,0x87,0xbb,0x3,0x9c,0xd3,0x6c, + 0xd1,0x98,0xc9,0xf3,0xd1,0x7a,0x1b,0xda,0x83,0xad,0x5b,0xb7,0x9a,0xb7,0xd5,0x2, + 0xf3,0xe5,0x33,0x66,0xcc,0x70,0xd8,0x26,0xb2,0x77,0x52,0x3,0x38,0x75,0xea,0x54, + 0x77,0xfa,0xf4,0x69,0xf3,0x39,0xe0,0x51,0x1b,0xc0,0x6c,0x68,0xa5,0xa4,0xa4,0xd8, + 0x35,0xc7,0x61,0xc3,0x86,0x59,0xaa,0x8e,0x4a,0x60,0xc5,0x8a,0x15,0x46,0x0,0xdf, + 0x3,0x58,0x3b,0x1,0x1c,0x79,0x2f,0x39,0x39,0xd9,0xf5,0xeb,0xd7,0xcf,0xfc,0x1c, + 0xab,0xb7,0x41,0x79,0x3c,0xd,0x78,0xca,0x3f,0x59,0x86,0x74,0xc9,0x97,0x33,0x12, + 0xd8,0x26,0xac,0xd0,0x8c,0x84,0xd6,0x13,0x90,0x38,0x77,0xee,0x9c,0x4d,0x58,0x80, + 0x13,0xcc,0x11,0xde,0xd3,0x79,0xae,0x8,0xa0,0x3e,0x93,0x95,0x82,0xc3,0xee,0x0, + 0xe7,0x34,0x5b,0x9b,0x36,0x6d,0x32,0x0,0xf4,0xf4,0xd1,0x7a,0x1b,0x81,0xa7,0x48, + 0x85,0x7d,0xc,0x6d,0x0,0x8d,0x1a,0x2,0x40,0x82,0x3d,0x58,0x94,0xf,0x27,0x76, + 0xf1,0xe2,0xc5,0x5d,0xdb,0xb6,0x6d,0xdd,0xf1,0xe3,0xc7,0x2d,0x65,0x42,0x98,0x0, + 0x3c,0x9f,0xd3,0x79,0xae,0x8,0xa0,0xbe,0xc0,0xe3,0x63,0x46,0x0,0x55,0x99,0x94, + 0x2c,0xff,0xb4,0xa4,0x64,0x14,0x0,0x42,0x63,0x86,0x6d,0x0,0x49,0x3f,0x1f,0x82, + 0xf,0xb,0x13,0x23,0x81,0x4d,0xa6,0x4d,0x9b,0x66,0x76,0x52,0xef,0xc4,0x33,0x8b, + 0x14,0x29,0x62,0x95,0x9a,0xf6,0x9b,0x11,0x10,0x70,0xc0,0x33,0xc9,0xb9,0xe6,0x18, + 0x95,0x0,0x8b,0x13,0x86,0x72,0xf9,0xf2,0xe5,0x66,0x21,0x0,0x87,0x7b,0x32,0x9c, + 0x13,0xbb,0x76,0xed,0xb2,0x75,0x2b,0xb,0xf0,0xc2,0x85,0xb,0xdb,0x24,0xa6,0x31, + 0x3,0x3c,0x4,0x9,0xc0,0xe7,0x54,0x98,0x18,0x8d,0x53,0xa7,0x4e,0x39,0xec,0xc2, + 0x56,0x79,0x89,0x12,0x25,0xc,0x3c,0xcf,0x62,0x97,0xc2,0xff,0xfa,0x62,0x19,0x47, + 0xc0,0x99,0xdc,0x90,0xe6,0x9a,0x23,0xbb,0xd4,0x3f,0xcc,0x1,0x8,0xf0,0xe6,0xb2, + 0x65,0xcb,0x8c,0x80,0x36,0x91,0xb4,0xc8,0xa0,0xe9,0xe2,0x3d,0xca,0x39,0xf7,0x0, + 0xba,0x55,0xab,0x56,0xf6,0x85,0x5b,0xb6,0x6c,0xb1,0x9,0x4b,0x53,0x16,0xb6,0x3, + 0xa1,0xf2,0x2a,0x4c,0x4a,0x91,0x64,0x26,0xc0,0x50,0x91,0xd9,0xac,0x6d,0xda,0xb4, + 0xa9,0x1b,0x30,0x60,0x80,0xdb,0xbc,0x79,0xb3,0xa9,0x8c,0xef,0x39,0x12,0xdc,0x7, + 0x61,0xce,0x39,0xe,0x19,0x32,0x24,0x36,0x81,0xa5,0x4b,0x97,0x1a,0x1,0x7c,0xaf, + 0x7d,0x18,0x2c,0xa1,0x1d,0x2,0x29,0xcc,0x10,0xa3,0x12,0x80,0x50,0x54,0xe0,0x55, + 0x51,0xd5,0x78,0x45,0x16,0x26,0x55,0x55,0x15,0x27,0x40,0x1d,0x3b,0x76,0xcc,0xfa, + 0x28,0xbc,0x8f,0xca,0x84,0x54,0x7,0xfc,0xc9,0x93,0x27,0x6d,0x54,0x74,0x9e,0x23, + 0x81,0x25,0x4b,0x96,0x58,0xd,0x20,0x5d,0x86,0xfb,0x32,0xb2,0x7,0x47,0x6d,0x32, + 0x41,0x90,0x73,0xc0,0x43,0x42,0xed,0x2e,0xa3,0x14,0x36,0x61,0xb1,0xa,0x13,0x29, + 0x52,0x22,0x70,0xf,0xa9,0x16,0xe5,0x5,0x1e,0xb5,0x1,0xf,0x31,0x48,0xea,0x7c, + 0xf0,0xe0,0xc1,0x36,0xf,0xbf,0x4b,0xa3,0xb2,0x10,0x4,0xe8,0x81,0x4,0x4e,0xfb, + 0x32,0x4c,0xbe,0x9c,0x96,0x7b,0x52,0x1e,0xe0,0xa8,0x4e,0x30,0x4a,0x91,0xe0,0xc9, + 0xe5,0xca,0xef,0x64,0x15,0xa5,0xc8,0x48,0xbf,0x47,0x82,0x3f,0x7a,0xf4,0xa8,0x8d, + 0x2,0x44,0x72,0x24,0xb0,0x78,0xf1,0x62,0xdb,0xa,0x41,0x7d,0x7c,0xad,0xad,0x8d, + 0x70,0x77,0x40,0xed,0x2f,0xaa,0x87,0x2b,0x26,0x81,0xf,0x3b,0x48,0x59,0x45,0xed, + 0x40,0x58,0x98,0x94,0x65,0xb0,0x51,0xa4,0xea,0x80,0x45,0x79,0x80,0x13,0x64,0x26, + 0xc0,0x73,0x1e,0x8d,0x40,0x3a,0x23,0x40,0x2b,0x4c,0xb5,0x4,0x94,0xf6,0x65,0xb4, + 0xe0,0x88,0xb6,0xc8,0x8e,0xd5,0x41,0x46,0xb3,0x8c,0x80,0x87,0x85,0x29,0x37,0xaa, + 0x3,0xf8,0xf0,0xe1,0xc3,0x46,0x80,0x60,0x19,0xda,0xb3,0x67,0x4f,0xfb,0xc1,0x2f, + 0xcb,0x42,0x17,0xb,0xf8,0x1e,0xe5,0x11,0x4,0x28,0x50,0x1d,0x3a,0x74,0xb0,0x9f, + 0x71,0xb4,0xdc,0x83,0x40,0x4e,0xe0,0xe5,0xf7,0x58,0x96,0x91,0xf2,0x6a,0x7,0xc2, + 0xc2,0x14,0x2a,0x8f,0xbf,0x35,0x59,0xa5,0xb4,0x40,0x43,0x80,0xd1,0xa0,0xff,0xa2, + 0x8,0xb6,0x6c,0xd9,0x32,0xfb,0xd7,0x4a,0xdf,0x96,0x1f,0xe3,0x7,0x8e,0xcd,0x9e, + 0xc4,0x67,0x48,0xf0,0x13,0xeb,0xc0,0x81,0x3,0x6d,0xb8,0xb0,0x8a,0x26,0x6f,0x38, + 0x12,0x91,0xbb,0x5,0x4a,0x97,0xca,0x38,0x78,0x3f,0xec,0xe3,0xc3,0xbe,0x26,0x96, + 0x85,0xc8,0x30,0x4a,0x97,0xe1,0xc4,0x5,0x7,0x4,0xe8,0x7c,0xd7,0xae,0x5d,0x6b, + 0x95,0x9a,0x2a,0xe,0x56,0x8f,0x39,0xdd,0x63,0xff,0x3b,0x23,0xf0,0x17,0x1f,0xa9, + 0xc,0x9,0xa3,0x40,0xd7,0xd8,0xab,0x57,0x2f,0x5b,0xbb,0xa2,0xa0,0x46,0x21,0x16, + 0x70,0x79,0x3f,0x4,0x8d,0xf7,0x63,0xf9,0x5e,0xde,0x8f,0xe5,0x7b,0x40,0x87,0xea, + 0xd3,0x9e,0x60,0x6d,0xc0,0x53,0xbd,0x89,0xac,0xdf,0xc7,0xce,0xfa,0x42,0xd8,0xaa, + 0x80,0x67,0xf3,0x47,0xcf,0x64,0x9d,0x3f,0x66,0xe8,0xb7,0x62,0x58,0xb6,0x6b,0xd7, + 0xce,0x8a,0x6,0x7b,0x91,0x6c,0xe7,0x11,0x6c,0x69,0xb0,0x2b,0xa0,0x60,0x81,0x1d, + 0x6,0x8b,0xd,0xfa,0x75,0x5,0xad,0x6f,0x18,0xb4,0x1,0x4,0xd5,0x94,0xe0,0xf9, + 0xa,0x26,0xa7,0x82,0x4d,0x5e,0x5,0x9e,0xc7,0x36,0xec,0x68,0x0,0x9e,0xea,0xed, + 0xb1,0xbe,0xf0,0x42,0xff,0xd5,0x17,0xc0,0x82,0xfa,0xb5,0x3e,0xc1,0xbf,0xb1,0xc1, + 0xff,0xe1,0x63,0xd6,0x8f,0xc8,0xf6,0x1,0xed,0x3e,0x6b,0x45,0x15,0x1e,0x7f,0xe6, + 0x5f,0x10,0x22,0xb7,0x58,0x72,0xba,0x26,0xc7,0x87,0x11,0xfe,0x42,0x9f,0x85,0x2d, + 0xcd,0xef,0x41,0xfd,0xcd,0xef,0x8,0x56,0xf9,0xee,0x5f,0x4f,0xfc,0x28,0x24,0xf8, + 0x58,0xee,0x23,0xc5,0x93,0xf9,0xc8,0x68,0xf0,0x1,0x8e,0xf9,0x19,0x60,0x40,0x75, + 0x8f,0xeb,0x8d,0x8f,0x53,0x5e,0xe4,0x39,0x7e,0xb9,0x1a,0x1f,0xf5,0xff,0x66,0x7c, + 0x2a,0x2d,0xc4,0xcf,0xf7,0x3e,0x12,0x7d,0x9c,0xf6,0x37,0x27,0xb3,0x6c,0xcb,0xcf, + 0xc8,0xc2,0x70,0x94,0x9,0x8b,0xe7,0x7d,0xef,0xf4,0x87,0x10,0xfc,0xbf,0x1,0x3d, + 0xc9,0x92,0x74,0x7e,0x82,0xde,0x1d,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae, + 0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/addcontact.png + 0x0,0x0,0xf,0x12, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x44,0x0,0x0,0x0,0x44,0x8,0x6,0x0,0x0,0x0,0x38,0x13,0x93,0xb2, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,0x1, + 0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xb, + 0xf,0xc,0x13,0x4a,0x13,0x53,0x79,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x43, + 0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x0,0x43,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x77, + 0x69,0x74,0x68,0x20,0x47,0x49,0x4d,0x50,0x57,0x81,0xe,0x17,0x0,0x0,0xe,0x6d, + 0x49,0x44,0x41,0x54,0x78,0xda,0xed,0x5b,0x59,0x93,0x5c,0xe5,0x79,0x7e,0xbe,0xed, + 0x2c,0x7d,0x4e,0xef,0xd3,0x33,0xea,0x19,0x21,0x29,0x12,0x48,0x2c,0x92,0x1d,0x82, + 0x9,0x20,0x5c,0xd8,0xc6,0xa9,0xc4,0x71,0xec,0x84,0x8a,0x43,0x2a,0xf9,0x5,0xf9, + 0x1,0xb9,0xcc,0x4d,0xee,0xb8,0xcc,0x7d,0x72,0xcd,0x4d,0x70,0x5c,0xc9,0x45,0x2a, + 0xe5,0xca,0x52,0xc6,0x65,0x43,0x62,0x4a,0x26,0x6,0x2c,0x30,0x63,0x81,0x34,0xcc, + 0x30,0x6b,0x4f,0xef,0x67,0xf9,0xb6,0x37,0x17,0xdd,0x8c,0x84,0x90,0x52,0x21,0x25, + 0x9,0x86,0x9a,0xa7,0xeb,0xad,0xaf,0x67,0xa9,0x73,0xbe,0xf3,0xf4,0xbb,0xbf,0x5f, + 0x3,0x47,0x38,0xc2,0x11,0x8e,0x70,0x84,0x23,0x1c,0xe1,0x8,0x47,0x38,0xc2,0xe7, + 0x11,0xec,0x6e,0xdf,0xe0,0xf9,0xe7,0x9f,0x17,0xdf,0xf9,0xce,0x9f,0x37,0x5a,0x8b, + 0x9d,0xb,0x95,0x4a,0xfa,0xb8,0x94,0xf2,0x4b,0xa5,0x76,0xf,0x15,0x79,0x71,0xdc, + 0x58,0xa7,0xb2,0x7c,0x9a,0x67,0xd9,0x74,0x63,0x32,0x19,0x5c,0x9a,0x4c,0x86,0xff, + 0x3a,0xee,0xf5,0x5f,0xbd,0x76,0xed,0x91,0xdd,0x97,0x5e,0xfa,0x53,0xf7,0x59,0x10, + 0x22,0xef,0xf6,0xd,0x9e,0x7e,0xfa,0xd9,0xd3,0xad,0x56,0xfd,0xa9,0xc5,0xce,0xc2, + 0x33,0xd5,0x5a,0xfd,0x82,0x73,0xb8,0x6f,0x9a,0x15,0xdd,0x56,0xb3,0x3,0xe3,0x8, + 0xe3,0xc9,0x4,0xfd,0x7e,0xaf,0x2b,0x83,0xa8,0x23,0x82,0x64,0x49,0xc5,0xe9,0x52, + 0xd4,0xe9,0xfd,0x3b,0x5e,0xc2,0xea,0x67,0x41,0x88,0xb8,0x8b,0xd7,0xe6,0x2f,0xbe, + 0xf8,0x62,0xbb,0x7b,0xfc,0xbe,0x6f,0xb6,0x17,0xda,0x7f,0xb6,0xd0,0x6e,0x7d,0xa3, + 0x5a,0xad,0x3f,0x10,0x45,0x51,0x95,0x73,0x9,0x22,0xc0,0x3a,0x82,0x27,0xe,0x15, + 0xc4,0xc,0x4c,0x34,0x3d,0xd1,0x9,0xe7,0x5c,0xdd,0x6b,0xbb,0x7b,0x62,0xb9,0xb5, + 0xf6,0xdc,0x73,0xcf,0xe9,0x97,0x5f,0x7e,0x99,0xbe,0x10,0x1a,0xf2,0xc2,0xb,0x2f, + 0xd4,0x57,0x56,0x4e,0x5e,0x68,0x2f,0x74,0x9e,0x49,0x6a,0xb5,0x27,0x17,0x3b,0xed, + 0xa6,0x10,0xa,0x79,0xee,0x61,0xac,0x85,0x75,0x1e,0xdc,0x30,0x8,0x2e,0x20,0x24, + 0xa1,0x92,0xa4,0x20,0xc6,0x92,0x22,0xcf,0x2f,0x4c,0x45,0xf6,0x64,0xdc,0x3c,0x7d, + 0xed,0xf2,0xe6,0xc6,0x1b,0x0,0x86,0xf7,0x92,0x10,0x7e,0xb7,0x2e,0xfc,0xd0,0x43, + 0x5f,0xee,0xc6,0x49,0xf5,0xe9,0x5a,0xa3,0xf1,0x95,0xa5,0x4e,0xa7,0x99,0x44,0xa, + 0x56,0x5b,0x58,0x53,0x0,0xf0,0x60,0x8c,0xc0,0x18,0x1,0xf0,0x70,0xd6,0xc0,0x59, + 0x3,0xc6,0x18,0x84,0xa,0xea,0x20,0xfe,0x58,0x18,0x84,0x8f,0xd7,0xc3,0xb0,0x7a, + 0xaf,0x4d,0xe6,0xae,0x11,0xd2,0xea,0x2e,0x9f,0xe,0xc2,0xf8,0x71,0x40,0x9c,0xe, + 0x83,0x99,0x65,0x32,0xe6,0x1,0x10,0x18,0x6e,0xb4,0x2,0x2,0x68,0xbe,0x78,0xf, + 0xce,0x79,0xe0,0x3d,0x9d,0x85,0x8,0xce,0x13,0x6b,0xb5,0xe,0xbd,0x53,0x3d,0x77, + 0xf1,0xf,0xab,0x7f,0xf4,0xec,0xc5,0xe3,0x79,0xe6,0x9e,0x6a,0xd5,0xa2,0xf3,0x4a, + 0x85,0x69,0x9e,0x5b,0x8,0xc1,0x61,0x9d,0x87,0x27,0x82,0xf7,0x0,0x11,0x40,0xf3, + 0x15,0x0,0xbc,0xf7,0x70,0xce,0x82,0x8,0x70,0x9e,0xb5,0x4a,0x4d,0x17,0xb2,0x9c, + 0x9e,0xfe,0xee,0x9f,0xfc,0xe5,0x38,0x84,0xdf,0xfa,0xfe,0xf7,0xff,0x26,0x3f,0x94, + 0x1a,0xd2,0x94,0xc1,0xa9,0x6c,0xea,0xbe,0x3d,0x1c,0x8e,0xbf,0xce,0x98,0x5a,0x9, + 0xc3,0x18,0x65,0x69,0x91,0xe5,0x1a,0x65,0xe9,0xa0,0x8d,0x9f,0x39,0x53,0x7f,0x83, + 0x90,0x9f,0x89,0x77,0xb0,0xd6,0xc3,0x7a,0x8e,0xbc,0xf4,0xf,0x68,0x4d,0x7f,0xcc, + 0x15,0xff,0xfd,0x82,0xb9,0xce,0xa1,0xd5,0x90,0x30,0xa9,0x9e,0x74,0x16,0xcf,0xe6, + 0xb9,0x3d,0xcf,0x98,0xc,0x8d,0x25,0x98,0xd2,0x80,0x40,0xf0,0xde,0xc3,0x58,0x82, + 0x31,0xe,0xc6,0x38,0x38,0xe7,0xe1,0x9c,0x87,0xf7,0x33,0x32,0x9c,0x73,0xd0,0xc6, + 0xa0,0x28,0xc,0x9c,0x67,0x75,0xb0,0xe0,0x49,0x26,0x69,0x5b,0x30,0xf5,0xa,0x80, + 0xb5,0x43,0x49,0x48,0x14,0x24,0xb,0xc4,0xc4,0x29,0x6b,0x51,0x2b,0xb5,0x43,0x96, + 0x95,0x30,0x46,0xcf,0xcd,0x82,0xe0,0x9c,0x87,0x36,0x1e,0x5a,0xcf,0x48,0xb1,0x6e, + 0x46,0x84,0xf3,0xe,0xc6,0x58,0x14,0xa5,0x46,0x96,0xe7,0xb0,0x96,0x20,0x65,0x94, + 0xa,0x26,0x16,0xc1,0x79,0x74,0x68,0x35,0x24,0x50,0x41,0xec,0x3d,0xab,0x79,0xe2, + 0xc8,0xa,0x3,0xa5,0x4a,0x58,0x67,0x1,0xcc,0x7c,0x87,0xf7,0x1e,0xc6,0x10,0xb4, + 0x71,0xb3,0xf0,0x6b,0xd,0x9c,0x9b,0xad,0xa5,0x31,0xc8,0xf2,0x2,0xe3,0xc9,0x14, + 0x59,0x61,0x51,0x9,0x63,0x48,0xc9,0x43,0xc9,0x99,0x38,0xb4,0x84,0x10,0xbc,0x21, + 0x50,0xa1,0xb5,0x41,0x59,0x5a,0xe4,0x81,0x83,0xb3,0x33,0x93,0x21,0x9a,0x69,0x89, + 0xb5,0x1e,0xc6,0x58,0x18,0x6b,0x60,0x9d,0x81,0x31,0x1a,0xa5,0xd6,0xc8,0x8b,0x12, + 0x93,0x69,0x8e,0xe1,0x68,0x8a,0xa2,0x70,0x8,0x65,0x80,0x28,0x52,0x5e,0x9,0x45, + 0x87,0x97,0x10,0x67,0x26,0x1e,0xd4,0x33,0xd6,0x9c,0xd0,0xc6,0x6,0xa5,0xb6,0x30, + 0xc6,0x82,0x3c,0x81,0x3e,0x8a,0x26,0xde,0xc3,0x5a,0xb,0x67,0xd,0x8c,0x29,0x51, + 0xe8,0x12,0x59,0x96,0x63,0x3c,0x9e,0x62,0x34,0x9a,0x60,0x34,0x9a,0xc0,0x39,0x6, + 0x57,0xb5,0x0,0x17,0x90,0xea,0x10,0x87,0x5d,0xed,0xcc,0x87,0x0,0xfd,0xc2,0xba, + 0xb2,0x9b,0xe5,0xe3,0x13,0x2a,0x50,0xb0,0xc6,0xc0,0x13,0x81,0x88,0xe,0x1c,0xa8, + 0xb5,0x16,0xce,0x19,0xe4,0x65,0x89,0x69,0x36,0xd3,0x8a,0x5e,0x6f,0x88,0xfe,0xfe, + 0x10,0xd9,0x34,0x7,0x88,0x28,0x9f,0xca,0x32,0x8d,0x1b,0x5b,0x12,0x22,0x3f,0xb4, + 0x84,0xf0,0x92,0x56,0xe1,0x8a,0xff,0x30,0xe5,0xf4,0xe4,0x60,0xb0,0x7b,0x22,0xc, + 0x3,0xf8,0x3,0xed,0x70,0x7,0x84,0x18,0x63,0xa1,0xcd,0xcc,0x81,0xe,0xc7,0x53, + 0xec,0xf7,0xc7,0xd8,0xd9,0xdd,0x47,0xaf,0x37,0x84,0x2e,0x35,0x38,0xd9,0xac,0xc8, + 0xdc,0x9b,0x7a,0x5a,0xfe,0xcc,0xc6,0xc9,0xde,0xa1,0x2d,0xee,0xae,0x5c,0xf9,0xf9, + 0xe4,0xd1,0x2f,0x9d,0x99,0x8,0xa9,0x4e,0x95,0xda,0x3c,0x2,0x26,0x22,0x4f,0xc, + 0xd6,0x5a,0x68,0x5d,0x42,0x6b,0x8d,0xb2,0x28,0x91,0x15,0x39,0x46,0x93,0xc,0xfb, + 0x83,0x31,0xf6,0x7a,0x3,0x6c,0x6d,0xef,0x63,0x6b,0xab,0x87,0xe1,0x70,0xc,0x72, + 0x16,0xc,0xe5,0x36,0x73,0xa3,0x7f,0xe,0xcc,0xfa,0xbf,0x24,0xfd,0xb7,0xd6,0x2e, + 0xbd,0xbb,0x69,0xe,0x6d,0xb5,0x5b,0xdb,0xdf,0x2f,0x6d,0xb5,0x76,0x5f,0x5e,0x98, + 0xd3,0xa5,0x45,0xd3,0x7a,0x21,0xb5,0xb1,0xc8,0xb2,0xc,0xd3,0x69,0x8e,0xf1,0x34, + 0xc3,0x70,0x34,0x45,0x7f,0x7f,0x88,0x9d,0xdd,0x3e,0x36,0xb7,0xf6,0xb0,0xbd,0xdd, + 0x43,0x7f,0x30,0x82,0xd1,0x1a,0x92,0x3b,0x48,0xa1,0x57,0x19,0x95,0x3f,0x28,0x36, + 0x7e,0xf8,0xea,0x3f,0xbe,0xba,0x99,0x1d,0xea,0x6a,0xf7,0xe5,0x6b,0xd7,0xca,0xa7, + 0x96,0xaf,0xbe,0xd5,0xe8,0xb8,0x1f,0x4f,0x72,0x5f,0xeb,0xf5,0xa7,0xf7,0x47,0x51, + 0xa,0xf,0xf,0x46,0x80,0x75,0xe,0x65,0xa9,0x31,0x99,0xe6,0x18,0x8d,0x26,0xe8, + 0xf7,0x47,0x98,0x4c,0x33,0x18,0x43,0x10,0xc,0x96,0x33,0xbf,0x15,0x48,0xbc,0x26, + 0xa2,0xe8,0xf2,0x4f,0x7e,0x82,0xf1,0x17,0xa1,0xfc,0xa7,0x8d,0x8d,0x2b,0x6f,0x23, + 0x8,0x7f,0x5a,0x5a,0xfd,0x70,0x6f,0xd8,0xbf,0x5f,0x85,0x2d,0x78,0x2f,0x1,0x22, + 0x78,0xe7,0xa0,0xb5,0x41,0xa1,0x35,0x8a,0xbc,0x44,0x59,0x96,0xb0,0x8e,0x20,0x64, + 0x0,0x21,0x58,0x26,0xa4,0x7f,0x4d,0x49,0xfb,0xa3,0xaa,0x30,0x1f,0x7c,0x61,0x3a, + 0x66,0x6b,0x6b,0x6b,0xa6,0x7d,0x5f,0xa3,0x94,0x4c,0x6b,0x29,0x80,0x30,0x6c,0x21, + 0x9f,0x32,0xec,0xef,0x8f,0x30,0x1c,0xe,0x60,0x8c,0x85,0xf5,0xe,0x44,0x4,0x25, + 0x3,0xc4,0x95,0x10,0x71,0xc2,0x1,0xe4,0x9a,0xf9,0xc9,0xda,0xb4,0xbf,0x7e,0xf5, + 0xc7,0x97,0x2e,0x95,0x5f,0x88,0x8e,0xd9,0xd9,0xb3,0x67,0x17,0x4e,0x9d,0x6f,0x9f, + 0x8f,0xea,0xf2,0x62,0x54,0x15,0x8f,0x77,0x16,0x17,0xba,0x67,0x4e,0x9e,0x45,0x23, + 0xed,0x60,0x32,0x29,0x30,0x18,0x8d,0xe0,0xbd,0x7,0xe3,0xc,0x4a,0x5,0xa8,0xd7, + 0xea,0x68,0xb6,0x52,0x54,0x6a,0x25,0x3c,0xdb,0x2e,0x1d,0xed,0x5d,0xf5,0x3e,0xdb, + 0x5a,0x6c,0xb6,0x7d,0xb7,0xfa,0x20,0x6d,0xed,0xaf,0x1d,0xaa,0xb0,0xcb,0x2e,0x3e, + 0x7a,0xb1,0x7b,0xee,0x37,0xcf,0xdd,0xf7,0xc0,0x83,0xbf,0xb1,0xd4,0x59,0x5e,0x68, + 0x4e,0x8b,0xc9,0xd2,0xda,0xce,0xda,0x99,0x6b,0xeb,0xab,0x8f,0xec,0xf6,0x77,0x4e, + 0x10,0x9f,0xa2,0x7b,0x2c,0xc1,0x42,0xed,0x1c,0xda,0xad,0x26,0x96,0x97,0x17,0x50, + 0x6a,0x3,0xce,0x18,0x82,0x20,0x44,0x35,0xa9,0x81,0x78,0x86,0xcd,0xfe,0x2f,0x50, + 0xec,0xc,0x22,0x29,0xb2,0xf3,0xed,0xa5,0x5,0x56,0x9,0x93,0x6d,0xc6,0x54,0xef, + 0xc4,0x57,0xbf,0xb5,0xb7,0xbf,0x9d,0xef,0xc,0xae,0x8c,0xd6,0xb6,0xdf,0x5d,0x7f, + 0x6f,0x17,0xbb,0x93,0xcf,0x2b,0x21,0xea,0x99,0x27,0x9e,0x39,0xd5,0x58,0xaa,0xfe, + 0x76,0x6d,0x21,0x7e,0x22,0x4a,0xd5,0xc3,0x61,0x45,0xad,0x44,0xf5,0x56,0x35,0xa8, + 0xc9,0xc8,0xb2,0x2c,0xde,0xea,0x6f,0x86,0x5b,0xbb,0xeb,0xe8,0xd,0xd6,0x71,0x72, + 0xe5,0x7e,0x3c,0xfc,0xf0,0x32,0x96,0x8f,0x37,0x60,0x8c,0x7,0x67,0x2,0x52,0x4a, + 0x30,0xc6,0xb1,0xb3,0x7f,0x15,0x3b,0xc3,0x1c,0xc6,0x8d,0xc3,0x30,0x55,0xf,0x37, + 0x3a,0xd5,0xd3,0x81,0x8a,0xad,0x2d,0xbd,0xf5,0xe4,0xa6,0x51,0x22,0xdf,0xaf,0x2e, + 0x45,0xaf,0x72,0x74,0xff,0x4d,0xbe,0x2b,0x7f,0xbe,0x89,0xbb,0x13,0x79,0xfe,0xdf, + 0x26,0x73,0x1c,0x4f,0xc6,0xf,0xfe,0xd6,0xc9,0x47,0x1b,0xc7,0xd2,0x6f,0xb7,0x97, + 0x1b,0xdf,0xea,0x9e,0xe8,0x5c,0x5c,0xe8,0x2e,0x7c,0x79,0x69,0x79,0x71,0xa9,0xde, + 0xae,0xd5,0xaa,0xf5,0xb4,0x62,0xac,0x56,0x1f,0x7e,0xb8,0xc1,0x37,0xb7,0x36,0x50, + 0x94,0x19,0x8,0xe,0x9e,0xc,0xb8,0x24,0x8,0x49,0xe0,0xd2,0xc2,0xba,0x11,0xfa, + 0xe3,0x75,0xac,0x6d,0xbe,0x85,0xf7,0xd6,0xde,0xc4,0x38,0xeb,0xb1,0x5a,0xb3,0xa6, + 0x3a,0xc7,0x16,0xe3,0x4a,0x9a,0x24,0x32,0x14,0x55,0x21,0x79,0x9b,0xbc,0x3f,0xce, + 0x38,0x5a,0x90,0xa8,0x89,0x54,0xf2,0xd4,0xa4,0x59,0xbf,0xe8,0xf,0x3f,0x37,0x1a, + 0xd2,0x7c,0xc0,0x76,0xa3,0x4a,0xf4,0xbb,0x51,0x12,0x7e,0xaf,0xb6,0x98,0x9c,0xa9, + 0x1e,0x4b,0xe3,0xca,0x42,0xc4,0xbd,0xb4,0x28,0x8d,0x3,0x18,0x43,0x9a,0xa6,0x58, + 0xec,0x2c,0x61,0xe3,0xc3,0x75,0xbc,0xf3,0xde,0x1b,0xd8,0xe9,0xed,0xe0,0x58,0xe7, + 0x14,0xda,0xcd,0x65,0x44,0x41,0x5,0xc4,0x8,0x79,0x3e,0x46,0xaf,0xbf,0x89,0x9d, + 0xde,0x7,0x18,0x8c,0x7b,0x88,0xe2,0x10,0xa1,0x8a,0x0,0xe2,0x20,0xf2,0x20,0x46, + 0x90,0x15,0x81,0x74,0xb1,0x12,0x72,0xc9,0x2e,0x10,0xd1,0x22,0x2c,0x16,0x15,0x8b, + 0xfc,0x63,0xa7,0x7f,0x67,0xf3,0xd2,0xa5,0xbf,0x35,0x9f,0x39,0x21,0x5f,0x3b,0x79, + 0x32,0xf2,0xb,0xf1,0xa9,0xa8,0x12,0x3c,0x96,0xd4,0xe3,0x47,0x5a,0xdd,0x86,0x88, + 0x9b,0x1,0x4a,0xe4,0xd8,0x9f,0x18,0x80,0x0,0x46,0xc,0xda,0x95,0x68,0x77,0xda, + 0xe8,0xae,0x2c,0xe3,0xda,0xb5,0xab,0xd8,0xdc,0xfb,0x0,0xfd,0x61,0x1f,0xd5,0xe4, + 0x7d,0x28,0x19,0x0,0xc,0xd0,0x3a,0xc7,0x34,0x1f,0xc1,0xba,0x2,0x61,0x1c,0xa2, + 0xde,0x6c,0x20,0x49,0xab,0xe0,0x9c,0xc3,0x7b,0xf,0xa2,0x99,0xf3,0xd,0x2a,0x1, + 0x38,0xe3,0x92,0x7b,0xb9,0xc2,0x9c,0x7c,0x3a,0x52,0xf4,0xd6,0xf2,0xf2,0xf4,0xb5, + 0x4b,0x97,0xb0,0xf9,0x59,0x9b,0xc,0x6f,0x2d,0x9f,0x5e,0xae,0x76,0xaa,0x5f,0x4d, + 0x1b,0xd1,0xd7,0x17,0x8e,0xb7,0x96,0x5b,0x2b,0x75,0xc8,0x88,0xa3,0x28,0xb,0x64, + 0x79,0x86,0xbc,0xc8,0x30,0xc9,0x26,0xc8,0x74,0x6,0x2e,0x18,0x54,0x18,0x40,0xc9, + 0x0,0x9c,0x73,0x70,0xe,0x78,0x68,0x58,0x5f,0xc0,0xba,0x2,0x4,0xb,0x19,0x8, + 0x54,0x6b,0x35,0x2c,0x74,0x3a,0x68,0x77,0x3a,0x48,0xab,0x55,0x8,0x29,0x41,0x44, + 0xe0,0xe0,0x50,0x32,0x44,0x12,0x27,0x88,0x82,0x18,0xae,0xf4,0xe8,0xef,0xe,0xe3, + 0x51,0x7f,0x38,0x5d,0x7d,0x77,0x35,0xcb,0x32,0xeb,0x9c,0xd3,0xa,0x80,0x3,0x60, + 0xee,0xb9,0x86,0x74,0xbb,0xdd,0x48,0x29,0x75,0x46,0x85,0xfc,0x7c,0xa5,0x11,0x2f, + 0xa6,0xad,0x18,0x32,0x10,0xf3,0x64,0xcb,0xc2,0x59,0x77,0x50,0xd5,0x3a,0xef,0x21, + 0x95,0x44,0xab,0xdd,0x86,0x94,0xa,0xad,0x85,0x16,0x8a,0xa2,0x80,0xb5,0x16,0xde, + 0x3b,0xc0,0xcf,0x1a,0xee,0x8c,0x73,0x28,0xa5,0x10,0x86,0x11,0x54,0x10,0x40,0x88, + 0x19,0x19,0xe4,0x81,0x30,0x8,0x51,0x4d,0xeb,0x68,0x37,0x17,0x40,0x96,0x30,0x5c, + 0x7f,0x1b,0x9b,0x1f,0x6c,0xaa,0xbd,0xcd,0xde,0x57,0xa6,0x93,0x69,0x4d,0xeb,0x72, + 0x73,0xde,0x5e,0xfc,0x1,0x80,0xd7,0xee,0x39,0x21,0xc1,0x66,0x10,0xd8,0x26,0x9d, + 0x1,0xe3,0xe7,0xd2,0x46,0x54,0x4b,0x1b,0x31,0x84,0x60,0x28,0xf2,0x12,0x59,0x56, + 0x0,0x20,0x28,0xa5,0xc0,0x39,0x7,0x3,0x83,0x27,0xf,0xa5,0x14,0x9a,0xad,0x26, + 0xea,0x8d,0xfa,0xbc,0xda,0x9d,0xcb,0x47,0xfd,0x54,0xba,0xde,0x27,0x71,0xd6,0xce, + 0xdf,0xcf,0xb4,0x43,0x70,0x85,0x8a,0x4a,0xd0,0xa9,0x77,0x0,0xc7,0x70,0xd9,0xfe, + 0xa,0xdb,0xeb,0xdb,0x18,0xf4,0x87,0x2b,0x0,0x56,0xe6,0xdb,0xfa,0x35,0x80,0xff, + 0xfe,0x4c,0x8,0x29,0x53,0xa5,0xac,0x77,0xcb,0x60,0x74,0x22,0x4a,0xa3,0x4a,0xd2, + 0xa8,0x40,0x28,0x86,0x49,0x7f,0x82,0xbd,0xbd,0x7d,0xa8,0xb9,0x46,0x84,0xa1,0x4, + 0xe0,0xe7,0x89,0x3c,0x81,0x33,0x6,0x26,0x4,0x38,0xe3,0xf0,0xcc,0xc3,0x33,0x82, + 0x63,0xe,0xcc,0x7b,0xc0,0xd3,0xc1,0x28,0x82,0x80,0x83,0xde,0x9,0x18,0x66,0x8d, + 0x25,0x4d,0xe0,0x5e,0x42,0x4a,0x9,0xc9,0x25,0xbc,0xf3,0x37,0x6f,0xab,0x72,0xa7, + 0xb2,0xee,0x4f,0x7d,0x91,0xd6,0x52,0xb5,0x1e,0xc4,0x72,0x49,0x6,0xa2,0x13,0xa7, + 0xa1,0x8,0x2b,0x1,0xbc,0x77,0xc8,0xa6,0x19,0x76,0x77,0x77,0x11,0xc7,0x31,0xea, + 0x8d,0x3a,0x18,0x8b,0xe6,0x5c,0xf8,0xf9,0xb8,0xe1,0x23,0xcd,0xa0,0x83,0xd5,0x1d, + 0xf4,0x47,0xe8,0x63,0x1a,0x43,0x74,0xbd,0x63,0xe8,0x9d,0x87,0x29,0xd,0xac,0x36, + 0x90,0x91,0x84,0x10,0x2,0x52,0x7d,0x62,0xdb,0x63,0x0,0xfa,0x9e,0x13,0xf2,0x18, + 0x1e,0x53,0xa2,0x1d,0x76,0xe3,0x54,0x2c,0xc5,0x69,0x98,0x4,0x71,0x0,0xce,0x19, + 0x9c,0xc3,0xac,0x7a,0x1d,0x8d,0xf,0x3e,0x69,0xc6,0x30,0xf7,0x25,0x37,0xcf,0x60, + 0xae,0xb,0xf9,0xeb,0x2,0x2,0x38,0xe7,0x50,0x8c,0x83,0xe6,0xd3,0x22,0xce,0x39, + 0x14,0x49,0x70,0x36,0xfb,0x5,0x63,0xec,0x76,0x7,0x38,0xe6,0xb3,0xbf,0x7b,0x4c, + 0xc8,0x1e,0xf6,0x92,0xe3,0xd1,0xf1,0x6e,0xa5,0x5e,0x69,0x26,0x8d,0xa,0x97,0x81, + 0x98,0x77,0xd1,0x2d,0x8a,0xa2,0x40,0x36,0xcd,0xa0,0x82,0x0,0x44,0x34,0xdb,0x3c, + 0x66,0xa4,0x7c,0xec,0x45,0x1f,0x89,0x9f,0xaf,0xf3,0x87,0x67,0x1c,0x81,0xc,0x11, + 0x86,0x11,0xa2,0x28,0x9e,0x65,0xb0,0x9c,0x81,0x1b,0x81,0x8,0x31,0xaa,0x69,0x15, + 0x2a,0xc,0x10,0x4,0xea,0xe0,0xda,0x37,0xc0,0x1,0x98,0xde,0x6b,0x42,0x38,0xd5, + 0xa9,0xc9,0x19,0x16,0xe3,0x24,0x48,0xe2,0x34,0x84,0x90,0x2,0xd6,0xce,0x7a,0x1b, + 0x59,0x5e,0x20,0xcf,0xb,0xc4,0x15,0x3d,0x1f,0x3e,0xcd,0x34,0x82,0x8,0x37,0x90, + 0x70,0x7b,0x51,0x32,0x40,0x35,0xa9,0xa1,0x96,0xd4,0x21,0x65,0x30,0xf,0x3f,0x73, + 0xbf,0x52,0x32,0xe4,0xd3,0x2,0x65,0xa1,0x91,0x67,0x39,0xbc,0xa7,0x5b,0xa5,0xf, + 0xe9,0xbd,0x26,0x84,0x41,0xa1,0x45,0x44,0x8b,0x2a,0x96,0x49,0x94,0x84,0x10,0x92, + 0xc3,0x5a,0x8b,0xb2,0x28,0xa0,0xcb,0x72,0xd6,0x27,0xd5,0x1a,0x79,0x56,0x20,0x49, + 0xcc,0xd,0x1b,0xa7,0xf9,0x30,0xf7,0xfa,0x60,0xfb,0xfa,0x8c,0x7b,0xf6,0x52,0x52, + 0xa1,0x5e,0x6f,0x22,0xa0,0x10,0xeb,0x57,0x36,0xb0,0xfe,0xc1,0x6,0x40,0x80,0x33, + 0x1e,0xde,0x78,0xc4,0x71,0x5,0x60,0x84,0xd5,0x77,0x56,0x51,0x16,0x9f,0xe8,0xa, + 0x34,0x1,0xfc,0x1e,0x80,0xc5,0x5b,0xec,0xdb,0x3,0xf8,0x5,0x80,0x57,0xee,0x34, + 0x21,0x2,0x1c,0xd,0x80,0x16,0x95,0x92,0x49,0x58,0x51,0x10,0x92,0xc3,0x59,0x7, + 0x63,0xc,0x9c,0x9d,0x9d,0x80,0xd2,0xda,0x60,0x32,0x9d,0x22,0x49,0x53,0x8,0x21, + 0x66,0x1f,0xf3,0x8d,0x7c,0xdc,0x46,0x43,0x84,0x14,0x48,0x2b,0x9,0x8a,0x81,0xc6, + 0x5b,0x97,0x2e,0xe3,0xa7,0x3f,0x7a,0xe5,0xba,0xc9,0x79,0x2,0xe7,0x1c,0x0,0x41, + 0x97,0x1a,0xc5,0x27,0x9,0x69,0x3,0xf8,0x1e,0x80,0x3f,0xb8,0xc5,0xbe,0xd,0x80, + 0xbf,0xbb,0x2b,0x84,0x38,0x72,0xd,0x4f,0x7e,0x49,0x28,0x5e,0xd,0x63,0x5,0x2e, + 0xf9,0x7c,0x46,0xeb,0xe,0x1e,0xcc,0x5a,0x8b,0x22,0xcf,0xa1,0xb5,0x46,0x14,0x45, + 0x60,0x8c,0x1d,0xf8,0x8a,0xdb,0x11,0x82,0xb9,0xcf,0x91,0x4a,0x82,0x7c,0x89,0x41, + 0xaf,0x8f,0xc1,0xfe,0xe0,0xd3,0x6a,0x7a,0xe3,0x7f,0xf9,0xfb,0xb1,0xff,0xb3,0x5f, + 0xf8,0x34,0x3e,0xc4,0x33,0xd6,0x24,0x8e,0x25,0x15,0xa9,0x4a,0x9c,0x46,0x50,0x81, + 0x0,0xe3,0xc,0x8c,0x31,0x70,0xc1,0xc0,0x38,0x9b,0x25,0x55,0xd6,0xcd,0x32,0xd1, + 0x3,0x27,0x7a,0x3,0x11,0x9f,0x70,0xb0,0x98,0x4f,0xf4,0xe6,0xc3,0x2b,0xef,0xc0, + 0xc5,0x1d,0x3f,0x94,0x60,0xef,0xa,0x21,0x2a,0x90,0xd,0x2e,0xf8,0x52,0x94,0x4, + 0x61,0x9c,0x46,0x90,0xa1,0x2,0x17,0x1c,0x9c,0xb3,0xd9,0x2a,0x18,0xc0,0xe7,0x7e, + 0x81,0xfc,0x4d,0x51,0xe5,0xf6,0xe2,0x89,0xe6,0x93,0xff,0x12,0x45,0x59,0xc0,0x98, + 0x3b,0x3e,0x71,0x90,0x77,0xfc,0x1f,0x8f,0xd7,0x8e,0x2b,0x15,0xaa,0x5,0x4f,0x7e, + 0xd9,0x94,0x96,0x8f,0xf6,0x27,0x60,0x82,0x23,0x1b,0x67,0x18,0x8f,0x72,0xd8,0xdc, + 0x43,0x22,0x80,0x12,0x1,0x4,0x9f,0x35,0x7d,0x18,0xe7,0xb3,0xb0,0xca,0xd8,0x81, + 0x56,0xdc,0xe8,0x54,0x67,0x32,0x23,0x45,0x1b,0x8d,0xc1,0x78,0x80,0xac,0x28,0x10, + 0x37,0x22,0x2c,0x74,0xdb,0x90,0x5c,0x82,0xcf,0x18,0x6,0x63,0x1c,0x9e,0x3c,0xb2, + 0xe9,0x14,0xe3,0xc9,0xe4,0xe6,0x6c,0x55,0x3,0xd8,0x9d,0x27,0x68,0xb7,0xf2,0x21, + 0xef,0xdf,0x71,0x42,0x58,0x9d,0x45,0x4a,0x89,0x9a,0x2d,0x6d,0xb4,0xbd,0xb6,0x87, + 0x6c,0x52,0xcc,0xee,0x56,0x1a,0x94,0x5a,0x63,0x3c,0x28,0x21,0x75,0x84,0x28,0x88, + 0xc0,0x9d,0x4,0x3c,0xc3,0xfc,0x49,0x66,0x44,0x1c,0x4,0x9b,0x5b,0x6b,0x49,0x51, + 0x16,0xd8,0xdd,0xdb,0x83,0xd7,0x1e,0x4b,0x67,0x16,0x51,0xef,0xd4,0x50,0x8b,0xea, + 0x88,0x45,0x2,0xe6,0x67,0xbd,0xd7,0xa2,0x28,0x70,0xf9,0x97,0x97,0xf1,0xfa,0xa5, + 0xd7,0x91,0x65,0x1f,0x6b,0x98,0xed,0x2,0xf8,0x7b,0x0,0xaf,0xde,0x26,0x69,0x7b, + 0xf7,0x8e,0x13,0x12,0x4,0x81,0xe0,0x9c,0x6f,0x97,0x59,0xf9,0xcb,0xad,0xab,0x3b, + 0x6a,0x6b,0x6d,0x8f,0xe6,0xa9,0xb9,0xf3,0x1e,0xcc,0x59,0xdb,0x66,0x8c,0x2d,0xa, + 0x4b,0x18,0x5,0x53,0x48,0xae,0x60,0xb4,0x85,0x8a,0x14,0xc0,0x18,0x38,0x3,0xb8, + 0xe4,0x60,0xe0,0x60,0xde,0x81,0x39,0x6,0x70,0x6,0x46,0x1c,0x6c,0x9e,0xbe,0x8f, + 0xb3,0x31,0xe0,0x81,0xa4,0x15,0xa3,0xbb,0x7c,0xc,0x4b,0x69,0x17,0xcd,0xb8,0xd, + 0xc9,0x24,0xe2,0x28,0x86,0x36,0x7a,0x52,0x64,0x39,0xde,0x7c,0xe3,0xcd,0xf8,0xa6, + 0xd6,0xc5,0x8,0xc0,0xcb,0x0,0xfe,0xe9,0x9e,0xd9,0x16,0x11,0x95,0x80,0xfd,0x2f, + 0xab,0xf9,0x78,0x3c,0xc8,0xa5,0x9d,0xc7,0x59,0xe6,0x29,0x27,0xc6,0x24,0x11,0x3d, + 0x41,0x9e,0xbe,0x9b,0xd,0xf3,0xea,0x68,0x7f,0x82,0x41,0x6f,0x8c,0x66,0xb7,0x86, + 0xb4,0x91,0xa0,0x52,0x8d,0x11,0x55,0x2,0x88,0x50,0x2,0x1c,0x9f,0x48,0xe5,0x69, + 0x7e,0x90,0xc6,0x94,0x1a,0xba,0x30,0xb0,0x85,0x83,0x96,0xe,0x22,0xd,0xc1,0x1a, + 0x12,0x91,0xa,0x91,0xc4,0xe9,0xd6,0x52,0x67,0xf1,0xd7,0x41,0x10,0x26,0xe4,0xe9, + 0xdc,0xbc,0xa0,0xbb,0x51,0xb,0xec,0x3d,0x75,0x36,0xd3,0xe9,0x74,0x4a,0x54,0x79, + 0xdd,0x7b,0xff,0x8e,0x73,0x4e,0x9a,0xb1,0x71,0x0,0xe0,0x8d,0xcf,0x1d,0x39,0x91, + 0x34,0x93,0x6d,0xf,0x9f,0x90,0xa7,0xfb,0xc1,0x90,0x8e,0x47,0x93,0x64,0x32,0x98, + 0x44,0x95,0x7a,0x1c,0x56,0xaa,0xb1,0x8a,0x93,0x10,0x32,0x54,0x60,0xe2,0xba,0x29, + 0xcd,0x8e,0x54,0x59,0x78,0x37,0x27,0xc4,0x18,0x94,0xd3,0x2,0xf9,0xb8,0x84,0xa2, + 0xa0,0xe8,0xd7,0x46,0xf9,0x5e,0x73,0x3f,0xaf,0x56,0xd3,0x49,0x14,0xc5,0x3f,0x6b, + 0x36,0x9a,0x97,0x7b,0x7b,0xbd,0xb3,0xc6,0x98,0x93,0x37,0x11,0xc2,0x6f,0xfa,0xf9, + 0xee,0x13,0xb2,0xbd,0xbd,0x5d,0x0,0x28,0x70,0x90,0x54,0x1f,0x14,0x53,0x1e,0x0, + 0xb,0xc2,0xe0,0x3f,0xa1,0xe0,0x3d,0xe1,0x1c,0xc1,0xad,0xf8,0xa9,0xef,0x3a,0x63, + 0x5a,0x83,0xbd,0x51,0x9d,0xb,0xde,0x62,0x1c,0x1d,0xce,0x78,0x88,0x79,0x44,0x12, + 0x72,0xd6,0x22,0xb4,0xa5,0x85,0xb5,0x1e,0xc0,0xec,0xbc,0x99,0x35,0x16,0xe4,0x68, + 0x33,0x50,0xe1,0x46,0x56,0x2d,0xf6,0x46,0xfd,0xd1,0x6e,0xa3,0xde,0x58,0x5f,0x5e, + 0x59,0x7e,0xf5,0xcc,0x89,0x33,0x1b,0xab,0xab,0xab,0xdc,0x5a,0x6b,0x6f,0x11,0x2d, + 0xd9,0x3d,0x25,0x64,0x5e,0x40,0xdd,0xd6,0xa2,0xb6,0x6,0x5b,0x6b,0x69,0x9a,0x4e, + 0x93,0x24,0x79,0x1b,0xc4,0x96,0xac,0xb6,0x9d,0x72,0x52,0xd6,0xbd,0xf5,0x55,0x4b, + 0xbe,0x46,0x8e,0x5a,0xc,0x54,0x1,0x0,0x11,0x48,0x2e,0x3,0x21,0x89,0x88,0x74, + 0xae,0xad,0x33,0xf3,0x72,0x17,0x80,0x87,0xb7,0xc,0x6c,0x57,0x6,0x72,0x3b,0x1f, + 0xe7,0xfd,0x5e,0xaf,0xd7,0x8f,0xa2,0x68,0xcb,0x91,0xbb,0x52,0xa9,0x54,0xb2,0xd5, + 0xd5,0xd5,0xaf,0x39,0xe7,0x6a,0x37,0xdd,0xbf,0xe,0x20,0xb8,0x13,0x84,0xdc,0x8d, + 0x6f,0x43,0xa8,0x6e,0xb7,0xab,0x8a,0xa2,0x50,0xfd,0xbe,0x95,0xc0,0x58,0xcc,0x1d, + 0xa0,0xbc,0x21,0xef,0x51,0x69,0x90,0x6,0x1a,0xda,0x6b,0xad,0xcb,0xeb,0x9d,0xa4, + 0x8f,0xf9,0x3,0x3d,0x5f,0xed,0x3c,0x74,0x7e,0x94,0xaf,0xff,0x5,0x80,0xbf,0xba, + 0x29,0xfb,0xfc,0x15,0x80,0xbf,0x6,0xf0,0xf,0x9f,0x47,0x42,0xee,0x36,0x2e,0x2, + 0xf8,0x26,0x80,0xea,0x4d,0x61,0xf7,0x87,0x0,0xde,0xc0,0x11,0x8e,0x70,0x84,0x23, + 0x1c,0xe1,0x8,0x47,0x38,0xc2,0x11,0x8e,0xf0,0x85,0xc4,0xff,0x0,0xca,0xa1,0xfc, + 0x59,0x5,0xd,0xfc,0x18,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60, + 0x82, + // /home/maemo/tietoopcom/resources/contactfemale.png + 0x0,0x0,0x10,0xb8, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x44,0x0,0x0,0x0,0x44,0x8,0x6,0x0,0x0,0x0,0x38,0x13,0x93,0xb2, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,0x1, + 0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xb, + 0xf,0xc,0x37,0x76,0x10,0xb7,0xa8,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x43, + 0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x0,0x43,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x77, + 0x69,0x74,0x68,0x20,0x47,0x49,0x4d,0x50,0x57,0x81,0xe,0x17,0x0,0x0,0x10,0x13, + 0x49,0x44,0x41,0x54,0x78,0xda,0xed,0x5b,0x5b,0x6f,0x5c,0xd7,0x75,0xfe,0xf6,0xed, + 0xdc,0xe6,0xcc,0x85,0x33,0x24,0x87,0x94,0x44,0x31,0x92,0xa3,0xc8,0x96,0xed,0x26, + 0xb2,0x9c,0x46,0xae,0xe3,0xc6,0x71,0xdd,0xa4,0x4d,0x63,0x24,0x6e,0x9a,0xa4,0x5, + 0x82,0x16,0x48,0x1e,0x8a,0x3e,0xf8,0xa1,0x7f,0x26,0x40,0xff,0x40,0x1f,0x1a,0xa0, + 0xaf,0xcd,0x43,0x81,0x16,0x68,0xd1,0xa2,0x48,0xed,0xd8,0xb9,0x21,0x86,0x6f,0x51, + 0x24,0x4b,0x22,0x87,0xc3,0xb9,0x9d,0xdb,0xbe,0xae,0x3e,0xcc,0xe8,0xe2,0xd8,0x41, + 0xd1,0x44,0x92,0x69,0x94,0x1f,0xb0,0x40,0xcc,0xc,0x67,0x13,0xe7,0x3b,0xeb,0x5b, + 0xeb,0xdb,0x6b,0x1f,0x2,0xc7,0x38,0xc6,0x31,0x8e,0x71,0x8c,0x63,0x1c,0xe3,0x18, + 0xc7,0x38,0xc6,0x51,0x4,0xbb,0xdf,0x7f,0xe0,0xdb,0xdf,0xfe,0x76,0x56,0x14,0xc5, + 0x59,0xa5,0xd4,0x67,0x18,0x63,0x7f,0x28,0x84,0xfc,0x4c,0x14,0xa9,0xd,0x21,0x84, + 0x24,0x22,0x78,0xef,0x39,0x11,0x20,0x84,0x20,0xc6,0xc0,0x42,0x8,0xd6,0x18,0x33, + 0xf2,0xde,0xff,0x27,0x11,0x7d,0x5f,0x4a,0xf9,0xef,0xad,0x56,0xeb,0xea,0x77,0xbf, + 0xfb,0x5d,0xf3,0x20,0x8,0x11,0xf7,0x73,0xf1,0xef,0x7c,0xe7,0x3b,0x3,0x6b,0xed, + 0x33,0xde,0xfb,0x6f,0x0,0xf8,0x8a,0x52,0xea,0xc9,0x4e,0xa7,0x73,0x62,0x63,0x63, + 0x5d,0xf6,0xfb,0x7d,0x4a,0x92,0x2c,0x56,0x2a,0x12,0x69,0x9a,0x89,0xb5,0xb5,0x2e, + 0x5b,0x5b,0x5b,0xa3,0x34,0x4d,0x55,0x8,0x61,0xcd,0x5a,0xbb,0xe5,0xbd,0x3f,0xe9, + 0x9c,0xeb,0x18,0x63,0xca,0x8b,0x17,0x2f,0x4e,0x5f,0x7b,0xed,0x35,0xfb,0x91,0x24, + 0xe4,0xc5,0x17,0x5f,0x64,0x4f,0x3f,0xfd,0x74,0xf7,0xf0,0xf0,0xf0,0xb3,0x44,0xf4, + 0xe7,0x71,0x1c,0x7f,0x39,0xcf,0xf3,0x87,0xdb,0xed,0x76,0xd6,0x6e,0xb7,0xa9,0xd7, + 0xeb,0xbb,0x28,0x4e,0xa4,0xd6,0x15,0x33,0x46,0x83,0x28,0x40,0x45,0x31,0x6b,0xe5, + 0x1d,0xae,0x22,0xe5,0x18,0x88,0x1,0xac,0x5,0xe0,0x14,0x11,0x6d,0x19,0x63,0x84, + 0x31,0x66,0xf2,0xe4,0x93,0x4f,0x4e,0x7f,0xf4,0xa3,0x1f,0x99,0x8f,0x1c,0x21,0x17, + 0x2f,0x5e,0xec,0x94,0x65,0xf9,0x8c,0xf7,0xfe,0x6b,0x52,0xca,0x2f,0xf4,0x7a,0xbd, + 0xed,0xc1,0x60,0x80,0x76,0xbb,0x4d,0x71,0x1c,0x3,0x60,0x72,0x34,0x3a,0x60,0xb3, + 0xd9,0x1,0x88,0xe6,0x0,0xd5,0xa8,0x2a,0xd,0x6b,0xc1,0x94,0x92,0x42,0x29,0x9, + 0x25,0x15,0xe3,0x9c,0x73,0xe7,0x5c,0x4f,0x6b,0x3d,0x24,0x22,0x46,0x44,0x93,0xa7, + 0x9e,0x7a,0xea,0xe0,0x95,0x57,0x5e,0x71,0xf7,0x8b,0x10,0x79,0x3f,0x16,0x2d,0xcb, + 0x72,0x97,0x73,0xfe,0xc7,0x49,0x92,0x3c,0xd7,0x6e,0xb7,0x87,0x79,0x9e,0x53,0x92, + 0x24,0x94,0x24,0x9,0x33,0x46,0xb3,0xfd,0xbd,0x11,0xde,0xbd,0x71,0x80,0x48,0x14, + 0xb8,0xf4,0xc4,0x69,0x74,0x7a,0xdb,0xf8,0xe1,0xcb,0x3f,0xc0,0xf5,0xeb,0x35,0xca, + 0x72,0xd,0xeb,0x83,0x1e,0x4b,0x92,0x84,0x18,0x63,0x14,0x42,0x50,0xde,0xfb,0x87, + 0xca,0xb2,0xfc,0x23,0xad,0xf5,0x88,0x88,0xde,0x0,0xd0,0x7c,0x64,0x32,0xe4,0xab, + 0x5f,0xfd,0x6a,0x5e,0xd7,0xf5,0xe7,0x18,0x63,0xdf,0xec,0x76,0xbb,0xe7,0x7a,0xbd, + 0x1e,0xcf,0xb2,0xc,0x0,0xb8,0xd6,0x9a,0x4d,0xa6,0x53,0xec,0x1f,0x8c,0x51,0x97, + 0x73,0x5c,0x78,0x64,0x17,0x5f,0x7e,0xf1,0x25,0xb4,0x7b,0xe7,0xe0,0xed,0xc,0xa3, + 0xbd,0x37,0x31,0x99,0xd6,0x8,0x60,0x50,0x4a,0x31,0xce,0x18,0x63,0x8c,0x81,0x88, + 0xb8,0xd6,0xba,0xa7,0xb5,0x9e,0x96,0x65,0xf9,0xc3,0x67,0x9e,0x79,0xe6,0xe0,0xd5, + 0x57,0x5f,0xa5,0xfb,0x41,0x8,0xbf,0x97,0x8b,0xbd,0xf4,0xd2,0x4b,0xa2,0xae,0xeb, + 0x87,0x88,0xe8,0xa2,0xf7,0x7e,0x47,0x8,0xc1,0x95,0x52,0x10,0x42,0x30,0xad,0x35, + 0xf6,0xf6,0x46,0xb8,0x72,0xe5,0x3a,0x8a,0xc5,0x4,0xe7,0x1f,0xea,0xe0,0xb9,0xcf, + 0x3f,0xb,0xf0,0xc,0x32,0xce,0xf0,0xf1,0xb,0xcf,0xe3,0xc2,0x23,0xf,0x23,0x8b, + 0x4a,0xec,0xdd,0xdc,0xc3,0xb5,0x6b,0x37,0x31,0x9f,0x97,0x60,0x8c,0x21,0x49,0x12, + 0x8,0x21,0x62,0xe7,0xdc,0x19,0x0,0x67,0x9b,0xa6,0x69,0x7d,0x24,0x32,0x64,0x73, + 0x73,0x33,0xd5,0x5a,0x3f,0x2b,0x84,0xf8,0x62,0x1c,0xc7,0x1f,0xcb,0xf3,0x3c,0x4a, + 0xe2,0x98,0x59,0x6b,0x71,0x78,0x38,0xc5,0xde,0xfe,0x3e,0x82,0x5b,0xe0,0x93,0x8f, + 0xed,0xe0,0x4f,0xbf,0xf6,0x4d,0xc,0x4f,0x5f,0x86,0xb5,0x1e,0xce,0x5,0x4,0xc4, + 0xc8,0xbb,0x5b,0x90,0x6c,0x8a,0x72,0x7e,0x13,0xf3,0x59,0x9,0xe3,0x2,0x84,0x54, + 0x60,0x8c,0xa1,0x2c,0xb,0x14,0x45,0x51,0x87,0x10,0xae,0x37,0x4d,0x73,0xf5,0xf2, + 0xe5,0xcb,0x93,0x1f,0xff,0xf8,0xc7,0x74,0xa4,0x9,0xe9,0xf7,0xfb,0x6d,0x0,0x7f, + 0x92,0x24,0xc9,0xf3,0x9d,0x4e,0xa7,0xdf,0xe9,0x74,0x18,0x11,0xb1,0xf1,0xf8,0x10, + 0x37,0xf7,0xf7,0x0,0x5f,0xe2,0xa9,0x4f,0x5f,0xc0,0x5f,0xfe,0xd5,0x4b,0xe8,0x6d, + 0x3e,0x2,0xad,0x3d,0xac,0xb,0xb0,0x2e,0xc0,0x58,0x87,0x80,0x18,0xed,0xc1,0x79, + 0xf4,0x3a,0x12,0x8b,0xc9,0x15,0x1c,0x4e,0xa,0x38,0x2f,0x10,0x29,0x5,0x63,0x34, + 0xaa,0xba,0x86,0xb3,0x76,0x1e,0x42,0xf8,0xa5,0xd6,0xfa,0xca,0x5b,0x6f,0xbd,0x15, + 0x8e,0x74,0x51,0x35,0xc6,0x74,0x18,0x63,0xa7,0x18,0xf8,0x7a,0x9a,0xa6,0x9c,0x73, + 0xce,0xca,0xaa,0xc2,0xc1,0x78,0xc,0x11,0x4a,0x7c,0xe6,0xc9,0xb,0xf8,0xc6,0xb7, + 0xfe,0x16,0xaa,0xd5,0x87,0xd6,0xe,0xde,0x13,0x9c,0x23,0x78,0x1f,0x10,0x2,0x40, + 0x44,0x8,0x21,0x20,0xe9,0x7f,0x12,0xbb,0xe7,0x1b,0x18,0xfd,0x2f,0x98,0x16,0x13, + 0xcc,0x58,0x0,0x11,0x21,0x8a,0xa2,0x8e,0xd1,0xfa,0xbc,0x31,0x66,0xd7,0x39,0x27, + 0x1,0xd8,0x23,0x5b,0x43,0xce,0x9c,0x39,0xc3,0x89,0x68,0xcb,0x39,0x37,0x20,0x4, + 0x49,0x44,0xac,0xaa,0x6b,0xcc,0x66,0x73,0xc0,0xd7,0x78,0xf4,0x13,0x5b,0x78,0xe1, + 0xcf,0xfe,0x6,0x5c,0x75,0xd1,0x34,0xe,0xc6,0x6,0x58,0xeb,0x61,0xdd,0x52,0x32, + 0xce,0x7b,0x78,0xef,0x11,0x42,0x80,0x73,0xe,0x3e,0xfa,0x18,0xfa,0x9b,0x3b,0x48, + 0x64,0x81,0xc9,0x64,0xc,0x6d,0x2c,0xa2,0x28,0x52,0x0,0x76,0xb5,0xd6,0x27,0x67, + 0xb3,0x59,0x74,0xa4,0x8b,0xea,0xe6,0xe6,0x66,0x9b,0x88,0x76,0xac,0xb5,0x3d,0xef, + 0x1d,0x8c,0xb5,0x98,0x4c,0xb,0xcc,0x66,0x13,0xf4,0xdb,0xc0,0x33,0x9f,0xfb,0x22, + 0x54,0xb2,0x89,0xa6,0xb1,0x68,0x1a,0x87,0x46,0x3b,0x68,0xe3,0x60,0x8c,0x87,0xb5, + 0x6e,0x49,0x82,0x77,0x70,0xce,0xc2,0x58,0x8b,0xba,0xd1,0x98,0xb9,0x6d,0x8,0x99, + 0xc0,0x34,0x5,0xb4,0x71,0x90,0x52,0x81,0x88,0xba,0xce,0xb9,0xd,0x6b,0x6d,0xe7, + 0x48,0x13,0xc2,0x18,0xeb,0x79,0xef,0x4f,0x78,0xef,0x73,0x6b,0x1d,0xb7,0xc6,0x62, + 0xbe,0x28,0x51,0x17,0x73,0xc,0x7a,0x11,0x4e,0x9d,0xff,0x2,0xaa,0xda,0xa1,0xaa, + 0x1d,0xea,0xc6,0xdd,0x26,0xe5,0x56,0x96,0x78,0x77,0x87,0x8c,0x46,0x1b,0x94,0x55, + 0x8d,0xbd,0x9,0xe0,0x83,0x40,0xf0,0x76,0x59,0x63,0x96,0xd9,0x23,0xad,0xb5,0x6b, + 0x44,0xb4,0x71,0xf1,0xe2,0x45,0x7e,0x64,0x6b,0x48,0x5d,0xd7,0xb9,0xb5,0x76,0xd, + 0x40,0x6a,0xad,0x65,0xce,0x39,0x34,0x5a,0xc3,0x68,0xd,0xc5,0x9,0x75,0x3,0x58, + 0xbb,0x94,0x3c,0x11,0x10,0x28,0xc0,0x39,0xf,0xe7,0x1c,0xac,0x73,0xb0,0xce,0x40, + 0x1b,0x83,0xba,0xae,0x51,0x96,0x35,0xe6,0x8b,0xa,0x8b,0x45,0x81,0x54,0x18,0x38, + 0xef,0x0,0x6b,0x61,0xad,0x80,0x73,0x8e,0x39,0xe7,0x72,0xc6,0xd8,0x6,0x11,0x45, + 0xf7,0xda,0xa4,0xc9,0x7b,0x58,0x50,0x13,0xef,0x7d,0xe,0x20,0xf2,0xde,0xc3,0x3a, + 0x7,0x67,0x97,0x77,0x5c,0x37,0x6,0x8d,0xb6,0x30,0x46,0x83,0x31,0x6,0x10,0xe0, + 0x29,0xc0,0x7b,0x7f,0x97,0x4c,0x34,0xea,0xa6,0xc6,0xa2,0xac,0x31,0x9d,0x17,0x98, + 0xce,0x4a,0x98,0xa6,0x82,0xe1,0xd,0x8c,0xb1,0x80,0x72,0xb0,0xc6,0xc0,0x5a,0x4b, + 0xce,0xb9,0x8c,0x73,0x3e,0xd0,0x5a,0xb7,0xee,0x35,0x21,0xf7,0x2c,0xe5,0xb4,0xd6, + 0xca,0x39,0x97,0x10,0x51,0x44,0xab,0xc2,0x18,0x82,0x87,0xb5,0x1e,0x7,0xa3,0x31, + 0xc6,0x6f,0xff,0x33,0x9c,0x77,0x30,0xd6,0xc0,0x58,0x7d,0x27,0x4c,0x83,0xc6,0xd4, + 0x28,0xeb,0x1a,0xf3,0xa2,0xc2,0x78,0x32,0xc7,0xfe,0x68,0x82,0xe9,0x64,0x8e,0xed, + 0xe4,0x26,0x48,0x1f,0x42,0x9b,0x0,0x50,0x80,0xb5,0x16,0xd6,0x5a,0x66,0xad,0xcd, + 0x8c,0x31,0xbd,0xaa,0xaa,0xb2,0x23,0x2b,0x19,0x63,0xc,0xbf,0x45,0xb0,0xb1,0x16, + 0xce,0x1a,0x28,0x25,0xc0,0xa5,0xc2,0x8d,0x83,0x2,0xaf,0xff,0xf0,0xfb,0xb8,0xb0, + 0xfe,0x4,0x0,0x20,0x78,0xf,0x4f,0x1e,0xde,0x79,0x18,0x6b,0x50,0x6b,0x83,0xa2, + 0xa8,0x70,0x38,0x5d,0x60,0x74,0x30,0xc5,0xde,0xde,0x21,0x66,0xb3,0x2,0x6b,0xf1, + 0x18,0x8b,0xd2,0x80,0x89,0x1c,0x52,0x8,0x38,0xe7,0x60,0x8c,0x81,0x73,0x2e,0x2, + 0x90,0x33,0xc6,0xd4,0x91,0x25,0x24,0x84,0x60,0x57,0xe1,0xb5,0xd6,0x70,0xce,0x21, + 0x8d,0x63,0x98,0xb4,0x45,0xfb,0xb3,0x9a,0xfd,0xfc,0xf5,0x6b,0x38,0xf5,0x3b,0x6f, + 0x80,0x92,0x21,0x2,0x2d,0xdb,0xab,0x75,0xe,0x75,0xad,0xb1,0xa8,0x1a,0xcc,0xa6, + 0xb,0x8c,0xf,0x67,0xd8,0x1f,0x4d,0x70,0x30,0x9a,0x62,0x18,0xed,0xa1,0x9a,0x8d, + 0x71,0x73,0xa,0xb4,0xd7,0x32,0x28,0x25,0x50,0x95,0xd,0x9c,0x73,0xe4,0x9c,0x13, + 0x0,0x84,0x10,0x42,0x1c,0x65,0x42,0x1a,0x6b,0x6d,0x1,0xc0,0x68,0xad,0x61,0xad, + 0x45,0x9a,0xa6,0x88,0xa2,0x8,0x37,0x35,0x70,0xe5,0xca,0x35,0x7a,0xe7,0x7,0xff, + 0xc4,0xc4,0xd9,0x2f,0x81,0xad,0x8c,0x96,0xb6,0xe,0x55,0xd5,0x60,0xbe,0x28,0x31, + 0x9d,0xce,0x31,0x3e,0x9c,0x61,0x32,0x29,0x50,0xd7,0x1a,0x67,0xd8,0x4d,0xec,0x4f, + 0x27,0x98,0xeb,0x36,0x7a,0x52,0x80,0x31,0xc0,0xb9,0xdb,0x92,0xc1,0x6a,0x27,0x7c, + 0x74,0xb7,0xff,0xd6,0xda,0xb9,0xb5,0x76,0x9f,0x88,0xa,0x63,0xc,0x79,0xef,0x97, + 0x45,0x8a,0x73,0xc6,0x85,0xc0,0xc1,0x5c,0xb3,0x37,0x7e,0xfa,0xdf,0x88,0xdd,0x69, + 0x68,0x96,0x83,0x11,0xc1,0x5,0x8f,0xa6,0x31,0xa8,0xaa,0x1a,0xf3,0x79,0x81,0xf9, + 0xbc,0x84,0x36,0x16,0x5b,0x69,0x8d,0x50,0xec,0xf9,0x71,0xe9,0x85,0x88,0x4,0xc0, + 0x0,0xf2,0xcb,0xd6,0xec,0xbd,0x87,0x73,0xce,0x31,0xc6,0x6a,0xce,0xb9,0x3d,0xb2, + 0x84,0x34,0x4d,0x73,0xe0,0xbd,0x7f,0x9b,0x31,0x76,0xe0,0xbd,0x27,0xef,0xfd,0xb2, + 0xcd,0x52,0x40,0x96,0xc4,0x28,0x1a,0x85,0x37,0x7f,0x79,0x13,0xf,0x77,0xfe,0xb, + 0x7,0xea,0x53,0xa8,0x6b,0xb,0xeb,0xc,0x8c,0x73,0xb0,0xc6,0x2e,0xc3,0x7a,0x8, + 0xc1,0xd1,0x13,0x63,0x1c,0x1c,0xcc,0x44,0x1d,0x12,0x64,0x49,0xc,0x86,0x65,0x91, + 0x76,0x4b,0x32,0x10,0x9c,0x3f,0x24,0xc6,0xe,0x94,0x62,0xc5,0x91,0x35,0x66,0x65, + 0x59,0x96,0x5a,0xeb,0x37,0x88,0x68,0xcf,0x5a,0x8b,0xba,0xae,0x50,0x55,0x25,0x74, + 0xd3,0x20,0x4,0x47,0xb,0x43,0xfe,0xca,0x9c,0xa1,0x98,0x5c,0xc1,0xe9,0x7e,0x4, + 0xce,0x38,0x26,0xd3,0x39,0xe,0x46,0x87,0x18,0x8f,0x27,0x68,0x1a,0x8b,0x56,0x2b, + 0xc7,0xa7,0x76,0x18,0xa4,0xbd,0x81,0x37,0x27,0xf0,0x85,0x63,0xb5,0xe0,0x0,0x42, + 0x40,0xa3,0x35,0xea,0xba,0x86,0xb5,0x16,0x84,0xb0,0x9f,0x8,0x7f,0x2d,0x38,0x33, + 0x3f,0xd2,0x9b,0x3b,0x22,0xda,0x77,0x3e,0xfc,0xa4,0x6c,0x9a,0xf1,0xfe,0x78,0x32, + 0x2c,0xb5,0x1,0x8,0xa8,0xaa,0x8a,0x55,0x55,0xc1,0x79,0x2c,0x90,0xb8,0x1a,0x8f, + 0x9e,0xdd,0x0,0x32,0xc0,0x93,0xc3,0x6c,0x5e,0xc0,0x39,0x8f,0x76,0x2b,0xc7,0x70, + 0xb8,0x89,0xdd,0xec,0x17,0x78,0xe7,0x5a,0x85,0xa2,0x69,0xb8,0x13,0x41,0x95,0x55, + 0xa,0xce,0x39,0x9a,0x46,0x63,0x7c,0x38,0x45,0xd5,0xe8,0x29,0x82,0x7f,0xf7,0x4c, + 0x27,0x7d,0xf7,0xe5,0x77,0xe7,0xe6,0xc8,0x12,0x32,0xc4,0xb0,0xf5,0xc8,0x67,0x1f, + 0x7f,0x38,0x70,0xdd,0x9e,0x15,0xc5,0xcf,0x1a,0xe7,0xa7,0x9e,0xb1,0xdc,0x91,0xc9, + 0x9a,0x5a,0xb7,0x77,0x3a,0x5e,0x3e,0xb1,0x2e,0xf0,0xe8,0xd3,0xbf,0x8f,0xd3,0x8f, + 0x5f,0x42,0x3c,0x2c,0xb1,0xb1,0x3e,0x40,0x51,0x56,0x0,0x71,0xa4,0x69,0x8a,0x34, + 0x8b,0x50,0xd4,0x5d,0xf4,0xf6,0x5f,0xc5,0xd3,0xb3,0x39,0x7b,0x79,0xd4,0x88,0x9b, + 0x93,0x89,0x3f,0xd0,0xda,0x70,0xa0,0x20,0x16,0xe6,0x69,0x2b,0xbb,0x9a,0xc8,0xb6, + 0x89,0xf3,0x76,0x2,0xdc,0xf3,0x4,0xb9,0x27,0xf3,0x10,0x7e,0xe9,0xec,0xa5,0xce, + 0xce,0xe3,0x3b,0x4f,0x6e,0x9e,0xee,0xbf,0xb0,0x73,0xe6,0xc4,0x97,0x86,0x9b,0xf9, + 0x63,0x11,0x99,0xcd,0x88,0x6c,0xbb,0xcd,0x7d,0xba,0x4d,0xb5,0x78,0xf4,0x64,0x8c, + 0xab,0xbb,0x27,0x91,0xd,0x1f,0x42,0x9e,0xb7,0x91,0xb7,0x32,0xf4,0xfb,0x1d,0x6c, + 0x6e,0x76,0x71,0xf2,0xc4,0x6,0xd6,0xd7,0x5b,0x10,0xb2,0xc6,0xe8,0xf0,0xd,0xfc, + 0x74,0xfa,0x2e,0x4e,0xa8,0x5,0xce,0x90,0x67,0x75,0x6d,0xb8,0xad,0x2a,0x15,0x7, + 0x9d,0xd,0xfa,0x59,0xa7,0xbf,0xb9,0xb6,0xb6,0x36,0x18,0x28,0x2f,0xa3,0xc5,0x89, + 0xf4,0xe4,0xfe,0xf5,0xc9,0xb9,0xa,0xb8,0x12,0x8e,0xc,0x21,0x5b,0x5b,0x1f,0x5f, + 0x5f,0xdb,0xec,0xfc,0xc1,0xe0,0x44,0xe7,0x6b,0xc3,0xb3,0x83,0xcf,0xef,0x9e,0x3f, + 0x75,0xe1,0xa9,0xe7,0x2e,0x27,0x4f,0x6d,0xb7,0xf9,0xb9,0xc5,0x3e,0xff,0xdd,0xf3, + 0x3b,0x6c,0xe7,0x2b,0xcf,0xe3,0xa7,0xba,0xc2,0x8d,0xfd,0x3d,0xcc,0x8b,0x19,0x8a, + 0x6a,0x86,0xa2,0x9a,0xa0,0x6a,0xa6,0x28,0xea,0x11,0x16,0xd5,0x8,0x7,0x93,0x2b, + 0xf8,0xe5,0xf5,0x9f,0xe0,0xad,0xab,0xaf,0xe1,0xfa,0xde,0xdb,0xb8,0x29,0x38,0xe2, + 0x27,0x1e,0xc1,0xf3,0xbd,0x8,0x9f,0xa6,0x2,0x97,0x7a,0x92,0x7d,0x62,0x77,0xc0, + 0xd7,0x76,0x87,0xa9,0x6b,0x25,0x3,0x4f,0xe8,0x1a,0x6b,0x58,0x22,0x26,0x93,0xe9, + 0x62,0x3c,0x3e,0x1a,0x92,0xf9,0xfa,0xd7,0xc5,0xf6,0x9b,0xbf,0xf8,0x78,0xde,0xcd, + 0x5e,0x68,0xf5,0xb3,0x2f,0xf5,0xb6,0xf3,0x41,0x77,0x3b,0x43,0x1d,0x2a,0xe0,0xfc, + 0x39,0xc,0x2e,0x3c,0x2,0x30,0x86,0xc5,0xf5,0x6b,0xd8,0x3a,0x71,0x2,0xe3,0xe9, + 0x21,0x46,0xd3,0xeb,0x98,0x2e,0xc6,0x68,0xa5,0x1d,0x64,0x49,0x1b,0x42,0x48,0x0, + 0xc,0xda,0x54,0x28,0xaa,0x19,0xea,0x66,0x81,0x40,0x1e,0xbd,0xee,0x0,0x59,0xd6, + 0xc2,0xde,0xe5,0x5d,0xe0,0xf2,0x25,0xb8,0xe0,0x11,0x7c,0x40,0x70,0x1,0xf9,0xb4, + 0xe9,0x18,0x13,0x3e,0xdb,0x2c,0xb4,0x6a,0xb5,0xe4,0xe8,0xd2,0xa5,0x4b,0x6f,0xbf, + 0xfc,0xf2,0xcb,0xf6,0xc3,0xce,0x10,0xfe,0x58,0xbb,0xbd,0xb1,0xd1,0x6f,0xff,0x5e, + 0xde,0xcb,0x5e,0x18,0xee,0xe,0xce,0x6e,0x7d,0x6c,0x80,0xb8,0x1d,0xc1,0x5a,0x83, + 0xb2,0xae,0x50,0xd6,0x5,0xca,0xba,0x40,0x63,0x1b,0x4,0x4,0x10,0x23,0x18,0x6b, + 0x50,0x94,0xb,0x14,0xe5,0x1c,0xf3,0xc5,0x18,0xb3,0xf9,0x18,0xd3,0xc5,0x1,0x16, + 0xc5,0x4,0xda,0x55,0x88,0x12,0x89,0xfe,0xfa,0x0,0x9b,0x9b,0x43,0x74,0x3a,0x3d, + 0x48,0x29,0x11,0x42,0xc0,0x2d,0x13,0xc6,0x4,0x3,0x18,0x10,0x6c,0x90,0xba,0x32, + 0x2d,0x22,0xba,0x6a,0xb4,0x79,0x67,0x34,0xda,0x28,0x81,0x91,0xff,0xd0,0x32,0x64, + 0x7b,0x7b,0x3b,0x49,0x83,0x38,0x9b,0x66,0xd1,0xe3,0xdd,0xf5,0x6c,0x3d,0xef,0xb7, + 0xc0,0x25,0x87,0xd6,0x1a,0x56,0x5b,0x38,0x17,0x6e,0x8f,0x4,0x1,0xa0,0x95,0xa7, + 0x38,0x7d,0x7a,0x7,0x91,0x8a,0xd0,0x6e,0xef,0xa3,0x2c,0xa,0x68,0xad,0x11,0x3c, + 0x81,0x31,0x40,0x8,0x81,0x28,0x8a,0xd0,0x6a,0xe7,0xe8,0x76,0x7b,0xc8,0xdb,0xed, + 0x5b,0x3,0x21,0x84,0xd5,0x3a,0x21,0x10,0x88,0x1,0xc4,0x8,0x32,0x15,0x50,0xb9, + 0xcc,0x9d,0xb1,0xe7,0x75,0x1d,0x1e,0xdf,0xce,0xfd,0xec,0x46,0x81,0x83,0xf,0x8d, + 0x90,0x34,0xa4,0x39,0x87,0x3f,0xcf,0x25,0xbf,0x90,0xb4,0xe3,0x5e,0xd6,0x8e,0xc1, + 0x38,0x83,0xd6,0x1a,0x75,0xd5,0x60,0x75,0x80,0xd,0x10,0x81,0x96,0x3,0x24,0x64, + 0x59,0x86,0xe1,0xd6,0x10,0x79,0x3b,0x87,0xd6,0xd,0xac,0x75,0xf0,0x3e,0x0,0x44, + 0x60,0x8c,0x81,0x73,0xe,0xa9,0x14,0x94,0x8a,0x20,0xa4,0x0,0x5,0x5a,0x92,0x10, + 0x2,0xbc,0xf,0x70,0xd6,0x2f,0x9d,0x13,0x11,0x44,0xc4,0xa1,0x12,0x19,0x37,0x92, + 0x3d,0x4,0xe0,0x31,0x8a,0xf4,0xeb,0xc0,0x87,0x48,0x48,0xd0,0x71,0xea,0x8c,0x3b, + 0xc7,0x40,0xe7,0x5a,0xdd,0x24,0xc9,0x3a,0x31,0x18,0x7,0xaa,0x59,0x85,0xc5,0xbc, + 0x80,0x52,0x11,0xf2,0x76,0xe,0xbe,0xda,0xa5,0xfa,0x5b,0x99,0xd2,0xca,0x90,0x65, + 0xe9,0xea,0xae,0xd3,0x6d,0x39,0x4,0xbf,0xfc,0xb9,0xb4,0xe6,0x1e,0x3e,0x10,0x2, + 0x5,0x10,0x96,0x84,0x3a,0xe3,0xd0,0x54,0x1a,0x4c,0x30,0xa8,0x58,0x41,0xc4,0x2, + 0x71,0x4b,0xb1,0x42,0xb0,0x53,0xde,0xfb,0x87,0x99,0xa0,0xfe,0x87,0xea,0x54,0x49, + 0xf8,0x14,0x84,0x13,0x4c,0xb0,0x13,0x79,0x27,0x93,0xad,0x4e,0x2,0xce,0x19,0xca, + 0xa2,0xc4,0xe1,0x78,0x82,0x62,0x51,0x20,0x84,0x80,0xd5,0xc9,0x1b,0x42,0x58,0x4a, + 0xe8,0xd6,0x5,0x2e,0x17,0x59,0x5,0x0,0xc2,0x9d,0xcf,0x8,0xb8,0x2d,0x15,0x22, + 0x6,0x22,0xc0,0x6a,0x87,0xba,0xa8,0xd1,0x94,0x1a,0x21,0x84,0x65,0x86,0xb4,0x14, + 0xe3,0x8a,0xaf,0x31,0xc6,0x76,0x38,0xb1,0xce,0x87,0x49,0x8,0xeb,0xac,0xc5,0x3d, + 0x99,0xca,0x41,0x9c,0x45,0x71,0x9c,0x29,0xa8,0x58,0x1,0x8c,0xa1,0x2c,0x2b,0x1c, + 0x8e,0xf,0x51,0x14,0x77,0x8,0xb9,0xcb,0xc9,0xc2,0xbb,0x0,0x67,0x97,0xfb,0x17, + 0x63,0xcc,0x32,0xac,0x85,0xb5,0xee,0xae,0x61,0xf3,0x72,0x3c,0x40,0xe1,0xe,0x45, + 0xce,0x39,0xe8,0xda,0xc0,0x68,0x83,0x10,0x8,0x8c,0x33,0x8,0xc9,0xa1,0x62,0x25, + 0x79,0xc4,0xd7,0x65,0x2a,0x86,0x1b,0x1b,0x1b,0xf9,0x87,0x42,0xc8,0x70,0x38,0xcc, + 0x5a,0x6b,0xad,0xed,0x7c,0x2d,0xed,0xa6,0xed,0x4,0x4c,0x70,0x84,0x40,0xf0,0xde, + 0xa3,0xaa,0x6a,0xcc,0xe6,0x73,0x54,0x55,0xb5,0x22,0xe4,0xe,0x19,0xbf,0x36,0xc2, + 0x7,0xbd,0x1f,0x56,0xb1,0x7c,0xed,0xbd,0x87,0xb3,0xe,0xce,0xae,0xda,0xef,0x8a, + 0x2c,0x1e,0x71,0xc8,0x44,0xe6,0x2a,0x95,0x3b,0x31,0xe2,0xad,0xdf,0xd6,0x5b,0xfd, + 0x26,0x84,0x88,0x34,0x4d,0xd7,0xe3,0x5c,0x9e,0xca,0x3a,0x49,0x27,0xcd,0x13,0x70, + 0xc1,0x61,0x8d,0x43,0x53,0x6b,0x94,0x65,0x89,0xaa,0x2c,0xa1,0xb5,0x59,0xc9,0x64, + 0x39,0x54,0xc6,0xfb,0x2e,0xf8,0x6e,0xfd,0xdd,0x1d,0xb4,0xfa,0xdd,0xd5,0xf7,0x56, + 0x1f,0x4,0x1f,0x60,0xb5,0x85,0x6d,0x2c,0x9c,0xb5,0xf0,0xce,0x23,0x10,0xc0,0x25, + 0x7,0x8f,0x79,0xc,0x45,0x43,0xe,0x3e,0x4,0x10,0x3f,0x68,0x42,0xa4,0x24,0xb9, + 0xcd,0x5,0x3b,0x95,0x66,0x71,0x9e,0xb4,0x62,0x70,0xc1,0x61,0x8c,0x45,0x55,0x55, + 0x68,0xea,0x66,0xb5,0x95,0x5f,0x86,0xf3,0x7e,0x55,0x3b,0x3e,0x20,0x4b,0xf0,0x41, + 0x99,0x1,0xfc,0xea,0x81,0x6d,0x20,0x20,0xb8,0x0,0x6b,0xdc,0x92,0x14,0xed,0xe0, + 0xac,0x3,0x81,0xc0,0x24,0x3,0x57,0x4c,0x81,0x51,0xdf,0x32,0xbb,0xd1,0x46,0x3b, + 0x7d,0xc0,0x5d,0x66,0x43,0x11,0x13,0x9b,0x8c,0xb3,0xed,0xa4,0x15,0xb5,0xd2,0xf6, + 0x92,0x10,0x67,0xed,0xad,0x79,0xe7,0x72,0x3c,0x68,0x2c,0x74,0xa3,0x91,0x24,0x6e, + 0x59,0x1c,0x6f,0xdf,0xfc,0xff,0x4d,0x2a,0xb7,0x8,0x59,0x65,0x46,0x58,0x1e,0x75, + 0x7a,0x17,0xe0,0xed,0x92,0xdc,0x5b,0xb2,0x1,0x8,0x42,0x71,0x88,0x88,0x2b,0xc6, + 0x69,0xe0,0x83,0xdf,0x70,0x70,0xe9,0x3,0xce,0x10,0x23,0xbd,0x75,0x5d,0x2,0xfa, + 0x51,0x16,0x27,0x69,0x1e,0x83,0xb,0x76,0xbb,0x75,0xde,0x92,0x86,0x31,0x6,0x55, + 0x59,0xc3,0x68,0xd,0x22,0x7a,0xbf,0x32,0xf0,0x6b,0xea,0xc9,0xaf,0xbc,0x1f,0x42, + 0x80,0x37,0xcb,0x8c,0x8,0x7e,0x65,0xd2,0x56,0x2d,0x1b,0xc,0x90,0x11,0x87,0x4c, + 0x44,0x4,0xc6,0x6,0xce,0xb9,0x8d,0x80,0x90,0x3c,0x60,0x42,0x82,0xf0,0x3e,0xe4, + 0x60,0xe8,0x46,0xa9,0x8c,0xe3,0x2c,0x82,0x90,0xfc,0x3d,0xf6,0x3a,0x10,0x41,0x6b, + 0x8d,0xaa,0xaa,0x60,0xac,0xf9,0x3f,0x4a,0xe6,0xee,0xcc,0x1,0xbc,0xb,0xab,0x89, + 0x9a,0x5f,0xfa,0x92,0xdb,0x5,0x77,0xb9,0x26,0x57,0x2,0x42,0x9,0x9,0x86,0x75, + 0x2,0xfb,0xad,0x9,0xf9,0xd,0x24,0x13,0x24,0x42,0xe8,0x83,0xd1,0x7a,0x9c,0xc5, + 0x2a,0x6d,0x27,0x60,0x9c,0xc1,0x58,0x3,0x19,0x49,0x44,0x71,0x84,0x28,0x56,0x60, + 0x9c,0xc1,0x87,0x65,0xb,0x25,0x22,0x2c,0x3d,0x37,0xbd,0x27,0xe8,0x7d,0x59,0x83, + 0xf7,0x4a,0x87,0x80,0xe0,0x9,0xce,0x78,0x84,0xe0,0xc1,0x5,0x87,0x8c,0x24,0x84, + 0xe4,0x60,0x82,0x81,0x9,0xe,0xa6,0x0,0x99,0x48,0xc1,0x18,0xeb,0x11,0xd1,0x90, + 0x40,0xf,0xba,0x86,0x4,0x15,0x78,0xd8,0xa,0x81,0x4e,0x48,0x25,0xa4,0x8a,0x25, + 0x42,0x20,0x70,0xc1,0x21,0xa4,0x40,0x92,0x25,0xc8,0xdb,0x2d,0x28,0x19,0x41,0x2a, + 0x75,0xdb,0x98,0x7d,0x50,0x97,0xf9,0x75,0x6d,0x18,0xb7,0x32,0x7,0x58,0xd9,0xf7, + 0xb0,0x94,0x47,0x2c,0xa1,0x62,0x5,0x2e,0x96,0x83,0x67,0xc6,0x1,0xc6,0x19,0xb8, + 0x60,0x20,0x50,0x1e,0x42,0xd8,0x4,0xf0,0x60,0x33,0xa4,0x1b,0x77,0x94,0x94,0x62, + 0xcb,0x6a,0xd7,0x39,0xbc,0x31,0x83,0x4a,0xae,0x23,0x4,0xa0,0xa9,0x6a,0x14,0x8b, + 0x12,0xd5,0x81,0x1,0xd5,0x2,0xaa,0x1d,0x23,0x92,0x31,0xa4,0x5a,0xde,0x51,0xa, + 0x0,0xb,0x7c,0xd5,0x4b,0xd9,0xea,0xa2,0xdf,0x5f,0x68,0xc1,0xb0,0xba,0x58,0x6, + 0xbe,0xda,0xdd,0x12,0x0,0xf2,0x4,0x57,0x7b,0x4,0xd3,0x80,0x13,0x43,0x53,0x68, + 0x70,0xce,0x0,0xe,0x54,0x93,0x1a,0xb6,0xb1,0x2,0xa0,0xa1,0x10,0x22,0x71,0xde, + 0x3d,0x40,0x42,0x86,0x5d,0x28,0x19,0xa8,0x98,0x95,0x78,0xfd,0x95,0x77,0xf0,0xf6, + 0xcf,0xae,0x2,0x44,0xcb,0x89,0xb8,0xb1,0x28,0x8b,0xa,0x84,0x0,0x79,0x32,0x81, + 0xdb,0x24,0x4,0x87,0x3b,0x96,0x7c,0xd5,0x42,0x6e,0xdb,0xf7,0xdb,0xd2,0xa1,0xf7, + 0xb8,0xd9,0x5b,0x9d,0x86,0x88,0x6e,0x4b,0x46,0x2f,0x34,0x16,0xfb,0x5,0x4c,0xbd, + 0x94,0x26,0x97,0x1c,0x8c,0xad,0xdc,0xaf,0xf5,0xd0,0xa5,0x1,0x18,0x48,0x26,0x12, + 0xba,0xd4,0xf,0x8e,0x90,0x5e,0x2f,0x29,0x9b,0xa6,0xf9,0x8f,0x72,0x51,0xa5,0xf3, + 0x49,0x9,0xab,0xef,0x9a,0xf3,0x6,0xc0,0x53,0x38,0x9f,0xa4,0xf1,0xb9,0x48,0xd4, + 0xd8,0x8b,0xf,0x61,0x1b,0x87,0xac,0x97,0x40,0xc5,0x12,0x9c,0x73,0x70,0xb9,0x3a, + 0x67,0xa1,0xa5,0xad,0x17,0x91,0x80,0x80,0x80,0xf7,0x1e,0xd6,0x10,0xc8,0x10,0xbc, + 0x73,0xb0,0xc6,0x43,0x97,0x1a,0xe5,0xac,0xc2,0xfc,0x60,0x81,0xf9,0xa8,0x40,0x31, + 0xae,0xd0,0x2c,0x9a,0x3d,0x80,0x7e,0x2,0x86,0xfa,0xb6,0x71,0x63,0xc,0x42,0x70, + 0x40,0xe2,0xe7,0x8a,0xab,0xbd,0x7,0x2a,0x19,0xe7,0xdc,0x54,0x4a,0xf9,0x8f,0x5a, + 0xeb,0x7f,0xad,0xa6,0x15,0xa6,0xb3,0x12,0xcb,0x3,0x56,0x5,0x28,0xa0,0xd3,0x4d, + 0xff,0xc2,0x39,0xfb,0xd7,0xd3,0x83,0x79,0xb7,0xac,0x2a,0x8c,0xae,0x26,0x68,0xad, + 0x65,0x68,0xf5,0x52,0x64,0xdd,0x14,0x49,0x2b,0x81,0x54,0x2,0x8c,0x3,0x42,0x49, + 0xc8,0x58,0x82,0x9,0xb6,0xda,0xcd,0x1a,0xe8,0x4a,0xc3,0x6a,0x8d,0x72,0xd1,0x60, + 0xb1,0xbf,0xc0,0x6c,0xb4,0x40,0x39,0xab,0xd0,0x94,0x6,0xd6,0x58,0x10,0xf,0xff, + 0xd6,0x54,0xee,0xef,0x3c,0xc2,0x6a,0xab,0x6f,0xa1,0xa0,0xa0,0x94,0x82,0x60,0xa2, + 0x54,0x89,0xba,0xf1,0xdb,0x10,0x72,0xcf,0x1f,0xfe,0xdf,0xdd,0xdd,0xbd,0xec,0x9c, + 0xfb,0x16,0x79,0x9c,0xb0,0xce,0x75,0x54,0x24,0xd6,0xe2,0x56,0xd4,0xce,0x3a,0x69, + 0x9a,0x75,0x92,0x38,0x4e,0xa3,0x84,0x9,0x9e,0x30,0x6,0x25,0x95,0x84,0x8c,0x15, + 0x98,0xc0,0x32,0xed,0x6b,0x3,0x53,0x9b,0xe0,0xac,0xb3,0x4d,0xa9,0x4d,0x39,0x29, + 0xcb,0x72,0x56,0x2d,0x74,0x65,0xa,0x2,0x66,0x60,0x6c,0x26,0x4,0xff,0x87,0xe9, + 0x74,0xfa,0xf7,0xb8,0x4f,0xb8,0xe7,0x4f,0x32,0x6f,0x6f,0x6f,0xbf,0x76,0xe3,0xc6, + 0x8d,0xa9,0x9,0x66,0x83,0xbc,0x3f,0x69,0x75,0xd8,0xf5,0xde,0x6f,0xeb,0xda,0xac, + 0x4d,0x47,0xf3,0xb6,0x14,0xbc,0x43,0xa0,0x2e,0x11,0xba,0x0,0xd6,0x8,0x68,0x3, + 0xc4,0x43,0x8,0x81,0x80,0x3,0x10,0xc6,0xe4,0x7d,0xed,0x5c,0x28,0x83,0x73,0x23, + 0xef,0xc2,0xcd,0x10,0x68,0x8f,0x9,0x76,0x8d,0x73,0x76,0x4d,0x4a,0xf9,0x73,0xdc, + 0x47,0xdc,0xcf,0x7f,0xf,0x61,0x79,0x9e,0xf,0x94,0x52,0x43,0xb2,0xd4,0xf7,0xc1, + 0xe7,0x4e,0xbb,0x8c,0x88,0x65,0x4,0xdf,0x22,0xb0,0x16,0x11,0xb5,0x39,0x90,0x6, + 0x2,0x5b,0xda,0x39,0x36,0x7,0xd8,0x3c,0x20,0x68,0x0,0x8d,0x14,0x6c,0x1a,0xa9, + 0x68,0x4a,0x82,0x26,0x59,0x96,0x8d,0x9e,0x7d,0xf6,0xd9,0xd1,0xf7,0xbe,0xf7,0x3d, + 0x8f,0x63,0x1c,0xe3,0x18,0xc7,0x38,0xc6,0x31,0x8e,0x71,0x8c,0x63,0x1c,0xe3,0xff, + 0x1d,0xfe,0x7,0x1f,0x92,0x69,0x26,0xfd,0xbe,0x16,0x61,0x0,0x0,0x0,0x0,0x49, + 0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/away.png + 0x0,0x0,0xe,0xcd, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0x14,0xc3,0x0,0x0,0x14,0xc3,0x1, + 0x15,0x70,0x4d,0x42,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd8,0xc,0x11, + 0xa,0x2d,0x4,0x35,0x3c,0xf2,0x39,0x0,0x0,0xe,0x4d,0x49,0x44,0x41,0x54,0x68, + 0xde,0xd5,0x9a,0x7b,0x70,0x54,0x55,0x9e,0xc7,0x3f,0xe7,0xde,0xbe,0xb7,0xbb,0xd3, + 0xaf,0x3c,0x20,0x9d,0x4,0x42,0x20,0x21,0x4,0x44,0xd1,0xc8,0xd3,0x17,0xa8,0xe0, + 0xe8,0x2c,0xb2,0xca,0xa8,0x65,0xd5,0xec,0x3a,0xae,0xb3,0x3e,0xb1,0xa6,0xc6,0xda, + 0xd5,0xd9,0xd5,0x5a,0x7c,0x61,0x29,0xa3,0xcc,0x4c,0x59,0xbb,0xa2,0xa0,0xb3,0xd6, + 0x4e,0x39,0x3b,0x65,0xd,0x8a,0xce,0xac,0x3b,0xeb,0x2a,0x82,0x20,0xc,0x6f,0x91, + 0x1,0x21,0x21,0xe1,0x61,0x20,0xe9,0x4e,0x20,0xe9,0xdc,0x7e,0xdf,0xbe,0xf7,0x9e, + 0xfd,0xa3,0x3b,0xb1,0xc3,0x43,0x8c,0x71,0x77,0x6a,0x6f,0xd5,0xaf,0x3a,0x7d,0xfa, + 0xde,0x73,0xbf,0xdf,0xdf,0xf9,0xbd,0xce,0xef,0x44,0x48,0x29,0xf9,0xff,0x7c,0xb9, + 0xbe,0xcd,0xc9,0x1e,0x78,0xb1,0xc2,0x57,0xe3,0xb6,0x6b,0x35,0x47,0xa9,0x1,0xaa, + 0x71,0x39,0xd5,0x0,0x58,0x4a,0x17,0xd0,0x95,0x53,0x9c,0xce,0xce,0xac,0xda,0xf1, + 0xf2,0x8f,0x4f,0x25,0xbf,0xad,0x77,0x8a,0x91,0xae,0xc0,0x73,0xab,0x42,0x75,0x2, + 0xe5,0x66,0x60,0x31,0x70,0x15,0xa0,0x9c,0xe7,0x11,0x7,0xd8,0x4,0xac,0x95,0x38, + 0xef,0x3c,0x7a,0x5f,0xff,0xb1,0x3f,0xb,0x81,0x65,0xaf,0x94,0x2e,0xd6,0x14,0x65, + 0x29,0x52,0x36,0x3,0xcc,0xa9,0x9,0xd9,0xe1,0xb2,0x2b,0xd4,0xd2,0xb2,0x4a,0xdc, + 0xde,0x32,0x74,0xdd,0x8f,0x4b,0xf,0xe6,0x17,0xc0,0x34,0x30,0xcd,0x4,0xd9,0x74, + 0x1f,0x7d,0xbd,0x51,0xa2,0x7d,0x9b,0xed,0x6d,0x5d,0x86,0x9a,0x47,0x20,0x3e,0xcd, + 0x39,0xce,0xb2,0xa5,0xf7,0xc7,0xd6,0xfe,0x9f,0x10,0x58,0xbe,0xba,0x7c,0x2e,0xf0, + 0x2,0x52,0xce,0x9a,0x5d,0x1d,0xb4,0xeb,0x6a,0xae,0x57,0xc3,0x63,0xa7,0xe2,0x72, + 0x8d,0xca,0xab,0xd7,0x4e,0x61,0xcb,0x2c,0xb6,0x99,0xc5,0xb2,0xcc,0xbc,0x9d,0xba, + 0x74,0x54,0xdd,0x8d,0x2a,0xdc,0x28,0x6a,0x49,0x9e,0x94,0x75,0x92,0xe8,0xf1,0xfd, + 0x1c,0xeb,0x7c,0x3f,0x4f,0x46,0x88,0xed,0xc0,0x23,0xff,0x78,0x6f,0xef,0xc6,0xff, + 0x15,0x2,0x2b,0x5f,0x19,0x15,0x32,0x84,0xfd,0x3a,0xb0,0xb8,0x29,0xec,0xb5,0x67, + 0x35,0xdc,0xa2,0x56,0xd4,0x4c,0x7,0x14,0xcc,0x4c,0x2f,0xe9,0x44,0x1f,0x46,0xda, + 0x20,0x67,0xdb,0x5f,0x39,0x8f,0xa6,0xaa,0xf8,0x4b,0x82,0xf8,0xbc,0x65,0xe8,0x9e, + 0x72,0x50,0x1c,0x4e,0x75,0xee,0x62,0x7b,0xfb,0x5b,0x76,0x4b,0x34,0xad,0x2,0x6b, + 0x83,0x52,0xbd,0x6b,0xc9,0xfd,0x27,0xfb,0xbf,0x35,0x2,0x2b,0x5e,0xad,0x68,0xb4, + 0xa4,0x7c,0xcf,0xa3,0xd0,0xb0,0xf0,0xc2,0x9b,0x94,0xda,0xfa,0x2b,0x0,0x85,0x64, + 0xf2,0x4,0x27,0xfb,0x4e,0x62,0x4b,0x89,0x65,0x99,0x24,0xd3,0xc7,0x30,0xad,0x36, + 0xe2,0xa9,0x2c,0x69,0xd3,0xa2,0x3b,0x99,0x5,0xa0,0xd2,0xe7,0xc6,0xab,0xbb,0xf0, + 0x79,0xdc,0x78,0xf5,0x9,0x94,0x78,0xeb,0xf3,0xab,0x22,0x4,0xa3,0xca,0x46,0xe1, + 0xb,0x8c,0x1,0xc7,0xa1,0xe3,0xf0,0x66,0xde,0xdb,0xf7,0xae,0x93,0x71,0x68,0x77, + 0x9,0xb1,0xf0,0xe1,0x7b,0x4e,0x1d,0x1a,0x31,0x81,0x15,0xab,0xcb,0x17,0x58,0x52, + 0xbe,0x35,0x26,0xe4,0xf6,0xfd,0xc5,0x8c,0xfb,0x54,0x5f,0x69,0x1d,0xe9,0x44,0xf, + 0x27,0x63,0x11,0x72,0xb6,0x4d,0x5f,0x7f,0x7,0x7d,0x89,0x5d,0x1c,0x8c,0xc6,0xb1, + 0x1c,0x98,0x50,0xee,0x62,0x4a,0xa9,0x17,0xe1,0x4c,0xc0,0x57,0x1a,0x6,0x1b,0x92, + 0xf1,0x28,0x52,0x39,0xc2,0x81,0x58,0x9a,0x23,0xbd,0x16,0x2e,0x5,0x26,0x87,0x3, + 0x94,0xf9,0xa7,0x53,0x16,0xaa,0x45,0x53,0x55,0x46,0x97,0x56,0xe3,0xf1,0x8f,0x22, + 0x19,0x3b,0xc6,0x7f,0xee,0x5c,0x65,0x9f,0xe8,0xcf,0x26,0x5d,0x42,0xdc,0xf2,0xf0, + 0xbd,0xbd,0x1f,0x7e,0x63,0x2,0x2b,0x56,0x97,0x2f,0xc8,0x48,0xf9,0x5f,0x57,0x54, + 0x7,0x99,0x3e,0xfd,0xc7,0xaa,0xe6,0xa,0x70,0xaa,0xf7,0x18,0x46,0xca,0xc0,0x30, + 0x7a,0x89,0x26,0x3e,0xe6,0x40,0x67,0x82,0x8b,0x47,0xe9,0x34,0x55,0xcf,0xa3,0x43, + 0x7b,0x92,0x8b,0x1a,0xc2,0x8,0x71,0xf6,0xf9,0xa4,0x84,0x7d,0xed,0xdd,0x8c,0xb3, + 0x9f,0xe2,0x60,0xc7,0x6,0xf6,0xf4,0x66,0x99,0x52,0xe3,0x27,0xec,0x9f,0x47,0x30, + 0x58,0x4e,0xc8,0x17,0xa2,0xa2,0xbc,0xe,0x33,0x67,0xb0,0x6b,0xd7,0x8b,0xf6,0xe6, + 0x2e,0x3,0x8f,0x10,0x37,0x7c,0x15,0x89,0x73,0x12,0x58,0xf1,0x6a,0x45,0xa3,0xe5, + 0x38,0x3b,0x67,0xd6,0x4,0x7d,0x97,0xcd,0x78,0x44,0x95,0x52,0xd0,0xdd,0x73,0x94, + 0xb4,0x95,0x26,0x1e,0x5f,0xc7,0xfa,0x96,0x8,0x93,0x42,0x1a,0x97,0x35,0xdf,0x83, + 0x56,0xf1,0x10,0xaa,0xaa,0xc,0x2b,0x18,0xd8,0x8e,0xc4,0xee,0xf9,0x5,0x5b,0x76, + 0xbf,0x46,0x4b,0xdc,0x64,0x6e,0x53,0x98,0x50,0xc9,0x75,0xf8,0x3c,0x5e,0x46,0x87, + 0x27,0x0,0xb0,0x75,0xfb,0x72,0x7b,0x47,0xa7,0x91,0x74,0x29,0xca,0x8c,0x73,0x99, + 0xd3,0x59,0x9,0xac,0x7c,0x65,0x54,0xc8,0x50,0x9c,0x1d,0x35,0x41,0x57,0xfd,0xcd, + 0x97,0x3f,0xac,0xaa,0x2e,0x1f,0x9d,0xd1,0x36,0x32,0xb9,0xc,0x27,0x4e,0xfe,0x81, + 0x3d,0x1d,0xfd,0xdc,0x3a,0x6d,0x3e,0xbe,0xfa,0x97,0xf0,0xe8,0x23,0xcb,0x85,0x19, + 0xd3,0x22,0x79,0xf8,0x41,0xd6,0xec,0x5d,0xc7,0x45,0x35,0x41,0x6a,0x2b,0xbf,0x8b, + 0xd7,0xed,0xa5,0xa6,0x72,0x22,0xb6,0x95,0xe4,0x9d,0x2d,0x2b,0xec,0x4e,0xc3,0x3a, + 0x1c,0x74,0x94,0x99,0x67,0x73,0xec,0xb3,0xaa,0xcd,0x10,0xf6,0xeb,0x42,0xc8,0x86, + 0x1b,0x9a,0xef,0x56,0x55,0x2d,0x44,0xb4,0xfb,0x8,0x99,0x5c,0x86,0xcf,0x8f,0xff, + 0x9e,0xf6,0xae,0x38,0x4b,0xbe,0xf3,0xb7,0x54,0x4c,0x5e,0x35,0x62,0xf0,0x0,0x1e, + 0xdd,0x45,0xc5,0xe4,0x55,0xdc,0x35,0x6f,0x9,0xfb,0x22,0x6,0x2d,0x1d,0xbf,0x23, + 0x9d,0x4d,0xd3,0xdd,0x73,0x14,0x55,0xb,0x71,0x43,0xf3,0xdd,0xaa,0x10,0xb2,0xa1, + 0x10,0x1,0x39,0x2f,0x81,0x42,0x9c,0x5f,0xbc,0x68,0xf2,0x42,0xc5,0x17,0xac,0xa3, + 0xb7,0xf7,0xb,0x32,0x76,0x5e,0xf3,0x27,0xfb,0xd2,0x4c,0x9a,0xf2,0x31,0x76,0xe9, + 0xa3,0x23,0x2,0x6d,0x59,0x16,0x96,0x65,0xd,0x19,0xd3,0xc3,0x7f,0xc7,0x25,0x53, + 0x36,0xd2,0xdd,0x9f,0xe5,0x44,0xe4,0xf,0xa4,0xad,0x34,0x7d,0xc6,0x31,0x7c,0xc1, + 0x3a,0x16,0x4d,0x5e,0xa8,0x0,0x8b,0xb,0xd8,0xce,0xbb,0x2,0x2f,0x4c,0x1c,0xed, + 0xb5,0xc7,0xd5,0xcf,0x22,0x93,0xe9,0x26,0x9e,0x89,0x13,0x8f,0xaf,0x63,0x4f,0x47, + 0x3f,0x77,0x5c,0x7b,0x17,0x33,0xa6,0x54,0x8f,0x8,0xfc,0xc6,0x4f,0x36,0x73,0xdb, + 0xf7,0x7f,0xc0,0xc2,0xc5,0xb7,0xf1,0x45,0x47,0xc7,0x90,0xdf,0x66,0x4d,0xad,0xe1, + 0x8e,0x6b,0xef,0xe2,0xb3,0x88,0x41,0x7f,0x62,0x1d,0x46,0x22,0x41,0x26,0xd3,0xcd, + 0xb8,0xfa,0x59,0x8c,0x1f,0xe5,0xb1,0x81,0x17,0xbe,0x92,0xc0,0xb2,0x57,0x4a,0x17, + 0x23,0xe5,0xac,0x4b,0xc7,0xdf,0xa8,0x4a,0x45,0xd0,0x1b,0xeb,0xc5,0x30,0x7a,0x59, + 0xdf,0x12,0xe1,0xd6,0x69,0xf3,0x47,0xac,0xf9,0x5d,0x9f,0x7e,0xca,0xb2,0xe7,0x9e, + 0xa7,0x2f,0x16,0x23,0x9b,0xcd,0xb2,0x6d,0xc7,0xae,0x33,0x9d,0xbb,0xf4,0x51,0x6e, + 0xb9,0xe0,0x5a,0x3e,0x3e,0x18,0x21,0x66,0x74,0xd3,0x1b,0xeb,0x5,0x55,0x61,0xd6, + 0x84,0x45,0x2a,0x52,0xce,0x5a,0xf6,0x4a,0xe9,0xe2,0x73,0x12,0xd0,0x14,0x65,0xe9, + 0xa5,0x63,0x2,0x76,0x65,0xf8,0x42,0x52,0xc6,0x49,0x72,0x8e,0x4d,0x34,0xf1,0x31, + 0x93,0x42,0x1a,0xbe,0xfa,0x97,0x46,0x4,0xfe,0x50,0x5b,0x3b,0xff,0xf4,0xe4,0x32, + 0x72,0xb9,0xdc,0xe0,0x58,0xb8,0x72,0xf4,0x59,0xef,0xd,0x36,0xbd,0xcc,0xe4,0x72, + 0x37,0x27,0xfa,0x3f,0x21,0xe7,0xd8,0x24,0x13,0xa7,0xa8,0xc,0x5f,0x48,0x73,0x8d, + 0xdf,0xd6,0x14,0x65,0xe9,0x59,0x9,0x3c,0xb7,0x2a,0x54,0x87,0x94,0xcd,0x63,0x43, + 0x73,0x55,0x29,0x25,0xb1,0x64,0x8c,0xbe,0xfe,0xe,0xe,0x74,0x26,0xb8,0xac,0xf9, + 0x9e,0x11,0x3b,0xec,0xbf,0xbf,0xb9,0x86,0x74,0x3a,0x33,0xf8,0xdd,0xeb,0xf5,0x30, + 0x67,0xd6,0xcc,0xb3,0xde,0xab,0x6b,0x2a,0xf3,0x2f,0xbd,0x83,0xf6,0x68,0x92,0x98, + 0x71,0x98,0x98,0xd1,0x8b,0x54,0x4,0x63,0xca,0xe7,0xa9,0x48,0xd9,0xfc,0xdc,0xaa, + 0x50,0xdd,0x19,0x4,0xa,0x25,0x31,0xe1,0xea,0x46,0xcc,0x9c,0x81,0x2d,0x25,0x7d, + 0x89,0x5d,0x5c,0x3c,0x4a,0x47,0xab,0x78,0x68,0x44,0xe0,0xcd,0x5c,0x8e,0xad,0xdb, + 0xb7,0xd,0x19,0x9b,0x33,0x6b,0x36,0xba,0xae,0x9f,0xfb,0x99,0xb2,0x7f,0x60,0x46, + 0xa5,0x97,0xee,0xf8,0x5e,0x6c,0x29,0x31,0x53,0x6,0xe1,0xea,0xc6,0x21,0x58,0x4f, + 0x37,0xa1,0xc5,0x97,0x86,0x3,0xb6,0xe6,0xd,0x91,0x4a,0xa5,0xb0,0x2c,0x93,0x83, + 0xd1,0x38,0x4d,0xd5,0xf3,0x86,0x9d,0xa4,0x4e,0xbf,0x76,0xee,0xda,0x3d,0x44,0xfb, + 0xc1,0x40,0x80,0x1f,0xde,0xf9,0x57,0x5f,0xf9,0x8c,0x22,0x4,0x4d,0x75,0xd7,0xd0, + 0x16,0x49,0x90,0xcb,0x65,0x49,0x65,0x52,0xb8,0xdd,0x21,0x9a,0x6b,0xfc,0x76,0x61, + 0xef,0xf1,0x25,0x81,0x7,0x5e,0xac,0xf0,0x1,0x57,0x95,0x5,0xa7,0xab,0xd8,0xe, + 0xa9,0x6c,0x86,0x64,0xfa,0x18,0x96,0x3,0x1d,0xda,0x93,0xdf,0x8,0x74,0x57,0x24, + 0xc2,0x86,0x8d,0x1b,0xd9,0xb0,0x71,0x23,0x1d,0x1d,0xc7,0x8b,0xcc,0x43,0xe3,0xd9, + 0xa7,0x1f,0xa7,0x76,0xec,0xd8,0xf3,0xce,0x71,0x5c,0x3c,0x81,0x25,0x25,0x99,0x6c, + 0x2b,0xa9,0x6c,0xa,0x6c,0x87,0x72,0xdf,0xc,0x15,0xb8,0xaa,0x80,0x39,0xbf,0xa5, + 0xac,0x71,0xdb,0xb5,0x20,0x94,0x90,0xbf,0xc,0xdb,0xc9,0x61,0x4b,0x1b,0xd3,0x6a, + 0x63,0x42,0xb9,0x8b,0x8b,0x1a,0xc2,0xc3,0x33,0x17,0xd3,0x64,0xe5,0xaa,0xd7,0x78, + 0xf7,0x3f,0xde,0x63,0x20,0xcb,0xb,0x21,0x8,0x4,0x2,0x94,0x95,0x96,0xf2,0xe0, + 0xfd,0x77,0x73,0xe1,0xd4,0xa9,0x5f,0x6b,0xae,0xc9,0xe3,0x2b,0x38,0x79,0x48,0x27, + 0x91,0x3e,0x4e,0xc0,0x7f,0x11,0xb6,0x93,0x23,0xe4,0x2f,0x3,0x50,0xf2,0x98,0x39, + 0xe8,0x2,0xd0,0x1c,0xa5,0x6,0x55,0xe2,0xf1,0xfa,0xb1,0x72,0xf9,0x4d,0x48,0x3c, + 0x95,0xcd,0x57,0x95,0x62,0x78,0x9a,0x1f,0x0,0x7f,0xeb,0xe2,0x9b,0xb9,0xfe,0xba, + 0xf9,0x0,0xbc,0xff,0xc1,0x3a,0xd6,0xac,0x7d,0x87,0xf9,0x57,0xcf,0x63,0xf6,0xcc, + 0x99,0xc3,0x9a,0xaf,0xb1,0xdc,0xc7,0xc1,0x54,0x96,0x6a,0xc0,0x76,0x72,0x78,0xbc, + 0x7e,0x6,0x31,0xf,0x10,0x0,0xaa,0x1,0x34,0xdd,0x87,0xe3,0xe4,0x33,0x64,0xda, + 0xb4,0x10,0xee,0xc6,0x61,0x9b,0xcd,0x0,0xf8,0x7,0xef,0xbf,0x67,0x70,0x7c,0x62, + 0x43,0x3d,0x0,0x6b,0xd6,0xbe,0xc3,0xed,0xb7,0x7d,0x8f,0xea,0xaa,0xaa,0xaf,0x3d, + 0x67,0xd6,0x6a,0x24,0x9e,0xfa,0x2c,0x9f,0x23,0x72,0x39,0x34,0xdd,0x47,0x31,0xe6, + 0xbc,0x77,0x16,0xba,0x7,0xba,0x5e,0x42,0xce,0xc9,0xef,0xa8,0xba,0x93,0xd9,0x7c, + 0x3d,0x3f,0x8c,0xab,0xa5,0xb5,0x15,0x29,0xe5,0xa0,0xe6,0x8b,0xaf,0xeb,0xaf,0x9b, + 0x8f,0x94,0x92,0x96,0xd6,0xd6,0x61,0xcd,0x19,0x8,0x86,0x88,0xa5,0xf3,0xb9,0xc3, + 0x92,0xe,0xba,0x5e,0x42,0x31,0xe6,0x21,0xe1,0xc5,0xb1,0x0,0xc5,0x29,0x4a,0x8b, + 0x7f,0xfe,0xbe,0x8f,0xa2,0x7c,0xd9,0xfb,0x91,0x52,0xe2,0x58,0x67,0x2b,0x25,0xf2, + 0x7d,0x1b,0xcc,0xac,0x81,0x52,0xb8,0xbd,0xd2,0xe7,0x26,0x19,0x8f,0xe,0xeb,0x65, + 0x4d,0x93,0x26,0x21,0x84,0xe0,0xfd,0xf,0xd6,0x9d,0xf1,0xdb,0xfb,0x1f,0xac,0x43, + 0x8,0x41,0xd3,0xa4,0x49,0xc3,0x9a,0xb3,0x3f,0xd6,0x8f,0xdf,0xab,0x15,0xc8,0x28, + 0x98,0x59,0x83,0x62,0xcc,0x3,0xe4,0xba,0x0,0x32,0xe9,0x4,0x7e,0x2d,0xbf,0x44, + 0x5e,0xdd,0x85,0x54,0x8e,0xc,0xeb,0x65,0xd5,0x55,0x55,0xdc,0x74,0xe3,0x42,0xd6, + 0xac,0x7d,0x67,0xd0,0x6c,0x8a,0x9d,0xf8,0xa6,0x1b,0x17,0xe,0xcb,0xfe,0x1,0x3c, + 0xde,0x56,0x2,0x66,0x3e,0xe1,0xa9,0x8,0x12,0xe9,0x4,0xc5,0x98,0x5d,0x0,0x39, + 0xc5,0xe9,0xd4,0x10,0xa4,0xb3,0x49,0x2,0x85,0xb0,0xe3,0xf3,0xb8,0x39,0x10,0x8b, + 0x31,0x56,0x32,0xac,0x48,0xb4,0xe4,0xbe,0xbb,0x7,0x1d,0xf6,0xb7,0x6f,0xaf,0x1d, + 0xc,0xa3,0x7e,0xbf,0x9f,0xdd,0x7b,0x3e,0x63,0xdb,0x8e,0x1d,0xc3,0x8a,0x44,0xad, + 0xd1,0x14,0x81,0x60,0x3e,0xf2,0x8,0x97,0x4a,0x3a,0x9b,0x6f,0xea,0xe5,0x14,0xa7, + 0x73,0x90,0x40,0x67,0x56,0xed,0xa8,0xf3,0x38,0x4e,0x2a,0x13,0x51,0x84,0x68,0x44, + 0x15,0x2,0xaf,0x3e,0x81,0x23,0xbd,0x3b,0xd8,0xd7,0xde,0xcd,0x45,0x13,0x2b,0xbf, + 0xf6,0xb,0x75,0x5d,0xe7,0xa1,0x1f,0x2d,0xe1,0xf6,0xdb,0xbe,0x37,0xe8,0xb0,0xd1, + 0x68,0xf,0x2f,0xbf,0xfa,0x4b,0xe2,0xf1,0x38,0x4b,0x9f,0x7c,0x86,0x9f,0x3f,0xff, + 0xec,0xd7,0xca,0x5,0x2d,0xc7,0x4e,0xb1,0xbf,0xcf,0x64,0x41,0x65,0x35,0xaa,0x10, + 0x8,0x47,0x90,0xca,0x44,0x0,0x9c,0xce,0xac,0xda,0x31,0xe8,0x3,0x85,0x5e,0xe5, + 0xa6,0xa8,0x71,0xc0,0x96,0x8a,0x44,0x57,0xf5,0x7c,0xeb,0x43,0x81,0x71,0xf6,0x53, + 0xdf,0xc8,0xf9,0xaa,0xab,0xaa,0xb8,0x7a,0xee,0x5c,0xae,0x9e,0x3b,0x97,0xda,0xda, + 0xb1,0x43,0xea,0xa2,0xc7,0x1e,0x7f,0x9a,0x8e,0xe3,0xc7,0xcf,0x3b,0xc7,0x58,0xfb, + 0x19,0x10,0x2,0xdd,0x7d,0x1,0xba,0xae,0x23,0x15,0x49,0xd4,0x38,0x60,0x3,0x9b, + 0x6,0xfa,0xab,0xc5,0x51,0x68,0xed,0xfe,0x9e,0x84,0x9a,0x49,0xc5,0xd0,0x3c,0x1a, + 0x2e,0x97,0xce,0xe4,0x70,0x80,0x83,0x1d,0x1b,0xb0,0x9d,0x91,0xf5,0x4f,0x67,0x4c, + 0xbf,0x14,0xaf,0xd7,0xf3,0xe5,0x96,0x35,0x1e,0xe7,0x5f,0xff,0xed,0xd7,0x5f,0xf9, + 0x8c,0x94,0xd0,0xf6,0xc5,0x87,0x4c,0xae,0xf2,0xe3,0xd2,0x3d,0x68,0xaa,0x9b,0x4c, + 0x2a,0xc6,0xfe,0x9e,0x84,0xa,0xac,0x3d,0xa3,0x98,0x93,0x38,0xef,0x0,0x74,0x75, + 0x1e,0x41,0x43,0x43,0x1,0xca,0xfc,0xd3,0xd9,0xd3,0x9b,0xc5,0xee,0xf9,0xc5,0x88, + 0x8,0xe8,0x9a,0xc6,0x9c,0x59,0xb3,0x87,0x8c,0x6d,0xdd,0xbe,0xd,0xd3,0x34,0xcf, + 0xdd,0xc1,0x33,0x56,0xb0,0xb5,0x3b,0x4d,0x65,0x60,0x1a,0x8a,0x2,0x9a,0xa2,0xd2, + 0x19,0x3d,0x3a,0x4,0xeb,0x10,0x2,0x85,0x2e,0xf1,0x9e,0xce,0xcc,0x4e,0xdb,0x71, + 0x1c,0x3c,0x9a,0x87,0xb2,0x50,0x2d,0x53,0x6a,0xfc,0x6c,0xd9,0xfd,0x1a,0x19,0xd3, + 0x1a,0x11,0x89,0xef,0xdf,0x7e,0xeb,0x90,0x55,0x48,0xa7,0x33,0x6c,0xdd,0xbe,0xe3, + 0x1c,0xe5,0xb7,0xcd,0xfa,0x5d,0xaf,0xd3,0x10,0xf6,0x51,0x1a,0xac,0xc7,0xa3,0x7a, + 0x70,0x1c,0x87,0x8e,0xc4,0x76,0x5b,0x85,0xbd,0x8f,0xdd,0x6f,0x44,0xce,0xdc,0xf, + 0x8,0xa1,0x67,0x92,0xe9,0x9f,0xb5,0x44,0x12,0x6a,0x57,0xf7,0x21,0x74,0xb7,0x7, + 0x55,0x8,0xc2,0xfe,0x79,0xb4,0xc4,0x4d,0x92,0x87,0x1f,0x1c,0x11,0x81,0xc6,0x89, + 0xd,0x3c,0xf3,0xe4,0x52,0x34,0x4d,0x1b,0x1c,0x8b,0x76,0xf7,0x9c,0xf5,0xde,0x78, + 0xfb,0x12,0x3e,0x3f,0x99,0x65,0x4c,0xe8,0x4a,0x54,0x21,0xd0,0xdd,0x1e,0x3a,0xa3, + 0x6d,0xb4,0x47,0x93,0x6a,0x6f,0x6f,0xe2,0x45,0xc0,0x2b,0x84,0xd0,0x6,0x9,0x8, + 0x21,0x14,0x40,0x7f,0xea,0xef,0xb3,0x1f,0x8,0xc7,0xf9,0x6c,0x5f,0xd7,0x47,0x8e, + 0x63,0x5b,0xb8,0xdd,0x5e,0x82,0xc1,0x72,0xe6,0x36,0x85,0x59,0xb3,0x77,0x1d,0x66, + 0xf4,0xe7,0x23,0x22,0x31,0xbd,0xb9,0x99,0xa5,0x8f,0xfe,0x84,0xb2,0xd2,0x52,0xdc, + 0x6e,0x37,0xb3,0x67,0x4e,0x3f,0xf3,0xc4,0xa5,0x77,0x5,0x6b,0xf6,0xae,0xe3,0xca, + 0xc6,0x30,0xa5,0xc1,0x4a,0xdc,0x6e,0x2f,0x8e,0x6d,0xb1,0x3f,0xb2,0xce,0x91,0x96, + 0xf3,0xa7,0xe5,0x8f,0x59,0xeb,0x1,0x37,0xe0,0x16,0x42,0x8,0x21,0xa5,0x44,0x8, + 0xe1,0x6,0x4a,0x0,0xdf,0x8f,0x1e,0x66,0x5e,0xcd,0xc4,0xd2,0x37,0xae,0x69,0x9c, + 0xc3,0x98,0xea,0xe9,0xa4,0xb3,0x69,0x4c,0xd3,0xe4,0x68,0xf4,0x77,0xec,0x8b,0x18, + 0x5c,0x32,0x65,0x23,0xb3,0xa6,0xd6,0x8c,0xb8,0xad,0x92,0x6f,0xbb,0xf,0xdd,0xa6, + 0xee,0x69,0x89,0xd0,0x72,0x70,0x1e,0xb5,0x21,0x1f,0x13,0xc6,0x2d,0x42,0x53,0xdd, + 0x78,0xdd,0x5e,0x4e,0x74,0xed,0x62,0xfd,0xa1,0xad,0x74,0xec,0x8e,0xdd,0xbd,0x72, + 0x35,0x9b,0x80,0x14,0x90,0x4,0x12,0x4a,0x91,0x29,0xa9,0x80,0xfa,0xcf,0x2b,0xd8, + 0x6d,0xa6,0x73,0x1b,0xd6,0xb7,0x6d,0x73,0x62,0x46,0x4,0x8f,0xe6,0xc1,0xe5,0x72, + 0x51,0x5b,0xf9,0x5d,0xea,0xcb,0xbc,0xb4,0xb5,0x5c,0x8d,0x1a,0x7b,0x6e,0x64,0xe7, + 0x5a,0x2e,0xd7,0x19,0xe0,0x5d,0xbd,0x2b,0x68,0x39,0x38,0xf,0x9f,0x47,0x67,0x6c, + 0xf5,0xd,0xa8,0x42,0xc3,0xa3,0x79,0x88,0x19,0x11,0xd6,0xb7,0x6d,0x93,0xd9,0x94, + 0xb9,0x69,0xe5,0x6a,0x3e,0x1b,0xc0,0x39,0x20,0xca,0xe0,0x96,0x38,0x2f,0x0,0xe2, + 0x37,0x3f,0x4b,0x3e,0x6d,0xe5,0xec,0xce,0x2d,0xad,0xef,0x3a,0x99,0x9c,0x81,0x57, + 0x77,0xa3,0xeb,0x3a,0x4d,0xb5,0x7f,0x49,0xfd,0x28,0x3f,0x2b,0xff,0xfb,0x97,0x9c, + 0xdc,0x77,0x2f,0x66,0x6e,0xe4,0xd5,0x9e,0x99,0xb3,0x39,0x75,0xf0,0x3e,0x5e,0xfa, + 0xf0,0x15,0x6a,0x43,0x3e,0xa6,0x8d,0x5f,0x84,0xdb,0xed,0xc6,0xab,0xbb,0xc9,0xe4, + 0xc,0xb6,0xb4,0xbe,0xeb,0xd8,0x59,0xbb,0xeb,0x57,0x3f,0x4d,0x2d,0x3f,0x1d,0x67, + 0xb1,0x13,0x3b,0xc5,0x72,0xf0,0x38,0xc6,0xe6,0xdf,0x1a,0x3f,0x89,0x25,0x73,0x99, + 0x4f,0x8f,0xbc,0xed,0x38,0x8e,0x85,0x47,0x2f,0xc1,0xad,0xb9,0xa9,0x1b,0xbb,0x88, + 0x79,0x93,0xab,0x78,0xeb,0xf3,0x8f,0xf8,0xe3,0xc7,0xd3,0x70,0xf5,0x2e,0xc7,0xf9, + 0x6,0xc7,0x54,0x52,0x82,0xab,0x7f,0x5,0xdb,0x36,0x4d,0x1b,0xb4,0xf9,0x9,0xe3, + 0x16,0xe1,0xd1,0x4b,0xf0,0xe8,0x25,0x38,0x8e,0xc5,0xa7,0x47,0xde,0x76,0x62,0xc9, + 0x5c,0xf6,0xa3,0xdf,0x18,0x8f,0x1f,0x8e,0x12,0x3f,0x1d,0x27,0x60,0xf,0xf8,0x80, + 0x56,0xf0,0x81,0x12,0xc0,0x37,0xf0,0xf9,0xc3,0x3b,0xb9,0x72,0xec,0xec,0xd2,0xe5, + 0x53,0xab,0x4a,0xb8,0x64,0xfc,0x62,0x45,0xd7,0xfd,0xe4,0xcc,0x2c,0x39,0xc7,0x26, + 0x66,0x74,0x73,0xa2,0xff,0x13,0xda,0xa3,0x49,0x66,0x54,0x7a,0x69,0xaa,0xbb,0x86, + 0xe3,0xe2,0x9,0x26,0x8f,0xaf,0x38,0x6f,0x79,0x30,0xd6,0x7e,0x86,0xb6,0x2f,0x3e, + 0x64,0x6b,0x77,0x9a,0x86,0xb0,0x8f,0x31,0xa1,0x2b,0x29,0xd,0x56,0xa2,0x29,0x2a, + 0x9a,0xee,0xc6,0x34,0x13,0xec,0x39,0xba,0xd6,0xd9,0x1f,0x49,0x71,0x78,0x73,0xec, + 0x89,0x37,0x7e,0xcd,0x1f,0x8b,0xec,0xbe,0xf8,0xd3,0x10,0x45,0xfb,0x56,0xef,0x69, + 0x24,0xbc,0x40,0xc9,0xdf,0xdc,0xc9,0x95,0x53,0xe6,0x84,0x1e,0xf7,0x97,0xb8,0x3c, + 0x57,0x34,0x2c,0x52,0x42,0x81,0xd1,0x58,0xd2,0xc1,0xb2,0x4c,0x1c,0x20,0x66,0x1c, + 0xa6,0x3b,0xbe,0x97,0xb6,0x48,0x2,0x4b,0x4a,0xa6,0x96,0xe9,0x34,0x96,0xfb,0xc8, + 0x5a,0x8d,0x4,0x82,0x21,0x14,0x25,0x5f,0x12,0x7b,0xbc,0xad,0xb4,0x46,0x53,0xec, + 0xef,0x33,0x41,0x8,0x26,0x57,0xf9,0xa9,0xc,0x4c,0xa3,0x34,0x58,0x8f,0x52,0x38, + 0x47,0x73,0x9,0x85,0xfe,0x78,0xf,0x9b,0xdb,0x7f,0xef,0x24,0x52,0x56,0xf6,0x4f, + 0x1b,0xfa,0x97,0xbf,0xf1,0xe6,0x20,0xf8,0x14,0x90,0x2e,0x6,0x2f,0xa5,0xcc,0x15, + 0x13,0x10,0x45,0x4,0x4a,0x6,0x8,0x0,0xde,0x5,0x57,0x31,0xf1,0xea,0xdb,0x82, + 0xcf,0xaa,0x6e,0xb5,0x7a,0xc1,0xa4,0xb,0x45,0x79,0xe9,0xc,0x84,0x50,0xb1,0xa4, + 0x35,0x78,0x26,0x96,0xcb,0x65,0xc9,0x64,0x5b,0x49,0xa4,0x8f,0x13,0x37,0xb3,0xc4, + 0x53,0x26,0xb1,0x74,0xe,0x17,0xe0,0xf7,0x6a,0x4,0x4a,0x74,0x2,0xba,0x46,0xc8, + 0x53,0x8d,0xee,0xbe,0x0,0x97,0xee,0x1,0x7,0x34,0x4d,0xc5,0x25,0x5c,0x48,0x69, + 0xd3,0x1b,0xdb,0xc9,0x87,0xad,0xfb,0xa4,0x63,0x5a,0x91,0xf7,0xdf,0x88,0x3f,0xb5, + 0x71,0x1b,0xed,0x5,0xd0,0xe9,0x22,0x2,0x29,0xc0,0x0,0xb2,0x52,0xca,0xa1,0xe7, + 0x3,0x45,0x24,0xbc,0xa7,0x4b,0x7d,0x98,0x8a,0xbf,0x7e,0xc4,0xf3,0x98,0xd7,0xef, + 0xb9,0xbc,0xcc,0xef,0x72,0xa6,0x55,0x5d,0xae,0x54,0x96,0x4f,0x44,0x8,0x81,0x8d, + 0xc4,0x71,0x1c,0x6c,0xf9,0xf5,0x9c,0x5a,0x15,0x2a,0x8a,0xa2,0xa0,0x22,0xf2,0x5, + 0x5a,0xcf,0x11,0xe,0x75,0x6f,0x72,0xba,0xc,0x4b,0x31,0x13,0x99,0xad,0xaf,0x3f, + 0x9f,0x59,0x71,0xb4,0x9b,0x53,0x40,0xa6,0x88,0xc0,0x80,0x18,0x80,0x39,0xa8,0xf8, + 0xb3,0x1d,0x70,0x14,0xf2,0xc2,0x0,0x78,0x4f,0xb1,0xdc,0xf1,0x3,0x66,0x4e,0x9a, + 0x1e,0x58,0xe2,0x72,0xab,0x4d,0x75,0x15,0x5e,0x67,0x52,0xd5,0x4,0xc5,0xab,0x4f, + 0x45,0x77,0x7,0x8b,0x1c,0x54,0xe6,0x7d,0x4c,0xe,0x8d,0x17,0xa2,0x68,0x63,0x61, + 0x66,0xd,0xd2,0xe6,0x7e,0x5a,0x23,0x47,0x9c,0x63,0xa7,0xd2,0x8a,0xcc,0xda,0xad, + 0x9f,0x6f,0x89,0xbf,0xfa,0xc6,0x9b,0xec,0x4,0xb2,0x5,0xf0,0xc5,0x92,0x0,0x92, + 0x52,0x4a,0xe7,0x6b,0x1d,0x31,0x15,0x56,0xc3,0x53,0x20,0xe1,0x2e,0xfc,0xed,0x6, + 0x74,0xc0,0xfd,0xc0,0x43,0x2c,0xa8,0x6b,0x8,0xdc,0x25,0x35,0xb5,0x11,0x60,0xe2, + 0x68,0xaf,0xd3,0x10,0x2e,0x53,0xd2,0x99,0x26,0x74,0xbd,0x4,0xb7,0xcb,0x8b,0xa6, + 0x7b,0xf3,0xe6,0x65,0xa6,0xc9,0x5a,0x69,0x4c,0x33,0x85,0xd7,0xd3,0x42,0x7b,0xb4, + 0xcf,0x69,0xeb,0x49,0x2b,0x0,0x4e,0xce,0x6e,0x3b,0xd6,0x12,0xff,0xd5,0xea,0x7f, + 0xe1,0x23,0xc0,0x2c,0x80,0x37,0x8b,0x48,0xa4,0xb,0xe0,0xad,0xb3,0x2a,0xfb,0x7c, + 0xa7,0x94,0x5,0xad,0xb9,0xa,0x4,0x4a,0xa,0x4,0x74,0x40,0x3,0xb4,0xef,0x5c, + 0xc5,0xb8,0xe9,0xb,0xd4,0xf9,0x81,0xd2,0x92,0x6b,0xd0,0x5d,0x17,0xb,0x21,0x95, + 0xaf,0xe,0x9f,0xc2,0xc1,0xb4,0xf6,0xc6,0xfb,0x92,0x1b,0xb6,0x7d,0xe4,0xac,0xff, + 0x68,0x23,0x1d,0x40,0xae,0x48,0xcc,0xa2,0x48,0x93,0x3b,0x5d,0xe3,0x23,0x3a,0xa9, + 0x2f,0x22,0x33,0xb0,0x22,0x5a,0xe1,0xbb,0xb,0x50,0x27,0x35,0xe2,0x6f,0x9e,0xc9, + 0x98,0x51,0x55,0x84,0xfd,0x7e,0xa5,0xd2,0xe5,0x51,0x46,0x3,0xc2,0xca,0x38,0xdd, + 0x49,0xc3,0x39,0xd9,0x13,0x21,0xb2,0x6b,0x7,0x9d,0x6d,0xed,0x24,0xb,0x3d,0xf, + 0x1b,0xb0,0xa,0x92,0x2a,0x68,0x3c,0x27,0x87,0x1,0x6a,0x44,0xff,0xec,0x51,0x30, + 0x33,0x51,0x48,0x88,0xca,0xe9,0x69,0xbe,0x20,0x3,0x89,0xd2,0x2e,0x12,0xa7,0xe8, + 0xd3,0xc9,0xbb,0xcd,0x37,0xc3,0xf1,0x3f,0xa3,0x79,0x95,0xb7,0x5a,0x76,0xb0,0x2e, + 0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/themes.png + 0x0,0x0,0x1e,0xce, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x48,0x0,0x0,0x0,0x3e,0x8,0x6,0x0,0x0,0x0,0x88,0x96,0x5d,0x9b, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,0x1, + 0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0x2, + 0xf,0x6,0x16,0xbd,0x9e,0x0,0xf6,0x0,0x0,0x1e,0x4e,0x49,0x44,0x41,0x54,0x78, + 0xda,0xed,0x7b,0x79,0x70,0x5d,0xd5,0x99,0xe7,0xef,0xdc,0x73,0xee,0xf6,0xf6,0x45, + 0x8b,0x25,0x4b,0xb2,0x2c,0xcb,0x2b,0xc2,0xd8,0x18,0x1a,0x1c,0xa0,0x3,0xd,0x84, + 0x49,0x9c,0x9,0x19,0x12,0x77,0x43,0xa7,0x92,0x6e,0x12,0xda,0xa9,0x49,0x87,0x9a, + 0x49,0x57,0x65,0xc8,0x74,0x15,0x5d,0x21,0xcb,0x54,0x66,0xd2,0xdd,0x33,0xd5,0x99, + 0x49,0x8a,0x0,0x49,0x27,0x53,0xd9,0x27,0x24,0xe5,0x9,0xa4,0x13,0xe8,0xe0,0x40, + 0xc,0x5e,0xc0,0x6,0x1b,0x64,0xcb,0xb2,0xb5,0x5a,0xd2,0xd3,0xd3,0xdb,0xdf,0x7d, + 0x77,0x3d,0xcb,0xfc,0x21,0xe9,0xc5,0x10,0x42,0x36,0x20,0x4c,0x57,0x7f,0x55,0xaf, + 0x9e,0xde,0xd5,0xad,0x7b,0xcf,0xf9,0xdd,0xdf,0xf7,0x9d,0xef,0xfb,0x9d,0xef,0x2, + 0xff,0x6a,0xff,0x6a,0xff,0x6a,0xff,0x52,0x6c,0xdf,0xbe,0xbd,0xbf,0xd1,0xf9,0x6f, + 0xba,0x7a,0xcf,0xef,0x7d,0xcc,0xe4,0xf5,0xb8,0xc9,0x87,0x3e,0xf4,0x1,0x0,0xc0, + 0xe7,0x3f,0xff,0x0,0x0,0xe0,0xef,0xfe,0xdb,0x15,0xe4,0xe4,0xb,0x9d,0xcc,0xf7, + 0x35,0x23,0x8c,0x88,0x1e,0x72,0x50,0x1e,0x11,0x8d,0x73,0x8a,0x30,0xc,0x22,0xcf, + 0x6b,0x6,0x4a,0x49,0xff,0xe9,0xa3,0x4f,0xa8,0xb,0xaf,0xf3,0xd8,0x63,0x8f,0x1, + 0x0,0xae,0xbb,0xee,0xba,0x97,0xbd,0xcf,0xd0,0xd0,0x10,0x26,0x26,0x26,0x5e,0xd5, + 0xb1,0xb3,0xdf,0xc7,0x53,0xa9,0x35,0x52,0x6,0x94,0xb6,0x11,0x20,0x3b,0x1,0x72, + 0x31,0x80,0xb5,0x20,0x24,0x1,0x42,0x28,0x88,0x76,0x8a,0x10,0xed,0xa7,0x0,0xf9, + 0x9,0x0,0xf7,0x5f,0x3c,0x83,0xfe,0xea,0xaf,0xfe,0x12,0x7f,0xff,0xf7,0xff,0xb, + 0x0,0xf0,0xb7,0x9f,0xfd,0x28,0x9b,0x98,0x2c,0xd,0x7a,0x5e,0x70,0x63,0x18,0xe9, + 0x3b,0x43,0x6e,0xc,0x73,0xc1,0x6,0xa4,0xd2,0xb3,0x52,0x31,0xb,0xd0,0x69,0xc4, + 0xa3,0x99,0x30,0xf4,0xff,0x9,0xa,0x9f,0xf8,0xc9,0x3f,0x7d,0xbe,0xf4,0x8d,0x6f, + 0x7c,0x3,0x0,0x70,0xdb,0x6d,0xb7,0xbd,0xe8,0xba,0xf7,0xdc,0x73,0xf,0x2b,0x14, + 0xa,0xda,0x17,0xbe,0xf0,0x5,0xe,0x40,0xae,0x1e,0xbf,0xe5,0x96,0x5b,0x0,0x0, + 0xf,0x3e,0xf8,0xe0,0x1b,0x8b,0x41,0xb3,0xb3,0xb3,0xe8,0xef,0xef,0x6f,0xff,0xfe, + 0xc0,0x7,0xfe,0xc,0xad,0x96,0xdb,0x6,0x7,0x0,0x66,0x66,0xca,0x43,0x11,0xc7, + 0x5b,0x85,0x34,0xff,0x52,0x28,0x7b,0xa3,0x20,0x9,0x28,0x1a,0x3,0x21,0x31,0xe8, + 0xd4,0x82,0xc6,0xc,0xd0,0xd0,0xdb,0xa8,0xe9,0xad,0x22,0x94,0x32,0x2f,0x4,0xe6, + 0xce,0x3b,0xef,0xc4,0x55,0x57,0x5d,0x45,0xd,0xc3,0x30,0x3a,0x3a,0x3a,0xf2,0x94, + 0xd2,0x7c,0x14,0x45,0xc6,0xa5,0x97,0x5e,0xea,0x1e,0x38,0x70,0xa0,0x5a,0xa9,0x54, + 0xaa,0x87,0xe,0x1d,0xf2,0x1f,0x7c,0xf0,0x41,0x5,0x0,0x97,0x5d,0x76,0x19,0x9e, + 0x7e,0xfa,0xe9,0xd7,0x1f,0x20,0xa5,0x14,0x8,0x21,0xbf,0xf2,0x9c,0x3b,0xee,0xf8, + 0xf3,0x17,0x1d,0xfb,0x9b,0xbf,0xf9,0x8f,0x3,0x8b,0x85,0xca,0x1f,0x47,0xa1,0xf6, + 0xde,0x90,0xa7,0xd7,0x85,0x32,0x7,0xae,0x92,0x0,0x14,0xa0,0x8,0x94,0x90,0x0, + 0x11,0x0,0xa1,0x9c,0x52,0x2b,0x5a,0xfe,0xc7,0xcf,0x4d,0xd7,0x75,0x8d,0x52,0xda, + 0x43,0x29,0xbd,0x9,0xc0,0xce,0x58,0x2c,0xd6,0x6f,0x9a,0xa6,0xae,0x94,0xa,0xa4, + 0x94,0xd3,0x8f,0x3d,0xf6,0xd8,0x23,0xb6,0x6d,0x1f,0xad,0x56,0xab,0xc5,0xdf,0x4b, + 0xc,0x9a,0x9d,0x18,0x5b,0xf6,0xc9,0x5f,0x2,0xce,0x32,0x7b,0x14,0x0,0xf2,0xa2, + 0x73,0x1e,0x3b,0xf0,0xd,0xfa,0xf0,0x43,0x4f,0x6d,0x2d,0x97,0x5a,0xff,0x4e,0xaa, + 0xf8,0xcd,0xa0,0xd6,0x26,0xd,0x79,0x50,0x95,0x0,0xa4,0x1,0x29,0x23,0x28,0x29, + 0xa0,0x94,0x84,0x94,0x12,0x4a,0x29,0x9,0xa2,0x9,0x8d,0xa8,0x17,0x1,0x34,0x32, + 0x32,0xd2,0xa9,0xeb,0xfa,0x95,0xc9,0x64,0xf2,0x8f,0x4d,0xd3,0x1c,0xd1,0x75,0x3d, + 0x61,0x59,0x16,0x5d,0xbb,0x76,0xad,0xa0,0x94,0x96,0xa,0x85,0x42,0x9f,0x52,0xca, + 0xfe,0xd6,0xb7,0xbe,0xf5,0x10,0x0,0xef,0xd5,0x60,0xcf,0xaf,0x5,0x90,0x52,0xa, + 0x7f,0xff,0x5f,0x3f,0x86,0xfe,0xa1,0xcd,0xab,0xbf,0x49,0xb9,0x30,0x49,0x4f,0x8d, + 0x9f,0x35,0x23,0xa1,0x5b,0x50,0x94,0x78,0x5e,0xa3,0x49,0x83,0xef,0x85,0xff,0xe6, + 0x16,0xa2,0x0,0x40,0x89,0x73,0xf8,0xca,0x17,0xbf,0x4b,0x1d,0x2f,0xd0,0x1e,0xf9, + 0xf1,0xf1,0x11,0x21,0xe8,0xbf,0x95,0xca,0xf8,0xb,0x8d,0xa5,0xfa,0x74,0x2d,0xf, + 0x8a,0x14,0xc,0x49,0xc0,0x45,0x4,0x1e,0x69,0x88,0xb8,0x84,0x94,0xaa,0x7d,0x7d, + 0x25,0x85,0xc6,0x95,0x6f,0xbc,0x64,0x1c,0x3,0x52,0xca,0x37,0x9b,0xa6,0x79,0x35, + 0x63,0x2c,0xa6,0x69,0x1a,0x18,0x63,0xc8,0xe5,0x72,0x88,0xc5,0x62,0xa9,0xa9,0xa9, + 0xa9,0x21,0xd7,0x75,0x5b,0x1b,0x37,0x6e,0x9c,0x9a,0x9b,0x9b,0x3b,0xe1,0xba,0x6e, + 0xf8,0x9a,0x3,0xa4,0x5e,0xfc,0x10,0xdb,0x6c,0x27,0xc0,0x66,0xcf,0x73,0xdf,0xdc, + 0x68,0x8a,0xe1,0x30,0x82,0x67,0xea,0xe2,0xa1,0xe1,0x75,0x6f,0x7a,0x16,0x78,0xc0, + 0x1,0x0,0x68,0x3d,0xac,0xe1,0xb4,0x86,0x16,0x96,0xaa,0xd7,0xb4,0x7c,0xf5,0x36, + 0x21,0x8d,0xab,0xd,0xab,0x37,0x4f,0xcd,0x3c,0x34,0x96,0x82,0x10,0xa,0x5c,0x8, + 0x44,0x9c,0x22,0x8a,0x38,0xa2,0x90,0x22,0x8a,0x4,0xb8,0x20,0x88,0x22,0x45,0x95, + 0x92,0x9,0xdf,0x6d,0xad,0x1,0x30,0xbb,0x1a,0x80,0x3d,0xcf,0x5b,0x6b,0xdb,0xf6, + 0xa6,0x30,0xc,0x29,0xa5,0x14,0x84,0x10,0x50,0x4a,0xa1,0xeb,0x3a,0x4c,0xd3,0xc4, + 0xe5,0x97,0x5f,0xe,0x21,0xc4,0xee,0x1d,0x3b,0x76,0x2c,0xb4,0x5a,0xad,0x73,0xaf, + 0x39,0x40,0x8d,0xc6,0xd2,0x2f,0xb8,0x53,0xd0,0x9a,0x1b,0x3c,0xfc,0xd4,0x4f,0xff, + 0x60,0x7e,0xa1,0x72,0x4d,0xa1,0x58,0xbf,0xd4,0xf5,0xb5,0xb5,0x42,0x32,0x9f,0x31, + 0xad,0x6b,0x7e,0xc9,0x3e,0x74,0xef,0x7d,0xf7,0x9d,0x6d,0x35,0x1a,0xe4,0xef,0xfe, + 0xf6,0xb,0x7d,0x9c,0x27,0x2e,0xd6,0x6d,0xfd,0x72,0x9b,0xe2,0x12,0x5,0x2b,0x63, + 0x27,0xba,0xa1,0x1b,0x29,0x80,0xe8,0x90,0x22,0x42,0x18,0x46,0x8,0xc2,0x10,0x61, + 0xc8,0x11,0x32,0xbe,0xfc,0xcd,0x15,0x0,0xa9,0x49,0xa9,0xd9,0x84,0x9a,0xb9,0xcd, + 0x3b,0xff,0x2c,0x36,0x76,0xfc,0x2b,0xe,0x0,0x22,0xa5,0xcc,0xb,0x21,0xba,0x85, + 0x10,0x44,0x8,0x1,0x21,0x4,0x38,0xe7,0x8,0xc3,0x10,0xba,0xae,0xa3,0xb7,0xb7, + 0x17,0x9b,0x37,0x6f,0x5e,0xdf,0x6c,0x36,0xaf,0xcf,0x64,0x32,0x87,0xef,0xbb,0xef, + 0xbe,0xc7,0x0,0xd4,0x5e,0x55,0x80,0x2e,0xc,0xc0,0xa9,0x54,0xe7,0x85,0x2c,0xa2, + 0x67,0xc7,0x47,0xfb,0x4f,0x8d,0xcd,0xbe,0x73,0x6e,0xa1,0x72,0xcb,0xf9,0xf9,0xea, + 0x9b,0xa,0x8b,0x1e,0x6d,0x5,0xc,0x94,0xd9,0x48,0x27,0xcd,0xd,0x49,0x42,0xaf, + 0xa4,0x5a,0xec,0x9c,0x44,0x40,0xfc,0xd0,0x1b,0x14,0x92,0x6c,0x30,0xec,0xbc,0x6d, + 0x27,0x93,0xd0,0xf5,0x24,0xc,0x2b,0x86,0x30,0xc,0x11,0x4,0x2e,0xc,0xc6,0xc0, + 0x28,0x83,0xae,0x6b,0x8,0x75,0x8e,0x50,0x8f,0x10,0xe8,0x14,0x7a,0xa4,0x40,0xa0, + 0xa0,0x94,0xb4,0xb9,0xb0,0x3b,0xb2,0x9d,0x3,0x31,0x0,0xe,0x0,0xa6,0x94,0x32, + 0xa5,0x94,0xa6,0x52,0x8a,0x0,0x80,0xa6,0x69,0xd0,0x34,0xd,0x4a,0x29,0x8,0x21, + 0x10,0x8b,0xc5,0xb0,0x7e,0xfd,0x7a,0xc6,0x18,0xbb,0x48,0x8,0x71,0xdb,0x9d,0x77, + 0xde,0x9,0xa5,0xd4,0x4f,0x6e,0xbc,0xf1,0xc6,0xc8,0xb6,0x6d,0xf1,0xc4,0x13,0x4f, + 0x88,0x6f,0x7e,0xf3,0x9b,0x62,0x7c,0x7c,0x5c,0xbd,0x74,0xce,0x8f,0x3e,0xfa,0x28, + 0x6e,0xbc,0xf1,0xc6,0xdf,0x3a,0x48,0x5b,0xf3,0xf3,0x67,0xaf,0x2f,0x2e,0x95,0xde, + 0xf5,0xc2,0xe8,0xd4,0x1f,0xce,0xcc,0x39,0xfd,0xa5,0x8a,0xa0,0x42,0x1a,0xd0,0xd, + 0x13,0x86,0xa9,0x43,0x2a,0x9d,0x11,0x2d,0x36,0x4c,0xd,0xbd,0x2f,0x96,0x4c,0xa2, + 0xe1,0x4c,0x99,0x8e,0xd3,0x30,0xfb,0xd6,0xd,0x22,0x97,0xef,0x81,0x4e,0xd,0xd4, + 0xeb,0x65,0x4c,0x4c,0x9d,0xc0,0xf9,0xf3,0xe7,0xd0,0xd9,0xb9,0x16,0xdd,0x6b,0xd6, + 0x23,0x95,0xe9,0x46,0x18,0x72,0xf8,0x1,0x5,0x65,0x1c,0x2c,0xe4,0x0,0x14,0x8, + 0x41,0x4a,0xc9,0x60,0x63,0x2e,0x49,0x8e,0x1,0x28,0x2,0x88,0x82,0x20,0x70,0x85, + 0x10,0x2e,0x0,0xc5,0x18,0x83,0x61,0x18,0x30,0xc,0x3,0x9a,0xa6,0x41,0x4a,0x89, + 0x20,0x8,0x90,0x4a,0xa5,0xb0,0x79,0xf3,0x66,0x2b,0x93,0xc9,0xdc,0x18,0x86,0xe1, + 0x80,0x10,0xe2,0xed,0xb5,0x5a,0x6d,0x6e,0x76,0x76,0x76,0x3c,0x8,0x82,0xd1,0xf1, + 0xf1,0xf1,0x53,0xbf,0x2c,0xf9,0xdc,0xbb,0x77,0x2f,0xbe,0xf3,0x9d,0xef,0xbc,0x32, + 0x40,0xab,0xec,0x59,0x61,0x4d,0xbc,0x56,0x2b,0xf,0x8c,0x9d,0x3e,0xf5,0xe6,0xe9, + 0x99,0x85,0x9b,0xa6,0x67,0x4b,0x57,0x9d,0x3e,0x5b,0xef,0xac,0xd6,0x5,0x84,0x34, + 0x60,0xdb,0x26,0x2c,0xcb,0x84,0x65,0x19,0xb0,0x2c,0x13,0x94,0xe9,0x6,0xe7,0xca, + 0x70,0x9a,0x4d,0x54,0xab,0x15,0xb8,0x6e,0x13,0xbd,0x3c,0x84,0x4e,0x1,0x4d,0x8b, + 0xd0,0xa8,0x2f,0x20,0xa,0x1b,0x88,0xd9,0x3a,0x12,0x9,0x1b,0xc9,0x54,0xc,0xc9, + 0xa4,0x8d,0x20,0x88,0x40,0x99,0x6,0x4d,0xb,0x41,0x35,0x2,0x42,0x34,0x68,0x94, + 0xda,0x51,0xe8,0x6c,0x92,0x9c,0x74,0x1,0x78,0x61,0x65,0x6c,0xbe,0xa6,0x69,0x2e, + 0x63,0x4c,0xa,0x21,0xe0,0xba,0x2e,0x34,0x4d,0x6b,0x3,0xb5,0xca,0xaa,0x44,0x22, + 0x41,0x74,0x5d,0xcf,0x84,0x61,0x78,0x79,0x18,0x86,0x1b,0x72,0xb9,0x5c,0xa9,0xb7, + 0xb7,0xf7,0xfc,0x25,0x97,0x5c,0x72,0xee,0xdd,0xef,0x7e,0xf7,0x58,0xa5,0x52,0x99, + 0x9c,0x9d,0x9d,0x9d,0x39,0x73,0xe6,0xcc,0xf9,0xcf,0x7e,0xf6,0xb3,0x25,0x42,0xc8, + 0x2b,0x26,0x99,0xec,0x97,0x4,0x66,0xa,0x60,0x40,0x29,0xbc,0xc5,0x73,0xfd,0x7f, + 0x5f,0x5c,0x6a,0x6e,0x1a,0x3b,0x5b,0x22,0xd3,0x73,0x1c,0x4c,0x37,0x91,0xcb,0x26, + 0x90,0x4c,0x18,0xb0,0x6d,0x1d,0xb6,0x6d,0x20,0x11,0xb3,0xa0,0x11,0x85,0x56,0xab, + 0x8a,0xc5,0x85,0x49,0x38,0xcd,0x12,0x34,0xd,0x70,0x1a,0x45,0xd4,0x2c,0x6,0xa6, + 0x33,0xb8,0xad,0x32,0x3a,0xbb,0x3a,0x31,0xbc,0x71,0x33,0xec,0x78,0x1a,0xb6,0x9d, + 0x4,0xa5,0xc,0x94,0x12,0x10,0xd,0x20,0x44,0x41,0xd3,0x14,0x34,0xa6,0x43,0x63, + 0xcc,0xf0,0x5a,0xc6,0x26,0x1e,0xb1,0xbe,0x36,0x8d,0x2d,0xcb,0xa5,0x94,0xb6,0x94, + 0x52,0xaa,0xd1,0x68,0xc0,0xf7,0x7d,0x24,0x12,0x9,0x28,0xa5,0x60,0x9a,0x26,0x28, + 0xa5,0x10,0x42,0x20,0x8a,0x22,0xd8,0xb6,0xd,0xdb,0xb6,0x35,0x0,0x1d,0x2b,0x9f, + 0x2d,0x9e,0xe7,0xdd,0xb0,0xb8,0xb8,0xe8,0x28,0xa5,0xc6,0x7c,0xdf,0x3f,0x1c,0x4, + 0xc1,0xc1,0xbb,0xef,0xbe,0xfb,0xe9,0xd9,0xd9,0xd9,0xa9,0x4a,0xa5,0x12,0xed,0xdf, + 0xbf,0x5f,0xad,0x2,0x73,0xe9,0xa5,0x97,0xe2,0xd8,0xb1,0x63,0x2f,0xf,0x90,0xe3, + 0xb8,0x1a,0x21,0x24,0x1e,0x8f,0x9b,0x9b,0x29,0x65,0x23,0x52,0x91,0x22,0xd5,0x2d, + 0x3d,0xdf,0x99,0xef,0x60,0x46,0x98,0xf2,0x3,0x9,0x42,0x34,0x98,0xa6,0xe,0xdb, + 0xb2,0x90,0x88,0x59,0x48,0xa7,0x12,0xa8,0xd7,0xa,0xa8,0x95,0xa7,0xe1,0xbb,0x25, + 0xac,0x5b,0xd7,0x87,0x5c,0xbe,0xb,0x53,0x93,0x93,0xa8,0xd7,0x97,0x90,0xef,0xe8, + 0xc4,0xe6,0xcd,0x5b,0x90,0xef,0xe8,0x86,0xa6,0xe9,0x28,0x95,0x96,0x10,0x86,0x11, + 0x4,0x14,0xc,0xc3,0x2,0x21,0x26,0xb4,0x95,0xba,0x47,0xd3,0x24,0x94,0x92,0xba, + 0x65,0x5b,0x1b,0xa2,0xd0,0xdb,0xda,0xdf,0xbf,0xb3,0x6b,0x76,0xf6,0x78,0x31,0x97, + 0xcb,0x96,0xa5,0x54,0x8b,0xc5,0x62,0x51,0x34,0x9b,0x4d,0xd4,0x6a,0xcb,0xf1,0x37, + 0x93,0xc9,0x60,0x70,0x70,0x10,0x3b,0x77,0xee,0x44,0x3c,0x1e,0x7,0x21,0xe4,0x65, + 0x93,0x59,0xd3,0x34,0xd1,0xdd,0xdd,0x9d,0x48,0x26,0x93,0x17,0xa5,0xd3,0xe9,0x1, + 0xc6,0xd8,0xd,0x9a,0xa6,0x1d,0xe7,0x9c,0xff,0x33,0xa5,0xf4,0x21,0x0,0xf3,0x2f, + 0xe7,0x7a,0xf4,0xa5,0x7,0xee,0xbe,0xfb,0x6e,0x10,0x42,0xc,0x42,0x54,0x22,0xc, + 0xa3,0xb0,0x52,0xa9,0x3f,0xef,0xfa,0x72,0x54,0x37,0x8c,0xb9,0x5c,0x5a,0xa7,0x8c, + 0xaa,0x4,0x94,0x30,0xc,0xc3,0x44,0x3c,0x6e,0x23,0x99,0xb4,0x11,0x8b,0x69,0x8, + 0xfd,0xa,0x7c,0xb7,0xc,0xd3,0xa0,0x18,0x1c,0x5c,0x8f,0xfe,0x81,0xf5,0x10,0x22, + 0x42,0x22,0x1e,0x43,0x77,0x77,0x17,0x86,0x86,0x36,0xc2,0xf7,0x3d,0x8c,0x8f,0x8f, + 0x62,0xec,0xd4,0x49,0xcc,0xce,0x9c,0x43,0xb3,0x51,0x43,0x32,0x95,0x41,0xcc,0x8e, + 0x81,0x52,0x6,0xa5,0x14,0x94,0x5a,0xe,0x43,0x80,0x66,0x72,0xc1,0x5d,0x66,0x24, + 0xcb,0x13,0xe3,0x87,0xcf,0xdc,0x76,0xeb,0xde,0xee,0x6a,0xb5,0x76,0xe9,0xc4,0xe4, + 0xe4,0xb6,0xc9,0xc9,0x49,0xb3,0x50,0x28,0x40,0xd3,0x34,0x78,0x9e,0x7,0xc7,0x71, + 0x10,0x8b,0xc5,0x56,0x99,0x3,0x4d,0xd3,0x7e,0xb1,0xe8,0x24,0x4,0x9a,0xa6,0x41, + 0x8,0xc1,0x82,0x20,0x88,0x3b,0x8e,0x93,0x6f,0xb5,0x5a,0x3,0xae,0xeb,0xe6,0x4b, + 0xa5,0x12,0x49,0xa7,0xd3,0xee,0xf4,0xf4,0x74,0x15,0x80,0x5c,0x58,0x58,0xf8,0xe5, + 0x2e,0x66,0xdb,0x16,0x0,0x78,0x8f,0x3c,0xf2,0xe8,0x91,0xbb,0xef,0xfe,0x9b,0x43, + 0x87,0xf,0x3f,0x25,0x95,0x52,0x3a,0xa4,0x37,0x74,0x6a,0x74,0xf4,0x1d,0xc7,0x4f, + 0x4c,0xee,0x9d,0x87,0xb8,0x5c,0x2a,0x5,0x2,0x9,0x21,0x7c,0x78,0xae,0xf,0x8d, + 0xf8,0xc8,0xe5,0x92,0x60,0x2c,0x8f,0x5c,0x2e,0x8f,0x5c,0x36,0x8b,0x2b,0xaf,0xd8, + 0xd,0xcb,0x34,0xc1,0x18,0x83,0xe7,0x7,0x38,0xf1,0xc4,0x61,0x3c,0xf2,0xc8,0x43, + 0x68,0x34,0x1a,0x60,0x94,0xa1,0xbf,0x7f,0x8,0x6b,0xfb,0x7,0x90,0xcb,0xe5,0x61, + 0x98,0x26,0xb8,0x10,0x10,0x42,0x42,0x8,0x89,0x44,0x22,0x1,0xcf,0x75,0xb7,0xa7, + 0xd2,0xd9,0x9b,0xf7,0xbc,0xfb,0xc3,0x67,0x6a,0xb5,0x6a,0x5f,0xa3,0xd1,0xe8,0x18, + 0x3b,0x7d,0x9a,0x2e,0x14,0xa,0x60,0x8c,0xa1,0xa3,0xa3,0x3,0x52,0x4a,0x94,0x4a, + 0x25,0x1c,0x3f,0x7e,0x1c,0x9c,0x73,0x6c,0xda,0xb4,0x9,0x8c,0xfd,0x7c,0x5a,0x86, + 0x61,0xc0,0x34,0x4d,0x68,0x9a,0x86,0x28,0x8a,0xe0,0x79,0x1e,0x7c,0xdf,0xc7,0x4a, + 0xa0,0x4f,0xe9,0xba,0xfe,0x66,0xa5,0x54,0x8f,0x6d,0xdb,0xf6,0xf0,0xf0,0x70,0xc5, + 0x71,0x9c,0xc5,0x42,0xa1,0x20,0x5e,0x69,0x15,0x53,0x0,0xc4,0x5b,0xde,0x72,0xa3, + 0xba,0x0,0xfd,0x48,0x29,0x35,0xb5,0x75,0xe4,0xa2,0xef,0x1f,0x7b,0x76,0xb4,0xdb, + 0x60,0xc1,0xb0,0x22,0x2a,0x5d,0x2c,0x4c,0x68,0xa5,0xa5,0x69,0x68,0x24,0x40,0x47, + 0x3e,0x83,0x5c,0x2e,0x87,0x30,0x74,0xe1,0xba,0x4d,0x0,0x11,0xfa,0xfb,0x6,0xd0, + 0xd9,0x99,0x47,0xbd,0x5e,0xc5,0xf7,0xbf,0xf7,0x7d,0x1c,0x39,0xfc,0x33,0x54,0x2a, + 0x15,0xec,0xd8,0xb1,0x13,0xeb,0x6,0x87,0xd0,0xd3,0x33,0x80,0xbe,0xfe,0x75,0x30, + 0xcc,0x18,0xc2,0x50,0x20,0xb2,0xd,0x70,0x2e,0x10,0x84,0x2,0x52,0x72,0x68,0x9a, + 0xd6,0x9d,0x49,0xc7,0x6e,0x48,0xd8,0x99,0x44,0xa3,0xd9,0xca,0x1a,0x6,0xdb,0x12, + 0x8b,0xc7,0x4d,0x29,0x25,0x96,0x96,0x96,0xf0,0xfc,0xf3,0xcf,0x63,0xc7,0x8e,0x1d, + 0xe8,0xef,0xef,0xc7,0xcc,0xcc,0xc,0x1a,0x8d,0x6,0xce,0x9d,0x3b,0x87,0x28,0x8a, + 0xe0,0xba,0x2e,0xa4,0x94,0xc8,0xe7,0xf3,0x18,0x19,0x19,0xc1,0xa6,0x4d,0x9b,0x40, + 0x29,0x5,0xa5,0xb4,0x9d,0x1a,0xac,0xe4,0x52,0x9a,0x61,0x18,0x5b,0xe2,0xf1,0xf8, + 0xe5,0x3d,0x3d,0x3d,0xc7,0x84,0x10,0xd5,0x42,0xa1,0xe0,0xfd,0xaa,0x3c,0x48,0xbd, + 0xc,0x45,0x3,0x0,0xe3,0x5f,0xfe,0xd2,0x7d,0x13,0x54,0x53,0x75,0x8e,0x30,0x15, + 0xf8,0xd,0xb8,0xad,0x3a,0x92,0x49,0x1b,0x89,0x64,0x6,0xf9,0x7c,0x37,0x3c,0xb7, + 0x9,0xaa,0x11,0x68,0x50,0x48,0xa5,0xe2,0xd0,0x19,0x60,0xe8,0x1a,0xea,0xf5,0xa, + 0x32,0x99,0x34,0xae,0xbe,0xea,0x6a,0x5c,0x7b,0xdd,0xf5,0xe8,0xe9,0xed,0x87,0x61, + 0xc4,0xa0,0xa0,0xc3,0xf7,0x23,0x84,0x1,0x47,0x18,0xa,0x38,0xad,0x10,0xb5,0x7a, + 0xb,0xb5,0x5a,0x3,0x51,0x50,0xd5,0x6c,0xc3,0x5b,0x93,0x4a,0x18,0x37,0xea,0xba, + 0xa1,0xdb,0xb6,0x6d,0x8c,0x8c,0x8c,0xa0,0xa3,0xa3,0x3,0xb,0xb,0xb,0xa8,0x56, + 0xab,0x68,0xb5,0x5a,0x10,0x42,0x80,0x31,0x6,0x21,0x4,0x2a,0x95,0xa,0xa,0x85, + 0x2,0x5a,0xad,0x16,0x0,0xa0,0x58,0x2c,0xb6,0x93,0xca,0xa1,0xa1,0xa1,0x76,0x6, + 0x7e,0x61,0xe,0xb5,0x32,0xef,0xac,0x61,0x18,0x31,0x29,0x25,0xf9,0x95,0xcb,0xfc, + 0x2b,0x9b,0xe6,0x30,0xc6,0xea,0x61,0x18,0xf4,0xc6,0x62,0x26,0xed,0xe9,0xe9,0x43, + 0x77,0x77,0x17,0xba,0xbb,0x3b,0x91,0x48,0xc4,0xa0,0xeb,0x1a,0x6c,0xdb,0x86,0xce, + 0x8,0x18,0x5d,0xbe,0x5e,0x14,0x9,0xac,0xe9,0xe9,0x41,0x5f,0xff,0x0,0xb6,0x6e, + 0xd9,0x8a,0x4d,0x9b,0xb7,0x40,0x2a,0xd,0x95,0x4a,0x3,0xcd,0xa6,0x8b,0x20,0xe0, + 0xf0,0xfd,0x8,0xe5,0xaa,0x83,0x42,0xb1,0x81,0x52,0xb9,0x82,0x5a,0x69,0x6,0xb6, + 0xd1,0x40,0x57,0x9e,0x21,0x11,0x5f,0x13,0xb7,0x6d,0x1b,0x99,0x4c,0x16,0xc3,0xc3, + 0x1b,0xa1,0xeb,0x3a,0x8a,0xc5,0x22,0x9e,0x78,0xe2,0x9,0x78,0x9e,0x87,0xc5,0xc5, + 0x45,0xac,0x5b,0xb7,0xe,0xb9,0x5c,0xe,0x9c,0x73,0x38,0x8e,0xd3,0x2e,0x41,0x0, + 0x60,0x7e,0x7e,0x1e,0x9c,0x73,0x24,0x12,0x9,0x64,0x32,0x19,0xe8,0xba,0xbe,0x32, + 0xae,0x8,0xbe,0xef,0x23,0xc,0x43,0x8,0x21,0x8a,0xba,0xae,0x2f,0x29,0xa5,0xc4, + 0xef,0x24,0x77,0xe4,0xf3,0xf9,0x82,0xe7,0x47,0xa7,0xd,0x8f,0xf,0x18,0x2c,0x6f, + 0x34,0x1a,0x6,0xe6,0xe7,0xce,0xe3,0xc4,0xb3,0x47,0x10,0x46,0x3e,0xfa,0xfa,0xfb, + 0x70,0xf1,0x45,0x17,0x61,0xdd,0x40,0x3f,0xa0,0x0,0xce,0x15,0x8,0x65,0xd8,0xbd, + 0xfb,0x2a,0xc4,0x6c,0xb,0xd9,0x6c,0x16,0xba,0xc1,0xe0,0xfb,0x11,0x18,0x23,0x30, + 0x4d,0xa,0x21,0x25,0x6a,0x4d,0xf,0xc5,0x52,0x13,0xe5,0x4a,0x13,0x4e,0xb3,0x86, + 0xc8,0x9f,0x87,0x45,0x5,0x8,0xc9,0x41,0x4a,0xb9,0x12,0x9b,0x4,0xc2,0x30,0x44, + 0x2a,0x95,0xc2,0xd0,0xd0,0x10,0x28,0xa5,0x18,0x1b,0x1b,0x83,0xe7,0x79,0x18,0x1c, + 0x1c,0x44,0x2c,0x16,0x43,0xb3,0xd9,0xc4,0xc8,0xc8,0x8,0x18,0x63,0x88,0xc7,0xe3, + 0x48,0x26,0x93,0x2b,0x19,0x7c,0x80,0x5a,0xad,0xd6,0x66,0x4f,0xad,0x56,0xc3,0xf9, + 0xf3,0xe7,0x71,0xfe,0xfc,0x79,0xd4,0x6a,0xb5,0x93,0x41,0x10,0xfc,0x4c,0x4a,0xf9, + 0x82,0x10,0x22,0xfc,0x9d,0x0,0xea,0xe8,0xec,0x18,0xab,0xd7,0x9d,0x47,0x88,0xe6, + 0xe,0x85,0x41,0x38,0xe2,0xba,0x4d,0x7b,0x76,0x66,0x2,0x8b,0x8b,0x73,0x60,0x94, + 0x20,0x9f,0xcf,0x81,0xf3,0x68,0x25,0x27,0xe1,0x10,0x8a,0x40,0x29,0x82,0xae,0xae, + 0x1e,0x58,0xa6,0xe,0xc6,0xc8,0x8a,0xbe,0x43,0x61,0x5b,0x6,0x78,0xc4,0x97,0xeb, + 0xbc,0x20,0x42,0xd3,0x9,0xe0,0x38,0xe,0x7c,0xb7,0xe,0xc1,0x1b,0x20,0x4a,0x7, + 0xa0,0x41,0x4a,0xb5,0xb2,0xc2,0x29,0x70,0xce,0x21,0xa5,0x84,0x65,0x59,0x48,0x26, + 0x93,0xe8,0xec,0xec,0x4,0xe7,0x1c,0x7d,0x7d,0x7d,0x6d,0x37,0x6b,0x36,0x9b,0x28, + 0x95,0x4a,0x88,0xa2,0x8,0xa9,0x54,0xa,0x6b,0xd7,0xae,0x45,0x67,0x67,0x27,0x82, + 0x20,0x68,0xaf,0x7a,0x67,0xce,0x9c,0xc1,0xd4,0xd4,0x94,0x53,0x2c,0x16,0x4f,0x79, + 0x9e,0xf7,0x7d,0xd7,0x75,0x9f,0x38,0x76,0xec,0x58,0xe3,0xb7,0xd2,0x83,0x2e,0xcc, + 0x2b,0xde,0xf4,0xa6,0xab,0xa7,0xf,0x1c,0x78,0xec,0xa1,0xc0,0xf7,0xae,0x71,0x9c, + 0xea,0x40,0x69,0x69,0xc1,0xf6,0x3c,0x7,0x6b,0xd6,0xac,0x41,0xdf,0xda,0xb5,0xe8, + 0x5e,0xd3,0xd,0xd3,0xb2,0xe0,0x5,0x3e,0x82,0x88,0x43,0x27,0x1a,0x38,0x97,0x10, + 0x22,0x80,0xe7,0xf9,0xd0,0x75,0xd,0xc9,0x84,0xd,0xc6,0x28,0x4c,0x53,0x47,0xe0, + 0x33,0x30,0xaa,0x81,0x0,0x88,0x22,0x9,0xdf,0x6b,0xc1,0xf7,0xea,0xd0,0x44,0x8, + 0x5,0xfd,0x17,0x54,0x61,0x4a,0x29,0xc2,0x30,0x84,0xe7,0x79,0x98,0x99,0x99,0x81, + 0x61,0x18,0xd8,0xb0,0x61,0x3,0x3a,0x3b,0x97,0x6b,0xc7,0x6a,0xb5,0x8a,0xe9,0xe9, + 0x69,0x1c,0x3d,0x7a,0x14,0x53,0x53,0x53,0x50,0x4a,0xe1,0x86,0x1b,0x6e,0xc0,0x9e, + 0x3d,0x7b,0xd0,0xd9,0xd9,0x89,0x4a,0xa5,0x82,0xd3,0xa7,0x4f,0xab,0x93,0x27,0x4f, + 0xba,0x53,0x53,0x53,0x4f,0x56,0x2a,0x95,0x7,0x17,0x16,0x16,0xbe,0x5f,0xad,0x56, + 0x17,0x57,0xef,0xb1,0x6b,0xd7,0x2e,0x3c,0xf3,0xcc,0x33,0xbf,0x19,0x83,0xfe,0xfa, + 0xaf,0x3f,0x8a,0x62,0xb1,0x80,0xfb,0xef,0xff,0xdf,0x98,0x99,0x99,0xe5,0x52,0xca, + 0x34,0xa5,0x7a,0xac,0xaf,0x7f,0x3d,0xb6,0x5d,0x74,0x31,0xd6,0xd,0xc,0x20,0x97, + 0x4d,0x61,0x76,0x76,0x12,0x84,0x0,0x51,0xc8,0x41,0x29,0x3,0x21,0x14,0x52,0x2a, + 0x10,0x22,0x51,0xaf,0x57,0x51,0xaf,0x55,0x0,0x25,0x90,0x48,0x26,0x91,0x4e,0x67, + 0x60,0x18,0xb1,0xe5,0x54,0x40,0x67,0x8,0x82,0x10,0x6e,0xab,0x8e,0xc8,0xaf,0xc2, + 0x64,0x2,0x64,0x5,0x1c,0x42,0x48,0x3b,0x8f,0xa1,0x94,0x62,0x35,0x51,0x6c,0x34, + 0x1a,0x18,0x18,0x18,0x40,0x6f,0x6f,0x2f,0x74,0x5d,0x7,0x21,0x4,0xf9,0x7c,0x1e, + 0x5b,0xb6,0x6c,0x69,0xa7,0x1,0xcf,0x3c,0xf3,0xc,0xe,0x1e,0x3c,0x8,0xdf,0xf7, + 0xf1,0x27,0x7f,0xf2,0x27,0x58,0x5c,0x5c,0xc4,0xe9,0xd3,0xa7,0x97,0x8a,0xc5,0xe2, + 0xf7,0x96,0x96,0x96,0x7e,0xd0,0x6a,0xb5,0xe,0x55,0xab,0xd5,0xf2,0xef,0xa4,0x28, + 0xbe,0x34,0x78,0x7b,0x9e,0x93,0xf2,0xfd,0x28,0x47,0x69,0xcc,0xee,0xeb,0xeb,0xc5, + 0xf0,0xf0,0x30,0x6,0x7,0x7,0xc0,0xa8,0x42,0xbd,0x51,0xc1,0x52,0x71,0x11,0xa5, + 0xd2,0x12,0x9a,0x8d,0x3a,0x52,0xe9,0x2c,0x74,0x5d,0x87,0x94,0x12,0x50,0xa,0xbe, + 0xef,0xa3,0x5a,0x29,0x41,0x5b,0x5c,0x44,0x2a,0x9d,0x41,0x57,0xd7,0x1a,0x48,0x9, + 0x58,0xc6,0x6a,0xe0,0xf4,0x11,0x5,0xe,0x4c,0x2a,0x1,0xf2,0xf3,0x4,0x8f,0x31, + 0xd6,0x66,0x4f,0xb9,0x5c,0x46,0xa5,0x52,0x81,0x65,0x2d,0xc7,0xb4,0x54,0x2a,0xd5, + 0x66,0x79,0x26,0x93,0xc1,0xb6,0x6d,0xdb,0xd0,0xdf,0xdf,0x8f,0x2d,0x5b,0xb6,0xa0, + 0xab,0xab,0xb,0xe3,0xe3,0xe3,0x68,0xb5,0x5a,0x88,0xa2,0x8,0x8e,0xe3,0x84,0xa5, + 0x52,0x69,0xa2,0x56,0xab,0x7d,0x7f,0x6c,0x6c,0xec,0x0,0x0,0xff,0xa5,0x5e,0xb2, + 0xca,0x9e,0xdf,0x5a,0xb4,0xa7,0x94,0x64,0x5a,0xad,0x96,0x95,0xce,0x24,0x69,0x26, + 0x93,0x47,0x36,0x9b,0x7,0x63,0x3a,0x82,0xc0,0x1,0xa5,0xc,0xb5,0x7a,0x1d,0xb, + 0xb,0xb,0x48,0x26,0x53,0x18,0x1a,0xda,0x88,0x5c,0xbe,0x3,0x94,0x69,0xc8,0x64, + 0xd2,0x0,0x4,0xa2,0xd0,0xc3,0x62,0xb1,0x88,0x6a,0xb5,0x8a,0xc0,0xf,0x60,0xc7, + 0xb2,0xb0,0x6d,0x1d,0x96,0x65,0x40,0x23,0xa,0x9c,0x7,0xcb,0x19,0x35,0x96,0xcb, + 0x6,0x29,0x97,0xeb,0x49,0x29,0x25,0x1a,0x8d,0x6,0xca,0xe5,0x32,0x5c,0xd7,0xc5, + 0xe0,0xe0,0x20,0x3a,0x3a,0x3a,0x40,0x29,0x45,0x14,0x45,0x30,0xc,0x3,0xf1,0x78, + 0x1c,0x99,0x4c,0x6,0x0,0xb0,0x6d,0xdb,0x36,0xec,0xda,0xb5,0xb,0x2f,0xbc,0xf0, + 0x2,0xe6,0xe7,0xe7,0x11,0x8f,0xc7,0xa1,0x69,0x5a,0x8d,0x31,0x76,0x66,0xfd,0xfa, + 0xf5,0xcf,0x1e,0x39,0x72,0xc4,0xff,0x55,0x2b,0xf8,0x6f,0x5,0x50,0x10,0x70,0x97, + 0x31,0x26,0xa4,0x94,0xca,0xf7,0x7d,0x12,0x84,0x1c,0x42,0x2a,0x68,0x1a,0x85,0x6e, + 0x98,0x28,0x97,0xca,0x38,0x7e,0xfc,0x18,0x9e,0x7d,0xf6,0x59,0x6c,0xdb,0x36,0x82, + 0x2b,0x77,0xbf,0x9,0x97,0x5d,0x76,0x19,0xf2,0xf9,0xc,0x92,0x49,0x1b,0x1d,0x1d, + 0x39,0xd4,0xaa,0xd,0xd4,0x6a,0xd,0xf8,0x81,0xf,0x4d,0xd3,0x60,0xdb,0xa,0xa9, + 0x84,0xd,0x4a,0x25,0xc2,0xa0,0x5,0x24,0x63,0x60,0x94,0x82,0x73,0x8e,0xc9,0xc9, + 0x49,0x94,0xcb,0x65,0x74,0x77,0x77,0x23,0x97,0xcb,0x21,0x95,0x4a,0xa1,0xa3,0xa3, + 0x3,0xdd,0xdd,0xdd,0xb0,0x6d,0x1b,0x42,0x88,0x76,0x2,0x28,0xe5,0xb2,0xb6,0xbd, + 0xaa,0x17,0xe5,0x72,0x39,0xec,0xdc,0xb9,0x13,0x1b,0x37,0x6e,0x4,0x21,0x4,0x93, + 0x93,0x93,0x12,0x80,0x8c,0xa2,0xe8,0xb5,0xdb,0xf6,0x11,0x5c,0x36,0x4d,0xd3,0x9c, + 0x56,0x4a,0x6c,0x76,0x5d,0x27,0xe7,0x7a,0x1e,0xc2,0x90,0x83,0x6a,0x0,0xd5,0x18, + 0x82,0x30,0x42,0xb9,0x5c,0x46,0xb5,0x5a,0x85,0xae,0xeb,0xe8,0xea,0xea,0xc4,0x25, + 0x97,0x5c,0xc,0x46,0xd3,0x60,0xb6,0x8d,0x98,0x6d,0xc3,0x30,0xe2,0xe0,0x82,0x20, + 0x8,0x39,0x40,0x34,0x98,0x26,0x45,0x36,0x13,0x47,0xdc,0x62,0x58,0x52,0x1c,0x50, + 0xaa,0x5d,0xa1,0x4f,0x4d,0x4d,0x21,0x8a,0x22,0xf4,0xf6,0xf6,0xe2,0xca,0x2b,0xaf, + 0x6c,0x33,0x27,0x93,0xc9,0xb4,0xcf,0xa1,0x94,0xb6,0x17,0x14,0xce,0x39,0x34,0x4d, + 0x6b,0x27,0x85,0x89,0x44,0x2,0x89,0x44,0x2,0x8e,0xe3,0x40,0xad,0xb8,0xb9,0xe7, + 0x79,0xda,0x6b,0x6,0x50,0x22,0x69,0x3b,0x50,0x38,0xd4,0x6c,0xf1,0x61,0xdf,0x77, + 0x72,0xae,0xeb,0xc1,0xf3,0x2,0x18,0x4c,0x2,0x8a,0x20,0x95,0x4a,0x63,0xfd,0xd0, + 0x30,0x7a,0x7b,0xd6,0xc0,0x34,0xd,0x70,0x1e,0xc1,0xf7,0x3c,0x70,0xbe,0xfc,0x64, + 0xa5,0x2,0xe6,0xe6,0xe7,0x31,0x3e,0x7e,0xe,0x82,0x3,0xa9,0x74,0x1e,0xba,0x1e, + 0x47,0x47,0x3e,0x81,0x74,0xda,0x86,0xce,0x28,0x14,0x14,0xc8,0x4a,0xb6,0x5b,0x2a, + 0x95,0x30,0x3b,0x3b,0x8b,0xf9,0xf9,0x79,0x6c,0xd9,0xb2,0x5,0xf1,0x78,0x1c,0x9d, + 0x9d,0x9d,0xed,0xca,0xfd,0x42,0x37,0x59,0xfd,0xbc,0x74,0x5,0x5e,0x15,0xd5,0x3c, + 0xcf,0x13,0xb5,0x5a,0x2d,0x8,0x82,0x80,0xbf,0xaa,0x0,0x7d,0xf9,0xcb,0x5f,0x6, + 0x0,0xdc,0x7e,0xfb,0xed,0xe8,0xeb,0xea,0x72,0x83,0x30,0xfa,0x49,0xbd,0x31,0xb7, + 0x2d,0xc,0x5a,0x97,0x54,0x2b,0x65,0xdd,0x32,0xd,0xa4,0x92,0x16,0x74,0xd3,0xc0, + 0x55,0x57,0xfd,0x21,0xae,0xb9,0xe6,0x8f,0x90,0xcd,0xa6,0x30,0x35,0x35,0x81,0xd2, + 0xd2,0x12,0x6a,0xf5,0x26,0x3a,0xbb,0x4,0xe2,0x31,0xd,0xc5,0xc5,0x3a,0x7e,0x7a, + 0xe0,0x0,0x1e,0x7f,0xe2,0x0,0xfa,0xd6,0xae,0xc7,0xc8,0xf6,0x3f,0x40,0xff,0xc0, + 0x26,0xa4,0x52,0x31,0xa4,0x92,0x36,0xc,0x83,0x1,0xa,0xed,0x9d,0x8e,0x55,0xe5, + 0xb0,0x56,0xab,0xe1,0xc8,0x91,0x23,0x88,0xc7,0xe3,0xb0,0x6d,0x1b,0x7d,0x7d,0x7d, + 0x88,0xc7,0xe3,0x60,0x8c,0xc1,0x5c,0x29,0x8a,0x9,0x21,0x17,0x96,0xf,0xed,0xf1, + 0x4b,0x29,0xb1,0xb0,0xb0,0x80,0x52,0xa9,0x54,0x2b,0x97,0xcb,0xf3,0x9e,0xe7,0x45, + 0xaf,0x2a,0x40,0xb7,0xdf,0x7e,0x7b,0xfb,0xef,0x1b,0xf7,0xdc,0x1c,0x1,0x38,0xfd, + 0xf,0xff,0xe3,0xbf,0x1f,0x94,0x32,0xda,0x5e,0x29,0x17,0x2e,0x23,0x44,0x32,0xcf, + 0x4b,0x23,0x8,0x6a,0x88,0xd9,0x71,0x64,0x52,0x19,0xa4,0x33,0x19,0x74,0x75,0x2d, + 0x33,0xa7,0x52,0xad,0xe3,0xec,0xb9,0x9,0x48,0xa1,0x70,0xe2,0xc4,0x73,0x78,0xf8, + 0xe1,0xff,0x8b,0x13,0xcf,0x1d,0xc7,0x35,0x7f,0x68,0x62,0x70,0xc8,0x45,0x10,0xa, + 0x68,0x1a,0x1,0x65,0x14,0x1a,0x5d,0x66,0xbf,0x92,0x12,0x84,0x10,0xc4,0x62,0x31, + 0x64,0x32,0x19,0xb8,0xae,0x8b,0x89,0x89,0x9,0x58,0x96,0x5,0xce,0x39,0xb6,0x6f, + 0xdf,0x8e,0xbe,0xbe,0x3e,0x24,0x93,0xc9,0xb6,0xa2,0x68,0x9a,0x26,0x32,0x99,0xc, + 0x18,0x63,0x2f,0x2,0xa9,0xd5,0x6a,0x61,0x74,0x74,0x14,0x33,0x33,0x33,0x85,0x5a, + 0xad,0x76,0xda,0xf3,0xbc,0xf0,0x35,0x73,0xb1,0x95,0x9b,0x46,0x5f,0xfb,0xda,0x97, + 0xf,0xd6,0xeb,0x5e,0x67,0xbd,0x5a,0xd8,0x10,0xf1,0xa0,0xb3,0x56,0xab,0xa2,0x5c, + 0x9a,0x43,0xad,0x56,0x1,0x14,0xb0,0x6e,0xdd,0x7a,0x74,0x76,0x75,0xc3,0x34,0x6d, + 0x14,0x16,0x8a,0x38,0xf1,0xdc,0x9,0x8c,0x8f,0x9f,0xc1,0xe1,0x43,0x4f,0x62,0x6c, + 0xec,0x5,0x98,0xa6,0x85,0x64,0x2a,0xb,0xd3,0x8a,0xc1,0xf3,0x7c,0xb4,0xdc,0xe5, + 0x5d,0xe,0x25,0x97,0xf3,0x43,0xb5,0x52,0x33,0x5b,0x96,0x85,0x8e,0x8e,0xe,0x4, + 0x41,0x80,0x56,0xab,0x85,0xe7,0x9f,0x7f,0x1e,0x73,0x73,0x73,0x38,0x75,0xea,0x14, + 0x2e,0xbe,0xf8,0x62,0xf4,0xf7,0xf7,0xc3,0x71,0x1c,0x18,0x86,0x81,0xde,0xde,0x5e, + 0x5c,0x71,0xc5,0x15,0x30,0xc,0xa3,0xbd,0xfa,0x45,0x51,0x84,0xb9,0xb9,0x39,0x1c, + 0x3d,0x7a,0x54,0x9e,0x3e,0x7d,0xfa,0xac,0xeb,0xba,0x27,0x1c,0xc7,0x79,0x6d,0x0, + 0xfa,0xd1,0xfe,0xfd,0xb8,0xe9,0x1d,0xef,0x0,0x0,0xfc,0xe9,0x9f,0xfe,0xf9,0xb9, + 0x7b,0xef,0xfd,0xc2,0x8f,0x74,0x9d,0xec,0x72,0x5b,0xf5,0xb7,0x2c,0x2c,0x9c,0xcf, + 0x9f,0x3d,0x73,0xa,0x4b,0xc5,0x2,0xa4,0x94,0x98,0x9c,0x18,0x47,0x3a,0x93,0x1, + 0xa5,0xc,0xf5,0x7a,0x1d,0x8b,0x8b,0xb,0x38,0x3f,0x3b,0x8b,0xd9,0xd9,0x59,0x78, + 0x9e,0x8b,0x4c,0x26,0x8f,0x74,0xba,0x3,0x94,0x59,0x70,0xbd,0x10,0x9e,0x17,0x20, + 0x8a,0x38,0xa4,0x92,0x0,0x28,0x94,0x5a,0x7e,0x18,0xab,0x22,0x98,0x10,0xa2,0x1d, + 0x6c,0x1d,0xc7,0xc1,0x89,0x13,0x27,0x30,0x3e,0x3e,0xe,0xc6,0x18,0x1c,0xc7,0xc1, + 0x25,0x97,0x5c,0x82,0xb7,0xbd,0xed,0x6d,0xed,0xb8,0xb4,0x2a,0xe8,0x1f,0x3f,0x7e, + 0x1c,0x3f,0xfb,0xd9,0xcf,0xe4,0xcc,0xcc,0xcc,0xe1,0x4a,0xa5,0x72,0x70,0x72,0x72, + 0xf2,0x2c,0x0,0xfe,0x9a,0x0,0x74,0xd3,0x3b,0xde,0x81,0xfb,0xef,0xff,0x62,0x9b, + 0x49,0x5f,0x7a,0xe0,0x81,0x31,0x2d,0x49,0xbf,0xb7,0x50,0x28,0xa6,0x9b,0xf5,0xca, + 0x4d,0xbe,0xef,0x53,0x5,0x6,0xa9,0x38,0xa,0x85,0x39,0x34,0xea,0x15,0xe8,0x86, + 0x81,0x96,0xeb,0xa2,0x58,0x5c,0x44,0xa5,0xb2,0x4,0xcf,0x73,0x61,0xdb,0x36,0xd6, + 0xf4,0xf4,0x21,0x99,0xea,0x0,0xa0,0xa3,0xd5,0xf2,0xe1,0xba,0x21,0x38,0x5f,0x96, + 0x74,0x97,0x29,0xa4,0xda,0x0,0xc5,0x62,0x31,0x30,0xc6,0xe0,0xfb,0x3e,0x9a,0xcd, + 0x26,0x2a,0x95,0xa,0x2a,0x95,0xa,0xa6,0xa7,0xa7,0xe1,0xfb,0x3e,0xf2,0xf9,0x3c, + 0x6c,0xdb,0x46,0x77,0x77,0x77,0x5b,0x30,0xf3,0x3c,0xf,0xe7,0xce,0x9d,0xc3,0xd1, + 0xa3,0x47,0x71,0xec,0xd8,0xb1,0xe9,0x4a,0xa5,0xb2,0xdf,0x71,0x9c,0xc3,0xab,0xe0, + 0x5c,0xa8,0x3d,0xbf,0xaa,0x2e,0x76,0xc7,0x1d,0xfb,0xda,0x20,0xdd,0xfe,0xfe,0xf7, + 0xf3,0x33,0x67,0xc6,0x1f,0xfa,0xca,0x57,0x1e,0xe8,0x30,0xd,0xd6,0xbf,0x61,0xe3, + 0xd6,0x2d,0x94,0xc6,0xf4,0x28,0xe2,0x98,0x3f,0x7f,0xa,0xc9,0x84,0x89,0x5c,0x36, + 0x7,0x3f,0x8,0x91,0xcd,0x64,0x60,0xe8,0x6,0xa2,0x28,0x44,0x47,0x67,0xf,0xd6, + 0xf,0x6d,0x83,0x1d,0xcb,0x22,0x8,0x15,0x5a,0x2d,0x6f,0x19,0x20,0x1,0x50,0x66, + 0x80,0x90,0x9f,0x8b,0x52,0xa6,0x69,0xb6,0x41,0x72,0x5d,0xf7,0x45,0x1,0x39,0xc, + 0x43,0x74,0x76,0x76,0x62,0xcf,0x9e,0x3d,0x78,0xe7,0x3b,0xdf,0x89,0xdd,0xbb,0x77, + 0xb7,0x13,0xc7,0x99,0x99,0x19,0x3c,0xfc,0xf0,0xc3,0x18,0x1d,0x1d,0x9d,0x2b,0x97, + 0xcb,0xff,0x9c,0x4a,0xa5,0xbe,0xfb,0xe8,0xa3,0x8f,0x8e,0xbf,0x2e,0xed,0x2f,0x77, + 0xdc,0xb1,0x6f,0x95,0x45,0xa,0x80,0x7b,0xcf,0x3d,0xff,0xf9,0xc7,0xba,0x6e,0x68, + 0x20,0xd6,0x7,0xc,0x33,0x73,0x31,0x88,0xc9,0xc,0xd3,0x86,0xe7,0x94,0xd0,0x72, + 0x9b,0x60,0x4c,0x83,0x65,0x19,0xc8,0x66,0x32,0x58,0xbf,0x7e,0x23,0xfa,0xd6,0x6d, + 0xc3,0xd0,0xf0,0xe,0x28,0x62,0xc0,0x69,0x79,0x68,0x39,0x1e,0xbc,0x40,0x40,0x4a, + 0x2,0x46,0x4d,0x10,0x2d,0x4,0xb0,0x5c,0xc1,0xaf,0x66,0xc9,0x84,0x10,0x58,0x96, + 0x5,0xdf,0xf7,0x21,0xa5,0x6c,0x8b,0x60,0xdb,0xb7,0x6f,0xc7,0xcd,0x37,0xdf,0x8c, + 0xed,0xdb,0xb7,0x83,0x52,0xa,0x29,0x25,0x4e,0x9c,0x38,0x81,0x27,0x9f,0x7c,0x12, + 0x63,0x63,0x63,0x73,0xb5,0x5a,0xed,0xdb,0x96,0x65,0x7d,0xad,0xbf,0xbf,0x7f,0xfa, + 0xc2,0x39,0xfc,0x2a,0xf6,0xbc,0xac,0x68,0xff,0x9b,0xd8,0xd7,0xbf,0xfe,0x75,0x7c, + 0xf7,0xbb,0xdf,0x5,0x0,0x1c,0x38,0xf0,0xb3,0xea,0xfb,0x6f,0x7f,0x6f,0xc1,0xf3, + 0x7c,0x46,0x8,0x4b,0x12,0x42,0x3b,0xad,0x58,0x96,0x29,0xe8,0x88,0x22,0x1,0x42, + 0x34,0x28,0xa9,0xc1,0x30,0x12,0xe8,0x5c,0x33,0x84,0x81,0xc1,0x11,0x74,0x74,0xae, + 0x3,0x17,0x4,0xae,0x1b,0xc0,0xf5,0x2,0x78,0x3e,0x47,0xb3,0x5e,0xe6,0x6e,0x6b, + 0x29,0xa4,0x84,0xb3,0x78,0x3c,0x86,0x58,0x2c,0xde,0x96,0x47,0x83,0x20,0x80,0xef, + 0xfb,0x70,0x5d,0x17,0x42,0x8,0x64,0x32,0x19,0xec,0xda,0xb5,0xb,0xd7,0x5f,0x7f, + 0x3d,0x76,0xed,0xda,0x85,0x54,0x2a,0x85,0x28,0x8a,0x30,0x35,0x35,0x85,0x43,0x87, + 0xe,0xe1,0xe8,0xd1,0xa3,0x4b,0xe5,0x72,0xf9,0x87,0x52,0xca,0x6f,0xec,0xdf,0xbf, + 0xff,0xd0,0xe1,0xc3,0x87,0xc5,0x72,0xaf,0xe4,0xbe,0x17,0x55,0xec,0xaf,0x5b,0xb, + 0x1e,0xd3,0x8d,0x39,0xcb,0xb2,0xfe,0x61,0x76,0xf6,0x5c,0x59,0xa3,0x31,0x23,0x9e, + 0xec,0x1b,0x49,0xa6,0xbb,0x8d,0x78,0xaa,0x7,0xd5,0xf2,0x3c,0x62,0xd4,0x47,0x2a, + 0x6f,0x23,0x93,0x5d,0x3,0xa6,0xdb,0x8,0x42,0x89,0x20,0x68,0x21,0x8,0x22,0x4, + 0xa1,0x40,0x10,0x4a,0x84,0x9c,0x2c,0x9,0x41,0x6a,0x4c,0x53,0xc3,0x50,0xd0,0x75, + 0x5d,0x47,0x3e,0x9f,0x47,0xb9,0x5c,0xc6,0xe2,0xe2,0x22,0x38,0xe7,0x2b,0xd9,0x79, + 0x17,0x2e,0xbb,0xec,0x32,0xec,0xdc,0xb9,0x13,0x1b,0x36,0x6c,0x80,0x61,0x18,0x10, + 0x42,0x60,0x69,0x69,0x9,0x8f,0x3f,0xfe,0x38,0x4e,0x9e,0x3c,0xd9,0x6c,0x36,0x9b, + 0xc7,0xba,0xbb,0xbb,0xbf,0x7c,0xf9,0xe5,0x97,0x3f,0xfd,0x83,0x1f,0xfc,0xa0,0x3d, + 0xce,0x2f,0x7e,0xf1,0x8b,0xaf,0x5f,0xb,0xde,0x7d,0xf7,0x7d,0xe,0x0,0xf0,0x17, + 0x7f,0x71,0x67,0xfb,0xd8,0x47,0xee,0x7c,0xff,0x46,0x45,0xe2,0xef,0x12,0xc4,0xfe, + 0x88,0x15,0x5f,0xdb,0x65,0x27,0x7a,0x21,0x85,0x0,0xe7,0x21,0x4,0xe7,0x50,0x0, + 0x34,0x6a,0x41,0x29,0x6,0xcf,0xf3,0x10,0x86,0x11,0xc2,0x48,0xc2,0xf7,0xb9,0x6a, + 0x39,0x95,0x1f,0xb7,0x6a,0x27,0x47,0x6d,0xa3,0x79,0x6b,0x2e,0x9b,0xe9,0xe9,0xec, + 0x5a,0x83,0x6c,0x36,0xdb,0x5e,0xc5,0x28,0xa5,0x48,0xa7,0xd3,0xe8,0xe9,0xe9,0xc1, + 0xe0,0xe0,0x20,0x7a,0x7a,0x7a,0x90,0xcd,0x66,0x41,0x29,0xc5,0xe4,0xe4,0x24,0x9e, + 0x79,0xe6,0x19,0x1c,0x3e,0x7c,0x18,0xd5,0x6a,0xf5,0x47,0xba,0xae,0x7f,0xa9,0xa7, + 0xa7,0xe7,0xc7,0x9f,0xfa,0xd4,0xa7,0xda,0x4d,0xc,0xf7,0xde,0x7b,0x2f,0x3e,0xf8, + 0xc1,0xf,0xbe,0xfe,0x3d,0x8a,0x1f,0xff,0xf8,0xc7,0xf1,0xf1,0x8f,0x7f,0x7c,0x25, + 0xbd,0xff,0x6,0xf9,0xf,0x1f,0xfa,0xe7,0x1d,0xcd,0x80,0xff,0x17,0xc3,0x5e,0x73, + 0x8d,0x9d,0x18,0x88,0xdb,0xb1,0x6e,0x8,0x29,0xe1,0x3a,0x15,0xd4,0x6a,0xb,0xa0, + 0x2c,0x1,0xd3,0xca,0x23,0xc,0x23,0x70,0x21,0x21,0xb8,0x92,0x9e,0x17,0xcc,0x7, + 0x61,0xf8,0x45,0xca,0x4f,0x1d,0x4e,0xd8,0xee,0x7f,0x8a,0xc7,0x63,0x57,0xa4,0xd3, + 0xd9,0x44,0x77,0x77,0x37,0xf2,0xf9,0x3c,0xd2,0xe9,0x34,0xe2,0xf1,0x38,0xf2,0xf9, + 0x3c,0x72,0xb9,0x1c,0x2c,0xcb,0x6a,0x4b,0x29,0x8e,0xe3,0xe0,0xd8,0xb1,0x63,0x78, + 0xe6,0x99,0x67,0xa2,0x42,0xa1,0x30,0x4e,0x8,0xb9,0xf7,0xa3,0x1f,0xfd,0xe8,0x3f, + 0x5e,0x7c,0xf1,0xc5,0xd,0x0,0xf8,0xd8,0xc7,0x3e,0x6,0x0,0xf8,0xcc,0x67,0x3e, + 0xf3,0xfb,0xef,0x72,0x25,0xe4,0x36,0xf5,0x97,0x1f,0x7a,0xff,0x39,0xcb,0xd4,0xbe, + 0x15,0x4,0xf5,0x44,0x10,0x4c,0x5f,0xdd,0x72,0x29,0x14,0x18,0xbc,0x56,0xd,0x4b, + 0xc5,0x19,0xe8,0x46,0xa,0xf1,0x24,0x1,0x88,0x1,0x80,0x41,0x2a,0xf8,0x9c,0xf3, + 0xa7,0xc2,0x0,0x3f,0x7d,0xd7,0x5b,0x36,0x3e,0x7b,0xbe,0xd0,0x78,0x2c,0xc,0xa3, + 0x6e,0x42,0xb4,0x11,0xce,0x39,0x38,0xe7,0xed,0x20,0xad,0x69,0x1a,0x82,0x20,0x0, + 0xe7,0xbc,0xbd,0x93,0xf1,0xc2,0xb,0x2f,0x60,0x62,0x62,0x2,0xd5,0x6a,0x75,0xa1, + 0xb7,0xb7,0xf7,0xfe,0x5c,0x2e,0xf7,0xf0,0x2a,0x38,0xab,0xf6,0x9b,0x82,0xf3,0x3b, + 0x7,0xe9,0xb,0xed,0xc0,0x81,0x3,0xb8,0xeb,0xaf,0xee,0xc4,0xd5,0xbb,0xaf,0xc0, + 0xc1,0xa7,0x8e,0x60,0xe7,0x55,0x3,0xa1,0xa9,0xc5,0x97,0x2,0xd7,0xcf,0x48,0x21, + 0x37,0x72,0x49,0x53,0x61,0xa8,0xc1,0xf3,0x15,0x5a,0xcd,0x22,0xa2,0xc0,0x87,0x10, + 0xa,0x94,0x25,0x20,0xa4,0x42,0x18,0xba,0xa7,0x83,0xd0,0xfb,0xca,0x5c,0xa1,0xf2, + 0xe4,0x3f,0xde,0xf7,0x89,0x6a,0xa5,0x5c,0xa,0xa5,0x52,0xfd,0xba,0x6e,0x6c,0xd7, + 0x34,0x8d,0xac,0x56,0xe7,0x4a,0x29,0xb8,0xae,0x8b,0x52,0xa9,0x84,0x85,0x85,0x5, + 0x9c,0x3d,0x7b,0x16,0xe7,0xce,0x9d,0x43,0xb9,0x5c,0xf6,0xa4,0x94,0x4f,0xdb,0xb6, + 0xfd,0x7f,0x72,0xb9,0xdc,0xf7,0xee,0xba,0xeb,0xae,0x89,0x7b,0xee,0xb9,0x47,0x1, + 0xc0,0xa7,0x3f,0xfd,0x69,0x7c,0xe2,0x13,0x9f,0x78,0x63,0xb6,0x1,0xbf,0xff,0xbd, + 0x7b,0xaf,0x11,0x88,0xbd,0x2f,0x42,0x66,0x4f,0x24,0x73,0x3d,0x7e,0xc4,0xd0,0x6a, + 0xce,0x22,0xa,0x1a,0xd0,0x34,0x13,0xc9,0xec,0x6,0x17,0x84,0x8d,0xf9,0x7e,0xf3, + 0x51,0xc7,0xaf,0xdf,0x7b,0xe8,0xc7,0xff,0xf3,0xdc,0x4a,0x15,0x1e,0xfb,0xce,0x77, + 0xbe,0x73,0x5b,0xb5,0x5a,0xbd,0xc3,0xf3,0xbc,0xad,0x84,0x90,0x34,0x63,0xc,0x96, + 0x65,0xb5,0x77,0x48,0x85,0x10,0x6e,0xa3,0xd1,0xf0,0x5a,0xad,0x56,0xc5,0x30,0x8c, + 0x53,0xd9,0x6c,0xf6,0xd1,0x8b,0x2e,0xba,0xe8,0xd1,0x3d,0x7b,0xf6,0x9c,0x2,0x80, + 0x4f,0x7e,0xf2,0x93,0xed,0xed,0xf4,0x37,0x6c,0x23,0x79,0xae,0xc3,0x7c,0x7a,0xa9, + 0x1c,0x85,0x32,0x2c,0xda,0x52,0x79,0x37,0x6a,0x2a,0xd6,0x65,0x5b,0x6,0x20,0x29, + 0x2,0xbf,0x56,0x6b,0xd6,0x27,0x8e,0x10,0xb0,0xef,0x85,0xad,0xea,0x8f,0x14,0xc8, + 0xf9,0xb,0xea,0x3d,0x77,0x7a,0x7a,0xfa,0x47,0x53,0x53,0x53,0xfe,0xf9,0xf3,0xe7, + 0xdf,0xe7,0x79,0xde,0x95,0x42,0x88,0x14,0xe7,0x1c,0xad,0x56,0xb,0x9e,0xe7,0xf9, + 0xc9,0x64,0xf2,0xb9,0xf5,0xeb,0xd7,0x3f,0x9b,0x4c,0x26,0x9f,0x26,0x84,0x1c,0x22, + 0x84,0xcc,0xce,0xcd,0xcd,0xb5,0xde,0xf0,0x8d,0xe4,0xfb,0xf6,0xed,0x7b,0xd1,0x52, + 0xfa,0xde,0xf7,0xdd,0x9c,0x8,0x5c,0xb1,0x93,0xab,0xc4,0x2e,0xa1,0xec,0x21,0x9, + 0x8b,0xb8,0x6e,0x33,0xf2,0x5a,0xb5,0x22,0x34,0xfb,0x98,0x88,0x82,0x53,0x87,0x9f, + 0xdc,0x3f,0x77,0x61,0x43,0xf8,0xa,0x8b,0xe8,0xdc,0xdc,0x5c,0xf7,0xc9,0x93,0x27, + 0x77,0x39,0x8e,0x33,0x12,0x45,0xd1,0x5a,0xa5,0x94,0xa,0xc3,0x50,0x70,0xce,0xab, + 0x94,0xd2,0xe7,0xb3,0xd9,0xec,0xd4,0xf0,0xf0,0xf0,0xc2,0xc8,0xc8,0xc8,0x22,0x21, + 0x44,0x5c,0xb8,0x94,0xef,0xdb,0xb7,0xef,0x8d,0xdb,0x69,0x7f,0xc7,0x1d,0xef,0x1, + 0x0,0xdc,0x7f,0xff,0xd7,0xda,0xc7,0xde,0xf2,0x47,0x6b,0xd2,0xa6,0x3d,0xd0,0xa5, + 0xe8,0x0,0xd,0x7c,0xc2,0xfd,0x66,0xa3,0xf1,0xc4,0x53,0x3f,0x7a,0x51,0x5f,0xf3, + 0xee,0xdd,0xef,0xc0,0x3,0xf,0x7c,0xa6,0xad,0x29,0xaf,0x0,0xa5,0xb9,0xae,0xdb, + 0x31,0x39,0x39,0x99,0x23,0x84,0x60,0xdd,0xba,0x75,0x22,0x1e,0x8f,0x3b,0x0,0xa, + 0x2b,0x99,0x7c,0xdb,0xe,0x1e,0x3c,0x8,0x0,0xb8,0xea,0xaa,0xab,0xde,0x58,0x9d, + 0xf6,0xbf,0x8e,0x69,0x34,0xd1,0x0,0xd1,0x1d,0x40,0x5b,0x2e,0x23,0x5e,0x32,0xb9, + 0x57,0x30,0xd9,0x6a,0xb5,0x4a,0x9c,0xf3,0xf2,0x6a,0x11,0x1a,0x8f,0xc7,0xd5,0xcb, + 0xf5,0x10,0xfc,0x7f,0x67,0xef,0x7c,0xe7,0xaf,0xf7,0x4a,0xd3,0xf5,0xd7,0x5f,0x8f, + 0xeb,0xaf,0xbf,0xbe,0x2d,0x93,0x2a,0xa5,0xda,0x6f,0xf7,0xfc,0xba,0xf6,0x4b,0xda, + 0x96,0xdf,0x98,0x2e,0x76,0xeb,0xad,0xb7,0x2,0x0,0xbe,0xf9,0xcd,0x6f,0x2,0x0, + 0xde,0xfe,0xf6,0xb7,0x53,0xc6,0x98,0x61,0x18,0x6,0x4b,0xa5,0x52,0x9a,0x52,0x4a, + 0xb5,0x5a,0x2d,0x7e,0xfc,0xf8,0xf1,0x70,0x6c,0x6c,0xac,0xad,0xcd,0x9c,0x3f,0x7f, + 0x1e,0x7d,0x7d,0x7d,0x2f,0x9a,0xf4,0xf4,0xf4,0xb4,0x3e,0x39,0x39,0xa9,0xd7,0x6a, + 0x35,0x16,0x45,0x11,0x31,0xc,0x43,0xd9,0xb6,0x2d,0xe2,0xf1,0x78,0x74,0xe5,0x95, + 0x57,0x46,0x8c,0x31,0xf5,0x4a,0xbb,0xc1,0x6f,0x78,0x17,0xbb,0xe9,0xa6,0x9b,0x8, + 0xa5,0x34,0x47,0x29,0x5d,0x4b,0x29,0xed,0x26,0x84,0x18,0x0,0x22,0x4d,0xd3,0x2a, + 0xdd,0xdd,0xdd,0x33,0x63,0x63,0x63,0x65,0x0,0xd1,0xcb,0x6f,0x31,0x5,0xac,0xd9, + 0x6c,0xae,0x89,0xa2,0x68,0xad,0x10,0x22,0x2f,0xa5,0xd4,0x38,0xe7,0x51,0x14,0x45, + 0x4d,0xd7,0x75,0xe7,0x46,0x47,0x47,0x97,0x0,0xb4,0x5e,0xab,0xb1,0xbf,0xe6,0xab, + 0xd8,0x2d,0xb7,0xdc,0xc2,0x74,0x5d,0xcf,0x12,0x42,0x86,0xd3,0xe9,0x74,0x4f,0x2c, + 0x16,0x4b,0xb,0x21,0xa8,0xeb,0xba,0x42,0x4a,0xe9,0xc,0xf,0xf,0x97,0xf2,0xf9, + 0xfc,0x1c,0x63,0x6c,0xe1,0x83,0x1f,0xfc,0xa0,0xc3,0x39,0x6f,0xb3,0x61,0x7a,0x7a, + 0x3a,0x76,0xe6,0xcc,0x99,0xee,0xd9,0xd9,0xd9,0xf5,0x9e,0xe7,0x75,0x9,0x21,0xe2, + 0x2b,0x12,0xaa,0xe0,0x9c,0x7b,0x94,0xd2,0x9a,0x6d,0xdb,0x95,0x44,0x22,0x51,0x15, + 0x42,0x54,0x86,0x86,0x86,0x9c,0x6b,0xaf,0xbd,0x36,0xbc,0xb0,0xfc,0xb9,0xf0,0xfb, + 0xd,0x1,0xd0,0x4b,0xa9,0xbd,0x77,0xef,0xde,0xb4,0xae,0xeb,0xfd,0x86,0x61,0x6c, + 0xec,0xea,0xea,0x4a,0xa5,0xd3,0x69,0x52,0xa9,0x54,0x56,0xfb,0xa,0xe5,0xae,0x5d, + 0xbb,0x78,0x36,0x9b,0x2d,0x28,0xa5,0xa6,0x1d,0xc7,0x99,0xbb,0xf5,0xd6,0x5b,0x7d, + 0x0,0x28,0x95,0x4a,0xda,0x91,0x23,0x47,0x7a,0xaa,0xd5,0xea,0xd0,0xdc,0xdc,0x5c, + 0x6f,0x18,0x86,0x36,0x21,0x4,0xba,0xae,0xab,0x20,0x8,0x54,0x18,0x86,0xca,0x34, + 0x4d,0x69,0x9a,0xa6,0xaf,0xeb,0x7a,0x3d,0xc,0xc3,0x45,0xd3,0x34,0x8b,0x5b,0xb6, + 0x6c,0xa9,0x19,0x86,0x11,0x5e,0x77,0xdd,0x75,0xaf,0x4a,0x40,0x7a,0xcd,0x5c,0xec, + 0xc3,0x1f,0xfe,0x30,0x74,0x5d,0x67,0xb,0xb,0xb,0x59,0x4a,0x69,0x2e,0x9b,0xcd, + 0xfa,0x5d,0x5d,0x5d,0x7e,0x3c,0x1e,0x17,0x85,0x42,0x1,0x89,0x44,0x2,0xc3,0xc3, + 0xc3,0x64,0xd3,0xa6,0x4d,0x5a,0x2a,0x95,0xd2,0x39,0xe7,0xdd,0xbe,0xef,0xb7,0xe, + 0x1f,0x3e,0x5c,0xfe,0xc8,0x47,0x3e,0x12,0xed,0xdf,0xbf,0x3f,0x5e,0x28,0x14,0x32, + 0x61,0x18,0x5a,0x0,0xea,0xc9,0x64,0xb2,0x9e,0xcb,0xe5,0x64,0x2a,0x95,0x6a,0xef, + 0x6a,0x94,0x4a,0x25,0xb2,0xb8,0xb8,0x48,0x8a,0xc5,0x22,0x15,0x42,0xac,0xd1,0x75, + 0xdd,0xae,0xd5,0x6a,0x96,0xae,0xeb,0xb,0x0,0xc2,0x37,0x24,0x40,0xab,0xec,0x19, + 0x1c,0x1c,0xd4,0x46,0x47,0x47,0x53,0x86,0x61,0xd8,0xb6,0x6d,0x8b,0x7c,0x3e,0xdf, + 0x48,0x26,0x93,0x52,0x29,0x25,0x9,0x21,0xe8,0xea,0xea,0xc2,0xf0,0xf0,0x30,0x49, + 0xa5,0x52,0xc4,0xb6,0x6d,0xa6,0x94,0x52,0xf1,0x78,0x3c,0xde,0xd1,0xd1,0xe1,0xdc, + 0x70,0xc3,0xd,0xf2,0xf8,0xf1,0xe3,0x9,0xa5,0x14,0xd3,0x75,0xdd,0x4f,0xa7,0xd3, + 0xc2,0x30,0xc,0x69,0x59,0x96,0x8a,0xc7,0xe3,0x48,0xa5,0x52,0x30,0xc,0x3,0x1d, + 0x1d,0x1d,0xa4,0xb7,0xb7,0x57,0x2b,0x97,0xcb,0x64,0x71,0x71,0x51,0x5b,0x5a,0x5a, + 0x62,0xb,0xb,0xb,0x29,0x42,0x88,0xf7,0xbe,0xf7,0xbd,0xaf,0xf6,0xd5,0xaf,0x7e, + 0x35,0x7c,0xc3,0x0,0x74,0xe7,0x9d,0x77,0xe2,0x73,0x9f,0xfb,0x5c,0xfb,0x77,0xa1, + 0x50,0x60,0x9c,0xf3,0xb8,0x69,0x9a,0x24,0x99,0x4c,0x3a,0xb9,0x5c,0x4e,0x18,0x86, + 0xa1,0x5c,0xd7,0x25,0xd9,0x6c,0x16,0x7d,0x7d,0x7d,0xe8,0xe9,0xe9,0x59,0xf1,0x4a, + 0x45,0x57,0x74,0x66,0x26,0xa5,0x34,0x7d,0xdf,0x17,0x73,0x73,0x73,0x86,0x69,0x9a, + 0x3c,0x93,0xc9,0x34,0x32,0x99,0x8c,0x50,0x4a,0xc1,0xf3,0x3c,0xac,0xbe,0xe9,0x93, + 0xcb,0xe5,0xb0,0x6e,0xdd,0x3a,0x64,0xb3,0x59,0x84,0x61,0x88,0xe7,0x9f,0x7f,0x1e, + 0x4f,0x3d,0xf5,0x14,0x2b,0x97,0xcb,0x9a,0x10,0x22,0x11,0x45,0x51,0xb8,0x22,0xce, + 0x4b,0x0,0x78,0xeb,0x5b,0xdf,0xa,0x0,0xf8,0xe1,0xf,0x7f,0xf8,0xfb,0x77,0xb1, + 0x7d,0xfb,0xf6,0xb1,0x72,0xb9,0x6c,0xb,0x21,0x34,0xc3,0x30,0x82,0x54,0x2a,0xe5, + 0xaf,0x6e,0xc3,0x74,0x74,0x74,0x60,0xcd,0x9a,0x35,0xc8,0xe7,0xf3,0xed,0x46,0x83, + 0x28,0x8a,0x40,0x29,0x85,0x6d,0xdb,0x6a,0x66,0x66,0x86,0x35,0x9b,0x4d,0xbb,0xd1, + 0x68,0xa8,0x74,0x3a,0xed,0xad,0xf6,0x42,0x3,0x80,0xe3,0x38,0x20,0x84,0x20,0x9d, + 0x4e,0xb7,0xbb,0x58,0xa3,0x28,0x42,0x32,0x99,0xc4,0xd6,0xad,0x5b,0xa1,0xeb,0x3a, + 0x62,0xb1,0x18,0x79,0xfa,0xe9,0xa7,0xb5,0x20,0x8,0xac,0xf7,0xbc,0xe7,0x3d,0xa1, + 0x69,0x9a,0xde,0x97,0xbe,0xf4,0xa5,0xdf,0x3a,0x1e,0xfd,0xce,0x72,0xc7,0xb5,0xd7, + 0x5e,0x8b,0xc1,0xc1,0x41,0x7c,0xfb,0xdb,0xdf,0x6,0x0,0xdc,0x75,0xd7,0x5d,0x5a, + 0x18,0x86,0x26,0x0,0x4b,0xd3,0x34,0xcd,0x34,0x4d,0x6e,0x9a,0x26,0xf,0xc3,0x90, + 0x7b,0x9e,0xc7,0x85,0x10,0x3c,0x9b,0xcd,0xf2,0x54,0x2a,0xc5,0x2d,0xcb,0xe2,0x94, + 0x52,0xce,0x18,0xe3,0xba,0xae,0x73,0xc3,0x30,0xe4,0xd4,0xd4,0x94,0x7c,0xee,0xb9, + 0xe7,0xc8,0xe2,0xe2,0x22,0xd1,0x75,0x5d,0x24,0x12,0x9,0xee,0xfb,0x3e,0xaf,0x54, + 0x2a,0xbc,0x50,0x28,0xf0,0xc5,0xc5,0x45,0x3e,0x3f,0x3f,0xcf,0x8b,0xc5,0x22,0xf, + 0x82,0x80,0x5b,0x96,0xc5,0x33,0x99,0xc,0x4f,0x24,0x12,0x3c,0x93,0xc9,0x70,0xd3, + 0x34,0x79,0xb9,0x5c,0x96,0xbe,0xef,0xab,0x7a,0xbd,0x8e,0x66,0xb3,0xc9,0x53,0xa9, + 0x94,0x7a,0xfc,0xf1,0xc7,0x71,0xf6,0xec,0x59,0xec,0xdd,0xbb,0x17,0xa3,0xa3,0xa3, + 0xaf,0x1f,0x83,0xe,0x1c,0x38,0xf0,0xf3,0xa2,0xf4,0xbd,0xef,0x25,0xad,0x56,0x4b, + 0x97,0x52,0xb2,0x95,0x3d,0xf5,0x20,0x8a,0x22,0x2c,0x2e,0x2e,0x2a,0x42,0x8,0xa2, + 0x28,0x2,0x63,0xcb,0x9b,0x88,0x9b,0x36,0x6d,0xc2,0xe0,0xe0,0x20,0x28,0xa5,0xed, + 0xe6,0x28,0xce,0x39,0xa9,0xd5,0x6a,0xe0,0x9c,0x2b,0x29,0x65,0xc8,0x39,0x87,0xef, + 0xfb,0xca,0x71,0x1c,0xd4,0xeb,0x75,0xb4,0x5a,0x2d,0x68,0x9a,0x86,0x46,0xa3,0x1, + 0x29,0x25,0xa6,0xa6,0xa6,0x10,0x86,0x21,0x4c,0xd3,0x6c,0xb7,0xc3,0x5c,0x74,0xd1, + 0x45,0xf0,0x3c,0x8f,0x44,0x51,0xa4,0x55,0x2a,0x15,0x2a,0xa5,0xd4,0xb3,0xd9,0xac, + 0x4,0x20,0x0,0xbc,0xec,0x1b,0x3d,0xaf,0x8b,0x60,0xb6,0x75,0xeb,0x56,0x62,0x59, + 0x16,0xb3,0x2c,0x4b,0x77,0x1c,0x47,0xab,0xd5,0x6a,0x52,0x4a,0xc9,0x4b,0xa5,0x92, + 0x28,0x97,0xcb,0x32,0x16,0x8b,0x49,0xc7,0x71,0xe4,0xc4,0xc4,0x84,0x3c,0x78,0xf0, + 0xa0,0x6c,0x34,0x1a,0x32,0x99,0x4c,0x4a,0xc3,0x30,0x24,0xa5,0x54,0x2a,0xa5,0xa4, + 0x10,0x42,0x9c,0x39,0x73,0x46,0x8c,0x8e,0x8e,0xca,0x66,0xb3,0x29,0x0,0x8,0x42, + 0x88,0x8c,0xa2,0x48,0xe6,0xf3,0x79,0x39,0x34,0x34,0x24,0x7b,0x7a,0x7a,0x64,0x2a, + 0x95,0x92,0x9c,0x73,0x39,0x3e,0x3e,0x2e,0xc7,0xc6,0xc6,0xe4,0xdc,0xdc,0x9c,0x4c, + 0x24,0x12,0x32,0x1e,0x8f,0xcb,0x64,0x32,0x29,0x7,0x6,0x6,0xb8,0x94,0x52,0xd4, + 0x6a,0x35,0x51,0xad,0x56,0x11,0x86,0x21,0x76,0xef,0xde,0xad,0x76,0xec,0xd8,0xa1, + 0x4e,0x9c,0x38,0xf1,0x1b,0xcd,0xeb,0xff,0x1,0x2f,0xb7,0x1a,0xa6,0x71,0x7f,0x92, + 0xdf,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/yellowframe.png + 0x0,0x0,0x7,0xce, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x44,0x0,0x0,0x0,0x44,0x8,0x6,0x0,0x0,0x0,0x38,0x13,0x93,0xb2, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0x16,0x25,0x0,0x0,0x16,0x25,0x1, + 0x49,0x52,0x24,0xf0,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xb, + 0xf,0xe,0x16,0x8,0x4f,0xc5,0x74,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x43, + 0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x0,0x43,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x77, + 0x69,0x74,0x68,0x20,0x47,0x49,0x4d,0x50,0x57,0x81,0xe,0x17,0x0,0x0,0x7,0x29, + 0x49,0x44,0x41,0x54,0x78,0xda,0xed,0x9c,0xbb,0x72,0x1c,0x45,0x14,0x86,0xbf,0xbf, + 0x3d,0xf6,0x2a,0x21,0x84,0x84,0x48,0xe5,0xd8,0x76,0x46,0xf1,0x8,0x14,0x4f,0xcc, + 0x23,0x50,0x64,0xe0,0x8c,0xb2,0x8b,0x22,0x20,0xc1,0x19,0x9,0x72,0x19,0xf7,0x4f, + 0xd0,0xa7,0x2f,0x33,0xda,0xcb,0xac,0x6c,0x81,0x76,0x57,0x13,0xa8,0x56,0xbb,0xd3, + 0xb7,0xbf,0xcf,0xbd,0xcf,0x69,0xe5,0x37,0xd7,0x20,0x92,0xf0,0xb,0xac,0x6f,0x31, + 0x5f,0x5a,0x8,0x61,0xcc,0xbd,0x3c,0x12,0xd4,0xbe,0x7d,0x6c,0xbb,0xda,0xc6,0x9f, + 0x36,0xbe,0x6d,0x1,0x96,0xf4,0xce,0xf6,0x8f,0xc0,0x6b,0x49,0x59,0x7e,0x7b,0x9d, + 0xc0,0xdf,0xd9,0x7a,0x85,0xf8,0x0,0x18,0x1b,0x5b,0x6d,0x2,0x9f,0xe7,0xe9,0x7d, + 0x4a,0xf1,0x79,0xe5,0xba,0x6c,0xa2,0x5d,0x69,0x60,0xc5,0x77,0x6,0x74,0xfc,0x3c, + 0x4a,0x1f,0x8a,0xa6,0x96,0xa4,0xa7,0x36,0x3f,0x83,0x7f,0x98,0x6c,0xbf,0x0,0x5e, + 0x61,0xfe,0x2,0x67,0x8c,0x24,0x59,0x89,0xcf,0x42,0x20,0x6d,0xbe,0x56,0x1,0x62, + 0xa0,0x11,0xb3,0x6e,0x41,0xe3,0xc6,0x4,0x75,0x28,0x89,0xb2,0xc7,0x47,0xcf,0xa7, + 0x90,0x7e,0xa2,0xa0,0x6c,0x84,0x21,0x1,0x2f,0x41,0x7f,0x4c,0xc0,0xb7,0xa0,0xf, + 0x12,0xd9,0xe2,0x3d,0xf0,0xf,0x90,0x1c,0x83,0xcb,0x9f,0x42,0x13,0xa5,0x83,0xb6, + 0x17,0xd,0x85,0xbe,0x41,0xf6,0xba,0x7e,0xd4,0xc1,0x71,0xb4,0x3b,0x9a,0x40,0xc6, + 0xd,0xa8,0xf3,0x0,0x12,0xf8,0x4a,0xd2,0x7,0xe0,0x9b,0x49,0xd2,0x97,0xc6,0x7f, + 0x3b,0xb,0x4b,0x1f,0x25,0x6e,0x6c,0xbb,0xc0,0x26,0x28,0xfc,0xc6,0x5d,0xf8,0x47, + 0x80,0x2c,0x2c,0x47,0xf3,0xca,0x86,0x85,0x65,0xca,0xb,0xeb,0xa9,0xcc,0x8b,0x2f, + 0x75,0xe4,0xee,0xa4,0x3a,0xb6,0xca,0x3c,0x8c,0x65,0x73,0x25,0x64,0xdb,0x6,0xbe, + 0x9a,0x6c,0xcb,0x88,0xa4,0xc0,0xcf,0xb2,0xe1,0x26,0x21,0x87,0x38,0xc1,0xa5,0xf5, + 0xdd,0x79,0xa6,0x74,0x23,0xb4,0x87,0x4f,0xee,0x49,0x80,0x2f,0xe6,0x41,0x23,0x4c, + 0x91,0x4,0x9b,0xd8,0x27,0x72,0x6,0x9,0x4d,0x20,0xcb,0xe0,0x14,0x82,0xa,0x23, + 0x64,0x8b,0x1b,0x4c,0x6e,0xd3,0xd7,0x1e,0x3a,0xde,0x4b,0xbb,0xe,0xbe,0x8d,0xcf, + 0xb,0x81,0xe0,0x5d,0xfd,0xdf,0xd3,0x63,0x17,0x21,0x9,0xbe,0xa,0x21,0x5f,0x27, + 0x87,0x90,0x27,0xa0,0x89,0x6b,0x9,0x54,0x99,0xcb,0xce,0x86,0x1b,0x41,0xd6,0x6c, + 0x5,0x3,0xa9,0xdb,0x87,0x69,0xd7,0x6a,0x4d,0xda,0x87,0xa1,0x9b,0x99,0x1a,0xbe, + 0x7,0x50,0x1c,0x83,0x35,0x22,0x97,0x64,0x7c,0xd5,0xf6,0x20,0x4,0x5b,0xb0,0x10, + 0xd3,0x8c,0x9e,0x5c,0x74,0x5b,0x88,0x10,0x84,0xb2,0xe0,0xc6,0x38,0x17,0x61,0x22, + 0x82,0x93,0x62,0xee,0x3a,0x4c,0x20,0x23,0x5e,0x62,0x31,0x5c,0x8,0xdc,0x5,0x40, + 0xfb,0xa5,0xe2,0x11,0xc0,0x39,0xa4,0x70,0x9f,0x73,0x42,0xda,0x64,0x1b,0xf5,0x1, + 0x47,0xc5,0x57,0x1,0x19,0x16,0x67,0x37,0x15,0xa0,0x32,0xd3,0xc,0xba,0x31,0xe4, + 0x6e,0x50,0x19,0xa3,0x81,0x2f,0x2b,0xf9,0xfb,0x28,0xf5,0x17,0x3,0x15,0x3a,0xf3, + 0xa1,0xd6,0x4d,0x10,0x96,0xc5,0xb0,0xe6,0xfd,0x51,0xc3,0x39,0x81,0x36,0x45,0xdb, + 0x2e,0x2c,0xbc,0xfa,0x85,0x35,0x2,0x32,0x9a,0x71,0x75,0x17,0x1b,0x7b,0x65,0xc1, + 0x7b,0xf0,0xc7,0x80,0x4a,0xe,0xed,0xa3,0xc2,0x64,0x6a,0x8b,0x3c,0xd6,0x40,0x19, + 0xc6,0xd2,0x3a,0x20,0x63,0xbc,0xed,0xef,0x9b,0x99,0x9a,0x77,0x61,0x7,0x25,0xe0, + 0xaa,0x8e,0xdb,0x8d,0x4e,0xf,0x12,0xae,0x6c,0xf0,0xb4,0x4a,0xf9,0x17,0xad,0xfb, + 0x11,0xeb,0xbd,0xe5,0x5c,0xd0,0x98,0xa9,0x74,0x49,0x77,0x54,0x15,0x5a,0x2b,0x54, + 0xab,0x10,0x8,0x86,0x67,0xbb,0x59,0x56,0x48,0xae,0xf3,0x96,0xb1,0xb0,0x37,0xcb, + 0xc5,0xcc,0xa8,0xce,0x85,0x3e,0xc5,0x3e,0x40,0xa2,0x8d,0xc2,0x3a,0x2b,0xaf,0x3b, + 0xcb,0xba,0x31,0xce,0x85,0x90,0x42,0x54,0xba,0x9b,0x60,0xf7,0xa8,0x1f,0x3a,0x25, + 0xb9,0xac,0xca,0x87,0x55,0x4a,0x92,0xb4,0x91,0xbb,0xf9,0xbf,0x65,0x8e,0x33,0x41, + 0x38,0xad,0xd9,0xc1,0xf0,0x3b,0x14,0x2,0x37,0x3b,0xfb,0xbd,0x9f,0x74,0xa2,0x95, + 0x84,0x33,0xe4,0xfb,0xb4,0x25,0x34,0x68,0xc3,0x58,0x5c,0xce,0x3b,0xd4,0xbc,0x12, + 0xc9,0x1f,0x71,0xd2,0xb3,0x71,0xd1,0xde,0xe9,0x27,0x75,0x76,0x98,0x8e,0x10,0xd7, + 0xb3,0xff,0xa6,0xe7,0xbf,0xf3,0xd0,0x9f,0xfc,0xf6,0xba,0x93,0xc6,0x4e,0xa0,0xdd, + 0xd8,0x51,0x5a,0xd,0xc8,0x12,0x18,0x71,0xa,0x8f,0x97,0x9e,0xe1,0x1e,0x67,0xaf, + 0x8a,0xa8,0xb4,0xc6,0xb0,0xd1,0x4c,0x61,0x9f,0xce,0x73,0xb4,0xe3,0xb7,0x93,0x65, + 0x34,0x98,0xd5,0xea,0x91,0xa2,0xc1,0xca,0x3d,0x9b,0x67,0xdc,0x70,0x1d,0xa4,0x10, + 0x2f,0xac,0xc3,0x73,0x43,0x63,0x16,0xde,0x28,0xdb,0x3e,0x1d,0xc,0xb5,0xcd,0x58, + 0xc6,0x27,0x23,0x3f,0x8e,0x8c,0x27,0x36,0x50,0xd2,0xe1,0xf7,0xd5,0x2,0x3b,0x12, + 0x67,0xfe,0xac,0x0,0xe4,0xbf,0x9,0x56,0xfc,0x9f,0x18,0x44,0x28,0x31,0xe2,0x34, + 0xd3,0x21,0xb3,0xc3,0xbb,0x22,0x56,0xe7,0xc4,0x32,0x43,0x9c,0xe6,0x30,0xcb,0xdc, + 0xc1,0xeb,0x3e,0x41,0x54,0xda,0xa7,0xc4,0xe3,0x33,0x7b,0x1e,0x1,0x79,0x4,0xe4, + 0x11,0x90,0x47,0x40,0xb6,0x9b,0xb,0xeb,0x74,0xe4,0x74,0xde,0x78,0x8c,0x41,0x5f, + 0x5d,0x36,0x85,0xf8,0xed,0x75,0x9,0x4f,0x2e,0xa2,0xf9,0x32,0x28,0xd3,0xcf,0x69, + 0x17,0xa9,0x4,0xe7,0xcd,0x32,0x11,0x29,0xf5,0xcc,0x9a,0xf2,0x3c,0x3e,0x5d,0x83, + 0xe9,0xf6,0x68,0xba,0x7b,0x11,0xf,0xbb,0x1d,0x44,0x39,0x39,0x53,0xeb,0xf9,0x6f, + 0xdd,0x71,0xb3,0xbb,0x89,0x29,0x21,0xd9,0x35,0x25,0xa3,0xfe,0x58,0xcf,0x9e,0x53, + 0x1,0xb2,0x46,0x8d,0x16,0xde,0x6c,0x3d,0x6b,0xd1,0x49,0x62,0xb2,0xc5,0x10,0x2d, + 0x0,0x39,0xbb,0x3b,0xab,0x96,0xac,0x2,0x8d,0x30,0x93,0x6a,0xf0,0xd6,0x52,0xf1, + 0x71,0x1c,0x3f,0x95,0xf6,0x2a,0xe4,0x64,0x49,0xa7,0x69,0xbb,0xcf,0x5c,0xf4,0x72, + 0x8,0x37,0xcb,0xc5,0x88,0x35,0xb6,0xa8,0x7b,0xf5,0xf2,0xe2,0x4,0xb3,0xa5,0xd, + 0x75,0x9c,0xce,0xcc,0x67,0x69,0xa7,0x75,0x9d,0x74,0x1c,0x19,0x38,0x4d,0xa8,0xda, + 0xf3,0xe0,0xd8,0xd8,0xfe,0xec,0x43,0x20,0x35,0xb7,0xc9,0x85,0x8d,0xd2,0x48,0x55, + 0x17,0xb0,0x78,0x84,0x49,0xc,0x59,0x85,0x1e,0x13,0xc,0x7d,0xe6,0x86,0xd9,0x6e, + 0x99,0xa2,0x9a,0x19,0xd0,0x58,0x26,0xe2,0x22,0x17,0xe7,0xcb,0x84,0x68,0x28,0x19, + 0x5d,0x11,0x4b,0x6d,0xb2,0x52,0xea,0x32,0xe4,0xd2,0x40,0x19,0x84,0x44,0xc9,0xf, + 0xc0,0x3d,0x61,0xe6,0x3e,0x33,0x78,0x4e,0x82,0x89,0x86,0x84,0x81,0xd4,0x12,0x62, + 0x8f,0x71,0x9,0xcf,0x90,0x66,0x1c,0xe9,0xdb,0x69,0xe1,0xf7,0x5c,0x20,0x16,0x3d, + 0x59,0xc6,0x34,0xc3,0xac,0x39,0xcb,0x17,0xc7,0x34,0xe,0x7f,0xa7,0x7a,0x2d,0x69, + 0x4,0xe9,0x52,0x19,0xa6,0xca,0xd1,0x96,0x41,0x24,0x5d,0x30,0x10,0xc3,0x91,0xe4, + 0xaa,0x74,0x88,0xcb,0xb0,0x5d,0xdd,0x94,0xf0,0xf4,0x88,0x47,0x78,0xf4,0x1,0x4a, + 0xc8,0x10,0xf,0xd1,0xa3,0xcb,0x12,0x24,0xcb,0xd5,0x4e,0xb5,0x7c,0x43,0x40,0xe, + 0x9b,0x6d,0x9b,0x70,0x3d,0x4b,0xbb,0x4d,0x35,0xca,0xd8,0x53,0x3e,0x26,0x45,0xba, + 0xb6,0xbd,0x7f,0xc1,0x71,0x24,0x1c,0x7f,0x7d,0x4e,0x98,0xb4,0x6c,0xa9,0xee,0xdc, + 0xb5,0x60,0xc8,0x16,0xdd,0x5b,0xb3,0x72,0xd5,0x8c,0x15,0x2b,0x9d,0xf,0xbf,0xa8, + 0x16,0x44,0x44,0x90,0x79,0x72,0xcd,0xfd,0x1c,0x59,0x66,0x2b,0xab,0xd8,0x35,0xc0, + 0xea,0x53,0xc9,0x42,0xc,0xaa,0x3f,0x58,0xee,0xa3,0x6a,0xa6,0x8b,0xa9,0xe5,0xb3, + 0xef,0xc8,0x1e,0xef,0x19,0x47,0x52,0xd4,0x96,0x9c,0x4,0x1a,0xff,0xfc,0x7a,0xbd, + 0x2a,0x5b,0x9c,0x5a,0xec,0x30,0x56,0x43,0x68,0x4c,0x3f,0xf5,0x7e,0xbc,0x4b,0xc8, + 0xc0,0xcf,0xf2,0x9b,0xeb,0x7,0x69,0xeb,0xf7,0x68,0x3a,0x80,0xd3,0x98,0x84,0xbf, + 0x7d,0x79,0x1a,0x2a,0x31,0x6a,0xc4,0xec,0x56,0x65,0xc2,0xc2,0xb,0xac,0x41,0xa6, + 0x72,0x9c,0xf1,0xc,0x49,0x63,0x89,0xcd,0x83,0x93,0x92,0x2d,0x86,0x2c,0x6c,0x52, + 0xb,0xb2,0x6f,0xd3,0xb7,0x75,0x1d,0x21,0x2b,0xa7,0x15,0x56,0x4b,0x4d,0x58,0x4d, + 0x88,0xcd,0xf8,0xcb,0x43,0x65,0x9e,0x59,0x40,0x5d,0x43,0xfa,0xa9,0x6e,0x3,0x51, + 0x49,0x4a,0xcd,0xe,0xd9,0x26,0x42,0x17,0xe5,0x63,0x16,0x89,0x52,0xbd,0xd8,0x48, + 0xeb,0x21,0x9f,0x4f,0x78,0xf8,0x23,0x5a,0x49,0x9c,0xb6,0x5a,0x53,0xb,0x25,0x32, + 0xed,0x90,0xa0,0x51,0x20,0x6b,0x84,0x92,0xcd,0xa6,0x16,0xd9,0x74,0x7b,0xe4,0x14, + 0x6c,0xc,0x2d,0xec,0xd,0xa5,0x43,0x49,0x73,0xd3,0x52,0xb9,0x6a,0x2e,0x80,0x65, + 0xd8,0x7c,0x4a,0x95,0xea,0x83,0x30,0xcb,0x67,0x84,0x1f,0x82,0xd6,0x43,0x52,0xb2, + 0xfa,0x4b,0x53,0xf,0xd,0x75,0xd8,0x42,0x30,0x4b,0xe8,0xca,0x83,0x2f,0x78,0xb2, + 0xf6,0xe9,0xac,0x2,0x54,0xd8,0x4e,0x95,0x82,0xba,0x7e,0x51,0xf3,0x76,0xe5,0x99, + 0xec,0x6c,0x5d,0x5c,0xcd,0x74,0xd5,0xa9,0x87,0xd3,0x6e,0x8b,0x8f,0x99,0x52,0xa8, + 0xf6,0xe9,0x54,0x89,0xa7,0x1f,0xff,0x5a,0x58,0x9b,0x82,0xe6,0xb2,0x7e,0xf4,0x2e, + 0xc2,0x74,0xc8,0x9,0x1f,0xf3,0xc3,0xb7,0x65,0x4,0xaf,0xc9,0x10,0xde,0xf6,0x8e, + 0xe,0xbb,0xb2,0xed,0xde,0x81,0xc1,0x91,0xb,0x2e,0xc8,0xd4,0x32,0x2d,0xe4,0xc9, + 0xf2,0x3b,0x59,0x5f,0xc4,0x17,0x9,0xeb,0xaa,0xe3,0xd7,0x6b,0xff,0x4b,0xd9,0xdd, + 0xa8,0x6c,0xf7,0x97,0x76,0xb7,0x8b,0x14,0xa4,0x28,0xab,0x2f,0xb7,0x4e,0xf4,0x42, + 0xbd,0x28,0xb2,0xe,0xa4,0xa4,0x72,0xbe,0xa,0xb2,0xf6,0x28,0x74,0x7b,0x28,0xc7, + 0xad,0x70,0x7b,0xc7,0x7c,0xaa,0x8b,0x32,0x16,0x61,0xb6,0x35,0x35,0x2c,0x9f,0x54, + 0x8a,0x10,0xfc,0x39,0xd9,0xfc,0x8,0xfe,0x3e,0x5c,0xb8,0xcd,0x1,0xbd,0x3e,0xc8, + 0xe8,0x5e,0x3b,0x5b,0x8b,0x6f,0x47,0xd,0x56,0xeb,0x26,0x6b,0xed,0x5f,0xaf,0x69, + 0xf4,0x60,0x36,0x85,0x9f,0xd9,0x4e,0x46,0x34,0xaf,0x8c,0xdf,0x13,0xe3,0xaa,0x2e, + 0x47,0x17,0xf8,0x83,0x45,0x66,0x8d,0x6c,0x61,0xc,0x19,0x66,0x65,0xed,0xe5,0x96, + 0x83,0x52,0xe4,0x6c,0x93,0x84,0x9e,0x22,0x7e,0x9a,0x80,0xd7,0xc0,0xd7,0xc0,0x4b, + 0xe3,0xf,0x8e,0xbb,0x0,0x6a,0x3a,0x92,0x34,0xae,0xb4,0xd7,0xa7,0xb5,0x4b,0x4e, + 0x16,0x1a,0xbb,0x55,0x3f,0xb6,0x4b,0x50,0xb6,0xb4,0x1f,0x4d,0x0,0xab,0x73,0x53, + 0x1a,0xa8,0x60,0x4b,0xf5,0x45,0xef,0xb3,0xab,0x3d,0xcf,0x65,0xdf,0x68,0x35,0x2c, + 0xc6,0x99,0xb3,0x50,0x1b,0xba,0x50,0xe9,0x53,0xc4,0x2f,0x98,0xd7,0x93,0x20,0x23, + 0x7e,0x10,0xfc,0x61,0xeb,0x1b,0xd9,0x5f,0x95,0x88,0x51,0x0,0x33,0x92,0x86,0x35, + 0xc,0x36,0x18,0x6e,0xc3,0x8d,0x34,0x89,0xf9,0x4,0x67,0xc5,0x8b,0xe3,0xad,0x35, + 0xed,0x3c,0xb5,0x4,0x7a,0xb5,0x38,0x3e,0x54,0xba,0x2d,0x4b,0x6e,0x5d,0xac,0xc2, + 0xb2,0x34,0x52,0x31,0x7e,0xdf,0xb8,0x36,0xcd,0x59,0xf7,0xf5,0x8a,0x19,0x1b,0xf4, + 0xa7,0xc4,0x4f,0xb6,0x5f,0xdb,0xe4,0x7f,0x1,0x38,0xa8,0xd4,0xa4,0x57,0x97,0x3b, + 0xbf,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/online.png + 0x0,0x0,0xb,0x7d, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x4,0x73,0x42,0x49,0x54,0x8,0x8,0x8,0x8,0x7c,0x8,0x64,0x88, + 0x0,0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0x14,0xc3,0x0,0x0,0x14,0xc3, + 0x1,0x15,0x70,0x4d,0x42,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x53,0x6f,0x66, + 0x74,0x77,0x61,0x72,0x65,0x0,0x77,0x77,0x77,0x2e,0x69,0x6e,0x6b,0x73,0x63,0x61, + 0x70,0x65,0x2e,0x6f,0x72,0x67,0x9b,0xee,0x3c,0x1a,0x0,0x0,0xa,0xfa,0x49,0x44, + 0x41,0x54,0x68,0x81,0xd5,0x9a,0x69,0x8c,0x1c,0xc7,0x75,0xc7,0x7f,0x55,0xdd,0x33, + 0x3b,0x17,0xf7,0xe0,0xf2,0xda,0x25,0x97,0xa2,0x49,0x2e,0x21,0x2f,0xa5,0x68,0x15, + 0x2a,0x8e,0x68,0x51,0x16,0x96,0x87,0x65,0x48,0xf9,0x40,0x59,0xc8,0x81,0x20,0xb6, + 0x1,0xfb,0x4b,0x80,0x7c,0x15,0x92,0x0,0x51,0x88,0x24,0xa6,0x8c,0xc8,0xa0,0x81, + 0x18,0xc8,0x97,0x8,0xf0,0x7,0x3,0x44,0xa0,0x0,0x56,0xa4,0x40,0x92,0x21,0x85, + 0xb4,0x68,0x99,0x94,0x28,0x24,0x64,0xc4,0x43,0xa2,0x28,0x53,0x94,0x78,0x48,0x33, + 0xbb,0x3c,0x76,0xb9,0xbb,0x73,0x4f,0x57,0xbd,0x7c,0x98,0xee,0x99,0x9e,0xde,0x99, + 0x3d,0x48,0x2a,0x40,0x7a,0xf1,0xd0,0x5d,0x47,0x77,0xfd,0xff,0xef,0xbd,0xaa,0x7a, + 0xaf,0x66,0x95,0x88,0xf0,0xff,0xf9,0x72,0xef,0xe6,0xc7,0x1e,0x3f,0xa0,0xd2,0xd5, + 0x2,0x43,0xda,0x71,0x7,0xad,0x95,0x1,0xad,0x64,0x0,0xc0,0x8a,0xca,0x69,0xad, + 0x72,0xd6,0x78,0xd9,0x78,0x9a,0xab,0x6f,0x3e,0x23,0x85,0xbb,0x35,0xa6,0xba,0x53, + 0xb,0xec,0x7a,0x4e,0xdd,0x63,0x45,0xef,0xd5,0xa2,0x9e,0x12,0x78,0x14,0xd0,0xb, + 0xbc,0x62,0x15,0x1c,0xb5,0x4a,0x5e,0xd6,0xca,0xbe,0xf2,0xab,0xbf,0x91,0xcb,0x77, + 0x32,0xfe,0x6d,0x13,0x18,0xdb,0xef,0xee,0xd5,0xc8,0x3e,0x11,0xf5,0x20,0xc0,0xe0, + 0xc0,0x5a,0x73,0xef,0xe6,0xad,0x4e,0x7f,0xcf,0x4a,0xd2,0xc9,0x6e,0xd2,0x89,0x6e, + 0x92,0x5d,0x19,0x0,0x4a,0x95,0x3c,0x85,0xf2,0xc,0x85,0xd2,0xc,0x37,0xa7,0xaf, + 0x73,0xfe,0x93,0xf,0x4d,0x36,0xf7,0x85,0x3,0xa0,0x94,0xbc,0x6f,0x51,0xff,0x70, + 0xe4,0x59,0xef,0x95,0xff,0x13,0x2,0x3b,0x7f,0x18,0x7b,0x4,0x25,0x7,0x10,0x1e, + 0x1e,0x18,0x18,0x34,0xa3,0x23,0xdb,0x9c,0xcd,0x6b,0xef,0x23,0x9d,0xe8,0x6,0xc0, + 0x8a,0x1,0x51,0x88,0x8,0xc1,0xb7,0x95,0x52,0x28,0xa5,0x40,0x9,0x5a,0x39,0x0, + 0x14,0xca,0x33,0x7c,0xf2,0xc5,0x7,0x9c,0x3a,0x77,0xd2,0xe4,0x72,0x59,0x7,0xc5, + 0x7b,0x88,0x7a,0xe6,0xad,0xbf,0xad,0xbd,0xf3,0xa5,0x10,0xd8,0xf3,0xbc,0xea,0x31, + 0x55,0xe7,0x67,0xc0,0xd3,0x7d,0x7d,0xcb,0xcd,0xd8,0xf6,0x3d,0xce,0x96,0x75,0xa3, + 0x8,0x82,0x58,0x8b,0x31,0x6,0x63,0xcc,0xa2,0xbe,0xe5,0x38,0xe,0x8e,0xe3,0xa0, + 0xb4,0x46,0xa1,0xf8,0xed,0xe7,0xa7,0x38,0x72,0xfc,0x90,0x99,0x9a,0x9a,0x74,0x80, + 0x97,0x9c,0xb8,0xf9,0xc1,0xa1,0xbf,0x92,0xe9,0xbb,0x46,0xe0,0xb1,0xfd,0x6a,0xd8, + 0xc5,0x7d,0x5d,0x29,0xb5,0x69,0xf7,0x63,0xdf,0xd2,0xa3,0x9b,0xbf,0x8e,0x52,0x1a, + 0xe3,0x19,0x3c,0xaf,0xb6,0x28,0xd0,0x1d,0xc9,0xb8,0x31,0x5c,0xd7,0xc1,0x5a,0xc3, + 0xe9,0x8b,0xc7,0x39,0xfc,0xf6,0x1b,0x56,0x44,0x2e,0x7a,0x78,0x4f,0xbe,0xfd,0xac, + 0x5c,0xb8,0x63,0x2,0x63,0xfb,0x63,0xbb,0xb5,0xc8,0x4b,0xa9,0x4c,0x26,0xfd,0x47, + 0x4f,0x7e,0xc7,0x59,0xdd,0xb3,0x1e,0x63,0xea,0xc0,0x6f,0x77,0xfe,0x48,0xe4,0x41, + 0x29,0x85,0xeb,0xc6,0x70,0xb4,0xc3,0xf8,0xf4,0x65,0x7e,0xf1,0xcb,0x83,0xa6,0x58, + 0xc8,0x17,0xac,0x52,0x4f,0x1f,0x79,0xb6,0x76,0xf8,0xb6,0x9,0x8c,0xed,0x8f,0xed, + 0x56,0xc8,0x1b,0x83,0x3,0x83,0x3c,0xbd,0xe7,0x7b,0x4e,0xaa,0x6b,0x19,0xb5,0x6a, + 0xd,0x6b,0x17,0xe7,0x2a,0xf3,0x81,0xe,0x37,0x4,0x55,0x5a,0x3b,0xc4,0x63,0x31, + 0xa,0x95,0x59,0x5e,0x3e,0xfc,0x73,0x93,0x9d,0xc8,0x22,0xa8,0x6f,0xcd,0x47,0xa2, + 0x23,0x81,0xc7,0xf6,0xab,0x61,0x57,0x9c,0x13,0x3,0x83,0x83,0xe9,0x3f,0x7d,0xe2, + 0xcf,0x1d,0x47,0x6b,0xaa,0x95,0xa5,0x69,0x7d,0x31,0xa0,0xa3,0xed,0x4a,0x29,0xe2, + 0xf1,0x18,0xc6,0x1a,0x5e,0x7c,0xe3,0x5f,0x4c,0x6e,0x3c,0x5b,0xf0,0x94,0x79,0xa8, + 0x93,0x3b,0xb5,0x5d,0xb3,0xf7,0x3c,0xaf,0x7a,0x5c,0xdc,0xd7,0xd3,0x99,0x65,0xe9, + 0x6f,0xef,0xfe,0x9e,0xe3,0x68,0x4d,0xa5,0xbc,0x38,0xf0,0x12,0x88,0x84,0xa,0x1, + 0xe8,0x40,0x5a,0x3a,0xb6,0xb6,0x5b,0x2b,0x94,0xcb,0x55,0xb4,0xd2,0xec,0x1d,0xfb, + 0xae,0x93,0x4e,0x2f,0x4b,0xbb,0xb8,0xaf,0xef,0x79,0x5e,0xf5,0x2c,0x9a,0x80,0xa9, + 0x3a,0x3f,0xd3,0x4a,0x6f,0xfa,0xc3,0x27,0xbe,0xeb,0xa4,0xba,0x32,0x54,0x2a,0x15, + 0x2c,0x1e,0x16,0xd3,0x5e,0xa4,0x29,0x22,0x6,0x6b,0x5b,0xeb,0x82,0xb2,0x44,0xca, + 0xad,0xed,0x5e,0x53,0xac,0x47,0xa5,0x5c,0x21,0x19,0xcf,0xf0,0xed,0x6f,0x7e,0xc7, + 0xd1,0x4a,0x6f,0xf2,0x57,0xc0,0x39,0xd7,0x1c,0x17,0xda,0xf9,0xc3,0xd8,0x23,0x20, + 0xc7,0xbe,0xb9,0xf3,0x49,0x7e,0x77,0xf3,0xe,0x2a,0xb5,0x22,0x35,0xcf,0xeb,0xa0, + 0xeb,0x39,0xb7,0x25,0xb9,0xb,0xf8,0x96,0xea,0xd0,0xee,0x38,0x2e,0x89,0x58,0x8a, + 0x53,0x17,0x8f,0x71,0xf8,0xd8,0x2f,0x1,0xb5,0x23,0xba,0x4f,0xcc,0xb5,0x80,0x92, + 0x3,0x7d,0x7d,0xcb,0xcd,0xe8,0xa6,0xed,0x54,0xbd,0xa,0x55,0xaf,0x82,0x60,0x10, + 0x22,0x5a,0x9a,0x47,0xd3,0xb,0x6a,0xde,0x36,0x45,0x22,0x65,0x23,0xbe,0x58,0x43, + 0xb5,0x56,0xa1,0x52,0xab,0x70,0xff,0xc6,0xed,0xf4,0xf6,0xf4,0x19,0x94,0x1c,0x88, + 0xc2,0x6d,0x21,0x30,0xb6,0xdf,0xdd,0x8b,0xf0,0xf0,0xd8,0xf6,0x3d,0xe,0x28,0x2a, + 0xb5,0x42,0xb,0x18,0x11,0x8b,0xd,0xc4,0x5a,0x8c,0x34,0xc5,0xda,0x66,0x7d,0x20, + 0x46,0x2c,0xc6,0x5a,0x8c,0x8d,0x80,0x97,0x10,0x50,0x69,0x25,0x1d,0x75,0xc1,0x4a, + 0xad,0x0,0xa2,0x78,0xf4,0xa1,0x3d,0xe,0xc2,0xc3,0x63,0xfb,0xdd,0xbd,0x61,0xcc, + 0x6e,0x2b,0x1b,0xd9,0xb7,0x66,0x60,0xad,0x19,0x5e,0x3b,0xea,0x94,0xbd,0x2,0x9e, + 0xad,0xcd,0x6f,0xe6,0x79,0xdd,0x43,0xe6,0x75,0x8f,0x68,0x5b,0xa7,0xbe,0x16,0x43, + 0xa5,0x56,0x62,0x78,0x70,0x94,0x35,0x2b,0x8f,0x9a,0x89,0x1b,0xd9,0x7d,0x40,0x23, + 0x6e,0x6a,0x58,0x60,0xd7,0x73,0xea,0x1e,0x11,0xf5,0xe0,0xe8,0xc8,0x36,0x7,0x84, + 0x52,0x75,0xb6,0xa9,0xd1,0x88,0x66,0xc3,0xf5,0x22,0xe1,0x72,0xd8,0x5,0x5a,0xad, + 0x15,0xf4,0xf,0xac,0x62,0x23,0xd6,0x8c,0x5a,0x37,0xfc,0x5e,0xa9,0x32,0x8b,0x88, + 0x70,0xff,0x96,0x87,0x1c,0x11,0xf5,0xe0,0xae,0xe7,0xd4,0x3d,0x73,0x2c,0x60,0x45, + 0xef,0x55,0xc0,0xc6,0x81,0x11,0xaa,0x5e,0x19,0x63,0x43,0x21,0x42,0x78,0xe9,0x6b, + 0xa3,0xa5,0xb6,0x13,0x58,0x22,0x8f,0x1d,0xfb,0x36,0x1b,0x3a,0x8e,0x21,0x50,0xf3, + 0xca,0x6c,0x58,0xfd,0x55,0xe0,0x55,0xac,0xe8,0xbd,0xc0,0x4f,0x5b,0x2c,0xa0,0x45, + 0x3d,0x35,0x38,0xb0,0xd6,0xa4,0x13,0xbd,0x54,0xbc,0x22,0xd6,0x4a,0x53,0x44,0x10, + 0xff,0x5e,0x17,0xdf,0xb7,0xc3,0xfe,0x1f,0xd1,0x78,0xa7,0xf9,0x21,0xd6,0xb6,0xcc, + 0x87,0xfa,0x1c,0x69,0x3f,0x8f,0x4c,0x68,0x1e,0x95,0x6b,0x45,0x32,0x89,0x5e,0xd6, + 0xac,0x1a,0x34,0x5a,0xd4,0x53,0x2d,0x2e,0xf4,0xf8,0x1,0x95,0x16,0x78,0x74,0xcb, + 0xc6,0x11,0x7,0x81,0x52,0xad,0xd0,0x5c,0x79,0x82,0x75,0x1e,0xf,0xc1,0x43,0xc4, + 0x43,0xc4,0x80,0xdf,0x2e,0x62,0xda,0xf4,0xf5,0xeb,0xa5,0xd9,0x1e,0xd4,0xd7,0x27, + 0x6a,0xdd,0x65,0x4,0xb,0xc1,0xb3,0x5f,0x16,0xb1,0x58,0x9a,0xee,0x19,0xd4,0x97, + 0xaa,0x79,0x40,0xd8,0x3c,0x34,0xe2,0x8,0x3c,0xfa,0xf8,0x1,0x95,0x6e,0xb8,0x50, + 0xb5,0xc0,0x90,0xd2,0xe8,0xfe,0xee,0x55,0xd4,0x4c,0x5,0x63,0xab,0xd,0x7b,0x46, + 0x27,0xe9,0x52,0x5c,0xe9,0xf6,0x26,0x7f,0xe8,0xbd,0x8,0x86,0x9a,0x57,0xa1,0xaf, + 0x7b,0x15,0x80,0xae,0x16,0x18,0x2,0xce,0xbb,0x0,0xda,0x71,0x7,0x45,0x84,0x74, + 0xb2,0x1b,0x2b,0x1e,0x46,0x4c,0xcb,0x60,0x51,0x10,0x2d,0xae,0xde,0xb6,0x9f,0xb4, + 0x25,0xdb,0x52,0x9e,0x77,0x15,0x92,0xb6,0x64,0x8d,0x18,0xd2,0x5d,0xcb,0x8,0x30, + 0x37,0x8,0x58,0x2b,0x3,0x4a,0x41,0x32,0x96,0xc1,0xb3,0x1e,0x62,0xcd,0x9c,0xc1, + 0x16,0xd6,0x98,0x74,0xee,0xd7,0x69,0x42,0x2f,0xc1,0x42,0x2,0x78,0xc6,0x23,0x15, + 0xaf,0xa7,0xa9,0xd6,0xd6,0xf,0xc,0xea,0x16,0x50,0x32,0x20,0x28,0x92,0xf1,0xc, + 0x25,0x6f,0x1a,0xe3,0x87,0xcb,0x8b,0xd2,0xd8,0x22,0x42,0x87,0xce,0x6e,0xd7,0xba, + 0x57,0xcc,0x37,0x1e,0x2,0x9e,0x57,0x25,0x15,0xab,0xc7,0x74,0xc1,0x89,0x47,0xeb, + 0xb1,0x8a,0xaa,0xbf,0x67,0xc3,0x4,0x42,0xf,0x4b,0xd5,0xd8,0xdd,0x0,0xdd,0xba, + 0x4,0x47,0x3b,0xf8,0x4,0xac,0xa8,0x9c,0x52,0x50,0x2c,0xe7,0xd1,0x8e,0x83,0x91, + 0xf6,0x88,0x6e,0xcb,0xa7,0xa3,0x8b,0xc1,0x2,0x6e,0x35,0x1f,0x79,0x8d,0x4b,0xb1, + 0x92,0x27,0xc0,0xdc,0x20,0xa0,0xb5,0xca,0x89,0x8,0xc5,0xf2,0x2c,0x3d,0x99,0x3e, + 0x7f,0x99,0x6c,0xef,0xd3,0x5f,0x2a,0xe8,0xe,0xfd,0x83,0xef,0x3a,0xca,0x61,0xa6, + 0x7c,0x8b,0x0,0x73,0x83,0x80,0x35,0x5e,0x56,0x69,0x87,0x7c,0x69,0x86,0xde,0xcc, + 0xa,0x8c,0xf5,0x5a,0x3e,0xb6,0xa4,0xc1,0x16,0x49,0x76,0xae,0x7b,0x4,0xf5,0xd2, + 0x2,0x3a,0xdc,0x5f,0x2b,0x97,0x7c,0x69,0x86,0x0,0x73,0x83,0x40,0x3c,0xcd,0xd5, + 0x5a,0x9,0x7b,0xf3,0xd6,0x35,0xbd,0x71,0xcd,0x56,0x94,0x68,0x3c,0xf1,0x3a,0xf8, + 0xf0,0xfc,0x9a,0xee,0xec,0xfb,0xb,0x83,0x9e,0xcf,0x42,0x5a,0xc7,0x88,0x39,0x49, + 0x26,0x67,0xaf,0x3,0xd8,0x78,0x9a,0xab,0xe0,0xef,0xc4,0x6f,0x3e,0x23,0x5,0x5, + 0x47,0x2f,0x5c,0x39,0x67,0x10,0x45,0x2a,0xde,0xb,0x12,0xda,0x69,0x23,0x21,0xae, + 0xe0,0xe7,0x4,0x78,0x8d,0x10,0x58,0xfc,0xd8,0x3e,0xfa,0x9e,0x84,0x73,0x84,0x96, + 0x1d,0xd9,0xdf,0xd5,0xad,0xd7,0x1c,0x23,0x94,0xdd,0x49,0x24,0xfc,0xce,0xc4,0x7a, + 0x41,0x14,0x9f,0x7e,0x71,0xce,0x28,0x38,0x1a,0x9c,0xaf,0x36,0x83,0x39,0x25,0x2f, + 0x8f,0x4f,0x64,0x1f,0x9b,0x2d,0x4d,0x93,0x89,0xf5,0x33,0x55,0xcc,0x46,0x7c,0x58, + 0xe6,0xb8,0xc3,0x7c,0xee,0xb2,0x18,0x9f,0x6e,0xa7,0xe9,0x4e,0x16,0x5c,0x96,0xe8, + 0x27,0x5f,0xbe,0xc5,0xc4,0xcd,0xac,0x23,0x4a,0x5e,0xe,0x9a,0x9a,0xc1,0x9c,0xb2, + 0xaf,0x0,0x7c,0x96,0x3d,0x47,0xca,0x67,0x6b,0xad,0xc1,0x9a,0x20,0x5b,0xb2,0xad, + 0x41,0x5c,0x10,0x6c,0x19,0x3f,0x3c,0x36,0x76,0x6e,0x60,0x66,0x6d,0xe3,0x7d,0x63, + 0xea,0x59,0x96,0xb1,0xcd,0x8c,0xcb,0xf8,0xdf,0x37,0xa1,0xf6,0x76,0x59,0x1b,0x28, + 0xd2,0xf1,0x5e,0x2e,0x4d,0x7c,0xd4,0x82,0xb5,0x85,0x40,0xfd,0x94,0x58,0x4e,0x9d, + 0xbd,0x70,0xc2,0x28,0x81,0xfe,0xd4,0xba,0x66,0xf6,0x64,0x5b,0x7,0x69,0x3b,0x58, + 0x78,0x50,0x53,0x4f,0xcc,0x8d,0xf5,0x1a,0x60,0xed,0x12,0x41,0x87,0xb3,0xb4,0x95, + 0xcb,0x86,0x50,0x28,0xce,0x7d,0x76,0xd2,0x20,0x72,0xe6,0xad,0x67,0x19,0x9f,0x43, + 0x40,0x29,0x15,0x2f,0x4d,0xab,0x3,0x13,0x37,0x72,0xce,0x85,0xec,0x19,0xfa,0x13, + 0xeb,0x71,0x54,0xac,0xa1,0xe1,0x86,0xa6,0xa3,0x21,0x6f,0xa3,0x3d,0x8,0x8f,0x4d, + 0x33,0x69,0x69,0x69,0xf,0x2c,0x12,0xa,0xab,0xdb,0x25,0x4a,0x11,0x71,0x74,0x8c, + 0x15,0xe9,0xf5,0x5c,0xc8,0x9d,0xe6,0xda,0x64,0xce,0x99,0xbd,0xae,0xfe,0x9,0x48, + 0x2a,0xa5,0x62,0xd,0x2,0x4a,0x29,0xd,0xc4,0xdf,0xfb,0x89,0x39,0x6c,0x6b,0xf2, + 0xfe,0xb1,0x93,0x87,0xac,0x8,0xac,0x4a,0x6f,0x9c,0x3b,0xa1,0x5a,0x2c,0xd1,0x46, + 0xd3,0x11,0x4b,0xb5,0xba,0x61,0xc4,0x7d,0xa2,0x87,0x0,0x6d,0x64,0xa0,0x7b,0x23, + 0x8,0x1c,0x3f,0x7b,0xd8,0x9a,0xaa,0x9c,0x3e,0xf1,0xcf,0xe6,0xd7,0x40,0x17,0xd0, + 0xa5,0x7c,0xe0,0x0,0xb1,0x40,0x6e,0xfc,0x56,0xfd,0x78,0x3a,0x3f,0xa5,0xcf,0x7c, + 0xf6,0x2e,0xfd,0xc9,0x21,0xba,0xe3,0xab,0x22,0xc9,0x46,0x78,0x55,0xa,0xa5,0x95, + 0x91,0x54,0x33,0x7c,0x6f,0x49,0x6e,0x82,0x78,0x7f,0x11,0x7f,0x3d,0xc9,0x55,0xf4, + 0xa7,0xd7,0x73,0xf6,0xf2,0x3b,0xcc,0x14,0xa6,0xf4,0xb5,0xb3,0xea,0xa7,0x61,0xac, + 0x80,0xab,0x43,0xae,0xe4,0x0,0xce,0x87,0xff,0x66,0x4e,0x57,0xb,0xbc,0x75,0xf4, + 0xe4,0x7f,0xda,0xf1,0xa9,0x2b,0x6c,0xe8,0x7b,0x80,0x2e,0x9d,0xaa,0x6b,0xda,0x78, + 0x4d,0xed,0xcd,0x37,0x37,0x22,0x13,0x76,0x21,0x2d,0xb7,0x93,0x84,0x9b,0x66,0xe3, + 0xf2,0x51,0x26,0xa6,0xaf,0x70,0xec,0xd4,0x21,0xa9,0xcc,0xf2,0xf6,0xf9,0xff,0x30, + 0x67,0x3,0x9c,0x81,0x4,0x4,0x94,0x2f,0x0,0xea,0xc3,0x17,0xcd,0x7e,0xaf,0x6a, + 0xb3,0xaf,0xfe,0xe6,0xa0,0x2d,0x95,0xf3,0xc,0xf7,0x7f,0xd,0xad,0x62,0x5f,0x3a, + 0xe8,0x40,0x5c,0x1d,0x63,0xcb,0xca,0xaf,0x51,0xaa,0xe6,0x79,0xed,0x9d,0x83,0xd6, + 0xab,0xda,0xdc,0x7,0xff,0x6a,0x7e,0x1c,0xc5,0x19,0x9e,0xc4,0x36,0x2c,0xb7,0x2e, + 0x33,0x73,0xe1,0xd,0xf3,0x97,0xc5,0x62,0xa1,0xfc,0xda,0xbb,0x7,0xad,0x43,0x8c, + 0x91,0x95,0xdf,0x20,0xe1,0x64,0x5a,0xf,0xac,0xec,0xdc,0x4d,0xec,0x4e,0x25,0x15, + 0xcb,0xb0,0x75,0xf5,0x37,0x70,0x54,0x8c,0xd7,0xdf,0x3b,0x68,0x8b,0xc5,0x42,0xe5, + 0xe3,0xd7,0xcc,0xbe,0x99,0x2f,0x98,0x8d,0xe2,0x4,0x4c,0x40,0xc0,0x0,0x5e,0x48, + 0x6a,0xd9,0xff,0xe2,0xd2,0xe7,0x27,0xe4,0xef,0x26,0x6e,0xe6,0x78,0xe9,0xed,0x17, + 0xac,0xe7,0x79,0xdc,0xb7,0x66,0x27,0x7d,0x5d,0x83,0x2d,0xab,0x49,0xa7,0xd5,0xe3, + 0x76,0xa4,0x37,0x39,0xc8,0xfd,0x6b,0x76,0x62,0x8c,0xc7,0xbf,0x1f,0x7d,0xc1,0x4e, + 0x4c,0xe6,0xb8,0xfa,0x9e,0xfc,0x68,0xe2,0x7d,0x2e,0x5,0xb8,0x22,0x38,0x3d,0x15, + 0xfa,0x1d,0x2b,0x9,0xa4,0x7c,0x49,0x3,0x49,0x20,0x35,0xfc,0xa4,0xde,0xb1,0xf6, + 0xf7,0xd4,0xbe,0x54,0x2a,0x9d,0xf8,0x83,0x47,0xfe,0x4c,0xaf,0xee,0x59,0xcf,0xf8, + 0xec,0x45,0x2e,0x4d,0x9e,0xa1,0x66,0xca,0xdc,0x8d,0x2b,0xe6,0x24,0xd8,0xb0,0xfc, + 0x77,0x58,0xb3,0x6c,0x13,0x13,0xd3,0x57,0x78,0xf5,0x9d,0x83,0xb6,0x54,0x2c,0x54, + 0xae,0x1c,0x97,0x7f,0xfc,0xf4,0x4d,0x7b,0x1c,0x28,0xfa,0x52,0x2,0xa,0xfe,0xf3, + 0x8c,0x88,0xd4,0xc2,0x4,0x54,0x88,0x40,0x2a,0x20,0x0,0x24,0xd7,0x6c,0x63,0xf3, + 0x96,0x27,0x9c,0x1f,0xb9,0x71,0x3d,0xb0,0x63,0x74,0x8f,0xba,0xef,0x9e,0xaf,0xa3, + 0x80,0xcf,0xa7,0xcf,0x73,0x75,0xfa,0x43,0x3c,0x53,0xbd,0x2d,0xe0,0xae,0x13,0x67, + 0xa8,0x67,0x2b,0xeb,0x7a,0xee,0x45,0x80,0xf,0x2e,0xbf,0xcb,0xb1,0x53,0x87,0xc4, + 0xab,0xd8,0xf1,0xf3,0xaf,0x9a,0xbf,0xbf,0x76,0x9a,0x8b,0x3e,0xe8,0x52,0x88,0x40, + 0x11,0x98,0x1,0x2a,0x22,0xd2,0x7a,0x3a,0x1d,0x22,0x91,0x8c,0x4a,0xf7,0x5a,0xfa, + 0xb7,0xfe,0x89,0xf3,0xd7,0x89,0x1e,0x76,0x74,0xa7,0xfb,0xec,0xf6,0xfb,0x77,0xeb, + 0xe1,0x81,0x7,0xb0,0x58,0xa6,0x8a,0x59,0xae,0x17,0xae,0x72,0xa3,0x70,0x75,0x41, + 0xab,0xc4,0x9c,0x4,0x2b,0xd2,0x43,0xac,0x4c,0xf,0xd1,0x97,0x1a,0x44,0xa3,0xb9, + 0x90,0x3b,0xcd,0xbb,0x67,0xf,0xdb,0xd9,0xc2,0x94,0x2e,0x4f,0x71,0xfc,0xec,0x8b, + 0xe6,0x27,0xf9,0x1c,0x37,0x81,0x72,0x88,0x40,0x20,0x33,0x40,0xb5,0xa1,0xf8,0x76, + 0x3f,0x5a,0x28,0xa5,0xba,0x42,0xe0,0x13,0x61,0xd9,0xf4,0xb8,0xde,0x36,0xf8,0x20, + 0x7f,0xe1,0xa6,0xd4,0xbd,0xab,0x96,0xf,0xd8,0x91,0xaf,0x6c,0xd3,0x1b,0x56,0x7f, + 0x95,0x4c,0xa2,0x17,0x44,0x28,0xd6,0x66,0xa8,0x78,0x5,0x2a,0xa6,0x44,0xd5,0x2b, + 0x1,0x10,0x77,0x93,0x74,0x39,0x49,0xba,0xdc,0x34,0xa9,0x58,0x37,0x28,0x45,0xbe, + 0x7c,0x8b,0x4b,0x13,0x1f,0x71,0xee,0xb3,0x93,0xf6,0xda,0x64,0x4e,0xd7,0xa,0xf2, + 0x71,0xf6,0x4,0x2f,0x7c,0xfa,0x2b,0xfb,0x3f,0x40,0xc5,0x7,0x1f,0x96,0x3c,0x50, + 0x10,0x11,0xdb,0x82,0xb5,0xd3,0xaf,0x2e,0xbe,0x35,0x12,0x3e,0x89,0x2e,0xff,0xb9, + 0xb,0x88,0x3,0x5d,0x23,0x7f,0xac,0x77,0xad,0x18,0xe6,0xfb,0x4e,0x5c,0xd,0x3, + 0xac,0x5e,0x3e,0x68,0x37,0xae,0x1b,0xd1,0xcb,0x33,0x2b,0x49,0x25,0xba,0x49,0x75, + 0x2d,0x23,0xd9,0x95,0x6,0xa0,0x54,0x29,0x50,0xac,0xcc,0x52,0x2c,0xcf,0x30,0x99, + 0xbf,0xce,0xa7,0x9f,0x9f,0xb3,0x13,0x93,0x59,0xd,0x60,0x2a,0xf2,0xc9,0xf5,0x8f, + 0xf9,0xf9,0x47,0xbf,0xb0,0x47,0x80,0xaa,0xf,0x3e,0xb8,0x7,0x16,0xc8,0x3,0x5e, + 0x5b,0x65,0x2f,0xf4,0xb3,0x51,0x9d,0x7,0xae,0x4f,0x20,0xe5,0x13,0x88,0xe3,0xef, + 0x86,0xeb,0x7e,0x9f,0xf5,0xab,0x47,0xf5,0xae,0xf4,0x72,0xc6,0x74,0x52,0x3d,0xa0, + 0x16,0xf8,0x57,0x3,0x1,0x6b,0x4b,0x72,0x26,0x7f,0x93,0x5f,0x8f,0xbf,0x6f,0x8f, + 0x64,0xff,0x9b,0xab,0xd4,0x57,0x97,0x40,0xaa,0xd4,0xfd,0xbc,0x0,0xd4,0xa2,0x1a, + 0x5f,0x32,0x81,0xe,0x64,0x2,0x8b,0xc4,0xfc,0xb2,0xb,0x38,0xbd,0x1b,0xc8,0xf4, + 0xf,0xb3,0x36,0xb5,0xc2,0x59,0xed,0x26,0x65,0x55,0x3c,0xc9,0x4a,0x1,0x55,0x2b, + 0x71,0xad,0x56,0x54,0x37,0x8a,0x37,0xcc,0xf8,0xe4,0x5,0xb2,0xb7,0x2e,0x53,0xa0, + 0xbe,0x74,0x87,0x97,0xef,0x22,0x75,0x8d,0xd7,0x64,0x9,0xa0,0xee,0xe8,0x9f,0x3d, + 0x7c,0x37,0x53,0xd4,0xb5,0xde,0x8,0x47,0x22,0x2,0xfe,0xa6,0x13,0x12,0x1b,0xba, + 0x5b,0x60,0x29,0x98,0x5b,0xae,0xff,0x5,0x79,0x88,0xdc,0x2f,0xf,0x2c,0xc4,0xde, + 0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/restore.png + 0x0,0x0,0x9,0x8, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,0x1, + 0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd8,0xc,0x2, + 0x8,0x24,0x16,0x56,0x6f,0x14,0x27,0x0,0x0,0x8,0x88,0x49,0x44,0x41,0x54,0x68, + 0xde,0xed,0x59,0xdb,0x6e,0x1b,0x47,0x12,0xad,0xea,0x9e,0x9e,0x19,0x5e,0x86,0x23, + 0xca,0xba,0x90,0xba,0x58,0x80,0x9,0x46,0x41,0x94,0x88,0x8e,0x42,0x29,0xab,0x37, + 0xaf,0xbf,0x21,0x9,0xf2,0x17,0xfb,0xb,0xf9,0x9e,0xe4,0xf,0xd6,0x6f,0x6,0x12, + 0x38,0x9,0x25,0x67,0x23,0x47,0x6b,0x4b,0xe6,0xda,0xb0,0x25,0x42,0xa2,0x24,0x5e, + 0x44,0xce,0xc,0x67,0xa6,0xbb,0x6b,0x1f,0x4c,0xa,0x8c,0x93,0x28,0xb6,0x48,0x23, + 0x36,0x90,0x2,0xe6,0x89,0x68,0xa2,0x4e,0x57,0xd5,0xa9,0xaa,0xd3,0x48,0x44,0x80, + 0x88,0x30,0x8a,0x11,0x11,0xf3,0x3c,0x6f,0x46,0x6b,0xbd,0xa9,0xb5,0xbe,0x15,0x86, + 0x61,0x21,0x8e,0xe3,0x96,0x61,0x18,0xbb,0xae,0xeb,0x56,0x2c,0xcb,0xfa,0x5,0x11, + 0xeb,0x88,0x18,0xc3,0x98,0x8d,0xc1,0x3b,0x6e,0x63,0x1,0xf0,0xcd,0x37,0xdf,0x20, + 0x22,0x1a,0xe9,0x74,0x3a,0x85,0x88,0xb3,0xd5,0x6a,0xf5,0xfd,0x3b,0x77,0xee,0x6c, + 0xde,0xbd,0x7b,0xf7,0x9f,0xf5,0x7a,0xfd,0x36,0x0,0xdc,0x22,0xa2,0x9b,0x44,0x94, + 0x1d,0x37,0x0,0x63,0x1c,0x7f,0xf2,0xf9,0xe7,0x9f,0x13,0x11,0x69,0x0,0xe8,0x31, + 0xc6,0xbc,0xc7,0x8f,0x1f,0xeb,0xbb,0x77,0xef,0xce,0x24,0x93,0xc9,0xa4,0x61,0x18, + 0x9,0xad,0x75,0x3e,0x93,0xc9,0xe4,0xb3,0xd9,0xac,0xad,0xb5,0xde,0x45,0xc4,0x6, + 0x22,0xd2,0x5b,0x3,0x0,0x0,0x20,0x8,0x2,0x48,0x24,0x12,0x8a,0x31,0xa6,0x7c, + 0xdf,0x87,0x5a,0xad,0x96,0xf2,0x7d,0xdf,0x55,0x4a,0x99,0xcd,0x66,0xd3,0x59,0x5d, + 0x5d,0x4d,0xbd,0xf7,0xde,0x7b,0x19,0xc7,0x71,0x26,0x89,0xe8,0xa7,0xaf,0xbf,0xfe, + 0xfa,0xe0,0x8b,0x2f,0xbe,0x50,0x6f,0x5,0x0,0x44,0xd4,0x44,0x14,0x11,0x51,0x8c, + 0x88,0xda,0x30,0xc,0xd2,0x5a,0xc3,0xd1,0xd1,0x11,0x44,0x51,0x94,0xed,0x76,0xbb, + 0xd4,0xe9,0x74,0x44,0xb7,0xdb,0x9d,0x5a,0x5a,0x5a,0xba,0x96,0xcb,0xe5,0xd2,0x9f, + 0x7d,0xf6,0xd9,0x7d,0x22,0xaa,0x1,0x80,0x37,0x4a,0x71,0x8f,0x2d,0x2,0x44,0x44, + 0x0,0x40,0x8c,0x31,0x1a,0xb0,0x9a,0xd6,0x1a,0x3c,0xcf,0xc3,0x6a,0xb5,0x9a,0xed, + 0xf5,0x7a,0xf6,0xf1,0xf1,0x71,0x66,0x6d,0x6d,0xcd,0xdc,0xd8,0xd8,0x48,0x2c,0x2e, + 0x2e,0xce,0x10,0xd1,0x6e,0x18,0x86,0x8f,0x88,0xe8,0xf0,0xaa,0x20,0xfe,0x10,0x80, + 0xd6,0xda,0xf2,0x7d,0x3f,0x6b,0x18,0x86,0x6b,0x9a,0xa6,0x9,0x0,0x8,0x0,0xba, + 0xff,0x5d,0xf8,0x8d,0x88,0x44,0x44,0x6,0x22,0x4e,0x10,0x51,0xde,0x34,0x4d,0x6e, + 0x9a,0x66,0x84,0x88,0x5a,0x8,0x1,0x88,0x8,0x9d,0x4e,0x87,0x55,0xab,0xd5,0x64, + 0xab,0xd5,0x42,0xdf,0xf7,0x8d,0x20,0x8,0xb2,0xab,0xab,0xab,0xb9,0xc5,0xc5,0xc5, + 0x99,0x6c,0x36,0x9b,0x26,0xa2,0x84,0xd6,0xfa,0x19,0x63,0xcc,0x1b,0x1b,0x80,0x93, + 0x93,0x93,0xac,0x10,0x62,0x43,0x4a,0xb9,0x12,0x86,0xe1,0x84,0x69,0x9a,0xdc,0x30, + 0xc,0xc5,0x18,0xa3,0x97,0x6f,0x5e,0x6b,0xcd,0x18,0x63,0x2,0x11,0x6d,0x0,0xc8, + 0xc4,0x71,0x2c,0xb5,0xd6,0xaa,0x9f,0x5e,0xc0,0x18,0x3,0xa5,0x14,0x36,0x9b,0xcd, + 0xc4,0xce,0xce,0x8e,0x79,0x7a,0x7a,0x9a,0x3a,0x3c,0x3c,0x14,0x9b,0x9b,0x9b,0xbc, + 0x54,0x2a,0x39,0x8e,0xe3,0xcc,0x31,0xc6,0x7e,0x20,0xa2,0x1d,0x44,0xf4,0xc7,0x2, + 0xc0,0xb6,0xed,0xc,0x11,0xad,0x70,0xce,0x37,0xc3,0x30,0x74,0x9f,0x3c,0x79,0x92, + 0x3c,0x38,0x38,0xb0,0xdb,0xed,0xb6,0xf8,0xa3,0xa0,0x99,0xa6,0x19,0x6,0x41,0xa0, + 0x7f,0xfe,0xf9,0x67,0xb7,0xd7,0xeb,0x31,0xc3,0x30,0x80,0x31,0x6,0x8c,0x31,0x20, + 0x22,0x90,0x52,0xe2,0xc9,0xc9,0x89,0xd1,0x6a,0xb5,0x92,0x9d,0x4e,0x67,0xd6,0xf7, + 0x7d,0xd1,0x6e,0xb7,0xb3,0xc5,0x62,0x71,0x7a,0x61,0x61,0x21,0x91,0x4e,0xa7,0x53, + 0x5a,0xeb,0x3d,0x0,0x38,0x63,0x8c,0x5,0xa3,0x2,0x30,0xa3,0x28,0x9a,0x90,0x52, + 0x66,0xe,0xf,0xf,0xed,0x6f,0xbf,0xfd,0x36,0xb3,0xb5,0xb5,0x35,0x53,0xaf,0xd7, + 0x53,0x5a,0x6b,0x6,0x0,0x30,0x1c,0x8d,0x7e,0xd,0x48,0xa5,0x94,0xf6,0x7d,0x9f, + 0xf7,0x7a,0x3d,0x31,0x48,0xa1,0xe1,0x48,0x0,0x0,0x28,0xa5,0x58,0xad,0x56,0x4b, + 0x7b,0x9e,0x67,0x9e,0x9e,0x9e,0x5a,0xa7,0xa7,0xa7,0x7c,0x7d,0x7d,0x3d,0x31,0x3f, + 0x3f,0x3f,0xe7,0xba,0xee,0x7d,0xa5,0xd4,0xf6,0xf1,0xf1,0xf1,0x93,0xd9,0xd9,0xd9, + 0xee,0x95,0x1,0x8,0x21,0x50,0x4a,0xc9,0x8f,0x8e,0x8e,0xec,0xed,0xed,0xed,0xf4, + 0xbd,0x7b,0xf7,0x32,0xf,0x1f,0x3e,0x74,0xce,0xcf,0xcf,0xf9,0xb0,0x53,0x2f,0xa5, + 0x93,0x40,0x44,0xe0,0x9c,0x83,0x10,0xe2,0xe2,0xe6,0x87,0xd8,0xa,0x38,0xe7,0x40, + 0x44,0x10,0x86,0x21,0xd4,0xeb,0x75,0x33,0x8a,0xa2,0x6c,0x10,0x4,0xbc,0xd5,0x6a, + 0x4d,0x2e,0x2f,0x2f,0xcf,0x16,0xa,0x85,0x89,0x7c,0x3e,0x9f,0x99,0x9e,0x9e,0x9e, + 0x69,0xb5,0x5a,0x4f,0x33,0x99,0x4c,0xed,0xb2,0x68,0x5c,0xc6,0x42,0xda,0x34,0x4d, + 0x55,0xab,0xd5,0xac,0x9d,0x9d,0x9d,0xc9,0xe7,0xcf,0x9f,0xbb,0x52,0x4a,0x36,0xb8, + 0xd5,0xcb,0xe6,0xa7,0xc1,0xef,0xc3,0xce,0xbf,0x6c,0x9c,0x73,0x0,0x0,0x38,0x3f, + 0x3f,0x37,0x77,0x77,0x77,0xaf,0x35,0x1a,0x8d,0x44,0xb3,0xd9,0x44,0x21,0x4,0x4c, + 0x4f,0x4f,0xdb,0x0,0x30,0x25,0x84,0x48,0x9d,0x9d,0x9d,0x5,0x0,0x70,0x35,0x0, + 0x0,0x40,0x8d,0x46,0xc3,0x3c,0x38,0x38,0x70,0xcf,0xce,0xce,0x12,0x88,0x8,0xc3, + 0x69,0x31,0x42,0xdf,0xb8,0x0,0x18,0x86,0x21,0x4,0x41,0x80,0x5a,0x6b,0x3e,0x33, + 0x33,0x93,0xf0,0x3c,0x6f,0x52,0x6b,0x1d,0x3,0x80,0x4f,0x44,0xcf,0xd2,0xe9,0xb4, + 0x75,0xe5,0x3e,0xc0,0x18,0x83,0x28,0x8a,0x78,0x10,0x4,0x42,0x4a,0xf9,0x1b,0xe7, + 0x89,0x8,0xb4,0xd6,0xbf,0xb9,0xe9,0x41,0xaa,0x5c,0xd2,0x33,0x2e,0xce,0x98,0xa6, + 0x9,0x96,0x65,0x51,0x2e,0x97,0x53,0xb9,0x5c,0x2e,0x48,0xa5,0x52,0xd,0xc6,0xd8, + 0x1,0x0,0x3c,0x47,0xc4,0x93,0x6e,0xb7,0x1b,0x8e,0xd4,0xc8,0x6,0x4e,0x6a,0xad, + 0x7f,0xe3,0x24,0x11,0x81,0x52,0xa,0x94,0x52,0x17,0xe,0xd,0x9c,0x1f,0x66,0x9f, + 0xdf,0x33,0xa5,0x5e,0x4c,0x11,0x13,0x13,0x13,0x51,0xa1,0x50,0x38,0xff,0xe8,0xa3, + 0x8f,0xba,0xcb,0xcb,0xcb,0xf5,0xeb,0xd7,0xaf,0xff,0xd7,0x30,0x8c,0x2d,0x0,0xd8, + 0x8d,0xe3,0xf8,0xe9,0xb5,0x6b,0xd7,0x9a,0x23,0x1,0x18,0xb0,0xc7,0x80,0x41,0x86, + 0x41,0x9,0x21,0xb4,0xeb,0xba,0x51,0x32,0x99,0x54,0x8c,0x31,0xde,0x6f,0x80,0xca, + 0xf7,0x7d,0xde,0xed,0x76,0x4d,0x29,0x25,0xfb,0xbd,0x73,0x0,0x0,0x96,0x65,0xc1, + 0xc4,0xc4,0x44,0xb8,0xbc,0xbc,0xdc,0x2c,0x97,0xcb,0xb5,0x4f,0x3e,0xf9,0xe4,0x70, + 0x7e,0x7e,0xbe,0xea,0xba,0xee,0x7d,0xc6,0xd8,0xf6,0xc9,0xc9,0xc9,0xd3,0x91,0x58, + 0xe8,0xcf,0xa2,0x22,0xa5,0x84,0x4c,0x26,0x13,0xad,0xaf,0xaf,0x1f,0xde,0xbc,0x79, + 0xb3,0x6d,0x9a,0x26,0x47,0x44,0xea,0xf5,0x7a,0xba,0x52,0xa9,0x64,0x2b,0x95,0xca, + 0x5c,0xab,0xd5,0xb2,0x6,0xbd,0x60,0x38,0x92,0x42,0x8,0x3d,0x37,0x37,0xe7,0x97, + 0x4a,0xa5,0x46,0xb9,0x5c,0x3e,0x2e,0x16,0x8b,0x4f,0x16,0x16,0x16,0xb6,0xd2,0xe9, + 0x74,0x5,0x0,0xf6,0x0,0xe0,0x6c,0x76,0x76,0x76,0xb4,0x3e,0x70,0x99,0x69,0xad, + 0x41,0x4a,0x9,0xa9,0x54,0x4a,0x7d,0xfc,0xf1,0xc7,0xad,0x2f,0xbf,0xfc,0xf2,0x21, + 0x0,0xc,0x42,0x3d,0x15,0x45,0xd1,0xfb,0xf,0x1e,0x3c,0xc8,0x49,0x29,0x2f,0x9c, + 0x27,0x22,0x10,0x42,0x90,0xeb,0xba,0x2a,0x9f,0xcf,0xf7,0x3e,0xfc,0xf0,0xc3,0xe3, + 0xcd,0xcd,0xcd,0x6a,0xa9,0x54,0xda,0x77,0x1c,0xe7,0x11,0x63,0xec,0x7,0x44,0x1c, + 0x5f,0x27,0x7e,0xa5,0x6d,0x88,0x31,0xce,0x5f,0x54,0xeb,0x9,0x0,0xfc,0xd8,0x5f, + 0x90,0xfe,0x21,0x84,0x30,0x6,0x29,0x35,0x94,0x6e,0x94,0xcd,0x66,0xfd,0x95,0x95, + 0x95,0x4e,0xb9,0x5c,0x6e,0xae,0xae,0xae,0x3e,0xb9,0x7e,0xfd,0xfa,0x7f,0x5c,0xd7, + 0xad,0x20,0xe2,0x2e,0x11,0x3d,0x7f,0x5d,0xe7,0x47,0x2,0xd0,0x67,0x23,0x16,0xc7, + 0xb1,0x49,0x44,0x21,0x22,0x3e,0x7,0x0,0x23,0xc,0xc3,0x38,0x8a,0x22,0x93,0x88, + 0x58,0x1c,0xc7,0x60,0x18,0x6,0x38,0x8e,0xa3,0xe7,0xe7,0xe7,0x83,0x62,0xb1,0xd8, + 0x5a,0x5b,0x5b,0x7b,0xb6,0xb1,0xb1,0xf1,0x70,0x71,0x71,0x71,0x7,0x0,0x76,0xc3, + 0x30,0x7c,0x64,0xdb,0xf6,0x21,0x63,0x6c,0xbc,0xd3,0xe8,0x55,0x30,0xd,0xd7,0xc8, + 0x80,0x86,0x53,0xa9,0x14,0x15,0xa,0x85,0x66,0xb9,0x5c,0xae,0x97,0x4a,0xa5,0xfa, + 0xd2,0xd2,0xd2,0x2f,0xd3,0xd3,0xd3,0xdf,0x1,0xc0,0x7d,0x44,0xac,0xd9,0xb6,0xfd, + 0xd7,0xed,0x3,0x43,0x14,0xc9,0x10,0xd1,0x24,0x22,0x4e,0x44,0x4c,0x4a,0x89,0x8c, + 0x31,0xc8,0xe5,0x72,0xb0,0xb2,0xb2,0xd2,0x5c,0x5f,0x5f,0x3f,0x2c,0x95,0x4a,0x7b, + 0xc5,0x62,0x71,0xd7,0x71,0x9c,0x2d,0x44,0xfc,0x9,0x0,0xe,0x10,0x51,0xbf,0x35, + 0x2b,0xe5,0x20,0xa,0x5a,0x6b,0xb4,0x6d,0x9b,0x72,0xb9,0x9c,0x97,0x4e,0xa7,0x83, + 0xdb,0xb7,0x6f,0x57,0xd7,0xd6,0xd6,0xaa,0x99,0x4c,0x66,0xc7,0x71,0x9c,0xef,0x1, + 0x60,0x17,0x0,0xde,0xbe,0x9d,0x78,0x10,0x9,0xad,0x35,0x2b,0x14,0xa,0x91,0xd6, + 0xfa,0x28,0x95,0x4a,0x3d,0x2b,0x97,0xcb,0xdb,0xfd,0x7c,0xdf,0x43,0xc4,0xc7,0x88, + 0xd8,0x7c,0xeb,0x54,0x89,0x7e,0x3a,0x61,0x10,0x4,0x6,0x11,0xc1,0xf2,0xf2,0xf2, + 0xc9,0x8d,0x1b,0x37,0xea,0x9c,0xf3,0x1d,0xd7,0x75,0x7f,0x4,0x80,0x37,0x26,0x6c, + 0x8d,0x3,0x0,0x69,0xad,0x19,0xe7,0x9c,0x2b,0xa5,0xc,0x44,0x8c,0x53,0xa9,0x54, + 0xd5,0xb2,0xac,0xa,0x63,0x6c,0x1b,0x0,0x9e,0xf6,0x65,0x14,0x5,0x6f,0xc0,0x46, + 0x2,0xd0,0xa7,0xd2,0x1,0xfb,0xc4,0x0,0x70,0xa6,0xb5,0xde,0x7,0x80,0x48,0x29, + 0xf5,0x3d,0xe7,0x7c,0x1f,0x11,0x7b,0x6f,0x52,0x99,0x33,0xc6,0x40,0x9d,0x8c,0x31, + 0xa6,0x0,0xa0,0xed,0x38,0xce,0xd3,0xf3,0xf3,0xf3,0x9a,0xd6,0x5a,0xb,0x21,0x6a, + 0x6f,0xda,0xf9,0x71,0x44,0x0,0xf1,0x45,0x18,0x8,0x0,0x7c,0x44,0x3c,0x5,0x80, + 0xd3,0x77,0x4e,0x1b,0x7d,0xe7,0xc5,0xdd,0x77,0x1a,0x40,0x5f,0x89,0xa3,0xbf,0xa, + 0xc0,0x48,0x35,0x20,0xa5,0xc,0xc3,0x30,0xc,0xa4,0x94,0x37,0xc,0xc3,0xf8,0x57, + 0xbb,0xdd,0x96,0x5a,0x6b,0x1c,0x9e,0x8b,0x5e,0xe3,0x22,0x93,0x0,0xd0,0x60,0x8c, + 0xdd,0xc9,0x64,0x32,0xff,0x46,0xc4,0x68,0x2c,0x0,0x6,0xb3,0xfc,0xf0,0x6a,0xc8, + 0x18,0x3,0xce,0x39,0x78,0x9e,0x67,0x54,0x2a,0x95,0x49,0xcf,0xf3,0x56,0x2c,0xcb, + 0x12,0x51,0x14,0xd9,0x83,0x63,0xaf,0xea,0x79,0x14,0x45,0xcc,0xb2,0x2c,0x28,0x16, + 0x8b,0xf0,0xc1,0x7,0x1f,0x3c,0xca,0xe5,0x72,0x5b,0x44,0x84,0x6f,0x34,0x2,0x8c, + 0x31,0x10,0x42,0x80,0xef,0xfb,0xe6,0xf6,0xf6,0xf6,0xdc,0x83,0x7,0xf,0x88,0x73, + 0xce,0x5e,0x37,0x25,0xfb,0xaa,0x4,0x4b,0x26,0x93,0x70,0xeb,0xd6,0xad,0xd6,0xe2, + 0xe2,0xa2,0xcc,0xe5,0x72,0xe1,0xeb,0xa4,0xa4,0x31,0x42,0xee,0x83,0x52,0xa,0xdb, + 0xed,0xb6,0x18,0x2c,0xf5,0xaf,0x2b,0xb7,0x10,0x11,0xf4,0x7a,0x3d,0x48,0xa5,0x52, + 0xd0,0x68,0x34,0xb4,0x94,0x32,0x6,0x0,0x39,0xae,0x1a,0x18,0x4c,0x96,0x3a,0x9d, + 0x4e,0x47,0xa6,0x69,0x1a,0x83,0x75,0x72,0xb0,0x26,0x32,0xc6,0xc0,0x34,0xcd,0x4b, + 0x5,0xac,0x57,0x19,0xc7,0x6d,0xdb,0x6,0x21,0xc4,0xd8,0x59,0x8,0xb5,0xd6,0x38, + 0x39,0x39,0x19,0xe5,0xf3,0xf9,0x8e,0xeb,0xba,0x41,0xbf,0x70,0x7f,0x25,0xb1,0xc, + 0xab,0x16,0xa3,0x7c,0x7f,0xa6,0xf6,0x5d,0x29,0x2,0x52,0x4a,0xcc,0xe7,0xf3,0xbd, + 0x52,0xa9,0xd4,0xe8,0x74,0x3a,0x6a,0x6f,0x6f,0xf,0x5b,0xad,0x96,0x3d,0xd0,0x82, + 0xc6,0x30,0xc1,0x42,0x1c,0xc7,0x10,0xc7,0xf1,0xaf,0xb4,0xa5,0xb1,0x0,0x88,0xe3, + 0x98,0xb4,0xd6,0xe1,0xec,0xec,0xec,0x79,0xb9,0x5c,0x8e,0xa4,0x94,0x21,0x11,0xe1, + 0xfe,0xfe,0x7e,0xb6,0xdd,0x6e,0xdb,0x51,0x14,0x8d,0xe3,0x7d,0xf9,0x42,0x18,0x7b, + 0x59,0x38,0x1b,0x19,0x80,0xe7,0x79,0x1d,0xce,0xf9,0xff,0x1c,0xc7,0x99,0x2a,0x14, + 0xa,0x79,0x0,0xe0,0xa6,0x69,0xb6,0xa7,0xa6,0xa6,0xf8,0xd1,0xd1,0x91,0xa,0x82, + 0x40,0xc0,0x8b,0x17,0x9a,0x91,0x0,0xf4,0x7a,0x3d,0x23,0x99,0x4c,0xea,0xa5,0xa5, + 0x25,0xb4,0x2c,0xcb,0x6,0x0,0x6b,0x2c,0x34,0x1a,0x4,0xc1,0x69,0x26,0x93,0xa9, + 0x20,0x22,0x63,0x8c,0x95,0xf3,0xf9,0xbc,0xfd,0xe9,0xa7,0x9f,0xea,0x42,0xa1,0x70, + 0xee,0x79,0x1e,0x8f,0xa2,0x68,0x2c,0x63,0x88,0x52,0xa,0xd,0xc3,0xc0,0xb9,0xb9, + 0x39,0xe1,0xba,0x6e,0xd4,0x7f,0xed,0x79,0xf5,0x81,0xf2,0x32,0xfa,0xd3,0x5a,0x27, + 0x5a,0xad,0x56,0x91,0x73,0x5e,0x12,0x42,0x2c,0x98,0xa6,0xc9,0xfb,0x8f,0x1a,0x7a, + 0x9c,0xe3,0x83,0x52,0x8a,0x29,0xa5,0x92,0x61,0x18,0x76,0xa4,0x94,0xf7,0xb2,0xd9, + 0xec,0x77,0xaf,0xba,0xbd,0xfd,0x99,0x3a,0x1d,0x68,0xad,0xf7,0x7d,0xdf,0xaf,0x23, + 0xa2,0xdd,0x7f,0x9c,0x18,0xfb,0xec,0xc3,0x39,0x87,0x38,0x8e,0xd,0xa5,0x94,0x66, + 0x8c,0xb5,0xbf,0xfa,0xea,0x2b,0xf5,0xda,0x5c,0xfc,0xf7,0x38,0xfd,0x37,0x80,0xab, + 0xd9,0xff,0x1,0x9f,0x9d,0x96,0x85,0x8a,0x8f,0x6c,0x16,0x0,0x0,0x0,0x0,0x49, + 0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/redframe.png + 0x0,0x0,0x4,0xe2, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x44,0x0,0x0,0x0,0x44,0x8,0x6,0x0,0x0,0x0,0x38,0x13,0x93,0xb2, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0x16,0x25,0x0,0x0,0x16,0x25,0x1, + 0x49,0x52,0x24,0xf0,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xb, + 0xf,0xe,0xd,0x82,0x2a,0xc,0x98,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x43, + 0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x0,0x43,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x77, + 0x69,0x74,0x68,0x20,0x47,0x49,0x4d,0x50,0x57,0x81,0xe,0x17,0x0,0x0,0x4,0x3d, + 0x49,0x44,0x41,0x54,0x78,0xda,0xed,0x9c,0x3f,0x93,0xdc,0x44,0x10,0xc5,0x7f,0x4f, + 0x9e,0xfb,0x93,0x38,0xc3,0x24,0x7c,0x6,0xe3,0x8c,0xba,0x2a,0x2,0xa7,0x14,0x9f, + 0x98,0x90,0x3,0x4c,0x39,0x27,0x73,0x42,0x2,0x81,0xcb,0x8e,0x8,0xc0,0x2e,0xfb, + 0xd4,0x4,0x9a,0x91,0x7a,0x47,0x23,0xed,0x4a,0x7,0x55,0xab,0xd5,0x28,0x39,0xed, + 0x69,0x56,0x3b,0xf3,0xf4,0xfa,0x75,0xf7,0xcc,0xb4,0x74,0xf,0x0,0xd,0xf0,0xdc, + 0xe0,0xce,0xe0,0x99,0x40,0x2,0x63,0xa3,0x47,0xde,0x71,0x15,0xae,0xb,0x1a,0x83, + 0xcf,0x6,0x6f,0x5,0xaf,0x4,0x6f,0xc,0x5a,0xfd,0xd8,0x81,0xf1,0x9d,0xe0,0x85, + 0xc1,0x27,0xc0,0x34,0x7c,0x69,0x93,0x60,0x28,0x3,0x46,0x33,0xed,0xac,0xfb,0x73, + 0x2d,0xf8,0x5,0xf8,0x39,0x0,0xcf,0x81,0x17,0xc0,0x5f,0x40,0x3b,0xb4,0xdb,0x30, + 0x45,0x32,0x30,0x4a,0xe3,0xd0,0xe1,0xf9,0xdf,0x6,0xdf,0xa,0xfe,0x8,0xc0,0x9d, + 0xe0,0x93,0x41,0x2b,0xf8,0x48,0x47,0xa3,0x86,0xd,0xb2,0xc4,0xf7,0xd7,0xb3,0x24, + 0x67,0x8d,0x1b,0x93,0xc5,0xb1,0xde,0xd2,0x61,0x70,0x17,0x80,0x67,0xc0,0x3f,0x11, + 0xc9,0x7,0xe0,0x43,0x2,0xb5,0xd9,0x18,0x2b,0x34,0x36,0x7,0x34,0x66,0x83,0x6f, + 0x23,0x75,0x60,0x98,0xa0,0x35,0xf8,0x22,0x8,0x94,0x2e,0xc6,0x86,0xd6,0x44,0x50, + 0xf2,0x1b,0x6f,0xd,0x18,0xcd,0x88,0x6d,0x1c,0xf7,0x8d,0x1c,0x8b,0x80,0x26,0x24, + 0x11,0x4d,0xe3,0x8e,0xe7,0x2d,0x9d,0xf9,0xb4,0x5b,0x15,0xd7,0x23,0x66,0xa5,0x68, + 0x26,0xd8,0x40,0x8,0x0,0x82,0x65,0x8d,0x9b,0xd8,0x48,0x1d,0x28,0x1f,0x22,0x38, + 0x6c,0x51,0x53,0xf2,0x7e,0x6b,0x60,0xc6,0xad,0x1b,0xcb,0xc1,0xb0,0x42,0xc9,0x3d, + 0xb9,0x41,0xf7,0xa0,0x6c,0xd1,0x7c,0x3c,0x10,0xc9,0x24,0x4,0x37,0x53,0x66,0xd6, + 0x26,0x40,0x54,0x30,0x33,0x37,0xf0,0xd6,0xa,0xa0,0x6c,0x49,0x4b,0x18,0x82,0xcf, + 0x9b,0x82,0xc7,0x39,0x18,0x52,0xf0,0x22,0x43,0x41,0x99,0xe3,0xe7,0xd6,0x3a,0x4d, + 0x79,0x48,0xcd,0x6d,0x1b,0x60,0x98,0xd,0x60,0xdc,0x52,0xf0,0x3e,0x96,0x11,0x20, + 0x70,0xe8,0x93,0x35,0x63,0xe,0xf,0x49,0x68,0xb5,0x2d,0x76,0x88,0x68,0x26,0x73, + 0x26,0x9f,0xf4,0x33,0x4c,0x5,0x30,0x14,0x22,0x3d,0x39,0xf3,0xd1,0x99,0x6b,0x47, + 0xca,0x57,0xbc,0x66,0xe4,0xe3,0xb3,0x42,0x0,0x17,0xe6,0x92,0xa0,0x9,0xd0,0xdb, + 0x16,0x3e,0x6a,0x3,0x81,0x9b,0x75,0x39,0x4a,0x6f,0xe2,0x3a,0x21,0xc2,0xd,0x6b, + 0x54,0xfb,0x9,0xf0,0x72,0x3,0x66,0x73,0x7f,0x24,0xc1,0x53,0xe1,0x7a,0xb3,0x4, + 0x8c,0x4b,0x3d,0x94,0xe9,0xc8,0x6e,0x8f,0x92,0xa6,0xec,0x1a,0x10,0x15,0xd8,0xbf, + 0x6b,0x40,0x12,0x1e,0xde,0x1d,0x57,0x40,0x32,0xc6,0xec,0x1e,0x10,0x73,0x32,0x62, + 0x15,0x90,0x71,0xf8,0x5e,0x4d,0x26,0xcb,0x6d,0x2a,0x20,0x9d,0xa8,0xf6,0xc9,0xea, + 0xee,0xe3,0x90,0x68,0x36,0xfd,0x2a,0x43,0xd8,0x33,0x20,0x4e,0x3f,0xb4,0x2a,0x97, + 0xb9,0x60,0xa6,0xd8,0xde,0xdd,0xae,0x9f,0xc,0x3b,0xc8,0xfb,0x9a,0xfd,0x92,0xe2, + 0x70,0xe,0x59,0xd5,0xed,0x96,0x13,0xbc,0x1a,0x98,0x65,0x9f,0x6b,0x1c,0x52,0x1, + 0xa9,0x80,0x1c,0xd,0xcc,0xfc,0x51,0x3,0x33,0x1e,0x31,0xc9,0x7c,0xa1,0x1e,0xa6, + 0xc7,0x63,0xf7,0xc9,0x9d,0xdb,0x52,0x65,0x35,0xfd,0x9f,0x70,0xbf,0x35,0xe,0x89, + 0x4b,0xb8,0x35,0xfd,0x1f,0x74,0x44,0xc,0x9b,0x86,0xaa,0xa8,0xe6,0x4b,0x11,0xcd, + 0xda,0x1b,0x5d,0x92,0xdb,0xd5,0x63,0x0,0xb9,0xb4,0x3d,0x67,0x49,0x43,0x16,0xbb, + 0x5d,0xb9,0xcd,0x7a,0xba,0x50,0xd3,0x59,0x3a,0x85,0x98,0xa6,0xd9,0xac,0xbd,0x40, + 0x4f,0xb3,0x6a,0xf5,0x3f,0x52,0x4b,0x97,0xc6,0x90,0x9a,0xcb,0xcc,0x38,0x89,0x1a, + 0xa9,0x66,0xde,0xa6,0x2,0x92,0x81,0x52,0x1,0x71,0x2e,0xb7,0x2,0xc2,0xb8,0xa4, + 0xa4,0x26,0x77,0xd9,0xe7,0x6a,0x32,0x6b,0x1,0xd9,0x6a,0x15,0xc4,0xff,0x1a,0x87, + 0x9c,0xfb,0xc6,0xff,0x9f,0xe8,0x2a,0x1a,0x3e,0x3,0x57,0x8c,0xeb,0xee,0x74,0x42, + 0xc6,0x1b,0x96,0x2,0x1e,0xcb,0x3b,0xaf,0xef,0xcf,0x10,0x90,0x94,0x52,0x5c,0xd, + 0x3,0x4d,0xb5,0x83,0x36,0x51,0x73,0x37,0xda,0xbc,0xbb,0x34,0x52,0x55,0xdc,0x2e, + 0xbd,0x89,0x6a,0x8,0x57,0x23,0x33,0xb7,0xa3,0xf9,0x20,0x61,0xd,0xa7,0xd0,0x22, + 0xde,0xb0,0x49,0x35,0x6a,0xe7,0x2a,0x2b,0x5,0x16,0xa4,0xc9,0xe3,0xe6,0xc8,0xf8, + 0xfa,0x7,0x1c,0x4e,0xf4,0xd1,0x7d,0xbd,0x49,0xa9,0xd2,0xf1,0xdc,0x62,0x8a,0xd2, + 0xc4,0x4f,0xde,0xe5,0x89,0xba,0xa0,0x32,0x20,0x19,0xbd,0x1a,0x5f,0xbd,0xb8,0x36, + 0xe8,0x29,0x95,0xa8,0x95,0x84,0xee,0xd8,0xf5,0x53,0x3d,0xe1,0xc4,0x79,0xe3,0x37, + 0xc7,0x94,0x4a,0xeb,0x8e,0x31,0x44,0x38,0x30,0x96,0x76,0x74,0xea,0x47,0x97,0x56, + 0x28,0x3c,0x96,0x31,0xf9,0x3,0xce,0xc0,0x92,0xb9,0xdd,0xcc,0x61,0x86,0x46,0xb2, + 0x68,0x26,0x73,0xe8,0x3f,0xa2,0xa3,0xa3,0x92,0x7a,0xfd,0xc7,0x1e,0x7e,0x6,0xf0, + 0x6,0xc6,0x55,0x99,0x89,0x21,0x2a,0xdc,0x40,0x6,0xb7,0x6b,0xa8,0x3b,0xc5,0xa4, + 0x3c,0x67,0x28,0x31,0xc1,0xa6,0xc5,0x71,0xd5,0x6f,0x1e,0xb9,0x96,0xb6,0x55,0xc9, + 0xaf,0xf1,0x6,0x5c,0x5,0x77,0xfa,0x4e,0xae,0x19,0x4b,0x3a,0x38,0x45,0x79,0xcd, + 0x8,0xd9,0x1c,0x70,0xac,0x34,0xcd,0x92,0xc0,0xaa,0xc,0x4a,0xeb,0xa8,0xd8,0x6, + 0x83,0x77,0x82,0xa7,0xce,0x3d,0x25,0x66,0xa8,0xf0,0xe4,0x46,0x63,0xf5,0x60,0x7a, + 0x53,0xc8,0xd7,0x4d,0x5d,0xc7,0x47,0x8c,0x74,0x1d,0x9d,0x24,0x98,0xb9,0x77,0x9a, + 0x4c,0x15,0x4b,0xaa,0x1c,0x9d,0xfa,0xbe,0xe4,0x6c,0x6c,0x5,0x4f,0x6c,0xc8,0xfc, + 0xdf,0x7,0xe0,0x35,0xf0,0x7d,0xfc,0xc7,0xcd,0x9,0xf4,0x3c,0x78,0xd9,0xca,0x4, + 0x23,0x64,0x13,0xda,0xa8,0xa1,0x74,0xb4,0xe4,0x61,0xbc,0xae,0xc8,0x83,0xec,0xbe, + 0xd7,0x9f,0xcf,0x15,0x4d,0xfa,0xf7,0x83,0xa8,0xb0,0x5a,0xe0,0x41,0x8a,0x6d,0xae, + 0x80,0xd7,0x1,0xf8,0xcd,0xe0,0x2b,0xe0,0xeb,0xf8,0xda,0x8c,0x7e,0x56,0xbd,0x44, + 0xf3,0xec,0xe5,0x1,0x23,0x3d,0x98,0xa,0x94,0xe6,0x12,0x2f,0x3f,0x31,0x63,0x27, + 0x98,0x52,0xbe,0xa8,0x64,0x47,0x42,0x7,0x9b,0xef,0xb7,0x4,0xd7,0xc0,0x2b,0xe0, + 0xf7,0x10,0x69,0xf3,0x83,0xc1,0x9f,0x2d,0x7c,0x3,0x7c,0xe9,0x9f,0xc8,0xd4,0x1b, + 0x16,0x1a,0x46,0x6f,0x5b,0x58,0xa4,0x39,0xa7,0x78,0xad,0x39,0x40,0x4f,0x11,0xe5, + 0x63,0x31,0x49,0xcc,0x3,0xdf,0x2,0xbf,0x2,0x6f,0x0,0xfb,0x17,0xef,0x49,0x9c, + 0x3e,0x89,0xa6,0xed,0x61,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60, + 0x82, + // /home/maemo/tietoopcom/resources/general.png + 0x0,0x0,0x1b,0xbd, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x48,0x0,0x0,0x0,0x3e,0x8,0x6,0x0,0x0,0x0,0x88,0x96,0x5d,0x9b, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,0x1, + 0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0x2, + 0xf,0x7,0x3a,0x96,0x5d,0x5d,0x54,0x0,0x0,0x1b,0x3d,0x49,0x44,0x41,0x54,0x78, + 0xda,0xed,0x7b,0x59,0x6f,0x1c,0xe7,0xb9,0xe6,0x53,0xfb,0xd2,0xfb,0x42,0x76,0xb3, + 0xb9,0x4b,0x24,0x25,0x59,0xa2,0xa5,0x58,0xa6,0x6d,0x25,0x1e,0x38,0xe,0x92,0x8b, + 0xe4,0x22,0x48,0x6e,0x92,0xf3,0xb,0xce,0x6d,0x2e,0xe7,0xf,0x4,0xf9,0x13,0xb9, + 0x3b,0x37,0xc1,0x49,0x70,0x32,0x83,0x9c,0x8b,0x24,0x90,0x6,0x48,0x2,0x5b,0x93, + 0x28,0xb6,0x45,0x49,0x76,0xc4,0x88,0x16,0x29,0x91,0xec,0x7d,0xad,0xae,0x7d,0x9f, + 0x8b,0xe6,0xf7,0xb9,0xba,0x45,0xca,0xf6,0x19,0xf,0x30,0x1,0xd2,0x40,0x3,0xec, + 0x62,0x57,0x7d,0x55,0xef,0xf7,0x2e,0xcf,0xf3,0xbc,0x6f,0x3,0xff,0x7c,0xfd,0xf3, + 0xf5,0xcf,0xd7,0x57,0xf8,0x8a,0xe3,0xf8,0x9f,0x46,0xf8,0x32,0x2f,0x26,0x8,0x2, + 0xe6,0xe7,0x3f,0xff,0x39,0x77,0x70,0x70,0x90,0x6e,0x34,0x1a,0x7c,0xa7,0xd3,0x61, + 0x58,0x96,0xfd,0xca,0x2d,0x9b,0x3c,0x3f,0x8a,0xa2,0xaf,0x6c,0x47,0xcf,0xfa,0x7f, + 0x1c,0xc7,0x8,0xc3,0x10,0x51,0x14,0x81,0x65,0x59,0x4,0x41,0x80,0x20,0x8,0xc0, + 0xb2,0x2c,0x38,0x8e,0x3,0xcb,0xb2,0xf4,0x7f,0xe4,0x59,0xe3,0x38,0xa6,0xe7,0xad, + 0xad,0xad,0x31,0xeb,0xeb,0xeb,0xd1,0xf6,0xf6,0xb6,0xc1,0xfb,0xbe,0xaf,0x46,0x51, + 0xb4,0x0,0xe0,0x5f,0x1,0x6c,0x0,0x60,0x1,0xc4,0xc,0xc3,0x7c,0x25,0xc6,0x61, + 0x18,0xe6,0x85,0xf3,0x93,0xd7,0xfe,0xbf,0x75,0xf7,0xb3,0xae,0x4f,0x8e,0x27,0xdf, + 0x2c,0xcb,0xd2,0xbf,0x93,0xf7,0x30,0xfb,0x9c,0xc,0xc3,0x30,0x41,0x10,0xc8,0x9e, + 0xe7,0xb5,0xc3,0x30,0xfc,0x37,0xfe,0x67,0x3f,0xfb,0x99,0xda,0xed,0x76,0xe7,0x6c, + 0xdb,0xfe,0x76,0x14,0x45,0x57,0xb3,0xd9,0xac,0x7f,0xba,0x68,0xfc,0xff,0x22,0x36, + 0xbf,0xec,0x75,0xbe,0xc8,0xf7,0xcf,0x33,0x10,0x79,0xf1,0x3c,0xf,0x96,0x65,0xe1, + 0xfb,0x3e,0xa2,0x28,0x42,0x1c,0xc7,0x60,0x59,0x16,0x71,0x1c,0x23,0x8a,0x22,0xfa, + 0xdd,0x53,0x2f,0x62,0x44,0x51,0x54,0x2d,0xcb,0x3a,0x7e,0xf4,0xe8,0xd1,0xff,0xe6, + 0x7f,0xf3,0x9b,0xdf,0x8,0xc5,0x62,0x51,0x91,0x65,0xb9,0x96,0x4e,0xa7,0xc5,0x6c, + 0x36,0x2b,0x12,0x77,0xfb,0x47,0x49,0x58,0x67,0x79,0xa8,0xa2,0x28,0x90,0x24,0x9, + 0xbe,0xef,0x43,0x55,0x55,0x28,0x8a,0x2,0xd7,0x75,0xe1,0x38,0xe,0xc2,0x30,0x84, + 0x28,0x8a,0xb0,0x6d,0x1b,0x96,0x65,0xbd,0x70,0x2e,0xcb,0xb2,0x30,0xc,0x23,0x73, + 0x7c,0x7c,0x9c,0xe7,0x1f,0x3d,0x7a,0xe4,0x5d,0xbb,0x76,0xcd,0xcf,0xe7,0xf3,0xa1, + 0x24,0x49,0xd4,0x9a,0x51,0x14,0x4d,0xe5,0x8a,0xa4,0x7b,0xce,0x5e,0xec,0xff,0x27, + 0x43,0x9d,0x86,0x9,0xe6,0xe6,0xe6,0x50,0xad,0x56,0x31,0x1a,0x8d,0x20,0xcb,0x32, + 0x32,0x99,0xc,0x4,0x41,0x80,0xeb,0xba,0xf0,0x3c,0xf,0xa2,0x28,0xa2,0x5e,0xaf, + 0xe3,0xf8,0xf8,0x18,0x61,0x18,0xd2,0x67,0x21,0x39,0xcb,0x71,0x9c,0xa8,0xd7,0xeb, + 0x39,0x7c,0x2a,0x95,0x62,0x0,0x20,0x8,0x82,0x98,0x24,0xb6,0x28,0x8a,0x68,0x92, + 0x23,0xbb,0x43,0x12,0x5c,0xd2,0x48,0x9e,0xe7,0xc1,0xf7,0x7d,0x4,0x41,0x30,0xb5, + 0x8b,0x5f,0x26,0xc7,0xcc,0x7e,0xf7,0x3c,0xaf,0x3d,0xef,0x9a,0x67,0x1d,0x8f,0xe3, + 0x18,0xb2,0x2c,0x23,0x8e,0x63,0x18,0x86,0x1,0x86,0x61,0x20,0xcb,0x32,0x54,0x55, + 0x45,0x14,0x45,0x8,0x82,0x0,0xb2,0x2c,0xc3,0xb6,0xed,0x33,0xd,0x1c,0x86,0x21, + 0x7c,0xdf,0x8f,0xa3,0x28,0x2,0xff,0xe3,0x1f,0xff,0x78,0xc3,0x34,0xcd,0x15,0xcb, + 0xb2,0x4,0x45,0x51,0xc0,0xf3,0x3c,0x4d,0x7c,0x24,0x56,0x1,0x20,0xc,0x43,0x6a, + 0x8,0x86,0x61,0x10,0x4,0x1,0x6c,0xdb,0x86,0x69,0x9a,0x53,0xc7,0xbf,0xac,0x91, + 0xce,0x4a,0xac,0x9f,0x77,0xfe,0xcb,0x36,0x83,0xdc,0xfb,0xf1,0xf1,0x31,0xda,0xed, + 0x36,0xbd,0x6f,0x0,0x50,0x14,0x85,0x3e,0xf,0xc7,0x71,0xf4,0x3d,0x93,0x83,0x20, + 0x8,0x2,0xb2,0xd9,0x2c,0x9f,0x4a,0xa5,0x16,0xf9,0xd5,0xd5,0xd5,0xff,0xce,0xf3, + 0x7c,0x36,0x9d,0x4e,0x67,0x48,0x4c,0xca,0xb2,0x4c,0x2d,0x9e,0x4e,0xa7,0x11,0x4, + 0x1,0x3a,0x9d,0xe,0xf6,0xf6,0xf6,0x60,0xdb,0x36,0x18,0x86,0xa1,0xf1,0x1b,0xc7, + 0x31,0x4a,0xa5,0x12,0x38,0x8e,0x3b,0xd3,0x23,0xce,0x7a,0xe0,0xe4,0xb1,0xa4,0x87, + 0xf2,0x3c,0xf,0x51,0x14,0x21,0x8,0x2,0xad,0x3a,0x24,0xdc,0x49,0x42,0xd,0x82, + 0x0,0xbe,0xef,0x23,0xc,0x43,0x7a,0x6e,0x32,0xb4,0x92,0x9f,0x67,0x3d,0x83,0xac, + 0x13,0x86,0x21,0x6,0x83,0x1,0x24,0x49,0x42,0x36,0x9b,0x5,0xc7,0x71,0x74,0xd, + 0x9e,0xe7,0x51,0xab,0xd5,0x50,0xad,0x56,0xd3,0x0,0xfe,0x85,0xf,0xc3,0x70,0x5b, + 0x55,0x55,0xf1,0xca,0x95,0x2b,0x82,0xae,0xeb,0x38,0x39,0x39,0x41,0x1c,0xc7,0x50, + 0x55,0x15,0xf9,0x7c,0x1e,0xf9,0x7c,0x1e,0xae,0xeb,0x52,0x63,0x90,0xac,0x6f,0x59, + 0x16,0x38,0x8e,0xc3,0xca,0xca,0xa,0xbe,0xf1,0x8d,0x6f,0x20,0x9d,0x4e,0xc3,0x75, + 0xdd,0xa9,0x7,0x4b,0x96,0xd6,0x97,0x79,0x57,0xb2,0xc,0x9b,0xa6,0x9,0xc3,0x30, + 0xa6,0x42,0x97,0x60,0x17,0x9e,0xe7,0xa1,0x28,0xa,0x4d,0xc0,0xc4,0xc0,0x24,0x1d, + 0x24,0xbd,0x2b,0x99,0x43,0xc9,0x7d,0x87,0x61,0x8,0x59,0x96,0x61,0x9a,0x26,0xde, + 0x7b,0xef,0x3d,0x68,0x9a,0x46,0xd,0x4b,0x8c,0x48,0xc,0xb4,0xb1,0xb1,0xc1,0xb7, + 0x5a,0xad,0x25,0xde,0x71,0x9c,0x20,0x95,0x4a,0xb1,0xa5,0x52,0x9,0x3c,0xcf,0xa3, + 0xd5,0x6a,0x61,0x30,0x18,0xc0,0x75,0x5d,0x30,0xc,0x83,0x28,0x8a,0xe0,0x38,0xe, + 0x34,0x4d,0x43,0x18,0x86,0x74,0x71,0xd7,0x75,0x51,0x28,0x14,0x70,0xe9,0xd2,0x25, + 0xfc,0xf0,0x87,0x3f,0x44,0x2e,0x97,0x83,0x6d,0xdb,0x53,0x60,0xec,0xcb,0x26,0xf0, + 0x4e,0xa7,0x83,0xa3,0xa3,0x23,0x34,0x9b,0x4d,0x9a,0x4c,0x1,0x20,0x95,0x4a,0x41, + 0x96,0x65,0xa4,0x52,0x29,0x94,0xcb,0x65,0xcc,0xcf,0xcf,0xa3,0x50,0x28,0x7c,0xa9, + 0x5c,0x47,0xc,0x24,0x8a,0x22,0x4c,0xd3,0xc4,0x70,0x38,0xc4,0x27,0x9f,0x7c,0x2, + 0xc7,0x71,0xa6,0x3c,0x8f,0xe7,0x79,0xe4,0xf3,0x79,0xcc,0xcf,0xcf,0xa3,0xd3,0xe9, + 0x80,0x7,0x10,0x2,0x88,0xe2,0x38,0x8e,0x1d,0xc7,0x41,0xaf,0xd7,0xc3,0xa7,0x9f, + 0x7e,0x8a,0x38,0x8e,0x69,0xe6,0xf,0xc3,0x10,0xae,0xeb,0x52,0x34,0x4a,0x62,0x9a, + 0xe4,0x26,0xd7,0x75,0xe1,0xfb,0x3e,0x6c,0xdb,0xa6,0x98,0x23,0x59,0x15,0x92,0x9f, + 0xcf,0xa,0x39,0xd7,0x75,0xf1,0xf8,0xf1,0x63,0xfc,0xea,0x57,0xbf,0x42,0xaf,0xd7, + 0x43,0x26,0x93,0x41,0xb9,0x5c,0xa6,0x1e,0xac,0x28,0xa,0x44,0x51,0x44,0x10,0x4, + 0xe8,0x76,0xbb,0x68,0x36,0x9b,0xf0,0x3c,0xf,0x9e,0xe7,0xa1,0x5c,0x2e,0x63,0x79, + 0x79,0x19,0xd5,0x6a,0x15,0x3c,0xcf,0xd3,0x6b,0x6,0x41,0x40,0xc3,0x30,0x59,0x78, + 0x4,0x41,0xa0,0xa5,0xfe,0x2c,0x6f,0x26,0x9e,0x44,0x43,0x2e,0x8e,0xe3,0x28,0x8a, + 0xa2,0x38,0x8,0x2,0x78,0x9e,0x47,0x73,0x8a,0x20,0x8,0x90,0x24,0x89,0x1e,0xcb, + 0x66,0xb3,0x50,0x55,0x15,0x71,0x1c,0x63,0x30,0x18,0x60,0x38,0x1c,0xd2,0x45,0x9, + 0x94,0x27,0x21,0xf1,0x32,0x3,0x11,0xaf,0x9a,0xfd,0xc,0x0,0xa6,0x69,0xc2,0x71, + 0x1c,0x54,0xab,0x55,0x5c,0xb9,0x72,0x5,0xf3,0xf3,0xf3,0x50,0x14,0x5,0xe9,0x74, + 0x9a,0xe6,0x8e,0x20,0x8,0xa0,0xeb,0x3a,0xa2,0x28,0x82,0xef,0xfb,0xe8,0xf5,0x7a, + 0xd0,0x34,0xd,0x4f,0x9f,0x3e,0x45,0xb5,0x5a,0xc5,0xc2,0xc2,0x2,0xd2,0xe9,0x34, + 0x35,0x12,0x31,0xe,0x9,0x45,0x52,0x79,0x5f,0x46,0x77,0x92,0x55,0x9c,0x27,0x17, + 0x20,0xee,0x5c,0x2a,0x95,0xb0,0xb9,0xb9,0x89,0x4c,0x26,0x3,0x96,0x65,0x31,0x1c, + 0xe,0x69,0x4e,0x2a,0x95,0x4a,0x8,0x82,0x0,0x4f,0x9f,0x3e,0xc5,0xc1,0xc1,0xc1, + 0x14,0xc,0x38,0xb,0xda,0xbf,0xcc,0x7b,0x92,0x6e,0x2d,0x49,0x12,0xd6,0xd6,0xd6, + 0xf0,0xee,0xbb,0xef,0xa2,0xd9,0x6c,0xa2,0x50,0x28,0xe0,0xed,0xb7,0xdf,0x46,0xa9, + 0x54,0x3a,0xf3,0xe6,0x9,0xe0,0x73,0x1c,0x7,0xcf,0x9e,0x3d,0xc3,0xfe,0xfe,0x3e, + 0x9a,0xcd,0x26,0xe6,0xe7,0xe7,0x71,0xed,0xda,0x35,0x5c,0xbe,0x7c,0x19,0xaa,0xaa, + 0x82,0xe7,0x79,0xea,0xed,0x24,0x77,0xce,0x6e,0xca,0x6c,0x6e,0x4c,0xde,0x57,0x18, + 0x86,0x13,0x3,0x9d,0x2,0x23,0x64,0x32,0x19,0x6c,0x6c,0x6c,0x80,0xe4,0x23,0xc7, + 0x71,0xe8,0xc5,0xd3,0xe9,0x34,0x2a,0x95,0xa,0xad,0x60,0xb2,0x2c,0xc3,0xb2,0x2c, + 0xba,0xf0,0xe7,0xbd,0xcf,0x2a,0xe9,0xc9,0x1b,0xcd,0xe7,0xf3,0x78,0xf7,0xdd,0x77, + 0xf1,0xfe,0xfb,0xef,0xe3,0x6f,0x7f,0xfb,0x1b,0xde,0x7b,0xef,0x3d,0xec,0xec,0xec, + 0xa0,0x56,0xab,0xbd,0x50,0xde,0x65,0x59,0x86,0x24,0x49,0x48,0xa5,0x52,0x48,0xa5, + 0x52,0xa8,0x56,0xab,0x78,0xf2,0xe4,0x9,0xf6,0xf6,0xf6,0x70,0xe7,0xce,0x1d,0xc, + 0x6,0x3,0x6c,0x6f,0x6f,0xd3,0x73,0x7d,0xdf,0x7f,0x29,0xe0,0x3d,0x2f,0x67,0x4d, + 0x79,0x50,0x10,0x4,0x10,0x45,0x11,0x92,0x24,0x51,0x20,0x55,0x2c,0x16,0xa1,0x28, + 0xa,0x0,0x40,0x10,0x4,0x70,0x1c,0x7,0xdf,0xf7,0xa7,0x2a,0xcb,0x79,0xe4,0x70, + 0x16,0xd3,0xcc,0x7a,0x57,0x1c,0xc7,0xb4,0x52,0x91,0x5d,0x96,0x24,0x9,0x95,0x4a, + 0x5,0xc7,0xc7,0xc7,0x78,0xf8,0xf0,0x21,0x5c,0xd7,0xc5,0xad,0x5b,0xb7,0xb0,0xb4, + 0xb4,0x34,0x55,0xb1,0x18,0x86,0x1,0xc7,0x71,0x10,0x4,0x1,0xa2,0x28,0x42,0x96, + 0x65,0x7a,0x6f,0x7f,0xff,0xfb,0xdf,0xf1,0xe8,0xd1,0x23,0x7a,0xcf,0xb9,0x5c,0xe, + 0x3c,0xcf,0x4f,0x6d,0xe4,0x17,0x49,0xea,0x34,0xc4,0x92,0xbc,0xcb,0xf7,0x7d,0x18, + 0x86,0x81,0x6e,0xb7,0x8b,0xa5,0xa5,0x25,0xac,0xae,0xae,0x22,0x95,0x4a,0x81,0xe7, + 0x79,0x84,0x61,0x88,0x4e,0xa7,0x3,0x4d,0xd3,0x30,0x1a,0x8d,0xa8,0x91,0xce,0xf3, + 0x94,0x24,0xd0,0x3c,0x8b,0x55,0x47,0x51,0x4,0xdb,0xb6,0x31,0x1a,0x8d,0x60,0x59, + 0x16,0x82,0x20,0x0,0xc7,0x71,0x50,0x55,0x15,0x5b,0x5b,0x5b,0x38,0x3c,0x3c,0xc4, + 0x9f,0xff,0xfc,0x67,0x8c,0x46,0x23,0x7c,0xef,0x7b,0xdf,0xc3,0xe2,0xe2,0x22,0x18, + 0x86,0xa1,0x89,0x37,0x8,0x2,0xfa,0xe0,0x51,0x14,0xa1,0x52,0xa9,0x60,0x67,0x67, + 0x7,0xf9,0x7c,0x1e,0xb7,0x6f,0xdf,0xc6,0x83,0x7,0xf,0x20,0x8,0x2,0x76,0x76, + 0x76,0xa0,0xaa,0x2a,0x7c,0xdf,0x3f,0x77,0x43,0x67,0xc1,0xe7,0x94,0x7,0x25,0x41, + 0x54,0x18,0x86,0x70,0x1c,0x7,0xe3,0xf1,0x18,0xb9,0x5c,0xe,0x9a,0xa6,0xa1,0xd5, + 0x6a,0x41,0x14,0x45,0xa8,0xaa,0xa,0x5d,0xd7,0x61,0x59,0x16,0x2d,0xe7,0xc9,0x84, + 0x7b,0xde,0xc2,0x64,0xa7,0x93,0xb,0x13,0x3d,0xc6,0xb6,0x6d,0xf4,0x7a,0x3d,0x98, + 0xa6,0x49,0x71,0x13,0xf1,0x88,0xd7,0x5f,0x7f,0x1d,0xf7,0xef,0xdf,0xc7,0xdd,0xbb, + 0x77,0x31,0x1c,0xe,0xf1,0xad,0x6f,0x7d,0xb,0x3b,0x3b,0x3b,0x90,0x65,0x99,0x56, + 0xb0,0x64,0x4e,0xf1,0x3c,0xf,0x92,0x24,0xa1,0x56,0xab,0x61,0x7b,0x7b,0x1b,0x9f, + 0x7e,0xfa,0x29,0x76,0x77,0x77,0xb1,0xbe,0xbe,0x8e,0x5a,0xad,0x6,0x9e,0xe7,0xe9, + 0x39,0x5f,0x24,0xc4,0x28,0x2e,0x4a,0x7e,0x20,0x6e,0x45,0x28,0x87,0xe7,0x79,0xb4, + 0x24,0x92,0x7,0x95,0x65,0x19,0xa2,0x28,0x7e,0xae,0x14,0x41,0xc2,0x80,0x20,0x5f, + 0x8e,0xe3,0xc0,0xf3,0x3c,0x38,0x8e,0x9b,0x32,0x6,0x31,0x9e,0xe7,0x79,0x34,0xf4, + 0x4,0x41,0xc0,0xd2,0xd2,0x12,0xc6,0xe3,0x31,0x74,0x5d,0xa7,0x21,0x3,0x0,0xaf, + 0xbc,0xf2,0xa,0x14,0x45,0x99,0x42,0xc7,0x49,0x2f,0x90,0x65,0x19,0x17,0x2e,0x5c, + 0x40,0xa7,0xd3,0x41,0xb3,0xd9,0xc4,0xf1,0xf1,0x31,0xd2,0xe9,0x34,0xf2,0xf9,0xfc, + 0x54,0x2e,0x3a,0x2b,0xf4,0x49,0xd1,0x99,0x2a,0xf3,0xb3,0x24,0x8d,0x65,0x59,0x54, + 0xab,0x55,0x5a,0xea,0x73,0xb9,0x1c,0x0,0x40,0x14,0x45,0x64,0x32,0x19,0x78,0x9e, + 0x87,0xf1,0x78,0x4c,0xbf,0x7f,0x5e,0xf2,0x63,0x18,0x6,0x82,0x20,0x60,0x38,0x1c, + 0xa2,0xdb,0xed,0xd2,0xf2,0xbd,0xb0,0xb0,0x40,0x35,0x9a,0x5c,0x2e,0x87,0x20,0x8, + 0xc0,0x30,0xc,0x86,0xc3,0x21,0x3d,0x9f,0x0,0xba,0x2b,0x57,0xae,0x20,0x9d,0x4e, + 0xe3,0xf6,0xed,0xdb,0xf8,0xe0,0x83,0xf,0xd0,0xef,0xf7,0xf1,0xa3,0x1f,0xfd,0x88, + 0x56,0x29,0xcf,0xf3,0x10,0x45,0x11,0x35,0x3e,0xc1,0x6a,0x4,0xe8,0xd,0x87,0x43, + 0x1c,0x1d,0x1d,0xa1,0x52,0xa9,0x60,0x6e,0x6e,0xe,0xae,0xeb,0x9e,0xeb,0xe9,0x67, + 0x79,0x4f,0x1c,0xc7,0x60,0x93,0x49,0x3a,0x8,0x2,0x8,0x82,0x80,0xcd,0xcd,0x4d, + 0xac,0xaf,0xaf,0x23,0x93,0xc9,0xc0,0x75,0x5d,0x98,0xa6,0x9,0x96,0x65,0xb1,0xb2, + 0xb2,0x82,0xf5,0xf5,0x75,0x94,0x4a,0x25,0x6a,0xf1,0xf3,0x68,0x4,0xf1,0x20,0x4d, + 0xd3,0xf0,0xfe,0xfb,0xef,0xe3,0xa7,0x3f,0xfd,0x29,0x7e,0xf1,0x8b,0x5f,0xa0,0xd3, + 0xe9,0xd0,0xef,0xb2,0x2c,0x8b,0x42,0xa1,0x40,0x91,0x71,0x12,0xe0,0x79,0x9e,0x7, + 0x8e,0xe3,0xb0,0xb0,0xb0,0x80,0x77,0xde,0x79,0x7,0xb5,0x5a,0xd,0x4f,0x9e,0x3c, + 0xc1,0x2f,0x7f,0xf9,0x4b,0xfc,0xe9,0x4f,0x7f,0xc2,0x60,0x30,0xa0,0xeb,0x13,0xba, + 0x40,0xc8,0x67,0x18,0x86,0x50,0x55,0x15,0x85,0x42,0x1,0x86,0x61,0xbc,0xc0,0xda, + 0x5f,0x16,0x62,0x49,0xda,0x1,0x60,0x12,0x62,0xe4,0x1f,0x84,0x73,0xf5,0xfb,0x7d, + 0xa,0xc8,0x46,0xa3,0x11,0x4d,0x88,0xbd,0x5e,0xf,0x61,0x18,0x42,0xd3,0x34,0x5a, + 0x79,0xce,0x2b,0xe1,0xe4,0xb8,0x65,0x59,0x38,0x3a,0x3a,0xc2,0x47,0x1f,0x7d,0x4, + 0x86,0x61,0x70,0xe9,0xd2,0x25,0xdc,0xb8,0x71,0x3,0xd5,0x6a,0x95,0xee,0x7c,0x3e, + 0x9f,0xa7,0x89,0x57,0xd7,0xf5,0x29,0x75,0x40,0x14,0x45,0x5c,0xbc,0x78,0x11,0x86, + 0x61,0xc0,0x34,0x4d,0xec,0xed,0xed,0x21,0x9d,0x4e,0xa3,0x54,0x2a,0xe1,0xd2,0xa5, + 0x4b,0x10,0x4,0x81,0x26,0x54,0x42,0x73,0x48,0x15,0xce,0xe5,0x72,0xe8,0xf5,0x7a, + 0x53,0x6,0x3a,0x8f,0x4c,0x9f,0xe7,0x41,0x34,0x7,0x71,0x1c,0x7,0xd7,0x75,0x71, + 0x72,0x72,0x2,0xc3,0x30,0x90,0xcb,0xe5,0x20,0x8a,0x22,0xc6,0xe3,0x31,0xa2,0x28, + 0x82,0xae,0xeb,0xe8,0x74,0x3a,0xf0,0x7d,0x1f,0xf5,0x7a,0x1d,0xb6,0x6d,0xbf,0x50, + 0xea,0xcf,0x7a,0x11,0xd4,0x5a,0xad,0x56,0x61,0xdb,0x36,0x3e,0xfc,0xf0,0x43,0x44, + 0x51,0x84,0x1b,0x37,0x6e,0x60,0x79,0x79,0x99,0x86,0x6f,0xb9,0x5c,0xa6,0x39,0x70, + 0x34,0x1a,0x51,0xf0,0xca,0xb2,0x2c,0x24,0x49,0xc2,0xa5,0x4b,0x97,0xc0,0xf3,0x3c, + 0x7e,0xff,0xfb,0xdf,0xa3,0xd9,0x6c,0xe2,0xe0,0xe0,0x80,0x56,0xd9,0x24,0x89,0x26, + 0x88,0x5b,0x10,0x4,0xa8,0xaa,0x4a,0x65,0x19,0xc2,0x2d,0xcf,0x2a,0x28,0xb3,0xb9, + 0x74,0xca,0x83,0xc2,0x30,0x4,0x79,0x13,0xe4,0xf9,0xf0,0xe1,0x43,0x0,0x31,0x52, + 0xa9,0x14,0x54,0x45,0x1,0x73,0x5a,0x75,0x7c,0x3f,0x80,0xe7,0xb9,0xb4,0x9a,0x65, + 0xb3,0xd9,0x33,0x77,0x80,0xb8,0x3b,0x49,0xbe,0x0,0xb0,0xb1,0xb1,0x81,0xd7,0x5e, + 0x7b,0xd,0x57,0xaf,0x5e,0xc5,0xfd,0xfb,0xf7,0x31,0x1c,0xe,0xf1,0xc6,0x1b,0x6f, + 0xe0,0xf2,0xe5,0xcb,0xb4,0xda,0x95,0x4a,0xa5,0x29,0x3a,0x41,0xc8,0xa3,0xe3,0x38, + 0x50,0x55,0x15,0x2b,0x2b,0x2b,0x58,0x5b,0x5b,0x43,0x2a,0x95,0xa2,0x74,0x22,0x29, + 0xf2,0x25,0x69,0x5,0xa1,0xb,0x24,0x57,0x26,0xf9,0xe3,0x17,0x11,0xe8,0xa8,0x7, + 0x91,0x98,0x4f,0x8a,0xd7,0x9a,0xa6,0x21,0x9b,0xcd,0xa0,0x50,0xc8,0x43,0x96,0x64, + 0xf8,0xa7,0xf9,0x89,0x30,0x76,0xdf,0xf7,0xa7,0x2c,0x3f,0x5b,0x51,0x8,0x7,0x22, + 0xee,0xcf,0x71,0x1c,0xf2,0xf9,0x3c,0xb6,0xb6,0xb6,0x70,0xf3,0xe6,0x4d,0xf4,0x7a, + 0x3d,0x74,0x3a,0x1d,0xfc,0xf5,0xaf,0x7f,0x85,0x28,0x8a,0x58,0x5e,0x5e,0xa6,0xdc, + 0xaf,0x58,0x2c,0xd2,0x7,0x22,0xf8,0x48,0x10,0x4,0x7a,0xcd,0x5c,0x2e,0x47,0xe5, + 0x54,0x92,0x6f,0x92,0x15,0x98,0x18,0x86,0x7c,0x26,0x58,0x8d,0x14,0xa0,0x2f,0xaa, + 0x48,0x4e,0x19,0x88,0xc4,0x3c,0x59,0x2c,0x95,0x4a,0x61,0x7b,0x7b,0x1b,0x6f,0xbc, + 0xb1,0x3,0xcb,0x9a,0x80,0x39,0xe2,0x5,0x86,0x61,0xe0,0xc1,0x83,0x87,0x68,0xb5, + 0xda,0x2f,0xe8,0xd6,0x4,0x18,0x1a,0x86,0x1,0xc7,0x71,0x28,0x90,0x23,0x28,0x97, + 0x65,0x59,0x94,0x4a,0x25,0x7c,0xff,0xfb,0xdf,0xc7,0xed,0xdb,0xb7,0x69,0x5e,0x7a, + 0xf3,0xcd,0x37,0xb1,0xb9,0xb9,0x49,0xa5,0xd,0xe2,0xc9,0xed,0x76,0x9b,0x16,0x8, + 0x4d,0xd3,0xd0,0x6e,0xb7,0xc1,0xb2,0x2c,0x2a,0x95,0xa,0x6a,0xb5,0x1a,0x35,0x10, + 0xf1,0xa4,0xa4,0xa8,0x46,0x9e,0x89,0x30,0x80,0x2f,0xda,0x29,0x99,0x6d,0x58,0xf0, + 0xc9,0xba,0x9f,0x4c,0x76,0xa2,0x28,0x22,0x95,0x4e,0x43,0x55,0xd3,0xc8,0x64,0xb3, + 0x40,0x1c,0x23,0x9d,0x4e,0x23,0xc,0xa3,0x29,0x22,0x98,0xf4,0x22,0x12,0x5a,0xae, + 0xeb,0xa2,0xdf,0xef,0xc3,0x75,0x5d,0xb4,0xdb,0x6d,0xd8,0xb6,0x3d,0xb5,0x68,0x3a, + 0x9d,0xc6,0x5b,0x6f,0xbd,0x5,0x55,0x55,0x71,0xef,0xde,0x3d,0x68,0x9a,0x86,0xc1, + 0x60,0x80,0x9b,0x37,0x6f,0x52,0x55,0x71,0x61,0x61,0x1,0xa2,0x28,0xa2,0xd5,0x6a, + 0xa1,0xdb,0xed,0xe2,0xd9,0xb3,0x67,0x18,0x8f,0xc7,0xb8,0x78,0xf1,0x22,0xd6,0xd7, + 0xd7,0x91,0x4a,0xa5,0x5e,0x8,0xa3,0xa4,0x27,0x9d,0x85,0xe1,0xce,0xd2,0xce,0x93, + 0x91,0x90,0xac,0x60,0x49,0xb9,0xe3,0xcc,0xec,0x6d,0xdb,0x36,0xb4,0xd1,0x8,0x3c, + 0x27,0xc0,0xf,0x7c,0xea,0x9,0x9a,0xa6,0xc1,0x34,0xcd,0xa9,0x12,0x3f,0xbb,0x28, + 0x41,0xc9,0x96,0x65,0x61,0x30,0x18,0xc0,0x71,0x1c,0xba,0x28,0xc9,0x4b,0x73,0x73, + 0x73,0xb8,0x71,0xe3,0x6,0xd5,0x77,0x1e,0x3e,0x7c,0x88,0x4c,0x26,0x83,0xb,0x17, + 0x2e,0x50,0x71,0xcc,0x75,0x5d,0x84,0x61,0x88,0x7a,0xbd,0xe,0xc3,0x30,0x50,0x2c, + 0x16,0xb1,0xb9,0xb9,0x89,0x4a,0xa5,0xf2,0x2,0x25,0x48,0xb2,0x76,0xdf,0xf7,0xe1, + 0x79,0x1e,0xc5,0x58,0x84,0xb3,0x25,0xfb,0x62,0x67,0xb5,0x8a,0xce,0xb2,0x5,0x7f, + 0x96,0x5b,0x45,0x51,0x8,0x43,0xd7,0xd1,0x69,0x77,0x10,0x45,0x11,0x2c,0xcb,0x42, + 0x18,0x46,0x98,0xaf,0x54,0xa0,0xeb,0x3a,0xfa,0xfd,0x3e,0x7c,0xdf,0xa7,0x28,0xf8, + 0x2c,0xfe,0x5,0x80,0x56,0xf,0x72,0x53,0x44,0x35,0x68,0xb7,0xdb,0x50,0x14,0x5, + 0xf9,0x7c,0x1e,0x3f,0xf8,0xc1,0xf,0x70,0xef,0xde,0x3d,0xec,0xee,0xee,0xe2,0xee, + 0xdd,0xbb,0xf0,0x7d,0x1f,0xd7,0xaf,0x5f,0x7,0x0,0x18,0x86,0x81,0x76,0xbb,0x8d, + 0x76,0xbb,0x8d,0x5a,0xad,0x86,0xaf,0x7d,0xed,0x6b,0x58,0x59,0x59,0xa1,0x5e,0x4a, + 0x28,0xb,0xc9,0xa3,0x44,0x5b,0x26,0xeb,0x92,0x24,0x2f,0x8a,0x22,0xd5,0xcc,0x67, + 0x39,0xd7,0x17,0xa6,0x1a,0xc9,0xa,0xc0,0xf3,0x3c,0x2a,0xd5,0xa,0x36,0xb7,0x36, + 0xe1,0x38,0x2e,0x4c,0xd3,0x2,0x62,0x60,0x71,0x69,0x11,0xba,0xae,0xc3,0xf3,0x3c, + 0x7c,0xf2,0xc9,0x27,0xd4,0x65,0x93,0x2e,0x99,0xac,0x20,0xae,0xeb,0x42,0x10,0x4, + 0x64,0x32,0x19,0x5a,0xf9,0x48,0xe2,0x1d,0x8d,0x46,0xf0,0x3c,0xf,0x95,0x4a,0x5, + 0xd7,0xaf,0x5f,0x47,0x2a,0x95,0xc2,0x47,0x1f,0x7d,0x84,0xf7,0xdf,0x7f,0x1f,0x4f, + 0x9e,0x3c,0x41,0xa1,0x50,0x80,0x69,0x9a,0xb0,0x2c,0xb,0x3b,0x3b,0x3b,0x58,0x5e, + 0x5e,0xa6,0x9e,0x43,0x10,0x34,0x9,0xa7,0xa4,0x80,0xef,0x79,0x1e,0x46,0xa3,0x11, + 0x5c,0xd7,0xa5,0x69,0xe0,0x2c,0x12,0xfd,0x79,0x79,0x68,0x2a,0xc4,0xce,0xaa,0x46, + 0x51,0x74,0x6a,0x41,0x6e,0xb2,0x3,0xe4,0x7a,0xe7,0x75,0xc,0x66,0xdf,0x4,0xd, + 0xcb,0xb2,0x8c,0x7c,0x3e,0x8f,0xc3,0xc3,0x43,0x8c,0xc7,0x63,0x58,0x96,0x5,0x41, + 0x10,0x68,0x8,0x8a,0xa2,0x88,0x62,0xb1,0x88,0x57,0x5e,0x79,0x5,0xa3,0xd1,0x8, + 0x87,0x87,0x87,0x68,0x34,0x1a,0xf0,0x7d,0x1f,0xa9,0x54,0xa,0xb5,0x5a,0xd,0x17, + 0x2f,0x5e,0x44,0x36,0x9b,0x45,0x1c,0xc7,0x54,0x83,0x4a,0x96,0x78,0x92,0xff,0x4c, + 0xd3,0xa4,0x21,0x4d,0x48,0x2f,0xd9,0x28,0xd2,0x41,0x3d,0xaf,0x97,0x7f,0x2e,0x50, + 0x4c,0x26,0x2b,0x12,0x1a,0x9e,0xe7,0xa3,0x51,0x6f,0xe0,0xf1,0xdf,0x1e,0x53,0xb0, + 0xe5,0x7,0x21,0x34,0x6d,0x84,0xe1,0x70,0x88,0xc3,0xc3,0x43,0xd8,0xb6,0xd,0x41, + 0x10,0xa6,0x12,0x5b,0xd2,0xd0,0x24,0x9c,0x44,0x51,0x44,0x36,0x9b,0x85,0x6d,0xdb, + 0xe8,0xf7,0xfb,0x18,0x8f,0xc7,0x28,0x97,0xcb,0x70,0xdd,0x9,0x9e,0x6a,0x36,0x9b, + 0x88,0xa2,0x8,0x85,0x42,0x1,0xb7,0x6e,0xdd,0xc2,0xda,0xda,0x1a,0x7a,0xbd,0x1e, + 0x52,0xa9,0x14,0x4a,0xa5,0x12,0x72,0xb9,0x1c,0xe2,0x38,0x86,0xe3,0x38,0x53,0x88, + 0x38,0xe9,0xf5,0x84,0xb6,0xf4,0xfb,0x7d,0x34,0x1a,0xd,0x5a,0x2d,0x53,0xa9,0x14, + 0x55,0x27,0x1a,0x8d,0x6,0xca,0xe5,0x32,0xd,0xb5,0x2f,0xda,0xa7,0xe3,0x93,0xc6, + 0x89,0xa2,0x53,0x99,0x91,0xe7,0xb0,0xb4,0xbc,0x84,0x6b,0xd7,0xae,0xc1,0xb2,0x27, + 0x1d,0xd,0x0,0xd8,0xda,0xda,0xa2,0x7a,0xf0,0xde,0xde,0xde,0xb,0x49,0x6f,0xf6, + 0x1d,0x4,0x1,0x24,0x49,0x82,0x24,0x49,0x94,0xb8,0x9e,0x9c,0x9c,0x60,0x61,0x61, + 0x1,0x8a,0xa2,0x50,0x7a,0x43,0x72,0x5a,0x2e,0x97,0xc3,0xc2,0xc2,0x2,0x4a,0xa5, + 0x12,0x7d,0x70,0xdb,0xb6,0xa9,0x8e,0x9c,0x24,0xc7,0x24,0x21,0x93,0x3c,0x34,0x18, + 0xc,0x4e,0x29,0x92,0x8f,0x6a,0x75,0x1,0x85,0x42,0x1,0x1c,0xc7,0x61,0x7e,0x7e, + 0x1e,0xa6,0x69,0xe2,0xe9,0xd3,0xa7,0x94,0x70,0x27,0xcb,0xfe,0xac,0x47,0xcd,0x4a, + 0xc8,0xfc,0xb4,0x90,0xf5,0x59,0xb9,0x16,0x4,0x1,0x8a,0xaa,0x82,0x61,0x3e,0xeb, + 0x62,0x10,0x6f,0x22,0xa,0x1e,0x89,0xef,0x59,0xfd,0x99,0x80,0x3e,0xb2,0x38,0xc7, + 0x71,0xa8,0x9c,0x26,0xf8,0x4f,0x3e,0xf9,0x4,0xd7,0xaf,0x5f,0x87,0xa2,0x28,0x90, + 0x65,0x19,0xae,0xeb,0xc2,0x30,0xc,0x9a,0xcf,0x8,0xe,0x22,0x65,0x9a,0x74,0x4c, + 0xce,0x6b,0x3e,0x92,0x6e,0xa,0x81,0x15,0x82,0x20,0x22,0xc,0x22,0x68,0x9a,0xe, + 0x86,0x65,0xa0,0x28,0xea,0x29,0xe1,0x36,0xd0,0x6a,0xb5,0x28,0x2,0x7f,0x19,0xcd, + 0x48,0x4a,0xc2,0x7c,0x92,0x79,0x13,0xd4,0x19,0x4,0x21,0x8e,0x8e,0x8e,0xf0,0x60, + 0x77,0x17,0xc5,0x62,0x1,0x0,0x3,0xdf,0xf,0xb0,0xbb,0x7b,0x1f,0xfd,0xfe,0x0, + 0x4f,0x9f,0x3e,0x9d,0xe2,0x62,0xc9,0x5e,0x18,0xc3,0x30,0x54,0x2f,0x26,0xa5,0x15, + 0x0,0x2e,0x5c,0xb8,0x80,0xfb,0xf7,0xef,0xe3,0xc3,0xf,0x3f,0xc4,0x77,0xbe,0xf3, + 0x1d,0x2c,0x2f,0x2f,0xa3,0x50,0x28,0xa0,0xd3,0xe9,0x50,0xcd,0xa8,0xd7,0xeb,0x61, + 0x30,0x18,0x50,0x5d,0xe8,0xac,0x56,0x74,0xf2,0x38,0xcb,0xb2,0xa7,0x3d,0xae,0x1, + 0xc,0x43,0x87,0x28,0x88,0x60,0x59,0x1,0x4f,0x9f,0x3e,0x87,0x69,0x5a,0x50,0x14, + 0x9,0x17,0x2f,0xae,0x23,0x9b,0xc9,0xc2,0x95,0x24,0x9c,0x9c,0x1c,0x43,0x55,0x15, + 0x64,0xb3,0xb9,0x73,0xa5,0x8e,0x59,0x8c,0x34,0xe5,0x41,0xc4,0x48,0x71,0x1c,0xa3, + 0x5e,0xaf,0xc3,0x75,0x1c,0xa4,0x52,0x29,0x30,0x2c,0x8b,0x30,0x8,0x11,0x9e,0x96, + 0x50,0xc2,0xe6,0x59,0x96,0x85,0x6d,0xdb,0x18,0x8f,0xc7,0xe0,0x38,0xe,0xa6,0x69, + 0xd2,0x8e,0x3,0xc9,0x41,0xa6,0x69,0x82,0xe3,0x38,0xea,0x75,0xad,0x56,0xb,0x77, + 0xef,0xde,0xa5,0x46,0x32,0x4d,0x13,0xe3,0xf1,0x98,0x8a,0x6a,0xb3,0x6d,0xa1,0xf3, + 0xc8,0x65,0x52,0xfd,0x34,0xc,0x3,0xc,0x58,0xc,0x87,0x3a,0xc,0xdd,0x82,0xef, + 0x7b,0x70,0x1d,0x7,0x96,0x65,0xc0,0x73,0x3d,0xac,0xae,0x2d,0x63,0xbe,0x52,0x46, + 0x10,0xf8,0x18,0xc,0x86,0x68,0xb5,0xda,0x94,0x10,0x27,0x3b,0x1f,0x49,0xe9,0x84, + 0xac,0x3b,0xe5,0x41,0x84,0xb3,0x4,0x41,0x40,0x6f,0x9c,0xe3,0xf8,0x29,0xeb,0xce, + 0xca,0xa6,0x9d,0x4e,0x7,0xf7,0xee,0xdd,0xa3,0xad,0x67,0xa2,0x5f,0x6b,0x9a,0x86, + 0x83,0x83,0x3,0x18,0x86,0x41,0x19,0xf9,0x68,0x34,0xc2,0x68,0x34,0xc2,0x1f,0xfe, + 0xf0,0x7,0x54,0xab,0x55,0x2c,0x2e,0x2e,0xa2,0x54,0x2a,0x81,0x65,0x59,0x8c,0xc7, + 0xe3,0xa9,0xf6,0xcc,0xec,0xdf,0x49,0x23,0x91,0xa,0x69,0x9a,0xe6,0xa4,0x6f,0x17, + 0xc5,0xf0,0xbd,0x10,0xae,0xeb,0x23,0x6,0x50,0x9e,0x2b,0xc2,0xf3,0x5c,0xc,0x47, + 0x1a,0x7a,0xbd,0x1e,0x38,0x9e,0x87,0x20,0x8a,0xc8,0x64,0x54,0x4,0x61,0x40,0xb5, + 0x75,0xdf,0xf7,0x21,0x8a,0xe2,0x14,0x7f,0x23,0x58,0x8a,0x44,0x6,0x9f,0x9c,0xc2, + 0x4a,0x8e,0xb4,0x4c,0x2a,0x4,0x8b,0x28,0xf2,0xcf,0x6c,0xd7,0x10,0x45,0xaf,0xd1, + 0x68,0xe0,0xd7,0xbf,0xfe,0xf5,0xb,0x3b,0x1d,0x4,0x1,0xd5,0x62,0x48,0x1e,0xf2, + 0x3c,0xf,0xae,0xeb,0xe2,0xde,0xbd,0x7b,0x98,0x9b,0x9b,0xc3,0xc2,0xc2,0x2,0x6e, + 0xdc,0xb8,0x41,0x1b,0x92,0x4,0x23,0x25,0x7,0xd,0x66,0x43,0x81,0x78,0x26,0x41, + 0xe7,0xb2,0x24,0x83,0x1,0x87,0x41,0xaf,0x85,0x4c,0x3a,0x8d,0xda,0x52,0x15,0xc5, + 0x62,0x1e,0x96,0x65,0xa1,0xd1,0x68,0xe0,0xe9,0xd3,0x67,0xe8,0x74,0x3b,0x70,0x1c, + 0x7,0xd7,0xaf,0x5f,0x43,0x2a,0xa3,0x42,0x94,0x44,0xca,0xd7,0x88,0x7,0x11,0xb0, + 0x49,0xc2,0x9b,0xe7,0xf9,0xc9,0x9b,0x61,0x18,0x96,0xe3,0x38,0x46,0x51,0x14,0x64, + 0xb3,0x59,0x94,0xcb,0x65,0x9a,0x13,0x78,0x9e,0x4b,0x54,0xa9,0x17,0xf5,0x66,0x49, + 0x14,0xc1,0x9d,0x2e,0x90,0x24,0xad,0x24,0x81,0xa7,0x52,0x29,0xda,0xb5,0x48,0xaa, + 0x7d,0xfd,0x7e,0x1f,0x1f,0x7d,0xf4,0x11,0xc2,0x30,0x84,0x6d,0xdb,0x78,0xe5,0x95, + 0x57,0xb0,0xb2,0xb2,0x2,0x5d,0xd7,0x13,0x9b,0x13,0xbd,0x30,0xab,0x44,0x8c,0xc7, + 0xf3,0x3c,0xe5,0x83,0xb6,0xe5,0xc0,0xb5,0x3c,0xcc,0x95,0xcb,0x58,0x5c,0xae,0x61, + 0x71,0x79,0x1,0x41,0xe0,0x43,0x10,0x78,0x1a,0xd,0xc7,0xc7,0x75,0xe8,0x63,0x1d, + 0x7b,0x7b,0x4f,0xb0,0xba,0xb6,0x8c,0x72,0xa9,0x8c,0xb7,0xde,0x7a,0xb,0xfb,0xfb, + 0xfb,0x68,0x34,0x1a,0x74,0x92,0x85,0xe3,0x38,0x88,0xa2,0x88,0x52,0xa9,0x84,0x74, + 0x3a,0xd,0x49,0x92,0xc0,0x87,0x61,0xc8,0x47,0x51,0xc4,0x31,0xc,0xc3,0x10,0x54, + 0xbb,0xbc,0xbc,0x8c,0x20,0xf8,0x4c,0xd2,0x98,0xdc,0x28,0x9,0x31,0x0,0x88,0xc1, + 0x71,0x13,0x2f,0x52,0x64,0x65,0x2,0x2a,0x91,0x60,0xc0,0x89,0x36,0xd1,0xd1,0xd1, + 0x11,0x3a,0x9d,0xe,0xad,0x6e,0x71,0x1c,0xa3,0x58,0x2c,0xa2,0xd1,0x68,0x60,0x77, + 0x77,0x17,0xd9,0x6c,0x16,0xc3,0xe1,0x8,0x9b,0x9b,0x9b,0xe0,0x79,0x6e,0xaa,0xf5, + 0x3b,0xdb,0xd6,0x26,0x65,0x3e,0xd9,0x3c,0x8,0xfd,0x8,0xe,0xe7,0x40,0x55,0x54, + 0x94,0x4a,0x45,0x14,0xb,0x79,0x68,0xba,0x8e,0x30,0x8c,0x91,0xcf,0x7d,0x36,0xe9, + 0x71,0x12,0xd7,0x27,0xc3,0x8,0x3c,0x7,0x59,0x5a,0xc7,0xe6,0xc6,0x26,0xe2,0x38, + 0xa6,0x7a,0x15,0x91,0x7e,0x55,0x55,0xc5,0xda,0xda,0x1a,0x54,0x55,0x9d,0x40,0x1e, + 0xd7,0x75,0x63,0xdb,0xb6,0x63,0x5d,0xd7,0x71,0xe9,0xd2,0x25,0x6c,0x6c,0x6c,0x50, + 0x92,0x18,0xc7,0x49,0x8c,0xf3,0x2,0xe6,0xa4,0xc7,0x67,0x4b,0xa5,0x28,0x8a,0x8, + 0xc3,0x10,0xed,0x76,0x1b,0x92,0x24,0x4d,0x49,0x21,0x1c,0xc7,0x51,0xf1,0xbe,0xd1, + 0x68,0xe0,0x8f,0x7f,0xfc,0x23,0xee,0xdf,0xdf,0xc5,0xc5,0x8b,0x17,0x70,0xe1,0xc2, + 0x5,0xa4,0xd3,0xe9,0x17,0x3a,0xc,0x64,0x93,0x38,0x8e,0x43,0x36,0x9b,0xc5,0xdc, + 0xdc,0x1c,0x8a,0xc5,0x22,0xa2,0x38,0x82,0x24,0x8b,0x50,0x53,0xa,0x3c,0xc7,0x87, + 0x65,0x98,0xb0,0x4c,0x7,0x92,0x28,0x1,0x31,0x10,0x47,0x11,0xc0,0x4c,0xee,0x95, + 0xe7,0x39,0x1c,0x3c,0x7d,0x8e,0x56,0xb3,0x3,0xc7,0x76,0x71,0xfd,0xc6,0x36,0x56, + 0x57,0x57,0xa1,0x28,0x32,0x8e,0x8f,0x4f,0xb0,0xba,0xba,0x8a,0x1b,0x37,0x6e,0xa0, + 0x58,0x2c,0x2,0x0,0x4e,0x4e,0x4e,0x30,0x1e,0x8f,0xc1,0x7b,0x9e,0xf7,0xbf,0x74, + 0x5d,0x2f,0xfd,0xe5,0x2f,0x7f,0x59,0x6c,0x36,0x9b,0xa8,0x54,0x2a,0x53,0xbc,0xec, + 0x3c,0x9c,0x90,0x1c,0x6c,0x3a,0xab,0x2b,0x49,0x46,0x66,0x9e,0x3f,0x7f,0x8e,0x7a, + 0xbd,0x8e,0x20,0x8,0xc1,0x30,0x9f,0x4d,0x76,0x5,0x41,0x70,0xaa,0x1b,0x4d,0xaa, + 0x60,0xa7,0xd3,0xc6,0xe3,0xc7,0x8f,0x21,0x49,0xd2,0x99,0x23,0xbb,0x34,0xac,0x4f, + 0x87,0x9e,0x6a,0xb5,0x1a,0xae,0x5e,0xbd,0x8a,0xc5,0xc5,0x45,0xe4,0xa,0x39,0x68, + 0x3,0xd,0xc6,0x58,0x47,0xaf,0xd5,0xc5,0xfc,0x62,0x65,0xd2,0x1a,0x2,0x0,0x6, + 0x88,0xe2,0x88,0x2a,0xa2,0x8d,0x93,0x16,0x4c,0xc3,0xc0,0xc1,0xd3,0x43,0x2c,0x2d, + 0xd5,0xb0,0xb0,0x50,0x3,0x30,0x1,0xac,0xf,0x1e,0x3c,0x40,0xb9,0x5c,0x86,0x6d, + 0xdb,0x44,0x66,0x79,0xc8,0xbb,0xae,0xfb,0x3f,0x34,0x4d,0x5b,0x78,0xfc,0xf8,0xf1, + 0x52,0xbb,0xdd,0xbe,0x90,0xcf,0xe7,0x13,0xcf,0x4a,0xc,0x44,0x6e,0x74,0x7a,0x9a, + 0xeb,0x2c,0xc8,0x1e,0x45,0x11,0xc,0xc3,0xc0,0x78,0x3c,0xa6,0x65,0x78,0x3c,0x1e, + 0xc3,0xf3,0x7c,0x0,0x9f,0x31,0xfd,0xe9,0xe,0xab,0x85,0x5e,0xaf,0x87,0xfa,0xc9, + 0xc9,0xa4,0x8,0x24,0x30,0xd5,0x2c,0x8,0x25,0x21,0x5c,0xab,0xd5,0x98,0x28,0x8a, + 0x78,0x41,0x10,0x32,0xb5,0x5a,0x4d,0x92,0x55,0x19,0xbe,0xe3,0x43,0x1b,0x6a,0xc8, + 0x64,0x33,0x48,0xe5,0xd3,0x50,0x55,0x5,0xf1,0xec,0xec,0x0,0x18,0x34,0x1b,0x6d, + 0x74,0xbb,0x3d,0x48,0xa2,0x4,0x59,0x51,0x30,0x3f,0x37,0x8f,0x46,0xb3,0x81,0xc3, + 0xc3,0x43,0xec,0xef,0xef,0xc3,0xb6,0x6d,0xcb,0x34,0xcd,0x7d,0x4d,0xd3,0xfe,0x83, + 0xff,0xdd,0xef,0x7e,0x77,0xfb,0xbb,0xdf,0xfd,0x6e,0xce,0xf3,0xbc,0xb1,0xae,0xeb, + 0x97,0x8e,0x8f,0x8f,0x8b,0x0,0xa2,0xb3,0x88,0xe9,0xe7,0x4d,0x96,0x92,0x2a,0xd3, + 0x6c,0x36,0xd1,0x6e,0xb7,0xc1,0x30,0x2c,0x24,0x89,0x3f,0x5,0x74,0x4,0x11,0x4f, + 0xb7,0x8a,0x58,0x96,0x99,0x22,0xc7,0xb3,0x6b,0xce,0x96,0xf9,0xd3,0x12,0x1f,0x75, + 0xbb,0x5d,0x3e,0xc,0xc3,0x12,0xcb,0xb2,0x6f,0x6,0x41,0x70,0x6d,0xfd,0xc2,0x3a, + 0x24,0x51,0x84,0x63,0x3a,0xe8,0x77,0xfa,0x60,0x58,0x16,0xb9,0x52,0xe,0xa9,0x94, + 0xa,0x8e,0x9b,0x18,0x97,0x63,0x39,0x0,0x93,0x5c,0x58,0xaf,0x37,0xd1,0xeb,0xf7, + 0x11,0x45,0x11,0x2e,0x6e,0x5e,0xc0,0xf2,0xf2,0xa,0x0,0xe0,0x83,0xf,0x3e,0x40, + 0xb7,0xdb,0xbd,0xef,0x38,0xce,0xbf,0x73,0x1c,0xf7,0xef,0x3c,0x0,0xfc,0xf6,0xb7, + 0xbf,0xd5,0x6e,0xde,0xbc,0xf9,0x1e,0x80,0x47,0x71,0x1c,0x2b,0x0,0xe2,0xf3,0xc2, + 0xe8,0x2c,0xd,0x37,0x29,0x9e,0x79,0x9e,0x87,0x67,0xcf,0x9e,0x51,0xf6,0x2c,0x8a, + 0x2,0x52,0x29,0x15,0xba,0x6e,0x23,0x8,0xbc,0x17,0xce,0x15,0x4,0xee,0x74,0x26, + 0x71,0x92,0xd8,0xc3,0x28,0x42,0x9c,0x58,0xf3,0x2c,0x11,0xb,0x40,0xdc,0xef,0xf7, + 0x99,0x4f,0x3f,0xfd,0x94,0xbf,0x78,0xf1,0xe2,0x53,0x5e,0xe0,0xff,0x45,0x51,0x95, + 0x6b,0xe5,0x52,0x99,0x55,0x32,0x2a,0x7c,0xdb,0xc7,0x78,0xa8,0x81,0x65,0x19,0xa4, + 0x73,0x69,0x28,0x8a,0x8a,0x38,0x66,0xc0,0x30,0x9f,0x21,0xf4,0x18,0x31,0x6,0xbd, + 0xd1,0x84,0xa6,0x74,0xfa,0x28,0xcd,0x15,0xb1,0xb4,0xb4,0xc,0xcb,0xb2,0xf0,0xfc, + 0xf9,0x51,0xee,0xf9,0xf3,0xe7,0xf3,0xb6,0x6d,0x65,0xf8,0x6f,0x7f,0xfb,0xdb,0xb8, + 0x73,0xe7,0xe,0x3e,0xfc,0xf0,0xc3,0x1e,0x80,0xde,0x57,0x3d,0xbb,0xec,0x79,0x3e, + 0x3c,0x4f,0x7b,0x49,0x5b,0x28,0x84,0xef,0x87,0xff,0xa5,0x6b,0xd7,0xeb,0x75,0xdc, + 0xbd,0x7b,0xd7,0x73,0x1c,0x27,0x93,0xcf,0xe7,0xe7,0xc0,0x30,0xb,0x73,0xa5,0xf9, + 0xc8,0xb2,0xad,0xd8,0xb4,0x2c,0x18,0xa6,0x89,0x72,0x75,0xe,0x2c,0xcf,0xc2,0x71, + 0xdc,0x9,0xaf,0xf3,0x2,0xb0,0x2c,0x8f,0x74,0x3a,0xd,0xc7,0x76,0x61,0x8c,0x4d, + 0xf4,0x7b,0x43,0x8,0xa2,0x80,0x42,0xa9,0xc0,0xac,0xae,0xac,0xb1,0x61,0x18,0xd7, + 0x6c,0xdb,0xbd,0x35,0x1e,0x8f,0x9e,0xf3,0xff,0xe8,0xbf,0xc6,0xd9,0xdb,0xdb,0xdb, + 0xaf,0x56,0xab,0xff,0x73,0xff,0xc9,0xfe,0x8d,0x30,0x88,0x61,0xd5,0x3c,0xd1,0x77, + 0xbd,0x38,0xf0,0x27,0x44,0x5a,0x6d,0x36,0xc1,0xf2,0x2c,0xe2,0x28,0x42,0x18,0x84, + 0x88,0x22,0x22,0xe8,0x5,0x8,0x82,0x18,0x2c,0xc7,0xc3,0xb,0x7d,0xb4,0xda,0x5d, + 0x8c,0xc6,0x3a,0x44,0x51,0x60,0x59,0x96,0x97,0xb,0x85,0xe2,0x75,0xdf,0xf7,0x2c, + 0xfe,0xce,0x9d,0x3b,0xff,0xd0,0x6,0xba,0x75,0xeb,0x56,0xfe,0xca,0x95,0x2b,0xb9, + 0x4a,0xa5,0xb2,0x9f,0xcf,0xe7,0x8c,0x94,0xaa,0xc0,0x63,0xb9,0x18,0x52,0xc,0x51, + 0x92,0x90,0x2b,0xe6,0xc1,0x70,0xc,0x7c,0xdf,0x83,0xef,0xf9,0x8,0x83,0x0,0x7e, + 0xe0,0xc3,0xb6,0x6c,0x78,0xde,0x44,0xe,0xe6,0x58,0xe,0xaa,0x2a,0x43,0x51,0x15, + 0xc6,0xf5,0x5c,0xc6,0xf3,0x5c,0xd7,0x71,0xec,0x56,0x18,0x86,0xf7,0x79,0x0,0x78, + 0xfb,0xed,0xb7,0x19,0x49,0x92,0x4,0x86,0x61,0x78,0x86,0x61,0xd8,0xd3,0x38,0x8d, + 0x93,0xc3,0x4,0xe7,0xcd,0xf4,0xcd,0xe6,0x24,0xdf,0xf7,0x51,0x3f,0x3e,0x46,0xa7, + 0xd9,0x84,0x24,0x49,0x10,0x65,0x19,0xe0,0x79,0xd8,0x96,0x35,0x35,0x1b,0x48,0x30, + 0xd1,0x97,0xf9,0xf1,0xa,0x81,0x10,0xae,0xeb,0x42,0x92,0x24,0x94,0x4a,0x25,0xee, + 0xcd,0x37,0xdf,0xbc,0xb0,0xb2,0xb2,0xb2,0x72,0xe5,0xca,0x95,0x93,0x62,0xb1,0x50, + 0x97,0x4,0xc9,0xf,0xdd,0x28,0x4e,0xa5,0x52,0x28,0x96,0x8b,0x28,0x57,0x4a,0x8, + 0xe3,0x10,0xba,0x61,0x4c,0x70,0x92,0x65,0x42,0xd3,0x34,0x34,0x9b,0x6d,0x44,0xa3, + 0x10,0x88,0x81,0x42,0x3e,0x8b,0xf2,0x7c,0x99,0x65,0x38,0x86,0xd9,0xdf,0x7f,0x82, + 0x7a,0xfd,0x79,0xf3,0xf1,0xe3,0xc7,0x7b,0x77,0xee,0xfc,0xfe,0x63,0xfe,0x74,0xb2, + 0x4b,0xe4,0x38,0x6e,0x89,0x65,0xd9,0x22,0xcb,0xb2,0x4a,0x1c,0xc7,0x71,0xd2,0x40, + 0x84,0x22,0x7c,0x91,0xb9,0x1a,0x32,0x29,0x46,0x90,0x2e,0x27,0x8,0x88,0x4f,0x31, + 0xc,0x21,0x81,0xc4,0x40,0x5f,0x76,0x4c,0x38,0x1,0x2f,0xe2,0x5c,0x2e,0xc7,0xbc, + 0xf6,0xda,0x6b,0xc2,0xf2,0xf2,0x72,0x69,0x6b,0x6b,0x8b,0x29,0xcf,0x95,0x87,0xb1, + 0x1f,0xc2,0xd0,0xf4,0x38,0x9b,0xce,0x21,0x9d,0xcf,0x42,0xce,0xaa,0x18,0x1b,0x6, + 0x1c,0xdb,0x86,0x69,0x1a,0xb0,0x2c,0x1b,0xc3,0xe1,0x8,0xed,0x76,0x17,0x8d,0x93, + 0x26,0xa2,0x0,0x28,0x16,0xa,0x58,0x58,0x5a,0x80,0xed,0x5a,0x38,0xf8,0xfb,0x1, + 0xf3,0xe0,0xc1,0x3,0xf4,0xfb,0x7d,0x93,0x61,0x58,0xff,0xeb,0x5f,0xff,0x6f,0x3c, + 0xff,0xcd,0x6f,0x7e,0x73,0x4e,0x92,0x24,0x29,0x97,0xcb,0x2d,0x64,0x32,0x99,0x9c, + 0xaa,0xaa,0xc2,0xa9,0x81,0x40,0xaa,0xd9,0xcb,0xd4,0xff,0xe4,0x84,0x5,0xa9,0x78, + 0x8b,0x8b,0x8b,0x30,0x4e,0x25,0x8c,0xb1,0xae,0x63,0x7c,0x2a,0xf4,0x93,0x7,0x24, + 0x86,0x22,0xcc,0x3c,0xe9,0x55,0xb3,0x12,0x7,0x39,0x9e,0x2c,0xf3,0x3c,0xcf,0xa3, + 0x52,0xa9,0x30,0xdb,0xdb,0xdb,0xcc,0xf2,0xf2,0x32,0x8a,0xc5,0x92,0x16,0x5,0x71, + 0x14,0x7a,0x41,0x2c,0x70,0x1c,0x72,0xc5,0x1c,0x94,0x8c,0x8a,0x30,0x8e,0x60,0x9f, + 0xa,0xff,0xa6,0x69,0x62,0xac,0x8f,0xd1,0x6a,0xb5,0xd1,0x6c,0x76,0x61,0x5a,0xe, + 0xe6,0xcb,0x65,0xcc,0x57,0x4b,0x70,0x3d,0x17,0xbd,0x6e,0xf,0xe3,0xb1,0x86,0x72, + 0xb9,0xcc,0x64,0x32,0x99,0xd0,0xf7,0xfd,0x82,0xa6,0x69,0x35,0x5e,0x14,0xc5,0xb2, + 0xa2,0x28,0xc2,0xc2,0xc2,0x42,0xaa,0x56,0xab,0xb1,0xe5,0x72,0x39,0x88,0xa2,0x90, + 0xd2,0x88,0x97,0x89,0xdc,0xc9,0x5e,0xd7,0x2c,0x1c,0xf0,0x7d,0x1f,0x9a,0xa6,0xe1, + 0xe8,0xe8,0x8,0xf5,0x7a,0x7d,0xca,0x28,0x49,0x19,0x83,0x70,0x21,0x32,0x1f,0x39, + 0xfb,0x83,0x99,0xa4,0x81,0x88,0x81,0x53,0xa9,0x14,0x16,0x17,0x17,0xe3,0x57,0x5f, + 0x7d,0x35,0x5e,0x5a,0x5a,0xb2,0x64,0x59,0xa,0xb5,0xbe,0x16,0x8b,0x3c,0x8f,0x5c, + 0xa9,0x80,0x5c,0x29,0xf,0x86,0xe3,0x60,0x5a,0x16,0x4c,0xcb,0x82,0x6d,0x9a,0xd0, + 0x75,0x1d,0xdd,0x76,0x17,0xcd,0x66,0x7,0xa3,0x91,0x8e,0x42,0x21,0x8f,0x4a,0x6d, + 0xe,0xd9,0x82,0x8a,0xc3,0xc3,0xe7,0xd0,0x34,0xd,0xb9,0x5c,0x1e,0x57,0xaf,0x5e, + 0x63,0x4c,0xd3,0x14,0xea,0xf5,0xba,0x7a,0x70,0x70,0x30,0xcf,0xa7,0x52,0x29,0xbe, + 0x54,0x2a,0x31,0xb7,0x6e,0xdd,0xd2,0xae,0x5e,0xbd,0x8a,0x6a,0xb5,0x12,0x39,0x8e, + 0x1,0xdf,0xf,0x11,0x45,0x67,0xff,0x34,0xea,0xbc,0x7c,0x41,0x3e,0x93,0x2e,0x66, + 0xa7,0xd3,0xc1,0xc7,0x1f,0x7f,0x8c,0x7c,0x3e,0xff,0x82,0x67,0x90,0x6,0x9f,0xe3, + 0x38,0x28,0x95,0x4a,0x58,0x5c,0x5c,0x44,0xb9,0x5c,0xa6,0x84,0xf6,0x2c,0xd2,0x4a, + 0x64,0x5f,0x32,0x60,0x4e,0x14,0x4b,0xcb,0xb4,0x62,0x86,0x61,0x50,0x9c,0x2b,0xa3, + 0xba,0x58,0x5,0xcb,0xb2,0x93,0x49,0x7d,0xc7,0x41,0xe0,0xfb,0xb0,0x6c,0x1b,0xfd, + 0xfe,0x0,0xc7,0xcf,0x9a,0xd0,0xd,0x3,0xb9,0x5c,0x1a,0x57,0xaf,0x6e,0x81,0xe5, + 0x22,0xd4,0xeb,0x93,0xc9,0xfe,0xd5,0xd5,0x35,0x5c,0xbf,0xfe,0x2a,0x4a,0xa5,0x12, + 0x5c,0xd7,0x65,0xf,0xf,0xf,0x19,0x5d,0xd7,0x63,0x5e,0x96,0x65,0x57,0x51,0x14, + 0x66,0xe2,0x39,0x11,0xe,0xe,0xe,0xa3,0xc1,0xa0,0x8b,0x20,0x8,0x19,0x86,0xe1, + 0x5e,0xe8,0x3b,0x25,0x8d,0x21,0x49,0x12,0x9d,0x80,0x4f,0xa2,0x69,0xc2,0xe6,0x5b, + 0xad,0x16,0x9a,0xcd,0x26,0x34,0x4d,0x9b,0x92,0x67,0x9,0x85,0x48,0xa5,0x52,0xd8, + 0xda,0xda,0xc2,0xe6,0xe6,0x26,0x96,0x96,0x96,0xa8,0x8e,0x3d,0x2b,0x75,0x90,0x4e, + 0x29,0x51,0x0,0x25,0x49,0xa2,0x7d,0x7f,0xc3,0x30,0xa0,0x1b,0x3a,0x78,0x86,0x7, + 0x27,0x70,0xe0,0x45,0x1,0x63,0x6d,0xc,0xcb,0x34,0x61,0x9e,0xf6,0xe1,0x5a,0xed, + 0x16,0xea,0x27,0xd,0xc,0x7b,0x7d,0xe4,0xcb,0x45,0xac,0xac,0x2c,0x82,0xe5,0x80, + 0x93,0xe3,0x13,0xec,0xef,0x3f,0x81,0x69,0x3a,0x13,0xd,0x5e,0x99,0xfc,0x88,0x67, + 0x61,0x61,0x1,0xb9,0x5c,0x8e,0xc9,0xe5,0x72,0xc,0x2f,0x49,0x92,0xc9,0xf3,0x3c, + 0xe3,0xba,0xae,0xb0,0xbb,0xbb,0x8b,0xdd,0xdd,0xdd,0xf8,0xe4,0xa4,0x81,0x38,0x8e, + 0x20,0x8a,0xc2,0x54,0xee,0x98,0x45,0xcf,0x64,0x4e,0x79,0xf6,0x3b,0xc,0xc3,0xc0, + 0xf7,0x7d,0x74,0xbb,0xdd,0x53,0x1e,0xe6,0x51,0xc3,0x91,0x50,0x2a,0x97,0xcb,0xb4, + 0xfd,0xbc,0xb1,0xb1,0x1,0x55,0x55,0x31,0x1a,0x8d,0x68,0x31,0x20,0x61,0x48,0x84, + 0x3c,0x72,0x4d,0xd7,0x75,0x31,0x1e,0x8f,0xe9,0xd8,0x32,0xc9,0x2f,0xc,0xcb,0x60, + 0x34,0x1e,0x41,0xee,0xcb,0xb4,0x3d,0x4e,0x6,0xc0,0xea,0xf5,0x3a,0x7a,0xdd,0x1e, + 0x24,0x5e,0xc2,0xf2,0x52,0x15,0xd5,0xea,0x3c,0x1e,0x3f,0x7e,0x8c,0x8f,0x3f,0xfe, + 0x18,0x27,0x27,0x75,0x28,0x8a,0x8c,0x7e,0xbf,0x8f,0xfb,0xf7,0xef,0x3,0x0,0xbe, + 0xfe,0xf5,0xaf,0x63,0x7b,0x7b,0x7b,0x32,0xab,0xe9,0x4e,0x5e,0x8c,0xa6,0x69,0xe1, + 0x78,0xac,0x41,0xd7,0x8d,0x78,0x34,0x72,0x10,0xc7,0x3e,0x64,0x99,0x3d,0x95,0x3c, + 0xf0,0x82,0x70,0xee,0x79,0x1e,0xba,0xdd,0x2e,0x9d,0xc2,0xe7,0x79,0x7e,0x4a,0x9, + 0xf4,0x3c,0xf,0xed,0x76,0x7b,0x6a,0x2e,0x30,0x8e,0x63,0x28,0x8a,0x82,0xb5,0xb5, + 0x35,0xdc,0xbc,0x79,0x13,0xef,0xbc,0xf3,0xe,0x56,0x57,0x57,0x61,0x9a,0x26,0x9e, + 0x3f,0x7f,0xe,0xc7,0x71,0xa6,0x92,0x3e,0x91,0x48,0x88,0x67,0x91,0x12,0x4f,0x74, + 0x21,0xc3,0x30,0xe8,0xf7,0xdb,0xad,0x36,0xc6,0xda,0x18,0xbd,0x6e,0x17,0xa5,0xd2, + 0x84,0x91,0xb7,0xdb,0x6d,0x3c,0x7f,0xfe,0x1c,0x96,0x65,0x21,0x93,0xc9,0x60,0x6b, + 0x73,0xb,0xf9,0x42,0x1e,0x47,0x47,0x47,0xb8,0x73,0xe7,0xe,0x5c,0xd7,0xa5,0xd3, + 0xbc,0x44,0x63,0x27,0x93,0x74,0xf5,0x7a,0x9d,0xca,0x1d,0xbe,0xeb,0xba,0x8c,0x61, + 0x18,0x51,0x14,0xc5,0x8c,0x2c,0xcb,0x31,0xc7,0x1,0x71,0xcc,0xd0,0x7e,0x16,0x4b, + 0x7,0xa8,0x7c,0x5a,0x49,0xc8,0x4f,0x96,0xca,0xe5,0x32,0xde,0x7d,0xf7,0x5d,0x48, + 0x92,0x4,0x5d,0xd7,0xe9,0xc3,0x8c,0xc7,0x63,0x3c,0x79,0xf2,0x84,0xea,0xd4,0xc, + 0xc3,0x40,0xd7,0x75,0x30,0xc,0x83,0xed,0xed,0x6d,0xbc,0xfe,0xfa,0xeb,0xb8,0x7c, + 0xf9,0x32,0x65,0xfe,0xb6,0x6d,0xd3,0x50,0x4e,0x8a,0xf3,0x49,0xd,0x9c,0x78,0x14, + 0x9,0x2f,0x12,0x76,0x93,0x59,0x24,0x1e,0x9a,0x66,0xc1,0x34,0x1b,0x70,0x5d,0x1f, + 0xae,0x3b,0x19,0x31,0xb6,0x2c,0x13,0x85,0x42,0x1,0xab,0xab,0x6b,0x28,0x96,0x8b, + 0x14,0xb2,0x90,0xde,0x3d,0x69,0x52,0x24,0x7f,0xdc,0x42,0xde,0x82,0x20,0x4c,0xc, + 0xe4,0xfb,0x3e,0x13,0x45,0x51,0x28,0xcb,0x32,0x53,0x2c,0x16,0xe2,0x42,0xa1,0x3, + 0x80,0x45,0xb1,0x58,0x44,0x2e,0x97,0x83,0x20,0x8,0xf0,0x7d,0x9f,0xe,0x90,0x7b, + 0x9e,0x7,0xc3,0x30,0x90,0x4a,0xa5,0xb0,0xb3,0xb3,0x83,0x9f,0xfc,0xe4,0x27,0x0, + 0x80,0xe1,0x70,0x88,0x7c,0x3e,0x8f,0x28,0x8a,0xd0,0x6a,0xb5,0x70,0xef,0xde,0x3d, + 0xe8,0xba,0x4e,0x3b,0xb0,0xcd,0x66,0x13,0x8e,0xe3,0xe0,0xf5,0xd7,0x5f,0xc7,0x95, + 0x2b,0x57,0x20,0xcb,0x32,0x9e,0x3c,0x79,0x2,0xdb,0xb6,0xa9,0x50,0xf6,0x79,0x53, + 0x60,0x49,0x6f,0x2,0x0,0x5d,0xd7,0x1,0x0,0xe5,0x72,0x9,0x71,0x6c,0x63,0x30, + 0x30,0x71,0x74,0x74,0x2,0xcf,0x33,0x61,0xdb,0x1e,0x54,0x35,0x8b,0xad,0xad,0xcb, + 0xd8,0xd8,0xb8,0x88,0x56,0xab,0x5,0xc4,0x40,0x2e,0x97,0xc3,0xc6,0xc6,0x6,0xfd, + 0x41,0xe,0xa9,0x9e,0x1c,0xc7,0xd1,0xa1,0x8a,0x72,0xb9,0xc,0xd3,0x34,0xc1,0x47, + 0x51,0xe4,0x49,0x92,0x84,0x9d,0x9d,0x1d,0xec,0xef,0xef,0xe3,0xbd,0xf7,0xde,0x83, + 0xe3,0xb8,0x58,0x5c,0x5c,0xc4,0xf6,0xf6,0xab,0xb8,0x7a,0xf5,0x2a,0xb2,0xd9,0x2c, + 0x34,0x4d,0xc3,0xa3,0x47,0x8f,0xe0,0xba,0x2e,0x6d,0xd4,0x15,0x8b,0x45,0xac,0xaf, + 0xaf,0xd3,0x1d,0x26,0xf,0xc9,0x71,0x1c,0xd2,0xe9,0xf4,0x64,0x7,0x4e,0x77,0x9c, + 0x61,0x18,0x3a,0x1d,0xb6,0xb9,0xb9,0x49,0xc7,0x8b,0x17,0x17,0x17,0x69,0x37,0xe1, + 0xcb,0xfe,0x16,0x9f,0x20,0xf3,0xf1,0x78,0x8c,0xbd,0xbd,0x3d,0x5c,0xba,0xb4,0xe, + 0x41,0x90,0xf1,0x9f,0xff,0xf9,0x1f,0x68,0x36,0x8f,0x90,0x4e,0x57,0xb0,0xb5,0xf5, + 0x43,0x2c,0x2d,0x5d,0xc6,0xfc,0x7c,0x88,0x67,0xcf,0xe,0x31,0x3f,0x5f,0xc1,0xea, + 0xea,0x2a,0x7a,0xbd,0x1e,0x1e,0x3e,0x7c,0x88,0x46,0xa3,0x41,0xc3,0x94,0xcc,0x62, + 0x92,0x69,0xb8,0xc1,0x60,0x80,0xff,0x3,0x77,0x5a,0xa7,0xc6,0xe3,0xfd,0x49,0x2c, + 0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/settings.png + 0x0,0x0,0x11,0x66, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x29,0x8,0x6,0x0,0x0,0x0,0x73,0xdb,0xaa,0xd4, + 0x0,0x0,0x0,0x4,0x67,0x41,0x4d,0x41,0x0,0x0,0xaf,0xc8,0x37,0x5,0x8a,0xe9, + 0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x53,0x6f,0x66,0x74,0x77,0x61,0x72,0x65, + 0x0,0x41,0x64,0x6f,0x62,0x65,0x20,0x49,0x6d,0x61,0x67,0x65,0x52,0x65,0x61,0x64, + 0x79,0x71,0xc9,0x65,0x3c,0x0,0x0,0x10,0xf8,0x49,0x44,0x41,0x54,0x58,0x47,0xad, + 0x58,0x9,0x5c,0x4e,0x69,0xdf,0x4e,0xa2,0x68,0x7b,0x2a,0xa9,0xb4,0x3e,0x29,0x91, + 0xea,0xa9,0x8c,0x42,0xc6,0xd2,0xa0,0xc9,0x6b,0x37,0x98,0xc9,0x3a,0x19,0xc3,0x3b, + 0xc,0xd9,0xc2,0x34,0x45,0x43,0x64,0x29,0xa9,0x48,0x13,0x9a,0x8a,0x54,0xa4,0x68, + 0x51,0x51,0x29,0xda,0xb5,0x6f,0x28,0xed,0x49,0x7b,0x89,0x16,0xc5,0xf5,0xfd,0xef, + 0x33,0x33,0xbe,0x77,0xde,0xf9,0xbe,0xf7,0x9d,0x1a,0xe7,0xf7,0xbb,0x7e,0xe7,0x3c, + 0xcf,0x39,0xf7,0x39,0xd7,0xf5,0xbf,0xff,0xdb,0x7d,0xf,0x13,0x1a,0xda,0xa1,0x28, + 0x2f,0x23,0x25,0x90,0x1d,0xab,0x62,0x3e,0x52,0x54,0x72,0xaa,0x88,0x88,0xc8,0x38, + 0xf6,0x9a,0xfe,0x81,0x7e,0xa1,0xde,0xde,0xb7,0x42,0x3d,0xbd,0xdd,0x3,0x3d,0xdd, + 0xaf,0x73,0xfb,0x7a,0x3a,0x33,0xde,0xbc,0x79,0x73,0x9f,0x6e,0x55,0x11,0x7a,0x87, + 0xf6,0xa9,0x8f,0x38,0x4a,0x56,0x62,0xa4,0xae,0x96,0x96,0x96,0xfd,0xac,0xd9,0x16, + 0xc5,0x6b,0xac,0xfe,0x9,0x5b,0xbb,0x73,0x70,0xbf,0x18,0x85,0xcb,0x1,0x29,0xf0, + 0xd,0x4c,0x87,0xf7,0x2f,0x8f,0x70,0xdc,0x25,0x6,0xfb,0x7e,0xc,0xc4,0x57,0x9b, + 0x8e,0x61,0xc6,0xac,0x35,0x50,0x56,0x9d,0xf4,0x5a,0x42,0x82,0x17,0x3c,0x5c,0x48, + 0x68,0x5,0x51,0x11,0xfd,0x88,0x74,0x6,0xf5,0xaa,0xe1,0x7c,0x3e,0x7f,0x8f,0x85, + 0xe5,0xf2,0xf2,0x1f,0x8f,0xb8,0xe3,0x56,0x44,0x3a,0xee,0x27,0x95,0x23,0x39,0xbd, + 0x1a,0x8f,0xb,0x1a,0x91,0x91,0xfb,0x2,0x8f,0x32,0xeb,0x10,0xf7,0xa0,0x2,0xb7, + 0xa2,0x8a,0x11,0x9d,0xc0,0xce,0x65,0xf0,0xf0,0x49,0xe5,0xc4,0xcc,0xb3,0xdc,0x6, + 0xc5,0x71,0x93,0x20,0x2c,0x2c,0x1c,0x46,0x5f,0x35,0x18,0xd4,0x97,0x3f,0xc2,0xc3, + 0xca,0x53,0xa7,0x9a,0x6,0x6e,0xdf,0x69,0x87,0xcb,0x7e,0x71,0x88,0x4f,0x2e,0xc3, + 0xb3,0xca,0xe,0x14,0x14,0x37,0x20,0x25,0xb3,0x2,0x39,0x5,0x2f,0x90,0x95,0x57, + 0x8f,0x8c,0x9c,0x3a,0xdc,0x89,0x2d,0x82,0xbd,0xd3,0xd,0xb8,0x78,0xde,0x83,0x7f, + 0x70,0x36,0x42,0xee,0x94,0xc0,0x2f,0xb8,0x0,0xae,0x5e,0x29,0xd8,0xba,0xf3,0x67, + 0xe8,0x1b,0xfd,0x3,0x23,0x46,0x4a,0xd4,0x10,0xa7,0x8d,0x1f,0x81,0xd7,0x5f,0x7a, + 0x85,0xda,0x8c,0x19,0x9f,0x3e,0x3c,0x79,0xc6,0x7,0xd1,0xf7,0xa,0x11,0x15,0x97, + 0x8f,0x9c,0xfc,0x1a,0x94,0x3c,0x7b,0x49,0xc4,0x6b,0xf0,0x28,0xad,0xc,0xc5,0x4f, + 0x1b,0x51,0x50,0xf2,0x12,0xd9,0xf9,0x2f,0x48,0x44,0x3d,0x2e,0xf9,0x27,0x63,0xd3, + 0x36,0x4f,0xac,0xdf,0xe2,0x81,0xcb,0x57,0x33,0x70,0x2d,0xb4,0x10,0x5e,0xbe,0x59, + 0x70,0xb9,0x90,0x2,0x5b,0x87,0x30,0xcc,0x9c,0x6b,0xd,0xb1,0xd1,0xbc,0x7e,0xfa, + 0xfa,0xee,0xbf,0xc4,0xe0,0x6f,0x3c,0xa4,0x3c,0x6d,0x9a,0x59,0x8a,0xbb,0x67,0x0, + 0x1e,0x12,0xd1,0xe4,0xb4,0xa7,0xc8,0x2f,0xaa,0x45,0x4d,0x5d,0x3b,0x5e,0x36,0xbd, + 0x46,0x43,0x63,0x17,0x6a,0x5f,0x74,0xe2,0x79,0x65,0x2b,0x9e,0x96,0x35,0xa3,0xb0, + 0xb4,0x11,0xe9,0xd9,0xb5,0x34,0x2b,0xd5,0x8,0xba,0xf5,0x18,0xd6,0xdf,0x5d,0xc0, + 0x19,0x8f,0x7b,0xb8,0x19,0x51,0xa,0x9f,0x80,0x2c,0xb8,0x5e,0x78,0x88,0xe3,0xae, + 0x89,0x24,0x22,0x12,0x33,0x66,0x6f,0x82,0x98,0x98,0x54,0x1f,0x71,0xfb,0xe7,0xdf, + 0xe0,0xf7,0x1f,0x87,0xe,0x33,0x32,0xfa,0x24,0xf0,0x67,0x9f,0xeb,0xa8,0xac,0x7d, + 0x85,0xb2,0xe7,0x4d,0xa8,0xae,0x6d,0x45,0x4b,0xdb,0x1b,0xb4,0x12,0xda,0x3b,0x7a, + 0xd0,0xda,0xfe,0x6,0x8d,0x2d,0xaf,0x51,0xdf,0xd0,0x89,0xaa,0xda,0xe,0x3c,0xaf, + 0x6e,0xc7,0xed,0xe8,0x5c,0xdc,0x8a,0xcc,0x45,0x66,0x5e,0x3,0x2e,0x5,0x3c,0xc2, + 0x11,0xe7,0x70,0x4,0xde,0xca,0x27,0x37,0xca,0x85,0xfb,0xcf,0xa9,0x70,0x76,0x4b, + 0x84,0xe3,0xc9,0x7,0x58,0xb0,0x68,0xf,0xe4,0xe4,0xb5,0xc9,0x9d,0x46,0x77,0x13, + 0x8b,0x39,0x1f,0x5d,0x84,0x8a,0x8a,0xca,0x37,0x87,0xec,0x8e,0xe,0x54,0xd7,0x75, + 0x91,0xa5,0xdf,0xa0,0x99,0x88,0x76,0xbc,0xea,0xc5,0x9b,0xee,0xb7,0xe8,0xed,0xeb, + 0x47,0x6f,0x6f,0x3f,0x5d,0xf7,0xa1,0xa3,0xb3,0x87,0x13,0x55,0xf2,0xb4,0x1,0x69, + 0x59,0xcf,0x91,0x9c,0x5a,0x86,0x7,0x8f,0xca,0xf0,0x38,0xbf,0x1,0x81,0xa1,0x59, + 0xd8,0x69,0xeb,0x47,0x2,0x8a,0x11,0x1a,0x55,0x81,0x4b,0x57,0xb,0x88,0x7c,0x1c, + 0xf6,0x3b,0xdc,0x86,0x89,0xd9,0x7a,0xc8,0x2b,0x4e,0x86,0x8c,0x9c,0x3a,0x5,0xf6, + 0x88,0x34,0x12,0x20,0xf7,0xd1,0x44,0x88,0x8a,0xa,0xf1,0x17,0x2d,0x5e,0xf6,0x3c, + 0xe3,0x71,0x39,0x5e,0xbc,0xec,0x46,0x43,0x53,0x17,0x59,0xbc,0x9b,0x23,0x3f,0xd0, + 0x3f,0x80,0xf7,0xef,0xde,0x73,0xe8,0xef,0x7f,0x87,0xee,0x9e,0xb7,0xe8,0x7a,0xf3, + 0x16,0x49,0x8f,0x4a,0xe1,0x76,0x3e,0x12,0xb1,0xf1,0x85,0x28,0x7a,0xda,0xf4,0xab, + 0x80,0x9b,0x59,0x58,0xb9,0xd6,0x11,0x5b,0x77,0x38,0xe1,0xfb,0x3d,0xce,0xd8,0xf4, + 0x8d,0x1d,0xcc,0x17,0x6c,0xc2,0x9c,0xf9,0x1b,0xa1,0xab,0x3f,0xf,0x63,0x95,0xf4, + 0x48,0xc0,0x78,0x88,0x8d,0x92,0x1,0x91,0x77,0xf8,0x68,0x2,0x54,0x35,0x34,0xe, + 0x9c,0xf3,0xf4,0x25,0xff,0xee,0x46,0x4d,0x7d,0x27,0x1a,0x49,0xc0,0xab,0xae,0x5e, + 0xbc,0x65,0xe4,0xdf,0x13,0xf9,0x7f,0x1,0xfb,0xaf,0xeb,0x4d,0x1f,0x6a,0xeb,0xdb, + 0x70,0x3b,0xea,0x31,0x22,0x63,0xf3,0x48,0x40,0x33,0x72,0x8b,0x5a,0x28,0x63,0xc5, + 0x60,0xda,0xf4,0x39,0xd8,0xb0,0x61,0x3,0x5c,0x5c,0xce,0x20,0xf4,0x66,0x8,0x92, + 0x92,0x1e,0x20,0x36,0x36,0x6,0xd7,0xaf,0x7,0xe3,0xf0,0x91,0x63,0x58,0xb8,0x70, + 0x19,0x34,0x34,0x27,0x43,0x68,0xd8,0x70,0x56,0xe8,0xe4,0x3f,0x86,0x8,0x99,0xcf, + 0x2d,0x97,0xe4,0x26,0xa5,0x94,0x90,0xef,0x77,0x51,0xc6,0xa9,0x26,0x54,0xe2,0x65, + 0x63,0x7,0x6,0x6,0xde,0xfd,0x49,0x0,0xfb,0xaf,0xeb,0x75,0x1f,0xc5,0x43,0x37, + 0x2a,0x6b,0xda,0x90,0x57,0x58,0x4f,0x19,0xa9,0x11,0x99,0x54,0x17,0x12,0x1e,0x55, + 0xe0,0xf0,0x4f,0x6e,0xf0,0xfb,0xc5,0x17,0x6f,0xdf,0xf6,0xe1,0xdf,0x8f,0xbe,0xbe, + 0x5e,0xd4,0xd7,0xd7,0x21,0x20,0xe0,0x2a,0x16,0x2f,0x5e,0x2,0x4d,0x4d,0x4d,0xfb, + 0xbf,0x2d,0x40,0x4e,0x4e,0x7a,0xce,0x96,0xad,0xbb,0xdf,0xe7,0x17,0x37,0x23,0x29, + 0xe5,0x9,0xb9,0x44,0x1e,0x52,0x33,0x9e,0xa1,0xe4,0x49,0x1d,0xcd,0x42,0x37,0xc7, + 0xe1,0xf,0x33,0xf0,0x76,0x80,0x9b,0x9d,0x26,0x8a,0x91,0xda,0xfa,0xe,0x3c,0xab, + 0x68,0x45,0xd1,0x93,0x66,0x64,0x53,0x71,0x4b,0xcf,0x6e,0x44,0x74,0x7c,0x19,0x76, + 0xee,0x3e,0x82,0x6b,0x81,0xd7,0x3e,0xf0,0x1f,0x18,0x18,0x20,0x63,0xc,0x7c,0x78, + 0x57,0x7f,0x7f,0x3f,0x72,0x72,0xb2,0x71,0xe8,0xd0,0xa1,0xae,0x15,0x2b,0x56,0xec, + 0x21,0x11,0xc3,0x86,0x2c,0x44,0x57,0xd7,0xe0,0xa8,0x9d,0xc3,0x59,0xca,0x26,0x79, + 0x8,0x8b,0xc8,0xc0,0xc3,0xd4,0x52,0xa,0xd0,0x3a,0x3c,0x2b,0x7f,0x81,0x8a,0xaa, + 0x26,0x74,0x53,0xe0,0x92,0x2,0xbc,0x7b,0xf7,0xe,0xfd,0x64,0xfd,0xee,0x9e,0x3e, + 0x2e,0x3e,0x1a,0x9a,0x5e,0x51,0x96,0xea,0x40,0x51,0x69,0x3,0xc2,0x23,0x53,0x70, + 0xda,0xd5,0x17,0xf6,0x8e,0xee,0xd8,0xff,0x83,0xb,0x36,0x6f,0x73,0x80,0x91,0xf1, + 0x4c,0x78,0x79,0x79,0xa1,0xa7,0xa7,0x87,0x23,0xde,0xdd,0xdd,0xcd,0x5d,0x33,0xf2, + 0xec,0xfc,0xfa,0xf5,0x6b,0x14,0x17,0x17,0xe3,0xe0,0xc1,0x83,0x3,0x24,0xe2,0xdb, + 0x21,0xb,0x30,0x31,0x31,0x8b,0xf2,0xf0,0xba,0x85,0x9b,0xe1,0x19,0x88,0xb9,0x97, + 0x87,0x5c,0x72,0x9f,0xaa,0x9a,0x26,0xd4,0xd5,0xb7,0xd2,0xb9,0x99,0x23,0xcb,0xb2, + 0x50,0xf,0x65,0xa1,0xd7,0x24,0x86,0xfd,0x6e,0xef,0xec,0x43,0x53,0x6b,0x1f,0xaa, + 0xea,0x5e,0x51,0x30,0x17,0x81,0x66,0x10,0xf3,0x2d,0x96,0x61,0xd6,0x9c,0x45,0x30, + 0x30,0x9a,0x4d,0x1,0x3b,0x1b,0x2a,0x6a,0xc6,0xd0,0xd6,0xd1,0x87,0xe3,0x91,0xc3, + 0x68,0x6d,0x6d,0xe5,0x44,0x74,0x75,0x75,0x51,0x36,0xeb,0xe5,0x44,0xb4,0xb7,0x53, + 0x6d,0x79,0xf9,0x12,0x89,0x89,0x89,0xf8,0xf6,0xdb,0x6f,0x6b,0x17,0x2d,0x5a,0xa4, + 0x36,0x24,0x11,0xa6,0xd3,0x3e,0x7d,0x7a,0x35,0xf8,0x21,0x22,0xee,0xe6,0x20,0x31, + 0xb9,0x18,0x79,0x5,0x55,0xa8,0xa8,0x6c,0x24,0xf7,0x60,0x2,0x9a,0x38,0x57,0x61, + 0xa9,0xb3,0x8d,0xea,0x0,0x57,0x13,0xda,0x7b,0x91,0xf5,0xb8,0x4,0xf7,0x13,0x33, + 0xf1,0xbc,0xaa,0x13,0xc5,0xcf,0x5a,0x71,0x35,0x28,0xe,0x73,0x3e,0x5b,0x8e,0xf1, + 0x13,0x4c,0x8,0xa6,0x50,0xd7,0x34,0x81,0xa,0x7f,0x2a,0x14,0x55,0xf5,0xa1,0x33, + 0xc9,0x0,0xfb,0xf6,0xed,0x45,0x55,0x55,0x15,0x37,0x8b,0x6c,0x26,0x98,0x0,0xea, + 0x58,0x51,0x5b,0x5b,0x8b,0x67,0xcf,0x9e,0xe1,0xe4,0xc9,0x93,0xf8,0xea,0xab,0xaf, + 0x98,0x2b,0xd,0xfa,0x10,0x9e,0x6a,0x32,0xf3,0x89,0x7f,0xd0,0x43,0x84,0x47,0x65, + 0x13,0xa9,0x42,0xb0,0x54,0x5a,0x54,0x5a,0x8b,0xb2,0xf2,0x6,0x14,0x95,0xd4,0x50, + 0x40,0x57,0x91,0x18,0x56,0x89,0xbb,0x50,0x47,0x55,0xb8,0xf3,0x35,0x70,0xc6,0xe5, + 0x2,0xf8,0x7c,0x2d,0x22,0x1e,0x8d,0xd2,0xb2,0x4e,0x44,0xc6,0x95,0x62,0xed,0x26, + 0x7b,0x4c,0x9c,0x3c,0x13,0x5a,0x3a,0xd3,0xc0,0xd7,0x9e,0xe,0x55,0x12,0xa0,0xa4, + 0x62,0x40,0xd,0xdd,0x44,0x4c,0x9c,0xa8,0x87,0x1d,0x3b,0xb6,0xa3,0xa8,0xa8,0x88, + 0x13,0xd0,0xd7,0xd7,0xc7,0x9d,0xd9,0xc,0x14,0x14,0x14,0x20,0x22,0x22,0x2,0x9b, + 0x36,0x6d,0xf2,0x1d,0x34,0x7b,0x1a,0x20,0x69,0x64,0x3c,0xad,0xdc,0xe7,0x97,0x44, + 0x4,0x85,0xa6,0x23,0x22,0x26,0x7,0x9,0xc9,0x25,0x48,0xcf,0x2a,0xe3,0x5c,0x29, + 0x2b,0xbb,0x1c,0xf7,0x1f,0x14,0x22,0x35,0xb3,0x8c,0xac,0xdd,0x4a,0x68,0x43,0x53, + 0xdb,0x7b,0xd8,0x39,0x38,0x63,0xea,0xd4,0x29,0xd8,0x65,0xb3,0x7,0xe7,0x2f,0x86, + 0x50,0x23,0x17,0x3,0x9b,0x3,0x7e,0x58,0xb6,0x7a,0x3f,0x26,0xe8,0xce,0x84,0xc6, + 0x78,0x53,0xa8,0x68,0x7c,0xc2,0x9,0x90,0x1b,0xab,0x4d,0x22,0xb4,0x60,0x64,0x34, + 0x5,0x97,0x2e,0x5d,0xc2,0xab,0x57,0xaf,0xb8,0x18,0x60,0xee,0xc4,0x5c,0x2b,0x27, + 0x27,0x7,0x29,0x29,0x29,0xb0,0xb6,0xb6,0x8e,0x22,0x3e,0xd4,0x81,0xf,0xf2,0x30, + 0x10,0x98,0x3c,0xf1,0xf0,0x8e,0xc3,0x95,0xab,0x49,0x8,0xbe,0x95,0x86,0x88,0xe8, + 0x1c,0x8e,0x74,0x72,0xea,0x13,0xe,0x71,0x9,0xf9,0x5c,0x70,0xa7,0x65,0x55,0xa2, + 0x8c,0x3a,0xd2,0x9a,0x17,0xfd,0xd8,0xbb,0xdf,0x11,0xbb,0x77,0xef,0x42,0x65,0x65, + 0x5,0x5,0xe1,0xf,0xd8,0xb0,0xd9,0x1e,0x7,0x8f,0xdc,0xc0,0xf7,0xfb,0x3,0x60, + 0x6e,0xb9,0x3,0xaa,0x9a,0x64,0x7d,0x35,0x43,0x28,0x2a,0x4f,0xc6,0x18,0x5,0x2d, + 0x8c,0x12,0x57,0x80,0xf6,0x4,0x5d,0xc4,0xc5,0xc6,0xa2,0xa3,0xa3,0x9d,0xb,0xe0, + 0x8e,0x8e,0xe,0x34,0x35,0x51,0x1,0x7c,0xfc,0x18,0x9,0x9,0x9,0xd8,0xba,0x75, + 0x6b,0xfc,0x94,0x29,0x53,0x46,0xf,0x92,0xbe,0x90,0x90,0xae,0xae,0xd1,0x93,0xe3, + 0x2e,0x61,0xf0,0xf4,0xb9,0x87,0xcb,0xfe,0xf,0x10,0x78,0x23,0x85,0x8,0x67,0x21, + 0x2a,0x36,0x17,0xb1,0xf7,0xf3,0x11,0x1d,0x97,0x87,0xd0,0xdb,0x99,0x38,0xef,0x4d, + 0x3d,0x4e,0xf0,0x7d,0x54,0xd4,0xbc,0x85,0xcd,0x5e,0x47,0xd8,0xd8,0xec,0xe2,0x2, + 0xb3,0xb9,0xb9,0x9,0x7,0xe,0x1c,0xc2,0xf6,0x5d,0xce,0x38,0xe8,0x18,0x86,0x95, + 0xeb,0xdd,0x60,0x64,0xf2,0x25,0x14,0x94,0xf5,0xa8,0x75,0xd0,0x1,0x4f,0x56,0x9d, + 0x3a,0x51,0x39,0x6c,0xde,0xfc,0x2d,0xea,0xeb,0xea,0xd0,0xd6,0xd6,0xc6,0xcd,0x42, + 0x73,0x73,0x33,0x1a,0x1a,0x1a,0x90,0x9a,0x9a,0x8a,0x7b,0xf7,0xee,0x51,0x9c,0xec, + 0x8b,0x57,0x52,0x52,0x1a,0xbc,0x0,0xbe,0xa6,0x4e,0xd8,0xce,0x7d,0x9e,0x38,0xed, + 0x1e,0x8d,0x73,0x5e,0x31,0xf8,0xd9,0x37,0x1e,0xbf,0x4,0x26,0xe3,0xfa,0x8d,0x54, + 0xdc,0x8,0xcb,0xe0,0x10,0x12,0x96,0xc5,0xad,0xc4,0x66,0xcf,0x5d,0x42,0x22,0x63, + 0xf0,0xcf,0x1d,0xe,0x24,0x60,0x27,0x65,0xd7,0x77,0x9c,0x88,0xa6,0xa6,0x97,0xb0, + 0xb7,0xb7,0xc7,0xa2,0xe5,0xdf,0x63,0xa9,0xd5,0x59,0xcc,0x5b,0x6c,0xf,0x9d,0xc9, + 0x16,0xe0,0xc9,0x69,0x12,0xf9,0x31,0x98,0xbf,0xc0,0x12,0xd9,0xd9,0x39,0x1c,0xf9, + 0x96,0x96,0x16,0xe,0x2f,0x5e,0xbc,0xe0,0x82,0x38,0x29,0x29,0x9,0x77,0xee,0xdc, + 0x61,0x99,0xe8,0xd6,0x90,0xea,0x81,0xac,0xec,0x58,0xbb,0x65,0xab,0x6c,0xe0,0xe8, + 0x7c,0x7,0x4e,0xa7,0xc3,0xa8,0x1d,0x8e,0x82,0xbb,0x77,0x2c,0xbc,0xae,0xdc,0x87, + 0x8f,0x5f,0x2,0x37,0x2b,0x7e,0xd7,0x53,0xb1,0x67,0xbf,0x2b,0x26,0x4d,0x36,0xc1, + 0xf4,0x4f,0x17,0xc3,0xf8,0x93,0x5,0xd8,0xb6,0xed,0x3b,0x72,0x85,0x2e,0x3c,0x7f, + 0xfe,0x9c,0xf3,0xe9,0xce,0xce,0x76,0x6a,0x1f,0xce,0x62,0xe9,0x17,0x36,0x58,0xbe, + 0xf6,0x34,0x3e,0x31,0xdb,0x4c,0x33,0x30,0x11,0xab,0x56,0xaf,0xe1,0xdc,0x84,0x59, + 0x9d,0x5,0x2d,0x73,0x9b,0xfa,0xfa,0x7a,0x54,0x57,0x57,0x73,0x88,0x8c,0x8c,0xc4, + 0xed,0xdb,0xb7,0xf1,0xcd,0x37,0xdf,0x5c,0x19,0xb4,0xfb,0xb0,0x1,0xb4,0x38,0x37, + 0x31,0xfa,0x64,0xc1,0xc0,0x1e,0xbb,0x20,0x1c,0x3c,0x7c,0x1d,0xe,0xb4,0xba,0x3a, + 0x46,0x42,0x4e,0xba,0xdd,0x21,0x31,0x91,0x70,0xf5,0x8c,0x26,0xf7,0x4a,0xc0,0x76, + 0x9b,0xd3,0xd0,0x33,0x98,0x9,0x7d,0xc3,0x39,0x50,0x52,0x9e,0x8,0x6a,0xfe,0x38, + 0x2b,0x96,0x95,0x95,0x71,0x99,0x84,0x89,0x78,0xf3,0xfa,0x15,0x3c,0x3c,0xce,0xc3, + 0x72,0xb1,0x35,0x96,0x7d,0xb1,0x15,0x67,0xdd,0x3c,0x50,0x53,0x53,0xcd,0xf9,0x3c, + 0x23,0xcd,0x50,0x53,0x53,0x43,0xb1,0x53,0xc9,0x9,0x2f,0x2d,0x2d,0x85,0xaf,0xaf, + 0x2f,0x62,0x62,0x62,0x28,0x4b,0xed,0xf0,0x1f,0x92,0x0,0x96,0x89,0x14,0x95,0xf8, + 0x29,0x6b,0x36,0x3a,0xe3,0x7b,0xdb,0x6b,0xb0,0x39,0x18,0x0,0x5b,0xfb,0x40,0xfc, + 0xe0,0x18,0xc,0xfb,0x63,0x21,0x24,0xe8,0x26,0x9,0x8a,0xc4,0xd7,0x5b,0x9d,0xa0, + 0xab,0x37,0x3,0x7a,0x82,0x39,0x5c,0xaa,0xd4,0x9e,0x30,0x19,0xf9,0xf9,0x79,0x9c, + 0x45,0xd3,0xd2,0xd2,0x3e,0xa4,0x48,0x16,0xa4,0x59,0x99,0x99,0x28,0x2f,0x2f,0xa3, + 0x54,0x49,0xeb,0x8,0x2a,0x58,0xac,0x6,0x30,0xd2,0x15,0x15,0x15,0x9c,0x60,0x96, + 0xfb,0x9f,0x3e,0x7d,0x8a,0x9b,0x37,0x6f,0x52,0x93,0x77,0x1d,0x79,0x79,0x79,0xb8, + 0x78,0xf1,0x62,0xe9,0xec,0xd9,0xb3,0x27,0xe,0x49,0x84,0xb0,0x90,0xd0,0x8e,0xa9, + 0x66,0x5f,0x62,0xe3,0x77,0x97,0x61,0xbd,0xdd,0x7,0x5b,0x6d,0x2e,0x63,0xfb,0xde, + 0x5f,0x48,0x90,0x1f,0x76,0x1d,0x8,0xc0,0x3e,0x9a,0x1d,0xab,0x4d,0x47,0xa9,0xc2, + 0xce,0xe2,0x72,0xbd,0x8e,0xee,0xa7,0x14,0x9c,0xaa,0x5c,0xab,0xd0,0x4b,0x96,0xcf, + 0xce,0xce,0x46,0x46,0x46,0x6,0x37,0x13,0x2c,0x35,0xb2,0xd9,0x60,0xfe,0xce,0x88, + 0x3f,0x79,0xf2,0xe4,0xf,0x60,0x56,0x67,0x60,0x56,0xf,0x8,0xf0,0x47,0x46,0x7a, + 0x6,0x9,0xc8,0xe7,0xdc,0xec,0xd4,0xa9,0x53,0x51,0xf2,0xf2,0xf2,0x12,0x43,0x11, + 0xa1,0x28,0xc5,0x53,0x2a,0xb4,0x58,0xe6,0x80,0xd5,0x9b,0x2e,0xe0,0x4b,0x6b,0x4f, + 0xac,0xdb,0x72,0x1,0x1b,0xb6,0x79,0xd1,0x5a,0xd7,0x1b,0xd6,0x3b,0x2e,0x63,0x85, + 0xd5,0x31,0x4c,0x32,0xf8,0x8c,0x8a,0xd4,0x34,0x68,0x6a,0x9b,0x41,0x4e,0x61,0x12, + 0x4c,0x4d,0x67,0x90,0x5f,0x37,0xa0,0x8e,0xb2,0xb,0x9b,0x85,0x4c,0xb2,0x3c,0x13, + 0xc3,0x2c,0x9a,0x9b,0x9b,0xcb,0x9,0x62,0x28,0x2c,0x2c,0xfc,0x70,0x66,0xc5,0xec, + 0xfe,0xfd,0xfb,0x64,0xf9,0x40,0x44,0x46,0x50,0xbc,0x9d,0xf3,0x82,0xab,0x8b,0x7, + 0x12,0xe2,0x13,0xb9,0x77,0x50,0x55,0x66,0xb1,0x20,0x3e,0x14,0x11,0x5f,0xa8,0x68, + 0x4c,0xed,0xb3,0x5c,0x79,0x1c,0x8b,0x56,0x9f,0xc2,0xe2,0x35,0xa7,0xb1,0xf4,0xab, + 0x33,0x14,0x90,0xae,0x58,0xb1,0xce,0x8d,0xfe,0x3b,0x81,0x49,0x2,0x4b,0x28,0xab, + 0x19,0x71,0x45,0x4a,0x51,0x59,0x0,0x9,0xc9,0xb1,0x38,0x73,0xe6,0x34,0x97,0x89, + 0x4a,0x4a,0x4a,0x3e,0x88,0xc8,0xca,0xca,0xe2,0x84,0xb0,0x22,0xf5,0x3b,0x98,0x28, + 0x66,0x65,0x96,0x32,0x43,0x42,0x42,0x10,0x74,0x3d,0x4,0xce,0xc7,0x5d,0xe1,0x71, + 0xee,0x2,0x8e,0x1d,0x3d,0x81,0x23,0xe,0x4e,0x78,0xf0,0x20,0x9,0x69,0xe9,0x69, + 0x70,0x74,0x74,0xf4,0x21,0x1,0x23,0x7,0x2d,0x62,0xd8,0xb0,0xe1,0xe7,0xb5,0x75, + 0xe7,0x51,0x1a,0xb4,0x23,0xfc,0x88,0xf9,0x94,0xe,0x17,0x2c,0x3d,0xcc,0xc1,0x62, + 0x99,0x23,0x26,0x1b,0x2d,0x85,0xc2,0xb8,0xc9,0x50,0x54,0xd1,0x27,0x1,0x7a,0x90, + 0x94,0x52,0x1,0x5f,0x53,0xb,0x77,0xef,0xde,0xe5,0x5a,0x6e,0xe6,0xdf,0x8c,0x3c, + 0x73,0x27,0x6,0x76,0xcd,0x48,0x33,0x30,0xeb,0xc6,0xc5,0xc5,0x71,0xae,0x13,0x73, + 0x97,0xb2,0x9c,0xe7,0x25,0x12,0x93,0x40,0xb3,0x53,0x80,0xa8,0xa8,0x28,0x38,0x39, + 0x39,0xe3,0xc8,0x61,0x26,0x22,0x99,0x2b,0x6c,0x54,0x17,0x98,0x88,0x51,0x83,0x15, + 0x21,0x23,0x22,0x22,0x1a,0xa9,0x35,0x71,0x2e,0x66,0xce,0xfb,0xfe,0xf,0xf8,0x74, + 0xfe,0x2e,0x8,0xa6,0xae,0xa6,0x65,0xa1,0x2e,0x55,0x57,0x6d,0x6a,0x11,0xb4,0x68, + 0x91,0xae,0x89,0x11,0xa2,0x3c,0x4c,0x9c,0x34,0x89,0x56,0x5f,0x37,0xb8,0x80,0x6d, + 0x6a,0x6a,0xa4,0xec,0xc4,0xb2,0x4d,0x35,0x27,0x88,0xb5,0xcc,0xcc,0x9d,0x98,0xa0, + 0xf4,0xf4,0x74,0xee,0x3a,0x32,0x3c,0xa,0x89,0xf7,0x92,0x28,0xb5,0xd2,0xe6,0x0, + 0xc5,0x49,0x7e,0x7e,0x3e,0x97,0x4e,0x9d,0x8e,0x9d,0xa0,0xee,0xf5,0x38,0xd5,0x86, + 0x64,0x6e,0xa6,0xf6,0xee,0xdd,0x7b,0x91,0x4,0x88,0xd,0x56,0x84,0x2c,0x2d,0xba, + 0x6f,0xb3,0x66,0xcc,0x78,0xba,0x15,0xe5,0xf3,0xd,0x98,0x32,0x7d,0x1d,0x8c,0xa7, + 0xad,0x85,0xa1,0xc9,0x1a,0xea,0x6f,0xf4,0xc1,0x93,0x51,0x85,0xb4,0x8c,0x1a,0xa4, + 0x79,0xca,0xe4,0x46,0xa,0xdc,0x1a,0x57,0x53,0x53,0x7,0x6b,0xd7,0xae,0xc3,0xe9, + 0xd3,0x67,0xe0,0xee,0xee,0x8e,0xb3,0x67,0xcf,0x72,0x70,0x71,0x75,0xa5,0xfa,0xe0, + 0x2,0x3f,0x3f,0x3f,0x3c,0x7a,0xf4,0x88,0x23,0xfb,0x30,0xe9,0x21,0xee,0xdf,0x8d, + 0x47,0x43,0x7d,0x3,0x17,0xec,0x95,0x15,0x95,0xbf,0x89,0x88,0xe0,0xdc,0xe9,0xa8, + 0xa3,0x33,0x92,0xe9,0x19,0x36,0x63,0x24,0x22,0x44,0x4f,0x4f,0x4f,0x61,0xb0,0x22, + 0xa4,0x69,0x80,0x9b,0x8c,0x9c,0x46,0xf,0x9b,0xd,0x5d,0xc3,0xc5,0xd0,0x35,0xf8, + 0x7,0x26,0xea,0x5b,0x42,0x8d,0x6f,0x2,0x49,0x69,0x25,0xce,0xff,0xc5,0x25,0xc6, + 0x10,0x79,0x1e,0x64,0xc7,0xf0,0xe9,0x7f,0x53,0xa8,0x52,0xff,0xa3,0xa6,0xae,0xf, + 0x79,0x79,0x65,0x28,0x28,0xa8,0xd2,0xef,0x9,0x18,0x37,0x4e,0x1d,0xca,0xca,0xca, + 0xb9,0xda,0xda,0xda,0x61,0xf3,0xe6,0xcd,0xab,0xf4,0xb9,0xe4,0xf3,0x3e,0x9f,0x2, + 0x3b,0x39,0x31,0x19,0x69,0x89,0xa9,0x68,0x6f,0x6d,0x47,0x5b,0x7b,0x1b,0x97,0x62, + 0xf3,0x28,0x2d,0x47,0x50,0x55,0x76,0x3e,0x7e,0xa,0x67,0x9c,0xcf,0x22,0xe5,0xd1, + 0xaf,0x6d,0xc6,0xee,0xdd,0xbb,0xef,0x4c,0x98,0x30,0x61,0xcc,0x60,0x45,0xb0,0xe7, + 0x57,0x8d,0x1c,0x29,0x9e,0xc5,0x8,0x8e,0x53,0x15,0x70,0x7d,0xbe,0xaa,0xc6,0x14, + 0xb2,0xbe,0xa,0x11,0x97,0x26,0x48,0x41,0x94,0xc0,0xfe,0x9b,0xa4,0x67,0x41,0xb, + 0x98,0x39,0xd4,0x3e,0xf0,0x31,0x52,0x94,0xdd,0x93,0x85,0xc8,0x8,0x6e,0xf,0x88, + 0xb9,0x1,0xdb,0xc9,0x66,0xe9,0xf1,0x80,0x81,0x81,0x41,0xfe,0x95,0x2b,0x57,0xde, + 0xb3,0xcc,0x94,0x96,0x9c,0x8a,0xa2,0xc7,0x85,0xe8,0x7a,0x45,0xbb,0x20,0x24,0x82, + 0x55,0x66,0xf6,0x3f,0x73,0x27,0x57,0x17,0x37,0x5c,0xf0,0xf8,0x19,0x69,0xa9,0xe9, + 0xb4,0x29,0x10,0x4b,0xad,0x8b,0x4d,0x14,0xd5,0x9,0x95,0xa1,0x88,0x60,0x1f,0xdf, + 0x3c,0x7c,0xf8,0xc8,0x64,0x22,0xdb,0x25,0x29,0xa5,0xd0,0xcf,0x23,0x1,0xa3,0xc5, + 0x65,0x88,0xa8,0x38,0x24,0x79,0x8a,0xe0,0x8f,0x9f,0x6,0x75,0x9a,0x99,0x31,0xf2, + 0xe3,0xd9,0xc6,0x55,0xdf,0x70,0x11,0xd1,0x17,0x94,0x10,0x2e,0xd0,0xb8,0x99,0xff, + 0xf6,0xc1,0xb1,0x4c,0x84,0x99,0x99,0x59,0x69,0x50,0x50,0x10,0x97,0xff,0x53,0x1f, + 0xa4,0xa1,0x90,0x44,0xb4,0xb5,0xb5,0x53,0xec,0x34,0x50,0x91,0x2b,0xe3,0xfa,0xa6, + 0x70,0x6a,0x2f,0xce,0xbb,0x7b,0x21,0xc0,0xf7,0x3a,0x32,0x33,0xb2,0x48,0x54,0x14, + 0xf6,0xec,0xde,0x93,0xb5,0x7e,0xbd,0xf5,0xf4,0xa1,0x88,0x60,0x63,0xa8,0xde,0x9, + 0x19,0x11,0x9c,0x86,0xd,0x1b,0x96,0x49,0x68,0xa3,0xeb,0xd6,0x61,0xc2,0xc2,0x6d, + 0xc2,0xc3,0x45,0x3a,0x87,0x9,0x8b,0xb4,0x8a,0x88,0x88,0xc7,0x8c,0x1a,0x35,0x66, + 0x37,0x9f,0x6f,0xfa,0x9f,0x7c,0x56,0x91,0xc6,0x9e,0xda,0xb2,0x65,0xcb,0xf3,0x1b, + 0xc1,0x61,0xad,0x81,0xd7,0x42,0x5a,0x88,0x64,0xcb,0xed,0xf0,0xa8,0x96,0xf0,0xb0, + 0xc8,0x96,0x9b,0x37,0x6e,0xb7,0x4,0x7,0x87,0xb6,0x5c,0xbb,0x1a,0xdc,0xe2,0x7d, + 0xf1,0x72,0x8b,0xd7,0xf9,0x4b,0x2d,0x1,0xfe,0xd7,0x5b,0x42,0x82,0x6e,0x75,0x9c, + 0x74,0x76,0xe9,0xa5,0x1e,0xcc,0x7b,0x28,0x2,0x58,0x4e,0xd6,0x25,0x2c,0x16,0x16, + 0x19,0xb9,0x53,0x54,0x54,0xe2,0x94,0x88,0x88,0x98,0xcf,0xf0,0xe1,0x22,0x97,0x46, + 0x8d,0x96,0xd,0x90,0x95,0x53,0xf,0x92,0xe4,0xa9,0x5e,0x93,0x90,0x52,0x3a,0x23, + 0x3a,0x8a,0xf7,0x1d,0xf5,0x57,0xb3,0xe8,0x59,0xc5,0xff,0xe7,0x43,0x3a,0x2b,0x57, + 0xae,0x3c,0x42,0x1d,0xe8,0x65,0xaa,0xd,0xde,0x69,0x49,0x69,0xde,0x65,0xc5,0xcf, + 0xbc,0x69,0x85,0xe6,0x4d,0x6d,0x89,0x37,0xf5,0x48,0xde,0x14,0xb,0xde,0x74,0xdf, + 0xdb,0xcb,0xd3,0xdb,0xfb,0xc6,0xd5,0x9b,0x17,0xd3,0xd3,0xd2,0x7d,0x28,0x9,0x5c, + 0xda,0xb6,0x6d,0x9b,0xf5,0xc6,0x8d,0x1b,0x79,0x83,0x11,0xc0,0x56,0x48,0xfa,0x94, + 0x95,0xd6,0x8e,0x1e,0x2d,0x77,0x40,0x5a,0x5a,0xf9,0xa8,0xec,0x18,0xd,0x7,0x1e, + 0x4f,0xf5,0x90,0xd8,0x68,0x19,0x5b,0x31,0x9,0xa9,0x1f,0xa4,0x78,0x6a,0xe,0x5a, + 0x13,0xe6,0x38,0xe8,0xe8,0x5b,0xfc,0x48,0xb,0xf9,0xc3,0xa2,0xa3,0x64,0x1c,0x87, + 0x8f,0x10,0x77,0x14,0x16,0x16,0xfd,0x8e,0xc6,0x5a,0x10,0x7e,0xdf,0xbc,0x62,0x5b, + 0x27,0x7c,0x4b,0x4b,0xcb,0x2d,0xd4,0x3,0xd9,0xe5,0xe7,0xe6,0x1f,0x48,0x4d,0x48, + 0xb5,0x7d,0x52,0xf8,0xcc,0x96,0x16,0xfa,0xb6,0xd4,0x82,0xd8,0x96,0x97,0x97,0xdb, + 0x52,0x9a,0xb5,0xa5,0xee,0xd4,0xd6,0xf5,0x8c,0x9b,0xad,0xaf,0x8f,0xbf,0x2d,0xd5, + 0x8f,0x83,0xfe,0xfe,0xfe,0x87,0x88,0xf8,0x67,0xbf,0x79,0xc1,0x5f,0xe6,0x2f,0x49, + 0x96,0x9c,0x49,0x3e,0xbe,0x5e,0x45,0xdd,0xe8,0x6b,0xbe,0xd6,0x8c,0x75,0x7c,0x9d, + 0x59,0x56,0x4a,0xea,0xc6,0x56,0xe2,0x52,0x72,0x56,0x62,0x62,0x3c,0x82,0xd4,0xda, + 0x11,0x62,0x92,0xeb,0xa8,0x36,0xac,0xe5,0xf3,0xa7,0x59,0xa9,0xab,0x1b,0x5a,0xf1, + 0xf9,0xba,0x4,0xad,0xb5,0xda,0xda,0xba,0x1b,0x35,0xb5,0xb4,0xbe,0xa6,0xec,0xb1, + 0x6c,0xe1,0xc2,0x85,0x86,0xab,0x56,0xad,0x9a,0x42,0xeb,0xde,0x15,0xc1,0xc1,0xc1, + 0xeb,0x8b,0x4a,0x8b,0xac,0x1e,0xc4,0xc7,0x5b,0xe5,0xa4,0xe6,0x58,0x75,0x74,0x75, + 0x58,0x35,0xb7,0x36,0x5b,0x11,0x79,0x2b,0xaa,0xda,0x56,0x61,0x61,0x61,0x56,0x4e, + 0x4e,0x27,0xac,0x2e,0xb8,0x5d,0xb0,0xa2,0xc5,0xce,0xda,0xab,0x57,0xfd,0xd6,0x53, + 0xab,0x3d,0xe5,0x2f,0xb3,0xfe,0xed,0x41,0x59,0x31,0x31,0x19,0x33,0x15,0xd,0x63, + 0xb,0x7d,0xc3,0x25,0xf3,0x74,0x8d,0x97,0x9b,0xff,0x8a,0xc5,0xe6,0xca,0x6a,0x6, + 0xe6,0xe2,0xd2,0xa,0xe6,0xe2,0xe2,0xca,0x4,0x5,0x73,0x51,0x71,0x69,0x73,0x51, + 0x51,0x69,0x73,0x63,0x3,0x63,0xf3,0x3,0x7,0xe,0x98,0x7,0x6,0xfa,0x9b,0x13, + 0xc9,0xf,0xf0,0xf1,0xf1,0x99,0xcf,0x40,0x56,0x9d,0x4f,0x4,0xe7,0x51,0x2f,0x64, + 0x9e,0x14,0x9f,0x64,0x9e,0x14,0x9b,0x62,0x4e,0x85,0x8f,0x3,0x15,0x33,0x73,0x72, + 0x27,0x73,0x7a,0xc6,0xfc,0xe8,0xd1,0x13,0xe6,0xa7,0x4f,0xbb,0x9b,0xd3,0x3a,0xf9, + 0x33,0xf6,0x1e,0x8a,0x95,0xf1,0xc4,0x69,0x50,0x1b,0x5f,0x92,0x3c,0xde,0x58,0x7d, + 0x7d,0xe3,0xe5,0xc6,0x66,0x73,0xbf,0x16,0x98,0x98,0xfd,0x2f,0xc,0x4d,0x56,0xb, + 0x94,0xe5,0x27,0xb,0x78,0xf2,0x1a,0x2,0x1e,0x8f,0x41,0x59,0x30,0x7a,0xc4,0x68, + 0x81,0x99,0xd9,0x5c,0x1,0x55,0x59,0x1,0xb5,0x13,0x2,0x2a,0x4c,0x82,0xc6,0xc6, + 0x46,0x1,0xad,0xb6,0x4,0x94,0xdb,0x5,0xd4,0x36,0xb,0x28,0x35,0xa,0x88,0x3c, + 0xf7,0x4c,0x7a,0x4e,0xba,0x20,0x26,0x34,0x46,0x10,0x1f,0x13,0xcf,0x3d,0xcb,0x9e, + 0x61,0xf7,0x69,0x67,0x42,0xf0,0xd3,0x4f,0x27,0x4,0x27,0x4e,0xb8,0x8,0xa8,0xe0, + 0x19,0x86,0x86,0x86,0xa,0xc8,0xe7,0x59,0xd6,0x1a,0xd4,0x21,0x2a,0x26,0xa3,0xa9, + 0x66,0x62,0xb2,0x8e,0x3f,0x77,0xa1,0x9d,0xfa,0x6c,0x8b,0x5d,0x1a,0xff,0xa,0x81, + 0xe9,0x52,0xd,0x5,0x5,0x9d,0xf,0x10,0x95,0x56,0xd0,0x10,0x8,0x4,0x1a,0xe4, + 0xb7,0x1a,0xd4,0xcf,0x69,0x50,0x9b,0xac,0x41,0x3e,0xfb,0x27,0xb0,0xfb,0xb4,0x81, + 0xa5,0x41,0x3d,0x93,0x6,0xb9,0x8,0x77,0xf6,0xf2,0xf2,0xe5,0xae,0xd9,0x3d,0x76, + 0x3e,0x71,0xe2,0x4,0xe1,0x2c,0x8d,0xfd,0xf5,0x37,0x2d,0x31,0x59,0x31,0x1d,0xd4, + 0x41,0x69,0x52,0x4d,0xc6,0xd4,0xf4,0x4b,0x85,0xcf,0xbf,0x70,0x92,0xff,0xbf,0x60, + 0x68,0xf8,0xb9,0xbc,0xa2,0x96,0xe1,0xaf,0x50,0xd4,0x22,0x28,0xca,0xd3,0x34,0xcb, + 0x93,0xe5,0xe5,0x69,0x91,0x22,0x4f,0x56,0xfe,0xaf,0x48,0x4e,0x4e,0xe6,0xc6,0x44, + 0x47,0x47,0xcb,0x9f,0x3b,0x77,0x8e,0x83,0x93,0x93,0x13,0x77,0x26,0xb7,0x19,0x9b, + 0x9c,0x1c,0x2d,0x4f,0xe4,0x7,0xbf,0xb8,0x27,0xa9,0xa2,0x3a,0x3a,0x4b,0x24,0x57, + 0xad,0xf2,0x94,0x58,0x62,0x7d,0x52,0xf2,0xcf,0xd8,0x2f,0xc9,0xee,0xcb,0xe9,0xcc, + 0x20,0xe8,0x48,0xca,0xc9,0xc9,0x49,0x2e,0x59,0xb2,0x44,0x92,0x76,0x17,0x24,0xc9, + 0xf2,0x92,0x34,0xed,0x7f,0x9,0xbf,0x3f,0x4b,0x7b,0x44,0x92,0xe1,0xe1,0xe1,0x92, + 0xd4,0xff,0x73,0x60,0xe3,0x29,0x3e,0x24,0xe,0x1f,0x3e,0xfc,0x5f,0xdb,0xe8,0xff, + 0x1,0x32,0x1,0xa3,0x55,0x44,0x90,0x62,0xb1,0x0,0x0,0x0,0x0,0x49,0x45,0x4e, + 0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/hidden.png + 0x0,0x0,0xa,0xf5, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0x14,0xc3,0x0,0x0,0x14,0xc3,0x1, + 0x15,0x70,0x4d,0x42,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xa, + 0xd,0x14,0x12,0x4,0x37,0x48,0xbd,0x0,0x0,0xa,0x75,0x49,0x44,0x41,0x54,0x68, + 0xde,0xd5,0x5a,0x6b,0x6c,0x54,0xc7,0x15,0xfe,0x66,0xe6,0xee,0xcb,0xbb,0xeb,0x67, + 0x6c,0xe3,0xc5,0x86,0x80,0x21,0x9,0x8f,0x12,0x10,0xa4,0x5,0xf2,0xa2,0x21,0x48, + 0x24,0xa5,0x32,0x14,0xf5,0xf1,0x27,0x69,0xd5,0xfe,0xaa,0xfa,0xb3,0x55,0x5b,0x89, + 0x14,0xb5,0x4d,0x88,0x9a,0x28,0x48,0x8d,0xfa,0x2b,0x95,0xf2,0x23,0x4a,0xa4,0x2a, + 0x52,0x22,0x42,0x12,0x12,0x1a,0x68,0x1e,0x50,0xe2,0x28,0x4,0x30,0x4,0x1c,0xd2, + 0xc4,0x98,0xd8,0x64,0xd7,0xd8,0x60,0xb3,0xf6,0xbe,0xee,0xbd,0x33,0x73,0xfa,0x63, + 0xef,0x5d,0xee,0xbe,0xfc,0x6e,0xab,0xae,0x74,0xb4,0x3b,0x77,0xee,0x9d,0xfb,0x7d, + 0xe7,0x9c,0x39,0xe7,0xcc,0xcc,0x32,0x22,0xc2,0xff,0xf3,0xc7,0x98,0xcf,0xc1,0xd8, + 0xee,0xfd,0x61,0x98,0xa9,0xe,0xc3,0x30,0x62,0xa4,0x55,0x1b,0x81,0xb5,0x1,0x0, + 0x3,0x25,0x18,0x17,0x9,0x29,0x65,0x1c,0x81,0xc8,0x20,0xbd,0xfa,0xcb,0xf4,0xbc, + 0xbd,0x73,0xae,0x16,0x60,0x5d,0xfb,0x16,0x73,0x85,0x9d,0x4c,0xd0,0x2e,0x0,0xf7, + 0x2,0xe0,0x53,0x3c,0xa2,0x1,0x1c,0x27,0xc5,0xe,0x68,0x81,0xd7,0xe8,0xe0,0x9e, + 0xaf,0xfe,0x27,0x4,0x8c,0x1d,0x4f,0xec,0x24,0xc1,0xf6,0x32,0xd0,0x3a,0x0,0x58, + 0x18,0x6b,0x53,0xab,0x6e,0xeb,0x14,0xcd,0x8d,0x75,0xa8,0xb,0x87,0x50,0x1b,0xe, + 0x22,0x1c,0xc,0x0,0x0,0xd2,0x39,0x13,0xe3,0xe9,0x1c,0x92,0xe9,0x2c,0x46,0x46, + 0x93,0xb8,0xf0,0xaf,0x3e,0xf5,0x75,0x3c,0x21,0x0,0x80,0xc0,0xce,0x30,0x45,0x7f, + 0x94,0x6f,0x3e,0xf6,0xda,0x7f,0x85,0x80,0xaf,0xeb,0xf1,0xbb,0x9,0xec,0x19,0x0, + 0x1b,0x63,0x6d,0xb,0xd4,0x86,0x35,0x2b,0xc5,0xaa,0xa5,0xb,0x51,0x5b,0x13,0x4, + 0x0,0x28,0x4d,0x60,0x20,0x10,0xe5,0x5,0x0,0x18,0x63,0x60,0x8c,0x81,0xc0,0x20, + 0x38,0x3,0x0,0x8c,0x67,0x72,0xb8,0x70,0xe9,0x6b,0x7c,0x72,0xae,0x57,0xc5,0x13, + 0x43,0x2,0xc0,0x47,0xc,0xf4,0x2b,0xfb,0xe0,0xef,0x4e,0xfc,0x47,0x8,0xb0,0x5d, + 0x4f,0xd5,0x9,0x6d,0x3f,0xf,0x60,0x77,0x63,0x43,0xbd,0xda,0x76,0xdf,0x26,0xb1, + 0x76,0x59,0x7b,0xde,0x27,0xb4,0x86,0x52,0xa,0x4a,0xa9,0x69,0x8d,0x25,0x84,0x80, + 0x10,0x2,0x9c,0xe7,0xbd,0xad,0xe7,0xcb,0x2b,0x38,0x72,0xac,0x5b,0x8d,0x8e,0xdd, + 0x10,0x0,0x5e,0x55,0xdc,0xf7,0x33,0x3a,0xf0,0x9b,0xe4,0xbc,0x11,0x60,0x3b,0xf6, + 0x2d,0x37,0xc,0x1c,0x62,0x8c,0x75,0x6e,0x7f,0xe0,0x3e,0xbe,0xf9,0x1b,0xcb,0x20, + 0x38,0x83,0x94,0x12,0x52,0xca,0xb9,0x45,0x11,0xc3,0x80,0x61,0x18,0x90,0x4a,0xa3, + 0xfb,0x7c,0x1f,0xe,0xbf,0x7b,0x4c,0x13,0x51,0x9f,0x94,0xf8,0xe,0xbd,0xb9,0xe7, + 0x8b,0x39,0x13,0xf0,0x7d,0x77,0xdf,0x83,0xc4,0xe9,0xd5,0x48,0x28,0x12,0x7e,0xf4, + 0xfb,0xf,0x8b,0x8e,0xe6,0x3a,0x28,0xa5,0x20,0xa5,0xc4,0x5c,0x3,0x80,0xd7,0xc5, + 0xfc,0x3e,0x3,0x9c,0x73,0x7c,0x35,0x9c,0xc4,0x4b,0x7,0xde,0x52,0xa9,0x74,0x26, + 0xcd,0x34,0xdb,0x6d,0xbf,0xb1,0xe7,0xe8,0xac,0x9,0x38,0xe0,0xf,0xc7,0x62,0x31, + 0xfc,0x64,0xe7,0x83,0x22,0x1a,0xa,0xc0,0xb2,0x2c,0x68,0xad,0xe7,0xc,0xba,0x0, + 0x0,0x37,0xdb,0x9c,0x73,0xf8,0x7c,0x3e,0x4c,0x64,0x4d,0xbc,0x70,0xf0,0x1f,0x2a, + 0x9e,0x18,0x2,0xd3,0x6c,0xfb,0x64,0x24,0xaa,0x12,0x60,0x3b,0xf6,0x2d,0x17,0x82, + 0x3e,0x89,0xc5,0x62,0xe1,0x9f,0xff,0xe0,0x21,0xc1,0x39,0x87,0x6d,0x99,0xb3,0xd2, + 0xfa,0x64,0xa0,0x4b,0xfb,0x19,0x63,0xf0,0xfb,0xfd,0x90,0x4a,0xe3,0xb9,0x57,0xfe, + 0xae,0xe2,0x89,0xa1,0xb4,0x52,0x6c,0x43,0x35,0x77,0xe2,0xd5,0x26,0xac,0x61,0xe0, + 0x50,0x34,0x12,0xe,0xff,0xb8,0x6b,0xab,0xe0,0x9c,0xc3,0x32,0x73,0x33,0x2,0xef, + 0x46,0xa1,0x82,0x9b,0x80,0xa,0x32,0x59,0x3f,0x48,0xc3,0x32,0x73,0x10,0x9c,0xe1, + 0xd1,0x1d,0x5b,0x44,0x34,0x12,0xe,0x1b,0x6,0xe,0xb1,0x5d,0x4f,0xd5,0x4d,0x9b, + 0x80,0xd0,0xf6,0xf3,0x9c,0xa1,0xf3,0xd1,0xef,0x3d,0x2c,0xa2,0xa1,0x0,0x4c,0xd3, + 0x84,0x24,0x54,0x15,0xa5,0xa9,0x48,0xa4,0xd2,0x45,0x6d,0xad,0xf5,0x94,0xfd,0x36, + 0x11,0x6c,0x95,0x17,0xa9,0x34,0x72,0x56,0xe,0x91,0x90,0x1f,0x8f,0x74,0x6d,0x13, + 0x9c,0xa1,0xd3,0x89,0x80,0x53,0x13,0xf0,0x75,0x3d,0x7e,0x37,0x80,0xdd,0xdb,0xb7, + 0x6e,0xe1,0xed,0xcd,0xf5,0xc8,0xd9,0x12,0x52,0xeb,0x22,0x8d,0x11,0x95,0x80,0x23, + 0x2a,0x88,0x2c,0x69,0x4f,0x7,0xbc,0xd2,0x4,0x52,0xf9,0x71,0xdd,0xb6,0xb4,0x35, + 0x4c,0xcb,0x46,0xfb,0x2d,0xb5,0xd8,0xbe,0x65,0x33,0x7,0xb0,0xdb,0xc1,0x36,0x39, + 0x1,0x2,0x7b,0xa6,0xb1,0xa1,0x5e,0x6d,0x5a,0xdd,0x9,0xcb,0x96,0xc8,0x59,0x12, + 0x52,0x3,0x52,0xa3,0xa0,0x21,0x5b,0x4d,0x5f,0xb3,0x95,0xc8,0x69,0xad,0xb,0xe2, + 0x3e,0xe7,0x8a,0xf7,0x59,0xd3,0xb2,0x61,0x5a,0x36,0x36,0xae,0x5a,0x8a,0x86,0xfa, + 0x3a,0xe5,0x24,0xd0,0xea,0x4,0x8c,0x1d,0x4f,0xec,0x4,0xb0,0x71,0xdb,0x7d,0x9b, + 0x4,0x67,0x40,0xda,0xb4,0x8b,0x6,0xf4,0x5a,0xa0,0x14,0xbc,0xdb,0x5f,0xa,0x4e, + 0xeb,0x62,0x70,0xa5,0xa4,0x2a,0x89,0x77,0xec,0x74,0xce,0x6,0x3,0x61,0xdb,0xe6, + 0xf5,0x2,0xc0,0x46,0x7,0x63,0xe5,0x6a,0x94,0x4,0xdb,0xbb,0xb0,0xad,0x55,0xad, + 0x5b,0xb6,0x50,0xa4,0x4c,0x9,0x4b,0xea,0x49,0xa3,0xc6,0x64,0xd1,0x64,0xaa,0xe8, + 0x33,0x93,0xc8,0x94,0x35,0x6d,0xac,0x5d,0x16,0xc3,0xf1,0xd6,0x66,0x15,0xbf,0x7a, + 0x6d,0x2f,0x80,0xd7,0xca,0x2c,0xc0,0xba,0xf6,0x2d,0x66,0xa0,0x75,0x1b,0xd6,0xac, + 0x14,0x9a,0x80,0x54,0xd6,0x2a,0xd2,0xb4,0x57,0xb3,0xd5,0x2c,0x50,0xc9,0x22,0x5e, + 0xab,0xcc,0xd6,0x9a,0x13,0xd9,0x7c,0xf8,0xbe,0x6b,0xf5,0x72,0xc1,0x40,0xeb,0x58, + 0xd7,0xbe,0xc5,0x65,0x16,0xe0,0xa,0x3b,0x21,0x80,0x15,0xb7,0xb6,0x21,0x67,0x4b, + 0x58,0x4a,0x97,0x69,0x87,0xf4,0xc,0xe2,0x39,0xa6,0x67,0xd,0x77,0x48,0x6f,0x78, + 0x2d,0xbf,0x8f,0x90,0xb3,0x24,0x56,0x2c,0x6a,0xc5,0xeb,0x2e,0x56,0xe0,0xd9,0x62, + 0xb,0x8,0xda,0xb5,0x30,0xd6,0xa6,0xea,0xc3,0x41,0x64,0x4c,0x9,0x68,0x5d,0x10, + 0xd2,0x4,0xad,0x3c,0x5a,0x3,0x95,0x69,0xb4,0x54,0xe3,0xd3,0x99,0x1f,0x52,0x95, + 0xcf,0x97,0x6a,0xf3,0x28,0x6b,0xda,0xa8,0xf,0x7,0x11,0x5b,0xd0,0xa2,0x9c,0xb5, + 0xc7,0x4d,0x17,0x62,0xbb,0xf7,0x87,0x1,0xdc,0xbb,0x6a,0xf9,0x12,0xc1,0x40,0x48, + 0x9b,0x76,0x71,0x9c,0x27,0x2a,0xfa,0xad,0x34,0x41,0x3b,0x2b,0x13,0x6f,0x9f,0xdb, + 0xaf,0x51,0x9c,0x1b,0xa4,0xce,0xb7,0x75,0x49,0xce,0xd0,0x54,0x9c,0xd0,0xdc,0xfe, + 0x4a,0xd7,0x53,0x39,0xb,0x9a,0x80,0x95,0x4b,0xdb,0x5,0x80,0x7b,0x1d,0xcc,0x8e, + 0xb,0x99,0xa9,0xe,0x8,0xc1,0x5b,0x1a,0x6b,0x61,0xda,0xa,0x96,0xd4,0x60,0x20, + 0x68,0xe,0x40,0x95,0x9b,0x7d,0xba,0x13,0xb0,0xec,0xba,0xa6,0x19,0xb9,0x57,0xe9, + 0x75,0x4b,0x4a,0xb4,0xd4,0xd5,0xe6,0x15,0x6f,0xa6,0x3a,0x0,0x5c,0x34,0x9c,0x92, + 0x36,0x46,0x44,0x88,0xd6,0x84,0x60,0x3b,0xda,0x61,0x20,0x40,0xcf,0xe,0xac,0xa6, + 0xa9,0xc9,0x4e,0x36,0x9f,0x74,0xbe,0x48,0xcb,0xdf,0xc7,0xa9,0xa0,0x44,0xa5,0x9, + 0xd1,0x70,0xc0,0x2d,0xc3,0x63,0x5,0x2,0xa4,0x55,0x1b,0x18,0x47,0x34,0xe8,0x2b, + 0xf8,0xe5,0x4c,0xc2,0x25,0x3,0x15,0x81,0x9e,0x6e,0xb8,0x9d,0xcc,0x42,0xe4,0x61, + 0xe3,0xde,0x6f,0x4b,0x85,0x48,0xc8,0x8f,0x2,0x66,0xd7,0x85,0x8,0xac,0x8d,0x1, + 0x88,0x84,0xfc,0xb8,0x91,0x95,0x90,0x95,0x22,0xd0,0x34,0xcd,0x3c,0x53,0x12,0xd3, + 0x1e,0x97,0x8,0x96,0x2d,0x51,0x17,0xf2,0xb9,0x15,0x43,0x5b,0x79,0x22,0x3,0x2b, + 0x2c,0x11,0xe7,0xa4,0xc9,0xf9,0x2,0x5d,0xc5,0xdd,0xca,0x32,0x31,0x3,0x25,0x0, + 0x86,0x54,0x26,0x7,0x43,0x88,0xa2,0x32,0x77,0x3e,0x48,0x78,0xdf,0x3f,0x5d,0x8b, + 0x16,0xb9,0x91,0x43,0xc2,0xe0,0xf9,0x1d,0x8e,0x9b,0x98,0x5d,0x2,0x5c,0x24,0x88, + 0x8,0xa9,0x6c,0xe,0xf5,0xd1,0x48,0x3e,0x14,0x4e,0xe6,0xd3,0x33,0xd4,0xe4,0x5c, + 0x2d,0xe8,0xb6,0x5,0x67,0x18,0x1b,0xcf,0xc1,0xc5,0x5c,0x20,0x20,0xa5,0x8c,0xb, + 0x21,0x90,0x4c,0x65,0x71,0x4b,0x5d,0xa4,0x68,0xe,0x54,0x1b,0xcc,0xeb,0x9b,0xb3, + 0xd2,0xe8,0x14,0xd7,0x2b,0x8d,0x27,0x18,0xc3,0x44,0x26,0xb,0x17,0xf3,0xcd,0x39, + 0x10,0x88,0xc,0x42,0x66,0xf5,0xf0,0xe8,0xd,0xbe,0x7a,0xc9,0x2,0x30,0xe4,0x43, + 0xe9,0x94,0xa0,0x88,0xbc,0x69,0x62,0x46,0x64,0x66,0x3a,0x37,0xfc,0x6,0x47,0xc8, + 0x2f,0x30,0x3c,0x96,0xca,0xc7,0xa6,0x40,0x64,0xb0,0x90,0x89,0x9d,0xbd,0xca,0xe3, + 0xbd,0x7d,0x3,0x8a,0x11,0xa1,0xbe,0xc6,0x5f,0x96,0x39,0xbd,0xe5,0x81,0x9b,0x59, + 0x65,0x69,0xbf,0x5b,0xe,0x3b,0x19,0xba,0xb4,0x34,0x76,0xc7,0xf3,0xae,0x2d,0x8a, + 0xd6,0x0,0x15,0xde,0xe7,0xf6,0xd7,0x85,0x7c,0x60,0x20,0xf4,0xf6,0x5f,0x51,0x0, + 0x8e,0xbb,0xfb,0xab,0x85,0x28,0x44,0x8a,0x1d,0x88,0xf,0xd,0xdf,0x9f,0x4c,0x67, + 0xd1,0x54,0xe3,0x43,0x7c,0x2c,0x53,0x35,0xce,0x13,0x77,0x34,0xa5,0x66,0xa6,0xe1, + 0xb9,0xb8,0xdb,0x2d,0xd1,0x20,0x6e,0xa4,0x72,0x88,0xf,0x8f,0xa,0x52,0xec,0x40, + 0x59,0x39,0xad,0x45,0xbe,0xc6,0xee,0xed,0x8f,0xa3,0x21,0x98,0x67,0xeb,0xee,0xb8, + 0xb9,0xc9,0xad,0x50,0x70,0x49,0x82,0xb6,0x9d,0x2,0x4e,0xab,0xc2,0x7d,0xa5,0x5, + 0x98,0xf7,0xba,0x52,0xa,0x52,0xeb,0xb2,0x55,0x99,0x3b,0x7e,0xe9,0xf3,0xde,0x55, + 0x1a,0x67,0x40,0x7d,0x8d,0x1f,0x9f,0xd,0x5c,0x2d,0xc2,0x5a,0x44,0x80,0xe,0xee, + 0xf9,0x8a,0x88,0x7a,0x4e,0x5e,0xf8,0x42,0x11,0x23,0xb4,0x37,0xd4,0x14,0xad,0xa2, + 0xa6,0x7a,0x59,0xa5,0xfb,0xdc,0xeb,0x15,0xfb,0x3d,0x64,0xa,0x5,0x61,0x85,0xa5, + 0xa5,0xd2,0x84,0x8e,0xa6,0x28,0x0,0xe0,0xd4,0xc5,0x7e,0x45,0x44,0xe7,0xf0,0xfa, + 0x63,0x43,0xe5,0xb,0x1a,0xc6,0xfc,0x2c,0x9d,0x7c,0x26,0x31,0x7c,0x5d,0x9c,0xbb, + 0x14,0xc7,0xa2,0x86,0x20,0x7c,0x82,0xcd,0x4c,0xc3,0x15,0x5e,0x5e,0xfa,0x9c,0xb7, + 0x5d,0x26,0x4e,0x1d,0xe4,0x15,0xbf,0xc1,0xd1,0xd1,0x14,0xc6,0xd9,0x4b,0x9,0x24, + 0x46,0xc6,0x4,0x1b,0x1f,0xf9,0x33,0x80,0x10,0x63,0xcc,0x77,0xb3,0x9c,0x66,0x8c, + 0x3,0xf0,0xab,0x77,0xf7,0x1f,0x25,0x65,0x9f,0x39,0xf2,0xe1,0x29,0xcd,0x40,0xe8, + 0x6c,0xe,0x57,0x5c,0xac,0xbb,0x60,0x6d,0x59,0x1d,0x74,0x41,0x2a,0xb5,0x67,0x20, + 0x4b,0x5b,0x6a,0xc1,0x40,0x38,0xfa,0xf1,0x79,0x4d,0xd2,0x3c,0xab,0x3e,0xf8,0xcb, + 0xfb,0x0,0x2,0x0,0x2,0xcc,0x1,0xe,0x0,0x3e,0x57,0x58,0xe2,0xf3,0xa7,0xc7, + 0xc6,0xd3,0xfc,0xc4,0x85,0x7e,0x74,0x34,0x84,0xd0,0x12,0xf5,0x43,0x13,0x8a,0x34, + 0xee,0x8d,0x1a,0x5,0xf1,0x6a,0xb2,0x52,0x7b,0x16,0xd2,0x12,0xd,0xa2,0xa3,0x29, + 0x8c,0x7f,0x5e,0x18,0xc0,0xd8,0x78,0x9a,0xb3,0xf8,0xa7,0xcf,0x7a,0xb1,0x2,0x30, + 0xc,0x8f,0x2b,0x9,0x0,0x42,0x9d,0x7e,0xf9,0xac,0x68,0xbe,0xf5,0xdd,0x77,0x4e, + 0x9c,0xde,0xb2,0xb8,0xa5,0x81,0xdf,0xd9,0xd1,0x80,0xf1,0xec,0x55,0x24,0x33,0x15, + 0xf6,0x43,0x49,0x4f,0xde,0x9e,0xc3,0xa7,0x36,0x68,0x60,0xed,0xe2,0x46,0xc,0x8e, + 0x24,0x71,0xa4,0xfb,0xc,0x21,0x37,0x7e,0x4c,0xf5,0x1c,0xfc,0xd4,0xc5,0xe9,0xa, + 0x2f,0x44,0x32,0x38,0x95,0x1c,0xc0,0xd4,0xa9,0x97,0x9f,0xd0,0xd2,0x8a,0xbf,0xf4, + 0xd6,0x31,0x9d,0xca,0xe6,0x70,0xd7,0x92,0x26,0xf8,0x4,0xcb,0x4f,0xb8,0x79,0x74, + 0x8f,0x6a,0xe2,0x13,0xc,0xdf,0xea,0x6c,0x46,0x2a,0x6b,0xe1,0xc5,0xb7,0x4f,0x68, + 0x2d,0xad,0x84,0x3a,0xf9,0xb7,0xa7,0x4b,0x71,0x7a,0x27,0x71,0xf1,0xdc,0xb9,0x76, + 0x79,0x5c,0x9d,0x7b,0xfb,0xd7,0xe9,0x4c,0x36,0xf7,0xe2,0xe1,0x6e,0xed,0x37,0x80, + 0xfb,0x6f,0x6b,0x46,0xc4,0xcf,0x8b,0xf7,0x70,0xe6,0x11,0xb4,0x2b,0x91,0xa0,0x81, + 0xfb,0x6f,0x6f,0x85,0x4f,0x30,0xbc,0xf4,0xce,0x47,0x3a,0x9d,0xc9,0x9a,0xea,0xec, + 0xa1,0xbd,0x18,0xbb,0x32,0x51,0x61,0x8e,0x2b,0x97,0x80,0x2,0x20,0x3d,0x62,0x63, + 0xe0,0xe3,0xcb,0xd4,0x7f,0xf2,0xf7,0x89,0xe1,0xeb,0x78,0xee,0xc0,0x7,0x5a,0x4a, + 0x89,0x7,0x56,0x2c,0xc0,0xc2,0xba,0x40,0xde,0xaf,0xa5,0xac,0x1e,0x4d,0x66,0x29, + 0xb1,0xfa,0x20,0x1e,0x58,0xb1,0x0,0xb6,0x54,0x78,0xee,0xf5,0xe3,0x3a,0x31,0x34, + 0x6,0xea,0xeb,0x7e,0x12,0x57,0x4e,0x5f,0x2e,0xe0,0x2a,0xc6,0x29,0x99,0xe7,0x90, + 0x21,0x4,0xa0,0xc6,0x91,0x30,0x80,0x10,0x80,0x1a,0xbe,0x7a,0xc7,0x3d,0x6c,0xc9, + 0x5d,0x7b,0xc3,0x35,0xa1,0xe0,0x23,0xf,0xdd,0xcd,0x3b,0x9a,0xeb,0xd0,0x37,0x3c, + 0x81,0x73,0x3,0xa3,0xc8,0xc9,0xf9,0xf1,0xf9,0xa0,0xc1,0xb1,0x66,0x51,0x23,0x3a, + 0x5b,0xa2,0x18,0x1c,0x49,0xe2,0xc5,0x37,0x4f,0xe8,0xb4,0x99,0x35,0xa9,0xaf,0xfb, + 0x4f,0xba,0xf7,0x70,0x37,0x80,0x8c,0x23,0x59,0x0,0x69,0xe7,0xf7,0x38,0x11,0xd9, + 0x5e,0x2,0xcc,0x43,0xa0,0xc6,0x25,0x0,0x20,0x84,0x8e,0xd,0xcb,0xc4,0x9a,0x87, + 0x9e,0xe4,0x86,0xbf,0x6d,0xdb,0xa6,0x75,0x6c,0xf3,0xca,0x45,0x0,0x80,0xcf,0x13, + 0x49,0x9c,0x8f,0x8f,0xc3,0xb2,0x67,0x77,0xcc,0xe4,0xf7,0x19,0x58,0x1d,0xab,0xc5, + 0xed,0x6d,0xf9,0x9d,0xf3,0xf,0x7b,0x7,0x70,0xa4,0xfb,0xc,0x69,0x69,0xd,0xa9, + 0x9e,0x37,0xfe,0x80,0xaf,0x7b,0xfa,0x1c,0xd0,0x59,0xf,0x81,0xc,0x80,0x71,0x0, + 0x26,0x11,0x15,0x1f,0x70,0x78,0x48,0x84,0xca,0xa4,0xa1,0xbd,0x49,0xac,0xfb,0xe1, + 0x6f,0x11,0xa9,0xbf,0xa7,0xa1,0x36,0xac,0x1f,0xfc,0xe6,0x6a,0x7e,0xe7,0xd2,0x36, + 0x68,0x2,0xe2,0x63,0x19,0xc,0x8e,0xa6,0x31,0x78,0x3d,0x3d,0xa5,0x55,0x82,0x4e, + 0x62,0xea,0x68,0xc,0x23,0xd6,0x50,0x3,0xce,0x80,0xb3,0x97,0x12,0x38,0xda,0x7d, + 0x5e,0x8f,0xa5,0xd3,0x1c,0x99,0xd1,0x6e,0x75,0xf2,0xe5,0xfd,0x48,0xc6,0xaf,0x3, + 0xc8,0x79,0x8,0xb8,0x32,0xe,0xc0,0xf2,0xd4,0x57,0xe5,0xcb,0x35,0xc6,0x58,0xc0, + 0x3,0x3e,0xe8,0x15,0xbe,0x72,0xfb,0x7a,0x74,0xac,0xfd,0x5,0xb,0x84,0xef,0x68, + 0x6b,0x6e,0xd0,0xeb,0xef,0x58,0xc2,0x57,0x2c,0x6a,0x45,0x7d,0x24,0x8,0x22,0xc2, + 0x44,0xd6,0x46,0xca,0x94,0xc8,0xda,0xa,0x39,0x2b,0x6f,0x99,0xa0,0xdf,0x40,0xc8, + 0x27,0x10,0x9,0x18,0x88,0x86,0x7c,0x60,0x8c,0xe1,0x46,0x2a,0x87,0xcf,0x6,0xae, + 0xe2,0xd4,0xc5,0x7e,0x9d,0x18,0x19,0xe3,0x64,0xa6,0x3f,0xc7,0xc0,0x27,0x7f,0xd5, + 0x9f,0x1d,0x3d,0xd,0xc0,0x74,0xc0,0x7b,0x25,0x5,0x20,0x4d,0x54,0x1c,0xab,0xab, + 0x1f,0x31,0xe5,0xad,0x11,0x74,0x48,0x4,0x9c,0xdf,0x1,0x0,0x7e,0x0,0x1,0xbe, + 0xfe,0x47,0x5b,0xd1,0xba,0xec,0xa7,0xcc,0x8,0x2c,0x7,0x80,0x58,0x4b,0xa3,0x5e, + 0xb9,0xa4,0x9d,0x37,0xd7,0x85,0x51,0x1b,0xe,0x22,0x1a,0xa,0x20,0x1c,0x72,0xe, + 0xba,0xb3,0x26,0x26,0xb2,0xf9,0xc3,0xee,0x91,0x64,0x1a,0xbd,0xfd,0x57,0x74,0x7c, + 0x78,0x34,0x5f,0xca,0x4b,0xf3,0x4b,0xc4,0x2f,0xbe,0xa0,0x7b,0x5e,0x79,0xf,0x80, + 0xe5,0x80,0xb7,0x3c,0x24,0xb2,0xe,0x78,0x59,0x51,0xd9,0x53,0x1d,0x1b,0xe5,0x79, + 0xc0,0x70,0x8,0xd4,0x38,0x4,0xfc,0x85,0x6c,0xb8,0x74,0xe3,0x22,0xde,0xbe,0x76, + 0x2b,0xc2,0x8d,0xdf,0x66,0x3c,0x74,0x27,0xc4,0x14,0x7f,0x35,0x50,0xd0,0xa4,0xb3, + 0xe7,0x90,0xbc,0xf6,0xbe,0x8e,0xf7,0xbc,0x87,0xcb,0x1f,0xf,0x3a,0xd1,0xc5,0x15, + 0xcb,0xf1,0xf3,0x34,0x0,0xbb,0x54,0xe3,0x73,0x3a,0xa9,0xf7,0x90,0x71,0x2d,0xe2, + 0x73,0xda,0x6,0x0,0x81,0xa6,0x5b,0x23,0x58,0x70,0xdb,0x42,0x11,0x6e,0x6a,0x25, + 0x23,0xd4,0x2,0x7f,0x4d,0x33,0x0,0x6,0x2b,0x33,0xcc,0xac,0xec,0x35,0x95,0x1a, + 0x19,0xc2,0xb5,0x2f,0xe3,0xb8,0x76,0x39,0xed,0x84,0x6e,0x6f,0xf8,0xce,0x38,0x1a, + 0xb7,0x69,0x6,0xa0,0xe6,0xf4,0x67,0xf,0xc7,0xcd,0x98,0x93,0x10,0x79,0x69,0x9a, + 0x77,0xc4,0x4d,0x94,0xca,0x23,0xda,0xf3,0xad,0xf3,0x6b,0x96,0xd9,0xe1,0xf8,0x37, + 0xce,0x9a,0x13,0x75,0x29,0xc,0xe8,0xbc,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44, + 0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/busy.png + 0x0,0x0,0xc,0x2f, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0x14,0xc3,0x0,0x0,0x14,0xc3,0x1, + 0x15,0x70,0x4d,0x42,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd8,0xc,0x11, + 0xa,0x34,0x21,0xe5,0x38,0x8f,0x66,0x0,0x0,0xb,0xaf,0x49,0x44,0x41,0x54,0x68, + 0xde,0xd5,0x9a,0x7b,0x8c,0x54,0xd7,0x7d,0xc7,0x3f,0xe7,0x9c,0x7b,0xef,0xcc,0xce, + 0x2e,0xec,0x3,0xd8,0x7,0x8f,0xe2,0x12,0xf3,0x6a,0x8a,0x3,0x36,0x75,0x9,0xd8, + 0x4d,0x63,0xc0,0x46,0x4e,0xab,0xda,0xb8,0x8a,0x2a,0xd7,0xaa,0x2c,0x5b,0x55,0xa5, + 0xf4,0x8f,0xaa,0x92,0x1b,0xb9,0x11,0xb5,0xd4,0xd6,0xa5,0x96,0x43,0xab,0x10,0xf5, + 0x2f,0x57,0x45,0x89,0xe4,0xe6,0xf,0x2b,0x1,0xc7,0x91,0x1b,0x87,0x3a,0x72,0x14, + 0x87,0x9a,0x46,0x16,0x10,0x87,0x60,0x1c,0x1b,0x8c,0x61,0x81,0xdd,0xf5,0xee,0xb2, + 0x3b,0xcc,0xce,0xde,0xc7,0x79,0xf4,0x8f,0x7b,0xef,0xee,0x9d,0x61,0x16,0x30,0xd0, + 0xd7,0x48,0xdf,0xb9,0x73,0x7e,0xe7,0x9e,0x7b,0xbe,0xdf,0xdf,0xf9,0x9d,0xe7,0x1d, + 0xf8,0x7f,0xfe,0x11,0xb7,0xf2,0x61,0x7b,0xfa,0x68,0xaf,0x85,0x2c,0x2b,0xb,0x16, + 0x6b,0x18,0x20,0x5,0xc0,0x45,0xf,0x2e,0x86,0x8e,0xb,0x1d,0x65,0xce,0x3d,0x35, + 0xcc,0xd4,0xff,0x19,0x1,0xcf,0x2e,0x60,0xb9,0x84,0x87,0x30,0x3c,0xc,0xdc,0xb, + 0xc8,0x6b,0x14,0xb1,0xc0,0x9b,0x28,0xe,0x58,0x78,0x79,0xd7,0x18,0x1f,0xfd,0xaf, + 0x8,0xd8,0xdd,0xc5,0x43,0x28,0x9e,0xc1,0xb0,0x1,0x60,0x63,0x80,0xd9,0xde,0xde, + 0xa6,0xdc,0xd2,0x95,0xd0,0xdd,0xf,0xf3,0x7b,0xa1,0x67,0x51,0x7a,0xf3,0xf8,0xc7, + 0x50,0x1d,0x81,0x4b,0x43,0x88,0xc1,0xf7,0xf9,0xf7,0xa9,0x69,0xf3,0x76,0x8c,0x2, + 0x40,0x71,0x14,0xc3,0xdf,0x7c,0x65,0x82,0x97,0xff,0x47,0x4,0xec,0xee,0x62,0xb, + 0xb0,0x7,0xd8,0x74,0x67,0x80,0x79,0xa0,0xaf,0x4f,0xb9,0xd,0xf,0x40,0xef,0xd2, + 0xf4,0x6,0x1d,0x1,0xa,0xac,0x4d,0x1,0x20,0x65,0xa,0xc,0x78,0xa5,0xd4,0x36, + 0x32,0x88,0x38,0xfa,0x3,0x7e,0x30,0x3c,0x6c,0x8e,0xa4,0x62,0xe,0x3,0x4f,0x7d, + 0x65,0x82,0x43,0xff,0x2d,0x2,0x9e,0xeb,0xa5,0xd3,0xc6,0xfc,0xb,0xf0,0xc8,0xa, + 0xf,0xf3,0xc5,0x35,0x6b,0x14,0x9b,0x76,0x66,0xa4,0x35,0xc4,0x9,0xc4,0xf1,0xf5, + 0x3d,0x2c,0x8,0x20,0xf0,0xc1,0xf3,0xd2,0xf4,0xe1,0xfd,0xbc,0x74,0xf2,0xa4,0x39, + 0xad,0x51,0xc0,0x77,0x64,0xc0,0x93,0x4f,0x8f,0x30,0x79,0xcb,0x4,0x3c,0xbb,0x80, + 0x95,0x9e,0xe1,0x55,0x9,0x9f,0xfa,0x8b,0x65,0xdd,0xd2,0x6d,0x7d,0x22,0xf5,0x64, + 0x18,0x42,0x18,0xdd,0x5c,0x27,0x2a,0x97,0xa0,0x5c,0x86,0x78,0x1a,0xf1,0xc6,0x37, + 0xf8,0xea,0xb9,0x4b,0xd6,0xc2,0x29,0xad,0xf8,0xc2,0xae,0x31,0xde,0xbf,0x69,0x1, + 0xcf,0x75,0xb1,0xcd,0xc2,0x77,0xfa,0x15,0xed,0x8f,0xdf,0xb7,0x43,0xb1,0xfc,0xce, + 0xd4,0xd3,0x61,0x34,0x1b,0x22,0x37,0xfa,0x29,0x86,0x58,0xa5,0xd,0xbc,0x32,0xbc, + 0x7f,0x98,0x7d,0xff,0xf1,0xba,0x19,0x31,0x4c,0x49,0x78,0xe4,0xe9,0x9,0x5e,0xbf, + 0x61,0x1,0x19,0xf9,0xd7,0x36,0xb6,0xc3,0xb6,0xed,0x8f,0x2b,0x16,0x2e,0x86,0xda, + 0x54,0x1a,0x32,0x37,0x4b,0xba,0xd5,0xc7,0x2b,0x41,0xa5,0x2,0xa3,0xe7,0x39,0x78, + 0xf0,0x9b,0xe6,0x48,0xc,0x12,0x76,0x5c,0x4d,0x84,0xb8,0x5a,0xd8,0x48,0xc3,0xdb, + 0x1b,0xdb,0x69,0xdf,0xf6,0xc8,0x9f,0x2b,0x3c,0xf,0x6a,0xe1,0x8d,0x79,0xfd,0x5a, + 0x65,0x6c,0x61,0xe4,0x95,0x12,0x3a,0x4a,0x10,0x27,0x1c,0xdc,0xbf,0xd7,0x1c,0x89, + 0x99,0xb2,0x8a,0x8d,0x73,0x85,0x93,0x9c,0xab,0xc3,0x7a,0x86,0x57,0xfb,0x15,0xed, + 0xdb,0xb6,0xfe,0x51,0x4a,0xbe,0x5a,0xff,0x64,0xe4,0xf3,0x51,0x68,0xae,0x32,0x56, + 0xce,0xa2,0xb9,0x5c,0x75,0x1a,0x3c,0xc5,0xfd,0xf7,0x3d,0xa6,0xfa,0x15,0xed,0x9e, + 0xe1,0xd5,0xe7,0x7a,0xe9,0x6c,0xf5,0x18,0xd5,0xca,0x78,0x9f,0xcf,0xbf,0x2a,0xd8, + 0xfc,0xa5,0xcf,0xed,0x50,0x2c,0x59,0x9,0xd5,0x49,0xd0,0x31,0x58,0x7d,0x7d,0xb8, + 0xe2,0xde,0x26,0x41,0x7a,0x8e,0x32,0x26,0x99,0x45,0x14,0x43,0xd7,0x22,0xd6,0x97, + 0xcb,0xf2,0xad,0xf3,0x1f,0x76,0x1b,0xc3,0xaa,0x1f,0x86,0xbc,0x74,0xcd,0x10,0xca, + 0xc6,0xf9,0x9f,0xfc,0xe5,0xf2,0x5,0xb8,0xed,0x7f,0x2,0xd5,0xd1,0x74,0xb4,0xb9, + 0xde,0xb0,0xb0,0xf2,0x13,0x86,0x93,0x37,0x77,0x7e,0xb9,0x4,0xf3,0x17,0x22,0x5e, + 0xf9,0x27,0xfe,0xbe,0x7a,0x19,0xe0,0x9e,0xe6,0x79,0xc2,0x6b,0xb5,0xa4,0x59,0xe1, + 0x61,0xdc,0xe7,0x1f,0x57,0xd4,0x2f,0x43,0x58,0x9b,0xbb,0x72,0x7d,0x13,0xb1,0x5e, + 0x7c,0x48,0xcb,0x72,0x1e,0xd4,0x34,0xc8,0x0,0xf7,0xe0,0x1f,0x73,0xdb,0xb7,0xff, + 0xd1,0x9c,0xd1,0xec,0x1,0x3e,0x3b,0x67,0x1f,0xd8,0xdd,0xc5,0x43,0xc0,0xa6,0x2f, + 0xae,0x59,0xa3,0x90,0x3e,0xd4,0xc6,0xd2,0xe6,0xce,0xd1,0x1c,0x6,0x14,0x90,0xe7, + 0x17,0xef,0xcf,0x11,0xc7,0x29,0x74,0x38,0x7,0x5a,0x94,0xc9,0xf3,0x26,0x86,0x1, + 0x8f,0x3f,0xe8,0xbd,0x4d,0x1,0x9b,0x32,0x8e,0x73,0x74,0x62,0xc5,0x33,0x77,0x6, + 0x18,0x36,0xed,0x4c,0x43,0x47,0x87,0x8d,0x24,0x73,0xc4,0xf1,0x95,0x15,0xa2,0xc1, + 0xc6,0x8d,0xf7,0xd9,0xb8,0xd1,0xd6,0x4a,0xd4,0x5c,0xc2,0xf2,0xbc,0x30,0x84,0xea, + 0xc7,0xf0,0xdb,0x7f,0xc8,0x1d,0x3e,0x6,0xc5,0x33,0x2d,0x5,0x3c,0xbb,0x80,0xe5, + 0x18,0x36,0x3c,0xd0,0xd7,0xa7,0xb0,0x16,0xea,0xe3,0x8d,0x1e,0xd,0xb,0x98,0xcb, + 0xd3,0xcd,0x28,0xb6,0x96,0x6e,0xd1,0x5a,0xcd,0xf9,0xd,0x65,0xb,0x4e,0x1a,0x1d, + 0x6,0x9b,0xf0,0x85,0xa0,0x53,0x61,0xd8,0xf0,0xec,0x2,0x96,0x5f,0x21,0x40,0x92, + 0x36,0x8d,0x5b,0xb7,0x15,0x6a,0x93,0xa9,0x17,0x8a,0xde,0xf3,0xa,0x1e,0x6d,0xf6, + 0x74,0x2b,0x34,0xb,0x69,0x6e,0x2d,0xae,0xd1,0x6a,0x36,0x6,0xf2,0xd6,0xa8,0x43, + 0x6d,0x12,0xf7,0x1b,0xbf,0xdb,0xc0,0xb5,0xb1,0x13,0x1b,0x1e,0xde,0x18,0x60,0xe8, + 0x5f,0xa1,0x18,0xf9,0x0,0x5c,0xda,0xb1,0x5e,0x1f,0xa9,0x51,0xab,0xcf,0xce,0x1, + 0x4e,0x8,0x9c,0x73,0x58,0x6b,0x11,0x22,0x1d,0xc4,0x9c,0x31,0x20,0xe5,0x6c,0xda, + 0xb9,0x96,0x79,0xcd,0xf6,0x72,0xa5,0x82,0x2c,0xe4,0x29,0xa5,0x90,0x32,0xf5,0xa9, + 0x10,0x82,0x40,0x4a,0xba,0x7b,0x17,0xb0,0xee,0xc2,0x70,0x1a,0x46,0x8b,0x57,0xb3, + 0x3e,0xc0,0x1c,0x8b,0x79,0x18,0xd8,0x3b,0x23,0x60,0x4f,0x1f,0xed,0x71,0xc4,0xbd, + 0xdb,0xdb,0x4a,0xd2,0x1,0x44,0x13,0x33,0xcb,0x85,0xa9,0xfa,0x34,0xb5,0x5a,0x8d, + 0xae,0xae,0x2e,0x4a,0xa5,0x12,0x25,0xd4,0xc,0x11,0xbf,0xec,0x23,0xa5,0x24,0x8a, + 0x22,0x30,0xcc,0xa6,0xeb,0x51,0xcb,0xbc,0x24,0x4c,0x1a,0xec,0xbe,0xf4,0x91,0xbe, + 0xc4,0x5a,0x4b,0x92,0x24,0x60,0x40,0x5,0x8a,0x50,0x6b,0xc2,0x30,0x64,0xac,0x56, + 0xc3,0xf3,0x3c,0x90,0x16,0xc6,0x47,0xa0,0x7f,0x15,0xf7,0x6b,0xd4,0x31,0xb8,0x77, + 0x4f,0x1f,0xed,0x4f,0xd,0x33,0xe5,0x1,0xd4,0x42,0x96,0x5,0x2,0xe9,0x96,0xae, + 0x84,0xfa,0x65,0x30,0x61,0x3a,0x43,0x64,0x5e,0x9f,0x37,0x6f,0x1e,0x72,0xd7,0x5f, + 0xb1,0xa0,0xbf,0x1f,0x25,0x15,0x20,0x10,0x2,0x84,0x14,0x20,0x4,0x1d,0x8,0x8c, + 0x31,0x33,0xe9,0x36,0x63,0x5b,0xe6,0x39,0xeb,0x1a,0xec,0x8,0x1,0xb8,0xac,0xb1, + 0x5d,0xd6,0x7a,0xd0,0x6e,0x34,0xd5,0x5f,0x1c,0x27,0xfe,0xfa,0xd7,0x31,0xc6,0x40, + 0x92,0x2d,0xd3,0xeb,0x97,0x91,0x8b,0x56,0xc0,0xf0,0x69,0x59,0xb,0x59,0x6,0x9c, + 0xf4,0x0,0xca,0x82,0xc5,0x16,0xa0,0xbd,0x37,0x8d,0xb7,0xc2,0x62,0xcd,0xe1,0x8, + 0xfc,0x80,0xee,0xee,0x6e,0x3a,0xe7,0x77,0x62,0xac,0x6,0x21,0x90,0x52,0xa2,0xa4, + 0x44,0x66,0x88,0xe2,0x78,0x26,0x9d,0x68,0xdd,0x32,0xcf,0x58,0xdb,0x60,0xf,0xfc, + 0x12,0x42,0xa4,0xa4,0x67,0xea,0x73,0x96,0x44,0x1b,0xa6,0x56,0xac,0x40,0x49,0x81, + 0xb5,0x16,0x5c,0x26,0x40,0x87,0xd0,0x39,0x0,0xc3,0xa7,0x29,0xb,0x16,0xcf,0x8, + 0xd0,0x30,0x20,0x21,0xdd,0x6,0xc6,0xd3,0x20,0x32,0x1,0x71,0x1a,0xe7,0x4a,0x8, + 0x94,0x52,0x18,0xa3,0x89,0xe2,0x30,0xb5,0x79,0xa,0xe7,0xf9,0x78,0x28,0xa4,0x14, + 0x24,0x49,0x34,0x93,0x2e,0xfe,0x2e,0xe6,0x69,0x9d,0x34,0xd8,0x4b,0xa5,0xa0,0x40, + 0xdc,0x65,0x73,0xa1,0xc5,0x5a,0x87,0x92,0x12,0xcf,0xf3,0xd2,0x51,0x26,0x77,0x68, + 0x18,0x41,0xcf,0xe2,0x7c,0xfa,0x1b,0x28,0x76,0xe2,0xf4,0xf4,0xa0,0xa7,0x1f,0x26, + 0xce,0xce,0x36,0x99,0x0,0x9c,0xc0,0x58,0x87,0xb3,0xe,0x63,0x2d,0x5a,0x6b,0xa4, + 0x4c,0x43,0xc8,0x88,0xd9,0x95,0x88,0x35,0x66,0x26,0x5d,0xfc,0x5d,0x4c,0x37,0xdb, + 0x1b,0xd6,0x34,0x99,0x3d,0xbf,0xe2,0x32,0x31,0x45,0x1,0xf5,0x2a,0x2c,0x9c,0x19, + 0x41,0x7,0xe6,0x5a,0x4a,0x34,0x84,0x90,0x75,0xa,0x63,0xd,0xc6,0x1a,0xac,0xb3, + 0x68,0xa3,0x51,0x28,0x84,0x31,0x14,0x5a,0x1e,0x53,0x48,0x9b,0x39,0xf2,0x6c,0x93, + 0xbd,0xf9,0xe3,0x66,0x62,0xc9,0x61,0xad,0x41,0x6b,0x9d,0xae,0x56,0xae,0xb2,0x55, + 0xcd,0x5,0x5c,0x4,0x60,0xf4,0x42,0xba,0x4f,0x75,0xb3,0xcb,0x60,0x29,0xfd,0xa6, + 0xe1,0x4d,0x62,0xad,0x43,0x63,0xf1,0x10,0x18,0x34,0xce,0x81,0x36,0xb3,0xe9,0xe2, + 0xef,0x62,0x5e,0xb3,0xdd,0x5a,0x8b,0x73,0xb9,0xd7,0x1d,0xce,0xe5,0x0,0x84,0x4c, + 0xeb,0x5,0xf0,0x2c,0x44,0x36,0xdd,0xb1,0x8d,0x8f,0x52,0xe4,0xec,0x65,0x5f,0x17, + 0x2d,0xc0,0xe8,0x10,0x2c,0xbd,0xd,0xa1,0x13,0x50,0x16,0x12,0xc0,0xb5,0x65,0xe3, + 0x34,0x94,0x82,0x12,0x42,0x48,0xa4,0x10,0x8,0x21,0x10,0x59,0x93,0x4b,0x29,0x91, + 0x15,0x35,0x93,0xf6,0xbc,0x52,0xcb,0x3c,0x97,0x45,0x65,0x6e,0x8f,0xa2,0x18,0x6b, + 0x5d,0x3a,0xa2,0x65,0x22,0x8c,0x99,0x15,0x92,0x1f,0x22,0x89,0x38,0x2,0x1,0xce, + 0x2b,0xc3,0xe0,0xa9,0xdc,0xf3,0xb3,0x2,0x42,0xc7,0x85,0x40,0x0,0xd5,0x21,0xf0, + 0x56,0x3,0x31,0x98,0x74,0xca,0x73,0xd6,0x50,0xaf,0xd7,0xe9,0x72,0x8e,0xd1,0xb1, + 0x31,0xc2,0xe9,0x69,0x2a,0x95,0xa,0xa5,0xa0,0xcc,0x74,0x58,0x47,0x49,0x45,0xa5, + 0x52,0x41,0x6b,0x33,0x93,0xe,0x82,0x52,0xcb,0xbc,0xb6,0x72,0xa5,0xc1,0x1e,0xc7, + 0x9a,0xb1,0xb1,0x51,0x9c,0x83,0x9e,0x9e,0x6e,0xb4,0xd6,0x4c,0x87,0xd3,0x94,0x82, + 0x12,0xbe,0xef,0x93,0x24,0x49,0x3a,0xa,0xe5,0x21,0xed,0x95,0x61,0xe4,0x2,0x39, + 0xe7,0x19,0x1,0x1d,0x65,0xce,0xc5,0x11,0x96,0xb3,0xbf,0x94,0x6c,0xde,0x9,0x31, + 0x20,0x35,0x38,0x8b,0x90,0x8a,0xb3,0x67,0xce,0x70,0xe9,0xb1,0x47,0x53,0xaf,0xb, + 0x81,0x4,0x8c,0x73,0x94,0x7c,0x1f,0xa4,0xc4,0x98,0x34,0x5e,0xf3,0x74,0x14,0x45, + 0x2d,0xf3,0xa2,0x24,0x69,0xb0,0xf7,0xf5,0xf5,0xe1,0x9c,0x63,0x72,0x72,0x92,0x53, + 0x61,0x98,0xb6,0x96,0xf0,0x48,0x74,0x84,0x31,0x86,0x5a,0xbd,0xce,0xba,0xb5,0x6b, + 0xd3,0x3e,0x20,0xcb,0xd0,0xd1,0x43,0x3c,0xf1,0x21,0x78,0xd8,0x8e,0x32,0xe7,0x98, + 0xcc,0x4,0x3c,0x35,0xcc,0xd4,0xee,0x2e,0xde,0x7c,0xcd,0xe3,0x9e,0x1d,0x28,0xe5, + 0xda,0xfb,0x10,0xb5,0xf4,0xc4,0xaf,0xb7,0xbb,0x8b,0xce,0x8e,0x4f,0xa3,0xb3,0x3e, + 0xa1,0x94,0x42,0x6b,0x8d,0x31,0x6,0xcf,0xf3,0x70,0xce,0x91,0x24,0x9,0x32,0x1b, + 0xf6,0x9c,0x73,0x73,0xe6,0x69,0xad,0x1b,0xec,0x49,0x14,0xe1,0x95,0x3c,0x7a,0xba, + 0xba,0xd0,0xd6,0xe2,0x79,0x1e,0x65,0xcf,0xc3,0x48,0x87,0xb0,0x82,0xb6,0xc0,0xa7, + 0xdc,0x56,0x81,0x8f,0x34,0xae,0x2d,0x3d,0xe5,0x3b,0xe8,0x63,0x70,0xfc,0x24,0x3f, + 0x5f,0xf5,0xa,0x4b,0xe9,0x3,0xc7,0x62,0x3e,0xb7,0x63,0xe8,0x1c,0x54,0x96,0xc2, + 0xa5,0x74,0xf,0xbd,0xf9,0xd2,0xb1,0x2b,0x37,0x2b,0x73,0x6d,0x5c,0x22,0x7b,0x7d, + 0xbb,0xb0,0xeb,0xbd,0xaf,0x68,0x5f,0xba,0xe,0x86,0x3e,0xe4,0xb8,0x43,0xa1,0x38, + 0x70,0xc5,0x6a,0xd4,0x92,0x9e,0x4d,0x8a,0xb7,0xe,0x40,0xef,0xed,0xb3,0xc3,0x69, + 0x12,0xa7,0x30,0x7a,0x16,0xce,0x36,0xa6,0x8d,0x86,0xa9,0xb8,0xf5,0xb2,0x38,0x2f, + 0x9b,0x3f,0x27,0x89,0xd3,0xf0,0xcc,0xd1,0xb0,0x2f,0x98,0x6b,0xbf,0x20,0xa1,0x77, + 0x39,0xe2,0xd0,0xfe,0x6,0xae,0xd,0x2,0x76,0x8d,0xf1,0x91,0x85,0x63,0xdf,0xd3, + 0x97,0xd,0xd6,0xe2,0xe6,0xaf,0x6,0x91,0x55,0xd6,0xf2,0xa1,0x4d,0x24,0x55,0x41, + 0x4c,0x91,0xac,0xbe,0x72,0x3,0xe4,0x92,0x64,0x16,0xca,0xcc,0xc0,0x98,0x2,0x9c, + 0x9b,0x81,0x1b,0x58,0xf,0xc0,0x77,0x83,0xc4,0x58,0x78,0x67,0xd7,0x18,0x43,0xad, + 0x76,0x64,0x41,0x35,0x62,0xcf,0xf1,0x4,0xc5,0xf,0xbf,0x5,0xcb,0x36,0x81,0xb, + 0x60,0xba,0x40,0xaa,0xd9,0xeb,0xb9,0x3d,0x27,0x25,0x32,0x28,0x83,0x33,0x29,0x9a, + 0xc9,0x24,0xce,0x35,0xee,0x1c,0xe2,0x59,0x58,0xae,0x84,0xf2,0x7d,0x58,0xb3,0x19, + 0x5e,0xdb,0xc7,0x9,0x87,0x1a,0x9d,0xe2,0x6b,0x40,0x1b,0xe0,0x17,0x5,0x48,0x20, + 0x78,0x7e,0x9a,0xd7,0x63,0xc7,0xd1,0x17,0xab,0x83,0xe9,0xfa,0x70,0xde,0x67,0x40, + 0x66,0xe4,0x4c,0x13,0x29,0x63,0x48,0x8c,0x21,0x69,0x41,0x2a,0x76,0x10,0xfb,0xe9, + 0x60,0x36,0x93,0xce,0xa0,0x9b,0xe1,0x5f,0x1d,0x6e,0xe0,0x6e,0xc0,0xe3,0x45,0x3d, + 0x6a,0x43,0xc7,0xcf,0xbe,0x96,0xf0,0x23,0xa0,0x94,0x41,0xe4,0x2,0xfc,0x1c,0xbf, + 0x9c,0xe4,0xf9,0x41,0x83,0x14,0x7,0xf6,0xc2,0xaa,0x2d,0x50,0x5e,0x8a,0xd,0x1a, + 0xc9,0xe5,0x95,0xdb,0x2,0x8a,0xa4,0x6c,0xee,0xd9,0x42,0xfa,0x46,0xd0,0xa6,0x16, + 0xc1,0x9a,0x7b,0xe1,0xdb,0x5f,0x65,0x10,0xe4,0xf1,0x49,0xf6,0x16,0xb9,0x2,0x5e, + 0x7e,0xb0,0x15,0xe4,0xaa,0x7e,0xe,0xe3,0xbf,0xe9,0xb1,0xf6,0x88,0x72,0xcb,0x37, + 0xc7,0x46,0xf0,0xe9,0xfb,0x91,0x67,0x7f,0x46,0xe8,0x69,0x8c,0x69,0xac,0x40,0xa7, + 0x27,0xfe,0x98,0x3c,0xed,0xa,0x69,0x75,0x73,0x98,0xa7,0x15,0x6e,0xcb,0x93,0xf0, + 0xee,0x61,0x9e,0xaf,0x9d,0x73,0x93,0x11,0x3f,0xfe,0x67,0xcd,0x8b,0x85,0x6a,0x35, + 0xa0,0x8b,0x2,0x82,0x4c,0x55,0x70,0x2e,0xe6,0xc8,0xba,0x12,0xdb,0x4e,0x4e,0xe, + 0x76,0xdc,0xd5,0xf3,0x29,0xc1,0xe2,0xf5,0x88,0x8b,0x47,0x89,0xfc,0xb4,0x84,0x51, + 0xcc,0x88,0x69,0x16,0x71,0x2b,0x50,0x4e,0xc0,0xdb,0xf8,0x24,0x54,0xc7,0x79,0xe1, + 0xc4,0xf7,0xed,0x84,0x65,0xe8,0x1b,0x35,0x9e,0xae,0x42,0x9d,0x74,0x81,0x93,0xe4, + 0x1,0xa1,0xa,0x47,0x8c,0x7e,0x36,0x2f,0xf8,0x13,0xe0,0xa6,0x22,0x8e,0x2c,0x2b, + 0xf1,0xe0,0xe4,0xe0,0xcf,0xd5,0xaa,0xd5,0xbf,0x25,0x64,0xcf,0x5a,0x4a,0x67,0x8f, + 0x51,0xf3,0xb2,0x8a,0x14,0x68,0x73,0xeb,0x48,0xe7,0xe8,0x31,0xe0,0x6f,0x78,0x2, + 0x4a,0x15,0x5e,0x79,0x73,0x9f,0x3d,0xe3,0x88,0x5e,0x9e,0xe4,0xcb,0xef,0xa5,0x6b, + 0x9f,0xb8,0x9,0xa1,0x2a,0x1c,0x31,0xaa,0xc,0x1e,0xa0,0xce,0x43,0xbd,0x23,0xe4, + 0x74,0x50,0x66,0xdb,0xf8,0xa9,0xff,0x74,0xab,0xfb,0xd7,0xa,0x56,0x6f,0xa7,0xfd, + 0xf4,0x2f,0xa8,0x7a,0x31,0x3a,0xb9,0xf5,0xe4,0x7,0x74,0x3b,0x62,0xcb,0x97,0xe0, + 0xf2,0x25,0x5e,0x79,0x73,0x9f,0x3d,0xe1,0xe0,0xd0,0x4,0x7f,0xfb,0x63,0x38,0xe, + 0x44,0xe9,0x31,0x5,0x51,0x1,0xd3,0xaa,0xf0,0xe6,0x50,0x16,0xa0,0x0,0xf1,0x1e, + 0xc,0xb5,0x87,0xbc,0xef,0x97,0xd9,0xf2,0xee,0x85,0xe3,0xea,0x2e,0xad,0x4,0x77, + 0xff,0x3e,0x1d,0xa3,0x55,0x92,0x64,0x98,0xd8,0x7,0xa7,0x6e,0x1e,0x6d,0xe,0x7a, + 0xe7,0xdd,0x1,0x9f,0x7d,0xc,0xde,0x3d,0xcc,0xb,0x27,0xbe,0x6f,0xcf,0x38,0xa2, + 0x43,0x13,0xfc,0xdd,0xbf,0xa5,0xef,0xce,0xa6,0x33,0x44,0xd9,0x35,0x4,0x6a,0x80, + 0x11,0x4d,0x7,0xbd,0x95,0x2,0xda,0xf2,0xeb,0x46,0xb8,0xfd,0x77,0x3a,0xd9,0x5d, + 0x16,0xc,0x7c,0xb9,0x8e,0x60,0xe7,0x9f,0xa5,0x25,0x8e,0x7e,0x8f,0x21,0x77,0x9a, + 0xba,0xbb,0xb1,0x77,0x1d,0x15,0x1,0xfd,0x62,0x5,0x6c,0x48,0xcf,0x7b,0xd8,0xbf, + 0x97,0xe7,0x2b,0xb8,0x50,0x33,0xf4,0x72,0x8d,0xbf,0x3e,0x6,0xa7,0xa,0xe4,0xeb, + 0x85,0x6b,0x35,0x13,0x73,0xc5,0xe9,0xb4,0x28,0x90,0x6f,0xc0,0x52,0x58,0xf0,0x68, + 0x1b,0x4f,0x77,0x95,0xb8,0x67,0x29,0xd8,0xc7,0xbc,0x85,0x92,0x1d,0x4f,0x80,0x4d, + 0xe0,0x83,0x9f,0x22,0x86,0xde,0xe1,0xbc,0xba,0x4c,0x5d,0x5d,0x83,0xb4,0x81,0x25, + 0x66,0x1e,0xae,0xff,0xe,0xb8,0xfd,0x6e,0x90,0x3e,0xbc,0xb6,0x8f,0x17,0xf5,0xa8, + 0x1d,0x4,0x39,0x1e,0xf2,0xd6,0xb7,0x42,0xfe,0xe1,0x2,0x8c,0x65,0x9e,0x9e,0x6e, + 0x42,0x35,0x8b,0xff,0xab,0xbe,0xa1,0x29,0x15,0xc8,0x97,0x8b,0x78,0x10,0xee,0x5a, + 0xdf,0xc1,0x9f,0x76,0x78,0xac,0xf9,0x35,0x81,0xfd,0xbd,0xd8,0x97,0x6e,0xcb,0x4e, + 0xe8,0xff,0xd5,0x74,0xd1,0x35,0x7e,0x1e,0x26,0x86,0xa0,0xf6,0x31,0x44,0xd9,0xc9, + 0x76,0xa9,0x3,0x3a,0x16,0x41,0x57,0x3f,0xf4,0x2c,0x49,0xdf,0xc2,0xc,0x7d,0x88, + 0x38,0xb4,0x9f,0xef,0x6,0x89,0x3d,0xe1,0x90,0x35,0xcd,0x7b,0x6f,0xd7,0x78,0xe1, + 0x20,0x1c,0x29,0xc4,0x7b,0x11,0x35,0x60,0x2a,0xb,0xf7,0xeb,0x7a,0x47,0x26,0x32, + 0xd2,0x6d,0x99,0xa0,0x72,0x76,0xd,0x80,0xd2,0xa3,0xb0,0xf5,0xf6,0x4e,0x9e,0x28, + 0xb,0x56,0x2,0xfc,0xba,0xc0,0xde,0x9f,0x20,0x83,0xf9,0xcb,0xa1,0x77,0x9,0x2c, + 0x5c,0x92,0x1e,0x12,0x0,0x8c,0xf,0xc1,0xe8,0x79,0x18,0x39,0x4f,0x5c,0xfd,0x88, + 0x83,0x3e,0xf6,0xb8,0x4b,0x57,0x1,0xa1,0xe6,0x83,0x93,0x35,0xbe,0xf9,0x12,0xbc, + 0x91,0x79,0x36,0x2a,0x5c,0xf3,0x16,0xa8,0xb5,0x38,0xcc,0xff,0x44,0xef,0x89,0xbd, + 0x4c,0x40,0xa5,0x69,0xce,0xf0,0x37,0xc1,0xaf,0xdc,0xa9,0xd8,0xda,0xd3,0xc6,0xe7, + 0x2b,0x1e,0x9f,0xb9,0x9e,0xbf,0x1a,0xd4,0x35,0xef,0x8c,0x4e,0xf3,0xa3,0x23,0x86, + 0x37,0x7e,0xa,0xe7,0xa,0x63,0x7b,0x92,0x91,0xaf,0x67,0xde,0x4e,0x9a,0x3d,0x7e, + 0x2b,0xfe,0x6a,0xe0,0x15,0x5a,0x24,0x9f,0x3b,0x3c,0x40,0xdd,0x6,0x1d,0xab,0x60, + 0x49,0x2f,0xf4,0x95,0x15,0xbd,0x15,0xc9,0x22,0x40,0xd4,0x2d,0x23,0xa1,0x61,0x74, + 0x8,0x86,0x3e,0x80,0xb,0x67,0x52,0x72,0xa6,0x38,0xa3,0x66,0xa4,0xc3,0x8c,0xf4, + 0x75,0xf,0xb,0x37,0xfb,0x67,0xf,0x91,0xa1,0x38,0xfc,0x36,0x23,0x1f,0xa6,0x4d, + 0xd3,0xa4,0x5d,0x9c,0xbc,0xdd,0x8d,0x12,0xf8,0x2f,0x76,0xdc,0xf5,0xd8,0xec,0x51, + 0x92,0x57,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/greenframe.png + 0x0,0x0,0x6,0xd3, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x44,0x0,0x0,0x0,0x44,0x8,0x6,0x0,0x0,0x0,0x38,0x13,0x93,0xb2, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0x16,0x25,0x0,0x0,0x16,0x25,0x1, + 0x49,0x52,0x24,0xf0,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xb, + 0xf,0xd,0x2a,0xc,0xd,0xea,0x30,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x43, + 0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x0,0x43,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x77, + 0x69,0x74,0x68,0x20,0x47,0x49,0x4d,0x50,0x57,0x81,0xe,0x17,0x0,0x0,0x6,0x2e, + 0x49,0x44,0x41,0x54,0x78,0xda,0xed,0x9c,0x3d,0x72,0x1b,0x47,0x10,0x85,0xbf,0x37, + 0x5a,0x9,0xc8,0x14,0x31,0x91,0xcb,0xba,0x80,0x22,0x5b,0x9,0x63,0x95,0x99,0xd9, + 0x97,0xe0,0xb5,0x5c,0x66,0x95,0x73,0xdf,0x80,0x3a,0x0,0x33,0x47,0xd2,0x1,0x5c, + 0x56,0xc4,0xc4,0xe5,0xc0,0x26,0x64,0x72,0x9f,0x83,0xf9,0xdd,0x25,0x40,0x0,0xb6, + 0x8,0x80,0x0,0xb6,0x24,0x16,0xa,0x58,0xec,0xcc,0xbc,0xe9,0xd7,0x7f,0xd3,0xd, + 0xbd,0xbe,0xf8,0xe,0x5b,0x1,0xf1,0x46,0x70,0x6a,0x38,0x11,0x74,0x98,0x1e,0xb1, + 0x91,0xcb,0x18,0x59,0xc4,0xf1,0x1c,0xdf,0xb3,0x90,0x1e,0x6d,0x40,0x10,0x1,0x7c, + 0x6b,0x73,0x2d,0x74,0x65,0xf9,0x83,0x4d,0xdf,0x25,0x30,0xce,0xb0,0xdf,0x82,0x3e, + 0x4b,0xcc,0xc,0x33,0x6d,0x8,0xc,0x0,0x21,0x2c,0x67,0x2c,0xe2,0x3b,0x8a,0xb3, + 0x7e,0xa4,0x1,0xc1,0x26,0x21,0xfe,0xd2,0xf0,0x3,0xf0,0x4a,0x70,0xd9,0x19,0xde, + 0xc8,0xbc,0x95,0xf4,0x87,0x8d,0x5,0x28,0xee,0x59,0x46,0x72,0x43,0x52,0x52,0x4, + 0x44,0x8,0xc7,0x59,0x3c,0xea,0x2e,0x34,0x83,0xf9,0x2f,0xa1,0x6f,0x2d,0x3e,0x75, + 0xb2,0x4f,0x91,0x3e,0xa7,0x4f,0x67,0x36,0x77,0x19,0xba,0x22,0xc5,0x1b,0x80,0x43, + 0x99,0x22,0xc2,0xc6,0xea,0x1f,0x89,0x32,0xed,0x1e,0x3b,0x8a,0x65,0x90,0x98,0x60, + 0x3e,0x3,0xa7,0x1d,0xd2,0x49,0x2,0x2,0xe4,0x3b,0xa3,0xbf,0x15,0x49,0x8d,0xd0, + 0x86,0x0,0x89,0xc8,0xbb,0xa1,0xd0,0x17,0x7,0x63,0x80,0x44,0x1c,0x3,0x59,0x36, + 0x53,0xc,0xd8,0x96,0x38,0xe9,0x10,0x1d,0x66,0x96,0xa6,0xa2,0x80,0x6d,0x71,0x23, + 0xc9,0x98,0xc4,0xed,0x35,0x26,0x38,0x1a,0x78,0x1d,0x44,0x1f,0x13,0x7c,0x27,0xbd, + 0xa1,0xa,0xbe,0x30,0x93,0x20,0x8a,0x92,0x30,0x74,0x9d,0xa8,0xd6,0xa4,0xf7,0x60, + 0x59,0x37,0xc6,0xfd,0x80,0x37,0xab,0x2c,0x50,0xb4,0x5b,0xbd,0xf5,0x6b,0x38,0xe5, + 0xb8,0x70,0x40,0x32,0x53,0x2b,0xeb,0x29,0x2b,0x71,0xa1,0xef,0x86,0x5f,0x6c,0x11, + 0x74,0xf,0xdc,0x0,0x7d,0xb1,0x86,0x91,0x4b,0xf7,0xd7,0x59,0x35,0x76,0x36,0xa2, + 0xbb,0x80,0x45,0x63,0x50,0x8c,0xca,0xe2,0x91,0x60,0x5a,0x2c,0xd,0x4a,0x1f,0xc5, + 0x79,0x77,0x43,0x28,0x95,0xd6,0xe7,0x64,0xfa,0xe8,0xc1,0x37,0x36,0x7d,0x65,0xf7, + 0xbc,0x51,0x15,0x7,0x6d,0xb1,0xde,0xa4,0x89,0x5a,0x8a,0x8a,0xd2,0x9a,0x8,0xa0, + 0x49,0x5e,0x5f,0xfc,0x67,0xdb,0xca,0xfa,0xbc,0x1,0x44,0xed,0xf7,0x55,0x36,0x1e, + 0x14,0x41,0x11,0xbd,0x5c,0x65,0x60,0xb1,0x52,0x49,0x42,0xb9,0x65,0x30,0xe4,0x42, + 0x8e,0xcc,0xe2,0x0,0x4c,0x2a,0x9f,0x93,0x6b,0x91,0x3e,0xcd,0xf7,0x76,0xcb,0xd5, + 0x81,0x41,0xb2,0xcc,0x2c,0x59,0xa1,0x28,0x3b,0x9e,0xcf,0xd4,0x3c,0x91,0xc6,0xe9, + 0xdc,0x9a,0x54,0xc8,0x98,0x2c,0x19,0xd2,0xf4,0xde,0x36,0x55,0x26,0xb8,0x4f,0x73, + 0xef,0x1e,0xd2,0x46,0x51,0x9f,0x2a,0x3,0x78,0x67,0x6b,0x46,0xa4,0x11,0x43,0xc7, + 0xe9,0xbe,0xd6,0xf5,0x16,0x29,0xa3,0x76,0x2a,0x71,0x7,0x27,0x55,0xd1,0x37,0xf3, + 0x92,0x46,0x3a,0xaf,0x7f,0x0,0x90,0x91,0x71,0x49,0x7c,0xeb,0xb1,0x6e,0x8c,0xfa, + 0xec,0xa7,0x2c,0x36,0x9c,0xdb,0xa3,0x8c,0xb,0x2b,0x1c,0x90,0x26,0x2d,0x41,0x98, + 0x33,0x67,0x83,0x82,0x57,0xa0,0xcc,0xe0,0x2b,0x48,0xc9,0x6c,0xf5,0x77,0x3d,0xb3, + 0xf0,0x6c,0x77,0x2c,0xc9,0x5c,0x53,0xdb,0x3,0x41,0x2f,0x3c,0xdc,0xdb,0x5,0xe4, + 0x8a,0x4e,0xab,0x58,0x11,0x10,0x47,0x3e,0x96,0x8d,0xf,0x32,0xbf,0x9f,0xbf,0x67, + 0xd7,0xaf,0xd7,0x17,0x67,0x85,0x3a,0x5a,0x89,0x68,0x26,0xac,0x1d,0xa6,0x23,0x42, + 0x8,0x3c,0x99,0x4b,0xab,0xf1,0x2b,0xdf,0xd6,0x7d,0xd9,0xa7,0x3f,0xc1,0x2b,0x12, + 0xa6,0xb8,0xa,0x81,0xe3,0xe5,0x36,0x47,0xd2,0x1d,0xe1,0x70,0x71,0x44,0xd1,0x11, + 0x10,0x28,0x61,0x7d,0xa4,0x4f,0xf0,0x9c,0x20,0xf5,0x20,0x5,0x25,0x59,0xa2,0xa0, + 0xe4,0xdd,0xee,0x84,0xbb,0xbd,0x25,0x15,0x22,0x2b,0xa7,0x12,0x9,0x25,0x5b,0x65, + 0x24,0x63,0xeb,0xe0,0x38,0xe3,0x98,0xd3,0xae,0xa9,0xf8,0x51,0xa8,0x73,0x90,0x66, + 0xc6,0x31,0xa3,0x8,0x9d,0x51,0x89,0x77,0x62,0x5c,0x7b,0x70,0xa8,0x28,0xc7,0x80, + 0x38,0x7b,0xaa,0x6a,0xdc,0xae,0x43,0x14,0x91,0x26,0x80,0xd,0x7,0xba,0xfe,0xb9, + 0x9,0x25,0xe9,0xe8,0xa9,0xe,0x88,0x63,0xd8,0x73,0x40,0xfe,0x83,0xb,0x11,0xf6, + 0x9c,0x7,0x11,0x14,0x1f,0x1,0xe1,0xeb,0x9f,0xce,0xaa,0xff,0x2d,0xaf,0x2c,0x4a, + 0x7b,0xb,0xc8,0x3b,0x35,0xc2,0xb1,0x14,0x8f,0x7c,0x80,0xe5,0xfd,0x5,0xe4,0xe7, + 0xf3,0xcb,0x72,0xc8,0xb0,0xc4,0x97,0x70,0x7b,0x94,0xbc,0xe7,0xd1,0x6e,0x93,0x3f, + 0xf4,0xc2,0x3b,0x94,0xca,0x73,0xe,0x1,0x90,0xe5,0xc9,0x54,0x8d,0x22,0xfd,0xa3, + 0xd9,0x1d,0x25,0x3f,0xe,0xc3,0xec,0xae,0x81,0x60,0xd8,0x6f,0x1,0x49,0xd6,0xc3, + 0xf,0x85,0xb9,0xb1,0x62,0x29,0x17,0x7,0xed,0xaf,0x1f,0xf2,0xcb,0x19,0x2a,0x2e, + 0x88,0x17,0xab,0x98,0x74,0x8f,0xd3,0xff,0xbd,0x5,0x44,0x7f,0x36,0x8b,0xd6,0xf2, + 0x2a,0x1f,0x27,0x79,0xda,0x5b,0x40,0x7e,0x3b,0xbf,0xac,0xb4,0xb0,0x1f,0xb2,0xca, + 0xb1,0x2a,0x54,0xf1,0x84,0x72,0xbf,0xcd,0xae,0x9a,0x3a,0x96,0x79,0xa0,0x94,0x32, + 0x98,0xa8,0x43,0xc,0x35,0xeb,0xbe,0xb7,0x7e,0xc8,0x4a,0x81,0x7f,0xce,0xa8,0x7a, + 0x98,0x20,0x3a,0xe8,0x63,0x88,0x64,0x95,0x42,0x1b,0x1d,0xeb,0x80,0x21,0x51,0xf1, + 0x54,0xdd,0xd6,0x1,0xc9,0x87,0x2c,0x25,0x0,0x41,0xd5,0xdd,0xd7,0xa1,0x1e,0x43, + 0xc,0x0,0x69,0xa,0x8d,0xec,0x23,0x1e,0x55,0xa9,0x1e,0xa5,0xe3,0x10,0xa2,0xdd, + 0x23,0x20,0xff,0x3f,0x4d,0x10,0xd6,0xba,0x7b,0x5f,0xcd,0xb2,0x92,0x7b,0xef,0x15, + 0x32,0x66,0xb1,0xf7,0x6d,0xe8,0xa9,0xb8,0xdf,0x3f,0x1,0xd1,0xaa,0x55,0x88,0xa9, + 0x26,0x8d,0x7a,0x1e,0x1e,0x73,0xd4,0x4f,0x66,0xa9,0x2b,0x78,0x56,0x6a,0xea,0xdf, + 0x3,0x4b,0x9,0x91,0xed,0x8f,0x9c,0xcf,0x37,0xac,0xdd,0xb7,0x47,0x5f,0xfd,0xf8, + 0x6e,0xd,0xd3,0xa9,0x52,0x72,0xda,0x35,0x2,0xb3,0x20,0x37,0xdd,0x3c,0x31,0xb6, + 0x25,0x3d,0x93,0xf4,0xe2,0xf5,0xc5,0xd9,0x6e,0xcb,0x46,0x2c,0xb5,0xc,0xb9,0x2e, + 0x6a,0x11,0x36,0xa9,0x92,0x5f,0x4a,0xe2,0xdf,0xb9,0xb0,0x67,0x89,0x80,0xc4,0x6e, + 0x80,0x20,0x98,0xac,0x79,0x3a,0xb8,0xd,0x34,0x52,0x5b,0x88,0x63,0xc9,0x87,0xda, + 0x4e,0x9f,0x86,0xfc,0xaa,0xdd,0x1e,0x59,0x1e,0xda,0x8e,0xaa,0xb9,0x44,0xa8,0x78, + 0x28,0x20,0x4f,0x4a,0xfb,0xde,0x4e,0x5b,0x8d,0xbc,0xc9,0xb1,0x59,0x45,0x55,0x52, + 0x46,0xed,0x6f,0x49,0x38,0x92,0x8f,0x2e,0x44,0x57,0x12,0xd3,0x4a,0x87,0x35,0x1e, + 0x46,0x35,0x29,0x4d,0x1b,0x10,0xd3,0x44,0x99,0x27,0x14,0xce,0xe7,0x96,0x85,0x7c, + 0x20,0x95,0x91,0x68,0xfb,0x3f,0x47,0x27,0x77,0x56,0xea,0x6c,0x89,0xe7,0x9b,0xf1, + 0xa3,0x66,0xe1,0x92,0x52,0x27,0xd2,0x53,0xd,0xe9,0xdb,0x5a,0xb1,0x18,0xbb,0x69, + 0xa4,0xa,0x14,0x5b,0x21,0xa2,0xe,0x69,0xd5,0xa6,0x53,0xad,0xb7,0x87,0xcf,0x9c, + 0xb4,0x4d,0x88,0x4f,0x2e,0xe2,0x69,0xea,0xd8,0xe3,0x56,0x3b,0x64,0x5a,0xa5,0x3e, + 0x41,0x15,0xc7,0xc,0xe8,0x5a,0x9a,0x38,0x59,0x92,0x58,0xdb,0x2b,0x9,0xa6,0xce, + 0xa,0x6a,0x87,0xb,0xd0,0x72,0x27,0x59,0x6e,0x80,0x1e,0x6c,0xdb,0x20,0xa7,0xaa, + 0x4c,0xa5,0x20,0xdd,0x97,0x15,0x25,0x9,0x9,0x6e,0x7c,0xb5,0xf4,0x27,0x82,0x51, + 0x14,0xd4,0xee,0x4b,0x46,0x68,0xf5,0xc6,0x48,0x99,0x54,0x6b,0x91,0xd7,0x19,0x1b, + 0xd7,0x9b,0x9a,0xdc,0x7c,0x7a,0x13,0x3a,0xdb,0xb7,0x4d,0xcf,0x6d,0x66,0xdb,0x44, + 0x6d,0x5f,0xdd,0xb0,0x61,0x9e,0x8d,0xb4,0x79,0xaf,0xfc,0xf4,0xd8,0x1c,0xd8,0x6b, + 0xfc,0x9a,0x9a,0x4f,0x1f,0x68,0x58,0xd7,0xc2,0x54,0x1c,0xd4,0x58,0x1f,0x49,0xb7, + 0x1d,0xe6,0x5a,0xe2,0x65,0xd2,0x21,0x1,0x3c,0x55,0x76,0x47,0x73,0x4f,0x73,0x6a, + 0xc2,0x4a,0x7d,0xb9,0xf1,0x71,0x46,0x6e,0xc5,0xf1,0x3e,0x48,0x56,0x6d,0x21,0xaf, + 0xcd,0xa2,0xb,0x40,0x71,0x8d,0xb1,0xe6,0x9d,0x2b,0xb9,0x25,0x80,0xc7,0x4a,0x33, + 0xfb,0x1,0x6a,0x5f,0xc7,0x79,0x2b,0xd7,0x66,0x37,0xf,0x4d,0xb4,0x32,0x16,0x16, + 0xcf,0xe2,0x12,0x25,0xe3,0xeb,0x4e,0xd2,0x95,0xf1,0xf7,0x89,0x26,0x93,0x1,0xa1, + 0x6a,0x2b,0xb4,0x2c,0xb9,0xb7,0x93,0xb8,0xa9,0xfe,0x6,0x47,0x26,0xd8,0xfc,0xb5, + 0x2a,0xdb,0xaf,0xa5,0xb4,0xab,0x8f,0xb2,0xb8,0xef,0x32,0xb8,0xf9,0x15,0xf,0x2d, + 0x44,0x73,0x38,0x77,0x37,0xd3,0x52,0x75,0x2e,0xd3,0x43,0xb3,0x2f,0x26,0x9,0xc9, + 0xe2,0x39,0x70,0xd5,0x21,0x3e,0x8,0xbd,0xb2,0xf9,0xc6,0xf8,0x9f,0x92,0x68,0x56, + 0xd3,0xf6,0x9e,0xeb,0xc0,0x55,0x7d,0xe0,0x1c,0x33,0xb5,0xe3,0x78,0xcc,0xd9,0x66, + 0xbb,0xfd,0x80,0x7c,0xb8,0xd1,0x1,0x40,0x6e,0x23,0x6f,0x2a,0x80,0xf2,0xdc,0xe3, + 0x67,0xe3,0xa3,0x93,0xc8,0x84,0xf2,0xc3,0x23,0x75,0x5c,0x9b,0x90,0xca,0x2d,0xfb, + 0xfc,0x5e,0xb1,0x21,0x45,0x67,0xa,0x78,0xe,0xfe,0x55,0xd6,0xc7,0xe,0xdc,0xdb, + 0x5c,0x2,0x9f,0x24,0x9d,0x62,0x4e,0xa2,0xb2,0x55,0xf3,0x93,0x3b,0x55,0xdc,0x35, + 0xfc,0xd5,0x93,0xc1,0x22,0xd5,0x44,0xc7,0x45,0x72,0x18,0x3a,0x79,0xb,0xc4,0xa8, + 0x16,0xfa,0xcc,0x61,0xdf,0x78,0x8c,0xf9,0x91,0x96,0x18,0x18,0x58,0x86,0x67,0xba, + 0x83,0xd7,0x55,0xf,0xdf,0x1a,0x5f,0x83,0xae,0x4,0x1f,0xc1,0xfd,0xbf,0xee,0x78, + 0xd,0x2f,0xfd,0x6a,0x6d,0xe1,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42, + 0x60,0x82, + // /home/maemo/tietoopcom/resources/contactmale.png + 0x0,0x0,0xf,0xd1, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x44,0x0,0x0,0x0,0x44,0x8,0x6,0x0,0x0,0x0,0x38,0x13,0x93,0xb2, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,0x1, + 0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xb, + 0xf,0xc,0x25,0x85,0xa9,0xc6,0xe0,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x43, + 0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x0,0x43,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x77, + 0x69,0x74,0x68,0x20,0x47,0x49,0x4d,0x50,0x57,0x81,0xe,0x17,0x0,0x0,0xf,0x2c, + 0x49,0x44,0x41,0x54,0x78,0xda,0xed,0x9a,0x59,0x8c,0x64,0xe7,0x55,0xc7,0xff,0xdf, + 0x76,0xb7,0x5a,0x7b,0xa9,0xae,0xee,0x9e,0xcd,0x9e,0x19,0xdb,0x93,0x19,0x3b,0x38, + 0x9e,0x38,0xb1,0x27,0x96,0x6c,0x29,0x52,0x12,0x12,0x45,0x2,0x41,0x90,0x40,0x41, + 0x11,0x12,0x81,0x37,0x44,0x80,0x7,0x24,0x24,0x92,0x7,0x5e,0x78,0x20,0xf,0xe4, + 0x1,0x21,0x96,0x87,0x3c,0x24,0x88,0x8,0x62,0x21,0x44,0x70,0x40,0x59,0x8,0x8e, + 0x92,0x90,0xc1,0xb1,0x3d,0x89,0xd7,0x59,0xec,0x59,0x7a,0xa6,0xab,0xab,0xba,0xea, + 0xd6,0xdd,0xbe,0xfb,0x2d,0x87,0x87,0xaa,0xe9,0x71,0x12,0x47,0x88,0x38,0x6e,0xbb, + 0x4d,0xff,0xa5,0x2b,0x75,0x2d,0x7d,0x4b,0xf7,0x77,0xcf,0xff,0x9c,0xf3,0x9d,0xef, + 0x2,0xfb,0xda,0xd7,0xbe,0xf6,0xb5,0xaf,0x7d,0xed,0x6b,0x5f,0xfb,0xda,0xd7,0x9b, + 0x51,0x6c,0x37,0x7f,0xec,0x33,0x9f,0xf9,0x95,0xf0,0x89,0xef,0xf9,0x56,0x2c,0x16, + 0xd7,0x2c,0x93,0x47,0x39,0x67,0xeb,0xce,0xf9,0x6,0xe3,0x60,0xe4,0x51,0x7a,0xb8, + 0x2b,0x75,0x55,0x5d,0x88,0xe3,0xfa,0xea,0x89,0x13,0x3a,0xfb,0xc4,0x27,0xbe,0xa8, + 0xdf,0xa2,0x40,0x22,0xf6,0x37,0x7f,0xf6,0xb,0xd1,0xc5,0x8b,0xc5,0x87,0x2a,0xb6, + 0xf8,0xbe,0xd2,0x45,0x27,0x88,0x85,0x3d,0xef,0x5d,0xc3,0x7b,0xcf,0x89,0xc0,0x0, + 0x72,0xde,0xa3,0x2,0xe9,0xcd,0x48,0x56,0x3f,0x58,0x6e,0xe6,0x5f,0x3a,0xd8,0x91, + 0x5f,0xfe,0xf8,0x1f,0xff,0x43,0x1,0x80,0xde,0x32,0x40,0x3e,0xfb,0x57,0x7f,0xca, + 0xcf,0x3d,0xf5,0xdd,0x55,0x29,0xe8,0x43,0xd6,0xa9,0x8f,0x55,0x46,0xde,0x5b,0xb9, + 0x20,0xf1,0xc4,0x99,0xf7,0x1e,0x44,0x4,0x80,0xc0,0x18,0x87,0x10,0x12,0xc,0x8e, + 0x42,0xa1,0xb,0xc9,0xca,0xb3,0x2,0xe6,0xb3,0xc6,0x89,0xc7,0x8e,0xdd,0x79,0xfa, + 0xda,0xef,0xfc,0xc1,0x1f,0xf9,0xdd,0x0,0x22,0x5f,0xef,0x1f,0x38,0x77,0xf6,0x1b, + 0xab,0x95,0xe7,0x1f,0xad,0x8d,0xfa,0x58,0x65,0xea,0xe3,0x61,0x1c,0x5,0xdd,0xee, + 0x2,0x84,0x54,0x70,0xce,0xef,0xdc,0x7c,0xc6,0x39,0xa4,0x90,0x30,0xd6,0xb0,0x74, + 0xb2,0xd5,0x98,0x4c,0xb2,0x77,0x4b,0xee,0x5b,0x81,0x30,0xdd,0xb,0x2f,0x7c,0xfb, + 0xef,0x0,0x5c,0xdd,0xd,0x20,0xe2,0xf5,0x3c,0xf9,0xdf,0xfe,0xc9,0x7b,0x93,0x2b, + 0x5b,0xf6,0xfd,0xd3,0x82,0x7f,0xbc,0xd0,0x74,0x8f,0x43,0x24,0xc3,0xb8,0x8d,0x24, + 0x8e,0xa1,0x94,0x82,0x94,0x1c,0x4a,0x49,0x30,0xc6,0xa1,0x6b,0x8b,0xa2,0xd0,0x98, + 0xa4,0x39,0x46,0xe3,0x1c,0x79,0xae,0xa5,0xf7,0xae,0x4f,0xde,0x2e,0x26,0xb2,0xbe, + 0xfe,0xf1,0x5f,0xbc,0xfd,0xfc,0x3f,0x7d,0xf5,0xa2,0xd9,0xb3,0x40,0xfe,0xe2,0xf, + 0xdf,0x1b,0xbe,0xbc,0x55,0x3e,0x9c,0x16,0xea,0xd7,0x47,0x53,0xff,0x2e,0xcf,0x92, + 0xa8,0xdd,0x59,0x40,0x9c,0xc4,0x0,0x8,0xd6,0x1a,0x58,0xeb,0x60,0x8c,0x41,0x96, + 0xe5,0x18,0x8d,0x46,0xd8,0x1a,0x6c,0x62,0x32,0xde,0x46,0x5d,0x55,0xf0,0xde,0x43, + 0xd7,0x8e,0x19,0x53,0x77,0x2,0xee,0x94,0xb7,0x7e,0xfc,0xfb,0xbf,0xf1,0xe0,0xf9, + 0xcf,0xff,0xcb,0x39,0xda,0x93,0x96,0x79,0xe2,0x45,0xdd,0x28,0x9c,0x7f,0xd0,0x78, + 0x77,0xc6,0xfa,0xa8,0x19,0xab,0x8,0x4a,0x29,0x70,0x46,0x30,0x66,0x76,0xa3,0x75, + 0x5d,0x23,0x9d,0x4c,0x91,0x67,0x29,0x40,0x15,0x1a,0x91,0xc5,0x52,0x93,0xe0,0x49, + 0x60,0x94,0x2,0x9b,0xa3,0x1a,0x64,0x4d,0xc3,0x19,0xbc,0xc7,0x18,0xf6,0x6c,0xf8, + 0xf4,0x95,0xaf,0x3,0xc8,0xf7,0x1c,0x90,0x4f,0x7e,0x12,0xfc,0x89,0x6f,0x8d,0x56, + 0xa6,0x55,0x7c,0x92,0x8,0xbd,0x28,0x89,0x18,0xab,0x34,0x86,0xa3,0x6d,0x70,0xce, + 0xc1,0xc0,0x0,0xe,0x14,0x79,0x81,0xd1,0x70,0xb,0xa1,0x28,0x71,0xd7,0xed,0x31, + 0xee,0x3d,0xfd,0x20,0xba,0xeb,0xf,0x20,0x4f,0xaf,0xe2,0xc5,0xa7,0x1e,0xc5,0x73, + 0xe7,0x3d,0x36,0x6,0x9e,0xd,0xc7,0xae,0x97,0x15,0xee,0x58,0x23,0x14,0x77,0x0, + 0xf8,0xde,0x9e,0x3,0x52,0x5f,0x3a,0x16,0x4a,0x11,0x3d,0xa0,0x2b,0x3a,0x91,0xe6, + 0xb9,0xe0,0xa9,0x3,0x30,0x2,0xcd,0x8b,0x9a,0xe0,0x1c,0x8c,0x31,0x38,0x6b,0x20, + 0x79,0x85,0x13,0x27,0x63,0xbc,0xff,0x97,0x3f,0x5,0x11,0xad,0xa2,0xd2,0x25,0x4, + 0x2d,0x63,0xf9,0xd4,0xed,0x10,0xdd,0xb3,0xe8,0x5f,0x78,0xc,0xff,0xf5,0xfd,0x89, + 0x1c,0xa6,0xee,0x6d,0x5b,0x13,0xf5,0x73,0x9f,0xfb,0xd4,0xdd,0xcf,0xfc,0xda,0xa7, + 0xce,0xbd,0x6e,0xfd,0x9,0x7f,0x3d,0x4e,0x1a,0xf0,0xb0,0xc7,0x21,0x1e,0xb2,0xd6, + 0x1c,0xc8,0xf3,0xc,0x64,0xc6,0xe8,0x84,0x29,0xfa,0xcd,0x29,0x7a,0x8d,0x29,0x12, + 0x31,0x2,0xea,0x4d,0xe8,0x62,0xb,0x92,0x55,0x78,0xdb,0x3d,0xf,0x23,0x69,0x2c, + 0x83,0x88,0xe0,0xbd,0x87,0x73,0xe,0xa6,0x36,0x98,0xd8,0x35,0xa0,0xf5,0xe,0x73, + 0x60,0x81,0x10,0x91,0x5d,0xd7,0xda,0xde,0x7d,0x61,0xe0,0x8f,0xed,0xb9,0x8,0x21, + 0x72,0xcb,0x70,0xf6,0x78,0x55,0x16,0xad,0x40,0x5a,0xdc,0xff,0xf6,0xc3,0x38,0xf3, + 0xe0,0x19,0xc4,0x71,0xc,0xef,0x9,0xd3,0xc2,0x62,0xe3,0xe5,0x67,0xf0,0xfc,0x73, + 0x3f,0x40,0x9a,0x5b,0x98,0x2a,0x83,0xb1,0x6,0xce,0x1,0xde,0x7b,0x58,0x6b,0xa1, + 0xb5,0x46,0x59,0x6a,0xd4,0x38,0xac,0x5a,0xc9,0x22,0x96,0x93,0xcb,0x4d,0x41,0x7e, + 0x65,0x63,0x68,0xbb,0x7f,0xfd,0xe9,0x77,0x8b,0xdf,0xfc,0xbd,0x6f,0xbb,0x3d,0x3, + 0x84,0x41,0xd6,0x8a,0xbb,0x26,0x39,0x2d,0xd6,0xba,0x1c,0xf,0x9d,0x79,0x4,0x67, + 0x3e,0xf8,0xbb,0x70,0xd6,0x0,0x20,0x78,0xf,0x94,0xe9,0x55,0x5c,0x7a,0xfe,0x3b, + 0xd8,0x4e,0x2d,0x16,0x96,0xf,0xc0,0x7a,0x9,0xe7,0x2c,0xac,0x35,0xa8,0x8d,0x41, + 0x59,0x69,0xe4,0x79,0x81,0xa2,0xf4,0xe8,0xb2,0x0,0xed,0xc0,0xb1,0x40,0x70,0x4, + 0x9c,0xe0,0xff,0x43,0xec,0xad,0x8,0x79,0xea,0x4a,0xf7,0xca,0x4a,0xbb,0xf0,0x7, + 0xdb,0x60,0x87,0xe,0xad,0xe2,0xe8,0x3d,0x1f,0x44,0x59,0x1a,0x58,0x6b,0x1,0x10, + 0x88,0x0,0x27,0x7a,0x58,0xbd,0xe3,0x3,0x58,0x32,0x1e,0xb5,0x31,0xa8,0x6b,0xbd, + 0x3,0xa3,0xd2,0x35,0xf2,0xa2,0x44,0x3a,0xcd,0x60,0xac,0xc0,0x9a,0x30,0xf0,0x11, + 0xa3,0xc5,0xb6,0xca,0xf,0x2d,0xb3,0xcb,0xbf,0xf5,0xe7,0xdf,0x74,0x7b,0xa,0x48, + 0xb7,0xc5,0x99,0x4a,0xd6,0x9e,0xbe,0xef,0xd4,0xf2,0xa9,0x43,0xf7,0xfd,0x52,0xe2, + 0xd5,0xa,0x2a,0x6d,0x77,0xca,0x2d,0x11,0xe0,0xc9,0xc3,0x5a,0x7,0x6b,0x2d,0x8c, + 0xb5,0x30,0xb6,0x86,0xae,0x6b,0x94,0x65,0x89,0x3c,0x2f,0x91,0x4e,0xb,0xa4,0xd3, + 0x1c,0x40,0x80,0x7c,0xf1,0x1,0xac,0xb7,0xdb,0x17,0x82,0x48,0x3c,0xc6,0xf8,0xd3, + 0x57,0xf7,0x5c,0xe,0x81,0xb9,0xa2,0x2e,0xe4,0xef,0xfb,0xce,0xc1,0xc3,0x87,0xde, + 0xb9,0x12,0xac,0x9d,0xaa,0xb4,0x16,0x8c,0x71,0x18,0x53,0xcf,0x93,0xc,0xe0,0x68, + 0x96,0x3c,0x6f,0xd9,0x44,0xa3,0xac,0x4a,0x4c,0xf3,0x12,0xe3,0x34,0xc3,0x78,0x92, + 0x23,0xcb,0x4a,0x48,0x61,0x31,0xaa,0x5a,0xa0,0xee,0x99,0xa7,0x65,0xd8,0x7c,0xe6, + 0x93,0x9f,0x7e,0xd4,0xef,0x39,0x20,0x8f,0x5e,0xf7,0xe9,0x3b,0xd6,0xf2,0xb,0xe4, + 0xeb,0x6f,0x6a,0x9d,0xb5,0xd3,0x74,0xfb,0x36,0xc6,0x66,0x9,0x93,0x88,0x0,0xa2, + 0x5b,0x40,0xac,0x41,0x6d,0x6b,0x14,0x65,0x85,0x34,0x2b,0x30,0xdc,0x4e,0xb1,0x39, + 0xd8,0xc6,0x78,0x3b,0x85,0xae,0xc,0x1c,0xd3,0xba,0x4a,0xfc,0x4b,0x2e,0xb1,0xcf, + 0x4a,0x5e,0x15,0x7b,0x72,0x71,0xb7,0xfd,0xdd,0x97,0x6a,0xf3,0xfe,0xfb,0xce,0x41, + 0x30,0x56,0xea,0x7c,0x65,0x6b,0xeb,0xfa,0x41,0x21,0x85,0x94,0x52,0x1,0x0,0xbc, + 0x73,0x70,0xe4,0xe0,0xac,0x43,0x6d,0x6a,0x94,0xba,0x46,0x96,0x15,0x18,0x8d,0xa7, + 0x18,0x6c,0x8d,0x71,0xe3,0xc6,0x8,0x93,0x49,0x6,0xef,0x1d,0x3c,0xab,0x37,0xaa, + 0xc2,0xfe,0xab,0x6d,0x54,0x5f,0xa1,0xb2,0xb5,0xbd,0x57,0x57,0xbb,0xfe,0x1b,0x8f, + 0x7d,0x71,0xe3,0x6d,0xf7,0xde,0x59,0xc,0x36,0xaf,0x3d,0x58,0x16,0xd5,0x7b,0xac, + 0x43,0xaf,0xd9,0xee,0x72,0xc9,0x39,0x3c,0x39,0x78,0xef,0x61,0xac,0x45,0x59,0x6a, + 0x4c,0x8b,0xa,0x93,0xf1,0x14,0xc3,0xd1,0x4,0x9b,0x83,0x6d,0x6c,0xd,0xc6,0xd0, + 0xba,0x82,0xe0,0x1e,0x9c,0xd5,0x37,0xaa,0x42,0x7f,0xdd,0xbc,0xf0,0xe8,0xd9,0xcf, + 0x7f,0xb,0xe5,0x9e,0x5e,0xed,0x9e,0x7d,0xfc,0x71,0xdf,0x5f,0x59,0x3d,0x54,0x55, + 0xf6,0xb6,0xb2,0xa6,0x85,0x4a,0xbb,0x30,0x2f,0x34,0xb2,0x2c,0xc7,0x34,0x2b,0xb0, + 0x3d,0xc9,0x30,0x1c,0xa5,0x18,0xc,0xb6,0x71,0x63,0x73,0x88,0xeb,0x37,0xb6,0xb0, + 0xb5,0x35,0x41,0x5e,0x54,0x60,0xe4,0x10,0x8,0x4d,0x81,0x70,0x67,0x39,0x8a,0x7f, + 0xfe,0xf2,0xe3,0x2f,0xbe,0xf4,0x56,0x98,0x87,0xb8,0x4b,0xe7,0x9f,0x3f,0xd7,0x5b, + 0xf7,0xff,0x39,0xad,0x6c,0x6f,0x30,0x1a,0xb7,0x95,0x4a,0x40,0xe0,0x60,0x44,0xb0, + 0xde,0xa1,0xaa,0x6a,0x14,0x45,0x89,0x34,0xcd,0x90,0xa6,0x39,0x74,0x6d,0xc0,0x18, + 0x87,0x94,0x7e,0xca,0x41,0xdf,0x97,0xcc,0x7d,0x25,0xe,0x96,0x77,0x5,0xc6,0x6e, + 0x0,0xf1,0xc3,0xe1,0xb,0x97,0x5a,0xbd,0xee,0xf7,0x6d,0xae,0x1f,0x2a,0x4d,0x76, + 0x97,0x10,0x4b,0xb0,0x46,0xc2,0xd4,0x6,0xc6,0xd6,0xa8,0xad,0x9d,0xfd,0x5d,0x1b, + 0x58,0xeb,0x21,0x4,0x47,0xa0,0x38,0x38,0x37,0x23,0xce,0xed,0xd7,0x42,0x9f,0x7e, + 0xb5,0xfb,0x6f,0x72,0xf8,0x96,0x0,0x72,0xb8,0x73,0xcf,0xc2,0xc2,0x81,0xf1,0xaa, + 0x91,0x9b,0xb,0x9c,0xeb,0xb0,0xd1,0x6a,0x61,0x79,0x61,0x11,0x55,0x11,0xe2,0xea, + 0xd5,0xeb,0xd8,0x1e,0xa7,0x28,0xcb,0xa,0xd6,0x5a,0x4,0x2a,0x44,0xbb,0xdd,0x46, + 0xab,0x1d,0x41,0xaa,0x12,0xb5,0x99,0x80,0xf9,0xd4,0x95,0x93,0xab,0xcd,0x27,0xfb, + 0x2f,0x1c,0x6e,0xdf,0x68,0x4f,0x52,0xa4,0xa3,0xbd,0x6,0x84,0x3d,0xfc,0xf0,0xc3, + 0xe2,0xe4,0xc9,0x93,0xad,0x83,0x2b,0xc7,0xfa,0x37,0x8a,0x97,0x8f,0x5f,0x1e,0x3c, + 0x7f,0x6a,0x2b,0xdb,0x7c,0x17,0xe3,0xd5,0xfa,0xc2,0xb2,0xc2,0xa9,0x3b,0xf,0x82, + 0xb9,0x45,0x24,0x71,0x0,0x47,0x16,0x93,0x34,0x83,0xb5,0xe,0xad,0x46,0x13,0xfd, + 0xfe,0xa,0x5a,0x6d,0x8e,0xa2,0xbe,0x84,0xf1,0x74,0xd2,0xf1,0x36,0x7f,0x40,0xa8, + 0x4e,0xb8,0x12,0x77,0x2e,0x2f,0x1d,0x3d,0x70,0x1e,0xc0,0xf9,0xba,0x6e,0x6c,0x9c, + 0x3d,0xfb,0xef,0x19,0x80,0x37,0xf7,0x5a,0xa6,0x8f,0x7e,0xe3,0x1d,0xef,0xbd,0xff, + 0xe4,0xa9,0x7b,0x8f,0x9f,0x38,0x7a,0xf2,0xc8,0xe1,0xfe,0x81,0x95,0xa5,0xde,0x24, + 0x5a,0x4f,0x5e,0x66,0x47,0xfc,0x79,0x7b,0x68,0x73,0xb0,0xb1,0x5c,0x54,0x43,0xa8, + 0x40,0xe3,0x40,0x6f,0x11,0x51,0x14,0xa2,0xb7,0xbc,0x84,0x2c,0x2f,0x0,0xe2,0x88, + 0xe3,0x18,0x71,0x12,0x20,0x2b,0xaf,0xe1,0xfc,0x95,0x14,0xa5,0xdd,0x6a,0x86,0xa1, + 0x7a,0x7b,0x6b,0x79,0x69,0x5d,0xc9,0x70,0xb,0x5e,0x5c,0x33,0xa5,0xb9,0x96,0xe, + 0xb2,0x8d,0xfb,0xef,0xbf,0xff,0xc5,0x74,0xb3,0x7e,0xe2,0xb9,0x97,0x9e,0xbc,0xf4, + 0x66,0x4,0xc2,0x4f,0x1f,0x3d,0xdd,0xea,0x1c,0xec,0xdc,0xb7,0xb0,0xde,0xf8,0x40, + 0xd4,0xd,0x1f,0xe,0x9b,0xea,0x58,0xd4,0xe,0xc2,0x5e,0xb2,0x20,0x11,0xde,0x26, + 0xd3,0x6a,0x2c,0x6,0xc3,0xeb,0xfc,0xf2,0xc6,0xcb,0x78,0xf6,0xfc,0xf7,0xa0,0x64, + 0x8c,0x66,0xab,0x87,0x3b,0xef,0xec,0xc3,0x39,0xf,0xc1,0x3,0x10,0x3c,0xa6,0xf9, + 0x8,0xa3,0x4b,0xd7,0x31,0x1c,0x5f,0x41,0x5e,0xa6,0x32,0x6e,0xf7,0x96,0xdb,0x2b, + 0xcd,0x45,0x15,0x44,0xc7,0x9d,0x81,0x2d,0xb6,0xb,0x1b,0x94,0x41,0x1a,0xd5,0xee, + 0x29,0x22,0x7a,0xf4,0x9d,0xf2,0x9d,0x5f,0xfa,0xee,0xf9,0xc6,0x6,0xf0,0x75,0xfb, + 0xa6,0x1,0xb2,0xba,0x7a,0x7c,0x49,0x2c,0x4,0x8f,0xb4,0x96,0xe3,0x9f,0x5f,0x38, + 0xd0,0x7c,0x77,0xab,0x1f,0xdf,0xb5,0xb0,0xda,0x16,0xed,0x6e,0x13,0xc4,0x8,0x61, + 0x23,0xc4,0x68,0xb2,0x8d,0x8b,0x2f,0x5f,0xc4,0xa5,0x97,0x5e,0xc2,0x93,0xcf,0x7c, + 0x7,0xd3,0x3c,0xc5,0xca,0xd2,0x21,0x34,0x93,0x5,0x70,0x21,0xc0,0x99,0x84,0xae, + 0x4b,0x6c,0x8d,0xae,0xe1,0xe2,0x95,0x67,0x30,0x18,0x5e,0x6,0x97,0x84,0x28,0x8e, + 0x59,0xdc,0x4a,0x84,0xa,0x2,0xe1,0x2c,0x29,0x2e,0x0,0xc6,0x59,0x8b,0x73,0x6a, + 0x79,0x78,0x55,0xd4,0x65,0x78,0xdb,0xfa,0xf5,0x2f,0x5f,0xba,0x86,0xe7,0xde,0x1c, + 0x40,0x3e,0xf2,0x11,0xb1,0xf6,0xe2,0xa5,0xe3,0xcd,0x4e,0xf2,0xe1,0xc6,0x62,0xf2, + 0xc1,0xee,0x5a,0x73,0xa9,0xbd,0x1a,0xa3,0xf4,0x5,0x6,0xa3,0x4d,0x8,0x21,0x1, + 0xc6,0xd0,0x6a,0x35,0xb1,0xba,0xb6,0x86,0xe1,0xf6,0x10,0x83,0xf1,0x35,0x8c,0xa7, + 0x43,0x34,0xe2,0x36,0x92,0xa8,0x35,0xfb,0xe,0x18,0x74,0x5d,0x20,0x2b,0x26,0x28, + 0xab,0x29,0x3c,0x39,0x74,0xdb,0x4b,0x48,0x92,0x6,0xe0,0x19,0x4c,0x65,0x61,0xbd, + 0x3,0x71,0x42,0xd4,0xd,0x40,0x68,0xb4,0x6b,0x6d,0x1f,0xaa,0xa6,0x5a,0x35,0x1a, + 0x72,0x70,0xfa,0xf4,0xe9,0xb,0x67,0xcf,0x9e,0xfd,0x99,0x4c,0xe4,0x5f,0x4b,0x63, + 0xc6,0xef,0x6e,0xb5,0x7a,0xbd,0xc5,0xd6,0x99,0x66,0x37,0xf9,0x70,0xff,0xc8,0xd2, + 0xd1,0xd5,0xdb,0x96,0x10,0xb6,0x2,0x18,0x53,0x23,0x2f,0xb,0xe4,0x65,0x86,0xbc, + 0xcc,0x50,0x99,0xa,0x1e,0x1e,0xc4,0x8,0xb5,0xa9,0x91,0xe5,0x53,0x64,0x79,0x8a, + 0x74,0x3a,0xc4,0x24,0x1d,0x62,0x3c,0xdd,0xc2,0x34,0xdb,0x86,0xb6,0x5,0x82,0x48, + 0x62,0x71,0x79,0x9,0x2b,0x2b,0x7d,0xb4,0xdb,0x5d,0x48,0x29,0xe1,0xbd,0x87,0xf7, + 0xb3,0x35,0x1d,0x13,0xc,0x60,0x80,0x37,0x5e,0xea,0xa2,0x6e,0x10,0xd1,0xe5,0x5a, + 0xd7,0x17,0x7,0x83,0x5e,0xe,0xc,0xdc,0x1b,0x16,0x21,0x6b,0x6b,0x6b,0x51,0xec, + 0xc5,0xd1,0x38,0x9,0xee,0xe9,0x2c,0x27,0xcb,0xcd,0xc5,0x6,0xb8,0xe4,0xd0,0x5a, + 0xc3,0xe8,0x59,0x4f,0x71,0x73,0x24,0x8,0x0,0x8d,0x66,0x8c,0xc3,0x87,0xf,0x21, + 0x50,0x1,0x5a,0xad,0x4d,0xe4,0x59,0x6,0xad,0x35,0xbc,0x23,0x30,0x6,0x8,0x21, + 0x10,0x4,0x1,0x1a,0xad,0x26,0x3a,0x9d,0x2e,0x9a,0xad,0x16,0xa4,0x54,0xb3,0x73, + 0xcc,0xcf,0xe3,0x3d,0x81,0x18,0x40,0x8c,0x20,0x63,0x1,0xd5,0x94,0x4d,0x5b,0x9b, + 0xbb,0x74,0xe9,0xef,0x59,0x6b,0xba,0xc9,0x46,0x86,0xad,0x37,0xc,0x48,0xec,0xe3, + 0x26,0x87,0xbb,0x8b,0x4b,0x7e,0x32,0x6a,0x85,0xdd,0xa4,0x15,0x82,0x71,0x36,0x1b, + 0xfd,0x15,0x15,0x88,0x66,0x17,0x9,0x22,0x10,0x0,0xc6,0x18,0x92,0x24,0x41,0x7f, + 0xb5,0x8f,0x66,0xab,0x9,0xad,0x2b,0x18,0x63,0x67,0xbb,0x77,0x44,0x60,0x8c,0x81, + 0x73,0xe,0xa9,0x14,0x94,0xa,0x20,0xa4,0x0,0x79,0x9a,0x41,0xf0,0x1e,0xce,0x79, + 0x58,0xe3,0x66,0x53,0x60,0x22,0x88,0x80,0x43,0x45,0x32,0xac,0x24,0x3b,0x6,0xe0, + 0x6e,0xa,0xf4,0x73,0xc0,0x1b,0x8,0xc4,0xeb,0x30,0xb6,0xb5,0xbd,0x83,0x81,0xee, + 0x68,0x74,0xa2,0x28,0x69,0x87,0x60,0x1c,0x28,0x26,0x5,0xa6,0x69,0x6,0xa5,0x2, + 0x34,0x5b,0x4d,0x70,0x21,0x60,0xad,0x85,0xbb,0x19,0x29,0x8d,0x4,0x49,0x12,0xcf, + 0xef,0x3a,0xed,0xd8,0xc1,0x3b,0xbf,0x33,0x60,0xb6,0xd6,0xc1,0x79,0x82,0x27,0xf, + 0xc2,0xc,0xa8,0xad,0x2d,0xaa,0x42,0x83,0x9,0x6,0x15,0x2a,0x88,0x50,0x20,0x6c, + 0x28,0x96,0x9,0x76,0xd0,0x39,0x77,0x82,0x9,0x5a,0x7c,0x43,0xa7,0xee,0x24,0x5c, + 0xc,0xc2,0x3a,0x13,0x6c,0xbd,0xd9,0x4e,0x64,0xa3,0x1d,0x81,0x73,0x86,0x3c,0xcb, + 0x31,0x1a,0x6e,0x23,0x9b,0x66,0xf0,0xde,0x83,0x31,0xb6,0x63,0x1d,0x22,0xda,0xb9, + 0xc0,0x9b,0x83,0xa2,0x9b,0x2f,0x8,0xb7,0x3e,0x23,0x60,0xc7,0x2a,0x44,0xc,0x44, + 0x80,0xd1,0x16,0x65,0x56,0xa2,0xca,0x35,0xbc,0xf7,0xb3,0x8,0x69,0x28,0xc6,0x15, + 0x5f,0x60,0x8c,0x1d,0xe2,0xc4,0xda,0x6f,0x24,0x10,0xd6,0x5e,0x8,0xbb,0x32,0x96, + 0x4b,0x61,0x12,0x84,0x61,0xa2,0xa0,0x42,0x5,0x30,0x86,0x3c,0x2f,0x30,0x1a,0x8e, + 0x90,0x65,0xb7,0x80,0xdc,0x9a,0xc6,0x13,0x9c,0xf5,0xb0,0x66,0xb6,0x7e,0xa9,0xeb, + 0x7a,0x76,0x18,0x3,0x63,0x2c,0x8c,0xb1,0xb3,0x68,0x72,0xb3,0xf1,0x0,0xf9,0x5b, + 0x88,0xac,0xb5,0xd0,0x65,0x8d,0x5a,0xd7,0xf0,0x9e,0xc0,0x38,0x83,0x90,0x1c,0x2a, + 0x54,0x92,0x7,0x7c,0x59,0xc6,0xa2,0xdf,0xeb,0xf5,0x9a,0x6f,0x8,0x90,0x7e,0xbf, + 0x9f,0x34,0x16,0x1a,0x6b,0xcd,0x85,0xb8,0x13,0xb7,0x22,0x30,0xc1,0xe1,0x3d,0xc1, + 0x39,0x87,0xa2,0x28,0x31,0x49,0x53,0x14,0x45,0x31,0x7,0x72,0xb,0xc6,0x4f,0x3c, + 0xfc,0xab,0xbd,0xef,0xe7,0xc7,0xec,0xb5,0x73,0xe,0xd6,0x58,0x58,0xe3,0xe6,0xf6, + 0x9a,0xc1,0xe2,0x1,0x87,0x8c,0x64,0x53,0xc5,0xf2,0x50,0x88,0x70,0xf5,0xb5,0x8e, + 0x34,0x7e,0x1a,0x20,0x22,0x8e,0xe3,0xe5,0xb0,0x29,0xf,0x26,0xed,0xa8,0x1d,0x37, + 0x23,0x70,0xc1,0x61,0x6a,0x8b,0xaa,0xd4,0xc8,0xf3,0x1c,0x45,0x9e,0x43,0xeb,0x7a, + 0x6e,0x93,0xd9,0x50,0x19,0x3f,0x76,0xc1,0xaf,0xf4,0xdf,0x2b,0xf,0x9a,0x7f,0x77, + 0xfe,0x7f,0xf3,0xf,0xbc,0xf3,0x30,0xda,0xc0,0x54,0x6,0xd6,0x18,0x38,0xeb,0xe0, + 0x9,0xe0,0x92,0x83,0x87,0x3c,0x84,0xa2,0x3e,0x7,0xef,0x3,0x8,0x77,0x1b,0x88, + 0x94,0x24,0xd7,0xb8,0x60,0x7,0xe3,0x24,0x6c,0x46,0x8d,0x10,0x5c,0x70,0xd4,0xb5, + 0x41,0x51,0x14,0xa8,0xca,0x6a,0xb6,0x9c,0x37,0xb3,0xc3,0x3a,0x37,0xcf,0x1d,0xaf, + 0x12,0x25,0x78,0xb5,0xc8,0xf8,0xf1,0xc7,0x85,0x3c,0x1,0xde,0x7a,0x98,0xda,0xce, + 0xa0,0x68,0xb,0x6b,0x2c,0x8,0x4,0x26,0x19,0xb8,0x62,0xa,0x8c,0x16,0xd,0x33, + 0xbd,0x16,0x5a,0xf1,0x2e,0x57,0x99,0x9e,0x22,0x26,0x56,0x18,0x67,0x6b,0x51,0x23, + 0x68,0xc4,0xad,0x19,0x10,0x6b,0x66,0x39,0xc1,0x5a,0x3b,0x1b,0xf,0xd6,0x6,0xba, + 0xd2,0x88,0x22,0x3b,0x4b,0x8e,0x3b,0x37,0xff,0x7f,0xb3,0xca,0x4d,0x20,0xf3,0xc8, + 0xf0,0x4,0xe7,0x3c,0x9c,0xf5,0x70,0x66,0x6,0xf7,0xa6,0x6d,0x0,0x82,0x50,0x1c, + 0x22,0xe0,0x8a,0x71,0x5a,0x72,0xde,0xf5,0x2c,0x6c,0xbc,0xcb,0x11,0x52,0x4b,0x67, + 0x6c,0x87,0x80,0xc5,0x20,0x9,0xa3,0xb8,0x19,0x82,0xb,0xb6,0x53,0x3a,0x6f,0x5a, + 0xa3,0xae,0x6b,0x14,0x79,0x89,0x5a,0xeb,0xf9,0x63,0x53,0x3f,0xe2,0xc,0xfc,0x84, + 0x7c,0xf2,0x23,0xef,0x7b,0xef,0xe1,0xea,0x59,0x44,0x78,0x37,0x6f,0xd2,0xe6,0x25, + 0x1b,0xc,0x90,0x1,0x87,0x8c,0x44,0x0,0xc6,0x96,0xac,0xb5,0x3d,0xf,0x1f,0xed, + 0x32,0x10,0x2f,0x9c,0xf3,0x4d,0x30,0x74,0x82,0x58,0x86,0x61,0x12,0x40,0x48,0xfe, + 0x43,0xed,0xb5,0x27,0x82,0xd6,0x1a,0x45,0x51,0xa0,0x36,0xf5,0xff,0xd1,0x32,0xaf, + 0x8c,0x1c,0xc0,0x59,0x3f,0x9f,0xa8,0xb9,0x59,0x5f,0xb2,0x93,0x70,0x67,0xe7,0xe4, + 0x4a,0x40,0x28,0x21,0xc1,0xb0,0x4c,0x60,0xaf,0x19,0xc8,0x4f,0x61,0x19,0x2f,0xe1, + 0xfd,0x22,0x18,0x2d,0x87,0x49,0xa8,0xe2,0x56,0x4,0xc6,0x19,0x6a,0x53,0x43,0x6, + 0x12,0x41,0x18,0x20,0x8,0x15,0x18,0x67,0x70,0x7e,0x56,0x42,0x67,0x7b,0x31,0x6c, + 0x27,0x61,0xee,0x24,0xce,0x1f,0x8b,0x1a,0xfc,0xb0,0x75,0x8,0xf0,0x8e,0x60,0x6b, + 0x7,0xef,0x1d,0xb8,0xe0,0x90,0x81,0x84,0x90,0x1c,0x4c,0x30,0x30,0xc1,0xc1,0x14, + 0x20,0x23,0x29,0x18,0x63,0x5d,0x22,0xea,0x13,0x68,0xb7,0x73,0x88,0x57,0x9e,0xfb, + 0x55,0xef,0x69,0x5d,0x2a,0x21,0x55,0x28,0xe1,0x3d,0x81,0xb,0xe,0x21,0x5,0xa2, + 0x24,0x42,0xb3,0xd5,0x80,0x92,0x1,0xa4,0x52,0x3b,0x8d,0xd9,0xab,0x55,0x99,0x9f, + 0x54,0x86,0x71,0x33,0x72,0x80,0x79,0xfb,0xee,0x67,0xf6,0x8,0x25,0x54,0xa8,0xc0, + 0x85,0x0,0x18,0xc0,0x38,0xc0,0x38,0x3,0x17,0xc,0x4,0x6a,0x7a,0xef,0x57,0x0, + 0xec,0x6e,0x84,0x74,0xc2,0xb6,0x92,0x52,0xac,0x1a,0x6d,0xdb,0xa3,0x8d,0x9,0x54, + 0x74,0xd,0xde,0x3,0x55,0x51,0x22,0x9b,0xe6,0x28,0xb6,0x6a,0x50,0x29,0xa0,0x5a, + 0x21,0x2,0x19,0x42,0xaa,0xd9,0x1d,0x25,0xf,0x30,0xcf,0xe7,0xb5,0x94,0xe1,0xe6, + 0xa6,0xf7,0x8f,0x82,0x1,0xc3,0xfc,0x62,0x19,0xf8,0x7c,0x75,0x4b,0x0,0xc8,0x11, + 0x6c,0xe9,0xe0,0xeb,0xa,0x9c,0x18,0xaa,0x4c,0x83,0xf3,0xf9,0x93,0x48,0xdb,0x25, + 0x4c,0x65,0x4,0x40,0x7d,0x21,0x44,0x64,0x9d,0xdd,0x45,0x20,0xfd,0xe,0x94,0xf4, + 0x94,0x4d,0x72,0x3c,0xf7,0xdf,0x17,0x71,0xe1,0x7,0x97,0x1,0x22,0x58,0xe7,0x60, + 0x6b,0x83,0x3c,0x2b,0x40,0xf0,0x90,0x7,0x22,0xd8,0x15,0x82,0xb7,0xb8,0xd5,0x92, + 0xcf,0x4b,0xc8,0x4e,0xfb,0xbe,0x63,0x1d,0xfa,0xa1,0x6e,0xf6,0x66,0xa5,0x21,0xa2, + 0x1d,0xcb,0xe8,0xa9,0xc6,0x74,0x33,0x43,0x5d,0xce,0xac,0xc9,0x25,0x7,0x63,0xf3, + 0xee,0xd7,0x38,0xe8,0xbc,0x6,0x18,0x48,0x46,0x12,0x3a,0xd7,0xbb,0x7,0xa4,0xdb, + 0x8d,0xf2,0xaa,0xaa,0xbe,0x99,0x4f,0x8b,0x38,0xdd,0xce,0x61,0x74,0xfd,0xa,0x37, + 0x1,0x8e,0xfc,0x5d,0x51,0x1c,0xde,0x11,0x88,0x12,0x37,0xc2,0x11,0x4c,0x65,0x91, + 0x74,0x23,0xa8,0x50,0x82,0x73,0xe,0x2e,0x67,0xe1,0x4e,0x34,0x6b,0xeb,0x45,0x20, + 0x20,0x20,0xe6,0x4f,0xd,0x11,0xa8,0x26,0x38,0x6b,0x61,0x6a,0x7,0x9d,0x6b,0xe4, + 0x93,0x2,0xe9,0xd6,0x14,0xe9,0x20,0x43,0x36,0x2c,0x50,0x4d,0xab,0x1b,0x0,0x9d, + 0x3,0x43,0xb9,0xd3,0xb8,0x31,0x6,0x21,0x38,0x20,0xf1,0xac,0xe2,0xea,0xc6,0xae, + 0x5a,0xc6,0x5a,0x3b,0x96,0x52,0xfe,0xa3,0xd6,0xfa,0x6b,0xc5,0xb8,0xc0,0x78,0x92, + 0x63,0xb6,0x63,0xab,0x0,0x5,0xb4,0x3b,0xf1,0xaf,0x5a,0x6b,0x7e,0x7b,0xbc,0x95, + 0x76,0xf2,0xa2,0xc0,0xe0,0x72,0x84,0xc6,0x42,0x82,0x46,0x37,0x46,0xd2,0x89,0x11, + 0x35,0x22,0x48,0x25,0xc0,0x38,0x20,0x94,0x84,0xc,0x25,0x98,0x60,0xf3,0xd5,0x6c, + 0xd,0x5d,0x68,0x18,0xad,0x91,0x4f,0x2b,0x4c,0x37,0xa7,0x98,0xc,0xa6,0xc8,0x27, + 0x5,0xaa,0xbc,0x86,0xa9,0xd,0x88,0xfb,0x6f,0x54,0x85,0xfd,0x4b,0x7,0x3f,0x5f, + 0xea,0x1b,0x28,0x28,0x28,0xa5,0x20,0x98,0xc8,0x55,0xa4,0x36,0x5e,0xd3,0xb6,0xc1, + 0xcf,0x7a,0x6a,0x7d,0xe4,0xc8,0x91,0x7,0xac,0xb5,0x1f,0x25,0x87,0x75,0x63,0x6d, + 0x5b,0x5,0x62,0x21,0x6c,0x4,0xad,0xa4,0x1d,0xc7,0x49,0x3b,0xa,0xc3,0x38,0x88, + 0x98,0xe0,0x11,0x63,0x50,0x52,0x49,0xc8,0x50,0x81,0x9,0xcc,0xc2,0xbe,0xac,0x51, + 0x97,0xb5,0xb7,0xc6,0x9a,0x2a,0xd7,0x75,0xbe,0x9d,0xe7,0xf9,0xa4,0x98,0xea,0xa2, + 0xce,0x8,0x98,0x80,0xb1,0x89,0x10,0xfc,0xef,0xc7,0xe3,0xf1,0xe7,0xf6,0xcc,0x46, + 0xd5,0xda,0xda,0xda,0x93,0x1b,0x1b,0x1b,0xe3,0xda,0xd7,0x3d,0x72,0xee,0x80,0xd1, + 0xfe,0x88,0x73,0x6e,0x4d,0x97,0xf5,0xc2,0x78,0x90,0xb6,0xa4,0xe0,0x6d,0x2,0x75, + 0x88,0xd0,0x1,0xb0,0x40,0x40,0xb,0x20,0xee,0xbd,0xf7,0x4,0x6c,0x81,0x30,0x24, + 0xe7,0x4a,0x6b,0x7d,0xee,0xad,0x1d,0x38,0xeb,0xaf,0x7b,0x4f,0x37,0x98,0x60,0x57, + 0x38,0x67,0x57,0xa4,0x94,0xcf,0xbe,0x9e,0x1b,0x55,0xaf,0xe7,0xc3,0xff,0xac,0xd9, + 0x6c,0x2e,0x29,0xa5,0xfa,0x64,0x68,0xd1,0x79,0xd7,0xb4,0xda,0x26,0x44,0x2c,0x21, + 0xb8,0x6,0x81,0x35,0x88,0xa8,0xc5,0x81,0xd8,0x13,0xd8,0xac,0x9d,0x63,0x29,0xc0, + 0x52,0xf,0xaf,0x1,0x54,0x52,0xb0,0x71,0xa0,0x82,0x31,0x9,0xda,0x4e,0x92,0x64, + 0xf0,0xc8,0x23,0x8f,0xc,0xbe,0xf0,0x85,0x2f,0x38,0xec,0x6b,0x5f,0xfb,0xda,0xd7, + 0xbe,0xf6,0xb5,0xaf,0x7d,0xed,0x6b,0x5f,0xff,0xef,0xf4,0x3f,0x19,0x39,0x12,0x4a, + 0xc4,0xcc,0xb5,0x57,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + + // /home/maemo/tietoopcom/resources/network.png + 0x0,0x0,0x15,0xc3, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x28,0x0,0x0,0x0,0x28,0x8,0x6,0x0,0x0,0x0,0x8c,0xfe,0xb8,0x6d, + 0x0,0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13, + 0x1,0x0,0x9a,0x9c,0x18,0x0,0x0,0xa,0x4d,0x69,0x43,0x43,0x50,0x50,0x68,0x6f, + 0x74,0x6f,0x73,0x68,0x6f,0x70,0x20,0x49,0x43,0x43,0x20,0x70,0x72,0x6f,0x66,0x69, + 0x6c,0x65,0x0,0x0,0x78,0xda,0x9d,0x53,0x77,0x58,0x93,0xf7,0x16,0x3e,0xdf,0xf7, + 0x65,0xf,0x56,0x42,0xd8,0xf0,0xb1,0x97,0x6c,0x81,0x0,0x22,0x23,0xac,0x8,0xc8, + 0x10,0x59,0xa2,0x10,0x92,0x0,0x61,0x84,0x10,0x12,0x40,0xc5,0x85,0x88,0xa,0x56, + 0x14,0x15,0x11,0x9c,0x48,0x55,0xc4,0x82,0xd5,0xa,0x48,0x9d,0x88,0xe2,0xa0,0x28, + 0xb8,0x67,0x41,0x8a,0x88,0x5a,0x8b,0x55,0x5c,0x38,0xee,0x1f,0xdc,0xa7,0xb5,0x7d, + 0x7a,0xef,0xed,0xed,0xfb,0xd7,0xfb,0xbc,0xe7,0x9c,0xe7,0xfc,0xce,0x79,0xcf,0xf, + 0x80,0x11,0x12,0x26,0x91,0xe6,0xa2,0x6a,0x0,0x39,0x52,0x85,0x3c,0x3a,0xd8,0x1f, + 0x8f,0x4f,0x48,0xc4,0xc9,0xbd,0x80,0x2,0x15,0x48,0xe0,0x4,0x20,0x10,0xe6,0xcb, + 0xc2,0x67,0x5,0xc5,0x0,0x0,0xf0,0x3,0x79,0x78,0x7e,0x74,0xb0,0x3f,0xfc,0x1, + 0xaf,0x6f,0x0,0x2,0x0,0x70,0xd5,0x2e,0x24,0x12,0xc7,0xe1,0xff,0x83,0xba,0x50, + 0x26,0x57,0x0,0x20,0x91,0x0,0xe0,0x22,0x12,0xe7,0xb,0x1,0x90,0x52,0x0,0xc8, + 0x2e,0x54,0xc8,0x14,0x0,0xc8,0x18,0x0,0xb0,0x53,0xb3,0x64,0xa,0x0,0x94,0x0, + 0x0,0x6c,0x79,0x7c,0x42,0x22,0x0,0xaa,0xd,0x0,0xec,0xf4,0x49,0x3e,0x5,0x0, + 0xd8,0xa9,0x93,0xdc,0x17,0x0,0xd8,0xa2,0x1c,0xa9,0x8,0x0,0x8d,0x1,0x0,0x99, + 0x28,0x47,0x24,0x2,0x40,0xbb,0x0,0x60,0x55,0x81,0x52,0x2c,0x2,0xc0,0xc2,0x0, + 0xa0,0xac,0x40,0x22,0x2e,0x4,0xc0,0xae,0x1,0x80,0x59,0xb6,0x32,0x47,0x2,0x80, + 0xbd,0x5,0x0,0x76,0x8e,0x58,0x90,0xf,0x40,0x60,0x0,0x80,0x99,0x42,0x2c,0xcc, + 0x0,0x20,0x38,0x2,0x0,0x43,0x1e,0x13,0xcd,0x3,0x20,0x4c,0x3,0xa0,0x30,0xd2, + 0xbf,0xe0,0xa9,0x5f,0x70,0x85,0xb8,0x48,0x1,0x0,0xc0,0xcb,0x95,0xcd,0x97,0x4b, + 0xd2,0x33,0x14,0xb8,0x95,0xd0,0x1a,0x77,0xf2,0xf0,0xe0,0xe2,0x21,0xe2,0xc2,0x6c, + 0xb1,0x42,0x61,0x17,0x29,0x10,0x66,0x9,0xe4,0x22,0x9c,0x97,0x9b,0x23,0x13,0x48, + 0xe7,0x3,0x4c,0xce,0xc,0x0,0x0,0x1a,0xf9,0xd1,0xc1,0xfe,0x38,0x3f,0x90,0xe7, + 0xe6,0xe4,0xe1,0xe6,0x66,0xe7,0x6c,0xef,0xf4,0xc5,0xa2,0xfe,0x6b,0xf0,0x6f,0x22, + 0x3e,0x21,0xf1,0xdf,0xfe,0xbc,0x8c,0x2,0x4,0x0,0x10,0x4e,0xcf,0xef,0xda,0x5f, + 0xe5,0xe5,0xd6,0x3,0x70,0xc7,0x1,0xb0,0x75,0xbf,0x6b,0xa9,0x5b,0x0,0xda,0x56, + 0x0,0x68,0xdf,0xf9,0x5d,0x33,0xdb,0x9,0xa0,0x5a,0xa,0xd0,0x7a,0xf9,0x8b,0x79, + 0x38,0xfc,0x40,0x1e,0x9e,0xa1,0x50,0xc8,0x3c,0x1d,0x1c,0xa,0xb,0xb,0xed,0x25, + 0x62,0xa1,0xbd,0x30,0xe3,0x8b,0x3e,0xff,0x33,0xe1,0x6f,0xe0,0x8b,0x7e,0xf6,0xfc, + 0x40,0x1e,0xfe,0xdb,0x7a,0xf0,0x0,0x71,0x9a,0x40,0x99,0xad,0xc0,0xa3,0x83,0xfd, + 0x71,0x61,0x6e,0x76,0xae,0x52,0x8e,0xe7,0xcb,0x4,0x42,0x31,0x6e,0xf7,0xe7,0x23, + 0xfe,0xc7,0x85,0x7f,0xfd,0x8e,0x29,0xd1,0xe2,0x34,0xb1,0x5c,0x2c,0x15,0x8a,0xf1, + 0x58,0x89,0xb8,0x50,0x22,0x4d,0xc7,0x79,0xb9,0x52,0x91,0x44,0x21,0xc9,0x95,0xe2, + 0x12,0xe9,0x7f,0x32,0xf1,0x1f,0x96,0xfd,0x9,0x93,0x77,0xd,0x0,0xac,0x86,0x4f, + 0xc0,0x4e,0xb6,0x7,0xb5,0xcb,0x6c,0xc0,0x7e,0xee,0x1,0x2,0x8b,0xe,0x58,0xd2, + 0x76,0x0,0x40,0x7e,0xf3,0x2d,0x8c,0x1a,0xb,0x91,0x0,0x10,0x67,0x34,0x32,0x79, + 0xf7,0x0,0x0,0x93,0xbf,0xf9,0x8f,0x40,0x2b,0x1,0x0,0xcd,0x97,0xa4,0xe3,0x0, + 0x0,0xbc,0xe8,0x18,0x5c,0xa8,0x94,0x17,0x4c,0xc6,0x8,0x0,0x0,0x44,0xa0,0x81, + 0x2a,0xb0,0x41,0x7,0xc,0xc1,0x14,0xac,0xc0,0xe,0x9c,0xc1,0x1d,0xbc,0xc0,0x17, + 0x2,0x61,0x6,0x44,0x40,0xc,0x24,0xc0,0x3c,0x10,0x42,0x6,0xe4,0x80,0x1c,0xa, + 0xa1,0x18,0x96,0x41,0x19,0x54,0xc0,0x3a,0xd8,0x4,0xb5,0xb0,0x3,0x1a,0xa0,0x11, + 0x9a,0xe1,0x10,0xb4,0xc1,0x31,0x38,0xd,0xe7,0xe0,0x12,0x5c,0x81,0xeb,0x70,0x17, + 0x6,0x60,0x18,0x9e,0xc2,0x18,0xbc,0x86,0x9,0x4,0x41,0xc8,0x8,0x13,0x61,0x21, + 0x3a,0x88,0x11,0x62,0x8e,0xd8,0x22,0xce,0x8,0x17,0x99,0x8e,0x4,0x22,0x61,0x48, + 0x34,0x92,0x80,0xa4,0x20,0xe9,0x88,0x14,0x51,0x22,0xc5,0xc8,0x72,0xa4,0x2,0xa9, + 0x42,0x6a,0x91,0x5d,0x48,0x23,0xf2,0x2d,0x72,0x14,0x39,0x8d,0x5c,0x40,0xfa,0x90, + 0xdb,0xc8,0x20,0x32,0x8a,0xfc,0x8a,0xbc,0x47,0x31,0x94,0x81,0xb2,0x51,0x3,0xd4, + 0x2,0x75,0x40,0xb9,0xa8,0x1f,0x1a,0x8a,0xc6,0xa0,0x73,0xd1,0x74,0x34,0xf,0x5d, + 0x80,0x96,0xa2,0x6b,0xd1,0x1a,0xb4,0x1e,0x3d,0x80,0xb6,0xa2,0xa7,0xd1,0x4b,0xe8, + 0x75,0x74,0x0,0x7d,0x8a,0x8e,0x63,0x80,0xd1,0x31,0xe,0x66,0x8c,0xd9,0x61,0x5c, + 0x8c,0x87,0x45,0x60,0x89,0x58,0x1a,0x26,0xc7,0x16,0x63,0xe5,0x58,0x35,0x56,0x8f, + 0x35,0x63,0x1d,0x58,0x37,0x76,0x15,0x1b,0xc0,0x9e,0x61,0xef,0x8,0x24,0x2,0x8b, + 0x80,0x13,0xec,0x8,0x5e,0x84,0x10,0xc2,0x6c,0x82,0x90,0x90,0x47,0x58,0x4c,0x58, + 0x43,0xa8,0x25,0xec,0x23,0xb4,0x12,0xba,0x8,0x57,0x9,0x83,0x84,0x31,0xc2,0x27, + 0x22,0x93,0xa8,0x4f,0xb4,0x25,0x7a,0x12,0xf9,0xc4,0x78,0x62,0x3a,0xb1,0x90,0x58, + 0x46,0xac,0x26,0xee,0x21,0x1e,0x21,0x9e,0x25,0x5e,0x27,0xe,0x13,0x5f,0x93,0x48, + 0x24,0xe,0xc9,0x92,0xe4,0x4e,0xa,0x21,0x25,0x90,0x32,0x49,0xb,0x49,0x6b,0x48, + 0xdb,0x48,0x2d,0xa4,0x53,0xa4,0x3e,0xd2,0x10,0x69,0x9c,0x4c,0x26,0xeb,0x90,0x6d, + 0xc9,0xde,0xe4,0x8,0xb2,0x80,0xac,0x20,0x97,0x91,0xb7,0x90,0xf,0x90,0x4f,0x92, + 0xfb,0xc9,0xc3,0xe4,0xb7,0x14,0x3a,0xc5,0x88,0xe2,0x4c,0x9,0xa2,0x24,0x52,0xa4, + 0x94,0x12,0x4a,0x35,0x65,0x3f,0xe5,0x4,0xa5,0x9f,0x32,0x42,0x99,0xa0,0xaa,0x51, + 0xcd,0xa9,0x9e,0xd4,0x8,0xaa,0x88,0x3a,0x9f,0x5a,0x49,0x6d,0xa0,0x76,0x50,0x2f, + 0x53,0x87,0xa9,0x13,0x34,0x75,0x9a,0x25,0xcd,0x9b,0x16,0x43,0xcb,0xa4,0x2d,0xa3, + 0xd5,0xd0,0x9a,0x69,0x67,0x69,0xf7,0x68,0x2f,0xe9,0x74,0xba,0x9,0xdd,0x83,0x1e, + 0x45,0x97,0xd0,0x97,0xd2,0x6b,0xe8,0x7,0xe9,0xe7,0xe9,0x83,0xf4,0x77,0xc,0xd, + 0x86,0xd,0x83,0xc7,0x48,0x62,0x28,0x19,0x6b,0x19,0x7b,0x19,0xa7,0x18,0xb7,0x19, + 0x2f,0x99,0x4c,0xa6,0x5,0xd3,0x97,0x99,0xc8,0x54,0x30,0xd7,0x32,0x1b,0x99,0x67, + 0x98,0xf,0x98,0x6f,0x55,0x58,0x2a,0xf6,0x2a,0x7c,0x15,0x91,0xca,0x12,0x95,0x3a, + 0x95,0x56,0x95,0x7e,0x95,0xe7,0xaa,0x54,0x55,0x73,0x55,0x3f,0xd5,0x79,0xaa,0xb, + 0x54,0xab,0x55,0xf,0xab,0x5e,0x56,0x7d,0xa6,0x46,0x55,0xb3,0x50,0xe3,0xa9,0x9, + 0xd4,0x16,0xab,0xd5,0xa9,0x1d,0x55,0xbb,0xa9,0x36,0xae,0xce,0x52,0x77,0x52,0x8f, + 0x50,0xcf,0x51,0x5f,0xa3,0xbe,0x5f,0xfd,0x82,0xfa,0x63,0xd,0xb2,0x86,0x85,0x46, + 0xa0,0x86,0x48,0xa3,0x54,0x63,0xb7,0xc6,0x19,0x8d,0x21,0x16,0xc6,0x32,0x65,0xf1, + 0x58,0x42,0xd6,0x72,0x56,0x3,0xeb,0x2c,0x6b,0x98,0x4d,0x62,0x5b,0xb2,0xf9,0xec, + 0x4c,0x76,0x5,0xfb,0x1b,0x76,0x2f,0x7b,0x4c,0x53,0x43,0x73,0xaa,0x66,0xac,0x66, + 0x91,0x66,0x9d,0xe6,0x71,0xcd,0x1,0xe,0xc6,0xb1,0xe0,0xf0,0x39,0xd9,0x9c,0x4a, + 0xce,0x21,0xce,0xd,0xce,0x7b,0x2d,0x3,0x2d,0x3f,0x2d,0xb1,0xd6,0x6a,0xad,0x66, + 0xad,0x7e,0xad,0x37,0xda,0x7a,0xda,0xbe,0xda,0x62,0xed,0x72,0xed,0x16,0xed,0xeb, + 0xda,0xef,0x75,0x70,0x9d,0x40,0x9d,0x2c,0x9d,0xf5,0x3a,0x6d,0x3a,0xf7,0x75,0x9, + 0xba,0x36,0xba,0x51,0xba,0x85,0xba,0xdb,0x75,0xcf,0xea,0x3e,0xd3,0x63,0xeb,0x79, + 0xe9,0x9,0xf5,0xca,0xf5,0xe,0xe9,0xdd,0xd1,0x47,0xf5,0x6d,0xf4,0xa3,0xf5,0x17, + 0xea,0xef,0xd6,0xef,0xd1,0x1f,0x37,0x30,0x34,0x8,0x36,0x90,0x19,0x6c,0x31,0x38, + 0x63,0xf0,0xcc,0x90,0x63,0xe8,0x6b,0x98,0x69,0xb8,0xd1,0xf0,0x84,0xe1,0xa8,0x11, + 0xcb,0x68,0xba,0x91,0xc4,0x68,0xa3,0xd1,0x49,0xa3,0x27,0xb8,0x26,0xee,0x87,0x67, + 0xe3,0x35,0x78,0x17,0x3e,0x66,0xac,0x6f,0x1c,0x62,0xac,0x34,0xde,0x65,0xdc,0x6b, + 0x3c,0x61,0x62,0x69,0x32,0xdb,0xa4,0xc4,0xa4,0xc5,0xe4,0xbe,0x29,0xcd,0x94,0x6b, + 0x9a,0x66,0xba,0xd1,0xb4,0xd3,0x74,0xcc,0xcc,0xc8,0x2c,0xdc,0xac,0xd8,0xac,0xc9, + 0xec,0x8e,0x39,0xd5,0x9c,0x6b,0x9e,0x61,0xbe,0xd9,0xbc,0xdb,0xfc,0x8d,0x85,0xa5, + 0x45,0x9c,0xc5,0x4a,0x8b,0x36,0x8b,0xc7,0x96,0xda,0x96,0x7c,0xcb,0x5,0x96,0x4d, + 0x96,0xf7,0xac,0x98,0x56,0x3e,0x56,0x79,0x56,0xf5,0x56,0xd7,0xac,0x49,0xd6,0x5c, + 0xeb,0x2c,0xeb,0x6d,0xd6,0x57,0x6c,0x50,0x1b,0x57,0x9b,0xc,0x9b,0x3a,0x9b,0xcb, + 0xb6,0xa8,0xad,0x9b,0xad,0xc4,0x76,0x9b,0x6d,0xdf,0x14,0xe2,0x14,0x8f,0x29,0xd2, + 0x29,0xf5,0x53,0x6e,0xda,0x31,0xec,0xfc,0xec,0xa,0xec,0x9a,0xec,0x6,0xed,0x39, + 0xf6,0x61,0xf6,0x25,0xf6,0x6d,0xf6,0xcf,0x1d,0xcc,0x1c,0x12,0x1d,0xd6,0x3b,0x74, + 0x3b,0x7c,0x72,0x74,0x75,0xcc,0x76,0x6c,0x70,0xbc,0xeb,0xa4,0xe1,0x34,0xc3,0xa9, + 0xc4,0xa9,0xc3,0xe9,0x57,0x67,0x1b,0x67,0xa1,0x73,0x9d,0xf3,0x35,0x17,0xa6,0x4b, + 0x90,0xcb,0x12,0x97,0x76,0x97,0x17,0x53,0x6d,0xa7,0x8a,0xa7,0x6e,0x9f,0x7a,0xcb, + 0x95,0xe5,0x1a,0xee,0xba,0xd2,0xb5,0xd3,0xf5,0xa3,0x9b,0xbb,0x9b,0xdc,0xad,0xd9, + 0x6d,0xd4,0xdd,0xcc,0x3d,0xc5,0x7d,0xab,0xfb,0x4d,0x2e,0x9b,0x1b,0xc9,0x5d,0xc3, + 0x3d,0xef,0x41,0xf4,0xf0,0xf7,0x58,0xe2,0x71,0xcc,0xe3,0x9d,0xa7,0x9b,0xa7,0xc2, + 0xf3,0x90,0xe7,0x2f,0x5e,0x76,0x5e,0x59,0x5e,0xfb,0xbd,0x1e,0x4f,0xb3,0x9c,0x26, + 0x9e,0xd6,0x30,0x6d,0xc8,0xdb,0xc4,0x5b,0xe0,0xbd,0xcb,0x7b,0x60,0x3a,0x3e,0x3d, + 0x65,0xfa,0xce,0xe9,0x3,0x3e,0xc6,0x3e,0x2,0x9f,0x7a,0x9f,0x87,0xbe,0xa6,0xbe, + 0x22,0xdf,0x3d,0xbe,0x23,0x7e,0xd6,0x7e,0x99,0x7e,0x7,0xfc,0x9e,0xfb,0x3b,0xfa, + 0xcb,0xfd,0x8f,0xf8,0xbf,0xe1,0x79,0xf2,0x16,0xf1,0x4e,0x5,0x60,0x1,0xc1,0x1, + 0xe5,0x1,0xbd,0x81,0x1a,0x81,0xb3,0x3,0x6b,0x3,0x1f,0x4,0x99,0x4,0xa5,0x7, + 0x35,0x5,0x8d,0x5,0xbb,0x6,0x2f,0xc,0x3e,0x15,0x42,0xc,0x9,0xd,0x59,0x1f, + 0x72,0x93,0x6f,0xc0,0x17,0xf2,0x1b,0xf9,0x63,0x33,0xdc,0x67,0x2c,0x9a,0xd1,0x15, + 0xca,0x8,0x9d,0x15,0x5a,0x1b,0xfa,0x30,0xcc,0x26,0x4c,0x1e,0xd6,0x11,0x8e,0x86, + 0xcf,0x8,0xdf,0x10,0x7e,0x6f,0xa6,0xf9,0x4c,0xe9,0xcc,0xb6,0x8,0x88,0xe0,0x47, + 0x6c,0x88,0xb8,0x1f,0x69,0x19,0x99,0x17,0xf9,0x7d,0x14,0x29,0x2a,0x32,0xaa,0x2e, + 0xea,0x51,0xb4,0x53,0x74,0x71,0x74,0xf7,0x2c,0xd6,0xac,0xe4,0x59,0xfb,0x67,0xbd, + 0x8e,0xf1,0x8f,0xa9,0x8c,0xb9,0x3b,0xdb,0x6a,0xb6,0x72,0x76,0x67,0xac,0x6a,0x6c, + 0x52,0x6c,0x63,0xec,0x9b,0xb8,0x80,0xb8,0xaa,0xb8,0x81,0x78,0x87,0xf8,0x45,0xf1, + 0x97,0x12,0x74,0x13,0x24,0x9,0xed,0x89,0xe4,0xc4,0xd8,0xc4,0x3d,0x89,0xe3,0x73, + 0x2,0xe7,0x6c,0x9a,0x33,0x9c,0xe4,0x9a,0x54,0x96,0x74,0x63,0xae,0xe5,0xdc,0xa2, + 0xb9,0x17,0xe6,0xe9,0xce,0xcb,0x9e,0x77,0x3c,0x59,0x35,0x59,0x90,0x7c,0x38,0x85, + 0x98,0x12,0x97,0xb2,0x3f,0xe5,0x83,0x20,0x42,0x50,0x2f,0x18,0x4f,0xe5,0xa7,0x6e, + 0x4d,0x1d,0x13,0xf2,0x84,0x9b,0x85,0x4f,0x45,0xbe,0xa2,0x8d,0xa2,0x51,0xb1,0xb7, + 0xb8,0x4a,0x3c,0x92,0xe6,0x9d,0x56,0x95,0xf6,0x38,0xdd,0x3b,0x7d,0x43,0xfa,0x68, + 0x86,0x4f,0x46,0x75,0xc6,0x33,0x9,0x4f,0x52,0x2b,0x79,0x91,0x19,0x92,0xb9,0x23, + 0xf3,0x4d,0x56,0x44,0xd6,0xde,0xac,0xcf,0xd9,0x71,0xd9,0x2d,0x39,0x94,0x9c,0x94, + 0x9c,0xa3,0x52,0xd,0x69,0x96,0xb4,0x2b,0xd7,0x30,0xb7,0x28,0xb7,0x4f,0x66,0x2b, + 0x2b,0x93,0xd,0xe4,0x79,0xe6,0x6d,0xca,0x1b,0x93,0x87,0xca,0xf7,0xe4,0x23,0xf9, + 0x73,0xf3,0xdb,0x15,0x6c,0x85,0x4c,0xd1,0xa3,0xb4,0x52,0xae,0x50,0xe,0x16,0x4c, + 0x2f,0xa8,0x2b,0x78,0x5b,0x18,0x5b,0x78,0xb8,0x48,0xbd,0x48,0x5a,0xd4,0x33,0xdf, + 0x66,0xfe,0xea,0xf9,0x23,0xb,0x82,0x16,0x7c,0xbd,0x90,0xb0,0x50,0xb8,0xb0,0xb3, + 0xd8,0xb8,0x78,0x59,0xf1,0xe0,0x22,0xbf,0x45,0xbb,0x16,0x23,0x8b,0x53,0x17,0x77, + 0x2e,0x31,0x5d,0x52,0xba,0x64,0x78,0x69,0xf0,0xd2,0x7d,0xcb,0x68,0xcb,0xb2,0x96, + 0xfd,0x50,0xe2,0x58,0x52,0x55,0xf2,0x6a,0x79,0xdc,0xf2,0x8e,0x52,0x83,0xd2,0xa5, + 0xa5,0x43,0x2b,0x82,0x57,0x34,0x95,0xa9,0x94,0xc9,0xcb,0x6e,0xae,0xf4,0x5a,0xb9, + 0x63,0x15,0x61,0x95,0x64,0x55,0xef,0x6a,0x97,0xd5,0x5b,0x56,0x7f,0x2a,0x17,0x95, + 0x5f,0xac,0x70,0xac,0xa8,0xae,0xf8,0xb0,0x46,0xb8,0xe6,0xe2,0x57,0x4e,0x5f,0xd5, + 0x7c,0xf5,0x79,0x6d,0xda,0xda,0xde,0x4a,0xb7,0xca,0xed,0xeb,0x48,0xeb,0xa4,0xeb, + 0x6e,0xac,0xf7,0x59,0xbf,0xaf,0x4a,0xbd,0x6a,0x41,0xd5,0xd0,0x86,0xf0,0xd,0xad, + 0x1b,0xf1,0x8d,0xe5,0x1b,0x5f,0x6d,0x4a,0xde,0x74,0xa1,0x7a,0x6a,0xf5,0x8e,0xcd, + 0xb4,0xcd,0xca,0xcd,0x3,0x35,0x61,0x35,0xed,0x5b,0xcc,0xb6,0xac,0xdb,0xf2,0xa1, + 0x36,0xa3,0xf6,0x7a,0x9d,0x7f,0x5d,0xcb,0x56,0xfd,0xad,0xab,0xb7,0xbe,0xd9,0x26, + 0xda,0xd6,0xbf,0xdd,0x77,0x7b,0xf3,0xe,0x83,0x1d,0x15,0x3b,0xde,0xef,0x94,0xec, + 0xbc,0xb5,0x2b,0x78,0x57,0x6b,0xbd,0x45,0x7d,0xf5,0x6e,0xd2,0xee,0x82,0xdd,0x8f, + 0x1a,0x62,0x1b,0xba,0xbf,0xe6,0x7e,0xdd,0xb8,0x47,0x77,0x4f,0xc5,0x9e,0x8f,0x7b, + 0xa5,0x7b,0x7,0xf6,0x45,0xef,0xeb,0x6a,0x74,0x6f,0x6c,0xdc,0xaf,0xbf,0xbf,0xb2, + 0x9,0x6d,0x52,0x36,0x8d,0x1e,0x48,0x3a,0x70,0xe5,0x9b,0x80,0x6f,0xda,0x9b,0xed, + 0x9a,0x77,0xb5,0x70,0x5a,0x2a,0xe,0xc2,0x41,0xe5,0xc1,0x27,0xdf,0xa6,0x7c,0x7b, + 0xe3,0x50,0xe8,0xa1,0xce,0xc3,0xdc,0xc3,0xcd,0xdf,0x99,0x7f,0xb7,0xf5,0x8,0xeb, + 0x48,0x79,0x2b,0xd2,0x3a,0xbf,0x75,0xac,0x2d,0xa3,0x6d,0xa0,0x3d,0xa1,0xbd,0xef, + 0xe8,0x8c,0xa3,0x9d,0x1d,0x5e,0x1d,0x47,0xbe,0xb7,0xff,0x7e,0xef,0x31,0xe3,0x63, + 0x75,0xc7,0x35,0x8f,0x57,0x9e,0xa0,0x9d,0x28,0x3d,0xf1,0xf9,0xe4,0x82,0x93,0xe3, + 0xa7,0x64,0xa7,0x9e,0x9d,0x4e,0x3f,0x3d,0xd4,0x99,0xdc,0x79,0xf7,0x4c,0xfc,0x99, + 0x6b,0x5d,0x51,0x5d,0xbd,0x67,0x43,0xcf,0x9e,0x3f,0x17,0x74,0xee,0x4c,0xb7,0x5f, + 0xf7,0xc9,0xf3,0xde,0xe7,0x8f,0x5d,0xf0,0xbc,0x70,0xf4,0x22,0xf7,0x62,0xdb,0x25, + 0xb7,0x4b,0xad,0x3d,0xae,0x3d,0x47,0x7e,0x70,0xfd,0xe1,0x48,0xaf,0x5b,0x6f,0xeb, + 0x65,0xf7,0xcb,0xed,0x57,0x3c,0xae,0x74,0xf4,0x4d,0xeb,0x3b,0xd1,0xef,0xd3,0x7f, + 0xfa,0x6a,0xc0,0xd5,0x73,0xd7,0xf8,0xd7,0x2e,0x5d,0x9f,0x79,0xbd,0xef,0xc6,0xec, + 0x1b,0xb7,0x6e,0x26,0xdd,0x1c,0xb8,0x25,0xba,0xf5,0xf8,0x76,0xf6,0xed,0x17,0x77, + 0xa,0xee,0x4c,0xdc,0x5d,0x7a,0x8f,0x78,0xaf,0xfc,0xbe,0xda,0xfd,0xea,0x7,0xfa, + 0xf,0xea,0x7f,0xb4,0xfe,0xb1,0x65,0xc0,0x6d,0xe0,0xf8,0x60,0xc0,0x60,0xcf,0xc3, + 0x59,0xf,0xef,0xe,0x9,0x87,0x9e,0xfe,0x94,0xff,0xd3,0x87,0xe1,0xd2,0x47,0xcc, + 0x47,0xd5,0x23,0x46,0x23,0x8d,0x8f,0x9d,0x1f,0x1f,0x1b,0xd,0x1a,0xbd,0xf2,0x64, + 0xce,0x93,0xe1,0xa7,0xb2,0xa7,0x13,0xcf,0xca,0x7e,0x56,0xff,0x79,0xeb,0x73,0xab, + 0xe7,0xdf,0xfd,0xe2,0xfb,0x4b,0xcf,0x58,0xfc,0xd8,0xf0,0xb,0xf9,0x8b,0xcf,0xbf, + 0xae,0x79,0xa9,0xf3,0x72,0xef,0xab,0xa9,0xaf,0x3a,0xc7,0x23,0xc7,0x1f,0xbc,0xce, + 0x79,0x3d,0xf1,0xa6,0xfc,0xad,0xce,0xdb,0x7d,0xef,0xb8,0xef,0xba,0xdf,0xc7,0xbd, + 0x1f,0x99,0x28,0xfc,0x40,0xfe,0x50,0xf3,0xd1,0xfa,0x63,0xc7,0xa7,0xd0,0x4f,0xf7, + 0x3e,0xe7,0x7c,0xfe,0xfc,0x2f,0xf7,0x84,0xf3,0xfb,0x25,0xd2,0x9f,0x33,0x0,0x0, + 0x0,0x4,0x67,0x41,0x4d,0x41,0x0,0x0,0xb1,0x8e,0x7c,0xfb,0x51,0x93,0x0,0x0, + 0x0,0x20,0x63,0x48,0x52,0x4d,0x0,0x0,0x7a,0x25,0x0,0x0,0x80,0x83,0x0,0x0, + 0xf9,0xff,0x0,0x0,0x80,0xe9,0x0,0x0,0x75,0x30,0x0,0x0,0xea,0x60,0x0,0x0, + 0x3a,0x98,0x0,0x0,0x17,0x6f,0x92,0x5f,0xc5,0x46,0x0,0x0,0xa,0xe0,0x49,0x44, + 0x41,0x54,0x78,0xda,0xec,0x98,0x7b,0x6c,0x5c,0xf5,0x95,0xc7,0x3f,0xf7,0xce,0xdb, + 0x33,0x9e,0x87,0xdf,0x76,0x70,0x66,0x1c,0xe2,0x18,0x93,0xd7,0x24,0x24,0xd,0x24, + 0x4a,0xd7,0x50,0x2a,0xa0,0x5,0xd9,0x8b,0xe8,0x6e,0x1f,0xb,0xb8,0xa4,0xca,0x2e, + 0xd1,0xae,0x64,0xd0,0x82,0xaa,0x82,0x1a,0xb7,0x2b,0x56,0xbb,0x4a,0xb,0x6e,0x17, + 0x50,0xb,0x2b,0x98,0x40,0x14,0xaa,0x4a,0xdd,0x84,0x57,0x4a,0xa,0x24,0x43,0xf3, + 0xc0,0xf1,0x6e,0x92,0x49,0xb0,0x13,0x6c,0x93,0xc4,0xe3,0x67,0xec,0xb1,0x9d,0xf1, + 0xcc,0x9d,0x99,0xfb,0xbe,0xfb,0x87,0x1d,0x6f,0x56,0x75,0x2,0x5b,0xed,0xae,0xfa, + 0x47,0x8e,0x74,0xa4,0xab,0xfb,0xd5,0xfd,0xfd,0xbe,0x3a,0xbf,0xdf,0xf9,0x9e,0x73, + 0xae,0x60,0x59,0x16,0x7f,0xca,0x26,0xf2,0x27,0x6e,0xd7,0x9,0x5e,0x27,0x78,0x9d, + 0xe0,0xe7,0x98,0x7d,0xa1,0x97,0xf,0x3c,0xf0,0x0,0x77,0xdd,0xb7,0x8d,0x62,0x9f, + 0x9b,0x62,0x9f,0x7,0x97,0xcb,0x8e,0xae,0x9b,0x78,0xdc,0x2e,0xde,0x7d,0xeb,0x95, + 0xb0,0xa6,0x69,0x6d,0x8a,0xa2,0x44,0x15,0x45,0x69,0x92,0x65,0x99,0x2b,0xbd,0x50, + 0x28,0xc4,0xb,0x85,0x42,0x42,0x51,0x94,0x8e,0xba,0x86,0xbb,0x92,0x9b,0x37,0x54, + 0x52,0x56,0x56,0xc6,0x81,0x3,0x7,0xd8,0xbd,0x7b,0xf7,0x35,0xc9,0xf4,0xf7,0xf7, + 0xf3,0xfc,0xf3,0xcf,0xe3,0x5f,0x39,0xc9,0xc8,0x51,0x17,0xa1,0x50,0x68,0x61,0x82, + 0xb2,0x2c,0x63,0x59,0x20,0x8a,0x22,0x36,0xdb,0xac,0x7f,0xb8,0x7f,0x77,0xd8,0x34, + 0xcd,0x76,0x51,0xb4,0xb7,0x2e,0xbb,0x69,0x5,0xee,0xa2,0x72,0x6e,0x6a,0x5c,0x89, + 0xa6,0x9b,0x68,0x9a,0x81,0xa2,0x18,0xc8,0xaa,0xce,0x67,0x7d,0xdd,0x4d,0xa7,0x13, + 0x47,0x9b,0x8e,0x77,0xfd,0xae,0xed,0x44,0xe7,0xaf,0x62,0x47,0xe3,0x72,0xfb,0x8e, + 0x1d,0x3b,0x92,0x0,0x86,0x1,0xd7,0x52,0x5d,0x73,0xe,0xd4,0x74,0xd,0x5d,0xb7, + 0xa1,0xeb,0xfa,0xc2,0x47,0x5c,0x28,0x14,0x28,0x14,0x34,0x72,0x79,0x8d,0x7c,0x5e, + 0xe5,0x77,0xfb,0x76,0x35,0x5b,0x96,0x95,0x28,0xad,0x58,0xda,0xba,0xf9,0x8e,0x6f, + 0x70,0xfb,0x57,0xbe,0xc6,0xda,0xb5,0x6b,0x28,0xf2,0x38,0x28,0xf2,0xd8,0x71,0xbb, + 0xec,0x1c,0x3f,0xd9,0x83,0x24,0x49,0xdc,0xb8,0x74,0x39,0x5f,0xbd,0xe7,0x21,0xb6, + 0x3c,0xda,0xc1,0xba,0x5b,0x5b,0x5a,0x15,0x45,0x49,0x6c,0xdd,0xba,0xb5,0x19,0x40, + 0xd6,0x20,0xa7,0xfc,0xa1,0x6f,0xd9,0xb6,0x2b,0x9c,0x53,0x40,0xd3,0x67,0xf7,0xd7, + 0x75,0xd,0x4d,0xd3,0xd0,0x75,0x1d,0x61,0xa1,0x4a,0xb2,0x69,0xd3,0x26,0xee,0x6e, + 0x7e,0x2,0xbf,0xdf,0xc3,0xc5,0x64,0xfc,0x61,0x51,0xb4,0xc7,0x1a,0x96,0x6f,0xc6, + 0x1f,0x28,0x61,0x6d,0x74,0x29,0x45,0x1e,0x7,0xbf,0xd9,0xf3,0x3e,0x1f,0x1e,0xf8, + 0x98,0xed,0x3f,0xfc,0x7b,0x64,0x45,0x67,0x26,0x93,0xe7,0xad,0x77,0xe,0xe3,0x70, + 0x38,0x59,0x77,0xcb,0x2a,0x32,0xd9,0x2,0xe9,0x74,0x8e,0xfe,0xde,0x1e,0x5e,0xfb, + 0xd7,0x27,0x51,0x94,0x5c,0xeb,0x44,0xda,0xda,0xa9,0x68,0xff,0x7d,0xaf,0xa7,0x9e, + 0xda,0x15,0x6,0x6,0x80,0x18,0xd0,0x16,0x74,0xff,0xfb,0x8c,0x50,0x77,0x9e,0x91, + 0x23,0x6e,0x4a,0x4a,0x4a,0x16,0x8e,0x60,0x3e,0x9f,0x27,0x39,0xd0,0xcb,0xc5,0x64, + 0xbc,0xd9,0xe1,0x70,0xc6,0xee,0xb9,0xf7,0x3b,0x2c,0xbf,0x79,0x19,0xd1,0x95,0x11, + 0xca,0x4a,0xbc,0xec,0xf8,0xe9,0xcb,0xfc,0xfc,0xf9,0x18,0x3d,0x67,0x7a,0x39,0x7c, + 0xf8,0x63,0x4,0x4c,0x86,0x87,0xc7,0xb9,0xbf,0xb9,0x9,0x4d,0x55,0x71,0x38,0x6c, + 0x38,0x9d,0x76,0x9c,0x4e,0x3b,0x35,0x37,0x2c,0xe5,0xaf,0xbe,0xf7,0x33,0x4,0x41, + 0x8c,0x55,0x4,0x85,0xe6,0x4b,0x39,0xb8,0xd2,0x81,0x8e,0xb9,0x6d,0x5b,0x81,0x78, + 0x5a,0x5e,0x1f,0x98,0x8d,0xa2,0x7e,0xed,0x23,0x2e,0xf,0xa4,0xc3,0xa6,0x69,0xc6, + 0xbe,0x7e,0xdf,0x37,0xa9,0x8b,0xd4,0x50,0x7f,0x63,0x35,0x35,0x55,0x21,0x7e,0xfc, + 0xcc,0x8b,0xbc,0xb3,0x2f,0xe,0x80,0xcf,0x5b,0x44,0x28,0x54,0x8c,0xcf,0xe7,0x66, + 0xd5,0xca,0x25,0xd8,0xed,0x22,0xab,0x57,0xd5,0x93,0x4a,0xa5,0xf0,0x17,0xbb,0xf1, + 0xf9,0xdc,0x38,0x1c,0x36,0x46,0x86,0xce,0x10,0x2c,0xa9,0x5,0x88,0xad,0x8a,0x8, + 0xe1,0xe9,0x2c,0x5c,0x76,0xa0,0x1d,0x48,0xcf,0x6d,0x1d,0x5,0xe2,0x97,0x9,0x6a, + 0x9a,0xb6,0x30,0x41,0x59,0x96,0xd1,0x75,0xbd,0x7d,0xe5,0xea,0x5b,0x83,0x15,0x95, + 0xd5,0x78,0xdc,0xe,0x5c,0x2e,0x1b,0x6f,0xfc,0xfa,0x5d,0xde,0x7e,0xf7,0x20,0x0, + 0xd,0xcb,0x22,0xfc,0xf2,0xc5,0x1f,0xe1,0x2f,0xe,0xf0,0x93,0x67,0x5f,0xc5,0x61, + 0xb7,0x11,0xc,0x78,0x8,0xf8,0xdd,0xd4,0x2f,0x9,0x52,0x57,0xa3,0xb3,0xb8,0x62, + 0x9a,0x70,0xe5,0x18,0x77,0xdf,0xb1,0x98,0xfb,0xff,0xfc,0x1e,0x56,0xac,0x58,0x1d, + 0xf4,0x78,0x3c,0xed,0x93,0x19,0x98,0xcc,0xc0,0x2b,0xff,0xb2,0xeb,0xb9,0xb9,0xe3, + 0x8d,0x8,0x2,0x89,0xb9,0x84,0x8c,0x66,0xfa,0xbe,0xf5,0x9c,0x61,0x18,0x57,0xbf, + 0x83,0x8f,0x3f,0xfe,0x78,0xd8,0x66,0x73,0xc,0x7c,0xe7,0xe1,0xbf,0x23,0x14,0xf4, + 0x51,0xec,0x75,0x90,0xcd,0x66,0xf9,0x5a,0xf3,0xdf,0x0,0x50,0xec,0xf3,0xf2,0xea, + 0xcb,0xff,0x40,0x51,0x91,0x87,0x2d,0x7f,0xfd,0x43,0xc6,0x2e,0xa6,0x78,0x3d,0xf6, + 0x2c,0xe1,0xda,0x6a,0x1c,0x76,0x9d,0xf,0xe,0xf6,0x70,0xaa,0x7b,0x8c,0xe4,0x50, + 0x1e,0x41,0x0,0x30,0x70,0x88,0x59,0x34,0xf9,0x3c,0x23,0x43,0x9f,0xa0,0xaa,0x6a, + 0x34,0xdc,0xf0,0xbd,0xe8,0xdc,0xbd,0x4b,0x0,0x4d,0x65,0x65,0xc5,0x11,0xaf,0xd7, + 0x1d,0x17,0x45,0x21,0xa8,0xeb,0x6,0x20,0x34,0xf5,0x9d,0x7e,0xe5,0xa3,0x5,0x23, + 0xa8,0xaa,0x6a,0x5b,0x64,0x49,0x23,0x9a,0x66,0x31,0x34,0x34,0xc1,0xc0,0x60,0x8a, + 0x1d,0xcf,0xed,0x9c,0xc7,0xbf,0xff,0xc4,0x16,0x16,0xd5,0x54,0xf0,0xd8,0x13,0xff, + 0xcc,0xd8,0xc5,0x14,0xf7,0xdc,0xf5,0x65,0xaa,0x2a,0x43,0xd8,0x6d,0x26,0x1d,0x2f, + 0x1e,0xe2,0x83,0x8f,0x86,0x11,0x6c,0x5e,0x56,0xae,0xac,0xa5,0xb1,0xf1,0x6,0x6a, + 0x6b,0x2b,0x71,0x15,0x55,0x81,0x73,0x2d,0xfe,0xd2,0xdb,0x48,0xa7,0xd3,0xf1,0xde, + 0x9e,0xbd,0xe9,0x39,0x72,0x51,0x20,0xa6,0x4b,0x7,0x4e,0x85,0xc3,0x65,0xed,0x75, + 0x75,0x15,0x44,0x22,0x15,0x54,0x57,0x7,0xdb,0x74,0x5d,0x5f,0x58,0x7,0x15,0x45, + 0x69,0x92,0xf2,0x36,0x8e,0x9f,0x3c,0x4b,0x74,0xe5,0x12,0xa,0x5,0x99,0x83,0xf1, + 0x8f,0x1,0xa8,0xa9,0x2e,0xa7,0xf9,0xbe,0xdb,0x79,0xe1,0x17,0xbf,0xa2,0xb7,0x6f, + 0x80,0x35,0xd1,0x9b,0x79,0xfa,0x7,0xdb,0xf0,0x15,0x39,0xd8,0xfe,0x8f,0xfb,0x30, + 0x4c,0x91,0x8d,0xb7,0xd5,0x53,0x5e,0xee,0xc3,0x61,0x17,0xb1,0x2c,0x28,0x14,0x34, + 0x52,0x93,0x59,0xce,0x9d,0x9f,0x60,0x54,0x68,0xa0,0xb4,0x6a,0x63,0xf0,0xc4,0xb1, + 0x37,0x3a,0x8a,0x3,0xb5,0x2d,0xb7,0xac,0xbf,0x33,0x2e,0x8,0xb4,0x98,0xe6,0x57, + 0x1f,0xfe,0x24,0xd5,0xfe,0xb3,0xbb,0x57,0x77,0xb4,0x19,0x86,0x19,0x91,0x15,0xbd, + 0xe5,0xdb,0x8f,0x3c,0x13,0xbe,0x9a,0x50,0x47,0x7d,0xfe,0x72,0xfc,0xc5,0x45,0x38, + 0x9d,0x76,0x12,0xa7,0x7a,0xe7,0xb1,0x6f,0x7f,0xf3,0x5e,0x34,0xcd,0x64,0xd7,0xee, + 0xb7,0x67,0x65,0xe2,0xfb,0x8f,0xe2,0x76,0xd9,0xd9,0xf3,0x76,0x2,0x29,0xa7,0xb3, + 0x69,0xe3,0x32,0x6e,0xaa,0x2f,0xa3,0xac,0xa4,0x8,0x51,0x14,0xc8,0x17,0x34,0xa4, + 0xbc,0x46,0x28,0xe4,0xa1,0xac,0xb4,0x88,0xb3,0x9f,0xba,0x30,0x8c,0x8d,0x9c,0xed, + 0xfe,0x7d,0xe4,0x83,0x7d,0x1d,0x4d,0x8f,0x6c,0x79,0xa4,0x4d,0x10,0x85,0x98,0x2c, + 0xeb,0x6d,0x9d,0xa3,0xca,0xce,0xf2,0x92,0xa2,0xe,0xc3,0x34,0x3b,0xf2,0x5,0xd, + 0x59,0xd1,0x5b,0xec,0x57,0xcb,0x62,0xa7,0xd3,0x49,0x79,0x59,0x0,0x8f,0xc7,0xc9, + 0xf0,0xf0,0xe8,0x3c,0xb6,0x7a,0x55,0x23,0x9d,0x5d,0xa7,0xc9,0x4a,0x79,0x96,0xde, + 0x18,0xa6,0xa2,0xbc,0x14,0x5d,0x53,0x38,0x7a,0x6c,0x80,0x48,0xa4,0x92,0xc5,0x37, + 0x4,0x58,0x12,0xe,0xe1,0x2d,0x72,0x50,0x90,0x75,0x4,0x1,0xc,0xc3,0x42,0xd3, + 0xc,0xbc,0x45,0x2e,0xc2,0x8b,0x4b,0xc9,0xe5,0x14,0xea,0x96,0x6e,0x64,0x6c,0xa4, + 0xa7,0xf5,0xbc,0xef,0xa7,0x6b,0xee,0x2c,0x7b,0xa6,0x23,0x5f,0xd0,0xa2,0x35,0x55, + 0xbf,0x8,0x97,0x96,0x78,0xe2,0x86,0x61,0xe1,0x72,0xaa,0x64,0x73,0x6a,0x54,0xbc, + 0x56,0xa9,0x13,0x4,0x11,0x51,0x10,0xc8,0xe7,0xb,0xf3,0x58,0x91,0xd7,0x4f,0x7a, + 0x46,0x9a,0x13,0xf4,0x5b,0xd0,0xd,0x93,0xb1,0xb1,0x9,0xa4,0x9c,0x46,0x30,0x58, + 0x84,0xc7,0xed,0xc0,0x3e,0x77,0xb4,0x82,0x0,0xa2,0x28,0x60,0xb3,0x9,0xd8,0x6d, + 0x22,0x76,0x87,0xd,0xa7,0xc3,0xc6,0xa2,0xea,0x0,0x8b,0x23,0x2b,0x1,0xa2,0x2f, + 0xbf,0xb5,0x97,0x70,0x6d,0x20,0x51,0x5d,0xe1,0x23,0xe0,0x77,0x45,0x46,0xa7,0x8e, + 0x9f,0xa,0x5,0xdc,0xf8,0xbc,0x4e,0x3c,0x6e,0x7b,0xc4,0x7e,0xad,0x52,0x27,0xcb, + 0x1a,0xaa,0x6a,0x90,0xcd,0xe6,0xe7,0xb1,0xe1,0x91,0x49,0xa6,0xa6,0x32,0xb3,0x35, + 0x53,0x35,0x38,0x77,0x61,0x84,0x4b,0x53,0x53,0x88,0xa2,0x8,0x8,0x28,0xaa,0x8e, + 0x94,0x53,0x71,0x39,0x6d,0xe8,0x86,0x89,0xa6,0x9b,0x18,0xa6,0xc5,0xbc,0x5a,0x8, + 0x2,0x82,0x28,0x50,0x55,0xb5,0x8,0x80,0xc6,0x86,0x1a,0xca,0x42,0x45,0x69,0x43, + 0xb7,0xd0,0x74,0x83,0xac,0x2,0x6e,0xb7,0x1d,0x67,0x5e,0xc4,0x6e,0x17,0xaf,0xae, + 0x83,0x99,0x6c,0x81,0x99,0x6c,0x81,0x7c,0x41,0x25,0x14,0xa,0xce,0x63,0xa3,0xa3, + 0x13,0x64,0x73,0x2a,0x0,0xe7,0x2f,0xc,0x51,0x5e,0x1a,0xc4,0x34,0xf2,0x18,0x86, + 0x41,0x2e,0x27,0x93,0x95,0x54,0x32,0x59,0x85,0x4c,0x56,0x21,0x97,0xd3,0x90,0x65, + 0x1d,0x55,0x35,0xd0,0x74,0x13,0x5d,0x33,0x31,0x74,0x3,0xd3,0xb0,0xd0,0x94,0xf4, + 0xfc,0x9a,0x52,0x5e,0xd,0xca,0x8a,0x8e,0xaa,0x99,0x73,0x2a,0x62,0xa0,0x1b,0x26, + 0x86,0x61,0x5e,0xb5,0xd4,0xc5,0x93,0x3,0xbd,0x8c,0x8e,0x4e,0x23,0xe5,0x15,0x8a, + 0xfd,0xfe,0x79,0xac,0xb7,0xff,0x2,0xa5,0xa5,0x65,0x0,0x74,0x1e,0x3b,0xc1,0x74, + 0xba,0x80,0xa6,0x66,0xb0,0x89,0x3a,0xa9,0x54,0x86,0xf1,0x94,0x44,0x26,0xab,0x30, + 0x93,0x55,0xc8,0x4a,0x2a,0xb9,0xfc,0x2c,0x49,0x45,0xd1,0x29,0xc8,0x2a,0x8a,0xaa, + 0xa3,0xe9,0x6,0x83,0xc9,0x3e,0xe6,0x64,0x86,0xc1,0x91,0x99,0xe8,0xf8,0x64,0x8e, + 0xac,0xa4,0xe,0x2c,0xae,0x58,0xbf,0x3a,0x9d,0x91,0x91,0x72,0x1a,0xb2,0x62,0xc, + 0x5c,0xad,0xd4,0x25,0xce,0xf5,0x27,0x18,0x19,0x9b,0x66,0x72,0x4a,0x62,0xd1,0xa2, + 0xda,0x79,0xac,0xab,0xeb,0x24,0xaa,0x66,0xb1,0x62,0xc5,0x72,0x0,0x9e,0xed,0x78, + 0x85,0xd4,0x94,0x4a,0xc0,0x97,0x67,0x7c,0x7c,0x86,0xa1,0xa1,0x29,0x86,0x46,0x67, + 0x98,0xc9,0x28,0x64,0x24,0x5,0x29,0xa7,0x22,0xe5,0x15,0xb2,0x59,0x99,0x9c,0x24, + 0x93,0xcf,0x2b,0x14,0xf2,0x2a,0x5d,0x9d,0x6f,0x2,0xec,0x7d,0x74,0xd9,0x9e,0x87, + 0x93,0x43,0x33,0xc1,0x91,0xd1,0xcc,0xc0,0xde,0xae,0xbf,0x4d,0x4e,0x5d,0x2a,0x34, + 0x4d,0x5d,0x2a,0x90,0x9e,0x91,0x91,0x72,0x6a,0xe2,0x6a,0x32,0xd3,0xf1,0x59,0x6f, + 0x67,0x5b,0x75,0xed,0x6,0xba,0xcf,0xc,0xb2,0xbc,0x31,0x4c,0x38,0x1c,0x26,0x99, + 0x4c,0x32,0x3a,0x3a,0xcc,0xc7,0x9d,0x9,0xd6,0xaf,0xdf,0x40,0x5f,0x5f,0x3f,0xdd, + 0xdd,0xa7,0x89,0x44,0x6a,0x70,0xd9,0x27,0x50,0x65,0x81,0xc1,0x41,0x11,0x4d,0xd3, + 0x69,0xa8,0xaf,0xc4,0xeb,0x75,0x61,0x59,0x16,0x9a,0x3a,0x1b,0xbd,0x5c,0x4e,0x41, + 0xca,0x2a,0xc4,0xf,0xee,0x67,0x7c,0xec,0xd3,0xf4,0x86,0x4d,0x7f,0x19,0xeb,0xee, + 0x19,0x89,0xb,0x82,0x80,0x69,0x5a,0xed,0xf5,0xe1,0x35,0xa4,0xa6,0xf2,0x6d,0x86, + 0x61,0x22,0x2b,0x3a,0xa6,0x69,0xed,0x5d,0x30,0x82,0xc9,0x64,0x32,0x99,0xcd,0x5c, + 0x8a,0x7d,0x92,0x78,0x9f,0xb3,0xbd,0xc3,0xc,0x8f,0x5e,0x62,0xdd,0x97,0x6e,0x9d, + 0xc7,0x4f,0x9e,0xfc,0xf,0x7a,0xce,0x8e,0xd0,0x74,0xfb,0x5d,0x0,0xbc,0xf3,0xce, + 0x7b,0x78,0xbc,0x55,0x58,0x5a,0x37,0x33,0xe9,0x8b,0xc,0xc,0xa4,0x38,0xda,0x79, + 0x8e,0x73,0xe7,0xc6,0xf1,0x7a,0x1c,0xa4,0x26,0xb3,0x4c,0x4e,0x66,0x19,0x1a,0x9a, + 0xe6,0xc0,0xc1,0x3,0xbc,0xff,0xde,0xb,0x4,0x42,0x8b,0xda,0x1a,0x96,0xdf,0xbb, + 0xb7,0xbf,0x7f,0x2c,0xd2,0xdf,0x3f,0x16,0xbf,0xfd,0x2b,0xd6,0x4e,0x9f,0x71,0x7f, + 0xf3,0x78,0x4a,0x8a,0x5c,0x9c,0xc8,0x32,0x91,0xca,0xc6,0x7f,0xfc,0xd4,0xb7,0x92, + 0xf6,0xab,0x75,0xb7,0x85,0x42,0xa1,0xbd,0x27,0xf1,0xdb,0x96,0xe2,0x40,0x6d,0xb0, + 0x4b,0xd0,0x59,0xbb,0x66,0x39,0xb5,0x8b,0xeb,0x18,0x1a,0xbc,0x40,0x3e,0x97,0xe1, + 0x4c,0xcf,0x9,0x4a,0x4a,0x17,0x51,0x5d,0x73,0x23,0xe9,0xf4,0x38,0xa6,0x50,0x45, + 0xa4,0x4e,0xe0,0xd0,0x47,0xbf,0x41,0x74,0xd4,0x11,0x2c,0xbd,0x99,0x2f,0x6f,0x5c, + 0x42,0x4d,0x75,0x80,0x63,0xc7,0x7,0x39,0xfc,0xfb,0x23,0x9c,0xed,0xde,0xcf,0xb9, + 0xbe,0x43,0x69,0xa0,0xad,0xb9,0xf5,0x97,0x0,0x51,0xd3,0xb4,0x12,0x60,0xb5,0xec, + 0xfd,0xb7,0x42,0xc0,0xef,0x9f,0x8a,0x9,0x2,0xe8,0xba,0x89,0x20,0xd0,0x7e,0xcd, + 0xa1,0x49,0x55,0xd5,0xa4,0x65,0x59,0xad,0x5d,0x87,0x63,0xc,0xf,0xf6,0x71,0xf8, + 0xd0,0x61,0x56,0xaf,0x5e,0x43,0x20,0x30,0x9b,0xd1,0x52,0x36,0xc5,0xc8,0x50,0xf, + 0xd3,0xd3,0xe3,0xe4,0xb2,0x19,0x76,0xbe,0xfa,0x2,0x13,0xd3,0x21,0xd6,0xdd,0xf6, + 0x8,0x5e,0x8f,0xca,0xfe,0xb7,0x9e,0xe6,0xf4,0x89,0x3d,0xf3,0xeb,0x1d,0x3f,0xf6, + 0x46,0xfa,0x5c,0xdf,0xa1,0x18,0x10,0xdd,0xb4,0x69,0xd3,0xce,0xbe,0xd3,0x2f,0xec, + 0x9c,0xeb,0x5,0x9b,0x0,0x26,0x27,0x33,0xf1,0x64,0x32,0x15,0x1c,0x18,0x48,0x31, + 0x3c,0x3c,0xb5,0x77,0xcf,0x1b,0x4f,0x7e,0x74,0xd5,0xa1,0xe9,0xa,0x7b,0xd3,0xd0, + 0x95,0xd6,0xae,0x43,0xb1,0xd8,0xb2,0xe5,0x77,0x22,0x65,0x53,0x34,0x36,0x36,0xd2, + 0xdd,0xfd,0x9,0x92,0x24,0x61,0x18,0x1a,0xaa,0x22,0xa1,0xc8,0x12,0x72,0x21,0x8b, + 0x94,0x93,0x91,0x72,0xf0,0xf5,0xe6,0x6d,0xcc,0x64,0x74,0xae,0xec,0x94,0x9c,0x2e, + 0x6f,0x2,0xf8,0x2e,0xc0,0x91,0x23,0x47,0x66,0x55,0xa0,0xb3,0xf3,0xb1,0x87,0xb6, + 0xbe,0x1e,0x6,0xf6,0x1a,0x86,0x19,0x35,0xc,0xf3,0x72,0x66,0xb7,0x26,0x12,0x9, + 0xbe,0x8,0x41,0x80,0x9d,0x86,0xa1,0xa6,0xcf,0x9e,0xde,0x17,0x4b,0x55,0x2e,0xd, + 0x8e,0x8f,0x9d,0x67,0xd1,0xd,0x8b,0x99,0x49,0x4f,0x61,0x9a,0x3a,0x85,0xdc,0x25, + 0x54,0x35,0x4f,0x69,0x59,0xdd,0x7f,0x69,0xe5,0xc8,0x20,0xa3,0x63,0xc3,0x40,0xdd, + 0x17,0x99,0x2c,0x5b,0xe7,0x3a,0x9a,0xcb,0xe4,0x9a,0x5e,0x7b,0xe9,0xc1,0x99,0x6b, + 0x8e,0x9d,0xb,0x45,0x12,0x88,0x4e,0x8e,0x7f,0xd6,0x3e,0x95,0xba,0xd0,0x3a,0x9c, + 0x2c,0xc1,0xe9,0xf2,0x62,0x77,0xb8,0xb0,0x4c,0x13,0xcb,0xb2,0x58,0xd6,0xd8,0x34, + 0x2b,0xde,0xfd,0x47,0x39,0xb8,0xff,0x30,0xa3,0xc3,0x9f,0x2,0x9b,0x3f,0x77,0xe1, + 0xd7,0x5e,0x7a,0xf0,0x47,0xf,0x6d,0x7d,0xbd,0x65,0xae,0xab,0x6e,0xb9,0x92,0xdc, + 0xff,0x84,0x20,0x40,0x12,0xf8,0xae,0x65,0x1a,0xed,0x52,0x36,0xd5,0x46,0x36,0x15, + 0xbd,0x7c,0x7f,0x0,0xde,0xfc,0xf5,0x93,0x97,0x1f,0xe3,0xe1,0x70,0x38,0xfe,0xf4, + 0xd3,0x3f,0x68,0xba,0x12,0xff,0x1c,0x6b,0x79,0xed,0xa5,0x7,0x93,0xb,0x22,0x96, + 0x65,0xfd,0x81,0xff,0x2f,0xd9,0x9f,0x6d,0xdf,0xbe,0xdd,0xea,0xfd,0x6c,0xd2,0xfa, + 0xa7,0x8e,0x83,0x56,0x78,0xc9,0x97,0xe,0x5e,0xff,0x37,0x73,0x9d,0xe0,0x17,0xfd, + 0x79,0xf4,0x39,0xe6,0x0,0x2a,0x1,0x1f,0x50,0xb2,0x0,0x3e,0xd,0x4c,0x1,0xce, + 0xff,0x6f,0x82,0x22,0xe0,0x17,0x4,0xd1,0xef,0x72,0x17,0xe3,0x72,0x79,0xf3,0x2e, + 0xb7,0x2f,0x7f,0x39,0xa9,0x36,0xdf,0xb1,0xd,0x5f,0x71,0x19,0x9f,0xf6,0xbc,0x4f, + 0xcf,0xa9,0x77,0x3d,0x39,0x69,0x2a,0x94,0x4e,0xcf,0xf6,0x7c,0xaa,0x92,0x23,0x7d, + 0x69,0xe4,0x8f,0x22,0xb8,0xe0,0x5c,0x2c,0xcc,0xe,0xb3,0x57,0x9a,0xd,0xf0,0xf8, + 0x83,0x35,0x42,0xa8,0xb4,0x16,0x51,0xb4,0x63,0x9a,0x3a,0xa6,0xa1,0xa3,0x69,0x32, + 0xba,0xa6,0x52,0x59,0x7d,0x13,0xb7,0x6c,0xf8,0xb,0x0,0x26,0x2e,0xf6,0xf1,0xe1, + 0x7b,0x3f,0x59,0xac,0xa9,0x85,0xc3,0xd,0xd,0xcb,0x83,0x53,0xd3,0x97,0x98,0x4c, + 0x8d,0x76,0x0,0x8f,0xfd,0x5f,0x44,0x50,0x10,0x45,0x9b,0x50,0x57,0xbf,0x49,0xf6, + 0x15,0x97,0xcf,0x4b,0x93,0x69,0x1a,0x18,0x86,0x8a,0xa6,0xca,0x28,0x72,0x8e,0xd4, + 0xf8,0xb9,0xf9,0xf,0x2a,0xaa,0x96,0x51,0x1b,0x5e,0xd7,0x3b,0x78,0xa1,0xab,0xbe, + 0xb7,0xf7,0xcc,0x2a,0xb0,0x92,0xc0,0xf9,0x3f,0x26,0x82,0xff,0x39,0x0,0x2f,0xa0, + 0x9b,0x35,0xb7,0xaa,0xda,0x56,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42, + 0x60,0x82, + // /home/maemo/tietoopcom/resources/tieto-logo.png + 0x0,0x0,0x4,0x38, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x80,0x0,0x0,0x0,0x74,0x8,0x6,0x0,0x0,0x0,0x4d,0x3d,0x3a,0xc4, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xe,0xc4,0x0,0x0,0xe,0xc4,0x1, + 0x95,0x2b,0xe,0x1b,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xda,0x6,0x16, + 0x10,0xb,0x32,0xb2,0x46,0x43,0x31,0x0,0x0,0x3,0xb8,0x49,0x44,0x41,0x54,0x78, + 0xda,0xed,0x9d,0xcb,0x91,0xdc,0x20,0x10,0x86,0xbb,0x99,0xc7,0xba,0x9c,0x84,0x6f, + 0x4e,0x60,0xaf,0xae,0x9a,0xab,0x13,0x98,0x14,0x36,0x8d,0x4d,0xc4,0x19,0x38,0x1f, + 0x5f,0x9d,0x88,0xbd,0xf8,0x60,0xb9,0x6a,0x3c,0x3b,0x7a,0x0,0xd,0xe2,0xf1,0x7d, + 0x55,0x3a,0x69,0x5,0x83,0xfe,0x5f,0xd,0xd,0x12,0x2b,0x2,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x79,0xf0,0xb7,0x87,0x17,0x71, + 0x29,0x85,0x29,0xf7,0xb3,0x39,0xf1,0x4d,0xb5,0xc4,0x0,0x7d,0x88,0x1f,0xad,0x27, + 0x6,0xe8,0x47,0xfc,0x28,0x4d,0x1d,0xf7,0x76,0x68,0xb3,0x60,0x80,0xd1,0x4d,0x70, + 0xe4,0x5e,0xa5,0xdc,0xe5,0x57,0x27,0xf2,0x23,0xf1,0x1e,0x7e,0xff,0xa5,0x22,0x6f, + 0x19,0x1c,0xe0,0xb6,0x94,0xcb,0x18,0xa0,0x60,0xb8,0x4d,0xd4,0xc1,0xe7,0x28,0x97, + 0x2e,0x20,0xbf,0x70,0x46,0x4e,0xbb,0x9c,0x72,0x14,0x4b,0x4,0xa8,0x23,0x12,0x68, + 0xa6,0x7a,0xd6,0xca,0xf5,0x44,0x80,0x32,0x91,0x40,0xbd,0x3c,0x9f,0x5b,0x8a,0x38, + 0x10,0x1f,0x9,0xee,0x8f,0x9b,0x93,0xd7,0xf3,0xcc,0xdf,0x78,0x83,0x7a,0x42,0xcb, + 0x8b,0xa9,0x17,0x2,0xc5,0x79,0x70,0xf2,0xf9,0x64,0x60,0x0,0xf1,0x72,0x39,0xce, + 0x89,0x3f,0x9d,0xc3,0x0,0xfb,0x39,0xe0,0x7a,0x5e,0x3e,0xff,0xde,0x4,0x1b,0x45, + 0xdb,0x12,0xd,0x82,0xae,0xa1,0x4f,0xa9,0x6b,0xd0,0xa8,0x5,0x2a,0xd6,0xdb,0xf9, + 0x1,0xc,0x50,0x5f,0xc6,0xa0,0x25,0xeb,0x27,0xb,0xa8,0x2c,0x5d,0xf4,0x9f,0x2e, + 0x1f,0x2a,0x4e,0x57,0xc1,0x38,0x43,0x48,0x19,0xc4,0x59,0xd5,0xf,0xb5,0x19,0x40, + 0x44,0xfc,0x51,0xf4,0x5b,0xa1,0xba,0xa1,0x56,0x13,0xa4,0xa,0xf4,0x77,0xb1,0x2a, + 0x5f,0xf9,0x50,0xc8,0x4,0x91,0x5d,0x42,0x76,0x83,0x41,0xd9,0x48,0xe0,0x9d,0xc8, + 0xcf,0x95,0xf9,0x87,0x43,0x68,0x99,0xa4,0x81,0x15,0x67,0x4,0x25,0xc0,0x0,0x83, + 0x9b,0x80,0x79,0x80,0xca,0x1f,0xc0,0x4c,0xef,0x1,0x40,0x8e,0xa7,0x79,0x9a,0xe3, + 0x37,0xcf,0xd1,0x97,0x16,0x7e,0xc,0xe,0xb0,0x1c,0xd4,0xc5,0x9a,0x60,0xca,0xfb, + 0x67,0x85,0x89,0x19,0xe0,0x61,0x80,0x9d,0x46,0xf4,0x99,0x66,0xf2,0x72,0x45,0x2, + 0xc8,0x91,0xce,0x25,0x74,0x7,0x62,0x9d,0xea,0x61,0x80,0x4c,0x3c,0x8,0xdb,0x77, + 0x26,0x78,0x39,0x95,0x36,0x1e,0x6,0xd8,0x27,0xc,0x68,0xc1,0x48,0x40,0x17,0xd0, + 0x5a,0x97,0x60,0x68,0x2,0x6,0x81,0xad,0x46,0x3,0x83,0xee,0x80,0x34,0xb0,0xfd, + 0xec,0xe0,0xe5,0x54,0x99,0xf8,0x18,0xa0,0xbc,0x9,0xae,0xe7,0x8a,0xc4,0xc7,0x0, + 0xbb,0xa4,0x88,0xdb,0x5f,0xfb,0xf2,0x18,0x60,0x37,0xf5,0xde,0xbf,0x4c,0x11,0x30, + 0x98,0xb3,0xb8,0xf9,0x25,0xc4,0x67,0x39,0x78,0xe1,0xe6,0x2f,0xa1,0x9,0xd7,0x3e, + 0xba,0xc0,0xe9,0xb4,0xe1,0x93,0x8a,0xfc,0x2e,0xd9,0x50,0xc,0x10,0x27,0xa0,0x6, + 0x5e,0xab,0xb5,0x86,0x5b,0x96,0x83,0xed,0x1e,0x1a,0xdf,0xe2,0x43,0x86,0x1,0x6c, + 0x42,0x7f,0x93,0xe2,0x63,0x80,0x82,0x4f,0xbe,0x97,0xd7,0x43,0x4b,0x8d,0x22,0x2, + 0xe4,0x79,0xf2,0x3d,0x11,0xa0,0x6a,0xf5,0xaf,0x4f,0x23,0x84,0x7d,0xd8,0x9e,0x7f, + 0x87,0xe6,0xe8,0x41,0xf3,0xa,0x35,0x1c,0xb8,0x75,0xfe,0xc9,0x8e,0x9,0xe3,0xa6, + 0xf3,0x3,0x25,0x60,0x9f,0xc0,0xe,0x44,0x64,0xc,0xf0,0x7f,0x3f,0x7e,0x96,0x3c, + 0x73,0xdf,0xcc,0x9b,0x37,0x12,0xbf,0x17,0xfb,0xda,0xc8,0xef,0xef,0x37,0x7c,0xbf, + 0xf7,0xf5,0x69,0xee,0xe2,0xcf,0x87,0x8f,0x5f,0x6a,0xec,0xff,0xbb,0x1d,0x3,0xdc, + 0x6f,0x83,0x62,0x30,0x52,0x4f,0xdd,0xaa,0xbd,0xda,0xe8,0xd1,0x65,0x1a,0xa8,0x2b, + 0xff,0x49,0xc3,0x7,0x1a,0x60,0x26,0x3d,0xec,0x62,0xdc,0xd0,0x75,0x16,0xb0,0x12, + 0x9,0xd4,0xa0,0xbc,0x5c,0x7b,0xfc,0x62,0x0,0xe3,0x94,0x6e,0xaf,0xf6,0x57,0x3f, + 0x70,0x74,0x3,0x8b,0x1f,0xdc,0x15,0xf4,0x98,0x35,0x68,0xed,0x22,0x45,0xfe,0x6e, + 0xbf,0xf3,0x3d,0x68,0x26,0x65,0x74,0x3b,0xab,0xef,0x32,0xdc,0xe0,0xd9,0x39,0xfa, + 0x99,0xfa,0xbc,0x71,0x24,0x68,0x6a,0xbe,0x60,0x57,0x3,0x68,0xda,0xff,0xbd,0xf3, + 0x21,0xe2,0x2f,0xd5,0xa7,0x22,0x6f,0x11,0x6f,0xeb,0xce,0xcd,0x3f,0x40,0x82,0xa0, + 0x29,0x6f,0xb5,0x6e,0xde,0x6a,0x6d,0xe9,0x53,0xae,0xc2,0xbf,0xbd,0x86,0xa3,0x9e, + 0x94,0x2d,0x46,0xe4,0xd8,0xc6,0xad,0xd4,0xe7,0xa7,0xaf,0x70,0x17,0xae,0x9f,0xdd, + 0xf5,0xbb,0xa9,0x43,0x2b,0xb,0x1,0x8f,0xf2,0x76,0x8d,0xec,0x63,0x35,0xb2,0xbe, + 0xa1,0xa8,0x75,0x1e,0x20,0x65,0x49,0x36,0xa8,0x5d,0xa3,0x9b,0xa0,0xe5,0x89,0x20, + 0xb3,0x37,0x72,0x46,0x36,0x81,0x76,0x26,0x3e,0x26,0x18,0xc0,0x0,0x3e,0x57,0xdb, + 0x46,0x34,0x81,0x76,0x2a,0x3e,0x26,0xe8,0xd0,0x0,0xbe,0x54,0x1b,0x47,0x32,0x81, + 0x6b,0x48,0x7d,0x57,0xca,0x38,0x89,0x33,0x94,0x44,0x80,0x5e,0x22,0x81,0xc,0x30, + 0xb5,0xdb,0x6b,0x16,0x60,0xd1,0xde,0x21,0xe6,0xf5,0x5d,0xa3,0xea,0xe7,0xee,0xe, + 0x86,0x59,0xd4,0x69,0xfd,0x8d,0xa0,0x1c,0x91,0x60,0xa8,0x15,0x3d,0xd7,0xb8,0xfa, + 0xd6,0x91,0x60,0xb8,0xe5,0xdc,0xa6,0xd,0xb0,0x71,0xb4,0xbe,0x75,0x3d,0x61,0xc8, + 0xb5,0xfc,0x9e,0x5e,0xa,0xf5,0x2b,0xed,0x6b,0x6e,0xfb,0x16,0xc,0x90,0x66,0x2, + 0x25,0xc4,0x8f,0x67,0x0,0x46,0xf8,0x18,0x0,0x13,0xc,0x33,0x8,0x4,0x22,0x0, + 0x4f,0x3f,0x6,0x40,0x7c,0xc,0x80,0xf8,0x18,0x0,0xf1,0x31,0x0,0xe2,0x63,0x0, + 0xc4,0x27,0xd,0x14,0xbe,0xd3,0x1b,0xd6,0x0,0xff,0x3e,0xd7,0x2a,0xbd,0xe7,0x7e, + 0xcb,0xfc,0x1,0xd,0x72,0xc5,0xca,0x3f,0xe0,0x25,0x86,0x0,0x0,0x0,0x0,0x49, + 0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/activesessions.png + 0x0,0x0,0x1e,0xff, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x4,0x67,0x41,0x4d,0x41,0x0,0x0,0xb1,0x8e,0x7c,0xfb,0x51,0x93, + 0x0,0x0,0x0,0x20,0x63,0x48,0x52,0x4d,0x0,0x0,0x87,0xf,0x0,0x0,0x8c,0xf, + 0x0,0x0,0xfd,0x52,0x0,0x0,0x81,0x40,0x0,0x0,0x7d,0x79,0x0,0x0,0xe9,0x8b, + 0x0,0x0,0x3c,0xe5,0x0,0x0,0x19,0xcc,0x73,0x3c,0x85,0x77,0x0,0x0,0xa,0x39, + 0x69,0x43,0x43,0x50,0x50,0x68,0x6f,0x74,0x6f,0x73,0x68,0x6f,0x70,0x20,0x49,0x43, + 0x43,0x20,0x70,0x72,0x6f,0x66,0x69,0x6c,0x65,0x0,0x0,0x48,0xc7,0x9d,0x96,0x77, + 0x54,0x54,0xd7,0x16,0x87,0xcf,0xbd,0x77,0x7a,0xa1,0xcd,0x30,0xd2,0x19,0x7a,0x93, + 0x2e,0x30,0x80,0xf4,0x2e,0x20,0x1d,0x4,0x51,0x18,0x66,0x6,0x18,0xca,0x0,0xc3, + 0xc,0x4d,0x6c,0x88,0xa8,0x40,0x44,0x11,0x11,0x1,0x45,0x90,0xa0,0x80,0x1,0xa3, + 0xa1,0x48,0xac,0x88,0x62,0x21,0x28,0xa8,0x60,0xf,0x48,0x10,0x50,0x62,0x30,0x8a, + 0xa8,0xa8,0x64,0x46,0xd6,0x4a,0x7c,0x79,0x79,0xef,0xe5,0xe5,0xf7,0xc7,0xbd,0xdf, + 0xda,0x67,0xef,0x73,0xf7,0xd9,0x7b,0x9f,0xb5,0x2e,0x0,0x24,0x4f,0x1f,0x2e,0x2f, + 0x5,0x96,0x2,0x20,0x99,0x27,0xe0,0x7,0x7a,0x38,0xd3,0x57,0x85,0x47,0xd0,0xb1, + 0xfd,0x0,0x6,0x78,0x80,0x1,0xa6,0x0,0x30,0x59,0xe9,0xa9,0xbe,0x41,0xee,0xc1, + 0x40,0x24,0x2f,0x37,0x17,0x7a,0xba,0xc8,0x9,0xfc,0x8b,0xde,0xc,0x1,0x48,0xfc, + 0xbe,0x65,0xe8,0xe9,0x4f,0xa7,0x83,0xff,0x4f,0xd2,0xac,0x54,0xbe,0x0,0x0,0xc8, + 0x5f,0xc4,0xe6,0x6c,0x4e,0x3a,0x4b,0xc4,0xf9,0x22,0x4e,0xca,0x14,0xa4,0x8a,0xed, + 0x33,0x22,0xa6,0xc6,0x24,0x8a,0x19,0x46,0x89,0x99,0x2f,0x4a,0x50,0xc4,0x72,0x62, + 0x8e,0x5b,0xe4,0xa5,0x9f,0x7d,0x16,0xd9,0x51,0xcc,0xec,0x64,0x1e,0x5b,0xc4,0xe2, + 0x9c,0x53,0xd9,0xc9,0x6c,0x31,0xf7,0x88,0x78,0x7b,0x86,0x90,0x23,0x62,0xc4,0x47, + 0xc4,0x5,0x19,0x5c,0x4e,0xa6,0x88,0x6f,0x8b,0x58,0x33,0x49,0x98,0xcc,0x15,0xf1, + 0x5b,0x71,0x6c,0x32,0x87,0x99,0xe,0x0,0x8a,0x24,0xb6,0xb,0x38,0xac,0x78,0x11, + 0x9b,0x88,0x98,0xc4,0xf,0xe,0x74,0x11,0xf1,0x72,0x0,0x70,0xa4,0xb8,0x2f,0x38, + 0xe6,0xb,0x16,0x70,0xb2,0x4,0xe2,0x43,0xb9,0xa4,0xa4,0x66,0xf3,0xb9,0x71,0xf1, + 0x2,0xba,0x2e,0x4b,0x8f,0x6e,0x6a,0x6d,0xcd,0xa0,0x7b,0x72,0x32,0x93,0x38,0x2, + 0x81,0xa1,0x3f,0x93,0x95,0xc8,0xe4,0xb3,0xe9,0x2e,0x29,0xc9,0xa9,0x4c,0x5e,0x36, + 0x0,0x8b,0x67,0xfe,0x2c,0x19,0x71,0x6d,0xe9,0xa2,0x22,0x5b,0x9a,0x5a,0x5b,0x5a, + 0x1a,0x9a,0x19,0x99,0x7e,0x51,0xa8,0xff,0xba,0xf8,0x37,0x25,0xee,0xed,0x22,0xbd, + 0xa,0xf8,0xdc,0x33,0x88,0xd6,0xf7,0x87,0xed,0xaf,0xfc,0x52,0xea,0x0,0x60,0xcc, + 0x8a,0x6a,0xb3,0xeb,0xf,0x5b,0xcc,0x7e,0x0,0x3a,0xb6,0x2,0x20,0x77,0xff,0xf, + 0x9b,0xe6,0x21,0x0,0x24,0x45,0x7d,0x6b,0xbf,0xf1,0xc5,0x79,0x68,0xe2,0x79,0x89, + 0x17,0x8,0x52,0x6d,0x8c,0x8d,0x33,0x33,0x33,0x8d,0xb8,0x1c,0x96,0x91,0xb8,0xa0, + 0xbf,0xeb,0x7f,0x3a,0xfc,0xd,0x7d,0xf1,0x3d,0x23,0xf1,0x76,0xbf,0x97,0x87,0xee, + 0xca,0x89,0x65,0xa,0x93,0x4,0x74,0x71,0xdd,0x58,0x29,0x49,0x29,0x42,0x3e,0x3d, + 0x3d,0x95,0xc9,0xe2,0xd0,0xd,0xff,0x3c,0xc4,0xff,0x38,0xf0,0xaf,0xf3,0x58,0x1a, + 0xc8,0x89,0xe5,0xf0,0x39,0x3c,0x51,0x44,0xa8,0x68,0xca,0xb8,0xbc,0x38,0x51,0xbb, + 0x79,0x6c,0xae,0x80,0x9b,0xc2,0xa3,0x73,0x79,0xff,0xa9,0x89,0xff,0x30,0xec,0x4f, + 0x5a,0x9c,0x6b,0x91,0x28,0xf5,0x9f,0x0,0x35,0xca,0x8,0x48,0xdd,0xa0,0x2,0xe4, + 0xe7,0x3e,0x80,0xa2,0x10,0x1,0x12,0x79,0x50,0xdc,0xf5,0xdf,0xfb,0xe6,0x83,0xf, + 0x5,0xe2,0x9b,0x17,0xa6,0x3a,0xb1,0x38,0xf7,0x9f,0x5,0xfd,0xfb,0xae,0x70,0x89, + 0xf8,0x91,0xce,0x8d,0xfb,0x1c,0xe7,0x12,0x18,0x4c,0x67,0x9,0xf9,0x19,0x8b,0x6b, + 0xe2,0x6b,0x9,0xd0,0x80,0x0,0x24,0x1,0x15,0xc8,0x3,0x15,0xa0,0x1,0x74,0x81, + 0x21,0x30,0x3,0x56,0xc0,0x16,0x38,0x2,0x37,0xb0,0x2,0xf8,0x81,0x60,0x10,0xe, + 0xd6,0x2,0x16,0x88,0x7,0xc9,0x80,0xf,0x32,0x41,0x2e,0xd8,0xc,0xa,0x40,0x11, + 0xd8,0x5,0xf6,0x82,0x4a,0x50,0x3,0xea,0x41,0x23,0x68,0x1,0x27,0x40,0x7,0x38, + 0xd,0x2e,0x80,0xcb,0xe0,0x3a,0xb8,0x9,0xee,0x80,0x7,0x60,0x4,0x8c,0x83,0xe7, + 0x60,0x6,0xbc,0x1,0xf3,0x10,0x4,0x61,0x21,0x32,0x44,0x81,0xe4,0x21,0x55,0x48, + 0xb,0x32,0x80,0xcc,0x20,0x6,0x64,0xf,0xb9,0x41,0x3e,0x50,0x20,0x14,0xe,0x45, + 0x43,0x71,0x10,0xf,0x12,0x42,0xb9,0xd0,0x16,0xa8,0x8,0x2a,0x85,0x2a,0xa1,0x5a, + 0xa8,0x11,0xfa,0x16,0x3a,0x5,0x5d,0x80,0xae,0x42,0x3,0xd0,0x3d,0x68,0x14,0x9a, + 0x82,0x7e,0x85,0xde,0xc3,0x8,0x4c,0x82,0xa9,0xb0,0x32,0xac,0xd,0x1b,0xc3,0xc, + 0xd8,0x9,0xf6,0x86,0x83,0xe1,0x35,0x70,0x1c,0x9c,0x6,0xe7,0xc0,0xf9,0xf0,0x4e, + 0xb8,0x2,0xae,0x83,0x8f,0xc1,0xed,0xf0,0x5,0xf8,0x3a,0x7c,0x7,0x1e,0x81,0x9f, + 0xc3,0xb3,0x8,0x40,0x88,0x8,0xd,0x51,0x43,0xc,0x11,0x6,0xe2,0x82,0xf8,0x21, + 0x11,0x48,0x2c,0xc2,0x47,0x36,0x20,0x85,0x48,0x39,0x52,0x87,0xb4,0x20,0x5d,0x48, + 0x2f,0x72,0xb,0x19,0x41,0xa6,0x91,0x77,0x28,0xc,0x8a,0x82,0xa2,0xa3,0xc,0x51, + 0xb6,0x28,0x4f,0x54,0x8,0x8a,0x85,0x4a,0x43,0x6d,0x40,0x15,0xa3,0x2a,0x51,0x47, + 0x51,0xed,0xa8,0x1e,0xd4,0x2d,0xd4,0x28,0x6a,0x6,0xf5,0x9,0x4d,0x46,0x2b,0xa1, + 0xd,0xd0,0x36,0x68,0x2f,0xf4,0x2a,0x74,0x1c,0x3a,0x13,0x5d,0x80,0x2e,0x47,0x37, + 0xa0,0xdb,0xd0,0x97,0xd0,0x77,0xd0,0xe3,0xe8,0x37,0x18,0xc,0x86,0x86,0xd1,0xc1, + 0x58,0x61,0x3c,0x31,0xe1,0x98,0x4,0xcc,0x3a,0x4c,0x31,0xe6,0x0,0xa6,0x15,0x73, + 0x1e,0x33,0x80,0x19,0xc3,0xcc,0x62,0xb1,0x58,0x79,0xac,0x1,0xd6,0xe,0xeb,0x87, + 0x65,0x62,0x5,0xd8,0x2,0xec,0x7e,0xec,0x31,0xec,0x39,0xec,0x20,0x76,0x1c,0xfb, + 0x16,0x47,0xc4,0xa9,0xe2,0xcc,0x70,0xee,0xb8,0x8,0x1c,0xf,0x97,0x87,0x2b,0xc7, + 0x35,0xe1,0xce,0xe2,0x6,0x71,0x13,0xb8,0x79,0xbc,0x14,0x5e,0xb,0x6f,0x83,0xf7, + 0xc3,0xb3,0xf1,0xd9,0xf8,0x12,0x7c,0x3d,0xbe,0xb,0x7f,0x3,0x3f,0x8e,0x9f,0x27, + 0x48,0x13,0x74,0x8,0x76,0x84,0x60,0x42,0x2,0x61,0x33,0xa1,0x82,0xd0,0x42,0xb8, + 0x44,0x78,0x48,0x78,0x45,0x24,0x12,0xd5,0x89,0xd6,0xc4,0x0,0x22,0x97,0xb8,0x89, + 0x58,0x41,0x3c,0x4e,0xbc,0x42,0x1c,0x25,0xbe,0x23,0xc9,0x90,0xf4,0x49,0x2e,0xa4, + 0x48,0x92,0x90,0xb4,0x93,0x74,0x84,0x74,0x9e,0x74,0x8f,0xf4,0x8a,0x4c,0x26,0x6b, + 0x93,0x1d,0xc9,0x11,0x64,0x1,0x79,0x27,0xb9,0x91,0x7c,0x91,0xfc,0x98,0xfc,0x56, + 0x82,0x22,0x61,0x24,0xe1,0x25,0xc1,0x96,0xd8,0x28,0x51,0x25,0xd1,0x2e,0x31,0x28, + 0xf1,0x42,0x12,0x2f,0xa9,0x25,0xe9,0x24,0xb9,0x56,0x32,0x47,0xb2,0x5c,0xf2,0xa4, + 0xe4,0xd,0xc9,0x69,0x29,0xbc,0x94,0xb6,0x94,0x8b,0x14,0x53,0x6a,0x83,0x54,0x95, + 0xd4,0x29,0xa9,0x61,0xa9,0x59,0x69,0x8a,0xb4,0xa9,0xb4,0x9f,0x74,0xb2,0x74,0xb1, + 0x74,0x93,0xf4,0x55,0xe9,0x49,0x19,0xac,0x8c,0xb6,0x8c,0x9b,0xc,0x5b,0x26,0x5f, + 0xe6,0xb0,0xcc,0x45,0x99,0x31,0xa,0x42,0xd1,0xa0,0xb8,0x50,0x58,0x94,0x2d,0x94, + 0x7a,0xca,0x25,0xca,0x38,0x15,0x43,0xd5,0xa1,0x7a,0x51,0x13,0xa8,0x45,0xd4,0x6f, + 0xa8,0xfd,0xd4,0x19,0x59,0x19,0xd9,0x65,0xb2,0xa1,0xb2,0x59,0xb2,0x55,0xb2,0x67, + 0x64,0x47,0x68,0x8,0x4d,0x9b,0xe6,0x45,0x4b,0xa2,0x95,0xd0,0x4e,0xd0,0x86,0x68, + 0xef,0x97,0x28,0x2f,0x71,0x5a,0xc2,0x59,0xb2,0x63,0x49,0xcb,0x92,0xc1,0x25,0x73, + 0x72,0x8a,0x72,0x8e,0x72,0x1c,0xb9,0x42,0xb9,0x56,0xb9,0x3b,0x72,0xef,0xe5,0xe9, + 0xf2,0x6e,0xf2,0x89,0xf2,0xbb,0xe5,0x3b,0xe4,0x1f,0x29,0xa0,0x14,0xf4,0x15,0x2, + 0x14,0x32,0x15,0xe,0x2a,0x5c,0x52,0x98,0x56,0xa4,0x2a,0xda,0x2a,0xb2,0x14,0xb, + 0x15,0x4f,0x28,0xde,0x57,0x82,0x95,0xf4,0x95,0x2,0x95,0xd6,0x29,0x1d,0x56,0xea, + 0x53,0x9a,0x55,0x56,0x51,0xf6,0x50,0x4e,0x55,0xde,0xaf,0x7c,0x51,0x79,0x5a,0x85, + 0xa6,0xe2,0xa8,0x92,0xa0,0x52,0xa6,0x72,0x56,0x65,0x4a,0x95,0xa2,0x6a,0xaf,0xca, + 0x55,0x2d,0x53,0x3d,0xa7,0xfa,0x8c,0x2e,0x4b,0x77,0xa2,0x27,0xd1,0x2b,0xe8,0x3d, + 0xf4,0x19,0x35,0x25,0x35,0x4f,0x35,0xa1,0x5a,0xad,0x5a,0xbf,0xda,0xbc,0xba,0x8e, + 0x7a,0x88,0x7a,0x9e,0x7a,0xab,0xfa,0x23,0xd,0x82,0x6,0x43,0x23,0x56,0xa3,0x4c, + 0xa3,0x5b,0x63,0x46,0x53,0x55,0xd3,0x57,0x33,0x57,0xb3,0x59,0xf3,0xbe,0x16,0x5e, + 0x8b,0xa1,0x15,0xaf,0xb5,0x4f,0xab,0x57,0x6b,0x4e,0x5b,0x47,0x3b,0x4c,0x7b,0x9b, + 0x76,0x87,0xf6,0xa4,0x8e,0x9c,0x8e,0x97,0x4e,0x8e,0x4e,0xb3,0xce,0x43,0x5d,0xb2, + 0xae,0x83,0x6e,0x9a,0x6e,0x9d,0xee,0x6d,0x3d,0x8c,0x1e,0x43,0x2f,0x51,0xef,0x80, + 0xde,0x4d,0x7d,0x58,0xdf,0x42,0x3f,0x5e,0xbf,0x4a,0xff,0x86,0x1,0x6c,0x60,0x69, + 0xc0,0x35,0x38,0x60,0x30,0xb0,0x14,0xbd,0xd4,0x7a,0x29,0x6f,0x69,0xdd,0xd2,0x61, + 0x43,0x92,0xa1,0x93,0x61,0x86,0x61,0xb3,0xe1,0xa8,0x11,0xcd,0xc8,0xc7,0x28,0xcf, + 0xa8,0xc3,0xe8,0x85,0xb1,0xa6,0x71,0x84,0xf1,0x6e,0xe3,0x5e,0xe3,0x4f,0x26,0x16, + 0x26,0x49,0x26,0xf5,0x26,0xf,0x4c,0x65,0x4c,0x57,0x98,0xe6,0x99,0x76,0x99,0xfe, + 0x6a,0xa6,0x6f,0xc6,0x32,0xab,0x32,0xbb,0x6d,0x4e,0x36,0x77,0x37,0xdf,0x68,0xde, + 0x69,0xfe,0x72,0x99,0xc1,0x32,0xce,0xb2,0x83,0xcb,0xee,0x5a,0x50,0x2c,0x7c,0x2d, + 0xb6,0x59,0x74,0x5b,0x7c,0xb4,0xb4,0xb2,0xe4,0x5b,0xb6,0x58,0x4e,0x59,0x69,0x5a, + 0x45,0x5b,0x55,0x5b,0xd,0x33,0xa8,0xc,0x7f,0x46,0x31,0xe3,0x8a,0x35,0xda,0xda, + 0xd9,0x7a,0xa3,0xf5,0x69,0xeb,0x77,0x36,0x96,0x36,0x2,0x9b,0x13,0x36,0xbf,0xd8, + 0x1a,0xda,0x26,0xda,0x36,0xd9,0x4e,0x2e,0xd7,0x59,0xce,0x59,0x5e,0xbf,0x7c,0xcc, + 0x4e,0xdd,0x8e,0x69,0x57,0x6b,0x37,0x62,0x4f,0xb7,0x8f,0xb6,0x3f,0x64,0x3f,0xe2, + 0xa0,0xe6,0xc0,0x74,0xa8,0x73,0x78,0xe2,0xa8,0xe1,0xc8,0x76,0x6c,0x70,0x9c,0x70, + 0xd2,0x73,0x4a,0x70,0x3a,0xe6,0xf4,0xc2,0xd9,0xc4,0x99,0xef,0xdc,0xe6,0x3c,0xe7, + 0x62,0xe3,0xb2,0xde,0xe5,0xbc,0x2b,0xe2,0xea,0xe1,0x5a,0xe8,0xda,0xef,0x26,0xe3, + 0x16,0xe2,0x56,0xe9,0xf6,0xd8,0x5d,0xdd,0x3d,0xce,0xbd,0xd9,0x7d,0xc6,0xc3,0xc2, + 0x63,0x9d,0xc7,0x79,0x4f,0xb4,0xa7,0xb7,0xe7,0x6e,0xcf,0x61,0x2f,0x65,0x2f,0x96, + 0x57,0xa3,0xd7,0xcc,0xa,0xab,0x15,0xeb,0x57,0xf4,0x78,0x93,0xbc,0x83,0xbc,0x2b, + 0xbd,0x9f,0xf8,0xe8,0xfb,0xf0,0x7d,0xba,0x7c,0x61,0xdf,0x15,0xbe,0x7b,0x7c,0x1f, + 0xae,0xd4,0x5a,0xc9,0x5b,0xd9,0xe1,0x7,0xfc,0xbc,0xfc,0xf6,0xf8,0x3d,0xf2,0xd7, + 0xf1,0x4f,0xf3,0xff,0x3e,0x0,0x13,0xe0,0x1f,0x50,0x15,0xf0,0x34,0xd0,0x34,0x30, + 0x37,0xb0,0x37,0x88,0x12,0x14,0x15,0xd4,0x14,0xf4,0x26,0xd8,0x39,0xb8,0x24,0xf8, + 0x41,0x88,0x6e,0x88,0x30,0xa4,0x3b,0x54,0x32,0x34,0x32,0xb4,0x31,0x74,0x2e,0xcc, + 0x35,0xac,0x34,0x6c,0x64,0x95,0xf1,0xaa,0xf5,0xab,0xae,0x87,0x2b,0x84,0x73,0xc3, + 0x3b,0x23,0xb0,0x11,0xa1,0x11,0xd,0x11,0xb3,0xab,0xdd,0x56,0xef,0x5d,0x3d,0x1e, + 0x69,0x11,0x59,0x10,0x39,0xb4,0x46,0x67,0x4d,0xd6,0x9a,0xab,0x6b,0x15,0xd6,0x26, + 0xad,0x3d,0x13,0x25,0x19,0xc5,0x8c,0x3a,0x19,0x8d,0x8e,0xe,0x8b,0x6e,0x8a,0xfe, + 0xc0,0xf4,0x63,0xd6,0x31,0x67,0x63,0xbc,0x62,0xaa,0x63,0x66,0x58,0x2e,0xac,0x7d, + 0xac,0xe7,0x6c,0x47,0x76,0x19,0x7b,0x8a,0x63,0xc7,0x29,0xe5,0x4c,0xc4,0xda,0xc5, + 0x96,0xc6,0x4e,0xc6,0xd9,0xc5,0xed,0x89,0x9b,0x8a,0x77,0x88,0x2f,0x8f,0x9f,0xe6, + 0xba,0x70,0x2b,0xb9,0x2f,0x13,0x3c,0x13,0x6a,0x12,0xe6,0x12,0xfd,0x12,0x8f,0x24, + 0x2e,0x24,0x85,0x25,0xb5,0x26,0xe3,0x92,0xa3,0x93,0x4f,0xf1,0x64,0x78,0x89,0xbc, + 0x9e,0x14,0x95,0x94,0xac,0x94,0x81,0x54,0x83,0xd4,0x82,0xd4,0x91,0x34,0x9b,0xb4, + 0xbd,0x69,0x33,0x7c,0x6f,0x7e,0x43,0x3a,0x94,0xbe,0x26,0xbd,0x53,0x40,0x15,0xfd, + 0x4c,0xf5,0x9,0x75,0x85,0x5b,0x85,0xa3,0x19,0xf6,0x19,0x55,0x19,0x6f,0x33,0x43, + 0x33,0x4f,0x66,0x49,0x67,0xf1,0xb2,0xfa,0xb2,0xf5,0xb3,0x77,0x64,0x4f,0xe4,0xb8, + 0xe7,0x7c,0xbd,0xe,0xb5,0x8e,0xb5,0xae,0x3b,0x57,0x2d,0x77,0x73,0xee,0xe8,0x7a, + 0xa7,0xf5,0xb5,0x1b,0xa0,0xd,0x31,0x1b,0xba,0x37,0x6a,0x6c,0xcc,0xdf,0x38,0xbe, + 0xc9,0x63,0xd3,0xd1,0xcd,0x84,0xcd,0x89,0x9b,0x7f,0xc8,0x33,0xc9,0x2b,0xcd,0x7b, + 0xbd,0x25,0x6c,0x4b,0x57,0xbe,0x72,0xfe,0xa6,0xfc,0xb1,0xad,0x1e,0x5b,0x9b,0xb, + 0x24,0xa,0xf8,0x5,0xc3,0xdb,0x6c,0xb7,0xd5,0x6c,0x47,0x6d,0xe7,0x6e,0xef,0xdf, + 0x61,0xbe,0x63,0xff,0x8e,0x4f,0x85,0xec,0xc2,0x6b,0x45,0x26,0x45,0xe5,0x45,0x1f, + 0x8a,0x59,0xc5,0xd7,0xbe,0x32,0xfd,0xaa,0xe2,0xab,0x85,0x9d,0xb1,0x3b,0xfb,0x4b, + 0x2c,0x4b,0xe,0xee,0xc2,0xec,0xe2,0xed,0x1a,0xda,0xed,0xb0,0xfb,0x68,0xa9,0x74, + 0x69,0x4e,0xe9,0xd8,0x1e,0xdf,0x3d,0xed,0x65,0xf4,0xb2,0xc2,0xb2,0xd7,0x7b,0xa3, + 0xf6,0x5e,0x2d,0x5f,0x56,0x5e,0xb3,0x8f,0xb0,0x4f,0xb8,0x6f,0xa4,0xc2,0xa7,0xa2, + 0x73,0xbf,0xe6,0xfe,0x5d,0xfb,0x3f,0x54,0xc6,0x57,0xde,0xa9,0x72,0xae,0x6a,0xad, + 0x56,0xaa,0xde,0x51,0x3d,0x77,0x80,0x7d,0x60,0xf0,0xa0,0xe3,0xc1,0x96,0x1a,0xe5, + 0x9a,0xa2,0x9a,0xf7,0x87,0xb8,0x87,0xee,0xd6,0x7a,0xd4,0xb6,0xd7,0x69,0xd7,0x95, + 0x1f,0xc6,0x1c,0xce,0x38,0xfc,0xb4,0x3e,0xb4,0xbe,0xf7,0x6b,0xc6,0xd7,0x8d,0xd, + 0xa,0xd,0x45,0xd,0x1f,0x8f,0xf0,0x8e,0x8c,0x1c,0xd,0x3c,0xda,0xd3,0x68,0xd5, + 0xd8,0xd8,0xa4,0xd4,0x54,0xd2,0xc,0x37,0xb,0x9b,0xa7,0x8e,0x45,0x1e,0xbb,0xf9, + 0x8d,0xeb,0x37,0x9d,0x2d,0x86,0x2d,0xb5,0xad,0xb4,0xd6,0xa2,0xe3,0xe0,0xb8,0xf0, + 0xf8,0xb3,0x6f,0xa3,0xbf,0x1d,0x3a,0xe1,0x7d,0xa2,0xfb,0x24,0xe3,0x64,0xcb,0x77, + 0x5a,0xdf,0x55,0xb7,0x51,0xda,0xa,0xdb,0xa1,0xf6,0xec,0xf6,0x99,0x8e,0xf8,0x8e, + 0x91,0xce,0xf0,0xce,0x81,0x53,0x2b,0x4e,0x75,0x77,0xd9,0x76,0xb5,0x7d,0x6f,0xf4, + 0xfd,0x91,0xd3,0x6a,0xa7,0xab,0xce,0xc8,0x9e,0x29,0x39,0x4b,0x38,0x9b,0x7f,0x76, + 0xe1,0x5c,0xce,0xb9,0xd9,0xf3,0xa9,0xe7,0xa7,0x2f,0xc4,0x5d,0x18,0xeb,0x8e,0xea, + 0x7e,0x70,0x71,0xd5,0xc5,0xdb,0x3d,0x1,0x3d,0xfd,0x97,0xbc,0x2f,0x5d,0xb9,0xec, + 0x7e,0xf9,0x62,0xaf,0x53,0xef,0xb9,0x2b,0x76,0x57,0x4e,0x5f,0xb5,0xb9,0x7a,0xea, + 0x1a,0xe3,0x5a,0xc7,0x75,0xcb,0xeb,0xed,0x7d,0x16,0x7d,0x6d,0x3f,0x58,0xfc,0xd0, + 0xd6,0x6f,0xd9,0xdf,0x7e,0xc3,0xea,0x46,0xe7,0x4d,0xeb,0x9b,0x5d,0x3,0xcb,0x7, + 0xce,0xe,0x3a,0xc,0x5e,0xb8,0xe5,0x7a,0xeb,0xf2,0x6d,0xaf,0xdb,0xd7,0xef,0xac, + 0xbc,0x33,0x30,0x14,0x32,0x74,0x77,0x38,0x72,0x78,0xe4,0x2e,0xfb,0xee,0xe4,0xbd, + 0xa4,0x7b,0x2f,0xef,0x67,0xdc,0x9f,0x7f,0xb0,0xe9,0x21,0xfa,0x61,0xe1,0x23,0xa9, + 0x47,0xe5,0x8f,0x95,0x1e,0xd7,0xfd,0xa8,0xf7,0x63,0xeb,0x88,0xe5,0xc8,0x99,0x51, + 0xd7,0xd1,0xbe,0x27,0x41,0x4f,0x1e,0x8c,0xb1,0xc6,0x9e,0xff,0x94,0xfe,0xd3,0x87, + 0xf1,0xfc,0xa7,0xe4,0xa7,0xe5,0x13,0xaa,0x13,0x8d,0x93,0x66,0x93,0xa7,0xa7,0xdc, + 0xa7,0x6e,0x3e,0x5b,0xfd,0x6c,0xfc,0x79,0xea,0xf3,0xf9,0xe9,0x82,0x9f,0xa5,0x7f, + 0xae,0x7e,0xa1,0xfb,0xe2,0xbb,0x5f,0x1c,0x7f,0xe9,0x9b,0x59,0x35,0x33,0xfe,0x92, + 0xff,0x72,0xe1,0xd7,0xe2,0x57,0xf2,0xaf,0x8e,0xbc,0x5e,0xf6,0xba,0x7b,0xd6,0x7f, + 0xf6,0xf1,0x9b,0xe4,0x37,0xf3,0x73,0x85,0x6f,0xe5,0xdf,0x1e,0x7d,0xc7,0x78,0xd7, + 0xfb,0x3e,0xec,0xfd,0xc4,0x7c,0xe6,0x7,0xec,0x87,0x8a,0x8f,0x7a,0x1f,0xbb,0x3e, + 0x79,0x7f,0x7a,0xb8,0x90,0xbc,0xb0,0xf0,0x1b,0xf7,0x84,0xf3,0xfb,0xe2,0xe6,0x1d, + 0xc2,0x0,0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x12,0x0,0x0,0xb, + 0x12,0x1,0xd2,0xdd,0x7e,0xfc,0x0,0x0,0x14,0x30,0x49,0x44,0x41,0x54,0x68,0x43, + 0xdd,0x59,0x79,0x5c,0xcd,0xeb,0xb7,0xde,0xe7,0xe0,0x98,0xa7,0x8e,0x29,0x53,0x42, + 0x22,0x47,0x21,0x91,0x21,0x9b,0x34,0x47,0xa5,0xda,0x4a,0xa5,0x92,0x6,0x49,0x9a, + 0x35,0xa0,0x9d,0x24,0x94,0xa8,0x48,0xb3,0x34,0xa1,0x89,0xcc,0x19,0x2a,0x2a,0x9, + 0x11,0x95,0xa4,0x51,0x44,0x49,0x29,0x73,0x29,0x3d,0x77,0x7d,0x77,0x72,0x71,0x7e, + 0xe7,0xc4,0xe5,0xde,0x3f,0xee,0xf7,0xf3,0x59,0x76,0xdb,0xfe,0xee,0xf7,0x7d,0x9e, + 0x67,0x3d,0x6b,0xbd,0x6b,0xef,0xcd,0x62,0xfd,0xff,0xbd,0x26,0xf6,0x54,0xd6,0xf, + 0x1c,0xb5,0x4c,0xcf,0x5f,0x70,0x9e,0xa,0x77,0x24,0xf1,0xfc,0xe3,0xff,0x82,0xab, + 0x57,0x44,0xfa,0x88,0xac,0x9c,0x62,0xd5,0xfc,0xe2,0x47,0xae,0xf7,0x4a,0x6b,0x2, + 0x8a,0x4a,0x6b,0x2,0xef,0xde,0xab,0xde,0x71,0xed,0x56,0xa5,0xf6,0xc1,0x23,0x37, + 0xc6,0x74,0x89,0x21,0x24,0xf2,0x8a,0x7c,0xea,0xd5,0x7,0xa1,0xb7,0xf2,0xab,0xf2, + 0x8a,0xcb,0x6b,0xab,0xef,0x97,0xd5,0xd4,0xe5,0x17,0x55,0x3f,0x4e,0xcf,0xbe,0x7f, + 0x3b,0x36,0x29,0x3b,0xc2,0x7e,0xeb,0x11,0xd5,0xff,0xd,0x32,0x5c,0xbf,0xb3,0x3, + 0xf2,0xa,0xaa,0xdc,0x9f,0xd6,0x36,0x55,0xbd,0x6f,0x1,0xda,0x1,0xb4,0xd2,0x3f, + 0xef,0xe8,0xef,0x97,0x6f,0x81,0x67,0xd,0x6d,0x28,0xa9,0x78,0xf1,0xf4,0xea,0xcd, + 0x2a,0x2f,0xae,0x4f,0xa,0xdf,0xdf,0x88,0xac,0xdf,0x14,0x27,0x78,0xed,0xd6,0xc3, + 0xe3,0x75,0xd,0x74,0xf7,0xbf,0x5c,0xa5,0x55,0xd,0x88,0x4a,0xca,0x4e,0x53,0x33, + 0xd8,0x2d,0xde,0xa5,0x1a,0xdf,0x79,0x43,0x74,0xd2,0x15,0xfe,0xca,0x47,0xcf,0x33, + 0x3a,0xb7,0x65,0xc0,0x33,0x24,0x9a,0x5e,0x7d,0xc4,0x93,0x67,0x2d,0x28,0xab,0x7a, + 0x8b,0x7,0xe5,0xaf,0x51,0xfe,0xb8,0x5,0xb5,0xd,0x40,0x46,0x4e,0xe5,0xd,0x3d, + 0x63,0x7f,0xc1,0xcf,0xcb,0xbb,0xef,0x4d,0x15,0x2e,0x2a,0xab,0x2d,0xfe,0x27,0xdc, + 0xad,0x1f,0x69,0xc1,0x66,0xe0,0xcd,0x7b,0xa0,0xa5,0xb5,0x43,0x99,0xc4,0x33,0xb9, + 0xb5,0xcb,0xd,0xbd,0x25,0xbe,0x13,0xe3,0x3f,0xde,0xc6,0xe1,0xc4,0x77,0x2b,0x2e, + 0xaf,0x39,0xfc,0x8f,0x7b,0xb7,0xb5,0xa3,0xa1,0xe9,0x3,0x8a,0xcb,0x5f,0xe1,0xce, + 0xbd,0x6,0xdc,0xcc,0xaf,0x47,0x75,0x1d,0x10,0x14,0x99,0x9a,0xc1,0x62,0x8d,0xee, + 0xcd,0x12,0x11,0xe1,0xfe,0x91,0x7b,0xe7,0x51,0xfa,0x97,0xec,0xbf,0x5d,0xac,0x9d, + 0x0,0x37,0x7f,0xa0,0x54,0xbe,0x6,0xea,0x9b,0x3e,0xa2,0xbe,0xb1,0xd,0xef,0xe9, + 0xb9,0x6f,0xe8,0xf9,0x6c,0x7e,0xfe,0xa5,0x7d,0x7e,0x86,0x44,0x4a,0x6a,0x81,0x58, + 0x63,0x13,0x63,0x94,0x7f,0xbe,0x88,0x3,0x91,0xf8,0x88,0xfc,0xfb,0x8d,0xb8,0x71, + 0xa7,0xe,0xb7,0xa,0x1b,0x91,0x79,0xe3,0x11,0x14,0x74,0xb9,0x7a,0xac,0xb8,0xe4, + 0x3c,0xe5,0xb7,0xef,0xdb,0x78,0xef,0xfe,0xc8,0xe4,0xee,0x5f,0x2e,0x26,0xb,0xcf, + 0x5f,0xb4,0xa2,0xa6,0xae,0x85,0x16,0x6c,0x47,0xd6,0x8d,0x72,0x2c,0x5d,0xbd,0x8b, + 0xfd,0x33,0x4,0x6e,0x17,0x3e,0xd6,0xfc,0x76,0xcb,0xe6,0x96,0x36,0x30,0xd1,0x42, + 0xa9,0x6f,0x7a,0xd5,0x4a,0x35,0xd0,0x4e,0x35,0xc0,0x64,0xe1,0x25,0x6e,0xdc,0xad, + 0x43,0xd6,0xcd,0x67,0x28,0x78,0xf0,0x1a,0x1b,0xb6,0x84,0x44,0xb1,0xb2,0x6f,0x56, + 0xec,0x60,0x16,0x60,0x6c,0x41,0x4e,0xe1,0x5d,0xef,0xde,0xb7,0xe2,0xf5,0x9b,0x16, + 0xb4,0x11,0xa3,0xa6,0x97,0x2d,0x68,0x6d,0xfb,0x88,0x37,0x6f,0x3f,0xe0,0xd5,0xeb, + 0xf,0x78,0xde,0xd0,0xca,0xf3,0x65,0x75,0x6d,0xb,0x4a,0x2a,0x9b,0x60,0xee,0x14, + 0xbe,0xfa,0x67,0x8,0xe4,0xe6,0x3f,0x5a,0xfe,0xad,0x6e,0x91,0xf1,0x99,0x8,0x8c, + 0xbc,0x80,0xec,0xdc,0x4a,0x6c,0xda,0x71,0x14,0x77,0x8a,0x6a,0x61,0xef,0x16,0x8d, + 0x2b,0xd7,0x2a,0x49,0xfd,0x6,0x64,0xdc,0xa8,0x41,0x51,0xd9,0x3b,0x38,0x6e,0xd, + 0x3f,0xce,0xba,0x71,0xb7,0xca,0xaf,0x93,0x40,0xe7,0x42,0xd1,0x89,0x57,0xe1,0xbe, + 0x3b,0x1e,0xf,0x1f,0x37,0xc0,0xcc,0x21,0x4,0xa5,0x15,0x35,0xf0,0xa,0x38,0x85, + 0x83,0x87,0x53,0xc9,0x46,0xed,0x78,0x5c,0xd3,0x8c,0xc7,0x4f,0x9b,0x51,0x54,0xca, + 0xbc,0x1e,0xa6,0xfb,0x33,0x4,0xce,0x5c,0x28,0x9b,0xf6,0xf2,0x75,0x33,0x55,0x57, + 0xc7,0xc5,0xd8,0xf5,0x76,0xc1,0x43,0xe4,0x15,0x3c,0x62,0xba,0xe,0x52,0xd2,0xa, + 0xa8,0x88,0x5f,0x21,0xf1,0xd4,0x4d,0xdc,0x2d,0xaa,0x47,0x6e,0x41,0x3d,0xb2,0x6f, + 0xd5,0x21,0xbf,0xb8,0x9,0x7a,0x66,0xdb,0xbd,0x58,0x97,0x32,0x1f,0xac,0xe7,0xbd, + 0xf1,0x53,0x30,0x7f,0x17,0x97,0x3e,0xc6,0xdd,0xc2,0x72,0x52,0xbd,0x19,0x57,0xae, + 0xde,0xc5,0x7b,0x6a,0x9,0xb9,0x77,0x4a,0x50,0xf1,0xf0,0x29,0x59,0xa7,0xd,0x55, + 0xd5,0xef,0x28,0xb,0x1f,0xc8,0x87,0xa5,0xad,0xa,0x2b,0x3c,0x7f,0xaa,0x90,0xd9, + 0xec,0xf4,0xee,0xf9,0x45,0x4f,0x2e,0x31,0xfb,0x52,0xa2,0xf1,0x8e,0x6c,0xfa,0x81, + 0x1c,0xfd,0x96,0x28,0x31,0xbe,0x6f,0x68,0x2,0x1e,0x3d,0x7d,0x8f,0xea,0x67,0xad, + 0x24,0x58,0x13,0x72,0xf2,0x9e,0xa1,0xe2,0x71,0x1b,0x62,0x13,0x33,0x5a,0x86,0x8c, + 0x5c,0x32,0x83,0xe5,0x1d,0x96,0x2a,0x50,0x5d,0xdb,0xf4,0xbc,0x93,0xc4,0xbf,0x57, + 0x1,0x8,0x78,0x33,0x2a,0x1f,0xbd,0xc5,0xcb,0x37,0x40,0x68,0xec,0xe5,0xd4,0x9f, + 0x51,0xbf,0xf3,0xbd,0x3e,0xe1,0xa9,0x62,0xf,0x2a,0x6a,0x5f,0x30,0x7b,0x33,0xeb, + 0xd6,0xbd,0x68,0x43,0xcd,0xf3,0x16,0xca,0xf4,0x7b,0x2,0x4b,0x2d,0xb4,0xe2,0x15, + 0xa,0x4b,0x5e,0xf2,0x8a,0xf8,0xe1,0xd3,0x36,0x5c,0xbf,0xfd,0x8,0x6a,0x5a,0xb6, + 0x4e,0x9f,0xf7,0x4e,0x49,0x2d,0x34,0x79,0x47,0x45,0xd3,0xd5,0xd5,0xf8,0xaa,0x8d, + 0xd4,0x68,0xc6,0x2b,0xda,0x24,0xfd,0x5a,0xc9,0x2b,0x15,0xd,0xb,0xb,0xe,0x47, + 0x63,0x85,0x96,0x91,0x99,0xbd,0x9a,0xb6,0xae,0xde,0xf2,0xb9,0xa2,0x7f,0xfd,0xf, + 0x8,0xf5,0xa6,0xf7,0xc,0xd0,0xb7,0xdb,0xab,0x78,0xed,0x56,0xe9,0x9d,0x97,0xaf, + 0xa9,0xfe,0xe8,0x28,0x6a,0xa2,0x8e,0xf7,0xb4,0xee,0x23,0xed,0xf7,0x81,0xd4,0xff, + 0x88,0xe7,0x8d,0x1d,0xcf,0x4f,0xa7,0xdc,0x6c,0xe4,0xe8,0x6d,0xb6,0xf9,0xdb,0x3e, + 0x97,0x32,0xef,0x5b,0x35,0x34,0xbe,0x25,0x68,0xff,0xf9,0x6a,0xa6,0x46,0x57,0x47, + 0x5,0x5c,0xd7,0xd0,0x8c,0x73,0xe9,0x79,0x6d,0x86,0x56,0xae,0xd,0x4e,0xfe,0xc1, + 0xb5,0xbe,0x29,0xd9,0xf0,0x4a,0xcb,0x83,0x59,0xec,0x79,0x68,0xef,0x8,0x78,0xab, + 0xb6,0xda,0xec,0xa8,0xd2,0x8c,0xa9,0x53,0xba,0x22,0x22,0x29,0x29,0x39,0xcd,0xc4, + 0xd0,0x32,0xd0,0xda,0x84,0x9b,0x6f,0xa4,0xe9,0x50,0xa1,0xb8,0x40,0xfb,0xa4,0x96, + 0xbe,0x73,0x62,0x4b,0x4b,0x3b,0x65,0xb8,0x1e,0xd7,0x6e,0x95,0xd4,0xdc,0x2e,0xa8, + 0x7a,0x7f,0xeb,0x6e,0x65,0xdb,0xf5,0xdb,0xe5,0x4d,0xa7,0x53,0xae,0xe7,0x6f,0xf3, + 0x8a,0xdc,0xd3,0x77,0xf8,0xdc,0x7f,0x16,0x29,0xe2,0x68,0xa6,0x64,0xfe,0xfd,0xea, + 0xc3,0x35,0xcf,0x9a,0xea,0x99,0xbe,0xdf,0x79,0x31,0x5d,0xba,0x96,0xda,0x18,0xf3, + 0x7f,0x69,0x57,0x4b,0x5a,0xd,0xed,0xb7,0xbd,0x9,0xbf,0x7c,0x1d,0x67,0xc9,0x9b, + 0x89,0x55,0x6f,0x10,0x59,0xd2,0x80,0x2d,0x57,0xcb,0x60,0x9c,0x52,0x88,0xd5,0x9, + 0x57,0xa0,0xbc,0xce,0xee,0x89,0xf4,0xec,0x99,0x52,0xff,0x44,0x42,0x59,0x5e,0x59, + 0xc5,0xd1,0x72,0x5b,0xc3,0x21,0xdf,0x33,0xf0,0xdb,0x12,0xf,0x27,0x83,0x0,0x38, + 0x98,0x5,0xe0,0x7c,0x5a,0x2e,0x2e,0x66,0xdd,0x6a,0xd7,0x5f,0xbf,0xdd,0x85,0xc5, + 0x1a,0x3f,0x56,0x79,0x85,0xa3,0x98,0xe6,0x4a,0x97,0xd9,0x7f,0x8e,0x93,0x17,0xa6, + 0xb5,0x98,0x4c,0x7d,0xdf,0x65,0xbf,0xed,0xc8,0x84,0x84,0x13,0x37,0x55,0xcf,0x5c, + 0xba,0x6b,0x75,0xe2,0x42,0x9e,0x63,0x74,0x52,0xb6,0xb1,0xef,0xc1,0xb,0x3a,0xa9, + 0xd9,0xf,0x8b,0x6e,0xe7,0xd7,0x61,0x7f,0xec,0x65,0xa4,0x3f,0x79,0x8b,0x4b,0x4f, + 0xdf,0xe0,0xd4,0xc3,0x46,0x24,0x96,0x37,0x20,0xf8,0x6e,0x35,0x2c,0xcf,0xdd,0x81, + 0xf1,0xb9,0x3c,0xe8,0x27,0x66,0x42,0x4e,0xdf,0xb8,0x8a,0x2d,0x2c,0x3c,0xee,0xdb, + 0x1d,0xa5,0xa5,0x17,0x88,0x3a,0xac,0x77,0x6b,0x3c,0x1d,0x93,0x8d,0xe3,0x87,0xae, + 0x60,0xb7,0x73,0x14,0x36,0x1a,0xef,0x83,0xf5,0x86,0x7d,0x70,0xa1,0x8e,0xa7,0x22, + 0x6f,0xdf,0x3e,0x53,0x54,0xca,0xfe,0xfb,0x90,0xfe,0xe0,0x5d,0x9a,0x6b,0x6c,0xb5, + 0xe,0x24,0xa6,0x23,0x36,0x25,0x1f,0xe1,0x67,0x73,0x51,0xfa,0x92,0xa,0x9a,0x6a, + 0x27,0xff,0xf5,0x47,0x64,0xd5,0x7f,0x80,0x6f,0xde,0x63,0xb8,0x64,0x14,0xc3,0xee, + 0x72,0x11,0xf4,0x82,0x13,0xb0,0x60,0x91,0x4c,0xe4,0xb7,0x5b,0xe8,0x6a,0xeb,0x1f, + 0x3f,0x7f,0xec,0x1a,0xee,0xe5,0x3e,0x44,0xd6,0xf9,0x7c,0x4,0xef,0x3c,0x6,0x3f, + 0xb7,0x23,0xd8,0x61,0x77,0x10,0x8e,0x6,0xfe,0xb0,0x59,0xb1,0x7,0xea,0xd2,0xc6, + 0xf5,0x33,0x66,0x4c,0x11,0xf8,0x41,0x78,0x5d,0xdf,0x6e,0x61,0xef,0x10,0x76,0xee, + 0x41,0x35,0xaa,0x5e,0xbd,0xc7,0x13,0xaa,0xaa,0xe6,0xb6,0x36,0x30,0xad,0xa3,0x84, + 0x5a,0xde,0x8d,0x97,0x1f,0x71,0xb0,0xb8,0xe,0x6e,0xd9,0x65,0x14,0x25,0x70,0xce, + 0x28,0x82,0xe2,0x6a,0xf3,0x77,0x12,0x82,0x23,0x27,0x75,0xae,0xac,0xa8,0xa8,0x28, + 0xeb,0xb5,0xdd,0xef,0x5d,0x41,0x4e,0x25,0xf2,0x73,0xca,0x70,0x21,0xe9,0x3a,0xf6, + 0x6f,0x8b,0x87,0x2f,0xf7,0x30,0xbc,0x9d,0x23,0xb1,0xdd,0x2a,0x1c,0xae,0x66,0x41, + 0x30,0xd3,0x70,0xc3,0xc2,0xf9,0x4b,0x74,0xba,0x46,0xf4,0x3,0x77,0x88,0xd0,0xe7, + 0x81,0x3d,0xe1,0x51,0xc5,0xcf,0xbe,0xa8,0x71,0xa6,0x4c,0x6a,0xa8,0x77,0x17,0xbd, + 0x3,0xae,0xd1,0x7c,0x14,0x53,0xfa,0x2,0xdc,0xab,0xa5,0x70,0xcd,0x2a,0x6,0x37, + 0xfb,0x1,0x4c,0xa3,0x4e,0x42,0x52,0x5e,0x31,0x81,0x2d,0x20,0xd0,0x8b,0xd9,0x4a, + 0x4f,0x4f,0xef,0xd2,0x89,0x84,0x8b,0xc8,0x49,0x2b,0xa2,0xb8,0x87,0xa4,0x43,0xe9, + 0xf0,0xe3,0x1e,0x81,0xcf,0xa6,0x68,0xec,0x74,0x88,0x80,0xfb,0xfa,0x50,0x70,0xcd, + 0x2,0x61,0xa5,0xe5,0x8d,0xc5,0x12,0xea,0x9,0x13,0x15,0x26,0xf6,0xfc,0x1,0x88, + 0xff,0x7e,0xeb,0xd2,0x15,0x2b,0xd4,0x4c,0x3,0xc2,0xdf,0x14,0xd3,0x48,0x4a,0x1d, + 0xe,0x4c,0xbb,0xa2,0xc9,0x16,0x95,0xc4,0xe2,0x2e,0x9d,0xce,0x19,0x64,0xa1,0xc3, + 0x65,0x8d,0x1d,0x4,0x32,0x8b,0x29,0x8a,0x60,0x72,0x26,0x7,0xd3,0x34,0x75,0x31, + 0x7b,0xe2,0x44,0x49,0x66,0x75,0x7d,0x7d,0xfd,0xab,0x27,0x8e,0x5e,0xc2,0xe5,0xd3, + 0x79,0xb8,0x7c,0x26,0xf,0x31,0x1,0xe7,0x78,0xe0,0xbd,0x9c,0x48,0x7d,0xeb,0x70, + 0xb8,0xad,0xb,0xc6,0x66,0x93,0xfd,0xb0,0x5f,0xe5,0xb,0xd,0x29,0x4b,0x88,0x4f, + 0x9f,0x2f,0xfb,0x4b,0x8,0x98,0x72,0x64,0x6,0xaa,0x3b,0x73,0x8b,0x56,0x27,0xa5, + 0x61,0xdf,0xf5,0x7b,0xa8,0xa6,0x23,0xe3,0x11,0x8d,0xd5,0x15,0x4,0xbe,0x90,0x7a, + 0x76,0xe,0x9d,0xce,0x97,0x6a,0x9b,0x11,0x5b,0xda,0x8,0xb7,0xab,0x25,0xd8,0x92, + 0x79,0x9f,0xa2,0x8,0x6,0x49,0x57,0x20,0xa4,0xaa,0x85,0xe9,0x93,0x27,0xf2,0x80, + 0x68,0x6a,0x6a,0xee,0x8c,0xe,0x3a,0x8e,0xf3,0x9,0x39,0x48,0x49,0xb8,0x86,0xb0, + 0xdd,0xc9,0xd8,0xb5,0x31,0x2,0x9e,0xb6,0x7,0x49,0xfd,0x10,0xb8,0x9a,0x1e,0xc0, + 0x26,0xe3,0xfd,0xd8,0x65,0x7f,0x8,0xeb,0x34,0xb7,0x63,0x8e,0x98,0xcc,0x4f,0xcd, + 0x59,0x9f,0xc9,0xeb,0xaa,0x28,0x88,0xac,0xd,0x3c,0xf4,0x3a,0x9e,0x5a,0x66,0xc4, + 0xbd,0x6a,0xdc,0x21,0xc5,0xb,0x8,0x38,0xf3,0x98,0xd3,0xf8,0x11,0xa9,0x34,0x9d, + 0x9e,0x7a,0xfc,0xe,0x51,0xd4,0x4e,0xb9,0x59,0xf,0xb0,0x99,0xfc,0xbf,0x39,0xe3, + 0x1e,0xf4,0xe,0x5f,0xc4,0x14,0x69,0xc5,0x6,0x91,0xd1,0xa3,0x27,0x32,0x8b,0x2d, + 0x94,0x5e,0xb8,0x6c,0x8f,0x47,0x30,0x4e,0x45,0x67,0x22,0x39,0xea,0x32,0xe,0x78, + 0x24,0xc0,0xc3,0x2a,0xac,0x3,0xfc,0xda,0x40,0xb8,0xac,0x21,0xf5,0xf5,0x7d,0xe1, + 0xed,0x18,0x3,0xb,0xdd,0xad,0x2d,0x33,0xa7,0x49,0xce,0xfc,0x25,0x19,0x58,0x26, + 0x2b,0x25,0x68,0x7f,0xf0,0xc8,0x8b,0x23,0xf,0x5f,0x21,0xa1,0x82,0xa6,0x41,0xb2, + 0x4b,0xd6,0x8b,0xf,0xb8,0xf2,0xfc,0x3,0x2e,0x92,0xf2,0x27,0x9,0x7c,0xe2,0xc3, + 0xd7,0x38,0x74,0xbf,0x8e,0xac,0x73,0x9f,0xc0,0x17,0xc2,0x29,0x3d,0x1f,0x3a,0x61, + 0xc7,0x30,0x63,0xfe,0x82,0xf3,0x4,0xe2,0x37,0x6,0xc8,0xbc,0x79,0xb3,0x84,0xad, + 0xd6,0x3a,0xbe,0x4e,0x8,0x4d,0xc7,0xd1,0xe0,0x8b,0xf0,0xe7,0xc6,0xc1,0xcd,0x3c, + 0x88,0xa,0xf7,0x0,0x81,0xdf,0x7,0x47,0x43,0x7f,0x98,0xa9,0x7a,0x42,0x4f,0xd6, + 0x9,0x4a,0x32,0xea,0xae,0xbf,0x4,0x3c,0xb3,0x8,0x87,0xc5,0xea,0x66,0xe9,0xe9, + 0x7d,0x2c,0xa2,0xa8,0x1a,0xf1,0x95,0x8d,0x38,0x4d,0xc3,0xdc,0x19,0x8a,0x93,0xd5, + 0x6f,0x71,0x8c,0x3e,0xee,0x25,0xd0,0xac,0x12,0x57,0xde,0x88,0xb0,0x7b,0x4f,0x79, + 0xca,0x6f,0xbe,0x5c,0x80,0xd,0x29,0xb7,0xa0,0xb1,0x3b,0xc,0x7f,0x89,0xfe,0x15, + 0xf0,0x5,0x90,0xdf,0x54,0x97,0xaa,0x27,0xf8,0x6e,0x8d,0x41,0xf4,0xfe,0x14,0xf8, + 0xbb,0xc5,0x61,0x13,0xa9,0xce,0x3,0xbf,0xda,0x1f,0xeb,0x39,0xbb,0xa0,0xcb,0x76, + 0xc5,0x22,0x31,0x8d,0x27,0xac,0xfe,0xac,0x3f,0x7f,0x19,0x1,0x66,0x21,0xa5,0xc5, + 0x8b,0x5,0xec,0xbc,0xfd,0xcb,0x18,0xa5,0xe3,0x2b,0x5f,0x22,0xbe,0xa2,0x23,0x8e, + 0x96,0x37,0xe1,0x48,0xd9,0xb,0xea,0x40,0xcf,0x10,0x78,0xf7,0x21,0x36,0x5d,0x2e, + 0xc4,0xc6,0x4b,0x79,0x30,0x3e,0x71,0xd,0xb2,0x1b,0x9c,0x21,0x3c,0x76,0xf4,0xb7, + 0xe3,0xf6,0x28,0xd,0xc5,0x55,0x65,0x9e,0xd4,0xf7,0x7d,0x5c,0x62,0x79,0xaa,0xdb, + 0xe8,0xf8,0xf0,0x94,0xd7,0x92,0x72,0xc6,0x52,0x9,0x93,0x56,0x9,0x51,0xc9,0xb5, + 0xbf,0x14,0x7c,0xe7,0x62,0x54,0x84,0xe,0xfb,0x2f,0xdf,0x42,0x3c,0x59,0xe9,0x70, + 0x69,0x3d,0x15,0xed,0x73,0xc4,0x94,0x3c,0x43,0xf4,0x83,0x1a,0x44,0xdd,0xaf,0x86, + 0xdf,0xed,0x32,0x38,0xa5,0xdd,0x85,0xf9,0xc9,0x6c,0xf2,0xff,0x5,0xcc,0x5c,0xa2, + 0xf0,0x44,0xb0,0x6f,0xdf,0xe1,0x9f,0xde,0xdf,0x57,0x9b,0xa3,0x67,0xc1,0x75,0xf1, + 0xc,0xb2,0x30,0xb3,0x2e,0x58,0xa3,0xe9,0x4,0x5b,0xbd,0xbd,0x58,0xa3,0xbc,0xd, + 0x2b,0x16,0x38,0x41,0x43,0x72,0x23,0x74,0xa5,0x5d,0xb0,0x50,0x42,0xee,0x97,0x4c, + 0xb8,0xff,0x51,0x0,0xd1,0xf1,0xc3,0x87,0xad,0x71,0x76,0xad,0xc,0x2f,0x7a,0x4a, + 0xc0,0x6b,0x11,0x5d,0xfc,0x84,0x7,0xfc,0xd0,0xbd,0x2a,0x44,0xde,0x7b,0x88,0x9d, + 0xd9,0xf7,0x8,0xfc,0x55,0x18,0x26,0x5f,0x85,0x9c,0x3d,0x17,0x13,0xc7,0xb,0x74, + 0x28,0xc9,0xcf,0xea,0x63,0x62,0xb0,0xee,0x54,0xb8,0xdf,0x31,0xa4,0x9f,0xcc,0xc3, + 0x89,0x98,0x4c,0xac,0x92,0xdd,0xc4,0xb3,0x8d,0x3,0x15,0xad,0x85,0xfa,0x4e,0xea, + 0xfd,0xbb,0x61,0xab,0xbb,0x7,0xf2,0x33,0x57,0x37,0x18,0x68,0x6e,0xb8,0xa8,0xaa, + 0xa0,0xe5,0x38,0x60,0x40,0x4f,0x5e,0xf1,0xff,0xd2,0x6b,0xc9,0x2,0xf6,0x52,0x73, + 0xef,0x80,0xc6,0xbd,0x39,0xf7,0x11,0x7c,0xa7,0x1c,0x21,0x77,0xca,0xe8,0xb1,0x14, + 0x7e,0xd7,0xb,0xb1,0xfe,0x54,0x36,0x56,0x27,0x65,0x60,0xd9,0x36,0x5f,0x4c,0x98, + 0x38,0x29,0x89,0x36,0xe6,0x7d,0xe0,0x37,0xd0,0x31,0x30,0xd,0xdb,0x9b,0x80,0xa3, + 0x41,0x69,0x38,0xb8,0xe7,0x14,0xc2,0xbc,0x4f,0xc0,0x4c,0x6d,0x3b,0xd4,0x66,0xdb, + 0x42,0x77,0xb1,0xb,0x56,0xc9,0x6c,0x1,0x67,0xde,0x46,0xc8,0x89,0x98,0xc3,0x58, + 0xd9,0x3,0x47,0xe,0xa4,0x21,0xd8,0xeb,0x38,0x6c,0x4c,0xb8,0xf5,0xb3,0x66,0xce, + 0xde,0x46,0x4b,0x74,0xff,0xa5,0x24,0x96,0xaa,0x6b,0x9c,0xde,0x98,0x9c,0xe,0xd7, + 0xd4,0x5c,0x78,0x90,0xa5,0xb6,0xa7,0xe7,0xc2,0xf1,0x1c,0xd9,0x26,0xee,0x12,0xa4, + 0x7d,0xc2,0xb1,0x58,0xdf,0xb8,0x5d,0xdb,0xd6,0xb1,0x48,0xdd,0xca,0xfe,0xb6,0x98, + 0xac,0x42,0x92,0xc6,0xd2,0x15,0x15,0x89,0x21,0x69,0x88,0xf4,0x3f,0x8b,0x10,0xaf, + 0x64,0x4,0x50,0xfb,0xdc,0xe7,0x7e,0x14,0x5b,0x2d,0x83,0x60,0xa1,0xb1,0x13,0xab, + 0x15,0xdc,0xb0,0x6a,0xc9,0x66,0x98,0x2c,0xdb,0x46,0xc3,0x5d,0xc,0x82,0x3c,0x8f, + 0x21,0x64,0xd7,0x9,0x4,0x6e,0x3b,0xe,0x4d,0x99,0xb5,0x10,0x10,0x10,0x74,0xfb, + 0x59,0x2,0xbf,0x2f,0x59,0xb2,0x64,0x91,0xb5,0xab,0xfb,0x5e,0x9b,0xed,0x3e,0xb9, + 0x6c,0x13,0xfb,0xb7,0x76,0xe7,0xaf,0xc3,0x2c,0xf9,0x32,0xc,0x8f,0x9e,0xc3,0xaa, + 0xd8,0x93,0x90,0xf,0x3e,0x8a,0x69,0x3b,0x3,0xd1,0xc7,0xd0,0x1a,0x73,0xad,0xdd, + 0xe1,0x93,0x93,0xf,0xfb,0x73,0x99,0x90,0xda,0x1b,0x6,0x41,0xcd,0x55,0x58,0xa3, + 0x63,0x85,0x88,0x3d,0x67,0x70,0xc0,0x33,0x11,0x3b,0xe8,0xa0,0x72,0xb7,0xc,0xa5, + 0x8,0xe9,0x18,0x1f,0xd6,0x6,0xc1,0x99,0xba,0x91,0xd,0x59,0xc8,0x4c,0xcd,0x93, + 0x97,0x1d,0xa6,0xa8,0xd,0xe4,0x5c,0xc1,0x99,0xeb,0x88,0x19,0x93,0xa4,0x5e,0xd, + 0x19,0xdf,0x5f,0xe8,0x7f,0x44,0x42,0x6e,0x9,0x5b,0xc1,0xd1,0x63,0x67,0x5a,0x54, + 0x6a,0x56,0x7b,0x76,0xed,0x6b,0xa4,0x3d,0x7a,0x9,0x31,0x43,0x7,0x8,0x19,0xda, + 0x63,0xee,0x16,0x5f,0xcc,0xe2,0xfa,0x42,0xd8,0x79,0x27,0x46,0xac,0xdb,0x84,0x7e, + 0x5a,0xe6,0x18,0xac,0x66,0x8c,0x25,0x1e,0xfb,0xa1,0x71,0x30,0x11,0x73,0x76,0x87, + 0x60,0xd2,0x36,0x7f,0x8c,0xdc,0xe2,0x8d,0xe1,0x6c,0x5,0x70,0x2d,0x7d,0xb0,0xcb, + 0x21,0xa,0x4e,0xe4,0x7d,0xa6,0xfb,0x6c,0xd4,0xf7,0xa3,0x83,0x6b,0x2f,0xec,0xa8, + 0x98,0x19,0xff,0x5b,0xae,0xf0,0x82,0xa9,0xea,0x76,0x18,0x2a,0x70,0xa1,0xbd,0xc8, + 0x19,0x1a,0xf3,0x1c,0xa0,0x3e,0xcb,0x1,0x8b,0xa7,0xae,0xc4,0x18,0x81,0x31,0xee, + 0x3f,0x4c,0x40,0x49,0x56,0xd6,0xd0,0x71,0x87,0x77,0xeb,0x8d,0xfa,0xb7,0xc8,0xa3, + 0xe1,0xe7,0x46,0x7d,0x33,0xae,0xd7,0xbd,0x47,0x1c,0xf9,0x5e,0xcf,0x3b,0xc,0x73, + 0x2d,0xb7,0x42,0xdc,0xc2,0x15,0xe2,0x1b,0xb6,0x62,0x8e,0xbd,0x27,0xa4,0xdd,0x3, + 0xa0,0x1a,0x78,0x14,0x4a,0x21,0x71,0x4,0x3e,0x14,0x7f,0x6d,0xdf,0x87,0x89,0xae, + 0x3e,0xe0,0x77,0xda,0x89,0xbe,0x6,0xeb,0xa0,0x20,0xa7,0x3,0xf,0x8b,0x50,0xde, + 0x89,0xeb,0x6c,0xb4,0xf,0x4e,0x44,0xc2,0xc1,0xc0,0xf,0x76,0xab,0x88,0x80,0xde, + 0x1e,0x58,0xeb,0xec,0x26,0x1b,0x79,0xf0,0x6a,0x62,0x25,0x9b,0x8,0x48,0x3a,0x40, + 0x65,0x86,0x35,0xe4,0xa6,0x9a,0x61,0xc2,0x98,0xa9,0xb7,0x59,0xa3,0x7f,0xe0,0x43, + 0x8d,0xcc,0xc2,0x85,0x42,0xfa,0x66,0xe6,0x8d,0x31,0x77,0xcb,0x71,0xf1,0x49,0x13, + 0x52,0xab,0x1b,0x71,0xb1,0xaa,0x11,0x27,0x2b,0x9e,0x23,0xb1,0xa2,0x9e,0x6,0xb7, + 0x7a,0x3a,0xb8,0x9e,0x90,0x55,0x1e,0xc0,0x35,0x3d,0xf,0xd6,0x67,0xb3,0x61,0x94, + 0x70,0x9,0xcb,0xf,0x1e,0xc3,0x62,0xff,0x48,0x88,0x7b,0x5,0x61,0xf2,0x56,0x5f, + 0x8,0xb8,0xec,0xc2,0x50,0x5b,0x77,0xf4,0x5b,0xe7,0x2,0x41,0x49,0x39,0x38,0x1b, + 0xfa,0x60,0x8b,0x49,0xc0,0x67,0x12,0xcc,0x67,0x0,0x66,0x7c,0xe8,0xcc,0xc2,0x1a, + 0x65,0x77,0x2c,0x9d,0x69,0x45,0xad,0xd5,0x11,0x6a,0xb3,0x6c,0xa1,0x34,0x6d,0x3d, + 0x64,0x85,0xd7,0x41,0x64,0xac,0x64,0xf3,0xd0,0x91,0x7d,0xa6,0x7f,0x77,0x16,0x54, + 0x95,0x95,0x3,0x77,0xc4,0x24,0x22,0x96,0x7a,0x7c,0x44,0xfe,0x43,0x44,0x14,0x54, + 0x21,0x2c,0xbf,0xa,0xa1,0x14,0x21,0xcc,0x63,0xc1,0x63,0xf8,0xdf,0x2c,0x3,0x37, + 0xed,0x36,0x36,0x9c,0xca,0x84,0x61,0xdc,0x5,0xac,0x38,0x74,0x12,0xaa,0x61,0x89, + 0x50,0xa,0x3a,0x2,0xb6,0xdf,0x21,0x22,0xb0,0x17,0xa3,0x9c,0x3c,0xc1,0x67,0xc5, + 0x45,0x7f,0xf3,0x4d,0x18,0xcc,0x56,0x82,0x85,0xe6,0x26,0xb8,0xd1,0xcc,0xef,0x62, + 0x1c,0xd0,0x91,0x85,0xd5,0xfb,0xa8,0x95,0x76,0x64,0xc1,0x46,0xd7,0x87,0x57,0xd0, + 0x8b,0x26,0x18,0x43,0x4d,0xc2,0xe,0x2a,0x33,0xad,0xa1,0x20,0xb2,0xe,0xd2,0x42, + 0x6b,0x31,0x43,0x40,0x11,0xc3,0x86,0xd,0x36,0xfe,0x2e,0x2,0xa,0x6c,0xf6,0x68, + 0x3d,0x23,0xe3,0xe7,0x7,0x73,0x1f,0x20,0xfa,0xde,0x63,0x44,0x12,0xf8,0x83,0x14, + 0xe1,0xf4,0x65,0x53,0x18,0x5,0xf3,0xb8,0xef,0x56,0x39,0x6c,0xcf,0x90,0xea,0xf1, + 0x17,0xa0,0x13,0x7d,0x9a,0xc0,0x9f,0x20,0xdf,0x27,0x63,0x79,0x58,0x12,0x54,0x43, + 0x13,0xa0,0x12,0x1a,0x8f,0x79,0x3e,0x61,0x18,0xe7,0x42,0xf5,0x61,0xb3,0x15,0xfd, + 0x4c,0x9d,0xd0,0x6b,0x89,0xa,0xf4,0x95,0x2d,0xb1,0xd5,0x3c,0x84,0xc6,0xe6,0x2f, + 0xb2,0xc0,0xb3,0x92,0x2f,0xac,0xb4,0x77,0x43,0x8f,0xba,0xd1,0xfc,0x31,0x86,0x50, + 0x16,0xb5,0x84,0xb2,0x98,0x25,0x64,0x84,0xd7,0x62,0xd1,0x78,0x13,0x48,0x8c,0x56, + 0xc7,0xf0,0xe1,0x23,0x42,0xbf,0x8f,0x80,0xb4,0xf4,0x1a,0xfb,0x5d,0x7b,0x10,0x5b, + 0x5c,0x83,0xc8,0xc2,0x2a,0x9e,0xfa,0x9d,0x4,0xc2,0xb,0x1f,0x53,0x16,0x1e,0xc1, + 0xe1,0x5c,0xe,0x56,0x1d,0x39,0xb,0xbd,0xd8,0xb3,0x58,0x19,0x75,0xa,0x1c,0x22, + 0xa0,0x7e,0xf0,0x38,0x2f,0x3,0xcb,0x42,0xe2,0xa1,0x1c,0x74,0x14,0x72,0x1,0x31, + 0x98,0xb4,0x65,0x37,0x84,0x9c,0x77,0xa0,0xaf,0x91,0x1d,0x7a,0xc8,0x2d,0xc7,0x72, + 0x59,0x23,0x6c,0x5b,0x17,0xc2,0xb3,0x11,0x33,0x3a,0x33,0x73,0x10,0x93,0x85,0x8d, + 0x64,0x25,0x13,0x15,0xf,0x68,0x2f,0x74,0xc6,0x1c,0xfe,0x55,0x90,0x27,0xe5,0x15, + 0xa7,0x5a,0x90,0xfa,0xa6,0x58,0x28,0x60,0x84,0xd9,0xfc,0x5a,0x18,0x39,0x64,0x5c, + 0x26,0x11,0xf8,0xbd,0x4b,0x12,0x2a,0x4b,0x97,0x26,0xfb,0x9c,0xb8,0x80,0x98,0xfb, + 0x4f,0xbe,0x52,0x9f,0x51,0x3e,0xe0,0x76,0x39,0xfc,0x73,0xcb,0x60,0x76,0x2c,0xd, + 0xfa,0x47,0x53,0xa0,0x17,0x73,0x16,0xda,0x44,0x40,0x33,0xe2,0x4,0x96,0x87,0x1f, + 0x23,0xe5,0x13,0xb0,0x34,0x38,0xe,0x8a,0x81,0x47,0xa0,0x10,0x18,0x8b,0xc9,0xae, + 0x7b,0x30,0xdd,0xcd,0x7,0x3,0x8d,0x6c,0xd1,0x5d,0x41,0x13,0xf2,0xd2,0x3a,0xd8, + 0xb1,0xe1,0x10,0xb6,0xae,0x65,0xe6,0xff,0x40,0x22,0x11,0xc0,0xeb,0x4a,0x16,0x1a, + 0xbb,0xe8,0x2c,0xd8,0x2,0x4d,0x3a,0xd0,0x66,0xd,0xd3,0x83,0xec,0xe4,0xb5,0x90, + 0x9b,0x62,0x4e,0xea,0x1b,0x63,0xfe,0x68,0x3,0x48,0xc,0xd3,0xc5,0x48,0xbe,0x9, + 0xe5,0xfd,0xbb,0x1a,0xf2,0xd8,0xe2,0xe2,0x43,0xb4,0xf5,0xd,0xab,0xc2,0x72,0xa, + 0x79,0xf6,0x39,0xf4,0xa5,0xfa,0x44,0xc0,0x89,0xf9,0x1e,0x28,0xbb,0x8,0xa6,0x49, + 0xa9,0x58,0x75,0xf8,0x5c,0x87,0x7d,0x22,0x4f,0xf2,0xec,0xa3,0x16,0x9e,0xf4,0x49, + 0xfd,0x38,0x28,0x1c,0x38,0xcc,0x23,0x20,0x42,0x4,0xc4,0xe9,0x64,0x1e,0x61,0xe6, + 0x88,0x6e,0xf2,0x5a,0x18,0x2f,0x3c,0xfd,0xb5,0xae,0x8a,0x59,0xeb,0x7a,0x1d,0x77, + 0x2a,0xde,0x3d,0x54,0xbc,0x7e,0x34,0x4a,0x78,0x63,0x8d,0xc2,0x36,0x22,0xc0,0x85, + 0xfa,0x1c,0x7,0xcc,0x1a,0xaa,0xc3,0x2b,0x5c,0x26,0xd8,0x82,0xa6,0x98,0xc7,0xbf, + 0x1a,0xd3,0xff,0xe4,0x60,0xd8,0x60,0x81,0x17,0xbd,0x6,0xb3,0xc6,0xfe,0x6b,0x6, + 0xa4,0x17,0xce,0x93,0x32,0xb1,0x71,0x68,0xe3,0x79,0xff,0x93,0x7d,0x18,0xe5,0x99, + 0x8,0xba,0x53,0x9,0x93,0xb8,0xb3,0xf0,0xcc,0x2c,0x80,0x19,0x7d,0x3a,0xd3,0x25, + 0xfb,0x30,0xea,0x77,0xda,0x47,0xe5,0x93,0x7d,0x14,0xa9,0x95,0xca,0x1f,0x88,0xa5, + 0x2c,0x10,0x81,0xcd,0xbb,0x31,0x75,0xb3,0x17,0x4,0xad,0x5d,0xf1,0xbb,0xa2,0xe, + 0xfe,0x1c,0x3b,0x25,0x45,0x43,0x56,0xc7,0x42,0x76,0xc1,0xb2,0x50,0x99,0x5,0x6a, + 0x69,0x72,0xf3,0x35,0xf2,0x64,0x24,0x39,0xf7,0xa5,0x67,0x6b,0x16,0xcd,0x9f,0xbe, + 0xec,0xb6,0xc4,0x64,0x99,0x54,0xe1,0x11,0xf3,0x93,0xc5,0x4,0xa5,0xaf,0x88,0x9, + 0x2c,0xb9,0x35,0x95,0x9f,0x5d,0x38,0x71,0xe8,0xdc,0xfc,0x51,0x7c,0xc2,0x59,0x7c, + 0x83,0xf8,0xe8,0xfb,0xa2,0x2e,0x7e,0xab,0x93,0x95,0x96,0xb6,0xd8,0xe8,0xb3,0x1f, + 0x31,0xc5,0x4f,0xbf,0x56,0x9f,0xbc,0xef,0x9f,0x5b,0xa,0xdd,0xa8,0x63,0x70,0xbf, + 0x9c,0x87,0x75,0xc9,0x57,0x78,0xea,0x6b,0x31,0xea,0x47,0x30,0xea,0x7f,0x6d,0x1f, + 0x79,0xf2,0xbf,0x52,0xe0,0x61,0x4c,0xb0,0xf7,0x80,0xa0,0x9d,0x3b,0x44,0xe9,0x30, + 0xfb,0x6d,0x8e,0xc,0x86,0x8c,0x98,0x10,0x1b,0xef,0x91,0x35,0x7d,0xf7,0x86,0x78, + 0xf1,0x2d,0xc6,0x7,0xc4,0x2d,0x75,0x3d,0x24,0xd7,0xa8,0xdb,0xcf,0x37,0x52,0xb3, + 0x9f,0xcb,0x91,0xdb,0x20,0xbe,0x6c,0xbe,0xf5,0x54,0x71,0x7e,0x83,0xc9,0x72,0xe2, + 0xeb,0x27,0x2f,0x14,0xd6,0x9c,0x26,0x21,0xa0,0x34,0x7d,0xc6,0x28,0x5,0xd1,0xe9, + 0xa3,0x64,0x84,0x4,0x4,0x4,0x6,0x75,0xe9,0x7f,0x19,0x69,0xe9,0x70,0xcf,0x23, + 0xc9,0x3c,0x2,0xdf,0x16,0xef,0x9e,0x9c,0x62,0x68,0x86,0x1d,0x85,0xcb,0x85,0x1b, + 0xb0,0xa2,0xd6,0xb9,0xf2,0x73,0xf7,0x61,0x8a,0x97,0xec,0x43,0x9d,0x47,0x39,0xe8, + 0x93,0x7d,0x28,0x3,0xb2,0xfb,0xa2,0x30,0x94,0xfa,0x3f,0x1f,0x67,0xd,0xf8,0xe7, + 0x2d,0xaa,0x61,0xf5,0x1b,0x7c,0x68,0xdc,0xb8,0xa9,0xf2,0x1e,0x16,0x7,0x67,0xba, + 0x98,0xec,0x9b,0xb9,0xd9,0x2c,0x50,0x6c,0xb3,0x49,0xd0,0x34,0xae,0x59,0xb8,0xc8, + 0xe6,0x35,0xa1,0x53,0x6c,0x57,0xfa,0x4f,0xa6,0x3,0x6c,0xf2,0xbc,0x91,0x46,0xc2, + 0x64,0x25,0x21,0xf5,0x59,0xd6,0xe3,0xe5,0x85,0xad,0xc6,0x2d,0x9e,0xb2,0x4e,0x40, + 0x6c,0xb8,0xfc,0x38,0x3e,0x3e,0xbe,0x1,0x5d,0x11,0xf8,0x4d,0x41,0x41,0xe1,0x8a, + 0x5f,0x4a,0x6,0xa2,0xa9,0x80,0xbf,0x6a,0x9d,0x94,0x1,0x6f,0xf2,0xbe,0x4a,0x50, + 0x34,0x6c,0x4e,0x67,0xc2,0xf2,0x54,0x6,0x59,0xe8,0xc,0x38,0x11,0x27,0x3b,0xba, + 0xf,0x53,0xbc,0xd4,0x7d,0x94,0xa8,0xfb,0x28,0x5,0x1d,0x26,0xf5,0x8f,0x40,0xc4, + 0xcd,0xf,0xbd,0xb5,0xd7,0xa2,0xdb,0x88,0x31,0x2f,0xfb,0x8f,0x1b,0xa7,0xd2,0xd3, + 0x6c,0xc7,0xb8,0x21,0x12,0x4b,0x26,0x6d,0x5c,0xb5,0x73,0x8a,0xb3,0xa9,0xff,0x64, + 0xae,0xf1,0xbe,0x49,0xe,0x86,0xbe,0x42,0x36,0x7a,0x3e,0x13,0xad,0x75,0xf6,0x8c, + 0xb7,0xd3,0xf3,0x16,0xd4,0x62,0x3b,0x8e,0x9b,0x3f,0xde,0x74,0xac,0xea,0x2c,0xdb, + 0x31,0xa,0xd3,0x2c,0x47,0xcb,0x8,0x5b,0x8c,0x94,0x9a,0x6c,0xc2,0x2f,0x22,0xc0, + 0x1e,0xd1,0xa5,0x7d,0xe6,0x8a,0x8a,0xe,0x53,0x51,0xd7,0xa8,0x8,0xcc,0xca,0x43, + 0x54,0xd1,0xd7,0x4,0xc2,0xe8,0xe0,0xda,0x91,0x55,0x8,0xa5,0x80,0x48,0x2a,0xe0, + 0x8b,0xbc,0x2e,0xa4,0x1d,0x75,0x9a,0x80,0x27,0x51,0xe7,0x49,0xec,0x68,0x9f,0x44, + 0x42,0x91,0x48,0x2c,0xa2,0x2,0x9e,0xe2,0xe6,0x8f,0xbe,0xcb,0xd,0xd0,0x9d,0x7f, + 0x6c,0x6b,0xaf,0x41,0x7c,0xce,0xd2,0xa7,0x2e,0x8d,0xea,0xa9,0x63,0x3d,0xbe,0xa7, + 0x94,0x94,0xa0,0x81,0xaa,0xd5,0x38,0xae,0x69,0xf0,0xd8,0x4d,0xe6,0x1,0x63,0x36, + 0xea,0xfa,0x8d,0x76,0x30,0xda,0x37,0xd2,0x5a,0x77,0xf,0xbf,0xbd,0x81,0xd7,0x88, + 0x35,0xd2,0xce,0xc3,0x35,0xa7,0x5b,0xe,0x5d,0xc9,0xe6,0xe,0x51,0x93,0x70,0xfa, + 0x53,0x4e,0xc4,0x86,0x4f,0x79,0x9a,0xf9,0xe0,0x89,0x13,0x67,0x33,0xea,0xff,0x7b, + 0xb,0x95,0x99,0x3f,0x7f,0xac,0xbc,0xa2,0xd2,0xb,0xdf,0x94,0x4c,0x1c,0xae,0x7c, + 0x81,0xe8,0xf2,0xfa,0x4f,0xd1,0x80,0x88,0x92,0xe7,0xd8,0x75,0xbd,0x84,0x54,0x3e, + 0x4c,0x63,0x73,0xa,0x4c,0x4e,0x64,0x80,0x13,0x7b,0xe,0xf2,0x61,0x9,0x90,0xa, + 0x88,0x85,0x84,0xef,0x21,0x88,0x79,0x85,0x60,0x3c,0x73,0xf2,0x6a,0xad,0x41,0xcf, + 0xbf,0xc4,0xf1,0xc7,0xc0,0x41,0xd7,0x7,0xd,0x1b,0xa6,0xbb,0x20,0x2e,0x63,0xe8, + 0xc,0xee,0xae,0x91,0xbd,0xb5,0x2d,0x46,0xf6,0x51,0x52,0x1a,0xb1,0x4c,0x5a,0x7b, + 0xf8,0xf6,0xd5,0xe1,0x43,0x6d,0x4d,0x83,0x87,0xd8,0xae,0xdc,0x3d,0xc4,0x46,0xd3, + 0x87,0xcf,0x5c,0x67,0xc7,0x60,0x2b,0xd5,0xbd,0x83,0x4c,0x65,0x76,0xe,0x34,0x52, + 0x71,0xe8,0xaf,0x32,0xcf,0xa1,0xbf,0x9e,0xa8,0x5d,0xdf,0xa5,0xe2,0xa6,0x7d,0x34, + 0x47,0xdb,0xf4,0x16,0x11,0x11,0xe9,0xfa,0x87,0x76,0x71,0x71,0xf1,0x1e,0x52,0x52, + 0x52,0x6e,0xcb,0x56,0xac,0x2c,0x33,0xdb,0xea,0xd9,0x68,0xe3,0x17,0xfc,0xde,0xfe, + 0xc0,0xa1,0xf7,0xd6,0xfe,0xa1,0x2f,0x4d,0x3d,0x7d,0x6b,0x34,0xed,0x5c,0x1e,0xcc, + 0x59,0xa1,0x9b,0x3b,0x47,0xc7,0xb0,0x74,0xa1,0xc9,0x86,0xe7,0x73,0x8c,0xd7,0xbf, + 0x11,0xd3,0x37,0x69,0x11,0x5a,0xa1,0xf7,0x6e,0xa4,0xbc,0xea,0xb,0x3e,0x89,0xf9, + 0x15,0x7d,0xc7,0x4f,0xba,0xda,0x67,0xe0,0x60,0x7f,0xbe,0x81,0x3,0xd5,0xa5,0xac, + 0xad,0xf9,0xe3,0xda,0xdb,0x7b,0x8b,0xf8,0x84,0xf2,0x89,0x70,0x7d,0xf8,0x6,0x9a, + 0x3b,0xd,0x1e,0xa8,0x6a,0x30,0x48,0x5c,0x5c,0x66,0x20,0x57,0xd7,0x6f,0x80,0x83, + 0xd1,0xae,0xfe,0xeb,0x38,0xdc,0x7e,0x64,0x9d,0xbe,0x44,0xa2,0xb7,0x81,0x1,0xb7, + 0x17,0x97,0x13,0xff,0x87,0xa9,0x69,0x70,0xf,0x36,0x9b,0xdb,0x9d,0xc3,0xe2,0x74, + 0x63,0xb1,0xb8,0x8c,0xea,0x5d,0x1f,0x5e,0x9d,0xc5,0xc1,0xa5,0x9b,0xa5,0x17,0x48, + 0x8b,0x6a,0xe8,0x1a,0x2c,0x52,0xd2,0xd4,0x56,0x90,0x55,0x53,0x93,0x93,0x51,0x53, + 0x63,0xcb,0x68,0x68,0xcf,0x5a,0x69,0xb6,0x41,0x88,0xbb,0x2b,0x6c,0xe4,0x1c,0x19, + 0x65,0x21,0x9,0x36,0x7b,0xd6,0x24,0x11,0xd1,0x5,0x2,0x13,0x84,0x17,0x8f,0x11, + 0x14,0x94,0x1a,0x3b,0x76,0x82,0xb8,0x90,0x90,0xd0,0x78,0x8e,0xa9,0xe3,0x40,0xfa, + 0xc2,0xae,0x3b,0x45,0x37,0xd3,0x5c,0xf4,0x51,0x9,0xb,0xeb,0x2f,0xc2,0xdd,0xdf, + 0x6f,0xb8,0x9d,0x77,0xdf,0xd1,0x36,0x36,0xbd,0x59,0x6,0x6,0xbd,0x44,0x38,0x9c, + 0x3f,0x82,0x4d,0x73,0x7b,0x30,0x40,0xe3,0xe9,0x77,0x62,0xe,0x2b,0xbe,0x1b,0x97, + 0x7,0x14,0xf4,0xf5,0x4b,0x67,0xf0,0xbe,0x8a,0xf9,0x32,0xba,0xaa,0xdf,0xff,0x7e, + 0x9d,0xc3,0xe1,0xc,0x3c,0x56,0x54,0xfd,0x67,0x7b,0x7b,0xfb,0x0,0x8a,0xfe,0x4c, + 0x94,0xd0,0xdf,0xe9,0x8d,0x18,0x74,0xbc,0x12,0x83,0xe2,0x9f,0xa1,0x1f,0x1,0xec, + 0x45,0xd1,0x83,0x1,0xda,0x19,0xb9,0xf4,0xdc,0xb2,0xa4,0xbd,0xa7,0x41,0x44,0x7a, + 0x2f,0x5,0x3f,0xbf,0x9e,0xa6,0xc1,0xb9,0x3d,0xc4,0x9,0x24,0xf3,0x63,0x36,0x8b, + 0xc3,0xa8,0xc9,0x53,0xb2,0x13,0x14,0xb,0x4,0x16,0x9f,0x9f,0x77,0x0,0xa7,0xb5, + 0xbe,0x8a,0x2f,0xef,0xff,0x6e,0x6,0x6c,0x36,0xbb,0xbb,0x8e,0x8e,0xce,0xe0,0xe3, + 0xc7,0xf3,0x6,0xc5,0x5f,0x2c,0x1f,0x78,0xf6,0x6c,0xc9,0x80,0xe4,0xe4,0xfb,0xfd, + 0xe3,0xe3,0xb,0xfb,0x9d,0x3f,0x7f,0xa7,0xef,0xc9,0x93,0xb9,0x7d,0xd2,0xd3,0x2b, + 0x7b,0xf9,0x9d,0x3d,0xdb,0x93,0xcb,0xa5,0x94,0x7,0x93,0x92,0xf1,0xa4,0x24,0xf, + 0x24,0xbe,0x51,0x92,0x1,0xf6,0x37,0x35,0x3b,0x40,0xf2,0xd4,0xfe,0xfa,0x35,0x1e, + 0xa9,0x2f,0x48,0x7c,0x7a,0xfd,0xbb,0xb1,0x7f,0xbe,0x91,0x29,0x1a,0x2e,0x37,0xa2, + 0x57,0x4,0xa9,0x19,0x5f,0x58,0xf8,0x47,0x6e,0x6e,0x6e,0x8f,0xf4,0xf4,0xf4,0xee, + 0xc,0x50,0xda,0xe0,0xf7,0xbf,0x29,0x45,0x9b,0xb2,0x3a,0xe3,0x2b,0x2b,0xfc,0x67, + 0x4b,0x74,0xa8,0xff,0xf7,0xf8,0x51,0xc5,0xff,0xb,0x29,0xf,0xf2,0x63,0x5,0x3e, + 0xff,0x4e,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/contacts.png + 0x0,0x0,0x20,0x51, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87, + 0x0,0x0,0x0,0x4,0x67,0x41,0x4d,0x41,0x0,0x0,0xb1,0x8e,0x7c,0xfb,0x51,0x93, + 0x0,0x0,0x0,0x20,0x63,0x48,0x52,0x4d,0x0,0x0,0x87,0xf,0x0,0x0,0x8c,0xf, + 0x0,0x0,0xfd,0x52,0x0,0x0,0x81,0x40,0x0,0x0,0x7d,0x79,0x0,0x0,0xe9,0x8b, + 0x0,0x0,0x3c,0xe5,0x0,0x0,0x19,0xcc,0x73,0x3c,0x85,0x77,0x0,0x0,0xa,0x39, + 0x69,0x43,0x43,0x50,0x50,0x68,0x6f,0x74,0x6f,0x73,0x68,0x6f,0x70,0x20,0x49,0x43, + 0x43,0x20,0x70,0x72,0x6f,0x66,0x69,0x6c,0x65,0x0,0x0,0x48,0xc7,0x9d,0x96,0x77, + 0x54,0x54,0xd7,0x16,0x87,0xcf,0xbd,0x77,0x7a,0xa1,0xcd,0x30,0xd2,0x19,0x7a,0x93, + 0x2e,0x30,0x80,0xf4,0x2e,0x20,0x1d,0x4,0x51,0x18,0x66,0x6,0x18,0xca,0x0,0xc3, + 0xc,0x4d,0x6c,0x88,0xa8,0x40,0x44,0x11,0x11,0x1,0x45,0x90,0xa0,0x80,0x1,0xa3, + 0xa1,0x48,0xac,0x88,0x62,0x21,0x28,0xa8,0x60,0xf,0x48,0x10,0x50,0x62,0x30,0x8a, + 0xa8,0xa8,0x64,0x46,0xd6,0x4a,0x7c,0x79,0x79,0xef,0xe5,0xe5,0xf7,0xc7,0xbd,0xdf, + 0xda,0x67,0xef,0x73,0xf7,0xd9,0x7b,0x9f,0xb5,0x2e,0x0,0x24,0x4f,0x1f,0x2e,0x2f, + 0x5,0x96,0x2,0x20,0x99,0x27,0xe0,0x7,0x7a,0x38,0xd3,0x57,0x85,0x47,0xd0,0xb1, + 0xfd,0x0,0x6,0x78,0x80,0x1,0xa6,0x0,0x30,0x59,0xe9,0xa9,0xbe,0x41,0xee,0xc1, + 0x40,0x24,0x2f,0x37,0x17,0x7a,0xba,0xc8,0x9,0xfc,0x8b,0xde,0xc,0x1,0x48,0xfc, + 0xbe,0x65,0xe8,0xe9,0x4f,0xa7,0x83,0xff,0x4f,0xd2,0xac,0x54,0xbe,0x0,0x0,0xc8, + 0x5f,0xc4,0xe6,0x6c,0x4e,0x3a,0x4b,0xc4,0xf9,0x22,0x4e,0xca,0x14,0xa4,0x8a,0xed, + 0x33,0x22,0xa6,0xc6,0x24,0x8a,0x19,0x46,0x89,0x99,0x2f,0x4a,0x50,0xc4,0x72,0x62, + 0x8e,0x5b,0xe4,0xa5,0x9f,0x7d,0x16,0xd9,0x51,0xcc,0xec,0x64,0x1e,0x5b,0xc4,0xe2, + 0x9c,0x53,0xd9,0xc9,0x6c,0x31,0xf7,0x88,0x78,0x7b,0x86,0x90,0x23,0x62,0xc4,0x47, + 0xc4,0x5,0x19,0x5c,0x4e,0xa6,0x88,0x6f,0x8b,0x58,0x33,0x49,0x98,0xcc,0x15,0xf1, + 0x5b,0x71,0x6c,0x32,0x87,0x99,0xe,0x0,0x8a,0x24,0xb6,0xb,0x38,0xac,0x78,0x11, + 0x9b,0x88,0x98,0xc4,0xf,0xe,0x74,0x11,0xf1,0x72,0x0,0x70,0xa4,0xb8,0x2f,0x38, + 0xe6,0xb,0x16,0x70,0xb2,0x4,0xe2,0x43,0xb9,0xa4,0xa4,0x66,0xf3,0xb9,0x71,0xf1, + 0x2,0xba,0x2e,0x4b,0x8f,0x6e,0x6a,0x6d,0xcd,0xa0,0x7b,0x72,0x32,0x93,0x38,0x2, + 0x81,0xa1,0x3f,0x93,0x95,0xc8,0xe4,0xb3,0xe9,0x2e,0x29,0xc9,0xa9,0x4c,0x5e,0x36, + 0x0,0x8b,0x67,0xfe,0x2c,0x19,0x71,0x6d,0xe9,0xa2,0x22,0x5b,0x9a,0x5a,0x5b,0x5a, + 0x1a,0x9a,0x19,0x99,0x7e,0x51,0xa8,0xff,0xba,0xf8,0x37,0x25,0xee,0xed,0x22,0xbd, + 0xa,0xf8,0xdc,0x33,0x88,0xd6,0xf7,0x87,0xed,0xaf,0xfc,0x52,0xea,0x0,0x60,0xcc, + 0x8a,0x6a,0xb3,0xeb,0xf,0x5b,0xcc,0x7e,0x0,0x3a,0xb6,0x2,0x20,0x77,0xff,0xf, + 0x9b,0xe6,0x21,0x0,0x24,0x45,0x7d,0x6b,0xbf,0xf1,0xc5,0x79,0x68,0xe2,0x79,0x89, + 0x17,0x8,0x52,0x6d,0x8c,0x8d,0x33,0x33,0x33,0x8d,0xb8,0x1c,0x96,0x91,0xb8,0xa0, + 0xbf,0xeb,0x7f,0x3a,0xfc,0xd,0x7d,0xf1,0x3d,0x23,0xf1,0x76,0xbf,0x97,0x87,0xee, + 0xca,0x89,0x65,0xa,0x93,0x4,0x74,0x71,0xdd,0x58,0x29,0x49,0x29,0x42,0x3e,0x3d, + 0x3d,0x95,0xc9,0xe2,0xd0,0xd,0xff,0x3c,0xc4,0xff,0x38,0xf0,0xaf,0xf3,0x58,0x1a, + 0xc8,0x89,0xe5,0xf0,0x39,0x3c,0x51,0x44,0xa8,0x68,0xca,0xb8,0xbc,0x38,0x51,0xbb, + 0x79,0x6c,0xae,0x80,0x9b,0xc2,0xa3,0x73,0x79,0xff,0xa9,0x89,0xff,0x30,0xec,0x4f, + 0x5a,0x9c,0x6b,0x91,0x28,0xf5,0x9f,0x0,0x35,0xca,0x8,0x48,0xdd,0xa0,0x2,0xe4, + 0xe7,0x3e,0x80,0xa2,0x10,0x1,0x12,0x79,0x50,0xdc,0xf5,0xdf,0xfb,0xe6,0x83,0xf, + 0x5,0xe2,0x9b,0x17,0xa6,0x3a,0xb1,0x38,0xf7,0x9f,0x5,0xfd,0xfb,0xae,0x70,0x89, + 0xf8,0x91,0xce,0x8d,0xfb,0x1c,0xe7,0x12,0x18,0x4c,0x67,0x9,0xf9,0x19,0x8b,0x6b, + 0xe2,0x6b,0x9,0xd0,0x80,0x0,0x24,0x1,0x15,0xc8,0x3,0x15,0xa0,0x1,0x74,0x81, + 0x21,0x30,0x3,0x56,0xc0,0x16,0x38,0x2,0x37,0xb0,0x2,0xf8,0x81,0x60,0x10,0xe, + 0xd6,0x2,0x16,0x88,0x7,0xc9,0x80,0xf,0x32,0x41,0x2e,0xd8,0xc,0xa,0x40,0x11, + 0xd8,0x5,0xf6,0x82,0x4a,0x50,0x3,0xea,0x41,0x23,0x68,0x1,0x27,0x40,0x7,0x38, + 0xd,0x2e,0x80,0xcb,0xe0,0x3a,0xb8,0x9,0xee,0x80,0x7,0x60,0x4,0x8c,0x83,0xe7, + 0x60,0x6,0xbc,0x1,0xf3,0x10,0x4,0x61,0x21,0x32,0x44,0x81,0xe4,0x21,0x55,0x48, + 0xb,0x32,0x80,0xcc,0x20,0x6,0x64,0xf,0xb9,0x41,0x3e,0x50,0x20,0x14,0xe,0x45, + 0x43,0x71,0x10,0xf,0x12,0x42,0xb9,0xd0,0x16,0xa8,0x8,0x2a,0x85,0x2a,0xa1,0x5a, + 0xa8,0x11,0xfa,0x16,0x3a,0x5,0x5d,0x80,0xae,0x42,0x3,0xd0,0x3d,0x68,0x14,0x9a, + 0x82,0x7e,0x85,0xde,0xc3,0x8,0x4c,0x82,0xa9,0xb0,0x32,0xac,0xd,0x1b,0xc3,0xc, + 0xd8,0x9,0xf6,0x86,0x83,0xe1,0x35,0x70,0x1c,0x9c,0x6,0xe7,0xc0,0xf9,0xf0,0x4e, + 0xb8,0x2,0xae,0x83,0x8f,0xc1,0xed,0xf0,0x5,0xf8,0x3a,0x7c,0x7,0x1e,0x81,0x9f, + 0xc3,0xb3,0x8,0x40,0x88,0x8,0xd,0x51,0x43,0xc,0x11,0x6,0xe2,0x82,0xf8,0x21, + 0x11,0x48,0x2c,0xc2,0x47,0x36,0x20,0x85,0x48,0x39,0x52,0x87,0xb4,0x20,0x5d,0x48, + 0x2f,0x72,0xb,0x19,0x41,0xa6,0x91,0x77,0x28,0xc,0x8a,0x82,0xa2,0xa3,0xc,0x51, + 0xb6,0x28,0x4f,0x54,0x8,0x8a,0x85,0x4a,0x43,0x6d,0x40,0x15,0xa3,0x2a,0x51,0x47, + 0x51,0xed,0xa8,0x1e,0xd4,0x2d,0xd4,0x28,0x6a,0x6,0xf5,0x9,0x4d,0x46,0x2b,0xa1, + 0xd,0xd0,0x36,0x68,0x2f,0xf4,0x2a,0x74,0x1c,0x3a,0x13,0x5d,0x80,0x2e,0x47,0x37, + 0xa0,0xdb,0xd0,0x97,0xd0,0x77,0xd0,0xe3,0xe8,0x37,0x18,0xc,0x86,0x86,0xd1,0xc1, + 0x58,0x61,0x3c,0x31,0xe1,0x98,0x4,0xcc,0x3a,0x4c,0x31,0xe6,0x0,0xa6,0x15,0x73, + 0x1e,0x33,0x80,0x19,0xc3,0xcc,0x62,0xb1,0x58,0x79,0xac,0x1,0xd6,0xe,0xeb,0x87, + 0x65,0x62,0x5,0xd8,0x2,0xec,0x7e,0xec,0x31,0xec,0x39,0xec,0x20,0x76,0x1c,0xfb, + 0x16,0x47,0xc4,0xa9,0xe2,0xcc,0x70,0xee,0xb8,0x8,0x1c,0xf,0x97,0x87,0x2b,0xc7, + 0x35,0xe1,0xce,0xe2,0x6,0x71,0x13,0xb8,0x79,0xbc,0x14,0x5e,0xb,0x6f,0x83,0xf7, + 0xc3,0xb3,0xf1,0xd9,0xf8,0x12,0x7c,0x3d,0xbe,0xb,0x7f,0x3,0x3f,0x8e,0x9f,0x27, + 0x48,0x13,0x74,0x8,0x76,0x84,0x60,0x42,0x2,0x61,0x33,0xa1,0x82,0xd0,0x42,0xb8, + 0x44,0x78,0x48,0x78,0x45,0x24,0x12,0xd5,0x89,0xd6,0xc4,0x0,0x22,0x97,0xb8,0x89, + 0x58,0x41,0x3c,0x4e,0xbc,0x42,0x1c,0x25,0xbe,0x23,0xc9,0x90,0xf4,0x49,0x2e,0xa4, + 0x48,0x92,0x90,0xb4,0x93,0x74,0x84,0x74,0x9e,0x74,0x8f,0xf4,0x8a,0x4c,0x26,0x6b, + 0x93,0x1d,0xc9,0x11,0x64,0x1,0x79,0x27,0xb9,0x91,0x7c,0x91,0xfc,0x98,0xfc,0x56, + 0x82,0x22,0x61,0x24,0xe1,0x25,0xc1,0x96,0xd8,0x28,0x51,0x25,0xd1,0x2e,0x31,0x28, + 0xf1,0x42,0x12,0x2f,0xa9,0x25,0xe9,0x24,0xb9,0x56,0x32,0x47,0xb2,0x5c,0xf2,0xa4, + 0xe4,0xd,0xc9,0x69,0x29,0xbc,0x94,0xb6,0x94,0x8b,0x14,0x53,0x6a,0x83,0x54,0x95, + 0xd4,0x29,0xa9,0x61,0xa9,0x59,0x69,0x8a,0xb4,0xa9,0xb4,0x9f,0x74,0xb2,0x74,0xb1, + 0x74,0x93,0xf4,0x55,0xe9,0x49,0x19,0xac,0x8c,0xb6,0x8c,0x9b,0xc,0x5b,0x26,0x5f, + 0xe6,0xb0,0xcc,0x45,0x99,0x31,0xa,0x42,0xd1,0xa0,0xb8,0x50,0x58,0x94,0x2d,0x94, + 0x7a,0xca,0x25,0xca,0x38,0x15,0x43,0xd5,0xa1,0x7a,0x51,0x13,0xa8,0x45,0xd4,0x6f, + 0xa8,0xfd,0xd4,0x19,0x59,0x19,0xd9,0x65,0xb2,0xa1,0xb2,0x59,0xb2,0x55,0xb2,0x67, + 0x64,0x47,0x68,0x8,0x4d,0x9b,0xe6,0x45,0x4b,0xa2,0x95,0xd0,0x4e,0xd0,0x86,0x68, + 0xef,0x97,0x28,0x2f,0x71,0x5a,0xc2,0x59,0xb2,0x63,0x49,0xcb,0x92,0xc1,0x25,0x73, + 0x72,0x8a,0x72,0x8e,0x72,0x1c,0xb9,0x42,0xb9,0x56,0xb9,0x3b,0x72,0xef,0xe5,0xe9, + 0xf2,0x6e,0xf2,0x89,0xf2,0xbb,0xe5,0x3b,0xe4,0x1f,0x29,0xa0,0x14,0xf4,0x15,0x2, + 0x14,0x32,0x15,0xe,0x2a,0x5c,0x52,0x98,0x56,0xa4,0x2a,0xda,0x2a,0xb2,0x14,0xb, + 0x15,0x4f,0x28,0xde,0x57,0x82,0x95,0xf4,0x95,0x2,0x95,0xd6,0x29,0x1d,0x56,0xea, + 0x53,0x9a,0x55,0x56,0x51,0xf6,0x50,0x4e,0x55,0xde,0xaf,0x7c,0x51,0x79,0x5a,0x85, + 0xa6,0xe2,0xa8,0x92,0xa0,0x52,0xa6,0x72,0x56,0x65,0x4a,0x95,0xa2,0x6a,0xaf,0xca, + 0x55,0x2d,0x53,0x3d,0xa7,0xfa,0x8c,0x2e,0x4b,0x77,0xa2,0x27,0xd1,0x2b,0xe8,0x3d, + 0xf4,0x19,0x35,0x25,0x35,0x4f,0x35,0xa1,0x5a,0xad,0x5a,0xbf,0xda,0xbc,0xba,0x8e, + 0x7a,0x88,0x7a,0x9e,0x7a,0xab,0xfa,0x23,0xd,0x82,0x6,0x43,0x23,0x56,0xa3,0x4c, + 0xa3,0x5b,0x63,0x46,0x53,0x55,0xd3,0x57,0x33,0x57,0xb3,0x59,0xf3,0xbe,0x16,0x5e, + 0x8b,0xa1,0x15,0xaf,0xb5,0x4f,0xab,0x57,0x6b,0x4e,0x5b,0x47,0x3b,0x4c,0x7b,0x9b, + 0x76,0x87,0xf6,0xa4,0x8e,0x9c,0x8e,0x97,0x4e,0x8e,0x4e,0xb3,0xce,0x43,0x5d,0xb2, + 0xae,0x83,0x6e,0x9a,0x6e,0x9d,0xee,0x6d,0x3d,0x8c,0x1e,0x43,0x2f,0x51,0xef,0x80, + 0xde,0x4d,0x7d,0x58,0xdf,0x42,0x3f,0x5e,0xbf,0x4a,0xff,0x86,0x1,0x6c,0x60,0x69, + 0xc0,0x35,0x38,0x60,0x30,0xb0,0x14,0xbd,0xd4,0x7a,0x29,0x6f,0x69,0xdd,0xd2,0x61, + 0x43,0x92,0xa1,0x93,0x61,0x86,0x61,0xb3,0xe1,0xa8,0x11,0xcd,0xc8,0xc7,0x28,0xcf, + 0xa8,0xc3,0xe8,0x85,0xb1,0xa6,0x71,0x84,0xf1,0x6e,0xe3,0x5e,0xe3,0x4f,0x26,0x16, + 0x26,0x49,0x26,0xf5,0x26,0xf,0x4c,0x65,0x4c,0x57,0x98,0xe6,0x99,0x76,0x99,0xfe, + 0x6a,0xa6,0x6f,0xc6,0x32,0xab,0x32,0xbb,0x6d,0x4e,0x36,0x77,0x37,0xdf,0x68,0xde, + 0x69,0xfe,0x72,0x99,0xc1,0x32,0xce,0xb2,0x83,0xcb,0xee,0x5a,0x50,0x2c,0x7c,0x2d, + 0xb6,0x59,0x74,0x5b,0x7c,0xb4,0xb4,0xb2,0xe4,0x5b,0xb6,0x58,0x4e,0x59,0x69,0x5a, + 0x45,0x5b,0x55,0x5b,0xd,0x33,0xa8,0xc,0x7f,0x46,0x31,0xe3,0x8a,0x35,0xda,0xda, + 0xd9,0x7a,0xa3,0xf5,0x69,0xeb,0x77,0x36,0x96,0x36,0x2,0x9b,0x13,0x36,0xbf,0xd8, + 0x1a,0xda,0x26,0xda,0x36,0xd9,0x4e,0x2e,0xd7,0x59,0xce,0x59,0x5e,0xbf,0x7c,0xcc, + 0x4e,0xdd,0x8e,0x69,0x57,0x6b,0x37,0x62,0x4f,0xb7,0x8f,0xb6,0x3f,0x64,0x3f,0xe2, + 0xa0,0xe6,0xc0,0x74,0xa8,0x73,0x78,0xe2,0xa8,0xe1,0xc8,0x76,0x6c,0x70,0x9c,0x70, + 0xd2,0x73,0x4a,0x70,0x3a,0xe6,0xf4,0xc2,0xd9,0xc4,0x99,0xef,0xdc,0xe6,0x3c,0xe7, + 0x62,0xe3,0xb2,0xde,0xe5,0xbc,0x2b,0xe2,0xea,0xe1,0x5a,0xe8,0xda,0xef,0x26,0xe3, + 0x16,0xe2,0x56,0xe9,0xf6,0xd8,0x5d,0xdd,0x3d,0xce,0xbd,0xd9,0x7d,0xc6,0xc3,0xc2, + 0x63,0x9d,0xc7,0x79,0x4f,0xb4,0xa7,0xb7,0xe7,0x6e,0xcf,0x61,0x2f,0x65,0x2f,0x96, + 0x57,0xa3,0xd7,0xcc,0xa,0xab,0x15,0xeb,0x57,0xf4,0x78,0x93,0xbc,0x83,0xbc,0x2b, + 0xbd,0x9f,0xf8,0xe8,0xfb,0xf0,0x7d,0xba,0x7c,0x61,0xdf,0x15,0xbe,0x7b,0x7c,0x1f, + 0xae,0xd4,0x5a,0xc9,0x5b,0xd9,0xe1,0x7,0xfc,0xbc,0xfc,0xf6,0xf8,0x3d,0xf2,0xd7, + 0xf1,0x4f,0xf3,0xff,0x3e,0x0,0x13,0xe0,0x1f,0x50,0x15,0xf0,0x34,0xd0,0x34,0x30, + 0x37,0xb0,0x37,0x88,0x12,0x14,0x15,0xd4,0x14,0xf4,0x26,0xd8,0x39,0xb8,0x24,0xf8, + 0x41,0x88,0x6e,0x88,0x30,0xa4,0x3b,0x54,0x32,0x34,0x32,0xb4,0x31,0x74,0x2e,0xcc, + 0x35,0xac,0x34,0x6c,0x64,0x95,0xf1,0xaa,0xf5,0xab,0xae,0x87,0x2b,0x84,0x73,0xc3, + 0x3b,0x23,0xb0,0x11,0xa1,0x11,0xd,0x11,0xb3,0xab,0xdd,0x56,0xef,0x5d,0x3d,0x1e, + 0x69,0x11,0x59,0x10,0x39,0xb4,0x46,0x67,0x4d,0xd6,0x9a,0xab,0x6b,0x15,0xd6,0x26, + 0xad,0x3d,0x13,0x25,0x19,0xc5,0x8c,0x3a,0x19,0x8d,0x8e,0xe,0x8b,0x6e,0x8a,0xfe, + 0xc0,0xf4,0x63,0xd6,0x31,0x67,0x63,0xbc,0x62,0xaa,0x63,0x66,0x58,0x2e,0xac,0x7d, + 0xac,0xe7,0x6c,0x47,0x76,0x19,0x7b,0x8a,0x63,0xc7,0x29,0xe5,0x4c,0xc4,0xda,0xc5, + 0x96,0xc6,0x4e,0xc6,0xd9,0xc5,0xed,0x89,0x9b,0x8a,0x77,0x88,0x2f,0x8f,0x9f,0xe6, + 0xba,0x70,0x2b,0xb9,0x2f,0x13,0x3c,0x13,0x6a,0x12,0xe6,0x12,0xfd,0x12,0x8f,0x24, + 0x2e,0x24,0x85,0x25,0xb5,0x26,0xe3,0x92,0xa3,0x93,0x4f,0xf1,0x64,0x78,0x89,0xbc, + 0x9e,0x14,0x95,0x94,0xac,0x94,0x81,0x54,0x83,0xd4,0x82,0xd4,0x91,0x34,0x9b,0xb4, + 0xbd,0x69,0x33,0x7c,0x6f,0x7e,0x43,0x3a,0x94,0xbe,0x26,0xbd,0x53,0x40,0x15,0xfd, + 0x4c,0xf5,0x9,0x75,0x85,0x5b,0x85,0xa3,0x19,0xf6,0x19,0x55,0x19,0x6f,0x33,0x43, + 0x33,0x4f,0x66,0x49,0x67,0xf1,0xb2,0xfa,0xb2,0xf5,0xb3,0x77,0x64,0x4f,0xe4,0xb8, + 0xe7,0x7c,0xbd,0xe,0xb5,0x8e,0xb5,0xae,0x3b,0x57,0x2d,0x77,0x73,0xee,0xe8,0x7a, + 0xa7,0xf5,0xb5,0x1b,0xa0,0xd,0x31,0x1b,0xba,0x37,0x6a,0x6c,0xcc,0xdf,0x38,0xbe, + 0xc9,0x63,0xd3,0xd1,0xcd,0x84,0xcd,0x89,0x9b,0x7f,0xc8,0x33,0xc9,0x2b,0xcd,0x7b, + 0xbd,0x25,0x6c,0x4b,0x57,0xbe,0x72,0xfe,0xa6,0xfc,0xb1,0xad,0x1e,0x5b,0x9b,0xb, + 0x24,0xa,0xf8,0x5,0xc3,0xdb,0x6c,0xb7,0xd5,0x6c,0x47,0x6d,0xe7,0x6e,0xef,0xdf, + 0x61,0xbe,0x63,0xff,0x8e,0x4f,0x85,0xec,0xc2,0x6b,0x45,0x26,0x45,0xe5,0x45,0x1f, + 0x8a,0x59,0xc5,0xd7,0xbe,0x32,0xfd,0xaa,0xe2,0xab,0x85,0x9d,0xb1,0x3b,0xfb,0x4b, + 0x2c,0x4b,0xe,0xee,0xc2,0xec,0xe2,0xed,0x1a,0xda,0xed,0xb0,0xfb,0x68,0xa9,0x74, + 0x69,0x4e,0xe9,0xd8,0x1e,0xdf,0x3d,0xed,0x65,0xf4,0xb2,0xc2,0xb2,0xd7,0x7b,0xa3, + 0xf6,0x5e,0x2d,0x5f,0x56,0x5e,0xb3,0x8f,0xb0,0x4f,0xb8,0x6f,0xa4,0xc2,0xa7,0xa2, + 0x73,0xbf,0xe6,0xfe,0x5d,0xfb,0x3f,0x54,0xc6,0x57,0xde,0xa9,0x72,0xae,0x6a,0xad, + 0x56,0xaa,0xde,0x51,0x3d,0x77,0x80,0x7d,0x60,0xf0,0xa0,0xe3,0xc1,0x96,0x1a,0xe5, + 0x9a,0xa2,0x9a,0xf7,0x87,0xb8,0x87,0xee,0xd6,0x7a,0xd4,0xb6,0xd7,0x69,0xd7,0x95, + 0x1f,0xc6,0x1c,0xce,0x38,0xfc,0xb4,0x3e,0xb4,0xbe,0xf7,0x6b,0xc6,0xd7,0x8d,0xd, + 0xa,0xd,0x45,0xd,0x1f,0x8f,0xf0,0x8e,0x8c,0x1c,0xd,0x3c,0xda,0xd3,0x68,0xd5, + 0xd8,0xd8,0xa4,0xd4,0x54,0xd2,0xc,0x37,0xb,0x9b,0xa7,0x8e,0x45,0x1e,0xbb,0xf9, + 0x8d,0xeb,0x37,0x9d,0x2d,0x86,0x2d,0xb5,0xad,0xb4,0xd6,0xa2,0xe3,0xe0,0xb8,0xf0, + 0xf8,0xb3,0x6f,0xa3,0xbf,0x1d,0x3a,0xe1,0x7d,0xa2,0xfb,0x24,0xe3,0x64,0xcb,0x77, + 0x5a,0xdf,0x55,0xb7,0x51,0xda,0xa,0xdb,0xa1,0xf6,0xec,0xf6,0x99,0x8e,0xf8,0x8e, + 0x91,0xce,0xf0,0xce,0x81,0x53,0x2b,0x4e,0x75,0x77,0xd9,0x76,0xb5,0x7d,0x6f,0xf4, + 0xfd,0x91,0xd3,0x6a,0xa7,0xab,0xce,0xc8,0x9e,0x29,0x39,0x4b,0x38,0x9b,0x7f,0x76, + 0xe1,0x5c,0xce,0xb9,0xd9,0xf3,0xa9,0xe7,0xa7,0x2f,0xc4,0x5d,0x18,0xeb,0x8e,0xea, + 0x7e,0x70,0x71,0xd5,0xc5,0xdb,0x3d,0x1,0x3d,0xfd,0x97,0xbc,0x2f,0x5d,0xb9,0xec, + 0x7e,0xf9,0x62,0xaf,0x53,0xef,0xb9,0x2b,0x76,0x57,0x4e,0x5f,0xb5,0xb9,0x7a,0xea, + 0x1a,0xe3,0x5a,0xc7,0x75,0xcb,0xeb,0xed,0x7d,0x16,0x7d,0x6d,0x3f,0x58,0xfc,0xd0, + 0xd6,0x6f,0xd9,0xdf,0x7e,0xc3,0xea,0x46,0xe7,0x4d,0xeb,0x9b,0x5d,0x3,0xcb,0x7, + 0xce,0xe,0x3a,0xc,0x5e,0xb8,0xe5,0x7a,0xeb,0xf2,0x6d,0xaf,0xdb,0xd7,0xef,0xac, + 0xbc,0x33,0x30,0x14,0x32,0x74,0x77,0x38,0x72,0x78,0xe4,0x2e,0xfb,0xee,0xe4,0xbd, + 0xa4,0x7b,0x2f,0xef,0x67,0xdc,0x9f,0x7f,0xb0,0xe9,0x21,0xfa,0x61,0xe1,0x23,0xa9, + 0x47,0xe5,0x8f,0x95,0x1e,0xd7,0xfd,0xa8,0xf7,0x63,0xeb,0x88,0xe5,0xc8,0x99,0x51, + 0xd7,0xd1,0xbe,0x27,0x41,0x4f,0x1e,0x8c,0xb1,0xc6,0x9e,0xff,0x94,0xfe,0xd3,0x87, + 0xf1,0xfc,0xa7,0xe4,0xa7,0xe5,0x13,0xaa,0x13,0x8d,0x93,0x66,0x93,0xa7,0xa7,0xdc, + 0xa7,0x6e,0x3e,0x5b,0xfd,0x6c,0xfc,0x79,0xea,0xf3,0xf9,0xe9,0x82,0x9f,0xa5,0x7f, + 0xae,0x7e,0xa1,0xfb,0xe2,0xbb,0x5f,0x1c,0x7f,0xe9,0x9b,0x59,0x35,0x33,0xfe,0x92, + 0xff,0x72,0xe1,0xd7,0xe2,0x57,0xf2,0xaf,0x8e,0xbc,0x5e,0xf6,0xba,0x7b,0xd6,0x7f, + 0xf6,0xf1,0x9b,0xe4,0x37,0xf3,0x73,0x85,0x6f,0xe5,0xdf,0x1e,0x7d,0xc7,0x78,0xd7, + 0xfb,0x3e,0xec,0xfd,0xc4,0x7c,0xe6,0x7,0xec,0x87,0x8a,0x8f,0x7a,0x1f,0xbb,0x3e, + 0x79,0x7f,0x7a,0xb8,0x90,0xbc,0xb0,0xf0,0x1b,0xf7,0x84,0xf3,0xfb,0xe2,0xe6,0x1d, + 0xc2,0x0,0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x12,0x0,0x0,0xb, + 0x12,0x1,0xd2,0xdd,0x7e,0xfc,0x0,0x0,0x15,0x82,0x49,0x44,0x41,0x54,0x68,0x43, + 0xed,0x59,0x67,0x54,0x55,0xd7,0xd6,0xbd,0x22,0x8a,0x88,0x5,0x10,0x94,0x2a,0xa2, + 0x28,0x4,0x11,0xa4,0x88,0xa2,0x20,0x4d,0xaa,0x48,0x95,0xde,0x7b,0x47,0xfa,0xa5, + 0x48,0x6f,0x52,0xa5,0xf7,0xde,0x7b,0x97,0xde,0x41,0x91,0x26,0xb1,0x45,0x51,0xc1, + 0x1a,0x13,0x6b,0x62,0x6c,0x51,0x93,0xcc,0x6f,0x43,0xf2,0xca,0xc8,0x78,0xef,0xc5, + 0xbc,0xf7,0xfd,0xcc,0x19,0x63,0x8e,0x73,0xcb,0x3e,0x77,0xaf,0x39,0xf7,0x5a,0x6b, + 0xaf,0xb5,0x2f,0x85,0xf2,0xd7,0xf5,0x97,0x2,0x7f,0x29,0xf0,0x97,0x2,0x7f,0x29, + 0xf0,0x97,0x2,0x7f,0xa8,0x0,0x17,0xfd,0x16,0x7e,0x57,0xe,0xfe,0x83,0xd4,0x1d, + 0x7c,0x92,0xfe,0x5c,0x14,0x41,0x97,0xd,0x7f,0xf8,0xc8,0xe7,0xd,0xa0,0xd9,0xbc, + 0xdd,0x84,0x49,0x5e,0x3d,0x98,0x47,0xdb,0xfc,0xcc,0x17,0x27,0x4d,0xcf,0xf2,0x1f, + 0xd3,0x8c,0xe7,0xe0,0xa3,0xa4,0xd1,0x7d,0xde,0xe3,0x9f,0x31,0xca,0xd8,0x38,0x89, + 0xc5,0xde,0x39,0xef,0xb0,0x93,0x7b,0x9e,0xb9,0xa3,0x5b,0xa1,0xb,0x81,0x95,0xbd, + 0x7b,0x9e,0xac,0xa5,0x4b,0x9,0xdb,0x67,0x3c,0xfe,0x6f,0x87,0x88,0x6b,0x84,0xad, + 0xb7,0x74,0x48,0x17,0xf0,0xf1,0x29,0x39,0x1e,0x1a,0x5e,0xe1,0x18,0x1a,0x59,0x15, + 0x1c,0x1c,0x52,0x16,0xe0,0x19,0x50,0x62,0xee,0xe0,0x9a,0x2b,0x61,0x69,0x59,0xc2, + 0xf8,0xbf,0xfc,0x3e,0x45,0x56,0x36,0x8c,0xd1,0xc6,0x21,0xf3,0xe8,0x99,0x84,0x7a, + 0xcf,0xca,0xf2,0xfe,0xdc,0x96,0xfa,0xf1,0x8e,0xda,0xb2,0xe1,0xc1,0xf2,0xbc,0xde, + 0x73,0x69,0xf1,0x8d,0xf9,0x41,0x41,0x25,0x4e,0x26,0x76,0x67,0xf7,0x6f,0x53,0xf2, + 0x61,0xf8,0x93,0x13,0xad,0xe6,0x17,0xf5,0xe3,0x70,0xf5,0xce,0x57,0x49,0xcf,0x6c, + 0xf,0x6b,0x6e,0x38,0x5f,0x75,0xae,0xed,0x7c,0x7f,0x5b,0xd3,0xc8,0x4c,0x55,0x65, + 0xf7,0xc5,0x9c,0xbc,0x96,0x8e,0xd0,0xe8,0xa2,0x64,0x57,0xef,0xc,0x4d,0x7d,0xfd, + 0x4c,0x22,0x52,0xfd,0xea,0x3f,0xf9,0xfb,0xcb,0xc3,0xf5,0x57,0xbb,0x79,0xe6,0xcb, + 0x44,0xc5,0xd4,0xe6,0x54,0x54,0xc,0x2e,0x4c,0x8e,0x5d,0xfd,0xee,0xf6,0xd5,0xa5, + 0x37,0xd7,0xa7,0x6e,0xbe,0x9b,0xec,0xbe,0xf4,0xb6,0x21,0xbf,0xf7,0x45,0x72,0x74, + 0xed,0x79,0x4f,0x8f,0xec,0x10,0x3,0x9b,0x44,0xa1,0xdf,0x4d,0x40,0x23,0x2e,0xee, + 0xb0,0x46,0x55,0xd5,0x9d,0x4e,0x55,0x35,0x8d,0x4e,0x5c,0x3c,0x6f,0xd,0xf9,0x9e, + 0xe6,0x6f,0x63,0x98,0x76,0x3a,0x6c,0x36,0x30,0x4e,0x3c,0x11,0x1b,0xdf,0x50,0xd8, + 0xd2,0x7c,0xfe,0xd6,0xe5,0xb9,0xc5,0x1f,0xee,0x7c,0x75,0xf7,0xdd,0xc2,0xe5,0x85, + 0xf,0x17,0xc7,0xa7,0x3e,0xb4,0xb6,0xf5,0xbf,0x49,0x4a,0x2f,0x7b,0xe4,0x17,0x92, + 0x55,0x6a,0xeb,0x90,0x76,0x42,0x51,0x31,0x76,0xcb,0x9f,0x24,0x20,0xbb,0x4e,0xf9, + 0x38,0x55,0x24,0x2a,0xae,0x26,0xbc,0xa1,0x71,0xec,0xe6,0x95,0xcb,0xf7,0xf1,0xdd, + 0x93,0xd7,0x78,0xf7,0xf2,0x2d,0x5e,0x3e,0x78,0x8e,0xfb,0xf3,0xf7,0x31,0xd5,0x31, + 0x8f,0xaa,0xf4,0xae,0xf,0x49,0x41,0x15,0xa3,0xfe,0x1e,0xb9,0x96,0xb2,0x1a,0x61, + 0x2c,0xcb,0x93,0x6c,0xd9,0x62,0xb3,0x51,0x4b,0x3f,0x7a,0xbf,0x9d,0x63,0x8e,0x96, + 0xa7,0x77,0x89,0xe9,0x29,0xdf,0x72,0xb,0x47,0x97,0x1c,0x2d,0x3,0xb3,0x64,0x11, + 0xa,0x45,0x63,0xfd,0xf2,0x18,0xb3,0x93,0x89,0xbc,0x81,0xc1,0x65,0x67,0xca,0xcb, + 0x87,0xee,0x5d,0x9e,0xbf,0x8b,0xf7,0x3f,0x7c,0xc4,0x87,0xd7,0x3f,0xe2,0x87,0xa7, + 0x2f,0x71,0xff,0xd6,0x12,0xa6,0x26,0x67,0x50,0x5e,0xd3,0x84,0xf0,0x84,0xec,0xfb, + 0x4e,0x3e,0x89,0xe9,0x26,0x2e,0xd1,0xfb,0xff,0xc,0x81,0x55,0x12,0x32,0xde,0xdc, + 0x16,0x56,0xb1,0x6e,0x59,0xb9,0x6d,0x63,0x97,0xbf,0xbc,0xf3,0xfa,0xc3,0xbb,0x4f, + 0xf8,0xf0,0xf6,0x3,0xbe,0x7f,0xf6,0x3d,0xbe,0xb9,0xfb,0x18,0x8b,0xf3,0x77,0x70, + 0xa5,0xef,0xa,0x46,0xcb,0xce,0xa3,0x24,0xb2,0xe1,0x49,0x88,0x73,0x56,0x89,0x96, + 0x6e,0x88,0x9e,0x86,0x41,0xb4,0x98,0x6f,0x70,0xb5,0x6a,0x70,0x44,0x5d,0x68,0x64, + 0x6c,0x73,0x63,0x6c,0x42,0xfb,0x60,0xd4,0x99,0xd6,0xb1,0xd0,0xa8,0x86,0x86,0xc0, + 0xb0,0xda,0xd3,0xce,0x9e,0xb9,0xca,0xf2,0x2a,0x7e,0xfc,0xfe,0x81,0x39,0x6,0xb9, + 0xb9,0x2d,0x83,0x23,0x43,0xf3,0xbf,0x3c,0x7f,0xf2,0x3d,0x7e,0xfa,0xf1,0x3,0xde, + 0xbf,0x7a,0x8b,0x17,0x8f,0x9f,0xe3,0xde,0xcd,0x25,0x4c,0x4f,0x4e,0xa1,0xa1,0xb5, + 0x19,0xd1,0xa9,0xe9,0x70,0xf0,0xb,0x9b,0x35,0xb0,0xf5,0xb7,0x96,0x94,0x74,0xdf, + 0xa4,0xaf,0xaf,0xff,0x39,0xae,0x24,0xbb,0xce,0xc4,0x32,0xe6,0x8,0x35,0x28,0xaf, + 0xb8,0xba,0xba,0xef,0xe5,0xc3,0xfb,0x4f,0xb1,0x7c,0x7d,0xfa,0xf1,0x23,0x5e,0x12, + 0x85,0xbe,0x5e,0x7a,0x84,0x3b,0x97,0x6e,0xe1,0xda,0xc0,0x15,0xcc,0xd6,0x4c,0xa3, + 0x3a,0xaa,0xf1,0x67,0x7f,0x9b,0xc4,0xc5,0x93,0x7a,0xc1,0x9d,0xe,0xee,0x99,0x85, + 0xa9,0xd9,0xfd,0x75,0x15,0xf5,0xd3,0xb3,0x35,0xcd,0xb3,0x4f,0x2b,0xeb,0xa6,0xde, + 0x14,0x57,0x9d,0x7f,0x9f,0x5f,0x36,0xfa,0x24,0xb3,0x60,0xe0,0x52,0x44,0x7c,0x7d, + 0x93,0x9d,0x47,0x6a,0x76,0x40,0x58,0x6e,0x73,0x6d,0x7d,0xcf,0xe3,0x3b,0xb,0xf7, + 0xf1,0xee,0x87,0x37,0xf8,0xf8,0xee,0x3d,0xde,0xbc,0xfc,0x1,0xcf,0x1e,0x3d,0xc3, + 0xd2,0x57,0x4b,0x98,0x59,0x26,0xd0,0xd6,0x80,0xe8,0xf4,0x44,0x98,0xb9,0xbb,0xbd, + 0x54,0x33,0xb0,0x2e,0x91,0x91,0xb7,0x51,0x26,0x6e,0xb9,0xb2,0xca,0x7f,0x70,0xed, + 0x63,0x3a,0x75,0xea,0xac,0x61,0x46,0x66,0xc3,0x60,0x5f,0xef,0x45,0x3c,0x79,0xfc, + 0x12,0x9f,0xde,0x7f,0xc0,0x5b,0x32,0xd1,0xb3,0x6f,0x9e,0xe1,0xe1,0xad,0x7,0x58, + 0x98,0xb9,0x89,0x2f,0xbb,0x2f,0xe1,0x62,0xe9,0x4,0xea,0x22,0x9a,0x10,0x68,0x97, + 0x2,0x7b,0x9b,0x33,0x3f,0x47,0xc4,0xd6,0xbe,0x6d,0x6c,0x9b,0x7f,0x37,0x3e,0x75, + 0xef,0xe7,0x99,0xcb,0xdf,0x60,0xec,0xe2,0x7d,0xf4,0x8d,0xde,0x46,0x7b,0xff,0x75, + 0xd4,0xb4,0xce,0x20,0x25,0xa7,0xf3,0x17,0x9f,0xd3,0x5,0xef,0x82,0xa3,0xa,0xde, + 0x36,0xb7,0xf4,0x7d,0xba,0x7b,0x6b,0x11,0xdf,0x3f,0x7d,0x81,0xd7,0xcf,0xbf,0xc7, + 0x4b,0xa2,0xfe,0x37,0x4b,0x8f,0x71,0xf3,0xf2,0x4d,0x4c,0x8c,0x4f,0xa0,0xbc,0xbe, + 0x1c,0xfe,0xb1,0x1,0xd0,0xb4,0x34,0xf8,0x78,0x54,0x4d,0xe7,0xf2,0x21,0x69,0xa3, + 0x30,0x61,0x61,0xc3,0x3d,0x7f,0x64,0xfd,0x2a,0xa,0x85,0x77,0x5b,0x50,0x50,0x86, + 0x5d,0x4d,0x75,0xf7,0xf4,0xfc,0xec,0x4d,0x3c,0x7b,0xfc,0x2,0xaf,0x9e,0x7d,0x87, + 0xe7,0xdf,0x3e,0xc7,0xe3,0x7b,0x8f,0x71,0xf7,0xda,0x12,0xae,0x9f,0xbf,0x86,0x99, + 0x96,0x29,0x8c,0xe7,0xe,0xa1,0x3e,0xac,0x19,0x67,0xbc,0x8b,0x11,0x1b,0x53,0x87, + 0xc6,0xb6,0x59,0x5c,0xbd,0x49,0xdc,0xe0,0xd1,0x5b,0x2c,0x3e,0x78,0x8d,0xf9,0xeb, + 0x4f,0x31,0x3e,0xfd,0x10,0xfd,0xe3,0x8b,0x38,0x37,0x74,0x13,0x15,0x8d,0x17,0x11, + 0x97,0xda,0x82,0xb8,0x94,0x5a,0x34,0x34,0xf4,0xe3,0xea,0xdc,0x35,0x3c,0xba,0xfd, + 0x0,0x4f,0xef,0x7d,0x8b,0xc7,0x77,0x1e,0x61,0xf1,0xda,0x1d,0xcc,0x5d,0x9c,0x43, + 0x4f,0x7f,0xf,0xb2,0xcb,0xb3,0xe1,0x1c,0xe2,0xc,0x5,0x3,0x55,0x88,0xcb,0x2a, + 0x7d,0x2d,0x2a,0xa6,0x91,0x2d,0xb4,0xe7,0x84,0xf0,0x67,0x10,0x60,0x65,0xf3,0xf7, + 0x4f,0x76,0xac,0xae,0x68,0xfb,0x72,0x7e,0xea,0x2b,0x7c,0x7d,0xe7,0x31,0x1e,0x2f, + 0x7e,0x8d,0x87,0xb7,0x1f,0x62,0xe9,0xda,0x22,0x6e,0x4e,0xdd,0xc0,0x7c,0xef,0x25, + 0x4c,0x94,0x8f,0xa1,0x33,0xbe,0x1d,0xa5,0x41,0x75,0x48,0xb,0xaf,0x47,0x59,0xf9, + 0x8,0xa6,0x49,0x70,0x3f,0x79,0xfe,0xe,0xcf,0x5e,0xfe,0x88,0xfb,0x5f,0xbf,0xc2, + 0x95,0xaf,0x9e,0x90,0x55,0xb8,0x87,0xee,0xa1,0x5,0xb4,0xf7,0x5d,0x45,0x4d,0xcb, + 0x45,0x64,0x14,0x76,0x23,0x31,0xad,0x11,0x39,0xb9,0xad,0xe8,0x68,0x19,0xc2,0xec, + 0xf9,0x4b,0x58,0xb8,0x7c,0x3,0xd7,0xe7,0xae,0x62,0xe6,0xfc,0x34,0xfa,0xfa,0xfb, + 0x50,0xd9,0x5c,0x8d,0xe8,0xac,0x18,0x18,0x9d,0x32,0x86,0x84,0x8a,0xd4,0xcf,0x5f, + 0x48,0x1c,0xbc,0x2d,0x28,0xa4,0x90,0xb0,0x77,0xf7,0xb1,0x2f,0xfe,0x88,0x0,0xf9, + 0x7e,0x13,0xb3,0xab,0x53,0xb8,0x65,0x7a,0x52,0xf1,0x6c,0x5f,0xcb,0x18,0xbe,0x9a, + 0xba,0x49,0x82,0xf6,0x36,0x6e,0xcd,0x2c,0xe0,0xda,0xf8,0x55,0xcc,0xf7,0x10,0xd7, + 0xa9,0xbb,0x80,0x9e,0xf4,0x1e,0x14,0x53,0x2b,0x90,0xe2,0x53,0x8a,0xec,0x94,0xe, + 0x9c,0x23,0x6,0xde,0xb8,0xf3,0x1c,0xdf,0x7d,0xff,0x1,0xaf,0x5e,0x7f,0xc4,0x37, + 0x4f,0xdf,0xe0,0xab,0x85,0xa7,0x98,0x98,0x26,0x4,0x86,0x6f,0xa2,0xb5,0xf7,0xa, + 0xea,0x3b,0xa7,0x51,0x5c,0x37,0x8c,0xc4,0x8c,0x26,0x9c,0x8e,0x28,0x44,0x7c,0x42, + 0x31,0xea,0xea,0xda,0x30,0x34,0x38,0x84,0xfe,0xfe,0x7e,0xb4,0x75,0xb6,0xa1,0xac, + 0xbe,0xc,0x89,0x45,0xc9,0x70,0x8b,0xf2,0x80,0xa2,0x99,0x32,0x76,0x4b,0xed,0x7d, + 0xbb,0x63,0xaf,0xf0,0x0,0xbf,0xa0,0x9c,0xe3,0x3e,0x3e,0x1d,0xae,0xcf,0x20,0x40, + 0xa1,0x37,0x35,0xf4,0x50,0xc,0xf0,0x8c,0xab,0x2a,0x4a,0xa9,0xf9,0x76,0xac,0x61, + 0xfc,0xd3,0x75,0x12,0xb0,0x57,0x89,0x1,0x73,0xc4,0x45,0x26,0xab,0x26,0x31,0x9e, + 0x33,0x82,0xe6,0x88,0x36,0xc4,0x39,0xe5,0x22,0xd0,0x23,0x17,0xd9,0x79,0xbd,0x18, + 0xb9,0xb0,0x88,0x85,0xa5,0x17,0xf8,0xf6,0x9,0x89,0x95,0x17,0xef,0xf0,0xf0,0xf1, + 0xf,0xb8,0x7a,0xe3,0x9,0xc6,0xa7,0xee,0xa2,0x8b,0xb8,0x4f,0x4b,0xcf,0x65,0x34, + 0x9c,0x23,0xe9,0xb1,0x69,0xc,0xd1,0xc9,0x55,0x30,0xb7,0xd,0x81,0x99,0x95,0xf, + 0x22,0xce,0x24,0xa3,0xb0,0xba,0x14,0x85,0xb5,0xc5,0xc8,0xac,0xc8,0x42,0x54,0x4e, + 0xc,0x5c,0xa3,0xdd,0xa1,0xe1,0xa4,0x85,0x7d,0x2a,0x62,0xe0,0x10,0xe1,0x5d,0x62, + 0xdb,0xbd,0x3b,0x6e,0xcf,0x1e,0xc5,0x3,0x87,0xf9,0x6d,0x36,0x7e,0xe,0x1,0x8a, + 0x84,0x8c,0x16,0xb7,0x89,0xbe,0xab,0x43,0xb8,0x67,0x62,0x77,0x65,0x7c,0xf5,0xcb, + 0xa1,0x82,0x1,0x8c,0x15,0x8d,0x62,0x28,0x77,0x10,0xbd,0x49,0x3d,0xe8,0x8,0x6d, + 0x45,0xa1,0x6b,0x29,0xbc,0x4d,0x93,0xe1,0xec,0x9e,0x85,0xcc,0xe2,0x41,0x62,0xe8, + 0x3d,0x5c,0x5b,0x78,0x8e,0xdb,0x84,0xc4,0xe2,0xbd,0x97,0x2b,0xab,0x31,0xf3,0xe5, + 0xd7,0x18,0x3a,0x4f,0xfc,0x7f,0xf0,0x6,0x21,0xf0,0x25,0x1a,0xc8,0xa,0x94,0xd4, + 0xd,0x81,0x1a,0x96,0x8d,0x63,0x6a,0xe6,0x90,0x3a,0xaa,0x1,0x53,0x47,0x17,0x50, + 0xe3,0xc3,0x41,0x3d,0x7b,0x1a,0x5e,0x89,0xde,0xb0,0xe,0xb1,0x81,0x8a,0x83,0x3a, + 0xf6,0xa9,0x8b,0x82,0xf3,0xc0,0xce,0x77,0x2c,0x82,0xdb,0x7b,0x99,0x77,0xf2,0xe8, + 0x88,0xb3,0xff,0xba,0x87,0x7c,0xfe,0xb5,0x91,0x65,0xcf,0x9,0x45,0xd3,0x70,0x4f, + 0x23,0xbf,0x85,0x33,0xe,0x9,0xc8,0x74,0xc9,0x44,0x9e,0x4b,0x2e,0x32,0xad,0xd3, + 0x11,0xab,0x15,0x89,0x53,0xa,0x7e,0x30,0x52,0xa3,0xc2,0xd6,0x23,0xb,0x59,0x65, + 0x23,0x18,0xbe,0x70,0x17,0x53,0xf3,0x8f,0x57,0x8c,0x9e,0xbd,0xfc,0x35,0x2e,0x5e, + 0x7a,0x84,0x91,0xc9,0xbb,0xe8,0x19,0x21,0xfe,0xdf,0x7f,0x6d,0x85,0x40,0x6d,0xdb, + 0x24,0xb2,0x4b,0xbb,0xe0,0xe2,0x1d,0x87,0x3,0x52,0x6a,0xd8,0x25,0x20,0x8e,0x83, + 0xca,0xea,0x50,0xb1,0xd4,0x87,0xbc,0xa5,0xa,0xe,0x1a,0x4b,0x61,0xaf,0xa6,0x30, + 0xb6,0xcb,0xf3,0x82,0x55,0x94,0xfd,0x13,0x33,0x3f,0xe7,0x2,0xcb,0xf6,0x9d,0xb1, + 0x9b,0x29,0xbb,0x77,0x7e,0xbe,0xe1,0x64,0xcb,0xe7,0x53,0x55,0xa5,0x13,0x12,0x57, + 0x16,0x10,0xdd,0x77,0xd4,0x5f,0x7a,0xbf,0xe2,0xfc,0x49,0x19,0x23,0x78,0x9f,0xf0, + 0x41,0xb8,0x5e,0x18,0x2,0xd4,0xfd,0x61,0x7f,0xd0,0x1a,0xda,0x22,0x6,0x50,0x91, + 0x75,0x80,0xb5,0x6b,0x1a,0x32,0x4a,0x86,0xd0,0x4b,0xd2,0xe5,0xc8,0x85,0x7b,0x18, + 0x9c,0x58,0xc4,0x10,0xc1,0xc0,0xf8,0x1d,0xf4,0xc,0x2f,0xa0,0x63,0xe0,0x3a,0xf1, + 0xff,0xcb,0x68,0x26,0x69,0xb7,0xbc,0x71,0xc,0xf1,0x19,0x75,0x30,0xb3,0xb,0x84, + 0xb0,0x98,0x2,0xb8,0x77,0xee,0xc3,0x5e,0x49,0x19,0x1c,0x50,0x57,0x84,0xf0,0x71, + 0x9,0xec,0x56,0xe2,0x7,0xb7,0xc,0x2f,0xd8,0xf,0x72,0x63,0xeb,0x7e,0xae,0xf7, + 0x6c,0x82,0xbc,0xe7,0x39,0x5,0x4,0xa9,0x3b,0xf6,0xee,0x17,0xe1,0xb1,0x94,0x5d, + 0x27,0x2b,0x2b,0x4b,0x4b,0xa1,0x84,0xfd,0xbd,0x24,0xf9,0x3d,0x29,0x7a,0xe,0x5e, + 0xe1,0x3d,0x26,0x8a,0x76,0x1a,0x71,0xf6,0x67,0x9d,0x33,0x4e,0xe5,0x46,0x1a,0x29, + 0x59,0x34,0xa,0xf2,0x9,0xdf,0x53,0x92,0x51,0x45,0x8c,0x57,0x2c,0xa,0x43,0xa, + 0x10,0xef,0x18,0x87,0x60,0xb3,0x0,0x38,0x1b,0x7a,0x40,0xe3,0xb8,0x13,0xf4,0x2d, + 0xc3,0x91,0x90,0xd5,0x4e,0xfc,0xfc,0xc6,0x4a,0xce,0xef,0x1c,0xf8,0xea,0x57,0x90, + 0xdc,0xdf,0x46,0x2,0xbb,0x95,0x28,0xdf,0xd4,0x3d,0xb7,0xe2,0xff,0xf9,0x95,0xfd, + 0xa0,0x46,0xe5,0x42,0x4d,0xd7,0x1,0xbb,0x5,0xa4,0xb1,0x83,0x57,0xc,0x87,0x65, + 0xd4,0x60,0x6c,0x6b,0x7,0xd7,0xe0,0x53,0xf0,0x8a,0xf1,0x81,0x63,0xa0,0xb,0x74, + 0x2d,0xf4,0x21,0xa5,0x24,0xfd,0x81,0x5f,0x7e,0xdf,0xd,0x1e,0x83,0x3d,0xd,0x9c, + 0x5e,0x7c,0x89,0x3c,0x1,0x82,0x81,0xdb,0x8d,0x85,0xdc,0xb8,0x64,0x45,0x55,0xb9, + 0x45,0xf,0x73,0xfc,0xde,0x78,0x5a,0x6,0xc6,0xad,0xfb,0xa4,0xf6,0xab,0x9c,0x72, + 0xd6,0xf2,0x69,0xce,0x74,0xcb,0xbf,0x55,0x1b,0xda,0xf0,0x32,0xdc,0x36,0xf2,0x8d, + 0x92,0x94,0xd2,0x27,0x7d,0x3d,0x7d,0x14,0x64,0x17,0xa0,0xbd,0xb2,0xd,0xc5,0x49, + 0x45,0xc8,0x4f,0xc8,0x45,0x62,0x54,0xa,0x2c,0x2d,0x7d,0xa0,0x67,0xe4,0x8b,0xb0, + 0x33,0xe5,0x68,0x3a,0x37,0x8b,0xce,0xc1,0x6b,0x68,0x23,0x6a,0x2f,0x2b,0xde,0xd2, + 0x4d,0xc,0xef,0xba,0x84,0x46,0xf2,0x79,0x6d,0xfb,0x24,0x51,0x7f,0x1c,0xf1,0x59, + 0x8d,0xb0,0x72,0x8b,0xc4,0x21,0x79,0x3,0xf0,0x9,0xca,0x40,0x58,0x54,0x16,0xda, + 0x7a,0x46,0x8,0x8d,0x8e,0x40,0x59,0x43,0x39,0xda,0x87,0x3b,0x50,0xdd,0x5a,0x83, + 0xc8,0x98,0x48,0x9c,0xb4,0xd2,0xff,0x45,0xcc,0x42,0xe2,0x3,0xaf,0x2f,0xdf,0x1b, + 0xae,0x98,0x9d,0xaf,0xb8,0x43,0xf8,0xbf,0xe3,0xb4,0x15,0xb8,0xcf,0xa1,0xb6,0xb7, + 0x9a,0x53,0x54,0x58,0x77,0xf,0x45,0xf6,0x1f,0xbb,0xb2,0x80,0x80,0xc0,0x16,0x11, + 0xfe,0x23,0x8e,0x9a,0xd2,0xc6,0x63,0x61,0xa6,0x31,0xcf,0x9b,0x4e,0xb7,0x60,0x3c, + 0x6d,0x2,0x15,0xa1,0x15,0xf0,0x30,0x76,0x87,0x85,0x81,0x39,0xa8,0xbe,0x54,0xc4, + 0x46,0xc5,0x21,0x36,0x2c,0x6,0x51,0xa1,0x91,0x8,0xf2,0xb,0x86,0xab,0x8d,0xf, + 0x9c,0x6d,0x83,0x11,0x12,0x91,0x83,0xdc,0xf2,0x6e,0xd4,0x75,0x4e,0x11,0xc5,0xe7, + 0x57,0xdc,0xa5,0x91,0x28,0x5e,0xdf,0x31,0x85,0xda,0xd6,0x49,0x12,0xb8,0x23,0x48, + 0x2d,0xec,0x84,0xe7,0xe9,0x6c,0xa8,0xe8,0xb8,0x40,0xf8,0xd0,0x71,0x88,0xc9,0xa9, + 0x42,0xf1,0xa4,0x26,0xf4,0xec,0xf5,0xe0,0x18,0x64,0x87,0x80,0x44,0x7f,0x84,0x65, + 0x84,0x81,0x9a,0x4c,0xe2,0x2a,0xc8,0x6,0x6a,0x9e,0xaa,0x90,0x8,0x92,0xc4,0x17, + 0x29,0x42,0xd8,0x95,0x2b,0x0,0x9e,0x34,0x1,0xb0,0x5,0xf3,0x81,0xd5,0x70,0xd7, + 0x43,0xf6,0x3,0x2,0xb9,0x3c,0xc,0x22,0xf2,0x7c,0x14,0xd5,0x5f,0x9b,0x1e,0x3e, + 0x1e,0x61,0x51,0x5,0xf1,0x13,0x45,0xd6,0xca,0x2e,0x1f,0x73,0x5c,0xb,0x30,0x10, + 0x33,0x80,0x89,0xd4,0x9,0x74,0x24,0x76,0x20,0x37,0x28,0x17,0x54,0x5b,0x2a,0xec, + 0x8d,0xed,0xe1,0xe6,0xe8,0x86,0xd3,0x1,0xa7,0x11,0xe0,0x1b,0x0,0x3f,0x57,0x3f, + 0xc4,0xfa,0xc4,0xe0,0xec,0xe9,0x4c,0x44,0x85,0x64,0x22,0x3c,0xb6,0x10,0x69,0x85, + 0x24,0x8f,0x37,0x8c,0xa2,0xaa,0xf9,0xfc,0xa,0x4a,0x1b,0xc6,0x90,0x57,0x39,0x40, + 0x94,0x6f,0x82,0x77,0x68,0xe,0x74,0xcc,0xfc,0x21,0x2a,0x75,0x12,0xa2,0x32,0xea, + 0x50,0xb7,0x35,0x82,0x79,0x84,0x5,0xc,0xc2,0xb4,0xa1,0xe6,0xad,0x80,0xa3,0x4e, + 0x87,0x21,0x69,0x25,0x1,0x31,0x6b,0x51,0x88,0xb9,0x8a,0x41,0xfc,0xb4,0x38,0xc4, + 0x92,0x25,0xb0,0x2f,0x5b,0x14,0xbb,0xb3,0x5,0xc1,0x95,0xb1,0xb,0xcc,0xf1,0x5c, + 0x60,0xb4,0xe7,0xfa,0xc4,0x7a,0x78,0xe7,0x35,0x76,0x76,0x1,0x2a,0xeb,0x7a,0xc1, + 0x5f,0x1b,0xaa,0x5d,0xdc,0x42,0x6,0xda,0x87,0x8d,0x6,0x2,0xf4,0x42,0x51,0xe3, + 0x5b,0x87,0xa1,0xb8,0x41,0x8c,0xa5,0x8c,0x62,0x20,0x7d,0x0,0xdd,0x19,0xdd,0xa8, + 0x4e,0xa8,0x46,0x5e,0x74,0x2e,0x8a,0x53,0x8b,0xd0,0x50,0xd6,0x80,0xfa,0xb2,0x3a, + 0xd4,0xe5,0xd7,0xa2,0xbb,0xb0,0x1d,0xcd,0xe9,0xcd,0x48,0xa0,0x66,0xc0,0xc3,0x25, + 0x1a,0xde,0x81,0x67,0x11,0x99,0x42,0x36,0xb7,0xfc,0x76,0x64,0x96,0xf4,0x20,0x39, + 0xaf,0x3,0xe1,0xc9,0x35,0x70,0xf6,0x4f,0x85,0x86,0xb1,0x37,0xc4,0x65,0xc,0xb0, + 0x5b,0x48,0x19,0x52,0xea,0x9a,0xb0,0x8c,0xb2,0x83,0x5f,0x9d,0x7,0x5c,0x2a,0xad, + 0x60,0x98,0xa1,0x5,0xd5,0x58,0x5,0x48,0x87,0x48,0x41,0x32,0xe4,0x0,0xe,0xc4, + 0x10,0xa4,0x4a,0x42,0x22,0x5b,0x12,0xc2,0x39,0x62,0xd8,0x93,0x25,0x8,0xce,0x4c, + 0x5e,0x30,0xa6,0x70,0x60,0xa3,0x17,0x7,0x98,0x8e,0x71,0xbd,0x67,0xe1,0xe7,0x29, + 0x65,0x61,0xdf,0x25,0x46,0xa1,0x60,0x15,0x85,0x97,0xe3,0x8b,0x60,0x33,0x59,0x9b, + 0xb9,0x33,0xa6,0x89,0xa8,0xf5,0xae,0x43,0x7b,0x48,0x3b,0xfa,0xe2,0x7b,0x31,0x94, + 0x39,0x84,0x89,0x92,0x9,0xb2,0xf3,0x5e,0xc4,0x7c,0xe7,0x1c,0x6e,0x8c,0x5d,0xc7, + 0xdd,0x4b,0x8b,0x78,0x70,0xed,0x2e,0x96,0x66,0x6e,0xe1,0xa,0x71,0x95,0xb6,0xb4, + 0x56,0x44,0x3b,0xc5,0xc3,0xc1,0xc0,0x7,0xd6,0x36,0x1,0xb0,0xf7,0x8a,0x86,0x83, + 0x4f,0x2,0x1c,0x7d,0x53,0x60,0xed,0x91,0x0,0x3d,0xeb,0xd3,0x50,0xd0,0x72,0x86, + 0xf8,0x51,0x3,0xec,0x95,0x50,0x87,0xa0,0xf8,0x31,0xc8,0x1b,0x68,0xc2,0x3e,0xc5, + 0x6,0xc1,0x5d,0x1e,0x8,0xe8,0x73,0xc5,0xa9,0x73,0x76,0x70,0x68,0xb7,0x80,0x59, + 0xa3,0x21,0x74,0xab,0xb5,0xa1,0x5a,0xa6,0xa,0xd9,0x62,0x39,0x48,0xe6,0x1d,0xc2, + 0xbe,0x8c,0xfd,0xd8,0x95,0x24,0x0,0xf6,0xa4,0x1d,0xd8,0x9c,0xc0,0x8e,0xd,0xd4, + 0x6d,0xd8,0xa8,0xcb,0x86,0x8d,0x92,0xec,0x3,0xcc,0xbc,0x9c,0x7a,0x3c,0x14,0x11, + 0x46,0xa,0xf,0x1b,0x7f,0xbe,0xfd,0x31,0xe7,0x7b,0xd9,0xb6,0xb9,0xa8,0x74,0xab, + 0x44,0x85,0x67,0x5,0xda,0x22,0xdb,0x30,0x92,0x35,0x82,0xc9,0xb2,0x49,0xcc,0x35, + 0xcd,0xe1,0x7a,0xdf,0x35,0x2c,0x4d,0x2d,0xe2,0xf1,0xb5,0x87,0x78,0x76,0xe7,0x5b, + 0x3c,0x98,0x5f,0xc2,0x85,0x96,0x9,0x14,0x84,0x15,0xc2,0x5b,0x9f,0xa,0x2b,0xd, + 0x27,0x58,0x5a,0x9c,0x82,0xa1,0xd5,0x29,0xc8,0x6b,0x58,0x41,0x42,0xce,0x88,0x14, + 0x61,0x86,0xd8,0x7b,0x50,0x1b,0x2,0xe2,0xc7,0xb1,0x5f,0x4a,0x13,0x87,0xe4,0xb4, + 0x71,0x48,0x51,0x15,0x4a,0xa6,0xc7,0x61,0x15,0x67,0xa,0xdf,0x6,0x67,0xf8,0x9d, + 0x73,0x86,0x67,0x8f,0x3,0x9c,0x7b,0xac,0x61,0xd5,0x61,0xa,0x83,0x6,0x3d,0xa8, + 0x57,0xaa,0x43,0xbe,0x54,0x1,0x7,0xb,0xa4,0x20,0x74,0x56,0x4,0x3c,0x61,0xbb, + 0xc1,0x7a,0x9a,0xb,0x9b,0xa2,0xd8,0xb0,0x3e,0x74,0x2b,0xe8,0xad,0x59,0x40,0x2f, + 0xc7,0xf2,0xe5,0x26,0x9e,0x6d,0x1,0xcc,0x14,0x9e,0x2f,0x28,0x5c,0x5b,0x77,0x75, + 0x3a,0x2a,0xb9,0xbe,0x2a,0x71,0x2c,0x45,0x91,0x5d,0x11,0x32,0x6c,0x33,0x50,0x13, + 0x54,0x8b,0xc1,0x8c,0xc1,0x95,0x15,0x98,0x6d,0x9c,0xc5,0x15,0x52,0xa,0xcc,0xf6, + 0xcc,0x60,0xa4,0x7d,0x4,0xfd,0xad,0xc3,0xe8,0x6a,0x1c,0x42,0x4d,0x41,0x3b,0xe2, + 0x2,0x32,0x61,0xab,0xeb,0x1,0x6d,0x5,0x43,0x68,0x6b,0x1a,0x41,0xcf,0xd0,0x2, + 0x1a,0x7a,0x96,0x50,0x3e,0x61,0x1,0x45,0xd,0x73,0x1c,0x23,0x58,0x7e,0xad,0xa2, + 0x61,0x2,0x45,0x55,0x6d,0x1c,0x55,0x51,0x81,0xba,0x89,0x2e,0xec,0xc3,0xdc,0xe1, + 0x97,0x1f,0x86,0x53,0x5,0x1,0xb0,0xcd,0x76,0x84,0x71,0x96,0x31,0x4e,0x16,0xea, + 0xae,0xac,0x80,0x7a,0xa5,0x1a,0xe4,0x4a,0xe4,0x71,0xb0,0x90,0x6c,0x6c,0x89,0x22, + 0xe0,0xf2,0xe4,0x5,0x93,0xb,0x51,0x3d,0x64,0x1b,0xe8,0x63,0x59,0xb1,0xc6,0x8b, + 0x9,0x6b,0x54,0x19,0xef,0x33,0x70,0x6f,0x29,0xd8,0x44,0xd9,0xaa,0x44,0x61,0x67, + 0xde,0x3e,0xed,0x74,0xcc,0xe5,0xa7,0x72,0xe7,0xa,0xe4,0x5a,0xe5,0x20,0xce,0x38, + 0xe,0xc5,0xa4,0x44,0xee,0x39,0xdb,0x83,0xf1,0xe2,0x71,0xcc,0xb7,0x5c,0xc2,0x97, + 0x5d,0xf3,0x68,0x2f,0xed,0x40,0x62,0x64,0x1a,0x2,0xa9,0x9,0x88,0x8c,0x2a,0x44, + 0x6a,0x5a,0x13,0xce,0xc4,0x55,0xc0,0xc1,0x2e,0x8,0xa,0xb2,0x27,0x70,0x50,0xf2, + 0x8,0x34,0xb5,0xb4,0xe1,0xe5,0x43,0x45,0x68,0xc4,0x19,0xf8,0x7,0x91,0x6c,0x15, + 0x1a,0x8b,0x80,0xa0,0x8,0x98,0x5b,0xd8,0x40,0x5e,0x51,0x9,0x47,0xe5,0x95,0x61, + 0x68,0xe9,0x82,0x80,0xe8,0x1c,0x44,0x67,0x34,0xc0,0x2b,0x32,0xf,0x6,0xae,0xfe, + 0x50,0x71,0x34,0x81,0x72,0x88,0x6,0x34,0xf2,0x35,0x8,0x1,0x55,0xc8,0x95,0xca, + 0xe3,0x50,0xf1,0x61,0x8,0xc6,0xed,0x3,0x87,0xd,0x37,0x36,0x9b,0xb0,0x82,0xc1, + 0x7f,0x2b,0xd6,0x25,0xb1,0x60,0x75,0xc8,0x66,0xac,0xd6,0xdc,0xf8,0xfd,0x3a,0x8e, + 0xcd,0xbd,0xc,0x14,0x46,0x53,0xa,0xc7,0x16,0xee,0x45,0x37,0x15,0xf,0x54,0xb9, + 0x54,0x23,0xcb,0x3c,0xb,0x61,0xba,0x61,0x2b,0xa5,0xc3,0x72,0x16,0x1a,0x2b,0x1a, + 0xc3,0x64,0xcd,0x5,0x74,0x97,0x74,0xe3,0x6c,0x44,0x16,0x1c,0xc9,0x2e,0x6a,0x6a, + 0x15,0x8,0x4f,0xff,0x2c,0xc4,0xa7,0xb5,0x21,0x35,0xa7,0x3,0xc1,0x91,0x39,0x38, + 0x69,0x64,0xf,0xc9,0x83,0xd2,0x90,0x91,0x91,0x81,0x99,0xa9,0x9,0xec,0xed,0xec, + 0x60,0x62,0x62,0xa,0x73,0x73,0xe2,0xdb,0x66,0x66,0x50,0x55,0x51,0x86,0xb4,0xc, + 0xc9,0xfb,0x3a,0xe6,0xf0,0xa5,0xa6,0x21,0x39,0xad,0x17,0x29,0xe9,0x17,0x40,0xd, + 0xea,0x80,0xb1,0x79,0x3a,0x94,0x74,0xbc,0x20,0x6d,0xa6,0x87,0xa3,0x81,0xa,0x50, + 0xc8,0x90,0x85,0x5c,0x99,0x1c,0xa4,0x2a,0xa5,0x21,0x18,0x2d,0x84,0xad,0x27,0xd9, + 0xc1,0xa0,0xc2,0x8,0x7a,0x27,0x66,0xd0,0xc5,0x6f,0x1,0x4d,0xd4,0x46,0xd0,0xe8, + 0x32,0x7c,0xa4,0x63,0x67,0x58,0x58,0x47,0xd9,0xe8,0x4d,0xe1,0x64,0xd9,0xfe,0xdc, + 0x4d,0xc5,0x1d,0xe5,0x4e,0x15,0x48,0x35,0x4e,0x5,0xf5,0x4,0x15,0x49,0xb6,0x49, + 0x68,0x3b,0xd3,0x46,0x56,0x80,0xd4,0xfd,0xd9,0x9d,0x48,0xa,0x4a,0x83,0xab,0x7d, + 0x30,0xac,0x6d,0xc3,0xe1,0xe2,0x99,0x8e,0xb0,0xd8,0x1a,0x9c,0xcd,0xee,0x42,0x4e, + 0x51,0x3f,0xb2,0xa,0x3a,0x49,0x79,0x9c,0x9,0x3,0x13,0x7b,0x1c,0x96,0x96,0x83, + 0x88,0x88,0x28,0xf8,0x76,0xf1,0x81,0x93,0x93,0x13,0x5c,0x5c,0x5c,0xd8,0xb9,0x6b, + 0x27,0x84,0x85,0xf7,0x43,0x4d,0xe3,0x24,0x7c,0xc8,0xea,0x65,0xe4,0x9e,0x43,0x5e, + 0xf1,0x5,0xa4,0x64,0x4e,0x20,0x34,0x6a,0x0,0x4e,0xee,0x2d,0xd0,0x31,0xce,0xc2, + 0x61,0x55,0x7b,0x8,0x6b,0x49,0xe3,0x80,0x9f,0x4,0x64,0x8b,0x64,0x71,0xa4,0x4e, + 0x6,0x82,0x51,0x42,0xd8,0xa2,0xb2,0x15,0x74,0x12,0xc,0xa0,0x33,0xdc,0x84,0xb5, + 0x91,0x4c,0xa0,0x89,0x21,0x4,0xc,0x19,0xb0,0x86,0x93,0xfe,0x1d,0x1d,0x85,0x3e, + 0x8e,0xb8,0x10,0xc7,0x7b,0x2b,0x39,0x1b,0xa4,0x9a,0xa7,0x21,0x52,0x27,0x12,0x9e, + 0xaa,0x5e,0x88,0xb7,0x4a,0x40,0x77,0x52,0x17,0xe6,0xaa,0xc9,0x4e,0x9a,0x58,0x7, + 0x7,0x53,0x4f,0xa2,0x9e,0x33,0x1c,0x5c,0x92,0x11,0x18,0x56,0x8d,0x98,0xc4,0x56, + 0x9c,0xcd,0x5a,0x36,0x64,0x0,0x65,0xd5,0xa3,0xe4,0xde,0x85,0xc8,0xb8,0x3c,0x38, + 0xba,0x50,0xa1,0x7b,0xd2,0x2,0xc7,0x54,0x34,0x89,0xcb,0xa8,0x43,0x4e,0x51,0xd, + 0xca,0x6a,0x3a,0x30,0x36,0x73,0x80,0x5f,0x10,0x29,0xa,0x49,0x8a,0x2d,0xaf,0x9b, + 0x44,0x61,0xc5,0x45,0x24,0x67,0x8f,0x22,0x22,0x7e,0x18,0x5e,0x81,0x43,0x30,0xb1, + 0x6e,0xc0,0x91,0xa3,0x54,0xf0,0x4b,0x28,0x42,0xc8,0x4c,0x2,0xd2,0x59,0x32,0x90, + 0x69,0x39,0xa,0xa1,0x78,0x61,0x30,0x2b,0xb0,0x82,0x96,0x9f,0xe,0x6b,0xb5,0x9, + 0x89,0x68,0x46,0xd0,0x24,0x6d,0xc2,0x2a,0x6b,0x6,0xac,0xe6,0xa3,0xc7,0xea,0x35, + 0x6b,0x33,0x29,0x5b,0x36,0x6d,0x79,0xae,0x24,0xac,0x4,0x47,0x45,0x27,0x58,0x49, + 0x5b,0xc3,0xf8,0xb0,0x9,0xbc,0xb5,0x7d,0x48,0xb7,0x55,0x82,0xde,0xac,0x1e,0xa4, + 0x7,0x65,0x43,0xe7,0xb8,0x35,0x54,0x4f,0x38,0xc3,0xdd,0x3b,0x97,0xa8,0x5d,0x4f, + 0x94,0xab,0x45,0x7c,0x4a,0xb,0x59,0x81,0x3e,0x94,0x54,0x8e,0xa0,0xbc,0x76,0x14, + 0x15,0xa4,0x54,0x2e,0xab,0x5e,0x7e,0xdf,0x45,0xd0,0x89,0xd2,0xaa,0x73,0x4,0xe4, + 0x5e,0xdd,0x85,0x8a,0xda,0x3e,0x54,0x35,0x8e,0xa2,0xba,0x89,0x94,0x15,0x84,0x40, + 0x2e,0xe9,0xa7,0x93,0x32,0x87,0x11,0x1a,0xd7,0x8f,0x53,0x81,0xfd,0x30,0xb5,0x6b, + 0xc1,0x51,0xd9,0x58,0x8,0x88,0xe8,0x43,0x40,0xfd,0x8,0xc4,0x83,0x25,0x71,0x20, + 0xe7,0x0,0xf6,0x4,0xa,0x80,0xf1,0x20,0x13,0x56,0x73,0xd3,0xfe,0xbc,0x46,0x91, + 0xfe,0x27,0x3a,0xdf,0x4d,0x3f,0xd1,0x84,0x6c,0xf8,0x89,0x62,0xbc,0xfe,0x67,0xca, + 0x6e,0xba,0x1f,0x29,0xf4,0x6b,0xe2,0x29,0xeb,0xe9,0xd6,0x9f,0xdf,0xc1,0xba,0xe3, + 0x89,0xe8,0xe,0xd1,0xef,0x84,0xb9,0x84,0x5f,0x9,0x6f,0x17,0x79,0x21,0xb3,0xf7, + 0xe8,0x73,0x23,0x45,0xc3,0xf7,0x9e,0x26,0x9e,0xb0,0x3d,0xe9,0xa,0x65,0x25,0x73, + 0xe8,0x18,0x50,0xe1,0x4d,0x2d,0x41,0x40,0x48,0x15,0x51,0xb3,0x18,0x51,0x67,0xea, + 0x90,0x5d,0xd0,0x4b,0x8c,0x1d,0x46,0x65,0xc3,0x4,0x9a,0x3b,0x67,0xd0,0x4d,0x9a, + 0x9f,0xc1,0xf1,0x9b,0x18,0x9b,0xba,0x8d,0xf3,0xb3,0x4b,0x2b,0x18,0x9f,0x5e,0x24, + 0xe5,0xf6,0x2d,0x52,0xf0,0x5d,0x47,0x63,0xc7,0x1c,0xca,0x6a,0x2f,0x20,0xab,0x70, + 0x14,0x67,0xce,0xf6,0x21,0x20,0xbc,0x3,0xae,0xbe,0x1d,0x30,0xb1,0x6b,0x86,0xbc, + 0x72,0x6,0x4,0xf7,0x3b,0x61,0xc7,0x1,0x39,0xf0,0xaa,0x93,0xca,0x54,0x9f,0x1b, + 0x2c,0x8a,0xac,0x1f,0xe9,0x79,0xd6,0x3f,0x58,0xc5,0xb8,0x6a,0x9e,0x66,0xef,0x9a, + 0x8b,0x6b,0xd4,0xd7,0x4d,0xad,0xd2,0xa6,0x9b,0xa6,0x1c,0x59,0x3b,0x4d,0xe1,0xa0, + 0x1d,0xa4,0xd0,0xd1,0x38,0x92,0x23,0x33,0x9a,0xb0,0xd5,0xab,0x56,0xd7,0xd0,0xd2, + 0xd0,0xb6,0x12,0x74,0x10,0x34,0xd1,0xd1,0xd2,0x35,0x32,0x6f,0x64,0x1a,0xd9,0xb3, + 0x7d,0xcf,0x3,0x49,0x51,0xc5,0x77,0x2a,0xaa,0x76,0x3f,0xdb,0x38,0x24,0xc2,0x37, + 0xb0,0x1c,0x5e,0xfe,0x45,0x38,0xe5,0x93,0x85,0xf0,0x98,0xca,0x5f,0x9,0x54,0xd, + 0x93,0x53,0x84,0x31,0xd4,0xb5,0x5e,0x40,0xcb,0xb9,0x69,0x74,0x92,0x9e,0xb9,0x67, + 0x68,0x1e,0x7d,0x23,0x97,0x57,0xd0,0x3b,0x7c,0x19,0x5d,0x3,0xf3,0x68,0x25,0x55, + 0x69,0x7d,0xdb,0x34,0x4a,0x49,0x52,0xc8,0x24,0x4,0xa2,0x12,0x48,0x7d,0x44,0xad, + 0x85,0x9d,0x5b,0xd,0x8c,0x6c,0x1a,0x70,0xec,0x44,0x9,0x84,0xe,0x4,0x81,0x63, + 0xf7,0x31,0x30,0x72,0xb3,0xff,0xb8,0x76,0xeb,0xda,0x47,0x34,0x1b,0x57,0x8f,0xae, + 0xa2,0x5d,0x55,0x48,0x59,0x45,0x89,0xa0,0xac,0xa5,0x50,0x29,0xeb,0x69,0x2,0x8, + 0x2,0x29,0xeb,0x28,0x41,0x14,0x5a,0x8a,0xb,0x29,0x24,0xa4,0x96,0xab,0x9,0x51, + 0x2,0x65,0x82,0xe3,0x4,0x27,0x8,0xd4,0x7e,0x83,0x15,0x85,0xb2,0x2a,0x9b,0x5f, + 0xe0,0xc8,0xbc,0xa6,0x8e,0xcf,0x3b,0x77,0xaf,0x7c,0xa2,0x7c,0x39,0xdc,0xbc,0xb2, + 0xe0,0xe2,0x91,0x42,0xdc,0xa8,0xec,0x1f,0x4,0xea,0x46,0x51,0xdb,0x3c,0x81,0x26, + 0x52,0x79,0xb6,0x75,0x11,0x12,0x7d,0x33,0xc4,0xe8,0xb9,0x15,0x9c,0xeb,0x9f,0x43, + 0x47,0xef,0x2c,0x9a,0x49,0x81,0x57,0x4b,0x4e,0x33,0xca,0x6a,0x2f,0x22,0x87,0xa4, + 0xe7,0xc8,0xf8,0x36,0x38,0x7b,0x16,0xc2,0xdc,0xae,0x0,0x6,0x56,0xb5,0x50,0xd1, + 0xad,0x87,0xf0,0xc1,0x4,0xb0,0x71,0x1f,0x7,0x3d,0x3d,0xcb,0x12,0xb1,0x21,0x97, + 0x40,0x9f,0x40,0x8e,0x60,0x3f,0x81,0x20,0xc1,0xde,0xdf,0xb0,0x7c,0x9c,0xb9,0x8b, + 0x80,0xf9,0x3f,0x35,0x3b,0x9c,0xe4,0x4b,0xfb,0x7d,0xa2,0x2a,0xbd,0xc6,0x66,0x91, + 0xaf,0xbd,0xfd,0x7f,0x55,0xdf,0xce,0x39,0x1e,0x76,0x4e,0x31,0x8,0xe,0x2f,0xfa, + 0x8d,0x0,0x89,0x81,0x3f,0x41,0xa0,0xbc,0x6e,0xa,0xf9,0xe5,0x93,0xa4,0x1f,0x6e, + 0x81,0xad,0x53,0x2a,0xf4,0x4d,0xcf,0x42,0xdf,0xa2,0xa,0x6a,0xfa,0xed,0x10,0x3d, + 0x9c,0xd,0x36,0x2e,0x3d,0xac,0x5b,0xb7,0x6d,0x9e,0xcc,0x6d,0xf6,0x67,0x3a,0xb1, + 0x7f,0x35,0x96,0x9d,0x7c,0xe8,0x2b,0x2c,0xaa,0x36,0x6d,0x6e,0x1d,0xff,0xa3,0x4f, + 0x40,0x35,0x9c,0x3c,0x32,0x60,0x44,0x1a,0x1a,0x13,0xb,0x2a,0xa8,0xc1,0xd9,0x2b, + 0x4,0x4a,0x49,0x16,0xaa,0xf8,0x13,0x4,0x2a,0x1a,0xa6,0x51,0x50,0x31,0x85,0xd0, + 0x98,0x7a,0x18,0x5b,0x44,0xe1,0x84,0x6e,0x24,0xf4,0xcc,0xca,0x71,0xdc,0xb0,0x1b, + 0x62,0xd2,0x45,0x60,0xdb,0x6e,0x4,0x3a,0x7a,0xf6,0x5b,0x64,0x6e,0xe3,0xff,0x95, + 0x0,0x59,0xb6,0x55,0x79,0x5f,0x8,0x1d,0xfd,0xc6,0xd8,0x3c,0xea,0x17,0x2f,0x6a, + 0x25,0xec,0x48,0x1a,0x55,0x3b,0x61,0xf,0xb5,0xe3,0x56,0xf0,0x22,0x5,0x5b,0x61, + 0xf9,0xb2,0xeb,0x4c,0xa3,0xa6,0xe9,0x2,0x39,0xe,0x9c,0x24,0x81,0x3c,0xf5,0x6f, + 0x5d,0xa8,0xa5,0x6b,0x96,0xc4,0xc0,0x2c,0xc9,0x44,0x73,0x2b,0x4,0xfc,0x4f,0x17, + 0x93,0xdf,0x72,0x25,0xc1,0xeb,0x5,0x5d,0xb3,0xa,0x68,0x99,0xe,0x91,0xa2,0xaf, + 0x4,0x6c,0x3c,0x46,0x58,0x43,0xcf,0xf6,0x82,0x18,0xef,0x47,0x40,0xff,0xbf,0x90, + 0x38,0x44,0x8,0xd4,0xed,0xe0,0x15,0x7e,0xaf,0xae,0xe5,0xe,0x7,0xb7,0x4c,0x58, + 0xd8,0x46,0x43,0x4a,0x5a,0x7,0xa2,0xe2,0xa,0xb0,0x75,0x8,0x41,0x61,0xd9,0x30, + 0xea,0x5a,0x66,0xff,0x4e,0xa0,0x85,0x10,0x68,0xef,0x9e,0x21,0x7e,0x3f,0x8b,0xee, + 0xc1,0x4b,0x2b,0xe8,0x1a,0xb8,0x44,0x62,0x62,0x6e,0x25,0x88,0x97,0xb3,0x50,0x65, + 0xc3,0xc,0x32,0xb,0x86,0xe1,0xe0,0x1a,0xb,0xf1,0x83,0xea,0x10,0x3d,0x60,0xc, + 0x4d,0xc3,0x42,0x68,0x9a,0xf4,0x60,0xff,0xe1,0x74,0xb0,0x70,0x6a,0x82,0x96,0x8e, + 0xf5,0x15,0x31,0x3c,0x96,0x60,0x3b,0x1,0x39,0x31,0xfc,0xef,0xae,0xa3,0xe4,0xb1, + 0x5e,0x26,0x66,0x76,0xec,0x15,0x96,0x83,0xdc,0x31,0x73,0xc8,0x90,0x76,0x90,0x77, + 0xa7,0x8,0x38,0x38,0x76,0x41,0xf1,0xd8,0x49,0x52,0xef,0xa4,0x21,0x31,0xb5,0x6, + 0x99,0x79,0xad,0x64,0xf,0x18,0xc0,0x32,0x81,0xfe,0x91,0xeb,0x18,0xbd,0x78,0x8b, + 0x1c,0xb5,0xdc,0x21,0xb8,0x4d,0x5e,0xdf,0x26,0x8d,0xfe,0x2,0x21,0x72,0x8d,0x64, + 0xaa,0x29,0x92,0x42,0x7b,0x48,0xfc,0x14,0x43,0x43,0xcb,0x16,0x3c,0x3b,0x85,0x9, + 0x8e,0xe0,0x90,0xac,0x37,0xa4,0xe4,0x23,0xb0,0x63,0x8f,0x5,0x36,0x30,0xee,0x7, + 0xd,0xed,0xa6,0x87,0x64,0xee,0x30,0x82,0xe5,0x13,0x89,0xff,0x9a,0xc0,0x11,0xf2, + 0x70,0x1b,0x2d,0xed,0x5a,0x30,0x6c,0x60,0xc4,0x32,0x11,0x46,0x26,0x36,0x12,0x60, + 0x1b,0x8,0xd6,0x83,0x93,0x7b,0x27,0x59,0xd,0x65,0xe8,0x19,0xd8,0x91,0xac,0x14, + 0x8a,0x88,0x98,0x1c,0xe4,0x17,0xb7,0x11,0x12,0x93,0x24,0x7d,0x5e,0x41,0xff,0xe8, + 0xd5,0x95,0x7b,0xcf,0xf0,0x15,0x72,0x72,0x77,0x9,0x35,0xe4,0x54,0x22,0x2d,0xa7, + 0x11,0x3e,0x1,0xc9,0xd0,0x35,0x70,0xc1,0x3e,0x11,0x19,0x30,0x6d,0xe1,0xc4,0x66, + 0x46,0x6e,0xb0,0x73,0x49,0x60,0x1b,0x87,0x18,0xd6,0x6f,0xe0,0xc2,0x6a,0xda,0xd, + 0x2f,0x28,0xab,0xd6,0x9c,0x23,0x7,0x24,0xcb,0x41,0xfc,0x1f,0xb3,0xcc,0x1f,0xad, + 0xcb,0x72,0x9a,0x72,0x25,0xc8,0x27,0x28,0xfe,0x1d,0x4a,0x69,0x69,0x69,0x5b,0x19, + 0x99,0x58,0x26,0xf9,0x76,0xef,0xbd,0x2d,0x79,0x48,0xee,0xa5,0x92,0x8a,0xf6,0x2f, + 0x46,0xa6,0xe,0x70,0x71,0xf,0x80,0xb7,0x5f,0x4,0xbc,0xfd,0xc3,0xc9,0x3d,0x1c, + 0x9e,0xbe,0xe1,0xf0,0xf0,0xa,0x21,0x2e,0xe7,0x3,0x3,0x63,0xfb,0xd7,0xa,0x4a, + 0x3a,0xf,0x84,0xf6,0x1d,0xbe,0xba,0x95,0x8d,0x77,0x78,0xfd,0x7a,0xa6,0xc6,0xb5, + 0x6b,0x37,0x94,0xae,0x5d,0xb7,0xa9,0x78,0xf5,0xea,0x55,0x7f,0x9b,0x23,0x91,0xcc, + 0x65,0x45,0xa1,0xac,0x59,0x4e,0x99,0xcb,0xff,0xee,0xfc,0xd7,0xd7,0x72,0xd3,0xcc, + 0x4a,0xc0,0xf3,0x2f,0xc0,0x47,0x3e,0x53,0x20,0x70,0x5b,0xbb,0x76,0x5d,0xfa,0x86, + 0xd,0x9b,0xce,0x6d,0xde,0xcc,0x7c,0x95,0x99,0x99,0xf5,0x29,0x2b,0x2b,0xdb,0xfb, + 0x6d,0xdb,0x38,0x3e,0xfe,0xa,0xf6,0x8f,0x5b,0xb7,0xb1,0x7f,0x20,0xaf,0xbf,0x23, + 0xf7,0x5b,0x2c,0xac,0x6c,0x43,0x84,0x74,0x9,0x3,0xc3,0xc6,0xc8,0x35,0x6b,0xd6, + 0x99,0x11,0x11,0x96,0x37,0xa2,0x65,0xa1,0xfe,0x79,0x8e,0xe5,0xf4,0xcd,0x44,0xf0, + 0xff,0xf7,0x4f,0xe5,0xbf,0x91,0x80,0x1c,0x34,0xad,0x4c,0x2e,0x4b,0x60,0x44,0xe0, + 0xf1,0x9b,0xdf,0xc6,0x93,0x7b,0xc2,0xef,0x10,0x45,0xde,0xfb,0x10,0x58,0x12,0xa8, + 0x12,0x88,0x13,0x6c,0xfb,0xaf,0xa5,0xfd,0xa7,0x7,0xff,0xf,0xd3,0x46,0x64,0xd6, + 0x93,0x98,0x5,0x28,0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + + // /home/maemo/tietoopcom/resources/unknown.png + 0x0,0x0,0xe,0xba, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x44,0x0,0x0,0x0,0x44,0x8,0x6,0x0,0x0,0x0,0x38,0x13,0x93,0xb2, + 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0, + 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0, + 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,0x1, + 0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0xb, + 0xf,0xd,0xb,0x40,0x64,0xfa,0x6e,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x43, + 0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x0,0x43,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x77, + 0x69,0x74,0x68,0x20,0x47,0x49,0x4d,0x50,0x57,0x81,0xe,0x17,0x0,0x0,0xe,0x15, + 0x49,0x44,0x41,0x54,0x78,0xda,0xed,0x5a,0xdb,0x6f,0x1d,0xd5,0x7e,0xfe,0xd6,0xac, + 0xb5,0xe6,0xba,0x67,0xf6,0xf6,0xbe,0x78,0x5f,0xe2,0xd8,0xe0,0x24,0x84,0x98,0x63, + 0xa7,0x90,0x28,0x5c,0x7a,0x4a,0xc2,0xad,0x3d,0x42,0xa2,0xa,0xea,0x3,0x5,0x1, + 0xf,0x7d,0xe9,0x7f,0xc0,0x2b,0x95,0x78,0x5,0xc1,0x6b,0x25,0x1e,0x4e,0x5f,0x50, + 0x49,0xa4,0xa,0x2a,0xa1,0x22,0x20,0x4a,0x42,0xa3,0x83,0x94,0x9a,0x20,0x68,0x48, + 0x5d,0xac,0x5c,0x8d,0x9d,0xd8,0xde,0xd7,0xd9,0x7b,0xcf,0x7d,0x66,0xf5,0x21,0x99, + 0xa9,0x9d,0xe4,0xc0,0x51,0x21,0xe,0xa6,0xfe,0xa4,0xa5,0x6d,0x4b,0xe3,0x19,0xcf, + 0xb7,0x7f,0xbf,0xef,0xf7,0xad,0xdf,0x6f,0x1,0x5b,0xd8,0xc2,0x16,0xb6,0xb0,0x85, + 0x2d,0x6c,0x61,0xb,0x5b,0xd8,0xc2,0x2f,0x11,0x64,0xa3,0x1f,0xf8,0xf4,0xd3,0x4f, + 0xb3,0x57,0x5f,0x7d,0x55,0xb1,0x2c,0x8b,0x97,0xcb,0x65,0x42,0x8,0x41,0x14,0x45, + 0x58,0x5a,0x5a,0xc2,0x70,0x38,0x14,0xb,0xb,0xb,0xd1,0x89,0x13,0x27,0xbc,0x93, + 0x27,0x4f,0x46,0x77,0x83,0x10,0xb6,0xc1,0xcf,0x53,0x9f,0x7f,0xfe,0xf9,0x69,0x55, + 0x55,0x1f,0x54,0x14,0x65,0x5c,0x51,0x14,0x19,0x0,0x92,0x24,0x81,0xae,0xeb,0x18, + 0xc,0x6,0xc2,0x30,0x8c,0x2b,0xfb,0xf7,0xef,0xff,0xe2,0xe4,0xc9,0x93,0xff,0x9, + 0x20,0xfc,0xd5,0x12,0x72,0xea,0xd4,0x29,0x73,0x71,0x71,0xf1,0x21,0xd3,0x34,0xff, + 0x52,0x51,0x94,0x27,0x65,0x59,0xde,0x23,0x49,0x92,0x2e,0x84,0x0,0x21,0x4,0x8c, + 0x31,0x68,0x9a,0x16,0x47,0x51,0xf4,0x5f,0x42,0x88,0xd1,0xd7,0x5e,0x7b,0x4d,0xa, + 0xc3,0xf0,0xdb,0xb7,0xdf,0x7e,0xdb,0xfd,0xd5,0x11,0x72,0xe4,0xc8,0x91,0x9c,0x10, + 0xe2,0x89,0xf1,0xf1,0xf1,0xc3,0x86,0x61,0x3c,0xcc,0x39,0xdf,0xa1,0xeb,0xba,0xc2, + 0x18,0x43,0x18,0x86,0x70,0x5d,0x17,0xaa,0xaa,0x42,0xd3,0x34,0xbe,0xbc,0xbc,0x3c, + 0xc3,0x18,0xe3,0x8c,0x31,0xcd,0x71,0x9c,0x23,0x0,0xbe,0x4,0x20,0x36,0x8a,0x10, + 0x7a,0xa7,0x1f,0xf0,0xfa,0xeb,0xaf,0xcb,0x7b,0xf7,0xee,0xdd,0x65,0x59,0xd6,0xdf, + 0xe6,0xf3,0xf9,0xe7,0x2b,0x95,0xca,0x44,0x3e,0x9f,0x67,0x0,0xe0,0x79,0x1e,0x5c, + 0xd7,0x85,0xe7,0x79,0xf0,0x7d,0x1f,0x49,0x92,0x40,0x96,0x65,0x89,0x10,0x32,0x1a, + 0x4,0x41,0xc1,0xf7,0xfd,0x66,0xb1,0x58,0xfc,0xfe,0x81,0x7,0x1e,0x18,0x9e,0x3b, + 0x77,0x6e,0x43,0x48,0x91,0xee,0x30,0x19,0xd2,0x9e,0x3d,0x7b,0x1a,0xaa,0xaa,0x1e, + 0x28,0x14,0xa,0x7b,0xab,0xd5,0x6a,0xb9,0x5c,0x2e,0x43,0x51,0x14,0x50,0x4a,0x21, + 0x49,0x12,0x8,0x21,0xeb,0x16,0x63,0xc,0x86,0x61,0x80,0x31,0x36,0x41,0x8,0x79, + 0xb4,0x5e,0xaf,0xef,0x63,0x8c,0xe5,0x7f,0x15,0x55,0x66,0x76,0x76,0x96,0x7b,0x9e, + 0xf7,0x64,0xa1,0x50,0x78,0xb9,0x5a,0xad,0x3e,0x55,0x2c,0x16,0xeb,0x92,0x24,0x61, + 0x38,0x1c,0xc2,0x75,0x5d,0x2c,0x2c,0x2c,0x60,0x71,0x71,0x11,0xd7,0xae,0x5d,0x43, + 0xb7,0xdb,0x85,0xe3,0x38,0x70,0x5d,0x37,0xfb,0xf4,0x3c,0xf,0x51,0x14,0xf5,0x7c, + 0xdf,0x3f,0x1d,0x4,0xc1,0x47,0x51,0x14,0xfd,0xfe,0xe3,0x8f,0x3f,0xee,0x6d,0x5a, + 0xd,0x59,0x59,0x59,0x19,0xa9,0xd5,0x6a,0xd3,0x8a,0xa2,0x3c,0x44,0x8,0xa9,0xc4, + 0x71,0x8c,0x38,0x8e,0x91,0x24,0x9,0x84,0x10,0xf8,0xf6,0xdb,0x6f,0x31,0x31,0x31, + 0x81,0xa9,0xa9,0x29,0x94,0x4a,0x25,0x58,0x96,0x85,0x38,0x8e,0x11,0x4,0x1,0xa2, + 0x28,0x42,0x14,0x45,0xb8,0x74,0xe9,0x52,0xfe,0xd2,0xa5,0x4b,0xcf,0xcc,0xce,0xce, + 0x3e,0x33,0x3b,0x3b,0xfb,0xce,0xa1,0x43,0x87,0xfe,0x21,0x8a,0xa2,0x77,0x4e,0x9d, + 0x3a,0xd5,0xdb,0x4c,0x1a,0x22,0x3d,0xfb,0xec,0xb3,0x55,0xc3,0x30,0xe,0x8c,0x8e, + 0x8e,0x3e,0x37,0x32,0x32,0xb2,0x2f,0x97,0xcb,0xa9,0x51,0x14,0x21,0x8e,0x63,0x84, + 0x61,0x88,0x28,0x8a,0x70,0xe1,0xc2,0x5,0x3c,0xf7,0xdc,0x73,0x58,0x58,0x58,0x40, + 0xaf,0xd7,0xc3,0xca,0xca,0xa,0x96,0x96,0x96,0x70,0xf9,0xf2,0x65,0x9c,0x3f,0x7f, + 0x1e,0xdf,0x7d,0xf7,0x1d,0xda,0xed,0x36,0x8a,0xc5,0x22,0x1e,0x7d,0xf4,0x51,0x3c, + 0xf3,0xcc,0x33,0xe8,0x76,0xbb,0x87,0x2e,0x5e,0xbc,0xf8,0xbb,0x46,0xa3,0xf1,0xcf, + 0x8b,0x8b,0x8b,0xfe,0xa6,0x88,0x10,0xc6,0x18,0x65,0x8c,0xcd,0xd8,0xb6,0xfd,0xd7, + 0xb6,0x6d,0xef,0x13,0x42,0x18,0x29,0x11,0xa9,0xef,0x8,0x82,0x20,0xbb,0x7e,0x72, + 0x72,0x32,0xfb,0x39,0xc,0x43,0x4,0x41,0x80,0x66,0xb3,0x89,0xf9,0xf9,0x79,0xf4, + 0x7a,0x3d,0x34,0x9b,0x4d,0x9c,0x39,0x73,0x6,0xf7,0xdd,0x77,0x1f,0x5e,0x7c,0xf1, + 0x45,0x4,0x41,0xf0,0x67,0x9f,0x7f,0xfe,0xf9,0xef,0x1,0x3c,0xbf,0x29,0x8,0x69, + 0x34,0x1a,0x8c,0x73,0x7e,0x5f,0x10,0x4,0x7f,0x11,0x4,0xc1,0x58,0x92,0x24,0xf0, + 0x3c,0x6f,0x1d,0x21,0xbe,0xef,0x23,0x97,0xcb,0xe1,0xe8,0xd1,0xa3,0x19,0x11,0xc3, + 0xe1,0x10,0xbe,0xef,0x83,0x73,0x8e,0x3,0x7,0xe,0xe0,0xb1,0xc7,0x1e,0xc3,0xa9, + 0x53,0xa7,0xe0,0x38,0xe,0x0,0x60,0x6e,0x6e,0xe,0x9d,0x4e,0x7,0x2f,0xbf,0xfc, + 0x32,0xce,0x9d,0x3b,0x77,0x78,0xff,0xfe,0xfd,0x7,0x67,0x67,0x67,0x4f,0xfe,0xe2, + 0x53,0xe6,0xde,0x7b,0xef,0x55,0x46,0x47,0x47,0x9f,0x36,0x4d,0xf3,0xaf,0xb6,0x6f, + 0xdf,0xae,0xe6,0xf3,0xd7,0x8b,0x44,0xaa,0xd,0x61,0x18,0x22,0x8e,0x63,0x58,0x96, + 0x5,0xd3,0x34,0xa1,0xeb,0x3a,0x54,0x55,0x45,0x2e,0x97,0x83,0xae,0xeb,0xe8,0xf5, + 0x7a,0xf8,0xe8,0xa3,0x8f,0x50,0x28,0x14,0x70,0xe0,0xc0,0x1,0xb4,0xdb,0x6d,0x74, + 0x3a,0x1d,0xa4,0x26,0xe,0x0,0xa,0x85,0x2,0xce,0x9e,0x3d,0x8b,0xa5,0xa5,0xa5, + 0xf,0x37,0x45,0xd9,0x95,0x24,0x89,0x26,0x49,0xc2,0xa3,0x28,0x82,0xe7,0x79,0xd9, + 0x72,0x5d,0x17,0xbe,0xef,0x67,0x2b,0xc,0xc3,0x4c,0x53,0xa2,0x28,0x42,0x10,0x4, + 0x90,0x65,0x19,0xc5,0x62,0x11,0xef,0xbd,0xf7,0x1e,0xda,0xed,0x36,0x76,0xec,0xd8, + 0xb1,0xee,0xde,0x9d,0x4e,0x7,0xf,0x3e,0xf8,0x20,0x0,0x1c,0xda,0x14,0x3e,0x84, + 0x73,0x2e,0x92,0x24,0x19,0x26,0x49,0xd2,0x4b,0x4d,0x97,0xef,0xfb,0x99,0x1,0x4b, + 0x3f,0x83,0x20,0x58,0x57,0x51,0x82,0x20,0x80,0xeb,0xba,0x59,0xea,0x4,0x41,0x80, + 0x13,0x27,0x4e,0xdc,0xf6,0x19,0xe5,0x72,0x19,0x0,0xee,0xd9,0x14,0x1a,0xd2,0x6c, + 0x36,0x93,0xb1,0xb1,0xb1,0xae,0x10,0x62,0xd9,0x71,0x9c,0xb2,0xef,0xfb,0x94,0x10, + 0x92,0x69,0x48,0xaa,0x23,0x69,0x19,0x4e,0xd3,0x28,0x25,0xc3,0xb6,0x6d,0xf4,0x7a, + 0x3d,0xf4,0xfb,0x7d,0x2c,0x2d,0x2d,0xa5,0x2f,0xbf,0xe,0x9e,0xe7,0x6d,0x1e,0x1f, + 0xa2,0x28,0x4a,0x1c,0x86,0xe1,0x85,0x24,0x49,0xfe,0xe0,0xfb,0xbe,0x65,0xdb,0xf6, + 0x3d,0x84,0x90,0xcc,0x7f,0xa4,0xeb,0x66,0x32,0x6,0x83,0x1,0x3a,0x9d,0xe,0x56, + 0x57,0x57,0xd1,0xe9,0x74,0xb2,0x4a,0xd4,0xed,0x76,0x6f,0xdd,0x36,0xab,0xea,0xe6, + 0x21,0x64,0x6e,0x6e,0x2e,0x1e,0x1f,0x1f,0x3f,0x2b,0x49,0x12,0xf1,0x3c,0x6f,0xb4, + 0xd9,0x6c,0x8e,0xb1,0xeb,0x0,0x80,0xcc,0x9c,0xa5,0x26,0xcc,0xf7,0x7d,0xc,0x6, + 0x3,0x74,0xbb,0x5d,0x34,0x9b,0x4d,0x2c,0x2f,0x2f,0xc3,0xb6,0x6d,0x10,0x42,0xa0, + 0xaa,0x6a,0x56,0x65,0x36,0xf3,0x6e,0x37,0xf9,0xe4,0x93,0x4f,0xae,0x4e,0x4f,0x4f, + 0x3b,0x2b,0x2b,0x2b,0x8f,0xba,0xae,0xfb,0xe7,0x71,0x1c,0x57,0x4c,0xd3,0x94,0x28, + 0xa5,0x48,0x92,0x4,0x49,0x92,0x20,0x8a,0xa2,0xcc,0xaa,0x77,0xbb,0x5d,0xb4,0xdb, + 0x6d,0xac,0xae,0xae,0xa2,0xd9,0x6c,0xc2,0xf7,0x7d,0x54,0x2a,0x15,0xcc,0xcc,0xcc, + 0xa0,0xd5,0x6a,0xdd,0x12,0x1d,0xc3,0xe1,0x10,0x0,0x3e,0xd8,0x54,0xd6,0xfd,0xad, + 0xb7,0xde,0x72,0xe,0x1f,0x3e,0x7c,0xa9,0x50,0x28,0xcc,0x3b,0x8e,0xa3,0x8d,0x8c, + 0x8c,0x58,0x8a,0xa2,0x80,0x10,0x2,0x21,0x4,0x82,0x20,0x80,0xe3,0x38,0xe8,0xf7, + 0xfb,0x19,0x21,0xbd,0x5e,0xf,0x8e,0xe3,0x40,0xd3,0x34,0x54,0xab,0x55,0x4c,0x4f, + 0x4f,0xe3,0xd3,0x4f,0x3f,0x5d,0x77,0xdf,0x4a,0xa5,0x82,0x63,0xc7,0x8e,0x6d,0x3e, + 0x42,0x0,0xc4,0xe7,0xcf,0x9f,0x3f,0xdb,0x68,0x34,0x4e,0xb9,0xae,0x5b,0x69,0xb5, + 0x5a,0x96,0x2c,0xcb,0x10,0x42,0x64,0xa9,0xe3,0xfb,0x3e,0x1c,0xc7,0x81,0x6d,0xdb, + 0xb0,0x6d,0x1b,0x41,0x10,0x80,0x10,0x82,0xb1,0xb1,0xb1,0xe4,0xa5,0x97,0x5e,0x92, + 0x96,0x97,0x97,0x11,0x45,0xd1,0x5a,0x17,0xc,0xc3,0x30,0xf0,0xe1,0x87,0x1f,0x76, + 0x67,0x67,0x67,0xff,0x69,0xb3,0x11,0x92,0x34,0x9b,0xcd,0x4b,0xa5,0x52,0xe9,0xdb, + 0x7e,0xbf,0xff,0xdb,0x20,0x8,0x76,0x33,0xc6,0xb2,0x12,0x9b,0xa,0x6a,0x6a,0xd7, + 0xa3,0x28,0x2,0xa5,0x14,0x3b,0x77,0xee,0xc4,0xc1,0x83,0x7,0xa5,0x3d,0x7b,0xf6, + 0xe0,0xb3,0xcf,0x3e,0x5b,0x77,0xc3,0xc9,0xc9,0x49,0x1c,0x39,0x72,0x4,0x84,0x90, + 0x77,0x36,0xdd,0x6e,0xb7,0x5c,0x2e,0x8f,0xd4,0xeb,0xf5,0x1a,0x21,0x64,0x4,0x80, + 0x62,0x18,0x6,0xca,0xe5,0x32,0x5c,0xd7,0xc5,0xe2,0xe2,0x22,0xba,0xdd,0x2e,0x5c, + 0xd7,0x45,0x14,0x45,0xe0,0x9c,0xc3,0xb2,0x2c,0x6c,0xdf,0xbe,0x1d,0x33,0x33,0x33, + 0x78,0xe1,0x85,0x17,0x70,0xfa,0xf4,0xe9,0x75,0xa5,0xba,0x54,0x2a,0x61,0x38,0x1c, + 0xe2,0x8b,0x2f,0xbe,0xb8,0xb4,0x59,0x8,0x21,0x7,0xf,0x1e,0xa4,0x53,0x53,0x53, + 0x66,0xad,0x56,0xab,0xda,0xb6,0xbd,0xf3,0xda,0xb5,0x6b,0xf,0xd8,0xb6,0x7d,0x80, + 0x10,0xd2,0x28,0x16,0x8b,0xb8,0xff,0xfe,0xfb,0x21,0x84,0x80,0xa6,0x69,0x10,0x42, + 0xc0,0xb6,0x6d,0x44,0x51,0x4,0xc3,0x30,0xb0,0x6d,0xdb,0x36,0x54,0xab,0x55,0xbc, + 0xf2,0xca,0x2b,0xb8,0x72,0xe5,0xca,0xba,0x72,0xcb,0x39,0xc7,0xd4,0xd4,0x14,0xde, + 0x7c,0xf3,0x4d,0x8,0x21,0xfe,0xee,0xf4,0xe9,0xd3,0xbd,0x5f,0x34,0x21,0x8a,0xa2, + 0x18,0x8f,0x3f,0xfe,0xf8,0xd4,0xcc,0xcc,0xcc,0xfd,0xbb,0x77,0xef,0x1e,0x6f,0x34, + 0x1a,0xa5,0x6e,0xb7,0xdb,0xb8,0x7c,0xf9,0xf2,0xc4,0xfc,0xfc,0xfc,0xf6,0xd5,0xd5, + 0xd5,0xb2,0xeb,0xba,0xe0,0x9c,0xa3,0x56,0xab,0x41,0x55,0x55,0x94,0xcb,0xe5,0xb4, + 0x5a,0x40,0xd3,0x34,0x10,0x42,0xf0,0xf0,0xc3,0xf,0x43,0x8,0x81,0x85,0x85,0x85, + 0x75,0xf7,0x9f,0x9a,0x9a,0xc2,0xc9,0x93,0x27,0xd1,0xeb,0xf5,0xfe,0x35,0x8e,0xe3, + 0xc2,0xe4,0xe4,0xe4,0x3d,0x17,0x2e,0x5c,0xb8,0xf4,0x4b,0x24,0x44,0xda,0xbd,0x7b, + 0xb7,0x59,0xab,0xd5,0x1e,0xaa,0x56,0xab,0xbf,0x33,0x4d,0xf3,0xa0,0x61,0x18,0x3b, + 0x72,0xb9,0x9c,0xa2,0xaa,0x2a,0xe3,0x9c,0x33,0xc7,0x71,0x68,0xb3,0xd9,0x94,0x96, + 0x96,0x96,0x30,0x3f,0x3f,0xf,0xc6,0x18,0x72,0xb9,0x1c,0x76,0xed,0xda,0x85,0x38, + 0x8e,0x41,0x29,0x85,0xef,0xfb,0xb8,0x78,0xf1,0x22,0x1e,0x79,0xe4,0x11,0x7c,0xf3, + 0xcd,0x37,0xb7,0xd8,0x74,0xc7,0x71,0x70,0xfa,0xf4,0xe9,0x30,0x9f,0xcf,0xef,0x13, + 0x42,0x70,0x21,0xc4,0x7,0xb2,0x2c,0xff,0xdb,0xf9,0xf3,0xe7,0xaf,0x86,0x61,0xf8, + 0xb3,0xcd,0x70,0x7e,0xf2,0x6e,0xb7,0x5e,0xaf,0x97,0xcb,0xe5,0xf2,0x53,0xb5,0x5a, + 0xed,0x6f,0xc6,0xc7,0xc7,0x9f,0x6c,0x34,0x1a,0x33,0x13,0x13,0x13,0xb9,0x52,0xa9, + 0xa4,0xe8,0xba,0xce,0x75,0x5d,0xa7,0xbe,0xef,0x93,0x95,0x95,0x15,0xac,0xac,0xac, + 0xa0,0xdf,0xef,0x63,0x38,0x1c,0x66,0x6d,0xc2,0xe1,0x70,0x88,0xe1,0x70,0x88,0x4e, + 0xa7,0x83,0xe9,0xe9,0x69,0x54,0xab,0x55,0xac,0xae,0xae,0x66,0x62,0xb,0x0,0x7b, + 0xf7,0xee,0xc5,0xbb,0xef,0xbe,0x8b,0xb1,0xb1,0x31,0xca,0x18,0xb3,0x84,0x10,0xd5, + 0x24,0x49,0xa,0x61,0x18,0x12,0x49,0x92,0x3a,0xb6,0x6d,0xb7,0x7e,0x11,0x11,0xf2, + 0xd4,0x53,0x4f,0xd1,0x76,0xbb,0xbd,0xd3,0xb2,0xac,0xe7,0xa,0x85,0xc2,0xb3,0xa3, + 0xa3,0xa3,0xa5,0x4a,0xa5,0x82,0x30,0xc,0xd1,0x6a,0xb5,0x40,0xe9,0x75,0xbe,0x4d, + 0xd3,0x44,0xbd,0x5e,0x47,0xa7,0xd3,0x41,0xbb,0xdd,0x86,0x6d,0xdb,0xd0,0x34,0xd, + 0x9a,0xa6,0x65,0xd7,0x4c,0x4d,0x4d,0x61,0x62,0x62,0x22,0x4b,0xa1,0x14,0xd3,0xd3, + 0xd3,0x78,0xff,0xfd,0xf7,0x51,0x2a,0x95,0xc0,0x18,0x83,0x69,0x9a,0x10,0x42,0x58, + 0x41,0x10,0xfc,0x76,0x38,0x1c,0x72,0xc3,0x30,0x56,0xf7,0xed,0xdb,0x77,0xe1,0xcb, + 0x2f,0xbf,0xc,0xef,0x36,0x21,0x92,0x6d,0xdb,0xe5,0x72,0xb9,0xbc,0xc7,0x34,0xcd, + 0xe9,0x4a,0xa5,0x52,0x2a,0x95,0x4a,0xe0,0x9c,0x67,0xdf,0x3c,0x0,0x10,0x42,0x10, + 0xc7,0x31,0x46,0x47,0x47,0xe1,0x38,0xe,0xae,0x5c,0xb9,0x82,0x76,0xbb,0x8d,0x76, + 0xbb,0x9d,0xf5,0x37,0x52,0xed,0x28,0x14,0xa,0x70,0xdd,0xff,0x9d,0x4b,0x8d,0x8c, + 0x8c,0xe0,0xe2,0xc5,0x8b,0x58,0x5c,0x5c,0xcc,0x36,0x78,0x9c,0x73,0xe8,0xba,0xe, + 0xd3,0x34,0xd5,0x5e,0xaf,0x37,0x15,0x86,0xe1,0x6f,0x3c,0xcf,0xfb,0xf,0x4a,0xe9, + 0x42,0x1c,0xc7,0xc1,0x5d,0x23,0xa4,0x5e,0xaf,0xab,0x0,0x26,0x75,0x5d,0x9f,0x2e, + 0x16,0x8b,0xe5,0x42,0xa1,0x90,0x69,0x41,0xea,0x29,0x84,0x10,0x48,0x92,0x4,0x0, + 0x90,0xcb,0xe5,0x30,0x3e,0x3e,0xe,0xce,0x39,0x4c,0xd3,0xcc,0xb6,0xf8,0x71,0x1c, + 0x67,0x4d,0x9f,0xd1,0xd1,0x51,0x9c,0x3b,0x77,0x6e,0xed,0x33,0xf0,0xc1,0x7,0x1f, + 0xa0,0x50,0x28,0x64,0x76,0x3f,0xbd,0x56,0x55,0x55,0xe8,0xba,0x9e,0xb,0xc3,0x70, + 0xb7,0xe7,0x79,0xd3,0x96,0x65,0xf5,0x3a,0x9d,0x4e,0xf3,0xae,0x11,0x42,0x8,0xc9, + 0x11,0x42,0x76,0x53,0x4a,0xa7,0x72,0xb9,0x5c,0x21,0x97,0xcb,0x41,0x92,0x24,0xf8, + 0xbe,0xf,0xd7,0x75,0x21,0x84,0x0,0xa5,0x34,0x73,0xa5,0x84,0x10,0xe8,0xba,0x8e, + 0x5a,0xad,0x6,0xd3,0x34,0xb3,0xe6,0x50,0x1c,0xc7,0xd9,0x35,0x37,0xef,0x60,0xd, + 0xc3,0xc0,0x95,0x2b,0x57,0x50,0x28,0x14,0x32,0x13,0x27,0x49,0x12,0x84,0x10,0xe0, + 0x9c,0x43,0x51,0x14,0x85,0x52,0xba,0x3,0xc0,0x6f,0x28,0xa5,0xff,0xd,0xe0,0xee, + 0x11,0x12,0x86,0xa1,0x16,0x4,0xc1,0x2e,0x0,0xbb,0x2c,0xcb,0x52,0x4d,0xd3,0x84, + 0x24,0x49,0xe8,0xf7,0xfb,0xb0,0x6d,0x3b,0x8b,0x4,0x4a,0x29,0xa2,0x28,0xca,0x22, + 0xc5,0x30,0xc,0xe8,0xba,0x9e,0x45,0x4f,0xba,0x6e,0x87,0x94,0xb8,0xb4,0xe7,0xea, + 0x38,0xe,0x28,0xa5,0x90,0x65,0x39,0x4d,0x1d,0xd2,0xe9,0x74,0xc6,0xe2,0x38,0xbe, + 0x9f,0x52,0x5a,0xbc,0xab,0x1a,0x22,0x49,0x92,0x26,0x84,0x68,0x50,0x4a,0x1b,0xa6, + 0x69,0x32,0xd3,0x34,0x11,0x4,0x1,0x6,0x83,0x1,0xda,0xed,0x36,0xc,0xc3,0x80, + 0x61,0x18,0x59,0x94,0xa4,0xbd,0x90,0x34,0xe4,0x1,0x64,0x7d,0x91,0xb5,0xd8,0xbb, + 0x77,0xef,0xba,0x2e,0x5a,0x7a,0x9d,0xef,0xfb,0x18,0xe,0x87,0x60,0x8c,0x81,0x31, + 0x6,0x45,0x51,0xa0,0x69,0x1a,0xe1,0x9c,0x8f,0x10,0x42,0xb6,0xb,0x21,0xac,0xbb, + 0x49,0x8,0x29,0x14,0xa,0x5,0x55,0x55,0x4b,0x9a,0xa6,0x29,0x9a,0xa6,0x41,0x96, + 0xe5,0xac,0x73,0xde,0x6a,0xb5,0x20,0x84,0x40,0xa5,0x52,0xb9,0x85,0x80,0xb4,0x17, + 0x92,0xf6,0x43,0xd2,0xe8,0xe0,0x9c,0xe3,0x8d,0x37,0xde,0xb8,0x65,0x72,0x97,0x56, + 0xa1,0xb4,0x37,0xcb,0x39,0xcf,0xb4,0x84,0x31,0x6,0x59,0x96,0x19,0xe7,0xbc,0xac, + 0xaa,0x6a,0xb5,0x52,0xa9,0xe4,0x56,0x57,0x57,0x7,0x1b,0x4e,0x48,0xb5,0x5a,0xd5, + 0xf3,0xf9,0x7c,0x3d,0x9f,0xcf,0xe7,0x53,0xed,0x48,0x5f,0x30,0xdd,0xb9,0xaa,0xaa, + 0xba,0x4e,0x4,0xd7,0x76,0xca,0x6e,0xb7,0x52,0xdd,0x91,0x65,0x19,0x94,0x52,0x18, + 0x86,0x91,0xfd,0x7d,0xda,0x6a,0x5c,0x3b,0xc6,0x58,0x4b,0xa4,0xa2,0x28,0x39,0x55, + 0x55,0xb7,0xfb,0xbe,0x5f,0x3,0x70,0x11,0x40,0xbc,0x91,0x4d,0x66,0xaa,0x69,0x5a, + 0x59,0xd7,0xf5,0x31,0xd3,0x34,0xad,0x34,0x2d,0xd6,0xf6,0x44,0xd3,0xa,0x72,0x73, + 0xcb,0xf0,0xe6,0x75,0x73,0xea,0xfc,0xd0,0x35,0xe9,0x70,0xeb,0x66,0x31,0xa6,0x94, + 0x82,0x73,0xae,0x50,0x4a,0xab,0x84,0x90,0x2a,0x0,0x65,0xa3,0x23,0x84,0x1,0xa8, + 0x53,0x4a,0xc7,0x74,0x5d,0xcf,0xe9,0xba,0xe,0x4a,0x69,0xd6,0xec,0xf1,0x3c,0xf, + 0x41,0x10,0x64,0x4e,0x73,0x6d,0x15,0xb9,0xdd,0xcb,0xa,0x21,0x60,0x59,0x16,0x8, + 0x21,0x59,0x83,0xa8,0xdb,0xed,0x66,0xc4,0xe,0x6,0x3,0xd4,0x6a,0x35,0xc8,0xb2, + 0x8c,0x20,0x8,0xb2,0x21,0x97,0xa2,0x28,0x19,0x21,0x8c,0x31,0x4e,0x8,0x29,0xa, + 0x21,0x2a,0x8c,0x31,0x2d,0x8a,0x22,0x67,0xc3,0x8,0x91,0x24,0x89,0x13,0x42,0x46, + 0x25,0x49,0xaa,0xeb,0xba,0x6e,0xac,0x8d,0x90,0x54,0xc,0xd3,0x6f,0xd3,0xf3,0x3c, + 0xa8,0xaa,0xfa,0x47,0x9,0x49,0x23,0xa8,0x50,0x28,0x60,0x72,0x72,0x12,0xdb,0xb6, + 0x6d,0xc3,0xf2,0xf2,0x32,0x96,0x97,0x97,0x71,0xed,0xda,0x35,0x4,0x41,0x80,0x85, + 0x85,0x5,0x1c,0x3f,0x7e,0x1c,0x3b,0x76,0xec,0xc8,0xbc,0x4d,0x3a,0x23,0x4e,0x53, + 0x86,0x73,0xce,0x9,0x21,0xa5,0x24,0x49,0x2a,0x42,0x8,0x6d,0x43,0xe7,0x32,0x42, + 0x8,0x16,0x45,0x51,0x5e,0x8,0x51,0xd4,0x34,0x4d,0x35,0xc,0x63,0x9d,0x86,0xa4, + 0x2f,0x9b,0x46,0x8c,0xef,0xfb,0xb7,0x54,0x92,0xdb,0x55,0x99,0xe9,0xe9,0x69,0x74, + 0x3a,0x1d,0xb4,0x5a,0x2d,0x5c,0xbd,0x7a,0x15,0xfd,0x7e,0x1f,0xba,0xae,0xe3,0x89, + 0x27,0x9e,0xc8,0xca,0xee,0xda,0xfb,0xa7,0xfa,0x72,0x43,0x43,0x64,0x42,0x48,0x29, + 0x8a,0xa2,0x8a,0x10,0x42,0xdd,0x50,0x42,0x0,0xd0,0x38,0x8e,0x73,0x84,0x90,0xbc, + 0xaa,0xaa,0x8a,0xa6,0x69,0x60,0x8c,0xad,0x13,0xba,0xb4,0x4c,0x3a,0x8e,0x83,0x30, + 0xc,0x7f,0x34,0x65,0xd2,0x6f,0xfa,0x87,0x10,0x4,0xc1,0x2d,0x91,0x95,0xb6,0x14, + 0x39,0xe7,0x8c,0x10,0x52,0x16,0x42,0xfc,0x64,0x42,0xfe,0x4f,0x1a,0x92,0x24,0x49, + 0x91,0x10,0x52,0xd6,0x34,0x8d,0xa7,0x55,0x26,0xc,0x43,0xc8,0xb2,0xc,0x59,0x96, + 0xa1,0x28,0xa,0x24,0x49,0xca,0xaa,0xc3,0x8f,0x9,0xe6,0x9f,0xd4,0x8b,0x4c,0x12, + 0x48,0x92,0x4,0xce,0x39,0x18,0x63,0xd9,0x9,0xa4,0x1b,0x9e,0x84,0x12,0x42,0xa, + 0x42,0x88,0x2a,0x0,0x6d,0xa3,0x9,0xe1,0x84,0x90,0x5a,0x92,0x24,0xd,0xc6,0x18, + 0x53,0x14,0x25,0xfb,0x67,0x29,0xa5,0xd0,0x75,0x1d,0xb9,0x5c,0x2e,0xcd,0xed,0xac, + 0xc3,0xfe,0xa7,0x54,0x92,0x1f,0xd9,0x2a,0x40,0x51,0x94,0xec,0x38,0xd6,0xd,0x3d, + 0xcb,0x16,0x80,0x5c,0x92,0x24,0xa3,0x0,0x36,0x36,0x42,0x34,0x4d,0xe3,0x8c,0xb1, + 0x9a,0xef,0xfb,0xd6,0xca,0xca,0xa,0xe6,0xe7,0xe7,0x21,0x84,0xc8,0xc6,0x9,0xe9, + 0xc4,0x2d,0xb5,0xd7,0x9c,0xf3,0x5b,0xdc,0xea,0xf,0x39,0xd5,0x3f,0xda,0xbe,0x8f, + 0xe3,0xec,0x48,0x85,0x10,0x2,0xc3,0xe1,0x30,0x3b,0xa3,0x66,0xdb,0x36,0x3c,0xcf, + 0xa3,0x0,0xaa,0x94,0x52,0x75,0x6d,0x97,0xfe,0x8e,0x13,0x52,0xa9,0x54,0xc0,0x18, + 0x13,0xb6,0x6d,0xe3,0xeb,0xaf,0xbf,0xc6,0xdc,0xdc,0x5c,0xe6,0x40,0xc3,0x30,0xc4, + 0x60,0x70,0xdd,0x28,0xd6,0x6a,0xb5,0xf4,0x8c,0x18,0x14,0x45,0xb9,0x2d,0x1,0x6b, + 0x7f,0x3f,0x73,0xe6,0xc,0xea,0xf5,0x3a,0x86,0xc3,0x21,0x8a,0xc5,0x22,0xe2,0x38, + 0x46,0xbf,0xdf,0xc7,0xf1,0xe3,0xc7,0x1,0x20,0x73,0xc0,0xa9,0x5b,0xa5,0x94,0x66, + 0xd1,0x17,0x45,0x11,0x1c,0xc7,0x1,0x21,0x44,0x28,0x8a,0x82,0xd,0x25,0x24,0x9f, + 0xcf,0xf,0x3d,0xcf,0xfb,0xc3,0x60,0x30,0xd0,0xba,0xdd,0xee,0xba,0x93,0x40,0x37, + 0x22,0x60,0xb7,0xa6,0x69,0xbb,0x18,0x63,0x50,0x55,0x15,0xbe,0xef,0xc3,0xb2,0x2c, + 0xc8,0xb2,0x9c,0xe5,0x7c,0x4a,0x46,0x5a,0x25,0xba,0xdd,0x2e,0xbe,0xfa,0xea,0x2b, + 0x1c,0x3b,0x76,0xc,0xed,0x76,0xfb,0x16,0x1f,0xa2,0x28,0xa,0x5a,0xad,0x16,0x3a, + 0x9d,0xe,0x6,0x83,0xc1,0x32,0x80,0xb3,0x84,0x10,0x77,0xed,0x4e,0xfa,0x86,0xa6, + 0xcc,0x71,0xce,0x97,0x37,0x34,0x65,0xa2,0x28,0xea,0x32,0xc6,0xfe,0xc5,0xf7,0xfd, + 0x13,0xe9,0x94,0x3e,0xb5,0xe7,0x8c,0x31,0x58,0x96,0xf5,0x62,0x14,0x45,0x7f,0xdf, + 0x6a,0xb5,0xf2,0x8e,0xe3,0x60,0x71,0x71,0x11,0xf9,0x7c,0x1e,0x96,0x65,0xc1,0xb2, + 0x2c,0xe8,0xba,0x9e,0x69,0xb,0xe7,0x1c,0xb2,0x2c,0xa3,0xdd,0x6e,0x67,0x4e,0x37, + 0x8,0x82,0x4c,0x30,0x7d,0xdf,0xcf,0x6,0x58,0x8e,0xe3,0xa4,0x43,0xac,0x7f,0x77, + 0x5d,0xf7,0x1f,0x85,0x10,0xcd,0xb5,0xfa,0x72,0xa3,0xfc,0xe,0x55,0x55,0xbd,0xfa, + 0x93,0xc6,0x6,0x3f,0x77,0xd7,0x7a,0x62,0x62,0xe2,0x91,0x28,0x8a,0x5e,0x4e,0x92, + 0xa4,0x11,0x86,0xa1,0x25,0xcb,0xf2,0x88,0xae,0xeb,0xa6,0x69,0x9a,0x5a,0x2e,0x97, + 0x53,0x34,0x4d,0x53,0x25,0x49,0x52,0x9,0x21,0x3c,0x25,0x44,0x92,0xa4,0x6c,0xf3, + 0xe6,0xba,0x6e,0x12,0x45,0x51,0xe8,0x38,0x4e,0xd0,0xed,0x76,0x87,0xfd,0x7e,0xbf, + 0xef,0x38,0xce,0x0,0x40,0x8f,0x10,0xd2,0xa3,0x94,0x1e,0xe9,0x76,0xbb,0xef,0xdd, + 0xa9,0x59,0xd2,0xcf,0x3e,0xa8,0xaa,0xd7,0xeb,0x5f,0x5f,0xbd,0x7a,0xb5,0x1b,0x4, + 0x41,0x25,0x49,0x92,0x6d,0x41,0x10,0x4c,0xc4,0x71,0x5c,0x77,0x5d,0x77,0xa4,0xd9, + 0x6c,0x9a,0x94,0x52,0xb,0x40,0x5e,0x8,0x91,0x7,0x30,0x2,0xc0,0x4,0x20,0x25, + 0xd7,0x4d,0x4c,0x53,0x8,0xd1,0x8a,0xe3,0xd8,0x8d,0xa2,0x68,0x18,0xc7,0xf1,0x6a, + 0x14,0x45,0xd7,0x84,0x10,0xcb,0x92,0x24,0x7d,0x2f,0x49,0xd2,0xf7,0x8c,0xb1,0xb9, + 0x3b,0x39,0x5c,0xbb,0x93,0x7,0x77,0x49,0x2e,0x97,0x2b,0x71,0xce,0xab,0x51,0x14, + 0x15,0x93,0x24,0xc9,0x5,0x41,0xa0,0xb,0x21,0x74,0x21,0x84,0x1,0xc0,0x10,0x42, + 0x98,0x84,0x10,0x4d,0x8,0x41,0xc4,0x75,0x41,0xb0,0x6f,0x2c,0x1f,0x80,0x47,0x29, + 0xed,0x72,0xce,0xbb,0x92,0x24,0x75,0x74,0x5d,0x5f,0x3d,0x74,0xe8,0xd0,0xea,0xd1, + 0xa3,0x47,0x63,0x6c,0x61,0xb,0x5b,0xd8,0xc2,0x16,0xb6,0xb0,0x85,0x2d,0x6c,0x61, + 0xb,0xff,0xef,0xf0,0x3f,0xa5,0x5b,0xfc,0x85,0xc7,0xa6,0x58,0x6f,0x0,0x0,0x0, + 0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + // /home/maemo/tietoopcom/resources/account.png + 0x0,0x0,0x2a,0xf9, + 0x89, + 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0, + 0x0,0x0,0x48,0x0,0x0,0x0,0x3e,0x8,0x6,0x0,0x0,0x0,0x88,0x96,0x5d,0x9b, + 0x0,0x0,0xa,0x4d,0x69,0x43,0x43,0x50,0x50,0x68,0x6f,0x74,0x6f,0x73,0x68,0x6f, + 0x70,0x20,0x49,0x43,0x43,0x20,0x70,0x72,0x6f,0x66,0x69,0x6c,0x65,0x0,0x0,0x78, + 0xda,0x9d,0x53,0x77,0x58,0x93,0xf7,0x16,0x3e,0xdf,0xf7,0x65,0xf,0x56,0x42,0xd8, + 0xf0,0xb1,0x97,0x6c,0x81,0x0,0x22,0x23,0xac,0x8,0xc8,0x10,0x59,0xa2,0x10,0x92, + 0x0,0x61,0x84,0x10,0x12,0x40,0xc5,0x85,0x88,0xa,0x56,0x14,0x15,0x11,0x9c,0x48, + 0x55,0xc4,0x82,0xd5,0xa,0x48,0x9d,0x88,0xe2,0xa0,0x28,0xb8,0x67,0x41,0x8a,0x88, + 0x5a,0x8b,0x55,0x5c,0x38,0xee,0x1f,0xdc,0xa7,0xb5,0x7d,0x7a,0xef,0xed,0xed,0xfb, + 0xd7,0xfb,0xbc,0xe7,0x9c,0xe7,0xfc,0xce,0x79,0xcf,0xf,0x80,0x11,0x12,0x26,0x91, + 0xe6,0xa2,0x6a,0x0,0x39,0x52,0x85,0x3c,0x3a,0xd8,0x1f,0x8f,0x4f,0x48,0xc4,0xc9, + 0xbd,0x80,0x2,0x15,0x48,0xe0,0x4,0x20,0x10,0xe6,0xcb,0xc2,0x67,0x5,0xc5,0x0, + 0x0,0xf0,0x3,0x79,0x78,0x7e,0x74,0xb0,0x3f,0xfc,0x1,0xaf,0x6f,0x0,0x2,0x0, + 0x70,0xd5,0x2e,0x24,0x12,0xc7,0xe1,0xff,0x83,0xba,0x50,0x26,0x57,0x0,0x20,0x91, + 0x0,0xe0,0x22,0x12,0xe7,0xb,0x1,0x90,0x52,0x0,0xc8,0x2e,0x54,0xc8,0x14,0x0, + 0xc8,0x18,0x0,0xb0,0x53,0xb3,0x64,0xa,0x0,0x94,0x0,0x0,0x6c,0x79,0x7c,0x42, + 0x22,0x0,0xaa,0xd,0x0,0xec,0xf4,0x49,0x3e,0x5,0x0,0xd8,0xa9,0x93,0xdc,0x17, + 0x0,0xd8,0xa2,0x1c,0xa9,0x8,0x0,0x8d,0x1,0x0,0x99,0x28,0x47,0x24,0x2,0x40, + 0xbb,0x0,0x60,0x55,0x81,0x52,0x2c,0x2,0xc0,0xc2,0x0,0xa0,0xac,0x40,0x22,0x2e, + 0x4,0xc0,0xae,0x1,0x80,0x59,0xb6,0x32,0x47,0x2,0x80,0xbd,0x5,0x0,0x76,0x8e, + 0x58,0x90,0xf,0x40,0x60,0x0,0x80,0x99,0x42,0x2c,0xcc,0x0,0x20,0x38,0x2,0x0, + 0x43,0x1e,0x13,0xcd,0x3,0x20,0x4c,0x3,0xa0,0x30,0xd2,0xbf,0xe0,0xa9,0x5f,0x70, + 0x85,0xb8,0x48,0x1,0x0,0xc0,0xcb,0x95,0xcd,0x97,0x4b,0xd2,0x33,0x14,0xb8,0x95, + 0xd0,0x1a,0x77,0xf2,0xf0,0xe0,0xe2,0x21,0xe2,0xc2,0x6c,0xb1,0x42,0x61,0x17,0x29, + 0x10,0x66,0x9,0xe4,0x22,0x9c,0x97,0x9b,0x23,0x13,0x48,0xe7,0x3,0x4c,0xce,0xc, + 0x0,0x0,0x1a,0xf9,0xd1,0xc1,0xfe,0x38,0x3f,0x90,0xe7,0xe6,0xe4,0xe1,0xe6,0x66, + 0xe7,0x6c,0xef,0xf4,0xc5,0xa2,0xfe,0x6b,0xf0,0x6f,0x22,0x3e,0x21,0xf1,0xdf,0xfe, + 0xbc,0x8c,0x2,0x4,0x0,0x10,0x4e,0xcf,0xef,0xda,0x5f,0xe5,0xe5,0xd6,0x3,0x70, + 0xc7,0x1,0xb0,0x75,0xbf,0x6b,0xa9,0x5b,0x0,0xda,0x56,0x0,0x68,0xdf,0xf9,0x5d, + 0x33,0xdb,0x9,0xa0,0x5a,0xa,0xd0,0x7a,0xf9,0x8b,0x79,0x38,0xfc,0x40,0x1e,0x9e, + 0xa1,0x50,0xc8,0x3c,0x1d,0x1c,0xa,0xb,0xb,0xed,0x25,0x62,0xa1,0xbd,0x30,0xe3, + 0x8b,0x3e,0xff,0x33,0xe1,0x6f,0xe0,0x8b,0x7e,0xf6,0xfc,0x40,0x1e,0xfe,0xdb,0x7a, + 0xf0,0x0,0x71,0x9a,0x40,0x99,0xad,0xc0,0xa3,0x83,0xfd,0x71,0x61,0x6e,0x76,0xae, + 0x52,0x8e,0xe7,0xcb,0x4,0x42,0x31,0x6e,0xf7,0xe7,0x23,0xfe,0xc7,0x85,0x7f,0xfd, + 0x8e,0x29,0xd1,0xe2,0x34,0xb1,0x5c,0x2c,0x15,0x8a,0xf1,0x58,0x89,0xb8,0x50,0x22, + 0x4d,0xc7,0x79,0xb9,0x52,0x91,0x44,0x21,0xc9,0x95,0xe2,0x12,0xe9,0x7f,0x32,0xf1, + 0x1f,0x96,0xfd,0x9,0x93,0x77,0xd,0x0,0xac,0x86,0x4f,0xc0,0x4e,0xb6,0x7,0xb5, + 0xcb,0x6c,0xc0,0x7e,0xee,0x1,0x2,0x8b,0xe,0x58,0xd2,0x76,0x0,0x40,0x7e,0xf3, + 0x2d,0x8c,0x1a,0xb,0x91,0x0,0x10,0x67,0x34,0x32,0x79,0xf7,0x0,0x0,0x93,0xbf, + 0xf9,0x8f,0x40,0x2b,0x1,0x0,0xcd,0x97,0xa4,0xe3,0x0,0x0,0xbc,0xe8,0x18,0x5c, + 0xa8,0x94,0x17,0x4c,0xc6,0x8,0x0,0x0,0x44,0xa0,0x81,0x2a,0xb0,0x41,0x7,0xc, + 0xc1,0x14,0xac,0xc0,0xe,0x9c,0xc1,0x1d,0xbc,0xc0,0x17,0x2,0x61,0x6,0x44,0x40, + 0xc,0x24,0xc0,0x3c,0x10,0x42,0x6,0xe4,0x80,0x1c,0xa,0xa1,0x18,0x96,0x41,0x19, + 0x54,0xc0,0x3a,0xd8,0x4,0xb5,0xb0,0x3,0x1a,0xa0,0x11,0x9a,0xe1,0x10,0xb4,0xc1, + 0x31,0x38,0xd,0xe7,0xe0,0x12,0x5c,0x81,0xeb,0x70,0x17,0x6,0x60,0x18,0x9e,0xc2, + 0x18,0xbc,0x86,0x9,0x4,0x41,0xc8,0x8,0x13,0x61,0x21,0x3a,0x88,0x11,0x62,0x8e, + 0xd8,0x22,0xce,0x8,0x17,0x99,0x8e,0x4,0x22,0x61,0x48,0x34,0x92,0x80,0xa4,0x20, + 0xe9,0x88,0x14,0x51,0x22,0xc5,0xc8,0x72,0xa4,0x2,0xa9,0x42,0x6a,0x91,0x5d,0x48, + 0x23,0xf2,0x2d,0x72,0x14,0x39,0x8d,0x5c,0x40,0xfa,0x90,0xdb,0xc8,0x20,0x32,0x8a, + 0xfc,0x8a,0xbc,0x47,0x31,0x94,0x81,0xb2,0x51,0x3,0xd4,0x2,0x75,0x40,0xb9,0xa8, + 0x1f,0x1a,0x8a,0xc6,0xa0,0x73,0xd1,0x74,0x34,0xf,0x5d,0x80,0x96,0xa2,0x6b,0xd1, + 0x1a,0xb4,0x1e,0x3d,0x80,0xb6,0xa2,0xa7,0xd1,0x4b,0xe8,0x75,0x74,0x0,0x7d,0x8a, + 0x8e,0x63,0x80,0xd1,0x31,0xe,0x66,0x8c,0xd9,0x61,0x5c,0x8c,0x87,0x45,0x60,0x89, + 0x58,0x1a,0x26,0xc7,0x16,0x63,0xe5,0x58,0x35,0x56,0x8f,0x35,0x63,0x1d,0x58,0x37, + 0x76,0x15,0x1b,0xc0,0x9e,0x61,0xef,0x8,0x24,0x2,0x8b,0x80,0x13,0xec,0x8,0x5e, + 0x84,0x10,0xc2,0x6c,0x82,0x90,0x90,0x47,0x58,0x4c,0x58,0x43,0xa8,0x25,0xec,0x23, + 0xb4,0x12,0xba,0x8,0x57,0x9,0x83,0x84,0x31,0xc2,0x27,0x22,0x93,0xa8,0x4f,0xb4, + 0x25,0x7a,0x12,0xf9,0xc4,0x78,0x62,0x3a,0xb1,0x90,0x58,0x46,0xac,0x26,0xee,0x21, + 0x1e,0x21,0x9e,0x25,0x5e,0x27,0xe,0x13,0x5f,0x93,0x48,0x24,0xe,0xc9,0x92,0xe4, + 0x4e,0xa,0x21,0x25,0x90,0x32,0x49,0xb,0x49,0x6b,0x48,0xdb,0x48,0x2d,0xa4,0x53, + 0xa4,0x3e,0xd2,0x10,0x69,0x9c,0x4c,0x26,0xeb,0x90,0x6d,0xc9,0xde,0xe4,0x8,0xb2, + 0x80,0xac,0x20,0x97,0x91,0xb7,0x90,0xf,0x90,0x4f,0x92,0xfb,0xc9,0xc3,0xe4,0xb7, + 0x14,0x3a,0xc5,0x88,0xe2,0x4c,0x9,0xa2,0x24,0x52,0xa4,0x94,0x12,0x4a,0x35,0x65, + 0x3f,0xe5,0x4,0xa5,0x9f,0x32,0x42,0x99,0xa0,0xaa,0x51,0xcd,0xa9,0x9e,0xd4,0x8, + 0xaa,0x88,0x3a,0x9f,0x5a,0x49,0x6d,0xa0,0x76,0x50,0x2f,0x53,0x87,0xa9,0x13,0x34, + 0x75,0x9a,0x25,0xcd,0x9b,0x16,0x43,0xcb,0xa4,0x2d,0xa3,0xd5,0xd0,0x9a,0x69,0x67, + 0x69,0xf7,0x68,0x2f,0xe9,0x74,0xba,0x9,0xdd,0x83,0x1e,0x45,0x97,0xd0,0x97,0xd2, + 0x6b,0xe8,0x7,0xe9,0xe7,0xe9,0x83,0xf4,0x77,0xc,0xd,0x86,0xd,0x83,0xc7,0x48, + 0x62,0x28,0x19,0x6b,0x19,0x7b,0x19,0xa7,0x18,0xb7,0x19,0x2f,0x99,0x4c,0xa6,0x5, + 0xd3,0x97,0x99,0xc8,0x54,0x30,0xd7,0x32,0x1b,0x99,0x67,0x98,0xf,0x98,0x6f,0x55, + 0x58,0x2a,0xf6,0x2a,0x7c,0x15,0x91,0xca,0x12,0x95,0x3a,0x95,0x56,0x95,0x7e,0x95, + 0xe7,0xaa,0x54,0x55,0x73,0x55,0x3f,0xd5,0x79,0xaa,0xb,0x54,0xab,0x55,0xf,0xab, + 0x5e,0x56,0x7d,0xa6,0x46,0x55,0xb3,0x50,0xe3,0xa9,0x9,0xd4,0x16,0xab,0xd5,0xa9, + 0x1d,0x55,0xbb,0xa9,0x36,0xae,0xce,0x52,0x77,0x52,0x8f,0x50,0xcf,0x51,0x5f,0xa3, + 0xbe,0x5f,0xfd,0x82,0xfa,0x63,0xd,0xb2,0x86,0x85,0x46,0xa0,0x86,0x48,0xa3,0x54, + 0x63,0xb7,0xc6,0x19,0x8d,0x21,0x16,0xc6,0x32,0x65,0xf1,0x58,0x42,0xd6,0x72,0x56, + 0x3,0xeb,0x2c,0x6b,0x98,0x4d,0x62,0x5b,0xb2,0xf9,0xec,0x4c,0x76,0x5,0xfb,0x1b, + 0x76,0x2f,0x7b,0x4c,0x53,0x43,0x73,0xaa,0x66,0xac,0x66,0x91,0x66,0x9d,0xe6,0x71, + 0xcd,0x1,0xe,0xc6,0xb1,0xe0,0xf0,0x39,0xd9,0x9c,0x4a,0xce,0x21,0xce,0xd,0xce, + 0x7b,0x2d,0x3,0x2d,0x3f,0x2d,0xb1,0xd6,0x6a,0xad,0x66,0xad,0x7e,0xad,0x37,0xda, + 0x7a,0xda,0xbe,0xda,0x62,0xed,0x72,0xed,0x16,0xed,0xeb,0xda,0xef,0x75,0x70,0x9d, + 0x40,0x9d,0x2c,0x9d,0xf5,0x3a,0x6d,0x3a,0xf7,0x75,0x9,0xba,0x36,0xba,0x51,0xba, + 0x85,0xba,0xdb,0x75,0xcf,0xea,0x3e,0xd3,0x63,0xeb,0x79,0xe9,0x9,0xf5,0xca,0xf5, + 0xe,0xe9,0xdd,0xd1,0x47,0xf5,0x6d,0xf4,0xa3,0xf5,0x17,0xea,0xef,0xd6,0xef,0xd1, + 0x1f,0x37,0x30,0x34,0x8,0x36,0x90,0x19,0x6c,0x31,0x38,0x63,0xf0,0xcc,0x90,0x63, + 0xe8,0x6b,0x98,0x69,0xb8,0xd1,0xf0,0x84,0xe1,0xa8,0x11,0xcb,0x68,0xba,0x91,0xc4, + 0x68,0xa3,0xd1,0x49,0xa3,0x27,0xb8,0x26,0xee,0x87,0x67,0xe3,0x35,0x78,0x17,0x3e, + 0x66,0xac,0x6f,0x1c,0x62,0xac,0x34,0xde,0x65,0xdc,0x6b,0x3c,0x61,0x62,0x69,0x32, + 0xdb,0xa4,0xc4,0xa4,0xc5,0xe4,0xbe,0x29,0xcd,0x94,0x6b,0x9a,0x66,0xba,0xd1,0xb4, + 0xd3,0x74,0xcc,0xcc,0xc8,0x2c,0xdc,0xac,0xd8,0xac,0xc9,0xec,0x8e,0x39,0xd5,0x9c, + 0x6b,0x9e,0x61,0xbe,0xd9,0xbc,0xdb,0xfc,0x8d,0x85,0xa5,0x45,0x9c,0xc5,0x4a,0x8b, + 0x36,0x8b,0xc7,0x96,0xda,0x96,0x7c,0xcb,0x5,0x96,0x4d,0x96,0xf7,0xac,0x98,0x56, + 0x3e,0x56,0x79,0x56,0xf5,0x56,0xd7,0xac,0x49,0xd6,0x5c,0xeb,0x2c,0xeb,0x6d,0xd6, + 0x57,0x6c,0x50,0x1b,0x57,0x9b,0xc,0x9b,0x3a,0x9b,0xcb,0xb6,0xa8,0xad,0x9b,0xad, + 0xc4,0x76,0x9b,0x6d,0xdf,0x14,0xe2,0x14,0x8f,0x29,0xd2,0x29,0xf5,0x53,0x6e,0xda, + 0x31,0xec,0xfc,0xec,0xa,0xec,0x9a,0xec,0x6,0xed,0x39,0xf6,0x61,0xf6,0x25,0xf6, + 0x6d,0xf6,0xcf,0x1d,0xcc,0x1c,0x12,0x1d,0xd6,0x3b,0x74,0x3b,0x7c,0x72,0x74,0x75, + 0xcc,0x76,0x6c,0x70,0xbc,0xeb,0xa4,0xe1,0x34,0xc3,0xa9,0xc4,0xa9,0xc3,0xe9,0x57, + 0x67,0x1b,0x67,0xa1,0x73,0x9d,0xf3,0x35,0x17,0xa6,0x4b,0x90,0xcb,0x12,0x97,0x76, + 0x97,0x17,0x53,0x6d,0xa7,0x8a,0xa7,0x6e,0x9f,0x7a,0xcb,0x95,0xe5,0x1a,0xee,0xba, + 0xd2,0xb5,0xd3,0xf5,0xa3,0x9b,0xbb,0x9b,0xdc,0xad,0xd9,0x6d,0xd4,0xdd,0xcc,0x3d, + 0xc5,0x7d,0xab,0xfb,0x4d,0x2e,0x9b,0x1b,0xc9,0x5d,0xc3,0x3d,0xef,0x41,0xf4,0xf0, + 0xf7,0x58,0xe2,0x71,0xcc,0xe3,0x9d,0xa7,0x9b,0xa7,0xc2,0xf3,0x90,0xe7,0x2f,0x5e, + 0x76,0x5e,0x59,0x5e,0xfb,0xbd,0x1e,0x4f,0xb3,0x9c,0x26,0x9e,0xd6,0x30,0x6d,0xc8, + 0xdb,0xc4,0x5b,0xe0,0xbd,0xcb,0x7b,0x60,0x3a,0x3e,0x3d,0x65,0xfa,0xce,0xe9,0x3, + 0x3e,0xc6,0x3e,0x2,0x9f,0x7a,0x9f,0x87,0xbe,0xa6,0xbe,0x22,0xdf,0x3d,0xbe,0x23, + 0x7e,0xd6,0x7e,0x99,0x7e,0x7,0xfc,0x9e,0xfb,0x3b,0xfa,0xcb,0xfd,0x8f,0xf8,0xbf, + 0xe1,0x79,0xf2,0x16,0xf1,0x4e,0x5,0x60,0x1,0xc1,0x1,0xe5,0x1,0xbd,0x81,0x1a, + 0x81,0xb3,0x3,0x6b,0x3,0x1f,0x4,0x99,0x4,0xa5,0x7,0x35,0x5,0x8d,0x5,0xbb, + 0x6,0x2f,0xc,0x3e,0x15,0x42,0xc,0x9,0xd,0x59,0x1f,0x72,0x93,0x6f,0xc0,0x17, + 0xf2,0x1b,0xf9,0x63,0x33,0xdc,0x67,0x2c,0x9a,0xd1,0x15,0xca,0x8,0x9d,0x15,0x5a, + 0x1b,0xfa,0x30,0xcc,0x26,0x4c,0x1e,0xd6,0x11,0x8e,0x86,0xcf,0x8,0xdf,0x10,0x7e, + 0x6f,0xa6,0xf9,0x4c,0xe9,0xcc,0xb6,0x8,0x88,0xe0,0x47,0x6c,0x88,0xb8,0x1f,0x69, + 0x19,0x99,0x17,0xf9,0x7d,0x14,0x29,0x2a,0x32,0xaa,0x2e,0xea,0x51,0xb4,0x53,0x74, + 0x71,0x74,0xf7,0x2c,0xd6,0xac,0xe4,0x59,0xfb,0x67,0xbd,0x8e,0xf1,0x8f,0xa9,0x8c, + 0xb9,0x3b,0xdb,0x6a,0xb6,0x72,0x76,0x67,0xac,0x6a,0x6c,0x52,0x6c,0x63,0xec,0x9b, + 0xb8,0x80,0xb8,0xaa,0xb8,0x81,0x78,0x87,0xf8,0x45,0xf1,0x97,0x12,0x74,0x13,0x24, + 0x9,0xed,0x89,0xe4,0xc4,0xd8,0xc4,0x3d,0x89,0xe3,0x73,0x2,0xe7,0x6c,0x9a,0x33, + 0x9c,0xe4,0x9a,0x54,0x96,0x74,0x63,0xae,0xe5,0xdc,0xa2,0xb9,0x17,0xe6,0xe9,0xce, + 0xcb,0x9e,0x77,0x3c,0x59,0x35,0x59,0x90,0x7c,0x38,0x85,0x98,0x12,0x97,0xb2,0x3f, + 0xe5,0x83,0x20,0x42,0x50,0x2f,0x18,0x4f,0xe5,0xa7,0x6e,0x4d,0x1d,0x13,0xf2,0x84, + 0x9b,0x85,0x4f,0x45,0xbe,0xa2,0x8d,0xa2,0x51,0xb1,0xb7,0xb8,0x4a,0x3c,0x92,0xe6, + 0x9d,0x56,0x95,0xf6,0x38,0xdd,0x3b,0x7d,0x43,0xfa,0x68,0x86,0x4f,0x46,0x75,0xc6, + 0x33,0x9,0x4f,0x52,0x2b,0x79,0x91,0x19,0x92,0xb9,0x23,0xf3,0x4d,0x56,0x44,0xd6, + 0xde,0xac,0xcf,0xd9,0x71,0xd9,0x2d,0x39,0x94,0x9c,0x94,0x9c,0xa3,0x52,0xd,0x69, + 0x96,0xb4,0x2b,0xd7,0x30,0xb7,0x28,0xb7,0x4f,0x66,0x2b,0x2b,0x93,0xd,0xe4,0x79, + 0xe6,0x6d,0xca,0x1b,0x93,0x87,0xca,0xf7,0xe4,0x23,0xf9,0x73,0xf3,0xdb,0x15,0x6c, + 0x85,0x4c,0xd1,0xa3,0xb4,0x52,0xae,0x50,0xe,0x16,0x4c,0x2f,0xa8,0x2b,0x78,0x5b, + 0x18,0x5b,0x78,0xb8,0x48,0xbd,0x48,0x5a,0xd4,0x33,0xdf,0x66,0xfe,0xea,0xf9,0x23, + 0xb,0x82,0x16,0x7c,0xbd,0x90,0xb0,0x50,0xb8,0xb0,0xb3,0xd8,0xb8,0x78,0x59,0xf1, + 0xe0,0x22,0xbf,0x45,0xbb,0x16,0x23,0x8b,0x53,0x17,0x77,0x2e,0x31,0x5d,0x52,0xba, + 0x64,0x78,0x69,0xf0,0xd2,0x7d,0xcb,0x68,0xcb,0xb2,0x96,0xfd,0x50,0xe2,0x58,0x52, + 0x55,0xf2,0x6a,0x79,0xdc,0xf2,0x8e,0x52,0x83,0xd2,0xa5,0xa5,0x43,0x2b,0x82,0x57, + 0x34,0x95,0xa9,0x94,0xc9,0xcb,0x6e,0xae,0xf4,0x5a,0xb9,0x63,0x15,0x61,0x95,0x64, + 0x55,0xef,0x6a,0x97,0xd5,0x5b,0x56,0x7f,0x2a,0x17,0x95,0x5f,0xac,0x70,0xac,0xa8, + 0xae,0xf8,0xb0,0x46,0xb8,0xe6,0xe2,0x57,0x4e,0x5f,0xd5,0x7c,0xf5,0x79,0x6d,0xda, + 0xda,0xde,0x4a,0xb7,0xca,0xed,0xeb,0x48,0xeb,0xa4,0xeb,0x6e,0xac,0xf7,0x59,0xbf, + 0xaf,0x4a,0xbd,0x6a,0x41,0xd5,0xd0,0x86,0xf0,0xd,0xad,0x1b,0xf1,0x8d,0xe5,0x1b, + 0x5f,0x6d,0x4a,0xde,0x74,0xa1,0x7a,0x6a,0xf5,0x8e,0xcd,0xb4,0xcd,0xca,0xcd,0x3, + 0x35,0x61,0x35,0xed,0x5b,0xcc,0xb6,0xac,0xdb,0xf2,0xa1,0x36,0xa3,0xf6,0x7a,0x9d, + 0x7f,0x5d,0xcb,0x56,0xfd,0xad,0xab,0xb7,0xbe,0xd9,0x26,0xda,0xd6,0xbf,0xdd,0x77, + 0x7b,0xf3,0xe,0x83,0x1d,0x15,0x3b,0xde,0xef,0x94,0xec,0xbc,0xb5,0x2b,0x78,0x57, + 0x6b,0xbd,0x45,0x7d,0xf5,0x6e,0xd2,0xee,0x82,0xdd,0x8f,0x1a,0x62,0x1b,0xba,0xbf, + 0xe6,0x7e,0xdd,0xb8,0x47,0x77,0x4f,0xc5,0x9e,0x8f,0x7b,0xa5,0x7b,0x7,0xf6,0x45, + 0xef,0xeb,0x6a,0x74,0x6f,0x6c,0xdc,0xaf,0xbf,0xbf,0xb2,0x9,0x6d,0x52,0x36,0x8d, + 0x1e,0x48,0x3a,0x70,0xe5,0x9b,0x80,0x6f,0xda,0x9b,0xed,0x9a,0x77,0xb5,0x70,0x5a, + 0x2a,0xe,0xc2,0x41,0xe5,0xc1,0x27,0xdf,0xa6,0x7c,0x7b,0xe3,0x50,0xe8,0xa1,0xce, + 0xc3,0xdc,0xc3,0xcd,0xdf,0x99,0x7f,0xb7,0xf5,0x8,0xeb,0x48,0x79,0x2b,0xd2,0x3a, + 0xbf,0x75,0xac,0x2d,0xa3,0x6d,0xa0,0x3d,0xa1,0xbd,0xef,0xe8,0x8c,0xa3,0x9d,0x1d, + 0x5e,0x1d,0x47,0xbe,0xb7,0xff,0x7e,0xef,0x31,0xe3,0x63,0x75,0xc7,0x35,0x8f,0x57, + 0x9e,0xa0,0x9d,0x28,0x3d,0xf1,0xf9,0xe4,0x82,0x93,0xe3,0xa7,0x64,0xa7,0x9e,0x9d, + 0x4e,0x3f,0x3d,0xd4,0x99,0xdc,0x79,0xf7,0x4c,0xfc,0x99,0x6b,0x5d,0x51,0x5d,0xbd, + 0x67,0x43,0xcf,0x9e,0x3f,0x17,0x74,0xee,0x4c,0xb7,0x5f,0xf7,0xc9,0xf3,0xde,0xe7, + 0x8f,0x5d,0xf0,0xbc,0x70,0xf4,0x22,0xf7,0x62,0xdb,0x25,0xb7,0x4b,0xad,0x3d,0xae, + 0x3d,0x47,0x7e,0x70,0xfd,0xe1,0x48,0xaf,0x5b,0x6f,0xeb,0x65,0xf7,0xcb,0xed,0x57, + 0x3c,0xae,0x74,0xf4,0x4d,0xeb,0x3b,0xd1,0xef,0xd3,0x7f,0xfa,0x6a,0xc0,0xd5,0x73, + 0xd7,0xf8,0xd7,0x2e,0x5d,0x9f,0x79,0xbd,0xef,0xc6,0xec,0x1b,0xb7,0x6e,0x26,0xdd, + 0x1c,0xb8,0x25,0xba,0xf5,0xf8,0x76,0xf6,0xed,0x17,0x77,0xa,0xee,0x4c,0xdc,0x5d, + 0x7a,0x8f,0x78,0xaf,0xfc,0xbe,0xda,0xfd,0xea,0x7,0xfa,0xf,0xea,0x7f,0xb4,0xfe, + 0xb1,0x65,0xc0,0x6d,0xe0,0xf8,0x60,0xc0,0x60,0xcf,0xc3,0x59,0xf,0xef,0xe,0x9, + 0x87,0x9e,0xfe,0x94,0xff,0xd3,0x87,0xe1,0xd2,0x47,0xcc,0x47,0xd5,0x23,0x46,0x23, + 0x8d,0x8f,0x9d,0x1f,0x1f,0x1b,0xd,0x1a,0xbd,0xf2,0x64,0xce,0x93,0xe1,0xa7,0xb2, + 0xa7,0x13,0xcf,0xca,0x7e,0x56,0xff,0x79,0xeb,0x73,0xab,0xe7,0xdf,0xfd,0xe2,0xfb, + 0x4b,0xcf,0x58,0xfc,0xd8,0xf0,0xb,0xf9,0x8b,0xcf,0xbf,0xae,0x79,0xa9,0xf3,0x72, + 0xef,0xab,0xa9,0xaf,0x3a,0xc7,0x23,0xc7,0x1f,0xbc,0xce,0x79,0x3d,0xf1,0xa6,0xfc, + 0xad,0xce,0xdb,0x7d,0xef,0xb8,0xef,0xba,0xdf,0xc7,0xbd,0x1f,0x99,0x28,0xfc,0x40, + 0xfe,0x50,0xf3,0xd1,0xfa,0x63,0xc7,0xa7,0xd0,0x4f,0xf7,0x3e,0xe7,0x7c,0xfe,0xfc, + 0x2f,0xf7,0x84,0xf3,0xfb,0x25,0xd2,0x9f,0x33,0x0,0x0,0x0,0x6,0x62,0x4b,0x47, + 0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0,0x0,0x0,0x9,0x70, + 0x48,0x59,0x73,0x0,0x0,0xb,0x12,0x0,0x0,0xb,0x12,0x1,0xd2,0xdd,0x7e,0xfc, + 0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xd9,0x3,0x2,0xf,0x7,0x1f,0xdd, + 0x59,0x89,0x13,0x0,0x0,0x20,0x0,0x49,0x44,0x41,0x54,0x78,0xda,0xd5,0x7b,0x69, + 0x8f,0x2c,0xe7,0x75,0xde,0xf3,0x2e,0xb5,0x76,0xf5,0x3a,0xd3,0x33,0x77,0xb6,0xbb, + 0x92,0x97,0xe4,0xe5,0x25,0x25,0x52,0x96,0x29,0x89,0x22,0x6d,0x58,0x72,0xa4,0x58, + 0x30,0x1d,0xb,0x16,0x14,0x44,0x94,0x82,0x20,0xf9,0x22,0xc0,0xd0,0xaf,0x31,0x60, + 0xe4,0xab,0x61,0x3,0x1,0x84,0xd8,0x81,0x1d,0xc2,0x71,0xec,0x0,0xb6,0x43,0x5b, + 0xb2,0x65,0x4a,0xa2,0x48,0x71,0xbb,0xb,0xef,0x32,0xfb,0x74,0x4f,0x2f,0xb5,0xbe, + 0x7b,0x3e,0x54,0x77,0xcf,0xdc,0x4b,0x52,0xdc,0x4c,0x27,0x69,0xa0,0xa6,0xab,0xbb, + 0x6a,0xba,0xeb,0x7d,0xea,0x9c,0xe7,0x9c,0xf3,0x9c,0xd3,0xc0,0x27,0xf0,0x78,0xea, + 0xa9,0xa7,0xde,0xf7,0x9c,0xe5,0x87,0x96,0x3f,0xd6,0x77,0x3c,0xf0,0x40,0xbd,0xdd, + 0xff,0xde,0xff,0xb3,0x8f,0xaf,0x7f,0xfd,0xeb,0xef,0xf6,0x36,0x1,0x40,0xd1,0x6, + 0xc3,0xa,0xd8,0xec,0xf5,0x3b,0x1e,0xcd,0xcf,0x34,0xdf,0xf3,0x73,0xbf,0xfd,0xed, + 0x6f,0xe2,0xdb,0xdf,0xfe,0xe6,0xc7,0xba,0xb6,0xb5,0xb5,0x8f,0x7e,0x33,0xf8,0x27, + 0x8c,0x5b,0xc4,0xbb,0x5e,0xdc,0xe8,0x44,0xcc,0xe3,0x86,0xc,0x8a,0x3c,0x43,0x86, + 0xc,0xff,0x1f,0x3d,0xc8,0xc7,0xfd,0x80,0xef,0x7e,0xf7,0xbb,0x0,0x80,0xdf,0xff, + 0xfd,0xdf,0x9f,0xbf,0x15,0xff,0xf6,0xd7,0x7f,0xfb,0xfc,0x4a,0x6f,0xe5,0x81,0xd8, + 0x8f,0x37,0xb5,0xd4,0xad,0x4a,0x54,0x5c,0x49,0x49,0x84,0x92,0x69,0x21,0xca,0xfd, + 0xc1,0xf4,0xe8,0xee,0xed,0xe9,0xed,0xeb,0xdb,0x2f,0x6f,0x1f,0xcc,0xff,0xe9,0xe1, + 0xc7,0x1e,0x6,0x0,0x34,0x5e,0x79,0x3,0xff,0xe4,0x1c,0x8,0x79,0xe7,0xa5,0x3d, + 0xf3,0xf9,0xcd,0xf6,0xf2,0xca,0x83,0xab,0xa0,0x51,0xcf,0x3a,0x2f,0xb1,0x96,0x33, + 0x29,0x64,0x2c,0x95,0xf0,0x95,0xb6,0x79,0x59,0xe5,0x22,0xcf,0xc7,0x55,0x3e,0xd9, + 0x9b,0xc,0x8f,0xc6,0xc7,0x85,0xc0,0x10,0x40,0x79,0xcf,0x1d,0x8b,0x80,0xb2,0xfc, + 0x17,0x2,0xe8,0x77,0x7f,0xf7,0x77,0xf1,0x7b,0xbf,0xf7,0x7b,0x8b,0xd7,0xdf,0xfa, + 0xd6,0xb7,0x3a,0x9c,0xf2,0x4f,0x2d,0x2f,0x2d,0xff,0x5a,0x2b,0x69,0x3d,0xdd,0x8c, + 0x9a,0xeb,0x56,0xd9,0xa4,0x2a,0x2b,0x26,0x2a,0x41,0xcb,0xb2,0x2c,0xb2,0x22,0xdb, + 0x3f,0x1a,0x1f,0xbd,0x31,0x2a,0x46,0xff,0xeb,0x7a,0x7a,0xfd,0x6f,0xab,0xb2,0x3a, + 0x3c,0x7c,0xf5,0x50,0xbe,0xdb,0xe7,0x7f,0xfe,0xea,0x19,0x7a,0xf5,0xf3,0x5f,0xf5, + 0x9a,0xad,0x95,0xa0,0x2c,0x8b,0x33,0xd6,0xda,0x7,0x9,0xa1,0x57,0x9,0xe5,0x17, + 0x0,0xb6,0x6c,0x2c,0xf3,0x95,0x94,0x2d,0x29,0x65,0xa0,0xad,0x9b,0x56,0xa2,0x2a, + 0xca,0x22,0x9b,0x54,0xf9,0x78,0x37,0x4d,0x47,0x6f,0x4f,0x26,0x93,0xb7,0x8c,0xc5, + 0x5b,0x7b,0xbb,0x77,0xc7,0x52,0x54,0x1a,0x80,0xfa,0xbf,0xe6,0x62,0xbf,0xfe,0x1b, + 0xbf,0xbe,0x91,0x34,0x92,0x5f,0xdf,0x5a,0xdb,0xfa,0xce,0xe6,0xda,0xe6,0xa3,0x67, + 0xfa,0xab,0xcd,0x30,0x88,0x38,0x1c,0x88,0x12,0x8a,0x94,0x59,0x89,0x7c,0x9c,0xbb, + 0xd1,0x60,0xb4,0xbe,0x7d,0xb0,0xfd,0xf8,0xdd,0xa3,0xbb,0x4f,0x59,0x6d,0x9f,0x3e, + 0x50,0x7,0xff,0xf9,0x10,0x87,0xaf,0x1,0xd0,0xf7,0x7f,0x66,0xd2,0xee,0x37,0x9, + 0x61,0x4f,0x58,0x6b,0xbe,0xda,0x68,0xf6,0xaf,0xfa,0x7e,0x6b,0x33,0x88,0x92,0xd5, + 0x56,0xab,0x17,0x37,0x92,0x16,0x25,0x60,0xc4,0x58,0x4b,0x8d,0x36,0xc4,0x38,0x67, + 0xcb,0xb2,0xb2,0xd3,0xe9,0xd4,0x1e,0xf,0xf,0xf4,0xc1,0xde,0xed,0xe9,0xde,0xee, + 0xdb,0x7b,0x47,0x87,0x77,0xde,0xe,0x2,0xff,0xef,0xa5,0xa8,0xfe,0x37,0x80,0x57, + 0x1,0xd8,0x4f,0x1c,0xa0,0xdf,0xfc,0xc6,0x6f,0x2,0xc0,0xc2,0x7a,0xbe,0xfc,0xaf, + 0xbf,0xbc,0xf4,0xd9,0xc7,0x3f,0xfb,0xd5,0xd5,0xfe,0xea,0xf3,0xe7,0x36,0xcf,0x3f, + 0xb5,0xb2,0xdc,0x8f,0x3a,0xed,0x36,0x18,0xe3,0x70,0xce,0x41,0x4b,0xd,0x91,0xa, + 0x88,0x44,0x60,0x29,0x5e,0xe2,0xed,0xb0,0x8d,0x86,0xd7,0x78,0x34,0x20,0x41,0xcc, + 0xd,0x2f,0xdd,0x23,0xee,0x8f,0xdf,0x78,0xfd,0x8d,0x1f,0x0,0x70,0x0,0xf0,0xec, + 0xd3,0xf,0x25,0x9f,0xfe,0xf4,0x97,0x3e,0x15,0x27,0xfd,0xcf,0xc7,0x49,0xf7,0xf3, + 0xed,0xce,0xd2,0x63,0x71,0xa3,0xb5,0xee,0x5,0x71,0xc3,0xc1,0x43,0x14,0xc6,0x88, + 0xa2,0x6,0x8,0x63,0x70,0x96,0x40,0x48,0x85,0x2c,0x2b,0x10,0x86,0x16,0xad,0x76, + 0x1f,0xfd,0x95,0x35,0xac,0xad,0x6f,0xf5,0xb6,0xce,0x5d,0xda,0x3a,0xd8,0xdf,0xb9, + 0xbc,0xbb,0x7d,0xe3,0xc1,0x3b,0xb7,0xdf,0xbc,0x7a,0xfb,0xd6,0x9b,0x7f,0xe3,0xac, + 0xf9,0x11,0x80,0x9b,0xf3,0xef,0xfa,0x44,0x0,0xfa,0xb3,0xef,0xff,0xd9,0x62,0xff, + 0xf9,0xef,0x3c,0x9f,0x24,0x71,0xf2,0xcc,0xfa,0x99,0xf5,0xdf,0x39,0xbb,0x79,0xf6, + 0x57,0xaf,0x3c,0xf2,0x28,0x9a,0x49,0x2,0xeb,0x2c,0x8c,0x31,0x50,0x5a,0x81,0x79, + 0xc,0xc,0xc,0x11,0x8b,0xd0,0xf2,0x5b,0xe8,0xc7,0x7d,0x34,0x79,0x13,0x9e,0xf1, + 0x2e,0x4c,0xd3,0xe9,0xbf,0x2f,0xa2,0x42,0x90,0x3e,0xd9,0x76,0xc2,0xed,0xfe,0x87, + 0xaf,0x7f,0xb3,0xd1,0xe9,0xae,0x3f,0xd1,0xe9,0xac,0x7c,0xc7,0xf,0x5a,0x5f,0x49, + 0x9a,0xcb,0xeb,0x9b,0x67,0x2f,0x62,0xb9,0xbf,0x82,0x20,0xc,0x50,0xe4,0x2,0xd6, + 0x5a,0x50,0x4a,0x1,0x42,0x61,0x2c,0x40,0x72,0x81,0xf1,0x38,0x85,0xd6,0x16,0x41, + 0x18,0x62,0x69,0xa9,0x8f,0xb3,0x67,0x2f,0x41,0x88,0x92,0x1d,0xec,0xef,0x2d,0xbd, + 0xf9,0xc6,0x4f,0x96,0x3c,0x2f,0x7c,0xd2,0x5a,0xf7,0xf8,0xd1,0xd1,0xee,0x7f,0x2d, + 0xf3,0xc9,0xb,0x0,0xee,0xdc,0xcf,0x4f,0xef,0xf6,0x60,0x1f,0xd7,0xb5,0x9e,0xfc, + 0xec,0x93,0xf,0x5e,0xd8,0xbc,0xf0,0xbd,0x47,0x2e,0x3f,0xf2,0xf4,0x95,0x47,0xae, + 0xc4,0x49,0xb3,0x1,0x10,0xc0,0x68,0xd,0x6b,0x6b,0x90,0x8c,0x32,0x30,0xd2,0xc0, + 0x8,0x3,0x2b,0x2d,0xa0,0x0,0xf,0x1e,0x38,0x38,0xca,0xb2,0x8c,0x2b,0x51,0x39, + 0x63,0x8c,0xba,0x74,0x7e,0x6b,0x74,0xf5,0xea,0xe7,0xbe,0xdc,0xed,0xad,0x7f,0x6f, + 0xf3,0xec,0xc3,0xcf,0x2e,0xf7,0xb7,0x56,0xbb,0x4b,0x2b,0xe8,0xf7,0x7b,0x68,0x34, + 0x2,0x50,0xa,0x58,0xa3,0xc0,0x39,0x81,0xef,0x33,0x10,0xa,0x10,0x4a,0xa0,0x8d, + 0xc6,0x64,0x32,0xc1,0xce,0xce,0x36,0x6e,0xdf,0xbe,0x8d,0x3c,0xcb,0x40,0x28,0xd0, + 0x68,0x34,0x90,0x24,0x4d,0xac,0xae,0x6e,0x62,0x6d,0xfd,0x22,0x6d,0x36,0x7b,0x2b, + 0x5a,0xa9,0x87,0x86,0xc3,0x83,0xb,0xd6,0xa8,0x3,0x0,0x47,0xef,0xc7,0x4b,0x1f, + 0x1a,0xa0,0xd6,0x66,0xb,0x62,0x2a,0x0,0x0,0x5f,0x7b,0xee,0x6b,0xab,0x57,0x1e, + 0xb8,0xf2,0xcc,0x85,0xb3,0x17,0xfe,0xdd,0xd9,0xad,0xb3,0xeb,0xeb,0x1b,0xeb,0x70, + 0xc4,0xc1,0x18,0x3,0x6b,0x2d,0x9c,0x3,0xac,0xa9,0x41,0xb2,0xda,0xc2,0xca,0x7a, + 0x73,0xd2,0x81,0x5a,0xa,0xab,0x2d,0xa6,0xe9,0x14,0xc3,0xc9,0x30,0x54,0x56,0x75, + 0xaf,0x7c,0xea,0xc9,0xf5,0xcb,0xf,0x3f,0xfe,0x6b,0x6b,0x6b,0xe7,0x9e,0xe9,0x74, + 0x57,0xda,0xad,0x76,0x1b,0xed,0x76,0x13,0xdd,0x4e,0x82,0x20,0xe4,0x60,0x14,0xa0, + 0xd4,0x81,0x7b,0x1c,0x9c,0x33,0xd0,0x59,0xa4,0x73,0xce,0xc1,0x5a,0x8b,0xa2,0x28, + 0x30,0x9d,0x4c,0x31,0x1e,0x4f,0xe0,0x79,0x3e,0xda,0x9d,0x36,0x2,0xdf,0x47,0x14, + 0x35,0x10,0xc7,0x4d,0xc4,0x71,0x8b,0x33,0xca,0x7b,0x8c,0xd2,0x33,0x55,0x55,0x36, + 0xcb,0x32,0x2d,0x0,0xec,0xfc,0x22,0x90,0x3e,0xb4,0x8b,0x4d,0xb7,0xa7,0x8b,0xfd, + 0x87,0x2e,0x3c,0x74,0x69,0xa9,0xbd,0xf4,0xc5,0xcd,0xb5,0xcd,0x7e,0xbb,0xd5,0x82, + 0xb1,0x6,0xc6,0x58,0x58,0xe7,0x4e,0x3c,0xfc,0xfe,0x38,0xe9,0x0,0xeb,0x2c,0xac, + 0xb3,0x20,0x94,0x20,0x60,0x1,0x7c,0x78,0xcb,0x4d,0xbf,0xf9,0x6c,0x1c,0x36,0x3f, + 0xd7,0xee,0x2c,0x85,0x97,0x1e,0x78,0xc4,0x33,0xd6,0xc2,0xf7,0x28,0xe2,0xc8,0x43, + 0xb3,0x19,0x80,0x52,0xa,0x63,0x2c,0xfc,0x80,0xc1,0x18,0x7,0x6b,0x8,0x34,0xb3, + 0x0,0x31,0x8,0xc,0x43,0xa7,0xdd,0xc4,0xd6,0xd6,0x3a,0x0,0x82,0x6b,0xd7,0x6e, + 0x22,0xcf,0x33,0x54,0x65,0x5,0x4a,0x8,0x8,0x24,0x8,0x21,0xb8,0x70,0xe1,0x21, + 0xc4,0x61,0x3,0x1,0xf,0x56,0xf,0xe,0xb6,0x9f,0x9f,0x4c,0x8e,0x89,0xd6,0xe5, + 0x10,0xc0,0x4f,0x1,0x54,0xff,0xec,0x51,0xac,0x91,0x34,0x1e,0x88,0xe2,0xf8,0x97, + 0xc3,0x20,0xa,0x28,0x61,0x50,0x52,0x81,0x32,0xa,0x4a,0x8,0x34,0xdc,0x9,0xf, + 0x9e,0xce,0x69,0x8,0x40,0x29,0x85,0x23,0xe,0xd6,0x59,0x54,0x5a,0x80,0x3a,0xc2, + 0x62,0x1a,0x31,0x53,0xd9,0x80,0x51,0x86,0xee,0x72,0xb,0x1c,0xe,0xbe,0xcf,0x10, + 0xf8,0x1c,0x1e,0xa7,0x20,0x84,0xc0,0x5a,0x40,0x5b,0xb,0xa5,0xea,0x4d,0x1b,0x80, + 0x10,0xd,0x29,0x5,0xb2,0x74,0x82,0x38,0x8a,0x70,0xe9,0xd2,0x45,0x28,0xa5,0x61, + 0x1d,0x41,0x5e,0xe4,0x8,0x2,0xbf,0xe6,0x2b,0x0,0x9c,0x53,0xb4,0xdb,0x1d,0x2c, + 0xaf,0xac,0xa3,0xdd,0x59,0x65,0x83,0xc1,0xfe,0xaf,0xea,0xac,0x2c,0x0,0xec,0xce, + 0x38,0xe9,0xa3,0x3,0xf4,0xa7,0x7f,0xfa,0xa7,0x0,0x80,0xe7,0x9e,0x7b,0xe,0x57, + 0x9f,0xb8,0xea,0x5d,0x7e,0xe0,0xf2,0xa3,0xdd,0x76,0xf7,0x73,0xad,0xa4,0x79,0x89, + 0x51,0xca,0xa5,0x90,0xb0,0xce,0xa2,0xd1,0x6c,0x80,0x32,0xa,0xc6,0x18,0xac,0xb5, + 0x20,0xd4,0x81,0x52,0x5a,0x5f,0x24,0x7,0x28,0xa7,0xb0,0xd4,0x22,0x15,0x29,0x86, + 0x93,0x21,0xb2,0x2a,0x5,0x1,0x45,0x48,0x42,0x88,0x49,0x8e,0xa3,0xdd,0x1d,0xc, + 0x8f,0x76,0x70,0xe1,0xdc,0x79,0x34,0x93,0x18,0x8c,0x3a,0x10,0xd4,0x89,0xa3,0x73, + 0x80,0x36,0xe,0x8a,0x59,0x14,0x4e,0x20,0x4d,0x53,0xa4,0x59,0x81,0xa2,0x94,0xf0, + 0x7d,0x8e,0x28,0x6a,0xc0,0x38,0x82,0x66,0xb3,0x81,0xd1,0x68,0x82,0xe9,0x74,0x82, + 0xa5,0x5e,0xf,0x9e,0xe7,0x41,0x4a,0x89,0xd1,0x78,0x88,0x74,0x32,0x46,0x96,0xa7, + 0x30,0xd6,0x81,0x52,0xef,0xac,0xc7,0xa3,0x5f,0x51,0xba,0xfc,0x1,0x80,0xbf,0x0, + 0x70,0xf0,0x91,0x1,0x7a,0xee,0xb9,0xe7,0x4e,0x32,0xda,0xcf,0x3e,0xd3,0x69,0x35, + 0x5b,0xff,0xa6,0xdd,0x68,0x3d,0xd3,0x6d,0x76,0x12,0x0,0x28,0xf2,0x2,0xa4,0x20, + 0x20,0x94,0x20,0x8c,0x6a,0x97,0x70,0xce,0x1,0xce,0xc1,0x39,0x7,0x87,0x7a,0xdf, + 0x5a,0xb,0x21,0x5,0x6,0xe3,0x1,0x76,0x6,0x3b,0xc8,0xca,0xc,0x20,0x4,0x9c, + 0x7a,0xd0,0x69,0x85,0xbb,0xd7,0xaf,0xa1,0xdd,0x8b,0x71,0xe9,0xfc,0x59,0x34,0x62, + 0x6,0x6b,0x1d,0x8,0xa9,0x3d,0xd5,0x39,0x7,0x6a,0x0,0xca,0x28,0x84,0x14,0x98, + 0x4c,0x46,0x38,0x3c,0x3c,0x86,0xb1,0x4,0xab,0xab,0xeb,0xf0,0xc3,0x8,0x69,0x5a, + 0x82,0x31,0x8a,0xb2,0x2c,0x90,0xe7,0x5,0x36,0x37,0x36,0xe1,0xfb,0x1,0x84,0xa8, + 0x70,0xfb,0xf6,0x2d,0x1c,0x1d,0xec,0x62,0xe7,0xee,0x4d,0x64,0x69,0xa,0x4a,0x3d, + 0x84,0x51,0xf3,0x82,0x2d,0xf4,0xd7,0x8d,0x51,0x47,0x0,0xfe,0xfc,0x9f,0xc3,0xc5, + 0x78,0xa3,0xd1,0xb8,0xd4,0x49,0x3a,0x5f,0x69,0xc6,0xcd,0x87,0xbb,0xed,0xe,0x8, + 0x25,0x50,0x52,0x41,0x6b,0xd,0xa5,0x14,0x82,0xc0,0x87,0x1f,0xfa,0xe0,0x9c,0xc3, + 0x3a,0x7,0x25,0x15,0x64,0x26,0x51,0x8d,0x2b,0xa4,0x83,0x14,0x83,0xfd,0x1,0xe, + 0xe,0xf,0x30,0x9c,0xe,0x61,0xad,0x9d,0x79,0x1e,0x45,0x33,0x48,0x20,0x26,0x25, + 0xf6,0xee,0x6c,0xc3,0x68,0x9,0x2,0x80,0xd1,0x13,0xf7,0x24,0x84,0xc0,0x23,0x0, + 0xa5,0x80,0xef,0x7b,0x27,0x40,0x14,0x12,0x4b,0xcb,0x2b,0x8,0x8,0xc0,0x38,0x45, + 0x1c,0x37,0x20,0xa5,0xc4,0x60,0x70,0x8c,0x95,0x95,0x33,0xe8,0xf5,0x34,0x46,0xa3, + 0x21,0x5e,0xfa,0xd1,0xf,0xb0,0xb7,0x7b,0x7,0x45,0x3e,0x86,0x54,0x2,0x9e,0x1f, + 0xc0,0x18,0x12,0x78,0x5a,0x3c,0x4b,0xb4,0x78,0x55,0xab,0xea,0xc7,0xb3,0xc8,0x66, + 0x3f,0x32,0x40,0x5f,0x7e,0xee,0x4b,0x2d,0x4a,0xe8,0xd9,0xd0,0x8b,0x36,0x3,0x2f, + 0xe0,0x9e,0xe7,0x43,0xdb,0x9a,0x71,0xac,0xb1,0x28,0x45,0x1,0x51,0x54,0x60,0x9c, + 0x81,0x32,0x6,0xa3,0x35,0xaa,0x42,0xa0,0x4c,0x4b,0x14,0x93,0x2,0xe9,0x28,0xc5, + 0xf1,0xf0,0x18,0x69,0x96,0x42,0x1a,0x59,0x9b,0x6,0x21,0x30,0xce,0xd4,0x20,0xe7, + 0x1a,0xf9,0x24,0x45,0x96,0x4e,0x60,0x56,0x97,0xc0,0x66,0xfc,0x71,0x2,0x52,0xd, + 0x90,0xc7,0x19,0x7a,0xdd,0xe,0xd2,0x7e,0x1,0x6f,0x92,0x83,0x33,0xa,0x67,0xd, + 0x28,0x21,0x68,0xb5,0x5b,0xe8,0x76,0x7b,0x18,0x8d,0x26,0xb8,0x7e,0xfd,0x26,0xa2, + 0x68,0x17,0x65,0x99,0x62,0x77,0x6f,0x17,0xc3,0xc1,0x11,0x8c,0xaa,0x40,0x8,0x5, + 0xe3,0x1e,0x9c,0x73,0xc4,0xf3,0xa2,0xae,0x83,0x7b,0x4c,0xab,0xea,0x71,0x0,0x2f, + 0x9e,0xce,0x8f,0x3e,0x34,0x40,0xad,0xa4,0x9d,0x10,0x90,0x25,0x8f,0xfa,0xa0,0xa8, + 0x79,0xc6,0xcd,0xee,0x2e,0xa1,0x14,0xce,0x69,0x88,0x4a,0xc0,0xe8,0x3a,0xbc,0x57, + 0x45,0x85,0x22,0x2d,0x90,0x4d,0x32,0x54,0x45,0x5,0x21,0x4,0xaa,0xaa,0x82,0xb5, + 0x16,0x8c,0x32,0x80,0xd4,0x2e,0xa4,0x8d,0xc6,0x34,0x9d,0x82,0x39,0xa,0xab,0xd, + 0x8e,0x87,0x43,0x9c,0x59,0x5b,0x45,0xab,0xf9,0x4e,0x29,0xa4,0x4e,0x14,0x9,0x96, + 0x97,0x97,0x40,0xa9,0x87,0xd1,0x24,0x83,0x73,0x14,0x5a,0x6b,0x38,0x7,0x24,0x49, + 0x82,0xcd,0xad,0x2d,0xe4,0x79,0x85,0x9f,0xbd,0xf2,0x1a,0xf2,0x22,0x3,0x9c,0x82, + 0x56,0x1a,0xbe,0x1f,0x42,0xc1,0x1,0xda,0xc1,0x59,0x3,0x42,0x8,0xb8,0x17,0xc2, + 0x58,0x7d,0x11,0x60,0x4f,0x1,0xf6,0x27,0x80,0x5b,0x0,0x44,0x3f,0x2c,0x40,0xd4, + 0x52,0x2,0x7,0x4a,0x66,0x41,0xca,0xdd,0x97,0xb0,0x13,0x5a,0x3,0x55,0x87,0xf7, + 0x19,0x7,0x59,0xb,0x67,0x6b,0x2e,0x22,0x20,0x60,0x8c,0x81,0x52,0xa,0x2,0x2, + 0x42,0x28,0x1c,0x6a,0x6e,0x32,0xd6,0x40,0x1b,0x3,0x21,0x4,0x46,0xa3,0x11,0xca, + 0xf7,0x28,0xbb,0x9d,0x3,0xac,0x3,0x9c,0xb5,0xf0,0x7d,0x1f,0xcd,0x24,0x81,0xe7, + 0x79,0x0,0x21,0x33,0x97,0x75,0xe8,0x76,0xbb,0x38,0x7b,0xee,0x1c,0x7a,0xbd,0x1e, + 0xe0,0x8,0xf2,0xbc,0x2,0x28,0x87,0xef,0x47,0xf0,0xfd,0x10,0x9c,0x71,0x10,0x42, + 0x17,0x96,0x44,0x29,0xdb,0x62,0xdc,0xfb,0x2c,0xa5,0xec,0x1e,0xf1,0xe8,0x43,0x3, + 0x24,0xb5,0x34,0x46,0x1b,0xa9,0xb5,0xaa,0x73,0x99,0xfb,0x64,0x89,0x7a,0xd1,0xa8, + 0xf3,0x8f,0x39,0xbb,0x92,0xda,0x35,0x6a,0xf0,0x8,0x28,0xa1,0x8b,0x63,0x4,0xf5, + 0xa2,0xb4,0x51,0x30,0xc6,0xd4,0x3c,0xa6,0xf5,0xc,0x34,0xf3,0x2e,0xd6,0x3,0x18, + 0xe3,0x60,0x8c,0x85,0x36,0xb5,0x6b,0x13,0x3a,0xd7,0xe2,0xea,0xcd,0xd9,0xda,0xa2, + 0x83,0x20,0x40,0xa7,0xd3,0x46,0x18,0x46,0xb0,0x8e,0x80,0x51,0xf,0xcc,0xf3,0xc1, + 0xb8,0x7,0x42,0x69,0x7d,0x4d,0x4,0xa0,0x84,0x81,0x52,0xd6,0x66,0x8c,0x5f,0x22, + 0x84,0xf4,0x1,0x78,0x1f,0x19,0xa0,0xe3,0xec,0xb8,0x94,0x5a,0x4e,0x2a,0x59,0x49, + 0x6d,0xf4,0x6c,0xf1,0xe4,0x9e,0x84,0x90,0xb8,0xda,0x7a,0x8,0x99,0xbb,0x1e,0x1, + 0x68,0xd,0x18,0x1,0xa9,0x23,0xda,0xc,0x1c,0x0,0x30,0xc6,0x40,0x2a,0x9,0xa5, + 0x15,0x8c,0x35,0x60,0x8c,0xa2,0xd9,0x4c,0xc0,0x38,0x87,0x10,0xb2,0x8e,0x86,0x0, + 0xac,0x75,0x50,0xda,0x40,0x2a,0xb,0xa5,0x2d,0x94,0xb1,0x50,0x5a,0x43,0x29,0xd, + 0x63,0x1d,0x8c,0x75,0x50,0x5a,0x23,0xcf,0xb,0xc,0x87,0x43,0x1c,0x1f,0xf,0xc1, + 0x18,0x43,0x10,0x6,0xf0,0xb8,0x37,0xb7,0x14,0x80,0xd0,0x1a,0x48,0x9c,0x5c,0x27, + 0xa5,0xc,0x94,0x79,0x4b,0x20,0xe4,0xc,0x80,0xe4,0x23,0x73,0xd0,0x8b,0xff,0xe3, + 0xc5,0xd1,0xd5,0xff,0x74,0xf5,0x56,0x56,0x65,0x43,0xa1,0xc4,0x45,0xab,0xd,0xc0, + 0x4f,0xe3,0x33,0x37,0x17,0x72,0x2a,0x95,0x26,0xef,0x22,0x44,0xd5,0xef,0x59,0x67, + 0xa1,0xb4,0x82,0x10,0x2,0x4,0x4,0xad,0xa0,0x85,0xf6,0x72,0x1b,0x4b,0xcb,0xcb, + 0x8,0xc3,0x18,0x52,0x59,0x58,0x58,0x90,0x19,0xf7,0x68,0x65,0x21,0xb5,0x85,0x94, + 0xa6,0x4e,0x16,0xb5,0x83,0x31,0xe,0x20,0x14,0x42,0x48,0x1c,0x1e,0x1c,0xe0,0xc6, + 0x8d,0xb7,0x71,0x74,0x74,0x8c,0x69,0x56,0x20,0xcb,0x5,0xca,0xb2,0x82,0xe7,0xf9, + 0xb0,0xc6,0xc1,0x68,0x2,0xd4,0xb7,0xa8,0xde,0x5c,0x7d,0x47,0x29,0xa1,0xe0,0x94, + 0xfb,0xca,0xe1,0x2c,0x80,0x1e,0x80,0xd1,0x47,0xd,0xf3,0xb6,0x2c,0xcb,0xbb,0x53, + 0x6f,0xfa,0xd7,0x85,0x28,0x5a,0x69,0x91,0x3d,0xd4,0x6e,0xb7,0x6a,0xc2,0x75,0xef, + 0x51,0xd2,0xb8,0xd3,0xbb,0xee,0x94,0x2b,0xd6,0x85,0xa6,0x10,0x15,0x2a,0x51,0x82, + 0x7,0x3e,0xfa,0x1b,0xab,0x78,0xf0,0x91,0x47,0x90,0x24,0x6d,0x68,0xe5,0x20,0x64, + 0x85,0x20,0x0,0x8,0xa1,0xb0,0xd6,0x40,0xeb,0x99,0xf5,0x28,0xb,0xad,0x1,0x63, + 0x6a,0x97,0xab,0x2a,0x89,0xc1,0x70,0x88,0x3b,0x77,0xee,0xe0,0xee,0xdd,0x3b,0x18, + 0x8d,0xa6,0xa8,0x84,0x81,0xd4,0xf5,0xf1,0x3a,0x71,0xad,0xbf,0xdf,0x39,0xb,0xe7, + 0x6c,0x8d,0x4e,0x9d,0x60,0x81,0x10,0xa,0x4a,0x39,0x23,0x20,0x67,0x0,0xb4,0x3e, + 0xb4,0x5,0x7d,0xed,0x6b,0x5f,0x3,0x0,0xbc,0xf0,0xc2,0xb,0xb8,0x71,0xeb,0xc6, + 0xb0,0x99,0x34,0xff,0xcb,0xf9,0xf3,0xe7,0x5b,0xc7,0x93,0xe3,0x8d,0x4e,0xa7,0xd3, + 0xe0,0xec,0x84,0x8d,0xdc,0x2f,0xd0,0x2d,0xe7,0x67,0xcd,0x9f,0x2b,0x59,0x21,0x2f, + 0x73,0x8,0x25,0x10,0x36,0x9a,0xb8,0xf0,0xd0,0x65,0x3c,0xf6,0xe9,0xcf,0x80,0x52, + 0x1f,0x93,0x49,0x86,0x4a,0x8,0xc4,0xb1,0x3,0xe7,0x1e,0x1c,0x0,0xad,0xeb,0x7a, + 0x4f,0x29,0xb,0xa5,0x1d,0x8c,0xb6,0x90,0x52,0x63,0x32,0x99,0x62,0x77,0x67,0x7, + 0x77,0xef,0xde,0x45,0x51,0x8,0x0,0x1c,0x9c,0x73,0x18,0xeb,0xe0,0x9c,0x86,0xb5, + 0xba,0x6,0xc6,0x9a,0x93,0x6d,0x6,0x92,0x9b,0x59,0x3d,0x61,0x94,0x12,0x42,0x5b, + 0x0,0xa2,0x8f,0x55,0x8b,0xbd,0xf8,0x77,0x2f,0x4a,0x0,0x2f,0x3f,0xfb,0xf9,0x67, + 0xfe,0x3a,0xcf,0xb2,0xcb,0xce,0xba,0x2f,0x50,0x4a,0x2,0xca,0x29,0xa0,0xcd,0xc, + 0xa1,0xb9,0xab,0xbd,0x8b,0x84,0x40,0x19,0x2c,0xa9,0x5d,0x6b,0x3a,0x9d,0x62,0x3c, + 0x19,0x43,0x3b,0x83,0x73,0x97,0x2e,0xe1,0xfc,0xa5,0xcb,0x68,0xb6,0x96,0x50,0x9, + 0x89,0x2c,0x9d,0xa2,0x28,0xb,0xa4,0x59,0x89,0x46,0xd2,0x46,0x18,0xc6,0xd0,0xda, + 0x40,0x6b,0x83,0xb2,0xac,0x30,0x1e,0x4f,0x41,0x8,0x87,0xb1,0x4,0x83,0xc1,0x31, + 0x86,0xc3,0x63,0x64,0x59,0xe,0x4a,0x3d,0x78,0x41,0x0,0x28,0xc0,0x38,0xd,0x6b, + 0xeb,0xb0,0xe7,0x8c,0x85,0xb5,0x6,0xd6,0x99,0x3a,0x0,0x38,0xbb,0xc8,0xad,0xe6, + 0xfc,0x38,0xbb,0x5e,0xf7,0xa1,0x1,0x7a,0xe1,0x85,0x17,0x0,0x0,0xdf,0xf9,0xd6, + 0x77,0xf0,0x7,0x7f,0xf4,0x7,0x0,0x60,0xf6,0xb6,0x77,0x7e,0xe6,0x51,0xef,0x7, + 0x3b,0xcd,0x9d,0x27,0xdb,0x9d,0x76,0x10,0x86,0xc1,0x2c,0xff,0xb1,0x80,0x31,0xef, + 0xb0,0x24,0x42,0x8,0x18,0x65,0x30,0xd4,0x40,0x48,0x81,0xe9,0x74,0x8a,0xc9,0x74, + 0x2,0x65,0x14,0xe2,0x6e,0x82,0xad,0x8b,0x97,0xd0,0xee,0xf5,0xa1,0x94,0x43,0x95, + 0x4b,0x14,0xa5,0x44,0x51,0x8,0x68,0x53,0x42,0x48,0x8b,0x56,0x8b,0x80,0x52,0xe, + 0xa5,0xc,0xb2,0xac,0xc4,0xe1,0xe1,0x11,0x8,0xf1,0xc0,0xfd,0x8,0x52,0x19,0x30, + 0xe6,0x23,0x8a,0x12,0x68,0xc3,0xe0,0x24,0xa0,0x8d,0x1,0x21,0x73,0x82,0x37,0xb0, + 0x46,0x2f,0x36,0x67,0x6b,0xbd,0xaa,0x76,0xb3,0x5,0x2a,0xce,0xd5,0x59,0xb4,0xfb, + 0xc8,0x7a,0xd0,0xcb,0xaf,0xbc,0xbc,0xd8,0x7f,0xe5,0xc7,0x3f,0x97,0xab,0xbd,0x33, + 0x5c,0x6b,0xfd,0xb4,0xc7,0xf8,0x52,0xbb,0xd5,0x86,0x25,0x80,0xb3,0xb5,0xe9,0x3b, + 0xe7,0xea,0xb0,0x2d,0x15,0x94,0x50,0x70,0x76,0x56,0x8b,0x9,0x81,0xe3,0xe3,0x11, + 0xe,0xe,0xf,0x30,0x19,0x8f,0xc0,0x2,0x8e,0x33,0xe7,0xcf,0xe2,0xd1,0x5f,0x7e, + 0xa,0xdd,0xfe,0x2a,0x8c,0x76,0x10,0x42,0x40,0x2b,0x3,0xa5,0x34,0xf2,0x34,0x87, + 0x90,0xa6,0x56,0xf,0xa9,0xf,0xa5,0x2c,0xd2,0x2c,0xc7,0x60,0x30,0x44,0x55,0x9, + 0x18,0x3,0x50,0xe6,0x83,0x31,0xf,0x84,0x71,0x28,0xe5,0x20,0x84,0x81,0x10,0x6, + 0x5a,0x2b,0x68,0x5d,0x41,0xa9,0x2,0x4a,0x96,0x50,0xb2,0x84,0x56,0x5,0xa4,0x2a, + 0x6b,0xa0,0x66,0x85,0xb0,0xb5,0x16,0x5a,0x6b,0xa1,0x54,0xf9,0x13,0x67,0xf5,0xcb, + 0x33,0x9d,0xe8,0xe3,0x29,0x8a,0xa,0x4a,0x5c,0xdc,0xbc,0x54,0x2a,0x25,0x97,0x61, + 0xb1,0xa6,0x85,0xee,0x50,0xc6,0xe0,0xf1,0x5a,0xd0,0x22,0x94,0xd6,0xa0,0x28,0xb, + 0xa3,0xea,0x52,0x22,0xcf,0x72,0x1c,0x1e,0x1e,0xe1,0xe8,0xe8,0x8,0x93,0xc9,0x18, + 0x42,0x55,0x58,0xde,0xd8,0xc4,0x3,0x8f,0x3f,0x81,0x73,0x97,0x1f,0x81,0xef,0x87, + 0x10,0x65,0x5,0xa5,0x34,0xb4,0xad,0x23,0x94,0x50,0x6,0x45,0x51,0x22,0xcf,0xb, + 0x68,0xe3,0x60,0x1d,0x1,0xe5,0x3e,0xc2,0xa8,0x5,0x10,0xf,0x55,0x25,0x50,0x55, + 0x2,0x61,0xd4,0x40,0x23,0x69,0x61,0x3c,0x9a,0x62,0x38,0x1c,0x63,0x3c,0x9e,0xc0, + 0x18,0x9,0xad,0x2b,0x68,0x59,0x42,0xab,0x12,0x52,0x15,0x90,0xa2,0x80,0x51,0xd5, + 0x2c,0x93,0x9e,0x5,0x0,0x63,0x60,0xb4,0x28,0xb5,0x2a,0xff,0xce,0x59,0xf3,0xd3, + 0x79,0x65,0xff,0xa1,0x1,0x7a,0xee,0xb9,0xe7,0xf0,0xe6,0x9b,0x6f,0x2e,0x5e,0xdf, + 0xb9,0x73,0x3b,0x4b,0x1a,0xc9,0x24,0xf2,0xc2,0x44,0x9,0x75,0xde,0x6a,0x13,0x2a, + 0xa9,0x88,0x52,0xa,0xb2,0x12,0x28,0x8b,0x12,0x59,0x9a,0x23,0x9d,0xa4,0x98,0x8c, + 0xc7,0x18,0xe,0x8f,0x71,0x78,0x74,0x88,0xe9,0x64,0x2,0xa5,0x15,0xfc,0xa4,0x89, + 0xf5,0xcb,0xf,0x63,0xeb,0xa1,0xab,0x48,0x5a,0xdd,0x1a,0x10,0x21,0xea,0xbc,0xc6, + 0xb8,0x5a,0xde,0xd0,0x6,0x65,0x29,0x90,0xe7,0x5,0x8a,0x4a,0xa0,0x28,0x2b,0x48, + 0x59,0xbb,0x94,0xb1,0xe,0x42,0x29,0x8,0x21,0x11,0x84,0x21,0xc2,0x28,0x46,0x51, + 0x54,0x90,0x52,0x42,0x29,0x9,0x29,0xb,0x54,0x55,0x6,0x21,0x32,0x28,0x59,0x40, + 0xca,0x1c,0x5a,0x55,0x30,0x5a,0xd6,0x9e,0x44,0x48,0x2d,0xc6,0x69,0x5,0xad,0x45, + 0x61,0x74,0xf5,0x82,0x73,0xf6,0x67,0x0,0xc6,0x1f,0x89,0xa4,0xe7,0xba,0xd0,0xf9, + 0x7,0xcf,0xe3,0xd6,0xb5,0x5b,0xc8,0x75,0x6e,0xfe,0xf2,0x7,0x7f,0xf9,0xf7,0xcb, + 0xed,0xe5,0xf5,0xb2,0xac,0x2e,0x97,0x59,0xf9,0xb9,0x28,0x8a,0x42,0x3f,0xf4,0xe1, + 0x79,0x1e,0xb4,0x36,0xc8,0xb3,0x1c,0xe3,0xd1,0x18,0xd3,0xf1,0x14,0x59,0x9a,0x21, + 0xcf,0x73,0x68,0xad,0xe0,0xf9,0x1,0x92,0xf5,0xd,0x34,0x57,0xd7,0x41,0xc3,0x4, + 0xa3,0x49,0xa,0xdf,0xe3,0xf0,0x38,0x83,0xc7,0xcc,0x4c,0xe8,0x72,0xb0,0xd6,0xc1, + 0x58,0x6,0xa5,0x1d,0x26,0xd3,0x1,0xa4,0xd2,0x20,0x94,0x23,0x49,0xba,0x68,0x34, + 0x9a,0xe0,0x9c,0xc3,0xf3,0xfc,0xba,0x9c,0x31,0x16,0x67,0x56,0xfa,0x8,0x83,0x0, + 0xad,0x66,0x84,0x1b,0x37,0x2a,0x14,0xb9,0x82,0x14,0x5,0xa4,0x28,0xa1,0x95,0x80, + 0xb1,0x1a,0xf6,0xbe,0x74,0xc3,0x39,0xb,0x6b,0xb5,0x4,0xc8,0x5d,0x0,0xc7,0x1f, + 0x88,0xa4,0xaf,0x5c,0xb9,0x2,0x0,0x78,0xed,0xb5,0xd7,0xde,0x71,0xec,0xd6,0xb5, + 0x5b,0x0,0x80,0x27,0xae,0x3c,0xd1,0xea,0x36,0xba,0x8f,0x99,0xc2,0x7c,0x91,0xfa, + 0xf4,0x7c,0xd2,0x6c,0x72,0x25,0x25,0xe,0xf6,0xe,0x60,0x8d,0x83,0x52,0xa,0x65, + 0x59,0x22,0xcf,0x72,0x28,0x59,0x97,0x13,0x8c,0x33,0xb4,0x92,0x16,0x38,0xf7,0xe1, + 0x2a,0x85,0xe3,0x9d,0xbb,0xd0,0xd6,0x60,0x69,0x79,0x15,0x8d,0xb8,0x1,0xee,0xf1, + 0x9a,0x2e,0x29,0x1,0x63,0x1c,0x41,0x18,0xc1,0x58,0xe,0x63,0x18,0x94,0x6,0x8a, + 0x42,0xa0,0xac,0x26,0x38,0x38,0x18,0xa0,0xd3,0x5d,0xc2,0xea,0xea,0x1a,0x3a,0xed, + 0x2e,0x7c,0xcf,0x83,0x73,0xe,0x1e,0xf7,0x90,0x24,0xd,0x74,0x5a,0x9,0xe2,0x20, + 0xc0,0xed,0x46,0x88,0xed,0xbb,0xc0,0x60,0x20,0x20,0xa,0x5,0x2d,0xab,0x59,0xf6, + 0x3f,0x4b,0x1a,0x9d,0x83,0x73,0xd6,0x59,0xa3,0xb7,0x1,0x6c,0x3,0x48,0xdf,0x17, + 0xa0,0xe7,0x9f,0x7f,0x1e,0x7f,0xf8,0x87,0x7f,0x78,0x4f,0x10,0xfa,0xde,0x7f,0xfc, + 0x5e,0xe7,0x81,0xcb,0xf,0x24,0x9d,0x6e,0xa7,0x49,0x9,0xed,0xc4,0x71,0xdc,0xda, + 0xbd,0xbd,0xbb,0xf1,0xd2,0xdf,0xbd,0xf4,0x85,0x72,0x54,0xfe,0xb2,0x2d,0xed,0x5a, + 0xe0,0x5,0x2c,0x8,0x2,0x28,0xad,0x91,0x4d,0xb2,0x5a,0xc2,0x90,0x1a,0xce,0x3a, + 0x70,0xce,0x11,0x86,0x21,0x38,0xe7,0x60,0x8e,0xc1,0x2a,0x8b,0x2c,0x2b,0xa1,0xf9, + 0x31,0x5c,0x1c,0x20,0xec,0xb6,0xe1,0x69,0xa,0x2b,0xc,0x84,0xd6,0x10,0x5a,0xc3, + 0x80,0x80,0x7,0x9,0x3c,0x3f,0x0,0x1,0x81,0x36,0xc,0xda,0x50,0x54,0x95,0xc1, + 0x74,0x9a,0xc2,0x58,0x8a,0x24,0x69,0xa3,0xbf,0xbc,0x2,0xcf,0xf3,0xa0,0x94,0x6, + 0x67,0x4,0x9c,0x71,0xb0,0x16,0x85,0xdb,0x70,0xf0,0x19,0x43,0x23,0x88,0xd1,0x6e, + 0xb4,0x71,0xeb,0xb6,0xc5,0xfe,0xc1,0x14,0xa0,0xb3,0x7a,0x10,0x64,0xd6,0x64,0x30, + 0x87,0xc6,0xa8,0xd7,0x9c,0xb5,0x87,0x1f,0x28,0xcc,0xdf,0x7,0x8e,0xf7,0x5b,0xbf, + 0xf1,0x5b,0x2b,0x5b,0x9b,0x5b,0x4f,0xb6,0x9a,0xad,0x87,0x9a,0x49,0xf3,0x7c,0x1c, + 0xc6,0xeb,0x94,0xd1,0xcd,0xe5,0xa5,0xe5,0x8d,0x7e,0xbb,0xbf,0xba,0x33,0xd8,0x61, + 0xc5,0xa4,0x40,0x99,0x96,0x58,0xd9,0x5c,0x41,0xbb,0xdb,0xc6,0xe0,0x70,0x80,0xe9, + 0x78,0x8a,0xb2,0x28,0x21,0x85,0x9c,0xe9,0xc2,0x1c,0x1e,0xf3,0x20,0x72,0x81,0x6c, + 0x94,0x1,0x42,0xa3,0x4d,0x38,0xce,0xb6,0x9a,0xd8,0xea,0x84,0x70,0xce,0x20,0x4d, + 0x53,0x10,0xa5,0x21,0xf2,0x2,0xd3,0xbc,0x44,0x26,0x2d,0xa2,0xd6,0x32,0x92,0x56, + 0xbf,0x26,0x7d,0xe7,0x3,0x24,0x84,0xb1,0x15,0xa4,0x74,0x10,0x42,0x42,0x29,0x5, + 0x4a,0x28,0xb4,0xd2,0x8b,0x4e,0x8a,0xd1,0x16,0x3e,0xf3,0xb1,0xbe,0x7a,0x16,0xbd, + 0xe6,0x19,0xac,0x2f,0x9d,0x87,0xaa,0x4a,0x1c,0x1c,0xde,0xae,0x93,0x44,0xc2,0x40, + 0x1,0x68,0x2d,0x60,0xb4,0xbc,0x6d,0x8c,0xfc,0x47,0xc0,0x8d,0x7f,0xa1,0xa2,0xf8, + 0xd8,0x17,0x1f,0xab,0x43,0xf8,0x8b,0xaf,0xa0,0xb3,0xdc,0x21,0xe7,0x2f,0x9d,0x5f, + 0xfa,0xca,0xd3,0x5f,0x79,0x66,0x6b,0x7d,0xeb,0x5f,0x5d,0x38,0x7b,0xe1,0xd3,0xbd, + 0x6e,0xaf,0x1f,0xc7,0x71,0x8,0x82,0x8,0x4,0x11,0x77,0x3c,0xec,0xf6,0xba,0x64, + 0xff,0xf6,0x3e,0x26,0x83,0x9,0x6e,0xbd,0x71,0xb,0xa2,0x14,0xe8,0x9d,0xe9,0x21, + 0x8e,0x62,0x84,0x7e,0x8,0x29,0x24,0x84,0x10,0x90,0x95,0x84,0x28,0x5,0xca,0xac, + 0x44,0x3a,0x4e,0x51,0xe4,0x5,0x28,0x65,0x68,0x75,0xdb,0xe8,0xaf,0x2c,0x21,0x49, + 0x62,0x38,0x0,0x9e,0xc7,0xd1,0x71,0xe,0x7d,0xa5,0x30,0x18,0x8d,0xf0,0xca,0x1b, + 0xaf,0x63,0xfb,0x70,0xf,0xac,0xd1,0xc7,0xca,0xda,0x3,0x20,0x84,0x43,0x48,0x40, + 0x2a,0xc0,0x39,0xe,0x46,0xfd,0x59,0xa9,0xe3,0x60,0xb5,0xa9,0x55,0x81,0x59,0xe4, + 0x34,0x4a,0xc3,0x1a,0x2,0x59,0x49,0x14,0x59,0x6,0x29,0x45,0xed,0x56,0x33,0x29, + 0xd7,0x11,0xb,0x25,0x4b,0x18,0x23,0xdf,0x4,0xdc,0xf,0xef,0x6f,0x26,0xbe,0x3, + 0xa0,0x57,0x5e,0x7c,0x65,0xb1,0xff,0x85,0x2f,0x7e,0xa1,0xb1,0xb1,0xbc,0xf1,0xc5, + 0xb5,0x95,0xb5,0xdf,0x39,0xb3,0x7c,0xe6,0xab,0xed,0x56,0xbb,0x17,0xc7,0x31,0x7c, + 0xdf,0x9f,0x9,0xf2,0x4,0x49,0x33,0xc1,0xfa,0xb9,0x75,0x1c,0x1f,0x1e,0xa3,0x2a, + 0x2a,0x8c,0x87,0x63,0x58,0x6b,0x51,0x95,0x15,0x92,0x76,0x52,0xcb,0xae,0xc6,0x42, + 0x29,0x5,0x59,0xca,0x1a,0x9c,0x49,0x5a,0xb7,0x64,0x18,0x45,0xd2,0x6b,0xa2,0xb3, + 0xd4,0x41,0x94,0xc4,0x70,0xb3,0x90,0xeb,0x7,0x41,0x2d,0xb5,0xba,0x10,0xc4,0x18, + 0x2c,0x47,0x21,0x6,0x47,0xdb,0x38,0x1c,0x8d,0x1,0xda,0x40,0x10,0x77,0x61,0xb4, + 0x81,0xd6,0xe,0x79,0x51,0x62,0x34,0x1a,0x23,0x5d,0xea,0xa2,0x11,0x45,0xb0,0xc6, + 0x42,0x4b,0x3,0xad,0x34,0x94,0xd0,0x75,0xfe,0xa5,0x8,0xf2,0x69,0x8a,0x9d,0xbd, + 0xb7,0x71,0x3c,0xda,0x87,0x31,0xa,0x84,0xd4,0x6d,0x71,0x6b,0x94,0x55,0x5a,0xdc, + 0xd2,0x4a,0xfc,0x4,0xc0,0x9b,0xf7,0xf7,0xc8,0x7e,0x21,0x49,0x77,0x5a,0x9d,0xf5, + 0xd5,0xe5,0xd5,0x7f,0xbb,0xdc,0x5b,0xfe,0xb5,0xf5,0xd5,0xf5,0x5e,0x14,0x47,0x30, + 0xa6,0x76,0x1,0x6b,0x2c,0x40,0xea,0xa,0x7b,0xe3,0xe2,0x6,0x84,0xa8,0x9b,0x89, + 0x47,0x3b,0x47,0x28,0x8b,0x12,0x7b,0x77,0xf6,0x6a,0xb2,0x45,0x9d,0x38,0xd6,0x45, + 0x21,0x16,0xdd,0xd6,0x20,0xc,0xd0,0x68,0x35,0xd0,0x5f,0xeb,0xa3,0xd9,0x6b,0xd5, + 0x32,0x45,0x5a,0xdc,0xa3,0x2f,0x39,0xeb,0xa0,0x35,0xb0,0xd1,0x3f,0x8b,0xc9,0x38, + 0xc3,0x74,0xe7,0x2e,0xf6,0xb6,0xaf,0xa1,0xd1,0xdd,0x42,0x23,0xee,0xc2,0x58,0x85, + 0xe1,0x60,0x8c,0xaa,0x18,0xc1,0x67,0xc0,0xc6,0xda,0x3a,0xe2,0x28,0x59,0x0,0xa3, + 0x2a,0x5,0x29,0x14,0xa0,0x29,0xf2,0x34,0xc3,0xed,0xbb,0x6f,0xe0,0x60,0x70,0x17, + 0x52,0x9,0x84,0xa1,0xf,0x67,0x35,0x94,0xaa,0x72,0xad,0xca,0xbf,0x34,0x56,0xfd, + 0x3,0xf0,0xce,0xd9,0xa5,0x7b,0x0,0xba,0xf8,0x99,0x8b,0xb8,0xf9,0xd2,0xcd,0xb9, + 0xab,0xad,0x74,0x5b,0xdd,0xcf,0x9e,0x59,0x3e,0xf3,0x4b,0x91,0x1f,0xf5,0xb5,0xd4, + 0x18,0x8b,0x31,0xac,0xb3,0x70,0xc6,0xc1,0x9a,0xba,0xf9,0x67,0xad,0x85,0x35,0x16, + 0xad,0x6e,0xb,0x97,0x1e,0xbd,0x84,0xfe,0x46,0x1f,0xf9,0x34,0x47,0x55,0x54,0xf5, + 0x45,0x4a,0x55,0x4b,0xa4,0x9c,0x82,0xf3,0xba,0x80,0xe4,0x1e,0x47,0x10,0x6,0x8, + 0xe3,0x10,0x7e,0xe0,0xc3,0x1a,0x8b,0xc9,0xf1,0x4,0x73,0xd,0xc2,0xba,0x3a,0xb, + 0x77,0xb6,0xfe,0x1e,0xa7,0x2c,0x7a,0x49,0x7,0x6b,0x9d,0xc,0x6f,0x1c,0xee,0x42, + 0x6a,0x3,0xdb,0x33,0x70,0x56,0xa3,0x2a,0x33,0x14,0x99,0xc0,0xcf,0x4d,0x9,0x25, + 0x2a,0x9c,0xdd,0xb8,0x8,0x67,0x50,0x83,0x53,0x2a,0x68,0x69,0x51,0x15,0x29,0xe, + 0x7,0xdb,0x18,0x8e,0x76,0x20,0x54,0x31,0xd3,0xa2,0x2d,0x94,0xaa,0x94,0xa8,0xb2, + 0x57,0xad,0x35,0xff,0xd,0xc0,0x2b,0xef,0xdb,0x17,0x9b,0x83,0x3,0x0,0x8f,0x5f, + 0x7c,0xfc,0xc1,0x76,0xa3,0xfd,0x2b,0xdd,0x56,0x77,0x3d,0xf0,0x2,0x54,0x55,0x5, + 0x21,0x45,0xed,0xbb,0x20,0x27,0x2d,0x65,0x5b,0x2f,0x86,0x31,0x86,0xde,0x4a,0xf, + 0xcd,0x6e,0x13,0x65,0x5e,0xa2,0xcc,0x4a,0x88,0x52,0x40,0xa,0x9,0x63,0xc,0x28, + 0xaf,0x7b,0x65,0x9c,0x71,0x78,0x9e,0x7,0xee,0x71,0x10,0x4a,0x60,0xb4,0x81,0x52, + 0xb5,0x5e,0x3c,0x7,0xdb,0xda,0x7a,0x73,0xb6,0xee,0xd0,0x52,0x4a,0x11,0x47,0x9, + 0x56,0x3b,0x7d,0xdc,0x3a,0xd8,0x45,0x9a,0x1e,0x62,0x42,0x39,0x2,0x2f,0x80,0x14, + 0x39,0x44,0x99,0xa2,0x2a,0x8e,0xd1,0x8a,0x12,0x74,0x93,0x3e,0x18,0x3c,0x58,0xe5, + 0x20,0xa,0x81,0x3c,0x4b,0xb1,0x7f,0x74,0x1b,0xb7,0x77,0x5e,0xc3,0x34,0x3f,0xae, + 0x5b,0x47,0x94,0x41,0xc9,0xd2,0x2a,0x59,0xbe,0x2c,0x65,0xf9,0x67,0x80,0xfd,0xd1, + 0xe9,0xd0,0xfe,0x41,0x5c,0x8c,0x2e,0xb5,0x97,0x1e,0x6b,0x46,0xcd,0x67,0x9b,0x71, + 0x93,0xfb,0x9e,0xf,0xa3,0xc,0x60,0x31,0x8b,0x22,0xf7,0x2e,0xc4,0x9e,0xd2,0x9c, + 0x9d,0x75,0x8,0xc2,0x0,0x7e,0xe0,0x2f,0x6a,0xaf,0xf9,0xf1,0x5,0x0,0xb3,0xcd, + 0x28,0x53,0xbb,0xaa,0x5,0x28,0xa1,0xf3,0x89,0xc6,0x5a,0x41,0x3c,0xa5,0xb3,0x69, + 0xad,0xeb,0xdc,0x26,0x6e,0xa2,0xdf,0x6c,0xa1,0x9a,0xa4,0x98,0x8e,0x77,0xd1,0x88, + 0x3b,0x30,0x46,0x41,0xaa,0x1c,0x4a,0x1a,0xe4,0xe9,0x14,0xc5,0x38,0x83,0xc7,0x22, + 0x50,0xc7,0x21,0x8a,0xa,0xbb,0x7,0x37,0xf0,0xfa,0x8d,0x7f,0xc4,0x9d,0xbd,0x37, + 0xea,0xac,0x99,0x50,0x58,0xa3,0x4d,0x55,0x4e,0x6e,0x69,0x25,0xfe,0x4,0xb0,0x7f, + 0x30,0xcf,0x9a,0x3f,0x18,0x40,0xd,0xd0,0xf5,0x73,0xeb,0xcb,0x61,0x10,0x3e,0x18, + 0x4,0xc1,0x65,0xce,0x38,0xa1,0x84,0x42,0x5a,0x79,0xd2,0x5b,0x9f,0x2f,0x7a,0x26, + 0x85,0x3a,0xeb,0x66,0x61,0xb5,0x5e,0xb0,0x9b,0x35,0xb,0x4f,0x3,0x73,0xfa,0xf8, + 0xe2,0xd9,0x9a,0x5,0xb0,0xb5,0xb8,0x5c,0x57,0xfc,0xf3,0x56,0x71,0x2d,0xe2,0xeb, + 0x85,0x2c,0x4b,0x9,0xc5,0x7a,0xef,0xc,0x46,0x45,0x89,0xc1,0xf0,0x0,0xc4,0xd5, + 0x9a,0x8e,0x56,0x25,0xe0,0x1c,0x64,0x29,0xa0,0x4a,0xd,0x1e,0x12,0x18,0x67,0x91, + 0x15,0x53,0xdc,0xda,0x79,0x1d,0x7,0xc7,0x77,0x51,0xa9,0xa,0x1e,0xf3,0x60,0x8d, + 0x36,0x5a,0x55,0xaf,0x18,0xa3,0xfe,0xc8,0xc1,0xfc,0xf9,0xbc,0x28,0xfd,0xc0,0x0, + 0x7d,0xe9,0x99,0x2f,0x79,0x51,0x18,0x9d,0x8f,0xc3,0xf8,0x6c,0x14,0x46,0x84,0x12, + 0xba,0x58,0xb0,0x73,0xae,0x8e,0xe,0x4a,0xcd,0xe6,0x73,0x4e,0x48,0x57,0x2b,0xd, + 0xad,0x75,0x3d,0xc5,0x61,0xec,0x3d,0xee,0x62,0x6c,0x3d,0xdd,0x61,0x8c,0xb9,0xf7, + 0xd8,0x8c,0xc3,0x16,0xfa,0x27,0x1,0x18,0x67,0xf0,0x3c,0xf,0x61,0x14,0x2e,0xf8, + 0xcb,0x98,0x1a,0x28,0xe7,0x80,0x6e,0x73,0x9,0xad,0x60,0x1f,0x54,0x57,0xa8,0x8a, + 0x31,0x8c,0x35,0xa0,0x70,0x48,0xa2,0xe,0x22,0x3f,0x81,0xc7,0x42,0x10,0x4b,0x30, + 0xce,0x6,0xd8,0xde,0x7f,0xb,0x3b,0x7,0xd7,0x91,0xe6,0x23,0x0,0xce,0x18,0x23, + 0xa7,0x5a,0x89,0x57,0xa4,0xc8,0xff,0x27,0x60,0xff,0x78,0x36,0x48,0xf5,0xe1,0x6, + 0xa8,0x36,0x57,0x37,0x3d,0xce,0xf9,0x43,0x49,0x98,0xf4,0x9b,0x51,0x73,0x61,0x9, + 0xf3,0xbb,0x58,0x16,0x35,0xb7,0x44,0x8d,0x8,0x84,0xcd,0x38,0x44,0xaa,0x7b,0xad, + 0x62,0xf6,0x3f,0xd6,0xcd,0x5e,0x1b,0x77,0x62,0x6d,0x38,0x1,0x7b,0xae,0xbc,0x2c, + 0xf8,0xcc,0xd8,0x5,0x91,0x27,0xad,0xa4,0x6,0xc8,0x58,0x14,0x79,0x1,0x6b,0x2c, + 0x28,0xa1,0xf0,0xb8,0x8f,0x66,0x94,0xa0,0x19,0x4,0x18,0x54,0x29,0x2a,0x25,0x11, + 0x7,0xd,0x2c,0x77,0xd6,0xd1,0xef,0x6e,0x21,0xe,0xdb,0xc8,0xcb,0x9,0x6e,0xef, + 0xbe,0x86,0x57,0xaf,0xff,0x3d,0xc6,0xd3,0x3,0x68,0x55,0x19,0xc0,0x6e,0x4b,0x59, + 0xfc,0x8d,0xb5,0xe6,0x4f,0x0,0xf2,0xd7,0xef,0xc5,0x39,0xef,0xa,0xd0,0x67,0xbe, + 0xfc,0x19,0x0,0xc0,0x4b,0x7f,0xf5,0x12,0xe2,0x28,0xf6,0x40,0x70,0xd5,0xf7,0xfd, + 0x8d,0x24,0x4e,0x6a,0x15,0xa9,0xfe,0x3,0x51,0xd5,0x4d,0x3f,0xa3,0xcd,0x3d,0x61, + 0xfb,0xb4,0x36,0xbf,0x68,0xe7,0xcc,0xda,0x3e,0x94,0xd4,0xc3,0xa,0xc4,0x91,0x85, + 0xfb,0x38,0xe7,0x40,0x41,0x61,0x89,0x5,0x31,0x75,0xd7,0x83,0xd8,0xfa,0x78,0xad, + 0x2,0x48,0x30,0x9f,0xc1,0xb,0x3c,0x28,0x5d,0x4b,0x24,0xc6,0x18,0x10,0x56,0x9f, + 0xd3,0x8a,0x9a,0xe8,0x25,0x1d,0xec,0x8c,0xaf,0x43,0x18,0x8d,0x24,0x6a,0xc1,0x63, + 0x3e,0xf2,0x62,0x84,0x1b,0x77,0x5f,0xc6,0xce,0xfe,0x5b,0x78,0x7b,0xe7,0x55,0xec, + 0x1d,0xbe,0x95,0x2a,0x29,0x6e,0x3a,0xd8,0x9f,0x51,0x42,0x7f,0x64,0xad,0xf9,0x47, + 0x0,0x6f,0xdd,0x9f,0x2d,0xbf,0x2f,0x40,0x2f,0xfd,0xd5,0x4b,0x27,0x1a,0x8f,0x55, + 0x51,0xe4,0x47,0xf,0x70,0xce,0xfb,0x61,0x10,0xc2,0xe9,0x7a,0xf0,0xc0,0xc1,0x41, + 0x54,0x2,0xa2,0x12,0x33,0x95,0xe0,0xa4,0x8d,0xb3,0xe0,0x8d,0x59,0x5,0x63,0x51, + 0x3,0x42,0x1d,0x5d,0x34,0x96,0xe6,0xa0,0xcc,0xf7,0xe7,0xe2,0xfd,0xe2,0x89,0xb9, + 0x5,0x21,0x4b,0x59,0xb7,0x7a,0xfc,0x86,0x8f,0x58,0xc7,0x20,0xfb,0xb5,0xa0,0x35, + 0x7,0x3a,0xe,0x63,0x74,0x9b,0x5d,0x47,0xac,0x92,0x46,0xc9,0xdc,0x5a,0x5d,0x95, + 0xd5,0x94,0x1e,0xc,0x6e,0x69,0x21,0xb,0x79,0x77,0xef,0x4d,0x79,0x38,0xbc,0x3d, + 0xaa,0x8a,0xc9,0xed,0xd9,0xec,0xcf,0x3f,0xd9,0x3a,0x8c,0x1f,0x7e,0xec,0x29,0xd7, + 0x52,0x94,0xcd,0x66,0xd4,0xec,0x33,0xca,0x1a,0x1e,0xf3,0x20,0x54,0xdd,0x8e,0x81, + 0x3,0xb4,0xd4,0x90,0x55,0xdd,0x4f,0x77,0xce,0x81,0x32,0x5a,0x37,0x2,0xdd,0xc9, + 0xc2,0x89,0xab,0xad,0x6,0x74,0x6,0xd4,0xec,0x7f,0x29,0xa5,0xb,0xe0,0xee,0xb7, + 0xb2,0x79,0xef,0x8c,0xe2,0x14,0xaf,0x29,0x3,0xce,0x39,0xe2,0x24,0x6,0xe3,0x6c, + 0xe1,0x8a,0x84,0x12,0x78,0xdc,0x47,0x2b,0x6e,0x9a,0x86,0x1f,0xee,0x67,0x45,0xfa, + 0xd3,0xc9,0x78,0xff,0xad,0xeb,0xd5,0xd4,0x57,0x5a,0x4e,0x8a,0x32,0xdd,0x85,0x33, + 0xbb,0xc6,0xea,0xf9,0x88,0xdd,0x3e,0x0,0xf1,0x41,0x87,0x36,0xdf,0xf,0x20,0x9f, + 0x11,0xb6,0x1a,0xf0,0xa0,0xc9,0x9,0xe7,0x8b,0x86,0xdd,0x6c,0x20,0x53,0x4a,0x9, + 0x29,0x64,0xbd,0x58,0x6b,0xc1,0xc0,0x16,0x96,0x53,0xe7,0x17,0xf5,0xfe,0x1c,0x98, + 0x7b,0xdc,0xa,0x27,0x91,0xca,0x51,0x7,0xb,0xb,0xa,0x7a,0xf,0xa8,0x96,0xd8, + 0x93,0x59,0x22,0x2,0x78,0x9e,0x7,0xc6,0x18,0x18,0x67,0x35,0xa8,0x33,0x97,0xa6, + 0x84,0x20,0xf2,0x23,0xd7,0x6f,0xf5,0xf2,0x4a,0x14,0x3f,0x1d,0xa4,0x83,0xbf,0x28, + 0xcb,0x11,0x73,0xce,0x56,0x0,0xa6,0xb3,0x2d,0x9f,0xd5,0x55,0xfa,0xe3,0xa8,0xa6, + 0xf7,0x0,0xf4,0xc4,0x17,0x9f,0x68,0x7b,0xd4,0xdb,0x88,0x82,0x28,0x61,0x94,0x2d, + 0x42,0xb0,0x75,0x75,0x68,0xae,0xeb,0x1b,0x35,0x53,0xe0,0xc,0x3c,0xdf,0xab,0x17, + 0x6f,0xeb,0xc6,0x9b,0x23,0xee,0x5e,0xab,0x98,0x59,0x6,0x71,0x33,0x8b,0x99,0xed, + 0x9f,0x6,0xe4,0xf4,0x39,0x73,0x30,0xb9,0xc7,0xeb,0x68,0xe6,0x7b,0x80,0xab,0x15, + 0x80,0xf9,0xd0,0xc2,0xdc,0xad,0x3,0xee,0x93,0x6e,0xd2,0xf5,0xb3,0x2a,0xb3,0x83, + 0x74,0x30,0x72,0xce,0x56,0x7e,0x98,0xb8,0x28,0x6a,0x11,0xcf,0x6b,0x4,0xd6,0x6a, + 0x4f,0x88,0x2c,0xc9,0xd3,0x63,0x5,0x18,0x31,0xb3,0x22,0x83,0xfb,0x44,0xf9,0xf, + 0x5,0x50,0xbf,0xd5,0x6f,0x7b,0xdc,0xdb,0x8,0x83,0xb0,0xc9,0x19,0x5f,0x44,0xa2, + 0xd3,0x79,0x8c,0x52,0xa,0x4,0x75,0xf4,0x2,0xea,0x61,0xa6,0xc5,0x60,0x82,0x23, + 0xa8,0xbd,0x64,0xb6,0x60,0x4a,0x16,0xfb,0xb,0xde,0x9a,0x3,0x6,0xbc,0xeb,0x39, + 0x94,0xd5,0x0,0x5,0x51,0x80,0x20,0xa,0x60,0xb4,0x1,0x65,0xf4,0x1e,0x80,0x38, + 0xe5,0xe0,0x94,0x33,0x9f,0x7,0x1b,0x70,0xf8,0xc,0x80,0x7d,0xea,0xc7,0xfb,0x71, + 0xa3,0xe7,0xe2,0xb8,0x1d,0x4,0x41,0x87,0x1a,0xa3,0x24,0xa1,0xbc,0x28,0x8b,0x34, + 0xb5,0xc6,0xa4,0xf7,0x59,0x96,0xfa,0x48,0x0,0x71,0xce,0x63,0x4a,0x68,0xd7,0xf7, + 0x7c,0x9f,0x31,0xb6,0x8,0xcd,0x70,0x98,0xc9,0x99,0x6e,0x1,0x8c,0x56,0xb5,0x8, + 0x46,0x79,0xcd,0x37,0x73,0x52,0x76,0xa8,0x2d,0x6e,0x9e,0xec,0xc1,0x9d,0x64,0xc7, + 0x75,0x8b,0xae,0x3e,0x6f,0x7e,0xce,0x69,0xb2,0x76,0xb6,0x76,0xd3,0x79,0xbd,0x36, + 0xb7,0xd0,0xf9,0x67,0xcd,0x15,0x4,0x7,0x7,0x42,0x9,0x9,0xfd,0x20,0x8a,0xfc, + 0x38,0x4,0xa0,0x41,0xfc,0x7d,0x3f,0x6c,0x9b,0x66,0xb2,0xd2,0x58,0x5d,0x79,0x98, + 0x10,0x8f,0xdb,0x49,0x76,0xa0,0x9,0xd,0xcc,0x74,0xbc,0xe3,0x69,0x99,0x26,0x8c, + 0x11,0xe2,0xac,0xe5,0xda,0x98,0x2,0x80,0x40,0x10,0x18,0xcc,0x8a,0xec,0xf,0x4, + 0x10,0x21,0x24,0x76,0x70,0xbd,0xc0,0xb,0x38,0x9f,0x4d,0xc9,0xcf,0x17,0xb6,0xd8, + 0x9f,0x59,0x8b,0x94,0x12,0x5a,0xeb,0x5,0x3f,0x9c,0x76,0x1f,0x42,0x4f,0x59,0xc8, + 0x7c,0xca,0xe3,0xb4,0x65,0x91,0x77,0x39,0x87,0xd6,0x6e,0x48,0x9,0x5,0x65,0x14, + 0xbe,0x5f,0x6b,0xda,0x73,0xcb,0x5b,0xe4,0x4e,0x6e,0x1e,0xc,0x80,0xc0,0xb,0x10, + 0x87,0xd,0x0,0x7e,0x6a,0x59,0x7c,0xbb,0xdd,0x7b,0x50,0x2e,0x35,0xda,0xad,0x4f, + 0x3f,0xf6,0x35,0x84,0xbd,0x15,0xec,0xe,0x6f,0x52,0x6b,0x2,0xe6,0xac,0x63,0xd9, + 0xf8,0x36,0x8,0x35,0xdc,0x10,0x1d,0x2e,0x12,0x35,0x21,0xdc,0xfb,0xfd,0x34,0x81, + 0xdf,0xdb,0x42,0x77,0x2d,0xeb,0xec,0x6a,0xe0,0x7,0x94,0x33,0xbe,0x28,0x16,0x4f, + 0x8f,0xf4,0x12,0x5a,0x17,0xaa,0xf3,0x4a,0xdd,0xf3,0xbc,0x45,0xd4,0x72,0xce,0x81, + 0xd8,0x77,0xf2,0xcb,0xe9,0x32,0xe2,0xf4,0x36,0xe7,0xac,0x93,0x79,0xc6,0x3a,0xe7, + 0xa2,0x94,0x22,0xc,0xc3,0x5a,0x42,0x95,0xea,0x9e,0x4c,0x7e,0x3e,0x2e,0xe3,0x1c, + 0xe0,0x31,0xf,0x81,0x17,0xf2,0x24,0x6c,0x30,0xa1,0xd2,0xfc,0xda,0x9d,0x9d,0xa2, + 0x48,0x6e,0x12,0x3f,0x70,0xe8,0xac,0xff,0x12,0x58,0x74,0x16,0xe7,0x36,0x9e,0x85, + 0x67,0x2,0x6c,0x13,0x8a,0xaa,0xda,0xa6,0xa5,0x95,0xf5,0x70,0x4b,0x59,0xf8,0xf5, + 0xbc,0x32,0x91,0xf5,0x3c,0xca,0xbb,0xe3,0x44,0xbf,0xf1,0x8d,0x6f,0x9c,0x4c,0x25, + 0x18,0xcb,0x8,0x21,0x7e,0x14,0x46,0xc4,0xf7,0xfd,0x77,0xb4,0x8d,0x17,0xed,0x59, + 0x8b,0x99,0x5a,0x67,0x16,0xb5,0x16,0x80,0x85,0x3b,0x10,0x7a,0x8a,0xa0,0x29,0x59, + 0xbc,0x47,0x9,0xad,0x37,0x7a,0xef,0xb6,0x18,0x8b,0x99,0x91,0x7d,0x18,0x85,0xe8, + 0xf4,0x3a,0x48,0x5a,0x9,0x7c,0xdf,0xaf,0xc1,0xe2,0x1e,0x28,0xea,0xa1,0x2b,0x46, + 0x67,0xaa,0x0,0xf3,0xc0,0x29,0x23,0xce,0x59,0x38,0x55,0x59,0x4c,0xfe,0xc1,0x1e, + 0x1d,0xdd,0x2a,0xae,0x5d,0x7b,0xb5,0xd8,0xb9,0x73,0xab,0x10,0xb9,0x28,0x9a,0xf1, + 0x6a,0xb1,0xba,0xf2,0x58,0xb1,0xbc,0xfc,0x50,0x1,0x47,0x73,0xdf,0xf7,0x8a,0x66, + 0xb3,0x5d,0x51,0xba,0xa4,0x81,0xc4,0x1,0x8e,0x2,0xf6,0x3d,0x7f,0xf5,0xc4,0xbf, + 0xff,0xfd,0xef,0x9f,0x36,0x21,0xdf,0x1a,0x1b,0x5a,0x6b,0xe9,0x7b,0xf1,0xfc,0x5c, + 0xd0,0x52,0xaa,0x1e,0xda,0xd4,0x46,0x2f,0xac,0x80,0x52,0xa,0xb0,0x93,0xd1,0x96, + 0x39,0xe7,0xcc,0xf9,0x69,0x91,0x51,0xe3,0xd4,0x10,0xd5,0x2c,0x7f,0x5a,0x3c,0x13, + 0x40,0x5b,0x8d,0x34,0x4f,0x1,0xf,0x48,0xb3,0x14,0xc6,0x99,0x5,0x7,0xcd,0x33, + 0x78,0x29,0x5,0xa6,0xc5,0x14,0x79,0x99,0x6a,0xa9,0x2a,0xa9,0x51,0x9f,0x23,0xe5, + 0x58,0xed,0xec,0x4e,0x31,0x1d,0xdd,0x74,0xa1,0x96,0x18,0x12,0x82,0x76,0xf7,0x22, + 0xd6,0xd6,0x9e,0xc2,0xcf,0x7f,0xfe,0xdf,0xf1,0xd0,0xa5,0x1e,0xd9,0x58,0xbf,0x8a, + 0x1f,0x8c,0x2d,0x29,0xf5,0xb5,0x77,0xd3,0xc8,0xde,0xdb,0xc5,0x18,0xa5,0x1d,0x21, + 0xab,0xee,0xd1,0xf1,0x11,0x67,0x84,0x21,0x89,0x93,0x7b,0x24,0xd,0xb,0x5b,0xbb, + 0x12,0x75,0xa8,0x54,0x85,0x42,0x14,0xf0,0x84,0x7,0x46,0x59,0x7d,0x87,0x39,0x5, + 0xa3,0xac,0x76,0x39,0x83,0x93,0x2a,0x9d,0xe2,0xde,0xcc,0x79,0xb6,0x48,0x47,0xea, + 0xc8,0x67,0x9d,0x85,0x9d,0xb5,0xaa,0x85,0x14,0x28,0xf6,0xb,0xc,0x7e,0x38,0xa8, + 0x25,0x5b,0x70,0xc,0x87,0x43,0x64,0x22,0xab,0x33,0x6c,0x52,0x9f,0x33,0x4a,0x47, + 0xb8,0xbe,0x7b,0x1d,0xc3,0x74,0x58,0x28,0x2b,0x46,0xa7,0xb8,0xc4,0x0,0x33,0xab, + 0x9d,0xd,0x4a,0xd5,0xa3,0xc8,0x66,0x36,0x34,0x35,0x53,0x19,0x3e,0x60,0xa4,0x5f, + 0x0,0xf4,0xc4,0xa7,0x9e,0xc,0x1a,0x51,0xa3,0xa4,0x84,0xee,0xed,0x1d,0xee,0xad, + 0xa6,0x59,0xda,0xb,0xbc,0x80,0x12,0x52,0x73,0x8e,0xa8,0x84,0x4b,0x27,0xa9,0xc8, + 0xb3,0x5c,0x48,0x29,0x25,0x13,0xdc,0x1c,0x64,0x7,0xb1,0xe7,0x7b,0xcd,0x66,0xd4, + 0xc,0x5b,0x8d,0x16,0x92,0xb8,0x76,0x9,0xdf,0xf3,0xc1,0x3d,0x8e,0xd0,0xb,0x1, + 0xf,0x8b,0xea,0x7d,0x2e,0x8b,0x28,0xa9,0x50,0x56,0x25,0xca,0xa2,0x44,0x59,0x96, + 0x48,0xf3,0x14,0x93,0xe9,0x4,0xc7,0x93,0x63,0x57,0xca,0xb2,0x60,0x1,0x9b,0xae, + 0xa8,0x95,0xe3,0x9e,0xee,0x55,0xd4,0x52,0xec,0xee,0xef,0x86,0xd3,0xd1,0xd4,0x97, + 0x95,0x64,0xe,0xe,0xc6,0x18,0x9b,0x57,0xb9,0x29,0x44,0xe1,0x84,0x16,0x6f,0xcd, + 0x86,0x9d,0x4e,0x91,0xc8,0x9b,0x98,0xe4,0x6f,0xe2,0x6f,0x7f,0xf8,0xce,0x5,0xbf, + 0x75,0xa3,0xc4,0x5b,0x37,0xf6,0x3e,0x5c,0xa2,0xc8,0x9a,0x8c,0x4c,0xaa,0x11,0x4b, + 0x1a,0xcd,0x51,0xe8,0x87,0xaf,0xe7,0x65,0xce,0x8a,0xb2,0x58,0x22,0x84,0x78,0x8c, + 0x31,0x67,0x8d,0x25,0xaa,0x52,0xb6,0x2a,0xaa,0xb2,0x2c,0xcb,0x5c,0x6b,0x5d,0x7a, + 0xc6,0xd7,0x55,0x5a,0x35,0xad,0x35,0xfd,0x66,0xa3,0xd9,0x6b,0xc5,0xad,0x66,0x23, + 0x6c,0x44,0xa1,0x1f,0xd2,0x30,0xc,0x59,0x14,0x46,0x2c,0xe,0x63,0xc2,0x28,0x3b, + 0xa9,0xee,0xad,0x85,0x56,0x1a,0x55,0x55,0x21,0xcb,0x32,0x3b,0x49,0x27,0x66,0x9a, + 0x4d,0x4d,0x9a,0xa7,0x76,0x9a,0x4e,0xab,0xc1,0x78,0x30,0x51,0x56,0xd,0x5a,0xdd, + 0xd6,0xe1,0x56,0xb4,0xb5,0x97,0xc4,0x49,0x9e,0x8f,0x73,0x32,0x1a,0x8d,0xe2,0xe3, + 0xe3,0xe3,0x50,0x29,0xc5,0x1d,0x71,0xf0,0x98,0x67,0x9d,0x85,0xa,0xbd,0x50,0x87, + 0x5e,0xf8,0xd6,0x4,0x93,0xec,0xa3,0x96,0x12,0x1f,0x8,0x20,0x93,0x1a,0xdc,0x4c, + 0xdf,0xb6,0x5f,0x62,0x5f,0x3e,0xee,0xb5,0x97,0x5e,0xdf,0x5a,0xdd,0x3c,0x8c,0x83, + 0x98,0x51,0x50,0x63,0x5c,0x9d,0x41,0xa7,0xe3,0x14,0xbb,0x37,0x77,0x5d,0x65,0x2a, + 0x17,0x76,0x43,0xbb,0x7e,0x6e,0xdd,0x46,0x71,0x44,0xa7,0xf9,0x34,0xba,0xb9,0x7d, + 0x73,0x65,0xf7,0x60,0x77,0x3d,0xcf,0xf3,0x33,0xa1,0x1f,0x76,0x38,0xe3,0x1d,0x8f, + 0x7a,0x9d,0xc0,0xb,0x1a,0x9c,0x71,0x3a,0x77,0x3b,0xa9,0x24,0xca,0xaa,0x84,0xd4, + 0x52,0x57,0xa2,0x9a,0xe4,0x65,0x3e,0x9a,0xe4,0x93,0xd4,0x68,0x33,0xc,0x79,0x78, + 0xb8,0xba,0xb4,0xba,0x7b,0x6e,0xeb,0xdc,0xe8,0xe1,0x47,0x1e,0x2e,0xae,0x3c,0x79, + 0xc5,0x12,0x4b,0xdc,0xf6,0x8d,0x6d,0xb8,0xcc,0x91,0xb4,0x95,0x12,0x67,0x1d,0xb1, + 0xc4,0xc2,0xe7,0x81,0x13,0x52,0xd2,0xb7,0xb6,0xdf,0x8,0xb4,0xd3,0xc3,0x83,0xc9, + 0x81,0xfa,0x44,0x1,0x2,0xe0,0xb0,0xb,0xa9,0xad,0x9e,0x12,0x82,0xc3,0x4e,0xb3, + 0x23,0xba,0x49,0x17,0x9c,0x71,0xa5,0x5d,0x3d,0xbe,0xe2,0x3b,0x1f,0x43,0x3a,0x24, + 0xc4,0x27,0xa4,0xd3,0xee,0xa0,0xbf,0xd4,0x47,0xbb,0xd3,0x76,0x7d,0xd9,0xa7,0x8c, + 0xb3,0xbd,0x38,0x88,0xaf,0xd,0x47,0xc3,0x44,0x6a,0xd9,0xca,0xb2,0xac,0x3b,0x4a, + 0x47,0x3d,0x23,0x4d,0x42,0x8,0x89,0x39,0xe3,0x1e,0x63,0x8c,0x8,0x21,0x6c,0x51, + 0x15,0xd2,0xc1,0x15,0x9c,0xf3,0x91,0xef,0xf9,0xc7,0xcb,0xdd,0xe5,0x69,0xc0,0x83, + 0xb4,0x15,0xb5,0xf2,0x7e,0xa7,0x5f,0x6c,0xac,0x6e,0xc8,0xb5,0xee,0x9a,0x5d,0x59, + 0x5a,0xa1,0x42,0x8,0x12,0xc7,0x31,0x9a,0x71,0xd3,0x11,0x39,0xcf,0xc0,0x9d,0xa3, + 0x94,0x93,0x29,0xc9,0x98,0x23,0xe0,0xce,0xb9,0xe3,0x59,0xcd,0xf5,0x89,0x2,0x4, + 0x0,0xb6,0x10,0x45,0x96,0x55,0xd9,0xa8,0xac,0x4a,0x4,0x3c,0x20,0x1e,0xf7,0xb4, + 0x21,0xb5,0x5,0x49,0x2d,0x21,0x9d,0x84,0x63,0x8e,0x10,0x8f,0x40,0x68,0x81,0xb4, + 0x48,0xe1,0x71,0xcf,0x5e,0xb9,0x70,0xc5,0x3c,0xfd,0xa9,0xa7,0x25,0x65,0xd4,0x5e, + 0xbf,0x7b,0xdd,0xfb,0xe9,0xeb,0x3f,0x6d,0x5c,0xbb,0x71,0x2d,0x39,0x3c,0x38,0xc, + 0xa5,0x96,0x21,0x65,0xd4,0xe7,0x9c,0xd3,0xaa,0xaa,0xb4,0x10,0x42,0x84,0x61,0x28, + 0x96,0xbb,0xcb,0xf9,0xe5,0xf3,0x97,0xb3,0x47,0x2e,0x3e,0x52,0xb6,0xe3,0xb6,0x2b, + 0xf3,0x92,0xee,0x1e,0xec,0x7a,0x55,0x55,0xf1,0xfd,0xbd,0x7d,0xd2,0x1f,0xf4,0x61, + 0x61,0x51,0x8a,0x12,0x52,0x49,0x8,0x25,0x16,0xc3,0x6,0xc6,0x9,0x3a,0x2d,0xa7, + 0xc8,0xca,0xd4,0x94,0xb2,0x1c,0xfe,0x4b,0x1,0x84,0x2c,0xcb,0x8a,0x22,0x2e,0xe, + 0x85,0x10,0x52,0x6,0x92,0x3a,0xe2,0x8c,0x86,0xae,0x65,0xe,0x21,0x17,0xed,0x1b, + 0xe6,0x31,0x10,0x47,0x60,0x94,0x81,0x96,0x1a,0x45,0x5a,0xb8,0xfd,0xe1,0x3e,0x40, + 0xe1,0x98,0x63,0xee,0xd1,0x8b,0x8f,0x1e,0x5f,0xb9,0x70,0xc5,0x71,0xcb,0x9d,0x71, + 0x6,0xda,0x69,0x38,0xe7,0x9c,0xd5,0x16,0x4e,0x3b,0x2,0x2,0x8,0x2d,0x88,0x90, + 0x82,0xc,0x6,0x3,0x72,0xa0,0xf,0x88,0x94,0x92,0xe4,0x79,0xe,0x67,0x1d,0xe1, + 0x11,0x47,0x99,0x97,0xf5,0xcf,0xa5,0xb2,0xa,0x5a,0xcc,0xa6,0xc1,0x58,0x9d,0x66, + 0x68,0xa5,0xa8,0x52,0x95,0x53,0x52,0x49,0xa3,0xcc,0x1c,0x20,0xfb,0x89,0x3,0xb4, + 0xb7,0xbf,0x57,0x25,0x5e,0x72,0x2c,0x2a,0x51,0x89,0x48,0x10,0xeb,0x59,0x6b,0x60, + 0x6a,0x4d,0xd9,0x58,0xc0,0x0,0xd4,0xa3,0x20,0xac,0xe,0x97,0x46,0xd6,0xc9,0xa2, + 0x86,0x46,0xe5,0x2a,0x62,0x60,0xd0,0xe4,0x4d,0xdb,0x6b,0xf5,0xec,0x99,0xe5,0x33, + 0x76,0x6d,0x69,0xcd,0x7a,0xbe,0xe7,0xac,0xb5,0xce,0x73,0x9e,0x83,0x2,0x91,0x42, + 0x92,0x34,0x4f,0xe9,0xf5,0xfd,0xeb,0xf4,0xed,0xfd,0xb7,0x69,0x56,0x65,0x54,0x14, + 0x82,0x48,0x21,0x51,0xaa,0xd2,0x51,0x4a,0xd1,0x50,0xd,0xc8,0x54,0x42,0x5b,0x5d, + 0x4b,0xbc,0x5a,0xc0,0xba,0x5a,0x5e,0x31,0x30,0x10,0x46,0x90,0x52,0x96,0xc8,0xab, + 0x5c,0xe6,0x65,0x9e,0x7d,0x5c,0x49,0xe3,0x3,0x3,0xf4,0xe3,0x7f,0xf8,0xb1,0x92, + 0x63,0x99,0x3e,0x7e,0xf6,0xf1,0x82,0x37,0x38,0x61,0xd,0xe6,0xe0,0x0,0x8f,0xd6, + 0x45,0x23,0x17,0xb5,0xc,0x1,0x6,0x48,0x2b,0xc1,0x52,0x6,0xe4,0x0,0x5b,0x61, + 0xb0,0xa1,0x45,0x2a,0x53,0x4c,0xf,0xa7,0xb8,0xbb,0x7d,0x97,0xfc,0x4,0x3f,0x81, + 0x85,0xc5,0x64,0x3a,0x81,0x48,0x5,0x96,0xe9,0x32,0x38,0xe1,0x70,0xa4,0x56,0x16, + 0x4b,0x56,0xa2,0xe4,0xa5,0x63,0x1e,0x3,0x2f,0x38,0x4c,0x6a,0x90,0xb1,0xc,0xbc, + 0xc1,0xa1,0x9c,0x82,0xda,0x55,0xc8,0x5d,0x8e,0x61,0x3a,0xc4,0xc8,0x8c,0x10,0xdb, + 0x18,0x91,0x89,0x30,0x24,0x43,0x8c,0xaa,0x11,0x19,0x64,0x3,0xdc,0x3a,0xbe,0x65, + 0x9c,0x75,0x9f,0x18,0x38,0xef,0x26,0x98,0xd9,0x4a,0x54,0xca,0x1a,0xab,0xec,0x7c, + 0x2,0x74,0x3e,0x19,0x3f,0x2b,0x2c,0xef,0xa9,0xdd,0x8c,0xc3,0x2c,0x81,0x5d,0xfc, + 0x82,0x70,0xfe,0xfb,0x54,0xe3,0x4c,0x7d,0xb7,0xa5,0x40,0x25,0x2a,0x48,0x2a,0xe1, + 0xa8,0x5b,0x0,0xa4,0xb8,0x82,0x26,0x1a,0x84,0x93,0x45,0x6c,0x5a,0x69,0x4a,0x0, + 0x0,0x0,0x21,0x49,0x44,0x41,0x54,0x11,0x6c,0x88,0x1,0x3,0xab,0x8b,0x63,0xed, + 0x16,0xa2,0xff,0x3c,0x93,0xa6,0x6e,0xf6,0x4b,0x45,0x7b,0xd2,0x32,0xfa,0xa4,0xb8, + 0x67,0xfe,0xf8,0x3f,0xd3,0x21,0x9c,0xee,0x31,0xd4,0xfa,0xe1,0x0,0x0,0x0,0x0, + 0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82, + +}; + +static const unsigned char qt_resource_name[] = { + // offline.png + 0x0,0xb, + 0x0,0xaf,0xcd,0x27, + 0x0,0x6f, + 0x0,0x66,0x0,0x66,0x0,0x6c,0x0,0x69,0x0,0x6e,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // close.png + 0x0,0x9, + 0x6,0x98,0x83,0x27, + 0x0,0x63, + 0x0,0x6c,0x0,0x6f,0x0,0x73,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // addcontact.png + 0x0,0xe, + 0x2,0xf3,0x85,0xe7, + 0x0,0x61, + 0x0,0x64,0x0,0x64,0x0,0x63,0x0,0x6f,0x0,0x6e,0x0,0x74,0x0,0x61,0x0,0x63,0x0,0x74,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // contactfemale.png + 0x0,0x11, + 0xa,0xdc,0x51,0xa7, + 0x0,0x63, + 0x0,0x6f,0x0,0x6e,0x0,0x74,0x0,0x61,0x0,0x63,0x0,0x74,0x0,0x66,0x0,0x65,0x0,0x6d,0x0,0x61,0x0,0x6c,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + + // away.png + 0x0,0x8, + 0xd,0x8c,0x5a,0x47, + 0x0,0x61, + 0x0,0x77,0x0,0x61,0x0,0x79,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // themes.png + 0x0,0xa, + 0x3,0xcd,0xa,0xc7, + 0x0,0x74, + 0x0,0x68,0x0,0x65,0x0,0x6d,0x0,0x65,0x0,0x73,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // yellowframe.png + 0x0,0xf, + 0x2,0x5c,0x13,0x47, + 0x0,0x79, + 0x0,0x65,0x0,0x6c,0x0,0x6c,0x0,0x6f,0x0,0x77,0x0,0x66,0x0,0x72,0x0,0x61,0x0,0x6d,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // online.png + 0x0,0xa, + 0x0,0x4a,0x9d,0x27, + 0x0,0x6f, + 0x0,0x6e,0x0,0x6c,0x0,0x69,0x0,0x6e,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // restore.png + 0x0,0xb, + 0x6,0x79,0xc2,0x27, + 0x0,0x72, + 0x0,0x65,0x0,0x73,0x0,0x74,0x0,0x6f,0x0,0x72,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // redframe.png + 0x0,0xc, + 0xb,0x23,0xc,0x47, + 0x0,0x72, + 0x0,0x65,0x0,0x64,0x0,0x66,0x0,0x72,0x0,0x61,0x0,0x6d,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // general.png + 0x0,0xb, + 0x8,0xa4,0xde,0xc7, + 0x0,0x67, + 0x0,0x65,0x0,0x6e,0x0,0x65,0x0,0x72,0x0,0x61,0x0,0x6c,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // settings.png + 0x0,0xc, + 0xb,0xdf,0x21,0x47, + 0x0,0x73, + 0x0,0x65,0x0,0x74,0x0,0x74,0x0,0x69,0x0,0x6e,0x0,0x67,0x0,0x73,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // hidden.png + 0x0,0xa, + 0xa,0xcc,0x88,0x7, + 0x0,0x68, + 0x0,0x69,0x0,0x64,0x0,0x64,0x0,0x65,0x0,0x6e,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // busy.png + 0x0,0x8, + 0xc,0xac,0x5a,0x67, + 0x0,0x62, + 0x0,0x75,0x0,0x73,0x0,0x79,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // greenframe.png + 0x0,0xe, + 0x9,0x50,0xd7,0xe7, + 0x0,0x67, + 0x0,0x72,0x0,0x65,0x0,0x65,0x0,0x6e,0x0,0x66,0x0,0x72,0x0,0x61,0x0,0x6d,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // contactmale.png + 0x0,0xf, + 0xf,0x6a,0xa8,0xa7, + 0x0,0x63, + 0x0,0x6f,0x0,0x6e,0x0,0x74,0x0,0x61,0x0,0x63,0x0,0x74,0x0,0x6d,0x0,0x61,0x0,0x6c,0x0,0x65,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // network.png + 0x0,0xb, + 0x6,0x67,0xc0,0x87, + 0x0,0x6e, + 0x0,0x65,0x0,0x74,0x0,0x77,0x0,0x6f,0x0,0x72,0x0,0x6b,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // tieto-logo.png + 0x0,0xe, + 0xa,0x78,0x9,0x87, + 0x0,0x74, + 0x0,0x69,0x0,0x65,0x0,0x74,0x0,0x6f,0x0,0x2d,0x0,0x6c,0x0,0x6f,0x0,0x67,0x0,0x6f,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // activesessions.png + 0x0,0x12, + 0x6,0x89,0xc6,0x47, + 0x0,0x61, + 0x0,0x63,0x0,0x74,0x0,0x69,0x0,0x76,0x0,0x65,0x0,0x73,0x0,0x65,0x0,0x73,0x0,0x73,0x0,0x69,0x0,0x6f,0x0,0x6e,0x0,0x73,0x0,0x2e,0x0,0x70,0x0,0x6e, + 0x0,0x67, + // contacts.png + 0x0,0xc, + 0x7,0xfa,0xe3,0xa7, + 0x0,0x63, + 0x0,0x6f,0x0,0x6e,0x0,0x74,0x0,0x61,0x0,0x63,0x0,0x74,0x0,0x73,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // unknown.png + 0x0,0xb, + 0x6,0x59,0xf3,0xe7, + 0x0,0x75, + 0x0,0x6e,0x0,0x6b,0x0,0x6e,0x0,0x6f,0x0,0x77,0x0,0x6e,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + // account.png + 0x0,0xb, + 0xc,0x98,0x63,0x87, + 0x0,0x61, + 0x0,0x63,0x0,0x63,0x0,0x6f,0x0,0x75,0x0,0x6e,0x0,0x74,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67, + +}; + +static const unsigned char qt_resource_struct[] = { + // : + 0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x16,0x0,0x0,0x0,0x1, + // :/online.png + 0x0,0x0,0x0,0xd2,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x69,0xcb, + // :/offline.png + 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0, + // :/yellowframe.png + 0x0,0x0,0x0,0xae,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x61,0xf9, + // :/addcontact.png + 0x0,0x0,0x0,0x34,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x14,0x84, + // :/themes.png + 0x0,0x0,0x0,0x94,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x43,0x27, + // :/unknown.png + 0x0,0x0,0x2,0x5c,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x37,0x9c, + // :/network.png + 0x0,0x0,0x1,0xd6,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xde,0x41, + // :/restore.png + 0x0,0x0,0x0,0xec,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x75,0x4c, + // :/activesessions.png + 0x0,0x0,0x2,0x14,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xf8,0x44, + // :/close.png + 0x0,0x0,0x0,0x1c,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x9,0xac, + // :/contacts.png + 0x0,0x0,0x2,0x3e,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x17,0x47, + // :/general.png + 0x0,0x0,0x1,0x26,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x83,0x3e, + // :/greenframe.png + 0x0,0x0,0x1,0x90,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xc7,0x95, + // :/tieto-logo.png + 0x0,0x0,0x1,0xf2,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xf4,0x8, + // :/hidden.png + 0x0,0x0,0x1,0x60,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xb0,0x69, + // :/contactfemale.png + 0x0,0x0,0x0,0x56,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x23,0x9a, + // :/redframe.png + 0x0,0x0,0x1,0x8,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x7e,0x58, + // :/settings.png + 0x0,0x0,0x1,0x42,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x9e,0xff, + // :/account.png + 0x0,0x0,0x2,0x78,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x46,0x5a, + // :/busy.png + 0x0,0x0,0x1,0x7a,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xbb,0x62, + // :/away.png + 0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x34,0x56, + // :/contactmale.png + 0x0,0x0,0x1,0xb2,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xce,0x6c, + +}; + +QT_BEGIN_NAMESPACE + +extern Q_CORE_EXPORT bool qRegisterResourceData + (int, const unsigned char *, const unsigned char *, const unsigned char *); + +extern Q_CORE_EXPORT bool qUnregisterResourceData + (int, const unsigned char *, const unsigned char *, const unsigned char *); + +QT_END_NAMESPACE + + +int QT_MANGLE_NAMESPACE(qInitResources_application)() +{ + QT_PREPEND_NAMESPACE(qRegisterResourceData) + (0x01, qt_resource_struct, qt_resource_name, qt_resource_data); + return 1; +} + +Q_CONSTRUCTOR_FUNCTION(QT_MANGLE_NAMESPACE(qInitResources_application)) + +int QT_MANGLE_NAMESPACE(qCleanupResources_application)() +{ + QT_PREPEND_NAMESPACE(qUnregisterResourceData) + (0x01, qt_resource_struct, qt_resource_name, qt_resource_data); + return 1; +} + +Q_DESTRUCTOR_FUNCTION(QT_MANGLE_NAMESPACE(qCleanupResources_application)) + diff --git a/build/release/ui_TecAccountSettingsWidget.h b/build/release/ui_TecAccountSettingsWidget.h new file mode 100644 index 0000000..3dc6e20 --- /dev/null +++ b/build/release/ui_TecAccountSettingsWidget.h @@ -0,0 +1,374 @@ +/******************************************************************************** +** Form generated from reading UI file 'TecAccountSettingsWidget.ui' +** +** Created: Fri Jun 18 17:40:58 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TECACCOUNTSETTINGSWIDGET_H +#define UI_TECACCOUNTSETTINGSWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TecAccountSettingsWidgetClass +{ +public: + QHBoxLayout *horizontalLayout_2; + QFrame *frame; + QHBoxLayout *horizontalLayout; + QVBoxLayout *applyButtonLayout_2; + QPushButton *editVCardButton; + QSpacerItem *verticalSpacer_6; + QPushButton *backButton; + QVBoxLayout *verticalLayout_2; + QFormLayout *formLayout; + QLabel *loginLabel; + QLineEdit *loginLineEdit; + QLabel *passwordLabel; + QLineEdit *passwordLineEdit; + QLabel *passwordConfirmLabel; + QLineEdit *passwordConfirmLineEdit; + QSpacerItem *verticalSpacer_5; + QSpacerItem *verticalSpacer_4; + QSpacerItem *verticalSpacer_3; + QHBoxLayout *horizontalLayout_4; + QLabel *protocolLabel; + QComboBox *protocolComboBox; + QLabel *serverLabel; + QLineEdit *serverLineEdit; + QLabel *portLabel; + QLineEdit *portLineEdit; + QSpacerItem *verticalSpacer_2; + QVBoxLayout *applyButtonLayout; + QPushButton *changePasswordButton; + QSpacerItem *verticalSpacer; + QPushButton *okButton; + + void setupUi(QWidget *TecAccountSettingsWidgetClass) + { + if (TecAccountSettingsWidgetClass->objectName().isEmpty()) + TecAccountSettingsWidgetClass->setObjectName(QString::fromUtf8("TecAccountSettingsWidgetClass")); + TecAccountSettingsWidgetClass->resize(609, 388); + TecAccountSettingsWidgetClass->setStyleSheet(QString::fromUtf8("")); + horizontalLayout_2 = new QHBoxLayout(TecAccountSettingsWidgetClass); + horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); + frame = new QFrame(TecAccountSettingsWidgetClass); + frame->setObjectName(QString::fromUtf8("frame")); + frame->setEnabled(true); + QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(frame->sizePolicy().hasHeightForWidth()); + frame->setSizePolicy(sizePolicy); + frame->setMaximumSize(QSize(16777215, 16777215)); + frame->setStyleSheet(QString::fromUtf8("")); + frame->setFrameShape(QFrame::Box); + frame->setFrameShadow(QFrame::Sunken); + frame->setLineWidth(1); + horizontalLayout = new QHBoxLayout(frame); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + applyButtonLayout_2 = new QVBoxLayout(); +#ifndef Q_OS_MAC + applyButtonLayout_2->setSpacing(-1); +#endif + applyButtonLayout_2->setObjectName(QString::fromUtf8("applyButtonLayout_2")); + applyButtonLayout_2->setSizeConstraint(QLayout::SetMinimumSize); + editVCardButton = new QPushButton(frame); + editVCardButton->setObjectName(QString::fromUtf8("editVCardButton")); + editVCardButton->setEnabled(false); + editVCardButton->setMinimumSize(QSize(80, 80)); + editVCardButton->setMaximumSize(QSize(80, 80)); + editVCardButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + applyButtonLayout_2->addWidget(editVCardButton); + + verticalSpacer_6 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + applyButtonLayout_2->addItem(verticalSpacer_6); + + backButton = new QPushButton(frame); + backButton->setObjectName(QString::fromUtf8("backButton")); + backButton->setMinimumSize(QSize(80, 80)); + backButton->setMaximumSize(QSize(80, 80)); + backButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + applyButtonLayout_2->addWidget(backButton); + + + horizontalLayout->addLayout(applyButtonLayout_2); + + verticalLayout_2 = new QVBoxLayout(); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + formLayout = new QFormLayout(); + formLayout->setObjectName(QString::fromUtf8("formLayout")); + loginLabel = new QLabel(frame); + loginLabel->setObjectName(QString::fromUtf8("loginLabel")); + loginLabel->setStyleSheet(QString::fromUtf8("QLabel {\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + formLayout->setWidget(0, QFormLayout::LabelRole, loginLabel); + + loginLineEdit = new QLineEdit(frame); + loginLineEdit->setObjectName(QString::fromUtf8("loginLineEdit")); + loginLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + formLayout->setWidget(0, QFormLayout::FieldRole, loginLineEdit); + + passwordLabel = new QLabel(frame); + passwordLabel->setObjectName(QString::fromUtf8("passwordLabel")); + passwordLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + formLayout->setWidget(2, QFormLayout::LabelRole, passwordLabel); + + passwordLineEdit = new QLineEdit(frame); + passwordLineEdit->setObjectName(QString::fromUtf8("passwordLineEdit")); + passwordLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + passwordLineEdit->setEchoMode(QLineEdit::Password); + + formLayout->setWidget(2, QFormLayout::FieldRole, passwordLineEdit); + + passwordConfirmLabel = new QLabel(frame); + passwordConfirmLabel->setObjectName(QString::fromUtf8("passwordConfirmLabel")); + passwordConfirmLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + passwordConfirmLabel->setWordWrap(true); + passwordConfirmLabel->setIndent(-1); + + formLayout->setWidget(4, QFormLayout::LabelRole, passwordConfirmLabel); + + passwordConfirmLineEdit = new QLineEdit(frame); + passwordConfirmLineEdit->setObjectName(QString::fromUtf8("passwordConfirmLineEdit")); + passwordConfirmLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + passwordConfirmLineEdit->setEchoMode(QLineEdit::Password); + + formLayout->setWidget(4, QFormLayout::FieldRole, passwordConfirmLineEdit); + + verticalSpacer_5 = new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Maximum); + + formLayout->setItem(1, QFormLayout::LabelRole, verticalSpacer_5); + + verticalSpacer_4 = new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Maximum); + + formLayout->setItem(3, QFormLayout::LabelRole, verticalSpacer_4); + + + verticalLayout_2->addLayout(formLayout); + + verticalSpacer_3 = new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Maximum); + + verticalLayout_2->addItem(verticalSpacer_3); + + horizontalLayout_4 = new QHBoxLayout(); + horizontalLayout_4->setObjectName(QString::fromUtf8("horizontalLayout_4")); + protocolLabel = new QLabel(frame); + protocolLabel->setObjectName(QString::fromUtf8("protocolLabel")); + protocolLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(protocolLabel); + + protocolComboBox = new QComboBox(frame); + protocolComboBox->setObjectName(QString::fromUtf8("protocolComboBox")); + protocolComboBox->setMinimumSize(QSize(79, 52)); + protocolComboBox->setStyleSheet(QString::fromUtf8("QComboBox {\n" +" min-height: 48px;\n" +" font: bold 16px;\n" +"}\n" +"")); + + horizontalLayout_4->addWidget(protocolComboBox); + + serverLabel = new QLabel(frame); + serverLabel->setObjectName(QString::fromUtf8("serverLabel")); + serverLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(serverLabel); + + serverLineEdit = new QLineEdit(frame); + serverLineEdit->setObjectName(QString::fromUtf8("serverLineEdit")); + serverLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(serverLineEdit); + + portLabel = new QLabel(frame); + portLabel->setObjectName(QString::fromUtf8("portLabel")); + portLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(portLabel); + + portLineEdit = new QLineEdit(frame); + portLineEdit->setObjectName(QString::fromUtf8("portLineEdit")); + portLineEdit->setMaximumSize(QSize(80, 16777215)); + portLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" min-width: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(portLineEdit); + + + verticalLayout_2->addLayout(horizontalLayout_4); + + verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_2->addItem(verticalSpacer_2); + + + horizontalLayout->addLayout(verticalLayout_2); + + applyButtonLayout = new QVBoxLayout(); +#ifndef Q_OS_MAC + applyButtonLayout->setSpacing(-1); +#endif + applyButtonLayout->setObjectName(QString::fromUtf8("applyButtonLayout")); + applyButtonLayout->setSizeConstraint(QLayout::SetMinimumSize); + changePasswordButton = new QPushButton(frame); + changePasswordButton->setObjectName(QString::fromUtf8("changePasswordButton")); + changePasswordButton->setEnabled(false); + changePasswordButton->setMinimumSize(QSize(80, 80)); + changePasswordButton->setMaximumSize(QSize(80, 80)); + changePasswordButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + applyButtonLayout->addWidget(changePasswordButton); + + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + applyButtonLayout->addItem(verticalSpacer); + + okButton = new QPushButton(frame); + okButton->setObjectName(QString::fromUtf8("okButton")); + okButton->setMinimumSize(QSize(80, 80)); + okButton->setMaximumSize(QSize(80, 80)); + okButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + applyButtonLayout->addWidget(okButton); + + + horizontalLayout->addLayout(applyButtonLayout); + + + horizontalLayout_2->addWidget(frame); + + + retranslateUi(TecAccountSettingsWidgetClass); + QObject::connect(loginLineEdit, SIGNAL(textEdited(QString)), TecAccountSettingsWidgetClass, SLOT(loginEdited(QString))); + QObject::connect(protocolComboBox, SIGNAL(currentIndexChanged(QString)), TecAccountSettingsWidgetClass, SLOT(protocolEdited(QString))); + QObject::connect(okButton, SIGNAL(clicked()), TecAccountSettingsWidgetClass, SLOT(onOkButton())); + QObject::connect(changePasswordButton, SIGNAL(clicked()), TecAccountSettingsWidgetClass, SLOT(onChangePasswordButton())); + QObject::connect(serverLineEdit, SIGNAL(textEdited(QString)), TecAccountSettingsWidgetClass, SLOT(disconnectHints())); + QObject::connect(portLineEdit, SIGNAL(textEdited(QString)), TecAccountSettingsWidgetClass, SLOT(disconnectHints())); + + QMetaObject::connectSlotsByName(TecAccountSettingsWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TecAccountSettingsWidgetClass) + { + TecAccountSettingsWidgetClass->setWindowTitle(QApplication::translate("TecAccountSettingsWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + editVCardButton->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Edit\n" +"VCard", 0, QApplication::UnicodeUTF8)); + backButton->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Back", 0, QApplication::UnicodeUTF8)); + loginLabel->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Login", 0, QApplication::UnicodeUTF8)); + passwordLabel->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Password", 0, QApplication::UnicodeUTF8)); + passwordConfirmLabel->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Confirm Password", 0, QApplication::UnicodeUTF8)); + protocolLabel->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Protocol", 0, QApplication::UnicodeUTF8)); + serverLabel->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Server", 0, QApplication::UnicodeUTF8)); + portLabel->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Port", 0, QApplication::UnicodeUTF8)); + changePasswordButton->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Change\n" +"password", 0, QApplication::UnicodeUTF8)); + okButton->setText(QApplication::translate("TecAccountSettingsWidgetClass", "Ok", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TecAccountSettingsWidgetClass: public Ui_TecAccountSettingsWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TECACCOUNTSETTINGSWIDGET_H diff --git a/build/release/ui_TecChatWidget.h b/build/release/ui_TecChatWidget.h new file mode 100644 index 0000000..f282fcb --- /dev/null +++ b/build/release/ui_TecChatWidget.h @@ -0,0 +1,174 @@ +/******************************************************************************** +** Form generated from reading UI file 'TecChatWidget.ui' +** +** Created: Fri Jun 18 17:40:58 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TECCHATWIDGET_H +#define UI_TECCHATWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TecChatWidgetClass +{ +public: + QVBoxLayout *verticalLayout; + QFrame *chatFrame; + QVBoxLayout *verticalLayout_2; + QFrame *frame; + QGridLayout *gridLayout; + QTextEdit *chatTextEdit; + QHBoxLayout *horizontalLayout_2; + QPushButton *smileButton; + QTextEdit *messageTextEdit; + QPushButton *sendButton; + + void setupUi(QWidget *TecChatWidgetClass) + { + if (TecChatWidgetClass->objectName().isEmpty()) + TecChatWidgetClass->setObjectName(QString::fromUtf8("TecChatWidgetClass")); + TecChatWidgetClass->resize(718, 431); + TecChatWidgetClass->setStyleSheet(QString::fromUtf8("")); + verticalLayout = new QVBoxLayout(TecChatWidgetClass); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + chatFrame = new QFrame(TecChatWidgetClass); + chatFrame->setObjectName(QString::fromUtf8("chatFrame")); + chatFrame->setFrameShape(QFrame::StyledPanel); + chatFrame->setFrameShadow(QFrame::Raised); + verticalLayout_2 = new QVBoxLayout(chatFrame); + verticalLayout_2->setSpacing(0); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + frame = new QFrame(chatFrame); + frame->setObjectName(QString::fromUtf8("frame")); + frame->setStyleSheet(QString::fromUtf8("")); + frame->setFrameShape(QFrame::StyledPanel); + frame->setFrameShadow(QFrame::Plain); + gridLayout = new QGridLayout(frame); + gridLayout->setContentsMargins(3, 3, 3, 3); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + gridLayout->setVerticalSpacing(-1); + chatTextEdit = new QTextEdit(frame); + chatTextEdit->setObjectName(QString::fromUtf8("chatTextEdit")); + QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(chatTextEdit->sizePolicy().hasHeightForWidth()); + chatTextEdit->setSizePolicy(sizePolicy); + chatTextEdit->setStyleSheet(QString::fromUtf8("QTextEdit {\n" +" background-color: none;\n" +"}")); + chatTextEdit->setFrameShape(QFrame::Box); + chatTextEdit->setFrameShadow(QFrame::Sunken); + chatTextEdit->setLineWidth(1); + chatTextEdit->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + chatTextEdit->setReadOnly(true); + + gridLayout->addWidget(chatTextEdit, 0, 0, 1, 1); + + + verticalLayout_2->addWidget(frame); + + horizontalLayout_2 = new QHBoxLayout(); + horizontalLayout_2->setSpacing(4); + horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); + horizontalLayout_2->setContentsMargins(0, 0, -1, -1); + smileButton = new QPushButton(chatFrame); + smileButton->setObjectName(QString::fromUtf8("smileButton")); + QFont font; + font.setPointSize(14); + font.setBold(true); + font.setWeight(75); + smileButton->setFont(font); + smileButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + horizontalLayout_2->addWidget(smileButton); + + messageTextEdit = new QTextEdit(chatFrame); + messageTextEdit->setObjectName(QString::fromUtf8("messageTextEdit")); + QSizePolicy sizePolicy1(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); + sizePolicy1.setHorizontalStretch(0); + sizePolicy1.setVerticalStretch(0); + sizePolicy1.setHeightForWidth(messageTextEdit->sizePolicy().hasHeightForWidth()); + messageTextEdit->setSizePolicy(sizePolicy1); + messageTextEdit->setMaximumSize(QSize(16777215, 80)); + messageTextEdit->setStyleSheet(QString::fromUtf8("QTextEdit {\n" +" background-color: none;\n" +"}")); + messageTextEdit->setFrameShape(QFrame::Box); + messageTextEdit->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); + messageTextEdit->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + + horizontalLayout_2->addWidget(messageTextEdit); + + sendButton = new QPushButton(chatFrame); + sendButton->setObjectName(QString::fromUtf8("sendButton")); + QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::MinimumExpanding); + sizePolicy2.setHorizontalStretch(0); + sizePolicy2.setVerticalStretch(0); + sizePolicy2.setHeightForWidth(sendButton->sizePolicy().hasHeightForWidth()); + sendButton->setSizePolicy(sizePolicy2); + sendButton->setMaximumSize(QSize(80, 80)); + sendButton->setFont(font); + sendButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}\n" +"")); + + horizontalLayout_2->addWidget(sendButton); + + + verticalLayout_2->addLayout(horizontalLayout_2); + + + verticalLayout->addWidget(chatFrame); + + + retranslateUi(TecChatWidgetClass); + QObject::connect(sendButton, SIGNAL(clicked()), TecChatWidgetClass, SLOT(pressedSendButton())); + QObject::connect(sendButton, SIGNAL(clicked()), messageTextEdit, SLOT(setFocus())); + + QMetaObject::connectSlotsByName(TecChatWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TecChatWidgetClass) + { + TecChatWidgetClass->setWindowTitle(QApplication::translate("TecChatWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + smileButton->setText(QApplication::translate("TecChatWidgetClass", "Smile", 0, QApplication::UnicodeUTF8)); + sendButton->setText(QApplication::translate("TecChatWidgetClass", "Send", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TecChatWidgetClass: public Ui_TecChatWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TECCHATWIDGET_H diff --git a/build/release/ui_TecEmoticonsDialog.h b/build/release/ui_TecEmoticonsDialog.h new file mode 100644 index 0000000..23c02af --- /dev/null +++ b/build/release/ui_TecEmoticonsDialog.h @@ -0,0 +1,97 @@ +/******************************************************************************** +** Form generated from reading UI file 'TecEmoticonsDialog.ui' +** +** Created: Fri Jun 18 17:40:58 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TECEMOTICONSDIALOG_H +#define UI_TECEMOTICONSDIALOG_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TecEmoticonsDialogClass +{ +public: + QGridLayout *gridLayout; + QListWidget *emoticonsListWidget; + QSpacerItem *horizontalSpacer; + QPushButton *backButton; + QSpacerItem *horizontalSpacer_2; + + void setupUi(QDialog *TecEmoticonsDialogClass) + { + if (TecEmoticonsDialogClass->objectName().isEmpty()) + TecEmoticonsDialogClass->setObjectName(QString::fromUtf8("TecEmoticonsDialogClass")); + TecEmoticonsDialogClass->resize(418, 310); + gridLayout = new QGridLayout(TecEmoticonsDialogClass); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(11, 11, 11, 11); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + gridLayout->setContentsMargins(0, 9, 9, 0); + emoticonsListWidget = new QListWidget(TecEmoticonsDialogClass); + emoticonsListWidget->setObjectName(QString::fromUtf8("emoticonsListWidget")); + emoticonsListWidget->setProperty("showDropIndicator", QVariant(false)); + emoticonsListWidget->setSpacing(10); + emoticonsListWidget->setViewMode(QListView::ListMode); + + gridLayout->addWidget(emoticonsListWidget, 0, 0, 1, 3); + + horizontalSpacer = new QSpacerItem(142, 77, QSizePolicy::Expanding, QSizePolicy::Minimum); + + gridLayout->addItem(horizontalSpacer, 1, 0, 1, 1); + + backButton = new QPushButton(TecEmoticonsDialogClass); + backButton->setObjectName(QString::fromUtf8("backButton")); + backButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 40px;\n" +" min-width: 80px;\n" +" max-height: 40px;\n" +" max-width: 80px;\n" +"}")); + + gridLayout->addWidget(backButton, 1, 1, 1, 1); + + horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + gridLayout->addItem(horizontalSpacer_2, 1, 2, 1, 1); + + + retranslateUi(TecEmoticonsDialogClass); + + emoticonsListWidget->setCurrentRow(-1); + + + QMetaObject::connectSlotsByName(TecEmoticonsDialogClass); + } // setupUi + + void retranslateUi(QDialog *TecEmoticonsDialogClass) + { + TecEmoticonsDialogClass->setWindowTitle(QApplication::translate("TecEmoticonsDialogClass", "Emoticons", 0, QApplication::UnicodeUTF8)); + backButton->setText(QApplication::translate("TecEmoticonsDialogClass", "Back", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TecEmoticonsDialogClass: public Ui_TecEmoticonsDialogClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TECEMOTICONSDIALOG_H diff --git a/build/release/ui_TecGeneralSettingsWidget.h b/build/release/ui_TecGeneralSettingsWidget.h new file mode 100644 index 0000000..cb86e61 --- /dev/null +++ b/build/release/ui_TecGeneralSettingsWidget.h @@ -0,0 +1,322 @@ +/******************************************************************************** +** Form generated from reading UI file 'TecGeneralSettingsWidget.ui' +** +** Created: Fri Jun 18 17:40:58 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TECGENERALSETTINGSWIDGET_H +#define UI_TECGENERALSETTINGSWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TecGeneralSettingsWidgetClass +{ +public: + QVBoxLayout *verticalLayout; + QFrame *generalSettingsFrame; + QHBoxLayout *horizontalLayout; + QVBoxLayout *verticalLayout_2; + QSpacerItem *verticalSpacer; + QPushButton *backButton; + QGroupBox *sortingGroupBox; + QGridLayout *gridLayout_4; + QSpacerItem *verticalSpacer_3; + QSpacerItem *verticalSpacer_2; + QSpacerItem *verticalSpacer_4; + QSpacerItem *verticalSpacer_5; + QRadioButton *alphaRadioButton; + QRadioButton *dragDropRadioButton; + QRadioButton *presenceRadioButton; + QLabel *alphaLabel; + QLabel *presence; + QLabel *dragDropLabel; + QGroupBox *authorizationGroupBox; + QGridLayout *gridLayout_5; + QRadioButton *askRadioButton; + QRadioButton *denyRadioButton; + QRadioButton *acceptRadioButton; + QSpacerItem *verticalSpacer_7; + QSpacerItem *verticalSpacer_8; + QSpacerItem *verticalSpacer_6; + QSpacerItem *verticalSpacer_9; + QVBoxLayout *verticalLayout_3; + QSpacerItem *verticalSpacer_1; + QPushButton *okButton; + + void setupUi(QWidget *TecGeneralSettingsWidgetClass) + { + if (TecGeneralSettingsWidgetClass->objectName().isEmpty()) + TecGeneralSettingsWidgetClass->setObjectName(QString::fromUtf8("TecGeneralSettingsWidgetClass")); + TecGeneralSettingsWidgetClass->resize(773, 441); + TecGeneralSettingsWidgetClass->setProperty("sizeHint", QVariant(QSize(705, 568))); + verticalLayout = new QVBoxLayout(TecGeneralSettingsWidgetClass); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + generalSettingsFrame = new QFrame(TecGeneralSettingsWidgetClass); + generalSettingsFrame->setObjectName(QString::fromUtf8("generalSettingsFrame")); + generalSettingsFrame->setFrameShape(QFrame::StyledPanel); + generalSettingsFrame->setFrameShadow(QFrame::Raised); + horizontalLayout = new QHBoxLayout(generalSettingsFrame); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + verticalLayout_2 = new QVBoxLayout(); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_2->addItem(verticalSpacer); + + backButton = new QPushButton(generalSettingsFrame); + backButton->setObjectName(QString::fromUtf8("backButton")); + backButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_2->addWidget(backButton); + + + horizontalLayout->addLayout(verticalLayout_2); + + sortingGroupBox = new QGroupBox(generalSettingsFrame); + sortingGroupBox->setObjectName(QString::fromUtf8("sortingGroupBox")); + sortingGroupBox->setEnabled(false); + QSizePolicy sizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(sortingGroupBox->sizePolicy().hasHeightForWidth()); + sortingGroupBox->setSizePolicy(sizePolicy); + sortingGroupBox->setStyleSheet(QString::fromUtf8("QGroupBox {\n" +" font: bold 12px;\n" +"}")); + gridLayout_4 = new QGridLayout(sortingGroupBox); + gridLayout_4->setObjectName(QString::fromUtf8("gridLayout_4")); + verticalSpacer_3 = new QSpacerItem(20, 75, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_4->addItem(verticalSpacer_3, 4, 0, 1, 1); + + verticalSpacer_2 = new QSpacerItem(20, 85, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_4->addItem(verticalSpacer_2, 1, 0, 1, 1); + + verticalSpacer_4 = new QSpacerItem(20, 75, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_4->addItem(verticalSpacer_4, 7, 0, 1, 1); + + verticalSpacer_5 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_4->addItem(verticalSpacer_5, 11, 0, 1, 1); + + alphaRadioButton = new QRadioButton(sortingGroupBox); + alphaRadioButton->setObjectName(QString::fromUtf8("alphaRadioButton")); + QSizePolicy sizePolicy1(QSizePolicy::Minimum, QSizePolicy::Fixed); + sizePolicy1.setHorizontalStretch(0); + sizePolicy1.setVerticalStretch(0); + sizePolicy1.setHeightForWidth(alphaRadioButton->sizePolicy().hasHeightForWidth()); + alphaRadioButton->setSizePolicy(sizePolicy1); + alphaRadioButton->setMinimumSize(QSize(0, 25)); + alphaRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" background-color: none;\n" +" min-height: 25px;\n" +"}")); + alphaRadioButton->setChecked(true); + + gridLayout_4->addWidget(alphaRadioButton, 2, 0, 1, 1); + + dragDropRadioButton = new QRadioButton(sortingGroupBox); + dragDropRadioButton->setObjectName(QString::fromUtf8("dragDropRadioButton")); + dragDropRadioButton->setMinimumSize(QSize(0, 25)); + dragDropRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" background-color: none;\n" +" min-height: 25px;\n" +"}")); + + gridLayout_4->addWidget(dragDropRadioButton, 9, 0, 1, 1); + + presenceRadioButton = new QRadioButton(sortingGroupBox); + presenceRadioButton->setObjectName(QString::fromUtf8("presenceRadioButton")); + presenceRadioButton->setEnabled(false); + presenceRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" background-color: none;\n" +" min-height: 25px;\n" +"}")); + + gridLayout_4->addWidget(presenceRadioButton, 5, 0, 1, 1); + + alphaLabel = new QLabel(sortingGroupBox); + alphaLabel->setObjectName(QString::fromUtf8("alphaLabel")); + QFont font; + font.setBold(false); + font.setItalic(false); + font.setWeight(50); + alphaLabel->setFont(font); + alphaLabel->setStyleSheet(QString::fromUtf8("QLabel {\n" +" background: none;\n" +" font: 14px;\n" +"}")); + + gridLayout_4->addWidget(alphaLabel, 3, 0, 1, 1); + + presence = new QLabel(sortingGroupBox); + presence->setObjectName(QString::fromUtf8("presence")); + presence->setFont(font); + presence->setStyleSheet(QString::fromUtf8("QLabel {\n" +" background: none;\n" +" font: 14px;\n" +"}")); + + gridLayout_4->addWidget(presence, 6, 0, 1, 1); + + dragDropLabel = new QLabel(sortingGroupBox); + dragDropLabel->setObjectName(QString::fromUtf8("dragDropLabel")); + dragDropLabel->setStyleSheet(QString::fromUtf8("QLabel {\n" +" background: none;\n" +" font: 14px;\n" +"}")); + + gridLayout_4->addWidget(dragDropLabel, 10, 0, 1, 1); + + + horizontalLayout->addWidget(sortingGroupBox); + + authorizationGroupBox = new QGroupBox(generalSettingsFrame); + authorizationGroupBox->setObjectName(QString::fromUtf8("authorizationGroupBox")); + authorizationGroupBox->setEnabled(false); + sizePolicy.setHeightForWidth(authorizationGroupBox->sizePolicy().hasHeightForWidth()); + authorizationGroupBox->setSizePolicy(sizePolicy); + authorizationGroupBox->setStyleSheet(QString::fromUtf8("QGroupBox {\n" +" font: bold 12px;\n" +"}")); + authorizationGroupBox->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter); + gridLayout_5 = new QGridLayout(authorizationGroupBox); + gridLayout_5->setObjectName(QString::fromUtf8("gridLayout_5")); + askRadioButton = new QRadioButton(authorizationGroupBox); + askRadioButton->setObjectName(QString::fromUtf8("askRadioButton")); + askRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +"\n" +" min-height: 48px;\n" +"}")); + askRadioButton->setChecked(true); + + gridLayout_5->addWidget(askRadioButton, 2, 0, 1, 1); + + denyRadioButton = new QRadioButton(authorizationGroupBox); + denyRadioButton->setObjectName(QString::fromUtf8("denyRadioButton")); + denyRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" min-height: 48px;\n" +"}")); + + gridLayout_5->addWidget(denyRadioButton, 6, 0, 1, 1); + + acceptRadioButton = new QRadioButton(authorizationGroupBox); + acceptRadioButton->setObjectName(QString::fromUtf8("acceptRadioButton")); + acceptRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" min-height: 48px;\n" +"}")); + + gridLayout_5->addWidget(acceptRadioButton, 4, 0, 1, 1); + + verticalSpacer_7 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_5->addItem(verticalSpacer_7, 3, 0, 1, 1); + + verticalSpacer_8 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_5->addItem(verticalSpacer_8, 5, 0, 1, 1); + + verticalSpacer_6 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_5->addItem(verticalSpacer_6, 1, 0, 1, 1); + + verticalSpacer_9 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_5->addItem(verticalSpacer_9, 7, 0, 1, 1); + + + horizontalLayout->addWidget(authorizationGroupBox); + + verticalLayout_3 = new QVBoxLayout(); + verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3")); + verticalSpacer_1 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_3->addItem(verticalSpacer_1); + + okButton = new QPushButton(generalSettingsFrame); + okButton->setObjectName(QString::fromUtf8("okButton")); + okButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_3->addWidget(okButton); + + + horizontalLayout->addLayout(verticalLayout_3); + + + verticalLayout->addWidget(generalSettingsFrame); + + + retranslateUi(TecGeneralSettingsWidgetClass); + + QMetaObject::connectSlotsByName(TecGeneralSettingsWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TecGeneralSettingsWidgetClass) + { + TecGeneralSettingsWidgetClass->setWindowTitle(QApplication::translate("TecGeneralSettingsWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + backButton->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Back", 0, QApplication::UnicodeUTF8)); + sortingGroupBox->setTitle(QApplication::translate("TecGeneralSettingsWidgetClass", "Contact list sorting", 0, QApplication::UnicodeUTF8)); + alphaRadioButton->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Sort alphabeticaly", 0, QApplication::UnicodeUTF8)); + dragDropRadioButton->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Disable sorting", 0, QApplication::UnicodeUTF8)); + presenceRadioButton->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Sort by status", 0, QApplication::UnicodeUTF8)); + alphaLabel->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Sorts contact list items alphabetically", 0, QApplication::UnicodeUTF8)); + presence->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Sorts contact list items by status", 0, QApplication::UnicodeUTF8)); + dragDropLabel->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Disables sorting and enables drag\n" +"and dropping", 0, QApplication::UnicodeUTF8)); + authorizationGroupBox->setTitle(QApplication::translate("TecGeneralSettingsWidgetClass", "Contact authorization rule", 0, QApplication::UnicodeUTF8)); + askRadioButton->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Ask", 0, QApplication::UnicodeUTF8)); + denyRadioButton->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Always deny", 0, QApplication::UnicodeUTF8)); + acceptRadioButton->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Always accept", 0, QApplication::UnicodeUTF8)); + okButton->setText(QApplication::translate("TecGeneralSettingsWidgetClass", "Ok", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TecGeneralSettingsWidgetClass: public Ui_TecGeneralSettingsWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TECGENERALSETTINGSWIDGET_H diff --git a/build/release/ui_TecThemesSettingsWidget.h b/build/release/ui_TecThemesSettingsWidget.h new file mode 100644 index 0000000..0c26550 --- /dev/null +++ b/build/release/ui_TecThemesSettingsWidget.h @@ -0,0 +1,192 @@ +/******************************************************************************** +** Form generated from reading UI file 'TecThemesSettingsWidget.ui' +** +** Created: Fri Jun 18 17:40:58 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TECTHEMESSETTINGSWIDGET_H +#define UI_TECTHEMESSETTINGSWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TecThemesSettingsWidgetClass +{ +public: + QGridLayout *gridLayout_2; + QFrame *frame; + QGridLayout *gridLayout; + QVBoxLayout *verticalLayout_3; + QSpacerItem *verticalSpacer_2; + QPushButton *backThemeButton; + QVBoxLayout *verticalLayout; + QListWidget *themesListWidget; + QVBoxLayout *verticalLayout_2; + QPushButton *addThemeButton; + QSpacerItem *verticalSpacer; + QPushButton *applyThemeButton; + + void setupUi(QWidget *TecThemesSettingsWidgetClass) + { + if (TecThemesSettingsWidgetClass->objectName().isEmpty()) + TecThemesSettingsWidgetClass->setObjectName(QString::fromUtf8("TecThemesSettingsWidgetClass")); + TecThemesSettingsWidgetClass->resize(593, 405); + TecThemesSettingsWidgetClass->setStyleSheet(QString::fromUtf8("")); + gridLayout_2 = new QGridLayout(TecThemesSettingsWidgetClass); + gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2")); + frame = new QFrame(TecThemesSettingsWidgetClass); + frame->setObjectName(QString::fromUtf8("frame")); + frame->setEnabled(true); + QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(frame->sizePolicy().hasHeightForWidth()); + frame->setSizePolicy(sizePolicy); + frame->setStyleSheet(QString::fromUtf8("")); + frame->setFrameShape(QFrame::Box); + frame->setFrameShadow(QFrame::Sunken); + frame->setLineWidth(1); + gridLayout = new QGridLayout(frame); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + verticalLayout_3 = new QVBoxLayout(); + verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3")); + verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_3->addItem(verticalSpacer_2); + + backThemeButton = new QPushButton(frame); + backThemeButton->setObjectName(QString::fromUtf8("backThemeButton")); + backThemeButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_3->addWidget(backThemeButton); + + + gridLayout->addLayout(verticalLayout_3, 0, 0, 1, 1); + + verticalLayout = new QVBoxLayout(); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + themesListWidget = new QListWidget(frame); + themesListWidget->setObjectName(QString::fromUtf8("themesListWidget")); + QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Expanding); + sizePolicy1.setHorizontalStretch(0); + sizePolicy1.setVerticalStretch(0); + sizePolicy1.setHeightForWidth(themesListWidget->sizePolicy().hasHeightForWidth()); + themesListWidget->setSizePolicy(sizePolicy1); + themesListWidget->setAutoFillBackground(true); + themesListWidget->setStyleSheet(QString::fromUtf8("QListView {\n" +" font: bold 30px;\n" +"}\n" +"\n" +"")); + themesListWidget->setLineWidth(1); + themesListWidget->setMidLineWidth(1); + themesListWidget->setProperty("showDropIndicator", QVariant(false)); + themesListWidget->setAlternatingRowColors(false); + themesListWidget->setSelectionMode(QAbstractItemView::SingleSelection); + themesListWidget->setSelectionBehavior(QAbstractItemView::SelectItems); + themesListWidget->setIconSize(QSize(0, 0)); + themesListWidget->setTextElideMode(Qt::ElideMiddle); + themesListWidget->setHorizontalScrollMode(QAbstractItemView::ScrollPerItem); + themesListWidget->setMovement(QListView::Static); + themesListWidget->setFlow(QListView::TopToBottom); + themesListWidget->setProperty("isWrapping", QVariant(false)); + themesListWidget->setResizeMode(QListView::Adjust); + themesListWidget->setSpacing(5); + themesListWidget->setViewMode(QListView::ListMode); + themesListWidget->setModelColumn(0); + themesListWidget->setWordWrap(true); + themesListWidget->setSelectionRectVisible(true); + themesListWidget->setSortingEnabled(false); + + verticalLayout->addWidget(themesListWidget); + + + gridLayout->addLayout(verticalLayout, 0, 1, 1, 1); + + verticalLayout_2 = new QVBoxLayout(); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + addThemeButton = new QPushButton(frame); + addThemeButton->setObjectName(QString::fromUtf8("addThemeButton")); + addThemeButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_2->addWidget(addThemeButton); + + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_2->addItem(verticalSpacer); + + applyThemeButton = new QPushButton(frame); + applyThemeButton->setObjectName(QString::fromUtf8("applyThemeButton")); + applyThemeButton->setAutoFillBackground(false); + applyThemeButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_2->addWidget(applyThemeButton); + + + gridLayout->addLayout(verticalLayout_2, 0, 2, 1, 1); + + + gridLayout_2->addWidget(frame, 0, 0, 1, 1); + + + retranslateUi(TecThemesSettingsWidgetClass); + + themesListWidget->setCurrentRow(-1); + + + QMetaObject::connectSlotsByName(TecThemesSettingsWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TecThemesSettingsWidgetClass) + { + TecThemesSettingsWidgetClass->setWindowTitle(QApplication::translate("TecThemesSettingsWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + backThemeButton->setText(QApplication::translate("TecThemesSettingsWidgetClass", "Back", 0, QApplication::UnicodeUTF8)); + addThemeButton->setText(QApplication::translate("TecThemesSettingsWidgetClass", "Add theme", 0, QApplication::UnicodeUTF8)); + applyThemeButton->setText(QApplication::translate("TecThemesSettingsWidgetClass", "Apply", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TecThemesSettingsWidgetClass: public Ui_TecThemesSettingsWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TECTHEMESSETTINGSWIDGET_H diff --git a/build/release/ui_TecUserInfoWidget.h b/build/release/ui_TecUserInfoWidget.h new file mode 100644 index 0000000..fe28744 --- /dev/null +++ b/build/release/ui_TecUserInfoWidget.h @@ -0,0 +1,329 @@ +/******************************************************************************** +** Form generated from reading UI file 'TecUserInfoWidget.ui' +** +** Created: Fri Jun 18 17:40:58 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TECUSERINFOWIDGET_H +#define UI_TECUSERINFOWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TecUserInfoWidgetClass +{ +public: + QVBoxLayout *verticalLayout_5; + QFrame *userInfoFrame; + QHBoxLayout *horizontalLayout; + QVBoxLayout *verticalLayout; + QPushButton *pictureButton; + QSpacerItem *verticalSpacer; + QPushButton *cancelButton; + QVBoxLayout *verticalLayout_3; + QHBoxLayout *horizontalLayout_2; + QLabel *uidLabel; + QLineEdit *uidLineEdit; + QSpacerItem *horizontalSpacer_4; + QHBoxLayout *horizontalLayout_4; + QLabel *nameLabel; + QLineEdit *nameLineEdit; + QSpacerItem *horizontalSpacer_3; + QPushButton *resolveButton; + QHBoxLayout *horizontalLayout_5; + QLabel *genderLabel; + QComboBox *genderComboBox; + QSpacerItem *horizontalSpacer_6; + QSpacerItem *verticalSpacer_3; + QVBoxLayout *verticalLayout_2; + QSpacerItem *verticalSpacer_2; + QPushButton *okButton; + + void setupUi(QWidget *TecUserInfoWidgetClass) + { + if (TecUserInfoWidgetClass->objectName().isEmpty()) + TecUserInfoWidgetClass->setObjectName(QString::fromUtf8("TecUserInfoWidgetClass")); + TecUserInfoWidgetClass->setWindowModality(Qt::NonModal); + TecUserInfoWidgetClass->resize(544, 256); + TecUserInfoWidgetClass->setFocusPolicy(Qt::ClickFocus); + TecUserInfoWidgetClass->setStyleSheet(QString::fromUtf8("")); + verticalLayout_5 = new QVBoxLayout(TecUserInfoWidgetClass); + verticalLayout_5->setObjectName(QString::fromUtf8("verticalLayout_5")); + userInfoFrame = new QFrame(TecUserInfoWidgetClass); + userInfoFrame->setObjectName(QString::fromUtf8("userInfoFrame")); + QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(userInfoFrame->sizePolicy().hasHeightForWidth()); + userInfoFrame->setSizePolicy(sizePolicy); + userInfoFrame->setStyleSheet(QString::fromUtf8("QFrame{\n" +"border:none;\n" +"}")); + userInfoFrame->setFrameShape(QFrame::StyledPanel); + horizontalLayout = new QHBoxLayout(userInfoFrame); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + verticalLayout = new QVBoxLayout(); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + pictureButton = new QPushButton(userInfoFrame); + pictureButton->setObjectName(QString::fromUtf8("pictureButton")); + QSizePolicy sizePolicy1(QSizePolicy::Minimum, QSizePolicy::Fixed); + sizePolicy1.setHorizontalStretch(0); + sizePolicy1.setVerticalStretch(0); + sizePolicy1.setHeightForWidth(pictureButton->sizePolicy().hasHeightForWidth()); + pictureButton->setSizePolicy(sizePolicy1); + pictureButton->setMinimumSize(QSize(80, 80)); + pictureButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + pictureButton->setIconSize(QSize(68, 68)); + pictureButton->setFlat(false); + + verticalLayout->addWidget(pictureButton); + + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout->addItem(verticalSpacer); + + cancelButton = new QPushButton(userInfoFrame); + cancelButton->setObjectName(QString::fromUtf8("cancelButton")); + cancelButton->setMinimumSize(QSize(80, 80)); + cancelButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout->addWidget(cancelButton); + + + horizontalLayout->addLayout(verticalLayout); + + verticalLayout_3 = new QVBoxLayout(); + verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3")); + horizontalLayout_2 = new QHBoxLayout(); + horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); + uidLabel = new QLabel(userInfoFrame); + uidLabel->setObjectName(QString::fromUtf8("uidLabel")); + uidLabel->setMinimumSize(QSize(30, 0)); + uidLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" border-radius: none;\n" +" background: none;\n" +" font: bold 12px;\n" +"}")); + uidLabel->setFrameShape(QFrame::StyledPanel); + uidLabel->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); + + horizontalLayout_2->addWidget(uidLabel); + + uidLineEdit = new QLineEdit(userInfoFrame); + uidLineEdit->setObjectName(QString::fromUtf8("uidLineEdit")); + QSizePolicy sizePolicy2(QSizePolicy::Expanding, QSizePolicy::Maximum); + sizePolicy2.setHorizontalStretch(48); + sizePolicy2.setVerticalStretch(48); + sizePolicy2.setHeightForWidth(uidLineEdit->sizePolicy().hasHeightForWidth()); + uidLineEdit->setSizePolicy(sizePolicy2); + uidLineEdit->setMinimumSize(QSize(0, 48)); + QFont font; + font.setBold(true); + font.setItalic(false); + font.setWeight(75); + uidLineEdit->setFont(font); + uidLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_2->addWidget(uidLineEdit); + + horizontalSpacer_4 = new QSpacerItem(20, 20, QSizePolicy::Maximum, QSizePolicy::Minimum); + + horizontalLayout_2->addItem(horizontalSpacer_4); + + + verticalLayout_3->addLayout(horizontalLayout_2); + + horizontalLayout_4 = new QHBoxLayout(); + horizontalLayout_4->setObjectName(QString::fromUtf8("horizontalLayout_4")); + nameLabel = new QLabel(userInfoFrame); + nameLabel->setObjectName(QString::fromUtf8("nameLabel")); + nameLabel->setMinimumSize(QSize(30, 0)); + nameLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" border-radius: none;\n" +" background: none;\n" +" font: bold 12px;\n" +"}")); + nameLabel->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); + + horizontalLayout_4->addWidget(nameLabel); + + nameLineEdit = new QLineEdit(userInfoFrame); + nameLineEdit->setObjectName(QString::fromUtf8("nameLineEdit")); + QSizePolicy sizePolicy3(QSizePolicy::Expanding, QSizePolicy::Fixed); + sizePolicy3.setHorizontalStretch(0); + sizePolicy3.setVerticalStretch(48); + sizePolicy3.setHeightForWidth(nameLineEdit->sizePolicy().hasHeightForWidth()); + nameLineEdit->setSizePolicy(sizePolicy3); + nameLineEdit->setMinimumSize(QSize(0, 48)); + nameLineEdit->setFont(font); + nameLineEdit->setLayoutDirection(Qt::LeftToRight); + nameLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + nameLineEdit->setReadOnly(false); + + horizontalLayout_4->addWidget(nameLineEdit); + + horizontalSpacer_3 = new QSpacerItem(20, 20, QSizePolicy::Maximum, QSizePolicy::Minimum); + + horizontalLayout_4->addItem(horizontalSpacer_3); + + resolveButton = new QPushButton(userInfoFrame); + resolveButton->setObjectName(QString::fromUtf8("resolveButton")); + resolveButton->setMinimumSize(QSize(80, 40)); + resolveButton->setMaximumSize(QSize(80, 40)); + resolveButton->setFont(font); + resolveButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 40px;\n" +" min-width: 80px;\n" +" max-height: 40px;\n" +" max-width: 80px;\n" +"}")); + + horizontalLayout_4->addWidget(resolveButton); + + + verticalLayout_3->addLayout(horizontalLayout_4); + + horizontalLayout_5 = new QHBoxLayout(); + horizontalLayout_5->setObjectName(QString::fromUtf8("horizontalLayout_5")); + genderLabel = new QLabel(userInfoFrame); + genderLabel->setObjectName(QString::fromUtf8("genderLabel")); + genderLabel->setMinimumSize(QSize(30, 0)); + genderLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" border-radius: none;\n" +" background: none;\n" +" font: bold 12px;\n" +"}")); + genderLabel->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); + + horizontalLayout_5->addWidget(genderLabel); + + genderComboBox = new QComboBox(userInfoFrame); + genderComboBox->setObjectName(QString::fromUtf8("genderComboBox")); + QSizePolicy sizePolicy4(QSizePolicy::Preferred, QSizePolicy::Fixed); + sizePolicy4.setHorizontalStretch(0); + sizePolicy4.setVerticalStretch(48); + sizePolicy4.setHeightForWidth(genderComboBox->sizePolicy().hasHeightForWidth()); + genderComboBox->setSizePolicy(sizePolicy4); + genderComboBox->setMinimumSize(QSize(110, 52)); + genderComboBox->setFont(font); + genderComboBox->setAutoFillBackground(false); + genderComboBox->setStyleSheet(QString::fromUtf8("QComboBox {\n" +" min-height: 48px;\n" +" font: bold 16px;\n" +"}\n" +"")); + + horizontalLayout_5->addWidget(genderComboBox); + + horizontalSpacer_6 = new QSpacerItem(20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + horizontalLayout_5->addItem(horizontalSpacer_6); + + + verticalLayout_3->addLayout(horizontalLayout_5); + + verticalSpacer_3 = new QSpacerItem(327, 35, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_3->addItem(verticalSpacer_3); + + + horizontalLayout->addLayout(verticalLayout_3); + + verticalLayout_2 = new QVBoxLayout(); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_2->addItem(verticalSpacer_2); + + okButton = new QPushButton(userInfoFrame); + okButton->setObjectName(QString::fromUtf8("okButton")); + okButton->setMinimumSize(QSize(80, 80)); + okButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_2->addWidget(okButton); + + + horizontalLayout->addLayout(verticalLayout_2); + + + verticalLayout_5->addWidget(userInfoFrame); + + + retranslateUi(TecUserInfoWidgetClass); + + genderComboBox->setCurrentIndex(-1); + + + QMetaObject::connectSlotsByName(TecUserInfoWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TecUserInfoWidgetClass) + { + TecUserInfoWidgetClass->setWindowTitle(QApplication::translate("TecUserInfoWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + pictureButton->setText(QString()); + cancelButton->setText(QApplication::translate("TecUserInfoWidgetClass", "Cancel", 0, QApplication::UnicodeUTF8)); + uidLabel->setText(QApplication::translate("TecUserInfoWidgetClass", "User id:", 0, QApplication::UnicodeUTF8)); + uidLineEdit->setText(QString()); + nameLabel->setText(QApplication::translate("TecUserInfoWidgetClass", "Name:", 0, QApplication::UnicodeUTF8)); + nameLineEdit->setText(QString()); + resolveButton->setText(QApplication::translate("TecUserInfoWidgetClass", "Resolve", 0, QApplication::UnicodeUTF8)); + genderLabel->setText(QApplication::translate("TecUserInfoWidgetClass", "Gender:", 0, QApplication::UnicodeUTF8)); + okButton->setText(QApplication::translate("TecUserInfoWidgetClass", "OK", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TecUserInfoWidgetClass: public Ui_TecUserInfoWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TECUSERINFOWIDGET_H diff --git a/build/release/ui_TocAccountSettingsWidget.h b/build/release/ui_TocAccountSettingsWidget.h new file mode 100644 index 0000000..6988e4d --- /dev/null +++ b/build/release/ui_TocAccountSettingsWidget.h @@ -0,0 +1,374 @@ +/******************************************************************************** +** Form generated from reading UI file 'TocAccountSettingsWidget.ui' +** +** Created: Thu Jul 8 08:48:05 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TOCACCOUNTSETTINGSWIDGET_H +#define UI_TOCACCOUNTSETTINGSWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TocAccountSettingsWidgetClass +{ +public: + QHBoxLayout *horizontalLayout_2; + QFrame *frame; + QHBoxLayout *horizontalLayout; + QVBoxLayout *applyButtonLayout_2; + QPushButton *editVCardButton; + QSpacerItem *verticalSpacer_6; + QPushButton *backButton; + QVBoxLayout *verticalLayout_2; + QFormLayout *formLayout; + QLabel *loginLabel; + QLineEdit *loginLineEdit; + QLabel *passwordLabel; + QLineEdit *passwordLineEdit; + QLabel *passwordConfirmLabel; + QLineEdit *passwordConfirmLineEdit; + QSpacerItem *verticalSpacer_5; + QSpacerItem *verticalSpacer_4; + QSpacerItem *verticalSpacer_3; + QHBoxLayout *horizontalLayout_4; + QLabel *protocolLabel; + QComboBox *protocolComboBox; + QLabel *serverLabel; + QLineEdit *serverLineEdit; + QLabel *portLabel; + QLineEdit *portLineEdit; + QSpacerItem *verticalSpacer_2; + QVBoxLayout *applyButtonLayout; + QPushButton *changePasswordButton; + QSpacerItem *verticalSpacer; + QPushButton *okButton; + + void setupUi(QWidget *TocAccountSettingsWidgetClass) + { + if (TocAccountSettingsWidgetClass->objectName().isEmpty()) + TocAccountSettingsWidgetClass->setObjectName(QString::fromUtf8("TocAccountSettingsWidgetClass")); + TocAccountSettingsWidgetClass->resize(609, 388); + TocAccountSettingsWidgetClass->setStyleSheet(QString::fromUtf8("")); + horizontalLayout_2 = new QHBoxLayout(TocAccountSettingsWidgetClass); + horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); + frame = new QFrame(TocAccountSettingsWidgetClass); + frame->setObjectName(QString::fromUtf8("frame")); + frame->setEnabled(true); + QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(frame->sizePolicy().hasHeightForWidth()); + frame->setSizePolicy(sizePolicy); + frame->setMaximumSize(QSize(16777215, 16777215)); + frame->setStyleSheet(QString::fromUtf8("")); + frame->setFrameShape(QFrame::Box); + frame->setFrameShadow(QFrame::Sunken); + frame->setLineWidth(1); + horizontalLayout = new QHBoxLayout(frame); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + applyButtonLayout_2 = new QVBoxLayout(); +#ifndef Q_OS_MAC + applyButtonLayout_2->setSpacing(-1); +#endif + applyButtonLayout_2->setObjectName(QString::fromUtf8("applyButtonLayout_2")); + applyButtonLayout_2->setSizeConstraint(QLayout::SetMinimumSize); + editVCardButton = new QPushButton(frame); + editVCardButton->setObjectName(QString::fromUtf8("editVCardButton")); + editVCardButton->setEnabled(false); + editVCardButton->setMinimumSize(QSize(80, 80)); + editVCardButton->setMaximumSize(QSize(80, 80)); + editVCardButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + applyButtonLayout_2->addWidget(editVCardButton); + + verticalSpacer_6 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + applyButtonLayout_2->addItem(verticalSpacer_6); + + backButton = new QPushButton(frame); + backButton->setObjectName(QString::fromUtf8("backButton")); + backButton->setMinimumSize(QSize(80, 80)); + backButton->setMaximumSize(QSize(80, 80)); + backButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + applyButtonLayout_2->addWidget(backButton); + + + horizontalLayout->addLayout(applyButtonLayout_2); + + verticalLayout_2 = new QVBoxLayout(); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + formLayout = new QFormLayout(); + formLayout->setObjectName(QString::fromUtf8("formLayout")); + loginLabel = new QLabel(frame); + loginLabel->setObjectName(QString::fromUtf8("loginLabel")); + loginLabel->setStyleSheet(QString::fromUtf8("QLabel {\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + formLayout->setWidget(0, QFormLayout::LabelRole, loginLabel); + + loginLineEdit = new QLineEdit(frame); + loginLineEdit->setObjectName(QString::fromUtf8("loginLineEdit")); + loginLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + formLayout->setWidget(0, QFormLayout::FieldRole, loginLineEdit); + + passwordLabel = new QLabel(frame); + passwordLabel->setObjectName(QString::fromUtf8("passwordLabel")); + passwordLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + formLayout->setWidget(2, QFormLayout::LabelRole, passwordLabel); + + passwordLineEdit = new QLineEdit(frame); + passwordLineEdit->setObjectName(QString::fromUtf8("passwordLineEdit")); + passwordLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + passwordLineEdit->setEchoMode(QLineEdit::Password); + + formLayout->setWidget(2, QFormLayout::FieldRole, passwordLineEdit); + + passwordConfirmLabel = new QLabel(frame); + passwordConfirmLabel->setObjectName(QString::fromUtf8("passwordConfirmLabel")); + passwordConfirmLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + passwordConfirmLabel->setWordWrap(true); + passwordConfirmLabel->setIndent(-1); + + formLayout->setWidget(4, QFormLayout::LabelRole, passwordConfirmLabel); + + passwordConfirmLineEdit = new QLineEdit(frame); + passwordConfirmLineEdit->setObjectName(QString::fromUtf8("passwordConfirmLineEdit")); + passwordConfirmLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + passwordConfirmLineEdit->setEchoMode(QLineEdit::Password); + + formLayout->setWidget(4, QFormLayout::FieldRole, passwordConfirmLineEdit); + + verticalSpacer_5 = new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Maximum); + + formLayout->setItem(1, QFormLayout::LabelRole, verticalSpacer_5); + + verticalSpacer_4 = new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Maximum); + + formLayout->setItem(3, QFormLayout::LabelRole, verticalSpacer_4); + + + verticalLayout_2->addLayout(formLayout); + + verticalSpacer_3 = new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Maximum); + + verticalLayout_2->addItem(verticalSpacer_3); + + horizontalLayout_4 = new QHBoxLayout(); + horizontalLayout_4->setObjectName(QString::fromUtf8("horizontalLayout_4")); + protocolLabel = new QLabel(frame); + protocolLabel->setObjectName(QString::fromUtf8("protocolLabel")); + protocolLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(protocolLabel); + + protocolComboBox = new QComboBox(frame); + protocolComboBox->setObjectName(QString::fromUtf8("protocolComboBox")); + protocolComboBox->setMinimumSize(QSize(79, 52)); + protocolComboBox->setStyleSheet(QString::fromUtf8("QComboBox {\n" +" min-height: 48px;\n" +" font: bold 16px;\n" +"}\n" +"")); + + horizontalLayout_4->addWidget(protocolComboBox); + + serverLabel = new QLabel(frame); + serverLabel->setObjectName(QString::fromUtf8("serverLabel")); + serverLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(serverLabel); + + serverLineEdit = new QLineEdit(frame); + serverLineEdit->setObjectName(QString::fromUtf8("serverLineEdit")); + serverLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(serverLineEdit); + + portLabel = new QLabel(frame); + portLabel->setObjectName(QString::fromUtf8("portLabel")); + portLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" background: none;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(portLabel); + + portLineEdit = new QLineEdit(frame); + portLineEdit->setObjectName(QString::fromUtf8("portLineEdit")); + portLineEdit->setMaximumSize(QSize(80, 16777215)); + portLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" min-width: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_4->addWidget(portLineEdit); + + + verticalLayout_2->addLayout(horizontalLayout_4); + + verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_2->addItem(verticalSpacer_2); + + + horizontalLayout->addLayout(verticalLayout_2); + + applyButtonLayout = new QVBoxLayout(); +#ifndef Q_OS_MAC + applyButtonLayout->setSpacing(-1); +#endif + applyButtonLayout->setObjectName(QString::fromUtf8("applyButtonLayout")); + applyButtonLayout->setSizeConstraint(QLayout::SetMinimumSize); + changePasswordButton = new QPushButton(frame); + changePasswordButton->setObjectName(QString::fromUtf8("changePasswordButton")); + changePasswordButton->setEnabled(false); + changePasswordButton->setMinimumSize(QSize(80, 80)); + changePasswordButton->setMaximumSize(QSize(80, 80)); + changePasswordButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + applyButtonLayout->addWidget(changePasswordButton); + + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + applyButtonLayout->addItem(verticalSpacer); + + okButton = new QPushButton(frame); + okButton->setObjectName(QString::fromUtf8("okButton")); + okButton->setMinimumSize(QSize(80, 80)); + okButton->setMaximumSize(QSize(80, 80)); + okButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + applyButtonLayout->addWidget(okButton); + + + horizontalLayout->addLayout(applyButtonLayout); + + + horizontalLayout_2->addWidget(frame); + + + retranslateUi(TocAccountSettingsWidgetClass); + QObject::connect(loginLineEdit, SIGNAL(textEdited(QString)), TocAccountSettingsWidgetClass, SLOT(loginEdited(QString))); + QObject::connect(protocolComboBox, SIGNAL(currentIndexChanged(QString)), TocAccountSettingsWidgetClass, SLOT(protocolEdited(QString))); + QObject::connect(okButton, SIGNAL(clicked()), TocAccountSettingsWidgetClass, SLOT(onOkButton())); + QObject::connect(changePasswordButton, SIGNAL(clicked()), TocAccountSettingsWidgetClass, SLOT(onChangePasswordButton())); + QObject::connect(serverLineEdit, SIGNAL(textEdited(QString)), TocAccountSettingsWidgetClass, SLOT(disconnectHints())); + QObject::connect(portLineEdit, SIGNAL(textEdited(QString)), TocAccountSettingsWidgetClass, SLOT(disconnectHints())); + + QMetaObject::connectSlotsByName(TocAccountSettingsWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TocAccountSettingsWidgetClass) + { + TocAccountSettingsWidgetClass->setWindowTitle(QApplication::translate("TocAccountSettingsWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + editVCardButton->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Edit\n" +"VCard", 0, QApplication::UnicodeUTF8)); + backButton->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Back", 0, QApplication::UnicodeUTF8)); + loginLabel->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Login", 0, QApplication::UnicodeUTF8)); + passwordLabel->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Password", 0, QApplication::UnicodeUTF8)); + passwordConfirmLabel->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Confirm Password", 0, QApplication::UnicodeUTF8)); + protocolLabel->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Protocol", 0, QApplication::UnicodeUTF8)); + serverLabel->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Server", 0, QApplication::UnicodeUTF8)); + portLabel->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Port", 0, QApplication::UnicodeUTF8)); + changePasswordButton->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Change\n" +"password", 0, QApplication::UnicodeUTF8)); + okButton->setText(QApplication::translate("TocAccountSettingsWidgetClass", "Ok", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TocAccountSettingsWidgetClass: public Ui_TocAccountSettingsWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TOCACCOUNTSETTINGSWIDGET_H diff --git a/build/release/ui_TocChatWidget.h b/build/release/ui_TocChatWidget.h new file mode 100644 index 0000000..d8d5fe4 --- /dev/null +++ b/build/release/ui_TocChatWidget.h @@ -0,0 +1,174 @@ +/******************************************************************************** +** Form generated from reading UI file 'TocChatWidget.ui' +** +** Created: Thu Jul 8 08:48:05 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TOCCHATWIDGET_H +#define UI_TOCCHATWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TocChatWidgetClass +{ +public: + QVBoxLayout *verticalLayout; + QFrame *chatFrame; + QVBoxLayout *verticalLayout_2; + QFrame *frame; + QGridLayout *gridLayout; + QTextEdit *chatTextEdit; + QHBoxLayout *horizontalLayout_2; + QPushButton *smileButton; + QTextEdit *messageTextEdit; + QPushButton *sendButton; + + void setupUi(QWidget *TocChatWidgetClass) + { + if (TocChatWidgetClass->objectName().isEmpty()) + TocChatWidgetClass->setObjectName(QString::fromUtf8("TocChatWidgetClass")); + TocChatWidgetClass->resize(718, 431); + TocChatWidgetClass->setStyleSheet(QString::fromUtf8("")); + verticalLayout = new QVBoxLayout(TocChatWidgetClass); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + chatFrame = new QFrame(TocChatWidgetClass); + chatFrame->setObjectName(QString::fromUtf8("chatFrame")); + chatFrame->setFrameShape(QFrame::StyledPanel); + chatFrame->setFrameShadow(QFrame::Raised); + verticalLayout_2 = new QVBoxLayout(chatFrame); + verticalLayout_2->setSpacing(0); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + frame = new QFrame(chatFrame); + frame->setObjectName(QString::fromUtf8("frame")); + frame->setStyleSheet(QString::fromUtf8("")); + frame->setFrameShape(QFrame::StyledPanel); + frame->setFrameShadow(QFrame::Plain); + gridLayout = new QGridLayout(frame); + gridLayout->setContentsMargins(3, 3, 3, 3); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + gridLayout->setVerticalSpacing(-1); + chatTextEdit = new QTextEdit(frame); + chatTextEdit->setObjectName(QString::fromUtf8("chatTextEdit")); + QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(chatTextEdit->sizePolicy().hasHeightForWidth()); + chatTextEdit->setSizePolicy(sizePolicy); + chatTextEdit->setStyleSheet(QString::fromUtf8("QTextEdit {\n" +" background-color: none;\n" +"}")); + chatTextEdit->setFrameShape(QFrame::Box); + chatTextEdit->setFrameShadow(QFrame::Sunken); + chatTextEdit->setLineWidth(1); + chatTextEdit->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + chatTextEdit->setReadOnly(true); + + gridLayout->addWidget(chatTextEdit, 0, 0, 1, 1); + + + verticalLayout_2->addWidget(frame); + + horizontalLayout_2 = new QHBoxLayout(); + horizontalLayout_2->setSpacing(4); + horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); + horizontalLayout_2->setContentsMargins(0, 0, -1, -1); + smileButton = new QPushButton(chatFrame); + smileButton->setObjectName(QString::fromUtf8("smileButton")); + QFont font; + font.setPointSize(14); + font.setBold(true); + font.setWeight(75); + smileButton->setFont(font); + smileButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + horizontalLayout_2->addWidget(smileButton); + + messageTextEdit = new QTextEdit(chatFrame); + messageTextEdit->setObjectName(QString::fromUtf8("messageTextEdit")); + QSizePolicy sizePolicy1(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); + sizePolicy1.setHorizontalStretch(0); + sizePolicy1.setVerticalStretch(0); + sizePolicy1.setHeightForWidth(messageTextEdit->sizePolicy().hasHeightForWidth()); + messageTextEdit->setSizePolicy(sizePolicy1); + messageTextEdit->setMaximumSize(QSize(16777215, 80)); + messageTextEdit->setStyleSheet(QString::fromUtf8("QTextEdit {\n" +" background-color: none;\n" +"}")); + messageTextEdit->setFrameShape(QFrame::Box); + messageTextEdit->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); + messageTextEdit->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + + horizontalLayout_2->addWidget(messageTextEdit); + + sendButton = new QPushButton(chatFrame); + sendButton->setObjectName(QString::fromUtf8("sendButton")); + QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::MinimumExpanding); + sizePolicy2.setHorizontalStretch(0); + sizePolicy2.setVerticalStretch(0); + sizePolicy2.setHeightForWidth(sendButton->sizePolicy().hasHeightForWidth()); + sendButton->setSizePolicy(sizePolicy2); + sendButton->setMaximumSize(QSize(80, 80)); + sendButton->setFont(font); + sendButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}\n" +"")); + + horizontalLayout_2->addWidget(sendButton); + + + verticalLayout_2->addLayout(horizontalLayout_2); + + + verticalLayout->addWidget(chatFrame); + + + retranslateUi(TocChatWidgetClass); + QObject::connect(sendButton, SIGNAL(clicked()), TocChatWidgetClass, SLOT(pressedSendButton())); + QObject::connect(sendButton, SIGNAL(clicked()), messageTextEdit, SLOT(setFocus())); + + QMetaObject::connectSlotsByName(TocChatWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TocChatWidgetClass) + { + TocChatWidgetClass->setWindowTitle(QApplication::translate("TocChatWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + smileButton->setText(QApplication::translate("TocChatWidgetClass", "Smile", 0, QApplication::UnicodeUTF8)); + sendButton->setText(QApplication::translate("TocChatWidgetClass", "Send", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TocChatWidgetClass: public Ui_TocChatWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TOCCHATWIDGET_H diff --git a/build/release/ui_TocEmoticonsDialog.h b/build/release/ui_TocEmoticonsDialog.h new file mode 100644 index 0000000..024f1d3 --- /dev/null +++ b/build/release/ui_TocEmoticonsDialog.h @@ -0,0 +1,97 @@ +/******************************************************************************** +** Form generated from reading UI file 'TocEmoticonsDialog.ui' +** +** Created: Thu Jul 8 08:48:05 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TOCEMOTICONSDIALOG_H +#define UI_TOCEMOTICONSDIALOG_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TocEmoticonsDialogClass +{ +public: + QGridLayout *gridLayout; + QListWidget *emoticonsListWidget; + QSpacerItem *horizontalSpacer; + QPushButton *backButton; + QSpacerItem *horizontalSpacer_2; + + void setupUi(QDialog *TocEmoticonsDialogClass) + { + if (TocEmoticonsDialogClass->objectName().isEmpty()) + TocEmoticonsDialogClass->setObjectName(QString::fromUtf8("TocEmoticonsDialogClass")); + TocEmoticonsDialogClass->resize(418, 310); + gridLayout = new QGridLayout(TocEmoticonsDialogClass); + gridLayout->setSpacing(0); + gridLayout->setContentsMargins(11, 11, 11, 11); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + gridLayout->setContentsMargins(0, 9, 9, 0); + emoticonsListWidget = new QListWidget(TocEmoticonsDialogClass); + emoticonsListWidget->setObjectName(QString::fromUtf8("emoticonsListWidget")); + emoticonsListWidget->setProperty("showDropIndicator", QVariant(false)); + emoticonsListWidget->setSpacing(10); + emoticonsListWidget->setViewMode(QListView::ListMode); + + gridLayout->addWidget(emoticonsListWidget, 0, 0, 1, 3); + + horizontalSpacer = new QSpacerItem(142, 77, QSizePolicy::Expanding, QSizePolicy::Minimum); + + gridLayout->addItem(horizontalSpacer, 1, 0, 1, 1); + + backButton = new QPushButton(TocEmoticonsDialogClass); + backButton->setObjectName(QString::fromUtf8("backButton")); + backButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 40px;\n" +" min-width: 80px;\n" +" max-height: 40px;\n" +" max-width: 80px;\n" +"}")); + + gridLayout->addWidget(backButton, 1, 1, 1, 1); + + horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + gridLayout->addItem(horizontalSpacer_2, 1, 2, 1, 1); + + + retranslateUi(TocEmoticonsDialogClass); + + emoticonsListWidget->setCurrentRow(-1); + + + QMetaObject::connectSlotsByName(TocEmoticonsDialogClass); + } // setupUi + + void retranslateUi(QDialog *TocEmoticonsDialogClass) + { + TocEmoticonsDialogClass->setWindowTitle(QApplication::translate("TocEmoticonsDialogClass", "Emoticons", 0, QApplication::UnicodeUTF8)); + backButton->setText(QApplication::translate("TocEmoticonsDialogClass", "Back", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TocEmoticonsDialogClass: public Ui_TocEmoticonsDialogClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TOCEMOTICONSDIALOG_H diff --git a/build/release/ui_TocGeneralSettingsWidget.h b/build/release/ui_TocGeneralSettingsWidget.h new file mode 100644 index 0000000..87d714a --- /dev/null +++ b/build/release/ui_TocGeneralSettingsWidget.h @@ -0,0 +1,322 @@ +/******************************************************************************** +** Form generated from reading UI file 'TocGeneralSettingsWidget.ui' +** +** Created: Thu Jul 8 08:48:05 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TOCGENERALSETTINGSWIDGET_H +#define UI_TOCGENERALSETTINGSWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TocGeneralSettingsWidgetClass +{ +public: + QVBoxLayout *verticalLayout; + QFrame *generalSettingsFrame; + QHBoxLayout *horizontalLayout; + QVBoxLayout *verticalLayout_2; + QSpacerItem *verticalSpacer; + QPushButton *backButton; + QGroupBox *sortingGroupBox; + QGridLayout *gridLayout_4; + QSpacerItem *verticalSpacer_3; + QSpacerItem *verticalSpacer_2; + QSpacerItem *verticalSpacer_4; + QSpacerItem *verticalSpacer_5; + QRadioButton *alphaRadioButton; + QRadioButton *dragDropRadioButton; + QRadioButton *presenceRadioButton; + QLabel *alphaLabel; + QLabel *presence; + QLabel *dragDropLabel; + QGroupBox *authorizationGroupBox; + QGridLayout *gridLayout_5; + QRadioButton *askRadioButton; + QRadioButton *denyRadioButton; + QRadioButton *acceptRadioButton; + QSpacerItem *verticalSpacer_7; + QSpacerItem *verticalSpacer_8; + QSpacerItem *verticalSpacer_6; + QSpacerItem *verticalSpacer_9; + QVBoxLayout *verticalLayout_3; + QSpacerItem *verticalSpacer_1; + QPushButton *okButton; + + void setupUi(QWidget *TocGeneralSettingsWidgetClass) + { + if (TocGeneralSettingsWidgetClass->objectName().isEmpty()) + TocGeneralSettingsWidgetClass->setObjectName(QString::fromUtf8("TocGeneralSettingsWidgetClass")); + TocGeneralSettingsWidgetClass->resize(773, 441); + TocGeneralSettingsWidgetClass->setProperty("sizeHint", QVariant(QSize(705, 568))); + verticalLayout = new QVBoxLayout(TocGeneralSettingsWidgetClass); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + generalSettingsFrame = new QFrame(TocGeneralSettingsWidgetClass); + generalSettingsFrame->setObjectName(QString::fromUtf8("generalSettingsFrame")); + generalSettingsFrame->setFrameShape(QFrame::StyledPanel); + generalSettingsFrame->setFrameShadow(QFrame::Raised); + horizontalLayout = new QHBoxLayout(generalSettingsFrame); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + verticalLayout_2 = new QVBoxLayout(); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_2->addItem(verticalSpacer); + + backButton = new QPushButton(generalSettingsFrame); + backButton->setObjectName(QString::fromUtf8("backButton")); + backButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_2->addWidget(backButton); + + + horizontalLayout->addLayout(verticalLayout_2); + + sortingGroupBox = new QGroupBox(generalSettingsFrame); + sortingGroupBox->setObjectName(QString::fromUtf8("sortingGroupBox")); + sortingGroupBox->setEnabled(false); + QSizePolicy sizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(sortingGroupBox->sizePolicy().hasHeightForWidth()); + sortingGroupBox->setSizePolicy(sizePolicy); + sortingGroupBox->setStyleSheet(QString::fromUtf8("QGroupBox {\n" +" font: bold 12px;\n" +"}")); + gridLayout_4 = new QGridLayout(sortingGroupBox); + gridLayout_4->setObjectName(QString::fromUtf8("gridLayout_4")); + verticalSpacer_3 = new QSpacerItem(20, 75, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_4->addItem(verticalSpacer_3, 4, 0, 1, 1); + + verticalSpacer_2 = new QSpacerItem(20, 85, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_4->addItem(verticalSpacer_2, 1, 0, 1, 1); + + verticalSpacer_4 = new QSpacerItem(20, 75, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_4->addItem(verticalSpacer_4, 7, 0, 1, 1); + + verticalSpacer_5 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_4->addItem(verticalSpacer_5, 11, 0, 1, 1); + + alphaRadioButton = new QRadioButton(sortingGroupBox); + alphaRadioButton->setObjectName(QString::fromUtf8("alphaRadioButton")); + QSizePolicy sizePolicy1(QSizePolicy::Minimum, QSizePolicy::Fixed); + sizePolicy1.setHorizontalStretch(0); + sizePolicy1.setVerticalStretch(0); + sizePolicy1.setHeightForWidth(alphaRadioButton->sizePolicy().hasHeightForWidth()); + alphaRadioButton->setSizePolicy(sizePolicy1); + alphaRadioButton->setMinimumSize(QSize(0, 25)); + alphaRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" background-color: none;\n" +" min-height: 25px;\n" +"}")); + alphaRadioButton->setChecked(true); + + gridLayout_4->addWidget(alphaRadioButton, 2, 0, 1, 1); + + dragDropRadioButton = new QRadioButton(sortingGroupBox); + dragDropRadioButton->setObjectName(QString::fromUtf8("dragDropRadioButton")); + dragDropRadioButton->setMinimumSize(QSize(0, 25)); + dragDropRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" background-color: none;\n" +" min-height: 25px;\n" +"}")); + + gridLayout_4->addWidget(dragDropRadioButton, 9, 0, 1, 1); + + presenceRadioButton = new QRadioButton(sortingGroupBox); + presenceRadioButton->setObjectName(QString::fromUtf8("presenceRadioButton")); + presenceRadioButton->setEnabled(false); + presenceRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" background-color: none;\n" +" min-height: 25px;\n" +"}")); + + gridLayout_4->addWidget(presenceRadioButton, 5, 0, 1, 1); + + alphaLabel = new QLabel(sortingGroupBox); + alphaLabel->setObjectName(QString::fromUtf8("alphaLabel")); + QFont font; + font.setBold(false); + font.setItalic(false); + font.setWeight(50); + alphaLabel->setFont(font); + alphaLabel->setStyleSheet(QString::fromUtf8("QLabel {\n" +" background: none;\n" +" font: 14px;\n" +"}")); + + gridLayout_4->addWidget(alphaLabel, 3, 0, 1, 1); + + presence = new QLabel(sortingGroupBox); + presence->setObjectName(QString::fromUtf8("presence")); + presence->setFont(font); + presence->setStyleSheet(QString::fromUtf8("QLabel {\n" +" background: none;\n" +" font: 14px;\n" +"}")); + + gridLayout_4->addWidget(presence, 6, 0, 1, 1); + + dragDropLabel = new QLabel(sortingGroupBox); + dragDropLabel->setObjectName(QString::fromUtf8("dragDropLabel")); + dragDropLabel->setStyleSheet(QString::fromUtf8("QLabel {\n" +" background: none;\n" +" font: 14px;\n" +"}")); + + gridLayout_4->addWidget(dragDropLabel, 10, 0, 1, 1); + + + horizontalLayout->addWidget(sortingGroupBox); + + authorizationGroupBox = new QGroupBox(generalSettingsFrame); + authorizationGroupBox->setObjectName(QString::fromUtf8("authorizationGroupBox")); + authorizationGroupBox->setEnabled(false); + sizePolicy.setHeightForWidth(authorizationGroupBox->sizePolicy().hasHeightForWidth()); + authorizationGroupBox->setSizePolicy(sizePolicy); + authorizationGroupBox->setStyleSheet(QString::fromUtf8("QGroupBox {\n" +" font: bold 12px;\n" +"}")); + authorizationGroupBox->setAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter); + gridLayout_5 = new QGridLayout(authorizationGroupBox); + gridLayout_5->setObjectName(QString::fromUtf8("gridLayout_5")); + askRadioButton = new QRadioButton(authorizationGroupBox); + askRadioButton->setObjectName(QString::fromUtf8("askRadioButton")); + askRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +"\n" +" min-height: 48px;\n" +"}")); + askRadioButton->setChecked(true); + + gridLayout_5->addWidget(askRadioButton, 2, 0, 1, 1); + + denyRadioButton = new QRadioButton(authorizationGroupBox); + denyRadioButton->setObjectName(QString::fromUtf8("denyRadioButton")); + denyRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" min-height: 48px;\n" +"}")); + + gridLayout_5->addWidget(denyRadioButton, 6, 0, 1, 1); + + acceptRadioButton = new QRadioButton(authorizationGroupBox); + acceptRadioButton->setObjectName(QString::fromUtf8("acceptRadioButton")); + acceptRadioButton->setStyleSheet(QString::fromUtf8("QRadioButton {\n" +" font: bold 16px;\n" +" min-height: 48px;\n" +"}")); + + gridLayout_5->addWidget(acceptRadioButton, 4, 0, 1, 1); + + verticalSpacer_7 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_5->addItem(verticalSpacer_7, 3, 0, 1, 1); + + verticalSpacer_8 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_5->addItem(verticalSpacer_8, 5, 0, 1, 1); + + verticalSpacer_6 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_5->addItem(verticalSpacer_6, 1, 0, 1, 1); + + verticalSpacer_9 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout_5->addItem(verticalSpacer_9, 7, 0, 1, 1); + + + horizontalLayout->addWidget(authorizationGroupBox); + + verticalLayout_3 = new QVBoxLayout(); + verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3")); + verticalSpacer_1 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_3->addItem(verticalSpacer_1); + + okButton = new QPushButton(generalSettingsFrame); + okButton->setObjectName(QString::fromUtf8("okButton")); + okButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_3->addWidget(okButton); + + + horizontalLayout->addLayout(verticalLayout_3); + + + verticalLayout->addWidget(generalSettingsFrame); + + + retranslateUi(TocGeneralSettingsWidgetClass); + + QMetaObject::connectSlotsByName(TocGeneralSettingsWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TocGeneralSettingsWidgetClass) + { + TocGeneralSettingsWidgetClass->setWindowTitle(QApplication::translate("TocGeneralSettingsWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + backButton->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Back", 0, QApplication::UnicodeUTF8)); + sortingGroupBox->setTitle(QApplication::translate("TocGeneralSettingsWidgetClass", "Contact list sorting", 0, QApplication::UnicodeUTF8)); + alphaRadioButton->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Sort alphabeticaly", 0, QApplication::UnicodeUTF8)); + dragDropRadioButton->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Disable sorting", 0, QApplication::UnicodeUTF8)); + presenceRadioButton->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Sort by status", 0, QApplication::UnicodeUTF8)); + alphaLabel->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Sorts contact list items alphabetically", 0, QApplication::UnicodeUTF8)); + presence->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Sorts contact list items by status", 0, QApplication::UnicodeUTF8)); + dragDropLabel->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Disables sorting and enables drag\n" +"and dropping", 0, QApplication::UnicodeUTF8)); + authorizationGroupBox->setTitle(QApplication::translate("TocGeneralSettingsWidgetClass", "Contact authorization rule", 0, QApplication::UnicodeUTF8)); + askRadioButton->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Ask", 0, QApplication::UnicodeUTF8)); + denyRadioButton->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Always deny", 0, QApplication::UnicodeUTF8)); + acceptRadioButton->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Always accept", 0, QApplication::UnicodeUTF8)); + okButton->setText(QApplication::translate("TocGeneralSettingsWidgetClass", "Ok", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TocGeneralSettingsWidgetClass: public Ui_TocGeneralSettingsWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TOCGENERALSETTINGSWIDGET_H diff --git a/build/release/ui_TocThemesSettingsWidget.h b/build/release/ui_TocThemesSettingsWidget.h new file mode 100644 index 0000000..4fcb4e4 --- /dev/null +++ b/build/release/ui_TocThemesSettingsWidget.h @@ -0,0 +1,192 @@ +/******************************************************************************** +** Form generated from reading UI file 'TocThemesSettingsWidget.ui' +** +** Created: Thu Jul 8 08:48:05 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TOCTHEMESSETTINGSWIDGET_H +#define UI_TOCTHEMESSETTINGSWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TocThemesSettingsWidgetClass +{ +public: + QGridLayout *gridLayout_2; + QFrame *frame; + QGridLayout *gridLayout; + QVBoxLayout *verticalLayout_3; + QSpacerItem *verticalSpacer_2; + QPushButton *backThemeButton; + QVBoxLayout *verticalLayout; + QListWidget *themesListWidget; + QVBoxLayout *verticalLayout_2; + QPushButton *addThemeButton; + QSpacerItem *verticalSpacer; + QPushButton *applyThemeButton; + + void setupUi(QWidget *TocThemesSettingsWidgetClass) + { + if (TocThemesSettingsWidgetClass->objectName().isEmpty()) + TocThemesSettingsWidgetClass->setObjectName(QString::fromUtf8("TocThemesSettingsWidgetClass")); + TocThemesSettingsWidgetClass->resize(593, 405); + TocThemesSettingsWidgetClass->setStyleSheet(QString::fromUtf8("")); + gridLayout_2 = new QGridLayout(TocThemesSettingsWidgetClass); + gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2")); + frame = new QFrame(TocThemesSettingsWidgetClass); + frame->setObjectName(QString::fromUtf8("frame")); + frame->setEnabled(true); + QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(frame->sizePolicy().hasHeightForWidth()); + frame->setSizePolicy(sizePolicy); + frame->setStyleSheet(QString::fromUtf8("")); + frame->setFrameShape(QFrame::Box); + frame->setFrameShadow(QFrame::Sunken); + frame->setLineWidth(1); + gridLayout = new QGridLayout(frame); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + verticalLayout_3 = new QVBoxLayout(); + verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3")); + verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_3->addItem(verticalSpacer_2); + + backThemeButton = new QPushButton(frame); + backThemeButton->setObjectName(QString::fromUtf8("backThemeButton")); + backThemeButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_3->addWidget(backThemeButton); + + + gridLayout->addLayout(verticalLayout_3, 0, 0, 1, 1); + + verticalLayout = new QVBoxLayout(); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + themesListWidget = new QListWidget(frame); + themesListWidget->setObjectName(QString::fromUtf8("themesListWidget")); + QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Expanding); + sizePolicy1.setHorizontalStretch(0); + sizePolicy1.setVerticalStretch(0); + sizePolicy1.setHeightForWidth(themesListWidget->sizePolicy().hasHeightForWidth()); + themesListWidget->setSizePolicy(sizePolicy1); + themesListWidget->setAutoFillBackground(true); + themesListWidget->setStyleSheet(QString::fromUtf8("QListView {\n" +" font: bold 30px;\n" +"}\n" +"\n" +"")); + themesListWidget->setLineWidth(1); + themesListWidget->setMidLineWidth(1); + themesListWidget->setProperty("showDropIndicator", QVariant(false)); + themesListWidget->setAlternatingRowColors(false); + themesListWidget->setSelectionMode(QAbstractItemView::SingleSelection); + themesListWidget->setSelectionBehavior(QAbstractItemView::SelectItems); + themesListWidget->setIconSize(QSize(0, 0)); + themesListWidget->setTextElideMode(Qt::ElideMiddle); + themesListWidget->setHorizontalScrollMode(QAbstractItemView::ScrollPerItem); + themesListWidget->setMovement(QListView::Static); + themesListWidget->setFlow(QListView::TopToBottom); + themesListWidget->setProperty("isWrapping", QVariant(false)); + themesListWidget->setResizeMode(QListView::Adjust); + themesListWidget->setSpacing(5); + themesListWidget->setViewMode(QListView::ListMode); + themesListWidget->setModelColumn(0); + themesListWidget->setWordWrap(true); + themesListWidget->setSelectionRectVisible(true); + themesListWidget->setSortingEnabled(false); + + verticalLayout->addWidget(themesListWidget); + + + gridLayout->addLayout(verticalLayout, 0, 1, 1, 1); + + verticalLayout_2 = new QVBoxLayout(); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + addThemeButton = new QPushButton(frame); + addThemeButton->setObjectName(QString::fromUtf8("addThemeButton")); + addThemeButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_2->addWidget(addThemeButton); + + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_2->addItem(verticalSpacer); + + applyThemeButton = new QPushButton(frame); + applyThemeButton->setObjectName(QString::fromUtf8("applyThemeButton")); + applyThemeButton->setAutoFillBackground(false); + applyThemeButton->setStyleSheet(QString::fromUtf8("QPushButton {\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_2->addWidget(applyThemeButton); + + + gridLayout->addLayout(verticalLayout_2, 0, 2, 1, 1); + + + gridLayout_2->addWidget(frame, 0, 0, 1, 1); + + + retranslateUi(TocThemesSettingsWidgetClass); + + themesListWidget->setCurrentRow(-1); + + + QMetaObject::connectSlotsByName(TocThemesSettingsWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TocThemesSettingsWidgetClass) + { + TocThemesSettingsWidgetClass->setWindowTitle(QApplication::translate("TocThemesSettingsWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + backThemeButton->setText(QApplication::translate("TocThemesSettingsWidgetClass", "Back", 0, QApplication::UnicodeUTF8)); + addThemeButton->setText(QApplication::translate("TocThemesSettingsWidgetClass", "Add theme", 0, QApplication::UnicodeUTF8)); + applyThemeButton->setText(QApplication::translate("TocThemesSettingsWidgetClass", "Apply", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TocThemesSettingsWidgetClass: public Ui_TocThemesSettingsWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TOCTHEMESSETTINGSWIDGET_H diff --git a/build/release/ui_TocUserInfoWidget.h b/build/release/ui_TocUserInfoWidget.h new file mode 100644 index 0000000..7890788 --- /dev/null +++ b/build/release/ui_TocUserInfoWidget.h @@ -0,0 +1,329 @@ +/******************************************************************************** +** Form generated from reading UI file 'TocUserInfoWidget.ui' +** +** Created: Thu Jul 8 08:48:05 2010 +** by: Qt User Interface Compiler version 4.6.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef UI_TOCUSERINFOWIDGET_H +#define UI_TOCUSERINFOWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_TocUserInfoWidgetClass +{ +public: + QVBoxLayout *verticalLayout_5; + QFrame *userInfoFrame; + QHBoxLayout *horizontalLayout; + QVBoxLayout *verticalLayout; + QPushButton *pictureButton; + QSpacerItem *verticalSpacer; + QPushButton *cancelButton; + QVBoxLayout *verticalLayout_3; + QHBoxLayout *horizontalLayout_2; + QLabel *uidLabel; + QLineEdit *uidLineEdit; + QSpacerItem *horizontalSpacer_4; + QHBoxLayout *horizontalLayout_4; + QLabel *nameLabel; + QLineEdit *nameLineEdit; + QSpacerItem *horizontalSpacer_3; + QPushButton *resolveButton; + QHBoxLayout *horizontalLayout_5; + QLabel *genderLabel; + QComboBox *genderComboBox; + QSpacerItem *horizontalSpacer_6; + QSpacerItem *verticalSpacer_3; + QVBoxLayout *verticalLayout_2; + QSpacerItem *verticalSpacer_2; + QPushButton *okButton; + + void setupUi(QWidget *TocUserInfoWidgetClass) + { + if (TocUserInfoWidgetClass->objectName().isEmpty()) + TocUserInfoWidgetClass->setObjectName(QString::fromUtf8("TocUserInfoWidgetClass")); + TocUserInfoWidgetClass->setWindowModality(Qt::NonModal); + TocUserInfoWidgetClass->resize(544, 256); + TocUserInfoWidgetClass->setFocusPolicy(Qt::ClickFocus); + TocUserInfoWidgetClass->setStyleSheet(QString::fromUtf8("")); + verticalLayout_5 = new QVBoxLayout(TocUserInfoWidgetClass); + verticalLayout_5->setObjectName(QString::fromUtf8("verticalLayout_5")); + userInfoFrame = new QFrame(TocUserInfoWidgetClass); + userInfoFrame->setObjectName(QString::fromUtf8("userInfoFrame")); + QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(userInfoFrame->sizePolicy().hasHeightForWidth()); + userInfoFrame->setSizePolicy(sizePolicy); + userInfoFrame->setStyleSheet(QString::fromUtf8("QFrame{\n" +"border:none;\n" +"}")); + userInfoFrame->setFrameShape(QFrame::StyledPanel); + horizontalLayout = new QHBoxLayout(userInfoFrame); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + verticalLayout = new QVBoxLayout(); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + pictureButton = new QPushButton(userInfoFrame); + pictureButton->setObjectName(QString::fromUtf8("pictureButton")); + QSizePolicy sizePolicy1(QSizePolicy::Minimum, QSizePolicy::Fixed); + sizePolicy1.setHorizontalStretch(0); + sizePolicy1.setVerticalStretch(0); + sizePolicy1.setHeightForWidth(pictureButton->sizePolicy().hasHeightForWidth()); + pictureButton->setSizePolicy(sizePolicy1); + pictureButton->setMinimumSize(QSize(80, 80)); + pictureButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + pictureButton->setIconSize(QSize(68, 68)); + pictureButton->setFlat(false); + + verticalLayout->addWidget(pictureButton); + + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout->addItem(verticalSpacer); + + cancelButton = new QPushButton(userInfoFrame); + cancelButton->setObjectName(QString::fromUtf8("cancelButton")); + cancelButton->setMinimumSize(QSize(80, 80)); + cancelButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout->addWidget(cancelButton); + + + horizontalLayout->addLayout(verticalLayout); + + verticalLayout_3 = new QVBoxLayout(); + verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3")); + horizontalLayout_2 = new QHBoxLayout(); + horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); + uidLabel = new QLabel(userInfoFrame); + uidLabel->setObjectName(QString::fromUtf8("uidLabel")); + uidLabel->setMinimumSize(QSize(30, 0)); + uidLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" border-radius: none;\n" +" background: none;\n" +" font: bold 12px;\n" +"}")); + uidLabel->setFrameShape(QFrame::StyledPanel); + uidLabel->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); + + horizontalLayout_2->addWidget(uidLabel); + + uidLineEdit = new QLineEdit(userInfoFrame); + uidLineEdit->setObjectName(QString::fromUtf8("uidLineEdit")); + QSizePolicy sizePolicy2(QSizePolicy::Expanding, QSizePolicy::Maximum); + sizePolicy2.setHorizontalStretch(48); + sizePolicy2.setVerticalStretch(48); + sizePolicy2.setHeightForWidth(uidLineEdit->sizePolicy().hasHeightForWidth()); + uidLineEdit->setSizePolicy(sizePolicy2); + uidLineEdit->setMinimumSize(QSize(0, 48)); + QFont font; + font.setBold(true); + font.setItalic(false); + font.setWeight(75); + uidLineEdit->setFont(font); + uidLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + + horizontalLayout_2->addWidget(uidLineEdit); + + horizontalSpacer_4 = new QSpacerItem(20, 20, QSizePolicy::Maximum, QSizePolicy::Minimum); + + horizontalLayout_2->addItem(horizontalSpacer_4); + + + verticalLayout_3->addLayout(horizontalLayout_2); + + horizontalLayout_4 = new QHBoxLayout(); + horizontalLayout_4->setObjectName(QString::fromUtf8("horizontalLayout_4")); + nameLabel = new QLabel(userInfoFrame); + nameLabel->setObjectName(QString::fromUtf8("nameLabel")); + nameLabel->setMinimumSize(QSize(30, 0)); + nameLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" border-radius: none;\n" +" background: none;\n" +" font: bold 12px;\n" +"}")); + nameLabel->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); + + horizontalLayout_4->addWidget(nameLabel); + + nameLineEdit = new QLineEdit(userInfoFrame); + nameLineEdit->setObjectName(QString::fromUtf8("nameLineEdit")); + QSizePolicy sizePolicy3(QSizePolicy::Expanding, QSizePolicy::Fixed); + sizePolicy3.setHorizontalStretch(0); + sizePolicy3.setVerticalStretch(48); + sizePolicy3.setHeightForWidth(nameLineEdit->sizePolicy().hasHeightForWidth()); + nameLineEdit->setSizePolicy(sizePolicy3); + nameLineEdit->setMinimumSize(QSize(0, 48)); + nameLineEdit->setFont(font); + nameLineEdit->setLayoutDirection(Qt::LeftToRight); + nameLineEdit->setStyleSheet(QString::fromUtf8("QLineEdit{\n" +" border-radius: 5px;\n" +" min-height: 48px;\n" +" font: bold 14px;\n" +"}")); + nameLineEdit->setReadOnly(false); + + horizontalLayout_4->addWidget(nameLineEdit); + + horizontalSpacer_3 = new QSpacerItem(20, 20, QSizePolicy::Maximum, QSizePolicy::Minimum); + + horizontalLayout_4->addItem(horizontalSpacer_3); + + resolveButton = new QPushButton(userInfoFrame); + resolveButton->setObjectName(QString::fromUtf8("resolveButton")); + resolveButton->setMinimumSize(QSize(80, 40)); + resolveButton->setMaximumSize(QSize(80, 40)); + resolveButton->setFont(font); + resolveButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 40px;\n" +" min-width: 80px;\n" +" max-height: 40px;\n" +" max-width: 80px;\n" +"}")); + + horizontalLayout_4->addWidget(resolveButton); + + + verticalLayout_3->addLayout(horizontalLayout_4); + + horizontalLayout_5 = new QHBoxLayout(); + horizontalLayout_5->setObjectName(QString::fromUtf8("horizontalLayout_5")); + genderLabel = new QLabel(userInfoFrame); + genderLabel->setObjectName(QString::fromUtf8("genderLabel")); + genderLabel->setMinimumSize(QSize(30, 0)); + genderLabel->setStyleSheet(QString::fromUtf8("QLabel{\n" +" border-radius: none;\n" +" background: none;\n" +" font: bold 12px;\n" +"}")); + genderLabel->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); + + horizontalLayout_5->addWidget(genderLabel); + + genderComboBox = new QComboBox(userInfoFrame); + genderComboBox->setObjectName(QString::fromUtf8("genderComboBox")); + QSizePolicy sizePolicy4(QSizePolicy::Preferred, QSizePolicy::Fixed); + sizePolicy4.setHorizontalStretch(0); + sizePolicy4.setVerticalStretch(48); + sizePolicy4.setHeightForWidth(genderComboBox->sizePolicy().hasHeightForWidth()); + genderComboBox->setSizePolicy(sizePolicy4); + genderComboBox->setMinimumSize(QSize(110, 52)); + genderComboBox->setFont(font); + genderComboBox->setAutoFillBackground(false); + genderComboBox->setStyleSheet(QString::fromUtf8("QComboBox {\n" +" min-height: 48px;\n" +" font: bold 16px;\n" +"}\n" +"")); + + horizontalLayout_5->addWidget(genderComboBox); + + horizontalSpacer_6 = new QSpacerItem(20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + horizontalLayout_5->addItem(horizontalSpacer_6); + + + verticalLayout_3->addLayout(horizontalLayout_5); + + verticalSpacer_3 = new QSpacerItem(327, 35, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_3->addItem(verticalSpacer_3); + + + horizontalLayout->addLayout(verticalLayout_3); + + verticalLayout_2 = new QVBoxLayout(); + verticalLayout_2->setObjectName(QString::fromUtf8("verticalLayout_2")); + verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + verticalLayout_2->addItem(verticalSpacer_2); + + okButton = new QPushButton(userInfoFrame); + okButton->setObjectName(QString::fromUtf8("okButton")); + okButton->setMinimumSize(QSize(80, 80)); + okButton->setStyleSheet(QString::fromUtf8("QPushButton{\n" +" font: bold 16px;\n" +" border-radius: 5px;\n" +" min-height: 80px;\n" +" min-width: 80px;\n" +" max-height: 80px;\n" +" max-width: 80px;\n" +"}")); + + verticalLayout_2->addWidget(okButton); + + + horizontalLayout->addLayout(verticalLayout_2); + + + verticalLayout_5->addWidget(userInfoFrame); + + + retranslateUi(TocUserInfoWidgetClass); + + genderComboBox->setCurrentIndex(-1); + + + QMetaObject::connectSlotsByName(TocUserInfoWidgetClass); + } // setupUi + + void retranslateUi(QWidget *TocUserInfoWidgetClass) + { + TocUserInfoWidgetClass->setWindowTitle(QApplication::translate("TocUserInfoWidgetClass", "Form", 0, QApplication::UnicodeUTF8)); + pictureButton->setText(QString()); + cancelButton->setText(QApplication::translate("TocUserInfoWidgetClass", "Cancel", 0, QApplication::UnicodeUTF8)); + uidLabel->setText(QApplication::translate("TocUserInfoWidgetClass", "User id:", 0, QApplication::UnicodeUTF8)); + uidLineEdit->setText(QString()); + nameLabel->setText(QApplication::translate("TocUserInfoWidgetClass", "Name:", 0, QApplication::UnicodeUTF8)); + nameLineEdit->setText(QString()); + resolveButton->setText(QApplication::translate("TocUserInfoWidgetClass", "Resolve", 0, QApplication::UnicodeUTF8)); + genderLabel->setText(QApplication::translate("TocUserInfoWidgetClass", "Gender:", 0, QApplication::UnicodeUTF8)); + okButton->setText(QApplication::translate("TocUserInfoWidgetClass", "OK", 0, QApplication::UnicodeUTF8)); + } // retranslateUi + +}; + +namespace Ui { + class TocUserInfoWidgetClass: public Ui_TocUserInfoWidgetClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // UI_TOCUSERINFOWIDGET_H diff --git a/config b/config new file mode 100644 index 0000000..07d359d --- /dev/null +++ b/config @@ -0,0 +1,4 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = true diff --git a/configure b/configure new file mode 100644 index 0000000..1bb6e85 --- /dev/null +++ b/configure @@ -0,0 +1,18 @@ +#!/bin/bash + +revision=`LC_ALL=C svn info | awk '/^Revision: / {printf "%d\n", $2}'` + +target=tietoopcom + +sed -e "s/@REVISION@/${revision}/g" \ + < "include/version.in" > "include/version.h" + +sed -e "s/@TARGET@/${target}/g" \ + < "include/version.in" > "include/version.h" + +qmake +cd src +qmake +cd .. + +echo Completed at revision ${revision} diff --git a/configure-stamp b/configure-stamp new file mode 100644 index 0000000..e69de29 diff --git a/data/com.tieto.tietoopcom.service b/data/com.tieto.tietoopcom.service new file mode 100644 index 0000000..fa159b5 --- /dev/null +++ b/data/com.tieto.tietoopcom.service @@ -0,0 +1,4 @@ +# Service description file +[D-BUS Service] +Name=com.tieto.tietoopcom +Exec=/usr/bin/tietoopcom diff --git a/data/copyright b/data/copyright new file mode 100644 index 0000000..9f70f45 --- /dev/null +++ b/data/copyright @@ -0,0 +1,30 @@ +This package was debianized by Konrad Ciekot on +Wed, 22 Oct 2008 10:57:00 +0100. + + +Tieto Open Communicator +Copyright (c) 2010, Tieto Corporation +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + Neither the name of the Tieto Corporation nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + diff --git a/data/emoticons/face-angel24x24.png b/data/emoticons/face-angel24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..116319505b47ccb1dfc8e6a803df89e80bfaee29 GIT binary patch literal 1885 zcmV-j2cr0iP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4J8TH*uGi-001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000J@Nkl%>-y;Dq&RoXiqfPj^}14FUkGU=R{R$LASBkh2zx}^ zVlFNg3cK8L^3`->z?q*9#mQITO8)?Gr2TXi$+v=8`z2@6k22dq_XH$O@|_v5AI%nE zEkau1L_$cfFRe;ksXEX|5Lz5BZ(sgK(7v<@EFS7!j0KzHoRLv;4%=;oEkZ*4D% zMF($Q<3@W}eH&}#zI((z$XILvIyMx&4AUAwZx550JhcleI*K;oPy2ut$kwf$z?SRX zuzqgnM)x6zQNulC)&v>8Vg<5+JTtuk^``r{9;?K|H#Mhv=fz2vd-N(rdk#+h0zVkRny&-qK zo7~(DdHaKcS1;}&!dYZA%~l)!etCx*tLu2|5jLlVSD!qo7@hMNc*@Coj|yF@`%@>R z3hvO`evhlyxA3D8ne|!7G;h554sX2qF2{~kS-G*z_4n49n+$O!EH7_z{rx-KKflY- z@q%FDlf)U*PChy(bnyqJ(!r-hJP4#e=HbS8%H_m8hq<=W;ny#|&fRv8nZx5e@s&q7 zbz+W6RHEA*@{<={#%jajOpS-`onUF&U<`<`fh}&$%6Rw*p$lJ8WJ@;B93g!L3Rek^ zFE%MfhnSvf(C&?xpKEgZ)I8;|#O!o~Pd|8)N*G{@g2UqhCuc)yP6ulY(hb4lp^L-l z+))@CV2s2fFa{+JQ_V6{^K~xxWl%0y3x&q!1yRZ8?CC|$o?ZlJu{uWV z=XnIeD(m_0;Rg{qt|fWL*}c2Yhwok`HB*dL?_puSLG4h4>nVy{Bdo?2Iq_h?2P+$_ zuC?%#%klZc+;e0Rofa6QW2@XvD=3ul!b{fmnnic(Ol~_tC+Tx_`7Jto4XWi4t({4l zfGpQY_T9(Bgp2R2aqUKzso7&x7w+X){TNB>7DY0+ZG8W_)lR0gQ@*IvY@zr5 z#V5m=GV@Dkcr<{m+dV$GvBoc7e4DKn6ehs+6v`2l0+;c6jme2g9(d>s4?pxEN9QNd z@m&ThZ;`dP*Mt{dwALo7aH{{%$)Gh%`q$kL zaoh;kFH?<5Ow}!>& z@%#Lsk1cJ0KP2!^fjr9aOjz9|1rbDs44EZX;DufQOIDkM12klK$I8E}=kio_( zgWGHC1|0%rBSj^*rmkUXJt>!VPiU2(XxJNU?X9 zY^2FjL7JxRw7dJ-@b<<_sZ)97!n40`9{?^t{}lIs_qPX-fBp39i=G`lRW6mkSQ=}d z3Fl5ZPSo^-7r9PYl|l+k(l4?*t9f>3El=CqcZdDGevdHOUdXDGf7FFNJ6wDByhw%*kR~UEF^7;M!%^GT^RDBT{vs;VuiH4?EIMnu{2%=X X16D6R>|1cQ00000NkvXXu0mjfPh@^f literal 0 HcmV?d00001 diff --git a/data/emoticons/face-angel32x32.png b/data/emoticons/face-angel32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..8604e093c336398ab6c980ba31c6ff528b65b4bd GIT binary patch literal 2813 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 literal 0 HcmV?d00001 diff --git a/data/emoticons/face-crying32x32.png b/data/emoticons/face-crying32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..6599fe7f3a6ebba7b6228008606480478f8847cf GIT binary patch literal 2751 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 literal 0 HcmV?d00001 diff --git a/data/emoticons/face-glasses24x24.png b/data/emoticons/face-glasses24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..a3e736d873ba60f3de1a3a43d1e0a04c8f914781 GIT binary patch literal 1874 zcmV-Y2d(&tP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4g(BiDtD*=001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000J&NklRgMlB2Y?4Hf@doBXtl~-R>-uo*!|C;w)^j@|AKdN=YIMoydWxs5GgIaoCVU5~)gwDkrh5CMA(Xp$&s5mpT$4SG;qr zmtTER0%-636%QSp`>`xllUjXoZ#l~JOeL6;r63*^LUp%lesA1FKC&t|ddKq9jZv`D zJ|#LcWf6F5(@{2hkm}vuxX@XD^GCSiBvStL-bR@hlO-IQ@H!MG`v;{o2sI6LLDTiZ0|%B){%ak>-G zoGVcZ>%wI&sc4hvY&aZ=Q11-$>6_Fgo#z${0Z?sQfvOQ)JLjB~shpxl&t zA{jOks`V+}YvM}6e5*#i5>XOEL@`0igvN3mAH;EYcz3byvxUAFsq@lG=e?GKsG8`x z@=RPV)e^LvAVrFolFUi0&`7QE2$WJpaY(sbB923X00d()VMtY=N|9(pfe1WQv=mQi za2|<}Q4r@?M%f5u#uOF?nP&UJge=c6#vuUbJmZOFW6w~IG@E4wA94NGnA0l(=T-z#c$_Kt{9d2;ukR5>g7Y2C zsbxW+9FvJ))-Sw?M~qV=tjiG6V!R+P3|U@~X9kz$*y)6&xg2X9 zJG%x4H0p{*T@q?bmKGcxPTA^?DGj^DqTe^iqEgXXcp<#SrN<2W2CXegr9f#(vkH|n zioKl?6hkgw^4#0XIl7zk$jK%%vjU|(>7-yf${7xFinO5Rd#tJ*v27QfRyG&4TEer> zTwwb_pN~J?A~hk_NtE=IW6Q;pDNkO^SifM|KO@oW;bW|(DKCkJdd5sXwM#D3UEaVUXUK|bJl!u z_=@`Ay??n=Z>rZXsY^@cVt;YQoKd0Fx>`lMKB1W4g<$L}91Kg`-SAw$nKGGbI_(wC zUwoRC))Li{LFBsxVHKs@jCUsZ-qzij-Q9P;cYN@!{*LaxjnF63d+E2MWPLeop2MX( zq{SE+RQSf)GEONDMmhKQ1?%m3o_}tQ`SxWJu|q!G#hK4g(IUpSnQZ)%$-&;OFd4*)K{@96z2@9-A@4RGA08`k*c`2M{Zmp@&**dmyzBi$Y@y+hS( zF)JYmkMTu}8D_Zb5Mf5h=p^1Z8Q(u7FSPQV|8AVi=&h%awyy~6;Rhm`;0KfY;3bp@j%NB{r; M07*qoM6N<$g1IAy)c^nh literal 0 HcmV?d00001 diff --git a/data/emoticons/face-glasses32x32.png b/data/emoticons/face-glasses32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..316405cf037211faf0532701d0619c63895d2ff5 GIT binary patch literal 2774 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 literal 0 HcmV?d00001 diff --git a/data/emoticons/face-grin24x24.png b/data/emoticons/face-grin24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..39e53dd13f45ecf23cff5e03cc6f48db6c87ef01 GIT binary patch literal 1867 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 IM6N<$f``Whga7~l literal 0 HcmV?d00001 diff --git a/data/emoticons/face-kiss24x24.png b/data/emoticons/face-kiss24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..3d433596c5b5cdf1fc64107b13bcf233f3c1218a GIT binary patch literal 1818 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 Hu0mjf*mN;m literal 0 HcmV?d00001 diff --git a/data/emoticons/face-monkey32x32.png b/data/emoticons/face-monkey32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..d95f91d3fa6ab359266de3cd936a954c894a15a7 GIT binary patch literal 2445 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 b_&@j`H?bR8SW!dW00000NkvXXu0mjf8s$VK literal 0 HcmV?d00001 diff --git a/data/emoticons/face-plain32x32.png b/data/emoticons/face-plain32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..9e884b1bcb9b33e1730a9aa523faad8f57e3c89d GIT binary patch literal 2579 zcmV+u3hecXP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4HY}WN!cj?001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000S6Nklu-Q$v zNRds_E!m2p5Rw8TcC>MEW#xrnAc_dZ ziDU_+q^3Bt*(1AO_nYoeRVRzr)X<{gWzME9aDn>&I_E!i{t}Mk`k%qIf97lP_MdRp zMXs5^H%;V<@vKN>jzC+LM1&H{ky^H+a{Fp+ ze&zXedU+vf&rOP{cfi#(nuZ&Kqe@3{NgKhZmhCnv$fEnZEVygspd>00CL z)hpGh`A(%XN!qI5nklx{M$#5yDySMHdejfm?1(Ttq8wxty^Q>5pX^|#J9xN$v-jC& z*NY)PH&=P*wZHo+3HRl+yB;gH$?IvIKdR54pPhN>_eeX_h$+zQ9y(elP9Lllz663NsB>d{hkpL8_OUdc9YUrEFuoE2GJ6UBP8aC3bx*9n5xm@ z$$|KL9Q^CYY<(>QNre|&${UTdS5{|U`W~)YAaR>G7=rk5&8ySLz{jUoKow$u;K3JA z^wI1g1dy1}SX?AMwSwGu=gMg3j!7Jkf%iWr@b;f_wpyWCm)6xvd*)(w@>D13Ok$)< z%pxidu{CVkL@G_NcC4H-5PZOjfHe>l$`TcWj{-UZjo506R6A7K)1Ai5nTttnf9<^= z=U4Z#aQFK^W9VGunkeH2_#8-ZnCy?6>E0T(QR-JskD)FER)UMLq52%#m3eli16KX zf`!Ei9&T^&_PcjMJ!j@Sd~2=6%*+HvkDwQbqh0Wdt6xA`%M6a5%;0rZ3a$e<6IhXe z5!>jv_9Eg(gi#3yVk{&Hc*~>5N4)#X``mf3N41i2dG!*Ql->QD_it=68Wo&dDmXQ_ z!rE#IE*YyV77zlqQb!sKh^jW~uMtKB$2=nV?Cc6#jW z^k}te`sNwR3S^n_%U*OdE2qcfPmcTFce(sr zi_7P}1tFl`gU``y3!fc8$RT9lbI<_Bpa>dCh~rDpVJO9bv57O1I#Gp?q25Bsu@s1{ zLc>C>3eJtwn-!3kUw=nW4TMXCan=B8Cz}7!$A@VG(0o-9+QW z$MKCO2K*48r%1F&?!gSlx)2#>K;!W&2oTCKSTTUS4_O~A2gg~6pZ^mHVCiAW0i0U4 z)nTBRjiV_j)7iY_MHHI5|uUh2E|PuZdi(O`&>AF;Jj^55?d`Q^7ZO8Mc6Pn+)tab!r1TiTw8xRgR(J(qt$AjoN7?;3t6Dt*e zv^_m~c#}$7am};it8{e0d_D5*^Oo7pJlijv$J4;L>K7Rh0gY%mz=lJbvd?VwkaMje znp?Cn3$+Ex!jf;S<9oY%IQc|V-5Hl4;RCg%UOd@&ZWv1B+^vJG>q5ik$ev`dW7w*WBLOam8e(BWC13=L9y|O;l?MFy`4vzn2)p; zHpeA!T*uHH?LN2?M!kJEJvUX4EijWHO1O7Y1Lf`D*J^eVqH=o!ir+joTN{-~{z@4aWc;{W|gqcwbg z@T#lwdh5BBYmL(vu2kC7ol2ugT8X&SV=6TyX^g$07>EJ&IhqfM*^sid6uF@o_Q`wu z-NELaoBezDua_A=ufN!M=cT_L^nR@^e@a4+$`yZ5{JU`y^mp&?54)S|A@Zi1NZ*oHa`z-Sfc(#oQ-15G z#aBuEL#xsMuiiy#c(FNGU#m_pUQQ_W8;9bvXZT@qZZ$;Tbdo_@Mv*002ovPDHLkV1oEj>#P6( literal 0 HcmV?d00001 diff --git a/data/emoticons/face-sad24x24.png b/data/emoticons/face-sad24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..bd9b4950b0eed7d3252497ca11cdc1ec329ef203 GIT binary patch literal 1841 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 V*>9=xNsRyi002ovPDHLkV1gO9ZmIwP literal 0 HcmV?d00001 diff --git a/data/emoticons/face-smile-big32x32.png b/data/emoticons/face-smile-big32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..5d3cfc28943b8322e5797f34b6dad7927a3a97f7 GIT binary patch literal 2613 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 literal 0 HcmV?d00001 diff --git a/data/emoticons/face-smile32x32.png b/data/emoticons/face-smile32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..b2fb1d19d28b6b13a500268e39fcdecaf492cc62 GIT binary patch literal 2676 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 literal 0 HcmV?d00001 diff --git a/data/emoticons/face-surprise32x32.png b/data/emoticons/face-surprise32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..c30cefea2ca6e7ae0521469111cb655d09388368 GIT binary patch literal 2665 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 literal 0 HcmV?d00001 diff --git a/data/emoticons/face-wink32x32.png b/data/emoticons/face-wink32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..4923c12db207bcfcf6dc7d3f6776280d71f77a1f GIT binary patch literal 2668 zcmV-y3X}DTP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4hIjJPvaH<001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000TANkl6 z8GCHE+jhIBzurf`kE(iA_g)syhD?v6EcvhQ>iqxr9G!FiM|gpoe+W1JjxXUS-{+jR z+)#$EDa#dAvM!cI40Y%5MJVt%aUT2DW7~S%wH_ariksj1dv;F8JI$kCK3+u*P^nNA zN35)bV)3OEB?iF=&VdNvAUr(>(I3pa1mFNZcJR`ysDa&(^O- zOY4_{&e>(ZzSt5KH$lhFs?b?H5obio9HtXjPWr`gzc)R8wwE40`E0a%a;KQ`3)$q} zH~)(97c%k3aN}=4PAmMkKcc1!)*16%9q?ZD%*D;>+H39j>{p1^uA=M9NZ14~0;j+g zP>gU{mvZo&^w}p&p5A4&d%ru{e|*0z-1|g)P-?c{`CEpk`Q$XY`HZ)ND(^P7F5gJb zUAQ2abfPw-z8{v5H-bRk8$aJOl}bs03J92 zYr&SdG6yU8$r^t960!A|_K%w`&)&**A8t5tNXqk{{*Z^?{PX`ShxhXFy%yKB<~xmx zmw%_Rb$zRLeuK(<4KFAV#^6#Ahj;<#04E-z6gu!xl@QMl@w^aG8eECk6tNlN1TStT zs-oQVxF_XfdjIeVpMNO>e#q-O;JxJBm94oqzm2Zsh~39d3@8O&2;n>^0ReGeE2U9S(&f!jn`MXywRrCUcgg=$w%OFL~_Dvjq2ihI~_!?<^4z3)yWqP44d>HwEM zM4|vuRfc23)7=RN-Hg4X5&wGYDNpuB%&%|p#&wIeCH<3>IE2BdBrohQHMqg1hfq3n zyn)otGCnz;qjXy`e@N#jSh$g1f>M$3alwnVT>fph!?k{EV0Jni~(m+ zeuS;G!1)y^Sx|=BtPKry3|LcYi$N&B=1eAzqAaL39bw&vpaNbDIsh?Hj!^c5uUuZH zp8OV_c87B-9a>R=vOTg%kHKI}kdBExhjzftSOYW8QNtylQJCU z^h`+GC>H$+UM0nN6Ho=X63Q-=12)cg*tl>JoCjrw^L^ne*t;4v)8=piD-)Vu<_#r*p)lV2jx_RTL=9On}D;9-@?vl~o!Glv7TIdpy}2 zV3}}m=(BnzV|ArRvk_CN_yDA7!NI|R?(vXDq6xI{pC9k?@!dVv7HfR{QXQuva5)qi zZaPLV;4#D_2hh%A-)R&~7i@Z*cv%-$WON!eF0R)|^D0t~IXrsC{=puF@yMnyN-g8G zBu_Ii1)XL@s}V6tbIvX|IDh^k3+LBJ)EwBSSVG*S3pUG~=D_ONR@ByKTWNe-4ui74 zGcUz4SjF=EBGGb{QEKV+3ZCpv*m+j4cW5~1S&sT8bj&d6gquW(_h!5dpO zmdZSdb1K}?&3*Up6qwhr+2Y6hpwI@ri*6>L{&!= z2Sl|R3rh`7CJCb~Vx0LDrB7I?k|YU998!xli?x#Zs-+r71kyvR5_C*4=#%val%wtu zT0V7wJD8Qg=VRxoczV2hVPXp8{6+NKIy##olWlYYNvqA7;Mhw_(Dx`Rj^AwhHl zbOH`A8RUIjc8D8)jvF5VU>)RxVix!dM2se3(n>+`b&76pJILiwGFGPrsM9WBH1@Su=8#3D8XLN9zwDhmRh1(%pv}xZhj|7S@rZiG)i?35@z+WOfX=nI&@KW+nxTs0vg! zpm`N570Tg&@!_ZR?)=9=IpwB46MW#m7Cz*khOc(T|NX53ZC&Br+J*HS$(fBS zVZGA~lNv#2(1Ae(5fa2RZzuxR;L04AkFnW=qVSmJis@uTKJ50#dynpp9`D>NGCqvI zntb%;UyO&p(w4sz;ZBP6vN!#%r+6>!tZY^n*W2;RC8Cv0y!sMSX(4_B$^%=@?t)2| zate;;moimz4| z<7<`9%4>dWX;oL}=ERFy;8&dU06}mdCAcDUX3{H%M@L0}?^)K}`($*K-Zqw>SAU~+ z|II%ge&I5D$t(OC-1-ymDwgYF>@|$rl9IDhvVfuHEWRiTJcdql;51Lr@~QLHZ9HyW z|B<=#>*DLvicaHrWVT~NDO0wk;HD~Rsh9iQ;-N5j QLabel { + background: none; +} + +QListView::item:selected:active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); +} + +QListView::item:selected:!active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); +} + +TocContactListWidget { + qproperty-logoColor: "red"; +} diff --git a/data/stylesheets/my.qss b/data/stylesheets/my.qss new file mode 100644 index 0000000..8265e69 --- /dev/null +++ b/data/stylesheets/my.qss @@ -0,0 +1,69 @@ +QFrame { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QComboBox { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QLineEdit { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QPushButton { + border: 5px solid darkgrey; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QPushButton#contactsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QPushButton#settingsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QPushButton#statusAreaButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QLabel#statusAreaLabel[checked="true"] { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +TecMainToolbar > QLabel { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QMenu::item { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QListView::item:selected:active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0b0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); +} +QListView::item:selected:!active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); +} +QMessageBox { + background: white; +} + +QMessageBox > QLabel { + background: none; +} + +TocContactListWidget { + qproperty-logoColor: "green"; +} \ No newline at end of file diff --git a/data/tietoopcom.desktop b/data/tietoopcom.desktop new file mode 100644 index 0000000..c0bfd08 --- /dev/null +++ b/data/tietoopcom.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Encoding=UTF-8 +Version=0.5.5 +Type=Application +Name=Tieto Open Communicator +Comment=Realtime communicator for Maemo/Telepathy +Exec=/usr/bin/tietoopcom +Icon=jabber +X-Icon-path=/usr/share/pixmaps/ +X-Maemo-Category=Main +X-Window-Icon=jabber +X-Window-Icon-Dimmed=jabber +X-Osso-Service=com.tieto.tietoopcom diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..7cc7b32 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,14 @@ +tietoopcom (0.5.5-1) stable; urgency=low + + * Added DBus integration + + -- Darknock Fri, 25 Jun 2010 15:48:00 +0100 + +tietoopcom (0.5.4-1) stable; urgency=low + + * Changed framework to Freemantle + * Changed name to Tieto Open Communicator (tietoopcom) + * Added Tieto logo + - color can be changed from style sheet + + -- Darknock Fri, 25 Jun 2010 12:43:00 +0100 diff --git a/debian/changelog_old b/debian/changelog_old new file mode 100644 index 0000000..8736e92 --- /dev/null +++ b/debian/changelog_old @@ -0,0 +1,244 @@ +tietoopcom (0.5.3-1) stable; urgency=low + + * Changed framework to Freemantle + * Changed name to Tieto Open Communicator (tietoopcom) + + -- Darknock Fri, 11 Jun 2010 17:26:00 +0100 + +tec (0.5.256-1) stable; urgency=low + + * Added scroll widget to active sessions menu + + -- Darknock Tue, 17 Mar 2008 17:31:00 +0100 + +tec (0.5.247-2) stable; urgency=low + + * Code cleanup + + -- Darknock Fri, 13 Mar 2008 13:05:00 +0100 + +tec (0.5.244-1) stable; urgency=low + + * Added Account creation + + -- Darknock Thu, 12 Mar 2008 19:35:00 +0100 + +tec (0.5.242-1) stable; urgency=low + + * Added ability to change between themes + * Fixed a LOT of bugs + * Added About box + + -- Darknock Thu, 12 Mar 2008 16:32:00 +0100 + +tec (0.5.231-1) stable; urgency=low + + * Fixed layouts to be more consistent with each other + * Expanded the spaces between items on contact list + * Added style sheet to the Context Menu + + -- Darknock Tue, 10 Mar 2008 15:29:00 +0100 + +tec (0.5.228-1) stable; urgency=low + + * code review and bug fixing release + + -- Darknock Mon, 9 Mar 2008 15:22:00 +0100 + +tec (0.5.212-1) stable; urgency=low + + * bug fixing release + + -- Darknock Tue, 4 Mar 2008 12:43:00 +0100 + +tec (0.5.210-1) unstable; urgency=low + + * Ok changed to Apply in Themes view + * Added saving of pending lists to the settings file + - fixed a problem with disappearing + - and respawning contacts + * a lot of bug fixes + + -- Darknock Tue, 4 Mar 2008 10:13:00 +0100 + +tec (0.5.207-1) unstable; urgency=low + + * Fixed error messages texts + * Added Literal sorting of contact list + * Authorization is now always accepted + * Rebuilt themes view + + -- Darknock Tue, 3 Mar 2008 18:15:00 +0100 + +tec (0.5.205-1) unstable; urgency=low + + * Added confirmation dialog when removing contact + * Added Style sheet for QMessageBox + * Descriptive labels added to General Settings view. + - Alphabetical sorting always enabled + - Authorization always accepted + * Added Message Delivery error handling + * Changed formatting of messages and notifications + * Message sending on enter + * Connecting and disconnecting should be more stable + * Added error messages handling on connection faults + + -- Darknock Tue, 3 Mar 2008 15:39:00 +0100 + +tec (0.5.197-1) unstable; urgency=low + + * Settings layout adjustments + * TecChatWidget improvements + * TecUserInfoWidget layout redesign + * IconProvider + TecContactList and TecUserInfoWidget refactoring + + -- Darknock Mon, 2 Mar 2008 15:00:00 +0100 + +tec (0.5.185-1) unstable; urgency=low + + * Rebuilt TecSettingsWidget + * Rebuilt TecGeneralSettingsWidget + * Fixed general settings edition and saving + + -- Darknock Thu, 26 Feb 2008 18:00:00 +0100 + +tec (0.5.184-1) unstable; urgency=low + + * Rebuilt TecAccountSettingsWidget + * Fixed account edition and saving + * Fixed highlighting of "tabs" + * Added support for Google Talk (buggy) + + -- Darknock Thu, 26 Feb 2008 11:55:00 +0100 + +tec (0.5.182-1) unstable; urgency=low + + * Highlighting of selected "tabs" added + + -- Darknock Wed, 25 Feb 2008 9:53:00 +0100 + +tec (0.5.181-1) unstable; urgency=low + + * Added status support + * `TecContact` referenced code re-factoring + * Few bug fixes + * Clearing of statuses in Offline status + + -- Darknock Tue, 24 Feb 2008 14:44:00 +0100 + +tec (0.5.177-1) unstable; urgency=low + + * Added sending of messages + * Offline status now really disconnects + + -- Darknock Tue, 24 Feb 2008 11:26:00 +0100 + +tec (0.5.176-1) unstable; urgency=low + + * Finished Contact List synchronization + * Settings are now properly saved + + -- Darknock Mon, 23 Feb 2008 17:54:00 +0100 + +tec (0.5.169-1) unstable; urgency=low + + * Added Contact List synchronization + * You can now add, edit and remove contact from contact list + * Sending of messages + + -- Darknock Fri, 20 Feb 2008 9:27:00 +0100 + +tec (0.5.162-1) unstable; urgency=low + + * Added channel handling support + + -- Darknock Fri, 19 Dec 2008 12:45:00 +0100 + +tec (0.5.158-1) unstable; urgency=low + + * Minor fixes in TecAccountSettingsWidget + * Saving settings to QSettings + - without contact list support + + -- Darknock Fri, 19 Dec 2008 9:32:00 +0100 + +tec (0.5.154-1) unstable; urgency=low + + * Fixes in TecMainToolbar + - Divided labelButton into statusAreaButton and Label + + -- Darknock Wed, 17 Dec 2008 16:32:00 +0100 + +tec (0.5.153-1) unstable; urgency=low + + * Added FirstTimeUse view + * Implemented status handling + * Fixes in TecMainToolbar + - Changed icons + - Added additional statuses + - Fixed disappearing Active Sessions Menu + + -- Darknock Wed, 17 Dec 2008 14:52:00 +0100 + +tec (0.5.139-1) unstable; urgency=low + + * Changed account settings view + * Added partial implementation of TecSettings + * Started implementing TecEngine methods + + -- Darknock Tue, 16 Dec 2008 16:43:00 +0100 + +tec (0.5.130-1) unstable; urgency=low + + * Fixed font metrics setting + + -- Darknock Fri, 12 Dec 2008 13:18:00 +0100 + +tec (0.5.126-1) unstable; urgency=low + + * Extracted base abstract class from TecMainWindow + - now one can inherit from the base class to implement his own UI + + -- Darknock Fri, 12 Dec 2008 12:43:00 +0100 + +tec (0.5.124-1) unstable; urgency=low + + * Fixed some bugs + * Added abstract class for TecEngine + + -- Darknock Fri, 12 Dec 2008 12:00:00 +0100 + +tec (0.5.122-1) unstable; urgency=low + + * Refactored source code to be more "Qt" + + -- Darknock Thu, 11 Dec 2008 13:18:00 +0100 + +tec (0.5.115-1) unstable; urgency=low + + * Changed icons in resources + * Changed default theme + * Finished style sheets + * Some fixes to the Ui + + -- Darknock Tue, 02 Dec 2008 09:15:00 +0100 + +tec (0.5.109-1) unstable; urgency=low + + * Finished implementation of GUI mechanics + * Finished some of the style sheets + + -- Darknock Fri, 26 Nov 2008 18:10:00 +0100 + +tec (0.5.079-1) unstable; urgency=low + + * Implemented most of the classes + + -- Darknock Wed, 26 Nov 2008 18:10:00 +0100 + +tec (0.5.036-1) unstable; urgency=low + + * Initial release (Closes: #nnnn) + + -- Darknock Tue, 18 Nov 2008 9:32:00 +0100 + diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +5 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..c223bde --- /dev/null +++ b/debian/control @@ -0,0 +1,12 @@ +Source: tietoopcom +Section: user/network +Priority: extra +Maintainer: Konrad Ciekot +Build-Depends: libqt4-dev, cdbs, debhelper (>= 5), libqttapioca-dev (>= 0.1.0) +Standards-Version: 3.7.2 + +Package: tietoopcom +Architecture: any +XB-Maemo-Display-Name: Tieto Open Communicator +Depends: libqt4-gui (>= 4.6.2~git20100401-0maemo1+0m5), libqt4-core (>= 4.6.2~git20100401-0maemo1+0m5), libqt4-dbus (>= 4.6.2~git20100401-0maemo1+0m5), libqttapioca0 (>= 0.1.0) +Description: Client for the Telepathy communication framework. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..73b8295 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,28 @@ +This package was debianized by Konrad Ciekot on +Wed, 22 Oct 2008 10:57:00 +0100. + +Copyright (c) 2010, Tieto Corporation +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + Neither the name of the Tieto Corporation nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + diff --git a/debian/files b/debian/files new file mode 100644 index 0000000..8a15a75 --- /dev/null +++ b/debian/files @@ -0,0 +1 @@ +tietoopcom_0.5.5-1_i386.deb user/network extra diff --git a/debian/rules b/debian/rules new file mode 100644 index 0000000..cb109d2 --- /dev/null +++ b/debian/rules @@ -0,0 +1,105 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + + + + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +# shared library versions, option 1 +version=2.0.5 +major=2 +# option 2, assuming the library is created as src/.libs/libfoo.so.2.0.5 or so +#version=`ls src/.libs/lib*.so.* | \ +# awk '{if (match($$0,/[0-9]+\.[0-9]+\.[0-9]+$$/)) print substr($$0,RSTART)}'` +#major=`ls src/.libs/lib*.so.* | \ +# awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'` + +configure: configure-stamp +configure-stamp: + dh_testdir + # Add here commands to configure the package. + ./configure + touch configure-stamp + + +build: build-stamp +build-stamp: configure-stamp + dh_testdir + + # Add here commands to compile the package. + $(MAKE) release + + touch $@ + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + # Add here commands to clean up after the build process. + -$(MAKE) distclean + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/tmp + $(MAKE) INSTALL_ROOT=$(CURDIR)/debian/tmp install + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot +# dh_installchangelogs +# dh_installdocs +# dh_installexamples + dh_install --sourcedir=debian/tmp +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_installinit +# dh_installcron +# dh_installinfo +# dh_installman + dh_link + dh_strip + dh_compress + dh_fixperms +# dh_perl +# dh_python +# dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure diff --git a/debian/tietoopcom.install b/debian/tietoopcom.install new file mode 100644 index 0000000..87deca1 --- /dev/null +++ b/debian/tietoopcom.install @@ -0,0 +1,2 @@ +usr/bin/* +usr/share/* diff --git a/debian/tietoopcom.substvars b/debian/tietoopcom.substvars new file mode 100644 index 0000000..b0c1d5f --- /dev/null +++ b/debian/tietoopcom.substvars @@ -0,0 +1 @@ +shlibs:Depends=libc6 (>= 2.5.0-1), libgcc1 (>= 1:4.2.1), libqt4-core (>= 4.6.2~git20100401), libqt4-dbus (>= 4.6.2~git20100401), libqt4-gui (>= 4.6.2~git20100401), libqt4-xml (>= 4.6.2~git20100401), libstdc++6 (>= 4.2.1) diff --git a/debian/tietoopcom/DEBIAN/control b/debian/tietoopcom/DEBIAN/control new file mode 100644 index 0000000..33fdb09 --- /dev/null +++ b/debian/tietoopcom/DEBIAN/control @@ -0,0 +1,10 @@ +Package: tietoopcom +Version: 0.5.5-1 +Section: user/network +Priority: extra +Architecture: i386 +Depends: libqt4-gui (>= 4.6.2~git20100401-0maemo1+0m5), libqt4-core (>= 4.6.2~git20100401-0maemo1+0m5), libqt4-dbus (>= 4.6.2~git20100401-0maemo1+0m5), libqttapioca0 (>= 0.1.0) +Installed-Size: 608 +Maintainer: Konrad Ciekot +Description: Client for the Telepathy communication framework. +Maemo-Display-Name: Tieto Open Communicator diff --git a/debian/tietoopcom/DEBIAN/md5sums b/debian/tietoopcom/DEBIAN/md5sums new file mode 100644 index 0000000..a6eb9b4 --- /dev/null +++ b/debian/tietoopcom/DEBIAN/md5sums @@ -0,0 +1,32 @@ +2201a24c4cca9145980248592e9fae1e usr/bin/tietoopcom +774e5143da1b3d3c233d873f56b0c36a usr/share/applications/hildon/tietoopcom.desktop +9778117aea9792898bad6a18311236fb usr/share/tietoopcom/licence/copyright +bef9900a21b15d087f9308ed71871081 usr/share/tietoopcom/stylesheets/default.qss +204db55de012bbc14aeb053c2b80c9bf usr/share/tietoopcom/stylesheets/my.qss +610883ccf2039334b16df37e2c370944 usr/share/tietoopcom/emoticons/face-kiss32x32.png +e313d30b3faa415224b6f5bde47aca97 usr/share/tietoopcom/emoticons/face-glasses24x24.png +d0c28e0763e913e7a2ca72134e29bb97 usr/share/tietoopcom/emoticons/face-glasses32x32.png +a28b8e63383ff3fa8cae34a51afc8b6b usr/share/tietoopcom/emoticons/face-surprise32x32.png +126a3f2379a264508de3433dbe40bf38 usr/share/tietoopcom/emoticons/face-surprise24x24.png +476ad893421bb70a91b41a9d949636d4 usr/share/tietoopcom/emoticons/face-monkey32x32.png +2f7ccdab0208b00fdcce723dc9ea45bb usr/share/tietoopcom/emoticons/face-wink32x32.png +cfdf854bb5f406446a62b890428728bb usr/share/tietoopcom/emoticons/face-angel24x24.png +56bb43564b5fa19b19439a45ff14140b usr/share/tietoopcom/emoticons/face-smile32x32.png +e81630eabeb1021e4da1fa3aee532393 usr/share/tietoopcom/emoticons/face-sad32x32.png +f623839d7576846950ebbc411cf60901 usr/share/tietoopcom/emoticons/face-crying32x32.png +f57fe3c810fc6ab0a356b92b2a20a994 usr/share/tietoopcom/emoticons/face-smile-big24x24.png +846c8b9a0094fe5e2285585f019616c2 usr/share/tietoopcom/emoticons/face-plain32x32.png +899b4c17a59fa2293d46c100f00c5afd usr/share/tietoopcom/emoticons/face-smile-big32x32.png +0882a65810ac487058d7ae6a129d6ae7 usr/share/tietoopcom/emoticons/face-grin24x24.png +e1b8256e837f593c9f9f8a39a16cf841 usr/share/tietoopcom/emoticons/face-plain24x24.png +387eb9b031e76bb238da7b583edd12bd usr/share/tietoopcom/emoticons/face-angel32x32.png +1ed3bb43e8dfc6aedb5ee25e615db5cf usr/share/tietoopcom/emoticons/face-wink24x24.png +665c60c4c90ba626d47de8b163a8cfd3 usr/share/tietoopcom/emoticons/face-devilish24x24.png +1187404feabd05c78e5a796527c62521 usr/share/tietoopcom/emoticons/face-monkey24x24.png +b683df0b94b5cb353774654056b22366 usr/share/tietoopcom/emoticons/face-grin32x32.png +a30955a7d0319dd4f0c5468a3876e930 usr/share/tietoopcom/emoticons/face-smile24x24.png +161c423b048b3859408da864e69ed637 usr/share/tietoopcom/emoticons/face-sad24x24.png +0bf570cb454ffde04c434a5889cb80b7 usr/share/tietoopcom/emoticons/face-kiss24x24.png +7b043e8ad9055fb809304d1b3be693d1 usr/share/tietoopcom/emoticons/face-devilish32x32.png +a0ac6652e80f503357354f4b52dc0cb6 usr/share/tietoopcom/emoticons/face-crying24x24.png +984b677d70a11ab34d14641e3459f853 usr/share/dbus-1/services/com.tieto.tietoopcom.service diff --git a/debian/tietoopcom/usr/bin/tietoopcom b/debian/tietoopcom/usr/bin/tietoopcom new file mode 100644 index 0000000000000000000000000000000000000000..c3d1f8999a2685512698d69c34ec017ac544147e GIT binary patch literal 438852 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πt9C2Tg~u2>RuO7HoUXV^Xu%-QtL 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 NBlpR&VHx{l{2PT8!-@a^ literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/applications/hildon/tietoopcom.desktop b/debian/tietoopcom/usr/share/applications/hildon/tietoopcom.desktop new file mode 100644 index 0000000..c0bfd08 --- /dev/null +++ b/debian/tietoopcom/usr/share/applications/hildon/tietoopcom.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Encoding=UTF-8 +Version=0.5.5 +Type=Application +Name=Tieto Open Communicator +Comment=Realtime communicator for Maemo/Telepathy +Exec=/usr/bin/tietoopcom +Icon=jabber +X-Icon-path=/usr/share/pixmaps/ +X-Maemo-Category=Main +X-Window-Icon=jabber +X-Window-Icon-Dimmed=jabber +X-Osso-Service=com.tieto.tietoopcom diff --git a/debian/tietoopcom/usr/share/dbus-1/services/com.tieto.tietoopcom.service b/debian/tietoopcom/usr/share/dbus-1/services/com.tieto.tietoopcom.service new file mode 100644 index 0000000..fa159b5 --- /dev/null +++ b/debian/tietoopcom/usr/share/dbus-1/services/com.tieto.tietoopcom.service @@ -0,0 +1,4 @@ +# Service description file +[D-BUS Service] +Name=com.tieto.tietoopcom +Exec=/usr/bin/tietoopcom diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-angel24x24.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-angel24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..116319505b47ccb1dfc8e6a803df89e80bfaee29 GIT binary patch literal 1885 zcmV-j2cr0iP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4J8TH*uGi-001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000J@Nkl%>-y;Dq&RoXiqfPj^}14FUkGU=R{R$LASBkh2zx}^ zVlFNg3cK8L^3`->z?q*9#mQITO8)?Gr2TXi$+v=8`z2@6k22dq_XH$O@|_v5AI%nE zEkau1L_$cfFRe;ksXEX|5Lz5BZ(sgK(7v<@EFS7!j0KzHoRLv;4%=;oEkZ*4D% zMF($Q<3@W}eH&}#zI((z$XILvIyMx&4AUAwZx550JhcleI*K;oPy2ut$kwf$z?SRX zuzqgnM)x6zQNulC)&v>8Vg<5+JTtuk^``r{9;?K|H#Mhv=fz2vd-N(rdk#+h0zVkRny&-qK zo7~(DdHaKcS1;}&!dYZA%~l)!etCx*tLu2|5jLlVSD!qo7@hMNc*@Coj|yF@`%@>R z3hvO`evhlyxA3D8ne|!7G;h554sX2qF2{~kS-G*z_4n49n+$O!EH7_z{rx-KKflY- z@q%FDlf)U*PChy(bnyqJ(!r-hJP4#e=HbS8%H_m8hq<=W;ny#|&fRv8nZx5e@s&q7 zbz+W6RHEA*@{<={#%jajOpS-`onUF&U<`<`fh}&$%6Rw*p$lJ8WJ@;B93g!L3Rek^ zFE%MfhnSvf(C&?xpKEgZ)I8;|#O!o~Pd|8)N*G{@g2UqhCuc)yP6ulY(hb4lp^L-l z+))@CV2s2fFa{+JQ_V6{^K~xxWl%0y3x&q!1yRZ8?CC|$o?ZlJu{uWV z=XnIeD(m_0;Rg{qt|fWL*}c2Yhwok`HB*dL?_puSLG4h4>nVy{Bdo?2Iq_h?2P+$_ zuC?%#%klZc+;e0Rofa6QW2@XvD=3ul!b{fmnnic(Ol~_tC+Tx_`7Jto4XWi4t({4l zfGpQY_T9(Bgp2R2aqUKzso7&x7w+X){TNB>7DY0+ZG8W_)lR0gQ@*IvY@zr5 z#V5m=GV@Dkcr<{m+dV$GvBoc7e4DKn6ehs+6v`2l0+;c6jme2g9(d>s4?pxEN9QNd z@m&ThZ;`dP*Mt{dwALo7aH{{%$)Gh%`q$kL zaoh;kFH?<5Ow}!>& z@%#Lsk1cJ0KP2!^fjr9aOjz9|1rbDs44EZX;DufQOIDkM12klK$I8E}=kio_( zgWGHC1|0%rBSj^*rmkUXJt>!VPiU2(XxJNU?X9 zY^2FjL7JxRw7dJ-@b<<_sZ)97!n40`9{?^t{}lIs_qPX-fBp39i=G`lRW6mkSQ=}d z3Fl5ZPSo^-7r9PYl|l+k(l4?*t9f>3El=CqcZdDGevdHOUdXDGf7FFNJ6wDByhw%*kR~UEF^7;M!%^GT^RDBT{vs;VuiH4?EIMnu{2%=X X16D6R>|1cQ00000NkvXXu0mjfPh@^f literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-angel32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-angel32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..8604e093c336398ab6c980ba31c6ff528b65b4bd GIT binary patch literal 2813 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 literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-crying32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-crying32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..6599fe7f3a6ebba7b6228008606480478f8847cf GIT binary patch literal 2751 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 literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-glasses24x24.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-glasses24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..a3e736d873ba60f3de1a3a43d1e0a04c8f914781 GIT binary patch literal 1874 zcmV-Y2d(&tP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4g(BiDtD*=001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000J&NklRgMlB2Y?4Hf@doBXtl~-R>-uo*!|C;w)^j@|AKdN=YIMoydWxs5GgIaoCVU5~)gwDkrh5CMA(Xp$&s5mpT$4SG;qr zmtTER0%-636%QSp`>`xllUjXoZ#l~JOeL6;r63*^LUp%lesA1FKC&t|ddKq9jZv`D zJ|#LcWf6F5(@{2hkm}vuxX@XD^GCSiBvStL-bR@hlO-IQ@H!MG`v;{o2sI6LLDTiZ0|%B){%ak>-G zoGVcZ>%wI&sc4hvY&aZ=Q11-$>6_Fgo#z${0Z?sQfvOQ)JLjB~shpxl&t zA{jOks`V+}YvM}6e5*#i5>XOEL@`0igvN3mAH;EYcz3byvxUAFsq@lG=e?GKsG8`x z@=RPV)e^LvAVrFolFUi0&`7QE2$WJpaY(sbB923X00d()VMtY=N|9(pfe1WQv=mQi za2|<}Q4r@?M%f5u#uOF?nP&UJge=c6#vuUbJmZOFW6w~IG@E4wA94NGnA0l(=T-z#c$_Kt{9d2;ukR5>g7Y2C zsbxW+9FvJ))-Sw?M~qV=tjiG6V!R+P3|U@~X9kz$*y)6&xg2X9 zJG%x4H0p{*T@q?bmKGcxPTA^?DGj^DqTe^iqEgXXcp<#SrN<2W2CXegr9f#(vkH|n zioKl?6hkgw^4#0XIl7zk$jK%%vjU|(>7-yf${7xFinO5Rd#tJ*v27QfRyG&4TEer> zTwwb_pN~J?A~hk_NtE=IW6Q;pDNkO^SifM|KO@oW;bW|(DKCkJdd5sXwM#D3UEaVUXUK|bJl!u z_=@`Ay??n=Z>rZXsY^@cVt;YQoKd0Fx>`lMKB1W4g<$L}91Kg`-SAw$nKGGbI_(wC zUwoRC))Li{LFBsxVHKs@jCUsZ-qzij-Q9P;cYN@!{*LaxjnF63d+E2MWPLeop2MX( zq{SE+RQSf)GEONDMmhKQ1?%m3o_}tQ`SxWJu|q!G#hK4g(IUpSnQZ)%$-&;OFd4*)K{@96z2@9-A@4RGA08`k*c`2M{Zmp@&**dmyzBi$Y@y+hS( zF)JYmkMTu}8D_Zb5Mf5h=p^1Z8Q(u7FSPQV|8AVi=&h%awyy~6;Rhm`;0KfY;3bp@j%NB{r; M07*qoM6N<$g1IAy)c^nh literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-glasses32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-glasses32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..316405cf037211faf0532701d0619c63895d2ff5 GIT binary patch literal 2774 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 literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-grin24x24.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-grin24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..39e53dd13f45ecf23cff5e03cc6f48db6c87ef01 GIT binary patch literal 1867 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 IM6N<$f``Whga7~l literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-kiss24x24.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-kiss24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..3d433596c5b5cdf1fc64107b13bcf233f3c1218a GIT binary patch literal 1818 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 Hu0mjf*mN;m literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-monkey32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-monkey32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..d95f91d3fa6ab359266de3cd936a954c894a15a7 GIT binary patch literal 2445 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 b_&@j`H?bR8SW!dW00000NkvXXu0mjf8s$VK literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-plain32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-plain32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..9e884b1bcb9b33e1730a9aa523faad8f57e3c89d GIT binary patch literal 2579 zcmV+u3hecXP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4HY}WN!cj?001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000S6Nklu-Q$v zNRds_E!m2p5Rw8TcC>MEW#xrnAc_dZ ziDU_+q^3Bt*(1AO_nYoeRVRzr)X<{gWzME9aDn>&I_E!i{t}Mk`k%qIf97lP_MdRp zMXs5^H%;V<@vKN>jzC+LM1&H{ky^H+a{Fp+ ze&zXedU+vf&rOP{cfi#(nuZ&Kqe@3{NgKhZmhCnv$fEnZEVygspd>00CL z)hpGh`A(%XN!qI5nklx{M$#5yDySMHdejfm?1(Ttq8wxty^Q>5pX^|#J9xN$v-jC& z*NY)PH&=P*wZHo+3HRl+yB;gH$?IvIKdR54pPhN>_eeX_h$+zQ9y(elP9Lllz663NsB>d{hkpL8_OUdc9YUrEFuoE2GJ6UBP8aC3bx*9n5xm@ z$$|KL9Q^CYY<(>QNre|&${UTdS5{|U`W~)YAaR>G7=rk5&8ySLz{jUoKow$u;K3JA z^wI1g1dy1}SX?AMwSwGu=gMg3j!7Jkf%iWr@b;f_wpyWCm)6xvd*)(w@>D13Ok$)< z%pxidu{CVkL@G_NcC4H-5PZOjfHe>l$`TcWj{-UZjo506R6A7K)1Ai5nTttnf9<^= z=U4Z#aQFK^W9VGunkeH2_#8-ZnCy?6>E0T(QR-JskD)FER)UMLq52%#m3eli16KX zf`!Ei9&T^&_PcjMJ!j@Sd~2=6%*+HvkDwQbqh0Wdt6xA`%M6a5%;0rZ3a$e<6IhXe z5!>jv_9Eg(gi#3yVk{&Hc*~>5N4)#X``mf3N41i2dG!*Ql->QD_it=68Wo&dDmXQ_ z!rE#IE*YyV77zlqQb!sKh^jW~uMtKB$2=nV?Cc6#jW z^k}te`sNwR3S^n_%U*OdE2qcfPmcTFce(sr zi_7P}1tFl`gU``y3!fc8$RT9lbI<_Bpa>dCh~rDpVJO9bv57O1I#Gp?q25Bsu@s1{ zLc>C>3eJtwn-!3kUw=nW4TMXCan=B8Cz}7!$A@VG(0o-9+QW z$MKCO2K*48r%1F&?!gSlx)2#>K;!W&2oTCKSTTUS4_O~A2gg~6pZ^mHVCiAW0i0U4 z)nTBRjiV_j)7iY_MHHI5|uUh2E|PuZdi(O`&>AF;Jj^55?d`Q^7ZO8Mc6Pn+)tab!r1TiTw8xRgR(J(qt$AjoN7?;3t6Dt*e zv^_m~c#}$7am};it8{e0d_D5*^Oo7pJlijv$J4;L>K7Rh0gY%mz=lJbvd?VwkaMje znp?Cn3$+Ex!jf;S<9oY%IQc|V-5Hl4;RCg%UOd@&ZWv1B+^vJG>q5ik$ev`dW7w*WBLOam8e(BWC13=L9y|O;l?MFy`4vzn2)p; zHpeA!T*uHH?LN2?M!kJEJvUX4EijWHO1O7Y1Lf`D*J^eVqH=o!ir+joTN{-~{z@4aWc;{W|gqcwbg z@T#lwdh5BBYmL(vu2kC7ol2ugT8X&SV=6TyX^g$07>EJ&IhqfM*^sid6uF@o_Q`wu z-NELaoBezDua_A=ufN!M=cT_L^nR@^e@a4+$`yZ5{JU`y^mp&?54)S|A@Zi1NZ*oHa`z-Sfc(#oQ-15G z#aBuEL#xsMuiiy#c(FNGU#m_pUQQ_W8;9bvXZT@qZZ$;Tbdo_@Mv*002ovPDHLkV1oEj>#P6( literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-sad24x24.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-sad24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..bd9b4950b0eed7d3252497ca11cdc1ec329ef203 GIT binary patch literal 1841 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 V*>9=xNsRyi002ovPDHLkV1gO9ZmIwP literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-smile-big32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-smile-big32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..5d3cfc28943b8322e5797f34b6dad7927a3a97f7 GIT binary patch literal 2613 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 literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-smile32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-smile32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..b2fb1d19d28b6b13a500268e39fcdecaf492cc62 GIT binary patch literal 2676 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 literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-surprise32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-surprise32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..c30cefea2ca6e7ae0521469111cb655d09388368 GIT binary patch literal 2665 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 literal 0 HcmV?d00001 diff --git a/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-wink32x32.png b/debian/tietoopcom/usr/share/tietoopcom/emoticons/face-wink32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..4923c12db207bcfcf6dc7d3f6776280d71f77a1f GIT binary patch literal 2668 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 on +Wed, 22 Oct 2008 10:57:00 +0100. + + +Tieto Open Communicator +Copyright (c) 2010, Tieto Corporation +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + Neither the name of the Tieto Corporation nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + diff --git a/debian/tietoopcom/usr/share/tietoopcom/stylesheets/default.qss b/debian/tietoopcom/usr/share/tietoopcom/stylesheets/default.qss new file mode 100644 index 0000000..05ad448 --- /dev/null +++ b/debian/tietoopcom/usr/share/tietoopcom/stylesheets/default.qss @@ -0,0 +1,97 @@ +QFrame { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} + +QComboBox { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} + +QLineEdit { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} + +QPushButton { + border: 5px solid darkgrey; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); + color: white; +} + +QPushButton#contactsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} + +QPushButton#settingsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} + +QPushButton#statusAreaButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} + +QLabel#statusAreaLabel:enabled { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} + +QLabel#statusAreaLabel:!enabled { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); + color: white; +} + +QPushButton#scrollUpButton:!enabled { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); + color: white; +} + +QPushButton#scrollDownButton:!enabled { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); + color: white; +} + +QMenu::item { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); + color: white; +} + +QMenu::separator { + background: grey; +} + +QMessageBox { + background: white; +} + +QMessageBox > QLabel { + background: none; +} + +QListView::item:selected:active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); +} + +QListView::item:selected:!active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); +} + +TocContactListWidget { + qproperty-logoColor: "red"; +} diff --git a/debian/tietoopcom/usr/share/tietoopcom/stylesheets/my.qss b/debian/tietoopcom/usr/share/tietoopcom/stylesheets/my.qss new file mode 100644 index 0000000..8265e69 --- /dev/null +++ b/debian/tietoopcom/usr/share/tietoopcom/stylesheets/my.qss @@ -0,0 +1,69 @@ +QFrame { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QComboBox { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QLineEdit { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QPushButton { + border: 5px solid darkgrey; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QPushButton#contactsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QPushButton#settingsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QPushButton#statusAreaButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QLabel#statusAreaLabel[checked="true"] { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +TecMainToolbar > QLabel { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QMenu::item { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QListView::item:selected:active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0b0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); +} +QListView::item:selected:!active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); +} +QMessageBox { + background: white; +} + +QMessageBox > QLabel { + background: none; +} + +TocContactListWidget { + qproperty-logoColor: "green"; +} \ No newline at end of file diff --git a/debian/tmp/usr/bin/tietoopcom b/debian/tmp/usr/bin/tietoopcom new file mode 100644 index 0000000000000000000000000000000000000000..d1a5301bcf419d9f1a07b4c88a9f34216722e8f6 GIT binary patch literal 439496 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 z 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�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

fv?rvqt~G6-*s^p3F` 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 X16D6R>|1cQ00000NkvXXu0mjfPh@^f literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-angel32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-angel32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..8604e093c336398ab6c980ba31c6ff528b65b4bd GIT binary patch literal 2813 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 literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-crying32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-crying32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..6599fe7f3a6ebba7b6228008606480478f8847cf GIT binary patch literal 2751 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 literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-glasses24x24.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-glasses24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..a3e736d873ba60f3de1a3a43d1e0a04c8f914781 GIT binary patch literal 1874 zcmV-Y2d(&tP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4g(BiDtD*=001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000J&NklRgMlB2Y?4Hf@doBXtl~-R>-uo*!|C;w)^j@|AKdN=YIMoydWxs5GgIaoCVU5~)gwDkrh5CMA(Xp$&s5mpT$4SG;qr zmtTER0%-636%QSp`>`xllUjXoZ#l~JOeL6;r63*^LUp%lesA1FKC&t|ddKq9jZv`D zJ|#LcWf6F5(@{2hkm}vuxX@XD^GCSiBvStL-bR@hlO-IQ@H!MG`v;{o2sI6LLDTiZ0|%B){%ak>-G zoGVcZ>%wI&sc4hvY&aZ=Q11-$>6_Fgo#z${0Z?sQfvOQ)JLjB~shpxl&t zA{jOks`V+}YvM}6e5*#i5>XOEL@`0igvN3mAH;EYcz3byvxUAFsq@lG=e?GKsG8`x z@=RPV)e^LvAVrFolFUi0&`7QE2$WJpaY(sbB923X00d()VMtY=N|9(pfe1WQv=mQi za2|<}Q4r@?M%f5u#uOF?nP&UJge=c6#vuUbJmZOFW6w~IG@E4wA94NGnA0l(=T-z#c$_Kt{9d2;ukR5>g7Y2C zsbxW+9FvJ))-Sw?M~qV=tjiG6V!R+P3|U@~X9kz$*y)6&xg2X9 zJG%x4H0p{*T@q?bmKGcxPTA^?DGj^DqTe^iqEgXXcp<#SrN<2W2CXegr9f#(vkH|n zioKl?6hkgw^4#0XIl7zk$jK%%vjU|(>7-yf${7xFinO5Rd#tJ*v27QfRyG&4TEer> zTwwb_pN~J?A~hk_NtE=IW6Q;pDNkO^SifM|KO@oW;bW|(DKCkJdd5sXwM#D3UEaVUXUK|bJl!u z_=@`Ay??n=Z>rZXsY^@cVt;YQoKd0Fx>`lMKB1W4g<$L}91Kg`-SAw$nKGGbI_(wC zUwoRC))Li{LFBsxVHKs@jCUsZ-qzij-Q9P;cYN@!{*LaxjnF63d+E2MWPLeop2MX( zq{SE+RQSf)GEONDMmhKQ1?%m3o_}tQ`SxWJu|q!G#hK4g(IUpSnQZ)%$-&;OFd4*)K{@96z2@9-A@4RGA08`k*c`2M{Zmp@&**dmyzBi$Y@y+hS( zF)JYmkMTu}8D_Zb5Mf5h=p^1Z8Q(u7FSPQV|8AVi=&h%awyy~6;Rhm`;0KfY;3bp@j%NB{r; M07*qoM6N<$g1IAy)c^nh literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-glasses32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-glasses32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..316405cf037211faf0532701d0619c63895d2ff5 GIT binary patch literal 2774 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 literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-grin24x24.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-grin24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..39e53dd13f45ecf23cff5e03cc6f48db6c87ef01 GIT binary patch literal 1867 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 IM6N<$f``Whga7~l literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-kiss24x24.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-kiss24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..3d433596c5b5cdf1fc64107b13bcf233f3c1218a GIT binary patch literal 1818 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 Hu0mjf*mN;m literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-monkey32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-monkey32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..d95f91d3fa6ab359266de3cd936a954c894a15a7 GIT binary patch literal 2445 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 b_&@j`H?bR8SW!dW00000NkvXXu0mjf8s$VK literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-plain32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-plain32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..9e884b1bcb9b33e1730a9aa523faad8f57e3c89d GIT binary patch literal 2579 zcmV+u3hecXP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4HY}WN!cj?001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000S6Nklu-Q$v zNRds_E!m2p5Rw8TcC>MEW#xrnAc_dZ ziDU_+q^3Bt*(1AO_nYoeRVRzr)X<{gWzME9aDn>&I_E!i{t}Mk`k%qIf97lP_MdRp zMXs5^H%;V<@vKN>jzC+LM1&H{ky^H+a{Fp+ ze&zXedU+vf&rOP{cfi#(nuZ&Kqe@3{NgKhZmhCnv$fEnZEVygspd>00CL z)hpGh`A(%XN!qI5nklx{M$#5yDySMHdejfm?1(Ttq8wxty^Q>5pX^|#J9xN$v-jC& z*NY)PH&=P*wZHo+3HRl+yB;gH$?IvIKdR54pPhN>_eeX_h$+zQ9y(elP9Lllz663NsB>d{hkpL8_OUdc9YUrEFuoE2GJ6UBP8aC3bx*9n5xm@ z$$|KL9Q^CYY<(>QNre|&${UTdS5{|U`W~)YAaR>G7=rk5&8ySLz{jUoKow$u;K3JA z^wI1g1dy1}SX?AMwSwGu=gMg3j!7Jkf%iWr@b;f_wpyWCm)6xvd*)(w@>D13Ok$)< z%pxidu{CVkL@G_NcC4H-5PZOjfHe>l$`TcWj{-UZjo506R6A7K)1Ai5nTttnf9<^= z=U4Z#aQFK^W9VGunkeH2_#8-ZnCy?6>E0T(QR-JskD)FER)UMLq52%#m3eli16KX zf`!Ei9&T^&_PcjMJ!j@Sd~2=6%*+HvkDwQbqh0Wdt6xA`%M6a5%;0rZ3a$e<6IhXe z5!>jv_9Eg(gi#3yVk{&Hc*~>5N4)#X``mf3N41i2dG!*Ql->QD_it=68Wo&dDmXQ_ z!rE#IE*YyV77zlqQb!sKh^jW~uMtKB$2=nV?Cc6#jW z^k}te`sNwR3S^n_%U*OdE2qcfPmcTFce(sr zi_7P}1tFl`gU``y3!fc8$RT9lbI<_Bpa>dCh~rDpVJO9bv57O1I#Gp?q25Bsu@s1{ zLc>C>3eJtwn-!3kUw=nW4TMXCan=B8Cz}7!$A@VG(0o-9+QW z$MKCO2K*48r%1F&?!gSlx)2#>K;!W&2oTCKSTTUS4_O~A2gg~6pZ^mHVCiAW0i0U4 z)nTBRjiV_j)7iY_MHHI5|uUh2E|PuZdi(O`&>AF;Jj^55?d`Q^7ZO8Mc6Pn+)tab!r1TiTw8xRgR(J(qt$AjoN7?;3t6Dt*e zv^_m~c#}$7am};it8{e0d_D5*^Oo7pJlijv$J4;L>K7Rh0gY%mz=lJbvd?VwkaMje znp?Cn3$+Ex!jf;S<9oY%IQc|V-5Hl4;RCg%UOd@&ZWv1B+^vJG>q5ik$ev`dW7w*WBLOam8e(BWC13=L9y|O;l?MFy`4vzn2)p; zHpeA!T*uHH?LN2?M!kJEJvUX4EijWHO1O7Y1Lf`D*J^eVqH=o!ir+joTN{-~{z@4aWc;{W|gqcwbg z@T#lwdh5BBYmL(vu2kC7ol2ugT8X&SV=6TyX^g$07>EJ&IhqfM*^sid6uF@o_Q`wu z-NELaoBezDua_A=ufN!M=cT_L^nR@^e@a4+$`yZ5{JU`y^mp&?54)S|A@Zi1NZ*oHa`z-Sfc(#oQ-15G z#aBuEL#xsMuiiy#c(FNGU#m_pUQQ_W8;9bvXZT@qZZ$;Tbdo_@Mv*002ovPDHLkV1oEj>#P6( literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-sad24x24.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-sad24x24.png new file mode 100644 index 0000000000000000000000000000000000000000..bd9b4950b0eed7d3252497ca11cdc1ec329ef203 GIT binary patch literal 1841 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 V*>9=xNsRyi002ovPDHLkV1gO9ZmIwP literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-smile-big32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-smile-big32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..5d3cfc28943b8322e5797f34b6dad7927a3a97f7 GIT binary patch literal 2613 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 literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-smile32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-smile32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..b2fb1d19d28b6b13a500268e39fcdecaf492cc62 GIT binary patch literal 2676 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 literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-surprise32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-surprise32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..c30cefea2ca6e7ae0521469111cb655d09388368 GIT binary patch literal 2665 zcmV-v3YPVWP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4HpWbp}Ua)001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000T7Nklcx@m!KlA;K*Y=Nu_G$>FsK!L8hE4sG3$|49FH-g>Er}Avho~XvJ^%N;H;b{_npTiy&+2aO`M!HToO8Y__&o0ZIo$q7z7#+CQ!Z)C zZE1KzTDD}#hOjJRm~jqI2nrNKr#P{SJ*&8H6~8PccYpVvczQnHc^v)n@G5YCFr+3N zk+dQZ7EhEy3WLB1oC6^Mg>cGAsh#H}ft4=Og4(O{oyQTcdihVkPu1;k%?o(Fwl=d} zS=zYjw=XVx^`(|jl_q$RvodfNC4@6Vlo>9MotgBD;Yly=9v&y1{m;gS!<{1MS7MV- zzxlUJzEFwp!tK8Yah~DNzC&FXY%t;5+UMQch0B|@i#KMYwXaaQxQ(7!Mg&bz6>t(< z0mT@Xb}0u(BnJDBWy(YGa;f{hoA~Z;Yx=P7DNHb7&ji04JV|7G1;I?+B@k_4tDR49zMF8 z$NX4s^TFGH^FO<*UEf zxc>F)_1A6?F0}E249qE`(J9Y610L-4_~gkDI(yR7 z909-h9|Ax5GcJVzwMf*qgPHlwaCWKbwHA=#44a&RHlPCriDCaFVdr6w{o@JWxLtq_ z=#C5z9`zUwJr>$^mX_h74#4!F?4l|WB5V^h7Mj($)lIL`z4_tyvhCB*$ZWbh-(h(=l<9gMh3k=noU3z%hs+GXdxb zatmevwt-Mhf?9*x;>K(;2ybNly*Hzj68Kchk~gFw@aHZrM{8SnGXXAr0%8a%09`?d zkV-A0*@~E{`-GuHY6(ga1e#_eU}=g16KT^1rO-jM4=sdb9 zQ}$jG*b)ZMn^|gAE^ed5b6oroJa5|XvI^3t(X4Z6ZH~>WiwLD@HA4`N_H2c%%_TOk zyvDU_S830+0E0t;3b64R6fe-#tBBerli}GMrMoV2?gD6O*boLORMgZn7ZCXX6UU$; zg!HC~grd=Gb7ixQ4j1@ZZ^YKsc`yU6thagh5AHD6o?~^nO%xQ6_b_ELZB>&(k)r$n zQCmi+s3l6)WJwD^3(KM~2%Hy*poz2vEJ#Cr+J=T13^=DWDgvp&8Jsf+XTgEM zAyolE3ce3Guo6-ql$>@-UO*g!NHDIz*%IMOoGHMT)4X0Z9bSeyh5$f2i{~t0ksxs} z1-B*6l+!6_3?>;uHkqzJ!RN2DU~{lNFa}qaP-bAw=inK_<~VDn_oT!ja25|c9fDd& z3LybuHMY>0983nK!kG-|a>_z+d_3aW$%M0h%3zc-iF1m)L|_R$Nu%mB-|)G#;IYzl zcqYaaF|JH;Wq~Vmum#`{k^+gDN}w2`5JHp@#Yj`cP!^yvC}Z-(qo0&K*d6lGy$+A| z`y4(WaM~Rc$0giV0)?-gTOp*QUkAjusEFH(lFrPI~S*osbI4dGdRYXxaTzc zR@0kGpt+9{K{-5WC(rH^G%I+ut00bGctkq!8O9Nl6pB(}okR$Q(jcV7Sc`K|T1jCQ zlT0#*A&p~PmOyhAqIHT~l67|}N1ao&_{90{#Z&^1UpghD{OsVh*px{9I)3{y6ba;y zsYpw!T49_>#zK?lV6DIyiLnyx+|(K%@sy-m(X?xhiZW0d2p1u`Mt<;w_;8nEbaLQ4 zdCyhM@l*oMT_m-n^K8o`ldjjkI2#!Sq6K<^^>&{-YaMn2pS`n?(~)A72y&+>twkzF zpdHn~(XLuHnj@~yXI!4wP+7sLd7Sge#zV%Pr`;m%KOo@4IOG|Ce)~r}1;Yn_G}#Fn zlif=1`SrZtX%cwgud=>iXzC+otAz1{a<&DLRn~NFE z*=49+A}d4kBs%!-F(QsxBi8lFBuYJ_?0od7au*eF3;YouWV4gaDkv*r(Ip* zy5FJhcj?V0jFXZyw;1D)!VzdeEtItC0V_*O%q`5J!#N5QGI@T?=xCp$dvxDe{;jlp z{7O$)yHo$v9cAU{@m@PQ+`EEv3;x_iL}d-(EwSW2Wzp+FQB0?wGvL5E2TlMU!i%7_ z3XM%l=TQ#N7$5D^+xhv6GUu+o;J@$P2p;jTqgT7)|NcR>9{*x;M~A#q-&nt0y>MkK zXv{amdV?^6Ff`L$;QOFF5OTU~${ey3(wsDvBnf1b0om}hKRJGUfBaBaY?QtH+e-3o)Lz-FEpE(4D_5zkY@%kC5Mc}9Ri}o-meYSh+@%~G zlN|06AAZKT^RyfHk9UpbJ>Br%7j(ukZPM?T7gnN&H>CI{uH*rjmTMwiw+E z+ZS$lt)*36o0}6VYJnFzrvQP#fheaF&cwZPbb4C!pC6>%;|Jr@E-`_tsyI zzVI`8i7WUm@!?;nZ7gpJV{c;Iby2b=N)|BGoy8N90>#K_UO3G@T72R>c@M>hZ~oBi z{I>l1Jfrh*Ha2^ap%giLqTsG9X~~!S+@g>e6q(hGtfuFD_rg`o@yk9xAHNCb|1EwE XV`cFaILWn{00000NkvXXu0mjfV2bPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4h0U}ez5`o001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000JYNklb1-?#Q&d#_IbTzm@vo_~)goPC{MNAZ%S z7?%+TgrZ^;X(5P>P1V@UD4Wa5=Ir?IIKvJuzV%c~>@0q7F0k(h#~e|`_x5=Qt)zd# zl8J*t$sr<9G74V^Vr({ytrrZ@l!{xI;#&RRTMI17@l^ZxF9Hp4@h6Wo?VZm3fBe2} z*^Gz|-t^quSa#@0PkMOFcDe=};pQxZBZY}2QKP6fSMu8nlLwkJmtS75U3tan;*{Bp zJ_0s&YKljlpQHZ|uiEzC7EbylzSlYW?UVkVfwEU9lE^2p(|JT92e=3wW7-YWW|ek* zlh%5ZU~M^U%wC(Q-MIZPo#iiM@3Z(NgLALpST-XG#ZOba2Vd*??(3u~13(>JpTwvw zgml1I2%`}?Mn@4Odm+(-+778+I>XwPkMBmJ_494P>Epkl`s9j46(;NOmKn00Bm6Y)gO?$WWnLEp+2^M6Ad^vmdvs+`WAM)Z5{`<`(dG0Q>A4 z^m<-$&~vk6eyOkQRr=7u4TKD_+$6{ZSQ4ZIR*vb<7g?CUN8g?-ySqBbcqvqK88=e^ zC!g#n?mZ-#KX&0~!R5B*zI0+=>0+I4b=Q^nLc91UipuG~xNRlZJAvF1{N4e5VCR+d_ zky2pdEsR#Ug+Ao`?UIZbCc?FaqC$)%oU|pKCQ2*9P?O91bX5wFC^Pn=2U0^Evb)>o zTVo>}IrMdQ@9Ki6P8deeZe!Ul(l3Bn=LAAJ_jbx4>h)aF@PeTWy-Ddr{E2@Dn{#wSMDNMeK(Qn*qIL_65v z>K6;h`Mvb^v?*0$a=8qyqtWdxR14y;MYyfFeruMwnOSm)n88E{eiL*E!XPBEkzgB} zs&IrOl_?TMmI|A!)#lg;TCA@p=&NnenNMRo4y~4Ab+tyb-eh+n#pI0@X71EDakw9u z+y>g{?K;A=F*fUfvW>%xv5l`b@8-2wvJ#fXHxD0Veam63y1~TcDtA|6me*n)tcO?< zin%0v%boO>l6>dH2!mf8Cofje+jG#Uf@(fAF7sLv+s5Ux5pgk?pEy95i<2Fstd`08 zA-TLqN3KNAK$d#ovl+O!$qd5Qh*#joJ4&EX^)WOsEl+*`m-_JOktL=Nmc$P`2&1Z$YaBC0Ws!J-{0 znhR5e5AWT?<5Qz(*+<{w%;g`}2RAmZzv6cHb#;{YB?SFgwHd_5BC)%PvL}(kK_~~I z1x71O)W)Sda(6T z?fh&ptS(mELZ#bJ_9ZPhjj-xqQV3~*5g7BozY!~pKaBRDA=(a1W9eFRZSu+`tCJ6k z?~YFK*NLZj@R&<)P_b-z!gBn#I|@CA(&Zs1-M=5F(1%PF!0{dhPOFBhEfU6}3MQE>nkpP4FaeCf;!w{bl=UVE>q6w8*hcIdv>m8W?qpeZA7nlpv8b zMj|jEBGAFZsD6JrtlqiVSX%ldY;msp-O;JxXD1?niFe$mCwN@!G`jF3%CgOI(dIcB zF)SkXm>6G3Vq>#zT;_Fxt9X2R^jD7t`k0+fe<}2L5-ILGihqij(?qx;#wJD>34qd) gSX+cf(c=H`Uy*74?MdC*#Q*>R07*qoM6N<$g5lD1BLDyZ literal 0 HcmV?d00001 diff --git a/debian/tmp/usr/share/tietoopcom/emoticons/face-wink32x32.png b/debian/tmp/usr/share/tietoopcom/emoticons/face-wink32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..4923c12db207bcfcf6dc7d3f6776280d71f77a1f GIT binary patch literal 2668 zcmV-y3X}DTP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXG+ z4hIjJPvaH<001>~MObu0Z*6U5Zgc=BV<{jqFfcSAN?~htVjxp=Wod3@ataDVa%Ew3 zWn>_CX>@2HRA^-&M@dakklBlG000TANkl6 z8GCHE+jhIBzurf`kE(iA_g)syhD?v6EcvhQ>iqxr9G!FiM|gpoe+W1JjxXUS-{+jR z+)#$EDa#dAvM!cI40Y%5MJVt%aUT2DW7~S%wH_ariksj1dv;F8JI$kCK3+u*P^nNA zN35)bV)3OEB?iF=&VdNvAUr(>(I3pa1mFNZcJR`ysDa&(^O- zOY4_{&e>(ZzSt5KH$lhFs?b?H5obio9HtXjPWr`gzc)R8wwE40`E0a%a;KQ`3)$q} zH~)(97c%k3aN}=4PAmMkKcc1!)*16%9q?ZD%*D;>+H39j>{p1^uA=M9NZ14~0;j+g zP>gU{mvZo&^w}p&p5A4&d%ru{e|*0z-1|g)P-?c{`CEpk`Q$XY`HZ)ND(^P7F5gJb zUAQ2abfPw-z8{v5H-bRk8$aJOl}bs03J92 zYr&SdG6yU8$r^t960!A|_K%w`&)&**A8t5tNXqk{{*Z^?{PX`ShxhXFy%yKB<~xmx zmw%_Rb$zRLeuK(<4KFAV#^6#Ahj;<#04E-z6gu!xl@QMl@w^aG8eECk6tNlN1TStT zs-oQVxF_XfdjIeVpMNO>e#q-O;JxJBm94oqzm2Zsh~39d3@8O&2;n>^0ReGeE2U9S(&f!jn`MXywRrCUcgg=$w%OFL~_Dvjq2ihI~_!?<^4z3)yWqP44d>HwEM zM4|vuRfc23)7=RN-Hg4X5&wGYDNpuB%&%|p#&wIeCH<3>IE2BdBrohQHMqg1hfq3n zyn)otGCnz;qjXy`e@N#jSh$g1f>M$3alwnVT>fph!?k{EV0Jni~(m+ zeuS;G!1)y^Sx|=BtPKry3|LcYi$N&B=1eAzqAaL39bw&vpaNbDIsh?Hj!^c5uUuZH zp8OV_c87B-9a>R=vOTg%kHKI}kdBExhjzftSOYW8QNtylQJCU z^h`+GC>H$+UM0nN6Ho=X63Q-=12)cg*tl>JoCjrw^L^ne*t;4v)8=piD-)Vu<_#r*p)lV2jx_RTL=9On}D;9-@?vl~o!Glv7TIdpy}2 zV3}}m=(BnzV|ArRvk_CN_yDA7!NI|R?(vXDq6xI{pC9k?@!dVv7HfR{QXQuva5)qi zZaPLV;4#D_2hh%A-)R&~7i@Z*cv%-$WON!eF0R)|^D0t~IXrsC{=puF@yMnyN-g8G zBu_Ii1)XL@s}V6tbIvX|IDh^k3+LBJ)EwBSSVG*S3pUG~=D_ONR@ByKTWNe-4ui74 zGcUz4SjF=EBGGb{QEKV+3ZCpv*m+j4cW5~1S&sT8bj&d6gquW(_h!5dpO zmdZSdb1K}?&3*Up6qwhr+2Y6hpwI@ri*6>L{&!= z2Sl|R3rh`7CJCb~Vx0LDrB7I?k|YU998!xli?x#Zs-+r71kyvR5_C*4=#%val%wtu zT0V7wJD8Qg=VRxoczV2hVPXp8{6+NKIy##olWlYYNvqA7;Mhw_(Dx`Rj^AwhHl zbOH`A8RUIjc8D8)jvF5VU>)RxVix!dM2se3(n>+`b&76pJILiwGFGPrsM9WBH1@Su=8#3D8XLN9zwDhmRh1(%pv}xZhj|7S@rZiG)i?35@z+WOfX=nI&@KW+nxTs0vg! zpm`N570Tg&@!_ZR?)=9=IpwB46MW#m7Cz*khOc(T|NX53ZC&Br+J*HS$(fBS zVZGA~lNv#2(1Ae(5fa2RZzuxR;L04AkFnW=qVSmJis@uTKJ50#dynpp9`D>NGCqvI zntb%;UyO&p(w4sz;ZBP6vN!#%r+6>!tZY^n*W2;RC8Cv0y!sMSX(4_B$^%=@?t)2| zate;;moimz4| z<7<`9%4>dWX;oL}=ERFy;8&dU06}mdCAcDUX3{H%M@L0}?^)K}`($*K-Zqw>SAU~+ z|II%ge&I5D$t(OC-1-ymDwgYF>@|$rl9IDhvVfuHEWRiTJcdql;51Lr@~QLHZ9HyW z|B<=#>*DLvicaHrWVT~NDO0wk;HD~Rsh9iQ;-N5j on +Wed, 22 Oct 2008 10:57:00 +0100. + + +Tieto Open Communicator +Copyright (c) 2010, Tieto Corporation +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + Neither the name of the Tieto Corporation nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + diff --git a/debian/tmp/usr/share/tietoopcom/stylesheets/default.qss b/debian/tmp/usr/share/tietoopcom/stylesheets/default.qss new file mode 100644 index 0000000..05ad448 --- /dev/null +++ b/debian/tmp/usr/share/tietoopcom/stylesheets/default.qss @@ -0,0 +1,97 @@ +QFrame { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} + +QComboBox { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} + +QLineEdit { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} + +QPushButton { + border: 5px solid darkgrey; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); + color: white; +} + +QPushButton#contactsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} + +QPushButton#settingsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} + +QPushButton#statusAreaButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} + +QLabel#statusAreaLabel:enabled { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} + +QLabel#statusAreaLabel:!enabled { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); + color: white; +} + +QPushButton#scrollUpButton:!enabled { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); + color: white; +} + +QPushButton#scrollDownButton:!enabled { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); + color: white; +} + +QMenu::item { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); + color: white; +} + +QMenu::separator { + background: grey; +} + +QMessageBox { + background: white; +} + +QMessageBox > QLabel { + background: none; +} + +QListView::item:selected:active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); +} + +QListView::item:selected:!active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #a00, stop: 0.55 #b00, stop: 0.56 #b00, stop: 1 #f00); +} + +TocContactListWidget { + qproperty-logoColor: "red"; +} diff --git a/debian/tmp/usr/share/tietoopcom/stylesheets/my.qss b/debian/tmp/usr/share/tietoopcom/stylesheets/my.qss new file mode 100644 index 0000000..8265e69 --- /dev/null +++ b/debian/tmp/usr/share/tietoopcom/stylesheets/my.qss @@ -0,0 +1,69 @@ +QFrame { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QComboBox { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QLineEdit { + color: black; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); +} +QPushButton { + border: 5px solid darkgrey; + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QPushButton#contactsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QPushButton#settingsButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QPushButton#statusAreaButton:checked { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +QLabel#statusAreaLabel[checked="true"] { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #fff, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #aaa); + color: white; +} +TecMainToolbar > QLabel { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QMenu::item { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); + color: white; +} +QListView::item:selected:active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0b0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); +} +QListView::item:selected:!active { + background: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #0a0, stop: 0.55 #0b0, stop: 0.56 #0b0, stop: 1 #0f0); +} +QMessageBox { + background: white; +} + +QMessageBox > QLabel { + background: none; +} + +TocContactListWidget { + qproperty-logoColor: "green"; +} \ No newline at end of file diff --git a/description b/description new file mode 100644 index 0000000..498b267 --- /dev/null +++ b/description @@ -0,0 +1 @@ +Unnamed repository; edit this file 'description' to name the repository. diff --git a/hooks/applypatch-msg.sample b/hooks/applypatch-msg.sample new file mode 100755 index 0000000..8b2a2fe --- /dev/null +++ b/hooks/applypatch-msg.sample @@ -0,0 +1,15 @@ +#!/bin/sh +# +# An example hook script to check the commit log message taken by +# applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. The hook is +# allowed to edit the commit message file. +# +# To enable this hook, rename this file to "applypatch-msg". + +. git-sh-setup +test -x "$GIT_DIR/hooks/commit-msg" && + exec "$GIT_DIR/hooks/commit-msg" ${1+"$@"} +: diff --git a/hooks/commit-msg.sample b/hooks/commit-msg.sample new file mode 100755 index 0000000..6ef1d29 --- /dev/null +++ b/hooks/commit-msg.sample @@ -0,0 +1,24 @@ +#!/bin/sh +# +# An example hook script to check the commit log message. +# Called by git-commit with one argument, the name of the file +# that has the commit message. The hook should exit with non-zero +# status after issuing an appropriate message if it wants to stop the +# commit. The hook is allowed to edit the commit message file. +# +# To enable this hook, rename this file to "commit-msg". + +# Uncomment the below to add a Signed-off-by line to the message. +# Doing this in a hook is a bad idea in general, but the prepare-commit-msg +# hook is more suited to it. +# +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" + +# This example catches duplicate Signed-off-by lines. + +test "" = "$(grep '^Signed-off-by: ' "$1" | + sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || { + echo >&2 Duplicate Signed-off-by lines. + exit 1 +} diff --git a/hooks/post-commit.sample b/hooks/post-commit.sample new file mode 100755 index 0000000..2266821 --- /dev/null +++ b/hooks/post-commit.sample @@ -0,0 +1,8 @@ +#!/bin/sh +# +# An example hook script that is called after a successful +# commit is made. +# +# To enable this hook, rename this file to "post-commit". + +: Nothing diff --git a/hooks/post-receive.sample b/hooks/post-receive.sample new file mode 100755 index 0000000..7a83e17 --- /dev/null +++ b/hooks/post-receive.sample @@ -0,0 +1,15 @@ +#!/bin/sh +# +# An example hook script for the "post-receive" event. +# +# The "post-receive" script is run after receive-pack has accepted a pack +# and the repository has been updated. It is passed arguments in through +# stdin in the form +# +# For example: +# aa453216d1b3e49e7f6f98441fa56946ddcd6a20 68f7abf4e6f922807889f52bc043ecd31b79f814 refs/heads/master +# +# see contrib/hooks/ for a sample, or uncomment the next line and +# rename the file to "post-receive". + +#. /usr/share/doc/git-core/contrib/hooks/post-receive-email diff --git a/hooks/post-update.sample b/hooks/post-update.sample new file mode 100755 index 0000000..5323b56 --- /dev/null +++ b/hooks/post-update.sample @@ -0,0 +1,8 @@ +#!/bin/sh +# +# An example hook script to prepare a packed repository for use over +# dumb transports. +# +# To enable this hook, rename this file to "post-update". + +exec git-update-server-info diff --git a/hooks/pre-applypatch.sample b/hooks/pre-applypatch.sample new file mode 100755 index 0000000..b1f187c --- /dev/null +++ b/hooks/pre-applypatch.sample @@ -0,0 +1,14 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed +# by applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. +# +# To enable this hook, rename this file to "pre-applypatch". + +. git-sh-setup +test -x "$GIT_DIR/hooks/pre-commit" && + exec "$GIT_DIR/hooks/pre-commit" ${1+"$@"} +: diff --git a/hooks/pre-commit.sample b/hooks/pre-commit.sample new file mode 100755 index 0000000..439eefd --- /dev/null +++ b/hooks/pre-commit.sample @@ -0,0 +1,46 @@ +#!/bin/sh +# +# An example hook script to verify what is about to be committed. +# Called by git-commit with no arguments. The hook should +# exit with non-zero status after issuing an appropriate message if +# it wants to stop the commit. +# +# To enable this hook, rename this file to "pre-commit". + +if git-rev-parse --verify HEAD >/dev/null 2>&1 +then + against=HEAD +else + # Initial commit: diff against an empty tree object + against=4b825dc642cb6eb9a060e54bf8d69288fbee4904 +fi + +# If you want to allow non-ascii filenames set this variable to true. +allownonascii=$(git config hooks.allownonascii) + +# Cross platform projects tend to avoid non-ascii filenames; prevent +# them from being added to the repository. We exploit the fact that the +# printable range starts at the space character and ends with tilde. +if [ "$allownonascii" != "true" ] && + # Note that the use of brackets around a tr range is ok here, (it's + # even required, for portability to Solaris 10's /usr/bin/tr), since + # the square bracket bytes happen to fall in the designated range. + test "$(git diff --cached --name-only --diff-filter=A -z $against | + LC_ALL=C tr -d '[ -~]\0')" +then + echo "Error: Attempt to add a non-ascii file name." + echo + echo "This can cause problems if you want to work" + echo "with people on other platforms." + echo + echo "To be portable it is advisable to rename the file ..." + echo + echo "If you know what you are doing you can disable this" + echo "check using:" + echo + echo " git config hooks.allownonascii true" + echo + exit 1 +fi + +exec git diff-index --check --cached $against -- diff --git a/hooks/pre-rebase.sample b/hooks/pre-rebase.sample new file mode 100755 index 0000000..be1b06e --- /dev/null +++ b/hooks/pre-rebase.sample @@ -0,0 +1,169 @@ +#!/bin/sh +# +# Copyright (c) 2006, 2008 Junio C Hamano +# +# The "pre-rebase" hook is run just before "git-rebase" starts doing +# its job, and can prevent the command from running by exiting with +# non-zero status. +# +# The hook is called with the following parameters: +# +# $1 -- the upstream the series was forked from. +# $2 -- the branch being rebased (or empty when rebasing the current branch). +# +# This sample shows how to prevent topic branches that are already +# merged to 'next' branch from getting rebased, because allowing it +# would result in rebasing already published history. + +publish=next +basebranch="$1" +if test "$#" = 2 +then + topic="refs/heads/$2" +else + topic=`git symbolic-ref HEAD` || + exit 0 ;# we do not interrupt rebasing detached HEAD +fi + +case "$topic" in +refs/heads/??/*) + ;; +*) + exit 0 ;# we do not interrupt others. + ;; +esac + +# Now we are dealing with a topic branch being rebased +# on top of master. Is it OK to rebase it? + +# Does the topic really exist? +git show-ref -q "$topic" || { + echo >&2 "No such branch $topic" + exit 1 +} + +# Is topic fully merged to master? +not_in_master=`git-rev-list --pretty=oneline ^master "$topic"` +if test -z "$not_in_master" +then + echo >&2 "$topic is fully merged to master; better remove it." + exit 1 ;# we could allow it, but there is no point. +fi + +# Is topic ever merged to next? If so you should not be rebasing it. +only_next_1=`git-rev-list ^master "^$topic" ${publish} | sort` +only_next_2=`git-rev-list ^master ${publish} | sort` +if test "$only_next_1" = "$only_next_2" +then + not_in_topic=`git-rev-list "^$topic" master` + if test -z "$not_in_topic" + then + echo >&2 "$topic is already up-to-date with master" + exit 1 ;# we could allow it, but there is no point. + else + exit 0 + fi +else + not_in_next=`git-rev-list --pretty=oneline ^${publish} "$topic"` + perl -e ' + my $topic = $ARGV[0]; + my $msg = "* $topic has commits already merged to public branch:\n"; + my (%not_in_next) = map { + /^([0-9a-f]+) /; + ($1 => 1); + } split(/\n/, $ARGV[1]); + for my $elem (map { + /^([0-9a-f]+) (.*)$/; + [$1 => $2]; + } split(/\n/, $ARGV[2])) { + if (!exists $not_in_next{$elem->[0]}) { + if ($msg) { + print STDERR $msg; + undef $msg; + } + print STDERR " $elem->[1]\n"; + } + } + ' "$topic" "$not_in_next" "$not_in_master" + exit 1 +fi + +exit 0 + +################################################################ + +This sample hook safeguards topic branches that have been +published from being rewound. + +The workflow assumed here is: + + * Once a topic branch forks from "master", "master" is never + merged into it again (either directly or indirectly). + + * Once a topic branch is fully cooked and merged into "master", + it is deleted. If you need to build on top of it to correct + earlier mistakes, a new topic branch is created by forking at + the tip of the "master". This is not strictly necessary, but + it makes it easier to keep your history simple. + + * Whenever you need to test or publish your changes to topic + branches, merge them into "next" branch. + +The script, being an example, hardcodes the publish branch name +to be "next", but it is trivial to make it configurable via +$GIT_DIR/config mechanism. + +With this workflow, you would want to know: + +(1) ... if a topic branch has ever been merged to "next". Young + topic branches can have stupid mistakes you would rather + clean up before publishing, and things that have not been + merged into other branches can be easily rebased without + affecting other people. But once it is published, you would + not want to rewind it. + +(2) ... if a topic branch has been fully merged to "master". + Then you can delete it. More importantly, you should not + build on top of it -- other people may already want to + change things related to the topic as patches against your + "master", so if you need further changes, it is better to + fork the topic (perhaps with the same name) afresh from the + tip of "master". + +Let's look at this example: + + o---o---o---o---o---o---o---o---o---o "next" + / / / / + / a---a---b A / / + / / / / + / / c---c---c---c B / + / / / \ / + / / / b---b C \ / + / / / / \ / + ---o---o---o---o---o---o---o---o---o---o---o "master" + + +A, B and C are topic branches. + + * A has one fix since it was merged up to "next". + + * B has finished. It has been fully merged up to "master" and "next", + and is ready to be deleted. + + * C has not merged to "next" at all. + +We would want to allow C to be rebased, refuse A, and encourage +B to be deleted. + +To compute (1): + + git-rev-list ^master ^topic next + git-rev-list ^master next + + if these match, topic has not merged in next at all. + +To compute (2): + + git-rev-list master..topic + + if this is empty, it is fully merged to "master". diff --git a/hooks/prepare-commit-msg.sample b/hooks/prepare-commit-msg.sample new file mode 100755 index 0000000..3652424 --- /dev/null +++ b/hooks/prepare-commit-msg.sample @@ -0,0 +1,36 @@ +#!/bin/sh +# +# An example hook script to prepare the commit log message. +# Called by git-commit with the name of the file that has the +# commit message, followed by the description of the commit +# message's source. The hook's purpose is to edit the commit +# message file. If the hook fails with a non-zero status, +# the commit is aborted. +# +# To enable this hook, rename this file to "prepare-commit-msg". + +# This hook includes three examples. The first comments out the +# "Conflicts:" part of a merge commit. +# +# The second includes the output of "git diff --name-status -r" +# into the message, just before the "git status" output. It is +# commented because it doesn't cope with --amend or with squashed +# commits. +# +# The third example adds a Signed-off-by line to the message, that can +# still be edited. This is rarely a good idea. + +case "$2,$3" in + merge,) + perl -i.bak -ne 's/^/# /, s/^# #/#/ if /^Conflicts/ .. /#/; print' "$1" ;; + +# ,|template,) +# perl -i.bak -pe ' +# print "\n" . `git diff --cached --name-status -r` +# if /^#/ && $first++ == 0' "$1" ;; + + *) ;; +esac + +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" diff --git a/hooks/update.sample b/hooks/update.sample new file mode 100755 index 0000000..fd63b2d --- /dev/null +++ b/hooks/update.sample @@ -0,0 +1,128 @@ +#!/bin/sh +# +# An example hook script to blocks unannotated tags from entering. +# Called by git-receive-pack with arguments: refname sha1-old sha1-new +# +# To enable this hook, rename this file to "update". +# +# Config +# ------ +# hooks.allowunannotated +# This boolean sets whether unannotated tags will be allowed into the +# repository. By default they won't be. +# hooks.allowdeletetag +# This boolean sets whether deleting tags will be allowed in the +# repository. By default they won't be. +# hooks.allowmodifytag +# This boolean sets whether a tag may be modified after creation. By default +# it won't be. +# hooks.allowdeletebranch +# This boolean sets whether deleting branches will be allowed in the +# repository. By default they won't be. +# hooks.denycreatebranch +# This boolean sets whether remotely creating branches will be denied +# in the repository. By default this is allowed. +# + +# --- Command line +refname="$1" +oldrev="$2" +newrev="$3" + +# --- Safety check +if [ -z "$GIT_DIR" ]; then + echo "Don't run this script from the command line." >&2 + echo " (if you want, you could supply GIT_DIR then run" >&2 + echo " $0 )" >&2 + exit 1 +fi + +if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then + echo "Usage: $0 " >&2 + exit 1 +fi + +# --- Config +allowunannotated=$(git config --bool hooks.allowunannotated) +allowdeletebranch=$(git config --bool hooks.allowdeletebranch) +denycreatebranch=$(git config --bool hooks.denycreatebranch) +allowdeletetag=$(git config --bool hooks.allowdeletetag) +allowmodifytag=$(git config --bool hooks.allowmodifytag) + +# check for no description +projectdesc=$(sed -e '1q' "$GIT_DIR/description") +case "$projectdesc" in +"Unnamed repository"* | "") + echo "*** Project description file hasn't been set" >&2 + exit 1 + ;; +esac + +# --- Check types +# if $newrev is 0000...0000, it's a commit to delete a ref. +zero="0000000000000000000000000000000000000000" +if [ "$newrev" = "$zero" ]; then + newrev_type=delete +else + newrev_type=$(git-cat-file -t $newrev) +fi + +case "$refname","$newrev_type" in + refs/tags/*,commit) + # un-annotated tag + short_refname=${refname##refs/tags/} + if [ "$allowunannotated" != "true" ]; then + echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2 + echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2 + exit 1 + fi + ;; + refs/tags/*,delete) + # delete tag + if [ "$allowdeletetag" != "true" ]; then + echo "*** Deleting a tag is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/tags/*,tag) + # annotated tag + if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1 + then + echo "*** Tag '$refname' already exists." >&2 + echo "*** Modifying a tag is not allowed in this repository." >&2 + exit 1 + fi + ;; + refs/heads/*,commit) + # branch + if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then + echo "*** Creating a branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/heads/*,delete) + # delete branch + if [ "$allowdeletebranch" != "true" ]; then + echo "*** Deleting a branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + refs/remotes/*,commit) + # tracking branch + ;; + refs/remotes/*,delete) + # delete tracking branch + if [ "$allowdeletebranch" != "true" ]; then + echo "*** Deleting a tracking branch is not allowed in this repository" >&2 + exit 1 + fi + ;; + *) + # Anything else (is there anything else?) + echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2 + exit 1 + ;; +esac + +# --- Finished +exit 0 diff --git a/include/TocEngine/TocBaseEngine b/include/TocEngine/TocBaseEngine new file mode 100644 index 0000000..11d6dbc --- /dev/null +++ b/include/TocEngine/TocBaseEngine @@ -0,0 +1 @@ +#include "tocbaseengine.h" diff --git a/include/TocEngine/TocEngine b/include/TocEngine/TocEngine new file mode 100644 index 0000000..27eafbb --- /dev/null +++ b/include/TocEngine/TocEngine @@ -0,0 +1 @@ +#include "tocengine.h" diff --git a/include/TocEngine/TocEngine.pri b/include/TocEngine/TocEngine.pri new file mode 100644 index 0000000..b778ed3 --- /dev/null +++ b/include/TocEngine/TocEngine.pri @@ -0,0 +1,11 @@ +DEPENDPATH += \ + $$PWD + +INCLUDEPATH += \ + $$PWD + +HEADERS += \ + TocBaseEngine \ + tocbaseengine.h \ + TocEngine \ + tocengine.h diff --git a/include/TocEngine/tocbaseengine.h b/include/TocEngine/tocbaseengine.h new file mode 100644 index 0000000..8a990bb --- /dev/null +++ b/include/TocEngine/tocbaseengine.h @@ -0,0 +1,191 @@ +/** \file TocBaseEngine.h + * \brief Declaration of TocBaseEngine class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCBASEENGINE_H +#define TOCBASEENGINE_H + +#include "defs.h" + +QT_BEGIN_NAMESPACE + +/** \brief TocBaseEngine class + * + * Abstract class representing the engine's public interface + * this interface is used by TocBaseUi + */ +class TocBaseEngine : public QObject +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocBaseEngine( QObject * parent = 0 ); + + /** + * Destructor + */ + ~TocBaseEngine(); + +signals: + + /** \brief Notifies about connection status change + * + * Useful when the server disconnects us + * without our request to show the information to the user. + * + * @param status Connection status + * @param reason Status change reason + */ + void statusChanged(Status status, Reason reason); + + /** \brief Notifies about user presence change + * + * Used to confirm presence change request. + * + * @param presence User presence + * @param description Presence description + */ + void presenceUpdated(Presence presence, QString description); + + /** \brief Notifies about user presence change + * + * @param uid Contact's user ID + * @param presence Contact's presence + * @param description Presence description + */ + void contactPresenceUpdated(QString uid, Presence presence, QString description); + + /** \brief Notifies about incoming messages + * + * Emited when there is a new pending message to be handled. + * + * @param uid Contact's user ID + * @param message Message to be handled + */ + void incomingMessage(QString uid, Message message); + + /** \brief Notifies if there is a new ContactList ready + * + * Full contact list is sent only on TocEngine's startup, + * then it sends only the elements that have changed. ( TODO: to be discussed ) + * + * @param contactList New contact list to be displayed + */ + void contactListReceived(const TocContactList& contactList); + + /** \brief Notifies about accepted subscription + * + * This signal tells us if the contact we wanted to add + * to our contact list, authorized our request. + * + * @param uid ID of the contact that accepted our subscription request + */ + void subscriptionAccepted(QString uid); + + /** \brief Notifies about authorization request from contact + * + * This signal tells us that there is a contact that requested + * our authorization to let him add our ID to his contact list. + * + * @param uid ID of a contact that requested our authorization + */ + void authorizationRequest(QString uid); + +public slots: + + /** \brief Used to initialize engine's parameters on startup + * + * This slot also needs to be called when account or connection settings have changed. + */ + virtual void initializeFromSettings() = 0; + + /** \brief Used to handle status change request from the UI + * + * @param presence Requested presence + * @param description Requested description + */ + virtual void onPresenceChange(Presence presence, QString description) = 0; + + /** \brief Closes the channel(s) created for the given contact + * + * When user wants to quit the conversation this slot should be called. + * + * @param uid User ID of the contact + */ + virtual void onSessionClosed(QString uid) = 0; + + /** \brief Called when User wants to send a message to the contact + * + * @param uid Contact's ID + * @param message Message to be sent + */ + virtual void onNewMessageReady(QString uid, Message message) = 0; + + /** \brief Used to add contact to the contact list + * + * @param pContact Pointer to a contact to be added. + */ + virtual void onAddContactRequest(TocContact *pContact) = 0; + + /** \brief Used to edit existing contact data + * + * We also allow user to change the ID of the contact. + * + * @param pContact Pointer to a contact to be altered. + * @param uid Contact's old ID + */ + virtual void onEditContactRequest(TocContact *pContact, QString oldUid) = 0; + + /** \brief This slot removes a contact from contact list + * + * @param uid Contact's ID + */ + virtual void onRemoveContactRequest(QString uid) = 0; + + /** \brief Used when we want to change contacts subscription to our account + * + * If we want to grant our authorization to the contact's subscritpion request, + * set the `authorized` flag to true, + * if we do not want the contact to have subscription to our account + * set the `authorized` flag to false. + * + * @param uid ID of a contact which sibscription we want to change + * @param bAuthorized Authorization status + */ + virtual void onSubscriptionAccepted(QString uid, bool bAuthorized) = 0; +}; + +QT_END_NAMESPACE + +#endif // TOCBASEENGINE_H diff --git a/include/TocEngine/tocengine.h b/include/TocEngine/tocengine.h new file mode 100644 index 0000000..0510037 --- /dev/null +++ b/include/TocEngine/tocengine.h @@ -0,0 +1,239 @@ +/** \file TocBaseEngine.h + * \brief Declaration of TocBaseEngine class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCENGINE_H +#define TOCENGINE_H + +#include "TocBaseEngine" +#include +#include + +namespace QtTapioca { + class ContactBase; +}; + +using namespace QtTapioca; + +QT_BEGIN_NAMESPACE + +/** \brief TocEngine class + * + * Wrapper around the QtTapioca/QtTelepathy communication framework, + * responsible for managing opened channels and connection(s), + * and for synchronizaion beetween our contact list and the one we get from the telepathy. + */ +class TocEngine : public TocBaseEngine +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocEngine( QObject * parent = 0 ); + + /** + * Destructor + */ + ~TocEngine(); + +signals: + +public slots: + + /** \brief Reimplemented from TocBaseEngine + * + */ + void onPresenceChange(Presence presence, QString description); + + /** \brief Reimplemented from TocBaseEngine + * + */ + void onAddContactRequest(TocContact* pContact); + + /** \brief Reimplemented from TocBaseEngine + * + */ + void onEditContactRequest(TocContact* pContact, QString oldUid); + + /** \brief Reimplemented from TocBaseEngine + * + */ + void onRemoveContactRequest(QString uid); + + /** \brief Reimplemented from TocBaseEngine + * + */ + void onSubscriptionAccepted(QString /*uid*/, bool /*bAuthorized*/) {} + + /** \brief Reimplemented from TocBaseEngine + * + */ + void initializeFromSettings(); + + /** \brief Called when User wants to send a message to the contact + * + * @param uid Contact's ID + * @param message Message to be sent + */ + virtual void onNewMessageReady(QString uid, Message message); + + /** \brief Closes the channel(s) created for the given contact + * + * When user wants to quit the conversation this slot should be called. + * + * @param uid User ID of the contact + */ + virtual void onSessionClosed(QString uid); + +private slots: + + /** \brief Used when connection status was changed + * + * @param pConnection Handler to QtTapioca connection + * @param status Status of connection + * @param reason Reason of status change + */ + void onStatusChange(QtTapioca::Connection *pConnection, QtTapioca::Connection::Status status, QtTapioca::Connection::Reason reason); + + /** \brief Used when contact presence was changed + * + * @param pContact Contact item which changed its presence + * @param presence Actual contact's presence + * @param presenceMessage Actual contact's presence message + */ + void onPresenceUpdated(QtTapioca::ContactBase *pContact, QtTapioca::ContactBase::Presence presence, const QString &presenceMessage); + + /** \brief Used when user presence was changed + * + * @param pContact Contact item which changed its presence + * @param presence Actual users's presence + * @param presenceMessage Actual users's presence message + */ + void onSelfPresenceUpdated(QtTapioca::ContactBase *pContact, QtTapioca::ContactBase::Presence presence, const QString &presenceMessage); + + /** \brief Used when user receives message + * + * @param pTextChannel Channel from whom we recieved message + * @param message received message + */ + void onMessageReceived(const QtTapioca::TextChannel* pTextChannel, const QtTapioca::TextChannel::Message &message); + + /** \brief Used when message has not been sent + * + * When an error occured this slot prepares a Message with a proper 'error' field value + * + * @param message Message for which an error occured + * @param error Error type + */ + void onMessageDeliveryError(const QtTapioca::TextChannel::Message &message, QtTapioca::TextChannel::Message::DeliveryError error); + + /** \brief Called when someone wants to initiate chat with user + * + * To receive message that initiated this channel one should call pendingMessages method + * + * @param pConnection Connection on which new channel is created + * @param pChannel Newly created channel + * @param bSuppresHandler Used to notify other channel handlers that they should not use this channel object + */ + void onChannelCreated(QtTapioca::Connection* pConnection, QtTapioca::Channel* pChannel, bool bSuppresHandler); + + + /** \brief Authorizes a contact and add it to users list + * + * TODO: this should be implemented in a way that authorization + * depends on user settings + * + * @param pContact Contact to be authorized + */ + void onAuthorizationRequested(QtTapioca::Contact *pContact); + +private: //Methods + + /** \brief Synchronizes server and local contact lists + * + * Lists should be synchronized according to + * the synchronization priority set by user. (NO LONGER TRUE AS THE SYNC PRORITY WILL BE REMOVED) + */ + void synchronizeContactLists(); + + /** \brief Adds pending contacts to the list on the server + * + */ + void addPendingContacts(); + + /** \brief Removes pending contacts from the list on the server + * + */ + void removePendingContacts(); + + /** \brief Syncronizes contacts from server to the local list + * + * When contacts from server are edited in a different client + * + * Note that this function SHOULD NOT be run alone, + * but ONLY AFTER addition and removal of pending contacts from server + */ + void syncContactsFromServer(); + + /** \brief Returns true if a user with the given Uid is already on the list + * + * @param uid Uid of the searched contact + * @return index of the contact or -1 if not found + */ + int indexForUid( QString uid ); + + /** \brief Removes contact from local contact list + * + * @param uid Uid of the contact to be removed + */ + void removeContact( QString uid ); + + /** \brief Adds contact to the local list + * + * @param contact Pointer to the QtTapioca::Contact instance + */ + void addContact( const Contact* contact ); + +private: //Members + + bool _bNewUserContact; /// Indicates that this is the first status change after initializeFromSettings + bool _bContactListSynchronized; /// Indicates if contact list has been already sent to the UI + QtTapioca::Connection* _pConnection; /// Active connection + TocContactList* _pTocContactList; /// Current contact list + QStringList* _pAddedContacts; /// Contacts to be added + QStringList* _pRemovedContacts; /// Contacts to be removed +}; + +QT_END_NAMESPACE + +#endif // TOCENGINE_H diff --git a/include/TocSettings b/include/TocSettings new file mode 100644 index 0000000..ba373fc --- /dev/null +++ b/include/TocSettings @@ -0,0 +1 @@ +#include "tocsettings.h" diff --git a/include/TocUi/IconProvider b/include/TocUi/IconProvider new file mode 100644 index 0000000..9be71d7 --- /dev/null +++ b/include/TocUi/IconProvider @@ -0,0 +1 @@ +#include "iconprovider.h" diff --git a/include/TocUi/TocAccountIntermediateWidget b/include/TocUi/TocAccountIntermediateWidget new file mode 100644 index 0000000..7cecde7 --- /dev/null +++ b/include/TocUi/TocAccountIntermediateWidget @@ -0,0 +1 @@ +#include "tocaccountintermediatewidget.h" diff --git a/include/TocUi/TocAccountSettingsWidget b/include/TocUi/TocAccountSettingsWidget new file mode 100644 index 0000000..0fd9f79 --- /dev/null +++ b/include/TocUi/TocAccountSettingsWidget @@ -0,0 +1 @@ +#include "tocaccountsettingswidget.h" diff --git a/include/TocUi/TocBaseMainWindow b/include/TocUi/TocBaseMainWindow new file mode 100644 index 0000000..75c1ce7 --- /dev/null +++ b/include/TocUi/TocBaseMainWindow @@ -0,0 +1 @@ +#include "tocbasemainwindow.h" diff --git a/include/TocUi/TocChatWidget b/include/TocUi/TocChatWidget new file mode 100644 index 0000000..14db31f --- /dev/null +++ b/include/TocUi/TocChatWidget @@ -0,0 +1 @@ +#include "tocchatwidget.h" diff --git a/include/TocUi/TocContactListWidget b/include/TocUi/TocContactListWidget new file mode 100644 index 0000000..3506b90 --- /dev/null +++ b/include/TocUi/TocContactListWidget @@ -0,0 +1 @@ +#include "toccontactlistwidget.h" diff --git a/include/TocUi/TocEmoticonsDialog b/include/TocUi/TocEmoticonsDialog new file mode 100644 index 0000000..21fbfaa --- /dev/null +++ b/include/TocUi/TocEmoticonsDialog @@ -0,0 +1 @@ +#include "tocemoticonsdialog.h" diff --git a/include/TocUi/TocGeneralSettingsWidget b/include/TocUi/TocGeneralSettingsWidget new file mode 100644 index 0000000..95d5785 --- /dev/null +++ b/include/TocUi/TocGeneralSettingsWidget @@ -0,0 +1 @@ +#include "tocgeneralsettingswidget.h" diff --git a/include/TocUi/TocMainToolbar b/include/TocUi/TocMainToolbar new file mode 100644 index 0000000..dd25b90 --- /dev/null +++ b/include/TocUi/TocMainToolbar @@ -0,0 +1 @@ +#include "tocmaintoolbar.h" diff --git a/include/TocUi/TocMainWindow b/include/TocUi/TocMainWindow new file mode 100644 index 0000000..69fd066 --- /dev/null +++ b/include/TocUi/TocMainWindow @@ -0,0 +1 @@ +#include "tocmainwindow.h" diff --git a/include/TocUi/TocSettingsWidget b/include/TocUi/TocSettingsWidget new file mode 100644 index 0000000..a16687f --- /dev/null +++ b/include/TocUi/TocSettingsWidget @@ -0,0 +1 @@ +#include "tocsettingswidget.h" diff --git a/include/TocUi/TocThemesSettingsWidget b/include/TocUi/TocThemesSettingsWidget new file mode 100644 index 0000000..c57cb56 --- /dev/null +++ b/include/TocUi/TocThemesSettingsWidget @@ -0,0 +1 @@ +#include "tocthemessettingswidget.h" diff --git a/include/TocUi/TocUi.pri b/include/TocUi/TocUi.pri new file mode 100644 index 0000000..a0e1889 --- /dev/null +++ b/include/TocUi/TocUi.pri @@ -0,0 +1,28 @@ +DEPENDPATH += $$PWD +INCLUDEPATH += $$PWD +HEADERS += TocBaseMainWindow \ + tocbasemainwindow.h \ + TocMainWindow \ + tocmainwindow.h \ + TocContactListWidget \ + toccontactlistwidget.h \ + TocChatWidget \ + tocchatwidget.h \ + TocUserInfoWidget \ + tocuserinfowidget.h \ + TocSettingsWidget \ + tocsettingswidget.h \ + TocGeneralSettingsWidget \ + tocgeneralsettingswidget.h \ + TocAccountSettingsWidget \ + tocaccountsettingswidget.h \ + TocAccountIntermediateWidget \ + tocaccountintermediatewidget.h \ + TocThemesSettingsWidget \ + tocthemessettingswidget.h \ + TocMainToolbar \ + tocmaintoolbar.h \ + IconProvider \ + iconprovider.h \ + TocEmoticonsDialog \ + tocemoticonsdialog.h diff --git a/include/TocUi/TocUserInfoWidget b/include/TocUi/TocUserInfoWidget new file mode 100644 index 0000000..946a544 --- /dev/null +++ b/include/TocUi/TocUserInfoWidget @@ -0,0 +1 @@ +#include "tocuserinfowidget.h" diff --git a/include/TocUi/iconprovider.h b/include/TocUi/iconprovider.h new file mode 100644 index 0000000..ee883ce --- /dev/null +++ b/include/TocUi/iconprovider.h @@ -0,0 +1,126 @@ +/** \file IconProvider.h + * \brief Declaration of IconProvider class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef ICONPROVIDER_H +#define ICONPROVIDER_H + +#include + +#include "defs.h" + +QT_BEGIN_NAMESPACE + +/** \brief IconProvider class + * + * Purpose of this class is to create centralize way to access icons for contacts. + * It contains repository of all contact icons both default and custom marged with status frames. + */ +class IconProvider +{ + +public: + + /** \brief Static public constructor + * + * @return Pointer to the static instance + */ + static IconProvider* getInstance(); + + /** + * Destructor + */ + ~IconProvider(); + + /** \brief This method finds suitable icon for a given contact and its presence. + * + * Function looks for an icon inside one of maps _defaultIcons when no custom icon + * was set (customIconPath field is empty) and _customIcons when setCustomIcon + * function was called for a given contact. + * + * @param pContact Contact for which image is requested. + * @return Pointer to an image of user's Avatar composed with presence information (green, red or yellow frame) + */ + QImage* matchIcon(const TocContact* pContact) const; + + /** \brief This method finds suitable default icon for a given gender. + * + * It's convenience function for cases when there's no possibility to set Qt::DecorationRole. + * + * @param gender Gender for which icon needs to be matched. + * @return Default icon for a given gender. + */ + QIcon matchIcon(Gender gender) const; + + /** \brief Extends repository of custom icons for a given contact. + * + * This method adds new set of images to _customIcons map for a contact. It also assigns _customIconId. + * Icon id is used later by matchIcon method to access right image. New image is created out of file + * from customIconPath. + * + * @param pContact Contact for which new custom icons are going to be added. + */ + void setCustomIcon(TocContact* pContact); + + +private: // Methods + + /** \brief Private constructor + * + */ + IconProvider(); + + /** \brief Used to compose presence picture in case presence was changed + * + * This method is used to compose picture showed in contact list. + * It use contactImage and Presence to create resultImage which is used in contact list. + * + * @param contactImage Image of user's Avatar + * @param presence Presence which will be displayed on resultImage + * @return resultImage Image of user's Avatar composed with presence information + */ + QImage* addStatusFrame(const QImage* baseImage, Presence presence) const; + +private: // Members + + static IconProvider* mp_self; + + QMap _customIcons; ///Map of custom images. Created at the begining out of contacts from settings or updated by setCustomIcon. + QMap _defaultIcons; ///Map of default images. Created inside the constructor. Used for contacts with no custom icon assign. + int _customIconId; ///This id 'generated' by incrementation when adding new custom icon inside setCustomIcon and enables fast access to images in _customIcons map. + + QString _defaultMaleImagePath; + QString _defaultFemaleImagePath; + QString _defaultUnknownImagePath; +}; + +QT_END_NAMESPACE + +#endif // ICONPROVIDER_H diff --git a/include/TocUi/tocaccountintermediatewidget.h b/include/TocUi/tocaccountintermediatewidget.h new file mode 100644 index 0000000..cac22f1 --- /dev/null +++ b/include/TocUi/tocaccountintermediatewidget.h @@ -0,0 +1,108 @@ +/** \file TocAccountIntermediateWidget.h + * \brief Declaration of TocAccountIntermediateWidget class + * + * TOQ - Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCACCOUNTINTERMEDIATEWIDGET_H +#define TOCACCOUNTINTERMEDIATEWIDGET_H + +#include + +class QPushButton; +class QFrame; + +QT_BEGIN_NAMESPACE + +/** \brief TocAccountIntermediateWidget class + * + * Window to select account settings mode. + */ +class TocAccountIntermediateWidget : public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + * + * @param create Indicates if widget shoulb be in `Create mode` + */ + TocAccountIntermediateWidget( QWidget * parent = 0, Qt::WindowFlags flags = 0 ); + + /** + * Destructor + */ + ~TocAccountIntermediateWidget(); + + /** \brief Allows enabling/disabling FTU mode during runtime + * + * Method for switching `FTU mode` on and off + * + * @param bool ftu Indicates if widget should enter FTU mode + */ + void enableFTUMode( bool ftu ); + +signals: + + /** \brief Emited when user clicks createButton + * + */ + void createClicked(); + + /** \brief Emited when user clicks createButton + * + */ + void editClicked(); + + /** \brief Emited when user clicks backButton + * + */ + void backClicked(); + +private: // Methods + + /** \brief Sets style sheets for each widget + * + * Used to overload style sheet properties that could come from main style sheet, + * to forbid corruption of the application layout from the external style sheets. + */ + void setupStyles(); + +private: // Members + + QPushButton* _pBackButton; /// Create Account Settings button + QPushButton* _pCreateButton; /// Create Account Settings button + QPushButton* _pEditButton; /// Edit Account Settings button + QFrame* _pIntermediateFrame; /// Background frame of window +}; + +QT_END_NAMESPACE + +#endif // TOCACCOUNTINTERMEDIATEWIDGET_H diff --git a/include/TocUi/tocaccountsettingswidget.h b/include/TocUi/tocaccountsettingswidget.h new file mode 100644 index 0000000..1328243 --- /dev/null +++ b/include/TocUi/tocaccountsettingswidget.h @@ -0,0 +1,204 @@ +/** \file TocAccountSettingsWidget.h + * \brief Declaration of TocAccountSettingsWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCACCOUNTSETTINGSWIDGET_H +#define TOCACCOUNTSETTINGSWIDGET_H + +#include +#include "defs.h" + +class Ui_TocAccountSettingsWidgetClass; + +QT_BEGIN_NAMESPACE + +/** \brief TocAccountSettingsWidget class + * + * Configuration window for account settings. + */ +class TocAccountSettingsWidget : public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocAccountSettingsWidget( QWidget * parent = 0, Qt::WindowFlags flags = 0 ); + + /** + * Destructor + */ + ~TocAccountSettingsWidget(); + + /** \brief Virtual method called when widget is about to be shown + * + * Overloaded method used to reload account list, when widget is shown + * + * @param type of show event + */ + void showEvent(QShowEvent *event); + + /** \brief Checks wheter or not widget is in Ftu mode + * + * Returns true if `Create mode` is enabled, otherwise false + * + */ + inline bool createMode() const; + + /** \brief Allows enabling/disabling Create mode during runtime + * + * Method for switching `Create mode` on and off + * + * @param bool create Indicates if widget should enter Create mode + */ + void setCreateMode( bool create ); + + /** \brief Connects server and protocol hints + * + * Used to enable server and protocol hints + */ + void connectHints(); + + +signals: + + /** \brief Emited when user clicks 'Ok' button + * + * This signal is emited when user changes settings by pressing 'Ok' button + * and new settings differs from previous. + * Settings of account are already changed, when signal is emitted. + * + */ + void accountSettingsChanged(); + + /** \brief Emited when user clicks 'Create' button during `Create mode` + * + * This signal is emited when user creates settings by pressing 'Create' button. + * Settings of account are already saved, when signal is emitted. + * + */ + void newAccountSettingsCreated(); + + /** \brief Emited when user clicks 'Ok' or 'Create' button + * + * This signal is emited when user chooses to close widget by pressing 'Ok' or 'Create' button + * regardless if current account was changed. + * + */ + void finished(); + + /** \brief Emited when user wants to go to the previous screen + * + */ + void backClicked(); + +public slots: + + /** \brief Reloads accounts list + * + * This method is used to reload account data when it has changed. + * + */ + void reload(); + +private slots: + + /** \brief Commits new data + * + * Verifies data and either triggers creation of new account or stores altered data. + */ + void onOkButton(); + + /** \brief Allows to change password + * + * Shows layout for password change. + */ + void onChangePasswordButton(); + + /** \brief Connected to textEdited signal from loginLineEdit + * + * Sets text for serverLineEdit and portLineEdit according to new login + * + * @param newLogin new login received from signal + */ + void loginEdited(const QString& newLogin); + + /** \brief Connected to currentIndexChanged signal from protocolComboBox + * + * Sets text for serverLineEdit and portLineEdit according to new protocol + * + * @param newProtocol new protocol name received from signal + */ + void protocolEdited(const QString& newProtocol); + + /** \brief Disconnects server and protocol hints + * + * Used to disable server and protocol hints when user already changed the server + * (It would be annoying if hints reset his personaly chosen server and port) + */ + void disconnectHints(); + +private: // Methods + + /** \brief Displays error message + * + * @param errorText text of error to be displayed + */ + void handleError(QString errorText); + + /** \brief Validates corectness of entered data + * + * @return True if data is corect + */ + bool dataVerified(); + + /** \brief Saves edited data + * + * If no property was changed it does nothing + */ + void saveAccountData(); + + /** \brief Creates new account from the data + * + */ + void createNewAccount(); + +private: // Members + + Ui_TocAccountSettingsWidgetClass* ui; /// Ui definition header + bool _bCreateMode; /// Tells if widget is in `Create mode` + +}; + +QT_END_NAMESPACE + +#endif // TOCACCOUNTSETTINGSWIDGET_H diff --git a/include/TocUi/tocbasemainwindow.h b/include/TocUi/tocbasemainwindow.h new file mode 100644 index 0000000..bf0ca9f --- /dev/null +++ b/include/TocUi/tocbasemainwindow.h @@ -0,0 +1,192 @@ +/** \file TocBaseMainWindow.h + * \brief Declaration of TocBaseMainWindow class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCBASEMAINWINDOW_H +#define TOCBASEMAINWINDOW_H + +#include +#include "defs.h" + +class TocBaseEngine; + +/** \brief TocBaseMainWindow class + * + * A base class for any Ui class that + * wants to comunicate with TocEngine. + * + */ +class TocBaseMainWindow : public QMainWindow +{ + Q_OBJECT + +public: + TocBaseMainWindow( TocBaseEngine* engine, QWidget * parent = 0, Qt::WindowFlags flags = 0 ); + ~TocBaseMainWindow(); + +signals: + + /** \brief Emited when a user wants to change presence + * + * This signal is emited when user changes presence in TocMainToolbar. + * Note: this is only a request, You should wait for the PresenceUpdated signal from TocEngine + * to actualy show to the user his new presence. + * + * @param presence Requested presence + * @param desc Requested description + */ + void presenceChanged(Presence presence, QString desc); + + /** \brief Emited when a session is finished + * + * This signal is emited when a TocChatWidget is closed. + * + * @param uid Contact's ID + */ + void sessionClosed(QString uid); + + /** \brief Emited when a new message is ready to send + * + * This signal is emited when user sends a message in one of chatwindows. + * + * @param uid Contact's ID + * @param message Message to be sent + */ + void newMessageReady(QString uid, Message message); + + /** \brief Emited when user adds a new contact + * + * This should be emited when user prepares new contact data + * using TocUserInfoWidget in "Add mode". + * + * @param pContact Pointer to a contact to be added. + */ + void addContact(TocContact* pContact); + + /** \brief Emited when user edits an existing contact + * + * This signal is emited when user changes contact data + * using TocUserInfoWidget in "Edit mode". + * + * @param pContact Pointer to a contact to be altered. + * @param oldUid Previous Contact's ID + */ + void editContact(TocContact* pContact, QString oldUid); + + /** \brief Emited when user deletes an existing contact + * + * This should be emited when user removes a contact from contact list. + * + * @param uid Contact's ID + */ + void removeContact(QString uid); + + /** \brief Emited when user creates a new account + * + * This signal is emited when user decides to accept or deny request for subscription from someone. + * + * @param uid User ID of the new account + * @param authorized Flag that indicates the answer + */ + void subscriptionAccepted(QString uid, bool authorized); + + /** \brief Emited when user changes the account settings + * + */ + void accountSettingsChanged(); + +protected slots: + + /** \brief Slot invoked when someone wants to add us to his contact list + * + * We just received request for subsciption and need to decide whether accept it + * or discard. This should be connected to the TocEngine's `AuthorizationRequest` signal. + * + * @param uid An identificator of a peer that wants to subscribe our account to his contact list + */ + virtual void onAuthorizationRequest(QString uid) = 0; + + /** \brief Slot invoked when our request for subscription has been accepted + * + * This should be connected to the TocEngine's `SubscriptionAccepted` signal. + * + * @param uid An identificator of a contact that was requested for subscription + */ + virtual void onSubscriptionAccepted(QString uid) = 0; + + /** \brief Slot handling own status change + * + * Thanks this UI can be informed about change in account status. + * This should be connected to the TocEngine's `StatusChanged` signal. + * + * @param status New status of the account + * @param reason The reason of the change + */ + virtual void onStatusChange(Status status, Reason reason) = 0; + + /** \brief Slot handling own presence change + * + * This should be connected to the TocEngine's `PresenceUpdated` signal. + * + * @param presence New presence of the account + * @param desc New presence description of the account + */ + virtual void onPresenceUpdate(Presence presence, QString desc) = 0; + + /** \brief Slot handling contact's presence change + * + * This should be connected to the TocEngine's `ContactPresenceUpdated` signal. + * + * @param uid Contact's ID + * @param presence New presence of the contact + * @param desc New presence description of the contact + */ + virtual void onContactPresenceUpdate(QString uid, Presence presence, QString desc) = 0; + + /** \brief Slot handling incoming message + * + * This should be connected to the TocEngine's `MessageReceived` signal. + * + * @param uid Contact's ID + * @param message New message to be handled + */ + virtual void onIncomingMessage(QString uid, Message message) = 0; + + /** \brief Invoked when new contact list is available + * + * This should be connected to the TocEngine's `NewContactList` signal. + * + * @param cList New contact list to be used + */ + virtual void onContactListReceived(const TocContactList& cList) = 0; + +}; + +#endif // TOCBASEMAINWINDOW_H diff --git a/include/TocUi/tocchatwidget.h b/include/TocUi/tocchatwidget.h new file mode 100644 index 0000000..9ee3480 --- /dev/null +++ b/include/TocUi/tocchatwidget.h @@ -0,0 +1,194 @@ +/** \file TocChatWidget.h + * \brief Declaration of TocChatWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCCHATWIDGET_H +#define TOCCHATWIDGET_H + +#include + +#include "defs.h" + +class Ui_TocChatWidgetClass; + +QT_BEGIN_NAMESPACE + +/** \brief TocChatWidget class + * + * Widget used as a conversation window. Enables sending of messages + * and notifies about presence changes of the contact by textual information + * and conversion window border color. + */ +class TocChatWidget : public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocChatWidget( const QString& uid, const QString& name, Presence presence, QWidget * parent = 0, const Message& message = Message() ); + + /** + * Destructor + */ + ~TocChatWidget(); + + /** \brief Used to read uid property + * + * @return ID of the Contact for which the chat was created + */ + QString uid() const { return _uid; } + + /** \brief Used to read name property + * + * @return Name of the Contact for which the chat was created + */ + QString name() const { return _name; } + + /** \brief Used to set name property + * + * @param New name of the Contact + */ + void onDisplayedNameChange(const QString& newName) { _name = newName; } + + /** \brief Used to handle contact's presence change + * + * This method is used when status of the Contact has changed. + * It gives textual and graphical notification to the user. + * + * @param presence New contact's presence + * @param description New contact's presence description + */ + void onContactPresenceUpdate(Presence presence, const QString& description); + + /** \brief Used to update contact's presence + * + * This is used when the chat window was closed and did not + * recieved Contact Presence Updates, so it can show the current status properly. + */ + void updateContactPresence(Presence presence); + + /** \brief Used to handle incoming message + * + * @param message Message to be displayed in chat + */ + void appendMessage(const Message& message); + +protected: + + /** \brief Used to filter incoming events + * + * This method is used to filter keyboards event. + * If Enter key is pressed, typed message is send (as pressing Send button). + * If Enter key is pressed with Shift key modifier new line in entered. + * + * @param *object Pointer to the object on which an event appears. + * @param *event Pointer to the event. + * + * @return If the event is a key event Enter without Shift modifier + * method returns true, otherwise false. + * + */ + bool eventFilter(QObject *object, QEvent *event); + + /** \brief Reimplemented from QWidget + * + */ + virtual void showEvent(QShowEvent* event); + +signals: + + /** \brief Emited when new message is ready to be sent + * + * This signal is emited when user want's to send a prepared message. + * + * @param uid Contact's ID + * @param message Message to be sent + */ + void newMessageReady(const QString& uid, Message message); + + /** \brief Emited Smile button clicked. + * + * This signal is emited when user clicks on Smile button in Chat view, + * to choose emoticon. + * + */ + void smileButtonClicked(); + +private slots: + + /** \brief Send message slot + * + * Invoked when message from chatWidget needs to be sent. + * It composes a message, emits a signal and wipes out a text from messageTextEdit. + * + */ + void pressedSendButton(); + /** \brief Shows emoticons dialog window. + * + */ + void showEmoticonsDialog(); + + +private: // Methods + + /** \brief Returns a human readable string for the given error type + * + * @param error Error id + * @return Human readable error description + */ + QString errorString(MessageDeliveryError error); + + /** \brief Appends new message to the chat dialog edit with parsed emoticons + * + */ + /** \brief Inserts emoticons. + * + * Checks user message text for emoticons aliases and replace them with + * corresponding inage. + * + * @param message Message from user message text edit box. + * + */ + void insertEmoticons(const QString& message); + +private: // Members + + QString _uid; /// User ID. + QString _name; /// User name. + + Ui_TocChatWidgetClass* ui; /// Pointer to the TocChatWidgetClass form. +}; + +QT_END_NAMESPACE + +#endif // TOCCHATWIDGET_H diff --git a/include/TocUi/toccontactlistwidget.h b/include/TocUi/toccontactlistwidget.h new file mode 100644 index 0000000..d3f9b19 --- /dev/null +++ b/include/TocUi/toccontactlistwidget.h @@ -0,0 +1,284 @@ +/** \file TocContactListWidget.h + * \brief Declaration of TocContactListWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCCONTACTLISTWIDGET_H +#define TOCCONTACTLISTWIDGET_H + +#include +#include +#include + +#include "defs.h" +#include "TocSettings" + +QT_BEGIN_NAMESPACE + +/** \brief TocContactListWidget class + * + * Widget representing the list of current account contact's. + * QListWidget is used in `IconMode`, and allows user to show a unique + * avatar for each contact. It allows user to delete add and change contact's data, + * and to start conversation with the contact. + */ +class TocContactListWidget : public QListWidget +{ + Q_OBJECT + // Property holding color of the logo. + // It's a Q_PROPERTY to enable easy setting of the color with style sheet's. + Q_PROPERTY(QColor logoColor READ logoColor WRITE setLogoColor NOTIFY logoColorChanged) + +public: + + /** + * Public Constructor + */ + TocContactListWidget( QWidget * parent = 0 ); + + /** + * Destructor + */ + ~TocContactListWidget(); + + /** \brief Method used when contact's presence has changed + * + * This method handles presence change of a contact. + * + * @param uid Contact's ID + * @param presence Contact's new presence + * @param description Contact's new presence description + */ + void onContactPresenceUpdate(const QString& uid, Presence presence, const QString& description); + + /** \brief This method translates Contact's ID to its Name + * + * This method is used when TocMainWindow needs the Name for + * the given Uid, in order to create a new TocChatWidget. + * + * @param uid Contact's ID + * @return Displayed Name of the contact + */ + QString getDisplayedName(const QString& uid); + + /** \brief This method is used to find specific contact on the list by contact's uid + * + * It searches for the user in contact list and returns it's item, + * if there is no such contact it returns 0. It's possible to exlude particular + * item from search. It's used when editing an exisiting contact because contact data + * are associated with the same QListWidgetItem pointer. + * + * @param item Item to be excluded from searching + * @param uid Contact's ID + * @param pExcludedItem Item from the list + * @return Pointer to found item + */ + QListWidgetItem* findItem(const QString& uid, const QListWidgetItem* pExcludedItem = 0); + + /** \brief Clears statuses of contacts + * + * Typicaly used to clear statuses after setting the self-status to Offline + */ + void clearStatuses(); + + /** \brief Getter for logoColor property + * + */ + QColor logoColor() const; + + /** \brief Setter for logoColor property + * + */ + void setLogoColor(QColor rgb); + +protected: + + /** \brief Implementation of the interface that allows to handle mouse double click event + */ + void mouseDoubleClickEvent(QMouseEvent *event); + + /** \brief Implementation of the interface that allows to handle context menu event + * + * It creates context menu for managing contact items on the list. + */ + void contextMenuEvent(QContextMenuEvent *event); + + /** \brief Implementation of the interface that allows to handle custom paint events + * + * It allows to paint Tieto logo in contact list view. + */ + void paintEvent(QPaintEvent * event); + + +signals: + + /** \brief Emited when user chooses a contact to chat with + * + * This signal is emited when user selects and then clicks an item on the list. + * + * @param uid Contact's ID + * @param name Contact's name + * @param presence Contact's presence + * + */ + void triggered(const QString& uid, const QString& name, Presence presence); + + /** \brief Emited when user requests to see a contact info + * + * This signal is emited when user selects to edit contact's data + * or if the user wants to add new contact to the list ( then *item == QListWidgetItem() ). + * + * @param pItem Contact item to be edited or added + */ + void contactInfoRequest(QListWidgetItem* pItem); + + /** \brief Emited when contact is removed + * + * This signal is emited when user wants to delete the contact with given Uid. + * Note that the contact should be already deleted from the TocListWidget + * before it's emision. + * + * @param uid Contact's ID + */ + void removedContact(const QString& uid); + + /** \brief Emited when user commits the changes + * + * This signal is emited when user finished adding contact. + * + * @param pContact Pointer to a contact to be added. + */ + void addContact(TocContact* pContact); + + /** \brief Emited when user commits the changes + * + * This signal is emited when user finished editing contact data. + * + * @param pContact Pointer to a contact to be altered. + * @param oldUid Previous ID of a contact (omited if widget is in "Add Mode") + */ + void editContact(TocContact* pContact, QString oldUid); + + /** \brief Emited when name of the contact has been changed + * + * This signal is emited to notify that user chas changed the displayed name + * of the contact so it can be used to change the name at runtime + * in TocChatWindow and in active sessions menu of TocMainToolbar. + * + * @param uid Contact's ID + * @param name New displayed name of the contact + */ + void displayedNameChanged( const QString& uid, const QString& name); + + /** \brief Emited when name of the logoCount property has been changed + * + * When logoCount property is changed, this signal is emited, with new value as a parameter. + * + * @param rgb new value of logoColor property + */ + void logoColorChanged(QColor rgb); + +public slots: + + /** \brief Used to set a contact list to the widget + * + * This slot is used when a new TocContactList has arived from TocEngine. + * Data from the list should be copied to QListWidgetItem's. + * + * @param contactList New contact list to be handled + */ + void onNewContactList(const TocContactList& contactList); + + /** \brief Used when user finishes editing new contact data + * + * This slot is used when user actualy commits new contact's addition + * from the TocUserInfoWidget. It adds created item to the contact list. + * + * @param pNewItem Item to be added + */ + void commitAdd(QListWidgetItem* pNewItem); + + /** \brief Used when user finishes edition of contact data + * + * This slot is used when user actualy commits changes to the contact + * from the TocUserInfoWidget. + * + * @param pEditedItem Item with changed data + */ + void commitEdit(QListWidgetItem* pEditedItem); + +private slots: + + /** \brief Slot that reacts on Edit action from context menu + * + * It extracts QListWidgetItem from sender and posts it to UserInfoWidget + * for edition. + */ + void onEditRequested(); + + /** \brief Slot that reacts on Remove action from context menu + * + * It extracts QListWidgetItem from sender, removes it from the contacts list + * and notifies engine about it. + */ + void onRemoveRequested(); + + /** \brief Slot that sets the color of the logo + * + * This method paints the logo with the color provided. + * + * @param rgb Color to be set for the logo + */ + void changeLogoColor(QColor rgb); + +private: // Methods + + /** \brief Sorts all the items in the list widget + * + * This method sorts all the items in the list widget according to + * the specified order. + * TODO: only Literal sorting is now implemented, implement other methods as well + * + * @param order Order to sort by + */ + void sortItems(SortOrder order = Alphabetical); + +private: // Members + + TocContact _currentEditedContact; /// Temporary TocContact used in the process of editing an item + QListWidgetItem* _pCurrentEditedItem; /// Temporary item used in the process of editing an item + QAction _editAction; /// An action from context menu that triggers edition of selected item. It's connected to onEditRequested() slot + QAction _removeAction; /// An action from context menu that triggers deletion of selected item. It's connected to onRemoveRequested() slot + QImage* _logo; /// Logo image mask. Created inside constructor. + QColor _logoColor; /// Color in RGB of the logo. (Q_PROPERTY logoColor) +}; + +QT_END_NAMESPACE + +#endif // TOCCONTACTLISTWIDGET_H diff --git a/include/TocUi/tocemoticonsdialog.h b/include/TocUi/tocemoticonsdialog.h new file mode 100644 index 0000000..f24a5b4 --- /dev/null +++ b/include/TocUi/tocemoticonsdialog.h @@ -0,0 +1,97 @@ +/** \file TocEmoticonsDialog.h + * \brief Declaration of TocEmoticonsDialog class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCEMOTICONSDIALOG_H +#define TOCEMOTICONSDIALOG_H + +#include + +QT_BEGIN_NAMESPACE + +class Ui_TocEmoticonsDialogClass; +class QListWidgetItem; + +class TocEmoticonsDialog : public QDialog +{ + Q_OBJECT + +public: + + /** \brief Static public constructor + * + * @param parent Emoticons dialog parent widget for application style inheretance. + * + * @return Pointer to the static instance + */ + + static TocEmoticonsDialog* getInstance(QWidget* parent); + + /** \brief Emoticon alias method. + * + * @return String alias for the selected emoticon. + */ + QString getSelectedEmoticonAlias(); + +private: + + /** + * Private Constructor + */ + TocEmoticonsDialog(QWidget *parent = 0); + + /** + * Destructor + */ + ~TocEmoticonsDialog(); + +private slots: + + /** \brief Emoticon selected slot + * + * Invoked when user selects an emoticon from the emoticons dialog window. + * + * @param pItem Selected emoticon from the list. + * + */ + void onEmoticonSelected(QListWidgetItem* pItem); + +private: + + static TocEmoticonsDialog* _pSelf; /// Static pointer to TocEmoticonDialog class. + + QString _selectedEmoticonAlias; /// Selected emoticon string alias. + + Ui_TocEmoticonsDialogClass* ui; /// Pointer to the TocEmoticonsDialogClass form. +}; + +QT_END_NAMESPACE + +#endif // TOCEMOTICONSDIALOG_H diff --git a/include/TocUi/tocgeneralsettingswidget.h b/include/TocUi/tocgeneralsettingswidget.h new file mode 100644 index 0000000..7f524ed --- /dev/null +++ b/include/TocUi/tocgeneralsettingswidget.h @@ -0,0 +1,90 @@ +/** \file TocGeneralSettingsWidget.h + * \brief Declaration of TocGeneralSettingsWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCGENERALSETTINGSWIDGET_H +#define TOCGENERALSETTINGSWIDGET_H + +#include +#include "defs.h" + +class Ui_TocGeneralSettingsWidgetClass; + +QT_BEGIN_NAMESPACE + +/** \brief TocGeneralSettingsWidget class + * + * Configuration window for general application settings. + */ +class TocGeneralSettingsWidget : public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocGeneralSettingsWidget( QWidget * parent = 0, Qt::WindowFlags flags = 0 ); + + /** + * Destructor + */ + ~TocGeneralSettingsWidget(); + +signals: + + /** \brief Signal connected to returnToContacts() slot in TocMainWindow + * + */ + void finished(); + + /** \brief Signal connected to returnToSettings() slot in TocMainWindow + * + */ + void backClicked(); + +private slots: + + /** \brief Used to save general settings + * + * This slot is used when user clicks on the Ok button. + * Information in UI are saved into TocSettings + */ + void saveGeneralSettings(); + +private: // Members + + Ui_TocGeneralSettingsWidgetClass* ui; /// Ui definition header +}; + +QT_END_NAMESPACE + +#endif // TOCGENERALSETTINGSWIDGET_H diff --git a/include/TocUi/tocmaintoolbar.h b/include/TocUi/tocmaintoolbar.h new file mode 100644 index 0000000..dcd054c --- /dev/null +++ b/include/TocUi/tocmaintoolbar.h @@ -0,0 +1,456 @@ +/** \file TocMainToolbar.h + * \brief Declaration of TocMainToolbar class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCMAINTOOLBAR_H +#define TOCMAINTOOLBAR_H + +#include +#include +#include + +#include "defs.h" +#include "uidefs.h" + +class QPushButton; +class QMenu; +class QAction; +class QLabel; +class ActiveSessions; +class ScrollWidget; + +QT_BEGIN_NAMESPACE + +/** \brief TocMainToolbar class + * + * Applications main toolbar used to control window switching, presence changes + * and management of active chat windows. + * It also shows current activity name, notifies about incoming messages + * and allows to quickly switch between converstion and contact list and back. + * The main toolbar is allways visible in applications window. + */ +class TocMainToolbar : public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocMainToolbar( QWidget * parent = 0, Qt::WindowFlags flags = 0 ); + + /** + * Destructor + */ + ~TocMainToolbar(); + + /** \brief This method is used when new message arives + * + * When the message arives, `Active Sessions` button should notify this + * by changing color of the button and the corresponding menu action. + * If action doesn't exist, it must create it. + * + * @param uid Contact's uid + * @param name Contact's name + * @param presence Contact's current presence + */ + void onNewMessage(const QString& uid, const QString& name = "", Presence presence = Unspecified); + + /** \brief This method is used when current window changes + * + * It is used only if window changes without the knowledge of TocMainToolbar + * (i.e. when not triggered by toolbar but by settings window or contact list). + * + * @param viewType Type of the window + * @param text Text to be displayed in notification area + */ + void onCurrentView(ViewType viewType, const QString& text = QString() ); + + /** \brief This method is used to handle contacts dislayed name changes + * + * It changes the name of the corresponding action. + * + * @param uid Contact's uid + * @param name New contact's name + */ + void onDisplayedNameChange(const QString& uid, const QString& name); + + /** \brief This method is used to handle contacts presence changes + * + * It changes the presence icon of the corresponding action. + * + * @param uid Contact's uid + * @param name New contact's name + */ + void onContactPresenceUpdate(const QString& uid, Presence presence); + + /** \brief This method is used to handle account presence changes + * + * It should follow the `presenceUpdated` signal if presence change + * was succesfull. + * + * @param presence Own presence + * @param desc Own presence description + */ + void onPresenceUpdate(Presence presence, const QString& desc); + + + /** \brief Used to close all sessions at once + * + * Closes all sessions at once on request from outside of the toolbar. + * Typicaly useful when user changes account data + * and the previous sessions needs to be cleared. + */ + void clearAllSessions(); + +signals: + + /** \brief Emited when user chooses a conversation window from active sessions menu + * + * This signal is emited when user triggers an action in `Active Sessions` menu. + * + * @param uid Contact's ID + * @param name Contact's name + */ + void activeSessionTriggered(const QString& uid, const QString& name); + + /** \brief Emited when user closes the chat window + * + * This signal is emited when user chooses to close current chat window. + * + * @param uid Contact's ID for which the window was created + */ + void finishedSession(const QString& uid); + + /** \brief Emited when user closes all chat windows + * + * This signal is emited when user chooses to close all chat windows + * using `Close All Sessions` button in `Active Sessions` menu. + */ + void finishedAllSessions(); + + /** \brief Emited when user chooses contact list + * + * This signal is emited when user clicks contacts button. + */ + void contactsClicked(); + + /** \brief Emited when user chooses settings window + * + * This signal is emited when user clicks settings button. + */ + void settingsClicked(); + + /** \brief Emited when user changes presence + * + * This signal is emited when user requests presence change using + * presence button's menu. + * + * @param presence Requested presence + * @param desc Requested presence description + */ + void presenceUpdate(Presence presence, const QString& desc); + +public slots: + + /** \brief This slot is used when user requests a new session + * + * When new session is started at user request, main toolbar should react for this + * by displaying the name of a contact and disabling the corresponding menu action. + * If action doesn't exist, main toolbar must create it. + * + * @param uid Contact's uid + * @param name Contact's name + * @param presence Contact's current presence + */ + void onNewSession(const QString& uid, const QString& name, Presence presence); + +private slots: + + /** \brief Used to close current session + * + * Connected to the notification area button when in "Close role". + */ + void closeCurrentSession(); + + /** \brief Used to close all sessions at once + * + * Connected to the close all sessions action, and closes all sessions in one run. + */ + void closeAllSessions(); + + /** \brief Used to return to the last chat window + * + * Connected to the notification area button when in "Return role". + */ + void restoreCurrentSession(); + + /** \brief Used when user clicks on a name in active sessions menu + * + * Handles user clicks in action's from active sessions menu, + * it does nothing when action is Close All Sessions action. + * + * @param action The action triggered + */ + void onActiveSessionTriggered(QAction* pAction); + + /** \brief Used when user clicks on a presence in presence button's menu + * + * Handles user clicks in action's from presence button's menu. + * + * @param action The action triggered + */ + void onTriggeredPresence(QAction* action); + + /** \brief Used to handle `Contacts Button` click action + * + * If user clicks `Contacts Button` the toolbar should change + * the `Label Button` text to "" and disable it, but if there is chat window active + * the `Label Button` should display Name of the Contact the chat is active for, + * and change it's mode to "Restore Chat". + */ + void onContactsClicked(); + + /** \brief Used to handle `Settings Button` click action + * + * If user clicks `Contacts Button` the toolbar should change + * the `Label Button` text to "Settings" and disable it. + * It should also disconnect all the connections made for `Label Button`. + */ + void onSettingsClicked(); + + +private: // Methods + + /** \brief Sets style sheets for each widget + * + * Used to overload style sheet properties that could come from main style sheet, + * to forbid corruption of the application layout from the external style sheets. + */ + void setupStyles(); + + /** \brief Returns an action with the given Uid + * + * If the action is not on the list it retruns 0. + * + * @param uid Contact's ID + */ + QAction* action( const QString& uid ); + + /** \bried Highlights the selected button + * + * @param button Button to be highlighted + */ + void highlightButton(const QPushButton* button); + +private: // Members + + QPushButton* statusButton; /// Button for the presence menu + QPushButton* statusAreaButton; /// Notification area button ("Eduardo button") + QLabel* statusAreaLabel; /// Notification area label ("Eduardo label") + QPushButton* activeSessionsButton; /// Button for the active sessions menu + QPushButton* settingsButton; /// Settings button + QPushButton* contactsButton; /// Contact list button + QMenu* statusMenu; /// Status selection menu + QAction* onlineAction; /// Action for online presence + QAction* awayAction; /// Action for away presence + QAction* busyAction; /// Action for busy presence + QAction* hiddenAction; /// Action for hidden presence + QAction* offlineAction; /// Action for offline presence + + ActiveSessions* _pActiveSessions; /// Pointer to an object that manages active sesssions + +}; + + +/** \brief ActiveSessions class + * + * Class that encapsulates active sessions menu. The main role of this class it to ensure that + * there aren't to many actions displayed on the screen at the same time and allows to scroll + * them. + */ + +class ActiveSessions: public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + ActiveSessions(QWidget * parent = 0); + + /** \brief It adds an action to _pActiveSessionsMenu + * + * When adding new action this function takes into account how many actions can be shown + * at the same time (_visibleActionsAllowed) and also when to show additional itmes like + * _pCloseAllSessionsAction or _pScrollAction. + * + * @param pAction action to be added + */ + void addAction(QAction *pAction); + + /** \brief It removes an action from _pActiveSessionsMenu + * + * When removing an action this function takes into account how many actions can be shown + * at the same time (_visibleActionsAllowed) and also when to show additional itmes like + * _pCloseAllSessionsAction or _pScrollAction. + * + * @param pAction action to be added + */ + void removeAction(QAction *pAction); + + /** \brief Removes currently selected action from the menu selects a new one and returns a pointer to it + * + */ + QAction* closeCurrentSession(); + + /** \brief Returns a disabled action + * + * If there is no disabled action it retruns 0. + */ + QAction* disabledAction() const; + + /** \brief Returns an action with the given Uid + * + * If the action is not on the list it retruns 0. + * + * @param uid Contact's ID + */ + QAction* action(const QString& uid) const; + + /** \brief Returns a list of an actions from _pActiveSessionsMenu + * + */ + QList actions() const; + + /** \brief Clears all actions from _pActiveSessionsMenu + * + */ + void clear(); + + /** \brief Returns a pointer to _pActiveSessionsMenu + * + */ + QMenu* menu() const {return _pActiveSessionsMenu;} + + /** \brief Handles change of a presence + * + * It resets an icon according to new presence + * + * @param uid Contact's uid + * @param presence New presence + */ + void onContactPresenceUpdate(const QString& uid, Presence presence); + + /** \brief Handles new message event + * + * It checks for an action for given uid and eventually creats a new one + * + * @param uid Uid of a contact for which new message come + * @param name Contact's name + * @param presence Contact's presence + */ + void onNewMessage(const QString& uid, const QString& name, Presence presence); + + /** \brief This slot is used when user requests a new session + * + * This function selects an action with given uid or if it doesn't exist adds it to menu. + * + * @param uid Contact's uid + * @param name Contact's name + * @param presence Contact's current presence + */ + void onNewSession(const QString& uid, const QString& name, Presence presence); + +private: + + /** \brief Enables or disables scroll up and down buttons according to currently visible actions + * + */ + void checkScrollButtonsState(); + +private slots: + + /** \brief Scrolls up actions from _actionsList that are visible in _pActiveSessionsMenu + * + */ + void scrollUp(); + + /** \brief Scrolls down actions from _actionsList that are visible in _pActiveSessionsMenu + * + */ + void scrollDown(); + +private: + + QMenu* _pActiveSessionsMenu; /// Menu for chat window selection + QAction* _pCloseAllSessionsAction; /// Action to close all active sessions + QAction* _pSeparatorAction; /// Action for separator + QWidgetAction* _pScrollAction; /// Action from _pActiveSessionsMenu that is associated with _pScrollWidget + ScrollWidget* _pScrollWidget; /// Widget with two buttons that enables scrolling + QList _actionsList; /// List of actions that not includes 'Close all', separator and scroll + const int _visibleActionsAllowed; /// Variable that limits amount of active session actions present on _pActiveSessionsMenu + QList::iterator _firstVisibleAction; /// Iterator that is fixed on first active session action from _pActiveSessionsMenu + QList::iterator _lastVisibleAction; /// Iterator that is fixed on last active session action from _pActiveSessionsMenu + +}; + + +/** \brief ScrollWidget class + * + * This small widget was meant as a part of active sessions menu to provide a way to scroll it. + */ + +class ScrollWidget: public QWidget +{ + Q_OBJECT + +public: + /** + * Public Constructor + */ + ScrollWidget(QWidget *parent = 0); + + QPushButton* scrollUpButton() const { return _pScrollUpButton; } + QPushButton* scrollDownButton() const { return _pScrollDownButton; } + +private: + QPushButton* _pScrollUpButton; + QPushButton* _pScrollDownButton; + QHBoxLayout* _pLayout; +}; + + +QT_END_NAMESPACE + +#endif // TOCMAINTOOLBAR_H diff --git a/include/TocUi/tocmainwindow.h b/include/TocUi/tocmainwindow.h new file mode 100644 index 0000000..9637f7d --- /dev/null +++ b/include/TocUi/tocmainwindow.h @@ -0,0 +1,322 @@ +/** \file TocMainWindow.h + * \brief Declaration of TocMainWindow class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCMAINWINDOW_H +#define TOCMAINWINDOW_H + +#include +#include +#include "TocBaseMainWindow" +#include "defs.h" + +class TocBaseEngine; +class QStackedLayout; +class TocChatWidget; +class TocMainToolbar; +class TocContactListWidget; +class TocUserInfoWidget; +class TocSettingsWidget; +class TocGeneralSettingsWidget; +class TocAccountSettingsWidget; +class TocAccountIntermediateWidget; +class TocNetworkSettingsWidget; +class TocThemesSettingsWidget; +class QCloseEvent; + +QT_BEGIN_NAMESPACE + +/** \brief TocMainWindow class + * + * Class responsible for user GUI management + * and for communication with TocEngine. + */ +class TocMainWindow : public TocBaseMainWindow +{ + Q_OBJECT + Q_CLASSINFO("D-Bus Interface", "org.indt.tietoopcom") + +public: + + /** + * Public Constructor + */ + TocMainWindow( TocBaseEngine* engine, QWidget * parent = 0, Qt::WindowFlags flags = 0 ); + + /** + * Destructor + */ + ~TocMainWindow(); + +protected: + + /** \brief Reimplemented from QWidget + * + */ + virtual void closeEvent(QCloseEvent* event); + +public slots: + Q_SCRIPTABLE int top_application(); + +protected slots: + + /** \brief Reimplemented from TocBaseMainWindow + * + */ + void onAuthorizationRequest(QString uid); + + /** \brief Reimplemented from TocBaseMainWindow + * + */ + void onSubscriptionAccepted(QString uid); + + /** \brief Reimplemented from TocBaseMainWindow + * + */ + void onStatusChange(Status status, Reason reason); + + /** \brief Reimplemented from TocBaseMainWindow + * + */ + void onPresenceUpdate(Presence presence, QString desc); + + /** \brief Reimplemented from TocBaseMainWindow + * + */ + void onContactPresenceUpdate(QString uid, Presence presence, QString desc); + + /** \brief Reimplemented from TocBaseMainWindow + * + */ + void onIncomingMessage(QString uid, Message message); + + /** \brief Reimplemented from TocBaseMainWindow + * + */ + void onContactListReceived(const TocContactList& cList); + +private slots: + + /** \brief Shows chat window for the given Uid + * + * If the chat with Uid is already created, just show it, + * if not, create a chat with the given Uid and Name + * and emit newSessionStarted(Uid) signal. + * Note that this is overloaded SLOT, take caution with that. + * + * @param uid Contact's ID + * @param name Contact's name + * @param presence Contact's current presence + */ + void showChat(const QString& uid, const QString& name, Presence presence = Offline); + + + /** \brief Closes a chat for the given Uid + * + * This slot closes a chat for the given Uid + * and emits sessionClosed(Uid) signal to the engine. + * + * @param uid Contact's ID + */ + void closeChat(const QString& uid); + + /** \brief Closes all active chat windows + * + * This slot closes all open chat windows + * and emits sessionClosed(Uid) signal for each chat. + */ + void closeAllOpenChats(); + + /** \brief Closes all active chat windows + * + * This slot closes and deletes all created chat windows + * and emits sessionClosed(Uid) signal for each chat. + * This is typicaly useful when user changes account data. + */ + void clearAllChats(); + + /** \brief Shows window of a given type + * + * Shows a TocWidget of the type == ViewType (except for TocChatWidget) + * `ViewType` is static-casted to `int` in a signal emission in the TocSettingsWidget + * si it could use a QSignalMapper class. + * + * @param type Type of the view to be shown + */ + void showView(/*ViewType*/int type); + + /** \brief Shows TocUserInfoWidget + * + * Creates and displays TocUserInfoWidget with the data provided by the signal. + * + * @param item Item with contact's data (*item==QListWidgetItem() if You want TocUserInfoWidget to be run in "Add mode") + */ + void showUserInfo(QListWidgetItem* item); + + /** \brief Shows TocContactListWidget + * + * Displays TocContactListWidget. + */ + void showContacts(); + + /** \brief Shows TocContactListWidget + * + * Displays TocContactListWidget. + * Also informs TocMainToolbar about the change. + */ + void returnToContacts(); + + /** \brief Shows TocSettingsWidget + * + * Creates if necessary and displays TocSettingsWidget. + */ + void showSettings(); + + /** \brief Shows TocSettingsWidget + * + * Displays TocSettingsWidget . + * Also informs TocMainToolbar about the change. + */ + void returnToSettings(); + + /** \brief Shows TocAccountSettingsWidget + * + * Creates if necessary and displays TocAccountSettingsWidget. + */ + void showAccount(); + + /** \brief Shows TocAccountIntermediateWidget + * + * Creates if necessary and displays TocAccountIntermediateWidget . + */ + void returnToIntermediate(); + + /** \brief Shows TocAccountSettingsWidget in `Create mode` + * + * Creates if necessary and displays TocAccountSettingsWidget. + * When user clicks `Create` button the account settings are + * saved in TocSettings and the `_register` flag of TocSettings is set to "true". + */ + void showAccountCreate(); + + /** \brief Changes the displayed name in the application on user request + * + * If a user changes the displayed name using TocUserInfoView in editing mode + * the slot changes the name in the TocContactListWidget and, if needed, + * in TocMainToolbar and TocChatWidget. + * + * @param uid Contact's ID + * @param name Contact's new name + */ + void onDisplayedNameChange(const QString& uid, const QString& name); + + /** \brief Reloads the displayed application theme + * + * Reads file URL from settings and sets the stylesheet as the current one. + */ + void reloadTheme(); + + /** \brief This slot prepares Toc for the account details change + * + * It disconnects, clears the contact list and active sessions list. + */ + void onAccountSettingsChanged(); + + /** \brief This slot prepares Toc for the new account creation + * + * It disconnects, clears the contact list and active sessions list. + * Then it connects with the `_register` parameter set to true, + * when the connection is successfull the account has been created. + */ + void onAccountSettingsCreated(); + + /** \brief Shows About info widget + * + */ + void showAbout(); + +private: // Methods + + /** \brief Returns cached TocChatWidget for the given Uid + * + * If there is a chached chat with the given uid then + * it returns pointer to this chat, if not it returns 0. + * + * @param uid Contact's ID + * @return Pointer to the chached TocChatWidget or 0 if there is no active chat. + */ + TocChatWidget* chatForUid(const QString& uid); + + /** \brief Returns active/open TocChatWidget for the given Uid + * + * If there is a active/open chat with the given uid then + * it returns pointer to this chat, if not it returns 0. + * + * @param uid Contact's ID + * @return Pointer to the active/open TocChatWidget or 0 if there is no active chat. + */ + TocChatWidget* openChatForUid(const QString& uid); + + /** \brief Checks if this is FTU + * + * returns true if settings on which FirstTimeUse case is based, are empty + * + * @return bool value indicating FTU use case + */ + bool isFtu(); + + /** \brief Returns an error string for the given error + * + * @param reason Reason of the error + * @return Human readable error string + */ + QString errorString(Reason reason); + +private: // Members + QString _defaultStyle; /// Default application style sheet + + QList* _pChatList; /// List of cached chat widgets + QList* _pOpenChatList; /// List of active/open chat widgets + TocMainToolbar* _pMainToolbar; /// Pointer to a toolbar that allows user to control the UI + QStackedLayout* _pMainLayout; /// Layout displaying all the "following" widgets + QWidget* _pCentralWidget; /// Main Window's Central Widget + TocContactListWidget* _pContactList; /// Widget displaying list of contacts + TocUserInfoWidget* _pUserInfoWidget; /// Widget displaying contact info + TocSettingsWidget* _pSettingsWidget; /// Widget displaying settings window + TocGeneralSettingsWidget* _pGeneralWidget; /// Widget displaying general settings + TocAccountSettingsWidget* _pAccountWidget; /// Widget displaying account settings + TocAccountIntermediateWidget* _pIntermediateWidget; /// Widget that lets user to choose account settings mode + TocThemesSettingsWidget* _pThemesWidget; /// Widget displaying themes setting + bool _register; /// Flag indicating if TietoOpCom is in "Create Account Mode" +}; + +QT_END_NAMESPACE + +#endif // TOCMAINWINDOW_H diff --git a/include/TocUi/tocsettingswidget.h b/include/TocUi/tocsettingswidget.h new file mode 100644 index 0000000..34c790f --- /dev/null +++ b/include/TocUi/tocsettingswidget.h @@ -0,0 +1,97 @@ +/** \file TocSettingsWidget.h + * \brief Declaration of TocSettingsWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCSETTINGSWIDGET_H +#define TOCSETTINGSWIDGET_H + +#include +#include "defs.h" + +class QSignalMapper; +class QPushButton; +class QFrame; + +QT_BEGIN_NAMESPACE + +/** \brief TocSettingsWidget class + * + * Widged used to display available configuration windows and + * to choose between them. + */ +class TocSettingsWidget : public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocSettingsWidget( QWidget * parent = 0, Qt::WindowFlags flags = 0 ); + + /** + * Destructor + */ + ~TocSettingsWidget(); + +signals: + + /** \brief Emited when user selects settings subsection + * + * ViewType is casted to int because TocSettingsWidget + * uses a QSignalMapper for convenience. + * + * @param viewType ViewType casted to int of the selected settings + */ + void triggered(/*ViewType*/int viewType); + +private: // Methods + + /** \brief Sets style sheets for each widget + * + * Used to overload style sheet properties that could come from main style sheet, + * to forbid corruption of the application layout from the external style sheets. + */ + void setupStyles(); + +private: // Members + + QSignalMapper* signalMapper; /// QSignalMapper used for convenience + QPushButton* generalButton; /// General Settings button + QPushButton* accountButton; /// Account Settings button + QPushButton* backButton; /// Back button + QPushButton* themesButton; /// Themes Settings button + QFrame* settingsFrame; /// Background frame of window +}; + +QT_END_NAMESPACE + +#endif // TOCSETTINGSWIDGET_H diff --git a/include/TocUi/tocthemessettingswidget.h b/include/TocUi/tocthemessettingswidget.h new file mode 100644 index 0000000..928f044 --- /dev/null +++ b/include/TocUi/tocthemessettingswidget.h @@ -0,0 +1,105 @@ +/** \file TocThemesSettingsWidget.h + * \brief Declaration of TocThemesSettingsWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCTHEMESSETTINGSWIDGET_H +#define TOCTHEMESSETTINGSWIDGET_H + +#include "defs.h" + +#include + +class Ui_TocThemesSettingsWidgetClass; + +class QShowEvent; + +QT_BEGIN_NAMESPACE + +/** \brief TocThemesSettingsWidget class + * + * Configuration window for application themes settings. + */ +class TocThemesSettingsWidget : public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocThemesSettingsWidget(QWidget* parent = 0, Qt::WindowFlags flags = 0); + + /** + * Destructor + */ + ~TocThemesSettingsWidget(); + +signals: + + /** \brief Emited when user wants to close Theme view and without saving changes. + * + */ + void backClicked(); + + /** \brief Emited when user wants to change application theme. + * + */ + void currentThemeChanged(); + +protected: + + /** \brief Reimplemented from QWidget + * + */ + virtual void showEvent( QShowEvent* event ); + +private slots: + + /** \brief Used to save the themes settings + * + * This slot is used when apply button is pressed. + * Data from the Theme list (active theme and all the themes) + * are stored in TocSettings. + * + * If Theme has been changed it emits currenThemeChanged() signal. + */ + void saveThemesSettings(); + +private: // Methods + +private: // Members + + Ui_TocThemesSettingsWidgetClass* ui; /// Ui definition header +}; + +QT_END_NAMESPACE + +#endif // TOCTHEMESSETTINGSWIDGET_H diff --git a/include/TocUi/tocuserinfowidget.h b/include/TocUi/tocuserinfowidget.h new file mode 100644 index 0000000..07b4091 --- /dev/null +++ b/include/TocUi/tocuserinfowidget.h @@ -0,0 +1,122 @@ +/** \file TocUserInfoWidget.h + * \brief Declaration of TocUserInfoWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCUSERINFOWIDGET_H +#define TOCUSERINFOWIDGET_H + +#include "defs.h" + +#include + + +class Ui_TocUserInfoWidgetClass; +class IconProvider; +class TocContactListWidget; +class QListWidgetItem; + +QT_BEGIN_NAMESPACE + +/** \brief TocUserInfoWidget class + * + */ +class TocUserInfoWidget : public QWidget +{ + Q_OBJECT + +public: + + /** + * Public Constructor + */ + TocUserInfoWidget( QListWidgetItem * contactItem, TocContactListWidget * parent, Qt::WindowFlags flags = 0 ); + + /** + * Destructor + */ + ~TocUserInfoWidget(); + +signals: + + /** \brief Emited when user commits the changes + * + * This signal is emited when user finished editing or creating contacts data. + * + * @param contactItem Newly created item or edited item representing the contact + */ + void contactChanged(QListWidgetItem* contactItem); + + /** \brief Emited when user confirms or discards the changes + * + * This signal is emited when user clicked OK or Cancel button. + */ + void finished(); + +protected: + + /** \brief Reimplemented from QWidget + * + */ + virtual void showEvent(QShowEvent* event); + +private slots: + + /** \brief Used when user finishes editing contacts data + * + * When user adds new contact this slot should create a new QListWidgetItem AND + * TocContact with the data provided, and emit it with contactChanged( QListWidgetItem* ) signal. + * If user edits contact's data it should save the data in an item AND it's + * TocContact provided and emit them with contactChanged( QListWidgetItem* ) signal. + */ + void okClicked(); + + /** \brief Used to react on changes to the Gender ComboBox + * + * When user changes the combo box selection, this slot should change + * an icon (if no custom icon is set by the user). + * + * @param index Current changed index + */ + void onCurrentIndexChanged( int index ); + +private: // Members + + Ui_TocUserInfoWidgetClass* ui; /// Ui definition header + QListWidgetItem* _pContactItem; /// Item given to the constructor + QString _customPicturePath; /// Contact's PictureUrl + QString _newCustomPicturePath; /// Contact's PictureUrl + int _currentIndex; /// Previous index + IconProvider* _pIconProvider; /// Class that provides contact icons + TocContactListWidget* _pContactList; /// Contact list for which the widget is displayed +}; + +QT_END_NAMESPACE + +#endif // TOCUSERINFOWIDGET_H diff --git a/include/defs.h b/include/defs.h new file mode 100644 index 0000000..fddadb6 --- /dev/null +++ b/include/defs.h @@ -0,0 +1,123 @@ +/** \file defs.h + * \brief Declarations of global typedefs and enumerators. + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef DEFS_H +#define DEFS_H + +#include + + +enum Status { + Connected = 0, + Connecting, + Disconnected +}; + +Q_DECLARE_METATYPE(Status); + +enum Presence { + Unspecified = 0, + Offline = 1, //must be 1 to be inline with Tapioca + Available, + Away, + XA, + Hidden, + Busy +}; + +Q_DECLARE_METATYPE(Presence); + +enum Reason { + NoneSpecified = 0, + Requested, + NetworkError, + AuthenticationFailed, + EncryptionError, + NameInUse, + CertificateNotProvided, + CertificateUntrusted, + CertificateExpired, + CertificateNotActivated, + CertificateHostnameMismatch, + CertificateFingerPrintMismatch, + CertificateSigned, + CertificateOtherError +}; + +Q_DECLARE_METATYPE(Reason); + +enum Gender { + NotSpecified, + Male, + Female +}; + +Q_DECLARE_METATYPE(Gender); + +struct TocContact +{ + QString uid; + QString name; + QString customIconPath; + int customIconId; + Gender gender; + Presence presence; + QString description; +}; + +typedef QList TocContactList; + +Q_DECLARE_METATYPE(TocContactList); + +enum MessageDeliveryError { + Unknown = 0, + ContactOffline, + InvalidContact, + PermissionDenied, + MessageTooLong, + UserOffline, + NotOnContactList, + CannotCreateChannel, + NoError +}; + +Q_DECLARE_METATYPE(MessageDeliveryError); + +struct Message +{ + QString contents; + uint timestamp; + MessageDeliveryError error; +}; + +Q_DECLARE_METATYPE(Message); + +#endif // DEFS_H diff --git a/include/include.pri b/include/include.pri new file mode 100644 index 0000000..588533d --- /dev/null +++ b/include/include.pri @@ -0,0 +1,12 @@ +DEPENDPATH += $$PWD +INCLUDEPATH += $$PWD + +# Input +HEADERS += version.h \ + defs.h \ + macros.h \ + TocSettings \ + tocsettings.h + +include(TocUi/TocUi.pri) +include(TocEngine/TocEngine.pri) diff --git a/include/macros.h b/include/macros.h new file mode 100644 index 0000000..c0bdc02 --- /dev/null +++ b/include/macros.h @@ -0,0 +1,46 @@ +/** \file macros.h + * \brief Definitions of macros used in project + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef MACROS_H +#define MACROS_H + +#ifdef QT_NO_DEBUG + + #define CONNECT(a, b, c, d) QObject::connect(a, b, c, d); + +#else + + #define CONNECT(a, b, c, d) Q_ASSERT( QObject::connect(a, b, c, d) ); + +#endif + +#endif // MACROS_H + diff --git a/include/tocsettings.h b/include/tocsettings.h new file mode 100644 index 0000000..89cb20c --- /dev/null +++ b/include/tocsettings.h @@ -0,0 +1,334 @@ +/** \file TocSettings.h + * \brief Declaration of TocSettings class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef TOCSETTINGS_H +#define TOCSETTINGS_H + +#include "defs.h" + +#include +#include + +enum SortOrder { + Alphabetical, + ByStatus, + None +}; + +Q_DECLARE_METATYPE(SortOrder); + +enum AuthorizationRule { + Ask, + AlwaysAccept, + AlwaysDeny +}; + +Q_DECLARE_METATYPE(AuthorizationRule); + +class TocSettings { + +public: + + /** \brief Static public constructor + * + * @return Pointer to the static instance + */ + static TocSettings* getInstance(); + + /** \brief Public destructor + * + */ + ~TocSettings(); + + /** \brief Getter for current account name + * + * @return Account name + */ + const QString& accountName(); + + /** \brief Setter for current account name + * + * @param accountName New account name + */ + void setAccountName(const QString& accountName); + + /** \brief Getter for current account uid + * + * @return Account uid + */ + const QString& accountUid(); + + /** \brief Setter for current account uid + * + * @param uid New account uid + */ + void setAccountUid(const QString& uid); + + /** \brief Getter for current account password + * + * @return Account password + */ + const QString& accountPasswd(); + + /** \brief Setter for current account password + * + * @param password New account password + */ + void setAccountPasswd(const QString& password); + + /** \brief Getter for current protocol + * + * @return Protocol used + */ + const QString& protocol(); + + /** \brief Setter for current protocol + * + * @param protocol Protocol name + */ + void setProtocol(const QString& protocol); + + /** \brief Getter for protocol common name + * + * @return Protocol common used name + */ + const QString protocolCommonName(); + + /** \brief Setter for current protocol by service name + * + * @param service Service name + */ + void setProtocolByName(const QString& service); + + /** \brief Getter for available protocols + * + * @return Available protocols + */ + const QStringList& protocols(); + + /** \brief Setter for availabe protocols + * + * @param protocols List of protocols names + */ + void setProtocols(const QStringList& protocols); + + /** \brief Getter for current server + * + * @return Server name + */ + const QString& server(); + + /** \brief Setter for current server + * + * @param server Server name + */ + void setServer(const QString& server); + + /** \brief Getter for currently used port + * + * @return Port number + */ + int port(); + + /** \brief Setter for currently used port + * + * @param port Port number + */ + void setPort(int port); + + /** \brief Getter for `old-ssl` connection property + * + * @return True if connection needs `old-ssl` enabled + */ + bool isOldSslEnabled(); + + /** \brief Setter for `old-ssl` connection property + * + * @param bEnabled True if connection needs `old-ssl` enabled + */ + void setOldSslEnabled(bool bEnabled); + + /** \brief Getter for `ignore-ssl-errors` connection property + * + * @return True if connection needs `ignore-ssl-errors` enabled + */ + bool isIgnoreSslErrorsEnabled(); + + /** \brief Setter for `ignore-ssl-errors` connection property + * + * @param bEnabled True if connection needs `ignore-ssl-errors` enabled + */ + void setIgnoreSslErrorsEnabled(bool bEnabled); + + /** \brief Getter for saved contact list + * + * @return List of TocContact's + */ + TocContactList* contactList(); + + /** \brief Getter for list of contacts to be added to server + * + * @return List of Uids to be added + */ + QStringList* contactsToAdd(); + + /** \brief Getter for list of contacts to be removed from server + * + * @return List of Uids to be removed + */ + QStringList* contactsToRemove(); + + /** \brief Getter for sort order policy + * + * @return Sorting order policy + */ + SortOrder sortOrder(); + + /** \brief Setter for sort order policy + * + * @param sortOrder Sorting order policy + */ + void setSortOrder(SortOrder sortOrder); + + /** \brief Getter for authorization rule + * + * @return Authorization rule + */ + AuthorizationRule authorizationRule(); + + /** \brief Setter for authorization rule + * + * @param rule Authorization rule + */ + void setAuthorizationRule(AuthorizationRule rule); + + /** \brief Getter for current ui theme + * + * @return File name of the style sheet file + */ + const QString& currentTheme(); + + /** \brief Setter for current ui theme + * + * @param theme File name of the style sheet file + */ + void setCurrentTheme(const QString& theme); + + /** \brief Returns a server hint for given data + * + * @param uid Account login + * @param serviceName Common name of the service/protocol (eg. Jabber, Google Talk, SIP) + * @return Default server for the data + */ + const QString& serverHint( const QString& uid, const QString& serviceName); + + /** \brief Returns a port hint for given data + * + * @param uid Account login + * @param serviceName Common name of the service/protocol (eg. Jabber, Google Talk, SIP) + * @return Default server for the data + */ + int portHint( const QString& uid, const QString& serviceName); + + /** \brief Returns true if such protocol is already supported + * + * @param protocol Protocol to check + * @return True if protocol already exist + */ + bool isProtocolInstalled(const QString& protocol); + + /** \brief Add a new protocol to the list of supported protocols + * + * @param commonName Protocol's common name + * @param protocol Protocol's identifier (according to the Telepathy spec) + */ + void installProtocol(const QString& commonName, const QString& protocol); + + /** \brief One shot getter for the `register` parameter of the connection + * + * When it returns the "true" value it sets it immediately to "false". + * + * @return true if user wants to register an account instead of logging in + */ + bool isRegister(); + + /** \brief Setter for the `register` parameter of the connection + * + * When it is invoked it sets the `register` parameter to "true" + * + */ + void setRegister(); + +private: + + /** \brief Private constructor + * + */ + TocSettings(); + + /** \brief Used to read settings with QSettings + * + * It's meant to be used only in destructor. That's why it's private. + */ + void read(); + + + /** \brief Used to save settings with QSettings + * + * It's meant to be used only when creating an instance. That's why it's private. + */ + void save(); + + static TocSettings* _pSelf; + + QString _accountName; + QString _accountUid; + QString _accountPasswd; + QString _protocol; + QStringList _protocols; + QString _protocolCommonName; + QString _server; + QString _serverHint; + int _port; + int _portHint; + bool _bOldSsl; + bool _bIgnoreSslErrors; + QList* _pContactList; + QStringList _addedContacts; + QStringList _removedContacts; + AuthorizationRule _authorizationRule; + SortOrder _sortOrder; + QString _currentTheme; + QMap* _pProtocolMap; + bool _register; +}; + +#endif // TOCSETTINGS_H diff --git a/include/uidefs.h b/include/uidefs.h new file mode 100644 index 0000000..1612a7a --- /dev/null +++ b/include/uidefs.h @@ -0,0 +1,113 @@ +/** \file uidefs.h + * \brief Declarations of global typedefs and enumerators for UI. + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#ifndef UIDEFS_H +#define UIDEFS_H + +#define STYLESHEET_ONLINE "QFrame { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0,"\ +"stop: 0 #00aa00, stop: 0.55 #00aa00,"\ +"stop: 0.56 #00bb00, stop: 1 #00ff00);}" + +#define STYLESHEET_AWAY "QFrame { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0,"\ +"stop: 0 #999900, stop: 0.55 #aaaa00,"\ +"stop: 0.56 #bbbb00, stop: 1 #ffff00);}" + +#define STYLESHEET_BUSY "QFrame { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0,"\ +"stop: 0 #990000, stop: 0.55 #aa0000,"\ +"stop: 0.56 #bb0000, stop: 1 #ff0000);}" + +#define STYLESHEET_OFFLINE "QFrame { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0,"\ +"stop: 0 #999, stop: 0.55 #aaa,"\ +"stop: 0.56 #bbb, stop: 1 #fff);}" + +#define LOGO_BLUE qRgb( 0, 128, 197) +#define LOGO_LIGHT_BLUE qRgb(118, 206, 234) +#define LOGO_GREEN qRgb(153, 204, 51) +#define LOGO_ORANGE qRgb(255, 153, 51) +#define LOGO_RED qRgb(230, 40, 88) + +enum ViewType { + Login, + Contacts, + Chat, + UserInfo, + Settings, + General, + Account, + AccountCreate, + AccountIntermediate, + FTU, + Themes +}; + +Q_DECLARE_METATYPE(ViewType); + +enum TecUserRole { + DisplayRole, + DecorationRole, ///An icon merged with status frame + ContactRole = Qt::UserRole +}; + +#ifdef QT_NO_DEBUG + #define emotsPath QString("/usr/share/tietoopcom/emoticons/") +#else + #define emotsPath QString("./data/emoticons/") +#endif //QT_NO_DEBUG + +#define emotSmile_32x32 emotsPath + "face-smile32x32.png" +#define emotSad_32x32 emotsPath + "face-sad32x32.png" +#define emotWink_32x32 emotsPath + "face-wink32x32.png" +#define emotGrin_32x32 emotsPath + "face-grin32x32.png" +#define emotSurprise_32x32 emotsPath + "face-surprise32x32.png" +#define emotPlain_32x32 emotsPath + "face-plain32x32.png" +#define emotKiss_32x32 emotsPath + "face-kiss32x32.png" +#define emotAngel_32x32 emotsPath + "face-angel32x32.png" +#define emotDevil_32x32 emotsPath + "face-devilish32x32.png" +#define emotMonkey_32x32 emotsPath + "face-monkey32x32.png" +#define emotCrying_32x32 emotsPath + "face-crying32x32.png" +#define emotGlasses_32x32 emotsPath + "face-glasses32x32.png" +#define emotSmileBig_32x32 emotsPath + "face-smile-big32x32.png" + +#define emotSmile_24x24 emotsPath + "face-smile24x24.png" +#define emotSad_24x24 emotsPath + "face-sad24x24.png" +#define emotWink_24x24 emotsPath + "face-wink24x24.png" +#define emotGrin_24x24 emotsPath + "face-grin24x24.png" +#define emotSurprise_24x24 emotsPath + "face-surprise24x24.png" +#define emotPlain_24x24 emotsPath + "face-plain24x24.png" +#define emotKiss_24x24 emotsPath + "face-kiss24x24.png" +#define emotAngel_24x24 emotsPath + "face-angel24x24.png" +#define emotDevil_24x24 emotsPath + "face-devilish24x24.png" +#define emotMonkey_24x24 emotsPath + "face-monkey24x24.png" +#define emotCrying_24x24 emotsPath + "face-crying24x24.png" +#define emotGlasses_24x24 emotsPath + "face-glasses24x24.png" +#define emotSmileBig_24x24 emotsPath + "face-smile-big24x24.png" + +#endif // UIDEFS_H diff --git a/include/version.h b/include/version.h new file mode 100644 index 0000000..8e91446 --- /dev/null +++ b/include/version.h @@ -0,0 +1,8 @@ +#ifndef __version_h__ +#define __version_h__ + +#define APP_NAME "Tieto Open Communicator" +#define VERSION "0.5.@REVISION@" +#define TARGET "tietoopcom" + +#endif diff --git a/include/version.in b/include/version.in new file mode 100644 index 0000000..d50c13e --- /dev/null +++ b/include/version.in @@ -0,0 +1,8 @@ +#ifndef __version_h__ +#define __version_h__ + +#define APP_NAME "Tieto Open Communicator" +#define VERSION "0.5.@REVISION@" +#define TARGET "@TARGET@" + +#endif diff --git a/info/exclude b/info/exclude new file mode 100644 index 0000000..2c87b72 --- /dev/null +++ b/info/exclude @@ -0,0 +1,6 @@ +# git-ls-files --others --exclude-from=.git/info/exclude +# Lines that start with '#' are comments. +# For a project mostly in C, the following would be a good set of +# exclude patterns (uncomment them if you want to use them): +# *.[oa] +# *~ diff --git a/resources/account.png b/resources/account.png new file mode 100644 index 0000000000000000000000000000000000000000..cfa19d2542a0485b74779c0d91ae2468a060f743 GIT binary patch literal 11001 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 USp^OJ7ytkO07*qoM6N<$f|iUikN^Mx literal 0 HcmV?d00001 diff --git a/resources/away.png b/resources/away.png new file mode 100644 index 0000000000000000000000000000000000000000..75baace4b44a651a2a26d16f8893c5a678da677b GIT binary patch literal 3789 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 DZ+2#$ literal 0 HcmV?d00001 diff --git a/resources/busy.png b/resources/busy.png new file mode 100644 index 0000000000000000000000000000000000000000..d677155a128b3392b1d8386f766e18b3447f464b GIT binary patch literal 3119 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 DomZcX literal 0 HcmV?d00001 diff --git a/resources/contacts.png b/resources/contacts.png new file mode 100644 index 0000000000000000000000000000000000000000..9b04437b885c59afc2c2762ed2468a03162eccd5 GIT binary patch literal 8273 zcmV-XAg004&%004{+008|`004nN004b?008NW002DY000@xb3BE2000U( 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 P00000NkvXXu0mjfUK!H$ literal 0 HcmV?d00001 diff --git a/resources/enter.png b/resources/enter.png new file mode 100644 index 0000000000000000000000000000000000000000..3f7ff880f6a9688f88cc75f139f6f428ff910dce GIT binary patch literal 2055 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 literal 0 HcmV?d00001 diff --git a/resources/network.png b/resources/network.png new file mode 100644 index 0000000000000000000000000000000000000000..921ae4b164387d3235d7a5db0911433b81c745c7 GIT binary patch literal 5571 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 R+ExGn002ovPDHLkV1nTq$ngLG literal 0 HcmV?d00001 diff --git a/resources/offline.png b/resources/offline.png new file mode 100644 index 0000000000000000000000000000000000000000..db2870deafaa4900cc9e34bb2de6c4e2c293ada2 GIT binary patch literal 2472 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 literal 0 HcmV?d00001 diff --git a/resources/redframe.png b/resources/redframe.png new file mode 100644 index 0000000000000000000000000000000000000000..e723b78bdc68897a8c43fa33e60be3fbf5cea973 GIT binary patch literal 1250 zcmV<81ReW{P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L02U_CX>@2HM@dakSAh-}000C%NklM0)fkp2*57;)C8K5dPgJe zN(WV|)hIdbX;wS)^!j!8%(Qe501fcm;LhNgKmuc!6(2pd})(lC<8__?X3HAE%*iaIRMXr7rOC-G-iWuBXwYy zpf&g+2$U|yhSo$-@*8gr7|n=n9QTbJi-0C15l!Qc=PjN2v|AO|BW9&&CfGm-0D@(W zo7hMlC?6s?Y*AD4ersUHtsBe1utLc_xk2}!Y|(r?5XmG2H&bTTCO}j$GdJ+o3ZQIB zOBjOBn}WwV7*g;eLqVD2=hiw+c}UG|8(^3XVBAvhK9&(6aOjgYV-62VXtgbNh-fBr zCZF^(Oa(9$B0V|t(V1&U%2&K*Bw%6lBVn$5EaZeYq$YRS=V~%*0oiI5#Qz$HocqTApXe$YJ_A>b>+WPMGWC_I)i`2)_tlDXZ?VTMMsXeM*$Kcb_fl6w8e9)1S!2F6vH zi6JW7KnAyKs5`}^JZC5|!KTG=)o&iTmbO*Nuki+41$X*Rt{F=@I7NBQ2-zHPtTfG% zz^V*N>!{cUgLi_b&OIe&sPN=QWA$KqQ^?m%UB^d^bRC@}n7MbFOchJ29G&{U-gG?epbCi^X%mTBR!Z3l;#pIKQUt`m{Pu|WJf{=oA0*-*T5^__Yi6G zgTbFId;@&xpUBi378*uxTUewyr+BS7Ku;0nV=+n01K$F_0&f8O7w<`&K8dF7VE_OC M07*qoM6N<$f`)!J8~^|S literal 0 HcmV?d00001 diff --git a/resources/restore.png b/resources/restore.png new file mode 100644 index 0000000000000000000000000000000000000000..0a93131036cecdf0525bae16753a00480b895384 GIT binary patch literal 2312 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 literal 0 HcmV?d00001 diff --git a/resources/themes.png b/resources/themes.png new file mode 100644 index 0000000000000000000000000000000000000000..65c07ec34e1b25697191c86eba92de93fe340fad GIT binary patch literal 7886 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 literal 0 HcmV?d00001 diff --git a/resources/tieto-logo.png b/resources/tieto-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..60127136c5ceb88f03b9e14be2d1dd479b8cfcbe GIT binary patch literal 1080 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 literal 0 HcmV?d00001 diff --git a/src/Makefile b/src/Makefile new file mode 100644 index 0000000..44e127f --- /dev/null +++ b/src/Makefile @@ -0,0 +1,155 @@ +############################################################################# +# Makefile for building: ../bin/tietoopcom +# Generated by qmake (2.01a) (Qt 4.6.2) on: Thu Jul 8 08:48:05 2010 +# Project: src.pro +# Template: app +# Command: /usr/bin/qmake -unix -o Makefile src.pro +############################################################################# + +first: release +install: release-install +uninstall: release-uninstall +MAKEFILE = Makefile +QMAKE = /usr/bin/qmake +DEL_FILE = rm -f +CHK_DIR_EXISTS= test -d +MKDIR = mkdir -p +COPY = cp -f +COPY_FILE = $(COPY) +COPY_DIR = $(COPY) -r +INSTALL_FILE = install -m 644 -p +INSTALL_PROGRAM = install -m 755 -p +INSTALL_DIR = $(COPY_DIR) +DEL_FILE = rm -f +SYMLINK = ln -f -s +DEL_DIR = rmdir +MOVE = mv -f +CHK_DIR_EXISTS= test -d +MKDIR = mkdir -p +SUBTARGETS = \ + release \ + debug + +release: $(MAKEFILE).Release FORCE + $(MAKE) -f $(MAKEFILE).Release +release-make_default: $(MAKEFILE).Release FORCE + $(MAKE) -f $(MAKEFILE).Release +release-make_first: $(MAKEFILE).Release FORCE + $(MAKE) -f $(MAKEFILE).Release first +release-all: $(MAKEFILE).Release FORCE + $(MAKE) -f $(MAKEFILE).Release all +release-clean: $(MAKEFILE).Release FORCE + $(MAKE) -f $(MAKEFILE).Release clean +release-distclean: $(MAKEFILE).Release FORCE + $(MAKE) -f $(MAKEFILE).Release distclean +release-install: $(MAKEFILE).Release FORCE + $(MAKE) -f $(MAKEFILE).Release install +release-uninstall: $(MAKEFILE).Release FORCE + $(MAKE) -f $(MAKEFILE).Release uninstall +debug: $(MAKEFILE).Debug FORCE + $(MAKE) -f $(MAKEFILE).Debug +debug-make_default: $(MAKEFILE).Debug FORCE + $(MAKE) -f $(MAKEFILE).Debug +debug-make_first: $(MAKEFILE).Debug FORCE + $(MAKE) -f $(MAKEFILE).Debug first +debug-all: $(MAKEFILE).Debug FORCE + $(MAKE) -f $(MAKEFILE).Debug all +debug-clean: $(MAKEFILE).Debug FORCE + $(MAKE) -f $(MAKEFILE).Debug clean +debug-distclean: $(MAKEFILE).Debug FORCE + $(MAKE) -f $(MAKEFILE).Debug distclean +debug-install: $(MAKEFILE).Debug FORCE + $(MAKE) -f $(MAKEFILE).Debug install +debug-uninstall: $(MAKEFILE).Debug FORCE + $(MAKE) -f $(MAKEFILE).Debug uninstall + +Makefile: src.pro /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/linux-g++/qmake.conf /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/g++.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/unix.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/linux.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/qconfig.pri \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_functions.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_config.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/exclusive_builds.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_pre.prf \ + TocUi/TocUi.pri \ + TocEngine/TocEngine.pri \ + ../include/TocUi/TocUi.pri \ + ../include/TocEngine/TocEngine.pri \ + ../include/include.pri \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/release.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/debug_and_release.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_post.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qdbus.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/moc.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/dbusinterfaces.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/dbusadaptors.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/warn_on.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/unix/thread.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/resources.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/uic.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/yacc.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/lex.prf \ + /usr/lib/libQtDBus.prl \ + /usr/lib/libQtXml.prl \ + /usr/lib/libQtCore.prl \ + /usr/lib/libQtGui.prl + $(QMAKE) -unix -o Makefile src.pro +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/g++.conf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/unix.conf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/linux.conf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/qconfig.pri: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_functions.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_config.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/exclusive_builds.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_pre.prf: +TocUi/TocUi.pri: +TocEngine/TocEngine.pri: +../include/TocUi/TocUi.pri: +../include/TocEngine/TocEngine.pri: +../include/include.pri: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/release.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/debug_and_release.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_post.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qdbus.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/moc.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/dbusinterfaces.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/dbusadaptors.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/warn_on.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/unix/thread.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/resources.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/uic.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/yacc.prf: +/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/lex.prf: +/usr/lib/libQtDBus.prl: +/usr/lib/libQtXml.prl: +/usr/lib/libQtCore.prl: +/usr/lib/libQtGui.prl: +qmake: qmake_all FORCE + @$(QMAKE) -unix -o Makefile src.pro + +qmake_all: FORCE + +make_default: release-make_default debug-make_default FORCE +make_first: release-make_first debug-make_first FORCE +all: release-all debug-all FORCE +clean: release-clean debug-clean FORCE +distclean: release-distclean debug-distclean FORCE + -$(DEL_FILE) Makefile + +release-mocclean: $(MAKEFILE).Release + $(MAKE) -f $(MAKEFILE).Release mocclean +debug-mocclean: $(MAKEFILE).Debug + $(MAKE) -f $(MAKEFILE).Debug mocclean +mocclean: release-mocclean debug-mocclean + +release-mocables: $(MAKEFILE).Release + $(MAKE) -f $(MAKEFILE).Release mocables +debug-mocables: $(MAKEFILE).Debug + $(MAKE) -f $(MAKEFILE).Debug mocables +mocables: release-mocables debug-mocables +FORCE: + +$(MAKEFILE).Release: Makefile +$(MAKEFILE).Debug: Makefile diff --git a/src/Makefile.Debug b/src/Makefile.Debug new file mode 100644 index 0000000..9002273 --- /dev/null +++ b/src/Makefile.Debug @@ -0,0 +1,555 @@ +############################################################################# +# Makefile for building: ../bin/tietoopcom_debug +# Generated by qmake (2.01a) (Qt 4.6.2) on: Thu Jul 8 08:48:05 2010 +# Project: src.pro +# Template: app +############################################################################# + +####### Compiler, tools and options + +CC = gcc +CXX = g++ +DEFINES = -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED +CFLAGS = -pipe -g -Wall -W -D_REENTRANT $(DEFINES) +CXXFLAGS = -pipe -g -Wall -W -D_REENTRANT $(DEFINES) +INCPATH = -I/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/linux-g++ -I. -I/targets/FREMANTLE_X86/usr/include/QtCore -I/targets/FREMANTLE_X86/usr/include/QtGui -I/targets/FREMANTLE_X86/usr/include -I/targets/FREMANTLE_X86/usr/include/QtDBus -I. -ITocUi -ITocEngine -I../include -I../include/TocUi -I../include/TocEngine -I../build/debug -I../build/debug +LINK = g++ +LFLAGS = -Wl,-rpath,/usr/lib +LIBS = $(SUBLIBS) -L/usr/lib -lQtTapioca -lQtDBus -L/usr/lib -lQtXml -lQtGui -L/usr/X11R6/lib -lQtCore -lpthread +AR = ar cqs +RANLIB = +QMAKE = /usr/bin/qmake +TAR = tar -cf +COMPRESS = gzip -9f +COPY = cp -f +SED = sed +COPY_FILE = $(COPY) +COPY_DIR = $(COPY) -r +STRIP = strip +INSTALL_FILE = install -m 644 -p +INSTALL_DIR = $(COPY_DIR) +INSTALL_PROGRAM = install -m 755 -p +DEL_FILE = rm -f +SYMLINK = ln -f -s +DEL_DIR = rmdir +MOVE = mv -f +CHK_DIR_EXISTS= test -d +MKDIR = mkdir -p + +####### Output directory + +OBJECTS_DIR = ../build/debug/ + +####### Files + +SOURCES = main.cpp \ + TocSettings.cpp \ + TocUi/TocBaseMainWindow.cpp \ + TocUi/TocMainWindow.cpp \ + TocUi/TocContactListWidget.cpp \ + TocUi/TocChatWidget.cpp \ + TocUi/TocUserInfoWidget.cpp \ + TocUi/TocSettingsWidget.cpp \ + TocUi/TocGeneralSettingsWidget.cpp \ + TocUi/TocAccountSettingsWidget.cpp \ + TocUi/TocAccountIntermediateWidget.cpp \ + TocUi/TocThemesSettingsWidget.cpp \ + TocUi/TocMainToolbar.cpp \ + TocUi/IconProvider.cpp \ + TocUi/TocEmoticonsDialog.cpp \ + TocEngine/TocBaseEngine.cpp \ + TocEngine/TocEngine.cpp ../build/debug/moc_tocbasemainwindow.cpp \ + ../build/debug/moc_tocmainwindow.cpp \ + ../build/debug/moc_toccontactlistwidget.cpp \ + ../build/debug/moc_tocchatwidget.cpp \ + ../build/debug/moc_tocuserinfowidget.cpp \ + ../build/debug/moc_tocsettingswidget.cpp \ + ../build/debug/moc_tocgeneralsettingswidget.cpp \ + ../build/debug/moc_tocaccountsettingswidget.cpp \ + ../build/debug/moc_tocaccountintermediatewidget.cpp \ + ../build/debug/moc_tocthemessettingswidget.cpp \ + ../build/debug/moc_tocmaintoolbar.cpp \ + ../build/debug/moc_tocemoticonsdialog.cpp \ + ../build/debug/moc_tocbaseengine.cpp \ + ../build/debug/moc_tocengine.cpp \ + ../build/debug/qrc_application.cpp +OBJECTS = ../build/debug/main.o \ + ../build/debug/TocSettings.o \ + ../build/debug/TocBaseMainWindow.o \ + ../build/debug/TocMainWindow.o \ + ../build/debug/TocContactListWidget.o \ + ../build/debug/TocChatWidget.o \ + ../build/debug/TocUserInfoWidget.o \ + ../build/debug/TocSettingsWidget.o \ + ../build/debug/TocGeneralSettingsWidget.o \ + ../build/debug/TocAccountSettingsWidget.o \ + ../build/debug/TocAccountIntermediateWidget.o \ + ../build/debug/TocThemesSettingsWidget.o \ + ../build/debug/TocMainToolbar.o \ + ../build/debug/IconProvider.o \ + ../build/debug/TocEmoticonsDialog.o \ + ../build/debug/TocBaseEngine.o \ + ../build/debug/TocEngine.o \ + ../build/debug/moc_tocbasemainwindow.o \ + ../build/debug/moc_tocmainwindow.o \ + ../build/debug/moc_toccontactlistwidget.o \ + ../build/debug/moc_tocchatwidget.o \ + ../build/debug/moc_tocuserinfowidget.o \ + ../build/debug/moc_tocsettingswidget.o \ + ../build/debug/moc_tocgeneralsettingswidget.o \ + ../build/debug/moc_tocaccountsettingswidget.o \ + ../build/debug/moc_tocaccountintermediatewidget.o \ + ../build/debug/moc_tocthemessettingswidget.o \ + ../build/debug/moc_tocmaintoolbar.o \ + ../build/debug/moc_tocemoticonsdialog.o \ + ../build/debug/moc_tocbaseengine.o \ + ../build/debug/moc_tocengine.o \ + ../build/debug/qrc_application.o +DIST = /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/g++.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/unix.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/linux.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/qconfig.pri \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_functions.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_config.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/exclusive_builds.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_pre.prf \ + TocUi/TocUi.pri \ + TocEngine/TocEngine.pri \ + ../include/TocUi/TocUi.pri \ + ../include/TocEngine/TocEngine.pri \ + ../include/include.pri \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/debug.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/debug_and_release.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_post.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/build_pass.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qdbus.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/moc.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/dbusinterfaces.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/dbusadaptors.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/warn_on.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/unix/thread.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/resources.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/uic.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/yacc.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/lex.prf \ + src.pro +QMAKE_TARGET = tietoopcom_debug +DESTDIR = ../bin/ +TARGET = ../bin/tietoopcom_debug + +first: all +####### Implicit rules + +.SUFFIXES: .o .c .cpp .cc .cxx .C + +.cpp.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<" + +.cc.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<" + +.cxx.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<" + +.C.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<" + +.c.o: + $(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<" + +####### Build rules + +all: Makefile.Debug $(TARGET) + +$(TARGET): ../build/debug/ui_TocChatWidget.h ../build/debug/ui_TocUserInfoWidget.h ../build/debug/ui_TocGeneralSettingsWidget.h ../build/debug/ui_TocAccountSettingsWidget.h ../build/debug/ui_TocThemesSettingsWidget.h ../build/debug/ui_TocEmoticonsDialog.h $(OBJECTS) + @$(CHK_DIR_EXISTS) ../bin/ || $(MKDIR) ../bin/ + $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS) + +qmake: FORCE + @$(QMAKE) -unix -o Makefile.Debug src.pro + +dist: + @$(CHK_DIR_EXISTS) ../build/debug/tietoopcom_debug1.0.0 || $(MKDIR) ../build/debug/tietoopcom_debug1.0.0 + $(COPY_FILE) --parents $(SOURCES) $(DIST) ../build/debug/tietoopcom_debug1.0.0/ && $(COPY_FILE) --parents ../include/version.h ../include/defs.h ../include/macros.h ../include/TocSettings ../include/tocsettings.h ../include/TocUi/TocBaseMainWindow ../include/TocUi/tocbasemainwindow.h ../include/TocUi/TocMainWindow ../include/TocUi/tocmainwindow.h ../include/TocUi/TocContactListWidget ../include/TocUi/toccontactlistwidget.h ../include/TocUi/TocChatWidget ../include/TocUi/tocchatwidget.h ../include/TocUi/TocUserInfoWidget ../include/TocUi/tocuserinfowidget.h ../include/TocUi/TocSettingsWidget ../include/TocUi/tocsettingswidget.h ../include/TocUi/TocGeneralSettingsWidget ../include/TocUi/tocgeneralsettingswidget.h ../include/TocUi/TocAccountSettingsWidget ../include/TocUi/tocaccountsettingswidget.h ../include/TocUi/TocAccountIntermediateWidget ../include/TocUi/tocaccountintermediatewidget.h ../include/TocUi/TocThemesSettingsWidget ../include/TocUi/tocthemessettingswidget.h ../include/TocUi/TocMainToolbar ../include/TocUi/tocmaintoolbar.h ../include/TocUi/IconProvider ../include/TocUi/iconprovider.h ../include/TocUi/TocEmoticonsDialog ../include/TocUi/tocemoticonsdialog.h ../include/TocEngine/TocBaseEngine ../include/TocEngine/tocbaseengine.h TocEngine ../include/TocEngine/tocengine.h ../build/debug/tietoopcom_debug1.0.0/ && $(COPY_FILE) --parents application.qrc ../build/debug/tietoopcom_debug1.0.0/ && $(COPY_FILE) --parents main.cpp TocSettings.cpp TocUi/TocBaseMainWindow.cpp TocUi/TocMainWindow.cpp TocUi/TocContactListWidget.cpp TocUi/TocChatWidget.cpp TocUi/TocUserInfoWidget.cpp TocUi/TocSettingsWidget.cpp TocUi/TocGeneralSettingsWidget.cpp TocUi/TocAccountSettingsWidget.cpp TocUi/TocAccountIntermediateWidget.cpp TocUi/TocThemesSettingsWidget.cpp TocUi/TocMainToolbar.cpp TocUi/IconProvider.cpp TocUi/TocEmoticonsDialog.cpp TocEngine/TocBaseEngine.cpp TocEngine/TocEngine.cpp ../build/debug/tietoopcom_debug1.0.0/ && $(COPY_FILE) --parents TocUi/TocChatWidget.ui TocUi/TocUserInfoWidget.ui TocUi/TocGeneralSettingsWidget.ui TocUi/TocAccountSettingsWidget.ui TocUi/TocThemesSettingsWidget.ui TocUi/TocEmoticonsDialog.ui ../build/debug/tietoopcom_debug1.0.0/ && (cd `dirname ../build/debug/tietoopcom_debug1.0.0` && $(TAR) tietoopcom_debug1.0.0.tar tietoopcom_debug1.0.0 && $(COMPRESS) tietoopcom_debug1.0.0.tar) && $(MOVE) `dirname ../build/debug/tietoopcom_debug1.0.0`/tietoopcom_debug1.0.0.tar.gz . && $(DEL_FILE) -r ../build/debug/tietoopcom_debug1.0.0 + + +clean:compiler_clean + -$(DEL_FILE) $(OBJECTS) + -$(DEL_FILE) *~ core *.core + + +####### Sub-libraries + +distclean: clean + -$(DEL_FILE) $(TARGET) + -$(DEL_FILE) Makefile.Debug + + +mocclean: compiler_moc_header_clean compiler_moc_source_clean + +mocables: compiler_moc_header_make_all compiler_moc_source_make_all + +compiler_moc_header_make_all: ../build/debug/moc_tocbasemainwindow.cpp ../build/debug/moc_tocmainwindow.cpp ../build/debug/moc_toccontactlistwidget.cpp ../build/debug/moc_tocchatwidget.cpp ../build/debug/moc_tocuserinfowidget.cpp ../build/debug/moc_tocsettingswidget.cpp ../build/debug/moc_tocgeneralsettingswidget.cpp ../build/debug/moc_tocaccountsettingswidget.cpp ../build/debug/moc_tocaccountintermediatewidget.cpp ../build/debug/moc_tocthemessettingswidget.cpp ../build/debug/moc_tocmaintoolbar.cpp ../build/debug/moc_tocemoticonsdialog.cpp ../build/debug/moc_tocbaseengine.cpp ../build/debug/moc_tocengine.cpp +compiler_moc_header_clean: + -$(DEL_FILE) ../build/debug/moc_tocbasemainwindow.cpp ../build/debug/moc_tocmainwindow.cpp ../build/debug/moc_toccontactlistwidget.cpp ../build/debug/moc_tocchatwidget.cpp ../build/debug/moc_tocuserinfowidget.cpp ../build/debug/moc_tocsettingswidget.cpp ../build/debug/moc_tocgeneralsettingswidget.cpp ../build/debug/moc_tocaccountsettingswidget.cpp ../build/debug/moc_tocaccountintermediatewidget.cpp ../build/debug/moc_tocthemessettingswidget.cpp ../build/debug/moc_tocmaintoolbar.cpp ../build/debug/moc_tocemoticonsdialog.cpp ../build/debug/moc_tocbaseengine.cpp ../build/debug/moc_tocengine.cpp +../build/debug/moc_tocbasemainwindow.cpp: ../include/defs.h \ + ../include/TocUi/tocbasemainwindow.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocbasemainwindow.h -o ../build/debug/moc_tocbasemainwindow.cpp + +../build/debug/moc_tocmainwindow.cpp: ../include/TocUi/TocBaseMainWindow \ + ../include/TocUi/tocbasemainwindow.h \ + ../include/defs.h \ + ../include/TocUi/tocmainwindow.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocmainwindow.h -o ../build/debug/moc_tocmainwindow.cpp + +../build/debug/moc_toccontactlistwidget.cpp: ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/TocUi/toccontactlistwidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/toccontactlistwidget.h -o ../build/debug/moc_toccontactlistwidget.cpp + +../build/debug/moc_tocchatwidget.cpp: ../include/defs.h \ + ../include/TocUi/tocchatwidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocchatwidget.h -o ../build/debug/moc_tocchatwidget.cpp + +../build/debug/moc_tocuserinfowidget.cpp: ../include/defs.h \ + ../include/TocUi/tocuserinfowidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocuserinfowidget.h -o ../build/debug/moc_tocuserinfowidget.cpp + +../build/debug/moc_tocsettingswidget.cpp: ../include/defs.h \ + ../include/TocUi/tocsettingswidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocsettingswidget.h -o ../build/debug/moc_tocsettingswidget.cpp + +../build/debug/moc_tocgeneralsettingswidget.cpp: ../include/defs.h \ + ../include/TocUi/tocgeneralsettingswidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocgeneralsettingswidget.h -o ../build/debug/moc_tocgeneralsettingswidget.cpp + +../build/debug/moc_tocaccountsettingswidget.cpp: ../include/defs.h \ + ../include/TocUi/tocaccountsettingswidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocaccountsettingswidget.h -o ../build/debug/moc_tocaccountsettingswidget.cpp + +../build/debug/moc_tocaccountintermediatewidget.cpp: ../include/TocUi/tocaccountintermediatewidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocaccountintermediatewidget.h -o ../build/debug/moc_tocaccountintermediatewidget.cpp + +../build/debug/moc_tocthemessettingswidget.cpp: ../include/defs.h \ + ../include/TocUi/tocthemessettingswidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocthemessettingswidget.h -o ../build/debug/moc_tocthemessettingswidget.cpp + +../build/debug/moc_tocmaintoolbar.cpp: ../include/defs.h \ + ../include/uidefs.h \ + ../include/TocUi/tocmaintoolbar.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocmaintoolbar.h -o ../build/debug/moc_tocmaintoolbar.cpp + +../build/debug/moc_tocemoticonsdialog.cpp: ../include/TocUi/tocemoticonsdialog.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocemoticonsdialog.h -o ../build/debug/moc_tocemoticonsdialog.cpp + +../build/debug/moc_tocbaseengine.cpp: ../include/defs.h \ + ../include/TocEngine/tocbaseengine.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocEngine/tocbaseengine.h -o ../build/debug/moc_tocbaseengine.cpp + +../build/debug/moc_tocengine.cpp: ../include/TocEngine/TocBaseEngine \ + ../include/TocEngine/tocbaseengine.h \ + ../include/defs.h \ + ../include/TocEngine/tocengine.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocEngine/tocengine.h -o ../build/debug/moc_tocengine.cpp + +compiler_dbus_interface_source_make_all: +compiler_dbus_interface_source_clean: +compiler_dbus_adaptor_source_make_all: +compiler_dbus_adaptor_source_clean: +compiler_rcc_make_all: ../build/debug/qrc_application.cpp +compiler_rcc_clean: + -$(DEL_FILE) ../build/debug/qrc_application.cpp +../build/debug/qrc_application.cpp: application.qrc \ + ../resources/offline.png \ + ../resources/close.png \ + ../resources/addcontact.png \ + ../resources/contactfemale.png \ + ../resources/away.png \ + ../resources/themes.png \ + ../resources/yellowframe.png \ + ../resources/online.png \ + ../resources/restore.png \ + ../resources/redframe.png \ + ../resources/general.png \ + ../resources/settings.png \ + ../resources/hidden.png \ + ../resources/busy.png \ + ../resources/greenframe.png \ + ../resources/contactmale.png \ + ../resources/network.png \ + ../resources/tieto-logo.png \ + ../resources/activesessions.png \ + ../resources/contacts.png \ + ../resources/unknown.png \ + ../resources/account.png + /usr/bin/rcc -name application application.qrc -o ../build/debug/qrc_application.cpp + +compiler_image_collection_make_all: qmake_image_collection.cpp +compiler_image_collection_clean: + -$(DEL_FILE) qmake_image_collection.cpp +compiler_moc_source_make_all: +compiler_moc_source_clean: +compiler_dbus_interface_header_make_all: +compiler_dbus_interface_header_clean: +compiler_dbus_interface_moc_make_all: +compiler_dbus_interface_moc_clean: +compiler_dbus_adaptor_header_make_all: +compiler_dbus_adaptor_header_clean: +compiler_dbus_adaptor_moc_make_all: +compiler_dbus_adaptor_moc_clean: +compiler_uic_make_all: ../build/debug/ui_TocChatWidget.h ../build/debug/ui_TocUserInfoWidget.h ../build/debug/ui_TocGeneralSettingsWidget.h ../build/debug/ui_TocAccountSettingsWidget.h ../build/debug/ui_TocThemesSettingsWidget.h ../build/debug/ui_TocEmoticonsDialog.h +compiler_uic_clean: + -$(DEL_FILE) ../build/debug/ui_TocChatWidget.h ../build/debug/ui_TocUserInfoWidget.h ../build/debug/ui_TocGeneralSettingsWidget.h ../build/debug/ui_TocAccountSettingsWidget.h ../build/debug/ui_TocThemesSettingsWidget.h ../build/debug/ui_TocEmoticonsDialog.h +../build/debug/ui_TocChatWidget.h: TocUi/TocChatWidget.ui + /usr/bin/uic TocUi/TocChatWidget.ui -o ../build/debug/ui_TocChatWidget.h + +../build/debug/ui_TocUserInfoWidget.h: TocUi/TocUserInfoWidget.ui + /usr/bin/uic TocUi/TocUserInfoWidget.ui -o ../build/debug/ui_TocUserInfoWidget.h + +../build/debug/ui_TocGeneralSettingsWidget.h: TocUi/TocGeneralSettingsWidget.ui + /usr/bin/uic TocUi/TocGeneralSettingsWidget.ui -o ../build/debug/ui_TocGeneralSettingsWidget.h + +../build/debug/ui_TocAccountSettingsWidget.h: TocUi/TocAccountSettingsWidget.ui + /usr/bin/uic TocUi/TocAccountSettingsWidget.ui -o ../build/debug/ui_TocAccountSettingsWidget.h + +../build/debug/ui_TocThemesSettingsWidget.h: TocUi/TocThemesSettingsWidget.ui + /usr/bin/uic TocUi/TocThemesSettingsWidget.ui -o ../build/debug/ui_TocThemesSettingsWidget.h + +../build/debug/ui_TocEmoticonsDialog.h: TocUi/TocEmoticonsDialog.ui + /usr/bin/uic TocUi/TocEmoticonsDialog.ui -o ../build/debug/ui_TocEmoticonsDialog.h + +compiler_yacc_decl_make_all: +compiler_yacc_decl_clean: +compiler_yacc_impl_make_all: +compiler_yacc_impl_clean: +compiler_lex_make_all: +compiler_lex_clean: +compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_uic_clean + +####### Compile + +../build/debug/main.o: main.cpp ../include/TocUi/TocMainWindow \ + ../include/TocUi/tocmainwindow.h \ + ../include/TocUi/TocBaseMainWindow \ + ../include/TocUi/tocbasemainwindow.h \ + ../include/defs.h \ + TocEngine + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/main.o main.cpp + +../build/debug/TocSettings.o: TocSettings.cpp ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/defs.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocSettings.o TocSettings.cpp + +../build/debug/TocBaseMainWindow.o: TocUi/TocBaseMainWindow.cpp ../include/TocUi/TocBaseMainWindow \ + ../include/TocUi/tocbasemainwindow.h \ + ../include/defs.h \ + ../include/TocEngine/TocBaseEngine \ + ../include/TocEngine/tocbaseengine.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocBaseMainWindow.o TocUi/TocBaseMainWindow.cpp + +../build/debug/TocMainWindow.o: TocUi/TocMainWindow.cpp ../include/TocUi/TocMainWindow \ + ../include/TocUi/tocmainwindow.h \ + ../include/TocUi/TocBaseMainWindow \ + ../include/TocUi/tocbasemainwindow.h \ + ../include/defs.h \ + ../include/TocUi/TocMainToolbar \ + ../include/TocUi/tocmaintoolbar.h \ + ../include/uidefs.h \ + ../include/TocUi/TocContactListWidget \ + ../include/TocUi/toccontactlistwidget.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/TocUi/TocChatWidget \ + ../include/TocUi/tocchatwidget.h \ + ../include/TocUi/TocUserInfoWidget \ + ../include/TocUi/tocuserinfowidget.h \ + ../include/TocUi/TocSettingsWidget \ + ../include/TocUi/tocsettingswidget.h \ + ../include/TocUi/TocGeneralSettingsWidget \ + ../include/TocUi/tocgeneralsettingswidget.h \ + ../include/TocUi/TocAccountSettingsWidget \ + ../include/TocUi/tocaccountsettingswidget.h \ + ../include/TocUi/TocAccountIntermediateWidget \ + ../include/TocUi/tocaccountintermediatewidget.h \ + ../include/TocUi/TocThemesSettingsWidget \ + ../include/TocUi/tocthemessettingswidget.h \ + ../include/macros.h \ + ../include/version.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocMainWindow.o TocUi/TocMainWindow.cpp + +../build/debug/TocContactListWidget.o: TocUi/TocContactListWidget.cpp ../include/TocUi/TocContactListWidget \ + ../include/TocUi/toccontactlistwidget.h \ + ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/TocUi/IconProvider \ + ../include/TocUi/iconprovider.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocContactListWidget.o TocUi/TocContactListWidget.cpp + +../build/debug/TocChatWidget.o: TocUi/TocChatWidget.cpp ../build/debug/ui_TocChatWidget.h \ + ../include/TocUi/TocEmoticonsDialog \ + ../include/TocUi/tocemoticonsdialog.h \ + ../include/TocUi/TocChatWidget \ + ../include/TocUi/tocchatwidget.h \ + ../include/defs.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocChatWidget.o TocUi/TocChatWidget.cpp + +../build/debug/TocUserInfoWidget.o: TocUi/TocUserInfoWidget.cpp ../include/TocUi/TocContactListWidget \ + ../include/TocUi/toccontactlistwidget.h \ + ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/TocUi/TocUserInfoWidget \ + ../include/TocUi/tocuserinfowidget.h \ + ../include/TocUi/IconProvider \ + ../include/TocUi/iconprovider.h \ + ../build/debug/ui_TocUserInfoWidget.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocUserInfoWidget.o TocUi/TocUserInfoWidget.cpp + +../build/debug/TocSettingsWidget.o: TocUi/TocSettingsWidget.cpp ../include/TocUi/TocSettingsWidget \ + ../include/TocUi/tocsettingswidget.h \ + ../include/defs.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocSettingsWidget.o TocUi/TocSettingsWidget.cpp + +../build/debug/TocGeneralSettingsWidget.o: TocUi/TocGeneralSettingsWidget.cpp ../include/TocUi/TocGeneralSettingsWidget \ + ../include/TocUi/tocgeneralsettingswidget.h \ + ../include/defs.h \ + ../build/debug/ui_TocGeneralSettingsWidget.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocGeneralSettingsWidget.o TocUi/TocGeneralSettingsWidget.cpp + +../build/debug/TocAccountSettingsWidget.o: TocUi/TocAccountSettingsWidget.cpp ../include/TocUi/TocAccountSettingsWidget \ + ../include/TocUi/tocaccountsettingswidget.h \ + ../include/defs.h \ + ../build/debug/ui_TocAccountSettingsWidget.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocAccountSettingsWidget.o TocUi/TocAccountSettingsWidget.cpp + +../build/debug/TocAccountIntermediateWidget.o: TocUi/TocAccountIntermediateWidget.cpp ../include/TocUi/TocAccountIntermediateWidget \ + ../include/TocUi/tocaccountintermediatewidget.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocAccountIntermediateWidget.o TocUi/TocAccountIntermediateWidget.cpp + +../build/debug/TocThemesSettingsWidget.o: TocUi/TocThemesSettingsWidget.cpp ../include/TocUi/TocThemesSettingsWidget \ + ../include/TocUi/tocthemessettingswidget.h \ + ../include/defs.h \ + ../build/debug/ui_TocThemesSettingsWidget.h \ + ../include/macros.h \ + ../include/TocSettings \ + ../include/tocsettings.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocThemesSettingsWidget.o TocUi/TocThemesSettingsWidget.cpp + +../build/debug/TocMainToolbar.o: TocUi/TocMainToolbar.cpp ../include/TocUi/TocMainToolbar \ + ../include/TocUi/tocmaintoolbar.h \ + ../include/defs.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocMainToolbar.o TocUi/TocMainToolbar.cpp + +../build/debug/IconProvider.o: TocUi/IconProvider.cpp ../include/TocUi/IconProvider \ + ../include/TocUi/iconprovider.h \ + ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/IconProvider.o TocUi/IconProvider.cpp + +../build/debug/TocEmoticonsDialog.o: TocUi/TocEmoticonsDialog.cpp ../build/debug/ui_TocEmoticonsDialog.h \ + ../include/TocUi/TocEmoticonsDialog \ + ../include/TocUi/tocemoticonsdialog.h \ + ../include/macros.h \ + ../include/uidefs.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocEmoticonsDialog.o TocUi/TocEmoticonsDialog.cpp + +../build/debug/TocBaseEngine.o: TocEngine/TocBaseEngine.cpp ../include/TocEngine/TocBaseEngine \ + ../include/TocEngine/tocbaseengine.h \ + ../include/defs.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocBaseEngine.o TocEngine/TocBaseEngine.cpp + +../build/debug/TocEngine.o: TocEngine/TocEngine.cpp ../include/TocEngine/TocEngine \ + ../include/TocEngine/tocengine.h \ + ../include/TocEngine/TocBaseEngine \ + ../include/TocEngine/tocbaseengine.h \ + ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/TocEngine.o TocEngine/TocEngine.cpp + +../build/debug/moc_tocbasemainwindow.o: ../build/debug/moc_tocbasemainwindow.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocbasemainwindow.o ../build/debug/moc_tocbasemainwindow.cpp + +../build/debug/moc_tocmainwindow.o: ../build/debug/moc_tocmainwindow.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocmainwindow.o ../build/debug/moc_tocmainwindow.cpp + +../build/debug/moc_toccontactlistwidget.o: ../build/debug/moc_toccontactlistwidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_toccontactlistwidget.o ../build/debug/moc_toccontactlistwidget.cpp + +../build/debug/moc_tocchatwidget.o: ../build/debug/moc_tocchatwidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocchatwidget.o ../build/debug/moc_tocchatwidget.cpp + +../build/debug/moc_tocuserinfowidget.o: ../build/debug/moc_tocuserinfowidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocuserinfowidget.o ../build/debug/moc_tocuserinfowidget.cpp + +../build/debug/moc_tocsettingswidget.o: ../build/debug/moc_tocsettingswidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocsettingswidget.o ../build/debug/moc_tocsettingswidget.cpp + +../build/debug/moc_tocgeneralsettingswidget.o: ../build/debug/moc_tocgeneralsettingswidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocgeneralsettingswidget.o ../build/debug/moc_tocgeneralsettingswidget.cpp + +../build/debug/moc_tocaccountsettingswidget.o: ../build/debug/moc_tocaccountsettingswidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocaccountsettingswidget.o ../build/debug/moc_tocaccountsettingswidget.cpp + +../build/debug/moc_tocaccountintermediatewidget.o: ../build/debug/moc_tocaccountintermediatewidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocaccountintermediatewidget.o ../build/debug/moc_tocaccountintermediatewidget.cpp + +../build/debug/moc_tocthemessettingswidget.o: ../build/debug/moc_tocthemessettingswidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocthemessettingswidget.o ../build/debug/moc_tocthemessettingswidget.cpp + +../build/debug/moc_tocmaintoolbar.o: ../build/debug/moc_tocmaintoolbar.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocmaintoolbar.o ../build/debug/moc_tocmaintoolbar.cpp + +../build/debug/moc_tocemoticonsdialog.o: ../build/debug/moc_tocemoticonsdialog.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocemoticonsdialog.o ../build/debug/moc_tocemoticonsdialog.cpp + +../build/debug/moc_tocbaseengine.o: ../build/debug/moc_tocbaseengine.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocbaseengine.o ../build/debug/moc_tocbaseengine.cpp + +../build/debug/moc_tocengine.o: ../build/debug/moc_tocengine.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/moc_tocengine.o ../build/debug/moc_tocengine.cpp + +../build/debug/qrc_application.o: ../build/debug/qrc_application.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/debug/qrc_application.o ../build/debug/qrc_application.cpp + +####### Install + +install_target: first FORCE + @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/usr/bin/ || $(MKDIR) $(INSTALL_ROOT)/usr/bin/ + -$(INSTALL_PROGRAM) "../bin/$(QMAKE_TARGET)" "$(INSTALL_ROOT)/usr/bin/$(QMAKE_TARGET)" + +uninstall_target: FORCE + -$(DEL_FILE) "$(INSTALL_ROOT)/usr/bin/$(QMAKE_TARGET)" + -$(DEL_DIR) $(INSTALL_ROOT)/usr/bin/ + + +install: install_target FORCE + +uninstall: uninstall_target FORCE + +FORCE: + diff --git a/src/Makefile.Release b/src/Makefile.Release new file mode 100644 index 0000000..92ebdb1 --- /dev/null +++ b/src/Makefile.Release @@ -0,0 +1,556 @@ +############################################################################# +# Makefile for building: ../bin/tietoopcom +# Generated by qmake (2.01a) (Qt 4.6.2) on: Thu Jul 8 08:48:04 2010 +# Project: src.pro +# Template: app +############################################################################# + +####### Compiler, tools and options + +CC = gcc +CXX = g++ +DEFINES = -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED +CFLAGS = -pipe -O2 -Wall -W -D_REENTRANT $(DEFINES) +CXXFLAGS = -pipe -O2 -DQT_NO_DEBUG_OUTPUT -Wall -W -D_REENTRANT $(DEFINES) +INCPATH = -I/targets/FREMANTLE_X86/usr/share/qt4/mkspecs/linux-g++ -I. -I/targets/FREMANTLE_X86/usr/include/QtCore -I/targets/FREMANTLE_X86/usr/include/QtGui -I/targets/FREMANTLE_X86/usr/include -I/targets/FREMANTLE_X86/usr/include/QtDBus -I. -ITocUi -ITocEngine -I../include -I../include/TocUi -I../include/TocEngine -I../build/release -I../build/release +LINK = g++ +LFLAGS = -Wl,-O1 -Wl,-rpath,/usr/lib +LIBS = $(SUBLIBS) -L/usr/lib -lQtTapioca -lQtDBus -L/usr/lib -lQtXml -lQtGui -L/usr/X11R6/lib -lQtCore -lpthread +AR = ar cqs +RANLIB = +QMAKE = /usr/bin/qmake +TAR = tar -cf +COMPRESS = gzip -9f +COPY = cp -f +SED = sed +COPY_FILE = $(COPY) +COPY_DIR = $(COPY) -r +STRIP = strip +INSTALL_FILE = install -m 644 -p +INSTALL_DIR = $(COPY_DIR) +INSTALL_PROGRAM = install -m 755 -p +DEL_FILE = rm -f +SYMLINK = ln -f -s +DEL_DIR = rmdir +MOVE = mv -f +CHK_DIR_EXISTS= test -d +MKDIR = mkdir -p + +####### Output directory + +OBJECTS_DIR = ../build/release/ + +####### Files + +SOURCES = main.cpp \ + TocSettings.cpp \ + TocUi/TocBaseMainWindow.cpp \ + TocUi/TocMainWindow.cpp \ + TocUi/TocContactListWidget.cpp \ + TocUi/TocChatWidget.cpp \ + TocUi/TocUserInfoWidget.cpp \ + TocUi/TocSettingsWidget.cpp \ + TocUi/TocGeneralSettingsWidget.cpp \ + TocUi/TocAccountSettingsWidget.cpp \ + TocUi/TocAccountIntermediateWidget.cpp \ + TocUi/TocThemesSettingsWidget.cpp \ + TocUi/TocMainToolbar.cpp \ + TocUi/IconProvider.cpp \ + TocUi/TocEmoticonsDialog.cpp \ + TocEngine/TocBaseEngine.cpp \ + TocEngine/TocEngine.cpp ../build/release/moc_tocbasemainwindow.cpp \ + ../build/release/moc_tocmainwindow.cpp \ + ../build/release/moc_toccontactlistwidget.cpp \ + ../build/release/moc_tocchatwidget.cpp \ + ../build/release/moc_tocuserinfowidget.cpp \ + ../build/release/moc_tocsettingswidget.cpp \ + ../build/release/moc_tocgeneralsettingswidget.cpp \ + ../build/release/moc_tocaccountsettingswidget.cpp \ + ../build/release/moc_tocaccountintermediatewidget.cpp \ + ../build/release/moc_tocthemessettingswidget.cpp \ + ../build/release/moc_tocmaintoolbar.cpp \ + ../build/release/moc_tocemoticonsdialog.cpp \ + ../build/release/moc_tocbaseengine.cpp \ + ../build/release/moc_tocengine.cpp \ + ../build/release/qrc_application.cpp +OBJECTS = ../build/release/main.o \ + ../build/release/TocSettings.o \ + ../build/release/TocBaseMainWindow.o \ + ../build/release/TocMainWindow.o \ + ../build/release/TocContactListWidget.o \ + ../build/release/TocChatWidget.o \ + ../build/release/TocUserInfoWidget.o \ + ../build/release/TocSettingsWidget.o \ + ../build/release/TocGeneralSettingsWidget.o \ + ../build/release/TocAccountSettingsWidget.o \ + ../build/release/TocAccountIntermediateWidget.o \ + ../build/release/TocThemesSettingsWidget.o \ + ../build/release/TocMainToolbar.o \ + ../build/release/IconProvider.o \ + ../build/release/TocEmoticonsDialog.o \ + ../build/release/TocBaseEngine.o \ + ../build/release/TocEngine.o \ + ../build/release/moc_tocbasemainwindow.o \ + ../build/release/moc_tocmainwindow.o \ + ../build/release/moc_toccontactlistwidget.o \ + ../build/release/moc_tocchatwidget.o \ + ../build/release/moc_tocuserinfowidget.o \ + ../build/release/moc_tocsettingswidget.o \ + ../build/release/moc_tocgeneralsettingswidget.o \ + ../build/release/moc_tocaccountsettingswidget.o \ + ../build/release/moc_tocaccountintermediatewidget.o \ + ../build/release/moc_tocthemessettingswidget.o \ + ../build/release/moc_tocmaintoolbar.o \ + ../build/release/moc_tocemoticonsdialog.o \ + ../build/release/moc_tocbaseengine.o \ + ../build/release/moc_tocengine.o \ + ../build/release/qrc_application.o +DIST = /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/g++.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/unix.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/common/linux.conf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/qconfig.pri \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_functions.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt_config.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/exclusive_builds.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_pre.prf \ + TocUi/TocUi.pri \ + TocEngine/TocEngine.pri \ + ../include/TocUi/TocUi.pri \ + ../include/TocEngine/TocEngine.pri \ + ../include/include.pri \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/release.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/debug_and_release.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/default_post.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/build_pass.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qdbus.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/moc.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/dbusinterfaces.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/dbusadaptors.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/warn_on.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/qt.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/unix/thread.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/resources.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/uic.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/yacc.prf \ + /targets/FREMANTLE_X86/usr/share/qt4/mkspecs/features/lex.prf \ + src.pro +QMAKE_TARGET = tietoopcom +DESTDIR = ../bin/ +TARGET = ../bin/tietoopcom + +first: all +####### Implicit rules + +.SUFFIXES: .o .c .cpp .cc .cxx .C + +.cpp.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<" + +.cc.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<" + +.cxx.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<" + +.C.o: + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<" + +.c.o: + $(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<" + +####### Build rules + +all: Makefile.Release $(TARGET) + +$(TARGET): ../build/release/ui_TocChatWidget.h ../build/release/ui_TocUserInfoWidget.h ../build/release/ui_TocGeneralSettingsWidget.h ../build/release/ui_TocAccountSettingsWidget.h ../build/release/ui_TocThemesSettingsWidget.h ../build/release/ui_TocEmoticonsDialog.h $(OBJECTS) + @$(CHK_DIR_EXISTS) ../bin/ || $(MKDIR) ../bin/ + $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS) + +qmake: FORCE + @$(QMAKE) -unix -o Makefile.Release src.pro + +dist: + @$(CHK_DIR_EXISTS) ../build/release/tietoopcom1.0.0 || $(MKDIR) ../build/release/tietoopcom1.0.0 + $(COPY_FILE) --parents $(SOURCES) $(DIST) ../build/release/tietoopcom1.0.0/ && $(COPY_FILE) --parents ../include/version.h ../include/defs.h ../include/macros.h ../include/TocSettings ../include/tocsettings.h ../include/TocUi/TocBaseMainWindow ../include/TocUi/tocbasemainwindow.h ../include/TocUi/TocMainWindow ../include/TocUi/tocmainwindow.h ../include/TocUi/TocContactListWidget ../include/TocUi/toccontactlistwidget.h ../include/TocUi/TocChatWidget ../include/TocUi/tocchatwidget.h ../include/TocUi/TocUserInfoWidget ../include/TocUi/tocuserinfowidget.h ../include/TocUi/TocSettingsWidget ../include/TocUi/tocsettingswidget.h ../include/TocUi/TocGeneralSettingsWidget ../include/TocUi/tocgeneralsettingswidget.h ../include/TocUi/TocAccountSettingsWidget ../include/TocUi/tocaccountsettingswidget.h ../include/TocUi/TocAccountIntermediateWidget ../include/TocUi/tocaccountintermediatewidget.h ../include/TocUi/TocThemesSettingsWidget ../include/TocUi/tocthemessettingswidget.h ../include/TocUi/TocMainToolbar ../include/TocUi/tocmaintoolbar.h ../include/TocUi/IconProvider ../include/TocUi/iconprovider.h ../include/TocUi/TocEmoticonsDialog ../include/TocUi/tocemoticonsdialog.h ../include/TocEngine/TocBaseEngine ../include/TocEngine/tocbaseengine.h TocEngine ../include/TocEngine/tocengine.h ../build/release/tietoopcom1.0.0/ && $(COPY_FILE) --parents application.qrc ../build/release/tietoopcom1.0.0/ && $(COPY_FILE) --parents main.cpp TocSettings.cpp TocUi/TocBaseMainWindow.cpp TocUi/TocMainWindow.cpp TocUi/TocContactListWidget.cpp TocUi/TocChatWidget.cpp TocUi/TocUserInfoWidget.cpp TocUi/TocSettingsWidget.cpp TocUi/TocGeneralSettingsWidget.cpp TocUi/TocAccountSettingsWidget.cpp TocUi/TocAccountIntermediateWidget.cpp TocUi/TocThemesSettingsWidget.cpp TocUi/TocMainToolbar.cpp TocUi/IconProvider.cpp TocUi/TocEmoticonsDialog.cpp TocEngine/TocBaseEngine.cpp TocEngine/TocEngine.cpp ../build/release/tietoopcom1.0.0/ && $(COPY_FILE) --parents TocUi/TocChatWidget.ui TocUi/TocUserInfoWidget.ui TocUi/TocGeneralSettingsWidget.ui TocUi/TocAccountSettingsWidget.ui TocUi/TocThemesSettingsWidget.ui TocUi/TocEmoticonsDialog.ui ../build/release/tietoopcom1.0.0/ && (cd `dirname ../build/release/tietoopcom1.0.0` && $(TAR) tietoopcom1.0.0.tar tietoopcom1.0.0 && $(COMPRESS) tietoopcom1.0.0.tar) && $(MOVE) `dirname ../build/release/tietoopcom1.0.0`/tietoopcom1.0.0.tar.gz . && $(DEL_FILE) -r ../build/release/tietoopcom1.0.0 + + +clean:compiler_clean + -$(DEL_FILE) $(OBJECTS) + -$(DEL_FILE) *~ core *.core + + +####### Sub-libraries + +distclean: clean + -$(DEL_FILE) $(TARGET) + -$(DEL_FILE) Makefile.Release + + +mocclean: compiler_moc_header_clean compiler_moc_source_clean + +mocables: compiler_moc_header_make_all compiler_moc_source_make_all + +compiler_moc_header_make_all: ../build/release/moc_tocbasemainwindow.cpp ../build/release/moc_tocmainwindow.cpp ../build/release/moc_toccontactlistwidget.cpp ../build/release/moc_tocchatwidget.cpp ../build/release/moc_tocuserinfowidget.cpp ../build/release/moc_tocsettingswidget.cpp ../build/release/moc_tocgeneralsettingswidget.cpp ../build/release/moc_tocaccountsettingswidget.cpp ../build/release/moc_tocaccountintermediatewidget.cpp ../build/release/moc_tocthemessettingswidget.cpp ../build/release/moc_tocmaintoolbar.cpp ../build/release/moc_tocemoticonsdialog.cpp ../build/release/moc_tocbaseengine.cpp ../build/release/moc_tocengine.cpp +compiler_moc_header_clean: + -$(DEL_FILE) ../build/release/moc_tocbasemainwindow.cpp ../build/release/moc_tocmainwindow.cpp ../build/release/moc_toccontactlistwidget.cpp ../build/release/moc_tocchatwidget.cpp ../build/release/moc_tocuserinfowidget.cpp ../build/release/moc_tocsettingswidget.cpp ../build/release/moc_tocgeneralsettingswidget.cpp ../build/release/moc_tocaccountsettingswidget.cpp ../build/release/moc_tocaccountintermediatewidget.cpp ../build/release/moc_tocthemessettingswidget.cpp ../build/release/moc_tocmaintoolbar.cpp ../build/release/moc_tocemoticonsdialog.cpp ../build/release/moc_tocbaseengine.cpp ../build/release/moc_tocengine.cpp +../build/release/moc_tocbasemainwindow.cpp: ../include/defs.h \ + ../include/TocUi/tocbasemainwindow.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocbasemainwindow.h -o ../build/release/moc_tocbasemainwindow.cpp + +../build/release/moc_tocmainwindow.cpp: ../include/TocUi/TocBaseMainWindow \ + ../include/TocUi/tocbasemainwindow.h \ + ../include/defs.h \ + ../include/TocUi/tocmainwindow.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocmainwindow.h -o ../build/release/moc_tocmainwindow.cpp + +../build/release/moc_toccontactlistwidget.cpp: ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/TocUi/toccontactlistwidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/toccontactlistwidget.h -o ../build/release/moc_toccontactlistwidget.cpp + +../build/release/moc_tocchatwidget.cpp: ../include/defs.h \ + ../include/TocUi/tocchatwidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocchatwidget.h -o ../build/release/moc_tocchatwidget.cpp + +../build/release/moc_tocuserinfowidget.cpp: ../include/defs.h \ + ../include/TocUi/tocuserinfowidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocuserinfowidget.h -o ../build/release/moc_tocuserinfowidget.cpp + +../build/release/moc_tocsettingswidget.cpp: ../include/defs.h \ + ../include/TocUi/tocsettingswidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocsettingswidget.h -o ../build/release/moc_tocsettingswidget.cpp + +../build/release/moc_tocgeneralsettingswidget.cpp: ../include/defs.h \ + ../include/TocUi/tocgeneralsettingswidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocgeneralsettingswidget.h -o ../build/release/moc_tocgeneralsettingswidget.cpp + +../build/release/moc_tocaccountsettingswidget.cpp: ../include/defs.h \ + ../include/TocUi/tocaccountsettingswidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocaccountsettingswidget.h -o ../build/release/moc_tocaccountsettingswidget.cpp + +../build/release/moc_tocaccountintermediatewidget.cpp: ../include/TocUi/tocaccountintermediatewidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocaccountintermediatewidget.h -o ../build/release/moc_tocaccountintermediatewidget.cpp + +../build/release/moc_tocthemessettingswidget.cpp: ../include/defs.h \ + ../include/TocUi/tocthemessettingswidget.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocthemessettingswidget.h -o ../build/release/moc_tocthemessettingswidget.cpp + +../build/release/moc_tocmaintoolbar.cpp: ../include/defs.h \ + ../include/uidefs.h \ + ../include/TocUi/tocmaintoolbar.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocmaintoolbar.h -o ../build/release/moc_tocmaintoolbar.cpp + +../build/release/moc_tocemoticonsdialog.cpp: ../include/TocUi/tocemoticonsdialog.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocUi/tocemoticonsdialog.h -o ../build/release/moc_tocemoticonsdialog.cpp + +../build/release/moc_tocbaseengine.cpp: ../include/defs.h \ + ../include/TocEngine/tocbaseengine.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocEngine/tocbaseengine.h -o ../build/release/moc_tocbaseengine.cpp + +../build/release/moc_tocengine.cpp: ../include/TocEngine/TocBaseEngine \ + ../include/TocEngine/tocbaseengine.h \ + ../include/defs.h \ + ../include/TocEngine/tocengine.h + /usr/bin/moc $(DEFINES) $(INCPATH) ../include/TocEngine/tocengine.h -o ../build/release/moc_tocengine.cpp + +compiler_dbus_interface_source_make_all: +compiler_dbus_interface_source_clean: +compiler_dbus_adaptor_source_make_all: +compiler_dbus_adaptor_source_clean: +compiler_rcc_make_all: ../build/release/qrc_application.cpp +compiler_rcc_clean: + -$(DEL_FILE) ../build/release/qrc_application.cpp +../build/release/qrc_application.cpp: application.qrc \ + ../resources/offline.png \ + ../resources/close.png \ + ../resources/addcontact.png \ + ../resources/contactfemale.png \ + ../resources/away.png \ + ../resources/themes.png \ + ../resources/yellowframe.png \ + ../resources/online.png \ + ../resources/restore.png \ + ../resources/redframe.png \ + ../resources/general.png \ + ../resources/settings.png \ + ../resources/hidden.png \ + ../resources/busy.png \ + ../resources/greenframe.png \ + ../resources/contactmale.png \ + ../resources/network.png \ + ../resources/tieto-logo.png \ + ../resources/activesessions.png \ + ../resources/contacts.png \ + ../resources/unknown.png \ + ../resources/account.png + /usr/bin/rcc -name application application.qrc -o ../build/release/qrc_application.cpp + +compiler_image_collection_make_all: qmake_image_collection.cpp +compiler_image_collection_clean: + -$(DEL_FILE) qmake_image_collection.cpp +compiler_moc_source_make_all: +compiler_moc_source_clean: +compiler_dbus_interface_header_make_all: +compiler_dbus_interface_header_clean: +compiler_dbus_interface_moc_make_all: +compiler_dbus_interface_moc_clean: +compiler_dbus_adaptor_header_make_all: +compiler_dbus_adaptor_header_clean: +compiler_dbus_adaptor_moc_make_all: +compiler_dbus_adaptor_moc_clean: +compiler_uic_make_all: ../build/release/ui_TocChatWidget.h ../build/release/ui_TocUserInfoWidget.h ../build/release/ui_TocGeneralSettingsWidget.h ../build/release/ui_TocAccountSettingsWidget.h ../build/release/ui_TocThemesSettingsWidget.h ../build/release/ui_TocEmoticonsDialog.h +compiler_uic_clean: + -$(DEL_FILE) ../build/release/ui_TocChatWidget.h ../build/release/ui_TocUserInfoWidget.h ../build/release/ui_TocGeneralSettingsWidget.h ../build/release/ui_TocAccountSettingsWidget.h ../build/release/ui_TocThemesSettingsWidget.h ../build/release/ui_TocEmoticonsDialog.h +../build/release/ui_TocChatWidget.h: TocUi/TocChatWidget.ui + /usr/bin/uic TocUi/TocChatWidget.ui -o ../build/release/ui_TocChatWidget.h + +../build/release/ui_TocUserInfoWidget.h: TocUi/TocUserInfoWidget.ui + /usr/bin/uic TocUi/TocUserInfoWidget.ui -o ../build/release/ui_TocUserInfoWidget.h + +../build/release/ui_TocGeneralSettingsWidget.h: TocUi/TocGeneralSettingsWidget.ui + /usr/bin/uic TocUi/TocGeneralSettingsWidget.ui -o ../build/release/ui_TocGeneralSettingsWidget.h + +../build/release/ui_TocAccountSettingsWidget.h: TocUi/TocAccountSettingsWidget.ui + /usr/bin/uic TocUi/TocAccountSettingsWidget.ui -o ../build/release/ui_TocAccountSettingsWidget.h + +../build/release/ui_TocThemesSettingsWidget.h: TocUi/TocThemesSettingsWidget.ui + /usr/bin/uic TocUi/TocThemesSettingsWidget.ui -o ../build/release/ui_TocThemesSettingsWidget.h + +../build/release/ui_TocEmoticonsDialog.h: TocUi/TocEmoticonsDialog.ui + /usr/bin/uic TocUi/TocEmoticonsDialog.ui -o ../build/release/ui_TocEmoticonsDialog.h + +compiler_yacc_decl_make_all: +compiler_yacc_decl_clean: +compiler_yacc_impl_make_all: +compiler_yacc_impl_clean: +compiler_lex_make_all: +compiler_lex_clean: +compiler_clean: compiler_moc_header_clean compiler_rcc_clean compiler_uic_clean + +####### Compile + +../build/release/main.o: main.cpp ../include/TocUi/TocMainWindow \ + ../include/TocUi/tocmainwindow.h \ + ../include/TocUi/TocBaseMainWindow \ + ../include/TocUi/tocbasemainwindow.h \ + ../include/defs.h \ + TocEngine + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/main.o main.cpp + +../build/release/TocSettings.o: TocSettings.cpp ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/defs.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocSettings.o TocSettings.cpp + +../build/release/TocBaseMainWindow.o: TocUi/TocBaseMainWindow.cpp ../include/TocUi/TocBaseMainWindow \ + ../include/TocUi/tocbasemainwindow.h \ + ../include/defs.h \ + ../include/TocEngine/TocBaseEngine \ + ../include/TocEngine/tocbaseengine.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocBaseMainWindow.o TocUi/TocBaseMainWindow.cpp + +../build/release/TocMainWindow.o: TocUi/TocMainWindow.cpp ../include/TocUi/TocMainWindow \ + ../include/TocUi/tocmainwindow.h \ + ../include/TocUi/TocBaseMainWindow \ + ../include/TocUi/tocbasemainwindow.h \ + ../include/defs.h \ + ../include/TocUi/TocMainToolbar \ + ../include/TocUi/tocmaintoolbar.h \ + ../include/uidefs.h \ + ../include/TocUi/TocContactListWidget \ + ../include/TocUi/toccontactlistwidget.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/TocUi/TocChatWidget \ + ../include/TocUi/tocchatwidget.h \ + ../include/TocUi/TocUserInfoWidget \ + ../include/TocUi/tocuserinfowidget.h \ + ../include/TocUi/TocSettingsWidget \ + ../include/TocUi/tocsettingswidget.h \ + ../include/TocUi/TocGeneralSettingsWidget \ + ../include/TocUi/tocgeneralsettingswidget.h \ + ../include/TocUi/TocAccountSettingsWidget \ + ../include/TocUi/tocaccountsettingswidget.h \ + ../include/TocUi/TocAccountIntermediateWidget \ + ../include/TocUi/tocaccountintermediatewidget.h \ + ../include/TocUi/TocThemesSettingsWidget \ + ../include/TocUi/tocthemessettingswidget.h \ + ../include/macros.h \ + ../include/version.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocMainWindow.o TocUi/TocMainWindow.cpp + +../build/release/TocContactListWidget.o: TocUi/TocContactListWidget.cpp ../include/TocUi/TocContactListWidget \ + ../include/TocUi/toccontactlistwidget.h \ + ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/TocUi/IconProvider \ + ../include/TocUi/iconprovider.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocContactListWidget.o TocUi/TocContactListWidget.cpp + +../build/release/TocChatWidget.o: TocUi/TocChatWidget.cpp ../build/release/ui_TocChatWidget.h \ + ../include/TocUi/TocEmoticonsDialog \ + ../include/TocUi/tocemoticonsdialog.h \ + ../include/TocUi/TocChatWidget \ + ../include/TocUi/tocchatwidget.h \ + ../include/defs.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocChatWidget.o TocUi/TocChatWidget.cpp + +../build/release/TocUserInfoWidget.o: TocUi/TocUserInfoWidget.cpp ../include/TocUi/TocContactListWidget \ + ../include/TocUi/toccontactlistwidget.h \ + ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/TocUi/TocUserInfoWidget \ + ../include/TocUi/tocuserinfowidget.h \ + ../include/TocUi/IconProvider \ + ../include/TocUi/iconprovider.h \ + ../build/release/ui_TocUserInfoWidget.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocUserInfoWidget.o TocUi/TocUserInfoWidget.cpp + +../build/release/TocSettingsWidget.o: TocUi/TocSettingsWidget.cpp ../include/TocUi/TocSettingsWidget \ + ../include/TocUi/tocsettingswidget.h \ + ../include/defs.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocSettingsWidget.o TocUi/TocSettingsWidget.cpp + +../build/release/TocGeneralSettingsWidget.o: TocUi/TocGeneralSettingsWidget.cpp ../include/TocUi/TocGeneralSettingsWidget \ + ../include/TocUi/tocgeneralsettingswidget.h \ + ../include/defs.h \ + ../build/release/ui_TocGeneralSettingsWidget.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocGeneralSettingsWidget.o TocUi/TocGeneralSettingsWidget.cpp + +../build/release/TocAccountSettingsWidget.o: TocUi/TocAccountSettingsWidget.cpp ../include/TocUi/TocAccountSettingsWidget \ + ../include/TocUi/tocaccountsettingswidget.h \ + ../include/defs.h \ + ../build/release/ui_TocAccountSettingsWidget.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocAccountSettingsWidget.o TocUi/TocAccountSettingsWidget.cpp + +../build/release/TocAccountIntermediateWidget.o: TocUi/TocAccountIntermediateWidget.cpp ../include/TocUi/TocAccountIntermediateWidget \ + ../include/TocUi/tocaccountintermediatewidget.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocAccountIntermediateWidget.o TocUi/TocAccountIntermediateWidget.cpp + +../build/release/TocThemesSettingsWidget.o: TocUi/TocThemesSettingsWidget.cpp ../include/TocUi/TocThemesSettingsWidget \ + ../include/TocUi/tocthemessettingswidget.h \ + ../include/defs.h \ + ../build/release/ui_TocThemesSettingsWidget.h \ + ../include/macros.h \ + ../include/TocSettings \ + ../include/tocsettings.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocThemesSettingsWidget.o TocUi/TocThemesSettingsWidget.cpp + +../build/release/TocMainToolbar.o: TocUi/TocMainToolbar.cpp ../include/TocUi/TocMainToolbar \ + ../include/TocUi/tocmaintoolbar.h \ + ../include/defs.h \ + ../include/uidefs.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocMainToolbar.o TocUi/TocMainToolbar.cpp + +../build/release/IconProvider.o: TocUi/IconProvider.cpp ../include/TocUi/IconProvider \ + ../include/TocUi/iconprovider.h \ + ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/IconProvider.o TocUi/IconProvider.cpp + +../build/release/TocEmoticonsDialog.o: TocUi/TocEmoticonsDialog.cpp ../build/release/ui_TocEmoticonsDialog.h \ + ../include/TocUi/TocEmoticonsDialog \ + ../include/TocUi/tocemoticonsdialog.h \ + ../include/macros.h \ + ../include/uidefs.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocEmoticonsDialog.o TocUi/TocEmoticonsDialog.cpp + +../build/release/TocBaseEngine.o: TocEngine/TocBaseEngine.cpp ../include/TocEngine/TocBaseEngine \ + ../include/TocEngine/tocbaseengine.h \ + ../include/defs.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocBaseEngine.o TocEngine/TocBaseEngine.cpp + +../build/release/TocEngine.o: TocEngine/TocEngine.cpp ../include/TocEngine/TocEngine \ + ../include/TocEngine/tocengine.h \ + ../include/TocEngine/TocBaseEngine \ + ../include/TocEngine/tocbaseengine.h \ + ../include/defs.h \ + ../include/TocSettings \ + ../include/tocsettings.h \ + ../include/macros.h + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/TocEngine.o TocEngine/TocEngine.cpp + +../build/release/moc_tocbasemainwindow.o: ../build/release/moc_tocbasemainwindow.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocbasemainwindow.o ../build/release/moc_tocbasemainwindow.cpp + +../build/release/moc_tocmainwindow.o: ../build/release/moc_tocmainwindow.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocmainwindow.o ../build/release/moc_tocmainwindow.cpp + +../build/release/moc_toccontactlistwidget.o: ../build/release/moc_toccontactlistwidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_toccontactlistwidget.o ../build/release/moc_toccontactlistwidget.cpp + +../build/release/moc_tocchatwidget.o: ../build/release/moc_tocchatwidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocchatwidget.o ../build/release/moc_tocchatwidget.cpp + +../build/release/moc_tocuserinfowidget.o: ../build/release/moc_tocuserinfowidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocuserinfowidget.o ../build/release/moc_tocuserinfowidget.cpp + +../build/release/moc_tocsettingswidget.o: ../build/release/moc_tocsettingswidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocsettingswidget.o ../build/release/moc_tocsettingswidget.cpp + +../build/release/moc_tocgeneralsettingswidget.o: ../build/release/moc_tocgeneralsettingswidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocgeneralsettingswidget.o ../build/release/moc_tocgeneralsettingswidget.cpp + +../build/release/moc_tocaccountsettingswidget.o: ../build/release/moc_tocaccountsettingswidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocaccountsettingswidget.o ../build/release/moc_tocaccountsettingswidget.cpp + +../build/release/moc_tocaccountintermediatewidget.o: ../build/release/moc_tocaccountintermediatewidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocaccountintermediatewidget.o ../build/release/moc_tocaccountintermediatewidget.cpp + +../build/release/moc_tocthemessettingswidget.o: ../build/release/moc_tocthemessettingswidget.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocthemessettingswidget.o ../build/release/moc_tocthemessettingswidget.cpp + +../build/release/moc_tocmaintoolbar.o: ../build/release/moc_tocmaintoolbar.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocmaintoolbar.o ../build/release/moc_tocmaintoolbar.cpp + +../build/release/moc_tocemoticonsdialog.o: ../build/release/moc_tocemoticonsdialog.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocemoticonsdialog.o ../build/release/moc_tocemoticonsdialog.cpp + +../build/release/moc_tocbaseengine.o: ../build/release/moc_tocbaseengine.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocbaseengine.o ../build/release/moc_tocbaseengine.cpp + +../build/release/moc_tocengine.o: ../build/release/moc_tocengine.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/moc_tocengine.o ../build/release/moc_tocengine.cpp + +../build/release/qrc_application.o: ../build/release/qrc_application.cpp + $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../build/release/qrc_application.o ../build/release/qrc_application.cpp + +####### Install + +install_target: first FORCE + @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/usr/bin/ || $(MKDIR) $(INSTALL_ROOT)/usr/bin/ + -$(INSTALL_PROGRAM) "../bin/$(QMAKE_TARGET)" "$(INSTALL_ROOT)/usr/bin/$(QMAKE_TARGET)" + -$(STRIP) "$(INSTALL_ROOT)/usr/bin/$(QMAKE_TARGET)" + +uninstall_target: FORCE + -$(DEL_FILE) "$(INSTALL_ROOT)/usr/bin/$(QMAKE_TARGET)" + -$(DEL_DIR) $(INSTALL_ROOT)/usr/bin/ + + +install: install_target FORCE + +uninstall: uninstall_target FORCE + +FORCE: + diff --git a/src/TocEngine/TocBaseEngine.cpp b/src/TocEngine/TocBaseEngine.cpp new file mode 100644 index 0000000..af91351 --- /dev/null +++ b/src/TocEngine/TocBaseEngine.cpp @@ -0,0 +1,39 @@ +/** \file TocBaseEngine.cpp + * \brief Implementation of TocBaseEngine class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocBaseEngine" + +TocBaseEngine::TocBaseEngine( QObject * parent ) + : QObject( parent ) { +} + +TocBaseEngine::~TocBaseEngine() { +} diff --git a/src/TocEngine/TocEngine.cpp b/src/TocEngine/TocEngine.cpp new file mode 100644 index 0000000..4dfbf45 --- /dev/null +++ b/src/TocEngine/TocEngine.cpp @@ -0,0 +1,535 @@ +/** \file TocEngine.cpp + * \brief Implementation of TocEngine class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocEngine" +#include "TocSettings" +#include "macros.h" + +#include +#include + +#include +#include +#include +#include +#include + +using namespace QtTapioca; + +Q_DECLARE_METATYPE(QtTapioca::Connection*); +Q_DECLARE_METATYPE(QtTapioca::ContactBase*); +Q_DECLARE_METATYPE(QtTapioca::Connection::Status); +Q_DECLARE_METATYPE(QtTapioca::Connection::Reason); +Q_DECLARE_METATYPE(QtTapioca::ContactBase::Presence); + +TocEngine::TocEngine( QObject * parent ): + TocBaseEngine( parent ), + _bNewUserContact(true), + _bContactListSynchronized(false), + _pConnection(0) +{ + + qRegisterMetaType(); + qRegisterMetaType(); + qRegisterMetaType(); + qRegisterMetaType(); + + TocSettings* pSettings = TocSettings::getInstance(); + _pTocContactList = pSettings->contactList(); + _pAddedContacts = pSettings->contactsToAdd(); + _pRemovedContacts = pSettings->contactsToRemove(); + +} + +TocEngine::~TocEngine() { + if(_pConnection) + _pConnection->disconnect(); + + delete _pConnection; + + TocSettings *pSettings = TocSettings::getInstance(); + delete pSettings; +} + +void TocEngine::initializeFromSettings() { + + _bNewUserContact = true; + + TocSettings* pSettings = TocSettings::getInstance(); + + // Disconnect first + if(_pConnection) { + _pConnection->disconnect(); + delete _pConnection; + _pConnection = 0; + } + // Reset the UserContact flag + _bNewUserContact = true; + + ConnectionManagerFactory *pFactory = ConnectionManagerFactory::self(); + + // Find new available protocols + QList connectionManagers = pFactory->getAllConnectionManagers(); + ConnectionManager *pConnectionManager; + foreach ( pConnectionManager, connectionManagers ) { + QString protocol; + QStringList protocols = pConnectionManager->supportedProtocols(); + foreach (protocol, protocols) { + if( !pSettings->isProtocolInstalled( protocol ) ) + pSettings->installProtocol( pConnectionManager->name() + "/" + protocol, protocol ); + } + } + + // Get Connection Manager + pConnectionManager = pFactory->getConnectionManager( pSettings->protocol() ); + if (!pConnectionManager) { + _pConnection = 0; + return; + } + + // Search for "lost" connection + QList connectionsList = pConnectionManager->connections(); + if( !connectionsList.empty() ) { + Connection *pConnection; + QString account = static_cast(pSettings->protocol() ) + "." + + static_cast(pSettings->accountUid()).replace("@", "_40").replace(".", "_2e"); + foreach(pConnection, connectionsList) { + if( pConnection->serviceName().contains(account) ) { + + // This doesn't always work... why? + pConnection->disconnect(); + + _pConnection = pConnection; + CONNECT(_pConnection, SIGNAL(statusChanged(QtTapioca::Connection*,QtTapioca::Connection::Status,QtTapioca::Connection::Reason)), this, SLOT(onStatusChange(QtTapioca::Connection*,QtTapioca::Connection::Status,QtTapioca::Connection::Reason))); + CONNECT(_pConnection, SIGNAL(channelCreated(QtTapioca::Connection*,QtTapioca::Channel*,bool)), + this, SLOT(onChannelCreated(QtTapioca::Connection*,QtTapioca::Channel*,bool))); + + return; + } + } + } + + // Setup connection parameters + QList parameters; + parameters.append(ConnectionManager::Parameter("account", pSettings->accountUid())); + parameters.append(ConnectionManager::Parameter("password", pSettings->accountPasswd())); + if( !pSettings->server().isEmpty() ) + parameters.append(ConnectionManager::Parameter("server", pSettings->server())); + if( pSettings->port() > 0 ) + parameters.append(ConnectionManager::Parameter("port", QVariant( (uint)pSettings->port() ))); + if( pSettings->isOldSslEnabled() ) + parameters.append(ConnectionManager::Parameter("old-ssl", QVariant(true))); + if( pSettings->isIgnoreSslErrorsEnabled() ) + parameters.append(ConnectionManager::Parameter("ignore-ssl-errors", QVariant(true))); + if( pSettings->isRegister() ) + parameters.append(ConnectionManager::Parameter("register", QVariant(true))); + + _pConnection = pConnectionManager->requestConnection( pSettings->protocol(), parameters ); + + if( !_pConnection ) { + return; + } + + CONNECT(_pConnection, SIGNAL(statusChanged(QtTapioca::Connection*,QtTapioca::Connection::Status,QtTapioca::Connection::Reason)), + this, SLOT(onStatusChange(QtTapioca::Connection*,QtTapioca::Connection::Status,QtTapioca::Connection::Reason))); + CONNECT(_pConnection, SIGNAL(channelCreated(QtTapioca::Connection*,QtTapioca::Channel*,bool)), + this, SLOT(onChannelCreated(QtTapioca::Connection*,QtTapioca::Channel*,bool))); +} + +void TocEngine::onPresenceChange(Presence presence, QString description) { + + if( !_pConnection ) + initializeFromSettings(); + + if( !_pConnection ) + return; + + if( _pConnection->status() == QtTapioca::Connection::Connected && _pConnection->userContact()) + _pConnection->userContact()->setPresenceWithMessage(static_cast (presence), static_cast (description)); + + else if( _pConnection->status() == QtTapioca::Connection::Disconnected ) + if(presence == Offline) + _bContactListSynchronized = false; // Just to be sure + else + _pConnection->connect(static_cast (presence), static_cast (description)); +} + +void TocEngine::onStatusChange(QtTapioca::Connection* pConnection, QtTapioca::Connection::Status status, QtTapioca::Connection::Reason reason) { + + Q_UNUSED(pConnection); + + emit statusChanged(static_cast (status), static_cast (reason)); + + if( _bNewUserContact && _pConnection->userContact() && _pConnection->contactList() && _pConnection->status() == QtTapioca::Connection::Connected) { + + CONNECT(_pConnection->userContact(), SIGNAL(presenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::Presence,QString)), this, SLOT(onSelfPresenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::Presence,QString))); + + // disconnect for safety of double connections because we don't really know if it's the same object or not.. + disconnect(_pConnection->contactList(), SIGNAL(authorizationRequested(QtTapioca::Contact*)), this, SLOT(onAuthorizationRequested(QtTapioca::Contact*))); + + CONNECT(_pConnection->contactList(), SIGNAL(authorizationRequested(QtTapioca::Contact*)), this, SLOT(onAuthorizationRequested(QtTapioca::Contact*))); + _bNewUserContact = false; + + } else if(_pConnection->status() == QtTapioca::Connection::Disconnected) { + + _bContactListSynchronized = false; +// delete _pConnection; // TODO: Why does it crash?? + _pConnection = 0; + } +} + +void TocEngine::onPresenceUpdated(QtTapioca::ContactBase* pContact, QtTapioca::ContactBase::Presence presence, const QString &presenceMessage) { + + emit contactPresenceUpdated(pContact->uri(), static_cast (presence), presenceMessage); +} + +void TocEngine::onSelfPresenceUpdated(QtTapioca::ContactBase* pContact, QtTapioca::ContactBase::Presence presence, const QString &presenceMessage) { + + Q_UNUSED(pContact); + + emit presenceUpdated(static_cast (presence), presenceMessage); + + if(!_bContactListSynchronized) { + synchronizeContactLists(); + _bContactListSynchronized = true; + + } else if(presence == QtTapioca::ContactBase::Offline) { + _bContactListSynchronized = false; + _pConnection->disconnect(); + } +} + +void TocEngine::onAddContactRequest(TocContact* pContact){ + + _pTocContactList->append(pContact); + _pAddedContacts->append( pContact->uid ); + _pRemovedContacts->removeOne( pContact->uid ); + + addPendingContacts(); +} + +void TocEngine::addPendingContacts() { + + if( _pConnection && _pConnection->status() == Connection::Connected ) { + + while( !_pAddedContacts->isEmpty() ) { + QString uid = _pAddedContacts->takeFirst(); + Contact* pContact = _pConnection->contactList()->addContact( uid ); + if( pContact ) { // If it suceeded + pContact->authorize(true); //TODO: This should be removed when we have the facility to grant authorization at a later time + pContact->subscribe(true); // Ask for subscription + + CONNECT(pContact, SIGNAL(presenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::Presence,const QString&)), + this, SLOT(onPresenceUpdated(QtTapioca::ContactBase*, QtTapioca::ContactBase::Presence, const QString&))); + } else {} + // TODO: Notify UI about the error (usually UID not valid for the protocol) + } + } +} + + +void TocEngine::onEditContactRequest(TocContact* pContact, QString oldUid){ + + if( pContact->uid != oldUid ) { + + if(!_pAddedContacts->removeOne( oldUid )) + _pRemovedContacts->append( oldUid ); + + _pAddedContacts->append( pContact->uid ); + _pRemovedContacts->removeOne( pContact->uid ); + removePendingContacts(); + addPendingContacts(); + } +} + +void TocEngine::onRemoveContactRequest(QString uid) { + + if(!_pTocContactList) return; + + for(int i = 0; i < _pTocContactList->count(); ++i) + if( _pTocContactList->at(i)->uid == uid ) { + _pTocContactList->removeAt(i); + //TODO: remove cached picture if needed + } + + if(!_pAddedContacts->removeOne( uid )) + _pRemovedContacts->append( uid ); + + removePendingContacts(); +} + +void TocEngine::removePendingContacts() { + + if( _pConnection && _pConnection->status() == Connection::Connected ) { + + while( !_pRemovedContacts->isEmpty() ) { + QString uid = _pRemovedContacts->takeFirst(); + Contact* pContact = _pConnection->contactList()->contact( uid ); + if( pContact ) + _pConnection->contactList()->removeContact( pContact ); + } + } +} + +int TocEngine::indexForUid( QString uid ) { + + for(int i = 0; i < _pTocContactList->count(); ++i) + if( _pTocContactList->at(i)->uid == uid ) { + return i; + } + + return -1; +} + +void TocEngine::removeContact( QString uid ) { + + int i = indexForUid(uid); + if( i != -1 ) { + _pTocContactList->removeAt(i); + //TODO: remove cached picture if needed + } +} + +void TocEngine::addContact( const Contact* pContact ) { + + TocContact* pTocContact = new TocContact; + pTocContact->uid = pContact->uri(); + pTocContact->name = pContact->alias(); // That's TOO BAD! I cann't set it to MY OWN selected name.. because of lack of support by telepathy + pTocContact->customIconId = 0; + pTocContact->customIconPath = ""; + pTocContact->gender = NotSpecified; + pTocContact->presence = Offline; + + _pTocContactList->append(pTocContact); +} + +void TocEngine::syncContactsFromServer() { + + QStringList localContactsList; + + QList serverContactsList = _pConnection->contactList()->knownContacts(); + + for(int i = 0; i < _pTocContactList->count(); ++i) + localContactsList.append( _pTocContactList->at(i)->uid ); + + // Find differences + int idx = 0; + while( idx < serverContactsList.count() ) { + + int idy = localContactsList.indexOf( serverContactsList.at(idx)->uri() ); + + if( idy != -1 ) { + serverContactsList.removeAt(idx); + localContactsList.removeAt(idy); + --idx; + } + + ++idx; + } + + // Now we're left with two lists, + // one with contacts to be removed + // and one to be added to our local list. + + // To add + Contact* pContact; + foreach(pContact, serverContactsList) { + + addContact(pContact); + + CONNECT(pContact, SIGNAL(presenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::Presence,const QString&)), + this, SLOT(onPresenceUpdated(QtTapioca::ContactBase*, QtTapioca::ContactBase::Presence, const QString&))); + + } + + // To remove //TODO: Maybe add an option to turn off removal of contacts that are removed on server by other clients + QString uid; + + foreach(uid, localContactsList) { + + removeContact(uid); + } +} + +void TocEngine::synchronizeContactLists() { + + Contact* pContact; + foreach(pContact, _pConnection->contactList()->knownContacts()) + CONNECT(pContact, SIGNAL(presenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::Presence,const QString&)), + this, SLOT(onPresenceUpdated(QtTapioca::ContactBase*, QtTapioca::ContactBase::Presence, const QString&))); + + addPendingContacts(); + removePendingContacts(); + syncContactsFromServer(); + + emit contactListReceived(*_pTocContactList); + _bContactListSynchronized = true; + +} + +void TocEngine::onNewMessageReady(QString uid, Message message) { + + if( !_pConnection || _pConnection->status() != QtTapioca::Connection::Connected) { + message.error = UserOffline; + emit incomingMessage(uid, message); + return; // Message that You cann't send messages when offline + } + + Channel* pDestinationChannel = NULL; + bool bNewChannel = false; + + QList pChannels = _pConnection->openChannels(); + int i; + for(i = 0; i < pChannels.count(); ++i) + if(pChannels[i]->target()->uri() == uid) + break; + + if(i == pChannels.count()) { //not found, create new channel + Contact* pContact = _pConnection->contactList()->contact(uid); + if(!pContact) { + message.error = NotOnContactList; + emit incomingMessage(uid, message); + return; // Message that You cann't send messages to the contact not on users contact list + } + pDestinationChannel = _pConnection->createChannel(Channel::Text, pContact); + if(pDestinationChannel) + bNewChannel = true; + else { // Channel could not be created + message.error = CannotCreateChannel; + emit incomingMessage(uid, message); + return; // Message that Channel could not be created + } + } else { + pDestinationChannel = pChannels[i]; + } + + if(pDestinationChannel->type() == Channel::Text) { + + TextChannel* pTextChannel = dynamic_cast(pDestinationChannel); + + if(bNewChannel) { + + CONNECT(pTextChannel, SIGNAL(messageReceived(const QtTapioca::TextChannel*,const QtTapioca::TextChannel::Message&)), + this, SLOT(onMessageReceived(const QtTapioca::TextChannel*,const QtTapioca::TextChannel::Message&))); + CONNECT(pTextChannel, SIGNAL(messageDeliveryError(const QtTapioca::TextChannel::Message&, QtTapioca::TextChannel::Message::DeliveryError)), + this, SLOT(onMessageDeliveryError(const QtTapioca::TextChannel::Message&, QtTapioca::TextChannel::Message::DeliveryError))); + } + + QtTapioca::TextChannel::Message mess(message.contents); + pTextChannel->sendMessage(mess); + } +} + +void TocEngine::onMessageReceived(const QtTapioca::TextChannel* pTextChannel, const QtTapioca::TextChannel::Message& message) { + + struct Message tecMessage; + tecMessage.contents = message.contents(); + tecMessage.timestamp = message.timestamp(); + tecMessage.error = NoError; + + if(pTextChannel) { + emit incomingMessage(pTextChannel->target()->uri(), tecMessage); + const_cast(pTextChannel)->acknowledge(message); + } +} + +void TocEngine::onMessageDeliveryError(const QtTapioca::TextChannel::Message &message, QtTapioca::TextChannel::Message::DeliveryError error) { + + struct Message tecMessage; + tecMessage.contents = message.contents(); + tecMessage.timestamp = message.timestamp(); + tecMessage.error = static_cast(error); + + QObject* pSender = sender(); + if(pSender) { + TextChannel* pTextChannel = dynamic_cast(pSender); + emit incomingMessage(pTextChannel->target()->uri(), tecMessage); + } +} + +void TocEngine::onChannelCreated(QtTapioca::Connection* pConnection, QtTapioca::Channel* pChannel, bool bSuppressHandler) { + + Q_UNUSED(pConnection); + Q_UNUSED(bSuppressHandler); + + if(pChannel->type() == Channel::Text) { + TextChannel* pTextChannel = dynamic_cast(pChannel); + CONNECT(pTextChannel, SIGNAL(messageReceived (const QtTapioca::TextChannel*,const QtTapioca::TextChannel::Message&)), + this, SLOT(onMessageReceived(const QtTapioca::TextChannel*,const QtTapioca::TextChannel::Message&))); + CONNECT(pTextChannel, SIGNAL(messageDeliveryError(const QtTapioca::TextChannel::Message&, QtTapioca::TextChannel::Message::DeliveryError)), + this, SLOT(onMessageDeliveryError(const QtTapioca::TextChannel::Message&, QtTapioca::TextChannel::Message::DeliveryError))); + + QList messages = pTextChannel->pendingMessages(); + if(messages.count()) { + int i; + struct Message message; + message.error = NoError; + for(i = 0; i < messages.count(); ++i) { + message.contents = messages.at(i).contents(); + message.timestamp = messages.at(i).timestamp(); + emit incomingMessage(pChannel->target()->uri(), message); + } + } + } +} + +void TocEngine::onSessionClosed(QString uid) { + + if( !_pConnection ) + return; + + QList pChannels = _pConnection->openChannels(); + int i; + for(i = 0; i < pChannels.count(); ++i) + if(pChannels[i]->target()->uri() == uid) + break; + + if(i < pChannels.count()) { + pChannels.at(i)->close(); + } +} + +void TocEngine::onAuthorizationRequested(QtTapioca::Contact *pContact) { + + // TODO: should be dependent on user pSettings + pContact->authorize( true ); + pContact->subscribe( true ); + + for(int i = 0; i < _pTocContactList->count(); ++i) + if(_pTocContactList->at(i)->uid == pContact->uri()) + return; // Return if the contact is already on our contact list + + addContact(pContact); // Add Contact to notify user + CONNECT(pContact, SIGNAL(presenceUpdated(QtTapioca::ContactBase*,QtTapioca::ContactBase::Presence,const QString&)), + this, SLOT(onPresenceUpdated(QtTapioca::ContactBase*, QtTapioca::ContactBase::Presence, const QString&))); + + emit contactListReceived(*_pTocContactList); +} diff --git a/src/TocEngine/TocEngine.pri b/src/TocEngine/TocEngine.pri new file mode 100644 index 0000000..e050735 --- /dev/null +++ b/src/TocEngine/TocEngine.pri @@ -0,0 +1,9 @@ +DEPENDPATH += \ + $$PWD + +INCLUDEPATH += \ + $$PWD + +SOURCES += \ + TocBaseEngine.cpp \ + TocEngine.cpp diff --git a/src/TocSettings.cpp b/src/TocSettings.cpp new file mode 100644 index 0000000..12a2d36 --- /dev/null +++ b/src/TocSettings.cpp @@ -0,0 +1,380 @@ +/** \file TocSettings.cpp + * \brief Implementation of TocSettings class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocSettings" + +#include +#include + +// Initialize static objects +TocSettings* TocSettings::_pSelf = 0; + +TocSettings* TocSettings::getInstance() { + + if (!_pSelf) + _pSelf = new TocSettings(); + + return _pSelf; +} + +TocSettings::TocSettings() + : _register(false) { + + _pProtocolMap = new QMap(); + _pProtocolMap->insert("Jabber", "jabber"); + _pProtocolMap->insert("SIP", "sip"); + _pProtocolMap->insert("Google Talk", "jabber"); + + _pContactList = new TocContactList(); + + read(); +} + +TocSettings::~TocSettings() { + + save(); + + delete _pProtocolMap; + delete _pContactList; +} + +void TocSettings::read() { + + QSettings settings("Tieto", "tietoopcom"); + settings.beginGroup("Account"); + _accountName = settings.value("account/name").toString(); + _accountUid = settings.value("account/uid").toString(); + _accountPasswd = settings.value("account/pass").toString(); + _protocol = settings.value("server/protocol").toString(); + _protocols = _pProtocolMap->keys(); + _protocolCommonName = settings.value("server/protocol-name").toString(); + _server = settings.value("server/server").toString(); + _serverHint = ""; + _port = settings.value("server/port").toInt(); + _portHint = 0; + _bOldSsl = settings.value("server/old-ssl", false).toBool(); + _bIgnoreSslErrors = settings.value("server/ignore-ssl-errors", false).toBool(); + + settings.endGroup(); + + settings.beginGroup("Contact_List"); + _authorizationRule = static_cast(settings.value("list/authorization-rule", Ask).toInt()); + _sortOrder = static_cast(settings.value("list/sort-order", Alphabetical).toInt()); + + if(!_pContactList) + _pContactList = new TocContactList(); + else + _pContactList->clear(); + + settings.beginGroup("Contacts"); + + QStringList contactsList = settings.childKeys(); + + foreach(QString entry, contactsList) { + + QStringList contactFields = settings.value(entry).toString().split("|"); + + TocContact* pContact = new TocContact(); + pContact->uid = entry; + pContact->name = contactFields[0]; + pContact->customIconPath = contactFields[1]; + pContact->customIconId = 0; + pContact->gender = static_cast(contactFields[2].toInt()); + pContact->presence = Offline; + + _pContactList->append(pContact); + } + + + settings.endGroup(); + settings.endGroup(); + + settings.beginGroup("Pending_Contact_Lists"); + + settings.beginGroup("Added"); + _addedContacts = settings.childKeys(); + + settings.endGroup(); + + settings.beginGroup("Removed"); + _removedContacts = settings.childKeys(); + + settings.endGroup(); + settings.endGroup(); + + settings.beginGroup("Themes"); + +#ifdef QT_NO_DEBUG + #define ssPath QString("/usr/share/tietoopcom/stylesheets/") +#else + #define ssPath QString("./data/stylesheets/") +#endif //QT_NO_DEBUG + + _currentTheme = settings.value("theme", ssPath + "/default.qss").toString(); + settings.endGroup(); +} + +void TocSettings::save() { + + QSettings settings("Tieto", "tietoopcom"); + + settings.beginGroup("Account"); + settings.setValue("account/name", _accountName); + settings.setValue("account/uid", _accountUid); + settings.setValue("account/pass", _accountPasswd); + settings.setValue("server/protocol", _protocol); + settings.setValue("server/protocol-name", _protocolCommonName); + settings.setValue("server/server", _server); + settings.setValue("server/port", _port); + settings.setValue("server/old-ssl", _bOldSsl); + settings.setValue("server/ignore-ssl-errors", _bIgnoreSslErrors); + settings.endGroup(); + + settings.beginGroup("Contact_List"); + settings.setValue("list/authorization-rule", _authorizationRule); + settings.setValue("list/sort-order", _sortOrder); + + + settings.beginGroup("Contacts"); + settings.remove(""); + + QString entry; + TocContact* pContact = 0; + + foreach(pContact, *_pContactList) { + + entry = pContact->name + "|" + pContact->customIconPath + "|" + QString::number(static_cast(pContact->gender)); + settings.setValue(pContact->uid, entry); + } + + settings.endGroup(); + settings.endGroup(); + + settings.beginGroup("Pending_Contact_Lists"); + settings.beginGroup("Added"); + settings.remove(""); + + foreach(QString added, _addedContacts) + settings.setValue(added, 0); + + settings.endGroup (); + + settings.beginGroup("Removed"); + settings.remove(""); + + foreach(QString removed, _removedContacts) + settings.setValue(removed, 0); + + settings.endGroup(); + settings.endGroup(); + + settings.beginGroup("Themes"); + settings.setValue("theme", _currentTheme); + settings.endGroup(); +} + +const QString& TocSettings::accountName() { + return _accountName; +} + +void TocSettings::setAccountName(const QString& accountName) { + _accountName = accountName; +} + +const QString& TocSettings::accountUid() { + return _accountUid; +} + +void TocSettings::setAccountUid(const QString& uid) { + _accountUid = uid; +} + +const QString& TocSettings::accountPasswd() { + return _accountPasswd; +} + +void TocSettings::setAccountPasswd(const QString& password) { + _accountPasswd = password; +} + +const QString& TocSettings::protocol() { + return _protocol; +} + +void TocSettings::setProtocol(const QString& protocol) { + _protocol = protocol; +} + +void TocSettings::setProtocolByName(const QString& service) { + + _protocol = _pProtocolMap->value(service); + _protocolCommonName = service; + + if(service == "Jabber") { + _bOldSsl = false; + _bIgnoreSslErrors = false; + } else if( service == "Google Talk") { + _bOldSsl = true; + _bIgnoreSslErrors = true; + } else if( service == "SIP") { + _bOldSsl = false; + _bIgnoreSslErrors = false; + } else { + _bOldSsl = false; + _bIgnoreSslErrors = false; + } +} + +const QStringList& TocSettings::protocols() { + return _protocols; +} + +void TocSettings::setProtocols(const QStringList& protocols) { + _protocols = protocols; +} + +const QString& TocSettings::server() { + return _server; +} + +void TocSettings::setServer(const QString& server) { + _server = server; +} + +int TocSettings::port() { + return _port; +} + +void TocSettings::setPort(int port) { + _port = port; +} + +bool TocSettings::isOldSslEnabled() { + return _bOldSsl; +} + +void TocSettings::setOldSslEnabled(bool bEnabled) { + _bOldSsl = bEnabled; +} + +bool TocSettings::isIgnoreSslErrorsEnabled() { + return _bIgnoreSslErrors; +} + +void TocSettings::setIgnoreSslErrorsEnabled(bool bEnabled) { + _bIgnoreSslErrors = bEnabled; +} + +QList* TocSettings::contactList() { + return _pContactList; +} + +QStringList* TocSettings::contactsToAdd() { + return &_addedContacts; +} + +QStringList* TocSettings::contactsToRemove() { + return &_removedContacts; +} + +SortOrder TocSettings::sortOrder() { + return _sortOrder; +} + +void TocSettings::setSortOrder(SortOrder sortOrder) { + _sortOrder = sortOrder; +} + +AuthorizationRule TocSettings::authorizationRule() { + return _authorizationRule; +} + +void TocSettings::setAuthorizationRule(AuthorizationRule rule) { + _authorizationRule = rule; +} + +const QString& TocSettings::currentTheme() { + return _currentTheme; +} + +void TocSettings::setCurrentTheme(const QString& theme) { + _currentTheme = theme; +} + +bool TocSettings::isProtocolInstalled(const QString& protocol) { + return !_pProtocolMap->key(protocol).isEmpty(); +} + +void TocSettings::installProtocol(const QString& commonName, const QString& protocol) { + _pProtocolMap->insert(commonName, protocol); + _protocols = _pProtocolMap->keys(); +} + +const QString TocSettings::protocolCommonName() { + return _protocolCommonName; +} + +int TocSettings::portHint(const QString& uid, const QString& serviceName) { + + Q_UNUSED(uid); + + if( serviceName == "Jabber") + return _portHint = 5222; + if( serviceName == "Google Talk") + return _portHint = 5223; + if( serviceName == "SIP") + return _portHint = 5060; + + return _portHint = 0; +} + +const QString& TocSettings::serverHint(const QString& uid, const QString& serviceName) { + + if(serviceName == "Jabber") + if(uid.contains("@")) + return _serverHint = uid.split("@").at(1); + if(serviceName == "Google Talk") + return _serverHint = "talk.google.com"; + if(serviceName == "SIP") + return _serverHint = ""; + + return _serverHint = ""; +} + +bool TocSettings::isRegister() { + bool bRet = _register; + _register = false; + return bRet; +} + +void TocSettings::setRegister() { + _register = true; +} diff --git a/src/TocUi/ChangePasswordDialog.ui b/src/TocUi/ChangePasswordDialog.ui new file mode 100644 index 0000000..d19ece7 --- /dev/null +++ b/src/TocUi/ChangePasswordDialog.ui @@ -0,0 +1,386 @@ + + + + ChangePasswordDialogClass + + + + 0 + 0 + 468 + 341 + + + + Dialog + + + QDialog { + background-color: rgb(212, 255, 185); + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #00aa00, stop: 0.55 #00bb00, + stop: 0.56 #00bb00, stop: 1 #00ff00); +} + + + + + + true + + + + 0 + 0 + + + + QFrame { + background-color: rgb(212, 255, 185); + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #00aa00, stop: 0.55 #00bb00, + stop: 0.56 #00bb00, stop: 1 #00ff00); +} + + + QFrame::Box + + + QFrame::Sunken + + + 1 + + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + QLineEdit { + background-color: rgb(238, 255, 224); +} + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + QLineEdit { + background-color: rgb(238, 255, 224); +} + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + QLineEdit { + background-color: rgb(238, 255, 224); +} + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + 0 + 0 + + + + + 100 + 0 + + + + + 140 + 16777215 + + + + QLabel { + background-color: none; + color: rgb(255, 255, 255); +} + + + Old password: + + + + + + + + 0 + 0 + + + + + 100 + 0 + + + + + 140 + 16777215 + + + + QLabel { + background-color: none; + color: rgb(255, 255, 255); +} + + + New password: + + + + + + + + 0 + 0 + + + + + 100 + 0 + + + + + 140 + 16777215 + + + + QLabel { + background-color: none; + color: rgb(255, 255, 255); +} + + + Confirm password: + + + + + + + + + Qt::LeftToRight + + + QPushButton { + color: rgb(255, 255, 255); + border: 0px; + + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #009900, stop: 0.55 #00aa00, + stop: 0.56 #00bb00, stop: 1 #00ff00); + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 100px; + } + +QPushButton:pressed { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #00ff00, stop: 0.55 #00bb00, + stop: 0.56 #00aa00, stop: 1 #009900); + } + + + Change + + + + + + + Qt::LeftToRight + + + QPushButton { + color: rgb(255, 255, 255); + border: 0px; + + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #009900, stop: 0.55 #00aa00, + stop: 0.56 #00bb00, stop: 1 #00ff00); + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 100px; + } + +QPushButton:pressed { + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0, + stop: 0 #00ff00, stop: 0.55 #00bb00, + stop: 0.56 #00aa00, stop: 1 #009900); + } + + + Cancel + + + + + + + + + + + + + + + + pushButton + clicked() + ChangePasswordDialogClass + reject() + + + 355 + 288 + + + 419 + 337 + + + + + pushButton_2 + clicked() + ChangePasswordDialogClass + accept() + + + 184 + 278 + + + 194 + 337 + + + + + diff --git a/src/TocUi/IconProvider.cpp b/src/TocUi/IconProvider.cpp new file mode 100644 index 0000000..307b91e --- /dev/null +++ b/src/TocUi/IconProvider.cpp @@ -0,0 +1,263 @@ +/** \file IconProvider.cpp + * \brief Implementation of IconProvider class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include + +#include "IconProvider" +#include "TocSettings" + + +// Initialize static object +IconProvider* IconProvider::mp_self = 0; + +// --------------------------------------------------------------------------- +// getInstance +// --------------------------------------------------------------------------- +// +IconProvider* IconProvider::getInstance() +{ + if ( !mp_self) + mp_self = new IconProvider(); + + return mp_self; +} + +// --------------------------------------------------------------------------- +// Constructor +// --------------------------------------------------------------------------- +// +IconProvider::IconProvider(): + _customIconId(1), + _defaultMaleImagePath(":/contactmale.png"), + _defaultFemaleImagePath(":/contactfemale.png"), + _defaultUnknownImagePath(":/unknown.png") +{ + //Initialize _defaultIcons map according to gender and status + + //Male + QImage* pNoFrame = new QImage(_defaultMaleImagePath); + QImage* pRed = addStatusFrame(pNoFrame, Busy); + QImage* pYellow = addStatusFrame(pNoFrame, Away); + QImage* pGreen = addStatusFrame(pNoFrame, Available); + + _defaultIcons[Male << 8 | Hidden] = pNoFrame; + _defaultIcons[Male << 8 | Offline] = pNoFrame; + _defaultIcons[Male << 8 | Available]= pGreen; + _defaultIcons[Male << 8 | Busy] = pRed; + _defaultIcons[Male << 8 | XA] = pYellow; + _defaultIcons[Male << 8 | Away] = pYellow; + + //Female + pNoFrame = new QImage(_defaultFemaleImagePath); + pRed = addStatusFrame(pNoFrame, Busy); + pYellow = addStatusFrame(pNoFrame, Away); + pGreen = addStatusFrame(pNoFrame, Available); + + _defaultIcons[Female << 8 | Hidden] = pNoFrame; + _defaultIcons[Female << 8 | Offline] = pNoFrame; + _defaultIcons[Female << 8 | Available] = pGreen; + _defaultIcons[Female << 8 | Busy] = pRed; + _defaultIcons[Female << 8 | XA] = pYellow; + _defaultIcons[Female << 8 | Away] = pYellow; + + //NotSpecified + pNoFrame = new QImage(_defaultUnknownImagePath); + pRed = addStatusFrame(pNoFrame, Busy); + pYellow = addStatusFrame(pNoFrame, Away); + pGreen = addStatusFrame(pNoFrame, Available); + + _defaultIcons[NotSpecified << 8 | Hidden] = pNoFrame; + _defaultIcons[NotSpecified << 8 | Offline] = pNoFrame; + _defaultIcons[NotSpecified << 8 | Available]= pGreen; + _defaultIcons[NotSpecified << 8 | Busy] = pRed; + _defaultIcons[NotSpecified << 8 | XA] = pYellow; + _defaultIcons[NotSpecified << 8 | Away] = pYellow; + + + //Initialize _customIcons map from TocSettings + TocSettings *pSettings = TocSettings::getInstance(); + + TocContactList *pContacts = pSettings->contactList(); + + foreach(TocContact* pContact, *pContacts) + { + if(!pContact->customIconPath.isEmpty()) + setCustomIcon(pContact); + } +} + +// --------------------------------------------------------------------------- +// Destructor +// --------------------------------------------------------------------------- +// +IconProvider::~IconProvider() +{ + QList defaultIconsKeys = _defaultIcons.uniqueKeys(); + + foreach(int key, defaultIconsKeys) + { + QImage* pImage = _defaultIcons.value(key); + if(pImage) + { + delete pImage; + } + } + + + QList customIconsKeys = _defaultIcons.uniqueKeys(); + + foreach(int key, customIconsKeys) + { + QImage* pImage = _customIcons.value(key); + if(pImage) + { + delete pImage; + } + } +} + +// --------------------------------------------------------------------------- +// matchIcon +// --------------------------------------------------------------------------- +// +QImage* IconProvider::matchIcon(const TocContact* pContact) const +{ + if(pContact->customIconId) + return _customIcons.value(pContact->customIconId << 8 | pContact->presence); + else + return _defaultIcons.value(pContact->gender << 8 | pContact->presence); +} + +// --------------------------------------------------------------------------- +// matchIcon +// --------------------------------------------------------------------------- +// +QIcon IconProvider::matchIcon(Gender gender) const +{ + switch( static_cast(gender) ) + { + + case NotSpecified: + return QIcon(_defaultUnknownImagePath); + + case Male: + return QIcon(_defaultMaleImagePath); + + case Female: + return QIcon(_defaultFemaleImagePath); + + default: + return QIcon(_defaultUnknownImagePath); + } +} + +// --------------------------------------------------------------------------- +// setCustomIcon +// --------------------------------------------------------------------------- +// +void IconProvider::setCustomIcon(TocContact* pContact) +{ + //Check if there's something to be set + if(pContact->customIconPath.isEmpty()) + + //Check if this pContact has some custom icon already associated + if(_customIcons[pContact->customIconId]) + { + //if yes, remove it from the list + _customIcons.remove(pContact->customIconId << 8 | Hidden); + _customIcons.remove(pContact->customIconId << 8 | Offline); + _customIcons.remove(pContact->customIconId << 8 | Available); + _customIcons.remove(pContact->customIconId << 8 | Busy); + _customIcons.remove(pContact->customIconId << 8 | XA); + _customIcons.remove(pContact->customIconId << 8 | Away); + } + + QImage* pNoFrame = new QImage(pContact->customIconPath); + QImage* pRed = addStatusFrame(pNoFrame, Busy); + QImage* pYellow = addStatusFrame(pNoFrame, Away); + QImage* pGreen = addStatusFrame(pNoFrame, Available); + + _customIcons[_customIconId << 8 | Hidden] = pNoFrame; + _customIcons[_customIconId << 8 | Offline] = pNoFrame; + _customIcons[_customIconId << 8 | Available] = pGreen; + _customIcons[_customIconId << 8 | Busy] = pRed; + _customIcons[_customIconId << 8 | XA] = pYellow; + _customIcons[_customIconId << 8 | Away] = pYellow; + + pContact->customIconId = _customIconId++; +} + +// --------------------------------------------------------------------------- +// addStatusFrame +// --------------------------------------------------------------------------- +// +QImage* IconProvider::addStatusFrame(const QImage *baseImage, Presence presence) const +{ + QImage contactImage(*baseImage); + QImage *pResultImage = new QImage(QSize::QSize(72,72), QImage::Format_ARGB32_Premultiplied); + + QImage presenceFrame; + + switch(presence) + { + case Hidden: + case Offline: + break; + + case Available: + presenceFrame = QImage(":greenframe.png"); + break; + + case Busy: + presenceFrame = QImage(":redframe.png"); + break; + + case XA: + case Away: + presenceFrame = QImage(":yellowframe.png"); + } + + QPainter painter(pResultImage); + + painter.setCompositionMode(QPainter::CompositionMode_Source); + painter.fillRect(pResultImage->rect(), Qt::transparent); + + painter.setCompositionMode(QPainter::CompositionMode_SourceOver); + painter.drawImage(0, 0, contactImage); + + painter.setCompositionMode(QPainter::CompositionMode_DestinationOver); + painter.drawImage(0, 0, presenceFrame); + painter.end(); + + return pResultImage; +} diff --git a/src/TocUi/TocAccountIntermediateWidget.cpp b/src/TocUi/TocAccountIntermediateWidget.cpp new file mode 100644 index 0000000..672d64c --- /dev/null +++ b/src/TocUi/TocAccountIntermediateWidget.cpp @@ -0,0 +1,154 @@ +/** \file TocAccountIntermediateWidget.cpp + * \brief Implementation of TocAccountIntermediateWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocAccountIntermediateWidget" +#include +#include +#include +#include +#include +#include "macros.h" + +TocAccountIntermediateWidget::TocAccountIntermediateWidget(QWidget * parent, Qt::WindowFlags flags) + : QWidget(parent, flags) { + + setContentsMargins( -10, -10, -10, -10 ); + setObjectName("intermediateWidget"); + + QGridLayout* gridLayout = new QGridLayout(this); + _pIntermediateFrame = new QFrame( this ); + _pIntermediateFrame->setObjectName("intermediateFrame"); + gridLayout->addWidget( _pIntermediateFrame ); + + QHBoxLayout* mainHorizontalLayout = new QHBoxLayout( _pIntermediateFrame ); + + //1st layout - vertical - back button + strech + QVBoxLayout* vLayout1 = new QVBoxLayout(); + + vLayout1->addStretch(1); + + _pBackButton = new QPushButton(tr("Back"), this); + _pBackButton->setObjectName("backButton"); + vLayout1->addWidget(_pBackButton); + + mainHorizontalLayout->addLayout(vLayout1); + + //2nd layout - vertical - for Create and Edit buttons + QVBoxLayout* vLayout2 = new QVBoxLayout(); + + vLayout2->addStretch(1); + + QHBoxLayout* hLayout1 = new QHBoxLayout(); + + hLayout1->addStretch(1); + + _pCreateButton = new QPushButton(tr("Create\nnew"), this); + _pCreateButton->setObjectName("createButton"); + hLayout1->addWidget(_pCreateButton); + + hLayout1->addStretch(1); + + _pEditButton = new QPushButton(tr("Edit"), this); + _pEditButton->setObjectName("editButton"); + hLayout1->addWidget(_pEditButton); + + hLayout1->addStretch(1); + + vLayout2->addLayout( hLayout1 ); + vLayout2->addStretch(2); + + mainHorizontalLayout->addLayout(vLayout2); + + + //3rd layout - horizontal - just to add stretch + QHBoxLayout* hLayout3 = new QHBoxLayout(); + QSpacerItem* spacer = new QSpacerItem(_pBackButton->width(), 0); + hLayout3->addItem(spacer); + + mainHorizontalLayout->addLayout(hLayout3); + + + setupStyles(); + + CONNECT(_pBackButton, SIGNAL(clicked()), this, SIGNAL(backClicked())); + CONNECT(_pEditButton, SIGNAL(clicked()), this, SIGNAL(editClicked())); + CONNECT(_pCreateButton, SIGNAL(clicked()), this, SIGNAL(createClicked())); +} + +TocAccountIntermediateWidget::~TocAccountIntermediateWidget() { + +} + +void TocAccountIntermediateWidget::setupStyles() { + setStyleSheet("QPushButton { }"); + _pCreateButton->setStyleSheet( + "QPushButton {" + "font: bold 16px;" + "border-radius: 5px;" + "min-height: 120px;" + "min-width: 140px;" + "max-height: 120px;" + "max-width: 140px;" + "}" + ); + + _pEditButton->setStyleSheet( + "QPushButton {" + "font: bold 16px;" + "border-radius: 5px;" + "min-height: 120px;" + "min-width: 140px;" + "max-height: 120px;" + "max-width: 140px;" + "}" + ); + + _pBackButton->setStyleSheet( + "QPushButton {" + "font: bold 16px;" + "border-radius: 5px;" + "min-height: 80px;" + "min-width: 80px;" + "max-height: 80px;" + "max-width: 80px;" + "}" + ); +} + +void TocAccountIntermediateWidget::enableFTUMode( bool ftu ) { + _pBackButton->setHidden(ftu); + + if(ftu) { + _pEditButton->setText(tr("Use\nexisting")); + } else { + _pEditButton->setText(tr("Edit")); + } +} diff --git a/src/TocUi/TocAccountSettingsWidget.cpp b/src/TocUi/TocAccountSettingsWidget.cpp new file mode 100644 index 0000000..2d581fa --- /dev/null +++ b/src/TocUi/TocAccountSettingsWidget.cpp @@ -0,0 +1,234 @@ +/** \file TocAccountSettingsWidget.cpp + * \brief Implementation of TocAccountSettingsWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include + +#include "TocAccountSettingsWidget" +#include "ui_TocAccountSettingsWidget.h" +#include "TocSettings" +#include "macros.h" + + + +TocAccountSettingsWidget::TocAccountSettingsWidget(QWidget * parent, Qt::WindowFlags flags) + : QWidget(parent, flags), _bCreateMode(false) { + + ui = new Ui_TocAccountSettingsWidgetClass(); + ui->setupUi( this ); + setContentsMargins( -10, -10, -10, -10 ); + setObjectName("accountSettings"); + + ui->editVCardButton->hide(); + ui->changePasswordButton->hide(); + + TocSettings* pSettings = TocSettings::getInstance(); + QStringList prot = pSettings->protocols(); + for(int i = 0; i < prot.count(); ++i) + ui->protocolComboBox->addItem(prot[i]); + + CONNECT(ui->backButton, SIGNAL(clicked()), this, SIGNAL(backClicked())); +} + +TocAccountSettingsWidget::~TocAccountSettingsWidget() { + delete ui; +} + +void TocAccountSettingsWidget::loginEdited(const QString& newLogin) { + TocSettings* pSettings = TocSettings::getInstance(); + ui->serverLineEdit->setText(pSettings->serverHint(newLogin, ui->protocolComboBox->currentText())); + ui->portLineEdit->setText(QString("%1").arg(pSettings->portHint(newLogin, ui->protocolComboBox->currentText()))); +} + +void TocAccountSettingsWidget::protocolEdited(const QString& newProtocol) { + TocSettings* pSettings = TocSettings::getInstance(); + ui->serverLineEdit->setText(pSettings->serverHint(ui->loginLineEdit->text(), newProtocol)); + ui->portLineEdit->setText(QString("%1").arg(pSettings->portHint(ui->loginLineEdit->text(), newProtocol))); +} + +void TocAccountSettingsWidget::disconnectHints() { + disconnect(ui->loginLineEdit, SIGNAL(textEdited(QString)), this, SLOT(loginEdited(QString))); + disconnect(ui->protocolComboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(protocolEdited(QString))); + disconnect(ui->serverLineEdit, SIGNAL(textEdited(QString)), this, SLOT(disconnectHints())); + disconnect(ui->portLineEdit, SIGNAL(textEdited(QString)), this, SLOT(disconnectHints())); +} + +void TocAccountSettingsWidget::connectHints() { + // disconnect first to ensure double connections are not made.. + disconnectHints(); + CONNECT(ui->loginLineEdit, SIGNAL(textEdited(QString)), this, SLOT(loginEdited(QString))); + CONNECT(ui->protocolComboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(protocolEdited(QString))); + CONNECT(ui->serverLineEdit, SIGNAL(textEdited(QString)), this, SLOT(disconnectHints())); + CONNECT(ui->portLineEdit, SIGNAL(textEdited(QString)), this, SLOT(disconnectHints())); + +} + +void TocAccountSettingsWidget::reload() { + connectHints(); + + if(createMode()) { + ui->loginLineEdit->setText( "" ); + ui->passwordLineEdit->setText( "" ); + ui->passwordConfirmLineEdit->setText( "" ); + ui->serverLineEdit->setText( "" ); + ui->protocolComboBox->setCurrentIndex( -1 ); + ui->portLineEdit->setText( "" ); + } else { + TocSettings* pSettings = TocSettings::getInstance(); + ui->loginLineEdit->setText( pSettings->accountUid() ); + ui->passwordLineEdit->setText( pSettings->accountPasswd() ); + ui->serverLineEdit->setText( pSettings->server() ); + ui->portLineEdit->setText(QString("%1").arg( pSettings->port() )); + QString s = pSettings->protocolCommonName(); + ui->protocolComboBox->setCurrentIndex( + ui->protocolComboBox->findText( s, Qt::MatchExactly )); + } +} + +void TocAccountSettingsWidget::showEvent(QShowEvent *event){ + reload(); + QWidget::showEvent(event); +} + +void TocAccountSettingsWidget::handleError(QString errorText) { + QMessageBox::information( this, "Invalid value", errorText); +} + +bool TocAccountSettingsWidget::createMode() const { + return _bCreateMode; +} + +void TocAccountSettingsWidget::setCreateMode(bool enable) { + + _bCreateMode = enable; + + ui->passwordConfirmLabel->setVisible(enable); + ui->passwordConfirmLineEdit->setVisible(enable); + ui->changePasswordButton->setVisible(!enable); + + if(enable) { + ui->okButton->setText(tr("Create")); + ui->backButton->setText(tr("Back")); + } else { + ui->okButton->setText(tr("Ok")); + ui->backButton->setText(tr("Back")); + } +} + +bool TocAccountSettingsWidget::dataVerified() { + if(!ui->loginLineEdit->text().length()) { + handleError(tr("Please provide login")); + return false; + } + if(!ui->passwordLineEdit->text().length()) { + handleError(tr("Please provide password")); + return false; + } + if(createMode() && ui->passwordLineEdit->text() != ui->passwordConfirmLineEdit->text()) { + handleError(tr("Passwords do not match")); + return false; + } + if(!ui->serverLineEdit->text().length()) { + handleError(tr("Please provide server name")); + return false; + } + if(!ui->portLineEdit->text().toInt()) { + handleError(tr("Please provide port number")); + return false; + } + + return true; +} + +void TocAccountSettingsWidget::onChangePasswordButton(){ + // TODO: finish implementation +} + +void TocAccountSettingsWidget::onOkButton(){ + if(!dataVerified()) + return; + + if(createMode()) + createNewAccount(); + else { + saveAccountData(); + emit finished(); // Close the view when not in `Create mode` + } +} + +void TocAccountSettingsWidget::saveAccountData() { + + bool settingsChanged = false; + + TocSettings* pSettings = TocSettings::getInstance(); + + if(ui->loginLineEdit->text() != pSettings->accountUid()) { + pSettings->setAccountUid(ui->loginLineEdit->text()); + settingsChanged = true; + } + + if(ui->passwordLineEdit->text() != pSettings->accountPasswd()) { + pSettings->setAccountPasswd(ui->passwordLineEdit->text()); +// settingsChanged = true; // This is not needed for only the password + } + + if(ui->protocolComboBox->currentText() != pSettings->protocolCommonName()) { + pSettings->setProtocolByName(ui->protocolComboBox->currentText()); + settingsChanged = true; + } + + if(ui->serverLineEdit->text() != pSettings->server()) { + pSettings->setServer(ui->serverLineEdit->text()); + settingsChanged = true; + } + + if(ui->portLineEdit->text().toInt() != pSettings->port()) { + pSettings->setPort(ui->portLineEdit->text().toInt()); + settingsChanged = true; + } + + if(settingsChanged) { + emit accountSettingsChanged(); + } +} + +void TocAccountSettingsWidget::createNewAccount() { + + TocSettings* pSettings = TocSettings::getInstance(); + pSettings->setAccountUid(ui->loginLineEdit->text()); + pSettings->setAccountPasswd(ui->passwordLineEdit->text()); + pSettings->setServer(ui->serverLineEdit->text()); + pSettings->setPort(ui->portLineEdit->text().toInt()); + pSettings->setProtocolByName(ui->protocolComboBox->currentText()); + pSettings->setRegister(); + + emit newAccountSettingsCreated(); +} diff --git a/src/TocUi/TocAccountSettingsWidget.ui b/src/TocUi/TocAccountSettingsWidget.ui new file mode 100644 index 0000000..38e64be --- /dev/null +++ b/src/TocUi/TocAccountSettingsWidget.ui @@ -0,0 +1,609 @@ + + + + TocAccountSettingsWidgetClass + + + + 0 + 0 + 609 + 388 + + + + Form + + + + + + + + + true + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + + + QFrame::Box + + + QFrame::Sunken + + + 1 + + + + + + -1 + + + QLayout::SetMinimumSize + + + + + false + + + + 80 + 80 + + + + + 80 + 80 + + + + QPushButton{ + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Edit +VCard + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + 80 + 80 + + + + + 80 + 80 + + + + QPushButton{ + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Back + + + + + + + + + + + + + QLabel { + background: none; + min-height: 48px; + font: bold 14px; +} + + + Login + + + + + + + QLineEdit{ + border-radius: 5px; + min-height: 48px; + font: bold 14px; +} + + + + + + + QLabel{ + background: none; + min-height: 48px; + font: bold 14px; +} + + + Password + + + + + + + QLineEdit{ + border-radius: 5px; + min-height: 48px; + font: bold 14px; +} + + + QLineEdit::Password + + + + + + + QLabel{ + background: none; + min-height: 48px; + font: bold 14px; +} + + + Confirm Password + + + true + + + -1 + + + + + + + QLineEdit{ + border-radius: 5px; + min-height: 48px; + font: bold 14px; +} + + + QLineEdit::Password + + + + + + + Qt::Vertical + + + QSizePolicy::Maximum + + + + 20 + 20 + + + + + + + + Qt::Vertical + + + QSizePolicy::Maximum + + + + 20 + 20 + + + + + + + + + + Qt::Vertical + + + QSizePolicy::Maximum + + + + 20 + 20 + + + + + + + + + + QLabel{ + background: none; + min-height: 48px; + font: bold 14px; +} + + + Protocol + + + + + + + + 79 + 52 + + + + QComboBox { + min-height: 48px; + font: bold 16px; +} + + + + + + + + QLabel{ + background: none; + min-height: 48px; + font: bold 14px; +} + + + Server + + + + + + + QLineEdit{ + border-radius: 5px; + min-height: 48px; + font: bold 14px; +} + + + + + + + QLabel{ + background: none; + min-height: 48px; + font: bold 14px; +} + + + Port + + + + + + + + 80 + 16777215 + + + + QLineEdit{ + border-radius: 5px; + min-height: 48px; + min-width: 48px; + font: bold 14px; +} + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + -1 + + + QLayout::SetMinimumSize + + + + + false + + + + 80 + 80 + + + + + 80 + 80 + + + + QPushButton{ + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Change +password + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + 80 + 80 + + + + + 80 + 80 + + + + QPushButton{ + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Ok + + + + + + + + + + + + + + loginLineEdit + textEdited(QString) + TocAccountSettingsWidgetClass + loginEdited(QString) + + + 348 + 60 + + + 535 + 254 + + + + + protocolComboBox + currentIndexChanged(QString) + TocAccountSettingsWidgetClass + protocolEdited(QString) + + + 259 + 329 + + + 535 + 260 + + + + + okButton + clicked() + TocAccountSettingsWidgetClass + onOkButton() + + + 587 + 366 + + + 535 + 331 + + + + + changePasswordButton + clicked() + TocAccountSettingsWidgetClass + onChangePasswordButton() + + + 510 + 64 + + + 535 + 70 + + + + + serverLineEdit + textEdited(QString) + TocAccountSettingsWidgetClass + disconnectHints() + + + 352 + 307 + + + 535 + 133 + + + + + portLineEdit + textEdited(QString) + TocAccountSettingsWidgetClass + disconnectHints() + + + 498 + 327 + + + 535 + 173 + + + + + + loginEdited(QString) + protocolEdited(QString) + disconnectHints() + onOkButton() + onChangePasswordButton() + finished() + + diff --git a/src/TocUi/TocBaseMainWindow.cpp b/src/TocUi/TocBaseMainWindow.cpp new file mode 100644 index 0000000..c6e486d --- /dev/null +++ b/src/TocUi/TocBaseMainWindow.cpp @@ -0,0 +1,71 @@ +/** \file TocBaseMainWindow.cpp + * \brief Implementation of TocBaseMainWindow class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocBaseMainWindow" +#include "TocBaseEngine" +#include "macros.h" + +TocBaseMainWindow::TocBaseMainWindow(TocBaseEngine* engine, QWidget *parent, Qt::WindowFlags flags) + : QMainWindow(parent, flags) +{ + if(!engine) + return; + + qRegisterMetaType(); + qRegisterMetaType(); + qRegisterMetaType(); + qRegisterMetaType(); + qRegisterMetaType(); + qRegisterMetaType(); + + //Connections from Engine + CONNECT(engine, SIGNAL(statusChanged(Status,Reason)), this, SLOT(onStatusChange(Status,Reason))); + CONNECT(engine, SIGNAL(presenceUpdated(Presence,QString)), this, SLOT(onPresenceUpdate(Presence,QString))); + CONNECT(engine, SIGNAL(contactPresenceUpdated(QString,Presence,QString)), this, SLOT(onContactPresenceUpdate(QString,Presence,QString))); + CONNECT(engine, SIGNAL(incomingMessage(QString,Message)), this, SLOT(onIncomingMessage(QString,Message))); + CONNECT(engine, SIGNAL(contactListReceived(TocContactList)), this, SLOT(onContactListReceived(TocContactList))); + CONNECT(engine, SIGNAL(subscriptionAccepted(QString)), this, SLOT(onSubscriptionAccepted(QString))); + CONNECT(engine, SIGNAL(authorizationRequest(QString)), this, SLOT(onAuthorizationRequest(QString))); + + //Connections to engine + CONNECT(this, SIGNAL(presenceChanged(Presence,QString)), engine, SLOT(onPresenceChange(Presence,QString))); + CONNECT(this, SIGNAL(sessionClosed(QString)), engine, SLOT(onSessionClosed(QString))); + CONNECT(this, SIGNAL(newMessageReady(QString,Message)), engine, SLOT(onNewMessageReady(QString,Message))); + CONNECT(this, SIGNAL(addContact(TocContact*)), engine, SLOT(onAddContactRequest(TocContact*))); + CONNECT(this, SIGNAL(editContact(TocContact*,QString)), engine, SLOT(onEditContactRequest(TocContact*,QString))); + CONNECT(this, SIGNAL(removeContact(QString)), engine, SLOT(onRemoveContactRequest(QString))); + CONNECT(this, SIGNAL(subscriptionAccepted(QString,bool)), engine, SLOT(onSubscriptionAccepted(QString,bool))); +} + +TocBaseMainWindow::~TocBaseMainWindow() +{ + +} diff --git a/src/TocUi/TocChatWidget.cpp b/src/TocUi/TocChatWidget.cpp new file mode 100644 index 0000000..f6f13d5 --- /dev/null +++ b/src/TocUi/TocChatWidget.cpp @@ -0,0 +1,362 @@ +/** \file TocChatWidget.cpp + * \brief Implementation of TocChatWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include + +#include "ui_TocChatWidget.h" +#include "TocEmoticonsDialog" +#include "TocChatWidget" +#include "uidefs.h" +#include "macros.h" + +TocChatWidget::TocChatWidget( const QString& uid, const QString& name, Presence presence, QWidget * parent, const Message& message ) + : QWidget(parent) +{ + ui = new Ui_TocChatWidgetClass(); + ui->setupUi( this ); + setContentsMargins( -10, -10, -10, -10 ); + + CONNECT(ui->smileButton,SIGNAL(clicked()),this,SLOT(showEmoticonsDialog())); + + _uid = uid; + _name = name; + + switch(presence) + { + case Available: + ui->frame->setStyleSheet(STYLESHEET_ONLINE); + break; + case XA: + case Away: + ui->frame->setStyleSheet(STYLESHEET_AWAY); + break; + case Busy: + ui->frame->setStyleSheet(STYLESHEET_BUSY); + break; + case Hidden: + case Offline: + ui->frame->setStyleSheet(STYLESHEET_OFFLINE); + break; + default: + ui->frame->setStyleSheet(STYLESHEET_OFFLINE); + } + + appendMessage(message); + + //Event filter for sending on Enter support + ui->messageTextEdit->installEventFilter(this); + ui->messageTextEdit->setFocus(); +} + +TocChatWidget::~TocChatWidget() { + delete ui; +} + +void TocChatWidget::onContactPresenceUpdate(Presence presence, const QString& description) { + QFont font = ui->chatTextEdit->currentFont(); + QFont smallFont; + smallFont.setPointSize(static_cast( font.pointSize() * 0.85) ); + smallFont.setItalic(true); + ui->chatTextEdit->setCurrentFont(smallFont); + ui->chatTextEdit->setTextColor( Qt::darkGreen ); + + QString status; + switch(presence) + { + case Available: + status = tr("Online"); + ui->frame->setStyleSheet(STYLESHEET_ONLINE); + break; + case XA: + case Away: + status = tr("Away"); + ui->frame->setStyleSheet(STYLESHEET_AWAY); + break; + case Busy: + status = tr("Do not Disturb"); + ui->frame->setStyleSheet(STYLESHEET_BUSY); + break; + case Hidden: + case Offline: + status = tr("Offline"); + ui->frame->setStyleSheet(STYLESHEET_OFFLINE); + break; + default: + status = tr("Unknown"); + ui->frame->setStyleSheet(STYLESHEET_OFFLINE); + } + + if(description.size()) + ui->chatTextEdit->append(tr("%1 changed status to %2 (%3)").arg(_name).arg(status).arg(description)); + else + ui->chatTextEdit->append(tr("%1 changed status to %2").arg(_name).arg(status)); + + ui->chatTextEdit->moveCursor(QTextCursor::End); + ui->chatTextEdit->setCurrentFont(font); +} + +void TocChatWidget::updateContactPresence(Presence presence) { + switch(presence) + { + case Available: + ui->frame->setStyleSheet(STYLESHEET_ONLINE); + break; + case XA: + case Away: + ui->frame->setStyleSheet(STYLESHEET_AWAY); + break; + case Busy: + ui->frame->setStyleSheet(STYLESHEET_BUSY); + break; + case Hidden: + case Offline: + ui->frame->setStyleSheet(STYLESHEET_OFFLINE); + break; + default: + ui->frame->setStyleSheet(STYLESHEET_OFFLINE); + } +} + +void TocChatWidget::appendMessage(const Message& message) { + if(message.contents.isEmpty()) + return; + + QDateTime messageTime( QDateTime::fromTime_t( message.timestamp ) ); + QDateTime currentTime( QDateTime::currentDateTime() ); + + QString format; + if( messageTime.date() < currentTime.date() ) + format = "ddd: yyyy-MM-dd hh:mm:ss"; + else + format = "hh:mm:ss"; + + if(message.error == NoError) { + + ui->chatTextEdit->setTextColor(Qt::blue); + ui->chatTextEdit->setFontItalic(true); + ui->chatTextEdit->append( _name + " " + currentTime.toString("hh:mm:ss") + + " (" + messageTime.toString(format) + "): "); + ui->chatTextEdit->setFontItalic(false); + insertEmoticons(message.contents); + + } else { + + // If error occured + ui->chatTextEdit->setTextColor(Qt::red); + ui->chatTextEdit->setFontItalic(true); + ui->chatTextEdit->append( tr("Message \"%1\" sent on %2 was not delivered %3" + ).arg(message.contents).arg(messageTime.toString(format)).arg(errorString(message.error))); + } + + ui->chatTextEdit->moveCursor(QTextCursor::End); +} + +QString TocChatWidget::errorString(MessageDeliveryError error) { + + switch(error) { + case Unknown: + return tr("because of unknown error."); + + case ContactOffline: + return tr("because contact was offline."); + + case InvalidContact: + return tr("because contact is invalid."); + + case PermissionDenied: + return tr("because permission was denied."); + + case MessageTooLong: + return tr("because message was too long."); + + case UserOffline: + return tr("because You are offline, connect to be able to send messages."); + + case NotOnContactList: + return tr("because the contact is not on Your contact list."); + + case CannotCreateChannel: + return tr("because the channel with the contact could not be created."); + + case NoError: + return tr("because there was no error :)."); + + default: + return tr("because of unknown error."); + } +} + +void TocChatWidget::pressedSendButton() { + + if(ui->messageTextEdit->toPlainText().size()) { + QDateTime time(QDateTime::currentDateTime()); + + ui->chatTextEdit->setTextColor(Qt::black); + ui->chatTextEdit->setFontItalic(true); + ui->chatTextEdit->append( tr("me") + " (" + time.toString("hh:mm:ss") + "): " ); + ui->chatTextEdit->setFontItalic(false); + + insertEmoticons(ui->messageTextEdit->toPlainText()); + + Message message; + message.contents = ui->messageTextEdit->toPlainText(); + message.timestamp = time.toTime_t(); + emit newMessageReady(_uid, message); + ui->messageTextEdit->clear(); + + ui->chatTextEdit->moveCursor(QTextCursor::End); + } +} + +bool TocChatWidget::eventFilter(QObject *object, QEvent *event) { + + if (object == ui->messageTextEdit) { + + if (event->type() == QEvent::KeyPress) { + + QKeyEvent *k = static_cast(event); + if (k->key() == Qt::Key_Enter || k->key() == Qt::Key_Return) { + + if ((!(k->modifiers() == (Qt::KeypadModifier | Qt::ShiftModifier))) && + (!(k->modifiers() == Qt::ShiftModifier))) { + + pressedSendButton(); + return true; + } + } + } + } + return false; +} + +void TocChatWidget::insertEmoticons(const QString& message) { + + int pos = 0, last = 0, delta = 1; + QString emot; + + while (pos+1 < message.length()) { + + // checking for ":)" or ":-)" type smilies... + if(message.at(pos) == ':') { + + if(message.at(pos+1) == '-' && pos+2 < message.length()) { // checking for :-) type... + delta = 2; + } + if(message.at(pos+delta) == ')') { + delta++; emot = emotSmile_24x24; + } + else if(message.at(pos+delta) == '(') { + delta++; emot = emotSad_24x24; + } + else if(message.at(pos+delta) == '|') { + delta++; emot = emotPlain_24x24; + } + else if(message.at(pos+delta) == 'D') { + delta++; emot = emotGrin_24x24; + } + else if(message.at(pos+delta) == 'O') { + delta++; emot = emotSurprise_24x24; + } + else if(message.at(pos+delta) == '*') { + delta++; emot = emotKiss_24x24; + } + else + delta = 1; + } + + // checking for ";)" or ";-)" type smilies... + else if(message.at(pos) == ';') { + + if(message.at(pos+1) == '-' && pos+2 < message.length()) { // checking for ;-) type... + delta = 2; + } + if(message.at(pos+delta) == ')') { + delta++; emot = emotWink_24x24; + } + else + delta = 1; + } + + // checking for "" type smilies... + else if(message.at(pos) == '<') { + + if(message.right(message.length()-pos).startsWith("")) { + delta = 7; emot = emotAngel_24x24; + } + else if(message.right(message.length()-pos).startsWith("")) { + delta = 7; emot = emotDevil_24x24; + } + else if(message.right(message.length()-pos).startsWith("")) { + delta = 8; emot = emotMonkey_24x24; + } + else if(message.right(message.length()-pos).startsWith("")) { + delta = 8; emot = emotCrying_24x24; + } + else if(message.right(message.length()-pos).startsWith("")) { + delta = 9; emot = emotGlasses_24x24; + } + else if(message.right(message.length()-pos).startsWith("")) { + delta = 10; emot = emotSmileBig_24x24; + } + else + delta = 1; + } + + //OK, emoticon found ... inserting into chatView + if(delta>1) { + ui->chatTextEdit->insertPlainText(message.mid(last, pos-last)); + ui->chatTextEdit->insertHtml(""); + pos += delta; last = pos; delta = 1; + } + else { + pos += delta; + } + } + ui->chatTextEdit->insertPlainText(message.mid(last)); +} + +void TocChatWidget::showEmoticonsDialog() { + + TocEmoticonsDialog* emoticonsDialog = TocEmoticonsDialog::getInstance(this); + + if ((*emoticonsDialog).exec() == QDialog::Accepted) { + + QString alias = emoticonsDialog->getSelectedEmoticonAlias(); + ui->messageTextEdit->insertPlainText(alias); + } + ui->messageTextEdit->setFocus(); +} + +void TocChatWidget::showEvent( QShowEvent* event ) { + ui->messageTextEdit->setFocus(); + event->accept(); +} diff --git a/src/TocUi/TocChatWidget.ui b/src/TocUi/TocChatWidget.ui new file mode 100644 index 0000000..e1ff2c6 --- /dev/null +++ b/src/TocUi/TocChatWidget.ui @@ -0,0 +1,257 @@ + + + + TocChatWidgetClass + + + + 0 + 0 + 718 + 431 + + + + Form + + + + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + 0 + + + + + + + + QFrame::StyledPanel + + + QFrame::Plain + + + + 3 + + + -1 + + + + + + 0 + 0 + + + + QTextEdit { + background-color: none; +} + + + QFrame::Box + + + QFrame::Sunken + + + 1 + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + + + 4 + + + 0 + + + 0 + + + + + + 14 + 75 + true + + + + QPushButton{ + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Smile + + + + + + + + 0 + 0 + + + + + 16777215 + 80 + + + + QTextEdit { + background-color: none; +} + + + QFrame::Box + + + Qt::ScrollBarAsNeeded + + + Qt::ScrollBarAlwaysOff + + + + + + + + 0 + 0 + + + + + 80 + 80 + + + + + 14 + 75 + true + + + + QPushButton{ + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + + Send + + + + + + + + + + + + + + sendButton + clicked() + TocChatWidgetClass + pressedSendButton() + + + 672 + 318 + + + 715 + 285 + + + + + sendButton + clicked() + messageTextEdit + setFocus() + + + 620 + 328 + + + 516 + 337 + + + + + + pressedSendButton() + + diff --git a/src/TocUi/TocContactListWidget.cpp b/src/TocUi/TocContactListWidget.cpp new file mode 100644 index 0000000..db1a117 --- /dev/null +++ b/src/TocUi/TocContactListWidget.cpp @@ -0,0 +1,417 @@ +/** \file TocContactListWidget.cpp + * \brief Implementation of TocContactListWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include +#include +#include +#include + +#include "TocContactListWidget" +#include "IconProvider" +#include "uidefs.h" +#include "macros.h" + +Q_DECLARE_METATYPE(TocContact*); + +TocContactListWidget::TocContactListWidget(QWidget * parent) + : QListWidget(parent), + _editAction(tr("Edit"), 0), + _removeAction(tr("Remove"), 0) +{ + setStyle(new QCommonStyle()); + setFlow( QListView::LeftToRight ); + setViewMode( QListView::IconMode ); + setGridSize( QSize(109, 113) ); + setIconSize(QSize(68,68)); + setDragEnabled( false ); + setVerticalScrollMode( QAbstractItemView::ScrollPerItem ); + setWrapping( true ); + setWordWrap( true ); + setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff ); + setResizeMode( QListView::Adjust ); + QFont currentFont(font()); + currentFont.setPixelSize(14); + setFont(currentFont); + + // 'Add contact' item + (new QListWidgetItem(QIcon(":/addcontact.png"), tr("Add Contact"), this))->setFlags( Qt::ItemIsEnabled ); + + TocSettings *pSettings = TocSettings::getInstance(); + + QList *pContactsList = pSettings->contactList(); + + IconProvider *pIconProvider = IconProvider::getInstance(); + + foreach(TocContact* pContact, *pContactsList) + { + if(!pContact->customIconPath.isEmpty()) + pIconProvider->setCustomIcon(pContact); + + QString displayedText; + if(pContact->name.isEmpty()) + displayedText = pContact->uid; + else + displayedText = pContact->name; + + QListWidgetItem* pItem = new QListWidgetItem(displayedText, this); + + pItem->setData( Qt::DecorationRole, *(pIconProvider->matchIcon(pContact)) ); + pItem->setData( ContactRole, QVariant::fromValue(pContact)); + + pItem->setFlags( Qt::ItemIsEnabled ); + + addItem(pItem); + } + + // Load logo image + _logo = new QImage(":/tieto-logo.png"); + + sortItems(Alphabetical); // Sort items alphabetically + + //CONNECT SIGNALS + CONNECT(&_editAction, SIGNAL(triggered(bool)), this, SLOT(onEditRequested())); + CONNECT(&_removeAction, SIGNAL(triggered(bool)), this, SLOT(onRemoveRequested())); + CONNECT(this, SIGNAL(logoColorChanged(QColor)), this, SLOT(changeLogoColor(QColor))); +} + +TocContactListWidget::~TocContactListWidget() { + delete _logo; +} + +void TocContactListWidget::onNewContactList(const TocContactList& contactList) { + + QListWidgetItem* pAddContactItem = takeItem( 0 ); + clear(); + + IconProvider *pIconProvider = IconProvider::getInstance(); + + foreach(TocContact* pContact, contactList) + { + QString displayedText; + if(pContact->name.isEmpty()) + displayedText = pContact->uid; + else + displayedText = pContact->name; + + QListWidgetItem* pNewItem = new QListWidgetItem(displayedText, this); + + pNewItem->setData(DecorationRole, *(pIconProvider->matchIcon(pContact))); + pNewItem->setData(ContactRole, QVariant::fromValue(pContact)); + + //make it not selectable + pNewItem->setFlags( Qt::ItemIsEnabled ); + } + + insertItem(0, pAddContactItem); + + sortItems(Alphabetical); +} + +void TocContactListWidget::onContactPresenceUpdate(const QString& uid, Presence presence, const QString& description) { + + IconProvider *pIconProvider = IconProvider::getInstance(); + + QListWidgetItem* pItem = findItem(uid); + + if( !pItem ) + return; + + TocContact *pContact = pItem->data(ContactRole).value(); + + pContact->presence = presence; + pContact->description = description; + + pItem->setData(Qt::DecorationRole, *(pIconProvider->matchIcon(pContact))); +} + +QString TocContactListWidget::getDisplayedName(const QString& uid) { + + QListWidgetItem* pItem = findItem(uid); + + if(pItem) + return pItem->data(DisplayRole).toString(); + + return QString(); +} + +void TocContactListWidget::clearStatuses() { + + IconProvider *pIconProvider = IconProvider::getInstance(); + + for(int i = 1; i < count(); ++i) { + + QListWidgetItem* pItem = this->item(i); + + TocContact *pContact = pItem->data(ContactRole).value(); + pContact->presence = Offline; +// pContact->description = ""; // TODO: Clear description also? Some clients remember last descr + + pItem->setData(Qt::DecorationRole, *(pIconProvider->matchIcon(pContact))); + } +} + +Q_DECLARE_METATYPE(QListWidgetItem*); + + +void TocContactListWidget::mouseDoubleClickEvent(QMouseEvent *event) +{ + QPoint itemPos = event->pos(); + + QListWidgetItem* pClickedItem = itemAt(itemPos); + if(!pClickedItem) + return; + + QListWidgetItem* pAddContactItem = item(0); + + if(pAddContactItem == pClickedItem) + emit contactInfoRequest(0); + else + { + TocContact *pContact = pClickedItem->data(ContactRole).value(); + QString uid = pContact->uid; + QString name = pClickedItem->text(); // Using Text instead of pContact->name because the latter can be empty + + emit triggered(uid, name, pContact->presence); + } +} + +void TocContactListWidget::contextMenuEvent(QContextMenuEvent *event) +{ + QPoint itemPos = event->pos(); + + QListWidgetItem* pClickedItem = itemAt(itemPos); + + //if it applies to Add Contact then skip it + QListWidgetItem* pAddContactItem = item(0); + if(pClickedItem == pAddContactItem || pClickedItem == 0) return; + + //create menu + QMenu contextMenu(this); + + contextMenu.setStyleSheet( + "QMenu {" + "margin-left: 0px;" + "margin-top: 0px;" + "margin-right: 0px;" + "margin-bottom: 0px;" + "font: bold 16px;" + "}" + "QMenu::item {" + "margin-left: 0px;" + "margin-top: 0px;" + "margin-right: 0px;" + "margin-bottom: 0px;" + "padding: 0px 10px 0px 30px;" + "min-height: 60px;" + "min-width: 80px;" + "max-height: 60px;" + "border-radius: 5px;" + "}"); + + _editAction.setData(QVariant::fromValue(pClickedItem)); + _removeAction.setData(QVariant::fromValue(pClickedItem)); + + contextMenu.addAction(&_editAction); + contextMenu.addAction(&_removeAction); + + contextMenu.exec(mapToGlobal(itemPos)); +} + + +void TocContactListWidget::onEditRequested() { + + //extract data from sender + QObject* pObject = QObject::sender(); + _pCurrentEditedItem = (static_cast(pObject))->data().value(); + + _currentEditedContact = *(_pCurrentEditedItem->data(ContactRole).value()); + + if(_pCurrentEditedItem) + emit contactInfoRequest(_pCurrentEditedItem); +} + +void TocContactListWidget::onRemoveRequested() { + + //extract data from sender + QObject* pObject = QObject::sender(); + QListWidgetItem* pItem = (static_cast(pObject))->data().value(); + + if(!pItem) return; + + TocContact* pContact = pItem->data(ContactRole).value(); + QMessageBox::StandardButton clickedButton = QMessageBox::question(this, "TEC", tr("Are you sure you want to remove\ncontact: %1").arg(pContact->name), QMessageBox::Yes | QMessageBox::No); + if(clickedButton == QMessageBox::No) return; + + //Remove from list + if(takeItem(row(pItem))) + { + //Removing went successfuly + //Lets notify the engine + QString uid = pItem->data(ContactRole).value()->uid; + + emit removedContact(uid); + } + +} + +void TocContactListWidget::commitAdd(QListWidgetItem* pNewItem) { + + TocContact *pNewContact = pNewItem->data(ContactRole).value(); + QString uid = pNewContact->uid; + + //ensure that item is not already present + if(findItem(uid)) + return; + + //add to list + addItem(pNewItem); + + // sortItems now + sortItems(Alphabetical); + + //notify engine + emit addContact(pNewContact); +} + +void TocContactListWidget::commitEdit(QListWidgetItem* pEditedItem) { + + TocContact* pEditedContact = pEditedItem->data(ContactRole).value(); + + QString newUid = pEditedContact->uid; + QString newName = pEditedContact->name; + + QString oldUid = _currentEditedContact.uid; + QString oldName = _currentEditedContact.name; + + if( newUid != oldUid )//If Uid has changed ensure that item with such uid is not already present + if( findItem(newUid, pEditedItem) ) { + pEditedContact->uid = oldUid; + return; + } + + if( newName != oldName ) + if(newName.isEmpty()) + emit displayedNameChanged( newUid, newUid ); + else + emit displayedNameChanged( newUid, newName ); + + // sort items now + sortItems(Alphabetical); + + IconProvider *pIconProvider = IconProvider::getInstance(); + pEditedItem->setData(Qt::DecorationRole, *(pIconProvider->matchIcon(pEditedContact))); + + emit editContact(pEditedContact, oldUid); +} + +QListWidgetItem* TocContactListWidget::findItem(const QString& requestedUid, const QListWidgetItem* pExcludedItem) { + + QString uid; + + for(int i=1; i < count(); i++) + { + QListWidgetItem* pRequestedItem = item(i); + if( pExcludedItem == pRequestedItem ) + continue; + + uid = pRequestedItem->data(ContactRole).value()->uid; + + if(uid == requestedUid) + return pRequestedItem; + } + + return 0; +} + +void TocContactListWidget::sortItems(SortOrder order) { + + QListWidgetItem* pAddContactItem = 0; + + switch(order) { + + case Alphabetical: + pAddContactItem = takeItem( 0 ); + QListWidget::sortItems(Qt::AscendingOrder); + insertItem(0, pAddContactItem); + break; + + case ByStatus: + // TODO: sort by status + break; + + case None: + // TODO: disable sorting and enable drag & drop events + break; + } +} + +void TocContactListWidget::paintEvent(QPaintEvent * event) { + Q_UNUSED(event); + + QPainter painter(this->viewport()); + painter.drawImage(this->width() - _logo->width(), this->height() - _logo->height(), *_logo); + + QListWidget::paintEvent(event); +} + +QColor TocContactListWidget::logoColor() const { + return _logoColor; +} + +void TocContactListWidget::setLogoColor(QColor color) { + _logoColor = color; + emit logoColorChanged( _logoColor ); +} + +void TocContactListWidget::changeLogoColor(QColor color) { + QColor lColor; + QString colorName = color.name(); + + if( colorName == "#0000ff" ) + lColor = LOGO_BLUE; + else if( colorName == "#add8e6" ) + lColor = LOGO_LIGHT_BLUE; + else if( colorName == "#008000" ) + lColor = LOGO_GREEN; + else if( colorName == "#ffa500" ) + lColor = LOGO_ORANGE; + else if( colorName == "#ff0000" ) + lColor = LOGO_RED; + else + lColor = LOGO_RED; + + for(int i = 0; i < _logo->width(); ++i) + for(int j = 0; j < _logo->height(); ++j) + if(_logo->pixel(i, j) >> 24) + _logo->setPixel(i,j, lColor.rgb()); +} diff --git a/src/TocUi/TocEmoticonsDialog.cpp b/src/TocUi/TocEmoticonsDialog.cpp new file mode 100644 index 0000000..0e30a62 --- /dev/null +++ b/src/TocUi/TocEmoticonsDialog.cpp @@ -0,0 +1,114 @@ +/** \file TocEmoticonsDialog.cpp + * \brief Implementation of TocEmoticonsDialog class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "ui_TocEmoticonsDialog.h" +#include "TocEmoticonsDialog" +#include "macros.h" +#include "uidefs.h" + +// Initialize static objects +TocEmoticonsDialog* TocEmoticonsDialog::_pSelf = 0; + +TocEmoticonsDialog* TocEmoticonsDialog::getInstance(QWidget* parent) { + + if (!_pSelf) + _pSelf = new TocEmoticonsDialog(parent); + + return _pSelf; +} + +TocEmoticonsDialog::TocEmoticonsDialog(QWidget *parent) + : QDialog(parent) +{ + ui = new Ui_TocEmoticonsDialogClass(); + ui->setupUi(this); + setContentsMargins(-10, -10, -10, -10); + + CONNECT(ui->backButton,SIGNAL(clicked()),this,SLOT(reject())); + CONNECT(ui->emoticonsListWidget,SIGNAL(itemClicked(QListWidgetItem*)),this,SLOT(onEmoticonSelected(QListWidgetItem*))); + + ui->emoticonsListWidget->setFlow(QListView::LeftToRight); + ui->emoticonsListWidget->setViewMode(QListView::IconMode); + ui->emoticonsListWidget->setGridSize(QSize(80, 80)); + ui->emoticonsListWidget->setIconSize(QSize(32, 32)); + ui->emoticonsListWidget->setDragEnabled(false); + ui->emoticonsListWidget->setVerticalScrollMode(QAbstractItemView::ScrollPerItem); + ui->emoticonsListWidget->setWrapping(true); + ui->emoticonsListWidget->setWordWrap(true); + ui->emoticonsListWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + ui->emoticonsListWidget->setResizeMode(QListView::Adjust); + + QFont currentFont(ui->emoticonsListWidget->font()); + currentFont.setPixelSize(14); + ui->emoticonsListWidget->setFont(currentFont); + + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotSmile_32x32), + tr(":)"), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotSad_32x32), + tr(":("), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotPlain_32x32), + tr(":|"), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotSurprise_32x32), + tr(":O"), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotGrin_32x32), + tr(":D"), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotWink_32x32), + tr(";)"), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotKiss_32x32), + tr(":*"), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotAngel_32x32), + tr(""), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotDevil_32x32), + tr(""), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotMonkey_32x32), + tr(""), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotCrying_32x32), + tr(""), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotGlasses_32x32), + tr(""), ui->emoticonsListWidget)); + ui->emoticonsListWidget->addItem(new QListWidgetItem(QIcon(emotSmileBig_32x32), + tr(""), ui->emoticonsListWidget)); +} + +TocEmoticonsDialog::~TocEmoticonsDialog() +{ + delete ui; +} + +void TocEmoticonsDialog::onEmoticonSelected(QListWidgetItem* pItem) { + + _selectedEmoticonAlias = pItem->text(); + accept(); +} + +QString TocEmoticonsDialog::getSelectedEmoticonAlias() { + return _selectedEmoticonAlias; +} diff --git a/src/TocUi/TocEmoticonsDialog.ui b/src/TocUi/TocEmoticonsDialog.ui new file mode 100644 index 0000000..6f080aa --- /dev/null +++ b/src/TocUi/TocEmoticonsDialog.ui @@ -0,0 +1,125 @@ + + + + TocEmoticonsDialogClass + + + + 0 + 0 + 418 + 310 + + + + Emoticons + + + + 0 + + + 9 + + + 9 + + + 0 + + + 0 + + + + + false + + + 10 + + + QListView::ListMode + + + -1 + + + + + + + Qt::Horizontal + + + + 142 + 77 + + + + + + + + QPushButton{ + font: bold 16px; + border-radius: 5px; + min-height: 40px; + min-width: 80px; + max-height: 40px; + max-width: 80px; +} + + + Back + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + diff --git a/src/TocUi/TocGeneralSettingsWidget.cpp b/src/TocUi/TocGeneralSettingsWidget.cpp new file mode 100644 index 0000000..8b5771b --- /dev/null +++ b/src/TocUi/TocGeneralSettingsWidget.cpp @@ -0,0 +1,119 @@ +/** \file TocGeneralSettingsWidget.cpp + * \brief Implementation of TocGeneralSettingsWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocGeneralSettingsWidget" +#include "ui_TocGeneralSettingsWidget.h" + +#include "TocSettings" +#include "macros.h" + +#include +#include + +TocGeneralSettingsWidget::TocGeneralSettingsWidget(QWidget * parent, Qt::WindowFlags flags) + : QWidget(parent, flags) { + + + setStyle(new QCommonStyle()); + ui = new Ui_TocGeneralSettingsWidgetClass(); + ui->setupUi( this ); + setContentsMargins( -10, -10, -10, -10 ); + + TocSettings* pSettings = TocSettings::getInstance(); + + /*ui->alphaRadioButton->setAttribute(Qt::WA_TranslucentBackground, true); + ui->presenceRadioButton->setAttribute(Qt::WA_TranslucentBackground, false); + ui->dragDropRadioButton->setAttribute(Qt::WA_TranslucentBackground, false); + ui->acceptRadioButton->setAttribute(Qt::WA_TranslucentBackground, false); + ui->askRadioButton->setAttribute(Qt::WA_TranslucentBackground, false); + ui->denyRadioButton->setAttribute(Qt::WA_TranslucentBackground, false);*/ + + switch( pSettings->sortOrder() ) { + case Alphabetical: + ui->alphaRadioButton->setChecked( true ); + break; + //TODO: To be implemented. + /*case ByStatus: + ui->presenceRadioButton->setChecked( true ); + break; + case None: + ui->dragDropRadioButton->setChecked( true ); + break;*/ + default: + ui->alphaRadioButton->setChecked( true ); + } + + switch( pSettings->authorizationRule() ) { + case AlwaysAccept: + ui->acceptRadioButton->setChecked( true ); + break; + //TODO: To be implemented. + /*case Ask: + ui->askRadioButton->setChecked( true ); + break; + case AlwaysDeny: + ui->denyRadioButton->setChecked( true ); + break;*/ + default: + //TODO: Change to the commented one when implementation will be done. + //ui->askRadioButton->setChecked( true ); + ui->acceptRadioButton->setChecked( true ); + } + + CONNECT(ui->okButton, SIGNAL(clicked()), this, SLOT(saveGeneralSettings())); + CONNECT(ui->backButton, SIGNAL(clicked()), this, SIGNAL(backClicked())); + +} + +TocGeneralSettingsWidget::~TocGeneralSettingsWidget() { + delete ui; +} + +void TocGeneralSettingsWidget::saveGeneralSettings() { + + TocSettings* pSettings = TocSettings::getInstance(); + + if( ui->alphaRadioButton->isChecked() ) + pSettings->setSortOrder( Alphabetical ); + else if( ui->presenceRadioButton->isChecked() ) + pSettings->setSortOrder( ByStatus ); + else if( ui->dragDropRadioButton->isChecked() ) + pSettings->setSortOrder( None ); + + if( ui->askRadioButton->isChecked() ) + pSettings->setAuthorizationRule( Ask ); + else if( ui->acceptRadioButton->isChecked() ) + pSettings->setAuthorizationRule( AlwaysAccept ); + else if( ui->denyRadioButton->isChecked() ) + pSettings->setAuthorizationRule( AlwaysDeny ); + + emit finished(); +} diff --git a/src/TocUi/TocGeneralSettingsWidget.ui b/src/TocUi/TocGeneralSettingsWidget.ui new file mode 100644 index 0000000..cb1da34 --- /dev/null +++ b/src/TocUi/TocGeneralSettingsWidget.ui @@ -0,0 +1,454 @@ + + + + TocGeneralSettingsWidgetClass + + + + 0 + 0 + 773 + 441 + + + + + 705 + 568 + + + + Form + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + QPushButton { + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Back + + + + + + + + + false + + + + 0 + 0 + + + + QGroupBox { + font: bold 12px; +} + + + Contact list sorting + + + + + + Qt::Vertical + + + + 20 + 75 + + + + + + + + Qt::Vertical + + + + 20 + 85 + + + + + + + + Qt::Vertical + + + + 20 + 75 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + 0 + 0 + + + + + 0 + 25 + + + + QRadioButton { + font: bold 16px; + background-color: none; + min-height: 25px; +} + + + Sort alphabeticaly + + + true + + + + + + + + 0 + 25 + + + + QRadioButton { + font: bold 16px; + background-color: none; + min-height: 25px; +} + + + Disable sorting + + + + + + + false + + + QRadioButton { + font: bold 16px; + background-color: none; + min-height: 25px; +} + + + Sort by status + + + + + + + + -1 + 50 + false + false + + + + QLabel { + background: none; + font: 14px; +} + + + Sorts contact list items alphabetically + + + + + + + + -1 + 50 + false + false + + + + QLabel { + background: none; + font: 14px; +} + + + Sorts contact list items by status + + + + + + + QLabel { + background: none; + font: 14px; +} + + + Disables sorting and enables drag +and dropping + + + + + + + + + + false + + + + 0 + 0 + + + + QGroupBox { + font: bold 12px; +} + + + Contact authorization rule + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + + + + QRadioButton { + font: bold 16px; + + min-height: 48px; +} + + + Ask + + + true + + + + + + + QRadioButton { + font: bold 16px; + min-height: 48px; +} + + + Always deny + + + + + + + QRadioButton { + font: bold 16px; + min-height: 48px; +} + + + Always accept + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + QPushButton { + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Ok + + + + + + + + + + + + + diff --git a/src/TocUi/TocMainToolbar.cpp b/src/TocUi/TocMainToolbar.cpp new file mode 100644 index 0000000..e8c87ca --- /dev/null +++ b/src/TocUi/TocMainToolbar.cpp @@ -0,0 +1,980 @@ +/** \file TocMainToolbar.cpp + * \brief Implementation of TocMainToolbar class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocMainToolbar" +#include "macros.h" +#include +#include +#include +#include +#include +#include +#include + + +TocMainToolbar::TocMainToolbar(QWidget * parent, Qt::WindowFlags flags) + : QWidget(parent, flags) { + + setObjectName("mainToolbar"); + QHBoxLayout* horizontalLayout = new QHBoxLayout( this ); + horizontalLayout->setSpacing( 0 ); + setContentsMargins( -10, -10, -10, -10 ); + + statusButton = new QPushButton( QIcon(":/offline.png"), "", this ); + statusButton->setObjectName("statusButton"); + statusButton->setIconSize( QSize( 72, 72 ) ); + horizontalLayout->addWidget( statusButton ); + statusMenu = new QMenu( this ); + statusMenu->setObjectName("statusMenu"); + onlineAction = statusMenu->addAction( QIcon(":/online.png"), tr("Online") ); + onlineAction->setData( QVariant::fromValue( Available ) ); + awayAction = statusMenu->addAction( QIcon(":/away.png"), tr("Away") ); + awayAction->setData( QVariant::fromValue( Away ) ); + busyAction = statusMenu->addAction( QIcon(":/busy.png"), tr("Do not Disturb") ); + busyAction->setData( QVariant::fromValue( Busy ) ); + hiddenAction = statusMenu->addAction( QIcon(":/hidden.png"), tr("Hidden") ); + hiddenAction->setData( QVariant::fromValue( Hidden ) ); + offlineAction = statusMenu->addAction( QIcon(":/offline.png"), tr("Offline") ); + offlineAction->setData( QVariant::fromValue( Offline ) ); + statusButton->setMenu( statusMenu ); + CONNECT( statusMenu, SIGNAL(triggered(QAction*)), this, SLOT(onTriggeredPresence(QAction*)) ); + + statusAreaLabel = new QLabel( this ); + statusAreaLabel->setObjectName("statusAreaLabel"); + statusAreaLabel->setWordWrap( true ); + statusAreaLabel->setProperty("checked", false); + statusAreaLabel->setAlignment(Qt::AlignRight | Qt::AlignVCenter); + horizontalLayout->addWidget( statusAreaLabel ); + + statusAreaButton = new QPushButton( this ); + statusAreaButton->setObjectName("statusAreaButton"); + statusAreaButton->setEnabled( false ); + statusAreaButton->setCheckable( true ); + horizontalLayout->addWidget( statusAreaButton ); + + activeSessionsButton = new QPushButton( QIcon(":/activesessions.png"), "", this ); + activeSessionsButton->setObjectName("activeSessionsButton"); + activeSessionsButton->setIconSize( QSize( 72, 72 ) ); + activeSessionsButton->setEnabled(false); + horizontalLayout->addWidget( activeSessionsButton ); + + + _pActiveSessions = new ActiveSessions(this); + + activeSessionsButton->setMenu( _pActiveSessions->menu() ); + activeSessionsButton->setObjectName("activeSessionsButton"); + + settingsButton = new QPushButton( QIcon(":/settings.png"), "", this ); + settingsButton->setObjectName("settingsButton"); + settingsButton->setIconSize( QSize( 72, 72 ) ); + settingsButton->setCheckable( true ); + horizontalLayout->addWidget( settingsButton ); + CONNECT( settingsButton, SIGNAL(clicked()), this, SLOT(onSettingsClicked()) ); + + contactsButton = new QPushButton( QIcon(":/contacts.png"), "", this ); + contactsButton->setObjectName("contactsButton"); + contactsButton->setIconSize( QSize( 72, 72 ) ); + contactsButton->setCheckable( true ); + + horizontalLayout->addWidget( contactsButton ); + CONNECT( contactsButton, SIGNAL(clicked()), this, SLOT(onContactsClicked()) ); + highlightButton(contactsButton); + + setupStyles(); +} + +TocMainToolbar::~TocMainToolbar() { +} + +void TocMainToolbar::highlightButton(const QPushButton* button) { + + contactsButton->setChecked(button == contactsButton); + settingsButton->setChecked(button == settingsButton); + statusAreaButton->setChecked(button == statusAreaButton); + statusAreaLabel->setEnabled(button == statusAreaButton); +} + +void TocMainToolbar::restoreCurrentSession() { + + if( QAction* action = _pActiveSessions->disabledAction() ) { + + highlightButton(statusAreaButton); + + emit activeSessionTriggered( action->data().toString(), action->text() ); + + statusAreaButton->setIcon( QIcon(":/close.png")); + + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + CONNECT( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + } +} + +void TocMainToolbar::closeCurrentSession() { + qDebug() << __PRETTY_FUNCTION__; + + QAction* pAction = _pActiveSessions->disabledAction(); + + if( pAction ) { + + QAction *pNewCurrentAction = _pActiveSessions->closeCurrentSession(); + + if( pNewCurrentAction ) { + + statusAreaButton->setChecked(true); + statusAreaLabel->setText( pNewCurrentAction->text() ); + + emit activeSessionTriggered( pNewCurrentAction->data().toString(), pNewCurrentAction->text() ); + + } else { + + activeSessionsButton->setEnabled(false); + statusAreaLabel->setText(""); + statusAreaButton->setIcon( QIcon() ); + statusAreaButton->setEnabled( false ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + highlightButton(contactsButton); + emit contactsClicked(); + } + + emit finishedSession( pAction->data().toString() ); + } + +} + +void TocMainToolbar::closeAllSessions() { + + activeSessionsButton->setEnabled(false); + + _pActiveSessions->clear(); + + statusAreaLabel->setText(""); + + statusAreaButton->setIcon( QIcon() ); + statusAreaButton->setEnabled( false ); + + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + + emit finishedAllSessions(); + + highlightButton(contactsButton); + + emit contactsClicked(); +} + +void TocMainToolbar::clearAllSessions() { + + activeSessionsButton->setEnabled(false); + _pActiveSessions->clear(); + + statusAreaLabel->setText(""); + statusAreaButton->setIcon( QIcon() ); + statusAreaButton->setEnabled( false ); + + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); +} + + +void TocMainToolbar::onTriggeredPresence(QAction* action) { + + emit presenceUpdate( action->data().value(), "opisik" ); +} + +void TocMainToolbar::onPresenceUpdate(Presence presence, const QString& description) { + + Q_UNUSED(description); + + if( presence == onlineAction->data().value() ) + statusButton->setIcon( onlineAction->icon() ); + + else if( presence == awayAction->data().value() ) + statusButton->setIcon( awayAction->icon() ); + + else if( presence == busyAction->data().value() ) + statusButton->setIcon( busyAction->icon() ); + + else if( presence == hiddenAction->data().value() ) + statusButton->setIcon( hiddenAction->icon() ); + + else if( presence == offlineAction->data().value() ) + statusButton->setIcon( offlineAction->icon() ); +} + +void TocMainToolbar::onContactPresenceUpdate(const QString& uid, Presence presence) { + + _pActiveSessions->onContactPresenceUpdate(uid, presence); + +} + +void TocMainToolbar::onNewMessage(const QString& uid, const QString& name, Presence presence) { + + qDebug()<<__PRETTY_FUNCTION__; + + if( QAction* pAction = _pActiveSessions->action( uid ) ) { + + if( pAction != _pActiveSessions->disabledAction() ) { + + activeSessionsButton->setChecked( true ); + //TODO: activeSessionsButton->startBlinking() + + } else { + + if( statusAreaButton->icon().cacheKey() == QIcon( ":/restore.png" ).cacheKey() )// + statusAreaButton->setChecked( true ); + } + + } else { + + activeSessionsButton->setEnabled(true); + //TODO: activeSessionsButton->startBlinking() + } + + _pActiveSessions->onNewMessage( uid, name, presence ); +} + +void TocMainToolbar::onNewSession(const QString& uid, const QString& name, Presence presence) { + + qDebug()<<__PRETTY_FUNCTION__; + + highlightButton(statusAreaButton); + + QAction* pDisabledAction = _pActiveSessions->disabledAction(); + + if( QAction* pAction = _pActiveSessions->action( uid ) ) { + if( pAction != pDisabledAction ) { + + statusAreaLabel->setText( pAction->text() ); + statusAreaButton->setIcon( QIcon(":/close.png")); + statusAreaButton->setEnabled( true ); + + disconnect( statusAreaButton, SIGNAL(clicked()), + this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), + this, SLOT(closeCurrentSession()) ); + CONNECT( statusAreaButton, SIGNAL(clicked()), + this, SLOT(closeCurrentSession()) ); + + } else { + + statusAreaButton->setIcon( QIcon(":/close.png")); + + disconnect( statusAreaButton, SIGNAL(clicked()), + this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), + this, SLOT(closeCurrentSession()) ); + CONNECT( statusAreaButton, SIGNAL(clicked()), + this, SLOT(closeCurrentSession()) ); + } + + } else { + + statusAreaLabel->setText( name ); + + statusAreaButton->setIcon( QIcon(":/close.png")); + statusAreaButton->setEnabled( true ); + activeSessionsButton->setEnabled(true); + + disconnect( statusAreaButton, SIGNAL(clicked()), + this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), + this, SLOT(closeCurrentSession()) ); + CONNECT( statusAreaButton, SIGNAL(clicked()), + this, SLOT(closeCurrentSession()) ); + } + + _pActiveSessions->onNewSession( uid, name, presence ); + +} + +void TocMainToolbar::onCurrentView(ViewType viewType, const QString& text) { + + if( QAction* pAction = _pActiveSessions->disabledAction() ) { // If there is an active window + + if( viewType == Contacts ) { + + statusAreaButton->setIcon( QIcon(":/restore.png") ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + CONNECT( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + highlightButton(contactsButton); + + } else { + pAction->setEnabled( true ); + statusAreaLabel->setText( text ); + statusAreaButton->setIcon( QIcon() ); + statusAreaButton->setEnabled( false ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + // Deselect highlight from all buttons but leave settingsButton as is (highlighted or not) + contactsButton->setChecked(false); + contactsButton->setChecked(false); + statusAreaButton->setChecked(false); + statusAreaLabel->setEnabled(false); + } + } else if( viewType == Contacts ) { + highlightButton(contactsButton); + statusAreaLabel->setText( text ); + } + else { // If there is no conversation at that time and the viewType != contacts + statusAreaLabel->setText( text ); + statusAreaButton->setIcon( QIcon() ); + statusAreaButton->setEnabled( false ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + // Deselect highlight from all buttons but leave settingsButton as is (highlighted or not) + contactsButton->setChecked(false); + contactsButton->setChecked(false); + statusAreaButton->setChecked(false); + statusAreaLabel->setEnabled(false); + } +} + +void TocMainToolbar::onDisplayedNameChange(const QString& uid, const QString& name) { + + if( QAction* pAction = _pActiveSessions->action( uid ) ) + pAction->setText( name ); +} + +void TocMainToolbar::onContactsClicked() { + + highlightButton(contactsButton); + + if( _pActiveSessions->disabledAction() ) { + + statusAreaButton->setIcon( QIcon(":/restore.png") ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + CONNECT( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + + } else { + + statusAreaLabel->setText(""); + statusAreaButton->setIcon( QIcon() ); + statusAreaButton->setEnabled( false ); + } + + emit contactsClicked(); +} + +void TocMainToolbar::onSettingsClicked() { + + highlightButton(settingsButton); + + if( QAction* pAction = _pActiveSessions->disabledAction() ) { + + pAction->setEnabled( true ); + + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + } + + statusAreaLabel->setText( tr("Settings") ); + statusAreaButton->setIcon( QIcon() ); + statusAreaButton->setEnabled( false ); + + emit settingsClicked(); +} + +void TocMainToolbar::onActiveSessionTriggered(QAction* pAction) +{ + if(pAction->text() == "") + return; + + if( QAction* pDisabledAction = _pActiveSessions->disabledAction() ) + pDisabledAction->setEnabled( true ); + + pAction->setChecked( false ); + pAction->setEnabled( false ); + + statusAreaLabel->setText( pAction->text() ); + statusAreaButton->setIcon( QIcon(":/close.png")); + statusAreaButton->setEnabled( true ); + + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(restoreCurrentSession()) ); + disconnect( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + CONNECT( statusAreaButton, SIGNAL(clicked()), this, SLOT(closeCurrentSession()) ); + + highlightButton(statusAreaButton); + + emit activeSessionTriggered( pAction->data().toString(), pAction->text() ); +} + + +void TocMainToolbar::setupStyles() { + + statusButton->setStyleSheet( + "QPushButton {\ + border: none;\ + min-height: 80px;\ + min-width: 100px;\ + max-height: 80px;\ + max-width: 100px;\ + }" + ); + + statusAreaLabel->setStyleSheet(" QLabel {\ + font: bold 20px; \ + border: none;\ + border-radius: 0px;\ + min-height: 80px;\ + min-width: 100px;\ + max-height: 80px;\ + }"); + + statusAreaButton->setStyleSheet(" QPushButton {\ + border: none;\ + border-radius: 0px;\ + min-height: 80px;\ + min-width: 80px;\ + max-height: 80px;\ + max-width: 80px;\ + }"); + + activeSessionsButton->setStyleSheet(" QPushButton {\ + border: none;\ + min-height: 80px;\ + min-width: 100px;\ + max-height: 80px;\ + max-width: 100px;" +"}" + " QPushButton:checked {\ + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0,\ + stop: 0 #999900, stop: 0.55 #aaaa00,\ + stop: 0.56 #bbbb00, stop: 1 #ffff00);}" + ); + + settingsButton->setStyleSheet(" QPushButton {\ + border: none;\ + min-height: 80px;\ + min-width: 100px;\ + max-height: 80px;\ + max-width: 100px;\ + }" + ); + + contactsButton->setStyleSheet(" QPushButton {\ + border: none;\ + min-height: 80px;\ + min-width: 100px;\ + max-height: 80px;\ + max-width: 100px;\ + }" + ); + + statusMenu->setStyleSheet("QMenu {\ + margin-left: 0px;\ + margin-top: 0px;\ + margin-right: 0px;\ + margin-bottom: 0px;\ + font: bold 16px; \ + }\ + QMenu::item {\ + margin-left: 0px;\ + margin-top: 0px;\ + margin-right: 0px;\ + margin-bottom: 0px;\ + padding: 0px 10px 0px 40px;\ + min-height: 68px;\ + min-width: 80px;\ + max-height: 68px;\ + border-radius: 5px;\ + }" + ); + + setStyleSheet( + "QMenu {\ + margin-left: 0px;\ + margin-top: 0px;\ + margin-right: 0px;\ + margin-bottom: 0px;" + " color: none; " + " font: bold 16px; " + " min-width: 180px; " + "}\ +\ + QMenu::item {\ + margin-left: 0px;\ + margin-top: 0px;\ + margin-right: 0px;\ + margin-bottom: 0px;\ + padding: 0px 10px 0px 20px;\ + min-height: 68px;\ + min-width: 180px;\ + max-height: 68px;\ + border-radius: 5px;\ + }\ +\ +QMenu::item:checked {\ + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0,\ + stop: 0 #999900, stop: 0.55 #aaaa00,\ + stop: 0.56 #bbbb00, stop: 1 #ffff00);}\ + QMenu::item:disabled {\ + background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0,\ + stop: 0 #999, stop: 0.55 #aaa,\ + stop: 0.56 #bbb, stop: 1 #fff);}\ + QMenu::separator {\ + height: 10px;\ + margin-left: 5px;\ + margin-right: 5px;\ + }" + ); + + _pActiveSessions->setStyleSheet( + "QPushButton {" + "font: bold 16px;" + "border: none;" + "border-radius: 5px;" + "min-height: 60px;" + "min-width: 100px;" + "max-height: 60px;" + "max-width: 100px;" + "}" + ); + + +} + + +//-------------------------------------------------------- +//ActiveStatusesMenu +//-------------------------------------------------------- + +ActiveSessions::ActiveSessions(QWidget * parent): + QWidget(parent), + _visibleActionsAllowed(3), + _firstVisibleAction(0), + _lastVisibleAction(0) +{ + _pActiveSessionsMenu = new QMenu( this ); + _pActiveSessionsMenu->setObjectName("activeSessionsMenu"); + + _pSeparatorAction = new QAction(this); + _pSeparatorAction->setSeparator(true); + + _pCloseAllSessionsAction = new QAction( QIcon(":/close.png"), tr("Close all"), this ); + + CONNECT( _pCloseAllSessionsAction, SIGNAL(triggered()), parent, SLOT(closeAllSessions()) ); + CONNECT( _pActiveSessionsMenu, SIGNAL(triggered(QAction*)), parent, SLOT(onActiveSessionTriggered(QAction*)) ); + + _pScrollAction = new QWidgetAction(this); + _pScrollWidget = new ScrollWidget(this); + _pScrollAction->setDefaultWidget( _pScrollWidget ); + + CONNECT( _pScrollWidget->scrollUpButton(), SIGNAL(clicked()), this, SLOT(scrollUp()) ); + CONNECT( _pScrollWidget->scrollDownButton(), SIGNAL(clicked()), this, SLOT(scrollDown()) ); +} + + +QAction* ActiveSessions::closeCurrentSession() { + + qDebug()<<__PRETTY_FUNCTION__; + + QAction* pAction = disabledAction(); + + if( pAction ) + { + removeAction( pAction ); + + QAction* pNewCurrentAction = 0; + + + if( _actionsList.count() > 0 ) + { + pNewCurrentAction = _actionsList.last(); + pNewCurrentAction->setEnabled( false ); + } + + if( _actionsList.size() == 1 ) + { + _pActiveSessionsMenu->removeAction( _pCloseAllSessionsAction ); + _pActiveSessionsMenu->removeAction( _pSeparatorAction ); + } + + return pNewCurrentAction; + } + else + return 0; +} + + +void ActiveSessions::clear() { + + _pActiveSessionsMenu->clear(); + _actionsList.clear(); +} + +QList ActiveSessions::actions() const { + + return _pActiveSessionsMenu->actions(); +} + +QAction* ActiveSessions::disabledAction() const { + + foreach( QAction* pAction, _actionsList ) { + + if( !pAction->isEnabled() ) + return pAction; + } + return 0; +} + +QAction* ActiveSessions::action( const QString& uid ) const { + + if(uid.isEmpty()) return 0; + + QList actionsList = _pActiveSessionsMenu->actions(); + + foreach( QAction* pAction, actionsList ) { + + if( pAction->data().toString() == uid ) + return pAction; + } + return 0; +} + +void ActiveSessions::onContactPresenceUpdate(const QString& uid, Presence presence) { + + if( QAction* pAction = action( uid ) ) { + + switch( presence ) { + + case Available: + pAction->setIcon( QIcon(":/online.png") ); + break; + case XA: + case Away: + pAction->setIcon( QIcon(":/away.png") ); + break; + case Busy: + pAction->setIcon( QIcon(":/busy.png") ); + break; + case Hidden: + pAction->setIcon( QIcon(":/hidden.png") ); + break; + case Offline: + pAction->setIcon( QIcon(":/offline.png") ); + break; + default: + pAction->setIcon( QIcon() ); + } + } +} + +void ActiveSessions::onNewMessage(const QString& uid, const QString& name, Presence presence) { + + //If such action already exists - set it checked + if( QAction* pAction = action( uid ) ) { + + if( pAction != disabledAction() ) + pAction->setChecked( true ); + + } else { //create a new one + + QIcon icon; + + switch( presence ) { + + case Available: + icon = QIcon(":/online.png"); + break; + case XA: + case Away: + icon = QIcon(":/away.png"); + break; + case Busy: + icon = QIcon(":/busy.png"); + break; + case Hidden: + icon = QIcon(":/hidden.png"); + break; + case Offline: + icon = QIcon(":/offline.png"); + break; + } + + pAction = new QAction( icon, name, this ); + pAction->setData( QVariant::fromValue( uid ) ); + pAction->setCheckable( true ); + pAction->setChecked( true ); + + addAction( pAction ); + + + if( _pActiveSessionsMenu->actions().count() == 2) { + + _pActiveSessionsMenu->addAction( _pSeparatorAction ); + _pActiveSessionsMenu->addAction( _pCloseAllSessionsAction ); + } + } + +} + +void ActiveSessions::onNewSession(const QString& uid, const QString& name, Presence presence) { + + QAction* pDisabledAction = disabledAction(); + + if( QAction* pAction = action( uid ) ) { + + if( pAction != pDisabledAction ) { + + if(pDisabledAction) + pDisabledAction->setEnabled( true ); + + pAction->setChecked( false ); + pAction->setEnabled( false ); + } + + } else { + + QIcon icon; + switch( presence ) { + + case Available: + icon = QIcon(":/online.png"); + break; + case XA: + case Away: + icon = QIcon(":/away.png"); + break; + case Busy: + icon = QIcon(":/busy.png"); + break; + case Hidden: + icon = QIcon(":/hidden.png"); + break; + case Offline: + icon = QIcon(":/offline.png"); + break; + default: + icon = QIcon(":/offline.png"); + } + + if( pDisabledAction ) + pDisabledAction->setEnabled( true ); + + pAction = new QAction( icon, name, this ); + pAction->setData( QVariant::fromValue( uid ) ); + pAction->setCheckable( true ); + pAction->setEnabled( false ); + + addAction( pAction ); + + _pActiveSessionsMenu->setEnabled(true); + + + if( _pActiveSessionsMenu->actions().count() == 2) { + + _pActiveSessionsMenu->addAction( _pSeparatorAction ); + _pActiveSessionsMenu->addAction( _pCloseAllSessionsAction ); + } + + } +} + +void ActiveSessions::addAction(QAction *pAction) { + + QList currentlyVisibleActions = _pActiveSessionsMenu->actions(); + + if( currentlyVisibleActions.count( _pScrollAction ) ) + _pActiveSessionsMenu->insertAction( _pScrollAction, pAction ); + + else if( currentlyVisibleActions.count( _pSeparatorAction ) ) + _pActiveSessionsMenu->insertAction( _pSeparatorAction, pAction ); + else + _pActiveSessionsMenu->addAction( pAction ); + + _actionsList.append(pAction); + + //set iterators + _lastVisibleAction = _actionsList.end() - 1; + + if( _actionsList.size() > _visibleActionsAllowed ) + _firstVisibleAction = _actionsList.end() - _visibleActionsAllowed; + else + _firstVisibleAction = _actionsList.begin(); + + + if( _actionsList.size() > _visibleActionsAllowed ) + { + //add scroll action + _pActiveSessionsMenu->insertAction( _pSeparatorAction, _pScrollAction ); + + //remove one action from top to keep constant menu size + if( _actionsList.size() > _visibleActionsAllowed ) + { + QAction *pRemoveMe = *( _firstVisibleAction - 1 ); + if(pRemoveMe) + _pActiveSessionsMenu->removeAction( pRemoveMe ); + } + + checkScrollButtonsState(); + } + +} + +void ActiveSessions::removeAction(QAction *pAction) { + + _actionsList.removeOne(pAction); + + _lastVisibleAction = _actionsList.end() - 1; + + //Reset iterators + if( _actionsList.size() > _visibleActionsAllowed ) + _firstVisibleAction = _actionsList.end() - _visibleActionsAllowed; + else + _firstVisibleAction = _actionsList.begin(); + + //Remove all stuff above _pScrollAction or _pSeparatorAction + QList visibleItems = _pActiveSessionsMenu->actions(); + QList::iterator it = visibleItems.begin(); + + while( it != visibleItems.end() ) + { + if( *it == _pScrollAction || *it == _pSeparatorAction) break; + + _pActiveSessionsMenu->removeAction((*it)); + + ++it; + } + + //...and add it back again + it = _firstVisibleAction; + + while( it != (_lastVisibleAction + 1) ) + { + if( visibleItems.count( _pScrollAction ) ) + _pActiveSessionsMenu->insertAction( _pScrollAction, *it ); + + else if( visibleItems.count( _pSeparatorAction ) ) + _pActiveSessionsMenu->insertAction( _pSeparatorAction, *it ); + else + _pActiveSessionsMenu->addAction( *it ); + + ++it; + } + + if( _actionsList.count() <= _visibleActionsAllowed && _pScrollAction->isVisible()) + _pActiveSessionsMenu->removeAction( _pScrollAction ); + + + if( _actionsList.isEmpty() ) return; + + //Reset visible actions + QList visibleActions = _pActiveSessionsMenu->actions(); + QAction *pFirstVisible = visibleActions[0]; + + + _firstVisibleAction = _actionsList.begin() + _actionsList.indexOf(pFirstVisible); + + if(_actionsList.count() >= _visibleActionsAllowed ) + _lastVisibleAction = _firstVisibleAction + _visibleActionsAllowed - 1; + else + _lastVisibleAction = _firstVisibleAction + _actionsList.size() - 1; + + checkScrollButtonsState(); +} + + +void ActiveSessions::scrollDown() { + + //Is there something below? + if( _lastVisibleAction == (_actionsList.end() - 1) ) return; + + _pActiveSessionsMenu->removeAction( *_firstVisibleAction ); + + //Add an item from the bottom + if( _pScrollAction->isVisible() ) + _pActiveSessionsMenu->insertAction( _pScrollAction, *(_lastVisibleAction + 1) ); + else + _pActiveSessionsMenu->addAction( *(_lastVisibleAction + 1) ); + + //adjust iterators + ++_firstVisibleAction; + ++_lastVisibleAction; + + checkScrollButtonsState(); +} + +void ActiveSessions::scrollUp() { + + //Is there something above? + if( _firstVisibleAction == _actionsList.begin() ) return; + + //Add an item from the top + _pActiveSessionsMenu->insertAction(*_firstVisibleAction, *(_firstVisibleAction - 1) ); + + //Hide an item from the bottom + _pActiveSessionsMenu->removeAction( *_lastVisibleAction ); + + //adjust iterators + --_firstVisibleAction; + --_lastVisibleAction; + + checkScrollButtonsState(); +} + +void ActiveSessions::checkScrollButtonsState() { + + if( _firstVisibleAction != _actionsList.begin() ) + _pScrollWidget->scrollUpButton()->setEnabled( true ); + else + _pScrollWidget->scrollUpButton()->setEnabled( false ); + + + if( _lastVisibleAction != _actionsList.end() - 1) + _pScrollWidget->scrollDownButton()->setEnabled( true ); + else + _pScrollWidget->scrollDownButton()->setEnabled( false ); +} + +//-------------------------------------------------------- +// ScrollWidget +//-------------------------------------------------------- +ScrollWidget::ScrollWidget(QWidget* parent): + QWidget(parent) +{ + setObjectName("scrollWidget"); + setContentsMargins( -10, -10, -10, -10 ); + + _pLayout = new QHBoxLayout(this); + _pLayout->setSpacing(0); + _pScrollUpButton = new QPushButton(tr("up"), this); + _pScrollUpButton->setObjectName("scrollUpButton"); + _pScrollDownButton = new QPushButton(tr("down"), this); + _pScrollDownButton->setObjectName("scrollDownButton"); + + _pLayout->addWidget(_pScrollUpButton); + _pLayout->addWidget(_pScrollDownButton); + + show(); +} diff --git a/src/TocUi/TocMainWindow.cpp b/src/TocUi/TocMainWindow.cpp new file mode 100644 index 0000000..b2935e0 --- /dev/null +++ b/src/TocUi/TocMainWindow.cpp @@ -0,0 +1,613 @@ +/** \file TocMainWindow.cpp + * \brief Implementation of TocMainWindow class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocMainWindow" + +#include "TocMainToolbar" +#include "TocContactListWidget" +#include "TocChatWidget" +#include "TocUserInfoWidget" +#include "TocSettingsWidget" +#include "TocGeneralSettingsWidget" +#include "TocAccountSettingsWidget" +#include "TocAccountIntermediateWidget" +#include "TocThemesSettingsWidget" +#include "TocSettings" +#include "macros.h" +#include "version.h" + +#include +#include +#include +#include +#include +#include +#include + + +Q_DECLARE_METATYPE(TocContact*); + +TocMainWindow::TocMainWindow(TocBaseEngine* engine, QWidget * parent, Qt::WindowFlags flags) : + TocBaseMainWindow(engine, parent, flags), _register(false) { + + setWindowTitle("Tieto Open Communicator"); + setContentsMargins( -20, 0, -20, -5 ); + _pCentralWidget = new QWidget( this ); + _pCentralWidget->setObjectName("_pCentralWidget"); + + QAction* pAboutAct = new QAction(tr("About"), this); + pAboutAct->setStatusTip(tr("Show About info")); + CONNECT(pAboutAct, SIGNAL(triggered()), this, SLOT(showAbout())); + + QAction* pExitAct = new QAction(tr("Exit"), this); + pExitAct->setStatusTip(tr("Close application")); + CONNECT(pExitAct, SIGNAL(triggered()), this, SLOT(close())); + + menuBar()->addAction(pAboutAct); + menuBar()->addAction(pExitAct); + + setCentralWidget( _pCentralWidget ); + QVBoxLayout* verticalLayout = new QVBoxLayout( _pCentralWidget ); + verticalLayout->setSpacing( 0 ); + + _pMainToolbar = new TocMainToolbar( _pCentralWidget ); + CONNECT( _pMainToolbar, SIGNAL(contactsClicked()), this, SLOT(showContacts()) ); + CONNECT( _pMainToolbar, SIGNAL(settingsClicked()), this, SLOT(showSettings()) ); + CONNECT( _pMainToolbar, SIGNAL(finishedSession(const QString&)), this, SLOT(closeChat(const QString&)) ); + CONNECT( _pMainToolbar, SIGNAL(finishedAllSessions()), this, SLOT(closeAllOpenChats()) ); + CONNECT( _pMainToolbar, SIGNAL(activeSessionTriggered(QString,QString)), this, SLOT(showChat(QString,QString)) ); + CONNECT( _pMainToolbar, SIGNAL(presenceUpdate(Presence,QString)), this, SIGNAL(presenceChanged(Presence,QString)) ); + + verticalLayout->addWidget( _pMainToolbar ); + _pMainLayout = new QStackedLayout( verticalLayout ); + _pMainLayout->setSpacing( 0 ); + + _pChatList = new QList(); + _pOpenChatList = new QList(); + + _pSettingsWidget = new TocSettingsWidget( _pCentralWidget ); + _pMainLayout->addWidget( _pSettingsWidget ); + CONNECT(_pSettingsWidget, SIGNAL(triggered(int)), this, SLOT(showView(int))); + + _pContactList = new TocContactListWidget( _pCentralWidget ); + _pMainLayout->addWidget( _pContactList ); + + CONNECT( _pContactList, SIGNAL(triggered(QString,QString,Presence)), _pMainToolbar, SLOT(onNewSession(QString,QString,Presence)) ); + CONNECT( _pContactList, SIGNAL(contactInfoRequest(QListWidgetItem*)), this, SLOT(showUserInfo(QListWidgetItem*)) ); + CONNECT( _pContactList, SIGNAL(triggered(QString,QString,Presence)), this, SLOT(showChat(QString,QString,Presence)) ); + CONNECT( _pContactList, SIGNAL(addContact(TocContact*)), + this, SIGNAL(addContact(TocContact*))); + CONNECT( _pContactList, SIGNAL(removedContact(QString)), + this, SIGNAL(removeContact(QString))); + CONNECT( _pContactList, SIGNAL(editContact(TocContact*,QString)), + this, SIGNAL(editContact(TocContact*,QString))); + CONNECT( _pContactList, SIGNAL(displayedNameChanged(QString,QString)), + this, SLOT(onDisplayedNameChange(QString,QString)) ); + + _pUserInfoWidget = 0; + _pGeneralWidget = 0; + _pAccountWidget = 0; + _pIntermediateWidget = 0; + _pThemesWidget = 0; + + if(isFtu()) + showView( static_cast( FTU ) ); + else + _pMainLayout->setCurrentWidget( _pContactList ); + + setStyleSheet( +// "TocMainToolbar > QPushButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #aa0, stop: 0.55 #bb0, stop: 0.56 #bb0, stop: 1 #ff0); }" +// "QPushButton#okButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #0aa, stop: 0.55 #0bb, stop: 0.56 #0bb, stop: 1 #0ff); }" +// "QPushButton#cancelButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #0aa, stop: 0.55 #0bb, stop: 0.56 #0bb, stop: 1 #0ff); }" +// "QPushButton#generalButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #0aa, stop: 0.55 #0bb, stop: 0.56 #0bb, stop: 1 #0ff); }" +// "QPushButton#themesButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #0aa, stop: 0.55 #0bb, stop: 0.56 #0bb, stop: 1 #0ff); }" +// "QPushButton#accountButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #0aa, stop: 0.55 #0bb, stop: 0.56 #0bb, stop: 1 #0ff); }" +// "QPushButton#networkButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #0aa, stop: 0.55 #0bb, stop: 0.56 #0bb, stop: 1 #0ff); }" +// "QPushButton#statusButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #aaa, stop: 0.55 #bbb, stop: 0.56 #bbb, stop: 1 #fff); }" +// "QPushButton#settingsButton { background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #0aa, stop: 0.55 #0bb, stop: 0.56 #0bb, stop: 1 #0ff); }" +// "*[mandatoryField=\"true\"] {background-color: qlineargradient(x1: 0, y1: 1, x2: 0, y2: 0," +// "stop: 0 #aa0, stop: 0.55 #bb0, stop: 0.56 #bb0, stop: 1 #ff0); }" + + "QMessageBox QPushButton {" + "border: none;" + "min-width: 80px;" + "min-height: 40px;" + "}" + "QMenuBar {" + "max-height: 0px;" + "}" + ); + + _defaultStyle = styleSheet(); + reloadTheme(); +} + +TocMainWindow::~TocMainWindow() { + + delete _pChatList; + delete _pOpenChatList; +} + +TocChatWidget* TocMainWindow::chatForUid(const QString& uid) { + foreach( TocChatWidget* chat, *_pChatList ) + if ( chat->uid() == uid ) + return chat; + return 0; +} + +TocChatWidget* TocMainWindow::openChatForUid(const QString& uid) { + foreach( TocChatWidget* chat, *_pOpenChatList ) + if ( chat->uid() == uid ) + return chat; + return 0; +} + +void TocMainWindow::onPresenceUpdate(Presence presence, QString desc) { + _pMainToolbar->onPresenceUpdate( presence, desc ); + if( presence == Offline ) + _pContactList->clearStatuses(); +} + +void TocMainWindow::onContactPresenceUpdate(QString uid, Presence presence, QString desc) { + if ( TocChatWidget* chat = openChatForUid( uid ) ) { + chat->onContactPresenceUpdate( presence, desc ); + _pMainToolbar->onContactPresenceUpdate( uid, presence ); + } + + _pContactList->onContactPresenceUpdate( uid, presence, desc ); +} + +void TocMainWindow::onIncomingMessage(QString uid, Message message) { + + TocChatWidget* chat; + if ( chat = chatForUid( uid ) ) { + _pOpenChatList->append( chat ); + chat->appendMessage( message ); + QListWidgetItem* pItem = _pContactList->findItem( uid ); + if( pItem ) { + QString name = pItem->data( DisplayRole ).toString(); + TocContact *pContact = pItem->data(ContactRole).value(); + _pMainToolbar->onNewMessage( uid, name, pContact->presence ); + } else { + _pMainToolbar->onNewMessage( uid, uid, static_cast(0) ); + } + } else { + QListWidgetItem* pItem = _pContactList->findItem( uid ); + if( !pItem ) { + chat = new TocChatWidget( uid, uid, static_cast(0), _pCentralWidget, message ); + _pChatList->append( chat ); + _pOpenChatList->append( chat ); + _pMainLayout->addWidget( chat ); + _pMainToolbar->onNewMessage( uid, uid, static_cast(0) ); + } else { + QString name = pItem->data( DisplayRole ).toString(); + TocContact *pContact = pItem->data(ContactRole).value(); + chat = new TocChatWidget( uid, name, pContact->presence, _pCentralWidget, message ); + _pChatList->append( chat ); + _pOpenChatList->append( chat ); + _pMainLayout->addWidget( chat ); + _pMainToolbar->onNewMessage( uid, name, pContact->presence ); + } + CONNECT(chat, SIGNAL(newMessageReady(QString,Message)), this, SIGNAL(newMessageReady(QString,Message))); + } +} + +void TocMainWindow::closeChat(const QString& uid) { + + if ( TocChatWidget* chat = openChatForUid( uid ) ) { + _pOpenChatList->removeOne( chat ); + emit sessionClosed( uid ); + } +} + +void TocMainWindow::closeAllOpenChats() { + + foreach( TocChatWidget* chat, *_pOpenChatList ) { + emit sessionClosed( chat->uid() ); + } + _pOpenChatList->clear(); +} + +void TocMainWindow::clearAllChats() { + + // First close open chats + closeAllOpenChats(); + + foreach( TocChatWidget* chat, *_pChatList ) { + _pMainLayout->removeWidget( chat ); + delete chat; + } + + _pChatList->clear(); +} + +void TocMainWindow::showChat(const QString& uid, const QString& name, Presence presence) { + + if ( TocChatWidget* chat = chatForUid( uid ) ) { + if(!openChatForUid(uid)) { + _pOpenChatList->append( chat ); + chat->updateContactPresence( presence ); + } + + _pMainLayout->setCurrentWidget( chat ); + } else { + chat = new TocChatWidget( uid, name, presence, _pCentralWidget ); + _pChatList->append( chat ); + _pOpenChatList->append( chat ); + _pMainLayout->addWidget( chat ); + _pMainLayout->setCurrentWidget( chat ); + CONNECT(chat, SIGNAL(newMessageReady(QString,Message)), this, SIGNAL(newMessageReady(QString,Message))); + } +} + +void TocMainWindow::showContacts() { + _pMainLayout->setCurrentWidget( _pContactList ); +} + +void TocMainWindow::returnToContacts() { + _pMainLayout->setCurrentWidget( _pContactList ); + _pMainToolbar->onCurrentView( Contacts ); +} + +void TocMainWindow::showSettings() { + _pMainLayout->setCurrentWidget( _pSettingsWidget ); +} + +void TocMainWindow::returnToSettings() { + _pMainLayout->setCurrentWidget( _pSettingsWidget ); + _pMainToolbar->onCurrentView( Settings, tr("Settings") ); +} + +void TocMainWindow::reloadTheme() { + QString current = styleSheet(); + QString theme; + + TocSettings* pSettings = TocSettings::getInstance(); + + QFile file(pSettings->currentTheme()); + + file.open(QIODevice::ReadOnly | QIODevice::Text); + if (file.exists()) { + theme = file.readAll(); + file.close(); + } else + return; + + if (theme + _defaultStyle != current) { + if (theme.isEmpty()) + setStyleSheet(_defaultStyle); + else + setStyleSheet(theme + _defaultStyle); + } +} + +void TocMainWindow::returnToIntermediate() { + if(isFtu()) + showView( static_cast( FTU ) ); + else + showView( static_cast( AccountIntermediate ) ); +} + +void TocMainWindow::showAccount() { + showView( static_cast( Account ) ); +} + +void TocMainWindow::showAccountCreate() { + showView( static_cast( AccountCreate ) ); +} + +void TocMainWindow::showView(int type) { + ViewType viewType = static_cast( type ); + + switch( viewType ) { + + case Contacts: + showContacts(); + _pMainToolbar->onCurrentView( Contacts ); + break; + + case Chat: + /* Do nothing */ + break; + + case UserInfo: + showUserInfo( 0 ); + break; + + case Settings: + showSettings(); + break; + + case General: + if( !_pGeneralWidget ) { + _pGeneralWidget = new TocGeneralSettingsWidget( _pCentralWidget ); + CONNECT(_pGeneralWidget, SIGNAL(backClicked()), this, SLOT(returnToSettings())); + CONNECT(_pGeneralWidget, SIGNAL(finished()), this, SLOT(returnToContacts())); + _pMainLayout->addWidget( _pGeneralWidget ); + } + _pMainToolbar->onCurrentView( viewType, tr("General Settings") ); + _pMainLayout->setCurrentWidget( _pGeneralWidget ); + break; + + case FTU: + if( !_pIntermediateWidget ) { + _pIntermediateWidget = new TocAccountIntermediateWidget( _pCentralWidget ); + CONNECT(_pIntermediateWidget, SIGNAL(backClicked()), this, SLOT(returnToSettings())); + CONNECT(_pIntermediateWidget, SIGNAL(editClicked()), this, SLOT(showAccount())); + CONNECT(_pIntermediateWidget, SIGNAL(createClicked()), this, SLOT(showAccountCreate())); + _pMainLayout->addWidget( _pIntermediateWidget ); + } + _pIntermediateWidget->enableFTUMode( true ); + _pMainToolbar->onCurrentView( viewType, tr("Account Settings") ); + _pMainLayout->setCurrentWidget( _pIntermediateWidget ); + break; + + case AccountIntermediate: + if( !_pIntermediateWidget ) { + _pIntermediateWidget = new TocAccountIntermediateWidget( _pCentralWidget ); + CONNECT(_pIntermediateWidget, SIGNAL(backClicked()), this, SLOT(returnToSettings())); + CONNECT(_pIntermediateWidget, SIGNAL(editClicked()), this, SLOT(showAccount())); + CONNECT(_pIntermediateWidget, SIGNAL(createClicked()), this, SLOT(showAccountCreate())); + _pMainLayout->addWidget( _pIntermediateWidget ); + } + _pIntermediateWidget->enableFTUMode( false ); + _pMainToolbar->onCurrentView( viewType, tr("Account Settings") ); + _pMainLayout->setCurrentWidget( _pIntermediateWidget ); + break; + + case AccountCreate: + if( !_pAccountWidget ) { + _pAccountWidget = new TocAccountSettingsWidget( _pCentralWidget ); + CONNECT(_pAccountWidget, SIGNAL(newAccountSettingsCreated()), this, SLOT(onAccountSettingsCreated())); + CONNECT(_pAccountWidget, SIGNAL(accountSettingsChanged()), this, SLOT(onAccountSettingsChanged())); CONNECT(_pAccountWidget, SIGNAL(finished()), this, SLOT(returnToContacts())); + CONNECT(_pAccountWidget, SIGNAL(finished()), this, SLOT(returnToContacts())); + CONNECT(_pAccountWidget, SIGNAL(backClicked()), this, SLOT(returnToIntermediate())); + _pMainLayout->addWidget( _pAccountWidget ); + } + _pAccountWidget->setCreateMode(true); + _pMainToolbar->onCurrentView( viewType, tr("Create Account") ); + _pMainLayout->setCurrentWidget( _pAccountWidget ); + break; + + case Account: + if( !_pAccountWidget ) { + _pAccountWidget = new TocAccountSettingsWidget( _pCentralWidget ); + CONNECT(_pAccountWidget, SIGNAL(newAccountSettingsCreated()), this, SLOT(onAccountSettingsCreated())); + CONNECT(_pAccountWidget, SIGNAL(accountSettingsChanged()), this, SLOT(onAccountSettingsChanged())); + CONNECT(_pAccountWidget, SIGNAL(finished()), this, SLOT(returnToContacts())); + CONNECT(_pAccountWidget, SIGNAL(backClicked()), this, SLOT(returnToIntermediate())); + _pMainLayout->addWidget( _pAccountWidget ); + } + _pAccountWidget->setCreateMode(false); + _pMainToolbar->onCurrentView( viewType, tr("Account Settings") ); + _pMainLayout->setCurrentWidget( _pAccountWidget ); + break; + + case Themes: + if( !_pThemesWidget ) { + _pThemesWidget = new TocThemesSettingsWidget( _pCentralWidget ); + _pMainLayout->addWidget( _pThemesWidget ); + CONNECT(_pThemesWidget, SIGNAL(backClicked()), this, SLOT(returnToSettings())); + CONNECT(_pThemesWidget, SIGNAL(currentThemeChanged()), this, SLOT(reloadTheme())); + } + _pMainToolbar->onCurrentView( viewType, tr("Themes Settings") ); + _pMainLayout->setCurrentWidget( _pThemesWidget ); + break; + + default: + /* Do nothing */ + break; + } +} + +void TocMainWindow::showUserInfo(QListWidgetItem* item) { + + _pMainLayout->removeWidget( _pUserInfoWidget ); + delete _pUserInfoWidget; + + _pUserInfoWidget = new TocUserInfoWidget( item, _pContactList ); + + if ( item == 0 ) { + CONNECT(_pUserInfoWidget, SIGNAL(contactChanged(QListWidgetItem*)), + _pContactList, SLOT(commitAdd(QListWidgetItem*))); + + _pMainToolbar->onCurrentView( UserInfo, tr("Create Contact") ); + + } else { + CONNECT(_pUserInfoWidget, SIGNAL(contactChanged(QListWidgetItem*)), + _pContactList, SLOT(commitEdit(QListWidgetItem*))); + + QString name = item->data( DisplayRole ).toString(); + _pMainToolbar->onCurrentView( UserInfo, tr("Edit %1").arg( name ) ); + } + + CONNECT(_pUserInfoWidget, SIGNAL(finished()), this, SLOT(returnToContacts())); + + _pMainLayout->addWidget( _pUserInfoWidget ); + _pMainLayout->setCurrentWidget( _pUserInfoWidget ); +} + +void TocMainWindow::onDisplayedNameChange(const QString& uid, const QString& name) { + + if ( TocChatWidget* chat = chatForUid( uid ) ) { + chat->onDisplayedNameChange( name ); + _pMainToolbar->onDisplayedNameChange( uid, name ); + } +} + +void TocMainWindow::onContactListReceived(const TocContactList& cList) +{ + _pContactList->onNewContactList(cList); +} + +void TocMainWindow::onAuthorizationRequest(QString /*uid*/) { + //TODO: finish implementation +} + +void TocMainWindow::onSubscriptionAccepted(QString /*uid*/) { + //TODO: finish implementation +} + +void TocMainWindow::onStatusChange(Status status, Reason reason) { + switch(status) { + case Disconnected: + if(reason != Requested) + if(_register) { + QMessageBox::critical(this, tr("TEC"), errorString(reason) + "\nCannot create account"); + _register = false; + } else + QMessageBox::critical(this, tr("TEC"), errorString(reason)); + + _pMainToolbar->onPresenceUpdate( Offline, "" ); + + break; + case Connected: + if(_register) { + QMessageBox::information(this, tr("TEC"), tr("Account created successfully!")); + _register = false; + returnToContacts(); + } break; + case Connecting: + /* Do nothing */ + break; + default: + /* Do nothing */ + break; + } +} + +QString TocMainWindow::errorString(Reason reason) { + switch(reason) { + case NoneSpecified: + return tr("Disconnected because of unknown reason."); + + case Requested: + return tr("Disconnected because it was requested."); + + case NetworkError: + return tr("Disconnected because of network error."); + + case AuthenticationFailed: + return tr("Disconnected because the username or password was invalid."); + + case EncryptionError: + return tr("Disconnected because of encryption error."); + + case NameInUse: + return tr("Could not create account or connect because username is already in use."); + + case CertificateNotProvided: + return tr("Disconnected because certificate was not provided."); + + case CertificateUntrusted: + return tr("Disconnected because certificate is untrusted."); + + case CertificateExpired: + return tr("Disconnected because certificate has expired."); + + case CertificateNotActivated: + return tr("Disconnected because certificate has not been activated."); + + case CertificateHostnameMismatch: + return tr("Disconnected because of certificate hostname mismatch."); + + case CertificateFingerPrintMismatch: + return tr("Disconnected because of certificate finger print mismatch."); + + case CertificateSigned: + return tr("Disconnected because certificate was self-signed."); + + case CertificateOtherError: + return tr("Disconnected because of non specified certificate error."); + + default: + return tr("Disconnected because of unknown reason."); + } +} + +bool TocMainWindow::isFtu() { + TocSettings *set = TocSettings::getInstance(); + if(!set->accountUid().length() && !set->accountPasswd().length()) + return true; + return false; +} + +void TocMainWindow::showAbout() { + QMessageBox::about(this, tr("About Tieto Open Communicator"), tr( + "Tieto Open Communicator %1 - Instant Message Communicator for Telepathy framework\n\n" + "Copyright: (c) 2010, Tieto Corporation\n" + "License: see `/usr/share/%2/licence/copyright`." + ).arg(VERSION).arg(TARGET)); +} + +void TocMainWindow::onAccountSettingsChanged() { + _register = false; + emit presenceChanged(Offline, ""); + + // Clear chat widgets and active sessions + clearAllChats(); + _pMainToolbar->clearAllSessions(); + + // Empty the contact list + TocSettings *pSettings = TocSettings::getInstance(); + pSettings->contactList()->clear(); + _pContactList->onNewContactList(*pSettings->contactList()); +} + +void TocMainWindow::onAccountSettingsCreated() { + onAccountSettingsChanged(); + + _pMainToolbar->onCurrentView(AccountCreate, tr("Create Account")); + _register = true; + // Request to create account + emit presenceChanged(Available, ""); + QMessageBox::information(this, tr("TEC"), + tr("To be able to fully use Your new account:\nplease reconnect.")); +} + +void TocMainWindow::closeEvent( QCloseEvent* event ) { + Q_UNUSED(event) + hide(); +} + +int TocMainWindow::top_application() { + show(); + return 0; +} diff --git a/src/TocUi/TocSettingsWidget.cpp b/src/TocUi/TocSettingsWidget.cpp new file mode 100644 index 0000000..67701d4 --- /dev/null +++ b/src/TocUi/TocSettingsWidget.cpp @@ -0,0 +1,129 @@ +/** \file TocSettingsWidget.cpp + * \brief Implementation of TocSettingsWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocSettingsWidget" +#include +#include +#include +#include +#include +#include "uidefs.h" +#include "macros.h" + +TocSettingsWidget::TocSettingsWidget(QWidget * parent, Qt::WindowFlags flags) : + QWidget(parent, flags) { + + setContentsMargins(-10, -10, -10, -10); + setObjectName("settingsWidget"); + + QGridLayout* gridLayout = new QGridLayout(this); + settingsFrame = new QFrame(this); + settingsFrame->setObjectName("settingsFrame"); + gridLayout->addWidget(settingsFrame); + QVBoxLayout* vLayout = new QVBoxLayout(settingsFrame); + + vLayout->addStretch(1); + + QHBoxLayout* hLayout = new QHBoxLayout(); + + generalButton = new QPushButton(tr("General"), this); + generalButton->setObjectName("generalButton"); + hLayout->addWidget(generalButton); + + accountButton = new QPushButton(tr("Account"), this); + accountButton->setObjectName("accountButton"); + hLayout->addWidget(accountButton); + + themesButton = new QPushButton(tr("Themes"), this); + themesButton->setObjectName("themesButton"); + hLayout->addWidget(themesButton); + + vLayout->addLayout(hLayout); + vLayout->addStretch(2); + + signalMapper = new QSignalMapper(this); + signalMapper->setMapping(generalButton, static_cast(General)); + signalMapper->setMapping(accountButton, static_cast(AccountIntermediate)); + signalMapper->setMapping(themesButton, static_cast(Themes)); + + CONNECT(generalButton, SIGNAL(clicked()), signalMapper, SLOT(map())); + CONNECT(accountButton, SIGNAL(clicked()), signalMapper, SLOT(map())); + CONNECT(themesButton, SIGNAL(clicked()), signalMapper, SLOT(map())); + + CONNECT(signalMapper, SIGNAL(mapped(int)), this, SIGNAL(triggered(int))); + + setupStyles(); +} + +TocSettingsWidget::~TocSettingsWidget() { +} + +void TocSettingsWidget::setupStyles() { + + generalButton->setStyleSheet("QPushButton {" + "font: bold 16px;" + "text-align: bottom;" + "border-radius: 5px;" + "background-image: url(:/general.png);" + "background-repeat:no-repeat;" + "background-position:center center;" + "min-height: 120px;" + "min-width: 140px;" + "max-height: 120px;" + "max-width: 140px;" + "}"); + + accountButton->setStyleSheet("QPushButton {" + "font: bold 16px;" + "text-align: bottom;" + "border-radius: 5px;" + "background-image: url(:/account.png);" + "background-repeat:no-repeat;" + "background-position:center center;" + "min-height: 120px;" + "min-width: 140px;" + "max-height: 120px;" + "max-width: 140px;" + "}"); + + themesButton->setStyleSheet("QPushButton {" + "font: bold 16px;" + "text-align: bottom;" + "border-radius: 5px;" + "background-image: url(:/themes.png);" + "background-repeat:no-repeat;" + "background-position:center center;" + "min-height: 120px;" + "min-width: 140px;" + "max-height: 120px;" + "max-width: 140px;" + "}"); +} diff --git a/src/TocUi/TocThemesSettingsWidget.cpp b/src/TocUi/TocThemesSettingsWidget.cpp new file mode 100644 index 0000000..6d502ab --- /dev/null +++ b/src/TocUi/TocThemesSettingsWidget.cpp @@ -0,0 +1,102 @@ +/** \file TocThemesSettingsWidget.cpp + * \brief Implementation of TocThemesSettingsWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocThemesSettingsWidget" +#include "ui_TocThemesSettingsWidget.h" +#include "macros.h" + +#include +#include +#include +#include + + +TocThemesSettingsWidget::TocThemesSettingsWidget(QWidget *parent, Qt::WindowFlags flags) + : QWidget(parent, flags) { + + ui = new Ui_TocThemesSettingsWidgetClass(); + ui->setupUi(this); + setContentsMargins(-10, -10, -10, -10); + + ui->applyThemeButton->setText(tr("Apply")); + ui->backThemeButton->setText(tr("Back")); + + //TODO: functionality is not implemented. Add Theme button is hidden. + ui->addThemeButton->setVisible(false); + ui->addThemeButton->setText(tr("Add theme")); + +#ifdef QT_NO_DEBUG + #define ssPath QString("/usr/share/tietoopcom/stylesheets/") +#else + #define ssPath QString("./data/stylesheets/") +#endif + + qDebug() << ssPath; + + QListWidgetItem* pItem = new QListWidgetItem("Default theme", ui->themesListWidget); + pItem->setToolTip(ssPath + "default.qss"); + + pItem = new QListWidgetItem("My theme", ui->themesListWidget); + pItem->setToolTip(ssPath + "my.qss"); + + CONNECT(ui->backThemeButton,SIGNAL(clicked()),this,SIGNAL(backClicked())); + CONNECT(ui->applyThemeButton,SIGNAL(clicked()),this,SLOT(saveThemesSettings())); +} + +TocThemesSettingsWidget::~TocThemesSettingsWidget() { + delete ui; +} + +void TocThemesSettingsWidget::showEvent( QShowEvent* event ) { + + TocSettings* pSettings = TocSettings::getInstance(); + for(int i = 0; i < ui->themesListWidget->count(); ++i) + if(ui->themesListWidget->item(i)->toolTip() == pSettings->currentTheme()) { + ui->themesListWidget->setCurrentRow(i); + } + event->accept(); +} + +void TocThemesSettingsWidget::saveThemesSettings() { + + TocSettings* pSettings = TocSettings::getInstance(); + + QListWidgetItem* pThemesListItem = ui->themesListWidget->currentItem(); + if(!pThemesListItem) + return; + + QString themeUrl = pThemesListItem->toolTip(); + if(themeUrl == pSettings->currentTheme()) + return; + + pSettings->setCurrentTheme(themeUrl); + emit currentThemeChanged(); +} diff --git a/src/TocUi/TocThemesSettingsWidget.ui b/src/TocUi/TocThemesSettingsWidget.ui new file mode 100644 index 0000000..94f206f --- /dev/null +++ b/src/TocUi/TocThemesSettingsWidget.ui @@ -0,0 +1,255 @@ + + + + TocThemesSettingsWidgetClass + + + + 0 + 0 + 593 + 405 + + + + Form + + + + + + + + + true + + + + 0 + 0 + + + + + + + QFrame::Box + + + QFrame::Sunken + + + 1 + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + QPushButton { + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Back + + + + + + + + + + + + 0 + 0 + + + + true + + + QListView { + font: bold 30px; +} + + + + + 1 + + + 1 + + + false + + + false + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectItems + + + + 0 + 0 + + + + Qt::ElideMiddle + + + QAbstractItemView::ScrollPerItem + + + QListView::Static + + + QListView::TopToBottom + + + false + + + QListView::Adjust + + + 5 + + + QListView::ListMode + + + 0 + + + true + + + true + + + -1 + + + false + + + + + + + + + + + QPushButton { + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Add theme + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + false + + + QPushButton { + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Apply + + + + + + + + + + + + + diff --git a/src/TocUi/TocUi.pri b/src/TocUi/TocUi.pri new file mode 100644 index 0000000..c8e0663 --- /dev/null +++ b/src/TocUi/TocUi.pri @@ -0,0 +1,21 @@ +DEPENDPATH += $$PWD +INCLUDEPATH += $$PWD +SOURCES += TocBaseMainWindow.cpp \ + TocMainWindow.cpp \ + TocContactListWidget.cpp \ + TocChatWidget.cpp \ + TocUserInfoWidget.cpp \ + TocSettingsWidget.cpp \ + TocGeneralSettingsWidget.cpp \ + TocAccountSettingsWidget.cpp \ + TocAccountIntermediateWidget.cpp \ + TocThemesSettingsWidget.cpp \ + TocMainToolbar.cpp \ + IconProvider.cpp \ + TocEmoticonsDialog.cpp +FORMS += TocChatWidget.ui \ + TocUserInfoWidget.ui \ + TocGeneralSettingsWidget.ui \ + TocAccountSettingsWidget.ui \ + TocThemesSettingsWidget.ui \ + TocEmoticonsDialog.ui diff --git a/src/TocUi/TocUserInfoWidget.cpp b/src/TocUi/TocUserInfoWidget.cpp new file mode 100644 index 0000000..46e8fcf --- /dev/null +++ b/src/TocUi/TocUserInfoWidget.cpp @@ -0,0 +1,250 @@ +/** \file.cpp + * \brief Implementation of TocUserInfoWidget class + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include +#include +#include +#include +#include +#include + +#include "TocUserInfoWidget" +#include "IconProvider" +#include "ui_TocUserInfoWidget.h" +#include "uidefs.h" +#include "macros.h" + +Q_DECLARE_METATYPE(TocContact*); + + +TocUserInfoWidget::TocUserInfoWidget(QListWidgetItem * contactItem, TocContactListWidget * parent, Qt::WindowFlags flags) + : QWidget(parent, flags), _pContactList(parent) +{ + + ui = new Ui_TocUserInfoWidgetClass(); + ui->setupUi(this); + setContentsMargins(-10, -10, -10, -10 ); + + ui->resolveButton->hide(); //TODO: implement resolving contact's name functionality + + //Adjust labels size to their content + QFontMetrics fm(ui->uidLabel->font()); + + //Find the widest + QList list; + list << fm.boundingRect(ui->uidLabel->text()).width(); + list << fm.boundingRect(ui->nameLabel->text()).width(); + list << fm.boundingRect(ui->genderLabel->text()).width(); + qSort(list.begin(), list.end()); + + //Set minimum width + ui->uidLabel->setMinimumWidth(list.last()); + ui->nameLabel->setMinimumWidth(list.last()); + ui->genderLabel->setMinimumWidth(list.last()); + + _newCustomPicturePath = ""; + + _pContactItem = contactItem; + + ui->genderComboBox->addItem(tr("Unknown") ); + ui->genderComboBox->setItemData(0, NotSpecified); + + ui->genderComboBox->addItem(tr("Male") ); + ui->genderComboBox->setItemData(1, Male); + + ui->genderComboBox->addItem(tr("Female")); + ui->genderComboBox->setItemData(2, Female); + + CONNECT(ui->genderComboBox,SIGNAL(currentIndexChanged(int)),this,SLOT(onCurrentIndexChanged(int))); + CONNECT(ui->okButton, SIGNAL(clicked()),this,SLOT(okClicked())); + CONNECT(ui->cancelButton,SIGNAL(clicked()),this,SIGNAL(finished())); + + _pIconProvider = IconProvider::getInstance(); + + if (!contactItem) { + ui->pictureButton->setIcon(_pIconProvider->matchIcon(NotSpecified)); + return; + } + + ui->nameLineEdit->setText(contactItem->data(ContactRole).value()->name); + ui->uidLineEdit->setText(contactItem->data(ContactRole).value()->uid); + + + Gender gender = contactItem->data(ContactRole).value()->gender; + + int idx = ui->genderComboBox->findData(gender); + + if (idx >= 0 && idx <= 2) { + ui->genderComboBox->setCurrentIndex(idx); + _currentIndex = idx; + } + + _customPicturePath = _newCustomPicturePath = contactItem->data(ContactRole).value()->customIconPath; + + // Get picture + QIcon icon; + if(_customPicturePath.isEmpty()) + icon = _pIconProvider->matchIcon(gender); + else + icon = QIcon(_customPicturePath); + + ui->pictureButton->setIcon(icon); +} + +TocUserInfoWidget::~TocUserInfoWidget() { + delete ui; +} + +void TocUserInfoWidget::onCurrentIndexChanged (int index) { + + Gender gender = static_cast(ui->genderComboBox->itemData(index).value()); + + // Get picture + QIcon icon; + if(_newCustomPicturePath.isEmpty()) + icon = _pIconProvider->matchIcon(gender); + else + icon = QIcon(_customPicturePath); + + ui->pictureButton->setIcon(icon); +} + +void TocUserInfoWidget::okClicked() { + + if(_pContactItem) { // Edit an existing item + + Gender gender; + QString uid = ui->uidLineEdit->text(); + + if(uid.isEmpty()) { + QMessageBox::warning(this, tr("TEC"), tr("User ID is empty.\nCannot commit changes.")); + return; + } + + // Check if UID is not already on contact list + if(_pContactList->findItem(uid, _pContactItem)) { + QMessageBox::warning(this, tr("TEC"), tr("The given user ID already exists on Your contact list.\nCannot commit changes.")); + return; + } + + QString name = ui->nameLineEdit->text(); + int idx = ui->genderComboBox->currentIndex(); + + // Check if something has changed + bool changed = false; + if(_pContactItem->data(ContactRole).value()->uid != uid) + changed = true; + else if(_pContactItem->text() != name) + changed = true; + else if(_currentIndex != idx) + changed = true; + else if(_customPicturePath != _newCustomPicturePath) + changed = true; + + // If yes: save changes and emit signal to notify TocContactListWidget (commitEdit) + if(changed) { + gender = static_cast(ui->genderComboBox->itemData(idx).value()); + + //Get contact from QListWidgetItem + TocContact *pContact = _pContactItem->data(ContactRole).value(); + + if(name.isEmpty()) + _pContactItem->setText(uid); + else + _pContactItem->setText(name); + + pContact->uid = uid; + pContact->name = name; + pContact->gender = gender; + + _pContactItem->setData(Qt::DecorationRole, *(_pIconProvider->matchIcon(pContact))); + emit contactChanged(_pContactItem); + } + } else { // Create new item + + // Collect data for the new contact + // Get uid + QString uid = ui->uidLineEdit->text(); + + if(uid.isEmpty()) { + QMessageBox::warning(this, tr("TEC"), tr("User ID is empty.\nCannot commit changes.")); + return; + } + + // Check if UID is not already on contact list + if(_pContactList->findItem(uid)) { + QMessageBox::warning(this, tr("TEC"), tr("The given user ID already exists on Your contact list.\nCannot commit changes.")); + return; + } + + // Get name + QString name = ui->nameLineEdit->text(); + + // ... and gender + int idx = ui->genderComboBox->currentIndex(); + Gender gender = static_cast(ui->genderComboBox->itemData(idx).value()); + + // Create QListWidgetItem and emit it to notify TocContactListWidget (commitAdd) + QString displayedText; + if(name.isEmpty()) + displayedText = uid; + else + displayedText = name; + + QListWidgetItem* pNewItem = new QListWidgetItem(displayedText, 0); + + // Create new contact structure... + TocContact* pNewContact = new TocContact; + + pNewContact->uid = uid; + pNewContact->name = name; + pNewContact->gender = gender; + pNewContact->customIconId = 0; + pNewContact->customIconPath = ""; + pNewContact->presence = Offline; + + // ... and associate it with QListWidgetItem + pNewItem->setData(ContactRole, QVariant::fromValue(pNewContact)); + + pNewItem->setData(Qt::DecorationRole, *(_pIconProvider->matchIcon(pNewContact))); + pNewItem->setFlags(Qt::ItemIsEnabled); + + emit contactChanged(pNewItem); + } + + // Emit this to finish the job + emit finished(); +} + +void TocUserInfoWidget::showEvent(QShowEvent* event) { + ui->uidLineEdit->setFocus(); + event->accept(); +} diff --git a/src/TocUi/TocUserInfoWidget.ui b/src/TocUi/TocUserInfoWidget.ui new file mode 100644 index 0000000..44bcee0 --- /dev/null +++ b/src/TocUi/TocUserInfoWidget.ui @@ -0,0 +1,497 @@ + + + + TocUserInfoWidgetClass + + + Qt::NonModal + + + + 0 + 0 + 544 + 256 + + + + Qt::ClickFocus + + + Form + + + + + + + + + + 0 + 0 + + + + QFrame{ +border:none; +} + + + QFrame::StyledPanel + + + + + + + + + 0 + 0 + + + + + 80 + 80 + + + + QPushButton{ + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + + + + + 68 + 68 + + + + false + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + 80 + 80 + + + + QPushButton{ + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + Cancel + + + + + + + + + + + + + + 30 + 0 + + + + QLabel{ + border-radius: none; + background: none; + font: bold 12px; +} + + + QFrame::StyledPanel + + + User id: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 48 + 48 + + + + + 0 + 48 + + + + + -1 + 75 + false + true + + + + QLineEdit{ + border-radius: 5px; + min-height: 48px; + font: bold 14px; +} + + + + + + + + + + Qt::Horizontal + + + QSizePolicy::Maximum + + + + 20 + 20 + + + + + + + + + + + + + 30 + 0 + + + + QLabel{ + border-radius: none; + background: none; + font: bold 12px; +} + + + Name: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 48 + + + + + 0 + 48 + + + + + -1 + 75 + false + true + + + + Qt::LeftToRight + + + QLineEdit{ + border-radius: 5px; + min-height: 48px; + font: bold 14px; +} + + + + + + false + + + + + + + Qt::Horizontal + + + QSizePolicy::Maximum + + + + 20 + 20 + + + + + + + + + 80 + 40 + + + + + 80 + 40 + + + + + -1 + 75 + false + true + + + + QPushButton{ + font: bold 16px; + border-radius: 5px; + min-height: 40px; + min-width: 80px; + max-height: 40px; + max-width: 80px; +} + + + Resolve + + + + + + + + + + + + 30 + 0 + + + + QLabel{ + border-radius: none; + background: none; + font: bold 12px; +} + + + Gender: + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + 0 + 48 + + + + + 110 + 52 + + + + + -1 + 75 + false + true + + + + false + + + QComboBox { + min-height: 48px; + font: bold 16px; +} + + + + -1 + + + + + + + Qt::Horizontal + + + QSizePolicy::Expanding + + + + 20 + 20 + + + + + + + + + + Qt::Vertical + + + + 327 + 35 + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + 80 + 80 + + + + QPushButton{ + font: bold 16px; + border-radius: 5px; + min-height: 80px; + min-width: 80px; + max-height: 80px; + max-width: 80px; +} + + + OK + + + + + + + + + + + + + + compareName() + compareUID() + + diff --git a/src/application.qrc b/src/application.qrc new file mode 100644 index 0000000..fc756c4 --- /dev/null +++ b/src/application.qrc @@ -0,0 +1,26 @@ + + + ../resources/tieto-logo.png + ../resources/account.png + ../resources/activesessions.png + ../resources/addcontact.png + ../resources/away.png + ../resources/busy.png + ../resources/close.png + ../resources/contactfemale.png + ../resources/contactmale.png + ../resources/contacts.png + ../resources/general.png + ../resources/greenframe.png + ../resources/hidden.png + ../resources/network.png + ../resources/offline.png + ../resources/online.png + ../resources/redframe.png + ../resources/restore.png + ../resources/settings.png + ../resources/themes.png + ../resources/unknown.png + ../resources/yellowframe.png + + diff --git a/src/main.cpp b/src/main.cpp new file mode 100644 index 0000000..966d3f6 --- /dev/null +++ b/src/main.cpp @@ -0,0 +1,67 @@ +/** \file main.h + * \brief Implementation of program´s main function + * + * Tieto Open Communicator - Client for the Telepathy communications framework. + * Copyright (c) 2010, Tieto Corporation + * + * All rights reserved. + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the Tieto Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "TocMainWindow" +#include "TocEngine" + +#include +#include +#include + +int main(int argc, char *argv[]) +{ + QApplication app(argc, argv); + app.setAttribute(Qt::AA_DontShowIconsInMenus, false); + + TocEngine* engine = new TocEngine(&app); + TocMainWindow w(engine); + + if (!QDBusConnection::sessionBus().isConnected()) { + qWarning("Cannot connect to the D-Bus session bus."); + exit(1); + } + + if (!QDBusConnection::sessionBus().registerService("org.indt.tietoopcom")) { + qWarning("%s", qPrintable(QDBusConnection::sessionBus().lastError().message())); + exit(2); + } + + if (!QDBusConnection::sessionBus().registerObject("/org/indt/tietoopcom", &w, + QDBusConnection::ExportScriptableSlots)) { + qWarning("%s", qPrintable(QDBusConnection::sessionBus().lastError().message())); + exit(3); + } + + w.show(); + bool ret = app.exec(); + delete engine; + return ret; +} diff --git a/src/src.pro b/src/src.pro new file mode 100644 index 0000000..2ad9930 --- /dev/null +++ b/src/src.pro @@ -0,0 +1,36 @@ +TEMPLATE = app +TARGET = ../bin/tietoopcom +LIBS += -lQtTapioca + +PREFIX = /usr +CONFIG += debug_and_release \ + maemo_sdk qdbus +QMAKE_CXXFLAGS_RELEASE += -DQT_NO_DEBUG_OUTPUT +CONFIG(debug, debug|release) { + TARGET = $$join(TARGET,,,_debug) + MOC_DIR = ../build/debug + OBJECTS_DIR = ../build/debug + UI_DIR = ../build/debug + RCC_DIR = ../build/debug +} +CONFIG(release, debug|release) { + MOC_DIR = ../build/release + OBJECTS_DIR = ../build/release + UI_DIR = ../build/release + RCC_DIR = ../build/release +} +CONFIG(maemo_sdk) { + +} +target.path = $$PREFIX/bin +INSTALLS += target +DEPENDPATH += . +INCLUDEPATH += . + +SOURCES += main.cpp \ + TocSettings.cpp +RESOURCES += application.qrc + +include(TocUi/TocUi.pri) +include(TocEngine/TocEngine.pri) +include(../include/include.pri) diff --git a/tieto-logo.png b/tieto-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..cae81c642f8a90242f975db424c5f9901114b8b6 GIT binary patch literal 3628 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 y_iqhKM}g;s(hV*A(6SUtU##qf>