From 93cc4c7ccd36b7265aafaec2a7325b41c236ec33 Mon Sep 17 00:00:00 2001 From: John Pietrzak Date: Tue, 14 Feb 2012 00:06:47 -0500 Subject: [PATCH] Mapped rocker switch to favorite keysets In this update, I'm testing out mapping the rocker switch to the list of favorite keysets. Also, made a first pass at keysets for Digital Stream and Emerson, and added one more Admiral keyset. --- doc/documentation.html | 6 +- keysets/admiral.cpp | 60 ++++ keysets/admiral.h | 8 + keysets/digitalstream.cpp | 51 ++++ keysets/digitalstream.h | 16 ++ keysets/emerson.cpp | 100 +++++++ keysets/emerson.h | 24 ++ keysets/philips.cpp | 440 +++++++++++++++++------------- keysets/philips.h | 8 + main.cpp | 20 +- mainwindow.cpp | 38 +++ mainwindow.h | 6 + pierogi.pro | 10 +- pierogi.pro.user | 56 ++-- pirapplication.cpp | 61 +++++ pirapplication.h | 27 ++ pirkeynames.h | 1 + pirkeysetmanager.cpp | 9 + pirmakenames.cpp | 2 + pirmakenames.h | 2 + qtc_packaging/debian_fremantle/changelog | 7 + qtc_packaging/debian_fremantle/control | 4 +- www/MainTab.png | Bin 56887 -> 64423 bytes www/index.html | 6 +- 24 files changed, 737 insertions(+), 225 deletions(-) create mode 100644 keysets/digitalstream.cpp create mode 100644 keysets/digitalstream.h create mode 100644 keysets/emerson.cpp create mode 100644 keysets/emerson.h create mode 100644 pirapplication.cpp create mode 100644 pirapplication.h diff --git a/doc/documentation.html b/doc/documentation.html index e297fe3..0fe7038 100644 --- a/doc/documentation.html +++ b/doc/documentation.html @@ -61,14 +61,14 @@ If you have a particular keyset you use often, it can be stored in the

Main Tab

-

The Main tab contains just the power, volume, and channel buttons. It is -intended to be a quick way to get to the most important, commonly used +

The Main tab contains just the power, volume, mute, and channel buttons. +It is intended to be a quick way to get to the most important, commonly used controls. The name of the current keyset is also provided in this tab.

Utility Tab

The Utility tab contains a selection of commonly useful controls, such as -"Mute", "Sleep", "Input", "Closed Captions / Subtitles", and the color buttons. +"Sleep", "Input", "Closed Captions / Subtitles", and the color buttons. This tab is intended to be a quick way to reach the most frequently used buttons; as such, the selection may be updated in future versions of Pierogi.

