From 802ac496e9d38152e50eab00b0b8426c4275f6e6 Mon Sep 17 00:00:00 2001 From: furrtek Date: Sun, 3 Jan 2016 07:24:30 +0100 Subject: [PATCH] Xylos (CCIR tones) TX, jammer update, SD card mod load Xylos TX (CCIR tones) ;) Jammer update, still buggy and inefficient SD card module loader update --- firmware/application/Makefile | 3 + firmware/application/main.cpp | 7 +- firmware/application/modules.h | 4 +- firmware/application/splash.hpp | 2143 ++++++++++--------- firmware/application/ui_afskrx.cpp | 144 ++ firmware/application/ui_afskrx.hpp | 76 + firmware/application/ui_lcr.cpp | 4 +- firmware/application/ui_navigation.cpp | 64 +- firmware/application/ui_xylos.cpp | 246 +++ firmware/application/ui_xylos.hpp | 191 ++ firmware/baseband-tx.bin | Bin 20608 -> 23856 bytes firmware/baseband-tx/Makefile | 1 + firmware/baseband-tx/main.cpp | 6 + firmware/baseband-tx/proc_fsk_lcr.cpp | 7 +- firmware/baseband-tx/proc_jammer.cpp | 8 +- firmware/baseband-tx/proc_xylos.cpp | 75 + firmware/baseband-tx/proc_xylos.hpp | 64 + firmware/baseband.bin | Bin 29832 -> 26904 bytes firmware/baseband/Makefile | 2 + firmware/baseband/dsp_fir_taps.hpp | 73 + firmware/baseband/main.cpp | 24 +- firmware/baseband/proc_afskrx.cpp | 122 ++ firmware/baseband/proc_afskrx.hpp | 68 + firmware/common/lcd_ili9341.cpp | 64 + firmware/common/lcd_ili9341.hpp | 1 + firmware/common/message.hpp | 14 +- firmware/common/portapack_shared_memory.hpp | 3 + firmware/common/ui_widget.cpp | 1 - 28 files changed, 2272 insertions(+), 1143 deletions(-) create mode 100644 firmware/application/ui_afskrx.cpp create mode 100644 firmware/application/ui_afskrx.hpp create mode 100644 firmware/application/ui_xylos.cpp create mode 100644 firmware/application/ui_xylos.hpp create mode 100644 firmware/baseband-tx/proc_xylos.cpp create mode 100644 firmware/baseband-tx/proc_xylos.hpp create mode 100644 firmware/baseband/proc_afskrx.cpp create mode 100644 firmware/baseband/proc_afskrx.hpp diff --git a/firmware/application/Makefile b/firmware/application/Makefile index 2f5790a0e..cb5693f6f 100755 --- a/firmware/application/Makefile +++ b/firmware/application/Makefile @@ -172,6 +172,9 @@ CPPSRC = main.cpp \ ui_receiver.cpp \ ui_spectrum.cpp \ ui_loadmodule.cpp \ + ui_afskrx.cpp \ + ui_sigfrx.cpp \ + ui_xylos.cpp \ receiver_model.cpp \ transmitter_model.cpp \ spectrum_color_lut.cpp \ diff --git a/firmware/application/main.cpp b/firmware/application/main.cpp index b19235581..94d0a7d63 100755 --- a/firmware/application/main.cpp +++ b/firmware/application/main.cpp @@ -19,8 +19,13 @@ * Boston, MA 02110-1301, USA. */ +//TODO: check jammer bandwidths +//TODO: GSM channel detector +//TODO: wait_for_switch() in baseband-tx ! +//TODO: AFSK receiver +//TODO: SIGFOX RX/TX //TODO: Reset baseband if module not found (instead of lockup in RAM loop) -//TODO: Module name/filename in modules.hpp to indicate requirement in case it's not found +//TODO: Module name/filename in modules.hpp to indicate requirement in case it's not found ui_loadmodule //TODO: LCD backlight PWM //TODO: BUG: Crash after TX stop //TODO: Check bw setting in LCR TX diff --git a/firmware/application/modules.h b/firmware/application/modules.h index d9c115464..86c07db71 100644 --- a/firmware/application/modules.h +++ b/firmware/application/modules.h @@ -1,2 +1,2 @@ -const char md5_baseband[16] = {0xca,0x05,0xc3,0xbf,0x78,0x10,0xad,0xac,0x2a,0x2b,0x31,0x19,0xf9,0xe8,0x91,0x26,}; -const char md5_baseband_tx[16] = {0xe7,0x28,0x33,0x67,0x45,0x37,0x1e,0x13,0x3c,0x85,0xb5,0x91,0x51,0xaa,0xed,0x4f,}; +const char md5_baseband[16] = {0xce,0x87,0x2b,0x2c,0x9e,0x74,0xe8,0x1c,0x1c,0xe9,0xfc,0xc2,0x40,0xc3,0x32,0xd5,}; +const char md5_baseband_tx[16] = {0x1b,0xef,0x34,0x50,0x45,0xd7,0xae,0x7c,0xb5,0x4f,0x0c,0x5a,0x80,0xa0,0xbc,0x05,}; diff --git a/firmware/application/splash.hpp b/firmware/application/splash.hpp index f61fe6b49..bc90176ab 100644 --- a/firmware/application/splash.hpp +++ b/firmware/application/splash.hpp @@ -1,1075 +1,1076 @@ -// Generated with "xxd -i splash.bmp" +// Generated with: +// Gimp :(, then "xxd -i *.bmp" unsigned char splash_bmp[] = { - 0x42, 0x4d, 0x28, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0x00, - 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xb9, 0x00, 0x00, 0x00, 0x1b, 0x01, - 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0xb2, 0x31, - 0x00, 0x00, 0x12, 0x0b, 0x00, 0x00, 0x12, 0x0b, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x1c, 0x80, 0x00, 0x26, 0x2f, - 0xaa, 0x00, 0x03, 0x04, 0x26, 0x00, 0x06, 0x09, 0x49, 0x00, 0x00, 0x00, - 0xc8, 0x00, 0x00, 0x00, 0x73, 0x00, 0x81, 0x81, 0x87, 0x00, 0x1d, 0x1d, - 0x1e, 0x00, 0xcb, 0xcb, 0xce, 0x00, 0x99, 0x99, 0x9b, 0x00, 0x6b, 0x6b, - 0x6c, 0x00, 0xfd, 0xfd, 0xfd, 0x00, 0xb0, 0xb0, 0xb0, 0x00, 0x52, 0x52, - 0x52, 0x00, 0x36, 0x36, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xff, - 0x00, 0x0c, 0xfe, 0xed, 0xaa, 0xaa, 0xdd, 0xe7, 0x38, 0xff, 0x00, 0x00, - 0x76, 0xff, 0x00, 0x0e, 0xda, 0x6c, 0x88, 0xc8, 0xcc, 0x9a, 0xef, 0x00, - 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xfd, 0xad, - 0xac, 0x88, 0x88, 0x8c, 0xc6, 0xde, 0x36, 0xff, 0x00, 0x00, 0x74, 0xff, - 0x00, 0x12, 0x7a, 0xd9, 0x98, 0x88, 0x88, 0x8c, 0xcc, 0x6a, 0xdf, 0x00, - 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x12, 0xda, 0xc8, - 0xac, 0x88, 0x8c, 0xcc, 0xc6, 0xc9, 0xaf, 0x00, 0x34, 0xff, 0x00, 0x00, - 0x74, 0xff, 0x00, 0x12, 0x69, 0x88, 0xcc, 0xcc, 0xc8, 0x8c, 0x88, 0xcc, - 0xcf, 0x00, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x12, - 0x9c, 0x98, 0xcc, 0x66, 0xc8, 0x89, 0xc8, 0xc9, 0xcf, 0x00, 0x34, 0xff, - 0x00, 0x00, 0x74, 0xff, 0x00, 0x12, 0x68, 0xa6, 0xc8, 0x9e, 0x88, 0x98, - 0x8c, 0x6c, 0x6f, 0x00, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, - 0x00, 0x12, 0xe8, 0x96, 0xc8, 0x89, 0xe8, 0xa9, 0x8a, 0xd9, 0xdf, 0x00, - 0x34, 0xff, 0x00, 0x00, 0x74, 0xff, 0x00, 0x12, 0x78, 0xca, 0x6c, 0xc8, - 0x69, 0x9c, 0xc9, 0xa8, 0x7f, 0x00, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x74, 0xff, 0x00, 0x10, 0xec, 0x88, 0xd6, 0x9a, 0xca, 0x9e, 0xea, 0xc9, - 0x36, 0xff, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xe9, 0xc8, 0x86, 0xd9, - 0xaf, 0xda, 0xa6, 0x8c, 0x34, 0xff, 0x02, 0xfe, 0x00, 0x00, 0x74, 0xff, - 0x00, 0x10, 0xfc, 0x88, 0x86, 0xcc, 0x6e, 0xcc, 0x66, 0x8c, 0x36, 0xff, - 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xf6, 0xcc, 0x88, 0x88, 0x8d, 0xc8, - 0xc8, 0x8a, 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, - 0xf6, 0xcc, 0xc8, 0xc8, 0x86, 0x88, 0xc8, 0x8d, 0x36, 0xff, 0x00, 0x00, - 0x74, 0xff, 0x00, 0x10, 0xf9, 0x88, 0x99, 0x88, 0x99, 0x88, 0xcc, 0x8f, - 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xac, 0x88, - 0x9c, 0xcc, 0xcc, 0xc9, 0xa6, 0x6f, 0x36, 0xff, 0x00, 0x00, 0x74, 0xff, - 0x00, 0x10, 0xec, 0x88, 0x89, 0xcc, 0x6a, 0x99, 0xcc, 0xdf, 0x34, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xfc, 0x88, 0x8c, 0x89, - 0xad, 0x8c, 0x68, 0xef, 0x36, 0xff, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, - 0xfc, 0x88, 0x8c, 0x88, 0xaa, 0xc8, 0x68, 0xef, 0x34, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x72, 0xff, 0x00, 0x10, 0xfc, 0x88, 0x88, 0xcc, 0x88, 0xaa, - 0xc6, 0x68, 0x38, 0xff, 0x00, 0x00, 0x72, 0xff, 0x00, 0x10, 0xf6, 0xb8, - 0xc8, 0x9c, 0x88, 0xd6, 0x8c, 0x9c, 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x72, 0xff, 0x00, 0x10, 0xfd, 0x8c, 0xcc, 0x68, 0xc6, 0xdc, 0x88, 0x98, - 0x38, 0xff, 0x00, 0x00, 0x72, 0xff, 0x00, 0x12, 0xfd, 0x88, 0xcc, 0xa9, - 0x69, 0xdc, 0x8c, 0x9c, 0x7f, 0x00, 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x72, 0xff, 0x00, 0x10, 0xf6, 0x88, 0x8c, 0xda, 0x96, 0x69, 0x8c, 0x69, - 0x38, 0xff, 0x00, 0x00, 0x72, 0xff, 0x00, 0x10, 0xfc, 0x9c, 0x88, 0x99, - 0x9e, 0x76, 0x6a, 0xa9, 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2a, 0xff, - 0x00, 0x0a, 0xfe, 0xed, 0xed, 0xee, 0x7f, 0x00, 0x3e, 0xff, 0x00, 0x10, - 0xfc, 0xc9, 0x68, 0x88, 0xcc, 0xc8, 0x88, 0x8d, 0x38, 0xff, 0x00, 0x00, - 0x28, 0xff, 0x00, 0x0e, 0xf7, 0xa9, 0xc8, 0xcc, 0xcc, 0xc6, 0xef, 0x00, - 0x3c, 0xff, 0x00, 0x10, 0xdc, 0x9c, 0x99, 0x9c, 0x88, 0x8b, 0x8c, 0x6f, - 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x28, 0xff, 0x00, 0x10, 0xe6, 0x6a, - 0x6c, 0x98, 0x89, 0x88, 0xca, 0xa7, 0x3a, 0xff, 0x00, 0x10, 0x7c, 0x99, - 0x69, 0xcc, 0x6d, 0x9c, 0xc9, 0x7f, 0x38, 0xff, 0x00, 0x00, 0x26, 0xff, - 0x02, 0xfe, 0x02, 0x9c, 0x08, 0x88, 0x00, 0x08, 0xcc, 0x88, 0x8c, 0x67, - 0x38, 0xff, 0x00, 0x0e, 0xfc, 0xc9, 0x99, 0x9c, 0x8d, 0xc8, 0xc9, 0x00, - 0x38, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x28, 0xff, 0x00, 0x14, 0x99, 0x88, - 0x88, 0x88, 0x8c, 0x88, 0xc8, 0x8c, 0xc8, 0x67, 0x36, 0xff, 0x00, 0x0e, - 0x79, 0xc9, 0x9c, 0x69, 0x66, 0x8c, 0xce, 0x00, 0x3a, 0xff, 0x00, 0x00, - 0x28, 0xff, 0x00, 0x16, 0xf6, 0xc8, 0x88, 0x9c, 0x8c, 0x88, 0xcc, 0xcc, - 0x88, 0xc8, 0xa7, 0x00, 0x34, 0xff, 0x00, 0x0e, 0xa9, 0xc9, 0x9c, 0xd6, - 0xdc, 0xcc, 0xcf, 0x00, 0x38, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2a, 0xff, - 0x00, 0x16, 0x6c, 0xc8, 0xc9, 0xcc, 0xcc, 0x89, 0xc8, 0xcb, 0x98, 0xc9, - 0xef, 0x00, 0x32, 0xff, 0x00, 0x0e, 0x99, 0xc6, 0x99, 0xda, 0xd8, 0xcc, - 0xaf, 0x00, 0x3a, 0xff, 0x00, 0x00, 0x2a, 0xff, 0x00, 0x18, 0x76, 0x98, - 0x9c, 0x8c, 0x6c, 0x89, 0xc8, 0x88, 0xcc, 0xc8, 0x8a, 0xef, 0x2e, 0xff, - 0x00, 0x10, 0xfd, 0x9c, 0xcc, 0xc6, 0xad, 0x6c, 0x8c, 0x7f, 0x38, 0xff, - 0x02, 0xfe, 0x00, 0x00, 0x2a, 0xff, 0x00, 0x1a, 0xfe, 0xac, 0xcc, 0xcc, - 0x88, 0xcc, 0x88, 0xcb, 0x9c, 0xc8, 0x88, 0x89, 0xef, 0x00, 0x2c, 0xff, - 0x00, 0x0e, 0xf6, 0x99, 0x96, 0x9a, 0xd6, 0xc8, 0xcc, 0x00, 0x3c, 0xff, - 0x00, 0x00, 0x2c, 0xff, 0x00, 0x1a, 0xfa, 0x9c, 0xc8, 0xcc, 0x98, 0x88, - 0x88, 0x9c, 0x98, 0x88, 0x8c, 0x8c, 0xef, 0x00, 0x2a, 0xff, 0x00, 0x0e, - 0xfd, 0xcc, 0x69, 0x6e, 0xee, 0xcc, 0xc9, 0x00, 0x3a, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x2c, 0xff, 0x00, 0x1c, 0xfe, 0xc9, 0xc8, 0x86, 0x98, 0x8c, - 0x88, 0xcc, 0xcc, 0x88, 0x88, 0xcc, 0x8c, 0xdf, 0x28, 0xff, 0x00, 0x0e, - 0xf6, 0xc9, 0xcc, 0x9d, 0x6d, 0x8c, 0xca, 0x00, 0x3c, 0xff, 0x00, 0x00, - 0x2e, 0xff, 0x00, 0x1a, 0xe8, 0xcc, 0xc8, 0xc8, 0x88, 0x86, 0xa9, 0x8c, - 0xc8, 0x88, 0xc8, 0xc8, 0x8c, 0x00, 0x28, 0xff, 0x00, 0x0e, 0xf9, 0xcc, - 0x9c, 0x66, 0x9d, 0xcc, 0xca, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x2e, 0xff, 0x00, 0x1c, 0xfd, 0x66, 0x88, 0x88, 0xcc, 0x8a, 0xc9, 0xcc, - 0xc9, 0xcc, 0x88, 0xcc, 0xc8, 0xcf, 0x26, 0xff, 0x00, 0x0e, 0xdc, 0xc9, - 0x9c, 0x96, 0x6d, 0xcc, 0xca, 0x00, 0x3c, 0xff, 0x00, 0x00, 0x30, 0xff, - 0x00, 0x1a, 0xfa, 0x98, 0xc8, 0x6c, 0x9c, 0xcc, 0x88, 0x8c, 0x98, 0xcc, - 0x8c, 0x8c, 0x87, 0x00, 0x24, 0xff, 0x00, 0x10, 0xfe, 0x9c, 0x66, 0x96, - 0xda, 0x66, 0xcc, 0x9a, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x32, 0xff, - 0x00, 0x18, 0xa9, 0x68, 0xcd, 0xa6, 0xc8, 0xcc, 0x88, 0xcc, 0xcc, 0x88, - 0xc8, 0xce, 0x24, 0xff, 0x00, 0x10, 0xe6, 0xcc, 0x69, 0xd6, 0xda, 0xd6, - 0xc9, 0xca, 0x3c, 0xff, 0x00, 0x00, 0x32, 0xff, 0x00, 0x18, 0xfc, 0xc8, - 0xc9, 0x9a, 0xcc, 0xcc, 0xc8, 0xc9, 0xc8, 0x88, 0x8c, 0x8f, 0x24, 0xff, - 0x00, 0x10, 0x99, 0xc9, 0x69, 0x69, 0xa9, 0xd6, 0xcc, 0x9d, 0x3a, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x32, 0xff, 0x00, 0x18, 0xf6, 0x9d, 0x98, 0x89, - 0xc8, 0xc8, 0x6c, 0xc9, 0x88, 0x88, 0x8c, 0x9f, 0x24, 0xff, 0x00, 0x10, - 0x69, 0xc6, 0x66, 0x6a, 0xa6, 0x6c, 0x99, 0x9a, 0x3c, 0xff, 0x00, 0x00, - 0x34, 0xff, 0x00, 0x16, 0x69, 0x69, 0x88, 0xac, 0xc8, 0xc9, 0xc8, 0x8c, - 0xb8, 0x88, 0x6f, 0x00, 0x22, 0xff, 0x00, 0x12, 0xf7, 0xa9, 0x9a, 0x6a, - 0xa6, 0x69, 0xa9, 0xc9, 0x6d, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x34, 0xff, 0x00, 0x16, 0xf9, 0x69, 0xcc, 0x8d, 0xc8, 0xcc, 0x88, 0x98, - 0x88, 0x88, 0xaf, 0x00, 0x22, 0xff, 0x00, 0x12, 0xfa, 0x6c, 0x9a, 0xa6, - 0xaa, 0xa6, 0x69, 0x99, 0x6a, 0x00, 0x3c, 0xff, 0x00, 0x00, 0x36, 0xff, - 0x00, 0x14, 0x98, 0xa8, 0xcc, 0xd8, 0x88, 0x88, 0xc8, 0x8c, 0x88, 0x9f, - 0x22, 0xff, 0x00, 0x12, 0x7a, 0x99, 0x99, 0xa6, 0x6a, 0x6a, 0xd9, 0x99, - 0x6a, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x14, - 0xfc, 0xca, 0xcc, 0x99, 0xcc, 0x9c, 0xc8, 0x88, 0xcc, 0x6f, 0x22, 0xff, - 0x00, 0x12, 0xaa, 0x99, 0x69, 0x69, 0x66, 0x6a, 0xd9, 0x69, 0x6a, 0x00, - 0x3c, 0xff, 0x00, 0x00, 0x36, 0xff, 0x00, 0x14, 0xf7, 0xca, 0xc8, 0xca, - 0xad, 0x69, 0xc8, 0x88, 0x89, 0xaf, 0x22, 0xff, 0x00, 0x12, 0xca, 0x99, - 0x96, 0xa6, 0xaa, 0xad, 0xd9, 0x66, 0x6a, 0x00, 0x3a, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x38, 0xff, 0x00, 0x12, 0x9c, 0x99, 0xae, 0xda, 0xa9, 0xc8, - 0x88, 0x8c, 0xdf, 0x00, 0x20, 0xff, 0x00, 0x14, 0xfd, 0x9d, 0x96, 0x66, - 0x96, 0x6d, 0x6a, 0xa6, 0x66, 0x6a, 0x3c, 0xff, 0x00, 0x00, 0x38, 0xff, - 0x00, 0x10, 0xd9, 0x69, 0x96, 0xaa, 0xa6, 0xc8, 0x8c, 0x8c, 0x1e, 0xff, - 0x00, 0x18, 0xfe, 0xa6, 0xf6, 0x9a, 0x96, 0x9a, 0x66, 0xaa, 0xaa, 0x66, - 0x66, 0xaa, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, - 0xa8, 0xc9, 0x6a, 0xa6, 0xa6, 0xc8, 0x88, 0xca, 0x1e, 0xff, 0x00, 0x18, - 0xf7, 0xed, 0xd6, 0x9a, 0x66, 0x6a, 0x6a, 0x66, 0x6a, 0xaa, 0x6a, 0xad, - 0x3c, 0xff, 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, 0xec, 0x99, 0x9a, 0xa6, - 0xaa, 0x88, 0xc8, 0x97, 0x1e, 0xff, 0x00, 0x18, 0xfe, 0xda, 0x99, 0x9d, - 0xa6, 0x6a, 0x6a, 0xd6, 0xaa, 0x6a, 0xaa, 0xad, 0x3a, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, 0xf6, 0x9c, 0xcc, 0x66, 0x66, 0x88, - 0x9c, 0xcf, 0x1e, 0xff, 0x00, 0x18, 0xfe, 0xda, 0x96, 0x9a, 0x66, 0xaa, - 0xaa, 0xad, 0xdd, 0x6a, 0xaa, 0xae, 0x3c, 0xff, 0x00, 0x00, 0x38, 0xff, - 0x00, 0x10, 0xf6, 0xc8, 0xcc, 0x99, 0x99, 0x88, 0x8c, 0x9f, 0x1e, 0xff, - 0x02, 0xfd, 0x02, 0xda, 0x08, 0x66, 0x00, 0x0c, 0xae, 0xea, 0xae, 0xaa, - 0xaa, 0xa7, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, - 0xf9, 0xcc, 0xc9, 0x66, 0x69, 0x8c, 0xcc, 0xaf, 0x1e, 0xff, 0x00, 0x1c, - 0xfd, 0xda, 0x66, 0x66, 0x66, 0xad, 0xdd, 0xdd, 0xd7, 0xaa, 0xad, 0xa7, - 0xff, 0x77, 0x38, 0xff, 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, 0xdc, 0xcc, - 0x99, 0x69, 0x69, 0x89, 0xcc, 0x7f, 0x1e, 0xff, 0x00, 0x1c, 0x7d, 0xda, - 0x66, 0x6a, 0xaa, 0xdd, 0xdd, 0xaa, 0x7d, 0xea, 0xda, 0xde, 0xff, 0xef, - 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, 0x00, 0x0e, 0x69, 0x99, - 0x96, 0x99, 0x96, 0x8c, 0xc9, 0x00, 0x20, 0xff, 0x00, 0x1c, 0xea, 0xd6, - 0xa6, 0x6a, 0xaa, 0xdd, 0xad, 0xdd, 0xed, 0xda, 0xdd, 0xdd, 0xe7, 0xef, - 0x38, 0xff, 0x00, 0x00, 0x36, 0xff, 0x00, 0x10, 0xfd, 0x66, 0x96, 0x66, - 0x99, 0x99, 0xcc, 0xcc, 0x20, 0xff, 0x00, 0x1c, 0xad, 0xd6, 0xaa, 0x6a, - 0xad, 0xaa, 0xdd, 0xde, 0xed, 0xdd, 0xdd, 0xdd, 0xe7, 0x7f, 0x36, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x10, 0xf6, 0xd9, 0x66, 0xa6, - 0x9c, 0xa8, 0xc6, 0xc9, 0x1e, 0xff, 0x00, 0x1c, 0xf7, 0xad, 0xaa, 0xde, - 0xaa, 0xaa, 0xad, 0xad, 0xee, 0xed, 0xdd, 0xdd, 0xde, 0xd7, 0x3a, 0xff, - 0x00, 0x00, 0x36, 0xff, 0x00, 0x10, 0xda, 0xa9, 0x66, 0x66, 0xc6, 0x68, - 0x96, 0x96, 0x1e, 0xff, 0x00, 0x1c, 0xfe, 0xad, 0xdd, 0xdd, 0xda, 0xaa, - 0xdd, 0xee, 0xed, 0xee, 0xde, 0xdd, 0xdd, 0xe7, 0x38, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x36, 0xff, 0x00, 0x10, 0xd6, 0x66, 0x96, 0x99, 0x9a, 0xc8, - 0x69, 0x9d, 0x1e, 0xff, 0x00, 0x1c, 0x7a, 0xad, 0xda, 0xde, 0xda, 0xaa, - 0xde, 0xee, 0xee, 0xee, 0xde, 0xdd, 0xde, 0x7f, 0x3a, 0xff, 0x00, 0x00, - 0x34, 0xff, 0x00, 0x12, 0xfa, 0x6a, 0x69, 0x99, 0xc9, 0xac, 0x89, 0x66, - 0x9d, 0x00, 0x1e, 0xff, 0x00, 0x1c, 0xda, 0xad, 0xad, 0xde, 0xda, 0xd7, - 0xee, 0xee, 0xee, 0x7e, 0xee, 0xee, 0xed, 0x7f, 0x38, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x32, 0xff, 0x00, 0x14, 0xfe, 0xd6, 0x66, 0xa9, 0x99, 0x99, - 0xcc, 0x96, 0xaa, 0x9e, 0x1c, 0xff, 0x00, 0x20, 0xfe, 0xed, 0xdd, 0xdd, - 0xde, 0xed, 0xde, 0xee, 0xee, 0xee, 0x7e, 0x7e, 0xee, 0xee, 0x77, 0x7f, - 0x38, 0xff, 0x00, 0x00, 0x2e, 0xff, 0x00, 0x18, 0xf7, 0xdd, 0xaa, 0x66, - 0x6a, 0xaa, 0x69, 0x9c, 0xc9, 0x9a, 0xaa, 0x9d, 0x1c, 0xff, 0x00, 0x20, - 0xda, 0xdd, 0xdd, 0xdd, 0xde, 0xed, 0xde, 0xe7, 0xe7, 0xe7, 0xee, 0xe7, - 0xee, 0xee, 0xee, 0x7f, 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2e, 0xff, - 0x00, 0x18, 0xed, 0xa6, 0xaa, 0xaa, 0x66, 0xaa, 0xaa, 0x99, 0x6a, 0x66, - 0xaa, 0x6a, 0x1c, 0xff, 0x00, 0x20, 0xdd, 0xed, 0xdd, 0xed, 0xde, 0xed, - 0xee, 0xee, 0x77, 0xee, 0xee, 0xe7, 0x7e, 0xee, 0xe7, 0x7f, 0x38, 0xff, - 0x00, 0x00, 0x2c, 0xff, 0x00, 0x1a, 0xf7, 0xdd, 0xaa, 0xdd, 0xde, 0xd6, - 0xad, 0xaa, 0xaa, 0xad, 0x69, 0x6a, 0x6a, 0x00, 0x1c, 0xff, 0x00, 0x20, - 0xdd, 0xdd, 0xde, 0xed, 0xee, 0xed, 0xee, 0x77, 0x7e, 0xee, 0xe7, 0xe7, - 0xee, 0xee, 0xe7, 0x7f, 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2c, 0xff, - 0x00, 0x1a, 0xdd, 0xad, 0xdd, 0xad, 0xdd, 0xda, 0xaa, 0xaa, 0x66, 0x66, - 0x66, 0xaa, 0x9a, 0x00, 0x1c, 0xff, 0x00, 0x20, 0xdd, 0xde, 0xee, 0xee, - 0xde, 0x7e, 0xe7, 0x7e, 0xee, 0xe7, 0x77, 0xee, 0xe7, 0xe7, 0xe7, 0x77, - 0x38, 0xff, 0x00, 0x00, 0x28, 0xff, 0x00, 0x20, 0xf7, 0xed, 0xda, 0xaa, - 0xdd, 0xda, 0xda, 0xad, 0xaa, 0xaa, 0xaa, 0xa6, 0x6a, 0xaa, 0x6a, 0x7f, - 0x1a, 0xff, 0x00, 0x20, 0xee, 0xdd, 0xed, 0xed, 0xe7, 0xee, 0xde, 0xee, - 0xee, 0x77, 0x77, 0x7e, 0x7e, 0xee, 0xe7, 0x77, 0x36, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x28, 0xff, 0x02, 0x7e, 0x02, 0xee, 0x08, 0xdd, 0x02, 0xad, - 0x08, 0xda, 0x00, 0x0a, 0xaa, 0xaa, 0xaa, 0x6a, 0x7f, 0x00, 0x1a, 0xff, - 0x00, 0x20, 0xed, 0xde, 0xed, 0xee, 0xee, 0x7e, 0xe7, 0x77, 0xff, 0x77, - 0x77, 0x77, 0xe7, 0xee, 0x77, 0x77, 0x38, 0xff, 0x00, 0x00, 0x00, 0x18, - 0xf5, 0x35, 0x55, 0x25, 0x55, 0x5f, 0x55, 0x55, 0x50, 0x55, 0x35, 0xf2, - 0x08, 0x55, 0x02, 0x5f, 0x02, 0xf3, 0x08, 0x55, 0x00, 0x14, 0x53, 0x55, - 0x53, 0x5d, 0x05, 0x55, 0x33, 0x55, 0x55, 0x05, 0x0c, 0x55, 0x02, 0x35, - 0x0a, 0xff, 0x00, 0x18, 0x35, 0x55, 0x35, 0xff, 0xff, 0x75, 0x55, 0x35, - 0x35, 0x55, 0x53, 0x73, 0x0a, 0x55, 0x00, 0x24, 0x35, 0x55, 0x35, 0x55, - 0x55, 0x3f, 0x55, 0x55, 0x53, 0x53, 0x55, 0x55, 0x55, 0x2f, 0x55, 0x53, - 0x5f, 0x35, 0x08, 0x55, 0x00, 0x08, 0xff, 0x55, 0x55, 0x53, 0x08, 0x55, - 0x02, 0x53, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x40, 0xf5, 0xbb, 0xb8, 0x55, - 0x8b, 0x65, 0xdb, 0xbb, 0x61, 0xbb, 0xb1, 0x35, 0x9b, 0xbb, 0xbb, 0xbb, - 0x65, 0x50, 0x8b, 0xbb, 0xbb, 0xb8, 0x65, 0x8b, 0xbb, 0x5d, 0x38, 0xbb, - 0xb1, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x00, 0x06, 0x68, 0xbb, 0xb5, 0x00, - 0x0a, 0xff, 0x00, 0x56, 0x58, 0xbb, 0xb5, 0xff, 0xff, 0x56, 0xbb, 0xb1, - 0x5b, 0xbb, 0x85, 0x75, 0x8b, 0xbb, 0x58, 0xbb, 0xb5, 0x3c, 0xbc, 0x53, - 0xbb, 0xb8, 0x52, 0x1b, 0xbb, 0xbb, 0x15, 0xbb, 0xbb, 0xb8, 0x53, 0x6b, - 0xbb, 0x13, 0x58, 0xbb, 0x89, 0xbb, 0xba, 0x35, 0xab, 0xbb, 0x61, 0x00, - 0x08, 0xbb, 0x02, 0xb5, 0x02, 0xff, 0x00, 0x00, 0x00, 0x18, 0xf5, 0xbb, - 0xb8, 0x56, 0xbb, 0xb0, 0x1b, 0xbb, 0x66, 0xbb, 0xbd, 0x58, 0x08, 0xbb, - 0x02, 0xb6, 0x02, 0x5b, 0x08, 0xbb, 0x00, 0x14, 0xb1, 0x8b, 0xbb, 0x5e, - 0x58, 0xbb, 0xb1, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x00, 0x06, 0x68, 0xbb, - 0xb5, 0x00, 0x0a, 0xff, 0x00, 0x56, 0x58, 0xbb, 0xb5, 0xff, 0xff, 0x56, - 0xbb, 0xba, 0x3b, 0xbb, 0x85, 0x56, 0xbb, 0xb6, 0x58, 0xbb, 0xb3, 0x1b, - 0xbb, 0x15, 0xbb, 0xb8, 0x55, 0x9b, 0xbb, 0xbb, 0x91, 0xbb, 0xbb, 0xbb, - 0x52, 0x0b, 0xbb, 0x9a, 0x1b, 0xbb, 0x96, 0xbb, 0xb1, 0x25, 0xbb, 0xb8, - 0x01, 0x00, 0x08, 0xbb, 0x02, 0xb3, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x4e, - 0xf5, 0xbb, 0xb8, 0x5b, 0xbb, 0xb9, 0x1b, 0xbb, 0x99, 0xbb, 0xb1, 0x5b, - 0xbb, 0xb6, 0x16, 0xbb, 0xb8, 0xab, 0xbb, 0x8a, 0x19, 0xbb, 0xb6, 0x8b, - 0xbb, 0x3e, 0x58, 0xbb, 0xba, 0xbb, 0xb6, 0x58, 0xbb, 0xb1, 0xd1, 0xa1, - 0x08, 0xbb, 0xb3, 0x00, 0x0a, 0xff, 0x00, 0x40, 0x58, 0xbb, 0xb3, 0xff, - 0xff, 0x56, 0xbb, 0xb1, 0x5b, 0xbb, 0x85, 0x0b, 0xbb, 0x85, 0x58, 0xbb, - 0xb5, 0x8b, 0xbb, 0x85, 0xbb, 0xbc, 0x55, 0x8b, 0xbb, 0xbb, 0x86, 0xbb, - 0xbb, 0xbb, 0x12, 0x5b, 0x08, 0xbb, 0x00, 0x1a, 0x66, 0xbb, 0xb1, 0x59, - 0xbb, 0xba, 0x3a, 0xbb, 0xbc, 0x1d, 0x1a, 0x15, 0xff, 0x00, 0x00, 0x00, - 0x00, 0x98, 0xf3, 0xbb, 0xb8, 0x9b, 0xbb, 0xbb, 0x6b, 0xbb, 0x61, 0xbb, - 0xba, 0x56, 0x69, 0x65, 0x16, 0xbb, 0xb8, 0x1b, 0xbb, 0x65, 0x3a, 0xbb, - 0xb6, 0x8b, 0xbb, 0x55, 0x58, 0xbb, 0xb1, 0xbb, 0xb6, 0x58, 0xbb, 0xb5, - 0x55, 0x53, 0x58, 0xbb, 0xb5, 0x55, 0x55, 0x5f, 0xff, 0xff, 0x58, 0xbb, - 0xb5, 0x55, 0x53, 0x56, 0xbb, 0xb1, 0x3b, 0xbb, 0xbc, 0x8b, 0xbb, 0xc5, - 0x5c, 0xbb, 0xb6, 0xbb, 0xbb, 0xb6, 0xbb, 0xb8, 0x53, 0xbb, 0xb8, 0xbb, - 0xbb, 0xbb, 0x8b, 0xbb, 0x65, 0x5c, 0x08, 0xbb, 0x00, 0x1a, 0x16, 0xbb, - 0xb8, 0x8b, 0xbb, 0xb0, 0x51, 0xbb, 0xb6, 0x55, 0x55, 0x5f, 0xf0, 0x00, - 0x00, 0x00, 0x02, 0xf5, 0x0e, 0xbb, 0x00, 0x20, 0x69, 0xbb, 0xb1, 0x35, - 0x6c, 0x8b, 0xbb, 0xbb, 0xb6, 0x1b, 0xbb, 0x65, 0xe0, 0x1a, 0x10, 0x8b, - 0x08, 0xbb, 0x00, 0x08, 0xba, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x02, 0x5c, - 0x08, 0xbb, 0x00, 0x08, 0x3f, 0xff, 0xff, 0x5c, 0x08, 0xbb, 0x00, 0x08, - 0x56, 0xbb, 0xba, 0x5b, 0x08, 0xbb, 0x02, 0xb9, 0x02, 0x58, 0x0c, 0xbb, - 0x00, 0x20, 0xb8, 0x51, 0xbb, 0xb6, 0xbb, 0xbb, 0xbb, 0x6b, 0xbb, 0xc5, - 0x56, 0xbb, 0xb6, 0x8b, 0xbb, 0x56, 0x0a, 0xbb, 0x02, 0x0a, 0x08, 0xbb, - 0x02, 0x65, 0x02, 0xff, 0x00, 0x00, 0x00, 0x30, 0xf5, 0xbb, 0xbb, 0xbb, - 0x86, 0xbb, 0xbb, 0xbb, 0x66, 0xbb, 0xbd, 0x58, 0xbb, 0xbb, 0xbb, 0x8c, - 0x65, 0x1b, 0xbb, 0x65, 0x75, 0x35, 0x55, 0x8b, 0x08, 0xbb, 0x00, 0x08, - 0xb1, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x02, 0x58, 0x08, 0xbb, 0x00, 0x08, - 0x5f, 0xff, 0xff, 0x58, 0x08, 0xbb, 0x00, 0x4c, 0x56, 0xbb, 0xb1, 0x3b, - 0xbb, 0xb8, 0x88, 0x8b, 0xb8, 0x58, 0xbb, 0xbb, 0xbb, 0x1b, 0xbb, 0xbb, - 0xb8, 0x56, 0xbb, 0xb0, 0x8b, 0xbb, 0xbb, 0x08, 0xbb, 0xb3, 0x20, 0xbb, - 0xb6, 0xbb, 0xbc, 0x56, 0xbb, 0xb8, 0x88, 0x8b, 0xbb, 0xd1, 0x08, 0xbb, - 0x02, 0x63, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xba, 0xf5, 0xbb, 0xbb, 0xbb, - 0x65, 0x8b, 0xbb, 0xbb, 0x66, 0xbb, 0xb1, 0x5b, 0xbb, 0x81, 0x10, 0x66, - 0x6a, 0x1b, 0xbb, 0x65, 0x51, 0xbb, 0xb6, 0x8b, 0xbb, 0x1a, 0x18, 0xbb, - 0xb1, 0xbb, 0xb6, 0x58, 0xbb, 0xb1, 0x11, 0x11, 0x58, 0xbb, 0xb1, 0x11, - 0x11, 0x5f, 0xff, 0xff, 0x58, 0xbb, 0xb1, 0x11, 0x11, 0x56, 0xbb, 0xb1, - 0x5b, 0xbb, 0xc5, 0x55, 0x1b, 0xb8, 0x58, 0xbb, 0xbb, 0xbc, 0x59, 0xbb, - 0xbb, 0xb8, 0x58, 0xbb, 0xb5, 0x6b, 0xbb, 0xbb, 0x59, 0xbb, 0xb1, 0x25, - 0xbb, 0xb8, 0xbb, 0xb6, 0x56, 0xbb, 0xb1, 0x55, 0x58, 0xbb, 0x1a, 0xbb, - 0xbc, 0x11, 0x11, 0x02, 0xff, 0x00, 0x00, 0x00, 0x00, 0xba, 0xf5, 0xbb, - 0xbb, 0xb8, 0x53, 0x1b, 0xbb, 0xbb, 0x69, 0xbb, 0xba, 0x5b, 0xbb, 0xb6, - 0x6c, 0xbb, 0xb6, 0x0b, 0xbb, 0x86, 0x6c, 0xbb, 0xb6, 0x8b, 0xbb, 0x33, - 0x5c, 0xbb, 0xba, 0xbb, 0xb6, 0x58, 0xbb, 0xb6, 0x66, 0x66, 0x18, 0xbb, - 0xb6, 0x66, 0x66, 0x12, 0xff, 0xff, 0x58, 0xbb, 0xb6, 0x66, 0x66, 0x16, - 0xbb, 0xba, 0x5b, 0xbb, 0xb8, 0xc8, 0x8b, 0xb8, 0x58, 0xbb, 0xbb, 0xb5, - 0x25, 0xbb, 0xbb, 0xbc, 0x5b, 0xbb, 0x85, 0x1b, 0xbb, 0xbc, 0x5a, 0xbb, - 0xb6, 0x55, 0x8b, 0xbb, 0xbb, 0xb0, 0x56, 0xbb, 0xb8, 0x88, 0x8b, 0xbb, - 0x11, 0xbb, 0xb8, 0x66, 0x66, 0x65, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x18, - 0xf5, 0xbb, 0xbb, 0xb1, 0x2f, 0x5c, 0xbb, 0xbb, 0x61, 0xbb, 0xb1, 0x36, - 0x08, 0xbb, 0x02, 0x85, 0x02, 0x58, 0x08, 0xbb, 0x00, 0x14, 0xb5, 0x8b, - 0xbb, 0x57, 0x58, 0xbb, 0xb1, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x02, 0x68, - 0x08, 0xbb, 0x00, 0x08, 0x65, 0xff, 0xff, 0x58, 0x08, 0xbb, 0x00, 0x08, - 0x96, 0xbb, 0xb1, 0x3b, 0x08, 0xbb, 0x00, 0x30, 0xb9, 0x58, 0xbb, 0xbb, - 0x65, 0x75, 0x6b, 0xbb, 0xb8, 0x1b, 0xbb, 0x65, 0x3b, 0xbb, 0xb6, 0x50, - 0xbb, 0xbc, 0x53, 0x6b, 0xbb, 0xbb, 0xb5, 0x36, 0x0a, 0xbb, 0x02, 0x0a, - 0x08, 0xbb, 0x02, 0xb5, 0x02, 0xff, 0x00, 0x00, 0x00, 0xba, 0xf5, 0x8c, - 0x88, 0x65, 0xff, 0x20, 0xc8, 0xc8, 0x66, 0xc8, 0x80, 0x23, 0x1c, 0xc8, - 0x8c, 0x86, 0x03, 0x35, 0x6c, 0x8c, 0x88, 0x89, 0x05, 0x98, 0x88, 0x57, - 0x59, 0x88, 0x80, 0x88, 0x86, 0x59, 0x88, 0x8c, 0x88, 0xc8, 0x69, 0xc8, - 0x8c, 0x88, 0xc8, 0x63, 0xff, 0xff, 0x56, 0x88, 0xc8, 0x8c, 0x88, 0x16, - 0x88, 0x80, 0x58, 0x8c, 0x88, 0x88, 0x88, 0x60, 0x59, 0x88, 0x8c, 0x57, - 0x7e, 0x5c, 0x88, 0x89, 0x68, 0x88, 0x03, 0x59, 0x88, 0x80, 0x25, 0x98, - 0x89, 0x52, 0x1c, 0x88, 0xc8, 0x95, 0x36, 0x88, 0xc8, 0x8c, 0x88, 0xc1, - 0x50, 0x8c, 0x88, 0xc8, 0x8c, 0x85, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x40, - 0xf3, 0x55, 0x55, 0x5f, 0xff, 0xf3, 0x55, 0x55, 0x33, 0x55, 0x53, 0xff, - 0x35, 0x55, 0x55, 0x55, 0xff, 0xff, 0x35, 0x55, 0x53, 0x55, 0x7e, 0x55, - 0x55, 0x3f, 0x25, 0x53, 0x53, 0x55, 0x53, 0x73, 0x08, 0x55, 0x02, 0x35, - 0x08, 0x55, 0x00, 0x08, 0x3f, 0xff, 0xff, 0x25, 0x08, 0x55, 0x00, 0x40, - 0x33, 0x53, 0x53, 0x33, 0x55, 0x55, 0x53, 0x55, 0x57, 0x23, 0x55, 0x55, - 0x37, 0x77, 0x25, 0x55, 0x35, 0x35, 0x35, 0x3e, 0x75, 0x53, 0x53, 0xf2, - 0x55, 0x55, 0x2f, 0x35, 0x55, 0x55, 0x52, 0xf3, 0x08, 0x55, 0x02, 0x52, - 0x02, 0xf3, 0x08, 0x55, 0x02, 0x53, 0x02, 0xff, 0x00, 0x00, 0x26, 0xff, - 0x00, 0x1c, 0xf7, 0xf7, 0x77, 0x77, 0xff, 0xff, 0xf7, 0x77, 0xee, 0xee, - 0xe7, 0x77, 0x77, 0x7f, 0x1e, 0xff, 0x00, 0x30, 0xf7, 0x77, 0x77, 0x77, - 0xee, 0x7e, 0x77, 0x77, 0x7f, 0xff, 0x7e, 0x7f, 0xf7, 0x77, 0x77, 0x77, - 0xf7, 0x77, 0x77, 0x7f, 0x77, 0x77, 0x7e, 0xef, 0x28, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x34, 0xff, 0x00, 0x08, 0x7e, 0xee, 0xee, 0x77, 0x2a, 0xff, - 0x00, 0x10, 0xf7, 0x77, 0x7e, 0x7e, 0x77, 0x77, 0xf7, 0x7f, 0x18, 0xff, - 0x02, 0x7f, 0x2a, 0xff, 0x00, 0x00, 0x02, 0xff, 0x0a, 0x55, 0x02, 0x52, - 0x0a, 0xff, 0x02, 0x25, 0x0a, 0x55, 0x02, 0xff, 0x02, 0xf3, 0x0a, 0x55, - 0x00, 0x0c, 0x3f, 0x77, 0xe7, 0xee, 0x7f, 0x35, 0x0a, 0x55, 0x0a, 0xff, - 0x02, 0x25, 0x12, 0x55, 0x02, 0x2f, 0x0a, 0x77, 0x00, 0x08, 0x7f, 0xff, - 0x22, 0x35, 0x10, 0x55, 0x02, 0x53, 0x02, 0x22, 0x0c, 0xff, 0x02, 0xf2, - 0x02, 0x23, 0x12, 0x55, 0x00, 0x0a, 0x32, 0x2f, 0xff, 0xff, 0xf0, 0x00, - 0x00, 0x00, 0x02, 0xff, 0x0a, 0x55, 0x02, 0x53, 0x0a, 0xff, 0x02, 0x35, - 0x0a, 0x55, 0x02, 0xff, 0x02, 0xf5, 0x0a, 0x55, 0x00, 0x0c, 0x5f, 0x77, - 0xee, 0x77, 0xff, 0x35, 0x0a, 0x55, 0x0a, 0xff, 0x02, 0x35, 0x12, 0x55, - 0x02, 0x3f, 0x0a, 0x77, 0x02, 0x7f, 0x02, 0xf3, 0x18, 0x55, 0x02, 0x3f, - 0x0a, 0xff, 0x02, 0x35, 0x16, 0x55, 0x00, 0x08, 0x53, 0xff, 0xff, 0xff, - 0x00, 0x00, 0x02, 0xff, 0x0a, 0x55, 0x02, 0x53, 0x0a, 0xff, 0x02, 0x35, - 0x0a, 0x55, 0x02, 0xff, 0x02, 0xf3, 0x0a, 0x55, 0x00, 0x0a, 0x5f, 0x27, - 0x77, 0x77, 0x7f, 0x00, 0x0c, 0x55, 0x0a, 0xff, 0x14, 0x55, 0x00, 0x0e, - 0x5f, 0x77, 0x77, 0x77, 0xe7, 0x7f, 0xf2, 0x00, 0x1c, 0x55, 0x00, 0x0a, - 0x2f, 0xff, 0xff, 0xff, 0x25, 0x00, 0x1a, 0x55, 0x00, 0x06, 0x52, 0xff, - 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, - 0x53, 0x00, 0x0a, 0xff, 0x00, 0x10, 0x35, 0x54, 0x44, 0x44, 0x45, 0x54, - 0xff, 0xf2, 0x08, 0x44, 0x00, 0x18, 0x55, 0x52, 0xf7, 0xf7, 0x77, 0xff, - 0x55, 0x54, 0x44, 0x44, 0x45, 0x42, 0x08, 0xff, 0x00, 0x06, 0xf2, 0x55, - 0x54, 0x00, 0x0e, 0x44, 0x00, 0x16, 0x55, 0x5f, 0xf7, 0x77, 0x77, 0xe7, - 0x7f, 0x25, 0x55, 0x55, 0x54, 0x00, 0x10, 0x44, 0x00, 0x14, 0x45, 0x55, - 0x55, 0x52, 0xff, 0xff, 0xf2, 0x55, 0x55, 0x55, 0x12, 0x44, 0x00, 0x0a, - 0x55, 0x55, 0x55, 0x2f, 0xff, 0x00, 0x00, 0x00, 0x02, 0xff, 0x02, 0x55, - 0x08, 0x44, 0x02, 0x53, 0x0a, 0xff, 0x00, 0x26, 0x24, 0x54, 0x44, 0x44, - 0x44, 0x55, 0xff, 0xff, 0x45, 0x44, 0x44, 0x44, 0x45, 0x52, 0xff, 0xff, - 0xff, 0xf2, 0x55, 0x00, 0x08, 0x44, 0x02, 0x42, 0x08, 0xff, 0x00, 0x06, - 0xf2, 0x55, 0x54, 0x00, 0x0e, 0x44, 0x00, 0x12, 0x55, 0x52, 0xf7, 0x77, - 0x77, 0x77, 0xff, 0x55, 0x53, 0x00, 0x16, 0x44, 0x00, 0x10, 0x45, 0x55, - 0x55, 0xff, 0xff, 0xf5, 0x55, 0x34, 0x16, 0x44, 0x00, 0x08, 0x55, 0x55, - 0x5f, 0xf0, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x45, 0x54, 0x44, 0x44, 0x45, - 0x53, 0x00, 0x0a, 0xff, 0x00, 0x30, 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, - 0xff, 0xff, 0x54, 0x44, 0x44, 0x44, 0x55, 0x53, 0x22, 0x22, 0x22, 0x23, - 0x55, 0x54, 0x44, 0x44, 0x44, 0x5f, 0x08, 0xff, 0x02, 0xf3, 0x02, 0x55, - 0x10, 0x44, 0x00, 0x12, 0x55, 0x53, 0xff, 0xf7, 0x77, 0x7f, 0xf2, 0x55, - 0x54, 0x00, 0x18, 0x44, 0x00, 0x0c, 0x45, 0x55, 0x2f, 0xff, 0x25, 0x55, - 0x1a, 0x44, 0x00, 0x06, 0x55, 0x52, 0xff, 0x00, 0x00, 0x00, 0x00, 0x0e, - 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x42, 0x00, 0x0a, 0xff, 0x00, 0x1a, - 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, 0xff, 0xff, 0x34, 0x44, 0x44, 0x44, - 0x45, 0x00, 0x0c, 0x55, 0x00, 0x16, 0x44, 0x44, 0x44, 0x45, 0x5f, 0x77, - 0xff, 0xff, 0xff, 0xf5, 0x55, 0x00, 0x10, 0x44, 0x00, 0x12, 0x45, 0x53, - 0xff, 0x77, 0x77, 0xf7, 0xf3, 0x55, 0x54, 0x00, 0x18, 0x44, 0x00, 0x0c, - 0x45, 0x55, 0x5f, 0xff, 0x35, 0x55, 0x1a, 0x44, 0x00, 0x06, 0x55, 0x55, - 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, - 0x53, 0x00, 0x0a, 0xff, 0x00, 0x1a, 0x35, 0x44, 0x44, 0x44, 0x45, 0x54, - 0xff, 0xff, 0x24, 0x54, 0x44, 0x44, 0x45, 0x00, 0x0c, 0x55, 0x08, 0x44, - 0x00, 0x0e, 0x3f, 0x77, 0x7f, 0xff, 0xff, 0x25, 0x55, 0x00, 0x10, 0x44, - 0x00, 0x10, 0x45, 0x55, 0xf7, 0xe7, 0xff, 0x77, 0xf5, 0x55, 0x0a, 0x44, - 0x00, 0x08, 0x55, 0x35, 0x53, 0x55, 0x0a, 0x44, 0x00, 0x0a, 0x55, 0x5f, - 0xff, 0x55, 0x54, 0x00, 0x08, 0x44, 0x00, 0x0a, 0x45, 0x35, 0x53, 0x55, - 0x34, 0x00, 0x08, 0x44, 0x00, 0x06, 0x45, 0x55, 0xff, 0x00, 0x00, 0x00, - 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x53, 0x00, 0x0a, 0xff, - 0x00, 0x12, 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, 0xff, 0xff, 0xf4, 0x00, - 0x08, 0x44, 0x02, 0x45, 0x08, 0x55, 0x08, 0x44, 0x00, 0x10, 0x54, 0x2f, - 0x77, 0x77, 0xff, 0xff, 0x25, 0x55, 0x12, 0x44, 0x00, 0x0e, 0x55, 0x2f, - 0x77, 0x77, 0xe7, 0xf5, 0x54, 0x00, 0x08, 0x44, 0x02, 0x42, 0x08, 0xff, - 0x02, 0x24, 0x08, 0x44, 0x00, 0x08, 0x45, 0x5f, 0xff, 0x55, 0x0a, 0x44, - 0x00, 0x0a, 0x2f, 0xff, 0xff, 0xff, 0xf2, 0x00, 0x0a, 0x44, 0x02, 0x55, - 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x45, 0x54, 0x44, 0x44, 0x44, - 0x53, 0x00, 0x0a, 0xff, 0x00, 0x12, 0x34, 0x54, 0x44, 0x44, 0x44, 0x55, - 0xff, 0xff, 0xf5, 0x00, 0x1c, 0x44, 0x00, 0x0e, 0xf7, 0x77, 0x77, 0xff, - 0xff, 0x35, 0x54, 0x00, 0x10, 0x44, 0x00, 0x3e, 0x45, 0x55, 0x3f, 0xf7, - 0x7e, 0xe7, 0xf4, 0x55, 0x44, 0x44, 0x44, 0x45, 0x4f, 0x7e, 0xee, 0xdd, - 0xd7, 0xf4, 0x54, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xff, 0x45, 0x54, 0x44, - 0x44, 0x44, 0x54, 0x00, 0x0a, 0xff, 0x02, 0x45, 0x08, 0x44, 0x02, 0x55, - 0x02, 0xff, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, - 0x53, 0x00, 0x0a, 0xff, 0x00, 0x12, 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, - 0xff, 0xff, 0xf3, 0x00, 0x1a, 0x44, 0x00, 0x10, 0x55, 0xf7, 0xe7, 0x7e, - 0x77, 0xff, 0x55, 0x54, 0x12, 0x44, 0x00, 0x32, 0x55, 0x5f, 0xf7, 0xee, - 0xe7, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, 0x5f, 0x7d, 0xda, 0xaa, 0xae, - 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xff, 0x55, 0x00, 0x08, 0x44, - 0x02, 0x55, 0x0a, 0xff, 0x02, 0x54, 0x08, 0x44, 0x02, 0x54, 0x02, 0xf0, - 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x52, 0x00, - 0x0a, 0xff, 0x00, 0x14, 0x25, 0x54, 0x44, 0x44, 0x45, 0x54, 0xff, 0xff, - 0xf3, 0x45, 0x18, 0x44, 0x00, 0x10, 0x43, 0xf7, 0x77, 0xe7, 0x77, 0xf2, - 0x55, 0x54, 0x08, 0x44, 0x02, 0x54, 0x08, 0x44, 0x00, 0x3c, 0x55, 0x5f, - 0x7e, 0xee, 0xe7, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x55, 0x4f, 0x7d, 0xaa, - 0xaa, 0xae, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x55, 0x4f, 0xff, 0x55, 0x44, - 0x44, 0x44, 0x45, 0x54, 0x0a, 0xff, 0x02, 0x54, 0x08, 0x44, 0x02, 0x45, - 0x02, 0xff, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x55, - 0x53, 0x00, 0x0a, 0x22, 0x00, 0x12, 0x35, 0x55, 0x44, 0x44, 0x44, 0x55, - 0xff, 0xff, 0xff, 0x00, 0x18, 0x44, 0x00, 0x1c, 0x45, 0x42, 0xf7, 0x7e, - 0x77, 0x77, 0xf2, 0x55, 0x54, 0x44, 0x44, 0x44, 0x45, 0xf4, 0x08, 0x44, - 0x00, 0x32, 0x55, 0x52, 0xfe, 0x7e, 0xe7, 0xf5, 0x54, 0x44, 0x44, 0x44, - 0x45, 0x5f, 0xed, 0xaa, 0x6a, 0xae, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, - 0x5f, 0xff, 0x55, 0x00, 0x08, 0x44, 0x02, 0x55, 0x0a, 0xff, 0x0c, 0x44, - 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0c, 0xff, 0x45, 0x54, 0x44, 0x44, 0x45, - 0x0e, 0x55, 0x00, 0x22, 0x54, 0x44, 0x44, 0x44, 0x55, 0xff, 0xff, 0xff, - 0x55, 0x44, 0x44, 0x44, 0x45, 0x45, 0xff, 0xf5, 0x45, 0x00, 0x08, 0x44, - 0x00, 0x0e, 0x4f, 0x77, 0x77, 0x77, 0xe7, 0xf3, 0x55, 0x00, 0x08, 0x44, - 0x02, 0x45, 0x02, 0xf5, 0x08, 0x44, 0x00, 0x3c, 0x55, 0x53, 0xf7, 0xee, - 0xe7, 0xf4, 0x55, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xea, 0x66, 0x66, 0xae, - 0xf4, 0x55, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xff, 0x45, 0x54, 0x44, 0x44, - 0x44, 0x55, 0x0a, 0xff, 0x0c, 0x45, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0c, - 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x0e, 0x55, 0x00, 0x22, 0x54, 0x44, - 0x44, 0x44, 0x55, 0xff, 0xff, 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x55, - 0xff, 0xf3, 0x55, 0x00, 0x08, 0x44, 0x00, 0x1a, 0x5f, 0x77, 0x7e, 0x7e, - 0x77, 0xf5, 0x55, 0x44, 0x44, 0x44, 0x45, 0x43, 0xf3, 0x00, 0x08, 0x44, - 0x00, 0x3c, 0x45, 0x53, 0xf7, 0xee, 0xe7, 0xf5, 0x54, 0x44, 0x44, 0x44, - 0x54, 0x5f, 0xea, 0xaa, 0x69, 0xad, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, - 0x5f, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x45, 0x16, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x02, 0xff, 0x02, 0x55, 0x08, 0x44, 0x02, 0x45, 0x0a, 0x55, - 0x00, 0x24, 0x54, 0x44, 0x44, 0x44, 0x45, 0x54, 0xff, 0xff, 0xff, 0x34, - 0x54, 0x44, 0x44, 0x45, 0x55, 0xff, 0xf5, 0x55, 0x08, 0x44, 0x00, 0x0e, - 0x3f, 0x7e, 0x77, 0xee, 0x7f, 0x25, 0x55, 0x00, 0x08, 0x44, 0x00, 0x3e, - 0x42, 0xf2, 0x45, 0x44, 0x44, 0x44, 0x45, 0x55, 0xf7, 0xee, 0xd7, 0xf5, - 0x54, 0x44, 0x44, 0x44, 0x45, 0x52, 0xe6, 0x66, 0x69, 0x6e, 0xf5, 0x54, - 0x44, 0x44, 0x44, 0x55, 0x4f, 0xff, 0x55, 0x00, 0x08, 0x44, 0x02, 0x55, - 0x16, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x02, 0xff, 0x02, 0x55, 0x1e, 0x44, - 0x00, 0x0a, 0x55, 0xff, 0xff, 0xff, 0x24, 0x00, 0x08, 0x44, 0x00, 0x1e, - 0x55, 0x2f, 0x25, 0x55, 0x44, 0x44, 0x44, 0x54, 0x2f, 0x77, 0xee, 0x77, - 0xff, 0x25, 0x55, 0x00, 0x08, 0x44, 0x02, 0x5f, 0x02, 0xff, 0x0a, 0x44, - 0x00, 0x30, 0x55, 0x2f, 0xee, 0xd7, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, - 0x5f, 0xe9, 0x69, 0x99, 0x6d, 0xf5, 0x45, 0x44, 0x44, 0x44, 0x45, 0x5f, - 0xff, 0x55, 0x08, 0x44, 0x02, 0x55, 0x16, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x00, 0x06, 0xff, 0x45, 0x54, 0x00, 0x1c, 0x44, 0x00, 0x1a, 0x55, 0xff, - 0xff, 0xff, 0xf5, 0x44, 0x44, 0x44, 0x45, 0x55, 0x2f, 0x25, 0x54, 0x00, - 0x08, 0x44, 0x00, 0x0e, 0xf7, 0x7e, 0x7e, 0xe7, 0xff, 0x35, 0x54, 0x00, - 0x08, 0x44, 0x00, 0x48, 0x5f, 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x55, - 0x3f, 0xed, 0xde, 0xf4, 0x55, 0x44, 0x44, 0x44, 0x54, 0x5f, 0xe6, 0x96, - 0x69, 0x9e, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xff, 0x45, 0x54, - 0x44, 0x44, 0x45, 0x45, 0x16, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x02, 0xff, - 0x02, 0x55, 0x1c, 0x44, 0x00, 0x40, 0x45, 0x45, 0xff, 0xff, 0xff, 0xf5, - 0x45, 0x44, 0x44, 0x44, 0x55, 0x3f, 0x35, 0x55, 0x44, 0x44, 0x44, 0x55, - 0xf7, 0xe7, 0xee, 0x7f, 0xff, 0x55, 0x54, 0x44, 0x44, 0x44, 0x54, 0x3f, - 0xff, 0x34, 0x08, 0x44, 0x00, 0x30, 0x55, 0x5f, 0x7d, 0xd7, 0xf5, 0x54, - 0x44, 0x44, 0x44, 0x45, 0x5f, 0xd9, 0x99, 0x99, 0x6e, 0xf5, 0x54, 0x44, - 0x44, 0x44, 0x45, 0x5f, 0xff, 0x55, 0x08, 0x44, 0x02, 0x55, 0x0a, 0xff, - 0x00, 0x0e, 0xf2, 0x2f, 0x22, 0x2f, 0x2f, 0x2f, 0xf0, 0x00, 0x00, 0x00, - 0x02, 0xff, 0x02, 0x55, 0x1e, 0x44, 0x00, 0x30, 0x55, 0xff, 0xff, 0xff, - 0xf3, 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, 0x35, 0x54, 0x44, 0x44, 0x44, - 0x43, 0xf7, 0x7e, 0xee, 0x7f, 0xf2, 0x55, 0x54, 0x08, 0x44, 0x00, 0x48, - 0x2f, 0xff, 0x24, 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, 0x7d, 0xde, 0xf5, - 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, 0xd9, 0x99, 0x96, 0xce, 0xf5, 0x45, - 0x44, 0x44, 0x44, 0x45, 0x4f, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x55, - 0x0a, 0xff, 0x0c, 0x55, 0x02, 0xfb, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x54, - 0x54, 0x44, 0x44, 0x44, 0x45, 0x00, 0x0a, 0xff, 0x02, 0x54, 0x08, 0x44, - 0x00, 0x0a, 0x55, 0xff, 0xff, 0xff, 0xf2, 0x00, 0x08, 0x44, 0x00, 0x1c, - 0x55, 0x52, 0x55, 0x54, 0x44, 0x44, 0x45, 0x43, 0xf7, 0x77, 0xe7, 0xff, - 0xf2, 0x55, 0x08, 0x44, 0x00, 0x08, 0x45, 0xff, 0xff, 0xf4, 0x08, 0x44, - 0x00, 0x0c, 0x55, 0x52, 0xfd, 0xde, 0xf5, 0x45, 0x08, 0x44, 0x00, 0x26, - 0x5f, 0xd9, 0x99, 0x99, 0x6d, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, - 0xff, 0x54, 0x54, 0x44, 0x44, 0x44, 0x45, 0x00, 0x0a, 0xff, 0x0c, 0x55, - 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, - 0x53, 0x00, 0x0a, 0xff, 0x00, 0x0c, 0x35, 0x54, 0x44, 0x44, 0x45, 0x45, - 0x08, 0xff, 0x08, 0x44, 0x00, 0x2c, 0x55, 0x52, 0x55, 0x54, 0x44, 0x44, - 0x44, 0x4f, 0xf7, 0x77, 0x77, 0x7f, 0xf3, 0x55, 0x54, 0x44, 0x44, 0x44, - 0x45, 0xff, 0xff, 0xf5, 0x08, 0x44, 0x00, 0x3a, 0x55, 0x53, 0xfe, 0xde, - 0x25, 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, 0xd9, 0xc9, 0xc9, 0x9e, 0xf5, - 0x55, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xf2, 0x55, 0x44, 0x44, 0x44, 0x45, - 0x55, 0x00, 0x0a, 0xff, 0x0c, 0x55, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, - 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x42, 0x00, 0x0a, 0xff, 0x02, 0x35, - 0x08, 0x44, 0x02, 0x55, 0x08, 0xff, 0x00, 0x18, 0x55, 0x44, 0x44, 0x44, - 0x45, 0x55, 0x55, 0x54, 0x44, 0x44, 0x44, 0x5f, 0x08, 0x77, 0x00, 0x14, - 0xf5, 0x55, 0x44, 0x44, 0x44, 0x45, 0x43, 0xfe, 0x77, 0xf3, 0x08, 0x44, - 0x00, 0x30, 0x45, 0x53, 0xfe, 0xae, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, - 0x5f, 0xfd, 0xdd, 0xdd, 0xdf, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, 0x4f, - 0xff, 0x55, 0x08, 0x44, 0x02, 0x55, 0x0a, 0xff, 0x02, 0x55, 0x08, 0x44, - 0x02, 0x54, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x54, 0x54, 0x44, - 0x44, 0x45, 0x53, 0x00, 0x0a, 0xff, 0x00, 0x0c, 0x35, 0x54, 0x44, 0x44, - 0x44, 0x55, 0x08, 0xff, 0x00, 0x0e, 0x34, 0x44, 0x44, 0x44, 0x45, 0x55, - 0x55, 0x00, 0x08, 0x44, 0x00, 0x0e, 0x3f, 0x77, 0x77, 0x7e, 0x7f, 0x25, - 0x55, 0x00, 0x08, 0x44, 0x00, 0x1a, 0x42, 0xf7, 0xe7, 0xf2, 0x45, 0x44, - 0x44, 0x44, 0x45, 0x55, 0xf7, 0xae, 0xf5, 0x00, 0x08, 0x44, 0x02, 0x55, - 0x02, 0x53, 0x08, 0xff, 0x02, 0x35, 0x02, 0x55, 0x08, 0x44, 0x00, 0x28, - 0x5f, 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x55, 0x3f, 0xff, 0xff, 0xff, - 0xf3, 0x55, 0x54, 0x44, 0x44, 0x44, 0x45, 0xf0, 0x00, 0x00, 0x00, 0x0e, - 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x53, 0x00, 0x0a, 0xff, 0x00, 0x0c, - 0x35, 0x44, 0x44, 0x44, 0x45, 0x54, 0x08, 0xff, 0x00, 0x24, 0x24, 0x54, - 0x44, 0x44, 0x45, 0x55, 0x54, 0x44, 0x44, 0x44, 0x54, 0x2f, 0xe7, 0x77, - 0x77, 0x7f, 0x25, 0x54, 0x08, 0x44, 0x00, 0x08, 0x5f, 0x77, 0xe7, 0xff, - 0x0a, 0x44, 0x00, 0x08, 0x55, 0x2f, 0xde, 0xf5, 0x08, 0x44, 0x10, 0x55, - 0x08, 0x44, 0x00, 0x0e, 0x5f, 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x00, - 0x0e, 0x55, 0x00, 0x0c, 0x54, 0x44, 0x44, 0x44, 0x45, 0xf0, 0x00, 0x00, - 0x00, 0x0e, 0xff, 0x55, 0x54, 0x44, 0x44, 0x44, 0x53, 0x00, 0x0a, 0xff, - 0x00, 0x0c, 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, 0x08, 0xff, 0x02, 0xf4, - 0x14, 0x44, 0x00, 0x0e, 0x2f, 0x7e, 0xe7, 0x77, 0x7f, 0x35, 0x55, 0x00, - 0x08, 0x44, 0x00, 0x1a, 0x5f, 0x77, 0x7f, 0x7f, 0x54, 0x44, 0x44, 0x44, - 0x45, 0x55, 0x3f, 0xdd, 0x75, 0x00, 0x08, 0x44, 0x02, 0x45, 0x0c, 0x55, - 0x02, 0x54, 0x08, 0x44, 0x00, 0x06, 0x2f, 0xff, 0x54, 0x00, 0x08, 0x44, - 0x0e, 0x55, 0x08, 0x44, 0x02, 0x42, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, - 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x53, 0x00, 0x0a, 0xff, 0x00, 0x0c, - 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, 0x08, 0xff, 0x02, 0xf5, 0x12, 0x44, - 0x00, 0x22, 0x45, 0xf7, 0xee, 0xee, 0x7e, 0x7f, 0x55, 0x54, 0x44, 0x44, - 0x44, 0x45, 0x3f, 0xee, 0x77, 0xef, 0x34, 0x00, 0x08, 0x44, 0x00, 0x0a, - 0x55, 0x5f, 0xea, 0xdf, 0x54, 0x00, 0x08, 0x44, 0x0c, 0x55, 0x0a, 0x44, - 0x00, 0x06, 0xff, 0xff, 0xf5, 0x00, 0x08, 0x44, 0x02, 0x45, 0x0a, 0x55, - 0x02, 0x54, 0x08, 0x44, 0x02, 0x4f, 0x02, 0xf0, 0x00, 0x00, 0x02, 0xff, - 0x02, 0x55, 0x08, 0x44, 0x02, 0x53, 0x0a, 0xff, 0x02, 0x35, 0x08, 0x44, - 0x02, 0x45, 0x08, 0xff, 0x02, 0xf3, 0x12, 0x44, 0x00, 0x0e, 0x45, 0xf7, - 0xed, 0xed, 0xe7, 0xf2, 0x55, 0x00, 0x0a, 0x44, 0x00, 0x0a, 0xf7, 0x77, - 0xfe, 0xd7, 0x24, 0x00, 0x08, 0x44, 0x00, 0x0a, 0x45, 0x52, 0xea, 0xa7, - 0xf4, 0x00, 0x1c, 0x44, 0x00, 0x08, 0x4f, 0xff, 0xff, 0xff, 0x1e, 0x44, - 0x02, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x02, 0xff, 0x0a, 0x44, 0x02, 0x43, - 0x0a, 0xff, 0x02, 0x34, 0x08, 0x44, 0x02, 0x45, 0x08, 0xff, 0x02, 0xf2, - 0x12, 0x44, 0x00, 0x0e, 0x43, 0xfe, 0xee, 0xdd, 0xe7, 0xf3, 0x54, 0x00, - 0x0a, 0x44, 0x00, 0x0a, 0xfe, 0xe7, 0x7d, 0xde, 0xf4, 0x00, 0x0a, 0x44, - 0x00, 0x0a, 0x52, 0x76, 0x9a, 0xff, 0x54, 0x00, 0x18, 0x44, 0x00, 0x0c, - 0x45, 0xf7, 0xef, 0xff, 0xff, 0x25, 0x1a, 0x44, 0x00, 0x06, 0x5f, 0xff, - 0xfb, 0x00, 0x00, 0x00, 0x02, 0xff, 0x0a, 0x44, 0x02, 0x43, 0x0a, 0xff, - 0x02, 0x34, 0x0a, 0x44, 0x0a, 0xff, 0x12, 0x44, 0x00, 0x0c, 0x42, 0x7e, - 0xdd, 0xdd, 0xde, 0xf5, 0x0a, 0x44, 0x00, 0x0c, 0x45, 0xfe, 0x7f, 0xea, - 0xae, 0xf5, 0x0a, 0x44, 0x00, 0x0a, 0x45, 0xf6, 0xcc, 0x6e, 0xf3, 0x00, - 0x18, 0x44, 0x00, 0x0e, 0x3f, 0x76, 0x9f, 0xff, 0xff, 0xff, 0x34, 0x00, - 0x16, 0x44, 0x00, 0x08, 0x43, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x0e, - 0xff, 0x53, 0x55, 0x35, 0x53, 0x55, 0x33, 0x00, 0x0a, 0xff, 0x00, 0x0c, - 0x25, 0x53, 0x55, 0x35, 0x53, 0x55, 0x0a, 0xff, 0x00, 0x66, 0x35, 0x53, - 0x55, 0x35, 0x55, 0x53, 0x55, 0x35, 0x53, 0x5f, 0xf7, 0xed, 0xad, 0xde, - 0x73, 0x55, 0x35, 0x55, 0x53, 0x55, 0x52, 0x7e, 0x7e, 0xaa, 0xad, 0xf2, - 0x53, 0x55, 0x35, 0x53, 0x55, 0x33, 0x7a, 0xcc, 0xc6, 0xd7, 0xf2, 0x53, - 0x55, 0x35, 0x53, 0x55, 0x53, 0x55, 0x35, 0x53, 0x53, 0x2f, 0x7d, 0x98, - 0xcf, 0x00, 0x08, 0xff, 0x00, 0x1e, 0x25, 0x35, 0x53, 0x55, 0x35, 0x53, - 0x55, 0x35, 0x53, 0x55, 0x33, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, - 0x40, 0xff, 0x00, 0x0c, 0xf7, 0xee, 0xee, 0x7e, 0xdd, 0xe7, 0x0a, 0xff, - 0x00, 0x0c, 0xf7, 0xd7, 0xfd, 0xaa, 0xad, 0xe7, 0x0a, 0xff, 0x00, 0x0c, - 0xf7, 0xd6, 0x9c, 0x9c, 0xc9, 0xae, 0x14, 0xff, 0x00, 0x08, 0xea, 0xcc, - 0x98, 0x8d, 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x5e, - 0x7d, 0xed, 0xee, 0xed, 0xdd, 0xed, 0xaa, 0xad, 0xad, 0xea, 0xde, 0xed, - 0xdd, 0xde, 0xef, 0xee, 0xaa, 0xe7, 0xfa, 0x6a, 0x6e, 0xde, 0xdd, 0xdd, - 0xdd, 0xaa, 0xaa, 0xa6, 0x69, 0x99, 0x99, 0x99, 0xc9, 0x66, 0xaa, 0x6a, - 0x66, 0x69, 0x96, 0x66, 0x69, 0x96, 0x69, 0xc8, 0x88, 0xc8, 0x89, 0x00, - 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x3a, 0x7a, 0xd6, - 0xea, 0xad, 0xad, 0xdd, 0xaa, 0x6d, 0xda, 0xaa, 0xad, 0xae, 0xad, 0xad, - 0xd7, 0xdd, 0x6e, 0x7f, 0xda, 0x66, 0xdd, 0xd6, 0xa6, 0xa6, 0x6a, 0x66, - 0x66, 0x99, 0x96, 0x00, 0x08, 0x66, 0x00, 0x1c, 0x69, 0x99, 0x99, 0xc9, - 0x69, 0x8c, 0x9c, 0x8c, 0xcc, 0xcc, 0x88, 0xcc, 0x88, 0x8c, 0x24, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x3e, 0xfd, 0xda, 0xd6, 0x66, - 0xaa, 0xaa, 0xa6, 0xad, 0xda, 0xad, 0xdd, 0xaa, 0xd7, 0x6d, 0xdf, 0xda, - 0xae, 0x77, 0xa6, 0x66, 0xed, 0xaa, 0xad, 0xaa, 0x96, 0x69, 0x99, 0xc9, - 0x6a, 0x66, 0x69, 0x00, 0x0a, 0x99, 0x00, 0x16, 0xcc, 0x88, 0xcc, 0xcc, - 0x8c, 0x9c, 0x88, 0x88, 0x9c, 0xc8, 0x9d, 0x00, 0x24, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x38, 0xff, 0x00, 0x3a, 0xea, 0xaa, 0x66, 0x66, 0x66, 0x6a, - 0xda, 0x6a, 0xaa, 0xaa, 0xae, 0xed, 0xaa, 0xdf, 0xda, 0xa7, 0x7a, 0x66, - 0x9d, 0x66, 0xc9, 0x66, 0x6a, 0x66, 0x69, 0x9c, 0x6a, 0x66, 0x66, 0x00, - 0x0c, 0x99, 0x00, 0x16, 0xa6, 0x8c, 0xcc, 0xc8, 0x8c, 0xc8, 0xc8, 0x88, - 0xcc, 0xc6, 0x97, 0x00, 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, - 0x00, 0x5c, 0xea, 0xda, 0xa6, 0x69, 0x9a, 0xa6, 0x66, 0x6a, 0xad, 0x9a, - 0xde, 0xaa, 0xa6, 0xdf, 0xda, 0xe7, 0xd6, 0x66, 0x66, 0x99, 0x6a, 0xa9, - 0x96, 0x99, 0x66, 0x96, 0xa6, 0x66, 0x99, 0x99, 0x99, 0x69, 0x66, 0x69, - 0x6c, 0x88, 0x8c, 0xcc, 0x88, 0xc9, 0x98, 0x8b, 0xc9, 0xad, 0x69, 0xcf, - 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, 0x00, 0x5c, 0xfd, 0x66, - 0x6d, 0xda, 0xa6, 0xe7, 0xea, 0xad, 0xe7, 0xda, 0x66, 0x6a, 0x66, 0xd7, - 0xdd, 0x77, 0x66, 0x66, 0xee, 0xda, 0xaa, 0xd9, 0x96, 0xa6, 0x99, 0x6a, - 0xa6, 0x69, 0x99, 0x99, 0x66, 0x6a, 0x99, 0xdc, 0x66, 0xb8, 0x8c, 0xcc, - 0x8c, 0x99, 0xc8, 0xb8, 0x89, 0xa6, 0xc8, 0xaf, 0x24, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x38, 0xff, 0x00, 0x5c, 0xf7, 0xa6, 0x96, 0x96, 0x6e, 0xee, - 0xdd, 0xef, 0xf7, 0x7d, 0xee, 0xdd, 0xda, 0xad, 0x6e, 0x7d, 0x96, 0x6a, - 0xea, 0x69, 0x96, 0xd6, 0x89, 0x69, 0x66, 0xa6, 0xa6, 0x99, 0x99, 0x66, - 0x69, 0x96, 0x6c, 0xc9, 0x88, 0x88, 0x88, 0xc8, 0x88, 0x99, 0xc8, 0x8c, - 0x88, 0x88, 0x88, 0x7f, 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3a, 0xff, - 0x00, 0x58, 0x76, 0x69, 0x99, 0x6e, 0xfd, 0xdd, 0x7f, 0xff, 0x7f, 0xf7, - 0xf7, 0x7e, 0xdd, 0xe7, 0xf6, 0x96, 0xae, 0x66, 0x69, 0xaa, 0x9a, 0xc8, - 0xc9, 0x6a, 0xda, 0x69, 0x99, 0x99, 0x99, 0xca, 0xac, 0x68, 0x88, 0x8c, - 0xcc, 0xb8, 0xb8, 0x8c, 0x69, 0x88, 0x8b, 0x88, 0x9c, 0x8c, 0x26, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x3a, 0xff, 0x00, 0x0e, 0xfa, 0x96, 0x9c, 0xad, - 0xed, 0xdd, 0xef, 0x00, 0x08, 0xff, 0x00, 0x42, 0x7a, 0xd7, 0x77, 0xe9, - 0x9a, 0xad, 0x66, 0x99, 0xad, 0xca, 0x6c, 0x8c, 0x6d, 0xad, 0xa9, 0x99, - 0x99, 0x9a, 0x9c, 0x9c, 0x88, 0x8c, 0xc9, 0x96, 0xc8, 0xbb, 0x8c, 0x6c, - 0x8b, 0x88, 0x88, 0xd8, 0x86, 0x00, 0x26, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x3a, 0xff, 0x00, 0x0e, 0xfa, 0x96, 0x99, 0xdd, 0xde, 0xdd, 0xef, 0x00, - 0x08, 0xff, 0x00, 0x42, 0xe6, 0xd7, 0xef, 0xa9, 0x96, 0x7d, 0x66, 0x69, - 0xae, 0x69, 0x99, 0x88, 0xce, 0xed, 0x69, 0x9c, 0x99, 0xc8, 0x98, 0x88, - 0x8b, 0x89, 0x6c, 0xc6, 0x9c, 0x88, 0x89, 0x9c, 0x88, 0xc8, 0x88, 0xac, - 0x8e, 0x00, 0x26, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3a, 0xff, 0x00, 0x58, - 0xf7, 0xc6, 0xc6, 0xda, 0xdd, 0xdd, 0xdf, 0xff, 0xff, 0xff, 0xfe, 0xdf, - 0xf7, 0x7e, 0x99, 0x96, 0xa6, 0xa6, 0x66, 0x66, 0xa9, 0xaa, 0x88, 0xcd, - 0xea, 0x99, 0x9c, 0x99, 0x9c, 0x88, 0x88, 0xb8, 0x89, 0xc9, 0xc8, 0xcc, - 0x88, 0xc9, 0x98, 0x88, 0xcc, 0x88, 0xa8, 0x8f, 0x26, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x3c, 0xff, 0x00, 0x56, 0xea, 0xca, 0xad, 0xdd, 0xdd, 0xd7, - 0xff, 0xe6, 0xda, 0x6a, 0xed, 0xe7, 0xfa, 0x99, 0x9e, 0xa6, 0xca, 0x66, - 0x9a, 0x69, 0x96, 0xc9, 0xca, 0xea, 0x69, 0xcc, 0x99, 0xc9, 0xcc, 0x88, - 0x8b, 0x8c, 0x88, 0xc8, 0x8b, 0x8c, 0x69, 0xc8, 0x8c, 0xc9, 0x8c, 0xa8, - 0x6f, 0x00, 0x26, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3c, 0xff, 0x00, 0x56, - 0xfa, 0x6a, 0xae, 0xdd, 0xa6, 0x6e, 0xe9, 0x66, 0xda, 0x99, 0xaa, 0xe7, - 0xe6, 0x9c, 0x6a, 0x66, 0xca, 0x66, 0xc6, 0xa9, 0x69, 0xc8, 0xc6, 0xda, - 0x99, 0x9c, 0x99, 0x88, 0x8c, 0xb8, 0x88, 0x89, 0x88, 0x88, 0x88, 0x89, - 0x99, 0xc8, 0x8a, 0x98, 0x89, 0x9c, 0xdf, 0x00, 0x26, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x3c, 0xff, 0x00, 0x54, 0xf7, 0x99, 0xed, 0xd6, 0xcc, 0x9e, - 0xdc, 0x96, 0xa6, 0xad, 0xad, 0xef, 0xa9, 0x99, 0xd6, 0x6a, 0xc6, 0xa6, - 0x96, 0x99, 0x69, 0xcc, 0x89, 0xda, 0x9c, 0xcc, 0x99, 0x9c, 0x8c, 0x8b, - 0x8c, 0x9c, 0x88, 0x88, 0xb8, 0xcc, 0x9c, 0x88, 0x8c, 0x98, 0x8a, 0xc8, - 0x28, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x52, 0x6e, 0xee, - 0xdc, 0x99, 0xc6, 0x99, 0x6a, 0xa9, 0x9a, 0xae, 0xef, 0x69, 0x6a, 0xea, - 0xa6, 0x9c, 0xa6, 0x99, 0x66, 0x6c, 0xcc, 0x89, 0xda, 0x99, 0xcc, 0x99, - 0xc8, 0x88, 0x88, 0xc9, 0x98, 0x88, 0x88, 0x8c, 0xcc, 0xcc, 0xc8, 0x88, - 0xc8, 0xca, 0x89, 0x00, 0x28, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, - 0x00, 0x52, 0xfd, 0xdd, 0x9c, 0x99, 0x99, 0x66, 0x6e, 0x6a, 0xda, 0xae, - 0xf7, 0x9c, 0x6d, 0xd6, 0xaa, 0x6c, 0x69, 0x99, 0xc9, 0x6c, 0xc8, 0x89, - 0xdd, 0x9c, 0xcc, 0x9c, 0x88, 0x88, 0x8c, 0x99, 0x98, 0x88, 0x88, 0x9c, - 0xc9, 0xcc, 0x8c, 0x8c, 0xc8, 0x9e, 0x8d, 0x00, 0x28, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x3e, 0xff, 0x00, 0x52, 0xaa, 0xda, 0x8c, 0x99, 0x99, 0xa9, - 0xa6, 0x6a, 0xaa, 0xde, 0xfd, 0xca, 0xaa, 0xdd, 0x6a, 0xa8, 0x9c, 0x9c, - 0x99, 0x98, 0x88, 0x89, 0xed, 0x9c, 0xcc, 0x9c, 0x88, 0x88, 0xcc, 0x99, - 0xcc, 0x88, 0xcc, 0x99, 0xc9, 0xcc, 0x88, 0xc9, 0x8c, 0xdd, 0x87, 0x00, - 0x28, 0xff, 0x02, 0xf7, 0x00, 0x00, 0x3c, 0xff, 0x00, 0x54, 0xf7, 0x66, - 0xa9, 0xc9, 0xc9, 0xcc, 0xcc, 0x66, 0x9a, 0xde, 0xe7, 0x76, 0xca, 0x6a, - 0x9a, 0x69, 0xcb, 0xc8, 0x89, 0x9c, 0x88, 0x88, 0x8c, 0x7a, 0x9c, 0xcc, - 0x99, 0xc8, 0x8c, 0x99, 0x99, 0x9c, 0xcc, 0x9c, 0x99, 0xc9, 0xcc, 0x8c, - 0xcc, 0x88, 0xec, 0xcf, 0x28, 0xff, 0x02, 0xf1, 0x00, 0x00, 0x3c, 0xff, - 0x00, 0x54, 0xf7, 0xa6, 0x9c, 0xc9, 0xcc, 0xc8, 0xc8, 0xc9, 0x9d, 0x6d, - 0xdf, 0xdc, 0xcc, 0xa9, 0x69, 0x98, 0x8c, 0xa8, 0x89, 0x9c, 0x88, 0x88, - 0xc9, 0xe6, 0xcc, 0xcc, 0xcc, 0x9c, 0xc9, 0x9c, 0x99, 0xcc, 0xcc, 0xcc, - 0x99, 0xcc, 0xc8, 0xc9, 0xc8, 0x88, 0xe8, 0xaf, 0x28, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x3e, 0xff, 0x00, 0x52, 0x6c, 0xcc, 0x99, 0xcc, 0x89, 0x6c, - 0x8c, 0xdd, 0xda, 0xef, 0xac, 0xcc, 0x69, 0xc8, 0x89, 0x69, 0x96, 0x88, - 0x99, 0x98, 0x88, 0x96, 0xe9, 0xcc, 0xcc, 0x99, 0xc9, 0x99, 0x99, 0x99, - 0xc9, 0x99, 0xc9, 0xc9, 0xc9, 0xc8, 0xc9, 0xcc, 0x89, 0xec, 0xef, 0x00, - 0x28, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x50, 0x98, 0x9c, - 0x99, 0x99, 0x9a, 0x66, 0xcc, 0xed, 0xde, 0x77, 0xac, 0x88, 0x88, 0xc6, - 0xd6, 0xa9, 0xc6, 0x9c, 0x99, 0x98, 0xb8, 0x9a, 0x69, 0xcc, 0x9c, 0xcc, - 0xcc, 0x9c, 0x99, 0x9c, 0xcc, 0xc9, 0x99, 0x99, 0x9c, 0xcc, 0x99, 0xc8, - 0x8e, 0x9c, 0x2a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x50, - 0x9c, 0xcc, 0x69, 0x9c, 0xa6, 0x66, 0x96, 0xea, 0x9e, 0x7e, 0xa9, 0xc9, - 0xc8, 0x9e, 0x69, 0xd9, 0xc9, 0x96, 0x99, 0xc9, 0x88, 0x6a, 0xc9, 0xcc, - 0xc9, 0xc9, 0xcc, 0x9c, 0x99, 0x9c, 0xc9, 0x9c, 0x99, 0x9c, 0x99, 0x9b, - 0x88, 0xc8, 0xce, 0xc9, 0x2a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, - 0x00, 0x50, 0xdc, 0xc9, 0xa9, 0xa8, 0xa6, 0x6a, 0x96, 0x9c, 0xd7, 0xfa, - 0xa6, 0x69, 0xac, 0x6d, 0x66, 0xa6, 0x6c, 0x88, 0x99, 0x9c, 0xc9, 0x69, - 0xc9, 0xcc, 0xc9, 0xcc, 0xcc, 0xc9, 0x99, 0xcc, 0x9c, 0x99, 0x99, 0x99, - 0x98, 0xb8, 0x88, 0x88, 0xcd, 0xc7, 0x2a, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x3e, 0xff, 0x00, 0x50, 0x79, 0x96, 0x69, 0x68, 0x66, 0xa6, 0x96, 0xcc, - 0xaf, 0xfa, 0xe9, 0x9c, 0xc8, 0xa6, 0xa9, 0x69, 0x9c, 0x98, 0xc9, 0x99, - 0x9c, 0x99, 0x99, 0xc9, 0x99, 0xc9, 0xcc, 0x99, 0x9c, 0xc9, 0xcc, 0x9c, - 0x9c, 0x99, 0xc8, 0x89, 0xc8, 0x88, 0xad, 0x8f, 0x2a, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x3e, 0xff, 0x00, 0x50, 0xf9, 0x9a, 0x96, 0xac, 0x9a, 0x66, - 0x99, 0x88, 0x6f, 0xfd, 0xec, 0xc9, 0x9c, 0x99, 0x9a, 0x96, 0x68, 0x9c, - 0xc9, 0x99, 0x99, 0x96, 0x69, 0xcc, 0x99, 0x9c, 0x9c, 0xc9, 0x9c, 0xcc, - 0xc9, 0xc9, 0x99, 0x9c, 0x96, 0xc8, 0xc8, 0x88, 0x79, 0x6f, 0x2a, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x50, 0xf9, 0x99, 0xd9, 0x9c, - 0x6a, 0x66, 0x69, 0x8c, 0x6f, 0xfa, 0x99, 0x96, 0x9a, 0x69, 0x99, 0x66, - 0x9c, 0x99, 0x89, 0xc9, 0x99, 0x99, 0x98, 0x88, 0x88, 0x99, 0xcc, 0x99, - 0xcc, 0xc9, 0xcc, 0x99, 0xc9, 0x9c, 0x9c, 0x69, 0xc9, 0x88, 0x7c, 0xef, - 0x2a, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4e, 0xfd, 0x96, - 0x99, 0x99, 0xa6, 0x66, 0x69, 0x88, 0x6f, 0xd9, 0x9c, 0x99, 0xac, 0x96, - 0x66, 0x96, 0x69, 0xc9, 0x89, 0x98, 0x99, 0x99, 0x6c, 0x88, 0x8b, 0x8c, - 0x99, 0xc9, 0xcc, 0xcc, 0x9c, 0x9c, 0x99, 0x9c, 0x96, 0x6d, 0xcc, 0x89, - 0xac, 0x00, 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4e, - 0xfa, 0x99, 0x99, 0xca, 0xd6, 0xaa, 0x99, 0x8c, 0x69, 0x69, 0x99, 0xc8, - 0x6c, 0x96, 0xc9, 0x96, 0x66, 0xc9, 0xcc, 0x9c, 0x99, 0xcc, 0x88, 0xb8, - 0x88, 0x88, 0x69, 0x9c, 0xcc, 0xc9, 0xc9, 0x99, 0x9c, 0xcc, 0xcc, 0xc6, - 0x89, 0x8e, 0x9a, 0x00, 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, - 0x00, 0x4e, 0xfd, 0x99, 0x9c, 0x6a, 0xda, 0x66, 0x69, 0x8c, 0x99, 0x96, - 0xa9, 0xc8, 0x96, 0x99, 0x69, 0x69, 0x99, 0x8a, 0xc8, 0x99, 0x99, 0x9c, - 0xb8, 0x88, 0x88, 0xb8, 0x96, 0x9c, 0xcc, 0xcc, 0x9c, 0x99, 0xc9, 0xc8, - 0xcc, 0x88, 0x88, 0x9e, 0xce, 0x00, 0x2c, 0xff, 0x02, 0xf4, 0x00, 0x00, - 0x3e, 0xff, 0x00, 0x4e, 0xfa, 0x99, 0xc9, 0xdd, 0xa6, 0xaa, 0x69, 0x88, - 0xc9, 0xc9, 0xd6, 0x88, 0x69, 0x66, 0x99, 0x96, 0x66, 0xc9, 0x68, 0x89, - 0x9c, 0x9c, 0xb8, 0x88, 0x88, 0x88, 0x69, 0xcc, 0xcc, 0xc9, 0x99, 0x9c, - 0xc8, 0xcc, 0xcc, 0xcc, 0x88, 0xe6, 0xcf, 0x00, 0x2c, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4e, 0xfd, 0x99, 0x99, 0xdd, 0xa6, 0x66, - 0x69, 0x88, 0x8c, 0x9c, 0xaa, 0x88, 0x99, 0xa9, 0xc9, 0x9d, 0xaa, 0x99, - 0x9c, 0x8c, 0x99, 0xc8, 0x88, 0x88, 0x88, 0xb8, 0x6c, 0x9c, 0xc9, 0x9c, - 0x99, 0xcc, 0x96, 0x66, 0x99, 0x88, 0xc8, 0xec, 0x6f, 0x00, 0x2c, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4e, 0xfd, 0x69, 0x96, 0xdd, - 0xaa, 0x6a, 0x69, 0x88, 0x88, 0xc9, 0x9d, 0xc8, 0x86, 0x69, 0x9c, 0x69, - 0xaa, 0xa9, 0x6c, 0x88, 0xc9, 0xc8, 0x88, 0x88, 0x8b, 0x88, 0x9c, 0xcc, - 0x9c, 0xc9, 0x9c, 0x99, 0x96, 0x96, 0xcc, 0x8c, 0x89, 0x68, 0xef, 0x00, - 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4c, 0xfd, 0xa9, - 0x9d, 0xda, 0xa6, 0xa6, 0x69, 0x98, 0x88, 0xc9, 0xad, 0x68, 0x8a, 0xad, - 0x88, 0x88, 0x8c, 0x99, 0x96, 0xa8, 0x99, 0x68, 0x88, 0x8c, 0x8b, 0x89, - 0xcc, 0xc9, 0xc9, 0x99, 0x9c, 0x88, 0x8c, 0x66, 0xcc, 0x8c, 0x8a, 0x9c, - 0x2e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4c, 0xfe, 0xa9, - 0x9e, 0xda, 0xaa, 0x6a, 0x69, 0x66, 0x99, 0xcc, 0x6a, 0xd8, 0x88, 0x9b, - 0x88, 0x8c, 0x6c, 0x9d, 0x99, 0x98, 0x9c, 0x96, 0x98, 0xc8, 0x88, 0x8c, - 0x9c, 0x9c, 0x96, 0x9c, 0xc8, 0x8b, 0x8c, 0xc9, 0x98, 0xc8, 0x8a, 0xc6, - 0x2e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x08, 0x22, 0x00, 0x4c, - 0x2e, 0xa9, 0x6d, 0xda, 0xa6, 0x6a, 0x66, 0x96, 0x99, 0x69, 0x6d, 0xdc, - 0x88, 0xa6, 0xaa, 0x66, 0x9c, 0xbd, 0xdc, 0x9c, 0xc6, 0xaa, 0x99, 0xc8, - 0xb8, 0x99, 0xc9, 0xc6, 0x99, 0xc9, 0x88, 0x8c, 0xcc, 0xcc, 0x9c, 0xc8, - 0x6c, 0x8e, 0x2e, 0xff, 0x02, 0xf4, 0x00, 0x00, 0x30, 0xff, 0x00, 0x5a, - 0x22, 0x22, 0x23, 0x32, 0x32, 0x22, 0xf2, 0xfd, 0xa9, 0xdd, 0xaa, 0x66, - 0xa6, 0x6a, 0xee, 0x77, 0x69, 0x96, 0x66, 0x8c, 0xcd, 0xa6, 0x9d, 0x96, - 0x8c, 0xdd, 0xac, 0xc9, 0x8c, 0x8c, 0x88, 0xc6, 0xc9, 0x99, 0x69, 0x9c, - 0x69, 0x99, 0x9c, 0xc9, 0xc9, 0x9c, 0x8c, 0xac, 0xcf, 0x00, 0x2e, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x2e, 0xff, 0x00, 0x14, 0x22, 0x22, 0x33, 0x22, - 0xf2, 0xff, 0xff, 0xff, 0xfa, 0x66, 0x08, 0xaa, 0x00, 0x40, 0x6d, 0xdd, - 0xdd, 0xa6, 0x6a, 0xaa, 0x88, 0x86, 0x69, 0xc6, 0x99, 0x98, 0x88, 0x9c, - 0xc8, 0x88, 0x88, 0x99, 0x69, 0x6a, 0xa6, 0x9c, 0xc8, 0xc9, 0xc9, 0xcc, - 0x86, 0x99, 0x9c, 0xba, 0x98, 0x9f, 0x2e, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x2a, 0xff, 0x00, 0x0a, 0xf2, 0x22, 0x22, 0x22, 0x2f, 0x00, 0x0a, 0xff, - 0x00, 0x4c, 0x7a, 0xce, 0xdd, 0xa6, 0x6a, 0xaa, 0xad, 0xea, 0xdd, 0xd6, - 0xda, 0xa6, 0xcc, 0x89, 0xa9, 0x99, 0x99, 0xac, 0x88, 0xb8, 0xbb, 0x88, - 0x86, 0x9a, 0x99, 0x99, 0xc8, 0xcc, 0xcc, 0x99, 0xcc, 0x9d, 0xc9, 0xc6, - 0x9c, 0xce, 0x9c, 0xdf, 0x2e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x28, 0xff, - 0x00, 0x08, 0xf2, 0x22, 0x22, 0x2f, 0x0e, 0xff, 0x00, 0x4a, 0xe9, 0xda, - 0xa6, 0xaa, 0xd6, 0xda, 0xa6, 0xda, 0xad, 0xea, 0x7a, 0xa6, 0xa8, 0xc8, - 0xac, 0x66, 0x99, 0x9a, 0xd6, 0x9c, 0xc6, 0x6d, 0xa6, 0x9c, 0x9c, 0x88, - 0xc9, 0x9c, 0x9c, 0x99, 0xcc, 0xcc, 0xc6, 0xc9, 0xc8, 0x7a, 0xcc, 0x00, - 0x30, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x26, 0xff, 0x00, 0x06, 0xf2, 0x23, - 0x22, 0x00, 0x12, 0xff, 0x00, 0x4a, 0x6d, 0xaa, 0x66, 0x6d, 0xdd, 0xaa, - 0x66, 0x6a, 0xda, 0xaa, 0xea, 0x6a, 0xa9, 0xc8, 0x69, 0x6c, 0x66, 0x66, - 0x66, 0x6a, 0x66, 0x6a, 0xaa, 0x6c, 0xe9, 0xcc, 0xc9, 0x96, 0x99, 0x96, - 0xcc, 0xc8, 0xc9, 0xc9, 0x8a, 0xf6, 0xc9, 0x00, 0x30, 0xff, 0x02, 0xf7, - 0x00, 0x00, 0x26, 0xff, 0x02, 0x23, 0x02, 0x32, 0x14, 0xff, 0x00, 0x4a, - 0x9a, 0xa6, 0x66, 0x6a, 0xdd, 0x9c, 0x88, 0xc8, 0xca, 0xa6, 0xa6, 0x9a, - 0x66, 0xc8, 0x96, 0x9c, 0x99, 0xc9, 0x99, 0x9c, 0x99, 0x69, 0x6a, 0xa8, - 0x6a, 0xac, 0xcc, 0x96, 0x98, 0x99, 0xcc, 0xcc, 0x89, 0xc8, 0xcf, 0xec, - 0xcd, 0x00, 0x30, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x24, 0xff, 0x02, 0x22, - 0x02, 0x32, 0x16, 0xff, 0x00, 0x4a, 0x6a, 0xaa, 0x69, 0x6a, 0x66, 0xc6, - 0x77, 0xfe, 0xa8, 0x96, 0xc8, 0x89, 0xdd, 0x8c, 0x8a, 0xcc, 0xcc, 0xc9, - 0x9c, 0x9c, 0xcc, 0x6e, 0xa6, 0xa6, 0x8a, 0xde, 0x6a, 0x66, 0x8c, 0xa9, - 0xcc, 0xcc, 0xcc, 0x98, 0x9f, 0xec, 0xcf, 0x00, 0x30, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x22, 0xff, 0x00, 0x06, 0xf2, 0x33, 0x2f, 0x00, 0x14, 0xff, - 0x00, 0x4c, 0xf7, 0x6a, 0x66, 0xcc, 0x9a, 0xa8, 0x6f, 0xff, 0xff, 0xfa, - 0x88, 0x86, 0x69, 0xdd, 0x98, 0xc6, 0x99, 0xc9, 0xcc, 0x9c, 0x9c, 0xcc, - 0x6d, 0xa6, 0x6d, 0x8c, 0xcc, 0xc8, 0x88, 0x8d, 0x66, 0x9c, 0x9c, 0xc8, - 0x68, 0xdf, 0x68, 0x9f, 0x30, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x22, 0xff, - 0x02, 0x33, 0x02, 0x22, 0x18, 0xff, 0x00, 0x4a, 0xd6, 0xa6, 0x99, 0xc6, - 0xd9, 0xff, 0xff, 0xff, 0xfe, 0xd9, 0xae, 0x99, 0xa7, 0xa8, 0xcc, 0x9c, - 0x99, 0x96, 0x6c, 0xcc, 0xcc, 0xae, 0xdd, 0xaa, 0xac, 0x9c, 0x66, 0xc9, - 0xda, 0x9a, 0x69, 0xcc, 0xc8, 0x98, 0xef, 0xcc, 0xef, 0x00, 0x30, 0xff, - 0x02, 0xfb, 0x00, 0x00, 0x20, 0xff, 0x02, 0xf3, 0x02, 0x33, 0x1a, 0xff, - 0x00, 0x48, 0xaa, 0x66, 0x9c, 0x99, 0x6d, 0xef, 0xf7, 0xff, 0xf7, 0xed, - 0xda, 0x96, 0xce, 0xe8, 0x8c, 0x99, 0xc9, 0xaa, 0x66, 0xcc, 0xcc, 0xde, - 0xaa, 0x6a, 0xae, 0x6c, 0xc9, 0x6a, 0xcc, 0x9c, 0xcc, 0x9c, 0xcc, 0x88, - 0xee, 0xcc, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x06, - 0xf2, 0x25, 0x3f, 0x00, 0x1a, 0xff, 0x00, 0x48, 0xaa, 0x69, 0x99, 0xc6, - 0x9a, 0x6f, 0xff, 0xff, 0x77, 0xea, 0x6a, 0xa6, 0x6a, 0xdc, 0x8c, 0xd6, - 0x69, 0xd6, 0xd9, 0xcc, 0xcc, 0x7d, 0xaa, 0xa6, 0x9e, 0xe7, 0xa6, 0x69, - 0x6c, 0xc8, 0x9c, 0xcc, 0x9c, 0x8c, 0xea, 0x86, 0x32, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x1e, 0xff, 0x02, 0xf2, 0x02, 0x53, 0x1c, 0xff, 0x00, 0x48, - 0xa6, 0x6c, 0xcc, 0x9c, 0x96, 0xd6, 0xff, 0xfe, 0x77, 0xd9, 0xaa, 0xa8, - 0x9a, 0xaa, 0x88, 0x9a, 0xc9, 0xa6, 0x9a, 0xa9, 0x9c, 0xea, 0x99, 0x96, - 0x9d, 0xae, 0xd6, 0x69, 0xd6, 0x88, 0x9c, 0xc9, 0x6c, 0x89, 0xdc, 0xc7, - 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1e, 0xff, 0x02, 0x25, 0x02, 0x2f, - 0x1c, 0xff, 0x00, 0x48, 0x68, 0x88, 0xcc, 0xcc, 0x9d, 0x6a, 0x6f, 0xff, - 0xfd, 0xc8, 0x99, 0xac, 0x89, 0x66, 0x8c, 0x86, 0xc9, 0xd6, 0x6c, 0x99, - 0x69, 0xa6, 0xc6, 0x66, 0x6a, 0x9a, 0xa6, 0x6a, 0xac, 0x68, 0xcc, 0x88, - 0x8b, 0x89, 0x9c, 0xcf, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1c, 0xff, - 0x00, 0x06, 0xf2, 0x33, 0x2f, 0x00, 0x1c, 0xff, 0x00, 0x48, 0x99, 0x9c, - 0xc8, 0xcc, 0x9d, 0xda, 0x66, 0xde, 0xdc, 0x88, 0x6d, 0x9c, 0x96, 0xa9, - 0xcc, 0xcc, 0xc6, 0x66, 0x99, 0x99, 0x6a, 0xa9, 0x99, 0x99, 0x66, 0x96, - 0x66, 0xa6, 0x66, 0x6c, 0x88, 0xc9, 0x88, 0x9a, 0x9c, 0xaf, 0x32, 0xff, - 0x02, 0xf1, 0x00, 0x00, 0x1c, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x16, 0xff, - 0x00, 0x50, 0xfe, 0xa7, 0xff, 0xff, 0x9c, 0xcc, 0xcc, 0xcc, 0x9c, 0xaa, - 0x6a, 0x96, 0xc8, 0x88, 0x9a, 0xcc, 0xc9, 0x6c, 0x9c, 0xcc, 0xcc, 0xc9, - 0xc9, 0x9c, 0x9a, 0xa9, 0xc6, 0x6c, 0x69, 0x9c, 0x96, 0x6a, 0xa9, 0x66, - 0x88, 0xee, 0xda, 0x68, 0x89, 0x7f, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x1c, 0xff, 0x02, 0x25, 0x02, 0x2f, 0x16, 0xff, 0x00, 0x4e, 0xf7, 0x69, - 0xaf, 0xff, 0x98, 0xc9, 0xc8, 0x8c, 0x9c, 0xad, 0xd6, 0x69, 0x8c, 0x98, - 0x86, 0x69, 0xc9, 0x66, 0x98, 0x88, 0x9c, 0xc9, 0x66, 0x69, 0x6d, 0xa9, - 0xc6, 0x9c, 0x69, 0x66, 0x99, 0x66, 0x96, 0x99, 0xcb, 0xef, 0x6c, 0x9c, - 0xcc, 0x00, 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1c, 0xff, 0x02, 0x33, - 0x02, 0x2f, 0x18, 0xff, 0x00, 0x4c, 0xd9, 0x96, 0xef, 0xa8, 0x8c, 0xcc, - 0x88, 0x99, 0xdd, 0xde, 0xa9, 0x6d, 0x6c, 0x8c, 0xd6, 0x9c, 0xc6, 0x98, - 0x88, 0xdc, 0xc6, 0xaa, 0x9c, 0x6d, 0x99, 0xcc, 0x99, 0x96, 0x96, 0x6a, - 0xa6, 0xa6, 0x9c, 0x88, 0x6e, 0x6d, 0xac, 0xcd, 0x34, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x1a, 0xff, 0x02, 0xf2, 0x02, 0x52, 0x1a, 0xff, 0x00, 0x4c, - 0xfc, 0x99, 0xcf, 0xd8, 0xb8, 0xcc, 0x88, 0xca, 0xa9, 0xde, 0x77, 0x7d, - 0xd6, 0x88, 0xad, 0x99, 0xca, 0x9c, 0x88, 0xaa, 0xc6, 0xa6, 0x69, 0x9a, - 0x99, 0x96, 0x99, 0x96, 0xca, 0xaa, 0xaa, 0xa6, 0x9c, 0x8c, 0x66, 0xdf, - 0xfe, 0xcf, 0x34, 0xff, 0x02, 0xf9, 0x00, 0x00, 0x1a, 0xff, 0x02, 0xf3, - 0x02, 0x32, 0x1a, 0xff, 0x00, 0x4c, 0xfa, 0xcc, 0x98, 0x68, 0x88, 0x8c, - 0x88, 0xca, 0xdd, 0xdf, 0xff, 0xff, 0xfa, 0x98, 0xca, 0xe9, 0x96, 0x69, - 0x88, 0x9d, 0xc9, 0xc9, 0x99, 0x9a, 0xca, 0xc6, 0x99, 0x99, 0x66, 0xc9, - 0x99, 0x99, 0x98, 0xc6, 0xc9, 0xde, 0xff, 0xdf, 0x34, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x1a, 0xff, 0x02, 0x23, 0x02, 0x3f, 0x1a, 0xff, 0x00, 0x30, - 0xfa, 0xcc, 0x98, 0x88, 0x88, 0x88, 0x8c, 0xca, 0xae, 0xdf, 0xff, 0xff, - 0xf7, 0xd9, 0x8c, 0xda, 0x66, 0x96, 0x88, 0xce, 0xcc, 0x99, 0x66, 0x66, - 0x0a, 0xcc, 0x00, 0x0e, 0x9c, 0xc9, 0x98, 0x89, 0x98, 0x9c, 0x96, 0x00, - 0x38, 0xff, 0x02, 0xf9, 0x00, 0x00, 0x1a, 0xff, 0x02, 0x25, 0x02, 0x2f, - 0x1a, 0xff, 0x00, 0x48, 0xda, 0xc9, 0x99, 0xb8, 0x8b, 0x88, 0xc6, 0x9d, - 0xdd, 0xae, 0xed, 0x7f, 0x77, 0xee, 0xc8, 0x9a, 0xa6, 0x66, 0xc8, 0x86, - 0x6c, 0xc9, 0x66, 0x99, 0xcc, 0xcc, 0xcc, 0x8c, 0xcc, 0xcc, 0x9c, 0xb8, - 0x6c, 0xc9, 0x66, 0x9e, 0x38, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1a, 0xff, - 0x02, 0x35, 0x02, 0x2f, 0x18, 0xff, 0x00, 0x48, 0xfd, 0xda, 0xcc, 0x66, - 0x88, 0x88, 0x88, 0x8a, 0xa9, 0x6e, 0xed, 0xad, 0xaf, 0xf7, 0xef, 0xd6, - 0x8c, 0x9a, 0x6a, 0x68, 0x89, 0xec, 0x9c, 0xc6, 0x9c, 0x9c, 0xcc, 0x8c, - 0xcc, 0xc8, 0x98, 0x88, 0x9a, 0x99, 0xa6, 0x6d, 0x3a, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, 0x02, 0x53, 0x1a, 0xff, 0x00, 0x32, - 0xfc, 0xa6, 0x68, 0x99, 0x9b, 0x88, 0xb8, 0xca, 0x69, 0xae, 0xee, 0xed, - 0xe7, 0xff, 0x77, 0xfe, 0xdc, 0xc6, 0xa6, 0x9c, 0x88, 0xdc, 0xc8, 0x99, - 0x69, 0x00, 0x08, 0xcc, 0x00, 0x0c, 0x8c, 0x88, 0x8a, 0x9c, 0x6a, 0xd7, - 0x3c, 0xff, 0x02, 0xf2, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, 0x02, 0x53, - 0x1a, 0xff, 0x00, 0x34, 0x66, 0x96, 0x98, 0x96, 0x9b, 0x8b, 0x88, 0xca, - 0x66, 0x9d, 0xdd, 0xff, 0xff, 0xee, 0xaa, 0xae, 0xed, 0xa9, 0x66, 0x99, - 0x8c, 0x69, 0x8c, 0xc9, 0x66, 0xcc, 0x08, 0xc8, 0x00, 0x08, 0x89, 0xac, - 0xc6, 0xe2, 0x3e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, - 0x02, 0x53, 0x1a, 0xff, 0x00, 0x46, 0x96, 0x69, 0x98, 0x99, 0x68, 0xb8, - 0xb8, 0xca, 0xaa, 0x9a, 0xdf, 0x7e, 0xa9, 0x88, 0x88, 0x89, 0xef, 0xea, - 0x6d, 0xed, 0xa6, 0x66, 0x88, 0x8c, 0xc6, 0x98, 0x88, 0x88, 0x88, 0x8c, - 0xa9, 0xc9, 0xae, 0x22, 0x2f, 0x00, 0x3c, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x1a, 0xff, 0x00, 0x46, 0xc9, 0xd6, - 0xac, 0x9c, 0x68, 0xb8, 0x88, 0xcd, 0x6c, 0x9a, 0xea, 0xc8, 0xb8, 0x8b, - 0x8b, 0x88, 0xb9, 0xaa, 0x69, 0x6d, 0xd6, 0x9c, 0x8c, 0x88, 0x8c, 0x88, - 0x88, 0x88, 0xc9, 0x99, 0x9a, 0x9d, 0xdf, 0xf2, 0x2f, 0x00, 0x3c, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x18, 0xff, - 0x00, 0x48, 0xf6, 0xa9, 0xd6, 0xa9, 0x9c, 0x9b, 0x8b, 0x88, 0x9a, 0x6c, - 0xcd, 0xc8, 0x8b, 0x8b, 0xb8, 0xb8, 0x8b, 0x8b, 0x88, 0xc6, 0xc9, 0x6c, - 0x88, 0x88, 0x88, 0x69, 0x8b, 0x8b, 0xbc, 0xa9, 0x8c, 0x9d, 0x7a, 0x7f, - 0xf2, 0x22, 0x3c, 0xff, 0x02, 0xf9, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, - 0x02, 0x52, 0x14, 0xff, 0x00, 0x4c, 0xf7, 0x9c, 0xcc, 0xa6, 0x66, 0x69, - 0xc9, 0x98, 0xb8, 0x88, 0x6d, 0x98, 0x88, 0x88, 0xb8, 0x88, 0x8c, 0x96, - 0x69, 0xc8, 0x8b, 0x8c, 0x6c, 0x69, 0xcc, 0xc1, 0x8a, 0xa8, 0x8b, 0x8c, - 0xa9, 0xcc, 0xcc, 0xad, 0xad, 0xff, 0xff, 0x22, 0x3c, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x14, 0xff, 0x00, 0x18, - 0xf6, 0xc8, 0x8c, 0xca, 0xca, 0x9c, 0xc6, 0x98, 0x88, 0x88, 0xad, 0x8b, - 0x08, 0x88, 0x00, 0x2c, 0xc6, 0x6a, 0xa9, 0xcc, 0x88, 0x88, 0xc9, 0x96, - 0xcc, 0xc1, 0x9c, 0xc8, 0xcc, 0x8c, 0x88, 0x89, 0xaa, 0x96, 0xaf, 0xff, - 0xff, 0x22, 0x3c, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, - 0x02, 0x52, 0x14, 0xff, 0x00, 0x4e, 0xfc, 0x8c, 0xc8, 0xc6, 0xca, 0x6c, - 0x96, 0xa8, 0xb8, 0x8c, 0x66, 0x88, 0xb8, 0x88, 0xcc, 0xc9, 0xa6, 0xa6, - 0xa6, 0x69, 0x8c, 0x9b, 0x89, 0xc6, 0xcc, 0xc6, 0x16, 0x98, 0xc8, 0xcc, - 0xc9, 0x9d, 0xec, 0x96, 0x7f, 0xff, 0xff, 0x23, 0x2f, 0x00, 0x3a, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x14, 0xff, - 0x00, 0x4e, 0xfc, 0xc8, 0xc9, 0x9c, 0x8a, 0x9c, 0x96, 0xa8, 0x8b, 0x8c, - 0xa8, 0x8b, 0x88, 0x8c, 0xc9, 0x9a, 0x66, 0x6a, 0xaa, 0x69, 0x98, 0x98, - 0xb8, 0x99, 0xd9, 0x91, 0x1a, 0x6c, 0x9c, 0x96, 0x96, 0xde, 0x69, 0x67, - 0xff, 0xff, 0xff, 0xf3, 0x2f, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x14, 0xff, 0x00, 0x4e, 0xec, 0x8c, - 0xc9, 0x89, 0xca, 0x99, 0xc6, 0xec, 0x88, 0x89, 0x68, 0xb8, 0x88, 0x8c, - 0x99, 0xaa, 0xaa, 0xa6, 0x69, 0xcc, 0xcc, 0xc9, 0x8b, 0xcc, 0xa6, 0x96, - 0x16, 0x99, 0xc6, 0x99, 0x97, 0xde, 0x96, 0xef, 0xff, 0xff, 0xff, 0xf2, - 0x3f, 0x00, 0x3a, 0xff, 0x02, 0xf4, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, - 0x02, 0x52, 0x14, 0xff, 0x00, 0x42, 0xa8, 0x88, 0x86, 0x9c, 0x89, 0x99, - 0xc9, 0xec, 0x8b, 0x88, 0x98, 0x8b, 0x88, 0xcc, 0x6a, 0x6a, 0x66, 0x69, - 0x96, 0x9c, 0x8c, 0xcc, 0x8b, 0x8c, 0x9d, 0x6a, 0x11, 0x9c, 0xc9, 0x6a, - 0xee, 0xed, 0x9e, 0x00, 0x08, 0xff, 0x02, 0xf2, 0x02, 0x3f, 0x3a, 0xff, - 0x02, 0xfb, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, 0x02, 0x52, 0x12, 0xff, - 0x00, 0x42, 0xfd, 0xc8, 0x98, 0x8c, 0x99, 0x8c, 0x69, 0x99, 0xe9, 0x88, - 0xb8, 0x88, 0xb8, 0x88, 0xc9, 0x6a, 0x66, 0x66, 0x9a, 0xa6, 0x6c, 0x8c, - 0x8c, 0xc8, 0x88, 0x9a, 0xaa, 0x11, 0x6c, 0xc9, 0x9d, 0xee, 0xee, 0x00, - 0x0a, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x3a, 0xff, 0x02, 0xf4, 0x00, 0x00, - 0x18, 0xff, 0x02, 0xf2, 0x02, 0x53, 0x12, 0xff, 0x00, 0x42, 0xec, 0x99, - 0xc6, 0x88, 0x69, 0x98, 0x69, 0x99, 0xaa, 0xc8, 0x88, 0x88, 0x88, 0x8c, - 0xc9, 0x6a, 0x69, 0x6a, 0xaa, 0xa6, 0xc9, 0xcc, 0xcc, 0xc8, 0xb8, 0xc6, - 0xdd, 0xa1, 0x6c, 0x89, 0xee, 0xee, 0x7f, 0x00, 0x0c, 0xff, 0x02, 0x32, - 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, 0x02, 0x53, - 0x12, 0xff, 0x00, 0x40, 0x9c, 0xcc, 0x6c, 0x98, 0x8c, 0x9c, 0x69, 0x99, - 0x6d, 0x9b, 0xb8, 0x8b, 0x88, 0x8c, 0x6a, 0xa6, 0x66, 0x66, 0x66, 0x69, - 0xcc, 0x8c, 0x88, 0x98, 0xb8, 0x89, 0xde, 0xd0, 0x19, 0x9a, 0xed, 0xe7, - 0x0e, 0xff, 0x02, 0x22, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x18, 0xff, - 0x02, 0xf2, 0x02, 0x55, 0x12, 0xff, 0x00, 0x40, 0xcc, 0xc8, 0x96, 0x96, - 0xc8, 0xcc, 0x99, 0x96, 0x9e, 0xd8, 0x88, 0xc8, 0x88, 0xc6, 0xa6, 0x66, - 0x69, 0x99, 0x99, 0x96, 0x9c, 0x88, 0xcc, 0xcc, 0x88, 0x8a, 0x6e, 0xe0, - 0x49, 0x9e, 0x77, 0x7f, 0x0e, 0xff, 0x02, 0x33, 0x3a, 0xff, 0x02, 0xf9, - 0x00, 0x00, 0x1a, 0xff, 0x02, 0x35, 0x02, 0x2f, 0x0e, 0xff, 0x00, 0x3e, - 0xf7, 0xc8, 0xcc, 0xc9, 0xaa, 0xd8, 0x89, 0x69, 0x99, 0x9c, 0x68, 0xbb, - 0x9c, 0x88, 0xa6, 0x66, 0x66, 0x69, 0xc9, 0x9a, 0xa6, 0x69, 0xc8, 0x88, - 0x8c, 0x88, 0xaf, 0x96, 0x7e, 0x01, 0xef, 0x00, 0x12, 0xff, 0x02, 0x23, - 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x1a, 0xff, 0x02, 0x35, 0x02, 0x2f, - 0x0e, 0xff, 0x00, 0x3e, 0xfa, 0xc8, 0x89, 0xcc, 0xa7, 0x6c, 0x88, 0x96, - 0xcc, 0xc9, 0xac, 0x88, 0xb8, 0x99, 0x66, 0x66, 0x99, 0x66, 0x66, 0xaa, - 0x6c, 0xc9, 0xcc, 0x88, 0x8c, 0x88, 0x87, 0x9c, 0xae, 0x01, 0x3f, 0x00, - 0x12, 0xff, 0x02, 0x33, 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x1a, 0xff, - 0x02, 0x25, 0x02, 0x3f, 0x0e, 0xff, 0x00, 0x3e, 0xf9, 0x88, 0x8c, 0x9c, - 0x6a, 0xcc, 0x9c, 0x8c, 0xcc, 0xcc, 0x6a, 0xc9, 0x6c, 0x99, 0x96, 0x66, - 0x96, 0x96, 0xaa, 0x69, 0xc8, 0xcc, 0xcc, 0x88, 0x88, 0xc8, 0x88, 0xca, - 0x77, 0x75, 0x52, 0x00, 0x10, 0xff, 0x02, 0xf2, 0x02, 0x33, 0x3a, 0xff, - 0x02, 0xfb, 0x00, 0x00, 0x1a, 0xff, 0x02, 0x25, 0x02, 0x5f, 0x0e, 0xff, - 0x00, 0x3e, 0x7c, 0xcc, 0xc8, 0xc9, 0xa8, 0xcc, 0xa6, 0x8b, 0x98, 0x9c, - 0xaa, 0xcc, 0x89, 0x99, 0x99, 0x69, 0x99, 0x66, 0x99, 0x99, 0x9c, 0x8c, - 0xcc, 0x88, 0xcc, 0xc8, 0x88, 0x86, 0xff, 0xf3, 0x55, 0x00, 0x12, 0xff, - 0x02, 0x32, 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x1a, 0xff, 0x02, 0xf3, - 0x02, 0x52, 0x0e, 0xff, 0x00, 0x1e, 0xd8, 0xcc, 0x6a, 0x89, 0x88, 0x9d, - 0xc8, 0x88, 0x99, 0xc8, 0x96, 0x88, 0x8c, 0x99, 0x96, 0x00, 0x08, 0x99, - 0x02, 0x98, 0x02, 0xcc, 0x08, 0x88, 0x00, 0x0e, 0xc8, 0x88, 0x88, 0x7f, - 0xff, 0x35, 0x3f, 0x00, 0x0e, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x3a, 0xff, - 0x02, 0xfd, 0x00, 0x00, 0x1a, 0xff, 0x02, 0xf2, 0x02, 0x53, 0x0e, 0xff, - 0x00, 0x1c, 0x99, 0xcc, 0xc6, 0xea, 0xcc, 0xe9, 0x8b, 0x8c, 0x6f, 0xcc, - 0xc6, 0x88, 0x88, 0xc9, 0x08, 0x99, 0x00, 0x06, 0xc8, 0xca, 0xea, 0x00, - 0x08, 0x88, 0x00, 0x0e, 0x8c, 0x8c, 0x8c, 0xdf, 0xff, 0x25, 0x53, 0x00, - 0x0e, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x3a, 0xff, 0x02, 0xf5, 0x00, 0x00, - 0x1a, 0xff, 0x02, 0xf2, 0x02, 0x55, 0x0c, 0xff, 0x00, 0x2e, 0xfd, 0xc9, - 0x8a, 0x96, 0xc9, 0x6c, 0x9c, 0x88, 0x8c, 0xef, 0xf9, 0xc9, 0x68, 0xb8, - 0xc9, 0x99, 0x99, 0x9c, 0x88, 0xc6, 0xd7, 0xdd, 0xa9, 0x00, 0x0a, 0x88, - 0x00, 0x0c, 0x96, 0xef, 0xff, 0xf2, 0x55, 0x2f, 0x0c, 0xff, 0x02, 0x23, - 0x02, 0x3f, 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x1c, 0xff, 0x02, 0x34, - 0x02, 0x2f, 0x0a, 0xff, 0x00, 0x44, 0xfc, 0xcc, 0xcc, 0x6a, 0xcc, 0xcd, - 0xac, 0x88, 0xcd, 0xff, 0xff, 0x6c, 0x9a, 0x88, 0x86, 0x99, 0x9c, 0xc8, - 0x8e, 0xde, 0x77, 0xea, 0xdd, 0xd9, 0x88, 0x88, 0x88, 0x8c, 0x97, 0xff, - 0xff, 0xff, 0x25, 0x53, 0x0c, 0xff, 0x02, 0x33, 0x02, 0x2f, 0x3a, 0xff, - 0x02, 0xf1, 0x00, 0x00, 0x1c, 0xff, 0x02, 0x25, 0x02, 0x5f, 0x0a, 0xff, - 0x00, 0x46, 0xd6, 0xc9, 0xc9, 0xa8, 0xcc, 0x88, 0x68, 0x88, 0x9f, 0xff, - 0xff, 0xf6, 0x9a, 0xc8, 0x89, 0x69, 0x9c, 0x86, 0xdd, 0xdd, 0x77, 0xda, - 0xae, 0xed, 0xdc, 0x88, 0x88, 0xcc, 0xdf, 0xff, 0xff, 0xff, 0xf2, 0x55, - 0x32, 0x00, 0x08, 0xff, 0x02, 0xf3, 0x02, 0x53, 0x3c, 0xff, 0x02, 0xfd, - 0x00, 0x00, 0x1c, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x0a, 0xff, 0x00, 0x10, - 0x68, 0xc9, 0x99, 0x8c, 0x98, 0x88, 0x8c, 0x8a, 0x08, 0xff, 0x00, 0x22, - 0x6c, 0x99, 0xc6, 0x69, 0x88, 0xde, 0xdd, 0xee, 0xe6, 0xc8, 0x6d, 0xdd, - 0xdd, 0x68, 0x88, 0x89, 0x7f, 0x00, 0x08, 0xff, 0x00, 0x10, 0x25, 0x55, - 0x32, 0xff, 0xff, 0x22, 0x35, 0x3f, 0x3c, 0xff, 0x02, 0xfb, 0x00, 0x00, - 0x1c, 0xff, 0x00, 0x1e, 0xf2, 0x55, 0x2f, 0xff, 0xff, 0xff, 0xf6, 0xcc, - 0x6a, 0xed, 0x99, 0x88, 0xc8, 0x88, 0x6f, 0x00, 0x08, 0xff, 0x00, 0x20, - 0xf9, 0x96, 0xe9, 0x69, 0x6e, 0xaa, 0xde, 0xee, 0x66, 0xc8, 0xc6, 0xad, - 0xdd, 0xe6, 0x88, 0x89, 0x0c, 0xff, 0x00, 0x0c, 0x25, 0x55, 0x53, 0x33, - 0x35, 0x52, 0x3e, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, - 0x35, 0x2f, 0xff, 0xff, 0xff, 0xd8, 0x89, 0x9c, 0xda, 0x9c, 0x88, 0x88, - 0x89, 0x00, 0x0c, 0xff, 0x00, 0x1e, 0x77, 0xd9, 0x69, 0xd7, 0xdd, 0x77, - 0x76, 0x6a, 0xcc, 0xc9, 0x6a, 0xdd, 0xd6, 0xc8, 0x89, 0x00, 0x0c, 0xff, - 0x00, 0x0c, 0xf2, 0x23, 0x33, 0x53, 0x32, 0x2f, 0x3e, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, 0x25, 0x5f, 0xff, 0xff, 0xff, 0x9c, - 0xca, 0xda, 0x99, 0xc8, 0xc8, 0x88, 0xc7, 0x00, 0x0e, 0xff, 0x00, 0x1c, - 0xf6, 0x69, 0xe7, 0x77, 0x7e, 0x66, 0x6a, 0xcc, 0xcc, 0x9a, 0xad, 0xd6, - 0xc8, 0xc6, 0x10, 0xff, 0x02, 0xf2, 0x02, 0xf2, 0x42, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, 0xf3, 0x53, 0xff, 0xff, 0xfa, 0xa6, - 0xa7, 0xe9, 0xcc, 0x88, 0x8c, 0x8c, 0xaf, 0x00, 0x0e, 0xff, 0x00, 0x1c, - 0xf6, 0x69, 0xd7, 0x77, 0xd6, 0x66, 0x6a, 0xc9, 0xcc, 0xc9, 0x6a, 0xd6, - 0xc8, 0xca, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x18, - 0xf2, 0x55, 0x2f, 0xff, 0x66, 0x98, 0x8c, 0xcc, 0xd9, 0xc8, 0xb8, 0x86, - 0x10, 0xff, 0x00, 0x1c, 0xf6, 0x69, 0xae, 0xd6, 0x66, 0x6a, 0x6a, 0x9c, - 0xc9, 0xc9, 0x99, 0xa9, 0xcc, 0xcd, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, - 0x20, 0xff, 0x00, 0x16, 0x25, 0x5f, 0xee, 0x69, 0x9c, 0x8c, 0xcc, 0xc6, - 0xc8, 0x88, 0x9f, 0x00, 0x10, 0xff, 0x00, 0x1c, 0x76, 0x66, 0x66, 0x66, - 0x6a, 0x66, 0x6a, 0xcc, 0x9c, 0xcc, 0xcc, 0xc8, 0x8c, 0xcd, 0x56, 0xff, - 0x02, 0xfb, 0x00, 0x00, 0x20, 0xff, 0x00, 0x16, 0xf3, 0x50, 0x66, 0xc8, - 0xcc, 0xc8, 0xc9, 0x8c, 0x98, 0x8c, 0x7f, 0x00, 0x10, 0xff, 0x02, 0xe6, - 0x02, 0xa6, 0x0a, 0x66, 0x00, 0x0e, 0xc9, 0xcc, 0x99, 0x99, 0xcc, 0xcc, - 0xce, 0x00, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x22, 0xff, 0x00, 0x12, - 0x11, 0xc9, 0x98, 0xcc, 0xc9, 0x6c, 0x8c, 0xcc, 0xcd, 0x00, 0x12, 0xff, - 0x00, 0x1c, 0xe6, 0xaa, 0x66, 0x66, 0x6c, 0xc6, 0x66, 0xcc, 0x99, 0xcc, - 0x99, 0x9c, 0x89, 0x9e, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1e, 0xff, - 0x00, 0x16, 0x22, 0xff, 0x11, 0x18, 0x88, 0x99, 0x8c, 0xc9, 0x98, 0xbc, - 0x9f, 0x00, 0x12, 0xff, 0x00, 0x1c, 0xe6, 0x66, 0x66, 0x66, 0x88, 0x86, - 0xa9, 0xc8, 0x89, 0x69, 0x99, 0x99, 0xcc, 0xc7, 0x56, 0xff, 0x02, 0xfc, - 0x00, 0x00, 0x1c, 0xff, 0x00, 0x18, 0xf2, 0x00, 0x02, 0x66, 0x11, 0x8c, - 0x9c, 0x9c, 0xc8, 0xb8, 0x88, 0xdf, 0x12, 0xff, 0x00, 0x1c, 0xd9, 0x6a, - 0x66, 0x68, 0x88, 0x96, 0x69, 0xc8, 0xc8, 0x96, 0x96, 0x99, 0x9c, 0x67, - 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1c, 0xff, 0x00, 0x1e, 0xf0, 0x00, - 0x00, 0x68, 0xc1, 0x18, 0xcc, 0x66, 0x98, 0x88, 0x88, 0xdf, 0xff, 0x23, - 0x2f, 0x00, 0x0c, 0xff, 0x00, 0x1c, 0x66, 0x66, 0x69, 0x98, 0x99, 0x66, - 0x69, 0xcc, 0xc9, 0x8a, 0x96, 0x99, 0xcc, 0xce, 0x56, 0xff, 0x02, 0xfc, - 0x00, 0x00, 0x1c, 0xff, 0x00, 0x1e, 0x20, 0x00, 0x00, 0x98, 0x8c, 0x11, - 0x86, 0x6a, 0xd9, 0xc8, 0x8c, 0xff, 0xf2, 0x32, 0x3f, 0x00, 0x0c, 0xff, - 0x00, 0x1c, 0xa6, 0x66, 0x99, 0xc9, 0x69, 0x69, 0x99, 0xc9, 0xc6, 0xc9, - 0x66, 0x99, 0xcc, 0xce, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1c, 0xff, - 0x00, 0x1e, 0x23, 0x00, 0x00, 0xc8, 0x8c, 0x91, 0x98, 0xcc, 0x6d, 0x98, - 0x89, 0xff, 0xf3, 0x32, 0x3f, 0x00, 0x0c, 0xff, 0x00, 0x1c, 0x66, 0x69, - 0xcc, 0x96, 0x99, 0x99, 0x6c, 0xc9, 0xc6, 0x6c, 0x96, 0xa6, 0x9c, 0x8e, - 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1c, 0x23, 0x01, - 0xc8, 0xc9, 0x9c, 0x11, 0x8b, 0x86, 0xac, 0x88, 0xaf, 0x23, 0x37, 0x2f, - 0x0c, 0xff, 0x00, 0x1c, 0x66, 0x69, 0x89, 0x99, 0x69, 0x69, 0xcc, 0xc9, - 0xc6, 0xd6, 0x88, 0x9a, 0x9c, 0xcf, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, - 0x20, 0xff, 0x00, 0x1a, 0xac, 0xc8, 0xc9, 0x8c, 0x61, 0x18, 0x88, 0x8c, - 0xc8, 0x8e, 0x33, 0x23, 0x2f, 0x00, 0x0c, 0xff, 0x00, 0x1c, 0xa6, 0x68, - 0x9c, 0xc6, 0x69, 0x99, 0x6c, 0x9c, 0xca, 0x66, 0xd9, 0x86, 0xa9, 0xcf, - 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, 0xf7, 0x8a, - 0x6d, 0xe9, 0x89, 0xcc, 0x11, 0x69, 0x88, 0xcc, 0xcd, 0x32, 0x33, 0x00, - 0x0e, 0xff, 0x00, 0x1c, 0xa6, 0xc9, 0x69, 0xc9, 0xa9, 0x99, 0x9c, 0xcc, - 0x96, 0xad, 0x66, 0xcc, 0xa9, 0x9f, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x1e, 0xff, 0x00, 0x1a, 0xf6, 0x89, 0xcc, 0x66, 0x6d, 0x98, 0xc1, 0x19, - 0x19, 0xc8, 0x83, 0x23, 0x3f, 0x00, 0x0e, 0xff, 0x00, 0x1c, 0xa9, 0x96, - 0x99, 0x99, 0xa9, 0x99, 0xcc, 0x9c, 0xc6, 0xaa, 0x69, 0x6c, 0xca, 0x6f, - 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, 0xf9, 0xa8, - 0x89, 0xc8, 0x9a, 0xa9, 0x6c, 0x64, 0x41, 0x19, 0xa3, 0x30, 0x3f, 0x00, - 0x0e, 0xff, 0x00, 0x1c, 0x7a, 0xa6, 0x99, 0x9c, 0xa6, 0x66, 0xad, 0xc9, - 0x9a, 0x6a, 0xa9, 0x96, 0xc9, 0x6f, 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, - 0x1e, 0xff, 0x00, 0x1a, 0xf6, 0xc9, 0xac, 0x88, 0xc9, 0x88, 0xcc, 0xc6, - 0x44, 0x00, 0x32, 0x70, 0x2f, 0x00, 0x10, 0xff, 0x00, 0x1a, 0x7d, 0xa9, - 0x99, 0x66, 0x66, 0xae, 0x9c, 0xc9, 0x99, 0x9c, 0xc9, 0x99, 0xef, 0x00, - 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x20, 0xff, 0x00, 0x18, 0xa8, 0xca, - 0xc9, 0x9b, 0x8c, 0x8b, 0x86, 0x11, 0x40, 0x32, 0x30, 0x3f, 0x0c, 0xff, - 0x00, 0x1c, 0xf2, 0x32, 0xff, 0xff, 0xfe, 0x6a, 0x66, 0x6d, 0x9c, 0x99, - 0x99, 0x66, 0x66, 0xae, 0x58, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x20, 0xff, - 0x00, 0x18, 0xf9, 0xcc, 0x88, 0x99, 0xc8, 0x88, 0x86, 0x00, 0x03, 0x32, - 0x33, 0x02, 0x0c, 0xff, 0x00, 0x16, 0x23, 0x22, 0xff, 0xff, 0xff, 0xfd, - 0x6d, 0x6a, 0xcc, 0x99, 0xd7, 0x00, 0x5e, 0xff, 0x02, 0xfb, 0x00, 0x00, - 0x22, 0xff, 0x00, 0x18, 0xfa, 0xc8, 0xc8, 0x88, 0xc8, 0x8c, 0xa0, 0x33, - 0x37, 0x32, 0x30, 0x02, 0x0a, 0xff, 0x02, 0x33, 0x02, 0x22, 0x08, 0xff, - 0x00, 0x08, 0xad, 0xad, 0x69, 0x97, 0x60, 0xff, 0x02, 0xfb, 0x00, 0x00, - 0x24, 0xff, 0x00, 0x24, 0x9c, 0xd9, 0x8c, 0xcc, 0x6d, 0xf2, 0x33, 0x23, - 0x33, 0x50, 0x00, 0x02, 0xff, 0xff, 0xff, 0xf2, 0x00, 0x2f, 0x08, 0xff, - 0x00, 0x08, 0x7a, 0xda, 0x9c, 0x7f, 0x60, 0xff, 0x02, 0xfb, 0x00, 0x00, - 0x28, 0xff, 0x00, 0x20, 0xc9, 0x6a, 0xef, 0xf2, 0x32, 0x33, 0x00, 0x01, - 0x00, 0x00, 0x52, 0xff, 0xff, 0xf0, 0x00, 0x2f, 0x08, 0xff, 0x00, 0x06, - 0xfa, 0xad, 0xcd, 0x00, 0x62, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x2a, 0xff, - 0x00, 0x1c, 0xe7, 0xff, 0xf2, 0x32, 0x03, 0x33, 0x00, 0x01, 0x01, 0x00, - 0x52, 0xff, 0x20, 0x03, 0x0a, 0xff, 0x00, 0x06, 0xfd, 0xad, 0xcf, 0x00, - 0x62, 0xff, 0x02, 0xfa, 0x00, 0x00, 0x2e, 0xff, 0x00, 0x18, 0x23, 0x37, - 0x32, 0xff, 0xf3, 0x00, 0x00, 0x11, 0x00, 0x52, 0x00, 0x0f, 0x0a, 0xff, - 0x00, 0x06, 0xfd, 0x6d, 0xaf, 0x00, 0x62, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x2e, 0xff, 0x00, 0x18, 0x23, 0x33, 0x3f, 0xff, 0xff, 0x23, 0x00, 0x00, - 0x01, 0x00, 0x00, 0x2f, 0x0a, 0xff, 0x00, 0x06, 0xfe, 0xa0, 0x7f, 0x00, - 0x62, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2e, 0xff, 0x02, 0x37, 0x02, 0x33, - 0x08, 0xff, 0x00, 0x0c, 0x23, 0x00, 0x00, 0x10, 0x00, 0x02, 0x0a, 0xff, - 0x00, 0x06, 0xf2, 0xd2, 0x32, 0x00, 0x62, 0xff, 0x02, 0xfc, 0x00, 0x00, - 0x2c, 0xff, 0x00, 0x06, 0xf2, 0x33, 0x33, 0x00, 0x0a, 0xff, 0x00, 0x0c, - 0xf3, 0x00, 0x01, 0x01, 0x00, 0x02, 0x08, 0xff, 0x00, 0x06, 0xf2, 0x02, - 0x2f, 0x00, 0x62, 0xff, 0x02, 0xfa, 0x00, 0x00, 0x2c, 0xff, 0x00, 0x06, - 0xf2, 0x22, 0x3f, 0x00, 0x0c, 0xff, 0x00, 0x18, 0xf3, 0x00, 0x10, 0x01, - 0x00, 0x52, 0xff, 0xff, 0xff, 0xf3, 0x10, 0x2f, 0x62, 0xff, 0x02, 0xfc, - 0x00, 0x00, 0x2c, 0xff, 0x00, 0x06, 0xf3, 0x23, 0x2f, 0x00, 0x0c, 0xff, - 0x00, 0x16, 0xf2, 0x00, 0x00, 0x10, 0x10, 0x10, 0x03, 0xff, 0xff, 0x20, - 0x03, 0x00, 0x64, 0xff, 0x02, 0xf9, 0x00, 0x00, 0x2e, 0xff, 0x02, 0x32, - 0x0e, 0xff, 0x00, 0x16, 0x23, 0x13, 0x23, 0x01, 0x01, 0x01, 0x00, 0x03, - 0x2f, 0x30, 0x0f, 0x00, 0x64, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x3e, 0xff, - 0x00, 0x16, 0x20, 0x02, 0xff, 0x23, 0x00, 0x10, 0x10, 0x10, 0x03, 0x00, - 0x2f, 0x00, 0x0c, 0xff, 0x02, 0xf2, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, - 0x3e, 0xff, 0x00, 0x14, 0x00, 0x0f, 0xff, 0xff, 0x23, 0x00, 0x11, 0x10, - 0x00, 0x00, 0x0e, 0xff, 0x02, 0x23, 0x02, 0x2f, 0x54, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x3c, 0xff, 0x00, 0x1a, 0xf2, 0x00, 0x2f, 0xff, 0xff, 0xff, - 0x23, 0x00, 0x01, 0x10, 0x00, 0x53, 0x2f, 0x00, 0x08, 0xff, 0x00, 0x06, - 0xf2, 0x32, 0x3f, 0x00, 0x54, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x3c, 0xff, - 0x02, 0xf3, 0x02, 0x33, 0x0a, 0xff, 0x00, 0x1a, 0x23, 0x00, 0x11, 0x10, - 0x10, 0x03, 0x2f, 0xff, 0xff, 0xff, 0xf3, 0x00, 0x2f, 0x00, 0x54, 0xff, - 0x02, 0xfc, 0x00, 0x00, 0x3c, 0xff, 0x02, 0xf3, 0x02, 0x32, 0x0c, 0xff, - 0x00, 0x16, 0x23, 0x00, 0x11, 0x11, 0x00, 0x03, 0x2f, 0xff, 0xff, 0x20, - 0x13, 0x00, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x3c, 0xff, 0x02, 0xf2, - 0x02, 0x2f, 0x0c, 0xff, 0x00, 0x16, 0xf3, 0x00, 0x00, 0x10, 0x11, 0x10, - 0x53, 0x2f, 0xff, 0x30, 0x02, 0x00, 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, - 0x4c, 0xff, 0x00, 0x16, 0x20, 0x02, 0x23, 0x01, 0x01, 0x01, 0x11, 0x03, - 0x22, 0x01, 0x3f, 0x00, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x4a, 0xff, - 0x00, 0x16, 0xf2, 0x30, 0x0f, 0xff, 0x23, 0x00, 0x11, 0x01, 0x10, 0x05, - 0x00, 0x00, 0x58, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x4a, 0xff, 0x00, 0x18, - 0xf2, 0x01, 0x2f, 0xff, 0xff, 0x23, 0x00, 0x11, 0x01, 0x10, 0x15, 0x2f, - 0x0c, 0xff, 0x02, 0x32, 0x02, 0x2f, 0x46, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x4a, 0xff, 0x02, 0xf3, 0x02, 0x30, 0x08, 0xff, 0x00, 0x0e, 0x23, 0x00, - 0x11, 0x11, 0x00, 0x03, 0x22, 0x00, 0x08, 0xff, 0x00, 0x06, 0xf2, 0x23, - 0x2f, 0x00, 0x46, 0xff, 0x02, 0xf1, 0x00, 0x00, 0x4a, 0xff, 0x02, 0x23, - 0x02, 0x32, 0x0a, 0xff, 0x00, 0x1a, 0x23, 0x00, 0x11, 0x11, 0x41, 0x03, - 0x2f, 0xff, 0xff, 0xff, 0xf3, 0x33, 0x2f, 0x00, 0x46, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x4a, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x0c, 0xff, 0x00, 0x16, - 0x23, 0x00, 0x11, 0x11, 0x01, 0x03, 0x2f, 0xff, 0xff, 0x20, 0x13, 0x00, - 0x48, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x5a, 0xff, 0x00, 0x16, 0xf0, 0x05, - 0x00, 0x11, 0x14, 0x10, 0x00, 0x2f, 0xff, 0x31, 0x0f, 0x00, 0x48, 0xff, - 0x02, 0xfa, 0x00, 0x00, 0x5a, 0xff, 0x00, 0x16, 0x20, 0x12, 0xf3, 0x01, - 0x11, 0x11, 0x40, 0x03, 0x22, 0x01, 0x2f, 0x00, 0x48, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x58, 0xff, 0x00, 0x16, 0xf2, 0x01, 0x3f, 0xff, 0xf3, 0x01, - 0x01, 0x11, 0x41, 0x05, 0x00, 0x00, 0x4a, 0xff, 0x02, 0xf4, 0x00, 0x00, - 0x58, 0xff, 0x00, 0x18, 0xf3, 0x00, 0x2f, 0xff, 0xff, 0xf3, 0x01, 0x11, - 0x11, 0x11, 0x13, 0x2f, 0x0c, 0xff, 0x02, 0x22, 0x3a, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x58, 0xff, 0x02, 0x23, 0x02, 0x30, 0x08, 0xff, 0x00, 0x0e, - 0xf2, 0x30, 0x11, 0x14, 0x11, 0x03, 0x2f, 0x00, 0x08, 0xff, 0x02, 0xf3, - 0x02, 0x33, 0x3a, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x58, 0xff, 0x02, 0x23, - 0x02, 0x22, 0x0a, 0xff, 0x00, 0x18, 0xf2, 0x30, 0x11, 0x14, 0x11, 0x03, - 0x2f, 0xff, 0xff, 0xff, 0xf3, 0x33, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x58, 0xff, 0x02, 0xf2, 0x02, 0x3f, 0x0c, 0xff, 0x00, 0x16, 0xf3, 0x01, - 0x11, 0x11, 0x41, 0x03, 0x2f, 0xff, 0xff, 0x31, 0x02, 0x00, 0x3a, 0xff, - 0x02, 0xf1, 0x00, 0x00, 0x68, 0xff, 0x00, 0x16, 0xf0, 0x13, 0x00, 0x11, - 0x11, 0x11, 0x03, 0x2f, 0xff, 0x51, 0x3f, 0x00, 0x3a, 0xff, 0x02, 0xfc, - 0x00, 0x00, 0x68, 0xff, 0x00, 0x16, 0x31, 0x02, 0xf3, 0x00, 0x11, 0x41, - 0x41, 0x03, 0x22, 0x11, 0x2f, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x66, 0xff, 0x00, 0x16, 0xf2, 0x01, 0x3f, 0xff, 0xf3, 0x01, 0x11, 0x11, - 0x11, 0x10, 0x13, 0x00, 0x3c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x66, 0xff, - 0x00, 0x18, 0xf3, 0x10, 0x2f, 0xff, 0xff, 0xf2, 0x01, 0x11, 0x41, 0x41, - 0x10, 0x2f, 0x0a, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x2c, 0xff, 0x02, 0xf0, - 0x00, 0x00, 0x66, 0xff, 0x02, 0x23, 0x02, 0x00, 0x08, 0xff, 0x00, 0x0e, - 0xf2, 0x01, 0x11, 0x11, 0x14, 0x10, 0x3f, 0x00, 0x08, 0xff, 0x02, 0xf3, - 0x02, 0x33, 0x2c, 0xff, 0x02, 0xf4, 0x00, 0x00, 0x66, 0xff, 0x02, 0x33, - 0x02, 0x32, 0x0a, 0xff, 0x00, 0x18, 0xf3, 0x00, 0x14, 0x11, 0x11, 0x40, - 0x2f, 0xff, 0xff, 0xff, 0x25, 0x32, 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x66, 0xff, 0x02, 0x23, 0x02, 0x3f, 0x0c, 0xff, 0x00, 0x16, 0xf0, 0x11, - 0x11, 0x41, 0x11, 0x10, 0x2f, 0xff, 0xff, 0x01, 0x02, 0x00, 0x2c, 0xff, - 0x02, 0xf2, 0x00, 0x00, 0x66, 0xff, 0x02, 0xf2, 0x02, 0x2f, 0x0c, 0xff, - 0x00, 0x16, 0x21, 0x13, 0x01, 0x11, 0x14, 0x11, 0x10, 0x2f, 0xf2, 0x11, - 0x3f, 0x00, 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x76, 0xff, 0x00, 0x16, - 0x31, 0x0f, 0xf2, 0x01, 0x11, 0x14, 0x11, 0x15, 0x25, 0x10, 0x2f, 0x00, - 0x2c, 0xff, 0x02, 0xf1, 0x00, 0x00, 0x74, 0xff, 0x00, 0x16, 0xf2, 0x11, - 0x3f, 0xff, 0xf3, 0x00, 0x11, 0x14, 0x11, 0x11, 0x13, 0x00, 0x0e, 0xff, - 0x02, 0x2f, 0x1e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x18, - 0xf3, 0x10, 0xff, 0xff, 0xff, 0xf2, 0x00, 0x11, 0x14, 0x11, 0x10, 0x32, - 0x0a, 0xff, 0x02, 0xf3, 0x02, 0x33, 0x1e, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0x74, 0xff, 0x02, 0x23, 0x02, 0x32, 0x08, 0xff, 0x00, 0x0e, 0xf2, 0x30, - 0x11, 0x14, 0x11, 0x10, 0x32, 0x00, 0x08, 0xff, 0x02, 0xf3, 0x02, 0x33, - 0x1e, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x74, 0xff, 0x02, 0x23, 0x02, 0x3f, - 0x0a, 0xff, 0x00, 0x18, 0xf2, 0x31, 0x11, 0x41, 0x14, 0x10, 0x32, 0xff, - 0xff, 0xff, 0x30, 0x32, 0x1e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x84, 0xff, - 0x00, 0x16, 0x20, 0x11, 0x11, 0x41, 0x11, 0x10, 0x32, 0xff, 0xf2, 0x01, - 0x0f, 0x00, 0x1e, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x84, 0xff, 0x00, 0x16, - 0x51, 0x13, 0x31, 0x11, 0x14, 0x11, 0x11, 0x32, 0xf3, 0x11, 0x3f, 0x00, - 0x1e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x82, 0xff, 0x00, 0x18, 0xf2, 0x11, - 0x3f, 0xf2, 0x01, 0x11, 0x14, 0x11, 0x10, 0x50, 0x10, 0x2f, 0x1e, 0xff, - 0x02, 0xf7, 0x00, 0x00, 0x82, 0xff, 0x00, 0x16, 0xf0, 0x10, 0xff, 0xff, - 0xf2, 0x51, 0x11, 0x41, 0x11, 0x11, 0x12, 0x00, 0x0c, 0xff, 0x02, 0xf2, - 0x12, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x82, 0xff, 0x00, 0x18, 0x20, 0x13, - 0xff, 0xff, 0xff, 0xf2, 0x00, 0x11, 0x41, 0x41, 0x11, 0x2f, 0x0a, 0xff, - 0x02, 0xf3, 0x02, 0x32, 0x10, 0xff, 0x02, 0xf2, 0x00, 0x00, 0x82, 0xff, - 0x02, 0x33, 0x02, 0x32, 0x08, 0xff, 0x00, 0x0e, 0xf2, 0x01, 0x11, 0x11, - 0x41, 0x11, 0x3f, 0x00, 0x08, 0xff, 0x02, 0x23, 0x02, 0x33, 0x10, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x82, 0xff, 0x02, 0x33, 0x02, 0x3f, 0x0a, 0xff, - 0x00, 0x18, 0xf2, 0x51, 0x41, 0x14, 0x11, 0x11, 0x3f, 0xff, 0xff, 0xff, - 0x30, 0x02, 0x10, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x82, 0xff, 0x02, 0xf2, - 0x02, 0x2f, 0x0c, 0xff, 0x00, 0x16, 0x31, 0x11, 0x11, 0x41, 0x14, 0x11, - 0x32, 0xff, 0xf2, 0x01, 0x3f, 0x00, 0x10, 0xff, 0x02, 0xf4, 0x00, 0x00, - 0x92, 0xff, 0x00, 0x16, 0x01, 0x02, 0x31, 0x11, 0x41, 0x14, 0x11, 0x32, - 0xf3, 0x11, 0x2f, 0x00, 0x10, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x90, 0xff, - 0x00, 0x16, 0xf2, 0x11, 0x3f, 0xf2, 0x00, 0x11, 0x41, 0x11, 0x11, 0x50, - 0x13, 0x00, 0x12, 0xff, 0x02, 0xf7, 0x00, 0x00, 0x90, 0xff, 0x00, 0x16, - 0xf0, 0x10, 0xff, 0xff, 0xf2, 0x31, 0x11, 0x41, 0x41, 0x11, 0x12, 0x00, - 0x12, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x90, 0xff, 0x00, 0x18, 0x20, 0x13, - 0xff, 0xff, 0xff, 0xf2, 0x31, 0x11, 0x11, 0x41, 0x41, 0x3f, 0x10, 0xff, - 0x02, 0xf2, 0x00, 0x00, 0x90, 0xff, 0x02, 0x33, 0x02, 0x32, 0x08, 0xff, - 0x00, 0x0e, 0xf2, 0x31, 0x14, 0x11, 0x11, 0x11, 0x3f, 0x00, 0x0e, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x90, 0xff, 0x02, 0x33, 0x02, 0x2f, 0x0a, 0xff, - 0x00, 0x0e, 0xf2, 0x31, 0x11, 0x41, 0x41, 0x41, 0x32, 0x00, 0x0c, 0xff, - 0x02, 0xf2, 0x00, 0x00, 0x90, 0xff, 0x02, 0xf2, 0x0e, 0xff, 0x00, 0x0c, - 0x21, 0x00, 0x11, 0x11, 0x11, 0x13, 0x0c, 0xff, 0x02, 0xf0, 0x00, 0x00, - 0xa0, 0xff, 0x00, 0x0c, 0x01, 0x3f, 0x20, 0x11, 0x41, 0x12, 0x0c, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x9e, 0xff, 0x00, 0x0e, 0xf3, 0x11, 0xff, 0xff, - 0x30, 0x11, 0x3f, 0x00, 0x0c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x9e, 0xff, - 0x00, 0x0e, 0xf0, 0x13, 0xff, 0xff, 0xff, 0x33, 0x2f, 0x00, 0x0c, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x9e, 0xff, 0x02, 0x33, 0x02, 0x02, 0x16, 0xff, - 0x02, 0xf2, 0x00, 0x00, 0x9e, 0xff, 0x02, 0x32, 0x02, 0x3f, 0x16, 0xff, - 0x02, 0xf0, 0x00, 0x00, 0x9e, 0xff, 0x02, 0x23, 0x02, 0x3f, 0x16, 0xff, - 0x02, 0xfb, 0x00, 0x00, 0xb8, 0xff, 0x02, 0xf0, 0x00, 0x01, 0x00, 0x00 + 0x42, 0x4d, 0x28, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0x00, + 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xb9, 0x00, 0x00, 0x00, 0x1b, 0x01, + 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0xb2, 0x31, + 0x00, 0x00, 0x12, 0x0b, 0x00, 0x00, 0x12, 0x0b, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x1c, 0x80, 0x00, 0x26, 0x2f, + 0xaa, 0x00, 0x03, 0x04, 0x26, 0x00, 0x06, 0x09, 0x49, 0x00, 0x00, 0x00, + 0xc8, 0x00, 0x00, 0x00, 0x73, 0x00, 0x81, 0x81, 0x87, 0x00, 0x1d, 0x1d, + 0x1e, 0x00, 0xcb, 0xcb, 0xce, 0x00, 0x99, 0x99, 0x9b, 0x00, 0x6b, 0x6b, + 0x6c, 0x00, 0xfd, 0xfd, 0xfd, 0x00, 0xb0, 0xb0, 0xb0, 0x00, 0x52, 0x52, + 0x52, 0x00, 0x36, 0x36, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xff, + 0x00, 0x0c, 0xfe, 0xed, 0xaa, 0xaa, 0xdd, 0xe7, 0x38, 0xff, 0x00, 0x00, + 0x76, 0xff, 0x00, 0x0e, 0xda, 0x6c, 0x88, 0xc8, 0xcc, 0x9a, 0xef, 0x00, + 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xfd, 0xad, + 0xac, 0x88, 0x88, 0x8c, 0xc6, 0xde, 0x36, 0xff, 0x00, 0x00, 0x74, 0xff, + 0x00, 0x12, 0x7a, 0xd9, 0x98, 0x88, 0x88, 0x8c, 0xcc, 0x6a, 0xdf, 0x00, + 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x12, 0xda, 0xc8, + 0xac, 0x88, 0x8c, 0xcc, 0xc6, 0xc9, 0xaf, 0x00, 0x34, 0xff, 0x00, 0x00, + 0x74, 0xff, 0x00, 0x12, 0x69, 0x88, 0xcc, 0xcc, 0xc8, 0x8c, 0x88, 0xcc, + 0xcf, 0x00, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x12, + 0x9c, 0x98, 0xcc, 0x66, 0xc8, 0x89, 0xc8, 0xc9, 0xcf, 0x00, 0x34, 0xff, + 0x00, 0x00, 0x74, 0xff, 0x00, 0x12, 0x68, 0xa6, 0xc8, 0x9e, 0x88, 0x98, + 0x8c, 0x6c, 0x6f, 0x00, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, + 0x00, 0x12, 0xe8, 0x96, 0xc8, 0x89, 0xe8, 0xa9, 0x8a, 0xd9, 0xdf, 0x00, + 0x34, 0xff, 0x00, 0x00, 0x74, 0xff, 0x00, 0x12, 0x78, 0xca, 0x6c, 0xc8, + 0x69, 0x9c, 0xc9, 0xa8, 0x7f, 0x00, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x74, 0xff, 0x00, 0x10, 0xec, 0x88, 0xd6, 0x9a, 0xca, 0x9e, 0xea, 0xc9, + 0x36, 0xff, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xe9, 0xc8, 0x86, 0xd9, + 0xaf, 0xda, 0xa6, 0x8c, 0x34, 0xff, 0x02, 0xfe, 0x00, 0x00, 0x74, 0xff, + 0x00, 0x10, 0xfc, 0x88, 0x86, 0xcc, 0x6e, 0xcc, 0x66, 0x8c, 0x36, 0xff, + 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xf6, 0xcc, 0x88, 0x88, 0x8d, 0xc8, + 0xc8, 0x8a, 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, + 0xf6, 0xcc, 0xc8, 0xc8, 0x86, 0x88, 0xc8, 0x8d, 0x36, 0xff, 0x00, 0x00, + 0x74, 0xff, 0x00, 0x10, 0xf9, 0x88, 0x99, 0x88, 0x99, 0x88, 0xcc, 0x8f, + 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xac, 0x88, + 0x9c, 0xcc, 0xcc, 0xc9, 0xa6, 0x6f, 0x36, 0xff, 0x00, 0x00, 0x74, 0xff, + 0x00, 0x10, 0xec, 0x88, 0x89, 0xcc, 0x6a, 0x99, 0xcc, 0xdf, 0x34, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, 0xfc, 0x88, 0x8c, 0x89, + 0xad, 0x8c, 0x68, 0xef, 0x36, 0xff, 0x00, 0x00, 0x74, 0xff, 0x00, 0x10, + 0xfc, 0x88, 0x8c, 0x88, 0xaa, 0xc8, 0x68, 0xef, 0x34, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x72, 0xff, 0x00, 0x10, 0xfc, 0x88, 0x88, 0xcc, 0x88, 0xaa, + 0xc6, 0x68, 0x38, 0xff, 0x00, 0x00, 0x72, 0xff, 0x00, 0x10, 0xf6, 0xb8, + 0xc8, 0x9c, 0x88, 0xd6, 0x8c, 0x9c, 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x72, 0xff, 0x00, 0x10, 0xfd, 0x8c, 0xcc, 0x68, 0xc6, 0xdc, 0x88, 0x98, + 0x38, 0xff, 0x00, 0x00, 0x72, 0xff, 0x00, 0x12, 0xfd, 0x88, 0xcc, 0xa9, + 0x69, 0xdc, 0x8c, 0x9c, 0x7f, 0x00, 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x72, 0xff, 0x00, 0x10, 0xf6, 0x88, 0x8c, 0xda, 0x96, 0x69, 0x8c, 0x69, + 0x38, 0xff, 0x00, 0x00, 0x72, 0xff, 0x00, 0x10, 0xfc, 0x9c, 0x88, 0x99, + 0x9e, 0x76, 0x6a, 0xa9, 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2a, 0xff, + 0x00, 0x0a, 0xfe, 0xed, 0xed, 0xee, 0x7f, 0x00, 0x3e, 0xff, 0x00, 0x10, + 0xfc, 0xc9, 0x68, 0x88, 0xcc, 0xc8, 0x88, 0x8d, 0x38, 0xff, 0x00, 0x00, + 0x28, 0xff, 0x00, 0x0e, 0xf7, 0xa9, 0xc8, 0xcc, 0xcc, 0xc6, 0xef, 0x00, + 0x3c, 0xff, 0x00, 0x10, 0xdc, 0x9c, 0x99, 0x9c, 0x88, 0x8b, 0x8c, 0x6f, + 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x28, 0xff, 0x00, 0x10, 0xe6, 0x6a, + 0x6c, 0x98, 0x89, 0x88, 0xca, 0xa7, 0x3a, 0xff, 0x00, 0x10, 0x7c, 0x99, + 0x69, 0xcc, 0x6d, 0x9c, 0xc9, 0x7f, 0x38, 0xff, 0x00, 0x00, 0x26, 0xff, + 0x02, 0xfe, 0x02, 0x9c, 0x08, 0x88, 0x00, 0x08, 0xcc, 0x88, 0x8c, 0x67, + 0x38, 0xff, 0x00, 0x0e, 0xfc, 0xc9, 0x99, 0x9c, 0x8d, 0xc8, 0xc9, 0x00, + 0x38, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x28, 0xff, 0x00, 0x14, 0x99, 0x88, + 0x88, 0x88, 0x8c, 0x88, 0xc8, 0x8c, 0xc8, 0x67, 0x36, 0xff, 0x00, 0x0e, + 0x79, 0xc9, 0x9c, 0x69, 0x66, 0x8c, 0xce, 0x00, 0x3a, 0xff, 0x00, 0x00, + 0x28, 0xff, 0x00, 0x16, 0xf6, 0xc8, 0x88, 0x9c, 0x8c, 0x88, 0xcc, 0xcc, + 0x88, 0xc8, 0xa7, 0x00, 0x34, 0xff, 0x00, 0x0e, 0xa9, 0xc9, 0x9c, 0xd6, + 0xdc, 0xcc, 0xcf, 0x00, 0x38, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2a, 0xff, + 0x00, 0x16, 0x6c, 0xc8, 0xc9, 0xcc, 0xcc, 0x89, 0xc8, 0xcb, 0x98, 0xc9, + 0xef, 0x00, 0x32, 0xff, 0x00, 0x0e, 0x99, 0xc6, 0x99, 0xda, 0xd8, 0xcc, + 0xaf, 0x00, 0x3a, 0xff, 0x00, 0x00, 0x2a, 0xff, 0x00, 0x18, 0x76, 0x98, + 0x9c, 0x8c, 0x6c, 0x89, 0xc8, 0x88, 0xcc, 0xc8, 0x8a, 0xef, 0x2e, 0xff, + 0x00, 0x10, 0xfd, 0x9c, 0xcc, 0xc6, 0xad, 0x6c, 0x8c, 0x7f, 0x38, 0xff, + 0x02, 0xfe, 0x00, 0x00, 0x2a, 0xff, 0x00, 0x1a, 0xfe, 0xac, 0xcc, 0xcc, + 0x88, 0xcc, 0x88, 0xcb, 0x9c, 0xc8, 0x88, 0x89, 0xef, 0x00, 0x2c, 0xff, + 0x00, 0x0e, 0xf6, 0x99, 0x96, 0x9a, 0xd6, 0xc8, 0xcc, 0x00, 0x3c, 0xff, + 0x00, 0x00, 0x2c, 0xff, 0x00, 0x1a, 0xfa, 0x9c, 0xc8, 0xcc, 0x98, 0x88, + 0x88, 0x9c, 0x98, 0x88, 0x8c, 0x8c, 0xef, 0x00, 0x2a, 0xff, 0x00, 0x0e, + 0xfd, 0xcc, 0x69, 0x6e, 0xee, 0xcc, 0xc9, 0x00, 0x3a, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x2c, 0xff, 0x00, 0x1c, 0xfe, 0xc9, 0xc8, 0x86, 0x98, 0x8c, + 0x88, 0xcc, 0xcc, 0x88, 0x88, 0xcc, 0x8c, 0xdf, 0x28, 0xff, 0x00, 0x0e, + 0xf6, 0xc9, 0xcc, 0x9d, 0x6d, 0x8c, 0xca, 0x00, 0x3c, 0xff, 0x00, 0x00, + 0x2e, 0xff, 0x00, 0x1a, 0xe8, 0xcc, 0xc8, 0xc8, 0x88, 0x86, 0xa9, 0x8c, + 0xc8, 0x88, 0xc8, 0xc8, 0x8c, 0x00, 0x28, 0xff, 0x00, 0x0e, 0xf9, 0xcc, + 0x9c, 0x66, 0x9d, 0xcc, 0xca, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x2e, 0xff, 0x00, 0x1c, 0xfd, 0x66, 0x88, 0x88, 0xcc, 0x8a, 0xc9, 0xcc, + 0xc9, 0xcc, 0x88, 0xcc, 0xc8, 0xcf, 0x26, 0xff, 0x00, 0x0e, 0xdc, 0xc9, + 0x9c, 0x96, 0x6d, 0xcc, 0xca, 0x00, 0x3c, 0xff, 0x00, 0x00, 0x30, 0xff, + 0x00, 0x1a, 0xfa, 0x98, 0xc8, 0x6c, 0x9c, 0xcc, 0x88, 0x8c, 0x98, 0xcc, + 0x8c, 0x8c, 0x87, 0x00, 0x24, 0xff, 0x00, 0x10, 0xfe, 0x9c, 0x66, 0x96, + 0xda, 0x66, 0xcc, 0x9a, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x32, 0xff, + 0x00, 0x18, 0xa9, 0x68, 0xcd, 0xa6, 0xc8, 0xcc, 0x88, 0xcc, 0xcc, 0x88, + 0xc8, 0xce, 0x24, 0xff, 0x00, 0x10, 0xe6, 0xcc, 0x69, 0xd6, 0xda, 0xd6, + 0xc9, 0xca, 0x3c, 0xff, 0x00, 0x00, 0x32, 0xff, 0x00, 0x18, 0xfc, 0xc8, + 0xc9, 0x9a, 0xcc, 0xcc, 0xc8, 0xc9, 0xc8, 0x88, 0x8c, 0x8f, 0x24, 0xff, + 0x00, 0x10, 0x99, 0xc9, 0x69, 0x69, 0xa9, 0xd6, 0xcc, 0x9d, 0x3a, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x32, 0xff, 0x00, 0x18, 0xf6, 0x9d, 0x98, 0x89, + 0xc8, 0xc8, 0x6c, 0xc9, 0x88, 0x88, 0x8c, 0x9f, 0x24, 0xff, 0x00, 0x10, + 0x69, 0xc6, 0x66, 0x6a, 0xa6, 0x6c, 0x99, 0x9a, 0x3c, 0xff, 0x00, 0x00, + 0x34, 0xff, 0x00, 0x16, 0x69, 0x69, 0x88, 0xac, 0xc8, 0xc9, 0xc8, 0x8c, + 0xb8, 0x88, 0x6f, 0x00, 0x22, 0xff, 0x00, 0x12, 0xf7, 0xa9, 0x9a, 0x6a, + 0xa6, 0x69, 0xa9, 0xc9, 0x6d, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x34, 0xff, 0x00, 0x16, 0xf9, 0x69, 0xcc, 0x8d, 0xc8, 0xcc, 0x88, 0x98, + 0x88, 0x88, 0xaf, 0x00, 0x22, 0xff, 0x00, 0x12, 0xfa, 0x6c, 0x9a, 0xa6, + 0xaa, 0xa6, 0x69, 0x99, 0x6a, 0x00, 0x3c, 0xff, 0x00, 0x00, 0x36, 0xff, + 0x00, 0x14, 0x98, 0xa8, 0xcc, 0xd8, 0x88, 0x88, 0xc8, 0x8c, 0x88, 0x9f, + 0x22, 0xff, 0x00, 0x12, 0x7a, 0x99, 0x99, 0xa6, 0x6a, 0x6a, 0xd9, 0x99, + 0x6a, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x14, + 0xfc, 0xca, 0xcc, 0x99, 0xcc, 0x9c, 0xc8, 0x88, 0xcc, 0x6f, 0x22, 0xff, + 0x00, 0x12, 0xaa, 0x99, 0x69, 0x69, 0x66, 0x6a, 0xd9, 0x69, 0x6a, 0x00, + 0x3c, 0xff, 0x00, 0x00, 0x36, 0xff, 0x00, 0x14, 0xf7, 0xca, 0xc8, 0xca, + 0xad, 0x69, 0xc8, 0x88, 0x89, 0xaf, 0x22, 0xff, 0x00, 0x12, 0xca, 0x99, + 0x96, 0xa6, 0xaa, 0xad, 0xd9, 0x66, 0x6a, 0x00, 0x3a, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x38, 0xff, 0x00, 0x12, 0x9c, 0x99, 0xae, 0xda, 0xa9, 0xc8, + 0x88, 0x8c, 0xdf, 0x00, 0x20, 0xff, 0x00, 0x14, 0xfd, 0x9d, 0x96, 0x66, + 0x96, 0x6d, 0x6a, 0xa6, 0x66, 0x6a, 0x3c, 0xff, 0x00, 0x00, 0x38, 0xff, + 0x00, 0x10, 0xd9, 0x69, 0x96, 0xaa, 0xa6, 0xc8, 0x8c, 0x8c, 0x1e, 0xff, + 0x00, 0x18, 0xfe, 0xa6, 0xf6, 0x9a, 0x96, 0x9a, 0x66, 0xaa, 0xaa, 0x66, + 0x66, 0xaa, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, + 0xa8, 0xc9, 0x6a, 0xa6, 0xa6, 0xc8, 0x88, 0xca, 0x1e, 0xff, 0x00, 0x18, + 0xf7, 0xed, 0xd6, 0x9a, 0x66, 0x6a, 0x6a, 0x66, 0x6a, 0xaa, 0x6a, 0xad, + 0x3c, 0xff, 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, 0xec, 0x99, 0x9a, 0xa6, + 0xaa, 0x88, 0xc8, 0x97, 0x1e, 0xff, 0x00, 0x18, 0xfe, 0xda, 0x99, 0x9d, + 0xa6, 0x6a, 0x6a, 0xd6, 0xaa, 0x6a, 0xaa, 0xad, 0x3a, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, 0xf6, 0x9c, 0xcc, 0x66, 0x66, 0x88, + 0x9c, 0xcf, 0x1e, 0xff, 0x00, 0x18, 0xfe, 0xda, 0x96, 0x9a, 0x66, 0xaa, + 0xaa, 0xad, 0xdd, 0x6a, 0xaa, 0xae, 0x3c, 0xff, 0x00, 0x00, 0x38, 0xff, + 0x00, 0x10, 0xf6, 0xc8, 0xcc, 0x99, 0x99, 0x88, 0x8c, 0x9f, 0x1e, 0xff, + 0x02, 0xfd, 0x02, 0xda, 0x08, 0x66, 0x00, 0x0c, 0xae, 0xea, 0xae, 0xaa, + 0xaa, 0xa7, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, + 0xf9, 0xcc, 0xc9, 0x66, 0x69, 0x8c, 0xcc, 0xaf, 0x1e, 0xff, 0x00, 0x1c, + 0xfd, 0xda, 0x66, 0x66, 0x66, 0xad, 0xdd, 0xdd, 0xd7, 0xaa, 0xad, 0xa7, + 0xff, 0x77, 0x38, 0xff, 0x00, 0x00, 0x38, 0xff, 0x00, 0x10, 0xdc, 0xcc, + 0x99, 0x69, 0x69, 0x89, 0xcc, 0x7f, 0x1e, 0xff, 0x00, 0x1c, 0x7d, 0xda, + 0x66, 0x6a, 0xaa, 0xdd, 0xdd, 0xaa, 0x7d, 0xea, 0xda, 0xde, 0xff, 0xef, + 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, 0x00, 0x0e, 0x69, 0x99, + 0x96, 0x99, 0x96, 0x8c, 0xc9, 0x00, 0x20, 0xff, 0x00, 0x1c, 0xea, 0xd6, + 0xa6, 0x6a, 0xaa, 0xdd, 0xad, 0xdd, 0xed, 0xda, 0xdd, 0xdd, 0xe7, 0xef, + 0x38, 0xff, 0x00, 0x00, 0x36, 0xff, 0x00, 0x10, 0xfd, 0x66, 0x96, 0x66, + 0x99, 0x99, 0xcc, 0xcc, 0x20, 0xff, 0x00, 0x1c, 0xad, 0xd6, 0xaa, 0x6a, + 0xad, 0xaa, 0xdd, 0xde, 0xed, 0xdd, 0xdd, 0xdd, 0xe7, 0x7f, 0x36, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x10, 0xf6, 0xd9, 0x66, 0xa6, + 0x9c, 0xa8, 0xc6, 0xc9, 0x1e, 0xff, 0x00, 0x1c, 0xf7, 0xad, 0xaa, 0xde, + 0xaa, 0xaa, 0xad, 0xad, 0xee, 0xed, 0xdd, 0xdd, 0xde, 0xd7, 0x3a, 0xff, + 0x00, 0x00, 0x36, 0xff, 0x00, 0x10, 0xda, 0xa9, 0x66, 0x66, 0xc6, 0x68, + 0x96, 0x96, 0x1e, 0xff, 0x00, 0x1c, 0xfe, 0xad, 0xdd, 0xdd, 0xda, 0xaa, + 0xdd, 0xee, 0xed, 0xee, 0xde, 0xdd, 0xdd, 0xe7, 0x38, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x36, 0xff, 0x00, 0x10, 0xd6, 0x66, 0x96, 0x99, 0x9a, 0xc8, + 0x69, 0x9d, 0x1e, 0xff, 0x00, 0x1c, 0x7a, 0xad, 0xda, 0xde, 0xda, 0xaa, + 0xde, 0xee, 0xee, 0xee, 0xde, 0xdd, 0xde, 0x7f, 0x3a, 0xff, 0x00, 0x00, + 0x34, 0xff, 0x00, 0x12, 0xfa, 0x6a, 0x69, 0x99, 0xc9, 0xac, 0x89, 0x66, + 0x9d, 0x00, 0x1e, 0xff, 0x00, 0x1c, 0xda, 0xad, 0xad, 0xde, 0xda, 0xd7, + 0xee, 0xee, 0xee, 0x7e, 0xee, 0xee, 0xed, 0x7f, 0x38, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x32, 0xff, 0x00, 0x14, 0xfe, 0xd6, 0x66, 0xa9, 0x99, 0x99, + 0xcc, 0x96, 0xaa, 0x9e, 0x1c, 0xff, 0x00, 0x20, 0xfe, 0xed, 0xdd, 0xdd, + 0xde, 0xed, 0xde, 0xee, 0xee, 0xee, 0x7e, 0x7e, 0xee, 0xee, 0x77, 0x7f, + 0x38, 0xff, 0x00, 0x00, 0x2e, 0xff, 0x00, 0x18, 0xf7, 0xdd, 0xaa, 0x66, + 0x6a, 0xaa, 0x69, 0x9c, 0xc9, 0x9a, 0xaa, 0x9d, 0x1c, 0xff, 0x00, 0x20, + 0xda, 0xdd, 0xdd, 0xdd, 0xde, 0xed, 0xde, 0xe7, 0xe7, 0xe7, 0xee, 0xe7, + 0xee, 0xee, 0xee, 0x7f, 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2e, 0xff, + 0x00, 0x18, 0xed, 0xa6, 0xaa, 0xaa, 0x66, 0xaa, 0xaa, 0x99, 0x6a, 0x66, + 0xaa, 0x6a, 0x1c, 0xff, 0x00, 0x20, 0xdd, 0xed, 0xdd, 0xed, 0xde, 0xed, + 0xee, 0xee, 0x77, 0xee, 0xee, 0xe7, 0x7e, 0xee, 0xe7, 0x7f, 0x38, 0xff, + 0x00, 0x00, 0x2c, 0xff, 0x00, 0x1a, 0xf7, 0xdd, 0xaa, 0xdd, 0xde, 0xd6, + 0xad, 0xaa, 0xaa, 0xad, 0x69, 0x6a, 0x6a, 0x00, 0x1c, 0xff, 0x00, 0x20, + 0xdd, 0xdd, 0xde, 0xed, 0xee, 0xed, 0xee, 0x77, 0x7e, 0xee, 0xe7, 0xe7, + 0xee, 0xee, 0xe7, 0x7f, 0x36, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2c, 0xff, + 0x00, 0x1a, 0xdd, 0xad, 0xdd, 0xad, 0xdd, 0xda, 0xaa, 0xaa, 0x66, 0x66, + 0x66, 0xaa, 0x9a, 0x00, 0x1c, 0xff, 0x00, 0x20, 0xdd, 0xde, 0xee, 0xee, + 0xde, 0x7e, 0xe7, 0x7e, 0xee, 0xe7, 0x77, 0xee, 0xe7, 0xe7, 0xe7, 0x77, + 0x38, 0xff, 0x00, 0x00, 0x28, 0xff, 0x00, 0x20, 0xf7, 0xed, 0xda, 0xaa, + 0xdd, 0xda, 0xda, 0xad, 0xaa, 0xaa, 0xaa, 0xa6, 0x6a, 0xaa, 0x6a, 0x7f, + 0x1a, 0xff, 0x00, 0x20, 0xee, 0xdd, 0xed, 0xed, 0xe7, 0xee, 0xde, 0xee, + 0xee, 0x77, 0x77, 0x7e, 0x7e, 0xee, 0xe7, 0x77, 0x36, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x28, 0xff, 0x02, 0x7e, 0x02, 0xee, 0x08, 0xdd, 0x02, 0xad, + 0x08, 0xda, 0x00, 0x0a, 0xaa, 0xaa, 0xaa, 0x6a, 0x7f, 0x00, 0x1a, 0xff, + 0x00, 0x20, 0xed, 0xde, 0xed, 0xee, 0xee, 0x7e, 0xe7, 0x77, 0xff, 0x77, + 0x77, 0x77, 0xe7, 0xee, 0x77, 0x77, 0x38, 0xff, 0x00, 0x00, 0x00, 0x18, + 0xf5, 0x35, 0x55, 0x25, 0x55, 0x5f, 0x55, 0x55, 0x50, 0x55, 0x35, 0xf2, + 0x08, 0x55, 0x02, 0x5f, 0x02, 0xf3, 0x08, 0x55, 0x00, 0x14, 0x53, 0x55, + 0x53, 0x5d, 0x05, 0x55, 0x33, 0x55, 0x55, 0x05, 0x0c, 0x55, 0x02, 0x35, + 0x0a, 0xff, 0x00, 0x18, 0x35, 0x55, 0x35, 0xff, 0xff, 0x75, 0x55, 0x35, + 0x35, 0x55, 0x53, 0x73, 0x0a, 0x55, 0x00, 0x24, 0x35, 0x55, 0x35, 0x55, + 0x55, 0x3f, 0x55, 0x55, 0x53, 0x53, 0x55, 0x55, 0x55, 0x2f, 0x55, 0x53, + 0x5f, 0x35, 0x08, 0x55, 0x00, 0x08, 0xff, 0x55, 0x55, 0x53, 0x08, 0x55, + 0x02, 0x53, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x40, 0xf5, 0xbb, 0xb8, 0x55, + 0x8b, 0x65, 0xdb, 0xbb, 0x61, 0xbb, 0xb1, 0x35, 0x9b, 0xbb, 0xbb, 0xbb, + 0x65, 0x50, 0x8b, 0xbb, 0xbb, 0xb8, 0x65, 0x8b, 0xbb, 0x5d, 0x38, 0xbb, + 0xb1, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x00, 0x06, 0x68, 0xbb, 0xb5, 0x00, + 0x0a, 0xff, 0x00, 0x56, 0x58, 0xbb, 0xb5, 0xff, 0xff, 0x56, 0xbb, 0xb1, + 0x5b, 0xbb, 0x85, 0x75, 0x8b, 0xbb, 0x58, 0xbb, 0xb5, 0x3c, 0xbc, 0x53, + 0xbb, 0xb8, 0x52, 0x1b, 0xbb, 0xbb, 0x15, 0xbb, 0xbb, 0xb8, 0x53, 0x6b, + 0xbb, 0x13, 0x58, 0xbb, 0x89, 0xbb, 0xba, 0x35, 0xab, 0xbb, 0x61, 0x00, + 0x08, 0xbb, 0x02, 0xb5, 0x02, 0xff, 0x00, 0x00, 0x00, 0x18, 0xf5, 0xbb, + 0xb8, 0x56, 0xbb, 0xb0, 0x1b, 0xbb, 0x66, 0xbb, 0xbd, 0x58, 0x08, 0xbb, + 0x02, 0xb6, 0x02, 0x5b, 0x08, 0xbb, 0x00, 0x14, 0xb1, 0x8b, 0xbb, 0x5e, + 0x58, 0xbb, 0xb1, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x00, 0x06, 0x68, 0xbb, + 0xb5, 0x00, 0x0a, 0xff, 0x00, 0x56, 0x58, 0xbb, 0xb5, 0xff, 0xff, 0x56, + 0xbb, 0xba, 0x3b, 0xbb, 0x85, 0x56, 0xbb, 0xb6, 0x58, 0xbb, 0xb3, 0x1b, + 0xbb, 0x15, 0xbb, 0xb8, 0x55, 0x9b, 0xbb, 0xbb, 0x91, 0xbb, 0xbb, 0xbb, + 0x52, 0x0b, 0xbb, 0x9a, 0x1b, 0xbb, 0x96, 0xbb, 0xb1, 0x25, 0xbb, 0xb8, + 0x01, 0x00, 0x08, 0xbb, 0x02, 0xb3, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x4e, + 0xf5, 0xbb, 0xb8, 0x5b, 0xbb, 0xb9, 0x1b, 0xbb, 0x99, 0xbb, 0xb1, 0x5b, + 0xbb, 0xb6, 0x16, 0xbb, 0xb8, 0xab, 0xbb, 0x8a, 0x19, 0xbb, 0xb6, 0x8b, + 0xbb, 0x3e, 0x58, 0xbb, 0xba, 0xbb, 0xb6, 0x58, 0xbb, 0xb1, 0xd1, 0xa1, + 0x08, 0xbb, 0xb3, 0x00, 0x0a, 0xff, 0x00, 0x40, 0x58, 0xbb, 0xb3, 0xff, + 0xff, 0x56, 0xbb, 0xb1, 0x5b, 0xbb, 0x85, 0x0b, 0xbb, 0x85, 0x58, 0xbb, + 0xb5, 0x8b, 0xbb, 0x85, 0xbb, 0xbc, 0x55, 0x8b, 0xbb, 0xbb, 0x86, 0xbb, + 0xbb, 0xbb, 0x12, 0x5b, 0x08, 0xbb, 0x00, 0x1a, 0x66, 0xbb, 0xb1, 0x59, + 0xbb, 0xba, 0x3a, 0xbb, 0xbc, 0x1d, 0x1a, 0x15, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x98, 0xf3, 0xbb, 0xb8, 0x9b, 0xbb, 0xbb, 0x6b, 0xbb, 0x61, 0xbb, + 0xba, 0x56, 0x69, 0x65, 0x16, 0xbb, 0xb8, 0x1b, 0xbb, 0x65, 0x3a, 0xbb, + 0xb6, 0x8b, 0xbb, 0x55, 0x58, 0xbb, 0xb1, 0xbb, 0xb6, 0x58, 0xbb, 0xb5, + 0x55, 0x53, 0x58, 0xbb, 0xb5, 0x55, 0x55, 0x5f, 0xff, 0xff, 0x58, 0xbb, + 0xb5, 0x55, 0x53, 0x56, 0xbb, 0xb1, 0x3b, 0xbb, 0xbc, 0x8b, 0xbb, 0xc5, + 0x5c, 0xbb, 0xb6, 0xbb, 0xbb, 0xb6, 0xbb, 0xb8, 0x53, 0xbb, 0xb8, 0xbb, + 0xbb, 0xbb, 0x8b, 0xbb, 0x65, 0x5c, 0x08, 0xbb, 0x00, 0x1a, 0x16, 0xbb, + 0xb8, 0x8b, 0xbb, 0xb0, 0x51, 0xbb, 0xb6, 0x55, 0x55, 0x5f, 0xf0, 0x00, + 0x00, 0x00, 0x02, 0xf5, 0x0e, 0xbb, 0x00, 0x20, 0x69, 0xbb, 0xb1, 0x35, + 0x6c, 0x8b, 0xbb, 0xbb, 0xb6, 0x1b, 0xbb, 0x65, 0xe0, 0x1a, 0x10, 0x8b, + 0x08, 0xbb, 0x00, 0x08, 0xba, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x02, 0x5c, + 0x08, 0xbb, 0x00, 0x08, 0x3f, 0xff, 0xff, 0x5c, 0x08, 0xbb, 0x00, 0x08, + 0x56, 0xbb, 0xba, 0x5b, 0x08, 0xbb, 0x02, 0xb9, 0x02, 0x58, 0x0c, 0xbb, + 0x00, 0x20, 0xb8, 0x51, 0xbb, 0xb6, 0xbb, 0xbb, 0xbb, 0x6b, 0xbb, 0xc5, + 0x56, 0xbb, 0xb6, 0x8b, 0xbb, 0x56, 0x0a, 0xbb, 0x02, 0x0a, 0x08, 0xbb, + 0x02, 0x65, 0x02, 0xff, 0x00, 0x00, 0x00, 0x30, 0xf5, 0xbb, 0xbb, 0xbb, + 0x86, 0xbb, 0xbb, 0xbb, 0x66, 0xbb, 0xbd, 0x58, 0xbb, 0xbb, 0xbb, 0x8c, + 0x65, 0x1b, 0xbb, 0x65, 0x75, 0x35, 0x55, 0x8b, 0x08, 0xbb, 0x00, 0x08, + 0xb1, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x02, 0x58, 0x08, 0xbb, 0x00, 0x08, + 0x5f, 0xff, 0xff, 0x58, 0x08, 0xbb, 0x00, 0x4c, 0x56, 0xbb, 0xb1, 0x3b, + 0xbb, 0xb8, 0x88, 0x8b, 0xb8, 0x58, 0xbb, 0xbb, 0xbb, 0x1b, 0xbb, 0xbb, + 0xb8, 0x56, 0xbb, 0xb0, 0x8b, 0xbb, 0xbb, 0x08, 0xbb, 0xb3, 0x20, 0xbb, + 0xb6, 0xbb, 0xbc, 0x56, 0xbb, 0xb8, 0x88, 0x8b, 0xbb, 0xd1, 0x08, 0xbb, + 0x02, 0x63, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xba, 0xf5, 0xbb, 0xbb, 0xbb, + 0x65, 0x8b, 0xbb, 0xbb, 0x66, 0xbb, 0xb1, 0x5b, 0xbb, 0x81, 0x10, 0x66, + 0x6a, 0x1b, 0xbb, 0x65, 0x51, 0xbb, 0xb6, 0x8b, 0xbb, 0x1a, 0x18, 0xbb, + 0xb1, 0xbb, 0xb6, 0x58, 0xbb, 0xb1, 0x11, 0x11, 0x58, 0xbb, 0xb1, 0x11, + 0x11, 0x5f, 0xff, 0xff, 0x58, 0xbb, 0xb1, 0x11, 0x11, 0x56, 0xbb, 0xb1, + 0x5b, 0xbb, 0xc5, 0x55, 0x1b, 0xb8, 0x58, 0xbb, 0xbb, 0xbc, 0x59, 0xbb, + 0xbb, 0xb8, 0x58, 0xbb, 0xb5, 0x6b, 0xbb, 0xbb, 0x59, 0xbb, 0xb1, 0x25, + 0xbb, 0xb8, 0xbb, 0xb6, 0x56, 0xbb, 0xb1, 0x55, 0x58, 0xbb, 0x1a, 0xbb, + 0xbc, 0x11, 0x11, 0x02, 0xff, 0x00, 0x00, 0x00, 0x00, 0xba, 0xf5, 0xbb, + 0xbb, 0xb8, 0x53, 0x1b, 0xbb, 0xbb, 0x69, 0xbb, 0xba, 0x5b, 0xbb, 0xb6, + 0x6c, 0xbb, 0xb6, 0x0b, 0xbb, 0x86, 0x6c, 0xbb, 0xb6, 0x8b, 0xbb, 0x33, + 0x5c, 0xbb, 0xba, 0xbb, 0xb6, 0x58, 0xbb, 0xb6, 0x66, 0x66, 0x18, 0xbb, + 0xb6, 0x66, 0x66, 0x12, 0xff, 0xff, 0x58, 0xbb, 0xb6, 0x66, 0x66, 0x16, + 0xbb, 0xba, 0x5b, 0xbb, 0xb8, 0xc8, 0x8b, 0xb8, 0x58, 0xbb, 0xbb, 0xb5, + 0x25, 0xbb, 0xbb, 0xbc, 0x5b, 0xbb, 0x85, 0x1b, 0xbb, 0xbc, 0x5a, 0xbb, + 0xb6, 0x55, 0x8b, 0xbb, 0xbb, 0xb0, 0x56, 0xbb, 0xb8, 0x88, 0x8b, 0xbb, + 0x11, 0xbb, 0xb8, 0x66, 0x66, 0x65, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x18, + 0xf5, 0xbb, 0xbb, 0xb1, 0x2f, 0x5c, 0xbb, 0xbb, 0x61, 0xbb, 0xb1, 0x36, + 0x08, 0xbb, 0x02, 0x85, 0x02, 0x58, 0x08, 0xbb, 0x00, 0x14, 0xb5, 0x8b, + 0xbb, 0x57, 0x58, 0xbb, 0xb1, 0xbb, 0xb6, 0x58, 0x08, 0xbb, 0x02, 0x68, + 0x08, 0xbb, 0x00, 0x08, 0x65, 0xff, 0xff, 0x58, 0x08, 0xbb, 0x00, 0x08, + 0x96, 0xbb, 0xb1, 0x3b, 0x08, 0xbb, 0x00, 0x30, 0xb9, 0x58, 0xbb, 0xbb, + 0x65, 0x75, 0x6b, 0xbb, 0xb8, 0x1b, 0xbb, 0x65, 0x3b, 0xbb, 0xb6, 0x50, + 0xbb, 0xbc, 0x53, 0x6b, 0xbb, 0xbb, 0xb5, 0x36, 0x0a, 0xbb, 0x02, 0x0a, + 0x08, 0xbb, 0x02, 0xb5, 0x02, 0xff, 0x00, 0x00, 0x00, 0xba, 0xf5, 0x8c, + 0x88, 0x65, 0xff, 0x20, 0xc8, 0xc8, 0x66, 0xc8, 0x80, 0x23, 0x1c, 0xc8, + 0x8c, 0x86, 0x03, 0x35, 0x6c, 0x8c, 0x88, 0x89, 0x05, 0x98, 0x88, 0x57, + 0x59, 0x88, 0x80, 0x88, 0x86, 0x59, 0x88, 0x8c, 0x88, 0xc8, 0x69, 0xc8, + 0x8c, 0x88, 0xc8, 0x63, 0xff, 0xff, 0x56, 0x88, 0xc8, 0x8c, 0x88, 0x16, + 0x88, 0x80, 0x58, 0x8c, 0x88, 0x88, 0x88, 0x60, 0x59, 0x88, 0x8c, 0x57, + 0x7e, 0x5c, 0x88, 0x89, 0x68, 0x88, 0x03, 0x59, 0x88, 0x80, 0x25, 0x98, + 0x89, 0x52, 0x1c, 0x88, 0xc8, 0x95, 0x36, 0x88, 0xc8, 0x8c, 0x88, 0xc1, + 0x50, 0x8c, 0x88, 0xc8, 0x8c, 0x85, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x40, + 0xf3, 0x55, 0x55, 0x5f, 0xff, 0xf3, 0x55, 0x55, 0x33, 0x55, 0x53, 0xff, + 0x35, 0x55, 0x55, 0x55, 0xff, 0xff, 0x35, 0x55, 0x53, 0x55, 0x7e, 0x55, + 0x55, 0x3f, 0x25, 0x53, 0x53, 0x55, 0x53, 0x73, 0x08, 0x55, 0x02, 0x35, + 0x08, 0x55, 0x00, 0x08, 0x3f, 0xff, 0xff, 0x25, 0x08, 0x55, 0x00, 0x40, + 0x33, 0x53, 0x53, 0x33, 0x55, 0x55, 0x53, 0x55, 0x57, 0x23, 0x55, 0x55, + 0x37, 0x77, 0x25, 0x55, 0x35, 0x35, 0x35, 0x3e, 0x75, 0x53, 0x53, 0xf2, + 0x55, 0x55, 0x2f, 0x35, 0x55, 0x55, 0x52, 0xf3, 0x08, 0x55, 0x02, 0x52, + 0x02, 0xf3, 0x08, 0x55, 0x02, 0x53, 0x02, 0xff, 0x00, 0x00, 0x26, 0xff, + 0x00, 0x1c, 0xf7, 0xf7, 0x77, 0x77, 0xff, 0xff, 0xf7, 0x77, 0xee, 0xee, + 0xe7, 0x77, 0x77, 0x7f, 0x1e, 0xff, 0x00, 0x30, 0xf7, 0x77, 0x77, 0x77, + 0xee, 0x7e, 0x77, 0x77, 0x7f, 0xff, 0x7e, 0x7f, 0xf7, 0x77, 0x77, 0x77, + 0xf7, 0x77, 0x77, 0x7f, 0x77, 0x77, 0x7e, 0xef, 0x28, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x34, 0xff, 0x00, 0x08, 0x7e, 0xee, 0xee, 0x77, 0x2a, 0xff, + 0x00, 0x10, 0xf7, 0x77, 0x7e, 0x7e, 0x77, 0x77, 0xf7, 0x7f, 0x18, 0xff, + 0x02, 0x7f, 0x2a, 0xff, 0x00, 0x00, 0x02, 0xff, 0x0a, 0x55, 0x02, 0x52, + 0x0a, 0xff, 0x02, 0x25, 0x0a, 0x55, 0x02, 0xff, 0x02, 0xf3, 0x0a, 0x55, + 0x00, 0x0c, 0x3f, 0x77, 0xe7, 0xee, 0x7f, 0x35, 0x0a, 0x55, 0x0a, 0xff, + 0x02, 0x25, 0x12, 0x55, 0x02, 0x2f, 0x0a, 0x77, 0x00, 0x08, 0x7f, 0xff, + 0x22, 0x35, 0x10, 0x55, 0x02, 0x53, 0x02, 0x22, 0x0c, 0xff, 0x02, 0xf2, + 0x02, 0x23, 0x12, 0x55, 0x00, 0x0a, 0x32, 0x2f, 0xff, 0xff, 0xf0, 0x00, + 0x00, 0x00, 0x02, 0xff, 0x0a, 0x55, 0x02, 0x53, 0x0a, 0xff, 0x02, 0x35, + 0x0a, 0x55, 0x02, 0xff, 0x02, 0xf5, 0x0a, 0x55, 0x00, 0x0c, 0x5f, 0x77, + 0xee, 0x77, 0xff, 0x35, 0x0a, 0x55, 0x0a, 0xff, 0x02, 0x35, 0x12, 0x55, + 0x02, 0x3f, 0x0a, 0x77, 0x02, 0x7f, 0x02, 0xf3, 0x18, 0x55, 0x02, 0x3f, + 0x0a, 0xff, 0x02, 0x35, 0x16, 0x55, 0x00, 0x08, 0x53, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x02, 0xff, 0x0a, 0x55, 0x02, 0x53, 0x0a, 0xff, 0x02, 0x35, + 0x0a, 0x55, 0x02, 0xff, 0x02, 0xf3, 0x0a, 0x55, 0x00, 0x0a, 0x5f, 0x27, + 0x77, 0x77, 0x7f, 0x00, 0x0c, 0x55, 0x0a, 0xff, 0x14, 0x55, 0x00, 0x0e, + 0x5f, 0x77, 0x77, 0x77, 0xe7, 0x7f, 0xf2, 0x00, 0x1c, 0x55, 0x00, 0x0a, + 0x2f, 0xff, 0xff, 0xff, 0x25, 0x00, 0x1a, 0x55, 0x00, 0x06, 0x52, 0xff, + 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, + 0x53, 0x00, 0x0a, 0xff, 0x00, 0x10, 0x35, 0x54, 0x44, 0x44, 0x45, 0x54, + 0xff, 0xf2, 0x08, 0x44, 0x00, 0x18, 0x55, 0x52, 0xf7, 0xf7, 0x77, 0xff, + 0x55, 0x54, 0x44, 0x44, 0x45, 0x42, 0x08, 0xff, 0x00, 0x06, 0xf2, 0x55, + 0x54, 0x00, 0x0e, 0x44, 0x00, 0x16, 0x55, 0x5f, 0xf7, 0x77, 0x77, 0xe7, + 0x7f, 0x25, 0x55, 0x55, 0x54, 0x00, 0x10, 0x44, 0x00, 0x14, 0x45, 0x55, + 0x55, 0x52, 0xff, 0xff, 0xf2, 0x55, 0x55, 0x55, 0x12, 0x44, 0x00, 0x0a, + 0x55, 0x55, 0x55, 0x2f, 0xff, 0x00, 0x00, 0x00, 0x02, 0xff, 0x02, 0x55, + 0x08, 0x44, 0x02, 0x53, 0x0a, 0xff, 0x00, 0x26, 0x24, 0x54, 0x44, 0x44, + 0x44, 0x55, 0xff, 0xff, 0x45, 0x44, 0x44, 0x44, 0x45, 0x52, 0xff, 0xff, + 0xff, 0xf2, 0x55, 0x00, 0x08, 0x44, 0x02, 0x42, 0x08, 0xff, 0x00, 0x06, + 0xf2, 0x55, 0x54, 0x00, 0x0e, 0x44, 0x00, 0x12, 0x55, 0x52, 0xf7, 0x77, + 0x77, 0x77, 0xff, 0x55, 0x53, 0x00, 0x16, 0x44, 0x00, 0x10, 0x45, 0x55, + 0x55, 0xff, 0xff, 0xf5, 0x55, 0x34, 0x16, 0x44, 0x00, 0x08, 0x55, 0x55, + 0x5f, 0xf0, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x45, 0x54, 0x44, 0x44, 0x45, + 0x53, 0x00, 0x0a, 0xff, 0x00, 0x30, 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, + 0xff, 0xff, 0x54, 0x44, 0x44, 0x44, 0x55, 0x53, 0x22, 0x22, 0x22, 0x23, + 0x55, 0x54, 0x44, 0x44, 0x44, 0x5f, 0x08, 0xff, 0x02, 0xf3, 0x02, 0x55, + 0x10, 0x44, 0x00, 0x12, 0x55, 0x53, 0xff, 0xf7, 0x77, 0x7f, 0xf2, 0x55, + 0x54, 0x00, 0x18, 0x44, 0x00, 0x0c, 0x45, 0x55, 0x2f, 0xff, 0x25, 0x55, + 0x1a, 0x44, 0x00, 0x06, 0x55, 0x52, 0xff, 0x00, 0x00, 0x00, 0x00, 0x0e, + 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x42, 0x00, 0x0a, 0xff, 0x00, 0x1a, + 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, 0xff, 0xff, 0x34, 0x44, 0x44, 0x44, + 0x45, 0x00, 0x0c, 0x55, 0x00, 0x16, 0x44, 0x44, 0x44, 0x45, 0x5f, 0x77, + 0xff, 0xff, 0xff, 0xf5, 0x55, 0x00, 0x10, 0x44, 0x00, 0x12, 0x45, 0x53, + 0xff, 0x77, 0x77, 0xf7, 0xf3, 0x55, 0x54, 0x00, 0x18, 0x44, 0x00, 0x0c, + 0x45, 0x55, 0x5f, 0xff, 0x35, 0x55, 0x1a, 0x44, 0x00, 0x06, 0x55, 0x55, + 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, + 0x53, 0x00, 0x0a, 0xff, 0x00, 0x1a, 0x35, 0x44, 0x44, 0x44, 0x45, 0x54, + 0xff, 0xff, 0x24, 0x54, 0x44, 0x44, 0x45, 0x00, 0x0c, 0x55, 0x08, 0x44, + 0x00, 0x0e, 0x3f, 0x77, 0x7f, 0xff, 0xff, 0x25, 0x55, 0x00, 0x10, 0x44, + 0x00, 0x10, 0x45, 0x55, 0xf7, 0xe7, 0xff, 0x77, 0xf5, 0x55, 0x0a, 0x44, + 0x00, 0x08, 0x55, 0x35, 0x53, 0x55, 0x0a, 0x44, 0x00, 0x0a, 0x55, 0x5f, + 0xff, 0x55, 0x54, 0x00, 0x08, 0x44, 0x00, 0x0a, 0x45, 0x35, 0x53, 0x55, + 0x34, 0x00, 0x08, 0x44, 0x00, 0x06, 0x45, 0x55, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x53, 0x00, 0x0a, 0xff, + 0x00, 0x12, 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, 0xff, 0xff, 0xf4, 0x00, + 0x08, 0x44, 0x02, 0x45, 0x08, 0x55, 0x08, 0x44, 0x00, 0x10, 0x54, 0x2f, + 0x77, 0x77, 0xff, 0xff, 0x25, 0x55, 0x12, 0x44, 0x00, 0x0e, 0x55, 0x2f, + 0x77, 0x77, 0xe7, 0xf5, 0x54, 0x00, 0x08, 0x44, 0x02, 0x42, 0x08, 0xff, + 0x02, 0x24, 0x08, 0x44, 0x00, 0x08, 0x45, 0x5f, 0xff, 0x55, 0x0a, 0x44, + 0x00, 0x0a, 0x2f, 0xff, 0xff, 0xff, 0xf2, 0x00, 0x0a, 0x44, 0x02, 0x55, + 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x45, 0x54, 0x44, 0x44, 0x44, + 0x53, 0x00, 0x0a, 0xff, 0x00, 0x12, 0x34, 0x54, 0x44, 0x44, 0x44, 0x55, + 0xff, 0xff, 0xf5, 0x00, 0x1c, 0x44, 0x00, 0x0e, 0xf7, 0x77, 0x77, 0xff, + 0xff, 0x35, 0x54, 0x00, 0x10, 0x44, 0x00, 0x3e, 0x45, 0x55, 0x3f, 0xf7, + 0x7e, 0xe7, 0xf4, 0x55, 0x44, 0x44, 0x44, 0x45, 0x4f, 0x7e, 0xee, 0xdd, + 0xd7, 0xf4, 0x54, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xff, 0x45, 0x54, 0x44, + 0x44, 0x44, 0x54, 0x00, 0x0a, 0xff, 0x02, 0x45, 0x08, 0x44, 0x02, 0x55, + 0x02, 0xff, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, + 0x53, 0x00, 0x0a, 0xff, 0x00, 0x12, 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, + 0xff, 0xff, 0xf3, 0x00, 0x1a, 0x44, 0x00, 0x10, 0x55, 0xf7, 0xe7, 0x7e, + 0x77, 0xff, 0x55, 0x54, 0x12, 0x44, 0x00, 0x32, 0x55, 0x5f, 0xf7, 0xee, + 0xe7, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, 0x5f, 0x7d, 0xda, 0xaa, 0xae, + 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xff, 0x55, 0x00, 0x08, 0x44, + 0x02, 0x55, 0x0a, 0xff, 0x02, 0x54, 0x08, 0x44, 0x02, 0x54, 0x02, 0xf0, + 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x52, 0x00, + 0x0a, 0xff, 0x00, 0x14, 0x25, 0x54, 0x44, 0x44, 0x45, 0x54, 0xff, 0xff, + 0xf3, 0x45, 0x18, 0x44, 0x00, 0x10, 0x43, 0xf7, 0x77, 0xe7, 0x77, 0xf2, + 0x55, 0x54, 0x08, 0x44, 0x02, 0x54, 0x08, 0x44, 0x00, 0x3c, 0x55, 0x5f, + 0x7e, 0xee, 0xe7, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x55, 0x4f, 0x7d, 0xaa, + 0xaa, 0xae, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x55, 0x4f, 0xff, 0x55, 0x44, + 0x44, 0x44, 0x45, 0x54, 0x0a, 0xff, 0x02, 0x54, 0x08, 0x44, 0x02, 0x45, + 0x02, 0xff, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x55, + 0x53, 0x00, 0x0a, 0x22, 0x00, 0x12, 0x35, 0x55, 0x44, 0x44, 0x44, 0x55, + 0xff, 0xff, 0xff, 0x00, 0x18, 0x44, 0x00, 0x1c, 0x45, 0x42, 0xf7, 0x7e, + 0x77, 0x77, 0xf2, 0x55, 0x54, 0x44, 0x44, 0x44, 0x45, 0xf4, 0x08, 0x44, + 0x00, 0x32, 0x55, 0x52, 0xfe, 0x7e, 0xe7, 0xf5, 0x54, 0x44, 0x44, 0x44, + 0x45, 0x5f, 0xed, 0xaa, 0x6a, 0xae, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, + 0x5f, 0xff, 0x55, 0x00, 0x08, 0x44, 0x02, 0x55, 0x0a, 0xff, 0x0c, 0x44, + 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0c, 0xff, 0x45, 0x54, 0x44, 0x44, 0x45, + 0x0e, 0x55, 0x00, 0x22, 0x54, 0x44, 0x44, 0x44, 0x55, 0xff, 0xff, 0xff, + 0x55, 0x44, 0x44, 0x44, 0x45, 0x45, 0xff, 0xf5, 0x45, 0x00, 0x08, 0x44, + 0x00, 0x0e, 0x4f, 0x77, 0x77, 0x77, 0xe7, 0xf3, 0x55, 0x00, 0x08, 0x44, + 0x02, 0x45, 0x02, 0xf5, 0x08, 0x44, 0x00, 0x3c, 0x55, 0x53, 0xf7, 0xee, + 0xe7, 0xf4, 0x55, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xea, 0x66, 0x66, 0xae, + 0xf4, 0x55, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xff, 0x45, 0x54, 0x44, 0x44, + 0x44, 0x55, 0x0a, 0xff, 0x0c, 0x45, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0c, + 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x0e, 0x55, 0x00, 0x22, 0x54, 0x44, + 0x44, 0x44, 0x55, 0xff, 0xff, 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x55, + 0xff, 0xf3, 0x55, 0x00, 0x08, 0x44, 0x00, 0x1a, 0x5f, 0x77, 0x7e, 0x7e, + 0x77, 0xf5, 0x55, 0x44, 0x44, 0x44, 0x45, 0x43, 0xf3, 0x00, 0x08, 0x44, + 0x00, 0x3c, 0x45, 0x53, 0xf7, 0xee, 0xe7, 0xf5, 0x54, 0x44, 0x44, 0x44, + 0x54, 0x5f, 0xea, 0xaa, 0x69, 0xad, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, + 0x5f, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x45, 0x16, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x02, 0xff, 0x02, 0x55, 0x08, 0x44, 0x02, 0x45, 0x0a, 0x55, + 0x00, 0x24, 0x54, 0x44, 0x44, 0x44, 0x45, 0x54, 0xff, 0xff, 0xff, 0x34, + 0x54, 0x44, 0x44, 0x45, 0x55, 0xff, 0xf5, 0x55, 0x08, 0x44, 0x00, 0x0e, + 0x3f, 0x7e, 0x77, 0xee, 0x7f, 0x25, 0x55, 0x00, 0x08, 0x44, 0x00, 0x3e, + 0x42, 0xf2, 0x45, 0x44, 0x44, 0x44, 0x45, 0x55, 0xf7, 0xee, 0xd7, 0xf5, + 0x54, 0x44, 0x44, 0x44, 0x45, 0x52, 0xe6, 0x66, 0x69, 0x6e, 0xf5, 0x54, + 0x44, 0x44, 0x44, 0x55, 0x4f, 0xff, 0x55, 0x00, 0x08, 0x44, 0x02, 0x55, + 0x16, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x02, 0xff, 0x02, 0x55, 0x1e, 0x44, + 0x00, 0x0a, 0x55, 0xff, 0xff, 0xff, 0x24, 0x00, 0x08, 0x44, 0x00, 0x1e, + 0x55, 0x2f, 0x25, 0x55, 0x44, 0x44, 0x44, 0x54, 0x2f, 0x77, 0xee, 0x77, + 0xff, 0x25, 0x55, 0x00, 0x08, 0x44, 0x02, 0x5f, 0x02, 0xff, 0x0a, 0x44, + 0x00, 0x30, 0x55, 0x2f, 0xee, 0xd7, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, + 0x5f, 0xe9, 0x69, 0x99, 0x6d, 0xf5, 0x45, 0x44, 0x44, 0x44, 0x45, 0x5f, + 0xff, 0x55, 0x08, 0x44, 0x02, 0x55, 0x16, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x00, 0x06, 0xff, 0x45, 0x54, 0x00, 0x1c, 0x44, 0x00, 0x1a, 0x55, 0xff, + 0xff, 0xff, 0xf5, 0x44, 0x44, 0x44, 0x45, 0x55, 0x2f, 0x25, 0x54, 0x00, + 0x08, 0x44, 0x00, 0x0e, 0xf7, 0x7e, 0x7e, 0xe7, 0xff, 0x35, 0x54, 0x00, + 0x08, 0x44, 0x00, 0x48, 0x5f, 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x55, + 0x3f, 0xed, 0xde, 0xf4, 0x55, 0x44, 0x44, 0x44, 0x54, 0x5f, 0xe6, 0x96, + 0x69, 0x9e, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xff, 0x45, 0x54, + 0x44, 0x44, 0x45, 0x45, 0x16, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x02, 0xff, + 0x02, 0x55, 0x1c, 0x44, 0x00, 0x40, 0x45, 0x45, 0xff, 0xff, 0xff, 0xf5, + 0x45, 0x44, 0x44, 0x44, 0x55, 0x3f, 0x35, 0x55, 0x44, 0x44, 0x44, 0x55, + 0xf7, 0xe7, 0xee, 0x7f, 0xff, 0x55, 0x54, 0x44, 0x44, 0x44, 0x54, 0x3f, + 0xff, 0x34, 0x08, 0x44, 0x00, 0x30, 0x55, 0x5f, 0x7d, 0xd7, 0xf5, 0x54, + 0x44, 0x44, 0x44, 0x45, 0x5f, 0xd9, 0x99, 0x99, 0x6e, 0xf5, 0x54, 0x44, + 0x44, 0x44, 0x45, 0x5f, 0xff, 0x55, 0x08, 0x44, 0x02, 0x55, 0x0a, 0xff, + 0x00, 0x0e, 0xf2, 0x2f, 0x22, 0x2f, 0x2f, 0x2f, 0xf0, 0x00, 0x00, 0x00, + 0x02, 0xff, 0x02, 0x55, 0x1e, 0x44, 0x00, 0x30, 0x55, 0xff, 0xff, 0xff, + 0xf3, 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, 0x35, 0x54, 0x44, 0x44, 0x44, + 0x43, 0xf7, 0x7e, 0xee, 0x7f, 0xf2, 0x55, 0x54, 0x08, 0x44, 0x00, 0x48, + 0x2f, 0xff, 0x24, 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, 0x7d, 0xde, 0xf5, + 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, 0xd9, 0x99, 0x96, 0xce, 0xf5, 0x45, + 0x44, 0x44, 0x44, 0x45, 0x4f, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x55, + 0x0a, 0xff, 0x0c, 0x55, 0x02, 0xfb, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x54, + 0x54, 0x44, 0x44, 0x44, 0x45, 0x00, 0x0a, 0xff, 0x02, 0x54, 0x08, 0x44, + 0x00, 0x0a, 0x55, 0xff, 0xff, 0xff, 0xf2, 0x00, 0x08, 0x44, 0x00, 0x1c, + 0x55, 0x52, 0x55, 0x54, 0x44, 0x44, 0x45, 0x43, 0xf7, 0x77, 0xe7, 0xff, + 0xf2, 0x55, 0x08, 0x44, 0x00, 0x08, 0x45, 0xff, 0xff, 0xf4, 0x08, 0x44, + 0x00, 0x0c, 0x55, 0x52, 0xfd, 0xde, 0xf5, 0x45, 0x08, 0x44, 0x00, 0x26, + 0x5f, 0xd9, 0x99, 0x99, 0x6d, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, + 0xff, 0x54, 0x54, 0x44, 0x44, 0x44, 0x45, 0x00, 0x0a, 0xff, 0x0c, 0x55, + 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, + 0x53, 0x00, 0x0a, 0xff, 0x00, 0x0c, 0x35, 0x54, 0x44, 0x44, 0x45, 0x45, + 0x08, 0xff, 0x08, 0x44, 0x00, 0x2c, 0x55, 0x52, 0x55, 0x54, 0x44, 0x44, + 0x44, 0x4f, 0xf7, 0x77, 0x77, 0x7f, 0xf3, 0x55, 0x54, 0x44, 0x44, 0x44, + 0x45, 0xff, 0xff, 0xf5, 0x08, 0x44, 0x00, 0x3a, 0x55, 0x53, 0xfe, 0xde, + 0x25, 0x54, 0x44, 0x44, 0x44, 0x55, 0x5f, 0xd9, 0xc9, 0xc9, 0x9e, 0xf5, + 0x55, 0x44, 0x44, 0x44, 0x45, 0x5f, 0xf2, 0x55, 0x44, 0x44, 0x44, 0x45, + 0x55, 0x00, 0x0a, 0xff, 0x0c, 0x55, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, + 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x42, 0x00, 0x0a, 0xff, 0x02, 0x35, + 0x08, 0x44, 0x02, 0x55, 0x08, 0xff, 0x00, 0x18, 0x55, 0x44, 0x44, 0x44, + 0x45, 0x55, 0x55, 0x54, 0x44, 0x44, 0x44, 0x5f, 0x08, 0x77, 0x00, 0x14, + 0xf5, 0x55, 0x44, 0x44, 0x44, 0x45, 0x43, 0xfe, 0x77, 0xf3, 0x08, 0x44, + 0x00, 0x30, 0x45, 0x53, 0xfe, 0xae, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, + 0x5f, 0xfd, 0xdd, 0xdd, 0xdf, 0xf5, 0x54, 0x44, 0x44, 0x44, 0x45, 0x4f, + 0xff, 0x55, 0x08, 0x44, 0x02, 0x55, 0x0a, 0xff, 0x02, 0x55, 0x08, 0x44, + 0x02, 0x54, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, 0xff, 0x54, 0x54, 0x44, + 0x44, 0x45, 0x53, 0x00, 0x0a, 0xff, 0x00, 0x0c, 0x35, 0x54, 0x44, 0x44, + 0x44, 0x55, 0x08, 0xff, 0x00, 0x0e, 0x34, 0x44, 0x44, 0x44, 0x45, 0x55, + 0x55, 0x00, 0x08, 0x44, 0x00, 0x0e, 0x3f, 0x77, 0x77, 0x7e, 0x7f, 0x25, + 0x55, 0x00, 0x08, 0x44, 0x00, 0x1a, 0x42, 0xf7, 0xe7, 0xf2, 0x45, 0x44, + 0x44, 0x44, 0x45, 0x55, 0xf7, 0xae, 0xf5, 0x00, 0x08, 0x44, 0x02, 0x55, + 0x02, 0x53, 0x08, 0xff, 0x02, 0x35, 0x02, 0x55, 0x08, 0x44, 0x00, 0x28, + 0x5f, 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x55, 0x3f, 0xff, 0xff, 0xff, + 0xf3, 0x55, 0x54, 0x44, 0x44, 0x44, 0x45, 0xf0, 0x00, 0x00, 0x00, 0x0e, + 0xff, 0x55, 0x44, 0x44, 0x44, 0x45, 0x53, 0x00, 0x0a, 0xff, 0x00, 0x0c, + 0x35, 0x44, 0x44, 0x44, 0x45, 0x54, 0x08, 0xff, 0x00, 0x24, 0x24, 0x54, + 0x44, 0x44, 0x45, 0x55, 0x54, 0x44, 0x44, 0x44, 0x54, 0x2f, 0xe7, 0x77, + 0x77, 0x7f, 0x25, 0x54, 0x08, 0x44, 0x00, 0x08, 0x5f, 0x77, 0xe7, 0xff, + 0x0a, 0x44, 0x00, 0x08, 0x55, 0x2f, 0xde, 0xf5, 0x08, 0x44, 0x10, 0x55, + 0x08, 0x44, 0x00, 0x0e, 0x5f, 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x00, + 0x0e, 0x55, 0x00, 0x0c, 0x54, 0x44, 0x44, 0x44, 0x45, 0xf0, 0x00, 0x00, + 0x00, 0x0e, 0xff, 0x55, 0x54, 0x44, 0x44, 0x44, 0x53, 0x00, 0x0a, 0xff, + 0x00, 0x0c, 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, 0x08, 0xff, 0x02, 0xf4, + 0x14, 0x44, 0x00, 0x0e, 0x2f, 0x7e, 0xe7, 0x77, 0x7f, 0x35, 0x55, 0x00, + 0x08, 0x44, 0x00, 0x1a, 0x5f, 0x77, 0x7f, 0x7f, 0x54, 0x44, 0x44, 0x44, + 0x45, 0x55, 0x3f, 0xdd, 0x75, 0x00, 0x08, 0x44, 0x02, 0x45, 0x0c, 0x55, + 0x02, 0x54, 0x08, 0x44, 0x00, 0x06, 0x2f, 0xff, 0x54, 0x00, 0x08, 0x44, + 0x0e, 0x55, 0x08, 0x44, 0x02, 0x42, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x0e, + 0xff, 0x54, 0x44, 0x44, 0x44, 0x45, 0x53, 0x00, 0x0a, 0xff, 0x00, 0x0c, + 0x35, 0x54, 0x44, 0x44, 0x44, 0x55, 0x08, 0xff, 0x02, 0xf5, 0x12, 0x44, + 0x00, 0x22, 0x45, 0xf7, 0xee, 0xee, 0x7e, 0x7f, 0x55, 0x54, 0x44, 0x44, + 0x44, 0x45, 0x3f, 0xee, 0x77, 0xef, 0x34, 0x00, 0x08, 0x44, 0x00, 0x0a, + 0x55, 0x5f, 0xea, 0xdf, 0x54, 0x00, 0x08, 0x44, 0x0c, 0x55, 0x0a, 0x44, + 0x00, 0x06, 0xff, 0xff, 0xf5, 0x00, 0x08, 0x44, 0x02, 0x45, 0x0a, 0x55, + 0x02, 0x54, 0x08, 0x44, 0x02, 0x4f, 0x02, 0xf0, 0x00, 0x00, 0x02, 0xff, + 0x02, 0x55, 0x08, 0x44, 0x02, 0x53, 0x0a, 0xff, 0x02, 0x35, 0x08, 0x44, + 0x02, 0x45, 0x08, 0xff, 0x02, 0xf3, 0x12, 0x44, 0x00, 0x0e, 0x45, 0xf7, + 0xed, 0xed, 0xe7, 0xf2, 0x55, 0x00, 0x0a, 0x44, 0x00, 0x0a, 0xf7, 0x77, + 0xfe, 0xd7, 0x24, 0x00, 0x08, 0x44, 0x00, 0x0a, 0x45, 0x52, 0xea, 0xa7, + 0xf4, 0x00, 0x1c, 0x44, 0x00, 0x08, 0x4f, 0xff, 0xff, 0xff, 0x1e, 0x44, + 0x02, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x02, 0xff, 0x0a, 0x44, 0x02, 0x43, + 0x0a, 0xff, 0x02, 0x34, 0x08, 0x44, 0x02, 0x45, 0x08, 0xff, 0x02, 0xf2, + 0x12, 0x44, 0x00, 0x0e, 0x43, 0xfe, 0xee, 0xdd, 0xe7, 0xf3, 0x54, 0x00, + 0x0a, 0x44, 0x00, 0x0a, 0xfe, 0xe7, 0x7d, 0xde, 0xf4, 0x00, 0x0a, 0x44, + 0x00, 0x0a, 0x52, 0x76, 0x9a, 0xff, 0x54, 0x00, 0x18, 0x44, 0x00, 0x0c, + 0x45, 0xf7, 0xef, 0xff, 0xff, 0x25, 0x1a, 0x44, 0x00, 0x06, 0x5f, 0xff, + 0xfb, 0x00, 0x00, 0x00, 0x02, 0xff, 0x0a, 0x44, 0x02, 0x43, 0x0a, 0xff, + 0x02, 0x34, 0x0a, 0x44, 0x0a, 0xff, 0x12, 0x44, 0x00, 0x0c, 0x42, 0x7e, + 0xdd, 0xdd, 0xde, 0xf5, 0x0a, 0x44, 0x00, 0x0c, 0x45, 0xfe, 0x7f, 0xea, + 0xae, 0xf5, 0x0a, 0x44, 0x00, 0x0a, 0x45, 0xf6, 0xcc, 0x6e, 0xf3, 0x00, + 0x18, 0x44, 0x00, 0x0e, 0x3f, 0x76, 0x9f, 0xff, 0xff, 0xff, 0x34, 0x00, + 0x16, 0x44, 0x00, 0x08, 0x43, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x0e, + 0xff, 0x53, 0x55, 0x35, 0x53, 0x55, 0x33, 0x00, 0x0a, 0xff, 0x00, 0x0c, + 0x25, 0x53, 0x55, 0x35, 0x53, 0x55, 0x0a, 0xff, 0x00, 0x66, 0x35, 0x53, + 0x55, 0x35, 0x55, 0x53, 0x55, 0x35, 0x53, 0x5f, 0xf7, 0xed, 0xad, 0xde, + 0x73, 0x55, 0x35, 0x55, 0x53, 0x55, 0x52, 0x7e, 0x7e, 0xaa, 0xad, 0xf2, + 0x53, 0x55, 0x35, 0x53, 0x55, 0x33, 0x7a, 0xcc, 0xc6, 0xd7, 0xf2, 0x53, + 0x55, 0x35, 0x53, 0x55, 0x53, 0x55, 0x35, 0x53, 0x53, 0x2f, 0x7d, 0x98, + 0xcf, 0x00, 0x08, 0xff, 0x00, 0x1e, 0x25, 0x35, 0x53, 0x55, 0x35, 0x53, + 0x55, 0x35, 0x53, 0x55, 0x33, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, + 0x40, 0xff, 0x00, 0x0c, 0xf7, 0xee, 0xee, 0x7e, 0xdd, 0xe7, 0x0a, 0xff, + 0x00, 0x0c, 0xf7, 0xd7, 0xfd, 0xaa, 0xad, 0xe7, 0x0a, 0xff, 0x00, 0x0c, + 0xf7, 0xd6, 0x9c, 0x9c, 0xc9, 0xae, 0x14, 0xff, 0x00, 0x08, 0xea, 0xcc, + 0x98, 0x8d, 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x5e, + 0x7d, 0xed, 0xee, 0xed, 0xdd, 0xed, 0xaa, 0xad, 0xad, 0xea, 0xde, 0xed, + 0xdd, 0xde, 0xef, 0xee, 0xaa, 0xe7, 0xfa, 0x6a, 0x6e, 0xde, 0xdd, 0xdd, + 0xdd, 0xaa, 0xaa, 0xa6, 0x69, 0x99, 0x99, 0x99, 0xc9, 0x66, 0xaa, 0x6a, + 0x66, 0x69, 0x96, 0x66, 0x69, 0x96, 0x69, 0xc8, 0x88, 0xc8, 0x89, 0x00, + 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x3a, 0x7a, 0xd6, + 0xea, 0xad, 0xad, 0xdd, 0xaa, 0x6d, 0xda, 0xaa, 0xad, 0xae, 0xad, 0xad, + 0xd7, 0xdd, 0x6e, 0x7f, 0xda, 0x66, 0xdd, 0xd6, 0xa6, 0xa6, 0x6a, 0x66, + 0x66, 0x99, 0x96, 0x00, 0x08, 0x66, 0x00, 0x1c, 0x69, 0x99, 0x99, 0xc9, + 0x69, 0x8c, 0x9c, 0x8c, 0xcc, 0xcc, 0x88, 0xcc, 0x88, 0x8c, 0x24, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x00, 0x3e, 0xfd, 0xda, 0xd6, 0x66, + 0xaa, 0xaa, 0xa6, 0xad, 0xda, 0xad, 0xdd, 0xaa, 0xd7, 0x6d, 0xdf, 0xda, + 0xae, 0x77, 0xa6, 0x66, 0xed, 0xaa, 0xad, 0xaa, 0x96, 0x69, 0x99, 0xc9, + 0x6a, 0x66, 0x69, 0x00, 0x0a, 0x99, 0x00, 0x16, 0xcc, 0x88, 0xcc, 0xcc, + 0x8c, 0x9c, 0x88, 0x88, 0x9c, 0xc8, 0x9d, 0x00, 0x24, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x38, 0xff, 0x00, 0x3a, 0xea, 0xaa, 0x66, 0x66, 0x66, 0x6a, + 0xda, 0x6a, 0xaa, 0xaa, 0xae, 0xed, 0xaa, 0xdf, 0xda, 0xa7, 0x7a, 0x66, + 0x9d, 0x66, 0xc9, 0x66, 0x6a, 0x66, 0x69, 0x9c, 0x6a, 0x66, 0x66, 0x00, + 0x0c, 0x99, 0x00, 0x16, 0xa6, 0x8c, 0xcc, 0xc8, 0x8c, 0xc8, 0xc8, 0x88, + 0xcc, 0xc6, 0x97, 0x00, 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, + 0x00, 0x5c, 0xea, 0xda, 0xa6, 0x69, 0x9a, 0xa6, 0x66, 0x6a, 0xad, 0x9a, + 0xde, 0xaa, 0xa6, 0xdf, 0xda, 0xe7, 0xd6, 0x66, 0x66, 0x99, 0x6a, 0xa9, + 0x96, 0x99, 0x66, 0x96, 0xa6, 0x66, 0x99, 0x99, 0x99, 0x69, 0x66, 0x69, + 0x6c, 0x88, 0x8c, 0xcc, 0x88, 0xc9, 0x98, 0x8b, 0xc9, 0xad, 0x69, 0xcf, + 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x38, 0xff, 0x00, 0x5c, 0xfd, 0x66, + 0x6d, 0xda, 0xa6, 0xe7, 0xea, 0xad, 0xe7, 0xda, 0x66, 0x6a, 0x66, 0xd7, + 0xdd, 0x77, 0x66, 0x66, 0xee, 0xda, 0xaa, 0xd9, 0x96, 0xa6, 0x99, 0x6a, + 0xa6, 0x69, 0x99, 0x99, 0x66, 0x6a, 0x99, 0xdc, 0x66, 0xb8, 0x8c, 0xcc, + 0x8c, 0x99, 0xc8, 0xb8, 0x89, 0xa6, 0xc8, 0xaf, 0x24, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x38, 0xff, 0x00, 0x5c, 0xf7, 0xa6, 0x96, 0x96, 0x6e, 0xee, + 0xdd, 0xef, 0xf7, 0x7d, 0xee, 0xdd, 0xda, 0xad, 0x6e, 0x7d, 0x96, 0x6a, + 0xea, 0x69, 0x96, 0xd6, 0x89, 0x69, 0x66, 0xa6, 0xa6, 0x99, 0x99, 0x66, + 0x69, 0x96, 0x6c, 0xc9, 0x88, 0x88, 0x88, 0xc8, 0x88, 0x99, 0xc8, 0x8c, + 0x88, 0x88, 0x88, 0x7f, 0x24, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3a, 0xff, + 0x00, 0x58, 0x76, 0x69, 0x99, 0x6e, 0xfd, 0xdd, 0x7f, 0xff, 0x7f, 0xf7, + 0xf7, 0x7e, 0xdd, 0xe7, 0xf6, 0x96, 0xae, 0x66, 0x69, 0xaa, 0x9a, 0xc8, + 0xc9, 0x6a, 0xda, 0x69, 0x99, 0x99, 0x99, 0xca, 0xac, 0x68, 0x88, 0x8c, + 0xcc, 0xb8, 0xb8, 0x8c, 0x69, 0x88, 0x8b, 0x88, 0x9c, 0x8c, 0x26, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x3a, 0xff, 0x00, 0x0e, 0xfa, 0x96, 0x9c, 0xad, + 0xed, 0xdd, 0xef, 0x00, 0x08, 0xff, 0x00, 0x42, 0x7a, 0xd7, 0x77, 0xe9, + 0x9a, 0xad, 0x66, 0x99, 0xad, 0xca, 0x6c, 0x8c, 0x6d, 0xad, 0xa9, 0x99, + 0x99, 0x9a, 0x9c, 0x9c, 0x88, 0x8c, 0xc9, 0x96, 0xc8, 0xbb, 0x8c, 0x6c, + 0x8b, 0x88, 0x88, 0xd8, 0x86, 0x00, 0x26, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x3a, 0xff, 0x00, 0x0e, 0xfa, 0x96, 0x99, 0xdd, 0xde, 0xdd, 0xef, 0x00, + 0x08, 0xff, 0x00, 0x42, 0xe6, 0xd7, 0xef, 0xa9, 0x96, 0x7d, 0x66, 0x69, + 0xae, 0x69, 0x99, 0x88, 0xce, 0xed, 0x69, 0x9c, 0x99, 0xc8, 0x98, 0x88, + 0x8b, 0x89, 0x6c, 0xc6, 0x9c, 0x88, 0x89, 0x9c, 0x88, 0xc8, 0x88, 0xac, + 0x8e, 0x00, 0x26, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3a, 0xff, 0x00, 0x58, + 0xf7, 0xc6, 0xc6, 0xda, 0xdd, 0xdd, 0xdf, 0xff, 0xff, 0xff, 0xfe, 0xdf, + 0xf7, 0x7e, 0x99, 0x96, 0xa6, 0xa6, 0x66, 0x66, 0xa9, 0xaa, 0x88, 0xcd, + 0xea, 0x99, 0x9c, 0x99, 0x9c, 0x88, 0x88, 0xb8, 0x89, 0xc9, 0xc8, 0xcc, + 0x88, 0xc9, 0x98, 0x88, 0xcc, 0x88, 0xa8, 0x8f, 0x26, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x3c, 0xff, 0x00, 0x56, 0xea, 0xca, 0xad, 0xdd, 0xdd, 0xd7, + 0xff, 0xe6, 0xda, 0x6a, 0xed, 0xe7, 0xfa, 0x99, 0x9e, 0xa6, 0xca, 0x66, + 0x9a, 0x69, 0x96, 0xc9, 0xca, 0xea, 0x69, 0xcc, 0x99, 0xc9, 0xcc, 0x88, + 0x8b, 0x8c, 0x88, 0xc8, 0x8b, 0x8c, 0x69, 0xc8, 0x8c, 0xc9, 0x8c, 0xa8, + 0x6f, 0x00, 0x26, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3c, 0xff, 0x00, 0x56, + 0xfa, 0x6a, 0xae, 0xdd, 0xa6, 0x6e, 0xe9, 0x66, 0xda, 0x99, 0xaa, 0xe7, + 0xe6, 0x9c, 0x6a, 0x66, 0xca, 0x66, 0xc6, 0xa9, 0x69, 0xc8, 0xc6, 0xda, + 0x99, 0x9c, 0x99, 0x88, 0x8c, 0xb8, 0x88, 0x89, 0x88, 0x88, 0x88, 0x89, + 0x99, 0xc8, 0x8a, 0x98, 0x89, 0x9c, 0xdf, 0x00, 0x26, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x3c, 0xff, 0x00, 0x54, 0xf7, 0x99, 0xed, 0xd6, 0xcc, 0x9e, + 0xdc, 0x96, 0xa6, 0xad, 0xad, 0xef, 0xa9, 0x99, 0xd6, 0x6a, 0xc6, 0xa6, + 0x96, 0x99, 0x69, 0xcc, 0x89, 0xda, 0x9c, 0xcc, 0x99, 0x9c, 0x8c, 0x8b, + 0x8c, 0x9c, 0x88, 0x88, 0xb8, 0xcc, 0x9c, 0x88, 0x8c, 0x98, 0x8a, 0xc8, + 0x28, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x52, 0x6e, 0xee, + 0xdc, 0x99, 0xc6, 0x99, 0x6a, 0xa9, 0x9a, 0xae, 0xef, 0x69, 0x6a, 0xea, + 0xa6, 0x9c, 0xa6, 0x99, 0x66, 0x6c, 0xcc, 0x89, 0xda, 0x99, 0xcc, 0x99, + 0xc8, 0x88, 0x88, 0xc9, 0x98, 0x88, 0x88, 0x8c, 0xcc, 0xcc, 0xc8, 0x88, + 0xc8, 0xca, 0x89, 0x00, 0x28, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, + 0x00, 0x52, 0xfd, 0xdd, 0x9c, 0x99, 0x99, 0x66, 0x6e, 0x6a, 0xda, 0xae, + 0xf7, 0x9c, 0x6d, 0xd6, 0xaa, 0x6c, 0x69, 0x99, 0xc9, 0x6c, 0xc8, 0x89, + 0xdd, 0x9c, 0xcc, 0x9c, 0x88, 0x88, 0x8c, 0x99, 0x98, 0x88, 0x88, 0x9c, + 0xc9, 0xcc, 0x8c, 0x8c, 0xc8, 0x9e, 0x8d, 0x00, 0x28, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x3e, 0xff, 0x00, 0x52, 0xaa, 0xda, 0x8c, 0x99, 0x99, 0xa9, + 0xa6, 0x6a, 0xaa, 0xde, 0xfd, 0xca, 0xaa, 0xdd, 0x6a, 0xa8, 0x9c, 0x9c, + 0x99, 0x98, 0x88, 0x89, 0xed, 0x9c, 0xcc, 0x9c, 0x88, 0x88, 0xcc, 0x99, + 0xcc, 0x88, 0xcc, 0x99, 0xc9, 0xcc, 0x88, 0xc9, 0x8c, 0xdd, 0x87, 0x00, + 0x28, 0xff, 0x02, 0xf7, 0x00, 0x00, 0x3c, 0xff, 0x00, 0x54, 0xf7, 0x66, + 0xa9, 0xc9, 0xc9, 0xcc, 0xcc, 0x66, 0x9a, 0xde, 0xe7, 0x76, 0xca, 0x6a, + 0x9a, 0x69, 0xcb, 0xc8, 0x89, 0x9c, 0x88, 0x88, 0x8c, 0x7a, 0x9c, 0xcc, + 0x99, 0xc8, 0x8c, 0x99, 0x99, 0x9c, 0xcc, 0x9c, 0x99, 0xc9, 0xcc, 0x8c, + 0xcc, 0x88, 0xec, 0xcf, 0x28, 0xff, 0x02, 0xf1, 0x00, 0x00, 0x3c, 0xff, + 0x00, 0x54, 0xf7, 0xa6, 0x9c, 0xc9, 0xcc, 0xc8, 0xc8, 0xc9, 0x9d, 0x6d, + 0xdf, 0xdc, 0xcc, 0xa9, 0x69, 0x98, 0x8c, 0xa8, 0x89, 0x9c, 0x88, 0x88, + 0xc9, 0xe6, 0xcc, 0xcc, 0xcc, 0x9c, 0xc9, 0x9c, 0x99, 0xcc, 0xcc, 0xcc, + 0x99, 0xcc, 0xc8, 0xc9, 0xc8, 0x88, 0xe8, 0xaf, 0x28, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x3e, 0xff, 0x00, 0x52, 0x6c, 0xcc, 0x99, 0xcc, 0x89, 0x6c, + 0x8c, 0xdd, 0xda, 0xef, 0xac, 0xcc, 0x69, 0xc8, 0x89, 0x69, 0x96, 0x88, + 0x99, 0x98, 0x88, 0x96, 0xe9, 0xcc, 0xcc, 0x99, 0xc9, 0x99, 0x99, 0x99, + 0xc9, 0x99, 0xc9, 0xc9, 0xc9, 0xc8, 0xc9, 0xcc, 0x89, 0xec, 0xef, 0x00, + 0x28, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x50, 0x98, 0x9c, + 0x99, 0x99, 0x9a, 0x66, 0xcc, 0xed, 0xde, 0x77, 0xac, 0x88, 0x88, 0xc6, + 0xd6, 0xa9, 0xc6, 0x9c, 0x99, 0x98, 0xb8, 0x9a, 0x69, 0xcc, 0x9c, 0xcc, + 0xcc, 0x9c, 0x99, 0x9c, 0xcc, 0xc9, 0x99, 0x99, 0x9c, 0xcc, 0x99, 0xc8, + 0x8e, 0x9c, 0x2a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x50, + 0x9c, 0xcc, 0x69, 0x9c, 0xa6, 0x66, 0x96, 0xea, 0x9e, 0x7e, 0xa9, 0xc9, + 0xc8, 0x9e, 0x69, 0xd9, 0xc9, 0x96, 0x99, 0xc9, 0x88, 0x6a, 0xc9, 0xcc, + 0xc9, 0xc9, 0xcc, 0x9c, 0x99, 0x9c, 0xc9, 0x9c, 0x99, 0x9c, 0x99, 0x9b, + 0x88, 0xc8, 0xce, 0xc9, 0x2a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, + 0x00, 0x50, 0xdc, 0xc9, 0xa9, 0xa8, 0xa6, 0x6a, 0x96, 0x9c, 0xd7, 0xfa, + 0xa6, 0x69, 0xac, 0x6d, 0x66, 0xa6, 0x6c, 0x88, 0x99, 0x9c, 0xc9, 0x69, + 0xc9, 0xcc, 0xc9, 0xcc, 0xcc, 0xc9, 0x99, 0xcc, 0x9c, 0x99, 0x99, 0x99, + 0x98, 0xb8, 0x88, 0x88, 0xcd, 0xc7, 0x2a, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x3e, 0xff, 0x00, 0x50, 0x79, 0x96, 0x69, 0x68, 0x66, 0xa6, 0x96, 0xcc, + 0xaf, 0xfa, 0xe9, 0x9c, 0xc8, 0xa6, 0xa9, 0x69, 0x9c, 0x98, 0xc9, 0x99, + 0x9c, 0x99, 0x99, 0xc9, 0x99, 0xc9, 0xcc, 0x99, 0x9c, 0xc9, 0xcc, 0x9c, + 0x9c, 0x99, 0xc8, 0x89, 0xc8, 0x88, 0xad, 0x8f, 0x2a, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x3e, 0xff, 0x00, 0x50, 0xf9, 0x9a, 0x96, 0xac, 0x9a, 0x66, + 0x99, 0x88, 0x6f, 0xfd, 0xec, 0xc9, 0x9c, 0x99, 0x9a, 0x96, 0x68, 0x9c, + 0xc9, 0x99, 0x99, 0x96, 0x69, 0xcc, 0x99, 0x9c, 0x9c, 0xc9, 0x9c, 0xcc, + 0xc9, 0xc9, 0x99, 0x9c, 0x96, 0xc8, 0xc8, 0x88, 0x79, 0x6f, 0x2a, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x50, 0xf9, 0x99, 0xd9, 0x9c, + 0x6a, 0x66, 0x69, 0x8c, 0x6f, 0xfa, 0x99, 0x96, 0x9a, 0x69, 0x99, 0x66, + 0x9c, 0x99, 0x89, 0xc9, 0x99, 0x99, 0x98, 0x88, 0x88, 0x99, 0xcc, 0x99, + 0xcc, 0xc9, 0xcc, 0x99, 0xc9, 0x9c, 0x9c, 0x69, 0xc9, 0x88, 0x7c, 0xef, + 0x2a, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4e, 0xfd, 0x96, + 0x99, 0x99, 0xa6, 0x66, 0x69, 0x88, 0x6f, 0xd9, 0x9c, 0x99, 0xac, 0x96, + 0x66, 0x96, 0x69, 0xc9, 0x89, 0x98, 0x99, 0x99, 0x6c, 0x88, 0x8b, 0x8c, + 0x99, 0xc9, 0xcc, 0xcc, 0x9c, 0x9c, 0x99, 0x9c, 0x96, 0x6d, 0xcc, 0x89, + 0xac, 0x00, 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4e, + 0xfa, 0x99, 0x99, 0xca, 0xd6, 0xaa, 0x99, 0x8c, 0x69, 0x69, 0x99, 0xc8, + 0x6c, 0x96, 0xc9, 0x96, 0x66, 0xc9, 0xcc, 0x9c, 0x99, 0xcc, 0x88, 0xb8, + 0x88, 0x88, 0x69, 0x9c, 0xcc, 0xc9, 0xc9, 0x99, 0x9c, 0xcc, 0xcc, 0xc6, + 0x89, 0x8e, 0x9a, 0x00, 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, + 0x00, 0x4e, 0xfd, 0x99, 0x9c, 0x6a, 0xda, 0x66, 0x69, 0x8c, 0x99, 0x96, + 0xa9, 0xc8, 0x96, 0x99, 0x69, 0x69, 0x99, 0x8a, 0xc8, 0x99, 0x99, 0x9c, + 0xb8, 0x88, 0x88, 0xb8, 0x96, 0x9c, 0xcc, 0xcc, 0x9c, 0x99, 0xc9, 0xc8, + 0xcc, 0x88, 0x88, 0x9e, 0xce, 0x00, 0x2c, 0xff, 0x02, 0xf4, 0x00, 0x00, + 0x3e, 0xff, 0x00, 0x4e, 0xfa, 0x99, 0xc9, 0xdd, 0xa6, 0xaa, 0x69, 0x88, + 0xc9, 0xc9, 0xd6, 0x88, 0x69, 0x66, 0x99, 0x96, 0x66, 0xc9, 0x68, 0x89, + 0x9c, 0x9c, 0xb8, 0x88, 0x88, 0x88, 0x69, 0xcc, 0xcc, 0xc9, 0x99, 0x9c, + 0xc8, 0xcc, 0xcc, 0xcc, 0x88, 0xe6, 0xcf, 0x00, 0x2c, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4e, 0xfd, 0x99, 0x99, 0xdd, 0xa6, 0x66, + 0x69, 0x88, 0x8c, 0x9c, 0xaa, 0x88, 0x99, 0xa9, 0xc9, 0x9d, 0xaa, 0x99, + 0x9c, 0x8c, 0x99, 0xc8, 0x88, 0x88, 0x88, 0xb8, 0x6c, 0x9c, 0xc9, 0x9c, + 0x99, 0xcc, 0x96, 0x66, 0x99, 0x88, 0xc8, 0xec, 0x6f, 0x00, 0x2c, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4e, 0xfd, 0x69, 0x96, 0xdd, + 0xaa, 0x6a, 0x69, 0x88, 0x88, 0xc9, 0x9d, 0xc8, 0x86, 0x69, 0x9c, 0x69, + 0xaa, 0xa9, 0x6c, 0x88, 0xc9, 0xc8, 0x88, 0x88, 0x8b, 0x88, 0x9c, 0xcc, + 0x9c, 0xc9, 0x9c, 0x99, 0x96, 0x96, 0xcc, 0x8c, 0x89, 0x68, 0xef, 0x00, + 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4c, 0xfd, 0xa9, + 0x9d, 0xda, 0xa6, 0xa6, 0x69, 0x98, 0x88, 0xc9, 0xad, 0x68, 0x8a, 0xad, + 0x88, 0x88, 0x8c, 0x99, 0x96, 0xa8, 0x99, 0x68, 0x88, 0x8c, 0x8b, 0x89, + 0xcc, 0xc9, 0xc9, 0x99, 0x9c, 0x88, 0x8c, 0x66, 0xcc, 0x8c, 0x8a, 0x9c, + 0x2e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x3e, 0xff, 0x00, 0x4c, 0xfe, 0xa9, + 0x9e, 0xda, 0xaa, 0x6a, 0x69, 0x66, 0x99, 0xcc, 0x6a, 0xd8, 0x88, 0x9b, + 0x88, 0x8c, 0x6c, 0x9d, 0x99, 0x98, 0x9c, 0x96, 0x98, 0xc8, 0x88, 0x8c, + 0x9c, 0x9c, 0x96, 0x9c, 0xc8, 0x8b, 0x8c, 0xc9, 0x98, 0xc8, 0x8a, 0xc6, + 0x2e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x36, 0xff, 0x08, 0x22, 0x00, 0x4c, + 0x2e, 0xa9, 0x6d, 0xda, 0xa6, 0x6a, 0x66, 0x96, 0x99, 0x69, 0x6d, 0xdc, + 0x88, 0xa6, 0xaa, 0x66, 0x9c, 0xbd, 0xdc, 0x9c, 0xc6, 0xaa, 0x99, 0xc8, + 0xb8, 0x99, 0xc9, 0xc6, 0x99, 0xc9, 0x88, 0x8c, 0xcc, 0xcc, 0x9c, 0xc8, + 0x6c, 0x8e, 0x2e, 0xff, 0x02, 0xf4, 0x00, 0x00, 0x30, 0xff, 0x00, 0x5a, + 0x22, 0x22, 0x23, 0x32, 0x32, 0x22, 0xf2, 0xfd, 0xa9, 0xdd, 0xaa, 0x66, + 0xa6, 0x6a, 0xee, 0x77, 0x69, 0x96, 0x66, 0x8c, 0xcd, 0xa6, 0x9d, 0x96, + 0x8c, 0xdd, 0xac, 0xc9, 0x8c, 0x8c, 0x88, 0xc6, 0xc9, 0x99, 0x69, 0x9c, + 0x69, 0x99, 0x9c, 0xc9, 0xc9, 0x9c, 0x8c, 0xac, 0xcf, 0x00, 0x2e, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x2e, 0xff, 0x00, 0x14, 0x22, 0x22, 0x33, 0x22, + 0xf2, 0xff, 0xff, 0xff, 0xfa, 0x66, 0x08, 0xaa, 0x00, 0x40, 0x6d, 0xdd, + 0xdd, 0xa6, 0x6a, 0xaa, 0x88, 0x86, 0x69, 0xc6, 0x99, 0x98, 0x88, 0x9c, + 0xc8, 0x88, 0x88, 0x99, 0x69, 0x6a, 0xa6, 0x9c, 0xc8, 0xc9, 0xc9, 0xcc, + 0x86, 0x99, 0x9c, 0xba, 0x98, 0x9f, 0x2e, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x2a, 0xff, 0x00, 0x0a, 0xf2, 0x22, 0x22, 0x22, 0x2f, 0x00, 0x0a, 0xff, + 0x00, 0x4c, 0x7a, 0xce, 0xdd, 0xa6, 0x6a, 0xaa, 0xad, 0xea, 0xdd, 0xd6, + 0xda, 0xa6, 0xcc, 0x89, 0xa9, 0x99, 0x99, 0xac, 0x88, 0xb8, 0xbb, 0x88, + 0x86, 0x9a, 0x99, 0x99, 0xc8, 0xcc, 0xcc, 0x99, 0xcc, 0x9d, 0xc9, 0xc6, + 0x9c, 0xce, 0x9c, 0xdf, 0x2e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x28, 0xff, + 0x00, 0x08, 0xf2, 0x22, 0x22, 0x2f, 0x0e, 0xff, 0x00, 0x4a, 0xe9, 0xda, + 0xa6, 0xaa, 0xd6, 0xda, 0xa6, 0xda, 0xad, 0xea, 0x7a, 0xa6, 0xa8, 0xc8, + 0xac, 0x66, 0x99, 0x9a, 0xd6, 0x9c, 0xc6, 0x6d, 0xa6, 0x9c, 0x9c, 0x88, + 0xc9, 0x9c, 0x9c, 0x99, 0xcc, 0xcc, 0xc6, 0xc9, 0xc8, 0x7a, 0xcc, 0x00, + 0x30, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x26, 0xff, 0x00, 0x06, 0xf2, 0x23, + 0x22, 0x00, 0x12, 0xff, 0x00, 0x4a, 0x6d, 0xaa, 0x66, 0x6d, 0xdd, 0xaa, + 0x66, 0x6a, 0xda, 0xaa, 0xea, 0x6a, 0xa9, 0xc8, 0x69, 0x6c, 0x66, 0x66, + 0x66, 0x6a, 0x66, 0x6a, 0xaa, 0x6c, 0xe9, 0xcc, 0xc9, 0x96, 0x99, 0x96, + 0xcc, 0xc8, 0xc9, 0xc9, 0x8a, 0xf6, 0xc9, 0x00, 0x30, 0xff, 0x02, 0xf7, + 0x00, 0x00, 0x26, 0xff, 0x02, 0x23, 0x02, 0x32, 0x14, 0xff, 0x00, 0x4a, + 0x9a, 0xa6, 0x66, 0x6a, 0xdd, 0x9c, 0x88, 0xc8, 0xca, 0xa6, 0xa6, 0x9a, + 0x66, 0xc8, 0x96, 0x9c, 0x99, 0xc9, 0x99, 0x9c, 0x99, 0x69, 0x6a, 0xa8, + 0x6a, 0xac, 0xcc, 0x96, 0x98, 0x99, 0xcc, 0xcc, 0x89, 0xc8, 0xcf, 0xec, + 0xcd, 0x00, 0x30, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x24, 0xff, 0x02, 0x22, + 0x02, 0x32, 0x16, 0xff, 0x00, 0x4a, 0x6a, 0xaa, 0x69, 0x6a, 0x66, 0xc6, + 0x77, 0xfe, 0xa8, 0x96, 0xc8, 0x89, 0xdd, 0x8c, 0x8a, 0xcc, 0xcc, 0xc9, + 0x9c, 0x9c, 0xcc, 0x6e, 0xa6, 0xa6, 0x8a, 0xde, 0x6a, 0x66, 0x8c, 0xa9, + 0xcc, 0xcc, 0xcc, 0x98, 0x9f, 0xec, 0xcf, 0x00, 0x30, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x22, 0xff, 0x00, 0x06, 0xf2, 0x33, 0x2f, 0x00, 0x14, 0xff, + 0x00, 0x4c, 0xf7, 0x6a, 0x66, 0xcc, 0x9a, 0xa8, 0x6f, 0xff, 0xff, 0xfa, + 0x88, 0x86, 0x69, 0xdd, 0x98, 0xc6, 0x99, 0xc9, 0xcc, 0x9c, 0x9c, 0xcc, + 0x6d, 0xa6, 0x6d, 0x8c, 0xcc, 0xc8, 0x88, 0x8d, 0x66, 0x9c, 0x9c, 0xc8, + 0x68, 0xdf, 0x68, 0x9f, 0x30, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x22, 0xff, + 0x02, 0x33, 0x02, 0x22, 0x18, 0xff, 0x00, 0x4a, 0xd6, 0xa6, 0x99, 0xc6, + 0xd9, 0xff, 0xff, 0xff, 0xfe, 0xd9, 0xae, 0x99, 0xa7, 0xa8, 0xcc, 0x9c, + 0x99, 0x96, 0x6c, 0xcc, 0xcc, 0xae, 0xdd, 0xaa, 0xac, 0x9c, 0x66, 0xc9, + 0xda, 0x9a, 0x69, 0xcc, 0xc8, 0x98, 0xef, 0xcc, 0xef, 0x00, 0x30, 0xff, + 0x02, 0xfb, 0x00, 0x00, 0x20, 0xff, 0x02, 0xf3, 0x02, 0x33, 0x1a, 0xff, + 0x00, 0x48, 0xaa, 0x66, 0x9c, 0x99, 0x6d, 0xef, 0xf7, 0xff, 0xf7, 0xed, + 0xda, 0x96, 0xce, 0xe8, 0x8c, 0x99, 0xc9, 0xaa, 0x66, 0xcc, 0xcc, 0xde, + 0xaa, 0x6a, 0xae, 0x6c, 0xc9, 0x6a, 0xcc, 0x9c, 0xcc, 0x9c, 0xcc, 0x88, + 0xee, 0xcc, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x06, + 0xf2, 0x25, 0x3f, 0x00, 0x1a, 0xff, 0x00, 0x48, 0xaa, 0x69, 0x99, 0xc6, + 0x9a, 0x6f, 0xff, 0xff, 0x77, 0xea, 0x6a, 0xa6, 0x6a, 0xdc, 0x8c, 0xd6, + 0x69, 0xd6, 0xd9, 0xcc, 0xcc, 0x7d, 0xaa, 0xa6, 0x9e, 0xe7, 0xa6, 0x69, + 0x6c, 0xc8, 0x9c, 0xcc, 0x9c, 0x8c, 0xea, 0x86, 0x32, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x1e, 0xff, 0x02, 0xf2, 0x02, 0x53, 0x1c, 0xff, 0x00, 0x48, + 0xa6, 0x6c, 0xcc, 0x9c, 0x96, 0xd6, 0xff, 0xfe, 0x77, 0xd9, 0xaa, 0xa8, + 0x9a, 0xaa, 0x88, 0x9a, 0xc9, 0xa6, 0x9a, 0xa9, 0x9c, 0xea, 0x99, 0x96, + 0x9d, 0xae, 0xd6, 0x69, 0xd6, 0x88, 0x9c, 0xc9, 0x6c, 0x89, 0xdc, 0xc7, + 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1e, 0xff, 0x02, 0x25, 0x02, 0x2f, + 0x1c, 0xff, 0x00, 0x48, 0x68, 0x88, 0xcc, 0xcc, 0x9d, 0x6a, 0x6f, 0xff, + 0xfd, 0xc8, 0x99, 0xac, 0x89, 0x66, 0x8c, 0x86, 0xc9, 0xd6, 0x6c, 0x99, + 0x69, 0xa6, 0xc6, 0x66, 0x6a, 0x9a, 0xa6, 0x6a, 0xac, 0x68, 0xcc, 0x88, + 0x8b, 0x89, 0x9c, 0xcf, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1c, 0xff, + 0x00, 0x06, 0xf2, 0x33, 0x2f, 0x00, 0x1c, 0xff, 0x00, 0x48, 0x99, 0x9c, + 0xc8, 0xcc, 0x9d, 0xda, 0x66, 0xde, 0xdc, 0x88, 0x6d, 0x9c, 0x96, 0xa9, + 0xcc, 0xcc, 0xc6, 0x66, 0x99, 0x99, 0x6a, 0xa9, 0x99, 0x99, 0x66, 0x96, + 0x66, 0xa6, 0x66, 0x6c, 0x88, 0xc9, 0x88, 0x9a, 0x9c, 0xaf, 0x32, 0xff, + 0x02, 0xf1, 0x00, 0x00, 0x1c, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x16, 0xff, + 0x00, 0x50, 0xfe, 0xa7, 0xff, 0xff, 0x9c, 0xcc, 0xcc, 0xcc, 0x9c, 0xaa, + 0x6a, 0x96, 0xc8, 0x88, 0x9a, 0xcc, 0xc9, 0x6c, 0x9c, 0xcc, 0xcc, 0xc9, + 0xc9, 0x9c, 0x9a, 0xa9, 0xc6, 0x6c, 0x69, 0x9c, 0x96, 0x6a, 0xa9, 0x66, + 0x88, 0xee, 0xda, 0x68, 0x89, 0x7f, 0x32, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x1c, 0xff, 0x02, 0x25, 0x02, 0x2f, 0x16, 0xff, 0x00, 0x4e, 0xf7, 0x69, + 0xaf, 0xff, 0x98, 0xc9, 0xc8, 0x8c, 0x9c, 0xad, 0xd6, 0x69, 0x8c, 0x98, + 0x86, 0x69, 0xc9, 0x66, 0x98, 0x88, 0x9c, 0xc9, 0x66, 0x69, 0x6d, 0xa9, + 0xc6, 0x9c, 0x69, 0x66, 0x99, 0x66, 0x96, 0x99, 0xcb, 0xef, 0x6c, 0x9c, + 0xcc, 0x00, 0x34, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1c, 0xff, 0x02, 0x33, + 0x02, 0x2f, 0x18, 0xff, 0x00, 0x4c, 0xd9, 0x96, 0xef, 0xa8, 0x8c, 0xcc, + 0x88, 0x99, 0xdd, 0xde, 0xa9, 0x6d, 0x6c, 0x8c, 0xd6, 0x9c, 0xc6, 0x98, + 0x88, 0xdc, 0xc6, 0xaa, 0x9c, 0x6d, 0x99, 0xcc, 0x99, 0x96, 0x96, 0x6a, + 0xa6, 0xa6, 0x9c, 0x88, 0x6e, 0x6d, 0xac, 0xcd, 0x34, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x1a, 0xff, 0x02, 0xf2, 0x02, 0x52, 0x1a, 0xff, 0x00, 0x4c, + 0xfc, 0x99, 0xcf, 0xd8, 0xb8, 0xcc, 0x88, 0xca, 0xa9, 0xde, 0x77, 0x7d, + 0xd6, 0x88, 0xad, 0x99, 0xca, 0x9c, 0x88, 0xaa, 0xc6, 0xa6, 0x69, 0x9a, + 0x99, 0x96, 0x99, 0x96, 0xca, 0xaa, 0xaa, 0xa6, 0x9c, 0x8c, 0x66, 0xdf, + 0xfe, 0xcf, 0x34, 0xff, 0x02, 0xf9, 0x00, 0x00, 0x1a, 0xff, 0x02, 0xf3, + 0x02, 0x32, 0x1a, 0xff, 0x00, 0x4c, 0xfa, 0xcc, 0x98, 0x68, 0x88, 0x8c, + 0x88, 0xca, 0xdd, 0xdf, 0xff, 0xff, 0xfa, 0x98, 0xca, 0xe9, 0x96, 0x69, + 0x88, 0x9d, 0xc9, 0xc9, 0x99, 0x9a, 0xca, 0xc6, 0x99, 0x99, 0x66, 0xc9, + 0x99, 0x99, 0x98, 0xc6, 0xc9, 0xde, 0xff, 0xdf, 0x34, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x1a, 0xff, 0x02, 0x23, 0x02, 0x3f, 0x1a, 0xff, 0x00, 0x30, + 0xfa, 0xcc, 0x98, 0x88, 0x88, 0x88, 0x8c, 0xca, 0xae, 0xdf, 0xff, 0xff, + 0xf7, 0xd9, 0x8c, 0xda, 0x66, 0x96, 0x88, 0xce, 0xcc, 0x99, 0x66, 0x66, + 0x0a, 0xcc, 0x00, 0x0e, 0x9c, 0xc9, 0x98, 0x89, 0x98, 0x9c, 0x96, 0x00, + 0x38, 0xff, 0x02, 0xf9, 0x00, 0x00, 0x1a, 0xff, 0x02, 0x25, 0x02, 0x2f, + 0x1a, 0xff, 0x00, 0x48, 0xda, 0xc9, 0x99, 0xb8, 0x8b, 0x88, 0xc6, 0x9d, + 0xdd, 0xae, 0xed, 0x7f, 0x77, 0xee, 0xc8, 0x9a, 0xa6, 0x66, 0xc8, 0x86, + 0x6c, 0xc9, 0x66, 0x99, 0xcc, 0xcc, 0xcc, 0x8c, 0xcc, 0xcc, 0x9c, 0xb8, + 0x6c, 0xc9, 0x66, 0x9e, 0x38, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1a, 0xff, + 0x02, 0x35, 0x02, 0x2f, 0x18, 0xff, 0x00, 0x48, 0xfd, 0xda, 0xcc, 0x66, + 0x88, 0x88, 0x88, 0x8a, 0xa9, 0x6e, 0xed, 0xad, 0xaf, 0xf7, 0xef, 0xd6, + 0x8c, 0x9a, 0x6a, 0x68, 0x89, 0xec, 0x9c, 0xc6, 0x9c, 0x9c, 0xcc, 0x8c, + 0xcc, 0xc8, 0x98, 0x88, 0x9a, 0x99, 0xa6, 0x6d, 0x3a, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, 0x02, 0x53, 0x1a, 0xff, 0x00, 0x32, + 0xfc, 0xa6, 0x68, 0x99, 0x9b, 0x88, 0xb8, 0xca, 0x69, 0xae, 0xee, 0xed, + 0xe7, 0xff, 0x77, 0xfe, 0xdc, 0xc6, 0xa6, 0x9c, 0x88, 0xdc, 0xc8, 0x99, + 0x69, 0x00, 0x08, 0xcc, 0x00, 0x0c, 0x8c, 0x88, 0x8a, 0x9c, 0x6a, 0xd7, + 0x3c, 0xff, 0x02, 0xf2, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, 0x02, 0x53, + 0x1a, 0xff, 0x00, 0x34, 0x66, 0x96, 0x98, 0x96, 0x9b, 0x8b, 0x88, 0xca, + 0x66, 0x9d, 0xdd, 0xff, 0xff, 0xee, 0xaa, 0xae, 0xed, 0xa9, 0x66, 0x99, + 0x8c, 0x69, 0x8c, 0xc9, 0x66, 0xcc, 0x08, 0xc8, 0x00, 0x08, 0x89, 0xac, + 0xc6, 0xe2, 0x3e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, + 0x02, 0x53, 0x1a, 0xff, 0x00, 0x46, 0x96, 0x69, 0x98, 0x99, 0x68, 0xb8, + 0xb8, 0xca, 0xaa, 0x9a, 0xdf, 0x7e, 0xa9, 0x88, 0x88, 0x89, 0xef, 0xea, + 0x6d, 0xed, 0xa6, 0x66, 0x88, 0x8c, 0xc6, 0x98, 0x88, 0x88, 0x88, 0x8c, + 0xa9, 0xc9, 0xae, 0x22, 0x2f, 0x00, 0x3c, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x1a, 0xff, 0x00, 0x46, 0xc9, 0xd6, + 0xac, 0x9c, 0x68, 0xb8, 0x88, 0xcd, 0x6c, 0x9a, 0xea, 0xc8, 0xb8, 0x8b, + 0x8b, 0x88, 0xb9, 0xaa, 0x69, 0x6d, 0xd6, 0x9c, 0x8c, 0x88, 0x8c, 0x88, + 0x88, 0x88, 0xc9, 0x99, 0x9a, 0x9d, 0xdf, 0xf2, 0x2f, 0x00, 0x3c, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x18, 0xff, + 0x00, 0x48, 0xf6, 0xa9, 0xd6, 0xa9, 0x9c, 0x9b, 0x8b, 0x88, 0x9a, 0x6c, + 0xcd, 0xc8, 0x8b, 0x8b, 0xb8, 0xb8, 0x8b, 0x8b, 0x88, 0xc6, 0xc9, 0x6c, + 0x88, 0x88, 0x88, 0x69, 0x8b, 0x8b, 0xbc, 0xa9, 0x8c, 0x9d, 0x7a, 0x7f, + 0xf2, 0x22, 0x3c, 0xff, 0x02, 0xf9, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, + 0x02, 0x52, 0x14, 0xff, 0x00, 0x4c, 0xf7, 0x9c, 0xcc, 0xa6, 0x66, 0x69, + 0xc9, 0x98, 0xb8, 0x88, 0x6d, 0x98, 0x88, 0x88, 0xb8, 0x88, 0x8c, 0x96, + 0x69, 0xc8, 0x8b, 0x8c, 0x6c, 0x69, 0xcc, 0xc1, 0x8a, 0xa8, 0x8b, 0x8c, + 0xa9, 0xcc, 0xcc, 0xad, 0xad, 0xff, 0xff, 0x22, 0x3c, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x14, 0xff, 0x00, 0x18, + 0xf6, 0xc8, 0x8c, 0xca, 0xca, 0x9c, 0xc6, 0x98, 0x88, 0x88, 0xad, 0x8b, + 0x08, 0x88, 0x00, 0x2c, 0xc6, 0x6a, 0xa9, 0xcc, 0x88, 0x88, 0xc9, 0x96, + 0xcc, 0xc1, 0x9c, 0xc8, 0xcc, 0x8c, 0x88, 0x89, 0xaa, 0x96, 0xaf, 0xff, + 0xff, 0x22, 0x3c, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, + 0x02, 0x52, 0x14, 0xff, 0x00, 0x4e, 0xfc, 0x8c, 0xc8, 0xc6, 0xca, 0x6c, + 0x96, 0xa8, 0xb8, 0x8c, 0x66, 0x88, 0xb8, 0x88, 0xcc, 0xc9, 0xa6, 0xa6, + 0xa6, 0x69, 0x8c, 0x9b, 0x89, 0xc6, 0xcc, 0xc6, 0x16, 0x98, 0xc8, 0xcc, + 0xc9, 0x9d, 0xec, 0x96, 0x7f, 0xff, 0xff, 0x23, 0x2f, 0x00, 0x3a, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x14, 0xff, + 0x00, 0x4e, 0xfc, 0xc8, 0xc9, 0x9c, 0x8a, 0x9c, 0x96, 0xa8, 0x8b, 0x8c, + 0xa8, 0x8b, 0x88, 0x8c, 0xc9, 0x9a, 0x66, 0x6a, 0xaa, 0x69, 0x98, 0x98, + 0xb8, 0x99, 0xd9, 0x91, 0x1a, 0x6c, 0x9c, 0x96, 0x96, 0xde, 0x69, 0x67, + 0xff, 0xff, 0xff, 0xf3, 0x2f, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x18, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x14, 0xff, 0x00, 0x4e, 0xec, 0x8c, + 0xc9, 0x89, 0xca, 0x99, 0xc6, 0xec, 0x88, 0x89, 0x68, 0xb8, 0x88, 0x8c, + 0x99, 0xaa, 0xaa, 0xa6, 0x69, 0xcc, 0xcc, 0xc9, 0x8b, 0xcc, 0xa6, 0x96, + 0x16, 0x99, 0xc6, 0x99, 0x97, 0xde, 0x96, 0xef, 0xff, 0xff, 0xff, 0xf2, + 0x3f, 0x00, 0x3a, 0xff, 0x02, 0xf4, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf3, + 0x02, 0x52, 0x14, 0xff, 0x00, 0x42, 0xa8, 0x88, 0x86, 0x9c, 0x89, 0x99, + 0xc9, 0xec, 0x8b, 0x88, 0x98, 0x8b, 0x88, 0xcc, 0x6a, 0x6a, 0x66, 0x69, + 0x96, 0x9c, 0x8c, 0xcc, 0x8b, 0x8c, 0x9d, 0x6a, 0x11, 0x9c, 0xc9, 0x6a, + 0xee, 0xed, 0x9e, 0x00, 0x08, 0xff, 0x02, 0xf2, 0x02, 0x3f, 0x3a, 0xff, + 0x02, 0xfb, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, 0x02, 0x52, 0x12, 0xff, + 0x00, 0x42, 0xfd, 0xc8, 0x98, 0x8c, 0x99, 0x8c, 0x69, 0x99, 0xe9, 0x88, + 0xb8, 0x88, 0xb8, 0x88, 0xc9, 0x6a, 0x66, 0x66, 0x9a, 0xa6, 0x6c, 0x8c, + 0x8c, 0xc8, 0x88, 0x9a, 0xaa, 0x11, 0x6c, 0xc9, 0x9d, 0xee, 0xee, 0x00, + 0x0a, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x3a, 0xff, 0x02, 0xf4, 0x00, 0x00, + 0x18, 0xff, 0x02, 0xf2, 0x02, 0x53, 0x12, 0xff, 0x00, 0x42, 0xec, 0x99, + 0xc6, 0x88, 0x69, 0x98, 0x69, 0x99, 0xaa, 0xc8, 0x88, 0x88, 0x88, 0x8c, + 0xc9, 0x6a, 0x69, 0x6a, 0xaa, 0xa6, 0xc9, 0xcc, 0xcc, 0xc8, 0xb8, 0xc6, + 0xdd, 0xa1, 0x6c, 0x89, 0xee, 0xee, 0x7f, 0x00, 0x0c, 0xff, 0x02, 0x32, + 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x18, 0xff, 0x02, 0xf2, 0x02, 0x53, + 0x12, 0xff, 0x00, 0x40, 0x9c, 0xcc, 0x6c, 0x98, 0x8c, 0x9c, 0x69, 0x99, + 0x6d, 0x9b, 0xb8, 0x8b, 0x88, 0x8c, 0x6a, 0xa6, 0x66, 0x66, 0x66, 0x69, + 0xcc, 0x8c, 0x88, 0x98, 0xb8, 0x89, 0xde, 0xd0, 0x19, 0x9a, 0xed, 0xe7, + 0x0e, 0xff, 0x02, 0x22, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x18, 0xff, + 0x02, 0xf2, 0x02, 0x55, 0x12, 0xff, 0x00, 0x40, 0xcc, 0xc8, 0x96, 0x96, + 0xc8, 0xcc, 0x99, 0x96, 0x9e, 0xd8, 0x88, 0xc8, 0x88, 0xc6, 0xa6, 0x66, + 0x69, 0x99, 0x99, 0x96, 0x9c, 0x88, 0xcc, 0xcc, 0x88, 0x8a, 0x6e, 0xe0, + 0x49, 0x9e, 0x77, 0x7f, 0x0e, 0xff, 0x02, 0x33, 0x3a, 0xff, 0x02, 0xf9, + 0x00, 0x00, 0x1a, 0xff, 0x02, 0x35, 0x02, 0x2f, 0x0e, 0xff, 0x00, 0x3e, + 0xf7, 0xc8, 0xcc, 0xc9, 0xaa, 0xd8, 0x89, 0x69, 0x99, 0x9c, 0x68, 0xbb, + 0x9c, 0x88, 0xa6, 0x66, 0x66, 0x69, 0xc9, 0x9a, 0xa6, 0x69, 0xc8, 0x88, + 0x8c, 0x88, 0xaf, 0x96, 0x7e, 0x01, 0xef, 0x00, 0x12, 0xff, 0x02, 0x23, + 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x1a, 0xff, 0x02, 0x35, 0x02, 0x2f, + 0x0e, 0xff, 0x00, 0x3e, 0xfa, 0xc8, 0x89, 0xcc, 0xa7, 0x6c, 0x88, 0x96, + 0xcc, 0xc9, 0xac, 0x88, 0xb8, 0x99, 0x66, 0x66, 0x99, 0x66, 0x66, 0xaa, + 0x6c, 0xc9, 0xcc, 0x88, 0x8c, 0x88, 0x87, 0x9c, 0xae, 0x01, 0x3f, 0x00, + 0x12, 0xff, 0x02, 0x33, 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x1a, 0xff, + 0x02, 0x25, 0x02, 0x3f, 0x0e, 0xff, 0x00, 0x3e, 0xf9, 0x88, 0x8c, 0x9c, + 0x6a, 0xcc, 0x9c, 0x8c, 0xcc, 0xcc, 0x6a, 0xc9, 0x6c, 0x99, 0x96, 0x66, + 0x96, 0x96, 0xaa, 0x69, 0xc8, 0xcc, 0xcc, 0x88, 0x88, 0xc8, 0x88, 0xca, + 0x77, 0x75, 0x52, 0x00, 0x10, 0xff, 0x02, 0xf2, 0x02, 0x33, 0x3a, 0xff, + 0x02, 0xfb, 0x00, 0x00, 0x1a, 0xff, 0x02, 0x25, 0x02, 0x5f, 0x0e, 0xff, + 0x00, 0x3e, 0x7c, 0xcc, 0xc8, 0xc9, 0xa8, 0xcc, 0xa6, 0x8b, 0x98, 0x9c, + 0xaa, 0xcc, 0x89, 0x99, 0x99, 0x69, 0x99, 0x66, 0x99, 0x99, 0x9c, 0x8c, + 0xcc, 0x88, 0xcc, 0xc8, 0x88, 0x86, 0xff, 0xf3, 0x55, 0x00, 0x12, 0xff, + 0x02, 0x32, 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x1a, 0xff, 0x02, 0xf3, + 0x02, 0x52, 0x0e, 0xff, 0x00, 0x1e, 0xd8, 0xcc, 0x6a, 0x89, 0x88, 0x9d, + 0xc8, 0x88, 0x99, 0xc8, 0x96, 0x88, 0x8c, 0x99, 0x96, 0x00, 0x08, 0x99, + 0x02, 0x98, 0x02, 0xcc, 0x08, 0x88, 0x00, 0x0e, 0xc8, 0x88, 0x88, 0x7f, + 0xff, 0x35, 0x3f, 0x00, 0x0e, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x3a, 0xff, + 0x02, 0xfd, 0x00, 0x00, 0x1a, 0xff, 0x02, 0xf2, 0x02, 0x53, 0x0e, 0xff, + 0x00, 0x1c, 0x99, 0xcc, 0xc6, 0xea, 0xcc, 0xe9, 0x8b, 0x8c, 0x6f, 0xcc, + 0xc6, 0x88, 0x88, 0xc9, 0x08, 0x99, 0x00, 0x06, 0xc8, 0xca, 0xea, 0x00, + 0x08, 0x88, 0x00, 0x0e, 0x8c, 0x8c, 0x8c, 0xdf, 0xff, 0x25, 0x53, 0x00, + 0x0e, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x3a, 0xff, 0x02, 0xf5, 0x00, 0x00, + 0x1a, 0xff, 0x02, 0xf2, 0x02, 0x55, 0x0c, 0xff, 0x00, 0x2e, 0xfd, 0xc9, + 0x8a, 0x96, 0xc9, 0x6c, 0x9c, 0x88, 0x8c, 0xef, 0xf9, 0xc9, 0x68, 0xb8, + 0xc9, 0x99, 0x99, 0x9c, 0x88, 0xc6, 0xd7, 0xdd, 0xa9, 0x00, 0x0a, 0x88, + 0x00, 0x0c, 0x96, 0xef, 0xff, 0xf2, 0x55, 0x2f, 0x0c, 0xff, 0x02, 0x23, + 0x02, 0x3f, 0x3a, 0xff, 0x02, 0xfd, 0x00, 0x00, 0x1c, 0xff, 0x02, 0x34, + 0x02, 0x2f, 0x0a, 0xff, 0x00, 0x44, 0xfc, 0xcc, 0xcc, 0x6a, 0xcc, 0xcd, + 0xac, 0x88, 0xcd, 0xff, 0xff, 0x6c, 0x9a, 0x88, 0x86, 0x99, 0x9c, 0xc8, + 0x8e, 0xde, 0x77, 0xea, 0xdd, 0xd9, 0x88, 0x88, 0x88, 0x8c, 0x97, 0xff, + 0xff, 0xff, 0x25, 0x53, 0x0c, 0xff, 0x02, 0x33, 0x02, 0x2f, 0x3a, 0xff, + 0x02, 0xf1, 0x00, 0x00, 0x1c, 0xff, 0x02, 0x25, 0x02, 0x5f, 0x0a, 0xff, + 0x00, 0x46, 0xd6, 0xc9, 0xc9, 0xa8, 0xcc, 0x88, 0x68, 0x88, 0x9f, 0xff, + 0xff, 0xf6, 0x9a, 0xc8, 0x89, 0x69, 0x9c, 0x86, 0xdd, 0xdd, 0x77, 0xda, + 0xae, 0xed, 0xdc, 0x88, 0x88, 0xcc, 0xdf, 0xff, 0xff, 0xff, 0xf2, 0x55, + 0x32, 0x00, 0x08, 0xff, 0x02, 0xf3, 0x02, 0x53, 0x3c, 0xff, 0x02, 0xfd, + 0x00, 0x00, 0x1c, 0xff, 0x02, 0xf3, 0x02, 0x52, 0x0a, 0xff, 0x00, 0x10, + 0x68, 0xc9, 0x99, 0x8c, 0x98, 0x88, 0x8c, 0x8a, 0x08, 0xff, 0x00, 0x22, + 0x6c, 0x99, 0xc6, 0x69, 0x88, 0xde, 0xdd, 0xee, 0xe6, 0xc8, 0x6d, 0xdd, + 0xdd, 0x68, 0x88, 0x89, 0x7f, 0x00, 0x08, 0xff, 0x00, 0x10, 0x25, 0x55, + 0x32, 0xff, 0xff, 0x22, 0x35, 0x3f, 0x3c, 0xff, 0x02, 0xfb, 0x00, 0x00, + 0x1c, 0xff, 0x00, 0x1e, 0xf2, 0x55, 0x2f, 0xff, 0xff, 0xff, 0xf6, 0xcc, + 0x6a, 0xed, 0x99, 0x88, 0xc8, 0x88, 0x6f, 0x00, 0x08, 0xff, 0x00, 0x20, + 0xf9, 0x96, 0xe9, 0x69, 0x6e, 0xaa, 0xde, 0xee, 0x66, 0xc8, 0xc6, 0xad, + 0xdd, 0xe6, 0x88, 0x89, 0x0c, 0xff, 0x00, 0x0c, 0x25, 0x55, 0x53, 0x33, + 0x35, 0x52, 0x3e, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, + 0x35, 0x2f, 0xff, 0xff, 0xff, 0xd8, 0x89, 0x9c, 0xda, 0x9c, 0x88, 0x88, + 0x89, 0x00, 0x0c, 0xff, 0x00, 0x1e, 0x77, 0xd9, 0x69, 0xd7, 0xdd, 0x77, + 0x76, 0x6a, 0xcc, 0xc9, 0x6a, 0xdd, 0xd6, 0xc8, 0x89, 0x00, 0x0c, 0xff, + 0x00, 0x0c, 0xf2, 0x23, 0x33, 0x53, 0x32, 0x2f, 0x3e, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, 0x25, 0x5f, 0xff, 0xff, 0xff, 0x9c, + 0xca, 0xda, 0x99, 0xc8, 0xc8, 0x88, 0xc7, 0x00, 0x0e, 0xff, 0x00, 0x1c, + 0xf6, 0x69, 0xe7, 0x77, 0x7e, 0x66, 0x6a, 0xcc, 0xcc, 0x9a, 0xad, 0xd6, + 0xc8, 0xc6, 0x10, 0xff, 0x02, 0xf2, 0x02, 0xf2, 0x42, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, 0xf3, 0x53, 0xff, 0xff, 0xfa, 0xa6, + 0xa7, 0xe9, 0xcc, 0x88, 0x8c, 0x8c, 0xaf, 0x00, 0x0e, 0xff, 0x00, 0x1c, + 0xf6, 0x69, 0xd7, 0x77, 0xd6, 0x66, 0x6a, 0xc9, 0xcc, 0xc9, 0x6a, 0xd6, + 0xc8, 0xca, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x18, + 0xf2, 0x55, 0x2f, 0xff, 0x66, 0x98, 0x8c, 0xcc, 0xd9, 0xc8, 0xb8, 0x86, + 0x10, 0xff, 0x00, 0x1c, 0xf6, 0x69, 0xae, 0xd6, 0x66, 0x6a, 0x6a, 0x9c, + 0xc9, 0xc9, 0x99, 0xa9, 0xcc, 0xcd, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, + 0x20, 0xff, 0x00, 0x16, 0x25, 0x5f, 0xee, 0x69, 0x9c, 0x8c, 0xcc, 0xc6, + 0xc8, 0x88, 0x9f, 0x00, 0x10, 0xff, 0x00, 0x1c, 0x76, 0x66, 0x66, 0x66, + 0x6a, 0x66, 0x6a, 0xcc, 0x9c, 0xcc, 0xcc, 0xc8, 0x8c, 0xcd, 0x56, 0xff, + 0x02, 0xfb, 0x00, 0x00, 0x20, 0xff, 0x00, 0x16, 0xf3, 0x50, 0x66, 0xc8, + 0xcc, 0xc8, 0xc9, 0x8c, 0x98, 0x8c, 0x7f, 0x00, 0x10, 0xff, 0x02, 0xe6, + 0x02, 0xa6, 0x0a, 0x66, 0x00, 0x0e, 0xc9, 0xcc, 0x99, 0x99, 0xcc, 0xcc, + 0xce, 0x00, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x22, 0xff, 0x00, 0x12, + 0x11, 0xc9, 0x98, 0xcc, 0xc9, 0x6c, 0x8c, 0xcc, 0xcd, 0x00, 0x12, 0xff, + 0x00, 0x1c, 0xe6, 0xaa, 0x66, 0x66, 0x6c, 0xc6, 0x66, 0xcc, 0x99, 0xcc, + 0x99, 0x9c, 0x89, 0x9e, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1e, 0xff, + 0x00, 0x16, 0x22, 0xff, 0x11, 0x18, 0x88, 0x99, 0x8c, 0xc9, 0x98, 0xbc, + 0x9f, 0x00, 0x12, 0xff, 0x00, 0x1c, 0xe6, 0x66, 0x66, 0x66, 0x88, 0x86, + 0xa9, 0xc8, 0x89, 0x69, 0x99, 0x99, 0xcc, 0xc7, 0x56, 0xff, 0x02, 0xfc, + 0x00, 0x00, 0x1c, 0xff, 0x00, 0x18, 0xf2, 0x00, 0x02, 0x66, 0x11, 0x8c, + 0x9c, 0x9c, 0xc8, 0xb8, 0x88, 0xdf, 0x12, 0xff, 0x00, 0x1c, 0xd9, 0x6a, + 0x66, 0x68, 0x88, 0x96, 0x69, 0xc8, 0xc8, 0x96, 0x96, 0x99, 0x9c, 0x67, + 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1c, 0xff, 0x00, 0x1e, 0xf0, 0x00, + 0x00, 0x68, 0xc1, 0x18, 0xcc, 0x66, 0x98, 0x88, 0x88, 0xdf, 0xff, 0x23, + 0x2f, 0x00, 0x0c, 0xff, 0x00, 0x1c, 0x66, 0x66, 0x69, 0x98, 0x99, 0x66, + 0x69, 0xcc, 0xc9, 0x8a, 0x96, 0x99, 0xcc, 0xce, 0x56, 0xff, 0x02, 0xfc, + 0x00, 0x00, 0x1c, 0xff, 0x00, 0x1e, 0x20, 0x00, 0x00, 0x98, 0x8c, 0x11, + 0x86, 0x6a, 0xd9, 0xc8, 0x8c, 0xff, 0xf2, 0x32, 0x3f, 0x00, 0x0c, 0xff, + 0x00, 0x1c, 0xa6, 0x66, 0x99, 0xc9, 0x69, 0x69, 0x99, 0xc9, 0xc6, 0xc9, + 0x66, 0x99, 0xcc, 0xce, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x1c, 0xff, + 0x00, 0x1e, 0x23, 0x00, 0x00, 0xc8, 0x8c, 0x91, 0x98, 0xcc, 0x6d, 0x98, + 0x89, 0xff, 0xf3, 0x32, 0x3f, 0x00, 0x0c, 0xff, 0x00, 0x1c, 0x66, 0x69, + 0xcc, 0x96, 0x99, 0x99, 0x6c, 0xc9, 0xc6, 0x6c, 0x96, 0xa6, 0x9c, 0x8e, + 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1c, 0x23, 0x01, + 0xc8, 0xc9, 0x9c, 0x11, 0x8b, 0x86, 0xac, 0x88, 0xaf, 0x23, 0x37, 0x2f, + 0x0c, 0xff, 0x00, 0x1c, 0x66, 0x69, 0x89, 0x99, 0x69, 0x69, 0xcc, 0xc9, + 0xc6, 0xd6, 0x88, 0x9a, 0x9c, 0xcf, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, + 0x20, 0xff, 0x00, 0x1a, 0xac, 0xc8, 0xc9, 0x8c, 0x61, 0x18, 0x88, 0x8c, + 0xc8, 0x8e, 0x33, 0x23, 0x2f, 0x00, 0x0c, 0xff, 0x00, 0x1c, 0xa6, 0x68, + 0x9c, 0xc6, 0x69, 0x99, 0x6c, 0x9c, 0xca, 0x66, 0xd9, 0x86, 0xa9, 0xcf, + 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, 0xf7, 0x8a, + 0x6d, 0xe9, 0x89, 0xcc, 0x11, 0x69, 0x88, 0xcc, 0xcd, 0x32, 0x33, 0x00, + 0x0e, 0xff, 0x00, 0x1c, 0xa6, 0xc9, 0x69, 0xc9, 0xa9, 0x99, 0x9c, 0xcc, + 0x96, 0xad, 0x66, 0xcc, 0xa9, 0x9f, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x1e, 0xff, 0x00, 0x1a, 0xf6, 0x89, 0xcc, 0x66, 0x6d, 0x98, 0xc1, 0x19, + 0x19, 0xc8, 0x83, 0x23, 0x3f, 0x00, 0x0e, 0xff, 0x00, 0x1c, 0xa9, 0x96, + 0x99, 0x99, 0xa9, 0x99, 0xcc, 0x9c, 0xc6, 0xaa, 0x69, 0x6c, 0xca, 0x6f, + 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x1e, 0xff, 0x00, 0x1a, 0xf9, 0xa8, + 0x89, 0xc8, 0x9a, 0xa9, 0x6c, 0x64, 0x41, 0x19, 0xa3, 0x30, 0x3f, 0x00, + 0x0e, 0xff, 0x00, 0x1c, 0x7a, 0xa6, 0x99, 0x9c, 0xa6, 0x66, 0xad, 0xc9, + 0x9a, 0x6a, 0xa9, 0x96, 0xc9, 0x6f, 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, + 0x1e, 0xff, 0x00, 0x1a, 0xf6, 0xc9, 0xac, 0x88, 0xc9, 0x88, 0xcc, 0xc6, + 0x44, 0x00, 0x32, 0x70, 0x2f, 0x00, 0x10, 0xff, 0x00, 0x1a, 0x7d, 0xa9, + 0x99, 0x66, 0x66, 0xae, 0x9c, 0xc9, 0x99, 0x9c, 0xc9, 0x99, 0xef, 0x00, + 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x20, 0xff, 0x00, 0x18, 0xa8, 0xca, + 0xc9, 0x9b, 0x8c, 0x8b, 0x86, 0x11, 0x40, 0x32, 0x30, 0x3f, 0x0c, 0xff, + 0x00, 0x1c, 0xf2, 0x32, 0xff, 0xff, 0xfe, 0x6a, 0x66, 0x6d, 0x9c, 0x99, + 0x99, 0x66, 0x66, 0xae, 0x58, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x20, 0xff, + 0x00, 0x18, 0xf9, 0xcc, 0x88, 0x99, 0xc8, 0x88, 0x86, 0x00, 0x03, 0x32, + 0x33, 0x02, 0x0c, 0xff, 0x00, 0x16, 0x23, 0x22, 0xff, 0xff, 0xff, 0xfd, + 0x6d, 0x6a, 0xcc, 0x99, 0xd7, 0x00, 0x5e, 0xff, 0x02, 0xfb, 0x00, 0x00, + 0x22, 0xff, 0x00, 0x18, 0xfa, 0xc8, 0xc8, 0x88, 0xc8, 0x8c, 0xa0, 0x33, + 0x37, 0x32, 0x30, 0x02, 0x0a, 0xff, 0x02, 0x33, 0x02, 0x22, 0x08, 0xff, + 0x00, 0x08, 0xad, 0xad, 0x69, 0x97, 0x60, 0xff, 0x02, 0xfb, 0x00, 0x00, + 0x24, 0xff, 0x00, 0x24, 0x9c, 0xd9, 0x8c, 0xcc, 0x6d, 0xf2, 0x33, 0x23, + 0x33, 0x50, 0x00, 0x02, 0xff, 0xff, 0xff, 0xf2, 0x00, 0x2f, 0x08, 0xff, + 0x00, 0x08, 0x7a, 0xda, 0x9c, 0x7f, 0x60, 0xff, 0x02, 0xfb, 0x00, 0x00, + 0x28, 0xff, 0x00, 0x20, 0xc9, 0x6a, 0xef, 0xf2, 0x32, 0x33, 0x00, 0x01, + 0x00, 0x00, 0x52, 0xff, 0xff, 0xf0, 0x00, 0x2f, 0x08, 0xff, 0x00, 0x06, + 0xfa, 0xad, 0xcd, 0x00, 0x62, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x2a, 0xff, + 0x00, 0x1c, 0xe7, 0xff, 0xf2, 0x32, 0x03, 0x33, 0x00, 0x01, 0x01, 0x00, + 0x52, 0xff, 0x20, 0x03, 0x0a, 0xff, 0x00, 0x06, 0xfd, 0xad, 0xcf, 0x00, + 0x62, 0xff, 0x02, 0xfa, 0x00, 0x00, 0x2e, 0xff, 0x00, 0x18, 0x23, 0x37, + 0x32, 0xff, 0xf3, 0x00, 0x00, 0x11, 0x00, 0x52, 0x00, 0x0f, 0x0a, 0xff, + 0x00, 0x06, 0xfd, 0x6d, 0xaf, 0x00, 0x62, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x2e, 0xff, 0x00, 0x18, 0x23, 0x33, 0x3f, 0xff, 0xff, 0x23, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x2f, 0x0a, 0xff, 0x00, 0x06, 0xfe, 0xa0, 0x7f, 0x00, + 0x62, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x2e, 0xff, 0x02, 0x37, 0x02, 0x33, + 0x08, 0xff, 0x00, 0x0c, 0x23, 0x00, 0x00, 0x10, 0x00, 0x02, 0x0a, 0xff, + 0x00, 0x06, 0xf2, 0xd2, 0x32, 0x00, 0x62, 0xff, 0x02, 0xfc, 0x00, 0x00, + 0x2c, 0xff, 0x00, 0x06, 0xf2, 0x33, 0x33, 0x00, 0x0a, 0xff, 0x00, 0x0c, + 0xf3, 0x00, 0x01, 0x01, 0x00, 0x02, 0x08, 0xff, 0x00, 0x06, 0xf2, 0x02, + 0x2f, 0x00, 0x62, 0xff, 0x02, 0xfa, 0x00, 0x00, 0x2c, 0xff, 0x00, 0x06, + 0xf2, 0x22, 0x3f, 0x00, 0x0c, 0xff, 0x00, 0x18, 0xf3, 0x00, 0x10, 0x01, + 0x00, 0x52, 0xff, 0xff, 0xff, 0xf3, 0x10, 0x2f, 0x62, 0xff, 0x02, 0xfc, + 0x00, 0x00, 0x2c, 0xff, 0x00, 0x06, 0xf3, 0x23, 0x2f, 0x00, 0x0c, 0xff, + 0x00, 0x16, 0xf2, 0x00, 0x00, 0x10, 0x10, 0x10, 0x03, 0xff, 0xff, 0x20, + 0x03, 0x00, 0x64, 0xff, 0x02, 0xf9, 0x00, 0x00, 0x2e, 0xff, 0x02, 0x32, + 0x0e, 0xff, 0x00, 0x16, 0x23, 0x13, 0x23, 0x01, 0x01, 0x01, 0x00, 0x03, + 0x2f, 0x30, 0x0f, 0x00, 0x64, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x3e, 0xff, + 0x00, 0x16, 0x20, 0x02, 0xff, 0x23, 0x00, 0x10, 0x10, 0x10, 0x03, 0x00, + 0x2f, 0x00, 0x0c, 0xff, 0x02, 0xf2, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, + 0x3e, 0xff, 0x00, 0x14, 0x00, 0x0f, 0xff, 0xff, 0x23, 0x00, 0x11, 0x10, + 0x00, 0x00, 0x0e, 0xff, 0x02, 0x23, 0x02, 0x2f, 0x54, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x3c, 0xff, 0x00, 0x1a, 0xf2, 0x00, 0x2f, 0xff, 0xff, 0xff, + 0x23, 0x00, 0x01, 0x10, 0x00, 0x53, 0x2f, 0x00, 0x08, 0xff, 0x00, 0x06, + 0xf2, 0x32, 0x3f, 0x00, 0x54, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x3c, 0xff, + 0x02, 0xf3, 0x02, 0x33, 0x0a, 0xff, 0x00, 0x1a, 0x23, 0x00, 0x11, 0x10, + 0x10, 0x03, 0x2f, 0xff, 0xff, 0xff, 0xf3, 0x00, 0x2f, 0x00, 0x54, 0xff, + 0x02, 0xfc, 0x00, 0x00, 0x3c, 0xff, 0x02, 0xf3, 0x02, 0x32, 0x0c, 0xff, + 0x00, 0x16, 0x23, 0x00, 0x11, 0x11, 0x00, 0x03, 0x2f, 0xff, 0xff, 0x20, + 0x13, 0x00, 0x56, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x3c, 0xff, 0x02, 0xf2, + 0x02, 0x2f, 0x0c, 0xff, 0x00, 0x16, 0xf3, 0x00, 0x00, 0x10, 0x11, 0x10, + 0x53, 0x2f, 0xff, 0x30, 0x02, 0x00, 0x56, 0xff, 0x02, 0xfc, 0x00, 0x00, + 0x4c, 0xff, 0x00, 0x16, 0x20, 0x02, 0x23, 0x01, 0x01, 0x01, 0x11, 0x03, + 0x22, 0x01, 0x3f, 0x00, 0x56, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x4a, 0xff, + 0x00, 0x16, 0xf2, 0x30, 0x0f, 0xff, 0x23, 0x00, 0x11, 0x01, 0x10, 0x05, + 0x00, 0x00, 0x58, 0xff, 0x02, 0xfc, 0x00, 0x00, 0x4a, 0xff, 0x00, 0x18, + 0xf2, 0x01, 0x2f, 0xff, 0xff, 0x23, 0x00, 0x11, 0x01, 0x10, 0x15, 0x2f, + 0x0c, 0xff, 0x02, 0x32, 0x02, 0x2f, 0x46, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x4a, 0xff, 0x02, 0xf3, 0x02, 0x30, 0x08, 0xff, 0x00, 0x0e, 0x23, 0x00, + 0x11, 0x11, 0x00, 0x03, 0x22, 0x00, 0x08, 0xff, 0x00, 0x06, 0xf2, 0x23, + 0x2f, 0x00, 0x46, 0xff, 0x02, 0xf1, 0x00, 0x00, 0x4a, 0xff, 0x02, 0x23, + 0x02, 0x32, 0x0a, 0xff, 0x00, 0x1a, 0x23, 0x00, 0x11, 0x11, 0x41, 0x03, + 0x2f, 0xff, 0xff, 0xff, 0xf3, 0x33, 0x2f, 0x00, 0x46, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x4a, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x0c, 0xff, 0x00, 0x16, + 0x23, 0x00, 0x11, 0x11, 0x01, 0x03, 0x2f, 0xff, 0xff, 0x20, 0x13, 0x00, + 0x48, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x5a, 0xff, 0x00, 0x16, 0xf0, 0x05, + 0x00, 0x11, 0x14, 0x10, 0x00, 0x2f, 0xff, 0x31, 0x0f, 0x00, 0x48, 0xff, + 0x02, 0xfa, 0x00, 0x00, 0x5a, 0xff, 0x00, 0x16, 0x20, 0x12, 0xf3, 0x01, + 0x11, 0x11, 0x40, 0x03, 0x22, 0x01, 0x2f, 0x00, 0x48, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x58, 0xff, 0x00, 0x16, 0xf2, 0x01, 0x3f, 0xff, 0xf3, 0x01, + 0x01, 0x11, 0x41, 0x05, 0x00, 0x00, 0x4a, 0xff, 0x02, 0xf4, 0x00, 0x00, + 0x58, 0xff, 0x00, 0x18, 0xf3, 0x00, 0x2f, 0xff, 0xff, 0xf3, 0x01, 0x11, + 0x11, 0x11, 0x13, 0x2f, 0x0c, 0xff, 0x02, 0x22, 0x3a, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x58, 0xff, 0x02, 0x23, 0x02, 0x30, 0x08, 0xff, 0x00, 0x0e, + 0xf2, 0x30, 0x11, 0x14, 0x11, 0x03, 0x2f, 0x00, 0x08, 0xff, 0x02, 0xf3, + 0x02, 0x33, 0x3a, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x58, 0xff, 0x02, 0x23, + 0x02, 0x22, 0x0a, 0xff, 0x00, 0x18, 0xf2, 0x30, 0x11, 0x14, 0x11, 0x03, + 0x2f, 0xff, 0xff, 0xff, 0xf3, 0x33, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x58, 0xff, 0x02, 0xf2, 0x02, 0x3f, 0x0c, 0xff, 0x00, 0x16, 0xf3, 0x01, + 0x11, 0x11, 0x41, 0x03, 0x2f, 0xff, 0xff, 0x31, 0x02, 0x00, 0x3a, 0xff, + 0x02, 0xf1, 0x00, 0x00, 0x68, 0xff, 0x00, 0x16, 0xf0, 0x13, 0x00, 0x11, + 0x11, 0x11, 0x03, 0x2f, 0xff, 0x51, 0x3f, 0x00, 0x3a, 0xff, 0x02, 0xfc, + 0x00, 0x00, 0x68, 0xff, 0x00, 0x16, 0x31, 0x02, 0xf3, 0x00, 0x11, 0x41, + 0x41, 0x03, 0x22, 0x11, 0x2f, 0x00, 0x3a, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x66, 0xff, 0x00, 0x16, 0xf2, 0x01, 0x3f, 0xff, 0xf3, 0x01, 0x11, 0x11, + 0x11, 0x10, 0x13, 0x00, 0x3c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x66, 0xff, + 0x00, 0x18, 0xf3, 0x10, 0x2f, 0xff, 0xff, 0xf2, 0x01, 0x11, 0x41, 0x41, + 0x10, 0x2f, 0x0a, 0xff, 0x02, 0xf2, 0x02, 0x32, 0x2c, 0xff, 0x02, 0xf0, + 0x00, 0x00, 0x66, 0xff, 0x02, 0x23, 0x02, 0x00, 0x08, 0xff, 0x00, 0x0e, + 0xf2, 0x01, 0x11, 0x11, 0x14, 0x10, 0x3f, 0x00, 0x08, 0xff, 0x02, 0xf3, + 0x02, 0x33, 0x2c, 0xff, 0x02, 0xf4, 0x00, 0x00, 0x66, 0xff, 0x02, 0x33, + 0x02, 0x32, 0x0a, 0xff, 0x00, 0x18, 0xf3, 0x00, 0x14, 0x11, 0x11, 0x40, + 0x2f, 0xff, 0xff, 0xff, 0x25, 0x32, 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x66, 0xff, 0x02, 0x23, 0x02, 0x3f, 0x0c, 0xff, 0x00, 0x16, 0xf0, 0x11, + 0x11, 0x41, 0x11, 0x10, 0x2f, 0xff, 0xff, 0x01, 0x02, 0x00, 0x2c, 0xff, + 0x02, 0xf2, 0x00, 0x00, 0x66, 0xff, 0x02, 0xf2, 0x02, 0x2f, 0x0c, 0xff, + 0x00, 0x16, 0x21, 0x13, 0x01, 0x11, 0x14, 0x11, 0x10, 0x2f, 0xf2, 0x11, + 0x3f, 0x00, 0x2c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x76, 0xff, 0x00, 0x16, + 0x31, 0x0f, 0xf2, 0x01, 0x11, 0x14, 0x11, 0x15, 0x25, 0x10, 0x2f, 0x00, + 0x2c, 0xff, 0x02, 0xf1, 0x00, 0x00, 0x74, 0xff, 0x00, 0x16, 0xf2, 0x11, + 0x3f, 0xff, 0xf3, 0x00, 0x11, 0x14, 0x11, 0x11, 0x13, 0x00, 0x0e, 0xff, + 0x02, 0x2f, 0x1e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x74, 0xff, 0x00, 0x18, + 0xf3, 0x10, 0xff, 0xff, 0xff, 0xf2, 0x00, 0x11, 0x14, 0x11, 0x10, 0x32, + 0x0a, 0xff, 0x02, 0xf3, 0x02, 0x33, 0x1e, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0x74, 0xff, 0x02, 0x23, 0x02, 0x32, 0x08, 0xff, 0x00, 0x0e, 0xf2, 0x30, + 0x11, 0x14, 0x11, 0x10, 0x32, 0x00, 0x08, 0xff, 0x02, 0xf3, 0x02, 0x33, + 0x1e, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x74, 0xff, 0x02, 0x23, 0x02, 0x3f, + 0x0a, 0xff, 0x00, 0x18, 0xf2, 0x31, 0x11, 0x41, 0x14, 0x10, 0x32, 0xff, + 0xff, 0xff, 0x30, 0x32, 0x1e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x84, 0xff, + 0x00, 0x16, 0x20, 0x11, 0x11, 0x41, 0x11, 0x10, 0x32, 0xff, 0xf2, 0x01, + 0x0f, 0x00, 0x1e, 0xff, 0x02, 0xfb, 0x00, 0x00, 0x84, 0xff, 0x00, 0x16, + 0x51, 0x13, 0x31, 0x11, 0x14, 0x11, 0x11, 0x32, 0xf3, 0x11, 0x3f, 0x00, + 0x1e, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x82, 0xff, 0x00, 0x18, 0xf2, 0x11, + 0x3f, 0xf2, 0x01, 0x11, 0x14, 0x11, 0x10, 0x50, 0x10, 0x2f, 0x1e, 0xff, + 0x02, 0xf7, 0x00, 0x00, 0x82, 0xff, 0x00, 0x16, 0xf0, 0x10, 0xff, 0xff, + 0xf2, 0x51, 0x11, 0x41, 0x11, 0x11, 0x12, 0x00, 0x0c, 0xff, 0x02, 0xf2, + 0x12, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x82, 0xff, 0x00, 0x18, 0x20, 0x13, + 0xff, 0xff, 0xff, 0xf2, 0x00, 0x11, 0x41, 0x41, 0x11, 0x2f, 0x0a, 0xff, + 0x02, 0xf3, 0x02, 0x32, 0x10, 0xff, 0x02, 0xf2, 0x00, 0x00, 0x82, 0xff, + 0x02, 0x33, 0x02, 0x32, 0x08, 0xff, 0x00, 0x0e, 0xf2, 0x01, 0x11, 0x11, + 0x41, 0x11, 0x3f, 0x00, 0x08, 0xff, 0x02, 0x23, 0x02, 0x33, 0x10, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x82, 0xff, 0x02, 0x33, 0x02, 0x3f, 0x0a, 0xff, + 0x00, 0x18, 0xf2, 0x51, 0x41, 0x14, 0x11, 0x11, 0x3f, 0xff, 0xff, 0xff, + 0x30, 0x02, 0x10, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x82, 0xff, 0x02, 0xf2, + 0x02, 0x2f, 0x0c, 0xff, 0x00, 0x16, 0x31, 0x11, 0x11, 0x41, 0x14, 0x11, + 0x32, 0xff, 0xf2, 0x01, 0x3f, 0x00, 0x10, 0xff, 0x02, 0xf4, 0x00, 0x00, + 0x92, 0xff, 0x00, 0x16, 0x01, 0x02, 0x31, 0x11, 0x41, 0x14, 0x11, 0x32, + 0xf3, 0x11, 0x2f, 0x00, 0x10, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x90, 0xff, + 0x00, 0x16, 0xf2, 0x11, 0x3f, 0xf2, 0x00, 0x11, 0x41, 0x11, 0x11, 0x50, + 0x13, 0x00, 0x12, 0xff, 0x02, 0xf7, 0x00, 0x00, 0x90, 0xff, 0x00, 0x16, + 0xf0, 0x10, 0xff, 0xff, 0xf2, 0x31, 0x11, 0x41, 0x41, 0x11, 0x12, 0x00, + 0x12, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x90, 0xff, 0x00, 0x18, 0x20, 0x13, + 0xff, 0xff, 0xff, 0xf2, 0x31, 0x11, 0x11, 0x41, 0x41, 0x3f, 0x10, 0xff, + 0x02, 0xf2, 0x00, 0x00, 0x90, 0xff, 0x02, 0x33, 0x02, 0x32, 0x08, 0xff, + 0x00, 0x0e, 0xf2, 0x31, 0x14, 0x11, 0x11, 0x11, 0x3f, 0x00, 0x0e, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x90, 0xff, 0x02, 0x33, 0x02, 0x2f, 0x0a, 0xff, + 0x00, 0x0e, 0xf2, 0x31, 0x11, 0x41, 0x41, 0x41, 0x32, 0x00, 0x0c, 0xff, + 0x02, 0xf2, 0x00, 0x00, 0x90, 0xff, 0x02, 0xf2, 0x0e, 0xff, 0x00, 0x0c, + 0x21, 0x00, 0x11, 0x11, 0x11, 0x13, 0x0c, 0xff, 0x02, 0xf0, 0x00, 0x00, + 0xa0, 0xff, 0x00, 0x0c, 0x01, 0x3f, 0x20, 0x11, 0x41, 0x12, 0x0c, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x9e, 0xff, 0x00, 0x0e, 0xf3, 0x11, 0xff, 0xff, + 0x30, 0x11, 0x3f, 0x00, 0x0c, 0xff, 0x02, 0xf0, 0x00, 0x00, 0x9e, 0xff, + 0x00, 0x0e, 0xf0, 0x13, 0xff, 0xff, 0xff, 0x33, 0x2f, 0x00, 0x0c, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x9e, 0xff, 0x02, 0x33, 0x02, 0x02, 0x16, 0xff, + 0x02, 0xf2, 0x00, 0x00, 0x9e, 0xff, 0x02, 0x32, 0x02, 0x3f, 0x16, 0xff, + 0x02, 0xf0, 0x00, 0x00, 0x9e, 0xff, 0x02, 0x23, 0x02, 0x3f, 0x16, 0xff, + 0x02, 0xfb, 0x00, 0x00, 0xb8, 0xff, 0x02, 0xf0, 0x00, 0x01, 0x00, 0x00 }; unsigned int splash_bmp_len = 12840; diff --git a/firmware/application/ui_afskrx.cpp b/firmware/application/ui_afskrx.cpp new file mode 100644 index 000000000..31ac59123 --- /dev/null +++ b/firmware/application/ui_afskrx.cpp @@ -0,0 +1,144 @@ +/* + * Copyright (C) 2014 Jared Boone, ShareBrained Technology, Inc. + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#include "ui_afskrx.hpp" + +#include "ui_spectrum.hpp" +#include "ui_console.hpp" + +#include "ff.h" + +#include "portapack.hpp" +using namespace portapack; + +#include "ui_receiver.hpp" + +namespace ui { + +AFSKRXView::AFSKRXView( + NavigationView& nav, + ReceiverModel& receiver_model +) : receiver_model(receiver_model) +{ + add_children({ { + &button_done, + &text_rx + } } ); + + button_done.on_select = [&nav](Button&){ + nav.pop(); + }; + + receiver_model.set_baseband_configuration({ + .mode = 6, + .sampling_rate = 3072000, + .decimation_factor = 4, + }); + receiver_model.set_baseband_bandwidth(1750000); +} + +AFSKRXView::~AFSKRXView() { + receiver_model.disable(); +} + +void AFSKRXView::on_show() { + auto& message_map = context().message_map(); + message_map.register_handler(Message::ID::AFSKData, + [this](Message* const p) { + const auto message = static_cast(p); + this->on_data_afsk(*message); + } + ); + + receiver_model.enable(); +} + +void AFSKRXView::on_hide() { + auto& message_map = context().message_map(); + message_map.unregister_handler(Message::ID::AFSKData); +} + +void AFSKRXView::on_data_afsk(const AFSKDataMessage& message) { + Coord oy,ny; + + //text_rx.set(to_string_dec_int(abs(message.data), 8, '0')); + + portapack::display.fill_rectangle({0,160-64,240,128},{32,32,32}); + + oy = 160; + for (int c=0;c<128;c++) { + ny = 160-(message.data[c]>>10); + portapack::display.draw_line({static_cast(c),oy},{static_cast(c+1),ny},{255,127,0}); + oy = ny; + } + + /*auto payload = message.packet.payload; + auto payload_length = message.packet.bits_received; + + std::string hex_data; + std::string hex_error; + uint8_t byte_data = 0; + uint8_t byte_error = 0; + for(size_t i=0; i> 1) & 7) == 7 ) { + hex_data += to_string_hex(byte_data, 2); + hex_error += to_string_hex(byte_error, 2); + } + } + + auto console = reinterpret_cast(widget_content.get()); + console->writeln(hex_data.substr(0, 240 / 8)); + + if( !f_error(&fil_tpms) ) { + rtc::RTC datetime; + rtcGetTime(&RTCD1, &datetime); + std::string timestamp = + to_string_dec_uint(datetime.year(), 4) + + to_string_dec_uint(datetime.month(), 2, '0') + + to_string_dec_uint(datetime.day(), 2, '0') + + to_string_dec_uint(datetime.hour(), 2, '0') + + to_string_dec_uint(datetime.minute(), 2, '0') + + to_string_dec_uint(datetime.second(), 2, '0'); + + const auto tuning_frequency = receiver_model.tuning_frequency(); + // TODO: function doesn't take uint64_t, so when >= 1<<32, weirdness will ensue! + const auto tuning_frequency_str = to_string_dec_uint(tuning_frequency, 10); + + std::string log = timestamp + " " + tuning_frequency_str + " FSK 38.4 19.2 " + hex_data + "/" + hex_error + "\r\n"; + f_puts(log.c_str(), &fil_tpms); + f_sync(&fil_tpms); + }*/ +} + +void AFSKRXView::focus() { + button_done.focus(); +} + +} /* namespace ui */ diff --git a/firmware/application/ui_afskrx.hpp b/firmware/application/ui_afskrx.hpp new file mode 100644 index 000000000..9651eb550 --- /dev/null +++ b/firmware/application/ui_afskrx.hpp @@ -0,0 +1,76 @@ +/* + * Copyright (C) 2014 Jared Boone, ShareBrained Technology, Inc. + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef __UI_AFSKRX_H__ +#define __UI_AFSKRX_H__ + +#include "ui.hpp" +#include "ui_font_fixed_8x16.hpp" +#include "ui_navigation.hpp" +#include "ui_painter.hpp" +#include "ui_widget.hpp" +#include "ui_console.hpp" + +#include "utility.hpp" + +#include "receiver_model.hpp" + +#include +#include +#include +#include + +namespace ui { + +class AFSKRXView : public View { +public: + AFSKRXView(NavigationView& nav, ReceiverModel& receiver_model); + ~AFSKRXView(); + + void focus() override; + + void on_show() override; + void on_hide() override; + +private: + ReceiverModel& receiver_model; + + std::unique_ptr widget_content; + + Button button_done { + { 4 * 8, 0 * 16, 3 * 8, 16 }, + " < " + }; + + Text text_rx { + { 1 * 8, 2 * 16, 28 * 8, 16 }, + "Ready..." + }; + + void on_tuning_frequency_changed(rf::Frequency f); + void on_edit_frequency(); + + void on_data_afsk(const AFSKDataMessage& message); +}; + +} /* namespace ui */ + +#endif/*__UI_RECEIVER_H__*/ diff --git a/firmware/application/ui_lcr.cpp b/firmware/application/ui_lcr.cpp index f086a7fd0..72dda734d 100644 --- a/firmware/application/ui_lcr.cpp +++ b/firmware/application/ui_lcr.cpp @@ -283,8 +283,8 @@ LCRView::LCRView( make_frame(); shared_memory.afsk_samples_per_bit = 228000/portapack::persistent_memory::afsk_bitrate(); - shared_memory.afsk_phase_inc_mark = portapack::persistent_memory::afsk_mark_freq()*(0x10000*256)/2280; - shared_memory.afsk_phase_inc_space = portapack::persistent_memory::afsk_space_freq()*(0x10000*256)/2280; + shared_memory.afsk_phase_inc_mark = portapack::persistent_memory::afsk_mark_freq()*(0x40000*256)/2280; + shared_memory.afsk_phase_inc_space = portapack::persistent_memory::afsk_space_freq()*(0x40000*256)/2280; shared_memory.afsk_fmmod = portapack::persistent_memory::afsk_bw() * 8; diff --git a/firmware/application/ui_navigation.cpp b/firmware/application/ui_navigation.cpp index 67141ddfc..74ef82b21 100644 --- a/firmware/application/ui_navigation.cpp +++ b/firmware/application/ui_navigation.cpp @@ -36,6 +36,9 @@ #include "ui_whistle.hpp" #include "ui_jammer.hpp" #include "ui_loadmodule.hpp" +#include "ui_afskrx.hpp" +#include "ui_xylos.hpp" +#include "ui_sigfrx.hpp" #include "portapack.hpp" #include "m4_startup.hpp" @@ -108,16 +111,19 @@ void NavigationView::focus() { /* SystemMenuView ********************************************************/ SystemMenuView::SystemMenuView(NavigationView& nav) { - add_items<11>({ { + add_items<10>({ { { "Play dead", ui::Color::red(), [&nav](){ nav.push(new PlayDeadView { nav, false }); } }, - { "Receiver", ui::Color::cyan(), [&nav](){ nav.push(new LoadModuleView { nav, md5_baseband, new ReceiverView { nav, receiver_model } }); } }, + { "Receiver", ui::Color::cyan(), [&nav](){ nav.push(new ReceiverView { nav, receiver_model }); } }, //{ "Nordic/BTLE RX", ui::Color::cyan(), [&nav](){ nav.push(new NotImplementedView { nav }); } }, { "Jammer", ui::Color::white(), [&nav](){ nav.push(new JammerView { nav, transmitter_model }); } }, - { "Audio file TX", ui::Color::white(), [&nav](){ nav.push(new NotImplementedView { nav }); } }, + //{ "Audio file TX", ui::Color::white(), [&nav](){ nav.push(new NotImplementedView { nav }); } }, //{ "Encoder TX", ui::Color::green(), [&nav](){ nav.push(new NotImplementedView { nav }); } }, { "Whistle", ui::Color::purple(), [&nav](){ nav.push(new WhistleView { nav, transmitter_model }); } }, - { "RDS TX", ui::Color::yellow(), [&nav](){ nav.push(new RDSView { nav, transmitter_model }); } }, - { "TEDI/LCR TX", ui::Color::orange(), [&nav](){ nav.push(new LCRView { nav, transmitter_model }); } }, + //{ "SIGFOX RX", ui::Color::orange(), [&nav](){ nav.push(new SIGFRXView { nav, receiver_model }); } }, + //{ "RDS TX", ui::Color::yellow(), [&nav](){ nav.push(new LoadModuleView { nav, md5_baseband_tx, new RDSView { nav, transmitter_model }}; } }, + { "Xylos TX", ui::Color::orange(), [&nav](){ nav.push(new XylosView { nav, transmitter_model }); } }, + //{ "AFSK RX", ui::Color::cyan(), [&nav](){ nav.push(new AFSKRXView { nav, receiver_model }); } }, + { "TEDI/LCR TX", ui::Color::yellow(), [&nav](){ nav.push(new LCRView { nav, transmitter_model }); } }, { "Setup", ui::Color::white(), [&nav](){ nav.push(new SetupMenuView { nav }); } }, { "About", ui::Color::white(), [&nav](){ nav.push(new AboutView { nav }); } }, { "Debug", ui::Color::white(), [&nav](){ nav.push(new DebugMenuView { nav }); } }, @@ -161,6 +167,8 @@ SystemView::SystemView( //if (persistent_memory::playing_dead() == 0x59) // navigation_view.push(new PlayDeadView { navigation_view, true }); //else + // navigation_view.push(new BMPView { navigation_view }); + navigation_view.push(new BMPView { navigation_view }); } @@ -187,51 +195,7 @@ BMPView::BMPView(NavigationView& nav) { } void BMPView::paint(Painter& painter) { - uint32_t pixel_data; - uint8_t p, by, c, count; - ui::Color linebuffer[185]; - ui::Coord px = 0, py = 302; - ui::Color palette[16]; - - // RLE_4 BMP loader with hardcoded size and no delta :( - - pixel_data = splash_bmp[0x0A]; - p = 0; - for (c = 0x36; c < (0x36+(16*4)); c+=4) { - palette[p++] = ui::Color(splash_bmp[c+2], splash_bmp[c+1], splash_bmp[c]); - } - - do { - by = splash_bmp[pixel_data++]; - if (by) { - count = by; - by = splash_bmp[pixel_data++]; - for (c = 0; c < count; c+=2) { - linebuffer[px++] = palette[by >> 4]; - if (px < 185) linebuffer[px++] = palette[by & 15]; - } - if (pixel_data & 1) pixel_data++; - } else { - by = splash_bmp[pixel_data++]; - if (by == 0) { - portapack::display.render_line({27, py}, 185, linebuffer); - py--; - px = 0; - } else if (by == 1) { - break; - } else if (by == 2) { - // Delta - } else { - count = by; - for (c = 0; c < count; c+=2) { - by = splash_bmp[pixel_data++]; - linebuffer[px++] = palette[by >> 4]; - if (px < 185) linebuffer[px++] = palette[by & 15]; - } - if (pixel_data & 1) pixel_data++; - } - } - } while (1); + portapack::display.drawBMP({(240-185)/2, 0}, splash_bmp); } /* PlayDeadView **********************************************************/ diff --git a/firmware/application/ui_xylos.cpp b/firmware/application/ui_xylos.cpp new file mode 100644 index 000000000..acf0f9426 --- /dev/null +++ b/firmware/application/ui_xylos.cpp @@ -0,0 +1,246 @@ +/* + * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#include "ui_xylos.hpp" + +#include "ch.h" +#include "evtimer.h" + +#include "ff.h" +#include "hackrf_gpio.hpp" +#include "portapack.hpp" +#include "radio.hpp" + +#include "hackrf_hal.hpp" +#include "portapack_shared_memory.hpp" +#include "portapack_persistent_memory.hpp" + +#include +#include + +using namespace hackrf::one; + +namespace ui { + +void XylosView::focus() { + city_code.focus(); +} + +XylosView::~XylosView() { + transmitter_model.disable(); +} + +void XylosView::paint(Painter& painter) { + +} + +void XylosView::upd_message() { + uint8_t c; + + ccirmessage[0] = '0'; + ccirmessage[1] = '0'; + ccirmessage[2] = '0'; + ccirmessage[3] = '0'; + + ccirmessage[4] = (city_code.value() / 10) + 0x30; + ccirmessage[5] = (city_code.value() % 10) + 0x30; + ccirmessage[6] = family_code.value() + 0x30; + if (checkbox_wcsubfamily.value() == false) + ccirmessage[7] = subfamily_code.value() + 0x30; + else + ccirmessage[7] = 'A'; + if (checkbox_wcid.value() == false) { + ccirmessage[8] = (receiver_code.value() / 10) + 0x30; + ccirmessage[9] = (receiver_code.value() % 10) + 0x30; + } else { + ccirmessage[8] = 'A'; + ccirmessage[9] = 'A'; + } + + ccirmessage[10] = 'B'; + + ccirmessage[11] = options_ra.selected_index() + 0x30; + ccirmessage[12] = options_rb.selected_index() + 0x30; + ccirmessage[13] = options_rc.selected_index() + 0x30; + ccirmessage[14] = '0'; + + ccirmessage[15] = 'B'; + + ccirmessage[16] = '0'; + ccirmessage[17] = '0'; + ccirmessage[18] = '0'; + ccirmessage[19] = '0'; + + // Stuffing + for (c=1; c<20; c++) { + if (ccirmessage[c] == ccirmessage[c-1]) ccirmessage[c] = 'E'; + } + + ccirmessage[20] = 0; + + text_debug.set(ccirmessage); +} + +XylosView::XylosView( + NavigationView& nav, + TransmitterModel& transmitter_model +) : transmitter_model(transmitter_model) +{ + static constexpr Style style_val { + .font = font::fixed_8x16, + .background = Color::green(), + .foreground = Color::black(), + }; + + static constexpr Style style_cancel { + .font = font::fixed_8x16, + .background = Color::red(), + .foreground = Color::black(), + }; + + transmitter_model.set_modulation(19); + + add_children({ { + &text_title, + &text_city, + &city_code, + &text_family, + &family_code, + &text_subfamily, + &subfamily_code, + &checkbox_wcsubfamily, + &text_receiver, + &receiver_code, + &checkbox_wcid, + &text_freq, + &options_freq, + &text_ra, + &options_ra, + &text_rb, + &options_rb, + &text_rc, + &options_rc, + &text_progress, + &text_debug, + &button_transmit, + &button_exit + } }); + + city_code.set_value(18); + family_code.set_value(1); + subfamily_code.set_value(1); + receiver_code.set_value(1); + options_freq.set_selected_index(5); + + checkbox_wcsubfamily.set_value(true); + checkbox_wcid.set_value(true); + + city_code.on_change = [this](int32_t v) { + (void)v; + XylosView::upd_message(); + }; + family_code.on_change = [this](int32_t v) { + (void)v; + XylosView::upd_message(); + }; + subfamily_code.on_change = [this](int32_t v) { + (void)v; + XylosView::upd_message(); + }; + receiver_code.on_change = [this](int32_t v) { + (void)v; + XylosView::upd_message(); + }; + checkbox_wcsubfamily.on_select = [this](Checkbox&) { + XylosView::upd_message(); + }; + checkbox_wcid.on_select = [this](Checkbox&) { + XylosView::upd_message(); + }; + options_ra.on_change = [this](size_t n, OptionsField::value_t v) { + (void)n; + (void)v; + XylosView::upd_message(); + }; + options_rb.on_change = [this](size_t n, OptionsField::value_t v) { + (void)n; + (void)v; + XylosView::upd_message(); + }; + options_rc.on_change = [this](size_t n, OptionsField::value_t v) { + (void)n; + (void)v; + XylosView::upd_message(); + }; + + button_transmit.set_style(&style_val); + + button_transmit.on_select = [this,&transmitter_model](Button&) { + if (txing == false) { + upd_message(); + + auto& message_map = context().message_map(); + + message_map.unregister_handler(Message::ID::TXDone); + + message_map.register_handler(Message::ID::TXDone, + [this,&transmitter_model](Message* const p) { + uint8_t c; + char progress[21]; + const auto message = static_cast(p); + if (message->n == 25) { + transmitter_model.disable(); + for (c=0;c<20;c++) + progress[c] = ' '; + progress[20] = 0; + text_progress.set(progress); + txing = false; + button_transmit.set_style(&style_val); + button_transmit.set_text("START"); + } else { + for (c=0;cn;c++) + progress[c] = ' '; + progress[c] = '.'; + progress[++c] = 0; + text_progress.set(progress); + } + } + ); + + shared_memory.xylos_transmit_done = false; + memcpy(shared_memory.xylosdata, ccirmessage, 21); + + transmitter_model.set_tuning_frequency(87700000); //xylos_freqs[options_freq.selected_index()]); + + txing = true; + button_transmit.set_style(&style_cancel); + button_transmit.set_text("Wait"); + transmitter_model.enable(); + } + }; + + button_exit.on_select = [&nav](Button&){ + nav.pop(); + }; + +} + +} /* namespace ui */ diff --git a/firmware/application/ui_xylos.hpp b/firmware/application/ui_xylos.hpp new file mode 100644 index 000000000..cf3b2640a --- /dev/null +++ b/firmware/application/ui_xylos.hpp @@ -0,0 +1,191 @@ +/* + * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#include "ui.hpp" +#include "ui_widget.hpp" +#include "ui_painter.hpp" +#include "ui_menu.hpp" +#include "ui_navigation.hpp" +#include "ui_font_fixed_8x16.hpp" +#include "clock_manager.hpp" +#include "message.hpp" +#include "rf_path.hpp" +#include "max2837.hpp" +#include "volume.hpp" +#include "transmitter_model.hpp" + +namespace ui { + +class XylosView : public View { +public: + XylosView(NavigationView& nav, TransmitterModel& transmitter_model); + ~XylosView(); + + void upd_message(); + void focus() override; + void paint(Painter& painter) override; + +private: + bool txing = false; + const rf::Frequency xylos_freqs[6] = { 31325000, 31387500, 31437500, 31475000, 31687500, 31975000 }; + char ccirmessage[21]; + + TransmitterModel& transmitter_model; + + Text text_title { + { 1 * 8, 1 * 16, 11, 16 }, + "BH Xylos TX" + }; + + Text text_city { + { 4 * 8, 3 * 16, 11 * 8, 16 }, + "Code ville:" + }; + NumberField city_code { + { 16 * 8, 3 * 16 }, + 2, + { 0, 99 }, + 1, + ' ' + }; + + Text text_family { + { 7 * 8, 4 * 16, 8 * 8, 16 }, + "Famille:" + }; + NumberField family_code { + { 16 * 8, 4 * 16 }, + 2, + { 0, 9 }, + 1, + ' ' + }; + + Text text_subfamily { + { 2 * 8, 5 * 16 + 4, 13 * 8, 16 }, + "Sous-famille:" + }; + NumberField subfamily_code { + { 16 * 8, 5 * 16 + 4 }, + 2, + { 0, 9 }, + 1, + ' ' + }; + Checkbox checkbox_wcsubfamily { + { 20 * 8, 5 * 16}, + "Toutes" + }; + + Text text_receiver { + { 2 * 8, 7 * 16 + 6, 13 * 8, 16 }, + "ID recepteur:" + }; + NumberField receiver_code { + { 16 * 8, 7 * 16 + 6 }, + 2, + { 0, 99 }, + 1, + ' ' + }; + Checkbox checkbox_wcid { + { 20 * 8, 7 * 16 + 4}, + "Tous" + }; + + Text text_freq { + { 5 * 8, 9 * 16, 10 * 8, 16 }, + "Frequence:" + }; + OptionsField options_freq { + { 16 * 8, 9 * 16 }, + 6, + { + { "31.3250", 0 }, + { "31.3875", 1 }, + { "31.4375", 2 }, + { "31.4750", 3 }, + { "31.6875", 4 }, + { "31.9750", 5 } + } + }; + + Text text_ra { + { 12, 11 * 16, 8 * 8, 16 }, + "Relais 1" + }; + OptionsField options_ra { + { 16, 12 * 16 }, + 3, + { + { "Ignorer", 0 }, + { " OFF ", 1 }, + { " ON ", 2 } + } + }; + Text text_rb { + { 88, 11 * 16, 8 * 8, 16 }, + "Relais 2" + }; + OptionsField options_rb { + { 92, 12 * 16 }, + 3, + { + { "Ignorer", 0 }, + { " OFF ", 1 }, + { " ON ", 2 } + } + }; + Text text_rc { + { 164, 11 * 16, 8 * 8, 16 }, + "Relais 3" + }; + OptionsField options_rc { + { 168, 12 * 16 }, + 3, + { + { "Ignorer", 0 }, + { " OFF ", 1 }, + { " ON ", 2 } + } + }; + + Text text_progress { + { 5 * 8, 13 * 16, 20 * 8, 16 }, + " " + }; + Text text_debug { + { 5 * 8, 14 * 16, 20 * 8, 16 }, + "--------------------" + }; + + Button button_transmit { + { 2 * 8, 16 * 16, 64, 32 }, + "START" + }; + + Button button_exit { + { 21 * 8, 16 * 16, 64, 32 }, + "Exit" + }; +}; + +} /* namespace ui */ diff --git a/firmware/baseband-tx.bin b/firmware/baseband-tx.bin index 8b80d410f606359fdd11fca33c0918f04e16857e..96a45193046ba060a1073a8ba4314a313831117e 100644 GIT binary patch delta 5014 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 @@ -76,7 +77,7 @@ void LCRFSKProcessor::execute(buffer_c8_t buffer) { s++; } - //sample = sine_table_f32[(aphase & 0x00FF0000)>>16]; + sample = (sine_table_f32[(aphase & 0x03FF0000)>>18]*255); //FM frq = sample * shared_memory.afsk_fmmod; @@ -84,8 +85,8 @@ void LCRFSKProcessor::execute(buffer_c8_t buffer) { phase = (phase + frq); sphase = phase + (256<<16); - //re = sine_table_f32[(sphase & 0x00FF0000)>>16]; - //im = sine_table_f32[(phase & 0x00FF0000)>>16]; + re = (sine_table_f32[(sphase & 0x03FF0000)>>18]*127); + im = (sine_table_f32[(phase & 0x03FF0000)>>18]*127); buffer.p[i] = {(int8_t)re,(int8_t)im}; } diff --git a/firmware/baseband-tx/proc_jammer.cpp b/firmware/baseband-tx/proc_jammer.cpp index a8d4b0eb1..b7950c33a 100644 --- a/firmware/baseband-tx/proc_jammer.cpp +++ b/firmware/baseband-tx/proc_jammer.cpp @@ -61,7 +61,7 @@ void JammerProcessor::execute(buffer_c8_t buffer) { if (ir > 15) ir = 0; if (shared_memory.jammer_ranges[ir].active == true) break; } - jammer_bw = shared_memory.jammer_ranges[ir].width / 4; + jammer_bw = shared_memory.jammer_ranges[ir].width / 2; message.freq = shared_memory.jammer_ranges[ir].center; shared_memory.application_queue.push(message); @@ -89,7 +89,7 @@ void JammerProcessor::execute(buffer_c8_t buffer) { } aphase += 8830; - sample = sine_table_f32[(aphase & 0x00FF0000)>>16]; + sample = sine_table_f32[(aphase & 0x03FF0000)>>18]*256; //FM frq = sample * jammer_bw; // Bandwidth @@ -97,8 +97,8 @@ void JammerProcessor::execute(buffer_c8_t buffer) { phase = (phase + frq); sphase = phase + (256<<16); - re = sine_table_f32[(sphase & 0x00FF0000)>>16]; - im = sine_table_f32[(phase & 0x00FF0000)>>16]; + re = sine_table_f32[(sphase & 0x03FF0000)>>18]*127; + im = sine_table_f32[(phase & 0x03FF0000)>>18]*127; buffer.p[i] = {(int8_t)re,(int8_t)im}; } diff --git a/firmware/baseband-tx/proc_xylos.cpp b/firmware/baseband-tx/proc_xylos.cpp new file mode 100644 index 000000000..59afcffa4 --- /dev/null +++ b/firmware/baseband-tx/proc_xylos.cpp @@ -0,0 +1,75 @@ +/* + * Copyright (C) 2014 Jared Boone, ShareBrained Technology, Inc. + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#include "proc_xylos.hpp" +#include "portapack_shared_memory.hpp" +#include "sine_table.hpp" + +#include + +void XylosProcessor::execute(buffer_c8_t buffer) { + + for (size_t i = 0; i= 9) { + s = 0; + + if (sample_count >= CCIR_TONELENGTH) { + if (shared_memory.xylos_transmit_done == false) { + message.n = byte_pos; // Progress + shared_memory.application_queue.push(message); + digit = shared_memory.xylosdata[byte_pos++]; + } + + if (!digit) { + message.n = 25; // Done code + shared_memory.xylos_transmit_done = true; + shared_memory.application_queue.push(message); + digit = 0; + } + + if (digit > '9') digit -= 7; + digit -= 0x30; + + sample_count = 0; + } else { + sample_count++; + } + + aphase += ccir_phases[digit]; + } else { + s++; + } + + sample = (sine_table_f32[(aphase & 0x03FF0000)>>18]*255); + + //FM + frq = sample * 160; // 20kHz wide (?) + + phase = (phase + frq); + sphase = phase + (256<<16); + + re = (sine_table_f32[(sphase & 0x03FF0000)>>18]*127); + im = (sine_table_f32[(phase & 0x03FF0000)>>18]*127); + + buffer.p[i] = {(int8_t)re,(int8_t)im}; + } +} diff --git a/firmware/baseband-tx/proc_xylos.hpp b/firmware/baseband-tx/proc_xylos.hpp new file mode 100644 index 000000000..a7a4a78d8 --- /dev/null +++ b/firmware/baseband-tx/proc_xylos.hpp @@ -0,0 +1,64 @@ +/* + * Copyright (C) 2014 Jared Boone, ShareBrained Technology, Inc. + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef __PROC_XYLOS_H__ +#define __PROC_XYLOS_H__ + +#include "baseband_processor.hpp" + +#define CCIR_TONELENGTH 22800 +#define PHASEV 294.34 + +class XylosProcessor : public BasebandProcessor { +public: + void execute(buffer_c8_t buffer) override; + +private: + uint32_t ccir_phases[16] = { + 1981*PHASEV, + 1124*PHASEV, + 1197*PHASEV, + 1275*PHASEV, + 1358*PHASEV, + 1446*PHASEV, + 1540*PHASEV, + 1640*PHASEV, + 1747*PHASEV, + 1860*PHASEV, + 2400*PHASEV, + 930*PHASEV, + 2247*PHASEV, + 991*PHASEV, + 2110*PHASEV, + 1055*PHASEV + }; + + int8_t re, im; + uint8_t s; + uint8_t byte_pos = 0; + uint8_t digit = 0; + uint32_t sample_count = CCIR_TONELENGTH; + uint32_t aphase, phase, sphase; + int32_t sample, frq; + TXDoneMessage message; +}; + +#endif diff --git a/firmware/baseband.bin b/firmware/baseband.bin index c972722a57fd13f0595a0644afe3de482da1c8ef..d5656041c1de84757f86619b8904a197adbf8760 100644 GIT binary patch delta 6170 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 X_=^ktdAaBpnMN6!8@j> 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 diff --git a/firmware/baseband/Makefile b/firmware/baseband/Makefile index ffb20d12a..f36ce1081 100755 --- a/firmware/baseband/Makefile +++ b/firmware/baseband/Makefile @@ -140,6 +140,8 @@ CPPSRC = main.cpp \ proc_ais.cpp \ proc_wideband_spectrum.cpp \ proc_tpms.cpp \ + proc_afskrx.cpp \ + proc_sigfrx.cpp \ dsp_squelch.cpp \ clock_recovery.cpp \ packet_builder.cpp \ diff --git a/firmware/baseband/dsp_fir_taps.hpp b/firmware/baseband/dsp_fir_taps.hpp index 9839a9def..9bf5b5f37 100644 --- a/firmware/baseband/dsp_fir_taps.hpp +++ b/firmware/baseband/dsp_fir_taps.hpp @@ -180,6 +180,79 @@ constexpr fir_taps_real<64> taps_64_lp_130_169_tfilter { } }, }; +// 41kHz/70kHz @ 192kHz +// http://t-filter.appspot.com +constexpr fir_taps_real<64> taps_64_lp_410_700_tfilter { + .pass_frequency_normalized = 0.213f, + .stop_frequency_normalized = 0.364f, + .taps = { { + 0, + 0, + 0, + 0, + -1, + 0, + 3, + -3, + -7, + 12, + 10, + -35, + -3, + 79, + -37, + -138, + 146, + 180, + -361, + -126, + 688, + -149, + -1062, + 800, + 1308, + -1991, + -1092, + 3963, + -286, + -7710, + 6211, + 32368, + 32368, + 6211, + -7710, + -286, + 3963, + -1092, + -1991, + 1308, + 800, + -1062, + -149, + 688, + -126, + -361, + 180, + 146, + -138, + -37, + 79, + -3, + -35, + 10, + 12, + -7, + -3, + 3, + 0, + -1, + 0, + 0, + 0, + 0 + } }, +}; + /* Wideband audio filter */ /* 96kHz int16_t input * -> FIR filter, <15kHz (0.156fs) pass, >19kHz (0.198fs) stop diff --git a/firmware/baseband/main.cpp b/firmware/baseband/main.cpp index 785e50a4d..701efba0c 100755 --- a/firmware/baseband/main.cpp +++ b/firmware/baseband/main.cpp @@ -57,9 +57,11 @@ #include "proc_am_audio.hpp" #include "proc_nfm_audio.hpp" #include "proc_wfm_audio.hpp" -#include "proc_ais.hpp" +//#include "proc_ais.hpp" #include "proc_wideband_spectrum.hpp" -#include "proc_tpms.hpp" +//#include "proc_tpms.hpp" +#include "proc_afskrx.hpp" +#include "proc_sigfrx.hpp" #include "clock_recovery.hpp" #include "packet_builder.hpp" @@ -356,7 +358,7 @@ void ram_loop_fn(void) { void wait_for_switch(void) { memcpy(&ram_loop[0], reinterpret_cast(&ram_loop_fn), 32); loop_ptr = reinterpret_cast(&ram_loop[0]); - ReadyForSwitchMessage message { true }; + ReadyForSwitchMessage message; shared_memory.application_queue.push(message); (*loop_ptr)(); return; @@ -402,19 +404,29 @@ int main(void) { baseband_thread.baseband_processor = new WidebandFMAudio(); break; - case 3: + /*case 3: direction = baseband::Direction::Receive; baseband_thread.baseband_processor = new AISProcessor(); - break; + break;*/ case 4: direction = baseband::Direction::Receive; baseband_thread.baseband_processor = new WidebandSpectrum(); break; - case 5: + /*case 5: direction = baseband::Direction::Receive; baseband_thread.baseband_processor = new TPMSProcessor(); + break;*/ + + case 6: + direction = baseband::Direction::Receive; + baseband_thread.baseband_processor = new AFSKRXProcessor(); + break; + + case 7: + direction = baseband::Direction::Receive; + baseband_thread.baseband_processor = new SIGFRXProcessor(); break; case 0xFF: diff --git a/firmware/baseband/proc_afskrx.cpp b/firmware/baseband/proc_afskrx.cpp new file mode 100644 index 000000000..a75149548 --- /dev/null +++ b/firmware/baseband/proc_afskrx.cpp @@ -0,0 +1,122 @@ +/* + * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#include "proc_afskrx.hpp" +#include "sine_table.hpp" +#include "portapack_shared_memory.hpp" + +using namespace lpc43xx; + +void AFSKRXProcessor::execute(buffer_c8_t buffer) { + /* Called every 2048/3072000 second -- 1500Hz. */ + + auto decimator_out = decimator.execute(buffer); + + const buffer_c16_t work_baseband_buffer { + (complex16_t*)decimator_out.p, + sizeof(*decimator_out.p) * decimator_out.count + }; + + /* 96kHz complex[64] + * -> FIR filter, <6kHz (0.063fs) pass, gain 1.0 + * -> 48kHz int16_t[32] */ + auto channel = channel_filter.execute(decimator_out, work_baseband_buffer); + + const buffer_s16_t work_audio_buffer { + (int16_t*)decimator_out.p, + sizeof(*decimator_out.p) * decimator_out.count + }; + + /* 48kHz complex[32] + * -> FM demodulation + * -> 48kHz int16_t[32] */ + auto audio = demod.execute(channel, work_audio_buffer); + + /*static uint64_t audio_present_history = 0; + const auto audio_present_now = squelch.execute(audio); + audio_present_history = (audio_present_history << 1) | (audio_present_now ? 1 : 0); + const bool audio_present = (audio_present_history != 0); +*/ + //if( !audio_present ) { + // Zero audio buffer. + /*for(size_t i=0; i 1) + audio.p[i] = 4096; + else + audio.p[i] = -4096; + }*/ + //} + + audio_hpf.execute_in_place(audio); + + for(size_t i=0; i 10) { + if (audio.p[i] > 2000) + sign = 1; + if (audio.p[i] < -2000) + sign = 0; + spur = 0; + } else { + spur++; + } + if (sign != prev_sign) { + if (freq_timer < 15) // 48 + bit = 0; + else + bit++; + freq_timer = 0; + } + prev_sign = sign; + if (freq_timer < 1000) freq_timer++; // TODO: Limit in a more intelligent way + } + + if (bit_timer >= 40) { + bit_timer = 0; + // Check bit state here ! + } else { + bit_timer++; + } + + if (sc >= 600) { + sc = 0; + AFSKDataMessage message; + memcpy(message.data,aud,128*2); + shared_memory.application_queue.push(message); + audc = 0; + } else { + sc++; + } + + if (audc < 4) { + memcpy(aud+(audc*32),audio.p,32*2); + audc++; + } + + fill_audio_buffer(audio); +} + +void AFSKRXProcessor::data_handler( + const double data +) { + /*AFSKDataMessage message; + message.data = 'T'; + shared_memory.application_queue.push(message);*/ +} diff --git a/firmware/baseband/proc_afskrx.hpp b/firmware/baseband/proc_afskrx.hpp new file mode 100644 index 000000000..275d174c0 --- /dev/null +++ b/firmware/baseband/proc_afskrx.hpp @@ -0,0 +1,68 @@ +/* + * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#ifndef __PROC_AFSKRX_H__ +#define __PROC_AFSKRX_H__ + +#include "baseband_processor.hpp" + +#include "channel_decimator.hpp" +#include "dsp_decimate.hpp" +#include "dsp_demodulate.hpp" +#include "dsp_fir_taps.hpp" +#include "dsp_iir.hpp" +#include "dsp_iir_config.hpp" +#include "dsp_squelch.hpp" + +#include "message.hpp" + +#include +#include +#include + +class AFSKRXProcessor : public BasebandProcessor { +public: + AFSKRXProcessor() { + decimator.set_decimation_factor(ChannelDecimator::DecimationFactor::By32); + channel_filter.configure(channel_filter_taps.taps, 2); + } + + void execute(buffer_c8_t buffer) override; + +private: + ChannelDecimator decimator; + const fir_taps_real<64>& channel_filter_taps = taps_64_lp_042_078_tfilter; + dsp::decimate::FIRAndDecimateComplex channel_filter; + dsp::demodulate::FM demod { 48000, 5000 }; + + IIRBiquadFilter audio_hpf { audio_hpf_config }; + //FMSquelch squelch; + + uint16_t bit_timer = 0, freq_timer = 0; + uint16_t sc; + uint8_t audc, spur, sign, prev_sign, bit = 0; + + int16_t aud[128]; + + void data_handler(const double data); +}; + +#endif/*__PROC_TPMS_H__*/ diff --git a/firmware/common/lcd_ili9341.cpp b/firmware/common/lcd_ili9341.cpp index 6d916e9af..e7d8476c3 100644 --- a/firmware/common/lcd_ili9341.cpp +++ b/firmware/common/lcd_ili9341.cpp @@ -246,6 +246,70 @@ void ILI9341::render_line(const ui::Point p, const uint8_t count, const ui::Colo io.lcd_write_pixels(line_buffer, count); } +void ILI9341::drawBMP(const ui::Point p, const uint8_t * bitmap) { + uint32_t pixel_data, pal_data; + uint8_t pal, by, c, count; + ui::Color linebuffer[240]; + ui::Coord px = 0, py; + ui::Color palette[16]; + uint32_t bmpwidth, bmpheight; + + // RLE_4 BMP loader with hardcoded size and no delta :( + + if (bitmap[0x1E] != 2) return; // Bad compression type + bmpwidth = static_cast( + (bitmap[0x12]) | + (bitmap[0x13] << 8) | + (bitmap[0x14] << 16)| + (bitmap[0x15] << 24) ); + bmpheight = static_cast( + (bitmap[0x16]) | + (bitmap[0x17] << 8) | + (bitmap[0x18] << 16)| + (bitmap[0x19] << 24) ); + + pal_data = bitmap[0x0E] + 0x0E; + + pixel_data = bitmap[0x0A]; + pal = 0; + for (c = 0; c < (16*4); c+=4) { + palette[pal++] = ui::Color(bitmap[c+2+pal_data], bitmap[c+1+pal_data], bitmap[c+pal_data]); + } + + py = bmpheight + 16; + do { + by = bitmap[pixel_data++]; + if (by) { + count = by; + by = bitmap[pixel_data++]; + for (c = 0; c < count; c+=2) { + linebuffer[px++] = palette[by >> 4]; + if (px < bmpwidth) linebuffer[px++] = palette[by & 15]; + } + if (pixel_data & 1) pixel_data++; + } else { + by = bitmap[pixel_data++]; + if (by == 0) { + render_line({p.x, p.y + py}, bmpwidth, linebuffer); + py--; + px = 0; + } else if (by == 1) { + break; + } else if (by == 2) { + // Delta + } else { + count = by; + for (c = 0; c < count; c+=2) { + by = bitmap[pixel_data++]; + linebuffer[px++] = palette[by >> 4]; + if (px < bmpwidth) linebuffer[px++] = palette[by & 15]; + } + if (pixel_data & 1) pixel_data++; + } + } + } while (1); +} + void ILI9341::draw_line(const ui::Point start, const ui::Point end, const ui::Color color) { int x0 = start.x; int y0 = start.y; diff --git a/firmware/common/lcd_ili9341.hpp b/firmware/common/lcd_ili9341.hpp index ebabc8620..61eca86cf 100644 --- a/firmware/common/lcd_ili9341.hpp +++ b/firmware/common/lcd_ili9341.hpp @@ -54,6 +54,7 @@ public: ); void draw_pixel(const ui::Point p, const ui::Color color); + void drawBMP(const ui::Point p, const uint8_t * bitmap); void render_line(const ui::Point p, const uint8_t count, const ui::Color* line_buffer); template diff --git a/firmware/common/message.hpp b/firmware/common/message.hpp index 039660a07..bc4af7baa 100644 --- a/firmware/common/message.hpp +++ b/firmware/common/message.hpp @@ -50,6 +50,7 @@ public: SDCardStatus = 10, Retune = 11, ReadyForSwitch = 12, + AFSKData = 13, MAX }; @@ -236,6 +237,16 @@ public: TPMSPacket packet; }; +class AFSKDataMessage : public Message { +public: + constexpr AFSKDataMessage( + ) : Message { ID::AFSKData } + { + } + + int16_t data[128] = {0}; +}; + class ShutdownMessage : public Message { public: constexpr ShutdownMessage( @@ -269,12 +280,9 @@ public: class ReadyForSwitchMessage : public Message { public: ReadyForSwitchMessage( - bool ok ) : Message { ID::ReadyForSwitch } { } - - const bool ok = false; }; class RetuneMessage : public Message { diff --git a/firmware/common/portapack_shared_memory.hpp b/firmware/common/portapack_shared_memory.hpp index 1bbe05c85..5361ea601 100644 --- a/firmware/common/portapack_shared_memory.hpp +++ b/firmware/common/portapack_shared_memory.hpp @@ -59,6 +59,9 @@ struct SharedMemory { bool afsk_transmit_done; JammerRange jammer_ranges[16]; + + char xylosdata[21]; + bool xylos_transmit_done; }; extern SharedMemory& shared_memory; diff --git a/firmware/common/ui_widget.cpp b/firmware/common/ui_widget.cpp index bae025eea..3972c6ec5 100644 --- a/firmware/common/ui_widget.cpp +++ b/firmware/common/ui_widget.cpp @@ -433,7 +433,6 @@ bool Checkbox::on_key(const KeyEvent key) { if( on_select ) { on_select(*this); - return true; } }