From 5d31a839c5f5830eb3a4fa241f3422f6a792194d Mon Sep 17 00:00:00 2001 From: mikecarper Date: Wed, 21 Oct 2026 23:57:13 -0700 Subject: [PATCH] Add MeshPocket message board and worldwide map --- .github/workflows/run-unit-tests.yml | 2 + build_legacy.sh | 3 + docs/mesh_pocket_gui.md | 44 + examples/companion_radio/AbstractUITask.h | 7 + examples/companion_radio/DataStore.cpp | 21 + examples/companion_radio/DataStore.h | 8 + examples/companion_radio/MyMesh.cpp | 10 +- examples/companion_radio/MyMesh.h | 4 + examples/companion_radio/ui-new/PocketGui.h | 385 ++ examples/companion_radio/ui-new/UITask.cpp | 444 ++- examples/companion_radio/ui-new/UITask.h | 16 + scripts/check_firmware_capabilities.py | 9 + scripts/check_firmware_ram.py | 4 +- scripts/firmware_build_recipe.py | 2 +- scripts/firmware_memory_manifest.py | 4 + scripts/package_cascade_release.py | 4 + scripts/package_pocket_gui_license.py | 141 + src/helpers/ui/CompanionMessageHistory.h | 6 +- src/helpers/ui/GxEPDDisplay.cpp | 19 + src/helpers/ui/GxEPDDisplay.h | 27 + src/helpers/ui/PocketGuiConfig.h | 22 + src/helpers/ui/PocketGuiSettings.h | 213 ++ src/helpers/ui/PocketWorldMap.cpp | 227 ++ src/helpers/ui/PocketWorldMap.h | 31 + src/helpers/ui/PocketWorldMapData.generated.h | 3376 +++++++++++++++++ .../pocket_gui/U8g2_for_Adafruit_GFX.h | 40 + .../pocket_gui/helpers/ui/GxEPDDisplay.h | 69 + .../pocket_gui/test_pocket_bindings.cpp | 132 + .../pocket_gui/test_pocket_controls.cpp | 131 + .../pocket_gui/test_pocket_render.cpp | 237 ++ .../fixtures/pocket_gui/test_pocket_state.cpp | 203 + .../fixtures/pocket_gui/test_sent_history.cpp | 47 + .../pocket_world_map/test_world_map.cpp | 185 + test/test_firmware_ram.py | 19 + test/test_pocket_gui.py | 112 + test/test_pocket_gui_license.py | 171 + test/test_pocket_world_map.py | 119 + tools/meshpocket_map/PocketGui-NOTICE.txt | 100 + tools/meshpocket_map/README.md | 49 + tools/meshpocket_map/pack_world_map.py | 213 ++ variants/mesh_pocket/platformio.ini | 3 + 41 files changed, 6852 insertions(+), 7 deletions(-) create mode 100644 docs/mesh_pocket_gui.md create mode 100644 examples/companion_radio/ui-new/PocketGui.h create mode 100644 scripts/package_pocket_gui_license.py create mode 100644 src/helpers/ui/PocketGuiConfig.h create mode 100644 src/helpers/ui/PocketGuiSettings.h create mode 100644 src/helpers/ui/PocketWorldMap.cpp create mode 100644 src/helpers/ui/PocketWorldMap.h create mode 100644 src/helpers/ui/PocketWorldMapData.generated.h create mode 100644 test/fixtures/pocket_gui/U8g2_for_Adafruit_GFX.h create mode 100644 test/fixtures/pocket_gui/helpers/ui/GxEPDDisplay.h create mode 100644 test/fixtures/pocket_gui/test_pocket_bindings.cpp create mode 100644 test/fixtures/pocket_gui/test_pocket_controls.cpp create mode 100644 test/fixtures/pocket_gui/test_pocket_render.cpp create mode 100644 test/fixtures/pocket_gui/test_pocket_state.cpp create mode 100644 test/fixtures/pocket_gui/test_sent_history.cpp create mode 100644 test/fixtures/pocket_world_map/test_world_map.cpp create mode 100644 test/test_pocket_gui.py create mode 100644 test/test_pocket_gui_license.py create mode 100644 test/test_pocket_world_map.py create mode 100644 tools/meshpocket_map/PocketGui-NOTICE.txt create mode 100644 tools/meshpocket_map/README.md create mode 100644 tools/meshpocket_map/pack_world_map.py diff --git a/.github/workflows/run-unit-tests.yml b/.github/workflows/run-unit-tests.yml index efcccc0b7..3ed6fe7ad 100644 --- a/.github/workflows/run-unit-tests.yml +++ b/.github/workflows/run-unit-tests.yml @@ -552,6 +552,7 @@ jobs: python3 -B test/test_meshtext_transport.py -v python3 -B test/test_meshtext_primary_preamble.py -v python3 -B test/test_meshtext_license.py -v + python3 -B test/test_pocket_gui_license.py -v python3 -B test/test_beacon_frames.py -v python3 -B test/test_beacon_manager.py -v python3 -B test/test_beacon_radio.py -v @@ -853,6 +854,7 @@ jobs: run: >- python3 -B -m unittest test_message_navigation test_companion_reader test_reader_touch_coordinates + test_pocket_gui test_pocket_world_map test_touch_debug_overlay test_touch_debug_cli test_color_theme test_indicator_messages_profile test_t096_message_footer_profile test_indicator_display_profile test_indicator_render_profile diff --git a/build_legacy.sh b/build_legacy.sh index e76c3d3e3..1c06f3549 100755 --- a/build_legacy.sh +++ b/build_legacy.sh @@ -4936,6 +4936,9 @@ collect_build_artifacts() { python3 scripts/package_meshtext_license.py collect "$build_output_dir" \ --stem "${OUTPUT_DIR}/${firmware_filename}" || return $? + python3 scripts/package_pocket_gui_license.py collect "$build_output_dir" \ + --stem "${OUTPUT_DIR}/${firmware_filename}" || return $? + python3 scripts/firmware_memory_manifest.py package "$build_output_dir" \ --stem "${OUTPUT_DIR}/${firmware_filename}" || return $? } diff --git a/docs/mesh_pocket_gui.md b/docs/mesh_pocket_gui.md new file mode 100644 index 000000000..ba0bef134 --- /dev/null +++ b/docs/mesh_pocket_gui.md @@ -0,0 +1,44 @@ +# MeshPocket Full Companion display + +Full Companion on MeshPocket includes a channel message board, a worldwide +coastline map and display settings. Other boards keep their existing home UI. +USB, Bluetooth, notifications and the shared Reader remain available. + +Use the Pocket's user button: + +| Page | One click | Two clicks | Hold | +| --- | --- | --- | --- | +| Normal pages | Next page | Previous page | Page action | +| Message board, browsing | Older message | Newer message | Finish browsing | +| Map, zooming | Zoom in | Zoom out | Save and finish | +| Settings, editing | Change value | Next setting | Save and finish | +| Network or Radio 2 | Next page | Previous page | Open Reader | + +Hold on the message board, map or settings page to enter its mode. Three or +four clicks on the board select the next or previous configured channel. +The inbox still opens individual messages, including direct messages. + +The board shares the existing 32-message history, showing the selected channel +with sender names and local timestamps. Successfully sent app messages appear +there too. History is held in RAM; it is not a permanent message archive. + +Settings cover channel, text size, sender name length, screen orientation, +light/dark theme, return-to-board delay, full refresh interval and map zoom. +They use a separate checked, atomically replaced record in primary storage. +Existing node, channel and contact formats are unchanged. Timezone comes from +the existing node preferences. + +The map centres on this node's location, or the first contact with a location. +With no locations it shows a world overview. Contacts appear as dots, with +nearby names at closer zooms. The view spans 20,000 km down to 5 km vertically; +coastline detail stays coarse at close zooms. It contains no streets, terrain, +regional downloads or ocean tiles. See the [map data notes](../tools/meshpocket_map/README.md) +for resolution, storage and reproducible generation. + +The UI is adapted from [MeshCore-Mesh-Pocket-MessageBoard](https://github.com/jackywashere/MeshCore-Mesh-Pocket-MessageBoard). +Include [PocketGui-NOTICE.txt](../tools/meshpocket_map/PocketGui-NOTICE.txt) alongside +distributed firmware for the UI and font notices. The application DFU ZIP keeps +its required manifest, binary and metadata entries; the notice is a sidecar. + +Build with `Mesh_pocket_companion_radio_full`. Defining `UI_POCKET_GUI=0` +retains the standard Pocket display. diff --git a/examples/companion_radio/AbstractUITask.h b/examples/companion_radio/AbstractUITask.h index f514d32f2..978d80cd1 100644 --- a/examples/companion_radio/AbstractUITask.h +++ b/examples/companion_radio/AbstractUITask.h @@ -6,6 +6,7 @@ #include #include #include +#include #ifdef PIN_BUZZER #include @@ -100,6 +101,12 @@ public: int channel_idx = -1, const char* channel_name = nullptr, int queue_index = -1) = 0; +#if UI_POCKET_GUI + virtual void channelMessageSent(int channel_idx, const char* channel_name, + const char* sender, const char* text, size_t length) { + (void)channel_idx; (void)channel_name; (void)sender; (void)text; (void)length; + } +#endif virtual void notify(UIEventType t = UIEventType::none) = 0; virtual bool supportsDisplayRotation() const { return false; } virtual bool setDisplayRotationDegrees(uint16_t degrees) { diff --git a/examples/companion_radio/DataStore.cpp b/examples/companion_radio/DataStore.cpp index eb8b2066c..cdcf3d8cd 100644 --- a/examples/companion_radio/DataStore.cpp +++ b/examples/companion_radio/DataStore.cpp @@ -763,6 +763,27 @@ bool DataStore::saveReaderBookmark(mesh::bible::Position pos) { } #endif +#if UI_POCKET_GUI +bool DataStore::loadPocketGuiSettings(mesh::ui::pocket::Settings& settings) { + if (_primary_storage_unavailable || _fs == nullptr) return false; + File file = openRead(_fs, "/pocket.ui"); + if (!file) return false; + uint8_t bytes[mesh::ui::pocket::SETTINGS_RECORD_SIZE]; + const bool read = file.size() == sizeof(bytes) + && file.read(bytes, sizeof(bytes)) == sizeof(bytes); + file.close(); + return read && mesh::ui::pocket::decodeSettings(settings, bytes, sizeof(bytes), MAX_GROUP_CHANNELS); +} + +bool DataStore::savePocketGuiSettings(const mesh::ui::pocket::Settings& settings) { + if (_primary_storage_unavailable || _volatile_primary_fs || _fs == nullptr) return false; + uint8_t bytes[mesh::ui::pocket::SETTINGS_RECORD_SIZE]; + if (!mesh::ui::pocket::encodeSettings(settings, bytes, sizeof(bytes), MAX_GROUP_CHANNELS)) return false; + mesh::AtomicFileWriter file(_fs, "/pocket.ui"); + return file && file.write(bytes, sizeof(bytes)) == sizeof(bytes) && file.commit(); +} +#endif + File DataStore::openRead(FILESYSTEM* fs, const char* filename) { return mesh::openFileRead(fs, filename); } diff --git a/examples/companion_radio/DataStore.h b/examples/companion_radio/DataStore.h index 098a1ff83..a8fb20581 100644 --- a/examples/companion_radio/DataStore.h +++ b/examples/companion_radio/DataStore.h @@ -9,6 +9,10 @@ #include #endif #include +#include +#if UI_POCKET_GUI +#include +#endif #if defined(ESP32_PLATFORM) namespace mesh { class ContactFileTransaction; } #endif @@ -235,6 +239,10 @@ public: bool loadPrefs(CompanionNodePrefs& prefs, double& node_lat, double& node_lon); bool savePrefs(const CompanionNodePrefs& prefs, double node_lat, double node_lon); +#if UI_POCKET_GUI + bool loadPocketGuiSettings(mesh::ui::pocket::Settings& settings); + bool savePocketGuiSettings(const mesh::ui::pocket::Settings& settings); +#endif #if COMPANION_FEATURE_READER bool loadReaderBookmark(mesh::bible::Position& pos); bool saveReaderBookmark(mesh::bible::Position pos); diff --git a/examples/companion_radio/MyMesh.cpp b/examples/companion_radio/MyMesh.cpp index 2a2069afc..8bf593d24 100644 --- a/examples/companion_radio/MyMesh.cpp +++ b/examples/companion_radio/MyMesh.cpp @@ -6266,7 +6266,12 @@ void MyMesh::handleCmdFrame(size_t len) { bool success = getChannel(channel_idx, channel); #if MESH_ENABLE_MESHTEXT_CHAT if (success && isMeshtextChannel(channel)) { - if (sendMeshtextText(channel, text, len - i)) writeOKFrame(); + if (sendMeshtextText(channel, text, len - i)) { +#if UI_POCKET_GUI + if (_ui) _ui->channelMessageSent(channel_idx, channel.name, _prefs.node_name, text, len - i); +#endif + writeOKFrame(); + } else writeErrFrame(ERR_CODE_BAD_STATE); } else #endif @@ -6274,6 +6279,9 @@ void MyMesh::handleCmdFrame(size_t len) { && parseCompanionChannelAlias(channel.name).kind == CompanionChannelKind::Meshtext) { writeErrFrame(ERR_CODE_UNSUPPORTED_CMD); } else if (success && sendGroupMessage(msg_timestamp, channel.channel, _prefs.node_name, text, len - i)) { +#if UI_POCKET_GUI + if (_ui) _ui->channelMessageSent(channel_idx, channel.name, _prefs.node_name, text, len - i); +#endif writeOKFrame(); } else { writeErrFrame(ERR_CODE_NOT_FOUND); // bad channel_idx diff --git a/examples/companion_radio/MyMesh.h b/examples/companion_radio/MyMesh.h index 0530d85f9..d4792b491 100644 --- a/examples/companion_radio/MyMesh.h +++ b/examples/companion_radio/MyMesh.h @@ -584,6 +584,10 @@ public: bool loadReaderBookmark(mesh::bible::Position& pos) { return _store->loadReaderBookmark(pos); } bool saveReaderBookmark(mesh::bible::Position pos) { return _store->saveReaderBookmark(pos); } #endif +#if UI_POCKET_GUI + bool loadPocketGuiSettings(mesh::ui::pocket::Settings& settings) { return _store->loadPocketGuiSettings(settings); } + bool savePocketGuiSettings(const mesh::ui::pocket::Settings& settings) { return _store->savePocketGuiSettings(settings); } +#endif #if ENV_INCLUDE_GPS == 1 bool setGpsEnabled(bool enabled); diff --git a/examples/companion_radio/ui-new/PocketGui.h b/examples/companion_radio/ui-new/PocketGui.h new file mode 100644 index 000000000..e075301ba --- /dev/null +++ b/examples/companion_radio/ui-new/PocketGui.h @@ -0,0 +1,385 @@ +#pragma once + +#include + +#if UI_POCKET_GUI + +// Message-board layout adapted from jackywashere's MeshCore Mesh Pocket +// MessageBoard (MIT), https://github.com/jackywashere/MeshCore-Mesh-Pocket-MessageBoard. +// The existing companion history, notifications and navigation remain shared. + +#include +#include +#include +#include + +namespace mesh { +namespace ui { +namespace pocket { + +struct Frame { + uint32_t now = 0; + uint64_t heard_millis = 0; + float tz_offset = 0; + int battery_percent = 0; + const char* connection = nullptr; + int page_index = 0; + int page_count = 1; + const char* hint = nullptr; + int rotation = 3; +}; + +class PocketGui { + static constexpr int HEADER_HEIGHT = 14; + static constexpr int FOOTER_HEIGHT = 14; + static constexpr uint32_t VALID_TIME = 1735689600UL; + struct Line { uint8_t start, length; }; + + GxEPDDisplay* _display = nullptr; + Adafruit_GFX* _gfx = nullptr; + U8G2_FOR_ADAFRUIT_GFX _font; + bool _ready = false; + Settings _settings; + Frame _frame; + BoardState _board; + int _width = 250, _height = 122; + uint16_t _ink = GxEPD_BLACK, _paper = GxEPD_WHITE; + char _scratch[192]; + + void hash(const void* value, size_t size) { _display->crcAdd(value, size); } + void hashGeometry(int a, int b = 0, int c = 0, int d = 0) { + const int value[] = {a, b, c, d}; + hash(value, sizeof(value)); + } + void normal() { _font.setForegroundColor(_ink); _font.setBackgroundColor(_paper); } + void inverse() { _font.setForegroundColor(_paper); _font.setBackgroundColor(_ink); } + void font(bool bold = false, bool large = false) { + const uint8_t key = (bold ? 1 : 0) | (large ? 2 : 0); + hash(&key, 1); + _font.setFont(large ? (bold ? u8g2_font_helvB10_tf : u8g2_font_helvR10_tf) + : (bold ? u8g2_font_helvB08_tf : u8g2_font_helvR08_tf)); + } + int textWidth(const char* value) { return _font.getUTF8Width(value); } + void fitText(char* value, int maximum_width) { + while (textWidth(value) > maximum_width && value[0] != 0) { + const size_t length = strlen(value); + size_t previous = 0, cursor = 0; + while (cursor < length) { previous = cursor; cursor = nextUtf8Character(value, cursor, length); } + value[previous] = 0; + } + } + void textRight(int x, int y, const char* value) { text(x - textWidth(value), y, value); } + void textCentre(int x, int y, const char* value) { text(x - textWidth(value) / 2, y, value); } + void fill(int x, int y, int width, int height, bool erase = false) { + hashGeometry(x, y, width, height); + hash(&erase, sizeof(erase)); + _gfx->fillRect(x, y, width, height, erase ? _paper : _ink); + } + void dots(int left, int right, int y) { + hashGeometry(left, right, y); + for (int x = left; x < right; x += 3) _gfx->drawPixel(x, y, _ink); + } + void textPart(int x, int y, const char* value, size_t length) { + if (length >= sizeof(_scratch)) length = sizeof(_scratch) - 1; + memcpy(_scratch, value, length); + _scratch[length] = 0; + text(x, y, _scratch); + } + int widthPart(const char* value, size_t length) { + if (length >= sizeof(_scratch)) length = sizeof(_scratch) - 1; + memcpy(_scratch, value, length); + _scratch[length] = 0; + return textWidth(_scratch); + } + int wrap(const char* value, int first_width, int width, Line* lines, int capacity) { + const size_t length = strlen(value); + size_t position = 0; + int count = 0; + while (position < length && count < capacity) { + if (count != 0) while (position < length && value[position] == ' ') ++position; + if (position == length) break; + const int available = count == 0 ? first_width : width; + size_t cursor = position, last_fit = position, last_space = position; + while (cursor < length) { + const size_t next = nextUtf8Character(value, cursor, length); + if (widthPart(value + position, next - position) > available) break; + if (value[cursor] == ' ') last_space = cursor; + cursor = next; + last_fit = next; + } + if (last_fit == position) { + if (count == 0 && first_width < width) { + lines[count++] = {(uint8_t)position, 0}; + continue; + } + last_fit = nextUtf8Character(value, position, length); + } else if (last_fit < length && last_space > position) { + last_fit = last_space; + } + lines[count++] = {(uint8_t)position, (uint8_t)(last_fit - position)}; + position = last_fit; + } + return count; + } + void clock(char* output, size_t size, uint32_t timestamp) const { + const int64_t local = (int64_t)timestamp + (int32_t)(_frame.tz_offset * 3600.0f); + int32_t seconds = (int32_t)(local % 86400); + if (seconds < 0) seconds += 86400; + snprintf(output, size, "%02u:%02u", (unsigned)(seconds / 3600), + (unsigned)(seconds / 60 % 60)); + } + void messageTime(char* output, size_t size, uint64_t heard_millis) const { + const uint32_t age = messageAgeSeconds(_frame.heard_millis, heard_millis); + if (age >= 20UL * 3600UL) + snprintf(output, size, "%lud", (unsigned long)((age + 43200) / 86400)); + else if (_frame.now >= VALID_TIME && age <= _frame.now - VALID_TIME) + clock(output, size, _frame.now - (uint32_t)age); + else if (age >= 3600) snprintf(output, size, "%luh", (unsigned long)(age / 3600)); + else if (age >= 60) snprintf(output, size, "%lum", (unsigned long)(age / 60)); + else snprintf(output, size, "now"); + } + +public: + void begin(GxEPDDisplay& display, const Settings& settings, const Frame& frame) { + _display = &display; + _settings = settings; + _frame = frame; + display.setNativeRotation((frame.rotation + (settings.flip ? 2 : 0)) & 3); + _gfx = &display.gfx(); + if (!_ready) { _font.begin(*_gfx); _ready = true; } + _width = _gfx->width(); _height = _gfx->height(); + _ink = settings.dark ? GxEPD_WHITE : GxEPD_BLACK; + _paper = settings.dark ? GxEPD_BLACK : GxEPD_WHITE; + _gfx->fillScreen(_paper); + _font.setFontMode(1); _font.setFontDirection(0); + normal(); + const uint8_t appearance[] = {(uint8_t)frame.rotation, settings.flip, settings.dark}; + hash(appearance, sizeof(appearance)); + } + int width() const { return _width; } + int height() const { return _height; } + int bodyTop() const { return HEADER_HEIGHT + 2; } + int bodyBottom() const { return _height - FOOTER_HEIGHT - 2; } + Adafruit_GFX& gfx() { return *_gfx; } + uint16_t ink() const { return _ink; } + uint16_t paper() const { return _paper; } + void text(int x, int y, const char* value) { + hashGeometry(x, y); + hash(value, strlen(value)); + _font.drawUTF8(x, y, value); + } + void line(int x0, int y0, int x1, int y1) { + hashGeometry(x0, y0, x1, y1); + _gfx->drawLine(x0, y0, x1, y1, _ink); + } + void label(int x, int y, const char* value, bool bold = false) { + font(bold); + if (value != nullptr && x >= 0 && x < _width) { + sanitizeText(_scratch, sizeof(_scratch), value, strlen(value)); + fitText(_scratch, _width - x); + text(x, y, _scratch); + } + font(); + } + void marker(int x, int y, bool self = false) { + hashGeometry(x, y, self); + _gfx->fillCircle(x, y, self ? 3 : 2, _ink); + if (self) _gfx->drawCircle(x, y, 5, _ink); + } + void header(const char* title, const char* centre = nullptr) { + fill(0, 0, _width, HEADER_HEIGHT); + inverse(); font(true); + char title_text[48]; + sanitizeText(title_text, sizeof(title_text), title, strlen(title)); + fitText(title_text, _width / 2 - 4); + text(3, 10, title_text); + const int title_end = 3 + textWidth(title_text); + char status[16]; + const int battery = _frame.battery_percent < 0 ? 0 : _frame.battery_percent > 100 ? 100 : _frame.battery_percent; + snprintf(status, sizeof(status), "%d%%", battery); + textRight(_width - 3, 10, status); + int right = _width - 8 - textWidth(status); + if (_frame.connection != nullptr && _frame.connection[0] != 0) { + const int connection_width = textWidth(_frame.connection); + if (right - connection_width > title_end + 5) { + textRight(right, 10, _frame.connection); + right -= connection_width + 5; + } + } + if (centre == nullptr && _frame.now >= VALID_TIME) { + clock(status, sizeof(status), _frame.now); centre = status; + } + if (centre != nullptr) { + const int centre_width = textWidth(centre); + int x = (_width - centre_width) / 2; + if (x + centre_width > right) x = right - centre_width; + if (x > title_end + 5) text(x, 10, centre); + } + normal(); + } + void footer(const char* hint = nullptr) { + fill(0, _height - FOOTER_HEIGHT, _width, FOOTER_HEIGHT, true); + dots(2, _width - 2, _height - FOOTER_HEIGHT); + font(); normal(); + if (hint == nullptr) hint = _frame.hint != nullptr ? _frame.hint : "click next / 2x back"; + char hint_text[96]; + sanitizeText(hint_text, sizeof(hint_text), hint, strlen(hint)); + fitText(hint_text, _width - 6); + text(3, _height - 3, hint_text); + if (_frame.page_count > 1 && _frame.page_count <= 16) { + const int step = 5; + const int left = _width - 4 - (_frame.page_count - 1) * step; + if (textWidth(hint_text) + 7 < left) { + for (int i = 0; i < _frame.page_count; ++i) { + const int x = left + i * step; + if (i == _frame.page_index) _gfx->fillRect(x - 1, _height - 8, 3, 3, _ink); + else _gfx->drawPixel(x, _height - 7, _ink); + } + hashGeometry(_frame.page_index, _frame.page_count); + } + } + } + + template + unsigned boardCount(const History& history) const { + unsigned count = 0; + for (size_t age = 0; age < history.count(); ++age) { + const auto* entry = history.newest(age); + if (entry != nullptr && entry->channel_idx == _settings.channel) ++count; + } + return count; + } + template + bool scrollOlder(const History& history) { return _board.scrollOlder(boardCount(history)); } + bool scrollOlder(unsigned count) { return _board.scrollOlder(count); } + bool scrollNewer() { return _board.scrollNewer(); } + bool isScrolled() const { return _board.scroll != 0; } + void resetScroll() { _board.scroll = 0; } + void messageAdded() { _board.messageAdded(); } + + template + void renderBoard(History& history, const char* channel_name) { + char title[42], centre[18]; + snprintf(title, sizeof(title), "# %s", channel_name == nullptr ? "Channel" : channel_name); + const unsigned count = boardCount(history); + _board.clamp(count); + if (_board.scroll != 0) snprintf(centre, sizeof(centre), "%u newer", _board.scroll); + header(title, _board.scroll != 0 ? centre : nullptr); + if (count == 0) { + font(true); textCentre(_width / 2, 54, "Listening for messages"); + font(); textCentre(_width / 2, 72, "hold to browse / settings picks channel"); + footer(); return; + } + + const bool large = _settings.text_large != 0; + font(false, large); + const int ascent = _font.getFontAscent(); + const int line_height = ascent - _font.getFontDescent() + (large ? 2 : 1); + int y = bodyBottom(); + unsigned filtered_age = 0; + for (size_t age = 0; age < history.count() && y >= bodyTop(); ++age) { + const auto* entry = history.newest(age); + if (entry == nullptr || entry->channel_idx != _settings.channel) continue; + if (filtered_age++ < _board.scroll) continue; + BoardMessageView message; + parseBoardMessage(entry->origin, entry->message, entry->own_sent, message); + char sender[64], body[192], timestamp[16]; + sanitizeText(sender, sizeof(sender), message.sender, message.sender_length); + truncateCharacters(sender, nameCharacters(_settings)); + sanitizeText(body, sizeof(body), message.text, strlen(message.text)); + messageTime(timestamp, sizeof(timestamp), entry->heard_millis); + font(true, large); + int name_width = sender[0] == 0 ? 0 : textWidth(sender) + (entry->own_sent ? 9 : 5); + // Long full names must leave room for the timestamp and message text. + fitText(sender, _width / 2 - (entry->own_sent ? 9 : 5)); + name_width = sender[0] == 0 ? 0 : textWidth(sender) + (entry->own_sent ? 9 : 5); + font(); const int time_width = textWidth(timestamp); + font(false, large); + Line lines[24]; + int line_count = wrap(body, _width - 10 - name_width - time_width, + _width - 4, lines, 24); + if (line_count == 0) { lines[0] = {0, 0}; line_count = 1; } + const int top = y - line_count * line_height + 1; + bool shown = false; + for (int i = 0; i < line_count; ++i) { + const int line_top = top + i * line_height; + if (line_top < bodyTop()) continue; + const int baseline = line_top + ascent; + int x = 2; + if (i == 0) { + if (sender[0] != 0) { + font(true, large); + if (entry->own_sent) { + fill(x, line_top - 1, name_width - 3, line_height + 1); + inverse(); text(x + 3, baseline, sender); normal(); + } else text(x, baseline, sender); + x += name_width; + } + font(); textRight(_width - 2, baseline, timestamp); + shown = true; + } + font(false, large); + if (lines[i].length != 0) { + textPart(x, baseline, body + lines[i].start, lines[i].length); + shown = true; + } + } + if (shown && _display->isOn()) history.markRead(entry); + y = top - 5; + if (y > bodyTop()) dots(2, _width - 2, y + 2); + } + footer(); + } + + void renderSettings(unsigned selected, bool editing, const char* channel_name = nullptr) { + header("Settings", editing ? "editing" : nullptr); + static const char* const names[] = {"Channel", "Text", "Names", "Screen", "Theme", "Return", "Clean", "Map zoom"}; + static const char* const idle[] = {"30 seconds", "1 minute", "5 minutes", "Never"}; + static const char* const clean[] = {"10 updates", "30 updates", "60 updates", "Manual"}; + for (unsigned row = 0; row < SETTINGS_COUNT; ++row) { + const int y = bodyTop() + row * 11; + if (row == selected && editing) { fill(1, y - 1, _width - 2, 11); inverse(); } + else normal(); + font(row == selected && editing); + text(4, y + 8, names[row]); + char value[40]; + switch (row) { + case 0: + if (channel_name != nullptr && channel_name[0] != 0) + sanitizeText(value, sizeof(value), channel_name, strlen(channel_name)); + else snprintf(value, sizeof(value), "Channel %u", _settings.channel); + truncateCharacters(value, 19); break; + case 1: snprintf(value, sizeof(value), "%s", _settings.text_large ? "Large" : "Small"); break; + case 2: + if (nameCharacters(_settings) == 0) snprintf(value, sizeof(value), "Full"); + else snprintf(value, sizeof(value), "%u characters", nameCharacters(_settings)); + break; + case 3: snprintf(value, sizeof(value), "%s", _settings.flip ? "Flipped" : "Normal"); break; + case 4: snprintf(value, sizeof(value), "%s", _settings.dark ? "Dark" : "Light"); break; + case 5: snprintf(value, sizeof(value), "%s", idle[_settings.idle <= 3 ? _settings.idle : 1]); break; + case 6: snprintf(value, sizeof(value), "%s", clean[_settings.refresh <= 3 ? _settings.refresh : 1]); break; + default: snprintf(value, sizeof(value), "%u km", (unsigned)mapHeightKm(_settings)); break; + } + textRight(_width - 4, y + 8, value); + } + normal(); footer(); + } + + void renderMapChrome(unsigned actual_height_km = 0) { + char range[24]; + snprintf(range, sizeof(range), "%u km", actual_height_km != 0 + ? actual_height_km : (unsigned)mapHeightKm(_settings)); + header("Map", range); + footer(); + } + void mapEmpty(const char* message) { + font(true); textCentre(_width / 2, 54, message); + font(); textCentre(_width / 2, 72, "Set location in the companion app"); + } +}; + +} // namespace pocket +} // namespace ui +} // namespace mesh + +#endif // UI_POCKET_GUI diff --git a/examples/companion_radio/ui-new/UITask.cpp b/examples/companion_radio/ui-new/UITask.cpp index 9df30285c..d5f609e61 100644 --- a/examples/companion_radio/ui-new/UITask.cpp +++ b/examples/companion_radio/ui-new/UITask.cpp @@ -24,6 +24,10 @@ #include "target.h" #include #include +#if UI_POCKET_GUI + #include "PocketGui.h" + #include +#endif #if defined(ENABLE_WIFI_INTERFACE) || defined(WIFI_SSID) #include #endif @@ -416,6 +420,11 @@ public: class HomeScreen : public UIScreen { enum HomePage { FIRST, +#if UI_POCKET_GUI + MAP, + STATUS, + SETTINGS, +#endif #if UI_MESSAGES_HOME_PAGE == 1 MESSAGES, #endif @@ -463,6 +472,16 @@ class HomeScreen : public UIScreen { uint32_t _radio_profile_page_started_at = 0; uint8_t _radio_status_page = 0; bool _dual_radio_enabled_seen = false; +#if UI_POCKET_GUI + mesh::ui::pocket::PocketGui _pocket; + bool _pocket_editing = false; + bool _pocket_browsing = false; + bool _pocket_zooming = false; + bool _pocket_dirty = false; + uint8_t _pocket_setting = 0; + uint32_t _pocket_last_input = 0; + uint32_t _pocket_save_retry = 0; +#endif AdvertPath recent[UI_RECENT_LIST_SIZE]; #if !(defined(UI_NO_DISCOVER_SCREEN) && (UI_NO_DISCOVER_SCREEN + 0 != 0)) DiscoveredNode discovered[UI_RECENT_LIST_SIZE]; @@ -620,6 +639,10 @@ class HomeScreen : public UIScreen { } void movePage(int direction) { +#if UI_POCKET_GUI + flushPocketSettings(); + _pocket_editing = _pocket_browsing = _pocket_zooming = false; +#endif do { _page = (_page + HomePage::Count + direction) % HomePage::Count; } while (!isPageVisible(_page)); @@ -636,7 +659,268 @@ class HomeScreen : public UIScreen { : UI_RADIO_REFRESH_MILLIS; } +#if UI_POCKET_GUI + void displayForceClean() { _task->cleanPocketDisplay(); } + + void cyclePocketChannel(int direction) { + auto& settings = _task->pocketSettings(); + const int previous = settings.channel; + int selected = previous; + for (int attempt = 0; attempt < MAX_GROUP_CHANNELS; ++attempt) { + selected = (selected + MAX_GROUP_CHANNELS + direction) % MAX_GROUP_CHANNELS; + ChannelDetails channel; + if (the_mesh.getChannel(selected, channel) && channel.name[0]) { + settings.channel = selected; + break; + } + } + _pocket_dirty |= previous != settings.channel; + _pocket.resetScroll(); + } + + static bool pocketLocation(double latitude, double longitude) { + return isfinite(latitude) && isfinite(longitude) + && latitude >= -90 && latitude <= 90 && longitude >= -180 && longitude <= 180 + && (latitude != 0 || longitude != 0); + } + + __attribute__((noinline)) void renderPocketMap() { + using namespace mesh::ui::pocket; + const auto& settings = _task->pocketSettings(); + const double own_lat = sensors.node_lat, own_lon = sensors.node_lon; + const bool have_own = pocketLocation(own_lat, own_lon); + double latitude = own_lat, longitude = own_lon; + bool located = have_own; + ContactInfo contact; + if (!located) { + auto contacts = the_mesh.startContactsIterator(); + while (contacts.hasNext(&the_mesh, contact)) { + latitude = contact.gps_lat * 1e-6; + longitude = contact.gps_lon * 1e-6; + if (pocketLocation(latitude, longitude)) { located = true; break; } + } + } + MapView view = {located ? latitude : 0, located ? longitude : 0, + located ? mapHeightKm(settings) : 20000, _pocket.width(), + _pocket.bodyBottom() - _pocket.bodyTop()}; + if (!renderWorldMap(view, [](void* context, int x0, int y0, int x1, int y1) { + auto& gui = *static_cast(context); + gui.line(x0, y0 + gui.bodyTop(), x1, y1 + gui.bodyTop()); + }, &_pocket)) { + _pocket.label(3, 40, "Map unavailable"); + } + int x, y; + unsigned shown = 0, labels = 0; + auto contacts = the_mesh.startContactsIterator(); + while (contacts.hasNext(&the_mesh, contact)) { + latitude = contact.gps_lat * 1e-6; longitude = contact.gps_lon * 1e-6; + if (!pocketLocation(latitude, longitude) + || !projectWorldPoint(view, latitude, longitude, x, y)) continue; + _pocket.marker(x, y + _pocket.bodyTop()); + ++shown; + if (view.height_km <= 50 && labels < 4 && x < view.width - 52 && y >= 10) { + char name[12]; + sanitizeText(name, sizeof(name), contact.name, strnlen(contact.name, sizeof(contact.name))); + truncateCharacters(name, 8); + _pocket.label(x + 4, y + _pocket.bodyTop() - 3, name); + ++labels; + } + } + if (have_own && projectWorldPoint(view, own_lat, own_lon, x, y)) + _pocket.marker(x, y + _pocket.bodyTop(), true); + char summary[40]; + if (located) snprintf(summary, sizeof(summary), "%u nodes%s", shown, + view.height_km < 100 ? " / coarse coast" : ""); + else snprintf(summary, sizeof(summary), "World / no node locations"); + _pocket.label(3, _pocket.bodyTop() + 9, summary); + _pocket.renderMapChrome((unsigned)view.height_km); + } + + int renderPocket(DisplayDriver& display) { + using namespace mesh::ui::pocket; + const auto& settings = _task->pocketSettings(); + Frame frame; + const uint32_t uptime_now = millis(); + _uptime_millis += uint32_t(uptime_now - _uptime_last_millis); + _uptime_last_millis = uptime_now; + frame.now = _rtc->getCurrentTime(); frame.heard_millis = companionMessageNowMillis(); + frame.tz_offset = _node_prefs->tz_offset; + frame.battery_percent = (int(_task->getBattMilliVolts()) - BATT_MIN_MILLIVOLTS) + * 100 / (BATT_MAX_MILLIVOLTS - BATT_MIN_MILLIVOLTS); +#if defined(NRF52_POWER_MANAGEMENT) + frame.battery_percent = mesh::power::configuredBatteryPercent(_task->getBattMilliVolts()); +#endif + frame.connection = _task->connectedClientLabel(); + frame.page_count = frame.page_index = 0; + for (unsigned page = 0; page < HomePage::Count; ++page) if (isPageVisible(page)) { + if (page < _page) ++frame.page_index; + ++frame.page_count; + } + frame.rotation = DISPLAY_ROTATION; + if (_pocket_browsing) frame.hint = "1x older 2x newer hold exit"; + else if (_pocket_zooming) frame.hint = "1x zoom in 2x out hold done"; + else if (_pocket_editing) frame.hint = "1x value 2x field hold save"; + else if (isRadioPage()) frame.hint = "click next 2x back hold Reader"; + else if (_page == HomePage::FIRST) frame.hint = "click next 2x back hold browse"; + else if (_page == HomePage::MAP) frame.hint = "click next 2x back hold zoom"; + else if (_page == HomePage::SETTINGS) frame.hint = "click next 2x back hold edit"; + else frame.hint = "click next 2x back hold action"; + static_cast(display).setMaxPartialRefresh(refreshCount(settings)); + _pocket.begin(static_cast(display), settings, frame); + ChannelDetails channel; + char channel_name[32] = {}; + if (the_mesh.getChannel(settings.channel, channel)) + StrHelper::strncpy(channel_name, channel.name, sizeof(channel_name)); + if (_page == HomePage::FIRST) _task->renderPocketBoard(_pocket); + else if (_page == HomePage::MAP) { renderPocketMap(); return 10000; } + else if (_page == HomePage::SETTINGS) _pocket.renderSettings(_pocket_setting, _pocket_editing, channel_name); + else { + char text[80]; + int y = _pocket.bodyTop() + 10; + auto row = [&](const char* value) { + if (y <= _pocket.bodyBottom() - 2) _pocket.label(4, y, value); + y += 14; + }; + if (_page == HomePage::STATUS) { + _pocket.header("Status", (_radio_status_page & 1) ? "2 / 2" : "1 / 2"); + if ((_radio_status_page & 1) == 0) { + snprintf(text, sizeof(text), "Uptime %lu min battery %u mV", (unsigned long)(_uptime_millis / 60000), _task->getBattMilliVolts()); row(text); + snprintf(text, sizeof(text), "RX %lu flood / %lu direct", (unsigned long)the_mesh.getNumRecvFlood(), (unsigned long)the_mesh.getNumRecvDirect()); row(text); + snprintf(text, sizeof(text), "TX %lu flood / %lu direct", (unsigned long)the_mesh.getNumSentFlood(), (unsigned long)the_mesh.getNumSentDirect()); row(text); + snprintf(text, sizeof(text), "Inbox %d / %d errors %04X", _task->getMsgCount(), the_mesh.getOfflineQueueCapacity(), the_mesh.getErrFlags()); row(text); + mesh::Utils::toHex(text, the_mesh.self_id.pub_key, 6); row(text); + } else { + const auto status = radioProfileSystemStatus(*_node_prefs); + snprintf(text, sizeof(text), "Power saving %s / GPS %s", status.powersaving_enabled ? "on" : "off", status.gps_enabled ? "on" : "off"); row(text); + snprintf(text, sizeof(text), "FEM %s / RX boost %s", status.fem_enabled ? "on" : "off", status.rx_boosted_gain ? "on" : "off"); row(text); + snprintf(text, sizeof(text), "RX power saving %s / CAD %s", status.rx_powersaving_enabled ? "on" : "off", status.cad_enabled ? "on" : "off"); row(text); + mesh::ui::formatRadioProfileNoiseFloor(text, sizeof(text), "Radio 1 noise", status.noise_floor_1, status.noise_floor_1_seconds); row(text); + } + } else if (_page == HomePage::RECENT) { + _pocket.header("Recently heard"); + const int count = the_mesh.getRecentlyHeard(recent, UI_RECENT_LIST_SIZE); + for (int i = 0; i < count && y <= _pocket.bodyBottom(); ++i) { + char name[40]; sanitizeText(name, sizeof(name), recent[i].name, strnlen(recent[i].name, sizeof(recent[i].name))); + snprintf(text, sizeof(text), "%.28s %lum", name, (unsigned long)((frame.now - recent[i].recv_timestamp) / 60)); row(text); + } + if (!count) row("No adverts heard yet"); + } else if (_page == HomePage::RADIO_STATUS) { + _pocket.header("Radio status", (_radio_status_page & 1) ? "2 / 2" : "1 / 2"); + const auto status = radioProfileSystemStatus(*_node_prefs); + if ((_radio_status_page & 1) == 0) { + snprintf(text, sizeof(text), "Power saving %s / GPS %s", status.powersaving_enabled ? "on" : "off", status.gps_enabled ? "on" : "off"); row(text); + snprintf(text, sizeof(text), "FEM %s / RX boost %s", status.fem_enabled ? "on" : "off", status.rx_boosted_gain ? "on" : "off"); row(text); + snprintf(text, sizeof(text), "RX power saving %s / CAD %s", status.rx_powersaving_enabled ? "on" : "off", status.cad_enabled ? "on" : "off"); row(text); + } else { + mesh::ui::formatRadioProfileNoiseFloor(text, sizeof(text), "Radio 1 noise", status.noise_floor_1, status.noise_floor_1_seconds); row(text); + mesh::ui::formatRadioProfileNoiseFloor(text, sizeof(text), "Radio 2 noise", status.noise_floor_2, status.noise_floor_2_seconds); row(text); + snprintf(text, sizeof(text), "Radio2 %s%s / cross %s", status.secondary_mode == mesh::RadioProfileMode::RxTx ? "RX/TX" : "RX", + status.secondary_temporary ? " temporary" : "", status.cross == mesh::RadioCrossMode::Off ? "off" : status.cross == mesh::RadioCrossMode::On ? "on" : "auto"); row(text); + } + row("Hold for more status"); + } else if (_page == HomePage::RADIO || _page == HomePage::RADIO2) { + const auto* radio = the_mesh.getProfileRadio(); + const auto* profiles = radio ? radio->profiles() : nullptr; + const bool secondary = _page == HomePage::RADIO2 && profiles && profiles->enabled(); + _pocket.header(secondary ? "Radio 2" : "Network"); + mesh::RadioProfileParams params; + if (profiles && profiles->enabled()) params = profiles->params(secondary ? 1 : 0); + else { params.freq = _node_prefs->freq; params.bw = _node_prefs->bw; params.sf = _node_prefs->sf; params.cr = _node_prefs->cr; } + snprintf(text, sizeof(text), "%.3f MHz / %.2f kHz", params.freq, params.bw); row(text); + snprintf(text, sizeof(text), "SF%u CR%u / %d dBm", params.sf, params.cr, _node_prefs->tx_power_dbm); row(text); + snprintf(text, sizeof(text), "Noise %.1f dBm / RX boost %s", radio_driver.getNoiseFloorDbm(secondary ? 1 : 0), _node_prefs->rx_boosted_gain ? "on" : "off"); row(text); + if (profiles && profiles->enabled()) { + snprintf(text, sizeof(text), "Radio2 %s%s / cross %s", profiles->secondary.mode == mesh::RadioProfileMode::RxTx ? "RX/TX" : "RX", + profiles->secondary_temporary ? " temporary" : "", profiles->cross == mesh::RadioCrossMode::Off ? "off" : profiles->cross == mesh::RadioCrossMode::On ? "on" : "auto"); row(text); + snprintf(text, sizeof(text), "Switches %lu / failures %lu", (unsigned long)profiles->switches, (unsigned long)profiles->switch_failures); row(text); + } else row("Radio2 off"); +#if UI_MESSAGES_HOME_PAGE == 1 + } else if (_page == HomePage::MESSAGES) { + _pocket.header(_task->inboxTitle()); _task->renderPocketInbox(_pocket); +#endif +#if defined(BLE_PIN_CODE) + } else if (_page == HomePage::BLUETOOTH) { + _pocket.header("Bluetooth"); row(_task->isBluetoothEnabled() ? "Bluetooth enabled" : "Bluetooth disabled"); + row(_task->hasBluetoothConnection() ? "App connected" : "Waiting for an app"); row("Hold to toggle Bluetooth"); +#endif + } else if (_page == HomePage::ADVERT) { + _pocket.header("Advert"); row("Hold to send a local advert"); + snprintf(text, sizeof(text), "Node: %.31s", _node_prefs->node_name); row(text); +#if ENV_INCLUDE_GPS == 1 + } else if (_page == HomePage::GPS) { + _pocket.header("Location"); + snprintf(text, sizeof(text), "Latitude %.6f", sensors.node_lat); row(text); + snprintf(text, sizeof(text), "Longitude %.6f", sensors.node_lon); row(text); + row(_task->getGPSState() ? "GPS enabled" : "GPS disabled"); row("Hold to toggle GPS"); +#endif +#if UI_SENSORS_PAGE == 1 + } else if (_page == HomePage::SENSORS) { + _pocket.header("Sensors"); refresh_sensors(); + LPPReader readings(sensors_lpp.getBuffer(), sensors_lpp.getSize()); + uint8_t channel_id, type; + for (int i = 0; i < sensors_scroll_offset && readings.readHeader(channel_id, type); ++i) + readings.skipData(type); + while (y <= _pocket.bodyBottom() - 2 && readings.readHeader(channel_id, type)) { + float value; + switch (type) { + case LPP_GPS: { + float lat, lon, alt; readings.readGPS(lat, lon, alt); + snprintf(text, sizeof(text), "GPS %.4f / %.4f", lat, lon); break; + } + case LPP_VOLTAGE: readings.readVoltage(value); snprintf(text, sizeof(text), "Voltage %.2f V", value); break; + case LPP_CURRENT: readings.readCurrent(value); snprintf(text, sizeof(text), "Current %.3f A", value); break; + case LPP_TEMPERATURE: readings.readTemperature(value); snprintf(text, sizeof(text), "Temperature %.2f C", value); break; + case LPP_RELATIVE_HUMIDITY: readings.readRelativeHumidity(value); snprintf(text, sizeof(text), "Humidity %.2f %%", value); break; + case LPP_BAROMETRIC_PRESSURE: readings.readPressure(value); snprintf(text, sizeof(text), "Pressure %.2f hPa", value); break; + case LPP_ALTITUDE: readings.readAltitude(value); snprintf(text, sizeof(text), "Altitude %.0f m", value); break; + case LPP_POWER: readings.readPower(value); snprintf(text, sizeof(text), "Power %.2f W", value); break; + default: readings.skipData(type); continue; + } + row(text); + } + if (y == _pocket.bodyTop() + 10) row("No sensor readings"); + if (sensors_scroll) sensors_scroll_offset = (sensors_scroll_offset + 1) % sensors_nb; +#endif +#if !(defined(UI_NO_DISCOVER_SCREEN) && (UI_NO_DISCOVER_SCREEN + 0 != 0)) + } else if (_page == HomePage::DISCOVERY) { + _pocket.header("Repeaters nearby"); + const int count = the_mesh.getDiscoveredNodes(discovered, UI_RECENT_LIST_SIZE); + for (int i = 0; i < count && y <= _pocket.bodyBottom(); ++i) { + char name[33]; StrHelper::strncpy(name, discovered[i].name, sizeof(name)); + if (!name[0] || !discovery_disp_names) mesh::Utils::toHex(name, discovered[i].pubkey_prefix, 4); + snprintf(text, sizeof(text), "%.28s %.1f dB", name, discovered[i].snr_in); row(text); + } + if (!count) row("Hold to discover nearby repeaters"); +#endif +#ifndef UI_NO_HIBERNATE + } else if (_page == HomePage::SHUTDOWN) { + _pocket.header("Power"); row("Hold to shut down"); +#endif + } else _pocket.header(_node_prefs->node_name); + _pocket.footer(); + } + return 5000; + } +#endif + public: +#if UI_POCKET_GUI + bool isPocketBoard() const { return _page == HomePage::FIRST; } + void pocketMessageAdded(int channel) { + if (channel == _task->pocketSettings().channel) _pocket.messageAdded(); + } + bool flushPocketSettings() { + if (!_pocket_dirty) return true; + if (!the_mesh.savePocketGuiSettings(_task->pocketSettings())) { + _pocket_save_retry = millis() + 30000; + _task->showAlert("Settings save failed", 1500); + return false; + } + _pocket_dirty = false; + _pocket_save_retry = 0; + return true; + } +#endif HomeScreen(UITask* task, mesh::RTCClock* rtc, SensorManager* sensors, CompanionNodePrefs* node_prefs) : _task(task), _rtc(rtc), _sensors(sensors), _node_prefs(node_prefs), _page(0), _shutdown_init(false), @@ -652,7 +936,15 @@ public: #endif } - void showFirstPage() { _page = HomePage::FIRST; } + void showFirstPage() { +#if UI_POCKET_GUI + flushPocketSettings(); + _pocket_editing = _pocket_browsing = _pocket_zooming = false; + _pocket.resetScroll(); + _pocket_last_input = millis(); +#endif + _page = HomePage::FIRST; + } #if COMPANION_FEATURE_READER bool isRadioPage() const { return _page == HomePage::RADIO || _page == HomePage::RADIO2; @@ -672,6 +964,20 @@ public: #endif void poll() override { +#if UI_POCKET_GUI + const uint32_t pocket_now = millis(); + if (_pocket_dirty && _pocket_save_retry && int32_t(pocket_now - _pocket_save_retry) >= 0) + flushPocketSettings(); + const uint32_t idle = mesh::ui::pocket::idleMillis(_task->pocketSettings()); + if (idle && uint32_t(pocket_now - _pocket_last_input) >= idle + && (_page != HomePage::FIRST || _pocket_browsing)) { + flushPocketSettings(); + _pocket_editing = _pocket_browsing = _pocket_zooming = false; + _pocket.resetScroll(); + _page = HomePage::FIRST; + _task->gotoHomeScreen(); + } +#endif if (_dual_radio_enabled_seen != the_mesh.isDualRadioActive()) { resetRadioProfileDisplayPage(); } @@ -704,6 +1010,9 @@ public: } int render(DisplayDriver& display) override { +#if UI_POCKET_GUI + return renderPocket(display); +#endif display.setTextSize(1); const int normal_line = !display.useSmallMessageFont() && display.renderWidth() == display.width() ? display.textLineHeight() : 11; @@ -1322,6 +1631,56 @@ public: bool handleInput(char c) override { // Navigation codes exceed 0x7f; keep them valid with signed char too. const uint8_t key = static_cast(c); +#if UI_POCKET_GUI + _pocket_last_input = millis(); + auto& settings = _task->pocketSettings(); + if (_page == HomePage::SETTINGS && key == KEY_ENTER) { + _pocket_editing = !_pocket_editing; + if (!_pocket_editing) flushPocketSettings(); + return true; + } + if (_page == HomePage::SETTINGS && _pocket_editing) { + if (key == KEY_PREV || key == KEY_LEFT) { + _pocket_setting = (_pocket_setting + 1) % mesh::ui::pocket::SETTINGS_COUNT; + return true; + } + if (key == KEY_NEXT || key == KEY_RIGHT) { + const uint8_t previous_dark = settings.dark, previous_flip = settings.flip; + if (_pocket_setting == 0) cyclePocketChannel(1); + else mesh::ui::pocket::cycleSetting(settings, _pocket_setting, MAX_GROUP_CHANNELS); + _pocket_dirty = true; + if (previous_dark != settings.dark || previous_flip != settings.flip) displayForceClean(); + _pocket.resetScroll(); + return true; + } + } + if (_page == HomePage::FIRST) { + if (key == KEY_ENTER) { _pocket_browsing = !_pocket_browsing; return true; } + if (key == KEY_DOWN || key == KEY_UP) { + cyclePocketChannel(key == KEY_DOWN ? 1 : -1); + flushPocketSettings(); + return true; + } + if (_pocket_browsing) { + if (key == KEY_NEXT || key == KEY_RIGHT) { _pocket.scrollOlder(_task->pocketBoardCount()); return true; } + if (key == KEY_PREV || key == KEY_LEFT) { _pocket.scrollNewer(); return true; } + } + } + if (_page == HomePage::MAP) { + if (key == KEY_ENTER) { + _pocket_zooming = !_pocket_zooming; + if (!_pocket_zooming) flushPocketSettings(); + return true; + } + if (_pocket_zooming && (key == KEY_NEXT || key == KEY_RIGHT || key == KEY_PREV || key == KEY_LEFT)) { + const bool closer = key == KEY_NEXT || key == KEY_RIGHT; + if (closer && settings.map_zoom < 8) ++settings.map_zoom; + if (!closer && settings.map_zoom > 0) --settings.map_zoom; + _pocket_dirty = true; + return true; + } + } +#endif if (key == KEY_LEFT || key == KEY_PREV) { movePage(-1); return true; @@ -1344,7 +1703,11 @@ public: #endif return true; } - if (key == KEY_ENTER && _page == HomePage::RADIO_STATUS) { + if (key == KEY_ENTER && (_page == HomePage::RADIO_STATUS +#if UI_POCKET_GUI + || _page == HomePage::STATUS +#endif + )) { _radio_status_page++; return true; } @@ -1615,6 +1978,19 @@ public: #endif explicit MsgPreviewScreen(UITask* task) : _task(task), view_offset(0), channel_filter(CHANNEL_FILTER_ALL) {} +#if UI_POCKET_GUI + MessageHistory& pocketHistory() { return history; } + const MessageHistory& pocketHistory() const { return history; } + void addSent(int channel_idx, const char* channel_name, const char* sender, + const char* text, size_t length) { + char message[UI_MSG_PREVIEW_SIZE]; + if (length >= sizeof(message)) length = sizeof(message) - 1; + memcpy(message, text, length); + message[length] = 0; + history.add(companionMessageNowMillis(), channel_idx, channel_name, sender, + message, -1, true); + } +#endif bool hasMessages() const { for (size_t age = 0; age < history.count(); ++age) @@ -1952,6 +2328,10 @@ void UITask::begin(DisplayDriver* display, SensorManager* sensors, CompanionNode #endif _node_prefs = node_prefs; +#if UI_POCKET_GUI + the_mesh.loadPocketGuiSettings(_pocket_settings); + if (_display) _display->forceFullRefresh(); +#endif if (_display != NULL) { _display->servicePower(_board->isExternalPowered() || _board->isUsbHostConnected(), hasConnection()); @@ -2031,6 +2411,50 @@ void UITask::renderMessageSummary(DisplayDriver& display) const { static_cast(msg_preview)->renderSummary(display); } +#if UI_POCKET_GUI +void UITask::renderPocketBoard(mesh::ui::pocket::PocketGui& gui) const { + ChannelDetails channel; + char name[32] = {}; + if (the_mesh.getChannel(_pocket_settings.channel, channel)) + StrHelper::strncpy(name, channel.name, sizeof(name)); + gui.renderBoard(static_cast(msg_preview)->pocketHistory(), name); +} + +unsigned UITask::pocketBoardCount() const { + const auto& history = static_cast(msg_preview)->pocketHistory(); + unsigned count = 0; + for (size_t age = 0; age < history.count(); ++age) + if (history.newest(age)->channel_idx == _pocket_settings.channel) ++count; + return count; +} + +void UITask::renderPocketInbox(mesh::ui::pocket::PocketGui& gui) const { + const auto& history = static_cast(msg_preview)->pocketHistory(); + int y = gui.bodyTop() + 10; + for (size_t age = 0; age < history.count() && y + 13 <= gui.bodyBottom(); ++age) { + const auto* entry = history.newest(age); + if (mesh::ui::displayPowerPrefs().inbox == mesh::ui::DisplayInboxMode::Pending + && entry->queue_index < 0) continue; + if (mesh::ui::displayPowerPrefs().inbox == mesh::ui::DisplayInboxMode::Unread + && !entry->unread) continue; + char label[48]; + mesh::ui::CompanionMessageHistory<32, UI_MSG_PREVIEW_SIZE>::threadLabel(*entry, label, sizeof(label)); + mesh::ui::pocket::truncateCharacters(label, 32); + gui.label(4, y, label, entry->unread); + y += 15; + } + if (y == gui.bodyTop() + 10) gui.label(4, y, "No messages"); +} + +void UITask::channelMessageSent(int channel_idx, const char* channel_name, + const char* sender, const char* text, size_t length) { + if (!msg_preview || channel_idx < 0 || channel_idx >= MAX_GROUP_CHANNELS) return; + static_cast(msg_preview)->addSent(channel_idx, channel_name, sender, text, length); + static_cast(home)->pocketMessageAdded(channel_idx); + if (_display && _display->isOn()) _next_refresh = millis(); +} +#endif + void UITask::notify(UIEventType t) { #if defined(PIN_BUZZER) if (_notification_outputs & mesh::notify::Sound) switch(t){ @@ -2079,6 +2503,9 @@ void UITask::newMsg(uint8_t path_len, const char* from_name, const char* text, ((MsgPreviewScreen *)msg_preview) ->addPreview(path_len, from_name, text, channel_idx, channel_name, queue_index, !hasConnection()); +#if UI_POCKET_GUI + static_cast(home)->pocketMessageAdded(channel_idx); +#endif if (hasConnection()) { // Keep history, but do not change the page or wake for a connected client. _deferred_msg_preview = false; @@ -2092,6 +2519,12 @@ void UITask::newMsg(uint8_t path_len, const char* from_name, const char* text, // Queue incoming messages without stealing the reader's page. _deferred_msg_preview = true; } +#endif +#if UI_POCKET_GUI + else if (channel_idx >= 0 && curr == home && static_cast(home)->isPocketBoard()) { + // Keep the live channel board visible while retaining normal notifications. + _deferred_msg_preview = false; + } #endif else { setCurrScreen(msg_preview); @@ -2130,6 +2563,10 @@ void UITask::userLedHandler() { } void UITask::setCurrScreen(UIScreen* c) { +#if UI_POCKET_GUI + if (curr == home && c != home) static_cast(home)->flushPocketSettings(); + if (curr != c && _pocket_settings.dark && _display) _display->forceFullRefresh(); +#endif #if COMPANION_FEATURE_READER if (isReaderActive() && c != reader && !static_cast(reader)->flush()) { @@ -2666,6 +3103,9 @@ char UITask::handleMultiClick(char c, bool backwards) { if (_display != NULL && (curr == msg_preview #if COMPANION_FEATURE_READER || isReaderActive() +#endif +#if UI_POCKET_GUI + || (curr == home && static_cast(home)->isPocketBoard()) #endif )) { return checkDisplayOn(backwards ? KEY_UP : KEY_DOWN); diff --git a/examples/companion_radio/ui-new/UITask.h b/examples/companion_radio/ui-new/UITask.h index d5dbb82bc..d47d746ee 100644 --- a/examples/companion_radio/ui-new/UITask.h +++ b/examples/companion_radio/ui-new/UITask.h @@ -27,6 +27,10 @@ #include "../AbstractUITask.h" #include "../NodePrefs.h" #include +#if UI_POCKET_GUI +#include +namespace mesh { namespace ui { namespace pocket { class PocketGui; } } } +#endif class UITask : public AbstractUITask { DisplayDriver* _display; @@ -100,6 +104,9 @@ class UITask : public AbstractUITask { UIScreen* home; UIScreen* msg_preview = nullptr; UIScreen* curr; +#if UI_POCKET_GUI + mesh::ui::pocket::Settings _pocket_settings; +#endif #if COMPANION_FEATURE_READER UIScreen* reader = nullptr; #endif @@ -148,6 +155,15 @@ public: int getMsgCount() const { return _msgcount; } int getPreviewCount() const; void renderMessageSummary(DisplayDriver& display) const; +#if UI_POCKET_GUI + mesh::ui::pocket::Settings& pocketSettings() { return _pocket_settings; } + void renderPocketBoard(mesh::ui::pocket::PocketGui& gui) const; + void renderPocketInbox(mesh::ui::pocket::PocketGui& gui) const; + unsigned pocketBoardCount() const; + void cleanPocketDisplay() { if (_display) _display->forceFullRefresh(); } + void channelMessageSent(int channel_idx, const char* channel_name, + const char* sender, const char* text, size_t length) override; +#endif bool hasDisplay() const { return _display != NULL; } #ifdef HAS_TOUCH bool supportsTouchDebug() const override { return _display != nullptr; } diff --git a/scripts/check_firmware_capabilities.py b/scripts/check_firmware_capabilities.py index 98fa89fe0..431d358b9 100644 --- a/scripts/check_firmware_capabilities.py +++ b/scripts/check_firmware_capabilities.py @@ -15,6 +15,8 @@ from rp2040_application import read_application as read_rp2040_application from package_meshtext_license import (CAPABILITY as MESHTEXT_CAPABILITY, meshtext_evidence, notice_bytes as meshtext_notice_bytes, notice_record as meshtext_notice_record) +from package_pocket_gui_license import (pocket_gui_evidence, + notice_bytes as pocket_gui_notice_bytes, notice_record as pocket_gui_notice_record) sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "tools" / "mota")) from motalib import parse_nrf52_layout @@ -217,6 +219,13 @@ def main() -> int: except (OSError, ValueError) as error: print(f"capability check: cannot qualify linked Meshtext code: {error}", file=sys.stderr) malformed = True + try: + if pocket_gui_evidence(args.image): + stem = args.output.name.removesuffix(".capabilities.json") + third_party_notices.append(pocket_gui_notice_record(stem, pocket_gui_notice_bytes())) + except (OSError, ValueError) as error: + print(f"capability check: cannot qualify linked MeshPocket GUI/fonts: {error}", file=sys.stderr) + malformed = True if args.require_meshtext and not chat_symbols: checks.append({"capability": MESHTEXT_CAPABILITY, "evidence": "Meshtext encode/decode, Companion send/receive, and Dispatcher raw-frame queue implementations", diff --git a/scripts/check_firmware_ram.py b/scripts/check_firmware_ram.py index b9259d695..f25accb49 100644 --- a/scripts/check_firmware_ram.py +++ b/scripts/check_firmware_ram.py @@ -385,7 +385,9 @@ def requirements(platform, defines, target): external_ota) if display and display != "NullDisplayDriver": parts["display_pixels_and_driver"] = display_heap - screen_budget = integer(defines, "MESH_COMPANION_SCREEN_STARTUP_BYTES", 0) + pocket_gui = ("HELTEC_MESH_POCKET" in defines and "COMPANION_RADIO_FULL" in defines + and integer(defines, "UI_POCKET_GUI", 1) != 0) + screen_budget = integer(defines, "MESH_COMPANION_SCREEN_STARTUP_BYTES", 12288 if pocket_gui else 0) if companion and screen_budget: # A target using this override has a source-side static assertion # that covers its concrete startup screens and allocator overhead. diff --git a/scripts/firmware_build_recipe.py b/scripts/firmware_build_recipe.py index 9817dc248..1255c657d 100644 --- a/scripts/firmware_build_recipe.py +++ b/scripts/firmware_build_recipe.py @@ -24,7 +24,7 @@ RECIPE_ENVIRONMENT = ( ) PACKAGE_SUFFIXES = (".bin", "-merged.bin", ".uf2", ".zip", ".hex", ".capabilities.json", ".memory.json", ".font-license.txt", - ".meshtext-license.txt") + ".meshtext-license.txt", ".pocket-gui-license.txt") def canonical_digest(value): diff --git a/scripts/firmware_memory_manifest.py b/scripts/firmware_memory_manifest.py index ab52d58a2..5bea07c25 100644 --- a/scripts/firmware_memory_manifest.py +++ b/scripts/firmware_memory_manifest.py @@ -11,6 +11,7 @@ import sys sys.path.insert(0, str(Path(__file__).resolve().parent)) from package_nrf52_font_license import validate_artifact_notice from package_meshtext_license import validate_artifact_notice as validate_meshtext_notice +from package_pocket_gui_license import validate_artifact_notice as validate_pocket_gui_notice def digest(path): @@ -45,6 +46,7 @@ def artifact_files(stem): for suffix in (".bin", "-merged.bin", ".uf2", ".zip", ".hex", ".capabilities.json", ".font-license.txt")] candidates.append(stem.parent / (stem.name + ".meshtext-license.txt")) + candidates.append(stem.parent / (stem.name + ".pocket-gui-license.txt")) return [p for p in candidates if p.is_file()] @@ -53,6 +55,7 @@ def package_report(directory, stem): report = validate_build(directory) validate_artifact_notice(stem) validate_meshtext_notice(stem) + validate_pocket_gui_notice(stem) files = artifact_files(stem) if len(files) < 2 or not any(p.suffix in (".bin", ".uf2", ".zip", ".hex") for p in files): raise ValueError("cannot qualify an empty firmware package") @@ -68,6 +71,7 @@ def validate_package(stem): stem = Path(stem) validate_artifact_notice(stem) validate_meshtext_notice(stem) + validate_pocket_gui_notice(stem) report = passing_report(stem.parent / (stem.name + ".memory.json")) actual = {p.name: digest(p) for p in artifact_files(stem)} if len(actual) < 2 or actual != report.get("files"): diff --git a/scripts/package_cascade_release.py b/scripts/package_cascade_release.py index eb1b4a21d..08bcac843 100644 --- a/scripts/package_cascade_release.py +++ b/scripts/package_cascade_release.py @@ -19,6 +19,7 @@ from firmware_memory_manifest import validate_package from check_nrf52_uf2 import check_uf2 from package_nrf52_font_license import validate_artifact_notice from package_meshtext_license import validate_artifact_notice as validate_meshtext_notice +from package_pocket_gui_license import validate_artifact_notice as validate_pocket_gui_notice ROOT = Path(__file__).resolve().parents[1] @@ -243,6 +244,9 @@ def collect_artifacts(directory, version): meshtext_notice = validate_meshtext_notice(directory / stem) if meshtext_notice is not None: files.append(meshtext_notice) + pocket_gui_notice = validate_pocket_gui_notice(directory / stem) + if pocket_gui_notice is not None: + files.append(pocket_gui_notice) manifest["runtime_ram"] = {key: memory[key] for key in ( "passed", "available_internal_bytes", "required_heap_bytes", "elf_sha256")} accounted.update(files) diff --git a/scripts/package_pocket_gui_license.py b/scripts/package_pocket_gui_license.py new file mode 100644 index 000000000..ac33f9e39 --- /dev/null +++ b/scripts/package_pocket_gui_license.py @@ -0,0 +1,141 @@ +#!/usr/bin/env python3 +"""Carry MeshPocket GUI and font notices beside firmware containing that code.""" +from __future__ import annotations + +import argparse +import hashlib +import json +import os +from pathlib import Path +import re + +from firmware_elf import FirmwareElf + +ROOT = Path(__file__).resolve().parents[1] +NOTICE_PATH = ROOT / "tools/meshpocket_map/PocketGui-NOTICE.txt" +SIDECAR_SUFFIX = ".pocket-gui-license.txt" +COMPONENT = "meshpocket-gui-and-fonts" +LICENSE = "MIT AND BSD-2-Clause AND LicenseRef-Adobe-X11" +FONTS = {"u8g2_font_helvR08_tf", "u8g2_font_helvB08_tf", + "u8g2_font_helvR10_tf", "u8g2_font_helvB10_tf"} + + +def valid_notice(data): + return (0 < len(data) <= 262144 and all(text in data for text in ( + b"jackywashere/MeshCore-Mesh-Pocket-MessageBoard", + b"Copyright (c) 2025 Scott Powell", b"Permission is hereby granted, free of charge", + b"copies or substantial portions of the Software", b'THE SOFTWARE IS PROVIDED "AS IS"', + b"Copyright (c) 2018, olikraus", b"Redistribution and use in source and binary forms", + b"Copyright 1984-1989, 1994 Adobe Systems Incorporated.", + b"Copyright 1988, 1994 Digital Equipment Corporation.", + b"Permission to use, copy, modify, distribute and sell this software", + b"without express or implied warranty."))) + + +def notice_bytes(): + data = NOTICE_PATH.read_bytes() + if not valid_notice(data): + raise ValueError("MeshPocket GUI/font source notice is incomplete") + return data + + +def pocket_gui_evidence(path): + """Only allocated definitions qualify, never target names or debug strings.""" + if Path(path).read_bytes()[:4] != b"\x7fELF": + return [] + elf = FirmwareElf(path) + evidence = [] + for name, (_address, size, index) in elf.symbols.items(): + if size <= 0 or index >= len(elf.sections): + continue + section = elf.sections[index] + if section[1] == 8 or not section[2] & 2: + continue + gui = (section[2] & 4 and name.startswith(( + "_ZN4mesh2ui6pocket9PocketGui", "_ZNK4mesh2ui6pocket9PocketGui"))) + if gui or name in FONTS: + evidence.append(name) + return sorted(evidence) + + +def sidecar(stem): + stem = Path(stem) + return stem.parent / (stem.name + SIDECAR_SUFFIX) + + +def notice_record(stem, data): + return {"component": COMPONENT, "license": LICENSE, + "file": sidecar(stem).name, "sha256": hashlib.sha256(data).hexdigest()} + + +def manifest_record(stem): + stem = Path(stem) + manifest = json.loads((stem.parent / (stem.name + ".capabilities.json")).read_text()) + records = [record for record in manifest.get("third_party_notices", []) + if record.get("component") == COMPONENT] + if len(records) > 1: + raise ValueError(f"{stem}: duplicate MeshPocket GUI/font notice declarations") + if not records: + return None + record = records[0] + if (record.get("file") != sidecar(stem).name or record.get("license") != LICENSE + or not re.fullmatch(r"[0-9a-f]{64}", str(record.get("sha256", "")))): + raise ValueError(f"{stem}: invalid MeshPocket GUI/font notice declaration") + return record + + +def validate_artifact_notice(stem): + record = manifest_record(stem) + output = sidecar(stem) + if record is None: + if output.exists(): + raise ValueError(f"{output}: stale notice for unaffected firmware") + return None + if not output.is_file(): + raise ValueError(f"{output}: missing MeshPocket GUI/font notice") + data = output.read_bytes() + if not valid_notice(data) or hashlib.sha256(data).hexdigest() != record["sha256"]: + raise ValueError(f"{output}: incomplete or mismatched MeshPocket GUI/font notice") + return output + + +def collect_build_notice(directory, stem): + evidence = pocket_gui_evidence(Path(directory) / "firmware.elf") + record = manifest_record(stem) + if bool(evidence) != bool(record): + raise ValueError("MeshPocket GUI/font notice declaration does not match the linked ELF") + if not evidence: + return validate_artifact_notice(stem) + data = notice_bytes() + if record != notice_record(stem, data): + raise ValueError("MeshPocket GUI/font notice declaration does not match the source notice") + output = sidecar(stem) + if not output.exists(): + temporary = output.with_name(f".{output.name}.{os.getpid()}.tmp") + try: + temporary.write_bytes(data) + temporary.replace(output) + finally: + temporary.unlink(missing_ok=True) + return validate_artifact_notice(stem) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("action", choices=("collect", "validate")) + parser.add_argument("path", type=Path) + parser.add_argument("--stem", type=Path) + args = parser.parse_args() + try: + if args.action == "collect": + if args.stem is None: + parser.error("collect requires --stem") + collect_build_notice(args.path, args.stem) + else: + validate_artifact_notice(args.path) + except (OSError, ValueError, KeyError, TypeError) as error: + parser.exit(1, f"MeshPocket GUI/font notice qualification failed: {error}\n") + + +if __name__ == "__main__": + main() diff --git a/src/helpers/ui/CompanionMessageHistory.h b/src/helpers/ui/CompanionMessageHistory.h index 1bac68814..57b3d65e0 100644 --- a/src/helpers/ui/CompanionMessageHistory.h +++ b/src/helpers/ui/CompanionMessageHistory.h @@ -86,6 +86,7 @@ public: uint64_t heard_millis; int queue_index; bool unread; + bool own_sent; int channel_idx; char channel_name[32]; char origin[62]; @@ -135,14 +136,15 @@ public: void add(uint64_t heard_millis, int channel_idx, const char* channel_name, const char* origin, - const char* message, int queue_index = -1) { + const char* message, int queue_index = -1, bool own_sent = false) { _head = (_head + 1) % Capacity; if (_count < Capacity) ++_count; Entry& entry = _entries[_head]; entry.heard_millis = heard_millis; entry.queue_index = queue_index; - entry.unread = true; + entry.unread = !own_sent; + entry.own_sent = own_sent; entry.channel_idx = channel_idx; copyField(entry.channel_name, sizeof(entry.channel_name), channel_name); copyField(entry.origin, sizeof(entry.origin), origin); diff --git a/src/helpers/ui/GxEPDDisplay.cpp b/src/helpers/ui/GxEPDDisplay.cpp index 70f622ae9..203f7a2f1 100644 --- a/src/helpers/ui/GxEPDDisplay.cpp +++ b/src/helpers/ui/GxEPDDisplay.cpp @@ -138,12 +138,17 @@ void GxEPDDisplay::startFrame(ColorVal bkg) { if (_cycles_before_full_refresh != 0) { display.setPartialWindow(0, 0, display.width(), display.height()); } else { +#if UI_POCKET_GUI + display.setFullWindow(); + _full_frame = true; +#else // forces a full wipe of the screen ... display.clearScreen(0xFF); // Clears microcontroller side RAM display.writeScreenBuffer(0xFF); // Forces 0xFF (White) into the display controller's history registers // we'll need a partial refresh after that (whatever crc value is) last_display_crc_value = 0; resetPartialRefreshCounter(); +#endif } } @@ -247,11 +252,25 @@ uint16_t GxEPDDisplay::getTextWidth(const char* str) { void GxEPDDisplay::endFrame() { if (_isOn == false) return; uint32_t crc = display_crc.finalize(); +#if UI_POCKET_GUI + if (_full_frame) { + display.display(false); + display.setPartialWindow(0, 0, display.width(), display.height()); + resetPartialRefreshCounter(); + _full_frame = false; + display.powerOff(); + } else if (crc != last_display_crc_value) { + display.display(true); + if (_cycles_before_full_refresh > 0) --_cycles_before_full_refresh; + display.powerOff(); + } +#else if (crc != last_display_crc_value) { display.display(true); if (_cycles_before_full_refresh > 0) { _cycles_before_full_refresh--; } } +#endif last_display_crc_value = crc; } diff --git a/src/helpers/ui/GxEPDDisplay.h b/src/helpers/ui/GxEPDDisplay.h index 83138461a..7dd5f9642 100644 --- a/src/helpers/ui/GxEPDDisplay.h +++ b/src/helpers/ui/GxEPDDisplay.h @@ -15,6 +15,7 @@ #include #include "DisplayDriver.h" +#include "PocketGuiConfig.h" #ifndef EINK_MAX_PARTIAL_REFRESH // 60 to prevent ghosting when refreshing every minute ... @@ -58,6 +59,9 @@ class GxEPDDisplay : public DisplayDriver { int last_display_crc_value = 0; int _cycles_before_full_refresh; int max_partial_refresh = EINK_MAX_PARTIAL_REFRESH; // so this can be changed by an option after +#if UI_POCKET_GUI + bool _full_frame = false; +#endif public: #if defined(EINK_DISPLAY_MODEL) @@ -67,6 +71,29 @@ public: #endif bool begin(); +#if UI_POCKET_GUI + Adafruit_GFX& gfx() { return display; } + void crcAdd(const void* bytes, size_t length) { + display_crc.update(static_cast(bytes), length); + } + void setMaxPartialRefresh(int count) { + if (count == max_partial_refresh) return; + max_partial_refresh = count; + resetPartialRefreshCounter(); + } + void setNativeRotation(int rotation) { + rotation &= 3; + if (display.getRotation() == rotation) return; + display.setRotation(rotation); + setDimensions(display.width(), display.height()); + display.setFullWindow(); + _full_frame = true; + forceFullRefresh(); + } + void setFlipped(bool flipped) override { + setNativeRotation((DISPLAY_ROTATION + (flipped ? 2 : 0)) & 3); + } +#endif bool isOn() override { return _isOn; } bool isEink() override { return true; } diff --git a/src/helpers/ui/PocketGuiConfig.h b/src/helpers/ui/PocketGuiConfig.h new file mode 100644 index 000000000..9fb72baa7 --- /dev/null +++ b/src/helpers/ui/PocketGuiConfig.h @@ -0,0 +1,22 @@ +#pragma once + +#ifndef UI_POCKET_GUI + #if defined(HELTEC_MESH_POCKET) && defined(COMPANION_RADIO_FULL) + #define UI_POCKET_GUI 1 + #else + #define UI_POCKET_GUI 0 + #endif +#endif + +#if UI_POCKET_GUI && !(defined(HELTEC_MESH_POCKET) && defined(COMPANION_RADIO_FULL)) + #error "The Pocket GUI requires MeshPocket Full Companion" +#endif + +#if UI_POCKET_GUI + #ifndef UI_MSG_PREVIEW_SIZE + #define UI_MSG_PREVIEW_SIZE 170 + #endif + #ifndef MESH_COMPANION_SCREEN_STARTUP_BYTES + #define MESH_COMPANION_SCREEN_STARTUP_BYTES 12288 + #endif +#endif diff --git a/src/helpers/ui/PocketGuiSettings.h b/src/helpers/ui/PocketGuiSettings.h new file mode 100644 index 000000000..9f416d51d --- /dev/null +++ b/src/helpers/ui/PocketGuiSettings.h @@ -0,0 +1,213 @@ +#pragma once + +#include +#include +#include + +namespace mesh { +namespace ui { +namespace pocket { + +// Store an explicit wire record rather than compiler-specific structure padding. +struct Settings { + uint8_t channel = 0; + uint8_t text_large = 0; + uint8_t name_len = 1; + uint8_t flip = 0; + uint8_t dark = 0; + uint8_t idle = 1; + uint8_t refresh = 1; + uint8_t map_zoom = 3; +}; + +constexpr size_t SETTINGS_RECORD_SIZE = 13; +constexpr unsigned SETTINGS_COUNT = 8; + +inline bool settingsValid(const Settings& value, unsigned channel_count = 40) { + return channel_count != 0 && channel_count <= 256 && value.channel < channel_count + && value.text_large <= 1 && value.name_len <= 3 + && value.flip <= 1 && value.dark <= 1 + && value.idle <= 3 && value.refresh <= 3 && value.map_zoom <= 8; +} + +inline uint16_t settingsChecksum(const uint8_t* bytes, size_t length) { + uint16_t crc = 0xFFFF; + for (size_t i = 0; i < length; ++i) { + crc ^= (uint16_t)bytes[i] << 8; + for (unsigned bit = 0; bit < 8; ++bit) + crc = crc & 0x8000 ? (uint16_t)((crc << 1) ^ 0x1021) + : (uint16_t)(crc << 1); + } + return crc; +} + +inline bool encodeSettings(const Settings& value, uint8_t* bytes, size_t size, + unsigned channel_count = 40) { + if (bytes == nullptr || size != SETTINGS_RECORD_SIZE || !settingsValid(value, channel_count)) return false; + bytes[0] = 'P'; bytes[1] = 'G'; bytes[2] = 1; + bytes[3] = value.channel; + bytes[4] = value.text_large; + bytes[5] = value.name_len; + bytes[6] = value.flip | (value.dark << 1); + bytes[7] = value.idle; + bytes[8] = value.refresh; + bytes[9] = value.map_zoom; + bytes[10] = 0; + const uint16_t crc = settingsChecksum(bytes, 11); + bytes[11] = (uint8_t)crc; + bytes[12] = (uint8_t)(crc >> 8); + return true; +} + +inline bool decodeSettings(Settings& value, const uint8_t* bytes, size_t size, + unsigned channel_count = 40) { + if (bytes == nullptr || size != SETTINGS_RECORD_SIZE + || bytes[0] != 'P' || bytes[1] != 'G' || bytes[2] != 1 + || (bytes[6] & ~3U) != 0 || bytes[10] != 0 + || settingsChecksum(bytes, 11) != (uint16_t)(bytes[11] | (uint16_t)bytes[12] << 8)) return false; + Settings next; + next.channel = bytes[3]; next.text_large = bytes[4]; next.name_len = bytes[5]; + next.flip = bytes[6] & 1; next.dark = (bytes[6] >> 1) & 1; + next.idle = bytes[7]; next.refresh = bytes[8]; next.map_zoom = bytes[9]; + if (!settingsValid(next, channel_count)) return false; + value = next; + return true; +} + +inline uint32_t idleMillis(const Settings& value) { + static const uint32_t values[] = {30000, 60000, 300000, 0}; + return values[value.idle <= 3 ? value.idle : 1]; +} + +inline int refreshCount(const Settings& value) { + static const int values[] = {10, 30, 60, -1}; + return values[value.refresh <= 3 ? value.refresh : 1]; +} + +inline unsigned nameCharacters(const Settings& value) { + static const uint8_t values[] = {3, 5, 8, 0}; + return values[value.name_len <= 3 ? value.name_len : 1]; +} + +inline double mapHeightKm(const Settings& value) { + static const uint16_t values[] = {20000, 5000, 1000, 200, 100, 50, 20, 10, 5}; + return values[value.map_zoom <= 8 ? value.map_zoom : 3]; +} + +inline bool cycleSetting(Settings& value, unsigned row, unsigned channel_count = 40) { + switch (row) { + case 0: + if (channel_count == 0 || channel_count > 256) return false; + value.channel = (uint8_t)((value.channel + 1U) % channel_count); break; + case 1: value.text_large = !value.text_large; break; + case 2: value.name_len = (value.name_len + 1) % 4; break; + case 3: value.flip = !value.flip; break; + case 4: value.dark = !value.dark; break; + case 5: value.idle = (value.idle + 1) % 4; break; + case 6: value.refresh = (value.refresh + 1) % 4; break; + case 7: value.map_zoom = (value.map_zoom + 1) % 9; break; + default: return false; + } + return true; +} + +struct BoardState { + unsigned scroll = 0; + void clamp(unsigned count) { if (scroll >= count) scroll = count == 0 ? 0 : count - 1; } + bool scrollOlder(unsigned count) { + clamp(count); + if (count == 0 || scroll + 1 >= count) return false; + ++scroll; + return true; + } + bool scrollNewer() { + if (scroll == 0) return false; + --scroll; + return true; + } + void messageAdded() { if (scroll != 0 && scroll < 31) ++scroll; } +}; + +inline uint32_t messageAgeSeconds(uint64_t now_millis, uint64_t heard_millis) { + // MeshPocket uses Arduino's 32-bit millis(), widened in shared history. + return (uint32_t)((uint32_t)now_millis - (uint32_t)heard_millis) / 1000; +} + +// Never leave a partial UTF-8 character at the end of a displayed name. +inline size_t nextUtf8Character(const char* value, size_t offset, size_t length) { + if (offset >= length) return length; + const uint8_t lead = (uint8_t)value[offset]; + size_t count = lead < 0x80 ? 1 : lead >= 0xC2 && lead <= 0xDF ? 2 + : lead >= 0xE0 && lead <= 0xEF ? 3 : lead >= 0xF0 && lead <= 0xF4 ? 4 : 1; + if (count > length - offset) return offset + 1; + for (size_t i = 1; i < count; ++i) + if (((uint8_t)value[offset + i] & 0xC0) != 0x80) return offset + 1; + return offset + count; +} + +inline void truncateCharacters(char* text, unsigned count) { + if (text == nullptr || count == 0) return; + const size_t length = strlen(text); + size_t position = 0; + for (unsigned i = 0; i < count && position < length; ++i) + position = nextUtf8Character(text, position, length); + text[position] = 0; +} + +// The compact fonts include Latin-1. Replace unsupported code points without +// splitting UTF-8 or reading beyond the supplied input length. +inline void sanitizeText(char* output, size_t capacity, const char* input, size_t length) { + if (output == nullptr || capacity == 0) return; + size_t source = 0, destination = 0; + if (input != nullptr) while (source < length && input[source] != 0) { + const uint8_t lead = (uint8_t)input[source]; + const size_t next = nextUtf8Character(input, source, length); + const size_t bytes = next - source; + if (lead < 0x80) { + if (destination + 1 >= capacity) break; + output[destination++] = lead < 0x20 || lead == 0x7F ? ' ' : (char)lead; + } else if (bytes == 2 && lead == 0xC2 && (uint8_t)input[source + 1] < 0xA0) { + if (destination + 1 >= capacity) break; + output[destination++] = ' '; + } else if (bytes == 2 && (lead == 0xC2 || lead == 0xC3)) { + if (destination + 2 >= capacity) break; + output[destination++] = input[source]; + output[destination++] = input[source + 1]; + } else { + if (destination + 1 >= capacity) break; + output[destination++] = '*'; + } + source = next; + } + output[destination] = 0; +} + +struct BoardMessageView { + const char* sender; + size_t sender_length; + const char* text; +}; + +inline void parseBoardMessage(const char* origin, const char* body, bool own_sent, + BoardMessageView& result) { + result.sender = origin == nullptr ? "" : origin; + result.sender_length = strlen(result.sender); + result.text = body == nullptr ? "" : body; + if (!own_sent) { + const char* separator = strstr(result.text, ": "); + if (separator != nullptr && separator != result.text + && (size_t)(separator - result.text) <= 61) { + result.sender = result.text; + result.sender_length = (size_t)(separator - result.text); + result.text = separator + 2; + } else { + // The old preview's origin includes a route suffix, never show it as a name. + const char* route = strstr(result.sender, " ["); + if (route != nullptr) result.sender_length = (size_t)(route - result.sender); + } + } +} + +} // namespace pocket +} // namespace ui +} // namespace mesh diff --git a/src/helpers/ui/PocketWorldMap.cpp b/src/helpers/ui/PocketWorldMap.cpp new file mode 100644 index 000000000..72ae4122e --- /dev/null +++ b/src/helpers/ui/PocketWorldMap.cpp @@ -0,0 +1,227 @@ +#include "PocketWorldMap.h" +#include "PocketGuiConfig.h" + +#if UI_POCKET_GUI || defined(POCKET_WORLD_MAP_TEST) + +#include "PocketWorldMapData.generated.h" +#include "../ota/tinf/tinf.h" +#include + +namespace mesh { namespace ui { namespace pocket { +namespace { + +constexpr float kPi = 3.14159265358979323846f; +constexpr float kRadians = kPi / 180.0f; +constexpr float kEarthKm = 6371.0088f; + +struct Projection { + float latitude, longitude, sine, cosine, pixels_per_km, radius; + int width, height; + bool global; +}; + +bool makeProjection(const MapView& view, Projection& p) { + if (!isfinite(view.latitude) || !isfinite(view.longitude) || !isfinite(view.height_km) + || view.latitude < -90.0 || view.latitude > 90.0 || view.longitude < -180.0 + || view.longitude > 180.0 || view.height_km < 1.0 || view.height_km > 20000.0 + || view.width < 2 || view.height < 2 || view.width > 4096 || view.height > 4096) return false; + p.latitude = float(view.latitude) * kRadians; + p.longitude = float(view.longitude) * kRadians; + p.width = view.width; + p.height = view.height; + p.global = view.height_km == 20000.0; + if (p.global) { + // The overview includes every longitude and latitude, independent of the + // local centre's latitude. Preserve 2:1 map proportions with blank margins. + p.pixels_per_km = fminf((view.width - 1) / 360.0f, (view.height - 1) / 180.0f); + return true; + } + p.sine = sinf(p.latitude); + p.cosine = fabsf(float(view.latitude)) == 90.0f ? 0.0f : cosf(p.latitude); + p.pixels_per_km = (view.height - 1) / float(view.height_km); + p.radius = hypotf(view.width - 1, view.height - 1) * 0.5f / p.pixels_per_km / kEarthKm; + return true; +} + +bool project(const Projection& p, float latitude, float longitude, float& x, float& y) { + if (!isfinite(latitude) || !isfinite(longitude) || latitude < -90.0f || latitude > 90.0f) return false; + if (p.global) { + float degrees = longitude - p.longitude / kRadians; + while (degrees > 180.0f) degrees -= 360.0f; + while (degrees < -180.0f) degrees += 360.0f; + x = (p.width - 1) * 0.5f + degrees * p.pixels_per_km; + y = (p.height - 1) * 0.5f - latitude * p.pixels_per_km; + return true; + } + const float lat = latitude * kRadians; + float delta = longitude * kRadians - p.longitude; + // Decoded longitudes are bounded to +/-540 degrees, so at most two wraps. + while (delta > kPi) delta -= 2.0f * kPi; + while (delta < -kPi) delta += 2.0f * kPi; + const float sin_lat = sinf(lat); + const float cos_lat = fabsf(latitude) == 90.0f ? 0.0f : cosf(lat); + const float cos_delta = cosf(delta); + float cos_distance = p.sine * sin_lat + p.cosine * cos_lat * cos_delta; + if (cos_distance > 1.0f) cos_distance = 1.0f; + // At the far hemisphere the azimuthal singularity can join unrelated edges. + // The Pocket's local map never needs that hemisphere to cover its viewport. + if (cos_distance < 0.0f) return false; + // c/sin(c) has a stable expansion at zero. It avoids acosf cancellation + // (and two transcendental calls) for nearby nodes and coastline vertices. + const float scale = cos_distance > 0.9999f + ? kEarthKm * (1.0f + (1.0f - cos_distance) / 3.0f) + : kEarthKm * acosf(cos_distance) / sqrtf(1.0f - cos_distance * cos_distance); + x = (p.width - 1) * 0.5f + scale * cos_lat * sinf(delta) * p.pixels_per_km; + y = (p.height - 1) * 0.5f - scale * (p.cosine * sin_lat - p.sine * cos_lat * cos_delta) * p.pixels_per_km; + return isfinite(x) && isfinite(y); +} + +// Conservative spherical-cap/bounding-box test; it may decode extra chunks, +// but never discards visible land at the antimeridian or either pole. +bool visibleChunk(const Projection& p, const data::Chunk& chunk) { + if (p.global) return true; + const float latitude = p.latitude / kRadians; + const float degrees = p.radius / kRadians + 0.01f; + if (chunk.north * 0.001f < latitude - degrees || chunk.south * 0.001f > latitude + degrees) return false; + if (p.radius >= kPi * 0.5f || latitude + degrees >= 90.0f || latitude - degrees <= -90.0f) return true; + const float ratio = sinf(p.radius) / p.cosine; + if (ratio >= 1.0f || ratio <= -1.0f) return true; + const float half_longitude = fabsf(asinf(ratio)) / kRadians + 0.01f; + const float center = p.longitude / kRadians; + // Source fragments are unwrapped; test adjacent copies of the view. + for (int copy = -1; copy <= 1; ++copy) { + const float longitude = center + copy * 360.0f; + if (chunk.east * 0.001f >= longitude - half_longitude + && chunk.west * 0.001f <= longitude + half_longitude) return true; + } + return false; +} + +bool clipAxis(float start, float delta, float minimum, float maximum, float& first, float& last) { + if (delta == 0.0f) return start >= minimum && start <= maximum; + float a = (minimum - start) / delta, b = (maximum - start) / delta; + if (a > b) { const float swap = a; a = b; b = swap; } + if (a > first) first = a; + if (b < last) last = b; + return first <= last; +} + +void drawClipped(const Projection& p, float ax, float ay, float bx, float by, + MapLine line, void* context) { + float first = 0.0f, last = 1.0f; + const float margin = p.global ? ((p.width - 1) * 0.5f - 180.0f * p.pixels_per_km) : 0.0f; + if (!clipAxis(ax, bx - ax, margin, p.width - 1 - margin, first, last) + || !clipAxis(ay, by - ay, 0.0f, p.height - 1, first, last)) return; + const int x0 = static_cast(lroundf(ax + first * (bx - ax))); + const int y0 = static_cast(lroundf(ay + first * (by - ay))); + const int x1 = static_cast(lroundf(ax + last * (bx - ax))); + const int y1 = static_cast(lroundf(ay + last * (by - ay))); + line(context, x0, y0, x1, y1); +} + +void drawSegment(const Projection& p, float ax, float ay, float bx, float by, + MapLine line, void* context) { + if (p.global) { + const float span = 360.0f * p.pixels_per_km; + if (fabsf(bx - ax) > span * 0.5f) { + // Split a seam crossing at the two map edges, never across the middle. + if (bx > ax) ax += span; + else bx += span; + drawClipped(p, ax, ay, bx, by, line, context); + drawClipped(p, ax - span, ay, bx - span, by, line, context); + return; + } + } + drawClipped(p, ax, ay, bx, by, line, context); +} + +uint16_t read16(const uint8_t* p) { return uint16_t(p[0]) | (uint16_t(p[1]) << 8); } +int32_t read32(const uint8_t* p) { + return static_cast(uint32_t(p[0]) | (uint32_t(p[1]) << 8) + | (uint32_t(p[2]) << 16) | (uint32_t(p[3]) << 24)); +} + +bool readDelta(const uint8_t*& cursor, const uint8_t* end, int32_t& delta) { + uint32_t value = 0; + // Coordinates fit signed 32-bit, but a map delta needs at most 21 bits. + for (unsigned shift = 0; shift < 28; shift += 7) { + if (cursor == end) return false; + const uint8_t byte = *cursor++; + value |= uint32_t(byte & 127) << shift; + if (!(byte & 128)) { + delta = (value & 1) ? -static_cast((value >> 1) + 1) : static_cast(value >> 1); + return true; + } + } + return false; +} + +bool drawChunk(const Projection& p, const uint8_t* bytes, size_t size, MapLine line, void* context) { + const uint8_t* cursor = bytes; + const uint8_t* end = bytes + size; + while (cursor != end) { + if (size_t(end - cursor) < 10) return false; + const unsigned count = read16(cursor); + int32_t longitude = read32(cursor + 2), latitude = read32(cursor + 6); + cursor += 10; + if (count < 2 || count > 96 || longitude < -540000 || longitude > 540000 + || latitude < -90000 || latitude > 90000) return false; + float ax = 0.0f, ay = 0.0f; + bool previous = project(p, latitude * 0.001f, longitude * 0.001f, ax, ay); + for (unsigned point = 1; point < count; ++point) { + int32_t dx, dy; + if (!readDelta(cursor, end, dx) || !readDelta(cursor, end, dy) + || dx < -360000 || dx > 360000 || dy < -180000 || dy > 180000) return false; + // Bounds checked in 64 bits before updating decoded coordinates. + const int64_t next_lon = int64_t(longitude) + dx, next_lat = int64_t(latitude) + dy; + if (next_lon < -540000 || next_lon > 540000 || next_lat < -90000 || next_lat > 90000) return false; + longitude = int32_t(next_lon); + latitude = int32_t(next_lat); + float bx = 0.0f, by = 0.0f; + const bool current = project(p, latitude * 0.001f, longitude * 0.001f, bx, by); + if (previous && current) drawSegment(p, ax, ay, bx, by, line, context); + previous = current; + ax = bx; + ay = by; + } + } + return true; +} + +} // namespace + +bool projectWorldPoint(const MapView& view, double latitude, double longitude, int& x, int& y) { + Projection p; + float px, py; + if (longitude < -180.0 || longitude > 180.0 || !makeProjection(view, p) || !project(p, latitude, longitude, px, py) + || px < -0.5f || py < -0.5f || px >= p.width - 0.5f || py >= p.height - 0.5f) return false; + x = int(lroundf(px)); + y = int(lroundf(py)); + return true; +} + +bool renderWorldMap(const MapView& view, MapLine line, void* context) { + Projection p; + if (!line || !makeProjection(view, p)) return false; + uint8_t scratch[data::kScratchBytes]; + for (const auto& chunk : data::kChunks) { + if (!visibleChunk(p, chunk)) continue; + if (chunk.raw > sizeof(scratch) || chunk.offset > sizeof(data::kDeflate) + || chunk.packed > sizeof(data::kDeflate) - chunk.offset) return false; + unsigned int size = chunk.raw; + if (tinf_uncompress_exact(scratch, &size, data::kDeflate + chunk.offset, chunk.packed) != TINF_OK + || size != chunk.raw || !drawChunk(p, scratch, size, line, context)) return false; + } + return true; +} + +#if defined(POCKET_WORLD_MAP_TEST) +bool renderWorldMapChunkForTest(const MapView& view, const uint8_t* bytes, size_t size, + MapLine line, void* context) { + Projection p; + return bytes && line && makeProjection(view, p) && drawChunk(p, bytes, size, line, context); +} +#endif + +}}} +#endif diff --git a/src/helpers/ui/PocketWorldMap.h b/src/helpers/ui/PocketWorldMap.h new file mode 100644 index 000000000..71c00686a --- /dev/null +++ b/src/helpers/ui/PocketWorldMap.h @@ -0,0 +1,31 @@ +#pragma once + +#include +#include + +namespace mesh { namespace ui { namespace pocket { + +// Local azimuthal equidistant view. Height is the full vertical extent in km. +// At 20,000 km use a complete equirectangular world overview, centred at the +// requested longitude and the equator, with blank margins to preserve aspect. +// The coarse land outline is useful around 100-200 km; close zooms locate nodes. +struct MapView { + double latitude, longitude, height_km; + int width, height; +}; + +using MapLine = void (*)(void* context, int x0, int y0, int x1, int y1); + +// Coordinates are relative to this viewport, including its clipped boundary. +// Returns false for an invalid view or corrupt built-in map data. +bool renderWorldMap(const MapView& view, MapLine line, void* context); +// Same projection as the coastline. False means invalid or outside the view. +bool projectWorldPoint(const MapView& view, double latitude, double longitude, int& x, int& y); + +#if defined(POCKET_WORLD_MAP_TEST) +// Exercise the production bounded parser with malformed/truncated raw chunks. +bool renderWorldMapChunkForTest(const MapView& view, const uint8_t* bytes, size_t size, + MapLine line, void* context); +#endif + +}}} diff --git a/src/helpers/ui/PocketWorldMapData.generated.h b/src/helpers/ui/PocketWorldMapData.generated.h new file mode 100644 index 000000000..52c9514cc --- /dev/null +++ b/src/helpers/ui/PocketWorldMapData.generated.h @@ -0,0 +1,3376 @@ +// Generated by tools/meshpocket_map/pack_world_map.py; do not edit. +// Natural Earth 1:50m land 4.1.0, public domain; see tools/meshpocket_map/README.md. +// Source SHA-256: 0b8e670cf80dce9cbebe2a193bc44ba5602758c22e1fa603980553646d7ff162 +// Zopfli 0.4.3, 1000 iterations; 4 km RDP, 0.001 degree coordinates. +#pragma once +#include +namespace mesh { namespace ui { namespace pocket { namespace data { +struct Chunk { uint32_t offset; uint16_t packed, raw; int32_t west, south, east, north; }; +static constexpr unsigned kScratchBytes = 3072; +static constexpr unsigned kRingCount = 1422; +static const Chunk kChunks[] = { + {0, 2340, 2730, -180000, -83119, -156809, 71577}, + {2340, 2617, 3060, -166786, -83543, -130981, 71408}, + {4957, 2380, 2790, -144417, -74623, -119984, 70574}, + {7337, 2455, 2854, -130430, -74193, -97158, 78757}, + {9792, 2454, 2805, -135362, -75422, -80336, 79352}, + {12246, 2526, 2939, -102709, -2996, -75604, 81346}, + {14772, 2544, 2919, -96898, 21441, -76530, 82096}, + {17316, 2640, 3062, -90025, -81461, -59957, 73855}, + {19956, 2569, 3036, -84887, 1253, -68359, 70604}, + {22525, 2641, 3047, -88546, -80948, -56835, 83116}, + {25166, 2519, 2967, -75708, -55890, -59268, 49942}, + {27685, 2430, 2851, -71018, -64567, -50653, 70783}, + {30115, 2415, 2803, -72818, -80870, -38691, 82884}, + {32530, 2693, 3064, -66134, -83458, -10958, 83600}, + {35223, 2601, 3067, -24476, -72702, 11127, 82117}, + {37824, 2365, 2785, -180000, -89999, 180000, 71178}, + {40189, 2521, 2945, -12351, -71786, 45197, 63899}, + {42710, 2606, 3070, 5132, -70448, 36939, 80358}, + {45316, 2562, 3048, 11400, 34934, 33454, 80478}, + {47878, 2430, 2834, 26113, -66798, 59824, 80229}, + {50308, 2551, 2984, 32360, -72300, 69918, 81854}, + {52859, 2627, 3052, 45197, -73300, 90547, 81719}, + {55486, 2579, 3058, 84389, -66470, 113857, 81280}, + {58065, 2585, 3049, 90547, -68274, 146828, 79701}, + {60650, 2376, 2812, 105144, -35098, 134301, 76626}, + {63026, 2564, 3062, 116707, -20721, 130860, 10160}, + {65590, 2546, 3070, 117554, -893, 129710, 40974}, + {68136, 2575, 3070, 124366, -36075, 144510, 73943}, + {70711, 2618, 3071, 127395, -43613, 153617, 75845}, + {73329, 2628, 3055, 135212, -78316, 170859, 76782}, + {75957, 2614, 3068, 145189, -78275, 180000, 76195}, + {78571, 1319, 1538, 161960, -41611, 180000, 71538}, +}; +static const uint8_t kDeflate[] = { + 0x15,0x54,0x03,0x94,0x9d,0xcb,0xd6,0xec,0xda,0xdd,0xfd,0x9d,0x73,0x86,0xd1,0x35,0xa3,0xf5,0xfe,0xd8,0xb6,0xad,0x97,0x1b, + 0xdb,0xbe,0x36,0xc7,0x36,0xef,0x18,0xd1,0x38,0x18,0x86,0x93,0x31,0x32,0x99,0xd8,0xc6,0xc4,0xb6,0xbe,0xf4,0xdf,0x6f,0xb9, + 0x6b,0xd7,0x56,0xad,0xae,0x6d,0xcf,0xea,0x27,0x99,0xaa,0xd5,0x34,0xa5,0xa2,0xb9,0x89,0x2e,0xc7,0x70,0x16,0x9d,0xee,0xd3, + 0x45,0x7e,0x87,0x0a,0x71,0x19,0xa9,0x88,0xc0,0x43,0xaa,0x11,0xbd,0xf3,0xc4,0x31,0xf8,0x18,0xed,0x04,0x3b,0xa4,0xd9,0x17, + 0xfe,0xab,0xd4,0xaa,0x0c,0x1d,0xfa,0xb0,0x4d,0x09,0x04,0xbb,0x39,0xc2,0x54,0xc3,0xb7,0x28,0xd5,0xbc,0x11,0x7d,0xfe,0x65, + 0x07,0x83,0x55,0x4e,0x35,0xd5,0xa4,0x6c,0xa5,0xd2,0x30,0x39,0x01,0x81,0x14,0xc3,0x77,0xd2,0xcc,0x89,0x45,0x54,0xa3,0xa9, + 0xc5,0x5f,0x99,0xaa,0x2e,0x4b,0x29,0xfb,0x6c,0x5a,0x53,0x8b,0x5f,0x97,0x1a,0xec,0xd5,0x60,0x53,0x5d,0xdd,0xa3,0x54,0x97, + 0x71,0xec,0x0a,0x45,0x51,0x39,0x26,0xc6,0x60,0x1b,0x15,0x93,0x60,0xff,0x19,0x62,0x2a,0xdf,0x62,0xa5,0x02,0x31,0xa6,0x12, + 0xa7,0xd0,0x2b,0x10,0x82,0x39,0x68,0xec,0xce,0x3e,0xa5,0x66,0xb4,0x1e,0xf8,0xd5,0xc7,0x1d,0x04,0x4b,0xd3,0x6f,0x51,0xa0, + 0x94,0x2b,0x7e,0x6a,0xf2,0xed,0xb7,0x86,0x60,0xc7,0x86,0x9b,0xaa,0x6a,0x87,0x52,0xf9,0x18,0x3a,0xb0,0xf3,0xaf,0xdf,0x49, + 0xf6,0x54,0x03,0xde,0xbb,0x95,0x5a,0xd0,0x0e,0x9b,0x28,0x0f,0x91,0x98,0xb2,0x44,0xb0,0x02,0x3d,0x71,0x65,0x91,0x52,0x99, + 0x18,0x9c,0x81,0xf7,0x69,0x9a,0x60,0x31,0x23,0x4d,0xd5,0x22,0x5f,0xa9,0xdf,0x3e,0x77,0x1a,0xbc,0x76,0x9e,0x60,0xf9,0xa3, + 0x4c,0x75,0x51,0xd7,0x39,0x8a,0xc1,0xb1,0x18,0xd9,0xd7,0x13,0x82,0xb9,0x8e,0x36,0x55,0x93,0x6a,0xa5,0x2e,0xc2,0x61,0xc4, + 0xf7,0x9b,0xe8,0x2f,0xc1,0x2e,0x4e,0xd2,0xd3,0xec,0x57,0x6a,0xd8,0xc0,0xf9,0xc9,0xf8,0xe8,0x3c,0x0c,0xf6,0xf7,0x4c,0x53, + 0x75,0x29,0x54,0x6a,0xcc,0x2f,0x71,0xf8,0xb9,0x16,0x51,0x98,0xdb,0x69,0xd0,0x12,0x83,0x1d,0x9d,0x6f,0xaa,0x15,0x9a,0x58, + 0x44,0x85,0x7c,0xc1,0x3d,0xdc,0x13,0x1f,0x36,0xf0,0x4d,0xe2,0xad,0xb1,0xd2,0xc2,0x86,0x2e,0xd6,0x8d,0x6b,0x94,0x0a,0xb7, + 0xcc,0xf4,0xa7,0x54,0x7a,0x49,0x4b,0xdf,0xf2,0x60,0x24,0x52,0x05,0x9c,0xbc,0x21,0xd8,0xc7,0xcb,0x4c,0xf5,0xa8,0x4a,0xa9, + 0x3d,0x98,0xf8,0x9a,0xcf,0xde,0x45,0x9b,0x35,0x36,0x69,0xba,0xa9,0xf6,0xdc,0x53,0xea,0xbd,0xcf,0x9a,0x0f,0xed,0xdd,0x52, + 0xb0,0x21,0xba,0xfa,0x1f,0x17,0x94,0xb2,0xf1,0x8f,0xc6,0xb6,0x1a,0x21,0xd8,0x98,0x05,0xa6,0x5a,0x74,0x5f,0xa9,0xe1,0x96, + 0xe6,0x1d,0x9b,0xb7,0x16,0x6c,0xe2,0x22,0x53,0x75,0x7d,0xa6,0x54,0x00,0x72,0xe1,0x8d,0xfe,0xfc,0x57,0xc1,0xbe,0x58,0x62, + 0xaa,0x50,0x4d,0xe9,0xf3,0x69,0x47,0x3b,0x87,0xff,0x51,0xf4,0xfb,0xa7,0xb3,0x4a,0xb5,0x6c,0xdf,0xcc,0xbe,0xd1,0x17,0x82, + 0xe5,0xea,0x77,0xc9,0x13,0xa5,0x3e,0xe0,0x4d,0xda,0x1b,0xff,0xb1,0xb2,0x36,0x63,0x4c,0x55,0x5a,0xc3,0xd8,0x9c,0x21,0xfe, + 0xf4,0x6d,0x18,0x0a,0x70,0x87,0xa2,0x28,0x8b,0x7f,0x7e,0x57,0x14,0xe2,0x38,0xbf,0x48,0x92,0x89,0xf1,0xa6,0x92,0xb5,0x8c, + 0x85,0x5b,0xbf,0xd8,0x69,0x1c,0xd2,0x5a,0xbf,0xc4,0xb8,0xcd,0xdc,0xc6,0x3a,0x4d,0x34,0x55,0x9c,0xc6,0x8b,0x68,0xde,0x67, + 0x9b,0x61,0x8a,0xa3,0x70,0xc7,0xdc,0x57,0x08,0x46,0x88,0x78,0x2b,0xd3,0x68,0xea,0xb4,0x18,0x08,0xb6,0x48,0x0b,0x39,0x59, + 0x93,0xfe,0xfa,0xe9,0x9f,0x53,0x78,0x87,0x45,0x82,0xfd,0x32,0xd9,0x54,0x4b,0x35,0xe2,0xc9,0x3b,0x36,0x5b,0xfe,0x98,0xc2, + 0x21,0xd9,0x6a,0x0d,0xb5,0xd8,0xcf,0xd8,0x23,0x88,0x8f,0xf6,0xe2,0x35,0x9a,0x37,0x49,0x82,0x3d,0xcb,0x9c,0x66,0xaa,0x61, + 0x1a,0x3d,0x6e,0xfb,0x68,0xb7,0xb3,0x07,0x9f,0xbf,0xfa,0x32,0x2d,0x8c,0x12,0xf5,0x78,0x8e,0x55,0x8d,0x1f,0xe1,0x05,0xe6, + 0xfc,0xe8,0x8a,0x93,0xd6,0x2a,0x48,0xe6,0x3c,0xdb,0x54,0x69,0x9a,0xb9,0xc1,0xfa,0xdd,0x69,0x87,0x01,0x85,0x14,0x85,0xfb, + 0xc6,0xc7,0x92,0x4d,0xd2,0xea,0x75,0xae,0x63,0x2c,0x9f,0x28,0x8b,0xae,0xa3,0x88,0x7e,0xc8,0xa6,0x1f,0x0c,0xd6,0x54,0x0b, + 0xbf,0xec,0x00,0x63,0xff,0x0c,0xe8,0xb7,0xbc,0x80,0xa7,0xc1,0x3e,0x12,0xf7,0xd0,0x47,0xd3,0x57,0x98,0x6a,0xe1,0x45,0xc6, + 0x0e,0x60,0xde,0x33,0x78,0x20,0x51,0x4c,0x9c,0xf5,0x83,0x64,0x2b,0x87,0x99,0xea,0x9e,0x62,0xac,0x44,0x86,0xcb,0x03,0xe2, + 0x01,0xd8,0xbf,0x03,0xc2,0xf8,0xb4,0x85,0x2c,0x5d,0xff,0xcf,0xf1,0x8e,0x60,0x3b,0x9d,0x9e,0x50,0xa2,0x3c,0x48,0x9b,0x79, + 0x04,0x7e,0xbc,0x8a,0x34,0xdb,0x23,0xfc,0xb7,0x98,0xbc,0x44,0x18,0x94,0xb5,0x9a,0x5f,0xb3,0x8b,0xe4,0x45,0xe4,0x8b,0x3f, + 0xfc,0x51,0x2d,0xb0,0xef,0xf3,0x12,0xeb,0x25,0x1c,0xe0,0x71,0x94,0x8b,0x9b,0x32,0x15,0xdb,0x69,0x1b,0xb6,0x40,0xf1,0x7a, + 0xba,0x25,0x72,0xa9,0x84,0x6a,0x8d,0x74,0x9c,0x83,0x3b,0xbf,0x2d,0xdc,0xe8,0xff,0x1a,0x78,0xa5,0x88,0xe5,0xe1,0x16,0x3f, + 0x5e,0xce,0x37,0x51,0x12,0xaa,0x29,0xc9,0x92,0x46,0x75,0x8e,0x6b,0x23,0xac,0xd1,0xd8,0x4f,0x57,0xe1,0x86,0x06,0x3d,0x66, + 0x1e,0xd5,0xf1,0x15,0xcf,0x8d,0x66,0x07,0x2d,0x57,0xf0,0xb2,0x89,0x2f,0xdd,0x34,0x4c,0xbe,0xc1,0x31,0x46,0xee,0xc2,0x1e, + 0x5c,0x10,0xb3,0xbf,0x7f,0x85,0x0d,0x96,0x6e,0x6b,0x92,0x28,0x50,0x36,0x79,0x23,0x13,0xe8,0x15,0x1a,0xf8,0x0d,0xfb,0x97, + 0xf4,0x52,0x1c,0x17,0x25,0x0e,0x9f,0xa5,0x58,0xcf,0x51,0xbe,0x7c,0xff,0x8c,0xf1,0x88,0xfe,0x99,0xf3,0x98,0x1c,0xa2,0x71, + 0x83,0x4a,0x64,0x8f,0x87,0x72,0x5a,0x18,0x76,0xd1,0x61,0xc7,0x03,0x7c,0xa7,0xe8,0x56,0x85,0x32,0xda,0xad,0x47,0xcb,0x82, + 0x3b,0xad,0x97,0xbc,0x8a,0xae,0xe1,0x3b,0x7f,0xfe,0x4c,0x8c,0x5b,0xf1,0x94,0xa7,0x8b,0xf3,0xf4,0x06,0x2c,0xd4,0xb1,0x54, + 0xa6,0x58,0xf6,0xe1,0x80,0xfc,0x20,0xd2,0x92,0xca,0xf9,0x6e,0x7e,0x9a,0x9f,0xe3,0x9e,0xce,0x89,0x74,0xd9,0x38,0x8b,0x7c, + 0x27,0x67,0xbd,0x30,0xbf,0x65,0xd4,0x0a,0x17,0xde,0xba,0x88,0xfb,0x18,0xe9,0x32,0x5b,0x33,0x66,0x8f,0x4b,0x24,0x5f,0x9e, + 0x8d,0x8f,0x5f,0xa1,0x44,0x8c,0xf0,0xc4,0xb7,0xc7,0x91,0x2f,0x0e,0x19,0xfe,0xe2,0xd3,0x27,0xb0,0xb2,0xbe,0xf3,0x4c,0xd5, + 0xe6,0x2e,0x63,0xe5,0xf2,0xa7,0x22,0xaa,0xc0,0x66,0xa3,0xff,0x1d,0xa3,0x9a,0xba,0x47,0xe1,0x25,0x26,0xde,0xa5,0x4c,0x6a, + 0xca,0xfa,0x68,0x87,0xfd,0xfb,0x92,0xb1,0x53,0xc6,0xba,0x4a,0x4b,0x3d,0x5e,0x73,0xc7,0x3c,0xf1,0x8a,0xe2,0x2d,0xf7,0x10, + 0xe4,0xf8,0xc7,0xac,0x12,0x14,0xda,0xa6,0xdd,0x13,0xd9,0x3c,0x81,0xea,0xc8,0xb7,0x91,0x87,0x4c,0xe7,0x62,0xb3,0x3c,0xae, + 0xf5,0xff,0xf0,0x19,0xbd,0x45,0x18,0xca,0x79,0x35,0x3a,0xdf,0xa7,0x6c,0xd8,0xd8,0x70,0x7d,0x36,0x62,0x3e,0x00,0xab,0xb3, + 0xbf,0x88,0x3c,0x5b,0x38,0x6f,0x54,0x8c,0xa3,0xa2,0x02,0x4f,0x3e,0x4c,0xa7,0x60,0x5b,0x04,0x58,0xa9,0xb5,0xba,0xf1,0x44, + 0x0b,0xeb,0x10,0x68,0xaa,0x71,0x25,0xef,0x54,0x45,0xb7,0x64,0x3a,0x80,0xc7,0x28,0xb2,0x9b,0x7e,0xc4,0x7e,0xd0,0xb9,0x0f, + 0x32,0x29,0xc7,0xf2,0x06,0x06,0xeb,0xe9,0x6d,0xaa,0x29,0xbb,0xde,0xa9,0x1d,0x8d,0xda,0x9f,0xb6,0x7f,0xcb,0x8f,0xbc,0xf7, + 0x4d,0x88,0x83,0xd2,0xa2,0x14,0xc2,0x8e,0xe5,0x86,0x99,0x6a,0x48,0xf5,0x3b,0x95,0xfb,0x89,0xad,0xb0,0x4b,0xbd,0x71,0x4f, + 0x24,0xd2,0x06,0x78,0xf1,0x4b,0x4e,0x61,0x32,0xa8,0x71,0x20,0x32,0x5a,0x6c,0xb4,0xa6,0x3a,0x35,0x48,0x7e,0x11,0x92,0xe5, + 0xaf,0xd4,0xa6,0xcd,0x57,0xaa,0x06,0xeb,0x66,0xb8,0xe1,0x1a,0x4e,0x60,0xe0,0x2d,0x0d,0x8f,0x0f,0xd2,0xe5,0xa7,0x31,0xb6, + 0x6e,0xcc,0xa7,0x3b,0x71,0x8a,0x4e,0xc1,0x93,0xaa,0x48,0xb2,0x56,0xab,0x4c,0xf5,0x4d,0x3d,0x63,0x03,0xd6,0xc5,0x88,0xf1, + 0x27,0x68,0xb5,0x1b,0x8d,0x12,0xac,0x41,0x97,0xe8,0x77,0x9e,0xb1,0xed,0x62,0xca,0x1e,0x5a,0xf0,0x04,0xdb,0xe1,0xc0,0xae, + 0x7d,0xa3,0xcf,0xc7,0x21,0xc6,0x1a,0xc4,0x71,0xed,0x6d,0x4f,0x1e,0x68,0xdb,0xc8,0x6b,0x45,0x06,0x3f,0x86,0xbb,0x74,0x57, + 0x7c,0xfb,0xc5,0x5b,0x9c,0x42,0x01,0x72,0xf8,0xf7,0xb7,0xf9,0xa2,0x60,0xaa,0xd0,0x0a,0xb7,0xf9,0xc9,0x54,0x81,0x47,0x18, + 0x9b,0xbe,0x20,0x84,0x6f,0xa0,0x58,0x72,0xc7,0x33,0x91,0xc0,0x13,0xb9,0xf3,0x17,0x33,0xf6,0x18,0xfe,0xfc,0xa2,0x7d,0x30, + 0xf7,0x14,0x9d,0x83,0x10,0x84,0xb7,0xd6,0x02,0x7a,0xa8,0x87,0x4a,0xe4,0x2b,0x7c,0xe0,0x85,0xd3,0xb2,0x1a,0x3e,0x70,0xa3, + 0x33,0xd2,0x05,0x3f,0x1e,0x86,0x60,0x7b,0x7f,0x36,0xd5,0xd9,0xc3,0x8c,0x4d,0x99,0x1d,0x46,0x51,0x28,0xc6,0x03,0x2c,0x64, + 0x0d,0x01,0xfa,0x58,0x9f,0x61,0xec,0x0c,0xbf,0x29,0xfc,0xac,0x0f,0xf9,0x5d,0xcb,0x3b,0x9c,0x91,0x6e,0xbc,0xa3,0x3b,0x8a, + 0x78,0x9b,0x4f,0x6f,0xf2,0x34,0xe9,0x25,0x0a,0x2c,0x75,0xdc,0xc5,0x68,0x77,0x9c,0x9f,0xa1,0x2c,0xed,0x9a,0x6f,0xb7,0xe3, + 0x88,0x5c,0xbb,0x5f,0xfc,0x3a,0xaa,0x9e,0xea,0x45,0x11,0x7f,0xcb,0xf7,0xc2,0x15,0x63,0xeb,0xf9,0x11,0x19,0x23,0x15,0xdf, + 0xd6,0x28,0x58,0x5c,0x44,0xef,0x60,0x9e,0xcc,0x63,0x91,0x41,0xdb,0x65,0xbb,0x4c,0x79,0x05,0x26,0x2f,0x21,0x4f,0x9a,0x3d, + 0x34,0x10,0xe9,0x78,0x40,0x21,0xc8,0x14,0x65,0x34,0x2a,0xc1,0xfe,0xa9,0xe5,0x09,0xcf,0xc7,0x33,0xa3,0x9e,0xfb,0x5b,0x1a, + 0xe8,0xac,0x11,0x8a,0xab,0x70,0xa5,0x70,0xe3,0x07,0x7f,0x63,0x70,0xad,0x91,0x45,0xae,0xd8,0xcd,0x53,0x69,0x37,0xee,0xf1, + 0x61,0xb9,0x08,0xc0,0xd4,0x08,0xca,0xa1,0x64,0x9a,0x5e,0x4a,0x3b,0x8c,0x58,0x5b,0x03,0x1d,0x43,0x9e,0x88,0x90,0x2e,0x3c, + 0x08,0x26,0x51,0x85,0xb5,0xc4,0xd8,0x4d,0xfe,0x98,0x91,0xc2,0xcb,0xc8,0xba,0xdf,0xb2,0x99,0x2e,0xda,0x4d,0x38,0xc9,0xf3, + 0xf0,0x7e,0x29,0xd6,0x5b,0xef,0x8a,0x04,0xe3,0x0c,0x86,0x6f,0x45,0xa0,0x9c,0x5c,0x6b,0xdd,0x2b,0xeb,0x2c,0x8f,0xb0,0x7a, + 0xce,0x51,0x68,0xbf,0xca,0x73,0x74,0x04,0x6d,0x6a,0x29,0x9f,0x6e,0x8b,0x7a,0xda,0x6f,0x29,0x85,0x8b,0x5c,0x5c,0x46,0x5e, + 0xb8,0xc3,0x0f,0xa3,0xb8,0xb1,0x0f,0x7e,0x19,0x7a,0x4d,0x6c,0xa0,0x24,0xde,0x72,0x59,0x39,0xa2,0x31,0x21,0x86,0x66,0x07, + 0x21,0x16,0x77,0xf0,0xd7,0xfb,0x47,0xf1,0x88,0x2c,0xaf,0x10,0xc0,0x4f,0xd3,0xe8,0xa9,0x3e,0x38,0x83,0x1c,0x2c,0x98,0xfd, + 0x88,0xf7,0x31,0x58,0xc7,0x5f,0x4d,0xd5,0xeb,0x28,0x63,0xd9,0xbc,0xf9,0x80,0xeb,0xf0,0xe2,0xe3,0x43,0xf8,0x71,0xa4,0x93, + 0xbe,0x72,0xa3,0x7e,0x33,0xd5,0x6f,0x3a,0xb2,0x03,0x37,0x51,0x8f,0xc1,0x89,0xb4,0x05,0xdb,0xe8,0x17,0x27,0xb6,0xd6,0xd5, + 0x54,0x15,0x27,0x18,0x2b,0x45,0x0d,0x1d,0x12,0x1b,0x69,0xa3,0xf0,0x42,0x09,0x3f,0x8b,0x68,0x5b,0x87,0x2a,0x71,0x91,0x0e, + 0x4a,0x67,0x57,0xbc,0xa6,0xed,0xc6,0x09,0x11,0xcb,0x1d,0x37,0x59,0x32,0x28,0x84,0x0b,0x2f,0xf2,0x87,0x60,0x86,0xa7,0xa9, + 0x5c,0x8f,0x31,0xd6,0x40,0xba,0xd6,0x4e,0x44,0x89,0x5d,0xd0,0xa0,0x97,0xa9,0x06,0xe9,0x72,0xc1,0x94,0x81,0x23,0xb4,0x7c, + 0x48,0x30,0x49,0xb6,0xca,0xdf,0x54,0x87,0xaf,0xe9,0xa1,0xc8,0xf9,0xb7,0x4a,0xec,0x33,0xde,0x21,0x9a,0xe7,0x72,0x0b,0x9b, + 0xaa,0xbf,0x41,0xd3,0x53,0x8c,0xf9,0x90,0x07,0xdc,0xe0,0xcd,0x1b,0xc4,0xa4,0x15,0x75,0xf4,0x1c,0xbb,0x31,0x31,0x17,0x82, + 0x15,0x6a,0xd3,0xb5,0xd5,0xe1,0x4f,0x12,0x70,0x96,0xb4,0xfb,0xc9,0x2a,0xd9,0x3f,0xc1,0xa6,0x9a,0x75,0x92,0xb1,0x32,0x19, + 0xc7,0xbf,0x0e,0xe1,0x3b,0x45,0x16,0x7d,0x9a,0x44,0x0b,0x59,0xd7,0x5f,0x4c,0x35,0xec,0x21,0x63,0xe1,0x48,0xa6,0x7a,0x39, + 0x3b,0x4e,0x9c,0xd0,0xe7,0xcf,0x03,0xda,0xd4,0x68,0x15,0x4b,0x2e,0xd6,0xbb,0xd2,0x8b,0xff,0x7a,0x8d,0x8f,0xc9,0x44,0x1a, + 0x8a,0xa8,0x67,0x25,0x6a,0x11,0xcd,0x33,0xb1,0xe2,0x1a,0xcd,0xbe,0x8d,0xe7,0xa8,0x43,0xad,0x68,0x16,0x43,0xe5,0x5a,0x9b, + 0x1c,0x9d,0x38,0x38,0x48,0x3e,0xc1,0x13,0x9c,0xc6,0x31,0x9e,0x87,0xad,0xfc,0x97,0x34,0xe9,0x87,0x20,0x99,0x43,0x1b,0x64, + 0x90,0x38,0x41,0x76,0x11,0x94,0x82,0x0c,0xcb,0xe7,0x17,0x78,0xdf,0x4d,0xb2,0x9a,0xd2,0x68,0x37,0xa5,0xf0,0x4b,0xc6,0x41, + 0x6d,0x94,0x04,0x31,0xf6,0x5f,0x14,0xa1,0xd2,0xb2,0x7a,0x1f,0xea,0xb1,0xec,0x1a,0x1a,0xb8,0x1b,0x25,0x49,0x77,0xaa,0x11, + 0x6d,0x95,0x35,0x92,0x3f,0x90,0xc7,0x79,0x31,0x2c,0xbe,0x88,0xa7,0x60,0x19,0x42,0x15,0x98,0xf3,0x5c,0x4f,0x51,0x88,0x62, + 0x3c,0xb2,0x56,0x53,0x82,0xcd,0x52,0x61,0xe7,0x4e,0xd1,0x4d,0xdc,0xf4,0xb9,0x4d,0xd5,0xa2,0x04,0x71,0x57,0x6b,0x1d,0x8f, + 0x35,0x78,0xa2,0x2e,0x1a,0x25,0x3f,0x1d,0xd5,0x75,0x4f,0xd3,0x10,0x0a,0xb4,0x6d,0xa0,0x1a,0xe4,0x61,0x27,0xe5,0xa1,0x85, + 0x27,0xe2,0x65,0x2c,0x2e,0x50,0xad,0x8e,0xb7,0x0a,0x90,0x17,0x68,0xa7,0x2c,0x82,0x9b,0xc3,0x47,0x01,0x18,0xbd,0x45,0xc4, + 0xc3,0x05,0x11,0xa8,0x6e,0x16,0x2b,0x8a,0xec,0x7b,0xe7,0x61,0x8a,0xe2,0x74,0x1f,0xb3,0x14,0xb6,0x51,0x93,0x7c,0x44,0x53, + 0x20,0x36,0x49,0x6f,0x2a,0xfd,0x64,0xca,0x5d,0xbc,0x7f,0x44,0x56,0xf2,0x5a,0xa3,0x10,0x99,0x48,0xa5,0x1d,0x0e,0xf1,0xe8, + 0x9b,0x8a,0xf3,0x22,0x84,0x6f,0x16,0xd3,0xa3,0xf5,0x7e,0xf6,0xcc,0xa6,0x05,0xbe,0x74,0x87,0xb1,0x0c,0xc3,0x1f,0x7a,0x7f, + 0xe3,0x85,0xe5,0xaf,0x45,0x99,0xd8,0xe5,0x7c,0x9b,0x1f,0x16,0x01,0x7c,0xab,0xad,0xd9,0xca,0x44,0xdc,0x14,0x39,0xc8,0x90, + 0x24,0x58,0x0b,0x4d,0xce,0x25,0xb0,0x58,0x2c,0xdf,0xc4,0x97,0x16,0x8b,0x1a,0x08,0x76,0x2e,0xca,0x54,0xa3,0x8a,0xdf,0xa9, + 0xc3,0xce,0x01,0xd2,0xa3,0xc9,0x0b,0xbe,0x8d,0xc2,0xf1,0xff,0x25,0x55,0x05,0x58,0x55,0xd9,0xda,0x5e,0xef,0xb7,0xd6,0xde, + 0xfb,0x9c,0x43,0x8b,0x4e,0x5b,0xd3,0xdd,0xdd,0xdd,0x61,0x4c,0xa7,0xde,0x2e,0xaf,0x1d,0x37,0x07,0xa5,0x4b,0x29,0x69,0xe5, + 0x80,0x48,0x77,0xa7,0x01,0xd2,0x60,0x2b,0xdd,0x9d,0x32,0x30,0xb6,0xfb,0xac,0x7f,0xff,0xcf,0x7d,0x62,0xc7,0xfb,0x75,0xaf, + 0x61,0xcd,0xff,0xd2,0x65,0x52,0x99,0x4d,0x66,0x68,0x83,0x34,0xb3,0x30,0x9c,0x12,0x1d,0xaf,0x53,0xd5,0x5d,0x8f,0x1f,0xd1, + 0x7e,0x3a,0xb2,0xd4,0x8f,0x5b,0xd5,0x3e,0xf4,0x9b,0x7e,0xcc,0xc7,0x96,0xb6,0x3b,0x53,0x68,0x42,0x5c,0x42,0xdf,0xc2,0x6b, + 0xd4,0x66,0x5f,0xc4,0xcf,0xdd,0x76,0x4d,0x9b,0xb5,0x1b,0xe0,0xd3,0x8e,0x37,0x28,0x6a,0xb9,0x8d,0xe6,0xb4,0x32,0x4a,0x73, + 0x87,0x9f,0xa8,0xc7,0x2e,0xd4,0xb9,0x4c,0xc0,0x13,0x23,0xc8,0x74,0xac,0xc0,0xbc,0x5a,0x42,0xc7,0x94,0x48,0xde,0xb7,0x78, + 0x3f,0x46,0x11,0x4b,0x7d,0xe2,0xc1,0x9f,0x7c,0x68,0xfa,0xe1,0x2b,0xe2,0xa0,0x73,0x01,0xff,0xe1,0x06,0xea,0x16,0xe1,0x84, + 0x53,0x00,0x46,0x2d,0x89,0x08,0x76,0x2c,0xe1,0xd5,0x4a,0x97,0xa1,0x25,0x12,0x29,0x37,0x57,0xd1,0x71,0x35,0x9c,0x72,0x9d, + 0xbd,0xe0,0xbb,0xc4,0xe9,0xa2,0xd3,0x1c,0x4f,0xe7,0x1d,0x14,0x2b,0x72,0xc4,0xb2,0x34,0x25,0x89,0x7b,0xa0,0x8a,0x6e,0x99, + 0x53,0xb2,0x29,0x40,0x59,0x74,0xc4,0x31,0x88,0xc6,0x16,0x3d,0x10,0xe2,0x58,0x87,0x5d,0xda,0x55,0x8a,0xbd,0xdd,0x35,0x61, + 0xe9,0xb0,0x62,0x35,0x17,0x50,0xa2,0x7d,0x09,0x66,0x29,0x0f,0x11,0xe6,0x19,0xbc,0x51,0xc0,0xa3,0xf9,0xfd,0x5d,0x4e,0xc5, + 0xfc,0x86,0x79,0x17,0xf2,0x4c,0xc9,0xfc,0x9a,0x58,0x9c,0xa7,0xbd,0xbe,0x8f,0x4f,0x51,0xbd,0x08,0x83,0xa7,0xe6,0x41,0x89, + 0xca,0x08,0x7e,0x41,0x34,0xf7,0x74,0x1e,0xe2,0xc3,0x26,0x3f,0xb4,0xbb,0xae,0x2b,0x75,0x76,0xa3,0x19,0xbb,0x32,0xd8,0x4c, + 0x27,0xc9,0xe3,0x5e,0x29,0xae,0xa8,0x4b,0xda,0x1d,0x27,0xc4,0x0e,0x2b,0xf6,0x2b,0x5e,0x34,0xe2,0xba,0xe9,0x92,0x4b,0xa4, + 0x28,0x71,0x0d,0xc1,0xac,0x7d,0x20,0x9f,0x35,0xaf,0x2f,0x55,0x82,0x78,0x9f,0x5d,0x2d,0x22,0xed,0xcf,0xf2,0xbc,0x65,0x21, + 0x14,0xe4,0x94,0x8e,0x66,0x35,0x40,0x39,0xe6,0x90,0x48,0x0a,0x2b,0x4a,0xd2,0xe5,0x4f,0x75,0x36,0x39,0xea,0xe4,0x85,0x53, + 0xf6,0x41,0x14,0x0d,0x37,0x58,0x6f,0xdf,0x2b,0x04,0x73,0x2f,0xd0,0x65,0xdd,0x29,0x9b,0x2c,0x74,0x39,0x82,0xb3,0xda,0x5f, + 0x06,0xcc,0xa9,0x06,0xfb,0x7d,0x85,0xba,0xbc,0xe5,0xac,0x4d,0x36,0xa9,0xb7,0x16,0xf2,0x3f,0xcd,0x59,0xbe,0x5f,0x9f,0x0a, + 0x85,0xb9,0x94,0xea,0xf2,0xf0,0x69,0x9b,0xdc,0xe7,0xfa,0x6d,0xa0,0x52,0x81,0x0c,0xc7,0xf3,0x70,0xb3,0x4c,0x72,0x85,0xf1, + 0x20,0x5d,0xca,0x0c,0x29,0x6b,0x70,0x93,0xf3,0xc7,0x6e,0xb8,0xe5,0xd9,0x7f,0x08,0x76,0x6b,0xb6,0x2e,0x3f,0x3b,0x23,0xe5, + 0x63,0xae,0x76,0xdb,0x5e,0x5e,0x2b,0xd8,0x17,0x39,0xba,0x9c,0x39,0x24,0xe5,0x27,0x29,0xf0,0xc1,0xda,0x17,0xde,0x51,0xd8, + 0x6e,0x03,0x59,0x60,0x20,0x7b,0x71,0xc7,0xdd,0x57,0xd0,0x8c,0xcb,0xf8,0xe6,0x76,0xc1,0xee,0x8f,0xd3,0xa5,0x32,0x21,0xe5, + 0x6f,0xcd,0x8b,0x1f,0xdf,0x85,0x7b,0x04,0x2b,0x48,0xd0,0xa5,0x69,0x56,0xca,0xad,0x2b,0xdc,0x70,0xa7,0x79,0xa3,0x60,0x7b, + 0x83,0x75,0xf9,0xb9,0x13,0x63,0x6e,0xd0,0xe1,0x4f,0x91,0x08,0xc0,0x1f,0xec,0xd8,0x6f,0xa2,0x74,0xf9,0xba,0xc6,0x58,0x33, + 0x8d,0x62,0x94,0xaf,0xa9,0xa4,0x21,0xac,0x79,0xf2,0x10,0xe2,0xb0,0x1b,0xb5,0xd0,0x91,0x84,0xdf,0x69,0xb3,0x58,0x7f,0x5f, + 0x3f,0x5c,0xd8,0x5b,0x56,0x5d,0xbe,0xfd,0x21,0x63,0x75,0xf8,0x6a,0x0f,0x3f,0x0e,0xd7,0x59,0x51,0x4e,0x3d,0x4a,0x23,0x0f, + 0x12,0xc1,0xc8,0xa3,0x7f,0x76,0x60,0xce,0x9c,0x2f,0x06,0x30,0x89,0xfb,0x25,0xa2,0xb1,0x74,0x8e,0xe2,0xf8,0x2f,0x3c,0x8a, + 0xef,0x14,0x5b,0x8f,0xf2,0x4c,0xfa,0xee,0x28,0x4c,0x6c,0xb3,0xe1,0x42,0xc6,0x17,0x8c,0x65,0x63,0x7d,0x32,0xbd,0x3d,0x4a, + 0x3e,0x94,0xc8,0x27,0xa8,0x96,0x2b,0x7f,0x18,0xc6,0x1e,0xb4,0x93,0x1d,0x8b,0x8a,0xd0,0xe5,0xa9,0xd5,0x8c,0xc5,0x82,0x32, + 0x90,0x4e,0x75,0xf4,0xc9,0x30,0x75,0x41,0xf9,0xcf,0x4e,0x52,0x6b,0x28,0x4c,0x64,0xd0,0x92,0x2a,0x6a,0x44,0x2d,0x8d,0x72, + 0x95,0x0d,0x18,0xbe,0xf7,0xae,0x62,0x6c,0x4a,0xdb,0x9e,0x4c,0x35,0xe8,0x54,0x37,0xad,0x98,0xc0,0xfb,0x8b,0x55,0xf6,0x69, + 0x8c,0x2e,0xef,0x59,0xc9,0xd8,0x45,0x2c,0x8e,0x41,0x01,0x9d,0x25,0x87,0x20,0x84,0x62,0xe5,0x66,0x0b,0x2b,0x8d,0xd5,0x65, + 0x8d,0x41,0x49,0xe0,0x77,0x1f,0x11,0xee,0x7c,0x1c,0xbd,0xe8,0x14,0x9f,0x05,0xc2,0x87,0x07,0xd2,0x83,0x07,0x61,0xc3,0x00, + 0xd2,0x70,0x0c,0x0d,0x58,0xc3,0x5e,0x34,0x0a,0xb1,0x7a,0x9a,0xb1,0x60,0x53,0x0d,0xbf,0x69,0x1a,0xb9,0x22,0x8e,0xe6,0xe9, + 0xb9,0x33,0x62,0xdb,0x49,0xe5,0x1c,0x59,0x24,0x6a,0x10,0x01,0x6f,0x2d,0x06,0xbf,0xd2,0x5a,0x5f,0xa4,0x22,0x46,0xac,0xfd, + 0xad,0x15,0xdd,0xbc,0x14,0x5f,0xbf,0x16,0x47,0xa7,0xb0,0x4f,0x39,0x48,0xf9,0xd8,0xc7,0x67,0xed,0xbc,0x79,0x91,0xc1,0xda, + 0x8d,0x9d,0x74,0x42,0x6d,0xa1,0x72,0xaa,0x84,0x3b,0x74,0xec,0xe5,0xff,0x4a,0xc0,0xe2,0x4f,0xdc,0xc9,0x5b,0x59,0x79,0xfb, + 0xbf,0x9a,0xd4,0xcf,0x22,0xc8,0x9f,0x2e,0xaa,0xc9,0x74,0x99,0x9a,0xa8,0x9c,0x3f,0xb2,0xee,0x28,0x2e,0x12,0xb9,0xf3,0x5c, + 0xac,0x7e,0x2d,0x16,0x17,0xd1,0xc0,0x3d,0x8d,0x2c,0x6a,0x2d,0xca,0x30,0x75,0x8a,0x0f,0x82,0xa9,0x98,0x6a,0xc4,0x4d,0xf1, + 0x86,0xb9,0x14,0x7a,0xad,0x4e,0x4b,0x46,0x28,0x5d,0x44,0x33,0x2d,0xea,0xc2,0x19,0xec,0xe1,0xbf,0x60,0x18,0x5d,0x08,0xe4, + 0xfe,0xbc,0xd4,0xae,0x9f,0x82,0xe9,0x02,0xdd,0xb3,0x9b,0x17,0x63,0x59,0xbe,0x39,0x86,0x5f,0x47,0x35,0xae,0x63,0xc9,0x01, + 0xf2,0x36,0x5e,0x2f,0xe7,0x8a,0xab,0x28,0x17,0x76,0x7f,0xc8,0xa3,0x24,0xee,0x7c,0x51,0x84,0x21,0x98,0xd6,0x65,0xa3,0x95, + 0x22,0x94,0xcb,0xfc,0x82,0xc8,0x44,0x20,0x9e,0xfe,0xfa,0xc5,0x03,0x68,0x44,0x20,0x7d,0x6a,0x98,0x5b,0xb7,0x52,0xa7,0xd5, + 0x3a,0xef,0xc2,0xa2,0x64,0x8a,0xe0,0x31,0xd8,0x50,0x24,0xea,0x29,0x08,0x56,0x2e,0xba,0xec,0xc2,0x4d,0x91,0xda,0x15,0xaa, + 0xd2,0x86,0xf0,0xa8,0x27,0x9a,0xc5,0x8a,0x33,0x38,0x87,0x30,0xee,0x4b,0x55,0x18,0x43,0x85,0xba,0x13,0xd3,0x3c,0x84,0x2b, + 0x6c,0xd8,0xe8,0xf9,0x0d,0xad,0x8c,0x99,0xe3,0x50,0x8d,0xc5,0x21,0x38,0x4d,0x2f,0x87,0x42,0xb0,0xff,0x1a,0x9d,0x51,0x71, + 0x9e,0xb1,0xad,0xf6,0x2b,0x13,0x50,0x8f,0x4c,0x03,0x5a,0x65,0xf4,0x9b,0x43,0x07,0x63,0xe7,0x68,0xc1,0x7e,0xaa,0xc0,0xf3, + 0x2d,0x50,0x58,0xcd,0x01,0x5d,0x6e,0xe9,0x62,0xac,0x10,0x4b,0xbf,0x4d,0x44,0x98,0x38,0x82,0x62,0x5e,0x4d,0x0f,0xb1,0x43, + 0x69,0xba,0xec,0xeb,0x67,0xcc,0x71,0x5d,0x92,0xb0,0xe2,0x12,0x3d,0xf2,0xd7,0x8b,0x08,0x17,0xd7,0xe1,0xcd,0xe7,0x11,0x6f, + 0xfa,0x72,0xfd,0x0b,0x39,0x7c,0x69,0x33,0x5a,0x71,0xd0,0x3c,0x8d,0xbd,0x5a,0x27,0x15,0xa0,0x10,0x83,0x68,0x41,0x8c,0x88, + 0xc3,0x57,0x5f,0x66,0x88,0xd3,0x14,0xc3,0x77,0x9c,0xc0,0x0b,0x3e,0x68,0x44,0x3c,0x7f,0x30,0x98,0xbe,0x8b,0x25,0xd7,0xbf, + 0x1f,0x40,0x14,0x4a,0x11,0x83,0x05,0xdd,0x4a,0x85,0xfa,0x66,0x0f,0xc2,0x68,0x00,0xb5,0x6a,0x09,0xda,0xd4,0x7c,0x25,0x9d, + 0xc2,0x95,0x04,0x7a,0x36,0x95,0xbb,0x91,0x1b,0x82,0x90,0x48,0xce,0x56,0x1e,0x41,0xc7,0xe0,0x85,0x0e,0xe2,0x9b,0xfa,0x68, + 0x4a,0xec,0xc5,0x4f,0xc1,0x10,0x2c,0xee,0xa0,0x2e,0xab,0x0d,0x97,0xfb,0xb1,0x21,0x85,0xbf,0x5e,0x83,0x6c,0x03,0xfb,0x63, + 0xaa,0x2e,0xaf,0x19,0xee,0x66,0x8a,0xb3,0x06,0xfb,0x23,0x67,0x71,0x10,0xce,0x2c,0x2e,0x43,0x97,0x57,0x06,0x19,0x6b,0xc4, + 0x5f,0x32,0x94,0x16,0x54,0xc2,0x9b,0x02,0x79,0x18,0x56,0x4e,0xa2,0x81,0xbf,0xb1,0xfd,0xdf,0xa9,0xa8,0xc3,0x38,0xf7,0x85, + 0xaf,0x56,0x86,0x34,0x35,0x91,0x47,0xf2,0xbb,0x7c,0x11,0x42,0x8d,0xfc,0x65,0x2f,0x9e,0x0e,0x95,0xad,0x4c,0x33,0x9a,0xbe, + 0x97,0xb1,0xc3,0xe2,0x2a,0xe2,0xf0,0xa7,0x02,0xf8,0xd1,0x9c,0xf2,0x46,0x0d,0x9e,0x11,0xec,0x5b,0x43,0xf3,0xd6,0x21,0xc3, + 0x1c,0x6d,0x1a,0xe0,0xd1,0xc8,0x87,0x3f,0xad,0x61,0xa7,0x3c,0x74,0xf9,0xa9,0x02,0x36,0xc1,0xff,0x92,0xa3,0xd4,0xd0,0x1b, + 0xe3,0x88,0xa6,0x73,0xb0,0x89,0x3a,0x8c,0xa8,0xef,0xce,0x69,0xf3,0x46,0xa4,0x3f,0xbe,0x92,0x43,0xd5,0x58,0x51,0x28,0x1c, + 0x8a,0xb9,0x07,0xd2,0x4d,0xff,0x9f,0xbb,0x14,0x7a,0xe8,0x24,0x76,0x89,0x1e,0x83,0xf0,0xf9,0x61,0x0b,0x96,0xa7,0xa0,0x93, + 0x52,0x31,0xee,0x98,0x82,0xab,0x54,0x86,0x64,0xb5,0x48,0x6d,0x77,0x9d,0x51,0xaf,0x9b,0xba,0x90,0x2c,0x7e,0x45,0x93,0x29, + 0xd1,0x70,0x76,0x17,0x76,0xf3,0x31,0xe5,0x99,0x1c,0x5c,0xb1,0x2c,0x9f,0x59,0xe0,0x83,0x1b,0x76,0x67,0xf9,0x8c,0x52,0xc0, + 0xbd,0x70,0x88,0xc7,0x52,0x12,0xf5,0x38,0xdf,0x30,0xcd,0x22,0x14,0xbf,0x88,0xc3,0x98,0x72,0xde,0x4f,0x3d,0x0e,0x15,0xa2, + 0x80,0x1e,0xd9,0x47,0x95,0xa8,0xc7,0x13,0xb9,0x18,0xc6,0x25,0xe2,0x9f,0xff,0xf1,0x0f,0x05,0xbc,0x4d,0x7d,0xbe,0x45,0xb1, + 0xc4,0x29,0xa7,0x91,0xa0,0xe6,0x50,0x97,0x52,0x82,0x4b,0xb8,0x27,0x99,0xf6,0x21,0x0f,0x6f,0xdc,0x58,0xd8,0x87,0x20,0xf3, + 0x18,0x55,0x98,0xb2,0xc4,0x9c,0xc8,0x43,0x38,0x16,0xb5,0xd2,0xba,0x2a,0xfc,0x76,0xd6,0xbe,0x1d,0x5e,0xf8,0xd7,0x51,0x7e, + 0x1d,0x99,0x8a,0x27,0x3a,0x28,0x1d,0xe1,0xea,0x9f,0x4a,0xd4,0x68,0xde,0xa1,0xf5,0xa2,0x1b,0xa5,0x88,0x35,0x97,0x22,0x4d, + 0x44,0xa2,0xc3,0xb2,0xa1,0xd1,0x31,0xdd,0x60,0xfe,0x20,0x82,0x47,0xe1,0xad,0x7d,0x38,0x2b,0x8e,0x22,0x45,0x55,0x7b,0xa9, + 0x15,0x56,0xbb,0x37,0x86,0x4c,0x45,0xf0,0x53,0x23,0x0c,0x24,0x12,0x79,0x66,0x17,0x3f,0x73,0x2a,0x12,0x78,0x35,0xac,0xca, + 0x87,0x53,0x6a,0x28,0x15,0x2c,0xde,0x38,0x64,0xce,0x24,0x0f,0xf3,0x33,0x61,0x7c,0x93,0x60,0x0f,0x65,0xe9,0xb2,0x71,0x92, + 0xb1,0x7f,0xc6,0x52,0x08,0x5e,0xf1,0xa7,0x6e,0xa8,0x6c,0x89,0x71,0x09,0xc6,0x8c,0xa3,0x51,0x25,0x7e,0x7f,0x5d,0x5b,0x56, + 0xc9,0x03,0x70,0x48,0x3c,0x58,0x46,0xeb,0x15,0x96,0x5e,0x62,0x6c,0x1b,0xe3,0x72,0x8c,0x39,0xad,0xcb,0xb4,0x04,0xa3,0x41, + 0xcb,0x41,0x10,0xad,0x50,0x58,0x40,0xb9,0x2e,0x9f,0x38,0x63,0x93,0xc1,0x96,0x3b,0x36,0x47,0xa3,0xc0,0xfe,0x93,0x4c,0xfc, + 0x51,0xb0,0x7f,0x1f,0xd6,0x65,0xb8,0xc1,0x5d,0xaa,0x86,0xe0,0x38,0x67,0x53,0x14,0x0c,0x85,0xd9,0xaa,0x74,0xf9,0xe0,0x79, + 0x9b,0x8c,0xe0,0x8b,0x23,0x4c,0x57,0x28,0x4d,0x7b,0xc2,0x4b,0x24,0x93,0xca,0xa2,0x0d,0x3c,0xd9,0x60,0x9e,0x44,0xbc,0x91, + 0xe1,0x2f,0x37,0x4f,0x19,0xb9,0x73,0xcd,0x81,0x3f,0x8c,0x9e,0xa9,0x36,0xce,0x9b,0xa1,0x3d,0x5b,0x7b,0xcd,0xa9,0x84,0xc2, + 0x1d,0xbe,0xb3,0xc2,0x1d,0x17,0xd5,0x9b,0x15,0x96,0x56,0xaf,0xcb,0x37,0xda,0x6c,0xb2,0xc1,0xbe,0x16,0x6f,0xec,0xc7,0x25, + 0x71,0x6f,0xb8,0xc9,0x97,0x2b,0xac,0xb1,0x48,0x97,0xdb,0xcb,0xa5,0x0c,0x86,0xd3,0xe2,0x24,0xcc,0xe2,0xae,0xd7,0x36,0x5a, + 0x58,0x91,0xe1,0xfc,0x48,0x99,0x94,0x56,0xfa,0x41,0xbb,0x8a,0x56,0xac,0xf8,0x7d,0x01,0x3a,0xb9,0xb2,0xfe,0x3c,0xd9,0xe0, + 0x83,0x5d,0xf4,0xd4,0xa6,0x13,0x24,0x58,0x6e,0x9d,0x2e,0x9f,0x3d,0x22,0xe5,0x3c,0x1a,0xc9,0x9c,0x01,0x1b,0x2e,0x72,0xc1, + 0x7e,0xdf,0xa0,0x4b,0xe7,0x2a,0x29,0x1d,0xbe,0x69,0x81,0x95,0xba,0x50,0x03,0xc1,0x1e,0x39,0xa1,0x4b,0xe5,0xb0,0x94,0x9f, + 0x99,0x0f,0x63,0x5b,0x10,0xfd,0x55,0xb0,0x6c,0x03,0x59,0x68,0x20,0x7f,0x5f,0xdb,0x40,0x6b,0xba,0x40,0x82,0xad,0x38,0xa3, + 0xcb,0x65,0x47,0xa5,0xb4,0xf8,0xe0,0xe9,0x85,0xaf,0xc4,0x40,0xb0,0x81,0x76,0x5d,0xce,0x97,0x48,0xf9,0x92,0xeb,0x20,0x22, + 0xc9,0x4a,0xee,0xa4,0xb2,0xcb,0x06,0xf6,0x9a,0xe1,0xd8,0x17,0xae,0x6b,0x46,0xd0,0x4c,0x61,0x08,0xa5,0x08,0xbc,0xd1,0x02, + 0xc1,0x36,0x77,0xe8,0xf2,0x69,0x83,0xfb,0xb6,0xf7,0x3a,0x91,0x88,0x2a,0x7c,0xa7,0xb0,0xd6,0x2e,0x5d,0x3e,0xd9,0x2d,0x65, + 0x1c,0xdd,0xf7,0x88,0x0f,0x4d,0x91,0xb2,0xb8,0x1d,0x0a,0x3b,0x6b,0xa0,0x8f,0x76,0x4a,0xe9,0x0d,0x2f,0x84,0xe0,0xd5,0x15, + 0xcb,0xbf,0x89,0x87,0x60,0x1f,0x36,0xe9,0x32,0x6d,0x9c,0xb1,0x39,0xf8,0x51,0x02,0x77,0x43,0xa8,0xe2,0xcb,0xd7,0xb0,0xcd, + 0xdd,0xba,0xdc,0x6f,0xa0,0xd3,0x5a,0x25,0x5a,0xd4,0x8f,0xc7,0x4d,0x05,0x34,0x85,0x46,0x4c,0x63,0x08,0x1f,0xd5,0xa0,0x92, + 0xaf,0xbd,0xec,0x6a,0x43,0xff,0x82,0x78,0x6c,0xf1,0xc1,0x61,0x78,0x21,0x54,0x0b,0x83,0xbb,0xe8,0x42,0x22,0x8f,0x55,0xda, + 0x4d,0x47,0xc5,0x5e,0xcb,0x31,0x1c,0xe1,0x1d,0x94,0xaf,0x2d,0x6c,0x42,0x0e,0x74,0x71,0xdf,0x10,0x25,0x62,0x92,0x67,0xe0, + 0xd3,0x32,0xfa,0x55,0x6c,0x3b,0x23,0x96,0xd4,0x88,0x8b,0xd8,0xa9,0x38,0x35,0xd1,0x01,0xc4,0x70,0x2b,0x72,0x91,0x8a,0x73, + 0xfc,0xbe,0x41,0xec,0xc7,0x35,0xfe,0x2b,0x3f,0x25,0xf6,0x50,0x83,0x78,0xc4,0x17,0x6b,0xc3,0xf8,0xbd,0x81,0xd4,0x4b,0xc9, + 0xfc,0x99,0xf3,0x22,0x9b,0x7e,0x2a,0x46,0x14,0xbf,0xcb,0x9d,0x22,0x10,0x62,0xca,0x40,0x11,0xe5,0x23,0x9f,0x17,0x63,0xe9, + 0x51,0x1e,0x48,0xdf,0x55,0xc3,0x97,0xa4,0x58,0x39,0xac,0xa4,0x21,0x9e,0xde,0x91,0x68,0xc3,0x5e,0x1e,0xa7,0x8c,0x22,0x83, + 0xe2,0xf1,0xf3,0x6d,0x67,0x0c,0xb7,0xdf,0xfe,0xb8,0x1c,0x2d,0xfc,0x22,0x72,0x55,0xcd,0x1f,0x7b,0xc8,0x5d,0x0c,0xd2,0x05, + 0xfe,0xa7,0x5b,0x7e,0x9e,0x36,0xfd,0x94,0xcc,0x23,0x51,0x8f,0x68,0xf2,0xd0,0xba,0x70,0x4c,0x71,0x13,0xc9,0xea,0x3c,0xe6, + 0xc5,0xef,0x72,0x91,0x88,0x29,0xc4,0xf2,0x24,0xa5,0x42,0x24,0xc1,0x8d,0xbb,0xa4,0x89,0x01,0x87,0x3c,0x11,0xa4,0x14,0xa2, + 0x4a,0xbb,0xb7,0xc3,0x14,0x01,0x4f,0xec,0x70,0xd7,0xb6,0x44,0x69,0x03,0x74,0x45,0xb8,0xf1,0x1c,0x35,0x80,0x4e,0x88,0x45, + 0x81,0x3c,0x18,0xd9,0xe4,0x4f,0xbd,0xda,0x3d,0x11,0xb4,0xaa,0xdc,0xe2,0x29,0x2e,0x88,0x7f,0x5d,0xa6,0x79,0xbc,0xde,0x02, + 0xa3,0xf5,0x2a,0x75,0x19,0x3f,0xc1,0xd8,0x3c,0xbf,0xd9,0x8d,0xd7,0xa2,0x99,0xb6,0xb7,0xe2,0x19,0x85,0xdd,0x73,0x48,0x97, + 0xd1,0xc6,0x9d,0xbe,0x40,0x96,0xdb,0xd2,0x10,0x46,0x4b,0xdf,0x0c,0x85,0xca,0x9e,0x35,0x26,0xe4,0xce,0x29,0xc6,0xdc,0x29, + 0x4e,0xb4,0x60,0x0e,0x47,0x50,0x45,0x67,0xf1,0xea,0xab,0x2b,0xcd,0x6c,0xcc,0x10,0x38,0x68,0x54,0x69,0x0f,0x2d,0x39,0x89, + 0x31,0xf4,0xa8,0x03,0xbc,0x84,0x3a,0xa8,0x8a,0x9e,0x7a,0x33,0x06,0x52,0x6b,0x55,0xda,0x79,0x14,0x54,0x76,0xef,0xb1,0xff, + 0x69,0xa8,0x17,0x9f,0x78,0x9b,0x82,0x29,0x15,0xbb,0x69,0x3f,0x05,0x19,0x66,0x5f,0x11,0x6c,0xb9,0xd1,0xb5,0xb9,0xc6,0x6c, + 0x37,0x10,0x2b,0x21,0x37,0x2c,0xf8,0x59,0x61,0xed,0xd7,0x8c,0xee,0xee,0xb6,0xc9,0x42,0x5a,0x3f,0x2d,0xde,0x1f,0x10,0xe1, + 0x86,0xc1,0x75,0x2a,0x33,0xc6,0x52,0xa6,0x74,0xd9,0xa4,0xbf,0xfd,0x2a,0x77,0x65,0x02,0x56,0xb5,0x19,0xb1,0xf6,0xf9,0x48, + 0xc7,0x19,0x12,0xec,0xd2,0x80,0x2e,0xbd,0xb3,0xa4,0x7c,0xe1,0x9e,0x45,0xa7,0xb1,0x22,0x1d,0x0a,0xfb,0xbd,0x81,0x4c,0x9f, + 0x97,0xf2,0x83,0xe5,0xfc,0x2c,0x3c,0xf0,0xc1,0x33,0x7f,0xfc,0x3f,0x15,0x52,0x65,0x40,0x1c,0xd7,0x16,0xbe,0xdf,0x39,0xf7, + 0xce,0x02,0x1b,0x69,0x28,0xbc,0x4a,0xdc,0xdd,0xdd,0xa5,0x12,0xaf,0xbb,0xbb,0x37,0xee,0xa9,0xe0,0xb2,0xb0,0x78,0x04,0x62, + 0x40,0xa0,0x48,0xdc,0x81,0x60,0x11,0x3c,0x86,0x04,0x29,0x1a,0xc5,0xe2,0x6e,0xbb,0xf3,0xa6,0x7f,0x3f,0x3b,0x2a,0xc5,0xbd, + 0x26,0x9b,0xfe,0x49,0x8a,0xae,0x67,0x21,0x0a,0xf3,0xda,0x2f,0xf3,0x87,0x14,0x51,0xad,0x36,0x3d,0xe4,0x88,0xae,0xf7,0x1d, + 0x58,0x40,0x99,0xb8,0x43,0xa1,0x50,0xa2,0xa6,0xce,0xa6,0xbb,0xd4,0xea,0xba,0x3b,0xda,0x3b,0x6f,0xc4,0x39,0x0c,0xff,0xf2, + 0x7d,0x4d,0xdc,0x6a,0xb0,0xe9,0xdd,0xff,0xd5,0x75,0x0b,0x7f,0xfe,0xe5,0xf7,0xde,0x72,0xe6,0xd4,0x15,0x9b,0x69,0x3d,0xa4, + 0x38,0x65,0xe0,0xa3,0xab,0x74,0x3d,0x1c,0x5b,0x20,0x12,0x11,0x01,0xc7,0xaf,0xc4,0x54,0x69,0xd7,0xa7,0x56,0x0a,0x51,0x8d, + 0x68,0x15,0x08,0x0f,0xbe,0x8b,0x52,0xae,0x41,0x9e,0x6a,0xa5,0x6a,0xee,0x72,0x01,0x31,0xe4,0x4b,0x77,0xc9,0x13,0xf7,0xe5, + 0x8a,0x00,0x4e,0x57,0x6e,0xd8,0x89,0x4a,0x8e,0x40,0x05,0xe6,0xfc,0xf9,0x44,0xc5,0x70,0x36,0x67,0xc2,0x8d,0x6a,0xcd,0xf1, + 0x7c,0x8c,0xbc,0x55,0x35,0x75,0xdb,0x87,0x1b,0x54,0xa9,0x76,0x6b,0x85,0xf2,0x8b,0x18,0xf5,0x7a,0x00,0x45,0x50,0x16,0xbd, + 0x53,0x4f,0x51,0xdc,0x8a,0x61,0xae,0x4d,0x46,0x8c,0x07,0x0d,0x3e,0x4e,0xee,0x4e,0x4d,0x98,0x50,0x48,0x09,0x7c,0x51,0x66, + 0xe2,0x97,0x16,0xcd,0x9d,0x4e,0x68,0xeb,0xe5,0xb0,0x2f,0x9e,0x48,0xae,0x52,0x9f,0xe5,0xd0,0x36,0x34,0xcb,0x7c,0xee,0xb8, + 0x9f,0xcf,0x51,0x21,0x6f,0x50,0xa9,0x32,0x41,0x06,0xd2,0x15,0xea,0xb5,0x4b,0x5a,0xe4,0xfb,0xb7,0xb0,0x9d,0xa2,0x70,0x96, + 0xdd,0x1c,0xbf,0x2e,0x80,0x15,0x1d,0x12,0x51,0x80,0x22,0x98,0x9b,0x70,0x09,0x7e,0xea,0xbc,0x79,0x6c,0x06,0x92,0xd8,0x25, + 0x52,0xa6,0x50,0x80,0x7a,0x61,0xd6,0x45,0x6a,0xa6,0x16,0xde,0xcf,0x1b,0x61,0xa3,0xa1,0xfe,0x54,0x43,0xa3,0xf2,0xb8,0x08, + 0xbf,0x27,0xa8,0x06,0x3a,0xad,0xa5,0xe1,0x9d,0x1c,0xd4,0x62,0xf5,0x13,0xcd,0x1d,0x1b,0xb9,0x02,0xe1,0x88,0x87,0x8f,0xec, + 0x9a,0x4f,0x49,0xd4,0x77,0x1f,0x1e,0xab,0x99,0x31,0x94,0x80,0xe2,0x76,0xb1,0x2a,0xc7,0x74,0x4e,0x3d,0x35,0xd5,0xd0,0xa0, + 0x1f,0x4a,0x9f,0x2f,0x51,0x7e,0xb2,0x9c,0xfc,0xb1,0x93,0x02,0x51,0x86,0x16,0x8a,0xc4,0x47,0xe1,0xd2,0x0b,0xb1,0x5c,0xc2, + 0x5d,0x9e,0xf2,0xb2,0xc7,0x74,0x03,0x7b,0xe0,0xb4,0x49,0x8b,0x67,0x17,0x71,0xe6,0xba,0x4d,0xf7,0xba,0x24,0xc4,0x66,0x3a, + 0x86,0x62,0x54,0x20,0x1a,0x9f,0x47,0x48,0x3f,0x0a,0xd1,0xaa,0xd0,0x35,0x80,0x6b,0xd5,0x97,0x67,0xd4,0xc7,0x65,0xb0,0xd2, + 0xd2,0x0a,0xdc,0x76,0xbc,0x43,0x3a,0x5a,0xf9,0x10,0x8f,0x29,0xa2,0x7c,0xae,0x30,0x95,0xc8,0x1b,0x7c,0x83,0x2f,0xd3,0x6d, + 0x7c,0x97,0x8f,0x4a,0xf5,0x99,0xb3,0xc8,0xbd,0x65,0xd3,0x4d,0x0d,0x42,0xa4,0xa9,0xdb,0x8e,0xab,0x5b,0x4d,0xe7,0x65,0x9d, + 0x3c,0x89,0x6c,0xb2,0x52,0xef,0x48,0xf2,0x80,0x29,0x17,0x67,0x89,0x7d,0x28,0x8a,0x23,0x69,0xc1,0x25,0x9c,0xa1,0x2d,0xbc, + 0x8b,0x77,0xd0,0x50,0xd7,0xcd,0x32,0x90,0x23,0xd0,0x40,0x4d,0x94,0x69,0xba,0x4e,0x6d,0x45,0xd3,0x6d,0x9b,0x3e,0xc2,0x68, + 0xea,0x96,0xd6,0xf3,0xb8,0xe6,0xed,0x90,0x64,0xca,0xd6,0x46,0x64,0x51,0x84,0xaa,0x95,0xa3,0x0a,0x38,0xd5,0xb1,0x55,0x9e, + 0xc5,0x7e,0xb2,0x50,0xba,0xac,0xa2,0x14,0xb2,0xca,0x28,0xf3,0x55,0x76,0x67,0x25,0x3e,0xbc,0x6b,0xd3,0x97,0x1b,0xb6,0x2d, + 0x34,0x50,0xa7,0x12,0xb8,0xd1,0x80,0xad,0x7c,0x16,0x66,0x11,0x75,0xcf,0xa6,0xb7,0xad,0x13,0xe2,0x11,0x7b,0x73,0x33,0x7c, + 0x91,0x81,0x00,0x53,0x3d,0x7f,0xef,0x18,0xab,0xea,0xf0,0xde,0x26,0x7e,0x84,0x04,0x63,0xa7,0x67,0x38,0xcd,0x08,0xdd,0x85, + 0x36,0xc2,0xe9,0xa1,0x4d,0xdf,0x69,0xc8,0x2f,0xab,0x70,0xcc,0x79,0xcc,0x1b,0xb0,0xb0,0x48,0xc6,0x72,0x39,0x6d,0x51,0x01, + 0xea,0xfd,0x78,0x9a,0xf6,0xed,0x3d,0x59,0x2a,0x13,0xf9,0x22,0x56,0x34,0x99,0xdc,0xd1,0x53,0xcc,0x78,0x60,0xd3,0x9f,0xaf, + 0x11,0xa2,0x5c,0xf5,0x2e,0x43,0x11,0x5f,0x35,0x79,0x73,0x89,0x76,0x54,0xdb,0xae,0x2e,0xe2,0x26,0x6e,0x23,0x99,0x5d,0xbc, + 0x64,0x16,0x7d,0x9e,0x83,0x33,0xdc,0xd9,0x31,0x41,0x4b,0xc0,0x11,0x3c,0xc4,0xa0,0x66,0x7a,0x40,0x57,0x68,0x4a,0x28,0x6e, + 0xd0,0x36,0x38,0x72,0x01,0x36,0xa1,0x57,0x8c,0xda,0x2b,0xb3,0xc9,0x0f,0xf7,0x51,0x89,0x6f,0x76,0x22,0x54,0xf6,0xb0,0x22, + 0x0e,0x37,0x49,0xda,0x90,0x8e,0x6c,0xfc,0x54,0x49,0xf3,0xcb,0xe8,0x01,0xdc,0xe9,0x2a,0x1a,0x95,0x15,0x89,0xdc,0x42,0xaf, + 0x79,0xb0,0x26,0x66,0x1a,0x1d,0x3f,0xaa,0x14,0x62,0xc8,0xa7,0xf5,0xaa,0x80,0xbb,0x44,0x53,0x11,0x12,0xd1,0xa0,0x7d,0xe1, + 0x24,0xe8,0xb1,0x4d,0x5f,0x50,0x2e,0x44,0x0b,0xf3,0x3e,0x6c,0xe3,0x5a,0x59,0x4e,0x97,0xd8,0x4d,0x9d,0xa6,0x59,0xae,0x69, + 0xf0,0xa3,0x41,0x21,0x5c,0x8f,0x72,0xd6,0xa5,0xab,0x38,0x67,0x28,0x17,0x96,0x0a,0x91,0x82,0xa5,0x16,0x39,0x29,0x8c,0xb6, + 0x51,0x87,0x0a,0x04,0x68,0x19,0x34,0x69,0x66,0x8a,0x9a,0xf1,0x4b,0x9a,0x8a,0x33,0x95,0x23,0x95,0xcf,0x6b,0xbe,0x48,0xd2, + 0x02,0xb4,0x9b,0xa8,0x22,0xa7,0x3c,0x6e,0xc2,0x82,0x65,0x1b,0xe5,0xe4,0x3c,0xad,0x9c,0x4a,0x39,0x4c,0x4d,0xf1,0x52,0x21, + 0xda,0x54,0x4d,0xbc,0x67,0x84,0x1d,0xa9,0x16,0xc2,0xc6,0xe9,0xb0,0xd0,0x45,0xc4,0xca,0x77,0xdf,0x7c,0x8c,0x5a,0xbc,0xa9, + 0x89,0xe5,0x06,0x75,0xc6,0xd8,0x56,0x38,0x75,0xfc,0x73,0x41,0x09,0xf2,0xf9,0x1f,0x79,0x88,0xaf,0xd0,0xb7,0x4e,0xe2,0xd6, + 0x53,0x9b,0x3e,0xd8,0x30,0xf5,0x2f,0xa2,0x03,0xd4,0xf1,0x26,0x26,0x7c,0x78,0x12,0x31,0x3c,0x68,0xfe,0x2d,0xd8,0xe5,0xbf, + 0xf2,0x8e,0xb4,0xf1,0xc7,0x56,0xea,0x20,0x3e,0xb0,0xd9,0xf4,0x53,0x67,0x85,0xb8,0x81,0xed,0x32,0x46,0xbd,0x6b,0x71,0xb8, + 0x44,0xc1,0xf4,0x10,0xc7,0xe9,0x08,0x95,0x91,0x79,0xe5,0x05,0x5c,0xa4,0x17,0xc6,0x04,0xa3,0x14,0xee,0xa8,0x6d,0xd7,0xe2, + 0x98,0x8a,0xdd,0x74,0x19,0x1e,0x88,0xd7,0x22,0x68,0xb3,0x53,0x3a,0xd6,0xd3,0x6b,0x66,0xf1,0xb9,0xb0,0xeb,0xc7,0x8c,0x85, + 0xc5,0xf0,0x21,0x59,0xcc,0x81,0x18,0x6d,0xa1,0xbb,0xf2,0x0a,0x27,0xe0,0x1e,0x07,0x72,0x19,0x0d,0xb9,0xc6,0xf9,0xea,0x01, + 0xb6,0xca,0x1c,0xee,0x53,0xcb,0x8e,0xe2,0x9e,0xdd,0xa6,0xf7,0xab,0x10,0xa2,0x12,0xf5,0x74,0x02,0x5d,0x1b,0x31,0x60,0xe6, + 0x33,0x54,0xa3,0xc3,0x98,0x1a,0xce,0xa6,0xef,0x3d,0xe0,0x4f,0x52,0x0c,0x34,0x22,0x9f,0x14,0x0a,0xe1,0x8f,0x27,0xb4,0x1b, + 0x0b,0x7b,0xfe,0x87,0x85,0x1a,0xd8,0xd9,0x32,0x21,0xfa,0xed,0xa7,0x64,0xea,0x59,0x4c,0x56,0x32,0x89,0x57,0xd9,0xae,0xe7, + 0x95,0x08,0x91,0x40,0x57,0xb0,0x89,0xb3,0xf1,0x6b,0x06,0x96,0x7f,0x61,0x67,0x0b,0x27,0xb2,0x27,0x69,0x22,0x4f,0xda,0xf5, + 0xbd,0xc6,0x74,0xa9,0x4e,0xb7,0x94,0x17,0x76,0xe3,0x81,0xf1,0x4d,0xcf,0xc8,0x46,0x47,0x11,0x89,0xaf,0x44,0x7d,0x91,0x4d, + 0xdf,0xd0,0x01,0xa2,0xce,0x39,0x0a,0xcf,0x4c,0xdb,0x71,0x58,0xcb,0xa3,0x9d,0x8e,0x79,0xc8,0x95,0xcd,0xd8,0xfd,0xbf,0xc9, + 0x87,0xdb,0x94,0xa2,0xd2,0x64,0xe5,0x96,0x36,0x59,0xec,0xe6,0xbc,0x81,0xff,0x71,0x6c,0x9b,0xd9,0x36,0x80,0xeb,0x29,0x9d, + 0x36,0x98,0x92,0x31,0xd1,0x0b,0x69,0xea,0xd5,0x4d,0x2a,0x11,0x87,0x39,0x84,0x37,0x6b,0x6a,0x2f,0x65,0x53,0xa5,0x93,0xcb, + 0xdc,0x74,0xec,0x44,0x0d,0xce,0xd0,0x4b,0x65,0xea,0x18,0x15,0x49,0x1b,0x5f,0x6d,0xdf,0x42,0x3e,0x6a,0x3f,0x37,0x69,0xcf, + 0xe5,0xd1,0x1b,0xd1,0x78,0xcb,0xa2,0xa6,0xc7,0x99,0x93,0xf9,0xa2,0x74,0x8d,0xe3,0x58,0xb2,0xc8,0xf5,0x88,0x36,0xcf,0x8c, + 0x92,0xa7,0x10,0x41,0x7b,0x50,0x8d,0xf3,0xc8,0x72,0x3e,0xa4,0xb6,0x77,0x68,0x44,0xa8,0x96,0xc3,0x79,0xea,0xcb,0x43,0xe6, + 0x2c,0x2d,0x10,0xe1,0x88,0xe3,0xc1,0x56,0xde,0x8b,0x1b,0xe6,0x97,0x67,0xbd,0xe7,0xcf,0xd3,0xfa,0xa5,0x51,0x66,0x9b,0x44, + 0xb6,0x50,0x34,0xb0,0xe6,0x89,0xa6,0xf5,0x0a,0x47,0xa0,0x3c,0x88,0x14,0x5c,0xe2,0x20,0x53,0x89,0xda,0xac,0xed,0xa4,0x8b, + 0xed,0x4f,0x52,0x1c,0x27,0xe2,0xcd,0x43,0x38,0xc4,0xeb,0x70,0x0e,0x39,0x08,0xe3,0xef,0xe2,0x4c,0xb1,0x5c,0x89,0x44,0xfa, + 0xc7,0x71,0x2f,0x9d,0x90,0x33,0x02,0x30,0x6b,0xc1,0xab,0xcd,0xb4,0xe0,0x83,0x32,0x84,0xd0,0x77,0x4f,0xcc,0x3b,0xe4,0x29, + 0xc7,0x56,0x87,0x7c,0x07,0xab,0x8c,0x56,0xbb,0x90,0xac,0x26,0xef,0xe6,0xad,0xa8,0xa6,0x32,0xb6,0x23,0x10,0xbd,0x8e,0xe3, + 0x0e,0x5c,0x6f,0xc9,0x4a,0x3a,0xca,0x73,0xae,0x6a,0x8f,0x50,0x87,0x37,0xc7,0xea,0xe4,0x81,0x3d,0x74,0x50,0x46,0x22,0x4f, + 0x85,0xca,0xad,0xb4,0x52,0x13,0xb5,0x0d,0x36,0xbd,0xa0,0x3d,0x44,0x3c,0xe6,0x16,0xd0,0x8a,0x83,0xfc,0x9d,0x17,0x2f,0xcd, + 0xa3,0x97,0x94,0x58,0xd3,0xce,0xae,0xbb,0xd7,0xd8,0xf5,0x02,0x87,0x68,0x1c,0xe0,0xbd,0x1c,0xd4,0xee,0x04,0x82,0x29,0x80, + 0x9d,0x85,0x8f,0xb3,0x5d,0x4f,0xbb,0x60,0xd7,0xe3,0x1c,0x6f,0x62,0xaf,0xc9,0x57,0x36,0x3a,0xfc,0x38,0x21,0x01,0xa7,0xda, + 0x8c,0xbd,0xa5,0x32,0x71,0xce,0x94,0x03,0x11,0x4a,0x61,0xaa,0x18,0xa1,0xd4,0x48,0xee,0xce,0x11,0xf0,0x74,0xce,0x95,0xf1, + 0x2a,0x8d,0x9b,0x1d,0x7f,0xdd,0xc7,0xc9,0xf2,0x38,0x6d,0xa5,0xb2,0x76,0xbd,0xda,0x08,0x97,0xfe,0x76,0xfd,0x72,0xbd,0x5d, + 0x4f,0x91,0xc5,0xbc,0xc9,0x7c,0x96,0x5e,0x28,0x26,0x7f,0x97,0x48,0x3c,0x74,0x58,0x35,0xb0,0x89,0xdd,0xa4,0x85,0x6a,0xd5, + 0x3d,0x9c,0x50,0xc6,0x40,0xc7,0xe9,0x51,0xdf,0x70,0x48,0x51,0xe7,0x64,0xd7,0x0f,0x44,0xeb,0xfa,0x8f,0xa3,0x5e,0xfc,0xea, + 0xad,0xff,0x80,0xb6,0x03,0xec,0x7a,0xb3,0x97,0x10,0x56,0x7a,0x2e,0x02,0x6f,0xad,0xf9,0x52,0x13,0x2e,0x03,0xed,0xfa,0xdf, + 0x06,0x72,0x1f,0x48,0x42,0x36,0x9a,0xe8,0xe5,0xbd,0xf8,0x75,0xe5,0xaf,0x63,0x45,0xcf,0xf6,0x76,0xfd,0x5c,0x8e,0x10,0x57, + 0x5f,0xf6,0x56,0xeb,0x9d,0xe2,0xdb,0xf8,0xb4,0xbd,0x24,0x37,0x53,0x31,0x0a,0xd5,0x3e,0x87,0xdf,0x2a,0xf1,0x4b,0xdf,0xad, + 0xf0,0x96,0x56,0xea,0x66,0xc3,0x59,0xec,0x51,0x6e,0x68,0x74,0xbe,0xa6,0x3a,0xaf,0x49,0x97,0x9b,0x79,0xce,0x1d,0xba,0x04, + 0x2b,0x37,0x6a,0x5d,0x9f,0xe2,0xef,0x04,0x95,0x4e,0x77,0x28,0x1d,0x36,0x3a,0x8c,0x66,0x8c,0xef,0xb1,0x9f,0x92,0x30,0x3d, + 0x8b,0xd7,0x63,0xe5,0xea,0x48,0xb2,0x20,0x1c,0xbf,0x0e,0xf6,0xe0,0xbd,0x5a,0x1c,0x76,0xb0,0xeb,0x05,0x5a,0x71,0x94,0x52, + 0xe8,0x08,0xfb,0x21,0x9e,0xff,0x0e,0x26,0x2f,0x99,0x83,0x1d,0x68,0x45,0x1d,0x22,0xb5,0xd7,0x46,0x14,0xd2,0x43,0xfc,0xb2, + 0x24,0x17,0x61,0xf2,0xd5,0x83,0x14,0x8e,0x77,0xfd,0xe8,0xaf,0xcf,0x52,0xe5,0xb0,0x7e,0x56,0x58,0xd5,0xdc,0x18,0xae,0xc3, + 0x16,0x04,0xd1,0x39,0x24,0xc2,0x4f,0xcd,0x88,0x35,0xa7,0xb2,0x12,0x6f,0x76,0xb0,0xeb,0xb9,0xc7,0x84,0x28,0x95,0x0d,0x78, + 0xf9,0x16,0x1e,0x51,0x9b,0xe3,0xa8,0x36,0xf0,0x65,0xcf,0xdb,0xf5,0xc2,0x6c,0x21,0xc6,0x1d,0x40,0x11,0x4d,0x1b,0x90,0x88, + 0x16,0x8c,0xfc,0x4a,0x74,0xec,0x68,0xd7,0x9d,0xa2,0x85,0x58,0x53,0x66,0xaa,0xa2,0x10,0x35,0xc3,0xc2,0x5b,0x28,0x82,0xbe, + 0x8f,0x32,0x05,0x50,0x21,0x7b,0x70,0xac,0xc3,0x4e,0x8a,0xc5,0x21,0xbc,0xb4,0x9e,0x0e,0xca,0x14,0x4e,0xeb,0xbc,0xd2,0xcb, + 0xe9,0x81,0x9c,0xb9,0x97,0xde,0xba,0x05,0x5f,0xb4,0x10,0x1a,0xb9,0x05,0x59,0x8e,0xcf,0x4d,0x08,0x54,0x27,0x51,0x41,0x4b, + 0x72,0xf9,0x3a,0x25,0xe3,0xed,0x6b,0xd8,0x2c,0xf3,0x11,0x29,0x43,0x30,0x7a,0x1b,0xaa,0xd8,0xcd,0x9c,0x21,0x1f,0xc8,0xcf, + 0x77,0x6a,0xe9,0xe6,0x04,0x2e,0x73,0xfa,0xd2,0x8f,0x5e,0x7f,0x44,0xdb,0xe1,0xc3,0x1e,0xb8,0x07,0x77,0x19,0xae,0x85,0xaa, + 0x24,0xf8,0xf2,0x4e,0xfe,0x29,0x86,0xda,0xf7,0xda,0x8a,0x3b,0x5a,0xbe,0x1a,0x94,0x86,0x5f,0xda,0x3b,0xef,0xa2,0x52,0x6c, + 0x40,0xb7,0x48,0xac,0x36,0x5d,0x43,0x12,0xf5,0x2f,0x25,0x4f,0x1a,0xb2,0xf2,0x04,0x56,0xde,0x40,0x30,0x07,0x70,0xac,0xe6, + 0x94,0x0c,0x3f,0x7a,0x44,0xd9,0xf8,0x32,0x45,0xcb,0xa6,0x5c,0xae,0xa6,0x7f,0x69,0x40,0x1e,0x72,0xf0,0xd9,0xc8,0x5c,0xd4, + 0xc1,0x03,0x8f,0x79,0x2f,0x39,0x7d,0x94,0x4d,0xdd,0xbe,0x74,0x93,0x91,0x34,0x2d,0x92,0xca,0x38,0x98,0xbe,0xb8,0x84,0x0c, + 0xa8,0xdd,0xd4,0x88,0x1e,0xd3,0x1b,0xb0,0x5f,0xce,0xb0,0xa0,0x0c,0xa1,0x14,0x09,0x7f,0x39,0x68,0x3f,0xa2,0x55,0x28,0x15, + 0xc1,0xf5,0x3a,0xbc,0x79,0xed,0x31,0x2d,0x82,0x4a,0x61,0xc7,0x9a,0x08,0x34,0x50,0x12,0x95,0x73,0x3a,0x9a,0x69,0x70,0x2d, + 0xb6,0x62,0x62,0x13,0xdf,0x40,0xb9,0x91,0xb3,0x13,0x9e,0x70,0x89,0x46,0x3d,0x4a,0xd1,0x48,0x52,0x68,0xc6,0x46,0xd7,0x1a, + 0xfb,0xaf,0x37,0xe5,0x72,0x21,0x4f,0x5c,0x2f,0xfd,0x59,0x0a,0x97,0x2e,0x76,0xfd,0x41,0xa6,0x10,0xc5,0xb4,0x2a,0x81,0x92, + 0xe9,0x89,0x8c,0x61,0x25,0xce,0x77,0xb6,0xeb,0x4b,0x0c,0x30,0x1e,0xa6,0xbf,0x1b,0xe8,0x32,0x96,0xcf,0xb8,0x00,0x25,0xd6, + 0x76,0xb5,0xeb,0xcb,0x33,0x84,0x18,0x35,0x7d,0x1f,0xbd,0x35,0xf0,0x24,0x92,0xa9,0x18,0x26,0xf1,0x4d,0x37,0xbb,0xde,0xdd, + 0xd0,0x2e,0xfc,0xd4,0x1d,0xf3,0x5c,0xac,0xa8,0xc6,0xb2,0x12,0x2c,0x6b,0xc2,0x6c,0x29,0x26,0x1a,0xd4,0x50,0xc3,0x50,0x80, + 0x51,0x73,0x32,0xe1,0x86,0xdb,0x90,0xa2,0xa3,0x81,0x7d,0x9f,0x22,0xc4,0xef,0x03,0x86,0x7c,0x33,0x2d,0x00,0x66,0x31,0xb2, + 0xbb,0x5d,0xef,0x9c,0x2e,0xc4,0x37,0xbe,0x34,0x60,0x41,0x08,0x65,0xa0,0xeb,0xda,0x5a,0xb2,0xe0,0x26,0x95,0xf0,0x45,0x64, + 0xd2,0x6e,0x1c,0xc0,0x21,0x72,0xc7,0x23,0x04,0x43,0x8a,0xbf,0x0d,0x71,0x6b,0xaa,0x10,0x5b,0x30,0x6c,0x54,0x32,0x7e,0xa9, + 0x32,0xa0,0xab,0x06,0xd4,0xd3,0x80,0x1a,0x31,0x7b,0x98,0x0f,0xa5,0xe0,0x28,0xfe,0x0f,0x15,0x55,0x75,0x40,0x55,0x69,0x16, + 0xff,0x7e,0xe7,0x7c,0xdf,0xbd,0xaf,0xc0,0x9c,0x9d,0xc4,0xe9,0xee,0xee,0xee,0xee,0x76,0x7b,0x77,0xba,0x67,0xb6,0x8b,0x94, + 0x46,0x69,0x78,0x74,0x97,0xe0,0x13,0x25,0x2c,0x52,0xa5,0x41,0x69,0xb0,0x75,0xcc,0x47,0x1a,0xb4,0xf7,0xee,0x9b,0x3f,0x4f, + 0xf7,0xf9,0xfd,0x4e,0x6c,0xbd,0xd4,0x30,0x7f,0x6e,0x10,0xa2,0x87,0x76,0x20,0x4d,0xfa,0xd4,0xcb,0x13,0xb4,0x43,0x39,0xf5, + 0x40,0xde,0xc8,0x5a,0x3f,0x47,0x72,0x9b,0xaa,0xd7,0xae,0xfc,0x8f,0x8b,0xda,0x30,0x4a,0xa1,0xfa,0x13,0x6e,0xf9,0xc4,0xbb, + 0x3f,0xd5,0x58,0x4e,0xa1,0xd1,0x7a,0x77,0x02,0x6d,0xa5,0x3c,0x7a,0xc8,0x66,0xd0,0x51,0xa4,0x50,0x8f,0xf6,0xeb,0x3e,0x99, + 0x8a,0x6d,0xca,0xc9,0xd7,0xf9,0xb2,0x53,0xc6,0xc8,0x72,0x7b,0x0d,0x56,0xdb,0x2c,0xb1,0xaa,0x85,0xdd,0xb4,0x8a,0x2f,0x2c, + 0xa4,0x28,0x1a,0xa4,0x20,0x52,0xbe,0x88,0xe1,0x56,0xd5,0x4a,0x21,0xfc,0x5a,0xa6,0x25,0x45,0xd5,0xf2,0x04,0xcf,0xd2,0xbf, + 0x83,0x50,0x06,0xef,0x4c,0x0c,0xf2,0x18,0x7d,0x7f,0x16,0x3f,0xce,0x7b,0xc2,0xb5,0xc9,0x73,0x72,0x00,0x89,0x32,0x4d,0xaf, + 0x42,0x2e,0x37,0x51,0x03,0xf9,0xaa,0x1a,0xba,0x34,0x8a,0x0e,0xa2,0x1a,0x89,0xca,0x4d,0x95,0xdc,0x6c,0x19,0x97,0x45,0x28, + 0xc5,0x27,0xd1,0x58,0x23,0xcf,0xa3,0x13,0x43,0xda,0x14,0x2a,0xd0,0x49,0x65,0xb4,0x95,0xda,0xe9,0x92,0x3f,0xe7,0xd0,0xa0, + 0x8a,0xa5,0x09,0x7a,0xad,0x81,0xdf,0x76,0x72,0x1a,0x95,0xca,0x4c,0x3e,0x24,0xed,0x4d,0x94,0x8a,0x75,0xf0,0xe5,0x5d,0xbc, + 0x1f,0x43,0xf4,0xcf,0x79,0x4e,0xc1,0x24,0x47,0xf2,0x1f,0x6b,0xf9,0x88,0xec,0xa0,0x00,0xb9,0x9d,0x36,0x20,0x8e,0x1a,0xe9, + 0xae,0x50,0x59,0x48,0xa7,0x79,0x86,0xdf,0xdb,0x4a,0x0d,0x5a,0x1d,0x62,0xf5,0xdf,0xa7,0x70,0x39,0x12,0xa9,0x8c,0x32,0xd1, + 0xcb,0xab,0x28,0x01,0x31,0xea,0x98,0x16,0xa3,0x7a,0x65,0x22,0xdd,0xbe,0x05,0xa7,0xf1,0xee,0x21,0xce,0xe1,0x70,0xf9,0xfe, + 0x27,0xfd,0x98,0x62,0x29,0xf6,0x6b,0x86,0x29,0xba,0x84,0xa8,0xc5,0x13,0x15,0x68,0xa6,0x29,0x0a,0x66,0x29,0xbe,0xd3,0x0d, + 0xf3,0xbf,0x1e,0x66,0x15,0xdd,0xb1,0x16,0x33,0x14,0x81,0x02,0xd6,0xc4,0xfb,0x16,0xc3,0x5c,0xd1,0x21,0xc4,0xe3,0x1f,0xbb, + 0xc9,0x49,0xdb,0x90,0xea,0x89,0x5a,0x44,0x3f,0xac,0x23,0xab,0x18,0xb4,0x1a,0x66,0x7b,0xa7,0x10,0xef,0xb4,0x68,0xbb,0xa9, + 0x85,0x83,0x50,0xae,0x6f,0xa0,0xf5,0x28,0x90,0x3b,0x65,0x3a,0x4d,0xc9,0x4c,0xad,0x8b,0xb2,0x31,0x40,0x9a,0x58,0x6d,0x33, + 0xcc,0xf5,0xed,0x42,0x24,0xe2,0x52,0xdb,0x29,0x99,0x80,0xb5,0x18,0x81,0x3c,0x83,0xf3,0x4a,0x89,0x97,0x1d,0x86,0xb9,0xb4, + 0x45,0x88,0x71,0x88,0x2e,0x94,0xd3,0x29,0x64,0xa3,0x1f,0x3d,0xac,0x09,0x71,0xa1,0xc7,0xa6,0x51,0x88,0x0b,0x3e,0xdf,0x41, + 0x49,0xf2,0x87,0x76,0xe4,0x72,0x0e,0x6d,0x42,0x1f,0x49,0xd1,0xe9,0x11,0x7d,0xe3,0x11,0x5d,0x3c,0x45,0x85,0x08,0xa5,0x48, + 0x7c,0x79,0xb9,0x78,0xe1,0x16,0xc3,0xf4,0xbb,0x12,0x22,0x46,0xba,0x10,0x23,0x95,0x0b,0x6e,0x5a,0xb0,0xb4,0x72,0xd8,0xe2, + 0x8b,0xcb,0x7d,0xdc,0x96,0xad,0x1c,0xcd,0x5b,0xee,0x4f,0x76,0x74,0x58,0x66,0x55,0x85,0x6d,0x03,0x46,0xb5,0x20,0x7b,0x91, + 0xd7,0x49,0x14,0xc9,0xef,0xd6,0x69,0x47,0xa9,0xcf,0xb6,0x9b,0x4c,0x56,0x19,0xde,0x51,0xd6,0xe8,0xe5,0xbb,0x64,0x93,0xc5, + 0xb1,0x91,0x0b,0xa5,0xaf,0xcd,0xa9,0xae,0x32,0xb8,0x58,0x6b,0xc5,0x3e,0x1e,0xa1,0xfd,0x8b,0x02,0x6d,0xf1,0x5a,0x04,0x8d, + 0xeb,0x0b,0xda,0xc4,0x9d,0x61,0x5c,0xbc,0x62,0x5c,0x0e,0xd1,0x38,0xa4,0x70,0x5c,0x6f,0x98,0x87,0xae,0x87,0xc8,0xa2,0x27, + 0x8e,0xc9,0x06,0x6a,0x24,0x3f,0xd6,0x05,0xdf,0x6a,0x98,0xfe,0xfb,0x0d,0xb3,0x49,0x3d,0x70,0x8c,0x37,0x23,0x99,0xf6,0x52, + 0x82,0xf5,0xa5,0x7c,0xd5,0x84,0x5a,0x5b,0x17,0x6b,0xe2,0xfc,0xfd,0x86,0xf9,0xb2,0x47,0xde,0xa7,0xdf,0x9f,0x43,0x7b,0xb1, + 0x73,0x51,0x39,0x6f,0xe7,0xf7,0x57,0x5b,0xcf,0xb3,0x12,0x35,0xaf,0x19,0xe6,0xbd,0x2f,0x0a,0x51,0x42,0x6f,0xdd,0xf1,0xbb, + 0x4f,0x9e,0x4a,0xc0,0x19,0x68,0xc2,0xe7,0x2e,0xc3,0xf4,0xfe,0x5e,0x88,0xb7,0x5f,0x3e,0x8a,0x4c,0x7e,0x22,0x09,0xdf,0x59, + 0xc3,0x70,0x88,0x95,0xf0,0x79,0xcc,0x30,0xf3,0xbe,0x16,0xc2,0x4d,0xcf,0x8d,0x61,0x8d,0x2c,0x46,0x30,0xdf,0xdc,0x81,0xdf, + 0x89,0xb8,0x0f,0x0d,0x73,0xf3,0xef,0x85,0x28,0xc7,0x1f,0x42,0x6d,0x33,0xb2,0x02,0x95,0x74,0x84,0x7f,0x7c,0x75,0x0d,0x6a, + 0xf0,0xc2,0x5a,0x64,0xd3,0x49,0x99,0x48,0xb3,0x14,0x41,0x6f,0xfe,0x2c,0xb7,0x73,0xa6,0xcc,0xc7,0xa7,0xdb,0xa8,0x5c,0xa6, + 0xf1,0x41,0xca,0x90,0x5e,0xb3,0x34,0xa1,0x92,0x55,0x3e,0xa2,0xb9,0x81,0xa2,0x29,0x41,0x15,0x23,0x97,0x5b,0xf8,0x93,0x46, + 0xba,0x7b,0x35,0xff,0x72,0x4f,0x0d,0x5a,0x06,0x97,0xa1,0x51,0x6f,0xb6,0xfc,0xe3,0x2c,0x57,0x50,0x3a,0x5e,0x9c,0xa1,0x20, + 0xe5,0xaf,0x97,0x62,0x4a,0xee,0xe6,0x1a,0xf5,0x0f,0xa7,0x96,0x84,0xd7,0xf4,0x6a,0x98,0x96,0x4e,0x5a,0x76,0x16,0xf3,0xd8, + 0x88,0x59,0x8a,0xc2,0xd7,0x5d,0xc8,0xa1,0xab,0xb3,0x1c,0x71,0x5a,0x26,0xcd,0x73,0x15,0xfa,0xf4,0x63,0x14,0xa9,0x45,0x20, + 0x40,0x5e,0x99,0x2c,0x9b,0xb1,0x8e,0x2b,0x1d,0x69,0xb6,0x5c,0x8e,0x96,0x1f,0xed,0xa3,0x11,0xdc,0xf0,0xcf,0x70,0x3a,0x86, + 0x4b,0x0f,0x62,0x9b,0xac,0xe1,0x75,0x88,0xa1,0x12,0x6b,0xb1,0xb6,0x4f,0xc6,0x51,0x86,0x9a,0xa2,0x01,0x38,0x29,0x43,0x6b, + 0xa6,0x46,0xb8,0xb1,0x9f,0x6e,0x99,0x41,0x03,0x0f,0xd0,0x5e,0x8e,0xb4,0xbe,0x91,0xa6,0x52,0x69,0x3d,0x9f,0xc0,0xc7,0x49, + 0x74,0x5e,0xa5,0x73,0x81,0xfc,0x6d,0x89,0x4c,0xc2,0x24,0x37,0xcb,0x43,0xbc,0x0b,0xa7,0x38,0x44,0x2f,0xf1,0x0c,0xb2,0x48, + 0x76,0xd2,0xff,0xca,0xe1,0x46,0x3c,0x4c,0x19,0xa9,0xf6,0xf0,0x28,0xdd,0xbf,0x8f,0x7c,0x75,0x37,0x45,0xc9,0x78,0x19,0x42, + 0x25,0xda,0x41,0x15,0x69,0x5b,0xa5,0x8f,0xe2,0xe2,0x8f,0x0d,0xd4,0x73,0x2f,0x7d,0x9b,0xc0,0x7f,0xcd,0xb5,0x74,0xa1,0x50, + 0xc5,0xf3,0xb0,0x5c,0x2f,0x3b,0x61,0x11,0x0b,0xcf,0x1a,0xe6,0xbf,0x3d,0x63,0x29,0x50,0xbe,0xb2,0x08,0xdd,0xb0,0xd7,0x51, + 0x3f,0x95,0xe2,0x9d,0x3c,0x1a,0xa4,0x17,0x57,0x9e,0x61,0x4d,0x54,0xbc,0x68,0x98,0xaf,0x7a,0x34,0xe2,0x31,0xc0,0x03,0x9c, + 0x8e,0x8d,0x68,0x56,0x09,0xf4,0x42,0x2e,0xfa,0x3c,0xc2,0xe7,0x5f,0x32,0xcc,0xc3,0xbf,0xf5,0x0c,0x0f,0x13,0x74,0x06,0x7f, + 0x8f,0xa3,0x83,0xfa,0xf3,0xb3,0x5a,0x1c,0x75,0x48,0x25,0x4a,0x5f,0x36,0xcc,0x97,0x3c,0xb2,0x8b,0x7f,0x3b,0x24,0xa7,0xa8, + 0x9a,0x6c,0x5b,0x29,0x83,0x94,0x90,0x9e,0xed,0xc8,0xfb,0xb3,0x10,0xb3,0x98,0xa4,0x77,0x9c,0x5c,0x8d,0xe7,0x96,0x7c,0xad, + 0xc4,0xc5,0x6f,0x18,0x66,0x89,0x67,0xda,0x0f,0xec,0x83,0x1b,0x4e,0xbc,0x7d,0x10,0x21,0x94,0x82,0xdf,0x89,0xb1,0xe7,0x0d, + 0xb3,0xe3,0x13,0x21,0xfa,0x54,0x9c,0x6c,0x44,0x04,0xbd,0xd8,0xca,0xc7,0x51,0x41,0x1b,0xc8,0x36,0x44,0xf1,0x38,0xc2,0x23, + 0x5c,0x41,0x37,0x1d,0xc1,0x08,0xd2,0x94,0xa7,0xcd,0x28,0xe6,0x70,0xfd,0xb0,0x7c,0xbb,0x17,0xb9,0xfa,0x8f,0x4e,0x59,0x0e, + 0xd4,0xa3,0x9b,0x9b,0xd0,0x83,0x4a,0xba,0xaa,0x1c,0x03,0xb8,0x6c,0x98,0x6a,0xe4,0x47,0x4e,0x6e,0xc4,0x31,0x2a,0x75,0xf4, + 0xdb,0x5b,0x38,0x01,0xd3,0x7a,0x8c,0x0a,0xa7,0x24,0x5e,0xe4,0x52,0xc7,0x69,0x2f,0x02,0x10,0xa1,0xf5,0x70,0x27,0xbd,0xb8, + 0x8b,0xa3,0x55,0xaf,0xfa,0x5b,0x2f,0x6d,0xc7,0x6d,0xda,0x66,0xec,0xe0,0x5c,0x0a,0x40,0x1c,0x17,0x51,0x36,0xc5,0xe2,0xb0, + 0xec,0xc1,0x8a,0x44,0x9c,0xd0,0x0a,0x28,0x84,0xdb,0xac,0xbd,0x5a,0xb4,0xba,0xe5,0xaa,0x9f,0x71,0x08,0x35,0x14,0xae,0xbc, + 0xc7,0xa5,0x0b,0xd3,0xc8,0xa6,0x1c,0xd5,0x40,0x7d,0x5e,0x5f,0x35,0xd1,0x20,0x2e,0xdd,0x6a,0x09,0x67,0x17,0xde,0x2d,0x63, + 0x53,0x4d,0x71,0x96,0x35,0xdd,0xf6,0xf6,0x61,0xf6,0xa7,0x3a,0xba,0x72,0x0c,0xb1,0x70,0xa1,0x42,0x7e,0xd6,0xc1,0xe5,0xdc, + 0x85,0x74,0xe5,0xd3,0xca,0x21,0xb8,0xe7,0xdf,0x4b,0xd6,0x22,0x94,0x77,0xf2,0x11,0x9c,0x91,0x3b,0xf5,0x28,0xac,0x2c,0x76, + 0xfc,0xe1,0x8c,0x1e,0x82,0x73,0xf8,0x71,0x1f,0xa7,0xa3,0x02,0xcf,0x5f,0x95,0x26,0xbf,0xbc,0xb0,0x42,0x6b,0xe5,0x20,0x04, + 0xe0,0xa6,0xbd,0xdc,0x8a,0x2e,0x3c,0x1a,0x87,0x22,0x9e,0xe1,0x60,0x6b,0x9c,0x67,0xf0,0x4e,0xfd,0x9d,0x7c,0xfa,0x3a,0x44, + 0xf6,0xe9,0x9b,0xf5,0x27,0xc7,0xe0,0x33,0x01,0x17,0xaa,0xd9,0x17,0x3e,0x65,0xc8,0x95,0x4a,0x54,0xde,0x6c,0x98,0x57,0x04, + 0x09,0xe1,0x54,0x9f,0x86,0xca,0xbf,0xc5,0xe3,0x3e,0xad,0x18,0x52,0xfc,0xe0,0xb9,0xfc,0x7a,0x3f,0x21,0x7a,0xb0,0xf8,0xd1, + 0x2f,0x62,0xe8,0x1f,0x52,0x94,0xdf,0x69,0x98,0x8f,0xf8,0x0a,0x71,0x0e,0xbf,0x3a,0x89,0x41,0x3a,0xe8,0xd9,0x34,0x25,0x36, + 0x7a,0x98,0x5f,0xf8,0x0b,0xf1,0x49,0x2c,0x8a,0xc8,0x76,0x0e,0xf9,0xb4,0x99,0x53,0x20,0xc5,0xdc,0xe3,0x86,0x39,0xfc,0x2f, + 0x21,0xb6,0xe1,0x2d,0xcb,0x7b,0x95,0x28,0xc0,0xef,0xc4,0x6b,0x97,0x18,0xe6,0x39,0x6f,0x88,0x5e,0xc7,0x1d,0x67,0x65,0x39, + 0xcd,0x50,0x92,0x0c,0x59,0x7e,0x61,0x92,0x23,0x96,0x46,0x1c,0xa5,0x72,0x6c,0xd9,0x34,0x22,0x1c,0x25,0xdc,0xec,0x15,0x40, + 0x99,0x4b,0x13,0x31,0x4e,0x31,0xd4,0xe0,0x78,0x72,0xc4,0x11,0xc4,0x99,0xb6,0x0a,0x15,0x4c,0xc1,0xb4,0xc9,0xa6,0x95,0x22, + 0x1e,0x79,0xf2,0x3f,0xaf,0x1f,0x42,0xb0,0xdc,0x86,0x76,0xb9,0x1b,0xae,0x65,0x07,0xb0,0xf7,0x82,0x3b,0x6b,0x96,0x3b,0x29, + 0x8e,0x1f,0x2f,0xf4,0x8e,0xe3,0x19,0x2d,0x58,0x66,0x5a,0xdf,0x3e,0x4b,0xc9,0xd2,0xe3,0x82,0xda,0xb1,0x22,0x4e,0x06,0x71, + 0xbb,0xca,0xa3,0x4c,0x6c,0x42,0x0e,0x82,0xd1,0xc6,0xef,0xe7,0xc9,0xb7,0x8a,0x97,0x9d,0xb4,0x05,0xe9,0xc5,0xea,0xf9,0xcd, + 0x3c,0x81,0x77,0xd6,0xea,0x93,0x30,0x69,0x98,0xfc,0xf1,0xbb,0x2a,0xd9,0x4b,0x79,0xd8,0xcb,0x07,0xe4,0x1c,0xe9,0x63,0x58, + 0xc5,0x2e,0x3c,0xf3,0x59,0x28,0x52,0xd1,0xef,0xe5,0x84,0xc1,0xed,0x38,0xc1,0x3e,0x37,0x8c,0xa0,0x4c,0x9f,0xc1,0x18,0x15, + 0x93,0x9b,0x3e,0x4a,0xb1,0x4c,0xa2,0x84,0xb6,0x91,0x9b,0x1f,0x99,0xd6,0x2a,0xe0,0xa7,0x9e,0x3b,0x87,0x0f,0x7d,0x91,0x87, + 0x6f,0x1f,0x4c,0xb6,0x5e,0x1f,0xaf,0xa5,0x53,0xb1,0x76,0x56,0x0e,0x7b,0xa5,0x62,0x62,0x59,0x27,0x6f,0xfd,0x05,0x72,0x69, + 0x08,0x3b,0xe9,0x90,0x2c,0x94,0xc7,0xe1,0xab,0x07,0x63,0x51,0x16,0xf6,0x52,0x09,0x62,0xac,0x37,0x0f,0x6a,0x71,0x98,0xb0, + 0x86,0xcb,0x38,0xcb,0x49,0xcc,0xd9,0xdf,0x5d,0x58,0x9e,0x4b,0x9b,0x97,0x8e,0x63,0xd0,0xea,0x42,0x93,0xac,0xa1,0xcb,0x93, + 0xe0,0xc2,0x63,0x73,0xb6,0x1e,0x55,0xad,0x6f,0x41,0x98,0xcc,0xc4,0x0b,0x73,0x08,0xd5,0x12,0x28,0xdc,0xf6,0xf2,0x75,0x22, + 0xeb,0x11,0xc3,0xbc,0xfb,0x36,0x88,0x0f,0x22,0xe1,0x76,0x54,0x50,0x94,0x67,0xd9,0xce,0x69,0x2f,0x1f,0x93,0xf3,0x94,0x23, + 0x9b,0x10,0xef,0x48,0x43,0x1f,0x9f,0xe1,0x00,0xb9,0xe4,0xa4,0x1e,0x46,0x07,0x91,0xae,0x35,0x69,0xc1,0xe8,0xa0,0x79,0x0a, + 0x52,0x4f,0x17,0xd2,0x11,0x72,0x6b,0x79,0x7c,0x54,0x4f,0xe0,0x5a,0xca,0xe2,0xb5,0x3c,0x89,0x20,0x2d,0x96,0x0e,0xe8,0x4f, + 0x8e,0x6a,0xad,0x6a,0x48,0x45,0xf2,0xa8,0xed,0x93,0x43,0xd6,0x02,0xfc,0x2d,0x9f,0xdd,0xf2,0x5e,0x5f,0x6d,0x23,0x2f,0x78, + 0x37,0xa3,0xf3,0xba,0x42,0xaf,0xb9,0xc5,0x49,0x88,0xb3,0xfe,0xcf,0xb0,0xdc,0x96,0x44,0x6f,0x64,0xa8,0x62,0x64,0x5b,0xf2, + 0xe1,0xbb,0x68,0x92,0x74,0xd1,0xfc,0xcb,0xda,0x5c,0x0f,0xb1,0x5b,0xff,0x31,0xc0,0x5a,0x03,0x7f,0x47,0x83,0xac,0x5b,0x94, + 0xcd,0x8b,0x8b,0x68,0xde,0x16,0xa0,0x39,0x44,0xcb,0x1d,0x1e,0xdc,0xb9,0x10,0xa2,0x48,0x3b,0x86,0xf7,0xb6,0x72,0xb5,0xbd, + 0x58,0x26,0xca,0x56,0xea,0x45,0x2f,0x6a,0x96,0xcc,0xa8,0xb3,0x37,0x24,0xe8,0x07,0xb5,0x78,0x6c,0xa4,0x1d,0xfc,0x7d,0x0e, + 0x6f,0xd2,0x12,0xe5,0xeb,0x62,0xe1,0x03,0xc3,0xbc,0xf8,0x46,0x88,0x09,0x8d,0xfc,0xe9,0x3f,0x3d,0x72,0x9e,0xea,0xf4,0x3a, + 0x84,0xa9,0x25,0x7b,0x65,0x01,0x0f,0xb3,0x4b,0xb9,0xe4,0x0b,0x33,0xf6,0xa3,0x70,0xd1,0x51,0xee,0xd3,0xcf,0x59,0xa6,0x17, + 0xc7,0xf3,0xb4,0x7d,0x0d,0xd2,0x6c,0x9f,0x37,0xa9,0x11,0xd4,0xda,0xdc,0x74,0xdc,0x2b,0x14,0x3d,0x96,0x7d,0xd4,0x73,0xd1, + 0x16,0xf6,0x5b,0xfa,0x42,0x81,0xb5,0x8c,0x3e,0xdc,0x8f,0xb0,0x0b,0xc3,0xa4,0x73,0xe9,0x7b,0x81,0xd6,0x61,0xae,0x5f,0x72, + 0x0e,0x9e,0xbf,0x8b,0x46,0xd5,0x85,0x49,0xfb,0xab,0xc9,0xb4,0x40,0x81,0xda,0x66,0xaa,0xd2,0xde,0x8c,0xa5,0xbf,0x96,0x52, + 0x00,0x6f,0x50,0xcf,0xfd,0xfb,0x1c,0x8d,0x5b,0x0e,0x20,0xda,0xd3,0xfe,0x69,0x99,0x47,0x7d,0xf6,0x24,0xce,0xb2,0x5c,0x7e, + 0xc0,0xe2,0xc4,0x31,0xb9,0x93,0x37,0x2f,0x7d,0xaa,0xd3,0xfb,0x2c,0x05,0x2f,0xdf,0x82,0x46,0xfb,0xdf,0x7b,0x95,0x81,0xdc, + 0xcb,0x66,0x10,0x70,0x81,0x4f,0xa4,0x72,0x22,0x0e,0x71,0x34,0xa7,0xb6,0xa3,0xec,0x57,0x37,0xe6,0x2d,0x6e,0xc0,0x61,0xde, + 0x45,0x51,0xd6,0xbf,0x36,0x3b,0x3e,0x3e,0xa6,0x8e,0x73,0x92,0xed,0x93,0x72,0xfd,0x5b,0x7f,0xaf,0x48,0x69,0xd2,0x6e,0xcc, + 0xe8,0x17,0x1e,0xd4,0xb3,0xe4,0xfe,0x15,0xef,0x3a,0xc9,0x9f,0xb7,0x78,0xb7,0x73,0x9d,0x56,0x8d,0xbb,0x5c,0x08,0x72,0x9c, + 0xa0,0x01,0x0c,0x22,0x6e,0x51,0xbf,0x9a,0xd2,0xff,0x39,0xac,0xf2,0x50,0x4f,0xa5,0x74,0x5a,0x6f,0x54,0xbb,0xe9,0x00,0xe9, + 0xe2,0x83,0xa7,0x0d,0x73,0xcb,0xed,0x10,0x91,0xfa,0xd3,0x27,0x6d,0x81,0xfc,0xfb,0x2f,0xa6,0x6c,0x7b,0xb1,0xc6,0xee,0xe6, + 0x12,0x4e,0x86,0x26,0x3e,0x7d,0xc6,0x83,0xec,0x37,0x43,0x94,0xd2,0xe3,0x3b,0x96,0x14,0x62,0xbf,0x67,0x98,0x63,0x2a,0x1c, + 0xef,0xe7,0xc0,0x4b,0x58,0xde,0x36,0xcc,0x87,0xee,0x86,0x88,0xd0,0x37,0xd1,0x19,0x1c,0xa2,0x36,0xef,0x1b,0xf7,0xd9,0x2b, + 0x51,0xa5,0xf6,0xa1,0xcd,0x5a,0x89,0xe0,0x25,0xc1,0xd8,0xaf,0xba,0x69,0x6a,0xc9,0x20,0x0c,0x47,0x1d,0xad,0xd5,0x6f,0xc9, + 0xb4,0xf6,0xc1,0x21,0x56,0x79,0x3e,0xf8,0x85,0x77,0x42,0x84,0x78,0xdd,0x5f,0x42,0x6e,0x84,0x7b,0xba,0x18,0x63,0x8f,0xc4, + 0x87,0x7b,0x78,0xc3,0xa5,0x27,0xa9,0x45,0xbb,0xa1,0xd4,0xd1,0x4e,0x7f,0x1e,0x51,0xae,0xcb,0x27,0x68,0xd8,0xbe,0xe2,0xff, + 0x0d,0x55,0x05,0x40,0x14,0xd9,0xff,0x7f,0x9f,0xef,0x7b,0x6f,0x66,0x76,0x76,0x97,0xb5,0xce,0xee,0x8e,0xff,0x9d,0xed,0x75, + 0x77,0x77,0x77,0x77,0x77,0x83,0xa0,0xf8,0xa7,0xbb,0xc1,0x82,0x35,0x17,0x31,0x40,0xba,0xb1,0x5d,0xa5,0x51,0x81,0x03,0x93, + 0x30,0xa9,0x3b,0xc2,0x99,0xdf,0xbe,0xce,0x6f,0xc7,0x3b,0xec,0xae,0x2b,0xd7,0xcd,0xbb,0x1a,0x0d,0x33,0x4a,0x53,0x37,0x0f, + 0x2b,0x21,0xe7,0x84,0x5d,0x48,0x9d,0xd1,0x8f,0xb0,0xc9,0x0d,0x14,0x63,0x9f,0xdf,0xb7,0x28,0x1a,0x55,0x33,0x6f,0x8a,0x99, + 0x54,0x88,0x1a,0x7b,0x15,0x4f,0x50,0x9f,0xe9,0x19,0x99,0x89,0x8e,0x89,0x13,0xd2,0x2d,0x61,0x96,0xec,0xe1,0xdd,0xd4,0xce, + 0xb7,0x89,0x03,0x8a,0x0b,0xdd,0xda,0x20,0x25,0xf3,0x8d,0xb2,0x71,0xd6,0x10,0x9d,0x42,0x94,0xd6,0x42,0xbb,0xe0,0xa7,0xda, + 0xab,0xec,0xe7,0x28,0x01,0x95,0x74,0x4a,0xd4,0x8b,0x0a,0xaf,0x4a,0x71,0x1c,0x2e,0xb8,0xa7,0x3e,0xd4,0x37,0x3a,0x9c,0xca, + 0x47,0x2c,0xe8,0x18,0x7f,0x88,0x57,0x39,0x1e,0x8f,0xb3,0xfd,0x10,0x30,0xfa,0xee,0x5c,0xfd,0xa8,0x38,0x30,0xe6,0x34,0x62, + 0x6c,0x0e,0x3f,0x6e,0x78,0xfe,0xbc,0x97,0xe3,0xe5,0xcd,0xdb,0x6d,0x09,0x88,0x53,0x53,0x79,0x35,0x9c,0xb4,0x57,0x59,0x56, + 0x20,0x3f,0x3e,0x23,0xbf,0x4a,0x56,0x93,0xd4,0xcc,0x61,0x71,0x54,0x82,0x03,0xf8,0x2b,0x8a,0x02,0x94,0x3b,0x72,0xc7,0x27, + 0x52,0x95,0xd7,0x13,0x2d,0x3c,0x06,0x01,0xfa,0x03,0xfe,0x63,0xfd,0x44,0xe5,0xec,0x35,0xd8,0xa8,0xa6,0xaa,0x11,0xa2,0x1c, + 0x75,0xd6,0x27,0x5f,0xaf,0xe0,0x19,0xd6,0x17,0xb3,0xed,0xef,0x9d,0xd5,0x7e,0xf6,0x56,0x9f,0xf3,0x1b,0xb7,0x20,0x7d,0xa2, + 0x4b,0x04,0x8c,0xd8,0x80,0x42,0x47,0x0e,0xb2,0xb5,0x72,0x34,0xda,0x3f,0x38,0x3f,0x69,0x37,0xd5,0xa8,0x71,0x08,0xa3,0x08, + 0x91,0xab,0x9e,0x47,0xae,0xba,0x7c,0x3b,0x0f,0xe0,0x59,0x72,0x54,0x94,0xa5,0x12,0x4d,0x32,0x5e,0x26,0x51,0x3d,0x7a,0x1c, + 0x8f,0xd5,0xc9,0x32,0xba,0xcc,0x47,0xe6,0x3b,0x1a,0xa8,0xcd,0xd6,0x29,0xc2,0x46,0xc7,0xf2,0x46,0xeb,0xd2,0xab,0x96,0x7e, + 0x8f,0x94,0x2e,0x23,0x80,0xaa,0xd4,0x30,0xfb,0x41,0xda,0x26,0x62,0x64,0x03,0x45,0x91,0xc2,0x9c,0x1f,0x1b,0xe6,0x92,0xd3, + 0x86,0xe9,0x92,0x0f,0xd6,0x53,0x0c,0x92,0x11,0x44,0xc5,0xf4,0xd1,0x59,0xa5,0x84,0x4b,0x36,0xf5,0x45,0xc3,0x1c,0x8a,0x36, + 0xcd,0xdd,0x74,0xe7,0x2b,0x6e,0xb8,0xe9,0xde,0x6f,0x9f,0x14,0x6c,0xe4,0xf3,0x86,0xf9,0xf2,0x5b,0x8c,0x85,0xe3,0x83,0x31, + 0xeb,0x68,0x2b,0x7c,0xb9,0xc2,0x06,0xde,0x36,0xcc,0xcf,0x5f,0x60,0xec,0xd6,0x8d,0x88,0xc5,0x3d,0x77,0x47,0x90,0x1b,0x0b, + 0x1e,0xf0,0x81,0x60,0xbd,0x2f,0x18,0x66,0xac,0x05,0xac,0x89,0xbe,0xb9,0xed,0xa3,0x54,0xaa,0x85,0x60,0x11,0x1e,0xa0,0x21, + 0x9e,0xa3,0xd5,0x9c,0x27,0xa0,0x08,0x6b,0x45,0x39,0x24,0xf3,0x7b,0xcd,0x30,0x1f,0x53,0xc1,0xde,0xdf,0x84,0x48,0xde,0x0c, + 0x37,0x1a,0xf8,0x56,0x0a,0x16,0x82,0x95,0xbd,0x6a,0x98,0x05,0x12,0xac,0x50,0x58,0x23,0x29,0x9e,0xb6,0x90,0x93,0x24,0xdb, + 0xe8,0xa1,0x79,0x85,0x15,0x6c,0x50,0xdd,0x45,0x2b,0x55,0x25,0x97,0x32,0x3d,0x80,0x7c,0x20,0xd9,0xfc,0xef,0x0c,0xb3,0xc3, + 0x73,0x91,0xa8,0x16,0xc3,0x2d,0x52,0x28,0x43,0x84,0xa2,0x15,0x47,0x49,0xb0,0x23,0x3f,0x18,0xe6,0x0d,0x0e,0xb0,0x78,0x3a, + 0x4f,0x57,0xc5,0x19,0xd4,0x92,0x0f,0x54,0xe6,0xff,0x8b,0x61,0xee,0xb7,0x81,0x5d,0xa0,0x34,0xec,0xc7,0x1a,0x4f,0x5f,0x7a, + 0x4f,0x80,0x38,0x22,0x0f,0x62,0xe4,0x25,0x48,0xf6,0xe1,0xaf,0x86,0x19,0x63,0x07,0xbb,0xf1,0xe7,0x33,0xf4,0xd8,0x4b,0x51, + 0x94,0x4f,0xe7,0xf0,0x0e,0x73,0xde,0x63,0x98,0xe1,0x13,0xc0,0x5a,0xbc,0x7e,0xca,0x17,0x35,0x62,0x8f,0xf6,0x48,0xdc,0x98, + 0xb5,0x62,0x1b,0x12,0x29,0x53,0xdb,0xc1,0xb3,0xf9,0xd7,0x0d,0x32,0x8b,0x5e,0xca,0x84,0x37,0xd1,0x11,0x59,0x45,0x2b,0x2d, + 0x06,0x86,0x95,0xe3,0xa0,0x3c,0x82,0x5a,0x38,0x29,0x41,0x5f,0x78,0x68,0x64,0xab,0x72,0x59,0xeb,0xb5,0x5d,0x96,0x65,0xe8, + 0x53,0x13,0x44,0xa0,0x32,0xc4,0xf3,0xb4,0x01,0xaf,0x07,0x3c,0xf6,0x24,0x1e,0xc8,0xc1,0x1a,0xda,0xec,0x95,0x43,0xb9,0x22, + 0x0a,0x97,0x1d,0xd7,0x79,0x92,0x52,0xc0,0x77,0x69,0xc7,0x6c,0x0d,0x6a,0x9a,0xe2,0x43,0x3e,0x5a,0xb9,0x57,0xab,0xf2,0x9f, + 0xda,0x8d,0x15,0xa9,0x74,0x60,0xd8,0x19,0xd9,0x23,0xec,0x67,0x91,0x4c,0x21,0xda,0xc2,0xdf,0x9a,0x94,0x0a,0x79,0x47,0x1a, + 0xc5,0xd1,0x7e,0x72,0xd1,0x36,0xcd,0x49,0x79,0x8a,0x89,0xc5,0x87,0xa9,0xcc,0x1a,0x40,0xd5,0x78,0xb6,0x58,0xa9,0xa7,0x60, + 0x44,0x8b,0x52,0x3d,0x45,0x6c,0x50,0x6e,0x60,0xc9,0x7c,0xa5,0x88,0x85,0x3f,0xf2,0x28,0x71,0x58,0x28,0xef,0xd7,0x26,0xb5, + 0x7b,0x0c,0x64,0x37,0xff,0xda,0xa5,0xbd,0xb3,0x1d,0xa5,0x54,0x36,0xf2,0x2c,0x32,0xd1,0x43,0xd5,0xe2,0xa7,0x78,0x5b,0xa7, + 0x92,0xe3,0xb5,0x0a,0x69,0xc3,0x7d,0x85,0xb9,0x2c,0x94,0x37,0xc9,0x1f,0xfc,0x65,0x15,0x8f,0xa6,0x3a,0xa5,0xdd,0x12,0x85, + 0xe4,0x51,0x13,0xaf,0xdb,0x93,0x28,0xd9,0xd2,0x27,0xef,0x3c,0x2e,0x9a,0xe7,0x6c,0xe6,0xe5,0x93,0x5d,0x38,0xe9,0xd8,0x8c, + 0x12,0x35,0x8a,0x6a,0xc7,0xb5,0xf1,0xee,0xe9,0x95,0xf8,0x77,0xec,0x2b,0xdb,0x6c,0xa9,0xf2,0xbc,0x36,0x44,0x7e,0x93,0x8b, + 0xf9,0x0e,0xa4,0xe3,0x90,0xbe,0x64,0xaf,0xf8,0x64,0xc7,0xb4,0x4c,0x5a,0xaf,0xbe,0xf6,0xcc,0x1e,0x24,0x89,0x87,0xc2,0xa8, + 0x1c,0xe1,0xf6,0x91,0x1a,0xdb,0xfb,0x81,0x61,0x36,0x4c,0x04,0xeb,0xb5,0x7b,0x2b,0x87,0xad,0x2d,0xd4,0x26,0x32,0xf8,0xba, + 0x51,0x21,0xc8,0xd5,0x77,0xd2,0x8a,0x26,0x91,0xa9,0x07,0x2b,0x1a,0x8b,0xf0,0x18,0xc2,0x4b,0x37,0x82,0xad,0xd7,0x9f,0x69, + 0xb7,0x35,0x6a,0xde,0xaa,0x5a,0x23,0xf2,0x90,0x22,0x0b,0x78,0xae,0xb2,0x1e,0x53,0xfc,0xf9,0x4c,0x66,0x7c,0x6e,0x98,0x35, + 0xcb,0xc1,0xbc,0xb5,0x2d,0x48,0x95,0x45,0xf2,0x32,0xad,0xa6,0xd3,0x7a,0x00,0xb2,0xf4,0x58,0xca,0x44,0x38,0x75,0xe8,0x33, + 0x0f,0x28,0x99,0x38,0xad,0x1c,0xa6,0x48,0xd1,0x8f,0x52,0x04,0x53,0x8f,0x7e,0x94,0xb7,0xc2,0xc5,0xb7,0xd9,0xfe,0xbc,0x2e, + 0x9e,0x2a,0xb0,0x55,0x49,0x97,0x63,0x3b,0x0e,0x6b,0x77,0xfe,0x8b,0x1e,0x98,0x23,0x9a,0xd0,0x6a,0xcb,0xc6,0x46,0x8a,0xe0, + 0x7d,0xa3,0xc6,0x4d,0x73,0xa2,0x55,0x19,0x1b,0xa1,0x1f,0xc2,0x09,0xdb,0x6b,0x1d,0xa2,0x07,0x9b,0x44,0x3a,0x8e,0x59,0x3b, + 0x69,0x2b,0x65,0xf1,0x2b,0xb6,0x07,0x42,0xe8,0x34,0xf7,0x9b,0xf0,0x41,0x86,0x78,0x58,0x65,0x8f,0x7c,0x6a,0x98,0x13,0x67, + 0x81,0xf9,0x6a,0x4b,0xfa,0x79,0x3a,0x72,0xb5,0x3d,0xa2,0x59,0xfd,0x31,0x85,0x5f,0xa1,0xbd,0xaa,0x8b,0x34,0xb6,0xc5,0x73, + 0x3f,0x67,0x01,0x58,0x83,0x98,0x59,0xac,0xbb,0xc8,0x5f,0x1c,0x86,0x6b,0xd8,0xb8,0xfd,0x3c,0x45,0x18,0xea,0x2f,0x9f,0xa4, + 0xc1,0xce,0x5c,0xdf,0x18,0xe6,0x95,0xb9,0x60,0x59,0x3c,0x16,0xff,0x6a,0x05,0x54,0x60,0x9d,0xb2,0x41,0x64,0x51,0x11,0x3d, + 0x75,0x45,0xf3,0x85,0x8b,0x3f,0x77,0x95,0x8e,0xe3,0x9a,0x32,0xea,0x04,0x42,0x28,0x7d,0xdc,0x00,0x3a,0xd4,0xfd,0x42,0xb2, + 0xb4,0x2f,0x0d,0xf3,0xbe,0xc5,0x60,0xd7,0xb8,0xc3,0xf1,0x5a,0x8b,0xcc,0x40,0x13,0xfa,0xb1,0x90,0xbd,0xbe,0xd2,0x30,0x77, + 0xcf,0x07,0xab,0xa1,0xc3,0x32,0x18,0xbe,0xa2,0x44,0x64,0x62,0x9f,0xea,0x42,0x18,0xfa,0x79,0xbf,0xc8,0x40,0x09,0xdf,0x8b, + 0x38,0x5e,0x22,0xce,0xc9,0x28,0x64,0x23,0x9e,0x8e,0xd1,0x72,0x9f,0x69,0x8b,0xaf,0xf1,0x36,0xda,0x20,0x7f,0x08,0xb7,0x1c, + 0xc2,0xec,0x9f,0x4e,0x8e,0x39,0xe0,0x31,0x88,0x2b,0x94,0xc6,0xb7,0x23,0x41,0x77,0x8a,0x36,0x7b,0x3b,0x8a,0xc5,0x33,0xbd, + 0x62,0x78,0x32,0xc5,0xf0,0x50,0xe5,0xbd,0x28,0xb1,0x9a,0x9f,0x52,0xbc,0x3a,0x91,0x81,0x01,0x71,0x15,0x1d,0x72,0xa9,0x5b, + 0x9e,0x23,0xf7,0x08,0x5f,0xd9,0x42,0x8f,0x1c,0x53,0x72,0xe9,0x3f,0xed,0xb6,0x4a,0x7b,0x29,0xda,0x94,0x00,0x44,0xda,0x07, + 0x30,0x32,0x1d,0x3d,0xca,0x1e,0x0c,0x69,0x33,0xd7,0xe8,0x67,0x28,0x43,0x8c,0x0d,0xa4,0xad,0xd4,0x25,0x52,0x70,0xd6,0x51, + 0xc1,0x55,0x56,0xea,0xf1,0x6f,0x9f,0x85,0x60,0xf5,0xfa,0x5d,0x81,0xd8,0x45,0x55,0xb6,0xd1,0x43,0xca,0xef,0x06,0x15,0xe0, + 0x82,0xfe,0xb8,0x64,0x31,0x1e,0x1f,0x9f,0xe1,0x91,0xdf,0x2a,0x65,0x59,0xba,0x35,0x8a,0xaa,0x2c,0xc3,0xfb,0xbd,0x32,0x49, + 0xb2,0xff,0xf3,0x78,0xf9,0x3b,0x23,0xc1,0xae,0x89,0x8f,0x26,0xf4,0xc1,0x2d,0xa3,0x71,0x77,0x05,0xa6,0xb0,0x5a,0x6f,0xc3, + 0x1c,0x73,0xc1,0x30,0xe3,0xb1,0x91,0x77,0x70,0x5b,0x1d,0x82,0xb8,0x9b,0x3f,0xa2,0x6c,0xe2,0x27,0x79,0x1e,0xb2,0xd5,0x54, + 0x79,0x44,0x9d,0xec,0x27,0x7e,0x3e,0x41,0x5b,0xa8,0x52,0x6f,0xa5,0x00,0x71,0x6f,0xc4,0xb0,0x20,0xde,0x88,0x12,0x79,0x49, + 0x7d,0x79,0x59,0x2f,0xd6,0x3a,0x94,0x3c,0xfe,0x59,0xe0,0x88,0xe5,0xbd,0x13,0x9c,0xa2,0x62,0x62,0x06,0xf6,0x8b,0xe3,0xe8, + 0xa1,0x62,0x74,0x4c,0xca,0xa0,0xf3,0x4a,0x1a,0xcf,0xe5,0xfb,0x50,0xaa,0x8e,0x75,0xaa,0x55,0x54,0xa3,0x7c,0x5d,0x8e,0x1c, + 0x28,0xec,0x68,0x90,0x47,0xc7,0x67,0x0d,0xd3,0x24,0x8b,0x12,0x82,0x28,0x7d,0x35,0xc5,0xd1,0x7a,0xda,0x69,0xf9,0x58,0xb0, + 0xa4,0x70,0xc3,0x9c,0x7b,0xc6,0xa3,0x13,0xf1,0xc8,0x5d,0xbf,0xf5,0xf1,0x12,0xe8,0xec,0x42,0xa2,0x61,0x4e,0xf7,0x04,0xe7, + 0x3c,0x39,0x61,0x0f,0x15,0x8a,0x6b,0x22,0x57,0x34,0xca,0x04,0x1c,0x92,0xc3,0xaf,0x52,0x3f,0xfc,0x29,0x99,0x2e,0xa3,0x92, + 0x7c,0x94,0x7e,0x52,0x58,0x73,0x82,0x61,0x2e,0xf5,0x00,0xbe,0x46,0xd3,0x1f,0x2e,0xa6,0x3e,0xba,0xe5,0x37,0x5f,0x2c,0x8f, + 0xa6,0xe1,0xec,0x17,0x0f,0x90,0x71,0x8c,0xb1,0x62,0x5c,0xe1,0x61,0xdc,0x97,0x4f,0x3f,0x43,0x85,0x94,0x43,0xd5,0xe8,0xa7, + 0x12,0x9e,0x8c,0x22,0x71,0x53,0x2c,0xc2,0xe8,0xa2,0x6c,0x14,0x57,0xf8,0x3a,0xf1,0x73,0x98,0xb8,0x86,0x85,0x6f,0xbe,0x57, + 0x03,0x37,0xfc,0x68,0xfe,0x2e,0x1c,0x84,0xc2,0x96,0xa4,0x18,0xe6,0x2e,0x0f,0xec,0x5a,0xae,0xff,0xf8,0x43,0x06,0x9a,0xb1, + 0x8f,0x77,0x62,0xde,0xd7,0x1a,0x9b,0xb6,0xd6,0x93,0x21,0x86,0x4c,0x33,0x99,0x17,0x63,0x54,0x21,0xfe,0xf0,0x46,0x04,0xbf, + 0x67,0x33,0x7e,0x76,0x9c,0x41,0x22,0xb5,0x42,0xb2,0x03,0x9e,0x9f,0xe5,0x03,0xa6,0x59,0x84,0xe7,0x5e,0x4a,0x42,0x39,0x82, + 0xf1,0xea,0xdb,0xef,0xb0,0xcf,0x73,0x0c,0x73,0xea,0x34,0xc6,0x7c,0x28,0x88,0xae,0x62,0x88,0x6e,0x74,0xf3,0xfd,0x38,0x8f, + 0x83,0xea,0x55,0x71,0x4c,0xd6,0x20,0x1e,0x29,0x98,0x9a,0x44,0xa1,0x68,0x44,0xb8,0x96,0x2e,0x11,0x4c,0x85,0x32,0x4f,0x5c, + 0xa7,0x4c,0xfe,0xf8,0x9c,0x50,0x7e,0x88,0x77,0x8a,0x2c,0x94,0xf0,0x20,0xa5,0x8f,0xd2,0xa5,0xda,0x88,0x56,0xbe,0x8b,0xb2, + 0x29,0x1d,0x5e,0xc7,0xb1,0xc9,0x1a,0xa1,0x0f,0xca,0x21,0xb5,0xd5,0xb6,0x4e,0x77,0x22,0x86,0x4a,0xa9,0x1b,0x5b,0x71,0x9b, + 0x2d,0x84,0xd6,0xe2,0x85,0x58,0x94,0xf3,0xff,0x97,0x6f,0xd8,0xcf,0x20,0x92,0x5f,0x80,0x4b,0x6f,0x41,0x23,0x95,0x60,0xd0, + 0x7a,0x44,0x24,0x6a,0xa9,0xa8,0xd0,0xb7,0xca,0x4c,0x7d,0xc9,0x51,0xee,0x8d,0x6e,0xa5,0x91,0x0f,0x2a,0x9b,0x65,0x91,0xd6, + 0xa7,0xa5,0x0d,0x77,0x7a,0x45,0xaa,0x6e,0xfe,0xf1,0x8f,0x55,0x4a,0x32,0xdf,0xa2,0x5f,0xa6,0xd7,0x52,0xe9,0x14,0xfd,0xca, + 0x93,0x50,0x8b,0x4f,0xae,0x21,0x9a,0xf2,0xb9,0x3f,0x92,0xe5,0xbd,0x91,0x32,0x92,0x9f,0xb2,0xee,0x16,0x95,0xe2,0xd9,0x32, + 0x7d,0xa5,0xe8,0xd6,0x7e,0x30,0x65,0x33,0xef,0x97,0xfb,0x70,0x86,0x1f,0xe1,0x25,0x5e,0x5d,0x94,0x28,0x23,0xf8,0x25,0x5b, + 0xba,0xf8,0xc7,0xba,0x46,0xbd,0x2e,0xda,0x44,0xb5,0x90,0x15,0x6a,0x0d,0x0e,0x5b,0x83,0xc4,0x36,0xf5,0xb2,0xea,0x3b,0xac, + 0x54,0x2d,0xd2,0xb2,0xf4,0x5e,0xda,0xa3,0x0c,0xa1,0x05,0x59,0x62,0x03,0x56,0xa1,0x91,0xae,0xd0,0x37,0xa9,0xe2,0xa2,0xb8, + 0xa5,0x4d,0xe6,0x71,0x03,0xbb,0xf9,0x59,0xa9,0x38,0xe5,0x46,0x6a,0x10,0x65,0x96,0x2e,0x6d,0x8b,0x76,0x52,0x1f,0xb4,0xa5, + 0x58,0x1a,0xf9,0x3f,0x98,0xbc,0x92,0x2e,0x79,0x7e,0xfe,0x7d,0x9c,0x22,0x45,0x9d,0x48,0xa0,0xbf,0x05,0x6b,0x8c,0x37,0xcc, + 0xde,0x47,0x18,0xf3,0x27,0xa4,0x8b,0xcd,0x48,0xa3,0x34,0xbc,0xc3,0xb2,0x57,0x79,0xac,0xea,0x2b,0xc6,0x3e,0x7e,0xf8,0x59, + 0x3f,0x14,0xf0,0xb5,0x98,0x9c,0x86,0x3a,0xdc,0xf7,0x64,0x3d,0xca,0x50,0x0d,0x7f,0xf1,0x62,0x12,0x1d,0xa6,0x6d,0xe4,0x92, + 0x5b,0x30,0xe1,0x02,0x5f,0x47,0x71,0xa8,0xa5,0x14,0xfe,0x7e,0x20,0x12,0xc5,0x55,0x94,0xa8,0xb9,0xbc,0x4c,0x89,0xc2,0xe3, + 0x0b,0xd3,0x84,0x4b,0xee,0xb7,0x96,0x50,0xab,0x25,0x1e,0xc7,0x46,0xb7,0xa2,0x5f,0x14,0x22,0x58,0x3b,0x4b,0x95,0x22,0x49, + 0xb4,0xf3,0x3c,0x54,0x88,0x65,0x47,0xc4,0x39,0x19,0xa7,0xb6,0xe1,0xa8,0xd2,0x87,0x41,0x44,0xc8,0x6b,0xd6,0x3d,0xd6,0x64, + 0xfb,0x11,0x4a,0xd4,0xbc,0xb5,0xdd,0x5a,0x22,0x4d,0x3c,0x24,0x7c,0xe8,0x3d,0x24,0x52,0x12,0xf6,0x68,0xab,0xe0,0x26,0x5f, + 0xda,0xc5,0xbf,0xfe,0x8f,0x6f,0x92,0xdb,0xe1,0x48,0x11,0xb7,0x0c,0x58,0xea,0x78,0x96,0xfe,0x54,0x33,0xa5,0x50,0x82,0xf8, + 0xcb,0xa9,0x3e,0x97,0x8f,0x44,0xdc,0x7f,0x02,0xcd,0xf8,0x3e,0x41,0x4c,0x58,0x2d,0xdc,0x94,0x83,0x8b,0xb4,0xa4,0xd0,0x03, + 0xdc,0x1f,0xf7,0x7c,0x57,0xae,0x06,0x89,0x0c,0x1e,0xc6,0xdf,0xe8,0x91,0x11,0x7c,0x17,0x1f,0x56,0x6a,0x59,0x4d,0x01,0xea, + 0x56,0x2d,0x4a,0x9c,0xf4,0x8a,0xa1,0x6c,0x25,0x8b,0xe2,0xd4,0x87,0xda,0xac,0x39,0xf4,0xd7,0x3e,0xd4,0x63,0x5e,0x38,0xde, + 0x4b,0x92,0x33,0x9d,0xbc,0x9a,0x3e,0x49,0x16,0x2f,0x6f,0xa4,0x53,0xc8,0xe4,0x4d,0x6a,0xad,0x36,0xaf,0x55,0x76,0xf2,0x12, + 0xfe,0x52,0x1a,0xb2,0xf9,0x6d,0xdf,0x47,0xd3,0x3f,0xb4,0x17,0x4a,0x1e,0xaa,0xf0,0xd7,0x07,0xf7,0x16,0xc9,0x5e,0x47,0x34, + 0x37,0xf8,0xa2,0x3e,0x71,0x90,0x2e,0x61,0x07,0x55,0xca,0x2c,0xee,0x78,0xad,0x1f,0x0a,0xfb,0xd2,0xcf,0x30,0x17,0x7e,0xc4, + 0xd8,0x84,0xd7,0x77,0xf2,0x35,0xd6,0xa9,0x97,0xe5,0x43,0xd1,0x4a,0x1b,0xf9,0xea,0x92,0x65,0xf9,0x1a,0x66,0xea,0x67,0x8c, + 0xdd,0xf9,0xed,0x1e,0x64,0x88,0x1a,0x5e,0x27,0x0e,0x8a,0x48,0x4d,0x30,0xdd,0xa3,0x08,0xe3,0x0b,0xc6,0x72,0xc9,0xcd,0xa7, + 0xbf,0x7c,0x8a,0x7a,0xe9,0x7f,0x0d,0x53,0x03,0x78,0x5c,0x69,0x1b,0xfd,0xce,0xfb,0x7e,0xdf,0xbd,0x77,0x26,0x2a,0xd7,0xb6, + 0x6d,0xef,0xaf,0x62,0x6d,0xb3,0xf8,0x59,0x77,0xad,0x34,0xb6,0x33,0xd3,0x64,0xdb,0xc9,0x6e,0xac,0x89,0x6d,0x54,0x49,0x93, + 0x36,0x6d,0x6a,0xa7,0x76,0x5c,0x26,0xf7,0xfe,0xf3,0xf8,0x35,0xce,0x39,0x5f,0x8a,0xc9,0xa5,0xa6,0x75,0xdb,0xb7,0x42,0x5c, + 0x9f,0x82,0x61,0x7b,0x0f,0x27,0x29,0xdf,0x70,0x2a,0xc2,0x7e,0xdf,0x72,0x2a,0xe2,0x1a,0x5c,0xe9,0xa0,0x44,0x44,0x62,0x35, + 0x5e,0xdf,0x8d,0x58,0x0e,0xe6,0x8f,0x9e,0x5a,0x87,0xdd,0xb4,0x8c,0x2c,0xf5,0xd7,0x12,0xfe,0xb1,0x96,0x33,0xb5,0xf3,0x88, + 0x56,0x3b,0x8d,0x2b,0xf3,0xf8,0xfb,0x66,0x2d,0x12,0xc9,0xf2,0x08,0x95,0x1b,0x0e,0x5e,0x8d,0x29,0x5b,0xd1,0x81,0x3f,0x91, + 0x48,0x7b,0x78,0x2f,0x4e,0x6b,0x2e,0x8a,0xc3,0xbc,0x02,0xda,0x8d,0xb3,0xd4,0x8d,0x24,0xaa,0xa0,0x3a,0x5c,0xf9,0x79,0x3b, + 0xf7,0xd1,0x17,0x4f,0x26,0xa2,0x9d,0x56,0xc2,0xc5,0xd1,0x9c,0xaa,0x72,0xd0,0x49,0xe1,0xe4,0xa4,0x61,0x4a,0x83,0x3f,0x9c, + 0xb4,0x16,0xf7,0x95,0xa1,0x14,0x17,0x50,0xab,0x1c,0x94,0x87,0x4b,0x28,0x97,0x2e,0x6c,0x43,0x2f,0x72,0xd0,0x2d,0x53,0xf0, + 0x7c,0x29,0x8a,0x28,0x96,0x3f,0x1c,0xe4,0x4d,0x54,0x69,0x34,0x90,0x83,0x9e,0x69,0xc7,0x69,0xce,0xc0,0xac,0x33,0xf4,0x76, + 0x3d,0x99,0x54,0x4c,0xf6,0x70,0xe4,0xe3,0x10,0xc7,0xd3,0xdc,0x5e,0xf4,0xd1,0xb4,0x72,0xed,0xcd,0x41,0xfd,0x34,0x25,0xda, + 0xff,0xbb,0x24,0x1f,0x47,0xb1,0x82,0x62,0xf1,0xd4,0x26,0x74,0xd0,0xc2,0xcb,0xc8,0xe0,0xdb,0x73,0xec,0xf5,0x72,0x0b,0xaf, + 0xa3,0xf3,0x2c,0xa6,0x27,0x71,0x39,0xb4,0x25,0x4e,0x84,0xd3,0x23,0x31,0x94,0xac,0x46,0x39,0x99,0x23,0xc9,0xc9,0xa1,0xb6, + 0x50,0x75,0x59,0xb9,0xa9,0x85,0x5d,0xd4,0xab,0x1e,0x71,0xe2,0x97,0x71,0x8c,0xe0,0x37,0x9f,0xa3,0xa8,0xe6,0x1e,0xbc,0x38, + 0xce,0xc7,0xd0,0x8e,0x74,0x04,0x62,0x2d,0x4b,0x21,0x43,0x4c,0xeb,0xe2,0x3c,0x21,0x26,0x7c,0xdd,0xa2,0x8e,0xd3,0x46,0xd5, + 0xe1,0xf1,0xb5,0x44,0x99,0xd6,0xae,0x45,0x42,0xcc,0x9a,0x1c,0xa4,0x1c,0x9c,0x26,0x97,0xb1,0x12,0xf3,0x53,0x4c,0xeb,0xf9, + 0x25,0x42,0xe4,0xf1,0x2e,0x84,0xd1,0x0b,0x43,0x48,0xc4,0x1b,0x81,0xb8,0x46,0x7c,0x15,0x68,0x5a,0x5e,0x13,0x20,0x1c,0xfc, + 0x5c,0x8f,0x6f,0xbc,0xea,0x34,0x2e,0x6b,0x5d,0xf4,0x4b,0x36,0x2f,0xde,0x82,0x40,0xec,0x9e,0xb8,0x5a,0xed,0x9e,0x90,0x80, + 0x51,0xaf,0x10,0x2e,0x40,0x0f,0xc6,0xd5,0x1b,0xb1,0x1c,0x40,0xa3,0x14,0x8e,0xd5,0x7c,0xcd,0x29,0x6e,0xa0,0x1d,0x68,0x43, + 0x8b,0x31,0xb3,0x44,0x5b,0x4e,0xef,0x24,0xc8,0x21,0xfd,0x18,0xa2,0x65,0x2e,0x37,0x79,0x0e,0x8c,0xd2,0x26,0x94,0xc8,0x6e, + 0x3c,0xd9,0x88,0xb7,0xc5,0x02,0x7f,0xd3,0x7a,0xc7,0x06,0x71,0x44,0x86,0xf0,0x59,0x5c,0x97,0x22,0x7b,0xf8,0x24,0xdd,0x36, + 0xc2,0xcb,0xb0,0x59,0x8b,0xc1,0x9f,0x34,0x82,0x3d,0x78,0x60,0x97,0xfe,0xdf,0x0d,0xaa,0x99,0xeb,0x94,0x2d,0x82,0x7f,0x5c, + 0x2d,0xd3,0xe4,0x01,0xaf,0x4c,0xee,0xe0,0x2c,0xa3,0x97,0xd2,0x78,0x80,0x22,0xe9,0xc3,0x8d,0xe8,0xd4,0x3e,0x5e,0x12,0x4a, + 0x75,0xfc,0x5c,0x2a,0x7d,0xa3,0x56,0x52,0xbd,0xfa,0xe4,0x77,0x7b,0x3e,0x2a,0x8c,0x33,0xb2,0x0d,0xe7,0xf1,0x71,0x02,0xd6, + 0xcb,0x01,0xbe,0x64,0xbb,0x22,0x95,0x46,0xa4,0x93,0xab,0xd4,0x28,0x99,0xb8,0x44,0x35,0xd2,0xa5,0x7e,0x1e,0x53,0x57,0x1e, + 0xf0,0xce,0xd6,0x9a,0xf4,0x74,0x0a,0xe6,0xeb,0x66,0x8c,0xf1,0x56,0x3a,0x88,0x3c,0x76,0x73,0xad,0xf6,0xce,0x30,0xbe,0x9f, + 0xb9,0x0b,0x4d,0x7a,0xb6,0xc7,0xf9,0x94,0x58,0x43,0x17,0x6c,0x1b,0x10,0xcf,0x6b,0x29,0x06,0x8f,0x8f,0xc9,0x7c,0xea,0x85, + 0xaf,0x7d,0x0d,0x4e,0xe1,0xd5,0x9d,0xb6,0xdf,0xb6,0xaa,0x10,0xbe,0x48,0xb1,0x48,0x9e,0x7c,0x89,0x87,0xb5,0x2e,0xf9,0xdf, + 0x24,0xf6,0x57,0x45,0x9e,0x51,0xbe,0x3b,0x11,0x86,0x2e,0xa4,0x62,0xbb,0x5c,0xb0,0x93,0xde,0xbe,0x4c,0x41,0xe4,0x42,0x84, + 0x9c,0xb7,0xb8,0x07,0x5f,0xdf,0xb0,0x0a,0x25,0x6a,0x39,0x1d,0xd6,0x53,0xd0,0x40,0x55,0xb4,0x57,0xdd,0xb7,0x1a,0xdf,0x36, + 0xd9,0x1d,0x2a,0xcc,0xee,0xc0,0x0a,0x04,0xd2,0x36,0xca,0x81,0x4d,0x1c,0x8d,0x30,0xad,0x35,0x7e,0x10,0x11,0x14,0x8c,0x05, + 0xcb,0xa8,0x43,0x3e,0xeb,0x44,0x2e,0xbb,0x91,0xc6,0xeb,0x71,0x1a,0x67,0x11,0x47,0x5b,0xd4,0x8b,0x52,0x44,0x25,0x99,0x56, + 0xd2,0xa0,0x10,0xa5,0xe4,0xc0,0x10,0x6e,0x7a,0xa9,0x12,0x52,0x04,0xba,0x4c,0x6b,0x8e,0x2f,0x84,0x5b,0xc6,0x61,0x17,0xd2, + 0xb1,0x85,0x4a,0x49,0x8a,0xdc,0x34,0xd3,0xba,0xd7,0xd3,0x30,0x90,0xba,0xa9,0x9d,0x4e,0x63,0x9d,0xfc,0xfa,0x69,0xf1,0xf9, + 0x0f,0x1e,0x76,0xdc,0x04,0xb1,0xdc,0xa7,0x80,0x7b,0xae,0xaa,0xa1,0x4e,0xf5,0x41,0x21,0x27,0xd2,0x9f,0x74,0x08,0x05,0x7a, + 0x39,0x72,0xe5,0xdd,0xa9,0xa8,0x47,0xb2,0xb1,0x1e,0xa3,0xb6,0x68,0x55,0xe5,0x1d,0x85,0xcd,0x46,0xbc,0xfc,0x28,0x9a,0x92, + 0x6c,0x31,0x88,0x40,0xbc,0x8c,0x55,0xfb,0xf1,0x07,0x9f,0xc2,0x4e,0xaa,0xa7,0x32,0xca,0xe1,0x78,0x3f,0x27,0xbb,0x6d,0x2f, + 0xfd,0x4e,0x63,0x14,0x4b,0x2b,0x11,0x26,0x9d,0x2a,0x4d,0x4f,0xa6,0x3e,0x23,0x1f,0xe3,0xfa,0x61,0x55,0xe9,0xe3,0xd0,0xba, + 0x6d,0x9d,0xd4,0x2a,0x5f,0x6b,0xe7,0x99,0xa5,0x7e,0x41,0x7a,0x03,0xe5,0x73,0x95,0x5a,0x83,0x0a,0x79,0x67,0x82,0x7d,0xa5, + 0xca,0xf5,0x9e,0x5b,0x86,0xe5,0xbc,0x5c,0x46,0x62,0x3b,0x2e,0x50,0xb7,0x7c,0xdf,0xf6,0x7d,0x08,0x87,0x20,0xcc,0x98,0x53, + 0x6b,0xa4,0x53,0xb2,0x91,0x83,0x61,0x5b,0x36,0xc7,0x71,0x21,0xaa,0xd4,0x53,0x51,0xba,0x9b,0x06,0xb5,0x42,0xd5,0xa4,0xff, + 0x67,0x97,0xfe,0x95,0x0b,0xff,0x1a,0x95,0xef,0xb6,0xf1,0x62,0x43,0x5c,0xf5,0xab,0x69,0xcd,0x7b,0x0a,0xa2,0x94,0x96,0xc9, + 0x51,0x63,0x0d,0xd5,0x1a,0x57,0x18,0x21,0x1c,0xa4,0xe6,0x06,0xd9,0xee,0xdc,0xec,0x21,0x8b,0x2e,0x6e,0xf1,0xd0,0x30,0xda, + 0x73,0xb9,0x65,0x5f,0x34,0xaa,0x65,0xa3,0xc8,0x36,0x86,0x96,0x89,0x25,0x58,0xd4,0x8d,0x60,0x23,0x9e,0x26,0x88,0xc7,0xc2, + 0x4c,0xab,0xfd,0x11,0x88,0x10,0xfb,0xb5,0x51,0xf6,0xcb,0xa8,0xd7,0xd6,0x93,0x43,0xcb,0xa3,0x78,0xb9,0x1d,0xe3,0xd7,0xb6, + 0xd3,0xd3,0x5d,0x18,0xb7,0x9d,0xa5,0x04,0xaf,0x1f,0x7b,0x7d,0x5c,0xe8,0xe6,0x26,0x54,0x4a,0x7f,0xfd,0xac,0xef,0x24,0x87, + 0xef,0x29,0xb8,0x64,0x24,0x29,0x51,0xe1,0x51,0xd3,0x0d,0xb7,0x42,0x6c,0x97,0xdf,0xd5,0xe3,0xe3,0x54,0x75,0x1c,0x3f,0x76, + 0x40,0x13,0x43,0xc1,0xa6,0x75,0xe2,0x3a,0x88,0x33,0xf2,0xfb,0x87,0x22,0xc8,0xc5,0xdf,0xc6,0xc9,0x23,0xe8,0xa7,0x78,0xd2, + 0x45,0xa9,0x67,0xe6,0xb9,0x3b,0x20,0xc6,0xd5,0x8d,0xe1,0xfa,0x21,0x84,0x22,0x88,0x36,0xd8,0xd2,0xa9,0x44,0xeb,0xc0,0x19, + 0x7c,0xf0,0x96,0x98,0xe4,0xd1,0xed,0x99,0xe7,0x20,0xaa,0x26,0x57,0x1a,0xa9,0xde,0xcd,0x38,0x6c,0xbb,0xe6,0xd5,0x7e,0xce, + 0x57,0xad,0x48,0xb7,0xcf,0xab,0xd6,0xfe,0xa0,0x22,0xac,0xa1,0x4c,0x9f,0x4f,0x66,0x0f,0xd2,0x26,0x59,0x8a,0x3f,0xbc,0xe6, + 0xb5,0x71,0x1e,0x5d,0x96,0xc3,0x72,0xcc,0x77,0x7e,0x92,0xaa,0xa6,0x38,0x15,0xe7,0xe9,0xd8,0x28,0xdb,0xb9,0x1f,0xc1,0xd7, + 0x6c,0xe2,0x1c,0xfb,0x56,0xd9,0x27,0x1d,0xa8,0x43,0x97,0xcc,0xe2,0x59,0x05,0x1c,0xac,0x5c,0x32,0x9a,0x3a,0xe8,0xbb,0x0c, + 0xdb,0x36,0xa4,0xe1,0x77,0x6d,0x7c,0x52,0xa7,0x66,0xea,0xe3,0x5a,0xb0,0x77,0x0f,0xad,0x56,0x77,0x46,0xa8,0x51,0x34,0xca, + 0xbf,0xc7,0x5f,0xbb,0x86,0xfa,0xf4,0x6c,0xca,0xf7,0xcb,0x46,0xff,0xd4,0x00,0xec,0x55,0x2e,0xaa,0xd0,0x1f,0x69,0xf7,0xdb, + 0x47,0xcb,0xb9,0x10,0x87,0x27,0xe7,0x53,0x02,0xb5,0xa1,0x69,0x72,0x05,0x8e,0xf9,0x8a,0xcb,0x46,0x2a,0xdc,0x13,0x1b,0xa9, + 0x8f,0xf6,0xa1,0xd5,0x6f,0x3f,0x4e,0xd9,0xfc,0x29,0x0a,0xbb,0x70,0x76,0xe2,0x72,0x3a,0x8d,0x08,0x8c,0xfb,0x64,0xa1,0xcf, + 0xb8,0xa7,0xd6,0xb6,0x87,0x4e,0xc9,0x16,0xe9,0xba,0xd9,0x0d,0x53,0x65,0xd2,0xa9,0x89,0xdf,0xf5,0x71,0x0b,0xce,0xab,0x89, + 0xfb,0x55,0x1d,0x2a,0x64,0x00,0x8e,0x1a,0x57,0x57,0xda,0x46,0xa8,0x8d,0x7b,0xe8,0x92,0xfd,0xef,0xa9,0xea,0x08,0x22,0xfc, + 0xae,0x3c,0x72,0x55,0x91,0x2c,0x34,0x72,0xb9,0xe1,0x9a,0xd9,0xfd,0xd8,0x85,0x2c,0xef,0x97,0x3c,0x0a,0x1b,0x98,0xe8,0x7b, + 0x69,0x62,0x1e,0x7b,0x8b,0x94,0x04,0xd3,0x9a,0x72,0x3b,0xc4,0xb3,0xdd,0x2a,0xd0,0xef,0xc5,0xbd,0x5e,0x75,0x14,0x6c,0x9b, + 0xde,0xe8,0x95,0xc4,0x11,0xf6,0x1a,0xed,0xe4,0x84,0x11,0x0a,0xd1,0x67,0x44,0x19,0xbd,0x54,0xa5,0xd5,0xcb,0x8f,0x76,0x42, + 0x17,0x32,0xd2,0xb4,0x0e,0x3c,0x08,0x11,0x73,0xcb,0x3f,0x77,0x50,0x1a,0x1a,0xb5,0x65,0x9c,0x7c,0xc7,0x2d,0x69,0x5c,0xc6, + 0x31,0x5e,0x55,0x90,0xa2,0xd2,0x13,0xb7,0x79,0x50,0x6d,0xf6,0x1c,0x95,0xaf,0xe6,0x3b,0x38,0x94,0xae,0x11,0x3e,0x1e,0x15, + 0x96,0xde,0x0c,0x71,0xdc,0xf7,0x22,0xed,0x9b,0x38,0xf3,0xb4,0xad,0x03,0xa9,0xc8,0xc2,0x5a,0x9f,0x78,0xa3,0x4f,0x86,0xa2, + 0x01,0x95,0xc8,0xb0,0x47,0x6b,0x19,0x72,0xda,0x09,0xdf,0x5c,0xac,0xf7,0xf9,0x68,0x40,0x2b,0x45,0x09,0x9f,0xe1,0xd5,0x7a, + 0xac,0x96,0xe8,0x77,0xe3,0x20,0x5d,0xb7,0xa4,0x4a,0x6f,0x54,0x63,0xea,0xf9,0x6d,0xde,0x67,0xf9,0xfb,0x03,0xf6,0x4a,0x1c, + 0xd3,0xca,0xb8,0x85,0x5a,0x68,0x9b,0x1e,0x87,0x96,0x29,0x5f,0x6a,0xa2,0x35,0xc6,0xb4,0x8e,0xdc,0x09,0xd1,0xcc,0xf7,0x14, + 0x50,0x1b,0x6d,0x53,0x01,0x38,0xcc,0x69,0xdc,0xcd,0xaf,0x19,0xe2,0xca,0x3f,0x4d,0x6b,0xcb,0xfd,0x10,0xc9,0xda,0x82,0x8b, + 0x5e,0x27,0x61,0x51,0x19,0x75,0xd1,0x2a,0xca,0xb5,0xdd,0x18,0x67,0x8b,0x27,0xef,0x46,0xd6,0x44,0x80,0x27,0x65,0xf7,0x3d, + 0x10,0x67,0xb4,0x5b,0xa2,0xb5,0x6c,0x5e,0xa7,0x75,0x61,0x48,0x6b,0xc6,0xf3,0xbd,0xac,0x8b,0xca,0x74,0xd3,0x5a,0x34,0x66, + 0x59,0xa7,0xf0,0x56,0x2c,0x7e,0x1d,0xa1,0x0d,0x14,0x43,0x2f,0x3d,0xf3,0x4a,0x33,0x9d,0x21,0x5d,0x8c,0xad,0x31,0xad,0x59, + 0x23,0x96,0x95,0x42,0xf7,0x7f,0x7d,0x94,0x5d,0x94,0x8b,0x1d,0xb4,0xa8,0x9f,0xfa,0xf1,0xda,0x38,0xbe,0x14,0xef,0xaf,0x36, + 0xad,0x12,0x4f,0xe9,0x1a,0xc4,0xc8,0x5d,0x34,0xad,0x1b,0x33,0x5b,0x3d,0x97,0x1d,0xd7,0x1c,0xc6,0x3b,0xa7,0x6d,0x55,0x2a, + 0x84,0xfd,0x69,0x62,0x2e,0x95,0xe1,0xa4,0x91,0x49,0x09,0xa8,0xc0,0xcb,0x4d,0xd4,0x41,0x9b,0x29,0x04,0xfe,0xd4,0x49,0x6d, + 0x9e,0xd4,0x64,0x3c,0x51,0x48,0x2b,0x11,0x46,0x33,0x77,0xc9,0x7d,0x34,0x86,0x06,0xf5,0x98,0x3f,0x97,0xf1,0x8f,0x93,0xff, + 0xa0,0x35,0xf4,0x60,0x1b,0xc5,0xd0,0xf4,0x15,0x94,0x24,0xbf,0xf7,0x2d,0x91,0xc7,0x8d,0x72,0xcc,0x69,0xc5,0x0b,0xd7,0x76, + 0x52,0x1a,0xfa,0x10,0x8e,0xa3,0xb8,0xed,0x02,0xed,0xc7,0xdf,0x37,0xd0,0x10,0x85,0x21,0x4c,0xb9,0x51,0x61,0x6b,0xa5,0x7c, + 0xae,0x93,0x47,0xb9,0x9a,0x53,0x35,0x7d,0x17,0x1c,0x98,0xfa,0xcc,0x2e,0x19,0x89,0xc3,0x70,0x43,0x2b,0x90,0x17,0xb4,0xdd, + 0xaa,0x48,0x3b,0xcf,0x11,0x46,0x0c,0xbd,0xe0,0x5d,0x43,0x0e,0x4a,0xa2,0x4b,0xea,0x22,0x8f,0xb2,0x3f,0xbb,0x3d,0x87,0x9d, + 0xc7,0x5a,0xec,0xa7,0x5d,0x98,0xea,0xa6,0x8d,0x48,0x97,0x83,0xda,0x41,0x19,0x4c,0xfe,0x58,0xab,0x26,0x9d,0xe0,0x4a,0x5a, + 0x46,0x39,0x1c,0x84,0xf7,0xfa,0xd5,0x29,0x4e,0x51,0xb1,0x44,0xf1,0x64,0xaa,0x72,0xcd,0x1f,0xdd,0xb4,0x16,0xc1,0x9e,0x3a, + 0x9f,0x62,0x72,0x93,0x5b,0x9b,0x57,0xce,0x3d,0xf6,0x7a,0x7c,0x32,0x63,0x98,0xe2,0xf1,0xde,0x76,0x6e,0x41,0x33,0xb7,0x69, + 0x27,0x38,0x15,0xa3,0x74,0x67,0x32,0x8e,0x23,0x90,0xa6,0x8d,0xca,0xcf,0x87,0xc9,0x89,0xab,0xf7,0xd2,0x31,0xae,0x90,0xaf, + 0x6d,0xe3,0xf3,0x58,0x8e,0x7e,0x7a,0x7f,0x07,0xc5,0xb2,0x77,0x07,0x06,0x65,0x12,0xa4,0x58,0xdb,0x64,0x5a,0x59,0xb7,0x09, + 0x31,0xf5,0xb3,0xdf,0x91,0x8b,0x32,0xcc,0x30,0xc4,0xf3,0xad,0x1e,0xd7,0x75,0x42,0x74,0xd3,0xcc,0x0c,0x64,0xe3,0x4d,0x07, + 0x65,0xe3,0x99,0xa5,0xed,0x78,0xb0,0x1d,0x35,0xa8,0xf6,0x00,0x72,0x2a,0xc7,0xb4,0x1e,0x99,0x26,0xc4,0x28,0x6d,0xb4,0x45, + 0xa0,0x16,0x05,0x70,0xf2,0x83,0x1b,0xed,0x83,0xec,0x56,0xe1,0xf4,0x4e,0x3f,0x75,0xf3,0xf5,0x97,0xb1,0x46,0x8e,0x23,0x04, + 0x85,0x58,0xb2,0x0e,0x2e,0x7d,0x90,0xfd,0xe5,0x61,0xda,0x45,0x2f,0xe5,0x02,0x21,0xd4,0x8f,0x04,0xfe,0xf0,0x9c,0x8a,0x45, + 0x97,0x71,0x4f,0xa7,0xb6,0x85,0x66,0xc5,0xe0,0xb4,0x7e,0x1e,0xfe,0xea,0xb6,0x31,0x8a,0x43,0x9c,0xea,0x45,0x21,0x32,0x10, + 0x45,0x4f,0xd4,0xe3,0xc3,0x10,0x39,0xeb,0x80,0xde,0xae,0xa5,0xf1,0x51,0x24,0xd2,0x93,0x37,0x55,0xa2,0x87,0x7c,0x36,0xd0, + 0x6e,0xda,0x42,0x9f,0xd6,0xe0,0x83,0x1c,0xca,0xa4,0x7c,0x69,0x61,0x05,0x5a,0x29,0x82,0x0a,0x30,0x8c,0x63,0xf4,0x5b,0x19, + 0x22,0x91,0x82,0xa3,0x70,0x62,0x1f,0x4a,0xb5,0x66,0x2e,0x56,0x19,0x58,0x26,0xe3,0xb1,0x5a,0x5b,0xe8,0xf4,0xcd,0xc3,0x8d, + 0xcf,0xff,0xfa,0xb7,0x31,0x6e,0xa5,0x2c,0xde,0x00,0x37,0x3f,0x1d,0x2d,0xdd,0xf8,0xc7,0x4f,0x91,0x7c,0x01,0xd3,0xfe,0x73, + 0x86,0x8a,0xb9,0x40,0x4d,0xdf,0x44,0x45,0x7c,0x99,0x57,0xc8,0x43,0xc6,0x90,0x11,0x6e,0xef,0xa1,0xff,0xee,0xe3,0x51,0x7a, + 0xa1,0x9a,0x4b,0xe8,0xe6,0x05,0xad,0xd4,0x45,0xcd,0xd8,0x22,0xef,0x3b,0x84,0xb3,0x54,0xa3,0x06,0xa5,0x49,0x9f,0xac,0x93, + 0x2f,0xb5,0x70,0x12,0xd6,0xc9,0x10,0x0f,0xe7,0xfd,0xa9,0xcb,0x08,0xd3,0xd2,0xf5,0x1f,0x8e,0xd3,0x4e,0xec,0xd0,0xee,0x6d, + 0xb3,0x67,0xa8,0x6c,0xbf,0x0c,0xbf,0x8f,0xdc,0xb4,0x07,0x3e,0x37,0x9c,0x53,0x39,0x14,0x23,0x43,0xec,0x4d,0xda,0x08,0x0f, + 0xa9,0x11,0x04,0x20,0x49,0xde,0xf1,0x8f,0x12,0x38,0xe1,0xcf,0x52,0x2c,0xca,0x35,0x2d,0xf5,0x0f,0x21,0x3e,0xbb,0xdd,0x41, + 0x03,0x5c,0x8d,0x0e,0x56,0xa2,0xd7,0xe3,0xf3,0xfb,0x9b,0x10,0x29,0x70,0x52,0x0f,0x62,0xe4,0x53,0x81,0x98,0xb7,0x48,0x89, + 0xff,0x15,0x99,0xd6,0xa5,0x17,0x85,0xc8,0x60,0x4f,0x29,0x1f,0xc0,0x69,0xba,0x6e,0x2d,0xcd,0x52,0x22,0xbe,0xc4,0xb4,0x5e, + 0x7f,0x49,0x08,0x27,0x96,0x3c,0xe0,0x42,0x05,0x9e,0x9a,0xf1,0x95,0x26,0xee,0x68,0x33,0xad,0xe4,0x57,0x84,0x38,0xc0,0xfc, + 0xc0,0x3b,0xbd,0xf2,0xf1,0x6b,0xdb,0xf0,0xf5,0xa3,0x1e,0xf0,0x33,0x4d,0x6b,0xe2,0x52,0x21,0xe6,0xfd,0x3b,0x06,0x75,0xb8, + 0xf1,0x0d,0x29,0x54,0x96,0x69,0x2d,0xf4,0x78,0x9e,0x7e,0x71,0x6a,0x99,0x7c,0x73,0x90,0x75,0x31,0xbb,0xd0,0xb4,0xde,0x78, + 0x43,0x88,0x39,0xcf,0x3f,0xb9,0x07,0x6f,0xef,0xc0,0xec,0x9f,0x3b,0xe9,0x89,0x3e,0xca,0x91,0x52,0xfc,0xc3,0x6d,0x5a,0xe7, + 0xdf,0x16,0xe2,0xb6,0x2f,0x16,0x95,0xe0,0xf5,0x37,0xfe,0x0f,0x0d,0x55,0x05,0x5c,0x9b,0x49,0x16,0x9f,0xff,0x7b,0x33,0x5f, + 0xf2,0x25,0xb8,0xac,0xbb,0xbb,0x9e,0xac,0xfb,0x9e,0xaf,0xbb,0xbb,0xbb,0xeb,0xef,0x8a,0xb7,0x45,0xeb,0xb8,0x4b,0xa0,0x69, + 0x83,0x5f,0x29,0x0e,0xc5,0x9d,0x0a,0x52,0xc3,0xa1,0x50,0x2a,0x38,0x2d,0x4b,0x72,0x19,0xd7,0xe7,0xf2,0xb6,0x30,0xb4,0xd9, + 0x1d,0xe5,0x81,0x42,0x74,0xcb,0x15,0xf9,0xd5,0x1e,0x7a,0xb0,0x96,0xde,0x8b,0x97,0x27,0x64,0x18,0xfd,0x75,0x17,0x56,0x68, + 0x0e,0x0e,0xdc,0xf2,0x64,0x2a,0xde,0xf8,0xad,0x55,0x6b,0xa5,0x44,0x79,0x4e,0x35,0xe5,0xa3,0x1b,0x51,0xb4,0x16,0x07,0xf1, + 0xdb,0x0f,0x65,0x38,0xea,0x9c,0x3b,0xb9,0x98,0x5a,0xb1,0x19,0xdd,0xb4,0x42,0x81,0x78,0xb3,0x18,0x6b,0xc9,0x82,0xbb,0xca, + 0x90,0x8f,0x08,0x64,0xc3,0xfd,0x14,0xaa,0xc8,0x8a,0x2b,0x4b,0x91,0x8f,0x58,0xec,0x72,0xf6,0xbb,0xae,0xdc,0x88,0xaf,0xd6, + 0xab,0x2d,0x72,0xc0,0xbd,0x5c,0x75,0x9a,0x4f,0xab,0x09,0xe3,0x2f,0x56,0xf6,0xa3,0x31,0x95,0x4f,0xdb,0xa5,0x56,0xa0,0x76, + 0x62,0x84,0x5c,0xf6,0xb3,0x95,0xc6,0xa9,0x00,0x33,0xea,0xa8,0x9e,0xee,0x13,0x83,0x4c,0x19,0x8d,0x44,0xf7,0x87,0x5f,0x4d, + 0xe6,0x7a,0xe3,0x71,0x34,0x63,0x89,0x37,0x63,0x52,0x5d,0xf9,0xcd,0xff,0xf0,0x40,0x1a,0x7a,0xc8,0x8a,0x3b,0x9e,0xee,0xa7, + 0x0e,0xe7,0x71,0x8a,0xa1,0x4c,0xe5,0x51,0x2e,0xad,0x33,0xec,0xc2,0x97,0x41,0x14,0xca,0x99,0x1c,0x41,0x7f,0xce,0x56,0x9f, + 0x87,0xa3,0x93,0x6e,0x17,0x35,0xe8,0xc7,0x03,0xdd,0xda,0x94,0x9e,0x84,0x3b,0x7a,0x78,0x5a,0x1e,0xe0,0x0c,0x7a,0xe2,0xf2, + 0x04,0x14,0x63,0x4d,0x31,0xa5,0xc3,0xb3,0x19,0x9b,0xe8,0x24,0xf9,0x99,0x7c,0xd2,0xb4,0xe3,0x68,0xa1,0x8d,0xc6,0x14,0xcd, + 0xa2,0x15,0x39,0x61,0x8e,0xd2,0x66,0xf9,0xc4,0x46,0x94,0x51,0xa7,0x5b,0x3d,0x57,0x20,0x0f,0x62,0x0b,0x1a,0x60,0xc1,0x13, + 0xd3,0x08,0x54,0xd3,0xfc,0xa9,0xfe,0xd4,0x06,0xfc,0x58,0x87,0x8d,0xf4,0x82,0x14,0xcf,0x17,0xd9,0x1d,0xad,0xdf,0x09,0x91, + 0xca,0xde,0xcb,0xaa,0x01,0x07,0x28,0x1f,0x26,0xf1,0xdf,0x0a,0xbb,0xe3,0xb1,0xe7,0x85,0x88,0xd7,0x82,0xe9,0x00,0xee,0x9a, + 0xc4,0x32,0x02,0xe8,0xa5,0x34,0xbc,0xd8,0x8f,0x48,0x2e,0x41,0x1e,0x65,0xcb,0x4f,0x0a,0x68,0x45,0x4a,0x11,0x56,0x65,0x77, + 0xbc,0xf8,0x91,0x10,0xbd,0x70,0xfd,0xaa,0x05,0x4d,0x54,0x06,0x29,0x5e,0x77,0x9e,0x95,0x38,0xcf,0xf0,0x9d,0x05,0x49,0xbc, + 0x1d,0x39,0x24,0xc5,0xba,0x6a,0xbb,0x63,0xe8,0x2d,0x21,0xfe,0x7c,0xc1,0x06,0x5c,0xf1,0xca,0xbd,0x52,0xbc,0x53,0x63,0x77, + 0x9c,0xf7,0xb6,0x10,0x6b,0xbc,0x43,0xd1,0x00,0x3d,0x1f,0x52,0xfc,0xb3,0xd6,0xee,0xf8,0x97,0xf3,0xe8,0xa5,0x0b,0x9f,0x19, + 0xc5,0x76,0x34,0x42,0x8a,0xcf,0xf7,0xd8,0x1d,0x11,0xce,0xa3,0xdd,0x70,0x4d,0xe2,0x77,0x47,0xf0,0x9c,0x14,0x8f,0xd6,0xd9, + 0x1d,0xa3,0xce,0xa3,0xfb,0x9e,0xbf,0xc8,0xf7,0xa5,0xfb,0xa5,0xa0,0x7a,0xbb,0xe3,0xef,0xef,0x38,0x21,0xeb,0xef,0x3f,0x7d, + 0xf3,0xe3,0x4a,0x50,0x83,0xdd,0xf1,0x97,0x77,0x85,0x88,0xe0,0x25,0x6a,0x63,0x9b,0x2a,0xc7,0x87,0x67,0x10,0xcf,0x52,0xd4, + 0x3b,0x2f,0x22,0x3f,0x15,0xe2,0xb2,0x8d,0xd8,0x2c,0xc3,0x4d,0xf3,0x7c,0xc6,0xa8,0xc4,0xcf,0xe9,0x76,0x47,0xd0,0x0f,0x42, + 0x18,0x5f,0x9b,0xc3,0x1d,0xa5,0xb4,0x1f,0x4f,0xe4,0x40,0x0a,0xaf,0x2c,0xbb,0xc3,0xf8,0xa3,0x10,0xcd,0xf0,0x59,0xf3,0x9f, + 0x16,0x7a,0x4b,0x8a,0x33,0x16,0xbb,0xe3,0x26,0xe7,0xc9,0x24,0x9f,0x9b,0xc4,0x8f,0xfd,0xe7,0x46,0x29,0x16,0x9c,0x0c,0xac, + 0xfc,0xec,0xa4,0x76,0x8c,0x6f,0xdc,0x4f,0x41,0xd8,0x84,0xb7,0xc5,0xb7,0x9b,0xec,0x8e,0xc5,0x19,0x21,0x12,0xe4,0x11,0xca, + 0xd7,0xcb,0xe4,0x6d,0x1b,0x29,0x90,0x9f,0xba,0xa4,0x99,0x66,0x34,0xab,0xf1,0x0c,0x1f,0xc0,0x38,0xd2,0xb1,0x95,0x12,0x0d, + 0xdc,0x6f,0x4a,0xc7,0x04,0xed,0xc4,0xd5,0x53,0xf4,0x56,0x07,0x76,0x52,0x90,0x56,0x48,0xaf,0xd4,0x6b,0x69,0x7c,0x5a,0xb3, + 0xa9,0x7f,0x14,0xe8,0x6f,0xec,0x37,0xaf,0xf8,0x4e,0x52,0xbe,0x3c,0x45,0x93,0xd8,0xa1,0xc6,0x51,0x40,0x5e,0x9f,0x6c,0x45, + 0xa9,0x77,0x82,0x8c,0x34,0x5e,0x5e,0xeb,0x32,0xc6,0xa1,0xee,0xed,0x74,0xd4,0x5c,0xac,0xd2,0xf4,0x15,0x2d,0xee,0xa2,0x46, + 0x6d,0x9b,0x61,0x89,0x33,0x29,0x5e,0x0e,0xca,0x24,0xae,0x34,0xfe,0xb9,0x52,0xff,0x7a,0xd6,0xd4,0x88,0x26,0xbe,0x6c,0x1a, + 0x61,0x68,0x90,0xe7,0x9e,0xa6,0x54,0x1c,0xa6,0x55,0x8e,0xe5,0x53,0xc6,0xd3,0x14,0xc5,0x0d,0xa8,0xe7,0x2b,0xf7,0x19,0xd7, + 0x53,0x37,0x4f,0x99,0xac,0xfa,0xf9,0xfd,0xc8,0xe5,0x46,0xec,0x57,0xd7,0x76,0xb9,0xac,0x68,0x36,0x1e,0x52,0xb9,0x5a,0x94, + 0x9c,0x52,0xd3,0x34,0xad,0x6e,0x8d,0x91,0x87,0xd0,0x65,0x28,0xd4,0x0e,0xa9,0x06,0x75,0x47,0x0b,0xdb,0xa9,0x92,0x37,0xf1, + 0xa7,0x8f,0x44,0xa0,0x92,0x73,0xb1,0x85,0xa2,0xe4,0xab,0xa7,0xc9,0x8e,0x61,0x2c,0xf0,0x0e,0xb9,0xc3,0xd8,0x66,0x88,0xc7, + 0xfb,0xf7,0x4f,0xd1,0x02,0x35,0xd0,0x4d,0x9b,0x78,0x80,0x16,0x69,0x33,0xb7,0xe9,0x3f,0xd7,0x52,0x39,0x2e,0xf2,0xa7,0x26, + 0x24,0x21,0x1c,0xc7,0xb9,0x16,0x95,0xce,0x39,0x95,0xcb,0xd1,0xa8,0x0a,0xb4,0xed,0xde,0x59,0x6a,0xd9,0x94,0x27,0xeb,0xf4, + 0x29,0x95,0xa5,0xc5,0xa8,0x72,0x8a,0xe1,0x2d,0xe8,0x93,0x2f,0xec,0x35,0xad,0xc8,0x00,0x7d,0xb3,0x0c,0x95,0x5b,0xb5,0x52, + 0x9e,0x73,0x2b,0xd0,0x0c,0x22,0xc3,0x69,0x03,0xe6,0x0e,0x21,0xfa,0xd5,0x23,0x87,0xdc,0x12,0xa4,0x1f,0x6f,0xa0,0x48,0xf3, + 0x75,0xe3,0xaa,0x58,0x3e,0x32,0x40,0x52,0xbc,0xe7,0xd4,0xf4,0xb1,0x63,0x42,0x6c,0x43,0x0b,0xfe,0xf2,0x5c,0x2b,0x7e,0x50, + 0xe2,0xa1,0x46,0xbb,0xe3,0xb7,0x49,0x21,0xda,0xe1,0x9a,0xc5,0xc3,0xf8,0xf6,0xd6,0x66,0x4a,0x87,0x14,0x95,0xce,0xe3,0xbb, + 0xba,0x84,0x08,0xc4,0xad,0x61,0xf0,0xc3,0x06,0x7a,0xea,0x6d,0x91,0x10,0x65,0x77,0xbc,0x70,0x1e,0xc4,0xa8,0x81,0xfc,0x70, + 0xf3,0xe5,0xdd,0x28,0x31,0x1f,0x92,0xd9,0xb4,0x55,0x5e,0x9f,0x4f,0xb1,0x58,0x33,0xac,0x17,0xf2,0xb8,0x9c,0x60,0xb9,0x13, + 0xe5,0xf2,0x96,0x50,0xb6,0x50,0xbb,0x7c,0x25,0xde,0xd0,0x86,0x55,0x0a,0x26,0x9b,0xd1,0x1f,0x89,0x6e,0x63,0xca,0x4f,0x37, + 0xa5,0x68,0xf1,0x14,0x6e,0x1e,0xc5,0x87,0xee,0x35,0xf2,0x08,0x42,0x5d,0xbc,0x17,0xf9,0x87,0x68,0x79,0x77,0x32,0xd7,0x50, + 0x2b,0x7d,0x38,0x46,0x0f,0xf6,0x19,0x26,0x68,0x8b,0xac,0xe1,0x9f,0x7e,0x79,0x3c,0x5f,0x85,0xab,0x64,0x2e,0x57,0xd5,0x7c, + 0x51,0x24,0x15,0x70,0xa8,0x16,0xa2,0x0d,0x72,0x25,0x9f,0x73,0xda,0x3d,0xcc,0xb0,0x9d,0x7b,0x95,0xb0,0x50,0x3d,0x7d,0x37, + 0xc1,0xb5,0x18,0xc0,0x07,0x8f,0xa4,0xab,0x69,0x9c,0xa2,0x59,0x53,0xb1,0x16,0x43,0x23,0x54,0xee,0x32,0x2c,0x1b,0xe8,0x0f, + 0x79,0x56,0x4b,0x91,0xe5,0x3c,0xa5,0x9e,0xad,0xe3,0x48,0xee,0xc0,0x51,0x1d,0x47,0x38,0x12,0xb7,0xf9,0xa1,0x83,0x3e,0xff, + 0x7c,0x10,0xb1,0xc6,0x72,0xba,0x7b,0x59,0x5a,0xd1,0x85,0xaf,0xff,0xc0,0x2f,0x21,0xe8,0x30,0x3c,0x75,0xd6,0xf4,0x64,0x82, + 0x29,0x99,0x6c,0x1e,0x9e,0xc7,0xf8,0x9d,0x39,0x1c,0x42,0xb0,0xfc,0xf7,0x59,0xcd,0x82,0x0c,0xd4,0x50,0xb6,0xfc,0xcb,0x1f, + 0xc6,0x42,0xbc,0x1b,0x88,0x49,0xbd,0x97,0x03,0xf4,0x47,0x03,0xe8,0x00,0xee,0xb5,0x62,0x46,0x0f,0xe3,0x76,0xf9,0xe6,0x4e, + 0xf5,0xd3,0x36,0xd5,0x2f,0x33,0xf8,0xdd,0x42,0x1c,0xa1,0x27,0x8b,0x11,0xe0,0x72,0x44,0x73,0x8d,0xa6,0x76,0xaa,0x90,0x9b, + 0x0d,0x15,0x48,0x54,0xbd,0x3c,0xe3,0x39,0xa0,0x4e,0xd1,0x15,0xb9,0xda,0x76,0xf5,0xb6,0x18,0xde,0x65,0x77,0xe4,0x48,0x88, + 0x30,0xf5,0xe9,0x3f,0x9f,0xcd,0xc3,0x65,0x1b,0x65,0x38,0x4d,0xc8,0xaf,0xa3,0xe5,0x1c,0xaa,0xf1,0x78,0x9e,0xfc,0x3d,0xc4, + 0xb8,0xc4,0x71,0x5a,0x94,0x76,0xd7,0x47,0x11,0xb8,0xb5,0x53,0x4b,0xc0,0x0c,0x0d,0xc1,0x4a,0xf7,0x58,0x0c,0x53,0x28,0x54, + 0xd9,0xbc,0x87,0x1e,0x48,0xf6,0x7c,0xe5,0x89,0x7d,0xf8,0xfd,0x9b,0x65,0x63,0x04,0x15,0xd1,0x3e,0x58,0x50,0x85,0x78,0x8f, + 0x30,0x7d,0x42,0xb5,0x62,0xbd,0xd1,0x27,0xcc,0x65,0x8b,0xea,0x77,0x0f,0x90,0xc1,0xcc,0x9f,0xfb,0xa3,0xca,0xb3,0x16,0x35, + 0xda,0x95,0x41,0xda,0x71,0xdc,0x1a,0x8e,0x0c,0x5c,0xd3,0xe0,0xb1,0x95,0xa6,0xdd,0x06,0xb4,0xa2,0x4b,0xac,0x84,0x30,0x5a, + 0xe2,0x43,0x3c,0xe3,0x12,0x6c,0x8a,0x32,0xaf,0xd2,0xaa,0x9a,0x47,0x28,0x52,0x29,0x59,0x46,0xc2,0xc2,0x9e,0xc1,0xbc,0x83, + 0xda,0xf9,0xa9,0x79,0x3a,0x45,0xa7,0xe4,0x4d,0xff,0xa3,0x23,0x14,0x4f,0x23,0xb0,0x72,0x20,0xea,0xf9,0x5f,0xb9,0x9c,0x8c, + 0x42,0xcf,0x41,0xfa,0x2a,0x00,0x8d,0xea,0xd1,0xb5,0x9e,0xc3,0xbc,0x59,0x4e,0xa3,0x01,0xfb,0x10,0x8c,0x46,0x74,0x21,0x1a, + 0x75,0xf2,0xd6,0x7e,0xf4,0x20,0xdc,0xdb,0xc1,0x13,0x72,0x23,0x1d,0xd5,0x93,0xc8,0xcf,0xb8,0x4a,0x5d,0x6a,0x4d,0x88,0xdc, + 0x4a,0xe7,0x0d,0x70,0x22,0x76,0xa1,0xc2,0xd4,0x49,0x1b,0xf5,0x1f,0x23,0xd4,0x4b,0x5f,0x1f,0x40,0xa9,0x0a,0xc6,0x75,0x9f, + 0x44,0xe1,0x83,0x30,0xf9,0x7a,0xbe,0x7c,0x2a,0x9f,0xdb,0x69,0x90,0x2d,0x9c,0xae,0xb6,0x50,0xa6,0xfa,0xb1,0x47,0x5a,0xa9, + 0x8a,0xfc,0xf1,0xfe,0x37,0xdf,0x3c,0x98,0x23,0xef,0x8f,0xc3,0x7a,0xfc,0xf4,0xd7,0x19,0xf6,0xba,0x4e,0xfc,0xc3,0x19,0xbc, + 0x4f,0xd8,0x85,0x68,0xd0,0x42,0xb9,0x5a,0x1b,0xe0,0x0c,0xdd,0x8a,0x3a,0xd9,0x4b,0x76,0xcf,0x25,0x39,0xad,0x8e,0x68,0x99, + 0xbc,0x9e,0x3b,0x8c,0x3f,0x9f,0x96,0xaf,0x84,0xf0,0x8f,0xeb,0x64,0x19,0xd5,0xe3,0x7e,0x9b,0x56,0x8f,0x67,0x9e,0xea,0x34, + 0xf7,0xca,0x09,0x9f,0x29,0xce,0x47,0x09,0x9f,0x30,0x56,0xe3,0xfe,0x0d,0x74,0x84,0x2f,0xce,0x95,0x56,0x24,0xd3,0x24,0xaf, + 0xd5,0xeb,0x79,0xbd,0xca,0x91,0xa7,0xcc,0x67,0xa8,0x1d,0xd7,0xa4,0xca,0x61,0x63,0xbb,0xef,0x08,0xfe,0xb9,0x03,0x01,0xb2, + 0x8d,0xbb,0x4c,0x3d,0x3c,0x87,0x83,0x5a,0x8f,0xdc,0xe0,0x1e,0x2a,0xf7,0xcb,0x10,0x69,0xc3,0xa2,0xea,0xa5,0x48,0x2c,0x21, + 0x82,0x86,0xe0,0xa7,0x66,0xd8,0x20,0xca,0x77,0xda,0x1d,0x31,0x46,0x88,0x6e,0xd9,0x82,0x60,0x44,0xca,0x20,0x99,0xc0,0x05, + 0x72,0x01,0x77,0xb4,0xca,0x28,0xce,0x27,0x83,0xb8,0xbf,0xd8,0xee,0xb8,0x56,0x40,0x34,0x6b,0x53,0xf4,0x59,0x88,0xcc,0x62, + 0xf3,0x34,0x59,0xa9,0x88,0x36,0x73,0x14,0xd2,0xe1,0x2a,0x66,0x4b,0xec,0x0e,0x05,0x88,0x3e,0x43,0x3a,0xf6,0xc0,0x82,0x4c, + 0x19,0x8e,0x49,0x7a,0x70,0x07,0x6c,0x18,0xc0,0x43,0x03,0xf2,0xd2,0xdb,0x53,0x68,0x42,0x66,0xd3,0xcb,0x21,0xe8,0xd3,0x9b, + 0xe9,0xd7,0x6e,0x32,0x8b,0x3c,0x67,0xea,0x99,0x5a,0x10,0xe2,0xce,0x2a,0x2e,0x33,0x46,0x28,0x87,0xe6,0xcf,0xdd,0xea,0xae, + 0x40,0x15,0x8f,0x4c,0x6e,0x73,0x86,0xa6,0x10,0x43,0x91,0x76,0xff,0x3a,0x19,0x89,0x20,0xb3,0x97,0x12,0x4f,0x94,0xd9,0x1d, + 0xc7,0x09,0xc2,0x8f,0xef,0xf4,0xa7,0xef,0x46,0x28,0x94,0xc6,0xf1,0x8e,0x8b,0xd8,0xdd,0x6c,0x77,0x24,0x78,0x40,0x04,0x21, + 0x1a,0x4b,0x94,0x8a,0x23,0x06,0x2d,0x1c,0x4b,0x18,0x72,0x19,0xa7,0x75,0xf8,0x30,0x54,0xaa,0xe7,0x7f,0xcd,0x60,0x63,0x01, + 0xfc,0x31,0x6d,0xfa,0xf0,0x2d,0x91,0xe3,0x8c,0x17,0x5f,0xdf,0x04,0xd1,0x64,0x90,0xa1,0x7a,0x32,0x0d,0xc9,0x40,0x55,0x62, + 0xec,0xa3,0xa2,0x0b,0x7e,0x9d,0x37,0xcf,0xd0,0x4e,0xd7,0x8b,0x2e,0xff,0x2c,0xe3,0xf2,0x42,0x9a,0xc3,0x10,0x36,0xba,0xdd, + 0x1f,0xe1,0xf9,0xfb,0x49,0x53,0x32,0xc5,0x19,0x6e,0x8e,0x73,0x0f,0x94,0x37,0xd4,0x60,0xbd,0xb6,0x9e,0x0e,0x2b,0xf4,0xa8, + 0x43,0x08,0x40,0x0f,0x25,0xf1,0x23,0xcb,0x5a,0x3a,0xd9,0x0c,0x7e,0xb0,0x53,0x31,0x8a,0x64,0x28,0x2d,0x6a,0xab,0xa8,0x74, + 0xad,0xc2,0x8d,0xe1,0x94,0xe7,0xbb,0x8c,0x5a,0x53,0x1b,0x9d,0x34,0xad,0xc5,0xa2,0x47,0x0a,0xa6,0x5c,0xb7,0x22,0x46,0x0e, + 0xa1,0xc3,0x74,0xe1,0x36,0x0e,0x46,0x2c,0x65,0x22,0x4f,0xbf,0xdb,0x46,0x2b,0xd4,0xed,0xba,0x87,0x4f,0xf2,0x6b,0x36,0xc3, + 0x23,0x91,0xb2,0x1d,0x15,0x46,0x0b,0x2c,0x5a,0x28,0x22,0xf9,0x00,0xfc,0xc9,0xca,0x13,0x6e,0x17,0x6f,0x36,0x97,0xa1,0xc2, + 0xbd,0x14,0xbd,0xb4,0xc8,0xf5,0x5a,0x36,0xa6,0x28,0x8a,0x56,0x69,0x8c,0x56,0x5c,0xe3,0xb1,0xa0,0x37,0x20,0x0a,0x85,0x98, + 0x94,0xd9,0x38,0xa4,0x5a,0x51,0xec,0xf6,0xfd,0x13,0xf1,0x98,0x3c,0xff,0x92,0x08,0x8a,0x41,0x11,0xdb,0x38,0x98,0xdf,0x5c, + 0x92,0xf1,0x94,0x8f,0x26,0x2c,0xf1,0x2b,0x86,0x03,0x38,0xa0,0x32,0xb1,0xc7,0xfd,0xfb,0x32,0xad,0x0d,0x36,0x74,0x60,0x95, + 0x3b,0xa9,0x4c,0x73,0xd9,0xad,0x6d,0xa2,0x11,0x6c,0x53,0xd1,0xea,0x20,0x65,0xa9,0xbd,0x6a,0x02,0x67,0x69,0xab,0xdb,0xa2, + 0xe1,0x8c,0x31,0x15,0x1b,0xcf,0xf7,0x5c,0x31,0x57,0x72,0xa8,0x56,0x07,0x87,0xbc,0xb8,0xc2,0xed,0x34,0x5d,0xf7,0x6e,0xb5, + 0x7c,0x6a,0x99,0x1e,0x1b,0x52,0x25,0xb8,0x20,0x0b,0x31,0x6e,0xe5,0xc8,0x3a,0xaf,0x90,0xde,0x16,0x97,0x38,0xd3,0x71,0xf0, + 0x0d,0x10,0x0e,0xf7,0x48,0x84,0x23,0x49,0x0d,0xba,0x4d,0x71,0xca,0x85,0xc3,0x68,0xf5,0xac,0xd4,0x76,0xd3,0x49,0x64,0xa8, + 0x29,0x34,0x98,0xbf,0x9e,0xd5,0x33,0x51,0xea,0xb2,0x4b,0xa5,0xb9,0x36,0x62,0xde,0xfd,0xd3,0x71,0xf7,0x63,0xda,0x38,0x12, + 0xa8,0xca,0x6b,0xab,0x21,0xd8,0x7c,0xcf,0x09,0xf5,0x5b,0xaf,0xf6,0x63,0xb0,0x1c,0x56,0x2d,0x6e,0x31,0x72,0x83,0x76,0x6d, + 0x84,0xda,0x86,0x4e,0xe5,0x6b,0x47,0xb5,0xac,0x77,0xd9,0xa3,0x9d,0xd2,0xef,0xde,0x2f,0xc3,0x65,0x8d,0x7b,0x2e,0xaf,0xea, + 0xef,0xff,0x3a,0xc8,0x3d,0xa6,0x16,0x15,0x73,0xd1,0x16,0x0a,0xbd,0x30,0x9e,0x0a,0xe4,0x16,0x44,0xba,0x5e,0x97,0xa6,0x0d, + 0x62,0xc8,0x14,0x85,0xc9,0x4b,0x4a,0x71,0xd7,0x3c,0xba,0x5c,0xfc,0xb1,0xfb,0x82,0x3a,0x7d,0xce,0xfc,0x7d,0x98,0xb6,0x88, + 0x78,0x94,0x6a,0x7e,0xfc,0xab,0xed,0xba,0x42,0x1c,0xbb,0xb4,0xc2,0xb8,0xec,0x95,0x8c,0x6a,0xf5,0xdf,0xe3,0xae,0xb7,0xcd, + 0x5c,0x32,0xad,0xdb,0x2e,0x9d,0x47,0xdd,0x75,0x59,0x6a,0xfc,0xdc,0x34,0x9c,0xb9,0xc8,0x86,0x83,0x5a,0x1e,0xcf,0xfb,0x86, + 0xcb,0x55,0x8f,0x7a,0x6c,0xf6,0xce,0xe1,0x31,0xa3,0x45,0x96,0x79,0x2f,0x50,0xaa,0x6f,0x19,0xd6,0x1a,0xaf,0xd8,0x61,0x0a, + 0xe2,0x62,0xaf,0xef,0xc6,0x5c,0x06,0xa8,0xcc,0xed,0xf2,0x7d,0xbe,0xd9,0x28,0xc1,0x22,0xf6,0x7b,0xad,0x93,0x2d,0x97,0x54, + 0xd3,0xd2,0x35,0x43,0x88,0x3d,0xaf,0x5f,0xad,0xa8,0x0b,0xc3,0x7c,0x0f,0x53,0x37,0x8e,0x22,0xe8,0x86,0x4a,0xf8,0x9d,0x37, + 0xcf,0x65,0x57,0xc5,0x72,0xef,0x55,0xef,0xac,0x55,0x71,0x54,0x67,0x8e,0x43,0xaa,0x21,0x09,0x25,0x1e,0x7d,0x14,0xe0,0x71, + 0xc7,0x88,0xeb,0x93,0xa9,0x97,0x54,0xd1,0x66,0xfa,0xb1,0xc4,0xdc,0x43,0x8d,0x2e,0x37,0x14,0x9a,0x72,0xd0,0xa8,0x86,0x11, + 0x64,0x4e,0xa2,0x82,0xf3,0x8a,0xd0,0xe6,0x33,0x4e,0xff,0x07,0x0d,0x53,0x75,0x40,0x15,0x59,0xd4,0x9f,0xdf,0x39,0xf7,0xce, + 0xcc,0xe3,0x81,0x60,0x6e,0x77,0x77,0x77,0x77,0x77,0xb7,0xeb,0xd7,0xdb,0xdd,0x81,0xb0,0x84,0xb4,0x94,0xc0,0x12,0x0f,0x30, + 0x68,0x10,0xa5,0x4b,0x69,0x04,0xbb,0x68,0xe9,0x6e,0xb0,0x75,0xee,0xf7,0xfe,0x3e,0xf9,0xab,0x1b,0x35,0xd7,0xed,0x96,0xda, + 0xbd,0x18,0xda,0x88,0xcd,0x87,0xc7,0xe8,0x30,0x12,0xf0,0xab,0x8f,0x4b,0x1a,0x6f,0xb6,0xef,0x47,0xae,0x5b,0x2b,0xad,0xb1, + 0x7f,0xd0,0x74,0x6e,0x1a,0x15,0xc9,0x08,0x94,0x99,0xad,0xe8,0xa7,0x38,0xde,0x85,0x21,0x0c,0x8a,0x08,0xd4,0xe8,0xd7,0xff, + 0x94,0x8d,0x83,0xa6,0xbd,0x88,0x43,0xd1,0xef,0x9e,0x26,0xaa,0x6c,0x85,0xe6,0x8c,0xfd,0x92,0x8d,0x6e,0xcd,0xf0,0xb2,0xfb, + 0xa3,0xc8,0x1e,0xc0,0x93,0x4b,0x12,0x71,0xd6,0x1e,0xc3,0x83,0x14,0x6e,0xf4,0xc8,0x5a,0x8e,0xe0,0x70,0xc8,0x46,0x9a,0x31, + 0xc2,0xf4,0x00,0xea,0x11,0x61,0xe6,0x2e,0x91,0xef,0xee,0x29,0x6b,0x97,0xf9,0x93,0x63,0xd9,0x47,0x21,0xd4,0x0b,0x6f,0x8f, + 0xd3,0xb2,0xc0,0xa5,0xd9,0xcc,0x97,0x1d,0x62,0x1f,0xfa,0xcd,0x43,0x4b,0x6a,0xcc,0xd3,0xf2,0x34,0xaa,0x96,0xe4,0xb2,0xa1, + 0xfd,0x9d,0x65,0xa9,0x5e,0xe7,0xb7,0xad,0xc2,0xed,0xab,0x2e,0x34,0x1b,0x2e,0xd9,0xc2,0x81,0x3c,0xf6,0xc5,0x3f,0xfc,0xc4, + 0x4a,0x2d,0x7a,0xb9,0x52,0x2b,0xfa,0x2d,0xf5,0x59,0x09,0x9a,0x68,0x98,0x27,0x75,0x4f,0x24,0xc8,0x36,0xcc,0x92,0x7b,0x81, + 0x0c,0x27,0x3f,0xdb,0xdb,0x43,0xb2,0x4a,0xee,0xe1,0xc7,0x03,0x64,0x28,0x6a,0x45,0x1b,0xed,0x17,0x9b,0x79,0xad,0xf1,0x78, + 0x93,0x08,0xa5,0x10,0xd3,0xc8,0x10,0x99,0x98,0xa5,0x4c,0xe4,0xca,0xf3,0x93,0x44,0x05,0x2c,0xe3,0xa5,0x46,0x33,0x0f,0x0e, + 0x78,0x63,0x50,0x1c,0xa4,0x51,0xdb,0x33,0x1b,0x6c,0xe1,0x38,0x21,0x93,0xe4,0x5a,0x64,0xe2,0xb8,0xbe,0x19,0x49,0x32,0x87, + 0x33,0x8d,0xcf,0xae,0xd9,0xce,0x15,0xf4,0xf0,0xb4,0x79,0x1a,0x31,0xb6,0x87,0x0e,0x60,0x12,0x9b,0x3d,0xa2,0xc8,0xe1,0xfe, + 0xe3,0x8f,0x75,0x38,0x7b,0x73,0xbf,0x39,0x7e,0x53,0xaa,0x8c,0x58,0xe4,0x23,0x47,0xcf,0x4d,0x40,0xc1,0x22,0x4f,0x04,0x2e, + 0x71,0x3f,0xbc,0x7c,0x04,0xde,0x17,0x7f,0x7a,0xe3,0x3a,0xce,0x59,0x34,0xab,0x8f,0x19,0x47,0xb1,0x4f,0xae,0xc3,0xae,0x6b, + 0x86,0x71,0xd3,0x6e,0xd4,0xd8,0xd2,0x45,0x9b,0x19,0x41,0xde,0xae,0x6b,0x50,0xf6,0xfe,0x01,0x7d,0xd4,0xd8,0x82,0x32,0xc3, + 0x18,0x79,0x34,0xd6,0x76,0x04,0xdb,0xd9,0x4f,0x66,0x62,0xf2,0xaa,0x58,0xac,0xbb,0xb2,0x50,0xdf,0xb0,0xa4,0x55,0xdf,0x63, + 0xd6,0xe8,0x27,0xc5,0xc7,0x35,0xf4,0x69,0x37,0x12,0x38,0x51,0xd6,0x91,0x75,0x6e,0xa0,0xf4,0x72,0x4d,0xd5,0x77,0xc8,0xe5, + 0x1f,0x7a,0xf2,0x7a,0xf9,0x99,0xff,0x7d,0xdf,0xe7,0x8b,0x5f,0x17,0xe8,0x08,0xff,0x6b,0xa6,0x8b,0xe9,0xc5,0xfb,0xd1,0x7c, + 0xf1,0xf9,0x31,0xe7,0xec,0xa7,0x7d,0x17,0x84,0x61,0xc1,0xa5,0x4a,0xcc,0xd9,0x4a,0x8c,0x38,0x71,0xd7,0x0e,0xb7,0x10,0xc4, + 0x2d,0x6a,0x42,0xe1,0x25,0x07,0x44,0xa4,0x74,0xf3,0x32,0x76,0xf2,0x46,0x63,0x2f,0xe2,0x6d,0x6f,0x39,0x6c,0xcf,0x9f,0xd1, + 0x6b,0x28,0xf2,0xda,0x28,0xb9,0x48,0x5b,0xde,0x63,0xa9,0xe5,0x13,0x96,0x2a,0xa5,0x5c,0x24,0xb8,0xac,0xe5,0xc1,0x8b,0x93, + 0x78,0x94,0xdf,0x2c,0x40,0x3d,0x82,0xa8,0x1a,0x8e,0x25,0x73,0xf0,0x14,0x53,0xd4,0x2a,0x23,0xf8,0x14,0xe5,0x71,0xb9,0x48, + 0x40,0x1c,0x5a,0x10,0x2d,0x53,0xe1,0xa6,0x85,0x74,0x59,0xea,0xa7,0x3e,0x4b,0xcd,0x8b,0x5e,0xea,0x14,0x27,0x29,0x99,0x37, + 0x50,0xc7,0xb2,0x2c,0xe1,0xc3,0x53,0x14,0xc4,0xe5,0x08,0xd3,0xff,0xaf,0x85,0x7f,0x0a,0x36,0x0e,0x51,0xad,0xfc,0x29,0xc5, + 0xa3,0x0e,0x57,0x0c,0xd2,0x53,0xda,0x47,0x53,0x96,0x2a,0x9b,0xb5,0xd4,0x3d,0xf3,0x68,0xa1,0x77,0xe3,0xf8,0xf3,0x7a,0x11, + 0x28,0xe6,0x3c,0x66,0x97,0x56,0x22,0xd0,0xbd,0x43,0x24,0xc9,0x32,0x5b,0xac,0xf8,0xf9,0x20,0xc6,0x97,0x79,0xd3,0x71,0xf9, + 0xdf,0x0d,0x2b,0xbe,0xed,0x77,0x29,0xe7,0x48,0x76,0x50,0x3b,0xdf,0x9f,0x72,0x41,0x01,0x4e,0xe9,0x6f,0x97,0x73,0x25,0x82, + 0xa5,0x17,0x8e,0xb8,0xcd,0xa2,0xc2,0xf0,0xa5,0xad,0x6e,0x13,0xc8,0x60,0x4f,0xaa,0x73,0xcf,0xc0,0x5a,0xf3,0x0c,0x25,0xd8, + 0x6a,0x44,0x92,0x5b,0x38,0xba,0xb9,0x8d,0xa2,0x8c,0x4d,0xd4,0xab,0x0f,0xa0,0x49,0xba,0x4f,0x9a,0x0b,0x74,0xe5,0x3e,0xce, + 0x33,0x5a,0x90,0x63,0x54,0xe0,0xb1,0x31,0xea,0xe4,0x48,0xf8,0xdb,0xfd,0xb8,0x1e,0xff,0xdd,0xc6,0xbe,0x94,0x48,0x61,0x48, + 0x73,0xfb,0x73,0xab,0xfe,0x59,0x82,0x6b,0x1a,0xad,0xc6,0x2f,0xe5,0xf2,0x8b,0x4a,0xf7,0x50,0xc4,0x99,0xdb,0xa8,0xdd,0xf5, + 0x65,0xcb,0x18,0x26,0xfb,0x02,0x27,0x7b,0x6c,0x45,0xb2,0x38,0x03,0x2f,0x3a,0x86,0x52,0x7b,0x0f,0x05,0xd9,0x9f,0x0b,0xb4, + 0x77,0x72,0xa8,0x7e,0x7d,0xb2,0xfe,0x6d,0x95,0x2d,0x9e,0x32,0x29,0x85,0xc2,0xa8,0xc5,0x48,0x95,0xc5,0xf4,0x6d,0x1e,0xc5, + 0x89,0x4e,0x6a,0x5d,0x91,0x47,0x33,0x62,0x3f,0x7d,0xd1,0xcc,0xba,0xf6,0xd9,0x11,0x4b,0x7d,0xdf,0x6b,0xa9,0x2a,0x5a,0x5c, + 0x85,0x7c,0xc4,0x18,0x7d,0xe4,0x4f,0xb7,0x24,0xc9,0xbd,0x2c,0xb5,0xd9,0x61,0x4b,0xf9,0x4d,0x5a,0x2a,0x4d,0x3e,0xe6,0xc7, + 0xb1,0x14,0x48,0x72,0x69,0x1f,0x19,0xda,0xf2,0x0e,0x4b,0x39,0xa6,0x2d,0xb5,0xc3,0x2c,0xe3,0x02,0xbd,0x89,0x3b,0xdc,0x36, + 0x22,0x16,0x3f,0x1c,0x43,0x31,0x4d,0xb8,0x6c,0x75,0x36,0xec,0x1e,0xb2,0x54,0xa5,0xb3,0x61,0x33,0xbf,0x71,0xd6,0xac,0xc4, + 0x30,0x8d,0xa0,0x11,0xdb,0x10,0x6f,0xfe,0xb8,0x55,0xfe,0xcb,0xa6,0xd6,0xde,0x66,0x29,0xf3,0x7e,0xa5,0xee,0x29,0x42,0x32, + 0x3c,0xbc,0xd1,0x89,0x55,0xed,0x34,0x27,0xee,0xeb,0xa5,0x6c,0x2c,0xdd,0x00,0x43,0xdb,0xdb,0x6e,0x29,0xff,0x07,0x94,0xf2, + 0xe1,0x24,0x04,0xf3,0xe3,0x0b,0x88,0x96,0xbe,0x46,0x0d,0x9e,0xcf,0x46,0x2e,0xd7,0xc1,0x45,0xdb,0xde,0x69,0xa9,0x2d,0xf7, + 0x28,0xf5,0xeb,0x24,0xba,0x70,0xff,0x3c,0x7c,0xe0,0xcd,0xcf,0xf6,0x73,0x1d,0x87,0xd0,0x56,0x39,0x80,0x97,0x5a,0xf5,0x6e, + 0x7c,0x16,0xe8,0x6c,0x2c,0x71,0xbe,0xfa,0xfa,0xdd,0x4a,0xbd,0xed,0xc3,0x43,0xbc,0x8e,0x4a,0x68,0x5e,0x94,0x91,0xc7,0x49, + 0xae,0x35,0xaa,0xe1,0x85,0x52,0x5c,0xe0,0x92,0x87,0x1c,0x5c,0x6b,0xd3,0xbe,0xea,0xb2,0xd4,0xd3,0xb7,0x29,0x55,0x6c,0xdf, + 0x44,0x21,0x66,0x91,0x38,0xa2,0x7f,0x7c,0x58,0xac,0xe7,0x0d,0xfa,0xc5,0xf3,0x7a,0x9c,0x8c,0xa1,0x1b,0x16,0x28,0x9b,0xa4, + 0xb6,0xaa,0xdb,0x52,0x57,0xdd,0xa5,0xd4,0x1a,0x7e,0x3c,0x94,0x5a,0x29,0x4b,0x26,0xd3,0xe2,0x9f,0x97,0x6b,0x57,0xf5,0x5b, + 0x6a,0xc5,0x2d,0x4a,0xbd,0x5e,0x05,0x87,0xbe,0x34,0x43,0x14,0xf0,0x3a,0x5e,0xc3,0xff,0x1a,0x47,0x91,0x8b,0xdf,0x7c,0x39, + 0x9c,0x37,0x88,0x47,0xdf,0x68,0x22,0x6f,0x3a,0xb7,0x0c,0x6f,0x2e,0xce,0xe1,0x12,0x72,0x3b,0x48,0x2d,0x14,0xc5,0xb7,0x96, + 0xd3,0x14,0x7a,0xf8,0xf2,0x62,0xd9,0x8c,0xf7,0x27,0xe0,0x4b,0xb9,0x70,0xd5,0x2e,0x1f,0xb5,0xd4,0xf4,0x8d,0x4a,0xf5,0xc8, + 0x04,0x5c,0x1e,0x4c,0x11,0x74,0x16,0x11,0x32,0x91,0xaa,0x04,0x1d,0xa7,0x60,0xdc,0x54,0x8e,0x0e,0xae,0x24,0x4f,0xb4,0x23, + 0x8b,0xbe,0x28,0xb7,0x6d,0x22,0x57,0x2d,0x6f,0xcc,0x52,0x59,0xd7,0x29,0x75,0x8c,0x1a,0xe0,0xab,0xff,0x34,0x83,0x58,0xee, + 0xa7,0x3f,0x67,0x51,0x89,0x6c,0x79,0x6d,0xb0,0xd8,0x47,0xf3,0xf4,0xda,0x27,0xef,0xff,0xf5,0xc5,0x19,0xf9,0xd8,0x4a,0x6d, + 0xbf,0x93,0xdc,0xce,0xe7,0x94,0x0a,0xc0,0x08,0x0e,0x9b,0x47,0x69,0x2b,0x35,0xd0,0x3b,0xa1,0xce,0x91,0x30,0x04,0xa3,0x9c, + 0x56,0x55,0xa2,0xd4,0xfe,0x8f,0x91,0x4d,0xc5,0xe4,0xe1,0x45,0xc5,0xb6,0x27,0xfb,0x44,0x24,0x62,0x90,0x8f,0xd7,0x26,0xa8, + 0x85,0x8a,0xe1,0x4f,0x6f,0x05,0x93,0x9f,0xde,0x84,0x23,0x78,0xbd,0x0d,0xbf,0xaf,0xc3,0xa4,0x48,0x47,0xb7,0xb0,0x2d,0xc0, + 0x1f,0xf9,0x18,0x12,0x0e,0x7a,0xfa,0x6e,0x6f,0xb1,0x13,0x83,0x22,0x82,0x8a,0x68,0x0f,0x1e,0x9b,0xa2,0x38,0x11,0x84,0x78, + 0x9d,0x17,0x50,0x47,0x91,0xb8,0xb3,0x92,0xc7,0xc8,0x28,0x16,0x91,0x14,0x23,0xf7,0xa3,0x41,0x04,0x70,0x01,0x5f,0xfe,0x6a, + 0x18,0xbd,0x7d,0x02,0xc5,0xe2,0x87,0x8d,0x72,0x81,0x7e,0x8a,0xa1,0x4b,0xcb,0x69,0xb3,0x2d,0x5a,0xbc,0x9e,0x28,0x0a,0xe9, + 0xd9,0x30,0xb4,0xf0,0x6e,0xf4,0xd1,0xed,0xbe,0x14,0x46,0x7d,0xf8,0xa3,0x9e,0x66,0xb0,0x64,0x0b,0x06,0x64,0x24,0x1a,0x29, + 0x9e,0x6c,0xb1,0x74,0x82,0xe3,0xe9,0x87,0x70,0xde,0xcf,0x57,0x7e,0x98,0x8d,0x1c,0xbd,0x8b,0x2f,0xc8,0x44,0x16,0x1a,0x69, + 0x17,0xb5,0x8a,0x52,0xbc,0x99,0x45,0x1d,0xd8,0x40,0xfd,0x78,0xaf,0x40,0xef,0xa1,0xed,0x22,0x42,0x9c,0x96,0x8b,0xba,0xf0, + 0x68,0x37,0xaa,0xe9,0x28,0x79,0xa2,0x80,0x12,0xf5,0x2b,0x1c,0x34,0x27,0x86,0xdc,0x03,0x44,0x27,0xcd,0xd0,0x98,0xd9,0x2c, + 0xa2,0xed,0x5f,0x65,0x18,0x6b,0x38,0x43,0xfe,0x54,0xcc,0x3f,0x46,0xd2,0x2f,0xf9,0x54,0xcf,0xcf,0x54,0xd2,0x77,0xb5,0xa8, + 0x34,0xba,0xf1,0xbe,0x3f,0x9d,0xe2,0x6a,0x14,0xea,0x16,0x15,0xf2,0x73,0x9d,0xe4,0xd0,0x0f,0x18,0x36,0xcd,0xa5,0xcd,0x52, + 0x3e,0x8f,0x29,0xd5,0x0b,0xbe,0x67,0x88,0x02,0xc8,0x4b,0xbc,0xf5,0x8f,0x38,0x40,0xff,0x7d,0x88,0xd3,0x75,0x0e,0xe4,0x2a, + 0xb9,0x8e,0x6c,0x5a,0x82,0x93,0xfe,0x07,0x9c,0x4d,0x05,0xc2,0x5b,0x0e,0x23,0x14,0xc1,0xf4,0x6c,0x3e,0xf5,0x21,0x93,0xa2, + 0xe9,0xab,0x34,0x38,0x8c,0x2c,0x9c,0xfb,0xf7,0xb9,0xda,0xb2,0x2e,0x4b,0x89,0x47,0x95,0xfa,0xa0,0xc0,0xf8,0xcb,0x0f,0xa1, + 0x74,0x5c,0xec,0x26,0x63,0x14,0xa5,0xa2,0x98,0x3a,0xc5,0x61,0x6e,0xc3,0x7e,0x9c,0x15,0x0d,0xc6,0x6f,0xf7,0xef,0xa3,0x19, + 0xb2,0x3f,0x1c,0x44,0xdb,0x29,0x84,0x62,0x68,0x2b,0xfa,0x18,0xee,0x19,0x18,0xc6,0xf3,0x01,0xe2,0x04,0x3d,0x12,0x47,0x19, + 0xc8,0x42,0x06,0xdd,0x1a,0xce,0xdf,0x07,0xe1,0xa4,0xd4,0xb5,0x18,0xe7,0xf9,0xcb,0x9f,0x52,0x2a,0x02,0xe7,0x45,0x21,0x07, + 0x87,0x28,0x1c,0x8d,0xf4,0xc8,0x3c,0x0d,0xc2,0x99,0x16,0x67,0xac,0x6e,0x7d,0x5c,0xa9,0x06,0xf9,0x44,0x8d,0x68,0x34,0x2e, + 0xde,0x45,0x95,0xfc,0xbf,0x89,0x48,0x43,0x00,0x96,0x5f,0x75,0x90,0x76,0xb1,0xb7,0x5c,0x39,0xcb,0x42,0xeb,0x76,0xee,0xd8, + 0xf8,0xaa,0x52,0xa9,0xb8,0xf6,0xf2,0x68,0x78,0xa1,0x02,0x2b,0xb5,0x90,0x1e,0x4b,0xdd,0x7e,0xbb,0x52,0x6b,0x25,0xd7,0x61, + 0xd5,0x4d,0xad,0xdc,0x8f,0x6b,0xfb,0x91,0x25,0xba,0xf5,0xd5,0xe4,0x4b,0x4f,0x5f,0x3d,0x87,0x3c,0x8a,0x82,0x43,0xd8,0x52, + 0x0c,0x07,0x37,0xe2,0xa9,0x13,0xc8,0xe6,0x04,0x2a,0xa1,0x8d,0xb8,0xa8,0x15,0x63,0x68,0xc6,0x0c,0xfb,0x52,0x25,0x7d,0x1a, + 0x4f,0x5b,0x38,0x80,0x72,0xf5,0x29,0x84,0x99,0xbd,0xbc,0x6a,0x37,0x42,0xe5,0xaf,0xc1,0x46,0x2a,0x07,0xd3,0xfd,0x07,0x79, + 0x8c,0x8b,0xf8,0xdc,0x2a,0xde,0x05,0x0b,0x2d,0x88,0xa1,0x97,0x96,0x6e,0x93,0x07,0xdd,0xa2,0x39,0x57,0x9c,0x91,0xf9,0xfa, + 0xd5,0xcf,0xbf,0x7b,0x16,0x69,0xe4,0x4f,0xce,0x60,0x88,0xb3,0xa8,0xe7,0x08,0x19,0x23,0xa7,0x71,0x45,0x0b,0xd2,0x10,0x4d, + 0xc7,0xf0,0x61,0x14,0x52,0xf0,0x72,0x1c,0xfc,0xe4,0xbf,0xb2,0x80,0xf3,0x79,0xc5,0x29,0xb4,0xf2,0x1d,0x05,0x46,0x35,0xc5, + 0x72,0x31,0xed,0x11,0x85,0x3c,0x25,0xaf,0x69,0x93,0x69,0xfc,0xf8,0x10,0x9d,0xa2,0x55,0x91,0xe2,0xf3,0xaf,0xb3,0x10,0xc1, + 0xa5,0x48,0xc4,0x46,0xe9,0x40,0x10,0x4a,0x60,0x5b,0xcd,0x05,0x46,0x2a,0xed,0xc0,0x9d,0x8d,0xae,0x3b,0xa8,0x05,0xbb,0xe8, + 0xea,0x3a,0x5a,0x79,0x90,0xbc,0xe1,0x43,0xf7,0xef,0xc4,0x19,0x72,0xdf,0x28,0x0a,0xed,0x6f,0x05,0xc9,0x22,0x0a,0xa7,0xff, + 0x2d,0xe0,0x3c,0xda,0xef,0x9c,0xdd,0xce,0xa9,0xa2,0x4c,0xbc,0x72,0x1c,0xb7,0xdf,0x36,0x80,0x6c,0xe1,0x49,0x73,0x08,0xa2, + 0x7a,0xd1,0x85,0x76,0xe4,0xa1,0x44,0x56,0x53,0x80,0x9c,0xe2,0xff,0x68,0xc4,0x37,0xed,0xa8,0xa1,0x05,0x5a,0x47,0xd7,0x7f, + 0x3f,0x8e,0x0e,0xc3,0x41,0x1f,0xf5,0x41,0x6a,0x6f,0x38,0x45,0x49,0x7b,0x4b,0xa9,0x58,0xba,0xec,0x91,0xaf,0xaa,0xf1,0x64, + 0x0c,0x42,0xe1,0xa2,0x15,0x75,0x59,0xea,0x9f,0x97,0x94,0xda,0x4c,0xab,0xb1,0x89,0xaf,0x3c,0x27,0x06,0xbe,0xdc,0xce,0x6e, + 0x71,0x64,0x51,0x0f,0x8c,0x3a,0x91,0x85,0x0d,0xb4,0x09,0xc9,0x58,0xa2,0x9d,0x3c,0x62,0xa9,0xa8,0xd7,0x95,0x9a,0xe6,0x06, + 0x5c,0x55,0x85,0x53,0x88,0xa0,0x0c,0xda,0x60,0xcc,0x22,0x99,0x76,0x92,0xb1,0x01,0xd7,0x2e,0xf3,0xa2,0x64,0xb3,0xd1,0x0c, + 0xa7,0xbf,0xae,0xeb,0x46,0x86,0x9e,0x81,0x0b,0xa3,0x39,0x0f,0x1f,0x56,0xc2,0x25,0x80,0xa3,0xe8,0x91,0x59,0x2c,0xd6,0xf6, + 0x3b,0x77,0xe4,0xbc,0xad,0x54,0xba,0x3c,0x27,0x59,0x9c,0xc1,0x00,0x55,0xcb,0x97,0x6b,0x6d,0xb5,0xa8,0xa7,0xa7,0x27,0xc4, + 0x29,0xa3,0x01,0xfb,0xb0,0x57,0x5c,0x92,0x8e,0x32,0x3c,0xf3,0x47,0x2e,0x9d,0x16,0xd3,0xa8,0x96,0x15,0x72,0x2f,0xd6,0x52, + 0x32,0xa7,0xe3,0xa6,0xa3,0x64,0x68,0xd9,0xce,0x15,0x3b,0xdf,0x54,0xea,0xfa,0x4f,0x9b,0xe9,0x83,0xa3,0xf4,0x9f,0xfa,0x7f, + 0x17,0x8a,0xe7,0x3f,0x7c,0x4b,0xd7,0x56,0xf6,0x58,0x6a,0xfc,0x55,0xa5,0xfe,0x5c,0x7a,0x14,0x43,0x54,0x8e,0x56,0x6c,0x84, + 0x0f,0x96,0xa4,0xb2,0xa1,0x0d,0xf5,0x59,0x6a,0xd9,0x6b,0x4a,0xf5,0x73,0x12,0xf6,0x52,0x16,0x3e,0x09,0xa0,0x76,0x1e,0x10, + 0x3d,0x7a,0x07,0xa5,0x72,0x82,0x10,0xda,0x8d,0x2d,0x96,0x0a,0xff,0x43,0xa9,0x59,0xba,0xa4,0x07,0x39,0x08,0x47,0x30,0x56, + 0x6a,0x3d,0x83,0x96,0x1a,0xf9,0x49,0xa9,0x3d,0xb4,0xcd,0xf8,0xcc,0xd7,0x68,0xa5,0x7c,0xb9,0x8b,0x76,0xd1,0xbd,0x41,0x74, + 0x10,0x7b,0xf4,0x1c,0x3a,0x85,0x18,0x9a,0x10,0x0f,0xa7,0x88,0x22,0x0c,0x91,0x1f,0xb7,0x9e,0xfb,0xea,0x01,0x11,0x27,0x8e, + 0x51,0x1a,0xda,0x8d,0xe5,0x89,0x5c,0x41,0x63,0xfc,0x98,0x43,0xa4,0xf1,0x19,0x9e,0x43,0x8b,0xa8,0xc7,0x88,0x59,0x4d,0xd5, + 0x7c,0x6f,0x8a,0x7e,0x8c,0x0b,0xdd,0xce,0x75,0xc8,0x04,0xa4,0x70,0x90,0x48,0x33,0xe7,0xb1,0xcd,0xe6,0x8b,0x09,0xfb,0x10, + 0x3c,0xa5,0x1f,0x07,0xb1,0xad,0x0f,0x0f,0x06,0x71,0x1f,0x6e,0x9e,0xc0,0x1c,0x8d,0x70,0xcc,0xf2,0x36,0x78,0xba,0xae,0xca, + 0x5b,0xa4,0x90,0x6f,0x66,0xa2,0xc5,0x2d,0xc1,0x3d,0xda,0xfe,0x7b,0x80,0x58,0x43,0x9e,0xe4,0x63,0xab,0x17,0x4d,0x72,0x97, + 0x38,0xbc,0x74,0xc1,0xa8,0xd3,0xab,0xc5,0xc9,0x45,0x63,0x46,0x87,0xee,0x65,0x26,0xe9,0xe1,0xa2,0x4e,0x8e,0x19,0xee,0x73, + 0x94,0x80,0x0c,0x8c,0xe1,0x97,0x68,0x6c,0x13,0xaf,0x38,0x28,0x53,0xf8,0xea,0x11,0xf2,0x98,0x6d,0xb5,0xac,0x16,0x3e,0x88, + 0xd3,0x4b,0xf4,0x29,0xb9,0x13,0xbe,0x86,0xb7,0xd1,0x6a,0x57,0xa6,0xe7,0x39,0xf3,0x9c,0xa3,0xb7,0xc9,0x09,0xd9,0xcb,0xc5, + 0xe6,0xac,0x4c,0x34,0x07,0x31,0x85,0x50,0x8f,0x14,0xdb,0x0d,0x13,0x14,0x86,0xbf,0xaa,0xe9,0xbe,0x55,0xf1,0x5c,0x26,0xd2, + 0x8c,0x5f,0xa2,0xa9,0x89,0x5b,0xe4,0x3e,0x8c,0xe8,0x7d,0xfa,0x94,0xe1,0xef,0x3a,0x65,0xec,0x13,0xe1,0x2e,0x47,0xe0,0x69, + 0x6e,0x42,0x8d,0xb1,0x1b,0xee,0x37,0x47,0x73,0xa6,0xd8,0x2e,0x93,0xf4,0x09,0xb1,0x85,0x56,0x1e,0xc7,0x36,0xf2,0xe2,0x1e, + 0x2c,0x89,0xa7,0x08,0x74,0x8b,0x27,0xe7,0xb8,0x09,0x3d,0xe2,0xb7,0x3d,0xa8,0x14,0x16,0x84,0x76,0x4d,0xb3,0xa5,0x1e,0xbe, + 0x54,0xd3,0xde,0x7b,0xe7,0xc2,0x0c,0x3c,0xfc,0xda,0xff,0x03,0x15,0x94,0x75,0x40,0x55,0x79,0x16,0xc7,0xcf,0xf7,0xfc,0xce, + 0xef,0xbe,0xf7,0x18,0xc4,0x9e,0xee,0xee,0xee,0x2e,0x7b,0x3a,0x58,0x6b,0xc7,0xe9,0xee,0xdc,0x5e,0x1f,0x8d,0x45,0x19,0x74, + 0x97,0x83,0x98,0x48,0x0f,0x29,0x8d,0x20,0x18,0xd8,0xd2,0x0d,0x76,0x32,0xde,0xbb,0x77,0xff,0xfd,0x9c,0x4e,0xa1,0xca,0x06, + 0xd3,0xea,0x11,0xa2,0x34,0xbc,0x91,0x8f,0x00,0x4c,0xdc,0x0d,0x83,0x9a,0x6c,0xf6,0xd6,0xf5,0x44,0xb7,0xbd,0xfd,0x6e,0xa4, + 0x8a,0xc5,0xfd,0x73,0x8f,0xe0,0x97,0x08,0x08,0x1d,0x6e,0x32,0xad,0x51,0x17,0x51,0x0c,0x6e,0xbc,0x7a,0x3d,0x16,0xa3,0x19, + 0x93,0xe8,0xa1,0x56,0xd3,0xba,0x62,0x26,0x51,0x85,0xf6,0x47,0xbc,0x0a,0xe6,0x12,0xdd,0x82,0xd5,0x7c,0x40,0x9d,0x94,0x45, + 0x21,0x7a,0x2f,0xb6,0xe2,0x3c,0x0e,0xf1,0xb3,0x59,0xa8,0xe3,0x3c,0x1e,0x45,0xb6,0xe1,0x9d,0x21,0xad,0x72,0x52,0xcd,0x5d, + 0xb0,0x04,0x67,0x50,0xc1,0x1b,0xf5,0x4a,0xd4,0xba,0xdc,0x78,0x82,0x46,0x7b,0x4d,0xcb,0xe3,0x55,0xa2,0x5c,0x75,0x65,0x10, + 0xba,0xb1,0x1f,0x0b,0xfd,0xf4,0x5f,0x73,0xc4,0x0f,0x7f,0x4a,0x04,0x87,0x2a,0x57,0xb7,0xed,0x7c,0xbf,0x7a,0x79,0x19,0x77, + 0x48,0x26,0x02,0x51,0x6c,0x3c,0x59,0x88,0xef,0xb6,0x62,0x39,0xb6,0x8a,0xc7,0x4d,0x1b,0xb0,0xc7,0x6b,0xad,0x6a,0x97,0x9d, + 0xea,0xee,0x60,0x0e,0xd1,0xfe,0xfa,0xa8,0xf2,0x51,0x19,0xfa,0xf9,0x23,0x0e,0xe7,0x88,0x5a,0x8a,0x3a,0x3e,0x89,0x16,0x99, + 0x56,0xc7,0xa3,0xb8,0xa8,0xff,0x1d,0x83,0x55,0x2a,0x4a,0x77,0x19,0x6e,0xb5,0x92,0x13,0xd0,0xa4,0xf2,0x74,0x99,0xea,0xf0, + 0x8c,0xc2,0x98,0xab,0x10,0xcd,0xea,0x9b,0x08,0xce,0xe0,0x10,0xb5,0x9f,0x47,0x74,0x37,0x87,0x63,0x87,0x2a,0xe1,0x57,0xce, + 0xb9,0xa2,0xb8,0xda,0x33,0x1b,0x7b,0xb8,0x1f,0xdd,0xea,0xde,0xc7,0xeb,0x11,0xe7,0x88,0x36,0x96,0xe1,0xd7,0x47,0x0e,0xc2, + 0x07,0xa1,0xaa,0x48,0xef,0xe2,0x6c,0xfd,0xfe,0xdb,0xff,0x39,0x83,0x25,0x3c,0x6c,0x84,0x23,0xd7,0x2b,0x46,0x39,0x28,0xa6, + 0xcb,0xb4,0xe6,0xcf,0x22,0xba,0x61,0x39,0x2c,0x95,0x89,0x38,0xb5,0x0b,0x93,0x7e,0x8c,0x57,0x77,0x85,0xca,0x16,0x7e,0x8d, + 0xde,0x2e,0x33,0xad,0x7f,0xce,0x27,0x5a,0x26,0x0b,0x4e,0xc8,0x1b,0x83,0x68,0xc0,0x61,0xc7,0xfb,0x85,0x52,0xca,0x15,0xce, + 0xef,0x9e,0xf9,0xcd,0x74,0x56,0x19,0xb1,0xae,0x37,0x37,0x4f,0x38,0xe9,0x8c,0xe4,0x89,0x59,0xa8,0xc7,0x3a,0xdc,0x50,0xa1, + 0x6b,0xd4,0xac,0x05,0xc7,0xf9,0xda,0x4e,0xf8,0x72,0x0e,0xef,0xc2,0x0a,0x39,0xcf,0xcf,0x2c,0x45,0x34,0x3f,0x19,0x8f,0x08, + 0x04,0x19,0x3f,0x9d,0xe0,0x22,0x94,0xe8,0xbb,0x4c,0xf4,0xc1,0x1f,0xe5,0xf0,0xc3,0x6f,0x71,0xfc,0xd0,0xb5,0xe5,0x58,0xec, + 0xc4,0x4a,0xfd,0xef,0x6e,0x1d,0x21,0x39,0xba,0x00,0x57,0x9e,0x46,0x15,0x36,0x61,0x4c,0xdf,0x55,0xee,0x28,0xe0,0x19,0x7b, + 0x10,0xc1,0x3d,0xa8,0x19,0x57,0x81,0xb5,0x97,0x2f,0xe7,0x0a,0xae,0x56,0x7e,0x8e,0x65,0x7a,0x0c,0x7b,0xd5,0xd0,0xb8,0x61, + 0x8c,0xe8,0x5a,0xc9,0xc2,0x0e,0x9d,0xcd,0xbd,0x3c,0xe0,0x1a,0xbf,0x73,0x5c,0x89,0x8c,0xa9,0x33,0xea,0xaa,0x5f,0x36,0x39, + 0xa7,0xac,0x65,0x3f,0x55,0x85,0x3f,0xb8,0x80,0x57,0x63,0x83,0xf1,0x74,0x9d,0x3a,0xc8,0xed,0x7a,0x3f,0xbc,0x4a,0x10,0xc2, + 0x89,0xf0,0xf7,0xba,0xd1,0xd7,0x23,0xc5,0x11,0xe6,0xfc,0xc2,0x97,0xab,0xd4,0x06,0xc7,0x76,0x96,0x1c,0x4e,0xd2,0x0d,0xf8, + 0xe0,0xc9,0x4e,0xe7,0x66,0x35,0xad,0x53,0xce,0x49,0x89,0xa4,0x7b,0x1e,0x94,0x44,0x57,0x24,0x06,0x9d,0xa9,0x1c,0x2a,0x8f, + 0x08,0x79,0xd4,0x9b,0x56,0xd0,0x5c,0xa2,0x7d,0xfc,0x5e,0x0b,0x8a,0xb1,0x4e,0xa2,0xd8,0x45,0x1f,0x6d,0x37,0xad,0x2f,0x3e, + 0x27,0xaa,0x77,0x5e,0x7b,0xf7,0x17,0x43,0x9e,0x63,0xdc,0xa5,0x2e,0xf0,0x39,0x6e,0x43,0x3d,0x47,0x63,0xe6,0x6a,0xde,0x81, + 0x60,0x18,0xb4,0xbf,0xd1,0xb4,0x2e,0xb7,0x4d,0xd7,0xcb,0x15,0x01,0xc8,0x40,0x88,0x4c,0xca,0xe0,0x65,0xf0,0xc3,0xcd,0x13, + 0xe8,0x8d,0x1d,0xa6,0xe5,0xfb,0x3e,0x11,0xfa,0x54,0x9b,0x1c,0xe1,0x3a,0xc4,0xaa,0x05,0x8f,0x1c,0xe2,0x58,0x04,0x22,0x13, + 0x65,0xb8,0xfa,0xf6,0xcf,0x22,0xb1,0x18,0xdf,0xd5,0x22,0x92,0x23,0xe5,0xb3,0x56,0xde,0xab,0x76,0x42,0x12,0x50,0xaf,0x76, + 0x8a,0xa6,0x47,0x9a,0x4d,0x6b,0xdc,0x5f,0x88,0x36,0xf1,0xec,0x22,0x34,0xe2,0x0c,0xbc,0xce,0x21,0x85,0x35,0xd5,0xd9,0xfc, + 0x7b,0x6f,0xa2,0x2a,0x0e,0x87,0xf7,0x36,0x14,0x72,0x16,0xcf,0xba,0xc3,0x93,0xd2,0xed,0x58,0x05,0xef,0x11,0x95,0x23,0x0b, + 0xa1,0x98,0x17,0x84,0x6d,0xf8,0x32,0x0e,0xde,0x6b,0xe4,0x1b,0x5f,0x0e,0x56,0x57,0x27,0xa1,0x44,0x32,0xb8,0x9f,0xf7,0x48, + 0x10,0xbc,0x5f,0xf5,0x24,0x6f,0xfb,0x86,0xee,0xff,0x84,0xa8,0x83,0x4f,0x20,0x9f,0x03,0x78,0xc2,0xef,0x46,0x82,0x14,0x4a, + 0x87,0xf1,0x73,0x32,0x66,0x86,0xeb,0x59,0x99,0x8e,0x01,0xfd,0x78,0xb0,0x72,0x73,0x01,0x7e,0x49,0xd0,0x9a,0x62,0x6c,0xf7, + 0x65,0xef,0x12,0xbd,0xf9,0x4c,0x92,0x6a,0xe2,0x42,0x79,0x69,0x5a,0x03,0x34,0x1d,0x6c,0x31,0xad,0xdc,0x0f,0x88,0xb2,0xd4, + 0xf5,0x87,0xf1,0xe9,0x61,0x7e,0x20,0x04,0x6f,0x7b,0xd2,0x9a,0x5d,0xa6,0x15,0xf2,0x11,0x51,0xa7,0x6c,0xe5,0xcd,0xea,0x22, + 0xbf,0xdb,0xe6,0xc8,0xe2,0x56,0xde,0x05,0xe7,0xd7,0xad,0x92,0xa4,0xfc,0xd4,0x59,0x35,0x8a,0x52,0x76,0x2d,0xc3,0x4a,0xfe, + 0x57,0x0c,0x84,0xbe,0xdb,0x6b,0x5a,0xd1,0x0b,0x88,0xfa,0xf4,0x66,0x7e,0x34,0x08,0x9b,0x75,0x81,0x72,0xd0,0xae,0x7d,0xf6, + 0x48,0xec,0x82,0x3c,0x3f,0x09,0x53,0x93,0x8b,0x61,0x62,0x4c,0x9a,0x8c,0x70,0x8c,0xcf,0xd1,0xe5,0x0e,0x17,0x65,0x1e,0x30, + 0xad,0x6f,0xe7,0x11,0x05,0xf3,0x61,0x3e,0xa9,0xca,0x90,0x8f,0x26,0x1c,0xe7,0x44,0x23,0x5e,0xc5,0xe9,0xf9,0x23,0x9c,0xa3, + 0xb2,0xd8,0x73,0x27,0x34,0xbd,0x74,0xc8,0xb4,0xc4,0xf6,0x72,0x12,0x55,0xb8,0x3f,0x94,0xa3,0x71,0xfb,0x9d,0x3f,0x68,0xca, + 0x3d,0x6c,0x5a,0x95,0x73,0xed,0x6a,0x7e,0x3a,0xc2,0xef,0x3d,0xb7,0x98,0x4f,0xa8,0x01,0xb8,0xe8,0x06,0x9b,0x56,0x7b,0x13, + 0x2d,0xc5,0x53,0xbd,0x7a,0xbd,0x5e,0x8a,0xbd,0xb8,0x3b,0x19,0x3b,0x70,0xed,0x95,0x6e,0x15,0xc1,0x1d,0xdc,0xac,0xd2,0xd8, + 0x83,0xfe,0xe8,0x34,0xad,0xda,0xb7,0x88,0x22,0x78,0xad,0x3a,0xe2,0x78,0xfb,0xb6,0xd7,0xd8,0x44,0x21,0x6f,0x44,0x99,0xcc, + 0xea,0xe4,0x12,0x5e,0x78,0xc5,0x35,0x6d,0x70,0xd0,0x06,0x5b,0x2b,0xce,0x9e,0x5e,0xa3,0x34,0x60,0xd6,0x8c,0x16,0x2c,0x41, + 0x92,0xdc,0x39,0x7d,0x25,0xd6,0xe1,0x21,0x4d,0x77,0xdb,0x47,0xaa,0xde,0xb1,0x93,0xe7,0x0f,0xae,0xfa,0x31,0x08,0xef,0xc5, + 0xe3,0x1b,0x4d,0xb7,0x77,0x9b,0xd6,0xb4,0xd7,0x88,0x1e,0xfc,0xc4,0xad,0x23,0xd1,0xca,0x4f,0x9b,0xf8,0x46,0xe8,0xa7,0x1e, + 0xd3,0x5a,0xf0,0x2e,0xd1,0x05,0xfe,0xe9,0x22,0x4f,0x93,0x42,0x08,0x3d,0xde,0x67,0x5a,0x6f,0xd8,0xc8,0x9f,0x0f,0x22,0x1e, + 0xf2,0xf9,0x11,0x68,0x9a,0xdc,0x6f,0x5a,0xda,0x66,0x2d,0xfc,0xf0,0x4d,0x9f,0xf7,0xf3,0x64,0xaf,0x40,0xbc,0x4f,0x33,0x76, + 0x9b,0xd6,0x6f,0x91,0x44,0x59,0x78,0xd9,0x07,0x47,0x31,0xae,0xc0,0xd8,0x83,0x2a,0xee,0xe2,0x00,0xb4,0xa0,0x9d,0x27,0xac, + 0x42,0x90,0x44,0x49,0x10,0x06,0xb8,0xcd,0x68,0xe7,0x2a,0x98,0xb8,0xab,0x12,0x87,0xb0,0xd9,0xae,0x73,0xd6,0xe5,0x4b,0x78, + 0xb5,0xda,0xaf,0x2e,0x3b,0x8c,0xeb,0x3a,0x90,0xa5,0x8e,0xf0,0x57,0xab,0x54,0x2a,0x7e,0x38,0xc1,0x37,0x46,0x73,0x29,0xd7, + 0xea,0xed,0x28,0x96,0x10,0x95,0x80,0x2d,0x2a,0x83,0x3d,0x2d,0xa3,0xd0,0xd8,0xcd,0x2b,0xd0,0xed,0xec,0x70,0xf4,0xaa,0x4a, + 0xfc,0xf3,0xcd,0x6a,0x4c,0xf3,0x8c,0xe0,0x08,0x7e,0x72,0x42,0x16,0xfe,0xfe,0xd0,0x11,0x69,0x52,0xe9,0x3c,0xc4,0xf9,0x72, + 0x80,0xe7,0x96,0x62,0x08,0xff,0x6c,0x50,0x4d,0xaa,0xcd,0xb5,0x07,0x01,0xae,0x3c,0x3e,0xc6,0x19,0xd2,0xaf,0xbe,0x1f,0x54, + 0xaf,0x77,0xaa,0x36,0x8f,0x32,0xb5,0xc5,0xf0,0x55,0x85,0xb2,0x45,0xed,0x71,0xfe,0xf5,0x38,0xef,0xe7,0x16,0x1d,0xa2,0x1b, + 0x59,0x05,0xf3,0x71,0xcc,0x9d,0x1b,0x81,0x02,0xbe,0xf9,0x10,0x8f,0xd8,0xd5,0xfc,0xed,0x9b,0x1c,0x9e,0x10,0x27,0x89,0x1e, + 0x97,0x5f,0x95,0x2d,0xe9,0x78,0xf6,0xee,0x83,0x7c,0x01,0x8b,0x51,0x82,0x01,0x5c,0x13,0xa8,0x12,0x8c,0x3a,0x39,0x2b,0xde, + 0xd9,0x58,0xc1,0x35,0x5c,0x87,0xdd,0x52,0x86,0x78,0xa7,0x5b,0x7a,0x10,0xac,0xb2,0x39,0x0d,0x55,0x52,0xcf,0x25,0xf0,0xe5, + 0x46,0x95,0x81,0x32,0x79,0xbf,0x04,0x9f,0xc5,0xa0,0x08,0x75,0x12,0xc2,0x49,0x06,0x57,0x72,0x0b,0xfa,0xb0,0x98,0x9f,0x5f, + 0xa3,0x7a,0x74,0x97,0xea,0xe0,0x4d,0xfa,0x81,0x7a,0xf5,0x9b,0x5b,0xc2,0x0c,0xcf,0x1e,0x3b,0x39,0x21,0xd3,0x5e,0xf0,0x45, + 0x81,0x44,0xff,0x9c,0xe4,0x8b,0x99,0x8b,0x79,0xde,0xfb,0x94,0x30,0x62,0x5a,0x5f,0xa5,0x12,0x05,0xf1,0x15,0x01,0x3c,0x80, + 0x27,0xf3,0x24,0xc4,0xf1,0xd1,0x59,0x55,0x80,0xbf,0x0c,0x72,0x86,0xa3,0x52,0x4d,0xdb,0xc8,0xdf,0xb6,0xe2,0x24,0xdc,0x18, + 0x41,0x37,0x1e,0xce,0xc3,0x1f,0x1c,0xa8,0xcf,0x7a,0x6d,0xc7,0x98,0x31,0x29,0xc5,0x63,0xb9,0x64,0x18,0x71,0xd2,0x8b,0x76, + 0x99,0xdc,0x8f,0x0d,0x88,0x87,0x77,0x82,0x4e,0xd2,0x6e,0xe3,0xee,0x30,0xf4,0x2b,0xc7,0xc3,0x9f,0xb5,0xa1,0xc6,0x75,0x6d, + 0xb4,0xb2,0xf8,0xb4,0x8e,0x40,0x0c,0xd6,0xe0,0xca,0xbb,0x2a,0x39,0x8b,0x97,0x23,0x5b,0x9d,0x14,0x37,0xff,0xfd,0xe1,0x48, + 0x75,0x48,0xfd,0x27,0xd0,0xc8,0x91,0x46,0xec,0x95,0x48,0x49,0x46,0x22,0xda,0xb1,0xd4,0x88,0x50,0x67,0xb1,0x86,0xaf,0xae, + 0xe1,0x0a,0x0e,0x54,0x4d,0x38,0x29,0x85,0xea,0x3c,0x57,0xe2,0x34,0x77,0xe3,0xb2,0x97,0x37,0xf1,0xb4,0xdf,0xde,0x7d,0xe3, + 0xdd,0x6c,0xf6,0x55,0x63,0xdc,0xa2,0x4e,0x3a,0xca,0xd5,0x52,0x3e,0x89,0x24,0xf9,0x77,0x3b,0xee,0x5e,0xc6,0xe7,0x64,0xaf, + 0xd3,0xe2,0x9b,0xbf,0xef,0x45,0x30,0xa7,0x62,0x09,0x7c,0x94,0xc5,0x29,0xc8,0x52,0xf9,0xcc,0xb5,0x3c,0xaa,0x1e,0x0c,0x54, + 0x4b,0xd8,0xc2,0xa2,0xb7,0xf6,0x22,0x88,0xa7,0x87,0x21,0x07,0x5b,0xf0,0xd2,0xcd,0xb5,0x30,0x71,0xd3,0xa7,0xb9,0x90,0xb7, + 0x32,0xf0,0xcb,0x2d,0x8b,0x79,0x1b,0x77,0xf2,0x32,0xe5,0x75,0x11,0xd3,0xfd,0xb8,0x16,0xe5,0xb8,0xe4,0xd2,0x44,0x34,0xe3, + 0xbe,0x97,0x2c,0x8c,0xe0,0x8b,0xe7,0x7e,0x7d,0xac,0x0f,0xdf,0x24,0xdb,0x86,0x3d,0xbc,0x96,0xe7,0xc6,0x72,0x1c,0xcf,0xfb, + 0x03,0x42,0xb7,0xdb,0x6b,0xfb,0x76,0x20,0x51,0x00,0x3a,0xd1,0xa8,0x46,0xb9,0x45,0x9a,0x45,0xe8,0x42,0x9b,0x69,0xfd,0x1a, + 0x4c,0x14,0xa1,0xfc,0x31,0x8a,0x4f,0xd3,0x71,0xbd,0xd0,0x32,0xfb,0x6f,0x4c,0x58,0x46,0x94,0x84,0x1c,0x04,0x61,0xc6,0x95, + 0x5f,0x19,0xd4,0x6f,0xa3,0x4c,0x5b,0x2d,0x85,0x6f,0xca,0xe1,0x1f,0x9f,0xdf,0xe5,0x78,0xcd,0x92,0x38,0x24,0x29,0xa1,0x22, + 0xfb,0x9f,0xd0,0x4a,0xa2,0x05,0xd7,0x6d,0x96,0x5d,0xc6,0x6e,0x7b,0xcf,0x84,0xbe,0xb2,0x2f,0x1e,0x31,0x44,0x03,0xd8,0xc0, + 0xf1,0xbc,0x59,0x3d,0xe4,0x86,0xa6,0x87,0x6d,0x38,0x27,0x9e,0x68,0x91,0xe3,0xfd,0x32,0x8c,0xe2,0xe5,0x11,0x8c,0x61,0x22, + 0x55,0xd8,0xe7,0x79,0x65,0x22,0xd1,0x72,0xb8,0x11,0x6d,0xfc,0x89,0xcd,0x72,0xf5,0xaa,0x29,0xd9,0x86,0xef,0x25,0x69,0xa8, + 0xc6,0xa7,0x11,0x78,0x7a,0x0d,0x2f,0xc7,0xe5,0x8d,0x38,0x87,0xfd,0x38,0xc6,0xb1,0xf0,0x7e,0x2e,0x16,0xa9,0x18,0xf4,0x0a, + 0x45,0x89,0xae,0xe0,0x36,0xb5,0x9d,0x85,0x92,0xda,0xed,0xa7,0xb0,0xc9,0xae,0xc1,0x78,0xac,0xde,0x11,0x2a,0x5b,0xd1,0xa6, + 0x84,0x6e,0xb0,0xe1,0xc4,0xcd,0x44,0x55,0x3c,0xb5,0x58,0x8e,0xe1,0x34,0xf6,0x41,0xe8,0xa9,0x01,0xfb,0xf9,0x27,0x13,0xcd, + 0x79,0xfa,0xb5,0x1f,0x91,0x6d,0x83,0x3c,0x1b,0x4c,0xb1,0x41,0x0b,0xee,0xe9,0xc6,0x09,0x9e,0x58,0xc9,0x42,0x2b,0x06,0x4d, + 0xeb,0x8a,0x3c,0xa2,0xad,0x18,0x5f,0x2d,0x7e,0x1c,0xa2,0x4e,0x42,0x28,0x7c,0xd8,0xb4,0x12,0x93,0x88,0x2e,0xca,0x0d,0xbf, + 0xab,0x6d,0xd8,0x85,0x24,0x68,0x4a,0x1f,0x35,0xad,0x07,0xff,0x0f,0xd5,0xed,0xbb,0xf8,0x9d,0xbb,0x97,0xe0,0x3f,0xfe,0x6c, + 0xd0,0xea,0x1a,0xfb,0x4f,0x1f,0x20,0x3a,0x04,0xaf,0xe7,0xc3,0x51,0xe8,0xe8,0xe5,0x36,0xac,0xe2,0x4a,0x39,0x6a,0x97,0x9b, + 0xd9,0x60,0x5a,0xf5,0xff,0x97,0xa9,0xf3,0xba,0x0a,0xb3,0xf3,0xb1,0x4d,0x8e,0x4b,0x92,0x8e,0x91,0x40,0x44,0x4a,0xb1,0x2c, + 0x9a,0xde,0xac,0xdd,0x92,0x86,0x3b,0x37,0x3b,0x7a,0x8d,0xef,0x7f,0x57,0x51,0x68,0xd6,0xf1,0x5c,0x86,0x13,0x08,0xd2,0x83, + 0xd2,0xc5,0x8f,0xe6,0xb1,0x90,0xae,0x35,0xad,0x9a,0x43,0x44,0x51,0x90,0x85,0x1b,0xf1,0xec,0x16,0x08,0xc5,0xd8,0x68,0x5d, + 0xbb,0x9d,0x32,0x22,0xe0,0x83,0x46,0xb6,0x2f,0x41,0xa8,0xbf,0xce,0xb4,0x8e,0xd5,0x13,0x05,0xca,0xcf,0x83,0x3a,0x1a,0x1d, + 0x58,0xce,0x42,0x1f,0xda,0xf0,0x4d,0xdb,0xf8,0x97,0xcb,0xee,0xcf,0xe1,0xe9,0x31,0x6c,0xd0,0xd4,0x46,0x9b,0xd8,0x29,0x65, + 0xe3,0xb2,0x5e,0x9c,0x52,0x7e,0xfc,0xbd,0xa3,0x87,0xb7,0x70,0x0f,0xde,0xa7,0xef,0x86,0x4c,0xab,0xe4,0x34,0x51,0x87,0xe4, + 0xa3,0x8c,0x47,0x91,0x64,0x7c,0x13,0xec,0x51,0xac,0x4f,0xe9,0xc7,0x5b,0x55,0x28,0x87,0x39,0x92,0x39,0xd0,0x61,0xf4,0xa3, + 0x9e,0x03,0xf5,0x52,0xf4,0xf1,0x12,0x15,0xe6,0x79,0x46,0x1f,0xe3,0x63,0x7c,0xd1,0xe5,0xda,0xca,0x9b,0xd8,0x8d,0x51,0x5e, + 0xa5,0x67,0xe7,0xa9,0x53,0x7c,0x40,0xb9,0xb1,0x5e,0x92,0xd4,0x37,0xbf,0xf5,0xe9,0xd7,0xeb,0x8c,0x4c,0x54,0xa9,0x1b,0x3e, + 0x0b,0x64,0xf7,0xc4,0x2d,0x1c,0xe2,0x75,0x0a,0x05,0xb2,0xda,0xd6,0x6f,0xe4,0x46,0xa4,0x4a,0xbe,0x5a,0xc6,0x01,0xce,0x73, + 0xa8,0x42,0x09,0x2f,0xe1,0x0a,0x44,0x8f,0x4b,0x43,0xac,0x47,0x1c,0xf7,0xcb,0x6e,0x0e,0x46,0x36,0x87,0xf3,0xbf,0x4b,0xd0, + 0xc4,0x27,0x8d,0x0a,0x39,0xe1,0xba,0xea,0x98,0xad,0xd1,0xe4,0x98,0x78,0xc2,0x4e,0x66,0xd4,0x78,0xce,0x5f,0xe5,0x48,0x8a, + 0x73,0x58,0xad,0xe1,0x1c,0x6e,0x9a,0xda,0xe9,0xec,0x57,0x87,0x65,0x87,0xd1,0x88,0x64,0x3e,0x81,0xe3,0x8e,0x83,0xce,0xad, + 0xae,0x15,0x8e,0xb9,0x39,0x68,0xd6,0xff,0xec,0xe0,0x20,0x20,0x40,0x37,0xcb,0xb5,0x3e,0xbc,0x81,0x37,0xc9,0xf8,0x03,0xc6, + 0x6a,0x71,0x2b,0x5a,0xc7,0xad,0x48,0x53,0xef,0xef,0x57,0xbf,0x23,0x82,0x6f,0x6f,0xd0,0x05,0x3c,0x24,0x73,0x43,0x2e,0x29, + 0x57,0x45,0xfa,0x89,0xc7,0x87,0xa5,0x9d,0xbd,0xf7,0x18,0x77,0x74,0xcb,0x30,0xaf,0xe2,0x5d,0x68,0xf0,0x58,0xc7,0x9f,0x9c, + 0x42,0x8e,0xac,0x40,0xb6,0xdc,0x5d,0xa7,0x0e,0x21,0x4f,0xff,0xab,0x49,0x45,0x72,0x01,0xff,0xc3,0x72,0x4e,0x19,0xe2,0x70, + 0xe3,0xbc,0x63,0x72,0x9c,0xe7,0xa8,0x4e,0xd3,0xab,0xd4,0x7a,0xc7,0x6e,0xf4,0x22,0x4f,0x8e,0x7a,0x9c,0x84,0xff,0xa4,0x5a, + 0xce,0x1a,0xef,0xed,0xa2,0x19,0xf6,0x40,0x1a,0x4f,0x12,0x05,0x48,0x0d,0xcf,0x29,0x52,0x9b,0xf4,0x98,0x4e,0xe3,0x0f,0xdc, + 0x8e,0x12,0xe5,0x51,0x2d,0xd1,0x3a,0x5f,0xfe,0xd4,0xb7,0xfe,0x0f,0x0d,0x94,0x03,0x60,0x1e,0xdb,0x12,0xc7,0x77,0x66,0xce, + 0x39,0xbb,0xfb,0x29,0xa9,0x71,0x6d,0xdb,0xb6,0x6d,0xdb,0x7c,0xb6,0x62,0xdb,0xb7,0x6e,0x63,0x14,0x49,0x1a,0xbb,0x5f,0x9c, + 0x34,0x2c,0x62,0xdb,0x76,0x77,0xdf,0x9a,0xc3,0xdf,0xec,0x5f,0x95,0xc2,0xab,0x35,0x7d,0xd2,0x02,0x92,0x3b,0xed,0x83,0x72, + 0xdc,0x80,0x63,0x3c,0x05,0x16,0xe8,0x04,0xad,0xb1,0x67,0x1b,0x20,0x1a,0x6a,0x14,0x3b,0xef,0x16,0x8d,0x20,0xa4,0x7f,0xd4, + 0x68,0xfa,0x17,0x26,0x90,0x74,0x0c,0x80,0x9b,0x03,0x20,0x88,0xae,0x5e,0x81,0x44,0x48,0xc7,0x70,0x90,0xa5,0xbb,0xea,0x35, + 0xfd,0x2d,0x47,0x90,0xb6,0x9d,0x85,0x7a,0xcb,0x2a,0xec,0x61,0xd9,0x98,0xc9,0xee,0x2f,0x84,0x10,0x68,0xc1,0x3b,0xb8,0xf4, + 0xf0,0x69,0x4d,0x7f,0x60,0x52,0x92,0x82,0x71,0xc7,0x1f,0x7f,0x1d,0xe0,0x9f,0xda,0x59,0xba,0x61,0x54,0x63,0x18,0x4d,0x2f, + 0x4b,0x52,0x1b,0xbe,0x76,0x0e,0xbd,0x29,0x55,0x4c,0x43,0xac,0x3a,0xc1,0x3a,0x98,0x1b,0xd4,0xf2,0x6b,0x3e,0x97,0xde,0x35, + 0xac,0x76,0x0d,0x4a,0x52,0x04,0xac,0x51,0xbe,0x29,0x5f,0xb6,0x43,0x31,0x6c,0x40,0x13,0xd8,0x0a,0x21,0x08,0x4d,0x7d,0x54, + 0x03,0x81,0x78,0x06,0xd2,0xb0,0x07,0xde,0x70,0xc2,0x04,0x38,0x05,0x8d,0x86,0xa5,0x0f,0xfe,0xb9,0x82,0xd2,0x58,0x1f,0x8e, + 0x40,0x01,0x3b,0x05,0x2b,0x38,0x87,0xbf,0xb1,0x57,0x46,0xd9,0x93,0xc5,0x22,0x8e,0x3f,0x78,0x8c,0xe5,0xd3,0x14,0x2c,0xca, + 0x09,0x6c,0x18,0xe2,0x98,0xd2,0x85,0x4d,0x74,0x04,0x0f,0x29,0x31,0x18,0xb7,0xd3,0x99,0xed,0x41,0x57,0xe8,0x07,0x5f,0x70, + 0x91,0xbd,0x70,0x83,0x7d,0xe6,0x27,0xe2,0xf1,0x0f,0x1e,0xf0,0xfe,0xfd,0x6d,0x36,0x3f,0x36,0x65,0xc9,0xe2,0x1e,0x24,0xfd, + 0x6a,0x87,0x48,0x5c,0xc4,0x30,0x16,0x07,0x27,0x58,0x06,0x2c,0xe0,0x71,0xec,0xc6,0x1c,0xc8,0xe7,0xb5,0x50,0x49,0x81,0x70, + 0xed,0x7b,0x67,0xc9,0x1b,0x8f,0xd0,0x3d,0xc6,0x67,0xe0,0xc4,0xfb,0x71,0xc5,0x54,0x0f,0x2b,0xe2,0xe2,0x39,0xf8,0xec,0xbf, + 0xbf,0x61,0x1d,0xdc,0x96,0xcd,0xfe,0x9a,0x00,0x01,0x78,0x02,0x5f,0xf1,0x80,0x0a,0x3c,0x4b,0x39,0xd8,0x09,0xe1,0xb4,0x35, + 0xc3,0xa8,0xc1,0x1b,0x3f,0x58,0x84,0x12,0xf6,0xa7,0x61,0x93,0xe3,0xb3,0x6f,0x4d,0x58,0x5d,0x21,0x13,0x07,0xa9,0x17,0x16, + 0x71,0x6b,0x34,0xc6,0xf0,0x57,0x9a,0x61,0x11,0x9e,0xcf,0x81,0x71,0x48,0xa7,0x61,0xf8,0x2c,0x10,0x03,0x30,0x1e,0x2a,0x20, + 0x8f,0x15,0x40,0x0b,0x0f,0x84,0x00,0xc5,0x83,0xd6,0x94,0x1b,0xd7,0x58,0x89,0xe1,0xdb,0x9d,0xe9,0xe0,0xca,0x3b,0xe1,0x28, + 0xac,0x2a,0xed,0x38,0xa4,0xa6,0x60,0x07,0x15,0xf2,0x4c,0x8c,0x01,0x1f,0x5c,0x45,0x23,0x5f,0x1c,0x61,0x61,0x6c,0x1f,0xe4, + 0x09,0x2e,0x65,0x36,0x68,0xfa,0xca,0xaa,0x24,0x05,0xc2,0x47,0xcb,0xf4,0xe9,0x1e,0xf1,0x62,0x30,0xbc,0x24,0x4b,0x8f,0x34, + 0x6b,0xfa,0x4e,0x1b,0x48,0x59,0x64,0xae,0xc0,0x20,0x7c,0xd9,0x0d,0xd3,0xf0,0xf9,0x00,0x25,0x14,0x7c,0x79,0x1e,0x09,0xe9, + 0x9f,0x67,0x34,0xfd,0x88,0x01,0x6e,0x98,0x76,0x2e,0x8a,0x09,0xac,0xa3,0x7c,0x28,0x95,0xfb,0xf1,0xae,0x76,0x50,0xa5,0xaf, + 0x5b,0x34,0xbd,0xdf,0x04,0x52,0x8a,0x9a,0x8c,0xcb,0x10,0x6a,0x76,0x55,0x3b,0x31,0x72,0xf3,0x53,0xf5,0x7c,0x48,0x0c,0xa0, + 0x1f,0x8b,0x51,0xa2,0xf8,0x09,0xdb,0xfb,0x42,0xfa,0x5f,0xbb,0xa6,0x5f,0x30,0xbe,0xf3,0x57,0x7a,0xb0,0x0f,0xca,0xb1,0x8b, + 0xbd,0xb6,0x80,0xeb,0x18,0x0b,0xad,0x20,0x4b,0x3f,0xf6,0x68,0x7a,0xa5,0x02,0xd2,0xa4,0xed,0x43,0x5f,0x23,0xf9,0x20,0x7e, + 0xf7,0x98,0x35,0x0b,0x8e,0xc1,0x41,0x3a,0x4a,0x9b,0xb8,0x34,0xd3,0xa5,0xe9,0x7b,0x16,0x24,0x69,0x9d,0x94,0x76,0xde,0x00, + 0x9a,0xfc,0x51,0x1b,0xfc,0x4b,0x48,0x8f,0x4d,0x6a,0xfa,0x3b,0xc6,0xe3,0x56,0xf1,0xb9,0xaf,0x9c,0xc4,0x42,0x2c,0x91,0xd8, + 0x81,0x59,0xe8,0x09,0x0f,0x7c,0x2e,0x05,0xce,0x68,0xfa,0x0b,0x4f,0x83,0xb4,0x70,0x5b,0x3a,0xe4,0x88,0x56,0x28,0xd9,0x55, + 0x85,0x3d,0x8e,0x97,0xfa,0xed,0xee,0xc0,0x16,0xf1,0xd6,0x12,0xab,0x85,0x62,0x79,0x19,0x0a,0xad,0xcf,0x52,0x05,0x74,0x28, + 0xf1,0x68,0xc7,0x41,0xf0,0xb2,0xf8,0x41,0x98,0xe5,0x91,0x3a,0x71,0x98,0xfc,0x6d,0xad,0xe4,0xbf,0xdd,0x9b,0x92,0x1d,0xba, + 0x21,0xd2,0xb4,0x35,0x43,0xb6,0x43,0x8e,0xed,0xa1,0x22,0xe6,0x8e,0x9d,0x17,0xe9,0x18,0x83,0x1f,0x4c,0xdd,0x34,0x41,0x2b, + 0x36,0xd0,0x4d,0x07,0x29,0xf4,0x8e,0x3c,0x35,0xd5,0x56,0xcf,0x0e,0xab,0x97,0xce,0x2a,0xfb,0xd0,0x49,0xee,0x67,0x17,0x2e, + 0xea,0x84,0x19,0xf1,0xdd,0x09,0xc7,0x5b,0xe3,0x2d,0x93,0x38,0x41,0xff,0x49,0x66,0xc9,0x90,0xea,0xe8,0x09,0x55,0x97,0x8e, + 0x60,0x2c,0xfe,0xa9,0xcd,0xf1,0x6f,0x1d,0xb0,0x4c,0x39,0x57,0xa4,0xc3,0xf0,0xb6,0x52,0x38,0xb4,0xf5,0x20,0x2b,0xdd,0xb4, + 0xed,0x9b,0x6e,0x5c,0x35,0x5d,0x71,0xda,0x14,0x03,0x7b,0x77,0xfc,0xa3,0x68,0xf3,0xd5,0x4b,0x26,0x6f,0xcc,0xdc,0xe5,0x02, + 0x85,0x17,0x67,0xb0,0x75,0x31,0x88,0xce,0x3b,0x9f,0x08,0xd8,0x32,0x8d,0xc1,0x96,0xfd,0xfc,0xbc,0x83,0x2b,0xec,0x77,0xbc, + 0xf6,0x3f,0x67,0x45,0x89,0x48,0xc6,0xa2,0xcb,0x7f,0x5a,0x77,0x8c,0xa1,0x35,0x5e,0x84,0xe1,0x16,0x4f,0x48,0xa3,0x58,0x88, + 0x33,0xff,0xde,0xcd,0xb6,0x08,0x31,0xe6,0x2f,0x13,0x98,0x27,0x6b,0x13,0xdf,0x4d,0xc9,0xf9,0x30,0xc0,0x0a,0xa8,0x95,0x4d, + 0x63,0xf8,0x16,0x6f,0x16,0xbc,0x35,0x10,0x3b,0xb1,0x81,0xd5,0x98,0xef,0x6c,0xb5,0x54,0x52,0x13,0x73,0x66,0xa3,0xbb,0x76, + 0x45,0xf3,0x7c,0xfa,0x66,0x9d,0xd9,0xad,0xdf,0xed,0x77,0x70,0xc3,0x68,0x9e,0x82,0x76,0x3a,0x48,0x76,0x53,0x00,0x04,0x62, + 0x18,0x3a,0x04,0x92,0xab,0xed,0xda,0x0a,0xe8,0xe1,0x5f,0x15,0xf1,0xcf,0x25,0xfb,0x51,0x4d,0xff,0x6a,0x1b,0x48,0x7d,0xb6, + 0x3d,0x58,0xad,0x48,0xe7,0x60,0x1a,0x2a,0x91,0xaf,0xc1,0x49,0x55,0x57,0xdd,0x8c,0x59,0x2c,0x65,0xfb,0xd4,0x09,0xea,0x62, + 0x97,0x14,0x9a,0xdb,0xb1,0x5d,0x09,0x62,0x99,0xe4,0x03,0x7b,0xcd,0x1f,0x8e,0xb2,0x16,0x16,0x01,0x7e,0x38,0xc7,0x4a,0xa1, + 0xcd,0x21,0x07,0xdb,0x37,0x8f,0xb0,0x31,0x51,0x4b,0x27,0xd5,0x39,0x58,0x50,0x5f,0x31,0x8a,0x86,0x39,0xf4,0x82,0x29,0x6b, + 0x04,0x3a,0x99,0x6e,0xcc,0xb5,0x54,0xc1,0x06,0x39,0xf3,0x6a,0xc5,0x99,0xb6,0x3b,0xd3,0x12,0xcb,0xc3,0x69,0x5b,0xa8,0x7c, + 0x46,0x8d,0xc0,0x50,0xde,0x4b,0x0b,0x74,0x16,0x6a,0xe8,0x11,0xb9,0x02,0xeb,0xcc,0x6d,0xec,0x0c,0x7b,0xac,0x84,0x32,0x31, + 0x85,0x0d,0xc0,0x14,0xb9,0xa3,0x0f,0x8b,0x02,0x0f,0x3e,0x09,0x0e,0x55,0x54,0x27,0xec,0x98,0xcc,0xb2,0xa9,0x12,0x17,0x28, + 0x7f,0x73,0x2b,0xba,0x5a,0x26,0xd0,0x9b,0xba,0xe0,0xdf,0xd5,0x90,0x6b,0x4a,0xc3,0x4c,0xab,0xec,0x62,0x4e,0xc4,0x6a,0x59, + 0x0a,0x52,0x5d,0xc9,0x03,0x8e,0x63,0xb3,0x9c,0x4e,0xcb,0xbc,0x8c,0x79,0xf0,0x10,0xf2,0x92,0x8f,0xa0,0x8f,0xfc,0x74,0x9b, + 0xf8,0xcb,0x57,0xee,0x34,0x6b,0xf5,0xc5,0x19,0xf9,0x89,0xd3,0x2c,0x54,0x5e,0x91,0x3b,0x44,0x9b,0xba,0x04,0x69,0xf8,0x4d, + 0x99,0xbc,0xcc,0x2a,0xe5,0x19,0x4c,0x50,0x7a,0x59,0x09,0x68,0x34,0xc3,0xa3,0xb0,0x74,0x7b,0x32,0xf5,0x51,0x09,0xc5,0x33, + 0x5f,0x5c,0x14,0xdb,0x26,0x4d,0xfe,0xcc,0x89,0xb3,0x1e,0x36,0x82,0x61,0xec,0xe9,0x11,0x1e,0x08,0xa7,0x14,0x3f,0x4c,0xc3, + 0x3f,0xa4,0x82,0x27,0xab,0xdf,0x54,0xcf,0xcb,0xf1,0x85,0x16,0x96,0x8b,0xc7,0xf0,0xbb,0x54,0x1c,0xe6,0x2e,0xb2,0x8f,0xac, + 0x59,0xe7,0x28,0xdb,0xf2,0x89,0x55,0x7a,0xad,0x4a,0xd3,0x33,0x2f,0x03,0xa9,0x74,0xcb,0xce,0x19,0xc7,0x1a,0x4c,0xb2,0x95, + 0x89,0x73,0xd0,0x4e,0xa3,0xbb,0x7e,0x76,0xde,0xfd,0x1b,0xea,0xcc,0x0f,0x9a,0xf9,0x01,0x71,0x58,0x6d,0x83,0x60,0xf0,0x10, + 0x63,0xe2,0xfd,0x73,0xd6,0x4e,0x10,0xd2,0x0d,0x86,0x86,0x47,0x5c,0x0f,0xd2,0xf6,0xbf,0x84,0xab,0xb7,0x4d,0xa8,0x5d,0xac, + 0x12,0x5f,0x33,0x04,0x05,0x85,0x64,0x1d,0xd1,0x74,0xeb,0xad,0x20,0xb9,0x9b,0x1f,0x1e,0x86,0x3d,0x70,0x44,0x3c,0x7b,0xc8, + 0x14,0x0c,0xcd,0xe4,0x0d,0xd7,0x4a,0x90,0xa0,0xe9,0x27,0x1e,0x07,0x29,0xc9,0x31,0x18,0x03,0x44,0x36,0x24,0x39,0xd8,0x21, + 0x4d,0x7d,0xb8,0x6c,0x67,0x0b,0x4d,0xed,0x36,0x38,0x6d,0x5d,0x84,0x35,0xdb,0x2c,0x0d,0xb1,0x4b,0x2b,0x44,0x03,0xc4,0xd0, + 0xb7,0xda,0x6d,0x91,0xe2,0xb8,0xa9,0x0f,0xf7,0x5e,0xdd,0xc5,0x35,0xf3,0x0a,0x0c,0x8b,0x0e,0x48,0x53,0x2e,0xde,0x67,0xf6, + 0x87,0x78,0x3c,0x40,0x49,0x57,0x55,0xc0,0xfa,0xb6,0x06,0x6a,0xba,0xee,0x92,0x90,0x5d,0x8d,0xbc,0x83,0xb7,0x41,0xe8,0x8e, + 0x36,0x5e,0xb9,0xed,0xe5,0xa1,0xad,0x4f,0x4d,0x6c,0xea,0xa5,0x6a,0xf5,0xab,0xfd,0x96,0x29,0x9c,0x50,0x7b,0x70,0xcd,0x72, + 0x7d,0x9c,0xa3,0x3f,0x55,0xc8,0x53,0x10,0xc7,0xff,0x9d,0xb9,0xe9,0xc9,0x53,0x72,0x19,0x6c,0x97,0x92,0xb6,0xeb,0xfa,0xf5, + 0xe5,0x9a,0x9e,0x01,0xde,0x62,0xdc,0x7c,0x94,0xea,0x2f,0x1f,0x80,0x54,0xb9,0x8b,0x52,0x6d,0xbf,0x84,0x53,0x19,0xf8,0x5f, + 0x17,0x20,0x87,0x89,0x20,0xd8,0x63,0x50,0x5e,0x7a,0xea,0xf5,0x29,0x71,0x0c,0x62,0xc5,0xb7,0x47,0x61,0x01,0x37,0xf8,0xed, + 0x6f,0xb4,0xc1,0x8a,0x39,0x06,0xdd,0xcc,0xcf,0xd5,0xa1,0x1d,0xa2,0xc1,0x4e,0x31,0x72,0x01,0x64,0x89,0x78,0x34,0x49,0x4f, + 0x1a,0x1a,0x52,0x5c,0xa9,0xe9,0xd3,0x8e,0xaf,0x1f,0x66,0x41,0xd0,0x44,0x53,0x62,0x9f,0x6d,0x8c,0x06,0xee,0x9d,0x51,0x96, + 0xa8,0x19,0x8a,0xae,0x8d,0xb7,0x94,0xc8,0xc7,0x45,0xba,0x6a,0xe8,0xcd,0x93,0xab,0x9a,0x1e,0x6d,0x70,0x38,0x8f,0x9f,0x65, + 0x6c,0x72,0x02,0x2f,0x25,0x86,0xbc,0x1c,0xde,0x70,0xa6,0x59,0x94,0x25,0x97,0x0b,0x9a,0x7e,0x67,0x85,0xa6,0x07,0xef,0x0c, + 0x93,0x1f,0xcd,0x86,0xb0,0xdd,0x45,0x30,0x24,0x62,0x31,0x02,0x26,0x31,0xcf,0xb4,0x0c,0x42,0xca,0xdb,0xac,0xeb,0x55,0xe3, + 0x46,0x01,0x78,0xe3,0x47,0xb9,0xe8,0x25,0x6e,0x77,0x83,0x50,0x5c,0xa5,0xff,0x71,0xe9,0xef,0x5b,0x74,0xfd,0x4f,0x63,0x9a, + 0x6e,0xe7,0x1f,0x5f,0x19,0x02,0x09,0xec,0xe2,0x7f,0x7a,0xe3,0x53,0x52,0x79,0x99,0xa6,0x3b,0xf4,0x1b,0x1c,0x6c,0x87,0xb1, + 0x43,0xc9,0xa3,0x01,0x74,0xa7,0x05,0xfe,0x45,0xca,0xce,0x62,0x48,0x82,0x66,0xc8,0x62,0xc9,0xac,0x96,0xfd,0x7a,0x48,0xbe, + 0xac,0xd6,0xa1,0x16,0x97,0x4c,0x91,0x90,0xa2,0x5e,0x7a,0xce,0x71,0x85,0xbc,0x76,0xe4,0xc3,0x88,0xc8,0x84,0x09,0xd3,0xb6, + 0x23,0x8e,0x0d,0x70,0x60,0xd7,0x01,0x1e,0x60,0x6d,0x32,0x4f,0xab,0x43,0x4a,0x3d,0x85,0x58,0xfd,0xcd,0x27,0x4d,0xbd,0x2c, + 0x4a,0x9d,0x52,0x12,0xc0,0xc5,0xf2,0xbf,0x3d,0x62,0x89,0x8a,0x44,0x0b,0x73,0x61,0x27,0x21,0x89,0xc7,0x29,0x55,0xfc,0x18, + 0xa5,0xc9,0x47,0xe4,0x0b,0x22,0x02,0xaa,0xc4,0x57,0xdf,0xd7,0x8a,0x08,0xb9,0x01,0xbd,0x70,0x92,0x55,0xb2,0x4f,0xbb,0xe0, + 0x20,0xa8,0xc7,0x54,0x1f,0x2a,0x85,0x5c,0xe5,0x89,0x4d,0x47,0x78,0x3e,0xa6,0xe1,0x9a,0xb8,0xba,0x00,0x96,0x20,0x8a,0x7d, + 0xee,0x22,0x82,0xa1,0x12,0xfe,0xea,0x8d,0x09,0xd4,0x82,0x4f,0x3c,0x1f,0x85,0x6d,0xc6,0x34,0xae,0xd2,0x06,0x4d,0xb1,0x31, + 0x5a,0x33,0x35,0xc3,0x3f,0x7c,0xe8,0x90,0xf1,0xe8,0xce,0x3e,0xf4,0x62,0x19,0x50,0xae,0x1a,0x5a,0x69,0x49,0x50,0xc2,0xb6, + 0xad,0xd0,0x86,0xba,0x87,0x85,0xed,0xf0,0xe3,0x73,0xec,0x85,0xdf,0xb7,0x83,0x83,0xf4,0xf3,0x92,0xa6,0xff,0xba,0xa2,0xe9, + 0x8b,0x18,0x0f,0x7b,0x49,0xf8,0x53,0x3f,0x3a,0xf3,0x6d,0x19,0x54,0x8b,0xbb,0xd6,0x20,0xca,0x7c,0x42,0x0d,0x53,0xab,0x29, + 0x05,0x13,0x61,0x91,0x02,0xf1,0xb9,0x45,0x3c,0xc1,0x06,0xa1,0x4c,0x29,0xa1,0x29,0xaa,0x01,0x21,0x8d,0x1b,0x96,0x2f,0x2e, + 0x6b,0xfa,0x71,0x2e,0xbe,0xaa,0x85,0x1e,0xf9,0xdf,0xa5,0xf0,0x4d,0x20,0x0d,0x03,0x97,0xba,0x8c,0x37,0xa9,0x6b,0x9a,0x7e, + 0x9a,0xae,0xad,0xc3,0x08,0x6c,0xc2,0x7a,0x68,0x84,0x9f,0xb8,0xd4,0xb9,0xae,0xe9,0xdf,0x19,0x04,0x2f,0x50,0x3d,0x04,0x80, + 0x1b,0x25,0xe0,0xfb,0xcf,0xfb,0xa2,0x90,0x6a,0x34,0x4d,0xaf,0x33,0xf6,0x0c,0x7a,0x65,0x14,0x7e,0xcd,0xe4,0xe7,0x98,0x0f, + 0xdd,0x70,0x90,0x6a,0xd8,0xe7,0xd2,0x53,0x57,0x18,0xd4,0x14,0x5d,0x5f,0x40,0x57,0x96,0xc5,0xac,0x4f,0x14,0xe2,0x28,0x7b, + 0xc6,0x6e,0x99,0x25,0x5d,0xa9,0x17,0x35,0xe8,0xb0,0x8f,0xec,0xb0,0xfb,0x34,0xcd,0x9a,0xab,0xb1,0x0c,0x4a,0x68,0x12,0x7c, + 0xd0,0x97,0xae,0x0f,0xde,0x54,0xa3,0x1c,0x64,0xef,0x0c,0xf2,0x17,0x37,0xc0,0x9f,0x92,0xe1,0x87,0x1c,0xf6,0xa9,0x37,0x45, + 0xa2,0x8f,0x68,0xa5,0xb3,0x74,0x5d,0x3b,0xf3,0xe7,0x7e,0x72,0x24,0xe5,0xdb,0x02,0xa8,0x8e,0xed,0x58,0x87,0xf3,0xd8,0x0d, + 0xaf,0xa7,0xe2,0x47,0xd7,0xd8,0x29,0x5e,0x38,0x91,0x27,0xcf,0x62,0x8d,0x3c,0x9b,0x46,0x95,0xfb,0x7e,0x4c,0x94,0x47,0xd5, + 0x05,0xd1,0x29,0x5f,0x54,0x6e,0xd4,0x50,0x2f,0xf6,0x1b,0x42,0x95,0x41,0x45,0xec,0x27,0x77,0xd3,0x1c,0x94,0xc1,0x3a,0xeb, + 0xa7,0x74,0x38,0x44,0x39,0x10,0xab,0xc8,0xa9,0xe8,0x0a,0x4f,0x4f,0xab,0x67,0x71,0x1e,0x6a,0xc5,0xa6,0x3d,0x3c,0x01,0x7e, + 0xef,0x0f,0x9d,0x6a,0x34,0x05,0xc9,0xfe,0x60,0xc7,0x68,0x9a,0x71,0x4c,0xc5,0x0c,0x58,0xc1,0x31,0x4a,0x02,0x0f,0xf3,0x01, + 0xc8,0x66,0xb7,0xf9,0x5a,0x12,0xf1,0xb5,0x5e,0x88,0x13,0x8d,0xd0,0x0d,0xf5,0x54,0x6d,0x1d,0x14,0x23,0x98,0xc7,0x37,0x44, + 0x15,0xfb,0xa1,0x00,0x23,0xe9,0xe3,0x22,0xf4,0xc4,0x39,0xee,0x89,0x3d,0xb2,0xe5,0x02,0xce,0x62,0x33,0xfb,0xe1,0xc9,0xf3, + 0x18,0x64,0x7a,0xb2,0x90,0xcf,0xf2,0x2a,0x87,0x1c,0x11,0x25,0xae,0xc8,0xe5,0x5d,0x90,0x49,0x25,0xf0,0x5a,0x01,0x06,0xda, + 0xe2,0xc1,0xc8,0x09,0x86,0x6c,0x05,0x50,0xcb,0xff,0xdb,0x44,0xb7,0x6c,0x2b,0xe1,0x35,0xca,0x5b,0x66,0x43,0xed,0x79,0x19, + 0x1c,0xa3,0x1f,0x9d,0xe8,0xae,0x38,0xdc,0xcb,0xa7,0xb8,0x0f,0xd8,0xa4,0xbb,0x54,0x5d,0xbf,0x91,0xe9,0x7a,0x11,0x9c,0x86, + 0x5c,0xfe,0x73,0x26,0xfc,0x30,0x2e,0x0e,0x63,0x06,0xbb,0x62,0x1c,0x2b,0x20,0x5e,0x09,0xc2,0x6a,0x18,0x81,0x3e,0xf9,0x14, + 0x6e,0xda,0x07,0x3e,0x14,0x03,0x4e,0xec,0x3f,0x5f,0x46,0x23,0x97,0x52,0x0c,0x22,0xd1,0xa8,0xeb,0xfd,0xf4,0x41,0x39,0x74, + 0x40,0x0f,0xb9,0x41,0x09,0xb8,0xa3,0x22,0xf9,0x58,0x74,0xfd,0x7d,0xc3,0xe1,0x3a,0xa5,0x43,0x28,0x3d,0x9b,0xc2,0x4a,0xe9, + 0x2c,0x84,0x60,0x31,0x36,0x40,0x88,0x58,0x87,0x48,0x96,0xc7,0x98,0xf4,0x83,0xd9,0xb0,0x36,0x22,0x9f,0x80,0x23,0x18,0x43, + 0x5f,0x37,0x33,0x77,0x12,0x52,0x93,0x55,0xd7,0xe3,0xa6,0x35,0xbd,0x5f,0x1e,0x10,0x81,0xd0,0x02,0x1b,0xf0,0xf4,0x80,0x5a, + 0x43,0xe3,0x98,0xce,0xb9,0x24,0xd9,0x74,0x3d,0x9d,0xeb,0x7a,0x16,0xf0,0x5b,0x7f,0x2c,0xa4,0xbf,0xa7,0x63,0x3b,0x70,0x69, + 0xf7,0x26,0x5d,0x4f,0x98,0xd2,0xf4,0x71,0x7a,0x77,0x0f,0xec,0x81,0x2e,0xbc,0xc7,0x9c,0x03,0xaa,0x74,0x9b,0xf1,0xa3,0x1f, + 0x32,0x42,0x54,0xcb,0xdb,0x4b,0x99,0x2b,0x0c,0x72,0x57,0xcc,0x41,0x27,0x6c,0x54,0xff,0x95,0x81,0x1f,0x16,0xf2,0x42,0xec, + 0xc0,0x44,0x60,0x92,0xa3,0xf1,0xd9,0xe7,0xf3,0xc6,0x90,0xf2,0x3f,0x87,0xd0,0xcd,0xf9,0x78,0x10,0x64,0x69,0x8b,0xf1,0xcc, + 0x5d,0xe8,0xfa,0x2a,0x3c,0xe3,0x4a,0x3f,0x96,0xe2,0xce,0x42,0x68,0xc0,0x34,0xbc,0x27,0x03,0xce,0x22,0x93,0xe2,0x8d,0xb7, + 0xaa,0x49,0xd7,0x47,0xe1,0x9b,0x78,0xe8,0x81,0x10,0xfa,0xc7,0xff,0x01,0x0d,0x54,0x75,0x7c,0x94,0xc7,0x16,0x9d,0x73,0xef, + 0xcc,0xb7,0xbb,0x6c,0x82,0xd7,0xdd,0xdd,0x5d,0x7e,0xb8,0x3e,0xa9,0xb7,0x50,0x87,0xba,0xf7,0x57,0x57,0x3c,0xee,0xee,0x0a, + 0xc4,0xd8,0x04,0x8d,0xbb,0x7b,0x70,0xf2,0x12,0x2c,0x82,0x24,0x68,0xdc,0xda,0x74,0xe7,0x7d,0xff,0x1e,0x1b,0xbd,0x67,0x91, + 0x38,0x30,0xe0,0xd4,0x8b,0x1e,0xd5,0x7a,0x50,0xe5,0xc2,0x83,0xbe,0x5e,0xaf,0x22,0x65,0x2d,0x2e,0x50,0x01,0xfe,0xac,0xc2, + 0xe2,0x1f,0x62,0x39,0x48,0xbd,0xb9,0x9b,0x36,0xc9,0x41,0x4b,0x93,0xda,0x3c,0xdd,0xdf,0x1a,0x61,0x4f,0xe3,0x93,0x96,0x1b, + 0x43,0xf0,0x62,0x0b,0x05,0x72,0x99,0xed,0xe5,0x76,0x6b,0x17,0x6a,0x8c,0x56,0x84,0xce,0x6e,0x45,0x91,0x6b,0x1e,0xd2,0x8c, + 0x4f,0xda,0x39,0x95,0x7a,0xe4,0x3e,0x8c,0xf0,0x7a,0x64,0xf1,0x0f,0x1d,0x53,0x27,0x29,0xda,0x72,0xfb,0x63,0x21,0x58,0x4f, + 0xa5,0x70,0xe3,0x35,0xa3,0xdc,0x8c,0x54,0xb9,0x3a,0x57,0x9e,0x47,0x35,0xee,0xe3,0x40,0xf2,0x33,0x56,0xec,0xb3,0xd6,0x1a, + 0xb6,0x6a,0x2e,0xe7,0xdf,0x3f,0x2d,0x47,0x23,0xd5,0x63,0x3b,0xed,0x53,0x43,0x7c,0x47,0x29,0x36,0x51,0xa5,0x8c,0x26,0xc3, + 0x1f,0x7f,0xf1,0xfc,0x7e,0x8e,0xc0,0xa0,0xf2,0xa4,0x2f,0xbc,0x29,0x42,0x26,0xd0,0x89,0xa9,0x4e,0x59,0x43,0x85,0xfc,0x6b, + 0x33,0xd5,0xda,0x4f,0xf3,0xab,0xad,0x38,0xa4,0x96,0x05,0x5b,0xa2,0x71,0x89,0x93,0xd8,0x07,0xbd,0xe4,0x25,0x53,0x31,0xc0, + 0x4e,0x9a,0xa4,0xa7,0x9d,0x5c,0x81,0xf3,0x46,0x98,0x4a,0xc7,0x94,0xcb,0x7c,0x81,0xae,0x16,0x05,0x7d,0x4e,0xfd,0xdb,0x3d, + 0x5a,0x57,0xbb,0xd4,0x60,0xd4,0xf8,0xf1,0xc7,0x2d,0xc8,0xe0,0x53,0x08,0x53,0x35,0x58,0x11,0x8b,0xa3,0x9c,0x4c,0xaf,0x35, + 0x50,0x95,0x0c,0xa3,0x64,0xeb,0x37,0x0f,0x6c,0xe6,0x0b,0xb8,0x61,0x80,0xd2,0xb1,0x0f,0x2e,0x7f,0xf8,0xd3,0x69,0x3a,0x46, + 0x2d,0x3c,0xe7,0x10,0x8f,0xe2,0x8a,0x7c,0xb4,0xd0,0xb4,0x3c,0xca,0x46,0x39,0x42,0xe4,0x79,0x5a,0x6e,0x13,0xe3,0x13,0x4e, + 0x1d,0x70,0xb7,0xd6,0x9e,0x32,0x9c,0x72,0xa8,0x17,0xc9,0x32,0x05,0xc7,0xe4,0x0b,0x2d,0xdc,0xc9,0x6e,0xfc,0x59,0xb1,0xeb, + 0xea,0x46,0xea,0x20,0x29,0x6c,0xe3,0x4e,0xbd,0xfd,0x0e,0xad,0x53,0xe4,0x7b,0xdd,0xf2,0xd6,0xe7,0xd6,0x49,0x71,0x97,0x69, + 0xbc,0xe9,0x4e,0xad,0xe3,0xe5,0x67,0xb5,0x14,0x45,0x6d,0xd0,0xa4,0xc4,0xca,0x49,0xa7,0x5e,0x68,0xa6,0x25,0x62,0x45,0x06, + 0x5e,0x38,0x0d,0x2f,0x7c,0xb2,0xc6,0x22,0x8e,0xb1,0xd6,0x8b,0xee,0xd5,0xba,0xd8,0x3e,0x23,0x8f,0x1c,0x28,0x53,0x37,0x0e, + 0xc9,0x23,0xe8,0x43,0x14,0x92,0xf8,0x24,0x94,0x48,0x99,0xa1,0x75,0xee,0x13,0x5a,0x27,0xd0,0xb4,0x40,0xec,0x20,0x6f,0x6e, + 0xc5,0x24,0xbe,0x98,0x25,0x36,0xce,0xd6,0xfa,0xaf,0x27,0xb5,0x4e,0xa2,0x3b,0x2a,0xb9,0x10,0x71,0xfc,0xb1,0x87,0x4a,0x40, + 0x3f,0x3c,0x11,0x3d,0xa5,0xc8,0xea,0xad,0x6e,0x3a,0x82,0x3d,0x14,0xad,0xde,0x4f,0x91,0x1e,0x94,0x6a,0x2f,0x94,0xff,0xfd, + 0xa6,0x84,0x5f,0x4c,0xc1,0xca,0xad,0x2a,0x0c,0xde,0x32,0x9b,0xfe,0x70,0x22,0x5b,0xee,0x83,0x12,0x0f,0x5f,0xa1,0xf5,0xf3, + 0x4f,0x69,0x1d,0x4c,0xe2,0xb1,0xb3,0x88,0xe1,0x27,0x5e,0xdd,0x81,0x55,0xa2,0x47,0x68,0x3d,0xf2,0x9a,0xd6,0x6e,0xf0,0x95, + 0xde,0x68,0xc7,0x6b,0x43,0x28,0x81,0x37,0x97,0xc8,0x3e,0xfa,0xd0,0x9f,0x6a,0x91,0x88,0x17,0x3d,0xa9,0xc5,0xfa,0x46,0xb8, + 0xb1,0x87,0xeb,0x54,0x28,0x52,0xa6,0xe4,0xb9,0x14,0xc3,0xd7,0xd8,0x6d,0x3f,0x63,0x0d,0x73,0xd9,0x81,0xcd,0xb4,0xa6,0x17, + 0x63,0xb4,0xbc,0x84,0x4f,0xc0,0x97,0x52,0xd4,0x04,0x6a,0xa5,0x18,0xc7,0x29,0xf8,0xdb,0x92,0x0d,0x6d,0x2b,0x92,0x5d,0x86, + 0xa7,0xca,0xe1,0x16,0x59,0x85,0x3a,0x9b,0x3b,0x4d,0x20,0x4b,0x0d,0xa0,0x85,0x9d,0xe8,0xa1,0x4a,0x76,0xb9,0x44,0x7f,0x4b, + 0x77,0x4c,0x2a,0x7b,0x27,0x65,0x90,0xb7,0xb5,0x8c,0xb3,0x28,0x98,0x37,0x60,0x97,0x8c,0xe4,0x3a,0x2a,0xa6,0x45,0x01,0x74, + 0x41,0x4e,0x3f,0xc3,0x59,0xc6,0xf2,0x5e,0x4b,0x01,0x46,0xad,0x17,0x6c,0xab,0x3f,0x2c,0x72,0xd9,0x49,0xb1,0xbc,0xae,0x9d, + 0x3c,0x39,0x6b,0x66,0x87,0x9c,0xa0,0x02,0xdb,0x55,0x19,0xc6,0x31,0xb9,0x0f,0xff,0x73,0x1d,0xe5,0x70,0xae,0xa4,0xa5,0x83, + 0x68,0x45,0x39,0xda,0xd4,0xdd,0xbb,0xf1,0xe9,0xa3,0x1d,0x58,0xf7,0x37,0x1a,0xf1,0xc2,0x47,0xe3,0xec,0x65,0x09,0xe0,0x49, + 0x6c,0xa5,0x75,0x31,0xa8,0xa0,0xf7,0x86,0x5c,0x3b,0x54,0x16,0x97,0xd0,0xb7,0x87,0xa8,0xcf,0x92,0xcd,0x21,0x34,0x88,0x27, + 0x87,0x4d,0xfb,0x71,0xa4,0xca,0x4f,0x13,0x54,0x3d,0x6d,0x54,0xf3,0x8b,0x65,0x1c,0xc2,0xed,0xe9,0x48,0xe3,0x03,0xd8,0x04, + 0x37,0x24,0xf2,0xc3,0x7b,0xd0,0x41,0x7b,0xb8,0x87,0xd4,0x26,0xaa,0xc1,0xa7,0x3b,0xf8,0xce,0x33,0x32,0x9b,0xd3,0x0d,0x37, + 0xda,0x4f,0x6d,0xf4,0xf1,0x7b,0xbf,0x88,0x5f,0x02,0x29,0x94,0x9e,0x8d,0xe4,0x1c,0x28,0xf1,0x9f,0xa9,0x5a,0x4f,0x7e,0xa2, + 0xf5,0xec,0x35,0x9f,0x4e,0x3f,0x41,0x31,0xb4,0x9b,0x1d,0x30,0x44,0xa1,0xf9,0xd6,0x5b,0x6e,0x15,0xe2,0x8f,0xbb,0x66,0xd4, + 0x63,0x37,0x8d,0xe2,0x9b,0x3e,0x04,0x53,0x0a,0x94,0xf8,0x72,0xa6,0xd6,0xbb,0x6f,0x13,0xa2,0x0f,0x73,0x17,0x85,0xa0,0x95, + 0x1e,0xce,0xc0,0x06,0xac,0x12,0xab,0xda,0x9c,0x9a,0xee,0x14,0x62,0x18,0xc3,0x16,0x07,0x15,0x20,0x9b,0x06,0xa9,0x0d,0xb9, + 0xd2,0x8f,0xdb,0x28,0xd5,0x08,0x50,0x1e,0xe6,0x48,0x57,0xd1,0x9a,0x87,0x02,0x71,0x16,0x15,0x70,0x93,0x6d,0xd6,0x49,0x97, + 0x47,0x12,0x6c,0xe5,0x86,0xd3,0xe8,0xa6,0x08,0x6a,0x93,0xb9,0xd6,0xf3,0x9c,0xa0,0x6a,0xf0,0x17,0x2a,0xa4,0x43,0xd6,0xc8, + 0x22,0xeb,0x00,0x0d,0x63,0x4c,0x6d,0xe4,0x0e,0xda,0x85,0x3b,0x42,0x68,0x8b,0xf2,0x47,0x06,0xd7,0xc8,0x44,0x55,0x40,0x75, + 0x32,0x84,0xfc,0xe5,0x76,0xde,0xc5,0xf7,0x86,0x72,0x3f,0x1c,0x18,0x55,0x9d,0xc8,0xa5,0x71,0x5a,0xd0,0xac,0x06,0x8c,0x51, + 0x97,0x8f,0x2f,0x72,0x3a,0xbe,0x9f,0xb1,0x9e,0xb6,0xcd,0xda,0x6d,0x04,0x51,0x2a,0xa5,0x73,0x24,0x92,0xf0,0xfc,0x55,0x7e, + 0xdc,0xa7,0xde,0x2d,0x82,0x8f,0x4c,0x47,0x3a,0x07,0x70,0x12,0x92,0x68,0x0c,0xd5,0x18,0x52,0x6e,0xe4,0xc9,0x09,0xc6,0x7f, + 0xb6,0x19,0x0e,0x1c,0x35,0xe2,0xa5,0x13,0xbb,0xe4,0xe7,0xfe,0x78,0xb6,0x0f,0xf9,0x26,0x11,0x25,0xef,0x39,0xeb,0x1a,0x41, + 0xcd,0xf6,0x7b,0x63,0xe8,0xbb,0x9b,0x9b,0x70,0x9c,0xb3,0x38,0xd5,0x3e,0x46,0xdb,0xe5,0xd3,0x99,0x53,0xf6,0xab,0x6a,0x35, + 0xa3,0x19,0x5f,0xb9,0xd3,0x37,0x1b,0x8c,0x1b,0x3e,0xcc,0x47,0xa5,0xcb,0xf4,0x5c,0x97,0x56,0x44,0x59,0x3e,0x6c,0x55,0xaf, + 0xbc,0xfa,0x4b,0x9f,0x7c,0x37,0x85,0xb2,0xe0,0xb0,0xde,0x54,0xcf,0x5d,0xfc,0x70,0x0e,0xe2,0x11,0x4f,0x31,0xf4,0xbb,0xa8, + 0xc7,0x47,0xb7,0x34,0x73,0x85,0x51,0x8b,0x7a,0x78,0xe1,0x37,0x2e,0xa4,0x38,0x58,0xf6,0xd3,0x01,0x1c,0xa5,0x13,0xfc,0xdc, + 0x65,0x53,0x23,0x97,0x25,0x40,0x8a,0x91,0xcb,0x4e,0xbd,0xf5,0x61,0x21,0x5a,0xa8,0x14,0x73,0x3c,0x10,0x44,0x55,0xa4,0xc4, + 0x77,0x43,0x4e,0x7d,0xfd,0x43,0x42,0xf4,0xf0,0x56,0x94,0x50,0x3e,0xd9,0xb6,0x62,0xa7,0xa1,0xa5,0x12,0x21,0x23,0x4e,0xfd, + 0x9d,0x49,0xbc,0xdf,0x85,0x33,0x88,0x93,0x99,0xe4,0x8f,0x6b,0x1d,0x98,0x22,0x76,0xfc,0xe3,0xd4,0xae,0xcb,0x84,0xe8,0xb5, + 0xac,0x9b,0x1e,0x4e,0x45,0x66,0x25,0x57,0x4c,0x7d,0xec,0x80,0x7c,0xe7,0xd1,0x66,0xce,0x43,0x0c,0x1d,0x84,0x1f,0xf9,0x4d, + 0xff,0x52,0x8a,0x6f,0x84,0xd6,0x85,0x4b,0x84,0xd8,0x42,0x73,0xb6,0x49,0x8b,0x3b,0x3d,0x21,0xc5,0x22,0x68,0x1d,0x73,0xaf, + 0x10,0xe1,0x3c,0xaf,0x1b,0xcb,0xb2,0xe1,0x09,0x29,0xf6,0x90,0x89,0x2d,0x15,0xe2,0x0c,0xfd,0x27,0x80,0x5c,0x56,0xae,0x50, + 0x82,0x58,0xeb,0x8d,0x8b,0x85,0x18,0xa6,0x15,0xe7,0xe4,0xfb,0x56,0x3f,0x5c,0xc6,0xfd,0x52,0x7c,0x65,0xa2,0xbb,0x4d,0x9d, + 0xc6,0x35,0xcb,0xe6,0xe4,0xe3,0x36,0x29,0xb6,0x9b,0xc8,0x29,0x13,0x69,0xc0,0xcc,0x4c,0x7a,0x7c,0xf5,0x62,0x25,0x7e,0x92, + 0x5a,0xdf,0x62,0x6e,0xed,0x75,0xfb,0xd5,0x5f,0x35,0xc2,0xea,0x8b,0x4f,0xad,0x22,0xd2,0xd0,0xfa,0x8f,0xfb,0x84,0x98,0xe7, + 0x4e,0x0d,0xe8,0x40,0x9d,0xa5,0x18,0xe3,0xb4,0x1f,0xc3,0x94,0x86,0x00,0x6a,0xa4,0x95,0x4b,0x95,0xe8,0xb1,0x69,0xfd,0xa0, + 0x19,0x54,0x42,0x1f,0xfb,0x51,0x2d,0xde,0xb1,0xdd,0xf3,0xba,0x14,0xc7,0x4d,0x70,0x8d,0xb9,0xfd,0x2e,0xdc,0x59,0x8f,0x0f, + 0xae,0xf5,0x84,0x12,0x6f,0xda,0xb5,0x5e,0xb9,0x50,0x88,0x44,0xae,0xc5,0xd5,0xef,0x75,0x63,0x7e,0x2a,0xba,0x20,0x45,0xb1, + 0x09,0x77,0x2f,0x10,0xa2,0x00,0xd3,0x67,0xfb,0x20,0x15,0xd1,0x50,0xe2,0x79,0x57,0xad,0x3f,0x9a,0x2f,0x84,0xfd,0x27,0x4f, + 0xdc,0x39,0x67,0x3f,0xde,0x58,0xe7,0x22,0x32,0xcd,0x51,0x88,0xb8,0x4b,0x88,0x2a,0xfa,0x36,0xcf,0x3e,0x63,0xb3,0x3c,0x4e, + 0x7e,0xf4,0xf8,0xbd,0x71,0xaa,0x9d,0xce,0xa2,0xd0,0x3e,0x8c,0x1e,0x1c,0x22,0x35,0x46,0x3e,0x28,0xa1,0x15,0x13,0x64,0x88, + 0x8b,0xe6,0x40,0xf9,0x9b,0xb9,0x89,0xf4,0xd0,0x13,0xdb,0xe0,0x87,0x00,0x78,0x90,0x3f,0x9e,0xfb,0x4d,0x89,0x16,0x93,0x49, + 0x5b,0x24,0x44,0x05,0xee,0xbd,0xaf,0x0d,0xbd,0x78,0xdd,0x70,0xc0,0x22,0xbe,0x98,0x66,0xd6,0xfa,0x1c,0x53,0x8f,0x37,0x77, + 0xa1,0x1e,0x8b,0x4f,0xf2,0x3b,0x5f,0x79,0x71,0x1a,0xfe,0x1d,0x28,0x0d,0x71,0xc9,0xb4,0x5c,0x7a,0x50,0x08,0x77,0xd8,0x3c, + 0xd0,0x4d,0x6d,0xf8,0xcf,0x5d,0x07,0x68,0x07,0x5e,0x36,0xc4,0x77,0xd3,0xb5,0xfe,0x64,0xae,0xc9,0x30,0xbb,0xc6,0xf1,0x8f, + 0x21,0x38,0x2c,0x47,0x78,0x0f,0x3d,0x66,0x88,0x04,0x93,0x09,0x7e,0xce,0x3c,0x18,0xee,0x3b,0x64,0xa2,0x0f,0xb6,0xe1,0x3c, + 0x1d,0x82,0xcd,0x21,0xa5,0x38,0x68,0x52,0x33,0xcd,0xb5,0x92,0x31,0xe5,0xf7,0x93,0xb8,0xbb,0x07,0x4a,0xd8,0x66,0x98,0x39, + 0x8f,0x09,0xd1,0x84,0xcf,0x66,0xc6,0x61,0x23,0x05,0x60,0x69,0x30,0xdb,0xc5,0x27,0xe6,0x98,0x27,0x3c,0x2d,0xc4,0x52,0x4f, + 0x2c,0x5f,0xd5,0x40,0xae,0x8f,0xad,0x4d,0x40,0x10,0x36,0xd1,0x47,0x81,0xf0,0xe1,0x4c,0x3c,0x1e,0xc4,0x7d,0x68,0x84,0xb7, + 0x34,0xc4,0x2d,0xa6,0xd2,0xf9,0x84,0x10,0xdf,0xee,0xc3,0x31,0x6c,0xc4,0x55,0xa9,0x68,0xa4,0x5a,0xbe,0x36,0x5e,0x5a,0x44, + 0xa6,0x49,0x39,0xcc,0x47,0xfc,0x7a,0xd6,0xd4,0x17,0x4a,0xe1,0x83,0x7e,0x5a,0x75,0xcf,0x6f,0x5b,0x38,0x03,0x52,0xdc,0xc9, + 0x5a,0xdf,0xb1,0x56,0x08,0x6f,0xba,0xc3,0x83,0xdb,0xf0,0xc7,0x2e,0xac,0x12,0x7b,0x2f,0x38,0xf5,0xed,0xf9,0x42,0x9c,0xb2, + 0xee,0x50,0x75,0xb6,0x76,0x78,0x2b,0x8d,0x4f,0x43,0xd1,0x62,0xf8,0x72,0xbb,0x8c,0x46,0x87,0x65,0x87,0xe5,0x08,0x3f,0xe1, + 0xab,0x92,0x39,0x43,0x3e,0x3b,0x2a,0xab,0xf0,0xf8,0x0e,0x94,0xd8,0x33,0x54,0xe7,0xd4,0x00,0x23,0x81,0x9f,0x8f,0x33,0x42, + 0x6c,0xad,0x46,0x1b,0x75,0xda,0xba,0x55,0x92,0x6b,0x0c,0x37,0xdb,0xb7,0xc9,0x8d,0x96,0xdd,0x6a,0xbb,0x2d,0xc6,0x96,0x30, + 0x25,0xc1,0x70,0xb3,0x79,0xc9,0xfd,0xd7,0xf4,0x5a,0xce,0x4e,0x8f,0xa2,0x93,0x53,0x42,0x31,0x69,0x8d,0x95,0x5f,0xf4,0xa0, + 0x4b,0x2e,0x89,0x92,0x0e,0x9a,0x16,0x4d,0x25,0xf8,0x07,0x79,0x72,0xcd,0x04,0xd5,0xd1,0x39,0xe3,0x04,0xed,0xe2,0xd9,0xee, + 0x96,0x62,0xca,0x23,0x07,0x8e,0xa9,0x5b,0xff,0xe1,0x2a,0xec,0x54,0x2f,0x38,0xcd,0x76,0x3b,0xcd,0x5d,0x5c,0x68,0xeb,0xa6, + 0x15,0x5f,0xb6,0x91,0xb5,0x95,0x02,0x91,0x41,0x39,0xf4,0x4b,0x30,0x67,0x19,0x91,0xd2,0x89,0x8f,0x0f,0xaa,0x2b,0xc3,0xd1, + 0x4e,0xbb,0x31,0x41,0xb9,0x78,0x2a,0x0e,0x23,0xf2,0x30,0x7a,0x70,0xda,0x16,0x8a,0x74,0xfc,0x54,0xc6,0x0e,0x54,0xaa,0x1a, + 0x72,0xe3,0x5b,0x77,0xf2,0x08,0x92,0x6c,0x57,0xac,0x2e,0x40,0x84,0x7c,0x2c,0xc1,0x7a,0x91,0xcf,0x52,0x1a,0x17,0xca,0x39, + 0x71,0xd4,0x05,0x2f,0x78,0xd3,0x19,0x0a,0x45,0xb5,0xba,0x2d,0x02,0xdf,0x79,0xe3,0xa7,0x4b,0x24,0x9b,0x6e,0x4a,0xb4,0x1d, + 0x92,0x2f,0xfd,0x1c,0x4e,0x1b,0xb0,0x2e,0x85,0xe7,0x9c,0x21,0x3f,0x6a,0x40,0x11,0x6d,0x42,0x3d,0x2e,0x61,0xf9,0xe7,0x07, + 0xb0,0xf6,0x04,0x9a,0xf0,0x5c,0x9d,0xa5,0xc7,0xa8,0xe0,0x68,0x4a,0x23,0x51,0x82,0x9f,0xae,0xbb,0x80,0x50,0x9a,0xbb,0x4a, + 0x3c,0x29,0xb4,0x76,0x66,0x08,0xa1,0xf9,0x8d,0x0c,0x3a,0xcc,0x39,0xb8,0xfb,0x97,0x60,0xec,0x40,0x10,0xdc,0x11,0xa6,0x0a, + 0x51,0xca,0xfb,0x39,0x8c,0x43,0x31,0x35,0x92,0x23,0xe9,0x1b,0x1f,0x1c,0xa7,0xe3,0x38,0x2a,0x37,0xe2,0x34,0x92,0x50,0xc5, + 0x6b,0x06,0x5d,0xf6,0x1b,0x7e,0x96,0x00,0xa2,0xcd,0x38,0x8f,0xa7,0x1e,0x38,0x42,0xb9,0x7c,0x06,0xef,0x8f,0x23,0x1b,0x7e, + 0xd8,0x66,0x4f,0xa7,0xc4,0x59,0x6f,0xa5,0x90,0x03,0x7f,0x63,0xce,0x8b,0x77,0x67,0xa2,0x11,0xeb,0xad,0xfb,0x55,0x0b,0x3d, + 0x97,0x45,0x31,0xf4,0x82,0x37,0x0d,0x50,0x07,0x25,0xcf,0x28,0x31,0xaa,0xb8,0x18,0xa9,0x26,0x9b,0x47,0x29,0x88,0x42,0x2c, + 0x96,0x3f,0xb3,0x4f,0x7a,0x92,0x3f,0xde,0x3b,0xa0,0x22,0xf1,0x6e,0x02,0x62,0xf9,0xc1,0xdb,0xf3,0x64,0x3f,0xbe,0x8b,0xe4, + 0x1d,0xd4,0x4e,0xf7,0x56,0x48,0x7f,0x1a,0xa2,0xeb,0x3d,0x31,0x04,0x07,0xf9,0xa2,0x04,0x17,0x51,0xc4,0xdf,0x45,0x63,0xed, + 0x16,0x0c,0x70,0x96,0x4c,0x42,0x33,0xf6,0x23,0x03,0x57,0xce,0x3b,0x0f,0x5f,0x0e,0xa6,0x23,0x48,0x54,0x45,0xd4,0x81,0x4b, + 0xb8,0xb1,0x83,0xf6,0x61,0x69,0x26,0xdc,0xd1,0x84,0x67,0xba,0x11,0x8d,0x58,0xda,0x80,0x9f,0xaf,0x31,0x6f,0x0e,0xab,0x1a, + 0x30,0x77,0xa6,0x07,0x1c,0xbc,0x0b,0x7b,0x50,0x04,0x37,0xbc,0xbd,0xc5,0xfa,0x3f,0x6b,0x19,0xce,0x71,0x21,0xf2,0xa8,0x13, + 0xc6,0x95,0xab,0xf7,0xb0,0x2f,0xb2,0xb8,0x88,0x7b,0x65,0x13,0xfa,0x31,0x41,0xff,0xfe,0xbc,0x15,0xef,0x2f,0x0a,0xa4,0x9d, + 0x78,0xdb,0x8b,0x9e,0x6a,0x96,0x95,0x68,0x47,0x14,0xbb,0xd3,0xef,0x52,0x0c,0x0c,0x99,0xdd,0x9c,0x29,0x44,0x3c,0xae,0xb9, + 0xd2,0x0d,0x5e,0xf8,0xdc,0x10,0x29,0x66,0x01,0xdf,0x9f,0x25,0xc4,0x10,0xae,0xb0,0xfb,0xa3,0x02,0x2b,0xbb,0x51,0x6d,0xe6, + 0x8e,0x41,0x89,0x27,0xff,0x76,0x6a,0x9f,0xed,0x42,0xf8,0xd3,0xe7,0xa5,0xe8,0xa4,0xef,0xaf,0xbb,0xa5,0x1d,0x52,0xdc,0x68, + 0x36,0xb3,0x34,0x0d,0x1f,0x2e,0x3e,0x8d,0x00,0x5a,0x57,0x67,0x42,0x2c,0xb5,0x9e,0x56,0x24,0x44,0x07,0x79,0xd3,0xfd,0x47, + 0x91,0x4d,0x0f,0x4b,0x71,0xbb,0x89,0xad,0x30,0xb1,0x33,0xf8,0x34,0x17,0xad,0x78,0xf8,0x6b,0xbb,0x88,0x34,0xdb,0xa1,0xb6, + 0x4c,0x88,0x1a,0xe3,0x86,0x0b,0x2e,0x5b,0x29,0xd2,0x7a,0x9c,0x52,0x38,0x82,0x3d,0xed,0x85,0xb2,0x5a,0x7d,0xd3,0x3f,0xab, + 0x9d,0xb7,0x4e,0x6f,0x30,0x06,0x91,0x4c,0x07,0xf0,0xe6,0xff,0x01,0x0d,0x53,0x05,0x78,0x53,0xc9,0x16,0x9e,0xff,0x9c,0x99, + 0x7b,0x6f,0x92,0xe2,0xac,0xbb,0x20,0xcf,0x05,0x5b,0x17,0xf6,0xad,0xbb,0x62,0xdf,0xba,0xbb,0xbb,0xd5,0x42,0xea,0xa5,0xee, + 0x42,0x83,0x6e,0xa9,0x13,0xea,0x04,0x0b,0x9e,0x52,0xa1,0x5e,0x9c,0xa2,0x0b,0x35,0x5c,0x3a,0x2f,0xe3,0x2e,0xbf,0xdc,0x24, + 0xea,0x0d,0xad,0x9d,0x1e,0x21,0xc2,0xa9,0x06,0x8d,0x56,0x1a,0x45,0x8d,0x0a,0x45,0x3a,0x85,0xe0,0xb8,0xe9,0xe1,0x5b,0xba, + 0x29,0x14,0x77,0x7e,0xf8,0x0f,0xb7,0x34,0x7d,0x58,0x8d,0xe3,0xc0,0x30,0xbe,0x5a,0x4b,0x9b,0x91,0x8d,0x2a,0x6c,0x91,0x87, + 0xf1,0x27,0xae,0xfa,0x7e,0x46,0xbb,0x11,0x03,0x2f,0x25,0xd2,0x4b,0xf7,0x79,0xd5,0xf4,0xff,0xec,0xa6,0xb3,0xfc,0xc2,0xcc, + 0x60,0x6a,0x56,0x5b,0xe5,0xb5,0xcb,0xa9,0x15,0x49,0x34,0x48,0xf1,0xa4,0xc2,0x68,0x35,0x9e,0xb5,0xc4,0xc4,0x91,0x5a,0x7b, + 0xaa,0x84,0xc8,0xa4,0xff,0xb4,0xf2,0x94,0x25,0x18,0xa6,0x41,0x95,0xcb,0xa5,0x14,0xe4,0x95,0x29,0xb4,0x8d,0x0b,0xf9,0x06, + 0xf1,0xec,0x18,0xad,0x7f,0xac,0x10,0x62,0x2f,0x3f,0xd5,0x49,0x5b,0x10,0x8e,0x59,0x7d,0xa8,0xc0,0xcc,0x39,0xa1,0xea,0x8d, + 0x3f,0xe4,0x4a,0xce,0x93,0x57,0xad,0xa1,0x46,0x44,0x20,0x97,0x72,0xb9,0x0d,0x0b,0xd0,0x8b,0x66,0xf5,0x68,0x24,0x32,0xa8, + 0x0a,0x19,0xf0,0x5a,0xf5,0xb2,0x5e,0xfe,0xee,0xb3,0xdd,0xb2,0x8d,0xb2,0x69,0xce,0x3a,0x5e,0x81,0xad,0xbc,0xca,0x3a,0x64, + 0x6b,0x93,0xc9,0xbc,0x91,0xec,0xa9,0x48,0x91,0xeb,0x69,0xb1,0xe9,0xc6,0x7a,0xe4,0x59,0x3e,0x96,0x62,0x77,0xe0,0xba,0xf2, + 0x32,0x21,0xfa,0x10,0x81,0x9d,0x34,0xf6,0xed,0x0c,0xbc,0x21,0x66,0x8c,0xd3,0x7a,0x7c,0xbb,0x10,0xcb,0x8c,0xbd,0x14,0x63, + 0x26,0x23,0x06,0x07,0x70,0x86,0x27,0xe5,0x19,0x2d,0x2a,0xdc,0x16,0x6e,0xc4,0xc9,0x77,0xcb,0xf9,0x84,0xbc,0xa4,0x7e,0x4f, + 0xe5,0x2a,0x34,0xf3,0xf8,0x99,0x7e,0x6c,0xc7,0xc7,0x0d,0x86,0x86,0x5f,0xa6,0xb1,0xcb,0x7c,0xbc,0x52,0x0e,0x21,0x9a,0x0f, + 0x50,0xbd,0xbc,0x25,0xc4,0x16,0xcb,0xd1,0x4a,0xb4,0xf0,0x16,0x94,0x20,0x81,0x86,0xf8,0xab,0x06,0xb9,0x8d,0x2e,0x92,0x17, + 0xcf,0xbc,0x9a,0x85,0x2c,0x1c,0xa3,0x17,0x86,0x65,0x0c,0x9f,0x31,0x53,0xa9,0xce,0x9e,0xad,0x96,0x39,0x2e,0x21,0xd2,0x18, + 0x3f,0xeb,0xb9,0xf7,0xde,0xb8,0x34,0xe2,0xe9,0x72,0xd9,0xab,0x22,0x8d,0xa3,0x94,0x4c,0x6f,0x7f,0x52,0x89,0x36,0x33,0x5b, + 0x5e,0x90,0xd3,0x77,0x52,0x16,0x1d,0xe1,0x47,0xf3,0xe9,0x28,0x1a,0xc9,0x29,0x6b,0xb1,0x94,0x7f,0x19,0xc2,0xcb,0x59,0x14, + 0x83,0x6a,0x24,0x59,0xeb,0x31,0xdf,0x16,0x8d,0xe7,0x5e,0x8d,0xc5,0xef,0xad,0x7c,0xcf,0x12,0x95,0xc6,0x25,0x2a,0x52,0x5e, + 0x1e,0x59,0x64,0x6e,0x33,0xaf,0xec,0xb5,0xd5,0xd2,0x16,0xe3,0xa6,0x1c,0xbb,0xd3,0x4a,0xb2,0xb7,0xa8,0x58,0x6c,0x43,0x18, + 0xff,0x58,0xe4,0xb0,0x15,0x8e,0x74,0x93,0x93,0x43,0xc9,0x13,0x14,0x85,0x2d,0xc6,0x28,0x3f,0xde,0xf5,0xdb,0xe2,0x70,0x56, + 0xce,0x49,0x19,0xf3,0x5e,0xa7,0xf9,0x63,0x08,0x3f,0xd2,0x4a,0xd5,0x38,0xa0,0xae,0x3c,0x6f,0x54,0xf0,0x2e,0x23,0xda,0x9e, + 0x35,0xb2,0x88,0x7e,0x7a,0xd5,0xa9,0x6a,0x11,0x62,0xf8,0xf8,0xa2,0x71,0xda,0x68,0x95,0xa7,0x49,0x8f,0x0f,0x95,0x87,0xa8, + 0x0c,0x8b,0xd4,0x35,0x67,0x6c,0xc7,0x69,0x15,0x92,0xe0,0xa4,0x24,0x59,0x6b,0x95,0x19,0x61,0xd2,0x23,0x0d,0xd1,0x31,0x30, + 0xac,0xf3,0x0f,0x09,0xf1,0x63,0x3c,0x5c,0x34,0xe2,0x9d,0x7e,0xea,0x00,0x3d,0xd2,0x12,0xc0,0xbc,0xe0,0xec,0xb0,0x76,0xed, + 0x17,0xa2,0x03,0x75,0xdc,0x60,0x55,0x71,0xb3,0xfc,0xa6,0x51,0x75,0xc8,0x0b,0x98,0xb0,0x88,0xf6,0xa1,0x1c,0x9b,0x38,0x17, + 0x99,0xd4,0x87,0x41,0x3e,0x47,0x53,0xc3,0x10,0x81,0x7c,0xfc,0x92,0x48,0x8e,0x5b,0x3e,0x2a,0x50,0x8f,0xd5,0xf2,0x7b,0xb5, + 0xd8,0x8e,0x1a,0x88,0x3a,0x24,0xd2,0x56,0x3c,0xfc,0xeb,0x2a,0x3a,0x66,0xb8,0xb1,0x4f,0x15,0x53,0x0e,0x7a,0xf0,0x51,0x30, + 0xe5,0xd3,0x0b,0x51,0xf2,0x55,0x27,0x7d,0x77,0x4d,0x36,0x36,0xaa,0x06,0xe3,0x92,0xfc,0x35,0x17,0x6b,0x51,0xa9,0xea,0x69, + 0xab,0xf9,0xc1,0x66,0x78,0xf0,0xf2,0x0e,0xde,0x49,0x8b,0x70,0x50,0x1e,0x97,0x4e,0x8e,0xa4,0xcd,0x74,0xaf,0x3d,0x1e,0x1d, + 0xfc,0xc5,0x05,0xa4,0x90,0x9f,0x7b,0x11,0xa9,0xfe,0xb3,0xc4,0x71,0xfd,0xcf,0x2f,0xd6,0x61,0x3d,0xc2,0xf0,0x63,0x23,0x5f, + 0xb9,0x97,0xb2,0xd8,0x65,0x79,0x78,0x31,0x9d,0x46,0x9c,0x4a,0xa4,0x6c,0x7c,0xbe,0xd2,0xfa,0xad,0x82,0xdd,0x32,0xcc,0x1c, + 0xa0,0x05,0x41,0xa9,0x74,0x84,0x02,0x18,0xa8,0xef,0x7f,0x78,0xd7,0x8b,0x4a,0x04,0x63,0x13,0x1e,0xff,0xb2,0x57,0x5d,0x46, + 0x35,0x59,0xc3,0x96,0x0b,0x71,0x78,0xf7,0x32,0x86,0x50,0xa5,0x42,0xd0,0x20,0xdb,0xe9,0xc9,0x24,0x75,0xc0,0x7e,0xfb,0x1e, + 0x19,0x81,0x18,0x84,0x23,0x81,0xef,0x3d,0xe9,0x58,0x2a,0xf3,0x64,0x7c,0xa0,0x7b,0xf7,0x7c,0xeb,0xd7,0x8a,0x40,0xcb,0xf1, + 0x75,0x95,0xba,0x21,0x18,0x4d,0xb4,0x9c,0xde,0x8d,0x91,0xcf,0x6f,0x44,0x19,0x56,0xaa,0x54,0x1c,0xa3,0x42,0x5e,0x81,0x6c, + 0xc4,0xd1,0x24,0x27,0x62,0xa9,0x94,0x9b,0xa8,0xc9,0xd8,0x62,0x28,0xd1,0x18,0xb0,0x5b,0xcb,0x5e,0x21,0xda,0x90,0x42,0xb5, + 0x14,0x54,0xc2,0x97,0x90,0x2a,0x47,0x2a,0xb1,0x3a,0x20,0xfa,0xc3,0x5d,0x42,0x44,0xf2,0xd8,0x99,0x31,0x08,0xe6,0x09,0x33, + 0xbe,0x7f,0x43,0x3c,0x64,0x69,0x5d,0x24,0x20,0xb6,0xf1,0xeb,0xa7,0xe4,0xac,0x29,0x4e,0xe3,0x30,0x77,0xcb,0xb5,0xf2,0x18, + 0x6d,0xa1,0x6b,0x3d,0xf8,0x3c,0x8c,0x77,0x22,0x1d,0x5b,0xb9,0x5a,0x56,0xca,0x9c,0x11,0x71,0xf6,0x0b,0x23,0x9b,0x2d,0x37, + 0xdf,0x5d,0xad,0x16,0x72,0xa5,0xb1,0x18,0x15,0x86,0xbc,0xb7,0x1c,0x89,0x7c,0x12,0x25,0x46,0x3c,0xaa,0x8d,0x25,0x74,0xde, + 0x5c,0xa5,0x3c,0xd8,0x86,0x6d,0x3c,0x77,0x11,0x5c,0xd2,0x6d,0xaf,0xa1,0x43,0x14,0xcd,0x89,0x56,0x2b,0xfb,0x69,0x07,0x6a, + 0xcd,0x47,0xfa,0x6c,0x55,0x81,0x0b,0xde,0x5c,0x66,0x0d,0xe0,0x9e,0x3c,0x0e,0x55,0x6b,0x11,0x8b,0x85,0xbc,0x5b,0xe5,0x22, + 0xc2,0x4c,0x63,0x0f,0x57,0x23,0x5b,0xfa,0xb1,0x0e,0xf5,0x94,0x4a,0x57,0xc4,0x90,0x53,0xfe,0x32,0x48,0xab,0x0c,0x37,0x8d, + 0x75,0xd1,0x32,0xb9,0x99,0xce,0x98,0x5e,0xaa,0xa1,0x5a,0x5c,0xe4,0xcb,0xa8,0x53,0xf6,0x46,0x24,0x20,0x89,0xa2,0x69,0x97, + 0x1a,0xd3,0xc8,0x3f,0x1f,0xa4,0x34,0xee,0x30,0x45,0x1f,0xf6,0xa0,0x8e,0x27,0x6c,0xa5,0xcb,0x54,0x44,0x53,0xde,0xf0,0x1a, + 0x45,0x34,0x21,0xc7,0x8a,0xb3,0xce,0xe0,0xa8,0x99,0x69,0x2c,0x57,0x91,0xfc,0xe2,0x36,0xf9,0xd1,0x67,0xbd,0xb2,0x72,0xcc, + 0x3a,0xd3,0x76,0x18,0x03,0xf4,0xd8,0x3e,0xee,0xe1,0x17,0x9d,0x1c,0xa2,0x4e,0x72,0x2f,0xff,0xbb,0xcf,0x96,0x68,0xc4,0xd0, + 0x90,0xac,0x77,0xec,0x97,0x9d,0x6a,0xfa,0xfb,0x6f,0x86,0x07,0x2d,0xb6,0x0a,0xcc,0x2c,0xfc,0xb8,0x14,0x11,0x63,0x4a,0x8c, + 0x0e,0xd5,0x2a,0xbb,0x64,0x2d,0xca,0xa8,0x15,0x63,0x17,0x72,0x3c,0xff,0xa3,0x72,0x4c,0xb9,0x8c,0x1f,0xd3,0x8c,0x2c,0x5b, + 0x23,0xd5,0x9b,0xa5,0xea,0x84,0xcd,0x76,0xd4,0x5a,0x42,0x6f,0x88,0x59,0x01,0xed,0xff,0x3e,0x1e,0x22,0x79,0xc4,0x79,0x5a, + 0x82,0x7d,0x38,0x81,0x30,0x0c,0x8c,0x5c,0x4f,0xdd,0x36,0x37,0xc7,0x48,0x6b,0x50,0xee,0x47,0xa8,0x63,0xf6,0x67,0x5f,0x57, + 0x4b,0x3f,0x2d,0x90,0x4f,0x86,0x5a,0x6d,0xe4,0x45,0x04,0xb2,0x39,0x8e,0x92,0xe5,0x83,0xe5,0x56,0xa5,0x5c,0x83,0x14,0x59, + 0x1b,0xf4,0x8c,0x57,0x5d,0xc4,0x42,0x73,0x52,0xad,0xb1,0x07,0x1b,0x1c,0xa1,0xa8,0xb1,0x1d,0xc5,0x6a,0xbb,0x58,0x60,0x2d, + 0xa5,0xa7,0x06,0xb0,0x25,0xe8,0x5f,0xd1,0x66,0x01,0x5c,0x72,0x4e,0x1e,0xdf,0x75,0xda,0x16,0x4d,0xfb,0x6d,0xc9,0x88,0xb3, + 0xb5,0x20,0x40,0x02,0xb9,0xa8,0x90,0x0e,0x5f,0xf9,0x07,0x4a,0xcd,0x4e,0xfc,0x61,0xff,0x32,0x5f,0xf6,0xd2,0x4a,0x39,0x3d, + 0xc6,0x5c,0x8e,0x54,0x73,0xd4,0x7a,0xe9,0xa2,0x64,0xee,0x46,0x25,0x0a,0x29,0x9c,0x7f,0x0b,0x47,0x3d,0x1e,0xd8,0x4f,0x1b, + 0x8d,0x28,0xfc,0xba,0x8b,0x2f,0xf3,0x51,0x5a,0x81,0x29,0x7f,0x9a,0x5d,0x9c,0x8d,0xa5,0xb4,0x81,0x82,0x11,0xca,0x13,0xee, + 0x4f,0xe2,0x74,0xf2,0xe0,0xba,0x74,0xee,0x32,0xcb,0xa9,0x18,0x2f,0x0e,0x51,0x12,0x0f,0xab,0x0f,0x36,0x98,0x65,0x9c,0x48, + 0x0f,0x34,0x53,0x19,0x7c,0x1c,0x8d,0x28,0x2c,0xa7,0xc3,0x76,0xab,0x54,0xd5,0x63,0x81,0x35,0xfa,0x08,0x1f,0x44,0xa3,0x95, + 0x43,0x01,0xa7,0xf0,0x59,0x23,0x85,0x37,0x3b,0x86,0x11,0x63,0x9b,0x15,0x2c,0xb3,0xa9,0x3f,0x28,0xcb,0xd8,0xc4,0x1e,0xf4, + 0xa9,0x7e,0x78,0xf8,0xe1,0x15,0x66,0x1a,0x65,0xc2,0x83,0x7a,0xe9,0xc3,0x01,0x7b,0x1d,0x96,0x90,0x07,0x1a,0x65,0xa8,0xb3, + 0x34,0xf5,0xd9,0x26,0x1c,0xe4,0x13,0xb4,0x5c,0x86,0xf0,0x45,0xf3,0xd6,0xf5,0x32,0x82,0x9f,0xca,0x23,0x53,0x7c,0x77,0x7a, + 0x58,0x3f,0x7f,0x5c,0x08,0x27,0x5d,0xab,0x7e,0x2a,0x95,0x05,0x32,0x53,0x26,0x91,0x1f,0xdd,0xe8,0x93,0x3e,0x28,0xe1,0x39, + 0x33,0xac,0x17,0x8f,0x82,0x38,0x20,0xd3,0xd1,0x2f,0x43,0xb1,0x92,0xde,0xf5,0x52,0x05,0x0c,0xe1,0x25,0xad,0x57,0xf5,0x09, + 0xb1,0xcf,0x8a,0xe2,0x27,0x8b,0x11,0x6e,0xbf,0xba,0x1f,0x91,0xf0,0x91,0x8f,0x4d,0x71,0x1e,0x5a,0x57,0x0e,0x08,0x31,0x48, + 0x3e,0xbc,0xfb,0x6a,0x46,0x60,0x5b,0x24,0x36,0xa3,0x0b,0xb3,0x57,0xe3,0x57,0x25,0x36,0x93,0xd6,0xaf,0x9f,0x12,0xa2,0x41, + 0xfd,0xe3,0x9a,0xe3,0xf0,0x1b,0x46,0x26,0x92,0xc9,0x10,0x1f,0x4a,0xad,0x77,0x04,0x1e,0xf2,0x70,0x24,0x76,0xc8,0x6c,0xac, + 0xc7,0x05,0x5c,0xa2,0xeb,0x77,0xf3,0x52,0x52,0x62,0xa2,0x43,0xeb,0x7e,0x05,0x71,0x91,0x46,0x9e,0xe4,0x83,0xc8,0xe7,0x2b, + 0x13,0xa4,0x2b,0x30,0xce,0x57,0x6b,0x3d,0x3e,0x48,0xeb,0x78,0x1a,0x11,0x4f,0xeb,0x90,0x28,0xaf,0x19,0x99,0x01,0x25,0xfe, + 0x7a,0xad,0xd6,0x0b,0x03,0xc3,0xd5,0x3c,0x27,0x87,0x42,0x91,0x4c,0xb3,0x37,0xf0,0xef,0x0e,0x31,0xff,0x06,0xad,0x27,0x07, + 0x1c,0xbe,0x97,0xc7,0x6c,0x80,0x0f,0x67,0xcd,0x97,0x1f,0x6e,0x45,0xa5,0x9c,0x59,0x8f,0x56,0x84,0xc8,0x44,0x0c,0xd0,0xd3, + 0xc1,0x2a,0x99,0xc3,0x1d,0x6b,0x70,0x85,0xb0,0xdf,0xa8,0xf5,0x56,0xa5,0x75,0x8f,0xaa,0xc2,0xe3,0x6f,0xa6,0xcb,0x42,0x4c, + 0x3f,0x0b,0x4d,0x29,0x38,0x89,0x58,0xb8,0x8c,0xf1,0x93,0x82,0x91,0xc3,0x47,0xf1,0xe3,0x4a,0xf4,0xf2,0xdb,0x15,0xf8,0xac, + 0x4a,0x26,0xe2,0x32,0x0a,0xe8,0x34,0x3f,0x39,0x6d,0x3e,0x56,0x50,0x29,0xd5,0xa8,0x1e,0x2c,0xa1,0x9f,0x9d,0x18,0x22,0x25, + 0xf6,0xdf,0xa4,0xf5,0x5a,0x43,0xeb,0x6c,0xf9,0xd0,0x1e,0x7e,0x72,0xb1,0x0a,0xc7,0x31,0x19,0x64,0x88,0x0f,0x6e,0xd6,0x7a, + 0x0b,0x6b,0x1d,0xc2,0xd3,0xaf,0xc9,0x47,0x83,0x35,0x0c,0x2f,0x62,0x69,0x80,0x7d,0x30,0x84,0x9c,0xa0,0x75,0x86,0x4d,0xeb, + 0x6d,0xb2,0x02,0x2e,0x79,0x0e,0x17,0xf0,0x5b,0x9b,0x71,0xaf,0x0c,0x83,0x4d,0x5c,0x3d,0x49,0xeb,0xbb,0x02,0x53,0x47,0xd4, + 0xbd,0x05,0x38,0x81,0x5e,0xc7,0xd4,0x01,0x5b,0x1f,0xb2,0xd1,0x4f,0xc5,0x2a,0x13,0x11,0xe6,0x5d,0xbf,0xcc,0x33,0x85,0x37, + 0xb0,0xbf,0xd1,0xd4,0x7a,0x29,0x66,0x55,0xf3,0x7c,0xdc,0x9f,0x8e,0x60,0xf3,0xc6,0x57,0xa2,0x51,0x41,0xb3,0x94,0x08,0x9b, + 0x1c,0xf8,0xda,0x68,0xad,0x5d,0x74,0x67,0x05,0xf6,0x52,0xba,0x63,0x56,0xb7,0xe9,0x87,0x14,0x5b,0xfe,0xae,0x75,0x6c,0x60, + 0x7c,0x00,0x1f,0x34,0xd2,0x5e,0xbc,0xba,0x89,0xa4,0xd8,0x75,0xa5,0xd6,0xe7,0xa6,0x04,0x20,0xc5,0xb8,0x3b,0x3b,0xd0,0x83, + 0xf5,0xb8,0x5a,0xdc,0x18,0x80,0xb8,0x66,0x86,0xd6,0xa5,0xf4,0x6d,0xbe,0xb4,0xbf,0xf6,0x66,0x1a,0xbd,0x3b,0xfe,0xfb,0x2e, + 0xf6,0xe0,0xda,0xba,0x80,0x43,0x66,0x36,0x53,0x34,0x95,0x50,0x08,0x1a,0xe9,0xc3,0x79,0x09,0xc8,0x18,0xe1,0xe3,0x7b,0x7c, + 0x54,0x6f,0x15,0x20,0x98,0x3c,0xe4,0x96,0xff,0xf8,0x78,0x0f,0xce,0x73,0x0f,0x65,0xa3,0x80,0x87,0xcd,0xbd,0xfc,0x78,0x38, + 0x9f,0xe4,0x1a,0x96,0xa2,0xfa,0x3a,0xad,0x5b,0xa7,0x6a,0x1d,0x54,0x82,0x76,0xc4,0x61,0x3b,0x6e,0x7d,0x43,0xe4,0x06,0xae, + 0x29,0x8a,0xd2,0xfa,0xe6,0x85,0x7c,0x01,0x7d,0x70,0x92,0x8f,0xed,0x6b,0x29,0x0d,0x99,0x58,0x4c,0x9d,0x86,0xdb,0x2c,0x91, + 0xb5,0x7c,0xdc,0x9c,0x8f,0x0a,0x59,0xc4,0x79,0xf2,0xb8,0x1c,0xb2,0x6b,0x47,0x88,0xbd,0x53,0x95,0xd9,0xb4,0xf2,0x49,0x3f, + 0xac,0xe3,0xb6,0x24,0xe9,0x0c,0xaa,0xa1,0x24,0x2b,0x8c,0x96,0xda,0xb7,0xf2,0x59,0xb9,0x8e,0xdd,0xf6,0xff,0x9c,0xb6,0x8e, + 0x59,0x4f,0x86,0x72,0x32,0xca,0xad,0x6c,0xfa,0x28,0x94,0x36,0x50,0x3b,0x76,0x9b,0xf7,0xf8,0xcd,0x1c,0x9c,0x40,0x37,0x3d, + 0x74,0x1a,0x7e,0x6b,0x15,0xb9,0xad,0x48,0xf2,0xe3,0x20,0x3b,0x8d,0xd5,0x8e,0x3c,0x35,0xa8,0x4a,0xd4,0xd5,0x39,0xe4,0xe4, + 0x42,0xfe,0xcb,0x61,0xea,0xc1,0x61,0xbe,0x40,0x65,0xd4,0xa0,0x2a,0xf1,0x56,0x85,0xfa,0xb6,0x9e,0x9b,0xd4,0x0e,0xf3,0xb0, + 0x6c,0x95,0x45,0xb4,0x5c,0xf5,0xd9,0x6a,0xd5,0xbe,0x6b,0xdc,0x86,0x6b,0xbc,0x87,0xbc,0x8e,0xfb,0xfc,0xe6,0x06,0x7a,0xfa, + 0xc3,0x5c,0x44,0x1b,0xfb,0xd9,0x49,0xe7,0xe1,0xd8,0x0e,0x37,0x3e,0x6d,0x55,0x1e,0x8a,0x46,0x2f,0xba,0xe5,0xe8,0x68,0xb9, + 0x8c,0x4a,0x78,0x79,0x20,0x1f,0xb6,0x3c,0x5c,0x64,0x7f,0x3b,0x67,0xdc,0x4a,0xf5,0xd6,0x57,0x21,0xf8,0x6b,0x3c,0x47,0xa2, + 0x10,0x9d,0x32,0x91,0x32,0xcc,0xe7,0x17,0x1b,0x89,0x70,0x51,0xb0,0x59,0x46,0x0f,0xae,0xa5,0x62,0xba,0x6d,0x58,0x3e,0xf3, + 0x5c,0x28,0x69,0xba,0xf1,0xdf,0x33,0xf7,0x1b,0x8d,0xd8,0x4e,0x4d,0x74,0x6d,0xb5,0x91,0x82,0x4e,0x14,0xa9,0x34,0x78,0x31, + 0x39,0x84,0xd7,0xc9,0x4d,0xf4,0x9d,0x2f,0xb0,0xe3,0xf3,0x6a,0x44,0x38,0xdc,0xbc,0x0f,0x15,0x28,0x31,0xc2,0xa8,0xd2,0xb8, + 0xac,0x3e,0x2c,0x62,0x87,0x70,0x4d,0xd3,0xfa,0xbd,0x0b,0x5a,0x37,0x61,0x42,0xb8,0xdc,0xad,0x64,0x03,0x47,0x50,0x26,0x9f, + 0xc2,0x32,0xec,0xa4,0xff,0xd6,0xe0,0x22,0x7a,0xe1,0x53,0x2d,0x4a,0x4b,0x27,0x57,0xc2,0x14,0xb7,0xdd,0xa5,0xf5,0x2f,0x3a, + 0x20,0x88,0x40,0x7f,0x0f,0xb6,0xe2,0x95,0x41,0x94,0xd3,0x67,0xbb,0x69,0xd4,0xf5,0x49,0xf8,0x3f,0x0d,0x52,0x03,0x60,0x5d, + 0xd9,0xd6,0xde,0xdf,0x5a,0x7b,0x9f,0x73,0xee,0x0d,0x6b,0x8c,0x6d,0xdb,0x7e,0xc6,0x58,0xbf,0xc6,0xb6,0x9e,0xdf,0x2b,0x62, + 0xa3,0xb7,0xb1,0x39,0xb1,0x9d,0xa6,0x88,0x9d,0x4c,0x1a,0x15,0x41,0xed,0x38,0x29,0xf7,0x7f,0x37,0x97,0xfd,0x8e,0xf8,0xdc, + 0x43,0xeb,0xac,0x1b,0x85,0x28,0x92,0x81,0xb2,0x57,0xc6,0xa0,0x86,0xbd,0xf9,0xdd,0x1d,0x38,0x41,0x23,0x68,0xe0,0xdd,0xd6, + 0x11,0xa5,0x16,0xe4,0x3c,0x9d,0x36,0x4f,0xd2,0x06,0xf5,0x56,0x2c,0xa5,0x63,0x94,0xd6,0xcc,0x51,0x16,0x92,0xa9,0x9e,0x06, + 0x69,0x55,0xba,0xd9,0x20,0xfd,0x8c,0x0c,0x95,0xa8,0x4a,0x0d,0x27,0xd8,0x81,0xcd,0x5c,0x0a,0x7f,0xd3,0x4b,0x46,0x9b,0xc7, + 0xf1,0xf0,0x82,0xac,0xc6,0x82,0x11,0x68,0x4e,0xc9,0x52,0xfa,0xef,0x70,0xfb,0x39,0x94,0x19,0x05,0xf8,0xa2,0xce,0x65,0x08, + 0xbd,0xb2,0x14,0xaf,0x36,0x60,0x8d,0x17,0xa7,0x23,0x00,0x8d,0x1e,0xf7,0xd7,0x99,0x71,0xd8,0xeb,0xd4,0xf7,0x0c,0xe6,0x3d, + 0x98,0xe5,0x4e,0x3a,0x27,0x13,0x69,0x00,0x11,0x46,0x39,0x0f,0x5a,0x91,0x74,0xce,0xc8,0x32,0x9a,0x29,0x01,0xcf,0xed,0xa6, + 0x7e,0x54,0xa1,0x91,0xd2,0x68,0x3b,0x1c,0xfc,0xd2,0x2e,0x5a,0x40,0x99,0xfc,0x44,0xee,0xa7,0x8b,0xd6,0x00,0xe6,0xb8,0x8a, + 0x73,0x31,0x08,0x6f,0x4a,0xa6,0x0e,0x23,0x1d,0x69,0xb6,0x05,0xd9,0xe2,0xf6,0x42,0x14,0xfa,0xf1,0x58,0x1e,0xa5,0xc9,0x44, + 0xf9,0x46,0x37,0x9f,0xc7,0x56,0x8c,0xf1,0x35,0x1b,0xa5,0xc3,0x08,0x56,0x31,0x66,0x9b,0x2d,0x8b,0xab,0x11,0x4c,0x3b,0xe8, + 0x18,0x7d,0x3e,0x8d,0x23,0x72,0xb7,0x9c,0x50,0xd7,0x69,0x0e,0xe7,0x26,0xfa,0x71,0x9e,0xce,0xb0,0xfd,0x90,0x71,0x96,0x1a, + 0x95,0xc7,0x24,0x92,0x30,0xc3,0x9f,0xd5,0x78,0x46,0xd8,0xbf,0x6b,0x73,0xc2,0x51,0xd8,0xcf,0x29,0xd6,0xaa,0x13,0xd8,0x26, + 0xcf,0x73,0xb6,0x31,0x45,0x05,0xb2,0x16,0x79,0x86,0x17,0x7b,0xab,0x6a,0xf7,0xc3,0x54,0x44,0xa7,0x39,0xda,0x56,0xc5,0x05, + 0x28,0x91,0x79,0xca,0x26,0x8c,0xc7,0xb4,0x0e,0x14,0x42,0x5c,0x97,0x41,0x47,0xe8,0x9f,0x97,0x17,0x50,0x1d,0xcd,0xe1,0xc1, + 0x6e,0xfe,0xe4,0xd9,0x97,0xa3,0x54,0x2d,0xce,0x40,0x09,0x6f,0xa7,0x48,0xa4,0x29,0x44,0x35,0x3d,0xf2,0x42,0x05,0xe7,0xd0, + 0xfa,0xd7,0x1d,0x6c,0x89,0x8a,0x27,0xb4,0x76,0x85,0x10,0x2f,0x7f,0x1c,0x47,0x29,0x1c,0x87,0xc7,0x3a,0x0c,0x2f,0x78,0xe1, + 0x1c,0x6d,0x31,0x22,0x10,0x4b,0xbf,0x35,0xc5,0x9a,0xc7,0xb5,0xf6,0x87,0x10,0x43,0x78,0xee,0x96,0x3a,0x7a,0xd2,0x0f,0x1b, + 0xf8,0xb3,0x1b,0x0f,0x61,0x02,0x9b,0xc9,0x10,0x71,0x6b,0xb4,0x5e,0x7f,0x9f,0x10,0x27,0x70,0xf3,0xaf,0x23,0xf8,0xab,0x2b, + 0x5b,0xa9,0x8d,0x36,0x22,0x18,0x86,0xf8,0x61,0xb5,0xd6,0xe9,0xb9,0x42,0xcc,0xf2,0x33,0x09,0xf8,0xef,0x05,0x76,0xd9,0x4a, + 0xdf,0xfc,0xed,0x5f,0xd7,0x89,0xeb,0x2e,0xd7,0xfa,0x89,0x1a,0x21,0xcc,0x2f,0xb2,0x64,0x1f,0xce,0x98,0x5f,0x46,0x71,0x27, + 0xbd,0x54,0x44,0x65,0x18,0xc4,0x5e,0xf7,0x78,0xcb,0xdf,0x4d,0xe0,0x37,0x41,0x6a,0x89,0xfe,0xd3,0x80,0x0b,0xf4,0xf1,0x94, + 0xec,0x34,0x6b,0x8c,0x06,0x0c,0xa1,0x04,0xa7,0x51,0x42,0x19,0xfc,0xe8,0x6d,0x1b,0x28,0x80,0x2b,0x68,0x27,0x7f,0x1c,0x4c, + 0x99,0x3c,0x6a,0xb6,0xbb,0x76,0xa2,0x19,0x05,0xb4,0xf2,0x04,0xb2,0x71,0x9c,0xeb,0xe8,0xda,0x32,0x27,0xfd,0x30,0x12,0x29, + 0x91,0x93,0xed,0x83,0x9c,0xac,0x76,0xe0,0xee,0x61,0x24,0xd3,0xb5,0xff,0xfe,0xf1,0x1d,0xf1,0x3f,0x37,0x69,0xfd,0x52,0x9b, + 0x10,0x8b,0xc8,0x22,0x6d,0xfc,0xed,0xc9,0x8d,0x34,0x43,0x1e,0x57,0xd6,0x52,0x8b,0xfb,0x46,0xcf,0x63,0x38,0xc4,0x0f,0x16, + 0x92,0x8f,0xfd,0xa4,0x79,0xfd,0x3e,0x1a,0xe0,0x78,0x34,0xd2,0xf7,0x41,0xf2,0xce,0xb3,0xb6,0x21,0x15,0x2f,0x3f,0xba,0xad, + 0x14,0xde,0xac,0x91,0x2c,0xff,0x1d,0x41,0x49,0xd8,0x2b,0xbf,0x7a,0xfa,0x18,0x0e,0x22,0x84,0x1e,0x6f,0x41,0x31,0x85,0xab, + 0x49,0x6a,0xa7,0x3c,0xfa,0xfb,0xeb,0xbf,0xdd,0x69,0xfa,0xc8,0x2f,0x02,0xd9,0x87,0xb6,0xa1,0x5b,0x5d,0x9f,0xa9,0xce,0xe0, + 0xbf,0x8f,0x51,0xa4,0x5a,0xe4,0xcd,0xb2,0x0d,0x47,0xe5,0x9d,0x13,0xe8,0x81,0x9f,0xfc,0xb0,0x18,0x9b,0xe9,0xa2,0xf4,0xa5, + 0x0b,0x9e,0x93,0x3c,0x84,0x3e,0x2e,0x35,0x37,0xf3,0xcb,0x67,0x30,0x22,0x7d,0xd1,0xcb,0xb6,0x5d,0xdc,0xc2,0xcd,0x08,0xa7, + 0x1a,0x70,0x80,0x51,0xa7,0x06,0x54,0x0e,0x7d,0xf5,0x5c,0x83,0x9c,0x55,0x57,0xd5,0xf3,0x3b,0xdf,0x4e,0x52,0x23,0x9a,0xa9, + 0x88,0x37,0x50,0xa5,0xd3,0xea,0x79,0xe3,0xfd,0x4a,0x59,0x4c,0x4d,0x94,0xc4,0xff,0x74,0xc8,0x04,0xb8,0x2d,0x98,0xd5,0xc6, + 0x01,0xd9,0x42,0x2f,0xfa,0xa9,0x71,0xcb,0x41,0x4b,0xd2,0xc1,0xbd,0xe8,0x91,0xa1,0xa6,0x03,0x8f,0x94,0x60,0x98,0x26,0xc8, + 0x41,0x71,0x7c,0x87,0xc3,0xac,0x37,0x8b,0xcd,0x3f,0xee,0xa0,0xbf,0x3f,0x59,0x82,0x41,0x23,0x99,0x46,0xe5,0x76,0xb9,0x49, + 0xcd,0x21,0x07,0x75,0xd8,0x41,0x6f,0xb4,0x18,0x2f,0xfa,0xa3,0x81,0x62,0xe8,0xd7,0xb5,0x72,0x13,0xc2,0xe5,0x03,0x7e,0xb2, + 0x04,0xcb,0x9b,0x79,0x17,0x7d,0xd9,0x86,0x7b,0xe3,0xc8,0x9b,0x2e,0x9a,0xd5,0xc8,0x5f,0x3b,0x0e,0x25,0x1e,0xb8,0x5e,0xeb, + 0x85,0x0a,0x21,0x4e,0xe0,0x86,0x9b,0x8b,0x64,0x3c,0x1e,0xba,0xb9,0x8f,0xa5,0xf8,0xd9,0x49,0xcd,0x71,0x52,0x2b,0x61,0x2f, + 0xc3,0x9b,0xf2,0x5d,0x43,0x1c,0xbe,0x55,0xeb,0xf2,0x1d,0x42,0xf4,0x71,0x35,0x62,0x90,0x0c,0x1f,0xba,0x6c,0x2f,0x05,0xc0, + 0xfe,0x8a,0x14,0x77,0xdc,0xee,0x6c,0x4d,0xb5,0x10,0x4d,0x78,0x26,0x88,0xf7,0x73,0x13,0xe2,0x58,0x89,0x12,0x27,0xf1,0xc5, + 0x9d,0x42,0x4c,0x22,0x0d,0x13,0xd2,0x1b,0x9e,0x47,0x31,0x45,0xcf,0x2a,0xe1,0xe9,0xec,0xe3,0xd5,0xcd,0x42,0x54,0x83,0xee, + 0xfd,0x6b,0x08,0x5d,0xe9,0x8d,0x28,0x48,0xd1,0xe0,0xa4,0x96,0xb4,0x0b,0xf1,0xc7,0x77,0x2e,0xe0,0xbb,0x7c,0xf4,0x61,0x85, + 0x50,0xf7,0x6a,0xfd,0xc8,0x32,0x88,0xbd,0xf6,0x48,0x4a,0xa5,0x48,0xfe,0x99,0x8f,0x60,0x7a,0x75,0x0f,0xe7,0xb3,0x7b,0xa0, + 0x11,0x4d,0xb1,0xd6,0xdf,0xbb,0x68,0x2b,0x62,0xdc,0x43,0x30,0x4d,0xdd,0xf0,0xa1,0x61,0x4e,0x35,0x3d,0xbc,0xcd,0xfd,0xf8, + 0x36,0x19,0xe7,0xb0,0x80,0x78,0xf5,0xf7,0xc3,0x9e,0x63,0x38,0x69,0xf9,0x4a,0x4b,0xd4,0x3c,0xac,0x75,0x91,0x07,0xc4,0x22, + 0x3d,0x10,0x4e,0x89,0xbc,0x6a,0x01,0x97,0x38,0x00,0xdb,0x0d,0x07,0xfa,0xb8,0x12,0x1d,0x88,0xe1,0x77,0x44,0x97,0xd4,0xfa, + 0x8a,0x5b,0x21,0xba,0x3c,0x67,0x69,0xd6,0x1c,0x44,0x9c,0xad,0x09,0x09,0xd6,0x16,0xfc,0xe3,0x6f,0x4b,0x6a,0x1f,0xe5,0x93, + 0x47,0xc6,0x9a,0x39,0x24,0x2c,0x3f,0x2a,0x07,0x6d,0x8d,0xb4,0xdf,0xa5,0x0c,0x85,0x6b,0x73,0x90,0xcb,0x15,0xf0,0xe2,0x46, + 0xda,0xed,0x72,0x82,0x86,0xe8,0xca,0x5a,0x6b,0x89,0xbb,0xad,0x29,0x94,0xad,0x23,0x2f,0x23,0x9b,0xc2,0xcc,0xdf,0xed,0x5d, + 0x7e,0x55,0xbb,0x95,0x85,0x4c,0xd4,0xc8,0x40,0x6b,0x0e,0x0d,0x6e,0x4d,0xd4,0xe1,0x1e,0x8f,0x1d,0x6a,0x04,0x67,0xd4,0x7d, + 0x0d,0xcb,0xfb,0xb9,0xdd,0x88,0xa5,0xc0,0xe5,0x0f,0x9d,0x72,0x4b,0xa6,0x0c,0xfb,0x28,0x8f,0x72,0x0e,0x02,0x29,0x13,0x07, + 0x79,0x0a,0x27,0x5d,0x63,0xa9,0xdf,0xe5,0xca,0x99,0x2b,0x2a,0xf8,0xf7,0x79,0x88,0xb7,0x6f,0xc3,0x05,0x8f,0x1c,0x6c,0x58, + 0x69,0x9b,0xe1,0x6f,0xca,0xac,0x10,0x39,0x6e,0x1e,0xb5,0xda,0x6d,0x8d,0xf0,0x97,0xaf,0x97,0xae,0x3a,0x81,0x48,0xcf,0x4f, + 0xda,0x54,0x3a,0xc5,0xf2,0x25,0x1a,0xb7,0x0d,0x52,0x81,0x4b,0x3b,0xfa,0x97,0x2d,0xc8,0x32,0xd7,0xef,0x8e,0xdb,0xbb,0x28, + 0x8e,0x37,0xf1,0x41,0x5e,0x42,0xce,0xda,0x70,0x24,0xab,0x20,0xd9,0x85,0x6d,0xca,0xc7,0x75,0x94,0x2e,0x2c,0xfb,0xf5,0xe0, + 0x2d,0xe1,0x56,0xfe,0x2d,0x7e,0xf6,0x88,0xb5,0x3b,0x69,0xea,0x9a,0x78,0xf4,0x7a,0xf4,0xe3,0xa0,0x15,0x8a,0x25,0x79,0x08, + 0x87,0x71,0xd1,0xf4,0xb1,0xca,0xf8,0x7a,0x1f,0xf3,0x34,0x8b,0xb2,0x2b,0x76,0x1b,0x11,0xab,0xee,0xcc,0x5a,0x7e,0x49,0xfe, + 0x2c,0xb7,0xf1,0x8c,0xfb,0xda,0xa2,0xe5,0xde,0x68,0x7d,0x7a,0xc2,0x16,0xc0,0x01,0xe8,0xc3,0x25,0x2e,0x43,0x15,0x1d,0x95, + 0xc3,0x28,0x44,0x2f,0xe2,0x56,0x64,0xca,0x01,0xf3,0x0f,0xe3,0x37,0xbc,0x11,0xe2,0xfa,0xb7,0x10,0xeb,0xde,0x75,0x6f,0xeb, + 0xfb,0x83,0xe8,0x1d,0xf1,0xe2,0x83,0x5a,0x17,0xdb,0x21,0x4e,0x59,0x1f,0xfb,0xdb,0x4a,0x50,0x6e,0x5b,0x57,0xa4,0xe6,0xe4, + 0x41,0xa3,0x11,0x7b,0xa5,0x47,0xaf,0xbd,0x83,0x06,0xcc,0x7f,0x47,0xab,0x4d,0xac,0x8d,0x0f,0x5b,0xc9,0xcf,0xc8,0x76,0x7d, + 0x7d,0x8c,0x63,0x51,0x69,0xfd,0x31,0x55,0x06,0x99,0x21,0x66,0x00,0xe5,0x53,0x34,0x4d,0x52,0x05,0xea,0xcd,0xbb,0xc6,0xe4, + 0x17,0xe1,0x46,0x20,0x8e,0xb8,0x84,0x41,0xbb,0x1c,0xe6,0x7a,0x8f,0x29,0xf8,0x5b,0x39,0x72,0x54,0xcd,0x20,0x7b,0x95,0x3f, + 0x2e,0xac,0x38,0x23,0x37,0xd9,0x1c,0x88,0x90,0xcf,0x6e,0xb4,0x6f,0x60,0x2f,0x84,0x49,0x7f,0xab,0x86,0x0e,0xbb,0x2c,0xeb, + 0x50,0x27,0x31,0x64,0x37,0x4a,0xcd,0x78,0x14,0x9b,0x37,0x8d,0x20,0x80,0x76,0x72,0x2a,0xd5,0xb8,0xc7,0xd2,0x12,0x65,0x63, + 0x87,0xf1,0x69,0x94,0xf9,0xaa,0x36,0x43,0x29,0x49,0xbe,0xde,0x2d,0x5b,0xf9,0x2c,0x5d,0xd3,0xa5,0x0e,0xaa,0x63,0x08,0xa0, + 0x3a,0x0a,0x42,0x96,0x7c,0x23,0xdd,0xec,0x33,0xce,0xcb,0x7c,0x1e,0xe3,0x5b,0xbe,0x0b,0xe6,0x5c,0x97,0x4a,0x04,0xdb,0xff, + 0xba,0x59,0x5e,0x82,0x03,0x5b,0x68,0xa7,0x6a,0x36,0xaa,0xcc,0xe3,0xfc,0xf5,0x1f,0x7a,0x8c,0xcd,0xec,0x2f,0x6f,0xf9,0xd2, + 0x19,0x8f,0xfa,0xe2,0x80,0x6c,0x46,0xbb,0xfd,0x34,0x16,0x68,0x54,0x26,0xa8,0x78,0x2a,0xe4,0x34,0x2c,0xaa,0xad,0xb8,0xab, + 0x1f,0xf1,0xaa,0x0c,0x21,0x58,0x42,0x2d,0x05,0x50,0x9b,0x8c,0xc2,0x88,0xda,0x4b,0x61,0xb4,0x85,0xbd,0x48,0x78,0x1b,0x93, + 0x2a,0x4a,0x7e,0xb6,0xcb,0xe5,0xdb,0x58,0xab,0x0e,0x6b,0xd2,0x39,0xd1,0x6c,0x44,0xf0,0xf5,0x73,0xae,0x4b,0xb2,0x8c,0x22, + 0xe5,0x49,0x1a,0xbb,0x25,0xc7,0xcc,0x58,0x5b,0x87,0x16,0xab,0x15,0x3d,0x56,0x30,0x25,0x99,0xad,0x50,0x62,0xcd,0x2d,0x5a, + 0xbf,0x71,0x39,0x44,0x87,0xd5,0xc4,0xa1,0xf6,0x0a,0x9a,0xf4,0x58,0xc0,0x39,0xfa,0x50,0x89,0x89,0x3b,0xb5,0xde,0xb8,0x0a, + 0xa2,0xcb,0x28,0xc0,0x49,0xd5,0x4f,0x45,0x94,0x44,0x5d,0x18,0x83,0x12,0x37,0x38,0x3b,0xd3,0xb2,0x12,0x62,0xd1,0xb8,0x7a, + 0xed,0x4e,0x0c,0xcb,0xfb,0xfc,0x28,0x1f,0x57,0x88,0xb7,0xfe,0xac,0xf5,0x0d,0x9d,0x97,0x74,0xcd,0x1a,0xb7,0x83,0x94,0x85, + 0x02,0x5b,0x9b,0x7d,0x1a,0x67,0x64,0x38,0x17,0xa2,0xdc,0xbc,0x2b,0x8f,0x17,0xa9,0xf2,0x4d,0x5f,0x33,0xdc,0x16,0x43,0x6d, + 0xcf,0xe7,0x62,0x9a,0x46,0xe5,0x8c,0x7b,0xb4,0x99,0xa3,0x36,0x23,0xd9,0x36,0x8c,0x56,0x8a,0x44,0xe7,0x95,0x79,0xf6,0x3f, + 0xc7,0xd2,0x2e,0xf5,0x55,0xab,0x3a,0x6d,0x26,0xaf,0xac,0x71,0x49,0x5f,0xd7,0xca,0xe7,0x6c,0xcf,0x27,0xaf,0x6c,0x40,0xaf, + 0x7b,0x29,0xb5,0xba,0xd4,0x73,0x35,0xb2,0xd4,0x8e,0x65,0xff,0x2a,0xa7,0x5c,0xb2,0x89,0xcf,0xfe,0xa8,0x75,0xd4,0x0a,0xad, + 0x07,0xcc,0x53,0xf8,0xa2,0x1a,0x0d,0x9c,0x89,0x53,0xd2,0x1e,0x8c,0x9f,0xaa,0xe9,0x39,0x59,0x83,0x12,0x76,0x7d,0x47,0xec, + 0xfb,0x44,0xeb,0xa2,0x6e,0xad,0x3f,0x3d,0x8b,0x21,0xbc,0x54,0x84,0x63,0x08,0xc6,0x18,0xfb,0x72,0x29,0x7f,0x5f,0xcf,0x5f, + 0x3c,0xfa,0xdf,0x5f,0x7f,0x9c,0x40,0xcf,0xe6,0x2b,0x2f,0x04,0xe1,0x04,0xc6,0x6c,0x87,0x69,0x7a,0xf9,0x66,0xb5,0x6b,0xe5, + 0x7b,0x71,0x56,0x8c,0xaa,0x95,0x2d,0x14,0x28,0x8b,0xe1,0x6b,0xbc,0x78,0xde,0x96,0x81,0x0e,0x59,0xca,0xbf,0x90,0xc3,0x98, + 0x77,0x0d,0x37,0x52,0x54,0x07,0x45,0xa9,0x4a,0x44,0xc9,0xff,0x1d,0x31,0x37,0xbb,0x9c,0x92,0x69,0x32,0x41,0xfe,0x29,0x81, + 0xdb,0x50,0x4f,0x59,0xee,0x37,0xcd,0x63,0x03,0xae,0xf6,0xa3,0x62,0xfc,0x77,0x21,0x02,0x71,0xbd,0x2f,0x37,0xd9,0xf7,0xc0, + 0x81,0x37,0x07,0xe4,0x3b,0xe7,0xa9,0x11,0xa5,0xb2,0x05,0x7d,0xe6,0x1b,0xbf,0x2d,0xa4,0x5e,0x78,0xe3,0xbc,0xda,0x8d,0x63, + 0xaa,0x9c,0x1d,0xe4,0xe0,0x45,0xd3,0xfd,0xa2,0xdb,0x19,0x23,0x4e,0x6e,0x94,0x59,0x6e,0xf5,0x56,0x2a,0x9e,0xba,0xa5,0x05, + 0x69,0x72,0x9a,0xaf,0x1d,0x44,0x21,0xff,0x21,0x12,0xbb,0xa9,0x87,0x5c,0x0b,0xe1,0x87,0x17,0xe7,0xd1,0x2c,0xfb,0x90,0x44, + 0xe5,0x3c,0x8d,0x87,0xca,0x50,0x8e,0xd7,0x8e,0xf0,0x46,0x2a,0xc5,0x76,0x84,0xd3,0x7d,0x7d,0x72,0x09,0x23,0x66,0x31,0x7e, + 0x51,0xb7,0x07,0x5a,0x63,0xb4,0x4f,0x29,0x5f,0xca,0x37,0x7b,0x64,0xb9,0x39,0x64,0xd6,0xcb,0x13,0x86,0x43,0x4e,0xd8,0x46, + 0x6c,0xda,0xb5,0x76,0x59,0xb1,0xdb,0x5d,0x35,0x72,0x80,0x7e,0x9f,0xcd,0xce,0x8a,0x19,0x03,0xb2,0x11,0x11,0xb4,0xbe,0x86, + 0x8f,0xd3,0xbd,0x7f,0xba,0x40,0x4b,0x1c,0xc6,0x0f,0xe4,0xc9,0x20,0x5a,0x77,0xfd,0x0c,0xc5,0x98,0x87,0x70,0xc5,0x30,0x1c, + 0xf4,0xc1,0x29,0x8c,0x93,0x12,0x0f,0x3f,0xab,0xf5,0xfe,0x68,0xad,0xd3,0x30,0x8e,0x0b,0x98,0xc2,0xab,0xef,0xe6,0xe2,0x14, + 0x19,0x22,0xd6,0x49,0xf7,0x8f,0x74,0x5e,0xbc,0xb5,0x7e,0x94,0x2f,0x61,0x3f,0xfd,0xee,0xc3,0x21,0x2c,0x4a,0x43,0xdc,0xef, + 0x1c,0x92,0xc2,0x54,0xad,0xf1,0xf1,0x79,0x7a,0x3b,0x87,0x7a,0x29,0x00,0x3b,0xf0,0xc0,0x7f,0x0c,0x91,0xf4,0x8a,0xd6,0xb1, + 0x19,0x5a,0x3f,0xf9,0x40,0x2d,0xbf,0xf6,0xe7,0x17,0x8f,0xa3,0x11,0x07,0xe1,0x8b,0xcb,0xc5,0x75,0x4f,0x6a,0x7d,0x99,0xd6, + 0x7a,0x83,0xb5,0x09,0xd9,0x2e,0xfe,0xd4,0x83,0x31,0x15,0x88,0x1b,0xcc,0x14,0x8e,0x91,0x71,0xca,0xb5,0x89,0xa2,0x78,0x11, + 0xc1,0xd4,0x8e,0xbf,0xcd,0x53,0x8a,0x2c,0x42,0x0a,0x42,0xb9,0x98,0xe3,0xe0,0x2f,0xf3,0x30,0x6b,0x64,0xa1,0x16,0x65,0xa8, + 0xa5,0x2d,0xe6,0x93,0x93,0x08,0xa0,0x9b,0x6e,0x7c,0xd3,0x9f,0xee,0xcd,0xc5,0x30,0xdd,0x1b,0x20,0xcf,0xe1,0xa8,0x9a,0xa2, + 0xa3,0xc8,0xe3,0x97,0x07,0x6d,0x13,0x30,0xc5,0x5e,0xa7,0xab,0x30,0xad,0x75,0xb8,0x7c,0x6a,0x1a,0x1f,0x9c,0xc4,0x28,0x52, + 0x39,0x00,0x3e,0x94,0x81,0x50,0x4c,0xe0,0xff,0x01,0x15,0x52,0x05,0x58,0x95,0xd9,0xd6,0xfe,0xde,0xb5,0xf6,0xde,0xe7,0x3b, + 0x49,0xdb,0xed,0x74,0xf7,0xfc,0xb7,0x75,0xba,0xbb,0xbb,0x7c,0xee,0x74,0x77,0xd2,0x0c,0x8d,0x4d,0x87,0xc4,0x48,0x3b,0x4a, + 0x77,0x99,0x28,0x98,0xa4,0x8a,0x94,0xc5,0x00,0x76,0xcb,0xfe,0xcf,0x7d,0x7a,0xf5,0x7a,0xe3,0x2d,0xa3,0x6a,0xa1,0xd6,0xb7, + 0x5c,0xd0,0x7a,0x2f,0xb0,0x84,0xce,0x63,0x5e,0x0d,0x1a,0xf0,0xd8,0x08,0xd6,0xe0,0xdb,0x2d,0xf4,0x74,0x0e,0xd2,0x69,0x37, + 0x26,0xa7,0x62,0x05,0xd7,0x71,0x16,0xee,0x89,0x43,0x00,0xd6,0x52,0x07,0x4e,0xe0,0xa7,0x60,0xfa,0x74,0x19,0xd5,0xe3,0xe9, + 0x3c,0xfc,0xfc,0x71,0xaa,0x18,0xc1,0x39,0x71,0x7f,0x30,0x5f,0xa6,0x64,0xf5,0x9d,0x19,0x8e,0xdd,0x24,0xd3,0xd5,0x11,0x3e, + 0x45,0x1e,0xc1,0xb4,0x43,0xe6,0x50,0x16,0xef,0xc6,0x33,0x1b,0xe4,0x72,0xf1,0x55,0x10,0xfc,0xe9,0xc3,0x01,0x0c,0x8b,0xe3, + 0xd8,0x47,0x8d,0x78,0xb4,0x06,0x7b,0x90,0x83,0x54,0x4a,0xa7,0x9f,0x3f,0x8c,0xe4,0xa5,0xf4,0x78,0x38,0xda,0x29,0x92,0xc6, + 0xad,0x55,0x22,0x42,0x04,0xd3,0x5a,0x95,0x0a,0x7f,0x9c,0xc1,0xf5,0xa3,0x88,0x14,0x0b,0x3e,0xf9,0x5d,0x6c,0xe0,0x1a,0xcb, + 0x2a,0xac,0xc0,0x25,0x9c,0x51,0x7f,0x62,0xbf,0x2d,0x5a,0x9e,0xe2,0xe9,0xe7,0xf0,0x6d,0xbc,0xda,0x45,0x2d,0x74,0xe5,0x0a, + 0x67,0x3c,0x5d,0xb2,0x04,0x61,0xcc,0x95,0x66,0xc6,0xc9,0x58,0x91,0xc5,0xbf,0x74,0xa8,0x61,0x4b,0x9b,0x1a,0x97,0x11,0xf2, + 0x38,0x2e,0x21,0x9a,0x2b,0xf8,0xd6,0x2e,0xd9,0x48,0x1b,0xac,0x2f,0x0d,0x59,0xfa,0x30,0xc6,0x19,0x6a,0x95,0xea,0x9f,0xf4, + 0xf7,0x58,0xb1,0x14,0xcb,0x2d,0x2f,0xd5,0x73,0x88,0xd4,0xae,0x51,0xea,0x14,0xdb,0x54,0xb1,0xe5,0x32,0xe6,0x38,0x1a,0x29, + 0xc0,0x3c,0x6b,0x1d,0x94,0x67,0x29,0x5c,0x5e,0x96,0xeb,0x30,0x55,0x8c,0x63,0x1f,0x15,0xf3,0x7d,0x17,0xe8,0xe1,0x47,0x7b, + 0x91,0xa1,0xca,0xf9,0xa2,0xda,0x66,0xb6,0xdb,0x9b,0xe9,0x24,0x1a,0xe1,0x7d,0x7b,0x28,0xb7,0xd2,0x32,0x92,0x46,0xe1,0x53, + 0x5a,0xf7,0xb8,0x99,0xcd,0xc5,0x62,0x7c,0x70,0xd5,0x73,0x3b,0xd1,0x80,0x45,0xd2,0xb8,0xf1,0x19,0xad,0x83,0x4f,0x69,0xbd, + 0x1e,0xcd,0xf8,0xfb,0x05,0x5e,0x83,0x50,0xcc,0xaf,0xe6,0xb7,0x8c,0xfc,0x67,0xb5,0xae,0x38,0x62,0x18,0xef,0x57,0xa1,0x5c, + 0xf2,0x05,0xaa,0x93,0xe1,0x2a,0x40,0x5c,0xb4,0x9f,0xa2,0x49,0xbb,0x69,0x89,0x5a,0x8d,0x12,0x4e,0xe7,0x3e,0x6b,0x39,0xaf, + 0xb3,0x75,0x50,0x2d,0x9a,0x28,0x5d,0x9c,0x50,0x49,0x74,0x1c,0xd5,0xce,0x3f,0x45,0xb5,0x5c,0xd8,0xcf,0xdf,0x2f,0x97,0xd3, + 0xff,0xd3,0x8e,0x46,0xf9,0xd2,0xcd,0x45,0x38,0xa8,0x92,0xa9,0xdd,0xea,0x7a,0xf6,0x2f,0xea,0xb5,0x94,0xe0,0x32,0xc6,0xb8, + 0x8f,0x83,0xd1,0x80,0x06,0x9c,0xa6,0x78,0x6e,0x33,0x2f,0xd1,0x7a,0x71,0xcf,0x66,0xde,0x86,0x6c,0xe1,0x17,0x83,0xdd,0x7c, + 0xd1,0x7e,0x80,0xaf,0x39,0xc1,0xa7,0x2c,0xa1,0x32,0xd7,0x5a,0xcb,0xa3,0x9e,0x87,0x1d,0x29,0xe8,0x92,0x31,0xbe,0xe9,0xdc, + 0xcc,0xd6,0xf7,0xb6,0x23,0xc3,0xab,0x98,0x5b,0xa9,0x0b,0x15,0x96,0x4d,0x32,0x51,0x71,0x11,0x8d,0x61,0x89,0xb4,0x95,0xc8, + 0x4e,0xee,0x47,0xa0,0xe8,0xa7,0x15,0x58,0xc7,0x93,0xcf,0xaa,0x21,0xb5,0x9f,0xb3,0xdd,0x8c,0xef,0xa2,0x2c,0xd4,0xd0,0x21, + 0xdc,0x5d,0x6e,0x2b,0x35,0xd3,0xe4,0x76,0x57,0xa1,0xd8,0x4b,0x45,0x2e,0x7f,0x95,0x6a,0xfe,0x3a,0x6a,0xfd,0xa0,0xdf,0x1a, + 0x29,0x96,0xb3,0x91,0xc9,0xc1,0x34,0xa2,0x54,0x15,0x26,0x64,0xb5,0x88,0xc1,0xd8,0xdc,0x60,0x67,0xf6,0x8c,0x1d,0xb6,0x10, + 0xeb,0xeb,0x57,0xff,0x2e,0xd6,0x70,0x07,0x5f,0x90,0x43,0xb4,0xc2,0xf6,0x71,0xa3,0xe7,0x4b,0xc3,0xfc,0x63,0x38,0x17,0x50, + 0x1e,0x4a,0x44,0x8c,0x6f,0x91,0xec,0x98,0xb9,0x83,0x7b,0xcd,0xad,0xb4,0x8c,0x07,0x50,0xee,0x08,0x47,0x98,0x75,0x03,0x4e, + 0x5b,0x53,0x30,0xaa,0x46,0xe9,0xac,0xb8,0x3d,0xc6,0x9a,0x63,0xcb,0x99,0xf2,0x27,0x45,0xa9,0x54,0x21,0x6b,0x30,0xc2,0xb7, + 0xf7,0xd1,0x71,0x48,0xe3,0xfe,0x47,0xb5,0xfe,0x64,0xd4,0x30,0x86,0x71,0x1c,0xf9,0xaa,0x05,0x31,0xd6,0x53,0xf4,0xd3,0x7a, + 0x52,0x46,0xbd,0x5b,0xac,0xac,0x05,0x30,0x6a,0x67,0xc6,0x89,0x58,0xf3,0xa8,0xd8,0xe9,0x7c,0x60,0xd9,0xe4,0x6c,0x7e,0x3f, + 0x41,0xbd,0x65,0xf4,0xe8,0x09,0xdd,0xda,0x38,0xa1,0x57,0xdf,0x76,0x08,0x17,0xe8,0x9b,0xe3,0xf2,0xd9,0x5d,0x73,0xef,0x28, + 0x77,0x25,0x60,0x93,0xfc,0x62,0xc8,0xd3,0xeb,0xc3,0xa5,0x18,0x9e,0xbe,0x70,0x1d,0x2f,0x6a,0x11,0x4f,0x86,0xe3,0x22,0xc5, + 0x70,0x3d,0x4a,0x1c,0xe5,0xd8,0x7e,0x5f,0x07,0xd5,0xcf,0x8b,0x96,0x07,0x1d,0x41,0x96,0x74,0x5e,0x18,0xaf,0x62,0x50,0x87, + 0x0f,0x0e,0xc9,0x4a,0xb9,0x85,0x3e,0x39,0x3a,0xf3,0xa7,0xb6,0x59,0xc7,0xcc,0x8a,0xe9,0x15,0xea,0x94,0x65,0x5a,0x95,0x6f, + 0x9c,0xd8,0x30,0x25,0x18,0x2d,0xd3,0x1b,0xe8,0xf0,0xfc,0x1c,0xec,0xf4,0xe8,0x43,0xb2,0xd7,0x97,0xab,0xf9,0x0f,0x2e,0xb4, + 0xb4,0x8b,0x02,0xf9,0x45,0x87,0xd7,0x32,0xd4,0xf9,0x6d,0xa7,0xfd,0x57,0xd7,0x79,0xf6,0xd8,0xde,0x8b,0x98,0x56,0x26,0xca, + 0xa6,0x8c,0x50,0x99,0x4f,0x0f,0x4d,0x58,0x0f,0xf0,0xfe,0x7f,0x2f,0xe1,0x9d,0x22,0x99,0xe2,0x27,0x5f,0x42,0xc7,0x33,0xc7, + 0x50,0x62,0x6b,0x42,0x1b,0xed,0xc6,0x79,0xe7,0x1a,0x64,0xbc,0xd4,0x45,0x91,0x62,0x08,0x3b,0x10,0x2c,0x17,0xcb,0x27,0xba, + 0xaf,0xd8,0x81,0x61,0xef,0x31,0x9c,0x9c,0x9d,0x2e,0xbf,0x1e,0x12,0x0d,0xb6,0x0e,0xb5,0x45,0xc5,0xf3,0x5a,0xb3,0x0b,0x65, + 0x96,0x03,0xe2,0xaf,0x49,0x15,0xa2,0xcd,0xbc,0xf2,0xc4,0x2d,0x05,0x8e,0x98,0x19,0x79,0x7c,0xd8,0x33,0x8e,0x2f,0x4c,0xbf, + 0x44,0x89,0x33,0x76,0x23,0xc6,0xf3,0xfa,0x83,0xae,0x09,0x6a,0xf1,0x78,0x73,0x93,0x77,0x0f,0xce,0xaa,0x0b,0xd4,0xe4,0x5b, + 0xe7,0x5c,0x42,0xaf,0x6c,0x71,0xfa,0x1e,0xb5,0x67,0x63,0x85,0x57,0x9e,0xe5,0xe1,0x02,0x0c,0x7a,0x55,0xa3,0xd0,0xf2,0xcf, + 0x0a,0x51,0x43,0xd1,0xd6,0x21,0xfc,0xcf,0xb9,0x31,0xce,0x25,0x32,0xd1,0xfa,0xde,0x32,0xe7,0x27,0x5b,0x68,0x0b,0x76,0x89, + 0x78,0x11,0xe8,0xf5,0xdf,0x64,0x4b,0x05,0xb5,0xf8,0xac,0xe1,0x32,0x73,0xc2,0xb2,0x28,0x9d,0x94,0xf1,0xe5,0x4f,0x5a,0x5f, + 0xb3,0x65,0x42,0x1f,0xc2,0xc3,0x97,0xaf,0xfc,0x35,0x17,0x79,0xee,0x8b,0x63,0x08,0x9c,0xda,0xca,0xd2,0xc8,0x0d,0xd0,0x7a, + 0xc3,0xa6,0x09,0x5d,0x4d,0x59,0xa8,0x93,0x3f,0x07,0xf2,0x52,0x04,0xa9,0x48,0x58,0x8d,0x2f,0x42,0xb5,0x7e,0xc4,0x5d,0xc8, + 0x91,0x45,0x74,0x0c,0xf9,0x28,0xf0,0xec,0xa7,0x76,0xc7,0x66,0xfc,0xe1,0x7d,0x06,0xf9,0xaa,0x82,0xfc,0x65,0x0b,0x06,0xcc, + 0x8d,0x34,0xd9,0xf0,0xfa,0x4c,0xeb,0xb6,0x1b,0xb4,0x6e,0xc2,0x9b,0x7b,0x85,0xa3,0x09,0x99,0x78,0x32,0x16,0xbb,0x31,0xa3, + 0x02,0xdf,0x9d,0xc1,0x97,0x17,0x78,0x9f,0x18,0x22,0xcc,0x2f,0xa7,0x21,0xfc,0xb7,0x5a,0xb4,0xa3,0x55,0x6d,0x92,0x1b,0xf9, + 0xa5,0x42,0xf2,0xa7,0x8d,0xd6,0x31,0x0a,0x27,0xbf,0xaf,0x4a,0x10,0x85,0x07,0x92,0xd4,0x7d,0x67,0xac,0xb7,0x14,0x89,0x4c, + 0x48,0xc3,0x7c,0x5f,0xeb,0x37,0x5b,0xb5,0x5e,0x8a,0x45,0x2f,0x26,0xe3,0x20,0x5e,0x51,0xb1,0xb0,0x18,0xab,0xdd,0xd9,0xce, + 0xad,0x5a,0x3f,0x7e,0xbd,0xc5,0x1f,0x5b,0x91,0x8e,0x79,0x75,0x08,0x45,0x3f,0x52,0xa8,0x1d,0xca,0x78,0xd3,0xfd,0xf0,0x78, + 0x82,0x61,0xbc,0xf8,0x66,0x2b,0x1e,0xb8,0xa1,0x0d,0xa7,0x30,0x5f,0xc4,0xe2,0x2d,0xc3,0x67,0x99,0xd6,0x51,0x5e,0x30,0x8e, + 0xf2,0x83,0x9b,0xe4,0x2a,0xde,0xee,0x7c,0x65,0xc8,0xda,0x81,0x98,0x99,0xf9,0xdc,0xe6,0x37,0x55,0x56,0x62,0x8f,0x3d,0x8c, + 0x66,0x77,0xa2,0xcf,0xf1,0xd9,0x04,0xfe,0xa0,0x5e,0x53,0x52,0x36,0x9d,0x77,0x0e,0x52,0x13,0xea,0x11,0x66,0x19,0xc5,0x3a, + 0x2a,0xa7,0x0c,0x47,0x3e,0xa7,0x5c,0x7f,0x5c,0xee,0xb1,0x4e,0x8b,0x96,0xfd,0x58,0x69,0xbe,0xdf,0x83,0x70,0xea,0x93,0x5f, + 0x8c,0xab,0x50,0xac,0x74,0x1d,0x15,0x39,0x74,0x88,0x4e,0xd3,0x8b,0xcb,0xb8,0x9a,0xf7,0xb9,0x12,0x64,0xb3,0xc7,0x46,0xd7, + 0x36,0xda,0x8c,0x75,0x64,0xcb,0xe4,0x10,0xee,0x34,0x8f,0x53,0x2d,0x4f,0x89,0xb6,0x1c,0xa4,0x1e,0xee,0x16,0xdd,0xf6,0x23, + 0xe2,0x0f,0x1a,0xa0,0xa5,0xb4,0x8e,0x97,0x0b,0x67,0x08,0xad,0x41,0xa9,0x2c,0xe4,0x62,0xf9,0xcb,0x28,0x1f,0x45,0x96,0x3d, + 0xcb,0xda,0xeb,0xcc,0x42,0x9e,0x3a,0x8b,0x30,0xd5,0x2a,0xcf,0xca,0xdd,0xb8,0x20,0x76,0x89,0x41,0x55,0x8c,0x80,0x29,0x61, + 0x58,0x6d,0x2d,0xe4,0xe5,0xf8,0xa0,0xd8,0xba,0x8f,0x6b,0xd5,0xf7,0xf5,0xca,0xc3,0x1a,0x84,0x33,0x68,0xa5,0x31,0xf1,0xda, + 0x5a,0xcb,0xb0,0x0a,0x37,0xf3,0x29,0x1b,0x9d,0xa8,0x75,0xc4,0x63,0xab,0xd9,0x4f,0x89,0xfc,0x5c,0x3a,0xff,0xeb,0x77,0x14, + 0xaa,0x46,0xbe,0x4c,0x99,0xe2,0xea,0x6c,0x19,0x66,0x89,0xb5,0x78,0x2e,0x97,0x2b,0xa8,0xca,0xec,0xe6,0x6c,0xb1,0x87,0x73, + 0xe9,0xf9,0x43,0xce,0x3b,0xf2,0x1c,0xc5,0xd4,0x4e,0xb5,0x2a,0x87,0xdb,0x45,0xa9,0x65,0x25,0x45,0x88,0xfb,0x6f,0x0c,0xc0, + 0xa0,0xcc,0x74,0x46,0xcb,0x61,0xde,0xe7,0x8c,0x41,0x94,0x7d,0x25,0x97,0x60,0xa9,0x0c,0xe7,0x70,0x3a,0x6d,0x6d,0xc2,0x4e, + 0xd1,0x4a,0xc7,0xf9,0xc5,0x4c,0x9e,0x67,0x31,0x5e,0x76,0xbb,0xe0,0x92,0x36,0x8c,0x72,0xc2,0xa2,0x54,0xcc,0xca,0xc3,0x7e, + 0xba,0xab,0x0e,0xdf,0x24,0x21,0x84,0x26,0x19,0x57,0x3d,0xad,0x75,0xcb,0xbd,0x30,0x6a,0xfd,0x6e,0xcd,0x95,0x55,0x38,0x2a, + 0x0e,0x60,0xc8,0xfe,0xea,0xd6,0x2b,0xc7,0xb8,0xc7,0xbe,0xd0,0xdf,0x23,0x84,0xf6,0xbb,0xda,0x38,0x6b,0x52,0x25,0xc5,0x38, + 0xfa,0xa8,0x8a,0x5b,0xa8,0xd2,0xbd,0x3d,0x93,0x07,0xd0,0x66,0x7b,0xa6,0x42,0x16,0xa0,0xc8,0xf5,0x9f,0x28,0x8e,0x41,0xd6, + 0xac,0xfb,0x26,0x1c,0x4f,0xe7,0x39,0xa3,0x50,0x74,0xf3,0xfd,0x56,0x23,0xa0,0x58,0xeb,0xb7,0xfb,0x26,0xf4,0x5f,0xa8,0xb6, + 0x2e,0x96,0x8f,0x55,0xca,0x60,0xb9,0xd1,0x79,0x47,0xa2,0xab,0x8d,0x42,0x45,0x8c,0xa8,0x13,0x5f,0xdf,0xb9,0x52,0x48,0xe3, + 0xfd,0x04,0xad,0x6b,0xa7,0x6b,0x6d,0x7e,0x71,0x99,0x12,0xb1,0x9a,0xee,0x79,0xe2,0x03,0x8b,0x51,0x94,0xa2,0xf5,0x6d,0xf7, + 0x18,0xc6,0x52,0xf2,0xf9,0x5b,0x19,0x35,0x70,0x1b,0x92,0x31,0xff,0xd3,0x0c,0x5c,0xa4,0x5c,0x12,0xc6,0xe6,0x54,0xad,0xd7, + 0x2e,0x34,0x8c,0x24,0x9e,0x55,0x45,0x6b,0xf1,0x4e,0x3b,0xa4,0xe1,0xc8,0x70,0xaf,0xf8,0xbb,0x61,0x84,0xd3,0xb5,0x9f,0xad, + 0xa2,0xed,0xf4,0xc4,0x75,0xeb,0xc9,0x62,0x1c,0x76,0x67,0xc7,0x17,0x18,0xc6,0xa7,0x8b,0x32,0xf9,0xae,0x14,0xec,0xc2,0x4a, + 0x5c,0xc0,0x75,0xdf,0x37,0x89,0x4f,0x94,0xf1,0x71,0x96,0xd6,0xe9,0xee,0x89,0x1f,0xca,0x11,0xcb,0xaf,0xa4,0xe1,0x30,0x1e, + 0x39,0xc7,0x07,0x44,0x80,0x54,0xc6,0x97,0xd9,0x5a,0xcf,0xfd,0x87,0x61,0x44,0xe2,0x99,0xe7,0xb2,0xa8,0x0c,0x9f,0xa9,0xcd, + 0x08,0xc2,0x3f,0x94,0x11,0x9f,0xa3,0xb5,0x8f,0xfb,0xf2,0x7f,0x16,0xfd,0x50,0x05,0x9f,0x2e,0x7c,0xbd,0xe0,0x95,0x11,0x52, + 0xc6,0x8f,0xee,0xf4,0x27,0xff,0x31,0x8c,0x26,0x0e,0xc3,0xdc,0x8b,0xd8,0x87,0x2f,0x96,0xd2,0xb7,0xcf,0xf8,0xb3,0x34,0x66, + 0xc7,0x69,0xfd,0xcb,0x0a,0xc3,0xd8,0x06,0xd9,0x8c,0x78,0xa4,0xd3,0x53,0x5f,0xf6,0x43,0x19,0xce,0x25,0x5a,0xdf,0xe9,0x4e, + 0x67,0xe1,0xc9,0x70,0x65,0xa9,0xc5,0x5e,0xe4,0xd0,0x7d,0x13,0xbc,0x11,0xc2,0xf8,0x75,0xa9,0xd6,0xc9,0xee,0xd2,0x49,0x11, + 0x88,0x52,0x3e,0x83,0x3c,0xf3,0x2c,0x29,0xe3,0x5f,0x2b,0xb4,0x3e,0xe9,0xce,0x6e,0xe4,0x2b,0xb2,0xb1,0x13,0xa1,0xe2,0x96, + 0x3c,0xbc,0xbd,0xb0,0x19,0x16,0xa3,0x3d,0x49,0xeb,0x1d,0x4b,0x0d,0x23,0xc7,0x22,0xbd,0x96,0x62,0x9c,0xdf,0xde,0x26,0xde, + 0xea,0x43,0x28,0x45,0xf0,0x07,0xd2,0xf8,0x97,0x9b,0xa9,0xb7,0xe2,0xfe,0xc7,0xca,0xdc,0x47,0x3f,0x3e,0x88,0xbb,0x3e,0xff, + 0xed,0x2d,0x43,0x47,0xb8,0x9f,0x7d,0x00,0xc6,0xa5,0x05,0x7d,0x62,0xe4,0xad,0x3e,0x7a,0xb2,0x15,0x79,0x73,0x26,0x90,0x75, + 0xd3,0xf3,0x45,0x33,0xab,0x90,0x68,0x2b,0x15,0x6b,0x67,0x15,0x23,0xd0,0xb9,0x0b,0x1d,0x54,0x8c,0x5a,0xbc,0x5e,0x3d,0xb9, + 0x96,0xcf,0xbf,0xb7,0x91,0x0e,0x89,0x5d,0x88,0xc7,0x46,0xac,0x10,0x33,0xb7,0x4f,0xeb,0x41,0xe8,0x75,0x6f,0x1e,0x30,0x47, + 0xb0,0x5d,0x8c,0x50,0x95,0x23,0x0e,0x71,0x6a,0x3f,0x6f,0x9d,0xfe,0x65,0x3a,0x47,0xd3,0x66,0x24,0xc8,0x6e,0xcb,0x79,0x0e, + 0xf3,0xdb,0xac,0x5e,0xcd,0xa5,0x4d,0x22,0x86,0xd2,0x67,0x75,0xc8,0x2e,0x9f,0x2e,0x99,0xa7,0x8c,0x38,0x68,0x34,0x4d,0x1b, + 0xc4,0x98,0xef,0x19,0x59,0x63,0xfb,0xfe,0x84,0xf7,0x8d,0xe9,0x33,0x42,0xa8,0xc3,0xa3,0x99,0x6b,0xa7,0xf5,0xcb,0x5e,0xdf, + 0x5a,0xd4,0xf1,0x69,0xb8,0x7d,0x8f,0x14,0xcf,0x7e,0xc4,0x3a,0x8c,0x93,0x2a,0x01,0xc7,0x1c,0x19,0xd4,0x6e,0xf6,0x51,0xef, + 0x94,0x34,0x24,0xf9,0x15,0x20,0xc3,0x3e,0xca,0xab,0xd0,0xcd,0xf1,0xf6,0x27,0x7f,0x08,0x50,0x51,0xe2,0xe6,0x06,0xca,0xa6, + 0x52,0x7b,0x3f,0xa2,0x65,0x2d,0x8f,0x98,0x8f,0x46,0x9a,0x19,0x34,0x44,0xed,0x88,0x74,0x24,0x39,0x8b,0xe8,0xab,0x18,0x7e, + 0x23,0xc2,0x2c,0xe0,0x2a,0xbf,0x00,0x0e,0xe4,0x66,0xec,0xa1,0x4f,0x46,0x6c,0xe7,0x10,0x6d,0x46,0x63,0x2d,0x77,0x52,0xbc, + 0x77,0x23,0x27,0xaa,0xaf,0xe3,0x2d,0xd7,0xee,0x46,0xa6,0x4c,0x10,0xd5,0xb4,0xc7,0xa7,0x88,0x7a,0xad,0xae,0x68,0xcb,0xbd, + 0x8d,0xb6,0x68,0x4e,0xb1,0xef,0x46,0x86,0xe8,0x47,0x89,0xbd,0x13,0x11,0xaa,0x5b,0xac,0xb5,0x2e,0x48,0x75,0xe4,0x62,0x80, + 0x9b,0x51,0x8b,0xb3,0x08,0xb4,0xec,0xe3,0x1e,0xc4,0x8a,0x8b,0x38,0x29,0xd2,0xc4,0x8d,0x19,0xaa,0x88,0xaa,0x85,0x63,0xb3, + 0xaa,0xa4,0xb7,0x8c,0x17,0x8a,0xb4,0x5e,0x7e,0x25,0x8c,0x6d,0xf6,0x48,0x8a,0xb5,0x36,0xa1,0xc4,0x2c,0xa7,0x08,0xfb,0x5e, + 0x4c,0xd0,0x4a,0x31,0xcc,0xc5,0x74,0x80,0xe6,0x9f,0xe1,0x0a,0x04,0xf3,0x18,0xaf,0xe0,0x97,0xb6,0xf0,0x8b,0xa7,0x6c,0xdd, + 0x6a,0xd6,0x72,0x1e,0x91,0xb9,0x68,0xb6,0xde,0x76,0x5b,0x12,0x82,0x5c,0xd5,0x38,0xe9,0x88,0xa0,0x40,0xde,0xcf,0x95,0xbc, + 0x1a,0xbe,0xfd,0xb4,0x43,0xb6,0x63,0x19,0xa5,0x61,0x39,0xa5,0x50,0x99,0x2c,0xc7,0x90,0xcd,0x6b,0x83,0x6b,0x10,0x49,0x42, + 0xcb,0x14,0xd7,0x7f,0x6a,0x1d,0xeb,0x69,0xc4,0x19,0x48,0x69,0xe6,0x2a,0x4a,0x50,0x55,0x1c,0x6d,0x36,0xd3,0x4a,0xe7,0x29, + 0x2e,0xb1,0xe7,0xca,0x51,0x9f,0x20,0x31,0xee,0x3d,0x46,0x6b,0xec,0xa7,0xe9,0x34,0x25,0x21,0xc0,0xb9,0xb0,0x80,0x23,0x51, + 0x43,0xfe,0x38,0xaa,0xfc,0x96,0xf9,0x95,0x51,0x81,0x3c,0x86,0x0a,0xd7,0xb4,0x81,0x39,0x7b,0x2c,0x8f,0x47,0x9b,0x09,0xfc, + 0xd1,0xd4,0x46,0xee,0x9b,0x7e,0x46,0xf6,0x9b,0x65,0x66,0xe7,0xec,0x20,0xb9,0x4c,0x3c,0xdf,0x31,0x65,0x0b,0x6f,0xa0,0xcb, + 0x62,0x51,0x02,0x46,0x2d,0xfd,0x28,0xc0,0xab,0x2d,0xe6,0x12,0x94,0xcd,0x39,0x69,0x99,0x40,0x1a,0x95,0xa8,0x5b,0x6b,0xcd, + 0x23,0x7c,0xd3,0x11,0xfc,0x1c,0x49,0x63,0x18,0xa3,0x2c,0x19,0x8f,0x55,0xfc,0x8f,0x2d,0x3c,0xee,0xda,0xac,0xb2,0x31,0xae, + 0xae,0xfa,0x20,0x59,0x5d,0xe4,0x6d,0xea,0xbc,0x75,0x46,0x88,0x2d,0x8a,0x53,0xac,0x13,0xe6,0x1e,0xdf,0x0a,0x39,0xe8,0xfd, + 0xe9,0xd5,0xd5,0x38,0xe0,0xf3,0xc1,0x16,0xb4,0x8b,0x34,0x8f,0x5d,0x9c,0x36,0xed,0x85,0x02,0xd5,0x8c,0x24,0x84,0xf1,0x2e, + 0x8f,0x8b,0x9c,0x63,0x2e,0x48,0x36,0x97,0x63,0xc0,0xef,0xc7,0x57,0x76,0x61,0xd0,0xba,0x19,0xad,0x32,0x8c,0xc2,0x50,0x0f, + 0x9b,0xb1,0x3a,0x59,0x6b,0xab,0x1f,0x8c,0x7f,0xae,0x14,0x7d,0x8e,0x68,0x0e,0x51,0x1b,0x90,0xe0,0xbb,0x1e,0x8b,0xe9,0x9e, + 0x16,0xd5,0xa1,0x36,0x78,0x3c,0xba,0xc1,0xb1,0x9d,0x42,0xd5,0x69,0xfc,0x3f,0x0d,0x53,0x65,0x40,0x55,0xd9,0x16,0xde,0xdf, + 0x5a,0x7b,0x9f,0x73,0x2f,0x97,0x50,0x9e,0x2f,0x8c,0xe9,0xee,0x9e,0x79,0x61,0x4e,0x77,0x77,0x32,0xdd,0xdd,0x4d,0x5e,0xd0, + 0x41,0x24,0x65,0xe8,0x4e,0x91,0xee,0x6e,0x90,0xb6,0x8b,0x2e,0x0b,0x41,0x29,0x73,0x38,0xef,0xfc,0x59,0xdd,0xa1,0x89,0x7f, + 0xd5,0x19,0xc6,0xd2,0xd1,0x05,0x63,0x0b,0xdf,0xb0,0x91,0xde,0xf9,0x7d,0x1a,0xf5,0x14,0x88,0xd3,0x5c,0xc2,0x52,0x5c,0xd6, + 0x6d,0x18,0x7f,0x1b,0x5f,0x30,0xe6,0xd4,0x83,0xcb,0x02,0xa9,0x57,0xed,0x25,0x25,0x46,0x5b,0x0c,0xe3,0xc0,0xa0,0x61,0xbc, + 0xbb,0x72,0xf5,0x4f,0x89,0x78,0xff,0xc7,0xc7,0x94,0x70,0x35,0xcd,0x1c,0x2f,0x10,0x62,0xa7,0x16,0x40,0x89,0xca,0x1b,0x5d, + 0xf8,0x74,0x79,0x12,0xb9,0x89,0x91,0x0e,0xc3,0x38,0x72,0xb1,0x10,0x0b,0x14,0xc9,0x35,0xf2,0xc3,0x5b,0x42,0x65,0x3a,0x3d, + 0x9a,0xc1,0xbb,0xa0,0x9d,0xa0,0x4e,0x9a,0x66,0x5f,0x9a,0xc7,0x1c,0x9c,0x28,0x50,0xf3,0xa2,0xa7,0x36,0x52,0x32,0x0a,0xb0, + 0x8f,0xce,0xe0,0x9f,0x1e,0x72,0x12,0xc7,0xa9,0x57,0x5e,0x9c,0xcf,0x29,0x88,0x42,0x13,0xc6,0xb9,0x0f,0x0f,0x9e,0x41,0x0b, + 0x25,0x21,0x96,0x1f,0xb7,0x9b,0xce,0x7d,0x70,0x38,0x8b,0x01,0xfa,0xe9,0xe5,0x7a,0xf2,0xa1,0xb5,0xef,0xe4,0xa3,0x55,0x35, + 0xa3,0x8c,0xf2,0x4d,0xbf,0x4d,0xd8,0x8a,0x66,0x4a,0x47,0x25,0x22,0x19,0x1b,0xa8,0x11,0xdb,0xd4,0x2d,0x86,0x3a,0x42,0x73, + 0xb8,0xf9,0xfa,0x6c,0x2a,0xe0,0x6b,0xce,0x51,0x00,0xa5,0x62,0x9a,0x0c,0x5a,0x97,0x22,0xb3,0x29,0x08,0x13,0xd8,0x83,0x6c, + 0xec,0xe1,0xb7,0x8a,0x68,0x17,0x3a,0x31,0x00,0x1f,0xdc,0xfa,0x65,0xb0,0x6d,0x33,0xd2,0x91,0x88,0x77,0x86,0xb1,0x97,0x62, + 0x69,0x5d,0x2b,0x2f,0xbb,0xb3,0x0d,0xc5,0xb6,0x74,0xf8,0xda,0xae,0x1a,0x91,0x55,0x48,0x31,0x7b,0x1d,0xa3,0x6c,0xce,0xa4, + 0x40,0x3a,0x48,0x0f,0x1d,0xa3,0x58,0xcd,0x8b,0x7b,0x79,0x84,0x72,0xd1,0x84,0x08,0x14,0xa1,0x0b,0x1b,0xb4,0x2e,0x72,0xb7, + 0xee,0x73,0xdc,0x83,0x56,0x27,0x4f,0x6d,0xd0,0xf9,0xad,0x2c,0xf5,0xe9,0xb4,0xd5,0x40,0xa3,0xbe,0x5f,0x76,0xa9,0x58,0x72, + 0x33,0x67,0x85,0x70,0x7a,0xa2,0x91,0x66,0x65,0x30,0xa6,0xb5,0x12,0xee,0xd1,0x5a,0xf0,0xcd,0xba,0x9d,0xf8,0x7e,0xe5,0x90, + 0xac,0xd7,0xa7,0x70,0x44,0xbe,0xfb,0x5e,0x0f,0xa5,0x2e,0x0a,0x25,0x3f,0x79,0x00,0xa3,0xd8,0x45,0xdf,0x15,0x93,0xbf,0x54, + 0xc2,0x56,0x6b,0x18,0x67,0x1f,0x15,0xc2,0x03,0x75,0x78,0xac,0xcd,0xec,0xb3,0x94,0xfe,0x53,0x43,0x9a,0x70,0x32,0xb7,0x79, + 0xdb,0x75,0x42,0xc4,0x61,0xf9,0x53,0x7e,0xd8,0x41,0xe9,0x58,0x11,0x83,0x9f,0xbf,0x55,0x22,0xc0,0x54,0x7c,0x74,0xa3,0x10, + 0xef,0xcf,0xe0,0xf7,0x65,0x6f,0xf7,0xa0,0x83,0x1c,0x94,0x18,0x36,0x85,0x6d,0xd7,0x0b,0x71,0x12,0xff,0xf8,0x66,0x1a,0xef, + 0x2c,0x5e,0x36,0x07,0x29,0x0e,0x9b,0xc2,0x87,0xcd,0x10,0xbe,0xb8,0xe1,0x76,0x7f,0x7a,0xb6,0x0f,0x9a,0x08,0xa9,0x37,0x8c, + 0x6e,0x53,0x24,0x9e,0xf8,0xf4,0xea,0xdf,0xf6,0xe0,0xbb,0x8b,0x7c,0xb0,0x11,0x4a,0xac,0x69,0x30,0x8c,0xc5,0x37,0x08,0xe1, + 0x03,0x3d,0x94,0x9a,0xc1,0xbf,0xaf,0xc7,0x2a,0x25,0x2e,0x2e,0x37,0x8c,0xc4,0x4f,0x84,0xa8,0x43,0x0b,0x0d,0xd0,0x38,0xf6, + 0x71,0x3e,0x1e,0x7e,0x42,0x13,0xcf,0x9b,0xf2,0xc7,0x3e,0x17,0xa2,0x93,0x82,0x65,0x20,0xb2,0x61,0x27,0x19,0x80,0x39,0xec, + 0x46,0x27,0x2b,0x31,0x50,0x69,0x18,0xdf,0x7d,0x2a,0x44,0x38,0xd5,0xc2,0x1b,0x99,0x28,0xa6,0x12,0x24,0x20,0x0f,0x56,0x71, + 0xab,0xd9,0x69,0xef,0x67,0x42,0xa4,0x61,0x1b,0x9f,0xc1,0x71,0x8c,0xe1,0x96,0xe3,0x1c,0xa9,0x4a,0xd5,0x0f,0xbd,0x5c,0x49, + 0x76,0xbe,0x3c,0x89,0x7d,0xd9,0x22,0xf6,0x9a,0xb5,0xcc,0x98,0x01,0x1e,0x88,0x53,0x66,0x87,0x5b,0xe9,0xe1,0x3a,0xf4,0x80, + 0x77,0xe1,0x3c,0x6a,0xa9,0x50,0x3a,0x59,0xc5,0x1f,0xad,0x86,0x61,0x35,0xe3,0x6c,0xa2,0x21,0x54,0xd1,0xcb,0x7e,0x72,0x1c, + 0x6d,0xbc,0x47,0x4f,0xa6,0xd5,0xff,0xcd,0xa3,0x16,0x84,0xab,0x08,0x99,0x66,0xa6,0xfb,0xa4,0xcd,0x30,0xa6,0xbe,0x30,0xbb, + 0x87,0x17,0xc2,0x71,0xf3,0x83,0xf1,0x54,0x2f,0xed,0x14,0x80,0x72,0x3c,0xfd,0xd8,0xa7,0x7f,0xd1,0x41,0xae,0x81,0x26,0xf6, + 0x57,0x9a,0x0f,0xe0,0x2e,0xc4,0xa8,0xde,0x87,0x38,0x3a,0x88,0x23,0x74,0x61,0x1c,0xf7,0xe0,0xfe,0x0e,0x48,0x71,0xf9,0x7e, + 0xc3,0x88,0xd8,0x21,0xc4,0x39,0xe9,0x89,0x68,0x79,0xab,0x5b,0x01,0xdc,0xc4,0x43,0x66,0x71,0x45,0x04,0xd1,0xef,0x90,0x4b, + 0x7e,0x92,0x4e,0xc9,0x06,0x44,0x70,0x05,0x35,0x6b,0x3b,0xe1,0x41,0x06,0x8f,0x6b,0x37,0x86,0xa2,0x13,0x45,0xb4,0x1f,0xa3, + 0xd2,0x8e,0x36,0xcb,0x1c,0xe6,0xa8,0x85,0x5a,0x29,0x0e,0x23,0x48,0xc2,0x34,0x9d,0x41,0x89,0x0c,0x03,0xf9,0xd0,0x5f,0x34, + 0x85,0x0c,0xa5,0xbd,0x11,0xc3,0x3e,0x3c,0x83,0x10,0x6d,0x0a,0xbb,0x1d,0x8f,0xa3,0xd3,0x71,0x4a,0xe6,0xb8,0xe6,0x98,0xfa, + 0x21,0x5a,0x4f,0x4f,0xec,0xa5,0x7b,0x57,0x7e,0x39,0xa0,0x79,0x61,0xd3,0xbf,0x32,0xa9,0xdb,0xac,0x3e,0x1e,0x13,0xd8,0xcf, + 0xbe,0x68,0xd7,0xb3,0x69,0xf5,0x07,0x5b,0x55,0x12,0xc6,0x5c,0xff,0xf7,0xe6,0x02,0x2f,0x50,0x09,0xbc,0x95,0x5b,0x80,0x65, + 0x42,0x46,0xf3,0xca,0x29,0xba,0x72,0x8b,0x96,0x86,0x5c,0x8a,0x46,0x0b,0xae,0x7d,0xaf,0x03,0x5d,0xaa,0x1f,0x3e,0x96,0x32, + 0x14,0x71,0x31,0x22,0xd1,0x65,0x62,0x3f,0x0c,0x38,0xfd,0x37,0x47,0xcf,0x40,0x0c,0x9f,0x46,0xd6,0xdf,0x26,0xc9,0xdd,0x59, + 0x1b,0xc4,0x66,0xf2,0x95,0xbf,0x66,0xe8,0x81,0xc8,0x77,0x98,0xe5,0x86,0x45,0x1b,0xa8,0xdd,0x65,0x2f,0x19,0x96,0xa3,0x68, + 0xe6,0x42,0x04,0x6a,0x11,0xd8,0xcb,0xbd,0x5c,0xae,0xd7,0x60,0xb3,0xf2,0x47,0x8b,0xb6,0xda,0x80,0x1f,0x0e,0xcb,0xd5,0xa7, + 0x38,0x94,0x9e,0x7c,0xaf,0x5f,0xbe,0xb4,0x8d,0x32,0x91,0x4c,0x81,0xf0,0xd7,0xaa,0xf0,0x62,0xb7,0x99,0xf6,0xc5,0x17,0xab, + 0xa8,0x97,0x9e,0x56,0x8d,0x74,0x5c,0x8f,0xa5,0x78,0xfd,0xa3,0x10,0x0e,0x44,0x9f,0x46,0x07,0xa8,0x10,0xfe,0x16,0x9a,0x77, + 0x49,0xd3,0x0e,0xe2,0xeb,0x78,0x0e,0x82,0x17,0xf2,0x28,0x09,0x2f,0x2c,0x15,0x37,0x65,0x99,0x47,0x27,0x20,0x82,0xf8,0xf6, + 0x36,0x99,0x44,0x3e,0xe8,0x46,0x28,0x7f,0xd8,0x8a,0x02,0xf2,0x57,0xc3,0xea,0x2c,0xee,0xac,0xe5,0x12,0x34,0x22,0x5a,0xcf, + 0x24,0x3b,0xa2,0x6d,0xe1,0x6a,0x8f,0x59,0x42,0xbe,0x65,0x1f,0xdc,0x6d,0x5e,0x7a,0x11,0x75,0x69,0xfe,0xda,0xf2,0x36,0x35, + 0x46,0x91,0x5a,0x3f,0xcf,0xcb,0x28,0xd4,0xab,0x00,0x7c,0x3e,0xcf,0xad,0xf2,0x4f,0x04,0x4a,0x97,0x59,0xad,0x42,0x2a,0xd1, + 0x5e,0x64,0x18,0x9b,0x6f,0x86,0xf0,0xa5,0xfb,0x66,0x28,0x53,0x3b,0x2a,0xeb,0xe1,0x9a,0xa2,0x5b,0xc4,0xed,0x15,0x86,0xb1, + 0xe3,0x2e,0x88,0x6e,0x6d,0x0c,0x23,0x56,0xd7,0x12,0xdd,0x8f,0x22,0x29,0x17,0x13,0x2e,0xe3,0x70,0xb7,0xdc,0x16,0x41,0x61, + 0xac,0x89,0x0f,0x4b,0x0c,0xc3,0xe1,0x1a,0x88,0x11,0xdc,0xe6,0xab,0x55,0x6a,0xb7,0x07,0xcb,0x61,0x72,0xdd,0x23,0xb7,0x38, + 0x38,0x8a,0x9c,0x32,0xc3,0xd8,0x74,0x25,0xc4,0x38,0xc2,0xf8,0x34,0x7e,0x0c,0x94,0xae,0xbb,0x30,0x06,0x2f,0x7e,0xe1,0xcc, + 0x22,0xd7,0x12,0xf6,0xc7,0xfd,0x93,0x5c,0xca,0x01,0x98,0xa5,0x9f,0x3d,0xf5,0x58,0x28,0xd1,0x6f,0xda,0x3f,0x7c,0x13,0x44, + 0x88,0xbc,0x3d,0x4b,0x8b,0xe5,0x03,0x54,0x86,0x93,0x32,0x9c,0x94,0xf8,0xa7,0x99,0xa3,0x78,0x0d,0xc4,0x41,0x75,0x45,0x92, + 0x2a,0xc4,0x39,0x04,0xf2,0x79,0xc7,0x18,0xa9,0xc4,0xd9,0xc3,0x86,0xf1,0xc1,0xc4,0x82,0xf1,0x87,0xfc,0xbe,0x40,0x56,0x53, + 0xb2,0xbe,0x36,0x1a,0x3e,0x64,0x15,0xcb,0xe7,0x0d,0x23,0xf0,0xd8,0x82,0x31,0xad,0x7d,0x98,0x21,0xab,0xb8,0x42,0x9b,0xc3, + 0x65,0xd3,0x14,0xc5,0x76,0x9a,0xb2,0xa4,0x53,0xb6,0xe5,0xbf,0xf3,0x7a,0x05,0x34,0x71,0xf3,0x8c,0x61,0xfc,0x64,0xba,0xe7, + 0xf1,0xab,0xc9,0x1c,0x4f,0x8d,0xfa,0x17,0x76,0x14,0x71,0x85,0xe5,0x0e,0x25,0xbe,0x9d,0x35,0x5b,0x3f,0xb2,0x60,0x34,0xa8, + 0x65,0x05,0xd8,0x4c,0x81,0xb4,0xe4,0xb0,0x6c,0x20,0x25,0x1a,0x8f,0x18,0x86,0x67,0x9d,0x79,0xf4,0xb0,0x6d,0x46,0x23,0x5e, + 0x75,0xfa,0x5f,0x06,0xdc,0xc4,0xfe,0x2b,0x84,0xd8,0xe7,0x22,0x44,0x04,0x2f,0xf9,0x36,0x8e,0xb6,0x6b,0xbb,0x28,0x09,0xd1, + 0x7a,0x09,0xdd,0xde,0x8e,0x62,0xac,0x3c,0x89,0x43,0xb8,0x49,0x35,0x72,0x38,0xd9,0x46,0x68,0x94,0x9e,0x3c,0xa8,0x82,0x1c, + 0xd6,0x0d,0xc1,0x9b,0x36,0xa2,0x05,0x03,0xe4,0x14,0xc3,0x3d,0x14,0x8d,0x10,0xee,0xe6,0x39,0x14,0x51,0xb4,0x2a,0x45,0x8d, + 0x6a,0xe2,0x75,0x1f,0x06,0xd2,0x2d,0x1b,0xa9,0x49,0xae,0x71,0x9e,0x87,0x07,0xc2,0xc9,0x83,0xb0,0x5d,0x6f,0x55,0x55,0x70, + 0xe7,0x83,0x68,0x94,0xe5,0xb8,0x75,0x27,0x9e,0xe6,0x58,0xda,0x40,0x4f,0xbf,0x55,0x8d,0x16,0xda,0x84,0x39,0xf2,0x23,0x6f, + 0x19,0x8d,0xdd,0xf8,0xc7,0x0d,0x99,0x28,0xa0,0xed,0xf8,0xf1,0xf1,0x2b,0xce,0xa2,0x9b,0xed,0xf2,0xa0,0x66,0x57,0x43,0xf2, + 0x97,0x26,0x87,0x8b,0x43,0xe5,0x1e,0xaa,0x92,0x41,0xa8,0x80,0x81,0xbc,0x45,0xeb,0x11,0xe7,0x72,0x84,0x22,0xb8,0x06,0x25, + 0x34,0xc4,0x23,0x0e,0x1f,0xd6,0x59,0x0d,0xf6,0xd0,0x93,0xa4,0xe1,0x70,0x86,0x0e,0xe9,0x69,0x32,0x42,0xeb,0xa2,0x18,0xa7, + 0x69,0x6a,0xe6,0x4b,0xb7,0x50,0x20,0x56,0x65,0x53,0x1a,0x55,0xb1,0xaf,0xe3,0x38,0x6d,0xd7,0x43,0x70,0xda,0x62,0xab,0x72, + 0x2a,0xc1,0x29,0x78,0xc3,0x4b,0x3a,0x6e,0xc1,0xb7,0xa3,0xf2,0xaa,0x34,0xa7,0x29,0x54,0x2d,0x4d,0x73,0x08,0xb1,0xf5,0xf3, + 0x76,0xa7,0x44,0x7d,0x6a,0xf1,0x82,0xcb,0x39,0xbd,0x87,0x7f,0x2d,0xa6,0x39,0xad,0x9a,0x4f,0x6a,0x89,0xda,0x90,0x6d,0x87, + 0xfc,0xa8,0x9a,0x22,0x30,0x8d,0x95,0xd9,0x28,0xc0,0xfb,0x06,0x2e,0xcc,0xa3,0x2e,0xec,0x84,0xbf,0x32,0xc8,0xdf,0x8c,0x97, + 0xcd,0xff,0xfa,0x66,0x90,0x7e,0x75,0x13,0x4b,0x6b,0x0d,0xe3,0x9e,0x17,0x85,0x38,0x4b,0x47,0xb5,0x27,0xbc,0xd1,0xa6,0x4d, + 0x3a,0x2c,0x7d,0x6b,0x8c,0xf6,0x52,0x32,0x7a,0xa9,0xd9,0x65,0x9f,0xd3,0x01,0xec,0x73,0x88,0x97,0xc1,0x96,0x0f,0x7a,0xb9, + 0x5f,0x9e,0xe6,0x78,0xab,0xbb,0x8a,0xd7,0xf2,0x9d,0x9b,0xd9,0x5b,0xda,0x5d,0xb2,0x79,0x58,0x3b,0x4a,0xb9,0x7a,0xba,0x96, + 0x6a,0xad,0x56,0xe5,0x72,0x5e,0x66,0x59,0xf2,0x6d,0x2b,0x52,0x55,0x05,0x47,0x4b,0x6f,0xd8,0x6d,0xfe,0x54,0x29,0x03,0xd5, + 0xa4,0x6a,0x43,0x87,0x5e,0x6e,0xeb,0x71,0xf8,0x73,0x69,0xa4,0xad,0xd5,0xd2,0xe5,0xb8,0x4f,0x1b,0x75,0xe9,0x95,0xcf,0x37, + 0x72,0x1b,0x26,0x71,0xc7,0xf7,0x15,0x94,0x09,0x2f,0xaa,0xd5,0xa2,0x54,0x22,0x87,0x61,0x97,0x7c,0xe9,0xac,0x75,0xd2,0x44, + 0xbe,0x38,0x4b,0x77,0xee,0xe2,0x1e,0xf2,0xa3,0xad,0xb2,0xda,0xf9,0x1e,0x4f,0x6b,0xb4,0x6c,0xd6,0x06,0xe5,0x1e,0xdd,0x9b, + 0x67,0xd5,0x7f,0x7a,0x54,0xb0,0x1a,0x76,0xee,0x50,0x27,0x96,0x24,0xe2,0xb4,0x9a,0xa4,0x56,0xcb,0x3f,0xbc,0x65,0x1b,0x52, + 0x5d,0x44,0xbe,0x65,0x8a,0xbd,0x1d,0x73,0xf9,0x04,0x85,0x22,0x16,0xfb,0x50,0x4d,0x4f,0xe6,0x23,0x05,0xb5,0x2a,0x0d,0x13, + 0xf2,0x9d,0x7b,0xe6,0xd1,0xca,0xeb,0x2a,0xf5,0x30,0x4e,0x76,0x8e,0xa6,0xf3,0x72,0x03,0x37,0x5a,0x12,0x29,0x8b,0x56,0x7d, + 0xdc,0x80,0x57,0xc3,0xf1,0xea,0x24,0xdc,0xd5,0x1b,0x4e,0x7b,0x29,0x91,0xb6,0xd3,0x53,0x69,0x98,0xc4,0x9b,0xd5,0x94,0x4a, + 0xa7,0xd5,0x61,0xea,0xc2,0x8a,0x60,0x6c,0xe4,0x20,0x75,0x46,0x1d,0x93,0x07,0xb9,0x0b,0x03,0xaa,0x5c,0x3b,0xc3,0x8f,0xef, + 0x96,0x91,0xa8,0xc2,0x7e,0x6d,0xc4,0x32,0x62,0x4d,0xd2,0x2f,0x2a,0x21,0x77,0xb9,0x49,0x65,0x92,0x17,0xec,0xf2,0xce,0x25, + 0x7d,0xe4,0x26,0x46,0x6c,0x42,0x3c,0x9f,0x26,0x84,0xdb,0x71,0xce,0xe5,0x83,0x32,0x82,0xd6,0x5d,0x54,0x81,0x5c,0xc4,0x61, + 0x49,0x08,0x8d,0xf1,0x10,0x1d,0x73,0xd8,0x2b,0x5b,0xf8,0x10,0x15,0x2c,0xaa,0xe3,0x73,0xb2,0x8f,0x07,0x69,0x1b,0x3a,0xe5, + 0x6e,0x14,0x39,0x6f,0x5c,0x3c,0x8b,0x20,0x3d,0x5b,0x1b,0x90,0x29,0xb6,0x19,0xad,0x5d,0x36,0x59,0xca,0x11,0x46,0x2d,0x78, + 0x7b,0x46,0xbf,0xea,0xa4,0x3c,0x48,0x5b,0xf5,0x06,0x6b,0x38,0xd6,0x04,0xc9,0x2c,0xc4,0xa8,0x43,0xd8,0xae,0x9e,0x2f,0x90, + 0x6f,0x47,0x68,0x6e,0x45,0x96,0x47,0xc6,0x64,0x1a,0xaf,0x97,0xfa,0x5e,0x8e,0xc2,0x39,0xaa,0x93,0x29,0xb8,0xf8,0xb2,0x08, + 0x34,0xd1,0x1b,0x35,0x5a,0x23,0x9d,0xa4,0x5e,0x7e,0x6e,0x0f,0x8d,0xe1,0xc9,0xbb,0x4a,0x61,0xe7,0x69,0xea,0x86,0x2d,0x0c, + 0xe1,0xa8,0xc1,0x3c,0x82,0xb4,0x7e,0xbe,0x36,0x13,0x7d,0x48,0xc0,0x46,0xcb,0xff,0xd2,0x54,0x03,0x9d,0xb2,0x8d,0x23,0x4e, + 0xcb,0xc3,0x09,0x8a,0xd5,0xae,0xef,0x95,0x5b,0xd1,0xc8,0x91,0xa8,0xe7,0x18,0x04,0xc8,0x4c,0xbe,0xc1,0x87,0x2a,0x51,0xa1, + 0xfd,0x81,0x87,0x12,0xb9,0x8d,0x0b,0x91,0x8a,0x79,0x4e,0xa6,0x78,0x34,0xd0,0xcf,0xc7,0x28,0x41,0x96,0xf1,0x4b,0x47,0x70, + 0xb7,0xcd,0x0f,0x3b,0x50,0x6c,0x69,0xe6,0x48,0x9e,0x90,0x67,0x2d,0xf7,0xc5,0xd2,0x69,0xea,0xd5,0x6f,0x8d,0x54,0x49,0x54, + 0xa8,0xbf,0x17,0x4a,0xeb,0xc9,0x8e,0x7e,0x98,0x6d,0xc3,0x71,0x71,0x25,0xf9,0xf1,0x0e,0x3a,0x83,0x7f,0x64,0x61,0x01,0x49, + 0xf8,0x46,0xec,0xa2,0x32,0x7e,0x65,0x17,0x22,0x79,0x0c,0x17,0x7a,0x70,0x33,0x7d,0xb5,0x81,0x07,0x65,0x2d,0xc5,0xf3,0x25, + 0x93,0x32,0x1e,0x6e,0xe2,0xb5,0x01,0xc3,0xf0,0xc9,0x10,0x62,0x17,0x9e,0x75,0x89,0xa4,0x7e,0xcb,0x34,0x79,0xf3,0x2d,0xa3, + 0x9c,0x40,0xc1,0xfc,0xd4,0x79,0xd7,0x62,0xec,0x5b,0xb2,0x8d,0xb3,0x9c,0xbb,0xd0,0x6f,0x49,0xa1,0x3d,0x94,0x8c,0x42,0xcb, + 0x39,0x14,0xaa,0x4b,0x7b,0x54,0x39,0x92,0xe9,0x3c,0xfa,0xb9,0xd5,0x65,0x07,0x79,0x53,0x38,0x42,0x51,0x82,0x3a,0xb4,0x52, + 0xbd,0xd3,0x02,0x6f,0xa5,0x00,0xaa,0x91,0xb1,0x54,0x82,0x31,0x4e,0xd5,0x33,0xb4,0x09,0x5e,0xfe,0xd5,0x28,0xfd,0x6f,0x04, + 0xb3,0x96,0x63,0xfc,0x78,0x98,0xd6,0x46,0x43,0xb2,0x52,0x05,0xe3,0x00,0x8d,0xd0,0x59,0xb8,0xfd,0x34,0x8d,0x77,0xca,0xe5, + 0xd7,0xdd,0x5c,0x8d,0x38,0x0b,0xdd,0xe1,0x8f,0x0e,0xe4,0xe3,0x1c,0xbe,0xc8,0xe1,0xa5,0x0f,0xe7,0xe2,0xe3,0x9b,0x87,0xe8, + 0x16,0x1f,0xae,0x44,0x99,0xbc,0x38,0x48,0x5f,0x40,0x91,0x76,0xc1,0x21,0x33,0xf7,0x1c,0x07,0xa0,0x52,0x79,0xd3,0x14,0x9f, + 0x40,0xbc,0x5a,0x91,0x43,0xee,0xf8,0x43,0x59,0x79,0x98,0xce,0x53,0x3c,0x06,0x1d,0x0b,0xd1,0xaa,0xdb,0xa9,0x95,0xdf,0x9e, + 0x94,0xe7,0x78,0x82,0xfb,0xd1,0xaf,0xd4,0x66,0xfc,0xda,0x88,0x71,0x24,0xc2,0x0b,0x9e,0xfa,0xf5,0x67,0x28,0x9f,0x2e,0xfb, + 0x53,0x6b,0xe7,0x5a,0xf9,0x9c,0x37,0x67,0x5a,0xf5,0x3b,0x4f,0x52,0x39,0x76,0x23,0xde,0xa5,0x08,0x7e,0xd6,0x6c,0xb3,0x81, + 0x1f,0xbe,0xb1,0xf3,0x01,0xad,0x96,0x26,0xac,0x01,0x54,0x4f,0xc5,0x98,0xa5,0x66,0x5a,0xde,0xa5,0x9f,0xa5,0x0d,0xdc,0xe1, + 0x60,0xa7,0x74,0x97,0x00,0x55,0xeb,0xe8,0xf2,0x97,0xd5,0x0f,0x21,0x94,0x8d,0x2e,0xf9,0x59,0xa4,0x16,0x4e,0x1b,0xe8,0xe2, + 0x08,0x79,0x1a,0xa3,0xb4,0x42,0x8a,0x9b,0xe7,0x0d,0xe3,0x85,0x3a,0x21,0xee,0xf3,0x42,0x09,0xae,0x5f,0xc0,0x8b,0xff,0x07, + 0x25,0x51,0x03,0x78,0x67,0x67,0xd6,0x3f,0xbf,0x73,0xde,0xf7,0xde,0x9b,0x7f,0xc6,0x36,0x6a,0xbb,0xab,0xda,0xed,0xb2,0x6e, + 0x3f,0xd5,0x76,0x97,0x83,0x45,0x6c,0x27,0x0d,0x76,0x62,0x1b,0xcd,0xd8,0x99,0x60,0xcc,0xd8,0x98,0x18,0x93,0xcd,0x44,0x33, + 0x49,0x36,0xf7,0xcb,0xf3,0xec,0xe3,0xc3,0x9f,0x34,0xad,0xbf,0x66,0xdb,0xbf,0x3b,0x4a,0xb4,0xe4,0xc3,0x52,0x71,0xda,0xb0, + 0x13,0x11,0xf2,0x9c,0xa2,0x4f,0xa6,0x6d,0xfb,0xe5,0x62,0xa2,0x17,0xf2,0xd0,0xcc,0x97,0x24,0x5d,0x52,0xf8,0x3d,0x1a,0xbf, + 0x6c,0xdb,0x8b,0x6b,0x89,0x32,0xf9,0xbe,0x4c,0x9c,0x41,0xa1,0xf9,0xc7,0x9d,0xfa,0xde,0xbd,0x46,0x82,0x51,0xca,0xad,0x7c, + 0x41,0xdd,0xd5,0x81,0x72,0x5e,0xfb,0x87,0x71,0xae,0xc3,0x86,0xf3,0x5c,0x86,0xe5,0xef,0x97,0x62,0x97,0xbc,0xe4,0x2a,0x23, + 0x1c,0x28,0xbf,0xde,0x16,0x8c,0x49,0x7e,0x24,0x52,0x8a,0x8c,0x6e,0xfc,0xe0,0x98,0x66,0x5b,0x0f,0x88,0xbf,0x44,0x70,0x29, + 0xfa,0xac,0x02,0x44,0x61,0x37,0x5e,0xca,0x40,0x94,0xe5,0x89,0x52,0x54,0xa2,0xdd,0x38,0xcb,0x87,0xf4,0xdf,0xb7,0xe4,0x70, + 0x82,0x59,0xcc,0xe5,0x66,0x1e,0x76,0x59,0xeb,0x07,0x55,0x80,0x64,0x38,0x25,0x20,0xc2,0x4a,0x56,0x27,0xcd,0xb3,0x70,0x55, + 0x3f,0xfb,0x55,0x00,0xb2,0xcd,0x19,0x39,0x62,0xae,0x7a,0x3a,0x04,0xc7,0x24,0x12,0x17,0xf4,0x13,0xfe,0xbc,0x93,0x53,0x55, + 0x3c,0x27,0xcf,0xf7,0xe3,0x38,0x89,0xc4,0x08,0x0f,0xc3,0xdd,0xb8,0xe5,0xb8,0xce,0x80,0x8f,0x39,0x25,0x41,0x08,0x83,0x37, + 0x3e,0xa9,0xe0,0x7c,0xee,0xd0,0x0d,0x08,0x76,0x7a,0xbc,0x15,0x47,0x31,0x2a,0x4b,0x92,0xf1,0xd9,0x79,0x75,0xd3,0x83,0x21, + 0x1c,0x6d,0x7c,0x73,0x9d,0xbf,0x5a,0xe4,0x07,0x1f,0x1d,0x0b,0x44,0x22,0x4e,0x6f,0xfc,0xe3,0x39,0xd9,0x81,0x5b,0xdf,0x68, + 0x43,0x0f,0x1e,0x33,0xb6,0x1c,0xc4,0x96,0x4e,0xe3,0xe9,0x41,0x59,0x5a,0xc5,0x45,0x48,0xe4,0x58,0x84,0x98,0xff,0x17,0x83, + 0x2a,0x84,0x19,0x47,0xf9,0x18,0x02,0xd8,0x5b,0x3f,0xd1,0xa5,0x42,0xe0,0x65,0x24,0xca,0x46,0x2f,0x1e,0xc4,0x0c,0xa2,0xad, + 0x97,0x57,0xfe,0xf5,0x28,0x16,0x35,0xc1,0x9f,0x4f,0x23,0x8f,0xfb,0x39,0x1a,0xbf,0x0b,0x13,0x45,0xe6,0x9c,0xa5,0x9e,0x2d, + 0x44,0xc3,0x70,0x5a,0xf7,0x4e,0x15,0x5e,0x33,0x28,0xb9,0xc3,0xb6,0x2f,0xd4,0x12,0x15,0xca,0x27,0xf3,0xbd,0xb0,0x5b,0xdb, + 0x48,0x93,0x93,0x70,0x4e,0x80,0xa6,0x86,0xb9,0xe5,0xd7,0xda,0x89,0x3a,0xf0,0x6d,0x31,0x0e,0x20,0x4a,0xfb,0xa1,0x5f,0x25, + 0x43,0x53,0xfe,0xdc,0x60,0x6d,0x2b,0x91,0x27,0x6f,0x7a,0x64,0x4c,0x12,0x79,0xf1,0x0d,0xae,0x6a,0x11,0x9d,0xec,0xb1,0xed, + 0xe9,0xcb,0x44,0xff,0x46,0x23,0x9f,0x94,0x23,0x28,0xe4,0xcd,0x77,0x7e,0xdd,0x68,0xc5,0xa9,0xe3,0x70,0x41,0x99,0x34,0x21, + 0x58,0xe2,0x11,0x82,0x77,0x8e,0xc3,0x87,0xc3,0xf0,0xce,0x41,0xf5,0xbb,0x0f,0x3b,0xb0,0xdb,0x0a,0x93,0x5f,0x47,0xf1,0x42, + 0xb2,0xe7,0xae,0x93,0xda,0x88,0x96,0xfc,0x9b,0x13,0xcd,0xad,0x59,0x2a,0x41,0xb2,0xb0,0x97,0x4b,0x14,0x0f,0x61,0x0a,0x17, + 0xe5,0xc5,0x1c,0xc4,0xa3,0x93,0xdd,0xf0,0xcc,0x77,0x4d,0xf2,0xf2,0x1d,0x2e,0x68,0xc1,0xc6,0x33,0x48,0x61,0x45,0xf7,0x75, + 0xdb,0xb6,0x53,0x33,0xd1,0xaf,0xa3,0x91,0x0b,0xc7,0x24,0x92,0x60,0xd2,0xc2,0x5e,0xdb,0xde,0xde,0x40,0x14,0x81,0x5a,0x19, + 0x95,0x02,0xdc,0x72,0x86,0x63,0x24,0x0a,0x3f,0x6b,0x41,0xac,0x9e,0x80,0xa2,0xad,0x3d,0xff,0xb1,0xa1,0x98,0xbf,0x68,0xc1, + 0xd3,0x6f,0xe6,0xc0,0xa2,0x6f,0xfa,0x6c,0x7b,0x55,0x13,0x51,0x9e,0xf5,0x61,0x13,0xfb,0x49,0x2d,0x6f,0x7b,0x60,0xcb,0x15, + 0x7e,0x36,0x57,0xef,0xe2,0xcd,0x69,0xfc,0x36,0x99,0x57,0x6c,0x7b,0xcd,0x29,0xa2,0x7a,0xd5,0x8a,0x70,0xd5,0x8d,0x03,0x88, + 0xe4,0x78,0x04,0xc0,0x6f,0x61,0x90,0x6e,0x92,0x30,0x55,0x0e,0x0f,0xdc,0xd9,0xad,0xfc,0x9d,0xea,0x71,0xd0,0x48,0xd7,0x57, + 0xcd,0x0a,0x1e,0x34,0x7e,0x7b,0x42,0xf2,0xe0,0x8d,0x20,0x3e,0x85,0x27,0x53,0x79,0x14,0x97,0xd8,0x51,0xce,0x2f,0x17,0x70, + 0x05,0x47,0xf3,0x5e,0xa9,0xc6,0xab,0x0e,0x1f,0x9e,0xc5,0x37,0x5f,0x35,0xf1,0x9d,0xaf,0x57,0xaa,0xf7,0xd3,0x8c,0x4c,0x7d, + 0xf7,0x51,0xcc,0x22,0x59,0xfc,0x24,0x80,0x2f,0xc8,0xff,0xba,0x5b,0xce,0x05,0xc6,0x69,0x6e,0x66,0x19,0x86,0x0f,0x82,0x55, + 0x11,0xea,0x55,0x21,0xf6,0x61,0x1f,0x8f,0x20,0x04,0x31,0x7c,0x4c,0xfa,0xa1,0x26,0xb4,0x9b,0x95,0x27,0x01,0x72,0x5b,0x0b, + 0xbb,0xc1,0x03,0x87,0x05,0xde,0xaa,0x0d,0x6f,0xd7,0xa0,0xd6,0x48,0x50,0x8e,0x5e,0x2e,0x93,0x73,0x9c,0x87,0x17,0xfc,0x75, + 0xb8,0xdc,0x57,0x22,0x95,0x3c,0xa9,0x9b,0xf9,0xdb,0x8f,0xca,0x54,0x07,0x77,0xf2,0x10,0x56,0xac,0xe9,0x94,0x33,0xc6,0xac, + 0x23,0xc1,0x2c,0x95,0x2c,0x79,0xf4,0x3c,0x5c,0xf8,0x24,0xdf,0x90,0x6e,0xa4,0xb2,0x3b,0x7f,0x14,0xab,0x82,0xe4,0x17,0x5e, + 0x7c,0x51,0x52,0x79,0xfe,0x8f,0xd8,0x2b,0xf1,0x28,0xe7,0xab,0x08,0xe3,0x6c,0xf1,0x32,0xc9,0x96,0x29,0x8e,0xc4,0x25,0x8e, + 0xd0,0xf7,0xa5,0x60,0x0c,0x61,0x18,0xe4,0x78,0x99,0x77,0x18,0x7f,0x3b,0x2c,0x7f,0xfc,0xf3,0xd7,0xb9,0x4b,0xc2,0x38,0x56, + 0xd6,0x7f,0x3f,0x0c,0x93,0xf2,0xe7,0xf2,0x30,0x1b,0x88,0x82,0xb1,0xf0,0x91,0x5c,0x1c,0xe5,0x54,0x3c,0x1c,0x80,0x5c,0x89, + 0x40,0x9f,0xb4,0xaa,0xf7,0xa8,0x61,0xd4,0xb6,0xc3,0x3b,0x89,0x4e,0xc3,0x5d,0xc2,0xe7,0x55,0xea,0xff,0xa9,0x46,0x37,0x3f, + 0x95,0xa3,0xda,0x65,0xaf,0xb3,0x07,0x77,0x2c,0x73,0x8e,0x97,0x62,0xe4,0x22,0x9c,0x6b,0xe7,0x25,0x2c,0x88,0x71,0x0e,0x94, + 0x4b,0xc6,0xf3,0x17,0x24,0x01,0xb7,0xbb,0xa2,0xd5,0x51,0x22,0xd5,0x86,0x17,0xfa,0x39,0x0e,0x2d,0xd6,0x3f,0x32,0x25,0x02, + 0x4d,0xc2,0x3e,0xe6,0x24,0xea,0xcc,0x18,0x7d,0xce,0x28,0x9d,0xdf,0x61,0x05,0x4b,0xa4,0x93,0xbb,0x31,0x8a,0x23,0x70,0xd3, + 0xfb,0x0c,0x57,0xc3,0x85,0xfd,0x8d,0xd5,0x4d,0xfa,0x89,0x7e,0xeb,0xa4,0xce,0x46,0x33,0x0f,0xa8,0x69,0xa9,0x92,0x12,0xe4, + 0xab,0x83,0xdc,0x61,0x2e,0x0c,0xd0,0xae,0x48,0x57,0x51,0xbc,0x13,0xfb,0xd4,0x1e,0xde,0xa7,0x2f,0xf3,0x75,0xf4,0xf1,0xbd, + 0xaf,0x4f,0x23,0x07,0xaf,0x5d,0x14,0xc7,0x0f,0xb2,0x03,0xa9,0xfc,0xca,0xfc,0x01,0xa4,0x98,0x17,0x71,0x0e,0x37,0x1d,0xe6, + 0x12,0x44,0xc8,0xc3,0xb1,0x96,0xb1,0xb9,0x8f,0x4b,0x75,0x20,0x67,0x60,0x04,0x93,0xbc,0x68,0xc8,0xaa,0xe6,0x22,0xe3,0x13, + 0x5f,0xa7,0xf7,0x87,0x9c,0x7c,0x38,0x15,0x51,0x18,0xe2,0x70,0xb8,0x5b,0x77,0xfa,0xa1,0x04,0xe1,0xb8,0x7f,0x54,0x3d,0x9b, + 0x86,0x5f,0x0d,0x58,0x83,0xc8,0x31,0xb2,0x90,0xa6,0x82,0x8d,0x76,0x2c,0x4f,0x31,0x4e,0x70,0x96,0x75,0x16,0x81,0xc6,0xa4, + 0x54,0x62,0x73,0x92,0xa4,0x63,0x92,0x3f,0x7f,0x26,0x19,0x63,0xaa,0x13,0x2e,0xe6,0x51,0x75,0x45,0x75,0xca,0x96,0x30,0xa9, + 0x90,0x8f,0xea,0x50,0xc6,0x3b,0xf5,0xeb,0x1e,0xce,0x0f,0xce,0x3a,0x0a,0xad,0x3d,0xf3,0x0f,0xe9,0x18,0x75,0x5f,0xa8,0xee, + 0xe4,0x02,0x7d,0x77,0x22,0xef,0xc6,0x59,0x95,0x8c,0x3c,0xd1,0x06,0x2d,0x1c,0xb4,0xed,0x98,0x3a,0xa2,0x52,0x79,0x72,0x7b, + 0x18,0x47,0x62,0x37,0x0e,0xf2,0x6b,0xdf,0x14,0x8b,0x49,0x65,0x57,0x6c,0x3b,0xab,0x92,0x28,0x5c,0xa6,0x51,0xcd,0xeb,0x72, + 0x51,0xc8,0xa9,0x6a,0x90,0xf3,0x11,0xce,0xe1,0xc8,0x80,0x49,0x3b,0x86,0x6d,0xfb,0xa5,0x0b,0x44,0x99,0xbc,0xde,0x5b,0xd7, + 0x72,0x0f,0xcf,0x60,0xfd,0x0c,0xa6,0xe4,0xf1,0x41,0x1c,0x81,0xa6,0x94,0xb9,0xe4,0xb2,0xbb,0x88,0x2e,0x63,0x65,0x0f,0x5c, + 0x78,0x02,0x4e,0x35,0x68,0x86,0x13,0x2d,0x1c,0xb3,0xed,0xc8,0x6e,0xa2,0x16,0x79,0xf7,0x81,0x1f,0x50,0x60,0xdc,0xf4,0x4a, + 0x24,0x8a,0xf1,0xf3,0xbb,0x8e,0xb2,0x97,0x7a,0xc2,0xd9,0x17,0x8a,0xde,0x1a,0xb7,0xed,0x07,0x7b,0x88,0x72,0x70,0x7f,0xb9, + 0xd4,0xf1,0x55,0x95,0xc6,0x8a,0x82,0xe7,0xce,0xfe,0xdc,0x45,0x54,0x89,0x64,0x44,0xb2,0xe3,0xa9,0x1c,0x68,0x72,0x9e,0xb0, + 0xed,0x77,0x7b,0x88,0xda,0x81,0x3f,0xfe,0xd9,0x4f,0x96,0xec,0x60,0x4f,0x68,0xaa,0x99,0xb6,0x6d,0xae,0x20,0x1a,0xe1,0x93, + 0x18,0x56,0xff,0xc4,0x98,0xd4,0xe0,0x8a,0xa4,0x41,0xd3,0xd0,0x65,0xdb,0x3e,0x70,0x95,0x28,0x00,0x7b,0xe0,0xaf,0x7e,0xf6, + 0x96,0x1b,0xea,0x04,0x16,0xad,0xee,0xb6,0xed,0x65,0xa3,0x44,0xf7,0xfb,0xf3,0x08,0x3f,0xd0,0x8b,0xf3,0x5c,0xa2,0xe2,0xf9, + 0x00,0xbb,0x48,0xb6,0x3c,0x1a,0xa2,0x0b,0xa0,0xa8,0xba,0xcb,0xb6,0xf5,0xbf,0x88,0x6a,0x65,0x8a,0x3d,0xe4,0x6f,0x73,0x81, + 0x2b,0xda,0x3c,0x77,0xf6,0xcd,0x08,0xd1,0xff,0xbd,0x94,0x27,0x1e,0x1c,0xa0,0xf6,0x41,0xd3,0xd4,0x5c,0xef,0xc1,0x51,0xa2, + 0x77,0x83,0x51,0x8c,0x5b,0x96,0xe7,0x72,0x36,0x97,0x60,0x1e,0x75,0x4e,0xd9,0xf6,0xd6,0x41,0xa2,0x5c,0x1e,0x42,0x15,0x1e, + 0x1a,0x92,0x3e,0x6b,0x51,0xaa,0x9a,0xe6,0xdb,0x86,0xb8,0x09,0xc7,0xd4,0x47,0x3f,0x20,0x84,0x47,0xf1,0x40,0xa2,0xf4,0xe2, + 0xbb,0x50,0x68,0x1a,0x9a,0xb6,0xed,0x0f,0x06,0x89,0xc6,0xb1,0x13,0x61,0xe8,0xc5,0x29,0x3c,0xf3,0x71,0x2d,0x6b,0x9a,0x9a, + 0xb1,0xed,0x80,0x21,0xa2,0x8f,0x6d,0x64,0xc0,0x98,0x3f,0x81,0x58,0x56,0x06,0x19,0xcd,0xb6,0xbd,0x67,0x19,0x28,0x89,0x37, + 0x75,0x3b,0xef,0x57,0xf9,0xfa,0xd7,0x08,0xe5,0xe1,0x05,0xe1,0xf2,0x1e,0xdd,0xe1,0xc5,0x74,0xcb,0xf9,0x59,0xbb,0x5f,0x82, + 0x55,0x99,0x95,0xc2,0xc9,0xf3,0xdd,0xb1,0xf8,0x3c,0x47,0x59,0x8b,0x0b,0x8c,0x6b,0x08,0x5f,0xf9,0x44,0xd4,0xc6,0xb3,0x2a, + 0x7c,0x61,0x95,0x3e,0xcb,0x31,0xec,0x66,0x96,0xe8,0x1c,0x79,0xa4,0xd4,0x4a,0xc6,0x75,0x15,0x88,0x40,0x23,0x8f,0x2b,0xb8, + 0x54,0x0e,0x38,0x0e,0x71,0xa7,0xae,0x44,0xb1,0x59,0x8a,0xfb,0x7c,0x51,0x63,0xde,0x5a,0xc7,0xde,0x6c,0xaf,0x2d,0x56,0xae, + 0xe2,0xce,0xf1,0x9b,0x1e,0xee,0x81,0x2f,0xf7,0xab,0x34,0x1e,0xb5,0xbe,0xdf,0xf4,0x97,0xab,0xc6,0x5f,0xe8,0xa4,0x1a,0x92, + 0x18,0x1e,0x5c,0x39,0xac,0x02,0x56,0x67,0x98,0xb1,0x70,0x47,0xd2,0xad,0xfb,0xa4,0x17,0x29,0x48,0x5e,0xbe,0xa8,0x4d,0x7f, + 0xee,0xa6,0x42,0x10,0xb0,0xb2,0x01,0x15,0x6b,0x5a,0xf5,0x41,0x47,0x1c,0xfa,0x79,0x84,0x3b,0xd4,0xd6,0x2a,0x33,0x04,0x5e, + 0x56,0x31,0x9a,0xf5,0x49,0x1e,0xb0,0xd0,0x6b,0x78,0xb2,0xcb,0xda,0x97,0x9a,0xcc,0x04,0xb8,0x38,0x3f,0x3e,0x25,0xd5,0xe8, + 0x75,0x2a,0xc2,0xd4,0x82,0x9f,0xf7,0x2e,0x08,0xe5,0x53,0x4b,0x7e,0x9e,0xee,0xe4,0xca,0xd9,0x8f,0x34,0x4a,0xb6,0x53,0x0a, + 0x53,0xdc,0xdb,0xf6,0xb5,0x3b,0x89,0xe2,0xdf,0x8e,0x58,0xbd,0xae,0x7f,0x53,0x02,0x0e,0x1a,0x7b,0x70,0x6d,0xc9,0x3b,0xf1, + 0xf7,0xc4,0x61,0xef,0xbd,0x3b,0xb8,0x70,0x49,0x0e,0xc7,0xbf,0xe0,0x89,0x88,0x8f,0xf7,0xa9,0x24,0x2b,0x5a,0x52,0xcc,0x00, + 0xf8,0x2c,0xbc,0xc7,0x93,0x3f,0x38,0xfe,0xd5,0x15,0x55,0x62,0x65,0xe2,0xfa,0xc2,0xe7,0x3f,0x7c,0x39,0x7a,0xc5,0xff,0x16, + 0x2c,0xb8,0xc4,0x65,0x8e,0x48,0x0e,0x46,0x00,0xea,0x57,0x4c,0x71,0xd1,0x8d,0xcf,0xe4,0x2d,0xcf,0xd6,0xa5,0xbf,0x3e,0x63, + 0x55,0x72,0x0d,0xfe,0xb9,0x64,0x1c,0x65,0x4b,0xfd,0x10,0xf9,0xf0,0xb4,0x6e,0xb9,0x73,0xcd,0xac,0x23,0x1c,0x06,0x2d,0xd5, + 0x44,0xa1,0x43,0xb3,0x76,0x1c,0x8f,0x63,0x87,0xec,0x55,0x0d,0x3a,0x08,0xa9,0xdc,0x8e,0x52,0x1e,0x82,0x41,0xcd,0xce,0x44, + 0x8f,0x0c,0xce,0xda,0x69,0xfa,0xe1,0x76,0xfc,0x88,0x73,0xe6,0x8f,0x7c,0x8d,0x3d,0x71,0x48,0x32,0xd8,0xa4,0xfc,0xc5,0x44, + 0x45,0x73,0xc3,0x12,0xbe,0xb7,0x5a,0x72,0xf1,0x97,0x59,0x8c,0xf1,0x07,0x11,0xfa,0xf3,0xbf,0x8c,0xb0,0x49,0x6a,0x0d,0xd1, + 0x56,0x22,0x8a,0xe2,0xaf,0x3f,0x3d,0xc6,0xdf,0x75,0xa0,0x82,0x5d,0xf0,0xf7,0x12,0x2e,0xc6,0x28,0x34,0x79,0xae,0x23,0x7a, + 0x7a,0xee,0xbc,0x84,0xef,0xce,0x87,0x0f,0x9f,0xc2,0xef,0x1e,0xf6,0x85,0x26,0x5a,0x4f,0xb4,0xc9,0x20,0x7a,0xe9,0xc1,0x6f, + 0xb7,0xa5,0xe3,0x28,0x96,0x79,0xb2,0x83,0x36,0xdd,0x40,0x94,0xbf,0x80,0xa8,0x89,0xe9,0x45,0x77,0xbe,0x2c,0x19,0xc6,0x49, + 0x79,0xf5,0x15,0x2f,0x3c,0x7e,0x05,0x6d,0x78,0xbc,0x02,0x33,0xb2,0xe5,0x2e,0x93,0xd2,0x34,0x91,0x19,0x4d,0xf4,0xc2,0xf6, + 0x51,0x7e,0x67,0x06,0x1d,0x9c,0x2f,0x2f,0x6f,0x49,0x41,0x17,0x0f,0x43,0xd1,0x2f,0x0c,0xa2,0x45,0x51,0x44,0x93,0x8c,0x47, + 0x8f,0xe1,0x20,0x1f,0xc1,0x3c,0x7a,0x69,0x1e,0xd1,0x37,0x3b,0x88,0x26,0x64,0xb5,0x07,0xe2,0x50,0x24,0x43,0xaa,0x96,0x73, + 0x90,0xa4,0x32,0x51,0x8e,0xfd,0x1c,0x2a,0xff,0x70,0xe7,0x83,0x38,0x6c,0xec,0x56,0x83,0xba,0x17,0x6b,0xfb,0x58,0x53,0xc5, + 0x22,0xa2,0xe4,0xb9,0x93,0x6a,0xa3,0x1f,0x6b,0x2f,0xa0,0x5f,0x3f,0xe6,0x83,0x69,0x56,0xb4,0x71,0x33,0x51,0x6c,0x34,0xd1, + 0x1f,0xca,0xf1,0x65,0x3a,0xb7,0xe1,0xdd,0x55,0x94,0x78,0x33,0xd1,0x8f,0x09,0x44,0x0d,0x3c,0xad,0x4b,0xf9,0xbc,0xb8,0x60, + 0x5c,0x92,0x38,0x6d,0x7e,0x14,0x1e,0x6c,0x34,0x2a,0x50,0x84,0x34,0x95,0x83,0x8f,0xcf,0xcb,0xba,0xb3,0x92,0xaf,0x6e,0xce, + 0x54,0xd9,0x7c,0x4a,0x47,0x71,0x2c,0xfe,0xfe,0x2f,0x5d,0xa4,0xce,0xe9,0x67,0xfd,0x54,0x24,0x7b,0x22,0x59,0xac,0xab,0x72, + 0x02,0xf9,0x46,0xb7,0xf2,0x32,0x5a,0x65,0x6b,0x16,0x62,0xf1,0xa1,0xa2,0x77,0x36,0x11,0xbd,0x9c,0x48,0x94,0x80,0x37,0x3a, + 0x31,0x85,0x67,0x52,0xb0,0x94,0xac,0x9b,0x89,0x1e,0xce,0x20,0x0a,0x42,0xb9,0xa3,0x5e,0x5f,0x74,0x1e,0xd5,0x91,0x12,0x8f, + 0x0e,0x5c,0xe4,0x2d,0x77,0x9d,0xe0,0x01,0xcc,0x8b,0xc7,0x29,0x6e,0x87,0x1b,0xee,0xfc,0x63,0x03,0xdc,0x50,0x8f,0x08,0x5c, + 0x95,0x31,0xf1,0xd2,0x53,0x68,0xe1,0x5b,0x3f,0x6a,0x53,0x27,0xf0,0xc2,0x0d,0xad,0xac,0xe9,0xeb,0x85,0x44,0x6b,0x4f,0x11, + 0xcd,0xa0,0x18,0x93,0xb8,0x73,0x52,0xd2,0x31,0x26,0xbf,0xf8,0x7f,0x0d,0x53,0x05,0x40,0x55,0xd9,0xd6,0x5e,0xdf,0x5a,0x7b, + 0x9f,0x73,0xee,0xbd,0xc4,0xf8,0xe3,0x74,0x77,0x59,0xd3,0xdd,0xdd,0xdd,0xfa,0x3b,0x1d,0xd6,0x74,0x97,0xc9,0x03,0x41,0x40, + 0xa4,0xbb,0x53,0x2f,0x8a,0xb4,0xc5,0x60,0x21,0xd2,0xdd,0xd8,0x52,0x03,0x3c,0x6c,0x25,0xde,0xdd,0xbd,0x57,0xe7,0x87,0xf4, + 0xce,0x79,0x44,0x51,0x7b,0x88,0x5a,0x24,0x58,0xe2,0xd0,0x8f,0x60,0xf3,0xac,0xde,0xac,0x46,0x6c,0x43,0x78,0xac,0x9d,0xe7, + 0xd5,0xab,0x00,0xee,0xe4,0x76,0x4e,0xb1,0x42,0xf8,0x90,0xe3,0xc9,0xf5,0x7c,0x10,0x15,0xf2,0x5e,0x3c,0x6f,0x46,0x2e,0x3b, + 0x55,0xb5,0xf1,0xe6,0x69,0xed,0xd8,0xcc,0xe9,0xfc,0x63,0x28,0x4a,0xf0,0xcc,0x4a,0xee,0xe4,0xad,0x5c,0x08,0x35,0x8c,0xc7, + 0xbd,0x8d,0x02,0x6c,0x46,0x98,0xed,0xfa,0x93,0x7a,0x52,0x02,0xe4,0xbd,0x0d,0xfc,0xfe,0xb8,0xf2,0x56,0xd1,0xda,0x1b,0x6b, + 0x10,0x02,0x63,0xa5,0xf2,0x53,0x4f,0x1a,0xd5,0xd8,0xa7,0xfc,0x61,0xf7,0x47,0xaa,0x1a,0x93,0x36,0xac,0xd5,0x65,0x98,0x36, + 0xdf,0x5f,0xed,0x36,0x07,0xd9,0x1f,0x63,0x3a,0x11,0x9b,0xf9,0xed,0x34,0x73,0xa5,0x31,0x67,0x08,0x7f,0xaf,0x97,0x6e,0x39, + 0xc2,0x3f,0x2d,0xe5,0x42,0xfc,0x34,0xa8,0x12,0xf9,0xd1,0x3e,0xdc,0x53,0x2c,0x3b,0x55,0x8f,0xfa,0x39,0x50,0x72,0x71,0xd5, + 0x0e,0xc4,0x69,0x6f,0xd5,0xed,0xf6,0x57,0x82,0xe5,0x34,0x82,0xec,0x45,0xbc,0x87,0xbb,0xb8,0x08,0xfb,0x71,0x71,0xb4,0xec, + 0x96,0xa3,0x72,0xf1,0x31,0x1d,0x27,0xbb,0x51,0xae,0x39,0x01,0xb1,0xf0,0x43,0x2a,0x57,0x61,0x7e,0xb6,0xbc,0xd1,0x83,0x08, + 0xb4,0xe0,0xcf,0x40,0x2e,0xd4,0xeb,0xd4,0xad,0x23,0x48,0xc6,0x7e,0x23,0x5c,0x25,0x60,0xa7,0x6c,0x90,0xed,0xd2,0x28,0xaf, + 0xfc,0xb0,0x44,0x52,0xf8,0x8e,0xe5,0xdc,0x04,0x8f,0x62,0x6c,0xe3,0x36,0xa4,0xa8,0xab,0x56,0x22,0x16,0x19,0x7c,0x7f,0xaf, + 0x3e,0x86,0x5c,0xf5,0xd7,0xe7,0xdb,0xb1,0x70,0x37,0xfc,0xa4,0x01,0xef,0x2e,0x41,0x99,0xb5,0x04,0x9a,0x2e,0xf0,0x22,0x7a, + 0xa5,0x86,0x68,0x27,0x56,0x21,0x1a,0xcf,0x1e,0xe0,0x34,0xa6,0x1e,0x28,0x3a,0xe1,0x82,0x3f,0x58,0x4b,0xb4,0x5a,0x7e,0x1f, + 0xc2,0x62,0xa4,0x40,0x14,0x55,0x4f,0x25,0x5a,0xe9,0x82,0x05,0xb2,0x5b,0xb0,0x31,0x7b,0x89,0xfa,0x42,0xd1,0xcd,0x17,0x12, + 0x35,0xb8,0x40,0xbe,0x72,0x65,0x34,0x66,0xa5,0x29,0x4f,0x45,0x5b,0x2e,0x22,0x32,0xeb,0x88,0xc2,0xf9,0x89,0x27,0x3c,0x3a, + 0xf9,0x6e,0x45,0xaf,0x5c,0x42,0xf4,0x8a,0x0b,0x52,0x0c,0x73,0x2b,0xcf,0x5e,0x86,0x37,0x4c,0xfa,0xe1,0x2a,0x22,0x69,0x26, + 0xba,0x70,0x14,0x05,0x9c,0xc6,0xab,0x90,0xcf,0xc7,0xc5,0x33,0x5f,0xbd,0xf3,0xd2,0xaf,0x8a,0xfc,0xaf,0x76,0xd1,0x36,0x11, + 0x9d,0x62,0xee,0xc4,0xec,0x18,0xcc,0xd1,0xf4,0xd2,0x8d,0x44,0x9f,0xbb,0xe8,0xc7,0xe5,0xa6,0xdb,0x76,0x71,0x9e,0xa4,0xe2, + 0x8f,0xdd,0x50,0x34,0xd7,0x8b,0x28,0x76,0x88,0x68,0x1b,0xcb,0x5f,0xdd,0x28,0x43,0x1b,0x3e,0xa4,0x0f,0xcf,0x27,0x7a,0xac, + 0x8f,0xa8,0x55,0x7d,0x71,0xd6,0x28,0xe1,0x71,0x3d,0xbd,0x06,0x3e,0x68,0xb6,0x35,0x9a,0xf5,0xbc,0xe8,0x9b,0x39,0x73,0xe2, + 0x65,0xa9,0x04,0xab,0x0c,0xb5,0x19,0xa1,0xee,0x7b,0x39,0x5d,0xa5,0xab,0x7c,0x47,0x97,0xf1,0x5a,0x09,0x2a,0x50,0xae,0xcb, + 0xd4,0xb5,0xcb,0x65,0x5e,0xaa,0x91,0x86,0x4c,0xde,0x27,0x13,0xe6,0x21,0x49,0x37,0x06,0x30,0x89,0xe5,0x68,0x42,0x8a,0x11, + 0xe7,0x19,0x87,0x43,0xc6,0x63,0xb5,0xfa,0x87,0xe5,0x92,0x0d,0x6f,0x54,0x81,0x43,0xb8,0xd7,0x1a,0x41,0xa0,0x5c,0xf0,0x6d, + 0x1c,0x4a,0xe1,0xcf,0x3d,0xf8,0x73,0xe1,0x38,0x47,0xea,0x1b,0x37,0xa9,0xd9,0xdf,0xa6,0xa1,0x09,0xab,0xb8,0x03,0x37,0xb7, + 0xa8,0xc7,0x07,0x1c,0x3f,0x76,0xa9,0x38,0xbe,0x7e,0x88,0x13,0xf4,0xe7,0xf9,0xc6,0x0e,0x51,0xd5,0xec,0xb4,0x6e,0xa8,0xb6, + 0x3a,0x10,0xe6,0x48,0x43,0x8e,0xed,0xda,0x6d,0xee,0x19,0x68,0xe2,0x02,0xfc,0xff,0x4a,0x76,0x8a,0x67,0x37,0x6f,0xe5,0x51, + 0xf6,0xc1,0x18,0x3f,0xdf,0xae,0xfe,0xdc,0x65,0x1e,0x41,0x8b,0xf5,0x6b,0xae,0x44,0x48,0xa9,0xed,0xaa,0x32,0x5b,0x2c,0x46, + 0xf1,0xe2,0x6e,0x9e,0x75,0xc1,0x1f,0x9d,0xd6,0x2f,0x9f,0xbc,0xbc,0x65,0xea,0x27,0x51,0x92,0x24,0x23,0xb6,0x46,0x4e,0xb2, + 0xa6,0x74,0x62,0x0b,0x8a,0x8c,0x6c,0x4e,0x34,0x4f,0xab,0x03,0x38,0x8b,0x76,0xbd,0xe8,0x8d,0x0c,0xc4,0xca,0x0d,0x77,0x2c, + 0x70,0x4a,0x25,0x42,0xd4,0xfb,0x95,0xea,0x8b,0x9f,0x37,0x21,0x01,0xaf,0xd5,0x72,0x37,0xfa,0xf5,0x22,0x1f,0xdd,0x20,0x13, + 0x2a,0x06,0xe5,0x86,0x67,0x36,0xca,0xf0,0xb9,0x37,0xfc,0xed,0xbd,0xbc,0x42,0x36,0x43,0x53,0xb7,0x17,0x51,0xc8,0x00,0x91, + 0xf1,0x2f,0x7c,0x79,0x01,0x47,0xc8,0x52,0x0e,0x65,0x45,0xe9,0x57,0x12,0xcd,0x3b,0x45,0xd4,0xa4,0x22,0x10,0xa3,0xbe,0xbb, + 0xdf,0x97,0x35,0x5d,0x78,0x35,0xd1,0xc6,0xd3,0x44,0xc3,0x7c,0xd3,0x66,0x73,0x10,0xd3,0xf6,0xe2,0x94,0x7a,0xe6,0x43,0x9a, + 0x6c,0x9c,0x9c,0xcc,0x3d,0x3a,0x31,0xf9,0x1f,0x7d,0x4f,0x97,0x5b,0x2b,0x87,0x4a,0xa9,0xd4,0x1b,0x15,0x88,0x9a,0x12,0xa8, + 0x0e,0xa8,0xa5,0xaa,0xda,0xac,0xe0,0x06,0xd5,0x8c,0x5f,0xd6,0xa3,0x95,0xa7,0x96,0xbb,0x0f,0x4b,0xb0,0xed,0xb0,0x99,0xe7, + 0x78,0x31,0x44,0x72,0x71,0x1a,0xcb,0x75,0xbe,0x2a,0x52,0x23,0x28,0x43,0xbb,0xfe,0xa6,0xd2,0xfa,0xde,0xdf,0xc3,0x87,0x0f, + 0xc8,0x23,0xcd,0xe8,0x41,0x8b,0x59,0xa7,0x9e,0x6b,0xe1,0xf2,0xeb,0x3f,0x8a,0x9b,0xb2,0x20,0xcd,0xd6,0x83,0x2c,0xfb,0xec, + 0xcd,0x6a,0x14,0x51,0xd6,0xb8,0x31,0x7a,0xde,0x90,0x51,0x70,0x7e,0x8c,0xf2,0xb9,0xbd,0x48,0xef,0xbb,0x76,0x07,0x67,0xa8, + 0x10,0x8e,0x71,0x1f,0x40,0xb3,0x6d,0x87,0xda,0x75,0xd9,0xb0,0x59,0xe4,0x88,0x45,0x84,0x57,0xa3,0xd5,0xa5,0xd2,0x78,0xc4, + 0xb8,0xa8,0x56,0x7a,0x38,0xca,0xda,0x8f,0x12,0xfb,0xdb,0xbb,0xa6,0xce,0xcc,0x13,0x6f,0x2e,0xd7,0x1f,0x06,0xe9,0x53,0x12, + 0x74,0x41,0x2c,0xf7,0xaa,0xe3,0xb2,0xd8,0x16,0x83,0x93,0x9c,0x88,0x3a,0x3e,0xa3,0xc7,0xf4,0x61,0x19,0xbb,0x38,0x04,0xc7, + 0x6d,0xc1,0xb6,0x2c,0xfb,0x06,0xc9,0x41,0xb1,0x9c,0xb5,0x1f,0x44,0xab,0xe1,0x44,0x94,0x31,0xa6,0x8a,0xc4,0xb3,0x51,0x9f, + 0x02,0x55,0xf1,0x11,0x7d,0x8a,0x97,0x7a,0x25,0xba,0x44,0x5f,0xd3,0x7e,0x7d,0xbf,0xe1,0x3d,0xa5,0x40,0x95,0x9e,0x1f,0x82, + 0x3c,0xaf,0x32,0xd9,0xa7,0x47,0xf5,0x1e,0xa3,0xd2,0x0a,0x41,0x94,0x6c,0x35,0x7b,0x39,0x57,0x5f,0xe7,0x74,0x3c,0x74,0x42, + 0x47,0x1a,0x31,0x6e,0xd6,0xa8,0x63,0x8d,0x2d,0xca,0xeb,0xed,0x24,0xab,0x85,0x4b,0xed,0x19,0x08,0x9b,0x72,0xce,0xb8,0xab, + 0xd2,0x65,0xbf,0x8f,0x6d,0x2b,0x87,0x99,0xa5,0x7a,0x07,0xe7,0xda,0x92,0x50,0x60,0x25,0x49,0xc9,0x79,0xbb,0xb8,0xd6,0x5a, + 0xaa,0x7c,0x2e,0xf0,0xe7,0x11,0xb7,0x4a,0x31,0x69,0xee,0x23,0x44,0x3e,0x43,0x13,0x93,0x7f,0xff,0xdd,0x63,0xf6,0x63,0x19, + 0x26,0x30,0xaa,0xca,0xe1,0xb4,0xdb,0x37,0xe9,0x62,0xf5,0x21,0xfd,0x72,0x3f,0xd1,0xed,0x91,0x93,0x93,0x27,0x90,0x60,0xf3, + 0xec,0xb7,0xc7,0xea,0x09,0xb7,0x9d,0x48,0xf1,0x7a,0xda,0x89,0x1f,0x5e,0x99,0xd5,0x8b,0x6f,0xcb,0xf5,0x51,0xcf,0xd3,0x17, + 0xba,0x62,0xee,0xf0,0x73,0x34,0x7a,0xfd,0x63,0x04,0x99,0xab,0x55,0x96,0x39,0xdf,0x69,0xed,0x80,0xb7,0xa7,0x2f,0x4a,0xed, + 0xc1,0x6a,0x4c,0xad,0xb5,0x8a,0xae,0x2a,0xd2,0x79,0x46,0x16,0x4e,0xcb,0x21,0x63,0xb1,0x8a,0x52,0x11,0xc6,0x2e,0x0c,0xa9, + 0x3f,0x86,0x1c,0xe7,0x50,0x6e,0xf8,0x1a,0x27,0x6d,0x91,0x7a,0xc8,0xe3,0xc3,0x31,0xcc,0x9e,0xf6,0x52,0x13,0x0e,0xa8,0xc5, + 0xfa,0xa6,0xb3,0xca,0xd7,0x3a,0x34,0xe5,0xa5,0x2c,0xd5,0xa1,0xda,0x75,0x87,0xa4,0x98,0xa7,0xcd,0x11,0x64,0xa9,0x30,0x8e, + 0x95,0x0b,0x8e,0x72,0x13,0x76,0xcb,0x4b,0x99,0xb2,0x54,0x32,0xd1,0xc9,0xd3,0x7a,0xd5,0x6e,0x7d,0xdc,0x7a,0xeb,0x2c,0x37, + 0x38,0xca,0x1d,0x2d,0xf6,0x76,0xb7,0x83,0xb6,0x32,0x6b,0xbd,0x1a,0xc6,0x2f,0x2f,0xf6,0x19,0x43,0xec,0xa7,0x13,0xcc,0x11, + 0xfe,0x91,0xbc,0xb1,0x41,0xfc,0xb1,0x57,0x7c,0xac,0x02,0xb5,0x42,0x47,0xc8,0x93,0xb7,0xbe,0x1d,0x29,0xaf,0x7e,0x3e,0xc6, + 0xb1,0xfc,0x6d,0x28,0x67,0xa0,0x41,0x7b,0x3b,0x06,0xd1,0x87,0xb3,0xb8,0x61,0x82,0x7b,0x51,0xca,0x9b,0xc5,0xbe,0xd8,0x3e, + 0x6f,0xd1,0x01,0x0c,0x73,0xb0,0x3e,0x8a,0xab,0x52,0x70,0x9a,0x57,0x62,0x9b,0xe8,0x2a,0xa9,0x45,0xb1,0x2c,0x56,0xf6,0x9f, + 0x2a,0x78,0xc1,0x49,0xe4,0xe0,0xfa,0x12,0x33,0x53,0xb2,0x50,0x61,0x64,0xb8,0x5d,0x51,0x6e,0x1b,0x43,0x91,0x15,0x88,0x6a, + 0x09,0x97,0x72,0xd9,0x8c,0xb5,0x38,0x85,0x0b,0xb3,0x71,0x9c,0x83,0x10,0x84,0x7d,0xb8,0x7a,0xb7,0xeb,0xf8,0xb8,0x00,0x26, + 0x55,0xdf,0x42,0x54,0xb2,0x8c,0x68,0x0f,0x9e,0x5a,0xc5,0x5f,0xce,0x58,0xcb,0x07,0xd8,0x2a,0x85,0x1f,0x7e,0xde,0x03,0x45, + 0x1e,0xd3,0x88,0xca,0xfe,0x43,0xb4,0x91,0x03,0xe1,0xcd,0x21,0x3c,0x63,0x99,0x0b,0xe8,0x35,0x93,0x28,0x34,0x90,0xa8,0x03, + 0x33,0x3c,0xfe,0xaa,0x46,0x36,0x2e,0xa6,0xb6,0x07,0x89,0x5e,0x0c,0x25,0x5a,0xa7,0x0f,0x1b,0x7e,0xec,0xa7,0x7d,0x24,0xdd, + 0x38,0xca,0x39,0xa2,0xd7,0x71,0xa2,0x9e,0x96,0xac,0x72,0x71,0x58,0x86,0x64,0x8d,0x99,0x87,0x36,0xf7,0x23,0x46,0xa1,0x9a, + 0x11,0x2e,0x3b,0x64,0x1f,0xea,0xe5,0x38,0x2f,0xe7,0x7a,0x4e,0xe7,0xa5,0xaa,0x80,0xbd,0x99,0x0f,0x99,0xc9,0x12,0xe5,0x58, + 0x8a,0x22,0x35,0x8a,0x60,0x7d,0xe9,0x69,0x1d,0xc2,0x41,0x3c,0xfd,0xfb,0xb9,0x8a,0xfa,0xee,0x21,0xda,0xec,0x4f,0xe4,0xcb, + 0x8f,0xa6,0xe1,0xaa,0x4f,0xe7,0x6a,0x3a,0x72,0x2f,0x91,0xbb,0x0b,0xb2,0x8c,0x1f,0x4a,0xc7,0xa7,0x68,0x84,0x53,0xce,0xc0, + 0x46,0x8b,0x5e,0x26,0xb2,0x45,0x11,0x4d,0xfb,0x3a,0x47,0xb2,0xd0,0x21,0xae,0x76,0x95,0x79,0x4e,0x7c,0x10,0x8b,0x06,0xb4, + 0xc2,0x4f,0x4e,0xe2,0xb9,0x0f,0xa9,0x72,0x16,0x51,0xff,0x06,0xa2,0x8d,0xb2,0x1b,0x73,0xc3,0xa5,0x5e,0x25,0xab,0x50,0x6e, + 0xe0,0x3a,0x3c,0xf9,0x50,0x1b,0x32,0xf8,0xb0,0x59,0xad,0xf6,0x48,0xbd,0x7b,0x8d,0x31,0x66,0xec,0x77,0x4f,0xb3,0xce,0x19, + 0xbd,0xb6,0x01,0x55,0xee,0xf9,0xc2,0xa5,0x6b,0xb8,0x4d,0x56,0xf3,0xa5,0x6d,0x38,0xf2,0x7f,0xcb,0xcc,0x23,0xba,0x58,0xca, + 0xcc,0x63,0x7c,0xdc,0x3c,0x68,0xdc,0x7e,0x14,0xd1,0x5c,0xa8,0xd6,0xa8,0x5e,0x64,0x8a,0x53,0x67,0x9a,0xbf,0xe4,0xc8,0x2e, + 0xce,0xe4,0xa9,0x55,0x58,0xb8,0x4c,0x2d,0xd1,0xe9,0xec,0x6b,0x44,0xa0,0x0d,0x3b,0xe4,0xd7,0x5d,0xca,0x57,0x7e,0x19,0xd7, + 0xe1,0x88,0x45,0x3a,0xdf,0x12,0xad,0xc3,0x79,0x15,0x56,0x19,0x81,0x6a,0x0b,0xff,0x23,0x47,0x55,0xb8,0xd6,0xb1,0xd8,0x0a, + 0x1d,0xc5,0x47,0x78,0x31,0xa7,0xa1,0x97,0xef,0xf0,0xe6,0x12,0xec,0x42,0x99,0xcc,0xbe,0x64,0x90,0xab,0x90,0x86,0x54,0x84, + 0xe8,0x50,0x7d,0xda,0xd6,0x82,0xbf,0xb6,0xab,0x6b,0x72,0x74,0x3d,0xeb,0x4a,0x19,0xe0,0x00,0x69,0x30,0x7c,0x31,0x8a,0xe5, + 0x9c,0xc3,0x19,0x58,0xad,0xf0,0xaf,0xaa,0x35,0xf6,0x9a,0xf3,0x36,0xf1,0x7b,0x3d,0x52,0xc1,0x1b,0xe5,0xb7,0x16,0xcb,0x69, + 0x86,0xab,0x28,0x6e,0xe0,0x18,0xc9,0xd4,0x01,0x9c,0xcf,0x8f,0xdd,0x9d,0xc4,0xe1,0x66,0x92,0xb1,0x44,0x1e,0x75,0x6b,0x95, + 0x40,0xe9,0x57,0xbe,0x7c,0xc4,0x58,0xe1,0x71,0x44,0x87,0x5a,0xd5,0xc8,0x96,0x70,0xec,0xb4,0x32,0xcd,0x2a,0x47,0x1f,0xff, + 0x63,0x2d,0xd3,0xa9,0xdc,0xc5,0x7e,0xe6,0x38,0x0e,0xab,0x3b,0x93,0x0d,0x6f,0x5e,0x87,0x5e,0xfc,0x2b,0xd3,0x2e,0x8e,0x41, + 0xa1,0x0e,0x44,0x8d,0xd9,0x8c,0x26,0x3e,0x80,0x8d,0x6e,0xf1,0x46,0x8e,0xec,0xd4,0x06,0x45,0xdf,0x44,0x34,0x2f,0x9d,0x68, + 0x56,0x22,0xa7,0xe2,0xc3,0x48,0xb9,0x5e,0xfb,0x20,0x4c,0x7d,0xf8,0x21,0xb5,0xcd,0x21,0x1a,0x0b,0x21,0xb2,0x45,0x9b,0x7e, + 0x56,0x85,0x4e,0x36,0x8b,0xb9,0x1b,0xa9,0xf8,0xbc,0x8b,0xfd,0xe5,0x95,0x12,0xb8,0x02,0xa2,0x1b,0x90,0xca,0x19,0xdc,0x23, + 0xd5,0xf8,0xe4,0xad,0x38,0xdd,0x63,0xbf,0x3e,0x51,0x86,0xe0,0x2b,0xfb,0x39,0x01,0x6b,0x54,0x88,0x6a,0xc3,0xa5,0xff,0x22, + 0x52,0xff,0x7a,0xff,0x17,0x3b,0xa4,0x46,0x05,0xe8,0x53,0x78,0xe9,0xef,0x33,0xd2,0xa7,0xd6,0xeb,0x52,0x1c,0x52,0x2d,0xc8, + 0xe3,0x83,0xb2,0x98,0xc3,0x65,0xab,0x0c,0x71,0x00,0x97,0xa2,0x91,0xc7,0xe4,0xd6,0x6a,0xce,0xe5,0x80,0x29,0x07,0xf5,0x5d, + 0x25,0xa8,0x90,0x69,0x77,0x57,0xe3,0x84,0xfa,0xa9,0xd0,0x88,0x90,0xbd,0x48,0xc6,0x4e,0xbd,0xa8,0xc5,0xcc,0x47,0x34,0x57, + 0xf2,0x3d,0xfb,0x31,0x8c,0x7b,0x36,0x19,0x09,0xd6,0x79,0x0b,0x7a,0x71,0x49,0x81,0xbc,0xe7,0xe6,0xcf,0xc9,0xfa,0xe6,0x2d, + 0xe6,0x98,0xea,0x40,0x81,0x9c,0x63,0x57,0x62,0x39,0x4e,0xfb,0x99,0x07,0x24,0x1c,0xc7,0x11,0xcc,0xf2,0x5f,0x78,0xab,0x93, + 0x88,0x52,0x37,0xb6,0x9a,0x01,0xec,0x14,0x95,0xc6,0x81,0xc6,0x0e,0xde,0xad,0x5a,0x95,0xaf,0x5a,0xca,0x97,0x2c,0xc5,0x12, + 0xf6,0xea,0xb3,0xb7,0xea,0x50,0xb7,0x3c,0xe9,0xe6,0x0b,0x46,0xcc,0x2e,0xee,0x73,0x2b,0xb1,0xce,0x98,0x4e,0xce,0x31,0xa6, + 0xbf,0x13,0xcc,0x27,0x8c,0xd3,0xf2,0x5f,0x15,0xa0,0xfe,0xcc,0x42,0x91,0xbe,0xa2,0xc1,0x0c,0xd3,0xd9,0xa8,0xc5,0x2b,0x83, + 0x7a,0xbf,0xca,0x95,0x36,0x79,0x35,0x5f,0x0f,0x98,0x75,0xe0,0x1a,0x89,0x53,0x3d,0x18,0xd4,0x21,0x2a,0x89,0xf3,0x39,0x81, + 0x77,0xf2,0xaf,0x2b,0xd4,0x6f,0x3d,0xec,0xc7,0xd9,0xb6,0x3a,0xfe,0x25,0x06,0x9a,0xbe,0xbb,0x9b,0x88,0xe3,0x89,0xfc,0x60, + 0x18,0xf3,0x0a,0x30,0x7d,0xe6,0x63,0x06,0x45,0xdc,0x4b,0xf4,0x83,0x93,0xc8,0xf3,0xa5,0x1a,0x76,0xaa,0x1b,0x82,0x55,0x10, + 0xaf,0x90,0x5b,0x06,0x94,0xa6,0xf6,0xfb,0x88,0x36,0xe4,0x10,0x9d,0xc0,0xcd,0x6d,0x72,0x12,0xa3,0x48,0xe1,0x6e,0x19,0x16, + 0x4d,0xc3,0x2e,0x44,0x8b,0x93,0xe8,0xce,0x77,0x0e,0xf3,0xa2,0x4b,0x62,0x10,0xc1,0x1b,0xa0,0xe9,0xcd,0x07,0x88,0x66,0xad, + 0x23,0x4a,0x55,0x6b,0xb9,0x89,0xd3,0xe4,0x90,0x99,0xaf,0xbf,0xb8,0x54,0xd1,0x5b,0x2e,0x78,0x70,0x36,0xd1,0x57,0x97,0xc7, + 0xaa,0x95,0xca,0x47,0x0f,0x88,0xa2,0xbf,0x5d,0xb0,0x2b,0xd6,0x12,0x5d,0xf5,0x54,0x1f,0x7b,0x73,0x05,0x6f,0x83,0x22,0xc7, + 0x83,0x44,0xbb,0xb2,0x89,0x96,0x63,0x0d,0xaa,0xb8,0x1b,0x15,0x78,0x4e,0xd1,0x2d,0x4f,0x10,0xfd,0x94,0x41,0xb4,0xc2,0xd2, + 0x5d,0xaa,0x00,0x87,0xdc,0x72,0x60,0xd0,0xea,0xc7,0x88,0xcc,0x4c,0xa2,0x2a,0x75,0xc5,0x0a,0x3c,0x7c,0xa7,0x3f,0x8e,0x1b, + 0x81,0x68,0xc0,0x3b,0x2e,0x19,0x2e,0xcc,0x89,0x74,0xa2,0x5c,0x2b,0x1e,0x89,0xfa,0xe6,0x40,0xa9,0x80,0xa2,0xf2,0x27,0x89, + 0xa6,0xb8,0x80,0x41,0xec,0x8b,0x78,0x23,0x0f,0x41,0xea,0xe6,0xff,0x01,0x0d,0x51,0x05,0x40,0x54,0xe9,0x16,0x3e,0xdf,0x39, + 0xff,0xff,0xdf,0x19,0xc6,0x81,0x5d,0x71,0xbb,0xbb,0xbb,0xbb,0xbb,0x77,0x7d,0x5d,0xc6,0x96,0xdd,0x2f,0x36,0xe9,0x50,0x90, + 0x12,0xa4,0x1b,0xd6,0x16,0xbb,0x25,0x55,0x4c,0x50,0x29,0x49,0x8b,0x06,0x1d,0xb0,0x16,0x25,0xde,0xed,0x7b,0x4f,0x7e,0x31, + 0x8e,0x5e,0x7e,0x97,0xa8,0xb8,0x9d,0x28,0xdb,0x91,0x8e,0x7a,0x64,0x61,0xb1,0x7c,0xe0,0xcf,0x9d,0xbc,0x61,0x4c,0xa4,0x75, + 0xc9,0x75,0xc7,0xa0,0xe3,0xbb,0x68,0xde,0x84,0x0c,0x35,0xaf,0x07,0x9b,0x64,0x01,0x26,0x39,0x5b,0xa5,0x14,0xce,0xaf,0xf6, + 0xa2,0x04,0xbd,0xaa,0x85,0x6b,0xe5,0xfb,0x70,0xc9,0x73,0x24,0xb9,0x8f,0x72,0x29,0xa2,0xe4,0x87,0x2c,0xef,0xef,0xbe,0xdc, + 0x8b,0x50,0xb9,0x7d,0xb5,0x5e,0x2d,0xd7,0x55,0x20,0x81,0x63,0xa4,0x82,0x83,0xb9,0x45,0xbf,0xbe,0xd7,0xca,0x43,0xab,0x09, + 0x40,0x01,0xb2,0x75,0xaf,0xb5,0xd3,0x51,0x23,0x33,0x8a,0xf0,0x62,0x0e,0x9f,0xe4,0x58,0xb9,0xf6,0x17,0x3f,0xbc,0x77,0x00, + 0xfb,0xf9,0xaf,0x87,0x55,0x9b,0xb4,0xe8,0xad,0x8e,0x0d,0x78,0x20,0x0f,0x97,0x25,0x83,0x3f,0x7d,0x6d,0x58,0xd6,0xf1,0xf3, + 0x7b,0xd0,0x85,0x3b,0xb6,0xcb,0x59,0x7e,0x71,0x2f,0xea,0x9c,0x13,0xd6,0x62,0x90,0xaf,0xab,0x70,0xf4,0x60,0x80,0x93,0x65, + 0xa2,0x47,0xff,0x2f,0x1c,0xef,0x1f,0x43,0x2d,0x87,0xe2,0xcd,0x26,0xb9,0x24,0x69,0x2a,0x43,0x7f,0x93,0x21,0x45,0x9c,0x02, + 0x67,0x02,0x1f,0xc4,0x27,0x9f,0x6c,0xd0,0xa7,0xb0,0x02,0xdf,0xc4,0x60,0x4e,0xf8,0xe8,0x0d,0xce,0x4b,0x5e,0x97,0x90,0x64, + 0x99,0x11,0x0c,0x23,0x0e,0x8e,0x28,0xac,0x44,0x0b,0x4f,0x8f,0xe5,0x7d,0x78,0xed,0xd3,0x34,0xe5,0x95,0xa2,0x6b,0xb0,0xd4, + 0xea,0x92,0x5f,0x13,0x64,0x3d,0x06,0xf9,0x90,0x95,0xc6,0xd1,0x2a,0x84,0xa3,0xd4,0xf8,0x1c,0xc9,0xe5,0x4c,0x14,0xe0,0x8e, + 0x93,0x48,0xb7,0x3c,0x92,0xe7,0x1e,0x91,0x38,0x19,0xc0,0x00,0xeb,0x2f,0x7e,0x69,0x44,0xae,0x3e,0x20,0xcb,0xd8,0x8b,0xe2, + 0x1f,0x20,0x7a,0xf1,0x18,0x51,0x23,0x17,0xaa,0xb7,0x06,0xb8,0x98,0xb3,0xd0,0xc9,0x7a,0x81,0x75,0x1a,0x23,0x28,0xd2,0x47, + 0x4c,0x11,0x36,0xca,0xa4,0x44,0xfe,0x5e,0xd1,0xf9,0xfb,0x89,0x5e,0xaf,0x21,0x4a,0xe3,0x6b,0x93,0xb8,0x12,0x9b,0x55,0x2b, + 0x34,0xcd,0xb0,0xdb,0xdb,0xed,0xf6,0x0c,0xf0,0xfd,0x99,0xd2,0x86,0x53,0x98,0xb6,0x03,0x8a,0xce,0xd8,0xe1,0x96,0x6a,0xfb, + 0x46,0x39,0x62,0xf5,0x49,0xb5,0x46,0x96,0x1a,0x45,0x0f,0x3f,0x44,0x94,0xd7,0x42,0x74,0x8a,0x47,0xd7,0xab,0x1f,0x2e,0x60, + 0x01,0xae,0xa3,0x1b,0x9e,0x20,0xea,0xb4,0x07,0x3c,0xe6,0xcf,0x85,0x12,0x8a,0xa3,0xe8,0x43,0x15,0x67,0xc1,0xd6,0x30,0x58, + 0x97,0xe2,0xb3,0x4e,0x7d,0x89,0xbf,0xca,0x90,0xed,0xa6,0x45,0xdf,0xb9,0x97,0x93,0x4d,0x0a,0xf7,0x63,0x95,0x7e,0x75,0x2d, + 0x0f,0xf2,0x5a,0xbe,0xf9,0x97,0x3d,0x12,0xc0,0xaf,0xb4,0x21,0x42,0xc2,0x11,0x8d,0x12,0xbd,0x8a,0x2b,0xf5,0x34,0xdf,0x95, + 0xca,0x90,0xef,0xc3,0x44,0xb1,0x55,0x44,0xeb,0x58,0x3a,0xf1,0xf5,0xab,0x13,0x86,0xf9,0xa6,0x09,0x79,0x70,0xd0,0x78,0x3b, + 0x3e,0xd5,0x26,0x71,0x51,0x2f,0xc5,0xd3,0x23,0xe8,0x54,0x13,0xf7,0x9a,0x4c,0x7e,0xb4,0x92,0x17,0xca,0xb5,0x87,0xf0,0x1f, + 0x45,0xda,0xc6,0xb3,0xd1,0x2e,0x68,0x30,0xdf,0x6d,0xe4,0x15,0x9c,0xaf,0x4a,0xa1,0xe8,0x07,0x3b,0xf8,0x88,0x0d,0xb2,0x15, + 0x5f,0x8c,0xfb,0x1d,0x21,0xc8,0x83,0x17,0x45,0x3e,0x43,0x34,0xc3,0xde,0x20,0xfb,0x51,0x2c,0x33,0xbb,0xb1,0x01,0x0d,0x9c, + 0x89,0x1b,0xd6,0x4b,0x91,0x8d,0x2c,0x40,0xc7,0x70,0x0a,0x0a,0x11,0xc0,0x59,0xd0,0xe4,0x79,0x91,0xe8,0x8c,0x3d,0xf3,0x37, + 0x93,0x89,0x6c,0x84,0xc8,0x71,0xbd,0x9a,0xff,0x72,0x01,0x86,0x62,0x5e,0xb7,0xc5,0x68,0x20,0x2a,0xc6,0x3f,0xee,0x9b,0xaf, + 0xf7,0x39,0xa3,0x47,0x6d,0xc5,0x13,0x49,0xce,0xf0,0xab,0xbc,0x29,0xe8,0x43,0xa2,0x9e,0x13,0x44,0x0b,0x54,0x20,0x3f,0xb2, + 0x43,0xba,0xb0,0x14,0x4d,0xa6,0x5a,0x62,0xb8,0x8f,0x03,0x65,0x56,0x02,0x97,0x71,0x3b,0x5f,0xe6,0xd7,0xb7,0xaa,0x4c,0x93, + 0xab,0x12,0x95,0x2a,0x42,0x2e,0x9a,0x39,0x0d,0x8a,0x3c,0xef,0x11,0xc5,0xb7,0x11,0x7d,0xf2,0x79,0x3d,0xde,0x5f,0x80,0xc5, + 0x76,0x28,0xe7,0x7d,0xa2,0x4f,0x3b,0x6c,0x0e,0x33,0x07,0x31,0xfa,0x20,0xfc,0xa1,0xa9,0xca,0x9e,0xff,0xd6,0x49,0xa2,0x70, + 0xcc,0x19,0xd7,0x81,0x30,0xb9,0xab,0x89,0x3f,0x1b,0x47,0x4b,0x6c,0x87,0x52,0x06,0x88,0xd6,0xab,0x4a,0xac,0xe4,0xbf,0xc7, + 0x98,0x11,0xcc,0xe7,0xc5,0x68,0x41,0x3c,0x5a,0xdc,0xfe,0x2a,0x98,0x47,0x6f,0xe1,0xd3,0x1c,0x25,0xa3,0x2e,0x9a,0x7e,0x5d, + 0xe7,0x48,0xd7,0x35,0x57,0x25,0x9a,0x0c,0x3d,0x6f,0xf2,0x2a,0x4e,0xe0,0x08,0xec,0xf4,0x4a,0x90,0x7c,0xde,0x82,0x58,0xb9, + 0xb1,0xc0,0x1c,0x97,0x53,0xd6,0x06,0xde,0xa4,0x76,0xe2,0xba,0x7c,0xac,0xe2,0x54,0x29,0x32,0xa9,0xba,0x40,0x4f,0xed,0x93, + 0x4c,0x3e,0xef,0xce,0x44,0xa5,0xee,0x41,0x9e,0x77,0x30,0x6e,0xea,0x50,0xab,0x20,0xf7,0x56,0x62,0x1f,0x7e,0xe8,0x52,0x5b, + 0x91,0xab,0xd1,0xaa,0x4e,0xa2,0x5c,0xe6,0xee,0x93,0xf5,0xbc,0x71,0x4c,0x3e,0xee,0xfd,0x6b,0xb1,0xcf,0xe3,0xfd,0xaa,0x5c, + 0xd2,0x25,0x01,0xc3,0x66,0x0f,0xfa,0x79,0x00,0x77,0xed,0x44,0x07,0x92,0x91,0x24,0xae,0x06,0x59,0x85,0x97,0x26,0x0f,0x23, + 0x1d,0x5f,0xbd,0xea,0x6f,0xed,0x47,0x1c,0xae,0xbf,0x3b,0x82,0xd3,0x75,0x39,0x27,0xa8,0x49,0x9b,0xe5,0xf9,0x28,0x5d,0x80, + 0x04,0x57,0x80,0x9c,0x44,0x9c,0x0c,0x73,0x0e,0x4f,0xf2,0xd8,0xa4,0x36,0x22,0x94,0x27,0xcf,0xa8,0x63,0x0f,0xc7,0xa2,0xcd, + 0xf1,0xce,0x7a,0xe7,0x42,0x0c,0x61,0x66,0x8c,0xfb,0xb6,0x48,0x84,0x60,0x11,0x6f,0xc5,0x4e,0x2b,0x04,0x61,0xaa,0x0a,0xe7, + 0x55,0xbd,0x4a,0x34,0x33,0x1f,0x3a,0xc2,0x5d,0x9c,0xcb,0x41,0x66,0x29,0x2f,0x13,0x9f,0xd9,0x0f,0xef,0x51,0x65,0xf0,0x9d, + 0xdd,0xaf,0x23,0xf0,0xcf,0xdd,0xd8,0xc9,0x05,0xa8,0xb2,0x66,0xff,0x65,0x40,0x0f,0xab,0x6c,0x53,0xa3,0x3d,0xf8,0x25,0x09, + 0xe3,0x2f,0xc8,0x7e,0x15,0xae,0x7e,0xb9,0x45,0x51,0x8b,0x2d,0xeb,0x84,0x21,0xa2,0x6a,0xcb,0xb1,0x56,0xd5,0x23,0x57,0x4e, + 0x40,0x53,0xd1,0xa3,0x44,0x7f,0x23,0xd0,0x15,0x7e,0xe8,0xe1,0x74,0xd4,0xf1,0xdd,0x56,0xbc,0x1d,0x0d,0x7a,0x9c,0xe8,0x0a, + 0x40,0x49,0xf8,0xd8,0xc3,0x41,0x5c,0x84,0x35,0x88,0x97,0x34,0x28,0x6a,0xb6,0x13,0xd3,0x01,0x7a,0x2b,0x01,0xe9,0xea,0xed, + 0x63,0x72,0xcc,0x8e,0xad,0x78,0x92,0xe8,0x4e,0x27,0xe8,0x37,0x9e,0xd4,0x21,0xe7,0xa5,0x10,0xe1,0x62,0xe8,0x89,0x67,0x89, + 0x96,0x7a,0x81,0x8a,0xe4,0x6f,0x7b,0xdc,0x85,0xb2,0x10,0xfb,0xb8,0x51,0xd6,0x22,0x5d,0xdf,0xee,0x4b,0xd1,0xaf,0x10,0x1d, + 0x76,0x81,0xfa,0x1d,0x17,0xd5,0x20,0xb7,0x4a,0xa1,0xe3,0xa0,0xe4,0x89,0xf7,0x02,0x5d,0x88,0x6d,0xfc,0x43,0xbc,0x57,0x0b, + 0xb7,0x6a,0x77,0xb4,0xce,0x96,0xcb,0xd6,0x97,0x83,0xaa,0x99,0x57,0x71,0x90,0xca,0x82,0x4d,0xdd,0x11,0xa2,0x42,0xb0,0x1c, + 0x4d,0x6a,0x84,0x3b,0xb0,0x4b,0x55,0x70,0x2d,0x7b,0xd1,0x77,0x2f,0x11,0x7d,0xe6,0x06,0x0d,0xf2,0x0e,0x6e,0xe2,0x0a,0x3e, + 0x31,0xea,0x9f,0xcb,0x78,0x33,0x7b,0xe4,0xb9,0x08,0x5c,0xc4,0x01,0xbe,0x8f,0x6a,0xec,0xde,0x39,0xa3,0xe8,0x5f,0x6f,0x13, + 0x35,0xfa,0x80,0xba,0xac,0x0d,0x98,0xd4,0xaa,0x86,0xf4,0x47,0x19,0xf8,0x70,0xa9,0xe9,0xe5,0x2c,0x35,0xbb,0x8c,0x43,0xf0, + 0x72,0x91,0x1c,0xd2,0xf7,0x06,0x73,0x09,0xb2,0x55,0x0f,0xae,0xa7,0x67,0xdf,0x25,0xc2,0x05,0xa2,0x48,0xfc,0x18,0xc1,0x73, + 0x22,0xcd,0x72,0xae,0x95,0xd9,0xaf,0xfd,0xe5,0xdb,0x11,0x24,0xcb,0x7e,0x5c,0x42,0x30,0x22,0xb9,0x56,0xad,0x47,0x37,0x27, + 0xa9,0x2f,0xfd,0xb1,0x94,0x3d,0xa8,0x76,0xaf,0xd0,0x31,0x08,0xc3,0x16,0x1c,0x52,0xd3,0xd3,0xa5,0x9b,0x13,0xcc,0x3a,0x7e, + 0x64,0x2f,0x7e,0x97,0x38,0x24,0xc8,0x05,0xb9,0x27,0x12,0x3b,0x7c,0x6a,0x8d,0x0f,0x3d,0xf7,0x11,0xd1,0xda,0xab,0x41,0x6b, + 0x31,0x25,0x5a,0x79,0x67,0xa9,0x48,0x89,0xd4,0xff,0xd9,0x21,0x9d,0x9c,0xe6,0xf5,0xc0,0x3f,0xc2,0x90,0xc9,0x63,0xce,0x23, + 0x8c,0xe7,0xeb,0x9b,0x6f,0xac,0x47,0x9d,0xce,0xe7,0x5c,0xa4,0xca,0x79,0x9c,0x62,0x45,0x87,0x3e,0x26,0xba,0xa9,0x9b,0x68, + 0x00,0x5f,0xdd,0xbc,0x1b,0xcd,0x98,0xe5,0x45,0xd7,0x7e,0x4a,0x54,0x68,0x87,0x92,0xd5,0x3a,0xac,0x96,0x0c,0x5c,0xbd,0x12, + 0x47,0xe5,0xba,0x13,0x38,0xcf,0x9b,0x71,0xf7,0x7c,0xf8,0xe3,0x89,0x23,0x7c,0x88,0x3f,0x31,0xd4,0xff,0x10,0x91,0xef,0x53, + 0xa0,0x32,0xf7,0x39,0xbd,0xcb,0xe7,0x80,0xb4,0x3a,0x3c,0x26,0xdf,0xcc,0x2a,0x51,0xd5,0xf2,0x07,0x8a,0x7b,0x83,0xe8,0xae, + 0xe7,0x41,0xc7,0xcd,0xdb,0x95,0xce,0x24,0xde,0xcf,0xdb,0x4c,0x81,0x6b,0xa3,0x94,0x99,0x53,0x1c,0xc3,0x7b,0x79,0xa3,0x39, + 0x8c,0x15,0x5e,0xbe,0xe9,0xbc,0x01,0xc9,0x36,0x69,0x3f,0xeb,0x93,0xcd,0xfc,0xaf,0x38,0x95,0x02,0x8f,0xfb,0x84,0xec,0x55, + 0xbf,0xc6,0x5f,0x1b,0x88,0x34,0xdb,0xc8,0x0d,0x7c,0x54,0xd5,0x3a,0x66,0xe4,0x49,0xb7,0xb5,0xc5,0x79,0x09,0xcb,0xad,0x6d, + 0x7a,0x1d,0x16,0x98,0x6a,0x9d,0x81,0x8a,0xeb,0xcf,0x5b,0xdd,0xae,0x65,0x7c,0x4a,0xe7,0xaa,0x41,0x1d,0x8d,0xcb,0x6a,0x5a, + 0x99,0x94,0xb3,0xdf,0x1d,0xf5,0xe8,0x45,0x39,0xa2,0x1e,0x1e,0xc2,0x1a,0x13,0xa0,0xfc,0xd4,0xdc,0xd3,0x3a,0x0b,0xf3,0x82, + 0x50,0x75,0xed,0x56,0x5e,0x81,0xdd,0x08,0xf1,0x1d,0x7b,0x84,0xc7,0x0d,0x18,0xdf,0xe5,0xaa,0x04,0xa9,0xba,0x88,0x23,0xdd, + 0xd5,0x9c,0xe6,0xb8,0xef,0x8d,0x2a,0xd5,0xa2,0x93,0x38,0x52,0x6f,0x84,0xbf,0xda,0x2b,0xa9,0x92,0x84,0x0c,0x47,0x06,0x8f, + 0x78,0xbf,0xd1,0x77,0x53,0xb4,0xeb,0x0c,0xbf,0xb9,0xca,0x95,0x06,0x3f,0x9e,0xb0,0xd7,0x44,0xc3,0x4a,0x54,0x29,0xc6,0x77, + 0x5e,0x28,0xf7,0xa9,0x07,0x52,0x1c,0x1d,0x4e,0x0f,0x7f,0xba,0x59,0x65,0xa0,0xd2,0x51,0x89,0x45,0xce,0x5a,0xf8,0x1c,0xc2, + 0x7a,0xeb,0xb3,0x1a,0xef,0x65,0xd8,0x2a,0x7f,0x8a,0xe2,0xfd,0xd8,0xe5,0x7a,0x69,0x8f,0xd5,0x8e,0x84,0x51,0xa3,0x9a,0x9d, + 0xd5,0x92,0x8f,0x1e,0xa9,0x72,0x2c,0x93,0x46,0x79,0xa3,0xdc,0x3b,0xc3,0x19,0xe6,0x5c,0x20,0x19,0x8e,0x20,0x57,0xa3,0x69, + 0xd6,0x5b,0x1d,0x29,0x6c,0xc8,0xd7,0x36,0x74,0xf1,0x9d,0xa0,0xb3,0xf8,0xa4,0x93,0xff,0x3d,0xeb,0x10,0x82,0xb4,0xe3,0xfd, + 0x21,0x18,0x7a,0xee,0x13,0xa2,0x0f,0x46,0x83,0x2e,0xab,0xd5,0x48,0xc1,0xa4,0x62,0xe1,0x6e,0xbe,0xcc,0x95,0x3c,0x5e,0xd3, + 0xb3,0x1f,0x10,0xad,0x7c,0x01,0xb4,0x46,0xa6,0x55,0xeb,0xb1,0x41,0x1c,0x81,0x20,0x6b,0x96,0x45,0x9d,0xdf,0x13,0xf9,0xf6, + 0x0e,0x8f,0x04,0x9b,0x60,0x64,0x59,0x09,0x78,0xa8,0x9e,0x07,0x95,0x1f,0x07,0x98,0xaf,0x6a,0x38,0x5e,0x8d,0xa3,0x8f,0xa2, + 0x89,0x36,0x6d,0x19,0x19,0xf9,0x24,0x8a,0x2b,0x74,0xb8,0x89,0xe2,0x4b,0x36,0xef,0x47,0x7e,0x8d,0xc5,0x33,0x49,0xdc,0x84, + 0x7b,0xd3,0xd4,0x4a,0x3e,0x6c,0x75,0x5a,0xc5,0x66,0x48,0x15,0xc2,0x27,0x5e,0x3c,0xa8,0x41,0x1f,0xbe,0x89,0xf7,0x5a,0xa6, + 0x92,0x74,0x2e,0x27,0x39,0x13,0x79,0x44,0xc6,0x1d,0x75,0x85,0x60,0x4e,0x2c,0xf2,0xf5,0x12,0x5c,0xe0,0x89,0xbb,0xf4,0x32, + 0x9c,0x50,0x49,0x12,0xec,0xde,0x8c,0x49,0x8f,0x86,0x60,0xf6,0x67,0x15,0xd8,0xa0,0xd7,0xa9,0x53,0x7a,0x0f,0x37,0xe0,0xd8, + 0x0d,0xa5,0xce,0x6a,0xc7,0x90,0x8e,0x93,0x0a,0x1d,0xa2,0xa2,0x54,0x15,0x3c,0x1c,0x88,0xa3,0xae,0x52,0xbd,0xee,0x9a,0x42, + 0xdb,0xef,0x4d,0x7a,0xb9,0xee,0x93,0x62,0x5c,0x30,0x7d,0x66,0x87,0xbb,0x6f,0x4c,0xa7,0xb5,0xc3,0x59,0x61,0x15,0xeb,0x56, + 0x67,0xb5,0x73,0x97,0xcf,0x59,0x57,0xc6,0xa8,0x3c,0x2b,0xcd,0x3a,0xc7,0x7d,0x3c,0xa9,0xc9,0xf9,0xe8,0x3a,0x3e,0x81,0x9b, + 0x8a,0xf9,0xd7,0xc7,0x2e,0x38,0x7e,0x68,0xe1,0x60,0x39,0x28,0xae,0x40,0xef,0x1e,0x6e,0x30,0xab,0x11,0xe7,0x5a,0x88,0x76, + 0x35,0x2f,0xc6,0x6a,0x51,0xbd,0xe6,0x9d,0x0a,0xfd,0xe5,0x62,0xab,0x10,0x03,0x56,0xb0,0x0e,0x34,0x6f,0xb6,0x4a,0x3e,0x6f, + 0xc3,0xd5,0x6f,0x5e,0xc4,0x61,0x49,0xb5,0x85,0xb8,0xe9,0x21,0x3f,0x35,0xeb,0xc9,0x4b,0xf2,0xd4,0x47,0x0d,0xd2,0x80,0x9d, + 0xac,0xfa,0xa5,0x19,0xdf,0xbe,0x56,0xc3,0xb5,0x7c,0x48,0x2d,0x56,0xa9,0x2a,0x85,0xe7,0xeb,0xd3,0xe8,0x41,0x34,0x02,0x51, + 0x80,0xa7,0xa3,0xa5,0x43,0x4e,0xe1,0xa2,0xab,0xd0,0x9d,0x3d,0xa6,0xd0,0xb9,0xf9,0xda,0x40,0xd5,0xac,0xcf,0xb9,0xca,0xbd, + 0xfa,0x74,0x88,0x33,0x4b,0x56,0x39,0x47,0x15,0xa8,0x6a,0x1e,0xe4,0x71,0x74,0xea,0x01,0xa2,0xae,0x00,0xa2,0x66,0xbe,0xff, + 0xbf,0x9b,0x31,0x8c,0x9f,0x03,0x10,0x28,0x35,0xf8,0xcf,0x94,0xff,0x94,0x39,0x37,0x70,0xbe,0x55,0x2d,0xeb,0xad,0x39,0xd9, + 0x8e,0xd3,0x38,0xe2,0x4e,0x92,0x7d,0x3a,0x52,0x0a,0xbc,0xce,0xa2,0x87,0x0f,0x4a,0x2c,0xf7,0x5a,0xb9,0x36,0x9d,0x12,0x53, + 0xca,0xf9,0x5e,0xe3,0x0b,0xae,0xda,0xa1,0x2a,0xf5,0x4a,0x2e,0xb2,0x0e,0xeb,0x45,0xea,0x0a,0xca,0xb5,0x54,0xa9,0x41,0x1c, + 0x32,0x21,0xc6,0x8f,0x13,0x4c,0x3b,0x57,0xea,0x77,0x22,0x54,0x88,0x64,0x9b,0x0e,0xeb,0x88,0xee,0x37,0x61,0x52,0xa3,0x1f, + 0xcd,0x97,0x45,0x7c,0xc8,0x71,0x4f,0xb4,0x77,0xb5,0xba,0xb5,0x50,0x75,0x70,0x27,0xfc,0x1c,0xd3,0x12,0xf5,0x72,0xae,0x77, + 0x3d,0x91,0xcb,0x7b,0x11,0x2d,0x5b,0xf4,0x56,0x7e,0x60,0xd8,0xaa,0x43,0x9d,0x7b,0x25,0xef,0xb4,0x36,0xa1,0x5c,0xed,0xe5, + 0x32,0x75,0xd7,0x22,0x2e,0xc5,0x6e,0xc7,0x3f,0xea,0x1d,0x9b,0x6c,0x50,0x25,0xe8,0xb2,0xea,0xd4,0x3e,0xf5,0x6a,0x1d,0x47, + 0x4b,0xb6,0xa3,0x1e,0x87,0xed,0x11,0x67,0xcc,0xdf,0xb3,0x91,0xc8,0xfd,0x26,0x8b,0xeb,0x75,0x3e,0xce,0x48,0x94,0xb4,0x4b, + 0x32,0xf7,0x61,0x80,0xeb,0x25,0x0a,0xdb,0x31,0x82,0x0e,0xae,0xc3,0x2b,0xdb,0x51,0xa4,0x4b,0x25,0xdd,0xb1,0x1b,0x7e,0xc8, + 0xc3,0x7c,0x57,0x11,0xb2,0xd5,0x45,0x74,0xa8,0x22,0x15,0x24,0xc7,0x55,0xb3,0x29,0x1f,0x7d,0xc6,0xea,0xf0,0x7e,0xbf,0x40, + 0x16,0xe9,0x1a,0xb5,0x0e,0xb9,0xe6,0xe6,0x02,0x2b,0x8e,0x57,0x71,0x22,0x96,0xa9,0x2e,0x2c,0xe3,0x1c,0xf6,0xa8,0x7e,0xbd, + 0x55,0xfb,0x2c,0xe1,0x60,0xae,0x44,0xa8,0xb9,0xc0,0x97,0x30,0x84,0x0c,0x7e,0xe8,0x84,0xd7,0x69,0xf9,0xcd,0x2c,0x95,0x35, + 0xba,0x53,0x85,0xaa,0x13,0x70,0x51,0xd0,0xe7,0x44,0x67,0xe3,0x89,0x6e,0x6c,0x45,0x39,0x5f,0xc1,0x73,0x91,0x38,0x26,0xef, + 0x47,0x61,0x18,0xbb,0x30,0x65,0xe6,0x56,0x6e,0x86,0xf3,0x8f,0xe9,0x3c,0x61,0x13,0x34,0x55,0xd8,0x95,0x87,0x13,0x88,0x42, + 0xf9,0xa9,0x0f,0x4f,0xf2,0x01,0x2c,0x81,0xbb,0x5a,0x2c,0x4a,0xfc,0x82,0x68,0x65,0x1c,0x51,0x15,0x8a,0xb1,0x14,0x8f,0xaf, + 0x43,0x30,0x22,0x65,0x90,0xa3,0x91,0x80,0x30,0x19,0x80,0xa2,0xeb,0xec,0x82,0x2d,0xf6,0x86,0x89,0xbe,0x4b,0x51,0xc2,0x0b, + 0x79,0x25,0x7b,0xd3,0x7f,0xfe,0x46,0xf4,0x58,0x22,0x51,0x23,0x72,0x78,0xa3,0x73,0x2f,0x2f,0xe1,0x5a,0xe3,0x51,0x85,0xf8, + 0x26,0x83,0xc3,0xf5,0x22,0xae,0xe5,0x4c,0x15,0x6e,0x26,0xbf,0xd5,0x88,0x63,0xda,0x23,0x57,0x74,0x04,0xc2,0x4c,0x11,0x6f, + 0xe5,0x28,0xfc,0x1f,0x0d,0x91,0x75,0x5c,0x94,0x5b,0x17,0x85,0xf7,0xda,0xe7,0x9c,0x77,0x66,0x28,0xbb,0x6e,0x77,0x77,0x77, + 0x77,0xda,0xdd,0x9d,0xb7,0x3b,0x94,0x94,0xae,0x41,0xd4,0xa1,0x3b,0x2c,0x1a,0x69,0x54,0xd2,0xa1,0xf3,0x22,0x06,0x21,0x76, + 0x7c,0x48,0x98,0x20,0xdf,0xfb,0xef,0xb3,0x63,0xfd,0xd6,0xef,0xd1,0xc8,0x61,0x3e,0xd1,0x62,0x5f,0xa2,0x49,0x73,0xdc,0x78, + 0x3b,0xbe,0x29,0xe7,0x04,0x0e,0xe4,0x59,0x3f,0x4a,0x1a,0x59,0x40,0xf4,0xc8,0x36,0x22,0x77,0xb6,0x71,0xc6,0x1f,0x5b,0xe1, + 0x84,0xc9,0xf4,0xd4,0x22,0xa2,0x3a,0x2f,0xa2,0x01,0xf9,0xc7,0x7b,0x3f,0xa7,0x61,0x5a,0x1c,0xbf,0xfc,0x58,0x3c,0x22,0xf0, + 0xf2,0x09,0xe5,0x8a,0xd3,0xb6,0x97,0x30,0x24,0x66,0xff,0x55,0x22,0xfa,0x54,0x0e,0x52,0xb9,0x12,0x3b,0x10,0x2a,0x43,0xf1, + 0xe2,0xee,0x09,0xc9,0xc8,0x42,0x36,0x9f,0x13,0x7e,0xa8,0xb1,0x3f,0x84,0xa7,0xf7,0xc8,0x6f,0xde,0x71,0xc4,0x1a,0x47,0x84, + 0xf1,0x69,0x5c,0x81,0xa4,0x9e,0x85,0x44,0xd6,0x9d,0x44,0x27,0xf1,0xb0,0x3f,0x7a,0x30,0xc0,0x85,0x3a,0x9c,0xaa,0x87,0x5d, + 0xd5,0xe1,0xa2,0x09,0xae,0xdc,0x87,0x78,0x1c,0x85,0xa2,0x87,0x96,0x10,0x1d,0x36,0x13,0xb9,0x61,0xd9,0x3b,0x7b,0xf8,0x37, + 0x9b,0xa7,0x9b,0xa0,0x51,0x9b,0x0e,0xc3,0xfc,0x89,0x4c,0x91,0xb0,0x88,0x57,0xdf,0x49,0x85,0x07,0xde,0x3e,0x81,0xd5,0x8a, + 0x7e,0xd1,0x07,0x9d,0x81,0x44,0x3f,0xbe,0xb9,0xf6,0x10,0xaf,0x74,0xc3,0xbc,0x2d,0x92,0xaa,0x75,0xa6,0x74,0x56,0x06,0x87, + 0xdf,0xc2,0x30,0x35,0x19,0x1a,0xad,0x58,0x4a,0x64,0xd9,0x41,0xe4,0xcd,0x8f,0xbe,0x30,0xbb,0x01,0x3f,0xbd,0x90,0x8d,0x9b, + 0xdc,0xc2,0x92,0x02,0xf5,0xc1,0xeb,0x01,0x44,0xdf,0x5a,0x11,0x87,0x40,0xcc,0x78,0xd5,0x40,0x51,0xcb,0x88,0x1c,0x83,0x88, + 0xde,0x74,0x87,0xb7,0x0c,0x93,0x99,0x78,0xcd,0x59,0xaf,0x69,0xc5,0x98,0xcf,0xa2,0x59,0xd2,0xf7,0xfa,0xf4,0x37,0x33,0xd1, + 0xdb,0x35,0x30,0x5d,0xc4,0x67,0x77,0x2b,0x4a,0x5a,0x4e,0xd4,0xa9,0x93,0xcf,0x9d,0xf0,0xef,0xf8,0x62,0xf6,0x60,0x0f,0x69, + 0x81,0x2d,0x2d,0x5e,0x41,0xf4,0x6c,0x18,0x51,0x34,0x8e,0x73,0x3e,0xee,0xb9,0xd3,0x0f,0x5b,0xb6,0x0c,0xe2,0x29,0x43,0x12, + 0x77,0xb2,0xcd,0xda,0x65,0xe5,0x1c,0x81,0x09,0x6b,0x14,0x15,0xeb,0xd7,0xd5,0x01,0x44,0x7a,0x31,0xe4,0x63,0xae,0x2b,0xf7, + 0x60,0x6e,0x34,0x14,0x3d,0xa2,0x9f,0x7f,0xa0,0x37,0xee,0x47,0x12,0x3e,0x7b,0xe7,0x04,0xfc,0xf1,0xfc,0x2c,0x45,0x6f,0xea, + 0xf4,0x49,0x3d,0xab,0x18,0xb6,0x76,0x3b,0xb1,0x87,0x1f,0xfc,0x7d,0x8d,0x46,0x56,0x1d,0xae,0xd5,0x5f,0xa4,0xe1,0xcb,0x42, + 0xec,0xe4,0x72,0x1e,0xc2,0xe6,0x59,0x33,0xae,0xb0,0x22,0x2f,0x7d,0xf2,0xb8,0x1f,0xd1,0x82,0x75,0x4e,0x78,0xe4,0xab,0xd3, + 0x30,0x43,0x7f,0x4d,0x62,0x15,0x51,0xb6,0xfe,0xfa,0x0c,0xc8,0x55,0x26,0xf0,0xe6,0x0f,0x2d,0xa2,0x0b,0x63,0xe8,0x89,0x35, + 0x44,0xd1,0x16,0xa2,0xfb,0x7f,0xdd,0x2e,0x72,0x45,0x0b,0x5e,0xfa,0x25,0x1a,0xa1,0x78,0xfc,0x8c,0x5c,0xbf,0xee,0x3b,0x2b, + 0x9f,0xc7,0x41,0x18,0xea,0x50,0x82,0x0a,0x51,0x0f,0x57,0xa4,0xa2,0x87,0xef,0x0b,0x81,0x0f,0x2e,0xf3,0xd8,0x7f,0x36,0x18, + 0xe9,0xb2,0xfe,0xf3,0x8b,0x60,0xa2,0x42,0x7c,0xdf,0x82,0x18,0x94,0xe3,0x04,0xa2,0x39,0x47,0xd4,0xf2,0x6b,0x09,0xfc,0xa7, + 0x0b,0xdc,0x94,0xa2,0xbd,0xfa,0x8a,0xc5,0x4c,0xf4,0xee,0x17,0xe9,0xf0,0x82,0x59,0x7e,0xe3,0xa2,0xa2,0x59,0xd1,0x22,0x3d, + 0xf6,0x9c,0x1f,0x91,0x0b,0x07,0xe1,0xcf,0xcf,0x2a,0x91,0x83,0x6c,0x6c,0xd0,0xa8,0x72,0x2d,0x51,0x86,0x6e,0x21,0x55,0x4c, + 0xbb,0xe7,0xcf,0x58,0xb1,0xc5,0x5f,0x46,0xe0,0xb4,0xd8,0x07,0x45,0x3e,0xeb,0x88,0x96,0xe8,0x75,0x2b,0x70,0xe7,0xdb,0x61, + 0xbc,0x8f,0x93,0xf1,0xe8,0x2c,0x49,0x9f,0xe8,0xf4,0x77,0xbd,0x94,0x59,0xb6,0xb1,0x99,0xdf,0x8c,0xd5,0x42,0xd9,0x40,0x8f, + 0xad,0x27,0xf2,0xf4,0x22,0xfa,0xf2,0x7b,0x37,0xdd,0x77,0x2a,0x17,0x08,0x17,0x0c,0x73,0x08,0x76,0xf3,0xcf,0x77,0x9a,0xa8, + 0x64,0x23,0xd1,0x3c,0x1f,0xa2,0x83,0x78,0xf0,0xcd,0x85,0xb4,0x4f,0xf8,0x88,0x76,0x1e,0x92,0xe9,0x88,0xe4,0x2e,0xd5,0x8f, + 0xfb,0x07,0x71,0x09,0x92,0x9a,0xf5,0x25,0xab,0x1f,0x51,0x10,0x36,0x86,0xe0,0x03,0xb5,0x17,0x4b,0xe9,0xc3,0xbf,0x89,0xda, + 0xb3,0x74,0x6d,0x76,0xe1,0x48,0x17,0x21,0x5c,0x2c,0x56,0x5d,0x90,0x21,0x28,0x43,0x18,0x9b,0x7c,0xc4,0x39,0xae,0x15,0x99, + 0x5c,0x28,0xbf,0x4d,0x94,0xc9,0xea,0x9e,0x77,0x3a,0x51,0xcc,0x89,0x5c,0x68,0xb2,0x20,0x98,0x73,0xe5,0x05,0x2d,0x52,0x0b, + 0x37,0x45,0xf3,0xcb,0xfd,0x18,0x82,0x93,0x6c,0xe0,0x33,0x86,0x5b,0x86,0x64,0x2c,0x4e,0x17,0x15,0x3c,0xe6,0x1a,0xa2,0xb5, + 0x18,0x8c,0x3f,0x25,0xf6,0xca,0x78,0x64,0xd9,0x1d,0x44,0x07,0x82,0x95,0x83,0x45,0xc4,0x8a,0x6f,0xcf,0x68,0xbe,0x3c,0xcb, + 0x22,0x8f,0x8b,0x22,0x71,0x01,0x09,0xf2,0xb8,0x34,0x8e,0x70,0x82,0x38,0x22,0xb3,0xed,0xdd,0xd5,0x61,0xe4,0x8b,0x0e,0xfe, + 0xb0,0xd8,0xd4,0x8a,0x4b,0x22,0x03,0x4d,0xda,0x83,0x5d,0x22,0x5f,0x56,0x19,0x6e,0xf0,0x15,0x63,0x8d,0xb6,0xba,0x53,0x64, + 0x1a,0x7b,0xe5,0x71,0x9b,0x7b,0xf3,0x51,0xc0,0x59,0xbc,0x1d,0x1d,0xb6,0xfb,0xf8,0x92,0x0c,0xe4,0x6b,0x32,0x13,0xc1,0x5a, + 0xb1,0x18,0x96,0xcf,0x3d,0xea,0x8b,0x00,0xf6,0xe4,0x49,0x37,0x90,0xa9,0xb2,0xe0,0xca,0x67,0xf8,0xa8,0x96,0x20,0xae,0xf0, + 0xeb,0x27,0xc4,0x5e,0xf1,0x68,0x32,0x67,0x48,0x57,0x3d,0x7b,0xaa,0x43,0x32,0x77,0x8b,0xfd,0xbc,0xe8,0xe3,0x1a,0xe1,0x8a, + 0x44,0x94,0x8a,0x62,0xad,0x97,0xe7,0x65,0xc3,0x0f,0x95,0x38,0x2c,0x0b,0xf1,0x79,0xb0,0x61,0xab,0x96,0x66,0x18,0x12,0xa1, + 0xa2,0x08,0x97,0xf8,0x88,0x6e,0xd4,0x21,0x8f,0x1b,0xd8,0x0c,0x7f,0x3c,0x1f,0x8b,0x45,0x8b,0xd3,0x10,0x85,0x60,0xb6,0xc2, + 0xc1,0x5f,0xfa,0x73,0x93,0xf8,0xb8,0xcd,0x26,0x54,0x9c,0x85,0x2f,0x9b,0xc5,0xe7,0x3d,0x08,0xe4,0x6c,0x69,0xc1,0x2f,0xbe, + 0xac,0x51,0xf9,0x52,0xa2,0xc4,0x08,0xa2,0x11,0x7c,0xea,0xc2,0x1e,0x68,0x45,0x9c,0xee,0xf9,0x5f,0x3a,0x05,0x45,0xb3,0x57, + 0x12,0x5d,0x08,0x27,0xea,0xc2,0xcb,0x37,0x90,0x80,0x3e,0x7c,0x70,0x1e,0x69,0x90,0xf4,0xd3,0x2a,0xa2,0xca,0x30,0xa2,0x23, + 0x92,0xfa,0x44,0x35,0xd6,0x56,0xe9,0xa2,0x3c,0x9e,0x22,0xca,0x6d,0x24,0xda,0xa9,0x05,0x88,0xab,0xf2,0x99,0x28,0x43,0xab, + 0xf4,0x31,0x7c,0x7f,0x11,0x23,0x68,0x97,0xa1,0x9c,0x24,0x27,0xeb,0x0d,0x54,0x9f,0xa9,0x84,0x9f,0xef,0xe5,0xff,0x99,0x7e, + 0x28,0x41,0xaf,0xb0,0x6a,0x6e,0xc2,0x8f,0xed,0xb7,0xdd,0xd5,0xae,0x2e,0xaa,0x00,0xe9,0xa5,0x66,0xf6,0x29,0x1f,0xee,0xb5, + 0x6b,0x46,0xbb,0x90,0x67,0xb5,0x34,0x9e,0xbe,0xe6,0x3f,0xd5,0x89,0x66,0xd1,0x2f,0xab,0xf9,0xcf,0xab,0xc6,0xfb,0x3c,0x0c, + 0xbd,0x7a,0x85,0x22,0x59,0xad,0xbd,0x95,0x29,0x53,0x39,0x42,0xb5,0x4a,0x2b,0xf6,0x89,0x78,0x04,0xcb,0x73,0x5a,0x87,0xb2, + 0xca,0x40,0x3d,0xec,0xa5,0xe5,0x01,0xc6,0x0e,0xae,0x56,0x6f,0xf7,0xda,0x4d,0xbd,0xca,0xa9,0xd2,0x55,0xb4,0xa1,0x53,0x86, + 0xc9,0x3e,0x31,0x60,0x97,0xce,0x05,0x70,0xe2,0x7a,0x43,0xb8,0xdc,0xc3,0x4d,0xa2,0x51,0x5d,0x42,0xb6,0xfc,0xc2,0xc3,0xd0, + 0x23,0xa2,0xb1,0xc7,0x58,0x2e,0x06,0x74,0xd3,0xaf,0xe4,0x8b,0x53,0xc8,0x52,0x45,0x70,0x93,0xcd,0xb2,0x8d,0x1d,0xb9,0x8b, + 0x35,0x7f,0x6c,0xe5,0x04,0x84,0xe1,0x71,0x2f,0x11,0x62,0x3a,0x80,0xd7,0xa3,0xe0,0xa3,0xac,0xa8,0x1f,0xbd,0x34,0x04,0x5f, + 0x4d,0x8a,0x42,0xce,0x98,0x64,0x14,0xa8,0x1a,0xec,0x71,0xf8,0xbc,0x95,0x77,0xb2,0x6d,0xa5,0xd8,0x25,0xd3,0x70,0x99,0xf3, + 0xb8,0x5d,0x7b,0x3c,0x40,0xb4,0x72,0xd4,0xa8,0x5b,0x58,0x99,0x00,0x77,0xc3,0x31,0xb1,0xc3,0xc6,0xd0,0xa4,0x8b,0xdc,0xcb, + 0x56,0x76,0xe5,0x25,0x6f,0x5c,0x46,0x10,0xbb,0x22,0x54,0x35,0xc1,0x62,0xdb,0x04,0x27,0x19,0x86,0x7c,0x1b,0x17,0xfe,0x28, + 0x49,0x0c,0x73,0xa0,0x38,0xc2,0xf7,0x5f,0x11,0x5b,0x11,0x05,0x77,0xde,0x2d,0x83,0x30,0x8a,0xe6,0xcd,0x25,0x1a,0xee,0x21, + 0xca,0x56,0x77,0xd7,0xaa,0x2c,0x76,0x17,0x77,0x5b,0x34,0x8b,0xa8,0x52,0x77,0xee,0x17,0xfd,0x22,0x8b,0x3f,0xbd,0xcd,0x45, + 0xe2,0xa4,0x6c,0x43,0x35,0x6e,0xa2,0x1f,0xc7,0xb0,0x4b,0x9b,0xf8,0x97,0x19,0x87,0xe4,0x54,0x5b,0xf2,0x99,0x47,0x54,0x75, + 0x8a,0x28,0x16,0x2b,0x82,0x31,0xf7,0xa0,0x70,0x63,0x37,0x6e,0xe7,0x32,0x15,0x83,0x7d,0xda,0x5b,0x03,0xdc,0x0d,0x2f,0x59, + 0x8c,0x72,0xe4,0x72,0x32,0xec,0x15,0x3d,0xb7,0x40,0x0f,0xd1,0x83,0xd2,0xe4,0x5f,0x0b,0x97,0x1e,0x10,0xe3,0x26,0x96,0xe9, + 0x86,0x23,0x56,0x12,0x6d,0xbc,0xa0,0xbf,0x81,0x33,0x8a,0x47,0x67,0x89,0x0c,0xce,0xc5,0xee,0x51,0x1f,0x0f,0x6a,0x4d,0xfc, + 0xe3,0xf8,0x66,0xe1,0x21,0x76,0x88,0x10,0xc4,0xe2,0x04,0x4a,0x38,0x8d,0x0b,0xe5,0xab,0x8f,0x3a,0x72,0x02,0xfb,0x21,0x14, + 0xeb,0xcd,0xa8,0x44,0x96,0xed,0x75,0x2c,0x4b,0xc7,0x08,0xff,0xdb,0xc5,0xce,0x08,0xc6,0x69,0x95,0xca,0x03,0xd2,0x76,0xbb, + 0xf8,0x85,0xdc,0xe0,0x81,0x36,0x4c,0xcd,0x15,0x5b,0x95,0x13,0x6f,0xc7,0x3e,0xdd,0x70,0x17,0x9b,0xf9,0xef,0x18,0x31,0xf5, + 0x3c,0x06,0x64,0x9c,0xb8,0x2f,0x01,0xdd,0x6c,0xd7,0x04,0x2b,0x17,0x29,0xbb,0x7a,0xad,0x12,0x16,0x38,0x72,0x2d,0x8c,0x2f, + 0xff,0x13,0x81,0x29,0x3e,0x9c,0xc7,0x07,0xc4,0x27,0xdb,0xed,0xab,0xd5,0xc6,0x3c,0x74,0x9b,0x6e,0xaa,0x54,0x59,0x20,0x1d, + 0xb5,0x04,0x64,0xaa,0x67,0x7f,0xcf,0x46,0x0c,0xff,0x72,0x0e,0x3e,0x9c,0x83,0x28,0x75,0xd0,0xc6,0x51,0xe4,0x62,0x0f,0x16, + 0x56,0xa3,0x58,0x84,0x23,0xd0,0x76,0xb9,0xc5,0x94,0x8f,0x32,0x15,0xc0,0x91,0xc2,0xa2,0x9b,0xf0,0x40,0x17,0x8e,0xe3,0xc3, + 0x34,0xae,0xe3,0x3b,0xfe,0xf9,0xb9,0x42,0x3c,0xfe,0xd6,0xdf,0xde,0x58,0xd0,0x2f,0xef,0x9d,0xb5,0x6c,0x0f,0x4a,0xe0,0x2b, + 0x7e,0xa8,0xe4,0x61,0x3e,0xa3,0xdd,0x90,0x43,0x2a,0x43,0x6d,0x8a,0xc7,0xb0,0x16,0x24,0x86,0xc5,0x05,0x19,0x6d,0xef,0x24, + 0x47,0x38,0x91,0xf7,0x8b,0x85,0xf6,0xc9,0xb0,0xf0,0xfa,0x11,0x79,0x5c,0xa4,0x89,0x47,0x66,0xae,0xb8,0x21,0x5e,0x0f,0xc6, + 0x49,0x64,0x08,0x77,0xdc,0x64,0xfb,0xaf,0x73,0x71,0x58,0xb6,0xa0,0x44,0x26,0xa1,0x00,0x29,0x2c,0xc9,0x65,0x2a,0x91,0xe7, + 0x79,0xa2,0x64,0x41,0x39,0xf8,0xa8,0x0f,0x1f,0x6a,0xd4,0x3d,0x9d,0xc8,0x74,0x8d,0x28,0x89,0x9f,0x58,0xe9,0x84,0x32,0x9e, + 0xd7,0xc0,0x43,0xf0,0xe1,0xcf,0x25,0x55,0xcd,0x20,0xfa,0xe9,0x22,0xd1,0x5e,0xd6,0x1d,0x86,0x70,0xa9,0xc8,0x82,0xa4,0x7f, + 0x66,0x12,0x55,0xeb,0x1f,0x42,0xf9,0x91,0x24,0x9e,0x69,0xfb,0xa7,0xa2,0xcf,0x67,0x11,0x5d,0xd2,0x49,0x10,0xbf,0xec,0x85, + 0x5d,0xa8,0x84,0xf6,0xf6,0x9f,0x92,0xce,0xeb,0x34,0x4d,0xb7,0x77,0x9c,0xe7,0x8f,0x4e,0x45,0x2d,0x7b,0xb2,0x46,0x91,0xb3, + 0x89,0x9a,0x74,0xd6,0x2d,0xdc,0x51,0x83,0xf7,0x97,0xd6,0x61,0xbf,0xec,0x45,0xa9,0x7e,0xa4,0xd1,0xe8,0x65,0x44,0x1d,0xc3, + 0x44,0x16,0x39,0x49,0x38,0x22,0x46,0xcc,0xee,0xe3,0xb7,0x07,0xb1,0x45,0x91,0xfc,0x95,0x28,0x7e,0x34,0xe8,0x16,0xbf,0xee, + 0x83,0x6d,0x9c,0xad,0xdf,0x96,0x61,0xda,0x83,0x14,0x33,0x8d,0xe8,0xaf,0xd7,0x41,0xdb,0x6d,0xec,0xad,0xb6,0x2e,0xe2,0x10, + 0x1f,0x52,0xed,0xc6,0x00,0x9c,0x96,0xcb,0xfc,0xc5,0x51,0x71,0xd3,0xf8,0x58,0xa9,0x29,0x9d,0x5d,0x27,0x5f,0x61,0xe7,0xd1, + 0x77,0xc7,0xa9,0x1b,0xa2,0x61,0x6c,0x89,0x3c,0xa2,0x76,0x8b,0x0e,0xc3,0x96,0x20,0xed,0xa5,0x32,0xbb,0x16,0x4e,0x1c,0xfd, + 0xc5,0x97,0xe7,0x39,0xf9,0xde,0x3b,0x73,0x6d,0x73,0xe0,0x69,0xb0,0xa2,0xc7,0x6e,0x66,0xb9,0x3c,0x8b,0xe0,0xfb,0x26,0xef, + 0x36,0xd4,0x73,0xba,0xa9,0x0d,0x2d,0x0e,0xcd,0x28,0xb0,0x5f,0x7d,0xd6,0x18,0x0a,0x57,0xb1,0xb8,0x46,0x35,0xf2,0x4d,0x63, + 0x03,0x1e,0xbc,0x2a,0x42,0xc6,0x56,0x88,0xa5,0xe4,0xfd,0x8d,0x5e,0xd0,0x01,0x74,0x5d,0x99,0xc5,0x75,0xf1,0x78,0xa8,0x68, + 0xe5,0x3b,0x8a,0x78,0x27,0x36,0xe7,0x19,0x9f,0xcd,0x46,0x37,0x4e,0xf3,0xf8,0x02,0xe3,0x49,0xfe,0x8f,0x6b,0x45,0xbc,0xd6, + 0x86,0x39,0xbf,0xd5,0x6b,0xea,0xb2,0x16,0x81,0x5a,0xcc,0x29,0x87,0x19,0x01,0xf2,0x0b,0x47,0xe9,0x8d,0x46,0x04,0x8b,0xb3, + 0xf2,0x12,0x16,0x7e,0x71,0x12,0xbb,0x90,0x87,0x30,0xce,0x94,0xe9,0xdc,0xa7,0x76,0x61,0x48,0xa5,0x8b,0x5c,0xbe,0x8e,0x8b, + 0x86,0x8b,0x7c,0xd6,0x50,0xc1,0xad,0xec,0x81,0x74,0x55,0x88,0x41,0x43,0xa0,0x1c,0x41,0x85,0x48,0xe1,0x26,0xac,0x3c,0x82, + 0xcb,0x6a,0x08,0x6b,0x9b,0xb1,0x73,0xf4,0x75,0x63,0x26,0xbf,0x62,0xc6,0x6e,0x74,0xf0,0x15,0xde,0x87,0xf7,0x7f,0x2f,0x11, + 0x49,0x9a,0x15,0x8e,0xca,0x2a,0xdb,0x05,0x25,0xcb,0x66,0x7c,0xf8,0xc5,0x21,0xac,0x34,0xcb,0x02,0x1c,0x32,0x2e,0x19,0x10, + 0xee,0x18,0xd3,0x84,0xc3,0x86,0x61,0xbe,0xa8,0xc6,0x79,0x22,0x0b,0xe3,0xfc,0xd5,0x01,0xed,0xb6,0xa1,0x48,0xd4,0x23,0x4c, + 0xaa,0xeb,0xa6,0xdd,0xc2,0x4f,0xfd,0xd0,0xce,0xd1,0x78,0x3e,0x1c,0xb7,0xd5,0xc3,0xdb,0xd4,0x20,0x1e,0x1a,0x46,0x83,0x4d, + 0x32,0x07,0x4d,0x7a,0xec,0x99,0x35,0x79,0x76,0x67,0x50,0x80,0x3a,0x61,0xd6,0x5e,0xde,0xc3,0x51,0x7c,0x02,0x2f,0x47,0xa0, + 0x0b,0x3f,0x98,0x51,0x2d,0xd8,0xd9,0xbe,0x0c,0x3d,0xe2,0xb2,0x6e,0xd2,0x76,0x4a,0x14,0xdf,0x1e,0x55,0x27,0xa6,0x14,0x23, + 0x12,0xcf,0x96,0xd8,0x06,0x20,0x19,0xd3,0x4e,0x88,0x70,0x2c,0x0e,0xc6,0x31,0xd3,0x98,0xc7,0x6b,0x90,0x6d,0xf8,0xeb,0x16, + 0x12,0xe5,0x20,0xc7,0xa3,0x56,0xfe,0x35,0x91,0xd6,0xce,0x24,0x92,0x2f,0x82,0x4e,0x6b,0x0f,0x3b,0xcb,0x5c,0xd5,0x6d,0xf3, + 0x5c,0x84,0xa1,0x06,0xe1,0x2a,0x97,0x2f,0x1b,0xcf,0xa1,0xd9,0xf8,0x5c,0xaa,0x4d,0x28,0xbb,0xdb,0x95,0xa1,0xcb,0xe4,0x24, + 0x2f,0x39,0x78,0x73,0x07,0x4a,0xf9,0xb4,0xb8,0x89,0xdc,0x3b,0xf3,0xb1,0xa9,0x11,0x01,0x6a,0xa3,0x87,0xa1,0x5b,0x36,0x99, + 0xfc,0x38,0xcb,0x50,0xaf,0x76,0xa8,0xdf,0x2a,0x27,0x5c,0x84,0xa2,0x27,0xa7,0x11,0x59,0xc7,0x80,0x06,0xe5,0x94,0x37,0x86, + 0x60,0x95,0x0f,0xd8,0xbb,0xb0,0x81,0x02,0x17,0x10,0x45,0x8d,0x07,0x55,0x98,0x62,0xe5,0x6e,0xc3,0xcb,0xff,0xa9,0x30,0x36, + 0x8f,0xda,0xd8,0x2d,0xea,0xd1,0x26,0x58,0xa3,0x77,0x17,0x12,0x05,0x8f,0x03,0xb9,0xc1,0xc2,0x9e,0xda,0x0d,0x64,0x88,0x52, + 0x2e,0x30,0xb5,0xb1,0x07,0xdc,0xa1,0x51,0xe3,0x22,0xa2,0x44,0x7d,0x3a,0xcc,0xdf,0x1e,0xc5,0x27,0x7f,0xf5,0x71,0x9b,0x2c, + 0xc6,0xef,0x89,0xd0,0xa8,0x6f,0x05,0xd1,0xe9,0x09,0xa0,0x5a,0xf5,0xf9,0x4d,0x3e,0x82,0x3a,0xe3,0xc7,0xc1,0x32,0x07,0x11, + 0x32,0x1d,0x8a,0x86,0xd6,0x12,0xbd,0xae,0x17,0x2c,0xd6,0xfc,0x60,0xc8,0x44,0xbd,0xb1,0x03,0xee,0xbc,0x4c,0xa3,0xdf,0x7f, + 0x24,0x7a,0xef,0x25,0xd0,0x36,0x1b,0x7b,0x17,0x6d,0x5d,0xe8,0x44,0x3a,0x66,0x3a,0x8d,0x54,0xe3,0xa6,0xff,0x03,0x0d,0x51, + 0x03,0x78,0x5d,0xd9,0x16,0xde,0xff,0x5a,0x7b,0xef,0x73,0xee,0x0d,0x5e,0xd2,0xb1,0x6d,0x3d,0x1b,0x63,0xdb,0x9e,0xf2,0x61, + 0x6c,0x23,0x46,0x1d,0xb5,0xbd,0x55,0xec,0xc6,0x9e,0xd8,0x6e,0xaa,0xa8,0x8a,0x26,0x2e,0xc3,0x06,0xcd,0x79,0xf7,0xf3,0xe2, + 0x2f,0x2d,0xfa,0xc2,0x84,0x88,0x7a,0xd4,0xb2,0x22,0xe4,0xa3,0x65,0x48,0xc2,0x01,0x5c,0x51,0x83,0x9f,0xfe,0xf1,0x82,0x4d, + 0x3c,0xba,0x5d,0x88,0xbe,0x61,0xcb,0xda,0x8e,0x44,0x2e,0x80,0x3f,0x3e,0x39,0x84,0x51,0x0a,0xc5,0x37,0x2d,0xb8,0xf0,0x17, + 0x1e,0x43,0x0c,0xcf,0x50,0xb0,0xa1,0xc4,0x35,0x3b,0x84,0xe8,0xec,0xb5,0xac,0x4e,0x3c,0xdf,0x2b,0xcb,0x64,0x3c,0x66,0xb9, + 0x0f,0x5b,0x61,0x88,0x22,0xe7,0xa0,0xe3,0x84,0x65,0x5d,0x52,0xa4,0xda,0x30,0x47,0xcd,0xd8,0x82,0xf7,0x97,0xf8,0x4f,0x33, + 0xe4,0xc5,0xb7,0x6b,0x71,0xf3,0x66,0x21,0x6e,0x59,0x25,0xc4,0x30,0xa5,0x93,0x45,0x41,0x30,0xd3,0xd1,0xa4,0x63,0xe5,0xff, + 0xfe,0x25,0xc5,0xd4,0x46,0x21,0x3e,0x59,0x2d,0xc4,0x7f,0x6e,0x7f,0x7a,0x0a,0x97,0xef,0xa2,0xe5,0x22,0xd2,0x57,0x88,0x97, + 0x37,0x08,0xb1,0xe0,0x92,0x8a,0x75,0xf4,0x55,0xa5,0x4e,0xa2,0x7a,0x55,0xa6,0x1c,0xae,0x65,0x32,0xd9,0xf6,0xea,0x3a,0x4e, + 0xb4,0xa5,0xf2,0xe3,0xa5,0x66,0x2a,0x45,0x1b,0x7b,0x69,0x92,0xfa,0x55,0x20,0xee,0xcc,0xa2,0x67,0x1c,0xca,0x87,0x86,0xc9, + 0xc3,0xa2,0x66,0x2a,0xc2,0x25,0x3e,0x18,0x43,0xb9,0xe9,0x8f,0x10,0x7c,0x9f,0x6b,0xee,0xc1,0x61,0x5e,0xcb,0x73,0x6e,0x9e, + 0xa9,0x78,0xe9,0xf1,0x3d,0xd4,0xc1,0x8f,0x5f,0x95,0x82,0x6e,0xb9,0x8d,0xd2,0x68,0xbb,0x2c,0xa4,0x00,0x78,0x2c,0x72,0xa5, + 0xda,0x86,0x40,0xde,0x4d,0x8d,0x58,0x51,0x2b,0xbd,0xe8,0xdd,0x9f,0xb1,0x19,0xfc,0x84,0x97,0xfc,0xf1,0xfa,0x38,0x4a,0x44, + 0x3a,0x8a,0xf8,0xdd,0x04,0xac,0xa7,0x37,0xf2,0xe5,0x6e,0x74,0xf3,0xdf,0x77,0x51,0x03,0x4f,0x71,0x3f,0x6d,0xe0,0x70,0x3c, + 0x9d,0x4f,0x9d,0xd4,0x4b,0xd9,0xec,0x27,0x63,0x5d,0xe3,0x11,0x84,0x2d,0x66,0x10,0x3d,0x7c,0x40,0x9f,0x52,0x75,0xe6,0xc7, + 0x4b,0xb4,0x89,0xce,0xf1,0xb2,0x09,0xbc,0x3b,0x8a,0x3a,0xec,0xa6,0x7b,0x87,0x70,0xcf,0x1f,0x4e,0x22,0xc9,0xe3,0xd6,0xe5, + 0x0f,0x46,0xc8,0xa3,0x38,0x44,0x55,0x98,0x71,0xf3,0xa1,0x7a,0x63,0xe5,0x34,0xfb,0x50,0x20,0xd6,0xa3,0x05,0x29,0x1c,0xe0, + 0xba,0x0e,0x87,0xf4,0x9b,0x31,0x46,0x0f,0xe6,0xf5,0xdd,0x5b,0x38,0x89,0xa3,0xdc,0x72,0xf5,0x90,0x47,0x85,0xcc,0xbe,0xe8, + 0x1b,0x2f,0x79,0x08,0x29,0xf4,0xd0,0x7d,0x21,0x4e,0xd4,0x6a,0x0a,0x92,0xa5,0x38,0xa4,0xa2,0x10,0x44,0xff,0x58,0x82,0xc5, + 0x35,0x9c,0x41,0x63,0x2a,0x13,0x15,0x72,0x90,0xea,0x2e,0xf4,0x97,0x29,0x1e,0x63,0xb4,0xa8,0xa6,0x11,0x6a,0xdc,0x71,0xa1, + 0x88,0x0c,0x10,0xc2,0xbe,0x4e,0x88,0x10,0xf3,0x88,0x7c,0x20,0x07,0x3b,0x29,0x95,0x4b,0xd5,0x0d,0x05,0x32,0xcf,0xa9,0x7f, + 0x2b,0xde,0xdb,0x0f,0x07,0xe5,0xe3,0x08,0x5d,0x32,0xcc,0x51,0x08,0xa4,0x0a,0xbe,0xc6,0x8f,0x72,0x71,0xdf,0x5a,0xb9,0xd6, + 0x29,0x97,0xbf,0x8f,0xe1,0x5c,0xfb,0x23,0x23,0xee,0x23,0xb2,0x08,0x81,0xd0,0xc2,0xf5,0x07,0x21,0xbe,0xcf,0x15,0x22,0x9c, + 0x56,0x84,0xd9,0xf6,0xe2,0x83,0x21,0x38,0x65,0xe0,0x84,0x0a,0xc6,0x72,0xf1,0xd8,0x2e,0x21,0x10,0x25,0xc4,0xbc,0xe7,0x6e, + 0xc3,0xc9,0x59,0x7e,0x1b,0x2a,0x33,0x94,0x97,0x6b,0xb5,0xcc,0x45,0xbd,0xec,0xe0,0x93,0x2a,0x01,0x5b,0x6d,0x1b,0x55,0xf0, + 0xb2,0xe3,0xae,0x19,0x4e,0xb7,0xc2,0x54,0xba,0x8c,0xa5,0x27,0x62,0xf9,0xc1,0x6a,0x99,0x22,0xbd,0x6d,0x43,0x34,0x21,0xb7, + 0x50,0x11,0xc7,0x21,0x8e,0x3e,0x2c,0x54,0x79,0xd4,0xaf,0x0f,0xe0,0xa1,0x73,0xd4,0xc4,0x1d,0x5c,0x88,0x70,0x8e,0xc1,0x9b, + 0x7e,0xe8,0xc3,0x3e,0x54,0xd0,0x88,0x34,0x8a,0xf5,0x71,0x59,0x4f,0x97,0xc6,0x53,0x0b,0x87,0xf2,0x0d,0xeb,0x65,0x02,0x76, + 0xcb,0xc7,0xbe,0x4b,0x21,0x2f,0xb7,0xbd,0x1c,0x81,0x2a,0xee,0x24,0x5d,0x8e,0x72,0x04,0xca,0x7f,0x0d,0xc3,0x35,0x8e,0x7b, + 0x71,0x96,0xee,0xda,0xa5,0x4b,0x69,0xda,0x66,0x8b,0xe0,0x62,0xaa,0x97,0xcf,0xcd,0x71,0x35,0x75,0xf2,0xca,0x0c,0xd9,0x86, + 0x40,0xe3,0xa1,0x76,0x3d,0xc8,0x81,0x9c,0xc8,0x73,0xf4,0x43,0xa8,0x3c,0x4c,0xab,0x6a,0xa8,0x99,0x8e,0x50,0x2a,0x3b,0xe0, + 0x1e,0xc1,0x2d,0x54,0x2c,0x87,0xb4,0xb7,0x33,0xdd,0x3d,0x18,0xa1,0xbf,0x95,0x50,0x0c,0x92,0xf4,0x17,0xe3,0x14,0xa2,0x22, + 0xcc,0xaf,0x2c,0xaa,0x82,0x83,0x0d,0x6f,0xdd,0x2a,0x07,0x95,0x79,0x92,0x93,0x31,0x4b,0xa7,0x69,0x58,0xa5,0xd2,0x02,0xbf, + 0xee,0xe0,0x09,0x54,0x51,0x8d,0xfa,0x64,0x91,0x6a,0x29,0x17,0x0e,0x76,0xdf,0x2a,0xb3,0x69,0x58,0xde,0xd2,0x8a,0x6d,0x98, + 0xb2,0x65,0xab,0x2d,0xe6,0x7a,0xde,0x80,0x14,0xaa,0xa7,0x27,0xea,0xf9,0x04,0x92,0x5d,0x0a,0x70,0x56,0xf7,0x93,0x83,0x6f, + 0x5f,0xf3,0x72,0x12,0x3f,0x7d,0xad,0x1f,0x9a,0xe5,0x8b,0xa5,0x14,0x87,0xe5,0x62,0xa7,0x8f,0x10,0x76,0x77,0x88,0x33,0x3c, + 0x42,0x55,0xa6,0xde,0xee,0x5a,0x80,0x4c,0xf9,0xfe,0x19,0x33,0x1e,0x31,0x57,0x0d,0x1b,0x33,0xf6,0x48,0x15,0xa7,0xff,0x51, + 0xe5,0x32,0xc7,0x8b,0x7c,0x99,0x03,0x7b,0xf1,0xe3,0x45,0xe7,0xcc,0xf3,0x32,0xd4,0x76,0x12,0xfb,0x68,0x41,0x57,0xf1,0x27, + 0x07,0xc9,0x52,0x79,0xf6,0x69,0x55,0xab,0xe3,0xe9,0x88,0x6b,0x9b,0xd3,0x8b,0x1f,0xfa,0x5c,0xfe,0x98,0xec,0xde,0x4f,0xe7, + 0x2f,0x9e,0x41,0x8f,0x3d,0x9d,0x53,0xd5,0x37,0x69,0xf8,0xf1,0xe3,0x27,0x53,0x2f,0xf4,0xe1,0x23,0xf2,0x17,0x8a,0x83,0x0f, + 0x22,0x3c,0xc2,0x51,0x62,0x2b,0xa2,0xc7,0x32,0xb0,0x53,0xfb,0xf3,0x92,0x7c,0xee,0xd1,0x44,0x3a,0xa5,0xb3,0xd0,0x2a,0xfb, + 0xd0,0xeb,0xb2,0x1f,0x01,0xb6,0x68,0x59,0x82,0x34,0x78,0x56,0xa2,0x92,0x7c,0x65,0x2c,0x0f,0x38,0x17,0x73,0xf4,0x5f,0x27, + 0xe9,0x14,0x5e,0x29,0xc6,0x0a,0x67,0x48,0x4d,0x74,0x1a,0xdb,0x75,0x11,0xd2,0xf9,0x9f,0x43,0xc6,0x1c,0xe5,0xf3,0x24,0x8d, + 0x79,0x2c,0xd0,0x4e,0x73,0x33,0x95,0x60,0x27,0x75,0xa2,0x89,0x93,0x79,0x3b,0xba,0xcd,0x8b,0x8b,0x6c,0x4b,0xea,0x95,0x24, + 0x9a,0xe1,0xe5,0x55,0x98,0x20,0x3f,0x79,0x67,0x80,0x4e,0x45,0x95,0xd1,0xc8,0x09,0xfa,0x8e,0x80,0x65,0xc5,0x72,0x89,0x5c, + 0xf3,0xf1,0x0b,0x62,0x38,0x0a,0x01,0xda,0xa3,0x9e,0xf2,0xb9,0xd6,0xa8,0x50,0x2b,0x6a,0x10,0x84,0x3d,0xb4,0x64,0xe4,0x52, + 0x97,0x4a,0xe0,0x28,0xd7,0x0a,0x2a,0x73,0xd9,0xae,0x37,0xea,0x4a,0x9c,0xb2,0xb9,0x35,0xe8,0x46,0x3a,0x06,0x0b,0x47,0xe5, + 0xcd,0x41,0x32,0x98,0xdc,0x6a,0x78,0xb3,0x1e,0xd3,0x5f,0x85,0xcb,0x10,0xaa,0xa1,0x51,0x9d,0x8d,0x10,0xf8,0x60,0x46,0xb7, + 0xb8,0x48,0x31,0xb2,0x4e,0x88,0xdd,0x4b,0x42,0x3c,0xe6,0xe0,0x49,0x3e,0x4a,0x65,0xf2,0x9f,0x4a,0xb8,0xff,0x24,0xc4,0xec, + 0x9f,0x21,0x12,0x3d,0x2e,0x8a,0xb9,0x6c,0x02,0x71,0xe6,0x25,0xbb,0x3c,0xab,0xa1,0x45,0x4c,0xa9,0x10,0xd7,0x2e,0x2c,0x59, + 0x03,0x7c,0x85,0x0a,0x77,0x72,0x74,0x73,0x7b,0xab,0x91,0x5d,0x0c,0xd1,0x94,0x2c,0x84,0xef,0x7e,0xcb,0xaa,0xa5,0x4f,0xb7, + 0xa2,0x10,0x9b,0x31,0xa1,0x4a,0xf0,0xc0,0x15,0x0e,0x4e,0x47,0xa9,0x5c,0x2e,0x7c,0x2a,0x85,0xf8,0xb8,0xcd,0xb2,0xa2,0xb4, + 0x65,0xeb,0xe2,0x4d,0xbf,0xfa,0x76,0xd8,0xbe,0x93,0x2b,0xf5,0x8b,0xdd,0xbc,0x03,0x83,0x5c,0xc0,0x21,0xaa,0x91,0x0a,0xe9, + 0x3c,0x32,0x55,0x32,0x79,0x44,0x62,0x13,0x56,0xb6,0x9b,0x27,0x30,0x48,0x1e,0xad,0xbc,0x1f,0x19,0x7c,0x7f,0x0f,0x3a,0x69, + 0x18,0xb1,0x34,0x2e,0xff,0x1a,0x6b,0x1f,0xc4,0xa8,0x9e,0xd3,0x07,0x97,0x9d,0x34,0xf3,0xae,0x9c,0xd6,0x45,0x9e,0xc5,0xca, + 0xfb,0xe2,0xb3,0x94,0xa6,0x02,0xf9,0xac,0xb9,0x83,0x2c,0x1a,0x90,0xed,0x34,0x69,0x46,0xe2,0xa0,0xd9,0x2e,0x77,0xe9,0x17, + 0x42,0xf4,0x61,0x8e,0x37,0xba,0x70,0x52,0xb6,0xf0,0x1c,0xea,0x54,0x0f,0xa7,0xa8,0x7b,0x8e,0x9a,0xdb,0x90,0xc4,0x19,0xe4, + 0x67,0x24,0x72,0x95,0x74,0x86,0xa4,0x7f,0x1f,0x60,0x24,0x50,0x89,0xf4,0x42,0x9d,0x3c,0x24,0xfb,0xe9,0x38,0x26,0x64,0xa8, + 0x6a,0x31,0x9a,0x28,0xdc,0x78,0xf5,0xb0,0x11,0xcb,0x35,0xca,0x65,0xa7,0xf2,0xe6,0xb5,0xc6,0xef,0x1a,0x8c,0x75,0x28,0xe3, + 0x87,0xe7,0x69,0x4a,0xf7,0xdb,0x5d,0x4b,0xf4,0xca,0xcd,0xe8,0xd7,0x2f,0x4e,0xc9,0x2a,0x3e,0x85,0x34,0x78,0xc9,0x57,0x5b, + 0x30,0xe4,0xbc,0xda,0x86,0x5f,0x78,0x9a,0x5e,0xfc,0x6b,0x23,0x12,0x70,0x41,0x1d,0xa2,0x28,0x94,0x13,0x8c,0x16,0xf9,0xef, + 0x7b,0x1e,0x8c,0xe6,0xcd,0xb8,0xf1,0xd1,0x20,0x7a,0x21,0x93,0x66,0x68,0x37,0x3b,0xcf,0xa9,0x1f,0xef,0xfe,0x73,0x3f,0xfc, + 0x31,0x40,0x2b,0x2f,0xdb,0x27,0x47,0xd4,0x22,0x3d,0x92,0x41,0x5e,0xf4,0xd4,0x71,0x2a,0xe3,0x5c,0xdd,0x83,0x4c,0xfa,0x34, + 0x8e,0xea,0xe0,0x87,0x74,0x9e,0xc6,0x1e,0x1a,0xa3,0x8d,0x7a,0xb7,0x9c,0x41,0x97,0x0e,0xa6,0x5e,0x15,0x47,0xf7,0x2a,0xe1, + 0x96,0x2a,0xc4,0x49,0xa7,0xc5,0xeb,0xf1,0x8d,0x3f,0xff,0xf6,0xbe,0x0a,0x94,0xd0,0x57,0x4a,0x94,0xa4,0x09,0xb1,0x77,0x9f, + 0x65,0xfd,0x35,0x5e,0x16,0xc9,0x29,0x2a,0x23,0x7b,0x15,0x92,0x60,0x8a,0xef,0x33,0x85,0x78,0xa6,0xd5,0xb2,0xbe,0xfb,0xd5, + 0x8a,0x6c,0xfc,0xf6,0x28,0xd6,0xa4,0x60,0xe5,0xf2,0x00,0xaa,0xc5,0x4b,0x95,0xac,0x45,0x47,0x89,0x10,0x2d,0xcd,0x96,0x25, + 0x1f,0x09,0xa4,0xab,0x6f,0x9b,0xc7,0x09,0x7c,0x7f,0x7f,0x33,0x49,0x71,0x63,0xb9,0x10,0xff,0x73,0x62,0x24,0xc8,0xbd,0xea, + 0x00,0x5e,0xa9,0xe1,0x61,0xa9,0x84,0x47,0xb5,0x10,0x73,0xa5,0x96,0xd5,0x83,0xd3,0x74,0x6f,0x2e,0xed,0xa5,0xa3,0x9c,0x86, + 0x48,0x5e,0x2e,0x4a,0x4b,0x85,0xf8,0xcb,0x9d,0x42,0x1c,0x30,0x56,0x65,0x7a,0xf8,0xc9,0x06,0xb5,0x91,0x0f,0x51,0x26,0x17, + 0xd2,0xb3,0xbb,0x8d,0x2c,0x6a,0xa7,0x63,0xc6,0xa7,0xad,0xf6,0x6e,0x24,0x3a,0x3b,0x0f,0xdb,0xb7,0xa0,0x97,0x22,0x71,0x6d, + 0x06,0x7a,0xe8,0xd5,0x34,0x59,0x8a,0xfd,0xd8,0xea,0x1e,0xa1,0x37,0xd8,0x36,0xa8,0x60,0xfb,0x34,0x77,0xf3,0x28,0x75,0x1b, + 0xc3,0x7a,0xd4,0x3e,0x49,0x79,0xb6,0x01,0x0f,0xc7,0xe5,0x81,0x57,0x37,0x5f,0xd3,0xee,0x99,0x65,0x1f,0x58,0x76,0xda,0x3d, + 0xec,0x8a,0xd6,0x2b,0x4f,0x73,0x88,0x91,0xa5,0x46,0x75,0x86,0x1c,0xc4,0x31,0xfc,0xf3,0x95,0xfd,0xf8,0xee,0xde,0x7b,0x0f, + 0x52,0x37,0xd6,0xf1,0x7e,0x8a,0xa7,0x1e,0xbe,0x6e,0x0e,0x21,0xa8,0xc5,0x02,0x79,0xa3,0x47,0x2f,0xf0,0x3a,0x35,0xa0,0x82, + 0xdd,0x07,0x10,0x4f,0x59,0xb8,0xf6,0xab,0x4f,0x5a,0xf5,0xec,0x45,0x6b,0x11,0x2c,0x67,0xb8,0x92,0x6b,0xc8,0x5f,0x4e,0xd0, + 0x4f,0xe1,0x88,0x26,0x5f,0x79,0xc4,0xc0,0x0e,0xf9,0xf2,0xf3,0x35,0xf0,0xc5,0xe5,0x1b,0x38,0x84,0x7a,0xf4,0x19,0xaa,0xd6, + 0x8f,0x45,0x63,0x91,0xce,0xf2,0x35,0x59,0x5c,0x46,0x93,0xc6,0x17,0xc9,0xd8,0x42,0x77,0x9c,0x41,0x18,0x35,0x40,0xf7,0xcb, + 0x60,0x2e,0xe3,0x61,0x39,0x87,0x56,0x1c,0x85,0x2f,0x7c,0x79,0xd4,0xf0,0xa1,0x4a,0xfb,0x6b,0xad,0x46,0x09,0x22,0xe9,0x4f, + 0x73,0x34,0x8c,0x62,0x0a,0x22,0xfe,0xe3,0x80,0xe7,0x19,0xe4,0x61,0x1d,0x82,0x95,0x0f,0x9d,0xc0,0xd7,0x83,0x2a,0x8b,0x03, + 0xd5,0xfd,0xd1,0x54,0x80,0x44,0xf6,0x35,0x26,0x8d,0x39,0x8c,0xb3,0x37,0xaf,0xc3,0xfb,0x0e,0xa7,0xe6,0x46,0x55,0x4c,0xc3, + 0x54,0xac,0x1d,0x70,0x98,0xde,0x7c,0xd6,0xb6,0x49,0xcd,0x99,0xcd,0x5a,0x89,0xeb,0xa3,0x84,0x08,0x9d,0xb5,0xac,0xc7,0x3c, + 0x6f,0xfe,0x34,0x9f,0x3e,0x0d,0xa1,0xfd,0x58,0x2e,0xc6,0x8e,0x08,0xf1,0xbb,0xd5,0x42,0xf8,0x20,0x16,0x17,0xb6,0x9a,0xdb, + 0x64,0xbd,0x19,0x25,0x2d,0x39,0x24,0x6b,0x39,0xc6,0xb3,0x5d,0xce,0xf3,0xcd,0x01,0xbc,0x80,0x28,0x7b,0x86,0xdb,0x21,0xc4, + 0xa2,0x42,0xae,0x03,0x6d,0xe5,0x60,0xa3,0xd9,0x35,0xcf,0xf0,0xd5,0xcd,0xda,0xd7,0x25,0x44,0x5e,0xff,0xe8,0x71,0xda,0x0a, + 0xcf,0x41,0x99,0xa3,0x12,0x69,0xdc,0xac,0x41,0xb2,0x7d,0xda,0x36,0x80,0x52,0x95,0x4c,0xed,0xd4,0x4a,0x6d,0x68,0xd4,0x6d, + 0x34,0x40,0x9b,0xdc,0xa3,0xa9,0x9c,0xbd,0xe5,0xad,0x21,0x32,0x9e,0x73,0x64,0xbd,0x0c,0x83,0x83,0xfd,0x30,0x68,0xfc,0x26, + 0xcc,0x18,0xe7,0xd3,0xf2,0x31,0x87,0xcb,0x1c,0x67,0xa8,0x76,0xf9,0x43,0x2a,0xbf,0xdc,0x2d,0xcf,0xbb,0x1d,0xd1,0x79,0xae, + 0xb3,0xd4,0xa6,0xa6,0x29,0x58,0xde,0xd5,0x69,0x2e,0xd0,0x11,0x39,0x4e,0xb3,0x2a,0x55,0xaf,0xd3,0xff,0x29,0x97,0xab,0xd7, + 0xd9,0x7c,0x75,0xbb,0x2d,0x90,0x3b,0x3d,0xcf,0x63,0x83,0x8c,0x94,0xcd,0x1c,0x0c,0xa7,0x0f,0x54,0x20,0xff,0x13,0x42,0xef, + 0x06,0xca,0x44,0xea,0xd4,0xff,0x69,0x93,0x4b,0x88,0xa5,0xd7,0x2e,0xdb,0x46,0x83,0xdc,0xa5,0x57,0x1f,0xd2,0xef,0xb4,0x50, + 0x34,0x65,0x52,0x16,0x55,0xb8,0x47,0xc2,0x8f,0xd7,0x71,0x03,0x9e,0xfd,0x19,0xb9,0xf8,0xea,0xe2,0xaf,0x63,0x11,0xaa,0x66, + 0x30,0xa1,0x56,0x35,0xe8,0x3c,0xfc,0x2c,0x67,0xa5,0x8f,0xce,0xc2,0x84,0x9c,0xb5,0xcd,0x9b,0xd5,0x7c,0x4e,0x47,0x70,0x0d, + 0xf7,0x21,0x49,0x37,0xaa,0x2a,0x7b,0xb3,0x7d,0xc9,0x08,0xe6,0x3f,0x16,0x50,0x15,0x02,0x8d,0xcd,0xb6,0x71,0x8a,0x52,0xef, + 0xc6,0x70,0x29,0x75,0xa8,0x2e,0x2c,0x19,0x0f,0x6c,0xe4,0x54,0x5b,0x85,0x67,0xb9,0x99,0x6d,0x9c,0x55,0x1d,0x38,0xa8,0xa2, + 0x4c,0x37,0xd1,0xba,0x53,0x88,0x67,0xff,0x21,0xc4,0x8b,0xff,0x0b,0xc0,0xd7,0x25,0x14,0x06,0xcf,0x15,0x6d,0xfa,0xde,0x3f, + 0x25,0xe1,0x1c,0x6e,0xf2,0xa7,0x20,0x7c,0x9d,0x80,0x97,0xbe,0xdd,0x46,0x6b,0x5e,0xdd,0x41,0x52,0xac,0x77,0x2e,0x1f,0xf8, + 0xa7,0x10,0x0f,0x96,0x63,0x00,0x9f,0x46,0xe1,0x69,0x37,0x21,0xe3,0x84,0x78,0xf2,0x3e,0x21,0xb6,0xc3,0xc5,0x56,0x82,0xa3, + 0x28,0xc5,0x25,0x61,0x94,0x8a,0x06,0x74,0xe2,0x86,0x6a,0x5a,0xc4,0xef,0x82,0x10,0x87,0x37,0xe5,0x51,0x64,0xc2,0x1f,0xcf, + 0x16,0xb0,0x14,0x6f,0x27,0x08,0x51,0xff,0x37,0x21,0x9e,0xbb,0xfe,0xdd,0x7e,0x5c,0xe2,0x4b,0x52,0xc8,0x44,0x21,0x82,0xfe, + 0x20,0x84,0x2f,0xfe,0xb6,0x0f,0x85,0x78,0xe2,0x3b,0x29,0x6e,0x70,0xb6,0xc2,0xfe,0x28,0x44,0x11,0x1e,0x0f,0xc2,0x97,0xbf, + 0x2d,0xc7,0xff,0x01,0x3d,0x50,0x03,0x74,0x9d,0xe9,0xd6,0xde,0xcf,0xde,0xef,0xfb,0x7e,0xdf,0x97,0x53,0xa4,0x18,0xaf,0x35, + 0xba,0xb6,0xef,0xb4,0x1d,0xdb,0xb6,0xd5,0x8e,0xed,0x99,0x62,0x35,0xb6,0x71,0x52,0xa7,0x4a,0x1d,0x35,0x6c,0x5c,0x9b,0xb1, + 0xed,0x54,0x41,0x33,0x4d,0xd3,0xf3,0xe7,0xd7,0x5d,0xde,0x78,0xf8,0x16,0xdd,0x1e,0x43,0x34,0xf4,0x16,0xd1,0x66,0x24,0x71, + 0x0f,0x12,0xf5,0x3e,0x29,0xd4,0x05,0x5c,0x8f,0x34,0x94,0xaa,0x5c,0xf6,0xc7,0x12,0x55,0x6e,0xd5,0x79,0x97,0x5e,0x19,0x67, + 0x95,0xa2,0x0c,0x7e,0xc8,0xe1,0x21,0xe3,0x2b,0xe9,0xde,0x35,0x92,0xab,0x56,0xe9,0x23,0x33,0xba,0xf8,0x82,0xb8,0xad,0x3c, + 0xe5,0xb1,0xa2,0xed,0x3e,0x64,0x99,0x0c,0x53,0x6a,0x67,0x73,0xb0,0x95,0x8f,0xb7,0x5b,0x70,0x48,0x35,0x4a,0x8f,0xfa,0x21, + 0xce,0x14,0xdb,0xab,0x5c,0x99,0xba,0x4f,0x99,0x3d,0xaa,0x52,0x1d,0x32,0x13,0xf4,0x76,0xa1,0x33,0x36,0xa5,0xd7,0xf1,0x4c, + 0x9f,0x80,0xaa,0x76,0x95,0x21,0x1d,0x72,0xd3,0xc3,0xcb,0xf8,0xd7,0xab,0x74,0x23,0xb7,0x58,0xa9,0xb2,0x4c,0x2e,0xaa,0x06, + 0x9c,0xe7,0x0a,0x89,0xb4,0x06,0xf5,0x57,0x35,0x26,0x49,0x17,0x58,0x12,0x86,0x53,0xf0,0xc5,0x8c,0x41,0xa4,0xe2,0x84,0xb9, + 0xbf,0xcb,0x7c,0x96,0x6d,0x17,0xcb,0xa0,0x2b,0xd0,0x8a,0x52,0xe9,0xaa,0x43,0xad,0xc1,0x63,0x7b,0xd5,0x16,0x59,0xa7,0xc3, + 0xbc,0x8e,0xca,0xa0,0x57,0x1e,0x1f,0x9b,0x34,0x82,0x30,0xde,0x8c,0x71,0x19,0xc5,0x0a,0xe4,0x70,0x94,0x5e,0x8e,0x4c,0xdd, + 0xca,0x11,0xbc,0x97,0x7d,0xf4,0x56,0xbd,0x0a,0x17,0x65,0x9c,0xcf,0xeb,0x61,0xec,0xb6,0x7e,0x76,0x12,0x9d,0x04,0x93,0xc5, + 0x03,0x7a,0x14,0xde,0x29,0x12,0x27,0x0b,0xb2,0xb9,0x9e,0x3f,0x9f,0x93,0x87,0x8d,0x48,0xc0,0x4a,0x15,0x67,0x7d,0xd1,0xc2, + 0x31,0xd8,0xc3,0xdb,0xed,0x12,0x55,0xc4,0x1d,0xdc,0x87,0xab,0x7f,0x19,0x84,0x6e,0x9d,0x82,0x21,0xf9,0x5d,0xaa,0xca,0x95, + 0x3c,0xd3,0x66,0x97,0x9b,0x33,0x2a,0xdd,0xeb,0xfe,0xf2,0xc9,0x2b,0x4d,0xb5,0x6b,0x3b,0xa2,0x27,0x57,0x9b,0x6e,0x35,0xbf, + 0x5d,0xfd,0xbb,0xdc,0xee,0x67,0x43,0x71,0x85,0x44,0x79,0x5f,0x13,0x15,0xe1,0x9a,0x3d,0x18,0xe5,0xe3,0xe8,0xe6,0xbd,0x1c, + 0x24,0x31,0x28,0x62,0x45,0x9f,0x17,0x10,0xa5,0x67,0x10,0x2d,0x8c,0xc7,0xbf,0x37,0xe3,0xa1,0xff,0x5e,0xd5,0xa6,0x10,0x45, + 0x2a,0x50,0x8f,0x6c,0xc4,0x6e,0xb6,0x52,0xb0,0x0a,0x2e,0x7a,0x79,0x37,0xd1,0x3d,0x53,0x40,0x2f,0xc6,0xf0,0x38,0x96,0x62, + 0x83,0x15,0xa7,0xdc,0xae,0x1e,0x74,0xc8,0x8c,0x7d,0x12,0x8d,0x01,0x24,0x5b,0x4b,0xed,0xdd,0x32,0xaa,0x6f,0x4c,0xf6,0x0e, + 0xd1,0x2e,0x7a,0x26,0x9f,0xa8,0xf2,0x56,0x50,0xf5,0xd4,0x37,0xeb,0xa5,0x86,0x3d,0xce,0x03,0xeb,0xf5,0x4e,0xac,0x36,0x45, + 0x9c,0x30,0xbd,0x88,0xab,0x78,0x08,0x51,0xfa,0xce,0x12,0x57,0x3c,0x4e,0xfe,0xa6,0x53,0xae,0xa4,0xf7,0x26,0xd8,0x6f,0xb8, + 0x0d,0x94,0x68,0x5f,0x13,0x39,0x65,0x97,0x1c,0x71,0x6d,0xe0,0xec,0x69,0xcf,0x06,0xa9,0x73,0x68,0xf3,0x9a,0x9a,0x2d,0x21, + 0xa8,0x55,0x31,0xec,0x36,0x77,0x05,0xc9,0x1e,0x64,0xcb,0x23,0x75,0x66,0x5e,0x1e,0xef,0xe0,0xb0,0x29,0x9f,0x67,0xeb,0x5e, + 0xec,0x9f,0x71,0x50,0x46,0xac,0xa7,0x0a,0xe5,0xc7,0x95,0x96,0x77,0x1e,0xb7,0xaa,0x78,0xef,0x72,0x68,0xf2,0xdf,0x45,0x74, + 0x70,0x16,0xa8,0xc9,0xda,0x8c,0x68,0x1d,0x89,0x72,0xf3,0xa2,0x9f,0x6a,0x82,0xa2,0xf9,0x07,0x89,0x92,0x1e,0xf1,0x78,0x9a, + 0xd8,0x1f,0x29,0x78,0x63,0x07,0x5a,0xe0,0xd0,0x70,0x0d,0xd1,0xfa,0xad,0x1e,0x4f,0x83,0xfc,0x2a,0x40,0x36,0xc2,0x8f,0xd3, + 0x65,0x39,0xb2,0x38,0x91,0x9f,0xd8,0x28,0x4f,0xb7,0xf2,0x09,0x79,0x36,0x4a,0x1c,0xfa,0x47,0x0b,0xd1,0x58,0x9a,0xc7,0xe3, + 0x56,0xbf,0xf2,0x41,0x12,0x76,0xa3,0x5b,0x4a,0x79,0x84,0xd7,0x60,0x4a,0x24,0x17,0xc9,0x15,0x6d,0x13,0xb8,0x02,0xd6,0x34, + 0x54,0x4d,0xb4,0x65,0xc0,0xe3,0x31,0xf9,0x28,0xe1,0x56,0x8e,0xc5,0xdc,0x8d,0x08,0x63,0x9b,0xe4,0x24,0xd1,0xeb,0x7f,0x23, + 0x3a,0x6e,0xfe,0x1d,0xac,0x1b,0x30,0xa6,0x3d,0xbc,0xdd,0x3c,0xbb,0xde,0x6c,0x95,0x1c,0x39,0xcd,0xfb,0x65,0x05,0xde,0xa2, + 0x0b,0x4d,0x44,0xa5,0x73,0x89,0x8e,0x48,0xa0,0x13,0x84,0x7a,0xd3,0xa5,0x22,0x75,0x97,0x8e,0x46,0x9d,0x7c,0xd9,0xc2,0x27, + 0xb0,0x47,0x7d,0xbf,0x4b,0x56,0x88,0x1f,0x5f,0xbf,0xcc,0x1c,0x90,0x61,0x79,0x73,0x99,0x19,0xe5,0x7c,0x7b,0xce,0xb0,0x64, + 0xca,0xb0,0x6b,0x54,0xa7,0xc9,0x61,0xf5,0xb3,0x59,0x29,0x83,0xe6,0xa9,0x3e,0x95,0xa8,0x32,0x24,0xc5,0x09,0x90,0x64,0x9e, + 0xee,0x2b,0x31,0xb2,0x11,0x7f,0x5b,0xa3,0xca,0xac,0x5e,0xab,0x0c,0x5b,0x55,0x06,0x66,0x56,0x99,0x2e,0x5e,0x61,0x37,0xab, + 0xdf,0x2f,0x46,0xb8,0x5c,0xff,0x87,0x1f,0x8a,0xe4,0x81,0x07,0xbe,0x5c,0xcb,0x83,0x98,0xb5,0x42,0xb6,0x61,0x0b,0x06,0x75, + 0x19,0xce,0xa8,0xa3,0x28,0xe2,0x5b,0x4b,0x79,0xc0,0xd4,0xf0,0x2b,0x03,0x52,0x22,0xd1,0xfa,0xd1,0x50,0x3e,0xa3,0x5b,0x9d, + 0x61,0xef,0xab,0xaa,0xf8,0xbc,0x39,0x22,0x0b,0x3f,0x3d,0x2c,0x3e,0x2a,0x94,0x67,0x77,0x72,0x90,0x2c,0x55,0xe3,0xd8,0xcf, + 0x87,0x78,0x19,0xdf,0xf8,0xeb,0x34,0x1e,0xe1,0x6c,0xf9,0x76,0x85,0x0c,0x63,0xe6,0x3b,0x5b,0xb8,0x90,0xd7,0xea,0x74,0x09, + 0x93,0xa3,0x58,0xab,0xfb,0xe5,0x94,0x7a,0x61,0x3f,0x72,0x71,0xc9,0x3a,0x2b,0xe1,0x4e,0xa0,0xaa,0xe6,0x4c,0x35,0x2c,0x73, + 0xce,0x61,0x1b,0x3c,0x32,0x8a,0x34,0xab,0x87,0x7d,0x4c,0x09,0xff,0xb8,0x95,0xdd,0xa8,0xc2,0x38,0xef,0x94,0x8f,0xc3,0xf1, + 0xc1,0x0f,0x69,0x38,0x0a,0x3b,0x11,0x1d,0xb2,0x51,0x3d,0xb9,0xc6,0x3e,0xcb,0xfe,0xd3,0xb7,0x20,0x4b,0x1f,0xc6,0x79,0xa9, + 0x44,0xa1,0xde,0x68,0x17,0xeb,0xe3,0x72,0xd2,0x44,0x5b,0xbb,0xcd,0x71,0x55,0x2c,0x3b,0xcc,0x72,0x9e,0x55,0x89,0x6e,0x3c, + 0xbe,0xcb,0x76,0x63,0x3b,0x1b,0x4a,0xdb,0x43,0x74,0xdd,0x3c,0xa2,0x3b,0xdd,0xa8,0x41,0x31,0xdb,0x91,0xaa,0x1b,0x57,0xff, + 0xfe,0x90,0x56,0x14,0x72,0x84,0xa8,0xe5,0x0d,0xa2,0xbb,0x17,0xbd,0xf2,0xf7,0xab,0xd2,0xa0,0xe9,0xb9,0xe3,0x44,0xbb,0x26, + 0x16,0x4b,0xf8,0xae,0x1d,0x72,0x16,0xf7,0x3c,0xd9,0x82,0x26,0x68,0xda,0x78,0x92,0xe8,0xcb,0x89,0xb5,0x0f,0x3f,0x7d,0x80, + 0xef,0x8b,0x96,0x4c,0x14,0x62,0x2d,0x14,0x95,0x95,0x13,0xcd,0x7f,0x93,0xc8,0x8f,0x67,0x2d,0x7a,0x20,0x10,0x0b,0x27,0xd1, + 0x82,0x3a,0xa2,0xdf,0x7d,0x48,0x74,0x4a,0x72,0xe5,0x14,0x6e,0x3b,0x66,0x36,0x70,0x13,0x66,0xde,0xe0,0x8b,0x14,0x2b,0x8b, + 0x9d,0x68,0xde,0xcc,0x8f,0x76,0xaa,0x1d,0xf0,0xc5,0xbc,0x6c,0xdc,0x6e,0xe8,0x9d,0x0e,0xa2,0xb1,0x27,0x88,0x56,0x63,0x2a, + 0x5d,0x42,0xa7,0xa4,0xeb,0x40,0x1c,0xe0,0x03,0x72,0x42,0x29,0xfa,0xee,0x18,0x51,0x9c,0x9b,0x68,0xc6,0xeb,0xaf,0x6f,0xd6, + 0x5f,0x1d,0x52,0x6f,0xd1,0xe8,0x44,0x90,0x57,0x73,0x89,0x42,0xd4,0xf7,0x9b,0xec,0x6c,0x95,0x6d,0x2f,0xc1,0xf5,0x35,0x70, + 0xe3,0xdf,0xab,0x30,0xef,0xa9,0x02,0x9c,0xc3,0x8c,0x97,0xf3,0xe1,0x36,0x47,0xf0,0xda,0xcf,0xdc,0x21,0x8f,0x45,0xe9,0x30, + 0x89,0xd1,0x71,0xf0,0xe1,0x3f,0x07,0xe1,0x10,0x4e,0x71,0x29,0xfc,0xb1,0x85,0xbb,0x50,0x83,0xf9,0x09,0x92,0xa0,0x56,0x9b, + 0xd5,0xf8,0xee,0x8c,0x64,0xcb,0xbd,0x4b,0xa4,0x51,0xd5,0x20,0x47,0x35,0x49,0x1e,0xef,0xb3,0xf7,0x23,0x5d,0xa5,0x60,0x6e, + 0x0c,0x0f,0xe8,0x57,0xb3,0xad,0x7e,0x29,0x91,0x5f,0xfb,0x71,0xb2,0x57,0x9a,0xeb,0xac,0x09,0xd0,0x39,0x2a,0x4a,0x9f,0xc6, + 0x06,0x75,0x54,0x76,0xc9,0x65,0x95,0x26,0xa9,0x66,0x05,0x4e,0xf3,0x2e,0x19,0x37,0x8f,0x34,0xe9,0x41,0xec,0x91,0x38,0xe7, + 0x09,0x3f,0x55,0x00,0x1f,0x1c,0xc3,0xb8,0xbc,0xf8,0x8f,0x2a,0xf8,0xf3,0xbc,0x4f,0x1b,0x10,0xa5,0x7e,0x7b,0xc8,0x64,0x62, + 0xc0,0x3a,0x8f,0x02,0xd9,0xab,0x36,0x70,0xbf,0xab,0x05,0xc9,0xe2,0xa7,0x96,0x3a,0xeb,0x75,0xe0,0xe4,0x00,0xa9,0x36,0x53, + 0xca,0xaf,0xee,0x56,0x29,0x4c,0x55,0xb2,0x04,0x7b,0xd5,0xfd,0x6f,0x84,0xb3,0x8f,0x24,0x4f,0x7d,0xe5,0xe2,0xd4,0x7d,0x1c, + 0xaa,0x5a,0x74,0x20,0x77,0xb0,0x1b,0x77,0x1e,0xe5,0x46,0xb4,0x72,0x16,0xc7,0x60,0xb3,0x5c,0x19,0xc0,0x43,0xb8,0xbe,0x59, + 0xd6,0xe3,0xbd,0x12,0x33,0xeb,0xc1,0x7c,0x6c,0xc4,0x39,0x1c,0x91,0x74,0x15,0x81,0x4c,0xbd,0x46,0x2e,0x3b,0xf1,0xb2,0x49, + 0x46,0xf9,0xd9,0x2c,0xf5,0xd0,0x66,0xce,0xe0,0x72,0xdc,0x14,0xa8,0x23,0x71,0x96,0xff,0xf5,0xf5,0x72,0xae,0xd7,0x8f,0xfd, + 0x3a,0x5c,0xca,0x9c,0xc5,0xd6,0x39,0x19,0xb5,0x0d,0xd9,0xbb,0x89,0x6e,0x49,0x23,0xca,0xc0,0x5f,0xf6,0xa1,0x1c,0x9d,0x58, + 0xc3,0x11,0x08,0xe1,0x35,0x5c,0x80,0xbf,0xd2,0x0b,0x27,0x89,0x3e,0x5e,0x47,0x54,0x80,0xc7,0xdc,0xce,0xfd,0x7e,0xd2,0x87, + 0x6c,0x8e,0x52,0xc1,0xf8,0xf6,0xee,0x10,0xab,0x45,0x62,0xf5,0x12,0x3e,0xa8,0x5d,0xa9,0xd2,0xcc,0x91,0xd6,0xd3,0x49,0x72, + 0x04,0x3f,0xe4,0xcb,0x6f,0x32,0x10,0x8a,0x02,0xc5,0xdb,0x55,0xa9,0xf2,0xd1,0x37,0x4e,0xe9,0x56,0x35,0x92,0xa4,0x4e,0xc9, + 0x88,0xe9,0xb2,0x82,0x79,0x19,0xd6,0xe0,0xa5,0x66,0x6e,0xc6,0x73,0x81,0x96,0xd7,0x45,0xe5,0x41,0xa3,0xbe,0xed,0x94,0xa4, + 0xe3,0x82,0xf8,0xca,0xdb,0xf5,0x48,0x35,0xdd,0xa6,0x73,0xea,0x1b,0xfb,0xad,0x4d,0xd8,0xa9,0xae,0x3e,0x65,0x5a,0xe5,0xa4, + 0xae,0x74,0x22,0x90,0xa3,0xca,0xe1,0x2f,0x07,0x30,0x32,0x91,0x66,0x37,0x5a,0xcc,0x23,0x19,0x7a,0x17,0x8f,0x23,0x16,0x71, + 0xea,0x2e,0x3f,0x2e,0x45,0x8f,0x49,0x46,0x9b,0x55,0xc1,0x8a,0x82,0x27,0xe2,0x6c,0x9d,0x88,0xf3,0xf9,0xdc,0x42,0xfc,0xf4, + 0x68,0x03,0x14,0x1d,0x3c,0x42,0x34,0x37,0x83,0xc8,0x83,0x05,0x9f,0x7d,0x12,0x8b,0x2e,0xbc,0x45,0x65,0x5b,0x89,0x96,0x3b, + 0xa0,0xdf,0xf8,0xab,0x07,0x63,0x11,0x34,0x39,0x4b,0x27,0xba,0x2e,0x20,0xdc,0x7b,0x4e,0xfd,0xa4,0x5d,0x48,0x9f,0x34,0x66, + 0x4d,0x3a,0x87,0x98,0xe9,0xd9,0xe8,0x70,0x32,0xf4,0x23,0xf3,0x1b,0x9d,0x03,0x1c,0xa8,0x8f,0xa8,0x62,0x27,0x1b,0x49,0xd3, + 0x9b,0x79,0x54,0x8a,0xad,0xbb,0x7d,0xf9,0xd2,0x94,0x9d,0x78,0x65,0x6e,0x1f,0xaf,0xe4,0x6f,0xfe,0xb8,0xc6,0xfc,0x23,0xfa, + 0xea,0xc5,0x56,0xf2,0xcc,0x1d,0xb2,0x5b,0xad,0xc2,0x21,0x6c,0xc2,0x56,0xf9,0x43,0xb8,0x0e,0xe6,0x1a,0xae,0xc6,0x32,0xb9, + 0xb1,0xfd,0xca,0x60,0xd3,0xea,0x65,0xf5,0x78,0x6d,0x42,0x2d,0x2f,0xdc,0x20,0x6b,0xa5,0x98,0xcb,0x70,0xed,0x01,0x1c,0xc2, + 0x87,0x87,0xac,0x27,0xd7,0xc2,0x8d,0x40,0xd7,0x93,0xa3,0x56,0x20,0xda,0xa5,0x0e,0x2b,0xf9,0x97,0x0b,0xaa,0xb9,0xd1,0xf2, + 0x97,0x76,0x67,0x0d,0x46,0xbc,0x8b,0xb0,0xd5,0x3b,0x59,0x2f,0xc6,0xe7,0xbd,0x58,0x87,0xcb,0x5e,0x59,0xf8,0xa8,0x0e,0xa1, + 0xaa,0x80,0x03,0xd4,0x20,0xae,0xa9,0xe2,0x4e,0x27,0x17,0xa1,0x72,0x1a,0xff,0xaa,0x94,0x35,0xce,0x9f,0x2f,0x1a,0x7f,0x95, + 0x80,0x62,0xf6,0x93,0x07,0xeb,0xac,0x9d,0xd6,0x6e,0xd7,0x62,0xb5,0xf1,0xd7,0x55,0x7c,0x71,0x92,0x9b,0xf7,0xba,0xd6,0xca, + 0xdd,0x4b,0x10,0xcd,0x7f,0x3c,0x7e,0x85,0x9f,0x8e,0x77,0xe2,0x90,0xc2,0x67,0x10,0xee,0x34,0xc9,0x62,0xaf,0x28,0x09,0xe5, + 0xfb,0x42,0x75,0x8e,0x9c,0x55,0x8b,0xcd,0xa0,0xbe,0x37,0x57,0xe6,0x9e,0x32,0x4b,0x55,0x03,0xba,0x65,0x4c,0x1f,0x47,0x93, + 0x5d,0x8f,0x23,0xec,0xe6,0x02,0x0c,0xf1,0x08,0xd6,0xa9,0x95,0x3c,0xb5,0x9c,0x0f,0x23,0x1f,0xcd,0x48,0xe4,0x48,0x7b,0x19, + 0xef,0xc5,0x39,0xf3,0xab,0x07,0xd7,0xa1,0x97,0xf7,0xf2,0x5f,0xe8,0xea,0x6a,0xa2,0xd7,0xae,0x07,0x6d,0x9d,0x56,0x81,0x2e, + 0x15,0x67,0x56,0x98,0xa7,0x2b,0x26,0xf0,0x9b,0xe4,0xdd,0x4e,0x44,0xe9,0x5c,0x29,0x50,0xc1,0xd3,0x2f,0x4c,0x4a,0x99,0x3e, + 0xa8,0x8b,0x2c,0x37,0x9f,0x71,0xad,0xe1,0x31,0xfc,0xaa,0x56,0x9d,0xc3,0x18,0x6e,0x3f,0xa0,0x8a,0x91,0xa1,0x9f,0xad,0x43, + 0x12,0x86,0x9d,0xbf,0x6d,0x33,0x89,0x78,0x71,0xbe,0xcf,0x0c,0x7f,0x39,0x2c,0xcf,0x7c,0x55,0xcd,0x07,0xad,0xc7,0xb6,0xd8, + 0xc9,0xb2,0x41,0xa6,0xa8,0x4b,0x3c,0x60,0xdd,0x7f,0xca,0x7a,0xae,0xcc,0x9a,0x5f,0x61,0x6a,0x39,0x00,0x85,0x2a,0x91,0x63, + 0xb9,0x5e,0x4d,0x94,0x64,0x78,0xa3,0x9d,0x64,0x3e,0x3a,0x8d,0x33,0xea,0x81,0x7f,0xa4,0x62,0xb9,0xae,0x45,0xac,0x75,0xf3, + 0x00,0xe2,0x55,0xbf,0x55,0x0f,0x5f,0xeb,0xaa,0x2c,0xa7,0x12,0xc1,0xf6,0x2a,0x18,0x4a,0x38,0x46,0xf4,0xc8,0x95,0xa0,0x3e, + 0xac,0x56,0xf9,0x6a,0xa3,0xb4,0x59,0xc9,0x9c,0x69,0x27,0xa2,0x5a,0x17,0xb0,0xfa,0xcf,0x55,0xb3,0x37,0x1c,0x72,0xd1,0xcd, + 0xfd,0x44,0x7f,0x99,0x06,0x9a,0xb1,0x5a,0x4a,0xe4,0xd1,0x00,0xe7,0x9e,0x30,0x5e,0xc3,0x47,0xf4,0x17,0xe3,0x3c,0x7b,0x5c, + 0x05,0x4a,0x1b,0x0e,0x4b,0xb2,0xbd,0x9c,0x87,0xae,0x58,0x62,0x6b,0x3a,0xb1,0x9f,0xe8,0xa1,0x59,0xa0,0xe1,0x29,0xbf,0xa9, + 0xd0,0x5f,0x2d,0x9d,0xdc,0x8a,0x4c,0x6b,0x0b,0x6b,0xba,0x67,0x2f,0x91,0xfb,0x36,0xd0,0x39,0xfd,0x45,0xaa,0xf8,0x63,0xb7, + 0xfe,0xd1,0xc3,0x3f,0x5a,0x34,0xed,0x04,0xd1,0xec,0xd9,0xa0,0x8c,0xe9,0xb3,0x02,0xf8,0x3d,0x5f,0xaf,0x78,0xce,0xb1,0x28, + 0xd1,0x0e,0xe3,0x04,0xbd,0x1e,0x86,0xa2,0xca,0x89,0x5e,0x9e,0x03,0x4a,0xe0,0xf7,0x57,0x59,0x9f,0xf9,0xc2,0x97,0xd7,0xd9, + 0x3e,0xf0,0x0e,0x80,0x17,0x95,0x54,0x10,0xd5,0x4f,0x10,0x36,0xbb,0x4a,0x70,0x72,0xea,0x1f,0xc2,0x67,0x2c,0x93,0x36,0x3c, + 0x5c,0x76,0xed,0x38,0xc6,0x5c,0xa3,0xf0,0xb1,0xae,0xc9,0x70,0x12,0x91,0xe4,0x55,0xaf,0x34,0xe5,0x55,0x13,0xc5,0xce,0x06, + 0xe5,0xab,0xd7,0xb7,0xc9,0x9c,0x60,0x15,0x8a,0x66,0x99,0x37,0x99,0x4e,0xb6,0x10,0x85,0xde,0x01,0x6a,0x77,0x79,0xe0,0xe3, + 0x7a,0x37,0x03,0x61,0x32,0xae,0xee,0xed,0x71,0x0e,0xa3,0x47,0x2d,0xf4,0xd1,0xef,0x64,0x5b,0x0f,0x0e,0xcb,0x08,0x3a,0xbd, + 0xa6,0x1e,0x9d,0x52,0x2f,0xcb,0x5d,0x5e,0x9a,0x2e,0x34,0x12,0x35,0x4d,0x30,0xe5,0x22,0x4d,0x6d,0x9b,0x7e,0xe3,0x46,0xb9, + 0x24,0xc5,0xde,0x33,0x2d,0x9a,0xdb,0x4a,0x34,0x36,0x0b,0xd4,0xe4,0x3c,0xe0,0xa3,0x92,0xf5,0xc5,0x2b,0x66,0x47,0x4e,0x1a, + 0x44,0xc6,0xe4,0xbf,0x0c,0x9a,0x20,0xb1,0xe8,0x72,0x3b,0x51,0xec,0x84,0xd7,0x5e,0xb5,0x56,0x22,0xf0,0xe1,0x98,0x7d,0x5d, + 0x87,0xf7,0xa8,0x44,0x4e,0x3e,0x88,0x51,0xdb,0x0d,0x43,0xb9,0x6d,0x44,0xff,0xb8,0x13,0xd4,0xa7,0x9d,0xad,0xd2,0x8f,0xa3, + 0xd3,0xfe,0x59,0x88,0x22,0x1c,0xf0,0x7e,0x51,0x51,0x46,0x17,0xd1,0x92,0xdb,0x41,0x47,0xbc,0x3e,0x3b,0x6f,0x1e,0xab,0x97, + 0x7c,0x18,0xfa,0x5d,0x0f,0xd1,0x73,0xb3,0x40,0x87,0xf4,0xdd,0xb9,0x66,0x41,0xbb,0x13,0xce,0xf5,0xfa,0x67,0x14,0xc8,0xa3, + 0x8a,0x3e,0x73,0x81,0xe2,0x3b,0x2e,0x7b,0x12,0x55,0x8a,0xa4,0xc3,0xcd,0x7b,0x74,0x04,0x14,0x5d,0x3f,0x0d,0x34,0xbd,0xeb, + 0xb2,0xa7,0x8e,0xc7,0x30,0x79,0x08,0xbd,0x6c,0xff,0x17,0x15,0x51,0x65,0x40,0xd5,0xc9,0xbb,0x9e,0xe7,0x7d,0x67,0x7e,0x71, + 0x82,0x66,0x5d,0x63,0x7b,0xd7,0xed,0xee,0xee,0xee,0xee,0xee,0xee,0x2e,0xe2,0x80,0x41,0x87,0x09,0xd2,0x25,0x1d,0x0b,0x88, + 0x88,0x74,0x5e,0x8b,0x0e,0x0b,0x6c,0x25,0x04,0x51,0x4a,0x84,0xcb,0xff,0xe3,0xc4,0xd3,0xef,0x89,0xa0,0x5c,0x21,0xbe,0x1e, + 0x9f,0x99,0x3d,0xa2,0xcc,0x69,0xdb,0x00,0x12,0x91,0xcb,0x87,0x38,0x90,0x72,0x6d,0xa5,0x68,0xe7,0x64,0x3e,0xa6,0x0a,0x29, + 0x5d,0x5f,0x8a,0x31,0x7e,0xba,0x89,0x2a,0x65,0x82,0x74,0xf0,0x45,0x09,0x72,0xad,0xb9,0x45,0x8e,0xe8,0x1e,0x23,0xbc,0x8b, + 0x7a,0x54,0x0b,0xaa,0x34,0x7d,0xc8,0xda,0xcc,0x75,0xc6,0x25,0x25,0xdc,0x63,0x4d,0x38,0xbb,0x45,0x1b,0x5b,0x58,0x45,0x49, + 0xf3,0xcb,0xd0,0xeb,0x52,0xab,0x4d,0x9b,0xff,0x87,0x13,0x14,0x41,0x01,0x5c,0x88,0x30,0x7b,0x34,0xa2,0x55,0x33,0x37,0x5a, + 0x52,0x55,0x85,0xf2,0xc5,0x46,0xd3,0x8b,0xeb,0xec,0xbf,0x64,0xba,0xe6,0xb0,0xc3,0x38,0xc3,0x31,0xee,0x0d,0x18,0xb3,0x15, + 0x52,0x9d,0x67,0x27,0xb6,0x18,0x27,0xb0,0x56,0x5f,0x9c,0x7f,0x5e,0x2c,0x8f,0x9d,0xf5,0xa9,0x8f,0xdb,0x28,0x62,0xdc,0x67, + 0xb0,0x4d,0x9b,0xb4,0xcc,0x6a,0xf1,0x72,0x33,0x76,0xeb,0xde,0xb2,0x16,0x89,0xfa,0x8b,0xff,0xc9,0x02,0xd9,0x8c,0x54,0x4e, + 0x56,0x5f,0xf6,0x1b,0x69,0x88,0x72,0x3a,0xac,0x55,0x59,0x32,0xa8,0xcd,0xf4,0x88,0xd6,0x73,0xd1,0xc4,0xad,0x18,0x51,0xc5, + 0xe6,0x12,0x7b,0xbd,0x2a,0x31,0xeb,0xcd,0x62,0x63,0xbf,0x53,0x84,0xb6,0x97,0x82,0x91,0x8a,0x7d,0xd6,0x42,0x84,0x5b,0x32, + 0x59,0xc4,0x28,0x1f,0xbd,0x8b,0xf7,0xb8,0xae,0xa6,0x26,0x97,0x74,0x23,0xdd,0xf2,0x1f,0xef,0xd2,0x87,0x6c,0x1b,0x9d,0xd3, + 0xb5,0xbf,0xba,0xe4,0x90,0x3e,0xc4,0x2d,0x66,0x1b,0x8e,0x99,0x61,0x94,0x6e,0x9f,0x9f,0xc6,0xaf,0x6d,0xd0,0xdb,0xd4,0x30, + 0xab,0x7d,0x67,0x35,0x69,0x15,0x96,0x31,0x2d,0x12,0x3b,0x38,0x57,0x2f,0xe2,0x2d,0xd7,0x34,0xe9,0xc1,0x1e,0xd9,0x98,0xa6, + 0x1a,0xda,0xec,0x1c,0xac,0x22,0xdd,0xdf,0xce,0xd6,0xda,0x30,0x6c,0x5e,0x1c,0xed,0x7e,0x82,0x07,0x16,0x3c,0x9c,0x60,0xcf, + 0xc7,0x25,0xe2,0x7e,0x27,0x88,0x2b,0xee,0x9b,0x9d,0xf5,0x21,0x23,0x5b,0x06,0xd3,0x27,0x89,0x14,0xcb,0xf6,0xbb,0x7f,0x0c, + 0xa7,0x08,0x34,0xb1,0x4b,0x93,0x31,0x45,0x0d,0x74,0x7d,0x30,0x8e,0xa2,0x99,0x9a,0xb9,0x98,0x8b,0x30,0xca,0xd6,0x62,0x8a, + 0x47,0x0d,0xe7,0xd0,0x5a,0xd8,0x3d,0x82,0xb1,0x87,0xe6,0xff,0xf2,0xe9,0x20,0x8d,0x60,0x0d,0x9f,0xdb,0x49,0xd9,0x08,0xa0, + 0xf7,0x57,0xe9,0x27,0x50,0x4e,0xbb,0x69,0x3f,0x59,0x7e,0xf0,0x92,0x61,0x48,0xe3,0x34,0xf8,0xa3,0x0f,0x75,0xf8,0x2b,0x9f, + 0xdb,0x68,0x82,0x62,0x70,0xd1,0x37,0xfd,0x94,0x8a,0x12,0x5e,0x4e,0xb7,0x2a,0x91,0xe0,0x04,0xf1,0xf6,0x9c,0x89,0xdf,0x9d, + 0xbf,0x1c,0xa6,0x48,0xb6,0x67,0xa1,0x99,0xde,0x13,0x19,0x8b,0x20,0x5a,0x1f,0x13,0xc2,0x9f,0x4e,0xaa,0x07,0x97,0x52,0x18, + 0xf5,0xd1,0xbd,0xdb,0xe0,0xb6,0x81,0xf7,0xd0,0x95,0x41,0x9c,0x89,0xb3,0x36,0x92,0x1f,0x0d,0xc9,0x1a,0x8e,0xb4,0xc7,0x62, + 0x42,0x1b,0xc5,0x1f,0x4b,0xe0,0xe0,0x3d,0xa8,0xc3,0x28,0x5c,0x8f,0xe8,0x15,0x32,0x5e,0xfe,0xdd,0x2c,0x3d,0x3e,0x38,0x46, + 0x5d,0xd8,0x84,0xfd,0x64,0xdc,0x33,0x4c,0x5e,0x32,0x1c,0xfb,0xcd,0x27,0xc6,0x10,0x8f,0x7b,0x6b,0xd1,0xcd,0x2b,0x64,0x0f, + 0x95,0xe1,0xb5,0x65,0xbc,0x9b,0x07,0x55,0xa9,0x73,0xa5,0xb6,0x5f,0x52,0x2b,0x37,0xc0,0x4f,0x4f,0x51,0x11,0xf6,0x1e,0x5b, + 0x29,0xb7,0xc9,0x24,0xa4,0x50,0x15,0xe7,0xd0,0x52,0xa7,0x0a,0x19,0xa7,0x7a,0xb4,0x6b,0x73,0x91,0x41,0x19,0x54,0xc2,0x4e, + 0xcb,0xf4,0x71,0xea,0xd6,0xfe,0x43,0xad,0xb6,0x96,0xf7,0x52,0x28,0x95,0xf3,0x94,0xda,0xa1,0xf2,0x65,0xa9,0x71,0x86,0x03, + 0xb0,0x54,0xbe,0xbf,0x1d,0xeb,0xb0,0x19,0x19,0xb8,0xa4,0x10,0x91,0x78,0x7e,0x05,0xb2,0xe8,0x82,0x2b,0x7b,0x90,0x8c,0x27, + 0x4f,0x73,0x93,0x8c,0xa0,0xe5,0x66,0xaa,0xde,0x02,0xbd,0x47,0x45,0xc9,0x8d,0x2a,0x91,0xcf,0xcd,0x41,0x25,0xaa,0x78,0x51, + 0x2f,0xfe,0x6c,0xe6,0xc5,0xed,0x46,0x37,0x82,0x9c,0xde,0xed,0xc7,0x29,0xe4,0x98,0x45,0x7c,0x0a,0xbf,0x66,0xf1,0x2b,0xf5, + 0x74,0xbf,0x2f,0xa2,0x68,0xd4,0xf6,0x55,0xa9,0xf2,0xa5,0xc3,0x98,0xd3,0x96,0xa5,0x18,0x54,0x3e,0x18,0x41,0x29,0x3a,0xad, + 0x47,0x28,0x8f,0x8a,0x68,0x37,0x26,0x11,0x6b,0x2b,0x42,0x39,0x45,0xa3,0x40,0xfb,0xf7,0x38,0x47,0x52,0xb2,0xf9,0x44,0x84, + 0x6c,0xc0,0x1a,0x7a,0xfa,0xef,0x50,0x44,0x69,0xfe,0x50,0xc2,0x55,0x87,0x58,0xeb,0x0c,0x11,0x8f,0x2c,0xe4,0xf1,0x75,0x2d, + 0xd4,0x05,0x1f,0x7a,0x5d,0x13,0x7e,0xae,0x10,0x75,0x0c,0xb1,0x97,0xe6,0xf9,0xf2,0x4a,0xa4,0xd2,0x49,0x9a,0x36,0xbe,0xfe, + 0xd6,0x97,0x6f,0x11,0x85,0x06,0xc4,0xb6,0xcb,0x21,0xc2,0x3e,0x2a,0x74,0x9a,0x34,0xfb,0x79,0x54,0xfb,0xbd,0x82,0xb7,0xa2, + 0x51,0x5b,0x4f,0x6b,0x94,0x7b,0x18,0x42,0x68,0xbf,0x96,0x82,0x10,0x5e,0xc7,0x23,0xfa,0x82,0x14,0xc4,0xca,0x3e,0xaa,0x46, + 0xb5,0xe5,0x20,0x3c,0x8f,0xf2,0x29,0x6d,0x39,0xb6,0xf0,0x61,0xf2,0x33,0x6b,0x65,0x86,0x11,0x80,0x75,0xff,0xdb,0xcf,0xba, + 0x15,0x65,0x98,0xa1,0x51,0xad,0x82,0x7b,0xed,0x0e,0x3e,0x69,0x59,0xad,0x6f,0xb0,0xad,0x46,0xa1,0xfe,0x5b,0x2c,0x42,0x91, + 0xee,0x14,0xae,0xca,0xe8,0xbb,0x0c,0xe5,0x3e,0x4e,0x27,0x51,0xc3,0xcb,0x91,0x69,0x94,0xe3,0x80,0x4c,0xa2,0x7b,0x3b,0x30, + 0x66,0x75,0xf7,0xd7,0x1d,0x6a,0xc8,0xe6,0xc5,0xfe,0x6e,0x3e,0x74,0x88,0x7b,0x91,0x6d,0xb9,0x7e,0xa9,0x4c,0xe1,0x96,0x85, + 0xaf,0xa7,0xcd,0x5b,0x4b,0xab,0x3d,0xc2,0xf9,0x88,0xdc,0x46,0xd3,0xd6,0x03,0x34,0x64,0xcb,0x85,0xc3,0x1e,0x85,0x50,0xbd, + 0x9a,0x5f,0x0c,0xa2,0x32,0x6b,0xb9,0x8c,0xd5,0xde,0x96,0x02,0x12,0x22,0xd8,0x1d,0xc2,0xe5,0x79,0x6f,0x8a,0x93,0x27,0xb0, + 0x95,0x2d,0xa2,0xeb,0x84,0x10,0xd5,0x77,0x42,0x14,0xa3,0x80,0xbd,0x5d,0x02,0x78,0x99,0x6d,0x25,0x0e,0x9b,0x7f,0xb7,0xaa, + 0x68,0xea,0xd2,0x82,0xe5,0xb4,0xf5,0xde,0x22,0xd7,0x7c,0x8c,0x19,0x3f,0x2a,0xd1,0x3e,0x24,0xc4,0x2d,0x77,0x41,0x6c,0x75, + 0xf9,0x60,0x4a,0xcf,0xc7,0x16,0xfb,0xf9,0xe3,0xb2,0x80,0x94,0x48,0x9c,0x10,0xa2,0xf1,0x1e,0x88,0xb0,0xb3,0x03,0xb1,0xcf, + 0xf2,0x5c,0x8a,0xd3,0xbd,0x3f,0x47,0xc1,0x2a,0x82,0xc7,0x85,0xb8,0x6b,0x8e,0xf9,0xb0,0x5a,0x90,0xa7,0xad,0xa6,0x95,0xc6, + 0x01,0xa4,0x39,0xdf,0x93,0xc9,0xfb,0xa8,0x4b,0xbf,0x6a,0x42,0x6f,0xc4,0x0c,0x1a,0x69,0xc4,0xbe,0x97,0x32,0xdc,0xbe,0x56, + 0xe2,0x81,0xf9,0x10,0xf3,0x06,0x66,0x66,0xb3,0x54,0x28,0x45,0x52,0x0b,0xa7,0xc9,0x65,0x32,0x08,0x9d,0x50,0xa2,0xff,0x3c, + 0x88,0x6f,0xaf,0x9b,0x9d,0xdd,0xcf,0x6f,0x67,0x70,0x1c,0xaf,0x34,0xc3,0xc8,0x8f,0xae,0xd5,0xc5,0x55,0x0b,0x21,0xae,0xdd, + 0x3f,0x3b,0xfb,0xf7,0x8f,0xeb,0xd0,0x45,0x6b,0xf1,0xf8,0x65,0xe5,0x40,0x2f,0xbd,0x55,0x42,0x52,0x7c,0x79,0x0e,0xc4,0xd3, + 0xe7,0x0b,0xf1,0xaa,0xfa,0xee,0x93,0x79,0xef,0x4a,0xd1,0x78,0x2e,0x44,0xac,0x4d,0x88,0x7b,0x9f,0x7b,0x65,0xb1,0xe7,0xcf, + 0x52,0x5c,0x36,0xc7,0xf9,0xb0,0x8b,0x10,0x4f,0xdb,0xde,0x58,0x0b,0x6b,0x32,0xa4,0xe0,0xdb,0x20,0xde,0xbc,0x48,0x88,0x3b, + 0x56,0xa1,0x98,0x1c,0x34,0x83,0x2f,0xa5,0xf8,0xe0,0xb6,0x39,0xd4,0x25,0x42,0xfc,0xed,0xf9,0xee,0x01,0xec,0xc1,0x56,0x48, + 0xf1,0xd4,0x22,0x88,0xaa,0x2b,0x85,0x70,0x3e,0xfb,0x8a,0x0f,0xe6,0xff,0xfe,0x9e,0x38,0x4f,0x41,0xac,0xf6,0x84,0x58,0xc7, + 0x17,0x66,0xca,0x70,0xee,0x35,0x1d,0x94,0x6d,0x8d,0x91,0x49,0x2a,0x52,0xf5,0x6a,0x09,0x96,0x0a,0xb5,0x49,0xee,0x91,0x57, + 0xbd,0x1f,0x8b,0x8d,0x98,0x9f,0x7d,0xce,0x85,0x1d,0x6e,0xc9,0xfc,0x73,0xb1,0x3a,0x48,0x11,0x6a,0xab,0x9c,0x94,0xbb,0x55, + 0x2a,0xbd,0x5e,0x88,0x34,0xce,0xa0,0x01,0xbd,0x98,0xc6,0x30,0x4e,0xfa,0xa8,0xbe,0x95,0xfb,0xc9,0x41,0xd5,0xfa,0x85,0x47, + 0x65,0x1e,0x22,0xd4,0x47,0x23,0xd4,0xc1,0x05,0x54,0x61,0xdd,0xcb,0xaf,0x95,0x60,0x99,0xde,0x2d,0x1f,0x8a,0xe5,0x56,0x44, + 0x71,0x9e,0x7e,0x98,0xda,0xad,0x7e,0xe6,0x41,0x5a,0x82,0xdd,0xf2,0xaa,0x93,0x14,0xc1,0x9e,0x6b,0x10,0xc0,0x46,0xb3,0xb9, + 0x9d,0x32,0x54,0x0a,0x8e,0xc8,0x18,0xca,0xd1,0x7e,0xce,0xd0,0x36,0x53,0xb9,0xfd,0xfb,0x63,0x14,0xcf,0x69,0xb6,0xfd,0xd4, + 0xa4,0x7e,0x1e,0x73,0xbe,0x30,0xd0,0xda,0x8a,0x69,0x8e,0xc1,0x66,0x34,0x71,0xb8,0x6b,0x97,0xcc,0x94,0x81,0x54,0x24,0xeb, + 0xb4,0xa1,0x39,0xcf,0x37,0x1f,0x91,0xe5,0xaa,0x48,0x4d,0x51,0xa4,0xaa,0x32,0xf6,0x60,0xc0,0xe3,0x08,0x56,0xda,0xc6,0x75, + 0x8f,0x78,0x23,0x02,0xd5,0x94,0x69,0xc6,0xf3,0xb4,0xeb,0xe2,0x7e,0x8f,0x3a,0xfa,0xd4,0x4b,0xfa,0xd0,0xc0,0xdc,0xb7,0xe5, + 0xc8,0x51,0x4b,0x2d,0xfb,0xe7,0xaf,0x56,0xcb,0x4c,0xa3,0xc4,0x4c,0xa5,0x25,0xfa,0x57,0xbe,0xda,0x9d,0x61,0x9c,0x82,0x43, + 0xd8,0xc0,0x2b,0x54,0x95,0xbc,0xb8,0x02,0x13,0x7c,0x4c,0xf9,0x18,0x29,0xda,0x69,0xeb,0xb4,0xd9,0xae,0x37,0x70,0xa4,0x19, + 0xa7,0xed,0xf0,0xe8,0x92,0x35,0x18,0xc0,0x9d,0x9b,0x64,0xbc,0x0c,0x96,0x3d,0xea,0x85,0x7c,0xfe,0xb6,0x83,0x73,0x78,0xfe, + 0x38,0x32,0xa9,0x92,0x0a,0xd4,0x88,0x34,0x84,0x9b,0x07,0xc4,0x92,0x73,0x20,0x46,0xcc,0x1f,0x5f,0x77,0xa8,0x1a,0x35,0x84, + 0x68,0xf3,0xb1,0x48,0xcb,0x56,0x7e,0xac,0x1b,0xc7,0x9d,0xd6,0x41,0x17,0xc9,0x17,0x41,0xac,0x5f,0x04,0x51,0xae,0x6f,0xc1, + 0xc5,0x81,0x94,0xa0,0x2d,0x68,0x53,0xbf,0x16,0xf2,0xed,0x89,0x28,0x27,0x4d,0x0c,0x2f,0x9e,0xc3,0x9e,0x0b,0x51,0x4e,0xd7, + 0xd7,0x70,0x0f,0xd2,0xf5,0xc5,0xa9,0xdc,0x08,0x3f,0xc5,0x52,0xb4,0x5d,0x09,0x71,0x68,0xee,0xa9,0xd2,0xb2,0x16,0x3b,0xe8, + 0xbe,0x13,0x7a,0x37,0x94,0xe8,0xbe,0x1c,0xe2,0xa2,0x5b,0x21,0x26,0x3c,0xd6,0x53,0xbb,0x93,0xeb,0x5e,0x3d,0x13,0x9b,0x11, + 0x0a,0x5d,0xdc,0x7f,0x2d,0xc4,0x87,0x0b,0x20,0x46,0xad,0x37,0x8d,0xe9,0xc3,0x7c,0x48,0x39,0x90,0x64,0x44,0x21,0x13,0x41, + 0x28,0xb6,0x9e,0x21,0x4d,0x04,0xdd,0x02,0xe1,0x36,0xe7,0xa3,0xd3,0xbc,0xeb,0x38,0xd7,0x21,0xc5,0x38,0xc4,0x27,0xd4,0x6e, + 0x7a,0x76,0x19,0x6b,0x22,0xea,0x36,0x88,0x1d,0x77,0x42,0x94,0x3b,0x3d,0x3a,0x80,0x34,0xda,0xe6,0xe2,0xee,0x83,0x44,0x9c, + 0x96,0x97,0x4a,0xf1,0xfc,0xd3,0x10,0x5b,0x4e,0xcf,0xcc,0x7a,0xf3,0xf5,0xe7,0x0c,0x20,0x8e,0x4b,0xa0,0x8b,0x7b,0x9e,0x85, + 0xf8,0x75,0x6a,0x66,0xb6,0x93,0x6e,0xae,0x95,0xd3,0xb8,0xc4,0x9f,0x92,0xf4,0x4f,0x97,0xd2,0x20,0x0e,0xe3,0x67,0x4d,0x38, + 0xbd,0x00,0x71,0xfd,0x1c,0x62,0x0d,0x5f,0xde,0x8c,0x6f,0xaa,0xe4,0x5b,0xfe,0x74,0xf7,0x4e,0xbc,0x7f,0x81,0xf8,0xe6,0x36, + 0x88,0x97,0x17,0x0b,0x11,0x23,0x2f,0x88,0xd4,0x77,0x6a,0x15,0xbc,0x42,0x4b,0xc0,0x93,0x03,0xb4,0x4e,0xde,0x51,0x4c,0x49, + 0xb4,0x02,0x1f,0x14,0xca,0x43,0xbc,0x53,0x25,0xf0,0x4e,0x7d,0xbe,0x9f,0x56,0x82,0x32,0xe9,0x47,0x93,0xb4,0x42,0x95,0x70, + 0x80,0x59,0xc9,0xf5,0x7c,0x67,0x23,0xff,0xd1,0x49,0x31,0xd4,0xc9,0x0d,0x96,0x44,0x0a,0xf7,0x7c,0xa2,0x17,0x0f,0xa4,0xca, + 0xcd,0x54,0x63,0x99,0x1f,0xc3,0x1d,0x34,0x24,0x17,0xf6,0xaa,0x1d,0xdc,0x87,0x5d,0x38,0xbf,0x95,0x1c,0x94,0xca,0xcf,0x14, + 0x63,0x03,0x6e,0x0b,0xc6,0x7b,0xe2,0x9f,0xd7,0x21,0xbe,0x79,0x49,0x88,0x52,0x8a,0xa3,0x07,0x43,0x68,0x09,0x2d,0xf2,0xc6, + 0x4f,0x2b,0x69,0x5a,0x8b,0xe0,0x69,0x7c,0xde,0x85,0x2b,0x06,0xb1,0x9c,0x97,0x51,0x32,0x37,0xcb,0x28,0xd9,0x4e,0xde,0x66, + 0x1e,0xf5,0x71,0x88,0x3c,0x84,0x3c,0xa3,0x92,0xfd,0xb4,0x53,0xbc,0x86,0x46,0xd1,0x38,0x87,0x7b,0xcb,0x1f,0xde,0x28,0x47, + 0x31,0xbc,0x2d,0x2b,0x38,0x0a,0xc6,0x3f,0xdf,0x7d,0x1b,0x4c,0x67,0xd8,0x97,0x96,0xa0,0x96,0xa6,0x29,0x0d,0xc1,0xf8,0xb4, + 0xcc,0xd2,0xaf,0x17,0x5a,0x66,0x6d,0xbe,0x7a,0x19,0x87,0xe8,0x6b,0xf4,0x00,0xbb,0xb7,0x11,0x85,0x72,0x8a,0x46,0x1e,0x35, + 0xa2,0x8c,0xfb,0xf4,0xad,0x5c,0xac,0xbb,0x1c,0x94,0x7e,0x73,0x32,0x2e,0xaf,0x36,0x21,0x88,0x6e,0xab,0x56,0xc7,0x69,0x2f, + 0x4f,0x9a,0xd3,0x48,0x35,0xfd,0x10,0x21,0xfd,0x39,0xcb,0x9a,0x45,0x4d,0x5c,0x8a,0x4e,0xe4,0xca,0xa3,0xdc,0x87,0x32,0xcb, + 0x41,0x35,0x69,0xd9,0x8e,0x52,0xed,0x99,0x59,0xd4,0x23,0x80,0xda,0x70,0xd3,0x47,0x51,0xe4,0xd9,0x6a,0xdf,0x2f,0x9d,0xf2, + 0x38,0x0c,0xdf,0x97,0xf2,0x69,0xb9,0x5e,0xbf,0xbc,0x0f,0x4d,0x38,0x8e,0x19,0x7e,0x37,0x94,0x4a,0xb0,0x5b,0x5b,0x8b,0xdd, + 0x46,0x3d,0x35,0x72,0x06,0x2f,0xa1,0x51,0xbd,0xd4,0x38,0x28,0xf3,0xd8,0x1f,0xed,0xdc,0x41,0xde,0xc6,0x4a,0xb3,0x9e,0x9b, + 0x8c,0x64,0x14,0xe9,0x4d,0xa8,0xc7,0x03,0x65,0x32,0x05,0x7a,0x1f,0x1c,0x5a,0x06,0x35,0x50,0x8e,0x3e,0xe1,0x1e,0xc4,0xe9, + 0x2a,0x44,0xd5,0xa9,0x53,0x3c,0xa6,0x1f,0x36,0x22,0xcf,0xed,0xd3,0x96,0x9a,0xa9,0xe4,0x50,0xfe,0x24,0xca,0xa9,0x97,0xfe, + 0xc8,0x44,0x1e,0x7d,0x94,0xa1,0xf6,0x58,0xfb,0x29,0xd2,0x2d,0x4f,0x4e,0x39,0xbf,0x27,0x7c,0x17,0x43,0x5c,0x3b,0x1f,0x62, + 0x04,0xd7,0xde,0x9c,0x48,0x5e,0xb2,0x94,0x1e,0x1c,0xc1,0x24,0x6d,0xc7,0x67,0x39,0x48,0xd2,0x56,0xa1,0xd7,0xf9,0xdf,0x31, + 0x8a,0x80,0x03,0x5f,0xa4,0x98,0xf3,0x8b,0xac,0x3b,0x79,0xc0,0x72,0xd9,0x72,0x7c,0xb6,0x5d,0xdd,0xd8,0xcc,0x1f,0x64,0xc8, + 0x7d,0xdc,0x27,0x7f,0x6a,0xd7,0xe6,0xe5,0xb8,0xf4,0xf2,0x08,0x5e,0xc9,0x91,0x63,0x32,0x50,0xab,0x80,0x8f,0x7e,0xcb,0x0e, + 0xcb,0x19,0x9a,0x30,0x7d,0xf0,0xc6,0x1b,0x39,0xbc,0x9a,0x4a,0xcc,0xf3,0xff,0x48,0x43,0xaf,0x1e,0x4e,0xfe,0x86,0x03,0x1d, + 0x4e,0x0b,0xd3,0x8c,0x52,0xda,0x61,0x0b,0xa0,0x4d,0x18,0xc4,0x16,0xdb,0x69,0x0e,0x75,0x7d,0x6f,0xa3,0x7a,0x79,0x06,0x9f, + 0x7b,0xcf,0xe5,0x8d,0x9a,0xc3,0xa6,0x22,0x40,0x56,0xe1,0x0c,0x75,0x53,0x3c,0xff,0x14,0xc1,0x4f,0xa4,0x51,0xb4,0xfa,0x4f, + 0xa5,0x4b,0x1f,0xac,0xa5,0x5f,0x2f,0x1b,0x95,0xc5,0xaa,0x5d,0xed,0xa1,0x3e,0x54,0xf0,0xbc,0x4f,0xbc,0xf0,0xe3,0x30,0xb6, + 0x69,0x4b,0x51,0x47,0xe1,0x58,0x0d,0x2f,0x2a,0xa1,0x0d,0xdc,0xa9,0x25,0xa9,0x18,0x6d,0x58,0x3b,0x6f,0x35,0x45,0xa9,0x19, + 0x6a,0x37,0x3e,0x0a,0x50,0x29,0x54,0xc9,0x3e,0x5c,0xef,0x3c,0x85,0x75,0xb2,0x06,0xed,0x54,0xc1,0x27,0xa9,0x87,0xd7,0xcf, + 0x61,0x06,0xf9,0x8f,0xf5,0x48,0xa0,0x9b,0xa7,0x11,0xc8,0xc7,0x30,0x7f,0x13,0x92,0xdc,0x8b,0xe0,0xb5,0xd0,0xa5,0xc5,0xad, + 0x02,0x31,0xfa,0xf3,0x43,0xbc,0xa0,0x8e,0xb2,0xe1,0xf0,0xf0,0x41,0x28,0xfd,0xbd,0xd5,0xa9,0x9f,0xbb,0xe5,0x2a,0xba,0x61, + 0x37,0x8a,0xec,0xc5,0xec,0x6b,0xed,0xe5,0xdf,0x5f,0xb9,0xc3,0x81,0x63,0xda,0x3e,0xec,0xb0,0xbe,0xe5,0xaf,0x2f,0x65,0x8b, + 0x98,0xbe,0x0f,0x22,0x6a,0x31,0x84,0x37,0x77,0x52,0x3f,0x02,0x11,0xc5,0xb7,0x16,0x50,0x0c,0x52,0x38,0x05,0xd9,0xfc,0xfc, + 0xc2,0x5c,0x4c,0xf1,0xc5,0xb6,0x4a,0x28,0x71,0xd6,0x83,0x10,0x5f,0x5e,0x00,0x51,0x89,0x87,0x8b,0xe5,0x4a,0x2c,0xe7,0xbb, + 0x86,0x29,0x00,0x52,0xbc,0xfd,0x08,0xc4,0x6b,0x73,0xf7,0x85,0xd6,0xcb,0x56,0xab,0xdf,0x62,0xb4,0x58,0xfc,0x3f,0x1d,0xd4, + 0x05,0x54,0x5c,0xc7,0xdb,0x06,0xf0,0xf7,0x79,0x67,0xe6,0xde,0x5d,0x20,0x10,0x77,0xaf,0x0b,0x4d,0xdd,0xdd,0xdb,0x68,0x2d, + 0x5a,0x23,0x6e,0xa4,0x4a,0xaa,0x34,0x2c,0x1e,0x36,0x04,0xb7,0x40,0xa0,0x51,0xe4,0xbf,0xb8,0xbb,0xc6,0x05,0x22,0x48,0x1b, + 0x43,0xe3,0xae,0x25,0x04,0xf6,0xbb,0xe7,0x3b,0x73,0xf4,0xf7,0x8c,0x9b,0xa2,0x61,0x93,0x41,0xc7,0x26,0x82,0xdc,0x3c,0x2c, + 0x6a,0xe5,0x6e,0xfd,0xcf,0x0e,0xfc,0xa0,0xc8,0xf3,0x53,0x50,0xd7,0xfd,0xa0,0x44,0x4d,0x76,0x23,0x93,0x0b,0x1d,0xfe,0x8a, + 0xd4,0x32,0xa0,0x28,0xed,0x2b,0x90,0x9f,0x2b,0xe8,0x8c,0x9a,0x12,0xcb,0x91,0x48,0x50,0x83,0xf7,0xe1,0x06,0x34,0x2a,0x5e, + 0x06,0xba,0xda,0xd7,0x67,0x8f,0x91,0x9c,0x0a,0x7f,0x5c,0x15,0x53,0x0e,0xf3,0x4f,0x6b,0xbe,0xd1,0x69,0xd1,0x6f,0x20,0x27, + 0x23,0xe8,0x93,0x8f,0xc9,0x8d,0x9c,0x6f,0x9a,0x94,0x89,0x69,0x45,0x38,0x0a,0x9b,0x98,0xad,0x68,0xac,0x37,0x68,0xee,0xbd, + 0x3e,0x7b,0x2f,0x4f,0xf4,0x58,0x87,0x3a,0x35,0xb9,0x1e,0x6e,0x26,0x8a,0xf7,0x02,0x5d,0xee,0xb5,0xdb,0x3d,0xbe,0xca,0xc5, + 0xdc,0xf3,0xe8,0x94,0xf5,0xa8,0x11,0x45,0x98,0xe0,0xcd,0xa7,0x44,0x2a,0x92,0xa4,0x23,0x7d,0xe9,0x03,0x72,0xee,0xb6,0xdb, + 0x0b,0x61,0x3e,0x23,0xfe,0xe5,0x5a,0x51,0xa4,0x45,0x62,0xa7,0xf0,0x16,0xab,0xbc,0x30,0x79,0x9d,0xa8,0xd7,0x43,0xf9,0x06, + 0x9b,0x8e,0xa1,0x11,0xd3,0x35,0x12,0xfe,0xa0,0x7f,0x6e,0xdb,0xed,0xcd,0x22,0x0d,0x56,0x54,0xe1,0xfd,0x50,0xee,0xc4,0x47, + 0x25,0x9c,0x29,0x25,0xfd,0xbc,0x1c,0x94,0x7d,0x1f,0x51,0x30,0x5e,0x9c,0x9b,0x88,0x67,0x1b,0xa1,0xa8,0x71,0x05,0xe8,0xe5, + 0xf1,0x44,0xaf,0x4e,0x6e,0xc4,0x5f,0x6f,0x47,0x62,0xf6,0x0e,0x03,0x85,0x3b,0x68,0xe7,0x58,0xa2,0x78,0xe0,0x35,0x5f,0xfe, + 0x74,0x68,0x20,0x62,0x58,0x92,0x9b,0xa1,0xbf,0x8d,0x23,0xf2,0x78,0x6b,0x7c,0xb8,0x98,0x59,0xcf,0x8a,0x1e,0x5c,0x05,0x2a, + 0x1b,0x4d,0x54,0x89,0x52,0x7c,0xf2,0x63,0x05,0x8a,0xf0,0xb9,0xbb,0x4e,0x35,0x86,0x66,0x8e,0x24,0xfa,0x6d,0x0b,0x1a,0x39, + 0x5a,0x3e,0xdb,0xc0,0x91,0xbc,0xbc,0x05,0x21,0x72,0x7a,0x3c,0x2b,0xf2,0xfe,0x19,0x94,0x37,0x94,0x68,0x23,0x46,0x58,0x50, + 0x80,0x0d,0x3c,0x42,0xb3,0x40,0x50,0xb0,0x07,0xe8,0xdc,0x10,0xa2,0xab,0xfa,0x2d,0xd9,0xa0,0x2c,0x30,0x53,0xc3,0xaf,0xa0, + 0x17,0xcd,0x44,0xb7,0x30,0xbc,0x57,0x56,0x89,0x54,0xf1,0x6b,0x21,0x8e,0x72,0x0e,0xf2,0x8c,0xf2,0x5c,0xb8,0xe9,0x82,0xfa, + 0x3a,0x9f,0x9d,0x68,0xef,0x9f,0xa0,0x62,0x45,0xe4,0xab,0x37,0xea,0xdf,0xe5,0xaa,0xef,0xd6,0x84,0xf0,0x9b,0x49,0x38,0x2e, + 0x82,0x45,0x3b,0x9a,0xd1,0x2a,0x72,0xc5,0x71,0xb1,0x97,0xd1,0x8a,0xb3,0xb8,0x87,0x28,0x48,0x7a,0xde,0x68,0x30,0xda,0x44, + 0x54,0x2b,0x36,0xf0,0x65,0x1e,0x37,0xb3,0x1b,0x8a,0x02,0xd6,0x80,0x0e,0x3c,0x48,0x64,0x81,0xfb,0xe3,0x35,0xc8,0xe2,0x58, + 0xfc,0x83,0x0b,0x90,0x24,0xbd,0x40,0xf3,0x8c,0xfd,0xfa,0x61,0xd0,0xc2,0x3a,0x38,0x67,0x42,0xa7,0x65,0x86,0x9c,0x1c,0x4b, + 0x34,0x24,0x02,0xfb,0xb0,0xe4,0x1d,0x1b,0xff,0xda,0x2a,0xda,0x91,0x84,0x67,0xae,0xb0,0xa4,0xf1,0x16,0x50,0x9f,0x11,0x7a, + 0x9e,0xe4,0x68,0x2c,0x19,0x76,0x0b,0x8a,0x34,0x1f,0x50,0xca,0x18,0xa2,0x67,0xaf,0xc1,0x07,0x1b,0xe0,0x9c,0x83,0xb7,0xe7, + 0x28,0x9a,0xee,0x07,0xfa,0x7d,0x04,0xd1,0x77,0xd1,0xf8,0xfa,0x3c,0xbe,0xde,0xc8,0x93,0xdd,0x14,0x99,0xfc,0x41,0x6f,0x1b, + 0xb8,0x1e,0x8d,0x38,0xc1,0x95,0xa8,0x45,0x01,0x47,0x8a,0x6f,0xbf,0xa5,0x41,0xab,0x41,0x8f,0xbc,0x41,0x94,0x0c,0x3b,0x57, + 0xcb,0x1e,0x91,0x8d,0xb7,0xbf,0xb4,0xa9,0x23,0x9c,0x24,0x8f,0x08,0x97,0x05,0xff,0xaa,0x72,0x24,0x8b,0x10,0xf6,0xc3,0xa7, + 0x55,0xe6,0xc9,0xa7,0xb8,0x5c,0x74,0x18,0x8b,0x8e,0x37,0x3a,0xd6,0xf7,0xca,0x2c,0xa7,0xa7,0x03,0x65,0x29,0x5f,0x37,0x07, + 0xc8,0xad,0xa6,0x68,0x0c,0x3c,0xc5,0x59,0xfc,0x54,0xa4,0x56,0x8f,0x38,0x1e,0x76,0x41,0x54,0x8a,0x3e,0xa3,0xa9,0x4d,0xd9, + 0xf0,0xe6,0x45,0xb1,0x83,0xc3,0xb9,0x00,0x1f,0xb6,0xc2,0x47,0x4b,0x54,0x15,0x08,0xe5,0x6e,0x88,0x66,0xf6,0xe2,0x4a,0x7e, + 0xb3,0x18,0x2f,0x7d,0xbe,0x91,0xad,0x98,0xde,0x8b,0x1c,0x51,0x86,0xa3,0xd8,0x04,0xd3,0x52,0x6f,0xf1,0xc6,0x8b,0xd9,0xdc, + 0x23,0x56,0x3c,0xfb,0xd1,0xdb,0xbb,0xe1,0xcd,0xf9,0x5c,0x21,0x46,0x44,0xc9,0x72,0xed,0xb8,0x7e,0x47,0x78,0x6b,0xdf,0xdc, + 0xd3,0x2f,0x71,0x95,0x69,0xca,0x75,0xf8,0x60,0x59,0xb7,0x8c,0x35,0x87,0xc8,0x2e,0x11,0x2f,0xe7,0xd4,0xca,0x16,0x6d,0xc9, + 0x45,0xd3,0x37,0x87,0xb8,0x5c,0xbe,0xeb,0xab,0x7a,0xd8,0x14,0xc0,0x16,0x4e,0x82,0x0d,0xa9,0x9c,0x0b,0xd7,0xe7,0x7c,0xf8, + 0x3c,0x5b,0x35,0x8b,0x96,0x6c,0xaa,0xe4,0x1f,0xa3,0x39,0x41,0xda,0x85,0x95,0x3f,0x28,0xc1,0x24,0x2f,0x51,0x80,0x32,0x3e, + 0x80,0x78,0x58,0x91,0xaa,0x75,0x89,0x4c,0xf1,0x3f,0xdc,0xd5,0xef,0x3f,0xa2,0xb6,0xb1,0x45,0x5c,0x01,0xc7,0x70,0x06,0x7f, + 0x51,0x24,0x5c,0x0b,0x79,0x23,0xf8,0x20,0x0a,0xe5,0x26,0x86,0x5b,0x11,0xda,0x50,0xcd,0x2b,0xd2,0x78,0xfe,0xdf,0xb2,0x16, + 0xe7,0xf1,0x43,0xbc,0x1e,0xc5,0xf3,0x34,0x9a,0xb5,0x0c,0xf4,0xca,0x23,0x44,0x6b,0xd9,0x65,0x42,0xac,0x28,0xe1,0xad,0xec, + 0x05,0x8b,0x08,0x46,0x2a,0x0f,0xa1,0x67,0x96,0x83,0xfa,0xbb,0x12,0xb9,0x6b,0x56,0x4e,0x50,0x09,0xdc,0x27,0x5b,0xf1,0xee, + 0x5a,0xf8,0xb3,0xbc,0xca,0xa1,0xdc,0xee,0x14,0x08,0x2f,0x0e,0xe7,0xd5,0x63,0x93,0xf8,0x37,0x0b,0x16,0x76,0xe0,0x0c,0x67, + 0xca,0x44,0x14,0xe2,0xe9,0x4b,0xb2,0x07,0x07,0x30,0x36,0x49,0xf8,0x71,0xa3,0x58,0x78,0x01,0x51,0xd8,0xa6,0x24,0x0d,0x31, + 0xba,0xf3,0x78,0x9c,0xa8,0x1a,0x0e,0xb3,0x6f,0x63,0xb9,0x1d,0x92,0x9e,0x30,0xe8,0xad,0xa7,0x89,0xde,0xb0,0xe0,0xe9,0x3a, + 0x76,0xae,0x36,0xe8,0xd3,0x15,0xa0,0xa3,0x53,0x89,0x46,0x96,0xa3,0x19,0xde,0xb2,0x02,0xb5,0x2c,0x69,0x8e,0x81,0x6a,0x12, + 0xd1,0xdc,0x08,0x6e,0xc4,0x41,0xfc,0xf9,0xbe,0xa4,0x67,0xdd,0x41,0xf9,0x46,0xbd,0x47,0x23,0x78,0x17,0xfc,0x45,0x22,0x7e, + 0x90,0xd4,0x63,0xd8,0xbd,0x0f,0x89,0xa2,0xc4,0x55,0xf6,0x96,0x62,0xc5,0x05,0xd6,0x68,0xd0,0x2a,0xd0,0xe2,0x29,0x44,0x07, + 0x85,0x85,0x67,0x55,0x63,0x0b,0x3b,0x9e,0xc2,0x61,0x5e,0x8f,0xbf,0x34,0xea,0xf7,0x03,0xe8,0xe3,0xd7,0x89,0x2c,0xa8,0xc5, + 0xa4,0xad,0x9c,0x26,0x52,0xc4,0x7b,0xb7,0x38,0x1b,0x61,0x90,0xf4,0xc5,0x8f,0xa0,0x7d,0xaf,0x11,0x85,0xc0,0x54,0x81,0xe3, + 0x70,0xed,0x80,0x46,0x0f,0x79,0x82,0x3c,0xdf,0x20,0x2a,0xc7,0xf2,0x21,0x05,0x1c,0x8e,0xd9,0x3f,0x47,0xe1,0xa9,0x36,0x96, + 0x34,0x70,0x8d,0x31,0xc6,0x93,0x44,0x6b,0x4e,0xc0,0xd3,0x1f,0x7d,0x98,0xad,0x68,0x94,0x41,0x36,0x57,0xa2,0x81,0xee,0x9e, + 0xab,0x87,0xec,0x66,0x6f,0xd4,0xb3,0xa2,0x39,0x06,0xae,0x9e,0x44,0xb4,0x0b,0x5b,0xf1,0xee,0xaf,0x8b,0x47,0x8c,0xb5,0xb0, + 0x46,0x9b,0x0d,0xdc,0xf3,0x28,0xd1,0xef,0xa9,0xe2,0x0c,0xca,0x38,0x0a,0x43,0x32,0x50,0x82,0x99,0xcf,0x49,0xca,0x30,0x92, + 0xa6,0xc7,0x89,0x1e,0xc9,0xc1,0x4e,0x64,0x89,0x78,0xb4,0x49,0x49,0x8e,0x5e,0xa0,0xc7,0x9e,0x21,0x72,0xdc,0xc5,0xb3,0xa2, + 0xe5,0xc2,0x03,0xd0,0x68,0x95,0x41,0xcf,0x3f,0x45,0xb4,0xf2,0xb9,0x01,0xd5,0xd8,0xc4,0x11,0x2c,0x6c,0x6a,0x3f,0x92,0x8c, + 0xe4,0xae,0x91,0xb4,0xb9,0x12,0x3d,0x13,0x2f,0x8a,0xf1,0xa2,0x47,0x8d,0x48,0xe1,0x91,0xaf,0xfe,0xa2,0xe8,0xa8,0xe1,0x96, + 0x27,0x88,0x3e,0x73,0x74,0xb9,0xce,0x7f,0x73,0x2f,0x4a,0xb1,0x44,0xd2,0x65,0x43,0x0f,0x1b,0x33,0xb1,0xe0,0xfe,0x85,0x4d, + 0x18,0xdb,0x0d,0x33,0x6d,0x98,0x0f,0xfa,0x68,0x26,0x51,0xb0,0x9c,0xb4,0x97,0xd7,0xc9,0xd7,0x6c,0x22,0x19,0x1b,0xf0,0x47, + 0x8e,0x28,0xc1,0xcb,0x7f,0xcb,0x5b,0x2a,0x17,0x31,0x9a,0xa2,0x81,0x46,0xad,0xdc,0x39,0x44,0xf7,0x7f,0x71,0x07,0x15,0x98, + 0xfd,0xf0,0x9f,0x21,0x50,0xe4,0xb2,0x10,0x94,0x64,0x34,0x3d,0x02,0x2b,0xde,0xad,0xd0,0x76,0xe2,0x1f,0xf1,0x5c,0xb3,0xe1, + 0xdb,0x16,0x81,0x56,0xcd,0x22,0xca,0x85,0xfe,0x5d,0x1d,0xe6,0x6e,0xe0,0xbd,0x68,0x14,0x92,0xda,0x17,0x83,0x3e,0xfc,0x82, + 0xe8,0x83,0x2d,0x18,0xd9,0xce,0x4f,0x94,0x43,0x91,0xeb,0x12,0x90,0xfc,0xdc,0xa8,0x89,0xa7,0x45,0x2b,0x2f,0x1e,0xfd,0x69, + 0xba,0x30,0xfe,0x80,0x99,0xa0,0xcf,0xc6,0x83,0x0e,0xa9,0x40,0xf4,0x9a,0xff,0x55,0x37,0x4c,0xa1,0xb8,0xc8,0x4d,0x48,0x13, + 0xcf,0x5f,0xd4,0xbb,0x11,0xab,0xa6,0xed,0x72,0x2a,0x11,0xb7,0xcc,0xbf,0xe6,0xa1,0x02,0x9d,0x3c,0x2c,0x81,0xb3,0xe0,0xab, + 0x5b,0x39,0x45,0x7c,0xd8,0x62,0xaa,0x10,0xf3,0x43,0xb1,0xc9,0xb4,0xca,0x1f,0xfb,0x91,0xe3,0x30,0x7d,0x7f,0xff,0x93,0xc2, + 0xdb,0xbc,0x17,0x25,0x72,0x58,0x82,0x39,0x88,0x13,0x06,0xaf,0x3e,0xae,0x22,0x71,0x71,0xe2,0x5d,0xde,0x8c,0x2f,0xad,0x66, + 0x55,0xcf,0xee,0xbb,0xc4,0xcf,0x95,0xd2,0xed,0xb5,0x20,0xb4,0xa3,0x0a,0x41,0xec,0x96,0xc7,0xe1,0x08,0xd2,0xe6,0xac,0xd3, + 0xd7,0x21,0x4d,0x1b,0x17,0x84,0xd9,0x4d,0x2e,0x63,0x5a,0x75,0xf7,0x7d,0x5a,0x0f,0x9f,0x75,0xae,0x43,0x3d,0x76,0xc0,0xd6, + 0x2f,0x81,0x53,0x78,0x59,0x13,0xd7,0xa1,0xca,0x65,0x2f,0x07,0x39,0x5b,0x39,0x51,0x24,0xa1,0x9e,0xdb,0xb8,0x92,0xdd,0x76, + 0x42,0xbf,0x28,0xfd,0xf9,0x99,0x04,0x71,0xcb,0x25,0x47,0x5d,0x1c,0x37,0xbb,0xd3,0xf1,0x7f,0xb0,0xe1,0xcb,0x33,0x8e,0xa1, + 0x68,0xe2,0xed,0xdc,0xc5,0x97,0xb1,0x0e,0x07,0x39,0x65,0xc4,0x7a,0xd3,0xdd,0x21,0x25,0xa2,0x62,0x64,0x9c,0x28,0x53,0x56, + 0xde,0xe1,0x90,0xcd,0xe5,0x03,0x43,0x78,0xf7,0x50,0xf8,0x62,0x17,0x8e,0x43,0xf9,0xab,0xaf,0x4b,0x9c,0x86,0x34,0xe8,0x8d, + 0x48,0x77,0xaa,0x55,0x3d,0x62,0xfc,0xcb,0x71,0x28,0x1a,0x3c,0xf8,0x2c,0x7f,0x7b,0x0f,0x29,0x9c,0xc7,0x0f,0x9f,0x77,0x1d, + 0x53,0xe1,0x70,0x09,0x67,0xe5,0x1d,0xa4,0xf3,0x2e,0xd4,0xa9,0x55,0xfe,0x6a,0x51,0x27,0xf7,0x88,0x78,0x8e,0xc1,0x71,0xfd, + 0x3a,0x6a,0xd9,0x1b,0x25,0x72,0xf8,0x4e,0x59,0xaf,0xf6,0xca,0x97,0x75,0x72,0x5c,0x0e,0x7a,0xef,0x05,0xd0,0x26,0x13,0x45, + 0x38,0xd9,0x78,0x1b,0x07,0x8a,0x56,0xe7,0xd1,0x65,0x23,0x62,0xb8,0x72,0x40,0xa1,0x18,0x49,0x56,0x4f,0xd0,0xd8,0x97,0x40, + 0x19,0x2a,0x98,0x8f,0x29,0xab,0x2c,0xd1,0x62,0xb9,0x4a,0x4e,0x38,0x2d,0x1a,0xf8,0xb6,0xc3,0x07,0xf7,0x1c,0x4f,0x88,0x3b, + 0xca,0xaa,0x27,0xf1,0xbc,0x13,0xfa,0xf8,0x20,0xa7,0xb5,0xa2,0x13,0xc1,0x7c,0x48,0xef,0xc5,0xda,0xfe,0xf3,0x32,0xfb,0x4d, + 0x6b,0x74,0x2c,0xe3,0x33,0x2e,0xe3,0xc3,0x64,0x0d,0x7a,0xf5,0x39,0xd5,0x4e,0x25,0xea,0xce,0x80,0x12,0xfc,0x37,0x26,0xcf, + 0xbc,0x5f,0xfa,0x20,0x47,0x44,0xc3,0x7b,0xe2,0x52,0x45,0x63,0x7e,0x05,0x75,0x3c,0x0e,0x3a,0xa6,0x2d,0x09,0x33,0xcf,0x3e, + 0x3a,0xe8,0x36,0x77,0x89,0x2e,0xd6,0x69,0xf0,0x6f,0xa0,0xdb,0x8f,0x80,0x0e,0x88,0x42,0x2e,0x75,0x29,0x41,0x10,0x22,0x61, + 0x13,0x53,0xbd,0xc4,0xec,0xa3,0x8e,0xe3,0x24,0xcd,0xfc,0x1d,0x94,0x6c,0xc4,0x4f,0x16,0xf1,0x49,0x5e,0x12,0x2c,0xea,0x21, + 0xe9,0x59,0x4f,0xd0,0x0b,0x8f,0x81,0x2e,0x88,0x57,0x67,0x24,0x20,0x41,0x34,0x43,0xa7,0xcc,0x45,0xa0,0x5b,0xaf,0x82,0x32, + 0x55,0x1c,0xca,0x07,0xcd,0x8f,0xc2,0xcf,0x87,0x79,0x66,0x62,0xff,0x31,0x91,0xfa,0x4f,0x83,0xc9,0xc5,0x18,0x23,0xcf,0x08, + 0x77,0x8b,0x0b,0x28,0x18,0xe0,0x27,0x46,0x59,0x70,0xc0,0x31,0x19,0xd7,0x39,0x55,0xfd,0xf3,0xe8,0x36,0x8e,0x77,0x3e,0x83, + 0xda,0x71,0x81,0xb2,0x0d,0x39,0x38,0xaf,0x2e,0xe3,0xb0,0xc3,0xaa,0x16,0x07,0x5f,0x59,0xec,0x30,0xa8,0x85,0x5b,0xb1,0xd5, + 0x1c,0xcd,0xeb,0x87,0x35,0xc1,0x57,0x05,0xb2,0xb7,0xc3,0x40,0x9b,0x63,0x8c,0x90,0x94,0x1a,0x00,0x9a,0xd5,0xdb,0x67,0xef, + 0xe6,0x97,0x33,0x44,0x2c,0x9e,0x39,0x04,0x33,0x79,0x04,0x81,0x7e,0xb4,0xf7,0xd9,0x3b,0x34,0xd7,0x1e,0xb1,0xf0,0x75,0x5f, + 0x2e,0x11,0x46,0x6b,0xf5,0xfa,0x56,0x55,0x8a,0x89,0xc5,0xb0,0x18,0xfd,0x9b,0xa8,0x2b,0x02,0x34,0x8f,0xec,0xf6,0x62,0x31, + 0xc8,0x33,0x91,0x03,0x54,0x2c,0x9c,0x77,0x23,0x4d,0xb9,0xcf,0x8f,0xe1,0xed,0xa2,0x03,0x1a,0xf5,0x26,0x80,0x44,0xb3,0xdd, + 0xfe,0x42,0x30,0xda,0xb0,0x78,0xf8,0xf2,0x7f,0xf1,0xf2,0xc3,0x7f,0x7c,0x4b,0x97,0x7e,0x05,0xb9,0x0f,0x26,0x2a,0x53,0x73, + 0xbd,0x1c,0x03,0x70,0x58,0x59,0x55,0x11,0x72,0xc5,0x55,0x71,0x49,0xf4,0x2b,0x14,0xbe,0xd8,0x87,0x2a,0xb5,0x87,0x2f,0xe3, + 0x10,0x9f,0x57,0x1d,0x1c,0x64,0x8e,0xd7,0xb2,0x9c,0x6a,0x5d,0x5a,0x54,0x9b,0xf8,0xe5,0xa0,0x6c,0xc1,0xd2,0xe3,0x98,0xdc, + 0x27,0xce,0x89,0x56,0xee,0x95,0x67,0x65,0x08,0x9a,0x44,0x17,0x87,0xf3,0x25,0xde,0x8a,0x38,0x99,0xc1,0xc9,0xdc,0xca,0xc5, + 0x28,0x90,0xef,0x5c,0xe6,0x10,0x7e,0x3f,0x1d,0x1e,0x71,0x88,0xd0,0x83,0x45,0x9e,0xfa,0xeb,0xb6,0xd6,0x24,0x62,0xf9,0x1d, + 0x5f,0xd1,0xcb,0x9d,0xe8,0x10,0xfb,0xd4,0x09,0x31,0xe9,0x08,0x37,0xa0,0x1e,0x56,0x1c,0x43,0x19,0xba,0xf8,0x3f,0x0e,0xe0, + 0x32,0xfd,0x00,0xd7,0xf1,0xf8,0x02,0x8e,0x73,0x5a,0x7e,0x00,0x29,0xb2,0x91,0x1f,0x88,0xe3,0x2e,0x0e,0x10,0xa6,0x3d,0xec, + 0xa5,0xaa,0xc4,0x51,0x6d,0xc0,0x75,0x3e,0x85,0x04,0x7d,0x9f,0x79,0xf4,0x09,0x14,0xb3,0x45,0xfc,0x10,0x23,0x6c,0xc8,0x17, + 0x3b,0x10,0xa1,0xbe,0xdf,0xd8,0x2f,0x18,0xf9,0x0e,0x01,0x88,0x63,0x0b,0xdf,0x1f,0x2f,0x6f,0x8a,0x18,0x19,0x20,0xae,0x69, + 0x75,0x62,0xf6,0x39,0xb5,0x05,0xc3,0xd2,0x4d,0xeb,0x4d,0xcd,0xa2,0x53,0x26,0x39,0xd7,0x98,0xbb,0x55,0x9f,0xcc,0xd5,0x0e, + 0x9b,0xf6,0x98,0x5a,0xb5,0x54,0x71,0x50,0x5d,0x12,0x45,0x62,0x8f,0xd8,0xae,0xde,0xbb,0x2d,0x4f,0xa9,0xdb,0xe6,0x2e,0xce, + 0xd2,0xed,0x9a,0xb7,0xa9,0x87,0x0f,0xaa,0x5e,0xfd,0xb4,0x6c,0x54,0x97,0x07,0x84,0x89,0x4e,0x75,0x47,0x8f,0x54,0x3e,0xda, + 0x6e,0x3e,0x86,0x06,0x3d,0x44,0x78,0xf1,0x3e,0x2d,0xcb,0x5c,0xcf,0xeb,0x78,0x97,0x6a,0x42,0x6d,0xbf,0x84,0x7e,0x67,0xd4, + 0x71,0xf3,0xa3,0x39,0xb2,0x81,0xbd,0x70,0x58,0x3c,0xa4,0xd1,0xca,0x00,0xd0,0xe4,0x5b,0x76,0x7b,0x30,0x92,0x70,0x01,0xfc, + 0xdc,0x41,0x69,0x13,0xf9,0x2c,0x7f,0xd3,0xe8,0xa3,0x40,0x50,0xd8,0x0d,0xbb,0x7d,0xc6,0x16,0x5e,0x2b,0x6d,0xca,0x1c,0x2e, + 0xbc,0x64,0xa6,0x78,0xe5,0x1c,0x6b,0x74,0x2a,0x04,0x14,0x77,0xde,0x6e,0xdf,0x04,0xfd,0x04,0x57,0x71,0x06,0xde,0x3d,0xce, + 0x71,0x30,0xb7,0x41,0xd1,0x4b,0x51,0xa0,0xad,0x7d,0x76,0x7b,0xb2,0x1c,0x94,0x05,0x5f,0x3e,0xc9,0x6e,0x23,0x83,0x61,0xa2, + 0x91,0xb1,0xa0,0x6c,0x83,0xcf,0x22,0x80,0xb7,0xc1,0x87,0x8b,0x31,0x72,0x51,0x14,0x8e,0x20,0x50,0xcc,0xdd,0x80,0x16,0x5e, + 0x6c,0xa6,0xc9,0x71,0xa0,0x19,0x76,0xbb,0xdd,0x0b,0xef,0xd7,0x71,0x3c,0xe7,0x63,0x7a,0xf2,0xff,0xbf,0xbe,0x8f,0xae,0xe0, + 0xc7,0x2a,0x24,0x8a,0x16,0xe1,0x23,0xfe,0x0f,0x1d,0xd3,0x73,0x60,0x5c,0xdb,0xb7,0x07,0xf0,0xf5,0x5d,0x6b,0xef,0x73,0xce, + 0xcc,0x44,0xd7,0xb6,0xed,0xfb,0x43,0xf1,0x5e,0x7d,0x6d,0x33,0xbd,0xb6,0xcd,0x74,0xd2,0x26,0x4d,0xa7,0x13,0xab,0x08,0x27, + 0x45,0x58,0xc4,0xb6,0x8a,0x34,0x93,0xd4,0x66,0x58,0xdb,0xf3,0xe6,0xbe,0x7f,0x3f,0x9b,0x4b,0x8a,0x6e,0x99,0x03,0x0a,0xe9, + 0xf3,0xf9,0x22,0xf9,0xc1,0x54,0x2e,0x43,0x70,0x3f,0xae,0xa4,0xd1,0xe9,0xa0,0xdf,0x4f,0xf9,0x7c,0x03,0x70,0xc9,0x3b,0xe1, + 0xba,0x8a,0x17,0xa8,0xe9,0xe6,0x3a,0x6c,0x41,0x2e,0x6a,0xb1,0x49,0xbe,0xda,0xc6,0xe5,0xf6,0xfd,0x52,0x8a,0xbd,0x3c,0xba, + 0x80,0x23,0xf9,0x28,0xdf,0x71,0x16,0x5e,0x59,0x01,0x8f,0xbc,0xe9,0x91,0x1c,0xfc,0x70,0x16,0x07,0xb9,0x1b,0x52,0xc1,0x45, + 0xc8,0xc1,0x69,0x84,0x0e,0x20,0x45,0x3e,0x8b,0xc5,0xb8,0xd3,0x38,0xcb,0xff,0x8d,0xe5,0x76,0x1e,0x4d,0x5f,0x79,0x40,0xd3, + 0x07,0x7c,0xbe,0x65,0x2a,0x43,0x8a,0xec,0x2e,0x1c,0xe5,0x43,0xbc,0x18,0xe1,0x2a,0x11,0xbf,0x77,0xdb,0x52,0x90,0x2e,0xdf, + 0x85,0xe9,0x72,0x54,0xd9,0x5e,0xaf,0xe1,0xd9,0x3c,0x84,0x06,0x35,0x93,0x6b,0x10,0xcf,0x97,0xe5,0xc8,0x31,0x59,0xa1,0x9f, + 0x99,0x29,0xa7,0x70,0x52,0xc6,0x34,0xa1,0x10,0xd3,0xcd,0x31,0x9b,0xb1,0x52,0x65,0xf3,0x3c,0xf0,0x01,0x29,0x93,0x5e,0x74, + 0x98,0xe1,0x38,0x6d,0x95,0x21,0x47,0xd7,0xf2,0xf8,0x5c,0xf9,0x3a,0xc3,0xa8,0x83,0x5b,0x76,0x22,0x0b,0x97,0xe4,0x62,0x8f, + 0x2a,0xe3,0x2c,0xfd,0xce,0x16,0xfb,0x52,0x75,0xc6,0x3a,0x82,0xac,0x0b,0xbb,0xe1,0x0e,0xaa,0xe0,0x03,0xd6,0x54,0x35,0xe8, + 0x38,0xca,0x95,0xd6,0x53,0x8d,0x2a,0x9c,0x0b,0xad,0x78,0x1c,0xb0,0x9d,0x94,0x33,0x01,0x5d,0x78,0x72,0x2a,0x77,0xe1,0x30, + 0x87,0xeb,0xb3,0x58,0xa3,0x73,0x10,0x69,0xbb,0xf4,0xe6,0xd5,0x68,0x81,0x13,0xd7,0x17,0xa2,0x09,0xa3,0xd6,0xf2,0x41,0x35, + 0x9d,0xaf,0xcc,0x46,0x9e,0x4e,0x97,0x44,0xd9,0xec,0x38,0xc0,0xc7,0xb9,0x04,0xe3,0xbb,0x11,0xab,0x57,0x41,0x53,0x44,0x16, + 0x68,0xdc,0x51,0x9f,0x2f,0x06,0x17,0xb8,0x91,0x8d,0x6e,0xc6,0x03,0x6e,0x3f,0x7b,0x3d,0xa0,0x02,0x3f,0xff,0x8d,0x8b,0xff, + 0xca,0x46,0xe0,0x23,0x5f,0x06,0xd1,0xa2,0xf9,0xa0,0x27,0xfc,0xf4,0x6c,0x16,0x6f,0xc3,0x02,0xcc,0x81,0x7d,0x1f,0x62,0x79, + 0x52,0x12,0x32,0xe4,0xdd,0x7b,0x17,0x22,0x01,0xb3,0xa5,0x0b,0x2d,0x7a,0x3d,0x3f,0x76,0x58,0xaf,0xe4,0x54,0x44,0xf1,0x02, + 0xac,0x62,0x4d,0xb3,0x72,0x41,0x05,0xfe,0x72,0xed,0xc1,0x8b,0xe3,0x6a,0xb0,0x94,0x2d,0xf3,0x6b,0x83,0xa2,0x0b,0x40,0xef, + 0x9f,0xf1,0xf9,0x86,0xa5,0x11,0x93,0x9e,0x08,0x0d,0x53,0xc9,0xea,0xf3,0x31,0x73,0x38,0x94,0xc6,0x44,0x82,0x16,0x5d,0x43, + 0x14,0xad,0x4a,0x8d,0x16,0xbe,0x6c,0xbb,0x71,0x4c,0x55,0xa8,0x77,0xa6,0xcb,0xcb,0x1b,0x95,0xcb,0xd8,0xac,0xbc,0xb2,0x55, + 0x5c,0x98,0x2a,0x83,0x2a,0xcc,0xf4,0xe8,0x22,0x71,0x2b,0xa7,0xca,0xb2,0x95,0x23,0x32,0xa8,0x02,0x07,0xe4,0x9a,0x14,0x5b, + 0x0b,0xaa,0x79,0xbe,0x9a,0xe6,0xaf,0xee,0x39,0x15,0xa6,0x53,0x02,0xb6,0xa1,0x1f,0xd3,0x24,0x42,0x5d,0xea,0x65,0xaf,0xb2, + 0x15,0xca,0x21,0x1c,0xc3,0x52,0x19,0xb6,0xed,0x55,0x7b,0xf8,0x28,0x7b,0x8c,0xb9,0xb2,0x41,0xcf,0xd4,0x51,0x6a,0x33,0xea, + 0x25,0x5e,0x7e,0x38,0x8b,0xcf,0x77,0x4b,0x9c,0x2d,0xde,0x91,0x8d,0xef,0x06,0xb9,0x46,0x53,0x91,0x72,0xa9,0xee,0xa0,0x8b, + 0x52,0x8d,0x7a,0x49,0x34,0x57,0x1a,0x7d,0xc6,0xfd,0xcb,0x64,0x25,0xef,0xc4,0x6b,0xf1,0xbc,0x49,0xae,0xaf,0xc5,0x7e,0xc9, + 0x42,0x1b,0xbc,0xa0,0x47,0x56,0xb3,0x4b,0xad,0xe7,0x5c,0xcc,0xf0,0x17,0xbf,0x08,0xd5,0xbc,0x9c,0xfb,0x11,0xfa,0x67,0x8d, + 0x35,0xdb,0x9c,0x7b,0x69,0x0a,0x97,0x72,0x33,0x9c,0xf6,0xf9,0xb2,0x5f,0x39,0x51,0x65,0x8b,0xe6,0x30,0x76,0xe3,0x27,0x2f, + 0x3f,0xff,0x4b,0x97,0x59,0x8f,0xdb,0xd3,0xd1,0x85,0x95,0xd8,0x1c,0x90,0xa4,0x8f,0x5b,0xaf,0xef,0x97,0xf7,0x53,0xf4,0xd3, + 0x4e,0x5c,0xe2,0x34,0xcf,0xf0,0x5a,0xf3,0xd6,0x57,0x4a,0xf0,0xb2,0x07,0x5b,0x11,0x89,0x07,0xbe,0x3d,0x88,0xe5,0x38,0x1c, + 0x7c,0x06,0x99,0xfc,0xc1,0x5e,0xa3,0xc2,0x8f,0xd5,0xfa,0xcd,0x76,0xde,0xad,0x2f,0x4b,0x94,0x4a,0xbd,0x5b,0xfd,0xb0,0x4b, + 0x67,0xf0,0x14,0x9d,0xc6,0x1e,0x3e,0xc7,0x3f,0xe6,0x72,0x19,0xc6,0xf4,0xf0,0xcf,0x46,0x34,0x47,0xea,0x1d,0xd6,0x3c,0xa5, + 0xa9,0x3f,0x02,0xf4,0xdd,0x2d,0x44,0x37,0x9c,0x42,0x39,0x9e,0xbe,0x2b,0x91,0x23,0xf8,0x61,0x45,0x43,0x7e,0xdd,0xe1,0xd7, + 0x52,0x34,0xe1,0x17,0x19,0x5d,0x0b,0x4d,0x8d,0xff,0xd4,0xe1,0x62,0xa2,0x66,0x5c,0xf6,0xd5,0x61,0xae,0xc2,0xf7,0xef,0xef, + 0x81,0xa2,0x76,0x17,0xa8,0xc0,0x41,0xf4,0xe1,0x4d,0xaf,0x34,0x21,0x24,0x0d,0x36,0x7a,0xca,0x0d,0xba,0xd6,0x22,0x9a,0x0a, + 0x37,0x7f,0x59,0xcc,0xfd,0x88,0xc3,0x72,0xdc,0xd8,0x8c,0x6e,0x0e,0x3a,0x8c,0x2e,0xe9,0x41,0x04,0x26,0x1b,0xf4,0x56,0x2c, + 0xa8,0x58,0x13,0x05,0xf9,0xd0,0x6e,0x74,0xf3,0x97,0x1b,0x71,0xd6,0x68,0xc6,0xdd,0x1f,0x1a,0x74,0x55,0x2c,0x68,0xab,0x10, + 0xbd,0x39,0xa2,0x13,0x03,0xb8,0xcf,0xa9,0x8f,0x73,0x2b,0x5f,0xd7,0x2f,0x16,0xfd,0x10,0x0f,0x1a,0x66,0xa2,0x5b,0x9e,0x76, + 0x5b,0x79,0x3c,0x69,0xec,0x67,0xd1,0xf2,0xd2,0x0b,0x33,0xcc,0x34,0xf5,0xf0,0x36,0x98,0x74,0x3e,0x1e,0xf4,0x91,0x10,0xa5, + 0xe1,0xae,0x38,0xc9,0xe3,0x03,0xfc,0xdd,0xfd,0x3d,0xc8,0x56,0xa5,0xe8,0x62,0x97,0x68,0xfa,0x21,0x01,0x74,0x2d,0x13,0x65, + 0x70,0xd0,0x3b,0x45,0xbc,0x1e,0xf9,0xb8,0x24,0x06,0x9a,0x28,0x11,0x74,0xb9,0x22,0x0a,0xf8,0x72,0x0f,0xe6,0xc2,0x89,0xbf, + 0x5e,0xcb,0xf7,0xeb,0x95,0x7e,0x4d,0x65,0xa2,0x5e,0xec,0xc6,0x4b,0xff,0x24,0x75,0x1e,0xbf,0xfd,0xa3,0x49,0x37,0x26,0x83, + 0x1e,0xd2,0x44,0xf9,0x1c,0x8e,0x5e,0xfe,0xed,0xab,0x26,0xec,0xc4,0xfd,0xbb,0xd9,0x83,0x87,0xc6,0x29,0x4a,0x4a,0x02,0xdd, + 0x20,0x44,0x85,0xf8,0xef,0xc5,0xbf,0xcd,0x46,0x31,0x34,0xbd,0x9e,0x0c,0x4a,0x53,0x44,0x7d,0xb8,0x26,0x01,0xdb,0xd8,0xc5, + 0xd9,0xa8,0xc2,0x66,0x28,0xba,0x2f,0x05,0x34,0x56,0x88,0x7e,0xff,0x4f,0x14,0x9c,0x1c,0xc1,0xed,0x7e,0xbb,0xd6,0x6f,0x05, + 0x76,0xa2,0x4a,0x4c,0xfc,0xa6,0x07,0x4f,0xa4,0xb0,0x8d,0xa2,0x52,0x41,0x0d,0x8a,0x68,0x2e,0x96,0xf3,0x22,0x14,0x8b,0x87, + 0x4f,0xe2,0xe2,0x1a,0x1c,0xe3,0x09,0xb2,0x18,0xdb,0x31,0x17,0x75,0x32,0x51,0xd1,0xa1,0x54,0xd0,0x48,0x22,0xca,0xc5,0x44, + 0x2f,0xe2,0xf9,0x2c,0xaf,0x63,0x4d,0xd7,0xa7,0x81,0xee,0x73,0x10,0x7d,0xfe,0xf0,0x55,0x1b,0x39,0x9b,0x73,0x31,0x0b,0xbb, + 0xa0,0xe9,0x9e,0x0c,0xd0,0xcb,0x01,0x44,0x88,0xc2,0x3c,0x0c,0x61,0x26,0x2e,0xbd,0xfa,0x47,0x45,0xbf,0x66,0x82,0x86,0x6f, + 0x20,0x9a,0x7c,0x73,0x19,0x9c,0x78,0x71,0x1e,0x1c,0x74,0xf5,0x02,0xd0,0x67,0x41,0x44,0x31,0xfc,0x78,0x06,0x3e,0x49,0xe7, + 0x1e,0x94,0xf2,0x4b,0xf9,0x88,0x60,0xf5,0xcb,0x80,0x6c,0xe6,0x6c,0x5e,0x29,0x9c,0xcf,0x73,0xe0,0x61,0x4d,0xaf,0xe6,0x82, + 0x5e,0x77,0x10,0xbd,0xfb,0xf1,0xc7,0x63,0xdb,0xb0,0x13,0x5c,0x8d,0x50,0x3a,0xe8,0xc7,0xc7,0xef,0x21,0xfa,0x74,0x8a,0x5a, + 0xce,0x77,0x74,0x5a,0xa7,0xf4,0x0e,0x7e,0xbc,0x1a,0x3b,0xb8,0x9c,0x6f,0x73,0xdb,0x36,0xa9,0x4d,0xdc,0x01,0xff,0xa0,0xf0, + 0xcf,0x51,0xca,0xc5,0x63,0xf3,0xd1,0x85,0x43,0x70,0x23,0x9a,0xef,0xb8,0x7e,0x01,0x77,0x2a,0x15,0xaf,0xbc,0xf8,0x66,0x16, + 0x4e,0xb1,0x4f,0x52,0xcc,0xd5,0xba,0x4f,0x67,0x19,0x4e,0xf4,0xf3,0x22,0x78,0xd0,0x0b,0xdd,0x6a,0x9d,0x36,0x62,0x75,0xa1, + 0x71,0x61,0x94,0x94,0xda,0xb7,0xa9,0x3d,0xdc,0xae,0x32,0x64,0x1d,0x2f,0xd2,0xa3,0xce,0x22,0x8f,0x67,0xe1,0xab,0x87,0x3b, + 0x02,0x7e,0xc8,0x91,0xb3,0x9c,0x87,0x29,0x58,0xc1,0xcd,0x12,0xcb,0x49,0x3c,0x26,0xcb,0xe8,0xd3,0x51,0xfa,0xad,0x70,0x4c, + 0xc7,0x88,0x04,0xec,0xe1,0x18,0x24,0xe1,0x95,0xb7,0x87,0x30,0x9b,0x4b,0xf0,0x42,0x04,0x47,0xa2,0x87,0x8f,0x60,0x31,0x76, + 0x71,0xa3,0xc4,0x49,0xf0,0xbf,0xda,0xac,0x5d,0x08,0xe3,0xc0,0xa3,0xf8,0xf2,0x8f,0xc7,0xa3,0x70,0x46,0xf5,0x99,0x9f,0x57, + 0x63,0x89,0xaa,0x52,0xff,0xf9,0x3d,0x52,0x62,0x65,0x58,0x55,0x71,0xa1,0x72,0xa1,0xd5,0x9a,0xe8,0x44,0x62,0xc0,0x2a,0x1d, + 0xcb,0xd3,0xf0,0xf9,0x3a,0x35,0xa2,0x54,0xa6,0xf1,0x43,0x9b,0xd0,0x86,0x28,0x39,0x83,0x76,0xfd,0xa0,0xdb,0xea,0xd5,0x91, + 0x8e,0x14,0x3e,0x65,0x85,0xeb,0x23,0x96,0x99,0x60,0x3b,0x8f,0x73,0x6a,0x5c,0x3e,0xa7,0xf2,0x87,0x89,0xba,0x03,0xdb,0xf1, + 0x50,0x09,0x1f,0xb3,0x27,0x73,0x23,0x8f,0xcf,0xc4,0x00,0xb6,0x48,0xa2,0xf2,0x84,0xf4,0xe2,0x8b,0x1f,0x67,0xa8,0x7a,0x5c, + 0x3c,0xb6,0x83,0x7f,0xfe,0xa9,0x15,0x6f,0x1b,0x53,0x58,0xfd,0xff,0x6c,0xac,0xb9,0x97,0xe8,0x14,0x82,0x1f,0x58,0xcb,0x05, + 0xdc,0xea,0xb7,0x2e,0xbf,0xa5,0xdd,0x43,0x74,0x9d,0x17,0xdf,0xbe,0x12,0x8f,0x3f,0x14,0x4d,0x8b,0x07,0x5d,0x72,0x37,0xd1, + 0xc7,0xf6,0xd7,0x3a,0x10,0xe2,0x85,0xa2,0xe4,0x04,0xd0,0xb6,0x3b,0x88,0x1e,0x7f,0xfa,0xfb,0x15,0xa8,0xc3,0x9f,0x9a,0xc2, + 0x92,0x41,0x29,0xb7,0x13,0xbd,0xd9,0xab,0x57,0x71,0x81,0x8e,0xe5,0x6f,0xe6,0x62,0x52,0x28,0x35,0x56,0x82,0x1a,0x5e,0x21, + 0x72,0xf3,0x06,0xf5,0xfe,0x43,0xb5,0x08,0x43,0xad,0xac,0xe2,0x66,0x89,0x97,0x91,0x3b,0x38,0x17,0x3f,0x7a,0xf5,0x7a,0xb8, + 0x11,0xc5,0x8d,0x50,0x1b,0xb8,0x9e,0xcb,0x55,0x1c,0x36,0xa9,0x87,0x6f,0xf3,0xa0,0x59,0x5e,0x4e,0x91,0x0d,0xbc,0x01,0x37, + 0xbe,0xbd,0x16,0x93,0x96,0x73,0xa5,0xb4,0xca,0xc3,0xf9,0x38,0xcc,0x77,0x7c,0xbc,0x9c,0xa3,0xa5,0x98,0x7f,0x6f,0x65,0x2f, + 0x7e,0x2e,0x34,0xe8,0xe3,0xbd,0x68,0xc1,0x45,0xd7,0xbd,0xb1,0x06,0x53,0xe1,0x92,0xf9,0xc6,0xcd,0x45,0xd2,0x86,0xd9,0x32, + 0x9b,0x9f,0xb9,0xb8,0x07,0x9d,0x30,0xdc,0x48,0x45,0x0c,0x26,0x2c,0xe7,0x6e,0xbe,0xb7,0x94,0xa3,0x64,0x01,0xe2,0xd4,0x55, + 0xb7,0x17,0x70,0x82,0x7e,0xae,0x9c,0x53,0xf9,0xae,0x08,0xde,0x05,0xeb,0xee,0x0c,0xf5,0xfd,0x43,0xfb,0x50,0x84,0x34,0xc4, + 0xf0,0xa0,0xf1,0x6b,0x9a,0xb1,0x40,0xbe,0x5e,0x2e,0xa7,0xb8,0x17,0xc5,0xf8,0xe0,0x14,0x4f,0x4e,0x92,0x0f,0x66,0xfa,0x0f, + 0x26,0x48,0x86,0x8c,0xd9,0x24,0xf5,0xda,0xab,0x86,0xf9,0xd3,0x5e,0x3d,0x2b,0x38,0x51,0x65,0x98,0x6d,0xb6,0x75,0xd6,0x6d, + 0xcd,0xb2,0x0e,0x8f,0x6e,0x74,0xec,0xb1,0xff,0x52,0xcd,0x3b,0xf5,0x39,0xa9,0x52,0x53,0x74,0x84,0x5c,0xb8,0x59,0x76,0xc8, + 0x7e,0x75,0xc8,0xec,0x93,0x34,0x89,0x55,0xf9,0xf6,0x12,0x29,0x0f,0xbc,0xa6,0x14,0xcf,0x97,0xe0,0x41,0x9f,0xb5,0x98,0xa7, + 0xe9,0x3b,0xdb,0xf5,0x06,0x2c,0xe6,0x41,0xf4,0xa2,0x00,0xe7,0xa4,0x19,0xf7,0x7f,0x92,0x62,0x5e,0xf6,0xe6,0xff,0x2c,0xc3, + 0xb7,0x1b,0xf8,0x85,0x6d,0x08,0xc7,0x09,0x54,0x22,0x58,0x53,0x66,0x36,0x28,0xed,0x76,0xa2,0x05,0xf8,0xd9,0xf1,0xc1,0x10, + 0x7e,0x7a,0x64,0xf2,0xd5,0x74,0xc7,0x12,0xd0,0xe5,0xcf,0x10,0xe5,0x60,0x03,0x5e,0x69,0x17,0x1f,0x37,0x62,0x90,0x93,0xd4, + 0x19,0xae,0xb5,0x3c,0xc6,0x1e,0xb9,0xf9,0xdb,0x63,0xf2,0xe1,0x0e,0x24,0xf0,0x01,0x7e,0xde,0x6b,0x16,0x70,0x8c,0xee,0xe2, + 0x70,0x0c,0xe9,0x91,0xa9,0x46,0x9b,0x2d,0xde,0x6c,0x47,0x50,0x01,0xfa,0x70,0x5c,0xee,0x8c,0xe7,0x4c,0x6c,0x37,0x2e,0x5c, + 0x8a,0xdf,0xd6,0xf3,0x35,0xa1,0x7f,0xaa,0xf9,0x98,0x2a,0xf3,0x10,0x86,0x16,0xde,0x28,0x1e,0x56,0xf4,0x5d,0x16,0xe8,0xb9, + 0xe7,0x89,0x1a,0x11,0xfa,0x70,0x18,0xa2,0xb1,0x0d,0x9a,0x2e,0xcb,0x06,0x39,0xfc,0x76,0x00,0xb3,0xf1,0xd2,0x2b,0x5b,0xf1, + 0xfe,0x18,0x17,0x14,0x21,0x07,0x54,0xef,0xd7,0x23,0xb8,0x6f,0x31,0x47,0xf0,0x88,0x35,0x7e,0x7b,0xd1,0x6f,0x3b,0x5e,0x20, + 0x72,0xcb,0x31,0xc4,0x62,0x2b,0x9f,0xc7,0xc7,0x97,0xd3,0x9e,0x38,0x50,0xf2,0x23,0xa0,0x25,0x66,0xab,0x51,0x62,0x55,0xc9, + 0xfc,0xc0,0x2a,0x84,0x05,0x1e,0x51,0x4e,0xeb,0xba,0x2e,0x3e,0xa7,0x8e,0x59,0xf5,0x9c,0x74,0xd5,0x02,0xcc,0x91,0x48,0xf4, + 0xf3,0x13,0x51,0x97,0x8e,0x69,0xbe,0x60,0x89,0xb8,0x6c,0x9c,0x2b,0x7f,0x54,0x38,0x36,0xaa,0xd9,0x46,0x8d,0x51,0x61,0x4d, + 0xdc,0x2e,0x0d,0xc6,0x90,0xd5,0xcd,0xab,0xcd,0x7e,0x8c,0xde,0xcc,0x07,0x1d,0xcd,0xa8,0xe4,0x39,0xd0,0x74,0x7b,0x24,0xe8, + 0xfc,0xa3,0xa0,0x4a,0xb9,0x6c,0x29,0xb7,0xa1,0x5b,0x46,0xb5,0xf3,0xd7,0x9a,0xae,0xcd,0x00,0xfd,0xf5,0x00,0x68,0x81,0xfc, + 0x34,0xd3,0x16,0x8d,0x74,0xb8,0x31,0xc5,0xfc,0x51,0xd3,0xe2,0x1c,0xd0,0x43,0x7e,0xcf,0x97,0x38,0xf4,0x86,0xe4,0x60,0xfa, + 0x05,0xef,0x9d,0xe4,0xef,0x35,0xa5,0x78,0x40,0xd5,0xf7,0x80,0xb2,0xf8,0xad,0xc5,0xf2,0x83,0x53,0xd2,0x10,0xa3,0x1e,0x08, + 0xa5,0xe2,0xc9,0xa0,0x17,0xce,0x9c,0xf7,0x95,0x99,0x11,0x5c,0x16,0x52,0x87,0x68,0xab,0x17,0x6d,0xe6,0x2b,0x7b,0x83,0x87, + 0xb1,0xd5,0x71,0x92,0x4f,0xdb,0xc3,0xb9,0x2f,0x70,0xf4,0x32,0xfb,0x32,0xac,0xb5,0xad,0x43,0x89,0x95,0xca,0x73,0xcd,0x7c, + 0x24,0xf3,0x30,0xce,0x9b,0xf7,0x6e,0xbd,0xac,0x45,0xad,0x37,0x9d,0xc6,0xd2,0x80,0x5b,0x07,0xcc,0xa5,0x98,0x11,0xec,0xe2, + 0x83,0xea,0xd2,0xe9,0xb7,0xae,0x34,0x32,0x03,0x7e,0x5c,0x61,0x0b,0x97,0x21,0xfd,0x60,0x89,0x9c,0xc3,0xf9,0x90,0x34,0x8e, + 0xbe,0xd0,0x69,0x4c,0x58,0x28,0x61,0x7a,0xad,0xb4,0x58,0x03,0xd8,0x7c,0x45,0x13,0xb7,0xd9,0xfc,0x97,0xdb,0x36,0x19,0x25, + 0x6a,0x1d,0xfa,0xec,0x95,0x98,0xa1,0x3d,0xe2,0xd5,0x53,0xd4,0xb4,0x8b,0x0f,0xf0,0x63,0x9d,0x12,0x11,0xb4,0x10,0xc7,0xaf, + 0xda,0xab,0xda,0x8c,0x69,0xd8,0x1a,0xfc,0xbf,0xe7,0xad,0x62,0xd4,0x84,0x0c,0x70,0x9d,0x2d,0xc4,0x75,0x41,0xa1,0xac,0xd4, + 0x87,0x30,0x5f,0x3e,0xec,0xbb,0x79,0xb1,0xda,0x6f,0xef,0x96,0xa3,0x57,0x1d,0x97,0xbc,0xc0,0x42,0x64,0xab,0x2f,0xb6,0xaa, + 0xa5,0xb2,0xd0,0xfc,0xa5,0x2e,0xc0,0xc5,0xd9,0x12,0xa5,0xca,0xec,0xed,0x6a,0xad,0x71,0x6f,0xba,0x59,0x8a,0x15,0x01,0xb3, + 0x71,0xd0,0x3c,0x6d,0x9d,0xd4,0x3b,0x39,0xd1,0x9c,0x8f,0x8e,0x8b,0x1e,0xe9,0x31,0xa3,0xb1,0xda,0xba,0xe2,0xb8,0xd5,0x84, + 0x1a,0x47,0xa4,0x94,0x49,0x92,0x9c,0xb6,0x0a,0xf8,0xb4,0x4e,0x96,0xc4,0xc0,0x4e,0xee,0xd2,0xf3,0x38,0x53,0xb7,0xe1,0xbc, + 0xe1,0xe8,0x0a,0x2a,0x96,0xe4,0xe0,0x8b,0x72,0xec,0xb3,0x78,0x75,0xf0,0xe3,0x61,0x46,0x06,0xb6,0xda,0x1f,0x4c,0x76,0xcc, + 0x91,0x9c,0x90,0x58,0x1e,0xe2,0x7c,0x19,0x32,0xe2,0x91,0x2c,0x37,0xcd,0x84,0x17,0x91,0xf6,0x05,0x8e,0x85,0x32,0x61,0x6d, + 0x50,0x8e,0x4a,0x0f,0x54,0x79,0x81,0xb9,0x7a,0xc4,0xa0,0x32,0xe8,0xba,0x2a,0xd0,0x88,0xd9,0x3e,0xdf,0x23,0x2f,0xfa,0xf8, + 0xa0,0xfa,0x3a,0x4f,0x9e,0x79,0x6a,0xbd,0xc4,0x59,0x9a,0x8e,0x37,0x81,0x56,0x14,0xf9,0x7c,0xdf,0xcf,0x81,0x0b,0xd7,0x0e, + 0x61,0x3f,0x5f,0x7a,0x00,0x9a,0x9e,0xad,0x00,0x3d,0x3d,0xe8,0xf3,0x0d,0x62,0xcc,0x75,0xcf,0x75,0x63,0x2e,0xfe,0x9b,0x8b, + 0xff,0x03,0x0d,0x51,0x03,0x60,0x5c,0x59,0xdb,0x3e,0xcf,0xfb,0x9e,0x73,0xef,0x4c,0xa6,0xfa,0xca,0x5f,0x6b,0xdb,0xb6,0x6d, + 0xdb,0x28,0xd6,0x5b,0xaf,0x62,0x63,0x62,0x6d,0xb2,0x93,0x54,0x49,0x8a,0xd8,0x9e,0x38,0x69,0x37,0xf6,0xc6,0x46,0x91,0x2a, + 0xdc,0xf9,0xe7,0xfa,0x3e,0x3c,0x30,0x89,0x8c,0x7c,0x88,0x87,0x86,0x6c,0xb6,0x39,0x5a,0x7e,0x8a,0x9a,0x70,0x44,0x99,0x5a, + 0xd4,0x01,0x3c,0xe7,0x86,0x68,0xea,0x24,0x3f,0xbe,0x3a,0x7c,0xc5,0x8a,0x0a,0x1c,0x42,0x35,0x5b,0x48,0x89,0xe9,0x42,0x88, + 0xcb,0xec,0x62,0x67,0xdc,0xf7,0x91,0x13,0x12,0x71,0xe9,0xbd,0x5f,0xad,0x14,0xb3,0xa5,0x10,0x57,0xf4,0xd9,0x6c,0x7f,0xc8, + 0xf3,0x3c,0xa8,0x2c,0x3c,0x88,0x30,0x0e,0xc1,0x3d,0x1b,0xaf,0xfe,0xdc,0x83,0x0e,0x61,0x16,0x09,0xfc,0x17,0x55,0xf3,0x97, + 0x16,0x3a,0xc0,0x4f,0x7f,0x3a,0xa4,0x79,0x23,0x99,0x67,0x50,0x27,0x53,0xa0,0x89,0x14,0xbb,0xb5,0xdc,0x9e,0x97,0x43,0x97, + 0x5f,0x9b,0x8d,0x4e,0xba,0xd6,0x83,0xca,0xd1,0x40,0x0f,0x29,0x11,0x69,0x85,0x28,0xfc,0xc7,0x66,0xbb,0xeb,0xb1,0x5a,0xa4, + 0x22,0x0e,0xef,0x7e,0x5a,0x09,0x93,0xb0,0x54,0x42,0xbc,0xdb,0x63,0xb3,0x2d,0xe1,0x4f,0x0e,0x84,0x23,0xb2,0xd4,0x6d,0x0b, + 0x6a,0x16,0xff,0xf5,0x6e,0x0c,0xf3,0x05,0x63,0x32,0x51,0x35,0xf2,0xbc,0x74,0xa7,0x28,0x24,0x49,0xa3,0x78,0xa9,0x02,0x62, + 0xe8,0xa4,0xcd,0x16,0xcf,0xa7,0xe9,0xb1,0x0f,0x2f,0x5f,0xa4,0xad,0x13,0x78,0x7f,0x88,0x37,0x4d,0x21,0x95,0x52,0xf1,0x68, + 0x83,0x51,0x89,0x2a,0xbb,0x64,0xc7,0x8c,0xcd,0xf6,0x54,0x07,0xed,0x2c,0x43,0x15,0x42,0x49,0xfd,0x7e,0x91,0x18,0x38,0x0a, + 0xe1,0xd4,0x6b,0xb3,0x15,0xe3,0xa9,0x54,0xda,0x87,0x19,0xac,0xa9,0x83,0x37,0x3d,0x7e,0x00,0x43,0xf4,0x68,0x38,0x0f,0xaa, + 0xf3,0x88,0xc7,0x51,0x7c,0x98,0x43,0x0f,0x1d,0x86,0x15,0x56,0x75,0x83,0x05,0x6f,0x5e,0x11,0x4c,0x73,0x54,0x4b,0x0d,0xff, + 0x71,0x96,0x16,0x99,0x0b,0x63,0xa2,0xfa,0xda,0x8b,0x82,0x55,0x0d,0xed,0xd1,0xb6,0xf6,0x70,0x8e,0xac,0xa2,0x4b,0xda,0x39, + 0x1c,0xf7,0xee,0xa8,0xd4,0xce,0xf0,0xf6,0x3f,0xb8,0x8e,0x76,0x79,0xf0,0x23,0xf3,0x70,0x67,0x25,0x6e,0xaf,0x85,0x78,0xc5, + 0xde,0xe7,0x8c,0xcb,0xa9,0x8e,0xba,0xe9,0xc9,0x0e,0x64,0xf0,0x6a,0x51,0xd7,0x0c,0xf1,0x49,0x97,0xcd,0x16,0xc7,0xae,0xe4, + 0x83,0x28,0x4a,0xe4,0xdb,0x92,0x65,0x86,0xfc,0xd4,0x02,0x5f,0x6a,0x20,0x57,0x79,0x08,0xb5,0x32,0x1f,0x49,0xdc,0xc8,0x41, + 0xca,0x89,0xdd,0x0d,0x6e,0x58,0xc0,0x2c,0x05,0x20,0x06,0x81,0x32,0x10,0x23,0xfa,0x7f,0xef,0xa3,0x18,0xf8,0x20,0x08,0x4a, + 0x5c,0xda,0x00,0xd1,0x60,0x6f,0xd8,0xf8,0x62,0x24,0x76,0x3d,0xfb,0xd3,0xce,0xd7,0x34,0x71,0xa0,0x11,0xa2,0xcb,0xbe,0xc0, + 0x51,0x70,0xd8,0x31,0x22,0x7b,0x90,0x86,0x7e,0xa4,0xd0,0xd5,0x9e,0x78,0x4b,0xfc,0x56,0x68,0xa7,0xec,0xab,0xf2,0xba,0x0b, + 0xb5,0x61,0x01,0x69,0xb4,0x07,0x67,0x31,0x8c,0x05,0xde,0xe9,0x8b,0x27,0x6f,0x2a,0xe6,0x10,0xf9,0xd9,0xb8,0x9c,0x91,0xbf, + 0x2e,0x70,0x02,0xfb,0x52,0x1e,0x45,0xe1,0xac,0x8c,0x41,0x8b,0x76,0x94,0x9f,0xe8,0xd1,0x6d,0xa8,0x27,0x6f,0x24,0xc1,0x51, + 0xbe,0x3a,0xa9,0x99,0xa9,0x12,0xe1,0xf0,0xc2,0x41,0xb8,0x73,0x2f,0x1c,0xc9,0x85,0x16,0x64,0x08,0x0a,0xc8,0x6b,0xa5,0x99, + 0x82,0x29,0x1c,0x71,0x6a,0xe3,0x39,0xee,0x90,0xa1,0xca,0xac,0x95,0xe1,0xb2,0x21,0xd4,0x21,0x1f,0xc3,0xec,0xc4,0x2b,0xc7, + 0x28,0x10,0x7f,0xc8,0xdf,0x5e,0x3e,0x25,0xbd,0xd4,0x0b,0x53,0xda,0xa6,0x44,0xd5,0x49,0xc7,0x71,0x1a,0xff,0xeb,0x62,0x87, + 0xbd,0x38,0x8e,0x9b,0x91,0xce,0x67,0xb8,0x11,0x99,0x68,0xa2,0x38,0xca,0xc3,0x0c,0x3b,0xa2,0x95,0xaf,0xf5,0x51,0x6d,0x94, + 0xcd,0x17,0x85,0xb2,0x2b,0xcd,0xc3,0xe8,0xcc,0x65,0xf6,0xd7,0x04,0x0d,0x21,0x4e,0xdb,0xfa,0xb3,0x98,0xa2,0x47,0xbf,0xef, + 0x84,0x3f,0x72,0x71,0x39,0x66,0xd9,0x0b,0x9d,0x48,0xe6,0x1e,0xb4,0xaf,0x19,0x93,0xf5,0x2b,0x66,0x56,0x25,0x23,0x5c,0x65, + 0x6b,0x89,0x38,0x67,0x68,0x56,0x9b,0x4c,0xd7,0x8c,0xda,0x3d,0x5e,0x48,0xa7,0x52,0x1e,0xc6,0x8e,0x8f,0x0a,0x69,0x86,0x16, + 0xe9,0xda,0xcd,0x63,0xb8,0x28,0x80,0xe2,0x70,0x9c,0xc2,0x65,0x34,0x4e,0x72,0x8d,0x0a,0xd0,0x52,0xe5,0x01,0xfd,0xc7,0xe7, + 0x2e,0x9d,0xc3,0x6b,0xfe,0x24,0xc5,0x05,0x69,0x10,0xdf,0x19,0x85,0x88,0xc0,0x8d,0xd7,0x06,0xab,0xef,0x4b,0xd4,0xc7,0xe2, + 0xe9,0x2a,0x88,0xcb,0xfe,0x47,0x88,0xab,0x12,0x30,0x8f,0x2d,0xc9,0x3c,0x21,0x6b,0x70,0xcf,0x1f,0xf0,0x95,0xb3,0xb2,0x92, + 0x0e,0xa0,0x9c,0x64,0x14,0x62,0x11,0x82,0x7b,0x5d,0x39,0x96,0xc6,0x31,0x2f,0xbf,0x3d,0x43,0x03,0xe8,0xc3,0x12,0x8d,0x53, + 0x08,0x5e,0xb4,0x60,0x9f,0x1c,0x41,0x3d,0x2e,0x28,0xa5,0x08,0xc4,0xc1,0x4c,0xcd,0xaa,0x9c,0x72,0xd9,0xde,0xef,0x08,0xd3, + 0x51,0x9a,0x44,0x39,0xc2,0x74,0x7f,0xb2,0xca,0x6f,0x4f,0xe1,0xbe,0x30,0x14,0xd1,0x8c,0xf2,0x55,0x8f,0xbe,0xf2,0x41,0x3c, + 0xb2,0x0c,0x8e,0x74,0x42,0xe6,0xc2,0x97,0xe3,0xf9,0xa1,0x1f,0x4e,0x4a,0x57,0x6d,0x2f,0x6d,0x3c,0x81,0x7c,0x6c,0xaf,0x46, + 0x90,0x66,0xea,0xc6,0x03,0x63,0x54,0x4d,0x2f,0xee,0xfe,0xf5,0x14,0xee,0xff,0xcc,0x4d,0x3a,0xd3,0x9d,0xfd,0xf0,0xc4,0x75, + 0x4e,0xf4,0xda,0xd6,0xdd,0xfb,0x28,0x0a,0xa9,0xb2,0x43,0xbb,0xe5,0x28,0xe6,0xf8,0x3c,0x55,0x48,0x4f,0xd5,0x63,0x58,0x52, + 0xe9,0xca,0xa2,0x72,0x50,0x80,0x6a,0x65,0xc6,0x5e,0xb5,0x23,0x4b,0x96,0xf2,0xd7,0x16,0xce,0xe0,0x22,0x2a,0xe0,0x2e,0x7d, + 0x6b,0xaf,0xa1,0x02,0x4b,0x9a,0xa3,0xca,0x20,0x5f,0xd5,0x24,0xc7,0xf1,0xf2,0x0f,0xe1,0xf4,0x3f,0x19,0x32,0x4f,0x0f,0xd2, + 0x13,0x49,0x88,0x30,0xd9,0x85,0x43,0x38,0xc8,0xee,0xb8,0x36,0x84,0xaf,0xaa,0xc4,0x7e,0x7e,0x65,0xcd,0x17,0x1e,0xb8,0xf5, + 0x2d,0x77,0xd5,0x80,0x10,0x6c,0x7f,0x7d,0xc3,0x27,0xc7,0x10,0x45,0xbe,0x9c,0xc7,0xb5,0x98,0xe6,0xae,0x35,0x4b,0x06,0x4f, + 0xfc,0x5c,0x8e,0x42,0x53,0x2c,0x1a,0x50,0x8b,0xe7,0x5f,0x8b,0x81,0x26,0xde,0xae,0x86,0xa8,0xbd,0x50,0x88,0xaf,0x42,0xf0, + 0xd3,0x61,0xdc,0x9c,0x4d,0xfb,0x70,0xb9,0x76,0x9a,0x34,0x11,0x6a,0x27,0xc4,0xff,0x09,0xb1,0x73,0xe3,0x25,0x7b,0x28,0x80, + 0x33,0xa1,0xb9,0xd2,0x1c,0x36,0x6e,0x10,0x0f,0xd5,0x40,0xcc,0x5e,0x2c,0x44,0x16,0xcc,0x70,0xa3,0x4c,0x75,0xd8,0x10,0x63, + 0xa8,0xe3,0x66,0x44,0xae,0xe8,0x59,0x19,0xc0,0xe7,0x90,0x8a,0x3d,0xfc,0x55,0x3e,0xbd,0xeb,0x44,0x6e,0x3c,0xa6,0xbe,0x7e, + 0xe8,0xb6,0x06,0x55,0x4c,0x9e,0x7a,0x16,0x72,0x60,0xe5,0x58,0xf4,0x53,0x90,0x4c,0xd3,0x2c,0xb4,0x32,0x81,0xf6,0xaa,0x25, + 0xbd,0x43,0x66,0x50,0x2c,0x15,0xf1,0x51,0x87,0x71,0x4d,0x89,0xcd,0xf6,0xec,0x0d,0xf6,0x6c,0x77,0xdc,0x64,0x9a,0x45,0x20, + 0x6e,0xa3,0x20,0x28,0x11,0x59,0x0b,0xd1,0xb0,0x4c,0x08,0x2b,0x3e,0xdc,0x50,0x0f,0x2f,0xba,0xe9,0x86,0x25,0x68,0x22,0xbe, + 0x0e,0xa2,0x75,0xa5,0x10,0xa7,0xe9,0xb3,0x5e,0x4c,0xe0,0x59,0x27,0x2a,0xe4,0xdf,0x9f,0x77,0x27,0x25,0xee,0x68,0x86,0x50, + 0x37,0x08,0x71,0x5f,0x02,0x55,0xe3,0x7b,0xfd,0x4d,0x3f,0xfa,0x5c,0x13,0x5b,0xec,0xe0,0xb9,0xab,0x85,0x38,0x8b,0x07,0xee, + 0x29,0x45,0xb2,0xfd,0xcc,0x26,0x6f,0x64,0x61,0x3f,0x34,0x31,0x6a,0xe7,0xb2,0xec,0x86,0x3c,0x6c,0xd8,0x0f,0x3f,0xf9,0xed, + 0x9d,0x27,0xf1,0xbb,0x96,0xc4,0x4a,0xdc,0x72,0x04,0xe2,0x8b,0x57,0x85,0x08,0xa4,0x35,0x97,0x0d,0xa3,0x80,0x1f,0xad,0x47, + 0x36,0xa4,0x90,0xd9,0x10,0x1e,0xaf,0x0b,0x31,0x8d,0x4b,0xce,0xe1,0x30,0x74,0x6f,0x28,0x11,0x6a,0xc7,0x3e,0xb5,0x63,0x11, + 0x28,0x86,0x17,0x82,0x11,0x87,0x2b,0xcc,0x38,0x44,0x1f,0x8b,0xc4,0x0e,0x88,0x8f,0xb7,0x09,0xd1,0x43,0x11,0x98,0xe0,0x13, + 0x9c,0xa8,0x75,0xc0,0xd1,0xe8,0xa8,0x8d,0x68,0x33,0xb8,0xe1,0x90,0x6e,0xe6,0x19,0x4c,0xd3,0x15,0x49,0x68,0x42,0x3d,0x0f, + 0x52,0x18,0x5d,0x73,0x0e,0x16,0x9c,0xa7,0x78,0xf6,0xa3,0x1c,0x55,0x89,0x87,0xbb,0xb8,0x16,0xdf,0xcc,0xc2,0x17,0x57,0x9c, + 0x25,0xab,0xdc,0xcb,0x77,0x24,0x62,0x1a,0xe3,0x3c,0x29,0xaf,0x6e,0x20,0xb3,0x3a,0x2b,0x6d,0xd4,0xa0,0x4d,0x23,0xc9,0x7e, + 0xde,0xfc,0x53,0x3b,0x0f,0x62,0x1c,0xa7,0xf1,0xfd,0xe7,0x95,0xb4,0x8f,0x82,0x50,0x8c,0x04,0xb6,0x6a,0x87,0xa4,0xbb,0x72, + 0x83,0x13,0x77,0x50,0xa1,0xfc,0x36,0x16,0x39,0xda,0x3e,0xf8,0xb3,0x3f,0x7b,0x61,0x90,0xd7,0xac,0xcb,0xc3,0x04,0xce,0x63, + 0x54,0xde,0xe0,0x89,0x23,0x32,0x56,0xe6,0x60,0x0f,0xd2,0xb0,0x7b,0x0e,0x4d,0xea,0xa3,0x58,0xde,0x62,0x81,0x85,0xca,0x69, + 0xe5,0xd3,0x51,0x88,0xa3,0x8b,0x1e,0xf6,0xa6,0x14,0x6e,0xe2,0x12,0x68,0x83,0x18,0x24,0x2b,0x19,0xac,0x38,0xcf,0x11,0x98, + 0x47,0x2c,0xfb,0x52,0x1b,0x79,0xe0,0x33,0x67,0xfe,0x9b,0xcb,0xe1,0x83,0x30,0x94,0x90,0x15,0xae,0x68,0xe2,0x0c,0x7e,0xb2, + 0x00,0x79,0xe8,0x97,0x09,0xd8,0xcf,0x5f,0x46,0x91,0x37,0x75,0xc9,0x32,0x24,0x29,0x7f,0xfe,0x1b,0xab,0xad,0x70,0x22,0x2b, + 0xac,0x9c,0xc0,0x7f,0x20,0x04,0x5f,0x79,0xc1,0x42,0xae,0xa8,0x44,0x87,0xaa,0x42,0x1f,0xc6,0x70,0x96,0x0a,0xed,0xd1,0x8b, + 0x4c,0xc1,0xb2,0x1a,0xb7,0x84,0xe0,0x03,0x35,0x88,0x7f,0x70,0x4f,0x3e,0x2f,0x48,0xe3,0xb0,0xfa,0x53,0xdb,0x4f,0xdb,0xbd, + 0x48,0x8a,0xa0,0x3c,0x88,0xb5,0xef,0x08,0xb1,0xfa,0xbd,0x22,0x8a,0xa3,0xc3,0x54,0x0e,0x29,0x5e,0x2c,0x80,0x28,0x7d,0x53, + 0x88,0x02,0x7a,0x38,0x92,0x33,0xf1,0xde,0x59,0x3b,0x76,0x77,0x21,0x84,0xd5,0x8e,0x59,0x11,0x87,0x01,0xdc,0x75,0xc1,0x46, + 0x25,0xf6,0x1f,0x85,0x48,0xfe,0x48,0x88,0x47,0xb6,0x6f,0x5d,0xfb,0x3f,0xcd,0x88,0xc1,0x77,0x52,0xb8,0x1f,0x83,0xa8,0xb1, + 0x63,0xb7,0xb7,0x21,0x88,0xae,0xef,0xc3,0x41,0x28,0xb1,0xbc,0x19,0xe2,0x87,0xcf,0x84,0x38,0x85,0x9b,0x6e,0x8c,0xe6,0x11, + 0x7c,0x74,0x89,0xb7,0x7d,0x67,0x4b,0xf2,0x21,0xcc,0x57,0x43,0xb4,0xe1,0x08,0x8f,0x93,0x99,0xe2,0xa1,0x3f,0xf8,0xf3,0x1c, + 0xbe,0xcf,0x5b,0x51,0x47,0xcd,0x7a,0xac,0x2c,0x94,0x2f,0x0e,0x20,0x02,0x43,0x6a,0x2f,0x7a,0x91,0x47,0xfd,0x0e,0x49,0xb2, + 0x64,0xd5,0x5e,0xd9,0x76,0x91,0x55,0xf3,0xc3,0xce,0x6a,0x64,0xa1,0xc0,0x64,0xa6,0x96,0xe5,0xf1,0xaa,0x64,0x85,0x19,0xb1, + 0x46,0xab,0x6c,0xd2,0x6f,0xb0,0xe9,0x39,0x2a,0xc1,0x30,0x49,0x63,0x86,0x1d,0x2e,0xcb,0xba,0xe5,0xc9,0x35,0x8f,0xa7,0x1a, + 0x03,0xa9,0xc2,0xe4,0x81,0x01,0xee,0x44,0xb8,0xe1,0x82,0x89,0x95,0x6e,0x32,0x9e,0x3e,0x35,0xaf,0xfc,0xe1,0x10,0x22,0x11, + 0xca,0x6e,0x14,0xa0,0x1d,0x44,0xe6,0xb2,0x28,0x84,0x62,0x08,0x55,0xda,0x4d,0xae,0x6a,0x7b,0x3b,0x45,0x50,0xab,0x69,0x1a, + 0x01,0x0e,0xcf,0xc6,0x51,0x3a,0xfe,0xc6,0x22,0xbc,0xf8,0xa3,0x7f,0x55,0x90,0x74,0x95,0xe7,0x29,0x5a,0x0d,0xe2,0xa2,0x26, + 0x99,0xa1,0x52,0xf8,0x24,0x75,0x51,0xa9,0xba,0xee,0xc3,0x2b,0xf3,0xb4,0x44,0xc4,0xc3,0x0d,0x7e,0xea,0x24,0x5f,0x3c,0x42, + 0x7e,0x6a,0x00,0x19,0x2a,0x19,0xf7,0xf8,0xe1,0x98,0xe1,0x2f,0x8c,0x98,0xae,0x0f,0x36,0x14,0xa3,0xfe,0xe6,0x7e,0xd4,0x68, + 0x5f,0x39,0xe1,0x87,0x02,0xfd,0x92,0x58,0x94,0x60,0xd3,0x09,0xd4,0xaf,0x0d,0x93,0x85,0x6b,0x5e,0xeb,0x31,0x3d,0x9a,0x2e, + 0xcd,0x98,0xd5,0xaf,0x38,0xc8,0x77,0x9f,0x66,0x27,0xdc,0xfa,0xfe,0x8c,0x71,0x77,0xb4,0xde,0xcd,0x2d,0xb2,0x9b,0x2f,0xab, + 0x43,0x0f,0xea,0x31,0xaf,0xd6,0xe4,0x73,0x22,0x82,0x0d,0x2f,0x8e,0xad,0xaa,0xe5,0xcb,0x82,0x10,0xe3,0x50,0x83,0x4c,0xbc, + 0xb6,0xb1,0x17,0x5e,0x72,0x6b,0xbe,0x7e,0x80,0xbd,0x4c,0x8e,0xc8,0x35,0x1c,0x22,0x5d,0x4c,0xe6,0x42,0xfc,0x75,0x29,0x44, + 0x8e,0xb1,0x5f,0x56,0x3b,0x78,0x20,0xcd,0xb8,0x48,0x33,0x6a,0x7d,0x38,0xcf,0xd0,0xe1,0xb5,0x09,0x24,0xc5,0x87,0x59,0x10, + 0x2f,0x5c,0x07,0xb1,0xa5,0x85,0x86,0x0d,0x7d,0x34,0xaf,0x1b,0x95,0x28,0x6f,0x81,0x70,0xba,0x00,0x22,0x41,0x7f,0xe7,0x08, + 0xc5,0xc0,0x43,0xbd,0xdd,0x28,0xa3,0xf0,0xb1,0xf8,0x73,0x19,0x89,0x9f,0x7e,0xb3,0xd9,0xcc,0x5c,0xac,0xfd,0x8b,0xcb,0x57, + 0x4c,0x51,0xaf,0x0c,0x24,0xb3,0x8c,0x64,0x4f,0xfd,0x46,0x5f,0xbd,0x8a,0xf3,0x0c,0x5f,0x74,0xe9,0xc7,0xa5,0xa3,0x31,0x80, + 0x1b,0x54,0x1b,0x22,0x1c,0x6e,0x2d,0x5a,0x7d,0x1e,0x5d,0xcb,0xdb,0x54,0x9b,0xc9,0x93,0xcf,0xae,0x7b,0xc4,0x7b,0x75,0x90, + 0xd1,0xd5,0xe0,0x4e,0x27,0x94,0xa7,0xb1,0x41,0xd9,0x64,0x14,0xad,0xcf,0xa1,0xbd,0x08,0xa3,0xc3,0xb0,0xca,0xb5,0xc3,0xc6, + 0x6a,0xa4,0x61,0x0a,0xb1,0x0e,0x1f,0x46,0x19,0xdf,0x8a,0xd0,0xb2,0x30,0x6a,0xd8,0x90,0xc1,0x0b,0x38,0x41,0x21,0x32,0x84, + 0x8f,0xa0,0x44,0xdd,0x34,0x6d,0x3a,0xab,0x5b,0xa4,0x3b,0x52,0xe4,0x1b,0x0d,0xab,0xba,0x11,0x6f,0x70,0xe2,0x5a,0x6d,0x40, + 0x15,0xc8,0x33,0x48,0xa2,0xe7,0xa6,0x71,0x10,0x17,0xd4,0x98,0x66,0xc9,0x86,0x01,0xd2,0xb2,0xa9,0x13,0xf5,0xb4,0x47,0xfd, + 0x1e,0x6d,0x48,0x45,0x05,0x2e,0x3d,0x46,0x77,0xb8,0x98,0xda,0x8c,0x3d,0xff,0xe9,0x80,0x8f,0x61,0x4d,0xb1,0xb1,0x16,0x15, + 0xb2,0x9a,0x63,0x64,0x06,0x02,0xd5,0xa8,0x8a,0xd6,0xcd,0x94,0x6f,0x0a,0x59,0x1e,0xb9,0x3a,0x98,0x76,0x3f,0x5a,0x45,0x65, + 0x9c,0xa7,0x27,0xd3,0x33,0x75,0xc8,0xc7,0xa5,0x8d,0xe4,0x2f,0x1b,0xd9,0x99,0x5d,0xb4,0xef,0x87,0x90,0x8c,0xdb,0xba,0x29, + 0x8a,0xd7,0xb7,0xc8,0xd7,0xef,0x4b,0xc6,0x1e,0x0a,0xa6,0x61,0x59,0x06,0x33,0x16,0xd1,0x08,0x9e,0xd0,0x0a,0x0c,0xad,0xcb, + 0xe7,0x38,0xd7,0x10,0x80,0x29,0x43,0xa8,0xf4,0xd0,0x9f,0x3f,0xae,0xf7,0x22,0x51,0x1e,0x50,0x13,0xa6,0x1a,0x7c,0xfd,0x40, + 0x91,0xf2,0x43,0x14,0x5d,0x57,0x44,0xed,0x1c,0x49,0xa1,0xca,0xcf,0xd0,0x6a,0x0a,0x55,0xad,0x86,0x68,0xfd,0xa4,0xc3,0x49, + 0xf5,0xff,0x0d,0x53,0x03,0x60,0x5c,0x59,0x17,0xbe,0xdf,0x39,0xf7,0xbe,0x37,0x49,0x93,0xda,0xed,0xda,0xb6,0xfe,0x35,0xb2, + 0xb6,0x6d,0x9b,0x35,0x62,0xdb,0x76,0x95,0xa6,0xa9,0xed,0x74,0xb6,0x31,0x8a,0x24,0x9b,0x22,0x99,0xd8,0x46,0x9d,0xf7,0xdf, + 0xf1,0x7c,0xf7,0xcc,0x99,0x4f,0xef,0x73,0xd1,0x54,0x00,0xf1,0xe6,0x7a,0xcb,0x72,0x18,0xb3,0x63,0x65,0x1a,0x72,0x65,0x32, + 0x7c,0x6d,0xf1,0xb2,0xd2,0xd6,0x88,0x7c,0x15,0x2b,0xed,0xe6,0x3b,0xdd,0x94,0x8e,0x2d,0xce,0xed,0x68,0xb7,0x9d,0xe2,0xd5, + 0x6a,0x87,0x74,0x98,0xb1,0xae,0x63,0xe6,0x09,0x75,0x65,0x2c,0xce,0xc0,0x1f,0x9b,0x51,0x68,0xcc,0xae,0xe6,0x62,0x34,0x53, + 0xac,0xb9,0x43,0x05,0xf2,0x61,0xf5,0xb3,0x59,0x4d,0xc7,0x8c,0x62,0x23,0xcb,0xf9,0xb1,0x6a,0xf3,0x04,0x6f,0xc5,0xbb,0xd1, + 0x6c,0xa9,0xff,0x8c,0x70,0x8a,0xc5,0x75,0xee,0x3c,0x8c,0x27,0xbc,0xe9,0x02,0x0d,0x52,0x27,0xdc,0xe5,0x08,0x36,0x98,0x97, + 0x9d,0x56,0x95,0x98,0x5e,0x4a,0xf9,0x74,0x7d,0x38,0xda,0x19,0x9e,0x48,0xa3,0x32,0x1a,0x42,0x2e,0xff,0x1d,0x2e,0x87,0xc1, + 0x9e,0x14,0x4e,0x32,0x17,0xbe,0xca,0x83,0x3f,0xbd,0x7b,0x6a,0x28,0x15,0x90,0x0a,0x42,0x0e,0xf5,0xd3,0x26,0x5c,0xee,0x8f, + 0x8b,0xb2,0x0d,0x0f,0x56,0x22,0x81,0x42,0xb1,0xbc,0x94,0x8f,0xc3,0x97,0xca,0x65,0x31,0x3e,0xb7,0x73,0x22,0x9e,0x7e,0xe7, + 0x24,0xc7,0x23,0x07,0xd9,0xb8,0x2b,0x14,0x6b,0xc8,0x9b,0x46,0xb1,0x05,0xe7,0xd5,0x1f,0x91,0xfa,0xe3,0x5d,0xd1,0x38,0x44, + 0x99,0xfa,0x5e,0x4e,0x49,0xb4,0x92,0x93,0xd9,0xa9,0x9c,0xc6,0xf0,0x7e,0xb5,0x6d,0xaf,0x2c,0x1e,0x97,0x31,0xae,0x07,0x69, + 0x6a,0x5a,0x03,0xe7,0xa2,0x1c,0x85,0x88,0x40,0x9a,0xa6,0x5a,0xcd,0xb9,0x5c,0x4a,0x3f,0xdb,0xcd,0x5a,0x54,0xa3,0x02,0xdf, + 0xd6,0xd0,0xf7,0xf9,0x72,0x8c,0x16,0x3b,0x28,0x85,0x65,0xbe,0x5c,0xcd,0xb7,0xb6,0x71,0x37,0xed,0xc2,0x16,0x6c,0x86,0x2a, + 0xe2,0x4a,0x32,0xc4,0x9c,0x53,0x10,0x99,0xd5,0x96,0xd5,0x44,0xcf,0xd8,0xb5,0x5c,0x5f,0x9a,0x70,0x55,0x06,0x0e,0x61,0xb1, + 0x4d,0xb8,0x39,0x20,0xbe,0xaa,0xb2,0xac,0x11,0x4c,0xbd,0x31,0x92,0xf2,0xd8,0x1d,0xdd,0x72,0x1f,0x7f,0x5a,0x4f,0x31,0xbc, + 0x95,0xa2,0x64,0x19,0x4c,0x31,0xb3,0x11,0xe2,0x60,0x8d,0x65,0x6d,0x86,0x9b,0x88,0x46,0x20,0x9d,0xc5,0xcb,0x3f,0x6d,0xc7, + 0x93,0xd3,0xe3,0xa0,0xc4,0xd6,0x56,0x88,0xea,0x43,0x96,0x15,0x81,0xeb,0xde,0xc8,0xc4,0xf3,0x91,0x48,0x46,0x08,0x29,0x31, + 0xa1,0x03,0xc2,0xb5,0xc0,0xb2,0x96,0x2f,0x7d,0xef,0xeb,0x40,0x84,0xd3,0xab,0x23,0xf8,0x5c,0xd4,0xb6,0x41,0x34,0xb1,0x10, + 0x09,0x66,0x9c,0x6d,0x85,0x4e,0x23,0xc5,0x8c,0xc2,0x11,0xf3,0xe6,0x2e,0xda,0x47,0x6b,0x31,0xd1,0x67,0xf2,0x1f,0x41,0x6a, + 0x51,0x8f,0xf9,0x5b,0x93,0x91,0x8b,0x12,0x4e,0xc1,0x4e,0x6a,0xa3,0x16,0xca,0x30,0xbf,0xae,0x50,0xcd,0xd4,0x27,0x73,0x64, + 0x15,0xe5,0x50,0x8c,0xaa,0x53,0x2f,0xb4,0xc2,0x1f,0xee,0xb4,0x8b,0xab,0xb5,0x5a,0x3b,0x1d,0x44,0x25,0xbb,0x76,0x4b,0x07, + 0xe5,0x3b,0xc9,0xf9,0x07,0x90,0xab,0x36,0x20,0x93,0x93,0xf0,0xb3,0x07,0xfd,0x76,0x88,0xd7,0x93,0x6c,0x20,0x6f,0xca,0xa2, + 0x87,0xe2,0x9c,0x93,0x9c,0xc3,0x8c,0x28,0x4a,0xe3,0x28,0xb6,0x78,0xd1,0x6b,0xef,0x8d,0xf3,0x83,0x9d,0x13,0xd8,0x97,0x37, + 0x63,0x50,0x9e,0x33,0x33,0x79,0x37,0x55,0xa3,0x48,0x66,0x21,0x0a,0xcb,0x37,0xaa,0x60,0x15,0x24,0xeb,0x10,0xc5,0x7b,0xe8, + 0xfa,0xef,0x0b,0xe8,0x81,0x7f,0x69,0x3d,0x7d,0x2b,0x83,0x30,0xc2,0xd3,0x8a,0x54,0x17,0xe6,0xa7,0xe1,0x8a,0x55,0xec,0x61, + 0x86,0xa3,0x04,0xad,0xe4,0x4b,0x95,0x66,0x83,0x3c,0x45,0x45,0x46,0xb2,0x61,0x27,0xbb,0xe2,0x7d,0xc6,0xe2,0x6c,0x9c,0xc6, + 0x9d,0x07,0xf9,0x96,0x08,0x63,0xa3,0x74,0xad,0x40,0x34,0x95,0xc9,0x0f,0xcb,0x54,0x14,0x46,0xd4,0x9f,0x2b,0x6c,0x09,0x94, + 0x61,0xcb,0xa3,0x73,0x46,0x17,0xbe,0xac,0x50,0xcf,0x55,0x71,0x0b,0xf6,0x53,0x36,0x3a,0x68,0x98,0xae,0xa8,0xc3,0x71,0xce, + 0x73,0x79,0xe4,0xa8,0x99,0x46,0x0e,0x39,0x6b,0x13,0x1f,0xc1,0xcf,0xa7,0x55,0x0a,0x2e,0x21,0x9e,0x7e,0x6b,0xe4,0x8f,0x0b, + 0x39,0x06,0xe9,0xdc,0x29,0x4f,0x71,0x3a,0xf2,0x54,0x2e,0x65,0xf3,0xac,0x68,0xdb,0x15,0x22,0xad,0x1e,0xe2,0xe3,0x3a,0xcb, + 0x1a,0x90,0x0d,0xe8,0x53,0x37,0x8c,0x18,0x9b,0xc9,0x0b,0xc9,0x38,0x46,0x2e,0xeb,0x50,0xa2,0x45,0x5d,0x53,0x64,0x06,0x52, + 0xad,0x71,0xf7,0x2a,0xce,0x40,0x11,0x0e,0x90,0x2f,0x72,0xe5,0x26,0x5c,0x11,0x6c,0x34,0x93,0xbb,0xbc,0xd6,0xd7,0x35,0x4b, + 0x45,0xdb,0x46,0x51,0xa8,0x6a,0xe9,0x14,0xee,0x1f,0xc5,0x51,0x2a,0x95,0xee,0x14,0x88,0x6c,0xcd,0xeb,0xf9,0x3c,0xec,0x42, + 0x28,0x66,0x2d,0xfa,0xe8,0xc1,0x06,0xf2,0xd1,0x86,0x3e,0x9f,0x81,0xe5,0x5f,0x19,0xa2,0xb2,0x1a,0xe2,0xdb,0x36,0xcb,0x7a, + 0xa3,0x8c,0xbe,0xd9,0x25,0xdf,0xcc,0x31,0xc2,0xe1,0xc5,0x37,0x45,0x28,0x25,0x0e,0xd7,0x40,0xdc,0xd5,0x6c,0x59,0x01,0x64, + 0x4c,0xb0,0x23,0x87,0x3e,0x98,0xf0,0x9b,0x12,0xb6,0x53,0x10,0x3f,0x8c,0x59,0xd6,0xd5,0xfb,0x71,0x88,0x6f,0xdb,0x83,0x5e, + 0xb4,0x42,0x18,0x62,0xb7,0x86,0xf3,0x3b,0x2d,0x6b,0xe9,0x7d,0x35,0x94,0xc9,0xc7,0xd1,0x4f,0x63,0x58,0x07,0xb9,0x4e,0xba, + 0x88,0x69,0x5a,0xd3,0x4f,0x5d,0x96,0x95,0x81,0x1e,0xd4,0xd0,0x8f,0x6b,0xf0,0xd1,0x1d,0x8b,0x1a,0x31,0xcc,0x8b,0xf7,0xf1, + 0xb3,0xe9,0x48,0x54,0xab,0xe9,0xef,0x11,0x99,0x45,0x09,0xfc,0x98,0x17,0x4d,0x11,0xb7,0x36,0x40,0x3c,0xd4,0x6b,0x59,0x57, + 0xa6,0xc9,0x04,0x14,0x62,0xf9,0x5d,0x2b,0x10,0x64,0x4c,0xfe,0x2c,0x18,0x8f,0x1c,0x86,0x1f,0x5e,0xac,0x45,0x1a,0xad,0x45, + 0x14,0x66,0xef,0xa4,0x08,0x59,0x46,0x13,0xff,0x39,0x45,0x9d,0x94,0x27,0x73,0x91,0xee,0xb4,0x07,0x75,0xe4,0x4e,0xbf,0x1f, + 0x45,0x01,0x4d,0x12,0x2f,0xeb,0x35,0xbf,0x5c,0xb0,0xac,0x7b,0x37,0x73,0x31,0x42,0xe9,0x00,0xae,0x76,0xa0,0x00,0x6e,0x27, + 0x91,0x41,0xf3,0xb7,0x23,0x18,0x2f,0xc5,0xd1,0xf2,0x57,0xbe,0x5a,0xb0,0x60,0xd9,0x93,0xe7,0xc9,0x4f,0x6e,0x95,0x29,0xd8, + 0x46,0xf9,0x9a,0x94,0x43,0x4e,0x37,0xc4,0x17,0x0e,0x88,0x34,0x9d,0xc2,0xa3,0xff,0xfc,0x75,0xf5,0x28,0x62,0x29,0x99,0x1e, + 0xa8,0xa7,0x00,0x98,0xe2,0x47,0xbd,0xb5,0xaf,0xcf,0xb2,0x0e,0xa2,0x0f,0x01,0x70,0xa9,0x42,0x20,0xff,0xfe,0xe5,0x28,0x5d, + 0xf5,0x48,0x8b,0x3e,0xdc,0xaa,0x0f,0x3f,0xa9,0xb7,0xac,0x1b,0xde,0x4b,0x93,0xc6,0xc4,0xbf,0xfb,0xa9,0x1c,0xbd,0x78,0xfa, + 0xba,0xb5,0x90,0x62,0x92,0x3e,0x6a,0x3b,0x6b,0x59,0x51,0xc8,0xc2,0xfd,0x0e,0x7c,0xfa,0xf0,0x38,0x31,0xad,0x19,0x62,0x83, + 0x9e,0x4e,0xa0,0x07,0xd6,0xe2,0x0c,0x02,0x20,0xe3,0x34,0x37,0x1f,0xf5,0x7c,0x37,0x67,0xf2,0x1a,0xbc,0x9d,0xcd,0xd3,0xea, + 0xa8,0x18,0x39,0x94,0x05,0x25,0xca,0x1b,0x21,0xde,0x3f,0x67,0x59,0x2d,0xb8,0xfd,0xe3,0x66,0xca,0xd3,0xf3,0xd7,0x24,0x68, + 0xb8,0x4b,0xc3,0xdf,0x6b,0x67,0xcd,0x22,0xbc,0xe6,0xf2,0xda,0x01,0xac,0x06,0xa6,0x8b,0x27,0x06,0x20,0x66,0xe8,0xc5,0xe7, + 0xd4,0x21,0x39,0xc4,0x3e,0x68,0x22,0x1f,0xea,0x99,0x58,0xa5,0x36,0x1b,0x07,0xa5,0x5b,0x11,0xd6,0xd9,0xfe,0x35,0xcf,0xf0, + 0xd3,0x17,0xe4,0x41,0x3a,0xc7,0xd1,0xa8,0xc3,0x18,0x5d,0x82,0x03,0xfd,0x38,0xa0,0xe2,0x65,0x33,0xe7,0x3a,0x6d,0xe1,0x51, + 0x39,0x4a,0x07,0xa4,0xbb,0x6a,0x76,0xda,0x41,0x0e,0x97,0xa7,0xb6,0xa8,0x54,0x8a,0x56,0xb5,0x50,0xa2,0xb0,0x49,0x2b,0xd4, + 0x32,0xae,0x7d,0x63,0xb1,0xbc,0xa9,0x1d,0x9e,0x48,0x80,0xb3,0x58,0xde,0x02,0x31,0x5f,0xff,0x5f,0x1c,0x45,0x71,0x06,0x6e, + 0xfa,0xe2,0x3f,0x6c,0x84,0x53,0x2e,0xbc,0x29,0x1f,0x1f,0x78,0x52,0x3e,0xb9,0xe3,0x9e,0xab,0x0a,0x20,0x45,0x94,0x16,0x9c, + 0xd3,0x6e,0x59,0x93,0x3e,0xd3,0x8d,0xa6,0x58,0xec,0x86,0x8b,0xb8,0xb9,0x1d,0xe2,0x3d,0xad,0x6b,0x0b,0x4f,0x98,0xea,0x83, + 0x61,0x3c,0x3c,0xce,0x07,0x2d,0xd2,0x0b,0xb5,0xf4,0xe5,0x7e,0xe3,0x34,0xd6,0x23,0x9b,0x36,0x20,0x9c,0xbb,0xf9,0xf6,0x66, + 0x19,0x00,0x27,0x91,0xde,0x0a,0x71,0x8f,0xc3,0xb2,0xee,0x5c,0xe8,0x6d,0xde,0x1a,0x8b,0xbb,0xc6,0x0f,0xa0,0xde,0xb9,0x07, + 0x4b,0x1f,0xf9,0xba,0x92,0x33,0xe9,0x6d,0x43,0x3c,0xdf,0x0d,0x41,0x7a,0x61,0xbb,0x7c,0xb2,0x4f,0xed,0xc6,0x4e,0xf3,0xb6, + 0xed,0xc8,0xc7,0x79,0xa7,0x1f,0xa5,0x28,0xef,0x84,0xb8,0x57,0xff,0xd6,0x07,0x35,0x14,0x86,0x17,0x63,0x29,0x94,0xc6,0x89, + 0x37,0xfa,0x20,0x5c,0x1a,0x2d,0x6b,0x66,0x10,0x6a,0x38,0x08,0x47,0x90,0x44,0xf5,0x86,0x3b,0x9a,0xf8,0x5f,0x7c,0x58,0x49, + 0xfe,0xb4,0x85,0xea,0xf8,0xbd,0x78,0x23,0x94,0xc6,0x68,0x3f,0x4c,0xf1,0x5d,0xb7,0x6e,0xd5,0xa8,0x0e,0x0d,0xcf,0xb7,0x20, + 0x5b,0x2d,0x28,0x45,0x30,0x5e,0xb8,0x6a,0x3b,0xa5,0x62,0xab,0x2e,0x7a,0x88,0x5e,0xd6,0x3f,0x64,0x59,0x85,0x94,0x84,0x68, + 0x3e,0xc8,0x46,0x13,0xef,0xb7,0x5d,0xa2,0x75,0xe6,0x36,0xde,0x4d,0xfd,0xf4,0xe8,0x30,0x2f,0xf1,0x86,0x3f,0xbd,0x93,0xaa, + 0x56,0xa2,0x59,0xde,0xa6,0xc4,0x64,0x1d,0xd5,0xa4,0x31,0x4d,0x89,0xee,0x19,0xdf,0xcc,0x85,0xe4,0xf4,0xda,0x0a,0x56,0xe2, + 0x19,0x8d,0x0e,0x5d,0xb4,0xac,0x34,0xba,0xf1,0xc7,0x64,0xfa,0xd2,0x7c,0x7b,0x37,0x8d,0x17,0xaf,0x0d,0x42,0x1c,0xd4,0xa3, + 0xad,0x58,0x43,0x09,0x9a,0xe5,0xcf,0x29,0xc8,0x24,0xa7,0x78,0xb4,0xa0,0x07,0x31,0x88,0xa0,0x6e,0x1c,0xa4,0xd7,0x5c,0x0e, + 0xd3,0x11,0x4a,0xa5,0xbb,0x0b,0xc9,0x9b,0x82,0xe0,0x40,0x1e,0x94,0xd8,0xad,0xb7,0x3d,0xa4,0x15,0x2e,0xbf,0xed,0xca,0x40, + 0xaa,0xc4,0x35,0xbf,0x6d,0xd7,0x99,0x25,0x0c,0x43,0x78,0x69,0x9b,0xb6,0xe3,0x9b,0x16,0xf3,0xaa,0x63,0xb4,0x1a,0xc6,0xaf, + 0x4b,0xc2,0xe9,0x22,0x0d,0xc3,0x5b,0x56,0xa1,0x9d,0x8b,0xc8,0xf6,0x87,0x12,0xf3,0x06,0x21,0x5c,0xb5,0xa0,0xdb,0xdf,0x4b, + 0xa0,0x50,0x78,0xe3,0x99,0xef,0x17,0x1a,0xe2,0xb5,0x21,0x5d,0x02,0xed,0x63,0xa5,0x0c,0xc3,0x5e,0xac,0x42,0x0c,0x7b,0xc2, + 0x2d,0x18,0x2f,0xde,0x2c,0xc5,0xb0,0x3e,0xf2,0x1b,0xb6,0xac,0xaf,0x56,0xa0,0x02,0x57,0x6e,0x21,0x5f,0xcc,0x11,0x27,0xcf, + 0x43,0x94,0x6b,0xac,0x98,0x4f,0x23,0xd6,0x98,0x31,0x46,0x49,0x54,0x8c,0x00,0x59,0x8a,0xfb,0xf2,0xb0,0x8e,0x7e,0xd9,0x2f, + 0x33,0x5c,0xc6,0x54,0x3d,0xad,0xa6,0x38,0xc5,0x53,0x8f,0xe0,0xa7,0xeb,0x3a,0xcc,0x31,0x4c,0xca,0xc1,0x5e,0xb8,0xec,0xe7, + 0x20,0x1e,0xc2,0x15,0x1e,0x46,0xa1,0x2c,0xe1,0x15,0xea,0xde,0x6d,0xf4,0x55,0x2f,0x3c,0x55,0xa1,0xda,0xe0,0xf2,0x62,0x2f, + 0x55,0xa0,0x5b,0xae,0xa4,0x54,0x99,0x06,0x9b,0x98,0x3a,0x02,0xb1,0x62,0xc0,0xb2,0x56,0x61,0x7e,0x06,0xbe,0x0c,0xa0,0x35, + 0xf8,0x21,0x1c,0xdb,0x60,0xc7,0xa0,0xcc,0xc1,0x0f,0x7b,0x49,0x8a,0x7b,0x46,0x21,0x2c,0x3d,0x51,0x45,0x3f,0x2c,0x18,0x45, + 0x1d,0x82,0xa0,0x44,0xaa,0xc6,0x06,0x9a,0x2c,0xeb,0x83,0x7b,0xf6,0x22,0x5a,0x0f,0x7b,0xe3,0xed,0x26,0x0d,0x1f,0xd5,0xf0, + 0x75,0x83,0xba,0xa8,0xbf,0xed,0xc4,0x5c,0xb7,0x44,0x44,0x92,0x9b,0x14,0xae,0x5a,0x86,0x9b,0xa5,0xaf,0x40,0x1a,0xc4,0xc2, + 0x3a,0x38,0xb8,0x82,0x4d,0x71,0xc7,0x05,0x88,0x1e,0x6d,0xc5,0x3f,0x5b,0xe1,0x03,0xe7,0x01,0x9c,0xc5,0xd5,0xcd,0x88,0xe7, + 0xab,0xee,0x0d,0xa1,0xcb,0x85,0xeb,0x51,0x08,0xf7,0xf3,0x96,0x15,0xca,0x9d,0x66,0x2c,0xdb,0x39,0x90,0x3a,0x68,0x08,0xc1, + 0x2e,0xe9,0xe4,0x4e,0x7f,0x84,0x72,0x25,0x92,0xb9,0x58,0x25,0xdb,0xbe,0x9f,0xb9,0x07,0x41,0x34,0x4a,0xce,0x91,0x32,0xd5, + 0xc8,0xe5,0x58,0x78,0xab,0x55,0x38,0x4b,0xf5,0xb4,0x52,0xde,0x3c,0x6c,0x0b,0x41,0xa6,0x51,0x43,0xc5,0x7c,0x00,0x07,0x5c, + 0xb7,0x23,0x4f,0xfd,0x47,0x91,0x74,0x98,0x46,0xf1,0xa1,0x37,0xec,0x74,0x96,0xe2,0xb1,0x8f,0xe2,0xb9,0x90,0xe6,0x8e,0xa2, + 0x8f,0x36,0xaa,0x11,0xd3,0x26,0x76,0x55,0x41,0x04,0x4c,0x15,0xe2,0xaf,0x8d,0x88,0xc2,0xa7,0xfb,0x29,0x84,0x22,0x68,0x8a, + 0xcb,0xb2,0x6c,0x15,0xca,0x39,0x88,0xd1,0xd9,0x3f,0x57,0x0b,0xb1,0x67,0x86,0x10,0xbf,0x86,0xa1,0x99,0xf8,0xfa,0xc5,0x1d, + 0x08,0x42,0x1c,0x22,0xb1,0x57,0x7e,0xf2,0xcb,0x9f,0x76,0x4a,0xd5,0x02,0x6f,0x30,0x45,0xcf,0x29,0x88,0xb9,0xb3,0x84,0x08, + 0xa2,0x19,0x6b,0x29,0x98,0x6f,0xff,0xda,0xce,0x89,0x88,0x96,0x31,0x54,0xc6,0x27,0xe9,0x55,0x71,0x7f,0x37,0xc4,0x0f,0xd7, + 0x0a,0x91,0x8d,0xf9,0x47,0x71,0x25,0xd6,0x53,0x23,0x6a,0xe9,0xf2,0x2a,0xb4,0xd1,0x00,0xe7,0x73,0x3d,0xf6,0x60,0xa3,0xbc, + 0xa3,0x49,0x85,0xd2,0x76,0x9a,0x59,0x6b,0xa4,0x50,0x0d,0xf7,0xf0,0x5e,0xfa,0xbc,0x07,0xdf,0x54,0x18,0x59,0x94,0x63,0xdb, + 0xca,0xc7,0xcd,0x10,0x0a,0x42,0x9b,0x3c,0x67,0x4b,0xe5,0xfd,0xbc,0x12,0x0d,0xac,0xba,0x78,0x15,0x8f,0xc8,0x93,0xf0,0xc0, + 0x11,0xec,0xa1,0x49,0x83,0x32,0x80,0x43,0xb8,0x06,0xb6,0xa8,0x71,0xa5,0x2a,0x84,0xaa,0x69,0x27,0x92,0x9d,0x92,0x39,0x53, + 0x5e,0xe9,0x49,0xa7,0x39,0x51,0x9e,0x94,0x9b,0xa8,0x96,0xa6,0x94,0x20,0xcd,0x58,0xc3,0x83,0xc8,0x40,0x35,0x55,0x61,0x33, + 0xad,0xa0,0xab,0xbe,0xf1,0xe4,0x7a,0x7a,0x33,0x89,0xce,0x20,0x4e,0x35,0x38,0xbf,0xf7,0x5c,0x10,0xfd,0x3c,0xbf,0x1a,0x37, + 0x9f,0xc7,0x30,0x0a,0x29,0x07,0x17,0x8d,0x3a,0x84,0x52,0x3a,0x15,0x23,0xde,0x76,0x0a,0x39,0xf0,0xc4,0xaf,0x39,0x6c,0x97, + 0xe1,0xb4,0x07,0x81,0xd4,0xc9,0x59,0x38,0x4a,0x67,0xe8,0xc1,0x36,0x3e,0x03,0x1f,0xfa,0x78,0x52,0xaa,0xd1,0x49,0xa9,0xdc, + 0xac,0x36,0x71,0x02,0x4e,0xe0,0xf5,0xdf,0x7b,0x65,0x36,0xec,0x48,0x97,0x65,0x08,0xd4,0x2c,0xf3,0xe5,0x8c,0x67,0x2e,0xa2, + 0x07,0xe9,0xb6,0x3f,0x37,0x20,0xd7,0x68,0x63,0x4f,0xb2,0x48,0x89,0x87,0x1c,0x10,0x03,0x73,0x85,0x18,0xff,0x59,0x0c,0x7d, + 0x70,0xb5,0x03,0xad,0xb8,0xce,0x10,0x77,0x37,0x41,0x4c,0xd3,0xa6,0x4d,0x2c,0xc3,0x76,0x3c,0x3a,0x80,0x4d,0xb0,0x53,0x1e, + 0xde,0x7d,0xcb,0x49,0x6c,0x6a,0x85,0x78,0xf8,0x7a,0x21,0x8e,0xf1,0x4e,0x3a,0xc9,0x8f,0x0e,0xd1,0xdd,0x3d,0xf0,0xe4,0x42, + 0x75,0x51,0x1e,0xa6,0xbb,0x1b,0x39,0x80,0xae,0xae,0x67,0x43,0xf8,0xb5,0x41,0x6c,0xbf,0x46,0x88,0x87,0xe6,0xd7,0xe3,0xcb, + 0x59,0x7b,0xb0,0x1a,0x57,0x07,0xa3,0x00,0x4a,0xd4,0x77,0x40,0x7c,0xec,0x2c,0xc4,0x27,0xfb,0xf0,0xd8,0xdf,0xbf,0xbe,0xf5, + 0xca,0x69,0x48,0x71,0xa2,0x13,0xe2,0x67,0x57,0x21,0xb2,0xe8,0xee,0x77,0xd2,0xe5,0x79,0x3a,0x22,0x0d,0xf1,0x41,0x17,0xc4, + 0x3d,0x73,0x84,0xb8,0xe2,0x8f,0xb5,0x28,0xa7,0xc7,0x1a,0xb5,0x82,0x5f,0x64,0x05,0x49,0x31,0x45,0xc7,0xb9,0xe8,0x3a,0x21, + 0xbe,0xb8,0xff,0xe3,0x68,0x32,0x8a,0x48,0x89,0x9f,0x34,0x72,0xbd,0x66,0xe4,0x87,0x48,0xac,0xc4,0x0e,0x3e,0x0c,0x1f,0xd9, + 0x84,0xa7,0x95,0xb0,0x7a,0x21,0xae,0x99,0x20,0x84,0xf1,0xd6,0x1a,0x64,0x72,0x39,0xce,0xe0,0xa6,0x77,0xfe,0x0f,0x25,0x55, + 0x75,0x74,0x15,0xd7,0xd7,0x3d,0xfb,0x9c,0x7b,0x67,0x5e,0x14,0xad,0xbb,0xbb,0x37,0xbf,0xba,0x6b,0x48,0xdd,0x05,0xaf,0x77, + 0x15,0x87,0x9f,0x54,0xf3,0x22,0xc4,0x5d,0xd0,0x28,0x9a,0x10,0xf7,0xa0,0x31,0x82,0x6b,0x20,0xee,0x25,0x41,0xcb,0xc3,0xe2, + 0xf6,0xcd,0x5a,0xdf,0xbf,0x7b,0xef,0xd9,0x32,0x76,0x9d,0x68,0x96,0x03,0x54,0x3e,0x8e,0xa8,0x06,0xd7,0xb9,0x7d,0xdf,0x8c, + 0x5e,0x2e,0x46,0x06,0xde,0x5c,0x2e,0xf5,0x08,0xc0,0xfc,0x01,0x3e,0x04,0x5f,0xa5,0xc8,0xcf,0x12,0x95,0xb8,0x13,0x45,0x21, + 0x1e,0xab,0xf1,0x82,0xd3,0xe7,0x9a,0xc2,0x2e,0x82,0xae,0x11,0x22,0x7f,0x3c,0x70,0x5d,0x34,0x7e,0x75,0xbe,0x7b,0x9e,0xa6, + 0xad,0x16,0xe6,0xc3,0x44,0x5f,0xbb,0x4d,0x6c,0xc4,0x7f,0xaf,0x7a,0xa8,0x10,0x8a,0x5a,0x2c,0x6c,0x70,0x6c,0x6c,0x6c,0xde, + 0xc3,0xaf,0x0f,0xe3,0xc1,0x34,0x7e,0x80,0x7a,0x2e,0x81,0x3e,0x10,0xa2,0x8d,0x7c,0x4b,0x06,0xd6,0x8b,0x9f,0x74,0xc3,0xdc, + 0xce,0x3e,0xd8,0x88,0x58,0x39,0x83,0x48,0x35,0xf7,0xe6,0x75,0xe6,0x06,0x63,0x8f,0x78,0x25,0xf0,0x56,0xed,0xe0,0x54,0x0c, + 0x71,0xb2,0x24,0x71,0x88,0xd9,0xce,0x09,0x66,0x32,0x76,0xa0,0x89,0x95,0x43,0xf2,0x50,0xa3,0x36,0xaa,0x5d,0x66,0x2d,0x97, + 0xf3,0x3a,0x7e,0xf8,0xcb,0xb5,0xe8,0xe1,0xb5,0x28,0xe5,0x02,0x15,0x24,0xe7,0xf8,0xf6,0xb5,0xb6,0x7c,0x8e,0x95,0x3b,0x2e, + 0x21,0x1c,0x8d,0xd2,0xc5,0xbb,0xd5,0x84,0x76,0x9c,0x41,0x96,0x6c,0xc7,0x25,0xbd,0x5c,0xed,0x55,0x91,0xfc,0x7b,0x1a,0x37, + 0xe9,0x7e,0x04,0x30,0x77,0xe8,0x11,0x1c,0xe1,0x43,0x92,0xc6,0x77,0xad,0x42,0x35,0xb2,0x61,0xa3,0xea,0x1e,0x90,0xb2,0x11, + 0x6d,0xe1,0xdb,0x56,0x21,0x54,0xb5,0xa3,0x9e,0x93,0x95,0x0f,0x67,0xa0,0x0f,0x76,0x5c,0x96,0x23,0x5c,0xc7,0xd3,0xc8,0xbd, + 0x01,0x54,0xfc,0x36,0xd1,0x61,0x97,0x31,0xe5,0x2d,0xaf,0x36,0x62,0x3b,0x9f,0xc7,0x53,0xb3,0xe3,0x38,0x82,0xc7,0xc4,0x23, + 0xc9,0x48,0xc7,0x1e,0xc9,0xe0,0x31,0xdc,0x6f,0xe7,0x56,0xfc,0x34,0xa6,0xeb,0xdc,0xf3,0x75,0x1d,0x7c,0xad,0x2d,0xaf,0xd5, + 0x60,0x6a,0x29,0x67,0x4a,0xbe,0x6e,0x55,0x71,0x4e,0x01,0x98,0xc3,0x7b,0x10,0xcf,0xa5,0x46,0x2a,0x6f,0xe0,0x7a,0x95,0x8f, + 0xe5,0xf0,0x43,0x36,0x72,0xb8,0x5a,0x35,0x73,0x24,0x9b,0xdd,0xca,0x97,0xa3,0x79,0x97,0xbc,0xb8,0x46,0x7c,0x58,0xfb,0x21, + 0x0f,0x5e,0xf1,0xfc,0x6b,0x16,0xda,0xb1,0x03,0xde,0x86,0x9d,0x3f,0xf1,0xfc,0x61,0x15,0xc2,0xe4,0x8e,0x05,0x8b,0x56,0xaa, + 0x8b,0xfa,0xb5,0x2d,0xbc,0x5f,0xc7,0xc1,0xe5,0xb4,0xac,0xc0,0x0e,0x39,0xcb,0xbd,0x08,0x47,0x95,0xf8,0x6a,0xb3,0x4f,0x05, + 0xf2,0x4d,0xf5,0x1c,0xc4,0x55,0x52,0xa7,0x5a,0x79,0x99,0xaa,0x56,0x0d,0x78,0xf0,0x8e,0x4f,0x3f,0xd8,0x27,0x65,0x1c,0xa2, + 0xdc,0x57,0x71,0x1c,0x96,0x6c,0x93,0x70,0xdd,0xa6,0xe2,0xd5,0x01,0x95,0xc1,0x69,0x6a,0x07,0xe6,0xf8,0xf2,0x3e,0xfc,0xe1, + 0x90,0xe7,0x77,0xf1,0x7a,0x14,0xa2,0x17,0x6d,0xb8,0xb5,0x18,0xe5,0xb8,0xc7,0xdb,0xe8,0x54,0x9d,0xea,0xee,0x1c,0xde,0xa3, + 0xeb,0xc5,0xb3,0x0b,0x9f,0x14,0xaa,0x4d,0xfc,0x5c,0x1f,0x6f,0xd4,0x47,0x78,0xf1,0x10,0x17,0x8d,0xeb,0xc1,0x31,0xb6,0x9d, + 0x97,0xc5,0x91,0x88,0xd6,0x99,0x2a,0x55,0x7e,0xb7,0x23,0xcb,0x76,0x14,0xe7,0xd5,0x9d,0x7b,0x8d,0x20,0x04,0xab,0x13,0xb2, + 0xdf,0x2d,0x43,0xb6,0xa3,0x4c,0x5d,0x6b,0xa3,0x3b,0x8f,0x83,0x02,0x1f,0x21,0xf2,0xe6,0x1f,0x3b,0x91,0xc0,0x4f,0xd8,0xd1, + 0xa6,0xcc,0x14,0x1e,0xe5,0x7b,0xf7,0x22,0x43,0x02,0x58,0xd3,0x21,0x4b,0x51,0xec,0x41,0xa4,0x02,0x70,0x84,0xab,0x81,0x5f, + 0x0f,0x73,0x31,0x26,0x90,0x77,0x1d,0x68,0xc3,0x93,0x44,0xe9,0xca,0x7d,0x25,0x1f,0x41,0x2a,0xbe,0xf7,0xd6,0x0d,0x6a,0x46, + 0x98,0xf8,0x61,0x9f,0x5a,0xc7,0x29,0xba,0x94,0xd7,0xc0,0x81,0xd7,0xfd,0x65,0xa9,0x4a,0x50,0xa9,0xce,0x09,0x5c,0x84,0x9f, + 0x42,0xf9,0x34,0xee,0xfc,0xf3,0x28,0x5a,0x95,0x97,0xa6,0xb5,0x0d,0xa0,0xe0,0x29,0x44,0x4e,0xfe,0xf8,0x2d,0x03,0x4f,0xaf, + 0xc7,0x7b,0xfb,0xa0,0x29,0xb7,0x11,0x94,0xea,0x45,0x34,0xb9,0x10,0xc5,0x9c,0x8e,0xdb,0x3f,0xf3,0x61,0x4f,0x4d,0xaf,0x36, + 0x83,0x0e,0x79,0x12,0x95,0xe3,0x87,0x73,0x38,0xc8,0x5f,0xfd,0xe4,0x8b,0xdf,0x4c,0x7a,0xce,0x42,0x4f,0x58,0x1d,0x22,0x65, + 0x05,0xdc,0x2b,0x71,0x1a,0x3b,0xb8,0x8d,0xfb,0x31,0xa5,0x51,0x66,0x3f,0x61,0x52,0xae,0xc5,0x26,0x3c,0x4b,0xf4,0x47,0x1b, + 0x7e,0x0c,0xe1,0x97,0xca,0xb1,0xc0,0xa5,0x14,0xc3,0xda,0x47,0x5e,0xb9,0x8a,0xbc,0x5b,0x41,0x33,0x1e,0x22,0x3a,0x83,0xef, + 0x2a,0xe4,0xe5,0xcd,0xf0,0xc7,0x5b,0xd9,0x08,0x57,0xdb,0xe1,0x75,0x51,0x0e,0xa0,0x86,0x37,0xc9,0x08,0x5e,0xd9,0xc7,0x0e, + 0x09,0xe0,0x00,0x1d,0x84,0x93,0xd2,0xc5,0x93,0xeb,0x8d,0x2c,0x54,0xc8,0xcf,0x55,0x36,0xcf,0x54,0xb4,0xf1,0x52,0x3c,0xfe, + 0x67,0x27,0x3e,0x5a,0x6f,0x66,0x2b,0x83,0xce,0x5b,0x51,0xaf,0x3d,0x4a,0x94,0x84,0x8b,0x52,0x68,0x89,0x12,0xb1,0x5c,0x25, + 0xf2,0x2f,0xdf,0xd5,0x28,0x4d,0x2f,0xb5,0x80,0x3a,0xfe,0x45,0xa4,0x3f,0xcc,0x96,0x8d,0x6c,0x44,0x23,0x47,0x4e,0xb2,0xa2, + 0x5d,0x16,0x7c,0xd1,0xba,0xe4,0x9b,0x27,0x6e,0x2f,0xc0,0xab,0x7f,0x4d,0xa2,0xa1,0x76,0xd0,0x8f,0x77,0x10,0x45,0xb0,0xd3, + 0x18,0x82,0x55,0x87,0xaa,0xe6,0x4c,0x5e,0x2f,0x57,0xf9,0x70,0x38,0xe2,0xf9,0x84,0x3c,0x9d,0xc8,0x15,0x78,0xb7,0xc2,0x58, + 0xc9,0x7e,0xf2,0xf8,0x20,0xaf,0x55,0xb5,0x18,0x96,0x30,0x2c,0x5c,0xc5,0x9b,0x8c,0x34,0xf7,0x6b,0x7c,0x55,0x2d,0xaf,0xd0, + 0x43,0x9c,0x22,0x06,0xdd,0xdc,0x06,0xba,0xca,0xf2,0xfe,0xee,0xa1,0x93,0x7c,0x94,0xcf,0xf0,0x94,0x50,0x04,0xe0,0x9e,0x2e, + 0x18,0x74,0xbd,0xc5,0x9c,0xbe,0x97,0xa8,0x0d,0x33,0xe8,0x3c,0x57,0x73,0x30,0xbf,0xbd,0x09,0x99,0x38,0xcb,0x06,0x45,0x77, + 0x80,0x3c,0x1e,0x27,0x4a,0x47,0x36,0x57,0x1a,0xfb,0xf5,0xc4,0x99,0x19,0x70,0x6d,0x96,0x00,0xe5,0x4a,0x6f,0xfc,0x0d,0x1a, + 0xb3,0x5e,0x92,0x51,0x3e,0x8b,0x40,0x8e,0x11,0xd7,0x4c,0xb1,0xeb,0x48,0xb9,0xfa,0xfb,0x10,0x95,0x21,0x7d,0x6a,0xa7,0x6a, + 0x44,0xba,0xf9,0x42,0x3f,0x2f,0xd5,0x31,0xbc,0x95,0xb7,0xb0,0x0b,0x9d,0xb1,0xcc,0xce,0xdc,0x49,0xe4,0xe5,0x71,0x8b,0x1f, + 0x42,0xb1,0xd5,0x0c,0xd6,0xbd,0x66,0xa4,0x2e,0x73,0xbd,0xb6,0xcd,0xf9,0xeb,0xcb,0xdc,0xa1,0x92,0xd4,0x2a,0x29,0xb4,0xf5, + 0x21,0x8e,0x35,0xfd,0x65,0xd9,0xaf,0xb7,0xea,0xda,0xb2,0x31,0xc6,0xf1,0xea,0xf5,0x4f,0x0a,0xb8,0x54,0x34,0xcd,0xb1,0xe0, + 0x49,0x0f,0x12,0xfd,0x3b,0x80,0x13,0x40,0xcf,0x54,0x60,0xf6,0x9b,0xce,0x54,0xd1,0x05,0x7a,0xd9,0x83,0xc8,0xc3,0x8e,0x04, + 0xdc,0x1b,0x85,0x39,0x11,0xbc,0x94,0xd3,0x31,0x0a,0x0c,0xf3,0x7e,0x54,0xc1,0x5b,0x12,0xe4,0x8f,0x16,0xb9,0x8a,0x9e,0x3e, + 0x0d,0xba,0x60,0x99,0x26,0x63,0x95,0xe4,0x88,0xbf,0x65,0xd1,0x24,0x6f,0x1e,0xd0,0x67,0x90,0xa0,0xde,0x48,0x83,0x1f,0x47, + 0xe1,0xe5,0x2e,0xd4,0x61,0x2d,0xe2,0x8c,0xeb,0xc3,0x24,0x50,0x4e,0x23,0x4f,0x56,0x23,0x51,0x5a,0x30,0x39,0x41,0xce,0xc9, + 0x01,0x09,0xe4,0x4c,0x2e,0x33,0x12,0xd5,0xa7,0x91,0x4e,0xd3,0x0b,0xf0,0xa5,0xa2,0xd5,0x56,0xf4,0xdc,0xfb,0x88,0xee,0xde, + 0x8b,0xa9,0x31,0xb0,0xc3,0x63,0x32,0x25,0x75,0x83,0xde,0xb7,0x2a,0x06,0xe3,0x8d,0x4e,0xde,0x8c,0x46,0x3c,0x55,0x81,0x72, + 0xbe,0xa1,0xc6,0xc8,0xe2,0x34,0x3e,0x8c,0x28,0x7d,0xd3,0xe7,0x47,0x30,0xde,0x69,0x1d,0x0a,0xb9,0x9b,0xdf,0x4b,0xd0,0x67, + 0x25,0x9c,0x3f,0x4d,0x56,0xb3,0xd3,0x75,0x1f,0xce,0x70,0xae,0x78,0x75,0xa1,0xda,0xe9,0x94,0x8c,0xb1,0x41,0x65,0x96,0xd5, + 0x09,0xcb,0x6a,0x00,0x2e,0x3d,0x38,0xc5,0x59,0x7c,0x7f,0x2b,0xa2,0xf8,0x86,0x45,0x9a,0x8a,0x4e,0x82,0xbc,0x1e,0x22,0xba, + 0xe3,0x87,0x39,0xef,0x7c,0x13,0xca,0xbd,0x70,0x40,0xd3,0x2c,0x6b,0xde,0xe8,0xdd,0x44,0xee,0xb3,0x0a,0x79,0xab,0x54,0xe1, + 0xdd,0x6f,0x43,0x58,0xd3,0xe0,0x19,0xd0,0x66,0x0b,0xf5,0x97,0x95,0xf2,0xfc,0x28,0xaf,0x66,0x3f,0x7e,0x78,0x95,0x6d,0x32, + 0xe5,0xd6,0x83,0xa6,0x7e,0x41,0xd4,0x86,0x0e,0x59,0x10,0x62,0x96,0xe3,0xc5,0x4a,0x4e,0x36,0xa2,0x94,0xb7,0xac,0xc3,0x31, + 0x2e,0xe7,0x76,0x23,0x1c,0x97,0xe4,0xaa,0x61,0x39,0x61,0x5e,0x71,0x2d,0x32,0x8e,0xd9,0x8e,0xda,0x4e,0xc8,0x52,0x75,0x9c, + 0x97,0xc3,0x97,0x1b,0x90,0xc6,0xe3,0x77,0xaa,0x4c,0x29,0x37,0xb3,0xa5,0xcd,0x2d,0xc0,0x38,0x62,0x53,0xb4,0xa6,0x01,0x54, + 0x34,0x87,0xe8,0x1f,0x3c,0x14,0x8d,0x95,0x3c,0xf5,0x2c,0x14,0x5d,0xdd,0x0c,0x7a,0xf8,0x43,0xa2,0x4c,0xa4,0x60,0xe1,0x72, + 0x7e,0x7e,0x89,0xa6,0x1f,0x2d,0x28,0xfc,0x7d,0xb2,0x4e,0xa6,0x7f,0x6d,0x47,0x01,0x6e,0x0e,0xc3,0x01,0x68,0x7a,0xa1,0x05, + 0xe4,0x58,0x44,0xe4,0xcb,0x0b,0xef,0x9e,0xb2,0x78,0xe2,0xcf,0x07,0xa0,0xe8,0xce,0x56,0x50,0xd5,0x62,0xa2,0xb7,0xde,0xbd, + 0x6d,0x3f,0x7e,0xfe,0x43,0xd3,0xc5,0xbf,0x41,0xf5,0xd3,0x89,0x52,0xe4,0x9d,0x22,0x94,0x61,0x37,0xff,0xf0,0xf5,0x1a,0x98, + 0xe4,0xdf,0x65,0xe9,0x66,0x10,0x2d,0xd9,0xc2,0x95,0x98,0xf4,0x5d,0x0e,0x86,0xf1,0x70,0x11,0xbc,0x79,0x42,0x18,0x14,0x29, + 0x6b,0xff,0x86,0x99,0x44,0x2d,0x3c,0xe9,0xe6,0x78,0x2e,0x63,0x3b,0xbb,0x91,0xf4,0x80,0x6e,0xfa,0x91,0x28,0xc2,0x58,0x27, + 0xef,0xfc,0x8d,0x2e,0x44,0xe1,0xc6,0x7d,0xc8,0xe4,0x45,0xcb,0xb1,0x5e,0xe7,0x49,0x19,0xbf,0xbb,0x1b,0xa3,0xfc,0xc4,0x66, + 0xce,0x90,0x95,0x08,0xb1,0xd8,0x6d,0xac,0xa9,0xbb,0x0f,0xe4,0xf9,0x0b,0x51,0x25,0xdc,0xc7,0x1f,0xe3,0x2f,0xae,0x9d,0x3a, + 0xc0,0x26,0x65,0x0e,0x80,0x1e,0x9b,0xfb,0xff,0xfb,0xa2,0xe4,0x0a,0x56,0xda,0xe2,0xd5,0xbd,0x69,0x18,0x90,0x1d,0x6c,0xfe, + 0xa1,0xe8,0x41,0x8b,0xde,0x33,0x87,0xa8,0x18,0xe6,0xfb,0x45,0xb0,0x5e,0x1f,0xcc,0xa4,0xfc,0x06,0xd0,0xff,0x56,0x12,0xf5, + 0xca,0x56,0x60,0xb5,0x94,0xa8,0x63,0x48,0x34,0xf7,0x5a,0xef,0x7d,0x3f,0xe7,0xaa,0x02,0x7e,0x24,0x90,0x6b,0x30,0x86,0x1a, + 0xdb,0xdc,0x0d,0x86,0x43,0xed,0x52,0xfb,0xb4,0xc3,0x2d,0x42,0x47,0x48,0x26,0xef,0xe3,0x6c,0xed,0x90,0x72,0xd9,0xa6,0x5d, + 0x22,0x74,0x13,0xec,0xaa,0x8c,0xc7,0xa4,0x14,0x07,0xa4,0xc7,0xd8,0x8f,0x38,0x75,0x50,0x77,0x48,0xb2,0x2d,0x1b,0x3e,0xea, + 0xe5,0xe5,0xbc,0x01,0xe9,0xbc,0x49,0x57,0xe2,0x3f,0x5e,0x67,0xd5,0x6a,0x6d,0x97,0x02,0xf3,0xf6,0x61,0x54,0xc1,0xac,0x42, + 0xa3,0x91,0xac,0xe6,0xcc,0x6f,0x34,0x8b,0xf8,0x8a,0xdb,0x59,0x1d,0xac,0x6f,0x2a,0xc1,0x46,0xe4,0xa9,0x3e,0x44,0x6b,0xd9, + 0x82,0x34,0xdc,0x18,0xc5,0xcb,0xb8,0x03,0xd1,0xb8,0x88,0x2e,0xee,0xc2,0x4e,0xdc,0x99,0x84,0x46,0xec,0x11,0x6a,0x71,0x2b, + 0xd6,0x5d,0xf2,0x60,0x3a,0x06,0xd8,0xc1,0x2f,0xc4,0xa0,0x50,0x9d,0x96,0x65,0xb0,0xa3,0x99,0x53,0xf8,0x89,0x5c,0xac,0xc3, + 0x28,0x87,0xf1,0x3e,0xe9,0x41,0x87,0x53,0x9b,0x2d,0x4a,0x05,0x98,0x6f,0xef,0x41,0x06,0xf3,0x61,0x39,0xc0,0xf5,0xce,0x27, + 0x55,0xb3,0xf4,0x39,0x35,0xeb,0x06,0xa7,0x3b,0x76,0xe9,0xa3,0x66,0x9d,0xfc,0x5e,0x28,0x45,0x3a,0x4d,0x8e,0xa2,0x83,0x27, + 0xb7,0xe1,0x22,0x8f,0x8f,0xd2,0xeb,0xf9,0xb2,0x9e,0x7c,0x96,0xab,0x39,0x49,0xc5,0x62,0x97,0x59,0xc3,0x25,0xfc,0x5c,0xa7, + 0x3a,0x81,0x22,0x79,0x2b,0x12,0xbb,0x38,0x5e,0xed,0xc1,0x56,0xa7,0x04,0x23,0x4f,0xd6,0x19,0x71,0xe6,0x08,0xf6,0x18,0x87, + 0xa4,0x83,0xe3,0xa4,0x4b,0xbf,0x3a,0x22,0xeb,0xb8,0x5e,0xfd,0x1e,0xcb,0x35,0x9c,0xa8,0x9e,0xae,0xd2,0x89,0x3c,0x93,0xae, + 0x1f,0x04,0xfd,0x12,0x4a,0x94,0xc0,0xbe,0xe6,0x0a,0xe9,0x53,0x35,0x92,0x84,0x34,0x13,0xc5,0x48,0xc3,0xe3,0x6b,0xb8,0x54, + 0x7b,0x63,0x49,0x0e,0xec,0xda,0x1f,0xd6,0x06,0x1c,0xc4,0x71,0x78,0xfc,0xb6,0x0e,0x2f,0xd4,0x21,0x83,0x1d,0xb8,0x2d,0x1e, + 0x21,0x92,0xcf,0x95,0x9c,0xcd,0xeb,0x11,0x8b,0x54,0xd9,0xa2,0xfb,0xd4,0x2a,0x8e,0xc6,0x0e,0x09,0x91,0x59,0xa7,0x38,0x5f, + 0xba,0x79,0xca,0xf4,0x32,0x79,0xe0,0x87,0xc5,0x17,0x10,0x88,0x3a,0x86,0x2f,0xc7,0xeb,0x58,0x6b,0xd1,0x25,0x84,0x62,0x08, + 0xcb,0xb1,0x57,0xae,0xe0,0xed,0x83,0xa8,0xc1,0xb7,0x53,0x4b,0x90,0xcb,0x39,0xfc,0x43,0xb2,0x6d,0x27,0x3e,0x4d,0x92,0x8f, + 0xee,0x49,0xc6,0xfc,0x6a,0xac,0x56,0x91,0x7c,0x54,0x59,0x0d,0xfa,0x70,0x14,0xdd,0xa8,0xc3,0x94,0x1e,0x14,0xc8,0x57,0x7b, + 0xb1,0xc2,0xd2,0x66,0x5a,0x74,0x38,0x7c,0x10,0xa1,0xca,0x30,0x20,0x61,0xec,0x8f,0x51,0xe4,0xaa,0x6e,0x8c,0xa9,0x11,0x29, + 0x84,0xd3,0xb4,0xf3,0xf0,0xd5,0x59,0xf0,0x53,0xc3,0x78,0xff,0xf1,0x00,0xdb,0xf4,0x0b,0x7c,0x18,0xae,0x8d,0xb8,0xc2,0x59, + 0xd2,0x2d,0xf5,0x38,0x25,0xf7,0xdb,0x8d,0x0b,0xe8,0x94,0x2a,0x73,0x56,0xab,0xc4,0x38,0x1d,0x94,0x4f,0x6b,0xb0,0x05,0x9e, + 0x29,0x68,0xe7,0x24,0x39,0x05,0x3e,0x8a,0x93,0x72,0x9c,0xf3,0xf5,0x5d,0x0d,0xf8,0x6f,0x08,0x76,0x60,0x8f,0xcb,0x45,0xbe, + 0x68,0x1e,0x97,0x72,0x7d,0x51,0x9d,0xc5,0x82,0x1e,0x76,0xf7,0x88,0xe1,0x7d,0x66,0x10,0x2f,0x18,0xe4,0x41,0x5b,0x3f,0xff, + 0xd0,0x8a,0x61,0x3e,0xc8,0xdb,0x6c,0x32,0xae,0x8c,0x4d,0x32,0x9b,0x41,0xea,0x37,0xa2,0x75,0x78,0x2a,0x40,0x65,0xc0,0xc1, + 0x5b,0x31,0x80,0x0a,0x1e,0x94,0x59,0x89,0x46,0x84,0xd2,0x54,0xd2,0x02,0x72,0x59,0x42,0x94,0xa4,0xbe,0x9d,0xe3,0xc7,0xbd, + 0x2a,0x0e,0xd7,0x1e,0x81,0x22,0xcf,0x93,0xa0,0x69,0xb1,0x44,0x33,0xfe,0x17,0x81,0xc7,0x2f,0xe0,0x6d,0x45,0xa7,0x2d,0x64, + 0xfe,0x4a,0xa2,0x79,0x4f,0x65,0x60,0x37,0x9e,0x8b,0x80,0xa6,0xe6,0x73,0xa0,0x4d,0x01,0x44,0x0b,0x6e,0x3b,0x8e,0x3c,0x0e, + 0xc5,0xcc,0xad,0x96,0xbf,0x49,0xd7,0xff,0x03,0x7a,0x6d,0x29,0xd1,0x5f,0xb7,0x4c,0xcb,0x43,0x3f,0xce,0xa3,0x02,0x77,0x4c, + 0xf8,0x07,0x7b,0x30,0xc7,0x89,0xfe,0x63,0x71,0xbb,0xed,0x44,0x99,0x98,0x10,0x63,0xe1,0xf5,0xbc,0x91,0xf7,0xeb,0x3c,0xac, + 0x94,0xd7,0x9e,0x6a,0xe2,0x9d,0xea,0x00,0x46,0xe4,0x06,0x4d,0x47,0x2d,0x55,0x58,0x38,0xd1,0x0d,0x76,0xf8,0xe2,0xb3,0xbb, + 0x56,0x73,0x35,0x1c,0xd0,0xf4,0xcc,0x79,0xd0,0x4f,0x31,0x44,0x4e,0x01,0x5c,0x8a,0xbb,0xaf,0x0a,0x97,0x46,0x6c,0xb2,0xe0, + 0xdb,0x1c,0xa0,0x7b,0xad,0xbc,0xdb,0x67,0xa4,0x60,0xa2,0x67,0x3a,0xf6,0xe2,0x6b,0x45,0x4f,0x5d,0x06,0x3d,0x65,0x75,0xfb, + 0xed,0xd6,0x6f,0xbf,0xbf,0xd6,0x1f,0x36,0x7a,0xf5,0x0a,0xa8,0xd7,0x02,0xae,0xaa,0x44,0x07,0x16,0x07,0xe1,0x85,0x0f,0x97, + 0xf3,0x7a,0x4c,0xed,0xc5,0xc7,0x4f,0x47,0xc1,0xa0,0xae,0x5e,0x90,0xc3,0xa2,0xb7,0xe0,0xb7,0x2d,0xec,0xcd,0xdd,0x9c,0xcc, + 0xbf,0x38,0xdf,0x9d,0x29,0x9a,0x56,0x58,0xcc,0x78,0x6f,0xa2,0x66,0xbe,0x6f,0x7e,0x0b,0x62,0x64,0xda,0x53,0xdd,0xfc,0x7f, + 0x15,0x93,0x73,0x60,0x5d,0x5b,0x16,0x87,0xd7,0x6f,0xad,0xbd,0xcf,0xbd,0x37,0x37,0x7d,0xb6,0x6d,0xab,0xe6,0x43,0xe7,0xd9, + 0x56,0xdd,0x67,0x9b,0x69,0xd4,0xc6,0x6a,0x7b,0xd3,0xd8,0x56,0x15,0xd5,0xd6,0x04,0x6d,0xac,0xba,0x31,0xe6,0x35,0xc9,0xb4, + 0xe1,0x99,0x33,0xff,0x7e,0x4b,0xdf,0xc6,0xd2,0xf4,0xf8,0x79,0xd0,0xbf,0x3c,0x88,0xe2,0x71,0x1c,0x27,0xd1,0xc9,0xa1,0x70, + 0xf1,0x61,0xac,0x65,0x83,0x4c,0x2b,0xf2,0xbc,0x0f,0xd1,0x32,0xbc,0x3c,0xf1,0x8f,0x29,0xc7,0x79,0x00,0x73,0xbf,0xdf,0xc5, + 0x36,0xfa,0x6c,0x08,0xf4,0x88,0x2f,0xd1,0xdd,0x1f,0xef,0x82,0x07,0x7e,0x6a,0x94,0x61,0x24,0xe0,0xa1,0x54,0x5e,0x8b,0x7e, + 0xd6,0x54,0x3d,0x04,0xda,0xb7,0x8c,0xa8,0x1f,0x1f,0x16,0xa3,0x90,0xeb,0x31,0x2d,0x1a,0x11,0x16,0x57,0x23,0xa0,0x1a,0x2f, + 0x22,0x3f,0xbc,0xbe,0x74,0xce,0x1b,0xdd,0x88,0x43,0x03,0x14,0x15,0x0e,0x83,0x32,0x7f,0x27,0xba,0xfc,0xb7,0x04,0xf8,0xc3, + 0x0f,0x5e,0x56,0xe6,0xdf,0xad,0xa0,0xdf,0x6e,0x02,0x9d,0xe0,0x47,0x3c,0xb0,0x02,0x5b,0xe5,0xcb,0x26,0x3c,0x7f,0x31,0xfd, + 0x71,0x35,0xd3,0xe2,0x1f,0x4c,0x33,0x4a,0x5f,0xd3,0x8d,0xc9,0x91,0xd8,0x81,0x16,0x7c,0x9d,0xa9,0x2f,0x4b,0xc4,0x32,0x8e, + 0xe6,0x8f,0x9b,0xa4,0x14,0xbf,0x7f,0x1b,0x66,0xb8,0x67,0x4b,0x1c,0xef,0x46,0x14,0xf7,0xba,0x95,0xf2,0x7f,0x65,0xe2,0xa2, + 0xb9,0x2f,0xa6,0x62,0x1e,0x2d,0xb4,0xb4,0xf6,0xef,0x33,0xcd,0x04,0xb4,0x5a,0xf4,0x88,0x78,0x72,0x9e,0x71,0x44,0x0d,0xe3, + 0x3c,0x52,0x78,0x08,0xc5,0x3c,0x67,0x98,0x73,0x78,0x25,0x52,0xe0,0x2b,0xeb,0xe4,0x35,0xf7,0x02,0x39,0x09,0xc3,0x97,0xbd, + 0xf8,0x82,0x71,0xce,0xe2,0x87,0xb4,0x27,0x87,0xca,0xbf,0x42,0xd1,0x8c,0x45,0xd1,0xbc,0x1d,0x3e,0xf0,0xb6,0xbd,0x77,0x9c, + 0xe7,0x0f,0xf3,0x56,0x6c,0xe6,0x06,0xec,0xc7,0x76,0x5e,0x29,0x57,0xa5,0xa2,0x00,0xef,0x78,0x1b,0x41,0x52,0xca,0xc9,0xc6, + 0x2d,0x83,0xd2,0xc8,0x91,0x7c,0x16,0x9e,0xe2,0xc5,0xf5,0xa8,0x45,0x30,0xee,0x2c,0xd5,0xeb,0x55,0x33,0xb7,0xa2,0x12,0x37, + 0x6e,0x97,0x1a,0x55,0xac,0x9b,0xd0,0xaa,0x6f,0xf4,0xb4,0x97,0xc8,0x59,0xe5,0x8f,0x7a,0x95,0x2c,0xe7,0x79,0xa2,0x87,0x33, + 0xd2,0xc8,0xc7,0x10,0xbe,0x7a,0xbd,0x9f,0xb7,0x30,0x7f,0xff,0xca,0x4c,0x6f,0xd9,0x80,0x40,0xbc,0xb8,0x12,0x65,0xd2,0xca, + 0x57,0xae,0x80,0x07,0xff,0xd8,0xcc,0x8d,0xdc,0xc9,0x3b,0x31,0x21,0x10,0xc7,0xb8,0x11,0x45,0x38,0xcd,0xb7,0x2e,0xaa,0xc2, + 0x7a,0xe3,0x94,0xf1,0x5d,0x91,0xf8,0x71,0x89,0x94,0x71,0x1e,0x5a,0xf4,0x21,0xfe,0xab,0xdf,0x36,0x77,0x08,0x41,0x58,0x2f, + 0x9b,0x6c,0x25,0x8e,0x79,0x07,0xf8,0xb8,0x73,0x9b,0x2d,0x07,0x65,0x7c,0x50,0x85,0x59,0x76,0xf7,0x4d,0xc8,0xb6,0x12,0x7f, + 0x5c,0x27,0x37,0x8d,0xba,0xed,0xd1,0x49,0xd2,0x26,0x91,0xfa,0x84,0x0c,0x3b,0x3b,0xb8,0x59,0x9a,0x8c,0x0c,0xf7,0x2e,0x5d, + 0x68,0x8b,0xc1,0xb8,0x4a,0x93,0x50,0x8e,0x33,0x86,0xe5,0xa4,0xf6,0x14,0x0f,0xc7,0x2b,0x49,0xb6,0x46,0xde,0x6f,0x3f,0x84, + 0xd5,0x8e,0x60,0x0c,0x2b,0x77,0x8a,0x1e,0x03,0xcd,0x3f,0x62,0x9a,0x67,0xf1,0xfd,0x63,0xf1,0xd8,0xa1,0xde,0x3b,0x26,0x9f, + 0x3e,0xf9,0xc2,0x94,0x6a,0x8c,0xe2,0x81,0x77,0xdb,0x39,0x86,0xa3,0xf8,0x1d,0xfa,0x0f,0xb2,0xf5,0x04,0x9a,0x3a,0x0e,0x0a, + 0xad,0x32,0x4d,0x7f,0xbe,0x70,0x27,0xaf,0x46,0x33,0x1e,0xee,0x94,0x04,0x8e,0x53,0x3d,0x12,0x8f,0x5c,0x76,0xc1,0x6d,0x23, + 0x4c,0x64,0xea,0x5c,0xe9,0x31,0xda,0xd5,0x18,0xaa,0x8d,0x6a,0xe9,0x63,0x83,0xfe,0xd1,0x4c,0x0d,0x56,0xd9,0x1e,0xac,0xe6, + 0x4b,0xc7,0xb1,0x15,0x2b,0xb0,0x28,0x44,0xe6,0x06,0xb0,0xa6,0xfb,0x2f,0x63,0x32,0x0f,0x98,0xe6,0x29,0x5c,0x54,0x8c,0x02, + 0xfe,0x65,0x04,0xcf,0x3f,0xa9,0x28,0xc2,0xa2,0x79,0x96,0xd2,0x16,0x5e,0x85,0x5a,0xcb,0xdf,0xc5,0x21,0x7c,0x01,0x39,0xaf, + 0x60,0xba,0xec,0xa0,0x69,0xae,0xc3,0xf3,0xaf,0x15,0xe2,0x83,0xb9,0xc9,0xbc,0x49,0xbd,0x91,0x89,0xfd,0xfc,0xe8,0xb7,0x0d, + 0x68,0xb1,0x27,0xa1,0x14,0x39,0xd0,0xfe,0xaa,0x5c,0x86,0xf9,0x03,0xe7,0x35,0xfd,0xd0,0x14,0x72,0x39,0xd3,0xc0,0x4e,0xd3, + 0x5c,0x03,0xbe,0x24,0x03,0xeb,0x80,0xbb,0xd3,0x2d,0xea,0xb2,0x68,0x90,0xe5,0x13,0x82,0x9f,0x87,0xa5,0xda,0x78,0xb1,0x8b, + 0xa3,0xb9,0x8f,0x15,0xc5,0x5b,0x03,0x46,0xad,0xec,0x9b,0x23,0x31,0xe3,0xb5,0x6b,0x3b,0xa0,0xc9,0xf7,0x4a,0xa6,0x8f,0x2c, + 0xf2,0xe6,0xfb,0x75,0x38,0x0e,0x5f,0x74,0x22,0x03,0x3d,0x6c,0xa7,0x81,0x9b,0x98,0x9e,0xdc,0x66,0xf5,0x45,0x3e,0x62,0x55, + 0x22,0x8c,0x76,0x78,0xf3,0x56,0x2e,0x57,0xa1,0x68,0x46,0x1f,0x46,0xf8,0x7b,0x4d,0xbb,0xac,0x9c,0xdb,0xb7,0x98,0xe6,0xe2, + 0x87,0xb2,0x70,0x10,0x31,0xa8,0xc0,0x31,0xdc,0x6d,0xa7,0x87,0xc7,0x40,0x8b,0x87,0x4c,0x33,0x14,0xa7,0xf0,0xf6,0x2e,0xbc, + 0xb0,0x1c,0x35,0xbc,0x06,0x87,0xf5,0x1f,0x99,0xdc,0x8b,0x72,0xc7,0x71,0xbe,0x84,0xc6,0xc6,0x41,0xa3,0xa6,0xf5,0xe1,0x6d, + 0xc9,0xfc,0x97,0x8b,0xfb,0x91,0x8e,0x3e,0xbc,0x53,0x82,0xe9,0x5e,0xba,0x40,0xfd,0xea,0x58,0xcd,0x6b,0x64,0x25,0x7f,0xaa, + 0x43,0x90,0xcc,0x13,0x7f,0x4d,0xe3,0x08,0xf6,0xc3,0x97,0x7b,0xe1,0xa3,0xbe,0x1b,0x45,0x38,0x7b,0xdb,0xfc,0xa1,0xe9,0x5d, + 0x13,0x74,0xce,0xea,0x11,0x86,0x6c,0x34,0x19,0xbf,0xa6,0xa0,0x10,0x07,0x8d,0x6f,0x34,0x3d,0x69,0xb5,0xee,0x1b,0x33,0xcd, + 0x5d,0xfc,0x46,0x1e,0x07,0x62,0x05,0x96,0x7e,0xfb,0xb3,0x9d,0x4a,0x4d,0x50,0xf3,0xb0,0x69,0x96,0x30,0xfe,0xfc,0xa3,0x01, + 0xe5,0x6a,0xbb,0x04,0x22,0x94,0x27,0xbe,0xb6,0x30,0x04,0x45,0xda,0xa0,0x07,0x4c,0xd0,0xb2,0x63,0xa6,0x99,0x8b,0xe9,0x9d, + 0xe2,0xab,0x8a,0xf9,0x65,0x97,0x3a,0x83,0xf7,0xc3,0x70,0x31,0xdd,0xe2,0x64,0x3a,0x78,0xce,0x34,0xd3,0x25,0x17,0x35,0xce, + 0x74,0xc4,0xba,0xcd,0x28,0x51,0xe7,0xa5,0x04,0xcd,0xc6,0x39,0x47,0x39,0x1f,0xe3,0xdf,0xfb,0x31,0x6d,0x51,0x14,0x27,0x71, + 0x37,0xbc,0xd1,0xab,0xf6,0xda,0xf3,0x78,0x85,0x1e,0x90,0x95,0x6a,0x2f,0x62,0x6c,0xbf,0x1f,0x71,0x74,0xa8,0x0b,0x69,0x9c, + 0x98,0xb6,0x1f,0xff,0x7f,0x13,0xe3,0xf1,0x15,0xbc,0xa4,0x9d,0x3f,0xb9,0x26,0x10,0xe1,0x92,0xa6,0x06,0xe4,0xb1,0x2c,0xa4, + 0xe0,0x81,0x52,0xa4,0xa3,0x08,0x01,0xf8,0xa8,0x8e,0x7d,0x30,0xc8,0x3d,0x72,0x46,0x16,0xfb,0xb0,0xa6,0x60,0x61,0x3a,0x7a, + 0xca,0x34,0xaf,0x9c,0xbf,0x51,0x02,0xb9,0x96,0xaf,0xf9,0x65,0x17,0xe6,0xd1,0x5f,0x8f,0x31,0x7d,0x7b,0xd2,0x34,0x63,0x71, + 0x0c,0xdb,0x54,0x34,0x3a,0x24,0x0d,0x67,0x24,0x47,0xb6,0xaa,0x7d,0xb6,0x03,0x50,0x1f,0xb9,0xf0,0xe5,0xe5,0x83,0x6a,0xd2, + 0x76,0x04,0x49,0x90,0xbd,0x05,0x5e,0xc6,0x4b,0xff,0xf0,0x42,0x17,0xdc,0x0f,0x20,0x8b,0x5d,0x3c,0xb9,0x1b,0x92,0xc3,0x35, + 0xec,0xab,0x1f,0x1a,0x50,0x5e,0x1c,0xae,0xb6,0xa8,0xcb,0x83,0x24,0xd6,0xd9,0xa2,0x77,0x18,0x9b,0x79,0x9b,0xe3,0xd5,0x7c, + 0xf9,0x25,0x51,0x05,0x60,0xbd,0xee,0x95,0xc3,0x6a,0xb7,0x2e,0xb3,0x55,0x1a,0xa7,0x91,0xa0,0xba,0xf8,0x04,0x1f,0xb0,0xe7, + 0xa3,0x06,0x29,0x98,0x3a,0x8c,0xaf,0x2b,0xb0,0x5c,0x1d,0xe3,0x35,0xe8,0x44,0xa5,0x34,0xdb,0xd3,0x75,0x82,0x6e,0x34,0x7e, + 0x5b,0xa5,0xbf,0xe8,0x90,0x60,0x09,0x55,0x71,0xa8,0x32,0x7c,0xed,0xb1,0xbc,0xd2,0x88,0xc3,0x11,0xb4,0xf0,0x73,0x91,0xec, + 0xcb,0x43,0x32,0xfb,0xd1,0x76,0x39,0xe5,0xf4,0xb5,0x3d,0xee,0x8f,0x74,0xbc,0xbb,0xcc,0x51,0xcb,0x63,0x8e,0xed,0x2a,0xde, + 0x3d,0x01,0xfd,0x86,0x87,0x8a,0x40,0x3b,0x9e,0x38,0x8f,0x76,0xbe,0x25,0x5d,0xbf,0x5a,0xc4,0xfe,0x18,0xc2,0xdc,0x1e,0x4b, + 0xba,0x81,0xef,0xae,0x50,0x69,0xfa,0x8e,0x72,0x49,0x62,0x4f,0x89,0xe6,0xd9,0x1f,0xa6,0xab,0x20,0xfe,0xf8,0xa1,0x0a,0x8c, + 0x21,0x5f,0xae,0x2d,0xe3,0x7c,0xde,0xc3,0xf9,0x6a,0xf6,0x72,0x4e,0xe1,0x54,0x74,0x4a,0x3b,0xd6,0x71,0x0f,0x3c,0x54,0xaa, + 0xe1,0xa1,0x0f,0xa9,0x5f,0x52,0x31,0x8a,0x15,0xaa,0x11,0xcd,0xb6,0x06,0x74,0xaa,0x66,0x55,0xca,0x0b,0x76,0x1b,0x0d,0x28, + 0x44,0x34,0x3e,0x6b,0x66,0x6b,0x2b,0x9d,0x79,0xa8,0xc3,0x65,0xbe,0xec,0x21,0x06,0xed,0x33,0x98,0x6e,0xef,0x30,0xcd,0x5f, + 0xb7,0x61,0x19,0x9e,0x5a,0x7c,0x5a,0xd5,0xe3,0x4b,0x4b,0x84,0xed,0x34,0xc3,0xc6,0x74,0xb6,0xdd,0x34,0x13,0x91,0x8d,0x52, + 0x9c,0x54,0xa1,0xd2,0xa8,0x9f,0x99,0xfa,0xe9,0x3e,0xc9,0xe4,0x6d,0xfc,0xee,0x21,0xb6,0x56,0xc2,0xc1,0xf4,0x59,0x9f,0x69, + 0x2e,0xf9,0x74,0x87,0xf2,0xe4,0x2b,0x7f,0x1a,0x90,0x20,0x76,0x92,0xdf,0x04,0xa6,0xda,0x56,0xd3,0x9c,0x9d,0xc9,0x1d,0xec, + 0xa5,0x06,0xf1,0x73,0x03,0x56,0xe3,0xa6,0x6a,0x5d,0x80,0xab,0x02,0xf0,0xd4,0xa5,0xb5,0xf2,0xd9,0x0d,0x27,0x75,0x84,0x9a, + 0x40,0xef,0x5f,0xc0,0xb4,0xb1,0xc3,0xca,0x74,0x39,0x5c,0x08,0x80,0x9f,0x4c,0xdb,0xa4,0x12,0x94,0xbc,0x95,0xc5,0x97,0xbd, + 0x76,0x92,0x23,0x78,0x14,0xa1,0xec,0x3c,0xc8,0x69,0xca,0x13,0x57,0x1c,0xe7,0x7c,0xa5,0xa9,0xd5,0x9d,0x69,0x83,0xf5,0x3d, + 0x5f,0x9c,0xf2,0x8c,0x2f,0x16,0x3c,0xf8,0x6e,0x08,0x14,0x5d,0x62,0x75,0x49,0x3a,0x63,0x9a,0xef,0x3e,0x57,0x8b,0x0d,0xf8, + 0x7d,0x0c,0x9a,0xa6,0x59,0xe8,0x73,0x4b,0xe1,0xcb,0x4b,0x1f,0x4f,0xc1,0x7b,0xf7,0x3c,0x57,0x02,0x45,0x29,0x16,0x3b,0x6a, + 0xb1,0x87,0x5f,0x2b,0x84,0x3f,0xbc,0xd0,0x04,0x83,0x1e,0xbf,0x90,0x29,0x65,0xc4,0x34,0xcb,0xa0,0x9e,0x0c,0xe6,0xdf,0x5e, + 0xab,0xc5,0x36,0x4c,0x4f,0x86,0x93,0xea,0x2e,0x62,0xfa,0xd1,0xda,0xab,0x71,0xdb,0x2a,0xf8,0xab,0x73,0x52,0x2c,0x6d,0x48, + 0x96,0x7f,0xd0,0x2f,0xcf,0xb9,0xf0,0x53,0x11,0x2a,0xd5,0x01,0xfc,0x98,0x2d,0x27,0x31,0xbf,0x1b,0x06,0x3d,0x72,0x31,0xd3, + 0xfe,0x21,0xd3,0x2c,0x70,0xfe,0xd9,0xea,0x96,0xc8,0x6b,0xdd,0x36,0x61,0x9f,0x73,0xb7,0x5c,0x1b,0x09,0x27,0xdd,0x79,0x3d, + 0x53,0x9e,0xb5,0x6b,0x2d,0xe2,0xc3,0x01,0x6e,0x77,0xf4,0x72,0xa0,0xed,0xac,0x34,0xeb,0x1c,0xf1,0xe0,0x0d,0xb6,0x79,0x9e, + 0x12,0x20,0x8f,0xd5,0x61,0x95,0xd4,0xe8,0x41,0xc9,0x15,0x83,0x42,0x6e,0x60,0x9a,0x6a,0xa5,0x37,0xa8,0xdb,0xa6,0xff,0x71, + 0x1a,0xcd,0xe8,0xc5,0x23,0x7b,0x91,0x2b,0x8a,0x16,0x11,0xd3,0x11,0x27,0xd1,0xd3,0xd7,0x2c,0xb9,0xe5,0xc6,0xa9,0x9a,0x76, + 0xfd,0xff,0x9a,0xaf,0x23,0xfa,0xf9,0xee,0xdb,0x0f,0x72,0x30,0x0f,0xf0,0xd7,0x11,0x5a,0x53,0xfc,0xb5,0x4c,0xd7,0xdf,0x4e, + 0xe4,0x42,0x32,0x7a,0xd1,0xcc,0x93,0xde,0x0f,0xc2,0xfb,0x33,0x68,0x29,0x31,0x3d,0xe9,0x45,0x34,0xce,0x33,0xd7,0x49,0x12, + 0x2c,0xef,0x1b,0x0e,0xa0,0x89,0xf7,0x49,0xa5,0xbe,0x7d,0x7e,0x18,0x1f,0x44,0x10,0x5e,0x0c,0x43,0x31,0x8a,0x90,0xad,0xb7, + 0x19,0x3e,0xfa,0xc0,0x45,0x11,0x6a,0xd6,0xdc,0x1f,0xff,0xea,0x47,0x91,0x71,0x42,0x2a,0x31,0x2a,0xd9,0x68,0x57,0xc5,0xf8, + 0xe8,0xce,0x14,0xfc,0x83,0xab,0xf6,0x60,0x23,0xdf,0xb8,0x8d,0x8f,0x20,0x84,0xbf,0xce,0xc7,0x72,0xe3,0x24,0x3e,0x6f,0x47, + 0x1a,0xbf,0x35,0x29,0x87,0x03,0xb8,0x92,0xdd,0xbd,0x75,0xb8,0x78,0x70,0xb7,0x24,0x18,0xb1,0xfc,0x42,0x30,0xa2,0x70,0xef, + 0x6e,0x1c,0x60,0x7f,0x15,0xcf,0x59,0x68,0x41,0x18,0xe6,0x8d,0x48,0x1e,0xab,0xeb,0x72,0x79,0x13,0x1e,0x36,0x79,0x33,0x4a, + 0x54,0x88,0xfc,0xb0,0x81,0xc3,0x38,0x87,0x2f,0x3f,0xcb,0x59,0x5c,0xc6,0xfb,0xf9,0xd5,0x2d,0xa8,0xe6,0x21,0x95,0x23,0xd3, + 0xea,0x51,0x2d,0xf7,0xde,0xda,0x8a,0x42,0xbb,0xbf,0xf4,0x22,0x5c,0x2a,0xa5,0x14,0x8d,0xf2,0xf5,0x11,0x04,0x49,0x27,0x02, + 0x60,0xa7,0x5b,0x47,0x41,0xad,0x7f,0x12,0xc5,0x62,0xee,0xdb,0x8b,0xbe,0x9b,0x37,0xe1,0xdf,0xb2,0x99,0xef,0x98,0x15,0x22, + 0x1d,0x68,0x81,0xa2,0x17,0xc7,0x40,0x19,0x7f,0x11,0xad,0xe2,0x97,0x0a,0xe5,0xb3,0x78,0x14,0xc1,0xa0,0x99,0xe3,0xa0,0x89, + 0x3f,0x11,0x9d,0x60,0xf5,0xfd,0x7f,0xd1,0x88,0x18,0xcb,0x7e,0x0d,0xee,0x1e,0x81,0xa6,0x45,0x26,0x68,0x49,0x38,0xd1,0xbb, + 0x93,0x7f,0xfd,0x6d,0x33,0xde,0xb9,0xca,0x65,0xb1,0x50,0x8b,0x6d,0xb1,0xd2,0xf3,0x71,0xb9,0xfc,0x30,0xca,0x1e,0xc6,0x3e, + 0xb4,0x18,0xf3,0x28,0xf7,0x4e,0xa6,0xd8,0x44,0xa2,0xdd,0x32,0xeb,0xe1,0x2a,0xb7,0x39,0xc7,0x10,0xa3,0x4d,0xe5,0x2d,0x67, + 0x6c,0xd7,0xd6,0x68,0x17,0x46,0xd4,0x29,0x09,0xe1,0x13,0x48,0x97,0x58,0x94,0xe9,0x32,0xed,0x85,0x64,0x1e,0xe2,0x27,0x83, + 0xa4,0x1e,0x7b,0x6c,0x4f,0x6e,0xd3,0xf1,0x6a,0x4c,0x17,0x71,0x87,0x6d,0x5e,0x1d,0x9f,0x97,0x68,0x5d,0x23,0x7f,0x77,0x71, + 0x2e,0x1f,0x42,0x98,0xae,0x50,0xb1,0xbc,0x8a,0x23,0xd8,0x85,0x1b,0x6e,0x1d,0xd5,0x71,0x6a,0xbb,0x6a,0x40,0x1a,0xd6,0xf2, + 0xa5,0x3e,0xd8,0xc3,0x5d,0xc8,0x86,0x75,0x63,0xec,0x87,0x32,0x84,0x49,0x0e,0xef,0x90,0xbb,0xcf,0x60,0x10,0x1f,0x9f,0x53, + 0x7d,0x52,0x24,0x6b,0x90,0x80,0x37,0x32,0xd4,0x41,0x2c,0xea,0xe3,0xbd,0x88,0xe5,0xe7,0x97,0x1b,0x55,0xb6,0x00,0xb7,0x15, + 0xd8,0x61,0x4b,0xc4,0x6e,0x39,0x8b,0xab,0xfd,0x71,0x46,0x26,0xf8,0xc1,0x1f,0xb7,0x9f,0x40,0x18,0xae,0x78,0xec,0xa8,0x2a, + 0xc1,0x75,0xa7,0xe0,0x85,0x12,0x3e,0xa5,0x0a,0x75,0x9b,0x3c,0xda,0x04,0x97,0x3d,0x95,0x37,0x19,0x65,0x8e,0x12,0x59,0x85, + 0x53,0xe2,0x0d,0x3f,0x1d,0x68,0x9b,0xb8,0x4e,0x25,0x89,0x27,0xd7,0x22,0x54,0xba,0xf4,0x75,0x4d,0x2a,0x90,0x1b,0x6c,0x8b, + 0x73,0xd5,0x20,0xaf,0xb2,0x6f,0x42,0x8b,0xf2,0xe1,0x41,0x4c,0xaa,0xd2,0xe9,0xa8,0x93,0x5a,0xd4,0x61,0x62,0x19,0x1f,0xb2, + 0x65,0x1a,0x59,0x72,0xce,0x56,0x81,0x1d,0x1c,0x6e,0xd9,0xbf,0x3b,0x75,0xb3,0x6a,0x85,0x2f,0x6f,0xd6,0x77,0xad,0xbc,0x60, + 0xa7,0xa3,0xdb,0x88,0x34,0x76,0x4a,0x29,0x0a,0xf4,0x07,0x8d,0xd8,0x85,0x52,0xc7,0xbc,0x23,0x97,0x1c,0x97,0x42,0x3c,0x3c, + 0xdb,0x8b,0xb7,0xc2,0x0b,0x3b,0xf5,0xfd,0xd7,0x53,0x8d,0x3b,0x53,0xa5,0x0f,0xd1,0x3a,0x35,0xf9,0xb9,0x41,0xed,0x81,0xc7, + 0xab,0x74,0xa6,0xf8,0xc8,0x61,0xbd,0x45,0xc2,0x25,0x48,0xff,0xb5,0x5e,0xe7,0x72,0x87,0x0a,0xb0,0x37,0xf0,0x7a,0xec,0xe2, + 0xcb,0x7c,0x11,0xc9,0xd9,0x72,0x83,0x0f,0x62,0x38,0x0d,0xd5,0x52,0x85,0x17,0x2e,0xda,0x8b,0x73,0x7a,0x3d,0x76,0x3b,0x36, + 0xeb,0x28,0x6e,0x56,0x79,0x5c,0x0e,0x6f,0xb5,0x8b,0xfd,0x8d,0x0c,0xfc,0xd6,0x8d,0x97,0x1b,0xb1,0x4e,0x57,0xc2,0x83,0x2f, + 0x5b,0xa7,0x0e,0xc1,0xa0,0x2c,0xc5,0xb4,0xc6,0x9b,0xa8,0x95,0x67,0x66,0xc2,0x0b,0xb9,0xfc,0x18,0x56,0xe3,0x07,0xad,0xe8, + 0xa4,0x66,0x7a,0xd2,0xf2,0xe8,0xc0,0xc4,0x14,0xe4,0xe0,0x99,0xef,0x35,0x8d,0xd8,0x99,0xbe,0x08,0x22,0x5a,0xce,0x0f,0xcf, + 0x3e,0x8d,0x0d,0xf8,0x68,0x35,0x42,0x58,0x53,0xa5,0x65,0xbc,0xc1,0x97,0x68,0x1f,0x7e,0x0d,0xc0,0x76,0x24,0xf0,0x0d,0x8f, + 0x2d,0xb4,0xd3,0xe5,0x17,0x32,0xfd,0xc7,0x87,0xa8,0x01,0x99,0x28,0x81,0xfb,0x9f,0x59,0xf8,0x37,0xb7,0x72,0x2d,0x07,0x63, + 0x1f,0x92,0x79,0x52,0x13,0xfe,0x07,0x0d,0x55,0x03,0x7c,0x5c,0xd9,0xdb,0x3e,0xcf,0xfb,0x9e,0x73,0xef,0xcc,0x74,0xb2,0xb6, + 0x6d,0xdb,0xd5,0xd7,0x66,0xfb,0xd7,0xda,0xb6,0x6d,0x75,0x9b,0xc6,0x4e,0x26,0x76,0xd2,0x64,0x63,0x63,0x8b,0xd8,0xde,0x1a, + 0x69,0xd4,0x34,0x8d,0x8a,0x89,0xdd,0xe4,0x7e,0xf3,0xf3,0x83,0x8b,0xd7,0x77,0x08,0x71,0x0e,0x89,0x3c,0x1f,0x21,0x2a,0x78, + 0x17,0x36,0x71,0x0d,0x15,0xa0,0x82,0x7f,0x3d,0x0d,0xbb,0xf9,0xa8,0xf9,0x96,0x20,0x7d,0x0e,0x63,0x54,0xa5,0x47,0xd2,0x15, + 0x19,0x38,0xa1,0x2d,0xc9,0x32,0x94,0xe0,0x8e,0x45,0x6a,0xe1,0x34,0xd4,0xe0,0x9a,0x03,0x74,0x92,0xda,0xac,0xa1,0x72,0x42, + 0x9e,0xe6,0x39,0x1e,0x56,0x15,0xfa,0x32,0xef,0xa0,0x74,0xad,0x50,0xce,0xa8,0x03,0xbc,0xc5,0xf4,0x50,0x26,0xfb,0xe2,0x1f, + 0x9e,0x67,0x37,0xb4,0x51,0x0b,0xfe,0x41,0x17,0xe7,0x20,0x45,0xbe,0x18,0x4e,0x53,0xf2,0x30,0x6d,0xac,0xa2,0x87,0xff,0xa6, + 0x00,0xf8,0xe0,0x18,0xaf,0xfb,0xb0,0x53,0xfa,0xe1,0x8f,0x19,0xea,0x81,0x9d,0x7e,0xd8,0x87,0x7d,0xb8,0xa1,0x98,0x5f,0xfa, + 0x4f,0x9c,0xb6,0x1b,0x34,0x88,0x00,0x9a,0xe3,0x26,0xe9,0x4d,0x16,0xf1,0xf1,0x65,0x24,0x2a,0x42,0x84,0x38,0x85,0x33,0x6a, + 0x10,0x4d,0x11,0xb8,0xc7,0x94,0x8a,0xd3,0xdc,0xc5,0xef,0xf5,0xf2,0x04,0xce,0x8d,0x41,0x2d,0x15,0x50,0x32,0xa4,0xa8,0xba, + 0x8a,0x44,0x9a,0xa7,0x10,0x7f,0x6e,0xb8,0x35,0x13,0xd9,0x78,0x4b,0x8a,0xd5,0xd7,0x90,0xb8,0xca,0xc5,0xc1,0xf8,0xa0,0x06, + 0x8f,0xaf,0xfe,0xf7,0xdb,0xe2,0xb7,0x8b,0x48,0xbc,0xb0,0x57,0x88,0x6d,0xd2,0x9d,0xd2,0xf9,0xf6,0x45,0x4a,0x82,0x81,0x72, + 0xda,0x29,0x0d,0xac,0x59,0x3d,0x66,0xf9,0xbe,0x47,0x4e,0xc1,0x91,0x08,0xca,0xa4,0x0f,0x9f,0x8d,0xa2,0x25,0xd9,0x2e,0x6d, + 0x7c,0x49,0x0a,0x27,0xf2,0xfa,0x65,0xd3,0x11,0xf3,0x12,0xb6,0xe9,0x1b,0x97,0x55,0x04,0xef,0xa2,0x6e,0xce,0x54,0x05,0xdc, + 0x65,0xe9,0x96,0x0f,0x75,0x60,0x3b,0xef,0xa6,0x0c,0x65,0x43,0x95,0x36,0xca,0xe7,0xd7,0xca,0x3e,0xf4,0xa3,0x46,0xb9,0xc8, + 0x13,0x70,0x95,0xfd,0x5a,0x87,0xdc,0xaa,0x0d,0x59,0x5f,0x59,0xe4,0x1f,0xcb,0xb5,0x62,0xbc,0x53,0x4b,0xfb,0xe9,0xf3,0x69, + 0x99,0xc0,0xa5,0x26,0x1f,0x14,0xa1,0x88,0x96,0xa8,0x1b,0xa5,0xaa,0x71,0x45,0x9e,0x69,0x48,0x8d,0xea,0xa5,0x9a,0xaf,0x9a, + 0x64,0x57,0x53,0x84,0x25,0x63,0x45,0x9f,0x93,0xbf,0x65,0xb7,0x69,0x54,0xef,0x40,0x3f,0x85,0xc9,0x01,0x04,0x6a,0x25,0xa6, + 0x4a,0x35,0x22,0xab,0xcf,0x76,0x37,0x27,0x3b,0x4d,0x72,0x3d,0xf5,0xc0,0x9b,0x2e,0x2d,0xa1,0x14,0x64,0x68,0x67,0x58,0x7b, + 0xb4,0xfd,0xaa,0x84,0x13,0x20,0x52,0x68,0x82,0x8a,0xf8,0xee,0x79,0xf3,0x88,0xd9,0x45,0x7f,0x6c,0xc1,0xe1,0xd9,0x09,0x6f, + 0xde,0x8e,0x0f,0x06,0xe8,0x81,0x52,0x3e,0x85,0x4a,0x3d,0x47,0xf7,0xc5,0x08,0x12,0x51,0x2f,0xbf,0x59,0xd2,0x7a,0x95,0x3b, + 0xb5,0xf3,0x7e,0x2e,0xd0,0x3a,0x68,0x91,0x66,0x29,0x8e,0x4b,0x91,0xa4,0x9e,0x6a,0x44,0x23,0xf6,0xcb,0x7e,0x5c,0xef,0xa2, + 0xee,0x4d,0x43,0x33,0xd4,0xfd,0xad,0x14,0xa0,0xcd,0xa2,0xc2,0xf4,0x97,0x56,0x27,0xc7,0xf5,0xc8,0x15,0xde,0x67,0xa4,0x22, + 0x8f,0xbf,0x9c,0x97,0xde,0xe8,0xb7,0x7c,0xfe,0xda,0x20,0x5e,0x3d,0xbf,0x1d,0x52,0x74,0x38,0xea,0xf0,0x4e,0x8a,0x10,0xef, + 0xd9,0xb1,0x8c,0xf5,0x51,0x28,0x22,0x25,0x3a,0x2f,0x24,0xf1,0xd8,0x41,0x21,0x66,0xd1,0x41,0x69,0xea,0x91,0x42,0x69,0x23, + 0x3b,0x9d,0xa1,0x8b,0xfd,0x97,0x90,0xb8,0xdf,0xc1,0xdb,0xe4,0x0f,0xcd,0xfa,0x80,0x72,0x95,0x29,0xdc,0xca,0xc9,0xc8,0x57, + 0xd9,0xda,0x21,0xb5,0x13,0x6f,0x8b,0x8b,0xa7,0x21,0xbe,0xbb,0x02,0xe2,0xf6,0x3f,0x6d,0xca,0xdc,0x25,0x03,0x71,0x57,0x1c, + 0xe6,0x88,0xde,0x70,0x87,0xbf,0x9e,0x45,0x75,0xda,0xed,0xe9,0x5c,0x89,0x5b,0xfc,0x61,0x58,0xf7,0x52,0x85,0x53,0x35,0x3c, + 0x68,0x1a,0xc8,0x20,0x03,0x21,0xd8,0xaa,0x2e,0x3e,0x78,0x76,0x83,0x8a,0xc2,0xcd,0x35,0xe7,0x24,0x5b,0x62,0xd9,0x0f,0x96, + 0x4d,0x94,0x0f,0xe7,0x19,0xee,0xa7,0xbd,0xe6,0x08,0x24,0xe2,0x97,0x54,0x3e,0x7b,0xd8,0x5c,0xa0,0x07,0x58,0xeb,0xd9,0x83, + 0xcc,0x85,0x08,0x85,0x4d,0xe6,0xf1,0x49,0xbe,0xa9,0x4d,0x06,0x50,0xbe,0xea,0x92,0x9b,0xe9,0xd9,0xc7,0xf7,0xa1,0x8a,0x5b, + 0xe4,0x3e,0xed,0x6f,0x99,0x4d,0xa5,0x14,0xa0,0xaa,0xa9,0xcb,0xd4,0x41,0x27,0xcf,0x7c,0x63,0x59,0x6e,0xa2,0x42,0x53,0x05, + 0x52,0x4d,0xe7,0xb9,0x9d,0x15,0xc1,0x63,0xd6,0x12,0xf9,0x7f,0x4f,0xba,0xd2,0xf7,0xd9,0x7a,0x03,0x22,0xb4,0xef,0xdd,0x28, + 0x96,0xa6,0xc8,0x0f,0x0d,0x72,0xf5,0x32,0xbb,0xe1,0xb0,0x36,0x4a,0x01,0xd6,0x37,0xab,0x65,0x22,0x3f,0x34,0x41,0x07,0x95, + 0x1b,0x0a,0xe5,0x9b,0xf1,0x9c,0x4b,0x99,0xea,0xf9,0x69,0xd3,0xfa,0x71,0xed,0x8f,0x75,0xff,0x50,0xa4,0xde,0x46,0x29,0x4e, + 0x6a,0xd8,0x5c,0x86,0x4a,0xbc,0x78,0x6e,0x2e,0x5c,0xd4,0x69,0x6c,0xa3,0xb7,0x5b,0xce,0xdd,0x4b,0x3d,0x17,0xdc,0x7e,0xf4, + 0x16,0x83,0xaf,0xdd,0x8a,0xc9,0xf3,0x5e,0xcf,0x5b,0x11,0x4c,0x5d,0x32,0x0d,0x63,0xa6,0x4c,0x6c,0xbe,0x6c,0xfd,0x6e,0xde, + 0x4f,0xad,0xfa,0x00,0xed,0x87,0xa8,0xe2,0xcd,0x9c,0xa3,0xe7,0xa3,0x1c,0xe5,0xb4,0x03,0xaf,0x89,0x04,0x94,0xaa,0x0f,0x72, + 0xd4,0x93,0xe7,0x95,0x23,0x0d,0x31,0x08,0xe0,0x6f,0xa4,0x50,0xe7,0x91,0xd8,0x71,0x15,0xc4,0x5e,0x6b,0xaa,0x0a,0xb5,0xd4, + 0x53,0x15,0xf5,0x92,0x12,0x4e,0xe7,0x92,0xb0,0xdd,0x00,0xd1,0xa7,0xdf,0x68,0xe7,0x00,0x3d,0x5b,0xef,0xe6,0xad,0xec,0xc9, + 0xba,0x18,0x76,0x54,0xe9,0xf9,0x0b,0x21,0x46,0x39,0x03,0x8b,0xfc,0xb3,0x41,0xf7,0x87,0x70,0x28,0x8e,0xae,0xf8,0x3e,0x9e, + 0x12,0xf0,0x88,0x08,0x79,0x80,0x44,0xce,0xdb,0x86,0x71,0x84,0xaf,0x29,0x36,0x2d,0xf1,0x11,0x3d,0x84,0xb2,0xb5,0x4c,0x2c, + 0xa0,0x08,0xe7,0x74,0xc1,0x87,0xdc,0x10,0xae,0x9e,0xf4,0xa3,0xd7,0xfe,0xa1,0x1d,0x34,0xc3,0x0f,0x56,0x61,0x07,0x4e,0x72, + 0x18,0x62,0xb1,0x15,0xef,0x0f,0x9d,0xfb,0xc9,0x53,0x17,0xdb,0x51,0x8a,0x00,0x3c,0x51,0x81,0x25,0xaa,0x96,0xf5,0x18,0x97, + 0xb7,0xd4,0x9a,0xcb,0xe9,0xdf,0x39,0xa8,0xc1,0x07,0x6d,0x38,0x8d,0xeb,0xee,0x0b,0x47,0x2d,0xa7,0x60,0x43,0x16,0x65,0x60, + 0x43,0x11,0x1d,0xe3,0xf7,0x03,0xa9,0x1d,0xd5,0x32,0x10,0x4f,0xf5,0x52,0x13,0x12,0x31,0x8a,0x30,0x4e,0x52,0xdd,0x74,0x41, + 0x96,0x23,0xe6,0x49,0xfd,0xdf,0xef,0x1c,0xa0,0x5d,0x7c,0xcb,0xb5,0xff,0x8b,0x53,0x77,0xb9,0x68,0x87,0xd5,0x56,0x5e,0x56, + 0xde,0x98,0x90,0x5d,0xb4,0x1f,0x15,0x28,0xa1,0x77,0xc3,0x69,0x92,0xe2,0xb9,0x12,0xef,0x69,0x47,0x29,0x4f,0x3f,0x69,0x1e, + 0x45,0xa1,0x66,0xc3,0x71,0xe9,0xa5,0x06,0xa0,0x44,0xd0,0xfd,0x24,0xea,0xdf,0x31,0x0c,0xe7,0x64,0xfc,0x7b,0x17,0x6c,0x78, + 0x9f,0x02,0xa1,0x89,0xd8,0x95,0x24,0x7e,0x7b,0xd1,0x30,0xde,0xd8,0x89,0x12,0xa2,0x77,0x7c,0x30,0x48,0xf9,0x14,0x84,0x13, + 0x90,0xe2,0x84,0x43,0xba,0xf0,0x25,0xc3,0x08,0xa3,0x78,0x7c,0x9b,0x82,0x14,0x54,0x93,0x12,0x1f,0xae,0x25,0xe1,0xff,0xae, + 0x61,0xa4,0xd3,0x3c,0x7c,0xf1,0x85,0xa1,0x52,0x71,0x4c,0xd6,0x40,0x09,0xaf,0x35,0x24,0x6e,0x79,0xc5,0x30,0x42,0x60,0x7e, + 0x71,0x0a,0x35,0xf8,0xc1,0x15,0xdf,0x49,0xe1,0xe4,0xb0,0x97,0x3b,0x3e,0xfa,0x4e,0x0c,0xfc,0x11,0x84,0x31,0x58,0xdf,0x16, + 0x23,0xce,0x24,0x7e,0xf8,0xdc,0x30,0x5c,0xcf,0xfd,0xc9,0x55,0x73,0x04,0xac,0x6f,0x97,0x25,0xa6,0x59,0xcd,0x30,0xff,0x39, + 0x86,0x76,0x72,0xa3,0xcf,0xaf,0xa9,0xe6,0x34,0x24,0xa1,0x9f,0xf3,0x65,0x1e,0x56,0xf9,0x93,0x27,0x12,0xe8,0x00,0x8f,0xd3, + 0x79,0x49,0x3c,0x05,0x37,0xd8,0x11,0x8f,0xdb,0x5c,0x91,0x4d,0xa7,0xc8,0xda,0x8a,0x64,0x6a,0xe7,0x11,0x87,0xb7,0x86,0x36, + 0xb3,0xbe,0x85,0x17,0xb8,0x99,0x97,0xa9,0x5b,0xef,0xe0,0x68,0x19,0x8c,0x01,0xd3,0x2c,0xd7,0xca,0x0e,0x4e,0x92,0x93,0x8e, + 0x02,0xc4,0xc2,0xd5,0xda,0xa2,0x22,0xe4,0xc5,0xfe,0x72,0x10,0x81,0x7c,0x89,0x3b,0x8d,0x60,0x2f,0xdd,0x93,0xcc,0xcb,0x14, + 0xc6,0x15,0x30,0xd4,0xbb,0x1d,0xec,0x41,0xfd,0xb4,0xcc,0x07,0xb5,0x48,0xed,0xb5,0x29,0xb2,0x23,0x56,0x33,0xd0,0x20,0xfd, + 0xe5,0x1e,0xd5,0xa7,0x1f,0xd6,0xea,0x70,0x75,0x0f,0xc2,0xd1,0x83,0x3c,0x3c,0x39,0x46,0xcf,0x7d,0x5c,0x84,0x87,0x16,0xe5, + 0x22,0x55,0xab,0xdd,0x48,0x56,0x8f,0xe4,0x73,0x85,0xec,0x41,0x97,0xbc,0xd9,0x4b,0x26,0x69,0x29,0xe6,0xbd,0x54,0x2a,0x5f, + 0x89,0x93,0x27,0xa8,0x52,0xdb,0xc9,0x17,0xcd,0xca,0xdd,0xf0,0x94,0xba,0x1b,0x79,0xa9,0x09,0xa5,0xb5,0x61,0x46,0xd2,0x71, + 0x6d,0x1b,0x75,0xc9,0x62,0x99,0x2f,0x13,0x30,0xa5,0xa2,0xe9,0x00,0x12,0xe0,0xa1,0x5c,0x1d,0x71,0x9c,0x35,0xc2,0xdb,0xd5, + 0x80,0x8a,0xe2,0x01,0xad,0xd5,0x9a,0xa4,0x6d,0x35,0x9d,0x32,0xc7,0xc3,0x45,0xf5,0x93,0x1d,0x09,0x14,0x05,0x4f,0xb5,0x47, + 0x06,0xf3,0xb7,0x65,0x68,0x40,0x1d,0x75,0x23,0x00,0xd7,0xb4,0xf3,0x61,0x73,0x88,0x8a,0x55,0x7b,0x69,0x50,0x75,0x63,0x33, + 0x06,0xe4,0x3d,0xba,0x78,0xe8,0x1e,0x12,0xff,0x79,0xcf,0x30,0x0a,0x90,0xce,0x4f,0x47,0xf2,0x14,0xc6,0x50,0x8c,0xef,0xde, + 0x9f,0x95,0x19,0x5c,0x4b,0x4a,0x6c,0x79,0x90,0xc4,0x5f,0x9f,0x18,0xc6,0xb3,0xae,0xa8,0xe7,0x47,0x8a,0xe1,0x83,0x2a,0xac, + 0x54,0xe2,0xa9,0x87,0x48,0xdc,0xfe,0xa9,0x61,0xe4,0x90,0x2b,0xbe,0x7a,0xec,0x8a,0x20,0x6c,0x62,0x67,0x8b,0xb8,0xca,0x51, + 0xdd,0xc2,0xf7,0x0d,0x63,0x8f,0x6c,0xe4,0xd7,0xfa,0xb1,0x31,0x04,0x09,0x9c,0x87,0x1c,0xb6,0xf3,0xe5,0x5d,0xe8,0xc0,0xfa, + 0x36,0x4a,0x24,0x0f,0xac,0x7c,0x5b,0xfc,0xfb,0x4e,0x12,0xff,0xdb,0x6d,0x18,0xde,0x28,0x55,0x89,0x54,0x8a,0x74,0xea,0xe7, + 0x09,0x6a,0xb4,0xfe,0x77,0xb7,0x4c,0xe4,0x4a,0x73,0x2c,0xf7,0x63,0x8c,0x6b,0x28,0x40,0xfa,0xa1,0x87,0x3c,0xe5,0x26,0x8b, + 0xbb,0x7e,0x65,0x96,0x69,0x8a,0xdc,0xcd,0x2b,0x4b,0x95,0x4d,0x15,0xe8,0x3b,0x68,0xed,0xb9,0xdb,0xa9,0x8a,0x47,0x4c,0xa5, + 0x58,0x34,0x2f,0x53,0x07,0x77,0xe1,0x25,0xe7,0x72,0x99,0x8d,0x40,0x3a,0x2e,0x93,0xd9,0x2e,0xbd,0x11,0x44,0xc1,0x94,0x2f, + 0xaf,0xf0,0x50,0x81,0x5a,0xaa,0x72,0xa1,0x32,0x39,0x4f,0x7b,0xf8,0x9b,0x0a,0x4a,0xa2,0xd3,0x58,0xa2,0x12,0xba,0xe4,0xb5, + 0x5e,0xd8,0x4c,0xd5,0xa6,0x39,0x94,0xab,0x05,0xb4,0xc3,0x0f,0xf3,0xda,0x30,0x55,0x6b,0x27,0xf1,0x61,0x3e,0x55,0xd3,0xca, + 0x41,0x8e,0x47,0x24,0x05,0x99,0xfc,0xb5,0x87,0x7a,0x1c,0xed,0x16,0x4d,0x49,0x0e,0xa2,0xdf,0xc9,0x2e,0x7d,0xd5,0xdf,0xaa, + 0x91,0xc3,0x55,0x37,0xf6,0xc9,0x12,0xdd,0x4f,0x45,0xb0,0x1f,0x27,0x68,0x1e,0xb2,0x95,0xcf,0x72,0x91,0x07,0x30,0x42,0x36, + 0x72,0x9c,0x11,0xa4,0xa9,0x58,0xb4,0x5b,0x5e,0xf9,0x8b,0xc3,0xf5,0x9c,0xb3,0x9e,0xed,0xd5,0x2e,0x1c,0x21,0x17,0x39,0xa4, + 0x45,0xa0,0xc8,0xdc,0xc7,0xe5,0x96,0x6b,0xf2,0xd4,0x4e,0x24,0x98,0x4a,0xa9,0x5c,0xd5,0xb3,0xa7,0x2c,0x40,0xb0,0xb6,0xc8, + 0xdd,0x1c,0x07,0xf1,0x40,0x1c,0xca,0x55,0x02,0x05,0xab,0x45,0xed,0xa3,0x6e,0x8a,0xa0,0x1f,0x2e,0x2c,0x52,0x25,0x14,0x83, + 0x03,0xb8,0x3b,0x41,0x86,0x39,0x9c,0x21,0xec,0x0a,0x57,0xd3,0x41,0x3c,0xec,0x14,0x48,0xd3,0x70,0x1e,0x52,0x07,0xcd,0xfb, + 0x79,0xe8,0xcc,0xfb,0xb6,0x6a,0x9f,0xc4,0xc9,0x59,0x5c,0x1f,0xa8,0xca,0x59,0x8a,0xa6,0x75,0x24,0xfe,0x55,0xe0,0x98,0x2a, + 0xeb,0x16,0x34,0x61,0xe5,0x5e,0x48,0x71,0xdf,0x7a,0x12,0x65,0xf9,0x86,0xb1,0x1b,0x67,0x3d,0xef,0x46,0x1b,0x43,0x48,0x89, + 0xf4,0x0d,0x24,0x9e,0xca,0x30,0x8c,0xb5,0x8f,0xde,0x69,0xc3,0xf3,0x2d,0xb8,0x2a,0x81,0xce,0x17,0x97,0xdc,0x4c,0x62,0x6b, + 0x93,0x61,0x8c,0xa3,0x41,0x1d,0xa2,0xbf,0x4d,0x8f,0xcf,0xc9,0x5d,0xd4,0x44,0xa1,0x74,0xe7,0x79,0x1b,0x63,0x50,0x43,0x9d, + 0x94,0x8f,0x0b,0x22,0xe9,0x24,0xd9,0x55,0x31,0x62,0x10,0xcf,0xa9,0x67,0x97,0xd1,0x46,0x37,0x3a,0x4a,0x99,0xf4,0xcc,0x47, + 0x8b,0x68,0xe0,0x3e,0xde,0x01,0xd7,0x15,0x83,0xa8,0xc5,0x32,0xad,0x93,0xe2,0xe5,0x5b,0x49,0xbc,0x78,0xc8,0x30,0x7c,0xb1, + 0xea,0x43,0x3f,0xdc,0xd0,0x0a,0x25,0x6a,0x1d,0xd4,0x9d,0x07,0x0c,0x23,0x0d,0xdf,0xfc,0x34,0x01,0x0f,0xbc,0x1b,0x8d,0x3e, + 0x07,0xcd,0xb7,0x91,0xb8,0xcb,0xe1,0xfc,0xe9,0xb7,0x34,0x7c,0xb9,0x0b,0x3f,0x3e,0xfd,0x91,0x12,0x1f,0x3e,0x4a,0xa2,0x79, + 0x9b,0x61,0x6c,0xc2,0x6e,0x7a,0x21,0x03,0x81,0xbc,0x87,0x07,0xe9,0x96,0xb7,0xc5,0x3b,0x66,0x12,0xb7,0x2c,0x19,0xc6,0x49, + 0xfd,0x5a,0x1b,0xb5,0xe3,0xa9,0x12,0x9a,0xa3,0xdd,0xaa,0x88,0x5a,0x55,0x21,0x22,0xcc,0x36,0x19,0x66,0xba,0x63,0x82,0xd3, + 0x61,0xc3,0xcf,0xf7,0x87,0x23,0x4a,0x8b,0xa6,0x7b,0x5e,0xee,0x90,0xd1,0x1c,0x46,0xe1,0x9a,0x69,0x58,0x95,0xa9,0x62,0xf2, + 0x91,0x6d,0x9c,0x4b,0xa9,0x74,0x52,0xee,0xb3,0xec,0xa2,0x06,0x24,0xe2,0xad,0x31,0xea,0xd2,0x53,0x65,0x9b,0x4c,0x41,0x10, + 0x7b,0x3a,0x62,0xef,0xa6,0x1a,0x5a,0x42,0xea,0x99,0x9d,0x8e,0x65,0xca,0x55,0xf8,0x6d,0x58,0xad,0xad,0xc3,0x6f,0xf7,0xd5, + 0xc3,0xae,0xdd,0x9c,0x7a,0xbe,0x8b,0x79,0xd3,0x99,0xb5,0x7c,0xd8,0x74,0x42,0x6d,0xd3,0x6e,0xac,0x33,0x47,0x98,0xec,0xec, + 0x7c,0x44,0x3b,0xa1,0xdd,0x57,0xaf,0xde,0xaa,0xe4,0x14,0x8b,0xa3,0xf9,0xcd,0x9d,0xd2,0x47,0x7b,0x63,0x46,0x6d,0x57,0x1f, + 0x1f,0xe4,0x97,0x0a,0x68,0xc0,0x72,0x6d,0x33,0xf5,0xe2,0x8c,0x72,0x1c,0x90,0x39,0xa6,0x44,0x7d,0xab,0x96,0xaa,0x35,0xf2, + 0x18,0x5c,0xf5,0x48,0x8e,0x22,0x2f,0x6a,0x56,0x5b,0x78,0x43,0xb6,0xe3,0x88,0x22,0x8b,0x7e,0xa9,0xe5,0x9f,0x4b,0x70,0x68, + 0xc5,0x22,0x4d,0xf2,0x09,0x1c,0x45,0x1c,0xef,0xd3,0xfb,0xa8,0x47,0xba,0xc3,0x4e,0xb7,0x64,0x70,0x2b,0x96,0xe8,0x09,0xe7, + 0x95,0xf1,0xc8,0x41,0x19,0x6d,0x45,0x33,0x9d,0x42,0x2d,0x5d,0xdb,0x2d,0x63,0xe1,0x2f,0xab,0xb8,0xcf,0x5a,0x87,0x12,0x59, + 0x87,0x72,0x5e,0x9b,0x65,0x99,0x40,0x1e,0x97,0x51,0x12,0x1d,0x66,0x7f,0xad,0x42,0x6e,0x45,0x34,0xfd,0x6f,0x86,0x0e,0xe2, + 0xc1,0x6a,0xb6,0x51,0x96,0xf9,0x80,0x53,0xaf,0x9c,0xc3,0xc0,0x8a,0x6c,0x2a,0x80,0x17,0x6e,0x6e,0x43,0xad,0xda,0x0c,0x29, + 0x06,0xef,0x22,0xe1,0xdc,0x63,0x18,0xd7,0xbd,0x94,0xa4,0x9d,0xe6,0x65,0x95,0xcc,0x52,0xf4,0x3b,0xb8,0x1e,0x07,0x17,0x2c, + 0x8f,0xc1,0x43,0xde,0x6e,0x2d,0x81,0x26,0xde,0x7b,0x84,0x84,0xcf,0x29,0xc3,0x70,0xc7,0xa3,0x9e,0x28,0xc4,0x11,0x6c,0xa2, + 0x6f,0x9b,0xb1,0x36,0x0b,0x56,0xf1,0xfb,0x13,0x24,0x5e,0x9e,0x33,0x8c,0x26,0xb5,0xee,0xb2,0x3f,0x9b,0xe1,0xe4,0x4e,0x43, + 0x08,0xd1,0xd7,0x84,0xf0,0x4f,0x97,0xa6,0x22,0x1c,0x77,0x9c,0x9f,0x8d,0x9f,0x5f,0xdc,0xa6,0x5d,0xe6,0x38,0xb5,0x0e,0x67, + 0xd3,0x71,0xc3,0xf8,0xca,0xdc,0x0f,0x37,0x5a,0xc0,0x30,0xc2,0xf1,0xcb,0x55,0xae,0xf4,0xda,0x7b,0x4a,0xfc,0xb5,0x9a,0xc4, + 0xf9,0xb3,0x86,0xb1,0xf2,0x93,0x0e,0xdc,0xd4,0x04,0x1f,0x3c,0xeb,0xac,0xc4,0x23,0x6b,0x48,0x3c,0x31,0x62,0x18,0x23,0x1c, + 0xc0,0x97,0x05,0x90,0x97,0x1c,0xc5,0xc3,0x59,0xac,0x09,0xb5,0x81,0xc4,0xe8,0xbc,0x61,0x94,0xe2,0xf6,0x79,0xec,0xc2,0x7a, + 0x3b,0x12,0x29,0x06,0x4f,0x4f,0xe2,0xff,0x01,0x0d,0x55,0x05,0x74,0x54,0x57,0xb7,0x3e,0xdf,0xde,0xe7,0xdc,0x3b,0x33,0x71, + 0x74,0xe1,0x50,0x6f,0x71,0xb7,0x52,0xc3,0xb5,0xee,0x8a,0x3b,0x75,0x37,0xdc,0x2d,0x41,0x22,0x13,0x77,0xf7,0xbc,0x14,0x92, + 0xd0,0xe0,0x3a,0xf9,0x89,0x1b,0x10,0x85,0xc6,0xb1,0x04,0x87,0xfb,0xee,0xf2,0xfd,0xd9,0x92,0x6d,0xba,0x58,0x32,0x9a,0xc4, + 0xf9,0x91,0x42,0x64,0x62,0x15,0x1a,0x70,0x82,0xdb,0x69,0x23,0x3e,0x3e,0x4a,0x39,0x34,0x3b,0x89,0xa4,0xf8,0x76,0x2c,0x89, + 0x79,0x63,0x85,0x58,0xf8,0xf9,0x9f,0x2b,0x6a,0xe1,0xa4,0xc4,0x93,0x71,0x24,0x7e,0x9f,0x20,0xc4,0xdb,0x8b,0x27,0x5f,0xc1, + 0x9c,0x09,0xb3,0x52,0x20,0xc5,0xb0,0xf1,0x24,0x0a,0x5f,0x15,0x22,0x04,0xf3,0xd6,0x43,0xf6,0x7f,0x5b,0x8a,0x41,0x26,0x32, + 0x7b,0xa6,0x10,0x13,0x67,0xbf,0x1a,0x8e,0x3f,0x3e,0x54,0xe2,0x23,0x13,0xe8,0x33,0x51,0x88,0x2d,0x70,0x9b,0x90,0x8e,0x0a, + 0x2c,0xda,0x81,0x2d,0x24,0xc5,0x77,0x26,0x1c,0x34,0x4d,0x88,0xf9,0x03,0xfd,0xd1,0x80,0xf1,0x59,0x90,0x62,0xd5,0x40,0x12, + 0xf7,0x97,0x9a,0x61,0x28,0xc0,0x9a,0xee,0xa3,0x0e,0x61,0x9c,0xb8,0x38,0x9c,0xc4,0xfb,0xf1,0x42,0xc4,0xca,0x3e,0x0f,0x54, + 0x12,0x15,0xf0,0xc0,0x40,0x5b,0xa0,0xf6,0x1f,0xef,0xd3,0x7b,0x07,0xb0,0x17,0x3b,0x54,0x24,0x0d,0x6e,0xa7,0x0a,0x1c,0x21, + 0xb5,0x47,0x45,0x71,0x16,0x69,0x85,0x5a,0x15,0x1d,0x97,0x2b,0xeb,0xb4,0x31,0xa7,0xf9,0x10,0x32,0x2d,0x76,0xdd,0xa0,0x93, + 0x5a,0x8a,0xd3,0x46,0x19,0x62,0x5b,0xaf,0xee,0x6a,0xaf,0x9e,0xd5,0x7c,0x39,0x4a,0xc6,0xf3,0x79,0xd6,0xd6,0xd1,0x5d,0x0c, + 0xb5,0x93,0x17,0x1f,0x25,0x7f,0xee,0x77,0x4c,0x6b,0x95,0x09,0xb4,0x05,0x51,0x2a,0x10,0x11,0x32,0x5f,0x96,0xca,0x18,0xa4, + 0xc1,0x9f,0x6a,0x11,0xaa,0x16,0xa7,0x53,0x16,0x47,0xf2,0x88,0x6a,0x79,0xcf,0xd2,0xa0,0x56,0xe5,0x22,0x0b,0x0f,0xf8,0x08, + 0xa6,0xf9,0xa8,0x6d,0xf4,0x44,0x0e,0xcf,0xa6,0x17,0xfc,0x11,0x8c,0x61,0x25,0xaa,0x8d,0x6f,0xa8,0x06,0x04,0xeb,0x2f,0x15, + 0xf0,0x2e,0xbe,0xa1,0xc5,0xa2,0x89,0xfd,0x65,0x05,0xae,0xb9,0xee,0x71,0x29,0x71,0xcd,0xb7,0x28,0xe1,0xf1,0x3c,0x89,0xae, + 0x29,0x42,0xcc,0xfd,0xfb,0xf7,0xad,0x1c,0x8b,0x3e,0xfd,0x1b,0xa1,0xc4,0x75,0x13,0x7c,0x35,0x59,0x88,0x38,0x9a,0xb6,0x20, + 0x1b,0x0d,0xd8,0x86,0x3e,0x3f,0x3b,0x89,0xfe,0x13,0x49,0x14,0x24,0x08,0x11,0x4d,0x9e,0x88,0xe6,0xbe,0x76,0x5b,0x90,0xda, + 0xa5,0x36,0xc9,0x49,0xff,0x51,0x23,0xf6,0x62,0xc8,0x4e,0xca,0x96,0x5e,0x5c,0xa6,0xca,0xb4,0x5c,0xb0,0x14,0x15,0xe3,0x49, + 0x9c,0x88,0x11,0xe2,0x8f,0xc9,0x0b,0x9d,0xba,0xbf,0x25,0xc5,0x5f,0x13,0x48,0x78,0x9a,0xb5,0x36,0x62,0x99,0xf3,0xea,0x49, + 0x52,0x64,0x9a,0x69,0xcb,0x63,0x85,0x88,0x81,0x6d,0xc6,0xa0,0x05,0xa3,0x95,0xe8,0x39,0x89,0x44,0xb5,0x09,0xe4,0x43,0xef, + 0xe9,0x85,0x9d,0xb2,0x7f,0x21,0xc5,0xc0,0x4d,0xfc,0x32,0x85,0x84,0x96,0x22,0x44,0x98,0x3a,0x8b,0x4c,0x75,0x92,0x0d,0xee, + 0xb1,0x49,0x77,0x68,0xcd,0x32,0x8e,0xb2,0xd5,0x56,0xfd,0x89,0xb5,0x5e,0xcd,0x39,0x4c,0x5b,0xe9,0x26,0x7c,0xe4,0x0b,0xb9, + 0xf2,0x20,0xef,0xe5,0x11,0x23,0x22,0xa8,0x9c,0x3f,0xfe,0x4a,0xbc,0xf6,0x35,0x89,0xee,0x37,0x85,0x58,0x27,0x37,0x73,0x21, + 0xfa,0xe6,0x78,0x5c,0xa6,0x14,0xeb,0x27,0xeb,0xb4,0x0e,0x44,0x69,0x9b,0x78,0x61,0x08,0x3f,0xb4,0x44,0xc9,0x28,0x75,0x5b, + 0xe6,0x3b,0xd5,0x48,0x4f,0x2d,0x4d,0x7a,0x52,0x04,0x47,0xd1,0xe2,0xa1,0x97,0xa9,0x15,0xeb,0xa8,0x1d,0x2b,0xdb,0xe4,0x7a, + 0x6c,0xd5,0xd2,0xb0,0x95,0xd3,0xe0,0x52,0x48,0x7b,0xf4,0xf9,0xcd,0xec,0x83,0x08,0x2e,0x45,0x29,0xbf,0x7e,0x57,0xc6,0x92, + 0x5d,0x75,0x4e,0xc2,0x5d,0x6c,0x62,0x8f,0x2d,0x32,0x93,0xea,0xf4,0x02,0x64,0xd0,0x64,0x5f,0x24,0xe0,0xa6,0xd3,0x54,0x3b, + 0x07,0x73,0x83,0x87,0x1f,0x05,0xe8,0xa7,0xb0,0x41,0xbf,0xc4,0xb7,0xe5,0x88,0x08,0xbe,0x8f,0x08,0xf5,0x46,0x1b,0xfd,0x61, + 0xb8,0xc5,0x73,0x1a,0x7b,0xfc,0x4f,0x6d,0x20,0x1f,0x0a,0xa0,0x24,0xd9,0xc3,0xc0,0x77,0x49,0x88,0xc0,0xb4,0x03,0x38,0xcc, + 0xd6,0xc5,0x71,0xe8,0xa0,0xe1,0xa5,0x6c,0x29,0xe4,0x64,0x7a,0xa8,0x46,0xe6,0xab,0x56,0x84,0xb8,0xdd,0xa3,0x43,0x18,0x5d, + 0x4c,0x21,0x9c,0xc3,0x0b,0x9b,0x31,0xa6,0x8a,0xaa,0xc9,0x93,0xdf,0x8a,0xeb,0xa9,0x52,0xd4,0x26,0x78,0xab,0x51,0xa7,0xad, + 0x1b,0xa8,0xd8,0x52,0xc5,0xe7,0xb5,0x1c,0x55,0xee,0x9c,0xa6,0x12,0x54,0xbe,0x7e,0x5f,0x7b,0x88,0x5d,0x5c,0x49,0xe5,0xd6, + 0xbb,0x9c,0xc4,0x95,0x54,0x25,0x6f,0x63,0x9f,0x5b,0x87,0x73,0x50,0xe7,0x3a,0xcb,0x21,0x79,0x94,0x6f,0x5b,0x2b,0x39,0x4e, + 0x16,0xd3,0xe2,0xf3,0xf8,0xac,0x12,0xe1,0xd6,0x08,0xaa,0x75,0x9d,0x35,0x24,0x9f,0x3c,0xc9,0xd3,0x32,0xe3,0x31,0x1a,0xb4, + 0x67,0xf2,0x70,0x90,0x8f,0xd3,0x45,0x7c,0xb6,0xa2,0x8c,0xcf,0x20,0x57,0xd2,0x2e,0xd5,0x4c,0xaf,0x89,0x98,0xc1,0x24,0x7e, + 0x2b,0x12,0x22,0x91,0xef,0xf3,0xf7,0x19,0xaa,0x5e,0xd6,0xe9,0xe7,0xe0,0xab,0x70,0x48,0x25,0x91,0xa7,0x7c,0x2e,0x46,0xdb, + 0x48,0xf9,0x6a,0x27,0x55,0xa1,0x40,0x9d,0xee,0xe4,0x67,0xb1,0x7b,0xa4,0xaa,0x66,0x39,0xce,0xc1,0x75,0xf4,0x88,0x1d,0xfa, + 0x29,0x75,0x5f,0xfe,0x95,0xa5,0x5e,0x8c,0x91,0x99,0x88,0xb0,0x38,0x3c,0x06,0xd8,0xd5,0x3d,0xca,0x32,0x1b,0xb5,0x8e,0xe2, + 0x65,0x90,0xe5,0x02,0x75,0xbb,0x80,0x95,0x47,0xb0,0x4b,0x8b,0x21,0x6f,0x15,0x47,0xe1,0x96,0x6d,0xfa,0x67,0x9e,0x54,0x84, + 0x3a,0x74,0x2e,0xa5,0x30,0xf2,0x54,0x0f,0xad,0x57,0x91,0x8b,0x2d,0xd4,0xa2,0x85,0x72,0xad,0xed,0x00,0x9e,0x68,0xe9,0x5c, + 0xa4,0x7d,0x1e,0x2b,0x7d,0xa5,0x8f,0x1e,0x2d,0xaf,0x39,0x77,0xdb,0x6b,0x4b,0xc0,0x61,0xcd,0x8f,0x42,0xad,0x9e,0x5c,0x24, + 0x33,0x65,0x22,0xc7,0x63,0x85,0x37,0x05,0x93,0x4b,0xb4,0xda,0xcc,0x5e,0x96,0x57,0x4f,0x58,0x7c,0xa8,0x01,0xf5,0xf4,0x56, + 0x2d,0x65,0x20,0x90,0xdf,0xfb,0x2e,0x1d,0xfb,0xb0,0xa4,0x84,0xe2,0x31,0x2a,0x9b,0xaf,0xaa,0xf5,0x5a,0x2a,0xb3,0x1f,0x79, + 0xd1,0x56,0x0c,0x7c,0x56,0x78,0x3c,0x4d,0x62,0xf4,0x0b,0x10,0xd1,0xea,0xf5,0x6c,0xda,0x46,0x7e,0xf2,0xd5,0x02,0xf2,0x57, + 0x0d,0x7a,0x19,0x1d,0xeb,0x14,0x26,0x37,0x5b,0xe6,0x37,0xe9,0x8b,0xf6,0xf7,0xb4,0xab,0x72,0x4b,0x1d,0x82,0x11,0x41,0x39, + 0x2e,0xff,0x72,0x98,0xcb,0x5e,0x64,0xa9,0x44,0xba,0x8e,0x26,0xaa,0xe7,0xbd,0xf2,0xb6,0xf5,0xc5,0x2c,0x9e,0x54,0x0b,0x6f, + 0x79,0xcc,0xd5,0xa1,0x05,0xd8,0xe2,0xe8,0xbc,0x5e,0x42,0xad,0x3d,0x83,0xe8,0x80,0xb5,0x09,0x27,0x55,0x8c,0x3c,0xc9,0x13, + 0x2f,0xbb,0xf9,0xd0,0x43,0xf7,0x16,0x6d,0xe8,0x46,0x6a,0x90,0xfd,0x5e,0x0c,0xd6,0x5a,0xb4,0x6e,0x76,0x8e,0xa7,0x7b,0xf0, + 0xc7,0xb9,0x4e,0xd1,0x1c,0xd9,0xf9,0xaa,0xb2,0x89,0xe5,0x03,0x49,0x44,0xf7,0x87,0xd8,0xdd,0x69,0x97,0x2a,0x41,0x98,0x7a, + 0xd8,0x3b,0x18,0xe7,0x5d,0xfd,0xa8,0xdc,0xe5,0x28,0x4e,0x63,0x37,0xda,0x6c,0xdf,0xad,0x75,0x7a,0xa2,0x7c,0x3c,0x5e,0xd6, + 0x44,0xc1,0x73,0x24,0xdc,0x06,0x40,0xa4,0x58,0x7d,0x71,0x9c,0x23,0xd1,0xed,0x22,0xfb,0xb9,0x38,0x8f,0xff,0x8f,0x5d,0xc4, + 0x4a,0x73,0xeb,0x56,0x3e,0x07,0xf1,0xc8,0xb6,0x13,0x79,0xae,0xa3,0xb3,0xa9,0x8e,0x8a,0xba,0x0f,0x28,0xd1,0x5a,0x71,0x4a, + 0x7e,0x57,0x45,0x51,0x9c,0xe2,0x5e,0x4a,0x51,0x5d,0xc6,0x9c,0x1e,0xe0,0xaf,0x6d,0xd7,0xd6,0x6a,0xeb,0x65,0x04,0x2b,0x11, + 0x38,0x8d,0xc4,0x0f,0x03,0x21,0x2e,0x3b,0x75,0x5f,0xaf,0x4e,0xe1,0x92,0x6d,0x9a,0xc1,0xb7,0xf1,0x95,0x58,0x63,0xa6,0xcd, + 0xeb,0x78,0x62,0x5c,0x94,0x39,0x08,0xef,0x7a,0x1c,0xd9,0x7d,0x5e,0x09,0xb7,0xfa,0xe3,0x98,0x3a,0xa0,0x87,0xca,0x3b,0x48, + 0x76,0x9b,0x9e,0x6c,0x79,0x8c,0x2b,0xd6,0xb5,0x74,0x90,0xe3,0x35,0x9f,0x1e,0xf7,0x6d,0x5e,0x6e,0x39,0x54,0x61,0x71,0xbd, + 0xa6,0x6d,0xa3,0xad,0xfa,0x5a,0xba,0xd3,0x3b,0x46,0xc5,0xab,0x28,0x8e,0x46,0x0d,0xb7,0x6b,0x85,0x58,0xaf,0x95,0xf2,0x56, + 0xed,0xa1,0xbe,0x97,0x53,0x70,0x4a,0x76,0x0a,0x95,0xdb,0xc8,0x41,0xc9,0xd6,0x8d,0x5c,0x84,0x83,0xfa,0x84,0x13,0xb6,0xbb, + 0xd2,0xcb,0xd6,0x2f,0x56,0x7b,0x82,0xea,0xa7,0xd2,0xe8,0x92,0x6b,0x18,0xfd,0x63,0x6d,0x54,0xb5,0xd6,0x4c,0x44,0x77,0x3d, + 0xa9,0xc2,0x65,0x24,0xe7,0x69,0x1b,0xf4,0xeb,0x74,0x1a,0x9b,0xf4,0x97,0x36,0xf0,0xff,0xc8,0x1b,0x39,0xb2,0x56,0xbe,0xb6, + 0x7c,0x03,0x67,0xd1,0xf4,0xa8,0x1e,0xe9,0xbc,0x57,0xcb,0xa7,0x5a,0xb7,0x1a,0xca,0x94,0xeb,0x94,0xa1,0xc7,0x51,0xbe,0xac, + 0x30,0xfb,0x30,0xa2,0x86,0xfe,0x4e,0x72,0x1f,0xf0,0xd8,0x16,0xc9,0x0f,0xd4,0xbf,0xb2,0xc4,0x5c,0x7d,0x4f,0xa7,0x38,0xda, + 0xe6,0xd2,0xa5,0x58,0xfe,0xd8,0xc2,0x76,0xfa,0x4f,0x6d,0xa1,0x4d,0x5a,0xf7,0x34,0xae,0xd6,0xef,0xca,0x5e,0x79,0x14,0x62, + 0xf1,0x66,0x07,0x6e,0x59,0xc3,0x2c,0x85,0x98,0x9a,0xef,0xb1,0x1b,0xad,0xda,0xdb,0x21,0xaa,0x85,0x1c,0x9c,0xc9,0x57,0x2d, + 0x87,0x78,0x03,0xe7,0x68,0x69,0x4e,0x2f,0xac,0x73,0x6e,0x44,0x3b,0x7e,0xcd,0x73,0x71,0xcb,0x96,0x7f,0x2e,0xc8,0xa0,0xf5, + 0xd6,0x7f,0xb9,0x43,0x35,0xca,0x53,0x72,0x07,0x8e,0xe1,0x32,0xff,0x9e,0x26,0x6f,0xca,0x30,0x7e,0x60,0xf5,0x86,0x97,0xe5, + 0xb4,0xca,0xa6,0xeb,0xd2,0x5f,0xa6,0xd0,0x7a,0x6d,0x62,0xa7,0x1c,0xda,0xa2,0x37,0xd3,0x7e,0x5b,0x26,0xe2,0x9d,0xc3,0xa5, + 0x14,0x41,0xab,0x48,0xcc,0x7a,0xc9,0x30,0x26,0xcf,0xad,0x47,0xac,0x0c,0x42,0x25,0x4b,0xd1,0x31,0x9b,0x84,0x23,0xda,0x30, + 0x56,0xf7,0x1d,0x75,0x0c,0x13,0xaa,0xa0,0x8b,0x95,0xf3,0x48,0x4c,0x0a,0x37,0x8c,0xc3,0x98,0xfb,0xcd,0x43,0xfa,0xfe,0x6b, + 0x5f,0x6e,0xe1,0x31,0xdb,0x91,0x88,0x89,0x4e,0xa2,0xe3,0x7d,0x12,0xcb,0xed,0x86,0xb1,0x03,0x83,0x26,0xd6,0x53,0x34,0x6e, + 0xf1,0xe0,0x0a,0x3c,0xa2,0x3b,0xd4,0x3b,0x12,0xc7,0x51,0x86,0x5a,0xc4,0xe3,0x30,0xec,0x2a,0x44,0x56,0xd9,0xa4,0x58,0xf0, + 0x21,0x89,0x39,0x07,0x0c,0xc3,0x17,0xb5,0xb4,0x19,0x15,0xe8,0x92,0x25,0xa5,0x38,0x6e,0x82,0x45,0xfb,0x0d,0xa3,0x0a,0x76, + 0xe9,0x5e,0x21,0x2f,0x62,0x92,0x12,0xdf,0xcf,0x25,0x91,0x55,0x62,0x18,0xbd,0xec,0x38,0x89,0xb7,0x7a,0x2e,0x38,0x83,0xae, + 0x56,0x91,0x6b,0x0a,0x07,0x15,0x1a,0x46,0x2e,0x57,0xc2,0xce,0x1f,0x5f,0xa6,0xdd,0x18,0xb8,0x1e,0x3b,0x30,0x70,0xda,0x67, + 0xcd,0x88,0x24,0x1f,0x95,0x44,0xba,0x88,0xf9,0x84,0x44,0x90,0x29,0xea,0xb3,0x3a,0x84,0x3a,0x1f,0x87,0x3f,0x8e,0xe0,0xe9, + 0x7e,0x6b,0xae,0xd1,0x42,0x29,0x2e,0x7e,0x43,0x62,0x6f,0xba,0x61,0x0c,0xdd,0x4f,0xaf,0xfd,0xe4,0xb6,0x8d,0x87,0x8a,0x55, + 0x6f,0x93,0x18,0x7b,0xdd,0x30,0x96,0x3d,0x1f,0x4b,0x05,0x38,0x26,0xd7,0xd1,0xbb,0x71,0x34,0xa3,0x8a,0xe7,0x67,0xe0,0x10, + 0xb6,0x51,0x23,0xcf,0x1f,0xbf,0x03,0x47,0x28,0x43,0x6e,0xc0,0x59,0x44,0x71,0xb1,0xb9,0x87,0x3d,0x0f,0x61,0x13,0xaf,0xe3, + 0x72,0x3a,0xad,0x25,0x50,0x80,0x32,0xa8,0xd1,0x79,0x74,0x80,0x8c,0xe6,0x0c,0x39,0xf7,0xae,0x6a,0xe7,0x87,0xf2,0x02,0xfe, + 0xce,0x85,0xfb,0x3d,0x24,0xc2,0x0b,0x6d,0x96,0x1e,0x17,0xd5,0x49,0x24,0xeb,0xbf,0x6c,0x25,0x1f,0x2c,0x68,0x90,0xfe,0x58, + 0x4b,0xc1,0xf8,0x31,0x09,0x57,0xd1,0xf9,0x2e,0xae,0x20,0x8e,0x83,0xd5,0x5a,0x24,0xf2,0xc2,0x0b,0xf4,0xd7,0x25,0xf6,0x57, + 0x0f,0x28,0x95,0x92,0x95,0x1f,0x9c,0x5a,0xf8,0x26,0xc2,0xd5,0x82,0x13,0x38,0x61,0x3e,0x71,0x04,0x41,0x13,0x11,0x66,0x5f, + 0xfc,0x3a,0x0c,0x23,0x40,0x4a,0x6f,0x6e,0x27,0x2f,0x99,0x8e,0xfd,0x1c,0x07,0x77,0x83,0x34,0x31,0xd3,0xe4,0x9a,0x2a,0x0c, + 0x63,0x0f,0x9c,0x4e,0xd2,0x7e,0x3a,0x81,0x7f,0xa8,0x1a,0xdf,0x8f,0x38,0xcf,0x4e,0x42,0xcc,0x21,0xf1,0x67,0xa5,0x61,0xf8, + 0x51,0x18,0x6e,0xa0,0x5b,0x3a,0x72,0xd0,0x37,0x8d,0x16,0x4e,0x9f,0xfc,0x55,0xb3,0x7a,0x79,0x2f,0x52,0xb1,0x0b,0xd5,0xf4, + 0x7f,0xe8,0xd9,0x49,0x6c,0x36,0x5b,0xb9,0xaa,0xd5,0x30,0xf6,0xc1,0x1b,0x49,0xb4,0x95,0x7f,0xdc,0x4f,0x3d,0x2e,0xa9,0x6d, + 0xda,0x05,0x4b,0x80,0xd6,0x42,0xe5,0xce,0x77,0x2c,0xeb,0x54,0x3a,0x82,0x31,0x0a,0x3e,0x14,0xaa,0xe5,0xcb,0x5b,0xbc,0x07, + 0x3e,0xca,0xc1,0x27,0xd8,0x6e,0x2e,0x65,0x82,0x4b,0x03,0x9a,0xd9,0x41,0x51,0x9a,0x2e,0x5e,0x9c,0x47,0xe2,0x52,0x99,0x61, + 0x5c,0xa1,0x63,0x78,0x6b,0xf2,0x3a,0x54,0x72,0x90,0xbc,0x80,0x56,0x5a,0xab,0xd5,0xca,0x56,0xa9,0x8b,0xc9,0x26,0x5f,0x77, + 0xd9,0x30,0x9e,0xda,0x03,0x3b,0xfc,0x30,0xeb,0x08,0xd9,0xf1,0x49,0x2d,0x0a,0xd0,0xf5,0xb6,0x94,0xe2,0x80,0xd9,0x94,0x5b, + 0xed,0x86,0xd1,0xf5,0x16,0xd6,0xe3,0x34,0x56,0xbe,0x28,0xc5,0xd3,0xef,0x90,0xf8,0xd3,0x84,0xde,0xfd,0xf2,0x3c,0xee,0x21, + 0x98,0xbc,0x61,0x11,0x63,0xdf,0x23,0x01,0x33,0xe4,0x1a,0xb9,0x05,0x92,0x03,0xef,0xcd,0x1e,0x7b,0x16,0xad,0xfc,0x9e,0x2f, + 0x1f,0xa6,0x06,0x2c,0x51,0xe2,0x4b,0x93,0x3f,0x7e,0xdb,0x30,0x86,0x27,0xc1,0x81,0x07,0xc8,0xc5,0x8a,0xd7,0xd2,0x20,0xc5, + 0xc4,0x8f,0x48,0x3c,0x36,0x5b,0xbe,0x09,0xda,0x6e,0xac,0xd1,0xbf,0x57,0xa2,0xfb,0x67,0x24,0x4e,0x37,0x19,0x46,0x31,0x36, + 0xaa,0xc3,0x38,0x86,0x6c,0x78,0x73,0x10,0x12,0xd8,0x5d,0x8c,0x99,0x4f,0xa2,0xe6,0xaa,0x61,0xbc,0x5f,0x89,0xc1,0xd3,0xca, + 0xe9,0x2c,0x76,0xf0,0x1b,0x35,0x54,0x86,0x5d,0xb4,0x99,0x5d,0xfe,0x8f,0x0d,0x3a,0x81,0x0e,0x4e,0x94,0x0b,0x6f,0xd0,0x0b, + 0x57,0x64,0x85,0xaa,0xa2,0x26,0xe5,0x6b,0x39,0xa3,0x8a,0x79,0x37,0x5d,0x95,0x4a,0xe4,0x7e,0x45,0x62,0x7a,0xbd,0x61,0x1c, + 0x27,0xf7,0xdf,0x1a,0xf0,0x08,0x3b,0x30,0x7c,0xa5,0x93,0x18,0xba,0x94,0xc4,0x17,0x75,0x86,0xf1,0xda,0x74,0x3b,0x7e,0x7e, + 0x88,0x68,0xc4,0xf0,0x33,0x39,0xd6,0x7a,0xcb,0xbb,0xe6,0xc8,0x90,0x2a,0xd2,0x3a,0xf8,0x14,0x79,0xcb,0x0b,0xb2,0x90,0x94, + 0x70,0x5f,0x44,0xc2,0xa5,0xc6,0x30,0x6a,0x28,0x91,0x17,0xed,0xa4,0x1b,0x1c,0x43,0x37,0xb1,0x87,0xa5,0xc8,0x5e,0x48,0xa2, + 0x4b,0xb5,0x61,0xfc,0x7d,0x0a,0x2f,0xd7,0x63,0x4a,0x0c,0xeb,0xa2,0x7d,0x31,0x89,0xf7,0x4c,0x68,0x13,0x79,0x44,0x20,0x0f, + 0x1b,0x11,0x4e,0x81,0xe8,0x19,0x89,0x38,0xf4,0x72,0x90,0x26,0x1c,0x4b,0x48,0xdc,0xbd,0x6c,0x46,0x51,0x34,0xe5,0x51,0x30, + 0xbd,0xb6,0x32,0x00,0x55,0xf4,0xdd,0xef,0xce,0x62,0xf2,0x32,0x12,0x79,0x55,0x86,0xb1,0x9b,0xf6,0xc8,0x00,0x14,0xc2,0xc1, + 0x79,0x34,0xf1,0x0a,0x05,0xb0,0x75,0xfe,0xf7,0x51,0xd8,0x89,0x50,0x59,0x20,0xcb,0xf0,0xe6,0xb2,0x08,0xae,0xc6,0x70,0x29, + 0x1c,0x4b,0x49,0x9c,0x35,0x83,0x7e,0x1c,0xba,0x85,0xfc,0xf0,0x84,0x96,0x5b,0x85,0xff,0x72,0x12,0x5d,0xae,0x18,0xc6,0x49, + 0x04,0x60,0x17,0xc6,0xfc,0xb8,0x19,0x2f,0xe7,0x21,0x15,0x3f,0x94,0x60,0xfc,0xcc,0x1d,0x78,0xcb,0x17,0x4a,0xdc,0x37,0x25, + 0xdb,0x4d,0xd7,0xa7,0x33,0xd6,0x94,0xe1,0x83,0x56,0x2c,0x1d,0x6e,0x13,0x5b,0xcc,0x7d,0x8c,0x35,0x6d,0x0e,0xd7,0x0a,0x3d, + 0x43,0xa5,0x4b,0x6f,0x8a,0xe7,0x58,0xf9,0x63,0x9b,0x2a,0x95,0x1b,0xd5,0x7d,0xfc,0xa3,0x15,0xca,0xf9,0x01,0x88,0x85,0x01, + 0x25,0x8a,0x57,0x93,0xf8,0xec,0x92,0x61,0xa4,0xd0,0x82,0x6c,0x84,0xe3,0x04,0x66,0xce,0xcd,0xc2,0xff,0x03,0x1d,0x53,0x75, + 0x5c,0x15,0xc8,0x1a,0xfd,0xce,0x99,0x99,0x1b,0x5e,0xb0,0xfb,0xd9,0x5d,0xbf,0xed,0xee,0xee,0xee,0xee,0xee,0xee,0x00,0xe9, + 0xee,0x10,0x03,0xb1,0x5b,0x17,0x49,0xbb,0x15,0x69,0x30,0x08,0x03,0xd0,0x07,0x16,0xb9,0xa2,0x2b,0x35,0x1b,0xff,0x7f,0x71, + 0xd2,0xc8,0xbe,0xcf,0x29,0xbb,0x8e,0x59,0xdb,0x88,0xcb,0x46,0xaf,0x42,0x3a,0x46,0xbe,0xb2,0x11,0x5a,0xde,0x78,0x82,0x92, + 0x3e,0x42,0x64,0x36,0xe4,0xbb,0x17,0x26,0x3d,0xaf,0xe5,0xc1,0x27,0x29,0xae,0x91,0x22,0xa3,0xef,0x79,0xc5,0x73,0xf3,0xf5, + 0x46,0x3e,0xfe,0x88,0x32,0x6f,0xb8,0x48,0x10,0x87,0xbd,0x3e,0x9f,0xdb,0xe8,0x35,0x25,0x86,0x4e,0xc9,0x79,0x80,0xf2,0x50, + 0xba,0x48,0xad,0x7a,0x33,0x4b,0x35,0xa9,0x12,0x7d,0x8e,0x81,0x8e,0x1e,0x26,0x2b,0xe7,0x76,0xef,0x46,0x97,0x91,0x1d,0x4f, + 0x52,0xae,0xcc,0x16,0xf9,0x93,0xd5,0xc8,0xc5,0x33,0xe7,0x5c,0x6d,0x7a,0xb3,0x3e,0xad,0x8c,0x78,0x3f,0x47,0x89,0xdb,0x20, + 0xf2,0xea,0x97,0x61,0x98,0xb1,0x05,0x0b,0x30,0xe3,0x65,0x23,0xb5,0x2f,0x52,0x12,0xb7,0x88,0xa4,0xe2,0xee,0x0e,0x2c,0x63, + 0x01,0x86,0x2c,0x66,0x3e,0x8c,0x6c,0x78,0x85,0x32,0x7f,0x9b,0x48,0x84,0x1a,0xbf,0x4a,0xed,0x30,0x89,0x18,0xbb,0x1e,0x9d, + 0xda,0xc8,0x6d,0x8f,0x50,0xc2,0xea,0x45,0x9a,0x71,0x5f,0xb0,0x3a,0x80,0x5f,0x7c,0x11,0xc7,0x24,0xb8,0xa5,0xdf,0x9b,0x94, + 0xdf,0x76,0x89,0x24,0xb9,0x42,0xf4,0x7a,0x7e,0x72,0x65,0xa2,0x9a,0xe3,0x2c,0x42,0x8a,0xca,0xd2,0xcb,0xd4,0x3a,0xb8,0x96, + 0xab,0x06,0xfa,0x6a,0x23,0xdd,0xaf,0x53,0x02,0xf7,0x88,0x64,0x62,0xd0,0x6a,0x14,0xa1,0x8a,0xce,0x5e,0x6b,0xe1,0x90,0xf6, + 0xb7,0x28,0x75,0xbb,0x45,0xe6,0x62,0xe2,0x46,0x6e,0xc0,0x7c,0xe5,0xcf,0x1a,0x4c,0x5c,0x8c,0x56,0x1a,0xb9,0xee,0x59,0xca, + 0x4b,0x53,0x21,0x7b,0x71,0xff,0x6e,0xf5,0x4d,0x8d,0x7a,0x6f,0x0d,0x62,0xa0,0x25,0xf9,0x17,0x4a,0x69,0x45,0x8f,0x3d,0xa1, + 0x2f,0xe1,0x9b,0x2d,0x68,0x51,0xb7,0x18,0x09,0xf6,0xa1,0xac,0xad,0xee,0xb1,0xcb,0xd5,0x2d,0x53,0xb3,0xb0,0xc8,0x59,0x82, + 0x62,0xb5,0x5d,0x39,0xa5,0x3a,0x92,0xb2,0xb3,0xa8,0xc7,0xc6,0xe9,0xc3,0x28,0x1c,0x70,0xf5,0xa0,0x36,0xd6,0x79,0xca,0x71, + 0xde,0x9d,0xac,0x16,0x70,0x39,0xbd,0x65,0x55,0x38,0xe5,0x42,0x69,0x8f,0x6d,0x33,0x51,0xd8,0xd4,0xa7,0x6f,0x9b,0x57,0x08, + 0x52,0x10,0x06,0x3f,0xef,0x6c,0x16,0xf6,0xbb,0x63,0x75,0xaf,0x38,0x65,0x9d,0xe1,0x26,0xdd,0xb1,0x8c,0xcd,0xf8,0x8b,0x3b, + 0x9c,0x7a,0x07,0x22,0xe8,0x90,0x6f,0x92,0x28,0x3f,0xd7,0xf4,0xd8,0x08,0x4e,0xce,0x57,0xab,0x10,0xaa,0xb3,0x54,0x8e,0xf2, + 0x53,0x0d,0xc8,0x84,0x91,0xab,0x7f,0xa6,0x3c,0xdd,0xd5,0x63,0xf7,0xe2,0xd9,0x54,0xd5,0x82,0xbe,0x2b,0x58,0xa1,0x77,0x2a, + 0x23,0xf5,0xbf,0x52,0x3a,0x3b,0x7a,0xec,0xf8,0x1f,0xfd,0xd4,0x19,0x2e,0x63,0x1f,0x1f,0x1c,0x87,0x43,0xea,0xfc,0x28,0x33, + 0xfe,0xea,0xb1,0xb3,0x39,0xf9,0xc3,0x1f,0x5e,0xaa,0x53,0x5b,0xd4,0x56,0xc6,0xa0,0x15,0x2e,0x79,0x34,0x84,0x92,0x75,0xa3, + 0xb5,0x33,0x96,0x22,0x5f,0x05,0xe3,0x22,0x6e,0x6e,0xe3,0x4c,0x5e,0x97,0xcc,0x02,0x4e,0x7e,0x39,0x41,0x19,0xa9,0x8a,0xa7, + 0x34,0x5f,0x65,0xed,0x67,0xef,0x96,0x62,0x7a,0x39,0x12,0x91,0x43,0x65,0xe4,0xa5,0x30,0xca,0xb2,0x47,0xad,0x1d,0x1b,0x87, + 0x10,0x75,0x4b,0x06,0x57,0xe0,0x87,0x27,0xb5,0xdc,0x1d,0x4e,0xf1,0x7f,0xdc,0xda,0x17,0x9a,0xe1,0xc7,0xef,0x56,0xe1,0x27, + 0xb7,0x94,0x46,0x53,0xda,0x1e,0xb0,0x36,0x1f,0x11,0x08,0x57,0x2f,0x4b,0x26,0xe6,0x7a,0x2e,0x71,0x8d,0xde,0x66,0xc6,0xce, + 0x53,0x15,0xf4,0xea,0x60,0x31,0x07,0xca,0x47,0xbe,0x94,0x33,0xeb,0xac,0xad,0xc3,0xaf,0x6d,0xb8,0x2e,0xc7,0x35,0xd7,0xb1, + 0x4e,0xad,0xc5,0x1a,0xe7,0x09,0x67,0xcf,0x80,0x46,0xaf,0x5f,0x0e,0xf3,0xee,0x1f,0x83,0xd4,0x87,0x27,0x74,0x0b,0x76,0xeb, + 0x22,0xa6,0x21,0x98,0xdd,0x9e,0x36,0xb3,0xd0,0xb1,0x4b,0x9f,0xf6,0x1c,0xf0,0x1a,0x12,0xcc,0x56,0x9c,0xc4,0x65,0x39,0x98, + 0xc3,0x62,0x38,0x24,0x2e,0x94,0x32,0x71,0xad,0xb5,0x1f,0x0e,0x48,0x47,0x89,0x7e,0xc6,0xfd,0xca,0xed,0x17,0xd1,0xaa,0x3c, + 0x72,0x3a,0x82,0xf2,0xfc,0x6a,0x6b,0xa3,0xcc,0x3e,0x3e,0x1e,0x8f,0x1c,0x36,0x21,0x95,0x2f,0x0d,0x7e,0x6c,0x19,0x5f,0xd9, + 0x84,0x6f,0xdd,0x9b,0x19,0xcf,0xdd,0xbc,0xb9,0x1c,0x5a,0x7e,0x88,0xa4,0xa4,0x2d,0xb5,0x76,0x2f,0x46,0x63,0x17,0xf6,0x63, + 0x21,0x5c,0xf2,0x70,0x34,0xe5,0xa1,0x55,0xd6,0xfa,0x70,0xe4,0xf8,0x83,0x5c,0xcf,0xab,0x33,0xf1,0xc3,0x8f,0x1d,0xac,0xe2, + 0x67,0x97,0x65,0xc3,0xc8,0xb2,0x24,0xca,0xc4,0x3f,0xac,0xbd,0xf7,0xd3,0x76,0x3c,0x91,0x85,0xaf,0x02,0xf1,0xb4,0x53,0xee, + 0xf8,0x9a,0x72,0xa6,0xd4,0xda,0x10,0x8e,0xad,0xe4,0x1a,0xc6,0xe9,0x65,0x18,0xbf,0x02,0x59,0xd0,0xf5,0xce,0x5a,0xed,0x2d, + 0xeb,0xbf,0xa7,0x7c,0x7a,0xd8,0xda,0x2e,0x7c,0x1b,0xad,0xfb,0x34,0xd1,0xcf,0xac,0xc0,0xab,0xad,0x0a,0x69,0xe6,0x10,0x5a, + 0xd5,0x1a,0xbe,0x9b,0xa2,0x7c,0xd5,0x7d,0x83,0xcf,0xe3,0x10,0xef,0x3e,0xa6,0x96,0xd3,0x2d,0xed,0xc1,0x94,0x8e,0x83,0xd6, + 0xe6,0x71,0xea,0xef,0x51,0x58,0x8e,0xde,0xd7,0x7f,0x77,0x0e,0xc7,0x50,0x8f,0xe1,0xf1,0xbc,0xfd,0x46,0x5f,0xf4,0xf9,0xcf, + 0x99,0x41,0x7b,0xfe,0x81,0x89,0x38,0x53,0x87,0x09,0x3e,0x88,0x54,0xe9,0x70,0x79,0x47,0xf1,0xb7,0x5f,0x43,0xd1,0xa0,0x0f, + 0x22,0x8e,0xa9,0xe6,0xed,0x6e,0xec,0x50,0xe3,0xfc,0x55,0x2b,0x0e,0x98,0x27,0xe6,0xab,0x7a,0xb6,0xd2,0x48,0xbf,0x70,0xca, + 0xe7,0x65,0xd6,0xb6,0x63,0xc8,0xb7,0xab,0x50,0x81,0xa1,0xf1,0x58,0xf9,0x6f,0xd4,0x22,0x28,0xf1,0x3b,0xac,0xbd,0x88,0xc7, + 0xae,0xf8,0xa5,0x1e,0xd3,0x47,0xce,0x85,0x97,0xb4,0x47,0x50,0xc6,0x6c,0xb7,0x36,0x59,0xe7,0x31,0x87,0x97,0x38,0x0b,0x7e, + 0x68,0xd4,0x8f,0xee,0xc5,0x02,0xc7,0x9d,0x8f,0xec,0xc4,0xa3,0x01,0x48,0xc4,0x5b,0x81,0x2a,0x9a,0xb7,0xa7,0xe0,0xff,0x34, + 0x72,0x67,0x24,0x65,0x75,0x9e,0xb5,0xdb,0xd1,0x84,0x74,0xcc,0x43,0x2c,0x4a,0xe1,0x8b,0x5c,0x38,0x25,0x2d,0x92,0xf2,0xf0, + 0x3e,0x6b,0x9f,0x7e,0xb7,0x16,0xe3,0x26,0xee,0xc2,0x16,0x7c,0xb6,0x01,0x4f,0xff,0x6f,0x16,0x1c,0xd2,0x10,0x45,0xc9,0xd8, + 0x69,0x6d,0x00,0x5e,0x2e,0xe7,0x2d,0xeb,0x98,0xcc,0x3a,0xde,0x94,0x8d,0x3f,0x68,0xe4,0xc3,0x18,0xca,0xe5,0xdb,0xac,0x5d, + 0xac,0xa7,0xe5,0x62,0x0d,0x0e,0xa9,0x25,0x0c,0x65,0xb7,0xd2,0xd2,0x1d,0x4d,0x19,0xbd,0xeb,0x9f,0x60,0xfe,0xfc,0xe5,0x22, + 0x47,0x3c,0x96,0x1a,0x23,0x83,0x62,0x28,0xf3,0xfe,0xc1,0xba,0x1e,0x3b,0xf4,0x43,0x59,0xaa,0x02,0xd5,0x8e,0x4f,0x67,0xc3, + 0x21,0x36,0x86,0xf2,0xed,0x16,0x6b,0x87,0x7f,0xbe,0x5a,0xdf,0xf6,0x72,0x11,0x7d,0xf0,0x5c,0x8b,0x6a,0xa5,0x5b,0x7a,0x62, + 0x28,0x3f,0x6d,0xb4,0x36,0x91,0xeb,0xf9,0x7d,0x3e,0xd2,0xf4,0xb8,0x4f,0xee,0xbb,0xfe,0x89,0x66,0xb8,0xeb,0xb1,0x85,0x55, + 0x1c,0xe8,0x92,0xef,0x12,0x28,0x3a,0xcb,0xda,0x95,0x78,0x36,0x44,0xd7,0xe0,0xa6,0x3d,0xca,0x87,0xc3,0x6b,0x10,0xc4,0x4f, + 0xef,0x0c,0x65,0x2a,0x5d,0x32,0x20,0x91,0xb2,0x6a,0xfd,0x3f,0x11,0xac,0x44,0x26,0xae,0xf2,0xe3,0x32,0xde,0x12,0xc8,0x0c, + 0x8c,0xb9,0xcc,0x97,0x81,0x5c,0x08,0x8f,0x38,0xbe,0xa0,0xec,0xad,0xb6,0x76,0x83,0xda,0x4a,0x1f,0xc7,0xe0,0x39,0xba,0x90, + 0xfe,0x6a,0xa1,0x2e,0xa7,0x1f,0xa2,0x4c,0x05,0xc2,0x5c,0xdf,0x74,0x73,0x9f,0x1e,0xb1,0x8d,0x7f,0xe1,0x11,0x23,0xcb,0xbe, + 0xa4,0x1c,0x39,0x62,0x6d,0x8d,0x4a,0x65,0x10,0x6f,0x3c,0xc8,0x75,0xf8,0x6d,0x05,0xfa,0x48,0xe3,0xd7,0x94,0xc0,0xe3,0xd6, + 0xb6,0xa9,0x72,0xfd,0x71,0x3b,0xd7,0xa8,0xdd,0xdc,0x83,0xdd,0xe6,0x08,0x2a,0x89,0x56,0x1c,0x67,0x86,0xea,0xd4,0x15,0x2a, + 0x0f,0x33,0x55,0x25,0xd6,0x98,0xf7,0x16,0xe1,0x22,0x0a,0xe8,0xf5,0x52,0x3a,0x47,0x18,0xf1,0xfa,0x9e,0xf2,0x5e,0x95,0xb5, + 0x5e,0xa9,0x4c,0xe5,0x3a,0xbc,0x1c,0x6b,0x5a,0x98,0xa6,0xb5,0x5c,0x16,0x4e,0xe9,0xec,0xb6,0x76,0xe2,0xdd,0xb7,0x5f,0xf7, + 0x5e,0x6f,0x2d,0x8f,0x27,0x52,0x12,0xbb,0xac,0xbd,0x72,0xda,0x4d,0x4e,0xe7,0x58,0x2d,0x4b,0x7f,0xa1,0x14,0x0d,0x14,0x19, + 0xf8,0x66,0x14,0x9e,0xfa,0xa5,0xaf,0x96,0xdf,0xe2,0x28,0x11,0x23,0x44,0x46,0x8e,0x4c,0xe2,0x0d,0x59,0x1c,0xa6,0x65,0x61, + 0x22,0x65,0xcf,0x60,0x91,0xe7,0xaf,0x9f,0xcf,0x65,0x6a,0x2f,0x9a,0xa9,0xe5,0x4c,0x18,0x25,0x66,0xba,0xc8,0x8b,0xf2,0xdc, + 0x18,0x3d,0xfa,0x0d,0xa9,0xf9,0x89,0xb2,0xbb,0x5a,0xa4,0xdd,0x71,0x90,0xa5,0x66,0xa1,0xfb,0xa7,0x7f,0x9a,0xad,0xbb,0xf5, + 0x35,0x61,0xdc,0xee,0x3c,0xac,0x12,0x4c,0xaf,0xbd,0x4c,0x41,0x9e,0xf9,0xb2,0xbd,0xd7,0x56,0x93,0xaf,0x96,0x3b,0x6a,0x50, + 0xac,0xbe,0x3e,0xc8,0x12,0x94,0xe3,0xb2,0x34,0x36,0x3a,0x2a,0xf0,0xa7,0xbb,0x93,0x73,0x55,0x02,0x1b,0x98,0xc2,0x5c,0x8c, + 0x7f,0x3c,0x01,0x75,0x5c,0x0c,0x8b,0x46,0x35,0xb4,0x41,0x85,0x38,0x2e,0xb9,0x92,0x06,0xc5,0x78,0xcf,0x82,0xbf,0x5e,0xc9, + 0x74,0x66,0xb3,0xac,0x5f,0xb7,0xda,0x6f,0x76,0xba,0x36,0x4c,0x48,0x67,0x99,0x77,0xbc,0x3e,0xe6,0x2e,0xf3,0xc4,0x3a,0xdb, + 0x10,0x4f,0x1f,0xd6,0xf0,0xc6,0x55,0xcc,0x66,0x30,0x1f,0xb9,0x23,0x87,0xef,0x14,0xa9,0x0f,0xcb,0xd4,0x8c,0x75,0x6a,0x83, + 0xda,0xe1,0x1e,0x74,0x84,0x19,0x3c,0xef,0xd9,0x67,0x3a,0xcc,0x06,0xdd,0xa3,0x02,0x4d,0xfd,0xc8,0x99,0x7d,0xcf,0xeb,0xf3, + 0x3a,0xb6,0x77,0x87,0xbe,0x60,0xc6,0x15,0x98,0x33,0xc8,0x66,0x15,0x02,0x9d,0x5d,0xfa,0xf6,0x64,0x94,0xf2,0xa9,0x79,0xa8, + 0x67,0x2c,0x23,0xf1,0xc9,0x1c,0x13,0xca,0x26,0x15,0xe9,0xa8,0xe7,0x2e,0xf7,0x76,0x78,0xc5,0x23,0x51,0x61,0xf2,0x6b,0xb9, + 0xee,0x14,0x9c,0x35,0xe1,0xec,0xec,0xbb,0x9e,0x6b,0xb1,0x15,0xdf,0x2c,0x44,0x02,0x6b,0x71,0xfb,0x42,0x55,0x8b,0xcd,0xec, + 0xb7,0x1b,0x6d,0x2a,0x17,0x95,0xb4,0xc8,0xc4,0xb5,0x71,0xdc,0xc1,0x62,0x78,0x7d,0xf8,0xf5,0x09,0xdd,0x3f,0x69,0x50,0x7b, + 0xaf,0xd9,0x7a,0xa1,0xca,0xd5,0xc3,0x1a,0x74,0x3e,0x52,0x54,0xa0,0x23,0x40,0x5d,0x16,0xe7,0xc8,0xc4,0x16,0x56,0xd0,0x0f, + 0x7b,0x58,0x61,0xf6,0x99,0x5f,0xce,0xa9,0x4e,0xf4,0x6f,0x74,0x37,0xd3,0x2d,0x57,0xff,0x4e,0x39,0x7b,0x52,0x64,0x2f,0x37, + 0xe2,0xf9,0x70,0x54,0xe8,0x1c,0x75,0xcf,0x3a,0x55,0xe1,0x35,0x47,0x3d,0x37,0xd7,0xa4,0x99,0xd7,0x83,0x7a,0x1d,0x54,0x6e, + 0xe9,0x08,0xa5,0x5c,0x7f,0x48,0xc4,0x9d,0xc6,0xcd,0x8e,0x7a,0x55,0xad,0x3a,0x54,0xad,0x2a,0xc3,0x29,0x7e,0x91,0x6e,0x1e, + 0xbd,0x7e,0x31,0x17,0x39,0xc2,0x8c,0x91,0xf7,0xa3,0x29,0x13,0x0f,0x8a,0x3c,0xf3,0x7e,0xb7,0x7b,0x8d,0x69,0x73,0xe4,0xff, + 0xdb,0x7a,0xbc,0x21,0x13,0xaf,0xa7,0xf4,0x1d,0x0a,0x39,0xe5,0x5d,0x83,0xfd,0xfd,0xa3,0x5d,0xa7,0xfa,0x8d,0x4e,0xee,0xb7, + 0x94,0x29,0xce,0xc3,0xfc,0x64,0x2b,0xa2,0xf8,0xa1,0xf5,0x7a,0xb5,0x13,0x69,0x28,0xe8,0x7d,0x02,0xc9,0x6a,0x3d,0xba,0x5c, + 0x43,0xee,0x7a,0xfe,0x4f,0xd7,0x5e,0x55,0xe0,0x9d,0xce,0x02,0x77,0x2e,0x7a,0x9c,0x51,0x3a,0xc1,0x3c,0x79,0xc8,0xb3,0x94, + 0xa1,0x03,0x5f,0x39,0x33,0x66,0x9d,0x9a,0x3f,0x74,0x6a,0xd1,0x80,0x24,0xc6,0xf6,0x4a,0x65,0x9b,0x99,0xc5,0x16,0xa6,0x72, + 0x13,0x82,0xd4,0x72,0xdd,0xec,0x28,0xc1,0x72,0x9c,0xeb,0xfb,0x7f,0x76,0xe0,0xa2,0x73,0x91,0x6e,0xc0,0x6d,0xb3,0xb0,0x54, + 0xb5,0xab,0x34,0xdd,0x80,0x16,0x75,0x45,0xa8,0x0e,0xd5,0xb1,0x6a,0x11,0x56,0xa2,0x4c,0x7f,0x75,0x92,0x67,0xdc,0x25,0x2a, + 0xb1,0x6f,0x11,0xca,0x3c,0x53,0x9a,0x5c,0x9d,0x08,0x9c,0x50,0x89,0x12,0xaf,0x1a,0xb5,0x5f,0x0d,0xd9,0xaf,0x57,0x33,0x9d, + 0x27,0x74,0x4d,0x9f,0x6e,0x1e,0xd2,0xf9,0x7a,0x5b,0xef,0xc7,0x62,0x9d,0x39,0x4a,0x67,0x60,0xb3,0xc3,0xc7,0x99,0xe7,0x78, + 0x61,0x95,0x29,0x50,0xa3,0x2f,0xa8,0xf4,0x31,0x49,0x4c,0xf1,0xa4,0x72,0x17,0x2f,0xa0,0xc3,0x19,0x83,0x70,0xef,0xf1,0xc7, + 0xfa,0x3d,0x76,0xa8,0x4f,0xab,0x0a,0x1e,0x15,0xa0,0x8b,0x90,0x09,0x7f,0x73,0xff,0x1a,0xcf,0x72,0x2d,0x49,0xb7,0x56,0xf2, + 0xce,0x76,0xb3,0x54,0x6d,0xed,0x9d,0xa9,0x02,0xbc,0x4e,0xe2,0x4f,0x57,0x99,0x2e,0xd7,0xc1,0xc8,0x76,0xdd,0xdb,0xd2,0xeb, + 0xd5,0xf3,0x8c,0x63,0x02,0xbe,0x9c,0xeb,0x79,0xe7,0xb8,0x39,0x80,0xb5,0xfa,0x34,0x52,0x07,0x6c,0x65,0x59,0xbf,0x5d,0xb8, + 0x60,0x2e,0xa0,0x8b,0x3f,0x97,0x20,0x8e,0x0b,0x55,0x23,0x8e,0x99,0x6d,0x98,0x67,0x5e,0xdf,0xe1,0x4a,0xe6,0x3c,0x3c,0x78, + 0x77,0x9e,0xee,0x51,0x09,0x74,0xc9,0xc6,0xef,0x28,0x13,0xbd,0x21,0x9e,0x2d,0x08,0x32,0x27,0xf1,0x71,0x89,0x2e,0x70,0x94, + 0xa9,0x7f,0x97,0xfc,0x74,0x10,0x4f,0x61,0xa9,0xd3,0x29,0xad,0xf1,0x94,0x82,0x3e,0x90,0xe5,0xde,0xcb,0x30,0xd7,0x95,0xc3, + 0x17,0x16,0xa0,0xca,0x59,0x8f,0xb6,0x3e,0x21,0xac,0xe6,0x51,0xad,0xa5,0xf8,0x6b,0xca,0xd2,0x81,0x90,0x95,0xca,0x7c,0x7e, + 0x12,0x73,0xf4,0x51,0xbc,0x21,0x37,0x2f,0xa2,0x6c,0x7f,0xcd,0xda,0x53,0x70,0x27,0x7b,0x4a,0xcc,0x67,0x5e,0xc7,0xf1,0x07, + 0xb2,0x11,0xa3,0x77,0xa9,0x68,0x75,0xe5,0x3c,0xd4,0xe8,0x6b,0xa3,0xf4,0x46,0xb5,0x07,0x9e,0x12,0x35,0x9f,0x6a,0x29,0x0e, + 0xea,0x5a,0x95,0x83,0x10,0xce,0x42,0x25,0x56,0x61,0x44,0x1d,0x96,0x62,0xa7,0x27,0xc6,0x2b,0xc8,0x24,0x38,0x97,0xbb,0x0b, + 0xf5,0x31,0x2c,0x46,0xaa,0xaa,0x46,0x01,0xa7,0x9d,0x44,0x2d,0xe3,0xf5,0xa7,0xde,0x11,0x2a,0x8d,0xa3,0x0f,0x73,0x0e,0xce, + 0xaa,0x5b,0x17,0x20,0x1c,0xc5,0x78,0xad,0x91,0xb3,0x18,0xa2,0x0b,0x38,0x9f,0x7e,0x2a,0xc6,0x95,0xab,0xd6,0xaa,0x89,0xb3, + 0xd1,0x88,0x8b,0xe8,0x17,0x8d,0x87,0x0b,0xb9,0xd3,0xbd,0x98,0x8c,0x64,0x00,0xa6,0xfe,0x58,0xc9,0x5a,0x1e,0x55,0x4b,0x9d, + 0x89,0x68,0x67,0x9e,0x09,0x43,0xb6,0x67,0xb7,0xfb,0x0f,0x13,0x82,0x6e,0xd7,0x67,0xbe,0x8e,0x47,0x7f,0xde,0xc4,0x00,0xae, + 0x40,0xa6,0x71,0x6e,0x65,0x15,0xe7,0xf2,0x85,0x72,0xe6,0xe2,0x92,0xfb,0x85,0xc9,0x3e,0x48,0x51,0x75,0x4c,0xd0,0xcb,0x11, + 0x8c,0x74,0x6e,0x57,0x09,0x70,0x07,0x33,0xd0,0xd5,0x02,0x5f,0x35,0x7c,0xc8,0x47,0x33,0xd5,0x49,0xf8,0xea,0x21,0x2f,0x84, + 0x73,0x0e,0xf5,0xbb,0x3b,0xb0,0x45,0xef,0xc5,0xc3,0x1b,0x50,0x83,0x1b,0x42,0x54,0x30,0xbc,0x77,0xa1,0x00,0xb1,0x08,0xe4, + 0xad,0xab,0xb1,0x02,0xc7,0x54,0x19,0x3f,0xf3,0xe3,0xa4,0x0b,0x3c,0xa2,0x6b,0x78,0x1e,0x61,0x78,0x7f,0x1f,0xd7,0xb9,0x57, + 0x39,0xfd,0xd5,0x77,0x59,0x9c,0x1c,0xaa,0x67,0xb2,0x06,0x6f,0xf7,0x8b,0xe6,0xba,0x5e,0x35,0x8a,0x73,0x10,0x8b,0xa1,0x23, + 0x25,0x23,0x89,0xf2,0xe0,0x73,0xd6,0xbe,0x39,0xad,0xc3,0x84,0xeb,0x1c,0x8e,0xcf,0x45,0x3c,0x72,0x18,0x8e,0x74,0x7e,0xbc, + 0x16,0x4b,0x90,0xc2,0x37,0xc2,0x11,0x82,0xde,0x45,0xd8,0xa7,0x16,0xa8,0x67,0x0a,0x39,0xa6,0x83,0xbb,0x18,0xac,0x2e,0xe0, + 0x89,0x1f,0xbf,0x39,0xa0,0xb6,0xb8,0xcf,0xa9,0x44,0xac,0x53,0x67,0xd8,0xc3,0xf9,0xee,0x70,0xfe,0xc5,0x73,0x8e,0x70,0x5d, + 0xa6,0xa6,0x2f,0x56,0x57,0xde,0x78,0x11,0xbf,0x95,0x62,0x93,0x4a,0x40,0x17,0x8e,0x3a,0xfe,0x06,0x15,0x4f,0x63,0x78,0x9c, + 0xcf,0x1e,0xfd,0x9d,0x33,0x33,0xef,0xbb,0xe1,0xdf,0xb6,0x6d,0xdb,0xb6,0x6d,0xdb,0xb6,0xd5,0xd8,0x4e,0xdd,0x46,0xd5,0x6e, + 0x1a,0x76,0x93,0xda,0x76,0xec,0xe4,0x89,0x6f,0x8c,0x27,0x73,0xb7,0x5f,0x8f,0x8f,0x91,0xe7,0xe6,0x52,0x5e,0x7e,0xd9,0xda, + 0xff,0xf8,0xd9,0x8d,0x3f,0x73,0x21,0x67,0xe0,0x95,0x7c,0x06,0xcb,0xb5,0x73,0x28,0x41,0x5f,0x5a,0xfb,0x1b,0x9f,0xe8,0x45, + 0x1c,0xbf,0xfb,0xf4,0x1f,0x55,0xad,0xe2,0x31,0xce,0x75,0x6e,0xa3,0x67,0x96,0xb9,0x3c,0x0b,0x3b,0xd0,0xa8,0xb3,0x9c,0x97, + 0x65,0xd7,0x2c,0xca,0x3f,0x5f,0x59,0x7b,0xf2,0x73,0xab,0x19,0xcb,0x4b,0x37,0xa1,0x27,0xe8,0x2f,0xf5,0x60,0x31,0x1b,0xf9, + 0xee,0x32,0x95,0x61,0x6e,0x9b,0x8f,0x68,0x74,0xa3,0x9f,0x47,0xe4,0x39,0xd6,0x7d,0xad,0x93,0x7f,0xa2,0x1f,0x95,0x58,0xa7, + 0xb6,0xf3,0x2f,0x7c,0xfb,0x71,0x91,0x49,0x62,0x0e,0x72,0x55,0x09,0x43,0x3f,0x98,0x72,0xd7,0x61,0x1a,0x13,0x91,0x8d,0x22, + 0x95,0xa1,0x0b,0x71,0xb4,0x57,0x4d,0x04,0x8f,0x63,0x1d,0x8e,0x7f,0xc5,0x87,0xe3,0xa6,0xe1,0xa9,0xbc,0xe0,0x0e,0xd5,0xe7, + 0x6e,0x42,0x91,0xae,0xc0,0x76,0x4e,0xd1,0xab,0x0b,0x18,0xa9,0x8f,0x8a,0xd6,0x63,0x48,0x63,0x92,0x9e,0x40,0x46,0xd0,0x1a, + 0xbd,0x8b,0x7f,0xe0,0x3f,0xcf,0x10,0x7e,0x65,0x84,0xbe,0x77,0xc2,0x99,0xcb,0x21,0xcc,0xe4,0x09,0x43,0xdc,0xcd,0x4e,0x24, + 0xe9,0x75,0xae,0x2f,0xac,0xfc,0xe0,0xca,0xe0,0x34,0x67,0x01,0xee,0xfd,0xa8,0x84,0xc5,0x3a,0xec,0x84,0x58,0xb5,0x0f,0x1b, + 0x30,0x80,0xbb,0xb3,0x3d,0x85,0xc1,0x85,0x48,0x35,0x2b,0x50,0xcd,0xd9,0x5c,0xcd,0x01,0x27,0x91,0xf9,0x6a,0x27,0x57,0x38, + 0xd3,0xb8,0x83,0x93,0xcc,0x46,0x3b,0x77,0x7a,0xea,0x19,0xa9,0x9a,0xd9,0x85,0x5a,0xcf,0x38,0x12,0xd5,0x7d,0x53,0x98,0x44, + 0x11,0x22,0xd4,0x6a,0xf3,0x60,0x35,0x3a,0xd9,0xa8,0xe2,0x71,0x68,0x3c,0x26,0x30,0x0d,0xdb,0x31,0x8e,0x4b,0x67,0x33,0x95, + 0x1d,0x7c,0x6c,0x0c,0x4f,0x97,0xeb,0xdf,0xdd,0x1c,0x55,0x85,0xb7,0x0b,0xb1,0x06,0x91,0x7c,0x30,0x9a,0x63,0x48,0xc5,0x71, + 0xb9,0x58,0xa2,0xa6,0x30,0x80,0x1c,0xe5,0xec,0xc3,0xff,0x54,0xa7,0xfe,0x07,0x3f,0x3c,0x76,0xe3,0x1f,0xc1,0x8d,0xa1,0x79, + 0xaa,0x42,0x19,0x59,0x9a,0x4f,0xb9,0xe7,0x53,0x6b,0x0f,0xfe,0x20,0x45,0xb5,0xe3,0xe9,0x64,0x2e,0x66,0x8c,0xd2,0x72,0x66, + 0x0e,0xe5,0x96,0x5c,0x6b,0xef,0x09,0x0b,0x39,0xff,0xc9,0x13,0xb4,0x34,0x2c,0xa1,0x9c,0xb5,0xc5,0xda,0x16,0x1c,0x5f,0x8f, + 0x43,0x9d,0x0b,0xb4,0x3c,0xea,0xa5,0x98,0x72,0x6b,0xdf,0x38,0x65,0x2b,0x5a,0xf1,0xce,0x0a,0x84,0xcb,0xdb,0x45,0x94,0xd3, + 0xcb,0xac,0xed,0xd3,0xf9,0x3a,0x19,0x55,0x4e,0x96,0x79,0x6f,0x0f,0x5b,0x90,0xa2,0x8e,0x1b,0x08,0x1a,0xe4,0x27,0x05,0x6a, + 0x19,0x27,0x71,0xde,0x76,0x6c,0x46,0x11,0x06,0xf5,0x42,0x36,0x9b,0x44,0x14,0xe1,0x0b,0x8f,0x5c,0x5d,0x4c,0x69,0xf4,0x59, + 0x2b,0x4f,0xfc,0xc2,0x6b,0x22,0xf0,0xf8,0x04,0x3a,0x90,0xa0,0xd0,0x63,0x46,0xe9,0xe5,0x43,0x47,0xc8,0x49,0x7e,0xca,0x9e, + 0x8a,0x40,0xbb,0x33,0xd7,0xf5,0x54,0x61,0xa7,0x59,0xab,0x1e,0x9a,0xcb,0xfb,0x53,0x30,0xe6,0xfe,0xe0,0xc7,0x62,0xf4,0x23, + 0xf8,0x0f,0x35,0xc4,0x21,0x1c,0xdf,0xc0,0x25,0xd8,0x84,0x5a,0xee,0xc2,0xb1,0x05,0xd8,0xc8,0x8d,0x78,0xaa,0x07,0x77,0x16, + 0x71,0x1e,0xd3,0x9d,0xcd,0xf8,0x55,0xfd,0xce,0x29,0x67,0x06,0x1c,0x99,0x56,0x42,0xf1,0x97,0x58,0xfb,0xd6,0x69,0x57,0x7d, + 0xfb,0xe0,0xf7,0x4f,0x07,0x9b,0x2a,0x68,0x49,0x28,0xa3,0xdc,0x5b,0x6c,0x6d,0x39,0x22,0xf1,0x76,0x01,0x9e,0x2c,0xa5,0x91, + 0xda,0x00,0x76,0x4e,0xe0,0xd2,0x2d,0x57,0x9c,0x14,0xcf,0xaf,0x4f,0x3a,0xa2,0x1c,0x46,0x4e,0xf6,0x53,0xca,0x03,0xcf,0xe3, + 0x70,0xcf,0x35,0x77,0x6f,0x46,0x33,0xa5,0x81,0x5a,0x0e,0xa0,0xaf,0xfb,0xad,0x3d,0xe1,0xf4,0x13,0x6f,0x95,0x37,0x1c,0xc9, + 0x9f,0x4f,0xa9,0x9d,0x3c,0xe0,0xbc,0xa0,0x8b,0x51,0xf8,0xb0,0x0c,0xaf,0xdd,0xee,0xa7,0x16,0x5f,0x0e,0xe5,0xf6,0x09,0x6b, + 0x43,0xdf,0xf8,0xee,0x57,0x7e,0x9c,0x06,0x2d,0xbb,0x8b,0x28,0xb1,0xf5,0xd6,0x1e,0x73,0x5e,0x48,0xf8,0x99,0x27,0x6a,0x71, + 0x4b,0x28,0xab,0x1a,0xad,0x3d,0xe8,0x88,0xb3,0xee,0xbe,0xfa,0x12,0x2d,0xe1,0x65,0x14,0x6f,0xad,0xb5,0xa7,0x1d,0x11,0xfe, + 0x2f,0x8e,0xfc,0xcc,0x91,0x17,0xd3,0x29,0x8d,0xc7,0x89,0x8c,0xe3,0x8d,0xcd,0xbc,0xb8,0x9c,0x8f,0x45,0xa8,0x02,0xfc,0x8e, + 0xd3,0xb4,0x5c,0x93,0x49,0xf9,0x3b,0xc0,0xd4,0xe2,0xac,0x7f,0xf1,0x41,0x1b,0x13,0xa1,0xe5,0xfc,0x99,0x94,0xce,0x10,0x91, + 0x52,0x9c,0x16,0xcb,0x47,0x9f,0xb8,0x40,0x4b,0x4e,0x00,0xb9,0x26,0x54,0x64,0x36,0xae,0x4a,0xc6,0xcb,0xe1,0x67,0x69,0xa9, + 0x0a,0x20,0x57,0xba,0x22,0x6f,0x3d,0x78,0xd3,0x97,0xf3,0xb0,0x02,0x8e,0x74,0x04,0x90,0x21,0x25,0xf2,0xfe,0x43,0x7e,0xc4, + 0x31,0x1e,0x3f,0x33,0x01,0xdf,0x3f,0x79,0x94,0x96,0x96,0x00,0xe1,0x73,0x44,0xee,0x72,0x6f,0xac,0x40,0xf0,0x52,0x68,0xe9, + 0x09,0x20,0x37,0x1a,0x91,0x43,0x4e,0xcd,0xe4,0xc9,0xff,0xf1,0x16,0x47,0x42,0x03,0xc8,0x11,0x5b,0x44,0x56,0xea,0x53,0xd2, + 0x4d,0x16,0x3b,0xdc,0x35,0xe8,0x75,0x06,0x39,0xae,0x0f,0xec,0x49,0x9b,0x43,0xf9,0x7b,0xa3,0xc8,0x2f,0xe6,0xd9,0x2e,0xe3, + 0xc5,0x3b,0x11,0xf4,0x88,0xeb,0xa3,0xe4,0xae,0x17,0xc9,0xc5,0x63,0x19,0xf8,0x3e,0x53,0xb7,0xe2,0xc9,0x22,0xec,0x44,0x58, + 0x12,0x7c,0x6c,0xe1,0x2f,0xd0,0x12,0x55,0x4c,0xd9,0x18,0x50,0xfc,0x70,0x8a,0xa9,0xc0,0xef,0xc8,0x80,0x91,0xc9,0x32,0x4a, + 0xfe,0x5a,0x91,0x2a,0xa2,0x33,0x28,0x5b,0xff,0xad,0xaf,0xaa,0xf0,0xb4,0x28,0x47,0x0e,0x5e,0x46,0xa9,0x0c,0x48,0x9b,0x78, + 0xc4,0x73,0x79,0x18,0xc6,0xeb,0x8b,0xf9,0xc3,0x5b,0xdf,0xbd,0x2c,0x47,0x17,0x52,0x2e,0x99,0x10,0x59,0x6f,0xe6,0x23,0x0f, + 0x27,0xae,0xc4,0xaf,0xec,0x53,0x7b,0xd4,0x65,0x1d,0x88,0x54,0xcf,0x3d,0x3e,0x84,0x07,0x6b,0xb8,0x4a,0x7f,0x73,0xf9,0x4d, + 0xa3,0x3c,0xe5,0x52,0x1f,0x7f,0x45,0xd8,0xab,0x33,0xf8,0x33,0xff,0x50,0x85,0x8e,0x8f,0xb1,0xa8,0xc3,0x74,0xfe,0x87,0x1e, + 0xbd,0x4b,0x95,0xc2,0xcf,0x3d,0x3a,0x8b,0x1f,0xcd,0x67,0xda,0x21,0xab,0x55,0x6e,0xc8,0xdb,0xcf,0x77,0x71,0x48,0xbb,0x5f, + 0x74,0x62,0xb9,0xfa,0x03,0x37,0xdc,0x10,0xe5,0x7e,0xd0,0x6d,0xfc,0x4c,0x39,0x26,0xcd,0x89,0x51,0x23,0xe8,0x36,0xd7,0x8c, + 0xe9,0x36,0x44,0xa8,0x7b,0x77,0xb9,0x1d,0x7a,0xb6,0xfe,0xfe,0xb5,0x5b,0xd6,0x63,0x04,0x0d,0xd4,0x33,0x39,0x82,0x31,0x5e, + 0x60,0xb6,0xa1,0xff,0xb8,0x96,0xa0,0x5f,0xf4,0x7c,0xb7,0xce,0xac,0xc7,0x3e,0xd3,0x6a,0x22,0x9c,0x32,0xfe,0x72,0xc8,0x79, + 0x19,0xe1,0x5b,0x18,0xa1,0x57,0xa1,0x25,0xf8,0x0f,0x37,0x17,0x61,0x6f,0xfc,0xce,0x85,0x6a,0xd0,0xdd,0xc3,0xa0,0x2a,0x35, + 0x84,0x45,0x61,0xbf,0xe9,0x23,0x16,0xb1,0x17,0x1b,0x50,0xc3,0xeb,0x27,0xd4,0x30,0xe7,0xd2,0x44,0x69,0x3f,0xcf,0xcf,0x43, + 0x84,0xf3,0xf4,0x90,0xe9,0x56,0x4b,0x51,0xea,0x8e,0x70,0x0f,0xa7,0xf3,0x94,0xeb,0x2d,0xfe,0xf1,0xcc,0xd7,0xdd,0xfa,0x3f, + 0xdd,0xc9,0x26,0x93,0x8d,0x72,0xb6,0x9a,0x24,0x9e,0xf5,0xcd,0x9f,0x1c,0xe6,0xdf,0x7c,0x7a,0xd4,0x53,0xca,0xfb,0x16,0x71, + 0x91,0x93,0xaf,0x4f,0x69,0xc2,0xa3,0x0d,0x4e,0x0f,0x16,0x20,0xd3,0xdc,0x91,0x89,0x08,0xb7,0x52,0x8f,0x30,0x43,0x9d,0x3b, + 0x57,0x6d,0xa4,0xd7,0x59,0xa9,0x6b,0xcc,0x4d,0x9d,0xf4,0xe1,0xc1,0x38,0xba,0x52,0x50,0x42,0xc9,0x39,0x1c,0xd2,0xc4,0x85, + 0xba,0x22,0x2c,0xcf,0xfc,0xed,0x7a,0x21,0x95,0x1e,0xbf,0x29,0xc5,0xcc,0xd0,0x18,0xfc,0x1f, +}; +}}}} diff --git a/test/fixtures/pocket_gui/U8g2_for_Adafruit_GFX.h b/test/fixtures/pocket_gui/U8g2_for_Adafruit_GFX.h new file mode 100644 index 000000000..9eaec00a6 --- /dev/null +++ b/test/fixtures/pocket_gui/U8g2_for_Adafruit_GFX.h @@ -0,0 +1,40 @@ +#pragma once +#include +#include + +inline constexpr uint8_t u8g2_font_helvR08_tf[] = {0}; +inline constexpr uint8_t u8g2_font_helvB08_tf[] = {1}; +inline constexpr uint8_t u8g2_font_helvR10_tf[] = {2}; +inline constexpr uint8_t u8g2_font_helvB10_tf[] = {3}; + +class U8G2_FOR_ADAFRUIT_GFX { + Adafruit_GFX* _gfx = nullptr; + unsigned _font = 0; + uint16_t _foreground = 0, _background = 1; +public: + void begin(Adafruit_GFX& gfx) { _gfx = &gfx; } + void setForegroundColor(uint16_t color) { _foreground = color; } + void setBackgroundColor(uint16_t color) { _background = color; } + void setFont(const uint8_t* font) { _font = *font; } + void setFontMode(int) {} + void setFontDirection(int) {} + // Helvetica 08/10 ascent/descent from the selected u8g2 font metadata. + int getFontAscent() const { return _font >= 2 ? 11 : 8; } + int getFontDescent() const { return _font >= 2 ? -3 : -2; } + int getUTF8Width(const char* text) const { + int width = 0; + for (const auto* next = reinterpret_cast(text); *next; ++next) { + if ((*next & 0xC0) == 0x80) continue; + width += (*next == 'i' || *next == 'l') ? 2 : *next == 'W' ? 8 : _font >= 2 ? 6 : 5; + } + return width; + } + void drawUTF8(int x, int baseline, const char* text) { + const int width = getUTF8Width(text); + assert(x >= 0 && x + width <= _gfx->width()); + assert(baseline - getFontAscent() >= 0); + assert(baseline - getFontDescent() <= _gfx->height()); + _gfx->labels.push_back({x, baseline, width, getFontAscent(), getFontDescent(), (_font & 1) != 0, + _foreground, _background, text}); + } +}; diff --git a/test/fixtures/pocket_gui/helpers/ui/GxEPDDisplay.h b/test/fixtures/pocket_gui/helpers/ui/GxEPDDisplay.h new file mode 100644 index 000000000..305865614 --- /dev/null +++ b/test/fixtures/pocket_gui/helpers/ui/GxEPDDisplay.h @@ -0,0 +1,69 @@ +#pragma once + +#include +#include +#include +#include +#include + +constexpr uint16_t GxEPD_BLACK = 0; +constexpr uint16_t GxEPD_WHITE = 1; + +class Adafruit_GFX { +public: + struct Text { + int x, baseline, width, ascent, descent; + bool bold; + uint16_t foreground, background; + std::string value; + }; + std::vector labels; + int w = 250, h = 122; + int rotation = 3; + int width() const { return w; } + int height() const { return h; } + void fillScreen(uint16_t) { labels.clear(); } + void fillRect(int x, int y, int width, int height, uint16_t) { + assert(x >= 0 && y >= 0 && width >= 0 && height >= 0); + assert(x + width <= w && y + height <= h); + } + void drawPixel(int x, int y, uint16_t) { + assert(x >= 0 && y >= 0 && x < w && y < h); + } + void drawLine(int x0, int y0, int x1, int y1, uint16_t) { + assert(x0 >= 0 && y0 >= 0 && x1 >= 0 && y1 >= 0); + assert(x0 < w && x1 < w && y0 < h && y1 < h); + } + void fillCircle(int x, int y, int, uint16_t color) { drawPixel(x, y, color); } + void drawCircle(int x, int y, int, uint16_t color) { drawPixel(x, y, color); } + bool contains(const char* value) const { + for (const auto& text : labels) if (text.value == value) return true; + return false; + } + unsigned occurrences(const char* value) const { + unsigned result = 0; + for (const auto& text : labels) if (text.value == value) ++result; + return result; + } +}; + +class GxEPDDisplay { + Adafruit_GFX _gfx; +public: + bool on = true; + uint32_t hash = 2166136261U; + bool isOn() const { return on; } + Adafruit_GFX& gfx() { return _gfx; } + void setNativeRotation(int rotation) { + _gfx.rotation = rotation; + _gfx.w = (rotation & 1) ? 250 : 122; + _gfx.h = (rotation & 1) ? 122 : 250; + } + void crcAdd(const void* value, size_t size) { + for (size_t i = 0; i < size; ++i) { + hash ^= static_cast(value)[i]; + hash *= 16777619U; + } + } + void resetHash() { hash = 2166136261U; } +}; diff --git a/test/fixtures/pocket_gui/test_pocket_bindings.cpp b/test/fixtures/pocket_gui/test_pocket_bindings.cpp new file mode 100644 index 000000000..12637949c --- /dev/null +++ b/test/fixtures/pocket_gui/test_pocket_bindings.cpp @@ -0,0 +1,132 @@ +#include +#include +#include +#include + +#define UI_MSG_PREVIEW_SIZE 161 +#define MAX_GROUP_CHANNELS 40 +#define KEY_UP 0xB5 +#define KEY_DOWN 0xB6 +#define MESH_DEBUG_PRINTLN(...) + +static uint32_t now_millis = 12345; +uint32_t millis() { return now_millis; } +uint64_t companionMessageNowMillis() { return now_millis; } +struct Screen { virtual ~Screen() = default; }; +struct Display { + bool on = true; + int wakes = 0; + bool isOn() const { return on; } + void wake(mesh::ui::DisplayWake) { ++wakes; } +}; + +struct MsgPreviewScreen : Screen { + mesh::ui::CompanionMessageHistory<32, UI_MSG_PREVIEW_SIZE> history; + bool selected = false; + void addPreview(uint8_t, const char* sender, const char* text, int channel, + const char* channel_name, int queue_index, bool select) { + selected = select; + history.add(now_millis, channel, channel_name, sender, text, queue_index); + } + // @ADD_SENT@ +}; +struct HomeScreen : Screen { + bool board = true; + int message_hooks = 0; + bool isPocketBoard() const { return board; } + void pocketMessageAdded(int) { ++message_hooks; } +}; + +class UITask { +public: + Screen *home, *msg_preview, *reader, *curr; + Display* _display; + int _msgcount = 0, screen_changes = 0, buzzer_changes = 0; + uint32_t _next_refresh = 0; + bool connected = false, pairing = false, allow_wake = true; + bool _deferred_msg_preview = false; + UITask(HomeScreen& h, MsgPreviewScreen& m, Screen& r, Display& d) + : home(&h), msg_preview(&m), reader(&r), curr(&h), _display(&d) {} + bool hasConnection() const { return connected; } + bool isPairingScreenActive() const { return pairing; } + bool isReaderActive() const { return curr == reader; } + bool shouldWakeDisplayForMessage() const { return allow_wake; } + void setCurrScreen(Screen* screen) { curr = screen; ++screen_changes; } + char checkDisplayOn(char key) { return key; } + void toggleBuzzer() { ++buzzer_changes; } + void newMsg(uint8_t path_len, const char* from, const char* text, int count, + int channel, const char* channel_name, int queue_index); + void channelMessageSent(int channel, const char* channel_name, const char* sender, + const char* text, size_t length); + char handleMultiClick(char key, bool backwards); +}; + +// @TASK_METHODS@ + +int main() { + HomeScreen home; + MsgPreviewScreen preview; + Screen reader; + Display display; + UITask task(home, preview, reader, display); + auto receive = [&](int channel = 0) { + task.newMsg(1, "Channel Public", "Alice: received", 7, channel, "Public", 3); + }; + + // A live-board channel arrival updates history without stealing the board. + receive(); + assert(task.curr == &home && task.screen_changes == 0); + assert(preview.history.count() == 1 && home.message_hooks == 1); + assert(!task._deferred_msg_preview && task._msgcount == 7); + assert(preview.selected && display.wakes == 1 && task._next_refresh == now_millis); + + // Connected apps, the pairing PIN and the Reader keep their existing policy. + task.connected = true; + receive(); + assert(task.curr == &home && !preview.selected && !task._deferred_msg_preview); + task.connected = false; + task.pairing = true; + receive(); + assert(task.curr == &home && task._deferred_msg_preview); + task.pairing = false; + task.curr = &reader; + receive(); + assert(task.curr == &reader && task._deferred_msg_preview); + task.curr = &home; + home.board = false; + receive(); + assert(task.curr == &preview); + task.curr = &home; + home.board = true; + receive(-1); + assert(task.curr == &preview); // a direct message retains its normal preview + + const int previous_wakes = display.wakes; + task.allow_wake = false; + receive(); + assert(display.wakes == previous_wakes); + + // The outbound app buffer is length-delimited, not necessarily terminated. + const char raw[] = {'o', 'w', 'n'}; + task.curr = &reader; + task.channelMessageSent(0, "Public", "Self", raw, sizeof(raw)); + assert(task.curr == &reader); + const auto* sent = preview.history.newest(0); + assert(sent->own_sent && !sent->unread && sent->queue_index == -1); + assert(std::strcmp(sent->message, "own") == 0); + const size_t previous_count = preview.history.count(); + task.channelMessageSent(-1, "Public", "Self", raw, sizeof(raw)); + task.channelMessageSent(40, "Public", "Self", raw, sizeof(raw)); + assert(preview.history.count() == previous_count); + char long_text[200]; + std::memset(long_text, 'x', sizeof(long_text)); + task.channelMessageSent(0, "Public", "Self", long_text, sizeof(long_text)); + assert(std::strlen(preview.history.newest(0)->message) == UI_MSG_PREVIEW_SIZE - 1); + + task.curr = &home; + assert(static_cast(task.handleMultiClick(0, false)) == KEY_DOWN); + assert(static_cast(task.handleMultiClick(0, true)) == KEY_UP); + assert(task.buzzer_changes == 0); + home.board = false; + assert(task.handleMultiClick(0, false) == 0 && task.buzzer_changes == 1); +} diff --git a/test/fixtures/pocket_gui/test_pocket_controls.cpp b/test/fixtures/pocket_gui/test_pocket_controls.cpp new file mode 100644 index 000000000..b6d2cd7e9 --- /dev/null +++ b/test/fixtures/pocket_gui/test_pocket_controls.cpp @@ -0,0 +1,131 @@ +#include +#include +#include +#include + +#define MAX_GROUP_CHANNELS 40 + +static uint32_t clock_millis = 123456; +uint32_t millis() { return clock_millis; } +struct Task { + mesh::ui::pocket::Settings settings; + int reader_opens = 0; + mesh::ui::pocket::Settings& pocketSettings() { return settings; } + unsigned pocketBoardCount() const { return 3; } + void showReader() { ++reader_opens; } + void showAlert(const char*, int) {} +}; +struct Mesh { + bool dual = true; + bool isDualRadioActive() const { return dual; } +} the_mesh; + +class HomeScreen : public UIScreen { +public: + enum HomePage { FIRST, MAP, STATUS, SETTINGS, RECENT, RADIO, RADIO2, RADIO_STATUS, Count }; + struct Board { + mesh::ui::pocket::BoardState state; + bool scrollOlder(unsigned count) { return state.scrollOlder(count); } + bool scrollNewer() { return state.scrollNewer(); } + void resetScroll() { state.scroll = 0; } + } _pocket; + Task* _task; + uint8_t _page = FIRST; + bool _pocket_editing = false, _pocket_browsing = false, _pocket_zooming = false; + bool _pocket_dirty = false, _dual_radio_enabled_seen = false; + uint8_t _pocket_setting = 0, _radio_status_page = 0; + uint32_t _pocket_last_input = 0, _radio_profile_page_started_at = 0; + int save_count = 0, clean_count = 0; + explicit HomeScreen(Task& task) : _task(&task) {} + int render(DisplayDriver&) override { return 0; } + bool flushPocketSettings() { ++save_count; _pocket_dirty = false; return true; } + void displayForceClean() { ++clean_count; } + void cyclePocketChannel(int direction) { + _task->settings.channel = (_task->settings.channel + 40 + direction) % 40; + } + // @HOME_IMPLEMENTATION@ +}; + +static void key(HomeScreen& home, uint8_t value) { + assert(home.handleInput(static_cast(value))); + assert(home._pocket_last_input == clock_millis); +} + +int main() { + Task task; + HomeScreen home(task); + key(home, KEY_ENTER); + assert(home._page == HomeScreen::FIRST && home._pocket_browsing); + key(home, KEY_NEXT); + assert(home._pocket.state.scroll == 1 && home._page == HomeScreen::FIRST); + key(home, KEY_PREV); + assert(home._pocket.state.scroll == 0); + key(home, KEY_DOWN); + assert(task.settings.channel == 1); + key(home, KEY_UP); + assert(task.settings.channel == 0); + key(home, KEY_ENTER); + assert(!home._pocket_browsing); + key(home, KEY_NEXT); + assert(home._page == HomeScreen::MAP); + key(home, KEY_ENTER); + assert(home._pocket_zooming); + key(home, KEY_NEXT); + assert(task.settings.map_zoom == 4 && home._pocket_dirty); + key(home, KEY_PREV); + assert(task.settings.map_zoom == 3); + key(home, KEY_ENTER); + assert(!home._pocket_zooming && !home._pocket_dirty); + key(home, KEY_NEXT); + key(home, KEY_NEXT); + assert(home._page == HomeScreen::SETTINGS); + key(home, KEY_ENTER); + assert(home._pocket_editing); + key(home, KEY_PREV); + assert(home._pocket_setting == 1); + key(home, KEY_NEXT); + assert(task.settings.text_large == 1 && home._pocket_dirty); + home._pocket_setting = 4; + key(home, KEY_NEXT); + assert(task.settings.dark == 1 && home.clean_count == 1); + key(home, KEY_ENTER); + assert(!home._pocket_editing && !home._pocket_dirty); + key(home, KEY_PREV); + assert(home._page == HomeScreen::STATUS); + key(home, KEY_ENTER); + assert(home._radio_status_page == 1 && task.reader_opens == 0); + + // Pairing can interrupt any editing/browsing mode. Returning to the first + // page saves settings and leaves the next click free to navigate normally. + for (const auto interrupted : {HomeScreen::SETTINGS, HomeScreen::MAP, HomeScreen::FIRST}) { + home._page = interrupted; + home._pocket_editing = home._pocket_browsing = home._pocket_zooming = true; + home._pocket_dirty = true; + home._pocket.state.scroll = 2; + home._pocket_last_input = 0; + const int saves = home.save_count; + clock_millis += 1000; + home.showFirstPage(); + assert(home._page == HomeScreen::FIRST && home.save_count == saves + 1); + assert(!home._pocket_editing && !home._pocket_browsing && !home._pocket_zooming); + assert(!home._pocket_dirty && home._pocket.state.scroll == 0); + assert(home._pocket_last_input == clock_millis); + key(home, KEY_NEXT); + assert(home._page == HomeScreen::MAP); + } + + // The existing Network-page hold remains the Reader action in the new GUI. + home._page = HomeScreen::RADIO; + key(home, KEY_ENTER); + assert(task.reader_opens == 1 && home._page == HomeScreen::RADIO); + home._page = HomeScreen::RADIO2; + key(home, KEY_ENTER); + assert(task.reader_opens == 2 && home._page == HomeScreen::RADIO2); + home._page = HomeScreen::RADIO_STATUS; + key(home, KEY_ENTER); + assert(home._radio_status_page == 2 && task.reader_opens == 2); + the_mesh.dual = false; + home._page = HomeScreen::RADIO; + key(home, KEY_NEXT); + assert(home._page == HomeScreen::FIRST); +} diff --git a/test/fixtures/pocket_gui/test_pocket_render.cpp b/test/fixtures/pocket_gui/test_pocket_render.cpp new file mode 100644 index 000000000..34653ab4a --- /dev/null +++ b/test/fixtures/pocket_gui/test_pocket_render.cpp @@ -0,0 +1,237 @@ +#include +#include +#include +#include +#include + +using namespace mesh::ui::pocket; +using History = mesh::ui::CompanionMessageHistory<32, 161>; + +static void channelBoard() { + Settings settings; + Frame frame; + frame.now = 1735689600UL + 30 * 60; + frame.heard_millis = 120000; + frame.tz_offset = 5.75f; + frame.battery_percent = 101; + frame.page_count = 11; + frame.connection = "BLE+USB"; + GxEPDDisplay display; + PocketGui gui; + History history; + history.add(60000, 0, "Public", "Ch 0 Public [1h]:", "Alice: hello everyone"); + history.add(100000, 2, "Private", "Ch 2 Private [1h]:", "secret sender: hidden"); + history.add(120000, 0, "Public", "Self", "outgoing", -1, true); + history.add(120000, -1, "", "Bob [direct]:", "direct hidden"); + gui.begin(display, settings, frame); + assert(gui.boardCount(history) == 2); + gui.renderBoard(history, "Public"); + assert(display.gfx().contains("Alice")); + assert(display.gfx().contains("Self")); + assert(display.gfx().contains("outgoing")); + assert(!display.gfx().contains("secret sender")); + assert(!display.gfx().contains("direct hidden")); + assert(display.gfx().contains("100%")); + // UTC 00:30 plus 05:45 Nepal offset. The previous-minute message gets 06:14. + assert(display.gfx().contains("06:15")); + assert(display.gfx().contains("06:14")); + bool sent_inverted = false; + for (const auto& text : display.gfx().labels) + if (text.value == "Self") sent_inverted = text.foreground == GxEPD_WHITE; + assert(sent_inverted); + + display.resetHash(); + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + const uint32_t first_hash = display.hash; + display.resetHash(); + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + assert(display.hash == first_hash); // unchanged content skips physical redraw + + assert(gui.scrollOlder(history) && gui.isScrolled()); + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + assert(display.gfx().contains("1 newer") && !display.gfx().contains("Self")); + history.add(120000, 0, "Public", "Ch 0 Public [1h]:", "Carol: new message"); + gui.messageAdded(); + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + assert(display.gfx().contains("2 newer") && display.gfx().contains("Alice")); + assert(!display.gfx().contains("Carol")); + gui.resetScroll(); + assert(!gui.isScrolled()); + + // Negative fractional offsets also cross midnight correctly. + frame.tz_offset = -3.5f; + gui.begin(display, settings, frame); + gui.renderMapChrome(); + gui.header("Map"); + assert(display.gfx().contains("21:00")); + + // A message received before Arduino millis() wrapped still retains its + // actual age, rather than being relabelled as newly received. + history.clear(); + history.add(UINT32_MAX - 59999U, 0, "Public", "Self", "before rollover", -1, true); + frame.now = 0; + frame.heard_millis = 1000; + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + assert(display.gfx().contains("1m")); +} + +static void screenBounds() { + History history; + char body[161]; + std::memset(body, 'W', sizeof(body) - 1); + body[sizeof(body) - 1] = 0; + history.add(0, 0, "Public", "ExtremelyLongSenderNameWWWWWWWWWWWWWWWWWWWW", body, -1, true); + history.add(0, 0, "Public", "Ch 0 Public [1h]:", "\xc3\x89lise: UTF-8 caf\xc3\xa9 message with words and a long paragraph that wraps onto several rows"); + Frame frame; + frame.now = 1735689600UL; + frame.battery_percent = -1; + frame.hint = "click next / 2x back"; + for (unsigned large : {0U, 1U}) + for (unsigned flip : {0U, 1U}) + for (unsigned dark : {0U, 1U}) + for (unsigned name : {0U, 1U, 2U, 3U}) { + Settings settings; + settings.text_large = large; + settings.flip = flip; + settings.dark = dark; + settings.name_len = name; + PocketGui gui; + GxEPDDisplay display; + gui.begin(display, settings, frame); + gui.renderBoard(history, "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"); + assert(display.gfx().rotation == (flip ? 1 : 3)); + for (unsigned row = 0; row < SETTINGS_COUNT; ++row) { + gui.begin(display, settings, frame); + gui.renderSettings(row, true, "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"); + } + gui.begin(display, settings, frame); + gui.renderMapChrome(); + gui.mapEmpty("No valid position"); + } + PocketGui gui; + GxEPDDisplay display; + Settings settings; + settings.channel = 39; + gui.begin(display, settings, frame); + gui.renderBoard(history, "Empty"); + assert(gui.boardCount(history) == 0); + assert(display.gfx().contains("Listening for messages")); + + // Display hints may be supplied by navigation. They must remain inside the + // screen even if a future page supplies more text than fits on one line. + frame.hint = "An extremely long footer WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW"; + gui.begin(display, settings, frame); + gui.renderMapChrome(); + + history.clear(); + std::memset(body, 'W', sizeof(body) - 1); + std::strcpy(body + sizeof(body) - 7, " END42"); + history.add(0, 0, "Public", "\xc3\x89lise", body, -1, true); + settings.channel = 0; + settings.text_large = 1; + settings.name_len = 3; + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + bool tail_visible = false; + for (const auto& text : display.gfx().labels) + if (text.value.find("END42") != std::string::npos) tail_visible = true; + assert(tail_visible); +} + +static void measuredLabels() { + Settings settings; + Frame frame; + GxEPDDisplay display; + PocketGui gui; + gui.begin(display, settings, frame); + gui.label(4, 30, "WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW", true); + assert(display.gfx().labels.size() == 1); + const auto& broad = display.gfx().labels.front(); + assert(broad.width <= 246 && broad.value.size() < 31 && broad.bold); + gui.text(4, 45, "Normal again"); + assert(!display.gfx().labels.back().bold); + gui.label(240, 60, "\xc3\x89WWWWWWWWW", true); + assert(display.gfx().labels.back().value == "\xc3\x89"); + gui.text(4, 75, "Normal again"); + assert(!display.gfx().labels.back().bold); + const size_t previous = display.gfx().labels.size(); + gui.label(-1, 90, "outside", true); + gui.label(250, 90, "outside", true); + gui.label(4, 90, nullptr, true); + assert(display.gfx().labels.size() == previous); + gui.text(4, 105, "Normal after invalid label"); + assert(!display.gfx().labels.back().bold); + gui.begin(display, settings, frame); + gui.renderMapChrome(20000); + assert(display.gfx().contains("20000 km")); + gui.begin(display, settings, frame); + gui.renderMapChrome(); + assert(display.gfx().contains("200 km")); +} + +static void readOnlyVisibleEntries() { + Settings settings; + Frame frame; + GxEPDDisplay display; + PocketGui gui; + History history; + history.add(0, 0, "Public", "Ch 0 Public", "Alice: oldest hidden", 0); + history.add(0, 0, "Public", "Ch 0 Public", "Bob: older hidden", 1); + history.add(0, 1, "Private", "Ch 1 Private", "Carol: other channel", 2); + char long_body[161]; + std::memset(long_body, 'W', sizeof(long_body) - 1); + long_body[sizeof(long_body) - 1] = 0; + history.add(0, 0, "Public", "Ch 0 Public", long_body, 3); + settings.text_large = 1; + gui.begin(display, settings, frame); + assert(history.unreadCount() == 4); + gui.renderBoard(history, "Public"); + assert(!history.newest(0)->unread); // the long message's visible tail counts + assert(history.newest(1)->unread); // another channel + assert(history.newest(2)->unread && history.newest(3)->unread); // above the viewport + for (unsigned age = 0; age < history.count(); ++age) + assert(history.newest(age)->queue_index == static_cast(3 - age)); + + assert(gui.scrollOlder(history)); + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + assert(!history.newest(2)->unread && !history.newest(3)->unread); + assert(history.newest(1)->unread && history.unreadCount() == 1); + assert(history.newest(0)->queue_index == 3); // reading never consumes app delivery + + // Merely composing a frame while the panel is off does not mark it read. + history.clear(); + history.add(0, 0, "Public", "Ch 0 Public", "Alice: sleeping panel", 7); + gui.resetScroll(); + display.on = false; + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + assert(history.newest(0)->unread && history.newest(0)->queue_index == 7); + display.on = true; + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + assert(!history.newest(0)->unread && history.newest(0)->queue_index == 7); + + // Scrolling to an older entry does not acknowledge the newer skipped one. + history.clear(); + history.add(0, 0, "Public", "Ch 0 Public", "Alice: older", 1); + history.add(0, 0, "Public", "Ch 0 Public", "Bob: newer", 2); + gui.resetScroll(); + assert(gui.scrollOlder(history)); + gui.begin(display, settings, frame); + gui.renderBoard(history, "Public"); + assert(history.newest(0)->unread && !history.newest(1)->unread); + assert(history.newest(0)->queue_index == 2 && history.newest(1)->queue_index == 1); +} + +int main() { + channelBoard(); + screenBounds(); + measuredLabels(); + readOnlyVisibleEntries(); +} diff --git a/test/fixtures/pocket_gui/test_pocket_state.cpp b/test/fixtures/pocket_gui/test_pocket_state.cpp new file mode 100644 index 000000000..4b708cc7a --- /dev/null +++ b/test/fixtures/pocket_gui/test_pocket_state.cpp @@ -0,0 +1,203 @@ +#include +#include +#include +#include +#include + +using namespace mesh::ui::pocket; + +static bool equal(const Settings& left, const Settings& right) { + return left.channel == right.channel && left.text_large == right.text_large + && left.name_len == right.name_len && left.flip == right.flip + && left.dark == right.dark && left.idle == right.idle + && left.refresh == right.refresh && left.map_zoom == right.map_zoom; +} + +static void repairChecksum(uint8_t* bytes) { + const uint16_t crc = settingsChecksum(bytes, 11); + bytes[11] = static_cast(crc); + bytes[12] = static_cast(crc >> 8); +} + +static void settingsRoundTrip() { + Settings value; + assert(settingsValid(value)); + assert(idleMillis(value) == 60000 && refreshCount(value) == 30); + assert(nameCharacters(value) == 5 && mapHeightKm(value) == 200); + + uint8_t bytes[SETTINGS_RECORD_SIZE]; + for (unsigned channels : {1U, 40U, 256U}) { + for (unsigned choices = 0; choices < 8; ++choices) + for (unsigned name = 0; name < 4; ++name) + for (unsigned idle = 0; idle < 4; ++idle) + for (unsigned refresh = 0; refresh < 4; ++refresh) + for (unsigned zoom = 0; zoom < 9; ++zoom) { + value.channel = static_cast(channels - 1); + value.text_large = choices & 1; + value.flip = (choices >> 1) & 1; + value.dark = (choices >> 2) & 1; + value.name_len = name; + value.idle = idle; + value.refresh = refresh; + value.map_zoom = zoom; + assert(encodeSettings(value, bytes, sizeof(bytes), channels)); + Settings recovered; + assert(decodeSettings(recovered, bytes, sizeof(bytes), channels)); + assert(equal(value, recovered)); + } + } + + value = Settings{}; + assert(encodeSettings(value, bytes, sizeof(bytes))); + const Settings sentinel{39, 1, 3, 1, 1, 3, 3, 8}; + auto rejects = [&](const uint8_t* input, size_t size, unsigned channels = 40) { + Settings destination = sentinel; + assert(!decodeSettings(destination, input, size, channels)); + assert(equal(destination, sentinel)); + }; + rejects(nullptr, sizeof(bytes)); + for (size_t size = 0; size < sizeof(bytes); ++size) rejects(bytes, size); + rejects(bytes, sizeof(bytes) + 1); + rejects(bytes, sizeof(bytes), 0); + rejects(bytes, sizeof(bytes), 257); + + // Detect corruption at every bit, including the stored checksum itself. + for (size_t byte = 0; byte < sizeof(bytes); ++byte) + for (unsigned bit = 0; bit < 8; ++bit) { + uint8_t changed[sizeof(bytes)]; + std::memcpy(changed, bytes, sizeof(bytes)); + changed[byte] ^= 1U << bit; + rejects(changed, sizeof(changed)); + } + + // A record with a valid CRC still cannot select invalid enum values, a + // missing channel, an unknown format or reserved bits. + const unsigned bad_offsets[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; + const unsigned bad_values[] = {'X', 'X', 2, 40, 2, 4, 4, 4, 4, 9, 1}; + for (size_t test = 0; test < sizeof(bad_offsets) / sizeof(*bad_offsets); ++test) { + uint8_t changed[sizeof(bytes)]; + std::memcpy(changed, bytes, sizeof(bytes)); + changed[bad_offsets[test]] = bad_values[test]; + repairChecksum(changed); + rejects(changed, sizeof(changed)); + } + + value.channel = 39; + assert(encodeSettings(value, bytes, sizeof(bytes), 40)); + rejects(bytes, sizeof(bytes), 39); + for (unsigned row = 0; row < SETTINGS_COUNT; ++row) { + Settings changed; + const Settings initial = changed; + const unsigned periods[] = {40, 2, 4, 2, 2, 4, 4, 9}; + for (unsigned step = 0; step < periods[row]; ++step) { + assert(cycleSetting(changed, row)); + assert(settingsValid(changed)); + } + assert(equal(changed, initial)); + } + const Settings initial; + value = initial; + assert(!cycleSetting(value, SETTINGS_COUNT) && equal(value, initial)); + assert(!cycleSetting(value, 0, 0) && equal(value, initial)); + assert(!cycleSetting(value, 0, 257) && equal(value, initial)); + value.channel = 255; + assert(cycleSetting(value, 0, 256) && value.channel == 0); + + for (unsigned bad = 4; bad <= 255; ++bad) { + value.idle = value.refresh = value.name_len = static_cast(bad); + assert(idleMillis(value) == 60000 && refreshCount(value) == 30); + assert(nameCharacters(value) == 5); + } + for (unsigned bad = 9; bad <= 255; ++bad) { + value.map_zoom = static_cast(bad); + assert(mapHeightKm(value) == 200); + } +} + +static void scrollHistory() { + assert(messageAgeSeconds(1000, UINT32_MAX - 999U) == 2); + assert(messageAgeSeconds(180000, 60000) == 120); + for (unsigned count = 0; count <= 32; ++count) { + BoardState state; + assert(!state.scrollNewer()); + for (unsigned next = 1; next < count; ++next) { + assert(state.scrollOlder(count)); + assert(state.scroll == next); + } + assert(!state.scrollOlder(count)); + assert(state.scroll == (count == 0 ? 0 : count - 1)); + const unsigned previous = state.scroll; + state.messageAdded(); + // At the live end keep following new messages. While reading old messages + // retain the same entry until it falls out of the 32-message ring. + assert(state.scroll == (previous == 0 ? 0 : previous < 31 ? previous + 1 : 31)); + state.clamp(0); + assert(state.scroll == 0); + } + BoardState state; + state.scroll = std::numeric_limits::max(); + state.clamp(1); + assert(state.scroll == 0 && !state.scrollOlder(1)); + state.scroll = 99; + state.clamp(32); + assert(state.scroll == 31 && !state.scrollOlder(32)); + for (unsigned left = 31; left > 0; --left) { + assert(state.scrollNewer()); + assert(state.scroll == left - 1); + } + assert(!state.scrollNewer()); +} + +static void messageNamesAndText() { + BoardMessageView result; + parseBoardMessage("Ch 0 Public [1h]:", "Alice: hello: there", false, result); + assert(result.sender_length == 5 && std::strncmp(result.sender, "Alice", 5) == 0); + assert(std::strcmp(result.text, "hello: there") == 0); + parseBoardMessage("My name", "Alice: literal outgoing body", true, result); + assert(result.sender_length == 7 && std::strcmp(result.sender, "My name") == 0); + assert(std::strcmp(result.text, "Alice: literal outgoing body") == 0); + parseBoardMessage("Alice [direct]:", "no sender prefix", false, result); + assert(result.sender_length == 5 && std::strcmp(result.text, "no sender prefix") == 0); + parseBoardMessage(nullptr, nullptr, false, result); + assert(result.sender_length == 0 && *result.text == 0); + parseBoardMessage("fallback [direct]:", ": invalid empty sender", false, result); + assert(result.sender_length == 8); + char long_message[90]; + std::memset(long_message, 'a', 70); + std::strcpy(long_message + 70, ": message"); + parseBoardMessage("fallback", long_message, false, result); + assert(result.sender_length == 8 && result.text == long_message); + + char text[64]; + sanitizeText(text, sizeof(text), "caf\xc3\xa9\t\xf0\x9f\x93\xbb\n!", 13); + assert(std::strcmp(text, "caf\xc3\xa9 * !") == 0); + sanitizeText(text, sizeof(text), nullptr, 100); + assert(*text == 0); + sanitizeText(text, 1, "abc", 3); + assert(*text == 0); + // Neither an exact-length nonterminated input nor a truncated multibyte + // input can over-read, and a small output never ends with half of Latin-1. + const char exact[] = {'a', 'b', 'c'}; + sanitizeText(text, sizeof(text), exact, sizeof(exact)); + assert(std::strcmp(text, "abc") == 0); + const char truncated[] = {'a', '\xc3'}; + sanitizeText(text, sizeof(text), truncated, sizeof(truncated)); + assert(std::strcmp(text, "a*") == 0); + sanitizeText(text, sizeof(text), "A\xc2\x85" "B", 4); + assert(std::strcmp(text, "A B") == 0); + sanitizeText(text, 3, "a\xc3\xa9", 3); + assert(std::strcmp(text, "a") == 0); + std::strcpy(text, "\xc3\x89lise"); + truncateCharacters(text, 3); + assert(std::strcmp(text, "\xc3\x89li") == 0); + truncateCharacters(text, 0); + assert(std::strcmp(text, "\xc3\x89li") == 0); + truncateCharacters(text, 1); + assert(std::strcmp(text, "\xc3\x89") == 0); +} + +int main() { + settingsRoundTrip(); + scrollHistory(); + messageNamesAndText(); +} diff --git a/test/fixtures/pocket_gui/test_sent_history.cpp b/test/fixtures/pocket_gui/test_sent_history.cpp new file mode 100644 index 000000000..a3776d97d --- /dev/null +++ b/test/fixtures/pocket_gui/test_sent_history.cpp @@ -0,0 +1,47 @@ +#include +#include +#include + +using History = mesh::ui::CompanionMessageHistory<3, 78>; + +// Own-message styling uses the Entry's existing alignment padding. Every +// other board retains the same 32-message history allocation. +struct PreviousEntry { + uint64_t heard_millis; + int queue_index; + bool unread; + int channel_idx; + char channel_name[32]; + char origin[62]; + char message[78]; +}; +static_assert(sizeof(History::Entry) == sizeof(PreviousEntry), + "own-message metadata changed the shared history RAM budget"); + +int main() { + History history; + history.add(100, 0, "Public", "Ch 0 Public [1h]:", "Alice: received", 2); + history.add(200, 0, "Public", "Self", "sent", -1, true); + assert(history.count() == 2 && history.unreadCount() == 1); + assert(history.newest(0)->own_sent && !history.newest(0)->unread); + assert(history.newest(0)->queue_index == -1); + assert(!history.newest(1)->own_sent && history.newest(1)->unread); + + // App queue reads shift only received-message indices. They do not make a + // locally sent message look pending or mark the received one as read. + history.queueRemoved(0); + assert(history.newest(0)->queue_index == -1); + assert(history.newest(1)->queue_index == 1); + assert(history.unreadCount() == 1); + history.queueRemoved(1); + assert(history.newest(1)->queue_index == -1); + assert(history.unreadCount() == 1); + + history.add(300, -1, "", "Bob [direct]:", "direct", 0); + history.add(400, 0, "Public", "Self", "new sent", -1, true); + assert(history.count() == 3 && history.unreadCount() == 1); + assert(std::strcmp(history.newest(0)->message, "new sent") == 0); + assert(history.newest(2)->own_sent && !history.newest(2)->unread); + history.markRead(history.newest(1)); + assert(history.unreadCount() == 0); +} diff --git a/test/fixtures/pocket_world_map/test_world_map.cpp b/test/fixtures/pocket_world_map/test_world_map.cpp new file mode 100644 index 000000000..d010b4dcf --- /dev/null +++ b/test/fixtures/pocket_world_map/test_world_map.cpp @@ -0,0 +1,185 @@ +#include "helpers/ui/PocketWorldMap.h" +#include "helpers/ui/PocketWorldMapData.generated.h" +#include "helpers/ota/tinf/tinf.h" +#include +#include +#include +#include +#include +#include + +using namespace mesh::ui::pocket; + +struct Canvas { + static constexpr int width = 250, height = 91; + bool pixels[height][width] = {}; + unsigned lines = 0; + static void line(void* context, int x0, int y0, int x1, int y1) { + Canvas& canvas = *static_cast(context); + assert(x0 >= 0 && x0 < width && x1 >= 0 && x1 < width); + assert(y0 >= 0 && y0 < height && y1 >= 0 && y1 < height); + ++canvas.lines; + const int dx = abs(x1 - x0), sx = x0 < x1 ? 1 : -1; + const int dy = -abs(y1 - y0), sy = y0 < y1 ? 1 : -1; + int error = dx + dy; + for (;;) { + canvas.pixels[y0][x0] = true; + if (x0 == x1 && y0 == y1) break; + const int twice = error * 2; + if (twice >= dy) { error += dy; x0 += sx; } + if (twice <= dx) { error += dx; y0 += sy; } + } + } + bool nearby(int x, int y, int radius) const { + for (int yy = y - radius; yy <= y + radius; ++yy) + for (int xx = x - radius; xx <= x + radius; ++xx) + if (xx >= 0 && xx < width && yy >= 0 && yy < height && pixels[yy][xx]) return true; + return false; + } +}; + +static MapView view(double latitude, double longitude, double km = 200) { + return {latitude, longitude, km, Canvas::width, Canvas::height}; +} + +static void testProjection() { + int x, y; + auto v = view(0, 180); + assert(projectWorldPoint(v, 0, 180, x, y) && x == 125 && y == 45); + int east, west; + assert(projectWorldPoint(v, 0, -179.9, east, y)); + assert(projectWorldPoint(v, 0, 179.9, west, y)); + assert(east > 125 && west < 125 && east - west < 12); + assert(!projectWorldPoint(v, 0, 0, x, y)); + assert(!projectWorldPoint(v, 0, 181, x, y)); + for (double pole : {-90.0, 90.0}) { + v = view(pole, 0); + assert(projectWorldPoint(v, pole, 170, x, y)); + assert(x == 125 && y == 45); + assert(projectWorldPoint(v, pole > 0 ? 89.5 : -89.5, 90, x, y)); + } + v = view(NAN, 0); + assert(!projectWorldPoint(v, 0, 0, x, y)); + v = view(0, 0); v.width = 0; + assert(!projectWorldPoint(v, 0, 0, x, y)); +} + +static void testFloatProjectionAccuracyAndWorldOverview() { + constexpr double radians = 3.14159265358979323846 / 180.0; + // Independent double-precision azimuthal reference. The device's float/FPU + // implementation must stay within one pixel at close and continental zooms. + for (double latitude : {-90.0, -78.0, -45.0, 0.0, 37.8, 78.0, 89.9, 90.0}) { + for (double longitude : {-180.0, -122.5, 0.0, 180.0}) { + for (double height : {5.0, 50.0, 200.0, 1000.0, 5000.0}) { + const auto v = view(latitude, longitude, height); + for (int row = -8; row <= 8; ++row) for (int col = -8; col <= 8; ++col) { + const double lat = latitude + row * height / 111.195 / 16; + if (lat < -90 || lat > 90) continue; + double lon = longitude + col * height / 111.195 / 8 / fmax(0.01, cos(latitude * radians)); + lon = remainder(lon, 360.0); + const double a = latitude * radians, b = lat * radians; + const double delta = remainder((lon - longitude) * radians, 2 * 3.14159265358979323846); + const double cosine = sin(a) * sin(b) + cos(a) * cos(b) * cos(delta); + if (cosine < 0.00001) continue; + const double distance = acos(fmin(1.0, cosine)); + const double factor = (distance < 1e-8 ? 6371.0088 : 6371.0088 * distance / sin(distance)) * 90 / height; + const double px = 124.5 + factor * cos(b) * sin(delta); + const double py = 45 - factor * (cos(a) * sin(b) - sin(a) * cos(b) * cos(delta)); + if (px < 1 || px > 248 || py < 1 || py > 89) continue; + int x, y; + assert(projectWorldPoint(v, lat, lon, x, y)); + assert(abs(x - int(lround(px))) <= 1 && abs(y - int(lround(py))) <= 1); + } + } + } + } + const auto world = view(0, 0, 20000); + // The full-world fallback must show every continent, not just one hemisphere. + const double continents[][2] = {{37.8,-122.5}, {-23.5,-46.6}, {51.5,-0.1}, + {-33.9,18.4}, {35.7,139.7}, {-33.9,151.2}, {-90,0}, {90,0}}; + for (const auto& point : continents) { + int x, y; + assert(projectWorldPoint(world, point[0], point[1], x, y)); + } + // A 179.9 -> 180.1 degree edge must end on both map edges and never draw a + // horizontal line through the equator's centre. + const uint8_t crossing[] = {2,0, 0xbc,0xbe,2,0, 0,0,0,0, 0x90,3,0}; + Canvas canvas; + assert(renderWorldMapChunkForTest(world, crossing, sizeof(crossing), Canvas::line, &canvas)); + assert(canvas.lines == 2 && !canvas.pixels[45][125]); + assert(canvas.nearby(36,45,1) && canvas.nearby(214,45,1)); +} + +static void testRealCoasts() { + Canvas coast; + auto v = view(37.8, -122.5); + assert(renderWorldMap(v, Canvas::line, &coast)); + assert(coast.lines > 20); + int x, y; + assert(projectWorldPoint(v, 37.8, -122.5, x, y)); + assert(coast.nearby(x, y, 5)); + Canvas inland; + assert(renderWorldMap(view(38.5, -98), Canvas::line, &inland)); + assert(inland.lines == 0); + Canvas islands; + assert(renderWorldMap(view(-16.5, 180, 500), Canvas::line, &islands)); + assert(islands.lines > 10); + Canvas arctic; + assert(renderWorldMap(view(78.2, 15.6), Canvas::line, &arctic)); + assert(arctic.lines > 20); + for (auto polar : {view(90, 0, 2000), view(-90, 180, 2000), view(90, -180, 20000)}) { + Canvas canvas; + assert(renderWorldMap(polar, Canvas::line, &canvas)); + assert(canvas.lines > 0); + } + Canvas close; + assert(renderWorldMap(view(-16.5, -180, 5), Canvas::line, &close)); + auto invalid = view(0, 0); invalid.height_km = 0; + assert(!renderWorldMap(invalid, Canvas::line, &close)); + assert(!renderWorldMap(view(0, 0), nullptr, nullptr)); +} + +static void testChunksAndMalformedData() { + unsigned decoded = 0; + for (const auto& chunk : data::kChunks) { + uint8_t scratch[data::kScratchBytes]; + unsigned size = sizeof(scratch); + assert(chunk.offset + chunk.packed <= sizeof(data::kDeflate)); + assert(tinf_uncompress_exact(scratch, &size, data::kDeflate + chunk.offset, chunk.packed) == TINF_OK); + assert(size == chunk.raw && size <= sizeof(scratch)); + Canvas canvas; + assert(renderWorldMapChunkForTest(view(0, 0, 20000), scratch, size, Canvas::line, &canvas)); + // A truncation at every byte must fail unless it ends on a complete fragment. + for (unsigned tail = 1; tail < 10 && tail < size; ++tail) { + Canvas truncated; + (void)renderWorldMapChunkForTest(view(0, 0), scratch, size - tail, Canvas::line, &truncated); + } + ++decoded; + } + assert(decoded == 32); + assert(data::kRingCount == 1422); + // Two points at 0,0 and 0.001,0.001 (zigzag delta 2,2). + uint8_t valid[] = {2,0, 0,0,0,0, 0,0,0,0, 2,2}; + Canvas canvas; + assert(renderWorldMapChunkForTest(view(0, 0), valid, sizeof(valid), Canvas::line, &canvas)); + assert(canvas.lines == 1); + for (size_t size = 1; size < sizeof(valid); ++size) + assert(!renderWorldMapChunkForTest(view(0, 0), valid, size, Canvas::line, &canvas)); + valid[0] = 1; + assert(!renderWorldMapChunkForTest(view(0, 0), valid, sizeof(valid), Canvas::line, &canvas)); + valid[0] = 97; + assert(!renderWorldMapChunkForTest(view(0, 0), valid, sizeof(valid), Canvas::line, &canvas)); + valid[0] = 2; + valid[10] = valid[11] = 255; + assert(!renderWorldMapChunkForTest(view(0, 0), valid, sizeof(valid), Canvas::line, &canvas)); + const uint8_t overflow[] = {2,0, 0,0,0,0, 0,0,0,0, 255,255,255,255,255,0}; + assert(!renderWorldMapChunkForTest(view(0, 0), overflow, sizeof(overflow), Canvas::line, &canvas)); +} + +int main() { + testProjection(); + testFloatProjectionAccuracyAndWorldOverview(); + testRealCoasts(); + testChunksAndMalformedData(); + puts("world map projection, clipped raster, codec and parser checks passed"); +} diff --git a/test/test_firmware_ram.py b/test/test_firmware_ram.py index 1d5fa281e..515635bd9 100644 --- a/test/test_firmware_ram.py +++ b/test/test_firmware_ram.py @@ -69,6 +69,25 @@ def esp_fixture(path, modern=False, fragmented=False, internal_length=0x10000): class FirmwareRamTest(unittest.TestCase): + def test_pocket_gui_reserves_expanded_history_without_changing_other_boards(self): + flags = {"DISPLAY_CLASS": "GxEPDDisplay", "HELTEC_MESH_POCKET": 1, + "COMPANION_RADIO_FULL": 1, "UI_MSG_PREVIEW_SIZE": 161} + target = "Mesh_pocket_companion_radio_full" + enabled = ram.requirements("NRF52_PLATFORM", flags, target) + self.assertEqual(enabled["components"]["screen_objects_and_history"], 12288) + self.assertNotIn("expanded_message_previews", enabled["components"]) + self.assertGreaterEqual(enabled["required_contiguous_bytes"], 12288) + + for changed in ({**flags, "UI_POCKET_GUI": 0}, + {key: value for key, value in flags.items() + if key != "HELTEC_MESH_POCKET"}): + policy = ram.requirements("NRF52_PLATFORM", changed, target) + self.assertEqual(policy["components"]["screen_objects_and_history"], 8192) + self.assertEqual(policy["components"]["expanded_message_previews"], 2816) + larger = ram.requirements("NRF52_PLATFORM", { + **flags, "MESH_COMPANION_SCREEN_STARTUP_BYTES": 16384}, target) + self.assertEqual(larger["components"]["screen_objects_and_history"], 16384) + def test_st7789_budget_matches_production_allocation_peak_and_reuses_buffers(self): ui = ROOT / "src/helpers/ui" spi = (ui / "ST7789Spi.h").read_text() diff --git a/test/test_pocket_gui.py b/test/test_pocket_gui.py new file mode 100644 index 000000000..2ee904396 --- /dev/null +++ b/test/test_pocket_gui.py @@ -0,0 +1,112 @@ +#!/usr/bin/env python3 +"""Exercise MeshPocket GUI state and settings with the production headers.""" + +import os +from pathlib import Path +import shutil +import subprocess +import tempfile +import unittest + +from test_replay_reset_integration import extract_braced + + +ROOT = Path(__file__).resolve().parents[1] +FIXTURE = ROOT / "test/fixtures/pocket_gui" + + +class PocketGuiTest(unittest.TestCase): + def test_gui_is_only_enabled_for_pocket_full(self): + compiler = shutil.which("g++") + if compiler is None: + self.skipTest("host G++ required") + source = "#include \nUI_POCKET_GUI\n" + profiles = [ + ([], "0"), + (["HELTEC_MESH_POCKET=1"], "0"), + (["COMPANION_RADIO_FULL=1"], "0"), + (["NRF52_PLATFORM=1", "RAK_4631=1", "COMPANION_RADIO_FULL=1"], "0"), + (["ESP32_PLATFORM=1", "LILYGO_T_DECK=1", "COMPANION_RADIO_FULL=1"], "0"), + (["HELTEC_MESH_POCKET=1", "COMPANION_RADIO_FULL=1"], "1"), + (["HELTEC_MESH_POCKET=1", "COMPANION_RADIO_FULL=1", "UI_POCKET_GUI=0"], "0"), + ] + for flags, expected in profiles: + with self.subTest(flags=flags): + command = [compiler, "-E", "-P", "-x", "c++", "-", + "-I" + str(ROOT / "src"), *("-D" + flag for flag in flags)] + result = subprocess.run(command, input=source, capture_output=True, text=True) + self.assertEqual(result.returncode, 0, result.stderr) + self.assertEqual(result.stdout.strip(), expected) + for flags in ([], ["HELTEC_MESH_POCKET=1"], ["COMPANION_RADIO_FULL=1"]): + command = [compiler, "-E", "-P", "-x", "c++", "-", "-DUI_POCKET_GUI=1", + "-I" + str(ROOT / "src"), *("-D" + flag for flag in flags)] + result = subprocess.run(command, input=source, capture_output=True, text=True) + self.assertNotEqual(result.returncode, 0, "unsupported board accepted Pocket GUI") + self.assertIn("requires MeshPocket Full Companion", result.stderr) + + def compile_and_run(self, source, extra_flags=()): + compiler = shutil.which("g++") + if compiler is None: + self.skipTest("host G++ required") + with tempfile.TemporaryDirectory(prefix="mesh-pocket-gui-") as directory: + binary = Path(directory) / "gui-test" + flags = ["-std=c++17", "-Wall", "-Wextra", "-Werror", "-g"] + if os.name != "nt": + flags += ["-fsanitize=address,undefined", "-fno-omit-frame-pointer", + "-fno-pie", "-no-pie"] + command = [compiler, *flags, *extra_flags, + "-I" + str(FIXTURE), "-I" + str(ROOT / "src"), "-I" + str(ROOT), + str(source), "-o", str(binary)] + for args in (command, [str(binary)]): + result = subprocess.run(args, capture_output=True, text=True) + self.assertEqual(result.returncode, 0, + " ".join(args) + "\n" + result.stdout + result.stderr) + + def test_sent_messages_preserve_history_without_becoming_unread(self): + self.compile_and_run(FIXTURE / "test_sent_history.cpp") + + def test_settings_integrity_and_message_board_state(self): + self.compile_and_run(FIXTURE / "test_pocket_state.cpp") + + def test_native_board_layout_and_fractional_timezones(self): + self.compile_and_run(FIXTURE / "test_pocket_render.cpp", + ["-DHELTEC_MESH_POCKET=1", "-DCOMPANION_RADIO_FULL=1"]) + + def test_pocket_controls_keep_network_reader_access(self): + source = (ROOT / "examples/companion_radio/ui-new/UITask.cpp").read_text() + home = source[source.index("class HomeScreen :"):] + navigation = home[home.index(" bool handleInput(char c) override {"):] + navigation = navigation.split("#ifdef COMPANION_EXCLUSIVE_WIFI_BLE", 1)[0] + implementation = "\n".join(extract_braced(home, signature) for signature in ( + "void resetRadioProfileDisplayPage() {", "bool isPageVisible(uint8_t page) const {", + "void movePage(int direction) {", "void showFirstPage() {", + "bool isRadioPage() const {")) + implementation += "\n" + navigation + "return false; }\n" + fixture = (FIXTURE / "test_pocket_controls.cpp").read_text() + fixture = fixture.replace("// @HOME_IMPLEMENTATION@", implementation) + with tempfile.TemporaryDirectory(prefix="mesh-pocket-controls-") as directory: + generated = Path(directory) / "controls.cpp" + generated.write_text(fixture) + for signedness in ("-fsigned-char", "-funsigned-char"): + with self.subTest(signedness=signedness): + self.compile_and_run(generated, [signedness, "-DUI_POCKET_GUI=1", + "-DCOMPANION_FEATURE_READER=1", "-DUI_NO_DISCOVER_SCREEN=1", + "-Wno-unused-parameter"]) + + def test_received_and_sent_message_bindings_preserve_screen_policy(self): + source = (ROOT / "examples/companion_radio/ui-new/UITask.cpp").read_text() + methods = "\n".join(extract_braced(source, signature) for signature in ( + "void UITask::newMsg(", "void UITask::channelMessageSent(", + "char UITask::handleMultiClick(")) + fixture = (FIXTURE / "test_pocket_bindings.cpp").read_text() + fixture = fixture.replace("// @ADD_SENT@", extract_braced(source, "void addSent(")) + fixture = fixture.replace("// @TASK_METHODS@", methods) + with tempfile.TemporaryDirectory(prefix="mesh-pocket-bindings-") as directory: + generated = Path(directory) / "bindings.cpp" + generated.write_text(fixture) + self.compile_and_run(generated, ["-DUI_POCKET_GUI=1", + "-DCOMPANION_FEATURE_READER=1", "-Wno-unused-parameter"]) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/test_pocket_gui_license.py b/test/test_pocket_gui_license.py new file mode 100644 index 000000000..6d58c5b1e --- /dev/null +++ b/test/test_pocket_gui_license.py @@ -0,0 +1,171 @@ +"""Qualify and carry GUI/font notices without changing firmware or DFU ZIPs.""" +import hashlib +import json +from pathlib import Path +import shutil +import struct +import subprocess +import sys +import tempfile +import unittest + +ROOT = Path(__file__).resolve().parents[1] +sys.path.insert(0, str(ROOT / "scripts")) +import package_pocket_gui_license as notice +import firmware_memory_manifest as memory +import firmware_build_recipe as recipe +import package_cascade_release as release + +GUI = "_ZN4mesh2ui6pocket9PocketGui6headerEPKcS5_" +FONT = "u8g2_font_helvR08_tf" + + +def elf32(path, symbols=(GUI, FONT), flags=6, section_type=1, undefined=(), zero=()): + names, table = bytearray(b"\0"), bytearray(16) + data = b"CODE" * max(1, len(symbols)) + for i, name in enumerate(symbols): + offset = len(names) + names += name.encode() + b"\0" + table += struct.pack(" +Archive: +SHA-256: `0b8e670cf80dce9cbebe2a193bc44ba5602758c22e1fa603980553646d7ff162` + +Natural Earth data is public domain: +. +No OpenStreetMap map assets or region-specific assets are used. + +Generate with Python and the pinned `requirements-build.txt` dependencies: + +``` +python tools/meshpocket_map/pack_world_map.py --source-zip ne_50m_land.zip +python tools/meshpocket_map/pack_world_map.py --source-zip ne_50m_land.zip --check +``` + +Without `--source-zip`, the generator downloads that archive and verifies its +digest before reading it. The checked-in generated header makes normal +firmware builds independent of network access and GIS tools. + +The deterministic generator uses kilometre-scaled Ramer–Douglas–Peucker +simplification with a 4 km tolerance, then rounds coordinates to 0.001 degrees. +Its local metric is an approximation, especially on large polar polygons; +the 4 km setting is not a guaranteed geodesic error bound. Islands that would +collapse are kept as at least three distinct vertices. Adjacent fragments +share an endpoint, so splitting never removes a connecting edge. Spatially +sorted fragments use signed delta varints and independent raw DEFLATE chunks, +compressed on the host with Google Zopfli **0.4.3, 1,000 iterations**. There is +no compression work on the device. Each indexed chunk has geographic bounds, +so local views skip unrelated data. + +The pack uses **79,890 compressed bytes + 768 bytes of index**. Rendering uses +one temporary **3,072-byte** decode buffer and the existing bounded `tinf` +decoder. No map heap allocation, persistent geometry cache, land fill edge +table, or framebuffer is allocated. Lines are clipped to the caller's +viewport using a local azimuthal equidistant projection, which wraps the +antimeridian and supports views centred on either pole. Coastlines and node +markers use the same projection. Its internal geometry uses the nRF52840's +single-precision FPU. The 20,000 km setting switches to a full-world +equirectangular overview, centred on the selected longitude and the equator. +Seam crossings are split at the map edges, not joined across the middle. diff --git a/tools/meshpocket_map/pack_world_map.py b/tools/meshpocket_map/pack_world_map.py new file mode 100644 index 000000000..f17e90ce5 --- /dev/null +++ b/tools/meshpocket_map/pack_world_map.py @@ -0,0 +1,213 @@ +#!/usr/bin/env python3 +"""Build the coarse, worldwide Pocket coastline from pinned Natural Earth land.""" +from __future__ import annotations + +import argparse +import hashlib +import io +import json +import math +from pathlib import Path +import struct +import sys +import urllib.request +import zipfile +import zlib + +ROOT = Path(__file__).resolve().parents[2] +sys.path.insert(0, str(ROOT / "scripts")) +from zopfli_compress import MAXIMUM_ITERATIONS, ZOPFLI_VERSION, raw_deflate_compress + +URL = "https://naturalearth.s3.amazonaws.com/50m_physical/ne_50m_land.zip" +SOURCE_SHA256 = "0b8e670cf80dce9cbebe2a193bc44ba5602758c22e1fa603980553646d7ff162" +OUTPUT = ROOT / "src/helpers/ui/PocketWorldMapData.generated.h" +SCALE = 1000 +TOLERANCE_KM = 4.0 +BLOCK_BYTES = 3072 +FRAGMENT_POINTS = 96 + + +def source_rings(archive: bytes): + if hashlib.sha256(archive).hexdigest() != SOURCE_SHA256: + raise ValueError("Natural Earth source SHA-256 mismatch") + with zipfile.ZipFile(io.BytesIO(archive)) as source: + if source.read("ne_50m_land.VERSION.txt").strip() != b"4.1.0": + raise ValueError("unexpected Natural Earth release") + data = source.read("ne_50m_land.shp") + if len(data) < 100 or struct.unpack_from(">I", data)[0] != 9994: + raise ValueError("invalid shapefile header") + offset = 100 + while offset < len(data): + if offset + 8 > len(data): + raise ValueError("truncated shapefile record") + length = struct.unpack_from(">I", data, offset + 4)[0] * 2 + offset += 8 + record = data[offset:offset + length] + offset += length + if len(record) != length or length < 44: + raise ValueError("truncated polygon") + kind, = struct.unpack_from(" distance2: + furthest, distance2 = i, candidate + if furthest != first: + kept.add(furthest) + stack.extend(((first, furthest), (furthest, last))) + return sorted(kept) + + +def simplify(ring): + # Unwrap before simplification so a dateline crossing is a short edge. + unwrapped = [ring[0]] + for longitude, latitude in ring[1:]: + previous = unwrapped[-1][0] + longitude += 360 * math.floor((previous - longitude + 180) / 360) + unwrapped.append((longitude, latitude)) + mean_latitude = sum(p[1] for p in unwrapped) / len(unwrapped) + cosine = max(0.01, math.cos(math.radians(mean_latitude))) + metric = [(x * 111.195 * cosine, y * 111.195) for x, y in unwrapped] + selected = rdp(metric, TOLERANCE_KM) + # Keep small islands as a triangle rather than dropping the entire ring. + if len(selected) < 4: + ax, ay = metric[0] + opposite = max(range(1, len(metric) - 1), + key=lambda i: (metric[i][0] - ax) ** 2 + (metric[i][1] - ay) ** 2) + bx, by = metric[opposite] + third = max(range(1, len(metric) - 1), + key=lambda i: abs((bx - ax) * (metric[i][1] - ay) - (by - ay) * (metric[i][0] - ax))) + selected = sorted({0, opposite, third, len(metric) - 1}) + quantized = [] + for i in selected: + x, y = unwrapped[i] + point = (round(x * SCALE), round(y * SCALE)) + if not quantized or point != quantized[-1]: + quantized.append(point) + if len(set(quantized)) < 3 or quantized[0] != quantized[-1]: + raise ValueError("quantization collapsed a land ring") + return quantized + + +def varint(value): + value = (value << 1) if value >= 0 else ((-value << 1) - 1) + result = bytearray() + while value >= 128: + result.append((value & 127) | 128) + value >>= 7 + result.append(value) + return result + + +def fragment_bytes(fragment): + result = bytearray(struct.pack(" BLOCK_BYTES: + raw_blocks.append(bytes(current)) + bounds.append(current_bounds) + current, current_bounds = bytearray(), None + current.extend(encoded) + current_bounds = box if current_bounds is None else ( + min(current_bounds[0], box[0]), min(current_bounds[1], box[1]), + max(current_bounds[2], box[2]), max(current_bounds[3], box[3])) + if current: + raw_blocks.append(bytes(current)) + bounds.append(current_bounds) + packed, descriptors = bytearray(), [] + for raw, box in zip(raw_blocks, bounds): + compressed = compressor(raw, numiterations=MAXIMUM_ITERATIONS) + if zlib.decompress(compressed, wbits=-15) != raw: + raise ValueError("DEFLATE round-trip failed") + descriptors.append((len(packed), len(compressed), len(raw), *box)) + packed.extend(compressed) + return bytes(packed), descriptors, {"rings": len(rings), "points": sum(len(ring) for ring in rings), + "raw_bytes": sum(map(len, raw_blocks)), "chunks": len(raw_blocks)} + + +def render(archive): + packed, blocks, stats = pack(archive) + # uint32_t offset, uint16_t packed/raw lengths, four int32_t bounds. + stats.update(packed_bytes=len(packed), index_bytes=len(blocks) * 24, + firmware_data_bytes=len(packed) + len(blocks) * 24) + lines = ["// Generated by tools/meshpocket_map/pack_world_map.py; do not edit.", + "// Natural Earth 1:50m land 4.1.0, public domain; see tools/meshpocket_map/README.md.", + f"// Source SHA-256: {SOURCE_SHA256}", + f"// Zopfli {ZOPFLI_VERSION}, {MAXIMUM_ITERATIONS} iterations; 4 km RDP, 0.001 degree coordinates.", + "#pragma once", "#include ", "namespace mesh { namespace ui { namespace pocket { namespace data {", + "struct Chunk { uint32_t offset; uint16_t packed, raw; int32_t west, south, east, north; };", + f"static constexpr unsigned kScratchBytes = {BLOCK_BYTES};", + f"static constexpr unsigned kRingCount = {stats['rings']};", + "static const Chunk kChunks[] = {"] + lines.extend(" {%d, %d, %d, %d, %d, %d, %d}," % block for block in blocks) + lines.extend(("};", "static const uint8_t kDeflate[] = {")) + for offset in range(0, len(packed), 24): + lines.append(" " + ",".join(f"0x{byte:02x}" for byte in packed[offset:offset + 24]) + ",") + lines.extend(("};", "}}}}", "")) + return "\n".join(lines), stats + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--source-zip", type=Path, help="already downloaded pinned Natural Earth archive") + parser.add_argument("--output", type=Path, default=OUTPUT) + parser.add_argument("--check", action="store_true") + args = parser.parse_args() + archive = args.source_zip.read_bytes() if args.source_zip else urllib.request.urlopen(URL, timeout=60).read() + header, stats = render(archive) + if args.check: + if args.output.read_text(encoding="utf-8") != header: + raise SystemExit("generated worldwide map is stale") + else: + args.output.write_text(header, encoding="utf-8", newline="\n") + print(json.dumps(stats, sort_keys=True)) + + +if __name__ == "__main__": + main() diff --git a/variants/mesh_pocket/platformio.ini b/variants/mesh_pocket/platformio.ini index 16d6ee607..0f16ae20e 100644 --- a/variants/mesh_pocket/platformio.ini +++ b/variants/mesh_pocket/platformio.ini @@ -20,6 +20,7 @@ build_src_filter = ${nrf52_base.build_src_filter} + +<../variants/mesh_pocket> + + + lib_deps = ${nrf52_base.lib_deps} adafruit/Adafruit EPD @ 4.6.1 @@ -86,6 +87,7 @@ build_src_filter = ${Mesh_pocket.build_src_filter} lib_deps = ${Mesh_pocket.lib_deps} densaugeo/base64 @ ~1.4.0 + olikraus/U8g2_for_Adafruit_GFX @ 1.8.0 [env:Mesh_pocket_companion_radio_usb] extends = Mesh_pocket @@ -109,6 +111,7 @@ build_src_filter = ${Mesh_pocket.build_src_filter} lib_deps = ${Mesh_pocket.lib_deps} densaugeo/base64 @ ~1.4.0 + olikraus/U8g2_for_Adafruit_GFX @ 1.8.0 [env:Mesh_pocket_kiss_modem] extends = Mesh_pocket