diff --git a/keysets/admiral.cpp b/keysets/admiral.cpp index adcb060..676b988 100644 --- a/keysets/admiral.cpp +++ b/keysets/admiral.cpp @@ -1,5 +1,6 @@ #include "admiral.h" #include "protocols/sharpprotocol.h" +#include "protocols/rc5protocol.h" AdmiralTV1::AdmiralTV1( QObject *guiObject, @@ -36,6 +37,65 @@ AdmiralTV1::AdmiralTV1( } +// The following is just a guess: +AdmiralTV2::AdmiralTV2( + QObject *guiObject, + unsigned int index) + : PIRKeysetMetaData( + "TV Keyset 2", + Admiral_Make, + index) +{ + threadableProtocol = new RC5Protocol(guiObject, index); + + addKey("0", Zero_Key, 0x1000, 13); + addKey("1", One_Key, 0x1001, 13); + addKey("2", Two_Key, 0x1002, 13); + addKey("3", Three_Key, 0x1003, 13); + addKey("4", Four_Key, 0x1004, 13); + addKey("5", Five_Key, 0x1005, 13); + addKey("6", Six_Key, 0x1006, 13); + addKey("7", Seven_Key, 0x1007, 13); + addKey("8", Eight_Key, 0x1008, 13); + addKey("9", Nine_Key, 0x1009, 13); + addKey("1-", DoubleDigit_Key, 0x100A, 13); // -/-- + addKey("100", PlusOneHundred_Key, 0x100A, 13); + addKey("TV-Dash", Dash_Key, 0x100A, 13); + addKey("CP", Unmapped_Key, 0x100B, 13); // "C/P", "Channel/program/freq" + addKey("ON/OFF", Power_Key, 0x100C, 13); + addKey("MUTE", Mute_Key, 0x100D, 13); + addKey("pp", PrevChannel_Key, 0x100E, 13); // "GREEN", "Personal preference" + addKey("INFO", Info_Key, 0x100F, 13); // "+", "OSD" + + addKey("VOL+", VolumeUp_Key, 0x1010, 13); + addKey("VOL-", VolumeDown_Key, 0x1011, 13); + addKey("BRIGHTNESS_UP", BrightnessUp_Key, 0x1012, 13); + addKey("BRIGHTNESS_DOWN", BrightnessDown_Key, 0x1013, 13); + addKey("CONTRAST_UP", ContrastUp_Key, 0x1014, 13); + addKey("CONTRAST_DOWN", ContrastDown_Key, 0x1015, 13); + addKey("BASS_UP", BassUp_Key, 0x1016, 13); + addKey("BASS_DOWN", BassDown_Key, 0x1017, 13); + addKey("TREBLE_UP", TrebleUp_Key, 0x1018, 13); + addKey("TREBLE_DOWN", TrebleDown_Key, 0x1019, 13); + addKey("BALANCE_RIGHT", BalanceRight_Key, 0x101A, 13); + addKey("BALANCE_LEFT", BalanceLeft_Key, 0x101B, 13); + + addKey("P+", ChannelUp_Key, 0x1020, 13); + addKey("P-", ChannelDown_Key, 0x1021, 13); + + addKey("PIP on/off", PIP_Key, 0x1058, 13); + addKey("PIP shift", PIPMove_Key, 0x1059, 13); + addKey("PIP/main picture swap", PIPSwap_Key, 0x105A, 13); + addKey("Select PIP source", PIPSource_Key, 0x105F, 13); + addKey("PIP Freeze", PIPPause_Key, 0x1065, 13); + addKey("PIP Freeze", PIPSize_Key, 0x1068, 13); + addKey("red", Red_Key, 0x106B, 13); + addKey("green", Green_Key, 0x106C, 13); + addKey("yellow", Yellow_Key, 0x106D, 13); + addKey("cyan", Blue_Key, 0x106E, 13); +} + + AdmiralVCR1::AdmiralVCR1( QObject *guiObject, unsigned int index) diff --git a/keysets/admiral.h b/keysets/admiral.h index ec9b045..f5721e0 100644 --- a/keysets/admiral.h +++ b/keysets/admiral.h @@ -13,6 +13,14 @@ public: unsigned int index); }; +class AdmiralTV2: public PIRKeysetMetaData +{ +public: + AdmiralTV2( + QObject *guiObject, + unsigned int index); +}; + class AdmiralVCR1: public PIRKeysetMetaData { public: diff --git a/keysets/digitalstream.cpp b/keysets/digitalstream.cpp new file mode 100644 index 0000000..a873770 --- /dev/null +++ b/keysets/digitalstream.cpp @@ -0,0 +1,51 @@ +#include "digitalstream.h" +#include "protocols/necprotocol.h" + + +DigitalStreamReceiver::DigitalStreamReceiver( + QObject *guiObject, + unsigned int index) + : PIRKeysetMetaData( + "Receiver Keyset 1", + DigitalStream_Make, + index) +{ + threadableProtocol = new NECProtocol(guiObject, index, true, true); + + setPreData(0x482C, 16); + + addKey("Power", Power_Key, 0x00, 8); + addKey("Ok", Select_Key, 0x01, 8); + addKey("Up", Up_Key, 0x02, 8); + addKey("Down", Down_Key, 0x03, 8); + addKey("Left", Left_Key, 0x04, 8); + addKey("Right", Right_Key, 0x05, 8); + addKey("Vol+", VolumeUp_Key, 0x06, 8); + addKey("Vol-", VolumeDown_Key, 0x07, 8); + addKey("Channel+", ChannelUp_Key, 0x08, 8); + addKey("Channel-", ChannelDown_Key, 0x09, 8); + + addKey("0", Zero_Key, 0x10, 8); + addKey("1", One_Key, 0x11, 8); + addKey("2", Two_Key, 0x12, 8); + addKey("3", Three_Key, 0x13, 8); + addKey("4", Four_Key, 0x14, 8); + addKey("5", Five_Key, 0x15, 8); + addKey("6", Six_Key, 0x16, 8); + addKey("7", Seven_Key, 0x17, 8); + addKey("8", Eight_Key, 0x18, 8); + addKey("9", Nine_Key, 0x19, 8); + addKey("-", Dash_Key, 0x1A, 8); + addKey("Menu", Menu_Key, 0x1B, 8); + addKey("Back", Exit_Key, 0x1D, 8); + addKey("EPG", Guide_Key, 0x1E, 8); + addKey("FAV", Favorites_Key, 0x1F, 8); + + addKey("Prev", PrevChannel_Key, 0x20, 8); // ? + addKey("Mute", Mute_Key, 0x22, 8); + addKey("Audio", Audio_Key, 0x23, 8); + addKey("Zoom", Zoom_Key, 0x24, 8); + addKey("CC", Captions_Key, 0x25, 8); + addKey("Info", Info_Key, 0x28, 8); + addKey("Meter", Unmapped_Key, 0x2C, 8); +} diff --git a/keysets/digitalstream.h b/keysets/digitalstream.h new file mode 100644 index 0000000..d836c7b --- /dev/null +++ b/keysets/digitalstream.h @@ -0,0 +1,16 @@ +#ifndef DIGITALSTREAM_H +#define DIGITALSTREAM_H + +#include "pirkeysetmetadata.h" + +class QObject; + +class DigitalStreamReceiver: public PIRKeysetMetaData +{ +public: + DigitalStreamReceiver( + QObject *guiObject, + unsigned int index); +}; + +#endif // DIGITALSTREAM_H diff --git a/keysets/emerson.cpp b/keysets/emerson.cpp new file mode 100644 index 0000000..010a616 --- /dev/null +++ b/keysets/emerson.cpp @@ -0,0 +1,100 @@ +#include "emerson.h" +#include "protocols/necprotocol.h" + +EmersonTV1::EmersonTV1( + QObject *guiObject, + unsigned int index) + : PIRKeysetMetaData( + "TV Keyset 1", + Emerson_Make, + index) +{ + threadableProtocol = new NECProtocol(guiObject, index, true, false); + + setPreData(0x0586, 16); + + addKey("1", One_Key, 0x00, 8); + addKey("2", Two_Key, 0x01, 8); + addKey("3", Three_Key, 0x02, 8); + addKey("4", Four_Key, 0x03, 8); + addKey("5", Five_Key, 0x04, 8); + addKey("6", Six_Key, 0x05, 8); + addKey("7", Seven_Key, 0x06, 8); + addKey("8", Eight_Key, 0x07, 8); + addKey("9", Nine_Key, 0x08, 8); + addKey("0", Zero_Key, 0x09, 8); + addKey("CHUp", ChannelUp_Key, 0x0A, 8); + addKey("CHDown", ChannelDown_Key, 0x0B, 8); + addKey("VolUp", VolumeUp_Key, 0x0C, 8); + addKey("VolDown", VolumeDown_Key, 0x0D, 8); + addKey("Mute", Mute_Key, 0x0E, 8); + addKey("Power", Power_Key, 0x0F, 8); + + addKey("QuickView", Unmapped_Key, 0x10, 8); + addKey("Sleep", Sleep_Key, 0x13, 8); + addKey("Menu", Menu_Key, 0x14, 8); + addKey("SetUp", Up_Key, 0x15, 8); + addKey("SetDown", Down_Key, 0x16, 8); + addKey("Call", Call_Key, 0x17, 8); + addKey("Enter", Select_Key, 0x18, 8); + addKey("Reset", Reset_Key, 0x19, 8); + addKey("Caption", Captions_Key, 0x1C, 8); + addKey("CapChan", Unmapped_Key, 0x1D, 8); +} + + +EmersonDVD1::EmersonDVD1( + QObject *guiObject, + unsigned int index) + : PIRKeysetMetaData( + "DVD Keyset 1", + Emerson_Make, + index) +{ + threadableProtocol = new NECProtocol(guiObject, index, true, true); + + setPreData(0x2287, 16); + + addKey("KEY_POWER", Power_Key, 0x41, 8); + addKey("KEY_AB", RepeatAB_Key, 0x43, 8); + addKey("KEY_OPENCLOSE", Eject_Key, 0x44, 8); + addKey("KEY_1", One_Key, 0x45, 8); + addKey("KEY_2", Two_Key, 0x46, 8); + addKey("KEY_3", Three_Key, 0x47, 8); + addKey("KEY_4", Four_Key, 0x48, 8); + addKey("KEY_5", Five_Key, 0x49, 8); + addKey("KEY_6", Six_Key, 0x4A, 8); + addKey("KEY_7", Seven_Key, 0x4B, 8); + addKey("KEY_8", Eight_Key, 0x4C, 8); + addKey("KEY_9", Nine_Key, 0x4D, 8); + addKey("KEY_0", Zero_Key, 0x4E, 8); + + addKey("KEY_REPEAT", Repeat_Key, 0x50, 8); + addKey("KEY_PLUSTEN", DoubleDigit_Key, 0x51, 8); + addKey("KEY_REWIND", Rewind_Key, 0x52, 8); + addKey("KEY_FASTFORWARD", FastForward_Key, 0x53, 8); + addKey("KEY_DISPLAY", Info_Key, 0x55, 8); + addKey("KEY_SEARCHMODE", Unmapped_Key, 0x57, 8); + addKey("KEY_CLEAR", Clear_Key, 0x58, 8); + addKey("KEY_PAUSE", Pause_Key, 0x5B, 8); + addKey("KEY_MODE", Mode_Key, 0x5C, 8); + addKey("KEY_PREVIOUS", Previous_Key, 0x5D, 8); + addKey("KEY_PLAY", Play_Key, 0x5E, 8); + addKey("KEY_NEXT", Next_Key, 0x5F, 8); + + addKey("KEY_STOP", Stop_Key, 0x60, 8); + addKey("KEY_TOPMENU", DiscTitle_Key, 0x70, 8); + addKey("KEY_MENU", DiscMenu_Key, 0x71, 8); + addKey("KEY_ENTER", Select_Key, 0x72, 8); + addKey("KEY_RETURN", Exit_Key, 0x73, 8); + addKey("KEY_SETUP", Menu_Key, 0x74, 8); + addKey("KEY_LEFTARROW", Left_Key, 0x75, 8); + addKey("KEY_RIGHTARROW", Right_Key, 0x76, 8); + addKey("KEY_UPARROW", Up_Key, 0x77, 8); + addKey("KEY_DOWNARROW", Down_Key, 0x78, 8); + addKey("KEY_ANGLE", Angle_Key, 0x79, 8); + addKey("KEY_SUBTITLE", Captions_Key, 0x7A, 8); + addKey("KEY_AUDIO", Audio_Key, 0x7B, 8); + + addKey("KEY_VSURR", Surround_Key, 0x81, 8); +} diff --git a/keysets/emerson.h b/keysets/emerson.h new file mode 100644 index 0000000..179032b --- /dev/null +++ b/keysets/emerson.h @@ -0,0 +1,24 @@ +#ifndef EMERSON_H +#define EMERSON_H + +#include "pirkeysetmetadata.h" + +class QObject; + +class EmersonTV1: public PIRKeysetMetaData +{ +public: + EmersonTV1( + QObject *guiObject, + unsigned int index); +}; + +class EmersonDVD1: public PIRKeysetMetaData +{ +public: + EmersonDVD1( + QObject *guiObject, + unsigned int index); +}; + +#endif // EMERSON_H diff --git a/keysets/philips.cpp b/keysets/philips.cpp index bd4fe4c..3bea2bf 100644 --- a/keysets/philips.cpp +++ b/keysets/philips.cpp @@ -16,52 +16,45 @@ PhilipsTV1::PhilipsTV1( threadableProtocol = new RC5Protocol(guiObject, index); - addKey("ON/OFF", Power_Key, 0x100C, 13); - addKey("1", One_Key, 0x1001, 13); - addKey("2", Two_Key, 0x1002, 13); - addKey("3", Three_Key, 0x1003, 13); - addKey("4", Four_Key, 0x1004, 13); - addKey("5", Five_Key, 0x1005, 13); - addKey("6", Six_Key, 0x1006, 13); - addKey("7", Seven_Key, 0x1007, 13); - addKey("8", Eight_Key, 0x1008, 13); - addKey("9", Nine_Key, 0x1009, 13); - addKey("0", Zero_Key, 0x1000, 13); - addKey("VOL+", VolumeUp_Key, 0x1010, 13); - addKey("VOL-", VolumeDown_Key, 0x1011, 13); - addKey("MUTE", Mute_Key, 0x100D, 13); - addKey("P+", ChannelUp_Key, 0x1020, 13); - addKey("P-", ChannelDown_Key, 0x1021, 13); addKey("UP", Up_Key, 0x0010, 13); addKey("DOWN", Down_Key, 0x0011, 13); addKey("MENU", Menu_Key, 0x0012, 13); addKey("exit", Exit_Key, 0x0013, 13); addKey("LEFT", Left_Key, 0x0015, 13); addKey("RIGHT", Right_Key, 0x0016, 13); - addKey("AV", Input_Key, 0x1038, 13); // "EXT", "SOURCE" - addKey("TIMER", Sleep_Key, 0x1026, 13); // "POWER-OFF", "sleep" - addKey("TELETEXT", Teletext_Key, 0x0017, 13); - addKey("I/II", Audio_Key, 0x1023, 13); // "TEXT_REVEAL", "Stereo" - addKey("RED", Red_Key, 0x00C8, 13); - addKey("GREEN", Green_Key, 0x00FB, 13); - addKey("YELLOW", Yellow_Key, 0x00F1, 13); // "radio" - addKey("BLUE", Blue_Key, 0x10F9, 13); - addKey("CENTER", Unmapped_Key, 0x1029, 13); // "TEXT_STOP_SEQUENCE", etc. - addKey("MY_AUDIO", Unmapped_Key, 0x10D2, 13); - addKey("EXPAND", Surround_Key, 0x1024, 13); // "STEREO", "spatial" - addKey("INFO", Info_Key, 0x100F, 13); // "+", "OSD" - addKey("TEXT_TV", TeletextAndTV_Key, 0x103C, 13); // "TELETEXT" - addKey("SURF", Unmapped_Key, 0x1022, 13); - addKey("TEXT_CLOCK", TeletextTime_Key, 0x102A, 13); // "time" - addKey("TEXT_ENLARGE", TeletextSize_Key, 0x102B, 13); // "Reduce_Teletext" +// addKey("TELETEXT", Teletext_Key, 0x0017, 13); addKey("PICTURE_SETTINGS", PictureMode_Key, 0x002B, 13); addKey("SOUND_SETTINGS", SoundMode_Key, 0x002C, 13); addKey("GAME", Unmapped_Key, 0x002E, 13); + addKey("fav", Favorites_Key, 0x0039, 13); + addKey("SCREEN_WIDTH", AspectRatio_Key, 0x003E, 13); // "format" + addKey("RED", Red_Key, 0x00C8, 13); + addKey("YELLOW", Yellow_Key, 0x00F1, 13); // "radio" + addKey(".", Unmapped_Key, 0x00F8, 13); + addKey("Cinema", Unmapped_Key, 0x00F9, 13); + addKey("GREEN", Green_Key, 0x00FB, 13); + + addKey("0", Zero_Key, 0x1000, 13); + addKey("1", One_Key, 0x1001, 13); + addKey("2", Two_Key, 0x1002, 13); + addKey("3", Three_Key, 0x1003, 13); + addKey("4", Four_Key, 0x1004, 13); + addKey("5", Five_Key, 0x1005, 13); + addKey("6", Six_Key, 0x1006, 13); + addKey("7", Seven_Key, 0x1007, 13); + addKey("8", Eight_Key, 0x1008, 13); + addKey("9", Nine_Key, 0x1009, 13); addKey("1-", DoubleDigit_Key, 0x100A, 13); // -/-- addKey("100", PlusOneHundred_Key, 0x100A, 13); addKey("TV-Dash", Dash_Key, 0x100A, 13); + addKey("ON/OFF", Power_Key, 0x100C, 13); addKey("CP", Unmapped_Key, 0x100B, 13); // "C/P" + addKey("MUTE", Mute_Key, 0x100D, 13); addKey("pp", PrevChannel_Key, 0x100E, 13); // "GREEN" + addKey("INFO", Info_Key, 0x100F, 13); // "+", "OSD" + + addKey("VOL+", VolumeUp_Key, 0x1010, 13); + addKey("VOL-", VolumeDown_Key, 0x1011, 13); addKey("BRIGHTNESS_UP", BrightnessUp_Key, 0x1012, 13); addKey("BRIGHTNESS_DOWN", BrightnessDown_Key, 0x1013, 13); addKey("CONTRAST_UP", ContrastUp_Key, 0x1014, 13); @@ -73,39 +66,50 @@ PhilipsTV1::PhilipsTV1( addKey("BALANCE_RIGHT", BalanceRight_Key, 0x101A, 13); addKey("BALANCE_LEFT", BalanceLeft_Key, 0x101B, 13); addKey("TT_OUT", Unmapped_Key, 0x101D, 13); - addKey("TT_UPDOWN", TeletextSize_Key, 0x102B, 13); // "TELETEXT_RESIZE" - addKey("TT_X", TeletextOff_Key, 0x102D, 13); // "TELETEXT_OFF" - addKey("TT_TV", TeletextAndTV_Key, 0x103F, 13); addKey("TT_PLAY", TeletextReveal_Key, 0x101E, 13); - addKey("TT_INFO", Unmapped_Key, 0x102C, 13); // "TELETEXT_ADDINFO" + + addKey("P+", ChannelUp_Key, 0x1020, 13); + addKey("P-", ChannelDown_Key, 0x1021, 13); + addKey("SURF", Unmapped_Key, 0x1022, 13); + addKey("I/II", Audio_Key, 0x1023, 13); // "TEXT_REVEAL", "Stereo" + addKey("EXPAND", Surround_Key, 0x1024, 13); // "STEREO", "spatial" + addKey("TIMER", Sleep_Key, 0x1026, 13); // "POWER-OFF", "sleep" + addKey("PLAY", Play_Key, 0x1028, 13); +// addKey("CENTER", Unmapped_Key, 0x1029, 13); // "TEXT_STOP_SEQUENCE", etc. addKey("TT_STOP", TeletextHold_Key, 0x1029, 13); - addKey("TT_TIME", TeletextTime_Key, 0x102A, 13); + addKey("TEXT_CLOCK", TeletextTime_Key, 0x102A, 13); // "time", "TT_TIME" + addKey("TEXT_ENLARGE", TeletextSize_Key, 0x102B, 13); // "Reduce_Teletext" + addKey("TT_INFO", Unmapped_Key, 0x102C, 13); // "TELETEXT_ADDINFO" + addKey("TT_X", TeletextOff_Key, 0x102D, 13); // "TELETEXT_OFF" addKey("TT_MIX", Unmapped_Key, 0x102E, 13); - addKey("TELETEXT", Teletext_Key, 0x103C, 13); - // The media keys are not well described! -- config file 5373 - addKey("RECORD", Record_Key, 0x1037, 13); addKey("BACK", Unmapped_Key, 0x102F, 13); - addKey("STOP", Stop_Key, 0x1036, 13); - addKey("PLAY", Play_Key, 0x1028, 13); - addKey("FORWARD", Unmapped_Key, 0x1035, 13); - addKey("REVERSE", Unmapped_Key, 0x1033, 13); - addKey("SKIP", Unmapped_Key, 0x1177, 13); - addKey("FAST_BACK", Unmapped_Key, 0x116F, 13); - addKey("DOWN", Unmapped_Key, 0x1176, 13); - addKey("PLAY_3", Unmapped_Key, 0x1168, 13); - addKey("FAST_FORWARD", Unmapped_Key, 0x1175, 13); - addKey("SCREEN_WIDTH", AspectRatio_Key, 0x003E, 13); // "format" + addKey("vcr_rewind", Rewind_Key, 0x1032, 13); + addKey("REVERSE", Unmapped_Key, 0x1033, 13); addKey("vcr_fastforward", FastForward_Key, 0x1034, 13); - addKey("ambilight_power", Unmapped_Key, 0x10E3, 13); - addKey("ambilight_mode", Unmapped_Key, 0x10E4, 13); - addKey("fav", Favorites_Key, 0x0039, 13); - addKey(".", Unmapped_Key, 0x00F8, 13); - addKey("Cinema", Unmapped_Key, 0x00F9, 13); + addKey("FORWARD", Unmapped_Key, 0x1035, 13); + addKey("STOP", Stop_Key, 0x1036, 13); + addKey("RECORD", Record_Key, 0x1037, 13); + addKey("AV", Input_Key, 0x1038, 13); // "EXT", "SOURCE" + addKey("TELETEXT", Teletext_Key, 0x103C, 13); + addKey("TEXT_TV", TeletextAndTV_Key, 0x103C, 13); // "TELETEXT" +// addKey("TT_TV", TeletextAndTV_Key, 0x103F, 13); + + addKey("MY_AUDIO", Unmapped_Key, 0x10D2, 13); addKey("PAY-TV_UP", Unmapped_Key, 0x10DC, 13); addKey("PAY-TV_DOWN", Unmapped_Key, 0x10DD, 13); addKey("RADIO_UP", Unmapped_Key, 0x10DE, 13); addKey("RADIO_DOWN", Unmapped_Key, 0x10DF, 13); + addKey("ambilight_power", Unmapped_Key, 0x10E3, 13); + addKey("ambilight_mode", Unmapped_Key, 0x10E4, 13); + addKey("BLUE", Blue_Key, 0x10F9, 13); + + // The media keys are not well described! -- config file 5373 + addKey("FAST_BACK", Unmapped_Key, 0x116F, 13); + addKey("PLAY_3", Unmapped_Key, 0x1168, 13); + addKey("FAST_FORWARD", Unmapped_Key, 0x1175, 13); + addKey("DOWN", Unmapped_Key, 0x1176, 13); + addKey("SKIP", Unmapped_Key, 0x1177, 13); } @@ -131,8 +135,8 @@ PhilipsTV1b::PhilipsTV1b( addControlledDevice(Philips_Make, "29PT5507", TV_Device); - addKey("sound", Unmapped_Key, 0x1014, 13); addKey("radio", Unmapped_Key, 0x00F1, 13); + addKey("sound", Unmapped_Key, 0x1014, 13); addKey("screen", Unmapped_Key, 0x1015, 13); addKey("rec", Record_Key, 0x002B, 13); addKey("rewind", Rewind_Key, 0x002C, 13); @@ -410,25 +414,7 @@ PhilipsDVD1::PhilipsDVD1( threadableProtocol = new RC6Protocol(guiObject, index, 0x04); - addKey("Standby", Power_Key, 0x0C, 8); - addKey("Forward", FastForward_Key, 0x28, 8); - addKey("Rewind", Rewind_Key, 0x29, 8); - addKey("Stop", Stop_Key, 0x31, 8); - addKey("Play", Play_Key, 0x2C, 8); - addKey("Still", Pause_Key, 0x30, 8); // "pause" - addKey("Subtitle", Captions_Key, 0x4B, 8); - addKey("Title", DiscTitle_Key, 0x71, 8); - addKey("Menu", DiscMenu_Key, 0x54, 8); - addKey("System_Menu", Menu_Key, 0x82, 8); // "setup" - addKey("OK", Select_Key, 0x5C, 8); - addKey("Left", Left_Key, 0x5A, 8); - addKey("Right", Right_Key, 0x5B, 8); - addKey("Up", Up_Key, 0x58, 8); - addKey("Down", Down_Key, 0x59, 8); - addKey("Return", Exit_Key, 0x83, 8); - addKey("Skip_Right", Next_Key, 0x20, 8); // "next" - addKey("Skip_Left", Previous_Key, 0x21, 8); // "prev" - addKey("Audio", Audio_Key, 0x4E, 8); + addKey("0", Zero_Key, 0x00, 8); addKey("1", One_Key, 0x01, 8); addKey("2", Two_Key, 0x02, 8); addKey("3", Three_Key, 0x03, 8); @@ -438,21 +424,46 @@ PhilipsDVD1::PhilipsDVD1( addKey("7", Seven_Key, 0x07, 8); addKey("8", Eight_Key, 0x08, 8); addKey("9", Nine_Key, 0x09, 8); - addKey("0", Zero_Key, 0x00, 8); + addKey("Standby", Power_Key, 0x0C, 8); + addKey("Mute", Mute_Key, 0x0D, 8); addKey("Display", Info_Key, 0x0F, 8); - addKey("Angle", Angle_Key, 0x85, 8); - addKey("Zoom", Zoom_Key, 0xF7, 8); - addKey("Repeat", Repeat_Key, 0x1D, 8); - addKey("Repeat_AB", RepeatAB_Key, 0x3B, 8); + + addKey("dim", Unmapped_Key, 0x13, 8); addKey("Shuffle", Random_Key, 0x1C, 8); + addKey("Repeat", Repeat_Key, 0x1D, 8); + + addKey("Skip_Right", Next_Key, 0x20, 8); // "next" + addKey("Skip_Left", Previous_Key, 0x21, 8); // "prev" + addKey("Forward", FastForward_Key, 0x28, 8); + addKey("Rewind", Rewind_Key, 0x29, 8); addKey("Scan", Scan_Key, 0x2A, 8); - addKey("Secret", Unmapped_Key, 0xEB, 8); + addKey("Play", Play_Key, 0x2C, 8); + + addKey("Still", Pause_Key, 0x30, 8); // "pause" + addKey("Stop", Stop_Key, 0x31, 8); + addKey("Repeat_AB", RepeatAB_Key, 0x3B, 8); + + addKey("open-close", Eject_Key, 0x42, 8); + addKey("Subtitle", Captions_Key, 0x4B, 8); + addKey("Audio", Audio_Key, 0x4E, 8); + + addKey("sound-mode", SoundMode_Key, 0x50, 8); + addKey("Menu", DiscMenu_Key, 0x54, 8); + addKey("Up", Up_Key, 0x58, 8); + addKey("Down", Down_Key, 0x59, 8); + addKey("Left", Left_Key, 0x5A, 8); + addKey("Right", Right_Key, 0x5B, 8); + addKey("OK", Select_Key, 0x5C, 8); + + addKey("Title", DiscTitle_Key, 0x71, 8); + addKey("System_Menu", Menu_Key, 0x82, 8); // "setup" + addKey("Return", Exit_Key, 0x83, 8); + addKey("Angle", Angle_Key, 0x85, 8); addKey("Preview", Unmapped_Key, 0xB5, 8); - addKey("Mute", Mute_Key, 0x0D, 8); addKey("T-C", Unmapped_Key, 0xC8, 8); - addKey("dim", Unmapped_Key, 0x13, 8); + addKey("Secret", Unmapped_Key, 0xEB, 8); + addKey("Zoom", Zoom_Key, 0xF7, 8); addKey("fts", Unmapped_Key, 0xFB, 8); - addKey("sound-mode", SoundMode_Key, 0x50, 8); } @@ -465,9 +476,9 @@ PhilipsDVD1a::PhilipsDVD1a( addControlledDevice(Philips_Make, "DVP-5982", DVD_Device); - addKey("Power", Power_Key, 0xC7, 8); addKey("Play_Pause", Pause_Key, 0x2C, 8); addKey("USB", Unmapped_Key, 0x7E, 8); + addKey("Power", Power_Key, 0xC7, 8); } @@ -480,9 +491,9 @@ PhilipsDVD1b::PhilipsDVD1b( addControlledDevice(Philips_Make, "DVP-642", DVD_Device); - addKey("Title", DiscTitle_Key, 0x83, 8); addKey("Forward", FastForward_Key, 0x20, 8); addKey("Reverse", Rewind_Key, 0x21, 8); + addKey("Title", DiscTitle_Key, 0x83, 8); } @@ -491,19 +502,18 @@ PhilipsDVD1c::PhilipsDVD1c( unsigned int index) : PhilipsDVD1(guiObject, index) { - setKeysetName("DVD (HT) Keyset 1c"); + setKeysetName("DVD Keyset 1c"); addControlledDevice(Philips_Make, "HTS3544", DVD_Device); addControlledDevice(Philips_Make, "DVP5982", DVD_Device); - addKey("power", Power_Key, 0xC7, 8); - addKey("disc-usb", Unmapped_Key, 0x3F, 8); - addKey("open-close", Eject_Key, 0x42, 8); - addKey("program", Program_Key, 0xFB, 8); - addKey("menu", DiscMenu_Key, 0xD1, 8); - addKey("title", DiscTitle_Key, 0x83, 8); addKey("play-pause", Pause_Key, 0x2C, 8); + addKey("disc-usb", Unmapped_Key, 0x3F, 8); addKey("USB", Unmapped_Key, 0x7E, 8); + addKey("title", DiscTitle_Key, 0x83, 8); + addKey("power", Power_Key, 0xC7, 8); + addKey("menu", DiscMenu_Key, 0xD1, 8); + addKey("program", Program_Key, 0xFB, 8); } @@ -516,9 +526,9 @@ PhilipsDVD1d::PhilipsDVD1d( addControlledDevice(Philips_Make, "DVD 963sa", DVD_Device); - addKey("display", Info_Key, 0x48, 8); - addKey("ff-left", Rewind_Key, 0x21, 8); addKey("ff-right", FastForward_Key, 0x20, 8); + addKey("ff-left", Rewind_Key, 0x21, 8); + addKey("display", Info_Key, 0x48, 8); } @@ -532,33 +542,7 @@ PhilipsDVD2::PhilipsDVD2( { threadableProtocol = new RC6Protocol(guiObject, index, 0x46); - addKey("power", Power_Key, 0xC7, 8); - addKey("topmenu", DiscTitle_Key, 0x9C, 8); - addKey("bonus", Unmapped_Key, 0x5D, 8); - addKey("repeat", Repeat_Key, 0x1D, 8); - addKey("hdmi", HDMIInput_Key, 0xC6, 8); - addKey("red", Red_Key, 0x6D, 8); - addKey("green", Green_Key, 0x6E, 8); - addKey("yellow", Yellow_Key, 0x6F, 8); - addKey("blue", Blue_Key, 0x70, 8); - addKey("home", Menu_Key, 0x92, 8); - addKey("menu", DiscMenu_Key, 0x9A, 8); - addKey("options", Unmapped_Key, 0xC9, 8); - addKey("up", Up_Key, 0x58, 8); - addKey("left", Left_Key, 0x5A, 8); - addKey("right", Right_Key, 0x5B, 8); - addKey("down", Down_Key, 0x59, 8); - addKey("ok", Select_Key, 0x5C, 8); - addKey("back", Exit_Key, 0x83, 8); - addKey("info", Info_Key, 0x0F, 8); - addKey("prev", Previous_Key, 0x21, 8); - addKey("play", Play_Key, 0x2C, 8); - addKey("pause", Pause_Key, 0x30, 8); - addKey("next", Next_Key, 0x20, 8); - addKey("bwd", Rewind_Key, 0x29, 8); - addKey("stop", Stop_Key, 0x31, 8); - addKey("fwd", FastForward_Key, 0x28, 8); - addKey("eject", Eject_Key, 0x42, 8); + addKey("0", Zero_Key, 0x00, 8); addKey("1", One_Key, 0x01, 8); addKey("2", Two_Key, 0x02, 8); addKey("3", Three_Key, 0x03, 8); @@ -568,9 +552,41 @@ PhilipsDVD2::PhilipsDVD2( addKey("7", Seven_Key, 0x07, 8); addKey("8", Eight_Key, 0x08, 8); addKey("9", Nine_Key, 0x09, 8); - addKey("0", Zero_Key, 0x00, 8); + addKey("info", Info_Key, 0x0F, 8); + + addKey("repeat", Repeat_Key, 0x1D, 8); + + addKey("next", Next_Key, 0x20, 8); + addKey("prev", Previous_Key, 0x21, 8); + addKey("fwd", FastForward_Key, 0x28, 8); + addKey("bwd", Rewind_Key, 0x29, 8); + addKey("play", Play_Key, 0x2C, 8); + addKey("pause", Pause_Key, 0x30, 8); + addKey("stop", Stop_Key, 0x31, 8); + + addKey("eject", Eject_Key, 0x42, 8); addKey("subtitle", Captions_Key, 0x4B, 8); addKey("audio", Audio_Key, 0x4E, 8); + + addKey("up", Up_Key, 0x58, 8); + addKey("down", Down_Key, 0x59, 8); + addKey("left", Left_Key, 0x5A, 8); + addKey("right", Right_Key, 0x5B, 8); + addKey("ok", Select_Key, 0x5C, 8); + addKey("bonus", Unmapped_Key, 0x5D, 8); + + addKey("red", Red_Key, 0x6D, 8); + addKey("green", Green_Key, 0x6E, 8); + addKey("yellow", Yellow_Key, 0x6F, 8); + addKey("blue", Blue_Key, 0x70, 8); + + addKey("back", Exit_Key, 0x83, 8); + addKey("home", Menu_Key, 0x92, 8); + addKey("menu", DiscMenu_Key, 0x9A, 8); + addKey("topmenu", DiscTitle_Key, 0x9C, 8); + addKey("hdmi", HDMIInput_Key, 0xC6, 8); + addKey("power", Power_Key, 0xC7, 8); + addKey("options", Unmapped_Key, 0xC9, 8); } @@ -586,40 +602,6 @@ PhilipsDVD3::PhilipsDVD3( threadableProtocol = new RC6Protocol(guiObject, index, 0x32); - addKey("Power", Power_Key, 0x0C, 8); - addKey("Edit", Unmapped_Key, 0xF1, 8); - addKey("LiveTV", LiveTV_Key, 0xEE, 8); - addKey("Disc", DiscMenu_Key, 0xD1, 8); - addKey("Select", Unmapped_Key, 0xC9, 8); - addKey("Cam", Unmapped_Key, 0xC3, 8); - addKey("TVGuide", Guide_Key, 0xC2, 8); - addKey("Home", Menu_Key, 0x92, 8); - addKey("HDDLIst", Unmapped_Key, 0x90, 8); - addKey("Back", Unmapped_Key, 0x83, 8); - addKey("Options", Unmapped_Key, 0x82, 8); - addKey("USB", Unmapped_Key, 0x7E, 8); - addKey("Blue", Blue_Key, 0x70, 8); - addKey("Yellow", Yellow_Key, 0x6F, 8); - addKey("Green", Green_Key, 0x6E, 8); - addKey("Red", Red_Key, 0x6D, 8); - addKey("OK", Select_Key, 0x5C, 8); - addKey("Right", Right_Key, 0x5B, 8); - addKey("Left", Left_Key, 0x5A, 8); - addKey("Down", Down_Key, 0x59, 8); - addKey("Up", Up_Key, 0x58, 8); - addKey("Audio", Audio_Key, 0x4E, 8); - addKey("Subtitle", Captions_Key, 0x4B, 8); - addKey("Scart", ScartInput_Key, 0x43, 8); - addKey("Rec", Record_Key, 0x37, 8); - addKey("Stop", Stop_Key, 0x31, 8); - addKey("Play", Play_Key, 0x2C, 8); - addKey("Rew", Rewind_Key, 0x29, 8); - addKey("Ffw", FastForward_Key, 0x28, 8); - addKey("Prev", Previous_Key, 0x21, 8); - addKey("Next", Next_Key, 0x20, 8); - addKey("Ch-", ChannelDown_Key, 0x10, 8); - addKey("Ch+", ChannelUp_Key, 0x11, 8); - addKey("Info", Info_Key, 0x0F, 8); addKey("0", Zero_Key, 0x00, 8); addKey("1", One_Key, 0x01, 8); addKey("2", Two_Key, 0x02, 8); @@ -630,6 +612,79 @@ PhilipsDVD3::PhilipsDVD3( addKey("7", Seven_Key, 0x07, 8); addKey("8", Eight_Key, 0x08, 8); addKey("9", Nine_Key, 0x09, 8); + addKey("Power", Power_Key, 0x0C, 8); + addKey("Info", Info_Key, 0x0F, 8); + + addKey("Ch-", ChannelDown_Key, 0x10, 8); + addKey("Ch+", ChannelUp_Key, 0x11, 8); + addKey("shuffle", Random_Key, 0x1C, 8); + addKey("repeat", Repeat_Key, 0x1D, 8); + + addKey("Next", Next_Key, 0x20, 8); + addKey("Prev", Previous_Key, 0x21, 8); + addKey("Ffw", FastForward_Key, 0x28, 8); + addKey("Rew", Rewind_Key, 0x29, 8); + addKey("Play", Play_Key, 0x2C, 8); + addKey("Play", Pause_Key, 0x2C, 8); + addKey("Stop", Stop_Key, 0x31, 8); + addKey("Rec", Record_Key, 0x37, 8); + + addKey("Scart", ScartInput_Key, 0x43, 8); + addKey("Subtitle", Captions_Key, 0x4B, 8); + addKey("Audio", Audio_Key, 0x4E, 8); + + addKey("Up", Up_Key, 0x58, 8); + addKey("Down", Down_Key, 0x59, 8); + addKey("Left", Left_Key, 0x5A, 8); + addKey("Right", Right_Key, 0x5B, 8); + addKey("OK", Select_Key, 0x5C, 8); + addKey("inputnext", Input_Key, 0x5E, 8); + + addKey("Last_ch", PrevChannel_Key, 0x6A, 8); + addKey("Red", Red_Key, 0x6D, 8); + addKey("Green", Green_Key, 0x6E, 8); + addKey("Yellow", Yellow_Key, 0x6F, 8); + addKey("Blue", Blue_Key, 0x70, 8); + addKey("USB", Unmapped_Key, 0x7E, 8); + + addKey("Options", Unmapped_Key, 0x82, 8); + addKey("Back", Exit_Key, 0x83, 8); // "Exit" + addKey("angle", Angle_Key, 0x85, 8); + addKey("inoputtuner", TunerInput_Key, 0x8A, 8); + + addKey("HDDList", Unmapped_Key, 0x90, 8); + addKey("Home", Menu_Key, 0x92, 8); + + addKey("TVGuide", Guide_Key, 0xC2, 8); + addKey("Cam", Unmapped_Key, 0xC3, 8); + addKey("t/c", Unmapped_Key, 0xC8, 8); // title/chapter + addKey("Select", Unmapped_Key, 0xC9, 8); // "menuselect" + + addKey("Disc", DiscMenu_Key, 0xD1, 8); + addKey("zoom", Zoom_Key, 0xD3, 8); + addKey("LiveTV", LiveTV_Key, 0xEE, 8); + addKey("Edit", Unmapped_Key, 0xF1, 8); + addKey("timer", Timer_Key, 0xFE, 8); +} + + +PhilipsDVD3a::PhilipsDVD3a( + QObject *guiObject, + unsigned int index) + : PhilipsDVD3(guiObject, index) +{ + setKeysetName("DVD Keyset 3a"); + + addControlledDevice(Philips_Make, "DVDR-3455H", DVD_Device); + + addKey("CH+", ChannelUp_Key, 0x1E, 8); + addKey("CH-", ChannelDown_Key, 0x1F, 8); + addKey("Menu", Menu_Key, 0x54, 8); + addKey("InputDVD", Unmapped_Key, 0x90, 8); + addKey("InputHDD", Unmapped_Key, 0x92, 8); + addKey("inputusb", USBInput_Key, 0xC3, 8); + addKey("Audio", Audio_Key, 0xD2, 8); + addKey("Record", Record_Key, 0xF3, 8); } @@ -645,29 +700,7 @@ PhilipsDVD4::PhilipsDVD4( threadableProtocol = new RC6Protocol(guiObject, index, 0x30); - addKey("Power", Power_Key, 0x0C, 8); - addKey("TVDVD", Input_Key, 0x43, 8); - addKey("STOP", Stop_Key, 0x31, 8); - addKey("RECORD", Record_Key, 0x37, 8); - addKey("PLAY", Play_Key, 0x2C, 8); - addKey("REWIND", Rewind_Key, 0x29, 8); - addKey("PAUSE", Pause_Key, 0x30, 8); - addKey("SLOW", Slow_Key, 0x22, 8); - addKey("FORWARD", FastForward_Key, 0x28, 8); - addKey("PREVIOUS", Previous_Key, 0x21, 8); - addKey("NEXT", Next_Key, 20, 8); - addKey("DISC", Unmapped_Key, 0x54, 8); - addKey("EDIT", Unmapped_Key, 0xCF, 8); - addKey("SYSTEM", Info_Key, 0x0F, 8); - addKey("UP", Up_Key, 0x58, 8); - addKey("DOWN", Down_Key, 0x59, 8); - addKey("LEFT", Left_Key, 0x5A, 8); - addKey("RIGHT", Right_Key, 0x5B, 8); - addKey("CLEAR", Clear_Key, 0x41, 8); - addKey("TIMER", Timer_Key, 0xFE, 8); - addKey("SELECT", Select_Key, 0xFA, 8); - addKey("PROGPLUS", ChannelUp_Key, 0x1E, 8); - addKey("PROGMINUS", ChannelDown_Key, 0x1F, 8); + addKey("0", Zero_Key, 0x00, 8); addKey("1", One_Key, 0x01, 8); addKey("2", Two_Key, 0x02, 8); addKey("3", Three_Key, 0x03, 8); @@ -677,17 +710,48 @@ PhilipsDVD4::PhilipsDVD4( addKey("7", Seven_Key, 0x07, 8); addKey("8", Eight_Key, 0x08, 8); addKey("9", Nine_Key, 0x09, 8); - addKey("0", Zero_Key, 0x00, 8); - addKey("TC", Unmapped_Key, 0xC8, 8); - addKey("TUNER", TunerInput_Key, 0xEE, 8); - addKey("ZOOM", Zoom_Key, 0xF7, 8); - addKey("ANGLE", Angle_Key, 0x85, 8); - addKey("SUBTITLE", Captions_Key, 0x4B, 8); - addKey("AUDIO", Audio_Key, 0x4E, 8); + + addKey("Power", Power_Key, 0x0C, 8); + addKey("SYSTEM", Info_Key, 0x0F, 8); + addKey("DIM", Unmapped_Key, 0x13, 8); addKey("REPEAT", Repeat_Key, 0x1D, 8); - addKey("REPEATAB", RepeatAB_Key, 0x3B, 8); + addKey("PROGPLUS", ChannelUp_Key, 0x1E, 8); + addKey("PROGMINUS", ChannelDown_Key, 0x1F, 8); + + addKey("NEXT", Next_Key, 0x20, 8); + addKey("PREVIOUS", Previous_Key, 0x21, 8); + addKey("SLOW", Slow_Key, 0x22, 8); + addKey("FORWARD", FastForward_Key, 0x28, 8); + addKey("REWIND", Rewind_Key, 0x29, 8); addKey("SCAN", Scan_Key, 0x2A, 8); + addKey("PLAY", Play_Key, 0x2C, 8); + addKey("PAUSE", Pause_Key, 0x30, 8); + addKey("STOP", Stop_Key, 0x31, 8); + addKey("RECORD", Record_Key, 0x37, 8); + addKey("REPEATAB", RepeatAB_Key, 0x3B, 8); + + addKey("CLEAR", Clear_Key, 0x41, 8); + addKey("TVDVD", Input_Key, 0x43, 8); + addKey("SUBTITLE", Captions_Key, 0x4B, 8); + addKey("AUDIO", Audio_Key, 0x4E, 8); + + addKey("DISC", Unmapped_Key, 0x54, 8); + addKey("UP", Up_Key, 0x58, 8); + addKey("DOWN", Down_Key, 0x59, 8); + addKey("LEFT", Left_Key, 0x5A, 8); + addKey("RIGHT", Right_Key, 0x5B, 8); + + addKey("ANGLE", Angle_Key, 0x85, 8); + + addKey("TC", Unmapped_Key, 0xC8, 8); + addKey("EDIT", Unmapped_Key, 0xCF, 8); + + addKey("TUNER", TunerInput_Key, 0xEE, 8); + + addKey("ZOOM", Zoom_Key, 0xF7, 8); + addKey("SELECT", Select_Key, 0xFA, 8); + addKey("TIMER", Timer_Key, 0xFE, 8); } diff --git a/keysets/philips.h b/keysets/philips.h index 7cc5651..672ca5e 100644 --- a/keysets/philips.h +++ b/keysets/philips.h @@ -149,6 +149,14 @@ public: unsigned int index); }; +class PhilipsDVD3a: public PhilipsDVD3 +{ +public: + PhilipsDVD3a( + QObject *guiObject, + unsigned int index); +}; + class PhilipsDVD4: public PIRKeysetMetaData { public: diff --git a/main.cpp b/main.cpp index db0d632..c6feb48 100644 --- a/main.cpp +++ b/main.cpp @@ -1,15 +1,33 @@ #include "mainwindow.h" +#include "pirapplication.h" #include int main(int argc, char *argv[]) { - QApplication app(argc, argv); +// QApplication app(argc, argv); + PIRApplication app(argc, argv); MainWindow mainWindow; mainWindow.setOrientation(MainWindow::ScreenOrientationLockLandscape); // mainWindow.setOrientation(MainWindow::ScreenOrientationAuto); mainWindow.showExpanded(); + // Take control over the volume rocker switch: + app.setupRockerSwitch(&mainWindow); + app.setupRockerSwitch(mainWindow.getSecondaryWindow()); + + app.connect( + &app, + SIGNAL(decreaseRockerPressed()), + &mainWindow, + SLOT(selectPrevFavKeyset())); + + app.connect( + &app, + SIGNAL(increaseRockerPressed()), + &mainWindow, + SLOT(selectNextFavKeyset())); + // A connection to perform any final cleanup work: app.connect( &app, diff --git a/mainwindow.cpp b/mainwindow.cpp index 3a88a6f..f36cfc1 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -1059,3 +1059,41 @@ void MainWindow::stopRepeating() stopRepeatingFlag = true; } + +QWidget *MainWindow::getSecondaryWindow() +{ + return secondaryForm; +} + + +void MainWindow::selectPrevFavKeyset() +{ + int position = ui->favoriteKeysetsWidget->currentRow(); + + --position; + if (position < 0) + { + position = ui->favoriteKeysetsWidget->count() - 1; + } + + ui->favoriteKeysetsWidget->setCurrentRow( + position, + QItemSelectionModel::ClearAndSelect); +} + + +void MainWindow::selectNextFavKeyset() +{ + int size = ui->favoriteKeysetsWidget->count(); + int position = ui->favoriteKeysetsWidget->currentRow(); + + ++position; + if (position == size) + { + position = 0; + } + + ui->favoriteKeysetsWidget->setCurrentRow( + position, + QItemSelectionModel::ClearAndSelect); +} diff --git a/mainwindow.h b/mainwindow.h index 238c5bd..514b3db 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -41,6 +41,9 @@ public: void stopRepeating(); + // This is a bit of a hack: + QWidget *getSecondaryWindow(); + signals: // Main keys void powerEnabled(bool); @@ -159,6 +162,9 @@ public slots: void receivedExternalWarning( const char *warning); + void selectPrevFavKeyset(); + void selectNextFavKeyset(); + private slots: // Main tab slots: void on_powerButton_pressed(); diff --git a/pierogi.pro b/pierogi.pro index 3d41001..03c81e6 100644 --- a/pierogi.pro +++ b/pierogi.pro @@ -100,7 +100,10 @@ SOURCES += main.cpp mainwindow.cpp \ keysets/saba.cpp \ keysets/sky.cpp \ protocols/rc6skyprotocol.cpp \ - protocols/thomsonprotocol.cpp + protocols/thomsonprotocol.cpp \ + keysets/digitalstream.cpp \ + pirapplication.cpp \ + keysets/emerson.cpp HEADERS += mainwindow.h \ pirkeynames.h \ pirmakenames.h \ @@ -177,7 +180,10 @@ HEADERS += mainwindow.h \ keysets/saba.h \ keysets/sky.h \ protocols/rc6skyprotocol.h \ - protocols/thomsonprotocol.h + protocols/thomsonprotocol.h \ + keysets/digitalstream.h \ + pirapplication.h \ + keysets/emerson.h FORMS += mainwindow.ui \ pirdocumentationform.ui \ piraboutform.ui \ diff --git a/pierogi.pro.user b/pierogi.pro.user index 05576b3..ea0f5eb 100644 --- a/pierogi.pro.user +++ b/pierogi.pro.user @@ -1,6 +1,6 @@ - + ProjectExplorer.Project.ActiveTarget @@ -79,7 +79,7 @@ dpkg-buildpackage -sa -S -uc -us /Users/john/QtSDK/Maemo/4.6.2/bin/mad true - /Users/john/Develop/n900/pierogi-0.6.2 + /Users/john/Develop/n900/pierogi-0.6.3 Custom Process Step ProjectExplorer.ProcessStep @@ -182,23 +182,24 @@ MaemoMountAndInstallDeployStep - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_5_0_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_5_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_6_2_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_6_1_armel.deb /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_4_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_6_0_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_3_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_2_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_1_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_0_1_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_0_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_5_1_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_6_1_armel.deb /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_5_3_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_6_3_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_1_armel.deb /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_7_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_3_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_5_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_5_0_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_0_1_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_6_0_armel.deb /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_5_2_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_6_2_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_0_armel.deb /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_0_1_armel.deb /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_6_armel.deb - /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_5_1_armel.deb + /Users/john/Develop/n900/pierogi-build-maemo-Qt_for_Fremantle_PR1_3_Devices__Qt_SDK__Release/pierogi_0_1_2_armel.deb 192.168.0.15 @@ -211,11 +212,12 @@ 192.168.0.15 192.168.0.15 192.168.0.15 + localhost + 192.168.0.15 192.168.0.15 192.168.0.15 192.168.0.15 192.168.0.15 - localhost 192.168.0.15 192.168.0.15 @@ -237,25 +239,27 @@ + - 2012-02-03T10:04:34 - 2012-01-23T09:47:37 - 2012-02-12T23:16:00 - 2012-02-12T23:10:44 2012-01-19T22:18:07 - 2012-02-11T18:03:15 - 2012-01-17T13:21:05 - 2012-01-17T12:19:28 - 2012-01-17T00:15:23 - 2012-01-14T13:11:32 - 2012-01-17T00:03:13 + 2012-02-06T17:22:16 + 2012-02-12T23:10:44 2012-02-09T18:12:21 + 2012-02-13T23:56:12 + 2012-01-17T00:15:23 2012-01-30T20:23:06 - 2012-02-08T20:29:28 + 2012-01-17T13:21:05 + 2012-01-23T09:47:37 + 2012-02-03T10:04:34 2012-01-01T15:35:35 + 2012-02-11T18:03:15 + 2012-02-08T20:29:28 + 2012-02-13T22:02:56 + 2012-01-17T00:03:13 + 2012-01-14T13:11:32 2012-01-25T13:42:55 - 2012-02-06T17:22:16 + 2012-01-17T12:19:28 3 diff --git a/pirapplication.cpp b/pirapplication.cpp new file mode 100644 index 0000000..66d240a --- /dev/null +++ b/pirapplication.cpp @@ -0,0 +1,61 @@ +#include "pirapplication.h" + +#include +#include +#include +#include + +PIRApplication::PIRApplication( + int &argc, + char **argv) + : QApplication(argc, argv) +{ +} + + +void PIRApplication::setupRockerSwitch(QWidget *window) +{ + // free the rocker switch from the volume controls: + unsigned long val = 1; + + Atom atom = XInternAtom(QX11Info::display(), "_HILDON_ZOOM_KEY_ATOM", 0); + + XChangeProperty( + QX11Info::display(), + window->winId(), + atom, + XA_INTEGER, + 32, + PropModeReplace, + (unsigned char *) &val, + 1); +} + + +bool PIRApplication::x11EventFilter( + XEvent *event) +{ + // Return true means we will consume the event here; return false means + // letting the event continue to be passed up the chain. + + if (event->type == KeyPress) + { + // Check for function key 7 (keycode 73) or for "Zoom Out" button: + if ( + event->xkey.keycode == 73 || + event->xkey.keycode == QKeySequence::ZoomOut) + { + emit decreaseRockerPressed(); + return true; + } + else if ( + event->xkey.keycode == 74 || + event->xkey.keycode == QKeySequence::ZoomIn) + { + emit increaseRockerPressed(); + return true; + } + } + + return false; +} diff --git a/pirapplication.h b/pirapplication.h new file mode 100644 index 0000000..16d4194 --- /dev/null +++ b/pirapplication.h @@ -0,0 +1,27 @@ +#ifndef PIRAPPLICATION_H +#define PIRAPPLICATION_H + +#include + +class QWidget; + +class PIRApplication: public QApplication +{ + Q_OBJECT +public: + PIRApplication( + int &argc, + char **argv); + + void setupRockerSwitch( + QWidget *window); + + virtual bool x11EventFilter( + XEvent *event); + +signals: + void increaseRockerPressed(); + void decreaseRockerPressed(); +}; + +#endif // PIRAPPLICATION_H diff --git a/pirkeynames.h b/pirkeynames.h index 7c50d61..0f5c6c6 100644 --- a/pirkeynames.h +++ b/pirkeynames.h @@ -180,6 +180,7 @@ enum PIRKeyName{ DVRInput_Key, OpticalInput_Key, DigitalCoaxInput_Key, + USBInput_Key, // "Program" Controls: Program_Key, diff --git a/pirkeysetmanager.cpp b/pirkeysetmanager.cpp index ba75e37..e769dd1 100644 --- a/pirkeysetmanager.cpp +++ b/pirkeysetmanager.cpp @@ -11,8 +11,10 @@ #include "keysets/bose.h" #include "keysets/daewoo.h" #include "keysets/denon.h" +#include "keysets/digitalstream.h" #include "keysets/ei.h" #include "keysets/elgato.h" +#include "keysets/emerson.h" #include "keysets/goldstar.h" #include "keysets/grundig.h" #include "keysets/hauppauge.h" @@ -71,6 +73,7 @@ PIRKeysetManager::PIRKeysetManager( populateKeyset(new AcerPC1(guiObject, counter++)); populateKeyset(new AdmiralTV1(guiObject, counter++)); + populateKeyset(new AdmiralTV2(guiObject, counter++)); populateKeyset(new AdmiralVCR1(guiObject, counter++)); populateKeyset(new AiwaVCR1(guiObject, counter++)); @@ -125,10 +128,15 @@ PIRKeysetManager::PIRKeysetManager( populateKeyset(new DenonAudio3(guiObject, counter++)); populateKeyset(new DenonAudio4(guiObject, counter++)); + populateKeyset(new DigitalStreamReceiver(guiObject, counter++)); + populateKeyset(new EiTV1(guiObject, counter++)); populateKeyset(new ElgatoEyeTV1(guiObject, counter++)); + populateKeyset(new EmersonTV1(guiObject, counter++)); + populateKeyset(new EmersonDVD1(guiObject, counter++)); + populateKeyset(new GoldStarTV1(guiObject, counter++)); populateKeyset(new GoldStarTV2(guiObject, counter++)); populateKeyset(new GoldStarVCR1(guiObject, counter++)); @@ -256,6 +264,7 @@ PIRKeysetManager::PIRKeysetManager( populateKeyset(new PhilipsDVD1d(guiObject, counter++)); populateKeyset(new PhilipsDVD2(guiObject, counter++)); populateKeyset(new PhilipsDVD3(guiObject, counter++)); + populateKeyset(new PhilipsDVD3a(guiObject, counter++)); populateKeyset(new PhilipsDVD4(guiObject, counter++)); populateKeyset(new PhilipsVCR1(guiObject, counter++)); populateKeyset(new PhilipsVCR1a(guiObject, counter++)); diff --git a/pirmakenames.cpp b/pirmakenames.cpp index 7338b8a..d4c8990 100644 --- a/pirmakenames.cpp +++ b/pirmakenames.cpp @@ -12,8 +12,10 @@ PIRMakeMgr::PIRMakeMgr() makes[Bose_Make] = "Bose"; makes[Daewoo_Make] = "Daewoo"; makes[Denon_Make] = "Denon"; + makes[DigitalStream_Make] = "Digital Stream"; makes[Ei_Make] = "Ei"; makes[Elgato_Make] = "Elgato"; + makes[Emerson_Make] = "Emerson"; makes[GoldStar_Make] = "GoldStar"; makes[Grundig_Make] = "Grundig"; makes[Hauppauge_Make] = "Hauppauge"; diff --git a/pirmakenames.h b/pirmakenames.h index 9f0692d..fab1ffe 100644 --- a/pirmakenames.h +++ b/pirmakenames.h @@ -13,8 +13,10 @@ enum PIRMakeName{ Bose_Make, Daewoo_Make, Denon_Make, + DigitalStream_Make, Ei_Make, Elgato_Make, + Emerson_Make, GoldStar_Make, Grundig_Make, Hauppauge_Make, diff --git a/qtc_packaging/debian_fremantle/changelog b/qtc_packaging/debian_fremantle/changelog index 9cd34db..4949d83 100644 --- a/qtc_packaging/debian_fremantle/changelog +++ b/qtc_packaging/debian_fremantle/changelog @@ -1,3 +1,10 @@ +pierogi (0.6.3) unstable; urgency=low + * Mapped the volume rocker to move between favorite keysets + * Added new keysets for Digital Stream and Emerson + * Added one new keyset to Admiral, cleaned up Philips a bit + + -- John Pietrzak Mon, 13 Feb 2012 23:50:01 -0500 + pierogi (0.6.2) unstable; urgency=low * Fixed an embarrasing bug in the LG keysets * Added a few more Daewoo keysets diff --git a/qtc_packaging/debian_fremantle/control b/qtc_packaging/debian_fremantle/control index 8ae4c65..3f0aabb 100644 --- a/qtc_packaging/debian_fremantle/control +++ b/qtc_packaging/debian_fremantle/control @@ -11,8 +11,8 @@ Architecture: armel Depends: ${shlibs:Depends}, ${misc:Depends} Description: Universal Infrared (IR) Remote Control for N900 Pierogi is a Universal Infrared Remote Control app for the Nokia N900. It is independent from the LIRC server, and stores all configuration info internally. -XB-Maemo-Upgrade-Description: Small bug fix, more keysets - An embarrasing bug in the LG keysets has been fixed. Also, added more Daewoo keysets, and made a first pass at Sky, WD, and Saba keysets. +XB-Maemo-Upgrade-Description: Remapped volume rocker, more keysets + The volume rocker buttons have been remapped to move Pierogi back and forth through the list of favorite keysets. Also, added keysets for Digital Stream, Emerson, and one new Admiral keyset. XSBC-Bugtracker: https://garage.maemo.org/tracker/?func=add&group_id=2286&atid=7641 XB-Maemo-Display-Name: Pierogi XB-Maemo-Icon-26: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEwAACxMBAJqcGAAAEChJREFUaIHtmFmsXudVhp/1TXv/+x/OOZ4TO66dZmBo0jZJoxBQW8ookAq0mIhJQhUXcAGIAhICRClDb4q4YBRDGSoBFS2ikQoUSkpNIEkbnJQ0cVL7xLUd2/GZfKZ/2MP3fYuLE6LUDQEFQi/oe7e/X7/2++71an1rvfAlfAn/vyH/2Q+Hbzp89M47rvm1aw/0XvPs5ea+M5/b+OiJB5/88FX/1Vee4kvjagEC6Dt/+ns++Ya7Xn2ndWX2zkvKLV070Xp72Vy6PG4vLa0/8pcffuytlxcvr3wxSL8Q7qpnBXjzW+64M/QC1hiTUq0xWbHWihjf3TBvwqtene46e377/Z9swztWz59/9ovA+3nYqw9uv/uWH/y27/iat3rv1AcnkARjCSHgQ2FdqNT5Hgf27bpxfsF+/yTms2vPXjkJGL4Ilvo8AXfcfes9P/kTx96/sHtEKKwYURCHMULWjsnmhMlkXSbbG5J1m317Rr073nDknutvPPy2wZ6FA9syOzFbm7X/lwI+z0Jf+dob7jlw3UGsA8ioJlJWZpMpXUzEVGPFUpYW6xSqgeQ80bu/5tpbX/u6L7/1mvvnv+nPPvu3dwFw++2eEye6V1rA8xU4esvRr7/nnm9+z959C7hgVEQEMWxvbtE0nYoYYhxL7DJZjRZlya691zCc2y0qqPcq1+6vDp1f3r7UhbnF2RNPzF5p8rDTdQTQX3rvj11609fedo31EEqPNZa6bnjm7Clyakk5UlW7mN+9gKYZw+EuCBUiUA1203Yt0+01zjz1VJptPWtX1mZ84v6zf/nYE59779LppU++UgLcfwi44caD1zinIKJGDKpIU8/omimYoM4NWdg1J8ElEuhg6MkCvhiSESRNsXkmB665zmyWXncfcLJnz/Dtd9127dtOP33hn/75gUvfe+H0hYuvhIB86NChXbv3zZFF1bsgoLRtw3h7HaMd1hZiTY33Geug7BUSvEUNYKCdXcGZlqpX4Qplbu6oNG3UohDZtXu/XH/TdW8ajj7z4MO7ez/36YdOv/9/WwA33Hr4R3zwrQveOwf1dJvJZJvpeBvjoOh59u4/SGlm9IfzlFUBBkQcMW1Sb62QUkI1I5pw0lF1M7FuSt4TNO/bLUeOvOXab/9O/nh5efNP/uLP/+ETT55a/4Wzj589/j8VYHffvHv41Xfd9jOve/31ryoLb0R2rLO5tUE9ndDrlQyGQ8oS5kYjXGERieQYqSeb1OMVJqufQ0wPX1b0ewOMQSwR5y2+LPHOibGlQVqqasjBa689evjQwg+Ywvhzi5c//hyXl3WPuD3Vnptvvvnwm6wT1dRKypGuS7TNlJynDIZHCMHiQ0CskrqWGDtCWWIlo9aRZhsYU2KrEqO1kCdIEXBZwBbSpRbvS6xLErNRDh9kMBqxf9/gZ1dXZ/c/8fBn/w7IL6cC7pZbD//UzTcfwAqSsgCe6eQyuatxRglFxdxcn6IUvDOogoSC6dYq9fYa0/E5+nuvpywDqut4rVBbEqcrpDglY7DVQeqtc7hynrIsxZrIcDhiNP8V+q6f3//Rum44e/4yT51aO3VlffyRSxfXPnFhaXr8yuLi+Cph9rkqPX/mBtXwDS4MELGoJkUzQkJzLdZYykLRXKtmjzWVqCqqSSfrl6g3zyGFR5p1Uu6Is7GYakERI9urK9pfGGFMQCRjjZHcTDWpx2AwJspoWMnmaq29ysuNN15H09qbjhw58M47bnv1Oy+cX35o5XX7F1evbN136dzGw89IscjiYvMFFej1+vPWW1QziGINYq3HSMA6C0SscWIl03Y1sa2xoS9KDd4SwgDHDIlQhHlyO8UP9mFtKSJCzlHjeF1sb4E4HZPjtthehbM9jIVerxREQLJed2iPrCxfYTxpec1rjtw1HL7+rq7b/r7HP/PYhe3NrSc3Xvfap598fO23zjx14fHnBRR9c8aJ3u6LAksGyVr1K2ZTLzk2zLYv4WW3FsVeNGdJsWO6cVrjbBOLx6Qav+dGMAO0m4iJS2SF/p79KuKxdORmXZmMpTCBLlsVrXCi0uUJvTIznWyrNZ69+4Ys7JojpqBnz5xm45mTjEa7uPPuNx/U3B0M3n+DSP1DbTtjPN7kt379Y+9wVTBzYgPOCkYsYpyEUGCNo4s1WQ1qgqAdmhWNDcaI5BQRalKbIRnEeYwvUR3iwhwxduJDD2OtUlUy21iDXGMkSyg8mUTG4L1Q9voym05w3gAWY5CFXbvwwaDJELspwQecB6FSjJc5W3LnVx/6Tbc9bpK3ZqeHu4A1QgiOohzQNTO6aMg5YyTRzTaxCElB2zXoprTJMSufxQ4ivWqOToV28zLEGSxchw/zpA4wDqHEWQdGMOLxxiBEiuBJeYgSERXEGIrSk2KflHbe712BCw6DINmharTfGxb26Jcd3n/LrUff2BsM1BrBGCPWC84HVDOby4tYEjk1BN9nvD1mtr6E1JcxKM6MKEd7MdqQuzHd+kWsNOKDIbYJX1ZkrOh0E3JL2aski0NzRlONrw6h4lGN5JQQa4mxw7o+IhawDIYVvVGF9yVYxVqDYHnwoSd/zSw9szpeX10mx05SPZXY7gyRRa+iGgwRZ6lnV2imNVkV6wqKahcqGWwPHLRtS1fPaLeexYdK0myb6doSqKXeWpVc17hqH+Vor0g5h+QMucMYg3OKDxbnS5SEdeBDADLCToWc9zjrcSFgTRBjnYjJbF0ZXzQbk+ljy0uXaJuGLjbadTW5m2KkozcYUJRzNLOOWT1jur1CTmNcYUhqURmABHKMWGswRmgmK9pNO7pasdZDzJq7Bgl9CLsVP8C5HmJLxBeIEYwkrAEQBIuIJWsGFJFE2SvxwWMthBDUWof3ha6sbF+wo33zG6Ohe8sNNxzYb51I1oQzJUY6sTbjXA/nCt3aXAXjRHNCxehg/ghuVOGKCqsN4jLV/F4xtsD6nlQLB1SowXvUF0iuxViDQVA8zjmRmOjqTdpp0q5rmEzHIhLI2et00hHbGYNRn/n5CucDxlkRUUmJTtW6D/zBR99hTp04tbqxvvUvKXU55w5rrCRtJKZE1oQNJdXcHlnYf0S2t1apmylt24rxXpwfSujNSWxbMVpKbBNhMMJXFUUlEga7xNgSLyKiCdGEihWxVrouEdOOx1VqMdZI10FKiawiOUUJwchofig2BDFGRXJGsyrglpeXWFpamjiAja3miqasMbY4Z4BAzmCzEEIgGejRZ8v3mc4mqPSYjDep+gPEBEyoEOMwrkDjBGOVLGBcH0ODsSWaZiAexJC6KV09QaQgiSfHCbNZjTEOTYY21kDHaH6eajDCmA5RSAa0U0SsLJ4+dx6eG6efODv+vdiN3103lRpj6BU7cVHKineBqtqNVgv43hz1tGZ74zJrm+tMJhP6VWS0+xCikdw1JALGeUQ8YbAfm1tSOyYTyDgMlqyO7Cu6qKytTalniRgFpGI8UzS3XH/jTRRlj5RaMI7YKQZD1pn8y/0nxn/4Ox/5OkDMsWPH7LmHT14eb20S21piF1EiaIvmDiWDZqwUWO8pqxH90QEwPeoOZo0Qm4aMBRuwxYCMIQM5NeTYktqWFBvUWHJWkvSIuU8bC6azSN3srKxtkxCNjOb7FL0SY/PO3vFcCBhTy3Ra88D9j3545cLKIqDugx/8oAJsbW3n/lxhcnSqWBFRjOyM6G23iTGWspgnm4QyYDqep5nALAqz8QahN8SYRCjm0ay0TaLIkRQzSoGthnSdElOk7oTtrRkx1nT1NooiMkAl0R9WVP0SJJLZWZLAkbWj66KefOK0njx16V1Xj6c0KRy65SsGt2O9FMEgOKwxqEQ0TcmpRUXxrqIq57GhJFQLpAybWy1tSrTdFEMQTA9CxXTa0OVO6mbMxvqEre2JbG6OWb54kenkCk3dIa6PcwN6VZ9Xf9nNzC/spax6iAiaFEGp21ZzhKZN8vM/+9v7lxYvPr9bP58LXbw0/eVTp8ffdfsde+ZSFzE0RHEY/HMBaiZ1E1ocKomi1wOjIHuZTVaZ1pHgStQ0alsnLhhy1yHWqGJlY2OJrD2NMYkaCwTEBHqDOfqDAXPzB9C8BdYi6kj1FFUlK2jOiHj5t0c/Pb46j30+F1p5dmXTD/dW17+qelNVBZw1iChIQnAY4zFkcmbngnEZZwXnHAqkriFGS91MpGkauuiom8ysjlI3ibqJxJgl54wNA4regN6wz559BxmO9hBCSco1AKqZHBNZMzGhbYecO/MM7/+je3/48jNrj75QwBfE62/42q9646/88luOi7ZalIWU5Yi2XcMYSygGGGOxxu+0RmcRIzvku5a6qZluTTV2WWI3I2eLYlXEivUB55xa72Q4t4BxnuD6WNfDWEtOLTEZUqxJqaOLSVOGpo78ye/+6cp9Hz/5dUtnlh6/mu/V6bQ8/I8P/tPSs7dx4MC8NI3T3qCUwC5SnGKtJSdDlojkFkkeVHbGAG8JxuPcPKnrSHlI17VoBmMNRTHHTthn8KFCjMX5gpRaYlRyiojvAx6hIMZNFCObVzb52PFT37jyIuQ/z0IvRBiMbr7+6O5bjAv0ilKM8ZolY10pzlkQ0a6dkVJLzh2KoAJijRzd/000aUVUohahRyhLvA8UvaEYK1ix+GIBsVaMFKgAGFUgJZWui+SkTKednD97lg/9+b1//8jxJ3/1xXi+qIVeiB/9ybf+1du/++5vF2vUGS9F6WlmY3LeIW/FIs6BxOes4Ekpqg9DAYMxjqRGxThxboQxPU2pEWsCObfkHBECTbNFTBlNfZ1NNmVrY5Vffe/v/83qOb57cXFx66U4mhc7PHbsmAX49f7r335leRmiSJdcrusxWROqDqQk5kzXNmisyTGSYmKyMaFtZ2CElDKIRwRy7ohxihWDUCL06bpE09SIVMSIrq+dlaef+hQf+fC9PHTf4rc+R/4lP/KLWujkyZMKCMePa39+7vpd8/611XAksR3Tda0iRkI5T8odOWeUnU6lCr7ogRghJ3LOkBXNUbrYkNsZsaulaxti2zKrt5hOxsxmtXaR/MB9f20+fvzEB//tVPODVy6uXngp4v+Bl1T3Qrz1HW9747FvOXB8194FjHOIZHWuJ854yGMwCRSyqFrnRcQgGBQ0pyhJDTkmUofO2khKEclRzp+7yGceu3DmqafH73vgbz/9nhfw+m+ldC9agRfDZx998hyjw2UzWbvJS+yX/VE0OYiqilgla0ZzVlDJKZNzIkUFFbG2z2R7haaZaoxTbWczGY+35MK5JT5072d/+OwzxY+d+PinPvbf5fKyBAA89ciT9w1vuPPe9eXla/b0u1uKXk8wZa7KAeLnadqZpNhqzkLbNYCVtmu0LPYy3lpCsTKrG3n0xBn+9ZGVj33ykbVffOijj7xv+fz5+uWQhy+8B/5L3HHgVU+/+91/fOx9wI+/5103tPncmwfpqd9YWKjKqizVhVIwGXJmOmlZWd5kbePBlaXN8Idd4/56S8OZBz7w95dgp1k8xKdeLvcv4Uv438C/A7Q6fneUaSRcAAAAAElFTkSuQmCC diff --git a/www/MainTab.png b/www/MainTab.png index 29be5c5edc14cc887660f4047de49292162a6487..ac5db8a51582e5cb2a3e10dd5a4b93468516adb0 100755 GIT binary patch literal 64423 zcmX_o1yEa0+--0v72JwD6e&&#?i$>!IK^5Vf>xkFDGtQ~Emqv!iaP;ue*Axp9WfZq3A~~vmLIF}=6+zlZJD zx$77UtE`jN=DQVk>-ckvU5s+_4)Vg{=77giAHx!aF?i!D(1utMH8XpPjQ8)RxnM+D>nl<1Lz zKmbAhvhf^+8uD1`H~F8XqYm9qBA~r2!*;Y^bF)W=S`06ElS;f12^T8+!)Bt!R+`pO4XL%!8`F%g|ZRk#DAU^QUcEz+7 z9pn<`kbQ7DM+PlVY=Gk}DL{reSd71q$>*DiDrijt|C-`P04hla@Llys^Vkwr$6UNX zS9LQbdTdq0Llzg*MDR#b03()c)j|>}2u`VU;)zVSZqWUm*FGk81~9B;fd2mhLimvd zv5BF+bk>^;T)g!AvrhB4PxH`#gPSU}sLKhPDj5C={jg8;w}o4H3YdS)Vp?UlBe#MJ z;}w+#KZXSXq8fvoqSA|jX-SEFoaNQ*q)mdCAAa(?Zyje3VENQd7cQvN#90!TlSx#W z8xNG!f1Wg&4}2RA^o?hG?(a54EC-Q$c#XJUL3nYT#Ia$Y_PF{}yu$!vMsDElM&+wfR)QfYBXdn>rK)t_0wYkEQYJ4ds!K>%dw0NdXca5E&tiU z{|=-ukfu$;FF+~GVLfWl-xE@9W)7r5t2c%V`H4fyrxHp{IVy9WK0pb)lb6tl zp2WT=Wefm`(V{vj2Ii5G@^RC&fnN%`U=Brk&M&mdkE(AXM`NPi^T4sIg(y0saD~IH zXAB%!5-QJzowy=Bh4A9@fFZ?A3fbXkW61q$v25V)Auk|;a1D@Xs^FF;`i1*Qj z0M_#AE<02F7O0;UPj=U61>0P)8-7SdWT)-O*;DC=f4(ec?H43}LEw5Mqx70ygFxJT zpMS#tq7w1fQ92CGQI}Z-;A%qXEMxyrp8oZ_zvV0e2Lw^PTJ$+QS>7b~>NY>H?7gFP z#z-f>eA&&oE1y>h&R^ zKFL-dD@kk=ixjbWUT=IN`*jHlf`J;wb18P75CHoQ-lodJkHX>UM=~2_RbOg|m57wX z;1U?}GT!rtlkiM4arND)=C<+OPFh_VHib@5Ft~x7R(C)^%8BYrQGH-|GFtWiV*Y}T zCb*ztw8V%r5S^>>#|g=P^eKEnf-;n!lh0&0NCW2Vj{L`wqVc z3R^HT(u^hw~vECTwB0s-1hL|h;kk3iv@bKBZl#Y-UVF`2!t?bc zuNY}8zxLON zFRpkTl|CI(_4@P>(?XA<#{8|H0b4W!pZp{VrkUF7Z{Ne>k9`{9yrW|g+f2GE0$vsf zVEXGVIQ7=ON2n>SCTku=MnJV^Epuhk8|<%mZ{LfdpDq<5)c^3j5{6I+z6ntLZ9Nw^ zsg7Uz?~;(-aB2 zPni|2LfOJmXD+tY!~$vL2E|UlSOAaJ&~fc|*Ghq?dUSystmOexkYz$iZd8aS8aT^C zM`bDV(lH*0-Wn=w-%26^f6>Dk*sblRWzPqX{b~jN$n%M0JfqUW)EK8fy2Fr1x>$?L zakvs#ftgIntVRiptD=*1XF{=^KWiGRQnT=Lyvg63+TI4;}=_)i1vbT&QK# zU7eI9tx9OiZBnhWzT7B-e@8xK_Jj_&mjy8rr)>tGe*NpcvI(%7M|s-9A#d^#b*Y^L z$6L|t6a&ZtkOF9~yF?3m~25#$I2UIe~5$3^t%)d__;8#VBklj?cEx1 zxm;tMGWTRR-=LCWSL0w`9MN~2S(tQojCj4j6NefG{s>op#0&p-TBci(8vf`}{>Vod z0c>}}$>U&s5DPLxgxHD?)&I%%#h5t2@0Jk{)K>sx$+CB>OsP3MLuHxme)F}PSK7E( z6B$6~RK-izsEcCPzeIMV==N1@mKUsCHm78N;>0{Bx7-@cWHYq5Y~7OD2yVEr;OhZ! z9^sQ?fV3hX7dOe_kk$L}Ee46!`hFi@Iaw1pNpzoT4Py!o~cG?3-tF&KV+@wM{((7qw@k6$+vfi`(~TG|6xgJM}DO-le0N%D;WR{~-($hEhmF~@p8A?aFigYn|*JKs6bd?cx4O^QglOx|Q zLN0;GK3nVYw<9a&QdaHmYE2Y&JdAwZBQ=WJc;Kr|ceNQ&Y)ccj8OvhcpcUX#C*4Ap?d9km&1q75xQo$xOQ+{wRP8GVG2Oxw5cWkT zyhEN?N>lkVrPHje)8XV;2NEc%|Gz5i-&<23S@t19c8KIV{B@%(}-F0c174n>fyJteZ|RJP)(BQwQ?XKQ*pe;8@;MV730;S(hGrSgx>`-g2$sC=uf{A z6)$czjpp)#tki%=Gaw|9cRKcASRf{rI)7qvl$wicn5#_F`S9Q4Up-C#~#O zO$8U1vxpja1LdKS+1a9Z$A@En3qnS|i91?S5x@vwLmx4QAOD(P*XCZ{{zfDku!;q8 z=(o^A#QpMTA<62_pp`?}LY@2~91lqks2(bQ2|8XM{8?x_NR@1vMe|^sMLLKmU90lA zXyYPD$+41ccxGWtqM!%fA=2k0P`;g9kF4_D?rpXX%J!F(XJXK6pI@Yy7z&sh0gAx? za5Rjo-}*ZF1(WdJ^X(#o}H0X(`Yc66lmbGTJ6JdmC_sw(W#j*|6yYe71+m zzlJG`dxbx&Mlze>bO< zT4!5oDK%a^2DcimgYpL&GCwMxWt$s5*j^I3=ZUOJ#6P-5CdHh&)0+ICSd7Nl{dt_N zb}ZzstIk^;JoeU|1Civ#^sSEu@#89mHAGVEqC)pQg`&3L_nkRio6U$m=LqM!;k)h$ zzN0)Y5d)qekG&x{SMOD<^*or{BnA;X1gp@P{W+zqjWqE*mfA@v=f1hR1NL)H-&X7s zE3xKOdbv6s`+BO)rW_MN&9=cs**+W4f6(6->l}TVmKyEt*l4!bP1h zsYmWY_fc^u)x(%_-Xvd#BPPY~%VO5$k`i*T%!eEbo)6jH za1C=fQm*^-K8!>{7i{n34VOeNRR>E}0<-?x9X)~Ek{m>baptuYxcPoV5bM1rG{mu_ z?z~T+6$0Q0<=S4++Qm3>-^D-%D*+XzRNv7+^6MxSBpIe}@0pp^}?4f&@#C%`d zZs!Mg)~5uuH_l1{sY8A<*7h0`k`b3r?+x0}K4RL1ppi5?*Q!kgFA#(V9P^9aedAur zfL-ajMLV>LK!9Rm7bP6V=5ruUL%|;KMu*wmGr-K!?Vsu9>Eipp{GYt6H+C_dCC_Sz z)rQp?I9epOB{Riu?o|L~6{h2H>gk3VY{9{QjD|74-Mpl(PWgMG|7?iaqP1Dn-$Q3* z9b36w7t$+ur7YF*bEV&vr42pwmdpE}bjJP776RcB?sE8VF1eSh#(ga5Wl}$i5c0=LPwJwRsH9Yv-Wl@NGZ$*6L;*ah;6dpxZ;RL(t$sM`^UTkk7}`2mRNoco+)Qt&y&&R=McW%2KAk~_aIZLKYzCl9J0Ir5?^fY>3Vy=Ct1;--vj|6 zrEGAvVJ#yQ3(jO!lpV?U91b^sy3h)~oi{b5O$-K-#>B*qh6r|C?`^cELsx(M z4hgJ~i|`0`@f|MhkF<){c({J+gf}kTDwU)ba&L~^K^Od7A7hcxspLCPTczFRYlBuV zXUF<;foGcjZfa7#BQQMwhC5IOv>YjDI)96tiWAi-i*c(kP|)1PDiSS|a!?}s^ znv2)7{biRvGdZSiTpjo@WyKjFAJt?kh2PLZwu{C8o?UfT9N^Pe;riF5TQCQj&UucVxbW*T^lqxYiVe!L`4!SAhGhY$9b~hl4{+ zyNAN4CBehan`MO>V|QsE<@aIB6QBbq-G%!qC3JEHF?7Mgj#@+F>8#Z(>v~UqGxoVB z0`y!5mwiA`no`&{aZLCeSr3F0-Mp>CIXz5eBg7h~B+0=5jHp;b@`Lj8;Ve3W54Y#{ z{m=27bg8(xxp}|6Z}ju8dYt5#nKz$=x?W^!P0aZZzkQkj z5=tO>`whx@UE_BirlI2Sv>mCxPhX7zwBrGJnY-Oy?cH%nIGEv#+W)uUigh%d`7zY@!#+9@6l+X zeOQTphii|?2O_>%4l6Gj#yne;ctPN~<=L^Ag;5wY2K}=2nQLF&J|fYssvPj+n37vc z-{Q`Cv~_y9C^&#|i2-DE!vCs>T}GBF+K?Q+HFrIC-;eAM4*28aC2R17C#Zd@aqi#ie~%8Colx$&?0RQ2|I;Xjd#2|<}pU5ptqP=~O@-LX1YA}z2zc*CK;i_awl*6!v1>1-ok-ScR- zCvt~%_*14^9@nfPDziGTez<#Z5Y%~h({;A+`@>#DzSkE+x6+Xi!PQ4jyR52>DvVE? zxr!7-p+lWROLv~*R@*Rl^|xP0|L_$*ZERhGJ}|CqOmFAM^1f{VFShJDwDOkI7R&zr zR5fv1>}byMPqRY)y%(Y>;NsM8FM^P|i0Y`q^f;!(EE4p9n7R>gFwLrcyth4a&IUpPctJM(6cD1qNEJeX zhLsAWv*&s&n~PflQ5Zk5Wtd{Yh$SFxY_?wRONWVTmRP3~QP;PTHg{lh7K5;z!=mqE z@~@`XtiKAqc{}BU6QCSh?^_18u4yw!;mv<#GOITD-q74_+3%Lgc`!k0 z?mgxDGCaL$oe~R{onG_GrMdR`OZHvX?qpKUzfW-SGj_DEarkA+#FLS1vCVLZQ#&ne zLhx}1XnwQCYI9Df6+lD3SywQ zaIpXFG$zvChI9DrtL(VzCDwM;t>y(RvVj^nO6H8t&m3O3?Il68Ebxx%ClMc2tmf;Y zNFNrba1a%Gajl5S^_HrWd(ne8_-MFpzw^V<$FhLG1|d#5_4@s>z5Uq|?H)EP!EYe9 z@FZi0TMU3YJ)WU)baBsGNOwyU^K=u8hmG`F6VOpkB}Bx9FHhV6u4~9-?c7FJu@KpPfGHA08Ly z5r_GWZD+Fc;hGU@FFuWz2wqm==YTu9MX9sHuOr2V{Uv(=s`6)vsEJ(L%`|7lbvqnmDn_a;5Wvgecma!X|@)7Op2!S~6o^WV zKZkWYN~wcz8TSr0+Tb^_J1rOMSS2s*S$VRr;u(&FH{)gXiWZt^7e5{bkO~C8S{T;g z&z9bUt$_V6T~Ew`u876@tEEzginc{?{!@}Evr+3}-`w;{+e*&(%6grzGHzs`m(W8Y zcX}S0dr)8m+Oz~MAzx_WKuZ4(!QiyQ!lM;_g>V<$G=b`KbRtvTQW+{dk5r?Ak^P+W zlIhDdl@;Y5*@Kr(SJ6A&2zT`O&ix~H>`v^GI*ix`XL5OZYK7DX)5Dj))oo{v1W2l| zrHkIsO^l>>jv(Z;Pvx=Xi^A_?(dJgImGk)mjWG!9JvrO-SXcN$IlI&8J>GpaIA5pnCUC+PrM6ltlY~Zq=|V{xBkLx#u>L zsx-gjBwRv9rfKrF^zTo$e_WQO-frH^b|@=9h|ZX-%)eNP3~nww!3W(%bxDHuej5pV z**`mwP~?m5SMd-->-Y_bY^@iN5=UO34XQ zJI!wAo~33fI=rh!-nWB_4|&c0$G$roLHRR=W&7(3sD*|)i%T2C@7k3W%5#7Ddlm%z zeTUpu56m$W(@MKJA`lz`C8G+IG5kWyjHvAI;#n_3)v^nkncx4f7QiBEv+-WutSISs z{2l@Rh2cKRnHt*Nge2R&P%9<4FA%&S$+}w>n}}FgH#r*kTJiD>lAv!Wkg+b7fK%&R z^NtJ!ZIxvi|84ip53v7zxgvYi_HE(Luy5?m)QaU_i1FXH4y~JM<2l~!bJvqL;9dO{ zI*8BMbl>NQrYSh!D68#~N79hE!O04|!(Hop74Bq2YH{ewTj})VMEikw?rfPl7W*o@ zK;9g9g!A#$XFn#_kW-JHTSnnuX`_p!zYIKL$Hb+vdm7S%s}>{$2AvjXzTaq$1#R8% znGznw*{r-gv<6RbdJg_MqB0ps(WOnZE=9zGr_wK?kMXEYm_SMO5xG@*XtAZwk0Wh&@@ILK2x*YuhkUSABRvVjt*E ztE46)WBm~58WuUXSm~{ygU>|I2(zwn`yU60>9&*mAYa>nczWeYD7&4OgZ`j-jpS|> zp8^?jv~lpe4C?b0-r`xB6#Tb2o(ZL4&&eLa{9Ph49ItE3Va=c60uJ_PGH>I)( z*y&rwYFjH>?>kDMuO);Z`bG|0YK}~~L;GLq_oltOJ9hElV$iCNA8nQBrhXm1zNK~{ zjYW`tzh^5-g^n^pGHR=jcLw0&pqjca1wvccLFDX5K9B-HmK2?y6qBgBCc|%d^)VBT3G%Z7?9g>G5B}BISsa z=?s-8M#O7W*z5qABduZ>!a7ay;UuW$=z7n3(^_s@i6_wSccKqK@1=n`7%CFIXcX?# z7C#YTqm-TIzgfGB5ylCTtaY!$%XGD^afe1pPFWTYv(t)_S6}YepZM8cexE?3=^iB| zK4<=M8Gd8grM#sSHU0FfzC>%Fo=D{D)y|&8_glpIn}qVq_M+g0nRhu)dF@A8t(TfJ z$9qmEtaepz68y8xC55@zOd&Y_Mu`7hrM1IWi~{h zExol84tZ}TkdBsT$&HHXolabWWs7rwtJIzDO5QU`1E`Ko2_+*BMqdpZ%+!FYI#^cN zLdcHk2H!;2r2YU%kx3~Rg_dQPDXWdhy3jPfRqTWOtnHD8lopo33D;l)Ads{slF zag*fv`|asoGpS@=!0gW%W$otp^3pmhoY>?#p&8(%o*1mM-4}iQdebb0wSWY_ba!ro zxKwOeIU`$S`3ThjlsvTzrL+CiWFEk!5Z7Z-KtX#>g^7FeLrq>~dmnnvlB#Y0p~$Q9 zN#e6Arv48~eT5bo>31Jr;5&zyww+G^1u5Qiu1v<9Z^tAPq@9|Xn%Zn5bm7uC03vGq zPd7-e>d(~Dg|PVh3`6quJ%=5G2%*$2twxR4MKTN;Fu3z@-`mp0AQbpH%L1tD7SfWo zk5pmxmQQN9LREAG+s`dps`mYOmW{s1-V{|E1^+CBL3eQoo$a>?j8lV$#*HL&m=v7S z%PpLv*j`30G?=K(rsil%m*}~D48DWqb;d}y;*0# zz&vb(Iew#)*(b$b6Ltyq)+E+pE}=Oz)ISygDMT3)OW)um-%ICPKMa1hp3il>2di)7 z3S=;;zY(hWqdY&Ty_uSr6?z!pfX?DV##U{rM1UFl%DIINhDA~*g-8r0m^^X$I(c$9 ztuzwwj**&6A!FVEd21KF=Tlf?jZDU#)1Qkvl(php@=y@=j&t|+3f3NWHuO`SEIY+S z$4@DLWLY7{FnT!HpDKa54Kf4R)g`5xP6yFB-d!Hz{nJ!iJn-MP=Ul*3^$3?)S9Vkw znzeZc6}G)za)ngyFO>@}@k3qdmVu+jF#~T%Diaoc?TjPS`VFcMGOhmTT%4W@=i!2y z@TVhogfCzuf#iOi0^7-oe;mJdee^mUpF7N`A+UJJp6-Pg(C{I2qJw|ZP+-J)B`6cd z%CEiA?V(nWV$WmGV;;o~Yc;NOXVF576MgvcvM0~+sH6@cV~ryWKyeg(A^fx_k!tUg z{(~p20eb=I44y#Kh6RY_(rGPiX(%=_sW~H{YK&JsJv`^r9!$+)RU*U1R<yb^QCk>H=s&Ri?k8VriXY}nK(vv!hmQ0xpObUL?fbXPgk4?_wm)XwFW&5z# zC(%p_c(_)Zo&2OY@xsCUtO{kC&*bx}r4_rna((drw^C-G*|Mv%fOEC(Wgf4!i>ajI5sb|{rf`B12Q8!XP+cQcm+&Pm;G_2|z zjdRbAX`H{I-rMJ}-ENEAmll|;+S{XjOoN$1Y~)ZKGdT*MBNf~286}uSG|zeV_KyM! zh{O?%spHA%g7`Q{YP|wZH6D_#BNyOgOfa>)f)`2?n}fjd7S9j31qo|7nQpf1+P=gILRTpuOVyPRE1R3T2^X~NpOiY??f4?S3@U3`xj`eS$s z1i&6J#x@AB*U+Q5$wZ$|w%bl2!9`=e5v{*Y1w8UF(ckfmV#Mu3=qfXCU6^%q-Ohrt$V73nOi<-(K`jM35rq#Y?Ynq$cR*!cuyfxq2vv{oUuF;Ef zDX9mN0>-|Dg|ufBo?r|M;*@7)h|&`vk0Ibniuw@Do`|Jh*bI&syaG7;(N>xEgTBU0*ObS(mR{k;QmC0czojlKm_zNW~r4ympCHW!6ETz>Py6Xk8?> zlv3)}Hoild$<}RJLD73nOf0;AT)&Z?kdNYY%jiBewKLa=w@5)>^Xv2f*xi2CpD|Jr zEBmzttB|qDp1s01DY1&VT;_1}L{`S?m1hp;wv)3s@A&rWNDa`WL+R=81XUszR%^p# zpVEBZB{*C={&Ha+Q+%KGk|_I;#K>SYp{r0W*X2qDp`jwlf;HRa8bIhypPd0)C5 zKF*$lsH~P_;StIPH8XgdZXpbZA=|m`n$}H(meOg~6cz6G3JZID)MczcH%Mj3Eu<_kU-O!{DW`};xuGo1 z9QZn;!T019SAAidY1+f(nE0-gMx>ciJhHY;Ci@Kci{FYH&|^j3qc25ZoI6nl7?1P< zuK`#&+eG_g!vWt%vDH&5G`{>(9_{k4ls(@Myn9gDz+}IiyGnML{k|aHbF0kpv?#$$ zu2dn3SK5>#OYS^{g%vLm13=d*m;h4<7!WwzP5&O@bhC%iKM{O8G$LsGRBO2xg>}CB z%wS*TP*Z!h4I`EY@j5g1D%a<4^XX3D^7Oob1B=`Vr9#PoGlNt5(5p#1nr2Jk*TOPk zBEMvL-^cRZyxA&89Cly19XLo@F!Gs34EO~gcs;ePXKj3*72TemgL!6;$lR9mE>9Rh zRliLwYiHWcz9=3TI6L{Pv}a6_r-qP+EgaPk7svP<45zR~ib10=NM%|Y{sM`Da?q=) zfKGVQf7z=#a_QuEsqjh-`y___E1OjvddFZWc=LmqOX-7a*{9!xCz1anQt2n>zYF(m z@j#Q#Ydz6m7wEI)EOtOqy9Zc8}6ng>)g2O#8xD~Kt^EVFA;mbFnOSl zQ&j#*sjo7j;;WxuDIJ2&b^Xtypq$F^U%JOCLg6jb%{&k12ebL_Kjxr|w5UqU(0Q$c z>uB{cIZuxc7wdf)bDajKn|9aUeywU_`)Q z{Ls{=Kjs!kWXTk!Nsk9{%7YIg>2awN#5;+tDL+VMk@{*#GKe%XpFHO>m_!caae`Y6B%9=4C*0v5Wm8wQLIy zh26X?inDDvC$M*c6791Yr~awRorlki_*wfe#Q|PIdLK-g9bWF4FZu%-j7+uSM}wB? ze^%9;R^?`tS&=3^U!R zd_^Xd1TggL1`4|_q~&NAiD+f}exe!%k&0+c*n0!W$^T|Mj+P`^i1AnbwX%zZN@wof z*^vL^shu&-6aCa)_jU(oWxavbW5uf+wy&|(98nJUOdms%#fdT7JGq>hXT?j2Q*3gd zXHsFLu!I@=0J8WCM?$gP2k?F4qVmkK+P&IdaO=k{m?NUs zy5ku|phuc=3-CkTuxXNDzs~0k9nr zzLq8fQo*8kWa7<_AXfxe-*&p|{nADy1)gR%em+}5qJu#NKxvb5?1JI?r(uszU)1f= zgwuPhRK#uv_fA0<6VVqFtDv72r4iX9q005xTZ?>@Yb45Py94rL#aNi*>JmI%drIf{boan^w2H5|;F0I_2 zhTEO#zp*e+dR<_VhR=?UuElrL#oW@SU@-6*#~A=J)p?a~4N+@uu8Z`&Tcefu#d;h<19U&n5=WY%ExQE3Nb@zyWTwoswRs(nVe z!xh=!`WX0A4^sfAIpz`BUVAkn;rtN{#jd|9b$?2`IFf3RYIm>zuU`6n1#l7{M4<(^ zk>ywOjR+2Fj{m?*7vTFPAduBNo~dH1OKcM_U@!l+?ISJ8oVOn1+{5}!r4t^NbX?P2 zvUg8fUYMglprv?tiF9C9-A1HsbfDRjjqH^)R-W=L{a^Y&p$xjU@q*+!m7kPi zoTD@ZOM$!J(zudX%vgoPvr?xCQv4#-`NWe2EQejc5YXetr`cOsVM%Z6naxZrh75(0 zVB%Vh6pe7wc_3$E0)4w+Z(slObg^u@*Q5OREta>mwA@JL^FI#E&+2xHHFYq&4njLr zo=CAgv#FxS5+F@-xekXvC1auqraU!svMDJknfDXYQ_#>PBTJsz0!$%UF(lI0j=O&7 z%CowE-#m#X$*viA5!x;87<=^F#HOmoE_UQk+T{1E<@eKZN$_;gfm_dwiu3|n)udczq9OL`k$R_OuQZ zh=>i>t(f}u9$8Z`lB&@mMtaPRg&&6hnJ`Kb{Sy@m4vQYTn8lYiFyfw?mNLp4g{Jn* zq}{?vBviv>^FAj+X=1N>N^gb=4f(T_!Q?e>czV$k(6G?Lq@%Ni?CRaNkLFJ&D41|b z{t!m#z51r@4o(du>buY0PD6!y6uL+Kvrk@Inpq6P(ZW1oJV&=9lk=NBbhQWBkBZQx z{_8NT5(=4#RhtXg;&YozhELe^fr12zpOqB|6|~Y!KlJ0rmvKx$6+m=+M3^M;WWas3)!u#dLn-eM;5$j!;`yxF{j9>q*Z5y&%C5Ojt=*Tj1db=d4I{-G z*=Ou?vf!8X<1209!~hw4ON_&jlbQaje+N=u&^EPs0>_7S?ZQ&b2hkwn5jw^*n=*x$ zF+VBoOLsy_*AZfm9@E$F|BY~TQ(-5(i#qG_*RopGIi?1YekV7?8c)kjS+pBd7YJ|i z2jjkycIb6F1Bg{=UILr(u@Pqra11O2t>s)Z#Hc!rOeu3XtBw z?hSkn1}K}I5lHuO*gk)*LgIw)wL%d3Mvkme<9nATJ9X^$RwLWESh}KrkM;S(5hDJ^ zP<7|{6PBYFpvKf$9td$iXy5{+$w$LnsC#ZmuUo2)6DCWd_$>PkK=f=W(pCcRl`WOC zPucO=&d-JwR~d&t#Qh<`W@8O*O9Y|n4q;uR)O}x2C85XV@;pJos@QuL;~NjVSI|UW zNNI0nz(OGb7h{$&A*QHIOyA-$|%Gba~K8Gw;25h zwq{BT2H)O;cep@?RCG|03SpE%5koa!IUa*Nol8p6#%!R?M5bd3zeu^+M*<)>FPQGO1K>4Wx|Zt6*_^YMndwiCXjum7^$shLGzkGy z|LSTKN{loSP)VHpZ!3s}h5Zp~0oEVc+D_;@z-6jZRM2VbZLx2YL_@c5M;X01*uLJU zQTXZZCf`{tUm|}KO6xF+QY#M+j{*wXD$2|Iz#BubWaPHM#Qy&No`|L?dfeslIr2VYr$0o{Lc&bq5w?i}z>`sr>3Et&?MMMv zQO8u;;INvN73BNhy0a|Py?v7x`nsP6TBmn~1#5>qpyfwWhVG>)mnkTA*8!TTF_Y-$ zexD)Y&?;n<$rt!w3!)?A;SsFh>4Qj?mX|Nk5E)RqQa13@ve;WP6Mr`(SH;H@l})0L zUgN^Oe}n;D08sG4N`pA<(cdTA(M7t|_1Ke#J|qOUAVBC#7mV;9i0-5iW40A$V! z<7r{nm)O1<$P0abYB1eq~mM^|as83+Ny4f8v$v>|!$<0`&pNB#lLVwv58nZ@;hJUy8Ut zESluOp+Nr*+pj_=3*c?~x`G8UhDkY8Tya^+ zdm{GsD`}B*(eZXirZkbNfV8mB=U)I!%T{TYyHH)6>J;fqsKdf(=AG5!VVbdy-c#>Z zlfX`>%Q^zRu-;5c2(AkATJO_9S4qy#j4ESYuO49^w#oybXB{}C*jd>cZ~O6>S**q6 zJuY~`l}P91Cy#4+0|VFZ>7e3QilK*xC)*orL-3$aC?+$H0h6-2clg;+t;EBE7YZ%! ze1U5AGMu^hQqYj?hU1`^RLiW=4zK+!WIyVefQ1P>fLj}Rl5+3G?7q3q=u;J;+Eu3BX;@aRV z-PeD7`4eq3{=$IbV!&r*WqqL{jAU*WptH3#pXrcOde8pjgo2M2ix#v;{TviIRPbG# zJ4t|YW|ToU3?TTsO)-0nkB#A5sX(Ccvl068uCFh)kEzAE_b6S;mT@32d%=n^M87W3 zWUNHO8)=6cCIX-R^8pz^Nzmuo!rZoqYbIvYw%^FR;xmy^9DIFs2I0>FK9g=IbiN9T z6DW;}*khbOeD&#)oLE3obZqTABOeeZ9@iZ4_j|Y#^}^7Opd8l5>_yZYMD*K51;#J3 zcLqc0zI~of{?qk~Z&qwFCCW_8{z+E7v-kvbFRx=hokoQ4wzM=q(uO=XYTK<1O>?1C zv4EL&BXOUtU!FMjRLBq@?{<1AE148*W4c$DH_O8=9LwVoBeBu5Bymrj2o>MiEYn~2 z)Lg(d7~ctha&dJnGvl!|Zbe@^>!-yzy$ZRfk*+g13Y?G3rg%{E95nwBI7tx_a1Xas z7nZUNr`~Spt07U`3!sitR6=PM3;{{BTw)I{4UaES6R2kFI^5BP;CwvvC5)Fh6(UQn zsqOia%wK-*jGF)YQ#b757bota6ujgF@@ESu;E%&!>hmW%%aofvN=eOh0_0G-)OJZ5 zqg6z*(L%41DCp`wxnjN&{74d>Pp4>{;{7hm0%E;<3*^G#ijfjgo+vW3w74(z-vQ#( z`BKRgk!*@HJ0%qCl_TGLW4V2wWKUVq@bBRcIwA4?mHd%AktU1>BB+B;#{wkE^O)8Z z4wF)rQi~0rc&UbZB5y&Z7rAx7rugcKFQGyV^_GDD`(A*t_R)6-GTY$ zt?;Pqz=1;XyqoC1pR$%;$Bwu?5pXICGS=xoppfI1<&_2@+9P!-m}Z2~hD0t(#QN>* zK^Q0mV1CCG`Vz86N7K)QhUW4m0>-psiykiYQFLQ%KC8gH+#5tPzWq3UfWpkA3-I&oz3USFKxV@0^dUOkdq**urOBl8=dJD=q3pNkMF|&i}*PTX;pa zz460CNJuK(NH<7#NJw{gmy~q3gh-cw3`%#0bV`SGcL~hUj5P1z-uwN%@dvzXowZ=i zoY`mZ&r|z}{hXbPu*;{Vl0bFxPk&&yb}iA4=PTNND!lx59;O6(PE%`+CVTji)*0};zn5fz zY;f-3kHaw%zG-frx3MxkCG$mcYAs+kBa=luaM+R%Z>VG*{DRn389TL`_z@wpZR zLoZ%pp5QyGm|*vobaMR9dLj24(xY(My}evToBSvbnVg9NN(d_g+`*_6+k<&Vu6)RSaGK%3^)xml_8%KB9Ry^Z(QjNm8C$?;nBx0N&evrJV_4(}drrMJ0 z#at9OZRVGgmt9`66o~~+*2X!8eQFmzr1;DDwVyVGw%$XU5_pmy~EiK!z8BU1SAPTE#7Hc1KFl?bc5xl5%i`- z^tek$cF;d>Dbd_Pw4$(;-sZ*@_rqDOl4(U7>yNpi8JGzl6|^@gb@hydu7*nt^Ow)Q z1$tyooSxal$BXg`UIi(~lPx?&Vm(m`(^|n}Zj5CkWT2`2xt|c4n&4k^Chs1+!U3rY z=qgRuU+s={08uq-x_5NsEE!j(O+qXtD$~EF6&FxdEDPz0yQZ&7g{D=aDQcu2Qi7mg z_m3OBOvJ2+!l47LSJTSD=Qmj6l5dPuma}_-dj9HcO*sukksJLYGe<)L0&0oLjI zMqtZRJmn7!Jgs1~CJi~e3w~f=rJL<%n6^3w=yI0RNN9pM5hC%*EAy-9-*5Ypum2SA zgL@4!oZ3;2Pqn%YdFU!~kUA>6^d36)l>%+5g@h5tYuhaj5~sD%9KlP4;aP36QS0Ya$85wq zIc+ka0Rb@w+I|=;WZS#6-_GyyP{8H&&#Uj?M8xq2_=9U)SlZc@{ZCy%sp$z^;NL z623_loxh~4Za`8NR05=yqDQ>$wlTej>wv@i8xjHGq~|PyygQ3UUlBYVJ$8i?_Ms>3 zIN*E+mF;Z&j1wxAR5vsR5H%;Z+7B3k?DAH zjT@Jxs-?oaJ)HG-8sKc9p>GKc?uf%jWDc~6cNRug$AH(k9o9V!X>3rbpJe|0GCk(7 z1B?BMDx01zU20teym!y*!z*eJ;{SLbUQ>y5no?EKAjtY%Ohr8ru~vbP@C&!q&vlaX zhDmdu6J!-692XrQ`J^9#=7T^(m)61Q5la$bE6&L5zDJ`6Zy3=P->#iZ4I6k*R5oWi zhu$-$h-($acqUL!0ZK4^J_FKQ|6D7Bb+sV)H+o<4Y^^ppA(|IeZOp|nY|!C1HM`fc z_YR%}4s!$@h~}XKUF`F(<2ntQ%z75cbzj@uhd7H+M9*qfGve!MI`+>mLyiM!TD`JXKn@2!wEB|r9G4SR zzaz=XYtX$h%Z^VKksk~6w=mlnDC zq@D}+EluIKZ#GSwGL{y+Uv~I#qYCyw(zUV~xU!3-96JAJh_R5+U zXBJhrrDdqZ1j}Zw&8J*%`lD_$vH+ZGY*X2)V})OWqjod8Hiz0LVY?cB@fzI0(-Z(#k`nx}vIfeq;Ua}=^=>>K8d|9L*^$P_%} z`|hO#Atc4dnBi{22~3WD;VwoIli5P^2tLRdb=i6AT+AbRMGk=BrMuM&vrvCrgsw34U}(Fj3Uh$<@S&WLLgoW zKtqwpB4o!wH|z;S>w)ux{mRqJ7*3#Xh)V9YN&bdrP@PC5Wih6P;>Z|= z7CN2NhvLd=^Ap=wemK=-)_p6r-`8vR@cC3Er0`rfBt%yFA4L(xvm+2}Lj#8W*Dweq zoV{QqyxVq4a}s^-=LR%10glNJo#8Uxp5?Qi)AS~jsvOO~NiVR{y@qU;*z#i6icGDc3O_go=RJ{hRaOR(CGNC0{#*Ea5UVTfVJxV zk~(8Vkh4TUudQ%Q4C-E}*VF%bl}bqHzzM3s%Fbt*Vl0^?@wWaH-ZXuW;pgi`8LE(K zG>nPz^bYOA|z%urr@A1i9EO!W6PbWu))0<~Ilo^*XULMq^lgDN7E- z-^XP{&xSPem<^U)f2vQ3=##&oQ{$tN4MEj54IP1mr!0Ca2N%y0<2Yjw;?nLY#d4JZ}y$`(PG!dT!k z)a3HJ-Q`FRVbl9n_@jRey7)7FX_|c>`7G=sLw0aRS>e+3YTa$+=PA_TkzKYT*txT` zT1sr!=xG|NChvI1d!rB|X{-{j0tYhRcE-OS0-|~mY9dt zVe8?+w!30DLzzY)oJU?>@P6>POhc#;==F;TT-A-%2Z`=Ofsmk(*fnrR6!BlXa&&t= zXWsr282Yzgf>5IJ_$4kEd>+4AI9X`PJpBy#hxy;1B9c5NVIo!~qkFJ&b{yu(88Aj_ zxm?x)*L}dik{g8pNLPJyq4HkafSzp491Maml;8}SxlfH1pJ%bE6+u-+iM*z2$k z-3*4BuDx;S^hV-b6Od)6%KOpr#=(^oC74XoN(lEbbwdS?aN zZoEa3*lQW3Xc}}D5~jSK;*#5^lrECu>3h#xa6P0LRgB|D)&Rj3|FWCv-28uP9>lcH)|1zh)( zS2G}yISr=t_Su%U$&c*rbU?`Xi0ZoPdND(N5UmO06~tgVZ<0Z5W97sxyQVmo;d3s7 zANjz8TD>|O+~b0osUu(3ptT4d{6@Qx;p8Jb%OFsuYz&zRZyE46M=fV)~A_;Bhkow>H@0MC~$y;Y9S_h;k_y@D=IT&tAo>F z($Z{4nwzy!^#Ex=T|pLZ%`L%)Wpe46N#;Q&01}8098MO&uYf-{i6FXX{7i;MxmIf@Pl>TUxU9z=rwJyx%-nb@+ z>vTvD(yBoq)KeN3q?*H9UR3Y;AOKo+m%cG0V?P%ZgPkZDhnaU8sa3>6Q5o+P_TfOu zHN6J*^|5lZr4{-1IlKk-#jMG>(IrIvpPq+&sw2xs{(-*~(gdeGrUBxM7ZZfUQAzGAfRhYMzFP5VmhD5yMrp(nm0e!RX0W0QyL1h|1N};3y&Pw? zGt%jUyT$4&{PeZsYPSNZHP2SVDg+V>FT#Xf2odFSU>jRPEDxciJ}xW;H-d1jHKNT6 zyJV7=!7943R7)q}9dx=;^I0EQd%dgemXIzPcq63TeF{J5@U@Lb^aRb6A|R^E!34Kj zvcRFk8wBFpy_~3`T?2 zRR4$9qj7?|@;I=!loDi|eUDl%*vB0RBQ||ZjnD6t(|mszH450QiB_X&aV+%v?e-&9 zR#4l(R}3y%sB?^zRzyH>>fQhvg$V#R2>>@0;B@6BQ~PY`;__fgOw*mAh~2kQvDe$L zA#kME>4{fIW6EhuLp(6OxHl!oH1G9P(0K2eRk&P}Lqn8eBlpwHCgg^=FhQ=WYI%-^ zrP@Y%_6SJ!Ia&p(l8&h}9o>!A_CAI>DKfB6mFSo?(nT9>L%9yAdDl=Kfr?s z)AaB{CbF3^%1iYnm%jY9laha|kUv&3=0)H?Wde&(?`BTYbRCGtHcFJ}H#BHMrwakv zSWU@j+<9uJVBZOgg`u*HBNHv$v{Sv>UkxD;`UGjzDCjrX8Zl$X97W7(eDNKh6!Ynl zqr-t+F6^=RY>)n#js72;skpQrr0CnOV27V6 zmWhJr#%49t1*U$U#^8+Ad{#>(ZwZNl;|t_oP#4SSoa8& zb?OKP3-K|>QY8}5-Tl|^n%)|hLLFjpqPj+Gyd&Fb@OtMIhh1c28`b_p0}P zHf{kpAUM3LlmlI}teQY|vGq%7waG>+OYyNOqpCEeK@41m6}3VZ2olR!d*-a7h}5ku zMfYa{&~}!&!M!|XA+xq5sek|^15A|&FqJBxKBeu(MejNfLg5s32vj{vIcC|uztkji zC(<1lNo1cb?Y34JSR-WKA$T3_y?+I7R4hMIlF3BcrCE@gU{)!B^XT`zJ7U9ywW1pY z5~wfA2PJN=Dp{&X0zx4VXw?GyoJK&aRwVIe3MT01F-Qm_E3{#2n*Fv?mDa)g!#T@F zP0|`{KdTv1$re@_d>Oy~cozR_YMNd{sX$A!s*OwQ78Y+&70Z)asd>J^6;^pvsDfFU z-{euDFKbqM`p(ekPbl2)-F9{((ajr!;NJ5V)Im}sXQ1e#dQ&MWu2aDHwsGOfvXh-P zePq|w=f2|O)52L(zrs5H9nKJI8D3i~x=-Up5vBuLo+GkdvmtQXwsTz7rf!41!hv#= z%9TX({dfP}ijO9Ok9*!{%jQqwL6KL-E|MOnPR%#Iy@jx`GKM!Wxph4rBXNS@(%56~ z8uDq{L@*objjS#T93yCBia9+~9_trYfl8rO4&6Yd;rUJ#JzCRCE{d`8;(rzbC(vD5 zGHf%exvR}qco^`F}QM7EXR71UT49_%pV?i3mYhHgC=6WMB>q`T^>`@>X#v0y5p52*z ztPp5WmV4+_zZ-A@YiZDHFwdIZh8+|V9P-v5#x=zU$$6_UyQ*M#&iQ896uT}4YEx*I z?b=^ScwBA`!kRTR*I4l%BVX(>h`u z#7S}Og4!AlJvB-Sx($XZM5iI?C`sdcBU+oB^;E;Ao7MnrLkl~`#S#Cp_C z6jp0=)>?ozFE?&KlIR0@5=B$Nx2C1iLl&LHB!V8khhdBpJoN*{J|7H+9XiK9BnmeI_JZRK*0(b6Mpki;FUtz0h*7FLye_kd6dmJ{-+qsCV1x8v z)D*d@o#M2n)x-lsH7&sDBv!~F&b&2kshe9Cmc%>3-S7N{1s>|*LtEZgxASeHF}<%~ z2FZ-ayBo3-D^+ZV4Znnx1*9^3I!jwGFNpMeW9uz;RM7K>Iq&>eI$e$;=Dj7QZs2xJ zg~A%HohkK~pg9oXqY#nWT|7jI$-lKe#;)OwG$E4rZPRqdK4-1UpM|p#iy@1lE$F+L zB>MHQf5g(5*4Sq9F$;r)cGH`?1^E&~9cF(uVnUYeNI3KtSR&SgjsmEd)>z{@dFO_P zouj$^-#L=C>S@Q4eZk5mvQLR?=bhVHfLhNQnNoOr;2d0&-~i+IK>dpQZ2JC9^<|#G?}asy9oiYk&R%1 z#KW3!*;e|H0QVpU{lT4qAyqY8RT{c5IuTiyGrHF~l-|Lbs!-6JQyixk$ko+9RJ^*bWX=@vV@+#?d=u{j-_~o{p}yakRHLDwMG67hNZ?>C8d# zI5Zw{pgJE6N<`*3KaYCaNfu0$7f$^8)E>(^(kCL|`3Iuv5ae){^=nbZdcQL>o-E4f zx^;6g-bT9RbgT#Ro=XCnOCWx(>k4UjD`%bg;GUL&qe5FbZmfh!)7xOLwf~(DwX1{7 zXer)3*%Qc)h-22Ewiylhk|0h~R@hag-xh?xS&9uU-D6Q+7#8YRJWJ>-XICD<`!cN3 zUF2Q+2H)LmWH;eb_H2j}wac^!72AdMD$*3z)7~}6 zlPds&jO->o#PEpZZQS@?y{FtX&67df@O(e8PKeBLl~uAb_UU)cSy=Qz#({c?W`L^E zwe{rfF(!iW)wt%BM8mb?+k8Hs@=kr$^iJkvNseOeGC-7jA|e6>>p41A160|9bXs64 z^GPank`2UVAdS@RlIR-Lll!*_vZ02EEj7};vBls?d$N`PHln}xmH*nC*XZY8Un z)Weh-?918HZVp^j1w91_!6ibxo*W;qD5}yrShXlp2++`g)jRHQk{MKJ0~3zyl@t>Z z@p7xwuT1M;-gVlUqM!PquLa`7SvaA^)od5XH{9g=*I5mWvkSKdNRv znhFL|l9#5gdm~SvkFS0!6J>}uCIwW^Xkd~O@^K{#bSc*8K>}LJjMoqSK0<;*5 zs<^jH+?)t2Gc%v3aDy_C2Bo)^WH*;^XhOGbVMN8sFIjN$twl4VrKkY)LPZwff!_7! z18^BapzvvScdVly`Q#7hBaP%$ULozp(lvgG7bT z%A#k^H1}>4&vn(ATsBYGxJzbVdSF^Qj@T`=V%^*cIUw}(8({o8BTjn5zxK^0vUe(& zHf(Ci6WLOg1>Z&(tJb@S|6+12xONgjM>UD+6~Q?}J49b|E) z{1Ny#Bi>qSq~S;aRCz=f*B{m(pCb!5xcb$iml>>f>W?wvRcj_D4qN{@Nt)2Tu&dxy z)#~2F@A{F(-QiZ(-Yk$UfXQf(-LlHYBA`a0vyJvH z)qj!oN(eww`NSSw_DH)K9Q?`j2)ta;nK|P03p;D`r%TRT%?90vGNGu9b|EH#t0nC1i z$K_tvW{Awns9Of`aUl5N+sYDV?121GqH*iQHOY1dw@b<_v%zpd?a^G^!+nle(DkWV zv!Ro|>xEz|Fy_;Qhf&kA5}C>XR-c{4f?(%epwP0;QgcahHY>B^7b&XRhbeaU7ftN` z&8MfEy=XyRX0bMQA6xA8H)4+noTx2IdxNLY&4LHi5a6tx`|| z#qt01*3(C^QHm;Ys;K~&A{#z_7_tmi;>N^g4%SFW*aZ5mP|Ao^v*?37@Rh;6(sF*C zb~ZQzGt&xC@W2nAZN27%7Aq+WuWi>th;D;^!1d|o{?onB^h-p(j;G_h+5qaJMn~xM zBkkl*tJxz*GWR)ErGknwvSo_ooQxc+(AI~V>j7XWu!vh4yiBX0-|XjByW_nTV79=n zwc4MtRKJ34hX5&uOp#Pc>XwR?sabt&xou`Xd|9dHp(cbLN&DnOYWqOPte0Ks`eAR>m_a_;UuLnO6JkBTbF>U*@EZPCETw zbOBG=>E>e?yXW49wJ0bkXq+ew)c{s6#w!LC0Vac2En%6>p`6dzaHt+PEV=F#PnEa2 zAA1Wr3p=~s{2Am>ppH7{bDL*(ljvV-(gAEJ20e@jzZjFIa&1|Gz4HRyO9GP3HOgO_ zUe2l!erW@AncTgLu%8HX#hs{&K<1Jvh#a-+7QgOn=iumkY&e^#MaP?<rWyU=slB{h6VQ(??)Y zH{Z*xKi65?$tMdW@eP;3a^+DRK(C>X)C5Oh zpPhwE#t)mOLoX(JevEiK1;#ZOHhE8oZqCdO7ug}$O>S)jM?!p5e zz1^1Os$5+`ftw%xox(R+azjzX1_J&(t{-=%*x5WZ-H<5<*ybpmWhprpc_o9}%CR9< zJWB+s-pN%ZqIe=S6^>Z42)@0vc@j(ImhoLRA+a97`KXHqg`lA57RHaf3zF|K;TTrgYs{W> zjVnP>GP&xmY<|!w_FY8ebCaE+kZ-2P(+-0hfLL|w5A`w!FT`6&4@wuCei8VFz@rS`z&6PBz+ENZrAC?Qly&iTp5Mat0y<2~K3*6vi zrm>tw+tR$;&cOzyoTMMISya`lRqD}9&+TS*NI^@u*41vb-!V#v2mBm~^Eb{`46 z{+J{B=ngsix_ksvRp|=;@bktY>BncU&leXLN@X)G8KZ%MLibZH`RuPxV(^dgQEBWF z7mswLo$pOa#m}%lePla%-Buc*^%k3}@3{v;EFUu>qCv#*!^pY@|NX@#z>@%019d>?1n+ofabvSn#PF$E#J+!>kV2T}>m7?un});W zicZ6+)9&OFy?1+T2d{pcM(~frPDii0rddUFS3cK+BnVplu*Y9yEkMK|MY5CAz z8@m>lb?+G|6TGt+BP%$_QCH&)s|a-ZOc8}p+}hD}lxJYG*mfr^v{Si{ltZM5Nweua zk;vz|JlM)Z*v`)>;>Pnj`imhcYKK{gddbiBH(J`Ede)J0^36rE*{tQ4EWci84-5I&Y1=z}VmCg{> zFQmHni5_*(aI)XdFRLckJVND##t_AieYHthxY3w&m{MhFwpu2Ct4%R6|7HHe-5|Dm zk#V})&e!q=XgXq<wR#32#y-yuo=W+-Hrwd zGvoYZyI=ieYXSu`Pqdy5SX5wj!WMbLl~1QU`_$f>c-OzhOZyU6D3ZFEH z#diaLQLs9qbJJncy))R`+XwYw4TOpO>FQE8LK&!Yp&~v2T9@D5TVDq8ZAVG#PqxSJAy^$O^`huMc8I0|fXUj%UmR-v)4!WsF8uqVOo@^O~T#*KkPH+J{>4Xyh5~RIkOh~SfadzP-J%mp|zZ33+uR@G;Eg|PW{ohdC zNS;U)1`5&Qr+p#{%e}IC96m=Zv0&`nCJnM^%XS%u<&)hh2ASGee?ex8p48FqtXMo^ zJ?$bQrC4vQpH@V)OQmLy$5uP8GvsJ@J@nFW9cek=!xID1kx3P(XWZJh$bE#?Ol4R9 z%HiZ6lU5V_r7fhpI8iHU6Zz6)A8=d%b6ul*Ke9bE)I?7KMbUr%)!*6mQ3kWC0kWTC zBbM`M>RVIIe+{8T=bW&47rp$NljwS=t0x_;nWXvLYj^Kc3#76h%noa2-v?AnOpq=q5CS-Q z+P!Mw5%$7_F3@|+jV>zWe&x^n`e2)?@Q$=r*2Ho%>qYb0RMFJ(x}I}U21+yF9lj34 zY#1JX_`KsJ_`xY&0grvH(xX~ray3J38z604i2Jaa>)ICH;;s$ z&Fwz?r%U0v>Dg(Vm8mOTop}o*>iwgo)4>}zqxh>!;YN`u6Lj^1PEsEqnkOw$fdo>2 z&+4+)53udU$B@TjE>nZH0pYnz`*y$Qjx! z3+jGae&Lh4(4~RkTK0nDVbcA4=rJSSX5kb7yxRtuI#KpmM!Db0f6r+&_8Wy=Kxo_O z!~0w09I`JIQ8raJDo;hz`^M$1?sfBZ&z^k;45WG}HYav-bc)b5II=(9?oxT`AsWa5 zm{hhkRxr7+$mRWSm|?k@R-ss?vS`M)2k*JM)5Su3r{tB`mFa`dl=KG-VV*9$$E^J) zYhb^!a_^bZ(4xImGcm|a4e(Gpmf>p^EYbEu+E;DBOVu#&V+sJj8VGDR-XPdyjUiqo z+YuY=0tRR(0XB zC&SOz_nmr%r0CV!O!LKl<4{ho2}MAb!BwKX9&|bm$hmw{4_8!b7pdupYO$54HV~02 z7Jf(Le?F3rR6|yHz6-aYw>Yfe`L5@3pYDHZG^7tW4ow;V`K>#l$NwM0QBZM+JAe>) z`%FRTAoN~zY}vr!zaq34#4m#h-^Vt71oB-4K=v=~8G9h#rDJwT`xzc|{anmopxQL`Zlc@(R6|5Wyzr?K%m3H&DOuu?vaPbYC7roCEVqh@|P`8sYXmKP=DLDL_)p z9pwIm9Za2bDGB;cA&8{>7t1Wz>2CGya|+X(;`R-?IOZ`c>shDvmj=9+iYrnC;P&nZ zvrZw)5zP{IAcM%PbyuG)0Te;mE!SQ4BHC@;@OH$hv114u?b4>#s?)J z@ZOf>{NI<}Uq&{Z7j?va0j}R){YOsa+*d3QGb;bPCOiV|5&xyCRm^Xcw7|on|6Tin zVmzV$lDSse7EwX$O5=Z*TXqide{^4@(vCNMdqe_CX-9kY39Q33vP6~A9@B^-jrvZC zl}Z;gjA;b#n%zhp_g7du{g;iRT!>!1G=n_07|Luu>)_q>9C0^Q?)9UtigSvuVX)Z% zC2GV_i5-ixJ%6A_H0en``o>^QsTxmX zSz`C&ogo~ys@@(TB5ek`2kOrIK1K%N_A5V#8>EY6W(jA0#^Fy=g<4Z&YVT%#6uQ)M>rrr(( zFHiSUR(WpmETMoM%qX#qsVO%?d@E@s$!+Z`lvgAhb3kni*{m6F_QK|61Mc*jG%R)X(u{j{S6&_^M!#)_*8vrZB$ zn5N>&@aUb=^6;Tq0HDq`+hj2SUTMFQ?W=bNnA#3O=$@3xD3l2NG-DCsprO2Isfd7y zL=1#JBu;W?C95t>uCHXyHocYzAJHf1uaq;(N9-Ufc9k8egKDv*A03HNDgE;3gEv7_ zba0cukZL*z_5UFb@xR1@c*kHbxmM@4i-1sA)c8H4eob<5!iILD*oT7q*1wXTH+uWn zGzOxB`h|ibH?jTpu_6cIx-mm*x#j#GN7cWD-_bm>7*_zeK}X}Tr>h!jSybe~L9YlF8Su|$Xx zhp|4SQpJ7##a!hx*@RKbI!tcx!#B{5z)+U?cVaCIA>#G{f~5C2ynU|a2*HbINwj{s zw$Y6!vp=?KDw$_M6j1+J}9AJP`1d ziEhBP{DHPO=m0gZkeQoCTwchgQ7e_1{Ye*F%Y{Hm&80*b0+Ug$AZGsY%*#~&!i8=R z5sx|5TkUo=s-1Si04lA-rkLp=h@G+`(t8;FBjP1zm~Sm5J-2k0PJ(}ao??mBDI}bK z{)v_vzJmv$>1!j`aZE}TF;h$yexzU}$By7< zQrNo_##wIk#E6AK19EnX+6Q%Ho@GVkUs+i=z~7uc#(opF5saQ#9(RZx?Pg=z6b5JR zU4_j#RS!Xz(^W}m(|%8bL)mRkjoSSRVARAGu0>1kqzp!$i*8cD%Zy4C6AQm~}@#RSx2OKSpRJ=dznLM=o8o;p&lTk&~MZs7fX z=BDWXxanO?HGkO&d?=jIn&4$%zK&EJMJR$0EM>vWr|?bin-eVaDwYY(;GYG&S)+&M zt?}rgg1qA_Zk&rc5O0$&QWwvfQXvm9kVp~9vjSJvx{}3{DqhNvS?d|B*?+*fg;sc$8uz;IieNF6V30LB++abL~g3ybykyDnfY%!W^7K>aY zPUf^u1DQZ$p zL6q<)o;8}a-6AG025%#h++{$alVZ*SruZjGJ4FDYKg=*NHbFp~T7A{r!koE-%*`+U zQB+g^Dk{t-6fB!7BT7+fF3U+)@wC|V;wpqebHj78+T1n~iq_lGnpXmzvYru29x1t? zfe!sBP(+I2X-Be2;p(`{*LI|GVy$gr?qRN2cZ7b?K8_8%W2=O(bF8w@II;eR(+$2E zAa%K!f9b=H90sUGR)eL2&6qK~uaaGAY*0w}8nO7$Lq*=!3JH<^9%}UTM12`*hLlLA z-oS2UDPZ#~c+-DgeA|_W9Y3m+|)&8eCyqgGffffGa zUkHaViYf0}9}fM3Xa?B=gW+ik&2QwckQ0GgIN|qNfKBk^uBDEj)LcgE>wmOd=rBt~ z%713VSElGS}T)YcLI8r9g8d8blBXlOj?5^>7)Q+iF zsZw+mZ&YlJ+)u7$T`7H58y|lE!Ps1md~K0MEAhEu`|PTM`OC9r`cI(W7T4fBi?m+2 z!+Tn?Mw=r(`XL)cOFT_ph*l!apv+tz?ld;~hW9=tV}iP=<5!%7`yh*D8uY%xM{E|F z-}~Mn68|VbhQl4RPwn(H%lzHNvC~ab|8FvHPAX&K-{5^hoc@AwQycKh9cmP9i7asx z!PLBm051c3BXn<9j(^?}6)77>h%4R|`9h+0%AXY2J^_MI*q9AU(_xV1;$5?d)oP)7 zrttB96jlZ(3|o^%$!c*fid=}q!~QBB=uc>xb`efMib*kn5cXgV#6eS`4#Byz`?mYbSGJM>TC(4`W~3AT;t=)dm++uI+A5EFv- zPGh$gxJt8&yeMOsnTlvWiVgVjzWkQ|YzXXVyg!^LQPAQimf$V7JlMvd*ylSD2U*

ecX{*7yl%jSIGS=h;&H4PIwa)I+8!)ZK4t>!{2o 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 z%0D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 literal 56887 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 diff --git a/www/index.html b/www/index.html index d505d85..d17051f 100644 --- a/www/index.html +++ b/www/index.html @@ -81,8 +81,8 @@ If you have a particular keyset you use often, it can be stored in the -

The Main tab contains just the power, volume, and channel buttons. It is -intended to be a quick way to get to the most important, commonly used +

The Main tab contains just the power, volume, mute, and channel buttons. +It is intended to be a quick way to get to the most important, commonly used controls. The name of the current keyset is also provided in this tab.

Utility Tab

@@ -90,7 +90,7 @@ controls. The name of the current keyset is also provided in this tab.

The Utility tab contains a selection of commonly useful controls, such as -"Mute", "Sleep", "Input", "Closed Captions / Subtitles", and the color buttons. +"Sleep", "Input", "Closed Captions / Subtitles", and the color buttons. This tab is intended to be a quick way to reach the most frequently used buttons; as such, the selection may be updated in future versions of Pierogi.

-- 1.7.9.5