From 851963836793239f2289d014891160ef4dd07c00 Mon Sep 17 00:00:00 2001 From: mikecarper Date: Sat, 3 Oct 2026 03:03:02 -0700 Subject: [PATCH] Add Zira spoken button confirmations and opt-in G726 speech tests --- .github/workflows/run-unit-tests.yml | 7 + docs/companion_radio_full.md | 62 + examples/companion_radio/AbstractUITask.h | 3 + examples/companion_radio/MyMesh.cpp | 18 +- examples/companion_radio/MyMesh.h | 1 + examples/companion_radio/ui-orig/Button.cpp | 25 +- examples/companion_radio/ui-orig/Button.h | 11 +- examples/companion_radio/ui-orig/UITask.cpp | 299 +- examples/companion_radio/ui-orig/UITask.h | 14 + scripts/generate_button_voice.ps1 | 84 + scripts/generate_button_voice.py | 66 + scripts/generate_g726_voice.py | 83 + scripts/generate_gps_voice.ps1 | 91 + scripts/generate_gps_voice.py | 73 + src/helpers/ui/ButtonVoice.h | 23 + src/helpers/ui/ButtonVoiceData.h | 2659 ++++++++++++ src/helpers/ui/G726VoiceData.h | 4032 +++++++++++++++++++ src/helpers/ui/GpsVoice.h | 175 + src/helpers/ui/GpsVoiceData.h | 491 +++ src/helpers/ui/buzzer.cpp | 185 +- src/helpers/ui/buzzer.h | 37 + src/helpers/ui/g726/COPYING.LGPLv2.1 | 502 +++ src/helpers/ui/g726/g726_decoder.c | 249 ++ src/helpers/ui/g726/g726_decoder.h | 27 + src/helpers/ui/nrf52/GpsVoicePlayer.h | 174 + test/test_button_voice_actions.py | 854 ++++ test/test_button_voice_generator.py | 340 ++ test/test_button_voice_preview.py | 199 + test/test_g726_voice.py | 294 ++ test/test_g726_voice_generator.py | 199 + test/test_gps_voice_buttons.py | 569 +++ test/test_gps_voice_generator.py | 155 + variants/thinknode_m4/platformio.ini | 6 +- 33 files changed, 11977 insertions(+), 30 deletions(-) create mode 100644 scripts/generate_button_voice.ps1 create mode 100644 scripts/generate_button_voice.py create mode 100644 scripts/generate_g726_voice.py create mode 100644 scripts/generate_gps_voice.ps1 create mode 100644 scripts/generate_gps_voice.py create mode 100644 src/helpers/ui/ButtonVoice.h create mode 100644 src/helpers/ui/ButtonVoiceData.h create mode 100644 src/helpers/ui/G726VoiceData.h create mode 100644 src/helpers/ui/GpsVoice.h create mode 100644 src/helpers/ui/GpsVoiceData.h create mode 100644 src/helpers/ui/g726/COPYING.LGPLv2.1 create mode 100644 src/helpers/ui/g726/g726_decoder.c create mode 100644 src/helpers/ui/g726/g726_decoder.h create mode 100644 src/helpers/ui/nrf52/GpsVoicePlayer.h create mode 100644 test/test_button_voice_actions.py create mode 100644 test/test_button_voice_generator.py create mode 100644 test/test_button_voice_preview.py create mode 100644 test/test_g726_voice.py create mode 100644 test/test_g726_voice_generator.py create mode 100644 test/test_gps_voice_buttons.py create mode 100644 test/test_gps_voice_generator.py diff --git a/.github/workflows/run-unit-tests.yml b/.github/workflows/run-unit-tests.yml index 9a05c087f..11ad8dd5c 100644 --- a/.github/workflows/run-unit-tests.yml +++ b/.github/workflows/run-unit-tests.yml @@ -295,6 +295,13 @@ jobs: - name: Verify Companion Bluetooth settings and WebConfig run: | + python3 -B test/test_gps_voice_buttons.py -v + python3 -B test/test_gps_voice_generator.py -v + python3 -B test/test_button_voice_actions.py -v + python3 -B test/test_button_voice_generator.py -v + python3 -B test/test_button_voice_preview.py -v + python3 -B test/test_g726_voice.py -v + python3 -B test/test_g726_voice_generator.py -v python3 -B test/test_nimble_companion.py python3 -B test/test_bluetooth_pairing_ui.py python3 -B test/test_companion_pairing_display.py diff --git a/docs/companion_radio_full.md b/docs/companion_radio_full.md index e7709ca21..9fbb57771 100644 --- a/docs/companion_radio_full.md +++ b/docs/companion_radio_full.md @@ -47,6 +47,68 @@ a busy radio rollback remains pending for recovery instead of reporting success. | LoRa self-update | No | No | | Optional self-update | WiFi on existing dual-app layouts; USB on single-app layouts | Bluetooth DFU with a compatible bootloader; USB always supported | +### Screenless nRF52 spoken button confirmations + +Full Companion builds for T1000-E, RAK WisMesh Tag, MeshTracker X1, +Muziworks R1 Neo and ThinkNode M3 use prerecorded spoken confirmations for +their shared single-button controls. Other roles, legacy USB/BLE-only builds, +screened boards and all Wio profiles retain their existing audio behavior. +Set `MESH_GPS_VOICE=0` at build time to retain tones on an eligible Full build. + +| User-button gesture | Action / spoken confirmation | +| --- | --- | +| One press | Acknowledge an active notification: "Notification cleared"; otherwise "Ready" | +| Two presses | "Advert queued" or "Advert failed" | +| Three presses | "Sound on" or "Sound off" after the preference is saved | +| Four presses | "GPS on" or "GPS off" when the GPS setting is available | +| Hold more than three seconds | "Shutting down"; shutdown remains nonblocking while audio drains | +| Hold during the first eight seconds of UI startup | "USB setup" for terminal/rescue mode | + +MeshTracker X1's three-press gesture instead cycles "Sound and vibration", +"Sound only", "Vibration only", and "Silent". The new setting must save before +either live alert output changes. A failed save restores both preferences and +announces "Action failed". An explicit mute or alert-mode change permits one +courtesy confirmation without unmuting ordinary notifications. The four +additional mode clips are compiled only for `HAS_DRV2605` builds. +Notification timers cannot cancel control speech, and the committed alert +mode remains authoritative for vibration even if a notification-mask save fails. + +Power-on and wake wiring remain board-specific. Speech is nonblocking and uses +the existing nRF52 PWM player; each buzzer still needs a physical listening +test for intelligibility. All spoken button, alert-mode and GPS recordings use +Microsoft Zira Desktop with the selected compressed Companion voice profile. +R1 Neo's buzzer pin aliases its optional QSPI clock, so voice is +not default-enabled when `QSPIFLASH` is selected. ThinkNode M4 is deliberately +excluded: its former +buzzer definitions incorrectly claimed I2C SDA and a battery-status LED, not +verified audio hardware. Its Companion recipes no longer drive those pins as +a buzzer. + +The optional ESP32 RC32-without-display recipe is not part of this nRF52 +extension: its fitted audio hardware needs verification and its `ui-new` +controls require an ESP32 playback backend, not the nRF52 PWM player. + +#### Experimental G.726 speech + +Ordinary builds still use the approved Zira IMA recordings. G.726 is a hardware +test option only: set both `MESH_BUTTON_AUDIO_HIL=1` and +`MESH_GPS_VOICE_G726_BITRATE=16` or `24`. Invalid bitrates or a missing test gate +are rejected. The generated catalog selects exactly one bitrate, retains the +original sample counts, and omits the X1-only mode prompts on other boards. + +The decoder needs 52 bytes of state, no heap or full-clip buffer, and about +1.2 KiB of Cortex-M4 code/tables. Its packing, resets and PWM lifecycle are +checked against independently pinned FFmpeg output. At 24 kbps the audio +payload is 25% smaller; at 16 kbps it is 50% smaller with more waveform error. +Neither software comparisons nor successful builds qualify physical buzzer +intelligibility or the refill deadline under Bluetooth/radio load. + +`scripts/generate_g726_voice.py` regenerates both experimental catalogs from +the approved mono 8 kHz Zira WAVs using FFmpeg's MSB-first `g726` encoder. +Production IMA headers cannot be selected as its output. The decoder's Sun +provenance, attributed FFmpeg MIX interpolation and LGPL license are retained +in `src/helpers/ui/g726`; no claim of independent ITU conformance is made. + ### nRF52 Bluetooth reconnect qualification Full Companions persist the paired client's notification subscriptions (CCCDs) diff --git a/examples/companion_radio/AbstractUITask.h b/examples/companion_radio/AbstractUITask.h index 208555ad1..fd7f0a48b 100644 --- a/examples/companion_radio/AbstractUITask.h +++ b/examples/companion_radio/AbstractUITask.h @@ -117,6 +117,9 @@ public: // override these hooks. The default keeps setup-screen routing compatible // with older UIs that handle pairing only from their regular loop. virtual void servicePairingState() {} +#ifdef MESH_BUTTON_AUDIO_HIL + virtual bool handleButtonAudioTest(const char*, char*, size_t) { return false; } +#endif virtual bool isPairingPromptActive() const { return false; } virtual void loop() = 0; }; diff --git a/examples/companion_radio/MyMesh.cpp b/examples/companion_radio/MyMesh.cpp index 2347860c1..080ba2615 100644 --- a/examples/companion_radio/MyMesh.cpp +++ b/examples/companion_radio/MyMesh.cpp @@ -3194,13 +3194,12 @@ bool MyMesh::handleLocalControlCommand(const char* command, char* reply, return true; } const bool enabled = strcmp(gps_value, "on") == 0; - if (!sensors.setSettingValue("gps", enabled ? "1" : "0")) { + if (sensors.getSettingByKey("gps") == nullptr) { snprintf(reply, reply_size, "Error: GPS unavailable"); } else { - if (savePreference(_prefs.gps_enabled, static_cast(enabled))) { + if (setGpsEnabled(enabled)) { snprintf(reply, reply_size, "OK - GPS %s (saved)", enabled ? "on" : "off"); } else { - applyGpsPrefs(); snprintf(reply, reply_size, "Error: GPS could not be saved"); } } @@ -7242,6 +7241,15 @@ bool MyMesh::saveAdvertName(const char* name) { return false; } +#if ENV_INCLUDE_GPS == 1 +bool MyMesh::setGpsEnabled(bool enabled) { + if (!sensors.setSettingValue("gps", enabled ? "1" : "0")) return false; + if (savePreference(_prefs.gps_enabled, static_cast(enabled))) return true; + applyGpsPrefs(); + return false; +} +#endif + bool MyMesh::saveAdvertLocation(double latitude, double longitude) { const double previous_lat = sensors.node_lat, previous_lon = sensors.node_lon; sensors.node_lat = latitude; @@ -9291,6 +9299,10 @@ static bool isCompanionRadioPrefsCommand(const char* command) { // Called only for directly attached USB/BLE/TCP/browser clients. Commands // received over LoRa use handleCommand() with a nonzero sender timestamp. bool MyMesh::handleDirectCommand(const char* command, char* reply, size_t reply_size) { +#ifdef MESH_BUTTON_AUDIO_HIL + // Present only in an explicitly instrumented physical-test build. + if (_ui && _ui->handleButtonAudioTest(command, reply, reply_size)) return true; +#endif #if defined(MESH_SOAK_DIAGNOSTICS) if (mesh::hil::handleSoakCommand(command, reply, reply_size)) return true; #endif diff --git a/examples/companion_radio/MyMesh.h b/examples/companion_radio/MyMesh.h index bd6bf67c5..4145649d6 100644 --- a/examples/companion_radio/MyMesh.h +++ b/examples/companion_radio/MyMesh.h @@ -427,6 +427,7 @@ public: #endif #if ENV_INCLUDE_GPS == 1 + bool setGpsEnabled(bool enabled); void applyGpsPrefs() { sensors.setSettingValue("gps", _prefs.gps_enabled ? "1" : "0"); char interval_str[12]; // Max: 24 hours = 86400 seconds (5 digits + null) diff --git a/examples/companion_radio/ui-orig/Button.cpp b/examples/companion_radio/ui-orig/Button.cpp index f9e83dbae..f46cd8b24 100644 --- a/examples/companion_radio/ui-orig/Button.cpp +++ b/examples/companion_radio/ui-orig/Button.cpp @@ -69,6 +69,17 @@ void Button::update() { } bool Button::readButton() { +#ifdef MESH_BUTTON_AUDIO_HIL + if (_hil_active) { + const uint32_t now = millis(); + if (static_cast(now - _hil_at) >= 0) { + _hil_down = !_hil_down; + if (!_hil_down && --_hil_remaining == 0) _hil_active = false; + _hil_at = now + (_hil_down ? _hil_hold_ms : 120); + } + return _hil_down; + } +#endif if (_isAnalog) { return (analogRead(_pin) < _analogThreshold); } else { @@ -76,6 +87,18 @@ bool Button::readButton() { } } +#ifdef MESH_BUTTON_AUDIO_HIL +bool Button::injectPresses(uint8_t clicks, uint32_t hold_ms) { + if (_hil_active || _state != IDLE || clicks < 1 || clicks > 4) return false; + _hil_active = true; + _hil_down = false; + _hil_remaining = clicks; + _hil_hold_ms = hold_ms; + _hil_at = millis() + 50; + return true; +} +#endif + void Button::handleStateChange() { uint32_t now = millis(); @@ -128,4 +151,4 @@ void Button::triggerEvent(EventType event) { default: break; } -} \ No newline at end of file +} diff --git a/examples/companion_radio/ui-orig/Button.h b/examples/companion_radio/ui-orig/Button.h index 9df809b25..fe81a0e04 100644 --- a/examples/companion_radio/ui-orig/Button.h +++ b/examples/companion_radio/ui-orig/Button.h @@ -40,8 +40,17 @@ public: // State getters bool isPressed() const { return _currentState; } EventType getLastEvent() const { return _lastEvent; } +#ifdef MESH_BUTTON_AUDIO_HIL + bool injectPresses(uint8_t clicks, uint32_t hold_ms = 120); + bool injecting() const { return _hil_active; } +#endif private: +#ifdef MESH_BUTTON_AUDIO_HIL + bool _hil_active = false, _hil_down = false; + uint8_t _hil_remaining = 0; + uint32_t _hil_at = 0, _hil_hold_ms = 120; +#endif enum State { IDLE, PRESSED, @@ -77,4 +86,4 @@ private: bool readButton(); void handleStateChange(); void triggerEvent(EventType event); -}; \ No newline at end of file +}; diff --git a/examples/companion_radio/ui-orig/UITask.cpp b/examples/companion_radio/ui-orig/UITask.cpp index 845732120..5342b873e 100644 --- a/examples/companion_radio/ui-orig/UITask.cpp +++ b/examples/companion_radio/ui-orig/UITask.cpp @@ -212,6 +212,9 @@ bool UITask::shouldPlayMessageTone() const { } void UITask::notify(UIEventType t) { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) return; +#endif #if defined(PIN_BUZZER) if (_notification_outputs & mesh::notify::Sound) switch(t){ case UIEventType::contactMessage: @@ -588,6 +591,23 @@ void UITask::userLedHandler() { hardware-agnostic pre-shutdown activity should be done here */ void UITask::shutdown(bool restart){ +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) return; + if (!prepareForShutdown()) { + buzzer.speakButton(ButtonVoicePrompt::ActionFailed); + return; + } + + // Keep the main loop running while the tone and spoken confirmation drain, + // so USB, Bluetooth and radio service are not held inside this callback. + _shutdown_restart = restart; + _shutdown_started_at = millis(); + _shutdown_pending = true; + if (!buzzer.speakButton(restart ? ButtonVoicePrompt::Restarting + : ButtonVoicePrompt::ShuttingDown)) { + buzzer.shutdown(); + } +#else if (!prepareForShutdown()) return; #ifdef PIN_BUZZER @@ -609,8 +629,33 @@ void UITask::shutdown(bool restart){ // Power off board including radio, display, GPS and components _board->powerOff(); } +#endif } +#if defined(PIN_BUZZER) && MESH_GPS_VOICE +void UITask::servicePendingShutdown() { + if (!_shutdown_pending) return; + if (buzzer.isPlaying() + && static_cast(millis() - _shutdown_started_at) < 5000UL) { + return; + } + + buzzer.stop(); + _shutdown_pending = false; + // New radio/host work can arrive during the announcement. Flush it too + // before entering the board's irreversible shutdown state. + if (!prepareForShutdown()) { + buzzer.speakButton(ButtonVoicePrompt::ActionFailed); + return; + } + if (_shutdown_restart) { + _board->reboot(); + } else { + _board->powerOff(); + } +} +#endif + bool UITask::isPairingScreenActive() const { return mesh::ui::isBluetoothPairingPromptActive( isBluetoothEnabled(), hasBluetoothConnection(), @@ -682,6 +727,9 @@ void UITask::loop() { #ifdef PIN_BUZZER if (buzzer.isPlaying()) buzzer.loop(); #endif +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + servicePendingShutdown(); +#endif if (_display != NULL && _display->isOn()) { if (!isPairingScreenActive() && !_alert[0] && !(_origin[0] && _msg[0]) @@ -704,7 +752,13 @@ void UITask::loop() { } void UITask::handleButtonAnyPress() { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) return; + _button_notification_cleared = the_mesh.notificationButton() + || _button_notification_cleared; +#else the_mesh.notificationButton(); +#endif MESH_DEBUG_PRINTLN("UITask: any press triggered"); // called on any button press before other events, to wake up the display quickly // do not refresh the display here, as it may block the button handler @@ -716,6 +770,15 @@ void UITask::handleButtonAnyPress() { } void UITask::handleButtonShortPress() { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) return; + const bool notification_cleared = _button_notification_cleared; + _button_notification_cleared = false; + if (_display == NULL) { + buzzer.speakButton(notification_cleared + ? ButtonVoicePrompt::NotificationCleared : ButtonVoicePrompt::Ready); + } +#endif MESH_DEBUG_PRINTLN("UITask: short press triggered"); if (_display != NULL) { // Only clear message preview if display was already on before button press @@ -743,14 +806,32 @@ void UITask::handleButtonShortPress() { } void UITask::handleButtonDoublePress() { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) return; + _button_notification_cleared = false; +#endif MESH_DEBUG_PRINTLN("UITask: double press triggered, sending advert"); // ADVERT - #ifdef PIN_BUZZER - notify(UIEventType::ack); - #endif - if (the_mesh.advert()) { +#if !(defined(PIN_BUZZER) && MESH_GPS_VOICE) +#ifdef PIN_BUZZER + notify(UIEventType::ack); +#endif +#endif + const bool queued = the_mesh.advert(); +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (!buzzer.speakButton(queued ? ButtonVoicePrompt::AdvertQueued + : ButtonVoicePrompt::AdvertFailed)) { + notify(UIEventType::ack); + } +#endif + if (queued) { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + MESH_DEBUG_PRINTLN("Advert queued!"); + sprintf(_alert, "Advert queued!"); +#else MESH_DEBUG_PRINTLN("Advert sent!"); sprintf(_alert, "Advert sent!"); +#endif } else { MESH_DEBUG_PRINTLN("Advert failed!"); sprintf(_alert, "Advert failed.."); @@ -759,19 +840,44 @@ void UITask::handleButtonDoublePress() { } void UITask::handleButtonTriplePress() { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) return; + _button_notification_cleared = false; +#endif MESH_DEBUG_PRINTLN("UITask: triple press triggered"); #if defined(PIN_BUZZER) && defined(HAS_DRV2605) // cycle alert modes: Buzz+Vibe -> Buzz only -> Vibe only -> Silent +#if MESH_GPS_VOICE + const uint8_t previous_sound = _node_prefs->buzzer_quiet; + const uint8_t previous_vibration = _node_prefs->vibe_quiet; +#endif int mode = (_node_prefs->buzzer_quiet ? 2 : 0) | (_node_prefs->vibe_quiet ? 1 : 0); mode = (mode + 1) & 3; _node_prefs->buzzer_quiet = (mode & 2) ? 1 : 0; _node_prefs->vibe_quiet = (mode & 1) ? 1 : 0; +#if MESH_GPS_VOICE + // Announce only committed settings. A failed write must not change either + // live alert output, including the notification engine's mute masks. + if (!the_mesh.savePrefs()) { + _node_prefs->buzzer_quiet = previous_sound; + _node_prefs->vibe_quiet = previous_vibration; + sprintf(_alert, "Alerts: Save failed"); + buzzer.speakButton(ButtonVoicePrompt::ActionFailed, true); + _need_refresh = true; + return; + } +#endif buzzer.quiet(_node_prefs->buzzer_quiet); vibration.quiet(_node_prefs->vibe_quiet); +#if MESH_GPS_VOICE + if (_node_prefs->vibe_quiet) vibration.stop(); +#endif the_mesh.setNotificationOutputMute(mesh::notify::Sound, _node_prefs->buzzer_quiet); the_mesh.setNotificationOutputMute(mesh::notify::Vibration, _node_prefs->vibe_quiet); // audible/tactile confirmation of the new mode (no screen on some boards) +#if !MESH_GPS_VOICE if (!_node_prefs->buzzer_quiet) notify(UIEventType::ack); +#endif if (!_node_prefs->vibe_quiet) vibration.trigger(true); switch (mode) { case 0: sprintf(_alert, "Alerts: Buzz+Vibe"); break; @@ -779,9 +885,42 @@ void UITask::handleButtonTriplePress() { case 2: sprintf(_alert, "Alerts: Vibe only"); break; default: sprintf(_alert, "Alerts: Silent"); break; } +#if MESH_GPS_VOICE + static const ButtonVoicePrompt mode_prompts[] = { + ButtonVoicePrompt::AlertsSoundVibration, + ButtonVoicePrompt::AlertsSoundOnly, + ButtonVoicePrompt::AlertsVibrationOnly, + ButtonVoicePrompt::AlertsSilent, + }; + // One courtesy announcement is allowed for vibration-only/silent modes, + // without unmuting ordinary notifications or changing the saved mode. + buzzer.speakButton(mode_prompts[mode], true); +#else the_mesh.savePrefs(); +#endif _need_refresh = true; #elif defined(PIN_BUZZER) +#if MESH_GPS_VOICE + const bool previous_quiet = buzzer.isQuiet(); + const uint8_t previous_preference = _node_prefs->buzzer_quiet; + const bool quiet = !previous_quiet; + _node_prefs->buzzer_quiet = quiet; + if (the_mesh.savePrefs()) { + buzzer.quiet(quiet); + the_mesh.setNotificationOutputMute(mesh::notify::Sound, quiet); + sprintf(_alert, quiet ? "Buzzer: OFF" : "Buzzer: ON"); + // A user-requested mute gets one final confirmation without changing + // the stored quiet state or allowing ordinary notifications through. + buzzer.speakButton(quiet ? ButtonVoicePrompt::SoundOff + : ButtonVoicePrompt::SoundOn, true); + } else { + _node_prefs->buzzer_quiet = previous_preference; + buzzer.quiet(previous_quiet); + sprintf(_alert, "Buzzer: Save failed"); + buzzer.speakButton(ButtonVoicePrompt::ActionFailed, true); + } + _need_refresh = true; +#else if (buzzer.isQuiet()) { buzzer.quiet(false); notify(UIEventType::ack); @@ -795,40 +934,148 @@ void UITask::handleButtonTriplePress() { the_mesh.savePrefs(); _need_refresh = true; #endif +#endif } void UITask::handleButtonQuadruplePress() { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) return; + _button_notification_cleared = false; + bool gps_changed = false; + sprintf(_alert, "GPS: Unavailable"); +#endif MESH_DEBUG_PRINTLN("UITask: quad press triggered"); +#if ENV_INCLUDE_GPS == 1 if (_sensors != NULL) { - // toggle GPS onn/off - int num = _sensors->getNumSettings(); - for (int i = 0; i < num; i++) { - if (strcmp(_sensors->getSettingName(i), "gps") == 0) { - if (strcmp(_sensors->getSettingValue(i), "1") == 0) { - _sensors->setSettingValue("gps", "0"); - notify(UIEventType::ack); - sprintf(_alert, "GPS: Disabled"); - } else { - _sensors->setSettingValue("gps", "1"); - notify(UIEventType::ack); - sprintf(_alert, "GPS: Enabled"); - } - break; + const char* gps = _sensors->getSettingByKey("gps"); + if (gps != nullptr) { + const bool enabled = gps[0] != '1'; + if (the_mesh.setGpsEnabled(enabled)) { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + gps_changed = true; +#endif +#ifdef PIN_BUZZER + if (!buzzer.speakGps(enabled)) notify(UIEventType::ack); +#else + notify(UIEventType::ack); +#endif + sprintf(_alert, enabled ? "GPS: Enabled" : "GPS: Disabled"); + } else { + sprintf(_alert, "GPS: Save failed"); } } } +#endif +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (!gps_changed) buzzer.speakButton(ButtonVoicePrompt::ActionFailed); +#endif _need_refresh = true; } void UITask::handleButtonLongPress() { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) return; + _button_notification_cleared = false; +#endif MESH_DEBUG_PRINTLN("UITask: long press triggered"); if (millis() - ui_started_at < 8000) { // long press in first 8 seconds since startup -> CLI/rescue the_mesh.enterCLIRescue(); +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + // enterCLIRescue is supported independently of the framed USB interface. + buzzer.speakButton(ButtonVoicePrompt::UsbSetup); +#endif } else { shutdown(); } } +#ifdef MESH_BUTTON_AUDIO_HIL +bool UITask::handleButtonAudioTest(const char* command, char* reply, size_t size) { + if (strncmp(command, "hil voice play ", 15) == 0) { +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + if (_shutdown_pending) { + snprintf(reply, size, "Error: shutdown pending; preview refused"); + return true; + } + struct Preview { + const char* name; + ButtonVoicePrompt prompt; + }; + static const Preview previews[] = { + {"ready", ButtonVoicePrompt::Ready}, + {"notificationCleared", ButtonVoicePrompt::NotificationCleared}, + {"advertQueued", ButtonVoicePrompt::AdvertQueued}, + {"advertFailed", ButtonVoicePrompt::AdvertFailed}, + {"soundOn", ButtonVoicePrompt::SoundOn}, + {"soundOff", ButtonVoicePrompt::SoundOff}, + {"gpsOn", ButtonVoicePrompt::GpsOn}, + {"gpsOff", ButtonVoicePrompt::GpsOff}, + {"actionFailed", ButtonVoicePrompt::ActionFailed}, + {"usbSetup", ButtonVoicePrompt::UsbSetup}, + {"shuttingDown", ButtonVoicePrompt::ShuttingDown}, + {"restarting", ButtonVoicePrompt::Restarting}, +#ifdef HAS_DRV2605 + {"alertsSoundVibration", ButtonVoicePrompt::AlertsSoundVibration}, + {"alertsSoundOnly", ButtonVoicePrompt::AlertsSoundOnly}, + {"alertsVibrationOnly", ButtonVoicePrompt::AlertsVibrationOnly}, + {"alertsSilent", ButtonVoicePrompt::AlertsSilent}, +#endif + }; + const char* name = command + 15; + for (const auto& preview : previews) { + if (strcmp(name, preview.name) != 0) continue; + // This laboratory path only previews audio. It never invokes the + // button action or changes its saved sound/GPS/shutdown preference. + if (buzzer.speakButton(preview.prompt, true)) { + snprintf(reply, size, "OK - preview only: %s", name); + } else { + snprintf(reply, size, "Error: voice preview unavailable"); + } + return true; + } + snprintf(reply, size, "Error: unknown voice preview name"); +#else + snprintf(reply, size, "Error: voice preview unsupported"); +#endif + return true; + } + if (strncmp(command, "hil voice gain ", 15) == 0) { +#ifdef PIN_BUZZER + const char* value = command + 15; + if (value[0] >= '1' && value[0] <= '8' && value[1] == 0 + && buzzer.voiceGain(value[0] - '0')) { + snprintf(reply, size, "OK - speech gain %c", value[0]); + return true; + } +#endif + snprintf(reply, size, "Error: voice busy/unavailable or use gain 1..8"); + return true; + } + if (strcmp(command, "hil voice status") == 0) { +#ifdef PIN_BUZZER + buzzer.voiceStatus(reply, size); +#else + snprintf(reply, size, "voice unsupported"); +#endif + return true; + } + if (strncmp(command, "hil button ", 11) != 0) return false; + const char* action = command + 11; + uint8_t clicks = 0; + uint32_t hold_ms = 120; + if (action[0] >= '1' && action[0] <= '4' && action[1] == 0) clicks = action[0] - '0'; + else if (strcmp(action, "hold") == 0) { clicks = 1; hold_ms = 3500; } +#ifdef PIN_USER_BTN + if (clicks != 0 && _userButton && _userButton->injectPresses(clicks, hold_ms)) { + snprintf(reply, size, "OK - injected %u press(es), hold %lu ms", clicks, (unsigned long)hold_ms); + return true; + } +#endif + snprintf(reply, size, "Error: button busy or use hil button 1|2|3|4|hold"); + return true; +} +#endif + uint8_t UITask::notificationCapabilities() const { uint8_t bits = 0; @@ -845,7 +1092,13 @@ uint8_t UITask::notificationCapabilities() const { } void UITask::notificationMelody(const char* text) { #ifdef PIN_BUZZER - if (text) buzzer.playNotification(text); else buzzer.stop(); +#if MESH_GPS_VOICE + if (_shutdown_pending) return; + // The physical sound preference is authoritative even if the separate + // programmable-notification settings file could not be saved. + if (text && buzzer.isQuiet()) return; +#endif + if (text) buzzer.playNotification(text); else buzzer.stopNotification(); #endif } void UITask::notificationScreen(int8_t mode) { @@ -855,6 +1108,14 @@ void UITask::notificationScreen(int8_t mode) { } void UITask::notificationVibration(bool on) { #ifdef HAS_DRV2605 +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + // The saved physical alert mode stays authoritative even if the separate + // notification-mask write fails. Off callbacks must still stop the driver. + if (on && _node_prefs && _node_prefs->vibe_quiet) { + vibration.stop(); + return; + } +#endif vibration.pulse(on); #elif defined(PIN_VIBRATION) vibration.stop(); diff --git a/examples/companion_radio/ui-orig/UITask.h b/examples/companion_radio/ui-orig/UITask.h index 3cc366e65..6c3c4de92 100644 --- a/examples/companion_radio/ui-orig/UITask.h +++ b/examples/companion_radio/ui-orig/UITask.h @@ -44,6 +44,14 @@ class UITask : public AbstractUITask { int _msgcount; bool _need_refresh = true; bool _displayWasOn = false; // Track display state before button press +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + // ANY_PRESS runs once per click: keep the first acknowledged notification + // until the eventual single/multi-click handler consumes the sequence. + bool _button_notification_cleared = false; + bool _shutdown_pending = false; + bool _shutdown_restart = false; + uint32_t _shutdown_started_at = 0; +#endif unsigned long _pairing_screen_until; unsigned long ui_started_at; uint32_t _radio_profile_page_started_at = 0; @@ -69,6 +77,9 @@ class UITask : public AbstractUITask { void handleButtonTriplePress(); void handleButtonQuadruplePress(); void handleButtonLongPress(); +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + void servicePendingShutdown(); +#endif bool shouldPlayMessageTone() const; bool isPairingScreenActive() const; void resetRadioProfileDisplayPage(); @@ -112,6 +123,9 @@ public: void notificationMelody(const char* text) override; void notificationScreen(int8_t mode) override; void loop() override; +#ifdef MESH_BUTTON_AUDIO_HIL + bool handleButtonAudioTest(const char* command, char* reply, size_t size) override; +#endif void shutdown(bool restart = false); }; diff --git a/scripts/generate_button_voice.ps1 b/scripts/generate_button_voice.ps1 new file mode 100644 index 000000000..7f5976c79 --- /dev/null +++ b/scripts/generate_button_voice.ps1 @@ -0,0 +1,84 @@ +# Reproduce the selected Zira / compressed button recordings for supported +# Full Companions; playback gain is configured by the firmware. +# GPS direction phrases are generated separately by generate_gps_voice.ps1. +[CmdletBinding(SupportsShouldProcess = $true)] +param( + [ValidateNotNullOrEmpty()] + [string]$OutputDirectory = 'out/gps-voice/button-zira', + [ValidateNotNullOrEmpty()] + [string]$OutputHeader = 'src/helpers/ui/ButtonVoiceData.h', + [ValidateNotNullOrEmpty()] + [string]$Voice = 'Microsoft Zira Desktop', + # Reuse original, already selected clips while adding a new catalog entry. + [switch]$OnlyMissing +) +$ErrorActionPreference = 'Stop' +# Diagnostic voices must name a deliberate header target; the default stays +# the selected Zira / rate -1 / compressed / peak-0.12 profile. +if (-not $PSBoundParameters.ContainsKey('OutputHeader') -and + $Voice -ne 'Microsoft Zira Desktop') { + throw 'Voice variants require an explicit -OutputHeader (use an out/gps-voice path for tests).' +} +$buttonDirectory = [IO.Path]::GetFullPath($OutputDirectory) +$buttonHeader = [IO.Path]::GetFullPath($OutputHeader) +if ([IO.Path]::GetExtension($buttonHeader) -ine '.h') { + throw '-OutputHeader must name a .h file.' +} +if (Test-Path -LiteralPath $buttonDirectory -PathType Leaf) { + throw '-OutputDirectory names an existing file.' +} +if (Test-Path -LiteralPath $buttonHeader -PathType Container) { + throw '-OutputHeader names an existing directory.' +} +$buttonEncoder = Join-Path $PSScriptRoot 'generate_button_voice.py' +if (-not (Test-Path -LiteralPath $buttonEncoder -PathType Leaf)) { + throw "Voice encoder not found: $buttonEncoder" +} +if (-not $PSCmdlet.ShouldProcess($buttonHeader, "Synthesize and encode $Voice button confirmations")) { + return +} + +$buttonPhrases = [ordered]@{ + ready = 'Ready' + notificationCleared = 'Notification cleared' + advertQueued = 'Advert queued' + advertFailed = 'Advert failed' + soundOn = 'Sound on' + soundOff = 'Sound off' + actionFailed = 'Action failed' + usbSetup = 'USB setup' + shuttingDown = 'Shutting down' + restarting = 'Restarting' + alertsSoundVibration = 'Sound and vibration' + alertsSoundOnly = 'Sound only' + alertsVibrationOnly = 'Vibration only' + alertsSilent = 'Silent' +} +$buttonFilter = 'highpass=f=350,lowpass=f=3400,silenceremove=start_periods=1:start_threshold=-45dB,areverse,silenceremove=start_periods=1:start_threshold=-45dB,areverse,acompressor=threshold=0.08:ratio=6:attack=5:release=70:makeup=4:knee=4:detection=rms,volume=1.4,aresample=8000,alimiter=limit=0.12:level=disabled,apad=pad_dur=0.05' +Add-Type -AssemblyName System.Speech +$buttonVoice = New-Object System.Speech.Synthesis.SpeechSynthesizer +try { + $buttonVoices = @($buttonVoice.GetInstalledVoices() | Where-Object Enabled | ForEach-Object { $_.VoiceInfo.Name }) + if ($buttonVoices -notcontains $Voice) { + throw "Voice '$Voice' is unavailable. Installed voices: $($buttonVoices -join ', ')" + } + Get-Command ffmpeg, python -ErrorAction Stop | Out-Null + $buttonVoice.SelectVoice($Voice) + $buttonVoice.Rate = -1 + New-Item -ItemType Directory -Force -Path $buttonDirectory | Out-Null + New-Item -ItemType Directory -Force -Path ([IO.Path]::GetDirectoryName($buttonHeader)) | Out-Null + foreach ($buttonName in $buttonPhrases.Keys) { + $buttonRaw = Join-Path $buttonDirectory "$buttonName-raw.wav" + $buttonPcm = Join-Path $buttonDirectory "$buttonName.wav" + if ($OnlyMissing -and (Test-Path -LiteralPath $buttonPcm -PathType Leaf)) { + continue + } + $buttonVoice.SetOutputToWaveFile($buttonRaw) + $buttonVoice.Speak($buttonPhrases[$buttonName]) + $buttonVoice.SetOutputToNull() + & ffmpeg -hide_banner -loglevel error -y -i $buttonRaw -af $buttonFilter -ar 8000 -ac 1 -c:a pcm_s16le $buttonPcm + if ($LASTEXITCODE -ne 0) { throw "Voice conversion failed: $buttonName" } + } +} finally { $buttonVoice.Dispose() } +& python $buttonEncoder --directory $buttonDirectory --output $buttonHeader --voice $Voice +if ($LASTEXITCODE -ne 0) { throw 'Button voice encoding failed' } diff --git a/scripts/generate_button_voice.py b/scripts/generate_button_voice.py new file mode 100644 index 000000000..49cdeb1d6 --- /dev/null +++ b/scripts/generate_button_voice.py @@ -0,0 +1,66 @@ +#!/usr/bin/env python3 +"""Encode the fixed button-confirmation WAV catalog as independent IMA clips.""" +import argparse +from pathlib import Path + +from generate_gps_voice import encode, read + +PHRASES = ( + ('ready', 'Ready'), + ('notificationCleared', 'Notification cleared'), + ('advertQueued', 'Advert queued'), + ('advertFailed', 'Advert failed'), + ('soundOn', 'Sound on'), + ('soundOff', 'Sound off'), + ('actionFailed', 'Action failed'), + ('usbSetup', 'USB setup'), + ('shuttingDown', 'Shutting down'), + ('restarting', 'Restarting'), + ('alertsSoundVibration', 'Sound and vibration'), + ('alertsSoundOnly', 'Sound only'), + ('alertsVibrationOnly', 'Vibration only'), + ('alertsSilent', 'Silent'), +) + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--directory', type=Path, required=True) + parser.add_argument('--output', type=Path, required=True) + parser.add_argument('--voice', help='Speech voice used to synthesize the source WAVs') + args = parser.parse_args() + if args.voice is not None and (not args.voice.strip() or '\n' in args.voice or '\r' in args.voice): + parser.error('--voice must be a nonempty single-line label') + lines = [ + '// Generated by scripts/generate_button_voice.py. 8 kHz IMA ADPCM.', + '// Fixed spoken confirmations; no runtime speech engine.', + '#pragma once', '#include ', + 'namespace mesh { namespace audio {', + ] + if args.voice is not None: + lines.insert(2, f'// Voice: {args.voice}') + total = 0 + for name, phrase in PHRASES: + samples = read(args.directory / (name + '.wav')) + # Shutdown drains audio nonblockingly for at most five seconds. + if not samples or len(samples) > 32000: + raise ValueError(f'{phrase}: expected a nonempty clip under four seconds') + encoded = encode(samples) + total += len(encoded) + if name == 'alertsSoundVibration': + # Only buzzer+vibration devices need the additional mode catalog. + lines.append('#ifdef HAS_DRV2605') + lines.extend([f'// "{phrase}"', f'static const uint8_t {name}Data[] = {{']) + for offset in range(0, len(encoded), 20): + lines.append(' ' + ','.join(f'0x{b:02x}' for b in encoded[offset:offset + 20]) + ',') + lines.extend(['};', f'static constexpr VoiceClip {name}Clip = {{', + f' {name}Data, sizeof({name}Data), {len(samples)}, 8000', '};']) + print(f'{phrase}: {len(samples) / 8000:.3f}s, {len(encoded)} bytes') + lines.append('#endif // HAS_DRV2605') + lines.append('}} // namespace mesh::audio') + args.output.write_text('\n'.join(lines) + '\n', encoding='utf-8') + print(f'Button confirmations: {total} audio bytes') + + +if __name__ == '__main__': + main() diff --git a/scripts/generate_g726_voice.py b/scripts/generate_g726_voice.py new file mode 100644 index 000000000..817ee7f20 --- /dev/null +++ b/scripts/generate_g726_voice.py @@ -0,0 +1,83 @@ +#!/usr/bin/env python3 +"""Generate an opt-in G.726 speech catalog; never overwrite the IMA catalog. + +Requires FFmpeg with the g726 encoder. Source WAVs must be the approved mono +8 kHz/16-bit Zira recordings. Both bitrates are stored in the source header, +but the preprocessor selects exactly one for each hardware test build. +""" +import argparse +import struct +import subprocess +from pathlib import Path + +from generate_button_voice import PHRASES +from generate_gps_voice import read + + +def encode(samples, bitrate, ffmpeg="ffmpeg"): + if bitrate not in (16, 24): + raise ValueError("G.726 bitrate must be 16 or 24 kbps") + pcm = struct.pack("<" + "h" * len(samples), *samples) + result = subprocess.run([ + ffmpeg, "-hide_banner", "-loglevel", "error", "-f", "s16le", + "-ar", "8000", "-ac", "1", "-i", "pipe:0", "-c:a", "g726", + "-b:a", str(bitrate * 1000), "-f", "g726", "pipe:1", + ], input=pcm, stdout=subprocess.PIPE, stderr=subprocess.PIPE, check=True) + expected = (len(samples) * (bitrate // 8) + 7) // 8 + if len(result.stdout) != expected: + raise ValueError(f"G.726-{bitrate}: expected {expected} bytes, got {len(result.stdout)}") + return result.stdout + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("--directory", type=Path, required=True, help="Button WAV catalog") + parser.add_argument("--on", type=Path, required=True, help="GPS-on WAV") + parser.add_argument("--off", type=Path, required=True, help="GPS-off WAV") + parser.add_argument("--output", type=Path, required=True) + parser.add_argument("--ffmpeg", default="ffmpeg") + parser.add_argument("--voice", required=True, help="Voice used to synthesize source WAVs") + args = parser.parse_args() + if not args.voice.strip() or "\n" in args.voice or "\r" in args.voice: + parser.error("--voice must be a nonempty single-line label") + if args.output.name.casefold() in ("buttonvoicedata.h", "gpsvoicedata.h"): + parser.error("G.726 experiments must not overwrite production IMA headers") + catalog = [(name, phrase, args.directory / (name + ".wav")) for name, phrase in PHRASES] + catalog += [("gpsOn", "GPS on", args.on), ("gpsOff", "GPS off", args.off)] + samples = [(name, phrase, read(path)) for name, phrase, path in catalog] + for name, _, pcm in samples: + if not pcm or len(pcm) > 32000: + raise ValueError(f"{name}: expected a nonempty clip under four seconds") + lines = [ + "// Generated by scripts/generate_g726_voice.py. EXPERIMENT ONLY.", + f"// Voice: {args.voice}. 8 kHz mono, MSB-first raw G.726, fresh state per clip.", + "// Original sample counts exclude the unused bits in the final byte.", + "#pragma once", "#include ", + "#if !defined(MESH_GPS_VOICE_G726_BITRATE)", + '#error "G.726 catalog requires an explicitly selected experimental bitrate"', + "#endif", "namespace mesh { namespace audio {", + ] + for bitrate in (16, 24): + lines.append(f"#if MESH_GPS_VOICE_G726_BITRATE == {bitrate}") + total = 0 + for name, phrase, pcm in samples: + mode = name.startswith("alerts") + if mode: + lines.append("#ifdef HAS_DRV2605") + data = encode(pcm, bitrate, args.ffmpeg) + total += len(data) + lines += [f'// "{phrase}"', f"static const uint8_t {name}Data[] = {{"] + for offset in range(0, len(data), 20): + lines.append(" " + ",".join(f"0x{b:02x}" for b in data[offset:offset + 20]) + ",") + lines += ["};", f"static constexpr VoiceClip {name}Clip = {{", + f" {name}Data, sizeof({name}Data), {len(pcm)}, 8000, VoiceCodec::G726{bitrate}", "};"] + if mode: + lines.append("#endif // HAS_DRV2605") + lines.append(f"#endif // {bitrate} kbps") + print(f"G.726-{bitrate}: {total} bytes across all 16 clips") + lines.append("}} // namespace mesh::audio") + args.output.write_text("\n".join(lines) + "\n", encoding="utf-8") + + +if __name__ == "__main__": + main() diff --git a/scripts/generate_gps_voice.ps1 b/scripts/generate_gps_voice.ps1 new file mode 100644 index 000000000..8139ed602 --- /dev/null +++ b/scripts/generate_gps_voice.ps1 @@ -0,0 +1,91 @@ +# Generate the two fixed phrases with Windows' local speech synthesizer. +# Requires ffmpeg and Python; outputs WAV previews plus the checked-in header. +[CmdletBinding(SupportsShouldProcess = $true)] +param( + [ValidateNotNullOrEmpty()] + [string]$OutputDirectory = 'out/gps-voice', + [ValidateNotNullOrEmpty()] + [string]$OutputHeader = 'src/helpers/ui/GpsVoiceData.h', + [ValidateNotNullOrEmpty()] + [string]$Voice = 'Microsoft Zira Desktop', + [ValidateRange(-10, 10)] + [int]$Rate = -1, + [switch]$Compress = $true, + [ValidateRange(0.0625, 1.0)] + [double]$PeakLimit = 0.12 +) +$ErrorActionPreference = 'Stop' + +# Require a deliberate header target for acoustic experiments. A normal run +# regenerates the selected Zira / rate -1 / compressed / gain-8 profile. +# Speech is prerecorded and shared by supported boards; no runtime TTS is needed. +# Original Zira: -Voice 'Microsoft Zira Desktop' -Compress:$false -PeakLimit 0.8 +# with an explicit -OutputHeader. +if (-not $PSBoundParameters.ContainsKey('OutputHeader') -and + ($Voice -ne 'Microsoft Zira Desktop' -or $Rate -ne -1 -or + -not $Compress -or $PeakLimit -ne 0.12)) { + throw 'Voice variants require an explicit -OutputHeader (use an out/gps-voice path for tests).' +} +$gpsDirectory = [IO.Path]::GetFullPath($OutputDirectory) +$gpsHeader = [IO.Path]::GetFullPath($OutputHeader) +if ([IO.Path]::GetExtension($gpsHeader) -ine '.h') { + throw '-OutputHeader must name a .h file.' +} +if (Test-Path -LiteralPath $gpsDirectory -PathType Leaf) { + throw '-OutputDirectory names an existing file.' +} +if (Test-Path -LiteralPath $gpsHeader -PathType Container) { + throw '-OutputHeader names an existing directory.' +} +$gpsEncoder = Join-Path $PSScriptRoot 'generate_gps_voice.py' +if (-not (Test-Path -LiteralPath $gpsEncoder -PathType Leaf)) { + throw "Voice encoder not found: $gpsEncoder" +} + +$gpsFilter = 'highpass=f=350,lowpass=f=3400,silenceremove=start_periods=1:start_threshold=-45dB,areverse,silenceremove=start_periods=1:start_threshold=-45dB,areverse' +if ($Compress) { + # Raise quieter consonants without simply clipping the louder vowels. + $gpsFilter += ',acompressor=threshold=0.08:ratio=6:attack=5:release=70:makeup=4:knee=4:detection=rms' +} +$gpsFilter += ',volume=1.4' +if ($Compress -or $PeakLimit -ne 0.8) { + # Limit after resampling so the experimental PCM peak has real headroom. + $gpsFilter += ',aresample=8000' +} +$gpsPeak = $PeakLimit.ToString('0.####', [Globalization.CultureInfo]::InvariantCulture) +$gpsFilter += ",alimiter=limit=${gpsPeak}:level=disabled,apad=pad_dur=0.05" +# For player gains 4 / 6 / 8, begin at -PeakLimit 0.18 / 0.12 / 0.09 +# (72% nominal full scale after gain). Check decoded/reconstructed peaks too: +# ADPCM quantization and interpolation can overshoot the source PCM ceiling. +Write-Verbose "Voice: $Voice; rate: $Rate; output directory: $gpsDirectory" +Write-Verbose "Output header: $gpsHeader" +Write-Verbose "FFmpeg filter: $gpsFilter" +if (-not $PSCmdlet.ShouldProcess($gpsHeader, "Synthesize GPS on/off with $Voice and encode previews from $gpsDirectory")) { + return +} + +Add-Type -AssemblyName System.Speech +$gpsVoice = New-Object System.Speech.Synthesis.SpeechSynthesizer +try { + $gpsVoices = @($gpsVoice.GetInstalledVoices() | Where-Object Enabled | ForEach-Object { $_.VoiceInfo.Name }) + if ($gpsVoices -notcontains $Voice) { + throw "Voice '$Voice' is unavailable. Installed voices: $($gpsVoices -join ', ')" + } + $gpsVoice.SelectVoice($Voice) + $gpsVoice.Rate = $Rate + Get-Command ffmpeg, python -ErrorAction Stop | Out-Null + New-Item -ItemType Directory -Force -Path $gpsDirectory | Out-Null + New-Item -ItemType Directory -Force -Path ([IO.Path]::GetDirectoryName($gpsHeader)) | Out-Null + foreach ($gpsState in @('on','off')) { + $gpsRaw = Join-Path $gpsDirectory "gps-$gpsState-raw.wav" + $gpsPcm = Join-Path $gpsDirectory "gps-$gpsState.wav" + $gpsVoice.SetOutputToWaveFile([IO.Path]::GetFullPath($gpsRaw)) + $gpsVoice.Speak("G P S $gpsState") + $gpsVoice.SetOutputToNull() + # Keep enough consonant energy for a small beeper; limit clipping. + & ffmpeg -hide_banner -loglevel error -y -i $gpsRaw -af $gpsFilter -ar 8000 -ac 1 -c:a pcm_s16le $gpsPcm + if ($LASTEXITCODE -ne 0) { throw 'Voice conversion failed' } + } +} finally { $gpsVoice.Dispose() } +& python $gpsEncoder --on (Join-Path $gpsDirectory 'gps-on.wav') --off (Join-Path $gpsDirectory 'gps-off.wav') --output $gpsHeader --voice $Voice +if ($LASTEXITCODE -ne 0) { throw 'Voice encoding failed' } diff --git a/scripts/generate_gps_voice.py b/scripts/generate_gps_voice.py new file mode 100644 index 000000000..a304e838a --- /dev/null +++ b/scripts/generate_gps_voice.py @@ -0,0 +1,73 @@ +#!/usr/bin/env python3 +"""Encode 8/16 kHz mono 16-bit WAV speech as independent IMA ADPCM clips.""" +import argparse +from pathlib import Path +import struct +import wave + +STEPS = (7,8,9,10,11,12,13,14,16,17,19,21,23,25,28,31,34,37,41,45,50,55, + 60,66,73,80,88,97,107,118,130,143,157,173,190,209,230,253,279,307, + 337,371,408,449,494,544,598,658,724,796,876,963,1060,1166,1282,1411, + 1552,1707,1878,2066,2272,2499,2749,3024,3327,3660,4026,4428,4871, + 5358,5894,6484,7132,7845,8630,9493,10442,11487,12635,13899,15289, + 16818,18500,20350,22385,24623,27086,29794,32767) +ADJUST = (-1,-1,-1,-1,2,4,6,8) + +def encode(samples): + predictor = index = 0 + codes = [] + for sample in samples: + step = STEPS[index] + difference = sample - predictor + code = 8 if difference < 0 else 0 + difference = abs(difference) + delta = step >> 3 + for bit, part in ((4,step),(2,step >> 1),(1,step >> 2)): + if difference >= part: + code |= bit + difference -= part + delta += part + predictor = max(-32768,min(32767,predictor + (-delta if code & 8 else delta))) + index = max(0,min(88,index + ADJUST[code & 7])) + codes.append(code) + if len(codes) & 1: + codes.append(0) + return bytes(a | b << 4 for a,b in zip(codes[::2], codes[1::2])) + +def read(path, rate=8000): + with wave.open(str(path),'rb') as wav: + if (wav.getnchannels(),wav.getsampwidth(),wav.getframerate()) != (1,2,rate): + raise ValueError(f'Expected mono 16-bit PCM at {rate} Hz') + data = wav.readframes(wav.getnframes()) + return struct.unpack('<' + 'h' * (len(data)//2),data) + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--on',type=Path,required=True) + parser.add_argument('--off',type=Path,required=True) + parser.add_argument('--output',type=Path,required=True) + parser.add_argument('--rate',type=int,choices=(8000,16000),default=8000) + parser.add_argument('--voice', help='Speech voice used to synthesize the source WAVs') + args = parser.parse_args() + if args.voice is not None and (not args.voice.strip() or '\n' in args.voice or '\r' in args.voice): + parser.error('--voice must be a nonempty single-line label') + lines = [f'// Generated by scripts/generate_gps_voice.py. {args.rate/1000:g} kHz IMA ADPCM.', + '// Phrases: "GPS on", "GPS off". No runtime speech engine.', + '#pragma once','#include ', + 'namespace mesh { namespace audio {'] + if args.voice is not None: + lines.insert(2, f'// Voice: {args.voice}') + for name,path in (('On',args.on),('Off',args.off)): + samples = read(path,args.rate) + encoded = encode(samples) + lines.append(f'static const uint8_t gps{name}Data[] = {{') + for i in range(0,len(encoded),20): + lines.append(' '+','.join(f'0x{b:02x}' for b in encoded[i:i+20])+',') + lines.extend(['};',f'static constexpr VoiceClip gps{name}Clip = {{', + f' gps{name}Data, sizeof(gps{name}Data), {len(samples)}, {args.rate}', '};']) + print(f'GPS {name.lower()}: {len(samples)/args.rate:.3f}s, {len(encoded)} bytes') + lines.append('}} // namespace mesh::audio') + args.output.write_text('\n'.join(lines)+'\n',encoding='utf-8') + +if __name__ == '__main__': + main() diff --git a/src/helpers/ui/ButtonVoice.h b/src/helpers/ui/ButtonVoice.h new file mode 100644 index 000000000..11cf40113 --- /dev/null +++ b/src/helpers/ui/ButtonVoice.h @@ -0,0 +1,23 @@ +#pragma once + +#include + +// A compact request, not a runtime speech engine: all phrases are in flash. +enum class ButtonVoicePrompt : uint8_t { + Ready, + NotificationCleared, + AdvertQueued, + AdvertFailed, + SoundOn, + SoundOff, + GpsOn, + GpsOff, + ActionFailed, + UsbSetup, + ShuttingDown, + Restarting, + AlertsSoundVibration, + AlertsSoundOnly, + AlertsVibrationOnly, + AlertsSilent +}; diff --git a/src/helpers/ui/ButtonVoiceData.h b/src/helpers/ui/ButtonVoiceData.h new file mode 100644 index 000000000..025b962cc --- /dev/null +++ b/src/helpers/ui/ButtonVoiceData.h @@ -0,0 +1,2659 @@ +// Generated by scripts/generate_button_voice.py. 8 kHz IMA ADPCM. +// Fixed spoken confirmations; no runtime speech engine. +// Voice: Microsoft Zira Desktop +#pragma once +#include +namespace mesh { namespace audio { +// "Ready" +static const uint8_t readyData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x77,0xfc,0x8c,0x68,0x77,0x84,0xab,0x8a,0xaa,0xba,0xab,0x31,0x24,0x32,0x45,0x33,0x12,0x88,0x08,0xa9, + 0xbd,0xab,0x9a,0xaa,0x9b,0x10,0x77,0x37,0xb8,0x9c,0x89,0xaa,0xac,0x20,0x24,0x11,0x42,0x24,0x01,0x98, + 0x08,0xb8,0xcc,0x9a,0x89,0xa9,0x89,0x30,0x42,0x77,0x87,0xaa,0x88,0xa9,0xab,0x08,0x33,0x12,0x62,0x24, + 0x00,0x80,0x88,0xa8,0xcc,0x89,0x99,0x99,0x08,0x21,0x01,0x73,0x77,0xc8,0x0a,0x80,0xbb,0x18,0x42,0x02, + 0x10,0x45,0x90,0x89,0x80,0xa9,0xcb,0x09,0x80,0x9b,0x31,0x03,0x89,0x64,0x77,0xa0,0xab,0x01,0xcc,0x19, + 0x21,0x11,0x20,0x44,0x90,0x09,0x91,0xbb,0x9b,0x89,0xa8,0x8a,0x32,0x23,0x42,0x34,0x74,0x37,0xcd,0x19, + 0xc8,0x0b,0x12,0x11,0x22,0x53,0x91,0x0a,0x91,0xbc,0x89,0xa8,0x89,0x31,0x92,0x29,0x15,0xaa,0x51,0x77, + 0xc1,0x0c,0x91,0x9d,0x21,0x80,0x21,0x23,0x92,0x8a,0x92,0xaf,0x18,0xa8,0x19,0x12,0x99,0x10,0x93,0x8c, + 0x24,0x71,0x27,0xae,0x10,0xeb,0x10,0x01,0x28,0x22,0x01,0x8a,0x80,0xad,0x10,0x99,0x10,0x80,0x98,0x29, + 0xb1,0x39,0x06,0x29,0x77,0xf2,0x2a,0xc8,0x1a,0x12,0x08,0x33,0x81,0x89,0x92,0xad,0x11,0xaa,0x28,0x90, + 0x9a,0x31,0xba,0x72,0x91,0x20,0x73,0x07,0x9f,0x91,0x8d,0x12,0x00,0x31,0x82,0x9b,0x11,0xbd,0x32,0xb8, + 0x20,0xa1,0x9c,0x20,0xc8,0x51,0xb2,0x28,0x92,0x77,0xf8,0x18,0xc9,0x28,0x82,0x20,0x12,0xb8,0x18,0xc8, + 0x39,0x92,0x1a,0xa2,0xcb,0x28,0xa0,0x68,0x82,0x0a,0x93,0x79,0x07,0x9f,0xa1,0x0b,0x33,0x20,0x31,0xb1, + 0x0e,0x90,0x1a,0x04,0x89,0x00,0xba,0x2b,0x93,0x29,0x17,0xb9,0x20,0x99,0x77,0xf0,0x08,0xba,0x31,0x12, + 0x21,0x83,0xad,0x00,0xaa,0x53,0x90,0x08,0xc0,0x0b,0x02,0x09,0x25,0xb9,0x11,0xd9,0x71,0xa7,0x1c,0xc8, + 0x19,0x22,0x10,0x32,0xda,0x19,0xb8,0x30,0x83,0x1a,0xa1,0x9f,0x11,0x09,0x33,0xc8,0x28,0xc9,0x59,0x47, + 0xac,0xa1,0x9c,0x31,0x02,0x42,0xc1,0x0a,0xa8,0x2a,0x15,0x89,0x92,0xad,0x01,0x88,0x43,0xa0,0x18,0xba, + 0x2a,0x77,0xd3,0x09,0xcb,0x29,0x22,0x31,0x84,0xab,0xb0,0x8a,0x25,0x08,0x82,0xad,0x88,0x90,0x62,0x80, + 0x08,0xb9,0x2a,0x21,0x77,0xaa,0xc8,0x8c,0x31,0x02,0x25,0xa9,0x89,0xaa,0x50,0x81,0x20,0xc9,0x8a,0x90, + 0x68,0x01,0x19,0xa8,0x8b,0x03,0x7a,0x07,0x0d,0xc9,0x1a,0x13,0x50,0x93,0x8a,0xa8,0x0b,0x14,0x29,0x92, + 0xad,0x80,0x1b,0x15,0x08,0x82,0x9c,0x00,0x89,0x77,0xd1,0x80,0x9d,0x10,0x01,0x43,0x98,0x88,0xba,0x48, + 0x80,0x23,0xba,0x0b,0xda,0x41,0x10,0x30,0xd9,0x08,0x99,0x41,0x67,0x0b,0xd8,0x8b,0x28,0x38,0x07,0x00, + 0x98,0x9a,0x81,0x28,0x83,0x99,0xc8,0x0c,0x00,0x40,0x02,0x09,0xa9,0x0c,0x22,0x77,0x1a,0xea,0xa9,0x81, + 0x68,0x02,0x10,0x98,0x0b,0xb8,0x22,0x02,0x18,0xf9,0x89,0x89,0x30,0x83,0x31,0xc9,0x98,0x19,0x77,0x3a, + 0xea,0x9b,0xa1,0x68,0x02,0x21,0x91,0x0b,0xd8,0x10,0x00,0x11,0xe1,0x80,0xab,0x18,0x88,0x34,0x18,0x11, + 0x3b,0x47,0x3e,0xca,0xaa,0xc2,0x59,0x10,0x21,0xa3,0x28,0x9b,0x1a,0xc0,0x32,0x99,0x11,0xeb,0x18,0x8d, + 0x00,0xa0,0x24,0x7b,0x97,0x28,0xaa,0x8d,0xc0,0x28,0x01,0x51,0x81,0x21,0x8a,0x09,0xda,0x82,0x0a,0x21, + 0x8a,0x94,0x0b,0x88,0x9c,0xb4,0x28,0x77,0x4b,0xb0,0xb8,0xc8,0x3a,0x0b,0x32,0x96,0x53,0x08,0x10,0xb9, + 0x91,0x8d,0x88,0xa8,0x83,0x39,0x00,0x09,0xc4,0x2a,0x73,0x2b,0xc3,0x98,0xc9,0x8c,0xc9,0x00,0x10,0x61, + 0x11,0x14,0x20,0x10,0x89,0xb0,0xb9,0xb8,0x1d,0x99,0x08,0xa0,0xc3,0x77,0x4b,0xa8,0xd8,0xe2,0x18,0x89, + 0x10,0x91,0x14,0x29,0x00,0x00,0xa2,0x69,0x0a,0x10,0x99,0xa2,0x99,0xc2,0x2a,0xf8,0x51,0xd7,0x03,0x1d, + 0x0a,0x0c,0xb1,0x21,0x28,0x58,0x89,0x95,0x00,0x80,0x49,0x0b,0xb1,0xc3,0x83,0x5d,0x1b,0xa0,0xb1,0x92, + 0x71,0x4b,0xd1,0xa1,0x98,0x2b,0x9b,0x95,0x21,0x31,0x48,0xa2,0x84,0x19,0x2b,0x8d,0xe1,0x80,0x19,0x3b, + 0xa9,0xa7,0x01,0x18,0x16,0x5c,0xa9,0xa1,0xb8,0x19,0x1d,0x90,0x21,0x12,0x53,0x18,0xa4,0x10,0xaa,0xa8, + 0xab,0x89,0x0e,0xa1,0x02,0x10,0x40,0x3a,0x07,0x79,0xb8,0xa0,0xad,0xd0,0x20,0x4a,0x11,0x03,0x86,0x30, + 0x0b,0xb8,0xc8,0xb8,0x2a,0x0d,0x91,0x02,0x12,0x30,0x10,0x7a,0xc7,0x13,0x2e,0xaa,0x98,0xb8,0x11,0x5a, + 0x01,0x14,0x12,0x11,0x89,0xb9,0xaa,0x8f,0x8a,0x89,0x80,0x03,0x52,0x4a,0x88,0x12,0xb7,0x34,0x1f,0xba, + 0xb0,0xb8,0x02,0x7a,0x10,0x84,0x03,0x01,0x19,0xba,0xd8,0xb8,0x99,0x2a,0x1a,0xa3,0x97,0x13,0x7b,0x1a, + 0xa7,0x21,0x0c,0xc0,0x89,0xaa,0x81,0x59,0x28,0x04,0x22,0x82,0x82,0x8a,0x9d,0xbb,0xd8,0x90,0x39,0x4a, + 0x00,0x95,0x83,0x00,0x79,0x18,0xd7,0x81,0x8b,0xa9,0x09,0x88,0x04,0x61,0x20,0x02,0x20,0x8a,0xd8,0xc0, + 0x98,0x1b,0x0b,0x80,0x94,0x23,0x59,0x88,0xa2,0x17,0x78,0x1d,0xc8,0x90,0x99,0x80,0x48,0x28,0x04,0x22, + 0x11,0x08,0x9a,0xea,0xa8,0x1b,0x1d,0x89,0xa4,0x03,0x58,0x2a,0x80,0x68,0xe3,0x94,0x4b,0x9c,0xc1,0x80, + 0x19,0x28,0x30,0x03,0x14,0x20,0x09,0xb9,0xd9,0xc8,0x89,0x2d,0x89,0xa3,0x04,0x30,0x39,0x09,0xd2,0x07, + 0x78,0x1d,0xc0,0x90,0x89,0x08,0x38,0x28,0x84,0x14,0x20,0x19,0xa9,0xa9,0xab,0xcb,0xb0,0x28,0x3a,0x02, + 0x87,0x03,0x69,0x2b,0x78,0xb0,0xb7,0x10,0x0f,0xa8,0x90,0x81,0x11,0x50,0x00,0x83,0x02,0x09,0x9a,0xab, + 0xca,0xa9,0x88,0x18,0x21,0x03,0x06,0x21,0x29,0xb9,0x77,0x7b,0xb8,0xb2,0x1c,0xab,0x91,0x49,0x00,0x06, + 0x21,0x11,0x10,0x99,0xe0,0xa0,0x8a,0x8b,0x1a,0x88,0x93,0x34,0x59,0x00,0x11,0x8a,0x67,0x5b,0xd8,0xc3, + 0x1a,0x8c,0xa1,0x20,0x18,0x04,0x32,0x20,0x81,0x88,0xb9,0xba,0x8f,0xb9,0xa1,0x28,0x19,0x04,0x31,0x01, + 0x85,0x59,0x7c,0x08,0xd7,0x81,0x1b,0x9a,0x88,0x90,0x94,0x33,0x7a,0x00,0xa2,0x92,0x88,0x1b,0x8d,0xb8, + 0xb2,0x10,0x5b,0x19,0x92,0x95,0x11,0x4a,0x0a,0x97,0x41,0x1e,0xc8,0x90,0x8a,0xa0,0x21,0x39,0x85,0x33, + 0x69,0x90,0x92,0x09,0x9b,0xaa,0xca,0xc1,0x38,0x3d,0x88,0xa6,0x22,0x3a,0x89,0x63,0x09,0xd6,0x10,0x0e, + 0xa8,0x90,0x18,0x80,0x23,0x68,0x00,0x93,0x11,0x0a,0x8b,0xbb,0xf8,0xa0,0x18,0x2a,0x28,0x38,0xa2,0x97, + 0x12,0x3b,0x54,0x6c,0xb9,0xc4,0x19,0x8d,0x90,0x00,0x18,0x83,0x43,0x28,0xa4,0x03,0x1b,0xc9,0x98,0x0d, + 0xc9,0xa2,0x39,0x2b,0x92,0x84,0x83,0x12,0x28,0x67,0x6b,0xc8,0xc4,0x18,0x0d,0x98,0x91,0x01,0x01,0x41, + 0x18,0xa3,0x84,0x29,0x8b,0xb9,0xb8,0xaa,0x1b,0x1e,0xc1,0x95,0x48,0x3a,0x80,0x93,0x26,0x7a,0x99,0xd2, + 0x09,0x8c,0xb8,0x81,0x28,0x11,0x43,0x41,0x02,0x03,0x08,0xa9,0xba,0xcc,0xe8,0x80,0x2c,0x8a,0xb3,0x04, + 0x38,0x18,0x93,0x72,0x40,0xe5,0x82,0x2d,0xab,0xd2,0x00,0x29,0x08,0x02,0x23,0x21,0x22,0x18,0xd0,0xb1, + 0x1c,0x8e,0xb8,0x91,0x19,0x09,0x21,0x49,0xb2,0x97,0x70,0x08,0xa5,0x38,0x0e,0xc8,0xb1,0x19,0x1b,0x10, + 0x40,0x11,0x86,0x22,0x39,0x99,0xc1,0xa8,0xb9,0x2b,0x1f,0xa9,0xb4,0x12,0x5a,0x19,0x81,0x10,0xa7,0x23, + 0x3e,0xba,0xf3,0x88,0x1b,0x89,0x81,0x31,0x21,0x15,0x22,0x10,0xa1,0x88,0x9d,0xd9,0xa0,0x0a,0x89,0xb3, + 0x33,0x7c,0x09,0xb2,0xa3,0x54,0x6d,0x99,0xd4,0x81,0x1b,0x9a,0x90,0x28,0x00,0x04,0x52,0x38,0x00,0x92, + 0xa0,0xc8,0x89,0x0e,0xa9,0xb2,0x21,0x3a,0x00,0x31,0x3b,0xf3,0x63,0x5d,0xb8,0xb5,0x18,0x0d,0xa8,0x00, + 0x3b,0x90,0x86,0x31,0x39,0x81,0x02,0x2a,0xca,0xc1,0x89,0x9a,0xb1,0x30,0x5e,0x09,0xa2,0x11,0x3b,0x5c, + 0xb1,0xa7,0x11,0x1e,0xb9,0xb1,0x2a,0x0c,0xa2,0x24,0x58,0x11,0x12,0x38,0x0a,0xf1,0xa1,0x09,0x1b,0x0a, + 0x90,0x92,0x12,0x39,0x89,0x91,0x7f,0xa0,0xa7,0x21,0x1f,0xc9,0xc3,0x18,0x2b,0x90,0x03,0x21,0x12,0x03, + 0x30,0x99,0xe2,0x90,0x2b,0x0d,0x98,0xb3,0x03,0x7a,0x1a,0xc1,0xb4,0x68,0x0a,0xc5,0x82,0x2c,0xaa,0xc1, + 0x08,0x0a,0x92,0x23,0x40,0x03,0x23,0x49,0x89,0x90,0x1c,0xe8,0xb4,0x48,0x2c,0xc0,0x93,0x29,0x0b,0xc2, + 0x72,0x4c,0xb0,0xa5,0x29,0x0d,0xb8,0x92,0x3a,0x09,0x03,0x50,0x00,0xc3,0x08,0x08,0x08,0x08,0x08,0x08, + 0x08,0x08,0x08,0x08,0x88,0x00,0x88,0x00,0x88,0x00,0x08,0x08,0x08,0x08,0x88,0x80,0x80,0x80,0x80,0x80, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip readyClip = { + readyData, sizeof(readyData), 3147, 8000 +}; +// "Notification cleared" +static const uint8_t notificationClearedData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0xff,0xff,0xbf,0x43,0x43,0x22,0x11,0x80,0xa0,0xb9,0xac,0xac,0xaa,0x77,0x20,0x91,0xca,0xba,0xcb,0xa9, + 0x9b,0x88,0x21,0x45,0x33,0x34,0x33,0x13,0x01,0xa8,0xcb,0xdb,0xab,0xbb,0x2a,0x77,0x21,0x98,0xbb,0xdb, + 0xbb,0xa9,0x8b,0x00,0x42,0x26,0x33,0x43,0x22,0x12,0x80,0xa0,0xab,0xad,0xbb,0xc9,0x79,0x16,0x11,0xb9, + 0xcb,0xcb,0x9c,0x9a,0x89,0x11,0x43,0x25,0x43,0x22,0x22,0x01,0x88,0xba,0xbc,0xbb,0xad,0x8a,0x47,0x21, + 0x92,0xeb,0xbb,0xcb,0x9a,0x8a,0x10,0x43,0x54,0x32,0x33,0x22,0x11,0x88,0xab,0xfb,0xaa,0xba,0xaa,0x78, + 0x06,0x02,0x98,0xbc,0xcb,0xbb,0xa9,0x09,0x41,0x42,0x25,0x33,0x34,0x11,0x02,0x90,0xaa,0xdb,0xbb,0xcb, + 0x9b,0x47,0x20,0x90,0xdc,0xb9,0xac,0x0a,0x89,0x32,0x33,0x46,0x22,0x32,0x02,0x02,0xa8,0x8b,0xbd,0xcb, + 0xd9,0xa9,0x77,0x19,0x90,0xe8,0xa0,0x89,0x3a,0x89,0x03,0x84,0x42,0x10,0x20,0xa2,0x10,0x89,0x0c,0xc8, + 0xa8,0xc1,0x2a,0x79,0x97,0xc3,0xf0,0x09,0x89,0x38,0x00,0x30,0x81,0x28,0xc2,0x10,0x82,0x5a,0x80,0xa9, + 0x83,0x0c,0x80,0x0d,0x72,0xd5,0xb2,0xe8,0x19,0x88,0x21,0x82,0x40,0x8a,0x08,0xb1,0x52,0x00,0x28,0xe1, + 0x80,0x98,0x3b,0xb1,0x3a,0x79,0xe4,0xa1,0xc9,0x39,0x89,0x14,0x93,0x48,0x9a,0x08,0x82,0x78,0x80,0x90, + 0xc2,0x0a,0x98,0x88,0x83,0x0c,0x77,0xab,0x91,0xd9,0x30,0x09,0x32,0xc3,0x38,0xaa,0x29,0xa6,0x40,0x90, + 0x8a,0xd2,0x89,0x02,0x0a,0x03,0x2d,0x87,0x9c,0x00,0x9e,0x13,0x00,0x50,0xa9,0x01,0xa8,0x79,0x90,0x10, + 0x91,0x1e,0x90,0x98,0x14,0x8a,0x10,0x96,0x0c,0x99,0xc9,0x13,0x38,0x40,0xc1,0x00,0x09,0x3a,0x84,0x81, + 0x11,0xaf,0x80,0x98,0x60,0x89,0xa0,0x37,0x9c,0x8a,0xd0,0x39,0x12,0x00,0x85,0x8a,0x18,0xa9,0x24,0x92, + 0x19,0xd0,0x9b,0x10,0x8a,0x24,0xe0,0x74,0xb9,0x9a,0xb2,0x3c,0x43,0x98,0x14,0xaa,0x2a,0xb2,0x31,0x16, + 0x8c,0x90,0xe9,0x38,0x88,0x18,0x94,0x26,0x9d,0x9b,0xb1,0x48,0x52,0x88,0x82,0x99,0x2d,0x81,0x11,0x22, + 0x8d,0x9a,0xc8,0x28,0x02,0x90,0x73,0xb7,0xbb,0x01,0x8c,0x42,0x84,0x18,0x88,0xbb,0x13,0x02,0x78,0xb1, + 0xc9,0x80,0xaa,0x22,0x94,0x7a,0x96,0xca,0x19,0xa8,0x20,0x26,0x89,0x18,0xc8,0x29,0x21,0x08,0x02,0xe9, + 0x0b,0x98,0x08,0x25,0x88,0x71,0xc1,0xad,0x01,0x09,0x50,0x83,0x89,0x10,0xbb,0x30,0x06,0x19,0x08,0xeb, + 0x09,0x00,0x19,0x14,0x68,0x92,0xfc,0x09,0x80,0x10,0x24,0x90,0x89,0xa0,0x89,0x53,0x92,0x88,0xb8,0xae, + 0x00,0x82,0x11,0x71,0xa5,0xeb,0x09,0x08,0x10,0x25,0x80,0x0a,0x98,0x99,0x34,0x01,0x99,0xc8,0xdb,0x29, + 0x10,0x92,0x73,0x86,0xeb,0x89,0x00,0x18,0x24,0x92,0x99,0x88,0x99,0x42,0x22,0x9a,0xab,0xeb,0x89,0x32, + 0x00,0x76,0x91,0xcd,0x09,0x00,0x20,0x43,0x91,0x9a,0x09,0x88,0x41,0x03,0xc9,0xaa,0xb9,0x0a,0x52,0x82, + 0x57,0xa0,0xaf,0x09,0x01,0x30,0x33,0xb1,0xaa,0x08,0x89,0x34,0x04,0xab,0x8e,0xaa,0x08,0x51,0x30,0x27, + 0xe8,0x9c,0x88,0x01,0x32,0x24,0xa9,0x98,0x98,0x19,0x53,0x81,0xaa,0xab,0xad,0x18,0x23,0x76,0x81,0xdc, + 0x89,0x08,0x20,0x25,0x81,0x89,0x99,0x9a,0x40,0x22,0xa0,0xa8,0xbd,0x8c,0x11,0x61,0x17,0xb8,0x9d,0x89, + 0x80,0x52,0x12,0x80,0x80,0xba,0x09,0x32,0x10,0x08,0xe9,0xac,0x09,0x80,0x76,0x92,0xda,0x88,0x8a,0x28, + 0x25,0x01,0x10,0xa9,0xab,0x11,0x81,0x32,0x81,0xbe,0x9a,0x9a,0x7a,0x37,0xb9,0x8c,0xb8,0x8a,0x63,0x02, + 0x21,0x01,0xba,0x19,0x89,0x19,0x86,0x98,0x8a,0xba,0x8d,0x73,0xa6,0xa9,0x88,0xbc,0x30,0x23,0x31,0x17, + 0x98,0x00,0x89,0x8c,0x02,0xa0,0x10,0xa0,0x9e,0x88,0x56,0xb9,0x98,0xb9,0x9e,0x11,0x11,0x52,0x23,0x08, + 0x10,0xca,0x08,0xa2,0x29,0x32,0xda,0x98,0x08,0x07,0x9e,0xa8,0xea,0x89,0x81,0x10,0x34,0x02,0x32,0x11, + 0x99,0x13,0xb8,0x38,0x81,0x9e,0x81,0x79,0xb4,0x9b,0xda,0xcc,0x89,0xa8,0x20,0x43,0x11,0x24,0x02,0x10, + 0x11,0x89,0x21,0x98,0x19,0xc1,0x77,0xa8,0x88,0xda,0xac,0x88,0x9b,0x20,0x02,0x41,0x15,0x10,0x22,0x80, + 0x18,0x88,0x90,0x12,0x7c,0x67,0x8c,0x90,0xc9,0x19,0x98,0x19,0x03,0x88,0x33,0x80,0x40,0x82,0x09,0x04, + 0xa9,0x59,0xb8,0x7a,0x07,0x1e,0xa8,0xac,0x22,0xba,0x24,0x91,0x59,0x81,0x19,0x84,0x89,0x31,0xaa,0x29, + 0xb0,0xe0,0x77,0xba,0x81,0xd9,0x19,0xa2,0x49,0x01,0x09,0x04,0x98,0x14,0x98,0x30,0xa9,0x3a,0xd0,0x89, + 0xc2,0x77,0x0c,0x98,0xa9,0x29,0xa8,0x33,0x10,0x58,0x81,0x18,0x93,0x08,0x21,0xac,0x82,0x8d,0x1a,0x4b, + 0x17,0x1e,0xa9,0xbc,0x30,0x0b,0x24,0x83,0x51,0x80,0x29,0x91,0x89,0x93,0xa9,0x49,0x9e,0x08,0x7a,0xb7, + 0x08,0x99,0x9d,0x00,0x08,0x42,0x11,0x30,0xa2,0x88,0x01,0x0d,0x10,0xba,0x00,0xba,0x8c,0x74,0xb6,0x98, + 0xb9,0x8f,0x01,0x10,0x33,0x93,0x21,0xa0,0x0d,0x80,0x8a,0x21,0xc9,0x88,0xd8,0x1b,0x77,0xa8,0xa0,0xa8, + 0x8e,0x01,0x11,0x34,0x09,0x01,0xa8,0x2a,0xa1,0x88,0x22,0xaf,0x90,0xb8,0x7b,0x17,0x8b,0x89,0xdb,0x28, + 0x01,0x40,0x04,0x88,0x01,0xb9,0x10,0x91,0x1a,0xb3,0x9e,0x88,0xba,0x70,0x07,0x9a,0x98,0x9e,0x11,0x01, + 0x51,0x81,0x88,0x00,0x8b,0x21,0xa1,0x49,0xb8,0xbc,0x91,0xbb,0x77,0xa2,0x9a,0xc8,0x8d,0x12,0x01,0x52, + 0x91,0x88,0x81,0x0b,0x12,0xb2,0x48,0xb9,0xbc,0x91,0x8c,0x77,0x98,0x9a,0xc8,0x0b,0x22,0x01,0x44,0x80, + 0x09,0x92,0x09,0x42,0x98,0x10,0xb0,0x8f,0x80,0x1a,0x57,0xb9,0x8b,0xea,0x89,0x22,0x08,0x14,0x91,0x2a, + 0x82,0x10,0x53,0x88,0x01,0xa0,0x1c,0x80,0x79,0x96,0xa9,0xa9,0xcc,0x80,0x80,0x28,0x82,0x98,0x32,0xa8, + 0x02,0x13,0x73,0x11,0x10,0x82,0x09,0x77,0x89,0x88,0xfa,0x00,0x89,0x29,0x88,0x19,0x80,0x88,0x11,0x3a, + 0x4a,0xb0,0x96,0x81,0x59,0x7c,0xc5,0x18,0x88,0x1b,0xa2,0x88,0x01,0x89,0x01,0x98,0x83,0xa0,0x22,0x0a, + 0x50,0xba,0x96,0x80,0x7a,0xf1,0x84,0xb9,0x50,0xb9,0x82,0x91,0x3a,0xa0,0xb2,0x42,0x3f,0x89,0xd2,0x94, + 0x48,0x2c,0xa0,0x80,0xa2,0xc1,0xc4,0x97,0x4c,0x89,0xa1,0x92,0x69,0x0b,0xb1,0x04,0x99,0x82,0xb1,0x7a, + 0x29,0xaa,0xa7,0x80,0x49,0x1b,0x88,0xa1,0x40,0x9a,0x92,0xa0,0x7a,0x99,0xb4,0x83,0x88,0xb0,0xa5,0x78, + 0x2c,0x2a,0xa8,0xb5,0x92,0x39,0x98,0x1b,0xa7,0x4b,0x18,0x1d,0x02,0x8b,0xa6,0xa1,0x30,0x3b,0x1c,0x00, + 0x8a,0x01,0x2a,0xa8,0x41,0x0c,0xd3,0x20,0x89,0x93,0x4f,0x08,0x2b,0xd7,0x01,0x28,0x1d,0xa1,0xa2,0x40, + 0x0d,0x01,0x09,0x08,0x88,0xb4,0xa1,0x83,0x3a,0x1c,0xa1,0x68,0xba,0x85,0xb0,0x72,0x1d,0x80,0xd2,0x11, + 0x19,0x1b,0xc2,0x11,0x08,0x1a,0x80,0x3a,0xe4,0x91,0x11,0xb0,0x81,0x6a,0x5d,0x8a,0x91,0xb2,0x79,0x1a, + 0x09,0xa2,0x10,0x3c,0xd0,0x93,0xc3,0x6b,0xa0,0x38,0xb9,0x01,0x11,0x1b,0x7a,0x2c,0xb1,0xa2,0x68,0xb8, + 0x93,0x8a,0x70,0x8b,0xd3,0xa5,0x29,0x80,0x1a,0xa4,0xa8,0x23,0x2f,0x88,0xb0,0xa6,0x28,0x18,0x8b,0x91, + 0x22,0xab,0x13,0xf8,0x52,0xab,0x20,0x91,0x5b,0xb1,0x5c,0xb0,0x10,0x82,0x0b,0x68,0x9c,0xa7,0xb1,0x31, + 0x0b,0x28,0x88,0x4d,0x59,0xd9,0x82,0x00,0x3a,0xb8,0xa5,0x00,0x4c,0x91,0x1a,0x28,0x9c,0x85,0xb1,0x5b, + 0x80,0x1a,0xc4,0x01,0x28,0x1f,0x80,0x80,0x01,0x1b,0xc0,0x12,0x30,0xf8,0x08,0x94,0x6b,0x1a,0xa9,0x03, + 0xb0,0x68,0x89,0x80,0x91,0x18,0x2e,0x80,0x80,0x01,0x8b,0x93,0x82,0x79,0x2b,0xb8,0x90,0x28,0xaa,0xa2, + 0x07,0x7a,0x10,0x9c,0xd9,0x11,0x61,0xa9,0x00,0xc2,0x01,0x32,0x9d,0x00,0xb8,0x32,0x83,0x2d,0xbb,0x92, + 0x88,0x7a,0x01,0x81,0x81,0x7c,0xa5,0xa9,0x99,0x9c,0x81,0x12,0x33,0x00,0xa2,0xa1,0x38,0x29,0x02,0x90, + 0x0d,0xad,0x98,0x77,0x98,0xac,0xba,0x11,0x50,0x32,0x92,0x92,0x8a,0x0a,0x92,0x14,0x08,0xac,0xea,0x98, + 0x78,0xa7,0xa0,0xa9,0x1c,0x10,0x13,0x06,0x10,0x9a,0xa8,0x80,0x48,0x19,0xc1,0xb1,0x0b,0x3b,0x77,0x89, + 0x9a,0xdb,0x01,0x20,0x42,0x01,0x92,0x98,0x1b,0x8a,0x93,0x83,0x2b,0x9f,0xc9,0x72,0xa5,0x98,0xcb,0x1b, + 0x10,0x24,0x14,0x11,0x99,0xb9,0xa8,0x20,0x38,0x80,0xf1,0x98,0xab,0x77,0x89,0xa0,0xcb,0x08,0x2a,0x24, + 0x23,0x04,0x88,0xa9,0xaa,0x90,0x28,0x01,0x08,0xd8,0x1b,0x77,0x2b,0xbb,0xbc,0xb1,0x79,0x10,0x13,0x94, + 0x11,0x8a,0x99,0xc1,0x11,0x2c,0x88,0xb0,0x71,0xa2,0x19,0xaf,0xa9,0xb9,0x22,0x58,0x33,0x22,0x86,0x18, + 0x89,0x8a,0xd0,0x00,0x1a,0x0a,0x73,0xb2,0x91,0x9f,0xba,0xba,0x91,0x68,0x21,0x33,0x05,0x31,0x1a,0x98, + 0xc8,0x08,0x1e,0x98,0x24,0x29,0xa0,0xcb,0xea,0x9b,0xaa,0x08,0x21,0x35,0x42,0x23,0x12,0x02,0x1a,0xd8, + 0xa0,0xa9,0x53,0x3b,0xc2,0xa8,0xdb,0x8d,0xbb,0x98,0x1a,0x30,0x33,0x27,0x42,0x11,0x01,0x91,0x00,0x9c, + 0x27,0x3a,0xa1,0xb9,0xfb,0xab,0xad,0x99,0x0a,0x10,0x41,0x24,0x34,0x32,0x22,0x02,0x91,0xa9,0x04,0x1e, + 0xb9,0xaa,0xbd,0xbb,0xbc,0xa9,0x09,0x11,0x43,0x25,0x34,0x32,0x23,0x11,0x81,0xa8,0x51,0x9c,0xd1,0x0b, + 0x8a,0xbc,0xcc,0x99,0x99,0x00,0x21,0x43,0x53,0x22,0x23,0x13,0x11,0x98,0x79,0xd2,0x92,0x99,0xcb,0xca, + 0xba,0x8c,0x9a,0x90,0x12,0x34,0x24,0x15,0x33,0x31,0x10,0x91,0xb0,0x27,0x2e,0xa9,0xba,0xbb,0xad,0xbb, + 0x90,0x39,0x50,0x32,0x25,0x33,0x32,0x23,0x82,0x90,0xba,0x7f,0xd0,0x81,0x9a,0xba,0xb9,0xb9,0x2a,0x19, + 0x63,0x15,0x13,0x40,0x88,0x03,0x1e,0x88,0x9a,0xa7,0x28,0x4a,0x9a,0xb2,0x80,0x2d,0xbb,0x93,0x93,0x7b, + 0xd1,0x7d,0xc0,0xa4,0x11,0x2d,0x80,0xc2,0x11,0x98,0x49,0x88,0x1a,0xa8,0x28,0xa0,0x85,0xc8,0x68,0x8a, + 0x90,0x18,0x7f,0xbd,0x97,0x91,0x72,0x2e,0x98,0xe3,0x11,0x2a,0x0a,0xe3,0x02,0x39,0x1c,0xa1,0x91,0x10, + 0x2d,0x6b,0xa8,0x90,0xb7,0x21,0x4d,0x99,0xa2,0x92,0x4a,0x8a,0x08,0x20,0x2c,0xa3,0x49,0xaa,0xf3,0x85, + 0x2c,0xb0,0x93,0x58,0x1b,0x98,0xa4,0x20,0x8b,0xc0,0x42,0x3d,0xb8,0xa5,0x10,0x0a,0xe3,0x83,0x5b,0x1b, + 0xb0,0xa4,0x21,0x1a,0x0a,0x00,0x5a,0x1b,0xf2,0x92,0x10,0x5b,0x89,0xd2,0xb4,0x30,0x3d,0x0a,0xd2,0x93, + 0x28,0x3c,0x0a,0xb1,0xa3,0x21,0x2b,0x19,0xa8,0x30,0x2c,0x8a,0x10,0x1a,0xa6,0x48,0xba,0xb5,0x31,0x3c, + 0x9a,0xf3,0xc3,0x20,0x5b,0x08,0x49,0x2d,0xb8,0xa5,0x00,0x5b,0x8a,0xb2,0xb5,0x01,0x38,0x6c,0x2b,0xd0, + 0xb3,0x01,0x2a,0x1a,0x80,0x82,0x28,0x0a,0x90,0x93,0x4d,0xc9,0xb5,0xb5,0x10,0x88,0x48,0x1d,0xd0,0x94, + 0x28,0x29,0x89,0x90,0xf4,0x93,0x28,0x3d,0x1b,0x18,0x08,0xb2,0xc1,0x03,0x4b,0x3b,0x2b,0xb0,0xa7,0x10, + 0x2c,0xb8,0x33,0x2f,0xb0,0x84,0x29,0x2a,0x3e,0xc8,0xc7,0x82,0x29,0x2a,0x09,0x80,0x98,0xa2,0x42,0x1d, + 0xc1,0xb3,0x82,0x59,0x5d,0x8a,0xd2,0x82,0x80,0x91,0x48,0x2e,0x98,0xb3,0x92,0x91,0x7a,0x3b,0x8a,0xb2, + 0x92,0x81,0x10,0x0a,0xc1,0x03,0x6d,0x1a,0xb0,0xa2,0x90,0xc2,0x93,0xa6,0x69,0x1c,0xb0,0xa5,0x30,0x2b, + 0x8a,0xc2,0xb4,0x93,0x69,0x3d,0x8a,0xc2,0xa3,0x01,0x4a,0x2b,0xa0,0x93,0x80,0xa9,0xa3,0x7a,0x2b,0xa2, + 0x10,0x9a,0xa2,0x5b,0x0a,0x70,0x09,0xd7,0x81,0x1a,0x08,0x29,0xa0,0x94,0x18,0x09,0x18,0x08,0x92,0x28, + 0x09,0x2a,0x2c,0xf1,0x73,0x19,0xf3,0x80,0x8c,0x88,0x18,0x80,0x84,0x10,0x80,0x00,0x18,0x80,0x11,0x08, + 0xd1,0x92,0x8a,0x77,0x4a,0xc8,0xb1,0x0c,0x8a,0x18,0x01,0x03,0x41,0x19,0x90,0x92,0x11,0x38,0x3a,0x99, + 0xf2,0xa1,0x37,0x7a,0x9b,0xe8,0x99,0x98,0x21,0x38,0x02,0x13,0x18,0x08,0x18,0x28,0x20,0x3a,0xe9,0xd2, + 0x69,0xa5,0x23,0x8f,0xda,0x98,0x88,0x21,0x30,0x12,0x12,0x88,0xa0,0x01,0x38,0x20,0xb1,0xe2,0x8a,0x7f, + 0x90,0xb5,0x0a,0x9e,0x98,0x00,0x03,0x42,0x28,0x91,0x80,0x08,0x10,0x10,0xa1,0xa0,0xcb,0xcb,0x74,0x48, + 0xf2,0x99,0x8d,0x88,0x10,0x12,0x14,0x20,0x98,0x90,0x91,0x82,0x48,0x0b,0xe0,0xa0,0x9a,0x27,0x7a,0xba, + 0xb0,0x8c,0x88,0x41,0x30,0x04,0x11,0x09,0x90,0x08,0x90,0x11,0x0c,0xe9,0xa0,0x4c,0xa6,0x22,0x8f,0xc8, + 0x09,0x08,0x22,0x51,0x00,0x92,0x80,0x09,0x1a,0x89,0xa2,0x08,0x8e,0xa9,0x79,0xb4,0x97,0x0b,0xbb,0x80, + 0x39,0x05,0x24,0x28,0xa0,0xa1,0x89,0x09,0x3a,0x9a,0xe4,0x80,0x0c,0x73,0x19,0xf4,0x08,0x0c,0x88,0x20, + 0x11,0x13,0x11,0x99,0xb8,0x0b,0x8a,0x01,0x00,0xb2,0x09,0x9f,0x57,0x6b,0xc9,0xb1,0x1b,0x89,0x42,0x30, + 0x04,0x30,0x8b,0xd0,0xa0,0x09,0x3a,0x0a,0xc4,0x82,0x7b,0xb4,0x22,0x8f,0xc8,0x18,0x09,0x12,0x41,0x81, + 0x94,0x29,0x8d,0xb0,0x81,0x18,0x3a,0x0a,0xd2,0x71,0xa0,0xb5,0x2b,0xbc,0x91,0x38,0x83,0x36,0x28,0xc2, + 0x81,0x0c,0x8b,0xb0,0x92,0x21,0x5b,0xa8,0x37,0x1c,0xf2,0x08,0x0c,0x98,0x21,0x10,0x14,0x30,0x98,0xc1, + 0x89,0x9b,0xa8,0x00,0x00,0x12,0x88,0x77,0x7b,0xba,0xd3,0x19,0x0a,0x11,0x21,0x04,0x31,0x1b,0xf0,0x90, + 0x1a,0x99,0x81,0x28,0x88,0x50,0xb7,0x22,0x0f,0xc8,0x80,0x19,0x11,0x40,0x01,0x03,0x29,0x8d,0xc8,0xa0, + 0x08,0x19,0x91,0x03,0x79,0xc4,0xa6,0x1a,0x9c,0x90,0x00,0x02,0x43,0x20,0x93,0x80,0xab,0xca,0x9a,0x0a, + 0x09,0x32,0x39,0x77,0x39,0xf2,0x88,0x0d,0xa8,0x01,0x11,0x23,0x50,0x80,0x91,0x99,0xab,0xba,0x89,0x00, + 0x51,0x28,0x37,0x7b,0xca,0xd3,0x1a,0x8a,0x20,0x38,0x86,0x13,0x28,0x99,0xd8,0xc0,0x88,0x3b,0x0a,0xa4, + 0x94,0x17,0x5c,0xaa,0xc3,0x88,0x89,0x10,0x18,0x85,0x22,0x39,0x89,0xd0,0xc1,0x19,0x1c,0x98,0xa3,0x12, + 0x26,0x6c,0xb9,0xd3,0x19,0x0b,0x80,0x01,0x04,0x42,0x39,0x98,0xc2,0x98,0x0d,0x9a,0x90,0x81,0x12,0x27, + 0x7a,0xa9,0xd3,0x19,0x8c,0x80,0x10,0x02,0x33,0x40,0x00,0xa0,0xb9,0xac,0xab,0x9a,0x18,0x12,0x77,0x39, + 0xe2,0x92,0x0c,0xa9,0x88,0x08,0x13,0x72,0x20,0x82,0x91,0x98,0x9c,0xab,0xaa,0x89,0x10,0x72,0x84,0x97, + 0x29,0x9c,0xc0,0x09,0x89,0x22,0x60,0x11,0x03,0x11,0x89,0xbb,0xeb,0xc8,0x98,0x28,0x39,0x07,0x41,0x8a, + 0xd2,0x1a,0x9d,0xa0,0x10,0x21,0x33,0x53,0x02,0x93,0x99,0xbc,0xcb,0xab,0xaa,0x28,0x78,0x85,0x97,0x28, + 0x8b,0xc8,0x89,0x9a,0x01,0x51,0x31,0x24,0x12,0x81,0x98,0xad,0xda,0xa9,0x8a,0x88,0x07,0x70,0x09,0xa1, + 0x90,0x9b,0x9a,0x0a,0x81,0x16,0x62,0x20,0x02,0x81,0xa8,0xba,0xad,0x9c,0xa9,0x78,0x18,0x94,0x31,0x0c, + 0xc8,0x98,0xab,0x90,0x48,0x31,0x16,0x33,0x41,0x18,0xb9,0xe8,0xa9,0x8b,0x0c,0xa4,0x62,0x2a,0xc1,0x00, + 0x9b,0x8c,0x8b,0xa0,0x05,0x52,0x31,0x22,0x03,0x82,0x0a,0x9f,0xc9,0xa8,0x7a,0x8a,0xa6,0x01,0x1a,0x89, + 0xaa,0xd1,0x28,0x2d,0x80,0x94,0x84,0x41,0x4b,0x98,0xc3,0x81,0x2a,0x8b,0x87,0x5c,0x99,0xa2,0x88,0x89, + 0x1a,0xc9,0xa5,0x11,0x39,0x29,0x90,0xc6,0x93,0x28,0x4b,0x8a,0xc4,0x82,0xb4,0x79,0x1c,0xb1,0xa1,0x00, + 0x49,0x1d,0xc2,0x21,0x1b,0xa2,0x10,0x19,0x4a,0xc9,0x97,0x6b,0x2a,0x8a,0xb5,0x10,0x90,0x7b,0x8a,0xb2, + 0xb3,0x30,0x2d,0x98,0xa3,0x80,0x02,0x4f,0x99,0xa3,0x00,0x38,0x5f,0x0b,0xe3,0xa3,0x20,0x3c,0x8a,0xd3, + 0x82,0x08,0x08,0x39,0x2d,0xb0,0x84,0x5b,0x8a,0xd3,0xa4,0x38,0x2c,0x98,0xd3,0x02,0x4b,0x1a,0xa0,0xb3, + 0x02,0x2a,0x5b,0x0b,0xc3,0x58,0x3d,0xa9,0xb5,0x82,0x6a,0x0b,0xc2,0xa3,0x20,0x3c,0x3b,0x99,0xd5,0xa3, + 0x10,0x3a,0x2c,0x08,0x89,0xd4,0x93,0x5a,0x2b,0xb8,0xb7,0x11,0x3b,0x2a,0x09,0x88,0xb2,0xa3,0x69,0x2c, + 0x29,0x8a,0x01,0x09,0xb0,0xb7,0x82,0xb0,0xa5,0x30,0x3f,0x99,0xc3,0x82,0x6a,0x0b,0xe3,0xa4,0x38,0x3d, + 0x8a,0xc3,0x82,0x18,0x2a,0x89,0xa2,0x91,0x10,0x5b,0x0a,0x88,0xc3,0x30,0xba,0x05,0x3c,0x89,0xd2,0xc5, + 0xa3,0x48,0x3d,0x8a,0xd4,0xa4,0x38,0x2c,0x89,0xc4,0x82,0x4a,0x2b,0xa8,0xa4,0x38,0x3d,0x89,0xa1,0x92, + 0x80,0x28,0x2b,0x19,0xf2,0xa4,0x38,0x4d,0x0a,0x80,0xb0,0xb7,0x82,0x5a,0x2c,0x98,0x92,0x80,0x00,0x4b, + 0x09,0xb0,0xa5,0x10,0x2a,0x0a,0xf4,0xb3,0x02,0x4b,0xa8,0x11,0x6c,0x0b,0xd3,0x82,0x39,0x2c,0xd0,0xa5, + 0x20,0x3d,0x99,0xb3,0x82,0x6b,0x2b,0xc0,0xa4,0x01,0x4b,0x0a,0xa1,0x92,0x00,0x19,0xc0,0xa5,0x10,0x5b, + 0x0b,0xe4,0xa3,0x20,0x4d,0x0a,0xa1,0x92,0x28,0x3c,0x2b,0xe1,0xa4,0x01,0x5b,0x1b,0xb1,0xb4,0x21,0x3d, + 0x99,0xb3,0x11,0x4d,0x0a,0xb2,0xc3,0x02,0x5c,0x0a,0xc1,0xa4,0x48,0x2c,0x98,0x92,0x18,0x89,0xc3,0x11, + 0x5c,0x1b,0xb1,0xb4,0x21,0x3d,0x1a,0xc0,0xb6,0x01,0x4a,0x0a,0x00,0x2a,0xe1,0xa4,0x10,0x4b,0x8a,0xa2, + 0x92,0x18,0xb8,0x96,0x5a,0x1b,0xd2,0x02,0x5b,0x0b,0xe3,0x83,0x3a,0x1b,0xd2,0xa4,0x28,0x1a,0xa0,0xb3, + 0x81,0x20,0x1d,0x91,0xa1,0xb3,0x81,0x08,0x10,0x3d,0xc8,0xa6,0x48,0x0b,0x92,0x1a,0xd3,0x82,0x39,0x3e, + 0x0a,0x91,0x7a,0x9a,0xc5,0x31,0x1d,0xc1,0xa4,0x48,0x2d,0xb0,0xa4,0x20,0x3c,0x99,0xb3,0x82,0x5b,0x0a, + 0x90,0x92,0x7a,0x1b,0xb1,0xa4,0x69,0x3d,0x89,0xb2,0x11,0x3b,0x99,0xb3,0x41,0x2f,0x09,0x80,0x00,0x3a, + 0xf0,0xa4,0x38,0x2d,0x98,0xa3,0x00,0x18,0x99,0x83,0x6d,0x2b,0xa8,0xb4,0x21,0x4d,0x1b,0xd1,0xa5,0x10, + 0x4b,0x0a,0xc2,0xb3,0x11,0x4b,0x2b,0xa8,0xa4,0x10,0x4b,0x0b,0xd3,0x82,0x80,0x88,0xc3,0x31,0x5f,0x8a, + 0xa1,0xc3,0x82,0x49,0x1b,0xc3,0x01,0x2a,0x2d,0xa8,0xa3,0x01,0x5b,0x0a,0xc2,0xa4,0x20,0x4c,0x1a,0xa0, + 0xa3,0x20,0x3c,0x0b,0xc2,0xb3,0x10,0x2b,0x17,0x3a,0x9a,0x9e,0xc0,0x08,0x01,0x48,0x38,0x3a,0x90,0x11, + 0x09,0x28,0xa2,0x87,0x00,0x3b,0x8d,0xa8,0xa0,0x90,0x09,0x79,0x27,0xc4,0xe8,0x89,0x8a,0x10,0x82,0x33, + 0x1a,0x28,0x08,0x16,0x02,0x11,0x9b,0xa9,0xea,0x81,0x1a,0x3b,0x9d,0x90,0xb8,0x77,0x31,0x9a,0xbf,0xb0, + 0x00,0x32,0x48,0x10,0x99,0x81,0x10,0x24,0x00,0x93,0xbb,0xb0,0xbb,0x22,0x2f,0x3b,0x9e,0xc2,0x11,0x57, + 0x18,0x9a,0xaf,0x99,0x80,0x05,0x20,0x10,0x8a,0x92,0xa2,0x16,0x19,0x00,0xab,0x90,0x9a,0x30,0x1d,0x1a, + 0xfa,0xa2,0x01,0x77,0x08,0x98,0x9d,0x89,0x89,0x13,0x11,0x21,0x99,0x11,0xa2,0x27,0x28,0x3b,0xbb,0xd0, + 0xc3,0x00,0x19,0x1d,0x99,0xa0,0x93,0x77,0x10,0x09,0xdc,0xa8,0x88,0x48,0x18,0x10,0x91,0x02,0x03,0x22, + 0x14,0x09,0xa8,0xdb,0xa0,0x9b,0x0b,0xac,0x09,0x89,0x20,0x71,0x77,0x83,0xc8,0x9c,0x8b,0x0a,0x01,0x81, + 0x13,0x38,0x71,0x21,0x13,0x82,0x00,0x8a,0x9b,0xdb,0xca,0xc9,0x9a,0x89,0x09,0x20,0x70,0x77,0x81,0x90, + 0xcb,0xaa,0x8a,0x80,0x00,0x21,0x33,0x36,0x32,0x12,0x82,0x80,0xa8,0xac,0xac,0xbc,0xba,0xaa,0x89,0x19, + 0x38,0x70,0x77,0x05,0x98,0xbb,0x9a,0x9a,0x90,0x98,0x18,0x43,0x54,0x22,0x12,0x11,0x01,0x80,0xaa,0xcc, + 0xba,0xba,0xbb,0xbc,0x9a,0x18,0x32,0x77,0x37,0x01,0xb9,0xad,0x9a,0x89,0x98,0x99,0x28,0x44,0x24,0x23, + 0x11,0x12,0x21,0x88,0xeb,0xbb,0xbb,0xbb,0xca,0xaa,0x09,0x40,0x43,0x74,0x37,0x01,0xc9,0xcb,0xa9,0x88, + 0x98,0x9a,0x18,0x54,0x33,0x22,0x11,0x22,0x22,0xa1,0xfb,0xab,0xab,0xb9,0xab,0x9d,0x89,0x22,0x43,0x71, + 0x57,0x11,0xa9,0xcb,0xaa,0x99,0x98,0xaa,0x19,0x54,0x43,0x22,0x02,0x12,0x22,0x80,0xdb,0xcb,0xab,0xa9, + 0xaa,0x9c,0x99,0x21,0x42,0x22,0x74,0x57,0x01,0xb9,0xdb,0x99,0x89,0xa8,0x99,0x10,0x44,0x24,0x22,0x11, + 0x21,0x11,0xa0,0xdb,0xcb,0xaa,0x9a,0xba,0xab,0x88,0x42,0x43,0x12,0x74,0x57,0x01,0xaa,0xcb,0xaa,0x89, + 0x99,0x9a,0x18,0x54,0x34,0x22,0x10,0x21,0x22,0x81,0xeb,0xbb,0xab,0x99,0xca,0xbb,0x99,0x41,0x23,0x12, + 0x71,0x67,0x12,0xa8,0xbc,0xab,0x9a,0x99,0xab,0x09,0x73,0x34,0x23,0x12,0x22,0x32,0x01,0xda,0xbc,0xba, + 0x99,0xba,0xac,0x9b,0x20,0x42,0x11,0x18,0x77,0x27,0x80,0xba,0xcb,0x9a,0x99,0xaa,0x8a,0x30,0x46,0x33, + 0x13,0x22,0x33,0x23,0x90,0xdc,0xba,0xaa,0xab,0xdb,0xba,0x09,0x10,0x11,0x81,0x72,0x77,0x13,0xa8,0xdb, + 0xba,0xaa,0x9a,0x89,0x18,0x32,0x36,0x34,0x33,0x33,0x33,0x12,0x80,0xba,0xdc,0xbb,0xbc,0xbc,0xba,0xaa, + 0x98,0x18,0x80,0x77,0x16,0x82,0xa8,0xaa,0xbc,0xaa,0xab,0x98,0x18,0x42,0x53,0x34,0x33,0x34,0x22,0x13, + 0x00,0xa8,0xb9,0xbc,0xae,0xcb,0xca,0xaa,0xaa,0x9a,0xb8,0x77,0x33,0x03,0xa9,0xac,0xac,0xba,0xaa,0x89, + 0x09,0x32,0x63,0x43,0x24,0x33,0x24,0x22,0x21,0x00,0x98,0xbb,0xbd,0xcc,0xcb,0xab,0xac,0xaa,0x9a,0x71, + 0x27,0x00,0x98,0xa9,0xaa,0x9a,0xaa,0x89,0x18,0x41,0x42,0x34,0x34,0x43,0x32,0x23,0x13,0x02,0x90,0xaa, + 0xbe,0xcc,0xcb,0xbb,0xcb,0xba,0xba,0x70,0x01,0x02,0x08,0x08,0x90,0x01,0x11,0x32,0x53,0x23,0x25,0x32, + 0x28,0x02,0x82,0x88,0xbc,0xfa,0xc9,0xaa,0x9c,0xab,0x9b,0xaa,0xa0,0x03,0x53,0x70,0x67,0x01,0x80,0x99, + 0xa9,0xba,0xba,0xaa,0x8a,0x08,0x21,0x25,0x35,0x42,0x32,0x42,0x21,0x20,0xa0,0xb0,0xbc,0xad,0xbc,0xca, + 0xc9,0x99,0x0a,0x1a,0x67,0x29,0x00,0x00,0x88,0x98,0xa0,0x80,0x0a,0x88,0x01,0x21,0x31,0x30,0x32,0x15, + 0xb7,0x12,0xaf,0x31,0xf3,0x10,0x02,0x1a,0xc9,0x2c,0xf8,0xb9,0x81,0x90,0x24,0x29,0x33,0x1a,0x70,0x85, + 0x88,0x04,0xa9,0xba,0x80,0x09,0xb9,0xd9,0x88,0x40,0xcc,0x03,0x91,0x27,0xbb,0x35,0x18,0xc0,0xaa,0x0b, + 0xbe,0x38,0x17,0xa1,0x59,0x01,0xc8,0x50,0x11,0x8a,0xd8,0x08,0xa8,0xab,0x89,0xa0,0x69,0x94,0x0a,0x47, + 0xa5,0x1e,0x35,0xd9,0xbb,0x43,0x13,0xbc,0x8c,0x33,0x13,0xbe,0x28,0x14,0x93,0xbf,0x41,0x02,0xea,0x8a, + 0x73,0xa0,0x0d,0x32,0x92,0xbb,0x8b,0x72,0x81,0x99,0x92,0xa8,0x0a,0x42,0x82,0xb8,0x8c,0x73,0x91,0xcd, + 0x38,0x15,0xa9,0xab,0x60,0x23,0xc9,0x9b,0x11,0x12,0x90,0xab,0x32,0xa3,0xad,0x38,0x27,0xc9,0x0a,0x32, + 0x13,0xfb,0x9c,0x32,0x82,0x29,0xa0,0xbf,0x40,0x24,0xa9,0x8a,0xa0,0x29,0x57,0xb8,0x9c,0x28,0x43,0x91, + 0xae,0x21,0x83,0xb9,0x8c,0x32,0x82,0xbb,0x30,0x42,0x01,0xcd,0x38,0x07,0xba,0x0a,0x21,0x02,0xcc,0x39, + 0x35,0xc0,0x8c,0x13,0x98,0x10,0xab,0x1a,0x55,0xa1,0x9c,0x80,0x51,0x91,0xac,0x38,0x15,0xb8,0x9b,0x30, + 0x83,0x98,0xb5,0x9e,0x73,0x88,0x0b,0x81,0x88,0x02,0x0a,0x42,0xea,0xa0,0x22,0x11,0x0d,0xa1,0x10,0x07, + 0xad,0x12,0x01,0x9c,0x49,0x93,0x9a,0x02,0xa0,0x1b,0x22,0x32,0xcf,0x41,0xc1,0x82,0x0b,0x79,0xb8,0x88, + 0x23,0x0a,0x9b,0x06,0xa3,0x1e,0x39,0xa9,0x02,0xb3,0x89,0x69,0x92,0x8c,0x88,0x89,0x17,0x8a,0x3a,0x04, + 0xcd,0x61,0x89,0x19,0xb1,0x10,0x20,0x8c,0xb2,0x60,0x92,0x8f,0x22,0xb8,0x88,0x19,0x07,0x9c,0x40,0x81, + 0xaa,0x10,0x13,0x8e,0x4a,0xb3,0xba,0x71,0xb3,0x0c,0x40,0x99,0x08,0x92,0x2b,0x13,0x8f,0x23,0xea,0x00, + 0x12,0x0c,0x11,0xc0,0x10,0xb1,0x49,0xb0,0x19,0x32,0xab,0x93,0x7d,0xc0,0x18,0x22,0xab,0x4b,0x91,0xa6, + 0x0a,0x20,0x0a,0x19,0xb1,0x82,0x97,0x1f,0x30,0xc0,0x98,0x63,0xaa,0x1b,0x17,0xba,0x00,0x95,0x0a,0x20, + 0xa0,0x98,0x80,0x61,0x9a,0x80,0x23,0xcb,0x99,0x07,0x88,0x1b,0x32,0xfa,0x20,0x92,0x8b,0x12,0x19,0x0a, + 0xa3,0xdb,0x87,0xa1,0x5b,0x39,0xbb,0x04,0xc3,0x88,0x30,0xb2,0x1d,0x08,0x9a,0x87,0x09,0x39,0xa3,0x9d, + 0x59,0x10,0x90,0x0e,0x14,0xd8,0x00,0x08,0x11,0x8f,0x21,0x91,0x0a,0x92,0x82,0xc9,0x38,0x16,0x0f,0x88, + 0x94,0x8b,0x42,0xb9,0x11,0xb0,0x31,0x1b,0x2b,0x85,0xa9,0x32,0xa9,0x49,0x9f,0x38,0xd1,0x30,0xd2,0x82, + 0x09,0x10,0x8a,0x01,0xb0,0x77,0x9b,0x28,0xb8,0x1a,0x00,0xa0,0x10,0x13,0x89,0x32,0xa2,0x10,0x41,0x0b, + 0xa0,0xb4,0xa8,0x7d,0x77,0xc8,0x89,0xa8,0x9b,0x38,0x11,0x11,0x33,0x03,0x00,0x31,0x08,0x0b,0xa2,0xe2, + 0x9a,0x0a,0x77,0x07,0xbb,0xa9,0xb9,0x9b,0x48,0x23,0x12,0x25,0x02,0x80,0x19,0x88,0xa9,0x88,0x00,0xab, + 0x7b,0x77,0xc0,0x9a,0x99,0xab,0x19,0x23,0x32,0x63,0x23,0x91,0x81,0x80,0xab,0x8b,0x98,0xe9,0x90,0x67, + 0x81,0xac,0xa9,0xda,0x9a,0x31,0x11,0x43,0x25,0x02,0x18,0x91,0xba,0x99,0xa8,0x9c,0x09,0x78,0x17,0xc0, + 0x9b,0xaa,0xad,0x18,0x23,0x32,0x55,0x11,0x08,0x81,0xb9,0x8b,0x99,0xca,0x80,0xa1,0x77,0x01,0xac,0xa8, + 0xd9,0x0a,0x20,0x00,0x34,0x15,0x20,0x20,0xb8,0xb8,0xa0,0x9c,0x0b,0x98,0x89,0x77,0xa2,0x8c,0xa8,0xbd, + 0x08,0x11,0x40,0x25,0x12,0x22,0x80,0x9b,0xca,0xcb,0x99,0x98,0x19,0x70,0x07,0xa8,0x08,0xbc,0x9c,0x01, + 0x10,0x54,0x21,0x21,0x92,0x89,0x9a,0xbd,0xa8,0xa8,0x29,0x38,0x7a,0x27,0xa9,0x09,0xcd,0x8a,0x91,0x20, + 0x44,0x21,0x33,0xa1,0x90,0xba,0x9f,0x99,0x9a,0x01,0x00,0x70,0x07,0x89,0x88,0xad,0x89,0x98,0x41,0x22, + 0x42,0x13,0x80,0x90,0xbc,0xaa,0xcb,0x88,0x08,0x48,0x71,0x87,0x88,0x98,0x9d,0x99,0x98,0x23,0x42,0x51, + 0x02,0x81,0x98,0x8c,0xbb,0xba,0xa1,0x38,0x40,0x50,0x27,0x09,0x88,0xbf,0xa8,0x99,0x22,0x41,0x53,0x02, + 0x03,0x99,0xaa,0xbd,0xaa,0xa9,0x20,0x20,0x15,0x75,0x91,0x80,0xea,0x8a,0x9b,0x18,0x12,0x54,0x22,0x21, + 0x92,0xb9,0xeb,0x9a,0x9b,0x88,0x10,0x53,0x58,0x87,0x28,0x9a,0x8e,0xc9,0x80,0x10,0x68,0x01,0x13,0x81, + 0x10,0x8e,0xa9,0xa9,0x88,0x3a,0x18,0x84,0x45,0x92,0x11,0x9e,0xba,0xbb,0x80,0x59,0x32,0x34,0x05,0x11, + 0x0a,0xab,0xeb,0xa8,0x09,0x19,0x20,0x84,0x75,0x1a,0xb2,0xa9,0xba,0x1e,0xa9,0x84,0x22,0x53,0x20,0x81, + 0x90,0xc9,0x8b,0x8e,0xa8,0x00,0x11,0x31,0x74,0x19,0xe3,0x80,0x8c,0x8b,0xa8,0x84,0x51,0x38,0x12,0xa3, + 0x92,0x0c,0xac,0xaa,0x99,0x80,0x21,0x52,0x78,0xb2,0xa7,0x29,0x8d,0xa9,0xa0,0x82,0x60,0x20,0x12,0x02, + 0x91,0xa8,0xac,0xbb,0xba,0x98,0x12,0x62,0x11,0x27,0x79,0x8b,0xf1,0x88,0x0a,0x08,0x00,0x04,0x33,0x58, + 0x80,0xa1,0xc8,0xb8,0x0b,0x0f,0x90,0x82,0x21,0x70,0x90,0xb6,0x10,0x8d,0xa8,0x90,0x80,0x22,0x60,0x10, + 0x83,0x82,0x0a,0xac,0xd9,0xa8,0x09,0x39,0x38,0x02,0x47,0x39,0xe0,0xb2,0x1c,0xbb,0xa1,0x21,0x21,0x35, + 0x52,0x81,0x92,0x8a,0xbc,0xba,0x8c,0x0a,0x18,0x03,0x87,0x64,0x4b,0xc8,0xb3,0x2b,0x8e,0xa1,0x10,0x20, + 0x13,0x43,0x10,0xb1,0xc1,0x9a,0x8e,0xb9,0x80,0x39,0x28,0x84,0x73,0x80,0xb6,0x28,0x8f,0xc0,0x81,0x19, + 0x10,0x12,0x13,0x32,0x18,0xb9,0xf8,0xa9,0x8b,0x9b,0xa1,0x13,0x41,0x03,0x47,0x7a,0x9a,0xd2,0x19,0x8c, + 0xa1,0x21,0x38,0x13,0x52,0x08,0xb1,0xa0,0x9c,0xbb,0x99,0x3b,0x89,0x87,0x32,0x19,0x27,0x7b,0xaa,0xd4, + 0x29,0x8c,0xa1,0x21,0x38,0x11,0x03,0x93,0x18,0x9c,0xe9,0xa8,0x09,0x1b,0x90,0x86,0x20,0x00,0x65,0x1b, + 0xd5,0x28,0x8d,0xb1,0x10,0x2a,0x01,0x22,0x21,0x20,0xa0,0xb0,0x0d,0xac,0xb8,0x08,0x3a,0x00,0x96,0x33, + 0x7b,0xa7,0x30,0x8e,0xd2,0x08,0x99,0x82,0x38,0x10,0x13,0x02,0x10,0xaa,0xf0,0x89,0x8b,0x99,0x80,0x02, + 0x22,0x32,0x41,0x79,0xc7,0x13,0x0f,0xd0,0x10,0x0a,0x91,0x02,0x21,0x30,0xa1,0x82,0x0c,0xc9,0x99,0x9a, + 0x80,0x39,0x01,0x52,0x18,0x83,0x01,0x77,0x2b,0xf3,0x2a,0x8f,0x91,0x28,0x08,0x12,0x11,0x21,0x89,0xa0, + 0x8d,0xc9,0x08,0x0a,0x01,0x11,0x22,0x01,0x84,0x3b,0xf0,0x37,0x1f,0xe2,0x28,0xab,0x93,0x29,0x01,0x22, + 0x12,0x20,0xd0,0x08,0x9d,0xa0,0x0a,0x91,0x20,0x82,0x60,0x88,0x02,0x0b,0xc2,0x71,0xf3,0x84,0x0f,0xb0, + 0x20,0x0a,0x12,0x11,0x21,0x90,0x10,0x8d,0xa0,0x1b,0xb8,0x10,0x88,0x22,0x80,0x32,0x0b,0x83,0x0c,0xe4, + 0x77,0x9a,0xb5,0x1d,0xc0,0x20,0x09,0x22,0x00,0x21,0xa8,0x10,0xad,0x92,0x0c,0xa2,0x39,0xa0,0x30,0xa0, + 0x28,0x91,0x6a,0xc2,0x40,0x99,0x77,0x0c,0xd2,0x1a,0xb8,0x31,0x88,0x24,0x00,0x20,0xc9,0x10,0xbb,0x84, + 0x0b,0xa3,0x2a,0xa8,0x88,0x11,0x09,0x07,0x19,0xb3,0x39,0x98,0x77,0x0a,0xd7,0x1c,0xc0,0x30,0x90,0x23, + 0x00,0x08,0xa0,0x1c,0xb1,0x5a,0xb1,0x38,0xc8,0x18,0xa8,0x38,0xa1,0x40,0xc1,0x48,0xb8,0x30,0x71,0xa7, + 0x39,0xfd,0x10,0x9a,0x23,0x08,0x13,0x89,0x80,0x9a,0x20,0x80,0x48,0xd8,0x29,0xca,0x20,0x99,0x41,0xa0, + 0x89,0x10,0x09,0x27,0x1a,0x03,0x77,0xca,0xa3,0xaf,0x82,0x2a,0x05,0x19,0x82,0x0a,0x90,0x80,0x21,0xa8, + 0x31,0xfb,0x18,0xba,0x41,0xa8,0x22,0xb8,0x11,0xa8,0x20,0x83,0x3a,0x33,0x77,0xf2,0x81,0xdf,0x12,0x0b, + 0x15,0x0a,0x02,0x0b,0x91,0x28,0x80,0x82,0x8b,0xb2,0x0e,0xa3,0x3b,0xa4,0x3b,0xc2,0x3a,0xa1,0x20,0x80, + 0x91,0x09,0x77,0xb7,0x3a,0xfb,0x3a,0xb1,0x70,0x90,0x28,0xb0,0x29,0x81,0x18,0x02,0xba,0x20,0xeb,0x31, + 0xb8,0x40,0xc0,0x19,0x90,0x19,0x03,0x89,0x23,0xdb,0x31,0x77,0xe3,0x19,0xf9,0x29,0x91,0x48,0xa2,0x29, + 0xa0,0x1a,0x02,0x28,0x01,0xb0,0x0c,0xb1,0x1c,0x86,0x0b,0x94,0x9b,0x03,0x8b,0x33,0x9a,0x21,0xa8,0x19, + 0x73,0x77,0xba,0x92,0xbf,0x22,0x9a,0x26,0x99,0x20,0xb9,0x30,0x81,0x20,0x01,0xcb,0x28,0xda,0x58,0xb0, + 0x38,0xc0,0x2a,0xb2,0x3a,0x93,0x19,0x82,0x89,0x28,0x71,0x77,0xba,0x82,0xcf,0x21,0x99,0x53,0xa8,0x20, + 0xb9,0x30,0x91,0x22,0x80,0x98,0x0d,0xb1,0x2c,0x94,0x1c,0x93,0x0f,0x82,0x0b,0x13,0x8b,0x04,0x8a,0x02, + 0x7a,0x27,0xac,0x82,0xaf,0x21,0xa9,0x53,0xa8,0x30,0xc8,0x38,0x90,0x20,0x81,0x98,0x09,0xb8,0x2b,0x95, + 0x1d,0x93,0x8e,0x03,0x8c,0x13,0x9b,0x24,0xaa,0x22,0x09,0x77,0xd0,0x10,0xfb,0x28,0xa0,0x40,0xa2,0x29, + 0xa2,0x2b,0x82,0x89,0x23,0xb8,0x29,0xd1,0x1d,0x93,0x0d,0x03,0x9c,0x13,0x9c,0x22,0xa9,0x32,0x99,0x10, + 0x02,0x77,0xc4,0x1a,0xf9,0x2a,0xa1,0x49,0x93,0x29,0xa3,0x1b,0x83,0x19,0x12,0x80,0x9b,0xa1,0xaf,0x03, + 0x9c,0x14,0x9d,0x02,0x9b,0x23,0x8a,0x24,0x09,0x01,0x18,0x75,0x87,0x1d,0xd1,0x0c,0x92,0x2a,0x85,0x09, + 0x83,0x8a,0x02,0x88,0x11,0x00,0x9b,0x83,0xaf,0x03,0x9c,0x13,0xbb,0x24,0xab,0x32,0x89,0x30,0x81,0x19, + 0x84,0x71,0x27,0x1f,0xf1,0x1b,0xa2,0x4a,0x82,0x29,0xa3,0x19,0x81,0x00,0x08,0xa3,0x1d,0xd3,0x1c,0xa2, + 0x3c,0xb2,0x4b,0xc1,0x39,0xa0,0x40,0xa0,0x22,0x89,0x82,0x77,0xd1,0x38,0xfb,0x28,0xb9,0x41,0xb0,0x42, + 0x98,0x20,0x89,0x00,0x19,0xa8,0x40,0xd9,0x30,0xca,0x31,0xda,0x31,0xaa,0x22,0x9a,0x13,0x0a,0x92,0x30, + 0x8a,0x77,0xd1,0x06,0x9f,0x82,0x8b,0x03,0x0b,0x06,0x09,0x02,0x1a,0x81,0x09,0x88,0x81,0x0b,0xa3,0x0e, + 0xa3,0x1d,0xb3,0x3b,0xc3,0x4a,0xb2,0x38,0xb1,0x30,0x72,0x97,0x49,0xf8,0x2a,0xe8,0x38,0xa8,0x50,0x98, + 0x31,0x98,0x11,0x98,0x18,0x89,0x89,0x80,0x8b,0x83,0x8d,0x03,0x0e,0x02,0x0c,0x93,0x0a,0x94,0x2a,0x21, + 0x57,0x1b,0xa6,0x0d,0xc2,0x1b,0xc2,0x3a,0xa2,0x58,0x91,0x30,0x91,0x20,0x98,0x00,0x89,0xa9,0x18,0xdb, + 0x12,0xac,0x13,0x8e,0x02,0x8c,0x03,0x0c,0x93,0x46,0x89,0x04,0x9d,0xa2,0x8e,0x91,0x1b,0x82,0x29,0x85, + 0x48,0x81,0x21,0x90,0x08,0xa9,0x99,0xa9,0x1b,0x98,0x29,0x93,0x58,0x92,0x39,0xd1,0x19,0xe8,0x67,0x99, + 0x13,0x9c,0x90,0x9e,0x98,0x0c,0x80,0x18,0x13,0x42,0x14,0x31,0x02,0x08,0xa0,0xaa,0xca,0x9c,0x99,0x89, + 0x81,0x11,0x12,0x30,0x81,0x18,0xdb,0x73,0x97,0x15,0xab,0x98,0xaf,0xa8,0xab,0x80,0x19,0x42,0x32,0x26, + 0x11,0x25,0x00,0x14,0x08,0x20,0xcc,0x08,0xce,0xa8,0xaa,0x98,0x80,0x49,0x01,0x41,0x42,0x13,0x07,0x21, + 0xb1,0xeb,0x54,0x9d,0xa3,0x89,0xa2,0x4d,0x99,0xd3,0x93,0x18,0x4c,0x09,0xa2,0xb3,0x32,0x2a,0x91,0xbb, + 0x7e,0xaa,0xc7,0x93,0x5b,0x09,0x0b,0xb7,0x20,0x09,0x1c,0x11,0x80,0xc7,0x02,0x2c,0x2a,0x99,0x81,0xa0, + 0x11,0x9d,0x97,0x39,0x19,0x82,0x90,0xe0,0x51,0x2e,0x99,0xc2,0x02,0x00,0x08,0xa8,0x49,0x08,0xa6,0x2a, + 0x9a,0x03,0x49,0x4e,0xb8,0xb3,0x20,0xa0,0xa4,0x6a,0x2e,0x88,0xa2,0x18,0x90,0x59,0x2a,0x0a,0xe1,0x11, + 0x90,0xb2,0xa3,0x88,0x58,0x3a,0x4e,0x1c,0x00,0x88,0xb3,0xd0,0x83,0x80,0x00,0x88,0x00,0x88,0x80,0x00, + 0x08,0x88,0x80,0x00,0x08,0x88,0x80,0x00,0x08,0x88,0x00,0x88,0x00,0x88,0x80,0x80,0x80,0x80,0x00,0x08, + 0x08,0x08,0x08,0x08,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip notificationClearedClip = { + notificationClearedData, sizeof(notificationClearedData), 10984, 8000 +}; +// "Advert queued" +static const uint8_t advertQueuedData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0x7f,0x77,0xe7,0xa1,0x91,0x68,0xa2,0x90,0xa8,0x0d,0x81,0x21,0x00,0x0a,0xb9,0xc3,0x74,0xb7,0x99,0xb8, + 0x4b,0x83,0x03,0x84,0x0d,0x88,0x90,0x04,0x08,0x19,0x8c,0x09,0xa1,0x04,0x18,0x0a,0xc8,0xa2,0x77,0x0b, + 0x0a,0xbd,0x04,0x11,0x50,0x99,0x88,0xa0,0x48,0x18,0x80,0xc1,0x09,0x1b,0x19,0x94,0x11,0x1a,0x0d,0x78, + 0xc7,0x80,0xa8,0x3c,0x81,0x01,0x85,0x1a,0x19,0xab,0x86,0x80,0x48,0x0c,0x98,0xa1,0x21,0x2a,0x19,0xc1, + 0x00,0x67,0x0d,0x88,0xc9,0x03,0x18,0x40,0xa8,0x81,0xb0,0x59,0x09,0x10,0xc2,0x08,0x89,0x2c,0xa1,0x01, + 0x83,0x2d,0x7a,0xa7,0x89,0x98,0x0e,0x92,0x81,0x24,0x2b,0x08,0xb9,0x84,0x19,0x48,0xa9,0x81,0xaa,0x4a, + 0xaa,0x83,0xb4,0x58,0x79,0xc5,0x90,0xb8,0x1c,0x80,0x21,0x86,0x20,0x80,0x0b,0xa0,0x98,0x03,0x3c,0x88, + 0x9b,0xb1,0x0c,0x12,0x1a,0x06,0x79,0xa7,0x90,0xe8,0x1a,0x88,0x38,0x95,0x31,0x00,0x2b,0xd0,0x80,0xa1, + 0x39,0x98,0x1a,0xe2,0x08,0xa1,0x5a,0x08,0x79,0xa7,0x80,0xc8,0x2b,0x9a,0x10,0xa5,0x33,0x11,0x6a,0xb8, + 0x81,0xb0,0x3a,0x9b,0x80,0xe4,0x11,0x09,0x4a,0xb8,0x43,0x97,0x28,0xaa,0x0f,0xc8,0x81,0x91,0x51,0x10, + 0x20,0xa1,0x01,0xa9,0x2b,0xbc,0x80,0xc8,0x31,0x0b,0x31,0xd0,0x05,0x17,0x4a,0x8a,0xac,0xe0,0x88,0x18, + 0x49,0x11,0x22,0x03,0x30,0x99,0x0b,0xfb,0x88,0xa9,0x39,0xaa,0x93,0xd3,0x50,0x7b,0x81,0xa3,0xd1,0x0a, + 0x8e,0x89,0xb1,0x04,0x22,0x61,0x18,0x01,0xa0,0x91,0x9b,0x0b,0xac,0x91,0x90,0x51,0x2a,0x81,0x27,0x00, + 0x00,0xcc,0xc9,0xac,0x9a,0x8a,0x23,0x43,0x36,0x22,0x33,0x80,0x90,0xcb,0x9b,0xae,0x89,0xa9,0x12,0x28, + 0x33,0x57,0x21,0x11,0xc9,0xca,0xbd,0xbb,0xbb,0x89,0x20,0x73,0x24,0x34,0x22,0x22,0x81,0x99,0xdb,0xbb, + 0xcb,0xab,0x99,0x08,0x74,0x31,0x03,0x03,0x30,0xcf,0xbb,0xbc,0xaa,0x89,0x21,0x34,0x45,0x33,0x42,0x02, + 0x01,0xa8,0xbb,0xcc,0xbb,0xbb,0xaa,0x40,0x43,0x35,0x13,0x00,0xda,0xbc,0xcc,0xab,0x9a,0x08,0x33,0x55, + 0x33,0x34,0x22,0x12,0x90,0xb9,0xcc,0xcb,0xab,0xab,0x8a,0x33,0x45,0x43,0x11,0x90,0xdb,0xdb,0xcb,0xaa, + 0x9a,0x18,0x42,0x44,0x43,0x33,0x23,0x22,0x80,0xaa,0xcc,0xbc,0xbb,0xbb,0x0b,0x24,0x44,0x33,0x12,0x91, + 0xda,0xbc,0xbd,0xac,0xaa,0x8a,0x10,0x42,0x44,0x43,0x32,0x33,0x13,0x02,0x90,0xba,0xeb,0xca,0x39,0x82, + 0x11,0xb8,0xbe,0xcc,0xbc,0xbb,0x9c,0x99,0x00,0x43,0x34,0x44,0x23,0x23,0x22,0x10,0x80,0xa9,0xc9,0xaa, + 0xab,0xeb,0x77,0x92,0x00,0xba,0xdb,0xbb,0xbb,0x0a,0x00,0x23,0x53,0x23,0x52,0x21,0x12,0x83,0x05,0x38, + 0x3a,0xa9,0xd2,0x80,0x1d,0xe9,0x77,0xd3,0x88,0xb9,0x9a,0x88,0x88,0x01,0x02,0x03,0x33,0x40,0x11,0x03, + 0x93,0x85,0x28,0x3a,0x1c,0x98,0xa9,0xd0,0x80,0x8e,0x77,0xa1,0x91,0xdb,0x9a,0xb9,0x09,0x18,0x11,0x52, + 0x30,0x31,0x02,0x95,0x03,0x10,0x18,0x88,0x91,0x99,0xa9,0xab,0x9e,0xf0,0x77,0x19,0x88,0xc9,0x8a,0xbb, + 0x99,0x80,0x28,0x51,0x30,0x23,0x43,0x30,0x12,0x92,0x93,0x98,0x9a,0xda,0x99,0x9b,0xaa,0x7f,0x27,0x3a, + 0x89,0xcd,0xa0,0xaa,0x89,0xa8,0x12,0x13,0x38,0x36,0x31,0x12,0x12,0x91,0x82,0x98,0x09,0x8c,0xb9,0xb8, + 0xba,0x71,0x67,0x03,0xe9,0x8d,0xa9,0x9a,0x80,0x98,0x04,0x40,0x48,0x10,0x11,0x11,0x01,0x01,0x18,0x08, + 0x3b,0x8c,0xc0,0xc2,0x7a,0x77,0x1b,0x80,0xdb,0x80,0x9b,0x08,0xa0,0x12,0x11,0x40,0x11,0x31,0x30,0x00, + 0xa4,0x93,0x10,0x8a,0x90,0x2a,0x1f,0xf9,0x77,0x09,0x00,0xea,0x80,0xa9,0x19,0x98,0x18,0x82,0x30,0x30, + 0x01,0x05,0x00,0x93,0x94,0x20,0x1a,0xa0,0xc3,0x92,0x7e,0x07,0x2c,0x90,0xcb,0x92,0x0b,0x19,0x99,0x12, + 0x19,0x11,0xa3,0x62,0x3a,0x29,0x10,0x38,0xb8,0xb7,0x83,0x3a,0x49,0x47,0x4e,0x09,0x8d,0x80,0x89,0x00, + 0x98,0x11,0x2a,0x90,0xb4,0x83,0x28,0x59,0x1e,0xa2,0xb3,0x32,0x3f,0x2a,0x29,0x97,0x5b,0x89,0x0d,0x81, + 0x09,0x29,0xa8,0x92,0x92,0x7b,0x1a,0xa0,0xa5,0x00,0x38,0x2c,0x19,0xb1,0x93,0xb1,0x77,0x1f,0x91,0xa8, + 0x12,0x0a,0x4a,0x99,0x91,0xa3,0x80,0x81,0x80,0x7c,0x2a,0x1a,0xb1,0xa4,0x11,0x89,0x22,0xe7,0x6c,0x09, + 0x0a,0xa4,0x88,0x28,0xa9,0x83,0xa1,0x49,0x99,0x92,0x12,0x4c,0x1a,0xf3,0xa4,0x01,0x2a,0x78,0xdb,0x83, + 0xb0,0x40,0xa9,0x88,0x22,0x1d,0x01,0xb0,0x21,0x81,0x18,0x11,0x8b,0xb5,0xb4,0x80,0xd1,0x74,0xf9,0x00, + 0xb0,0x10,0x81,0x0a,0x48,0x19,0x28,0x81,0x20,0x49,0x0a,0xc1,0xb3,0x00,0x2c,0x9a,0xf1,0x77,0xb9,0x88, + 0xa0,0x0a,0x28,0x00,0x10,0x22,0x20,0x28,0x24,0x98,0x18,0xb0,0xcb,0x88,0x1e,0x0b,0x7b,0x77,0xba,0x19, + 0xc9,0x89,0x12,0x11,0x20,0x23,0x81,0x10,0x13,0xaa,0x0b,0xc9,0xcc,0x89,0x89,0xab,0x77,0xb7,0x8b,0x91, + 0xab,0x30,0x33,0x01,0x43,0x13,0xaa,0x21,0xb8,0x9d,0x80,0xca,0x8a,0x88,0xb8,0x77,0x97,0x8d,0x81,0xaa, + 0x20,0x12,0x01,0x31,0x03,0xab,0x11,0xd9,0x9b,0x00,0xa8,0x0a,0x33,0x9a,0x77,0xb7,0x0d,0x91,0xaa,0x22, + 0x12,0x10,0x42,0x91,0x9b,0x11,0xcc,0x19,0x81,0xaa,0x20,0x92,0x4c,0x77,0xc9,0x2a,0xa0,0x8c,0x23,0x01, + 0x20,0x33,0xd8,0x1a,0xa1,0xac,0x20,0xa0,0x89,0x22,0xb1,0x74,0x87,0x9e,0x01,0xba,0x20,0x13,0x10,0x32, + 0x93,0xad,0x11,0xdb,0x19,0x92,0x89,0x21,0x81,0x7a,0x17,0xbd,0x38,0xd9,0x29,0x13,0x18,0x21,0x03,0xac, + 0x18,0xd9,0x0a,0x83,0x99,0x21,0x81,0x3a,0x77,0xf8,0x19,0xa1,0x0c,0x23,0x08,0x21,0x02,0xb9,0x1a,0xb0, + 0x8f,0x21,0xa9,0x20,0x82,0x3a,0x77,0xd9,0x19,0xa0,0x0c,0x33,0x88,0x32,0x01,0xb9,0x0a,0xb0,0x9f,0x22, + 0xa9,0x40,0x91,0x3a,0x67,0xda,0x19,0xb1,0x0b,0x15,0x80,0x21,0x82,0xa9,0x09,0xb0,0x9d,0x23,0xba,0x50, + 0x91,0x69,0x87,0xcb,0x20,0xd9,0x28,0x12,0x19,0x22,0x91,0xaa,0x00,0xda,0x2b,0x03,0x9c,0x43,0xb8,0x72, + 0xa6,0x9d,0x02,0xbb,0x41,0x82,0x28,0x13,0xa8,0x89,0x98,0xcc,0x38,0xa1,0x3b,0x05,0x1a,0x67,0xda,0x18, + 0xb0,0x1b,0x15,0x89,0x23,0x91,0x89,0x98,0xb8,0x0a,0x01,0xab,0x53,0xb8,0x73,0x97,0x8e,0x02,0xac,0x41, + 0x90,0x20,0x83,0x89,0x88,0xa8,0xaa,0x30,0xb8,0x58,0xa3,0x3c,0x57,0xeb,0x28,0xc0,0x2a,0x13,0x0a,0x24, + 0x98,0x88,0x90,0xba,0x18,0x91,0x0b,0x16,0xc9,0x73,0xb4,0x8e,0x02,0xac,0x32,0xa0,0x41,0x82,0x0a,0x80, + 0xaa,0x0a,0x01,0xaa,0x63,0xc0,0x58,0x07,0x9d,0x01,0xbb,0x42,0x80,0x48,0x82,0x99,0x00,0xb9,0x8a,0x02, + 0xaa,0x44,0xb8,0x79,0x87,0xbb,0x21,0xeb,0x38,0x93,0x39,0x05,0x99,0x10,0xaa,0x0a,0x00,0x9a,0x42,0xa8, + 0x69,0x17,0xcb,0x28,0xe9,0x29,0x83,0x19,0x15,0x89,0x01,0xa9,0x9a,0x80,0xa9,0x42,0xa8,0x48,0x46,0xd8, + 0x2b,0xd0,0x1c,0x03,0x19,0x15,0x88,0x01,0xa9,0x99,0x99,0x98,0x30,0xa1,0x48,0x75,0xb2,0x8e,0x91,0x8e, + 0x12,0x09,0x43,0x88,0x01,0x99,0x99,0x8a,0xb8,0x48,0x91,0x59,0x31,0x07,0xae,0x82,0xad,0x22,0x99,0x35, + 0x88,0x11,0x99,0x98,0x8b,0xb0,0x3a,0xa4,0x6b,0x81,0x36,0xdc,0x11,0xcc,0x21,0xa8,0x43,0x80,0x12,0x98, + 0xa0,0x0b,0xd8,0x29,0xb1,0x49,0xb2,0x76,0xc8,0x28,0xe9,0x18,0x90,0x30,0x82,0x21,0x00,0xb0,0x0a,0xf0, + 0x2a,0xa0,0x3a,0xa2,0x79,0x97,0x0b,0xa2,0x8e,0x11,0x8a,0x24,0x80,0x22,0xa0,0x0a,0xb1,0x8f,0x01,0x9b, + 0x13,0x8b,0x67,0xb9,0x30,0xfb,0x28,0x98,0x48,0x81,0x20,0x01,0x99,0x01,0xdb,0x10,0xd9,0x20,0xa8,0x40, + 0x07,0x9b,0x03,0xaf,0x12,0x9b,0x33,0x98,0x34,0xa0,0x38,0xc0,0x0c,0xa1,0x0d,0x82,0x8a,0x24,0x04,0x0b, + 0xb3,0xbf,0x92,0x0e,0x03,0x29,0x14,0x00,0x11,0xa8,0x0a,0xd9,0x0a,0xb1,0x2a,0x13,0x37,0x0c,0xb3,0xaf, + 0xa1,0x0c,0x82,0x38,0x25,0x11,0x23,0x98,0x08,0xeb,0x8a,0xc9,0x19,0x98,0x27,0x8a,0x04,0x8e,0x91,0x8c, + 0x01,0x09,0x23,0x11,0x24,0x81,0x11,0xc9,0x09,0xdb,0x09,0xc8,0x62,0xa9,0x23,0xbc,0x02,0x9e,0x81,0x8a, + 0x22,0x18,0x34,0x11,0x42,0x88,0x00,0xc9,0x88,0xab,0x79,0xc8,0x22,0xca,0x20,0xcc,0x00,0xba,0x20,0x98, + 0x53,0x11,0x53,0x01,0x31,0x90,0x89,0xc0,0x09,0xc1,0x3b,0xe1,0x0a,0xd8,0x8b,0xc8,0x0a,0x91,0x38,0x24, + 0x52,0x14,0x21,0x13,0x00,0x80,0xca,0x71,0x99,0x83,0xcb,0xaa,0xbf,0xb9,0xba,0x89,0x18,0x52,0x43,0x34, + 0x43,0x22,0x02,0x01,0x99,0xab,0x93,0x8f,0xc8,0xba,0xba,0x9e,0xaa,0x89,0x08,0x21,0x43,0x44,0x32,0x33, + 0x23,0x13,0x81,0xa9,0xda,0x87,0x1c,0xa9,0xab,0xf8,0x0c,0xa8,0x38,0x8a,0x92,0x00,0x14,0x52,0x68,0x00, + 0x83,0x48,0x88,0x83,0xc1,0x08,0xbe,0xc8,0x91,0x4c,0x2a,0x8e,0xc3,0x29,0x88,0x28,0xa8,0x37,0x8a,0x34, + 0x10,0x48,0xa2,0x8c,0xc5,0x0a,0xaa,0xb0,0x44,0x0f,0xb0,0x04,0x88,0x41,0x9a,0x33,0xaf,0x92,0xe2,0x22, + 0xc8,0x85,0x8a,0x7a,0xa8,0x21,0x99,0x38,0x3d,0xb8,0x13,0xf3,0x5a,0xd0,0x22,0x9c,0xa2,0x81,0x82,0x28, + 0x5d,0x99,0x92,0x68,0x8a,0xa2,0xd2,0x11,0x8b,0x91,0xa1,0x21,0x3c,0xb7,0x49,0x99,0x18,0xb1,0x02,0x29, + 0x1a,0xa1,0xc3,0x02,0x3b,0x2b,0x1a,0x3b,0x0b,0x09,0xe1,0x92,0xb3,0x21,0x79,0xfa,0x87,0x8b,0x11,0x8b, + 0xa4,0x01,0x39,0x19,0x00,0xa3,0x58,0x1a,0x0a,0xb1,0x08,0x1a,0xab,0xd6,0x01,0x2a,0x97,0x5e,0x89,0x1a, + 0xa1,0x08,0x00,0x29,0x10,0x18,0x11,0x18,0xa3,0x81,0x80,0x0b,0xaa,0xb9,0x2c,0x1e,0xb9,0x74,0xd0,0x02, + 0x9a,0x08,0xa9,0x81,0x81,0x11,0x31,0x50,0x81,0x83,0x93,0x11,0x1b,0x8c,0xc9,0xa9,0x89,0x0a,0x2e,0x37, + 0x2e,0x99,0xa8,0x99,0x89,0x99,0x14,0x38,0x39,0x53,0x11,0x23,0x02,0x02,0x0a,0xab,0xba,0xaf,0xb9,0xe1, + 0x73,0xc2,0xa1,0x98,0xd9,0x89,0x1a,0x09,0xf8,0x07,0x28,0x39,0xa8,0x82,0x04,0x8b,0x61,0x9c,0x02,0xb1, + 0xa8,0x09,0x93,0x29,0x91,0x8f,0x84,0x99,0x00,0x0a,0xc7,0x29,0x00,0x7b,0x90,0x92,0x13,0x1c,0x89,0xd2, + 0x91,0x0d,0x11,0xd1,0x02,0x82,0x28,0xaa,0xb9,0x85,0xf8,0x48,0x2c,0x99,0x03,0x01,0x40,0x10,0x50,0xab, + 0x89,0xe1,0x00,0xb8,0xa5,0xb8,0x7b,0xa1,0x18,0x1b,0x01,0xa2,0x02,0x40,0x84,0x23,0x09,0x8f,0xd3,0x91, + 0x2a,0xb2,0xc1,0x4b,0x3c,0xa9,0x01,0xb2,0x8e,0x10,0x72,0xa9,0x11,0xb3,0xa5,0x40,0x9b,0x00,0x89,0x08, + 0x83,0x5e,0x8b,0xb2,0xa2,0x12,0x1e,0x31,0xa0,0xa2,0x22,0xd9,0x08,0x80,0x89,0x91,0x91,0x91,0x09,0xb9, + 0x93,0x3b,0xb1,0x32,0x99,0x00,0x41,0xa1,0x30,0x31,0xfb,0x80,0x09,0xb0,0x13,0x09,0x00,0x39,0xd1,0x32, + 0x9b,0x10,0xbc,0x1c,0xa5,0x04,0x20,0x2a,0x23,0xf9,0x90,0x1b,0xb0,0x11,0x0b,0x1a,0x11,0xc4,0x51,0x1b, + 0x70,0xc8,0x40,0xb8,0x95,0x0b,0xb9,0x18,0x0c,0x07,0x1e,0x32,0x9d,0x05,0xb1,0x90,0x18,0xa3,0x4a,0xa8, + 0x0f,0xa4,0x88,0x90,0x40,0x19,0x92,0x29,0x7f,0xcf,0x97,0x4a,0x3a,0xb1,0xc2,0xc3,0x79,0x4b,0x9b,0xc5, + 0x02,0x18,0x0a,0xb0,0x31,0x3a,0xe3,0x3a,0x3c,0x5b,0xf2,0xd3,0x04,0x3c,0x1c,0x92,0x08,0x98,0xf3,0x02, + 0x39,0x0d,0x81,0xc1,0x84,0x88,0x19,0x2a,0x91,0x01,0x3c,0x3d,0x09,0xe3,0xb4,0x11,0x2c,0x1a,0x18,0x4b, + 0x7b,0xa9,0xc4,0x02,0x5b,0x0a,0xc2,0x92,0x28,0x3b,0x3b,0x2b,0xd0,0xc7,0xa3,0x38,0x3c,0x1a,0xa0,0x93, + 0x08,0xa0,0xc1,0x68,0x3b,0xb8,0xa6,0x81,0x88,0xc2,0x81,0x48,0x2c,0x09,0xe2,0x93,0x10,0x3c,0x2b,0x29, + 0x09,0x90,0xe0,0x94,0x10,0x3a,0x3d,0x1a,0xc1,0xc5,0x92,0x10,0x89,0xb2,0xc4,0x82,0x2a,0x6b,0x2b,0x89, + 0xb3,0xb5,0xb5,0x92,0x08,0x3a,0x6c,0x2b,0x0a,0x80,0x90,0xd4,0xb4,0xa3,0x01,0x1a,0xa1,0x91,0x69,0x3e, + 0x4b,0x1a,0xc1,0xb5,0x81,0x39,0x3c,0x4b,0x1b,0xa0,0xb3,0xa4,0xa2,0xa2,0x18,0x19,0x21,0x3f,0x4e,0x2b, + 0x98,0xd4,0xb3,0xa3,0x91,0xb2,0x50,0x6b,0xc9,0x01,0x80,0x28,0x4b,0x3c,0x89,0xa1,0x93,0x5b,0x2b,0x89, + 0x82,0x4b,0x19,0xa8,0x83,0x18,0x5e,0x0b,0x80,0x91,0x48,0x4c,0x5d,0x3b,0x0a,0xd2,0xb4,0xa2,0x91,0x10, + 0x6b,0x5c,0x2c,0x09,0x80,0x00,0x19,0xc1,0x92,0xa2,0x28,0x89,0xa8,0xd7,0x94,0x28,0x3c,0x2a,0x1a,0x88, + 0x80,0x5a,0x4c,0x3b,0x09,0x19,0xc0,0xd5,0xb5,0x92,0x91,0x18,0x19,0x29,0x4b,0x2b,0x98,0xb2,0xa4,0xc1, + 0xb6,0x92,0x01,0x4d,0x3a,0x3d,0x8a,0x91,0xe3,0xa4,0x81,0x18,0x19,0x3a,0x2d,0x88,0x01,0x8a,0xe4,0xc5, + 0xb4,0x82,0x4a,0x3c,0x2b,0x88,0x91,0x10,0x2b,0xa0,0xa3,0x39,0xb9,0xa7,0x38,0xb9,0xb7,0xa3,0x49,0x3c, + 0x2b,0x98,0xa2,0x11,0x98,0x91,0xb4,0xa2,0x60,0x3f,0x2b,0xa8,0x93,0x90,0x40,0x1d,0xa1,0x81,0x18,0xb1, + 0x79,0xd8,0xa4,0x20,0x2b,0x09,0xe0,0xb7,0x11,0x3b,0x0a,0xb2,0x11,0xf2,0xa3,0x08,0x18,0x29,0x4d,0x99, + 0x92,0x81,0x08,0x00,0x19,0xc0,0xc4,0xa3,0x69,0x2c,0x28,0xe8,0xb6,0x10,0x3b,0x8a,0x91,0xa3,0x82,0x18, + 0x29,0x2a,0x98,0xc5,0xa3,0x81,0x08,0x3a,0x7c,0x4c,0xf3,0xb3,0x29,0x1c,0x89,0x90,0x81,0x20,0x38,0x11, + 0x12,0x01,0x92,0x09,0x0c,0xdb,0x97,0x7b,0x0b,0xe3,0x00,0x1b,0xa0,0x01,0x29,0x81,0x23,0x69,0x08,0x91, + 0x91,0x88,0x2d,0x1c,0xc7,0x13,0x3d,0xaa,0xb2,0x09,0x8b,0xa1,0x21,0x11,0x15,0x52,0x10,0x92,0x00,0x9b, + 0xd9,0x5a,0xb9,0xa7,0x39,0x9c,0xd2,0x08,0x8a,0x92,0x40,0x00,0x86,0x21,0x18,0x91,0x90,0x99,0x8b,0x7c, + 0x8a,0xd4,0x11,0x0d,0xa8,0x80,0x2a,0x90,0x32,0x30,0x06,0x41,0x19,0xc2,0x80,0x8b,0xaa,0x7a,0x8b,0xc6, + 0x20,0x1d,0xc0,0x81,0x19,0x80,0x12,0x11,0x04,0x31,0x09,0xa0,0xa9,0x9c,0x9c,0x6a,0xb9,0xa7,0x48,0x0d, + 0xc1,0x01,0x2b,0x08,0x02,0x03,0x52,0x39,0x98,0xc2,0x88,0x0d,0xaa,0x31,0x0c,0xb7,0x48,0x8d,0xc2,0x00, + 0x09,0x10,0x10,0x04,0x32,0x18,0xc2,0x00,0xb9,0x8c,0x9d,0x20,0xb9,0x97,0x7a,0xaa,0xb3,0x19,0x09,0x10, + 0x93,0x17,0x48,0x90,0x92,0x88,0x0b,0x9d,0xd1,0x58,0x8a,0xa5,0x39,0xaa,0xa0,0xa8,0x30,0x3c,0x96,0x33, + 0x20,0x11,0xb0,0xb2,0x0f,0xbb,0xa0,0x3a,0xa6,0x61,0x9a,0xb2,0x8a,0x9b,0x0b,0xa4,0x73,0x30,0x23,0x02, + 0x02,0x8d,0xd8,0x99,0x9b,0x99,0x34,0x3a,0x97,0x29,0xbb,0xba,0xe9,0x28,0x18,0x16,0x32,0x33,0x10,0xb1, + 0x9b,0xcd,0x9b,0xca,0x48,0xa4,0x72,0xa9,0xb3,0xaa,0x0a,0x9d,0x84,0x30,0x33,0x32,0x87,0x28,0xa9,0xaa, + 0xda,0x0a,0x9a,0x72,0xa1,0x24,0x0c,0xa0,0xcb,0x08,0x0d,0x83,0x31,0x34,0x40,0x93,0x08,0xc9,0x9b,0xdb, + 0x89,0x98,0x70,0xa3,0x15,0x9a,0x98,0xdc,0x80,0x8a,0x32,0x21,0x27,0x11,0x02,0xa9,0xc0,0x9c,0x9a,0x9b, + 0x81,0x78,0x86,0x38,0xa8,0xa9,0xe8,0x0a,0xa8,0x31,0x23,0x72,0x03,0x11,0x98,0x9b,0xfa,0x89,0x9a,0x19, + 0x92,0x73,0x94,0x21,0xba,0x8c,0xfb,0x08,0x08,0x40,0x12,0x52,0x01,0x18,0xc8,0x99,0xba,0x8b,0xb8,0x30, + 0x03,0x73,0x97,0x11,0xaa,0x9c,0xf8,0x08,0x00,0x20,0x14,0x41,0x01,0x88,0xc1,0x8b,0x9b,0xac,0x81,0x29, + 0x42,0x00,0x57,0x1a,0x98,0xea,0x88,0x8c,0x00,0x01,0x62,0x11,0x12,0x92,0x09,0xca,0xbb,0xc8,0x1b,0x88, + 0x82,0x26,0x69,0x84,0x09,0x98,0xbd,0xb0,0x9b,0x40,0x10,0x45,0x12,0x32,0xa0,0x89,0xea,0xab,0xb8,0x8b, + 0x21,0x18,0x17,0x01,0x37,0x8b,0x90,0xfa,0x0a,0xaa,0x18,0x13,0x71,0x13,0x11,0x83,0x9a,0xaa,0xcd,0x89, + 0x9a,0x29,0x82,0x32,0x24,0x7a,0x87,0x89,0x08,0xcc,0x88,0x9a,0x28,0x83,0x53,0x24,0x20,0x83,0xb9,0x89, + 0xbf,0x99,0xc0,0x28,0x00,0x10,0x05,0x18,0x37,0xaa,0x80,0xf9,0x0c,0xa8,0x09,0x23,0x40,0x34,0x02,0x21, + 0xb0,0x9c,0xd9,0x9c,0x90,0x99,0x22,0x00,0x42,0x82,0x68,0x07,0x9a,0x08,0xfb,0x09,0x99,0x19,0x04,0x31, + 0x44,0x00,0x02,0xa8,0x8c,0xd9,0xa9,0x08,0x0b,0x12,0x01,0x52,0x80,0x00,0x71,0x95,0x99,0x90,0xbf,0x98, + 0xb8,0x30,0x22,0x44,0x25,0x10,0x01,0xb8,0xa9,0xbc,0x9c,0xc8,0x88,0x21,0x18,0x14,0x02,0x30,0x70,0x97, + 0x98,0x88,0xbe,0x98,0xa8,0x49,0x11,0x33,0x27,0x10,0x01,0xc0,0x8a,0xab,0xac,0x90,0x09,0x31,0x12,0x53, + 0x01,0x09,0x90,0x77,0x89,0x99,0xf0,0x8a,0x89,0x99,0x32,0x41,0x52,0x13,0x21,0x18,0xdb,0xa8,0xbb,0x8c, + 0xb8,0x10,0x31,0x10,0x06,0x01,0x29,0xc8,0x67,0x98,0x89,0xe1,0xaa,0x88,0x9a,0x22,0x33,0x72,0x14,0x01, + 0x01,0xaa,0xb9,0xdb,0x8b,0x99,0x88,0x33,0x38,0x23,0x94,0x38,0x8b,0xdb,0x77,0x91,0x09,0xf0,0x8b,0x89, + 0xaa,0x23,0x32,0x72,0x04,0x11,0x11,0xba,0xa8,0xdb,0x9b,0xa8,0x89,0x22,0x01,0x25,0x02,0x18,0xa1,0xe8, + 0x75,0xa2,0x89,0xb1,0xbf,0x98,0xb9,0x30,0x23,0x53,0x26,0x01,0x21,0xb8,0xaa,0xca,0xac,0x89,0x8a,0x20, + 0x13,0x41,0x12,0xa1,0x01,0x9c,0x8c,0x77,0x91,0x09,0xe1,0x8c,0x89,0xaa,0x31,0x32,0x61,0x15,0x10,0x10, + 0xb8,0xa9,0xab,0xae,0x90,0x88,0x38,0x02,0x24,0x11,0x89,0xa0,0xbb,0x9d,0x77,0x92,0x88,0x80,0xaf,0x99, + 0xb8,0x29,0x23,0x33,0x47,0x01,0x11,0xa1,0xab,0xaa,0xbd,0x8a,0x88,0x29,0x33,0x12,0x42,0x91,0xa9,0xa8, + 0xad,0x7b,0x57,0x89,0x18,0xe9,0x9a,0x89,0x9b,0x22,0x14,0x52,0x24,0x01,0x11,0xa9,0xcb,0xb9,0x9d,0x89, + 0xa0,0x21,0x32,0x01,0x05,0x08,0x8a,0xc8,0xa9,0x78,0x37,0xa8,0x20,0xdd,0xaa,0xa0,0x0b,0x31,0x15,0x62, + 0x22,0x01,0x01,0xa9,0xac,0xd9,0x9a,0x0a,0x99,0x12,0x24,0x48,0x12,0x91,0x09,0xaa,0xdb,0x69,0x27,0x89, + 0x19,0xf8,0xaa,0x89,0xaa,0x20,0x25,0x41,0x24,0x03,0x20,0x98,0xdb,0xa9,0xac,0x9b,0x80,0x00,0x41,0x21, + 0x11,0x02,0x9a,0xaa,0xd9,0x99,0x77,0x85,0x88,0x01,0xae,0x9b,0xb8,0x0b,0x41,0x03,0x45,0x33,0x01,0x03, + 0xa9,0xad,0xd9,0xaa,0x0a,0x89,0x10,0x14,0x22,0x21,0x91,0xa8,0xbb,0xae,0xa8,0x77,0x02,0x19,0xc2,0xad, + 0x8a,0xca,0x08,0x41,0x38,0x35,0x14,0x20,0x91,0xc8,0x99,0xbc,0xaa,0x98,0x19,0x30,0x12,0x33,0x12,0x89, + 0x99,0xbd,0x9b,0x79,0x77,0x08,0x18,0xe8,0x9a,0x89,0xab,0x20,0x12,0x73,0x14,0x21,0x21,0xa8,0xa8,0xcb, + 0xad,0x99,0x9a,0x28,0x11,0x32,0x53,0x00,0x82,0xb8,0x8c,0xd9,0x79,0x87,0x88,0x02,0xcc,0x88,0xba,0x0b, + 0x02,0x21,0x47,0x11,0x32,0x82,0x98,0xb0,0xbe,0xa9,0xba,0x0a,0x81,0x11,0x16,0x20,0x30,0xa9,0x98,0xaa, + 0xac,0x77,0x92,0x10,0xb2,0xaf,0xa8,0xcb,0x29,0x88,0x43,0x35,0x31,0x15,0x91,0x00,0xca,0xba,0xca,0x8c, + 0x98,0x80,0x22,0x12,0x24,0x01,0x19,0xc8,0x99,0x9a,0x77,0x18,0x11,0xf8,0x0a,0xbb,0x9b,0x01,0x4b,0x25, + 0x23,0x54,0x10,0x00,0xa0,0x8c,0xba,0xcb,0x88,0x8b,0x12,0x82,0x53,0x81,0x11,0xa8,0x9a,0x8a,0x4f,0x27, + 0x4b,0x10,0xdc,0x00,0x9d,0x09,0xa0,0x50,0x01,0x32,0x33,0x49,0xa2,0x98,0x9a,0xaf,0xa8,0x9a,0x18,0x90, + 0x52,0x00,0x02,0x81,0x2b,0xda,0x89,0x7a,0xb7,0x24,0x0a,0x0c,0xd0,0x1b,0xb8,0x80,0x24,0x5a,0x04,0x11, + 0x21,0xa9,0x81,0x9e,0xa8,0xc8,0x38,0x0b,0x21,0x01,0x30,0xb2,0x49,0xbb,0xbb,0xf3,0x70,0x80,0x04,0xa0, + 0x1a,0xfb,0x89,0xb9,0x08,0x03,0x70,0x22,0x22,0x14,0x08,0xa1,0xba,0xca,0xad,0x98,0x9a,0x11,0x10,0x34, + 0x02,0x33,0xa0,0x88,0xeb,0x36,0x8d,0x03,0xc1,0x99,0xae,0x9a,0xb9,0x18,0x08,0x44,0x23,0x63,0x12,0x31, + 0x81,0x08,0xa9,0x9d,0xba,0xab,0xa9,0x8a,0x01,0x20,0x34,0x30,0x23,0x78,0x86,0x10,0x98,0xac,0xe9,0xaa, + 0xba,0xaa,0x80,0x38,0x53,0x42,0x34,0x22,0x32,0x01,0x01,0x99,0x99,0xac,0xba,0xca,0xa9,0x99,0xa8,0x90, + 0x3a,0x9b,0x77,0x25,0x93,0xba,0xaa,0xbf,0x99,0x0b,0x2b,0xe0,0x32,0x22,0x79,0x12,0x10,0x94,0x0a,0xb3, + 0x0f,0x9a,0x09,0x49,0xa9,0x05,0x89,0x01,0xe7,0x32,0x28,0x39,0x3f,0xca,0xc5,0x40,0x8a,0xa2,0xc1,0x20, + 0x0c,0x80,0x89,0xb2,0x78,0x90,0x29,0x12,0x72,0xb9,0x81,0x1f,0xb6,0x8a,0x04,0x80,0x39,0x9b,0x7a,0xc0, + 0x91,0x3a,0x88,0x86,0x3b,0xf4,0x10,0x29,0xd0,0x11,0xd1,0x79,0x19,0x2b,0xb9,0x14,0xb0,0x95,0xc9,0x42, + 0x0b,0x00,0x8b,0x97,0x00,0x08,0x1b,0x91,0xb1,0xb3,0x60,0x09,0xa2,0xb8,0x7e,0x0a,0xc3,0x82,0x80,0xc8, + 0x94,0x59,0x2c,0x88,0xc1,0x02,0x39,0x3b,0x1a,0x88,0xf2,0x01,0x08,0x08,0x08,0x08,0x08,0x80,0x80,0x08, + 0x08,0x80,0x08,0x80,0x80,0x08,0x80,0x08,0x80,0x08,0x80,0x08,0x80,0x08,0x80,0x80,0x80,0x80,0x80,0x08, + 0x08,0x08,0x08,0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip advertQueuedClip = { + advertQueuedData, sizeof(advertQueuedData), 7062, 8000 +}; +// "Advert failed" +static const uint8_t advertFailedData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0x7f,0x77,0xe7,0xa1,0x91,0x68,0xa2,0x90,0xa8,0x0d,0x81,0x21,0x00,0x0a,0xb9,0xc3,0x74,0xb7,0x99,0xb8, + 0x4b,0x83,0x03,0x84,0x0d,0x88,0x90,0x04,0x08,0x19,0x8c,0x09,0xa1,0x04,0x18,0x0a,0xc8,0xa2,0x77,0x0b, + 0x0a,0xbd,0x04,0x11,0x50,0x99,0x88,0xa0,0x48,0x18,0x80,0xc1,0x09,0x1b,0x19,0x94,0x11,0x1a,0x0d,0x78, + 0xc7,0x80,0xa8,0x3c,0x81,0x01,0x85,0x1a,0x19,0xab,0x86,0x80,0x48,0x0c,0x98,0xa1,0x21,0x2a,0x19,0xc1, + 0x00,0x67,0x0d,0x88,0xc9,0x03,0x18,0x40,0xa8,0x81,0xb0,0x59,0x09,0x10,0xc2,0x08,0x89,0x2c,0xa1,0x01, + 0x83,0x2d,0x7a,0xa7,0x89,0x98,0x0e,0x92,0x81,0x24,0x2b,0x08,0xb9,0x84,0x19,0x48,0xa9,0x81,0xaa,0x4a, + 0xaa,0x83,0xb4,0x58,0x79,0xc5,0x90,0xb8,0x1c,0x80,0x21,0x86,0x20,0x80,0x0b,0xa0,0x98,0x03,0x3c,0x88, + 0x9b,0xb1,0x0c,0x12,0x1a,0x06,0x79,0xa7,0x90,0xe8,0x1a,0x88,0x38,0x95,0x31,0x00,0x2b,0xd0,0x80,0xa1, + 0x39,0x98,0x1a,0xe2,0x08,0xa1,0x5a,0x08,0x79,0xa7,0x80,0xc8,0x2b,0x9a,0x10,0xa5,0x33,0x11,0x6a,0xb8, + 0x81,0xb0,0x3a,0x9b,0x80,0xe4,0x11,0x09,0x4a,0xb8,0x43,0x97,0x28,0xaa,0x0f,0xc8,0x81,0x91,0x51,0x10, + 0x20,0xa1,0x01,0xa9,0x2b,0xbc,0x80,0xc8,0x31,0x0b,0x31,0xd0,0x05,0x17,0x4a,0x8a,0xac,0xe0,0x88,0x18, + 0x49,0x11,0x22,0x03,0x30,0x99,0x0b,0xfb,0x88,0xa9,0x39,0xaa,0x93,0xd3,0x50,0x7b,0x81,0xa3,0xd1,0x0a, + 0x8e,0x89,0xb1,0x04,0x22,0x61,0x18,0x01,0xa0,0x91,0x9b,0x0b,0xac,0x91,0x90,0x51,0x2a,0x81,0x27,0x00, + 0x00,0xcc,0xc9,0xac,0x9a,0x8a,0x23,0x43,0x36,0x22,0x33,0x80,0x90,0xcb,0x9b,0xae,0x89,0xa9,0x12,0x28, + 0x33,0x57,0x21,0x11,0xc9,0xca,0xbd,0xbb,0xbb,0x89,0x20,0x73,0x24,0x34,0x22,0x22,0x81,0x99,0xdb,0xbb, + 0xcb,0xab,0x99,0x08,0x74,0x31,0x03,0x03,0x30,0xcf,0xbb,0xbc,0xaa,0x89,0x21,0x34,0x45,0x33,0x42,0x02, + 0x01,0xa8,0xbb,0xcc,0xbb,0xbb,0xaa,0x40,0x43,0x35,0x13,0x00,0xda,0xbc,0xcc,0xab,0x9a,0x08,0x33,0x55, + 0x33,0x34,0x22,0x12,0x90,0xb9,0xcc,0xcb,0xab,0xab,0x8a,0x33,0x45,0x43,0x11,0x90,0xdb,0xdb,0xcb,0xaa, + 0x9a,0x18,0x42,0x44,0x43,0x33,0x23,0x22,0x80,0xaa,0xcc,0xbc,0xbb,0xbb,0x0b,0x24,0x44,0x33,0x12,0x91, + 0xda,0xbc,0xbd,0xac,0xaa,0x8a,0x10,0x42,0x44,0x43,0x32,0x33,0x13,0x02,0x90,0xba,0xeb,0xca,0x39,0x82, + 0x11,0xb8,0xbe,0xcc,0xbc,0xbb,0x9c,0x99,0x00,0x43,0x34,0x44,0x23,0x23,0x22,0x10,0x80,0xa9,0xc9,0xaa, + 0xab,0xeb,0x77,0x92,0x00,0xba,0xdb,0xbb,0xbb,0x0a,0x00,0x23,0x53,0x23,0x52,0x21,0x12,0x83,0x05,0x38, + 0x3a,0xa9,0xd2,0x80,0x1d,0xe9,0x77,0xd3,0x88,0xb9,0x9a,0x88,0x88,0x01,0x02,0x03,0x33,0x40,0x11,0x03, + 0x93,0x85,0x28,0x3a,0x1c,0x98,0xa9,0xd0,0x80,0x8e,0x77,0xa1,0x91,0xdb,0x9a,0xb9,0x09,0x18,0x11,0x52, + 0x30,0x31,0x02,0x95,0x03,0x10,0x18,0x88,0x91,0x99,0xa9,0xab,0x9e,0xf0,0x77,0x19,0x88,0xc9,0x8a,0xbb, + 0x99,0x80,0x28,0x51,0x30,0x23,0x43,0x30,0x12,0x92,0x93,0x98,0x9a,0xda,0x99,0x9b,0xaa,0x7f,0x27,0x3a, + 0x89,0xcd,0xa0,0xaa,0x89,0xa8,0x12,0x13,0x38,0x36,0x31,0x12,0x12,0x91,0x82,0x98,0x09,0x8c,0xb9,0xb8, + 0xba,0x71,0x67,0x03,0xe9,0x8d,0xa9,0x9a,0x80,0x98,0x04,0x40,0x48,0x10,0x11,0x11,0x01,0x01,0x18,0x08, + 0x3b,0x8c,0xc0,0xc2,0x7a,0x77,0x1b,0x80,0xdb,0x80,0x9b,0x08,0xa0,0x12,0x11,0x40,0x11,0x31,0x30,0x00, + 0xa4,0x93,0x10,0x8a,0x90,0x2a,0x1f,0xf9,0x77,0x09,0x00,0xea,0x80,0xa9,0x19,0x98,0x18,0x82,0x30,0x30, + 0x01,0x05,0x00,0x93,0x94,0x20,0x1a,0xa0,0xc3,0x92,0x7e,0x07,0x2c,0x90,0xcb,0x92,0x0b,0x19,0x99,0x12, + 0x19,0x11,0xa3,0x62,0x3a,0x29,0x10,0x38,0xb8,0xb7,0x83,0x3a,0x49,0x47,0x4e,0x09,0x8d,0x80,0x89,0x00, + 0x98,0x11,0x2a,0x90,0xb4,0x83,0x28,0x59,0x1e,0xa2,0xb3,0x32,0x3f,0x2a,0x29,0x97,0x5b,0x89,0x0d,0x81, + 0x09,0x29,0xa8,0x92,0x92,0x7b,0x1a,0xa0,0xa5,0x00,0x38,0x2c,0x19,0xb1,0x93,0xb1,0x77,0x1f,0x91,0xa8, + 0x12,0x0a,0x4a,0x99,0x91,0xa3,0x80,0x81,0x80,0x7c,0x2a,0x1a,0xb1,0xa4,0x11,0x89,0x22,0xe7,0x6c,0x09, + 0x0a,0xa4,0x88,0x28,0xa9,0x83,0xa1,0x49,0x99,0x92,0x12,0x4c,0x1a,0xf3,0xa4,0x01,0x2a,0x78,0xdb,0x83, + 0xb0,0x40,0xa9,0x88,0x22,0x1d,0x81,0xb1,0x21,0x81,0x18,0x12,0x8b,0xb5,0xb4,0x08,0x80,0x7f,0xd7,0x08, + 0x80,0x0a,0x82,0x19,0x3a,0x08,0x08,0x03,0x18,0x38,0x1a,0xc0,0xb4,0x00,0x2c,0x8a,0xc0,0x74,0xc7,0x98, + 0x80,0x8b,0x00,0x01,0x18,0x12,0x12,0x29,0x23,0x88,0x18,0xb0,0xd9,0x88,0x1c,0x8c,0xa8,0x77,0xd4,0x0a, + 0xa8,0x9b,0x21,0x12,0x11,0x24,0x02,0x08,0x14,0xa8,0x8a,0x98,0xcc,0x99,0x88,0xca,0x77,0xa7,0x9b,0x00, + 0xb9,0x18,0x23,0x01,0x21,0x24,0xa8,0x18,0x91,0xbb,0x08,0xba,0x9e,0x08,0xa8,0x72,0x67,0xad,0x10,0xb9, + 0x18,0x13,0x01,0x21,0x14,0xa9,0x18,0xb0,0xac,0x18,0xa0,0x9a,0x33,0xd0,0x76,0xa6,0xac,0x11,0xbb,0x30, + 0x13,0x10,0x41,0x83,0xbb,0x30,0xea,0x0a,0x01,0xa9,0x18,0x02,0xab,0x77,0xc5,0x8b,0x82,0x9c,0x31,0x11, + 0x18,0x33,0xb1,0x8c,0x01,0xbd,0x28,0x91,0x8a,0x30,0x92,0x7b,0x47,0xcc,0x28,0xc8,0x19,0x22,0x00,0x21, + 0x13,0xdb,0x28,0xc8,0x0b,0x02,0x99,0x10,0x12,0x2b,0x77,0xf0,0x09,0xa1,0x0b,0x33,0x00,0x21,0x23,0xd9, + 0x1a,0xc1,0x9b,0x22,0xa9,0x20,0x11,0xa9,0x77,0xf3,0x8a,0x82,0x9c,0x32,0x91,0x21,0x12,0xb0,0x8b,0x81, + 0xaf,0x30,0xa0,0x19,0x03,0x99,0x77,0xc0,0x8b,0x82,0x9d,0x32,0x81,0x30,0x13,0xb8,0x9b,0x91,0xbe,0x31, + 0xc1,0x29,0x84,0x89,0x57,0xd0,0x0b,0x92,0x9d,0x42,0x80,0x10,0x03,0x99,0x0a,0x90,0xbc,0x31,0xc1,0x29, + 0x84,0x1a,0x67,0xda,0x29,0xb0,0x1b,0x24,0x88,0x32,0x81,0xa9,0x09,0xc8,0x8c,0x22,0xc9,0x41,0xa1,0x79, + 0x85,0xcc,0x11,0xc9,0x39,0x03,0x08,0x33,0xa0,0x99,0x88,0xda,0x1a,0x02,0x8c,0x24,0xa8,0x67,0xc8,0x1b, + 0xa2,0x8e,0x32,0x88,0x40,0x81,0x89,0x88,0x98,0xaa,0x11,0xb8,0x59,0x92,0x7a,0x07,0xbc,0x21,0xda,0x38, + 0x82,0x29,0x14,0x98,0x88,0x98,0xba,0x39,0xa2,0x2b,0x15,0x9c,0x67,0xc8,0x2b,0xa1,0x8d,0x14,0x88,0x31, + 0x91,0x89,0x80,0xaa,0x8a,0x02,0xaa,0x73,0xb8,0x78,0x86,0xac,0x21,0xdb,0x30,0x92,0x39,0x04,0x99,0x00, + 0xa9,0x9a,0x11,0xb8,0x58,0xa2,0x2b,0x77,0xda,0x11,0xba,0x49,0x82,0x29,0x14,0x99,0x08,0xa8,0x9a,0x20, + 0xb9,0x60,0xa1,0x3a,0x57,0xcb,0x39,0xd8,0x2a,0x03,0x09,0x25,0xa8,0x10,0xb8,0x9a,0x10,0xb9,0x50,0x91, + 0x2b,0x67,0xc8,0x1a,0xc1,0x0c,0x23,0x89,0x34,0x98,0x10,0xa8,0xab,0x08,0xb9,0x58,0xa2,0x2a,0x57,0xb1, + 0x8e,0x92,0x9e,0x13,0x98,0x53,0x90,0x10,0x99,0x99,0x89,0x88,0x2a,0x83,0x1a,0x55,0x85,0xad,0x01,0xbe, + 0x32,0xa8,0x53,0x81,0x10,0x98,0x9a,0x9a,0x98,0x1a,0x05,0x2b,0x14,0x27,0xfb,0x28,0xea,0x20,0xa0,0x41, + 0x92,0x20,0x98,0x89,0xaa,0x80,0x0c,0x03,0x1b,0x05,0x71,0xf1,0x29,0xd8,0x29,0x91,0x48,0x01,0x28,0x90, + 0x80,0x9b,0x90,0x8c,0x03,0x0d,0x84,0x78,0xb2,0x2d,0xd1,0x1b,0x92,0x39,0x04,0x10,0x01,0x90,0x9b,0xb2, + 0x8e,0x82,0x0c,0x83,0x2a,0x57,0xac,0x12,0xbd,0x21,0xa8,0x42,0x82,0x20,0x81,0xaa,0x01,0xae,0x20,0xbb, + 0x31,0xb8,0x73,0xa7,0x3b,0xf1,0x1a,0x91,0x29,0x13,0x18,0x23,0xb8,0x39,0xf8,0x1a,0xc0,0x2a,0xa2,0x1a, + 0x67,0xaa,0x31,0xdc,0x20,0xa9,0x40,0x91,0x30,0x82,0x09,0x91,0xac,0x01,0xbc,0x31,0xc9,0x42,0x24,0xab, + 0x33,0xef,0x10,0xaa,0x22,0x90,0x53,0x80,0x11,0x90,0x8a,0xb0,0x9d,0x01,0x8c,0x03,0x70,0xb2,0x38,0xf9, + 0x1b,0xc9,0x28,0x91,0x62,0x02,0x21,0x01,0x98,0x98,0xcc,0x98,0xaa,0x18,0x78,0xb3,0x58,0xd0,0x2a,0xe8, + 0x18,0x90,0x30,0x82,0x42,0x82,0x00,0x91,0x9b,0x99,0x9e,0x88,0x1a,0x87,0x2a,0xb4,0x1c,0xd1,0x1a,0xa0, + 0x39,0x82,0x41,0x13,0x21,0x03,0x89,0x90,0xcb,0x0a,0xcc,0x72,0xb9,0x33,0xcc,0x11,0xcc,0x10,0xab,0x21, + 0x98,0x44,0x01,0x33,0x02,0x21,0xb0,0x99,0xc1,0x2e,0xd2,0x19,0xb1,0x0d,0xc0,0x8b,0xa0,0x0b,0x03,0x38, + 0x27,0x21,0x34,0x10,0x12,0xa8,0x80,0xfb,0x30,0xca,0x11,0xda,0x09,0xdb,0x89,0xaa,0x19,0x01,0x52,0x33, + 0x43,0x24,0x21,0x01,0x88,0x99,0xcc,0x72,0xa8,0x01,0xcb,0x9b,0xcd,0xa9,0x99,0x19,0x21,0x63,0x42,0x32, + 0x23,0x22,0x01,0x98,0xc9,0xca,0x78,0xaa,0xa8,0xda,0xaa,0xbb,0xa9,0x08,0x31,0x44,0x25,0x43,0x32,0x22, + 0x02,0x80,0x9b,0xbd,0xdb,0x7a,0xb8,0x98,0xb1,0x1c,0x29,0xce,0x82,0x89,0x01,0x18,0xb2,0x57,0xa0,0x50, + 0x13,0x09,0x13,0xbc,0x13,0xbd,0xaa,0xb0,0x74,0xbc,0xb0,0x44,0xa0,0x48,0xa0,0x50,0xea,0x08,0xb3,0x48, + 0xb2,0x22,0xad,0x7c,0xb3,0x1a,0x82,0x1a,0x4b,0xb0,0x48,0xc6,0x2b,0xa5,0x29,0xc9,0x90,0x11,0x02,0x18, + 0x4e,0x90,0x91,0x79,0x98,0x81,0xc0,0x29,0xa9,0xa1,0x12,0xb0,0xe2,0x04,0x58,0x0a,0x81,0xf2,0x20,0x08, + 0x1a,0x80,0x1c,0x00,0xc1,0x94,0x18,0x8b,0x18,0x92,0x2f,0x09,0x40,0x98,0x02,0xd9,0x53,0x9a,0x28,0x8a, + 0x82,0x01,0x1e,0x09,0x88,0xa3,0x4f,0x89,0xc2,0x94,0x29,0xa1,0xb1,0x60,0x3c,0x89,0x91,0xb1,0x7c,0x19, + 0x09,0x00,0x1b,0x81,0xc2,0x22,0x4c,0x0b,0xb0,0xa2,0x92,0x39,0x4c,0xc7,0x5b,0x19,0x0a,0xa3,0x08,0x48, + 0x8a,0x01,0xb1,0x01,0xb2,0x90,0x11,0x2f,0x98,0xe1,0xa4,0x00,0x39,0x1b,0x10,0x07,0x0f,0x18,0x8b,0x86, + 0x8a,0x30,0x90,0x38,0x88,0x1a,0xa4,0x99,0x40,0x8e,0x91,0xb2,0x00,0x91,0x28,0x20,0x6c,0x87,0x8f,0x01, + 0x99,0x23,0x9c,0x11,0xb4,0x20,0x90,0xb8,0x10,0x97,0x4c,0x4b,0xab,0x84,0xa1,0x3c,0x02,0x0f,0x13,0xca, + 0x02,0x90,0x83,0x88,0x99,0x4d,0xa3,0x8a,0x01,0x2b,0xc7,0x00,0x00,0x7b,0xa8,0xa2,0xa4,0x3a,0x09,0xe0, + 0x94,0x2a,0x20,0xe9,0x03,0xa0,0x48,0xaa,0x10,0xa5,0x9a,0x05,0x2c,0x18,0xa0,0x10,0x81,0x2c,0x82,0x0f, + 0x20,0xca,0x14,0xaa,0xa5,0xc1,0x71,0x9a,0x20,0x1a,0x39,0xb8,0x91,0x04,0x9a,0x94,0x8a,0x79,0xc8,0x93, + 0x91,0x90,0xd2,0x02,0x69,0x0c,0x81,0xa0,0x30,0x89,0x31,0x9f,0x23,0xe9,0xb4,0x93,0x4b,0x80,0x0b,0x95, + 0x89,0x68,0x1c,0xa1,0xb2,0x83,0x4b,0x08,0xb9,0x94,0x02,0x0d,0x02,0x98,0x49,0x98,0x0a,0xa7,0x2a,0x00, + 0xc0,0x23,0xad,0x15,0x0c,0x11,0xa8,0x00,0x10,0x4e,0xaa,0x84,0x18,0xa9,0xb6,0x93,0x4a,0x89,0xb9,0x07, + 0x2c,0x28,0x8c,0x13,0xba,0x96,0x91,0x4a,0x88,0x1b,0xa3,0x5b,0x88,0xb0,0x83,0x18,0x5a,0xf8,0x03,0x2b, + 0x59,0xac,0x15,0x8b,0x92,0x19,0x29,0x90,0x1a,0xb7,0x5a,0x00,0x2e,0x81,0xa9,0x94,0x88,0xa3,0x90,0x00, + 0x6c,0xa8,0x80,0xa2,0x12,0x1b,0xc0,0x93,0x21,0x1f,0xe3,0x10,0x10,0x8a,0x91,0xf4,0x13,0x2d,0x3c,0xa0, + 0x81,0x91,0x2a,0xe2,0x01,0x10,0xc8,0x40,0x89,0x6a,0x8a,0x91,0xa6,0x2a,0x29,0x90,0x4a,0x2b,0xb8,0xa6, + 0x81,0x3b,0x20,0xad,0x87,0xa8,0x02,0x89,0x92,0x90,0x38,0x3b,0x3d,0xc0,0xc4,0xa4,0x88,0x92,0x80,0x49, + 0x7c,0x0c,0xa2,0x82,0x3a,0x2b,0xf2,0x92,0x01,0x1a,0x49,0x2c,0x89,0xe3,0xb3,0x21,0x3b,0x2b,0x98,0x22, + 0x1e,0xa0,0xc2,0x62,0x1d,0x90,0x92,0x08,0x98,0xd5,0x02,0x18,0x0c,0x83,0xf0,0x03,0x99,0x48,0x8a,0x40, + 0x0c,0x00,0xb8,0x86,0x89,0x38,0x2b,0x80,0xd8,0xa5,0x38,0x88,0xba,0x87,0xa0,0x21,0x0e,0x22,0x0e,0x01, + 0xa0,0x81,0xf3,0x20,0x98,0x39,0x18,0x1d,0x91,0x18,0xd2,0xd3,0x83,0x4b,0x08,0x9b,0x87,0x3c,0x18,0x0c, + 0x03,0xab,0xa7,0x91,0x38,0x2b,0x0a,0x10,0xf8,0x84,0x09,0x11,0x9b,0x22,0x1f,0x01,0x08,0x1e,0x82,0xd0, + 0xa6,0x00,0x3a,0x09,0x89,0x93,0x89,0x60,0x0d,0x92,0x00,0x3c,0xa0,0xa0,0x87,0x4d,0x19,0x9a,0x95,0x19, + 0x39,0xca,0x05,0x89,0x6a,0x99,0x00,0xb2,0x6b,0x88,0x19,0x92,0x2c,0xa2,0xb1,0x14,0x2e,0x09,0x98,0x21, + 0x0b,0x38,0xf7,0x11,0x1a,0x19,0xc1,0x02,0x3b,0x88,0xd1,0x85,0x0b,0x21,0x0d,0x11,0x89,0x10,0x90,0x19, + 0x82,0x0f,0x01,0xc9,0x16,0x9b,0x95,0xa9,0x53,0x8d,0x03,0xaa,0x23,0x8d,0x02,0xa0,0x38,0xaa,0x11,0xe4, + 0x48,0x99,0x30,0xe8,0x41,0xaa,0x03,0xaa,0x42,0x8d,0x83,0x89,0x23,0x8d,0xa2,0x0a,0x40,0xc0,0x12,0xa0, + 0x5c,0x88,0x98,0x82,0x0b,0x21,0x88,0x59,0xd1,0x10,0xa9,0x18,0x90,0x77,0x8a,0xa0,0xca,0x10,0x0a,0x14, + 0x01,0x31,0x8a,0x91,0x98,0x30,0x9b,0x02,0xd4,0x2a,0x8e,0x57,0x0c,0xb0,0x9b,0x01,0x4a,0x03,0x22,0x02, + 0x0b,0xd1,0x09,0x80,0x29,0xd2,0x08,0x9a,0x0a,0x77,0x2b,0xd8,0x9a,0x91,0x48,0x84,0x22,0x91,0x0a,0xe0, + 0x29,0x88,0x10,0xb1,0x19,0xda,0x18,0x37,0x2e,0xe1,0x09,0x08,0x39,0x94,0x22,0x98,0x89,0xe8,0x10,0x19, + 0x10,0xc1,0x10,0x8c,0x90,0x47,0x8a,0xb1,0xad,0x81,0x49,0x13,0x30,0xa1,0x8b,0xc9,0x19,0x82,0x41,0xa8, + 0x89,0xcb,0x38,0x71,0xa7,0x92,0x9f,0x09,0x00,0x24,0x28,0x91,0xc9,0x90,0x2a,0x01,0x02,0x91,0x0e,0xc8, + 0x11,0x78,0xa5,0x08,0xdb,0x09,0x80,0x53,0x01,0x01,0xbb,0x98,0x0a,0x32,0x11,0xa3,0xad,0xa8,0x2a,0x14, + 0x77,0x1b,0xca,0x9a,0x82,0x71,0x00,0x01,0xb8,0x09,0x0b,0x02,0x83,0x11,0x8f,0xb0,0x81,0x22,0x74,0xa9, + 0xf2,0x8a,0x18,0x38,0x05,0x10,0xa9,0x8a,0xa9,0x14,0x30,0x18,0xdb,0xb0,0x29,0x30,0x72,0xc6,0x91,0x8e, + 0x08,0x00,0x05,0x10,0x98,0x9a,0xa0,0x31,0x00,0x01,0xda,0x88,0x2b,0x32,0x38,0x57,0x1e,0xd9,0x09,0x81, + 0x52,0x08,0x81,0xaa,0x80,0x1a,0x04,0x18,0xa9,0x8a,0xb0,0x53,0x10,0x71,0xf2,0xa1,0x8e,0x00,0x20,0x84, + 0x10,0x99,0x0a,0xb8,0x15,0x29,0x09,0xca,0xc3,0x20,0x49,0x2a,0x87,0x2a,0xbd,0x1a,0x90,0x27,0x18,0x80, + 0x9b,0xb1,0x48,0x00,0x01,0xd8,0x08,0x1c,0x02,0x20,0x60,0xd5,0x08,0x9d,0x08,0x10,0x05,0x20,0xa9,0x98, + 0x98,0x41,0x19,0xb2,0xc8,0x88,0x4b,0x81,0x84,0x71,0xd0,0xc2,0x8c,0x00,0x58,0x82,0x01,0x99,0x1a,0x8a, + 0x04,0x28,0xa8,0x0c,0xb9,0x22,0x01,0x96,0x70,0xc0,0xd3,0x0c,0x88,0x30,0x94,0x13,0x8b,0x89,0x8a,0x96, + 0x30,0x0a,0x0c,0xd8,0x83,0x28,0x38,0x6c,0xe4,0x01,0x8c,0x08,0x19,0x84,0x30,0x99,0x88,0xa9,0x13,0x5a, + 0x90,0x89,0xd8,0x10,0x2a,0x02,0x90,0x67,0x1c,0xd8,0x88,0x89,0x42,0x18,0xa4,0x80,0x89,0x3b,0xa0,0x05, + 0x09,0xa8,0x0b,0xa0,0x41,0x00,0x31,0x17,0x3f,0xbd,0x91,0x19,0x33,0x58,0xb1,0x91,0x9a,0x20,0x2a,0x95, + 0x08,0xc9,0x1a,0xa9,0x87,0x10,0x10,0x87,0x2a,0xbe,0x98,0x19,0x24,0x50,0x90,0x90,0xb8,0x10,0x4a,0x01, + 0x90,0xd0,0x1a,0x0b,0x02,0x83,0x94,0x77,0x1c,0xe0,0x88,0x09,0x21,0x10,0x94,0x08,0x99,0x09,0x90,0x14, + 0x29,0xa9,0xaa,0xa8,0x7a,0x18,0x82,0x79,0xc6,0x01,0x8e,0x88,0x18,0x82,0x32,0x98,0x80,0x8c,0x91,0x30, + 0x10,0x18,0xeb,0xb1,0x19,0x10,0x40,0x90,0x7a,0xc7,0x02,0x0f,0x98,0x18,0x01,0x41,0x89,0xa2,0x0a,0x88, + 0x38,0xb2,0x23,0x8f,0xa0,0x98,0x93,0x50,0x89,0x01,0x07,0x7b,0xac,0xa0,0x88,0x23,0x68,0x90,0x92,0x99, + 0x29,0x2b,0xa5,0x02,0x0a,0x0c,0xaa,0x94,0x48,0x08,0x00,0x79,0xc6,0x01,0x8e,0x98,0x00,0x03,0x40,0x88, + 0x90,0xa9,0x11,0x3a,0x94,0x28,0x9c,0x99,0xa0,0x23,0x39,0x09,0xdb,0xe4,0x47,0x1b,0xe0,0x89,0x98,0x50, + 0x00,0x02,0x99,0x80,0x1c,0x92,0x12,0x91,0x2b,0xbd,0x92,0x11,0x50,0x9a,0xc4,0x08,0x89,0x77,0x0a,0xc0, + 0x8a,0x88,0x50,0x81,0x02,0xa9,0x08,0x8a,0x05,0x10,0x80,0x8c,0xb8,0x10,0x02,0x30,0xaa,0xaa,0xe1,0x51, + 0x7b,0xa7,0x80,0x9c,0x1a,0x80,0x25,0x29,0x09,0xba,0x93,0x59,0x11,0x98,0xd1,0x1a,0x19,0x28,0xa4,0x18, + 0xbb,0x08,0x81,0x43,0x73,0xc7,0xb1,0x9d,0x28,0x00,0x06,0x88,0x88,0x8a,0x03,0x21,0x02,0x9c,0xc0,0x09, + 0x02,0x20,0xc1,0x0b,0xaa,0x58,0x81,0x13,0x78,0x87,0x8d,0xaa,0x1b,0x85,0x41,0x80,0x9a,0xc2,0x40,0x20, + 0x19,0xe1,0x90,0x08,0x39,0xa1,0xa2,0x98,0x2f,0x90,0x02,0x81,0x2b,0x7a,0x97,0x99,0x9b,0x0e,0x84,0x11, + 0x11,0x0d,0xa0,0x81,0x14,0x19,0x98,0xc9,0x01,0x18,0x21,0xc8,0x98,0x99,0x59,0x00,0x81,0xa0,0x8b,0x77, + 0xd3,0xa9,0xd9,0x30,0x21,0x38,0xd1,0x89,0x20,0x3a,0x85,0xb0,0x18,0x8d,0x01,0xa3,0x10,0x9a,0x1e,0x80, + 0x81,0x84,0x8a,0x08,0x19,0x77,0xc0,0x0c,0xb9,0x31,0x15,0x2a,0x98,0xbb,0x24,0x02,0x41,0xc9,0x9a,0x92, + 0x10,0x04,0xaa,0x0a,0xca,0x13,0x04,0x1a,0x89,0xac,0x84,0x77,0xb2,0x9f,0x90,0x00,0x52,0x90,0x99,0xa0, + 0x10,0x63,0x88,0x98,0xb8,0x29,0x31,0x09,0xa0,0xea,0x18,0x21,0x18,0xa1,0xc9,0x29,0x20,0x41,0x77,0xe0, + 0x0d,0x00,0x80,0x33,0xa8,0x0c,0x80,0x10,0x16,0xa8,0x8b,0x80,0x08,0x25,0xa8,0x8c,0x88,0x00,0x32,0xb2, + 0xbb,0x18,0x2b,0x54,0x51,0x47,0xfb,0x0c,0x11,0x80,0x11,0x91,0x9d,0x20,0x83,0x01,0x81,0xac,0x2a,0x03, + 0x91,0x81,0xbb,0x0e,0x12,0x82,0x80,0x99,0x9b,0x11,0x05,0xa1,0x77,0x86,0xbe,0x19,0x22,0x80,0x10,0xa8, + 0xac,0x42,0x04,0x09,0x89,0xb9,0x18,0x25,0x98,0x8b,0x98,0xa0,0x33,0x03,0xeb,0x89,0x10,0x01,0x83,0xd2, + 0x74,0x17,0xce,0x09,0x22,0x81,0x09,0x80,0xcb,0x30,0x27,0x98,0x8b,0x08,0x00,0x10,0x03,0xda,0x9b,0x31, + 0x02,0xa0,0xa1,0xba,0x4b,0x62,0x91,0xb8,0x79,0x47,0xd9,0x9c,0x20,0x13,0x98,0x09,0x90,0x9a,0x53,0x14, + 0xaa,0x8b,0x10,0x81,0x21,0x80,0xad,0x0c,0x23,0xa4,0xaa,0x1a,0x18,0x80,0x04,0x93,0xab,0x77,0x07,0xcd, + 0x0a,0x32,0x82,0x98,0x88,0x98,0x19,0x64,0x81,0xba,0x89,0x21,0x10,0x18,0x98,0xdb,0x09,0x32,0x02,0xba, + 0x9a,0x08,0x01,0x06,0x93,0x4c,0x77,0xb2,0xcf,0x08,0x32,0x82,0x9a,0x88,0x80,0x19,0x63,0x01,0xcb,0x89, + 0x31,0x10,0x89,0x98,0xc9,0x89,0x42,0x02,0xcb,0x8a,0x24,0x02,0x0a,0x19,0x78,0x77,0xc0,0xdb,0x08,0x32, + 0x82,0x99,0x89,0x80,0x28,0x53,0x02,0xbb,0x0c,0x11,0x92,0x99,0x08,0xa0,0x9c,0x29,0x24,0xa0,0xab,0x28, + 0x41,0x88,0xb2,0x77,0x57,0xd9,0xac,0x28,0x23,0x92,0xa9,0x08,0x10,0x88,0x32,0x15,0xc8,0xab,0x28,0x23, + 0xa0,0xba,0x98,0x89,0x0a,0x31,0x96,0xe1,0xa8,0x38,0x62,0x00,0x72,0x27,0xd9,0xbd,0x08,0x33,0x03,0xaa, + 0x89,0x10,0x01,0x20,0x43,0xa1,0xcc,0x0a,0x51,0x81,0xb9,0xa9,0x81,0x81,0x0a,0x20,0x83,0xe0,0x89,0x50, + 0x20,0x74,0x37,0xd9,0xbd,0x0a,0x43,0x12,0xa8,0x89,0x00,0x81,0x08,0x42,0x12,0xd9,0xab,0x10,0x14,0x98, + 0x9b,0x18,0x08,0xba,0x80,0x25,0x81,0xab,0x0c,0x32,0x77,0x37,0xda,0xad,0x19,0x22,0x12,0x98,0x08,0x00, + 0x88,0x19,0x53,0x83,0xd9,0x9a,0x28,0x01,0xa9,0x8b,0x22,0xa3,0xf9,0x09,0x31,0x10,0x9b,0x19,0x72,0x77, + 0x84,0xeb,0xab,0x18,0x32,0x01,0x80,0x02,0x92,0xa9,0x29,0x73,0x01,0xa9,0x9a,0x00,0x89,0xac,0x09,0x03, + 0xc1,0xc9,0x10,0x32,0x18,0x0b,0x22,0x77,0x77,0x90,0xdb,0xaa,0x00,0x11,0x00,0x31,0x33,0x81,0xaa,0x28, + 0x33,0x98,0xac,0x08,0xb3,0xf9,0xab,0x39,0x29,0x8c,0x89,0x85,0x94,0x88,0x49,0x28,0x77,0x15,0xb8,0xcd, + 0x8a,0x08,0x00,0x28,0x42,0x23,0x90,0x88,0x11,0x82,0xaa,0x0b,0x21,0xc8,0xeb,0x98,0x00,0x8a,0x0d,0x29, + 0x01,0xb1,0x91,0x15,0x32,0x77,0x37,0xba,0xae,0x89,0x88,0x88,0x10,0x34,0x13,0x00,0x10,0x02,0xa0,0xba, + 0x80,0x01,0x9b,0x8e,0x88,0xc1,0xb8,0x0a,0x19,0x99,0x88,0x30,0x40,0x7b,0x77,0x94,0xa9,0x9a,0xaa,0xab, + 0x09,0x30,0x32,0x34,0x15,0x13,0x03,0x11,0x08,0x09,0xaa,0xba,0x9c,0x9d,0xaa,0xc9,0xc1,0xa1,0x80,0x90, + 0x02,0x10,0x77,0x47,0x98,0xa9,0x8b,0xbb,0xab,0x99,0x00,0x32,0x63,0x42,0x32,0x23,0x22,0x11,0x00,0x98, + 0xca,0xda,0xc9,0xa9,0xaa,0xaa,0x8a,0xa9,0x4a,0x2a,0xb3,0x77,0x26,0x08,0x98,0xb9,0xaa,0xda,0xa8,0x89, + 0x08,0x20,0x32,0x43,0x15,0x23,0x32,0x41,0x3a,0x89,0xe1,0xb1,0x99,0x9b,0xab,0x8b,0x0d,0x9a,0x90,0x7c, + 0x17,0x28,0x09,0x8c,0x9a,0xb9,0xd0,0xc1,0x11,0x5d,0x8a,0x31,0x04,0x6a,0x30,0x1a,0xa1,0x9b,0xc5,0xaa, + 0x19,0x19,0x79,0x0a,0x82,0xb0,0x02,0x07,0x4a,0x3a,0x9d,0x81,0xa1,0x80,0x08,0x95,0x10,0x99,0xaf,0xa5, + 0x00,0x28,0x82,0x89,0x4f,0x2b,0xa1,0x91,0x0c,0x40,0x84,0x90,0xf4,0x12,0x29,0x1f,0x98,0x00,0x01,0x99, + 0xe0,0x18,0x21,0xb5,0x99,0x14,0x4b,0x89,0x3d,0x33,0x8e,0xda,0x42,0x28,0xac,0x01,0x31,0xa0,0xf3,0x81, + 0x2a,0x01,0xec,0x23,0x8b,0x48,0xab,0x70,0x03,0x0a,0xda,0x00,0x20,0xf3,0x09,0x82,0x7a,0x90,0x98,0xa4, + 0x0a,0x10,0xd8,0x94,0x2a,0x42,0xe8,0x92,0xb0,0x51,0x08,0x99,0xb8,0x01,0x43,0xac,0x93,0xa0,0x37,0x9e, + 0x22,0x0b,0xb1,0xba,0x50,0x51,0x29,0x0c,0xa2,0xf2,0x01,0x00,0xb1,0xab,0x16,0x4b,0x4a,0xb9,0x08,0xa5, + 0x28,0x31,0x9f,0xa2,0x91,0x21,0x5b,0x8b,0x00,0x80,0x97,0xb8,0x39,0x94,0x09,0x20,0x9f,0x21,0xd3,0x08, + 0x12,0x0f,0x31,0xca,0x01,0xa1,0x11,0x81,0x0c,0x19,0x2c,0x83,0xd2,0x02,0xc1,0x98,0x82,0x5a,0x19,0x99, + 0xf4,0x00,0x12,0x3b,0x3a,0x9d,0x82,0xd5,0x02,0x09,0x1c,0x31,0x0b,0x30,0x9b,0x08,0x08,0x08,0x08,0x08, + 0x88,0x00,0x88,0x00,0x88,0x00,0x88,0x00,0x08,0x88,0x00,0x88,0x00,0x88,0x00,0x08,0x08,0x08,0x88,0x80, + 0x80,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip advertFailedClip = { + advertFailedData, sizeof(advertFailedData), 7429, 8000 +}; +// "Sound on" +static const uint8_t soundOnData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0x7f,0x77,0x8f,0x70,0x0e,0x83,0xd0,0x92,0x39,0x02,0xab,0xc0,0x41,0x80,0x12,0x0f,0xc3,0x29,0x01,0x3a, + 0x8c,0xf2,0x84,0x90,0x4b,0x1a,0x81,0xc4,0x00,0x2b,0x6c,0xb0,0xb3,0xa4,0x39,0x2b,0xc0,0xb5,0x00,0x41, + 0x8c,0x91,0xd3,0x11,0x1b,0x6a,0xa9,0xa3,0x83,0x80,0x38,0x2f,0x89,0xc1,0xa1,0x13,0x2b,0x11,0xaa,0xd5, + 0x11,0x3a,0xb0,0x29,0xc4,0x79,0xb8,0x81,0xd3,0x10,0x08,0x2c,0x90,0x14,0x99,0x10,0x9f,0x14,0x99,0x00, + 0x2c,0x93,0x80,0xb8,0x49,0x29,0xd4,0x39,0x99,0x01,0xa2,0x91,0x11,0xd8,0x08,0x0f,0x14,0x40,0x8f,0x38, + 0xa8,0xb5,0x91,0x2a,0x58,0x8b,0xa5,0xc2,0x30,0x2f,0x90,0x90,0xa5,0x38,0x2c,0x0a,0xb0,0x96,0x08,0x28, + 0x2c,0x98,0xa2,0x82,0x90,0x5a,0xa8,0x60,0xaa,0x82,0xf1,0x12,0x19,0x2a,0x89,0x80,0x91,0xc3,0xa3,0x18, + 0xa9,0x28,0x48,0x3d,0x7e,0xb8,0x81,0x00,0x28,0x4a,0x8d,0x41,0x9a,0xb4,0x91,0x08,0x7a,0x89,0x18,0xb0, + 0x82,0x2a,0x80,0x12,0x0f,0x02,0x8b,0xa7,0x08,0x18,0x5a,0x8c,0x32,0x9d,0x04,0xc8,0x92,0x80,0x84,0x0a, + 0xa1,0x2c,0x96,0x89,0xb2,0x48,0x90,0xb1,0xd2,0x83,0x90,0x49,0x98,0x6b,0xb1,0x19,0x28,0x09,0x02,0x0f, + 0xb5,0x19,0x02,0x19,0xba,0xe7,0x94,0x00,0x3c,0xa9,0x03,0xc6,0x00,0x29,0x1b,0x81,0xd2,0x00,0x11,0x2f, + 0x00,0x8a,0xa2,0x20,0xb2,0x29,0xd8,0x79,0x90,0x09,0xa0,0x94,0xa1,0x50,0x8b,0xa8,0x15,0xe1,0x91,0xa2, + 0x39,0x10,0xe8,0x81,0xc5,0x38,0x08,0x2c,0x98,0x82,0xb3,0x5a,0x0c,0x11,0xe2,0x28,0x29,0x3c,0xa9,0x00, + 0xb7,0x18,0x00,0x18,0x19,0x0c,0x11,0x9a,0x13,0xd3,0xb8,0xc3,0x51,0x98,0xb1,0xd1,0x03,0x20,0xf8,0x82, + 0xa0,0x44,0x9f,0x22,0x8b,0xa4,0x3b,0x39,0x5a,0xd8,0xb3,0x10,0x11,0x3f,0xc0,0xa2,0x94,0x2a,0x09,0xb1, + 0xa5,0x08,0x21,0xe9,0x93,0xb2,0x20,0x8b,0x79,0x88,0x09,0xa0,0xb6,0x10,0x30,0x8e,0x11,0xf1,0x02,0xa0, + 0x29,0x1a,0x22,0xab,0x02,0x9e,0x16,0x9a,0x01,0x3c,0x82,0xaa,0xe3,0x38,0x01,0xa2,0x8f,0x61,0x2c,0x98, + 0xa1,0x81,0x11,0x3d,0x88,0xf1,0xa4,0x28,0x19,0x1a,0xa1,0xc6,0x18,0x91,0x49,0xba,0x93,0xa3,0x85,0x2b, + 0x4c,0x99,0xb3,0x68,0x0a,0x08,0xe1,0x11,0x19,0x29,0xb8,0x10,0x93,0x85,0x8f,0x50,0x2b,0xc0,0xa2,0x00, + 0x21,0x2e,0x90,0xe2,0xa3,0x59,0x2a,0x0a,0xf3,0x92,0x30,0x2c,0x8a,0x80,0xa4,0x10,0x2c,0x3b,0xa1,0xc5, + 0x28,0x3a,0x6b,0xd8,0x01,0xa1,0x31,0x8f,0x81,0x81,0x94,0x1b,0x00,0x29,0xc9,0x10,0x38,0x98,0x80,0xe4, + 0x52,0x0c,0x08,0xe1,0x82,0x39,0x3b,0xb8,0xa3,0xa7,0x5a,0x2a,0x1a,0xb0,0x91,0x81,0x21,0x09,0x29,0x9c, + 0x39,0x5c,0x1a,0x4a,0xc7,0x80,0x29,0x4a,0xb8,0xa6,0x08,0x40,0x0b,0xd0,0x18,0x83,0x90,0x99,0x11,0x96, + 0x00,0x1d,0x0b,0x93,0xe4,0x48,0x0a,0x28,0xf1,0x82,0x81,0x5a,0x1a,0x89,0xe2,0x02,0x19,0x19,0x9b,0x21, + 0xa1,0x96,0x18,0x88,0xba,0xa6,0x30,0x1a,0x3b,0xf0,0x90,0x22,0x79,0x89,0xb1,0xd3,0x10,0x39,0x8d,0xb4, + 0x91,0x21,0x2e,0x18,0x90,0xa6,0x00,0x2b,0x3d,0x99,0xb4,0x93,0x28,0x3d,0x8a,0xe3,0x92,0x18,0x29,0x0a, + 0x93,0x91,0x97,0x18,0x38,0x0d,0xb0,0xb2,0x20,0x8e,0x28,0x29,0x93,0xa4,0x71,0x91,0xa9,0xfa,0x08,0x08, + 0x30,0x81,0x81,0xa0,0x20,0x28,0x50,0xa0,0x80,0xba,0x19,0xaa,0x70,0x27,0x9b,0xcc,0x8c,0x82,0x22,0x14, + 0x08,0x90,0x0a,0x03,0x30,0x82,0x9d,0xc9,0x9a,0xa2,0x29,0x77,0x98,0xb9,0xae,0x21,0x38,0x33,0x90,0x91, + 0x9c,0x41,0x18,0x84,0xb9,0xa9,0x8e,0x10,0x80,0x77,0xa8,0x99,0xda,0x20,0x10,0x32,0xa1,0x80,0xaa,0x48, + 0x81,0x13,0xc9,0x0b,0xad,0x11,0x82,0x71,0x97,0x8a,0xea,0x19,0x01,0x41,0x92,0x09,0xb0,0x39,0x12,0x59, + 0xb8,0x9b,0xc0,0x28,0x12,0x7a,0x07,0x8c,0xa9,0x0d,0x03,0x11,0x03,0x0c,0x88,0x09,0x86,0x80,0x00,0x8d, + 0x80,0x90,0x04,0x0a,0x37,0xbc,0x98,0xbb,0x34,0x20,0x42,0xca,0x91,0x90,0x71,0x88,0x88,0xd0,0x18,0x18, + 0x39,0xb0,0x73,0xf3,0x89,0xa9,0x59,0x01,0x10,0xb1,0x09,0x81,0x49,0x93,0xaa,0xd3,0x1b,0x31,0x0b,0xa6, + 0x09,0x47,0x8e,0x88,0x9a,0x14,0x00,0x21,0xac,0x01,0xa0,0x34,0x99,0x1a,0xe9,0x20,0x81,0x39,0xb9,0x70, + 0xc6,0x8a,0xa0,0x5a,0x02,0x08,0xa2,0x0c,0x02,0x18,0x04,0xac,0x81,0x8a,0x42,0xa8,0x10,0xab,0x77,0xab, + 0x19,0x9c,0x24,0xa2,0x30,0xab,0x4b,0x93,0x11,0xd3,0x1d,0x80,0x19,0x84,0x9a,0x00,0x79,0xc6,0xa9,0x81, + 0x3a,0x33,0xaa,0xa4,0xaa,0x72,0x88,0x01,0xd8,0x18,0x08,0x28,0xb2,0x0a,0x39,0x67,0xac,0x09,0xa8,0x43, + 0xb3,0x19,0xa8,0x4b,0x04,0x88,0xa2,0x9d,0x21,0x90,0x03,0xba,0x2d,0x71,0xc6,0x9a,0x01,0x2a,0x42,0xc8, + 0x00,0x98,0x58,0x81,0x89,0xa1,0x8a,0x41,0x89,0x81,0xd8,0x28,0x57,0x9d,0x19,0xa0,0x21,0x03,0x0d,0x80, + 0x98,0x33,0x90,0x1b,0xb8,0x89,0x07,0x09,0x19,0xba,0x72,0xa7,0x9d,0x02,0x89,0x51,0xa0,0x89,0x82,0x19, + 0x32,0xba,0x80,0xb0,0x6a,0x01,0xaa,0x92,0x89,0x77,0xe9,0x2a,0x81,0x09,0x15,0xaa,0x18,0x91,0x10,0x84, + 0xaa,0x38,0x8a,0x48,0xa2,0xab,0x82,0x79,0x97,0xcd,0x12,0xa0,0x58,0x81,0xab,0x13,0x90,0x58,0x80,0x9b, + 0x82,0x90,0x40,0x98,0x9b,0x02,0x77,0xca,0x1c,0x02,0x98,0x23,0xb8,0x2d,0x01,0x80,0x03,0xc0,0x0a,0x20, + 0x88,0x83,0xc9,0x1b,0x77,0xc0,0x9d,0x03,0x90,0x40,0x91,0x9c,0x21,0x81,0x39,0x91,0xcb,0x11,0x82,0x28, + 0x09,0x8e,0x78,0xa6,0xbc,0x21,0x81,0x2a,0x04,0xca,0x28,0x12,0x09,0x01,0xf0,0x08,0x11,0x19,0x19,0xc9, + 0x71,0x94,0xbe,0x20,0x82,0x0a,0x23,0xe9,0x29,0x12,0x09,0x28,0xa8,0x8a,0x03,0x81,0x88,0xba,0x7a,0x27, + 0xdf,0x10,0x02,0x0a,0x11,0xa8,0x0a,0x14,0x00,0x19,0x89,0x9a,0x82,0x13,0x29,0x9f,0x73,0xd3,0xbd,0x22, + 0x82,0x0a,0x12,0xc9,0x19,0x33,0x81,0x8a,0x09,0x99,0x91,0x16,0x91,0x8e,0x47,0xd9,0x8c,0x31,0xa1,0x09, + 0x22,0xab,0x2a,0x25,0x80,0x8a,0x08,0x88,0x18,0x22,0xa0,0x1f,0x37,0xfa,0x0d,0x31,0x98,0x19,0x82,0xb9, + 0x28,0x15,0xa1,0x89,0x18,0x88,0x19,0x13,0xf0,0x72,0xa1,0xcf,0x20,0x82,0x98,0x20,0xa0,0xa9,0x42,0x23, + 0x9b,0x8a,0x82,0xa0,0x31,0x22,0x7d,0x95,0xfd,0x08,0x22,0x89,0x08,0x81,0x9a,0x38,0x24,0xa0,0x9a,0x38, + 0x08,0x1a,0x05,0x00,0x27,0xfd,0x0b,0x22,0x91,0x08,0x10,0xaa,0x88,0x26,0x02,0x9b,0x09,0x81,0x90,0x32, + 0x60,0x07,0xfc,0x0a,0x21,0x91,0x08,0x01,0xaa,0x1a,0x44,0x02,0x9a,0x0a,0x00,0x88,0x32,0x74,0xb4,0xde, + 0x19,0x21,0x80,0x08,0x91,0xab,0x39,0x36,0xa2,0xa9,0x09,0x18,0x28,0x33,0x67,0xc8,0xae,0x18,0x12,0x80, + 0x00,0xa8,0xaa,0x40,0x25,0x91,0x9a,0x88,0x08,0x30,0x25,0x17,0xdb,0x9e,0x10,0x11,0x80,0x00,0xa9,0x8a, + 0x42,0x14,0x80,0x99,0x89,0x19,0x31,0x73,0x87,0xdc,0x0a,0x11,0x00,0x11,0x88,0xbb,0x18,0x34,0x12,0x80, + 0xa9,0x9b,0x20,0x35,0x77,0xa9,0xae,0x00,0x01,0x10,0x81,0xb9,0x19,0x31,0x22,0x13,0xc0,0xaa,0x20,0x11, + 0x76,0x95,0xcd,0x88,0x80,0x28,0x31,0xa9,0x9a,0x20,0x11,0x44,0x02,0x9a,0x19,0x89,0x78,0x27,0xda,0x9a, + 0xa8,0x09,0x33,0xa1,0x09,0x81,0x8a,0x54,0x03,0x18,0x02,0xba,0x78,0x37,0xba,0x9b,0xda,0x9a,0x22,0x90, + 0x20,0x82,0x0b,0x34,0x92,0x31,0x84,0x99,0x32,0x77,0x96,0x9a,0xc9,0xba,0x18,0x98,0x28,0x22,0x18,0x44, + 0x02,0x21,0x13,0x89,0x11,0x76,0x93,0xbc,0xca,0xcb,0x88,0x88,0x19,0x21,0x10,0x35,0x13,0x32,0x33,0x88, + 0x10,0x78,0x37,0xda,0xaa,0xcc,0x8a,0x80,0x89,0x31,0x01,0x43,0x15,0x21,0x32,0x80,0x18,0x70,0x86,0xb9, + 0xca,0xdb,0x8a,0x89,0x0a,0x21,0x11,0x44,0x23,0x32,0x43,0x18,0x00,0x70,0x84,0xca,0xba,0xbe,0x9a,0x99, + 0x09,0x11,0x12,0x54,0x23,0x32,0x24,0x00,0x01,0x50,0x04,0xcb,0xdb,0xcc,0x8b,0x99,0x89,0x11,0x21,0x63, + 0x23,0x42,0x23,0x01,0x11,0x59,0x84,0xda,0xbb,0xce,0x9a,0x98,0x09,0x11,0x11,0x53,0x33,0x52,0x13,0x01, + 0x02,0x28,0x86,0xca,0xbc,0xcd,0xaa,0x98,0x89,0x02,0x11,0x63,0x32,0x33,0x15,0x12,0x01,0x08,0x15,0xc9, + 0xcb,0xec,0xaa,0x99,0x8a,0x01,0x10,0x42,0x33,0x44,0x33,0x31,0x22,0x88,0x45,0x99,0xbb,0xde,0xac,0xa9, + 0x9a,0x08,0x80,0x32,0x14,0x44,0x33,0x42,0x22,0x81,0x53,0x90,0x99,0xdd,0xbc,0xba,0x9c,0x89,0x88,0x22, + 0x22,0x45,0x32,0x33,0x24,0x11,0x51,0x83,0x90,0xcc,0xbe,0xbb,0xcb,0x99,0x89,0x20,0x32,0x44,0x43,0x23, + 0x14,0x12,0x21,0x25,0x00,0xc9,0xcd,0xbc,0xca,0x9a,0x89,0x18,0x21,0x43,0x24,0x33,0x24,0x21,0x11,0x44, + 0x11,0x90,0xdc,0xcc,0xbb,0xac,0xa9,0x88,0x11,0x43,0x34,0x34,0x23,0x13,0x02,0x41,0x11,0x90,0xfb,0xbd, + 0xbc,0xbb,0xab,0x9a,0x11,0x43,0x35,0x35,0x22,0x22,0x13,0x42,0x11,0x80,0xda,0xcd,0xcb,0xcb,0xaa,0x9a, + 0x88,0x21,0x53,0x43,0x43,0x32,0x22,0x41,0x24,0x01,0xb8,0xec,0xca,0xbb,0xbb,0xaa,0x09,0x00,0x15,0x24, + 0x43,0x32,0x23,0x61,0x87,0x00,0x98,0xab,0xbb,0xae,0x9b,0x1a,0x28,0x31,0x33,0x43,0x43,0x50,0x20,0xb0, + 0x77,0x0a,0x0b,0x8d,0x88,0x19,0x00,0x1b,0x91,0xb0,0x27,0x90,0x7c,0x1a,0xa1,0x94,0x02,0x3b,0xc0,0x00, + 0xf8,0x99,0xd4,0x11,0xb1,0x13,0xaa,0x7d,0xa1,0x20,0xb8,0x38,0xd0,0x22,0x8a,0x31,0xab,0x84,0x9e,0x93, + 0x1a,0x21,0x1b,0xa3,0x3f,0x2b,0x88,0x96,0x10,0x0d,0x09,0x12,0x96,0x88,0xa2,0x3c,0x5b,0x9b,0x91,0xc8, + 0x58,0x28,0x3a,0xf3,0x80,0x08,0x7b,0x98,0x02,0xb3,0x2a,0x0b,0xba,0xb0,0x72,0x81,0x41,0xc1,0x3a,0xc8, + 0x8a,0x92,0x2d,0x84,0x3a,0x94,0x8c,0x13,0x0b,0x23,0xe0,0x91,0x9f,0x19,0x81,0x62,0x20,0x90,0x91,0xaa, + 0x0f,0xa1,0x98,0x03,0x8d,0x32,0x08,0x63,0xa2,0x08,0xb1,0x9f,0x98,0x88,0x42,0x10,0x00,0xc1,0x0a,0x9b, + 0x80,0x25,0x25,0x0a,0x93,0xab,0xac,0xec,0x09,0x21,0x40,0x14,0x81,0x90,0x38,0xba,0xaa,0xb1,0x8f,0x00, + 0x90,0x31,0x80,0x28,0x92,0x1a,0x14,0x88,0x61,0x90,0x89,0xf9,0x76,0x99,0xaa,0xb0,0x0c,0x31,0x01,0x25, + 0x80,0x0a,0xa9,0x19,0x14,0x10,0x02,0xbc,0xba,0xe9,0x77,0xa1,0xba,0xa0,0x0e,0x11,0x02,0x33,0x88,0x9b, + 0xa0,0x09,0x35,0x81,0x00,0xdb,0x8d,0x88,0x78,0x86,0xaa,0x89,0x9b,0x30,0x05,0x11,0x82,0xba,0x80,0x80, + 0x70,0x81,0x98,0x98,0xab,0x08,0x61,0x57,0xaa,0x8c,0xaa,0x28,0x43,0x10,0x02,0xc8,0x89,0x82,0x30,0x43, + 0xb9,0xb9,0xea,0x1a,0x12,0x77,0x98,0xac,0xa8,0x18,0x52,0x01,0x00,0xa8,0x0b,0x21,0x03,0x24,0xb8,0x9f, + 0x89,0x88,0x22,0x72,0x96,0xdb,0x0a,0x89,0x31,0x15,0x08,0x88,0xb9,0x20,0x43,0x18,0xa0,0xfa,0x0a,0x00, + 0x01,0x83,0x67,0xba,0xad,0x81,0x28,0x52,0x81,0x99,0x88,0x09,0x33,0x84,0x89,0xbb,0xac,0x30,0x12,0x00, + 0x29,0x77,0xea,0x0c,0x00,0x00,0x43,0x88,0x8a,0x80,0x08,0x43,0x91,0x9a,0x8b,0x8c,0x22,0x02,0x8a,0x7b, + 0x17,0xdd,0x19,0x00,0x10,0x23,0x99,0x8b,0x91,0x12,0x44,0xa0,0xbb,0x98,0x19,0x42,0xa1,0xc9,0x7a,0x17, + 0xdc,0x09,0x01,0x00,0x23,0xa8,0x9a,0x11,0x21,0x52,0xb0,0xdb,0x08,0x28,0x11,0xc2,0xb9,0x5b,0x67,0xc9, + 0x8c,0x11,0x81,0x20,0x81,0xab,0x18,0x23,0x31,0x89,0xbc,0x8a,0x31,0x32,0xc0,0xeb,0x89,0x74,0x97,0xbc, + 0x18,0x12,0x08,0x11,0xb0,0x9b,0x51,0x22,0x90,0x8a,0x8b,0x8b,0x43,0x85,0xba,0x8c,0x10,0x77,0xa0,0x9f, + 0x10,0x02,0x08,0x00,0xa8,0x8a,0x42,0x12,0xb9,0x99,0x80,0x80,0x31,0x12,0xce,0x8a,0x13,0x77,0xa8,0xae, + 0x11,0x02,0x80,0x00,0x98,0x9b,0x52,0x13,0xc8,0x8a,0x00,0x80,0x20,0x02,0xeb,0x9a,0x13,0x67,0x91,0xbf, + 0x18,0x22,0x80,0x08,0x90,0xb9,0x30,0x35,0xa0,0xab,0x00,0x88,0x29,0x24,0xd8,0x9c,0x38,0x51,0x27,0xf9, + 0x9b,0x30,0x03,0x88,0x08,0x98,0x8b,0x72,0x12,0xb9,0x9a,0x20,0x08,0x01,0xa3,0xe9,0x8b,0x41,0x32,0x47, + 0xf9,0x8d,0x20,0x02,0x90,0x08,0x88,0x8a,0x41,0x04,0xb9,0x0a,0x38,0x80,0x90,0x93,0xc9,0x0d,0x30,0x83, + 0x67,0xb0,0xbf,0x28,0x23,0x90,0x89,0x00,0x9a,0x20,0x17,0x91,0x9c,0x19,0x12,0x90,0x08,0x88,0xac,0x19, + 0x15,0x71,0x04,0xfc,0x9a,0x32,0x02,0x99,0x08,0x80,0x89,0x51,0x03,0xd8,0x9a,0x31,0x01,0x99,0x88,0xa0, + 0xaa,0x58,0x32,0x79,0x17,0xfa,0x8c,0x21,0x03,0x99,0x88,0x80,0x89,0x50,0x23,0xc9,0x9b,0x30,0x12,0x99, + 0x09,0x98,0xbb,0x38,0x27,0x88,0x77,0xc8,0xad,0x38,0x14,0xa0,0x8a,0x20,0x08,0x09,0x24,0xa2,0xbc,0x29, + 0x24,0xa0,0xaa,0x00,0xa0,0x0b,0x61,0xa2,0x70,0x87,0xdc,0x0a,0x33,0x82,0xab,0x18,0x01,0x89,0x42,0x14, + 0xda,0x8a,0x31,0x02,0xaa,0x09,0x80,0xbb,0x30,0x35,0xc9,0x79,0x27,0xdd,0x8a,0x33,0x82,0xaa,0x10,0x81, + 0x99,0x51,0x13,0xc9,0xab,0x23,0x84,0x9a,0x19,0xa8,0xbb,0x42,0x16,0xaa,0x1c,0x77,0xb0,0x9e,0x28,0x13, + 0xa8,0x09,0x11,0x99,0x19,0x35,0xa1,0xac,0x18,0x23,0xa8,0x0b,0x00,0xd8,0x99,0x52,0x00,0xbb,0x79,0x37, + 0xfa,0x8b,0x31,0x02,0xa9,0x18,0x01,0xaa,0x50,0x24,0xc0,0xab,0x30,0x12,0xa9,0x08,0x91,0xeb,0x08,0x24, + 0x90,0x9c,0x59,0x47,0xc8,0x9e,0x20,0x12,0x99,0x18,0x81,0xaa,0x39,0x36,0xa0,0xbb,0x20,0x12,0x99,0x18, + 0x92,0xcd,0x1a,0x33,0x91,0xbc,0x00,0x76,0x86,0xcc,0x0a,0x23,0x91,0x09,0x10,0xa8,0x1b,0x73,0x02,0xc9, + 0x09,0x11,0x88,0x08,0x81,0xc8,0x8c,0x48,0x01,0xb8,0x98,0x10,0x77,0xa3,0xcf,0x18,0x22,0x88,0x09,0x01, + 0xb9,0x18,0x35,0x82,0xac,0x09,0x12,0x98,0x00,0x01,0xeb,0x9b,0x42,0x01,0xba,0x08,0x00,0x78,0x77,0xd9, + 0x9a,0x22,0x02,0x99,0x10,0x98,0x9a,0x61,0x13,0xc8,0x9a,0x21,0x81,0x89,0x21,0xd8,0xab,0x48,0x22,0xba, + 0x9a,0x02,0xb0,0x77,0x07,0xcc,0x0a,0x23,0x81,0x89,0x01,0xb9,0x0a,0x55,0x01,0xba,0x88,0x02,0x08,0x39, + 0x01,0xfb,0x9a,0x32,0x81,0x9a,0x09,0xa0,0xa8,0x74,0x77,0xda,0x8a,0x22,0x81,0x08,0x10,0xb9,0x9a,0x54, + 0x03,0xba,0x09,0x01,0x98,0x30,0x84,0xfa,0x99,0x21,0x01,0x9a,0x19,0xb0,0xaa,0x54,0x72,0x17,0xdc,0x0a, + 0x22,0x80,0x08,0x01,0xc9,0x1a,0x53,0x02,0xaa,0x89,0x80,0x00,0x42,0x91,0xcc,0x8a,0x12,0x81,0x19,0x89, + 0xbc,0x08,0x44,0x60,0x47,0xe9,0x8c,0x20,0x01,0x08,0x00,0xa8,0x9b,0x63,0x03,0xb8,0x88,0x80,0x99,0x42, + 0x03,0xcc,0x9a,0x11,0x80,0x19,0x01,0xea,0x8a,0x23,0xa3,0x77,0x97,0xdb,0x08,0x02,0x80,0x20,0x90,0xbb, + 0x38,0x35,0x80,0x89,0x90,0xaa,0x38,0x16,0xc0,0xa9,0x00,0x8b,0x39,0x83,0xd8,0x89,0x59,0x3a,0x18,0x73, + 0x57,0xfb,0x89,0x02,0x08,0x20,0x91,0xba,0x29,0x43,0x00,0x01,0xb0,0xab,0x30,0x33,0x99,0x9b,0xbd,0x9b, + 0x12,0x94,0xc0,0x89,0x9a,0x02,0x07,0x02,0x77,0xa7,0x9d,0x18,0x88,0x21,0x12,0xab,0x1b,0x11,0x03,0x15, + 0x80,0x9c,0x88,0x83,0x02,0x08,0x8e,0x0c,0x88,0x82,0xa2,0xaa,0x8a,0x09,0x23,0x07,0x80,0x77,0xa7,0x9d, + 0x00,0x88,0x21,0x02,0x9b,0x09,0x01,0x31,0x24,0x88,0x9b,0x9a,0x00,0x22,0x00,0x9e,0xab,0x98,0x11,0x21, + 0x8b,0x9b,0x0a,0x72,0x30,0xa2,0x77,0x27,0xbf,0x00,0xa8,0x40,0x83,0xb9,0x10,0x98,0x58,0x13,0xa0,0x18, + 0x9a,0x2a,0x04,0xb1,0x98,0x8c,0x0d,0x00,0x80,0x88,0x8a,0x0c,0x82,0x96,0x02,0x79,0x77,0xc8,0x8a,0x98, + 0x2a,0x24,0xa0,0x08,0xa0,0x2a,0x54,0x08,0x80,0xa0,0x0b,0x22,0x88,0x01,0xf9,0x8a,0x00,0x89,0x11,0xd0, + 0x98,0x01,0x29,0x78,0x88,0x76,0x95,0x9c,0xa8,0xaa,0x42,0x01,0x29,0x91,0xaa,0x34,0x82,0x48,0x00,0x9d, + 0x01,0xb0,0x10,0x80,0x0f,0x08,0xa9,0x01,0xa2,0x29,0x20,0x8c,0x11,0xc2,0x82,0x77,0x07,0x0a,0xcb,0xab, + 0x82,0x90,0x31,0x88,0x49,0x05,0x02,0x33,0x08,0x3a,0x90,0xc9,0x92,0xcc,0x1b,0x9c,0x9b,0xa1,0xa8,0x13, + 0x83,0x71,0x32,0x01,0x77,0x07,0x88,0xa8,0xbc,0x8a,0xb9,0x09,0x01,0x10,0x44,0x22,0x53,0x13,0x11,0x12, + 0xa9,0x99,0xfb,0xab,0xba,0x9d,0x8a,0xa9,0x00,0x23,0x43,0x63,0x21,0x31,0x77,0x81,0x00,0xba,0xac,0xb9, + 0xbc,0x88,0x9a,0x28,0x13,0x43,0x36,0x22,0x43,0x12,0x20,0x81,0xa9,0xa8,0xbe,0xab,0xbc,0xac,0xb9,0xba, + 0x08,0x08,0x40,0x75,0x27,0x10,0x81,0xab,0x9a,0xdb,0x9a,0xb0,0x89,0x21,0x29,0x73,0x02,0x23,0x15,0x11, + 0x22,0x80,0x00,0xc8,0xaa,0xca,0xad,0xaa,0xcb,0xaa,0xb8,0x09,0x48,0x77,0x04,0x21,0xb9,0xab,0xd9,0x9d, + 0x88,0x8a,0x11,0x02,0x53,0x24,0x31,0x33,0x01,0x82,0xa1,0x8a,0x8d,0x9d,0xb9,0xca,0xa9,0x9b,0x8c,0x99, + 0xa0,0xa4,0x77,0x06,0x10,0xa0,0xab,0xa9,0x9f,0x89,0x99,0x00,0x03,0x42,0x34,0x21,0x15,0x82,0x12,0x80, + 0x0a,0xba,0xcc,0xb9,0xac,0x9b,0x9c,0x9a,0xb1,0x31,0x11,0x77,0x07,0x10,0x90,0xab,0xa9,0xae,0x98,0x99, + 0x10,0x11,0x52,0x33,0x32,0x25,0x11,0x22,0x90,0x08,0xca,0x9c,0xda,0xbb,0xb9,0xcb,0x89,0xa9,0x28,0x20, + 0x77,0x07,0x11,0xa8,0x9a,0xc9,0x9c,0x98,0x9a,0x11,0x10,0x44,0x22,0x43,0x33,0x21,0x13,0x98,0x80,0xcc, + 0x9b,0xcc,0xab,0xba,0x9c,0x0a,0x9b,0x11,0x78,0x67,0x10,0x01,0xaa,0x99,0xcc,0x9a,0xa9,0x0a,0x11,0x21, + 0x27,0x22,0x43,0x12,0x22,0x82,0x08,0xa8,0xbc,0xb8,0xcd,0x8a,0xcb,0x8b,0xba,0x99,0xa1,0x77,0x05,0x11, + 0xa1,0xaa,0xba,0xaf,0x99,0xaa,0x01,0x02,0x62,0x22,0x42,0x14,0x11,0x22,0x08,0x18,0xab,0xab,0xfb,0xaa, + 0xaa,0xab,0xa9,0xaa,0x80,0x73,0x77,0x10,0x81,0xab,0xa9,0xbd,0x9a,0xba,0x19,0x02,0x60,0x33,0x42,0x34, + 0x21,0x32,0x81,0x01,0xb1,0x9b,0xbb,0xbf,0xb9,0xcb,0x99,0x9b,0x0b,0x7b,0x87,0x08,0x08,0x08,0x08,0x08, + 0x08,0x08,0x80,0x08,0x08,0x80,0x08,0x80,0x08,0x08,0x08,0x08,0x08,0x80,0x80,0x80,0x80,0x80,0x90,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip soundOnClip = { + soundOnData, sizeof(soundOnData), 6229, 8000 +}; +// "Sound off" +static const uint8_t soundOffData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x77,0xf0,0x97,0xec,0x4f,0x22,0x1d,0x88,0xa9,0x04,0x82,0x1e,0x48,0x8c,0x84,0xb8,0x82,0x4b,0x02,0xaa, + 0xb0,0x68,0x80,0x11,0x8d,0xb5,0x29,0x01,0x29,0xab,0xf4,0x84,0x08,0x3d,0x89,0x82,0xb3,0x29,0x2e,0x5b, + 0xb0,0xb4,0x93,0x5b,0x1a,0xb0,0xb5,0x00,0x40,0x8b,0xa1,0xc4,0x11,0x1b,0x7b,0xb8,0x93,0x82,0x80,0x38, + 0x2f,0x89,0xd2,0xa2,0x12,0x1b,0x10,0x99,0xe3,0x11,0x29,0xc1,0x08,0xb4,0x7a,0xb8,0x92,0xc4,0x10,0x18, + 0x2d,0x88,0x12,0xa8,0x20,0xae,0x24,0xa9,0x01,0x2d,0x82,0x80,0xa9,0x5a,0x18,0xc2,0x4a,0x89,0x00,0xa2, + 0x80,0x21,0xd9,0x08,0x8f,0x15,0x48,0x8e,0x38,0xc0,0xa5,0x80,0x2a,0x49,0x9a,0xa5,0xb2,0x58,0x2d,0x90, + 0xa0,0x96,0x39,0x1b,0x89,0xd2,0x94,0x08,0x28,0x1b,0xb0,0x94,0x81,0xa1,0x4a,0xb1,0x79,0xc8,0x82,0xd1, + 0x21,0x29,0x2b,0x89,0x88,0x92,0xb4,0x92,0x29,0xaa,0x49,0x6a,0x3c,0x5d,0xd1,0x80,0x10,0x29,0x39,0x9d, + 0x41,0xb8,0xb5,0x81,0x2a,0x6c,0x89,0x18,0xa0,0x01,0x2b,0x00,0x30,0x0f,0x11,0xaa,0x97,0x2a,0x19,0x4a, + 0x9b,0x43,0xdb,0x14,0xc8,0x92,0x08,0x84,0x1b,0xa1,0x0c,0x87,0x89,0x91,0x49,0xa0,0x91,0xc0,0x12,0x90, + 0x6b,0x88,0x4b,0xb2,0x2a,0x29,0x88,0x03,0x8f,0xa6,0x1a,0x02,0x09,0xc8,0xd5,0x03,0x19,0x2e,0xb0,0x83, + 0xb7,0x28,0x3b,0x1b,0x91,0xc4,0x18,0x30,0x1f,0x00,0xa9,0xa3,0x20,0xb3,0x2a,0xd0,0x7b,0xa2,0x89,0xc2, + 0x83,0x90,0x79,0xa9,0xb1,0x04,0xe3,0x91,0x81,0x2a,0x10,0xe0,0x81,0xb4,0x5a,0x18,0x1c,0xa0,0x82,0x82, + 0x4d,0x8a,0x20,0xc1,0x49,0x2a,0x2b,0xb0,0x80,0xb7,0x18,0x10,0x18,0x3a,0x0e,0x01,0xa9,0x13,0xc3,0xc8, + 0xa2,0x60,0xa0,0xc2,0xb1,0x03,0x10,0xf1,0x01,0x98,0x72,0x9d,0x32,0xab,0x96,0x1b,0x10,0x49,0xe0,0xa3, + 0x18,0x20,0x1e,0xe3,0x92,0x81,0x2a,0x88,0xc2,0x93,0x09,0x21,0xf8,0x82,0x91,0x39,0x8b,0x79,0x88,0x89, + 0xb1,0xa6,0x28,0x38,0x9d,0x02,0xf3,0x01,0x80,0x3b,0x0a,0x32,0xab,0x11,0xae,0x26,0x9a,0x28,0x2d,0x93, + 0xa9,0xb2,0x6c,0x00,0x81,0x0f,0x40,0x2b,0xa8,0xb2,0x81,0x22,0x2e,0x90,0xf3,0xa3,0x39,0x3a,0x0b,0xd3, + 0xb6,0x29,0x81,0x4b,0xe8,0x82,0x81,0x11,0x2c,0x3c,0xa8,0xa3,0x59,0x89,0x80,0xf2,0x20,0x09,0x18,0xb0, + 0x10,0x02,0x32,0xbf,0x78,0x0a,0xc2,0xa2,0x18,0x30,0x0d,0xb3,0xe4,0x82,0x5b,0x19,0x89,0xd4,0x81,0x30, + 0x2c,0x8a,0x90,0x95,0x18,0x2b,0x2b,0xa2,0xb5,0x5b,0x2a,0x39,0xf3,0x19,0xb2,0x60,0x9c,0x01,0x91,0x85, + 0x1c,0x80,0x18,0xb8,0x10,0x38,0x98,0x90,0xc5,0x70,0x0b,0x88,0xe3,0x82,0x29,0x2a,0xd1,0x92,0x94,0x5c, + 0x1a,0x88,0xc2,0x81,0x08,0x10,0x08,0x19,0x9a,0x39,0x4b,0x09,0x09,0xa7,0x18,0x3d,0x5b,0xe1,0xa4,0x08, + 0x68,0x8a,0xc1,0x18,0x02,0x90,0x99,0x20,0x84,0x18,0x1f,0x8a,0x82,0xd3,0x69,0x0a,0x18,0xf2,0x01,0x00, + 0x5a,0x0a,0x90,0xd2,0x11,0x19,0x19,0xba,0x21,0xb2,0x87,0x08,0x90,0xb9,0x94,0x69,0x1a,0x09,0xe2,0x80, + 0x20,0x79,0x98,0xb1,0xa2,0x4a,0x3a,0xbb,0xa7,0x80,0x40,0x1d,0x00,0xa1,0x95,0x08,0x2b,0x2d,0xa0,0xa4, + 0x82,0x4a,0x2c,0x99,0xc3,0x81,0x29,0x3a,0x8a,0x95,0x91,0x85,0x29,0x49,0x8c,0xb1,0xa1,0x49,0x9c,0x38, + 0x09,0x96,0x82,0x78,0x80,0x99,0xe9,0x09,0x00,0x20,0x92,0x01,0xa0,0x28,0x28,0x40,0xb1,0x81,0xbb,0x09, + 0xb9,0x60,0x77,0x8b,0xaa,0x8d,0x01,0x21,0x13,0x08,0x90,0x0a,0x13,0x30,0x84,0x9c,0xd9,0x9a,0x91,0x19, + 0x77,0xa0,0xb8,0xae,0x11,0x20,0x33,0x90,0x91,0x8c,0x30,0x10,0x05,0xc9,0x99,0x8c,0x28,0x80,0x75,0xc2, + 0x99,0xdb,0x28,0x20,0x42,0x91,0x08,0xaa,0x38,0x82,0x33,0xd9,0x0c,0xbb,0x11,0x83,0x78,0x07,0x8b,0xfa, + 0x1a,0x01,0x41,0x82,0x89,0xa0,0x2a,0x13,0x38,0xc1,0xac,0xb0,0x3a,0x14,0x4a,0x57,0x8d,0x99,0x8c,0x13, + 0x10,0x04,0x8b,0x80,0x89,0x06,0x80,0x00,0x9d,0x80,0x90,0x14,0x0a,0x65,0xbb,0x88,0xcb,0x42,0x28,0x31, + 0xe8,0x00,0x88,0x58,0x88,0x80,0xc8,0x18,0x18,0x39,0xb1,0x79,0xa7,0x0b,0x99,0x1c,0x04,0x10,0x82,0x8c, + 0x01,0x89,0x06,0x99,0x00,0x8c,0x20,0x98,0x84,0xc8,0x75,0xaa,0x88,0xc9,0x41,0x00,0x38,0xc8,0x80,0x81, + 0x58,0x80,0x8a,0xc1,0x19,0x21,0x1a,0xa1,0x5c,0x87,0x8d,0x88,0x0b,0x06,0x80,0x11,0x9c,0x11,0x90,0x32, + 0xaa,0x1a,0xb9,0x41,0xa3,0x2b,0xf0,0x74,0xc8,0x0a,0xb0,0x40,0x83,0x29,0xb0,0x0c,0x04,0x08,0x83,0x9d, + 0x10,0x89,0x23,0xd8,0x18,0x6b,0x97,0xba,0x18,0x0c,0x24,0xb1,0x01,0xaa,0x69,0x81,0x00,0xb0,0x0b,0x01, + 0x08,0x86,0x8b,0x19,0x76,0xb9,0x8b,0xa1,0x58,0x03,0x8a,0x80,0x0c,0x33,0xa0,0x82,0xdb,0x39,0x81,0x11, + 0xb1,0x0f,0x79,0x96,0xab,0x28,0x0b,0x42,0xb2,0x09,0x88,0x3b,0x07,0xa8,0x01,0x9b,0x48,0xa1,0x00,0xb0, + 0x0c,0x77,0xc8,0x8a,0xa3,0x18,0x43,0x9b,0x08,0xb1,0x60,0x10,0x8b,0xa1,0xa8,0x43,0x89,0x2a,0xd8,0x69, + 0x07,0xbc,0x38,0xa8,0x40,0x93,0xab,0x12,0x99,0x53,0xb1,0x8a,0x81,0x1d,0x13,0xc8,0x00,0xb8,0x75,0xd2, + 0x8d,0x02,0x98,0x42,0xa8,0x8a,0x83,0x08,0x43,0xb9,0x2b,0x80,0x3b,0x05,0xca,0x00,0x59,0x17,0xec,0x18, + 0x81,0x2a,0x13,0xca,0x28,0x81,0x39,0x03,0xdb,0x10,0x90,0x28,0x82,0xac,0x00,0x76,0xb0,0x9f,0x02,0x90, + 0x30,0x81,0x9d,0x12,0x91,0x11,0x91,0x9c,0x20,0x80,0x10,0xa0,0x8d,0x79,0x07,0xeb,0x18,0x10,0x1a,0x13, + 0xd9,0x19,0x12,0x09,0x02,0xd0,0x09,0x21,0x09,0x10,0xb9,0x8b,0x77,0xc8,0x0d,0x12,0xa8,0x22,0xa1,0x8d, + 0x31,0x91,0x80,0xa3,0x9b,0x69,0x08,0x88,0xa1,0xb8,0x74,0xc3,0x9f,0x11,0x91,0x18,0x12,0xac,0x28,0x03, + 0x08,0x00,0xb9,0x09,0x84,0x81,0x80,0x9d,0x72,0xa7,0x9e,0x20,0x81,0x09,0x12,0xc9,0x08,0x23,0x08,0x19, + 0xb9,0x90,0x22,0x59,0x0a,0xea,0x73,0xb4,0xaf,0x21,0x81,0x89,0x12,0xb8,0x0a,0x24,0x81,0x09,0x99,0x98, + 0x02,0x32,0x09,0xaf,0x57,0xc8,0x9d,0x31,0x91,0x09,0x21,0xba,0x19,0x34,0x81,0x9a,0x08,0x88,0x08,0x43, + 0xb0,0x8f,0x47,0xf9,0x0b,0x32,0x98,0x19,0x02,0xaa,0x2a,0x25,0x91,0x99,0x08,0x80,0x89,0x05,0xd2,0x79, + 0x93,0xcf,0x18,0x03,0x98,0x28,0xa1,0xa9,0x41,0x32,0xa9,0x9a,0x82,0x80,0x49,0x21,0xba,0x77,0xf9,0x0b, + 0x31,0x91,0x89,0x12,0xaa,0x0a,0x26,0x82,0x9a,0x2a,0x80,0xa0,0x33,0x81,0x76,0xd9,0x9e,0x20,0x02,0x0a, + 0x10,0xb1,0x9a,0x62,0x12,0xa9,0x89,0x01,0x98,0x38,0x04,0x72,0xc2,0xdf,0x18,0x12,0x88,0x18,0x90,0xaa, + 0x40,0x24,0x90,0xaa,0x00,0x80,0x10,0x14,0x73,0xc1,0xdf,0x00,0x12,0x88,0x18,0x88,0xaa,0x31,0x34,0x90, + 0xaa,0x08,0x00,0x20,0x24,0x57,0xca,0xaf,0x11,0x82,0x80,0x00,0xa8,0x9a,0x51,0x23,0x90,0xaa,0x08,0x01, + 0x20,0x61,0x27,0xdc,0x8c,0x20,0x81,0x00,0x00,0xb9,0x89,0x43,0x14,0x88,0x99,0x89,0x08,0x23,0x74,0x96, + 0xfb,0x0a,0x10,0x00,0x11,0x90,0xaa,0x08,0x24,0x22,0x80,0xa9,0xa9,0x48,0x31,0x75,0xb3,0xcf,0x0a,0x01, + 0x20,0x12,0xb9,0x8b,0x12,0x13,0x34,0x81,0x9d,0x19,0x10,0x70,0x17,0xea,0x8a,0x08,0x08,0x31,0x91,0x9a, + 0x00,0x80,0x51,0x22,0x99,0x00,0x98,0x09,0x77,0xa3,0xae,0x88,0x9a,0x20,0x13,0x99,0x00,0x98,0x49,0x15, + 0x91,0x12,0x90,0x1b,0x72,0x27,0xca,0xa9,0xbb,0x1a,0x21,0x88,0x22,0xa1,0x29,0x26,0x10,0x41,0x30,0x81, + 0xa2,0x77,0xb2,0x9c,0xba,0xad,0x18,0x90,0x28,0x13,0x10,0x63,0x11,0x10,0x03,0x98,0x10,0x78,0x37,0xba, + 0xab,0xcd,0x8b,0x08,0x99,0x21,0x03,0x42,0x25,0x11,0x32,0x81,0x08,0xa1,0x77,0xa1,0xbb,0xca,0xad,0x88, + 0x98,0x00,0x22,0x30,0x54,0x12,0x31,0x02,0x80,0x81,0x7a,0x05,0xca,0xab,0xdc,0x9a,0x90,0x88,0x21,0x11, + 0x53,0x24,0x21,0x33,0x81,0x00,0xb8,0x56,0xb0,0xad,0xcb,0xbc,0x89,0x98,0x28,0x22,0x41,0x35,0x13,0x43, + 0x02,0x00,0x81,0x3c,0x07,0xda,0xaa,0xbc,0x9c,0x88,0x89,0x22,0x11,0x63,0x33,0x41,0x23,0x00,0x01,0xba, + 0x73,0xa1,0xbc,0xfb,0xac,0x89,0x99,0x10,0x11,0x31,0x26,0x22,0x53,0x01,0x11,0x90,0x2a,0x87,0xba,0xbb, + 0xcf,0x9a,0x98,0x09,0x12,0x28,0x63,0x21,0x33,0x05,0x11,0x02,0x8a,0x62,0xb8,0xba,0xfc,0x9c,0x99,0x99, + 0x01,0x81,0x32,0x23,0x73,0x23,0x21,0x23,0x90,0x40,0x94,0x9a,0xec,0xcc,0xaa,0xaa,0x08,0x08,0x20,0x33, + 0x63,0x24,0x23,0x24,0x01,0x01,0x30,0x82,0xda,0xdd,0xbc,0xbb,0xba,0x89,0x08,0x22,0x44,0x43,0x43,0x33, + 0x23,0x12,0x00,0x53,0x81,0xc9,0xed,0xbb,0xbc,0xaa,0x99,0x18,0x31,0x43,0x35,0x33,0x43,0x13,0x12,0x01, + 0x25,0x00,0xca,0xed,0xbb,0xcb,0x9b,0x8a,0x18,0x32,0x44,0x43,0x33,0x23,0x13,0x11,0x09,0x25,0x00,0xb8, + 0xdf,0xac,0xbc,0xaa,0x9a,0x08,0x21,0x53,0x34,0x24,0x24,0x11,0x11,0x08,0x13,0x80,0xea,0xea,0xaa,0xbe, + 0xaa,0xaa,0x18,0x11,0x34,0x34,0x34,0x23,0x22,0x02,0x08,0x23,0x01,0x98,0xef,0xca,0xcb,0xab,0xbb,0x99, + 0x00,0x43,0x53,0x43,0x33,0x23,0x04,0x82,0x74,0x88,0x90,0xca,0xba,0xbc,0xab,0x9a,0x09,0x20,0x31,0x70, + 0x41,0x31,0x23,0x33,0x21,0x7d,0xa7,0x98,0xc9,0x09,0x99,0x20,0x8b,0x01,0x88,0x42,0x4a,0x82,0x03,0x22, + 0x5c,0xb0,0xd5,0x74,0x9b,0x98,0x9a,0x02,0x0a,0xb3,0x10,0x13,0x79,0x80,0x82,0xd3,0x93,0xa0,0x82,0xac, + 0xf4,0x86,0x2b,0x1b,0xab,0xb5,0x11,0x28,0x4a,0xb1,0x04,0x00,0x38,0xc8,0x93,0x89,0x3a,0x0f,0xa8,0x37, + 0x0c,0x0a,0xbc,0xa2,0x18,0x23,0x00,0x87,0x00,0x21,0x3d,0x08,0x98,0xc3,0x08,0x1b,0x9c,0x47,0x8c,0x90, + 0xbb,0x81,0x0a,0x34,0x28,0x24,0x08,0x02,0x99,0x84,0x99,0x81,0x8d,0x98,0xbb,0x71,0xb7,0xa1,0xf8,0x1a, + 0x89,0x30,0x84,0x32,0x82,0x18,0xa0,0x8a,0xa1,0x3b,0x0a,0xad,0xe3,0x99,0x77,0x0b,0x88,0xdb,0x81,0x88, + 0x50,0x00,0x12,0x82,0x28,0x99,0x89,0xb2,0x19,0x8a,0x8d,0xb8,0x7c,0x97,0x98,0xb8,0x8d,0x80,0x20,0x15, + 0x02,0x02,0x99,0x0a,0x8a,0x00,0xa3,0x81,0x9c,0x8e,0xaa,0x73,0x97,0x98,0xd8,0x8a,0x20,0x10,0x25,0x01, + 0x80,0x9a,0x89,0x00,0x11,0x88,0xad,0xcb,0x99,0x21,0x77,0x90,0x9b,0xe9,0x00,0x41,0x30,0x82,0xb8,0x89, + 0x0a,0x11,0x04,0xa9,0xad,0xaa,0x01,0x63,0x10,0x37,0xda,0x8d,0x80,0x10,0x42,0x00,0xa9,0xa8,0x18,0x42, + 0x91,0xb9,0x8b,0x0c,0x22,0x05,0x98,0x9a,0x77,0xb0,0x9f,0x01,0x01,0x20,0x01,0xd9,0x08,0x11,0x18,0x00, + 0xc8,0x9a,0x30,0x11,0x00,0xb8,0xd9,0x74,0x85,0xbe,0x18,0x12,0x18,0x11,0xc0,0x8b,0x40,0x01,0x80,0xa0, + 0xbc,0x29,0x24,0x01,0x8a,0x9b,0x7a,0x27,0xfb,0x0a,0x21,0x81,0x01,0x81,0xac,0x28,0x23,0x90,0x99,0xba, + 0x8a,0x44,0x02,0x9a,0x8c,0x49,0x77,0xb9,0x8e,0x20,0x82,0x00,0x00,0xb9,0x09,0x34,0x00,0x9b,0xb9,0x98, + 0x62,0x02,0xc8,0xa9,0x00,0x74,0x94,0xdd,0x08,0x22,0x00,0x80,0xa0,0x9a,0x30,0x15,0xa8,0x9a,0x0a,0x00, + 0x14,0x81,0xbb,0x0c,0x61,0x37,0xe9,0x8d,0x20,0x02,0x80,0x08,0xa9,0x88,0x53,0x00,0xba,0x99,0x10,0x30, + 0x12,0xd8,0x9b,0x39,0x76,0x94,0xcd,0x09,0x32,0x01,0x98,0xa0,0x8a,0x40,0x04,0xa0,0xab,0x09,0x12,0x13, + 0xa0,0x9e,0x0a,0x04,0x77,0x98,0xae,0x18,0x23,0x00,0x99,0x98,0x09,0x51,0x82,0xc8,0x8a,0x18,0x11,0x02, + 0x99,0xac,0x00,0x15,0x47,0xb8,0xcf,0x10,0x23,0x90,0x98,0x98,0x19,0x32,0x84,0xca,0x8a,0x28,0x22,0x82, + 0xcc,0x9a,0x32,0x04,0x47,0xc8,0xaf,0x10,0x33,0x88,0xa9,0x88,0x18,0x42,0x92,0xda,0x89,0x20,0x11,0x81, + 0xca,0x0b,0x31,0x14,0x72,0xa4,0xdf,0x19,0x33,0x80,0xa9,0x88,0x08,0x32,0x13,0xeb,0x9a,0x11,0x22,0x80, + 0xca,0x9a,0x40,0x13,0x81,0x77,0xca,0x9e,0x31,0x13,0x99,0x8a,0x90,0x20,0x43,0xa8,0xdb,0x18,0x31,0x81, + 0xc9,0x8b,0x38,0x23,0x93,0x7b,0x17,0xfb,0x0d,0x31,0x82,0x99,0x09,0x08,0x11,0x23,0xc9,0x9c,0x20,0x12, + 0x88,0xaa,0xa9,0x40,0x51,0x88,0x6a,0x07,0xfa,0x0c,0x22,0x83,0x9a,0x09,0x80,0x11,0x23,0xc9,0xcb,0x30, + 0x42,0x98,0xc9,0x88,0x38,0x12,0xa1,0x0b,0x77,0xd0,0x9e,0x21,0x13,0xa9,0x89,0x01,0x28,0x21,0xc1,0xbb, + 0x38,0x33,0xc1,0x99,0x0b,0x08,0x06,0x01,0x9c,0x70,0x87,0xdc,0x19,0x33,0x91,0xaa,0x18,0x08,0x12,0x13, + 0xcc,0x9b,0x43,0x02,0xaa,0xa9,0x00,0x31,0x13,0xd9,0xab,0x77,0xa4,0xbf,0x20,0x33,0xa8,0xaa,0x11,0x10, + 0x18,0x01,0xbb,0x0c,0x33,0x84,0xbb,0x8a,0x11,0x13,0x20,0xad,0xb9,0x77,0x96,0xaf,0x28,0x33,0xa8,0x9b, + 0x10,0x11,0x20,0x91,0xeb,0x19,0x41,0x91,0xb9,0x09,0x10,0x12,0x92,0xab,0x0d,0x72,0x27,0xfb,0x0c,0x31, + 0x03,0xaa,0x0b,0x11,0x12,0x11,0xca,0xbb,0x42,0x33,0xc9,0xba,0x10,0x41,0x81,0xc0,0x9a,0x38,0x76,0xa4, + 0xdd,0x19,0x43,0x90,0xb9,0x00,0x11,0x11,0x81,0xcb,0x0a,0x52,0x92,0xb9,0x8a,0x20,0x22,0x80,0xfa,0x89, + 0x43,0x71,0x93,0xfd,0x0a,0x42,0x82,0xba,0x09,0x12,0x02,0x01,0xca,0x9b,0x53,0x02,0xba,0x9b,0x31,0x31, + 0xa8,0xd8,0x09,0x50,0x11,0x79,0x06,0xec,0x0b,0x43,0x93,0xab,0x1a,0x12,0x02,0x11,0xcb,0x9b,0x44,0x02, + 0xbc,0x89,0x22,0x10,0xa0,0xb8,0x0a,0x42,0x85,0x09,0x67,0xe8,0xac,0x32,0x14,0xba,0x0a,0x12,0x11,0x10, + 0xd8,0xaa,0x42,0x03,0xc9,0x8a,0x10,0x11,0x81,0xb9,0x9b,0x51,0x04,0xa8,0x7c,0x07,0xea,0x0b,0x42,0x82, + 0xba,0x19,0x02,0x02,0x11,0xbb,0x9c,0x34,0x03,0xad,0x89,0x02,0x11,0x80,0xba,0x0b,0x62,0x82,0xb8,0x5b, + 0x77,0xc8,0x9d,0x21,0x04,0xa9,0x89,0x11,0x10,0x21,0xb9,0xbb,0x52,0x13,0xca,0x8a,0x10,0x01,0x02,0xc8, + 0x9c,0x58,0x12,0xb8,0x8a,0x78,0x37,0xe9,0x9d,0x21,0x04,0x99,0x8a,0x01,0x11,0x21,0xb9,0xac,0x32,0x24, + 0xaa,0xab,0x00,0x41,0x01,0xe9,0x99,0x31,0x12,0xc8,0x99,0x28,0x77,0xb4,0xbf,0x20,0x33,0xb8,0x9b,0x11, + 0x21,0x22,0xc1,0x9e,0x38,0x14,0xb8,0x8b,0x18,0x02,0x02,0xba,0x9d,0x31,0x15,0x9a,0x9b,0x12,0x72,0x37, + 0xfc,0x0b,0x42,0x92,0xaa,0x19,0x11,0x21,0x01,0xcc,0x1a,0x25,0x91,0x9c,0x08,0x01,0x01,0xa0,0xca,0x28, + 0x33,0xa8,0xcb,0x01,0x32,0x78,0x37,0xfa,0x9d,0x32,0x83,0xba,0x1a,0x11,0x11,0x23,0xdb,0x8c,0x43,0x82, + 0xba,0x09,0x00,0x20,0x01,0xf9,0x8a,0x41,0x81,0xb9,0x08,0x39,0x10,0x77,0xb4,0xbf,0x38,0x14,0x99,0x8a, + 0x00,0x10,0x42,0xa0,0xbc,0x40,0x23,0xb8,0x8b,0x08,0x18,0x23,0xb0,0xbf,0x39,0x14,0xa8,0x9a,0x90,0x02, + 0x73,0x57,0xfb,0x0b,0x33,0xa2,0xa9,0x19,0x88,0x32,0x15,0xca,0x8b,0x34,0x01,0xaa,0x98,0xa0,0x41,0x22, + 0xfb,0x9a,0x22,0x01,0x99,0x89,0x8a,0x21,0x77,0x97,0xcc,0x08,0x33,0x98,0x99,0x08,0x19,0x42,0x84,0xcb, + 0x19,0x32,0x92,0x98,0x8a,0x9b,0x43,0x04,0xbc,0x9b,0x13,0x12,0x1b,0xd9,0xc8,0x31,0x77,0x94,0xdd,0x08, + 0x22,0x80,0x89,0x88,0x1b,0x51,0x03,0xba,0x0b,0x23,0x83,0x01,0xb9,0xae,0x31,0x15,0xaa,0xca,0x10,0x01, + 0x08,0xa0,0xdb,0x08,0x77,0x95,0xeb,0x09,0x31,0x80,0x88,0x88,0x8b,0x41,0x15,0x99,0x1b,0x80,0x00,0x88, + 0x00,0x08,0x88,0x80,0x00,0x08,0x88,0x80,0x00,0x88,0x00,0x88,0x00,0x08,0x08,0x08,0x08,0x88,0x80,0x80, + 0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip soundOffClip = { + soundOffData, sizeof(soundOffData), 5393, 8000 +}; +// "Action failed" +static const uint8_t actionFailedData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0xf7,0xff,0xff,0x71,0x90,0x80,0xb0,0x30,0x18,0x00,0xe0,0x18,0x19,0x28,0xb1,0x99,0xb3,0x21,0x12,0x77, + 0x9f,0x88,0x80,0x34,0x0a,0x98,0xc8,0x33,0x19,0x19,0xfa,0x01,0x18,0x38,0xb9,0x90,0x01,0x68,0x18,0x97, + 0x8f,0x08,0x08,0x86,0x88,0x88,0x89,0x04,0x08,0x88,0x9b,0x22,0x19,0x11,0xfa,0x02,0x1b,0x40,0x99,0x17, + 0x9f,0x18,0x88,0x07,0x89,0x19,0x99,0x04,0x88,0x18,0xbb,0x23,0x80,0x28,0xf9,0x20,0x88,0x48,0x98,0x07, + 0x9f,0x18,0x80,0x05,0x99,0x18,0xa9,0x15,0x98,0x29,0xab,0x32,0x91,0x4a,0xda,0x18,0x84,0x28,0x98,0x07, + 0x9f,0x18,0x08,0x05,0x99,0x19,0x98,0x24,0xa8,0x09,0xb9,0x51,0xa1,0x08,0xb8,0x2c,0x87,0x00,0x29,0x97, + 0x9e,0x18,0x00,0x04,0xa9,0x18,0x89,0x24,0xa8,0x2a,0xab,0x33,0xb3,0x2b,0xbb,0x4b,0x07,0x19,0x29,0x27, + 0xbf,0x19,0x81,0x16,0x9a,0x19,0x88,0x33,0xb8,0x1b,0xb9,0x63,0xa1,0x89,0xb0,0x7b,0x82,0x99,0xc2,0x57, + 0xac,0x09,0x81,0x42,0xa8,0x8a,0x92,0x50,0x91,0x9b,0x91,0x28,0x86,0xaa,0x00,0x89,0x44,0xba,0x91,0x73, + 0xf4,0x8a,0x10,0x48,0xa2,0xb9,0x11,0x49,0x82,0xba,0x18,0x2a,0x14,0xe8,0x08,0x19,0x31,0xd1,0x88,0x78, + 0xb5,0xbb,0x28,0x38,0x87,0xa9,0x18,0x08,0x14,0xb8,0x1b,0x88,0x33,0xd2,0x1c,0x08,0x28,0x83,0x0e,0x29, + 0x37,0xaf,0x19,0x00,0x24,0xa9,0x1b,0x80,0x24,0xa0,0x8d,0x91,0x12,0x82,0x8e,0x00,0x90,0x13,0x9b,0x88, + 0x77,0xc9,0x8a,0x01,0x52,0x98,0xaa,0x02,0x31,0x82,0xae,0x00,0x10,0x22,0xdb,0x98,0x02,0x52,0x9a,0x9a, + 0x74,0xe3,0x9b,0x10,0x40,0x82,0xbb,0x20,0x28,0x05,0xc9,0x09,0x00,0x22,0xc0,0x9b,0x12,0x21,0x93,0x9f, + 0x79,0xa6,0xab,0x18,0x20,0x05,0xb9,0x19,0x00,0x14,0xb0,0x8c,0x00,0x12,0xa3,0x9e,0x10,0x10,0x02,0xca, + 0x7a,0x97,0x9c,0x18,0x10,0x04,0xb9,0x2a,0x81,0x23,0xd1,0x0c,0x81,0x01,0x93,0x9d,0x10,0x91,0x13,0xba, + 0x7c,0x97,0x9c,0x18,0x10,0x13,0xd9,0x19,0x01,0x12,0xb1,0x8e,0x01,0x10,0x01,0xac,0x28,0x00,0x12,0xd0, + 0x7b,0x97,0xac,0x10,0x01,0x13,0xca,0x29,0x81,0x22,0xc1,0x8d,0x11,0x00,0x82,0xac,0x28,0x81,0x22,0xca, + 0x79,0xb7,0x9c,0x21,0x39,0x94,0xba,0x38,0x81,0x14,0xc9,0x1c,0x01,0x01,0xa2,0x8e,0x01,0x00,0x21,0xdb, + 0x66,0xd9,0x09,0x81,0x30,0xa2,0x9c,0x12,0x08,0x04,0xda,0x00,0x00,0x20,0xc0,0x8a,0x12,0x28,0x93,0x9e, + 0x47,0xad,0x08,0x81,0x51,0xa8,0x89,0x01,0x38,0xa3,0xac,0x01,0x19,0x14,0xca,0x09,0x00,0x42,0xb1,0x5d, + 0xa7,0x8c,0x08,0x00,0x14,0xb9,0x18,0x88,0x52,0xb0,0x0a,0x88,0x38,0x84,0x9c,0x00,0x89,0x24,0xc9,0x76, + 0xca,0x88,0x80,0x41,0xa1,0x8a,0x81,0x28,0x86,0x9a,0x80,0x0a,0x24,0xa9,0x09,0xa9,0x70,0x80,0x59,0xb6, + 0x0d,0x88,0x18,0x14,0x9a,0x80,0x09,0x62,0xa8,0x80,0xa9,0x40,0x91,0x09,0xc8,0x28,0x82,0x80,0x77,0xda, + 0x80,0x0a,0x32,0xa1,0x18,0xab,0x41,0x84,0x18,0xd9,0x19,0x11,0x18,0xa0,0x8f,0x82,0x28,0x61,0xb5,0x0d, + 0xaa,0x20,0x23,0x88,0xc1,0x1c,0x13,0x31,0xa2,0x9e,0x08,0x28,0x13,0xcb,0xb8,0x1a,0x04,0x77,0xb9,0xa0, + 0x8c,0x21,0x01,0x12,0xdb,0x11,0x18,0x24,0xa0,0x88,0xac,0x32,0x90,0x11,0xcd,0x19,0x59,0x87,0x1a,0xda, + 0x09,0x10,0x10,0x93,0x1a,0xb0,0x51,0x11,0x10,0xb2,0x1b,0xb1,0x40,0xa0,0x8a,0xfa,0x73,0xaa,0x93,0x8f, + 0x90,0x08,0x11,0x09,0x82,0x1a,0x84,0x38,0x83,0x08,0x94,0x2a,0x92,0x2a,0x91,0x70,0xe3,0x28,0xcc,0x88, + 0xaa,0x00,0x98,0x30,0xa8,0x43,0x08,0x33,0x01,0x52,0x98,0x23,0x89,0x21,0x2b,0x67,0x1b,0xe1,0x0a,0xa9, + 0x0a,0xa8,0x1a,0x91,0x28,0x83,0x51,0x12,0x30,0x84,0x21,0x01,0x00,0xd3,0x74,0xe4,0x01,0xbb,0x01,0xab, + 0x11,0xbb,0x43,0xba,0x72,0xa8,0x31,0xc9,0x30,0xb0,0x73,0x08,0x11,0x89,0x02,0xaa,0x39,0xda,0x5a,0xc0, + 0x00,0xaa,0x88,0x20,0x8f,0x13,0x9b,0x27,0x2b,0x42,0xab,0x03,0x8c,0x38,0xfb,0x6c,0x12,0xfb,0x70,0xb9, + 0x31,0xf9,0x30,0xc1,0x50,0x0a,0x08,0x88,0x81,0x8a,0xa5,0x09,0xa0,0x00,0x30,0xf7,0x38,0x5c,0xe2,0x01, + 0xa0,0x5a,0xb8,0x21,0xa9,0x31,0x0b,0x95,0x1c,0x85,0x9a,0x22,0x9c,0x50,0xb9,0x7a,0xf1,0x02,0x98,0x59, + 0x89,0x00,0xa0,0x21,0xb9,0x93,0xaa,0x70,0xb8,0x95,0x00,0xa0,0xb0,0x85,0x7b,0x8a,0xa2,0x11,0xb8,0xd2, + 0x94,0x69,0x1b,0x80,0xc8,0x33,0x1c,0x39,0x9a,0x38,0x99,0xc5,0xa3,0x10,0x0c,0x39,0xa0,0x7b,0x81,0x1d, + 0xa5,0xa0,0xb3,0x28,0xb2,0x7a,0x8a,0x6b,0xa0,0x10,0xc0,0x31,0x0b,0x92,0x89,0xd2,0xd4,0x12,0x4c,0x2a, + 0xa9,0x84,0x88,0x80,0x0b,0xa6,0x38,0x2e,0x80,0x28,0x1a,0xc0,0xc5,0x11,0x09,0x88,0x09,0xc6,0x20,0x89, + 0x39,0x08,0x5b,0xe0,0xa4,0x18,0x19,0x09,0x10,0x3c,0xa8,0x82,0x08,0xa2,0x7c,0xd8,0x84,0x4b,0x1a,0xa8, + 0xa6,0x18,0x19,0x89,0xb5,0x48,0x2c,0xa0,0x02,0x3c,0x99,0xd4,0x02,0x2a,0x89,0xc4,0x20,0x8a,0x92,0x80, + 0xa2,0x7a,0x1b,0x00,0xf1,0x83,0x4a,0x2c,0xb0,0x93,0x59,0x2c,0xb0,0x93,0x38,0x3f,0x99,0x01,0x88,0xa1, + 0x82,0x2a,0x29,0xf2,0x83,0x3c,0x3b,0xa8,0x78,0x9b,0xb7,0x01,0x3a,0x0a,0xa2,0x69,0x2c,0x98,0xa2,0x01, + 0x5a,0x1c,0xa1,0x91,0x12,0x1f,0xd3,0x30,0x0b,0xc2,0xb3,0x11,0x4a,0x3d,0xb8,0xb4,0x83,0x4c,0x89,0x10, + 0x0a,0xe2,0xa5,0x38,0x3d,0x99,0xb3,0x01,0x3a,0x8a,0xc5,0x11,0x4c,0x8a,0xc4,0x11,0x4b,0x0a,0xc2,0x82, + 0x19,0x19,0xc1,0x02,0x4b,0x8a,0xc3,0xb3,0x31,0x2e,0xc0,0x94,0x39,0xa9,0x02,0xa8,0xb4,0x82,0x7e,0x8a, + 0xd3,0x93,0x49,0x2c,0x98,0x92,0x29,0xb0,0xa4,0x10,0x2a,0x4b,0x1b,0xa1,0xa2,0x81,0x38,0x6f,0x1c,0xd2, + 0x02,0x4b,0xa9,0xb6,0x11,0x3c,0x99,0xb4,0x11,0x4c,0x8a,0xb3,0x01,0x3a,0x99,0xa3,0x39,0x0a,0x81,0xa9, + 0xc7,0xb4,0x93,0x7b,0x2c,0xb0,0xa4,0x20,0x3b,0x1a,0x99,0xd7,0x82,0x39,0x3c,0xc8,0x94,0x39,0x2b,0x98, + 0xa2,0x10,0x09,0x80,0x08,0xf3,0xa4,0x00,0x6b,0xa9,0x83,0x2b,0xc2,0x11,0x6b,0x3d,0x89,0x80,0xb1,0xa5, + 0x59,0x1b,0xc1,0xa4,0x48,0x3d,0x99,0xc4,0x82,0x4a,0x2b,0xb0,0x93,0x28,0x3c,0xb8,0xb5,0x11,0x1a,0xb0, + 0xa5,0x20,0x4f,0x8a,0xc3,0x02,0x5c,0x8a,0xc3,0x82,0x3a,0x99,0xb4,0x30,0x2d,0xc0,0xa4,0x48,0x2c,0xa8, + 0xa4,0x10,0x3b,0xa8,0xb4,0x20,0x3c,0xb8,0xb7,0x11,0x2b,0xb0,0xa5,0x59,0x2c,0xb0,0xa4,0x20,0x2b,0x89, + 0xc3,0x01,0x08,0x4a,0x0a,0x88,0xc3,0x11,0xd0,0x03,0x4e,0x2b,0xc0,0x84,0x4b,0x1a,0xa0,0x82,0x4a,0x8a, + 0xb2,0x12,0x3e,0x98,0x81,0x80,0x19,0xd5,0x40,0x3d,0x9a,0xc6,0x11,0x4b,0x8a,0xc4,0x02,0x2a,0x0a,0xd3, + 0x01,0x29,0x1a,0xd1,0x93,0x29,0x89,0xc3,0x82,0x6a,0x0b,0xd4,0x83,0x4c,0x89,0xb1,0xb4,0x21,0x3d,0x09, + 0xe2,0x93,0x29,0x2b,0xa8,0xa5,0x00,0x29,0x0a,0xc3,0x82,0x28,0x3c,0xa8,0xc3,0x82,0x4a,0x30,0x2c,0xc0, + 0xa9,0x90,0x2c,0x80,0x82,0x03,0x6b,0x09,0x08,0x92,0x21,0x5b,0x3b,0xa8,0x71,0x97,0x01,0xbb,0x8e,0xb9, + 0x81,0x02,0x22,0x01,0x20,0x08,0x41,0x00,0x23,0x09,0x4b,0xfb,0x37,0x09,0xa8,0xbf,0x99,0x0a,0x23,0x30, + 0x03,0x1a,0x80,0x3a,0x05,0x30,0x92,0x0a,0xc8,0x7c,0x87,0x01,0xba,0x8f,0xb9,0x00,0x12,0x68,0x08,0x08, + 0xa1,0x21,0x81,0x21,0xc1,0x18,0xaa,0x72,0x84,0x91,0xee,0x98,0x89,0x20,0x81,0x04,0x88,0x38,0x1b,0x23, + 0x92,0x24,0x0d,0x2a,0x8b,0x47,0x80,0x99,0xbf,0x9a,0x09,0x04,0x20,0x11,0x1b,0x93,0x02,0x17,0x19,0x80, + 0xab,0xc4,0x72,0x01,0x09,0xfb,0xaa,0x98,0x38,0x11,0x30,0xa0,0x10,0x83,0x44,0x84,0x01,0x90,0x2d,0x2a, + 0x17,0xa1,0xb9,0xbf,0x9b,0x89,0x83,0x82,0x13,0x4a,0x78,0x10,0x13,0x92,0x01,0x0a,0x3b,0x78,0x84,0xc0, + 0xf9,0x9b,0x8a,0x2a,0x80,0x81,0x83,0x41,0x53,0x51,0x11,0x00,0x90,0x88,0x19,0x17,0x88,0xda,0xbe,0xaa, + 0x89,0x10,0x00,0x11,0x20,0x54,0x33,0x34,0x11,0x00,0x99,0xb8,0x31,0x08,0x8b,0xff,0xbf,0x89,0x09,0x00, + 0x10,0x11,0x43,0x34,0x32,0x22,0x00,0x91,0xa9,0x0c,0x84,0xaa,0xdf,0xad,0xaa,0x88,0x11,0x08,0x21,0x52, + 0x34,0x24,0x12,0x01,0x80,0x90,0xba,0x68,0xa0,0xd9,0xce,0xbb,0x8a,0x19,0x01,0x21,0x43,0x63,0x43,0x12, + 0x02,0x80,0x80,0xaa,0xdb,0x43,0xa9,0xfa,0xae,0x9b,0x89,0x20,0x00,0x21,0x43,0x35,0x24,0x12,0x01,0x88, + 0x98,0xca,0x8b,0x16,0x9a,0xed,0xcb,0x99,0x88,0x21,0x18,0x22,0x34,0x45,0x12,0x21,0x80,0x88,0xa8,0xbb, + 0x3c,0xa5,0xb8,0xdf,0x9c,0x8a,0x08,0x11,0x10,0x32,0x62,0x43,0x13,0x21,0x88,0x09,0xba,0xea,0x40,0x90, + 0xd9,0xcd,0xab,0x99,0x28,0x01,0x21,0x43,0x44,0x34,0x21,0x12,0x88,0x88,0xca,0xbc,0x33,0x99,0xfa,0xbf, + 0xaa,0x99,0x10,0x01,0x32,0x43,0x44,0x24,0x21,0x02,0x88,0x88,0xcb,0x8b,0x07,0x89,0xdb,0xae,0xaa,0x99, + 0x10,0x10,0x31,0x34,0x35,0x24,0x32,0x01,0x80,0xa0,0xbb,0x8d,0x23,0xaa,0xee,0xbd,0xaa,0x99,0x00,0x01, + 0x42,0x43,0x53,0x23,0x32,0x02,0x00,0x98,0xbb,0x9d,0x15,0x89,0xdc,0xbe,0xaa,0xaa,0x00,0x18,0x31,0x25, + 0x44,0x23,0x32,0x12,0x11,0x90,0xaa,0x8c,0x16,0x88,0xeb,0xbe,0xab,0xab,0x8a,0x08,0x21,0x44,0x43,0x43, + 0x32,0x23,0x12,0x01,0xa0,0xa9,0x64,0x80,0xd9,0xdc,0xbb,0xbb,0x9c,0x99,0x08,0x32,0x53,0x34,0x43,0x23, + 0x23,0x13,0x01,0x90,0x71,0x83,0xb9,0xce,0xbc,0xcb,0xab,0xaa,0x99,0x20,0x32,0x45,0x33,0x25,0x33,0x32, + 0x12,0x02,0x70,0x03,0xa8,0xeb,0xbc,0xac,0xac,0xab,0xa9,0x88,0x10,0x33,0x35,0x44,0x33,0x33,0x24,0x22, + 0x51,0x05,0x89,0xb9,0xeb,0xbb,0xcb,0xbb,0xba,0x9a,0x09,0x20,0x43,0x35,0x44,0x43,0x32,0x32,0x32,0x17, + 0x99,0xa8,0xdb,0xaa,0xbc,0xab,0xba,0x9a,0x08,0x20,0x52,0x43,0x53,0x13,0x03,0x32,0x21,0x17,0x1c,0x89, + 0xcb,0xa8,0x9a,0xaa,0xa8,0x80,0x3a,0x3a,0x91,0x06,0x40,0x29,0x82,0x83,0x12,0x71,0xf7,0x82,0xb0,0x29, + 0x0a,0x88,0x00,0xb2,0x02,0x11,0x18,0x01,0xa2,0xa3,0xb6,0xa2,0x58,0x3f,0x87,0x1f,0x80,0x1c,0x80,0xa0, + 0x92,0x82,0x29,0x30,0x1a,0x21,0x19,0x91,0xb5,0x48,0x3e,0xaa,0x74,0xfa,0xb3,0x08,0x10,0xf3,0x2a,0x22, + 0x2f,0x08,0xc1,0x11,0xa1,0x5a,0x91,0xa9,0xa6,0x29,0x3a,0x2b,0xf0,0x02,0x90,0x4a,0x1a,0xa1,0x2a,0x84, + 0x9a,0x33,0xcb,0x79,0xc0,0x10,0x00,0x0b,0x95,0x2b,0xd4,0x18,0x01,0x98,0x08,0xc4,0x91,0x5c,0x88,0x10, + 0x4b,0x2b,0xe1,0x83,0x98,0x7d,0xc0,0x01,0xa1,0x3a,0x82,0x3d,0x19,0xd1,0x11,0xb0,0x49,0xb8,0x83,0x28, + 0x8b,0x92,0xc3,0x32,0x0f,0xd3,0x01,0xc3,0x5c,0xb1,0x49,0xa9,0x92,0x10,0xa0,0x78,0xc9,0x13,0xf0,0x21, + 0x98,0x3a,0x88,0x28,0x99,0x91,0xc8,0x16,0x0c,0x10,0x0a,0xa3,0x10,0x2c,0x88,0xf2,0x51,0x8c,0x82,0x91, + 0x19,0x59,0x1d,0xc4,0xa1,0x12,0x1c,0x00,0xb0,0x21,0x0c,0xa3,0x12,0x8f,0x84,0xa8,0x83,0x3b,0x7b,0xb9, + 0x92,0x23,0xdb,0x94,0x00,0x4c,0x88,0xc0,0x12,0xa0,0x7c,0x88,0x1a,0x91,0x10,0x89,0x80,0xa1,0xb3,0x31, + 0x4e,0x2b,0xa8,0x10,0x88,0xe1,0xa4,0xb7,0x5a,0x09,0xa0,0xa3,0x40,0x1d,0x08,0xa1,0x90,0xb4,0x82,0x7b, + 0x2b,0x99,0xb5,0x92,0x00,0x19,0xa1,0x38,0x1d,0x89,0xb7,0x20,0x3b,0x98,0x18,0x7c,0x0b,0x92,0xc2,0x59, + 0x08,0x2d,0x92,0x9a,0x94,0x08,0xb3,0x28,0x0a,0x6d,0xb0,0x00,0xa1,0x21,0x1a,0x4e,0x99,0x83,0x98,0x6d, + 0x88,0x89,0xb3,0x39,0xd4,0x29,0x20,0x1b,0x49,0x8c,0x94,0xb8,0x04,0xb1,0x4a,0x19,0x19,0x5c,0x1b,0xc1, + 0x94,0xa0,0x7a,0xc0,0x82,0xa1,0x39,0xa2,0x5c,0x1a,0xc0,0xa3,0xa3,0x2a,0x83,0x2f,0xa1,0x08,0xa3,0x89, + 0xd2,0x12,0x18,0xf3,0x4a,0x00,0x4f,0x0a,0xb1,0x02,0xa0,0x48,0x98,0x89,0xb7,0x10,0x29,0xc9,0x13,0x99, + 0x7a,0xb9,0x95,0xa2,0x4a,0x09,0xc0,0x95,0x3a,0x08,0xb9,0x97,0x08,0x39,0x9b,0x95,0xa1,0x28,0xa8,0x02, + 0x28,0x3f,0xa8,0xc3,0x81,0x80,0xc2,0xa2,0x34,0x1f,0x98,0xb3,0x11,0x5d,0xb9,0x84,0x90,0x7a,0x8a,0x28, + 0xe1,0x01,0x00,0x09,0x81,0x98,0x21,0xea,0x02,0x91,0x6c,0x98,0x49,0x89,0x3a,0xf4,0x20,0x98,0x29,0xc1, + 0x11,0x08,0x0a,0xb2,0x81,0x41,0x0f,0xb3,0x00,0x93,0x2f,0xc3,0x39,0xb8,0x48,0xe0,0x12,0x89,0x20,0xb8, + 0x11,0x1d,0x00,0x83,0x1e,0x28,0xab,0x87,0x88,0x39,0x9a,0x10,0x94,0x8a,0x04,0x0f,0x83,0x8a,0x51,0xcb, + 0x03,0x1a,0x28,0xc2,0xa3,0x5b,0x8c,0x91,0x91,0x48,0x0a,0xa4,0x18,0x22,0xbb,0x06,0x0a,0x01,0xa9,0x71, + 0xc6,0x80,0xba,0x1a,0xb0,0x42,0x01,0x31,0x91,0x38,0x99,0x28,0xb1,0x29,0x90,0x0c,0xcc,0x70,0xb7,0x11, + 0xaf,0x09,0x90,0x42,0x10,0x12,0xa1,0x10,0x9c,0x80,0x90,0x40,0x9c,0xa1,0xc8,0x7a,0xa7,0x10,0xd9,0x88, + 0x98,0x41,0x00,0x23,0x90,0x19,0xcb,0x00,0x89,0x21,0xc0,0x01,0x9d,0x90,0x47,0x3d,0xc8,0x99,0x80,0x59, + 0x82,0x22,0x80,0x0a,0xe9,0x00,0x19,0x28,0xb1,0x01,0x8d,0x98,0x67,0x8a,0xa2,0x9d,0x08,0x19,0x14,0x30, + 0x82,0x9a,0xb8,0x1c,0x80,0x30,0x92,0x8a,0xf8,0x09,0x78,0xb6,0x82,0x9d,0x09,0xa0,0x25,0x28,0x01,0xb9, + 0x81,0x1e,0x91,0x81,0x02,0x1d,0xb8,0x00,0x70,0x96,0x2a,0xdb,0x09,0x80,0x61,0x00,0x82,0x99,0x0a,0x9a, + 0x83,0x11,0x30,0xad,0xd2,0x18,0x28,0x37,0x0b,0xf9,0x8a,0x80,0x41,0x12,0x01,0xa8,0x0c,0xa9,0x13,0x11, + 0x18,0xcc,0xa0,0x19,0x22,0x77,0x99,0xc1,0x8d,0x00,0x38,0x85,0x11,0x99,0x0b,0xa9,0x31,0x10,0x01,0xda, + 0x90,0x1a,0x50,0x79,0xb6,0x18,0x9d,0x09,0x91,0x34,0x18,0x80,0xca,0x91,0x2a,0x12,0x28,0xd2,0x0a,0xb9, + 0x21,0xa3,0x77,0xa9,0xd2,0x9b,0x01,0x58,0x84,0x10,0xa9,0x0a,0xb8,0x24,0x29,0x08,0xea,0xb2,0x38,0x38, + 0x79,0xb6,0x19,0x9d,0x19,0x80,0x16,0x29,0x88,0xaa,0xa2,0x59,0x08,0x81,0xb0,0x09,0x0b,0x11,0xa3,0x77, + 0x8a,0xf1,0x8a,0x81,0x60,0x00,0x81,0xb8,0x08,0x0a,0x03,0x01,0xa1,0x0e,0xa8,0x11,0x02,0x48,0x07,0x1d, + 0xea,0x08,0x08,0x43,0x00,0xa2,0x9a,0x98,0x4a,0x92,0x02,0xc9,0x09,0x0c,0x03,0x02,0x70,0xb7,0x08,0x9f, + 0x00,0x18,0x04,0x10,0x98,0x8a,0xa8,0x23,0x08,0x82,0x8e,0xa8,0x18,0x83,0x61,0x6b,0xc4,0x08,0xad,0x00, + 0x18,0x05,0x20,0xa8,0x89,0xa8,0x42,0x19,0x81,0x9c,0xb8,0x38,0x01,0x23,0x90,0x77,0x3d,0xcc,0x90,0x80, + 0x34,0x29,0xb2,0x98,0xa8,0x69,0x08,0x81,0x99,0xa8,0x2b,0x81,0x42,0xc1,0x73,0xd0,0xc4,0x8b,0x90,0x68, + 0x81,0x12,0x8a,0x88,0x0b,0xa4,0x31,0x89,0x89,0xcb,0x02,0x5a,0x00,0xb1,0x77,0x1c,0xd0,0x08,0x89,0x31, + 0x18,0x95,0x19,0x8a,0x19,0xb1,0x05,0x09,0x89,0x9b,0xc3,0x41,0x19,0x91,0x47,0x0c,0xf0,0x88,0x88,0x31, + 0x18,0x94,0x08,0x99,0x2a,0xa0,0x05,0x08,0x89,0x9c,0xc2,0x31,0x29,0x10,0x70,0xe2,0xc3,0x0d,0x98,0x20, + 0x12,0x32,0x0b,0xc0,0x89,0x00,0x50,0x90,0x91,0x0d,0x8a,0x19,0x94,0x13,0x0a,0x47,0x3e,0xdb,0x90,0x09, + 0x23,0x58,0x91,0x18,0xba,0x01,0x2a,0x13,0x09,0xf2,0x1a,0x0c,0x20,0x08,0x94,0x7a,0xc5,0x01,0x8e,0x90, + 0x29,0x82,0x51,0x98,0x91,0x8a,0x91,0x38,0x81,0x10,0xdb,0xa1,0x1b,0x02,0x11,0x93,0x6a,0x17,0x6c,0xbc, + 0xa1,0x09,0x32,0x79,0x91,0x00,0xaa,0x00,0x19,0x94,0x20,0xc9,0x90,0x8a,0x40,0x3a,0xa2,0xa0,0x72,0xc2, + 0xc7,0x0b,0xa9,0x21,0x03,0x25,0x89,0xa0,0x0b,0x80,0x50,0x91,0x81,0xac,0xa8,0x08,0x23,0x59,0xc1,0x80, + 0x2c,0x47,0x4c,0xdb,0x88,0x98,0x52,0x18,0xa3,0xa0,0xa0,0x5b,0x88,0x04,0x98,0x08,0x8d,0x80,0x10,0x12, + 0x2b,0xe8,0x91,0x70,0xa6,0x18,0xad,0x98,0x00,0x43,0x28,0xa2,0x9a,0xa8,0x58,0x82,0x11,0xd9,0x09,0x9b, + 0x23,0x81,0x84,0x8c,0xa8,0x08,0x62,0x47,0x1c,0xea,0x89,0x81,0x41,0x81,0x01,0xba,0x18,0x09,0x15,0x08, + 0x90,0x8d,0x90,0x28,0x03,0x09,0xb8,0x1c,0xa0,0x42,0x71,0x97,0x89,0x9e,0x1a,0x92,0x34,0x88,0x1a,0xca, + 0x13,0x20,0x41,0xaa,0xb8,0xb9,0x33,0x28,0x02,0xae,0xa8,0x09,0x63,0x19,0x92,0x77,0x0c,0xaa,0xab,0x15, + 0x48,0x81,0xb8,0x92,0x3c,0x12,0x91,0xa5,0x8b,0x09,0x1a,0x85,0x08,0x98,0x9d,0x02,0x18,0x05,0x89,0x19, + 0x77,0x8b,0xaa,0xbb,0x15,0x30,0x21,0xda,0x81,0x2a,0x51,0xa0,0x83,0x8d,0x19,0xa0,0x14,0x89,0x0a,0xd8, + 0x11,0x10,0x39,0xd0,0xa0,0x74,0xb5,0xa9,0xba,0x4c,0x02,0x12,0xa2,0x0d,0x08,0x80,0x16,0x89,0x88,0xc9, + 0x21,0x10,0x2a,0xe0,0x88,0x10,0x4b,0x81,0xc0,0x92,0x89,0x77,0xb0,0xaa,0xe0,0x38,0x22,0x88,0xa3,0xac, + 0x58,0x00,0x02,0xc2,0x0b,0x88,0x19,0x05,0xa8,0x19,0x9c,0x20,0x94,0x10,0x99,0x8d,0x22,0x72,0x87,0xcc, + 0x08,0x09,0x51,0x92,0x99,0x88,0x0a,0x44,0x80,0x88,0xa9,0x0b,0x14,0x00,0x20,0xcc,0x9a,0x03,0x01,0x22, + 0xda,0x0a,0x11,0x00,0x77,0xb5,0xae,0x81,0x00,0x51,0x80,0x9b,0x81,0x08,0x63,0x98,0x99,0x90,0x08,0x42, + 0x88,0xab,0xa0,0x88,0x62,0x80,0x99,0x98,0x09,0x52,0x81,0x74,0x97,0xbe,0x10,0x82,0x19,0x13,0xe9,0x19, + 0x22,0x88,0x11,0xc0,0x8b,0x22,0x91,0x10,0xa8,0xae,0x11,0x83,0x08,0x80,0xeb,0x10,0x23,0x19,0x7b,0x57, + 0xd9,0x9c,0x30,0x01,0x80,0x01,0xbb,0x2a,0x17,0x91,0x08,0x99,0x8b,0x33,0xa3,0xba,0x48,0x8a,0x8a,0x06, + 0xa1,0x0c,0x29,0x80,0x91,0x84,0x4a,0x77,0xd1,0xad,0x20,0x03,0x90,0x00,0xb8,0x8b,0x45,0x03,0xab,0x0a, + 0x80,0x00,0x24,0xa0,0x9f,0x29,0x01,0x81,0x80,0x8a,0x8c,0x21,0x85,0x90,0x2a,0x77,0xa2,0xce,0x09,0x23, + 0x81,0x89,0x80,0xb9,0x30,0x36,0x90,0xac,0x80,0x02,0x10,0x20,0xda,0xaa,0x21,0x33,0x9b,0xab,0xa0,0x91, + 0x73,0x20,0xaa,0x7a,0x77,0xc8,0xac,0x20,0x23,0x88,0x89,0x90,0x9a,0x52,0x14,0xa9,0x9b,0x21,0x01,0x19, + 0x00,0xe9,0x9a,0x31,0x12,0xaa,0x9a,0xa1,0x91,0x53,0x30,0xbb,0x74,0x77,0xda,0x9b,0x31,0x14,0x98,0x8a, + 0x80,0x88,0x41,0x33,0xc9,0xac,0x20,0x12,0x80,0x88,0xaa,0xac,0x30,0x06,0x91,0x9a,0x8a,0x1a,0x40,0x14, + 0xb0,0x71,0x67,0xd9,0xbb,0x20,0x24,0x80,0x8a,0x08,0x98,0x21,0x35,0x90,0xad,0x09,0x23,0x81,0x99,0x99, + 0x8a,0x0b,0x41,0x83,0xe8,0x99,0x20,0x21,0x00,0x90,0x77,0x27,0xda,0xad,0x18,0x33,0x01,0x9a,0x09,0x00, + 0x80,0x33,0x14,0xba,0x9e,0x28,0x12,0x90,0xaa,0x98,0x98,0x19,0x41,0x81,0xd8,0x98,0x31,0x39,0x09,0x77, + 0x47,0xd8,0xbc,0x19,0x33,0x03,0xa9,0x8a,0x10,0x00,0x31,0x34,0xb0,0xcd,0x19,0x32,0x91,0xca,0x99,0x00, + 0x80,0x1a,0x30,0x82,0xcb,0x09,0x53,0x83,0x76,0x47,0xb9,0xbf,0x09,0x32,0x13,0xa9,0x8a,0x21,0x82,0x98, + 0x42,0x13,0xda,0x9c,0x10,0x13,0xa8,0x9c,0x18,0x00,0x9a,0x19,0x33,0x92,0xcd,0x09,0x34,0x77,0x34,0xc9, + 0xbf,0x99,0x32,0x23,0x88,0x8a,0x18,0x81,0x88,0x42,0x23,0xc8,0xbc,0x19,0x32,0x98,0xab,0x08,0x82,0xda, + 0x99,0x33,0x85,0xa8,0x1b,0x50,0x77,0x17,0xba,0xae,0x09,0x31,0x12,0x88,0x08,0x11,0x98,0x9a,0x42,0x24, + 0xa8,0xac,0x08,0x82,0xb8,0x9a,0x30,0x01,0xeb,0x8a,0x41,0x21,0x9a,0x89,0x74,0x77,0x82,0xdb,0xac,0x19, + 0x11,0x01,0x10,0x23,0x12,0x9b,0x1b,0x33,0x84,0xb9,0x9a,0x02,0xba,0xaf,0x09,0x12,0xb8,0xcb,0x10,0x23, + 0x88,0x1b,0x25,0x77,0x47,0x90,0xcc,0xab,0x18,0x00,0x00,0x32,0x25,0x81,0x99,0x29,0x21,0x80,0x99,0x10, + 0x92,0xfb,0x9b,0x1a,0x89,0xab,0x0b,0x12,0xa4,0xa1,0x41,0x42,0x77,0x47,0x98,0xbc,0x9a,0x99,0x98,0x18, + 0x62,0x22,0x11,0x00,0x12,0x00,0xa9,0x89,0x01,0x98,0x9c,0x0a,0x8a,0xdb,0xc9,0xa8,0x90,0x09,0x18,0x12, + 0x52,0x77,0x17,0x9a,0x9a,0xaa,0xba,0x99,0x02,0x24,0x32,0x43,0x32,0x11,0x82,0x81,0x08,0x8b,0xab,0xcb, + 0xab,0x9d,0xaa,0xaa,0xa9,0x89,0x2a,0x5b,0x7a,0x7c,0x37,0x91,0xc9,0x99,0xca,0xaa,0x89,0x19,0x21,0x43, + 0x43,0x33,0x32,0x32,0x20,0x88,0xa9,0xea,0xb9,0xba,0x9c,0x9b,0x9a,0xb9,0xb3,0x12,0x59,0x08,0x77,0x06, + 0x01,0x90,0xba,0xcb,0xbb,0xac,0x9a,0x88,0x12,0x25,0x24,0x53,0x31,0x22,0x11,0x81,0xa1,0xb0,0xbb,0xbd, + 0xdb,0xb9,0x9b,0xab,0xc8,0xa2,0xb2,0x77,0x33,0x01,0xa8,0xb9,0xbc,0xdb,0xa9,0x99,0x00,0x40,0x48,0x12, + 0x05,0x13,0x32,0x38,0x10,0x00,0x09,0xba,0xd9,0xba,0x0d,0x8d,0xa8,0xa8,0xf8,0x0d,0x41,0x10,0x78,0x2b, + 0x94,0xe4,0x81,0x09,0x18,0x90,0x08,0xad,0x80,0x70,0x9a,0x28,0xc2,0x94,0xb0,0x42,0xa2,0x90,0x1f,0x93, + 0xb4,0x2a,0x81,0x13,0x7a,0x2b,0xd8,0x01,0xa8,0x2f,0xb1,0x98,0xb2,0x0c,0x44,0x81,0x82,0x1c,0x88,0x52, + 0x0d,0x10,0xc9,0x87,0x19,0x4a,0xaa,0x91,0x00,0x3c,0xb9,0x32,0x13,0x3f,0x99,0x3b,0x87,0x10,0x9b,0x1b, + 0x21,0xc4,0x3f,0x89,0x68,0xd1,0x39,0xc2,0x11,0xab,0x98,0x84,0x95,0xb1,0x41,0x19,0x9f,0x12,0x61,0xac, + 0x28,0xc2,0xa4,0x82,0x8d,0x21,0x98,0x22,0xd1,0x4a,0x0c,0x81,0xb2,0x84,0x8b,0x81,0x63,0x99,0x8e,0x42, + 0xa8,0x91,0xf3,0x19,0x32,0xac,0x21,0xf2,0x28,0x93,0x1d,0x08,0x28,0x80,0x98,0xb0,0xd0,0x24,0x3a,0x3c, + 0x08,0x0a,0x1b,0xb0,0x97,0x91,0x48,0x8f,0x02,0xc3,0x81,0xa1,0x2a,0x50,0x0d,0x92,0xb8,0x30,0xa5,0x88, + 0xa3,0x0f,0x10,0x89,0x02,0x98,0x5a,0x23,0xae,0x14,0xc0,0x39,0xa0,0x1f,0xa4,0x98,0x02,0x19,0x00,0x91, + 0xb2,0x18,0x8c,0x5d,0xb0,0xa0,0x87,0x80,0x22,0x0e,0x18,0xa9,0x12,0xd4,0x08,0x00,0x08,0x08,0x08,0x08, + 0x08,0x08,0x08,0x08,0x08,0x88,0x00,0x88,0x00,0x88,0x00,0x88,0x00,0x08,0x88,0x00,0x88,0x00,0x88,0x00, + 0x08,0x08,0x08,0x88,0x80,0x80,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip actionFailedClip = { + actionFailedData, sizeof(actionFailedData), 7470, 8000 +}; +// "USB setup" +static const uint8_t usbSetupData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x77,0x77,0xca,0x71,0x79,0x91,0x92,0xba,0xf0,0x99,0x8c,0x98,0x00,0x11,0x15,0x42,0x21,0x02,0x81,0xb1, + 0xa8,0x8d,0xbb,0xf1,0x52,0x5b,0x90,0x93,0xa9,0xe8,0x99,0x9b,0xb0,0x20,0x30,0x35,0x62,0x11,0x83,0x82, + 0xa8,0x99,0x0f,0x9b,0xd0,0x86,0x48,0x09,0x81,0x0b,0xda,0xb0,0x9a,0xa8,0x12,0x60,0x22,0x24,0x12,0x94, + 0x01,0x1b,0x8d,0x8c,0x9a,0xa8,0x97,0x24,0x4b,0x89,0x8a,0xad,0xd0,0x88,0x19,0x20,0x60,0x11,0x04,0x82, + 0xa3,0x00,0x1e,0x9b,0xa9,0xa8,0x30,0xb6,0x87,0x28,0xa9,0xc1,0xa9,0xc9,0x08,0x3a,0x11,0x25,0x33,0x04, + 0x13,0x19,0xaa,0x9d,0x8d,0xba,0xc2,0x25,0x7c,0x88,0xa2,0x08,0xba,0xa8,0x1d,0x99,0x12,0x78,0x10,0x13, + 0x12,0x81,0x29,0x8e,0xb9,0xa9,0xaa,0x48,0xb4,0x07,0x59,0x9a,0xb1,0x8a,0xcb,0xa1,0x38,0x11,0x45,0x31, + 0x13,0x13,0x98,0xe8,0xa9,0x8d,0x9b,0xb0,0x26,0x6c,0xa0,0x94,0x2a,0xbb,0xa0,0x0b,0xa0,0x43,0x58,0x04, + 0x52,0x18,0xa1,0x88,0xca,0xb8,0x0b,0xab,0x72,0x19,0xa7,0x31,0x0e,0xd1,0x00,0x0b,0x90,0x11,0x11,0x33, + 0x41,0x02,0x00,0xaa,0xe8,0x9a,0x9c,0xa8,0x78,0x88,0x97,0x38,0x8c,0xd2,0x08,0x8a,0x80,0x01,0x13,0x52, + 0x21,0x02,0x08,0x9a,0xcb,0xda,0x99,0x0b,0x52,0x5c,0xc2,0x13,0x1f,0xb8,0x81,0x0a,0x80,0x11,0x33,0x61, + 0x01,0x83,0x2a,0xcb,0xc8,0xaa,0x8a,0x8b,0x07,0x7b,0xa0,0x95,0x3b,0xab,0xa1,0x08,0x38,0x28,0x17,0x41, + 0x00,0x00,0x9a,0xb8,0x8d,0xab,0x99,0x68,0xb1,0x17,0x3b,0xd8,0x81,0x8b,0xa0,0xc1,0x33,0x79,0x02,0x22, + 0x08,0x98,0xb9,0xba,0x9e,0xa9,0x19,0x86,0x79,0xa0,0x02,0x0c,0x99,0xa9,0x01,0x4a,0x84,0x43,0x12,0x21, + 0xb0,0x09,0xaf,0xa9,0xab,0x88,0x70,0x08,0x96,0x28,0x8b,0xc9,0xa0,0x4b,0x88,0x24,0x33,0x72,0x80,0x81, + 0x9a,0xba,0xea,0x09,0x8b,0x52,0xa1,0x35,0x8b,0xa0,0xea,0x08,0x9c,0x03,0x40,0x43,0x11,0x05,0x09,0x98, + 0xbc,0x99,0x9d,0x80,0x58,0x92,0x42,0x98,0x9a,0xf8,0x0a,0x89,0x18,0x15,0x51,0x12,0x02,0x81,0xab,0xda, + 0xbb,0x9a,0xaa,0x72,0x94,0x31,0x90,0x9c,0xc8,0x8d,0x08,0x18,0x44,0x31,0x33,0x83,0x80,0xdb,0xcb,0xbb, + 0x9c,0x88,0x70,0x83,0x20,0x01,0xbd,0xa8,0xac,0x2a,0x02,0x45,0x43,0x22,0x02,0x99,0xab,0xdd,0x9a,0x9a, + 0x89,0x64,0x01,0x18,0x92,0xae,0x89,0xc9,0x28,0x32,0x42,0x35,0x12,0x00,0xb8,0xcc,0xab,0xbb,0x8b,0x10, + 0x57,0x01,0x88,0xb2,0xad,0x8b,0xb8,0x10,0x46,0x31,0x33,0x03,0x98,0xca,0xcc,0xbb,0x9a,0x89,0x50,0x27, + 0x81,0x19,0xb8,0xdc,0x0a,0x09,0x08,0x45,0x32,0x21,0x03,0xa8,0xcb,0xcb,0xdb,0x89,0x19,0x50,0x15,0x81, + 0x0a,0xa9,0xdd,0x89,0x10,0x28,0x53,0x24,0x12,0x00,0xa0,0xdb,0xab,0xbb,0xba,0x00,0x75,0x13,0xa0,0x98, + 0xb9,0xbf,0x89,0x11,0x31,0x63,0x24,0x02,0x00,0x99,0xdb,0xbb,0xaa,0x99,0x09,0x67,0x12,0xa9,0x99,0xa8, + 0xbd,0x8a,0x32,0x33,0x63,0x34,0x13,0x98,0x9a,0xcb,0xbd,0xab,0x09,0x28,0x37,0x04,0xaa,0x8b,0xb8,0xcc, + 0x0a,0x53,0x23,0x32,0x44,0x02,0xa8,0xba,0xca,0xbc,0xbb,0x88,0x71,0x34,0x92,0xba,0x8b,0xeb,0xcb,0x19, + 0x42,0x33,0x33,0x36,0x12,0x99,0xba,0xca,0xbc,0xac,0x98,0x73,0x33,0xa8,0xcb,0x99,0xba,0xad,0x28,0x54, + 0x22,0x32,0x23,0x03,0xb9,0xbd,0xca,0xba,0xab,0x0a,0x57,0x23,0xb9,0xbc,0x98,0xca,0xab,0x41,0x26,0x23, + 0x22,0x32,0x91,0xdb,0xcb,0x9a,0xab,0x9b,0x38,0x77,0x02,0xb9,0x9b,0x99,0xba,0x0c,0x51,0x34,0x23,0x22, + 0x22,0xa0,0xcc,0xac,0x9a,0xaa,0x9a,0x70,0x36,0x91,0xcb,0x9a,0x89,0xba,0x09,0x64,0x24,0x02,0x01,0x11, + 0x99,0xcc,0xaa,0x99,0x98,0x99,0x73,0x27,0xa0,0xcb,0x99,0x98,0x99,0x18,0x55,0x32,0x11,0x10,0x00,0xc9, + 0xac,0x9b,0x99,0x98,0x08,0x67,0x23,0xc9,0xac,0x8a,0x88,0x99,0x21,0x37,0x23,0x10,0x00,0x91,0xda,0xac, + 0x8a,0x88,0x99,0x38,0x77,0x02,0xba,0x9d,0x09,0x98,0x88,0x51,0x24,0x03,0x00,0x00,0x88,0xeb,0xaa,0x89, + 0x88,0x99,0x70,0x36,0x91,0xcc,0x9b,0x00,0x98,0x08,0x44,0x34,0x81,0x80,0x00,0xa9,0xcc,0x9a,0x18,0x88, + 0x98,0x74,0x25,0xb8,0xbd,0x8a,0x00,0x98,0x30,0x36,0x14,0x80,0x08,0x80,0xba,0xad,0x89,0x80,0x98,0x19, + 0x77,0x12,0xca,0xac,0x88,0x81,0x08,0x51,0x24,0x82,0x88,0x09,0x98,0xcb,0x9b,0x08,0x91,0x88,0x71,0x47, + 0xa0,0xcc,0x0a,0x00,0x88,0x21,0x44,0x12,0x98,0x88,0x88,0xbb,0xac,0x00,0x21,0xa8,0x19,0x77,0x84,0xda, + 0xab,0x00,0x01,0x28,0x63,0x13,0x90,0x9a,0x88,0xa9,0xac,0x10,0x12,0xa8,0x8a,0x71,0x47,0xc8,0xac,0x1a, + 0x01,0x00,0x51,0x33,0x91,0xba,0x08,0x99,0xbc,0x10,0x23,0xa8,0x9d,0x01,0x77,0x01,0xcc,0xaa,0x01,0x10, + 0x30,0x35,0x82,0xa9,0x8a,0xa8,0xb9,0x39,0x51,0xa8,0xba,0x01,0x73,0x37,0xfa,0x9b,0x08,0x10,0x21,0x35, + 0x01,0xaa,0x89,0xb8,0x8a,0x40,0x02,0xc9,0x98,0x08,0x7b,0x37,0xe0,0xab,0x19,0x81,0x21,0x54,0x00,0xaa, + 0x80,0x98,0x0a,0x33,0xb2,0xac,0x09,0xc9,0x79,0x37,0xd9,0x8c,0x00,0x90,0x31,0x34,0xa0,0xa9,0x90,0xab, + 0x48,0x04,0x98,0x09,0xba,0xab,0x74,0x17,0xd9,0x8a,0x80,0x88,0x34,0x13,0x9a,0x88,0xb9,0x1b,0x52,0x90, + 0x88,0x98,0x8e,0x18,0x57,0x80,0xbc,0x99,0x80,0x40,0x34,0x90,0x98,0xa9,0x9a,0x51,0x82,0x90,0x99,0xad, + 0x18,0x13,0x77,0x98,0x9d,0x88,0x00,0x51,0x01,0xa0,0x88,0x9b,0x28,0x04,0x81,0x09,0xad,0x09,0x22,0x78, + 0x87,0xc9,0x8a,0x08,0x10,0x25,0x80,0x89,0xb9,0x1a,0x43,0x80,0x81,0xda,0x8b,0x11,0x11,0x77,0xa8,0xbb, + 0x90,0x29,0x35,0xa3,0x80,0xba,0x8c,0x14,0x01,0x30,0xeb,0x8a,0x10,0x28,0x63,0x96,0xbb,0x8c,0x99,0x25, + 0x23,0x09,0xc9,0xa9,0x31,0x20,0x83,0xf0,0x8a,0x09,0x10,0x15,0x26,0xbc,0x9c,0x98,0x42,0x33,0x88,0xc0, + 0x9b,0x48,0x10,0x83,0xc0,0x8c,0x89,0x11,0x06,0x71,0xb8,0xbc,0x90,0x48,0x43,0x80,0xa1,0x9c,0x29,0x92, + 0x05,0xa0,0x0c,0xa8,0x01,0x14,0x71,0xd0,0xb9,0x98,0x69,0x12,0x91,0x91,0x8c,0x08,0x01,0x23,0x9a,0x9b, + 0xda,0x32,0x11,0x75,0xe0,0x99,0x99,0x58,0x02,0x01,0xa0,0x0c,0x18,0x18,0x04,0x9a,0x98,0x8c,0x22,0x00, + 0x67,0xba,0xa8,0xba,0x71,0x10,0x11,0xb8,0x09,0x09,0x40,0x92,0x0a,0xd9,0x09,0x83,0x58,0x17,0x9c,0xa9, + 0x9b,0x34,0x30,0x12,0xdb,0x80,0x08,0x52,0x98,0x90,0xcb,0x20,0x18,0x72,0xa6,0x9a,0xab,0x1c,0x05,0x12, + 0x01,0x9c,0x80,0x18,0x14,0x89,0x99,0xac,0x12,0x00,0x74,0xc2,0xaa,0xca,0x4a,0x22,0x12,0xb3,0x0c,0x09, + 0x38,0x87,0x98,0x98,0x0d,0x00,0x81,0x37,0xaa,0xab,0xfb,0x21,0x11,0x32,0xb8,0x89,0x90,0x60,0x81,0x88, + 0xc9,0x1b,0x00,0x30,0x67,0x9a,0x9b,0x9e,0x12,0x11,0x33,0xba,0x88,0x88,0x54,0x00,0x89,0xea,0x88,0x00, + 0x78,0x84,0xaa,0xba,0x0e,0x21,0x11,0x13,0xaa,0x80,0x88,0x36,0x80,0x88,0xbd,0x88,0x80,0x72,0x95,0xaa, + 0xda,0x0a,0x22,0x31,0x84,0x99,0x08,0x2a,0x26,0x80,0x91,0xbc,0x0a,0x98,0x77,0x98,0x99,0xea,0x08,0x11, + 0x40,0x81,0x98,0x90,0x29,0x33,0x20,0xa2,0xdc,0x98,0x0a,0x47,0x98,0xb9,0xcd,0x08,0x10,0x53,0x91,0x80, + 0xa9,0x39,0x23,0x42,0xb3,0xab,0xca,0x5d,0x05,0x98,0xc8,0x9e,0x88,0x00,0x24,0x00,0x00,0xab,0x01,0x01, + 0x35,0x80,0x08,0xea,0x61,0x92,0x88,0xfa,0x8b,0x98,0x48,0x02,0x00,0x90,0x0b,0x22,0x48,0x06,0x88,0x81, + 0x8b,0x47,0x09,0x98,0xcd,0x88,0x89,0x40,0x88,0x01,0xa8,0x10,0x80,0x42,0x94,0x18,0x08,0x7c,0x95,0x90, + 0xb0,0x0c,0x89,0x1a,0x93,0x00,0xa2,0x0a,0x81,0x3a,0x86,0x28,0x21,0x2d,0x71,0xb7,0xa1,0xd8,0x28,0x09, + 0x10,0xc1,0x91,0x88,0x58,0x19,0x80,0xb1,0x12,0x6b,0x2a,0x71,0xc2,0x98,0xf8,0x31,0x2a,0x3b,0xbd,0x93, + 0x92,0x02,0x1f,0x89,0x22,0xd2,0x20,0x18,0x5a,0x81,0xa9,0x86,0x09,0x80,0xa8,0x44,0x9b,0xa8,0xa8,0x93, + 0x2b,0x9f,0x4a,0xc9,0x92,0xc4,0x41,0x90,0x22,0xb9,0x7a,0xa5,0x18,0xc1,0x59,0x09,0x89,0xb0,0xb4,0x29, + 0x90,0x5c,0xc8,0x81,0x92,0x32,0x2b,0x3f,0x90,0xa3,0x20,0x2b,0x2a,0xf1,0x08,0xb9,0x31,0x9a,0xb4,0xf4, + 0x83,0x38,0x1a,0x98,0xe5,0x82,0x10,0x3c,0x0a,0x98,0xb4,0x92,0x81,0x6b,0x8a,0x88,0x94,0x3b,0x2a,0x7d, + 0x98,0x91,0xc1,0x60,0x89,0x19,0x99,0x03,0x91,0x3c,0x1c,0x20,0xc2,0x3b,0x88,0x81,0xc5,0x08,0xa4,0x88, + 0x38,0x3f,0x88,0x98,0xb4,0x7c,0x29,0x1b,0x90,0x88,0x94,0x08,0x28,0x2d,0xa0,0x91,0x28,0x4f,0x1a,0xa1, + 0x91,0x30,0x3f,0x19,0x99,0xb3,0xb1,0x23,0x4d,0x4b,0x0b,0xa2,0x98,0x11,0x99,0x79,0xb0,0x21,0xa9,0x7a, + 0x99,0x13,0xeb,0x42,0x89,0x4a,0x99,0x4b,0xc4,0x18,0x88,0x08,0x03,0xbc,0x87,0x29,0x29,0x0f,0x81,0x18, + 0xb1,0x10,0xa1,0x79,0x0a,0x09,0xd5,0x01,0x19,0x3b,0xd2,0x10,0x82,0x2d,0x80,0xba,0x07,0x2b,0x59,0x0c, + 0x01,0xa0,0x10,0x6b,0x2c,0x80,0xc0,0xa3,0x00,0x02,0x0b,0xa1,0x2c,0x97,0x89,0x81,0x1a,0xb7,0x80,0x92, + 0x6b,0xb0,0xb2,0xa6,0x29,0x08,0x99,0xa5,0x88,0x03,0xba,0x96,0xb1,0x12,0xab,0x11,0xc6,0xc3,0x21,0x3e, + 0x09,0x80,0xb1,0x21,0x3c,0x5c,0x0c,0x00,0xb1,0x13,0xb9,0x94,0xd0,0x71,0xa9,0x48,0x8b,0x21,0xb0,0x11, + 0x0a,0x11,0xa0,0xa9,0x0f,0xa5,0xa3,0x91,0x91,0xb2,0x69,0x4c,0x89,0xa1,0xc3,0x09,0x48,0x79,0xe1,0xa1, + 0xc4,0x02,0x18,0x0b,0x98,0xb2,0x24,0x5a,0x3e,0x9a,0xa2,0xa4,0x40,0x1d,0x08,0xc2,0x92,0x19,0x09,0xb8, + 0x86,0x00,0x20,0xd0,0x93,0x90,0x1a,0x9a,0x18,0xa3,0x7a,0x08,0x0a,0x95,0x20,0x19,0x9a,0xf3,0x99,0x08, + 0x08,0x04,0x31,0x38,0x19,0xe3,0x2a,0x8b,0x8e,0xd1,0x98,0x02,0x40,0x22,0x94,0x05,0x8a,0x8b,0xab,0xaa, + 0x81,0x38,0x40,0x81,0x83,0x01,0x1a,0x98,0xa1,0x11,0x49,0x29,0x81,0x82,0x88,0x98,0xbb,0x9c,0xac,0xb9, + 0xa8,0x09,0x00,0x77,0x03,0x91,0xd1,0x9a,0xab,0xa9,0x00,0x30,0x43,0x15,0x13,0x23,0x11,0x80,0xa9,0xb9, + 0xad,0xcb,0x99,0x9a,0x9b,0x88,0x7e,0x07,0x08,0x99,0xaa,0xb8,0xa8,0x18,0x10,0x43,0x33,0x13,0x06,0x03, + 0x20,0x98,0xb1,0xc0,0x0c,0x9c,0x99,0x89,0x9b,0x91,0x77,0x29,0x0b,0xcb,0xb8,0x09,0x89,0x10,0x33,0x71, + 0x30,0x21,0x20,0x21,0x81,0xc3,0x10,0x0c,0x9b,0x8e,0x0a,0x98,0xf0,0x77,0x8b,0x00,0x09,0x9b,0xa0,0xb4, + 0x20,0x4a,0x1b,0x12,0x83,0x82,0x68,0x03,0x22,0x89,0x9f,0xc4,0x90,0x19,0xa2,0x89,0x2a,0xaf,0x10,0xc3, + 0x1a,0x15,0x1c,0x22,0x98,0x80,0x39,0xb4,0x31,0xe2,0x3b,0xb2,0x8a,0xc8,0x13,0xa0,0x7b,0xbb,0x14,0xa2, + 0x39,0x43,0x1d,0xb0,0x0b,0xf3,0x9b,0x3a,0x01,0x73,0x1a,0x81,0x90,0x30,0x07,0x88,0x09,0xa3,0x3b,0x3d, + 0xac,0x03,0xf1,0x5b,0xa8,0x08,0xd0,0x0a,0x84,0x41,0x38,0xa1,0x98,0xa4,0xb8,0x37,0x0f,0x90,0x01,0x13, + 0x8b,0xfb,0x1c,0x40,0xe3,0x88,0x83,0x5a,0x4a,0xb8,0x00,0xa1,0x39,0x52,0x0d,0xc0,0x01,0x7f,0xf2,0x28, + 0xa0,0x7b,0xb1,0x92,0xb5,0x3b,0x2a,0xd9,0x95,0x2a,0x31,0xba,0x06,0xa0,0x49,0xae,0x82,0xb3,0x50,0xb0, + 0x18,0x40,0x4b,0xa3,0xa5,0x9c,0xa9,0xe0,0x80,0x26,0x0d,0x81,0xa1,0x28,0x69,0x90,0x12,0x89,0x0a,0xf8, + 0x52,0xab,0x83,0x9b,0x19,0xbb,0x94,0x38,0x40,0x11,0x05,0x20,0x08,0xc1,0x08,0x3b,0x0f,0x19,0xa7,0x58, + 0x9b,0xc1,0x98,0x09,0x89,0x93,0x43,0x40,0x21,0x83,0x11,0x0b,0xcb,0xd8,0xa9,0x70,0x0b,0xb7,0x38,0x0e, + 0x98,0xa0,0x11,0x3a,0x81,0x05,0x22,0x30,0x98,0xc2,0x09,0x8e,0x8a,0xd6,0x21,0x1c,0xc1,0x91,0x09,0x1a, + 0x98,0x95,0x31,0x30,0x12,0x02,0xa3,0x5b,0x8f,0xb0,0x20,0xab,0x96,0x4b,0xba,0xb2,0x2c,0xa9,0x03,0x38, + 0x15,0x52,0x11,0x83,0x00,0xb9,0xba,0xbd,0x42,0x2f,0xf1,0x82,0x2b,0xba,0xb2,0x08,0x20,0x79,0x10,0x95, + 0x13,0x28,0x0a,0xb9,0xe1,0x98,0x82,0x7c,0x9a,0xc5,0x10,0x1c,0xa8,0x81,0x18,0x81,0x32,0x58,0x10,0x82, + 0x91,0x89,0x8c,0x0c,0xf3,0x82,0x4d,0x9a,0xd3,0x00,0x1b,0x88,0x01,0x11,0x13,0x42,0x02,0x21,0x2b,0xdb, + 0xf2,0x48,0x0c,0xe3,0x11,0x2c,0xb9,0xa2,0x2a,0x89,0x02,0x50,0x01,0x05,0x30,0x88,0xa1,0x0a,0xeb,0x83, + 0x4f,0xa9,0xb4,0x38,0x0e,0xa0,0x81,0x2a,0x08,0x12,0x21,0x84,0x33,0x4b,0xd8,0xb3,0x2b,0xe1,0x12,0x3f, + 0xaa,0xc3,0x29,0x0d,0xa1,0x11,0x29,0x82,0x34,0x49,0xa1,0x94,0x3a,0x0e,0xb8,0xa4,0x58,0x2c,0xd0,0xb3, + 0x29,0x0c,0xb0,0x11,0x29,0x11,0x24,0x40,0x01,0xa3,0x80,0x0c,0xac,0xd5,0x21,0x2e,0xb8,0xb3,0x4b,0x8c, + 0xc2,0x21,0x3a,0x81,0x14,0x20,0x91,0x94,0x19,0xab,0xd0,0x41,0x3f,0xb8,0xb6,0x28,0x1e,0x99,0x91,0x08, + 0x00,0x12,0x40,0x02,0x04,0x28,0x99,0xe1,0x88,0x4c,0x8b,0xd6,0x02,0x4b,0x8b,0xc1,0x91,0x08,0x18,0x48, + 0x28,0x93,0x86,0x20,0x1a,0xb8,0xb0,0x2a,0xd9,0xa5,0x59,0x0c,0xb0,0xa1,0x0a,0xa8,0x22,0x7c,0x80,0x95, + 0x22,0x4a,0x89,0xa1,0xa0,0xa9,0x31,0x4f,0xaa,0xb6,0x10,0x1d,0x99,0x91,0x08,0x91,0x23,0x78,0x00,0x93, + 0x20,0x0b,0xd0,0x88,0x2c,0xe1,0x95,0x49,0x1c,0xc0,0x92,0x2a,0x0b,0x91,0x21,0x10,0x05,0x22,0x28,0x90, + 0xa0,0xab,0xfb,0x82,0x6d,0x8a,0xc4,0x01,0x2c,0xa9,0xa1,0x28,0x09,0x84,0x51,0x49,0x00,0x92,0x80,0x99, + 0xa9,0x8b,0xb1,0x70,0x3e,0xc8,0xb4,0x29,0x1d,0xa8,0x92,0x11,0x30,0x50,0x10,0x94,0x93,0x29,0x0e,0xb9, + 0x90,0xd2,0x95,0x6a,0x1c,0xc0,0x92,0x09,0x09,0x80,0x20,0x21,0x04,0x33,0x28,0xa1,0xc1,0x9a,0x9d,0x5b, + 0x0c,0xd5,0x93,0x5b,0x8b,0xc1,0x81,0x1a,0x80,0x22,0x58,0x81,0x86,0x20,0x2b,0xb9,0xd2,0x88,0x5b,0x8a, + 0xc5,0x83,0x3c,0x8b,0xd1,0x80,0x09,0x91,0x22,0x68,0x10,0x83,0x22,0x2b,0xaa,0xe8,0xa8,0x4a,0x1c,0xe3, + 0x83,0x4b,0xab,0xe3,0x00,0x2b,0x98,0x84,0x31,0x31,0x22,0x12,0x80,0xc0,0xba,0xbc,0x2d,0xd8,0xa6,0x48, + 0x1c,0xb8,0xb2,0x0a,0x8a,0x01,0x68,0x11,0x06,0x22,0x48,0x88,0xa0,0xb8,0x9b,0x8d,0xc2,0x31,0x3f,0xc8, + 0xb3,0x19,0x0d,0x89,0x88,0x93,0x15,0x61,0x28,0x82,0x93,0x18,0x0c,0x9c,0xb9,0x18,0x8a,0xb6,0x22,0x2f, + 0x9a,0xb0,0xa8,0x89,0x48,0x6a,0x01,0x87,0x22,0x39,0x88,0xb0,0xb0,0xaa,0x0e,0xb1,0x41,0x2d,0xc1,0xa2, + 0x0b,0xab,0x99,0x09,0x83,0x37,0x71,0x20,0x02,0x82,0x80,0x0b,0xad,0xc9,0x19,0xc0,0x05,0x6b,0x8a,0xb1, + 0x89,0x9b,0x0a,0x2a,0x02,0x27,0x52,0x31,0x11,0x81,0xa0,0x9a,0x9f,0xba,0x10,0x89,0x96,0x30,0x8c,0xc0, + 0xa9,0xca,0x09,0x3b,0x01,0x27,0x53,0x31,0x22,0x81,0xa1,0xab,0xae,0xcb,0x39,0x8c,0xa7,0x20,0x0a,0x98, + 0x9c,0xe0,0x08,0x1a,0x20,0x50,0x03,0x16,0x21,0x00,0x08,0xd9,0xc1,0x99,0x5a,0x1c,0xc3,0x82,0xa8,0x09, + 0x0f,0xa9,0x80,0x08,0x31,0x60,0x21,0x23,0x02,0x83,0x19,0x9d,0xaa,0xe9,0x69,0x09,0xc4,0x10,0xc9,0x80, + 0x0d,0x98,0x29,0x98,0x14,0x30,0x04,0x32,0x92,0x13,0x0c,0xc0,0x8a,0xdb,0x78,0x9a,0xa7,0x19,0xc0,0x28, + 0xab,0x83,0x2b,0xa5,0x50,0x09,0x12,0x0a,0xb5,0x20,0x99,0x30,0x0d,0xb2,0x79,0xf2,0x02,0x1c,0x90,0x3b, + 0xe1,0x02,0x89,0x02,0x2c,0xc2,0x21,0x99,0x22,0x1d,0xb2,0x11,0xc0,0x13,0x0c,0xa2,0x59,0xc0,0x69,0xb9, + 0x84,0xa9,0x92,0x49,0x4a,0x2b,0xf2,0xa2,0x92,0x38,0x3b,0x1b,0xf1,0xa3,0x00,0x49,0x2c,0x80,0x80,0x93, + 0x4d,0x1a,0x88,0xa3,0xc1,0xb6,0x08,0x69,0x8a,0x91,0xa8,0x85,0x4c,0xa8,0x92,0xa1,0x21,0x0b,0x28,0xf4, + 0x04,0x3c,0x1a,0x2a,0xd1,0x01,0xa8,0x50,0x0d,0x81,0x29,0xd1,0x21,0x9a,0x53,0x2e,0x88,0x88,0xb5,0x28, + 0x99,0x48,0xa9,0xb4,0x91,0x48,0x3c,0x89,0xd2,0x93,0x01,0x4a,0x8d,0x12,0x09,0xc3,0x1a,0xa2,0x21,0xac, + 0x70,0x0b,0xb3,0x29,0x81,0x6d,0xb8,0x02,0x89,0x96,0x2a,0x09,0x2a,0xc2,0xb3,0xa0,0x22,0x4d,0x8a,0x81, + 0xf2,0x23,0x1e,0x00,0x8a,0xa4,0x91,0x93,0x5d,0x0a,0x18,0xb0,0x82,0x88,0x40,0x2e,0x19,0x0a,0xc5,0x20, + 0x0a,0x93,0x98,0xc3,0x6b,0xa8,0x11,0xb9,0x14,0x1d,0x93,0x1c,0xa4,0x20,0x0b,0x09,0x01,0xe0,0x11,0x18, + 0x2a,0x99,0x98,0x97,0x19,0x99,0x03,0x10,0xf0,0x03,0x1e,0x01,0x19,0xf2,0x81,0xa0,0xa5,0x39,0x8a,0xa2, + 0x42,0x2d,0x19,0xca,0x96,0x19,0x91,0x3a,0xe1,0x22,0xc9,0x41,0x0a,0xb2,0x88,0xd2,0xa4,0x82,0x1a,0x19, + 0xf0,0xa5,0x81,0x00,0x2a,0x19,0x19,0xc1,0xc5,0x92,0xa0,0x81,0x81,0x19,0x7b,0xb0,0xb4,0x98,0x11,0x69, + 0x48,0x0f,0x00,0xa0,0xb7,0x81,0x09,0x20,0x9a,0xa5,0xa1,0x21,0x2f,0x90,0x80,0xb3,0x20,0x3d,0x3d,0xb0, + 0xd4,0x92,0x10,0x18,0x89,0x90,0x09,0x04,0x69,0x8d,0x20,0xb8,0xa7,0x80,0x08,0x39,0x09,0x90,0xa2,0x69, + 0xa9,0x28,0x90,0x03,0x1f,0xb0,0xa7,0xb2,0x38,0x2b,0x20,0xb9,0xa2,0xaa,0x17,0x3b,0x98,0x01,0x3a,0xf2, + 0x29,0x00,0x38,0x0f,0xc0,0xa7,0xa2,0x39,0x3b,0x28,0xc8,0x91,0x99,0x15,0x4a,0xaa,0x83,0x9c,0x07,0x3d, + 0xc0,0x28,0x90,0x51,0x0c,0x08,0xb1,0x94,0x1a,0xb4,0x00,0xc2,0x5a,0xa8,0x11,0xb8,0x23,0x1a,0x3b,0xba, + 0x96,0xc6,0x29,0xa1,0x68,0xca,0x02,0x88,0x05,0x2c,0x3b,0x0a,0xc3,0x38,0xb8,0x02,0x8a,0x10,0x20,0xf1, + 0x79,0x8a,0x20,0xda,0x04,0xb1,0x13,0x2f,0x09,0x1a,0xc3,0x00,0xa2,0x59,0x8b,0x11,0xf1,0x95,0x88,0x39, + 0x2d,0x80,0xa1,0x91,0x09,0x30,0x59,0xf0,0x90,0xa4,0x21,0x2d,0x0a,0x08,0xb4,0x81,0x8a,0x17,0x0c,0x91, + 0x1a,0xc5,0x10,0x18,0x4c,0xb8,0xb3,0xb3,0x42,0x2d,0x1a,0x88,0xb3,0xa1,0xb8,0x73,0xa8,0x82,0xc8,0x42, + 0x8d,0x40,0xba,0x95,0x91,0x03,0x0a,0x2b,0x1c,0x88,0x22,0xf2,0xb2,0x28,0x4d,0x18,0xb8,0xa0,0x87,0x82, + 0x0c,0x19,0x21,0x98,0xaa,0xd1,0x42,0x80,0x2f,0xb1,0x01,0xc5,0x29,0x20,0x5d,0xb8,0x90,0xb3,0x60,0x0a, + 0x0a,0xc2,0x04,0x98,0x10,0x8b,0x86,0x8b,0x84,0x2d,0xb2,0x0a,0x94,0x58,0x08,0x1a,0xd8,0x28,0xa4,0x3a, + 0xa0,0x3d,0xc2,0x11,0x81,0x3f,0x89,0xa0,0xb6,0x11,0x2a,0x3c,0xa0,0xa2,0xb3,0x3a,0x3c,0x3a,0xf4,0x93, + 0x09,0x3b,0x80,0x11,0x03,0x8d,0x98,0x9b,0x21,0x2b,0x92,0x11,0xc3,0x7b,0x02,0x0d,0x94,0x80,0x03,0x0b, + 0x17,0xba,0xa8,0xcd,0x00,0x00,0x41,0x81,0x01,0xa1,0x39,0x08,0x30,0xa4,0x88,0xe9,0x8a,0x08,0x39,0x78, + 0x07,0xb9,0xba,0x8f,0x01,0x02,0x33,0x08,0x08,0xba,0x11,0x83,0x52,0x99,0xac,0xe9,0x88,0x01,0x28,0x77, + 0xa8,0x99,0xdb,0x10,0x12,0x41,0x92,0x89,0xa8,0x1a,0x23,0x18,0xb3,0xcd,0x09,0x0c,0x31,0x82,0x71,0x87, + 0xab,0xaa,0x0e,0x22,0x11,0x14,0xa9,0x09,0xb9,0x33,0x82,0x39,0xcc,0x9b,0xa2,0x61,0x20,0x9a,0x77,0xb9, + 0x89,0xcb,0x30,0x04,0x31,0x91,0x9c,0xa1,0x19,0x24,0x8a,0x80,0xcc,0x20,0x08,0x32,0xa0,0x7b,0x87,0x9c, + 0x99,0x0c,0x24,0x01,0x13,0xcb,0x19,0x99,0x42,0x91,0x2a,0xcb,0x0a,0x95,0x21,0x01,0x9c,0x67,0xba,0x89, + 0xd9,0x31,0x12,0x30,0xd2,0x9a,0x00,0x2a,0x05,0xa8,0x80,0x9c,0x30,0x91,0x23,0xe9,0x7a,0x96,0x9b,0x98, + 0x1c,0x33,0x01,0x22,0xbd,0x08,0xa0,0x52,0x91,0x0b,0xb0,0x1b,0x15,0x09,0x83,0xeb,0x66,0xaa,0x8a,0xc0, + 0x40,0x12,0x29,0xb1,0xbb,0x32,0x1c,0x14,0xd8,0x00,0x8a,0x48,0xa2,0x10,0xa0,0x0e,0x27,0xba,0x0a,0xac, + 0x53,0x83,0x38,0xc9,0x8b,0x93,0x20,0x24,0x9e,0x80,0x99,0x52,0x88,0x18,0xc8,0x7a,0x95,0xaa,0x98,0x8b, + 0x35,0x92,0x21,0xdb,0x1a,0xa3,0x40,0x01,0x9d,0x91,0x89,0x53,0x99,0x81,0xc8,0x78,0x94,0xab,0xa8,0x1c, + 0x34,0x81,0x12,0xcc,0x18,0x90,0x32,0xb2,0x0d,0x98,0x1a,0x06,0x08,0x08,0xab,0x70,0x96,0xa9,0xa9,0x1c, + 0x14,0x02,0x02,0x9d,0x09,0x90,0x15,0x90,0x0a,0xb9,0x10,0x04,0x28,0x98,0x9d,0x02,0x57,0xaa,0x9c,0xaa, + 0x34,0x23,0x20,0xdb,0x99,0x82,0x51,0x00,0xab,0xb0,0x2a,0x52,0x80,0xb2,0xab,0x2a,0x77,0xb1,0xbb,0xdb, + 0x51,0x12,0x11,0xc0,0x9a,0x10,0x38,0x04,0xaa,0xa9,0x8c,0x24,0x00,0x01,0xac,0x89,0x75,0xa4,0xbb,0xba, + 0x4b,0x34,0x12,0xa2,0x9d,0x19,0x08,0x16,0xa0,0x0a,0x9c,0x10,0x84,0x49,0x88,0xad,0x33,0x87,0x89,0x9d, + 0x8b,0x04,0x13,0x31,0xbb,0xa9,0xc2,0x63,0x10,0x8a,0xe8,0x88,0x11,0x28,0x81,0xc9,0x80,0x76,0x89,0xaa, + 0xd8,0x18,0x32,0x20,0xa3,0xba,0x18,0x2c,0x14,0xc3,0x80,0x8d,0x0b,0xa3,0x04,0x22,0x0f,0x49,0xb6,0x98, + 0x0a,0x8d,0x02,0x83,0x43,0x89,0x0b,0xb0,0x21,0x43,0x0b,0xc8,0xe9,0x00,0x18,0x01,0xa3,0x0a,0x77,0xa9, + 0xa9,0xd0,0x29,0x21,0x20,0x05,0x8a,0x1a,0x99,0x13,0x86,0x19,0x9a,0xad,0x01,0x8a,0x35,0xb1,0x89,0x9a, + 0x2d,0x05,0x92,0x20,0x8c,0xca,0xa4,0x11,0x72,0xb8,0x11,0xb0,0x89,0xda,0x9f,0x01,0x02,0x24,0x00,0x39, + 0x08,0x92,0x84,0x1a,0x0c,0xfa,0x90,0x89,0x1b,0x99,0xa0,0x23,0x42,0x5a,0x14,0x84,0x40,0x08,0x0c,0xc9, + 0xa1,0x88,0x1d,0x0c,0x90,0x84,0x29,0x10,0x11,0x97,0x09,0x84,0x3a,0xea,0xc8,0x87,0x1c,0x69,0x2b,0xa0, + 0xc5,0xa2,0x11,0x3b,0x39,0xe8,0xc4,0x10,0x29,0x3b,0xc0,0xa2,0x86,0x2a,0x8b,0x82,0x90,0x83,0x8f,0x42, + 0x4c,0x88,0xd1,0xc3,0x81,0x08,0x39,0x1b,0x98,0xa1,0x83,0xa7,0x10,0x10,0x5e,0x88,0x09,0xb0,0x90,0xf2, + 0x95,0x88,0x18,0x89,0xa3,0x51,0x2a,0x0c,0x82,0xc2,0xb4,0xc2,0x08,0x39,0xaa,0x43,0x2d,0x28,0xca,0x95, + 0x1a,0x10,0x0c,0xc4,0x11,0x91,0x6b,0x90,0x81,0xb2,0x00,0x1a,0x9a,0xe0,0x81,0x69,0x1b,0x10,0xe0,0x84, + 0x80,0x00,0x9a,0x85,0x2a,0x01,0x0f,0xb3,0x08,0xa2,0x5c,0xa8,0x02,0xb1,0x58,0x9b,0x13,0xf3,0x01,0x99, + 0x58,0x1b,0x91,0x99,0x92,0x5c,0x10,0x3b,0xf3,0x80,0x08,0x7b,0x99,0x83,0xb1,0x41,0x8c,0x81,0xa8,0x21, + 0x94,0x29,0xca,0x8a,0xb9,0x49,0x80,0x31,0xa3,0x52,0x98,0x31,0x89,0x41,0xb9,0x84,0x09,0x4c,0xba,0x91, + 0x99,0x5b,0xab,0x72,0x97,0x38,0x8d,0x8d,0xc2,0x10,0x10,0x39,0xa2,0x02,0x01,0x5b,0x90,0x00,0xb2,0x19, + 0xc0,0x3b,0xaa,0x8b,0xe5,0x10,0x19,0x6d,0x97,0x08,0x99,0x0d,0xb0,0x01,0x13,0x4a,0x92,0x08,0x03,0x4d, + 0x90,0x80,0xa2,0x3c,0x9a,0xa8,0xb4,0x2a,0x09,0x1b,0xa2,0x98,0x77,0x10,0xb1,0xef,0x92,0x18,0x31,0x8a, + 0x83,0x99,0x42,0x0a,0x03,0xb8,0x21,0x9d,0x01,0xb9,0x11,0xab,0x28,0xe9,0x12,0x8b,0x78,0x27,0xb8,0xcc, + 0x1d,0x82,0x12,0x02,0x0d,0x90,0x01,0x24,0x09,0x91,0xc9,0x21,0x0a,0x11,0xe9,0x08,0x8a,0x39,0xb1,0x80, + 0xe0,0x75,0xa5,0xba,0xc9,0x39,0x23,0x00,0xc3,0x9b,0x41,0x10,0x06,0xa8,0x08,0x8a,0x31,0xb2,0x9a,0xac, + 0x1d,0x93,0x81,0x28,0x8f,0x80,0x77,0xa1,0xba,0xaa,0x39,0x26,0x90,0x90,0xab,0x41,0x04,0x11,0xb9,0x8c, + 0x01,0x11,0x01,0xbd,0x98,0x80,0x52,0x88,0x8a,0x98,0x48,0x72,0x07,0xdb,0x8a,0x09,0x25,0x81,0x89,0x9a, + 0x38,0x06,0x00,0xa8,0x9c,0x21,0x10,0x18,0xea,0x09,0x01,0x48,0x80,0xaa,0x81,0x30,0x13,0x73,0xa7,0xbf, + 0x08,0x39,0x25,0xb0,0x09,0x8a,0x61,0x93,0x09,0xa9,0x8c,0x14,0x88,0x18,0xac,0x00,0x83,0x48,0x98,0x9b, + 0x13,0x18,0x33,0x1c,0x77,0xf9,0x0b,0x90,0x52,0x82,0x8a,0x98,0x09,0x26,0x88,0x8a,0xa9,0x38,0x13,0x8b, + 0xc0,0xab,0x44,0x08,0x00,0xd8,0x18,0x02,0x28,0x80,0x7d,0x87,0xbc,0x1a,0x88,0x26,0x91,0x0b,0x98,0x10, + 0x17,0x99,0x89,0xa9,0x31,0x02,0x0b,0xc8,0x0a,0x34,0x09,0x80,0xf8,0x10,0x20,0x19,0xb1,0x3b,0x77,0xea, + 0x0b,0x91,0x53,0x02,0x9c,0x80,0x80,0x53,0xa8,0x8a,0xb0,0x28,0x24,0xba,0x91,0x9c,0x71,0x01,0x89,0xa8, + 0x0a,0x52,0x98,0x80,0xb8,0x7b,0x17,0xbd,0x08,0x08,0x34,0xa2,0x8c,0x08,0x18,0x16,0xa9,0x0b,0xa0,0x21, + 0x15,0x9c,0x88,0x90,0x42,0x80,0x8b,0xb1,0x00,0x72,0x99,0x98,0x91,0x7a,0x07,0xdc,0x18,0x00,0x22,0xb3, + 0x8d,0x28,0x08,0x14,0xb8,0x0d,0x81,0x00,0x13,0xcb,0x09,0x92,0x31,0x02,0xae,0x01,0x80,0x40,0xa0,0x9a, + 0x21,0x8a,0x77,0xc6,0xbb,0x11,0x20,0x33,0xf1,0x0a,0x10,0x10,0x03,0xda,0x0a,0x82,0x10,0x83,0xbd,0x10, + 0x82,0x30,0xa1,0x9e,0x11,0x92,0x11,0x98,0x8e,0x02,0xb2,0x77,0xd2,0xac,0x20,0x10,0x41,0xc0,0x0b,0x31, + 0x08,0x13,0xea,0x1b,0x12,0x90,0x83,0xdb,0x29,0x03,0x08,0x81,0xbc,0x68,0x81,0x88,0x91,0x0c,0x58,0x80, + 0x79,0x87,0xbd,0x39,0x01,0x11,0xa2,0xad,0x40,0x82,0x00,0xb1,0x8e,0x31,0x90,0x00,0xa9,0x0c,0x33,0xa0, + 0x08,0xa9,0x2b,0x27,0xb8,0x29,0xa9,0x00,0x07,0xa9,0x77,0xd8,0x8b,0x12,0x01,0x30,0xe9,0x89,0x24,0x88, + 0x08,0xc8,0x19,0x33,0xb9,0x88,0xa9,0x5a,0x04,0xc8,0x18,0x19,0x29,0x95,0xa9,0x48,0x99,0x88,0x86,0x3b, + 0x57,0xfb,0x1a,0x12,0x08,0x10,0xba,0x2a,0x26,0x89,0x08,0xc9,0x28,0x14,0xaa,0x19,0xa8,0x28,0x06,0xaa, + 0x19,0x92,0x28,0x22,0xae,0x00,0x83,0x29,0x18,0xfa,0x77,0xb8,0x8e,0x11,0x01,0x18,0xa8,0x9b,0x44,0x81, + 0x0a,0xb0,0x99,0x44,0x90,0x9b,0x81,0x1a,0x61,0xb0,0x9a,0x21,0x19,0x11,0xf3,0x8a,0x41,0x91,0x88,0x08, + 0x7c,0x07,0xfb,0x19,0x11,0x80,0x01,0xaa,0x2a,0x16,0xa0,0x08,0x99,0x19,0x06,0xb8,0x09,0x81,0x08,0x32, + 0xda,0x0a,0x13,0x89,0x21,0xc8,0x1c,0x23,0xb0,0x00,0xc0,0x75,0x87,0xce,0x28,0x12,0x88,0x91,0xba,0x58, + 0x23,0xb9,0x80,0x99,0x5a,0x04,0xb9,0x1a,0x19,0x08,0x05,0xc8,0x1a,0x20,0x88,0x04,0xb9,0x0d,0x13,0xa2, + 0x28,0x9a,0x77,0xc4,0xae,0x11,0x02,0x18,0x90,0xcb,0x41,0x13,0xa9,0x90,0xa9,0x58,0x13,0xca,0x89,0x80, + 0x28,0x23,0xda,0x0b,0x02,0x82,0x41,0xaa,0xab,0x15,0x01,0x19,0x79,0x67,0xfb,0x0a,0x12,0x81,0x10,0xa9, + 0x0d,0x33,0x82,0x0a,0x99,0xab,0x44,0x02,0x8d,0x89,0xa0,0x31,0x12,0xbc,0x98,0x91,0x50,0x24,0xc9,0x0a, + 0x10,0x80,0x72,0x47,0xea,0x9c,0x12,0x01,0x10,0xa0,0xbb,0x42,0x33,0x89,0xb0,0xe9,0x28,0x23,0xc1,0x98, + 0x8a,0x8b,0x25,0x92,0x9b,0x0a,0x89,0x43,0x14,0xab,0x8a,0x92,0x22,0x77,0x87,0xbf,0x18,0x11,0x28,0x80, + 0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x88,0x00,0x88,0x00,0x88,0x00,0x88,0x00,0x88,0x00, + 0x88,0x80,0x80,0x80,0x00,0x08,0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip usbSetupClip = { + usbSetupData, sizeof(usbSetupData), 8957, 8000 +}; +// "Shutting down" +static const uint8_t shuttingDownData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0xf7,0x7f,0x7f,0x0f,0xc7,0x11,0x3b,0x0a,0xb2,0x02,0x2a,0x0a,0xa1,0x40,0x0b,0x31,0x0f,0xc3,0x20,0x2a, + 0x4c,0x0b,0xf5,0xa3,0x20,0x3d,0x89,0xb2,0x93,0x6b,0x0a,0xa1,0x82,0x39,0x3d,0x99,0x11,0x4d,0x2b,0xc1, + 0x02,0x89,0xc2,0xa4,0x7a,0x8a,0xa2,0xa2,0x68,0x2d,0xa0,0x92,0x00,0x4a,0x1b,0x90,0xa2,0x01,0x7b,0x1c, + 0xa1,0xc3,0x12,0x2d,0xb1,0x20,0xa9,0xa4,0xa2,0x11,0x5b,0x4f,0x9a,0xa4,0x38,0x3c,0x0a,0xd2,0xa3,0x20, + 0x3d,0xb8,0xa5,0x20,0x3d,0x99,0xb4,0x01,0x4a,0x0b,0xc3,0x11,0x3b,0xa9,0xb6,0x30,0x2d,0x19,0x08,0x09, + 0xb1,0x94,0x6a,0x2b,0x1a,0xe2,0xa3,0x81,0x39,0x8a,0x92,0x08,0x49,0x1c,0xf3,0x21,0x0b,0xb2,0x82,0x39, + 0x1c,0xf2,0xc6,0x11,0x5c,0x1b,0xb1,0x93,0x49,0x1b,0x90,0x91,0xc3,0x92,0x59,0x2c,0xc0,0xb5,0x21,0x2c, + 0xa8,0xb5,0x01,0x3a,0x1b,0xc2,0x82,0x08,0xa0,0xb4,0x82,0x7c,0x2c,0xb0,0xb5,0x11,0x4b,0x8a,0xb3,0x01, + 0x2a,0x98,0xd4,0x93,0x4a,0x3b,0x9a,0xd7,0x93,0x49,0x2c,0x98,0x92,0x10,0x3b,0xc8,0xb4,0x02,0x5c,0x1b, + 0xa1,0xa2,0x11,0x4c,0x0a,0x90,0xb3,0x50,0x2e,0xa8,0xb5,0x11,0x3c,0x89,0xb2,0x21,0x2c,0x90,0x18,0xa0, + 0xf3,0xc5,0x02,0x5b,0x1b,0xb1,0xa4,0x10,0x4b,0x3c,0xc8,0xa5,0x10,0x5b,0x1b,0xc1,0xa4,0x10,0x2a,0x89, + 0xb2,0x82,0x29,0x89,0xd2,0xa4,0x20,0x4c,0x0b,0xe4,0xa3,0x20,0x4d,0x0a,0xa1,0x01,0x3a,0x8a,0xc3,0x02, + 0x5c,0x1b,0x90,0x01,0x3a,0xb9,0xc7,0x12,0x3c,0x0a,0xc2,0x82,0x29,0xd0,0xa5,0x59,0x3c,0x8a,0xb3,0x01, + 0x19,0x19,0x89,0x92,0x59,0x2c,0xa8,0xc6,0x12,0x4e,0x0a,0xa1,0x92,0x39,0x99,0xd3,0xa3,0x48,0x2c,0x88, + 0x90,0x81,0xa0,0x94,0x29,0x3a,0x2d,0xf2,0xa3,0x20,0x3d,0x1a,0x90,0x81,0x09,0xb2,0x11,0x1b,0xd4,0x11, + 0xa9,0x94,0x49,0x1b,0xc0,0xc7,0x93,0x7b,0x3c,0x99,0xb4,0x01,0x4a,0x3c,0x99,0xc3,0x93,0x5a,0x2b,0x89, + 0xb2,0x93,0x08,0x18,0xb8,0xa6,0x38,0x4d,0x8a,0xd4,0x82,0x18,0x4b,0x3b,0x8a,0xe4,0x94,0x29,0x89,0x91, + 0x48,0x2d,0xb0,0xb5,0x01,0x5a,0x2b,0x98,0xc2,0x93,0x28,0x4c,0x1b,0xd2,0x93,0x6a,0x2c,0x98,0xc3,0x82, + 0x29,0x2a,0x2a,0x09,0x18,0x4c,0xa9,0xb5,0xa3,0x28,0x1a,0x98,0x12,0x3d,0xc8,0xb5,0x21,0x3d,0xa9,0xb6, + 0x21,0x4d,0x1b,0xd2,0x82,0x88,0x10,0x3b,0x98,0xf3,0xa4,0x48,0x2d,0x88,0xc2,0xa3,0x38,0x3d,0x99,0xc4, + 0x82,0x5a,0x1b,0xb1,0xa4,0x38,0x3d,0x8a,0xb3,0x82,0x3a,0xa9,0xc6,0x02,0x5b,0x1b,0xc1,0xa4,0x01,0x4b, + 0x2b,0x98,0xb3,0x30,0x1c,0xa0,0xb5,0x30,0x3e,0x1a,0xb0,0xa5,0x00,0x4a,0x1b,0xd2,0x12,0x4c,0x2b,0xd0, + 0xb5,0x11,0x4b,0x0a,0xb1,0xa4,0x81,0x7b,0x2b,0xb0,0xb4,0x02,0x4b,0x8a,0xb3,0x10,0x19,0x88,0x91,0x69, + 0x3d,0x8a,0xd4,0x02,0x4b,0xa9,0xb5,0x02,0x4c,0x8a,0xc3,0x83,0x4b,0x0a,0x80,0x00,0x3a,0xd8,0xb7,0x01, + 0x4a,0x0a,0xb1,0xb4,0x82,0x7b,0x2b,0xb0,0xb5,0x02,0x4c,0x0a,0xb1,0x93,0x49,0x1b,0x90,0xa2,0x10,0x09, + 0x59,0x2d,0xa0,0xd3,0x03,0x3d,0xb0,0x11,0x0a,0xb2,0xb4,0x58,0xaa,0xa5,0x28,0x09,0xa0,0x92,0xc2,0x93, + 0x69,0x3e,0xb9,0xb7,0x02,0x5c,0x8a,0xd3,0x93,0x39,0x2b,0xa8,0xa3,0x20,0x2b,0x99,0xb6,0x11,0x4d,0x8a, + 0xc3,0x11,0x4b,0x99,0xd4,0x83,0x5b,0x0b,0xe3,0x93,0x49,0x1b,0xc1,0xa4,0x38,0x1c,0xc1,0x94,0x39,0x8a, + 0xb2,0x12,0x2c,0xb0,0xa4,0x58,0x2d,0xb0,0xa4,0x20,0x2c,0x88,0x80,0x00,0x09,0x91,0x08,0xa1,0x00,0x7a, + 0x0c,0xd5,0x02,0x2a,0xa9,0xb7,0x30,0x2d,0xb0,0xa4,0x20,0x2c,0x88,0xb2,0x82,0x19,0x19,0xa8,0x92,0xc4, + 0x79,0x0a,0x88,0xa3,0x59,0xc8,0x94,0x39,0x2d,0xa8,0xa4,0x20,0x2c,0xa8,0x93,0x18,0x3b,0xa9,0xa5,0x48, + 0x2b,0x88,0xc6,0x02,0x3a,0x1c,0xe2,0x82,0x4b,0x8a,0x90,0x02,0x20,0x19,0x70,0xd1,0x81,0x8c,0x09,0x98, + 0x23,0x29,0x00,0xb0,0x84,0x39,0x20,0x88,0x92,0x0d,0xb0,0xc1,0xa2,0x77,0x0a,0xd9,0xaa,0x30,0x4b,0x84, + 0x81,0x10,0x0b,0x93,0x21,0x31,0x9c,0xc1,0x8b,0x89,0x1b,0x72,0x97,0x98,0xbd,0x1a,0x83,0x52,0x02,0x88, + 0xb0,0x3a,0x12,0x31,0xa3,0x9f,0xc8,0x0a,0x10,0x88,0x77,0x9a,0xa9,0xab,0x71,0x18,0x12,0xa0,0x19,0xb9, + 0x14,0x02,0x29,0xf8,0x99,0x80,0x29,0x93,0x79,0xa7,0x9b,0xa8,0x1a,0x16,0x10,0x01,0xba,0x20,0x1a,0x62, + 0xa8,0x88,0xca,0x29,0xa2,0x31,0xc1,0x77,0xaa,0x8a,0xb8,0x58,0x02,0x10,0x91,0x0c,0x82,0x00,0x33,0x9e, + 0x98,0xb8,0x41,0x88,0x91,0x75,0xc0,0xaa,0x99,0x59,0x13,0x80,0x92,0x8d,0x11,0x81,0x13,0xca,0x8b,0x98, + 0x40,0x12,0x9b,0x70,0xa7,0xab,0x8a,0x0b,0x37,0x00,0x18,0xc9,0x28,0x11,0x08,0xc3,0x9c,0x28,0x89,0x86, + 0x90,0x5b,0x07,0xac,0x09,0x99,0x53,0x82,0x09,0xc0,0x09,0x24,0x09,0x88,0xda,0x28,0x81,0x01,0xa2,0x9d, + 0x67,0xaa,0x8a,0xa1,0x58,0x12,0xa9,0x81,0x9a,0x61,0x90,0x88,0xa0,0x1c,0x22,0x98,0x20,0xdb,0x72,0xc5, + 0xaa,0x10,0x2a,0x25,0xb0,0x19,0xa9,0x38,0x86,0x99,0x08,0xaa,0x42,0x91,0x09,0xa8,0x3c,0x77,0xab,0x1b, + 0xa0,0x53,0x02,0x9b,0xa1,0x99,0x54,0x98,0x98,0xb0,0x3a,0x23,0xb8,0x82,0x9e,0x72,0xb6,0xab,0x00,0x3b, + 0x17,0xa0,0x18,0x8b,0x28,0x86,0x89,0x88,0xaa,0x23,0x92,0x3a,0xca,0x2a,0x77,0xaa,0x0b,0xb8,0x44,0x03, + 0x8b,0xb0,0x89,0x54,0x89,0x90,0xc8,0x29,0x12,0x88,0xb3,0xac,0x73,0xb5,0xbb,0xa1,0x5b,0x34,0xa8,0x81, + 0xab,0x69,0x92,0x80,0x90,0x8e,0x11,0x91,0x31,0xab,0x4b,0x27,0xbc,0x0a,0xaa,0x45,0x02,0x1a,0xc8,0x09, + 0x33,0x0a,0x92,0xfa,0x29,0x00,0x10,0xb3,0x9b,0x74,0xe3,0xa9,0x98,0x5a,0x22,0x90,0x92,0x9c,0x48,0x91, + 0x02,0xb0,0x1f,0x88,0x81,0x03,0x8a,0x1a,0x67,0xaa,0xaa,0xb9,0x62,0x12,0x00,0xb0,0xaa,0x41,0x18,0x12, + 0xf9,0x09,0x09,0x38,0x94,0x98,0x49,0x17,0xbc,0x0b,0x9a,0x44,0x03,0x29,0xb9,0x8b,0x14,0x28,0x83,0xbd, + 0x09,0x99,0x53,0x91,0x2a,0x7a,0xa7,0xba,0x09,0x2d,0x23,0xa3,0x12,0x8e,0x2a,0xa2,0x13,0x01,0x8f,0xa8, + 0x90,0x53,0x1a,0x98,0x64,0xb8,0xac,0xa8,0x28,0x35,0x18,0x82,0xcb,0x10,0x90,0x24,0xa1,0x1e,0x9a,0x99, + 0x86,0x00,0x00,0x36,0xac,0x9c,0xb8,0x41,0x41,0x00,0x91,0xba,0x11,0x19,0x34,0xc0,0x98,0xca,0x3b,0x01, + 0x01,0x06,0x17,0x8d,0x8c,0xa9,0x13,0x14,0x48,0x98,0xaa,0xa3,0x28,0x63,0x89,0x88,0xda,0x19,0x08,0x28, + 0x23,0x17,0xac,0x8d,0xab,0x12,0x16,0x40,0x09,0xaa,0xa2,0x00,0x72,0x08,0x80,0xb8,0x0a,0x9a,0x80,0x14, + 0x07,0x9a,0x9c,0xad,0x81,0x03,0x43,0x01,0x08,0xa0,0x01,0x32,0x79,0x08,0xa0,0xd1,0x98,0x09,0x6c,0xa6, + 0x98,0xa8,0x8e,0x90,0x80,0x04,0x20,0x20,0x0a,0x92,0x81,0x14,0x5a,0x80,0x98,0xd2,0x09,0x6c,0xb6,0x90, + 0xa8,0x0e,0x99,0x00,0x93,0x42,0x10,0x30,0x88,0x10,0xd2,0x21,0x9a,0x19,0xac,0x08,0x5d,0x97,0x08,0xb9, + 0x0f,0x98,0x00,0x83,0x61,0x18,0x18,0xb1,0x10,0x8a,0x30,0x0f,0x80,0xa8,0xa2,0x7a,0xb3,0x91,0xfa,0x1a, + 0x0b,0x31,0x01,0x17,0x18,0x10,0x8a,0xa1,0x89,0x80,0x1c,0xc0,0x90,0xb0,0x77,0x0a,0xa1,0xdb,0x91,0x1a, + 0x22,0x48,0x84,0x11,0xa1,0x2a,0xa9,0x19,0xb8,0x18,0xfa,0x91,0x99,0x67,0x3b,0xc8,0xab,0xd1,0x30,0x28, + 0x51,0x91,0x03,0x8a,0x18,0x8c,0xb3,0xa1,0x92,0x3f,0x8b,0x59,0xc7,0x11,0x9b,0x1a,0x9c,0x95,0x11,0x22, + 0x4a,0xa0,0x91,0xb1,0x30,0x0c,0x00,0xb9,0xa1,0x1d,0x7a,0xa1,0xb7,0x89,0xa9,0x4b,0x90,0x05,0x02,0x21, + 0x2b,0xa8,0x90,0xc4,0x11,0x09,0x0a,0xda,0xa1,0x17,0x7b,0xba,0xa0,0x9b,0x02,0x7a,0x01,0x03,0x91,0x01, + 0x2c,0x88,0x00,0xc3,0x01,0x0c,0x9a,0x79,0xb1,0xa7,0x1d,0xaa,0x18,0x88,0x06,0x20,0x91,0x10,0x99,0x82, + 0x4a,0x08,0x08,0xe1,0x91,0x2c,0xa6,0x48,0xcb,0xa0,0x1d,0xa0,0x32,0x20,0x23,0x3b,0xd1,0x01,0x88,0x03, + 0x39,0xb0,0x09,0xbe,0x72,0x1a,0xd7,0x08,0xab,0x10,0x4b,0xb3,0x24,0x2a,0x80,0x2a,0xc1,0x14,0x3a,0x80, + 0x09,0xf9,0x81,0x94,0x60,0x0e,0xc8,0x08,0x09,0x11,0x48,0x91,0x83,0x2a,0x89,0x38,0x90,0x87,0x29,0x9a, + 0xb8,0x16,0x6c,0xaa,0xc1,0x1b,0x9a,0x03,0x22,0x14,0x48,0x8a,0xc2,0x02,0x28,0x30,0x89,0xf1,0xa0,0x79, + 0x2a,0xf4,0x80,0x1c,0x99,0x01,0x11,0x02,0x11,0x89,0x90,0x28,0x00,0x85,0x20,0x8b,0xba,0x7c,0xa0,0xa7, + 0x3a,0x8f,0xa8,0x01,0x38,0x11,0x11,0x98,0xc2,0x10,0x5a,0x18,0x92,0xb2,0x3a,0x1f,0xe4,0x04,0x3d,0xbb, + 0xd3,0x10,0x3a,0x00,0x93,0x10,0x1a,0x89,0x93,0x12,0x10,0x09,0x89,0xc9,0x27,0x79,0xaa,0xf1,0x89,0x2c, + 0x88,0x84,0x30,0x2b,0xa0,0x93,0x48,0x3a,0x80,0xb3,0x92,0x2c,0x7a,0x11,0xe6,0x90,0x1d,0x8b,0xb3,0x32, + 0x5c,0x98,0xa4,0x20,0x2b,0xb0,0x95,0x38,0x2b,0xb0,0x04,0x31,0xa1,0xcc,0xae,0xa8,0x00,0x38,0x29,0x84, + 0x04,0x28,0x89,0x91,0x11,0x28,0x91,0x82,0x99,0x77,0x06,0x9b,0xcc,0xa8,0x08,0x2a,0x90,0x86,0x31,0x29, + 0xa2,0x85,0x28,0x89,0xb2,0x81,0x1c,0x62,0x22,0xe9,0xdb,0x9a,0x8a,0x90,0x02,0x41,0x30,0x13,0x15,0x21, + 0x00,0x81,0x88,0x9b,0xea,0x70,0x23,0xd1,0xbc,0x8e,0x99,0x90,0x10,0x38,0x12,0x15,0x22,0x21,0x20,0x90, + 0xa1,0x8a,0x9d,0x2b,0x67,0x81,0xad,0xac,0xb8,0x08,0x19,0x10,0x05,0x33,0x41,0x20,0x82,0x82,0x08,0x8b, + 0xbb,0xca,0x77,0x11,0xcb,0xcb,0x9a,0x8a,0x89,0x01,0x43,0x43,0x32,0x23,0x14,0x01,0x08,0x9a,0xda,0xc9, + 0x70,0x23,0xf9,0xba,0x9b,0x9a,0x98,0x10,0x52,0x32,0x24,0x24,0x21,0x11,0x80,0xb8,0xc9,0xbb,0x6c,0x24, + 0xd0,0xac,0x9c,0x9a,0x88,0x19,0x30,0x34,0x34,0x33,0x33,0x23,0x81,0xa8,0xcb,0xad,0x0d,0x26,0xa1,0xbe, + 0xbb,0x9a,0x99,0x89,0x31,0x44,0x25,0x23,0x33,0x32,0x11,0xa0,0xba,0xae,0xac,0x44,0x82,0xed,0xaa,0x9a, + 0x89,0x98,0x10,0x43,0x34,0x24,0x23,0x23,0x12,0x00,0xa9,0xdb,0xbd,0x58,0x83,0xfa,0xbc,0x9a,0x89,0x98, + 0x00,0x42,0x34,0x34,0x23,0x33,0x22,0x01,0xba,0xfb,0xca,0x3a,0x15,0xd8,0xad,0xab,0x98,0x88,0x89,0x40, + 0x53,0x24,0x22,0x32,0x32,0x01,0xb0,0xca,0xbc,0x8d,0x25,0xa0,0xbf,0xbb,0x89,0x88,0x89,0x10,0x54,0x43, + 0x32,0x22,0x23,0x03,0x91,0xbb,0xbd,0xad,0x53,0x81,0xde,0xba,0x99,0x08,0x89,0x88,0x43,0x44,0x23,0x23, + 0x23,0x33,0x01,0xba,0xcc,0xdb,0x58,0x01,0xfb,0xac,0x8a,0x88,0x98,0x98,0x21,0x45,0x23,0x23,0x32,0x43, + 0x12,0x90,0xbb,0xbc,0x3c,0x05,0xfa,0xbc,0xab,0x89,0x90,0x89,0x18,0x45,0x34,0x32,0x21,0x33,0x24,0x80, + 0xb9,0xbc,0x0c,0x25,0xb9,0xdf,0xaa,0x8a,0x80,0x89,0x08,0x42,0x35,0x23,0x12,0x33,0x42,0x01,0xa9,0xac, + 0xab,0x64,0x81,0xfb,0xac,0x9b,0x88,0x99,0x89,0x30,0x45,0x24,0x12,0x21,0x22,0x13,0x90,0xcb,0xbb,0x70, + 0x13,0xe8,0xcc,0xab,0x99,0x98,0x99,0x08,0x44,0x34,0x23,0x23,0x32,0x33,0x01,0xca,0xbc,0x3a,0x27,0xa1, + 0xce,0xbc,0x99,0x89,0xa9,0x89,0x41,0x35,0x33,0x23,0x33,0x43,0x12,0xa9,0xbc,0x8c,0x44,0x02,0xfb,0xbc, + 0x9b,0x9a,0xa8,0x9a,0x28,0x45,0x34,0x23,0x22,0x42,0x23,0x91,0xda,0xab,0x40,0x23,0xd8,0xce,0xab,0x9a, + 0x89,0xaa,0x09,0x62,0x34,0x24,0x12,0x21,0x32,0x11,0xb9,0xbd,0x3a,0x34,0x82,0xde,0xbc,0xaa,0x9a,0xaa, + 0x9a,0x38,0x55,0x43,0x32,0x21,0x23,0x13,0x81,0xcb,0x8c,0x33,0x14,0xda,0xce,0xab,0x9a,0xaa,0xaa,0x09, + 0x53,0x44,0x33,0x32,0x32,0x32,0x01,0xb8,0x9c,0x53,0x24,0xb0,0xcf,0xac,0xab,0xaa,0xaa,0x89,0x30,0x55, + 0x33,0x24,0x23,0x23,0x12,0x98,0xbb,0x38,0x53,0xa0,0xdf,0xbc,0xba,0xaa,0xab,0x9a,0x20,0x45,0x44,0x32, + 0x32,0x22,0x12,0x80,0xca,0x2a,0x43,0x03,0xfb,0xcd,0xba,0xaa,0xab,0xbb,0x88,0x53,0x44,0x43,0x32,0x33, + 0x23,0x01,0xa9,0x0c,0x22,0x12,0xfa,0xcd,0xbb,0xac,0xab,0xab,0x89,0x21,0x36,0x34,0x34,0x43,0x22,0x11, + 0x88,0x8a,0x12,0x11,0xd8,0xdd,0xcb,0xbb,0xcb,0xab,0x99,0x10,0x42,0x44,0x33,0x25,0x23,0x12,0x01,0x88, + 0x32,0x21,0xb9,0xcf,0xbc,0xbc,0xbc,0xba,0x9a,0x18,0x31,0x44,0x34,0x34,0x32,0x22,0x02,0x80,0x42,0x11, + 0xa0,0xcd,0xbd,0xbc,0xcb,0xab,0xaa,0x18,0x20,0x18,0x57,0x22,0x23,0x22,0x11,0x81,0x42,0x01,0x90,0xda, + 0xdb,0xbc,0xcb,0xab,0xab,0x89,0x08,0x22,0x44,0x53,0x42,0x22,0x22,0x12,0x71,0x01,0x81,0xba,0xdb,0xbc, + 0xcb,0xba,0xa9,0x88,0x10,0x42,0x43,0x34,0x32,0x24,0x12,0x11,0x7a,0x94,0x90,0xb9,0xcb,0xbc,0xbb,0xaa, + 0x8a,0x08,0x22,0x25,0x43,0x33,0x24,0x31,0x20,0x98,0x80,0x77,0x18,0x9b,0xcb,0xba,0x9a,0x99,0x80,0x21, + 0x31,0x32,0x13,0x15,0x30,0x20,0x11,0x69,0xa9,0x17,0x38,0x9f,0x2d,0x9e,0x06,0xca,0x22,0x12,0x2c,0x10, + 0x0f,0x93,0x90,0x8a,0xb2,0x43,0xda,0xa7,0xa8,0x07,0x3d,0x9a,0x63,0x0f,0x10,0x99,0xa7,0x28,0x4b,0x8a, + 0x90,0x82,0x5b,0x8a,0x11,0x92,0x4b,0x4b,0x1b,0xc9,0x97,0x18,0x9a,0x01,0x10,0xe4,0x01,0x88,0x50,0x8b, + 0xc2,0xb3,0x00,0x4a,0x9a,0xb6,0x10,0x21,0xaa,0xc6,0x91,0x19,0x01,0x91,0xa9,0x21,0x78,0x3a,0x8c,0xd1, + 0x02,0x18,0x2f,0xa0,0xb3,0xa4,0x18,0x69,0x3a,0xc0,0xa1,0xa1,0x49,0x3b,0x09,0xc8,0x03,0x49,0x28,0xb9, + 0xa3,0x00,0x49,0x1e,0xa0,0x83,0x80,0x3b,0x8d,0x87,0x59,0x89,0xaa,0xd3,0x08,0x18,0x28,0xc3,0x33,0x3d, + 0x09,0xe2,0xb4,0x28,0x3c,0x2b,0xc1,0x84,0x28,0x28,0x1c,0xe0,0x90,0x98,0x72,0x2b,0xb2,0xa8,0xc1,0x3a, + 0x0a,0x22,0x02,0x07,0x18,0x00,0x0a,0xc8,0x88,0x89,0x4a,0x7c,0xb1,0xa4,0xa9,0x09,0x1d,0x80,0x02,0x13, + 0x61,0x08,0x91,0xb0,0xa0,0x1c,0x8b,0xb8,0xa5,0x65,0x3b,0xa9,0xab,0xf0,0x20,0x18,0x32,0x01,0x95,0x08, + 0x89,0x1d,0xc8,0x91,0x91,0x38,0x7c,0xb2,0xa3,0xba,0x1b,0x0f,0x92,0x13,0x23,0x58,0x98,0xa0,0xb8,0x18, + 0x1c,0x90,0xb0,0xa4,0x57,0x2c,0xc8,0xa9,0xb0,0x60,0x18,0x12,0xa2,0x83,0x0c,0x09,0x1b,0xc2,0x01,0x88, + 0x3b,0x7d,0xc4,0x92,0xba,0x2a,0x1d,0x83,0x13,0x14,0x3a,0xaa,0xa9,0xd2,0x21,0x2b,0x09,0xd9,0xb2,0x67, + 0x2b,0xc8,0xaa,0xb1,0x70,0x28,0x11,0xa0,0x81,0x0b,0x19,0x88,0xa3,0x09,0xab,0x2a,0x79,0x87,0x93,0xbf, + 0x09,0x09,0x16,0x20,0x81,0x8a,0xc8,0x10,0x00,0x10,0xc0,0x90,0x8a,0x82,0x77,0x1a,0xe8,0x8a,0x80,0x50, + 0x01,0x01,0xb8,0x08,0x1b,0x22,0x18,0xa1,0x9d,0xa8,0x39,0x73,0xa7,0x80,0xae,0x08,0x10,0x15,0x18,0x98, + 0x9a,0xb2,0x41,0x10,0x09,0xe9,0x08,0x19,0x21,0x73,0xd0,0xc1,0x9b,0x30,0x49,0x85,0x90,0xa0,0x1a,0x81, + 0x22,0xc3,0x09,0x9d,0x18,0x92,0x04,0x37,0x0f,0xb8,0x8a,0x12,0x58,0x81,0x98,0xb1,0x6a,0x08,0x01,0xc1, + 0x08,0x0b,0x00,0xa3,0x52,0x97,0x1d,0xba,0x19,0x93,0x72,0x88,0x08,0xb8,0x31,0x08,0x11,0xd9,0x08,0x9a, + 0x23,0x90,0x78,0x97,0x0c,0xb9,0x2a,0x03,0x51,0x90,0x0a,0xb0,0x51,0x81,0x28,0xca,0x1a,0x90,0x41,0x90, + 0x5b,0x87,0x0d,0xa9,0x2b,0x85,0x20,0xa2,0x0b,0xc2,0x30,0x84,0x2a,0xd0,0x0a,0x82,0x39,0xa2,0x9c,0x77, + 0x8c,0x90,0x9a,0x33,0x2a,0x12,0xdb,0x83,0x19,0x62,0x9a,0x80,0xb9,0x51,0x89,0x11,0xba,0x7a,0xb7,0x09, + 0x99,0x3a,0x94,0x20,0xa1,0x1d,0x92,0x10,0x84,0x8b,0x90,0x0a,0x24,0x8b,0x81,0xad,0x77,0xaa,0x08,0xc9, + 0x42,0x90,0x10,0xc8,0x10,0x82,0x48,0xb0,0x0a,0xa1,0x49,0x82,0x9b,0x91,0x3e,0x47,0x9e,0x80,0xa8,0x24, + 0x98,0x18,0xd8,0x21,0x81,0x28,0xc0,0x09,0x92,0x38,0xb3,0x9d,0x01,0x7c,0xa6,0x9b,0x01,0x0b,0x15,0xa8, + 0x10,0xaa,0x51,0x91,0x10,0xb8,0x2c,0x82,0x08,0x04,0x9e,0x00,0x58,0x97,0x9c,0x00,0x99,0x24,0xa0,0x19, + 0xb8,0x40,0x03,0x1a,0xb1,0x8d,0x13,0x08,0x11,0xad,0x88,0x81,0x77,0xbb,0x2a,0xb8,0x52,0x94,0x1b,0x88, + 0x8a,0x07,0x80,0x18,0x9b,0x10,0x93,0x38,0x9b,0x9d,0xa4,0x73,0xc4,0x9c,0x01,0x1a,0x43,0xb8,0x09,0xa0, + 0x68,0x82,0x98,0xa1,0x8a,0x51,0x88,0x80,0xc8,0x09,0x10,0x77,0xb9,0x8b,0x81,0x29,0x25,0xaa,0x88,0x98, + 0x61,0x11,0x8a,0x98,0x0b,0x33,0x91,0xa1,0xfa,0x09,0x02,0x77,0xb9,0x0d,0x81,0x08,0x33,0xb9,0x0b,0xa1, + 0x33,0x16,0x8a,0x99,0x9a,0x24,0x82,0x89,0xcb,0x0a,0x03,0x74,0xa7,0xae,0x11,0x88,0x41,0x90,0xaa,0x82, + 0x10,0x43,0x89,0xaa,0xc1,0x12,0x32,0x1c,0xba,0xd9,0x12,0x11,0x77,0xc9,0x8c,0x02,0x88,0x33,0xb8,0xab, + 0x03,0x31,0x53,0xa9,0xaa,0x88,0x51,0x02,0xa9,0xf9,0x88,0x31,0x18,0x77,0xc9,0x8c,0x02,0x90,0x32,0xa8, + 0xab,0x12,0x13,0x42,0x99,0x9c,0x90,0x13,0x04,0x0a,0x9c,0x9c,0x11,0x85,0x18,0x57,0xcc,0x1b,0x12,0x88, + 0x32,0xc8,0x8b,0x22,0x03,0x03,0xa9,0x8c,0x09,0x43,0x02,0xbb,0xac,0x99,0x31,0x14,0xca,0x77,0xe2,0x9d, + 0x12,0xa1,0x20,0x82,0xac,0x10,0x13,0x11,0x88,0x8a,0xa9,0x10,0x26,0xa9,0x8c,0x98,0xa0,0x05,0x00,0x1c, + 0x77,0xd9,0x0b,0x22,0x98,0x11,0x92,0xac,0x20,0x23,0x82,0x98,0x0a,0x0b,0x48,0x05,0xc8,0xa9,0x88,0x19, + 0x21,0xb1,0xf9,0x77,0xa0,0x9f,0x11,0x91,0x18,0x01,0xa9,0x19,0x32,0x02,0xa0,0x89,0x99,0x29,0x34,0xc1, + 0xac,0x0a,0x29,0x29,0xb2,0xf2,0x89,0x77,0xe2,0x0d,0x20,0x80,0x18,0x01,0xaa,0x09,0x24,0x82,0x89,0x2a, + 0x9a,0x98,0x17,0x90,0x8c,0x09,0x80,0x80,0x11,0x1a,0xac,0x77,0xb3,0xbf,0x20,0x82,0x88,0x12,0xb0,0x9b, + 0x61,0x13,0xa8,0x09,0x08,0x8a,0x21,0x96,0xd8,0x09,0x18,0x89,0x08,0x82,0xab,0x1b,0x76,0x17,0xcd,0x19, + 0x12,0x88,0x10,0x81,0xbb,0x39,0x26,0x91,0x8a,0x08,0x8a,0x38,0x34,0xc9,0xac,0x00,0x81,0x80,0x01,0xb9, + 0x9e,0x11,0x77,0xa4,0xae,0x18,0x02,0x80,0x20,0xa0,0xac,0x31,0x16,0x90,0x8a,0x00,0x99,0x20,0x23,0xd9, + 0x9c,0x00,0x92,0x88,0x10,0xa9,0x9d,0x21,0x77,0x85,0xcc,0x0a,0x22,0x80,0x18,0x01,0xba,0x1b,0x55,0x01, + 0x9a,0x08,0x80,0x89,0x31,0x93,0xfb,0x8a,0x21,0x89,0x1b,0x02,0xe8,0x89,0x32,0x70,0x47,0xf9,0x9a,0x21, + 0x10,0x88,0x01,0xa8,0x9a,0x52,0x23,0xa9,0x8a,0x91,0xa0,0x41,0x13,0xeb,0x9a,0x10,0x08,0x1a,0x08,0xc9, + 0x8b,0x41,0x93,0x77,0x17,0xcc,0x8a,0x21,0x81,0x00,0x01,0xba,0x2a,0x35,0x82,0x99,0x08,0x99,0x08,0x14, + 0xa1,0xac,0x0a,0x1a,0x1a,0x80,0xd0,0xb9,0x00,0x43,0x82,0x76,0x57,0xfb,0x89,0x01,0x00,0x10,0x81,0xaa, + 0x18,0x14,0x82,0x81,0x98,0x8a,0x28,0x03,0xa0,0xbc,0x9c,0x18,0x82,0xa1,0xc9,0x9a,0x19,0x22,0x04,0x90, + 0x77,0x57,0xae,0x89,0x01,0x10,0x21,0xa8,0xaa,0x21,0x33,0x42,0x00,0xba,0x89,0x03,0x93,0xa0,0xad,0x8e, + 0x09,0x18,0x0a,0x9a,0xd8,0xb3,0x23,0x58,0x2a,0x75,0x57,0xea,0x99,0x00,0x00,0x12,0x90,0x9a,0x38,0x21, + 0x32,0x82,0xba,0x9a,0x85,0x02,0x88,0xbb,0xac,0x39,0x01,0xac,0x9c,0x9a,0x28,0x14,0xb4,0x92,0x82,0x77, + 0x57,0xad,0x89,0x88,0x30,0x12,0xb8,0x9a,0x22,0x32,0x63,0x88,0x8b,0x08,0x82,0x01,0xa0,0xbd,0x89,0x08, + 0x19,0x98,0xd9,0xa8,0x83,0x84,0x12,0x39,0xf0,0x77,0x97,0xab,0x99,0x8a,0x52,0x81,0x99,0x00,0x00,0x52, + 0x22,0x8a,0x09,0x88,0x18,0x85,0xd8,0x89,0x89,0x8a,0x10,0x99,0x0a,0x81,0xa0,0x15,0x11,0x5b,0x79,0x77, + 0xa2,0x9c,0xba,0x8a,0x31,0x81,0x08,0x02,0x08,0x65,0x01,0x08,0x82,0x99,0x18,0xb0,0xaa,0x98,0xad,0x09, + 0xb1,0x99,0x13,0x0a,0x78,0x11,0x08,0x85,0x60,0x77,0x92,0x0b,0xbc,0x9c,0x88,0xa9,0x30,0x11,0x48,0x25, + 0x02,0x33,0x83,0x18,0x10,0xad,0x9a,0xea,0xaa,0xa8,0x8c,0x19,0x88,0x11,0x15,0x21,0x53,0x11,0x78,0x37, + 0x98,0x89,0xeb,0xab,0xb8,0xba,0x10,0x00,0x61,0x23,0x31,0x35,0x02,0x32,0x82,0x89,0x99,0xaf,0xab,0xda, + 0xaa,0xa9,0x9a,0x18,0x18,0x42,0x15,0x33,0x73,0x57,0x08,0x00,0xc9,0xaa,0xc8,0x9b,0x89,0x9a,0x10,0x03, + 0x33,0x37,0x31,0x52,0x11,0x21,0x01,0x99,0x98,0xbd,0xab,0xcc,0xab,0xaa,0xba,0x88,0x88,0x40,0x72,0x57, + 0x10,0x01,0xaa,0x8a,0xda,0xaa,0xa0,0x8a,0x31,0x18,0x63,0x13,0x43,0x33,0x20,0x32,0x88,0x89,0xf9,0xba, + 0xb9,0xae,0x99,0xab,0x99,0xa8,0x00,0x22,0x77,0x27,0x11,0xb0,0xbb,0xda,0xac,0x8a,0x9a,0x20,0x12,0x44, + 0x34,0x41,0x32,0x11,0x12,0x91,0x89,0xbb,0xaf,0xca,0xba,0xaa,0x9b,0x8b,0x98,0x82,0x05,0x77,0x05,0x10, + 0x91,0xbb,0xa9,0xaf,0x99,0xa8,0x18,0x12,0x50,0x33,0x31,0x25,0x12,0x31,0x80,0x09,0xb9,0xbd,0xc9,0xbc, + 0x9a,0xcb,0x99,0x99,0x09,0x02,0x71,0x77,0x11,0x81,0xab,0x9a,0xdc,0x89,0x99,0x19,0x12,0x30,0x26,0x12, + 0x34,0x11,0x30,0x91,0x98,0xb0,0xbd,0xaa,0xbd,0xba,0xca,0x8a,0x89,0x19,0x02,0x77,0x07,0x01,0x91,0xaa, + 0xb9,0xbd,0x99,0xaa,0x28,0x11,0x52,0x34,0x41,0x22,0x12,0x22,0x00,0x00,0xb8,0xba,0xeb,0xac,0xbb,0xbc, + 0xaa,0xab,0x1b,0x8a,0x77,0x07,0x11,0xa0,0x9b,0xca,0x9d,0x98,0x99,0x21,0x01,0x54,0x22,0x41,0x13,0x10, + 0x03,0x89,0x98,0xcb,0xab,0xcc,0xab,0xc9,0x9a,0x88,0x0b,0x20,0x70,0x67,0x10,0x81,0xaa,0x9a,0xcd,0x99, + 0xa9,0x19,0x01,0x31,0x27,0x21,0x43,0x11,0x22,0x91,0x18,0xa9,0xac,0xba,0xad,0xaa,0xbb,0x9a,0xa9,0x2a, + 0x79,0x77,0x10,0x11,0xaa,0xaa,0xfb,0x9a,0xa9,0x8a,0x10,0x20,0x35,0x33,0x44,0x13,0x32,0x12,0x08,0x80, + 0xcb,0xb9,0xcc,0xaa,0xcb,0xaa,0xa9,0x0b,0x7a,0x37,0xd0,0x80,0x80,0x80,0x80,0x08,0x80,0x08,0x80,0x08, + 0x80,0x08,0x08,0x80,0x08,0x80,0x08,0x08,0x08,0x08,0x08,0x80,0x80,0x80,0x80,0x80,0x90,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip shuttingDownClip = { + shuttingDownData, sizeof(shuttingDownData), 7461, 8000 +}; +// "Restarting" +static const uint8_t restartingData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0, + 0xff,0xff,0xef,0x22,0x33,0x01,0x21,0x11,0xb9,0xbb,0xa9,0xcd,0xaa,0x89,0x90,0x89,0x77,0x17,0xaa,0x88, + 0xa9,0xac,0x8a,0x22,0x80,0x62,0x24,0x01,0x11,0x11,0xb8,0xab,0xa9,0xcc,0x9b,0x88,0x90,0x08,0x74,0x67, + 0xa9,0x08,0xb8,0xbb,0x8a,0x02,0x88,0x64,0x13,0x21,0x22,0x01,0xba,0x9b,0xda,0xad,0x89,0x88,0x88,0x30, + 0x63,0x57,0xb8,0x19,0xc0,0xad,0x08,0x88,0x10,0x53,0x12,0x32,0x13,0x90,0xaa,0xbb,0xce,0x8a,0x99,0x09, + 0x20,0x22,0x22,0x77,0xc3,0x19,0xd1,0x9c,0x80,0x8a,0x11,0x23,0x33,0x35,0x02,0x00,0xc9,0xba,0xbc,0xaa, + 0xab,0x10,0x21,0x53,0x02,0x76,0xc3,0x3a,0xf2,0x8b,0xa2,0x0c,0x02,0x10,0x33,0x22,0x21,0x83,0xac,0xa8, + 0xaf,0x98,0x9b,0x01,0x00,0x32,0x13,0x71,0x87,0x3c,0xe3,0x0c,0xa1,0x1b,0x92,0x39,0x14,0x21,0x23,0x91, + 0x08,0xf9,0x8a,0xc9,0x0a,0xa0,0x20,0x02,0x41,0x52,0x87,0x1b,0xc4,0x0d,0xc1,0x1a,0xa1,0x48,0x82,0x32, + 0x02,0x12,0x88,0xba,0xba,0xaf,0x98,0x8b,0x93,0x48,0x03,0x50,0x27,0x0c,0xa4,0x0e,0xb1,0x1c,0xb1,0x58, + 0x80,0x41,0x00,0x20,0x80,0x88,0xca,0x89,0xcb,0x00,0x9a,0x14,0x29,0x04,0x72,0xb0,0x05,0x8f,0xa1,0x1b, + 0xc1,0x48,0x88,0x32,0x10,0x13,0x08,0x90,0xbb,0xc9,0x9d,0xa8,0x19,0x81,0x51,0x81,0x74,0xb0,0x24,0x9f, + 0xa2,0x1c,0xb0,0x38,0x88,0x34,0x18,0x05,0x18,0xa1,0x8a,0xd9,0x89,0xaa,0x00,0x19,0x04,0x30,0x62,0xb5, + 0x50,0xcb,0xa2,0x0e,0xb0,0x38,0x99,0x16,0x28,0x84,0x20,0x98,0x80,0xbb,0xb9,0x9c,0xa8,0x28,0x01,0x53, + 0x30,0x17,0x7b,0xd8,0x01,0x8d,0xb1,0x39,0x89,0x23,0x40,0x13,0x31,0x90,0x89,0xbd,0xb9,0x8d,0xa9,0x18, + 0x10,0x33,0x32,0x75,0x98,0xa7,0x3b,0xeb,0x91,0x2b,0xa8,0x32,0x38,0x16,0x31,0x00,0x81,0xaa,0xda,0x9b, + 0xbb,0x88,0x19,0x22,0x63,0x31,0x87,0x60,0xab,0xf3,0x09,0xaa,0x91,0x39,0x02,0x44,0x21,0x04,0x10,0xa9, + 0xc0,0xab,0xcb,0xa8,0x09,0x20,0x41,0x83,0x67,0x1a,0xe3,0x10,0x8d,0xb8,0x08,0x09,0x02,0x51,0x12,0x33, + 0x10,0xa2,0xa9,0xcc,0xba,0xab,0xa9,0x10,0x50,0x22,0x43,0x87,0x60,0x0d,0xe1,0x80,0x8a,0x90,0x10,0x28, + 0x23,0x33,0x04,0x02,0x89,0xca,0xbb,0xad,0xa9,0x08,0x38,0x41,0x04,0x65,0x2a,0xe2,0x00,0x8d,0xc8,0x80, + 0x09,0x01,0x41,0x12,0x14,0x21,0x08,0x99,0xcb,0xd9,0x99,0x8a,0x00,0x21,0x23,0x72,0xa4,0x23,0x0f,0xd8, + 0x98,0x8b,0x99,0x11,0x30,0x16,0x43,0x11,0x83,0x88,0xc9,0xaa,0x9d,0xb9,0x80,0x10,0x61,0x10,0x25,0x29, + 0xf1,0x90,0x8d,0xb9,0x89,0x89,0x23,0x71,0x12,0x24,0x10,0x91,0x98,0xbb,0xbb,0x9d,0xa8,0x11,0x31,0x53, + 0x30,0x87,0x68,0x9c,0xc1,0x9a,0x9a,0x2b,0x8a,0x86,0x41,0x21,0x31,0x81,0x94,0x88,0x8a,0x1c,0x9c,0xb2, + 0x82,0x21,0x5a,0x28,0x97,0xa7,0x1a,0x9a,0x1e,0xc9,0x92,0x08,0x01,0x59,0xa1,0x04,0x08,0x02,0x2a,0xc1, + 0x21,0x0c,0xa2,0x18,0xb1,0x20,0x36,0x2f,0xe0,0x81,0xa9,0x20,0x1e,0xb2,0x01,0xb1,0x60,0x1c,0x91,0x90, + 0xa4,0x48,0x2b,0x08,0xd8,0xa7,0x10,0x88,0x49,0x9a,0xa6,0x80,0x80,0x5a,0xb9,0x95,0x98,0x03,0x2f,0x90, + 0x39,0xf2,0x20,0x0c,0x01,0x0a,0xa3,0x29,0xb2,0x79,0x99,0x84,0x0a,0x93,0x4c,0xe2,0x11,0x89,0x28,0x9b, + 0xb5,0x28,0x8a,0x69,0xab,0x97,0x08,0x81,0x4a,0x89,0x20,0xa8,0x94,0x88,0x90,0x09,0xd2,0x80,0x40,0x2e, + 0xb8,0x02,0x91,0x79,0x0b,0x02,0xa1,0xa3,0x0e,0x83,0x5a,0xba,0x11,0x39,0x00,0xbb,0xb7,0x58,0x88,0x2c, + 0xe2,0x11,0x88,0x5b,0x1a,0x91,0xc3,0xa3,0x28,0x4b,0x98,0x90,0xe1,0x80,0xa3,0x79,0x0b,0x11,0x0a,0x28, + 0x3d,0xe3,0x01,0xa0,0x29,0x2b,0xa3,0xc7,0x82,0x5b,0x0a,0x91,0xf1,0x31,0x1c,0x18,0xaa,0x95,0x92,0x22, + 0x3f,0x9a,0x80,0xd5,0x01,0x2a,0x29,0x1a,0xe3,0x01,0x19,0x39,0x2b,0xa9,0xa4,0xb2,0x87,0x3c,0x2a,0x8a, + 0xd4,0x01,0x39,0x0b,0x00,0xb4,0xc3,0x68,0x1c,0x08,0xd0,0x83,0x91,0x21,0x2f,0x89,0x80,0xc3,0x10,0x88, + 0x59,0x8b,0x82,0x39,0xc1,0x28,0x4b,0x88,0xe2,0xc3,0x30,0x1b,0x08,0xc8,0x85,0x4a,0x88,0x2c,0xc3,0x82, + 0x88,0x29,0x4c,0xa8,0x69,0x9a,0xa4,0xb1,0x22,0x3d,0x19,0x99,0x94,0x29,0x98,0x1b,0x58,0x3b,0xc0,0x21, + 0xb8,0xd2,0xc5,0x23,0x2f,0x88,0x08,0xc2,0x91,0xc2,0x13,0x0b,0x81,0xf0,0xa6,0x00,0x80,0x19,0xa0,0x01, + 0xc1,0xa4,0x91,0x80,0x4b,0xb1,0x29,0x03,0x4f,0x09,0x89,0xf4,0x11,0x90,0x28,0xba,0x41,0xb0,0x02,0xda, + 0x15,0x2b,0x90,0x1b,0xe3,0xb4,0x93,0x5a,0x4c,0x8a,0xa2,0xb4,0x20,0x1e,0x91,0xa2,0x90,0x58,0x4a,0x1b, + 0xa8,0xb4,0x11,0x3a,0x2d,0xaa,0x97,0x08,0x38,0x2f,0x18,0xa8,0xb5,0x01,0x3a,0x4d,0x0a,0x80,0x90,0x01, + 0x3b,0x1a,0x81,0x09,0xe4,0x21,0x3c,0x3b,0xf0,0x93,0x81,0x4a,0x0c,0x82,0x08,0x2b,0x5a,0x3a,0x9a,0xd4, + 0xa4,0x10,0x2a,0x8b,0xb5,0xb3,0x92,0x5a,0x0a,0x91,0x29,0x28,0x0b,0xd7,0x02,0x5a,0x2d,0x98,0xa2,0x20, + 0x3d,0x2a,0x09,0x49,0x3e,0x2a,0x0a,0xb2,0xa4,0x28,0x4b,0x0b,0xd5,0x92,0x28,0x3c,0x2a,0x89,0xd5,0xa3, + 0x10,0x5c,0x0a,0x18,0x19,0x2a,0x2a,0x19,0x19,0x5b,0x1b,0x80,0xf3,0x11,0xb0,0x12,0x8b,0xc3,0xc5,0x93, + 0x29,0x6c,0x1b,0xa0,0xb3,0x21,0x3c,0x2a,0xa9,0xb4,0xa4,0x38,0x3d,0x2b,0xb0,0xa4,0x81,0x29,0x09,0x80, + 0x90,0x29,0xe7,0x01,0xd3,0x18,0x08,0x08,0x80,0x18,0x09,0x08,0x81,0x98,0x93,0xa0,0x03,0x8a,0xa1,0xb2, + 0x68,0xb8,0x60,0x0c,0x18,0x18,0x4d,0x8a,0x00,0x01,0x4d,0x3a,0x0b,0xb2,0x90,0xb4,0x08,0x5a,0x2a,0x7a, + 0x0a,0x00,0xa0,0x11,0x11,0x3a,0xda,0xb7,0x81,0x89,0xc5,0x92,0x10,0x2d,0x98,0x90,0x80,0x19,0x0a,0x85, + 0x99,0x33,0x11,0x6c,0x21,0xb9,0x5a,0x09,0xb7,0x2c,0x6a,0x3d,0x0a,0xc1,0x81,0x91,0x28,0x00,0xf1,0xa4, + 0x20,0x3b,0x2b,0xd1,0x24,0x0c,0x19,0x3d,0xa0,0xa4,0x19,0x3c,0x29,0xe1,0x50,0x2d,0x49,0xc9,0x12,0xa8, + 0x94,0x1b,0x99,0xb6,0xc7,0xc4,0x93,0x3a,0x6f,0x99,0x81,0x80,0x18,0x89,0xd3,0xa4,0x38,0x3d,0x1b,0xa1, + 0xc3,0x82,0x18,0xa0,0xa4,0x7a,0x2d,0x2a,0x3a,0x3c,0x4a,0xf1,0xb3,0x01,0x29,0xa9,0xb7,0x01,0x4b,0x08, + 0x19,0x0a,0xc1,0xa4,0x82,0x6c,0x1b,0xd1,0xa4,0x01,0x3a,0x1b,0xb2,0x11,0x2c,0x9a,0xa6,0x20,0x3c,0x1a, + 0x08,0x2a,0xa8,0xd7,0xb4,0x82,0x5a,0x2b,0x89,0xb3,0x00,0x7b,0x8a,0xc3,0xc3,0x21,0x89,0x20,0x2b,0x0b, + 0xf3,0xa3,0x80,0x81,0x90,0x91,0xb3,0x81,0xb5,0x10,0x9a,0xd2,0x03,0xf0,0x94,0x90,0x70,0x0b,0xc2,0xc5, + 0x20,0x2b,0xa8,0xc6,0x01,0x18,0x08,0xa1,0x18,0x09,0x1b,0xb3,0x81,0x4a,0x8d,0x02,0x1a,0x50,0xa9,0x87, + 0x29,0x5b,0xc8,0x81,0x80,0x1a,0xa0,0x91,0x10,0x37,0xab,0x90,0xdb,0x39,0x80,0x43,0x02,0x19,0xc2,0x8a, + 0x81,0x98,0x85,0x89,0x89,0xba,0x39,0x2a,0x41,0x83,0xb0,0x77,0xe2,0x88,0xcb,0x29,0x83,0x41,0x04,0x89, + 0x91,0xab,0x30,0x88,0x70,0xa8,0x8a,0xa8,0x9b,0x16,0x08,0x22,0xc8,0x70,0xb7,0x0a,0xb8,0x8c,0x24,0x08, + 0x24,0xa8,0x1a,0xb0,0x1b,0x25,0x99,0x02,0xeb,0x19,0x90,0x28,0x05,0x89,0x00,0x6a,0x17,0x9e,0x88,0xa9, + 0x50,0x01,0x20,0x81,0xbb,0x10,0x98,0x32,0xa3,0xad,0x90,0x9c,0x42,0x01,0x18,0xa1,0x8d,0x20,0x77,0xc9, + 0x98,0xa9,0x28,0x26,0x08,0x81,0xa9,0x1b,0x02,0x28,0x02,0xfa,0x89,0x80,0x28,0x23,0xa8,0x19,0xab,0x08, + 0x77,0xc7,0x8a,0x98,0x08,0x44,0x91,0x88,0x98,0x9a,0x42,0x81,0x08,0xa9,0x9c,0x38,0x21,0x20,0x88,0x9e, + 0x08,0x11,0x72,0x87,0x9f,0x88,0x00,0x40,0x03,0xaa,0x98,0x90,0x38,0x06,0xa8,0x8a,0x89,0x3a,0x43,0x90, + 0x9a,0xa8,0x1a,0x44,0x61,0x27,0xcf,0x08,0x10,0x00,0x33,0xc9,0x8a,0x20,0x80,0x41,0xb0,0xac,0x28,0x81, + 0x31,0xa2,0xdb,0x19,0x12,0x28,0x92,0x77,0xf4,0x9b,0x11,0x01,0x20,0x93,0xbc,0x00,0x23,0x89,0x03,0xcc, + 0x0a,0x42,0x90,0x18,0xa0,0xbb,0x60,0x83,0x89,0x58,0x47,0xbf,0x08,0x11,0x81,0x32,0xd8,0x0b,0x21,0x82, + 0x1a,0xa1,0x9d,0x20,0x34,0xe9,0x08,0x98,0x10,0x31,0xb2,0x8d,0x70,0x96,0xad,0x10,0x00,0x01,0x22,0xea, + 0x19,0x11,0x80,0x18,0xb1,0x8d,0x21,0x01,0x99,0x11,0xbc,0x40,0x12,0xb8,0x09,0x77,0xe2,0x8c,0x10,0x10, + 0x10,0x02,0xcc,0x20,0x01,0x80,0x08,0xd8,0x1a,0x13,0x80,0x98,0x91,0x9c,0x53,0x80,0x89,0x09,0x77,0xf8, + 0x1a,0x00,0x10,0x11,0x91,0x9d,0x21,0x88,0x11,0x90,0xcb,0x38,0x82,0x00,0x81,0xca,0x1a,0x24,0x88,0x00, + 0x5a,0x77,0xec,0x18,0x80,0x21,0x11,0xb8,0x8b,0x03,0x1a,0x14,0x99,0xac,0x30,0x88,0x32,0xb1,0xac,0x18, + 0x12,0x39,0x03,0xcc,0x77,0xfa,0x29,0xa0,0x40,0x02,0xa8,0x0b,0x93,0x0a,0x16,0x99,0x99,0x08,0x90,0x61, + 0xa0,0x09,0x88,0x19,0x11,0x12,0x3c,0x77,0xec,0x28,0x98,0x30,0x12,0xa8,0x0b,0x92,0x1c,0x16,0x99,0x98, + 0x88,0x98,0x42,0xa1,0x19,0xa9,0x19,0x20,0x04,0x8a,0x77,0xf1,0x1c,0xa1,0x18,0x14,0x90,0x89,0x00,0x9b, + 0x44,0x98,0x88,0x89,0x99,0x30,0x93,0x1a,0xa2,0x9d,0x01,0x03,0x80,0x77,0xd6,0x0c,0x81,0x0a,0x33,0x81, + 0x99,0x00,0xcb,0x52,0x91,0x19,0x98,0xaa,0x29,0x13,0x1a,0x05,0x9c,0x08,0x08,0x02,0x70,0x47,0xbe,0x28, + 0xb9,0x50,0x02,0x80,0x19,0xc0,0x1b,0x05,0x0a,0x83,0xa9,0x99,0x10,0x98,0x63,0xb8,0x00,0xa8,0x18,0x10, + 0x77,0xe3,0x0c,0xa1,0x0a,0x24,0x00,0x00,0x88,0xbb,0x32,0xb8,0x63,0xb0,0x89,0xa8,0x88,0x38,0x84,0x1a, + 0xa3,0x9c,0x02,0x28,0x77,0xf2,0x2a,0xe9,0x28,0x82,0x20,0x11,0xa9,0x1a,0xa1,0x2c,0x05,0x9a,0x02,0xbb, + 0x18,0x00,0x19,0x34,0xab,0x13,0xdb,0x78,0x27,0x9f,0x02,0x9d,0x21,0x98,0x32,0x91,0x88,0x81,0xcb,0x41, + 0xa8,0x58,0xb0,0x1a,0x90,0x8b,0x22,0x90,0x61,0xa0,0x29,0x70,0x07,0x8e,0x92,0x8e,0x11,0x8a,0x23,0x80, + 0x11,0x80,0x8b,0x02,0xbb,0x34,0xdb,0x22,0xda,0x20,0xa9,0x28,0x90,0x80,0x23,0x7b,0x27,0x0f,0xa3,0x8f, + 0x82,0x8a,0x13,0x09,0x13,0x98,0x11,0xa8,0x2b,0xc2,0x1a,0x84,0x1c,0x83,0x9b,0x02,0xac,0x11,0xba,0x70, + 0x07,0x3c,0xa2,0xaf,0xa3,0x1c,0x81,0x29,0x04,0x10,0x23,0x98,0x11,0xd9,0x19,0xc9,0x1a,0xb1,0x29,0x93, + 0x39,0x83,0x8a,0x73,0xc7,0x31,0xaa,0x09,0xfa,0x88,0xa9,0x08,0x08,0x21,0x32,0x34,0x33,0x32,0x22,0x90, + 0xa0,0xbb,0xad,0xcb,0x98,0x2a,0xc9,0x77,0xb1,0xa7,0xab,0x80,0x1f,0x90,0x81,0x02,0x5b,0x88,0x81,0x92, + 0x58,0x1a,0x91,0xc3,0x04,0x5c,0x0a,0xb0,0xb5,0x10,0x2b,0x47,0x2f,0xa9,0x88,0xa1,0x5a,0x89,0x01,0x90, + 0x31,0x0a,0x93,0x91,0x87,0x3a,0x1a,0x8b,0xe5,0x01,0x19,0x2a,0xb8,0xa4,0x30,0xb7,0x21,0x0e,0x1b,0xc9, + 0x12,0x2a,0x20,0x98,0x87,0x39,0x88,0x08,0xd3,0x30,0x9a,0x01,0xa9,0x82,0x0c,0xa1,0x4b,0x3a,0x7f,0xf3, + 0x93,0x89,0x09,0x9b,0xa5,0x10,0x01,0x28,0xc4,0x21,0x0a,0x00,0xc0,0x12,0x2d,0x88,0x98,0xb2,0x19,0xb0, + 0x38,0xc9,0x73,0xb4,0xa7,0x8a,0xd8,0x39,0x99,0x33,0x18,0x52,0x1b,0xa3,0x98,0x92,0x4c,0xa9,0x10,0x8a, + 0x5b,0x0d,0xb1,0xa2,0x83,0x49,0x37,0x5d,0xb9,0x89,0xca,0x21,0x1a,0x85,0x11,0x02,0x4a,0xa8,0x81,0xb0, + 0x30,0x8e,0xa1,0x98,0xa2,0x5c,0xa9,0x81,0xc1,0x72,0xb5,0x23,0x9e,0xa0,0x8b,0xa2,0x68,0x00,0x31,0x98, + 0x03,0x0b,0x91,0x0a,0xf2,0x00,0x89,0x19,0xba,0xa5,0x38,0x2a,0x19,0x71,0xa7,0x42,0x8e,0xa8,0x9a,0xb3, + 0x50,0x00,0x12,0x91,0x12,0x1c,0x08,0x1a,0xd2,0x20,0x9b,0xa0,0xc8,0x92,0x3c,0xa8,0x03,0x79,0x87,0x33, + 0xaf,0xb0,0x9a,0xb3,0x78,0x00,0x21,0x88,0xa4,0x29,0x89,0x08,0xc0,0x83,0x2b,0x8a,0x8a,0xd1,0x81,0x98, + 0xa3,0x03,0x77,0x79,0xba,0x91,0x9c,0x92,0x6a,0x08,0x12,0x08,0x82,0x2a,0xb8,0x11,0x0a,0x28,0x9b,0xc4, + 0x09,0x9a,0x99,0xc0,0x04,0x4b,0x71,0x94,0xa7,0x1c,0xbb,0x29,0x0b,0x87,0x30,0x81,0x30,0xaa,0xa3,0x3a, + 0x88,0x59,0xc8,0xb4,0x88,0x99,0x2a,0xb9,0x84,0x3a,0xc1,0x73,0x94,0xb7,0x2b,0xcc,0x00,0x0a,0x86,0x30, + 0x80,0x11,0x8b,0xd3,0x11,0x08,0x28,0x8a,0xc0,0x89,0x9a,0x28,0x2b,0x92,0x38,0xaa,0x7a,0x17,0x17,0x0f, + 0xc8,0x18,0x0a,0x83,0x50,0x80,0x01,0xa9,0xc3,0x48,0x1a,0x02,0x09,0xc1,0x19,0x8d,0x80,0x19,0xc2,0x84, + 0x1a,0x98,0x57,0x4b,0xd8,0x91,0x0c,0x98,0x40,0x18,0x83,0x20,0xb9,0xa2,0x3b,0xb2,0x07,0x18,0x98,0x0b, + 0xcb,0xa2,0x39,0x08,0x84,0x90,0x9a,0x3e,0x97,0x36,0x0f,0xc0,0x08,0x0a,0x02,0x50,0x08,0x92,0x09,0xb8, + 0x21,0x2a,0xa5,0x21,0xab,0xf2,0x08,0x89,0x38,0x2b,0xf3,0x92,0x19,0x09,0x27,0x7a,0xa9,0xb1,0x0c,0x99, + 0x22,0x30,0xa5,0x12,0x1d,0xb8,0x83,0x20,0x30,0x3a,0xbc,0xf2,0x80,0x19,0x80,0x10,0x98,0xa0,0xa8,0xa2, + 0x76,0x58,0xf2,0x91,0x1c,0xa9,0x83,0x40,0x00,0x81,0x0a,0xc0,0x02,0x49,0x91,0x82,0x8a,0xd9,0x08,0x4b, + 0x88,0x83,0x89,0xa9,0x98,0x30,0x7a,0x07,0x16,0x1f,0xba,0xb2,0x38,0x29,0x04,0x10,0xd0,0xa2,0x6a,0x1a, + 0xa3,0x83,0x0a,0x9a,0x98,0x28,0x19,0xc0,0xc1,0x89,0x1a,0x11,0x53,0x48,0x97,0x07,0x2d,0xcb,0xb2,0x38, + 0x2a,0xa6,0x12,0x1b,0xd0,0x83,0x59,0x09,0xb2,0x80,0x0a,0x89,0x81,0x82,0x81,0x1c,0x8c,0x08,0x20,0xb3, + 0x06,0x87,0x22,0x1f,0xbc,0xd2,0x11,0x49,0x08,0xa2,0x91,0x88,0x48,0x5a,0x90,0xc3,0x80,0x1b,0x89,0x92, + 0x12,0x0a,0x8c,0x8b,0xc2,0x97,0x21,0x2b,0x05,0x78,0x8a,0xf1,0x98,0x3b,0x09,0x84,0x01,0xa0,0x01,0x7b, + 0x08,0xb4,0x93,0x4b,0x1d,0x98,0xb3,0x82,0x29,0x1c,0x99,0xb3,0x13,0x5c,0x1b,0x10,0xb7,0x97,0x3a,0x0e, + 0xb0,0x82,0x59,0x09,0xa1,0x81,0x28,0x39,0x18,0xd1,0xb3,0x38,0x2f,0x98,0xc3,0x10,0x2c,0x89,0xa2,0x82, + 0x08,0x08,0x08,0x47,0x68,0x9a,0xf0,0x88,0x2a,0x08,0x81,0x08,0x19,0x30,0x41,0x94,0x93,0x4b,0x0c,0xc2, + 0x93,0x2a,0x8e,0xa0,0x81,0x10,0x1a,0xa8,0xb2,0x42,0x7a,0x87,0x22,0x1f,0xba,0xb2,0x49,0x2b,0xc1,0x82, + 0x5a,0x08,0x83,0x02,0x88,0x18,0x2a,0xc0,0xd3,0x89,0x9a,0xa1,0x30,0x2e,0xb8,0x94,0x40,0x4a,0x29,0x87, + 0x14,0x1e,0xca,0xb1,0x38,0x1b,0xc2,0x01,0x5a,0x00,0x85,0x10,0x1a,0x90,0x01,0x19,0xc9,0xb0,0x1a,0x8a, + 0xb2,0x28,0x1f,0x80,0x13,0x30,0x19,0x47,0x64,0x1d,0xe9,0xa1,0x49,0x1b,0xc1,0x02,0x5b,0x88,0x94,0x20, + 0x2b,0xb1,0x94,0x39,0x8c,0xc0,0x81,0x39,0x0b,0xe2,0x01,0x39,0x88,0xb3,0x21,0x44,0x43,0x9b,0xfb,0xab, + 0x4b,0x99,0xc4,0x28,0x5b,0x82,0x04,0x39,0x8a,0x94,0x20,0x0b,0xe8,0x90,0x29,0x8a,0xd2,0x80,0x3a,0x08, + 0x94,0x11,0x1a,0x47,0x41,0xb0,0xf9,0x0b,0x8a,0xa2,0x91,0x2d,0x09,0x07,0x21,0x18,0x98,0x83,0x21,0x8a, + 0xe9,0x98,0x0a,0x08,0xa9,0xa9,0x08,0x21,0x22,0x10,0x94,0x77,0x25,0xb1,0xd9,0x8c,0x89,0xa1,0x88,0x8b, + 0x00,0x26,0x42,0x00,0x81,0x21,0x31,0x88,0xd9,0x9a,0x8b,0xba,0xda,0x9a,0x1b,0x18,0x03,0x24,0x60,0x70, + 0x37,0x82,0x9c,0xbc,0xb8,0x80,0x8b,0x9a,0x13,0x37,0x31,0x01,0x13,0x22,0x10,0xca,0xba,0xab,0x9c,0xbc, + 0xb9,0x89,0x28,0x20,0x01,0x43,0x54,0x61,0x67,0x11,0xaa,0xbc,0x9a,0x8a,0xba,0x99,0x31,0x54,0x23,0x23, + 0x33,0x43,0x10,0xb8,0xb9,0xab,0xbe,0xcb,0xab,0x9a,0x09,0x08,0x21,0x63,0x23,0x24,0x77,0x15,0xa8,0xbb, + 0x9c,0x99,0xb9,0xa9,0x29,0x53,0x24,0x32,0x32,0x43,0x12,0x91,0xa9,0xbb,0xcc,0xbc,0xca,0x9a,0x99,0x08, + 0x00,0x33,0x44,0x33,0x76,0x17,0xa1,0xaa,0x9c,0x99,0xa8,0xaa,0x0a,0x31,0x25,0x23,0x52,0x32,0x13,0x02, + 0x88,0xaa,0xda,0xcb,0xbb,0xac,0xab,0x9a,0x09,0x20,0x43,0x44,0x72,0x77,0x81,0x9a,0xaa,0x98,0x98,0xab, + 0x9a,0x10,0x34,0x32,0x43,0x24,0x33,0x21,0x88,0xa8,0xba,0xbe,0xdb,0xba,0x9a,0x9a,0x89,0x10,0x42,0x63, + 0x52,0x77,0x01,0xa9,0xa9,0x99,0x99,0xcb,0xba,0x18,0x31,0x32,0x33,0x27,0x34,0x22,0x01,0x91,0x80,0xab, + 0xbe,0xdb,0xaa,0x9b,0x9b,0x99,0x10,0x52,0x41,0x77,0x13,0xa0,0xaa,0x99,0x88,0xca,0xcb,0x8a,0x10,0x12, + 0x02,0x42,0x73,0x22,0x11,0x00,0x10,0x00,0xb9,0xfb,0xaa,0x9b,0xbb,0xca,0x9a,0x19,0x20,0x77,0x37,0xa8, + 0xa9,0x89,0x08,0xa9,0xcb,0x99,0x30,0x32,0x12,0x22,0x44,0x25,0x03,0x01,0x09,0x88,0xb8,0xfb,0xab,0xac, + 0x9a,0xaa,0xa9,0x19,0x32,0x77,0x47,0xa0,0xa9,0x89,0x88,0xa8,0xca,0x8a,0x28,0x22,0x03,0x22,0x73,0x42, + 0x12,0x82,0x00,0x08,0xa8,0xe9,0xba,0xac,0xba,0xc9,0xa9,0x89,0x7a,0x17,0x08,0x08,0x08,0x08,0x08,0x08, + 0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x80,0x80,0x80,0x80,0x80,0x90,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip restartingClip = { + restartingData, sizeof(restartingData), 5866, 8000 +}; +#ifdef HAS_DRV2605 +// "Sound and vibration" +static const uint8_t alertsSoundVibrationData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x77,0x7f,0xe7,0xc0,0x48,0x93,0x2a,0x1a,0x8d,0x84,0xb3,0x2c,0x31,0x0f,0x83,0xc9,0xb3,0x58,0x01,0x8c, + 0xb0,0x32,0x08,0x82,0x2f,0xd1,0x10,0x81,0x39,0x1e,0xa8,0xa7,0xa2,0x39,0x2b,0x00,0xf3,0x81,0x09,0x7a, + 0x89,0xa1,0xb4,0x10,0x5b,0x0a,0xc2,0x81,0x12,0x1d,0x08,0xb0,0x94,0x89,0x78,0x0b,0x91,0x93,0xa1,0x02, + 0x4d,0x2b,0xa9,0xb1,0x86,0x19,0x10,0x2c,0xb8,0x83,0x48,0xb9,0x48,0xe1,0x51,0x8b,0x80,0xf3,0x82,0x90, + 0x29,0x09,0x04,0xa9,0x82,0x8e,0x05,0x99,0x91,0x4a,0x91,0x91,0xb8,0x30,0x39,0xf2,0x28,0x99,0x11,0xb1, + 0xa2,0x84,0xb9,0xb1,0x2f,0x05,0x21,0x9f,0x79,0x0a,0xb2,0xb2,0x00,0x40,0x1c,0xb2,0xf4,0x82,0x4a,0x09, + 0x09,0xc5,0x01,0x3a,0x2c,0x89,0xb3,0x91,0x02,0x4d,0x0a,0x80,0x01,0xa8,0x48,0xb8,0x71,0x8b,0x81,0xf1, + 0x83,0x80,0x18,0x0a,0x08,0x91,0xc3,0xc4,0x92,0xa0,0x81,0x82,0x2a,0x7e,0xa9,0x81,0x01,0x18,0x28,0x8f, + 0x51,0x0b,0xc2,0xb2,0xa2,0x41,0x9a,0x20,0xe0,0xa3,0x00,0x80,0x93,0x1d,0x02,0x1d,0xc7,0x81,0x80,0x28, + 0x0c,0x22,0x0e,0x02,0xb9,0xa3,0x10,0xa6,0x09,0xb1,0x5c,0xa2,0x88,0xc2,0x40,0x89,0x90,0xc0,0x84,0xb1, + 0x30,0xa9,0x79,0xb0,0x00,0x18,0x29,0x00,0x2f,0xd2,0x18,0x82,0x29,0x0c,0xf1,0xa6,0x91,0x39,0x8b,0x22, + 0xf5,0x81,0x18,0x2a,0x08,0xd1,0x81,0x93,0x4d,0x08,0x0a,0x90,0x30,0xb0,0x28,0xd9,0x70,0x98,0x08,0x98, + 0xa4,0xa1,0x32,0x0e,0x88,0x22,0xe0,0x91,0xb2,0x20,0x20,0xcb,0x02,0xe7,0x11,0x90,0x2a,0x89,0x82,0xc4, + 0x10,0x0b,0x22,0xf1,0x00,0x00,0x4b,0xa9,0x20,0xf5,0x81,0x81,0x80,0x00,0x1b,0x81,0x0a,0x22,0xb0,0xaa, + 0xd4,0x33,0x0a,0xb8,0xd0,0x85,0x11,0xdb,0xa6,0xa1,0x05,0x8d,0x13,0x1c,0xc2,0x29,0x18,0x69,0x9a,0xc3, + 0x81,0x82,0x5d,0x99,0x91,0xb4,0x18,0x19,0xa0,0xb5,0x80,0x13,0xbb,0xa5,0xd3,0x02,0x8a,0x78,0x09,0x2b, + 0x09,0xc3,0x10,0x11,0x1f,0x28,0xc9,0x84,0xc1,0x01,0x09,0x03,0x8b,0x92,0x8e,0x87,0x89,0x81,0x4a,0x80, + 0x8a,0xe2,0x21,0x80,0xc2,0x8a,0x15,0x4d,0x0a,0xa0,0x81,0x92,0x5a,0x19,0xba,0xb7,0x11,0x29,0x3c,0x09, + 0xf3,0x10,0xa1,0x38,0x9c,0x92,0xa3,0xa6,0x88,0x59,0x0a,0xb1,0x31,0x1b,0x3a,0xfa,0x03,0x09,0x59,0xaa, + 0x11,0x92,0xb7,0x1c,0x31,0x3e,0x89,0xb0,0x82,0x83,0x4d,0x19,0xc9,0xb6,0x11,0x29,0x3c,0xd8,0xa3,0x84, + 0x1a,0x2b,0x19,0xc4,0xa2,0x18,0x4a,0x19,0xf2,0x01,0x19,0x69,0xab,0x22,0xb8,0x85,0x1e,0x00,0x00,0xb2, + 0x3a,0x80,0x39,0x8e,0x01,0x30,0x9b,0x38,0xf1,0x05,0x2d,0x3a,0xb9,0xa5,0x10,0x5b,0x8a,0x81,0xe5,0x11, + 0x19,0x2a,0x99,0x91,0x81,0x82,0x88,0x18,0xab,0x20,0x7b,0x3b,0x7d,0xc0,0x81,0x18,0x49,0x0b,0xd4,0x81, + 0x12,0x1c,0xc9,0x30,0x82,0xa8,0x0a,0x23,0xb5,0xd2,0x2a,0x3b,0x11,0xf1,0x30,0x1c,0x59,0xca,0x94,0xb3, + 0x31,0x2d,0x0a,0xb0,0x95,0x08,0x08,0x8b,0x41,0x19,0xb3,0x18,0xb0,0xca,0xc7,0x13,0x2b,0x5b,0xaa,0xa1, + 0x85,0x51,0x1c,0x99,0xd2,0x83,0x18,0x2f,0x90,0x91,0xa4,0x4b,0x38,0x2c,0xe2,0xa2,0x90,0x69,0x2b,0x98, + 0xc3,0xa3,0x31,0x2d,0x8a,0xb1,0x94,0x92,0x5a,0x0a,0x39,0xf2,0x92,0xa1,0x5a,0x2b,0x98,0xc5,0x81,0x38, + 0x29,0xa9,0xb7,0x90,0x20,0x1e,0x00,0x90,0xa5,0x00,0x19,0x3c,0xa8,0x82,0xc2,0x10,0x1c,0x18,0x12,0xa2, + 0xe0,0x38,0x4b,0x38,0xf2,0x90,0x8a,0x2b,0x9a,0x93,0x13,0x33,0x2e,0x42,0x91,0x05,0x99,0x3a,0xea,0x80, + 0xa0,0x11,0xa9,0x78,0xa6,0x89,0xca,0x09,0x01,0x40,0x82,0x10,0x90,0x29,0x81,0x21,0xa3,0x0b,0xeb,0x8b, + 0x90,0x19,0x77,0x90,0xbb,0xae,0x01,0x21,0x43,0x08,0x80,0xa9,0x32,0x28,0x13,0xf8,0xa8,0x9b,0x29,0x98, + 0x72,0x87,0x8b,0xcc,0x2a,0x82,0x43,0x83,0x19,0xa9,0x1a,0x86,0x20,0x90,0x9c,0xb9,0x89,0x03,0x48,0x77, + 0x9a,0xa9,0x9d,0x21,0x20,0x24,0xa8,0x91,0x8b,0x41,0x80,0x84,0xc9,0x89,0x9c,0x12,0x81,0x72,0xa7,0x9a, + 0xd9,0x29,0x02,0x41,0x81,0x8a,0xa0,0x39,0x23,0x29,0xc8,0xad,0xa1,0x10,0x33,0x0c,0x77,0xaa,0x99,0xcb, + 0x33,0x10,0x43,0xc9,0x81,0x89,0x70,0x88,0x80,0xc8,0x18,0x19,0x28,0xb1,0x78,0xb7,0x0a,0xb9,0x2a,0x05, + 0x20,0x82,0x0d,0x80,0x08,0x04,0x89,0x90,0x9c,0x11,0x08,0x22,0xdb,0x67,0xab,0x08,0xbb,0x43,0x01,0x40, + 0xb9,0x19,0xa2,0x70,0x90,0x0a,0xb0,0x09,0x04,0x2a,0x80,0x7d,0xb5,0x9a,0x88,0x2d,0x13,0x90,0x94,0x9b, + 0x41,0x89,0x04,0xc8,0x18,0x8b,0x30,0xc3,0x00,0xa9,0x77,0xba,0x88,0xc8,0x41,0x01,0x29,0xd1,0x88,0x03, + 0x29,0x92,0xac,0x01,0x0a,0x43,0xb9,0x29,0x7c,0xa7,0xaa,0x00,0x2c,0x32,0xb0,0x82,0xab,0x78,0x80,0x82, + 0xb0,0x2d,0x08,0x80,0x95,0x99,0x19,0x66,0xba,0x8a,0xb1,0x50,0x03,0x0b,0xb1,0x8a,0x35,0x09,0x00,0xfb, + 0x10,0x01,0x4a,0x98,0xaa,0x73,0xa5,0xac,0x10,0x8a,0x53,0x90,0x1a,0x98,0x29,0x06,0x89,0x08,0x9b,0x40, + 0x80,0x08,0xb0,0x3c,0x77,0xac,0x18,0xa0,0x30,0x84,0x8b,0x10,0x9a,0x53,0xa0,0x19,0xa8,0x1a,0x05,0x99, + 0x10,0xca,0x77,0xb9,0x0b,0x93,0x09,0x34,0xc9,0x29,0x91,0x39,0x23,0xad,0x81,0xb0,0x50,0x00,0x9b,0xb4, + 0x71,0xb4,0x9f,0x20,0x98,0x31,0x91,0x8c,0x11,0x90,0x32,0xa0,0x0d,0x91,0x88,0x33,0xab,0x2b,0x7a,0x17, + 0xdd,0x28,0x00,0x2a,0x84,0xb9,0x28,0x01,0x39,0x83,0xdb,0x10,0x08,0x49,0xa1,0xd9,0x01,0x67,0xbb,0x2c, + 0x81,0x98,0x24,0xb8,0x2b,0x03,0xa0,0x24,0xa9,0x1c,0x10,0x88,0x02,0xc8,0x0b,0x77,0xd0,0x9b,0x13,0xa8, + 0x61,0x80,0xab,0x22,0x91,0x48,0x00,0x9d,0x00,0xa3,0x10,0x08,0x9c,0x76,0xb8,0x9d,0x22,0xa0,0x38,0x82, + 0x9d,0x30,0x92,0x08,0x02,0xcb,0x10,0x02,0x09,0x80,0xcb,0x77,0xb0,0x8f,0x11,0xa1,0x18,0x02,0xab,0x38, + 0x84,0x90,0x82,0x9a,0x3a,0x10,0xa1,0xc3,0xca,0x77,0xb0,0x9e,0x21,0x91,0x19,0x12,0xbb,0x29,0x05,0x80, + 0x00,0x98,0x0a,0x20,0x10,0xb0,0xda,0x77,0xd8,0x0c,0x21,0xa1,0x08,0x83,0xba,0x38,0x24,0x88,0x89,0x19, + 0x0a,0x08,0x85,0xd2,0x3a,0x47,0xdc,0x1b,0x23,0xa8,0x28,0x82,0xbb,0x48,0x24,0x98,0x99,0x80,0x90,0x28, + 0x52,0xb9,0x7c,0x86,0xdc,0x29,0x12,0x99,0x10,0x81,0xab,0x50,0x12,0xa0,0x99,0x01,0x98,0x10,0x85,0xd8, + 0x71,0xa2,0xcf,0x10,0x83,0x98,0x20,0x90,0x8b,0x50,0x12,0xa8,0x89,0x10,0x89,0x28,0x85,0x09,0x37,0xed, + 0x0c,0x22,0x80,0x09,0x01,0xa9,0x1a,0x35,0x92,0xaa,0x19,0x81,0x88,0x33,0xc2,0x71,0xb4,0xff,0x00,0x02, + 0x88,0x00,0x90,0x99,0x30,0x24,0xa0,0xb9,0x81,0x01,0x49,0x21,0x1a,0x37,0xfd,0x0c,0x21,0x91,0x88,0x01, + 0x99,0x1a,0x43,0x04,0xa9,0x0a,0x18,0x08,0x03,0x94,0x57,0xda,0x9e,0x20,0x82,0x08,0x18,0x99,0x8a,0x43, + 0x04,0x98,0x0a,0x88,0x00,0x22,0x83,0x75,0xc1,0xcf,0x00,0x02,0x80,0x00,0x88,0x9a,0x38,0x25,0x81,0xa9, + 0x88,0x00,0x38,0x22,0x77,0xb0,0xbf,0x18,0x11,0x00,0x00,0x98,0xaa,0x48,0x53,0x00,0x99,0x98,0x80,0x20, + 0x22,0x77,0xa8,0xbe,0x08,0x02,0x10,0x10,0x99,0xaa,0x20,0x25,0x02,0x90,0x99,0x89,0x30,0x33,0x77,0xb2, + 0xcf,0x88,0x01,0x10,0x01,0x98,0x8b,0x20,0x32,0x23,0x92,0xb9,0x89,0x48,0x22,0x77,0xc3,0xcd,0x89,0x81, + 0x11,0x03,0xaa,0x0a,0x21,0x21,0x25,0x91,0x9a,0x10,0x18,0x30,0x77,0xd3,0xad,0x08,0x98,0x21,0x22,0xa9, + 0x88,0xa8,0x10,0x25,0x81,0x10,0x80,0x09,0x71,0x57,0xb9,0x9a,0xba,0x8a,0x42,0x80,0x08,0x91,0x09,0x53, + 0x01,0x28,0x12,0x9a,0x31,0x71,0x67,0xaa,0xaa,0xca,0x0a,0x01,0x88,0x31,0x01,0x21,0x16,0x01,0x40,0x00, + 0x89,0xb3,0x77,0x92,0xbb,0xba,0xbd,0x89,0x90,0x08,0x33,0x11,0x54,0x23,0x20,0x13,0xa1,0x00,0xa8,0x77, + 0xa2,0xac,0xca,0xac,0x89,0x98,0x28,0x22,0x31,0x45,0x22,0x31,0x13,0x88,0x00,0x2c,0x47,0xc9,0x9c,0xcb, + 0x9c,0x80,0x98,0x21,0x12,0x42,0x25,0x11,0x32,0x81,0x08,0xb0,0x70,0x93,0xbe,0xca,0xdb,0x89,0x88,0x19, + 0x31,0x21,0x45,0x03,0x23,0x14,0x19,0x08,0x9a,0x17,0xc9,0xac,0xdb,0xab,0x88,0x89,0x22,0x13,0x62,0x24, + 0x31,0x23,0x82,0x01,0xc0,0x78,0x80,0xbc,0xcb,0xcd,0x89,0x88,0x18,0x11,0x21,0x25,0x23,0x53,0x12,0x00, + 0x81,0x9a,0x15,0xca,0xac,0xce,0x9b,0x99,0x88,0x21,0x20,0x62,0x22,0x33,0x25,0x11,0x11,0x99,0x60,0xa0, + 0xba,0xfc,0xbb,0x9b,0x9b,0x10,0x00,0x42,0x24,0x43,0x34,0x13,0x14,0x81,0x28,0x04,0xba,0xfb,0xbd,0xbb, + 0xcb,0x89,0x00,0x20,0x33,0x44,0x34,0x32,0x43,0x01,0x11,0x41,0x81,0xd9,0xdc,0xbc,0xbb,0xab,0x89,0x00, + 0x32,0x44,0x43,0x33,0x33,0x14,0x12,0x30,0x26,0x00,0xc9,0xce,0xbb,0xbc,0x9a,0x99,0x00,0x23,0x44,0x43, + 0x33,0x33,0x12,0x11,0x38,0x25,0x80,0xea,0xbe,0xbc,0xac,0xaa,0x89,0x10,0x32,0x54,0x33,0x33,0x24,0x11, + 0x81,0x21,0x12,0xa8,0xfc,0xbd,0xcb,0xbb,0xab,0x89,0x20,0x52,0x34,0x34,0x42,0x12,0x11,0x80,0x72,0x00, + 0x88,0xcb,0xbc,0xcc,0xab,0xab,0x8a,0x00,0x32,0x36,0x34,0x34,0x32,0x22,0x30,0x13,0x01,0xc9,0xbf,0xcc, + 0xcb,0xab,0xaa,0x89,0x10,0x43,0x34,0x44,0x22,0x23,0x11,0x51,0x81,0x90,0xdb,0xbc,0xcc,0xaa,0x9a,0x08, + 0x10,0x13,0x15,0x23,0x42,0x30,0x20,0x80,0x67,0x09,0x99,0x9b,0xc9,0x99,0xa8,0x90,0x00,0x20,0x81,0xb0, + 0x87,0x71,0x7b,0x3a,0x7a,0xd5,0x91,0x98,0x18,0x09,0x00,0x89,0xa2,0x01,0x10,0x49,0x19,0x39,0xf8,0x11, + 0x71,0xf4,0xa0,0xb3,0x41,0x3d,0x8a,0x89,0xb2,0x42,0x39,0x2e,0xd8,0x94,0x00,0x48,0x1d,0x80,0xa1,0xb3, + 0x49,0x9a,0x18,0xb2,0x94,0x80,0xa0,0x30,0x99,0xa0,0x80,0x7a,0xa1,0x70,0x9b,0x81,0x10,0x94,0x5b,0xaa, + 0xc0,0xc1,0x11,0x00,0x14,0x20,0x09,0x88,0xf2,0x38,0x0f,0x08,0xd8,0xa3,0x81,0x42,0x7b,0x88,0x80,0xd2, + 0x28,0x8c,0x00,0x90,0x13,0x3b,0x08,0x88,0x90,0x1b,0x08,0xa7,0x48,0xa1,0x60,0xab,0xc0,0xba,0x82,0x7c, + 0x80,0x12,0xc3,0x32,0x0b,0x39,0xcd,0x83,0x1b,0x22,0x0f,0xb3,0x1a,0xb1,0x4d,0xb0,0x33,0x90,0x61,0x9b, + 0xa3,0xaa,0x94,0x7a,0x08,0x91,0xd1,0x80,0x0c,0x08,0x08,0x04,0x31,0x11,0x29,0xe9,0xa0,0x99,0x19,0x2b, + 0x07,0x18,0xb2,0x0a,0xbc,0x0a,0xa8,0x36,0x30,0x24,0x19,0xc1,0x9a,0xca,0x2a,0x89,0x14,0x16,0x28,0xab, + 0xeb,0xb8,0x18,0x48,0x32,0x03,0x94,0x99,0x9b,0x0b,0x82,0x25,0x21,0x88,0x93,0xbf,0xf8,0x89,0x90,0x40, + 0x18,0x02,0x90,0x02,0x4c,0x18,0x81,0xa5,0x20,0x1e,0x8a,0x40,0xb9,0xb4,0x9c,0x89,0x2c,0x92,0x25,0x00, + 0x10,0xa9,0xa5,0x21,0x40,0x3c,0xd8,0xa1,0x7a,0xd2,0x01,0x9c,0x09,0x9a,0x86,0x11,0x01,0x2a,0xd1,0x31, + 0x4b,0x39,0xe8,0xb3,0x3a,0x3d,0xa7,0x49,0x8d,0x2b,0xa8,0x15,0x08,0x01,0x8a,0xa2,0x38,0x11,0x3c,0xf1, + 0x00,0xb8,0xa3,0x77,0x1c,0xb8,0x99,0x81,0x79,0x80,0x11,0x99,0x00,0x0a,0x84,0x00,0x91,0x1d,0x8a,0x09, + 0x73,0xe2,0xa2,0x8c,0x29,0x2a,0x86,0x10,0x90,0x1a,0x98,0x11,0xa4,0x12,0x8d,0x1a,0x8c,0x93,0x17,0x3b, + 0xbc,0x8b,0xb2,0x35,0x20,0x38,0xda,0xa2,0x00,0x71,0x1a,0xb1,0xc0,0x80,0x4b,0x78,0xc1,0xa2,0xab,0x39, + 0x3b,0x86,0x01,0x81,0x1c,0x88,0x01,0x95,0x10,0x8a,0x0c,0xb8,0x83,0x47,0x2d,0xba,0x9a,0xa2,0x71,0x10, + 0x29,0xb8,0x91,0x81,0x61,0x09,0x00,0xba,0x80,0x8a,0x71,0xa7,0x08,0xbb,0x2b,0x99,0x16,0x82,0x30,0x0d, + 0x88,0x90,0x06,0x18,0x88,0x8b,0xb0,0x00,0x61,0xa6,0x09,0xcb,0x1c,0x90,0x42,0x01,0x20,0xba,0x01,0x80, + 0x26,0x08,0x08,0x9d,0xa0,0x90,0x72,0xa5,0x09,0xdb,0x0b,0xa0,0x53,0x01,0x30,0xab,0x91,0xb3,0x27,0x18, + 0x08,0xbb,0xb0,0x98,0x22,0x77,0x0a,0xaa,0x9f,0x91,0x20,0x22,0x29,0xb1,0x98,0x93,0x70,0x11,0x10,0xc9, + 0x89,0xba,0x20,0x78,0xa7,0x90,0xe9,0x09,0x09,0x31,0x82,0x12,0xa9,0x29,0x88,0x35,0x82,0x01,0xac,0x9a, + 0xaa,0x20,0x77,0x09,0xa8,0xaf,0x98,0x18,0x04,0x20,0x81,0x8a,0x93,0x28,0x25,0x39,0x00,0x9d,0xc1,0x98, + 0x60,0x13,0x88,0xf8,0xac,0xa8,0x2a,0x02,0x21,0x83,0x19,0x03,0x68,0x23,0x39,0x82,0xbb,0xa2,0xd9,0x73, + 0x86,0x10,0xfb,0x9a,0xaa,0x1a,0x80,0x10,0x93,0x50,0x13,0x52,0x13,0x20,0x82,0x0a,0xa0,0xbc,0x71,0x84, + 0x81,0xfb,0x9d,0xaa,0x09,0x80,0x18,0x01,0x30,0x35,0x42,0x24,0x11,0x02,0x88,0x08,0xbb,0x0c,0x17,0x88, + 0xda,0xbe,0xaa,0xaa,0x00,0x08,0x21,0x32,0x45,0x24,0x33,0x23,0x12,0x92,0x88,0xba,0xbf,0x38,0x90,0xc0, + 0xdf,0xbb,0xba,0x89,0x81,0x20,0x42,0x53,0x34,0x33,0x24,0x21,0x01,0x88,0xa9,0xcc,0xbb,0x72,0x88,0xc8, + 0xcd,0xab,0xaa,0x18,0x08,0x30,0x33,0x46,0x33,0x43,0x12,0x11,0x00,0x98,0xba,0xcd,0x8b,0x26,0x10,0xd9, + 0xcd,0xab,0x9a,0x08,0x88,0x12,0x42,0x54,0x32,0x32,0x13,0x21,0x81,0xa8,0xd9,0xac,0x8c,0x34,0x00,0xf9, + 0xbd,0xab,0x9a,0x08,0x00,0x22,0x53,0x34,0x25,0x22,0x12,0x11,0x90,0xa8,0xcb,0xbc,0xdb,0x52,0x11,0x90, + 0xce,0xcb,0xaa,0x09,0x08,0x20,0x32,0x45,0x43,0x32,0x22,0x11,0x00,0x99,0xca,0xbc,0xcb,0x59,0x13,0x82, + 0xfb,0xae,0xaa,0x8a,0x88,0x28,0x31,0x53,0x25,0x23,0x33,0x11,0x01,0x98,0xba,0xbd,0xac,0x9c,0x35,0x21, + 0xb0,0xde,0xab,0xbb,0x8a,0x89,0x22,0x53,0x54,0x32,0x23,0x23,0x11,0x80,0xaa,0xeb,0xab,0xcb,0x59,0x13, + 0x02,0xea,0xad,0xbb,0xab,0xa9,0x19,0x42,0x44,0x25,0x33,0x32,0x12,0x01,0xa9,0xba,0xbe,0xba,0xbb,0x74, + 0x21,0x81,0xda,0xac,0xcb,0xaa,0xa9,0x08,0x42,0x53,0x34,0x33,0x33,0x21,0x00,0xb9,0xcb,0xbd,0xaa,0x8b, + 0x37,0x21,0x91,0xec,0xba,0xbc,0xaa,0xa9,0x20,0x33,0x46,0x43,0x32,0x23,0x11,0x80,0xba,0xda,0xdb,0x9a, + 0x0b,0x27,0x11,0x01,0xda,0xbb,0xcc,0xab,0x9a,0x18,0x33,0x64,0x33,0x43,0x22,0x02,0x00,0xaa,0xab,0xbd, + 0xbb,0x0c,0x37,0x00,0x80,0xea,0xbb,0xbc,0x9c,0x89,0x18,0x53,0x43,0x43,0x23,0x32,0x01,0x90,0xaa,0xeb, + 0xba,0xbb,0xab,0x66,0x01,0x00,0xb0,0xbd,0xca,0xac,0x8a,0x88,0x31,0x44,0x34,0x43,0x22,0x12,0x00,0xa9, + 0xbb,0xbd,0xbb,0xcb,0x70,0x13,0x10,0x81,0xcd,0xba,0xbc,0xac,0x88,0x08,0x53,0x33,0x36,0x22,0x11,0x12, + 0x90,0xaa,0xdb,0xbb,0xba,0x7a,0x13,0x11,0x12,0xfa,0xba,0xcc,0xbb,0x9a,0x89,0x21,0x35,0x44,0x43,0x22, + 0x22,0x01,0xa8,0xb9,0xbc,0xbc,0x5a,0x82,0x01,0x11,0xeb,0xca,0xcb,0xbb,0xaa,0x0a,0x30,0x44,0x34,0x25, + 0x33,0x22,0x12,0x00,0xa9,0xca,0xcb,0x79,0x91,0x00,0xa8,0xae,0xcb,0xbb,0x9c,0x8a,0x08,0x22,0x44,0x34, + 0x43,0x22,0x12,0x82,0x91,0x90,0x8b,0xcc,0x77,0x09,0x88,0xd9,0x99,0xaa,0x8a,0x98,0x18,0x21,0x31,0x24, + 0x13,0x24,0x10,0xa3,0x85,0x18,0x80,0x20,0x7f,0xa7,0x81,0xa8,0x0c,0x99,0x99,0x81,0x08,0x01,0x10,0x80, + 0x93,0x93,0x02,0x83,0x32,0x7c,0x6b,0x09,0x78,0x97,0x2a,0x99,0xab,0x93,0x09,0x08,0x18,0x4a,0x3a,0x0b, + 0x92,0x81,0x30,0x39,0x7c,0x5b,0x1a,0x00,0x7b,0x97,0x89,0x08,0x0e,0x81,0x80,0x09,0x00,0x89,0x94,0x08, + 0x09,0x91,0x02,0x30,0x39,0x90,0x96,0x21,0x7f,0x97,0xb8,0x09,0x0c,0x80,0x81,0x18,0x89,0x93,0x63,0x3b, + 0x99,0xa3,0x20,0x19,0x81,0x81,0xd1,0xd4,0x77,0xa1,0xbb,0xa8,0x8a,0x08,0x11,0x03,0x21,0x21,0x11,0x31, + 0x42,0x02,0xa2,0x08,0x9d,0xca,0xc8,0x71,0x77,0xd9,0x8b,0x08,0x88,0x20,0x33,0x81,0x08,0x20,0x00,0x30, + 0x31,0xda,0xba,0x8b,0xaa,0xa8,0x75,0x47,0xfb,0x8a,0x00,0x01,0x21,0x12,0xa8,0x89,0x10,0x81,0x11,0x92, + 0xeb,0x9a,0x80,0x80,0x11,0x72,0x47,0xec,0x0a,0x01,0x01,0x31,0x91,0xb9,0x1a,0x12,0x01,0x21,0xb9,0xce, + 0x08,0x11,0x01,0x81,0x75,0xb4,0xce,0x29,0x11,0x01,0x21,0xa8,0xac,0x21,0x22,0x88,0x90,0xdb,0x8a,0x33, + 0x02,0x89,0xa8,0x77,0xc1,0xaf,0x11,0x11,0x00,0x02,0xaa,0x8b,0x15,0x81,0x08,0xb8,0xab,0x58,0x02,0x90, + 0x18,0x7a,0x87,0xeb,0x1b,0x13,0x01,0x20,0xb8,0xbb,0x62,0x01,0x98,0x80,0x9c,0x18,0x05,0x88,0x09,0xa8, + 0x67,0xb8,0xae,0x21,0x12,0x08,0x91,0xba,0x39,0x15,0x88,0x0a,0xb9,0x2a,0x44,0xa0,0x9a,0x08,0x79,0x17, + 0xdc,0x1a,0x22,0x81,0x10,0xba,0x8a,0x35,0x80,0xa9,0xa0,0x0b,0x63,0x92,0x8c,0x09,0x30,0x67,0xda,0x8b, + 0x22,0x02,0x10,0xc9,0x8a,0x52,0x81,0x99,0x98,0x8a,0x43,0x82,0xac,0x08,0x00,0x77,0xc8,0xab,0x32,0x21, + 0x08,0xc0,0x8c,0x42,0x92,0x99,0x98,0x0a,0x53,0x91,0x9c,0x18,0x00,0x71,0xa7,0xbc,0x38,0x12,0x80,0x00, + 0xac,0x30,0x06,0x9a,0x88,0x98,0x40,0x02,0xdb,0x00,0x10,0x28,0x57,0xcc,0x0a,0x23,0x00,0x08,0xd9,0x29, + 0x33,0xb8,0x98,0x99,0x48,0x05,0xaa,0x1a,0x08,0x22,0x52,0x97,0xbf,0x29,0x04,0x00,0x88,0xba,0x51,0x02, + 0xa9,0xa8,0x09,0x53,0xa1,0x9b,0x19,0x10,0x15,0x78,0xe3,0xad,0x30,0x02,0x00,0xb0,0x8c,0x43,0x81,0x99, + 0xba,0x28,0x35,0xa9,0xa9,0x89,0x61,0x82,0x79,0xd4,0xac,0x30,0x01,0x12,0xc8,0x8b,0x24,0x80,0x80,0xcb, + 0x20,0x13,0x89,0xb9,0x9b,0x45,0x80,0x78,0xc6,0x9c,0x20,0x00,0x13,0xc8,0x1b,0x02,0x11,0x01,0xaf,0x10, + 0x11,0x20,0xd9,0x89,0x21,0x28,0x41,0x97,0xaf,0x08,0x01,0x43,0x99,0x8b,0x81,0x31,0x02,0xdc,0x00,0x18, + 0x21,0xc0,0x89,0x08,0x20,0x96,0x72,0xf8,0x8a,0x01,0x48,0x82,0xb9,0x18,0x19,0x14,0xc1,0x0a,0x8a,0x31, + 0x85,0x8a,0xb9,0x08,0x35,0x1a,0x47,0xbe,0x88,0x80,0x63,0x90,0x89,0x98,0x38,0x03,0x9a,0xa8,0x8c,0x25, + 0x88,0x81,0xdb,0x11,0x10,0x78,0xa6,0x9c,0x98,0x28,0x15,0x88,0x98,0x9a,0x42,0x80,0x81,0xdb,0x10,0x00, + 0x32,0xc9,0x89,0x99,0x72,0x48,0x97,0x9c,0x99,0x19,0x16,0x18,0x98,0x9b,0x12,0x20,0x82,0xcb,0x90,0x3b, + 0x15,0x90,0xa1,0x0e,0x00,0x01,0x67,0x8c,0xa9,0x0a,0x43,0x28,0x92,0xbb,0x00,0x4b,0x85,0x90,0xa8,0x0c, + 0x02,0x22,0x81,0x8c,0xc9,0x10,0x73,0xb6,0xa8,0xbc,0x38,0x03,0x17,0x98,0x89,0xaa,0x33,0x28,0x91,0xcb, + 0x88,0x4b,0x13,0x10,0xb0,0x8e,0x90,0x77,0xa8,0xb0,0xac,0x30,0x38,0x07,0x08,0x99,0x0b,0x92,0x41,0x00, + 0x9a,0xd8,0x29,0x08,0x23,0xb2,0x18,0xae,0x67,0xa9,0xa1,0x8e,0x80,0x10,0x06,0x18,0xa0,0x8a,0x80,0x49, + 0x91,0x00,0xc8,0x19,0x99,0x23,0x01,0x30,0xcc,0x72,0xd4,0x01,0x9e,0x08,0x88,0x24,0x18,0x93,0xab,0x80, + 0x1c,0x04,0x10,0x91,0x9c,0xa8,0x2b,0x83,0x41,0x81,0x9a,0x77,0x9a,0xb2,0x9e,0x08,0x09,0x17,0x18,0x81, + 0xa8,0x08,0x8b,0x12,0x10,0x11,0xca,0xa0,0x8c,0x18,0x81,0x24,0x89,0x77,0xb8,0x81,0xae,0x09,0x98,0x52, + 0x11,0x21,0x91,0x0a,0xb8,0x19,0x18,0x08,0x93,0x8c,0xbb,0xda,0x10,0x2b,0x13,0x75,0x07,0x09,0xca,0xac, + 0x98,0x18,0x33,0x24,0x32,0x91,0x88,0x99,0x8a,0x82,0x00,0x10,0xea,0xb8,0x9c,0x9b,0x90,0x59,0x77,0x93, + 0x90,0xea,0x9c,0x99,0x09,0x31,0x32,0x34,0x13,0x10,0x80,0xa8,0x08,0x99,0x80,0x81,0xab,0xd9,0xda,0xab, + 0x3a,0x77,0x00,0x88,0xd9,0xab,0xab,0xba,0x10,0x42,0x43,0x25,0x22,0x21,0x81,0x88,0x98,0x99,0x8b,0x88, + 0x88,0x00,0x81,0x78,0x77,0x02,0x88,0xd9,0xbc,0xac,0xbb,0x9a,0x10,0x41,0x34,0x25,0x33,0x22,0x02,0x90, + 0xa9,0xcb,0xbb,0xbb,0x9b,0x09,0x68,0x57,0x12,0x11,0xa0,0xeb,0xbc,0xcb,0xab,0x9a,0x00,0x42,0x44,0x33, + 0x34,0x22,0x12,0x80,0xa9,0xbc,0xdb,0xba,0xaa,0x89,0x54,0x43,0x23,0x02,0xb9,0xce,0xbc,0xac,0xab,0x8a, + 0x18,0x43,0x44,0x34,0x33,0x23,0x12,0x00,0xaa,0xcc,0xcb,0xab,0xab,0x2a,0x34,0x35,0x33,0x81,0xb9,0xce, + 0xcc,0xba,0x9c,0x9a,0x08,0x21,0x44,0x34,0x43,0x23,0x23,0x11,0x88,0xba,0xeb,0xba,0xac,0x00,0x10,0x22, + 0x12,0x80,0xba,0xbf,0xcc,0xbb,0xbb,0xaa,0x09,0x31,0x36,0x44,0x33,0x34,0x22,0x12,0x81,0xa8,0xbb,0xcc, + 0x4a,0x09,0x01,0x81,0xa8,0xda,0xdb,0xcb,0xba,0x9c,0x8a,0x08,0x12,0x34,0x44,0x33,0x23,0x14,0x20,0x08, + 0xa9,0xc9,0xaa,0x1b,0x67,0x38,0x10,0xa8,0xbb,0xbe,0xdb,0xba,0xaa,0x89,0x18,0x42,0x53,0x43,0x32,0x23, + 0x04,0x12,0x80,0x98,0xa9,0x9d,0xbb,0x7d,0xa3,0x20,0x99,0xda,0xb9,0xca,0x9c,0x99,0x89,0x11,0x79,0x11, + 0x84,0x14,0x30,0x10,0xa3,0x83,0x29,0x9b,0x1b,0x8f,0xd9,0x75,0xb9,0x81,0x99,0xab,0xa8,0xd1,0x72,0xd0, + 0xbd,0x17,0x29,0x3a,0x84,0x0b,0x4f,0x89,0xc3,0x10,0x08,0x1f,0x81,0xb1,0x11,0xa0,0x81,0x31,0x3f,0xd5, + 0x80,0x6a,0xb1,0x91,0xa2,0x2e,0xa0,0x80,0x90,0x10,0x3a,0x87,0x8c,0x25,0xb8,0x38,0xa1,0x2d,0xc4,0x88, + 0x0a,0x32,0xf8,0x38,0xa2,0x1c,0x90,0x48,0xe0,0x18,0x03,0x98,0x02,0x2a,0x80,0x8d,0x53,0xe0,0x08,0x83, + 0xbb,0x88,0x13,0x8a,0x20,0xb2,0x09,0x54,0xda,0x03,0x80,0x24,0x9f,0x33,0x9a,0xa8,0x8a,0x0a,0x9a,0x21, + 0x05,0x20,0x30,0x77,0xc1,0x9a,0x91,0xa9,0x0a,0x22,0x82,0x19,0x34,0x81,0x09,0x22,0xa0,0xab,0x19,0x81, + 0xcd,0x19,0x78,0x77,0xb0,0x9d,0x88,0x98,0x89,0x32,0x24,0x00,0x32,0x12,0xb9,0x99,0x81,0xeb,0x8b,0x18, + 0xb9,0x9b,0x72,0x77,0xc8,0x8a,0x80,0xa9,0x18,0x53,0x02,0x18,0x23,0xa1,0xba,0x09,0xa8,0xbe,0x18,0xa2, + 0xbb,0x30,0x77,0x06,0xcb,0x09,0x90,0x8b,0x31,0x24,0x81,0x30,0x04,0xbb,0x89,0xa0,0xbb,0x8a,0x01,0xaa, + 0x73,0x12,0x75,0x95,0xbd,0x00,0xb8,0x09,0x43,0x12,0x00,0x42,0xa0,0xac,0x10,0xba,0x0a,0x11,0x81,0x99, + 0x33,0x79,0x67,0xe9,0x1a,0x91,0x8b,0x32,0x12,0x10,0x21,0xa2,0xae,0x10,0xc9,0x19,0x02,0x89,0x09,0x11, + 0xb8,0x77,0xa6,0x9c,0x01,0xca,0x30,0x12,0x18,0x21,0x91,0xac,0x20,0xd9,0x19,0x83,0x99,0x10,0x80,0x9b, + 0x72,0x47,0xcc,0x28,0xc8,0x19,0x23,0x08,0x31,0x91,0xab,0x28,0xd9,0x2a,0x03,0x9b,0x21,0xb8,0x9b,0x33, + 0x77,0xb7,0x8c,0x92,0x8d,0x22,0x81,0x21,0x01,0xaa,0x1a,0xc1,0x1b,0x05,0x9a,0x12,0xb9,0x09,0x10,0x78, + 0x47,0xbd,0x11,0xcb,0x40,0x81,0x20,0x01,0xa8,0x1a,0xa0,0x1c,0x14,0x9b,0x12,0xc9,0x08,0x00,0x08,0x77, + 0xe1,0x19,0xd0,0x29,0x82,0x28,0x12,0x99,0x09,0x98,0x0b,0x05,0x8a,0x13,0xcb,0x10,0xa8,0x10,0x77,0xc1, + 0x2b,0xe0,0x2a,0x82,0x39,0x04,0x89,0x80,0xa9,0x19,0x82,0x2a,0x94,0x8c,0x92,0x8b,0x32,0x79,0x07,0x0e, + 0xc1,0x0b,0x83,0x38,0x05,0x88,0x80,0x9a,0x09,0x91,0x20,0x92,0x0a,0xb0,0x1c,0x81,0x70,0x57,0xac,0x92, + 0x9f,0x02,0x08,0x14,0x08,0x80,0xa9,0x88,0x90,0x20,0xa2,0x10,0xc8,0x09,0x88,0x18,0x77,0xe0,0x01,0xad, + 0x12,0x09,0x24,0x88,0x11,0xbb,0x19,0xb9,0x51,0x90,0x21,0xc8,0x08,0xa9,0x20,0x77,0xc8,0x01,0x9f,0x92, + 0x39,0x03,0x28,0x92,0x9b,0xa1,0x0d,0x82,0x29,0x93,0x0a,0xa1,0x0c,0x02,0x77,0x8b,0xd3,0x0e,0xa1,0x20, + 0x03,0x21,0xa2,0x0b,0xd9,0x19,0x98,0x31,0x91,0x20,0xca,0x28,0x1c,0x77,0x0c,0xc2,0x1b,0xa0,0x40,0x81, + 0x32,0xb0,0x10,0xbc,0x10,0x9a,0x23,0x89,0x84,0x8b,0x91,0x2c,0x67,0x1d,0xe2,0x19,0xa8,0x21,0x00,0x33, + 0xa9,0x02,0x9e,0x91,0x2a,0x92,0x28,0xb2,0x4a,0xc9,0x30,0x07,0x4c,0xf0,0x29,0x9b,0x13,0x29,0x04,0x18, + 0xb1,0x8a,0xd0,0x38,0x99,0x23,0x8a,0x82,0x0d,0x00,0x27,0x4d,0xf8,0x00,0x8b,0x82,0x21,0x12,0x10,0xb1, + 0x3b,0xbc,0x01,0x1b,0x02,0x0a,0xa4,0x3d,0x58,0xb7,0x30,0x9f,0xb1,0x3a,0x90,0x43,0x10,0x21,0xb8,0x80, + 0x8e,0xb1,0x28,0x98,0x02,0x80,0x80,0x73,0xd3,0xa6,0x1e,0xc9,0x01,0x18,0x12,0x02,0x03,0x0a,0xe1,0x08, + 0xaa,0x01,0x09,0x82,0x19,0xe3,0x47,0x2d,0xe1,0x18,0x8b,0x91,0x20,0x21,0x30,0x92,0x10,0xcb,0x90,0x9c, + 0x92,0x5a,0xa0,0x13,0x4b,0x97,0x6a,0xcb,0xa2,0x2b,0xa8,0x23,0x31,0x42,0x91,0x83,0x0d,0xd8,0x08,0x8a, + 0x18,0x09,0x93,0x79,0xb6,0x04,0x0f,0xb0,0x18,0x0a,0x02,0x22,0x22,0x20,0xc1,0x80,0x8d,0xb8,0x1a,0x89, + 0x22,0x39,0x67,0x1a,0xd4,0x2a,0xac,0xa2,0x3a,0x81,0x24,0x30,0x11,0x80,0xb8,0xab,0xeb,0x88,0x09,0x01, + 0x31,0x47,0x7b,0xd8,0x81,0x1d,0xb8,0x02,0x18,0x12,0x13,0x03,0x10,0xca,0xb8,0x9c,0x9a,0x19,0x00,0x73, + 0x96,0x31,0x9d,0xd1,0x1a,0xab,0x82,0x40,0x12,0x25,0x11,0x00,0x99,0xd9,0x9a,0xaa,0x90,0x28,0x78,0xa6, + 0x85,0x2b,0xda,0x90,0x1b,0x98,0x22,0x32,0x44,0x20,0x82,0x88,0xca,0xa9,0x9c,0xc8,0x01,0x26,0x7a,0xb8, + 0xa3,0x0d,0xc9,0x80,0x19,0x02,0x42,0x22,0x23,0x10,0xa0,0xa9,0xad,0xaa,0x9b,0x70,0xa2,0x07,0x3b,0xdb, + 0xa0,0x0c,0xa9,0x11,0x30,0x34,0x52,0x02,0x02,0x09,0xba,0xba,0xbb,0x99,0x37,0x78,0x98,0xd4,0x89,0x9c, + 0x99,0x98,0x02,0x51,0x12,0x15,0x30,0x88,0xa0,0xa9,0x8b,0x0c,0x79,0x91,0x97,0x38,0xac,0xa1,0xca,0x98, + 0x3b,0x09,0x87,0x22,0x40,0x38,0x98,0xd3,0x90,0x0b,0x0a,0xc7,0x42,0x2c,0xb0,0x92,0x8a,0x0b,0xca,0xb4, + 0x40,0x5b,0x00,0x02,0x10,0x18,0xc0,0xb3,0x3a,0x7a,0x2d,0xd6,0x82,0x2a,0x0b,0x98,0xc1,0x02,0x5b,0x09, + 0x92,0x02,0x28,0x4c,0x89,0x00,0x3a,0x5b,0xf7,0x83,0x3b,0x0a,0x89,0xb1,0x82,0x5b,0x89,0xa2,0xa5,0x7b, + 0x0a,0xe3,0x93,0x5a,0x0a,0xb1,0xa5,0x38,0x3d,0x8a,0xb4,0xa1,0x93,0x3a,0x99,0xb4,0x40,0x8b,0xb4,0x01, + 0x90,0x30,0x2e,0xa8,0xd6,0x93,0x5a,0x0a,0x90,0x01,0x5b,0x8a,0xc3,0x82,0x7b,0x2b,0xa8,0xb4,0x82,0x18, + 0x1a,0xc1,0x12,0x3c,0x99,0x92,0xc1,0x95,0x3a,0x4a,0x2d,0xe1,0xb4,0x02,0x5b,0x8a,0xd3,0x82,0x39,0x2c, + 0xb0,0xb5,0x92,0x59,0x2c,0x98,0xb3,0x82,0x4a,0x1b,0x88,0x81,0x18,0x09,0x08,0xe1,0xa4,0x01,0x6c,0x1b, + 0xc1,0xb5,0x11,0x5c,0x1b,0xb1,0xb4,0x11,0x3b,0x89,0xb2,0xc3,0x02,0x2a,0x29,0x5d,0x0b,0xb2,0xa3,0x01, + 0x5c,0x8a,0xe3,0xa4,0x20,0x3d,0x0a,0xf3,0xa3,0x20,0x2c,0x88,0xa1,0x01,0x09,0xb1,0xa4,0x91,0x10,0x5b, + 0x2b,0x89,0xb3,0x10,0xa8,0x94,0x3a,0xa8,0x79,0x3d,0x89,0xf4,0xa4,0x48,0x3d,0x99,0xd3,0x02,0x5b,0x0a, + 0xa1,0xa2,0x30,0x3e,0xa9,0xb5,0x82,0x4a,0x2b,0x98,0xc3,0x82,0x39,0x8b,0xc4,0x82,0x49,0x1c,0xe2,0xa3, + 0x48,0x3d,0x99,0xc4,0x82,0x4a,0x1a,0xb0,0xa4,0x38,0x3d,0x99,0xc4,0x92,0x10,0x3a,0x8a,0xb2,0x21,0x3c, + 0x99,0xc3,0xb3,0x11,0x5d,0x2b,0xf1,0xa4,0x10,0x1a,0xa0,0x93,0x7b,0x2b,0xc0,0xb5,0x11,0x4c,0x1a,0xb0, + 0x83,0x3a,0xa9,0xb5,0x21,0x3e,0x99,0xc4,0x02,0x4b,0x0a,0xd2,0x93,0x49,0x2c,0x98,0xb2,0xa4,0x38,0x2c, + 0xc0,0xa5,0x20,0x2c,0x09,0x08,0x08,0xb1,0x93,0x59,0x2c,0x2a,0xd0,0xa4,0x81,0x28,0x8a,0xa2,0x21,0x4f, + 0x9a,0xb4,0x82,0x6a,0x2c,0xb0,0xc5,0x02,0x4b,0x2b,0xb0,0xa4,0x10,0x4b,0x99,0xb3,0x21,0x3e,0xa9,0xb6, + 0x82,0x6b,0x0a,0xc2,0x82,0x4a,0x1b,0xd2,0x93,0x39,0x2b,0xc0,0xa4,0x38,0x3c,0x99,0xc3,0x92,0x28,0x0a, + 0xa1,0xa3,0x79,0x1c,0xf3,0xa3,0x20,0x3d,0x99,0xb3,0x01,0x29,0x0a,0xd2,0x94,0x4a,0x3b,0xb9,0xb7,0x82, + 0x29,0x99,0xb4,0x92,0x38,0x3d,0x99,0xd4,0x82,0x29,0x99,0xc5,0xa3,0x69,0x2c,0xb0,0xa4,0x48,0x2c,0xa8, + 0xb4,0x21,0x2c,0x89,0xc3,0x82,0x4a,0x2b,0xa0,0xa2,0x11,0x4c,0x0a,0xd2,0x02,0x1a,0x80,0x00,0x6c,0x0b, + 0xd3,0xa3,0x20,0x3c,0xa9,0xb5,0x11,0x3d,0xd0,0xa5,0x10,0x3b,0xb8,0x94,0x6a,0x1b,0xc2,0x82,0x5a,0x1c, + 0xb1,0xa4,0x20,0x3d,0x0a,0xb2,0x02,0x4c,0x0a,0xc2,0x02,0x4c,0x0a,0x91,0x10,0x4c,0x8a,0xc4,0x02,0x4c, + 0x99,0xc3,0x82,0x4a,0x0a,0xa1,0xa3,0x39,0x8a,0xb2,0xb4,0x68,0x1b,0xb1,0xb5,0x30,0x2d,0x98,0xb2,0x31, + 0x4e,0x0a,0xf3,0x82,0x3a,0x89,0xc3,0x93,0x6b,0x0b,0xc2,0xa3,0x38,0x1c,0xb1,0x93,0x48,0x1a,0x91,0xd3, + 0x92,0x4a,0x4b,0xd1,0xa4,0x08,0x2c,0x9a,0xb4,0x83,0x48,0x2c,0x98,0xb2,0x03,0x4a,0x19,0xa0,0xa4,0x28, + 0x1b,0xd8,0xb5,0x01,0x3a,0x0b,0xd2,0x92,0x79,0x92,0xa2,0xc8,0x0d,0xa9,0x82,0x04,0x40,0x09,0x89,0xb1, + 0x41,0x38,0x59,0x89,0x98,0xa8,0x29,0x09,0x01,0xf1,0xa1,0xa8,0x39,0x2b,0x81,0x77,0x31,0x9d,0x8f,0x98, + 0x10,0x31,0x18,0xc3,0xa0,0x00,0x49,0x83,0x83,0x81,0x0f,0x99,0x80,0xa3,0x82,0x98,0x0e,0x89,0x90,0x84, + 0x28,0x7c,0x97,0xa1,0xe8,0x1a,0x89,0x21,0x94,0x21,0x8a,0x2b,0xa1,0x34,0x83,0x3a,0xe9,0x99,0xa2,0x48, + 0x08,0x1b,0xca,0x9a,0xb3,0x02,0x97,0xa0,0x77,0x08,0x89,0xfb,0x88,0x80,0x41,0x80,0x01,0xb8,0x39,0x00, + 0x42,0xa4,0x08,0x9a,0x2f,0x08,0x90,0xa4,0x89,0x1a,0x0d,0x82,0xb2,0x84,0xa9,0x77,0x88,0x88,0xfa,0x08, + 0x08,0x48,0x81,0x90,0xc2,0x08,0x12,0x38,0x83,0xab,0xa1,0xbb,0x25,0x09,0x48,0xad,0x19,0xb9,0x32,0x81, + 0x4b,0xf1,0x73,0x92,0x0a,0xfa,0x0b,0x81,0x30,0x14,0x0b,0x80,0x8c,0x53,0x18,0x12,0xe8,0x90,0xa0,0x48, + 0x28,0x2b,0xc8,0xb8,0x92,0x18,0x31,0x9a,0x2a,0xfa,0x77,0x90,0x08,0xad,0x89,0xa2,0x23,0x03,0x2c,0x09, + 0x9a,0x07,0x82,0x21,0x9b,0x1b,0xc0,0x01,0x94,0x0a,0x8a,0x8d,0x10,0x90,0x32,0xc9,0x08,0xa1,0x77,0x86, + 0x09,0xbc,0x9a,0x91,0x20,0x13,0x1c,0x00,0xa1,0x27,0x02,0x38,0x8a,0x8b,0xc3,0xa1,0x82,0x0f,0x1a,0xaa, + 0x91,0xd3,0x10,0x29,0x4c,0x00,0x72,0x07,0x98,0x98,0x8e,0x09,0x88,0x00,0xb1,0x39,0x20,0x20,0x36,0x80, + 0x83,0xa0,0x30,0x89,0x9e,0xd8,0xb9,0x91,0x89,0x39,0x8a,0x10,0x87,0x13,0x13,0x76,0x03,0x8a,0xe9,0xaa, + 0x88,0x8b,0x09,0xca,0x10,0x14,0x52,0x33,0x10,0x23,0x81,0x13,0xc8,0x9d,0xcb,0x9c,0xa9,0xaa,0x09,0x9a, + 0x51,0x22,0x53,0x23,0x76,0x03,0x90,0xc9,0xac,0x89,0x9a,0x89,0xcb,0x09,0x22,0x73,0x23,0x11,0x24,0x11, + 0x31,0xa8,0xab,0xfb,0x9b,0xaa,0xad,0x99,0x9a,0x21,0x11,0x63,0x13,0x73,0x37,0x00,0xb8,0xbc,0x89,0xb9, + 0x98,0xcc,0x8a,0x11,0x41,0x25,0x10,0x33,0x22,0x53,0x81,0x89,0xc9,0x9c,0xaa,0xbc,0xba,0xdb,0x09,0x00, + 0x31,0x24,0x52,0x77,0x01,0x00,0xba,0x9b,0xa0,0x8b,0xc8,0xac,0x08,0x01,0x54,0x01,0x31,0x22,0x42,0x04, + 0x88,0x80,0xac,0x9a,0xdb,0x9b,0xdb,0x8a,0x88,0x08,0x23,0x12,0x77,0x17,0x00,0xa8,0xaa,0x89,0xa9,0x08, + 0xad,0x8a,0x00,0x50,0x23,0x38,0x33,0x31,0x27,0x81,0x10,0xc9,0x8a,0xc9,0xbb,0xda,0xbb,0x89,0x8a,0x21, + 0x82,0x73,0x77,0x12,0x81,0xbb,0x9b,0xb0,0x0a,0xd8,0x9c,0x08,0x00,0x44,0x01,0x31,0x12,0x72,0x02,0x00, + 0x90,0xab,0x89,0xbd,0xb9,0xeb,0x8a,0x99,0x09,0x02,0x11,0x74,0x57,0x01,0x90,0xab,0x8a,0x99,0x88,0xca, + 0xab,0x88,0x49,0x24,0x11,0x24,0x21,0x44,0x12,0x11,0x91,0xaa,0xb8,0xae,0xba,0xae,0xaa,0xba,0x8a,0x80, + 0x38,0x76,0x37,0x10,0xa8,0xab,0x88,0xab,0x91,0xfa,0x88,0x88,0x48,0x12,0x20,0x14,0x11,0x44,0x00,0x11, + 0xb8,0x89,0xc9,0x9d,0xa9,0xad,0xa8,0xc9,0x10,0x09,0x68,0x77,0x00,0x81,0xb9,0x8a,0xa9,0x89,0xb0,0x9b, + 0x10,0x0a,0x37,0x01,0x34,0x02,0x42,0x03,0x10,0x82,0x9c,0xa9,0xcd,0x9a,0xdb,0x9a,0xa9,0x0b,0x82,0x18, + 0x77,0x17,0x10,0xa8,0xaa,0x99,0xab,0x00,0xcb,0x08,0x90,0x60,0x12,0x31,0x16,0x10,0x33,0x18,0x12,0xc0, + 0x99,0xea,0x8c,0x9b,0x9d,0xa8,0xa9,0x00,0x19,0x78,0x67,0x10,0x00,0xb9,0x8a,0xb9,0x8a,0xb0,0x9b,0x81, + 0x1b,0x45,0x11,0x44,0x02,0x42,0x11,0x10,0x82,0xa9,0xc1,0xbc,0x9b,0xaf,0x99,0xba,0x99,0x08,0x18,0x77, + 0x07,0x01,0xb8,0x9a,0xa9,0x9b,0x80,0xab,0x12,0x98,0x45,0x12,0x72,0x11,0x11,0x03,0x00,0x12,0x9b,0x8a, + 0xed,0xa9,0xc9,0x9a,0x9a,0x9b,0xa1,0x90,0x77,0x07,0x20,0x98,0x9a,0x99,0x9c,0x88,0xa9,0x10,0x98,0x40, + 0x03,0x42,0x15,0x30,0x32,0x00,0x13,0xa8,0x08,0xfb,0x8b,0xea,0x9a,0xa9,0x9c,0x88,0xaa,0x74,0x17,0x11, + 0x90,0x9b,0xaa,0x9e,0x98,0xa9,0x01,0x80,0x51,0x10,0x42,0x13,0x32,0x15,0x10,0x22,0x9a,0xa1,0xfa,0x99, + 0xba,0x8c,0xaa,0xab,0xc0,0xa9,0x77,0x12,0x21,0xb9,0xbb,0xe9,0x8b,0x90,0x8b,0x02,0x88,0x74,0x85,0x80, + 0x80,0x80,0x00,0x08,0x88,0x80,0x00,0x88,0x00,0x88,0x00,0x88,0x00,0x88,0x00,0x88,0x80,0x80,0x80,0x80, + 0x00,0x08,0x08,0x08,0x08,0x08,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip alertsSoundVibrationClip = { + alertsSoundVibrationData, sizeof(alertsSoundVibrationData), 10915, 8000 +}; +// "Sound only" +static const uint8_t alertsSoundOnlyData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x77,0xf0,0x97,0xec,0x4f,0x22,0x1d,0x88,0xa9,0x04,0x82,0x1e,0x48,0x8c,0x84,0xb8,0x82,0x4b,0x02,0xaa, + 0xb0,0x68,0x80,0x11,0x8d,0xb5,0x29,0x01,0x29,0xab,0xf4,0x84,0x08,0x3d,0x89,0x82,0xb3,0x29,0x2e,0x5b, + 0xb0,0xb4,0x93,0x5b,0x1a,0xb0,0xb5,0x00,0x40,0x8b,0xa1,0xc4,0x11,0x1b,0x7b,0xb8,0x93,0x82,0x80,0x38, + 0x2f,0x89,0xd2,0xa2,0x12,0x1b,0x10,0x99,0xe3,0x11,0x29,0xc1,0x08,0xb4,0x7a,0xb8,0x92,0xc4,0x10,0x18, + 0x2d,0x88,0x12,0xa8,0x20,0xae,0x24,0xa9,0x01,0x2d,0x82,0x80,0xa9,0x5a,0x18,0xc2,0x4a,0x89,0x00,0xa2, + 0x80,0x21,0xd9,0x08,0x8f,0x15,0x48,0x8e,0x38,0xc0,0xa5,0x80,0x2a,0x49,0x9a,0xa5,0xb2,0x58,0x2d,0x90, + 0xa0,0x96,0x39,0x1b,0x89,0xd2,0x94,0x08,0x28,0x1b,0xb0,0x94,0x81,0xa1,0x4a,0xb1,0x79,0xc8,0x82,0xd1, + 0x21,0x29,0x2b,0x89,0x88,0x92,0xb4,0x92,0x29,0xaa,0x49,0x6a,0x3c,0x5d,0xd1,0x80,0x10,0x29,0x39,0x9d, + 0x41,0xb8,0xb5,0x81,0x2a,0x6c,0x89,0x18,0xa0,0x01,0x2b,0x00,0x30,0x0f,0x11,0xaa,0x97,0x2a,0x19,0x4a, + 0x9b,0x43,0xdb,0x14,0xc8,0x92,0x08,0x84,0x1b,0xa1,0x0c,0x87,0x89,0x91,0x49,0xa0,0x91,0xc0,0x12,0x90, + 0x6b,0x88,0x4b,0xb2,0x2a,0x29,0x88,0x03,0x8f,0xa6,0x1a,0x02,0x09,0xc8,0xd5,0x03,0x19,0x2e,0xb0,0x83, + 0xb7,0x28,0x3b,0x1b,0x91,0xc4,0x18,0x30,0x1f,0x00,0xa9,0xa3,0x20,0xb3,0x2a,0xd0,0x7b,0xa2,0x89,0xc2, + 0x83,0x90,0x79,0xa9,0xb1,0x04,0xe3,0x91,0x81,0x2a,0x10,0xe0,0x81,0xb4,0x5a,0x18,0x1c,0xa0,0x82,0x82, + 0x4d,0x8a,0x20,0xc1,0x49,0x2a,0x2b,0xb0,0x80,0xb7,0x18,0x10,0x18,0x3a,0x0e,0x01,0xa9,0x13,0xc3,0xc8, + 0xa2,0x60,0xa0,0xc2,0xb1,0x03,0x10,0xf1,0x01,0x98,0x72,0x9d,0x32,0xab,0x96,0x1b,0x10,0x49,0xe0,0xa3, + 0x18,0x20,0x1e,0xe3,0x92,0x81,0x2a,0x88,0xc2,0x93,0x09,0x21,0xf8,0x82,0x91,0x39,0x8b,0x79,0x88,0x89, + 0xb1,0xa6,0x28,0x38,0x9d,0x02,0xf3,0x01,0x80,0x3b,0x0a,0x32,0xab,0x11,0xae,0x26,0x9a,0x28,0x2d,0x93, + 0xa9,0xb2,0x6c,0x00,0x81,0x0f,0x40,0x2b,0xa8,0xb2,0x81,0x22,0x2e,0x90,0xf3,0xa3,0x39,0x3a,0x0b,0xd3, + 0xb6,0x29,0x81,0x4b,0xe8,0x82,0x81,0x11,0x2c,0x3c,0xa8,0xa3,0x59,0x89,0x80,0xf2,0x20,0x09,0x18,0xb0, + 0x10,0x02,0x32,0xbf,0x78,0x0a,0xc2,0xa2,0x18,0x30,0x0d,0xb3,0xe4,0x82,0x5b,0x19,0x89,0xd4,0x81,0x30, + 0x2c,0x8a,0x90,0x95,0x18,0x2b,0x2b,0xa2,0xb5,0x5b,0x2a,0x39,0xf3,0x19,0xb2,0x60,0x9c,0x01,0x91,0x85, + 0x1c,0x80,0x18,0xb8,0x10,0x38,0x98,0x90,0xc5,0x70,0x0b,0x88,0xe3,0x82,0x29,0x2a,0xd1,0x92,0x94,0x5c, + 0x1a,0x88,0xc2,0x81,0x08,0x10,0x08,0x19,0x9a,0x39,0x4b,0x09,0x09,0xa7,0x18,0x3d,0x5b,0xe1,0xa4,0x08, + 0x68,0x8a,0xc1,0x18,0x02,0x90,0x99,0x20,0x84,0x18,0x1f,0x8a,0x82,0xd3,0x69,0x0a,0x18,0xf2,0x01,0x00, + 0x5a,0x0a,0x90,0xd2,0x11,0x19,0x19,0xba,0x21,0xb2,0x87,0x08,0x90,0xb9,0x94,0x69,0x1a,0x09,0xe2,0x80, + 0x20,0x79,0x98,0xb1,0xa2,0x4a,0x3a,0xbb,0xa7,0x80,0x40,0x1d,0x00,0xa1,0x95,0x08,0x2b,0x2d,0xa0,0xa4, + 0x82,0x4a,0x2c,0x99,0xc3,0x81,0x29,0x3a,0x8a,0x95,0x91,0x85,0x29,0x49,0x8c,0xb1,0xa1,0x49,0x9c,0x38, + 0x09,0x96,0x82,0x78,0x80,0x99,0xe9,0x09,0x00,0x20,0x92,0x01,0xa0,0x28,0x28,0x40,0xb1,0x81,0xbb,0x09, + 0xb9,0x60,0x77,0x8b,0xaa,0x8d,0x01,0x21,0x13,0x08,0x90,0x0a,0x13,0x30,0x84,0x9c,0xd9,0x9a,0x91,0x19, + 0x77,0xa0,0xb8,0xae,0x11,0x20,0x33,0x90,0x91,0x8c,0x30,0x10,0x05,0xc9,0x99,0x8c,0x28,0x80,0x75,0xc2, + 0x99,0xdb,0x28,0x20,0x42,0x91,0x08,0xaa,0x38,0x82,0x33,0xd9,0x0c,0xbb,0x11,0x83,0x78,0x07,0x8b,0xfa, + 0x1a,0x01,0x41,0x82,0x89,0xa0,0x2a,0x13,0x38,0xc1,0xac,0xb0,0x3a,0x14,0x4a,0x57,0x8d,0x99,0x8c,0x13, + 0x10,0x04,0x8b,0x80,0x89,0x06,0x80,0x00,0x9d,0x80,0x90,0x14,0x0a,0x65,0xbb,0x88,0xcb,0x42,0x28,0x31, + 0xe8,0x00,0x88,0x58,0x88,0x80,0xc8,0x18,0x18,0x39,0xb1,0x79,0xa7,0x0b,0x99,0x1c,0x04,0x10,0x82,0x8c, + 0x01,0x89,0x06,0x99,0x00,0x8c,0x20,0x98,0x84,0xc8,0x75,0xaa,0x88,0xc9,0x41,0x00,0x38,0xc8,0x80,0x81, + 0x58,0x80,0x8a,0xc1,0x19,0x21,0x1a,0xa1,0x5c,0x87,0x8d,0x88,0x0b,0x06,0x80,0x11,0x9c,0x11,0x90,0x32, + 0xaa,0x1a,0xb9,0x41,0xa3,0x2b,0xf0,0x74,0xc8,0x0a,0xb0,0x40,0x83,0x29,0xb0,0x0c,0x04,0x08,0x83,0x9d, + 0x10,0x89,0x23,0xd8,0x18,0x6b,0x97,0xba,0x18,0x0c,0x24,0xb1,0x01,0xaa,0x69,0x81,0x00,0xb0,0x0b,0x01, + 0x08,0x86,0x8b,0x19,0x76,0xb9,0x8b,0xa1,0x58,0x03,0x8a,0x80,0x0c,0x33,0xa0,0x82,0xdb,0x39,0x81,0x11, + 0xb1,0x0f,0x79,0x96,0xab,0x28,0x0b,0x42,0xb2,0x09,0x88,0x3b,0x07,0xa8,0x01,0x9b,0x48,0xa1,0x00,0xb0, + 0x0c,0x77,0xc8,0x8a,0xa3,0x18,0x43,0x9b,0x08,0xb1,0x60,0x10,0x8b,0xa1,0xa8,0x43,0x89,0x2a,0xd8,0x69, + 0x07,0xbc,0x38,0xa8,0x40,0x93,0xab,0x12,0x99,0x53,0xb1,0x8a,0x81,0x1d,0x13,0xc8,0x00,0xb8,0x75,0xd2, + 0x8d,0x02,0x98,0x42,0xa8,0x8a,0x83,0x08,0x43,0xb9,0x2b,0x80,0x3b,0x05,0xca,0x00,0x59,0x17,0xec,0x18, + 0x81,0x2a,0x13,0xca,0x28,0x81,0x39,0x03,0xdb,0x10,0x90,0x28,0x82,0xac,0x00,0x76,0xb0,0x9f,0x02,0x90, + 0x30,0x81,0x9d,0x12,0x91,0x11,0x91,0x9c,0x20,0x80,0x10,0xa0,0x8d,0x79,0x07,0xeb,0x18,0x10,0x1a,0x13, + 0xd9,0x19,0x12,0x09,0x02,0xd0,0x09,0x21,0x09,0x10,0xb9,0x8b,0x77,0xc8,0x0d,0x12,0xa8,0x22,0xa1,0x8d, + 0x31,0x91,0x80,0xa3,0x9b,0x69,0x08,0x88,0xa1,0xb8,0x74,0xc3,0x9f,0x11,0x91,0x18,0x12,0xac,0x28,0x03, + 0x08,0x00,0xb9,0x09,0x84,0x81,0x80,0x9d,0x72,0xa7,0x9e,0x20,0x81,0x09,0x12,0xc9,0x08,0x23,0x08,0x19, + 0xb9,0x90,0x22,0x59,0x0a,0xea,0x73,0xb4,0xaf,0x21,0x81,0x89,0x12,0xb8,0x0a,0x24,0x81,0x09,0x99,0x98, + 0x02,0x32,0x09,0xaf,0x57,0xc8,0x9d,0x31,0x91,0x09,0x21,0xba,0x19,0x34,0x81,0x9a,0x08,0x88,0x08,0x43, + 0xb0,0x8f,0x47,0xf9,0x0b,0x32,0x98,0x19,0x02,0xaa,0x2a,0x25,0x91,0x99,0x08,0x80,0x89,0x05,0xd2,0x79, + 0x93,0xcf,0x18,0x03,0x98,0x28,0xa1,0xa9,0x41,0x32,0xa9,0x9a,0x82,0x80,0x49,0x21,0xba,0x77,0xf9,0x0b, + 0x31,0x91,0x89,0x12,0xaa,0x0a,0x26,0x82,0x9a,0x2a,0x80,0xa0,0x33,0x81,0x76,0xd9,0x9e,0x20,0x02,0x0a, + 0x10,0xb1,0x9a,0x62,0x12,0xa9,0x89,0x01,0x98,0x38,0x13,0x67,0xd9,0x9e,0x20,0x82,0x88,0x10,0xa8,0x9a, + 0x62,0x22,0x99,0x9a,0x81,0x90,0x31,0x04,0x37,0xfb,0x9d,0x10,0x03,0x88,0x18,0xa9,0xa9,0x53,0x14,0x98, + 0x9a,0x00,0x80,0x31,0x52,0x17,0xec,0x9b,0x22,0x01,0x08,0x00,0xba,0x8a,0x54,0x13,0x99,0x8a,0x88,0x82, + 0x22,0x71,0x87,0xec,0x89,0x21,0x00,0x08,0x80,0xa9,0x19,0x34,0x12,0x99,0x8a,0x09,0x29,0x14,0x77,0xa0, + 0xcd,0x08,0x10,0x00,0x11,0x98,0x9b,0x28,0x34,0x02,0x80,0xb9,0x99,0x50,0x70,0x16,0xda,0x9c,0x18,0x00, + 0x12,0x81,0xbb,0x18,0x13,0x23,0x24,0xb9,0x8c,0x10,0x11,0x77,0xb2,0xbe,0x08,0x88,0x20,0x23,0xba,0x89, + 0x82,0x10,0x36,0x91,0x89,0x81,0x99,0x70,0x37,0xdb,0x8a,0xa9,0x0a,0x43,0x91,0x89,0x81,0x99,0x73,0x01, + 0x00,0x82,0xa9,0x10,0x77,0xa1,0x9b,0xba,0xac,0x21,0x81,0x18,0x02,0x99,0x42,0x03,0x30,0x43,0x2a,0x24, + 0x78,0x17,0xca,0x9a,0xbb,0x8c,0x10,0x98,0x22,0x83,0x41,0x24,0x10,0x41,0x80,0x08,0x30,0x77,0xa0,0x9b, + 0xdb,0xab,0x80,0x99,0x20,0x03,0x50,0x24,0x02,0x33,0x82,0x80,0x81,0x77,0x91,0xac,0xba,0xad,0x09,0x98, + 0x19,0x13,0x21,0x36,0x22,0x31,0x13,0x80,0x91,0x72,0x97,0xba,0xca,0xbc,0x8a,0x99,0x88,0x23,0x22,0x55, + 0x22,0x31,0x23,0x00,0x00,0x6a,0x86,0xc9,0xba,0xbd,0x9b,0x99,0x89,0x22,0x22,0x54,0x33,0x42,0x23,0x01, + 0x00,0x88,0x37,0xc9,0xac,0xbd,0x9d,0x89,0x89,0x20,0x01,0x42,0x24,0x32,0x24,0x02,0x10,0x90,0x72,0xa0, + 0xbc,0xfb,0xbb,0x99,0x99,0x10,0x11,0x32,0x27,0x22,0x34,0x12,0x20,0x90,0x3a,0x87,0xca,0xbb,0xbf,0x9b, + 0xa8,0x08,0x11,0x20,0x44,0x23,0x44,0x13,0x11,0x03,0xa9,0x73,0xa8,0xbb,0xfc,0xbb,0x99,0x9a,0x10,0x00, + 0x42,0x24,0x52,0x33,0x31,0x22,0x91,0x40,0x94,0xaa,0xcd,0xaf,0xaa,0xaa,0x09,0x80,0x20,0x24,0x42,0x25, + 0x22,0x33,0x01,0x01,0x43,0x90,0xd9,0xce,0xcb,0xba,0xaa,0x98,0x00,0x22,0x53,0x34,0x33,0x34,0x23,0x21, + 0x30,0x06,0x90,0xdb,0xbe,0xcb,0xbb,0xa9,0x88,0x20,0x32,0x44,0x34,0x23,0x24,0x21,0x01,0x41,0x13,0xa0, + 0xfb,0xbe,0xcb,0xbb,0xa9,0x88,0x21,0x42,0x44,0x23,0x43,0x22,0x20,0x80,0x41,0x01,0xa8,0xed,0xbc,0xcb, + 0xab,0x9a,0x09,0x31,0x52,0x44,0x32,0x32,0x13,0x11,0x90,0x41,0x00,0x99,0xed,0xbc,0xdb,0x9b,0xbb,0x09, + 0x12,0x53,0x34,0x33,0x34,0x12,0x12,0x80,0x41,0x00,0x80,0xfb,0xbc,0xdc,0xba,0xaa,0x8b,0x88,0x31,0x34, + 0x35,0x34,0x33,0x23,0x12,0x74,0x80,0x90,0xdb,0xba,0xad,0xaa,0xaa,0x80,0x10,0x41,0x32,0x63,0x11,0x31, + 0x49,0x20,0x71,0xa7,0xa8,0xd9,0x18,0x8a,0x81,0xb0,0x12,0x3b,0x48,0x08,0x13,0x5a,0x18,0x88,0x85,0x4b, + 0x87,0x8d,0xb8,0x2c,0xc3,0x38,0x09,0x5b,0xc3,0x03,0x91,0x48,0xb8,0x03,0xe8,0x92,0xc0,0x78,0xd5,0x91, + 0xb8,0x28,0x99,0x12,0xb1,0x24,0x09,0x23,0xb8,0x07,0x0a,0x00,0xab,0xb4,0x1a,0x7c,0xd1,0xa2,0x99,0x4b, + 0x89,0x03,0x93,0x41,0x89,0x01,0xd3,0x02,0x08,0x4d,0x0b,0x89,0xb0,0x7a,0xa7,0x09,0xb8,0x0b,0xc3,0x01, + 0x15,0x3a,0x01,0x98,0x03,0x1b,0x38,0xda,0x82,0xc9,0x29,0xbb,0x77,0x8a,0x19,0xcc,0x81,0x80,0x60,0x00, + 0x00,0x92,0x19,0x08,0xa9,0x85,0x88,0x28,0xbb,0x09,0x7b,0x97,0x99,0x88,0x9f,0x80,0x81,0x42,0x30,0x10, + 0xb3,0x88,0x1a,0x8e,0x91,0x90,0x28,0xab,0xaa,0x77,0x8a,0x09,0xf8,0x08,0x10,0x28,0x15,0x00,0x20,0xba, + 0x99,0xd0,0x19,0x10,0x9a,0x84,0xa9,0x48,0x87,0x89,0x19,0xad,0x00,0x02,0x60,0x02,0x88,0x10,0xac,0x08, + 0xb9,0x12,0x81,0x2c,0xa1,0x9a,0x73,0x87,0xc9,0x90,0x0e,0x28,0x92,0x24,0x01,0x0a,0xb8,0xb9,0x11,0x89, + 0x12,0xd5,0x08,0x19,0xaa,0x77,0x91,0x8d,0xa8,0x8a,0x42,0x01,0x23,0xa3,0x0c,0x99,0xab,0x13,0x80,0x49, + 0xc1,0x99,0x20,0x8c,0x77,0xa2,0x9d,0xa0,0x8b,0x61,0x01,0x21,0x81,0x8c,0x88,0xa9,0x11,0x01,0x3a,0x90, + 0xac,0x01,0xb0,0x77,0x94,0xad,0x90,0x8a,0x60,0x10,0x01,0x82,0xaa,0x19,0xb9,0x01,0x84,0x1a,0x20,0xea, + 0x80,0x91,0x73,0x87,0xac,0x98,0x99,0x60,0x11,0x00,0x82,0x9a,0x09,0xa8,0x00,0x03,0x9a,0x08,0xc8,0x3a, + 0x28,0x77,0x96,0xcb,0x98,0x8a,0x31,0x23,0x22,0x02,0xbb,0x99,0xb0,0x21,0x32,0x0d,0x9b,0xbb,0xbb,0x04, + 0x77,0x07,0xbb,0xc8,0x89,0x48,0x21,0x12,0x93,0x99,0x0b,0x0b,0x03,0x86,0x81,0x8b,0x8e,0x9a,0x80,0x77, + 0x91,0xca,0xa8,0x09,0x48,0x22,0x03,0x81,0x9b,0x8b,0x08,0x14,0x04,0x89,0x8e,0x8c,0x89,0x02,0x75,0x82, + 0xbd,0x99,0x08,0x40,0x23,0x82,0xa0,0xab,0x1a,0x30,0x15,0xa3,0xb9,0x9f,0x8a,0x81,0x04,0x67,0x99,0xac, + 0x88,0x00,0x51,0x11,0x90,0xb8,0x89,0x38,0x41,0x02,0xc0,0xbb,0x8c,0x18,0x04,0x23,0x47,0xcb,0x8f,0x08, + 0x01,0x21,0x11,0xa8,0xaa,0x10,0x42,0x21,0x88,0xe9,0xb9,0x19,0x40,0x01,0x50,0x87,0xeb,0x0b,0x20,0x11, + 0x01,0x01,0x99,0x9b,0x30,0x17,0x81,0x99,0xaa,0xa9,0x00,0x43,0x81,0x78,0x95,0xed,0x89,0x21,0x11,0x00, + 0x91,0x90,0x8a,0x49,0x24,0xa2,0xca,0x8a,0x19,0x00,0x02,0x82,0x76,0x90,0xdf,0x08,0x21,0x11,0x88,0x88, + 0x90,0xa0,0x21,0x53,0x80,0xdb,0x8a,0x30,0x20,0x89,0x88,0x57,0xb0,0xcf,0x08,0x32,0x02,0x99,0x09,0x10, + 0x98,0x09,0x34,0x03,0xbd,0x9c,0x21,0x13,0xa8,0x5b,0x26,0xe0,0xbd,0x29,0x43,0x02,0xa9,0x8a,0x20,0x10, + 0x08,0x21,0x93,0xfa,0xab,0x48,0x32,0xb1,0x3a,0x36,0xf9,0xaf,0x18,0x42,0x02,0xa9,0x9a,0x20,0x12,0x80, + 0x18,0x21,0xd9,0xcb,0x08,0x34,0x81,0x38,0x12,0xff,0xac,0x28,0x34,0x03,0xc9,0x9a,0x20,0x23,0x92,0x99, + 0x09,0x99,0xba,0x18,0x44,0x01,0x25,0xc2,0xff,0x9a,0x30,0x43,0x82,0xba,0x8a,0x31,0x23,0x01,0x89,0x99, + 0xdb,0xab,0x38,0x36,0x20,0x14,0xf9,0xce,0x89,0x41,0x23,0x91,0xab,0x8a,0x32,0x14,0x01,0x89,0x99,0xba, + 0xbb,0x28,0x44,0x50,0x24,0xf8,0xcd,0x8a,0x41,0x33,0x91,0xba,0x8a,0x32,0x23,0x11,0x00,0xaa,0xbd,0x9c, + 0x20,0x24,0x20,0x16,0xf8,0xcd,0x8a,0x41,0x23,0x81,0xaa,0x8a,0x31,0x33,0x11,0x00,0xb0,0xdc,0xbb,0x28, + 0x54,0x21,0x14,0xfa,0xbe,0x89,0x31,0x25,0x80,0xa9,0x8a,0x21,0x22,0x22,0x11,0xa8,0xdc,0xaa,0x30,0x43, + 0x20,0x23,0xfc,0xbf,0x8a,0x31,0x25,0x80,0xa9,0x89,0x11,0x23,0x22,0x13,0x90,0xcd,0xab,0x30,0x33,0x38, + 0x17,0xfa,0xcd,0x8a,0x31,0x43,0x81,0xba,0x89,0x21,0x33,0x22,0x33,0x91,0xcd,0x9c,0x28,0x43,0x30,0x04, + 0xfc,0xbd,0x8a,0x32,0x14,0x91,0xa9,0x09,0x21,0x22,0x33,0x25,0x91,0xcb,0x8c,0x20,0x12,0x01,0x77,0xb9, + 0xbe,0x9a,0x21,0x23,0x90,0x99,0x10,0x23,0x02,0x21,0x35,0x04,0xb0,0xab,0x20,0x12,0x79,0x37,0xe9,0xbd, + 0x9a,0x10,0x12,0x88,0x08,0x32,0x33,0x80,0x10,0x35,0x14,0x90,0x9a,0x00,0x81,0x7b,0x67,0xc8,0xbc,0x8a, + 0x10,0x82,0x98,0x19,0x34,0x23,0x08,0x19,0x42,0x13,0xa8,0x9b,0x08,0x92,0x7a,0x77,0xb8,0xbd,0x99,0x10, + 0x81,0x98,0x28,0x44,0x22,0x08,0x19,0x41,0x01,0xb8,0xaa,0x88,0xa1,0x7a,0x67,0xb8,0xad,0x8a,0x10,0x80, + 0x99,0x20,0x44,0x12,0x80,0x10,0x32,0x81,0xc9,0xa9,0x90,0xb0,0x7c,0x27,0xc8,0xbc,0x99,0x10,0xa0,0x99, + 0x31,0x36,0x02,0x01,0x21,0x14,0x80,0x9b,0x8b,0x8a,0xac,0x1e,0x67,0xa0,0xcb,0x8a,0x08,0x80,0x8a,0x38, + 0x44,0x12,0x10,0x31,0x13,0xa2,0xb8,0x9a,0xa9,0xdc,0xbb,0x77,0x83,0xcc,0x9a,0x08,0x88,0x9a,0x28,0x44, + 0x11,0x11,0x32,0x23,0x91,0x99,0x98,0xba,0xbe,0xcb,0x73,0x17,0xca,0x9b,0x88,0x98,0x9a,0x18,0x34,0x23, + 0x22,0x44,0x22,0x00,0x88,0x98,0xba,0xae,0x9b,0x7b,0x27,0xb9,0xac,0x88,0xa9,0xaa,0x28,0x52,0x21,0x41, + 0x43,0x22,0x10,0x00,0x98,0xca,0xbb,0xac,0x1c,0x67,0xa0,0xbb,0x98,0xaa,0x9c,0x19,0x32,0x32,0x63,0x43, + 0x22,0x11,0x01,0x90,0xca,0xbb,0xbc,0xcb,0x70,0x07,0xaa,0x8a,0xb0,0xcb,0x89,0x11,0x21,0x42,0x44,0x22, + 0x22,0x12,0x81,0xa9,0xbb,0xbd,0xad,0x0b,0x67,0xa0,0x9b,0x90,0xcb,0xab,0x10,0x10,0x21,0x27,0x24,0x12, + 0x22,0x01,0xa8,0xba,0xbb,0xaf,0xab,0x71,0x05,0xaa,0x0a,0xb8,0xdc,0x89,0x01,0x00,0x32,0x35,0x33,0x21, + 0x33,0x81,0xb9,0xca,0xcb,0xcc,0xaa,0x66,0x81,0xbb,0x09,0xc9,0xac,0x0a,0x01,0x11,0x42,0x26,0x23,0x21, + 0x21,0x81,0xaa,0xbb,0xad,0xbc,0xbb,0x67,0x81,0xaa,0x89,0xb9,0xbd,0x8a,0x10,0x11,0x52,0x44,0x23,0x12, + 0x12,0x81,0xb9,0xbb,0xbc,0xbd,0xaa,0x67,0x81,0xaa,0x89,0xba,0xae,0x0a,0x10,0x10,0x44,0x32,0x22,0x23, + 0x13,0x98,0xba,0xbb,0xcc,0xaa,0xa9,0x77,0x04,0xaa,0x9a,0xdb,0xbb,0x89,0x11,0x20,0x35,0x24,0x33,0x11, + 0x00,0x98,0xb9,0x99,0x9a,0x99,0xa9,0x7b,0x77,0xb2,0xbb,0xca,0xbc,0x89,0x20,0x21,0x34,0x24,0x12,0x11, + 0x00,0x00,0x80,0x91,0x98,0xab,0xdb,0xca,0x78,0x77,0xb9,0xaa,0xaa,0x9a,0x21,0x22,0x42,0x22,0x10,0x20, + 0x32,0x12,0x03,0xa1,0xba,0xac,0xac,0xac,0xba,0x7c,0x77,0xb0,0xac,0x99,0x0a,0x21,0x13,0x11,0x01,0x01, + 0x32,0x34,0x10,0x90,0xc8,0xa9,0x98,0x8b,0x8f,0xab,0xd9,0x77,0x83,0xcc,0x9a,0x89,0x20,0x14,0x01,0x88, + 0x18,0x30,0x42,0x02,0xb8,0xb8,0x99,0x2a,0x1b,0xbd,0xdb,0x98,0x19,0x77,0x87,0xac,0x0a,0x09,0x30,0x23, + 0xb1,0x88,0x21,0x38,0x63,0x81,0xba,0x98,0xc0,0x88,0x01,0xbb,0x8e,0x88,0xa0,0x77,0x06,0xac,0x8a,0x88, + 0x10,0x24,0x81,0x0a,0x18,0x88,0x22,0x05,0xa9,0x8a,0x99,0x9a,0x21,0xb0,0xac,0x08,0x9a,0x30,0x77,0x07, + 0xae,0x08,0x89,0x30,0x15,0xa0,0x09,0x00,0x1a,0x62,0x80,0x99,0x90,0xb9,0x18,0x12,0xaa,0x0a,0xd9,0x8a, + 0x15,0x77,0x82,0xbd,0x89,0xa8,0x31,0x25,0x98,0x19,0x89,0x2a,0x44,0x91,0x88,0xb8,0xab,0x30,0x02,0x89, + 0xda,0xbc,0x29,0x32,0x30,0x77,0x97,0xbb,0x98,0xa9,0x52,0x13,0x09,0x09,0xba,0x41,0x05,0x00,0x90,0xbb, + 0x19,0x81,0x20,0x92,0xaf,0x0a,0x98,0x22,0x05,0x7a,0x27,0xda,0x89,0xaa,0x39,0x24,0x80,0x11,0xda,0x28, + 0x03,0x40,0x02,0xbc,0x90,0xb9,0x41,0x81,0x1b,0xd8,0xba,0x23,0x28,0x78,0x59,0x17,0xd9,0x89,0x9b,0x59, + 0x01,0x01,0xb3,0x8a,0x10,0x3a,0x16,0xa1,0x00,0xac,0x2a,0x80,0x01,0xc3,0xaa,0x89,0x0c,0x22,0x24,0xa1, + 0x77,0xb1,0x0b,0xcf,0x00,0x81,0x52,0x90,0x08,0xb0,0x10,0x04,0x20,0xa2,0x8c,0x89,0x0c,0x93,0xa3,0xa2, + 0x8f,0x0a,0x09,0x84,0x82,0x92,0x72,0x87,0x99,0xf9,0x1b,0x08,0x51,0x81,0x18,0xc8,0x00,0x82,0x41,0x80, + 0x09,0xca,0x18,0x88,0x40,0xaa,0x90,0xf9,0x11,0x19,0x21,0x99,0xd4,0x57,0x09,0x8a,0xbd,0x91,0x18,0x24, + 0x39,0xa1,0x8a,0xb2,0x61,0x11,0x18,0xd9,0x98,0x89,0x48,0x19,0x88,0xd8,0x80,0x29,0x58,0x88,0xb5,0xa1, + 0x57,0x2b,0xb9,0xac,0xd1,0x21,0x20,0x40,0x99,0xa1,0xa0,0x34,0x5a,0x18,0x9b,0xe0,0x80,0x81,0x38,0x8a, + 0x98,0xb8,0x84,0x38,0x12,0x4c,0x0b,0x7a,0xa7,0x84,0xac,0x0a,0x0c,0x84,0x11,0x93,0x3a,0x0c,0x18,0xa3, + 0x07,0x09,0x89,0x9b,0xd3,0x02,0x29,0x1a,0xba,0xc3,0x30,0x38,0x00,0xf4,0x92,0x70,0x10,0xf3,0xa9,0xa8, + 0x4a,0x29,0x12,0xb2,0x94,0x4b,0x2a,0x11,0xc4,0x93,0x0b,0x0b,0x1b,0xc2,0x03,0x1b,0x0b,0x8c,0xa7,0x31, + 0x2a,0x98,0xb1,0x72,0x87,0x94,0x8d,0xab,0x1a,0xa1,0x26,0x18,0x91,0x08,0x90,0x42,0x18,0xa2,0x9a,0xea, + 0x18,0x0a,0xa3,0x80,0xb8,0x3a,0x1f,0xa3,0x84,0x01,0x39,0xcb,0x77,0x79,0xa9,0xa8,0x9b,0x00,0x59,0x81, + 0x03,0x19,0x00,0x6a,0x88,0xa4,0x81,0x0a,0x0c,0xa9,0xb4,0x20,0x3d,0x0b,0xd2,0xa4,0x21,0x5b,0x0a,0xb2, + 0x72,0x91,0x84,0x1e,0xcb,0xa1,0x18,0x11,0x58,0x98,0xa4,0x20,0x19,0x01,0xa1,0xb2,0x2a,0x0f,0xa0,0x91, + 0x80,0x2a,0x0c,0xa1,0x22,0x4a,0x81,0x11,0x98,0x77,0x38,0xf5,0x80,0x0c,0x99,0x10,0x80,0x84,0x38,0x09, + 0x82,0x38,0x80,0x82,0x8a,0xd8,0x89,0x8b,0xc1,0x38,0x1e,0xa0,0x11,0x19,0xa4,0x13,0x5a,0x89,0x57,0x79, + 0x9a,0xe1,0x09,0x8a,0x00,0x38,0xa2,0x04,0x49,0x08,0x11,0x91,0xa4,0x4a,0x0d,0xc0,0x91,0x19,0x2b,0x99, + 0xd3,0x83,0x59,0x19,0xb1,0x96,0x58,0x92,0x24,0x0f,0xc9,0xa0,0x09,0x08,0x40,0x19,0xa3,0x23,0x38,0x21, + 0x28,0xe0,0xc3,0x3a,0x0f,0xb0,0xa2,0x00,0x3b,0x0a,0xd3,0x95,0x20,0x3a,0x88,0x71,0xa2,0x97,0x3a,0x9f, + 0xb0,0x00,0x19,0x81,0x30,0x08,0x04,0x68,0x19,0x92,0x28,0x9b,0xe2,0x00,0x0c,0x98,0x90,0x88,0x80,0x20, + 0x39,0x10,0x95,0x84,0x74,0x69,0xd1,0xa2,0x1c,0xab,0xa1,0x10,0x80,0x22,0x5a,0xa2,0x06,0x38,0x88,0xb2, + 0x00,0x0b,0xb9,0xb0,0xaa,0xaa,0x3d,0x1d,0xb1,0x85,0x30,0x18,0x93,0x77,0x78,0x8a,0xd1,0x80,0x0b,0x98, + 0x10,0x1a,0xb3,0x33,0x7b,0x81,0x03,0x20,0x09,0x88,0xaa,0xf1,0x88,0x0c,0xb9,0x92,0x4b,0x0a,0x83,0x21, + 0x94,0x55,0x04,0x15,0x2c,0xea,0xb1,0x1b,0x8b,0xb1,0x11,0x29,0x02,0x73,0x20,0x94,0x23,0x3a,0xa8,0xb1, + 0x8a,0x0e,0x8c,0xca,0xd2,0x00,0x4b,0x1a,0xa2,0x84,0x74,0x5a,0xa0,0xb4,0x29,0x0e,0xb0,0x81,0x09,0x80, + 0x28,0x09,0xa5,0x23,0x5a,0x80,0x82,0x28,0x89,0xb0,0xb0,0x9a,0x0e,0x9b,0xc8,0x91,0x29,0x29,0x79,0x97, + 0x07,0x49,0x0c,0xb0,0x80,0x1a,0x89,0x18,0x99,0xb5,0x32,0x5c,0x88,0x83,0x20,0x88,0xa2,0x49,0x8c,0xc1, + 0x18,0x1e,0xa8,0x91,0x19,0x88,0x01,0x27,0x71,0x2a,0xf1,0xa1,0x2a,0x0b,0x88,0x90,0xa2,0x22,0x5e,0x88, + 0xa4,0x22,0x4b,0x88,0x91,0x91,0x90,0x2a,0x0f,0xc0,0xa2,0x29,0x1c,0xa0,0xa3,0x17,0x70,0x1a,0xe1,0x91, + 0x19,0x0b,0x90,0x81,0x80,0x10,0x59,0x18,0x92,0x84,0x01,0x81,0x10,0x2c,0xb9,0xd2,0x88,0x0b,0x1e,0xba, + 0xc6,0x21,0x4c,0xb3,0x26,0x3c,0xc9,0xa2,0x3b,0x8c,0xb2,0x01,0x2a,0x88,0x07,0x80,0x80,0x80,0x80,0x80, + 0x80,0x80,0x08,0x80,0x08,0x80,0x80,0x08,0x80,0x08,0x08,0x80,0x08,0x80,0x08,0x80,0x08,0x08,0x08,0x08, + 0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip alertsSoundOnlyClip = { + alertsSoundOnlyData, sizeof(alertsSoundOnlyData), 7108, 8000 +}; +// "Vibration only" +static const uint8_t alertsVibrationOnlyData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x77,0xf7,0xef,0xa9,0xa8,0x71,0x31,0x80,0x00,0x11,0x90,0x00,0x11,0x98,0xab,0x99,0xba,0xcb,0x19,0xb8, + 0x77,0x57,0xfb,0x89,0x00,0x00,0x22,0x01,0x98,0x88,0x18,0x00,0x01,0x08,0xcb,0xa8,0x09,0x08,0x10,0x10, + 0x7b,0x77,0xc0,0xad,0x01,0x11,0x20,0x02,0xa8,0x8b,0x10,0x12,0x20,0xa0,0xfb,0x0a,0x00,0x02,0x20,0x99, + 0xd9,0x76,0xa3,0xde,0x18,0x11,0x00,0x21,0xa8,0xab,0x21,0x12,0x90,0x82,0xcc,0x9a,0x24,0x01,0x89,0xa1, + 0xba,0x78,0x57,0xeb,0x0a,0x02,0x02,0x20,0xa0,0xbb,0x48,0x12,0x90,0x01,0xbc,0x8b,0x34,0x01,0x99,0xb1, + 0x9c,0x70,0x47,0xda,0x8c,0x21,0x01,0x20,0xa0,0xbb,0x48,0x13,0x88,0x88,0xcb,0x1a,0x34,0x91,0x99,0x99, + 0x8b,0x73,0x67,0xcb,0x8b,0x22,0x12,0x10,0xc0,0xab,0x51,0x02,0x98,0x89,0xab,0x30,0x25,0xa9,0x9a,0x90, + 0x49,0x72,0x07,0xeb,0x0b,0x32,0x11,0x08,0xc9,0x8a,0x53,0x81,0x99,0x89,0x8a,0x42,0x83,0xac,0x88,0x00, + 0x40,0x41,0x17,0xbf,0x1b,0x33,0x01,0x08,0xca,0x09,0x44,0x90,0xa9,0x88,0x1a,0x34,0xb1,0xac,0x10,0x00, + 0x32,0x20,0x67,0xce,0x0a,0x14,0x81,0x08,0xc8,0x29,0x42,0xb0,0x89,0x88,0x19,0x24,0xb8,0x8d,0x01,0x01, + 0x31,0x7a,0xb5,0xbe,0x39,0x04,0x91,0x80,0xab,0x41,0x14,0x9b,0x99,0x90,0x51,0x81,0xda,0x00,0x01,0x10, + 0xb2,0x71,0xf4,0xab,0x42,0x00,0x80,0xa0,0x0c,0x33,0xa2,0x0b,0x9a,0x88,0x27,0x99,0x9b,0x93,0x21,0x21, + 0xfb,0x47,0xda,0x8b,0x23,0x10,0x01,0xf9,0x18,0x12,0x98,0x91,0x9b,0x48,0x84,0x99,0x89,0x89,0x43,0x91, + 0x2c,0x47,0xaf,0x19,0x82,0x21,0x91,0xac,0x31,0x01,0x00,0xd8,0x0b,0x33,0x90,0x80,0xac,0x4a,0x04,0x98, + 0x78,0xb7,0xbb,0x28,0x10,0x16,0xa8,0x0b,0x01,0x12,0x02,0xbe,0x00,0x11,0x30,0xc8,0xaa,0x22,0x20,0x81, + 0x77,0xeb,0x89,0x01,0x41,0x81,0xab,0x00,0x20,0x23,0xf9,0x89,0x00,0x21,0x92,0x9c,0x08,0x10,0x23,0x79, + 0xb7,0x9e,0x18,0x10,0x14,0xb8,0x0a,0x80,0x42,0x91,0x9c,0x90,0x28,0x14,0xa9,0x99,0x89,0x53,0x81,0x57, + 0xbd,0x89,0x81,0x72,0x80,0x8a,0x98,0x38,0x03,0xa9,0xa8,0x0b,0x34,0x91,0x88,0xad,0x30,0x83,0x71,0xc7, + 0x9b,0x08,0x38,0x07,0x89,0x88,0x0b,0x14,0x80,0x08,0xbc,0x21,0x11,0x20,0xda,0x09,0x01,0x40,0x47,0xbd, + 0x98,0x09,0x25,0x91,0x80,0xbb,0x31,0x01,0x13,0xdb,0x0a,0x88,0x34,0x80,0x8b,0xda,0x40,0x60,0x97,0xab, + 0xa9,0x2a,0x17,0x10,0xa0,0x9b,0x81,0x40,0x02,0x9a,0xb9,0x2b,0x14,0x11,0xa1,0x8e,0x98,0x72,0xa7,0x89, + 0xcb,0x38,0x03,0x43,0xa9,0x8a,0xca,0x43,0x00,0x01,0xeb,0x00,0x2a,0x22,0xa0,0x91,0x8e,0x74,0xb8,0xa1, + 0x9e,0x11,0x28,0x06,0x88,0xa0,0x0b,0x81,0x40,0x91,0x89,0xd8,0x18,0x00,0x32,0xa8,0x99,0x76,0xb9,0xc2, + 0x8e,0x10,0x10,0x06,0x19,0x99,0x99,0x92,0x40,0x80,0x08,0xc9,0x19,0x88,0x23,0x91,0x00,0x72,0xf2,0xc1, + 0x8d,0x18,0x10,0x16,0x29,0x99,0x99,0xa1,0x58,0x80,0x91,0xa0,0x1c,0x99,0x03,0x12,0x28,0x79,0xc7,0x00, + 0x9e,0x08,0x80,0x43,0x08,0x93,0x99,0x0a,0xa9,0x15,0x29,0x80,0xca,0x90,0x1b,0x02,0x12,0x23,0x77,0x8b, + 0xf0,0x8a,0x08,0x00,0x16,0x28,0x80,0xa9,0x08,0x0b,0x83,0x11,0x10,0xbc,0xb0,0x0c,0x18,0x83,0x75,0xa6, + 0x08,0xdb,0x9a,0x80,0x40,0x23,0x12,0x02,0x9b,0xb8,0x8a,0x20,0x92,0x14,0x8c,0xcb,0xc8,0x09,0x80,0x77, + 0x92,0x08,0xdb,0xab,0xa0,0x29,0x34,0x13,0x25,0x08,0x88,0x98,0x2a,0x08,0x80,0x01,0xcb,0xc8,0xab,0x9c, + 0x77,0x92,0x88,0xc9,0xad,0xa8,0x09,0x30,0x14,0x43,0x12,0x81,0x01,0x89,0x89,0x90,0x19,0x88,0xb9,0x89, + 0xbd,0x76,0x06,0x88,0x99,0xbd,0xbb,0xb9,0x8a,0x22,0x43,0x44,0x23,0x12,0x12,0x90,0x88,0x99,0x99,0x80, + 0x98,0x10,0x72,0x15,0x81,0xa9,0xdd,0xdb,0xba,0xab,0x9a,0x10,0x33,0x36,0x34,0x33,0x22,0x01,0x88,0xba, + 0xcb,0xab,0xaa,0x69,0x36,0x23,0x11,0xc8,0xcd,0xbc,0xcb,0xab,0x99,0x10,0x43,0x44,0x24,0x33,0x22,0x11, + 0x88,0xba,0xcc,0xbb,0xab,0x32,0x44,0x32,0x01,0xca,0xbe,0xbd,0xac,0x9b,0x8a,0x20,0x43,0x35,0x34,0x43, + 0x22,0x01,0x80,0xaa,0xcb,0xcb,0x1a,0x11,0x23,0x23,0xb9,0xbf,0xbe,0xbc,0xac,0xaa,0x88,0x21,0x44,0x34, + 0x24,0x43,0x12,0x11,0x88,0xa9,0xcb,0xab,0x90,0x00,0x21,0xa1,0xc9,0xcd,0xbd,0xcb,0xbb,0x9a,0x89,0x21, + 0x35,0x45,0x33,0x33,0x24,0x12,0x00,0xa9,0xca,0x38,0x0a,0x91,0xb0,0xdc,0xcc,0xcb,0xcb,0xab,0x9a,0x09, + 0x20,0x44,0x53,0x33,0x33,0x14,0x03,0x81,0x98,0xab,0x2e,0x95,0x20,0x18,0xc9,0xd9,0xbb,0xbd,0xbb,0xab, + 0x89,0x18,0x24,0x45,0x42,0x23,0x33,0x22,0x01,0x91,0xa9,0xfb,0x34,0x0a,0x92,0xa9,0xae,0xbc,0xdb,0xba, + 0xaa,0x1a,0x18,0x33,0x36,0x43,0x33,0x33,0x23,0x11,0x00,0xa9,0xba,0x7f,0xb4,0x01,0x98,0xda,0xaa,0xbb, + 0x9d,0x99,0xa9,0x93,0x14,0x52,0x41,0x31,0x60,0x28,0x80,0x93,0x08,0x89,0x2b,0x67,0x1e,0x09,0x9b,0xb9, + 0x80,0x7b,0x49,0xc5,0x8b,0x82,0xf4,0x90,0x27,0x0e,0x18,0xa1,0x80,0x60,0x99,0xa9,0x34,0xc8,0x81,0x93, + 0x1f,0x30,0xf8,0x81,0x00,0x2d,0x10,0xa8,0x81,0x32,0xb8,0x01,0xc9,0x5e,0xa0,0xa1,0x22,0xc0,0xc8,0x14, + 0x3a,0x2c,0x19,0xd2,0x91,0x12,0x1e,0x02,0xeb,0x24,0x9b,0x38,0xba,0x60,0x90,0x82,0x11,0x0b,0x3a,0xd2, + 0x2b,0x82,0x9c,0x08,0x90,0x90,0x78,0x87,0x8c,0x21,0xaa,0x89,0x22,0x98,0x29,0x24,0x89,0x28,0x82,0x88, + 0x2b,0x90,0xba,0xb2,0x77,0x07,0xad,0x08,0xa8,0x9a,0x30,0x13,0x80,0x52,0x13,0x89,0x28,0x01,0xc9,0x89, + 0x80,0xbb,0x77,0x87,0xac,0x89,0x98,0x99,0x20,0x34,0x82,0x21,0x24,0x90,0x9a,0x08,0xb8,0xbd,0x09,0x38, + 0x77,0xc0,0x9b,0x98,0x9a,0x09,0x53,0x33,0x11,0x34,0x81,0xa8,0xaa,0xa9,0xbd,0x9b,0x80,0x79,0x57,0xc8, + 0x9b,0x80,0x99,0x08,0x63,0x12,0x08,0x33,0xa0,0xab,0x98,0xb8,0xbd,0x18,0x92,0x78,0x47,0xdb,0x89,0x91, + 0x8a,0x20,0x43,0x02,0x20,0x13,0xcb,0x89,0xa9,0xbb,0x8a,0x22,0xa8,0x77,0x87,0xac,0x18,0xa8,0x09,0x32, + 0x23,0x80,0x42,0xb1,0x9d,0x01,0xaa,0x0a,0x01,0x98,0x2b,0x77,0xe3,0x8b,0x82,0xab,0x40,0x23,0x00,0x21, + 0x83,0xbd,0x29,0xc8,0x8a,0x13,0xa8,0x08,0x72,0x17,0xeb,0x19,0xa0,0x0b,0x34,0x00,0x21,0x02,0xd8,0x0a, + 0x91,0xab,0x33,0xc9,0x29,0x91,0x78,0x17,0xbd,0x10,0xc9,0x39,0x14,0x00,0x21,0x90,0xab,0x10,0xca,0x39, + 0x93,0x8b,0x12,0xca,0x77,0xc2,0x8d,0x82,0x9c,0x32,0x81,0x20,0x02,0xb9,0x1a,0xb1,0x0d,0x14,0xaa,0x21, + 0xb8,0x19,0x77,0xe8,0x18,0xc0,0x29,0x83,0x08,0x13,0x98,0x8a,0x81,0xac,0x43,0xb8,0x48,0xb0,0x1b,0x61, + 0x06,0xad,0x10,0xbc,0x42,0x91,0x31,0x92,0x9a,0x80,0xba,0x58,0x91,0x3a,0xb2,0x8d,0x82,0x7a,0x07,0xac, + 0x01,0xac,0x32,0x88,0x52,0x90,0x88,0x90,0x9a,0x12,0xa8,0x32,0xd9,0x18,0xa8,0x79,0x17,0x8e,0x81,0x9d, + 0x13,0x09,0x14,0x89,0x80,0xa9,0x08,0x01,0x18,0x03,0x9b,0xa1,0x8d,0x71,0x87,0x8c,0xb2,0x0e,0x82,0x18, + 0x14,0x09,0x91,0xa9,0x08,0x99,0x31,0x91,0x38,0xc9,0x1a,0x78,0x87,0x1d,0xd1,0x2b,0x91,0x48,0x02,0x18, + 0x80,0xaa,0x08,0x9a,0x23,0x98,0x13,0xac,0x08,0x7b,0x07,0x2d,0xf0,0x2a,0xa0,0x41,0x81,0x20,0x98,0x8a, + 0x90,0x0b,0x83,0x38,0xb2,0x1a,0xe0,0x78,0xb7,0x49,0xea,0x10,0x99,0x23,0x18,0x21,0xa9,0x08,0xbb,0x11, + 0x89,0x23,0x89,0x00,0xda,0x72,0xc7,0x30,0xbe,0x02,0x0b,0x14,0x18,0x03,0x8a,0xa1,0x8c,0x81,0x2a,0x82, + 0x29,0xd1,0x29,0x70,0xd3,0x21,0xbf,0x92,0x2a,0x02,0x40,0x82,0x08,0xc0,0x09,0xa9,0x20,0x90,0x32,0x9b, + 0x92,0x7a,0xc7,0x12,0xaf,0xa2,0x3a,0x01,0x32,0x83,0x18,0xe8,0x09,0xa9,0x30,0x8a,0x14,0x8a,0xc3,0x78, + 0xe4,0x02,0x8e,0xa1,0x29,0x01,0x31,0x81,0x10,0xc9,0x08,0x8c,0x81,0x29,0x81,0x18,0xb0,0x71,0xe5,0x03, + 0x8f,0xb1,0x28,0x80,0x32,0x81,0x21,0xbb,0xa3,0x0e,0xa1,0x28,0x98,0x20,0xc8,0x74,0xc8,0x95,0x1d,0xc0, + 0x10,0x08,0x12,0x81,0x03,0x0b,0xc1,0x1a,0xc8,0x11,0x8a,0x83,0x88,0x74,0xb8,0xa7,0x1c,0xd8,0x11,0x09, + 0x12,0x11,0x02,0x09,0xd0,0x19,0xab,0x92,0x18,0x02,0x39,0x74,0xb0,0xb7,0x2c,0xcb,0x01,0x3a,0x12,0x22, + 0x04,0x28,0xc9,0x80,0x8e,0xa0,0x28,0x09,0x01,0x73,0x90,0xb7,0x2b,0xcc,0x92,0x29,0x02,0x32,0x12,0x21, + 0xc8,0xa0,0x8d,0xb8,0x19,0x98,0x23,0x71,0xa3,0xa7,0x2d,0xdb,0x81,0x2a,0x01,0x23,0x32,0x30,0xa8,0xb1, + 0x8f,0xaa,0x98,0x08,0x20,0x73,0x92,0xa7,0x3b,0xcd,0x91,0x3b,0x80,0x14,0x22,0x22,0x00,0x98,0x9c,0xcb, + 0x8a,0x8b,0x82,0x78,0xa7,0x05,0x1c,0xd8,0x00,0x0b,0x91,0x21,0x31,0x32,0x11,0x92,0x8a,0xbd,0xab,0xbb, + 0x80,0x7b,0x87,0x41,0x8b,0xf3,0x19,0x9b,0x80,0x28,0x11,0x34,0x31,0x02,0x80,0xba,0xbc,0xda,0x99,0x89, + 0x27,0x7a,0xb0,0x93,0x1e,0xb9,0x91,0x19,0x00,0x33,0x33,0x25,0x20,0x88,0xaa,0xdb,0xaa,0x9c,0x62,0x2a, + 0xb5,0x20,0x8f,0xb0,0x09,0x8a,0x02,0x41,0x23,0x24,0x22,0x00,0x8a,0xbc,0xd9,0x99,0x7a,0x90,0x86,0x3a, + 0xcb,0xb1,0x0c,0x9a,0x10,0x11,0x16,0x32,0x12,0x12,0x89,0xc9,0xaa,0x9c,0x3a,0xa7,0x15,0x3b,0xe8,0xa0, + 0x9b,0xaa,0x09,0x80,0x26,0x51,0x21,0x12,0x91,0x90,0x9c,0xc9,0x09,0x97,0x78,0x0a,0xb2,0x80,0xab,0xa9, + 0xaa,0x99,0x70,0x30,0x95,0x04,0x11,0x19,0x9a,0xe1,0x90,0x04,0x5f,0x99,0xb3,0x81,0x1a,0x1c,0xb9,0xa5, + 0x28,0x29,0x20,0x28,0x91,0xa3,0xa2,0x49,0x1e,0x71,0x2e,0xe2,0x92,0x18,0x2b,0x0a,0xb1,0x83,0x5a,0x89, + 0x92,0x10,0x8a,0xa7,0x5a,0x8a,0x92,0x91,0x92,0x7d,0x3c,0xc0,0xb4,0x02,0x4b,0x1b,0xc1,0x93,0x29,0x19, + 0x4b,0xa9,0xa3,0xe2,0xa5,0x20,0x4e,0x0a,0xc2,0x82,0x90,0xa2,0x11,0x4c,0x1b,0xd2,0xc3,0x94,0x4a,0x2b, + 0x89,0xc4,0x11,0x3b,0x2b,0xa8,0xc6,0x82,0x49,0x2c,0x98,0x92,0x18,0x4a,0xaa,0xb7,0x11,0x4b,0x1b,0xe2, + 0x93,0x28,0x3c,0x1a,0xb0,0xc5,0x93,0x39,0x4d,0x0a,0xb1,0xa4,0x01,0x4b,0x0a,0xa1,0x11,0x3c,0xc8,0xa5, + 0x81,0x08,0x88,0x38,0x2c,0xa8,0xc6,0xa2,0x22,0x3f,0x2b,0x98,0xb3,0x01,0x88,0x88,0xa4,0x6a,0x2b,0x09, + 0xf2,0xb4,0x82,0x6a,0x1b,0xc1,0xb4,0x11,0x5b,0x1b,0xb1,0xb3,0xa3,0x01,0x1a,0xb1,0x22,0x3f,0x1a,0xa0, + 0xe3,0xb4,0x82,0x19,0xc1,0x83,0x6c,0x1b,0xc1,0xb5,0x30,0x3d,0x0a,0xc2,0xa3,0x81,0x49,0x3d,0x0a,0xc2, + 0xa3,0x00,0x80,0x4a,0x0a,0x80,0x91,0x28,0xa9,0x84,0x2c,0xe2,0xc4,0xb4,0x21,0x4e,0x0a,0xb1,0xa4,0x10, + 0x5b,0x1b,0xc1,0xa4,0x38,0x2b,0xa8,0xc4,0x21,0x4d,0x8a,0xd3,0x93,0x39,0x2c,0xb0,0xa4,0x20,0x3d,0x99, + 0xc4,0x02,0x4b,0x2b,0xb0,0xa4,0x10,0x2a,0x09,0x18,0x19,0x19,0x2a,0x89,0xd3,0xe5,0x94,0x5a,0x1b,0xc1, + 0xb4,0x21,0x2c,0x98,0xd4,0x82,0x39,0x3d,0x99,0xc4,0x82,0x39,0x2c,0x98,0x92,0x00,0x09,0xc2,0x92,0xb2, + 0x11,0x5b,0x4d,0xb8,0xa4,0x00,0x5a,0x0b,0xd3,0x82,0x39,0x2c,0xc0,0xa5,0x38,0x3c,0x9a,0xb6,0x01,0x09, + 0x28,0xa9,0x22,0x2e,0xa0,0xa2,0x82,0x3b,0xa0,0x11,0xf0,0xa5,0x00,0x6a,0x3d,0x99,0xc4,0x82,0x39,0x2c, + 0x89,0xe3,0xa4,0x28,0x0a,0xe3,0x93,0x39,0x9a,0xa4,0x38,0x3d,0xa9,0xb5,0x11,0x4b,0x8a,0xc4,0x82,0x29, + 0x2b,0xa0,0xa2,0xa3,0x49,0x3b,0x9a,0xb4,0xc3,0x12,0x3d,0xb8,0xa5,0x28,0xa8,0x40,0x1b,0xa0,0xc3,0xa3, + 0x7a,0x3f,0xc0,0xb5,0x21,0x3d,0x8a,0xd3,0x83,0x5b,0x8a,0xc3,0x82,0x29,0x89,0x91,0x38,0x0b,0xe2,0x95, + 0x5a,0x0b,0xc2,0xa4,0x20,0x2c,0x98,0xb3,0x20,0x2c,0xc0,0xa5,0x38,0x2c,0x98,0x92,0x6a,0x0b,0xc3,0x82, + 0x7b,0x1b,0xb1,0x93,0x49,0x2c,0xb0,0xa4,0x10,0x4b,0x89,0xa1,0x11,0x2b,0xa0,0x01,0x19,0x88,0x28,0xf1, + 0x93,0x29,0x5c,0x9a,0xa5,0x49,0x3b,0x9a,0xc7,0x21,0x4d,0x1b,0xc1,0x94,0x39,0x2d,0xa0,0xb3,0x31,0x3f, + 0x8a,0xb2,0x93,0x59,0x2c,0x98,0xa2,0x01,0x3a,0x8a,0xa3,0x18,0xb0,0xc6,0x82,0x6b,0x8a,0xd4,0x93,0x39, + 0x1b,0xf3,0xa3,0x28,0x2b,0xa0,0xa3,0x10,0x5c,0x0a,0xa1,0xc3,0x11,0x4b,0x1b,0xf2,0xa3,0x10,0x4c,0x0a, + 0x81,0xa1,0x82,0x88,0x28,0x0c,0xb6,0x82,0x19,0x2d,0x99,0x81,0x18,0x5a,0x89,0xa2,0xa3,0x40,0x2c,0x08, + 0xb1,0x94,0x00,0x7a,0x82,0xc3,0xe8,0x0a,0x8c,0x90,0x92,0x22,0x48,0x10,0x81,0x22,0x5b,0x09,0xd2,0xa3, + 0x18,0x66,0x2a,0xa9,0xdb,0xa9,0x0c,0x08,0x00,0x04,0x11,0x12,0x02,0x84,0x11,0x18,0x99,0xc1,0x7a,0x86, + 0xa1,0xe8,0x9a,0x9b,0x0a,0x91,0x04,0x12,0x51,0x10,0x12,0x92,0x12,0x99,0x90,0xe9,0x57,0x19,0x98,0xbd, + 0xba,0x9a,0x10,0x28,0x13,0x21,0x34,0x41,0x33,0x11,0x83,0xc8,0x90,0x7e,0x84,0x90,0xe8,0xab,0xab,0x1a, + 0x01,0x21,0x23,0x31,0x15,0x32,0x24,0x10,0x91,0xaa,0xc9,0x7a,0x86,0x98,0xf9,0x9b,0x9a,0x2a,0x81,0x12, + 0x04,0x40,0x31,0x41,0x04,0x81,0xa1,0x8a,0x9a,0x70,0x82,0xc9,0xfb,0xac,0x8a,0x29,0x01,0x11,0x03,0x51, + 0x32,0x43,0x14,0x81,0x80,0x9b,0x9b,0x25,0x90,0xcc,0xcf,0xab,0x99,0x10,0x21,0x21,0x21,0x53,0x24,0x34, + 0x21,0x12,0xa9,0xba,0x9c,0x04,0xa9,0xfd,0xbc,0xaa,0x89,0x11,0x11,0x32,0x43,0x44,0x24,0x23,0x01,0x80, + 0xa9,0xcb,0x2b,0x94,0x98,0xff,0xba,0xaa,0x09,0x11,0x20,0x22,0x53,0x35,0x23,0x33,0x00,0x88,0xaa,0xbb, + 0x78,0x91,0xd9,0xde,0xab,0x8a,0x19,0x01,0x11,0x23,0x54,0x43,0x23,0x12,0x80,0x88,0x9a,0xac,0x34,0x98, + 0xfb,0xbf,0xab,0x8a,0x18,0x81,0x31,0x42,0x44,0x24,0x22,0x12,0x08,0x88,0xaa,0x0c,0x07,0x89,0xfb,0xbc, + 0xaa,0x89,0x11,0x00,0x22,0x33,0x37,0x33,0x33,0x01,0x80,0xa8,0xbb,0x0d,0x07,0x99,0xfb,0xad,0x9a,0x89, + 0x11,0x00,0x21,0x43,0x44,0x33,0x32,0x01,0x88,0xa8,0xbb,0x0e,0x05,0x9a,0xec,0xad,0x9a,0x88,0x11,0x01, + 0x22,0x33,0x45,0x24,0x21,0x01,0x88,0x99,0xca,0x1b,0x06,0x9a,0xec,0xad,0x8a,0x89,0x21,0x01,0x31,0x33, + 0x45,0x24,0x21,0x01,0x89,0xa8,0xca,0xab,0x34,0xab,0xfb,0xbf,0x9b,0x88,0x20,0x12,0x31,0x43,0x53,0x34, + 0x12,0x12,0x98,0x9a,0xeb,0xba,0x50,0xa8,0xba,0xdf,0xaa,0x88,0x28,0x13,0x11,0x34,0x42,0x44,0x12,0x11, + 0x98,0xaa,0xba,0xae,0x49,0xb3,0xb9,0xfd,0xab,0x88,0x19,0x23,0x01,0x53,0x22,0x54,0x12,0x11,0x91,0x8b, + 0xa9,0xbd,0xb9,0x27,0xa9,0xba,0xcf,0x8a,0x80,0x20,0x02,0x20,0x34,0x32,0x26,0x02,0x10,0xa8,0x8a,0xc9, + 0xac,0x79,0xa5,0xa9,0xe9,0x8c,0x08,0x08,0x22,0x81,0x32,0x03,0x42,0x14,0x29,0x00,0xcb,0x91,0xda,0x89, + 0x66,0x88,0xaa,0xfb,0x9a,0x00,0x20,0x23,0x81,0x11,0x8a,0x50,0x82,0x33,0x02,0x1c,0x99,0xab,0x31,0x77, + 0x91,0x9c,0xcf,0x88,0x81,0x30,0x11,0x09,0x81,0x89,0x25,0x11,0x32,0xb0,0x99,0xc0,0x1a,0x38,0x57,0xbb, + 0x8e,0xbc,0x08,0x02,0x41,0x11,0x98,0x82,0x30,0x72,0x82,0x81,0x98,0x8c,0x8a,0xb8,0x01,0x47,0xbd,0x0b, + 0xbc,0x00,0x25,0x30,0x20,0xa0,0x82,0x41,0x38,0x92,0xd1,0xb9,0xbb,0xb9,0xc2,0xb2,0x77,0xa9,0x8d,0x91, + 0x1b,0x62,0x10,0x00,0xa2,0x09,0x28,0x91,0x93,0x98,0x8f,0x8b,0x98,0x92,0x83,0x74,0xa7,0xdb,0x81,0x8a, + 0x50,0x03,0x80,0x00,0x9a,0x0a,0x83,0x94,0x91,0x8a,0x9d,0x89,0x82,0x22,0x79,0x37,0xdd,0x09,0x88,0x29, + 0x25,0x80,0x08,0x98,0x99,0x20,0x21,0x89,0x99,0xbb,0x8c,0x20,0x84,0x93,0x77,0xc2,0xae,0x81,0x88,0x60, + 0x11,0x98,0x90,0x80,0x1a,0x38,0x82,0xa9,0x0b,0x9c,0x99,0x34,0x30,0x4b,0x77,0xd8,0x8c,0x00,0x88,0x33, + 0x23,0x9a,0x8b,0x98,0x80,0x51,0x02,0xf8,0x98,0x88,0x19,0x11,0x84,0x79,0x05,0xfb,0x0a,0x00,0x00,0x22, + 0x84,0xa9,0x0b,0x11,0x81,0x21,0x02,0xbe,0x8c,0x10,0x01,0x20,0x81,0x71,0x97,0xdc,0x88,0x11,0x18,0x22, + 0x93,0xc9,0x1b,0x20,0x83,0x11,0x00,0xaf,0x8c,0x11,0x12,0x18,0x99,0x72,0x97,0xcc,0x19,0x10,0x00,0x22, + 0x02,0xda,0x0a,0x22,0x03,0x80,0x80,0xbd,0x8d,0x30,0x12,0x88,0x1b,0x7a,0x07,0xdc,0x09,0x11,0x18,0x11, + 0x03,0xca,0x0b,0x52,0x02,0x88,0x88,0xba,0x9e,0x20,0x14,0xa8,0x99,0x69,0x07,0xd9,0x0b,0x28,0x81,0x02, + 0x33,0x99,0xad,0x00,0x15,0x00,0x09,0xa9,0xd9,0x88,0x32,0x11,0xab,0x8a,0x77,0xc2,0x9e,0x00,0x02,0x00, + 0x20,0x10,0xba,0x9b,0x43,0x23,0xa9,0x99,0xb8,0xca,0x39,0x35,0xa1,0xeb,0x74,0x92,0xcd,0x89,0x22,0x01, + 0x08,0x11,0xa1,0xac,0x38,0x34,0xa2,0xbb,0x09,0x88,0xaa,0x32,0x16,0xc9,0x2c,0x67,0xb8,0x9e,0x18,0x12, + 0x81,0x88,0x20,0x88,0x9a,0x30,0x25,0xa0,0x9d,0x09,0x01,0xa0,0x08,0x20,0xd9,0x74,0x03,0xdd,0x9b,0x21, + 0x33,0x80,0x8a,0x21,0x80,0xaa,0x42,0x34,0xb9,0xbe,0x09,0x13,0x80,0x8b,0x19,0x70,0x27,0xd0,0xbd,0x19, + 0x32,0x13,0xa1,0x99,0x19,0x18,0x28,0x33,0x85,0xda,0x9c,0x19,0x23,0xa2,0xc9,0x99,0x74,0x06,0xea,0x9b, + 0x10,0x24,0x01,0x8a,0x09,0x01,0x91,0x08,0x40,0x10,0xcb,0xcb,0x10,0x33,0x80,0xad,0x4a,0x47,0xb2,0xce, + 0x0a,0x40,0x22,0x90,0xa9,0x08,0x11,0x00,0x00,0x11,0xa1,0xdc,0x9a,0x40,0x22,0xa8,0xdb,0x71,0x33,0xdb, + 0xbe,0x18,0x33,0x14,0xa9,0x8b,0x28,0x12,0x81,0x18,0x11,0xa8,0xbf,0x89,0x42,0x03,0xba,0x0e,0x54,0x92, + 0xfc,0x9a,0x30,0x33,0x92,0xba,0x09,0x31,0x02,0x80,0x30,0x11,0xdc,0xac,0x19,0x34,0x91,0xea,0x48,0x24, + 0xe8,0xbd,0x19,0x52,0x12,0x98,0x9a,0x18,0x12,0x81,0x00,0x12,0xa0,0xdd,0x9a,0x31,0x14,0xa8,0xad,0x63, + 0x03,0xfb,0x9d,0x28,0x42,0x01,0x99,0x8a,0x11,0x11,0x80,0x20,0x12,0xc8,0xae,0x0a,0x32,0x03,0xda,0x8b, + 0x37,0x92,0xde,0x9a,0x20,0x34,0x80,0x99,0x09,0x12,0x81,0x00,0x43,0x12,0xeb,0xbb,0x19,0x33,0x92,0xcd, + 0x39,0x37,0xc8,0xbe,0x8a,0x42,0x23,0x90,0x9a,0x18,0x22,0x81,0x21,0x34,0x82,0xce,0xab,0x20,0x33,0xb8, + 0xcd,0x50,0x13,0xfb,0xad,0x18,0x33,0x02,0xa8,0x09,0x22,0x02,0x09,0x51,0x24,0xa0,0xae,0x0a,0x21,0x90, + 0xc8,0x8b,0x57,0x91,0xcd,0x9b,0x20,0x33,0x81,0x8a,0x20,0x33,0x91,0x88,0x44,0x23,0xb8,0xad,0x09,0x11, + 0xb8,0xbf,0x3a,0x77,0xa0,0xbc,0x9b,0x21,0x23,0x98,0x19,0x52,0x22,0x88,0x09,0x42,0x13,0xa8,0x9c,0x08, + 0x91,0xd8,0xcb,0x79,0x27,0xd8,0xcb,0x89,0x12,0x81,0x98,0x28,0x34,0x03,0x90,0x08,0x33,0x13,0xba,0x9d, + 0x08,0x91,0xfb,0xaa,0x70,0x37,0xd8,0xac,0x09,0x20,0x88,0x99,0x30,0x34,0x03,0x80,0x00,0x24,0x81,0xb9, + 0xab,0x80,0xa8,0xad,0x9c,0x70,0x67,0xa9,0xbb,0x09,0x10,0xa8,0x99,0x41,0x34,0x02,0x00,0x30,0x33,0xa1, + 0xca,0xab,0x09,0xa9,0xbc,0x9b,0x7a,0x77,0xa2,0xad,0x89,0x00,0x98,0x9a,0x20,0x25,0x12,0x10,0x31,0x33, + 0x91,0xb9,0x8a,0x9a,0xbe,0xac,0x9a,0xa8,0x77,0x87,0xa9,0x8b,0x88,0x88,0xa9,0x08,0x53,0x22,0x20,0x40, + 0x22,0x01,0x99,0x98,0xa8,0xeb,0xba,0xa9,0x99,0x7b,0x77,0xa0,0xaa,0x89,0x88,0xa9,0x0a,0x40,0x33,0x21, + 0x32,0x25,0x02,0x00,0x08,0xa9,0xdb,0xca,0xaa,0xaa,0xab,0x70,0x77,0xb0,0x9a,0x90,0xb8,0x9a,0x08,0x33, + 0x23,0x44,0x34,0x11,0x10,0x08,0xa9,0xcb,0xbb,0xca,0xba,0xb9,0xc1,0x77,0x07,0xa9,0x89,0x98,0xaa,0x9a, + 0x10,0x11,0x22,0x26,0x14,0x12,0x12,0x81,0x99,0xab,0xbc,0xbc,0xbb,0xab,0x1a,0x77,0x87,0x99,0x88,0xa9, + 0xab,0x09,0x00,0x11,0x53,0x34,0x23,0x22,0x13,0x90,0xaa,0xbc,0xbd,0xac,0xaa,0x9a,0x1a,0x77,0x86,0x8a, + 0x08,0xb9,0xac,0x08,0x00,0x00,0x43,0x34,0x22,0x31,0x12,0x90,0xab,0xcb,0xcc,0xbb,0xaa,0xa9,0x09,0x77, + 0x87,0x99,0x08,0x99,0xbb,0x09,0x00,0x10,0x42,0x35,0x22,0x12,0x13,0xa2,0xb9,0xac,0xcb,0xad,0x9b,0x89, + 0x99,0x76,0x05,0xa8,0x88,0xa8,0xbc,0x9b,0x08,0x10,0x30,0x36,0x34,0x12,0x22,0x12,0x99,0xbb,0xbc,0xbc, + 0xbc,0xaa,0x99,0x71,0x57,0x98,0x89,0x98,0xdb,0x9a,0x08,0x01,0x30,0x63,0x23,0x21,0x12,0x02,0xa9,0xbb, + 0xb9,0xda,0x9c,0x9a,0x8a,0x4a,0x77,0x93,0xaa,0xa9,0xeb,0xaa,0x00,0x01,0x31,0x44,0x23,0x12,0x21,0x80, + 0x99,0xb9,0xb9,0xaa,0x9b,0xaa,0xba,0x8c,0x5e,0x77,0xa2,0xab,0xaa,0xad,0x8a,0x10,0x22,0x43,0x24,0x12, + 0x21,0x08,0x88,0x81,0x90,0x89,0xaa,0xad,0xbb,0xcb,0xaa,0xc9,0x77,0x17,0xbb,0xaa,0xbb,0x09,0x33,0x32, + 0x53,0x12,0x00,0x22,0x12,0x11,0x81,0xc8,0xb9,0xbb,0x9d,0x9c,0x9b,0x9b,0xca,0x76,0x47,0xca,0xaa,0x99, + 0x19,0x32,0x12,0x10,0x11,0x12,0x25,0x22,0x09,0x9a,0xab,0xaa,0xc8,0xca,0xbb,0x9c,0x0b,0x08,0xa1,0x77, + 0x67,0xbb,0x8b,0x99,0x20,0x16,0x91,0x08,0x28,0x18,0x32,0x93,0xc9,0x98,0x89,0x0b,0x80,0xda,0x9b,0x88, + 0x89,0x34,0xa5,0x77,0x85,0xcc,0x89,0x88,0x10,0x43,0x90,0x89,0x11,0x80,0x32,0x84,0xba,0x0a,0x98,0x9b, + 0x02,0xf9,0x9b,0x22,0x88,0x38,0x84,0x7a,0x77,0xb8,0x9c,0x08,0x09,0x40,0x03,0xa9,0x00,0x81,0x10,0x34, + 0xa0,0x9b,0x08,0xac,0x29,0x93,0xdb,0x90,0xb0,0x09,0x53,0x80,0x72,0x77,0xca,0x8a,0x80,0x09,0x44,0x80, + 0x8a,0x00,0x89,0x33,0x86,0x98,0x09,0x9b,0x1a,0x03,0xb0,0x98,0xbb,0x1f,0x48,0x80,0x01,0x71,0x37,0xea, + 0x9a,0x88,0x19,0x34,0xa1,0x88,0xa0,0x0a,0x36,0x81,0x08,0xa8,0x9d,0x01,0xa2,0x01,0x98,0x8f,0x08,0x80, + 0x11,0x82,0x8b,0x77,0x94,0x9d,0xa8,0x9a,0x24,0x11,0x38,0x99,0x9c,0x04,0x82,0x33,0xa9,0x0e,0x89,0x89, + 0x04,0xb1,0x19,0x9c,0x1b,0x03,0x82,0x04,0xc9,0x73,0x17,0x9c,0xb8,0xac,0x23,0x02,0x51,0x98,0x0c,0x01, + 0x18,0x25,0x99,0x08,0xcb,0x18,0x92,0x38,0x88,0x9f,0xa1,0x90,0x33,0x08,0x38,0x1c,0x77,0xc1,0x09,0xdc, + 0x08,0x02,0x42,0x90,0x2a,0x9a,0x49,0x84,0x11,0xa1,0x0d,0x99,0x88,0x85,0x90,0x80,0x0e,0x09,0x80,0x84, + 0x81,0x3b,0x5e,0x87,0x88,0xa8,0x8f,0x80,0x18,0x04,0x00,0x88,0x0b,0x01,0x11,0x86,0x88,0x89,0x0c,0x80, + 0x80,0x82,0x8a,0xa8,0x09,0x31,0x59,0x80,0x89,0xf1,0x77,0x98,0x90,0xeb,0x80,0x08,0x32,0x00,0x82,0xab, + 0x01,0x38,0x17,0x19,0xa8,0x8c,0x98,0x28,0x82,0x39,0xad,0x89,0xa0,0x24,0x81,0x83,0x0b,0x1b,0x77,0x23, + 0xf9,0x8e,0xa8,0x20,0x03,0x31,0xa9,0x88,0xb0,0x17,0x30,0x19,0xbb,0xf1,0x80,0x01,0x49,0x8a,0xa8,0xb0, + 0x02,0x49,0x81,0x02,0x90,0x88,0x77,0x11,0xf1,0xab,0xc8,0x38,0x11,0x33,0xb0,0x81,0x0d,0x22,0x31,0xb5, + 0x90,0xac,0x1a,0x98,0x06,0x08,0x0a,0x0e,0x90,0x02,0x93,0x11,0x2c,0x2c,0x7b,0x97,0x11,0x9d,0x8a,0x8b, + 0x84,0x32,0x01,0x2a,0xcb,0xa3,0x23,0x53,0x3c,0xba,0xc0,0x90,0x11,0x29,0xb1,0x9a,0xd8,0x11,0x20,0x71, + 0x2b,0xe1,0xb3,0x76,0x2a,0xd0,0x98,0xaa,0x28,0x39,0x04,0x11,0xa8,0x10,0x19,0x05,0x20,0x98,0x0c,0xdb, + 0xa2,0x28,0x19,0x3b,0xba,0xb5,0x11,0x20,0x28,0xb2,0x02,0xb9,0x77,0x74,0xca,0xb8,0x9b,0xa2,0x70,0x10, + 0x81,0xa1,0x93,0x69,0x09,0x92,0x90,0xa8,0x2a,0x0d,0xb1,0x82,0x09,0x09,0x1a,0x92,0x52,0x4b,0xd2,0xa4, + 0x01,0x37,0x7b,0xaa,0xf1,0x89,0x88,0x20,0x10,0xa4,0x21,0x2b,0x81,0x02,0x82,0x28,0x0f,0xb9,0xa1,0xa0, + 0x81,0x3d,0xab,0x95,0x58,0x19,0x92,0x01,0x19,0x1a,0x47,0x70,0x8c,0xe0,0x89,0x09,0x10,0x20,0x92,0x13, + 0x3a,0x81,0x42,0x19,0xd1,0xa0,0x9a,0x2b,0x1e,0xa8,0xb3,0x28,0x3b,0x09,0xa6,0x13,0x5a,0x89,0xc3,0x47, + 0x79,0x8b,0xf0,0x80,0x0a,0x00,0x10,0x81,0x12,0x49,0x19,0x81,0xa3,0x82,0x2c,0x8d,0xc0,0x91,0x88,0x19, + 0x0a,0xb1,0x13,0x6a,0x88,0x83,0x20,0x08,0x77,0x68,0xf2,0xa1,0x1b,0x9b,0x91,0x11,0x02,0x50,0x3a,0x91, + 0x85,0x20,0x08,0x1a,0xe9,0xb2,0x29,0x1e,0xa8,0x81,0x19,0x88,0x11,0x20,0x11,0x10,0xe4,0x57,0x6b,0xb8, + 0xb2,0x1c,0xab,0x92,0x38,0x08,0x04,0x38,0x92,0x06,0x38,0x09,0xa0,0xb0,0xc8,0x88,0x1e,0x9a,0xd2,0x11, + 0x4c,0x89,0xa4,0x02,0x28,0x08,0x37,0x6a,0xd0,0xb2,0x1c,0x8c,0x90,0x00,0x00,0x21,0x49,0x91,0x87,0x30, + 0x3b,0xa8,0xa2,0x89,0x0b,0x8c,0xba,0xc2,0x18,0x2b,0x91,0x05,0x40,0x10,0xa3,0x77,0x59,0xb8,0xd3,0x1a, + 0x9c,0xa1,0x28,0x89,0x94,0x40,0x19,0x95,0x22,0x3a,0xb0,0x93,0x1b,0xab,0xaa,0xdb,0xd1,0x28,0x2f,0x98, + 0xa4,0x12,0x49,0x29,0x97,0x32,0x2d,0xd9,0xa1,0x0a,0x99,0x18,0x2b,0xc2,0x85,0x58,0x18,0x93,0x12,0x19, + 0xb1,0x10,0x0e,0xc8,0xb1,0x1a,0x9b,0xc0,0x81,0x38,0x49,0x20,0x73,0x97,0x14,0x4c,0x9b,0xd1,0x80,0x0a, + 0x88,0x08,0x98,0x94,0x41,0x4a,0x91,0x85,0x10,0x08,0x80,0x09,0xb9,0xb0,0x2e,0x8d,0xd1,0x01,0x3b,0x89, + 0xa3,0x37,0x7a,0x98,0xb4,0x18,0x0d,0xb0,0x82,0x2a,0x99,0x81,0x10,0x01,0x23,0x68,0x80,0x94,0x20,0x2b, + 0x99,0x99,0xf9,0xd2,0x28,0x2e,0xa8,0xa2,0x11,0x7a,0x20,0xb7,0x82,0x2d,0xaa,0xc2,0x10,0x0a,0x91,0x20, + 0x2a,0xa3,0x25,0x5a,0xa0,0x95,0x49,0x0b,0xb1,0x81,0x0b,0xb8,0x08,0x0c,0xb0,0x12,0x4d,0x59,0xa7,0x85, + 0x5a,0x0c,0xc1,0x00,0x1a,0x98,0x81,0x19,0x80,0x12,0x7a,0x88,0xa4,0x21,0x3b,0xa8,0xb3,0x80,0x99,0xa8, + 0x1b,0x9d,0xc1,0x01,0x4c,0x6b,0xb4,0x87,0x49,0x0d,0xb0,0x92,0x29,0x1a,0x88,0x90,0xa3,0x23,0x7b,0x08, + 0x92,0xd2,0x80,0x80,0x80,0x80,0x08,0x80,0x08,0x80,0x08,0x08,0x80,0x08,0x80,0x08,0x80,0x08,0x80,0x08, + 0x80,0x08,0x80,0x80,0x80,0x80,0x08,0x08,0x08,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00, +}; +static constexpr VoiceClip alertsVibrationOnlyClip = { + alertsVibrationOnlyData, sizeof(alertsVibrationOnlyData), 8723, 8000 +}; +// "Silent" +static const uint8_t alertsSilentData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x7f,0xff,0xc7,0x30,0x6a,0x2e,0xa8,0x93,0x20,0x1b,0x2a,0xf3,0x22,0x1d,0x08,0xf0,0x94,0x00,0x29,0x0a, + 0x90,0x81,0xa2,0x91,0x91,0xc8,0x92,0x12,0x3d,0x7d,0x99,0xb2,0x01,0x38,0x4b,0x8d,0x32,0x2b,0xe1,0xb2, + 0xa1,0x78,0x8a,0x20,0xb8,0xa4,0x29,0x08,0x92,0x0a,0x32,0x1f,0xd6,0x81,0x08,0x38,0x0e,0x02,0x0b,0x03, + 0xaa,0xc5,0x28,0xa4,0x29,0xb9,0x7b,0xa1,0x00,0xb8,0x52,0x0a,0xa1,0xc8,0x85,0x88,0x28,0x99,0x40,0xa8, + 0x08,0x5b,0x19,0x92,0x2d,0xf3,0x28,0x00,0x28,0x8c,0xe1,0xa6,0x81,0x5b,0x8b,0x03,0xd5,0x81,0x29,0x3b, + 0x89,0xd5,0x81,0x10,0x4c,0x09,0x98,0xb2,0x50,0x89,0x08,0xd0,0x31,0x89,0x18,0xab,0x97,0x91,0x40,0x1d, + 0xa8,0x13,0xc1,0x00,0xa8,0x30,0x29,0xe0,0x00,0xc5,0x20,0x88,0x4b,0xaa,0x04,0xc2,0x40,0x0f,0x11,0xc0, + 0x82,0x3a,0x3a,0xab,0x93,0xc6,0x01,0x29,0x80,0x90,0x0a,0x38,0x1d,0x01,0xb4,0xc0,0xa0,0x71,0x19,0xc0, + 0xb1,0x03,0x79,0xba,0x94,0x91,0x43,0x8f,0x11,0x1b,0xd5,0x29,0x18,0x59,0xc8,0xa3,0x08,0x30,0x2f,0xc1, + 0xa2,0x93,0x5b,0x8a,0xa2,0xb4,0x20,0x4a,0x8a,0xc1,0xa4,0x38,0x1d,0x29,0xa1,0x92,0x98,0x93,0x4c,0x20, + 0x9c,0x82,0xd0,0x13,0x09,0x2b,0x0e,0x14,0x89,0x92,0x8f,0x03,0x09,0x91,0x3e,0x92,0x80,0xf2,0x3a,0x18, + 0x12,0xbc,0x42,0x3d,0x90,0xc0,0xa2,0x48,0x3a,0x19,0xf2,0xb3,0x49,0x5b,0x0b,0xc3,0xb4,0x20,0x3b,0x2b, + 0xf0,0xa2,0x02,0x59,0x1a,0x09,0xd1,0x93,0x39,0x3b,0x9a,0xd6,0x01,0x29,0x4b,0xc0,0x92,0x81,0x40,0x0c, + 0x00,0xb8,0x94,0x91,0x2a,0x2b,0x89,0x85,0xc4,0x01,0x3d,0x3b,0x98,0xb7,0x80,0x6a,0x1a,0x90,0xc2,0x01, + 0x39,0x3b,0xc8,0xb1,0x84,0x4b,0x19,0x89,0x97,0x88,0x10,0x09,0xa0,0xe0,0x08,0x01,0x38,0x80,0xa8,0x55, + 0x82,0xbb,0xca,0x8c,0x21,0x12,0x22,0xa0,0x8b,0x10,0x48,0x25,0xa8,0xa0,0xdb,0x2c,0x11,0x80,0x94,0xaa, + 0x2d,0x77,0x98,0x9b,0xaa,0x08,0x34,0x20,0x10,0xc8,0x09,0x12,0x20,0x04,0xc9,0x9b,0xaa,0x00,0x05,0x88, + 0x0a,0xca,0x72,0x47,0xca,0x9a,0x8a,0x31,0x15,0x80,0x00,0xab,0x28,0x04,0x20,0x80,0xae,0x89,0x90,0x32, + 0x10,0x8d,0xa0,0xa0,0x77,0xb3,0x9e,0xa8,0x00,0x34,0x00,0x08,0xb9,0x1a,0x43,0x18,0x81,0xfb,0x09,0x00, + 0x28,0x83,0xca,0x08,0x88,0x70,0x37,0xdb,0x8b,0x89,0x41,0x14,0x88,0x89,0xba,0x41,0x23,0x09,0xd8,0xca, + 0x21,0x10,0x10,0xc0,0xaa,0x21,0x28,0x73,0x07,0xbd,0x0a,0x19,0x53,0x93,0x99,0x89,0x8a,0x25,0x92,0x0a, + 0xab,0x8c,0x16,0x80,0x18,0xbb,0x08,0x05,0x80,0x75,0xc1,0xad,0x80,0x20,0x43,0xb1,0x9a,0x80,0x49,0x42, + 0xb9,0x99,0x89,0x6a,0x02,0xb8,0x80,0x0b,0x48,0x94,0xa0,0x77,0xaa,0x8d,0x81,0x20,0x33,0xba,0x8a,0x91, + 0x60,0x11,0xda,0x80,0x88,0x40,0x91,0xb9,0x92,0x19,0x60,0x90,0x19,0x47,0xdc,0x1a,0x00,0x12,0x84,0xab, + 0x18,0x92,0x32,0xa2,0x9f,0x00,0x80,0x31,0xa8,0x8d,0x82,0x00,0x32,0xbb,0x7b,0x37,0xdd,0x19,0x00,0x21, + 0x82,0xbb,0x39,0x82,0x32,0xb1,0xbf,0x21,0x80,0x12,0xd0,0x0b,0x21,0x00,0x22,0xea,0x4b,0x47,0xcc,0x1a, + 0x01,0x12,0x03,0x9e,0x29,0x82,0x01,0x91,0x8f,0x10,0x91,0x01,0x98,0x0d,0x22,0x90,0x08,0xb8,0x6a,0x37, + 0xcd,0x1a,0x01,0x21,0x03,0x9e,0x18,0x92,0x11,0xa1,0x8e,0x20,0x80,0x10,0xa8,0x0c,0x12,0x00,0x10,0xea, + 0x00,0x77,0xaa,0x8c,0x82,0x21,0x22,0xbc,0x88,0x83,0x51,0x88,0xbc,0x11,0x81,0x31,0xb8,0x9c,0x22,0x18, + 0x21,0xfa,0x09,0x76,0xb0,0xad,0x01,0x30,0x23,0xf8,0x88,0x10,0x28,0x92,0xca,0x18,0x18,0x21,0xb1,0x8c, + 0x18,0x10,0x04,0xc9,0x19,0x79,0x87,0xcc,0x18,0x28,0x32,0xd2,0x8a,0x18,0x10,0x04,0xaa,0x1b,0x88,0x23, + 0x94,0x8e,0x08,0x80,0x14,0x99,0x0a,0x28,0x77,0xcb,0x1b,0x80,0x34,0x93,0x9d,0x80,0x00,0x15,0xa9,0x0a, + 0xa8,0x23,0x03,0x8e,0x98,0x80,0x15,0x09,0x0b,0xb8,0x77,0xb9,0x8b,0x91,0x52,0x03,0x9c,0x88,0x08,0x34, + 0xb8,0x8a,0xa9,0x60,0x82,0x99,0x98,0x1b,0x34,0x98,0x88,0xea,0x74,0xe3,0xaa,0x80,0x68,0x12,0x9a,0x88, + 0x8a,0x34,0x98,0x98,0xba,0x40,0x03,0x09,0xc8,0x0b,0x33,0x00,0x91,0xbd,0x78,0x87,0x9c,0x99,0x39,0x17, + 0x98,0x80,0x9b,0x23,0x92,0x10,0xcc,0x19,0x84,0x38,0xa8,0x9c,0x83,0x38,0x12,0xbc,0x70,0x07,0xac,0x99, + 0x89,0x26,0x81,0x09,0xba,0x21,0x84,0x38,0xca,0x9a,0x03,0x48,0x10,0x9d,0x80,0x91,0x33,0x8b,0x0b,0x77, + 0xb9,0x8c,0xb9,0x54,0x01,0x08,0xc8,0x19,0x22,0x18,0xb1,0xbc,0x21,0x19,0x34,0xf8,0x88,0x89,0x40,0x92, + 0x90,0x74,0xd0,0xaa,0xb0,0x78,0x11,0x88,0xa1,0x1b,0x21,0x80,0x94,0xba,0x4a,0x89,0x12,0xc2,0x2b,0x0a, + 0x18,0x97,0x00,0x79,0xb6,0xaa,0x99,0x4b,0x33,0x91,0x82,0x8e,0x28,0x81,0x13,0xba,0x1d,0x89,0x21,0xa5, + 0x88,0x89,0x1c,0x12,0x81,0x71,0x07,0xad,0x89,0x8b,0x25,0x01,0x10,0xca,0x18,0x82,0x41,0x90,0x9c,0xa0, + 0x19,0x14,0x98,0x80,0x9c,0x30,0x81,0x32,0x77,0xc9,0x9b,0xca,0x33,0x14,0x38,0xb9,0xab,0x85,0x21,0x23, + 0x9d,0xa9,0xb8,0x43,0x00,0x29,0xea,0x88,0x12,0x28,0x77,0xb0,0xab,0xd9,0x39,0x43,0x00,0x92,0xbb,0x38, + 0x28,0x62,0xc2,0x99,0x99,0x1c,0x13,0x90,0x82,0xbc,0x29,0x01,0x71,0x47,0xbb,0x0b,0xad,0x30,0x05,0x10, + 0x81,0x9d,0x11,0x80,0x42,0x90,0x9b,0xb0,0x8b,0x34,0x98,0x10,0xdb,0x0a,0xa3,0x76,0x04,0xbc,0xa8,0xba, + 0x61,0x12,0x00,0x92,0xcb,0x20,0x01,0x41,0x92,0xcb,0x88,0x9b,0x48,0x83,0x98,0xc2,0xcb,0x68,0x37,0xb8, + 0xab,0xca,0x8b,0x44,0x12,0x20,0x90,0xac,0x11,0x02,0x52,0x00,0xac,0xa9,0xc8,0x10,0x32,0x0a,0x0a,0xd9, + 0x09,0x77,0xa3,0x9d,0x99,0xaa,0x42,0x14,0x18,0x00,0xb9,0x1a,0x15,0x01,0x11,0xb9,0xad,0x08,0x90,0x10, + 0x82,0xbc,0x0b,0x39,0x77,0x87,0xac,0x89,0x89,0x38,0x25,0x80,0x08,0x88,0x8a,0x41,0x04,0x90,0x08,0xaa, + 0x9d,0x00,0x81,0x89,0x08,0xbb,0x8c,0x77,0x87,0xba,0x8a,0x98,0x18,0x53,0x12,0x98,0x09,0x98,0x18,0x53, + 0x11,0x99,0x9a,0xba,0x9a,0x21,0x80,0xab,0xbb,0xbc,0x7a,0x77,0xa5,0xbc,0x89,0x10,0x10,0x32,0x03,0xa9, + 0x8a,0x31,0x42,0x22,0x81,0xc9,0xbb,0x8b,0x09,0x80,0xb9,0xeb,0xab,0x99,0x74,0x77,0xc0,0xbb,0x08,0x12, + 0x11,0x22,0x01,0xa9,0x9a,0x32,0x26,0x01,0x98,0xa9,0xbb,0xaa,0x11,0x81,0xbb,0xae,0xaa,0xa9,0x75,0x77, + 0xb8,0xac,0x19,0x11,0x11,0x21,0x11,0xa9,0x9b,0x41,0x24,0x01,0x99,0xa8,0xaa,0x9b,0x09,0x10,0xc9,0xbc, + 0x9b,0x08,0x68,0x77,0x87,0xcb,0x8b,0x11,0x11,0x11,0x11,0x81,0xc9,0x09,0x63,0x12,0xa8,0xaa,0x89,0x98, + 0x09,0x11,0x92,0xeb,0xab,0x18,0x12,0x70,0x77,0xb2,0xcd,0x09,0x11,0x11,0x00,0x11,0xa8,0xaa,0x30,0x35, + 0x01,0x99,0x8a,0x99,0x9a,0x28,0x12,0xd9,0xbc,0x8a,0x18,0x00,0x71,0x77,0xb2,0xaf,0x09,0x12,0x02,0x00, + 0x80,0xa8,0x9a,0x52,0x33,0x91,0xba,0x9a,0x88,0x00,0x31,0x80,0xbf,0xac,0x08,0x22,0x11,0x28,0x77,0x97, + 0xbd,0x09,0x31,0x02,0x80,0x08,0x99,0x8a,0x61,0x33,0x91,0xcb,0x99,0x10,0x01,0x01,0x88,0xbd,0x9c,0x18, + 0x23,0x90,0xc9,0x72,0x77,0xc9,0xab,0x11,0x13,0x81,0x08,0x98,0x98,0x19,0x54,0x02,0x98,0x8a,0x09,0x18, + 0x01,0x91,0xfb,0xba,0x09,0x11,0x81,0x98,0xb9,0x77,0x17,0xcd,0x0a,0x21,0x12,0x08,0x80,0xa8,0x9a,0x51, + 0x25,0x91,0xaa,0x8a,0x18,0x00,0x12,0xa0,0xcd,0xab,0x10,0x13,0x81,0xa9,0xa9,0x77,0x17,0xcd,0x89,0x12, + 0x11,0x00,0x00,0xa9,0x8b,0x51,0x24,0x91,0xaa,0x99,0x88,0x28,0x22,0xa1,0xce,0x9a,0x18,0x11,0x10,0x80, + 0xca,0x75,0x37,0xdc,0x8b,0x21,0x11,0x18,0x10,0xa8,0xbb,0x40,0x26,0x81,0x9a,0x89,0x99,0x18,0x32,0x92, + 0xcd,0x9b,0x18,0x21,0x10,0x81,0xc9,0x5c,0x77,0xc2,0xbc,0x18,0x12,0x00,0x21,0x81,0xcc,0x1a,0x53,0x11, + 0x98,0x98,0xa9,0x89,0x41,0x13,0xc9,0xbb,0x89,0x00,0x31,0x32,0xb9,0xce,0x74,0x17,0xeb,0x0a,0x11,0x80, + 0x11,0x11,0xb9,0x9c,0x41,0x23,0x90,0x98,0xa8,0xba,0x30,0x25,0xa0,0xbc,0x9a,0x80,0x01,0x33,0x91,0xae, + 0x0a,0x77,0x87,0xbc,0x19,0x11,0x18,0x21,0x92,0xeb,0x09,0x42,0x02,0x88,0x98,0xa9,0x8b,0x43,0x03,0xca, + 0x9b,0x99,0x88,0x33,0x06,0xb9,0x9a,0x78,0x77,0xb0,0xad,0x10,0x01,0x18,0x22,0xa8,0xac,0x30,0x23,0x02, + 0x80,0xba,0x9e,0x28,0x23,0xa0,0xb9,0xac,0x8a,0x40,0x33,0x89,0xac,0x89,0x71,0x77,0xd8,0x8b,0x01,0x80, + 0x42,0x82,0xbb,0x0a,0x22,0x23,0x14,0xb0,0xad,0x0a,0x31,0x02,0xa1,0xea,0x9a,0x00,0x10,0x38,0x89,0x9d, + 0x80,0x77,0x07,0xbc,0x0a,0x01,0x18,0x34,0xa0,0xac,0x10,0x11,0x32,0x03,0xdb,0x8b,0x00,0x11,0x13,0xc8, + 0xad,0x89,0x10,0x22,0x01,0xab,0x0d,0x18,0x77,0x97,0xbc,0x18,0x80,0x30,0x14,0xc9,0x09,0x81,0x28,0x34, + 0xa0,0xab,0x88,0x98,0x52,0x82,0xbc,0x89,0x99,0x49,0x23,0xa9,0x9a,0x90,0x79,0x77,0xe2,0x8b,0x00,0x89, + 0x53,0x92,0xab,0x01,0x98,0x51,0x13,0xaa,0x89,0xa8,0x2a,0x16,0xb0,0x99,0x98,0x8b,0x41,0x80,0x99,0x90, + 0x99,0x71,0x77,0xe8,0x89,0x80,0x19,0x25,0xa0,0x8a,0x80,0x09,0x35,0xa2,0x89,0x90,0x9e,0x21,0x92,0x98, + 0x91,0xbc,0x38,0x02,0x08,0x12,0xad,0x2a,0x77,0x96,0xbb,0x09,0xa9,0x51,0x14,0xa9,0x19,0x9a,0x48,0x24, + 0x98,0x80,0xc9,0x09,0x23,0x80,0x19,0xbc,0x8d,0x02,0x92,0x02,0xd0,0x8a,0x20,0x77,0xb5,0x9c,0x88,0x8a, + 0x44,0x91,0x09,0x90,0x8b,0x63,0x81,0x80,0xa1,0x9c,0x21,0x00,0x18,0xb0,0xad,0x00,0x98,0x42,0x90,0x0d, + 0x18,0x6a,0x57,0xd9,0x09,0x98,0x2a,0x34,0x99,0x18,0xd8,0x08,0x15,0x88,0x11,0xaa,0x2c,0x10,0x09,0x03, + 0xea,0x88,0xb1,0x10,0x23,0x0d,0x29,0x9b,0x70,0x27,0xeb,0x80,0xb9,0x41,0x03,0x09,0x80,0xad,0x22,0x82, + 0x41,0xa1,0x8d,0x00,0x98,0x43,0xa8,0x0b,0xb8,0x8b,0x06,0x90,0x81,0xb9,0x2a,0x71,0x47,0xac,0xa0,0xab, + 0x52,0x82,0x38,0xb0,0x8d,0x22,0x00,0x24,0xc0,0x89,0xa0,0x3a,0x33,0x8c,0x9a,0xbc,0x10,0x94,0x12,0xa0, + 0x8d,0x18,0x79,0x47,0xbb,0xb0,0xad,0x42,0x01,0x20,0xb0,0x9c,0x04,0x10,0x24,0xa9,0x09,0xd9,0x10,0x84, + 0x09,0x88,0x9e,0x10,0xa0,0x22,0xb0,0x0a,0x91,0x7c,0x57,0xaa,0x09,0xbc,0x30,0x82,0x31,0xb3,0x8e,0x11, + 0x2a,0x44,0xa8,0x08,0xc9,0x39,0x01,0x1a,0xb3,0xbd,0x01,0xa9,0x53,0xa0,0x3a,0xd0,0x19,0x77,0xa0,0x09, + 0xbd,0x39,0x82,0x31,0xa5,0x8b,0x10,0x1b,0x27,0xa0,0x01,0xd9,0x18,0x81,0x39,0x80,0x9d,0x91,0xaa,0x15, + 0x98,0x20,0xaa,0x5a,0x70,0x87,0xa9,0xc0,0x9b,0x31,0x38,0x42,0xc9,0x90,0x91,0x61,0x11,0x1a,0xb8,0xaa, + 0x83,0x28,0x32,0x8f,0x99,0xb9,0x13,0x81,0x31,0xba,0x2d,0x08,0x77,0xa5,0x89,0xcd,0x18,0x81,0x41,0x81, + 0x1b,0xa8,0x29,0x07,0x00,0x01,0x9c,0x80,0x89,0x32,0x99,0x19,0xdc,0x08,0x92,0x40,0x80,0x1c,0x88,0x7b, + 0x27,0xa8,0xb0,0xaf,0x28,0x88,0x34,0xb0,0x10,0xba,0x50,0x82,0x31,0xc2,0x8a,0xa0,0x1c,0x83,0x9a,0xa3, + 0x9e,0x10,0x0b,0x33,0xc0,0x12,0xa9,0x7b,0x77,0x98,0xb0,0x9e,0x00,0x08,0x24,0x98,0x00,0xaa,0x40,0x92, + 0x23,0xa2,0x0d,0x89,0x0b,0x85,0x90,0x92,0x9d,0x08,0x99,0x33,0x98,0x38,0xdc,0x78,0x17,0x88,0xa8,0xaf, + 0x00,0x88,0x24,0x90,0x10,0xba,0x30,0x93,0x53,0x91,0x0c,0xa8,0x1b,0x84,0x98,0xa3,0x9d,0x39,0x8b,0x23, + 0xe2,0x01,0x98,0x7c,0x17,0x98,0xa8,0x9f,0x18,0x09,0x23,0xa1,0x01,0xb9,0x78,0x81,0x21,0xb1,0x8a,0x98, + 0x2b,0x22,0x8b,0xb2,0xdd,0x81,0x19,0x50,0x89,0x80,0xc0,0x20,0x77,0x92,0x09,0xbf,0x88,0x90,0x32,0x82, + 0x3a,0xa8,0x2a,0x07,0x11,0x03,0x8c,0x09,0xaa,0x04,0xc1,0x81,0xab,0x2b,0x88,0x20,0xc4,0xa0,0xa1,0x19, + 0x77,0x87,0x88,0xea,0x0a,0x80,0x30,0x03,0x8a,0x91,0x8a,0x26,0x01,0x12,0xea,0x08,0x98,0x31,0x91,0x89, + 0xe9,0x0a,0x00,0x28,0x92,0xc9,0xa1,0x90,0x74,0x37,0x99,0xf8,0xab,0x01,0x28,0x33,0x9b,0x00,0xa9,0x36, + 0x83,0x22,0xc9,0x0b,0x88,0x29,0x94,0x9b,0xaa,0x8f,0x01,0x81,0x12,0x0b,0x0d,0x08,0x13,0x77,0x96,0x88, + 0xcc,0x09,0x90,0x22,0x92,0x1b,0x08,0x5a,0x24,0x81,0x82,0xab,0x29,0x89,0x23,0xe8,0x9a,0xca,0x09,0x03, + 0x18,0x00,0x0e,0x01,0x02,0x74,0x37,0x9a,0xf8,0x9b,0x00,0x19,0x13,0xb9,0x22,0x90,0x74,0x81,0x18,0xa0, + 0x0a,0x82,0x89,0x91,0xcc,0x08,0x99,0x30,0xc2,0x80,0xb2,0x48,0x32,0x3a,0x77,0x87,0x09,0xcd,0x09,0x80, + 0x28,0x91,0x0a,0x12,0x30,0x37,0x80,0x10,0x9a,0x28,0xa0,0x99,0xf9,0x9b,0x08,0x0a,0x11,0xc9,0x11,0x02, + 0x72,0x12,0x79,0x17,0xa8,0xc1,0x9d,0x18,0x8a,0x81,0xb8,0x38,0x31,0x71,0x13,0x80,0x83,0x88,0x31,0xca, + 0x9a,0xec,0x99,0x98,0x0a,0x90,0x89,0x33,0x42,0x54,0x40,0x37,0x80,0x98,0xcc,0x8a,0xb8,0x89,0xc8,0x8c, + 0x01,0x28,0x26,0x01,0x33,0x11,0x44,0x82,0x10,0xb8,0x9c,0xc9,0xac,0xb9,0xae,0x89,0x9a,0x20,0x01,0x77, + 0x04,0x10,0xa9,0x8a,0x98,0x0a,0xb1,0xac,0x90,0x8a,0x44,0x00,0x43,0x80,0x42,0x02,0x41,0x91,0x0a,0xc0, + 0x9c,0xa8,0xad,0x98,0xac,0x08,0x3a,0x77,0x14,0x80,0xdb,0x9a,0x99,0x19,0x80,0x09,0x81,0x30,0x27,0x31, + 0x24,0x10,0x03,0x80,0x10,0xcb,0xba,0xfc,0x99,0xaa,0x8b,0xa9,0x09,0x92,0x77,0x06,0x11,0xa8,0xab,0xb9, + 0x8b,0x80,0x8a,0x81,0x19,0x64,0x21,0x24,0x03,0x32,0x00,0x28,0xc0,0xaa,0xfa,0x9c,0xaa,0x9b,0x98,0x8a, + 0x01,0x20,0x77,0x27,0x00,0xb9,0x9a,0xbb,0x0a,0xa9,0x08,0x90,0x50,0x33,0x63,0x14,0x11,0x13,0x00,0x01, + 0xba,0xb9,0xbf,0xaa,0xbc,0x8b,0xbb,0x09,0x80,0x78,0x77,0x12,0x91,0xaa,0xba,0xac,0x88,0x8a,0x10,0x08, + 0x34,0x23,0x55,0x11,0x31,0x00,0x18,0xb0,0x9b,0xfb,0x9b,0xca,0xaa,0xb8,0x0a,0x01,0x39,0x77,0x23,0x23, + 0xa9,0xab,0xbe,0xaa,0xb9,0x08,0x80,0x42,0x23,0x73,0x12,0x32,0x13,0x20,0x90,0x9a,0xe9,0xbb,0xda,0xab, + 0xaa,0x9c,0x98,0x09,0x73,0x37,0x22,0x90,0xab,0xcc,0xab,0xb9,0x09,0x10,0x50,0x23,0x34,0x24,0x23,0x23, + 0x20,0x80,0xab,0xeb,0xcb,0xbb,0xbc,0xba,0xba,0x99,0x08,0x70,0x67,0x21,0x00,0x9a,0xaa,0xac,0xa9,0x9a, + 0x08,0x00,0x52,0x22,0x44,0x12,0x33,0x13,0x20,0xa1,0xaa,0xeb,0x9e,0xa9,0xb9,0xbb,0xac,0x98,0x78,0x05, + 0x11,0x80,0x88,0x81,0x0a,0x91,0x99,0x02,0x0a,0x31,0x88,0x61,0x90,0x31,0xc0,0x2c,0x51,0x99,0xd6,0x89, + 0x8a,0x3b,0xc1,0x10,0x17,0x28,0xaa,0x80,0x13,0x9c,0x91,0x6a,0x41,0x01,0x83,0x09,0x81,0xcf,0xb2,0xbb, + 0xa8,0xcf,0x10,0x29,0x24,0x85,0x12,0x10,0x80,0x10,0xa9,0xe8,0xab,0xac,0x8a,0x80,0x40,0x12,0x73,0x80, + 0x88,0xb2,0x28,0xb4,0x14,0xc9,0x2e,0xa2,0x19,0x91,0x2a,0x98,0xc8,0x86,0x2a,0x08,0xc1,0xaa,0x07,0x68, + 0x28,0x91,0xa8,0x81,0xba,0x82,0x8b,0xdc,0xb9,0x2a,0xe2,0x28,0x11,0x7b,0x70,0xb1,0xb7,0x84,0x9b,0x18, + 0x9a,0x14,0xa5,0x28,0x0f,0x08,0x90,0x95,0x1a,0x41,0x89,0xe8,0x29,0x01,0x17,0xd9,0x09,0x39,0x3b,0x7e, + 0xb0,0x90,0x38,0x39,0x8a,0x97,0x98,0x2b,0x24,0x0a,0x1c,0xc9,0x82,0x96,0xa1,0x2a,0x6c,0x99,0x02,0xf1, + 0x69,0x89,0x08,0xc1,0x10,0x83,0x31,0x1e,0x8a,0x99,0x84,0x99,0x02,0x2a,0x48,0x3d,0xaa,0xa7,0x81,0x3a, + 0xb3,0xb4,0x92,0x0f,0x88,0x90,0xa4,0x59,0x1a,0x13,0xf0,0x21,0x19,0x2c,0xda,0x82,0x90,0x68,0x09,0x00, + 0xb1,0x01,0x88,0x09,0xc8,0xa3,0x22,0x88,0x12,0xad,0x11,0x02,0xc3,0xd0,0x88,0xb1,0x79,0x0a,0xb1,0x25, + 0x6a,0x1a,0xf8,0x92,0x29,0x4a,0x9a,0xb4,0x12,0x00,0x2d,0xa2,0xb1,0xa5,0x1b,0x91,0x28,0x90,0x3a,0xf3, + 0x80,0x83,0x7c,0x99,0x00,0xa0,0x12,0xd1,0x02,0xab,0x20,0x89,0x68,0x7c,0x98,0xc2,0x91,0x4b,0x19,0x11, + 0xd0,0x01,0xb0,0x85,0x08,0x2c,0x0a,0xa1,0x97,0x00,0x5c,0x1c,0xb1,0xa4,0x21,0x3d,0x2b,0xb8,0xa7,0x80, + 0x49,0x1c,0x91,0xb2,0x02,0x2d,0x29,0x90,0xc3,0x00,0x88,0x81,0x92,0x2c,0x0a,0x00,0xb5,0x22,0x1e,0x88, + 0x00,0x88,0x80,0x00,0x08,0x88,0x00,0x88,0x80,0x00,0x08,0x88,0x80,0x00,0x88,0x00,0x88,0x00,0x08,0x08, + 0x08,0x08,0x88,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip alertsSilentClip = { + alertsSilentData, sizeof(alertsSilentData), 5717, 8000 +}; +#endif // HAS_DRV2605 +}} // namespace mesh::audio diff --git a/src/helpers/ui/G726VoiceData.h b/src/helpers/ui/G726VoiceData.h new file mode 100644 index 000000000..0e693ead1 --- /dev/null +++ b/src/helpers/ui/G726VoiceData.h @@ -0,0 +1,4032 @@ +// Generated by scripts/generate_g726_voice.py. EXPERIMENT ONLY. +// Voice: Microsoft Zira Desktop. 8 kHz mono, MSB-first raw G.726, fresh state per clip. +// Original sample counts exclude the unused bits in the final byte. +#pragma once +#include +#if !defined(MESH_GPS_VOICE_G726_BITRATE) +#error "G.726 catalog requires an explicitly selected experimental bitrate" +#endif +namespace mesh { namespace audio { +#if MESH_GPS_VOICE_G726_BITRATE == 16 +// "Ready" +static const uint8_t readyData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x5e,0xbc,0x55,0x3f,0xee,0xef,0x3c,0x01,0x40,0x00, + 0x3c,0xfe,0xf8,0xd5,0x3f,0xfb,0xa3,0xcf,0x04,0x77,0x00,0xf3,0xfe,0xfc,0xc5,0x4f,0x3e,0xb8,0xfc,0xc4, + 0x07,0x70,0xcf,0x3b,0x23,0x3d,0x5e,0x0f,0xbf,0x32,0x04,0x31,0x33,0x20,0xe2,0x0f,0xcd,0x5f,0xc6,0x23, + 0xcc,0xc4,0x31,0xc2,0x33,0xf8,0xcc,0xc1,0x15,0xbd,0xe3,0xc3,0xc4,0x0c,0x7f,0x32,0xf0,0xfc,0x0f,0x05, + 0x6c,0x2e,0x3c,0xc4,0x00,0x7f,0x0f,0xf3,0x3c,0x3f,0x01,0x5e,0x0a,0xc8,0xc0,0x4d,0xcf,0x0f,0x3c,0xfc, + 0xfc,0x30,0x57,0x9e,0xfc,0xf4,0x00,0x73,0x0f,0x33,0xfc,0xfc,0x31,0x15,0xb3,0xbc,0xf1,0x1f,0x7f,0x03, + 0x03,0xfc,0xe0,0x33,0x05,0x63,0xef,0x3d,0x07,0xdf,0x00,0xc0,0xff,0x23,0x0c,0x31,0x58,0xef,0xc3,0x47, + 0xc3,0xf4,0xc3,0x38,0xfc,0x03,0xcc,0x52,0x3a,0xf3,0x14,0xf0,0xe0,0x00,0x3f,0xc8,0x0c,0xc2,0x17,0xfe, + 0xa3,0x35,0x30,0xfc,0x4d,0x3f,0xc8,0xdc,0xcf,0xc5,0xe6,0xaf,0x31,0x70,0xff,0x40,0x4f,0xff,0xd3,0x0f, + 0xf5,0x70,0xab,0xfc,0x40,0x3f,0x4d,0x03,0xcf,0xc3,0x0f,0xf3,0x53,0x6b,0xfe,0x1c,0x33,0xc3,0x43,0x33, + 0x9c,0x30,0xf3,0xd4,0xce,0xaf,0x9c,0x00,0x80,0xd0,0xf3,0x8c,0xc0,0xf3,0xf5,0x70,0xab,0xe0,0x00,0xfd, + 0xc1,0x0c,0xfc,0xcd,0xf3,0xc8,0x5d,0xfa,0xfb,0x00,0x0f,0x7d,0x00,0x08,0xfc,0xcc,0xcb,0x05,0xde,0xee, + 0x83,0x01,0xc2,0x4c,0x07,0xfc,0xff,0x1f,0xcc,0x59,0x2e,0xef,0xcd,0x0d,0x30,0x10,0x70,0xf8,0xe3,0xcc, + 0xc5,0x9f,0xee,0x8f,0x34,0xdc,0x03,0x10,0xc3,0x3f,0xfe,0x08,0x41,0xff,0xeb,0xfc,0x35,0xc1,0xf0,0xcc, + 0xc0,0xf3,0xfe,0xc5,0x93,0x23,0xba,0x32,0x10,0x04,0x08,0x0e,0x0c,0xf0,0x3f,0x4c,0x73,0xfb,0xee,0xfc, + 0xf0,0x1d,0xc7,0x0c,0xcc,0xcf,0x35,0xc3,0xe2,0x8f,0x8f,0x08,0x00,0x31,0xc0,0x03,0x00,0xc2,0x17,0x48, + 0x8b,0x38,0xfd,0xf7,0x00,0x1c,0x37,0x0d,0xff,0x33,0x1d,0x6f,0xeb,0xb3,0x8d,0x03,0x53,0xc0,0x2f,0xcf, + 0xe3,0x0f,0x5d,0x20,0xeb,0xb2,0xc3,0x10,0x40,0x30,0xff,0xf2,0x33,0x3c,0x5d,0x3f,0xae,0xc8,0x30,0x51, + 0xc0,0x3f,0x8f,0xfc,0x3c,0x0d,0x74,0x8e,0x2e,0xf8,0x34,0x10,0x13,0xcf,0xff,0xf3,0x0c,0xc1,0x74,0x8f, + 0xee,0x2c,0xc4,0x04,0x1f,0x33,0xf8,0xcf,0x30,0xd8,0x4d,0x83,0xba,0x38,0xc1,0x04,0x00,0xce,0x23,0xfc, + 0x33,0x37,0xd0,0x60,0xbe,0x8e,0x0c,0x44,0x00,0x33,0xff,0xf2,0x30,0xc3,0x74,0x18,0x2f,0xef,0xcf,0x41, + 0x01,0xc3,0xfc,0x8f,0x33,0xdc,0x3d,0x74,0x8e,0x2f,0xec,0x07,0x40,0x43,0x23,0x38,0xf3,0x30,0xc0,0xf4, + 0x18,0x2f,0xa3,0x8c,0x40,0x10,0x33,0x3e,0x33,0xf3,0x03,0xdc,0xd7,0x60,0xb2,0xfe,0x0d,0x07,0x10,0xc8, + 0xcf,0x8c,0xcf,0x00,0xcf,0x5d,0x23,0xbe,0xf8,0xf4,0x01,0x00,0x33,0xfc,0x8f,0x3c,0x03,0x1c,0x5d,0x23, + 0x8b,0xf8,0xc0,0x10,0x10,0xf0,0xff,0xfc,0xf3,0x03,0x4d,0xd0,0x60,0x8b,0xfe,0x60,0x1f,0x43,0x0c,0xfe, + 0x23,0xcf,0x37,0x3c,0x04,0x18,0x28,0xbe,0xcf,0x74,0xd0,0x0c,0xcf,0xb2,0xcc,0xf3,0x1c,0xf1,0x76,0x0b, + 0xeb,0xce,0x01,0x34,0x00,0xcf,0xe3,0xff,0xcc,0x37,0x0c,0x5d,0x36,0xca,0x3f,0xf3,0x40,0x74,0x03,0x3c, + 0xe3,0xfc,0xf3,0x00,0xc5,0x12,0x7f,0xb2,0xe3,0x31,0xc4,0x70,0x03,0xf3,0xf8,0x23,0x3c,0x30,0x5d,0x33, + 0xfb,0xaf,0xf3,0xc1,0x01,0xc0,0x33,0x23,0xff,0x20,0xcc,0x01,0x17,0x78,0xf2,0x88,0xc0,0xc4,0x13,0x03, + 0xd8,0xfc,0xff,0x0f,0x30,0xd7,0x70,0xb2,0xef,0xbc,0xc0,0x71,0x13,0x33,0x3c,0x8f,0x3c,0xcc,0x0c,0x45, + 0x83,0xef,0xbe,0x3c,0x01,0x00,0x00,0xf3,0x23,0xf7,0xcc,0xc7,0x21,0xd3,0x2f,0x8e,0xbc,0x37,0xd1,0x30, + 0x37,0xfc,0xe3,0x0f,0x0c,0xc3,0x1d,0x72,0xcb,0x2b,0xcf,0x7d,0x04,0x30,0x37,0xff,0x30,0xcf,0x00,0xc9, + 0x73,0x1f,0xaf,0xbf,0xe0,0x04,0x01,0xc3,0x30,0xfc,0x33,0x00,0xf0,0x97,0x70,0xb2,0xe8,0xfb,0x0d,0x0d, + 0x0c,0x00,0x8c,0xc3,0x0c,0xd3,0x39,0x07,0xcb,0xee,0xfb,0x3c,0x00,0x1c,0x0c,0xc3,0x7c,0xc7,0x3c,0xf3, + 0x1d,0x74,0xbf,0xef,0xb0,0x3c,0x07,0xb0,0xc0,0xfc,0xc0,0xfc,0xc0,0xfc,0xc0,0xfc,0x0c,0x3c,0x0c,0xfc, + 0x00,0xf0,0x03,0x33,0x03,0xc0,0xcc,0xc0,0xf0,0xc0,0x0c,0xc3,0x03,0x03,0x03,0x03,0x03,0x03,0x00,0x3c, + 0x00,0xf3,0x30,0x03,0x0c,0xc3,0x03,0x00,0x3f,0x00,0x30,0xcc,0x30,0x30,0x30,0x03,0xc0,0x03,0xc3,0x00, + 0xcc,0x00,0xf0,0xc0,0x33,0x00,0x33,0x0c,0x0c,0x0c,0x03,0xfc,0x03,0x0c,0x0c,0x00,0xcc,0x30,0x30,0x30, + 0x33,0xc0,0x0f,0x00,0x0c,0xf0,0x03,0x30,0xc0,0xc0,0x30,0x3c,0x00,0xcc,0x30,0x30,0x0f,0xc0,0x03,0x0c, + 0x0c,0xc3,0x00,0xcf,0xc0,0x30,0xc0, +}; +static constexpr VoiceClip readyClip = { + readyData, sizeof(readyData), 3147, 8000, VoiceCodec::G72616 +}; +// "Notification cleared" +static const uint8_t notificationClearedData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf2,0xaa,0xa0,0x10,0x10,0x00,0xcc,0xf5,0x50,0xfe,0xfb, + 0xef,0xfc,0xc4,0x10,0x40,0xc0,0xf2,0xc5,0x1c,0xff,0xbb,0x88,0xf3,0xc1,0xd3,0x07,0x0c,0xcc,0xd4,0x4f, + 0xcb,0xee,0xc8,0xf3,0x1c,0x77,0x03,0x0c,0xff,0x50,0x7c,0xee,0xfe,0xf2,0x0c,0x1d,0xdc,0x0c,0x3c,0xfd, + 0x4d,0xce,0x3b,0xe3,0x8c,0xcd,0x00,0x77,0x03,0xc3,0xf5,0xdc,0xe2,0x23,0xff,0x00,0xd0,0x4d,0xc0,0xcf, + 0x3f,0x5c,0x3e,0x2b,0x8e,0x33,0x1c,0x13,0x1c,0xc3,0x33,0xcd,0x76,0x2b,0xfd,0x2d,0x3c,0xf4,0x3c,0x43, + 0x0c,0x08,0x17,0x2e,0xbe,0x13,0xcf,0x02,0x10,0x13,0xc0,0xc3,0xcd,0x62,0xe8,0xe0,0x0c,0xfc,0x71,0x07, + 0x3c,0x3f,0x0f,0x5e,0x2e,0x8b,0x13,0xcf,0xc4,0x10,0x03,0xf0,0xf7,0xd7,0xef,0xa2,0x31,0x23,0x3d,0x01, + 0x08,0x3f,0x1c,0xc5,0x8b,0xac,0x8c,0x7c,0xcc,0x41,0x0f,0xcf,0xdc,0xf5,0xfa,0xe8,0xc3,0x4f,0xc3,0x10, + 0x00,0xb3,0xcc,0x25,0x2e,0x2b,0x07,0x03,0xc3,0x05,0xc3,0x2c,0xcf,0x05,0xfa,0xeb,0x13,0x70,0x80,0x11, + 0xcf,0xf8,0xcc,0xd7,0xa8,0xac,0x40,0x0e,0x01,0xd7,0x3f,0xe3,0x0d,0x4e,0xbe,0xb4,0x0d,0x2c,0x1c,0x43, + 0xff,0xf0,0xc1,0x7a,0x2e,0xc7,0x30,0xfc,0x41,0xdf,0xc8,0x80,0xd4,0xeb,0xbb,0x40,0xc6,0x31,0x00,0x08, + 0xf3,0xc1,0x7e,0xfb,0x80,0x0d,0xf3,0x1d,0xc0,0xf8,0x3f,0x17,0x2e,0x28,0x00,0xc3,0x30,0x4d,0xcf,0x8c, + 0xf5,0x0a,0x2f,0xf4,0x0c,0x33,0x04,0x33,0xef,0xc3,0x57,0xbf,0xec,0x77,0xc0,0xf4,0x1c,0xcf,0xfc,0xd4, + 0x2b,0xef,0xc4,0xc3,0x0c,0x10,0xc3,0xbf,0x35,0x7e,0x2f,0xf7,0x4c,0x33,0xd0,0x00,0x88,0xfd,0x43,0xbb, + 0xbc,0x70,0x73,0x37,0x00,0x3f,0xff,0x17,0xe3,0xac,0x30,0x1f,0x30,0xc0,0x0f,0x3b,0x90,0xc8,0xeb,0x08, + 0x1d,0xf7,0x30,0x03,0x0f,0xf1,0x3f,0x2a,0x3f,0xc4,0x34,0x0c,0x03,0x03,0xff,0x5f,0x22,0xbf,0x8c,0x1c, + 0x4c,0x00,0xdd,0xf0,0x34,0x82,0xeb,0xef,0xc3,0x00,0x00,0x00,0x00,0x01,0x7c,0x2e,0x22,0x3c,0xf0,0xc3, + 0x03,0x70,0x03,0x5c,0xdf,0x8f,0xe3,0x20,0xcc,0x30,0xc3,0x00,0xd5,0x83,0xe3,0x2c,0xcf,0xc3,0x03,0x37, + 0x30,0x3d,0x48,0x2b,0x0e,0x33,0xc7,0xc7,0x00,0x30,0x33,0x52,0x3a,0xb3,0x83,0x80,0x34,0x31,0x0d,0x3f, + 0x35,0xc2,0xaf,0x20,0xc8,0x00,0x70,0x1c,0x0c,0xcc,0x58,0xea,0xcb,0x03,0x13,0x04,0xc7,0x0d,0xfc,0xd7, + 0x3b,0xaf,0xb0,0x01,0x03,0x4c,0x03,0x33,0xf1,0x7f,0xba,0x3f,0x10,0x07,0xc0,0xc0,0xf3,0x2f,0x52,0x3b, + 0xa3,0xc4,0x37,0x7c,0x00,0x0f,0x3f,0x94,0x8f,0xaf,0xc9,0x0c,0x4f,0x07,0x03,0xcf,0xfd,0x7f,0xfa,0xfc, + 0xd0,0xc0,0xc0,0x0d,0x3f,0xcb,0x17,0xfe,0xb2,0x31,0xc3,0x7c,0x07,0x1f,0x33,0xf5,0xff,0xeb,0xff,0x70, + 0xc0,0xc1,0xc0,0x0f,0x7c,0x5f,0xfe,0xbc,0xb6,0x60,0xcc,0x13,0x70,0x00,0xd4,0xfc,0xb3,0xf8,0x3f,0xcf, + 0x3c,0x0c,0x00,0x05,0x0d,0xb7,0xcf,0x3c,0xff,0x3c,0x82,0x7c,0xcd,0x60,0xc8,0x3c,0x3f,0x33,0x33,0x0f, + 0x0f,0x73,0xd6,0x7f,0xdf,0x33,0xc3,0xf0,0x8c,0x20,0xdc,0x3f,0x36,0x34,0x8f,0x20,0xde,0xe1,0x33,0x28, + 0x13,0x3b,0xd3,0xf3,0xd2,0x0e,0xd3,0x3f,0x32,0x0d,0xc8,0x20,0x78,0x3b,0x4b,0x0b,0x0f,0x73,0xc1,0xf0, + 0xff,0xc3,0xcf,0x7c,0xe0,0x80,0xb7,0x01,0xf3,0x3d,0xac,0xd0,0xf3,0x30,0xcf,0x0d,0x2f,0x31,0xf0,0x6f, + 0xcf,0x7f,0x00,0x3b,0x43,0xc4,0x3c,0x93,0xf3,0x9d,0xf0,0x1c,0x23,0x7b,0x4d,0x2b,0xc0,0xdc,0x00,0x93, + 0x0e,0xd3,0x23,0xf0,0xa0,0x31,0xbc,0x34,0xc1,0x3e,0xc3,0x02,0xd3,0xf0,0xc4,0xc7,0xf0,0x3d,0xf7,0x6b, + 0xfc,0x0b,0x96,0x2f,0xc7,0x73,0xb4,0x01,0x30,0x7b,0x0f,0x70,0x1b,0xfc,0x1f,0xef,0xd7,0xf4,0xdd,0xec, + 0x3d,0xc0,0x00,0x8f,0xf0,0xf3,0x01,0x13,0xf8,0xef,0x7d,0x13,0xea,0xd3,0xf2,0x31,0x33,0xec,0x40,0xe3, + 0xf8,0x00,0x01,0x50,0xfa,0xae,0x0c,0x37,0x00,0x40,0x0c,0xf5,0x0b,0xab,0x8c,0x04,0xc3,0x70,0x73,0x3f, + 0xd7,0x3a,0xbb,0x34,0x13,0x30,0xc0,0x33,0xf8,0x5c,0xfa,0xef,0xd3,0x40,0xc3,0x00,0xcf,0xfd,0x73,0xaf, + 0xb3,0x04,0x03,0x30,0xc7,0x33,0xb5,0xc2,0xee,0xe3,0x04,0x07,0x33,0x03,0x03,0xc5,0x9f,0xbe,0x88,0x37, + 0x1c,0x03,0x1c,0x0c,0xd7,0xce,0xee,0xec,0xc0,0x40,0x00,0x30,0xcc,0x13,0x7f,0xeb,0xf8,0xf0,0x01,0x00, + 0x34,0x83,0x4d,0xcc,0xef,0xef,0xf3,0xc0,0x00,0x13,0x0c,0x4d,0x33,0x38,0xbf,0xf8,0xf0,0xc0,0x77,0x0c, + 0x59,0xf0,0x23,0xf2,0x3f,0xc3,0x30,0x00,0x31,0x0c,0x30,0xef,0xe2,0xcf,0xcc,0xc1,0xc0,0x03,0x4c,0x3d, + 0xc8,0xff,0x3e,0x0c,0xcc,0x70,0xc0,0xd3,0x30,0xff,0xec,0x8f,0xcc,0xc0,0x00,0x07,0x34,0xcc,0xff,0xec, + 0xfc,0x80,0x33,0x13,0xc0,0x3d,0x20,0xff,0x3f,0xfc,0xc7,0x30,0x30,0x80,0xf7,0xcd,0xf3,0x08,0xf0,0x38, + 0x39,0x23,0x0c,0x32,0x03,0xc0,0xff,0xd3,0x3e,0xdf,0x3f,0x9a,0x73,0x18,0x36,0xcd,0xf2,0xd0,0xff,0x00, + 0xb9,0x3e,0x7d,0xc3,0x33,0x92,0xb1,0xc3,0x93,0xf4,0x82,0xcd,0xcf,0x1d,0xfb,0xdc,0x30,0xde,0x20,0xdf, + 0x23,0x10,0xfc,0x9c,0x7f,0xc8,0x07,0x78,0xd0,0x70,0x1c,0xf3,0xfd,0x0c,0x0c,0xcf,0xbb,0x0d,0x33,0xd0, + 0x32,0x2b,0xc0,0xdc,0x30,0xf8,0xee,0x3f,0x11,0x16,0x3f,0xeb,0x30,0x03,0x04,0xc2,0x37,0xf3,0x1e,0xec, + 0xc1,0x3c,0x60,0xdc,0xbc,0xc4,0xec,0xcc,0xc3,0x0c,0xf2,0x8f,0x31,0x10,0x87,0x6f,0x8c,0x0c,0xef,0x1f, + 0x7e,0x0c,0x94,0x6c,0x70,0xdb,0xf3,0xf4,0x9c,0xf3,0xff,0x13,0x31,0xd1,0x4f,0xee,0xf4,0x8b,0x2f,0xd0, + 0xf2,0x20,0xdd,0x32,0xec,0xcc,0x41,0x4e,0xcc,0xf0,0xc3,0xfb,0xfd,0x07,0xca,0xfb,0x20,0xf3,0xc0,0x01, + 0x0c,0x13,0x15,0x7c,0xeb,0xbf,0xcc,0xfc,0x00,0x00,0x70,0x35,0x52,0x0b,0xef,0xf0,0xc3,0x03,0x01,0x0c, + 0x03,0x55,0xfe,0xfe,0xcc,0x30,0x30,0x30,0x40,0x37,0xd4,0x18,0xef,0xb3,0xc0,0x0c,0x30,0x00,0x77,0x3d, + 0x77,0xfb,0xef,0x60,0x03,0x30,0x00,0x30,0x3f,0x5d,0x23,0xac,0xfc,0x00,0x30,0x37,0x1c,0x3c,0xf5,0xde, + 0x2e,0xfc,0xc7,0x00,0x0c,0x00,0xc2,0x3d,0x70,0xbe,0xef,0x0d,0xc7,0x03,0x03,0x0c,0xce,0x13,0x78,0xaf, + 0xc3,0x1d,0x30,0x30,0xcc,0x3c,0x81,0xc6,0xfa,0xfc,0x04,0x1c,0x3c,0xcc,0x33,0x3f,0x5d,0xe2,0xbf,0x0c, + 0x44,0xc3,0x3c,0xcf,0x33,0x97,0x1b,0xe8,0xfc,0x17,0x70,0xf3,0x3c,0xdf,0x3d,0x77,0xba,0xff,0x05,0x03, + 0x4f,0xf2,0x30,0xcf,0x5c,0x6f,0xae,0x03,0x11,0x03,0xcf,0xec,0x3c,0xc5,0x9e,0x2f,0xb3,0x34,0x43,0x73, + 0xff,0x3c,0xfd,0x71,0x8e,0xb8,0xcd,0x04,0x1c,0xf3,0x8c,0xf0,0xd7,0x6c,0xae,0xf3,0x11,0x01,0xcf,0xff, + 0xfc,0xc5,0xc6,0x3b,0xef,0xc0,0x10,0x00,0xff,0x3f,0xc3,0x5d,0xf2,0x8e,0xcc,0x35,0x00,0x63,0x38,0xcf, + 0x35,0x9f,0x6b,0xf8,0xf7,0x40,0x07,0x20,0xb3,0x20,0x49,0xf3,0x88,0xff,0x40,0x10,0x30,0x8f,0xfc,0xc4, + 0x93,0x2c,0xac,0xfc,0x10,0x10,0xcc,0x8f,0xf3,0x1d,0x20,0xee,0x3e,0x34,0x04,0x00,0xfc,0xf8,0xcd,0xc7, + 0xde,0x2f,0xff,0xd0,0x04,0x30,0x22,0x3f,0xc7,0xdc,0x38,0x8b,0xfc,0x00,0x40,0x0c,0xff,0xb3,0x9c,0x7d, + 0xff,0xfb,0x3f,0x13,0x40,0x0c,0xff,0xe2,0x7d,0xc2,0x0e,0xff,0xf3,0x1c,0x40,0x03,0xf2,0x20,0xf7,0x0c, + 0x2f,0xe2,0x3f,0x77,0x10,0x36,0x0f,0x86,0x0d,0xfd,0x8f,0xb3,0xf0,0xd1,0x34,0xdc,0xf3,0xd8,0x7c,0xd8, + 0xfe,0x38,0xf3,0x71,0xc3,0x73,0xdf,0x49,0x3f,0x3f,0x8e,0x3c,0xcc,0x32,0x4f,0xc3,0x73,0x7d,0xf7,0xec, + 0xda,0x7d,0xe0,0xf0,0xd2,0x09,0x0b,0x4f,0x09,0xf3,0x3d,0xbf,0x13,0xc8,0x30,0x0d,0x9f,0x67,0xdc,0xe7, + 0xf3,0x38,0x87,0xc8,0x32,0x48,0xff,0x7d,0xfc,0x34,0x0f,0xd3,0x08,0xd3,0x3c,0x9e,0xf3,0xdc,0x8f,0x43, + 0xcd,0xcc,0xb4,0x0b,0x87,0x3c,0xcc,0xcf,0x00,0xdc,0x80,0xbc,0x34,0x06,0xf1,0xf3,0xe0,0x83,0x74,0x1c, + 0xf3,0x00,0xc3,0x03,0x1c,0xcb,0x50,0x2b,0xc0,0xe3,0x4c,0xcf,0x6f,0xb8,0x37,0x0c,0xb3,0x0d,0x1c,0x00, + 0x3c,0xfc,0x70,0x08,0xcd,0x23,0xcd,0xbc,0x03,0xdf,0xbf,0x0f,0xce,0x23,0x4e,0x3c,0x12,0xf3,0xca,0x34, + 0xcc,0x33,0x0d,0xf3,0x2f,0xc3,0xf4,0x3f,0x6e,0xf1,0x22,0x20,0xf3,0x22,0xc0,0xb4,0x44,0xc3,0xf2,0xdf, + 0x0f,0x1d,0x00,0x70,0xbf,0x34,0xcc,0x55,0x3e,0xf1,0xcf,0x37,0xcc,0xd7,0x03,0xbc,0x1f,0x73,0x0c,0x43, + 0x33,0x20,0xb3,0x4c,0xce,0x2b,0xfa,0xe1,0x3c,0x20,0x7f,0xe0,0x23,0x32,0xc3,0x30,0xfe,0xd2,0xc0,0x0c, + 0xfc,0x83,0x09,0x33,0x78,0xf3,0x2d,0xc3,0xa1,0x15,0x3c,0x8f,0xf3,0x9b,0xc3,0x8c,0x00,0xdb,0xcf,0xb8, + 0x6c,0xcb,0xe0,0x3c,0x71,0xdc,0x33,0x8d,0xc6,0x3c,0x8f,0x47,0x10,0xd4,0x0f,0x8e,0xab,0x0f,0x4d,0xd0, + 0xf4,0x0d,0x05,0x50,0xff,0xff,0xbf,0x33,0xcc,0x14,0x01,0x0f,0x30,0xfe,0x55,0x3e,0xaf,0xff,0xc0,0x3c, + 0x00,0x41,0x00,0xf3,0xf3,0xbd,0x54,0xeb,0xfc,0x21,0xe0,0xf4,0x40,0x03,0x30,0xfc,0xff,0xf5,0x43,0xae, + 0xf0,0xc0,0xfc,0xc4,0x04,0xc3,0xc1,0xcc,0xb2,0xc5,0x1f,0xbe,0xe0,0xf0,0xf3,0x04,0x01,0xf0,0xcc,0xcc, + 0xa3,0xc5,0x4f,0xbb,0xbc,0xf0,0xfc,0x01,0x01,0xc3,0x30,0xc8,0xfe,0x35,0x1c,0xee,0xf8,0xfc,0xf3,0x40, + 0x40,0x03,0x33,0xff,0xfe,0xcd,0x50,0xf8,0xbb,0x3b,0xcf,0xdd,0x00,0x4d,0xc3,0xcf,0xfc,0x8f,0xd4,0x00, + 0xbe,0xfb,0xe3,0xc3,0x71,0xc7,0x03,0x33,0xf3,0xfc,0x8d,0x70,0x3e,0x38,0x8b,0xfc,0x30,0x07,0x07,0x30, + 0xcf,0xc8,0xff,0xc1,0x53,0xf2,0x38,0xef,0xf0,0xc7,0x00,0x70,0x33,0xcf,0xff,0xff,0x0d,0x57,0xff,0x38, + 0xbe,0x3c,0x03,0x07,0x70,0x33,0x3c,0xf8,0xcf,0x3d,0x53,0x3e,0xcf,0xb8,0x8c,0x03,0x1d,0x00,0x3c,0x3c, + 0xf8,0xf2,0x0f,0x14,0x48,0xe2,0x3e,0xff,0x00,0x04,0x40,0x03,0xcc,0xff,0xff,0x33,0xc1,0x54,0xec,0xff, + 0xe8,0xf0,0x0c,0x07,0x1c,0x3c,0x33,0xff,0x3c,0x23,0x14,0x0f,0xbc,0xfb,0xe3,0x37,0x31,0xc0,0x60,0xfc, + 0x08,0xfc,0xcc,0xcf,0x51,0xe2,0xfc,0xbf,0x8c,0x07,0x00,0x10,0x3f,0x0c,0xff,0xcf,0x0f,0x81,0x53,0xff, + 0xe2,0xf8,0xe0,0xc0,0xd0,0x07,0x00,0xcc,0xce,0x0f,0xcf,0x25,0xc3,0xff,0xe3,0x88,0xf3,0x03,0x1c,0x1c, + 0x03,0x03,0xcf,0x3e,0x3e,0x34,0x1f,0x38,0xfe,0xf8,0xff,0xc0,0xc0,0x1d,0xc7,0x03,0x0c,0xfc,0xfe,0x31, + 0x33,0xf3,0xef,0xe2,0x3c,0xf3,0x00,0x01,0xdc,0x00,0xcc,0x38,0xff,0xb1,0x8c,0xcf,0x33,0x33,0x03,0x00, + 0xc7,0x0c,0xc3,0xff,0xfb,0x3f,0xf3,0x09,0x43,0xf3,0x3f,0xb3,0xf3,0xf0,0x1c,0x00,0x1c,0x33,0x0f,0xfe, + 0x3f,0xff,0x58,0x33,0x3c,0x3c,0xf3,0x30,0xc0,0xc0,0x7c,0xf0,0x7c,0x0c,0x38,0x2f,0xcf,0x3f,0x0c,0xd4, + 0xc0,0x0f,0xc0,0x3e,0xcc,0xe3,0x34,0xe0,0x03,0xf8,0xec,0x03,0xc1,0xf0,0x40,0xfc,0xfb,0xe3,0xf3,0x80, + 0x48,0x5f,0xe0,0x4f,0xb0,0x0e,0xc0,0x4b,0x01,0xef,0xd2,0xf1,0x03,0xbd,0xc3,0x7c,0xb0,0x03,0xe1,0x0a, + 0x34,0x3e,0xc4,0x0f,0xfd,0xcb,0x0c,0xbf,0x42,0x30,0x5c,0xb3,0x31,0x3a,0x31,0xcc,0xef,0x53,0xfb,0x13, + 0xfc,0x4f,0xbf,0x3b,0xfd,0x02,0x11,0xcf,0xf7,0xbf,0xd6,0x37,0xc0,0x88,0xd3,0xce,0x1c,0xec,0x03,0xf8, + 0x3c,0x7b,0x1c,0xc3,0xc3,0xc1,0xf2,0xcc,0x82,0x04,0xe7,0x0e,0xc0,0x83,0x3f,0x30,0xe0,0x34,0xcd,0x2f, + 0x0c,0xe0,0x7c,0xcf,0x37,0x3c,0x4f,0xeb,0x7c,0xf5,0xed,0xcc,0x2c,0xcf,0x2d,0x4b,0x13,0xfb,0x4b,0xc4, + 0x33,0x5f,0xc7,0xec,0x4f,0xdf,0x33,0xb4,0xb0,0x22,0x0e,0x03,0x03,0xc3,0xfc,0xf7,0xd7,0xc1,0x08,0xf4, + 0xcc,0xcc,0xff,0x4b,0xc7,0x21,0x3e,0x12,0x27,0xfc,0x03,0xec,0xf3,0x13,0xe3,0x08,0xc2,0xc0,0xcc,0xcc, + 0x0e,0x37,0x8c,0xef,0x3f,0xd4,0xcf,0xa3,0xfc,0x4f,0xbc,0x0b,0x13,0x3f,0x0a,0x80,0xc3,0x13,0xc1,0xcf, + 0x4a,0xcf,0x03,0x0c,0xf1,0x05,0x00,0xbb,0xec,0x27,0xc3,0x3c,0x35,0x01,0xfb,0xbb,0xbc,0xf0,0x00,0x00, + 0x00,0x31,0x57,0x3a,0xbb,0x3c,0xc0,0x01,0x00,0x00,0xcc,0x54,0x2e,0xee,0xfc,0xc0,0x40,0x00,0xc3,0x03, + 0x14,0x3e,0x2e,0xff,0x30,0x00,0x1c,0x0c,0x0f,0x35,0x48,0xfb,0xe3,0xf3,0x43,0x77,0x0c,0x3c,0xcd,0x02, + 0xcb,0xb8,0xf3,0x13,0x77,0x0c,0x3c,0xcf,0x5c,0xb3,0xeb,0xc8,0x34,0xdd,0x33,0x7c,0xcf,0xc5,0xf8,0xfa, + 0xf2,0x01,0x34,0x0c,0x3f,0xcf,0xfd,0x4e,0x0a,0xfe,0x30,0x74,0x70,0x0f,0xf3,0xf3,0xd4,0xe7,0xaf,0xe3, + 0x00,0x5c,0x73,0x3f,0xf3,0xf1,0x7f,0x7a,0x3b,0x0c,0x10,0x00,0xcf,0x23,0xcc,0xd7,0xcc,0xac,0xb0,0xdd, + 0x00,0x09,0xb3,0xf3,0xc0,0x4c,0xca,0x2f,0xcc,0x10,0x70,0xce,0x3f,0xcc,0x31,0x73,0xef,0xa3,0x30,0x41, + 0x0c,0xfc,0xb3,0xf0,0xd7,0xdf,0x8e,0xbc,0x9c,0x47,0x0c,0x22,0x38,0x33,0x17,0x0f,0xeb,0xfc,0xc1,0x71, + 0xc0,0xe3,0xff,0x33,0x58,0x7c,0xb8,0xb2,0x01,0x00,0x1f,0xc8,0xe3,0x0c,0x1c,0x60,0xbb,0xe3,0xdd,0x07, + 0x73,0x23,0xe3,0x0f,0x17,0x78,0xfa,0xf3,0xcd,0x40,0x13,0xff,0xff,0xcc,0x34,0x1f,0x2f,0xbf,0xf7,0x11, + 0x30,0x7e,0xd8,0xb0,0x09,0x06,0x0b,0x2f,0xf0,0xd0,0x47,0x0c,0xfe,0x3c,0xf3,0x5c,0x27,0xbb,0x2f,0x00, + 0x10,0x70,0xf3,0x8f,0xf3,0x64,0xd2,0x6c,0xbe,0xc3,0x05,0xdc,0x0c,0x8e,0x3f,0xc3,0x13,0x7d,0xbe,0xf8, + 0xcc,0x11,0xdc,0x33,0xff,0xfc,0xcc,0x4d,0xf6,0xcb,0x23,0x34,0x1d,0x0c,0xcf,0xf8,0xc2,0x03,0x4d,0xf6, + 0x8f,0xec,0x00,0x40,0x1f,0xf3,0xff,0x23,0x0c,0x5c,0x60,0xb2,0xc8,0x30,0x40,0x00,0xff,0x3e,0xc3,0xf1, + 0xd7,0x1e,0x3f,0xa3,0xc0,0x04,0x0c,0x3c,0xfb,0x32,0x30,0x0d,0x74,0x82,0xf8,0xfc,0x1d,0x00,0xc3,0xff, + 0xc8,0xcc,0xc7,0x35,0xc6,0xdb,0x3f,0xc1,0x01,0x37,0xcf,0xff,0x3c,0xc0,0x3d,0x25,0x83,0x8e,0x38,0xc0, + 0x40,0x70,0xff,0xf3,0xf0,0xcc,0x0c,0x35,0x67,0x82,0xcf,0x37,0x04,0x08,0x08,0xfc,0xcc,0xf0,0x3c,0xc3, + 0x53,0x7b,0xec,0xf0,0x40,0x31,0xfc,0xf3,0xc3,0xf3,0x33,0xd7,0xc0,0x5c,0x6b,0xfc,0xf1,0x01,0x30,0xf0, + 0xf3,0xcf,0xfc,0xf0,0xc7,0x00,0x51,0x6b,0x23,0x30,0x4c,0x0c,0x2d,0x3c,0x3c,0xfc,0xfc,0x3c,0x20,0x57, + 0x1e,0xfb,0x0c,0x07,0x0c,0xd0,0x03,0x0f,0x8c,0xcf,0xf3,0xf4,0x04,0x52,0x7b,0x3f,0x30,0x7c,0xd3,0x01, + 0x0e,0x0f,0xf3,0x0f,0xcc,0xf0,0xdd,0x52,0x3b,0xcb,0x0c,0x0c,0x31,0x04,0xc3,0xf3,0xf7,0xf3,0xcf,0xc0, + 0x2f,0x54,0xca,0x8f,0xc0,0xdf,0xf4,0x01,0x30,0xfc,0x3c,0x3f,0xf8,0xcf,0x0f,0xc5,0x5d,0xe8,0xfc,0x0c, + 0x38,0xc4,0x40,0xc7,0xc0,0xc0,0xbf,0xfc,0xf3,0x3f,0x15,0x37,0xaf,0xe0,0xf0,0xfc,0x11,0x13,0x0f,0x03, + 0xc2,0x3f,0xf3,0xcc,0xfc,0xd5,0x37,0xaf,0xe0,0xf0,0xfc,0x05,0x10,0xc3,0xc0,0x83,0xff,0x8c,0x8c,0xf3, + 0xd5,0x34,0xaf,0xbd,0xf0,0xfc,0x34,0x41,0xc3,0xdc,0xf7,0xf3,0xb3,0xf3,0x30,0xc5,0x60,0xaf,0xec,0x3c, + 0x08,0x00,0x10,0xdc,0xf7,0xf3,0xf3,0xfc,0xf3,0x3c,0x15,0x70,0xeb,0xec,0x3c,0x0c,0x00,0x41,0xc0,0x83, + 0x33,0xf3,0xb3,0x3c,0xc7,0x01,0x5c,0x68,0xff,0x08,0x0c,0x00,0x10,0xc0,0xf0,0xb0,0x8f,0xfd,0xf3,0x0c, + 0x35,0x49,0xf8,0xfc,0xfc,0x70,0x34,0x07,0xdc,0xf3,0x9f,0xff,0xcf,0xcc,0x0c,0xc5,0x7d,0xb8,0xe3,0x20, + 0x30,0xc7,0x03,0x1f,0x0f,0xcf,0x0b,0xcc,0x3f,0x34,0xf5,0x74,0xbf,0xbf,0xb0,0xc0,0x10,0x00,0x73,0x0c, + 0x38,0xc8,0x23,0x3c,0xf0,0x17,0x12,0x8a,0xcb,0xcf,0x13,0x40,0x00,0x00,0x80,0xf3,0xf3,0xf3,0x8c,0xcc, + 0x51,0x78,0x38,0xbf,0x38,0xf4,0x33,0x47,0x3c,0x42,0x30,0x3e,0x0c,0xff,0x01,0xc1,0xf3,0xbf,0xbf,0xf3, + 0xc0,0x1c,0x00,0xcf,0x33,0xf3,0x10,0xc3,0x02,0x50,0x4f,0x3b,0xe8,0x8f,0xfc,0x70,0x01,0xc3,0x0c,0xf3, + 0x33,0x0c,0x30,0x31,0x74,0xf3,0xef,0xbf,0x8f,0xcc,0x34,0x34,0x01,0xcc,0xf2,0xff,0xf8,0xcf,0x30,0x71, + 0xcf,0x5b,0x7c,0x38,0xf6,0x3c,0x9c,0xf3,0x4c,0xcc,0x9f,0x63,0xd3,0xb7,0xcc,0xb1,0x06,0x0c,0xce,0x02, + 0xcb,0x48,0xc4,0x3e,0xdd,0xe3,0x03,0xfe,0x80,0x4b,0xf4,0xc9,0x32,0xc7,0x38,0xc3,0x38,0x78,0x1f,0x2c, + 0x72,0x33,0xc1,0xcb,0xd0,0x7e,0x03,0x3f,0x03,0xf0,0x3f,0x03,0x0f,0x0c,0x0c,0xfc,0x00,0x00,0x0c,0x00, + 0x00,0x03,0x30,0x00,0xcc,0x30,0x33,0x0c,0x0c,0x0c,0xc0,0xc0,0x30,0xc0,0x3c,0x00,0xcc,0x0c,0x30,0x0c, + 0x0c,0x0c,0x0c,0xf0,0x03,0xcc,0x03,0x30,0x03,0x0f,0xc0,0x30,0x0c,0x30,0x33,0x00,0xc3,0xc0,0x0c,0xc0, + 0x30,0xf0,0x03,0x0f,0xc0,0x00,0xc0,0x33,0xf0,0x03,0x03,0x0c,0xc0,0xc3,0x30,0x0f,0x0c,0x00,0xcc,0x0f, + 0x00,0x0c,0x30,0x0c,0xfc,0x00,0xc0,0xc3,0x30,0x30,0x0f,0x30,0x0c,0x30,0x33,0x00,0x3c,0x0c,0x30,0x03, + 0xc0,0x03,0x30,0xc0,0xc0,0xcf, +}; +static constexpr VoiceClip notificationClearedClip = { + notificationClearedData, sizeof(notificationClearedData), 10984, 8000, VoiceCodec::G72616 +}; +// "Advert queued" +static const uint8_t advertQueuedData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf2,0x95,0x7f,0x39,0x43,0x3b,0xcc,0x0f,0xe2,0x17,0xfe, + 0xb3,0x04,0xff,0x24,0x0c,0xff,0x20,0x0f,0xe2,0x5c,0xfa,0xcf,0x13,0x33,0x84,0x03,0xcb,0xf0,0xcc,0xbd, + 0x73,0xea,0x3f,0x4c,0xce,0x43,0x1f,0x32,0xcc,0xf3,0x85,0xcf,0xaf,0xfd,0x30,0x38,0x01,0x70,0xfb,0x3f, + 0x08,0x94,0xcf,0xaf,0xf1,0xc0,0x31,0xc1,0x00,0xf8,0xe3,0x3c,0xd4,0x3a,0xbb,0xf4,0xc4,0xc3,0x01,0xc0, + 0xff,0xbf,0xf0,0xd4,0x32,0xab,0x82,0x10,0xc7,0x03,0x00,0x82,0xcf,0x8c,0xd7,0x42,0xbe,0xf2,0x00,0x13, + 0x70,0xc2,0xc2,0x3c,0xf2,0x17,0x13,0xba,0xe2,0xc0,0x10,0x43,0xdf,0xf3,0x8f,0xcf,0x05,0xdc,0xfe,0xaf, + 0x8f,0x10,0x41,0xdf,0x0f,0xcf,0x3f,0xcd,0x00,0x63,0xbe,0x22,0x34,0x01,0x00,0xc3,0xf3,0x3c,0xc3,0x50, + 0x0c,0xeb,0xbe,0xcf,0x31,0x1c,0x1c,0xcc,0xff,0x3c,0xc5,0x01,0x33,0xee,0xef,0xe3,0xc0,0x74,0x07,0x0c, + 0xcf,0xf3,0x0c,0x40,0x48,0xf8,0xbf,0xff,0x00,0x11,0x37,0x03,0xf3,0xfc,0x34,0x07,0x3f,0xeb,0x8e,0x3c, + 0x37,0x1d,0xc0,0x3c,0xcf,0xf0,0x31,0xc0,0x8f,0xbf,0x88,0xcf,0x1c,0x01,0xf7,0xc3,0xcf,0xc3,0x34,0xc0, + 0xce,0xfe,0xec,0x8f,0xc0,0xc1,0x31,0xc0,0xc3,0x07,0x30,0x3e,0xcb,0xf8,0x8c,0xfc,0x03,0x00,0x0c,0x00, + 0xcc,0x57,0xdf,0xce,0x23,0xfc,0xf3,0xdf,0x03,0x00,0xc0,0x31,0xcf,0x57,0xfe,0xcf,0xbc,0xf3,0xcc,0x0c, + 0x00,0xdd,0xcc,0xc3,0x08,0x53,0x3a,0x32,0x3f,0x30,0xcc,0x07,0x00,0xc0,0x33,0x0c,0xf2,0x57,0x3e,0xff, + 0xf3,0x8c,0x03,0x00,0x03,0x00,0xc3,0xcc,0x39,0x50,0xfb,0x3b,0xff,0xcf,0x80,0x03,0x00,0x30,0x30,0x30, + 0xf5,0x77,0xf8,0x23,0xff,0x0c,0x9f,0x03,0x03,0x00,0xc3,0x73,0xd5,0xcc,0xa0,0xff,0xe0,0xf3,0x30,0x00, + 0x37,0x00,0xc0,0xde,0x50,0xce,0xce,0xce,0x33,0xcf,0x37,0x37,0x30,0xc0,0x30,0x95,0x83,0xb0,0xbc,0xf3, + 0x8f,0x30,0xcc,0x0d,0x37,0x0c,0x05,0xd0,0xac,0xc3,0xec,0xc3,0xe3,0x0c,0xb7,0x31,0xcc,0xd4,0x93,0xb0, + 0xfc,0xe3,0xfc,0xc2,0x3f,0xdc,0xf0,0x03,0x5b,0x4e,0xcc,0x83,0xe3,0xf3,0x38,0xcc,0x33,0xc3,0x57,0x8c, + 0xb4,0xfb,0x3c,0x28,0xf0,0xcc,0xc7,0x40,0xc5,0x2f,0x28,0x2e,0xcf,0x3e,0xc4,0x00,0x04,0x33,0x35,0x6b, + 0x2c,0x3e,0x83,0xc0,0x1c,0x00,0x43,0xcf,0x35,0x7b,0xeb,0xb3,0xf3,0x10,0x10,0x00,0xcc,0xcf,0xd5,0x2b, + 0xeb,0x33,0xf4,0x00,0x40,0x0c,0xfc,0xfe,0x56,0xff,0xb8,0x33,0x10,0x00,0x0c,0x33,0xff,0xe5,0x78,0xfb, + 0x83,0x31,0x03,0x1f,0xcc,0xfc,0xcf,0x56,0xf3,0xa0,0xc0,0x13,0x37,0x20,0xcf,0xc3,0xc5,0x28,0x2b,0x30, + 0x05,0xf0,0x0b,0x0f,0xf3,0x31,0x4a,0x7a,0xcc,0x01,0x73,0x1e,0x33,0xcc,0x3d,0x5b,0xca,0xcc,0x01,0x03, + 0x02,0xcc,0xf3,0x3c,0x52,0x82,0xb3,0x01,0x13,0xc3,0xf3,0xfc,0x30,0x52,0xce,0xb0,0xc4,0x43,0x33,0xf3, + 0x20,0x3d,0x5e,0xfe,0xb0,0xc1,0x1c,0x33,0xf0,0xfc,0x3d,0x4e,0x3a,0xfc,0xc4,0x40,0x33,0x9f,0xcc,0x31, + 0x7b,0x3a,0xcc,0xd1,0xdc,0x3f,0xcf,0xcc,0xc5,0xec,0xeb,0x0c,0x41,0xc3,0x3f,0x3f,0x33,0x17,0x8f,0xa0, + 0xf1,0x1c,0x33,0xfc,0xfc,0x3d,0x5f,0xfe,0x83,0xc4,0x40,0x3f,0xcf,0xf0,0xf5,0x08,0xfa,0x3f,0x11,0xdc, + 0x3f,0x3f,0x0c,0xd4,0xb2,0xac,0x31,0x40,0x33,0x8f,0xfd,0xf1,0x4e,0x3a,0xf3,0xd4,0x00,0x23,0xce,0x0f, + 0x05,0xfc,0xa8,0xfc,0x41,0x03,0xcf,0xfc,0xf3,0x52,0x3e,0xb2,0xc4,0x04,0x33,0xcf,0xcf,0x34,0x78,0x2b, + 0xf8,0x1d,0x1c,0x3c,0xe3,0x3c,0x04,0xe6,0xa3,0xe1,0xc7,0x73,0x33,0x83,0xc3,0x5e,0x0a,0xfe,0x00,0x41, + 0xc3,0x38,0x23,0x35,0x20,0xeb,0xec,0x01,0x10,0xdf,0xcf,0xf3,0xd7,0xf6,0xa2,0xe0,0x04,0x4d,0xcf,0x38, + 0xff,0x5f,0xde,0x8b,0xc3,0x11,0x01,0xf0,0xff,0xfc,0x48,0x7b,0xfb,0xcf,0x47,0x47,0x36,0x3c,0x83,0x4c, + 0x6f,0xfb,0xff,0x70,0x77,0x03,0xcf,0xcc,0x73,0x7f,0xeb,0x2c,0xc7,0x41,0xdc,0xcf,0xcf,0x18,0x0f,0xfb, + 0xf8,0xcc,0x10,0x40,0xdc,0xf2,0x1f,0x0f,0x3a,0xfe,0x3f,0x00,0x10,0x1c,0x0c,0xd2,0x73,0xce,0x3e,0x3f, + 0xcc,0x03,0x40,0x37,0x03,0x03,0xce,0x8e,0xff,0xfc,0xc0,0x11,0xc0,0x04,0x37,0x0f,0xe2,0xff,0xe3,0xc3, + 0x01,0x03,0x70,0x7c,0x33,0xff,0xe2,0x3c,0xf3,0x00,0x37,0x73,0x07,0x9f,0x0f,0xf3,0x0b,0x33,0xcc,0xdc, + 0x3d,0xc0,0x3c,0xf2,0x78,0x08,0x23,0x3c,0xf4,0xb4,0x0c,0x7c,0x7c,0xf2,0x18,0xe0,0x30,0xf5,0xb3,0x7c, + 0xf4,0xf9,0xf0,0xcc,0x83,0x12,0xc7,0x1b,0xf0,0x3c,0x9f,0x3d,0x07,0x20,0xff,0xfc,0x87,0x9f,0xc3,0x0c, + 0xc3,0x30,0xcc,0xcc,0xff,0x2f,0x3c,0xd2,0x4a,0xcf,0x3f,0xc0,0x00,0x10,0xc0,0x0f,0xf7,0xff,0x58,0x3b, + 0x3f,0xfc,0xcc,0x00,0x43,0x00,0x3c,0xcf,0xe1,0x20,0xff,0xff,0xfc,0xcc,0x00,0x40,0xc0,0x3c,0xcc,0xc4, + 0xcf,0xff,0xbf,0x0f,0xf0,0x00,0x00,0x0c,0x0f,0x33,0x13,0xfc,0x3b,0xcf,0xf0,0xcd,0xf0,0x0c,0x1f,0x03, + 0x3f,0x00,0x38,0x33,0xcf,0x3f,0x3c,0x30,0x4c,0xc3,0x3b,0x03,0x30,0x03,0xf3,0x2c,0xff,0x00,0x01,0x03, + 0xc3,0xcf,0x3e,0xc3,0xcb,0x33,0x30,0x04,0x0f,0x73,0xc0,0x3f,0xcf,0xf3,0xbc,0xdf,0xc3,0x00,0xf3,0xc3, + 0x0c,0xf3,0x30,0xfc,0x00,0x03,0xc0,0xcc,0xc0,0xc3,0xcc,0x0c,0x0c,0x03,0x00,0x3c,0x33,0x30,0x30,0x30, + 0xc0,0xff,0x30,0x0c,0x00,0x3c,0x33,0xcc,0x03,0xc3,0x03,0x00,0x0f,0xff,0xf0,0xb1,0xf0,0x03,0xc0,0x03, + 0xb3,0x3e,0xcc,0x0c,0x9a,0x78,0xc7,0x33,0x9c,0xe3,0x00,0xe2,0xc0,0x78,0xcd,0x63,0x1c,0xb4,0xc2,0x20, + 0x1e,0x02,0x03,0xfb,0x01,0xc8,0xc7,0x7c,0xfb,0xc8,0x93,0x2c,0xd3,0x7f,0xcc,0x8c,0x26,0x0b,0xd0,0x31, + 0x07,0xe8,0xf3,0x04,0x37,0xfd,0xfc,0x60,0x1c,0xcd,0x00,0xe0,0xc8,0x80,0x37,0xf1,0x37,0x30,0xf8,0xff, + 0x34,0x70,0x0c,0xdf,0xfb,0x32,0x30,0x0f,0x4f,0xdb,0xdf,0x74,0x38,0xc8,0xef,0x30,0x33,0xc3,0x1c,0x8c, + 0x72,0xe3,0xf2,0x91,0x6b,0xfc,0xbc,0x33,0x1c,0xff,0xdb,0x03,0xc0,0xd3,0xfc,0xcc,0x9c,0x34,0x73,0x3c, + 0x89,0xcf,0xcc,0x07,0xf0,0x03,0xe7,0xc8,0xcd,0x00,0x08,0xcb,0x0c,0x76,0x7f,0x4c,0xfd,0xcf,0x3f,0x3e, + 0x3f,0x1b,0xdd,0x7f,0x23,0xcc,0x08,0xf0,0x12,0x22,0x41,0x8d,0xff,0x0d,0xe0,0x0b,0x2c,0xc7,0x43,0x8f, + 0xbf,0x3b,0x03,0x04,0xdb,0x0e,0xc3,0xd3,0x3c,0x04,0xb7,0x0c,0x00,0x24,0x8b,0xf3,0xd6,0x13,0xfb,0xbe, + 0xc0,0x00,0xc4,0x30,0xdf,0x17,0x78,0xba,0xfe,0xc0,0xc0,0x04,0x00,0x0c,0x1d,0x65,0xba,0xfe,0xfc,0xf1, + 0x04,0x00,0x0e,0x49,0x32,0xcb,0xec,0xf3,0x10,0x00,0x0c,0xcf,0x75,0xc2,0xfb,0xb2,0xcf,0x40,0x04,0x3c, + 0x3d,0x27,0x82,0x2b,0xf3,0x83,0x40,0x07,0x30,0xfd,0xc6,0xc8,0xef,0xb3,0xc0,0x01,0x03,0x0c,0xfd,0xf6, + 0x0b,0x2f,0xcf,0xc0,0x44,0x37,0x0f,0xfd,0xf7,0x98,0x2f,0xff,0x07,0x1d,0x03,0x0c,0xe1,0xf6,0xdb,0xef, + 0xb0,0xf4,0x40,0x70,0x7f,0xfd,0xf6,0xde,0x23,0xf8,0x34,0x07,0x70,0xcf,0x2d,0xf7,0xfe,0x22,0xff,0x70, + 0x40,0x77,0xf3,0xfc,0x31,0xff,0xef,0xb3,0xc1,0x10,0x4c,0x3f,0xfb,0x4f,0x70,0xee,0x2f,0xf0,0x04,0x07, + 0x0c,0x8f,0xc6,0x1f,0x3e,0xcb,0xfc,0x00,0x40,0x0c,0xf8,0x8d,0xf4,0xf3,0xef,0xb3,0xc1,0xd0,0x03,0x32, + 0xcf,0xd2,0x4f,0xce,0xfb,0x3c,0x1d,0x00,0x09,0x88,0x39,0x3d,0xcf,0x28,0x8c,0xf1,0x07,0x70,0xfc,0xbc, + 0xf1,0x31,0xff,0xef,0xfc,0x34,0x71,0xcc,0xff,0x23,0x31,0x60,0x3e,0x2f,0xfc,0x01,0xdc,0x7c,0xff,0x3f, + 0xdf,0x4d,0xce,0x3b,0x8f,0x00,0x10,0x03,0x3f,0x82,0x33,0x17,0xc0,0xbf,0xbc,0xf0,0x04,0x0d,0xcf,0xf8, + 0x38,0x30,0x58,0x32,0xcb,0xf3,0xd0,0xd0,0x30,0xfc,0xff,0x33,0x0d,0x4f,0x0a,0x3b,0xc2,0x01,0x00,0x00, + 0x8f,0x39,0x83,0x0f,0x5f,0xf2,0xfe,0x27,0x34,0x04,0x3c,0x3b,0x3f,0xcc,0xc0,0xd7,0xf0,0xe8,0xbc,0x3c, + 0x50,0x00,0xc2,0xcf,0xfc,0x30,0xf3,0x57,0xf3,0xee,0xe3,0x30,0x41,0xd3,0x0f,0xf2,0x3c,0xf0,0xcc,0x17, + 0x3c,0xbb,0xec,0xf0,0x5d,0xd3,0x08,0xe3,0xf3,0x30,0x0c,0x35,0xcf,0x2b,0xee,0x30,0xd7,0x10,0xcc,0xf8, + 0xff,0xcc,0x33,0x02,0x5c,0x83,0xaf,0xb3,0x31,0x77,0x00,0xce,0xcf,0xe0,0xc3,0x30,0xcf,0x53,0xc2,0xbe, + 0xe3,0xc0,0x44,0x1f,0x7f,0xff,0xf3,0x33,0x0c,0x3f,0x57,0xf7,0xa3,0xef,0x00,0x41,0x1c,0xcc,0xb3,0xfc, + 0xcc,0x0f,0x0f,0xf5,0x7c,0x28,0xbe,0xf3,0x11,0x04,0x03,0xcb,0x3f,0xcc,0x30,0xc3,0xf8,0x14,0xf7,0xbe, + 0xef,0x3c,0x44,0x10,0xc3,0xff,0xfc,0xcc,0xdc,0xf3,0xf9,0x5f,0xdf,0x8f,0xb3,0x0c,0x47,0x4c,0x33,0x8f, + 0x23,0x03,0x33,0x33,0xfd,0x5f,0xdb,0xfe,0x8c,0x31,0x10,0x1c,0xf3,0xe3,0xf3,0x0c,0x03,0xc3,0xe1,0x4c, + 0xc2,0xbf,0xa3,0xcc,0x44,0x10,0xc3,0xff,0x23,0x33,0x0c,0xcf,0x23,0x53,0x31,0xa3,0xef,0xc3,0x11,0x01, + 0xcc,0xff,0xc8,0xc3,0x30,0x3c,0xff,0xe5,0x3c,0x7b,0xfa,0x3c,0x84,0x01,0x0c,0x3f,0xf2,0xc3,0xcc,0x08, + 0x3c,0x8d,0x48,0xd2,0xff,0xe3,0xcd,0x70,0x13,0xc3,0xff,0xfc,0x3c,0x0c,0x7c,0x82,0xd7,0xc1,0xb2,0x2f, + 0x3f,0x10,0x10,0x07,0xf3,0xf8,0xf3,0x0c,0xc3,0x3f,0x85,0x3d,0x3b,0x2e,0x8e,0x00,0x11,0x00,0x32,0x38, + 0xff,0xc3,0x0c,0xc3,0xff,0x50,0x1e,0xdb,0xe3,0x83,0x01,0x04,0x30,0xf2,0x38,0xcf,0x0c,0xc3,0xf3,0x97, + 0xdd,0xe3,0xbf,0xec,0x31,0x1d,0x30,0x0e,0x3f,0xff,0x0f,0x03,0xce,0xc9,0x67,0x33,0x2f,0xe2,0x08,0x00, + 0x1c,0x7c,0x23,0xcf,0xc3,0x03,0xcc,0xfe,0xd3,0x43,0xce,0xbb,0xff,0xc0,0x11,0xdd,0xc3,0xfc,0xff,0xc0, + 0xc0,0x00,0xf5,0xc7,0x7f,0xe2,0x2f,0xfc,0xf0,0x00,0x00,0x7c,0x33,0xfc,0xc8,0x30,0x0d,0x70,0x0c,0xef, + 0xee,0x3f,0xf3,0x73,0x00,0x30,0x0c,0x33,0x3c,0x3f,0xcc,0x5c,0x7c,0xcb,0x3f,0x8f,0xc3,0xc0,0x77,0xc0, + 0x8f,0xcc,0xf0,0xb0,0x60,0x1c,0x9f,0x7c,0xf7,0x20,0xf3,0xfe,0xd3,0xf0,0x5f,0x38,0x78,0x00,0x9f,0xdf, + 0x38,0xc4,0x82,0x0c,0x60,0x2d,0xd8,0xf1,0x33,0xed,0xc3,0xb7,0x00,0xb3,0x72,0xc0,0x7e,0x9f,0x70,0x32, + 0x39,0xcf,0x2c,0xdd,0xcf,0x2c,0x03,0xf0,0x3f,0x03,0xf0,0x33,0xf0,0x30,0xf0,0xc0,0x00,0x00,0x00,0x03, + 0x03,0x03,0x0c,0x00,0xcc,0x03,0xc3,0x33,0x00,0x30,0xc0,0x3f,0x30,0x30,0x0c,0x0c,0x33,0xc0,0x33,0x00, + 0x0c,0xc0,0xf0,0xc0,0x0f,0x30,0x0c,0x0c,0x0c,0x33,0x00,0x3c,0x00,0xc3,0xf0,0x00,0xc0,0x0f,0x30,0x0c, + 0x0c,0x33,0x03,0x03,0x0c,0xf0,0x0c,0xc0,0x0f,0x0c,0x03,0x30,0x03,0xc3,0x00,0xcc,0x00,0x30,0xf0,0x0c, + 0xc0,0xc3,0xc0,0x03,0x30,0xc0,0x0f,0x03,0x0c,0x0f,0x00,0x33,0x00,0x0c,0xc0,0x3c,0xc0,0x03,0x30,0x00, + 0xcc,0x3c,0x30,0x3c,0x00,0xc0, +}; +static constexpr VoiceClip advertQueuedClip = { + advertQueuedData, sizeof(advertQueuedData), 7062, 8000, VoiceCodec::G72616 +}; +// "Advert failed" +static const uint8_t advertFailedData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf2,0x95,0x7f,0x39,0x43,0x3b,0xcc,0x0f,0xe2,0x17,0xfe, + 0xb3,0x04,0xff,0x24,0x0c,0xff,0x20,0x0f,0xe2,0x5c,0xfa,0xcf,0x13,0x33,0x84,0x03,0xcb,0xf0,0xcc,0xbd, + 0x73,0xea,0x3f,0x4c,0xce,0x43,0x1f,0x32,0xcc,0xf3,0x85,0xcf,0xaf,0xfd,0x30,0x38,0x01,0x70,0xfb,0x3f, + 0x08,0x94,0xcf,0xaf,0xf1,0xc0,0x31,0xc1,0x00,0xf8,0xe3,0x3c,0xd4,0x3a,0xbb,0xf4,0xc4,0xc3,0x01,0xc0, + 0xff,0xbf,0xf0,0xd4,0x32,0xab,0x82,0x10,0xc7,0x03,0x00,0x82,0xcf,0x8c,0xd7,0x42,0xbe,0xf2,0x00,0x13, + 0x70,0xc2,0xc2,0x3c,0xf2,0x17,0x13,0xba,0xe2,0xc0,0x10,0x43,0xdf,0xf3,0x8f,0xcf,0x05,0xdc,0xfe,0xaf, + 0x8f,0x10,0x41,0xdf,0x0f,0xcf,0x3f,0xcd,0x00,0x63,0xbe,0x22,0x34,0x01,0x00,0xc3,0xf3,0x3c,0xc3,0x50, + 0x0c,0xeb,0xbe,0xcf,0x31,0x1c,0x1c,0xcc,0xff,0x3c,0xc5,0x01,0x33,0xee,0xef,0xe3,0xc0,0x74,0x07,0x0c, + 0xcf,0xf3,0x0c,0x40,0x48,0xf8,0xbf,0xff,0x00,0x11,0x37,0x03,0xf3,0xfc,0x34,0x07,0x3f,0xeb,0x8e,0x3c, + 0x37,0x1d,0xc0,0x3c,0xcf,0xf0,0x31,0xc0,0x8f,0xbf,0x88,0xcf,0x1c,0x01,0xf7,0xc3,0xcf,0xc3,0x34,0xc0, + 0xce,0xfe,0xec,0x8f,0xc0,0xc1,0x31,0xc0,0xc3,0x07,0x30,0x3e,0xcb,0xf8,0x8c,0xfc,0x03,0x00,0x0c,0x00, + 0xcc,0x57,0xdf,0xce,0x23,0xfc,0xf3,0xdf,0x03,0x00,0xc0,0x31,0xcf,0x57,0xfe,0xcf,0xbc,0xf3,0xcc,0x0c, + 0x00,0xdd,0xcc,0xc3,0x08,0x53,0x3a,0x32,0x3f,0x30,0xcc,0x07,0x00,0xc0,0x33,0x0c,0xf2,0x57,0x3e,0xff, + 0xf3,0x8c,0x03,0x00,0x03,0x00,0xc3,0xcc,0xc9,0x50,0xfa,0x0e,0xcf,0x0f,0x80,0x03,0x00,0x03,0x0c,0x0c, + 0xf5,0x47,0xf8,0xfe,0x3f,0x3c,0xcc,0x00,0x37,0x00,0xdc,0x33,0xd5,0xdf,0xe0,0xb3,0xf3,0xcc,0x0c,0x00, + 0x77,0x0c,0x0c,0xc2,0x50,0x0a,0xc2,0xcf,0x83,0xcf,0x37,0x37,0x30,0x03,0x30,0xd5,0x80,0xb3,0x8f,0xf3, + 0xff,0x7c,0xcc,0x0c,0x33,0x00,0x15,0xdf,0xb0,0xf3,0xe0,0xff,0x33,0xcc,0x87,0x3c,0xd3,0xc5,0xd3,0xa0, + 0xfc,0xe3,0x38,0xf3,0x7f,0xcc,0x03,0x03,0x5b,0x4e,0x0c,0xff,0xf7,0xf3,0x38,0xcc,0x33,0xc3,0x57,0x8c, + 0xb4,0xfb,0x30,0x2b,0x30,0x3c,0xc7,0x40,0xc5,0x2f,0x2d,0x2f,0xcf,0x3e,0xc4,0x00,0x04,0x30,0x09,0x68, + 0x3a,0x3f,0xf3,0xf4,0x01,0x03,0x00,0xcf,0x31,0x7e,0xfa,0xb0,0xff,0x1c,0x40,0x00,0x3c,0xcf,0xf5,0x7b, + 0xeb,0xcc,0xf1,0x00,0x40,0xc0,0xff,0x3f,0x15,0xbf,0xaf,0x03,0xd1,0x31,0xc0,0xc3,0xfc,0xf1,0x5a,0x0a, + 0xcc,0x30,0x40,0x07,0xf3,0x3f,0x32,0x57,0xa3,0xbc,0xdc,0x04,0xf7,0x3f,0x7f,0x33,0xf5,0x68,0xfb,0xc0, + 0xd1,0x33,0x7f,0xc3,0xfc,0xcd,0x5b,0xca,0xf0,0x01,0x1f,0x18,0xf3,0x3c,0x3c,0x5e,0x9a,0xfd,0xc1,0x03, + 0xdf,0xf3,0xf3,0x0f,0x56,0xf2,0xbc,0x01,0x13,0x30,0xb0,0xf3,0x33,0x53,0xb2,0xa0,0x01,0x13,0x30,0xb3, + 0x3c,0x3c,0x53,0xbe,0xa0,0x31,0x13,0x0c,0xe0,0xfc,0x3d,0x42,0xfe,0xb3,0xc4,0x40,0xc2,0x3c,0xfd,0xf1, + 0x4b,0xca,0x83,0xd1,0x00,0xcf,0xf3,0xf0,0xf5,0x23,0xeb,0xcf,0x44,0x00,0xcf,0x3f,0xc2,0x17,0x20,0xac, + 0xcc,0x41,0xc3,0xfc,0xfc,0x3f,0x52,0xce,0xbc,0xf5,0x07,0x73,0xf3,0xf0,0xf1,0x48,0xca,0xce,0x04,0x1d, + 0xcf,0xcf,0xc3,0xc5,0x8c,0xa8,0xf0,0x5d,0xc3,0xfc,0xe0,0xcc,0x5f,0xfe,0xb3,0xc4,0x74,0x0f,0xcf,0xcc, + 0xf5,0x3f,0xea,0x38,0x44,0x1c,0x23,0xfc,0xfc,0x17,0xf2,0xa3,0x81,0x04,0x0c,0xf2,0x33,0xc0,0x5b,0x6b, + 0x8e,0x1c,0x70,0xcf,0x2f,0x3c,0x05,0xfd,0xaf,0xe0,0x74,0x77,0x33,0xf3,0xf0,0x16,0x0e,0x8e,0xc0,0x10, + 0x73,0x3f,0x3f,0x31,0x79,0xee,0x2f,0x01,0x07,0x03,0xf3,0xf3,0xc5,0xf0,0xaf,0xb3,0x71,0x13,0x7c,0xce, + 0x3f,0x16,0x02,0xbe,0x8c,0x01,0x01,0xcc,0x2c,0xff,0x5f,0x1a,0xfa,0xcf,0x10,0x74,0xc3,0xfc,0xe0,0x1f, + 0x4b,0xfa,0x38,0x00,0x10,0x03,0x33,0xf3,0x13,0x1e,0x3b,0xfe,0x00,0x11,0x37,0x33,0xfc,0x92,0x02,0x3e, + 0xce,0x33,0x07,0x00,0x0c,0xf0,0x87,0xc7,0xce,0xfe,0xf2,0x30,0x07,0x70,0x30,0xf4,0xf7,0x3d,0xb3,0xef, + 0xcf,0x31,0xc0,0x70,0x0d,0x3c,0x0f,0xe8,0xef,0xff,0x33,0x40,0x40,0x03,0x43,0x02,0x0b,0xfe,0x23,0xcf, + 0x00,0xdd,0xc3,0x00,0x31,0xfc,0xef,0x88,0xf3,0xc0,0x00,0x77,0x0c,0x1f,0x33,0xfb,0xc8,0x8c,0x33,0x00, + 0x0c,0x00,0xe1,0xf3,0x38,0x3e,0x3f,0x23,0xf1,0xfd,0x00,0x0c,0x4f,0xf3,0x5b,0xf1,0x20,0xf1,0xec,0x3d, + 0xf0,0xed,0x7c,0xcd,0x9f,0x03,0x87,0xd8,0xf3,0x0c,0x83,0x7d,0x37,0x38,0xf3,0xce,0x20,0xdc,0x02,0xd0, + 0xcf,0x8c,0x73,0xcf,0xf3,0x8f,0xd3,0x0e,0x10,0xcf,0x00,0xff,0xc3,0x8f,0x23,0xc7,0x2c,0xd3,0x33,0x8c, + 0xc0,0xb0,0x70,0xc0,0x2f,0xfc,0xc7,0x8c,0xb0,0xfd,0xc0,0x0c,0x03,0x0c,0x3e,0x3f,0xcf,0xc5,0xbc,0xa0, + 0xfc,0x01,0x0c,0x00,0xcf,0xf2,0xf3,0xc0,0xd5,0xbc,0xb0,0xff,0x70,0x02,0xf4,0xd8,0xe0,0x3b,0x0b,0x02, + 0x33,0x40,0xf8,0x4f,0xf8,0x3c,0xc9,0x33,0x4c,0x32,0x0b,0x02,0x03,0xce,0xf4,0xe0,0x8c,0x0c,0x0c,0x4b, + 0xcf,0x0e,0x22,0xd2,0xc8,0xd0,0xf1,0x04,0xf8,0x33,0xf3,0x6f,0xdf,0x33,0x80,0x1e,0xc2,0x70,0xb0,0xf4, + 0x38,0xb3,0x30,0x80,0x3f,0x0f,0x00,0xc0,0xb7,0xbf,0x31,0xe0,0xbf,0x0c,0x0d,0xef,0xd3,0x70,0xc0,0xe4, + 0x88,0xac,0xf7,0x4c,0x0f,0x38,0xc2,0xfc,0xc2,0x0c,0x1e,0x10,0x7b,0xb0,0xf7,0xb0,0xb0,0x33,0x34,0x3f, + 0x83,0xff,0x0c,0x23,0x0b,0x2f,0x00,0x36,0x1c,0x83,0xc0,0xb2,0xfc,0x2b,0xfd,0xff,0x4c,0x80,0xdc,0xe3, + 0x0b,0xce,0x42,0x3f,0x33,0xcc,0xc3,0x34,0x33,0x3b,0x9f,0x3c,0xcb,0x2f,0x00,0xdc,0xf2,0x3c,0x0f,0xf1, + 0xc7,0xed,0xff,0x00,0x22,0xc0,0xe0,0x61,0x2c,0xf1,0xff,0xe1,0x3c,0xc0,0x23,0xc4,0x24,0x70,0xe1,0xff, + 0x30,0x6c,0x38,0x1f,0xfc,0x76,0x3c,0x4e,0x4c,0x0e,0x13,0x70,0xc0,0xcd,0x20,0xf5,0x3c,0xb0,0x5a,0xf2, + 0x70,0xbf,0xf0,0xf9,0xf3,0x1b,0x3e,0x48,0xce,0x0c,0x82,0x10,0x80,0xc4,0x80,0xf1,0xb0,0x45,0xcf,0xf8, + 0xb8,0x6c,0x8f,0x71,0xc0,0x35,0xfc,0xbc,0x0c,0x0c,0x1b,0xba,0xdf,0x4e,0x9f,0x50,0xcb,0xc0,0x8f,0xc7, + 0xdc,0xd4,0xd3,0x4e,0xce,0xff,0x10,0x3a,0xb3,0xc0,0xc0,0x30,0xff,0x0d,0x40,0xff,0xe5,0x13,0xeb,0xaf, + 0xcc,0x00,0x01,0x00,0x0d,0xf5,0xdf,0xaf,0xb3,0x11,0x00,0xc0,0xc3,0x3f,0xf5,0xc2,0xbb,0xf0,0x11,0xdc, + 0xcc,0xc3,0xce,0xf5,0x82,0xfb,0x83,0x50,0x03,0xcc,0x03,0x08,0xe5,0xc3,0xae,0xf0,0x10,0x0f,0xc3,0x03, + 0x3e,0xcd,0x77,0xbe,0x20,0x07,0x73,0xc3,0x00,0xf2,0x3d,0x40,0xbb,0xbc,0x04,0x33,0xf0,0xc0,0xcf,0x8c, + 0x5d,0xfb,0xec,0xc7,0x7d,0x83,0x00,0xf3,0xfc,0x5f,0x7b,0xb8,0x31,0xdf,0xf0,0xc1,0xf3,0xc8,0xd6,0x7b, + 0xbb,0x0d,0xcc,0x2d,0xc0,0x3f,0x8c,0xc5,0xde,0x8b,0xc0,0x4f,0x7f,0x70,0x3f,0x3c,0xc1,0x67,0xbb,0xf6, + 0x1c,0xf3,0x4c,0x1f,0x3c,0xcc,0x4d,0xbb,0xa0,0xc0,0xc3,0xc0,0x03,0x0b,0x30,0x14,0x0a,0xfb,0x0d,0xc0, + 0xf1,0xc7,0x33,0xcf,0x71,0x76,0xfe,0x83,0x7c,0x0e,0x40,0x30,0xe3,0x33,0x16,0x6b,0xe8,0xf4,0xcc,0x37, + 0x10,0xcf,0x3c,0xdd,0x71,0xbb,0xb3,0xd0,0xcf,0x4c,0x00,0xe0,0xfc,0x05,0xd2,0xee,0xc8,0x70,0xcc,0x34, + 0x03,0xf3,0xf3,0x14,0xde,0xfb,0xcd,0x30,0xfc,0x07,0x03,0xfb,0x33,0x15,0xde,0xfb,0xcd,0xc0,0x3c,0xd0, + 0x03,0xcb,0x33,0x35,0x06,0xbf,0xbc,0x4c,0x0c,0xf4,0x03,0x3f,0xcf,0x0d,0x74,0xbe,0xfe,0x13,0x0c,0x3d, + 0x00,0x33,0xfc,0xc3,0x97,0x4b,0xee,0xe1,0xf0,0x0f,0xd7,0x00,0x23,0x3c,0xc3,0x5d,0xa2,0xbf,0xd3,0x70, + 0xcc,0x41,0xcc,0xe3,0xcc,0xcd,0x41,0xae,0xe3,0xd3,0x03,0xcd,0x4d,0xcf,0xf0,0xf0,0xfe,0x5c,0x6e,0xe8, + 0xc0,0xc0,0x83,0x40,0x0f,0x3c,0xdf,0x3f,0xe5,0x02,0xee,0x83,0x03,0x3f,0x40,0x43,0x33,0x30,0x3f,0x2c, + 0x97,0x0b,0xbe,0x0c,0x0e,0x3d,0xd0,0x7c,0xc3,0x00,0xfc,0xfc,0x57,0x3a,0xfa,0x0f,0x8b,0x30,0x43,0x7c, + 0x00,0x0c,0xfc,0xf0,0x15,0xfe,0xe2,0xc3,0xb2,0x31,0xc7,0x0c,0xc7,0x30,0xff,0x0c,0x8d,0x4f,0xba,0x2c, + 0x0b,0xff,0x10,0x03,0x0c,0x13,0xcc,0x8c,0x3f,0xf5,0x7e,0xef,0xfc,0x6f,0x0f,0x47,0xcc,0x37,0x03,0xf3, + 0x30,0xff,0xc5,0x7b,0xef,0x08,0x3a,0x00,0x10,0xf0,0xc0,0x3c,0xe3,0x3c,0xfb,0xf5,0x4b,0xfb,0xdc,0x8f, + 0xf1,0x00,0x3c,0x00,0x0f,0xf0,0x83,0xec,0xfd,0x56,0xf2,0xf0,0xf8,0xff,0x5c,0xcc,0xf4,0x0f,0x3f,0x03, + 0xfc,0xb0,0x15,0x2f,0xfe,0x03,0xa3,0x30,0x4c,0xc0,0x00,0x3f,0x33,0x0f,0xe3,0xc2,0x54,0xbf,0xc8,0xdf, + 0xb0,0xc0,0x18,0xc1,0xcc,0x3f,0x03,0x3f,0x3c,0x37,0x15,0xef,0xcf,0xc3,0xac,0x50,0xc0,0xf1,0x1c,0xfc, + 0x33,0x3f,0xfc,0x32,0x15,0x2f,0x83,0xcc,0xfb,0xd1,0xcc,0xc0,0x00,0xff,0x03,0x38,0xff,0x30,0xb5,0x5e, + 0xfc,0xcf,0x3e,0x80,0x43,0x30,0x01,0xc3,0xf0,0xc3,0xc8,0xf3,0x0d,0x54,0xbb,0x33,0x3f,0xfb,0x10,0x3c, + 0xdc,0x00,0xff,0x30,0xef,0x3c,0xcc,0xd5,0x4a,0xfc,0xff,0xfb,0xf1,0x1c,0xc0,0x03,0x03,0xfc,0xcf,0xf8, + 0xf3,0x35,0x53,0xaf,0x30,0xe3,0xf3,0x14,0x0f,0x01,0x30,0xcf,0xcf,0x32,0xff,0xdc,0x15,0x3a,0xcf,0x0f, + 0xfc,0xfd,0x10,0x33,0x13,0x0f,0x33,0xf3,0x3f,0xfc,0x05,0x57,0xbf,0xf0,0xff,0x3f,0xc1,0x40,0xf0,0x03, + 0x33,0xcb,0xf3,0x3b,0xfc,0x55,0x3b,0x8f,0x33,0xc3,0xc8,0x44,0xc3,0x00,0xfc,0xc3,0xf8,0xcc,0x8f,0x15, + 0x4e,0xfb,0x3f,0xc3,0x02,0x01,0x1c,0x00,0xcf,0xcc,0xfe,0x3c,0xff,0x35,0x57,0xfb,0xfe,0xcf,0x1c,0x31, + 0x00,0x00,0x73,0xf3,0xc8,0xf3,0x3f,0x0c,0x55,0x3b,0xfe,0xff,0x00,0x00,0x40,0xc0,0x03,0xc3,0xc8,0x8f, + 0x3e,0x33,0x05,0x5f,0x8f,0xef,0xcc,0x0d,0xd0,0xc0,0x00,0xcc,0x33,0xfc,0x8f,0xff,0xc9,0x5f,0x0f,0xef, + 0x8f,0xf3,0x03,0x00,0x00,0xdc,0x33,0x32,0x33,0xf2,0x0f,0x15,0xf3,0xff,0xb2,0x3f,0xc3,0x03,0x1c,0x0c, + 0x03,0xcc,0xff,0xc8,0xff,0x25,0xf0,0x33,0xff,0xe3,0x8c,0xf3,0x03,0x00,0x00,0x37,0xc3,0xcc,0xff,0xfd, + 0x48,0x0f,0xce,0x3f,0xc8,0xe0,0x09,0xc3,0x0f,0x7f,0xcc,0xcf,0x02,0x04,0x80,0xf3,0x33,0xc7,0x0f,0xa7, + 0xcc,0x0f,0x8c,0x33,0xb0,0x4f,0x61,0xcf,0xcc,0x0f,0xe8,0xc7,0xf1,0xc3,0x84,0xfe,0xd0,0xec,0x00,0x60, + 0xc0,0xa0,0xfc,0xbd,0x40,0xe3,0xc6,0xf3,0xd3,0x37,0x8c,0xe3,0x81,0x33,0x2d,0x03,0xef,0x1e,0x33,0x5e, + 0x0c,0x2e,0xf1,0xdc,0x02,0xc0,0x7b,0x08,0xd2,0xf3,0xc5,0xf2,0x3c,0xdf,0xfc,0x42,0x84,0xc1,0xbc,0x7f, + 0x48,0x13,0x32,0x04,0xcf,0xb0,0x30,0x7f,0x3c,0xcf,0x2f,0x1d,0xdf,0xc7,0x1c,0xbd,0xc1,0x0c,0xc0,0xcf, + 0x0c,0x30,0xc3,0xcc,0x0c,0x00,0x00,0x00,0x0c,0x00,0x00,0x00,0x30,0x30,0xc0,0xcc,0x0c,0x03,0x3c,0x03, + 0x0c,0x0f,0xcc,0x00,0x30,0x33,0xc0,0x0c,0x0c,0xf0,0x03,0x3c,0x00,0xf0,0xc0,0x33,0x00,0xc0,0x30,0x30, + 0x0c,0xc0,0xf0,0x03,0x3c,0x0c,0x00,0xcf,0x03,0x00,0x33,0xc0,0xc0,0x0c,0xf0,0x30,0x03,0x3c,0x0c,0x00, + 0xcf,0x03,0x00,0x33,0xc0,0xc0,0x0c,0xf0,0x30,0x03,0x3c,0x0c,0x00,0xcf,0x03,0x00,0x33,0xc0,0xc0,0x0c, + 0xf0,0x30,0x03,0x3c,0x0c,0x00,0xcf,0x03,0x0c,0x03,0x30,0x30,0xc0,0x0f,0x00,0x0c,0xc3,0x00, +}; +static constexpr VoiceClip advertFailedClip = { + advertFailedData, sizeof(advertFailedData), 7429, 8000, VoiceCodec::G72616 +}; +// "Sound on" +static const uint8_t soundOnData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf2,0x95,0xbd,0xb4,0x23,0x81,0xff,0xc0,0x48,0x38,0x0d, + 0xf2,0x70,0x8f,0x07,0x3b,0x83,0x73,0x8c,0x23,0xf1,0xf3,0x6c,0xbd,0x23,0x04,0x0c,0x32,0xec,0xf1,0xf2, + 0xcc,0x7b,0x3d,0x3f,0x7f,0xcb,0xe1,0x00,0xa0,0x33,0xb4,0x02,0xcc,0x7c,0xfc,0x43,0x13,0xfa,0x01,0xec, + 0x37,0x3b,0xdf,0x73,0xd8,0x3f,0x7d,0xcf,0xe7,0xf0,0xc2,0x30,0x78,0x3d,0x33,0x2c,0x0c,0xff,0x07,0x30, + 0x2f,0xcc,0x97,0xfc,0x0d,0xed,0x07,0x0f,0xd3,0xc3,0x3b,0xf0,0xb0,0xf7,0xcf,0xca,0xde,0x03,0x2f,0x50, + 0x3b,0x43,0x2c,0x07,0x20,0x3c,0x38,0x7f,0x8c,0x0f,0x7f,0x00,0xf2,0x40,0x8e,0xf7,0x08,0xb0,0x7f,0x18, + 0x1f,0xfd,0x4c,0x38,0x0f,0xe3,0x3d,0x3e,0xc7,0x33,0xf0,0x2f,0x7c,0x1c,0xf0,0x4d,0xf1,0x4d,0xdc,0x3b, + 0x6f,0xf0,0x1f,0x0f,0x04,0x33,0xc3,0x72,0x30,0x23,0xf1,0xe1,0xc7,0xb8,0xd2,0x3f,0x1c,0x73,0x4c,0xf7, + 0x43,0x17,0x34,0x0f,0x80,0xfe,0x3c,0x1f,0xc6,0x04,0xcf,0x10,0x0e,0x13,0x08,0x43,0x2b,0x04,0xad,0x83, + 0x2f,0x08,0x06,0x38,0xcc,0x37,0xb7,0xce,0xef,0x0c,0x83,0x39,0x0c,0x2c,0xfc,0x3f,0x05,0xbd,0xd3,0x3b, + 0xcb,0x32,0x38,0xcf,0x6f,0x11,0xff,0x41,0xf8,0x07,0x8c,0xd6,0x87,0x1a,0xff,0x4f,0x01,0x2f,0xc3,0xf6, + 0x1c,0x06,0x3b,0xbe,0xf7,0x8c,0xc3,0xff,0x00,0x13,0x8c,0xf8,0x7f,0xbc,0x27,0xf1,0x06,0xb4,0x3e,0xc4, + 0x5c,0xf0,0x69,0xfd,0x2f,0x09,0xc0,0x20,0xcc,0xab,0xe0,0xc4,0xf3,0xdc,0xc2,0xaf,0xd0,0x74,0xc0,0xe3, + 0xec,0xac,0x34,0x50,0x83,0x30,0xcc,0xf2,0xfa,0xfb,0x2c,0x40,0x50,0x73,0xce,0xbf,0x30,0x15,0x3e,0xbe, + 0xcf,0x33,0xc3,0x10,0x00,0xcf,0xd5,0x3b,0xbf,0x80,0xcc,0xc1,0xd0,0xc0,0xb3,0xf5,0x3e,0xbf,0xf1,0xc3, + 0xcd,0x01,0xc3,0x8c,0xf5,0x7f,0xef,0x8d,0x30,0xcc,0x01,0xcc,0xff,0x31,0x5f,0xe8,0xe0,0x0c,0x3c,0x01, + 0x33,0x2c,0x3d,0x5f,0xfb,0xfc,0x48,0x3c,0x00,0x18,0xcf,0x0c,0x5f,0xfa,0xcc,0xdf,0x33,0x13,0x02,0x3c, + 0xc3,0x17,0xbe,0x8c,0xc7,0x83,0x04,0x33,0xcc,0xf7,0xf5,0xee,0xb3,0xf1,0xe3,0x34,0x0c,0x2c,0x0c,0xf1, + 0x7a,0xe8,0x3c,0x0b,0x0d,0x43,0xcf,0x03,0x0f,0x5f,0xba,0xc3,0x0f,0x80,0x10,0xcc,0xc7,0x3c,0xd7,0xae, + 0x8d,0xf3,0xbd,0x00,0x23,0x30,0x7f,0xc5,0xeb,0xbc,0x7c,0xf8,0x10,0x0f,0x03,0x73,0x81,0x7a,0x28,0xd2, + 0x3f,0xc4,0x37,0xf0,0x70,0x23,0x5e,0x8e,0xf1,0x8f,0xfd,0x0c,0x33,0x03,0x0e,0x14,0xa3,0xec,0x7e,0x3f, + 0x13,0x33,0xc0,0x33,0xf5,0x2b,0xfb,0x0f,0x8f,0xc4,0x30,0xcc,0x4f,0x3d,0x4a,0xfe,0xc0,0xa3,0x3d,0x03, + 0x03,0x00,0xf3,0x52,0xbf,0xe0,0x3b,0xcc,0x07,0xc3,0x00,0x7c,0x57,0xe2,0x2c,0x7e,0xcc,0xd0,0x3c,0x00, + 0x0f,0x14,0xef,0xef,0x72,0xf0,0xc7,0x73,0x00,0x03,0x14,0xaf,0xf8,0x0f,0x80,0xdd,0x33,0x00,0x0c,0xd4, + 0xae,0x38,0x02,0xf3,0x4d,0x33,0x30,0x0c,0x17,0xaf,0x38,0x0f,0x8c,0x00,0xc3,0x30,0x73,0x53,0xa3,0x3f, + 0x0e,0xf0,0x40,0x30,0xc1,0x0c,0x52,0xbc,0xfc,0x3f,0x80,0x4c,0x30,0xc1,0x35,0x0a,0xfc,0xfd,0xfe,0x34, + 0x0c,0xc3,0x00,0x14,0xab,0x0c,0xf3,0xbf,0x47,0x30,0xc3,0x40,0x5e,0xac,0x20,0xfe,0xe0,0x70,0xc0,0xc4, + 0x14,0x2b,0x3c,0xf0,0xbb,0x01,0xcc,0x33,0x75,0x4e,0xbc,0xfc,0x3b,0x8d,0x03,0x30,0xc4,0x57,0xaf,0xcf, + 0x32,0xec,0x07,0x33,0x30,0x45,0x2a,0xf2,0x33,0xee,0x00,0x03,0x0c,0x01,0x4e,0x8f,0xcc,0x3b,0xf0,0x00, + 0x33,0x05,0x5c,0xb3,0x8c,0x3b,0xfc,0xc0,0x0c,0x01,0x14,0xec,0xec,0x3f,0xb3,0xf7,0x70,0x0c,0x14,0xff, + 0xe8,0x3f,0xf3,0x83,0x0d,0xc3,0x15,0xf0,0xef,0xff,0xcf,0xf0,0xf1,0x30,0x45,0x73,0x3b,0xfb,0xff,0xf0, + 0x30,0x70,0x05,0x0f,0x62,0x38,0x8f,0xcc,0x30,0x70,0x01,0x7c,0x3e,0xce,0xfc,0x83,0x0c,0x1f,0x71,0x7f, + 0x62,0x38,0xe3,0x3c,0x7d,0x37,0x01,0x7c,0x23,0x8f,0x8f,0x20,0x30,0x77,0x01,0x03,0xff,0x8e,0x3f,0xf0, + 0xc0,0x07,0x04,0x0c,0xfb,0x8e,0xcf,0x80,0xf7,0x70,0x0d,0x0f,0xcb,0xc8,0xfc,0xf0,0xc1,0x31,0xc0,0x43, + 0x8e,0xce,0x20,0xfc,0x30,0x70,0x00,0x4c,0xce,0xf2,0xf2,0x3c,0xcd,0xc0,0x1f,0x43,0x3f,0xfe,0xc8,0xfc, + 0xc0,0x34,0x00,0x17,0x3e,0x38,0xe3,0x3c,0xc0,0x31,0xc0,0xd0,0x3f,0xfb,0xff,0x23,0x00,0x01,0x0c,0x14, + 0xcc,0xbf,0xf8,0xfc,0x0c,0x00,0x03,0x71,0x33,0x28,0x23,0xe0,0x3c,0x31,0xc0,0x01,0xc3,0xcf,0xf8,0xfe, + 0x0c,0x30,0x00,0xc1,0x42,0x38,0x38,0xe3,0x3c,0x31,0xcc,0x01,0x63,0x39,0xe3,0xc9,0xf3,0x37,0x0c,0xc2, + 0x5f,0x88,0x0f,0x3f,0x7f,0x42,0x9c,0x33,0x09,0x20,0xec,0x60,0x20,0xf9,0x3d,0xfc,0x24,0xf0,0xf4,0xb3, + 0xc0,0x83,0x88,0xc7,0x0b,0x81,0x73,0x0c,0xde,0x3e,0xc1,0xc2,0xfc,0x93,0x14,0x8f,0xfa,0xd0,0xc0,0xd3, + 0xbc,0xb0,0xc7,0xe1,0x00,0x00,0xab,0x3d,0x14,0x1c,0x8f,0xbc,0xa3,0x34,0x70,0x7f,0xe2,0x03,0x00,0xfe, + 0x30,0x1c,0x40,0xfb,0xbf,0xc0,0x70,0x13,0x30,0xbf,0xfc,0xfc,0x3f,0x40,0x17,0x02,0x53,0xfe,0xbf,0x31, + 0xc3,0x3c,0x00,0x4c,0xfe,0x53,0x22,0xbf,0x31,0x0c,0x3c,0x10,0x1c,0xfc,0x97,0xff,0xaf,0x3d,0xd8,0x33, + 0xd0,0xc0,0xfc,0xd5,0x88,0xbb,0x0c,0x03,0x80,0xd1,0xc3,0x3f,0x35,0x3a,0xee,0x03,0x03,0x80,0x01,0x3c, + 0xcf,0x01,0x7e,0x8b,0x81,0x9f,0x3d,0x00,0x4f,0xcc,0xf7,0x5f,0xaf,0xb1,0xcf,0x08,0x10,0x0c,0xfc,0x0c, + 0xc5,0xeb,0x2f,0x13,0xf3,0xc1,0x0c,0x3f,0x03,0x3d,0x5b,0x8e,0x31,0xc8,0x3c,0x47,0x33,0xcc,0x0f,0xd4, + 0xeb,0xbf,0x1c,0x8c,0xd1,0x0f,0xcc,0x03,0x38,0x52,0xac,0xe0,0x0e,0xc0,0x10,0x33,0x00,0x0f,0xf1,0x5b, + 0xff,0xf0,0x2f,0xc1,0x01,0xcf,0x07,0x3f,0xf5,0x7b,0xf2,0xc3,0x2f,0xc7,0x70,0x33,0x00,0xff,0xc5,0x3b, + 0xe3,0x83,0xfb,0xc0,0x0c,0x33,0x04,0xf2,0x35,0x7f,0x8f,0xcc,0x3e,0xc1,0xdc,0x0c,0xc0,0x3f,0xf0,0x56, + 0xff,0xff,0x3f,0xb0,0x13,0x0c,0xc0,0x73,0x8c,0xd5,0x2f,0xf3,0xf0,0x8b,0x07,0x7c,0x0c,0x00,0x3c,0xc3, + 0x57,0xbf,0xf3,0xf3,0xb3,0x10,0xcc,0x03,0x70,0xff,0x01,0x52,0xb3,0xcf,0xcf,0x8c,0x43,0x30,0x03,0x03, + 0xfc,0x0d,0x52,0xbc,0xcf,0xcf,0xb0,0x40,0xf0,0x00,0x03,0xfc,0x0d,0x56,0xff,0x32,0x3c,0xe3,0x40,0x20, + 0x00,0x30,0xfc,0xc3,0x15,0xbf,0xc3,0x8f,0xff,0x04,0x33,0x1c,0x0c,0x3f,0x30,0xfd,0x5e,0xb3,0xc8,0xf3, + 0x8c,0x43,0xc0,0x70,0x0c,0xe0,0x33,0xc5,0x6b,0xb3,0xf8,0xcb,0xc1,0x0f,0x01,0x0d,0xc2,0xf3,0x0b,0xd5, + 0xfb,0xf3,0xfc,0xca,0x01,0x7c,0x31,0xc0,0x32,0xf0,0xcf,0xc5,0x6e,0xf3,0xfc,0x3b,0x81,0x03,0x00,0x00, + 0x0f,0xfd,0xf3,0x81,0x58,0x8f,0x3f,0x08,0x8d,0x03,0x30,0x00,0x03,0x8c,0xc2,0xcf,0x57,0xbf,0x0f,0xc3, + 0xef,0x44,0x30,0x00,0x00,0x22,0x0c,0xff,0xfd,0x5e,0xff,0x7c,0x33,0xb0,0x40,0xf0,0x30,0x03,0xfc,0xdf, + 0xff,0xb5,0x4b,0xfc,0xf3,0x0e,0xf1,0x1c,0x30,0x31,0xdf,0xf3,0x3c,0xff,0xfd,0x5e,0xfc,0xfc,0x0e,0xe1, + 0x00,0x37,0x31,0x03,0xf3,0x3c,0xff,0xe3,0x15,0xec,0xfc,0xc0,0xb8,0xd0,0x03,0x7c,0x40,0x3c,0xcc,0xcf, + 0xfe,0x0c,0x56,0xf3,0xf3,0x0e,0xe1,0xc0,0x00,0xf4,0x03,0xcc,0xfc,0x22,0x3f,0x31,0x5b,0xcf,0xf1,0xfe, + 0xc0,0x00,0x7c,0x00,0x67,0xcf,0xcc,0xff,0xc8,0xcd,0x5a,0xce,0xcd,0xfe,0x30,0xd0,0x0f,0x10,0x00,0xff, + 0x33,0xff,0xbf,0x3c,0x54,0xa3,0xe0,0xce,0x3c,0xc4,0x0c,0x03,0x4d,0xfc,0xf3,0x3f,0xff,0xf3,0x35,0x4a, + 0x3e,0x03,0xff,0x21,0x01,0xcc,0x37,0x0c,0xfc,0xf3,0xcf,0xfc,0xcf,0x55,0xbc,0xbd,0x3f,0x3e,0x07,0x00, + 0xcc,0x43,0x0f,0xcc,0xfc,0xbf,0xf2,0x0d,0x56,0xce,0xc3,0x3f,0x2f,0x40,0x07,0xc4,0xc7,0x3f,0x3f,0x32, + 0x3f,0xf0,0xf5,0x4e,0x2a,0x33,0xc3,0xb0,0x4d,0x0c,0x07,0x00,0x8c,0xe3,0x3f,0x3f,0x33,0xc5,0x40,0xab, + 0xfe,0xcb,0xc3,0x71,0x00,0x07,0x73,0xcf,0xb3,0xff,0xcc,0xc3,0x54,0x03,0xbb,0xbb,0xef,0x30,0x04,0x41, + 0xc7,0x0f,0x3b,0xfe,0x3f,0xcc,0x30,0x53,0x4c,0xf2,0xe2,0xe2,0x23,0x0c,0x40,0x40,0x00,0x30,0xff,0x23, + 0x8f,0xcd,0x61,0xcc,0x98,0xf2,0x3c,0xe0,0x30,0x00,0x00,0x30,0x30,0xb0,0xbf,0xff,0x85,0x30,0xe3,0x2e, + 0x0b,0x3c,0xc7,0xc7,0x06,0x70,0xcc,0xf3,0xcf,0xfc,0xf3,0x57,0x02,0xf3,0xac,0xb3,0xfd,0xdc,0x13,0x1c, + 0xdf,0x33,0xff,0x3f,0xf0,0xf5,0x73,0x23,0x2b,0xce,0x33,0xd3,0x04,0x37,0x07,0x3f,0x0f,0x2f,0x3f,0xf3, + 0x53,0x02,0xc2,0xbf,0xbf,0xf0,0xc0,0x71,0x00,0x03,0x0f,0x3f,0x8f,0x8f,0xd4,0xc0,0xe0,0xb8,0xbf,0xff, + 0x0c,0x1c,0x77,0x07,0x30,0xcc,0xff,0xcf,0x24,0x30,0x3f,0xfa,0xfb,0x32,0xdf,0x1d,0xc1,0xc1,0xf0,0x33, + 0x8f,0x3f,0xcd,0x4c,0x38,0x3a,0xf8,0x88,0xf0,0xc4,0x01,0x37,0x7c,0x03,0xff,0x7f,0xf0,0x63,0x30,0xf3, + 0x0c,0xf3,0x0c,0xf3,0x0c,0xf0,0xcc,0xcc,0x33,0x33,0x0c,0xc3,0xc3,0x0f,0x0c,0xf0,0x3c,0xf0,0x3c,0xc0, + 0xcc,0xc3,0xf0,0x03,0xc3,0x03,0x3c,0x33,0x03,0x00,0xc0,0x33,0xc0,0xc3,0x00,0xc0,0x33,0x30,0x0c,0xf0, + 0xc0,0xf0,0x03,0x0c,0xc0,0x0c,0xc0,0xc3,0xc0,0x33,0x0c,0x00,0xcc,0x0c,0x3c,0x03,0x30,0x0c,0x00,0xcf, + 0x00,0x0c,0x0c,0xf0,0x03,0x3c,0x00,0xcf,0x00,0xc0,0xc0,0xc0,0xc3,0x30,0x0c,0x0c,0x03,0xcc,0x03,0x03, + 0x3c,0x00,0xc0,0xf0,0xc0,0x33,0x00,0x33,0xc0,0x0c,0x0f,0x00,0x0c,0xc0,0x3c,0xc0,0x3c,0xc0, +}; +static constexpr VoiceClip soundOnClip = { + soundOnData, sizeof(soundOnData), 6229, 8000, VoiceCodec::G72616 +}; +// "Sound off" +static const uint8_t soundOffData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x53,0x4a,0x84,0xcf,0xa0,0x4f,0xde,0x02,0x38,0x1f, + 0x2c,0x01,0xf7,0xf0,0xdf,0x20,0x08,0xe0,0x7c,0xb8,0x37,0x08,0xc2,0x3f,0x13,0x36,0xcf,0x92,0x30,0x70, + 0xc3,0x6f,0x0f,0x13,0x2c,0xc7,0xf7,0xd3,0x37,0xf0,0xbe,0x10,0x0a,0x03,0x3b,0x00,0x28,0xc7,0xcf,0xf0, + 0x35,0x3f,0xa0,0x1e,0xc2,0x70,0xfd,0xf7,0x3d,0xb3,0xe7,0xcc,0x32,0x43,0x0c,0x23,0x07,0xc7,0xd3,0x32, + 0xcc,0xcf,0xff,0x30,0xc3,0xbc,0x88,0x7f,0xc1,0x1f,0xd3,0x40,0xf8,0x3c,0x30,0xff,0x1f,0xce,0x4c,0xcd, + 0xed,0x20,0x73,0xf5,0x00,0xb4,0x33,0xc4,0x43,0x00,0x80,0x80,0xcc,0x00,0xf4,0xf0,0x02,0x60,0x0b,0xef, + 0x7c,0x8b,0x07,0xbd,0x80,0xff,0xc4,0xc2,0x84,0xf2,0x03,0xd3,0x20,0x73,0x3b,0x07,0xf7,0x80,0xfe,0xf0, + 0x9f,0x04,0xdc,0xc3,0xf7,0xbc,0x0c,0xf0,0xf0,0x43,0x3d,0x07,0x3c,0x06,0x0f,0x1e,0xdf,0x7b,0x8c,0x73, + 0xf1,0xc6,0x30,0xbf,0x23,0xf1,0x70,0x0c,0xf8,0x0f,0xe3,0x81,0xf0,0x60,0x0c,0xf1,0x30,0xa0,0x3c,0x84, + 0x02,0xb0,0x5b,0xd9,0x33,0xb0,0x83,0x63,0x8f,0xf3,0x7b,0x38,0x2f,0xf4,0xc8,0x30,0x80,0x06,0xcf,0xf3, + 0xf0,0x5b,0x9c,0x73,0xb0,0xb3,0x60,0x80,0xf6,0xfd,0x0e,0xe0,0x1f,0xb3,0x48,0xcd,0x78,0x31,0xaf,0xf4, + 0xf0,0x12,0xfc,0x33,0x7d,0x03,0x63,0xbf,0x2f,0x49,0xc0,0x3f,0xfc,0x0c,0xfb,0xbf,0xb7,0xcb,0xc2,0x4f, + 0xd0,0x6b,0x03,0xef,0x41,0xce,0x32,0x8e,0xf6,0xf0,0x90,0x42,0x0c,0xca,0xb3,0x0c,0x4e,0x3d,0xfc,0x2a, + 0xcd,0x44,0x7d,0x0e,0x3e,0xcb,0x03,0x41,0xc8,0x33,0x0c,0xf3,0x2e,0xbf,0xbf,0xc5,0x01,0x03,0xcc,0xac, + 0xb7,0xc1,0x53,0xeb,0xec,0xf3,0x3c,0x31,0x00,0xc0,0xfd,0x5c,0xeb,0xfc,0x0c,0x0c,0x11,0x4c,0x3f,0xff, + 0x57,0xfa,0xfc,0x03,0x0f,0x10,0x43,0x3e,0x3f,0x57,0xfa,0x3f,0x07,0x0f,0x00,0x1c,0xce,0x33,0xd4,0xca, + 0x8f,0xdc,0x33,0xc0,0x13,0x33,0xf0,0xd5,0xfe,0xb3,0xc1,0x83,0xc0,0x71,0x83,0xcc,0xc5,0xff,0xac,0x80, + 0x20,0xcd,0x00,0x20,0xcc,0x3d,0x7f,0xbb,0x3c,0x7f,0x33,0x43,0x08,0xc3,0x0f,0x52,0xfa,0xcc,0xd2,0x30, + 0xd0,0xc3,0xf0,0xc3,0xd4,0xbb,0xa0,0xc0,0xbc,0x35,0x3c,0xcc,0x0c,0x25,0x7a,0xec,0x3c,0x3b,0x01,0x4f, + 0xc3,0x03,0x3d,0x5e,0xbb,0xc2,0x08,0x80,0x1c,0xcd,0xc0,0xc8,0x57,0xbe,0xcc,0xf3,0xb0,0x74,0xfc,0x00, + 0x0f,0xd4,0xe8,0xa3,0x0f,0x38,0x00,0x0f,0x00,0x03,0xf5,0x6f,0xef,0xd8,0xf2,0xdd,0xc0,0xf0,0x0c,0x3d, + 0x5b,0x8b,0x80,0xfc,0xb0,0x70,0xcf,0x03,0x33,0x17,0xa2,0xed,0x3e,0x3c,0x10,0xcc,0xc0,0x3c,0xd5,0xe8, + 0xfb,0x1e,0xfc,0xc4,0x30,0x30,0x03,0xc1,0x7a,0x22,0xdc,0xec,0x34,0x1f,0x30,0x00,0xfd,0x5e,0xbf,0x81, + 0x2f,0xcc,0x47,0xc0,0x00,0x3c,0x53,0xbf,0xe0,0x38,0x9f,0x77,0x30,0x03,0x7c,0x17,0xa2,0x2c,0x0e,0xcc, + 0x01,0xc3,0x00,0x0c,0x17,0xbf,0xf8,0x32,0xf0,0xdd,0xc3,0x0d,0xc3,0x14,0xac,0xff,0x0f,0xb0,0x00,0x33, + 0x01,0x0c,0x57,0xbf,0x38,0x0f,0x8c,0x00,0xc3,0x04,0x73,0x52,0x88,0xfc,0x3f,0xb1,0xdc,0xc3,0x00,0x0d, + 0x4a,0xb3,0xcc,0x3b,0xc1,0x03,0x0c,0xdd,0xc5,0x2a,0xc2,0x33,0xee,0x04,0xc3,0x03,0x44,0x53,0xbf,0x3f, + 0x02,0xe0,0x13,0x03,0x0c,0x41,0x7a,0xbc,0x8c,0xfb,0x81,0x30,0xc3,0x04,0x17,0xaf,0xcf,0xcf,0xbf,0x40, + 0x30,0xc0,0x14,0x3a,0xcf,0xcc,0xef,0xc1,0x30,0xc0,0x11,0x5f,0xb3,0xf0,0xce,0xf3,0x4c,0x0c,0xc7,0x57, + 0xfe,0x38,0x33,0xe3,0xc0,0x03,0x0c,0x11,0x7e,0x22,0x30,0xef,0x3c,0x00,0xc3,0x01,0x5f,0x8f,0xb0,0xff, + 0xc8,0xc0,0x30,0x0c,0x57,0xf2,0xec,0x38,0xff,0xc3,0x00,0x0d,0x14,0xcc,0xa3,0xff,0xce,0x0c,0xc0,0x00, + 0x75,0x20,0xef,0xfe,0x3c,0x80,0xc3,0x73,0x01,0x73,0xce,0x82,0xff,0x20,0x0c,0x00,0x37,0x5f,0x3f,0x88, + 0xef,0x3f,0x03,0x1c,0x00,0x10,0xfc,0xef,0xe2,0x32,0x00,0xc7,0x00,0x35,0x8c,0xfb,0x3e,0x0f,0x30,0x37, + 0x0c,0x0d,0x78,0xfe,0xf3,0xe7,0xf0,0x0d,0xc0,0x0f,0x5f,0xff,0xb3,0xff,0x3c,0x03,0x4d,0xc0,0x04,0xe3, + 0xbc,0xe3,0xc8,0x0c,0x07,0xdc,0x01,0xfc,0xe2,0x3f,0xff,0x0c,0xdc,0x07,0xc1,0xcc,0x8a,0x3f,0xc2,0x03, + 0x00,0x00,0x30,0x13,0xfe,0xff,0xb3,0xcf,0x01,0x01,0xdc,0x34,0x3f,0xf8,0xff,0x3f,0x03,0x00,0x4d,0xcd, + 0x03,0xf8,0xe2,0xcc,0xf3,0x00,0x03,0x03,0x74,0xc2,0xf3,0xbc,0xf3,0xc3,0x71,0xc0,0xdc,0x70,0xff,0x3a, + 0xff,0xc3,0xc7,0x00,0xdc,0xc7,0x03,0xfc,0xbf,0xb3,0xcf,0xdc,0x19,0xc3,0x5f,0x3f,0x2f,0xc8,0x83,0x3c, + 0xd0,0x00,0xd9,0x7f,0xe0,0x20,0xfc,0xf1,0x83,0x00,0x9f,0x71,0xe3,0xf7,0xf2,0x03,0xdc,0x37,0x37,0x3e, + 0x74,0x88,0xf3,0x0c,0x87,0x03,0x12,0x03,0xc8,0x25,0xff,0xb3,0xb1,0x33,0xc4,0xd3,0x03,0x0c,0xb5,0xff, + 0xab,0xf1,0xf1,0x00,0xc4,0x00,0xf0,0xfd,0x72,0xeb,0xbc,0x31,0x70,0x00,0x0c,0x0f,0x3f,0x5c,0xfa,0xfb, + 0xc3,0x40,0x1c,0x00,0xcc,0xcf,0x97,0x2e,0x8f,0x81,0x00,0xc0,0xc3,0x70,0xff,0xf1,0x7f,0xeb,0xcf,0x44, + 0x33,0x00,0x0c,0xfe,0xf3,0x5f,0xe2,0xf0,0x10,0x20,0xc0,0x0c,0x8e,0x30,0x35,0xeb,0x3c,0x1c,0xf3,0xc1, + 0xcf,0xc8,0x30,0xcf,0x53,0xac,0x60,0x4e,0x31,0xc0,0xfb,0x0c,0x0f,0x21,0x4a,0x80,0x81,0xcb,0x00,0x03, + 0xb8,0x0c,0xcf,0xd5,0xeb,0x0f,0x40,0xbc,0x10,0x0f,0xf3,0x0c,0xfc,0x56,0xff,0x30,0x1e,0x31,0xdc,0xff, + 0xc0,0x3f,0xf1,0x4a,0xff,0xcc,0x38,0xc1,0x30,0xfc,0x01,0xff,0xd5,0x3b,0xf3,0xdc,0xff,0x1d,0xcc,0xfc, + 0x0c,0xff,0x54,0xec,0x8c,0x30,0x8c,0x13,0x0f,0x30,0x3f,0xff,0x57,0xbe,0x3c,0xcf,0x8c,0x43,0x3c,0xc0, + 0x3c,0xf0,0x57,0xbf,0xcc,0xcf,0x8d,0x00,0xcc,0x01,0xfc,0xf0,0x57,0xbf,0xc8,0xfe,0xcc,0x73,0x33,0x00, + 0xfc,0xf0,0x57,0xec,0xfc,0xc8,0x8c,0x4f,0x33,0x00,0xf3,0xc3,0x05,0x2b,0x33,0xcf,0xe0,0xd3,0x3c,0xdc, + 0x3f,0xcf,0x0d,0x5e,0x8c,0x23,0xcb,0x00,0x0f,0x00,0x03,0xfc,0xdc,0xd5,0x2b,0x02,0x33,0xf0,0x43,0x20, + 0xd3,0x3f,0xcc,0x3c,0x52,0xa3,0x08,0xff,0xc1,0x7c,0xc0,0x70,0xfc,0x30,0xf1,0x5a,0xfc,0xff,0x8b,0x01, + 0xcf,0x04,0xc3,0xf3,0x03,0xf5,0x7a,0xfc,0xfe,0x3f,0x07,0x08,0xc0,0xcf,0xcc,0xc3,0xf5,0x4a,0xf0,0xce, + 0xff,0xd0,0x3f,0x00,0x3c,0xf0,0x0c,0xbd,0x52,0xe3,0x33,0xe3,0xc4,0x0f,0x34,0x03,0x30,0x00,0xf3,0x54, + 0xef,0xc3,0xe2,0xf0,0x03,0xf0,0x00,0xf3,0xc0,0xee,0x31,0x5e,0xff,0x3e,0xfb,0x30,0x3f,0x00,0x0f,0x3d, + 0xc2,0x3c,0xc1,0x5e,0x8f,0x3f,0x88,0xcd,0xf3,0x04,0xcc,0xcd,0xcf,0xf3,0x0c,0x56,0xb3,0x3f,0xb3,0xc1, + 0x3f,0x10,0x0c,0xc3,0x03,0xf3,0x03,0x95,0xef,0xf7,0xff,0xe0,0x1c,0xf4,0x1c,0x33,0x03,0x3f,0xc3,0x3d, + 0x53,0xa3,0x3c,0xbf,0xc1,0x33,0x04,0x0c,0xcc,0x03,0xfc,0x0f,0xf9,0x53,0xbf,0x7c,0x8f,0xc4,0xc2,0x01, + 0xc3,0x30,0x03,0xfc,0xcf,0xf8,0x57,0xbf,0x0f,0xef,0xf1,0x3f,0x01,0x0d,0xf0,0x0c,0xfc,0x33,0xff,0xd5, + 0x28,0xcf,0x2f,0xfc,0x48,0xf4,0x1c,0x30,0x07,0xf3,0xc3,0xf2,0x3d,0x52,0xbf,0x3b,0x8b,0x30,0x38,0x01, + 0x30,0x31,0x03,0x8c,0xcf,0xfc,0xf5,0x7a,0xc0,0xfb,0xec,0xd0,0x8c,0x13,0x0c,0xc4,0x0f,0xf0,0xfc,0xbf, + 0xd5,0xef,0xf7,0xff,0xbc,0x4c,0xf0,0x40,0x67,0xd0,0x3f,0xcc,0xf3,0x8f,0x15,0xaf,0x83,0x8e,0xfc,0x73, + 0xcd,0x04,0x0c,0x04,0xcf,0x33,0x32,0x23,0x15,0xaf,0xc3,0xe2,0xb0,0x03,0x80,0x04,0x0f,0x07,0x02,0x0f, + 0x0f,0x2f,0x14,0xeb,0xfe,0x63,0xbc,0x70,0xc3,0x33,0x33,0x33,0x0c,0xcf,0x0f,0x0c,0xc3,0x30,0xc3,0x0c, + 0x30,0xc3,0x0c,0x33,0x0c,0x0c,0x0c,0x03,0x03,0x03,0x00,0xc0,0xc0,0xc0,0x30,0x30,0x30,0x0c,0x0c,0x30, + 0xcc,0x03,0x03,0x30,0x0c,0x3c,0xc0,0x30,0x30,0x0c,0xf0,0x0c,0x0c,0x03,0xcc,0x00,0xcc,0x3c,0x00,0x33, + 0x0f,0x00,0x0c,0xc3,0xc0,0x03,0x30,0xf0,0x00,0xcc,0x3c,0x00,0x33,0x0f,0x00,0x0c,0xc3,0xc0,0x03,0x30, + 0xf0,0x00,0xcc,0x3c,0x00,0x33,0x0f,0x00,0x0c,0xc3,0xc0,0x03,0x0c,0xcc,0x00,0xc3,0xc0,0x30,0xf0,0x03, + 0xc0,0xc3,0x30,0x03,0x30,0x03,0x3c,0x0c,0x00, +}; +static constexpr VoiceClip soundOffClip = { + soundOffData, sizeof(soundOffData), 5393, 8000, VoiceCodec::G72616 +}; +// "Action failed" +static const uint8_t actionFailedData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x6a,0xad,0x03,0xed,0xc0,0x2c,0xf0,0x7f,0x20,0x05, + 0xbe,0xf1,0xc3,0xe0,0x01,0xe3,0x31,0xff,0x3d,0x14,0xbf,0xb4,0xcc,0xb1,0xc0,0xe0,0xc0,0x20,0x8d,0xf5, + 0xbf,0xf4,0xfc,0xe4,0x0c,0xe0,0x0d,0x2c,0xcd,0x05,0xb8,0xf1,0xcc,0xf1,0x0c,0xec,0x7c,0x2f,0x01,0x05, + 0xb8,0xf0,0xc8,0xf1,0x0c,0xed,0x0c,0xfb,0x70,0xd4,0xbb,0xf0,0xef,0xf1,0x3c,0xe0,0x0c,0xff,0x70,0xc5, + 0xbb,0xf1,0x88,0xf1,0x0c,0xf1,0x0f,0x38,0x0f,0x35,0xea,0x2d,0x3e,0x30,0x4f,0x3c,0x42,0x3f,0x03,0xf1, + 0x6e,0xb8,0x3b,0xf8,0x02,0x3c,0x06,0x3f,0x03,0xcd,0x4b,0xbb,0x0b,0x88,0x03,0x8f,0x00,0x8f,0xc0,0x8c, + 0x5b,0xbb,0x0f,0xbe,0x00,0x8f,0x30,0xf3,0xf0,0xff,0x52,0xee,0x32,0xe2,0xc0,0xff,0xc0,0x3f,0x20,0xce, + 0x57,0x3f,0xf7,0xe2,0xf7,0x60,0xf0,0x08,0xf3,0x0f,0xd4,0xfb,0xb0,0xf8,0xb0,0x0c,0xcc,0x7c,0xf3,0x1f, + 0xd4,0xef,0xb0,0xef,0xe7,0x7c,0x30,0x73,0xcf,0x0c,0x94,0xeb,0xb0,0xef,0xf0,0x7c,0xcc,0x0f,0xff,0x02, + 0xd4,0xbb,0xb3,0xef,0xf1,0x0c,0x30,0x0f,0xff,0x0f,0xd7,0xaf,0x83,0x2c,0x81,0x3d,0xf0,0x08,0xff,0x0f, + 0x52,0xee,0x9c,0x8f,0xc4,0x30,0xf5,0x33,0xc9,0xcf,0x5e,0xfb,0xdf,0x3f,0xd7,0x33,0xf4,0x3f,0xf0,0x0d, + 0x4b,0xeb,0x0b,0xf8,0xd3,0x0f,0xc0,0xcc,0xf0,0xf5,0x2f,0xac,0xff,0xf8,0x70,0x3f,0x03,0x0b,0xcc,0xd4, + 0x8b,0xb0,0x8f,0xb1,0xc7,0x3d,0x37,0x3f,0x33,0x52,0x2a,0xc2,0x0b,0xc7,0x43,0x34,0x07,0xf3,0xc1,0x58, + 0xef,0xcf,0x2b,0x30,0x43,0x0c,0x43,0x3f,0xc5,0x37,0xaf,0xe0,0xa2,0xf1,0x01,0xc1,0x01,0xcc,0xc4,0xde, + 0xef,0x8f,0xff,0xc0,0x00,0x00,0x13,0x02,0x4c,0x0b,0xef,0xf8,0xff,0x3c,0x70,0x70,0x70,0x04,0x71,0xf3, + 0xff,0xe3,0xfc,0x8c,0xcc,0x34,0xc0,0x05,0xc3,0xc3,0x8f,0xff,0x8f,0x3c,0xc0,0x00,0x07,0x5f,0x1f,0x3c, + 0xcb,0x0e,0x0f,0x32,0x33,0x0c,0x00,0x73,0x03,0xdf,0x3f,0xf3,0xb0,0x80,0xc1,0xf0,0xcc,0x29,0x0e,0xdf, + 0x0e,0xc6,0x0c,0xc3,0x7f,0x7c,0xe3,0xd2,0xc9,0x33,0x39,0xfc,0xfd,0x80,0xb4,0x3c,0xfd,0x29,0x23,0x39, + 0xcc,0xf1,0x32,0xed,0x37,0xc3,0x20,0x9f,0x31,0x3e,0x3d,0xc0,0xed,0xdd,0xfc,0xc7,0x7c,0xbc,0x38,0x1b, + 0x43,0x6f,0x0d,0xf8,0x3c,0x21,0xc7,0x32,0x2c,0x8d,0x20,0x03,0xa3,0xdb,0xfd,0xc2,0x7c,0x03,0xa7,0xcf, + 0x81,0xd7,0x7c,0xcf,0xd8,0x3c,0xf0,0x92,0x09,0xc2,0x40,0xce,0x7d,0x83,0x1c,0x36,0xff,0xf7,0xcf,0x03, + 0x38,0xcc,0x60,0xc8,0x2f,0xdc,0x73,0xd8,0xcc,0xff,0x0f,0xb7,0x0f,0x84,0xd3,0x7f,0xd3,0x0d,0xcf,0x00, + 0x9c,0x0e,0xde,0x3b,0xf3,0x70,0x1c,0x32,0xfb,0xfc,0x32,0x40,0x80,0x43,0xc3,0x7f,0xd3,0x73,0xcf,0x43, + 0xcf,0x40,0x8f,0x37,0xcf,0x60,0x07,0xf7,0x23,0x83,0x24,0xcd,0x3c,0xf3,0x33,0xcc,0xbc,0x00,0xd9,0xff, + 0xdc,0xe2,0x10,0xf4,0x4c,0x33,0x4f,0xf0,0xac,0x02,0x22,0x0d,0xc0,0x31,0xcd,0xe3,0x31,0xb3,0xc4,0xc2, + 0xfe,0xff,0x07,0x33,0xb7,0xd2,0xcc,0x1b,0xca,0xf5,0x13,0xf4,0xdc,0x37,0x0d,0x03,0x0d,0xc3,0x3c,0x32, + 0x31,0xc2,0x3f,0x93,0x31,0x03,0x0d,0x02,0x0c,0xbf,0x4f,0xc3,0x4f,0xd2,0xfc,0x02,0x08,0xbf,0x3c,0xcc, + 0x7f,0x4b,0xfb,0x0c,0x7d,0xf8,0x28,0xf8,0xfd,0xcf,0xfc,0xab,0xc0,0xf4,0x8d,0xe2,0x8d,0xf3,0xd1,0x04, + 0x10,0xf2,0xff,0xe3,0x08,0x37,0x5b,0x02,0x2c,0xfc,0x60,0xfa,0xef,0x00,0xe0,0x3c,0xc4,0x30,0x05,0x54, + 0xea,0xbf,0xfc,0xc0,0xf0,0x10,0x00,0x15,0x4e,0xae,0xf3,0xc2,0xc3,0x00,0x00,0x03,0x50,0x3a,0xec,0x7f, + 0x03,0xfc,0x4c,0x0c,0x3d,0x54,0xe8,0xec,0xcd,0xfc,0x3c,0x01,0x3c,0x35,0x07,0xeb,0xb0,0xf3,0xfd,0x80, + 0x00,0x0c,0xc5,0x0c,0xaf,0xb6,0x33,0xf3,0x07,0x00,0xf7,0x14,0x0e,0xee,0xcf,0xcf,0xcc,0x07,0x00,0x01, + 0x47,0x3b,0xfb,0x22,0x3c,0x9c,0x00,0x0d,0xc1,0x36,0x6f,0xec,0xe2,0x33,0x0d,0x00,0x00,0xd0,0x0f,0xe3, + 0xb3,0xf8,0xcc,0x01,0xdc,0x00,0x1d,0xce,0xff,0xf8,0xfc,0xc7,0x1c,0x70,0x31,0x3c,0x2f,0xff,0xfb,0x08, + 0x7d,0xc7,0xc7,0x31,0xcf,0xff,0xff,0xf2,0x0c,0x1c,0x00,0x49,0xf7,0x3f,0xe0,0x8f,0x20,0x0c,0x7d,0xcc, + 0x0f,0x07,0xcb,0xe0,0x8f,0x80,0xc0,0x00,0x30,0x0c,0x90,0x8e,0xcf,0xf3,0xf0,0xd0,0x7d,0xcc,0x33,0x12, + 0x3b,0x8c,0xcf,0xc3,0x10,0x30,0x00,0x8f,0x5f,0xfb,0xff,0x32,0x00,0x00,0x00,0xf1,0x8c,0x4f,0xb8,0xfc, + 0xf3,0xdc,0x1c,0xdf,0x03,0xcc,0x4e,0x28,0x8c,0xff,0x00,0x07,0x03,0x03,0x3c,0x5f,0xbe,0x3e,0x0f,0x30, + 0x1c,0x0d,0xf0,0xcc,0x4f,0xef,0x8f,0xfc,0xc3,0x1c,0x07,0x0c,0x33,0x5c,0xbf,0x8f,0x8f,0xc0,0xc0,0x00, + 0x03,0x0f,0x56,0x3c,0xe3,0xe3,0xf0,0xcc,0x07,0x00,0x0c,0x17,0x8f,0xff,0xe3,0xcf,0xc3,0x00,0x37,0x70, + 0x13,0xf0,0x8f,0x8f,0xff,0x33,0x31,0xc7,0x00,0x10,0x8c,0xff,0xff,0x20,0xfc,0x30,0x00,0x31,0x04,0x8c, + 0xe0,0xf3,0xf0,0xc8,0x30,0xfc,0x03,0xc1,0x63,0x39,0xf3,0x33,0x0c,0xcc,0x33,0x33,0x08,0x5b,0x08,0x3f, + 0x37,0xc3,0xc0,0x03,0x31,0xcf,0x12,0x2f,0x16,0xf1,0xcf,0x20,0x3c,0x4e,0x7c,0xcc,0x20,0x38,0xc7,0x80, + 0xf1,0xf9,0x3c,0xcf,0x48,0x3c,0x00,0xb7,0x38,0x31,0xcc,0x20,0x39,0x2f,0x38,0x09,0xc3,0xc3,0x8e,0x0d, + 0xff,0x31,0xb3,0x07,0x87,0xce,0xfc,0x3d,0x20,0x6c,0x0c,0xfd,0x03,0xe1,0xcc,0xb3,0x0f,0xf2,0xdf,0x00, + 0xcd,0xb7,0x2c,0xf0,0x3c,0xb3,0x1a,0x03,0x4c,0x93,0xed,0x33,0xc8,0x02,0xc7,0x80,0xbf,0xd0,0x3f,0x30, + 0xdc,0x3c,0xfe,0xe7,0x8f,0x33,0x1c,0xc0,0xf7,0x0d,0xca,0xf3,0xff,0x40,0xfe,0x7f,0xf3,0xf8,0xac,0x78, + 0x1b,0x1f,0x3f,0x7c,0xf8,0x4f,0x2c,0x08,0xf1,0x08,0xcf,0x3b,0x7b,0xc0,0xdf,0x03,0x04,0xfc,0x1d,0xc3, + 0x03,0x97,0x32,0xb4,0xdc,0x73,0x7f,0x4b,0xfc,0x0f,0xec,0x17,0x81,0x9c,0x3c,0x38,0x0e,0x7f,0xf6,0x03, + 0x93,0x73,0xbf,0x23,0xb0,0x24,0x0c,0xe3,0x3c,0x30,0x1c,0x33,0xf2,0x2e,0x1c,0x33,0xc9,0x2c,0x0d,0x3b, + 0x6f,0x03,0x03,0x16,0xef,0x84,0xdf,0xb7,0xd0,0xc3,0xd1,0xfe,0xfd,0xf7,0xc5,0xb7,0xd3,0xc2,0xcf,0xd4, + 0x0b,0xf5,0xcc,0xe4,0x4c,0x2f,0x03,0x4e,0x33,0xd2,0x38,0xc4,0x4c,0xee,0xab,0xb3,0xf1,0x04,0x01,0x01, + 0x40,0xaa,0xe8,0xf0,0x01,0x00,0x00,0x0c,0xfd,0x70,0xab,0xe0,0xc4,0x70,0x30,0x30,0xc3,0xe9,0x0d,0xeb, + 0xbc,0x34,0x40,0x20,0xc0,0x3c,0xff,0x59,0xfb,0x88,0x34,0x4c,0x20,0xcc,0x30,0xff,0x53,0x7a,0xef,0x01, + 0x1c,0x3c,0xcc,0x0c,0xf8,0xd7,0x0b,0xbe,0x0d,0x03,0x08,0x03,0x0c,0xec,0xd4,0xde,0xbf,0xd0,0x43,0xcf, + 0x30,0x0f,0x2f,0xc5,0xc2,0xbf,0x81,0x00,0xcf,0x00,0xdf,0xff,0xf5,0x76,0xff,0xb7,0x1c,0xcf,0xc0,0xc3, + 0x38,0xcd,0x7d,0xbf,0xb1,0xc1,0xf3,0xc3,0x03,0xcf,0xf3,0x53,0x6f,0xf8,0x01,0xcc,0x20,0x03,0x26,0x30, + 0xc7,0x1a,0xfe,0x0d,0x32,0x7c,0x07,0x30,0xe3,0x35,0xc6,0xbf,0x8c,0x4f,0xdf,0x34,0x3c,0x23,0x0c,0x5d, + 0xab,0xec,0x07,0xc3,0x80,0x4f,0xcf,0xf0,0x17,0x1a,0xef,0x31,0x0c,0x30,0x07,0xc3,0xf3,0x1d,0x70,0xae, + 0xe3,0x13,0x36,0x00,0x73,0x3f,0x30,0xc5,0xda,0xee,0xcd,0x33,0x09,0xc4,0xf3,0xff,0x03,0x17,0x6b,0xe8, + 0xf4,0xc0,0xf7,0x1c,0x0f,0xcc,0xc3,0x5d,0x2b,0xbf,0xf4,0xcc,0xc3,0x4c,0x0e,0x3c,0xf7,0x50,0x2b,0xb8, + 0xc4,0xc0,0xcf,0x40,0xcf,0x2c,0x0f,0x17,0x7b,0xbf,0xf1,0x03,0xc0,0xd0,0x0c,0x8f,0x31,0xf5,0xde,0xfb, + 0xcd,0x0d,0xf0,0xc1,0x03,0xcf,0xf3,0x7d,0x70,0xba,0xb3,0xdc,0x0f,0x3d,0x00,0x33,0xff,0x33,0xd5,0xde, + 0xfb,0xfd,0x31,0xfc,0xc0,0x03,0x3f,0xcc,0x72,0x17,0x7b,0xfe,0xf5,0xf0,0x08,0x13,0x03,0xfc,0xcc,0x3c, + 0x85,0xde,0xfb,0xcc,0x4f,0x3c,0x34,0x0c,0xf3,0xc0,0xc2,0xfd,0x50,0xaf,0xec,0xd3,0xf3,0xc0,0x43,0xcf, + 0xcc,0x08,0xff,0xd5,0xde,0xff,0x83,0x7f,0x0e,0x40,0x03,0x3c,0x0c,0x3f,0xf3,0xd5,0xdb,0xfe,0xcc,0x8e, + 0x30,0x13,0x0c,0xc0,0x0f,0x3f,0xcc,0x35,0x0a,0xb3,0x8c,0x23,0x80,0x34,0xcc,0xc0,0xc0,0xb3,0x30,0x3c, + 0x50,0xae,0x38,0x0e,0x3f,0x07,0x4c,0xc3,0x1c,0xcf,0xcc,0xc3,0xf1,0x5f,0xbb,0xfc,0x7b,0xcf,0x40,0x02, + 0x00,0xc3,0xfc,0x83,0x3f,0xf5,0x7e,0x28,0xcc,0x0b,0x80,0x13,0x0c,0xf4,0x3c,0xff,0x30,0xfb,0x0d,0x5e, + 0xfb,0xc0,0xb3,0xb0,0x40,0x3f,0x70,0x1f,0xf3,0xf0,0xff,0xcf,0x54,0xbe,0xed,0xce,0x3f,0x10,0xc0,0xf1, + 0x0c,0xff,0xc3,0xf2,0xfc,0x35,0x5b,0xfc,0xb0,0xef,0x33,0x47,0xc0,0x00,0x0f,0xc3,0x30,0xef,0x0c,0xd5, + 0x7b,0xf3,0xc0,0xaf,0x07,0x43,0x30,0x70,0xc3,0xc3,0x7c,0xf3,0xf3,0xd5,0x7e,0xf3,0xcc,0xeb,0xd1,0xcc, + 0xcc,0x44,0xfc,0xc3,0x0f,0xff,0x33,0xc5,0x5e,0xfc,0xfc,0xfa,0xf4,0x1c,0xc0,0x04,0x32,0x0c,0x3c,0xff, + 0x30,0xfd,0x57,0xbf,0x33,0xcf,0xbc,0x40,0xf0,0x00,0x1c,0xfc,0x0c,0xfe,0x23,0x0f,0x15,0x6e,0x33,0x33, + 0xfe,0x04,0x0f,0x00,0x00,0x3f,0xf7,0x0c,0xbf,0x8c,0x21,0x53,0xbf,0xcc,0x8f,0xe3,0x40,0x3c,0x40,0x00, + 0xfc,0xf0,0xff,0xff,0xcf,0x55,0x6f,0xff,0x08,0xf2,0x31,0x00,0xcc,0x70,0x33,0x3f,0x0f,0x3f,0xfc,0x85, + 0x53,0xbf,0xcc,0xff,0xff,0x11,0x0c,0x00,0x03,0xc3,0xf8,0xcf,0xf8,0xcc,0x55,0x3b,0x8f,0x08,0xf0,0xf0, + 0x17,0x0f,0x07,0x33,0xcf,0x23,0x33,0xff,0x01,0x53,0xaf,0xf3,0xc8,0xc3,0xc1,0x1c,0x30,0x0c,0xcc,0xcf, + 0xf3,0x0e,0xcc,0x55,0x2e,0xcf,0x3c,0xc0,0xff,0x44,0x03,0x00,0xf3,0xc3,0xef,0x3f,0xff,0x15,0x5f,0xbf, + 0xef,0x3c,0x73,0x07,0x70,0x00,0x3c,0xf3,0x2f,0xf3,0xff,0x35,0x57,0xfe,0xcb,0xf3,0x00,0xc1,0x00,0x07, + 0x73,0x33,0xcf,0xf3,0xf2,0x0f,0x54,0x3f,0xee,0xef,0xc3,0x34,0x00,0x03,0x70,0xcc,0x33,0xf3,0xff,0xf2, + 0x05,0x7c,0xf2,0xe3,0xe0,0xf0,0xdc,0x00,0xc0,0xc3,0x33,0x3f,0x3f,0xcf,0xc9,0x53,0xe0,0xe3,0x8f,0x3c, + 0x30,0x1c,0x00,0x33,0x0c,0xfc,0xce,0x33,0xcf,0x50,0x00,0xfb,0xfb,0xe3,0xfc,0x30,0x00,0x00,0x00,0x0f, + 0x3f,0xfe,0x23,0x24,0xcc,0x33,0x8f,0xce,0x3c,0xc3,0x30,0x1c,0x0c,0x03,0x33,0xcc,0xff,0xe8,0x1f,0xdf, + 0x72,0x03,0xc3,0xcb,0x0d,0xed,0x3f,0x30,0x7f,0x87,0x3f,0x70,0xcc,0x30,0x28,0x3f,0x2b,0x13,0xc8,0x0d, + 0xfc,0x34,0xcd,0xff,0xc8,0xe0,0x08,0x38,0x40,0xf8,0x03,0x8f,0xd7,0x83,0x1e,0xf3,0x73,0x1c,0xb0,0x5e, + 0xc3,0x70,0xbc,0x31,0x7c,0xb0,0x37,0xb3,0x13,0xa1,0x33,0x2b,0x1f,0xc2,0xc4,0xff,0xd0,0x32,0xe0,0xdc, + 0x1c,0xf2,0x70,0xda,0x03,0x70,0xb1,0xc7,0x3b,0x40,0x4b,0xcf,0xff,0x85,0xf1,0x0d,0x3b,0x7e,0xfc,0x00, + 0x70,0xf8,0x2e,0x33,0x5c,0xcf,0xc7,0xff,0x33,0xc3,0x3c,0x33,0xc3,0x0c,0x30,0xc3,0x00,0x00,0x00,0x00, + 0x03,0x00,0x33,0x00,0xcc,0xc0,0x0c,0x33,0xc0,0x03,0x30,0xf0,0x00,0xcc,0x3c,0x00,0x30,0xcc,0xc0,0x3c, + 0x30,0x03,0x30,0x0f,0x3c,0x03,0x03,0x03,0x03,0x00,0xcf,0x00,0x33,0x00,0xc3,0xc0,0x0c,0x0c,0x03,0x3f, + 0x00,0x30,0x30,0xc0,0x33,0x0f,0x00,0x0c,0xc3,0xc0,0x03,0x30,0xf0,0x00,0xcc,0x3c,0x00,0x33,0x0f,0x00, + 0x0c,0xc3,0xc0,0x03,0x30,0xf0,0x00,0xc0,0xcf,0x00,0x33,0x0c,0x0c,0xf0,0x03,0xc3,0x00,0xcc,0x03,0x00, + 0xcc,0x0c,0x0f,0x30,0x03,0x03,0xcc,0x00, +}; +static constexpr VoiceClip actionFailedClip = { + actionFailedData, sizeof(actionFailedData), 7470, 8000, VoiceCodec::G72616 +}; +// "USB setup" +static const uint8_t usbSetupData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x55,0xf1,0x14,0x4f,0xef,0xbb,0xff,0x31,0x04,0x07, + 0x0c,0xf2,0x1d,0x00,0x22,0xfb,0xec,0xfc,0x10,0x40,0x00,0x98,0x27,0x0c,0x08,0xfe,0xfe,0xc8,0x00,0x04, + 0x1c,0xcc,0xe3,0x74,0xdf,0xcb,0x2f,0x8c,0x9c,0x03,0x4c,0xcc,0xef,0x16,0x7c,0x33,0xbf,0xf8,0xf0,0x40, + 0x40,0xc0,0xbf,0x24,0x9c,0x3c,0xef,0x8e,0x3c,0x04,0x04,0xdc,0xf3,0x8c,0x67,0xdf,0x38,0xec,0xfc,0x01, + 0x77,0x07,0xcf,0xf2,0x7d,0x27,0xcf,0xfb,0x23,0x37,0x10,0x37,0x33,0x8f,0x18,0x7d,0x82,0xf8,0xff,0x34, + 0x10,0x4f,0x7f,0xff,0xdf,0x7d,0x82,0xfb,0xff,0x70,0x40,0x1f,0x0e,0x08,0x09,0x24,0x8e,0xcb,0xf3,0x1d, + 0x07,0x03,0x3f,0xff,0x79,0xf7,0x8e,0x23,0xfc,0x71,0x00,0x03,0xff,0xc9,0xf1,0x9e,0x3f,0xe2,0x0d,0x01, + 0xdc,0x33,0xff,0xc3,0x92,0x78,0xfb,0x08,0x0d,0x01,0x30,0xf3,0xe3,0x0f,0x7c,0xca,0x38,0xf0,0x1d,0x07, + 0x33,0xff,0xfd,0x21,0xfc,0xef,0xb3,0xc1,0xd1,0xc0,0xf3,0xb3,0xc3,0x1c,0x8f,0xbf,0xf0,0x11,0x07,0x37, + 0xe3,0xfd,0xf0,0x08,0xfb,0xff,0x00,0x47,0x1c,0xf3,0x88,0xd3,0x90,0xef,0xfb,0x3c,0x10,0x77,0x02,0x3f, + 0xf0,0x3c,0x7b,0xcb,0x8c,0xc1,0x07,0x73,0x3f,0xff,0x73,0xd2,0x2c,0xef,0x00,0x04,0x03,0x3f,0xff,0xc4, + 0xf1,0x2f,0x8f,0xb7,0x01,0xdc,0x0f,0x23,0xcc,0x7c,0xcc,0xa3,0xcf,0x04,0x00,0x0f,0xff,0xec,0x17,0xf0, + 0x2b,0xf3,0x81,0x00,0x00,0xff,0x38,0xf4,0x08,0xcf,0xa3,0x33,0x05,0xc0,0xdf,0x8f,0xcf,0x43,0xe0,0x2e, + 0xc3,0x03,0x47,0x0c,0x3f,0xfc,0xc4,0xfc,0xfb,0xa3,0x33,0x41,0x03,0x30,0x8e,0x31,0x0f,0xfc,0xbb,0xf0, + 0x0d,0x10,0xc3,0x3f,0xfc,0x10,0xb3,0xfb,0x89,0xf7,0x07,0x03,0xcf,0xef,0x35,0xff,0xce,0xf8,0xc0,0x00, + 0x4c,0x3c,0xce,0x30,0x5e,0xcf,0xfb,0xc0,0x03,0x40,0x3c,0xf3,0xf8,0x17,0x2c,0xfe,0xff,0x4c,0x07,0x03, + 0xcf,0x3f,0xc5,0xce,0xcf,0xef,0x34,0xc0,0x1c,0xf3,0xcc,0x8d,0x13,0xac,0xcb,0xf1,0x70,0xc7,0x0e,0x3c, + 0xf8,0xd5,0xf8,0xf3,0xb3,0x04,0xc1,0x30,0xb3,0x3f,0xf1,0x5e,0x8c,0x8e,0x00,0x00,0x04,0x8f,0xc3,0x8f, + 0x50,0xbb,0x3e,0xf0,0x40,0xd0,0x3f,0xcc,0xff,0x14,0x2e,0x3e,0xfc,0x4d,0xc0,0x0f,0xcc,0xcf,0xc5,0x3b, + 0xfe,0x23,0x17,0xc0,0x33,0xf0,0xcf,0xcd,0x5e,0xfc,0xb2,0x11,0xc3,0x03,0x8c,0x0f,0xf0,0x47,0xee,0x2f, + 0x93,0x4c,0x03,0xf0,0xdf,0xcf,0x17,0x2b,0xfa,0x07,0x1c,0x02,0x0c,0x0e,0x0f,0x97,0x6c,0x8f,0xf4,0x30, + 0x02,0x00,0x60,0xff,0xd4,0xe8,0x8a,0x01,0xc0,0x3f,0xd3,0x0c,0xfb,0x14,0xe2,0xeb,0x01,0xdd,0xf3,0x03, + 0x03,0xb3,0x14,0xa2,0xef,0x4c,0x73,0xf1,0xc0,0x3f,0xf3,0x53,0xb2,0xbd,0x37,0x7f,0xc6,0x70,0xe3,0xcd, + 0x5e,0xca,0xc0,0xc7,0x3f,0x4c,0x4f,0xfc,0xf5,0x3e,0x2b,0x03,0x4c,0x80,0xc1,0xff,0x3f,0x44,0xcb,0xa3, + 0x00,0x3f,0xdc,0x1c,0xff,0xf7,0x5f,0xbe,0xcd,0xc7,0xf0,0x34,0x3c,0xff,0x71,0x62,0x2f,0x03,0x7f,0xc3, + 0x40,0xc2,0x30,0x16,0x2e,0x83,0x34,0x8f,0x01,0xc3,0xfc,0xc1,0x62,0xe8,0x3d,0x3c,0xcc,0x4c,0x3f,0x33, + 0x53,0xfa,0xcf,0x03,0xcf,0x10,0x03,0x83,0xd5,0xce,0xec,0x80,0xfc,0xf1,0xc7,0x3c,0xf1,0x43,0xea,0x23, + 0x0f,0x3c,0x10,0x0c,0xcc,0x14,0xfe,0xbf,0xc3,0xcc,0xc5,0x00,0x8c,0xf5,0x0f,0xae,0xfd,0xfc,0x3d,0x00, + 0x3c,0xf3,0x5c,0xfa,0xe2,0x0f,0xf3,0x10,0x1f,0x33,0xd5,0xff,0xae,0x30,0xf3,0x34,0x41,0xf0,0xf1,0x4f, + 0xea,0xec,0x3f,0x3c,0x44,0x43,0x0f,0x50,0x3e,0xae,0xcf,0x33,0x9d,0xd0,0x0d,0xf5,0xc3,0xe8,0x8f,0x33, + 0x2c,0x01,0x1c,0x0d,0x40,0x3a,0xeb,0x3f,0x08,0xf3,0x10,0x03,0x17,0x42,0xe2,0x8f,0xff,0xfc,0xc0,0x00, + 0xc5,0x00,0xb2,0xfc,0xe3,0xe3,0xf3,0x70,0xcd,0x5c,0x39,0xff,0x33,0xfc,0xff,0x0c,0x09,0xd7,0x3e,0x0f, + 0x32,0x3f,0xdf,0x33,0x09,0xc1,0x7f,0x21,0xcc,0xa0,0x3f,0xbe,0x12,0x81,0xc4,0xf4,0x03,0x35,0x33,0xf7, + 0xfa,0xce,0xf2,0xd2,0x0f,0xd4,0xc7,0xd0,0xf2,0x7f,0x2c,0xee,0x31,0xc8,0x74,0xc0,0x12,0xce,0x0f,0x22, + 0x01,0xff,0x60,0x0c,0xf3,0x33,0x0c,0x2f,0x4b,0xcd,0x3c,0x2d,0x08,0xe1,0x0b,0x81,0x38,0xf0,0x3f,0x7f, + 0xcc,0x3f,0x78,0xdc,0xff,0x4c,0x1c,0x30,0x88,0xc3,0xfd,0x81,0x33,0xf1,0xcd,0xf0,0xff,0xf8,0x7c,0xfd, + 0xe1,0x2c,0x1c,0x38,0x4f,0xbc,0x1e,0x4d,0x0b,0xcc,0x2f,0x3d,0xcf,0x7c,0xcb,0x3b,0x1c,0x0e,0x48,0x8b, + 0xc0,0x89,0xc0,0x32,0xb1,0x03,0xb4,0x3f,0xb7,0xf3,0x87,0x63,0xb3,0x23,0xe0,0x23,0x31,0xef,0x47,0xd8, + 0x30,0x31,0xcd,0xeb,0x2d,0x34,0x39,0x4c,0xac,0x00,0xc5,0x03,0xa3,0x0f,0x33,0x8c,0x33,0x3a,0xfd,0x72, + 0x71,0x12,0xee,0xcd,0x82,0x3c,0xdf,0xc7,0x0b,0xea,0xf0,0x17,0x50,0xce,0xb3,0x83,0xf0,0x10,0x07,0xab, + 0xef,0xd0,0x04,0xc0,0xee,0xbe,0xcc,0x45,0xc0,0xff,0xff,0xcf,0x0c,0xf0,0xcc,0x00,0x10,0x00,0x0f,0xff, + 0xef,0xf1,0x00,0x3f,0xbe,0x38,0xcc,0xc0,0x00,0x00,0x33,0xcf,0xff,0xd7,0xc3,0xff,0xf8,0xfc,0xc3,0x00, + 0x1c,0x03,0x0c,0x3c,0xf3,0x4f,0x33,0xe3,0xfc,0xfc,0xc0,0xc0,0x03,0x00,0xcc,0xcc,0x34,0x83,0x3f,0x33, + 0xfc,0xf0,0x33,0xc7,0x00,0xf0,0x3c,0x33,0xcf,0xf3,0xf0,0xf0,0x33,0x03,0x03,0xc0,0xcf,0x03,0xcf,0x00, + 0xc0,0x0f,0xc3,0xf8,0xcc,0xc3,0x30,0x00,0x00,0xcc,0x30,0x3c,0xff,0x3b,0x30,0x03,0x30,0x34,0x83,0x00, + 0xce,0xfc,0x7f,0x3d,0xc3,0xf3,0xc1,0xc2,0xc9,0x6c,0x3d,0x33,0x78,0xc2,0x3b,0x13,0x03,0xda,0xf0,0x02, + 0xf1,0x10,0x4f,0xee,0xf1,0xb3,0x38,0xd0,0x10,0xc2,0x1f,0x7e,0xfe,0xff,0xc0,0x41,0x07,0x0d,0xfd,0x71, + 0xf2,0xfb,0xfe,0x30,0x47,0x70,0x33,0xf1,0x86,0x08,0xfe,0xfc,0xe7,0x01,0x00,0x0c,0x86,0x08,0x23,0xfb, + 0xf2,0x0d,0x01,0x01,0xcf,0x1f,0x3d,0xbf,0x8b,0xff,0x00,0x04,0x00,0xcc,0x09,0xe7,0x8f,0xef,0xfd,0x87, + 0x71,0xc0,0x23,0x7d,0xf6,0x08,0xff,0xf3,0x01,0x13,0x70,0x3c,0x67,0x9e,0x3f,0x88,0xfc,0x01,0x01,0xdf, + 0x0d,0x86,0x0c,0xb2,0xf2,0x3c,0x07,0x13,0x03,0x30,0x9f,0x6c,0xfe,0x38,0xcc,0xc7,0x01,0x33,0xc7,0x09, + 0xe3,0xfb,0xe0,0xf3,0x1d,0x00,0xdc,0xf7,0xd9,0xf3,0x8b,0xec,0xcc,0x00,0x43,0x00,0xf7,0x08,0x23,0x8b, + 0xfc,0x80,0x00,0x77,0x03,0x31,0x9f,0x30,0xbb,0xef,0x20,0x00,0x4d,0x0f,0x0d,0xf6,0x79,0x8e,0xfe,0xcc, + 0xd7,0x04,0xc7,0xf0,0x37,0xd8,0xfb,0xfe,0xcc,0xc7,0x10,0xc7,0x32,0x1c,0x36,0xcb,0xfb,0xff,0x0d,0x00, + 0x1c,0xcc,0x92,0x0d,0x82,0xf8,0xbc,0xfc,0x41,0x0c,0x03,0xf0,0x9f,0x60,0xbe,0x3b,0x33,0x1c,0x40,0x0c, + 0x3f,0x31,0xf2,0x38,0xbf,0x3f,0xd1,0x07,0x01,0xcf,0xc3,0x48,0xf2,0x2b,0x3f,0xf0,0x40,0x13,0x03,0xfd, + 0xf6,0x0c,0xb2,0xfb,0x3c,0x00,0x41,0xcc,0x3c,0xd8,0x7c,0x9b,0xfb,0xff,0x0c,0x04,0x1c,0xc3,0x3c,0xc6, + 0x0f,0xe2,0xcb,0xf3,0x00,0x40,0x70,0x3c,0xc2,0x7c,0xce,0xef,0xe3,0xf0,0x74,0x04,0x33,0x3f,0x7c,0xc2, + 0x3e,0xfb,0xf2,0x70,0x77,0x40,0xcc,0xfc,0xc6,0x0f,0xfe,0xfe,0x08,0x00,0x4d,0x00,0x3c,0xc3,0xd8,0x32, + 0xfe,0xfe,0x33,0x1c,0x40,0x0d,0x8c,0xc2,0x49,0xff,0xfb,0xf8,0x20,0x01,0x00,0x00,0x83,0xc3,0x30,0xf2, + 0xfe,0xf8,0xf0,0x10,0x40,0x7c,0x08,0xd8,0x60,0x23,0xe2,0x3f,0xcc,0x74,0xd0,0xc3,0x7f,0xdc,0x63,0x3c, + 0xbe,0xcf,0xcc,0x00,0x77,0x0c,0x32,0x13,0x20,0x23,0xbf,0x82,0x0c,0x00,0x00,0xdf,0xdf,0xdf,0x78,0x69, + 0xe3,0xf6,0x0f,0x1f,0x7c,0x00,0x80,0xd6,0x08,0x0b,0x20,0xfd,0x83,0xcf,0x18,0x30,0x30,0xc0,0xd3,0x9f, + 0x02,0x2d,0xd8,0x22,0x00,0x8c,0x23,0xcd,0xb0,0x34,0x8c,0x03,0x37,0xfd,0x3f,0xf4,0xb3,0x33,0xcf,0xc7, + 0x5c,0xcd,0x7f,0x3d,0xac,0xc2,0x83,0x18,0x1f,0x7c,0x38,0x37,0xe8,0xd3,0xe0,0x4c,0xac,0x43,0xb0,0x0e, + 0x8f,0x3b,0x0c,0x30,0xf5,0x0f,0x84,0x7e,0xcc,0xff,0x21,0xfc,0xf3,0x34,0xd0,0xc3,0x03,0xdb,0xcb,0x7c, + 0xf4,0x34,0xc3,0xce,0xcb,0x0b,0x01,0x0f,0x07,0xfd,0x0f,0xf4,0xfb,0xc0,0x20,0xbc,0x12,0xf3,0x7c,0xff, + 0xdd,0xde,0x0f,0xfb,0x2c,0x2c,0x04,0x32,0x30,0xff,0x22,0x30,0xfc,0x03,0x73,0xef,0xff,0x93,0x3b,0xfd, + 0x1b,0xc3,0x6c,0xfd,0xe7,0x31,0x83,0xf7,0xcd,0x83,0x2f,0xc1,0x3f,0xb0,0xde,0x82,0x7f,0xfc,0xf3,0x4d, + 0x3c,0x01,0xfe,0x46,0xcf,0x13,0x3e,0x0c,0x30,0xc7,0xf0,0x1f,0xe7,0x7c,0xc1,0x30,0xe0,0x13,0x0e,0x58, + 0x7b,0xfd,0xcc,0x74,0xf7,0x37,0x83,0xce,0xc0,0xcf,0x07,0xb7,0xde,0xff,0x5c,0x9c,0x39,0x33,0xff,0x02, + 0xd3,0xc2,0x37,0x5d,0xcb,0x7f,0x3d,0xfc,0x64,0x38,0x80,0x3f,0xac,0x16,0xe3,0x0b,0xfb,0x33,0xa5,0x30, + 0x07,0xc1,0xd3,0x73,0x1c,0xc0,0x43,0xed,0x70,0x31,0xe9,0x2e,0xf4,0x0c,0xff,0xd7,0x7c,0xb0,0x2a,0x04, + 0xbc,0x10,0xfe,0xc3,0x82,0xf6,0xb1,0x97,0x23,0xd3,0xbe,0x03,0xcb,0x4e,0x48,0x3a,0xf8,0x0d,0xfb,0x78, + 0xfb,0x23,0x49,0xf2,0x60,0xc8,0x73,0x7f,0xbf,0x60,0xfa,0x3c,0x40,0x3e,0xfa,0xef,0xef,0x0f,0x00,0x10, + 0x53,0x3e,0xef,0xf3,0x33,0xd0,0x14,0x03,0xcc,0x8d,0x53,0xbb,0xff,0x1c,0xc3,0x04,0x10,0xf2,0xff,0xf5, + 0x7f,0xa3,0xf0,0x4f,0x7c,0x00,0x0f,0xcb,0xc3,0xd5,0xfe,0xb3,0xc1,0xcc,0xf1,0xdd,0xf3,0xfc,0xdf,0x53, + 0xfa,0xf3,0x07,0x33,0xc0,0x00,0xb3,0xf0,0x7d,0x4f,0xbb,0xcc,0x4c,0xcf,0x13,0x1f,0xf3,0xd3,0x35,0x63, + 0xec,0xc0,0x7c,0xc8,0x4c,0xcf,0xcf,0x73,0x94,0xbe,0xbc,0x35,0xf3,0x3d,0x7c,0x22,0x0c,0x0f,0x53,0xba, + 0x8d,0xc7,0xf3,0xc4,0x7c,0xe3,0x30,0x38,0x5f,0xba,0xf7,0x13,0xf3,0xd1,0xf3,0xfc,0x30,0x2d,0x42,0xea, + 0x30,0x13,0xf3,0x04,0xc3,0xf0,0x30,0x21,0x4c,0xba,0x3d,0x03,0x9f,0x1d,0xcc,0x80,0xc0,0xfd,0x40,0xba, + 0xfc,0x4c,0xf3,0x1d,0xc3,0xc3,0x00,0xf3,0x53,0xeb,0xf3,0x1c,0xf3,0xd1,0xcf,0x8c,0xc0,0xfb,0x57,0x3a, + 0xfc,0xd3,0xfc,0xc4,0x03,0xf3,0x30,0xfb,0x14,0xfe,0xbf,0x34,0xf3,0x34,0x71,0x8f,0x3d,0xcb,0x05,0xd8, + 0xaf,0xc1,0xc3,0x21,0x1c,0x7f,0x33,0x02,0xf5,0x0f,0xea,0xc8,0x0f,0xd8,0x04,0x03,0xf2,0x0d,0x8d,0x73, + 0xfa,0xe3,0xd3,0xc3,0x05,0xc7,0x3f,0x3c,0x3f,0x53,0xfe,0xaf,0xf4,0xcc,0x30,0x41,0xcf,0xcb,0x03,0xff, + 0xb0,0x31,0xce,0x3c,0x17,0x13,0x0e,0xae,0xf3,0x3d,0x04,0x51,0x03,0x3f,0xbe,0xe3,0xff,0x77,0x10,0x03, + 0x33,0xff,0xf2,0xc3,0xc7,0xd0,0xdf,0x27,0x8d,0x83,0x63,0x0c,0xd2,0x6c,0x0f,0x23,0x4f,0xe4,0xe0,0xb1, + 0x93,0x32,0x0f,0xcf,0xaf,0x06,0xc4,0xd0,0x02,0xf2,0x7b,0xfe,0x7d,0x0e,0x17,0x73,0xfc,0x2d,0x80,0xe0, + 0xb3,0xb2,0xd3,0x84,0x47,0x00,0x2e,0xfc,0xbc,0x20,0x00,0xb4,0xd0,0xb7,0xcf,0x83,0x0f,0xdf,0x07,0x0f, + 0xdc,0x3b,0xf8,0xdd,0x23,0xc9,0xe0,0x41,0xc0,0x3c,0x51,0xfb,0xbb,0xb8,0xfc,0xc0,0x00,0x00,0x0d,0xc3, + 0xc8,0xfd,0x41,0x8b,0x2f,0xcc,0x20,0x0c,0x70,0x70,0x30,0xff,0x2f,0xf9,0x40,0xfa,0x2f,0xfc,0x33,0x4d, + 0x00,0x0d,0xcf,0x08,0xf8,0xff,0x50,0x3a,0xfb,0x0b,0x7f,0x00,0x00,0x0c,0x0f,0x0f,0xfe,0x3b,0xd5,0xcb, + 0x8f,0xcc,0x8f,0xc1,0xd3,0x31,0xc0,0x33,0xf3,0x3f,0xe5,0x7f,0xb8,0xcc,0x3b,0xc0,0x40,0x0c,0x13,0x0f, + 0xf3,0xfc,0xa2,0x53,0xfb,0x83,0x33,0xbd,0x04,0xcf,0x70,0x0f,0xf2,0x0f,0x3f,0xc1,0x4e,0xfb,0x36,0x0b, + 0xc4,0xd3,0x30,0x00,0xff,0x3c,0x3e,0x3c,0x75,0x7e,0x23,0x36,0x08,0x37,0x03,0xf7,0x0c,0xe3,0x3c,0x3f, + 0x0c,0x01,0x52,0x8e,0x00,0xf3,0xf5,0x0c,0x3c,0x03,0x3e,0x0c,0x32,0xf0,0xc0,0xd5,0xeb,0xb0,0x38,0xff, + 0x5c,0xcf,0xc0,0xcf,0xb0,0xcc,0x2c,0xc0,0x39,0x5f,0xbe,0xc0,0xff,0xf5,0x03,0x63,0x42,0x3f,0xc4,0xc3, + 0xfd,0xc3,0x3d,0x5a,0xfb,0xc7,0xfc,0x84,0x08,0x23,0x1f,0x3f,0xd0,0xf3,0xf1,0xcf,0x3d,0x5e,0x8b,0xc7, + 0xfc,0xf5,0x0f,0x3c,0x1f,0xf2,0x30,0xf3,0x30,0x0f,0x0f,0x54,0xaf,0xb0,0x6f,0xf3,0x53,0xc3,0x04,0xff, + 0x3c,0x3f,0xf3,0x00,0xb3,0x35,0x4a,0xfb,0xc2,0xfc,0xf5,0xc8,0xdc,0x1f,0xc0,0xc0,0xfc,0x30,0x08,0xc0, + 0xd5,0xe8,0xf3,0x4b,0xc0,0x44,0x8c,0x00,0x3b,0x03,0x0f,0xf0,0x30,0xff,0x43,0x57,0xa2,0x3d,0xff,0xdc, + 0x03,0x81,0xc3,0x38,0x03,0xcf,0xc0,0x3d,0xf3,0x4d,0x53,0xbf,0xf0,0xeb,0x00,0x1f,0xc1,0xc0,0xfc,0x03, + 0xcf,0xc1,0xf3,0x3d,0xdf,0x57,0xbe,0x3c,0x2e,0x30,0x07,0x31,0x03,0x3f,0x03,0xff,0xf3,0x78,0xc0,0x00, + 0x95,0xef,0xf2,0x0b,0x8c,0x0d,0xfc,0x40,0xc3,0xc0,0x3f,0x3f,0x02,0xfc,0x20,0xf5,0x5b,0x88,0xf3,0xef, + 0x00,0x73,0xc4,0x70,0xcc,0x03,0x8f,0xc0,0x3f,0x33,0x0c,0x55,0xa3,0xfc,0xfe,0x80,0x07,0x3d,0x13,0x0f, + 0xc0,0x3f,0x23,0x0c,0xf0,0xc0,0x15,0x2b,0xff,0x0e,0xbc,0x71,0xcf,0x11,0xc3,0xfc,0x0f,0x22,0xc0,0x33, + 0x33,0x15,0x7b,0xff,0xdf,0xa3,0x00,0x73,0xc4,0x00,0xff,0x37,0xcf,0xfc,0x0f,0x23,0xc5,0x5b,0xff,0x8f, + 0xcf,0x33,0x33,0x33,0x30,0xf0,0xf0,0xf0,0xcc,0x30,0xc0,0x03,0x00,0xc0,0xc0,0xc0,0x30,0x30,0x30,0x0c, + 0x0c,0x0c,0x03,0x03,0x0c,0x30,0x03,0x30,0xc0,0x30,0x30,0xc3,0x00,0x33,0x03,0xcc,0x03,0x03,0x0c,0x30, + 0x03,0x30,0x30,0x0f,0xc3,0x00,0x33,0x0c,0x0c,0x03,0x0c,0x03,0xf3,0x00,0xc0,0xc3,0x00,0xf0,0xc0,0x3f, + 0x30,0x00,0xcc,0x03,0x0c,0x0c,0x0c,0xc0,0x3c,0x00,0x33,0x00,0x30,0xc0,0xf3,0x00,0xf0,0xc0,0x33,0x00, + 0x3c,0x30,0x0c,0xc0,0x0c,0x0c,0x0c,0x30,0x0f,0xf0,0x03,0x03,0x0c,0xc0,0xc0,0x3c,0xc0,0x30,0x30,0xc0, +}; +static constexpr VoiceClip usbSetupClip = { + usbSetupData, sizeof(usbSetupData), 8957, 8000, VoiceCodec::G72616 +}; +// "Shutting down" +static const uint8_t shuttingDownData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf2,0x69,0x9b,0x61,0xcf,0x30,0xcf,0x39,0xf1,0xe7,0xc0, + 0x8f,0x63,0xd8,0x33,0x08,0xf3,0x4d,0xc3,0x88,0x84,0xc3,0xe0,0x83,0x37,0x9f,0x33,0x4c,0xff,0x30,0x9b, + 0x42,0xcf,0x4b,0x3f,0x70,0x18,0x20,0xc8,0xc7,0x2c,0xc6,0xec,0x13,0x3f,0x8f,0x3d,0x13,0x41,0x0c,0xcc, + 0x70,0x8d,0xb0,0x33,0x83,0xbf,0x8f,0x4c,0x30,0x3c,0xf2,0x70,0x8b,0x30,0xdc,0xce,0xe0,0x0b,0x23,0x10, + 0xe4,0x4c,0xf3,0xf3,0x37,0x3d,0x02,0x2f,0xc3,0x03,0xc3,0x20,0x0d,0x27,0x2c,0xfc,0x01,0xc4,0x2f,0x8f, + 0xc2,0xbb,0xcf,0x39,0xc0,0x4c,0x80,0x38,0x0c,0xf0,0x76,0x11,0x0e,0x3f,0x88,0x7e,0xfd,0xf3,0x30,0x83, + 0x03,0xff,0x73,0xfd,0x37,0x3d,0xd3,0xff,0xb3,0x3c,0xbc,0x0c,0xd7,0x3c,0xbf,0xf1,0x06,0xcd,0xd3,0x10, + 0xcb,0xc1,0xcc,0xe3,0xdb,0xce,0x1f,0x42,0x0d,0x38,0x3b,0x30,0xf1,0xf7,0x01,0xcc,0xfd,0x3f,0xc3,0x3c, + 0x70,0xff,0x26,0xf8,0xbe,0x31,0xdd,0x33,0x08,0xbc,0x43,0xf0,0x20,0xcd,0x34,0x30,0xd1,0xf7,0x53,0x30, + 0xdc,0x73,0x39,0x10,0xe0,0xcd,0xf4,0x0d,0xbf,0x2c,0x0c,0xbc,0xdc,0x3e,0xf0,0x3e,0xbf,0x2f,0xfb,0x20, + 0xd1,0xf4,0xc7,0xd0,0x32,0x48,0xcc,0x60,0xc8,0x37,0xcd,0x07,0x0c,0x8f,0x0f,0xc2,0x2c,0x0f,0x77,0x55, + 0x3b,0x50,0xff,0x38,0xcd,0x30,0xf8,0xf0,0x8d,0xc2,0x3c,0xcf,0x32,0xf8,0xf3,0x44,0xb3,0x13,0x0f,0x0d, + 0xcf,0x39,0xf0,0x7c,0xb3,0x2f,0xc4,0xc0,0xd7,0x43,0xfc,0x73,0x48,0xf0,0x6b,0xbc,0x2c,0x00,0xf0,0x03, + 0x8f,0x02,0x1e,0x0c,0x7e,0x3c,0x70,0x33,0x33,0x73,0x1c,0x77,0x0b,0xf6,0xc0,0xc3,0x00,0xc3,0x4c,0xde, + 0xc1,0xfb,0x7c,0x83,0x74,0xbf,0x23,0x83,0x73,0xb3,0x01,0xf3,0xfd,0xa3,0x3c,0xf1,0x55,0x31,0x30,0xf8, + 0xe4,0x10,0x20,0xdf,0x34,0xbc,0x04,0x00,0xc4,0xe3,0xbf,0xf5,0xc7,0x50,0xb2,0x0c,0xb3,0xff,0xbe,0xf8, + 0x0f,0x41,0x10,0x7c,0xbe,0xac,0x10,0x14,0x0a,0xfe,0xc3,0x3e,0x00,0x04,0x0f,0x03,0x35,0x0e,0xa8,0xf4, + 0xc0,0xf0,0x04,0x33,0xf3,0xf1,0x43,0xab,0x30,0x03,0x38,0x40,0x4f,0x3f,0xcf,0x52,0xee,0xc3,0x43,0xc2, + 0x10,0x03,0xf3,0xf7,0xd7,0xee,0xe7,0x34,0xe0,0x01,0x30,0xff,0x30,0x25,0xfa,0x28,0x30,0x08,0x00,0x1f, + 0x33,0xc3,0x35,0x2e,0xec,0x03,0x0f,0xc7,0x43,0xf3,0xc0,0xfd,0x4b,0xbb,0x0c,0xdf,0xc1,0xc7,0xc9,0x80, + 0xc9,0x5b,0xbe,0xc0,0xc2,0xf4,0x00,0x2c,0xcc,0x0b,0x5f,0xa2,0x80,0x30,0x8d,0x03,0x38,0xc3,0x0f,0x17, + 0xaf,0xb1,0x3d,0x8c,0x4c,0xce,0x00,0xcc,0x85,0xeb,0xa3,0x4f,0x3e,0x10,0xc2,0xcc,0x30,0x8d,0x7a,0xbb, + 0x13,0xdf,0xc4,0x0c,0xe0,0x0c,0x3f,0x5f,0xba,0xc1,0x9f,0xfd,0x00,0x2c,0xcf,0x7f,0x17,0xe2,0xb0,0x37, + 0xfc,0x70,0x08,0xf3,0x0f,0xc5,0xff,0xac,0xcd,0xff,0x1c,0x4f,0xcf,0xc7,0xf1,0x7e,0xe8,0xf7,0x4f,0x03, + 0x40,0xf3,0xf7,0x0f,0x53,0x2a,0xe3,0x07,0x30,0xd1,0x33,0xfc,0x33,0xd4,0x3b,0xaf,0x31,0xcf,0x0d,0x1c, + 0xcf,0xc3,0x0d,0x4e,0xeb,0xf3,0x4c,0x86,0x44,0xc2,0x20,0xc3,0x57,0xfe,0xb3,0x00,0x20,0x34,0x70,0xff, + 0x3c,0xc5,0x3b,0xaf,0xc0,0x0f,0x0c,0x10,0x0f,0x8f,0xc1,0x5c,0x8b,0xfc,0xdc,0xf3,0xc1,0x01,0xfc,0xff, + 0x45,0xc8,0xa2,0x3c,0x0f,0x33,0x10,0x40,0xc3,0xf0,0x4c,0xba,0xfe,0x3c,0x33,0x00,0x10,0x77,0x0c,0xd7, + 0x33,0xae,0xff,0xcc,0xc3,0x00,0x10,0x00,0xd9,0x7c,0xfb,0xbf,0xfd,0xcd,0xc0,0x31,0xf0,0xcc,0x97,0xce, + 0x8e,0xf3,0x1c,0x07,0xc3,0x18,0x0f,0x3d,0x63,0xeb,0xb0,0xe4,0xc4,0xc3,0x00,0xf3,0xff,0x5c,0x3a,0xe8, + 0xfc,0x40,0x71,0xcc,0x0c,0xf3,0xf5,0x9f,0xbb,0x8c,0xd3,0x4c,0x0c,0x73,0x0c,0xfd,0x61,0xb8,0xbf,0xc1, + 0xdc,0x00,0xdc,0x0f,0x3f,0xd3,0x7b,0xe8,0xb0,0x01,0xc0,0x03,0x1c,0xcf,0x34,0xde,0xfa,0x38,0x34,0x30, + 0x00,0x03,0x4f,0xc1,0x37,0xbb,0xfb,0x0d,0xcd,0xc0,0xdc,0x03,0x08,0x4d,0xa3,0xba,0x0c,0x0d,0x30,0x04, + 0xc0,0x0f,0x1c,0x6c,0xaf,0x82,0x0c,0x3c,0x34,0xd0,0x03,0x07,0x18,0xeb,0xbf,0xdf,0x7c,0xc0,0x07,0x00, + 0xf4,0xdf,0x2b,0xbf,0x30,0xd8,0x30,0x00,0x03,0x3d,0x06,0x3b,0xe3,0xc3,0x03,0x30,0x04,0x1c,0xcd,0x37, + 0xdb,0xe3,0xc0,0xc3,0x20,0x00,0x77,0xcd,0x64,0x8b,0x2c,0xcc,0x0c,0x8c,0x00,0x00,0xc3,0x51,0xfe,0xf8, + 0xe7,0xcc,0xf0,0xcd,0x03,0x0c,0x14,0x6f,0x8a,0x30,0x8f,0x7d,0xcf,0x4d,0xc0,0x14,0x0e,0xbf,0xc8,0xfc, + 0x4f,0xc0,0xc0,0x30,0x05,0x4f,0xbe,0xf8,0xe3,0x0c,0x37,0x00,0x30,0xc5,0x02,0xef,0xbf,0xfc,0xcc,0x01, + 0xc0,0x00,0xf5,0x43,0xb8,0xe2,0x23,0x33,0x70,0x70,0x0c,0x30,0x40,0xb8,0xec,0xbc,0x3c,0x0d,0xc0,0x30, + 0xc3,0x50,0xbf,0x88,0xb3,0xf0,0x30,0x70,0x0c,0x0f,0x53,0x2f,0xfe,0x2c,0xf0,0xc0,0x01,0xc0,0xc3,0xd5, + 0xe3,0x83,0x88,0xc3,0x31,0xdc,0x0c,0x33,0xc5,0xfa,0xf0,0xef,0xf7,0x03,0x71,0xc0,0xcc,0xc1,0x3b,0xbc, + 0x8b,0xcc,0x30,0x07,0x07,0x0c,0xf1,0x7e,0xbf,0xfe,0xf3,0x00,0xc4,0x00,0x30,0xcd,0x72,0xe3,0xf2,0xfc, + 0x0c,0x01,0xc7,0x30,0xcf,0x5f,0xbb,0x0f,0xbf,0x70,0x00,0x00,0x33,0x33,0x5f,0xe8,0xc3,0xbc,0x00,0x30, + 0x71,0xf0,0xf3,0x43,0xb8,0xf3,0xb2,0x00,0x33,0x77,0x0c,0xcf,0x04,0xbb,0x8f,0x2f,0x30,0x00,0xdc,0x4c, + 0xcf,0x04,0xfa,0x23,0xef,0xf0,0x0c,0x01,0xc7,0x30,0xf5,0x3e,0xef,0x2f,0xbc,0x37,0x00,0x10,0xc3,0x34, + 0x02,0xf8,0xfe,0x23,0xc0,0xc0,0x00,0x03,0xc1,0x73,0xef,0x3f,0xbf,0x00,0xc0,0x14,0xc3,0xc0,0x56,0x38, + 0x3c,0xec,0x30,0x3d,0xc1,0xc3,0xf3,0x40,0xe2,0xcf,0xff,0xf7,0x1f,0x0d,0xc0,0xff,0x40,0x3f,0xb3,0x8e, + 0xf3,0x37,0x00,0x00,0xcf,0x04,0x7f,0xfe,0x23,0x88,0xdc,0x0d,0xc1,0xf3,0x34,0x73,0xbf,0xf8,0x8f,0x34, + 0xc7,0x1c,0x03,0xc1,0x1f,0xfb,0xfe,0xff,0xc0,0x31,0xc1,0xcc,0x30,0x77,0xff,0xfe,0x2f,0xf3,0x0c,0x70, + 0x4c,0x30,0x4c,0x0b,0x3b,0x2f,0x8c,0xcc,0x00,0x03,0x7c,0x4c,0x08,0xff,0x88,0xff,0x0c,0x31,0xc0,0x30, + 0x43,0x0e,0x3b,0x3b,0x33,0xcc,0x00,0x03,0x70,0x13,0x3c,0xbf,0x88,0xfc,0x3f,0x71,0xf0,0x0c,0x00,0xcf, + 0xce,0xff,0xc8,0xfc,0x00,0x1c,0x73,0x43,0x0f,0xfe,0x38,0xff,0x0c,0xc0,0x00,0x31,0xd3,0xcf,0xff,0x8f, + 0xcf,0x37,0x00,0xc0,0xdf,0x35,0xcb,0x33,0xf3,0x30,0x3c,0x00,0xf0,0x0c,0x34,0xcb,0x98,0x7e,0x00,0xcc, + 0x87,0xf3,0x31,0xe7,0xf4,0x8f,0x1b,0x1e,0x7c,0xdf,0xf7,0xde,0x07,0xcd,0xfe,0x70,0xbc,0x06,0x33,0x1f, + 0x63,0x38,0x37,0xf5,0xf2,0x3f,0x10,0xec,0x1d,0xf2,0xc0,0x82,0x37,0x8d,0x13,0x3e,0xcc,0x3e,0xcd,0x13, + 0x3c,0x0f,0x30,0x08,0xe4,0xd4,0xe2,0xbf,0xf3,0x1c,0x07,0x7c,0xcf,0x30,0x14,0xc7,0xee,0x1c,0x7e,0xeb, + 0xec,0x34,0x10,0x03,0xc3,0x8d,0x70,0xef,0xaf,0x30,0x10,0x00,0x3c,0xff,0x31,0xd3,0xaf,0xff,0x10,0x40, + 0x0c,0xf3,0xf9,0x93,0x0e,0xfb,0xfc,0x4d,0x00,0xcc,0xcc,0xf3,0x5c,0x2b,0x2c,0xf4,0x77,0xc0,0xf3,0x0f, + 0xcd,0x73,0xeb,0xb0,0xc4,0xd3,0xc3,0x0c,0xcf,0xf5,0xc2,0xbe,0xcc,0x13,0x0c,0x0c,0x0c,0xbc,0xd7,0x4a, + 0xff,0xf1,0x48,0x0c,0xc1,0xfc,0xff,0x5d,0xea,0xec,0x04,0x30,0x81,0xc0,0xfe,0xc1,0x77,0xef,0xe0,0x03, + 0x36,0x01,0xc3,0xcf,0x01,0x36,0xb8,0x83,0x03,0x83,0x00,0x0f,0xc3,0x35,0xce,0xb2,0xc3,0x33,0xdc,0x07, + 0xcf,0x33,0x15,0x8e,0xfe,0xdc,0xf3,0xdc,0x1c,0xcf,0x03,0xd4,0x8e,0xbf,0xdf,0xc3,0xc4,0x03,0x0f,0x00, + 0x94,0x8e,0x8f,0xc0,0x82,0x04,0xc3,0x33,0x03,0xf5,0xfe,0xa0,0xf0,0xe6,0x01,0x30,0xfd,0xc0,0xfd,0x7f, + 0xa8,0x23,0x0b,0x30,0x4c,0x3f,0x03,0x3f,0x52,0xfa,0xcf,0xce,0xc0,0xd0,0xcc,0xc4,0xcf,0xc5,0xef,0xa0, + 0xcc,0xec,0x00,0x7c,0x30,0x73,0xc9,0x4b,0x8a,0x0f,0xfe,0xc7,0x00,0x80,0x01,0xf3,0xd4,0xe8,0xa0,0x3f, + 0xec,0x1d,0x0f,0x00,0x1c,0xf3,0x5e,0xba,0xf7,0xff,0xb4,0x01,0xf3,0x4d,0xcf,0x31,0x7a,0x2e,0x02,0xff, + 0xc1,0x37,0xcd,0x00,0x3c,0xc5,0x3b,0x28,0xde,0xff,0xc0,0x03,0xc0,0x00,0x23,0x35,0x6f,0x22,0x1e,0x3f, + 0xf4,0xc3,0x30,0x00,0xcf,0x01,0x4a,0x3e,0xdc,0xbc,0xf1,0xdf,0x30,0x00,0x32,0x03,0x53,0xa3,0xe1,0xfb, + 0x3c,0x1c,0x33,0x00,0x33,0xf0,0x05,0x6b,0x3e,0x03,0xa3,0x31,0xc3,0x30,0x70,0xcf,0xc3,0x05,0xe8,0xcb, + 0xd2,0xe0,0x34,0x0c,0xc0,0x1c,0xfc,0xc3,0x35,0x7a,0x32,0xc7,0xef,0x01,0x00,0xcc,0x40,0xf3,0xf3,0x08, + 0x52,0xb0,0xbc,0x7b,0xf0,0x40,0x0c,0xc4,0x33,0xcf,0x0f,0x25,0x0a,0xce,0xf0,0xef,0x01,0x00,0x30,0x07, + 0x3c,0xfc,0x32,0xf5,0x7a,0x3f,0x31,0xef,0x04,0x00,0x33,0x40,0xcf,0x3c,0xcc,0xb5,0x7b,0xf3,0xf0,0x3b, + 0xc4,0x00,0x0c,0x04,0x3c,0xc8,0xf3,0xbb,0x15,0xef,0x3c,0xc7,0xef,0x40,0x00,0xcc,0x40,0xfc,0xf3,0x3f, + 0xbf,0x54,0xa3,0xf3,0xdf,0xbc,0x40,0x00,0xc0,0x1c,0xf3,0x3f,0x3f,0xa3,0x15,0xbf,0xcf,0xc0,0xb8,0xd0, + 0x00,0x30,0xd0,0xf3,0xcf,0xcf,0x2e,0x31,0x5f,0xb3,0xcf,0x0f,0xbd,0x00,0x03,0x31,0x03,0x3c,0xc8,0xce, + 0xff,0x21,0x5e,0xf3,0xf0,0xcb,0x80,0x70,0x03,0x00,0x7c,0xcf,0x33,0xff,0xe0,0xf1,0x5e,0x8f,0xcc,0x3b, + 0xf0,0x74,0x0c,0x00,0x0c,0xf3,0x33,0xfb,0xff,0x3e,0x55,0xbc,0xfc,0x32,0xfc,0x01,0x03,0x00,0x70,0x3c, + 0xf3,0xce,0x23,0xcc,0x81,0x5e,0xf2,0x30,0x2f,0xc0,0x10,0xc3,0x40,0x0c,0xf0,0xcf,0xfb,0x3f,0x23,0xf5, + 0x5b,0x38,0xcc,0x2f,0x30,0x10,0xc0,0x77,0x0f,0x33,0xcc,0xff,0x3f,0x3c,0x25,0x4b,0xfb,0x0f,0xe3,0xf1, + 0x1c,0x00,0x04,0xcc,0xcf,0xcf,0xf3,0xf3,0xc8,0xd5,0x4b,0x2f,0x33,0xb3,0xf4,0x00,0x4c,0x1c,0xc3,0xfc, + 0xff,0x3f,0xc3,0xc7,0x15,0x4c,0xe8,0xfb,0xff,0xc0,0x05,0x01,0x0c,0x02,0x3f,0xf8,0xfc,0xf3,0x00,0xd5, + 0xc0,0xef,0x2b,0x8b,0x3c,0xc4,0x04,0x71,0xc3,0x32,0x3f,0x8f,0xfc,0xcc,0x14,0xc1,0xe0,0xef,0xf8,0x8f, + 0xc3,0x00,0x00,0x7d,0xcc,0xcf,0xcf,0xff,0xfc,0xd5,0xf0,0x8d,0xb3,0x3f,0xd8,0x03,0x00,0xc0,0x33,0x3c, + 0xf8,0xff,0xf2,0x33,0x55,0xff,0x86,0xcc,0xfc,0xc0,0x70,0x43,0x1c,0xc3,0xcf,0x23,0xff,0x3f,0x35,0x7d, + 0xff,0x3a,0xcb,0x33,0x87,0x00,0x71,0x30,0xc3,0x3e,0x3f,0xfc,0x8c,0xd5,0xf3,0xb0,0xac,0xec,0x3c,0x00, + 0x40,0x1c,0x30,0xcc,0x8f,0x3f,0xcc,0x25,0x30,0x2f,0xca,0x3e,0x0f,0x00,0xc7,0x00,0x00,0x3c,0x33,0xe2, + 0x0e,0x3f,0x56,0x0f,0xcf,0xbf,0xf3,0xf1,0xc0,0x71,0xdc,0x0c,0xc3,0xff,0x3c,0x8c,0xd4,0xc3,0x8f,0xe8, + 0xff,0x3c,0x7c,0x1d,0xdc,0x00,0xcc,0xf3,0xcf,0xfc,0xd5,0xcc,0x23,0xe8,0xbf,0xf8,0x0c,0x10,0x04,0xc7, + 0x30,0xcc,0xfc,0xfc,0xc5,0xe3,0x03,0xf0,0xcc,0xcf,0x0c,0x3f,0x0c,0x3c,0xc3,0x3c,0x33,0x0c,0xcc,0xc3, + 0x3c,0x33,0x30,0x3c,0x33,0xc0,0x3f,0x03,0x30,0xc3,0x3c,0x0c,0x30,0xf0,0x00,0xcc,0x3c,0x00,0xcc,0xc0, + 0x30,0xc0,0x30,0x30,0xf0,0x0c,0x30,0x33,0x00,0xcc,0x0f,0x3c,0x00,0x33,0x00,0x0c,0xc3,0xc0,0x03,0x30, + 0xc0,0xcf,0x00,0xcf,0x00,0x33,0xc0,0x30,0x0c,0xc3,0x03,0x3c,0x03,0x3c,0x00,0xcc,0x0c,0x0c,0x0c,0x0c, + 0x0c,0x03,0x00,0xc3,0x03,0x3c,0x00,0xcc,0x30,0x30,0x0c,0xc0,0x0f,0x00,0x0c,0x3c,0x00,0xf0,0x30,0xcc, + 0x00,0xcc,0x03,0xcc,0x03,0xc0, +}; +static constexpr VoiceClip shuttingDownClip = { + shuttingDownData, sizeof(shuttingDownData), 7461, 8000, VoiceCodec::G72616 +}; +// "Restarting" +static const uint8_t restartingData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf2,0xaa,0xac,0x40,0x04,0x03,0x0f,0xbf,0xfe,0x54,0xfc, + 0xee,0xb3,0xfc,0x10,0x41,0xc3,0x0f,0x88,0xff,0x15,0xf0,0xee,0xff,0x8c,0x01,0x10,0x0d,0xc8,0xff,0x23, + 0x05,0x20,0x2f,0x8e,0x3d,0xc0,0x77,0x0c,0xfc,0xbc,0x8c,0xc5,0x20,0x6c,0xff,0xf0,0xd1,0x34,0xc0,0x8f, + 0xff,0xf0,0xf5,0x61,0xe3,0x63,0x3c,0x00,0xd0,0xf7,0xf3,0x8f,0x3c,0x31,0x6d,0x2c,0x28,0xfc,0x31,0x10, + 0xd3,0xcf,0x8e,0x33,0xc0,0x49,0x38,0xe8,0xf8,0xc1,0xc4,0x0c,0x0e,0x2c,0xff,0x30,0x4f,0x79,0xe8,0xec, + 0xf1,0x01,0x1c,0x33,0xe3,0xfc,0x80,0x1f,0x48,0x28,0xef,0xe4,0xdd,0x00,0xc3,0xfb,0xf2,0x33,0x12,0x5b, + 0x6c,0xbf,0x20,0xd0,0x04,0xc2,0x3f,0xff,0x30,0xd7,0xdf,0x68,0xef,0xe7,0x07,0x40,0xdc,0xff,0xff,0x33, + 0x04,0xd2,0x0b,0xec,0xe0,0xd0,0x10,0x0c,0xff,0xff,0xcc,0xc5,0x37,0x9e,0x3c,0xbd,0xc3,0x47,0x70,0x3f, + 0xf3,0xfc,0x0c,0x71,0xf6,0xcb,0x2f,0x31,0xd0,0x40,0x33,0xff,0xf3,0xc3,0x5c,0x60,0x8e,0xe2,0x3c,0x04, + 0x10,0x33,0x3f,0xfc,0xcf,0x47,0x18,0x23,0x8b,0xf3,0x00,0x40,0x03,0x3f,0xff,0xcc,0x35,0x12,0x08,0xef, + 0xff,0xdc,0x77,0x70,0x3f,0xcf,0xf0,0x3d,0x00,0x9e,0x38,0x88,0xf0,0x10,0x07,0x30,0x8c,0xfc,0x0f,0x4d, + 0x20,0x8b,0xbf,0xfc,0x71,0x00,0x0f,0x3c,0xfc,0x0d,0xc4,0xdf,0x2f,0xef,0xe3,0x0c,0x1f,0x70,0xcc,0xc3, + 0xc0,0xdc,0x47,0x83,0x8e,0x2f,0x38,0x30,0xc0,0xc3,0x1f,0x00,0x30,0x59,0xf3,0x20,0x82,0x32,0xd8,0xcf, + 0x3d,0xcc,0xe7,0x03,0x93,0x7f,0x0d,0x23,0x34,0xb0,0xc6,0xcb,0xdf,0x38,0x38,0x34,0xf4,0xc7,0x10,0xcb, + 0x7f,0xf9,0xe3,0x33,0x80,0x13,0x43,0x3c,0x3e,0xdc,0xef,0x0d,0xbd,0x43,0xb4,0x1e,0xc0,0x0e,0x3c,0x0b, + 0x63,0x38,0x80,0x73,0x1c,0x00,0x2f,0x3c,0xf0,0xfc,0x87,0x33,0xfb,0x47,0x3d,0xc0,0x2d,0xfd,0xe3,0x75, + 0x80,0xf6,0x0b,0xcf,0x6f,0xcd,0xcf,0x03,0x58,0xdf,0x2c,0x8f,0xb4,0x38,0x0c,0xef,0x31,0x80,0xf7,0xb3, + 0xde,0xcd,0x7b,0xd4,0x37,0xcf,0xfe,0x08,0x0b,0x04,0x3c,0xc3,0x8e,0x32,0xcc,0x0f,0x01,0x0b,0xdc,0xfd, + 0x3e,0x31,0xff,0xc7,0xe2,0x13,0x02,0x70,0x0f,0x3c,0x73,0x03,0xb3,0xb1,0x80,0x02,0xc4,0x02,0xc7,0x3e, + 0x1c,0x0f,0x37,0x3c,0xd3,0x34,0x0a,0x34,0x28,0x10,0xf7,0xcc,0xce,0x3f,0xcb,0xc3,0x71,0x1d,0x3c,0x3c, + 0xbf,0xcf,0x3d,0xcc,0x73,0x4c,0xac,0x0b,0x8d,0x03,0x0c,0xce,0x03,0x3b,0xf0,0xbc,0xf7,0xcd,0xc3,0x0d, + 0xb8,0x08,0x8d,0xff,0x0c,0xcf,0x43,0xcb,0xbb,0x2f,0xcd,0x0c,0xcc,0xcc,0xf8,0x00,0x7c,0x40,0xe3,0x2f, + 0xcd,0x33,0x3c,0xfc,0x37,0x0d,0x10,0x30,0x0c,0x00,0x0b,0x6c,0x7b,0xf0,0xff,0xcf,0x00,0x03,0x00,0x30, + 0xc4,0xcf,0xcc,0x83,0xc0,0x8c,0x30,0xe3,0xbf,0xcc,0xfc,0x3c,0x50,0x34,0x0f,0x30,0x0b,0xff,0xfb,0xf3, + 0xec,0x00,0x13,0xd0,0x4f,0xc8,0xf3,0xf3,0xb0,0x23,0xcc,0xc7,0x13,0xc8,0x30,0xbc,0xc7,0x8c,0xd2,0xc3, + 0x4f,0xe3,0x76,0x0c,0x93,0xf0,0xd3,0x24,0xc8,0xf3,0x33,0xc7,0x4d,0xbb,0x8c,0xd7,0x3c,0x07,0x7f,0xb1, + 0x0f,0x23,0x48,0x32,0x40,0xc0,0x4d,0xfa,0x0c,0xc1,0x0b,0xf7,0x70,0x8c,0x2c,0x09,0x33,0x78,0x41,0x03, + 0x20,0x2f,0x33,0x43,0x4c,0x3e,0xc2,0x03,0xd3,0x77,0x8f,0xe6,0xb0,0x44,0xc4,0xb3,0xcb,0xac,0xfc,0x35, + 0x10,0x7c,0x0f,0xef,0xb5,0x33,0xab,0xfc,0x40,0x4f,0x00,0x0c,0x3f,0x8f,0xc0,0xf5,0x7f,0xaf,0xf0,0x43, + 0x4f,0xc0,0xd3,0xcf,0xbc,0xc1,0xf1,0x4b,0xeb,0x3c,0x10,0xc3,0xf1,0xc0,0xf8,0xff,0x1c,0xcd,0x5f,0xeb, + 0x83,0x10,0x20,0x30,0x4f,0x3f,0xc3,0x03,0xfc,0x52,0xfa,0xf0,0xc4,0x3f,0x70,0x03,0xff,0xf0,0x30,0xbf, + 0x57,0x8b,0xbd,0xcc,0x3f,0xd3,0x70,0xe3,0xcc,0x33,0xcf,0x14,0xbe,0xec,0x4c,0x33,0xc4,0x0c,0xff,0x03, + 0x32,0xf0,0x15,0xef,0xef,0x42,0x33,0x34,0x7c,0xcf,0x00,0xf3,0x3c,0x05,0x7b,0xfe,0xd7,0xf3,0x70,0x4f, + 0xf0,0xf0,0x3f,0xc3,0xdd,0x5b,0xff,0x8d,0xfc,0xc0,0xd3,0xfc,0x02,0x0b,0x20,0x3c,0xd5,0xa3,0xbf,0x42, + 0xc3,0x01,0x38,0xcc,0xf4,0xbc,0xc3,0xc5,0x7a,0x2f,0xc4,0xf0,0x04,0x12,0x33,0x0c,0x3b,0x0c,0x33,0x56, + 0x8b,0xf0,0x48,0xcc,0x04,0xe3,0x30,0x0f,0xf0,0xc0,0xd5,0xe8,0xec,0x13,0xf0,0x84,0x0f,0x3f,0x03,0x3c, + 0xf0,0x1c,0x52,0x8e,0xc0,0x7c,0x3f,0x40,0x33,0xfd,0xcc,0xff,0xc1,0xd5,0xec,0xac,0xc3,0xc3,0x81,0x00, + 0xcf,0xdc,0xc3,0xfc,0x0c,0x56,0xfe,0xb0,0x0c,0x7f,0x13,0x4c,0xfc,0xcc,0x3f,0xf3,0xc5,0x7b,0x2b,0xc0, + 0x34,0xe1,0xc0,0x73,0xf3,0xc0,0xf3,0xcf,0x15,0xec,0xa8,0xc3,0x13,0x80,0xc4,0x0f,0x3f,0xdf,0x33,0xf3, + 0x57,0x8e,0xa3,0xc0,0x4f,0x03,0x17,0x0c,0xff,0x3c,0x3f,0xfc,0x56,0x0a,0xe3,0xc0,0x70,0x33,0x40,0x03, + 0xcf,0xf0,0xc0,0xfd,0x5f,0x7a,0xfb,0xcd,0xc0,0xcd,0x31,0x0c,0xff,0xff,0xc3,0xdd,0x4c,0x7a,0xfa,0x33, + 0x10,0x34,0xc1,0xf0,0xfc,0xff,0xff,0x3d,0x58,0x78,0xfe,0x3c,0x07,0x1c,0x37,0xc0,0xc0,0xc3,0x3c,0xed, + 0x4d,0x0b,0xeb,0xbb,0x30,0x10,0x40,0x03,0xcf,0xcc,0xc0,0xc1,0x75,0xcc,0xef,0xbb,0xef,0xcc,0x00,0x00, + 0x00,0xc3,0x0c,0x25,0x27,0xf3,0x8e,0x3c,0x98,0x33,0xdc,0x37,0x0d,0xc3,0x60,0xc5,0x9e,0xf3,0x9f,0xcf, + 0x18,0x33,0x4c,0xcc,0x60,0xcc,0xe0,0x07,0x1b,0x8e,0xcb,0x0f,0x4c,0x0c,0x71,0xf0,0x30,0xf3,0xcc,0x97, + 0x7e,0xfa,0x2c,0x0f,0x71,0x30,0x31,0xc3,0xf0,0xff,0xce,0xd4,0x7b,0xe8,0xbc,0x01,0xc4,0x30,0xd3,0xcc, + 0xcf,0xff,0x3c,0x51,0x2b,0xec,0xb3,0x10,0xd0,0x03,0x1f,0x3f,0x3c,0xe3,0x21,0x74,0xee,0xe2,0xcc,0x13, + 0x1c,0x00,0x30,0xfc,0xf2,0xcc,0xfd,0x45,0xfe,0xb2,0xfc,0x43,0x10,0x0d,0x30,0xc3,0xff,0xce,0x3d,0x74, + 0xfe,0xa2,0xcf,0x13,0x71,0x33,0x77,0xc0,0xff,0xcf,0xf3,0x5d,0xff,0xae,0xcf,0x00,0x0d,0x30,0x00,0xc0, + 0xcb,0xce,0xfc,0x14,0x78,0xef,0xb3,0xdc,0x1f,0x70,0x00,0x37,0xcc,0xff,0x3f,0x21,0x07,0x8b,0x8b,0x3d, + 0x00,0xc7,0x00,0x1c,0xcc,0xfc,0xf3,0xcf,0x97,0x48,0xeb,0xf2,0xd0,0xcc,0x7c,0xd1,0xc3,0x08,0xff,0x33, + 0xfc,0x5d,0x23,0xae,0xcc,0x71,0x33,0xd3,0x40,0x0c,0xe3,0xcf,0x03,0xf8,0x75,0xce,0xba,0x3d,0xc1,0xcf, + 0x1c,0x40,0x06,0xcc,0x8c,0x23,0xff,0x5d,0x02,0xbb,0x8c,0x34,0xc2,0x31,0x1d,0xc3,0xfc,0xfc,0x3f,0xfe, + 0x11,0x73,0xba,0x3f,0x04,0xf3,0x0d,0x04,0x33,0x3c,0xcc,0xce,0xfc,0x84,0x5c,0xee,0xcb,0x1c,0x33,0x9c, + 0x44,0xc0,0xfc,0x0f,0x3e,0xf3,0xcd,0x45,0x8f,0xe8,0xf7,0x0c,0x20,0xd0,0x70,0xfc,0x33,0x0f,0xbc,0xf3, + 0x44,0x5c,0xa2,0xfc,0x03,0x33,0xc1,0x07,0x0f,0xf7,0x03,0xfb,0xe3,0x08,0x5d,0xc2,0xfb,0xb3,0xf3,0xf9, + 0x07,0x4d,0xcf,0x73,0x0f,0xf3,0x3c,0xf1,0x74,0xda,0x2f,0xcf,0x2f,0x01,0x07,0x7c,0x03,0x7f,0xce,0x33, + 0xf3,0xf5,0x53,0x2b,0xbe,0xff,0xbc,0x10,0x4d,0xc0,0x0c,0xff,0x3c,0xfe,0x3f,0xd5,0x1c,0xe2,0xcb,0x2f, + 0x8c,0x40,0x01,0xc0,0x3c,0xff,0x0b,0x3f,0xcd,0xc5,0x5c,0xe3,0x8f,0xef,0x83,0x40,0x00,0x00,0x33,0xcf, + 0x2c,0x8f,0x0c,0xd5,0x1c,0xe2,0xcb,0x23,0x83,0x71,0xc0,0x4c,0xc2,0x3c,0xf2,0x3c,0x33,0x05,0x4f,0x2a, + 0xce,0x2f,0x80,0x1d,0xc1,0xdc,0xcf,0xdf,0xff,0x8c,0x3c,0xc1,0x53,0xef,0xb2,0xef,0xb4,0xc1,0xf4,0x10, + 0xf3,0xc3,0xff,0xff,0x3f,0x35,0x53,0x3f,0xb2,0xfb,0x8c,0xc0,0x34,0x00,0x0c,0xc3,0xe3,0x8f,0xf3,0xcd, + 0x57,0x3f,0x2f,0xb8,0xe0,0x30,0x04,0xdc,0x0c,0xcf,0xcf,0xf3,0xfc,0x0d,0x54,0xff,0x22,0xef,0xc8,0x0c, + 0x1d,0xc7,0x30,0x3f,0x3f,0xcf,0xf0,0xf7,0x57,0x3f,0xce,0x2e,0xcc,0xcc,0x07,0x70,0x0c,0x3f,0x3f,0x8f, + 0xcf,0x30,0x55,0x23,0xf7,0xe3,0x83,0xcc,0xd0,0x00,0x03,0x0f,0x38,0xfe,0xcc,0xfc,0x15,0x7f,0xf7,0xfb, + 0xf3,0xcc,0xc4,0xdc,0x03,0x0f,0x3f,0xff,0xff,0xc0,0xd5,0x58,0xf0,0xfb,0xf3,0xc8,0x30,0x10,0xc7,0x00, + 0x83,0xfc,0x8f,0xf3,0x35,0x0e,0x0d,0xf8,0xbc,0xce,0x30,0x00,0x30,0x00,0xcf,0x3c,0xbf,0x8f,0xc5,0x4b, + 0x0c,0xce,0xff,0x0f,0xcc,0x07,0x00,0x00,0x32,0x38,0xff,0xec,0x35,0x48,0xfd,0xce,0x3f,0x33,0x3c,0x10, + 0x00,0x0c,0x02,0x3f,0x3e,0xc8,0xd6,0x33,0x0f,0x30,0xf0,0xf0,0xf3,0x0f,0x30,0xcc,0xcc,0xc3,0xc3,0x30, + 0xcc,0xc3,0x3c,0x33,0x30,0xf0,0xcf,0x03,0xcc,0x3c,0x33,0xc0,0xc3,0xc0,0xcf,0x03,0x3c,0x0c,0xc0,0xf0, + 0x0c,0x30,0x33,0x00,0xcc,0x0f,0x30,0x00,0xc0,0xc3,0x3c,0x03,0xc3,0x30,0x30,0x30,0xc0,0x3c,0xc0,0x33, + 0x03,0x03,0x00,0xcf,0x00,0x0c,0x30,0x3f,0x30,0x00,0xcc,0x0c,0x33,0x00,0x30,0x3c,0x00,0xc3,0x30,0x03, + 0xc3,0x00,0xcf,0x00,0xcc,0x0c,0x00,0x3c,0x30,0x0c,0xc0,0xf3,0x00,0x30,0x3c,0xc0,0x0c,0x0f,0x30,0x0c, + 0x0c,0xf0,0x03,0x03,0x00,0xc3,0x00, +}; +static constexpr VoiceClip restartingClip = { + restartingData, sizeof(restartingData), 5866, 8000, VoiceCodec::G72616 +}; +#ifdef HAS_DRV2605 +// "Sound and vibration" +static const uint8_t alertsSoundVibrationData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x5d,0x62,0x84,0xcf,0xb0,0x7f,0x18,0x0e,0x38,0x4f, + 0xec,0x04,0x83,0xc0,0xd8,0xe7,0x3c,0x80,0x73,0xbd,0xf3,0x7c,0x8f,0x7f,0x5f,0x33,0x7e,0xdf,0x30,0x70, + 0xdc,0x2e,0x0f,0x08,0x2c,0xd3,0x83,0xdf,0xf7,0x32,0xbf,0x53,0x0b,0x03,0xf8,0x40,0xec,0xc7,0xcf,0xc4, + 0x34,0x3e,0xb0,0x5f,0xdc,0x73,0xf1,0xf7,0x70,0x83,0xf7,0x1c,0xcb,0x7f,0x0c,0xbf,0xc3,0xc3,0xdf,0x02, + 0x30,0x0f,0xf0,0x77,0x02,0xf0,0xf9,0x2f,0xfc,0x1b,0xdc,0x77,0x3d,0x3c,0x22,0xf3,0x4f,0x0f,0x73,0x31, + 0xf1,0xb1,0x32,0xf4,0x03,0xb4,0x32,0xc0,0x32,0x33,0xc3,0xc7,0xfc,0xc1,0xc7,0xf1,0x1c,0x24,0x48,0xaf, + 0x73,0xcf,0x07,0xe0,0x81,0xcf,0xd0,0xc2,0x80,0xfa,0x33,0xdc,0xed,0x32,0x3b,0xc2,0xf6,0xc0,0xfb,0xf7, + 0xca,0x07,0x30,0xc2,0xf6,0xef,0x30,0xf0,0xfc,0x43,0xec,0x03,0xe3,0x02,0x32,0x4e,0x0c,0x7b,0xbd,0xf2, + 0xf0,0x93,0x27,0xcf,0x23,0xf1,0x33,0x70,0xfd,0x0c,0xf3,0xc1,0xfd,0x20,0x7f,0xb0,0xf3,0xa0,0xff,0x80, + 0xf2,0xbf,0x7a,0xc9,0xc2,0xf0,0x8c,0xe7,0xcc,0xd0,0x7c,0x7d,0xee,0xf7,0x38,0xf2,0xd0,0x02,0xcf,0xce, + 0xf0,0x4b,0xd9,0xf3,0xf0,0x80,0x26,0xcc,0xc2,0x35,0x0f,0xc7,0x3f,0xc0,0x6c,0xf1,0x2d,0x75,0xbf,0xd4, + 0xc0,0x1e,0xfd,0xfc,0x35,0xcd,0x33,0x88,0xfc,0x6c,0xd1,0x3f,0xf0,0x00,0x3f,0xcb,0x97,0x38,0x1f,0x7f, + 0x51,0x28,0x43,0xb0,0x44,0xc8,0x02,0xdf,0xde,0x37,0x10,0x02,0x40,0x3a,0xcc,0x71,0x32,0x20,0xfc,0xee, + 0xc1,0xd3,0x6c,0x0b,0x3f,0x78,0xd1,0x77,0xf9,0xfe,0x23,0xdc,0x2e,0x33,0x83,0xd7,0x44,0x8f,0x32,0xfd, + 0x13,0x53,0xda,0xcf,0x71,0xc8,0x3c,0x3f,0xbf,0x14,0x7d,0x05,0x44,0xea,0xeb,0xec,0xb0,0x11,0x0d,0x0c, + 0xc0,0xfd,0x4f,0xeb,0xbc,0xcc,0x0c,0x01,0x00,0x3f,0x3f,0x54,0xea,0x3f,0x00,0x33,0x10,0x53,0x3f,0xce, + 0x17,0x3a,0xff,0x00,0xdc,0xc4,0x10,0xcf,0x8c,0xc5,0x3e,0xa3,0xc0,0x30,0xf1,0x04,0x3c,0xb3,0xcd,0x48, + 0xbb,0x3d,0x33,0x3c,0x40,0x0f,0x23,0x0f,0x52,0x3a,0x3c,0x02,0x0f,0x10,0x02,0x0f,0x37,0xd7,0xfa,0xb3, + 0xc4,0x8c,0xc4,0x0c,0xf3,0xc0,0xe5,0xf8,0xac,0xcd,0x23,0x0d,0x0c,0x3f,0x0c,0x3d,0x4e,0xeb,0x33,0x4b, + 0xdc,0x40,0xcf,0xc7,0x0f,0x56,0xee,0xf0,0xd2,0xf0,0x04,0xf3,0xcd,0x3c,0xd4,0xeb,0xa0,0x23,0xf8,0x04, + 0x09,0xc3,0x4c,0xf5,0x2b,0xe8,0xcf,0x3b,0x10,0x02,0x00,0xc0,0xfd,0x4a,0xfa,0x03,0xf2,0xc0,0x00,0xf0, + 0x00,0x38,0x5e,0xcb,0xf7,0xf3,0xf1,0x0d,0xcf,0x4c,0xc2,0x52,0xb3,0xb1,0xf8,0xc9,0x03,0x03,0xdd,0xf3, + 0xd4,0xa8,0xec,0x0b,0xcf,0x10,0xc3,0x31,0xcf,0xd5,0xeb,0xf8,0x02,0xf3,0x04,0x30,0x0d,0x03,0xc5,0x2b, + 0xee,0x1f,0x8c,0x34,0x0c,0xc3,0x03,0xf5,0x7b,0xef,0x93,0xe3,0x31,0x03,0xc3,0x00,0xf5,0x7b,0xb2,0xdc, + 0xec,0x37,0x43,0x30,0x00,0xf5,0x0a,0xfe,0x37,0xf8,0x30,0x03,0xcc,0x00,0xf5,0x7e,0xf2,0x30,0xef,0x37, + 0x03,0x30,0x07,0x35,0x3a,0xce,0x30,0xef,0x00,0x0c,0x30,0x77,0xc5,0xfb,0xcf,0xc3,0xef,0x10,0x03,0x30, + 0x53,0x14,0xeb,0x3f,0x33,0xec,0x07,0x03,0x0c,0x43,0x50,0xab,0x3c,0xcf,0xbc,0x10,0x0c,0x30,0x71,0x42, + 0xa3,0xf3,0x3e,0xf0,0x40,0xc3,0x37,0x71,0x7a,0xb3,0xcc,0xfa,0x31,0x0c,0x30,0xd0,0x14,0x2a,0x33,0xf3, + 0xb8,0xc4,0x30,0xc0,0x07,0x52,0xaf,0x3c,0xcb,0xb0,0x1c,0x33,0x00,0x75,0x7a,0xe0,0xf0,0xbe,0xc0,0x4c, + 0x30,0xdd,0x17,0xaf,0xf3,0xc2,0xe3,0x00,0x30,0xc0,0x11,0x7b,0xff,0xcc,0xfb,0xcd,0x37,0x33,0x10,0x53, + 0xbf,0xfc,0xcf,0xb3,0x01,0x30,0x31,0x05,0x7b,0x3f,0xc3,0xec,0xf0,0x03,0x00,0x1d,0x5f,0xff,0xe0,0xc8, + 0xff,0xc0,0xf1,0xcd,0xd4,0x20,0xbf,0x0b,0x3f,0xf0,0xcc,0x7c,0x71,0x4f,0x3b,0x88,0xbc,0xe0,0xc0,0xdc, + 0x00,0x50,0xf3,0xa3,0xbe,0x3f,0x03,0x07,0x00,0x05,0xfc,0x2e,0x3b,0x82,0x30,0x31,0xc7,0x00,0x5b,0x0b, + 0xe2,0x23,0xcf,0x70,0x1c,0x00,0x13,0xf3,0xb3,0x88,0x39,0xc3,0x70,0x00,0xf5,0xb3,0xec,0xf8,0xcf,0x37, + 0xdc,0x0c,0x61,0x3f,0xfe,0x3f,0xcc,0xf7,0x01,0xc0,0xdc,0x73,0x8e,0x82,0x33,0xf0,0x31,0x37,0x00,0x13, + 0xff,0x88,0xbc,0xfc,0xc0,0x1c,0x70,0x10,0xcf,0xef,0x88,0xf8,0x30,0xc1,0xdc,0x04,0x0c,0xf8,0xef,0x8f, + 0xcc,0xc0,0x00,0x00,0x5c,0xcb,0x3b,0x38,0xf3,0xdc,0x37,0x30,0x00,0x3f,0xbf,0xef,0xcf,0x04,0xc7,0x70, + 0x31,0x33,0x2f,0xff,0xfc,0x33,0x47,0x00,0xc3,0x56,0x33,0x82,0x3f,0xcc,0xc0,0x07,0x07,0xdd,0xf3,0xff, + 0xe3,0x83,0xcc,0x73,0x07,0xc1,0xcf,0x23,0xf8,0xcc,0xf0,0xc3,0x00,0xc3,0x50,0x88,0x3f,0x20,0x3c,0xf3, + 0x0d,0x9c,0xd6,0x3e,0xdc,0x3b,0x70,0xfd,0xcc,0x2d,0x16,0xf3,0x1c,0xef,0x71,0xf8,0x20,0x01,0xb0,0x73, + 0x82,0xc7,0x0f,0x2d,0x3f,0xfd,0x7d,0xe0,0x00,0x83,0xee,0xc3,0x01,0x0c,0x21,0x8f,0xe2,0xf5,0xd3,0x07, + 0xcb,0xf2,0x0c,0x03,0x3f,0x37,0xc4,0x1f,0xee,0xf8,0xf1,0x71,0x01,0xe7,0xc0,0xf7,0xb3,0xbe,0x13,0xdc, + 0x7f,0x3d,0x07,0x3f,0xbb,0xb0,0x01,0x1f,0x0f,0xfc,0x0c,0x73,0xef,0xec,0xc4,0x07,0x0f,0x8f,0x35,0xdc, + 0xfb,0xfc,0xc0,0x0c,0xcf,0xc4,0x10,0x18,0x3b,0xcc,0xb0,0x3f,0x00,0x34,0x1c,0xc1,0xf7,0xfb,0xf2,0x0c, + 0x33,0x00,0x1d,0x33,0xd7,0x3e,0xfb,0x3c,0x0c,0x21,0xc0,0x37,0xcc,0x49,0xbb,0xa0,0x30,0xf7,0xc4,0xd3, + 0xc2,0x35,0xc2,0xbf,0x83,0x03,0x08,0x40,0x4c,0xbc,0x16,0x7b,0x8f,0x31,0x38,0x03,0x44,0xfc,0xff,0x5d, + 0xeb,0xfc,0x0d,0xf3,0x01,0x07,0x33,0x81,0x67,0xaf,0xb7,0x30,0xf3,0x14,0x00,0xf2,0x05,0x82,0xa2,0xc3, + 0x02,0x33,0x10,0x4f,0x0f,0xd4,0xca,0xba,0x03,0xdf,0x33,0x40,0x4f,0x33,0x04,0x0a,0xbe,0xfc,0x0e,0x03, + 0x10,0x0c,0x33,0x14,0xce,0xbe,0x33,0xc2,0x33,0x5c,0x4c,0xf0,0xc5,0xcf,0xae,0x83,0xc3,0xf3,0x10,0x40, + 0x33,0xc1,0x70,0xeb,0xbc,0xf0,0xfc,0xc4,0x40,0x00,0xf0,0x57,0x3a,0x2e,0x3c,0xff,0x3c,0x40,0x1c,0x30, + 0xd4,0x03,0xbe,0xbf,0xff,0xcc,0xc1,0xc7,0x00,0x35,0x01,0xff,0xe8,0xef,0xff,0x30,0x00,0x77,0x03,0x40, + 0x1e,0x0b,0xe2,0xcb,0x26,0x00,0xc1,0x37,0x0d,0x0c,0x3e,0x3b,0x2c,0x8f,0x30,0xdc,0x00,0x0c,0x34,0xf7, + 0xfe,0x38,0xe3,0xcc,0xc0,0x70,0x70,0x7c,0xc4,0xf2,0x23,0xe3,0x3f,0xc1,0xcc,0x1c,0xc0,0xf3,0xd4,0xce, + 0xf8,0x8f,0xb3,0x30,0x37,0x1c,0x00,0x3c,0xc4,0x3e,0xfb,0xfc,0x8f,0xc0,0x70,0x71,0xc0,0x3c,0x24,0x0f, + 0xe2,0xef,0xb3,0xfc,0x70,0x77,0x71,0xcc,0xf1,0x70,0xef,0xee,0x38,0xf3,0x01,0x00,0x77,0x03,0xcc,0x4c, + 0x3f,0xbf,0x8b,0xf3,0x30,0x70,0x1c,0x0c,0xcf,0x13,0x7f,0xe2,0xf2,0xf3,0x03,0x1d,0x30,0x03,0x3c,0xc1, + 0x00,0xbf,0xbb,0x2f,0x0f,0x01,0xc1,0xc0,0xcc,0xcf,0x5c,0x3e,0x3b,0x8b,0xf3,0xdc,0x13,0x07,0x33,0x3c, + 0xf5,0xc3,0xfc,0xae,0xf8,0xf3,0x1d,0x34,0x0c,0x30,0xfc,0x40,0xcf,0xef,0xbb,0xfc,0x30,0x1d,0xdc,0x03, + 0x3c,0xf5,0x80,0x3e,0x3a,0xfe,0xcf,0x07,0x77,0x00,0xcc,0xff,0x17,0xc0,0xf8,0xbb,0x88,0xf3,0x40,0x04, + 0x03,0x33,0x3d,0x0c,0x02,0x22,0xf8,0xe3,0xdc,0x01,0xc0,0xc3,0x3f,0x13,0x30,0xfe,0xfb,0xff,0xfc,0x1d, + 0xc7,0x00,0xc3,0xf5,0x33,0x3f,0xef,0x8e,0x3c,0x33,0x00,0x03,0x34,0xce,0x5c,0xcb,0x3f,0xce,0x0f,0x30, + 0x33,0x37,0x3c,0x00,0x97,0x3e,0x80,0xff,0x30,0x3c,0x20,0x33,0xcd,0xcc,0xd5,0xff,0xb7,0xcc,0xcc,0xcf, + 0x0f,0x0c,0xdc,0xf4,0x94,0xec,0xf0,0x3b,0x0f,0x3f,0xf3,0x0c,0x00,0x40,0x95,0x2f,0x83,0x3f,0xf3,0x1c, + 0xf3,0x00,0x00,0x36,0x54,0xbf,0xff,0x33,0xf0,0x00,0x10,0x00,0x33,0x31,0x56,0xb3,0xfc,0x1f,0x30,0x71, + 0x0c,0xfc,0xff,0x15,0xea,0x33,0x13,0x3f,0x1c,0x07,0xff,0xc3,0xc1,0x5e,0xa0,0xc0,0x7f,0xc0,0x04,0x3e, + 0x3c,0x33,0x57,0xa8,0xc3,0x43,0xb0,0x00,0x48,0x8c,0x0c,0xf5,0x7a,0x30,0xc4,0xff,0x1c,0x03,0xec,0x33, + 0x0d,0x4a,0xb3,0x01,0x3b,0x00,0x00,0x8f,0x73,0x33,0x52,0xac,0x0c,0x4b,0xc4,0xc0,0xff,0x03,0x3c,0xd5, + 0xe8,0x20,0x02,0xf1,0xc0,0xff,0x00,0xf3,0xc5,0x2b,0x2c,0x02,0xfd,0xc0,0x3f,0x00,0xc3,0xc5,0x6f,0xe3, + 0xdf,0xfd,0xc0,0x3f,0x03,0x33,0xf1,0x4a,0xcb,0x30,0xb3,0x4d,0xcf,0xdc,0x20,0xfd,0x52,0xbf,0x80,0xec, + 0x07,0x73,0xc4,0xcc,0xf0,0x15,0xb8,0xfd,0xfe,0xc0,0xc3,0x8d,0x33,0xcf,0x1d,0x4a,0x8e,0x02,0xe0,0x01, + 0xfc,0x1c,0x3f,0xc0,0x14,0xaf,0xbd,0xf8,0xc0,0x1f,0x00,0x03,0xf3,0x31,0x7b,0x8b,0x73,0x82,0x04,0x8c, + 0xc1,0x3c,0xcc,0x15,0xbe,0xe1,0xfc,0xfd,0x1f,0x7c,0x06,0x08,0xf7,0x16,0xfb,0x83,0xfc,0xb7,0x7c,0xfc, + 0x70,0xff,0x0c,0x5e,0xfa,0xdf,0x3f,0x9c,0x0c,0xb0,0xc0,0xf3,0x31,0x4f,0xeb,0x33,0x3b,0x0d,0x02,0x3c, + 0x13,0x0e,0x01,0x5f,0xeb,0x3c,0x3e,0x3c,0x03,0x38,0x30,0x0b,0xfc,0x5c,0xea,0x3c,0x73,0x3c,0x74,0x0f, + 0x30,0x00,0xff,0x14,0x0a,0xfb,0x0c,0xce,0x0d,0x00,0xc8,0x30,0x0f,0x25,0x37,0xbb,0xb3,0x00,0x82,0x1d, + 0xc3,0x8f,0x37,0x0f,0x53,0x4a,0xeb,0x3d,0xcc,0xc9,0x31,0xcc,0xfc,0x01,0xf1,0x74,0xae,0xbc,0x80,0xcc, + 0x80,0x11,0xc3,0x8f,0xcc,0xf5,0x37,0xae,0xa3,0xc4,0x31,0xf0,0x10,0x00,0x8f,0x3c,0xc5,0x34,0xba,0xe8, + 0xf1,0x00,0x70,0x00,0x0c,0xcf,0xff,0xf1,0x5c,0x3a,0xfb,0xf3,0x00,0x70,0x00,0x1d,0xc3,0xce,0x23,0x5c, + 0x02,0x8b,0xb8,0xfc,0x1c,0x00,0x03,0x00,0xc0,0xf3,0xc5,0xdc,0x3b,0xef,0xbc,0x8c,0xc0,0x0d,0xc0,0xc0, + 0x37,0x01,0x40,0x1c,0xe2,0xfb,0xff,0xf0,0x37,0x1c,0x0c,0x3c,0xcf,0x05,0x00,0x73,0xfb,0xbe,0x38,0xcc, + 0x00,0x01,0xf7,0xc3,0xf3,0x70,0x1c,0x3c,0xbe,0xfe,0x3f,0x30,0x01,0xdc,0x0c,0xcf,0x3c,0x77,0x1c,0xf3, + 0xe2,0xff,0x8f,0xc0,0x30,0x70,0x03,0x33,0xf4,0xc0,0x00,0xfe,0x2f,0x88,0xff,0x33,0x00,0x70,0x03,0x30, + 0xd3,0x00,0x3c,0xf8,0x88,0xcf,0xc0,0xc0,0x00,0xc0,0xf3,0xcc,0x5c,0x33,0x38,0xe3,0xff,0xf0,0xc0,0xd3, + 0x70,0xc0,0x3c,0x3d,0x73,0x33,0xfe,0xcf,0xe3,0x0f,0x34,0xcc,0x73,0x0c,0xcc,0xf5,0x2c,0x3f,0xf2,0x1e, + 0xe4,0xc8,0x0c,0x83,0x7f,0x0b,0x03,0x32,0x31,0x87,0xf9,0x7f,0x38,0x3f,0xec,0xc4,0xb5,0x3c,0x38,0x7c, + 0xb1,0x2c,0x0f,0xed,0x2f,0x00,0x4c,0x08,0x17,0xf4,0xfb,0xcc,0xf2,0xf1,0xf3,0x05,0xf4,0x03,0xbb,0xbf, + 0x30,0xc5,0x72,0x3e,0xec,0xcf,0x04,0x30,0x00,0xc0,0xcf,0xd5,0x7e,0xee,0xff,0x03,0x44,0x00,0x03,0xf3, + 0x38,0xd5,0xee,0x3b,0xe0,0x0c,0x44,0xc3,0x0e,0x33,0xff,0x15,0xbf,0xeb,0xcd,0x31,0x00,0xc3,0xff,0x3f, + 0xc3,0x57,0xe3,0xb8,0xc0,0x01,0x33,0x0f,0xf3,0x3f,0x0d,0x52,0xf2,0x8c,0x00,0x10,0xf0,0xfc,0xcf,0xf3, + 0x25,0x7b,0x0a,0x30,0x01,0x0f,0x0f,0xc3,0x3c,0xff,0xd5,0xec,0xe8,0x30,0x10,0x3d,0xfc,0x33,0x33,0xf3, + 0x57,0xb2,0xb0,0x31,0x03,0xc3,0x80,0xcc,0xff,0xcd,0x5e,0x3a,0xc3,0x10,0x3c,0x38,0x0c,0x0f,0xfc,0xf5, + 0x63,0xe8,0xcc,0x40,0xc3,0xf0,0xc0,0xfc,0xef,0x57,0xce,0xbf,0xd0,0x00,0x3c,0x30,0x0f,0x38,0xf1,0x58, + 0x2f,0xfc,0x04,0x03,0xcf,0x00,0xc2,0x3f,0x05,0x27,0xbf,0x83,0x01,0xcc,0xfd,0xcc,0x3f,0xcf,0x52,0x7a, + 0x3f,0x04,0x1c,0xcf,0xdc,0x03,0xcf,0xf5,0x24,0xa2,0xf3,0x04,0x37,0xc3,0xc4,0xcc,0xfc,0x5c,0x6b,0xaf, + 0x0d,0x40,0x3c,0xfc,0x34,0xfc,0xf5,0x92,0xee,0xff,0x13,0x4c,0xcf,0x0c,0x0c,0xc8,0x5d,0x28,0xbf,0xf1, + 0x04,0xc3,0xcc,0xc3,0xcf,0xc5,0xd2,0xca,0xec,0x00,0x40,0x20,0xf3,0x03,0xf0,0x5d,0x23,0xae,0xcd,0xd0, + 0x1c,0x33,0x0c,0x3c,0xd7,0x4e,0x2b,0xa3,0x01,0x04,0xc3,0xc8,0xcf,0x31,0x07,0x8a,0xbb,0xf7,0x40,0x70, + 0xf3,0xf3,0xc2,0x5d,0x23,0xae,0xfc,0x04,0x10,0x3f,0x7f,0x37,0xc4,0x1b,0x2b,0xa2,0x31,0x04,0x03,0x08, + 0x8f,0x3d,0x64,0x8e,0xfb,0xf3,0x11,0x34,0x3f,0xcf,0xcc,0x1c,0x7d,0xbe,0xfe,0x00,0x04,0x0c,0x3f,0xf3, + 0x84,0xd2,0x78,0xfe,0xc3,0x04,0x1c,0x0c,0x8f,0x3c,0x74,0xf6,0x3b,0x88,0xf4,0x1d,0x03,0x33,0xfc,0xdf, + 0x4d,0xb2,0xbe,0x3c,0x01,0x00,0x0c,0xf2,0x34,0xc3,0x78,0xbf,0xbc,0xc0,0x10,0x00,0xcc,0x8d,0x34,0x9f, + 0xf8,0xbc,0xfc,0x1c,0x1c,0x33,0x3c,0x4d,0xf7,0xfb,0xfb,0xfc,0x37,0x00,0x0f,0x0f,0xd7,0x4d,0xe7,0xef, + 0xcb,0x30,0xdd,0xc3,0x0c,0x86,0x58,0x37,0xec,0xe2,0x0f,0xc4,0xcd,0x33,0xc1,0x87,0x18,0x8f,0xe0,0x83, + 0xf4,0xcc,0x00,0xcd,0x65,0xb0,0xf2,0x38,0x33,0x79,0xe7,0x38,0x02,0x7d,0xce,0x02,0x0f,0x23,0xd2,0x30, + 0x7c,0xf3,0x60,0xd3,0x3c,0x83,0x30,0x9f,0xf7,0xc0,0xf2,0xd0,0x3f,0x20,0xc1,0xb7,0x7c,0xc3,0x6c,0xcc, + 0x23,0x4d,0xff,0x30,0xd0,0xcc,0xd0,0xb3,0x30,0x90,0x24,0x08,0xc4,0x2b,0xc3,0xee,0x03,0x0b,0xf0,0x30, + 0xc3,0x77,0xfc,0x27,0x7f,0xf0,0x43,0xf7,0x37,0xfc,0x13,0xc0,0x31,0x03,0x90,0xc6,0x0d,0xce,0x2c,0xd0, + 0x33,0x9c,0xe3,0x4c,0x03,0x2f,0xf3,0x33,0xd3,0x73,0x1b,0xf2,0xcd,0x03,0x51,0xdf,0x02,0xcc,0x3f,0xcc, + 0x0e,0x00,0xdf,0x73,0x33,0x61,0x0c,0x24,0xf8,0xd4,0x13,0x37,0xcc,0x22,0xc0,0xe2,0x3c,0xc0,0x20,0xc0, + 0x72,0x85,0xcc,0xc3,0xcc,0xcb,0x3e,0xeb,0x40,0x1c,0x30,0x39,0x02,0xec,0xd0,0x30,0x10,0x30,0x0b,0x47, + 0x0c,0xe0,0x0d,0x33,0xc1,0xfe,0xcf,0xd3,0x3f,0x0e,0xf0,0x93,0x23,0x1e,0xff,0x4c,0x47,0x0c,0xd7,0x03, + 0x02,0x32,0xc0,0x47,0x3f,0x72,0x51,0x2e,0x0d,0x03,0x4c,0xfb,0x40,0xcf,0xf3,0xc8,0x30,0xd4,0xc0,0x93, + 0x03,0xd0,0x30,0xcb,0x73,0x80,0x28,0x8f,0x3c,0x9f,0xf2,0x9c,0x80,0x8b,0xc3,0xdb,0xcf,0x88,0x33,0xdb, + 0x07,0x0b,0xc0,0x5f,0xfa,0xf8,0x3f,0x4c,0xff,0x38,0xd0,0x7d,0xc3,0x55,0xd2,0xaf,0xba,0xff,0xc0,0x54, + 0x0c,0x14,0x0f,0xba,0xfc,0xcf,0xfe,0xdc,0x00,0x4c,0x03,0x3d,0xff,0x3c,0x94,0x4e,0xb2,0xb4,0xc2,0xc2, + 0xc1,0x00,0x0f,0xc0,0x0f,0x3f,0xb0,0xf5,0x5f,0xbf,0x80,0xc3,0xfc,0xc5,0x00,0x83,0xc7,0x03,0xbf,0x23, + 0xcd,0x53,0xeb,0xec,0x7c,0x38,0x31,0x1d,0xcc,0x0c,0x0c,0xff,0xff,0x7e,0x50,0xfe,0xbb,0x1f,0xc2,0xc0, + 0x17,0x00,0x9c,0x00,0x8c,0x8c,0x3c,0xf5,0x00,0xea,0xf9,0x23,0x2f,0x4d,0x03,0x0f,0x40,0x0f,0xce,0x30, + 0x82,0x57,0xc2,0xaf,0xc3,0x8c,0xbd,0x04,0x37,0x3d,0x0c,0x32,0x3f,0x33,0xff,0x57,0x0a,0xbe,0xc0,0x8f, + 0xf0,0x75,0xc0,0x0c,0x70,0xcf,0xcf,0xcf,0xff,0x55,0xde,0xfe,0xe3,0xbf,0xf0,0x74,0x00,0x70,0x0c,0xcf, + 0xf2,0x3c,0x8c,0x15,0xc3,0x88,0xec,0xef,0xcf,0x43,0x77,0x13,0x0c,0xe0,0xff,0xfc,0xf0,0x05,0x4c,0x63, + 0xfe,0xfe,0xfc,0xc0,0xc4,0x01,0x30,0xcf,0xfb,0xfb,0xcf,0xc7,0x57,0x0c,0xf3,0x88,0xb8,0xfc,0x30,0x00, + 0x4c,0x03,0xcf,0x88,0x8f,0xcf,0x0d,0x5c,0x3c,0xdb,0x3b,0x8f,0xc3,0xc0,0x71,0xdc,0x30,0xce,0x3f,0xff, + 0x33,0xc5,0x73,0xf0,0x6c,0xbe,0x23,0xc2,0x00,0x77,0x70,0x30,0xfc,0x88,0xff,0x3f,0x15,0xcf,0xc0,0xb3, + 0xbb,0x23,0x3c,0x00,0x13,0x4c,0x03,0xf3,0x8e,0x38,0xfc,0x50,0x7f,0x36,0xce,0x88,0xe0,0xcc,0x05,0x00, + 0x0c,0x4e,0x3f,0xff,0xf3,0xf1,0x40,0x2c,0x0f,0xfe,0xf8,0xf3,0xf0,0x04,0x71,0xc0,0x09,0xff,0x3f,0x82, + 0x31,0x7c,0x3f,0x7f,0x22,0x3f,0xc2,0x03,0x00,0x00,0x30,0x3d,0x8f,0x3b,0x3c,0xc5,0x73,0xb7,0x38,0xf8, + 0xc8,0x3c,0xd3,0x13,0x1c,0x0c,0x20,0xff,0xff,0x3f,0x14,0x32,0xc7,0xb3,0xbf,0xf9,0xf3,0x70,0x1c,0x4c, + 0x30,0x9f,0x8f,0xff,0xc9,0x4c,0x0e,0x0f,0x8e,0xff,0xfc,0xf7,0x31,0x30,0x03,0x7f,0x08,0xce,0x3f,0x35, + 0x60,0xff,0x2f,0xf8,0xff,0x0c,0xdc,0x07,0x00,0x0c,0xf3,0xec,0x8b,0x3f,0x15,0xce,0x30,0xa0,0x8f,0xfc, + 0x7c,0x00,0x4c,0x77,0x30,0xc3,0xff,0xf3,0xb1,0x70,0x3f,0x2e,0x3b,0xe3,0xcf,0xc7,0x00,0x10,0x31,0xf6, + 0x0c,0xff,0x23,0x53,0x0e,0x0f,0xbf,0xff,0xf1,0x23,0xc0,0xf3,0x33,0x33,0x33,0x33,0x0f,0x30,0xcf,0x30, + 0xc3,0x33,0x30,0xcc,0xc3,0xc3,0x3c,0x0f,0x0c,0xf0,0x0f,0x0c,0xf0,0x3c,0xc3,0x03,0x3c,0x00,0xf3,0x30, + 0xc0,0xc0,0x30,0xc0,0xf0,0x03,0x30,0xf0,0x03,0x00,0xcc,0xc3,0xcc,0x00,0xcf,0x03,0x00,0x0c,0xc3,0xc0, + 0x03,0x30,0xf0,0x00,0xcc,0x3c,0x00,0x33,0x0f,0x00,0x0c,0x0c,0xf0,0x03,0x3f,0x00,0xc0,0xc3,0x00,0xc0, + 0x30,0xc0,0xfc,0x00,0x0c,0xc0,0xf3,0x03,0x0c,0x00,0xcf,0x03,0x00,0x33,0xc0,0xc0,0x0c,0xf0,0x30,0x03, + 0x3c,0x0c,0x00,0xcf,0x03,0x00,0x33,0xc0,0xc0, +}; +static constexpr VoiceClip alertsSoundVibrationClip = { + alertsSoundVibrationData, sizeof(alertsSoundVibrationData), 10915, 8000, VoiceCodec::G72616 +}; +#endif // HAS_DRV2605 +#ifdef HAS_DRV2605 +// "Sound only" +static const uint8_t alertsSoundOnlyData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x53,0x4a,0x84,0xcf,0xa0,0x4f,0xde,0x02,0x38,0x1f, + 0x2c,0x01,0xf7,0xf0,0xdf,0x20,0x08,0xe0,0x7c,0xb8,0x37,0x08,0xc2,0x3f,0x13,0x36,0xcf,0x92,0x30,0x70, + 0xc3,0x6f,0x0f,0x13,0x2c,0xc7,0xf7,0xd3,0x37,0xf0,0xbe,0x10,0x0a,0x03,0x3b,0x00,0x28,0xc7,0xcf,0xf0, + 0x35,0x3f,0xa0,0x1e,0xc2,0x70,0xfd,0xf7,0x3d,0xb3,0xe7,0xcc,0x32,0x43,0x0c,0x23,0x07,0xc7,0xd3,0x32, + 0xcc,0xcf,0xff,0x30,0xc3,0xbc,0x88,0x7f,0xc1,0x1f,0xd3,0x40,0xf8,0x3c,0x30,0xff,0x1f,0xce,0x4c,0xcd, + 0xed,0x20,0x73,0xf5,0x00,0xb4,0x33,0xc4,0x43,0x00,0x80,0x80,0xcc,0x00,0xf4,0xf0,0x02,0x60,0x0b,0xef, + 0x7c,0x8b,0x07,0xbd,0x80,0xff,0xc4,0xc2,0x84,0xf2,0x03,0xd3,0x20,0x73,0x3b,0x07,0xf7,0x80,0xfe,0xf0, + 0x9f,0x04,0xdc,0xc3,0xf7,0xbc,0x0c,0xf0,0xf0,0x43,0x3d,0x07,0x3c,0x06,0x0f,0x1e,0xdf,0x7b,0x8c,0x73, + 0xf1,0xc6,0x30,0xbf,0x23,0xf1,0x70,0x0c,0xf8,0x0f,0xe3,0x81,0xf0,0x60,0x0c,0xf1,0x30,0xa0,0x3c,0x84, + 0x02,0xb0,0x5b,0xd9,0x33,0xb0,0x83,0x63,0x8f,0xf3,0x7b,0x38,0x2f,0xf4,0xc8,0x30,0x80,0x06,0xcf,0xf3, + 0xf0,0x5b,0x9c,0x73,0xb0,0xb3,0x60,0x80,0xf6,0xfd,0x0e,0xe0,0x1f,0xb3,0x48,0xcd,0x78,0x31,0xaf,0xf4, + 0xf0,0x12,0xfc,0x33,0x7d,0x03,0x63,0xbf,0x2f,0x49,0xc0,0x3f,0xfc,0x0c,0xfb,0xbf,0xb7,0xcb,0xc2,0x4f, + 0xd0,0x6b,0x03,0xef,0x41,0xce,0x32,0x8e,0xf6,0xf0,0x90,0x42,0x0c,0xca,0xb3,0x0c,0x4e,0x3d,0xfc,0x2a, + 0xcd,0x44,0x7d,0x0e,0x3e,0xcb,0x03,0x41,0xc8,0x33,0x0c,0xf3,0x2e,0xbf,0xbf,0xc5,0x01,0x03,0xcc,0xac, + 0xb7,0xc1,0x53,0xeb,0xec,0xf3,0x3c,0x31,0x00,0xc0,0xfd,0x5c,0xeb,0xfc,0x0c,0x0c,0x11,0x4c,0x3f,0xff, + 0x57,0xfa,0xfc,0x03,0x0f,0x10,0x43,0x3e,0x3f,0x57,0xfa,0x3f,0x07,0x0f,0x00,0x1c,0xce,0x33,0xd4,0xca, + 0x8f,0xdc,0x33,0xc0,0x13,0x33,0xf0,0xd5,0xfe,0xb3,0xc1,0x83,0xc0,0x71,0x83,0xcc,0xc5,0xff,0xac,0x80, + 0x20,0xcd,0x00,0x20,0xcc,0x3d,0x7f,0xbb,0x3c,0x7f,0x33,0x43,0x08,0xc3,0x0f,0x52,0xfa,0xcc,0xd2,0x30, + 0xd0,0xc3,0xf0,0xc3,0xd4,0xbb,0xa0,0xc0,0xbc,0x35,0x3c,0xcc,0x0c,0x25,0x7a,0xec,0x3c,0x3b,0x01,0x4f, + 0xc3,0x03,0x3d,0x5e,0xbb,0xc2,0x08,0x80,0x1c,0xcd,0xc0,0xc8,0x57,0xbe,0xcc,0xf3,0xb0,0x74,0xfc,0x00, + 0x0f,0xd4,0xe8,0xa3,0x0f,0x38,0x00,0x0f,0x00,0x03,0xf5,0x6f,0xef,0xd8,0xf2,0xdd,0xc0,0xf0,0x0c,0x3d, + 0x5b,0x8b,0x80,0xfc,0xb0,0x70,0xcf,0x03,0x33,0x17,0xa2,0xed,0x3e,0x3c,0x10,0xcc,0xc0,0x3c,0xd5,0xe8, + 0xfb,0x1e,0xfc,0xc4,0x30,0x30,0x03,0xc1,0x7a,0x22,0xdc,0xec,0x34,0x1f,0x30,0x00,0xfd,0x5e,0xbf,0x81, + 0x2f,0xcc,0x47,0xc0,0x00,0x3c,0x53,0xbf,0xe0,0x38,0x9f,0x77,0x30,0x03,0x7c,0x17,0xa2,0x2c,0x0e,0xcc, + 0x01,0xc3,0x00,0x0c,0x17,0xbf,0xf8,0x32,0xf0,0xdd,0xc3,0x0d,0xc3,0x14,0xac,0xff,0x0f,0xb0,0x00,0x33, + 0x01,0x0c,0x57,0xbf,0x38,0x0f,0x8c,0x00,0xc3,0x04,0x73,0x52,0x88,0xfc,0x3f,0xb1,0xdc,0xc3,0x00,0x0d, + 0x4a,0xb3,0xcc,0x3b,0xc1,0x03,0x0c,0xdd,0xc5,0x2a,0xc2,0x33,0xee,0x04,0xc3,0x03,0x44,0x53,0xbf,0x3f, + 0x02,0xe0,0x13,0x03,0x0c,0x45,0x3a,0xf3,0xcc,0xfb,0xc4,0x03,0x0c,0x04,0x5c,0xaf,0x3c,0xce,0xe0,0x1c, + 0xcc,0x30,0x45,0xeb,0xf3,0xcc,0xef,0xc4,0xc3,0x0c,0x01,0x4e,0xb3,0xf3,0x3e,0xf0,0x00,0x30,0xc5,0x50, + 0xbf,0xff,0x0e,0xff,0x00,0x70,0xc1,0xd5,0xff,0xfb,0x0f,0xe3,0xf0,0x03,0x03,0x75,0x3e,0x3b,0xc3,0xff, + 0x23,0x1f,0x03,0x0d,0x58,0xfe,0xf3,0xff,0x38,0xdf,0x00,0xc0,0x53,0x32,0x8f,0xff,0x3f,0x30,0xc1,0xc1, + 0xd7,0x33,0xbf,0xf8,0xf2,0x03,0x0d,0xc0,0xd4,0xcc,0xef,0xfe,0x3f,0xc0,0xc0,0x00,0x05,0x60,0x8f,0xff, + 0x8c,0x80,0x30,0x03,0x71,0x3c,0xf8,0xff,0x83,0xf0,0x30,0x70,0x0d,0x48,0xff,0xff,0xe6,0x0c,0x0c,0x00, + 0xc0,0x4e,0x3f,0xf2,0x3c,0xf0,0x31,0xdc,0x03,0x5f,0xc8,0xb0,0xe0,0xfc,0x0c,0x70,0x03,0x04,0x88,0xb0, + 0x8f,0xcc,0x0c,0x07,0xc6,0x04,0xff,0xe2,0x08,0xf2,0x07,0xc7,0x00,0x01,0x0c,0xef,0xfe,0x08,0xcc,0xc7, + 0x0d,0xcc,0x4c,0xfe,0x3e,0x3f,0xc3,0x03,0x07,0x00,0x10,0xf2,0xfe,0xff,0xf3,0x37,0x4c,0x70,0xc1,0x26, + 0x38,0xf8,0xfc,0x30,0xd0,0x00,0x0c,0x13,0xfc,0xbf,0xff,0x30,0x31,0x1d,0xf1,0xf1,0xdf,0xff,0xf8,0x8f, + 0x30,0xc3,0x70,0x0c,0x1c,0x33,0xfe,0xff,0xfe,0xd3,0xcd,0x03,0x05,0xe7,0xe7,0xfc,0xf3,0x8d,0xcc,0x09, + 0xcc,0x16,0x23,0x0f,0x32,0x1f,0xc0,0x08,0xc0,0x78,0x4b,0x2d,0x3f,0xfd,0x7c,0xf1,0x33,0x27,0x39,0x63, + 0xfd,0xf3,0x21,0xf0,0x34,0xf0,0xf7,0xc9,0x63,0xec,0x33,0x31,0x30,0x70,0x0c,0xf3,0x39,0x7f,0xea,0x3f, + 0x4c,0x03,0x4c,0x03,0x03,0xfe,0x5c,0xba,0xff,0xd3,0x04,0xcc,0x34,0x30,0xfc,0xd7,0xfb,0xae,0x20,0x10, + 0x70,0x0f,0x03,0x0f,0xb5,0xfb,0xeb,0xcc,0x44,0x1c,0xc3,0x8c,0xf3,0xfc,0x4f,0xca,0x33,0x04,0x30,0xf0, + 0xe3,0x0f,0x2f,0x14,0xe2,0xec,0x34,0x1c,0x3f,0x33,0x37,0xfc,0xf5,0x7b,0xeb,0xc0,0x44,0xc3,0xf3,0x0c, + 0x3f,0xc8,0x57,0xe2,0xec,0x00,0x4c,0xcf,0xc0,0xc3,0xff,0x25,0x4b,0x2f,0x83,0x04,0x3d,0xf3,0x0c,0xc3, + 0xff,0x14,0xee,0xe8,0x30,0x43,0x03,0xc0,0xcc,0xff,0xc5,0x4e,0x2b,0xf3,0x04,0x30,0x30,0x0c,0xcf,0xbf, + 0x54,0xe2,0xec,0xf0,0x4c,0xcc,0x00,0x03,0xfe,0x21,0x7e,0x2e,0xf0,0x34,0xcc,0xc0,0x4c,0x3f,0xf2,0x53, + 0xef,0xac,0x03,0x73,0xc3,0x77,0x0f,0xf3,0xc5,0x3a,0x2e,0xdc,0x73,0xcc,0x14,0x33,0xf8,0x30,0x52,0xbf, + 0xed,0xc3,0xf3,0x11,0x03,0x3c,0xc3,0x14,0xeb,0xcb,0x03,0x3f,0x34,0x00,0x3f,0x30,0x35,0x4a,0x3f,0xf0, + 0xf0,0x8c,0x40,0x33,0x33,0x07,0x50,0xaf,0x0f,0x0c,0x23,0xd0,0x73,0xf0,0xcc,0x35,0x3a,0x8c,0x3c,0xc0, + 0xfc,0x10,0x3f,0x34,0xcd,0x53,0xb8,0xcc,0x38,0xc3,0xc4,0x07,0xfc,0x03,0x11,0x3a,0xbc,0xdf,0xfc,0x30, + 0x10,0x73,0xc0,0x01,0x1e,0xeb,0xc0,0xff,0xc0,0x07,0x70,0x3c,0x0c,0x47,0xfa,0xe0,0xf3,0xfc,0x00,0x40, + 0x0f,0x31,0xd1,0xcb,0xb8,0xf0,0x8f,0xc0,0x07,0x70,0xcc,0xc0,0x43,0xba,0x20,0xf2,0x3c,0x00,0x77,0x0f, + 0x03,0x04,0x3a,0xe8,0xcf,0xff,0xc0,0x04,0x00,0xf0,0xdd,0x1f,0xbe,0xf0,0xf2,0x3c,0x37,0x40,0x33,0x00, + 0x04,0xfa,0xf8,0x33,0xff,0x30,0x04,0x37,0xc0,0x01,0x4e,0x2e,0x0f,0x3f,0x8c,0xc0,0x77,0x0c,0x34,0xd1, + 0xbe,0x8f,0x3f,0xec,0xf3,0x41,0xc3,0x00,0x37,0x5e,0x8b,0x33,0xec,0xf0,0xf1,0x10,0x37,0x07,0x14,0xee, + 0xc8,0xff,0x83,0xcc,0xd0,0x1c,0x00,0x0d,0x5b,0xbc,0x8f,0xb3,0x37,0xcc,0x43,0x03,0x00,0xd5,0xbe,0xcf, + 0xfb,0xc0,0x09,0xc1,0xcc,0x30,0x3d,0x5e,0xbe,0x0b,0xe3,0x03,0xc1,0x07,0x30,0x0c,0xd5,0xbe,0xce,0x2f, + 0xc0,0xc3,0x40,0x7c,0x0c,0x39,0x42,0xef,0xfe,0xe0,0xcc,0xc1,0xc0,0x30,0xc3,0xf5,0x78,0x8c,0xbe,0xc3, + 0x0c,0x07,0x03,0x03,0x3f,0x57,0xf8,0xfe,0xe3,0xc3,0x00,0x70,0x03,0x0f,0xfd,0x52,0xf3,0xbe,0xf3,0xcc, + 0x1c,0x77,0x19,0xfc,0xc5,0xf8,0xcb,0xf8,0xcf,0x04,0x01,0xdc,0x33,0x3f,0x17,0x88,0xfa,0x23,0x3c,0x10, + 0x07,0x70,0xc3,0xfc,0x5e,0x3f,0xeb,0xff,0xc3,0x40,0x07,0x03,0xcf,0xf1,0x4b,0x32,0xef,0xff,0x31,0xc1, + 0xdd,0xf7,0xcf,0x35,0xcb,0xce,0xef,0xff,0x31,0xc1,0xdd,0xf0,0x3f,0x31,0x6f,0x3f,0xac,0xff,0xc0,0x00, + 0x70,0x30,0xc8,0xf5,0x63,0xc2,0xf8,0xc8,0x30,0x00,0x03,0x03,0xcc,0xf5,0x48,0xff,0xbf,0x3f,0x00,0x70, + 0x0c,0x0c,0x0c,0x3d,0x57,0xb2,0xc8,0x3f,0x00,0xc0,0xdc,0x0c,0x0c,0xcf,0x15,0x6f,0xff,0x7f,0x0c,0xc0, + 0x00,0x00,0xc0,0xcf,0x2d,0x56,0xff,0xcc,0x23,0x30,0x04,0xcc,0x30,0x3d,0x8c,0xe5,0x4a,0x8f,0x03,0x3f, + 0xdd,0x07,0x33,0x3d,0xce,0xcf,0xc5,0x4a,0x8c,0xc4,0xe3,0x00,0x13,0xf0,0x23,0x0e,0xcf,0xf5,0x5a,0x8e, + 0x31,0x3f,0x0c,0x14,0xcc,0x3f,0x03,0xbf,0xfc,0x57,0xac,0xa3,0x02,0x0c,0xf5,0x0c,0x0f,0xc0,0xfc,0xbf, + 0xf5,0x4e,0xfa,0xf7,0x33,0x38,0x41,0x37,0xf0,0x0c,0x3b,0x20,0x85,0x4b,0xeb,0xc3,0xc3,0xb0,0x41,0x0c, + 0xc3,0x03,0xff,0xe3,0x3d,0x5f,0xfa,0xf0,0x80,0xe0,0x34,0x43,0x7f,0x03,0x33,0xb3,0xcc,0xd5,0xff,0xac, + 0xe7,0x3f,0x3c,0x40,0x0c,0xc3,0x03,0xf8,0xb3,0x02,0x53,0xca,0xfe,0x1f,0x32,0x07,0x44,0xc3,0xc3,0x70, + 0xbf,0x8f,0x33,0x14,0x0e,0xab,0xdf,0x0e,0x30,0x50,0x03,0x0c,0xdf,0x3e,0x3c,0xcf,0x25,0x03,0xaa,0xf4, + 0x83,0xcf,0x14,0x07,0x3c,0xdc,0xcf,0xfc,0xcf,0x73,0x50,0x2b,0x2b,0x0d,0xe0,0xf1,0x10,0xc3,0x3c,0xdf, + 0xff,0x3c,0x0c,0xf9,0x44,0xbf,0xa3,0xc7,0xc8,0x03,0x50,0xcc,0x20,0xcf,0xf3,0x8c,0x0f,0x01,0x57,0xef, + 0x8b,0x03,0x39,0xc1,0x04,0xcc,0xc3,0xcc,0xfb,0x3d,0xf0,0xfd,0x54,0x8f,0xbf,0xcc,0x3c,0x31,0x10,0x03, + 0xcc,0x3c,0xef,0xb3,0x33,0xde,0x51,0x3e,0xef,0x83,0xcc,0x0d,0x04,0x4c,0xc2,0x30,0x8f,0x23,0xcc,0xc3, + 0x14,0x58,0xeb,0xb0,0x8f,0x4c,0xc4,0x07,0x0f,0x73,0xfc,0xff,0xcc,0xf1,0xf5,0x17,0x3b,0xac,0xe3,0xdf, + 0x01,0x01,0xc0,0xcf,0x3c,0xff,0xcf,0x30,0xdc,0x55,0xf3,0xbb,0x88,0xf0,0xc0,0x40,0x4d,0xc2,0x33,0xff, + 0x20,0xcc,0x33,0x14,0x48,0x2b,0xbf,0x8f,0x31,0xc4,0x07,0x7c,0xc2,0x33,0xff,0x33,0xcc,0x0d,0x44,0xca, + 0x2f,0xe3,0xf3,0x0d,0x07,0x13,0x30,0xff,0x3f,0xfc,0x8c,0x03,0x51,0x73,0x8b,0xf8,0xfc,0x83,0x40,0x07, + 0x03,0x33,0xf3,0x8f,0xf3,0xc3,0x75,0x1c,0x6f,0xf2,0xff,0x20,0xc0,0x40,0x00,0x33,0x38,0xff,0x8f,0xf0, + 0x24,0x44,0xce,0x6c,0xfe,0x3f,0x20,0x07,0x71,0x30,0x3d,0xff,0x23,0x8c,0xf3,0x1d,0x67,0xcb,0x23,0xe3, + 0xff,0x71,0xc0,0x4c,0x03,0x7f,0xcf,0xff,0xcf,0x97,0x7d,0xf2,0x38,0xf8,0xf2,0x0c,0x00,0xd3,0x0c,0x02, + 0xcc,0xff,0xb3,0x35,0x1c,0x63,0xff,0xff,0x2c,0x9c,0x7c,0xd0,0x03,0x0c,0xce,0x3c,0xfe,0x35,0x18,0x23, + 0xff,0xff,0xfc,0x80,0x34,0xf4,0x0c,0xc0,0xfc,0xbe,0x60,0xf7,0x5c,0x23,0x8f,0x3b,0xcf,0x4f,0xcc,0x0f, + 0xc0,0xf3,0xc0,0xfc,0xc0,0xfc,0xc0,0xf3,0x33,0x33,0x03,0xc3,0xc3,0x0f,0x00,0x33,0x30,0x3c,0x03,0xc0, + 0x0c,0xcc,0x3c,0x0c,0xc3,0x03,0x03,0x03,0x00,0x3c,0x00,0x33,0xc0,0x0f,0x0c,0x0c,0xcc,0x00,0xf3,0x00, + 0x0c,0x30,0x3c,0x00,0xcc,0x30,0x30,0x0c,0xc0,0x30,0x0f,0x0c,0x03,0x3c,0x00,0xcc,0x0c,0x0c,0x03,0x0c, + 0x03,0xf3,0x00,0xc0,0xc0,0xc0,0xc0,0x3f,0x00,0x30,0xc3,0x30,0x0c,0x30,0x03,0xf3,0x00,0xc0,0xc3,0x00, + 0xf0,0xc0,0x3c,0x00,0xcc,0xc0,0x0c,0x33,0x00,0x3c,0x30,0x0c,0xc0,0x0f,0x0c,0x03,0x03, +}; +static constexpr VoiceClip alertsSoundOnlyClip = { + alertsSoundOnlyData, sizeof(alertsSoundOnlyData), 7108, 8000, VoiceCodec::G72616 +}; +#endif // HAS_DRV2605 +#ifdef HAS_DRV2605 +// "Vibration only" +static const uint8_t alertsVibrationOnlyData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x56,0xab,0xec,0x03,0x31,0x00,0x10,0x3c,0x3e,0xff, + 0x55,0xeb,0xcf,0x1c,0x3c,0x00,0x40,0x23,0xfc,0xf3,0x95,0x3a,0xcc,0xd0,0x3f,0x34,0x1c,0x2c,0xf3,0x0c, + 0xe5,0x4a,0xcc,0xc1,0x3e,0x0c,0x00,0xfa,0x0c,0x03,0xed,0x5e,0xff,0xc1,0x32,0xc3,0x77,0x3f,0x00,0x37, + 0xbd,0x5f,0xb2,0x30,0x0b,0xc0,0x04,0xe3,0x00,0xc2,0xfd,0x5f,0xbf,0xc1,0x3f,0xdc,0x70,0xe3,0x0c,0xcf, + 0xcd,0x5e,0xb2,0x30,0x2f,0x04,0x03,0xe0,0x0c,0xff,0x31,0x5b,0xff,0xc0,0xef,0x03,0x0f,0xf1,0xcc,0xff, + 0x1d,0x5e,0xce,0x33,0x2c,0x03,0x73,0xc7,0x0f,0x33,0x01,0x7b,0x8e,0x33,0xa0,0x3c,0x3f,0xd3,0x33,0x30, + 0x35,0x6e,0x08,0x33,0xb0,0x30,0xff,0x4c,0xf3,0xc0,0x25,0x2b,0x2c,0xce,0xcc,0x07,0xfc,0x70,0xcf,0x00, + 0xd5,0xe8,0xed,0x3f,0x30,0x47,0xf7,0x00,0xf8,0x30,0xd4,0xae,0xe0,0xf8,0xf0,0x4f,0x3c,0x13,0x23,0x30, + 0x5e,0xba,0xc3,0xbf,0x80,0x3c,0xe0,0x7c,0xff,0x0d,0x7a,0xeb,0x0f,0x8e,0x00,0xcf,0x80,0xcf,0xfc,0x35, + 0xee,0xec,0x3f,0x2c,0x03,0x3f,0x03,0x48,0xc3,0x14,0xbe,0xf7,0x30,0xb7,0x71,0xe0,0xc0,0x3f,0x3d,0x5f, + 0xea,0x33,0x0b,0xf3,0x43,0xcf,0x00,0xcf,0xcd,0x5f,0xeb,0xfc,0x3e,0x2c,0x03,0x38,0xf0,0x0f,0x21,0x70, + 0xae,0xe0,0xcc,0xbc,0xc0,0x23,0x8c,0x30,0xf5,0x37,0xab,0xb0,0xd3,0xf3,0xd0,0x02,0xcf,0x03,0x35,0x37, + 0xab,0xb3,0xdc,0xb3,0xdc,0x73,0xce,0x03,0x05,0x77,0xbb,0xb3,0xdc,0xf3,0xdc,0x43,0xcf,0xf0,0xc1,0x74, + 0xae,0xec,0xc4,0x0d,0xf4,0x07,0x73,0xf3,0x30,0x5c,0x6a,0xba,0x0c,0x07,0x0f,0x74,0x03,0x7f,0xf3,0xd4, + 0x0f,0xaa,0xbf,0x01,0xc7,0x0d,0x31,0xcc,0xff,0xf1,0x01,0xfb,0xeb,0x8f,0xdd,0xc1,0xc0,0x00,0x30,0xcf, + 0x17,0x03,0xaf,0xb8,0xfc,0xdc,0x00,0x00,0x01,0xc0,0xc5,0x70,0x7f,0x8b,0xbf,0xfc,0x30,0x03,0x70,0x30, + 0x00,0x47,0x70,0x38,0xfb,0xfe,0x3c,0x30,0x77,0x0c,0x33,0x3d,0x77,0x00,0xe3,0xbf,0xe3,0xcc,0xdc,0x00, + 0x33,0x0f,0xf4,0x04,0xc0,0xbf,0xb8,0x8f,0xcc,0x00,0x13,0x70,0xcc,0xdc,0x03,0x0f,0xe8,0x88,0xfc,0xcc, + 0x00,0x70,0x30,0xcf,0x70,0x0c,0x3e,0xfe,0xf8,0xe0,0xf0,0xc7,0x00,0x0c,0x34,0xc0,0x0f,0xcb,0xfb,0x23, + 0xf3,0x03,0x04,0xc0,0x3c,0xd7,0xc0,0x3f,0x3b,0xf8,0xff,0xcc,0x0c,0x71,0xc0,0xc3,0x4c,0x03,0xcf,0xbf, + 0x8f,0xf3,0x30,0x31,0xc0,0x03,0x0d,0x73,0x0f,0xce,0xf3,0x8f,0x3c,0xc0,0xdc,0x03,0x00,0xc5,0x8c,0xf2, + 0x0d,0x87,0x83,0x23,0x48,0xc3,0xf1,0x2f,0x5f,0xc3,0x81,0x23,0xc8,0x1f,0xf1,0x30,0xe9,0x33,0xc3,0xe0, + 0xdc,0xc2,0x34,0x80,0xa1,0xfc,0xbd,0x37,0x0f,0xc7,0xc3,0xef,0xf2,0xd4,0xbc,0xfe,0xcf,0xc1,0xcc,0x00, + 0xc3,0x33,0x55,0xfb,0xff,0x8c,0xf0,0x13,0x00,0x0c,0x33,0x54,0xeb,0xef,0xf1,0xc0,0x17,0x30,0x0f,0xcc, + 0x52,0xee,0xef,0xc0,0x05,0x00,0xc0,0xff,0xcc,0x52,0x8e,0xfb,0x00,0xc5,0x30,0xc3,0xfc,0xfd,0x5b,0xff, + 0xa3,0xd3,0x11,0xf7,0x3f,0x3c,0xe5,0x3b,0x0b,0xe0,0xdc,0x1c,0xc3,0x3f,0x3c,0x85,0xfb,0x3a,0x03,0x71, + 0x0f,0x0f,0xcc,0xcf,0x14,0xef,0xe8,0x0d,0xd0,0x3c,0x3f,0x0f,0x3c,0xd5,0xb3,0xac,0x00,0x40,0xf0,0xfc, + 0x3c,0xcf,0x57,0x8e,0xbc,0x01,0x1c,0xc3,0xf7,0xcc,0xcf,0x52,0xce,0xb3,0xd1,0x0c,0x3f,0x03,0x03,0xfd, + 0x4f,0x2a,0x3c,0x11,0xc0,0xfc,0x30,0x3f,0x20,0x5f,0x6e,0xff,0x10,0x00,0xf0,0xc0,0xcc,0xf9,0x4f,0x6b, + 0xf8,0x00,0x0f,0xf3,0xc7,0x0c,0xfd,0x58,0x2f,0xf8,0x01,0x03,0x0f,0x30,0xc3,0xc9,0x49,0xf8,0xf8,0x37, + 0x03,0x3f,0x0c,0x0c,0xfd,0x4d,0x2b,0xec,0xc1,0x1c,0x3c,0xcc,0x33,0x3d,0x7d,0xeb,0xa3,0x31,0x00,0xf0, + 0xf0,0x0c,0xf1,0x71,0xaf,0xbf,0xc4,0x00,0xc3,0xc0,0xc3,0xcd,0x75,0xbf,0x88,0xc0,0x13,0x33,0xcf,0x0c, + 0xcd,0x71,0xbe,0xbf,0x04,0x13,0x0f,0xcf,0x0c,0x3d,0x74,0xa2,0xfb,0x07,0x04,0x3f,0x7f,0xc0,0xfd,0x74, + 0xbe,0xbe,0x30,0x13,0x70,0xfc,0x3c,0xf1,0x74,0x8e,0xbb,0x33,0x40,0x70,0xfc,0xf3,0xf1,0x37,0x8e,0xbb, + 0x30,0x44,0x30,0xff,0xcc,0xc1,0x07,0x8e,0xe8,0xf3,0x44,0x01,0x8f,0x3f,0xc1,0xc7,0x9a,0x28,0x8c,0x01, + 0x07,0x33,0xfe,0x31,0x37,0xda,0x2f,0xe0,0x01,0x07,0x0f,0x23,0xcd,0x37,0xda,0x2f,0xb0,0x01,0x43,0x1f, + 0xff,0xfd,0x34,0x9e,0xfb,0xec,0xc1,0x04,0x03,0x3f,0xc9,0x24,0xc6,0xfb,0xef,0xcd,0xd0,0x77,0x33,0x23, + 0x79,0x37,0x8e,0x2f,0xfc,0x04,0x04,0x30,0xc8,0x18,0x7c,0x82,0xbf,0xfc,0x37,0x10,0xc0,0xfc,0xdf,0x4c, + 0xe3,0xbe,0xcf,0x01,0x04,0x30,0x3f,0xd7,0x4d,0x23,0xef,0xbf,0x3d,0xdc,0x70,0xcf,0x37,0xd0,0x3c,0xef, + 0xee,0x08,0x00,0x01,0xf3,0x34,0x9f,0x73,0xc8,0xe2,0xc0,0xcc,0x03,0x30,0xc5,0x86,0x03,0x8f,0x20,0x80, + 0xf0,0xf7,0x9f,0x03,0x09,0x96,0x61,0xcb,0x73,0xb0,0xc2,0xf2,0x7c,0x9f,0x7c,0x73,0x0c,0xf6,0x74,0xfc, + 0x36,0xdf,0x83,0x7f,0x9c,0xfc,0x8d,0xe4,0xdc,0xf6,0x0c,0x80,0x22,0x01,0xcf,0x34,0xfb,0x03,0xcb,0x73, + 0x33,0x3d,0x02,0x37,0xdc,0xd3,0x0c,0x4e,0x0b,0xcc,0x6e,0xf8,0xf2,0x30,0x8c,0x4e,0x30,0x33,0xcc,0xc0, + 0x74,0x43,0x7f,0xc3,0x27,0x81,0x33,0x44,0xdc,0xfe,0xc2,0xcf,0x0f,0x0f,0xec,0xe3,0x24,0x1f,0xf3,0x4c, + 0x8c,0x40,0xd0,0xe0,0xdc,0xf4,0x08,0xc3,0x0d,0xcf,0x3d,0xdc,0x00,0x0b,0xbd,0x0c,0xc0,0x36,0x11,0x3e, + 0x3b,0xc3,0x70,0x1d,0x44,0x3d,0xf0,0xf0,0xef,0x34,0x00,0xb7,0xf0,0xd3,0x4f,0xcc,0x70,0x81,0xe0,0xf3, + 0x87,0x8c,0x53,0xcf,0x0f,0x20,0x39,0x93,0x2f,0xdc,0xb7,0x3c,0x46,0xff,0x20,0x0b,0x23,0xcd,0x37,0xc1, + 0x00,0x30,0xc1,0x3f,0x3c,0xb3,0x0f,0x78,0x00,0x73,0x9b,0x37,0xd1,0x32,0x1c,0xe3,0x3f,0x33,0xb0,0x25, + 0xc0,0x77,0xc0,0x23,0x0f,0x23,0xcf,0xf1,0xd0,0x04,0x90,0xf3,0x88,0x03,0x11,0x0f,0xd0,0xfb,0xcc,0xc3, + 0xc0,0x83,0x1c,0xdf,0x4d,0xdc,0x7f,0x88,0x44,0x1c,0xf2,0x0d,0x0e,0x03,0xc3,0x00,0x47,0x0f,0xe2,0x00, + 0xe7,0x7f,0xf3,0x3f,0xd0,0x04,0x10,0xb7,0xff,0xbe,0xb4,0x53,0xcf,0x41,0x0b,0xeb,0xfc,0xec,0x3d,0xf0, + 0x00,0x01,0x54,0xeb,0xef,0xec,0x30,0x31,0x0c,0x34,0xf5,0x12,0xef,0xac,0xf3,0xc0,0x00,0x00,0xc0,0xd4, + 0x7e,0xfe,0xf3,0x3c,0xdc,0x1c,0x0c,0x02,0x50,0xca,0xff,0xff,0x3c,0x0c,0x40,0x70,0x0d,0x5c,0xef,0xf8, + 0xfc,0xf3,0x70,0x00,0x73,0x35,0x33,0xef,0x88,0xfc,0xf0,0xdc,0x70,0x0c,0x35,0xf3,0xef,0xf8,0x23,0x3c, + 0x00,0x70,0x00,0xc5,0xce,0xc8,0xb3,0xfc,0xf0,0x00,0x04,0xcd,0xdc,0xce,0xff,0xfc,0x8c,0xc4,0xc4,0xf1, + 0xf3,0xd6,0x0b,0xfe,0x3f,0xf3,0x00,0xdd,0xf0,0x02,0x40,0x8b,0xff,0xf3,0xf0,0xdc,0x00,0x30,0xc3,0x5f, + 0x28,0xff,0xcf,0xcc,0x43,0x04,0xf7,0xc1,0x3c,0xbe,0x32,0x0b,0x0c,0x00,0x0c,0x03,0x31,0x7f,0xec,0xfe, + 0x0e,0x00,0x03,0x00,0xc3,0xcd,0x4b,0x2f,0x3f,0x08,0xc0,0x07,0xdf,0x03,0x21,0x6f,0xee,0x33,0xcf,0xd3, + 0x40,0x1c,0x37,0xcc,0x5e,0x38,0x8c,0xcf,0xc0,0x11,0xc7,0x0c,0x3f,0x5f,0xfa,0xf3,0xb3,0xc3,0x05,0xc1, + 0xcc,0x0f,0x13,0xfb,0xa3,0xe3,0xf0,0xc1,0x07,0x00,0x0f,0x35,0x8b,0xb8,0x23,0x38,0x00,0x77,0x0c,0x03, + 0x81,0x78,0xef,0x3f,0x0b,0x1c,0x07,0x01,0x80,0x3c,0x52,0x2e,0xfc,0x80,0x8c,0xf1,0xc7,0x73,0x03,0x05, + 0x38,0xab,0x31,0xfe,0x0f,0x40,0x13,0x03,0x00,0x5b,0xfa,0xc2,0x0c,0x83,0x01,0x37,0x09,0xcf,0x04,0xa8, + 0xbf,0x7d,0xc2,0x00,0x1c,0x33,0xf3,0x32,0x5b,0xb7,0xb1,0xc0,0xfc,0x13,0x0c,0xff,0xf7,0xc1,0x7a,0x3f, + 0xd7,0x30,0xfc,0x07,0x0f,0xe3,0x30,0xd5,0xe8,0xec,0x47,0x33,0x20,0x1c,0xcf,0x8f,0x03,0x57,0xab,0xed, + 0x13,0xc3,0xcd,0x4c,0x8f,0xfc,0x0c,0x56,0xaf,0xe0,0x43,0xc3,0xcd,0x4f,0x23,0xf3,0x0d,0x5e,0xaf,0xb0, + 0x5f,0xc0,0x34,0x4f,0xe3,0xf3,0x01,0x4a,0xbe,0xf1,0x03,0xcc,0x01,0xdf,0xf3,0x30,0xf5,0x7e,0xfe,0xf0, + 0x73,0xf7,0x1d,0x03,0xf3,0x0c,0xcd,0x4a,0xcb,0xfd,0x0f,0xf1,0x01,0x03,0xfc,0x33,0xf9,0x4e,0xfb,0xe3, + 0x1c,0xf3,0x40,0x1c,0x23,0x30,0xfc,0x52,0xef,0xe3,0xdd,0xff,0x00,0x03,0x7f,0x30,0x3f,0x57,0xef,0xe3, + 0xf7,0x08,0xc1,0xc0,0xc3,0xcc,0x0f,0xd5,0x2f,0xbf,0xf3,0x0c,0xf0,0x47,0x33,0x0f,0xcc,0xe5,0x4e,0xec, + 0xf0,0x80,0x33,0x04,0x0f,0x30,0xcf,0xcd,0x57,0xbf,0x83,0x33,0xcc,0xc4,0x13,0xcc,0x30,0xff,0x15,0xee, + 0xff,0x08,0xcc,0x0c,0x10,0x0f,0xc0,0xcf,0x85,0x7e,0xfb,0x0f,0x3f,0x0c,0x04,0x03,0xfc,0x03,0xe1,0x5c, + 0xbb,0xf3,0xc8,0xf0,0x01,0x07,0x0f,0x00,0xcc,0x17,0xfa,0x8f,0x0f,0xf3,0x00,0x10,0x0f,0x30,0x7f,0x14, + 0x3a,0xe3,0xc3,0xf3,0xc0,0x11,0x00,0xf0,0xc3,0xf4,0x4e,0xe8,0x8c,0xf3,0xc0,0xd0,0x47,0x0f,0x70,0x3c, + 0x10,0xba,0x88,0xf2,0x33,0x00,0x51,0xc3,0xc1,0xcf,0xd4,0x3a,0xf8,0xf3,0xfc,0xc0,0x14,0x4d,0xf7,0x03, + 0x21,0x32,0xb8,0xf3,0xff,0x03,0x01,0x10,0xc0,0x0c,0x3f,0x53,0xeb,0xe3,0xf8,0xcc,0x30,0x10,0x00,0xdc, + 0x08,0xc5,0xfb,0xa0,0x88,0xf0,0xc3,0x04,0x77,0x00,0x0c,0xf1,0x4e,0xeb,0x22,0xff,0x00,0xc0,0x41,0xc0, + 0x37,0xcf,0x15,0xbe,0xe3,0xbf,0x83,0x30,0x04,0x70,0xdc,0xcc,0xf1,0x4e,0x8e,0x3e,0x8c,0x30,0xc1,0x00, + 0xc3,0x03,0xf3,0xd5,0x3b,0x38,0xbb,0xf3,0x30,0x04,0x37,0x00,0xf3,0xf3,0x57,0x8f,0xfe,0xec,0xcc,0xc0, + 0x4c,0x03,0x7c,0xf3,0xf9,0x5f,0x82,0x3e,0xcc,0xf0,0xc4,0x00,0x00,0xcc,0xff,0x8d,0x5e,0x33,0xbf,0x83, + 0xf7,0x13,0x1c,0x33,0x3c,0xff,0x35,0x7b,0x0e,0xef,0xff,0x37,0x71,0xc7,0x0c,0xfc,0xe3,0xf5,0x7b,0xdb, + 0xec,0xff,0x01,0x04,0x07,0x30,0xfc,0xe3,0xf5,0x6c,0xce,0xbf,0xe3,0xc4,0xd0,0x1c,0x0c,0x23,0xf3,0x85, + 0x3b,0x1b,0xef,0xf8,0xf4,0xc4,0x07,0x03,0x33,0x82,0x31,0x7f,0xcf,0xee,0x3f,0xcd,0xc0,0x07,0x0c,0xcf, + 0x23,0xf1,0x5e,0x0e,0x3b,0x38,0xf1,0xc0,0x07,0x33,0x03,0xf3,0xcc,0x56,0x3c,0xeb,0x3f,0xcd,0x30,0x00, + 0x33,0x03,0xc3,0xcf,0x95,0x63,0xcb,0xfc,0xfc,0x00,0x00,0x13,0x70,0x0f,0x32,0x3e,0x57,0xec,0xb3,0x33, + 0xc0,0x00,0x10,0x0c,0x73,0x3c,0xf8,0x81,0x5e,0xff,0xc0,0xfc,0xc7,0x40,0x0c,0x0c,0x3f,0xff,0x8f,0xe5, + 0x4a,0x3c,0xc0,0xe3,0x00,0x10,0xf0,0x3d,0xf3,0x83,0xf3,0x35,0x4a,0xb3,0xc4,0xf8,0x0c,0x40,0x3d,0xcf, + 0x0e,0x3c,0xfc,0x3d,0x52,0xb8,0x8c,0x0e,0x0c,0xd1,0x30,0xcf,0x00,0xe3,0xff,0xcf,0x15,0xef,0xb8,0xd3, + 0xcf,0xf4,0x40,0x18,0xc0,0xcc,0x88,0xcf,0x31,0x52,0xa2,0xf4,0x3f,0x2c,0x10,0x1c,0xf0,0x34,0xcb,0xf2, + 0x0c,0xf5,0x4b,0xea,0x0c,0xdf,0xf0,0x05,0x0c,0xcf,0x4f,0x08,0x8f,0x30,0xf1,0x5b,0x2a,0xcf,0x13,0xb3, + 0x05,0x00,0xfc,0x30,0x0b,0x2f,0x33,0xcc,0x57,0xca,0xbe,0x03,0xcf,0x84,0x14,0xc3,0x37,0x03,0xff,0xf3, + 0x38,0x94,0x03,0xab,0xb7,0xc3,0xb0,0x05,0x00,0x83,0x0c,0xf3,0xfc,0xc3,0xf2,0x54,0x3e,0xbb,0xd8,0x08, + 0xcc,0x5d,0x3c,0x3c,0x0c,0xff,0xfc,0xf7,0xc8,0x51,0xfb,0xe8,0xf0,0xff,0x24,0x11,0xc3,0x30,0xc3,0xff, + 0xf8,0x33,0x33,0x55,0x3b,0xfb,0xc0,0xf0,0x80,0x10,0x0f,0xcf,0x70,0xf8,0xe3,0x30,0xc8,0xd4,0x5b,0xcb, + 0x3c,0x0c,0xb3,0x05,0xdf,0x0f,0x0c,0x3f,0xff,0xcd,0xf2,0x75,0xc7,0xfa,0xf8,0x3c,0xc0,0x84,0x40,0x02, + 0x30,0xfc,0xf3,0xfc,0x0f,0x03,0x55,0x2f,0xbe,0xdf,0x30,0x3d,0x10,0x03,0xcc,0x20,0xff,0xcf,0xcc,0x63, + 0x05,0x1f,0x2b,0xbc,0xf7,0xcc,0x40,0x40,0xc3,0x3f,0x3f,0xe3,0xdf,0x00,0xcc,0x55,0xf2,0xef,0x38,0x30, + 0xc0,0x40,0x73,0x3c,0xcf,0x23,0xcf,0x30,0xdf,0x75,0x1f,0x2f,0xbf,0xc2,0x0d,0xc1,0x00,0xdc,0xf3,0xfc, + 0xff,0x3c,0x33,0x00,0x55,0x63,0xfe,0x23,0x3c,0xc7,0x04,0x00,0x27,0xcf,0xf3,0xff,0x0f,0x0c,0x75,0xd3, + 0x3b,0xa3,0x8f,0xcd,0x34,0x1c,0x00,0x3c,0x8b,0x3f,0x8c,0x3c,0xdc,0x51,0x67,0xbb,0xff,0xfc,0x83,0x45, + 0xc0,0x03,0xcc,0xa3,0xf8,0xfc,0xc0,0x35,0xd7,0x6f,0xe2,0xf2,0x3c,0xc7,0x10,0x34,0xc0,0xff,0x2c,0x8f, + 0x3c,0xdc,0x45,0x83,0xfb,0xbc,0xbe,0x0d,0xc0,0x10,0x0c,0xdf,0xcf,0xff,0xfc,0xfc,0x14,0x59,0xf3,0xcf, + 0xbc,0xb3,0xcd,0xf4,0x00,0x0c,0x33,0xcb,0x23,0xff,0x25,0xdf,0x7c,0xfe,0x08,0xf8,0xcc,0x0c,0x00,0x0d, + 0xcd,0xf3,0x8c,0xe3,0xfd,0x47,0x78,0xf2,0x3e,0x3f,0xc3,0x1c,0x07,0xdc,0x03,0xc3,0xff,0xfc,0x89,0x70, + 0xd8,0x2c,0x8f,0xbc,0xfd,0x80,0x70,0xd0,0x30,0x33,0xff,0x3f,0x8d,0x74,0xc8,0x2f,0xcb,0xce,0x30,0xc0, + 0x02,0xc3,0x03,0xf3,0x03,0xf3,0x03,0xf0,0x33,0xf0,0x33,0x30,0x3c,0x30,0x3c,0x30,0x30,0x30,0x30,0x30, + 0x33,0x00,0xf0,0x30,0xc0,0xfc,0x03,0x30,0x03,0xc3,0x00,0xcc,0x00,0xcf,0x00,0x3c,0x30,0x0c,0xc0,0x30, + 0x30,0x30,0x0c,0xc0,0xc3,0x3f,0x00,0x30,0x30,0xc0,0x33,0x00,0x33,0x0c,0x0c,0x30,0x3f,0x00,0xc0,0xc3, + 0x00,0xcc,0x0c,0x30,0x0f,0xcc,0x00,0x30,0x0f,0x3c,0x03,0x03,0x30,0x0c,0x3c,0x00,0x33,0x00,0x3c,0x30, + 0x0c,0xc0,0x3c,0x30,0x03,0x30,0x0c,0x3c,0x00,0x33,0x00,0x3c,0x30,0x0c,0xc0,0x0f,0x0c,0x03,0x30,0x3c, + 0xc0, +}; +static constexpr VoiceClip alertsVibrationOnlyClip = { + alertsVibrationOnlyData, sizeof(alertsVibrationOnlyData), 8723, 8000, VoiceCodec::G72616 +}; +#endif // HAS_DRV2605 +#ifdef HAS_DRV2605 +// "Silent" +static const uint8_t alertsSilentData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x9a,0x7c,0xd8,0x20,0x0f,0x83,0x1c,0xc2,0x7c,0x1f, + 0x3f,0x40,0x3e,0xf0,0x89,0x32,0xf0,0x1e,0x1c,0x33,0x2d,0xfc,0x23,0xf3,0x4f,0x1c,0x73,0x3d,0xa0,0xf4, + 0x32,0xf4,0xc2,0xb3,0x02,0xd0,0x3e,0x3f,0xcf,0xd7,0xf8,0xc4,0xc7,0xf0,0x1f,0x27,0x08,0xac,0x70,0xc8, + 0xf7,0xf0,0x80,0x32,0x90,0x0e,0xd0,0xcb,0x43,0x1c,0xec,0x73,0xef,0x02,0xf7,0xc0,0x8a,0xc3,0xdb,0x07, + 0x0d,0xce,0xf7,0xf8,0x00,0xbc,0xbc,0x43,0xed,0x07,0x20,0x12,0x33,0x5e,0x0c,0x7b,0xfd,0x23,0xf1,0x87, + 0x34,0xdf,0x37,0xcd,0x43,0x4c,0xb8,0x3c,0xf0,0x81,0x30,0x20,0x0f,0xa1,0x00,0xa0,0xf3,0x84,0x06,0xbf, + 0x4e,0xdc,0x07,0x2c,0xc0,0x67,0xcc,0xf7,0x7c,0x0c,0x2e,0xfd,0xc0,0x30,0xd0,0xf6,0xcf,0xb3,0xef,0x1f, + 0x03,0x04,0xfb,0xf3,0x70,0xbc,0x37,0xf9,0x04,0x2c,0x10,0x33,0x3b,0xff,0x4f,0x10,0x32,0xbf,0xbc,0xfd, + 0x53,0xfa,0xff,0xc3,0xfc,0x01,0x00,0xc8,0xc0,0x0b,0x85,0x0b,0xeb,0xcf,0xdf,0xcd,0xc4,0x0c,0xfc,0xcf, + 0xce,0xd4,0x2f,0xaf,0x0c,0x0f,0xc0,0x10,0xf3,0x2d,0xcf,0xfe,0x50,0xbe,0xe0,0xc3,0x6c,0x00,0x1f,0x33, + 0xc3,0x3c,0xfd,0x5f,0x8a,0xcd,0xc0,0xe0,0x1d,0x33,0xcc,0xc3,0xfc,0xf1,0x4e,0xee,0x37,0x33,0xf1,0x00, + 0xc8,0x0c,0xcf,0xf0,0xc5,0x7b,0xef,0xd3,0xf3,0x91,0x30,0xfc,0x03,0x3f,0xc3,0x35,0x6f,0xef,0x1f,0xcf, + 0xd1,0xf3,0xfd,0xcf,0x3f,0x03,0x05,0xe8,0xbc,0x18,0xf3,0x10,0xf3,0x31,0xcf,0x3c,0x03,0xd5,0xef,0xb3, + 0x4e,0x33,0x47,0xf3,0x30,0x3f,0xcf,0x1f,0xc5,0xe8,0xb3,0x1f,0xcc,0x10,0xfc,0x30,0x3f,0xc3,0x1f,0x95, + 0xfe,0xff,0x4f,0xcf,0x44,0xf3,0x30,0x3f,0x33,0x02,0x35,0x3a,0xec,0xdf,0x3c,0xd1,0xf3,0xcd,0x3f,0xcc, + 0x03,0xf5,0x7e,0xe8,0xd3,0xcf,0xd4,0x30,0x80,0x0f,0xff,0x03,0xc9,0x4e,0xeb,0xc3,0x8f,0xc4,0x0c,0xf0, + 0x0c,0xff,0x1c,0xcc,0x52,0xbe,0xc3,0x8e,0x24,0xcc,0xe0,0x0c,0xfe,0x70,0xc2,0x52,0xbe,0xf7,0xf2,0xf1, + 0xcc,0xf8,0x73,0x3e,0x03,0x32,0x17,0xae,0x80,0xfc,0xb1,0x00,0xfc,0x4d,0x3f,0x03,0x0f,0xd4,0xfa,0xb3, + 0xcc,0xbc,0x01,0xf3,0x0d,0x33,0x3c,0x4c,0xd5,0xfe,0xbf,0x3d,0xbc,0x01,0x33,0x30,0x0f,0x3f,0x0c,0xf5, + 0x7b,0xac,0xf0,0xf8,0xc0,0x4f,0x3c,0x06,0x0b,0xf3,0x35,0x72,0xeb,0x3c,0x6c,0xc3,0x43,0xdf,0x03,0xcf, + 0xf3,0x31,0x4e,0xeb,0xf2,0x7f,0xc3,0x40,0xcf,0x37,0x33,0xf3,0x01,0x5f,0xea,0x33,0xc2,0xc3,0x10,0x33, + 0xf0,0x33,0xff,0x31,0x53,0xba,0xf3,0x83,0xb3,0x01,0x33,0x3c,0x0c,0x2f,0xcf,0x57,0xfe,0xbc,0xf7,0xfc, + 0xc1,0x70,0x0f,0x03,0x0f,0x8f,0xd5,0xcf,0xa8,0xfc,0x1b,0x30,0x14,0xc3,0x3d,0xcc,0xfb,0x3d,0x5f,0xee, + 0x8c,0xc0,0xec,0x01,0x43,0x0f,0xc0,0xc3,0xec,0x50,0xca,0xaf,0xfc,0x0b,0x30,0x11,0xc0,0xff,0x0c,0xf2, + 0xf5,0x0f,0xea,0xe3,0xc0,0xfc,0x01,0x10,0x30,0xcc,0x3f,0x88,0x44,0x8b,0xbb,0x33,0x37,0xf1,0x74,0xd3, + 0x30,0x3f,0x3f,0xb5,0x4e,0xfa,0xfc,0x30,0xc3,0xc4,0x40,0x70,0xcc,0x3c,0xff,0x85,0x3e,0xbe,0x8f,0x7c, + 0xf0,0x04,0x1d,0xc3,0x0c,0xcf,0xff,0xd4,0x2e,0xe2,0xcc,0x0f,0x30,0x04,0x00,0x33,0x03,0xcb,0xbf,0xd5, + 0x2e,0x3f,0xcc,0x0c,0x80,0x10,0x00,0xc3,0xc3,0x22,0x3f,0xf5,0x4b,0x8f,0xcc,0xdc,0xfc,0x11,0xcc,0x33, + 0xc0,0xcf,0xe3,0xfd,0x53,0xb8,0xfc,0xc0,0x38,0xc1,0x00,0x0c,0x30,0x0f,0xfb,0xff,0xd5,0x6f,0xfc,0xcc, + 0x0e,0xcd,0x04,0xc0,0xc3,0x00,0xff,0xe3,0xcf,0x57,0xb8,0xcf,0x0f,0x2f,0x04,0x70,0x30,0x00,0x0f,0xff, + 0x3f,0xe1,0x5e,0xf2,0x33,0xc2,0x38,0x1c,0x70,0xdc,0x00,0xce,0x3f,0x3f,0xf5,0x7a,0xfc,0xf0,0x3f,0xb0, + 0x44,0xdc,0x0d,0xdc,0xff,0xf3,0xcf,0xf5,0x7a,0xc8,0xf0,0x32,0xfd,0x13,0x70,0xc0,0x1c,0x23,0xfc,0xfc, + 0xe1,0x5a,0xfe,0x3c,0x02,0xe3,0x40,0x1c,0x30,0x10,0xff,0xff,0x3c,0xec,0x57,0xb3,0xe0,0xc7,0xec,0xdd, + 0x00,0x33,0x07,0x0f,0x23,0xcc,0xff,0x15,0xb8,0xfb,0x00,0xef,0xc7,0x74,0x33,0x00,0x0f,0x3f,0xf3,0xcb, + 0xf5,0x7b,0xcb,0xcc,0x7e,0x27,0x1d,0xc3,0xc0,0x4c,0xff,0xfc,0x3f,0xfc,0x56,0xff,0xbc,0x0f,0xe3,0x00, + 0x43,0x0c,0x00,0x3f,0xbf,0xc8,0xe3,0xd5,0xec,0xec,0xc0,0xb3,0xf0,0x40,0x30,0xc0,0x0c,0x8f,0xfc,0x8b, + 0x25,0x3e,0x3f,0x81,0xfc,0xf3,0x17,0x30,0xc0,0x03,0xf2,0x3c,0x3f,0x88,0x56,0x3f,0x2c,0x7f,0x33,0xc5, + 0xc3,0x0f,0x10,0xf3,0xff,0x0f,0xfe,0xd5,0x2c,0xef,0xdc,0x8c,0xe0,0x70,0xc3,0xc4,0x33,0x3f,0xcf,0xff, + 0xbd,0x5e,0xce,0xf4,0xf3,0xff,0x47,0x1c,0xf0,0x0c,0x3f,0xf3,0xc3,0xef,0x54,0xe2,0xe3,0x0f,0x3e,0xc4, + 0x04,0x3c,0x00,0x03,0xf3,0xf3,0x2f,0x85,0x7f,0x2b,0x33,0xc2,0xe0,0x01,0x0f,0x00,0x07,0xcf,0xf3,0x38, + 0xfc,0x56,0x3f,0xb0,0xf0,0xef,0x77,0x43,0xdc,0xc4,0xf3,0xec,0xcf,0xcf,0xd5,0xe3,0xac,0x0c,0x3a,0xc3, + 0x44,0xc3,0x35,0x30,0xfb,0x33,0xcf,0xfd,0x5f,0x2a,0xf3,0xd3,0xbc,0xc5,0x00,0x3d,0x1c,0x3f,0xf3,0x33, + 0xff,0xd5,0xf2,0xac,0xf0,0x3b,0x3c,0x50,0x03,0x00,0x00,0xb3,0xfc,0x2f,0xed,0x5c,0xca,0xf2,0x03,0xe3, + 0xc4,0x74,0xcc,0x1c,0x7f,0xff,0xcf,0xcf,0xf5,0x0d,0xaf,0xfc,0x78,0xff,0x47,0x43,0x00,0xdc,0xf3,0xf3, + 0x3c,0xec,0xd4,0x32,0xa3,0xcc,0x23,0xf1,0x1d,0x33,0x00,0x0c,0xff,0xcf,0x08,0x8f,0x57,0x3a,0xcf,0xc0, + 0x8f,0x84,0x04,0x30,0xc0,0x0c,0xe3,0xfc,0x38,0xf9,0x5c,0x3b,0x8e,0x0c,0xff,0x90,0x10,0x00,0x87,0x33, + 0xff,0xf3,0x3c,0xf9,0x5c,0x3a,0xfb,0x02,0x0b,0xc7,0x10,0x0c,0xc4,0xc0,0xff,0xf3,0x3c,0xe9,0x40,0x0a, + 0xef,0xcf,0xce,0xc7,0x10,0x03,0xc7,0x30,0xfc,0x8c,0xfc,0xf9,0x5c,0x3a,0xfb,0x33,0xce,0xdd,0x07,0x03, + 0x34,0xc3,0x23,0xf3,0x3f,0x3c,0x54,0xda,0xff,0x83,0x8f,0xf1,0x04,0x00,0xc0,0x30,0xff,0xcf,0x2f,0xfb, + 0x54,0xc2,0xbf,0x83,0xff,0xf1,0xd1,0xf0,0x30,0x70,0xf3,0xcf,0x3f,0xff,0xd5,0x02,0xb2,0xfc,0xe3,0xe7, + 0x71,0x30,0xdc,0x73,0xc8,0xf3,0xcf,0xfc,0xc5,0x70,0xaf,0xe3,0x2f,0xfc,0x43,0x4c,0x00,0x03,0xcf,0xf3, + 0xff,0x8f,0x35,0x5c,0x28,0xc8,0xc8,0xcf,0x10,0xc7,0xc7,0x0c,0xf3,0xf3,0x3f,0x3c,0xdc,0x54,0xca,0xcf, + 0xb3,0xbc,0xc4,0x01,0xc1,0x33,0x3f,0xcf,0xff,0xcf,0xd0,0xd5,0x33,0xb0,0xa3,0xef,0xcd,0x30,0x40,0x1c, + 0x33,0xf3,0x8f,0xe0,0xf0,0xd5,0xc0,0x3c,0xe2,0x2b,0xf8,0xc8,0x00,0x47,0x4c,0x00,0x8f,0xec,0xbc,0x81, + 0x30,0x33,0x3c,0x2f,0xff,0x3f,0x1f,0x10,0x07,0x1c,0xc0,0x8f,0xff,0xc5,0x73,0xe0,0xbf,0xe2,0x38,0x60, + 0x0c,0x40,0x00,0x0f,0xce,0x3e,0x32,0x47,0x0f,0xc2,0xc8,0xb2,0x3c,0xf4,0xc1,0xdd,0xc0,0x3c,0xff,0xff, + 0xc8,0x40,0x0f,0x0a,0x3e,0xf2,0xcc,0xc0,0xd0,0x01,0xc0,0xf0,0x88,0xff,0x20,0x5c,0xfc,0x3b,0xc8,0xf8, + 0x0c,0x0c,0x77,0xc0,0x33,0x9e,0x3c,0xff,0x34,0x00,0xf3,0xe3,0xe3,0xfc,0x30,0x74,0x00,0x4c,0x30,0xf8, + 0xf8,0x8f,0x10,0x0c,0xc8,0x8e,0x3c,0xf0,0x30,0x07,0x0d,0xc3,0xcc,0xfb,0x3f,0xfd,0x43,0x0f,0x3b,0xfb, + 0x3f,0xcc,0x00,0x77,0x00,0x33,0xc3,0xef,0x8f,0x9c,0xcc,0xf0,0xcf,0x30,0xf0,0xcc,0x00,0x2c,0x4c,0x2c, + 0xc8,0x3f,0x70,0xfc,0x0f,0x3c,0x44,0x00,0x0f,0x7e,0x3b,0xfc,0x37,0x00,0x00,0x03,0x88,0xff,0xc3,0x03, + 0xc3,0xc7,0x73,0x80,0xcf,0xc3,0x20,0xcf,0x3b,0x01,0x00,0x37,0x30,0xfe,0xff,0x2f,0x3d,0xd2,0x70,0xe3, + 0x30,0x7c,0xb0,0x33,0x81,0x3e,0xc0,0x5f,0x8c,0xc9,0x3e,0xc0,0xf4,0xfb,0x5c,0xce,0x34,0x38,0xdf,0x06, + 0x83,0x32,0xf4,0x5c,0xff,0x0b,0x38,0xdc,0xe0,0x08,0x47,0x0b,0xef,0x38,0xf5,0x31,0x0d,0xef,0xf9,0xf0, + 0x0c,0x0c,0xa3,0xd3,0x0f,0xc0,0x73,0xf2,0xcf,0x21,0x1c,0x23,0xbc,0xe2,0x04,0x84,0x37,0xf3,0xc3,0xc2, + 0xf0,0xd3,0xf3,0x07,0x0e,0xff,0x89,0x37,0xfb,0xc1,0x2c,0x37,0x08,0xff,0x00,0x9b,0x27,0x1c,0xc2,0x73, + 0x8f,0x72,0x0b,0xf0,0x7f,0x30,0x4b,0xff,0x31,0xf0,0xcf,0x0c,0xfc,0xcf,0xcc,0xfc,0xcf,0xc0,0xc0,0x00, + 0x00,0x00,0x03,0x03,0x00,0xc0,0xc0,0xc0,0xc0,0x3c,0x30,0x0c,0x0c,0xfc,0x03,0x03,0x0c,0x00,0xc0,0xcf, + 0x00,0x30,0x0c,0xc0,0x0c,0x3c,0x03,0x0c,0x0f,0xc0,0x00,0xc3,0x33,0x00,0x30,0xf0,0x0c,0x30,0x3f,0x00, + 0x03,0x0c,0xcc,0x00,0xc3,0xc0,0x30,0xc0,0xfc,0x00,0x0c,0x33,0x30,0x03,0x0f,0x00,0xcc,0x0f,0x30,0x30, + 0x0c,0x30,0x0c,0x0c,0xf0,0x03,0x0f,0xc0,0x00,0xc3,0x03,0xf0,0x00,0x30,0xcc,0xc0,0xf3,0x03,0x0c,0x03, + 0x0c,0x00,0xc3,0x03,0xf0,0x0c,0xc0,0x0c,0xf0,0x00, +}; +static constexpr VoiceClip alertsSilentClip = { + alertsSilentData, sizeof(alertsSilentData), 5717, 8000, VoiceCodec::G72616 +}; +#endif // HAS_DRV2605 +// "GPS on" +static const uint8_t gpsOnData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x96,0x6d,0xdf,0x21,0xde,0x30,0x4e,0xf1,0xcf,0x83, + 0x00,0xcc,0x26,0x09,0xfc,0x08,0xb3,0x70,0xcc,0x4b,0x82,0x32,0x73,0x1f,0x03,0xd8,0xf7,0x00,0xdf,0xe3, + 0x18,0xe3,0x7c,0x31,0xe3,0x3d,0xfd,0x93,0xfd,0xcf,0x27,0x0c,0x23,0xc9,0xf0,0x3c,0x81,0xc3,0x63,0x8c, + 0xdd,0xf3,0x4c,0x8b,0x07,0x2c,0x3b,0xf1,0xff,0x82,0xf0,0x10,0x77,0x0d,0xcf,0x31,0x1c,0xf7,0x7c,0xc3, + 0x73,0xff,0x23,0x3c,0xce,0xe3,0x30,0xdf,0x27,0x3f,0xc3,0x23,0xee,0xf3,0xd3,0x47,0x1c,0x8c,0x0b,0x10, + 0x4b,0x1c,0x31,0x0d,0x03,0xdf,0xf0,0x0c,0xfc,0xb0,0x1f,0x36,0x7f,0xbc,0x23,0x0d,0xc2,0xe0,0xdf,0xe3, + 0x4c,0xfc,0x2f,0xff,0xf3,0xce,0x07,0xc8,0xcf,0x3f,0x3d,0x8c,0xb8,0x10,0x60,0xcc,0xfe,0x02,0x2d,0xf8, + 0x33,0x30,0xbf,0xca,0xc3,0x49,0x10,0xe5,0x30,0xf0,0x80,0x84,0xef,0xd0,0xd3,0x4f,0xd0,0xf3,0x02,0xcf, + 0x2c,0xf4,0xc0,0x54,0x3d,0xd3,0x6a,0xb8,0xf2,0x01,0xc0,0x37,0xc0,0xf3,0x8c,0xf2,0xfc,0xcf,0xbd,0x44, + 0x10,0xea,0xab,0xff,0xc4,0x11,0x00,0xc2,0x1c,0x70,0xbe,0xba,0xc3,0xc1,0x10,0x00,0x3c,0xb4,0xdf,0x7b, + 0xbe,0xbc,0x0c,0x50,0x00,0x3f,0xfc,0x61,0xfe,0x0b,0xec,0xcc,0x10,0x01,0xf3,0xff,0xd8,0x7f,0x82,0xff, + 0xcc,0x13,0x40,0x30,0xef,0xf6,0x08,0x23,0x8f,0xfc,0xc4,0x1d,0x0c,0x0f,0xfd,0x82,0x08,0xe2,0x3e,0x70, + 0x04,0x1c,0x0c,0x8c,0xe7,0xc8,0x2f,0x8f,0xc0,0x04,0x01,0xf3,0x3f,0x60,0x9e,0x2c,0xbf,0x30,0x71,0x1c, + 0x7c,0xc8,0x27,0x82,0x2f,0xff,0xcc,0x41,0x00,0x0c,0xfc,0x20,0x9b,0x7b,0xce,0x30,0x01,0x00,0x7c,0xcc, + 0x26,0x08,0xef,0xff,0x0c,0x07,0x4d,0xf3,0x3d,0x82,0x78,0x8e,0xcf,0x31,0x00,0x77,0xc3,0xe7,0x0b,0x7b, + 0xfe,0x3c,0xc7,0x10,0x07,0xf3,0x32,0x18,0xff,0x8b,0xcc,0xc0,0x40,0x73,0x0f,0xd8,0x27,0x88,0xe3,0xcc, + 0x01,0x03,0x00,0xff,0x73,0x83,0xeb,0xf2,0x0c,0x10,0x43,0x0c,0xfd,0xc2,0x38,0xb2,0xff,0x34,0x10,0x07, + 0xc3,0xf6,0x79,0xe2,0xff,0xec,0x00,0x50,0x00,0xd8,0x08,0x63,0xcb,0xef,0x3f,0x4d,0x13,0x1c,0xcc,0x30, + 0x98,0xef,0xef,0x3c,0x77,0x40,0x03,0x24,0x9f,0x23,0xb2,0xfc,0xf7,0x04,0x34,0xcc,0xf0,0xd8,0x2c,0x8b, + 0xfc,0x90,0x01,0x0c,0x0f,0xc3,0x09,0xb3,0xfb,0x83,0xc0,0x11,0xc0,0x36,0xc6,0x7f,0xf6,0xf8,0x8f,0xc1, + 0xd0,0x07,0x0f,0xf7,0xd8,0x23,0x8b,0xfc,0x9c,0x11,0xc0,0x0f,0xfd,0xe6,0x78,0xe2,0x3f,0xf0,0x40,0x40, + 0x03,0x3f,0xd8,0x63,0xdb,0xe3,0xfc,0xc0,0x74,0x03,0x63,0x20,0xf6,0x09,0xb2,0xff,0x20,0x74,0x01,0x20, + 0xfc,0xf3,0x79,0xf2,0xf8,0xff,0x00,0x10,0x00,0x0e,0x3e,0x18,0x30,0x8f,0xbc,0x8c,0xc1,0x01,0x30,0x3f, + 0xef,0x7d,0x20,0xf8,0xbf,0xfc,0x34,0x10,0x00,0xf2,0x23,0x0c,0x73,0xca,0xfe,0xcf,0x01,0x04,0x00,0xcf, + 0xfb,0xdf,0x00,0x0e,0xfb,0x8e,0xfd,0xcd,0xdd,0xc0,0x33,0xc3,0xcc,0xcf,0xff,0xbf,0xb3,0xf0,0x01,0x04, + 0xc7,0x37,0x03,0xc3,0xef,0xe2,0xcf,0xcc,0xdc,0x00,0x0c,0x03,0x4c,0x0c,0xff,0xe8,0xe3,0xcf,0x30,0x73, + 0x13,0xc3,0x12,0x0c,0xc8,0xcf,0xf3,0x3f,0x01,0xcc,0x70,0x3c,0x70,0xc3,0x3e,0xcf,0xec,0xcf,0xc3,0x1c, + 0x00,0x00,0x03,0x4f,0x3f,0xf8,0x8f,0x3f,0x00,0x0c,0x4c,0x30,0x08,0xf4,0x8c,0xfc,0xff,0x0c,0xc7,0x00, + 0x0c,0x0f,0xf3,0xff,0x18,0xcc,0xfc,0xc0,0xc3,0x07,0x03,0xf0,0xf3,0xfe,0x34,0xfc,0xc2,0x33,0x30,0xf0, + 0xc0,0x70,0x83,0x33,0xf0,0x0e,0xc3,0x03,0xd3,0x3c,0xc3,0xc3,0xf0,0x0d,0x37,0x3c,0x3f,0xfb,0xc3,0xfc, + 0xcf,0x4c,0xf4,0xc1,0x3c,0x0f,0x3f,0x20,0x0c,0xf3,0x00,0x2f,0xf2,0xf0,0xcc,0x00,0x3c,0xc0,0x07,0xcc, + 0xfc,0xff,0x30,0x10,0x0c,0x3e,0x30,0x33,0xbf,0x0b,0xc3,0x34,0xc0,0xf0,0x00,0x8f,0x3f,0xf3,0x00,0x41, + 0x0f,0x33,0xc3,0xf8,0xff,0x03,0xbe,0x30,0xf0,0x10,0x07,0x00,0xf3,0xe3,0xbc,0x83,0x0f,0x03,0x03,0x30, + 0xc0,0x4f,0x32,0xf0,0xff,0xff,0xdf,0x3c,0x7f,0x43,0x13,0xc3,0xff,0x8c,0xc2,0xc0,0x29,0x3c,0xce,0x4f, + 0x7f,0x00,0x36,0x0d,0x8f,0xc0,0xcb,0xb4,0xd3,0xe7,0xc3,0x00,0x8e,0x7c,0x0b,0x73,0x01,0xe4,0xb7,0x8f, + 0xc3,0x34,0xde,0x7c,0x0f,0x6c,0x3f,0x73,0xda,0x3f,0x78,0x2c,0x31,0xc3,0xde,0x0b,0x03,0x49,0x33,0x20, + 0xff,0xb8,0x09,0xe3,0x08,0x30,0x60,0x80,0x37,0xd3,0xcb,0x20,0x27,0xce,0x7c,0xcd,0xef,0xdc,0xc8,0x23, + 0xd0,0xbe,0x70,0xc0,0xc3,0x00,0xfc,0xe2,0xc0,0x1c,0xf6,0xff,0xdc,0x77,0xfc,0xf2,0xcd,0xfc,0x02,0x20, + 0x10,0xe6,0x70,0xcc,0xc4,0x70,0xcf,0x22,0xcc,0xc2,0x30,0xcd,0x13,0x34,0x10,0xab,0xf3,0xc0,0x3f,0x03, + 0xc0,0x34,0x31,0xce,0xfb,0x31,0x84,0x7f,0xef,0x8f,0xf7,0x41,0xd3,0xef,0xf0,0xcd,0x3d,0xf2,0x3c,0xcf, + 0xc2,0x31,0x1c,0xd0,0x42,0xde,0xcf,0xf3,0x2d,0x14,0x0e,0xee,0xbf,0xf0,0x33,0x40,0x03,0x51,0x43,0xbb, + 0xeb,0xfc,0xc1,0x00,0x4c,0x04,0xdc,0x2c,0xbe,0xf8,0xc0,0xc1,0x30,0xcd,0x34,0x9e,0xff,0xbf,0xf0,0xc4, + 0x0c,0x03,0xd3,0x73,0x8e,0xfb,0x3f,0x0d,0x00,0x1c,0x31,0xdf,0x78,0xbf,0xf8,0x33,0x10,0x30,0x0c,0x67, + 0xcf,0x2f,0xb2,0x0c,0xc7,0x43,0x03,0x19,0xf3,0xfb,0xff,0x83,0x70,0x00,0x0c,0xc6,0x7c,0xe6,0xff,0xe3, + 0x03,0x71,0x0f,0x70,0xc2,0x63,0xee,0x3f,0x30,0x00,0x73,0x0c,0x67,0x3f,0xf8,0x8e,0x0c,0x00,0x1c,0x33, + 0x19,0xf2,0xcf,0xec,0x83,0x61,0x00,0x0c,0xc6,0x7c,0x8e,0xcb,0xf7,0xc0,0x40,0x0c,0x00,0x9e,0x7e,0xce, + 0xc8,0xdf,0x43,0x43,0xcd,0x27,0xcf,0xef,0x8f,0xf0,0x00,0x1c,0x02,0x70,0x9e,0xff,0xfe,0x03,0x00,0x1f, + 0x73,0x19,0xf2,0x3f,0xec,0xfc,0x67,0x70,0x7c,0xdc,0x63,0x8f,0xbc,0x83,0xc1,0x1c,0xc0,0x36,0x79,0xfe, + 0xfc,0xb3,0x1c,0x00,0x1f,0x36,0x48,0x22,0x3e,0x20,0x3c,0x40,0x03,0x00,0xd8,0xff,0x8b,0x3c,0xc0,0x70, + 0x13,0xc7,0x18,0x22,0xff,0x2c,0xdc,0x70,0x00,0x30,0xd8,0x22,0xff,0xf3,0xc0,0x77,0x03,0x67,0x08,0xe3, + 0xef,0x20,0x0c,0x70,0x4f,0x37,0x3c,0xb3,0xbf,0xf7,0xcd,0x00,0x0c,0x1c,0x23,0xef,0xec,0xf3,0x04,0x43, + 0x1c,0x19,0xff,0x28,0xf8,0xcc,0x01,0x30,0x0d,0x26,0xd8,0xef,0xc8,0x30,0x10,0x70,0x00,0x9f,0x2f,0x9b, + 0xcf,0x1c,0x10,0xcc,0x06,0x78,0xfe,0xc8,0xf3,0x1d,0x30,0x7f,0x49,0xfe,0x3b,0xff,0x0c,0x1c,0x00,0x09, + 0x27,0x8f,0xe2,0xc2,0x00,0x1f,0x43,0x30,0xdb,0x23,0x8e,0xc0,0xc0,0x70,0x0c,0xc6,0x7f,0xe2,0x2f,0x24, + 0xc4,0x00,0x0f,0x19,0x8f,0x88,0xec,0x37,0x01,0xc0,0xcc,0x24,0x9b,0xec,0x8f,0x0d,0x04,0x0f,0x34,0x9e, + 0x7e,0xfe,0xc8,0x00,0x10,0x7c,0xc3,0xc8,0x3f,0xfb,0x0c,0xc7,0x40,0x33,0x17,0x38,0xe2,0xfc,0xcd,0x00, + 0x1c,0xcc,0x93,0x0c,0xbe,0xff,0xc1,0xc4,0x30,0xcc,0xf5,0xd8,0xff,0xb0,0xf0,0x07,0x03,0xc3,0xc5,0xce, + 0x2f,0x2c,0x30,0x00,0xdc,0xcc,0x01,0x60,0x8f,0x8c,0x30,0x30,0x33,0x00,0x03,0x13,0x6e,0xfc,0xcc,0xd0, + 0x33,0x4d,0xcc,0x3d,0x20,0xb2,0xfc,0x0c,0x70,0xc0,0x33,0x0f,0xf5,0x82,0xfe,0x0c,0x01,0xcd,0xf7,0x0c, + 0xf2,0x35,0xd6,0xae,0x0c,0x40,0x2d,0xc0,0x30,0x8b,0xcd,0x71,0xb8,0xf0,0xd0,0xce,0x0c,0x4c,0xef,0x20, + 0x97,0x7a,0xcc,0x31,0x0c,0xb0,0x07,0x3e,0xcf,0x01,0x79,0xab,0xf4,0xc4,0xff,0x1c,0x1f,0xff,0x30,0x09, + 0x63,0xac,0xe4,0x0c,0x82,0x04,0xff,0x3f,0x13,0x3d,0x6c,0xab,0x84,0xc4,0x8f,0xd0,0xcf,0xfb,0x0c,0x0e, + 0x59,0xeb,0xf9,0xc0,0x20,0xf0,0x73,0xf3,0xf7,0x0c,0xc5,0x9e,0xff,0xdd,0x0e,0x09,0xc0,0x38,0xcf,0x00, + 0xfc,0x5c,0xeb,0xe0,0x04,0xf0,0xf4,0x03,0xff,0x83,0x0f,0x95,0xde,0xfe,0xcc,0x72,0x0c,0x00,0x3c,0xff, + 0x70,0x82,0x5c,0x3a,0xf8,0xc1,0xcc,0xc0,0x00,0xff,0xf0,0x9c,0xf1,0x77,0xbf,0xb7,0x00,0xf3,0x00,0x02, + 0xcf,0x03,0x0b,0xd4,0x1a,0xfe,0x30,0xcb,0x0f,0x40,0xcf,0x33,0x7c,0xfc,0x5d,0xeb,0x38,0xdc,0xfd,0xcd, + 0x08,0xcc,0xf0,0x38,0xc5,0xce,0xa2,0xc1,0xf3,0xc1,0x00,0xf3,0xc0,0x33,0xf0,0x50,0xab,0xff,0x0e,0x3c, + 0x00,0x3f,0xd8,0x0f,0xc8,0xc5,0xcb,0xa3,0xcc,0xe3,0xf4,0x0c,0x20,0xc0,0xfc,0xf0,0x5f,0xba,0x3c,0xde, + 0x30,0x1c,0x32,0x00,0xf3,0xfc,0xd5,0xf8,0xac,0xcd,0xbc,0x31,0x0f,0x3c,0x0c,0xff,0xdc,0x53,0xba,0x3f, + 0xc2,0x83,0x10,0xcc,0xc0,0x33,0xfc,0x05,0x7f,0xa3,0xfc,0x2f,0x30,0x4c,0x33,0x1c,0x0f,0xcd,0x53,0xca, + 0xff,0xc2,0xfc,0xc4,0x03,0x30,0x31,0xff,0x35,0x73,0xeb,0xf8,0x2f,0xc8,0x13,0x73,0x03,0x13,0xcf,0x14, + 0x32,0xaf,0xb3,0xef,0xf1,0x10,0x0c,0x0d,0x0c,0xff,0x50,0xca,0xae,0xcf,0xe3,0x81,0xd0,0x0c,0xcd,0x37, + 0xfd,0x70,0x2a,0xfb,0x23,0x38,0xc0,0x47,0x1c,0x37,0x03,0xd4,0x37,0xae,0xe3,0xfc,0xbc,0x31,0x01,0x37, + 0x70,0x03,0x17,0x0f,0xbb,0xe3,0xb3,0x8f,0x30,0xc0,0x00,0x01,0xc0,0x5c,0xdb,0x3e,0x3f,0xf8,0xfc,0xf3, + 0x09,0xc0,0x01,0xdc,0x5f,0x3f,0x72,0xd8,0x83,0x23,0xcf,0x83,0x7b,0x19,0x36,0x37,0x1f,0xd2,0x02,0x08, + 0x3e,0x33,0x8d,0xf3,0x17,0xcc,0xd7,0x83,0xde,0x87,0xec,0x1f,0x81,0x3c,0x40,0x8f,0x0e,0xe1,0x0b,0xc1, + 0x33,0xc0,0x0a,0x7f,0x7b,0xdc,0x7e,0x1d,0x3b,0x30,0xe3,0xc4,0xe1,0xc7,0xbf,0xd3,0x3f,0xc4,0xb0,0xc6, + 0xfd,0x83,0x23,0x0c,0xf0,0x33,0xfd,0x32,0x3c,0x21,0xc1,0xf0,0xf3,0xbe,0x02,0xc4,0x0c,0x87,0xc2,0x83, + 0xf6,0xf4,0xdc,0x37,0x3f,0xcf,0x2f,0x4c,0xa0,0x4e,0xc1,0x0f,0x3c,0x0b,0x73,0x3a,0x1c,0xfc,0x46,0x0f, + 0x34,0xc0,0xf3,0xf3,0xff,0x06,0xc3,0x43,0xf4,0xcb,0x83,0x3c,0x81,0xc0,0xf1,0x1d,0xcd,0xf3,0x81,0xc0, + 0x20,0xad,0xbb,0xc1,0x2c,0x3f,0x7c,0x4d,0x8f,0x08,0x00,0x78,0xff,0xef,0xc4,0xf1,0x10,0xbb,0x1e,0xc1, + 0xd3,0xb0,0xfe,0xf5,0x37,0xbc,0x7f,0x38,0x5f,0x2c,0x40,0xf8,0x40,0x2c,0x10,0xee,0x73,0x8f,0x47,0xb2, + 0x00,0x3f,0x89,0xf3,0x39,0xdc,0x36,0x18,0xd3,0xc7,0x9f,0x83,0xe0,0x11,0xf0,0xe0,0x7f,0xf8,0x03,0x70, + 0x10,0xfb,0x30,0x03,0xe3,0xdf,0x2e,0xc4,0x02,0x77,0xc3,0xe7,0x3e,0xbd,0x7f,0x7c,0x1f,0x57,0xeb,0xfe, + 0xf4,0x11,0x00,0x1e,0x3f,0xbe,0x8c,0xc1,0x31,0x4f,0x3e,0x8f,0xf0,0xf0,0xc3,0x40,0x03,0x35,0x4b,0xef, + 0x8c,0xc0,0xcc,0x1d,0x00,0xcf,0xc5,0x78,0xbe,0x33,0x03,0x20,0x01,0x03,0x3f,0xd5,0xe2,0xfb,0x03,0x0c, + 0x80,0x01,0x33,0xc2,0x50,0xef,0xaf,0x0c,0xcf,0xc0,0x10,0x3c,0x33,0x55,0xef,0xf8,0x0c,0xf2,0x34,0x00, + 0x3c,0xc0,0x14,0xac,0xb8,0x02,0x3c,0x84,0x00,0xcf,0x03,0x14,0xa8,0xec,0xdf,0xfc,0xc1,0x0c,0x33,0x00, + 0xd4,0xac,0x88,0x02,0xcc,0xc1,0x33,0x0c,0x00,0xc5,0xe8,0xff,0xd2,0x3c,0x31,0x30,0xf0,0xc0,0xc5,0x2b, + 0xce,0x37,0xe3,0x00,0x03,0xcc,0x00,0xfd,0x5b,0xf3,0xf0,0x3b,0xc0,0x77,0x3c,0x37,0x0f,0x14,0xaf,0xc8, + 0xdf,0xe0,0x1c,0x0f,0x31,0xc3,0xf5,0x7a,0xff,0xf1,0xfb,0x07,0x70,0xcf,0x13,0x3f,0x57,0xaf,0xff,0x4f, + 0xbc,0x40,0x03,0xc0,0x02,0x31,0x4a,0xff,0xf0,0x3e,0x34,0x03,0x7c,0xc0,0x3f,0x35,0x6f,0x88,0xf0,0x3b, + 0x34,0x03,0x0c,0xc7,0x3f,0xc5,0x0a,0xf2,0x3c,0x3b,0xc1,0x30,0xc3,0x00,0x3f,0xf5,0x4b,0xe2,0x3f,0x3e, + 0xc0,0x4c,0x30,0xc0,0x0f,0xf1,0x53,0xbf,0x8f,0xcf,0x8c,0x13,0x03,0x03,0x1f,0x3c,0xd5,0x2f,0x8c,0xfc, + 0xfe,0x01,0x0c,0x37,0x00,0xcf,0xf3,0x57,0xb8,0xcf,0xfc,0xe3,0x04,0xf0,0xc7,0x30,0xff,0xc1,0x53,0xb8, + 0xcf,0x8f,0x8f,0x10,0xf0,0x00,0x0c,0x3f,0x03,0x15,0xe8,0xf3,0xff,0xff,0x04,0x0c,0x04,0x37,0x32,0x30, + 0xf5,0x7b,0x8c,0x3f,0x3f,0x81,0x0c,0xc1,0x30,0x0c,0xf0,0xcf,0xd5,0xe8,0xcc,0xfc,0x2f,0x05,0xcf,0x00, + 0x00,0x3f,0xf7,0xc8,0x52,0xe3,0xc2,0x33,0xf8,0x40,0x30,0x4c,0x00,0xff,0x0c,0xe3,0x53,0xac,0xf2,0x33, + 0xec,0x47,0x30,0x00,0x00,0xfc,0xcf,0xff,0x55,0xbf,0xc2,0x33,0xfb,0x41,0xcc,0x00,0x00,0xff,0xc3,0xff, + 0x89,0x4e,0xfc,0xfc,0xc2,0xfd,0x13,0x03,0x00,0x03,0xfc,0x3c,0xb2,0xf5,0x78,0x8c,0xf3,0x0e,0xc1,0x03, + 0x00,0xc0,0x7c,0x8c,0xcf,0xce,0x35,0x7a,0xcf,0x3c,0x7b,0xc1,0x0c,0x03,0x11,0x0e,0x3f,0x0c,0xff,0xf1, + 0x52,0xbf,0xff,0x72,0xe0,0x1c,0x30,0xf4,0x43,0xf3,0xcc,0xcf,0xb3,0xd5,0x2f,0xf2,0x30,0xeb,0x01,0x31, + 0xcc,0x10,0x3c,0xcf,0xcc,0xbf,0xf2,0x57,0xec,0xff,0x1f,0xef,0x4d,0xdc,0x3d,0x00,0xcf,0xfc,0xcf,0xe3, + 0xf3,0x54,0xbf,0xf8,0x0f,0xbf,0x71,0x00,0xc0,0x00,0xcf,0xf3,0xc8,0x88,0xf3,0x15,0xec,0xf8,0x0f,0xb3, + 0xc1,0x00,0xc0,0x00,0x32,0x33,0xc3,0xbe,0x3f,0x35,0x5b,0x3f,0xc0,0xef,0x20,0x10,0xc0,0x34,0x0c,0xf3, + 0xf3,0xff,0x8f,0x33,0x55,0xbc,0xed,0xcf,0xce,0x01,0xc0,0xc3,0x40,0xcf,0xcf,0x3c,0xbf,0xcf,0x01,0x52, + 0xfa,0xc0,0xb3,0xf8,0x70,0x03,0x01,0xdc,0x3f,0x3c,0xcf,0xff,0xf3,0xc5,0x58,0xef,0x0e,0x0f,0x80,0x34, + 0x7c,0x00,0x03,0xcc,0xfc,0xe2,0x33,0xcf,0xd5,0x73,0xbe,0x2f,0x3e,0x30,0x04,0x04,0x37,0x0f,0x3f,0xff, + 0xff,0xc9,0xcc,0x54,0xcf,0xbe,0xec,0xbc,0xcc,0x40,0x41,0xc0,0xcc,0xe3,0xe3,0xfc,0xf0,0xc1,0x43,0x7c, + 0xcb,0xb2,0xff,0xf0,0x30,0x77,0x13,0x03,0x3c,0xe3,0xff,0xf2,0x05,0xf1,0xf3,0x3b,0x38,0x82,0x30,0xc0, + 0x0d,0x30,0x0c,0xc3,0xf2,0x3f,0x8f,0x17,0x00,0x8f,0xec,0xec,0xfc,0xc0,0xd3,0x1d,0xc0,0x33,0x3f,0x3e, + 0x3f,0x39,0x4f,0x73,0x8e,0xff,0x8c,0x83,0x70,0x1c,0x70,0x03,0xcf,0xf2,0xcf,0xff,0x05,0x00,0xfc,0xeb, + 0xfb,0xc8,0x30,0x01,0xc7,0x07,0xcc,0x3f,0x3f,0xcf,0xfc,0x50,0xdf,0xc2,0xbf,0xbf,0x8d,0xf1,0xdc,0x70, + 0x03,0x02,0x33,0x8f,0xf3,0xd7,0xd0,0xfc,0xb8,0xb8,0xff,0x0c,0x41,0xd3,0x1c,0x30,0xc2,0x32,0x3f,0xf5, + 0xf0,0x3f,0x28,0xef,0xcf,0xc0,0x00,0x07,0x00,0x30,0x23,0x2c,0xc8,0xfd,0x5f,0x08,0xce,0xfe,0xc0,0x83, + 0x34,0x00,0x30,0x0f,0x0f,0x0e,0x3f,0x3f,0x57,0x18,0xcf,0xbf,0xf2,0xfc,0x00,0x31,0x03,0x70,0x0c,0xcc, + 0x83,0x0f,0x3c,0x0f,0x3c,0x0c,0xf3,0x0c,0xcc,0x33,0x33,0x0c,0xcc,0x33,0xc3,0x33,0x0c,0xcc,0x3c,0x33, + 0xc3,0x0f,0x0c,0x3f,0x00,0xf3,0x03,0x3c,0x03,0x03,0x3c,0x30,0x33,0xc0,0x30,0x33,0xc0,0xc3,0x03,0x3c, + 0x03,0x00,0xcc,0x00,0xc0,0x33,0x03,0x30,0xc3,0xc0,0x0c,0x03,0x33,0x00,0xf0,0xc0,0x0c,0xf3,0x0c,0xc0, + 0x30,0xf0,0x0c,0xc0,0xc0,0x3c,0xc0,0x03,0x0c,0xc0,0xc3,0x03,0x03,0x00,0x3f,0x00,0x0c,0x0c,0x33,0x03, + 0x00,0xcf,0x00,0xc0,0xc3,0x00,0x3f,0x30,0x0c,0x0c,0x03,0xcc,0x03,0x03,0x03,0x00,0xff,0x00,0xc3,0x00, + 0x30, +}; +static constexpr VoiceClip gpsOnClip = { + gpsOnData, sizeof(gpsOnData), 9683, 8000, VoiceCodec::G72616 +}; +// "GPS off" +static const uint8_t gpsOffData[] = { + 0x00,0x00,0x00,0x00,0x00,0x0c,0xc3,0x03,0x30,0xf1,0x96,0x6d,0xdf,0x21,0xde,0x30,0x4e,0xf1,0xcf,0x83, + 0x00,0xcc,0x26,0x09,0xfc,0x08,0xb3,0x70,0xcc,0x4b,0x82,0x32,0x73,0x1f,0x03,0xd8,0xf7,0x00,0xdf,0xe3, + 0x18,0xe3,0x7c,0x31,0xe3,0x3d,0xfd,0x93,0xfd,0xcf,0x27,0x0c,0x23,0xc9,0xf0,0x3c,0x81,0xc3,0x63,0x8c, + 0xdd,0xf3,0x4c,0x8b,0x07,0x2c,0x3b,0xf1,0xff,0x82,0xf0,0x10,0x77,0x0d,0xcf,0x31,0x1c,0xf7,0x7c,0xc3, + 0x73,0xff,0x23,0x3c,0xce,0xe3,0x30,0xdf,0x27,0x3f,0xc3,0x23,0xee,0xf3,0xd3,0x47,0x1c,0x8c,0x0b,0x10, + 0x4b,0x1c,0x31,0x0d,0x03,0xdf,0xf0,0x0c,0xfc,0xb0,0x1f,0x36,0x7f,0xbc,0x23,0x0d,0xc2,0xe0,0xdf,0xe3, + 0x4c,0xfc,0x2f,0xff,0xf3,0xce,0x07,0xc8,0xcf,0x3f,0x3d,0x8c,0xb8,0x10,0x60,0xcc,0xfe,0x02,0x2d,0xf8, + 0x33,0x30,0xbf,0xca,0xc3,0x49,0x10,0xe5,0x30,0xf0,0x80,0x84,0xef,0xd0,0xd3,0x4f,0xd0,0xf3,0x02,0xcf, + 0x2c,0xf4,0xc0,0x54,0x3d,0xd3,0x6a,0xb8,0xf2,0x01,0xc0,0x37,0xc0,0xf3,0x8c,0xf2,0xfc,0xcf,0xbd,0x44, + 0x10,0xea,0xab,0xff,0xc4,0x11,0x00,0xc2,0x1c,0x70,0xbe,0xba,0xc3,0xc1,0x10,0x00,0x3c,0xb4,0xdf,0x7b, + 0xbe,0xbc,0x0c,0x50,0x00,0x3f,0xfc,0x61,0xfe,0x0b,0xec,0xcc,0x10,0x01,0xf3,0xff,0xd8,0x7f,0x82,0xff, + 0xcc,0x13,0x40,0x30,0xef,0xf6,0x08,0x23,0x8f,0xfc,0xc4,0x1d,0x0c,0x0f,0xfd,0x82,0x08,0xe2,0x3e,0x70, + 0x04,0x1c,0x0c,0x8c,0xe7,0xc8,0x2f,0x8f,0xc0,0x04,0x01,0xf3,0x3f,0x60,0x9e,0x2c,0xbf,0x30,0x71,0x1c, + 0x7c,0xc8,0x27,0x82,0x2f,0xff,0xcc,0x41,0x00,0x0c,0xfc,0x20,0x9b,0x7b,0xce,0x30,0x01,0x00,0x7c,0xcc, + 0x26,0x08,0xef,0xff,0x0c,0x07,0x4d,0xf3,0x3d,0x82,0x78,0x8e,0xcf,0x31,0x00,0x77,0xc3,0xe7,0x0b,0x7b, + 0xfe,0x3c,0xc7,0x10,0x07,0xf3,0x32,0x18,0xff,0x8b,0xcc,0xc0,0x40,0x73,0x0f,0xd8,0x27,0x88,0xe3,0xcc, + 0x01,0x03,0x00,0xff,0x73,0x83,0xeb,0xf2,0x0c,0x10,0x43,0x0c,0xfd,0xc2,0x38,0xb2,0xff,0x34,0x10,0x07, + 0xc3,0xf6,0x79,0xe2,0xff,0xec,0x00,0x50,0x00,0xd8,0x08,0x63,0xcb,0xef,0x3f,0x4d,0x13,0x1c,0xcc,0x30, + 0x98,0xef,0xef,0x3c,0x77,0x40,0x03,0x24,0x9f,0x23,0xb2,0xfc,0xf7,0x04,0x34,0xcc,0xf0,0xd8,0x2c,0x8b, + 0xfc,0x90,0x01,0x0c,0x0f,0xc3,0x09,0xb3,0xfb,0x83,0xc0,0x11,0xc0,0x36,0xc6,0x7f,0xf6,0xf8,0x8f,0xc1, + 0xd0,0x07,0x0f,0xf7,0xd8,0x23,0x8b,0xfc,0x9c,0x11,0xc0,0x0f,0xfd,0xe6,0x78,0xe2,0x3f,0xf0,0x40,0x40, + 0x03,0x3f,0xd8,0x63,0xdb,0xe3,0xfc,0xc0,0x74,0x03,0x63,0x20,0xf6,0x09,0xb2,0xff,0x20,0x74,0x01,0x20, + 0xfc,0xf3,0x79,0xf2,0xf8,0xff,0x00,0x10,0x00,0x0e,0x3e,0x18,0x30,0x8f,0xbc,0x8c,0xc1,0x01,0x30,0x3f, + 0xef,0x7d,0x20,0xf8,0xbf,0xfc,0x34,0x10,0x00,0xf2,0x23,0x0c,0x73,0xca,0xfe,0xcf,0x01,0x04,0x00,0xcf, + 0xfb,0xdf,0x00,0x0e,0xfb,0x8e,0xfd,0xcd,0xdd,0xc0,0x33,0xc3,0xcc,0xcf,0xff,0xbf,0xb3,0xf0,0x01,0x04, + 0xc7,0x37,0x03,0xc3,0xef,0xe2,0xcf,0xcc,0xdc,0x00,0x0c,0x03,0x4c,0x0c,0xff,0xe8,0xe3,0xcf,0x30,0x73, + 0x13,0xc3,0x12,0x0c,0xc8,0xcf,0xf3,0x3f,0x01,0xcc,0x70,0x3c,0x70,0xc3,0x3e,0xcf,0xec,0xcf,0xc3,0x1c, + 0x00,0x00,0x03,0x4f,0x3f,0xf8,0x8f,0x3f,0x00,0x0c,0x4c,0x30,0x08,0xf4,0x8c,0xfc,0xff,0x0c,0xc7,0x00, + 0x0c,0x0f,0xf3,0xff,0x18,0xcc,0xfc,0xc0,0xc3,0x07,0x03,0xf0,0xf3,0xfe,0x34,0xfc,0xc2,0x33,0x30,0xf0, + 0xc0,0x70,0x83,0x33,0xf0,0x0e,0xc3,0x03,0xd3,0x3c,0xc3,0xc3,0xf0,0x0d,0x37,0x3c,0x3f,0xfb,0xc3,0xfc, + 0xcf,0x4c,0xf4,0xc1,0x3c,0x0f,0x3f,0x20,0x0c,0xf3,0x00,0x2f,0xf2,0xf0,0xcc,0x00,0x3c,0xc0,0x07,0xcc, + 0xfc,0xff,0x30,0x10,0x0c,0x3e,0x30,0x33,0xbf,0x0b,0xc3,0x34,0xc0,0xf0,0x00,0x8f,0x3f,0xf3,0x00,0x41, + 0x0f,0x33,0xc3,0xf8,0xff,0x03,0xbe,0x30,0xf0,0x10,0x07,0x00,0xf3,0xe3,0xbc,0x83,0x0f,0x03,0x03,0x30, + 0xc0,0x4f,0x32,0xf0,0xff,0xff,0xdf,0x3c,0x7f,0x43,0x13,0xc3,0xff,0x8c,0xc2,0xc0,0x29,0x3c,0xce,0x4f, + 0x7f,0x00,0x36,0x0d,0x8f,0xc0,0xcb,0xb4,0xd3,0xe7,0xc3,0x00,0x8e,0x7c,0x0b,0x73,0x01,0xe4,0xb7,0x8f, + 0xc3,0x34,0xde,0x7c,0x0f,0x6c,0x3f,0x73,0xda,0x3f,0x78,0x2c,0x31,0xc3,0xde,0x0b,0x03,0x49,0x33,0x20, + 0xff,0xb8,0x09,0xe3,0x08,0x30,0x60,0x80,0x37,0xd3,0xcb,0x20,0x27,0xce,0x7c,0xcd,0xef,0xdc,0xc8,0x23, + 0xd0,0xbe,0x70,0xc0,0xc3,0x00,0xfc,0xe2,0xc0,0x1c,0xf6,0xff,0xdc,0x77,0xfc,0xf2,0xcd,0xfc,0x02,0x20, + 0x10,0xe6,0x70,0xcc,0xc4,0x70,0xcf,0x22,0xcc,0xc2,0x30,0xcd,0x13,0x34,0x10,0xab,0xf3,0xc0,0x3f,0x03, + 0xc0,0x34,0x31,0xce,0xfb,0x31,0x84,0x7f,0xef,0x8f,0xf7,0x41,0xd3,0xef,0xf0,0xcd,0x3d,0xf2,0x3c,0xcf, + 0xc2,0x31,0x1c,0xd0,0x42,0xde,0xcf,0xf3,0x2d,0x14,0x0e,0xee,0xbf,0xf0,0x33,0x40,0x03,0x51,0x43,0xbb, + 0xeb,0xfc,0xc1,0x00,0x4c,0x04,0xdc,0x2c,0xbe,0xf8,0xc0,0xc1,0x30,0xcd,0x34,0x9e,0xff,0xbf,0xf0,0xc4, + 0x0c,0x03,0xd3,0x73,0x8e,0xfb,0x3f,0x0d,0x00,0x1c,0x31,0xdf,0x78,0xbf,0xf8,0x33,0x10,0x30,0x0c,0x67, + 0xcf,0x2f,0xb2,0x0c,0xc7,0x43,0x03,0x19,0xf3,0xfb,0xff,0x83,0x70,0x00,0x0c,0xc6,0x7c,0xe6,0xff,0xe3, + 0x03,0x71,0x0f,0x70,0xc2,0x63,0xee,0x3f,0x30,0x00,0x73,0x0c,0x67,0x3f,0xf8,0x8e,0x0c,0x00,0x1c,0x33, + 0x19,0xf2,0xcf,0xec,0x83,0x61,0x00,0x0c,0xc6,0x7c,0x8e,0xcb,0xf7,0xc0,0x40,0x0c,0x00,0x9e,0x7e,0xce, + 0xc8,0xdf,0x43,0x43,0xcd,0x27,0xcf,0xef,0x8f,0xf0,0x00,0x1c,0x02,0x70,0x9e,0xff,0xfe,0x03,0x00,0x1f, + 0x73,0x19,0xf2,0x3f,0xec,0xfc,0x67,0x70,0x7c,0xdc,0x63,0x8f,0xbc,0x83,0xc1,0x1c,0xc0,0x36,0x79,0xfe, + 0xfc,0xb3,0x1c,0x00,0x1f,0x36,0x48,0x22,0x3e,0x20,0x3c,0x40,0x03,0x00,0xd8,0xff,0x8b,0x3c,0xc0,0x70, + 0x13,0xc7,0x18,0x22,0xff,0x2c,0xdc,0x70,0x00,0x30,0xd8,0x22,0xff,0xf3,0xc0,0x77,0x03,0x67,0x08,0xe3, + 0xef,0x20,0x0c,0x70,0x4f,0x37,0x3c,0xb3,0xbf,0xf7,0xcd,0x00,0x0c,0x1c,0x23,0xef,0xec,0xf3,0x04,0x43, + 0x1c,0x19,0xff,0x28,0xf8,0xcc,0x01,0x30,0x0d,0x26,0xd8,0xef,0xc8,0x30,0x10,0x70,0x00,0x9f,0x2f,0x9b, + 0xcf,0x1c,0x10,0xcc,0x06,0x78,0xfe,0xc8,0xf3,0x1d,0x30,0x7f,0x49,0xfe,0x3b,0xff,0x0c,0x1c,0x00,0x09, + 0x27,0x8f,0xe2,0xc2,0x00,0x1f,0x43,0x30,0xdb,0x23,0x8e,0xc0,0xc0,0x70,0x0c,0xc6,0x7f,0xe2,0x2f,0x24, + 0xc4,0x00,0x0f,0x19,0x8f,0x88,0xec,0x37,0x01,0xc0,0xcc,0x24,0x9b,0xec,0x8f,0x0d,0x04,0x0f,0x34,0x9e, + 0x7e,0xfe,0xc8,0x00,0x10,0x7c,0xc3,0xc8,0x3f,0xfb,0x0c,0xc7,0x40,0x33,0x17,0x38,0xe2,0xfc,0xcd,0x00, + 0x1c,0xcc,0x93,0x0c,0xbe,0xff,0xc1,0xc4,0x30,0xcc,0xf5,0xd8,0xff,0xb0,0xf0,0x07,0x03,0xc3,0xc5,0xce, + 0x2f,0x2c,0x30,0x00,0xdc,0xcc,0x01,0x60,0x8f,0x8c,0x30,0x30,0x33,0x00,0x03,0x13,0x6e,0xfc,0xcc,0xd0, + 0x33,0x4d,0xcc,0x3d,0x20,0xb2,0xfc,0x0c,0x70,0xc0,0x33,0x0f,0xf5,0x82,0xfe,0x0c,0x01,0xcd,0xf7,0x0c, + 0xf2,0x35,0xd6,0xae,0x0c,0x40,0x2d,0xc0,0x30,0x8b,0xcd,0x71,0xb8,0xf0,0xd0,0xce,0x0c,0x4c,0xef,0x20, + 0x97,0x7a,0xcc,0x31,0x0c,0xb0,0x07,0x3e,0xcf,0x01,0x79,0xab,0xf4,0xc4,0xff,0x1c,0x1f,0xff,0x30,0x09, + 0x63,0xac,0xe4,0x0c,0x82,0x04,0xff,0x3f,0x13,0x3d,0x6c,0xab,0x84,0xc4,0x8f,0xd0,0xcf,0xfb,0x0c,0x0e, + 0x59,0xeb,0xf9,0xc0,0x20,0xf0,0x73,0xf3,0xf7,0x0c,0xc5,0x9e,0xff,0xdd,0x0e,0x09,0xc0,0x38,0xcf,0x00, + 0xfc,0x5c,0xeb,0xe0,0x04,0xf0,0xf4,0x03,0xff,0x83,0x0f,0x95,0xde,0xfe,0xcc,0x72,0x0c,0x00,0x3c,0xff, + 0x70,0x82,0x5c,0x3a,0xf8,0xc1,0xcc,0xc0,0x00,0xff,0xf0,0x9c,0xf1,0x77,0xbf,0xb7,0x00,0xf3,0x00,0x02, + 0xcf,0x03,0x0b,0xd4,0x1a,0xfe,0x30,0xcb,0x0f,0x40,0xcf,0x33,0x7c,0xfc,0x5d,0xeb,0x38,0xdc,0xfd,0xcd, + 0x08,0xcc,0xf0,0x38,0xc5,0xce,0xa2,0xc1,0xf3,0xc1,0x00,0xf3,0xc0,0x33,0xf0,0x50,0xab,0xff,0x0e,0x3c, + 0x00,0x3f,0xd8,0x0f,0xc8,0xc5,0xcb,0xa3,0xcc,0xe3,0xf4,0x0c,0x20,0xc0,0xfc,0xf0,0x5f,0xba,0x3c,0xde, + 0x30,0x1c,0x32,0x00,0xf3,0xfc,0xd5,0xf8,0xac,0xcd,0xbc,0x31,0x0f,0x3c,0x0c,0xff,0xdc,0x53,0xba,0x3f, + 0xc2,0x83,0x10,0xcc,0xc0,0x33,0xfc,0x05,0x7f,0xa3,0xfc,0x2f,0x30,0x4c,0x33,0x1c,0x0f,0xcd,0x53,0xca, + 0xff,0xc2,0xfc,0xc4,0x03,0x30,0x31,0xff,0x35,0x73,0xeb,0xf8,0x2f,0xc8,0x13,0x73,0x03,0x13,0xcf,0x14, + 0x32,0xaf,0xb3,0xef,0xf1,0x10,0x0c,0x0d,0x0c,0xff,0x50,0xca,0xae,0xcf,0xe3,0x81,0xd0,0x0c,0xcd,0x37, + 0xfd,0x70,0x2a,0xfb,0x23,0x38,0xc0,0x47,0x1c,0x37,0x03,0xd4,0x37,0xae,0xe3,0xfc,0xbc,0x31,0x01,0x37, + 0x70,0x03,0x17,0x0f,0xbb,0xe3,0xb3,0x8f,0x30,0xc0,0x00,0x01,0xc0,0x5c,0xdb,0x3e,0x3f,0xf8,0xfc,0xf3, + 0x09,0xc0,0x01,0xdc,0x5f,0x3f,0x72,0xd8,0x83,0x23,0xcf,0x83,0x7b,0x19,0x36,0x37,0x1f,0xd2,0x02,0x08, + 0x3e,0x33,0x8d,0xf3,0x17,0xcc,0xd7,0x83,0xde,0x87,0xec,0x1f,0x81,0x3c,0x40,0x8f,0x0e,0xe1,0x0b,0xc1, + 0x33,0xc0,0x0a,0x7f,0x7b,0xdc,0x7e,0x1d,0x3b,0x30,0xe3,0xc4,0xe1,0xc7,0xbf,0x1c,0xff,0xc4,0xb0,0xc6, + 0xfd,0x83,0x23,0x0c,0xf0,0x33,0xfd,0x32,0x3c,0x21,0xc1,0xf0,0xf3,0xbe,0x02,0xc4,0x00,0x87,0xc2,0x83, + 0xf6,0xf4,0xdc,0x37,0x3f,0xcf,0x2f,0x4c,0xa0,0x4e,0xc1,0x0f,0x30,0x0b,0x73,0x3b,0x1c,0xcc,0x42,0x0f, + 0x34,0xc0,0xb3,0xf3,0xbf,0x12,0xc3,0x43,0xf4,0xcb,0x83,0xfc,0x8d,0xc0,0xf0,0xcd,0xfc,0xe2,0xb1,0xc3, + 0x20,0xed,0xbf,0x01,0x7c,0x3f,0x7c,0x0d,0x8e,0x09,0x00,0x38,0xff,0xff,0xc4,0xf1,0x10,0xbb,0x1e,0xc1, + 0xd3,0xb0,0xfb,0xb1,0x37,0xf0,0x7f,0x08,0x5f,0x2f,0x50,0x28,0x03,0x2c,0x10,0xee,0x0c,0x8f,0x47,0xb2, + 0x00,0x3f,0x89,0xf3,0x38,0xdc,0x66,0x1f,0x12,0x37,0xce,0xb2,0xf0,0x05,0xf3,0xe1,0x7c,0xfb,0x1f,0x7c, + 0x10,0xfb,0x30,0xc3,0xfc,0xdc,0xfa,0xc0,0xd2,0x04,0xcc,0xb4,0xfb,0xbd,0x3f,0x4c,0x1c,0x53,0xab,0xbb, + 0xc1,0x11,0x00,0x1e,0x3f,0xbe,0x8c,0x31,0x01,0x4f,0xfe,0x8f,0x30,0xcc,0x00,0x01,0xcf,0xc8,0xcf,0xe3, + 0xfc,0x73,0x54,0xbe,0xf8,0x30,0x32,0x13,0x04,0xfc,0xff,0x0f,0xfc,0xb7,0x00,0x35,0x4a,0xc8,0xc4,0xfc, + 0x20,0x40,0xcf,0xfc,0x3c,0xcb,0xf0,0xd0,0x32,0x54,0xbe,0x3c,0x43,0xf3,0xc4,0x73,0xcb,0x30,0xfc,0x8c, + 0x00,0xcf,0x25,0x4e,0xbf,0xc1,0x38,0xc0,0x10,0xff,0x3c,0x0f,0xe3,0x31,0xf3,0xc0,0xd5,0x2b,0xf3,0x13, + 0xe0,0x74,0x02,0xf0,0xcc,0xff,0xdc,0xcc,0xfd,0xc3,0x54,0xac,0xcc,0x02,0x81,0x00,0xfe,0x00,0xfc,0xf3, + 0x03,0xf3,0x00,0x3b,0x57,0xac,0xf0,0x0e,0xc4,0x73,0x3c,0xd3,0x3c,0x0c,0x0f,0xcd,0xc3,0xfb,0x57,0xbf, + 0x0c,0xce,0xc5,0x33,0xc3,0x03,0xef,0x03,0x3c,0xf1,0x3c,0x83,0x15,0xeb,0xcf,0x3f,0xb0,0x43,0x83,0x00, + 0xff,0x37,0x3f,0x33,0x0f,0xe0,0xf5,0x7a,0xf0,0xff,0xec,0x10,0xe3,0x00,0xcf,0xf0,0x3f,0xfc,0xc3,0xec, + 0xc1,0x56,0x88,0x3c,0xff,0xc4,0x3f,0x34,0x0c,0xfc,0x33,0xff,0x30,0xff,0xf4,0xd5,0x68,0xfc,0xf8,0xe3, + 0x0c,0xe0,0x0d,0xf2,0x0c,0xce,0x0c,0xcf,0xcc,0xcd,0x52,0xa0,0x3f,0xbf,0x31,0xcb,0x00,0x08,0xf0,0x0c, + 0xf3,0x0c,0xff,0x00,0x35,0x5a,0xc0,0xfe,0xf3,0x1c,0xfc,0x41,0xf3,0x00,0x3f,0x3c,0x3e,0x33,0x32,0x54, + 0xbf,0x03,0xbe,0x30,0xc2,0x34,0x1f,0x0c,0x1f,0x3c,0xc3,0x3f,0x0c,0x35,0x5b,0xf0,0xfe,0xe3,0xc3,0x2c, + 0x10,0x33,0x00,0x33,0xcc,0x3f,0xbf,0x06,0x50,0xef,0x0c,0xb8,0xfd,0x33,0x34,0x4c,0x30,0x03,0x23,0x03, + 0xcf,0xc3,0x25,0x4e,0xf0,0x3b,0xfc,0xdc,0xfc,0x10,0x30,0x00,0x3f,0xf0,0xcb,0xf3,0x0d,0x54,0xa3,0x0f, + 0x88,0xcd,0xcf,0xd0,0x0f,0x00,0x02,0xcc,0x0f,0x3c,0xc3,0x15,0x2b,0xd3,0xff,0xf0,0x4f,0xf1,0x70,0xf0, + 0x00,0xff,0x30,0xe3,0xf0,0xc5,0x4a,0xc3,0xfe,0xfc,0xd3,0xf0,0x5d,0xc3,0x1c,0x3f,0xfc,0xcf,0xfc,0x35, + 0x5e,0xf3,0x3e,0xff,0x04,0xfc,0x11,0xcc,0x30,0x3f,0xf0,0xcf,0x8c,0xc1,0x52,0x8f,0x3e,0xcb,0x30,0x38, + 0x04,0xc3,0x00,0x02,0x3c,0x3f,0xf3,0xc0,0x54,0xac,0x3c,0xbf,0xf4,0x3f,0x04,0x03,0x0d,0xc3,0xfc,0x33, + 0xff,0x30,0x55,0xbf,0x0f,0xe2,0xcd,0x33,0xc4,0x73,0x33,0x43,0xf8,0xc3,0xff,0xcc,0x15,0xe8,0xc3,0xef, + 0x8c,0x73,0xf4,0x70,0x3d,0x00,0x3f,0x33,0x3b,0xf3,0xd5,0x28,0xf0,0xef,0xe3,0x03,0x8d,0x00,0x0c,0x1c, + 0x32,0x0c,0x3f,0xc8,0xd5,0xeb,0xc3,0xef,0xb3,0x1f,0xf0,0x40,0x30,0x04,0xcf,0x30,0xff,0xf9,0xd4,0x2b, + 0x0f,0x2f,0xb3,0x73,0xe7,0x00,0xc3,0x10,0x33,0xc0,0xcf,0xfc,0xd5,0x2b,0x0f,0x3b,0xbc,0x1f,0xf3,0x4d, + 0x33,0x1d,0x33,0x0c,0x0c,0xff,0x14,0xe8,0xff,0xcb,0xbf,0x18,0xf3,0x00,0x0c,0xd0,0x00,0xcd,0xc3,0xcf, + 0xd4,0xac,0xff,0x3b,0x8c,0xfc,0xf3,0x03,0x00,0x10,0x30,0x70,0x0c,0xf0,0x97,0xbc,0x8f,0xec,0xcf,0xcf, + 0x07,0x30,0xc0,0x00,0x07,0x02,0x48,0x18,0xf3,0x7c,0xcb,0x4f,0xc2,0x01,0xc3,0x7f,0x72,0xf1,0xfd,0xff, + 0x3f,0x78,0x18,0x7f,0x1f,0x32,0x0f,0x2f,0x49,0xc3,0xf4,0xf0,0xff,0xfc,0x6c,0x7d,0x36,0x31,0x83,0x3d, + 0xb0,0x7c,0x08,0x2c,0x2e,0x00,0x0b,0xc4,0xc3,0xcc,0x0c,0xf0,0x0f,0xf0,0x0f,0x30,0x33,0x00,0x00,0x00, + 0x00,0x0c,0x30,0xc0,0xcc,0x00,0xcc,0x00,0x33,0x00,0x0c,0xc0,0xc3,0x30,0x30,0xcc,0x00,0xf0,0x00,0xf3, + 0x00,0xc0,0x3c,0xc0,0x3c,0xc0,0x30,0xf0,0x03,0x30,0x0c,0x3c,0x00,0xc0,0x33,0x03,0x0c,0x0c,0x0c,0x03, + 0x30,0x30,0xc0,0xc0,0xcf,0x00,0x0f,0x00,0x3c,0xc0,0x03,0x30,0x0c,0x0c,0x30,0x3c,0x00,0xcc,0x03,0x0c, + 0x03,0xc0,0x03,0x30,0x3c,0xc0,0x30,0xf0,0x00,0xcc,0x00,0xc3,0xc0,0x33,0x00,0x0c,0x3c,0x03,0x30,0xf0, + 0x00,0xcc,0x3c,0x00,0x33,0x0f,0x00,0x0c,0xc3,0xc0, +}; +static constexpr VoiceClip gpsOffClip = { + gpsOffData, sizeof(gpsOffData), 9237, 8000, VoiceCodec::G72616 +}; +#endif // 16 kbps +#if MESH_GPS_VOICE_G726_BITRATE == 24 +// "Ready" +static const uint8_t readyData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x6b,0xd9,0x6f,0x6d,0xa3, + 0xff,0xfa,0xcb,0x6e,0xdb,0x6e,0x4a,0x49,0x14,0x49,0x3f,0xff,0xb6,0xbb,0x6e,0xdb,0xff,0x7f,0xb5,0x9b, + 0x6f,0xf7,0xe5,0x24,0x51,0x28,0xff,0xf7,0xde,0xeb,0xb7,0xc5,0xb5,0xf7,0x3b,0x4d,0x76,0xdf,0xd2,0x51, + 0x5d,0xf2,0x4f,0xf8,0xef,0xaf,0xdb,0xef,0x8b,0x6e,0xff,0xcd,0xbb,0xd3,0xfe,0xe8,0xbf,0xc9,0x3c,0xef, + 0x79,0xd7,0x6f,0xfd,0xf8,0xa6,0xd4,0xe7,0xfb,0x4d,0x3b,0x1c,0x51,0xe4,0xa3,0xf1,0xdf,0xed,0x77,0xdf, + 0x7f,0xc9,0xed,0xf9,0xca,0xb3,0xfd,0xfe,0xe5,0x75,0x8a,0x57,0x9c,0x76,0xdf,0x9d,0xb9,0xff,0x73,0xdb, + 0xb0,0xaf,0x2e,0x3b,0x63,0xd2,0x3c,0xa5,0xef,0x26,0xd3,0x8e,0xdf,0xff,0xf7,0x3f,0xb7,0xa1,0x26,0x4e, + 0x76,0xe4,0x92,0x79,0x7b,0xe3,0xf7,0xff,0xfd,0xbf,0xfb,0x13,0xb9,0x6e,0xee,0xac,0x8a,0xfc,0x4a,0x3c, + 0xa3,0xf7,0x5e,0xff,0xfe,0xdf,0xfd,0x8f,0xff,0x92,0xde,0xa8,0xc9,0xfe,0xdc,0xa2,0x7f,0x7e,0xf5,0xf7, + 0x3c,0xef,0xbf,0xd8,0xff,0x8f,0x39,0xbd,0x5e,0xb3,0xed,0xf2,0x24,0xf2,0xb6,0xeb,0xe2,0x4f,0xdb,0xed, + 0x72,0xfb,0xaf,0xcb,0x66,0x1f,0x37,0xd8,0xe4,0x79,0xe4,0xdf,0xd6,0x3c,0x9d,0xbe,0xfb,0x73,0xfe,0x27, + 0x76,0xfd,0x5a,0x6f,0x4e,0xe8,0xf3,0xcf,0xbc,0x9e,0x7b,0xfb,0x7f,0x7e,0x2a,0x93,0xfd,0x4d,0xec,0xee, + 0xdb,0x7c,0x4a,0xfc,0xab,0xf9,0x3c,0xa3,0xef,0xf7,0x62,0xb7,0x5f,0xdc,0x9b,0xa4,0xd9,0xef,0xdf,0xbf, + 0xc9,0xdf,0x73,0xfa,0x27,0x6f,0xaf,0xfc,0xe2,0x76,0xf8,0xb7,0x8a,0x9b,0x5d,0xb1,0x79,0x73,0xbd,0x58, + 0xf4,0x77,0xfb,0x6e,0x71,0xe7,0xef,0xf1,0x6e,0xa3,0x2d,0x9f,0x54,0x72,0xff,0xec,0xbf,0x4b,0xff,0xbe, + 0xc7,0xfe,0x7f,0xdf,0xec,0xdf,0xce,0xeb,0x3e,0xa8,0xf2,0xbf,0xdc,0xfe,0x8f,0x38,0xed,0x8e,0x3c,0xfd, + 0xff,0xdd,0x35,0x57,0x97,0x4f,0x4a,0xfd,0x7f,0xb9,0xf9,0xf2,0x71,0xd7,0xfd,0xf9,0xf8,0xef,0xbf,0x6f, + 0x25,0x35,0x9a,0xe5,0x8a,0xe4,0xe5,0xba,0x5d,0x73,0xef,0xf7,0xff,0xff,0xff,0x7f,0xda,0xcf,0xdd,0x34, + 0xbf,0xe4,0x49,0xcb,0xe2,0x49,0x24,0xef,0xf6,0xdf,0xe3,0xff,0xff,0xf6,0xab,0xfb,0x5d,0x29,0xb8,0xa2, + 0x7a,0x38,0x9e,0x49,0x55,0x7d,0xb6,0xdb,0xfc,0x7f,0xe5,0xfc,0xfd,0xf0,0xca,0x67,0xe4,0xf2,0xf2,0xcb, + 0x1e,0xb1,0xeb,0x7f,0xef,0xdb,0xd3,0xea,0x78,0xbc,0x67,0xd2,0xfb,0xf1,0x39,0x9e,0x49,0x35,0x7c,0x79, + 0xfc,0xfc,0x77,0xd8,0xdf,0x99,0xad,0x53,0x7c,0x9e,0x6b,0xfe,0x4b,0xb2,0x56,0x47,0x1f,0xbe,0x3b,0x1f, + 0xff,0x3b,0x12,0xb1,0x5f,0xff,0xae,0xb3,0x6d,0xa9,0xdd,0x1e,0x8a,0x24,0x9e,0x79,0xc7,0x7e,0x77,0xf9, + 0xba,0xbf,0xf4,0xcd,0xee,0xbf,0x63,0xf1,0xe7,0xf5,0x8a,0xc7,0xaf,0xcf,0xe4,0xee,0x7d,0x29,0xd6,0x69, + 0xbe,0x7d,0x37,0xa6,0xab,0xde,0x3c,0xf2,0xb1,0x39,0xe3,0xf3,0xdf,0xe3,0x8d,0x2f,0x25,0x7d,0xd6,0xf9, + 0x4d,0xfc,0xf2,0x5f,0x47,0xae,0xb7,0x37,0xfd,0xf7,0xd9,0x6f,0xff,0x6e,0xbf,0x8f,0xb2,0xf9,0xf5,0xa4, + 0x92,0xb9,0x67,0x9f,0xc9,0xdb,0x7d,0xfe,0xff,0x7e,0x71,0x7f,0x3f,0xbe,0x9b,0x4f,0xef,0x39,0x17,0xcb, + 0xc8,0xff,0xbe,0xde,0xff,0xbe,0x3f,0xfe,0x7a,0x75,0x98,0xb5,0xd7,0x4f,0xa9,0xfc,0xa2,0x91,0x24,0xff, + 0xf7,0xdb,0x7d,0xff,0xc7,0x2d,0xfa,0x75,0x28,0xb5,0xdb,0x5f,0x6a,0xc5,0x74,0x4a,0xeb,0x73,0xbe,0xfb, + 0x7d,0xfe,0x38,0xfc,0xe9,0x7b,0xbb,0xce,0xba,0xd3,0x6a,0xdc,0x92,0x97,0x27,0xad,0xf6,0xfb,0xec,0x69, + 0xfc,0xe3,0xce,0xef,0x97,0x7f,0xbb,0x5b,0xb6,0x3b,0xa2,0x49,0x2b,0x9f,0xce,0xde,0x9a,0x76,0xfc,0x9a, + 0xbf,0x39,0xae,0xe9,0xf6,0xfb,0x7d,0xc7,0x74,0x51,0x28,0x9e,0x7e,0xfb,0x1b,0xf7,0x34,0xfe,0x71,0x3f, + 0x35,0x5f,0xaa,0xdf,0x36,0xdb,0x1e,0x4f,0x64,0x9e,0x4f,0x34,0xdf,0xe9,0xbc,0xef,0xcf,0xe7,0xff,0x99, + 0xee,0x75,0x3d,0xb7,0xea,0x7f,0x5d,0x92,0x7a,0x3f,0x7f,0xf6,0xdb,0xfd,0xff,0x38,0xfe,0xa9,0xec,0xe7, + 0x7a,0x9b,0x6d,0xbd,0xe7,0xa3,0xd1,0x47,0xfe,0x7e,0xfb,0x6f,0xfe,0xfc,0xe3,0xcf,0xe7,0xd6,0xf3,0xf4, + 0xeb,0xfc,0xfb,0x7f,0x91,0x24,0xa2,0x79,0x3b,0xfd,0xf7,0xa7,0x7f,0xb9,0xe7,0xfe,0x7f,0x6f,0x2f,0x15, + 0xde,0xdf,0x77,0xf9,0x72,0x89,0x24,0x9f,0xb9,0xdf,0x53,0xbf,0xdf,0xfe,0x7f,0x3f,0xaa,0xc9,0x70,0xfd, + 0xee,0xdb,0x55,0x4a,0xaf,0x95,0xd7,0x3f,0x2b,0xf6,0xfb,0x1a,0x71,0xfc,0xfe,0x71,0xe5,0xe2,0xee,0x33, + 0x6b,0x75,0xc6,0xf5,0xd2,0xec,0xf2,0x79,0xfb,0x7d,0x7e,0xc6,0x9d,0xd6,0xe7,0x2f,0xfb,0x3d,0xdc,0x67, + 0xb3,0x7b,0xbe,0x2b,0x32,0x57,0x2b,0x9c,0x77,0xd7,0xed,0xef,0xe7,0x7f,0xd6,0xe7,0xf6,0xb2,0x31,0x5a, + 0x65,0xd7,0x7d,0x97,0x2b,0xa7,0x91,0xe4,0xef,0xf7,0xd4,0xed,0xf7,0xf8,0xf3,0x8f,0x3d,0x3c,0xfd,0x56, + 0x99,0xad,0xf7,0xe3,0xfb,0xe5,0x17,0xf9,0x3f,0xe3,0xb6,0xdf,0x7f,0x4e,0xe7,0x1f,0xcf,0x6b,0xa3,0x95, + 0xbe,0x6b,0x6e,0xdf,0xfe,0xba,0x28,0xae,0xb9,0xc7,0x7f,0xb7,0xa6,0xff,0xbf,0xc7,0xf3,0xcb,0x2d,0x52, + 0x69,0x9b,0xcd,0xef,0xbc,0x9e,0x52,0x2b,0xa3,0xcf,0xc7,0x7d,0xbe,0xdf,0xef,0xff,0xf9,0x6e,0xcf,0x78, + 0x9b,0xfc,0xf6,0xeb,0xb1,0xc7,0xf7,0xca,0xef,0xf3,0xce,0x3b,0x7a,0x76,0x34,0xfc,0x7f,0xfc,0xf7,0x92, + 0xab,0xd3,0x36,0x9b,0x5f,0xbf,0x3d,0x14,0x49,0x5c,0x9d,0xfe,0x3b,0x7f,0xbe,0x3f,0x9d,0xce,0x39,0xaa, + 0xfe,0x57,0xd9,0xf5,0xb7,0x7f,0x97,0x28,0xa5,0xd7,0x59,0x6f,0xb1,0xf4,0xef,0xff,0xff,0x9f,0xcd,0x4f, + 0x13,0x9e,0xbe,0xdd,0x37,0xbb,0xd5,0x8a,0x25,0x72,0xb9,0xfc,0xef,0xfe,0xf8,0xfc,0x7f,0x38,0xff,0xf3, + 0x59,0xe2,0x6e,0xf3,0x5b,0xed,0xfb,0x9e,0x8f,0x4b,0xae,0x4e,0x3f,0xfd,0xff,0xfc,0xee,0x4f,0xff,0xfa, + 0xd6,0x7b,0xab,0xf4,0xf6,0x7b,0xf6,0xe7,0xa2,0x49,0x2b,0xf3,0xcf,0xdf,0xff,0xce,0x3f,0xaf,0xce,0x57, + 0x33,0xde,0xff,0x7d,0x35,0xbf,0x5f,0x8f,0xe5,0x72,0x79,0x3c,0xfc,0x4e,0x3f,0x9c,0x4e,0xff,0x2d,0x8e, + 0xef,0xb5,0x4f,0xde,0x6f,0x6e,0xbf,0x62,0x79,0x3d,0x5d,0x97,0xf8,0xff,0x8f,0xf8,0xff,0x8f,0xf8,0xff, + 0x8f,0xf8,0xff,0x8f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0x80, +}; +static constexpr VoiceClip readyClip = { + readyData, sizeof(readyData), 3147, 8000, VoiceCodec::G72624 +}; +// "Notification cleared" +static const uint8_t notificationClearedData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x92,0x49,0xb7,0x25,0x24, + 0x91,0x44,0x9e,0x7f,0xf9,0xa4,0x92,0xff,0x6b,0x6d,0x9b,0x5d,0xbf,0xfc,0xa2,0x92,0x45,0x12,0x7f,0xff, + 0x6c,0x5a,0x2f,0x9f,0xbd,0xb7,0x4d,0xb6,0xdb,0xff,0xd1,0x29,0x22,0x89,0xeb,0xff,0xcd,0x2d,0x74,0xbf, + 0xfb,0x59,0xb5,0xbb,0x6d,0xff,0xe8,0xa2,0xf9,0x24,0xf3,0xce,0xff,0x76,0xba,0x3f,0xef,0x6c,0xda,0xed, + 0xb6,0x3f,0x22,0x51,0x45,0x75,0xcf,0x3b,0xfd,0x8b,0x55,0x1f,0xf7,0xd6,0x7b,0xb6,0xdb,0x7e,0x72,0x2b, + 0xa4,0x7a,0x3c,0xfe,0x77,0xfd,0xfa,0x8e,0xd8,0xd9,0xef,0x98,0xed,0x89,0xe4,0xae,0x8a,0xe7,0x3c,0x77, + 0x37,0xf6,0xe2,0xdf,0xd5,0xbe,0xc7,0x63,0xfd,0x47,0x1e,0x55,0x5f,0x9c,0x4e,0xfc,0xde,0xb3,0x71,0x43, + 0x3f,0xdf,0x2f,0xba,0xdf,0x23,0x49,0x3f,0x3f,0xfe,0x46,0x93,0xb1,0x2d,0xc3,0x7c,0xc7,0x62,0x7e,0xeb, + 0x6f,0xcd,0x4f,0x9e,0x55,0x27,0xee,0x4e,0xc7,0x37,0x0d,0xb3,0x1d,0x8f,0x3f,0x2f,0x71,0x27,0xb2,0x4f, + 0x3b,0x1f,0xfe,0x3f,0x76,0xec,0x33,0x4c,0x76,0x29,0x5e,0xb6,0xfd,0xf2,0x97,0xfd,0x5f,0x8f,0xf9,0x7c, + 0x5f,0xd6,0xe9,0x0e,0xc7,0xbf,0x4f,0xfb,0xa5,0xd1,0x5e,0x9f,0xf6,0x47,0x7f,0xda,0xa6,0x59,0x3e,0xa7, + 0x23,0xb9,0xc6,0xa4,0x4a,0x2a,0xff,0xf7,0xcb,0x1d,0x9b,0xda,0xcd,0x21,0xdf,0x94,0x77,0xc7,0xe4,0x91, + 0x24,0xed,0xbf,0xdf,0x9f,0x93,0x36,0xdf,0x27,0xe7,0xe4,0xb7,0xa4,0xe2,0x92,0xe4,0xff,0x71,0xdf,0xe5, + 0x9b,0xbe,0x5d,0x2f,0xcf,0xf4,0x71,0x8b,0x92,0x8b,0xc7,0x7d,0xa9,0xff,0xe2,0xdd,0xb3,0x79,0x79,0x5f, + 0xa2,0x74,0x5c,0x92,0x9e,0x34,0xed,0x7f,0x5b,0x26,0xac,0x86,0x5b,0xd2,0xe7,0xa3,0x71,0x28,0x96,0x4e, + 0xdb,0xdd,0x89,0xfc,0xb5,0x6c,0xda,0x5c,0x97,0xe7,0xab,0x8f,0x4b,0xa2,0xb6,0xdf,0x6d,0xcf,0xed,0x7f, + 0x2e,0xb6,0xe4,0xbf,0x3c,0xfd,0xca,0x5d,0x13,0xf5,0xfb,0xd3,0x8b,0x7b,0xcf,0xee,0xd9,0xe5,0xb9,0x3b, + 0xe4,0x51,0x3d,0x6d,0xbe,0xff,0x64,0xcf,0xd3,0xeb,0x76,0x44,0xe2,0x7f,0x35,0x12,0x79,0xe7,0x6d,0xf1, + 0xd9,0xbe,0x6d,0xfa,0xeb,0xd1,0x3b,0x93,0xf1,0xe8,0x9e,0x7f,0xf6,0xff,0xfd,0x6f,0xf9,0xf7,0xd7,0x9e, + 0xbe,0x27,0x9d,0xd1,0x5f,0x9c,0x74,0xfb,0x9a,0x99,0xd6,0xed,0xad,0x24,0xaa,0x4f,0x3b,0x92,0x56,0x3f, + 0xfd,0xb7,0x35,0x3f,0xed,0xde,0x7b,0xdf,0xe7,0xaf,0x8e,0xef,0x13,0xcf,0xdb,0x7d,0xf9,0x67,0x5b,0xf5, + 0xb7,0xbd,0xc9,0x27,0x7f,0xd7,0xe4,0xf3,0xb6,0xff,0x54,0xcd,0xf4,0xe9,0xaa,0xff,0x92,0xbe,0xe7,0x9f, + 0x91,0xe7,0x7f,0xef,0xc5,0x9b,0xf1,0xd2,0xfc,0x76,0x45,0x7f,0xd7,0xff,0x95,0x8f,0xe7,0x6d,0xfb,0x50, + 0xef,0xa5,0xfe,0x9a,0x91,0xfd,0x1e,0x71,0x3c,0xe2,0x7f,0xdf,0xe4,0xe7,0x3b,0x59,0x7e,0xbb,0x95,0xf9, + 0x47,0xf2,0x4f,0xe4,0x9f,0xcf,0xe5,0xdf,0xcd,0xd6,0xed,0x77,0xc7,0x73,0xc9,0xc4,0x9f,0xc9,0xe7,0xf2, + 0x7a,0x54,0xff,0x75,0xda,0xdf,0xbf,0xbd,0x7f,0x97,0x3c,0xf2,0xbf,0x2b,0xf6,0xf6,0x5b,0xed,0xbf,0xbb, + 0x9d,0xf1,0xe7,0x73,0xce,0x3f,0x9f,0xc9,0xc9,0xbb,0xce,0xf7,0x9d,0x77,0x3b,0x7e,0x7e,0xe4,0xfc,0x4f, + 0xe7,0x2f,0xbb,0x77,0x3b,0xed,0x26,0xd3,0xf6,0xcb,0xff,0xdf,0xe7,0xaf,0xc9,0x39,0x56,0xf5,0x5a,0xdb, + 0xfd,0xab,0x7a,0x4f,0xf9,0x9e,0x4a,0xe7,0xaf,0xff,0x39,0xba,0xbd,0xb6,0xfd,0x0f,0xdf,0x9e,0x79,0x7f, + 0xae,0xbf,0x5f,0x1c,0x72,0x7e,0xab,0x64,0xc6,0x63,0xce,0x28,0xfe,0x97,0xe5,0xfe,0x72,0xbf,0xfc,0xde, + 0xfe,0xe9,0x7e,0xdf,0x93,0xca,0x5c,0xf5,0xf9,0x27,0xe3,0xfe,0xdc,0xb5,0x4e,0xb6,0x5f,0xb7,0x28,0xf4, + 0x4f,0xfd,0x7c,0x79,0xf8,0xfd,0xb6,0x6f,0x7f,0xb5,0x97,0xdf,0xd2,0xc5,0x75,0xba,0x3f,0x92,0x77,0xfb, + 0xea,0x99,0xa6,0xf9,0x37,0xbf,0x17,0xf9,0x2b,0x72,0x4f,0xe4,0xfd,0xfe,0xf7,0xb5,0xbe,0xda,0x43,0x7e, + 0xe9,0x62,0x7a,0xa4,0x93,0xfa,0xff,0x7f,0xb6,0x2c,0xef,0xb5,0x97,0xef,0x8a,0x38,0x9e,0x71,0x24,0xf2, + 0x7f,0xf8,0xed,0xda,0xde,0xef,0x27,0xfb,0xe2,0xbe,0xe4,0xfe,0x4a,0xe4,0x93,0xf1,0xff,0x96,0x7f,0xbe, + 0xcb,0xe9,0xb8,0xff,0xb1,0xff,0x92,0x4f,0x5d,0x7e,0x8f,0x2d,0x7e,0x77,0xb4,0xdf,0x77,0xf7,0xef,0xf6, + 0x34,0xfe,0x7f,0x24,0xf2,0x5b,0xab,0x1d,0xff,0xfb,0xff,0xbf,0xfb,0xff,0xf1,0xab,0x65,0xbf,0xe6,0xb7, + 0x79,0xfb,0x13,0xbf,0xff,0x73,0xbf,0xff,0xff,0xff,0xe7,0xe5,0xbf,0xcc,0xc5,0xf6,0xeb,0x55,0xbf,0xdc, + 0xef,0x8f,0xab,0x73,0x4f,0xcb,0x13,0xb7,0x3c,0xd5,0x5f,0x8b,0xd3,0x56,0xaf,0x63,0x4a,0xf5,0x73,0x72, + 0xeb,0xc5,0xbf,0xcb,0x7f,0xfd,0xcf,0xe3,0xf5,0xaf,0xe3,0xbf,0x38,0xd5,0xb3,0xc7,0x1f,0x57,0x3a,0x95, + 0xe6,0x7e,0xf2,0x66,0x2b,0x75,0xbf,0xc4,0xad,0xfa,0xdb,0x7a,0x4e,0xcb,0x63,0xaf,0xf8,0x9b,0xc9,0xdd, + 0xdc,0x7b,0xd8,0xef,0xb3,0xb7,0xac,0x77,0xd8,0xf3,0x8f,0xdf,0x6f,0xf2,0x37,0x93,0x7b,0xdc,0xf7,0xb7, + 0xe7,0x65,0xb7,0x3f,0xff,0xae,0x5c,0xed,0xd7,0x3f,0x1a,0xfe,0xd8,0xe8,0x79,0xd8,0xfe,0xb7,0x37,0xf7, + 0xe6,0x67,0x13,0x2d,0xc4,0xfa,0x67,0x24,0xfa,0x57,0x4b,0xda,0xff,0x39,0x7b,0x89,0xb5,0x13,0x7a,0xbf, + 0x93,0x4e,0xdc,0xa3,0xb4,0xc9,0x72,0x4d,0xcc,0xfb,0xb9,0xc5,0x1a,0x57,0xdc,0xaf,0xf2,0xd5,0x97,0x2e, + 0xdb,0x72,0x67,0xcd,0x6f,0xb7,0xc4,0xd5,0xb6,0x9d,0x9f,0xf1,0xd7,0x95,0xe6,0xe7,0x77,0x89,0x2a,0xef, + 0xbf,0x2b,0xed,0x2e,0xe9,0xdb,0x51,0xcf,0xaf,0x37,0xf6,0xaf,0xcf,0x24,0x9b,0xff,0xff,0x9d,0xbe,0xe4, + 0xb2,0x8f,0xff,0x7d,0x35,0x7f,0xa4,0x96,0xb2,0x5c,0xbe,0xb8,0xdf,0xd3,0x3b,0xff,0x79,0x4b,0xad,0xbe, + 0xba,0xfe,0x49,0x2b,0xb6,0xd1,0xda,0x4b,0x36,0xdf,0xf3,0xcf,0x28,0x94,0x51,0xe7,0xff,0xdb,0xe6,0xdb, + 0x2d,0xbb,0x93,0xd1,0xe7,0x93,0xd1,0x24,0xff,0xbe,0xcd,0x55,0x74,0xb6,0xd3,0x5f,0x28,0xf3,0x8f,0xe4, + 0xf3,0xce,0xde,0x96,0xb2,0xde,0xcb,0x6e,0xcb,0xf7,0xc9,0xe7,0xf3,0xc9,0xe7,0x7f,0xbb,0x39,0x6d,0x2d, + 0xb0,0xe3,0xd2,0xe5,0x63,0xf9,0xe7,0x93,0xbf,0xd9,0x3d,0xd6,0xb3,0x59,0xb7,0xe5,0x12,0x89,0xfc,0xfe, + 0x7f,0x3f,0xff,0xd9,0xab,0x6b,0x74,0xde,0xe3,0xd7,0x2b,0x93,0xce,0x5f,0x2f,0xce,0x2c,0xe2,0x6e,0xb6, + 0xcf,0x6f,0xfc,0xf4,0x4a,0xeb,0x93,0xcf,0xe7,0x12,0x8e,0x46,0xfb,0x6c,0xf6,0xfd,0x8f,0x3d,0x12,0x4f, + 0x58,0x9c,0x7f,0x47,0x92,0x77,0xf3,0x6d,0x3e,0xdb,0xfc,0x4f,0xe4,0x9e,0x79,0x3f,0xf7,0xf9,0x55,0x63, + 0xb6,0xf7,0xeb,0xfe,0xc7,0xfe,0x79,0x5d,0x64,0x71,0x67,0x23,0xcf,0xf7,0xfb,0x7d,0xdb,0xdf,0xfe,0x3c, + 0xf2,0x49,0x27,0x97,0xf2,0xff,0x9a,0x77,0xbf,0x6d,0xf6,0xff,0x72,0x71,0x24,0x9e,0x4f,0x4b,0x75,0xb9, + 0xff,0x6d,0xbe,0xbb,0xfd,0xb9,0xc7,0xf5,0x89,0xe7,0xf2,0xfd,0x5f,0xef,0xff,0xdb,0x1d,0xf7,0xf8,0xff, + 0xcf,0x27,0xf3,0xcf,0x39,0xfa,0xbe,0xff,0x7d,0xfe,0xfb,0xfe,0x77,0x27,0xf3,0xcf,0xe7,0xff,0xf3,0xf4, + 0xff,0xbe,0xff,0xec,0x71,0xe4,0xff,0xf9,0xfc,0xfa,0x79,0xd9,0x6e,0x72,0xbc,0xef,0xf1,0xd8,0xf3,0xb2, + 0xf6,0xbf,0x56,0x26,0x1f,0xce,0xe7,0xec,0xbf,0xdf,0xee,0x4e,0x3f,0xce,0xbe,0xfb,0x18,0xed,0x7f,0xe2, + 0xe1,0xfc,0xde,0x6a,0xdd,0x4e,0xb9,0xbc,0xff,0xb9,0x9e,0xb5,0xad,0x7b,0xac,0x4d,0xfc,0xfa,0xbd,0x9f, + 0xac,0x5f,0xa7,0xe3,0x12,0xb8,0xce,0x7a,0xff,0x54,0x7a,0xf6,0xce,0xb1,0x35,0x7c,0x7d,0x74,0x9a,0x77, + 0x33,0xfe,0x89,0xbb,0xaa,0xb7,0x53,0xec,0x69,0x45,0x55,0x6a,0xa7,0xe7,0x7f,0xeb,0x1d,0x8e,0xfb,0x12, + 0x79,0x3f,0x1f,0xf6,0xdf,0x74,0x72,0x5b,0xec,0x89,0xf8,0xcf,0x6f,0xdc,0xae,0xf9,0x38,0x9f,0xe7,0xfb, + 0xd3,0xae,0x2b,0x32,0x9e,0x3b,0x6d,0xad,0xd8,0x9e,0x4f,0x3c,0x9d,0xce,0x39,0x6d,0x8e,0xeb,0x5f,0x36, + 0xc4,0xa3,0xff,0x77,0x92,0xaf,0xba,0x9f,0xcf,0xf7,0x1e,0x71,0xdf,0xe2,0xb9,0xdb,0xda,0xb5,0xf8,0xb2, + 0x4a,0xa5,0x57,0x7e,0x9b,0x12,0x7f,0xb3,0x6e,0xfe,0x3b,0xdf,0xfa,0xac,0xf5,0x77,0x59,0x1e,0xee,0xf8, + 0xed,0x91,0x87,0x2f,0xfd,0xdb,0xfe,0x4f,0x3b,0x9c,0x8a,0x67,0xed,0x7c,0xb5,0x9a,0xb5,0x57,0xee,0xc9, + 0xf9,0x75,0x51,0xef,0x23,0xbc,0xfb,0x6a,0x7f,0x45,0x24,0x7d,0xfe,0x9d,0x91,0xc8,0xef,0xef,0xfb,0x35, + 0xde,0xc6,0xcb,0x67,0x37,0xfd,0xfe,0xc4,0xf2,0x79,0x27,0x9e,0x4e,0x2d,0x27,0xf1,0xb2,0xd9,0xb5,0xe7, + 0x7f,0xf9,0xfc,0x92,0x49,0x3f,0x9f,0xdb,0xe9,0x6f,0xa5,0xb6,0xed,0x89,0xc7,0xf3,0xff,0x24,0x9e,0x4f, + 0x3f,0xf6,0xbb,0xdb,0xd9,0x76,0xde,0xf5,0xf9,0xff,0x9e,0x79,0xeb,0x9f,0xcf,0xcd,0xf2,0xaf,0xd3,0x5d, + 0xbe,0xc4,0x9e,0x7f,0x3f,0x9e,0x49,0x3c,0xf3,0xeb,0x5d,0xed,0xed,0xb7,0x63,0x49,0xe4,0xe3,0xcf,0x27, + 0x92,0x7f,0xe7,0x72,0xfa,0x53,0xeb,0x6d,0xdf,0xe5,0xfa,0xfc,0xf3,0xc9,0xeb,0x9f,0xff,0xd9,0xac,0xf5, + 0x36,0xdb,0x71,0xdc,0xf2,0xb9,0x3c,0x93,0xc9,0xe7,0xef,0xf2,0x58,0xbb,0xb4,0xda,0xd3,0xba,0xe5,0x73, + 0xc9,0xe7,0xf5,0x8f,0xdf,0xec,0xcd,0x7a,0xfb,0x36,0xbc,0xe2,0xba,0x3c,0x9f,0xf9,0xe7,0x73,0xbf,0xdc, + 0xbc,0x54,0xfe,0x5d,0x7f,0xfd,0xf2,0x8f,0x3f,0xff,0xff,0xe7,0xef,0xfe,0x6a,0xbd,0x4d,0x9a,0xee,0x71, + 0x7c,0xae,0x8e,0xff,0x9a,0x71,0x34,0xec,0x9e,0x2a,0x6f,0x2e,0xbb,0xfe,0xc9,0x47,0xac,0x4d,0x38,0xfc, + 0x77,0x37,0xb5,0x9e,0x9f,0x5b,0xaf,0x3c,0xa2,0x9f,0x3f,0x9d,0xbe,0x3b,0xfc,0x7e,0x4f,0x15,0x37,0x96, + 0xdd,0xff,0x64,0xa4,0x56,0xe7,0xed,0xbf,0xfb,0xff,0xd9,0xaf,0x53,0x26,0xb7,0x63,0xdf,0x4b,0xa3,0x8f, + 0xc6,0xef,0xf7,0xdf,0xa7,0x52,0xbf,0x4b,0x6e,0xdf,0x24,0x59,0x2b,0x93,0x4d,0xfb,0xe3,0x4f,0xec,0xd7, + 0xa9,0x96,0xdb,0xbe,0x28,0xa4,0x51,0xff,0xfd,0xb7,0xdf,0x1d,0xd3,0xa9,0x53,0xa6,0xd3,0xd3,0x57,0x48, + 0x94,0x79,0xdf,0x7d,0xf7,0xc7,0xf7,0xf3,0xd5,0x4d,0x6d,0xc6,0xf5,0xd9,0xe8,0xaf,0x8e,0xfa,0x9d,0xfd, + 0x59,0xa8,0xf6,0x73,0x6d,0x77,0xbd,0xe4,0x7a,0xeb,0xf3,0x79,0x9f,0x73,0xbf,0x6a,0xbd,0x5d,0xba,0xed, + 0xb6,0x78,0xa2,0xbf,0x5c,0xfb,0xef,0xdb,0xff,0xd2,0xaf,0xe5,0x61,0x9a,0xfd,0xff,0x28,0xa4,0x4f,0x3f, + 0xed,0xb7,0xdb,0xe4,0xea,0x38,0xfb,0xed,0xbe,0xef,0xfb,0xc8,0xa2,0x4f,0xff,0x7d,0xaf,0xfb,0x33,0x9e, + 0xea,0xef,0x6f,0xbb,0x1c,0xb9,0x45,0x13,0xcf,0xfb,0xdf,0xb7,0xa9,0x6e,0xff,0x37,0x19,0xee,0xc6,0xf2, + 0x4a,0x25,0x72,0x7f,0xdf,0x7b,0xf7,0xcf,0xe7,0x57,0xd8,0xcf,0xb5,0xfb,0x9c,0x51,0x5c,0x95,0xf7,0x3b, + 0x6c,0x75,0x77,0xba,0x4d,0x3e,0xed,0xb6,0xf8,0xfe,0xba,0x24,0x93,0xff,0xdf,0x7d,0xb3,0xa4,0xfe,0xaf, + 0x37,0xeb,0xbe,0xdf,0xf5,0xd1,0x28,0xaf,0xd5,0x3b,0x78,0x55,0xee,0x93,0xbe,0xde,0xeb,0xfd,0xff,0xac, + 0xba,0x3d,0x7e,0xa9,0xdf,0xec,0xee,0x78,0xfd,0xfe,0xd5,0x4f,0xe2,0xdf,0xe7,0xba,0xcf,0xe3,0x97,0xc7, + 0x66,0xa2,0xfb,0x9d,0xb1,0xbf,0x55,0x7f,0xe6,0xaf,0x95,0x5b,0x9c,0xb6,0x58,0xf7,0x6b,0xf9,0x5f,0x0f, + 0xea,0x65,0x7a,0xf4,0xff,0xb9,0xcb,0xc4,0xa1,0xea,0xd6,0x76,0x5e,0x1f,0x8e,0x57,0x1d,0xcd,0x3f,0x44, + 0xa7,0x38,0x93,0xb2,0x8f,0xe3,0x57,0xca,0x9f,0xde,0xdf,0xef,0xeb,0xbc,0xde,0xe9,0xfc,0xc4,0x61,0xc7, + 0xe5,0x73,0xdf,0x23,0x7f,0x27,0xfa,0x8f,0x26,0xaa,0x7e,0x5f,0x78,0xfe,0x3b,0xda,0xb2,0xab,0x65,0xbf, + 0xe7,0x2b,0xfb,0xd8,0xec,0x6a,0xa4,0xdf,0xaa,0xc6,0xac,0x77,0xff,0xfa,0x7a,0xcb,0xfa,0x79,0xf4,0xeb, + 0x9e,0xfb,0xbd,0xcf,0xf7,0x98,0x7e,0x54,0xec,0xb2,0x38,0xe3,0xf9,0xdf,0xef,0xce,0xe6,0xf2,0xfe,0x26, + 0xe3,0x69,0xdb,0x13,0x5e,0x5b,0x1c,0x7e,0x50,0xfc,0x72,0xf5,0x64,0x4a,0xb8,0xe4,0x79,0xbe,0xff,0xcf, + 0xfb,0x1f,0xef,0x57,0x6f,0xe1,0xeb,0xa3,0x57,0xfb,0x2b,0xf9,0xdb,0xea,0x71,0xcb,0xde,0x76,0x2f,0xd3, + 0x56,0x47,0xcf,0xff,0xa7,0x4d,0xd7,0xeb,0x53,0x4e,0xeb,0x7f,0x7d,0x47,0x3d,0xbe,0x35,0x1d,0xbf,0xf8, + 0xcd,0xb6,0x57,0xf4,0x7a,0xd1,0x65,0x92,0xdc,0xed,0x57,0xda,0x9b,0x96,0xf4,0x9a,0x7f,0xd8,0xd8,0x7f, + 0x4b,0xdc,0x69,0xfb,0x77,0xba,0xdc,0x95,0x9a,0xc7,0x62,0x76,0xfc,0xdf,0xb9,0xbe,0xdd,0x8d,0xcb,0xfa, + 0x94,0xdf,0xda,0x92,0xef,0x55,0xbe,0x3e,0x5f,0xff,0x5b,0x53,0x39,0xdb,0xc2,0x4a,0xfe,0xd6,0x49,0xdb, + 0x75,0x4a,0xf7,0x15,0xd7,0x5b,0xa3,0x71,0x5d,0x7f,0xbe,0xe7,0x63,0xb7,0xc4,0xec,0xfd,0xe4,0x92,0x6f, + 0xdf,0x19,0xf5,0x26,0xb3,0xdf,0x5a,0x1b,0x96,0xf3,0x1b,0xce,0xd9,0x2e,0x89,0xfc,0xa8,0x77,0xfc,0xf8, + 0xf2,0xc7,0xfa,0xaf,0xe9,0x2c,0xf1,0xde,0xea,0x6f,0x78,0xae,0xad,0xb3,0x95,0xae,0x37,0xbe,0xff,0xf8, + 0xfc,0xb3,0xe5,0x4f,0x71,0xa8,0xf5,0xdf,0x28,0xae,0x8d,0xdf,0x9c,0x74,0xb6,0xe3,0xf5,0x3b,0x28,0x52, + 0xd5,0x62,0x71,0x25,0xb6,0xd2,0xb7,0x4b,0x6e,0xbb,0x6f,0xbe,0xa7,0x22,0x57,0x48,0xae,0x4f,0x3f,0xfe, + 0x7e,0x6d,0x34,0x6c,0xb2,0x5d,0xaf,0xff,0x73,0xfa,0x3f,0x94,0x52,0x24,0x9f,0xff,0xff,0xed,0xfb,0x65, + 0x7d,0x2e,0xb3,0x73,0xb9,0xdb,0x9f,0xd2,0x44,0xa3,0xff,0xfb,0x9f,0xf7,0xdb,0xed,0x5b,0x2b,0xe9,0x7e, + 0xb8,0x9c,0x4f,0xd8,0xff,0xd2,0x3d,0x1f,0xce,0xfc,0x9d,0xf9,0xb7,0xce,0x5b,0x3f,0xf9,0xb5,0xd8,0xfd, + 0xc9,0xd8,0xe5,0xd2,0x24,0x9f,0xcf,0xff,0x9d,0xf1,0xd3,0xee,0x5b,0xe7,0xf9,0xaf,0xb7,0xfd,0xf9,0xdb, + 0x93,0xd1,0x2b,0xaf,0xce,0x58,0xff,0xef,0xf7,0xdf,0x9b,0x27,0x9b,0x3d,0xf3,0x7d,0xf7,0xd8,0xf5,0xc9, + 0x4b,0x92,0x4f,0xff,0xff,0xef,0xdf,0x6d,0xf3,0x64,0xf3,0xaf,0xb6,0xed,0x7d,0xfb,0x7e,0xb1,0x44,0x92, + 0x49,0xe7,0xff,0xfe,0xdf,0x7b,0xf7,0xcd,0xfe,0x4f,0xbb,0x6b,0xed,0xde,0x9d,0xfa,0xcb,0x92,0x49,0xe7, + 0xf3,0xf7,0xfb,0xed,0xf7,0xbf,0xb7,0xff,0x3f,0x7d,0xb6,0xf7,0x6d,0xff,0xe7,0x15,0xd7,0xe9,0x63,0xff, + 0x38,0xdd,0xef,0xdb,0x1a,0x4b,0x67,0x6f,0xb1,0xfe,0xed,0xb7,0xc7,0x9f,0xff,0x27,0x92,0x77,0xfc,0xec, + 0x77,0xdb,0x6e,0x71,0xfb,0xb6,0xfd,0xdf,0xf3,0xb6,0xf7,0x7e,0x79,0x3f,0xfe,0x57,0xe7,0xfd,0xb9,0xff, + 0x6d,0xb7,0xe7,0x9e,0x6b,0x6f,0xed,0xbe,0x3b,0xef,0x77,0xfd,0x13,0xf2,0xc4,0x95,0x8e,0xfb,0x1d,0xf7, + 0xfb,0x7f,0xff,0xfc,0xe2,0xdf,0x36,0x7f,0x7f,0xdf,0x5d,0x8a,0xe4,0xf3,0xf9,0x3d,0x6f,0xf7,0xff,0xfd, + 0xf7,0xdf,0x9f,0x8f,0xf9,0x36,0xb6,0xdb,0xec,0x76,0xda,0xfe,0x49,0x3f,0x9c,0xb9,0x5f,0xef,0xf7,0x3f, + 0x7f,0xb6,0x38,0xff,0x8e,0xed,0x9f,0xf6,0xdb,0xd3,0xae,0xbb,0xe2,0x4f,0x3f,0x92,0x57,0x38,0xed,0xce, + 0xe6,0xff,0xb7,0x3f,0xee,0x69,0x68,0x9f,0xed,0xfe,0xfb,0xb5,0xd8,0xf2,0x7f,0x3c,0x92,0xb2,0xfb,0xff, + 0xce,0xfb,0xef,0xb9,0xfb,0xff,0xbb,0x67,0xfd,0xf5,0xf7,0xdd,0xb5,0x38,0xe2,0x79,0x27,0xaf,0xcf,0x5b, + 0xf3,0xf7,0xff,0xed,0xff,0xfb,0xff,0x5b,0xdc,0xef,0xb7,0xdb,0x6f,0x8d,0xc7,0x9c,0x79,0x27,0x9e,0x49, + 0xdd,0x55,0xbf,0xc7,0x6f,0xf7,0xdf,0xe3,0x5b,0xfc,0xdd,0xfe,0xbf,0x6f,0xb7,0xff,0xff,0xcf,0x3c,0xf2, + 0x79,0x3f,0xfe,0x79,0xfb,0x7f,0xef,0xbf,0x6c,0x53,0x77,0xff,0xb9,0xbf,0xfd,0xbf,0xff,0xff,0xcf,0x3f, + 0x92,0x4f,0x3c,0x93,0x97,0xfb,0xfd,0xbe,0xdb,0x6d,0x93,0xd4,0xfd,0xff,0xfb,0xfe,0x77,0x3c,0xe2,0x79, + 0xc4,0xf3,0xf9,0xf8,0xef,0xbe,0xff,0x6c,0x77,0xfb,0xf3,0xf3,0x7f,0x7f,0xff,0xff,0x6f,0xbf,0xdf,0x73, + 0x8f,0xe4,0xf3,0xc9,0xe7,0x9f,0x8f,0xdf,0x7d,0xfd,0x3b,0x7c,0x77,0x66,0xf3,0xff,0xff,0xef,0xce,0xff, + 0xe3,0xff,0xff,0x9f,0xcf,0x54,0x9b,0xc9,0x3b,0xf5,0xf1,0xfb,0x1f,0x75,0x38,0xe3,0xf7,0x3f,0xfe,0x97, + 0xfd,0x1f,0xbe,0xe7,0xff,0xbd,0xff,0x9d,0x4f,0xf9,0x1d,0x4a,0xe4,0xdf,0xb7,0xb7,0xf7,0xfe,0xfc,0x9f, + 0xba,0x2b,0xff,0x79,0xfb,0x5d,0xbd,0xfc,0xeb,0xd2,0x7e,0x14,0xbe,0x9b,0xa2,0x76,0xbb,0xa2,0x6e,0xdd, + 0x17,0xee,0x3d,0x1f,0x35,0x2f,0x78,0x79,0x5f,0xfb,0x7a,0xfc,0xf5,0xbe,0x9f,0x93,0xd5,0xd8,0xb3,0xed, + 0xa8,0x93,0xac,0xe5,0x15,0xbe,0xdf,0x2f,0xb6,0x3d,0x6b,0x77,0x4b,0xdc,0x79,0x68,0xdd,0x7e,0xfb,0xb3, + 0xad,0xdc,0xae,0x56,0x33,0x76,0x4f,0xda,0xe2,0x5f,0xa7,0xf5,0xd5,0xbf,0x6f,0xb5,0xff,0x26,0x77,0x29, + 0xf3,0xf6,0xdc,0xeb,0x6f,0x29,0x5e,0x5d,0xeb,0xa8,0x6d,0x2b,0xf3,0xbc,0xeb,0xfb,0xef,0x5c,0x9d,0xf7, + 0xf8,0xf7,0x6e,0x7e,0xba,0x4d,0xf9,0x5c,0xbb,0xd9,0x5c,0x7f,0xab,0xde,0x5f,0xd5,0x62,0x6e,0xa4,0xfa, + 0x4e,0x3a,0xff,0x8a,0x9f,0xaf,0x9f,0xc7,0x3d,0x75,0x3f,0x1b,0x8f,0x7b,0x1c,0xb6,0x3d,0x6f,0xf1,0x47, + 0x7d,0xad,0x7f,0x7c,0x52,0xb7,0xb8,0x71,0x37,0x1c,0xaf,0x37,0x34,0xa6,0x28,0xdf,0x6d,0x66,0xec,0x4a, + 0xdf,0x74,0xf7,0xa5,0x6d,0x6a,0x7f,0x1a,0xf7,0xfc,0xea,0x4a,0x9d,0x2f,0x4c,0x3e,0xe2,0x4e,0x24,0xee, + 0xbe,0xdb,0x1d,0xcf,0xac,0xdf,0xfa,0x3f,0x1f,0x9e,0xfb,0xfb,0xf6,0xf4,0xe7,0xef,0xa8,0xef,0x4b,0xfe, + 0xd4,0xfe,0xf5,0xdd,0xf1,0x3c,0xef,0x72,0xdb,0xf2,0x8f,0xd5,0x62,0x6f,0xe7,0xc3,0x97,0xff,0xfe,0x71, + 0x3f,0x55,0x56,0xa6,0xab,0x7f,0x58,0xee,0x5f,0xe7,0xeb,0x56,0xdf,0x74,0x76,0xbf,0x22,0xaf,0x49,0x6f, + 0xb5,0x26,0x5a,0x49,0xe4,0xe4,0x4e,0xdd,0x2c,0x75,0x5e,0x5c,0x76,0x3c,0xd2,0x77,0xdc,0xa3,0xca,0x24, + 0xab,0xaf,0xd7,0x13,0x57,0xfc,0xff,0xff,0xf9,0xbe,0x4a,0xfa,0xdb,0x6d,0xbb,0x7d,0xf9,0xe7,0x9e,0xb9, + 0x24,0x9e,0x7b,0x69,0x7f,0xec,0x96,0x6d,0xb7,0xfc,0x9e,0x51,0x2b,0x92,0x4f,0x3f,0xf6,0xd3,0xfb,0xdb, + 0x35,0xdb,0x7f,0x97,0x5d,0x72,0x4f,0x3c,0xf3,0xf9,0xc9,0x93,0xf7,0xd6,0xcd,0x76,0xf8,0xf2,0xb9,0x24, + 0xf3,0xf9,0xff,0xff,0xd2,0x3f,0x7d,0xac,0xbb,0x7b,0xff,0x47,0xa2,0x89,0x39,0x73,0xbf,0xe7,0x37,0xfe, + 0xdf,0x69,0xb6,0x37,0x9e,0x8f,0x24,0x9f,0xf2,0xdf,0xe3,0x8e,0x4f,0x7b,0xbf,0xb6,0xfe,0x6e,0x44,0xfe, + 0xba,0xdc,0xfe,0x76,0xe7,0xef,0xda,0xda,0xad,0x6c,0xfe,0xee,0x49,0x3d,0x9e,0x4f,0x3b,0xe3,0xbe,0xc7, + 0x35,0xb6,0xe6,0x5b,0xf6,0xc7,0xae,0x4a,0x58,0x9f,0xf7,0xf8,0xde,0x77,0xe9,0xfd,0x79,0x93,0x6f,0x7f, + 0x47,0xa4,0x4f,0x5f,0xfa,0x7e,0xdf,0xe3,0xbb,0x77,0x73,0xa6,0xbb,0x5e,0xbf,0x29,0x12,0x4f,0xdf,0xef, + 0xb7,0xfb,0x9c,0xd5,0x3f,0xe9,0xb6,0xd5,0x6e,0xba,0x5d,0x73,0xff,0xdf,0x63,0x79,0xdf,0xa7,0xf1,0xfe, + 0x53,0x36,0x3f,0x14,0x49,0x47,0xfe,0x6f,0xfb,0x6e,0x77,0x39,0x3f,0x5d,0xf3,0x6b,0x4f,0xf9,0x2e,0xba, + 0x5f,0xfd,0x56,0xbf,0xd3,0xf9,0xc9,0xec,0xee,0x87,0x4f,0xbf,0xaf,0xf7,0x96,0x3f,0x73,0x7d,0x3a,0xad, + 0xcf,0x49,0xee,0xae,0xf6,0xdf,0xaa,0xe7,0xa4,0x49,0xe7,0x1d,0x4d,0xc7,0x7c,0x4e,0x4e,0x97,0x3f,0xba, + 0x7d,0x56,0xe4,0xbe,0x57,0x3c,0xec,0x6e,0xf7,0xe3,0x8f,0x2f,0x17,0x0f,0xba,0xdd,0x55,0xeb,0x24,0x57, + 0x5f,0x9d,0xb7,0xdb,0xef,0xf9,0xcc,0xd7,0xaa,0xb7,0x5d,0x4d,0xeb,0x24,0x51,0x3c,0xff,0xf6,0xdf,0xed, + 0xfa,0xdd,0xfc,0xef,0x53,0x6b,0xb6,0xdd,0x64,0xba,0x5c,0xf3,0x8d,0xde,0x9d,0xbf,0xe7,0xbf,0x9d,0xea, + 0x6d,0x3e,0xf4,0xfe,0xf9,0x7d,0x7e,0x7e,0xf7,0xdf,0xb1,0xc7,0xf4,0xb2,0x35,0x58,0x6d,0xd7,0x73,0xca, + 0x29,0x15,0xf9,0xdf,0x6d,0xb7,0xdc,0xe5,0x53,0xa8,0xc5,0xa1,0x9b,0xec,0x71,0x45,0x22,0x56,0x5b,0xfb, + 0xf6,0xfb,0x1d,0xcf,0xef,0xe7,0x72,0x9f,0xcd,0xb1,0xff,0x94,0x89,0xe8,0xff,0x4e,0xde,0xef,0xfe,0xfc, + 0xf6,0x6b,0xd9,0x4c,0x66,0x37,0x7e,0x51,0x28,0x95,0x8f,0xfb,0x6f,0xef,0xdc,0xee,0x7f,0x66,0xbd,0x5d, + 0xbe,0x63,0x7f,0xe4,0xa5,0xd1,0x27,0x73,0xbd,0xdf,0x7f,0x8e,0xe7,0xf4,0xf1,0x77,0x29,0x8c,0xde,0xf3, + 0xc9,0x48,0x93,0xd7,0xdf,0x7d,0xb7,0xdf,0xf3,0xb9,0xe9,0xe2,0xee,0x36,0xf9,0x4f,0xdf,0xa4,0x51,0x2b, + 0xf3,0xbe,0xdb,0xef,0x4e,0x3f,0xf2,0x73,0x75,0x7b,0x94,0xda,0x73,0xbe,0x48,0xa3,0xd1,0xff,0xef,0xb6, + 0xff,0x7c,0x79,0xdc,0x9f,0xdb,0xdd,0x4e,0x65,0x37,0x73,0xc9,0x45,0x13,0xd7,0xdb,0xed,0xf7,0xdf,0xf3, + 0xff,0x27,0x1f,0x5b,0xa4,0xdc,0x65,0x37,0x63,0xc9,0x4b,0xa5,0x89,0xdb,0xed,0xbe,0xf8,0xfe,0x7f,0x3f, + 0xf3,0x8b,0x55,0xf9,0xfc,0xbe,0xff,0xc9,0x29,0x74,0x7f,0x3e,0x9d,0xf7,0xdf,0xff,0x8f,0xff,0x9c,0x7e, + 0x6f,0xe7,0xaf,0xf3,0x7d,0x89,0x24,0xa3,0xca,0xbc,0xfd,0x8e,0xff,0xef,0xce,0xff,0x9c,0x4e,0xeb,0xf6, + 0xf1,0x52,0xff,0x6e,0xdd,0x2f,0xcb,0x3b,0x9f,0xcf,0xdc,0xfd,0xf7,0xfb,0xef,0xcf,0xdc,0x9e,0x71,0x6f, + 0xf7,0x6e,0xf3,0x7d,0xca,0x24,0x95,0xf1,0x3b,0x93,0xb9,0xfb,0xff,0xb7,0xff,0xff,0xb9,0x37,0xf4,0xdf, + 0xea,0xcd,0xe6,0xff,0x74,0x4f,0x3c,0xfe,0x4f,0x24,0xee,0x77,0xdf,0xef,0xfe,0xfb,0xfd,0xd7,0xe5,0x26, + 0xf7,0x5a,0x6f,0xaf,0x3b,0x25,0xff,0x3c,0xf2,0x4f,0x2b,0xd3,0xfd,0xff,0xe3,0xbe,0xe7,0x7d,0xcf,0xe7, + 0xa6,0xcd,0x7a,0xef,0xae,0x3f,0x15,0xf1,0x3c,0x9e,0x51,0xfd,0x6d,0xce,0xdc,0xec,0x7e,0xfb,0xff,0xfe, + 0x38,0xf6,0xd5,0x27,0x4b,0xf4,0xe7,0xfc,0x4e,0xc7,0x92,0x59,0xfc,0x9f,0x79,0xff,0x9f,0xb7,0xfb,0x7f, + 0xff,0xe7,0x7f,0xdb,0x58,0xff,0x27,0xd3,0x9f,0xf1,0x3b,0x1c,0x51,0x48,0x9f,0xd6,0xc4,0xfc,0x7f,0xdb, + 0xfb,0xff,0xff,0xff,0xf1,0xcd,0xac,0x7f,0x93,0xeb,0x49,0xf4,0x9d,0xbf,0x29,0x24,0x8f,0x27,0xee,0x4e, + 0xe7,0xed,0xfe,0xdf,0xef,0xff,0xfb,0xfe,0xda,0xfc,0xf9,0x3e,0xbb,0x9f,0x49,0xdb,0xf3,0xd2,0x29,0x72, + 0x79,0xab,0xfd,0xce,0xdb,0xed,0x8e,0xdf,0xff,0xff,0xcd,0xaf,0xd7,0x93,0xdb,0x09,0xdf,0x9f,0x79,0xfd, + 0x24,0x91,0x24,0xee,0x4f,0xdd,0x5f,0xbf,0xb8,0xed,0xff,0xf8,0xfc,0x9b,0x3c,0xa9,0x36,0xb6,0xaf,0x49, + 0xe6,0x93,0xc9,0x2c,0xf2,0x4f,0xc4,0xfb,0xd6,0xd8,0xed,0xbf,0xdf,0xff,0xff,0x3d,0xb5,0x89,0xb2,0xed, + 0x2a,0xdf,0xf5,0xb2,0xfd,0x74,0x51,0x3d,0x7d,0xcf,0xdc,0xed,0xbf,0xbf,0x7d,0xff,0xc7,0xf3,0xd3,0x66, + 0xbf,0x76,0xf6,0x73,0xaa,0xe7,0x72,0x7a,0xe5,0x73,0xd7,0xdc,0xfd,0x8f,0xbf,0xfd,0xf1,0xdf,0xfe,0x71, + 0x3d,0x36,0x6a,0x32,0x9d,0x77,0xff,0x13,0xba,0xe5,0x72,0x57,0x24,0xec,0x4d,0xff,0xec,0x76,0xdf,0x6e, + 0x77,0xe7,0x13,0xdb,0x38,0xab,0x3e,0xb7,0x1d,0x09,0xc4,0xf3,0xc9,0xeb,0xf2,0xbe,0x27,0x63,0xf6,0xff, + 0x63,0xbe,0x3b,0xff,0xf9,0xc5,0xbf,0xdf,0xb8,0xd9,0x7d,0xb9,0x6c,0x49,0x28,0x9e,0x89,0x5f,0x13,0xf1, + 0xfb,0x73,0x7f,0xf7,0xff,0xbf,0xf8,0xf2,0xde,0x4b,0xdd,0xec,0xbe,0x5e,0x6f,0xeb,0x94,0x89,0x2b,0x9f, + 0xcf,0xfc,0xef,0x8f,0xdc,0xdf,0xff,0xd8,0xec,0xb1,0x6b,0x33,0xf7,0x33,0x6d,0x29,0xbb,0x1d,0xfa,0x24, + 0xa2,0x49,0xeb,0xf3,0xff,0xe7,0x7f,0xf7,0x3b,0x7f,0xbe,0x35,0x9e,0x57,0xc4,0xeb,0xbd,0xbf,0x5f,0x8e, + 0xcb,0x12,0x4f,0x3c,0xfe,0x77,0xff,0xff,0xff,0xe7,0xfe,0x4e,0x3f,0xe6,0xf1,0x5f,0xf3,0xb5,0xf3,0x6d, + 0xae,0xfb,0x9f,0xcf,0x47,0x93,0xcf,0x3f,0x1c,0x71,0xdf,0xf3,0xff,0xfc,0xff,0xfb,0x39,0x1d,0xce,0xda, + 0xeb,0x76,0xbf,0x7d,0xcf,0xfc,0x93,0xd1,0x24,0x9f,0xc9,0xdb,0xdd,0xf6,0xda,0x9d,0xf1,0xc7,0x93,0xc9, + 0x3b,0xd6,0xe7,0x50,0xf3,0xe1,0xdd,0x53,0xb1,0xab,0xf3,0x4e,0x2f,0x1f,0xb7,0xcf,0xd7,0x4f,0xab,0xfb, + 0x9e,0xcb,0x79,0xca,0xe5,0x4e,0x71,0xe7,0x5f,0xce,0xfe,0x45,0xf2,0xfd,0x1f,0x8c,0xef,0x1d,0x3e,0x28, + 0xed,0xb6,0xc8,0x97,0xe7,0xf9,0x1c,0x61,0x5b,0xdc,0x96,0x5e,0x1b,0xcf,0x3e,0xf5,0xab,0xe7,0x63,0x31, + 0x5c,0xdf,0xbe,0xe8,0xa8,0x6e,0xeb,0xf5,0xfc,0xe4,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, +}; +static constexpr VoiceClip notificationClearedClip = { + notificationClearedData, sizeof(notificationClearedData), 10984, 8000, VoiceCodec::G72624 +}; +// "Advert queued" +static const uint8_t advertQueuedData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x8d,0x37,0xfe,0xfb,0x34, + 0x51,0x3e,0xef,0xb1,0xe7,0x7f,0x7d,0xed,0xff,0xb4,0x9f,0xef,0xc9,0xdf,0xff,0x92,0x27,0xbd,0xf7,0xfb, + 0x9e,0x77,0xf7,0xd6,0xf1,0xda,0x5d,0xf7,0xe8,0xe3,0xfe,0xc8,0xa4,0x5f,0xff,0x7d,0x96,0xe7,0x1b,0xb3, + 0x7b,0xfd,0x66,0xfb,0xe7,0xf1,0xe7,0xd5,0xcf,0x2f,0x7f,0x8d,0xc7,0x7f,0xcd,0xdd,0xbd,0xff,0x93,0xfd, + 0xf9,0x38,0xf3,0xb2,0xe4,0xa7,0xf9,0xfe,0xff,0xbe,0x26,0x7c,0xdf,0xff,0xe9,0x7e,0xd8,0xac,0x49,0xf8, + 0xae,0x4b,0x3c,0x9d,0xb1,0xd7,0xe3,0xa9,0xed,0xff,0xf5,0x9b,0x6d,0xd7,0x28,0x9e,0x56,0xfd,0x1e,0x4f, + 0xd8,0xeb,0xbe,0xfb,0xfe,0xdf,0x38,0xc9,0xac,0xdc,0xe2,0x91,0xe9,0x63,0xd6,0xe8,0xef,0xd5,0xdb,0xdc, + 0x77,0xcd,0xf4,0x7c,0xbe,0x6b,0xbd,0x27,0x92,0x97,0x44,0xfc,0xf7,0xf8,0xde,0x76,0xc7,0x62,0x5f,0x2f, + 0x19,0xec,0xd7,0x5c,0x79,0x2c,0x94,0x49,0xcf,0x7f,0xf6,0xc6,0xfd,0xfe,0x3d,0xaa,0xf9,0xdb,0x4b,0xad, + 0xbf,0x75,0xd1,0x49,0x1e,0x8e,0x3f,0x7f,0xf6,0xf8,0xde,0x6b,0x39,0x73,0xbe,0x9e,0x7b,0x77,0xc7,0xac, + 0x91,0x5c,0x9e,0x7f,0xd8,0xfd,0xf1,0xc7,0xf2,0xf9,0x27,0x7f,0x6d,0x9e,0xed,0xb1,0xfc,0x92,0x89,0x27, + 0x9e,0x69,0xdf,0x7d,0xff,0xe5,0x32,0x51,0x3c,0xed,0x6d,0xb3,0x6d,0x7f,0xc7,0x92,0x51,0x24,0x9e,0x7f, + 0xfb,0xfd,0xbf,0xe7,0x95,0xdf,0x2e,0xff,0xbd,0xda,0xef,0xb7,0xfc,0x92,0x49,0x4b,0xf2,0x4e,0xdf,0xed, + 0xab,0xc7,0x93,0xf2,0xfb,0xed,0xb6,0xdb,0x7f,0xbf,0x3c,0x95,0x91,0x3c,0xf3,0xfe,0xff,0x6c,0x56,0xe5, + 0x1c,0x79,0xbb,0xdb,0xed,0xfb,0x1d,0xb9,0x5c,0x9e,0x89,0xfb,0x95,0xb7,0xd8,0xec,0xce,0xcb,0x9f,0xce, + 0xf8,0xdb,0xf5,0xff,0xed,0xcf,0x3c,0xf2,0x49,0xfc,0xf3,0xf9,0xf4,0xfe,0xdd,0x3f,0xe3,0xbe,0xdb,0xed, + 0xf6,0x3f,0x13,0x8f,0x3f,0x9f,0xcf,0xff,0xff,0xff,0xfc,0xd6,0xcd,0xc7,0xe3,0x76,0xf7,0xab,0xbf,0xfc, + 0xee,0xaa,0xfc,0xe5,0xba,0xab,0xe5,0xbf,0xc4,0xd6,0xdc,0xbe,0xca,0x77,0xdb,0x73,0x8e,0x2b,0x1e,0x4f, + 0x3d,0x7c,0xb2,0xc7,0x7f,0xce,0xfa,0xe6,0xde,0xfb,0x5f,0xfd,0xdf,0x9f,0xb9,0xe7,0x93,0xd6,0x5c,0x9e, + 0x7f,0x27,0xff,0xff,0xff,0xd6,0xf9,0xfa,0xdc,0x65,0xd7,0xeb,0xf9,0xdc,0xf2,0x79,0x24,0xf3,0xcf,0xfc, + 0xe3,0xf7,0x3e,0xb7,0xf2,0xff,0x43,0xad,0xda,0xef,0xf6,0xa4,0xfe,0xb1,0x24,0xf3,0xcf,0x3f,0x9f,0xf9, + 0xdc,0xb7,0x57,0xf6,0x9f,0x36,0xbb,0xd3,0x71,0xc7,0xfe,0x79,0xe7,0x9e,0x7f,0xe7,0x9f,0x8f,0xcd,0xa8, + 0x7f,0xf4,0xfb,0xb6,0xf0,0xef,0xf7,0xe7,0x2c,0x7f,0x3c,0xfe,0x7f,0xe7,0xfe,0x7d,0x6f,0xfe,0xac,0x3e, + 0xdd,0xb6,0xdf,0xde,0x71,0xf8,0xfe,0x4e,0x3f,0x9e,0x7f,0x38,0xfc,0xd9,0x8b,0xfd,0x4f,0xbf,0x7d,0xb7, + 0xdf,0xe3,0xb9,0xa7,0x9f,0xff,0xfd,0x63,0xf1,0xe9,0xaa,0xbf,0x9f,0x9b,0xf7,0xdb,0x9a,0x7e,0x3b,0xff, + 0xf9,0xbc,0xe5,0xba,0xa7,0x9e,0x99,0x84,0x99,0x8f,0xdf,0x1f,0x7e,0x3e,0x9d,0xfe,0x5f,0x6e,0x71,0xfc, + 0xef,0xce,0x6e,0x64,0x74,0xe7,0xfa,0x7e,0xf8,0xed,0x8f,0xfe,0xac,0x77,0x38,0xfe,0x7e,0x29,0xe8,0xb9, + 0x95,0x9d,0xaf,0xf7,0x93,0xaf,0xd4,0xfe,0x71,0xdd,0xe4,0x49,0xe5,0x3f,0x3f,0x33,0x13,0x75,0xdf,0x63, + 0xfd,0xdd,0x12,0x49,0xfd,0x75,0xff,0x59,0x35,0x2e,0xf2,0xef,0xae,0xa7,0x7c,0x49,0x2b,0xae,0x4f,0x5f, + 0x9f,0xff,0xf5,0xb5,0x36,0xd2,0xeb,0xfe,0xdf,0xf2,0x79,0x48,0x92,0x49,0xff,0xfc,0x77,0xcd,0xbd,0x29, + 0xb2,0xef,0xb9,0xdc,0xae,0x4a,0x4b,0x9e,0x4f,0xfb,0xef,0xb6,0x6d,0xc9,0xfd,0x9b,0x7e,0x77,0x29,0x13, + 0xca,0x3f,0x9e,0x76,0xdf,0x7d,0x9b,0x52,0x1f,0x66,0xdf,0xff,0xca,0x7f,0x92,0x7f,0xc7,0x7f,0xbe,0x3f, + 0x76,0xfc,0xdc,0xc9,0xbe,0xe7,0xf4,0x97,0xe5,0x7d,0xf1,0xff,0x63,0x8e,0xc9,0xbb,0x32,0xb3,0x6e,0x7f, + 0x25,0x93,0x89,0x3b,0x63,0xf7,0xdf,0xff,0x93,0x5a,0x73,0x65,0xa7,0x1e,0x4b,0x27,0xf5,0xf6,0xff,0xfd, + 0xff,0xff,0x37,0xb5,0x3e,0x4f,0xbf,0x3d,0x17,0xf9,0x3c,0xdc,0x7e,0xc7,0x73,0xb9,0x6b,0x43,0xf4,0x98, + 0xec,0x51,0x48,0xe5,0xce,0xbc,0xed,0xff,0xff,0x26,0x4c,0x3f,0x49,0x8e,0xc4,0xb2,0x8f,0x27,0xed,0x8f, + 0xbf,0xf3,0xb2,0x67,0xde,0x6c,0x98,0xec,0x4a,0x44,0x9e,0x4d,0xf8,0xfd,0xb9,0xfb,0xb4,0x6e,0x3a,0x4d, + 0xbf,0xc5,0x22,0x49,0xea,0xfd,0xce,0xa7,0xff,0x8b,0x57,0x73,0x64,0x3b,0x62,0x5f,0x5d,0x73,0xf6,0xff, + 0x5c,0x4e,0xcd,0x9d,0x8f,0xb3,0x63,0x79,0x25,0x74,0x79,0xfb,0x1d,0xb5,0x3f,0x56,0xce,0xdd,0x4b,0x0e, + 0xd8,0xa4,0x4a,0xe7,0xfd,0x8e,0xfb,0x9f,0xb9,0x66,0xe3,0xec,0xbf,0xec,0x5f,0x5d,0x1e,0x76,0xff,0x7a, + 0x7f,0xd9,0x33,0x7f,0x52,0xd3,0xb5,0x48,0x92,0xba,0xdf,0x1d,0xf6,0x3f,0xee,0xd7,0x85,0x4b,0x0e,0xf5, + 0x22,0xba,0x3c,0xed,0xfe,0xdf,0x9d,0xfa,0x7e,0xf3,0xa4,0xdf,0x52,0x91,0x25,0x1f,0x8e,0xff,0x63,0xf7, + 0xe5,0x9d,0x89,0x93,0x6d,0x72,0x5c,0xa2,0xbf,0xff,0xed,0x4f,0xd4,0x96,0xbd,0x27,0x48,0x76,0xc5,0x1e, + 0x9e,0x5f,0xff,0xbe,0xc7,0x63,0xcb,0x3b,0x2f,0x27,0xd6,0xf7,0x97,0x7c,0x9f,0xfe,0xf7,0x9d,0xb9,0xe9, + 0x18,0x8d,0x94,0xdb,0x5f,0xe5,0xf5,0xd6,0xe7,0x6c,0x76,0xe7,0xf6,0xae,0x5e,0x4f,0xa6,0x3c,0x94,0x8a, + 0x58,0x9d,0xbf,0xf7,0xff,0x9b,0xd5,0x1b,0x2f,0x97,0xfe,0x51,0x4f,0xae,0x8d,0xe7,0x6d,0xfd,0xed,0x7a, + 0x8d,0x97,0x4b,0x4f,0x3d,0x32,0x89,0x5f,0x1f,0xb6,0xfe,0xf6,0xb6,0x2e,0x4f,0x66,0xa7,0xe2,0x92,0x25, + 0xff,0xcf,0xf0,0xfb,0xf1,0x7b,0x25,0xad,0xf6,0x53,0xb7,0x29,0x74,0xf9,0xe4,0xea,0x76,0xd8,0xf4,0x72, + 0x56,0xfd,0x2d,0xda,0x93,0xd1,0x49,0x75,0xce,0xff,0xdf,0xf1,0x47,0x25,0xaf,0xb2,0xed,0x7e,0xe7,0xa6, + 0x4a,0xef,0xf3,0xf7,0xdf,0x65,0xea,0x3e,0xf3,0x36,0xda,0xe3,0xb9,0xef,0x94,0x49,0xeb,0x73,0xbe,0x26, + 0xf5,0xf6,0x56,0xef,0x36,0xfb,0x7f,0xcf,0x4b,0xa2,0x8f,0x2a,0xac,0xbd,0x47,0x73,0xb5,0xfa,0xcf,0xb6, + 0xfb,0xfe,0x4f,0x45,0x75,0xd7,0x24,0xfe,0x8d,0x3f,0xdf,0xb4,0xfb,0x7b,0xfe,0xcb,0x1f,0xd1,0xe4,0xf5, + 0x99,0xdd,0x7f,0xce,0xdf,0x5f,0x6f,0xbf,0xdf,0xff,0x58,0x92,0x56,0x5f,0x95,0xf2,0xdc,0xef,0xb6,0xfb, + 0x6a,0x77,0xdc,0xe3,0xfa,0xc4,0xf2,0x79,0xf9,0xfc,0xb6,0xfc,0xea,0x76,0x26,0xe3,0x4f,0xff,0x1c,0xbf, + 0x3f,0x3c,0x7f,0x38,0xfd,0xfe,0x3b,0x2a,0xa7,0x57,0x1f,0xb1,0xd9,0x2b,0x8a,0x2b,0x23,0xf7,0x77,0xfd, + 0x8d,0x4a,0x7d,0x11,0xfb,0xab,0xd2,0xb4,0xe5,0x09,0xf5,0x6f,0xab,0xfb,0x9f,0xba,0x8b,0x7e,0x54,0xe4, + 0xd2,0x6e,0x34,0xe3,0xf9,0x8b,0x73,0xf3,0xc4,0xf3,0x71,0xbf,0xef,0x79,0xa5,0xe8,0xbe,0xdd,0x53,0xf1, + 0xfc,0xf3,0x89,0xff,0xff,0xff,0xff,0xff,0xbe,0xfb,0xfe,0xfc,0x47,0x5d,0xf6,0x3b,0xec,0x79,0xfc,0x9e, + 0x89,0xfc,0xf2,0x77,0xd8,0xef,0xb7,0x66,0x1f,0xef,0xfa,0xec,0x71,0xdf,0xfe,0x49,0x3c,0xf2,0x79,0xff, + 0xfd,0xf7,0xfb,0xb3,0xbf,0xdb,0xef,0x7e,0xfb,0xef,0xf9,0x3c,0xf2,0x49,0xe7,0x9f,0xff,0xff,0xfd,0xdf, + 0xc7,0xfd,0xf6,0xdb,0x6f,0xf7,0xdf,0x9f,0xcf,0x24,0x9e,0x79,0xe7,0xff,0xfe,0x2f,0xe3,0xbf,0xfb,0x6d, + 0xf7,0xd4,0xfe,0x71,0xf8,0xf5,0xff,0xeb,0x72,0x4e,0xfb,0xf3,0xff,0xff,0x73,0xfe,0xff,0x73,0x77,0x3f, + 0x13,0x8f,0x47,0xff,0xce,0x3e,0xee,0x7e,0xfc,0x9e,0x7e,0xf8,0xff,0x3f,0xdf,0xef,0xcf,0xe4,0x92,0xbf, + 0xfc,0xef,0xfe,0x3b,0xda,0xbe,0xc6,0xff,0xff,0xff,0xf2,0x4a,0xe7,0x13,0xf9,0xc4,0xff,0xf7,0xc7,0x6f, + 0xfe,0xbb,0xfe,0x7e,0xfd,0x63,0xfa,0xfb,0xff,0xff,0x3f,0x2d,0xbe,0xf8,0xfd,0xb9,0x3c,0xfe,0x4e,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xb7,0xff,0xff,0xff,0x24,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe4,0xfe,0x4f,0x3f,0xfd, + 0xb6,0xb8,0xfb,0xfa,0xd9,0x15,0xff,0xdd,0x7e,0x4f,0xb8,0xef,0xbd,0xff,0xf3,0xf9,0x8e,0xc7,0xb1,0xc4, + 0xf3,0x8d,0xce,0xad,0x4d,0xe4,0x9d,0x8d,0xc7,0xa7,0xa9,0xa6,0xa5,0x54,0x2b,0x19,0x91,0xe7,0xd5,0x3f, + 0x2b,0x5f,0xd4,0x24,0xfd,0xae,0x44,0x9b,0xe1,0xe5,0x67,0xf9,0xdf,0x6a,0x67,0xac,0xe3,0x71,0xcb,0xe7, + 0xbe,0xc7,0x9a,0x6f,0x31,0x53,0xe7,0xcb,0xf3,0xcb,0x24,0xff,0x61,0xdc,0xd2,0x57,0x39,0xed,0xba,0xfb, + 0x77,0x79,0x4b,0x1b,0xb2,0xe4,0x9d,0x3f,0xe6,0x9b,0xf7,0x59,0xff,0xca,0x39,0x75,0xbf,0xda,0x9b,0x6d, + 0x3d,0x77,0xd1,0x27,0x1e,0xf9,0xdb,0x7d,0x4d,0x5b,0xf2,0x7e,0x47,0xfc,0x6f,0xa7,0x77,0x99,0x27,0x1c, + 0x69,0xd7,0xef,0x8f,0x3c,0xfd,0xbf,0x2a,0xfa,0x71,0x59,0xef,0x4e,0xf8,0xda,0xbb,0x72,0x6d,0x6f,0xa7, + 0x15,0xcf,0x4f,0x9f,0xfe,0xc6,0xee,0x97,0xe4,0xae,0xbd,0xdf,0xfc,0x71,0xab,0x23,0xd6,0x5c,0xdd,0x71, + 0xa6,0x3c,0x7f,0xeb,0x9f,0xdf,0xfd,0x1e,0x4f,0xd1,0x5d,0xe9,0xeb,0x22,0x89,0x26,0xfa,0x6f,0x27,0x75, + 0x95,0x7b,0xf6,0xbf,0xdf,0x1c,0x7f,0xfb,0x62,0x4d,0x3b,0xf2,0xaf,0xef,0x13,0x6e,0x53,0x5d,0xf9,0x2b, + 0xad,0xbf,0xeb,0xcf,0x5d,0x7b,0xaa,0xb2,0xa4,0x94,0x6a,0xf9,0x7d,0xee,0x5b,0x9b,0xdf,0x64,0xfc,0xb7, + 0xbf,0xed,0xb1,0x5f,0x64,0x91,0xee,0x6e,0x4e,0xdc,0xea,0x8e,0x3f,0x7f,0xd1,0xa5,0xde,0x7a,0x24,0x93, + 0x19,0xaa,0xff,0xbe,0xa5,0xde,0x75,0xb6,0x9b,0xfd,0xdf,0xff,0xca,0x25,0x73,0xc9,0xc7,0x72,0xde,0x67, + 0x19,0x6c,0xb7,0x6f,0xf7,0xe4,0x93,0xd1,0x48,0x92,0x79,0xef,0x97,0x5b,0xbe,0xcb,0x2d,0xdb,0x7d,0xc9, + 0x49,0x24,0x49,0xe4,0xe6,0x6b,0xf4,0xfb,0xed,0xd7,0x7b,0x8f,0xeb,0x94,0x4f,0x27,0xfc,0x77,0x7c,0xba, + 0x55,0xda,0x6b,0x75,0xdf,0xf2,0x4a,0x25,0x1e,0x7f,0xff,0x23,0x57,0xab,0x4f,0xaf,0xd7,0xfa,0x7f,0x44, + 0xbe,0x4f,0x3f,0xff,0xf3,0xf9,0xec,0x6f,0xd3,0x7d,0xbe,0xe7,0xf4,0x4a,0xe5,0x7e,0x77,0xdb,0x3d,0x9e, + 0xc6,0x73,0x37,0xbf,0xff,0xc9,0x44,0xae,0x4f,0xff,0xfd,0xba,0xd5,0xec,0xae,0x33,0x7b,0xf7,0xfd,0x72, + 0x8a,0x3d,0x63,0xf1,0xdb,0xad,0x96,0xca,0x63,0x36,0xbb,0x1d,0xd7,0x48,0xa2,0x7a,0x3e,0xfd,0xf2,0xd5, + 0xdc,0xad,0x36,0xeb,0xf1,0xf9,0x12,0x97,0x5d,0x7f,0xf6,0x37,0xad,0x5e,0xdf,0x6d,0x75,0xc6,0x13,0xca, + 0x28,0xa3,0xcf,0xe7,0x5f,0xbf,0x54,0xad,0x8e,0xba,0xf9,0xbe,0xe7,0x94,0x51,0x47,0x13,0xf7,0xdb,0x72, + 0x69,0x5f,0x1d,0xae,0xd3,0xef,0x57,0x25,0x12,0x8f,0xe7,0xfd,0xbd,0x3d,0x5e,0xf7,0x3b,0x5d,0xe6,0x3b, + 0x72,0x49,0x47,0xae,0x71,0xf7,0xfd,0xbb,0xd5,0x2d,0xbf,0xd7,0x79,0xce,0xdd,0x12,0x57,0x24,0xfd,0xfe, + 0xfb,0xd2,0xf5,0x4b,0x7d,0xed,0xfe,0x63,0xf7,0x44,0x94,0x79,0x3f,0x7f,0xb7,0xfb,0x25,0x7b,0xdf,0x73, + 0x37,0xd7,0xf3,0xba,0x5c,0xae,0x79,0xf4,0xef,0xb7,0xf8,0xbd,0x91,0xfb,0x7d,0x3e,0xdb,0x2d,0xcb,0xe4, + 0x93,0xf9,0xdb,0x1d,0xb1,0xdf,0xb3,0x1f,0xfe,0xef,0x3e,0xdf,0x77,0x89,0x5c,0xf7,0xbf,0xc6,0xff,0xb7, + 0xeb,0x66,0x6a,0xff,0x5f,0xe6,0xf8,0xde,0xba,0x25,0x62,0xbe,0xfb,0xec,0x76,0xf9,0x7c,0x96,0xe7,0x99, + 0xbe,0xbb,0x1d,0x8a,0x3c,0xa3,0xcf,0x3b,0x7f,0xb6,0xff,0xe3,0xff,0x6e,0x9f,0xfd,0xa6,0xdf,0x8e,0xe5, + 0x1e,0x51,0xfc,0xff,0x4e,0xf7,0xf3,0x4f,0xe6,0xb7,0xbe,0x27,0x4f,0xb6,0xcb,0x6e,0x52,0xc8,0x9e,0x79, + 0xbf,0x7f,0xb1,0xdf,0xf3,0xf1,0x6a,0xef,0xcd,0xbb,0x5d,0x96,0xfd,0x23,0xd2,0xe7,0x1f,0xb7,0xfb,0x63, + 0xfe,0xe7,0xfe,0x9f,0xdf,0x9b,0x3f,0xba,0xf3,0xba,0xef,0x17,0xc9,0xc7,0xdf,0xf7,0xbf,0xff,0xf9,0xdf, + 0x9e,0xce,0xf8,0x99,0xbc,0xf7,0x1d,0xf9,0x44,0xae,0x8e,0x5f,0x7d,0xfd,0xff,0x1d,0xcf,0xff,0x9e,0xd5, + 0xf8,0xfb,0x7d,0xf6,0xaf,0x8f,0x67,0x95,0xd5,0x3f,0x7d,0xbf,0xa7,0xff,0xf9,0xe7,0x73,0xda,0xdb,0xf3, + 0x36,0xba,0xe3,0xf1,0xe9,0xe4,0x49,0xf9,0x6f,0x7e,0xfb,0xff,0xff,0x38,0xff,0xfe,0x6b,0xfd,0xcc,0xbb, + 0x6b,0x4f,0xff,0xa4,0x4a,0x2b,0x73,0xfd,0xff,0x6f,0x8f,0xc7,0xf3,0xb9,0xc7,0x76,0xbe,0xfd,0x4b,0xee, + 0xb4,0xfd,0xc9,0x79,0x22,0xbe,0x5f,0x6d,0xf6,0xdb,0x9d,0xf9,0xff,0xf3,0x8e,0x4c,0xef,0x95,0x9e,0xeb, + 0x6a,0xdf,0x96,0x7a,0x25,0x6e,0x7e,0xdb,0x7b,0xb9,0xdf,0x9f,0xff,0xe7,0x7d,0xdb,0xdf,0xf3,0x36,0xd7, + 0x43,0xf1,0xe5,0xf2,0x89,0x38,0xff,0xaf,0xfa,0xfc,0x7f,0xe7,0xff,0xce,0xfb,0xe6,0x8d,0x3c,0xf9,0xbd, + 0xb7,0x1d,0xff,0x4b,0xa2,0x96,0xe7,0xfd,0xbf,0xdf,0x7e,0x71,0xff,0xff,0xff,0xbf,0x36,0x77,0xeb,0x4f, + 0xb6,0x98,0xfd,0xfa,0x44,0x94,0xb1,0xff,0xfa,0x77,0xf4,0xfe,0x77,0x3f,0xfc,0x7e,0xf8,0xb7,0x4e,0x5e, + 0xdd,0x7e,0x9f,0xff,0xca,0x28,0xf7,0xf9,0xdc,0xdf,0xb1,0xb8,0xfe,0x71,0x3c,0xee,0x77,0xfb,0x26,0xb6, + 0xe7,0xcb,0xae,0xb7,0xf3,0xf2,0x48,0x94,0x49,0xdf,0xfd,0xbe,0x37,0xff,0xce,0x38,0xff,0x8e,0xfb,0xf2, + 0xd6,0x39,0xeb,0x6e,0xf2,0x9c,0x77,0x49,0x22,0x51,0xe7,0x73,0x3e,0xc6,0xff,0x89,0xfc,0x9f,0x8e,0xdf, + 0xed,0xdb,0xdf,0x95,0x6d,0xbe,0xca,0x71,0xa5,0xf4,0x7a,0x27,0xf3,0xef,0xdb,0xea,0x7f,0xff,0x9f,0xff, + 0xfb,0xfd,0xf3,0x7f,0x1e,0xbc,0xde,0xe9,0xbf,0xdb,0xa4,0x7a,0x4b,0xf5,0xfe,0xdf,0xed,0xb1,0xdf,0x9c, + 0x7f,0x3f,0x7f,0xf6,0xcd,0xfd,0xd7,0x98,0xeb,0x61,0xf7,0xf4,0xb9,0x48,0x93,0xd6,0xf8,0xed,0x79,0xdf, + 0xff,0xf9,0xe7,0x63,0xf7,0xd9,0xbd,0xc9,0x3a,0x7f,0x66,0xa6,0x7f,0xc9,0xe9,0xf2,0x4a,0xdc,0xd3,0xa9, + 0xbf,0x63,0x8e,0x27,0xff,0xfe,0xff,0xe6,0xe1,0x27,0x5c,0xa6,0xdb,0xea,0x4e,0x59,0x9e,0x49,0xe6,0xad, + 0xb7,0xde,0x9f,0x8e,0xeb,0x7e,0x77,0xfb,0xfc,0x99,0xab,0x9b,0x17,0x97,0x6f,0x3a,0xf9,0x14,0x7b,0x3f, + 0x9f,0xef,0xfb,0x6f,0xfe,0xeb,0x65,0x8e,0xff,0xec,0x73,0x51,0x2b,0xef,0x32,0x1d,0x7d,0x5e,0xa7,0xf9, + 0x2b,0xf2,0x6f,0xfb,0xdc,0xaf,0xe7,0xfe,0x4e,0xe7,0x7d,0xbd,0x2f,0xf5,0xce,0xc7,0x4d,0xad,0xdb,0xec, + 0x49,0x28,0xae,0x89,0xff,0xfd,0xf7,0xbf,0xfd,0xcf,0xe4,0x93,0xfa,0xd9,0xaa,0x57,0x5b,0x7b,0x76,0xb7, + 0x6d,0x4e,0xff,0x92,0x49,0x27,0xaf,0xf9,0xff,0xef,0xf7,0x3b,0x73,0xf9,0xe7,0xa7,0x89,0x3f,0xff,0x77, + 0xba,0xdf,0x7d,0x3b,0x1f,0xcf,0x24,0xf5,0xc9,0xe7,0x9f,0xce,0x3b,0xf3,0xbf,0xc7,0x76,0xaa,0xff,0xff, + 0xf6,0xde,0xfa,0x75,0xfc,0xec,0xbf,0x3d,0x6f,0xd6,0xdf,0x6f,0xf9,0xb8,0xfd,0xff,0x70,0xaf,0xf9,0x8b, + 0xe5,0x7a,0xdd,0x6f,0x79,0xa7,0xfb,0xbe,0xcf,0xea,0x49,0x4f,0x6f,0xe2,0x5a,0xe5,0xc9,0xca,0xea,0xcd, + 0x3a,0x9f,0xd1,0x85,0x5f,0xfa,0x33,0x95,0x33,0xc6,0x9d,0x4a,0x39,0x6d,0x3b,0xdf,0xfb,0x9f,0xe7,0xfb, + 0xcf,0x34,0xdc,0xf9,0x5b,0x58,0xb7,0x78,0xff,0xcc,0x3b,0x3c,0x7f,0x33,0x9c,0x7a,0xc7,0xf5,0x37,0x3f, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0, +}; +static constexpr VoiceClip advertQueuedClip = { + advertQueuedData, sizeof(advertQueuedData), 7062, 8000, VoiceCodec::G72624 +}; +// "Advert failed" +static const uint8_t advertFailedData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x8d,0x37,0xfe,0xfb,0x34, + 0x51,0x3e,0xef,0xb1,0xe7,0x7f,0x7d,0xed,0xff,0xb4,0x9f,0xef,0xc9,0xdf,0xff,0x92,0x27,0xbd,0xf7,0xfb, + 0x9e,0x77,0xf7,0xd6,0xf1,0xda,0x5d,0xf7,0xe8,0xe3,0xfe,0xc8,0xa4,0x5f,0xff,0x7d,0x96,0xe7,0x1b,0xb3, + 0x7b,0xfd,0x66,0xfb,0xe7,0xf1,0xe7,0xd5,0xcf,0x2f,0x7f,0x8d,0xc7,0x7f,0xcd,0xdd,0xbd,0xff,0x93,0xfd, + 0xf9,0x38,0xf3,0xb2,0xe4,0xa7,0xf9,0xfe,0xff,0xbe,0x26,0x7c,0xdf,0xff,0xe9,0x7e,0xd8,0xac,0x49,0xf8, + 0xae,0x4b,0x3c,0x9d,0xb1,0xd7,0xe3,0xa9,0xed,0xff,0xf5,0x9b,0x6d,0xd7,0x28,0x9e,0x56,0xfd,0x1e,0x4f, + 0xd8,0xeb,0xbe,0xfb,0xfe,0xdf,0x38,0xc9,0xac,0xdc,0xe2,0x91,0xe9,0x63,0xd6,0xe8,0xef,0xd5,0xdb,0xdc, + 0x77,0xcd,0xf4,0x7c,0xbe,0x6b,0xbd,0x27,0x92,0x97,0x44,0xfc,0xf7,0xf8,0xde,0x76,0xc7,0x62,0x5f,0x2f, + 0x19,0xec,0xd7,0x5c,0x79,0x2c,0x94,0x49,0xcf,0x7f,0xf6,0xc6,0xfd,0xfe,0x3d,0xaa,0xf9,0xdb,0x4b,0xad, + 0xbf,0x75,0xd1,0x49,0x1e,0x8e,0x3f,0x7f,0xf6,0xf8,0xde,0x6b,0x39,0x73,0xbe,0x9e,0x7b,0x77,0xc7,0xac, + 0x91,0x5c,0x9e,0x7f,0xd8,0xfd,0xf1,0xc7,0xf2,0xf9,0x27,0x7f,0x6d,0x9e,0xed,0xb1,0xfc,0x92,0x89,0x27, + 0x9e,0x69,0xdf,0x7d,0xff,0xe5,0x32,0x51,0x3c,0xed,0x6d,0xb3,0x6d,0x7f,0xc7,0x92,0x51,0x24,0x9e,0x7f, + 0xfb,0xfd,0xbf,0xe7,0x95,0xdf,0x2e,0xff,0xbd,0xda,0xef,0xb7,0xfc,0x92,0x49,0x4b,0xf2,0x4e,0xdf,0xed, + 0xab,0xc7,0x93,0xf2,0xfb,0xed,0xb6,0xdb,0x7f,0xbf,0x3c,0x95,0x91,0x3c,0xf3,0xfe,0xff,0x6c,0x56,0xe5, + 0x1c,0x79,0xbb,0xdb,0xed,0xfb,0x1d,0xb9,0x5c,0x9e,0x89,0xfb,0x95,0xb7,0xd8,0xec,0xce,0xcb,0x9f,0xce, + 0xf8,0xdb,0xf5,0xff,0xed,0xcf,0x3c,0xf2,0x49,0xfc,0xf3,0xf9,0xf4,0xfe,0xdd,0x3f,0xe3,0xbe,0xdb,0xed, + 0xf6,0x3f,0x13,0x8f,0x3f,0x9f,0xcf,0xff,0xff,0xff,0xfc,0xd6,0xcd,0xc7,0xe3,0x76,0xf7,0xab,0xbf,0xfc, + 0xee,0xaa,0xfc,0xe5,0xba,0xab,0xe5,0xbf,0xc4,0xd6,0xdc,0xbe,0xca,0x77,0xdb,0x73,0x8e,0x2b,0x1e,0x4f, + 0x3d,0x7c,0xb2,0xc7,0x7f,0xce,0xfa,0xe6,0xde,0xfb,0x5f,0xfd,0xdf,0x9f,0xb9,0xe7,0x93,0xd6,0x5c,0x9e, + 0x7f,0x27,0xff,0xff,0xff,0xd6,0xf9,0xfa,0xdc,0x65,0xd7,0xeb,0xf9,0xdc,0xf2,0x79,0x24,0xf3,0xcf,0xfc, + 0xe3,0xf7,0x3e,0xb7,0xf2,0xff,0x43,0xad,0xda,0xef,0xf6,0xa4,0xfe,0xb1,0x24,0xf3,0xcf,0x3f,0x9f,0xf9, + 0xdc,0xb7,0x57,0xf6,0x9f,0x36,0xbb,0xdf,0xe9,0xab,0x1f,0xcf,0x3c,0xfe,0x79,0xc7,0x9f,0xff,0xc9,0xba, + 0x4f,0xb0,0xf9,0xb7,0xd4,0xed,0xf1,0xff,0x9e,0x79,0x3c,0xf2,0x7f,0x3f,0x9c,0x4d,0x6f,0x12,0xac,0xe6, + 0xdd,0xae,0xa7,0x6d,0xf1,0xdd,0x6f,0xd6,0x5f,0x9e,0x7f,0x3c,0xfc,0xda,0x88,0xeb,0x56,0xbe,0xfd,0x79, + 0xbf,0xef,0xba,0xa7,0x1e,0x71,0xf9,0x63,0xff,0xe9,0xa8,0xff,0x9b,0x9b,0xfe,0xdb,0x9a,0x76,0x3b,0xff, + 0xf9,0xbd,0x63,0xba,0xc7,0xfe,0x99,0x88,0xf9,0x49,0xbf,0x1f,0x7e,0xff,0x2d,0xbe,0x5f,0x7c,0x71,0xfc, + 0xff,0xfe,0x6e,0xe7,0xec,0x27,0xfb,0xfd,0xf9,0x7d,0x4e,0xe6,0x9c,0x71,0x38,0xfe,0x7e,0x29,0xe8,0xff, + 0x95,0x9b,0xaf,0x37,0x9f,0xaf,0xd4,0xfe,0xb1,0xdd,0x64,0x4a,0xe5,0x3f,0x3f,0x32,0xa5,0x2d,0xc7,0x63, + 0xfd,0xdd,0x12,0x4a,0x3d,0x74,0x7f,0x3e,0xb7,0x66,0xf6,0x63,0xee,0x9f,0xfe,0x79,0xe7,0xa2,0x8f,0x3c, + 0x9c,0x7e,0xf8,0xb7,0xac,0xf6,0x4b,0x7f,0xdb,0xf2,0xb9,0x48,0x92,0x49,0xff,0xfe,0x76,0xf9,0xb7,0x2e, + 0xd2,0xdd,0xbf,0xf9,0x15,0xc9,0x48,0x9e,0x79,0xfb,0xef,0xbd,0x4d,0xf9,0x3f,0x96,0xee,0x7f,0xe5,0x93, + 0xc9,0x5f,0xf3,0xff,0xdb,0xfd,0x8b,0x7e,0x55,0xa5,0xbf,0xff,0xc9,0x7c,0xf2,0xbf,0xfb,0x9d,0xf7,0xff, + 0xd6,0xcd,0xbc,0xe9,0x3f,0xf8,0xf2,0x91,0xc5,0x1d,0xf7,0x3e,0x9d,0xff,0xd9,0xbf,0x31,0xf2,0x6d,0xff, + 0xe5,0x25,0x89,0x5b,0xd3,0xfe,0xdf,0xff,0xf3,0x7e,0x75,0xa5,0x87,0x6e,0x4a,0x4b,0xf4,0x76,0xff,0xef, + 0xbf,0xff,0x26,0xad,0x26,0xc8,0x6f,0xc7,0xb2,0x96,0x44,0xdf,0x8e,0xdf,0xe3,0xf7,0x68,0xda,0xbc,0x94, + 0xdf,0xfa,0x45,0x1e,0x56,0xa7,0x1d,0xbf,0xff,0xe6,0x8d,0xa7,0xc9,0x4e,0xc7,0xa4,0x89,0x3c,0xfb,0xff, + 0xf7,0x9f,0x8e,0x68,0xcf,0xfd,0x97,0x9b,0xca,0x48,0xf2,0x79,0xb8,0xfd,0xbf,0x3b,0x96,0xb5,0xe6,0xc9, + 0xf7,0xa5,0x14,0xba,0xe4,0xdf,0x8e,0xf4,0xff,0x8a,0x66,0x73,0xe4,0xbf,0xde,0x52,0x25,0x75,0xfe,0xc7, + 0x7b,0xcf,0xdd,0xa3,0x71,0x32,0x53,0x7d,0x48,0x94,0x49,0xff,0xee,0x6e,0x3b,0xfc,0xd1,0xb9,0x79,0x37, + 0xdb,0x24,0x4a,0x24,0xff,0xbf,0xfb,0x1f,0xf7,0x6b,0x6c,0xb4,0x9f,0xea,0x4b,0xe5,0x13,0xcd,0x3b,0xfd, + 0x89,0xbf,0xb5,0xe1,0x5a,0x4e,0x6e,0xe9,0x1e,0x89,0xff,0x7f,0xf6,0xe7,0xee,0x5a,0x9d,0xdb,0x37,0xf0, + 0x92,0xb9,0x47,0xfd,0xff,0xdb,0x9f,0x49,0x4b,0x52,0xa4,0xdf,0x6a,0x91,0xe8,0xaf,0xff,0xc7,0x52,0x69, + 0xdd,0xaf,0xb2,0xd2,0x7f,0x77,0x4b,0xa2,0x8f,0xff,0xfd,0xbf,0xfb,0xf4,0x8e,0xcb,0xcb,0xbe,0xb9,0xf3, + 0xdf,0x27,0xff,0xf7,0xa7,0xec,0xb2,0x7b,0x13,0x6c,0xe6,0x64,0x49,0x45,0x65,0xbf,0xf7,0xff,0xbf,0x3d, + 0x9b,0x91,0x90,0xeb,0x7a,0xfd,0x22,0x49,0xc7,0xed,0xff,0xa4,0xe4,0xf5,0x46,0xca,0x65,0xcb,0x12,0x8a, + 0x27,0xf5,0x7f,0xfb,0x73,0xbb,0x57,0xaf,0x21,0xb3,0x7f,0xca,0x29,0x12,0x56,0xc7,0xed,0x8e,0xc5,0x9d, + 0x9e,0x97,0x5b,0x71,0xfd,0x24,0x89,0x47,0x73,0xef,0xdf,0x6e,0xcd,0xef,0x4b,0xb4,0xbc,0xee,0x52,0x5d, + 0x23,0x8f,0x37,0x7f,0x7e,0x6a,0xf4,0xac,0xc6,0x4f,0xf6,0x29,0x12,0x91,0xfc,0xfd,0xbf,0xd4,0xf4,0x77, + 0x7e,0xd3,0xa5,0xfa,0xe5,0xc9,0x29,0x75,0xc9,0xa7,0xed,0xff,0xe8,0xd4,0xb5,0xfa,0x6b,0xb5,0xff,0x92, + 0xca,0x25,0x13,0x8e,0xfb,0xec,0xbd,0x47,0xde,0x6c,0xfb,0x5c,0x77,0xeb,0xa2,0x51,0xeb,0x9d,0xce,0xc5, + 0x5c,0xfe,0xff,0xdb,0xf4,0xdf,0x7d,0xce,0x5c,0x9e,0x57,0x3f,0xad,0xd1,0xa4,0xad,0x8f,0xb4,0xcd,0xb7, + 0xbb,0xe3,0x89,0xe4,0x93,0xcf,0x58,0x93,0x8f,0x57,0x9d,0xaf,0xd6,0xef,0x7d,0x3b,0x93,0xd7,0x4b,0x92, + 0x4f,0x4a,0x92,0x7e,0xff,0x5f,0x75,0xbf,0x6d,0xf7,0x3c,0x9e,0x97,0x24,0x9f,0xd9,0xdd,0x7f,0xe9,0xdb, + 0x6b,0xf7,0xdb,0xfe,0x7f,0x24,0x95,0xcf,0x27,0x92,0xef,0x38,0xed,0xf6,0xfb,0xef,0xb9,0xc7,0xf2,0x79, + 0x3c,0xf3,0xff,0xf8,0xbf,0x7f,0x3b,0x1c,0x67,0x3b,0xef,0xf1,0xd9,0x2b,0x4a,0x47,0x65,0xff,0x7e,0xfa, + 0x4f,0x4a,0x4f,0x5b,0xd7,0x2f,0xfa,0xb7,0x17,0x4f,0xf8,0x9b,0xe3,0xfe,0x9f,0xf9,0xab,0x62,0x55,0xa5, + 0xd2,0x6e,0xf4,0xf3,0xf1,0x8b,0xe5,0xb3,0xfc,0xf3,0x71,0xd8,0xdf,0xfd,0x30,0xe2,0xf7,0x3d,0x42,0x7a, + 0xdf,0xfa,0x79,0x35,0x6e,0x76,0xdc,0xfb,0xef,0xeb,0xfe,0x75,0x2f,0xff,0xf7,0x24,0x9b,0xf7,0xfc,0xe8, + 0x76,0x35,0x6c,0x4e,0x37,0xaa,0xbf,0xfc,0xea,0xb1,0xdf,0x9d,0xff,0x58,0xac,0xbf,0xf7,0x6f,0xf7,0xa5, + 0xe8,0x71,0xdc,0x9d,0xb2,0xff,0x93,0xff,0x3c,0xff,0xf7,0x3f,0xd3,0xb7,0xc7,0x7c,0x5a,0x9b,0x7b,0x89, + 0xd6,0x92,0x7a,0x27,0xf4,0x7f,0xe7,0x6f,0xbe,0xfb,0xef,0xf9,0xc5,0xa9,0xbf,0xb8,0xab,0xaf,0x5c,0xa3, + 0xce,0xdd,0x9c,0xaa,0xb0,0x93,0xe7,0x26,0x72,0x7e,0xfb,0xe4,0x49,0xfa,0x75,0xfe,0xfb,0x77,0x7f,0xff, + 0x3f,0x96,0x46,0x9f,0xcd,0x3e,0x7e,0x8d,0x24,0xfc,0xbd,0xdd,0x7d,0x09,0xa7,0x93,0xf1,0x2b,0x12,0xaf, + 0xcb,0x5e,0x75,0x54,0xcc,0xcd,0xe6,0x9c,0x8f,0xd8,0xa3,0xd1,0xfa,0xa3,0x4e,0xfc,0xe3,0x77,0xcb,0x6f, + 0xfe,0xa4,0xf2,0xf5,0xe9,0x67,0x51,0xb9,0x7d,0x89,0x3a,0xb9,0x8e,0x38,0x9b,0xca,0x3b,0xe2,0xb5,0xfc, + 0x9c,0x4f,0xd9,0x9d,0xf6,0x3b,0xaf,0x4a,0xbb,0x72,0x7f,0xe6,0xad,0x7f,0xc8,0xe5,0x4f,0xc4,0x9d,0x11, + 0xbf,0x1b,0x31,0xf5,0x64,0x71,0x4b,0x6f,0xa9,0xfc,0xdd,0xb7,0xe9,0x52,0x71,0xef,0xde,0xf9,0x5e,0xe9, + 0xbf,0xb8,0xe9,0xca,0x9c,0xa3,0x8f,0xf9,0xf3,0xfe,0xa5,0x7f,0xbd,0xe7,0x93,0xbf,0xe6,0xf5,0xb7,0xe8, + 0x93,0xdd,0x2b,0xaa,0x4e,0xe4,0x9b,0x8d,0xdf,0x95,0x6f,0xff,0x3f,0xfe,0x67,0x7b,0xd2,0xca,0xfd,0x4f, + 0x3e,0xee,0x74,0x5c,0xd3,0xbe,0x5c,0xff,0xf9,0xc4,0xe3,0x91,0xf8,0xef,0xaf,0xaf,0x6f,0xb9,0xcb,0x17, + 0xce,0x27,0xfc,0x71,0xf8,0xd3,0x77,0xe7,0xff,0xfa,0xe4,0xff,0x6a,0xdf,0xee,0x7e,0xf0,0xcd,0xca,0xfb, + 0x95,0x3a,0x5b,0x1d,0xb3,0xe7,0x7d,0x3a,0x3f,0x7b,0xc9,0x34,0xec,0x52,0x35,0x15,0xb9,0xb3,0x3d,0x76, + 0x3d,0x17,0xb1,0x3e,0x9e,0xf7,0xff,0x15,0x95,0x3e,0xf2,0x6c,0x46,0xfc,0x6c,0xe8,0xe7,0xcf,0xc7,0x9d, + 0xf2,0x33,0xfd,0x8a,0x3b,0x19,0xb9,0x4e,0xdd,0xd5,0x7b,0xfb,0xcf,0xd8,0x93,0xf3,0xd8,0xf2,0xa7,0x3b, + 0xc6,0xaa,0xec,0xe2,0x77,0x87,0xce,0x49,0xa4,0xfe,0x57,0x9f,0xfd,0x8a,0x9b,0xe5,0x93,0xe8,0x9f,0xa9, + 0xb6,0x67,0x71,0xbf,0x67,0x8a,0xbc,0x95,0x9a,0xf7,0x79,0xb7,0xff,0x94,0xb9,0x4a,0xdb,0xb4,0x2b,0xd7, + 0xfc,0xcf,0x44,0x8e,0xeb,0x52,0x5f,0xc7,0x5d,0x96,0xab,0x6c,0x96,0xcc,0xe6,0x7d,0xc6,0xdf,0xb6,0x2c, + 0xf5,0xad,0xbd,0x5f,0xcf,0xc4,0x93,0x89,0xdb,0x72,0x7a,0x5c,0x9f,0xf5,0xd5,0xb2,0x97,0xf2,0xd9,0x74, + 0xfb,0xa3,0xd7,0x24,0xa3,0xc9,0x47,0x9d,0xdb,0xe8,0xc9,0x25,0x9b,0xee,0x8a,0x29,0x1e,0x49,0xe8,0xff, + 0xf7,0xd9,0xaa,0xbc,0xb2,0xd9,0xce,0x49,0x12,0x56,0xe7,0xf3,0xcf,0xff,0xdd,0xda,0xa8,0xcd,0x66,0x84, + 0xe4,0x8a,0xe4,0xd2,0x71,0xfd,0x6e,0x6f,0xd9,0x3e,0x55,0xb3,0x4b,0x8f,0x29,0x1e,0x7f,0xc7,0xfe,0xbf, + 0xff,0x6d,0xf3,0x79,0x7b,0x6d,0xd7,0x9c,0xc9,0x38,0xfa,0x7f,0x27,0x9c,0x75,0xfb,0x37,0xf9,0xd3,0x5b, + 0x79,0x25,0x13,0x8e,0xdf,0x9e,0x4f,0xff,0x6d,0x8e,0x6f,0x2d,0x75,0xf6,0x93,0xdf,0x38,0x9d,0x8e,0x5c, + 0xfd,0xcd,0xfb,0x94,0xff,0x56,0xdb,0xaf,0x59,0x2f,0xff,0xf4,0xf2,0xb9,0xf9,0x5b,0xff,0x2d,0xe5,0xad, + 0xdb,0x55,0xca,0x3f,0x73,0x79,0xe4,0x9f,0xbf,0xbf,0xfc,0x9b,0xab,0x5b,0xed,0xcb,0x15,0xfe,0x3f,0x75, + 0xfa,0xdf,0xef,0xb9,0xfc,0xb7,0x56,0x9f,0x5b,0xd5,0x47,0xff,0xcd,0x5f,0xae,0x7d,0x57,0xfc,0x7f,0x67, + 0x2b,0x2e,0xb0,0x9c,0x89,0xdc,0xec,0xb9,0x24,0xee,0x6f,0x3f,0x9e,0xde,0x26,0x5b,0x6d,0x3f,0x3f,0x8f, + 0xff,0xae,0x57,0x3b,0xec,0x7e,0x3c,0xb5,0x5d,0x96,0xdb,0xfe,0x47,0xfc,0x77,0x5c,0x95,0xff,0xf4,0xff, + 0x96,0x2d,0x57,0x66,0xd3,0x63,0x51,0xdf,0xff,0x9e,0x2b,0x9d,0xfd,0x3f,0x1e,0x73,0x74,0xa9,0x6d,0xb8, + 0xde,0x8f,0xfb,0xe4,0x72,0x24,0xff,0x79,0xdb,0xf3,0xdb,0xc9,0x4b,0xa5,0xa6,0xf5,0xf9,0xdf,0x13,0x91, + 0x24,0xfd,0xfe,0xff,0xf2,0x59,0xcf,0x4f,0x66,0xdf,0x23,0x89,0xdf,0x9c,0x51,0xe7,0xff,0xf6,0x3f,0xfe, + 0x9a,0xcf,0x5d,0x6d,0xda,0xa3,0xff,0x38,0xfc,0x89,0x3c,0xff,0xef,0xff,0xe3,0xdb,0xc8,0xcf,0xad,0xdb, + 0x75,0x89,0xff,0xf3,0x91,0xe8,0xff,0xfe,0xc7,0x73,0xf3,0x79,0x19,0xf5,0xba,0xe2,0xb7,0x27,0xff,0x8a, + 0x3c,0x93,0xcd,0xff,0xfd,0xcf,0xcd,0xd7,0xee,0xf3,0x5f,0x4a,0xdd,0x7e,0x77,0xe5,0x64,0x79,0xfb,0xe3, + 0xb9,0xdc,0xf6,0x7b,0xb7,0xcb,0x37,0xab,0xe7,0xff,0xc7,0x15,0x91,0x27,0x7d,0x8e,0xc7,0xff,0xfb,0x79, + 0x19,0xac,0xb7,0xee,0xbf,0x27,0xd3,0xf9,0x5c,0xaf,0xfe,0x3b,0xff,0xff,0xf4,0xd6,0xf9,0x36,0xdb,0x29, + 0xdd,0x73,0x8f,0xbc,0xf4,0x51,0xe7,0xef,0xff,0xe7,0xf3,0x7e,0xf5,0xbe,0x4d,0xb6,0xd9,0xfe,0x3c,0xed, + 0xf6,0x5c,0x94,0x7f,0xfb,0xf3,0xf9,0xff,0xef,0x79,0xad,0xf3,0xf5,0x9e,0xde,0x6a,0xc7,0x53,0xb1,0x28, + 0xf5,0xf9,0xdf,0x93,0xf9,0xfb,0xef,0xbf,0x4d,0xe5,0xad,0xba,0xc3,0xbe,0xda,0xd5,0x8f,0x48,0xe3,0x8f, + 0x3f,0x93,0xf7,0xfb,0x7f,0xff,0xed,0xfd,0xf5,0x97,0xdc,0xb7,0xbc,0xdc,0x4a,0xe8,0xe3,0xf9,0xc4,0xf3, + 0xff,0xa7,0xef,0xf9,0xa7,0x36,0x77,0xba,0x53,0x79,0xea,0xdf,0x8e,0x4b,0x95,0xcd,0xe4,0xfe,0x4f,0xfb, + 0x7c,0x7f,0xff,0xfd,0x9b,0x5a,0xed,0x2f,0xff,0x15,0x6e,0xe7,0x74,0x8f,0xe7,0x7e,0x4f,0xe7,0xfb,0xff, + 0xf8,0xff,0xb7,0xdd,0xb5,0xa7,0xd7,0x62,0x69,0xfe,0xde,0x49,0x29,0x7d,0xcf,0xe4,0x93,0xf1,0xdb,0xff, + 0xf1,0xdf,0x6f,0x9b,0x5e,0x6f,0xad,0xe8,0xeb,0x8d,0xd8,0xbe,0x49,0x3b,0x1e,0xb9,0xe7,0xed,0xff,0xff, + 0xff,0xb7,0xdf,0x96,0xce,0x9f,0x5d,0x09,0xfa,0xef,0x7e,0x64,0xfc,0xb1,0xa4,0xbf,0xf1,0xdf,0x62,0x4e, + 0xfb,0xfd,0xf9,0xe9,0xbf,0x66,0xfe,0xd2,0x56,0x9b,0xf3,0x89,0x7f,0xfc,0x56,0x5d,0x1f,0xf7,0xfc,0xe3, + 0xff,0xdf,0xe3,0x8e,0x4d,0xfd,0x3e,0xfe,0xe2,0x7d,0xb7,0x93,0xc9,0x27,0xee,0x49,0xe7,0xf3,0xbe,0x3c, + 0xff,0xf7,0xdf,0x73,0x95,0x6d,0xff,0x76,0x3b,0xef,0xce,0x97,0x14,0x8f,0xe7,0xff,0xfa,0x24,0xed,0xff, + 0xfc,0xe3,0xf6,0xdf,0x1f,0xfe,0xcd,0xbf,0xb6,0xdb,0xfd,0xb9,0xba,0xee,0x51,0x3f,0x9f,0xcf,0x24,0x9f, + 0xf7,0x3d,0x6f,0xf7,0xbf,0x53,0xff,0xd9,0xb6,0x6e,0xdb,0x7f,0xbf,0xdf,0x4d,0xca,0x5c,0xff,0xf9,0xe4, + 0x93,0xff,0xdf,0x9c,0x7e,0xff,0x6f,0x8e,0x3f,0x36,0xff,0xd6,0xff,0xff,0xdf,0xed,0xa9,0x28,0x93,0xb9, + 0xe7,0x93,0xcf,0xfb,0xee,0x7e,0xfb,0x63,0xbf,0xff,0x9c,0xdb,0x3a,0xeb,0xff,0xc7,0x6f,0xb5,0xc4,0xa2, + 0xbf,0xeb,0x93,0xf9,0x38,0xfd,0xf1,0xf8,0xef,0xbf,0xfb,0xff,0x9a,0x67,0x79,0x7e,0xf8,0xed,0xbf,0xdf, + 0x72,0x51,0x3b,0x9e,0x79,0x3f,0xff,0xfe,0xff,0x1f,0x8d,0xf7,0xfe,0x71,0x4d,0xaf,0x75,0xd8,0xe3,0xb7, + 0xdb,0xfd,0xf9,0x45,0x63,0x8f,0x24,0xff,0xfe,0x3f,0x7d,0xff,0xf8,0xd3,0xbf,0x3c,0xb6,0xbd,0xd7,0x6e, + 0x7e,0xfb,0x1f,0xbf,0xc4,0xa2,0xbf,0xfc,0xf2,0x7f,0xff,0x9d,0xf7,0xdf,0xff,0xb7,0xbf,0x16,0xdf,0xfe, + 0xeb,0xf7,0xdf,0xee,0x71,0xdf,0x14,0x51,0xfc,0xfe,0x79,0xdf,0xff,0xce,0xfb,0xe3,0xf7,0xdf,0x7e,0xdb, + 0x3f,0xeb,0xae,0xfa,0xff,0xff,0x5b,0xfe,0x8a,0x28,0xf2,0x4f,0xe6,0x9f,0x8e,0xfb,0xef,0xf1,0xdf,0x1f, + 0x8b,0x6d,0x6b,0x3c,0xde,0xed,0xb9,0xe4,0xe3,0xd1,0x47,0xac,0x8f,0x5f,0xd3,0xb9,0xbe,0xfd,0x95,0x3b, + 0xee,0x71,0x4d,0xaf,0x6d,0xda,0xed,0x69,0xeb,0x9c,0x49,0x44,0xf3,0xca,0xeb,0xef,0xff,0xff,0x7a,0x77, + 0xfb,0xef,0x96,0xc9,0xb3,0xf7,0xdb,0x6b,0x36,0xdc,0xfc,0xb1,0x25,0x7f,0xcf,0x27,0xfe,0x77,0x3f,0xef, + 0xff,0xdf,0xef,0x8e,0xc6,0xb7,0xfe,0xe7,0x7b,0xee,0xdf,0x1a,0x7f,0x3c,0xfe,0x4f,0xe7,0x9f,0xcf,0xff, + 0xfc,0x7d,0x3b,0xef,0xfd,0x3f,0x74,0xdf,0xf8,0xec,0x6e,0xde,0xfd,0xbf,0xff,0xf3,0xcf,0x3c,0x93,0xf9, + 0x3f,0xff,0xff,0xdf,0xec,0x76,0xc6,0x9f,0x9b,0xa7,0x9d,0xff,0xdf,0xef,0xb7,0xff,0xe3,0xff,0xe7,0xf3, + 0xc9,0xc7,0xf3,0x96,0xfb,0xff,0xff,0xdf,0x73,0xb3,0x7b,0x1f,0xf7,0xff,0xef,0xbe,0xe6,0x2d,0x89,0x3b, + 0x2e,0xb7,0x3f,0x75,0x7e,0xc7,0xfc,0xaf,0x3f,0xee,0x57,0xca,0xab,0x8f,0x38,0xec,0x56,0xe7,0x7b,0x5e, + 0xff,0x15,0xf7,0x87,0x13,0xbf,0x9f,0x94,0x7e,0x34,0xae,0xa7,0xfb,0x12,0x76,0xf3,0x72,0x56,0xb9,0x1c, + 0x4e,0x85,0x2d,0xf4,0xeb,0x9d,0x7f,0xe9,0x73,0x4f,0xbd,0x1b,0x09,0xdb,0x1b,0x72,0x64,0xff,0x77,0xe5, + 0xdd,0xce,0xac,0xff,0x9e,0xdf,0xe3,0x0e,0xdc,0xa3,0x57,0xf7,0xbe,0x7f,0xd7,0x62,0xf5,0x3b,0xe6,0xb5, + 0x2b,0x13,0x6c,0xbf,0xae,0xb1,0x5d,0x5e,0x4a,0x7a,0xd3,0xea,0xc8,0xdb,0x96,0xc9,0x3d,0x8d,0xfb,0x9c, + 0xf6,0xdf,0x17,0xcd,0xa5,0x1e,0x4a,0x97,0x15,0xaf,0x4a,0x7e,0xfe,0xfb,0xd2,0x51,0xff,0x69,0xcf,0x58, + 0x95,0x8d,0x3f,0x1f,0xff,0x33,0x6e,0xb2,0xeb,0x6f,0xde,0x2b,0xfb,0x7b,0xfc,0xa2,0x7f,0xe7,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xfe, +}; +static constexpr VoiceClip advertFailedClip = { + advertFailedData, sizeof(advertFailedData), 7429, 8000, VoiceCodec::G72624 +}; +// "Sound on" +static const uint8_t soundOnData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x89,0xb9,0xfa,0xb9,0x15, + 0x7e,0x9c,0xaf,0xbd,0xbf,0x94,0xaf,0x7b,0x72,0x7a,0xd8,0xc5,0xcf,0x87,0x6f,0xdf,0xfe,0xf8,0x4e,0x39, + 0x7a,0x71,0x35,0x6d,0x8b,0xf8,0xe5,0x79,0xb6,0x1f,0x7e,0x25,0x12,0xf9,0x3c,0xdd,0x3f,0xd8,0x9f,0x8c, + 0xdf,0x15,0xaf,0x5e,0xb3,0xbe,0x5b,0x6f,0xe6,0xd4,0xa3,0xc9,0xb3,0x93,0xff,0x9c,0x92,0x7e,0xbf,0x17, + 0xb7,0xfb,0xf5,0xcf,0x49,0x6f,0xa5,0x3c,0xbb,0xaa,0xf9,0x63,0xee,0xcb,0x57,0x96,0xea,0x73,0xfd,0x7f, + 0xac,0x7f,0xf5,0x7f,0xba,0xa7,0xcf,0xf9,0x3a,0x93,0xb3,0xf8,0xf3,0x37,0xe7,0xfd,0xff,0xfc,0xf3,0xff, + 0xfb,0x6d,0xef,0x89,0x6d,0xb7,0xe7,0xad,0x73,0x3d,0xff,0xf6,0xab,0xec,0x4e,0xfe,0xff,0xc9,0xdb,0x9f, + 0x9f,0xff,0xfe,0xb5,0xeb,0x52,0x96,0x3b,0x66,0x7f,0x3a,0xd4,0x4e,0x37,0x13,0xd6,0x37,0xf3,0xf7,0xff, + 0x15,0xf7,0xc7,0xf2,0xb7,0x7f,0x7e,0x8a,0xf9,0x44,0x49,0x9f,0x4d,0xde,0xff,0x2b,0xff,0x7f,0x6e,0xa7, + 0xe7,0xed,0x71,0x47,0x7f,0x61,0x3f,0xef,0x0f,0x3b,0x2f,0xf4,0xe5,0xe3,0x4e,0xd8,0x95,0x7d,0x7b,0x12, + 0x77,0xd7,0xf7,0xf2,0xdb,0x97,0xf1,0xcb,0x1f,0xae,0x57,0x6d,0xc9,0xe7,0x6e,0x76,0xe5,0x1f,0xbe,0xc4, + 0xf3,0xbd,0xff,0x93,0x0f,0xf9,0x3d,0x7a,0xdd,0xeb,0xe9,0xc8,0xd5,0xb7,0x2a,0xa7,0x56,0x67,0x7f,0x95, + 0x5b,0x52,0x95,0x39,0x6e,0x75,0xa8,0x9d,0xb5,0x5b,0x72,0xb6,0xe5,0x42,0x57,0xde,0xe2,0xbf,0x26,0xc2, + 0x8f,0xfe,0x14,0x8f,0xf6,0x7f,0xd1,0x96,0xba,0xbe,0x36,0xee,0x61,0xe5,0x55,0xa9,0xe7,0x13,0xde,0xbd, + 0x7c,0xfc,0xf7,0xe4,0x7f,0x84,0xe3,0xaa,0x27,0x93,0x71,0xdf,0x13,0xae,0x25,0xb9,0xab,0xc8,0xe3,0xae, + 0xea,0xf4,0x5d,0x5e,0x9e,0x7f,0x77,0xee,0xca,0xda,0xd4,0x4a,0xbe,0x7f,0xd7,0x86,0x9c,0xdd,0x85,0x62, + 0xed,0xd7,0x64,0x6e,0x3f,0xa3,0x36,0xbf,0xed,0x8d,0xef,0x9e,0x54,0xfa,0xfb,0xbc,0xd5,0xea,0xb2,0xe9, + 0x7f,0xb6,0xe4,0x9e,0x7e,0xbe,0xfb,0xa7,0x7b,0x79,0xf1,0x35,0xfd,0x8b,0x25,0x49,0x51,0x5b,0x5f,0xd9, + 0x4b,0x1b,0x8f,0x52,0x2d,0x69,0x33,0x62,0x6b,0xe4,0x95,0x4a,0xe7,0x9b,0x2e,0xd5,0x1e,0x57,0xf4,0xdc, + 0xbf,0xdc,0xdb,0x37,0xcd,0x17,0xd7,0xe7,0xab,0x16,0xb7,0x79,0xb1,0x3d,0x94,0xb9,0xa4,0xe3,0x89,0xe6, + 0xff,0x8d,0xd6,0xdb,0xad,0x3f,0x66,0x4a,0x48,0x95,0xbe,0xc6,0xcb,0xef,0x5b,0x92,0xda,0x3f,0x49,0xad, + 0xc7,0xef,0xfe,0xe7,0xf2,0x89,0x3f,0x9f,0xff,0xc9,0xad,0xf5,0x9b,0xed,0xcf,0xe7,0xff,0xd2,0x29,0x9e, + 0x7f,0xdf,0xeb,0xdb,0xff,0xd9,0xbe,0xdf,0x93,0x8f,0xdc,0x92,0x59,0x3f,0xfd,0xbf,0xd9,0xb3,0xbf,0xb3, + 0x7b,0xf9,0x3f,0x9f,0x89,0xe5,0x13,0xf9,0xd4,0xd3,0xbb,0x7f,0xfd,0x37,0xbb,0x93,0xf1,0x3b,0x93,0xca, + 0x3f,0xf3,0x7f,0xff,0x37,0xf1,0xda,0x63,0x7f,0x26,0x9f,0xf7,0x5c,0x92,0x77,0x3b,0xe5,0xbf,0x6f,0x7f, + 0xac,0xfe,0x9c,0xbd,0x3f,0xfe,0x89,0x3c,0xd3,0xff,0xc4,0xe2,0xd5,0xdb,0x4a,0x76,0xe4,0xed,0xcf,0xc9, + 0x73,0xcf,0xdf,0x9d,0xd6,0xfd,0xbb,0xf6,0x94,0xed,0xfa,0xd4,0xe3,0x92,0x27,0x9f,0xb9,0xff,0x9f,0xbb, + 0x77,0x5d,0x2f,0x3b,0xf5,0xb6,0x3c,0x94,0xbe,0x3f,0x7e,0x4e,0x3f,0x76,0xf6,0x9e,0x5f,0xce,0xeb,0x6a, + 0x4f,0x45,0x7d,0xff,0xfd,0x7f,0xff,0xed,0xed,0x34,0xbf,0x9f,0x56,0xd7,0xae,0x8a,0x37,0x9c,0x79,0x5b, + 0xfc,0x5b,0xd6,0x69,0x77,0x5b,0x7d,0x61,0x24,0xf4,0x77,0xcb,0x94,0x7f,0xa7,0xb7,0xb4,0xfa,0xee,0x7d, + 0x37,0xea,0x89,0x3d,0x6f,0xfa,0xfc,0xf3,0xb1,0x6e,0xe8,0x6d,0xbc,0x9b,0xf7,0xd8,0xa2,0x79,0x3b,0xf2, + 0x79,0xcb,0x6e,0xde,0xb3,0xeb,0x72,0xfb,0x6f,0xb7,0x28,0xe3,0xce,0xe4,0x9f,0xce,0xfd,0xbf,0x67,0xba, + 0xd4,0x76,0xdb,0xef,0xdf,0x3c,0xff,0xf9,0x3f,0xff,0xfb,0x7b,0xcf,0xbc,0xc4,0xfb,0x4e,0xff,0x22,0x7f, + 0x3c,0xe2,0x4f,0xf8,0xe6,0xf6,0x9e,0xfb,0x49,0xde,0x7f,0xff,0x44,0xff,0xcf,0x3c,0x93,0xbf,0x4d,0x5b, + 0x7d,0xd3,0xaf,0xed,0xff,0xfe,0x89,0xf8,0xf3,0xc9,0x27,0x7e,0xdf,0xd3,0xed,0x76,0x5f,0x5d,0xf9,0xc8, + 0x93,0xbf,0x27,0x9e,0x7e,0x2d,0xfb,0x6f,0xfa,0x1e,0x7d,0xbc,0xfe,0x7a,0x38,0xfe,0x4f,0x27,0xfe,0xdf, + 0xd3,0x53,0x6f,0xe7,0xdd,0x4f,0x27,0xae,0x7f,0xfc,0x9e,0xb7,0x4d,0x6d,0x36,0x37,0x63,0xfd,0xdb,0x92, + 0x49,0xe7,0xff,0xc9,0x27,0xf6,0xff,0x9b,0x6d,0xb7,0xe6,0xed,0x8f,0x5c,0x9f,0xcf,0xe4,0xf5,0xf2,0x67, + 0xdb,0x7e,0xbf,0x73,0xb6,0xdc,0x93,0xc9,0xc7,0xfe,0x49,0x55,0xbf,0xf5,0xdf,0xdd,0xf9,0xdb,0x53,0xc9, + 0x3f,0x9f,0xce,0x24,0x9e,0xde,0xf3,0xe3,0xb7,0xdc,0xeb,0xb1,0xe8,0xfe,0x79,0xc7,0xf5,0xc9,0x6a,0xd9, + 0xf7,0xdb,0x1f,0xef,0xd8,0x93,0xf9,0xfc,0xff,0xc9,0x29,0xff,0x31,0xa6,0xef,0xff,0xd7,0x73,0xd7,0xe7, + 0xf3,0xff,0x5d,0x35,0x4c,0xc7,0xfb,0xff,0x37,0x5c,0x49,0x3c,0xe3,0xff,0xe4,0x94,0xce,0x9b,0xfd,0xf6, + 0x3f,0x6b,0xbf,0x27,0xf3,0x8f,0xff,0xa2,0x5a,0xda,0x7f,0xf6,0xff,0xfd,0xaf,0xfc,0xf3,0xcf,0xfc,0xfe, + 0x93,0x5f,0x5f,0xbd,0xdf,0x9d,0xb6,0xdf,0xf3,0xcf,0x3f,0xf2,0x4a,0x6f,0xea,0x7e,0xd4,0xff,0xaf,0xdf, + 0x1c,0x4f,0x38,0xfe,0x79,0x2d,0x6b,0x4e,0xf3,0xf3,0xee,0xdb,0xfd,0x91,0xfc,0xf2,0x71,0x2d,0xef,0x8f, + 0xb6,0x9d,0xf5,0xff,0x6d,0x97,0xfc,0xf5,0x8f,0xed,0xfc,0x7f,0xd6,0xff,0xb6,0xff,0xea,0xb1,0xdc,0xf3, + 0xff,0x25,0xbc,0x7f,0xf6,0xef,0xae,0xdf,0x7a,0x4e,0x3f,0x95,0xba,0xfd,0x35,0x79,0xda,0xef,0xb5,0xdf, + 0xed,0xcf,0xfc,0xf5,0xf9,0x3c,0xb5,0xe9,0xfe,0xdf,0xb6,0xbb,0xfd,0xf1,0x38,0xf5,0xcf,0x27,0xb5,0xb1, + 0xfb,0x6a,0xa7,0xbf,0x63,0x4f,0x3f,0x92,0x7f,0x24,0xa5,0x4e,0xfb,0x5f,0xf6,0xdf,0xfd,0xc9,0xf8,0xaf, + 0xcf,0x27,0xb5,0xb6,0x3b,0x5c,0x6f,0xbf,0xfd,0x89,0xe7,0x2e,0x4f,0x27,0xa5,0xb6,0x3b,0x5c,0x6f,0xbf, + 0xef,0x89,0xff,0xae,0x79,0x3c,0xa5,0xef,0xde,0xed,0xfd,0xc7,0xfd,0xc9,0xc4,0x95,0x97,0x3f,0xa7,0xb1, + 0xdb,0xda,0x7d,0xdc,0xd3,0x57,0x27,0x95,0x89,0x3c,0xe4,0xb7,0xde,0xdb,0xbe,0xdf,0xfd,0xf9,0x38,0xa3, + 0xfa,0xe7,0x92,0xbe,0xff,0x5d,0xbd,0xdf,0x7c,0x71,0xfc,0x93,0xc9,0x3c,0xf2,0x9e,0xff,0x5f,0xb6,0xbf, + 0x7d,0xf9,0xff,0xaf,0xc9,0x3f,0x9e,0x5f,0xff,0xdd,0xbe,0xdb,0x7d,0xf9,0xc7,0x15,0xf9,0xfc,0xf2,0x49, + 0x38,0xfb,0xb7,0xd7,0xed,0xff,0xff,0x92,0x7f,0x5c,0xf3,0xcb,0x3b,0xfd,0xb7,0xd7,0x7d,0xf7,0xf8,0xf2, + 0x79,0xc4,0x9e,0x7a,0xff,0xff,0xbe,0xdb,0xdf,0xbe,0xdf,0xfe,0x79,0x24,0x92,0xbb,0x78,0xd3,0xfe,0xfa, + 0x9d,0xf7,0xd9,0x55,0x89,0xcb,0xf2,0x7b,0x7b,0x1f,0xf1,0xda,0xfa,0x72,0xbc,0xff,0xcf,0x2a,0xbc,0x7d, + 0x6e,0xfc,0x69,0x3b,0x1f,0xb1,0x34,0xc4,0x7e,0x8f,0x73,0x8f,0xe6,0xaf,0x49,0xf3,0x75,0x09,0xf4,0x9b, + 0xab,0x54,0x9b,0x89,0x35,0x7d,0xd1,0xd9,0x79,0x96,0xdc,0xfc,0x4e,0x86,0x9f,0x9e,0xea,0x7d,0xca,0x5f, + 0xe5,0xb2,0xcf,0x6f,0xb5,0xab,0xac,0x54,0xfb,0xfa,0xcd,0x25,0xfd,0xf7,0xfa,0xde,0x97,0x29,0x6c,0x8e, + 0xb7,0xf9,0xd7,0xc8,0xfd,0x4a,0xe4,0x95,0x96,0x92,0xd3,0xbb,0x29,0x14,0x7f,0x9f,0xdd,0x4e,0x9b,0xfe, + 0x7b,0x5c,0xa2,0x6e,0xd7,0x6c,0xbf,0x3c,0xfd,0xee,0xf8,0xf4,0x79,0x7c,0xfd,0xb4,0xd7,0x7d,0xd7,0x24, + 0xf4,0x7f,0x38,0xfb,0xfe,0xfb,0x1d,0xf1,0xff,0x72,0xbf,0x48,0x92,0x7d,0x6c,0xed,0x8c,0xbe,0x9d,0xc9, + 0xe7,0x1f,0xf1,0xe7,0x92,0x7f,0xff,0x56,0xff,0xf4,0xd9,0x7e,0xf9,0x12,0x77,0x57,0x9e,0x89,0x2b,0x1d, + 0xbe,0xcd,0xd3,0x0e,0x97,0x73,0xb9,0x47,0x65,0xb9,0xcc,0x9e,0x4f,0xdb,0xe2,0x5b,0xde,0xfb,0x2f,0xff, + 0x72,0xbe,0xc4,0xe2,0x52,0xe4,0xff,0xb7,0xfd,0xbc,0x67,0xd2,0xea,0xb7,0x27,0xfa,0x79,0x3d,0x23,0xff, + 0xff,0x7e,0x7b,0x7b,0x5b,0xe5,0xbd,0x7a,0xb2,0xd4,0x92,0xb9,0x5c,0xdf,0xff,0xdd,0x66,0xf5,0x94,0xcb, + 0xf3,0xf8,0xef,0xf7,0x49,0x12,0x7f,0xd8,0xff,0xce,0x3d,0xb9,0x67,0xf3,0x7e,0xbe,0xc7,0xfc,0x4b,0xe7, + 0x9e,0x6f,0x3f,0x9d,0xfb,0x7b,0x48,0x74,0xf9,0x1f,0xb7,0x34,0xf4,0x97,0xff,0xfd,0xcf,0x3f,0xee,0xdf, + 0xd2,0xfb,0x77,0x2b,0xed,0xff,0xe4,0xbe,0x4e,0xe7,0x73,0xcf,0xfb,0x16,0xfd,0x86,0xed,0x7a,0xe6,0xef, + 0x8f,0x28,0x9f,0xff,0xfc,0x93,0xfe,0xf5,0x37,0xee,0xf7,0x6b,0xcf,0xfb,0x6e,0x79,0x5d,0x1c,0xb7,0xe8, + 0x9f,0xf7,0xbd,0xb3,0xa7,0xf7,0xed,0xcf,0xdb,0x6e,0x49,0xe4,0xf3,0x8e,0x2b,0x9f,0xb7,0xf9,0xb3,0xa7, + 0xfb,0x6c,0x72,0xbe,0xe2,0x49,0x38,0x9f,0xff,0x3d,0x7f,0xbe,0x39,0x37,0xb5,0x37,0xfb,0xf9,0xfb,0x5e, + 0x49,0x27,0xf5,0xbf,0xe4,0x9f,0xf6,0xff,0xa6,0xfd,0xbf,0x6f,0x7f,0xff,0x6b,0xfa,0x24,0xfe,0x79,0xfd, + 0x77,0x8e,0xdf,0x1e,0x5b,0xf3,0x6f,0xfe,0xf8,0xfd,0xaf,0xe5,0x73,0x8f,0xeb,0x75,0x97,0xff,0x7c,0x4e, + 0x6f,0xf9,0x77,0xff,0x6c,0x77,0xbb,0xf4,0x8f,0xff,0x93,0xcf,0x27,0x9d,0xbf,0xfc,0xb6,0x7c,0xdb,0xd3, + 0xb6,0xff,0x6d,0xba,0x24,0xff,0xcf,0x27,0xf5,0x8f,0xd8,0xfc,0xb3,0x67,0x6b,0x7f,0xfb,0xef,0x8d,0xdb, + 0x94,0x4f,0xf8,0x9e,0x79,0xe7,0xff,0xbf,0x3f,0x96,0xcd,0xba,0xef,0xee,0xf7,0xfb,0xf7,0x44,0x9f,0xf9, + 0x27,0x93,0xcf,0xff,0x7e,0x7e,0x4d,0xfd,0x76,0xdf,0x6d,0xbf,0xdb,0x72,0x49,0x3b,0x93,0xcf,0x3c,0xf3, + 0xbe,0x3f,0xff,0x8b,0x66,0xc3,0xb7,0xf7,0xff,0xef,0xf4,0xae,0xb9,0xe5,0x72,0x7a,0xeb,0xdf,0x8e,0x5b, + 0x7a,0x9b,0xf6,0xff,0xbd,0xf4,0xff,0xaf,0xc4,0xa3,0x8f,0x24,0x9c,0xb1,0x3f,0xd3,0x8f,0xff,0x6e,0xd9, + 0xd2,0x1c,0x76,0xdb,0x9f,0x6e,0x25,0x93,0xb9,0xe4,0x9c,0x8f,0x5b,0x53,0xb9,0xfb,0x7c,0x9b,0xf3,0x7b, + 0xf7,0xb8,0x9f,0x75,0xc5,0x12,0x79,0x24,0xfe,0x49,0x3f,0x7c,0x71,0xdf,0x7f,0x93,0x76,0xeb,0xbd,0xd7, + 0x9f,0xb6,0xa7,0xa5,0xcf,0x24,0xf3,0xcf,0x5f,0xec,0x71,0xdf,0xef,0xbe,0x6d,0x4d,0xfe,0xff,0x6e,0xb7, + 0xd7,0xf6,0x79,0xff,0x93,0xff,0x24,0xff,0xb7,0xe7,0x7d,0xbf,0xd7,0xb6,0xac,0x3b,0xff,0xe9,0x3b,0xeb, + 0xfa,0x2b,0x7e,0x49,0xc4,0xf2,0xb7,0xdf,0x1f,0xf7,0xdf,0xed,0x93,0x7b,0x5f,0xbe,0xf7,0xaf,0xbd,0xd9, + 0x2e,0x79,0xe4,0xfc,0xb2,0x3f,0xef,0x8f,0xc7,0x7d,0xfd,0xfb,0xb6,0x6c,0xff,0xd3,0xb1,0x26,0xdd,0x8a, + 0x2b,0x13,0xcf,0xfc,0xa3,0xce,0xdf,0xff,0xf7,0xff,0x5f,0x4e,0xed,0x9b,0x4c,0x3b,0x7e,0x7f,0xf3,0x7e, + 0xba,0xe4,0xf3,0x8f,0x28,0x9c,0x77,0xff,0xfc,0x77,0xd7,0xef,0xfa,0x6f,0xd9,0xff,0xa7,0xe2,0x75,0xbb, + 0xa4,0x79,0x27,0x9d,0xd1,0x2b,0xef,0xff,0xdf,0xff,0xf6,0xd4,0xdf,0x93,0x7e,0xfd,0xb6,0xa7,0xaf,0xb5, + 0xdd,0x72,0x4a,0xe7,0xe2,0x49,0x39,0x63,0xbe,0xff,0xfd,0xbe,0xc6,0xff,0xfb,0x66,0xdf,0xb5,0xbc,0x9f, + 0xb5,0xc7,0x1e,0x51,0x3f,0xf2,0x7a,0xcb,0xff,0xf7,0xf8,0xef,0xbe,0xdb,0xef,0xff,0x6d,0xda,0x7d,0xfb, + 0x9e,0x61,0xd8,0xe3,0xd1,0xeb,0x73,0xcf,0x5c,0x9c,0x77,0xf8,0xff,0xbe,0xdf,0x7f,0x8f,0xdd,0xb5,0x37, + 0xfb,0x6e,0x8e,0xbf,0x7d,0xfa,0x24,0x9f,0xce,0x3c,0x9f,0xff,0xfb,0xfd,0xff,0xdf,0x6d,0xf7,0xfc,0xd6, + 0xdf,0x9c,0xed,0xb9,0x3b,0x6f,0xf5,0x25,0x1f,0xd1,0xc7,0x15,0xce,0x5b,0xfd,0xff,0xff,0x7f,0xb7,0xf8, + 0xe3,0xbb,0x6f,0x6c,0x6e,0xdc,0x9f,0x4e,0xf7,0x74,0xf1,0x3c,0xef,0xd1,0xe4,0x9f,0xb7,0xff,0x7f,0xfe, + 0xfb,0xec,0x71,0xf9,0xb7,0xf6,0x36,0xef,0xce,0xc7,0xed,0x51,0x3d,0x2e,0xb7,0x5c,0xe5,0xcf,0xdf,0xfd, + 0x8e,0xff,0x7f,0xf7,0xff,0xef,0xdb,0x7f,0x9d,0x6e,0xd7,0x5d,0xee,0xdc,0xf3,0xd2,0xe4,0xae,0x4f,0x5f, + 0xfc,0x76,0xdf,0x7d,0xbf,0xdf,0xfe,0x7f,0x4d,0xf2,0x7e,0xd7,0x6b,0x6e,0xd7,0x7c,0x71,0xe8,0x92,0x89, + 0x3d,0x7f,0xff,0xdf,0x6f,0xb6,0xf8,0xd3,0xf1,0xfc,0x96,0xb1,0x27,0x1b,0xcd,0xbb,0xdd,0xa9,0xdb,0xf3, + 0xff,0x5c,0x92,0x4f,0x3c,0x9d,0xcf,0xdf,0x7f,0x7e,0xfb,0x7a,0x7b,0x74,0xf3,0xf1,0xc7,0x5f,0xfd,0xfb, + 0xfd,0xf9,0xdc,0xf3,0xcf,0x24,0xfe,0xbe,0x5f,0xef,0xff,0xbb,0xdf,0xb7,0xa5,0xbd,0xc9,0xbf,0xff,0x6e, + 0xfa,0xe3,0xbd,0x24,0xee,0xba,0xe4,0xf5,0x8a,0xdf,0x9c,0x7e,0xff,0x7c,0x76,0xff,0xe4,0xfe,0xe8,0xc3, + 0x8d,0x9f,0xed,0xbe,0x3b,0x95,0xf2,0x44,0xf4,0xb9,0xa8,0xe3,0x8d,0xdf,0x1b,0xf7,0xfb,0x9d,0xd3,0x54, + 0x93,0x3f,0xde,0x6f,0xf6,0xff,0x6e,0x8f,0xe5,0x12,0x51,0xfc,0xad,0xf9,0xc6,0xff,0xb7,0xdf,0xef,0xf1, + 0x6e,0xf2,0x77,0xa7,0x58,0x76,0xbf,0x6f,0xc9,0xff,0xa5,0xc9,0x27,0x93,0xfe,0x3f,0xe3,0xbe,0xdf,0x1b, + 0xfe,0xcd,0xee,0x7f,0x37,0x9b,0x3e,0xd6,0xff,0x7e,0x27,0x74,0x4f,0x44,0x9e,0xb9,0xc4,0xff,0xf1,0xdb, + 0xff,0xb7,0xf9,0xad,0x89,0x3b,0xef,0xa6,0x3a,0xed,0xfe,0x27,0x7e,0x57,0x25,0x65,0xc9,0xfc,0xff,0x8e, + 0x3b,0x1d,0xf7,0xff,0xb5,0xb9,0xfb,0x63,0xe6,0xd7,0x6d,0xfe,0xc7,0xfe,0x49,0xfd,0x73,0xd6,0x5b,0x9e, + 0x71,0xfb,0xe3,0xbf,0xdf,0xa7,0x7f,0xdc,0x9c,0x77,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe, +}; +static constexpr VoiceClip soundOnClip = { + soundOnData, sizeof(soundOnData), 6229, 8000, VoiceCodec::G72624 +}; +// "Sound off" +static const uint8_t soundOffData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x6c,0xf6,0x75,0x99,0x2c, + 0x7f,0xd3,0xf4,0x6e,0xef,0x54,0x4e,0xfa,0xf4,0x8e,0xf3,0x1f,0xca,0xd9,0xed,0xc9,0xeb,0xe5,0x17,0x26, + 0x1d,0x8f,0x5f,0x9b,0xe1,0x54,0xe5,0xe9,0xdc,0xc3,0xb6,0xef,0xe3,0xd6,0xe6,0xd8,0x7d,0xfb,0x95,0xcb, + 0xe4,0xf5,0xbd,0xe7,0x62,0xbe,0x53,0x7d,0xd6,0xb9,0x7a,0xce,0xf9,0x6d,0xbf,0x9b,0x52,0x8f,0xe6,0xce, + 0x8f,0xfe,0x72,0x49,0xfa,0x9e,0x57,0x87,0xff,0xc9,0x3c,0xa5,0xff,0x97,0x92,0xf5,0xa4,0xd7,0x8f,0xdb, + 0x1f,0x56,0x5b,0x29,0xcf,0xd5,0xfe,0xb1,0xfb,0xc3,0xfe,0xe7,0x73,0x3e,0xfd,0x6d,0xd7,0xcc,0xe3,0xd5, + 0xc7,0x9e,0x7f,0xdb,0xf3,0xcf,0xe7,0xed,0xf1,0xbe,0x15,0xb6,0xbf,0x9e,0xb5,0xa8,0xf6,0x79,0xde,0xa3, + 0xf1,0x3f,0xfb,0xff,0xeb,0x6e,0x7d,0x67,0x7d,0xf2,0xd7,0x2f,0x79,0x5b,0xed,0x92,0xfc,0xfb,0x51,0x38, + 0xec,0x57,0x5c,0xdf,0xcf,0xdf,0xfb,0xd7,0xde,0xff,0xca,0xd9,0xfd,0xb9,0x44,0xd5,0x09,0x2a,0x7f,0x3f, + 0x7f,0x9c,0xb7,0x3d,0xfd,0xfb,0xdf,0xaf,0xbd,0xa5,0x1f,0xcd,0x9d,0x7f,0xbc,0x3c,0xfc,0x8e,0xf3,0x97, + 0xce,0x3f,0x72,0x55,0xf9,0xfc,0x4a,0xdf,0xdf,0xd1,0xcb,0x6e,0x57,0xa7,0x2c,0x7e,0xb9,0x6b,0xb7,0xe7, + 0xad,0xb9,0xdb,0xf4,0x4e,0xfb,0x13,0xd6,0xf7,0xfe,0x5c,0xff,0xe2,0xf5,0xeb,0x65,0xe6,0xbe,0xa5,0x56, + 0xdf,0xaa,0x5e,0x39,0x1d,0xfd,0x54,0xfd,0x4a,0x54,0xe5,0xf9,0xfa,0x92,0x7e,0xf5,0x6d,0xca,0x3b,0xf7, + 0x79,0x47,0x1d,0xbb,0x3c,0x9d,0x3a,0x3f,0x9b,0xd2,0x5c,0xe9,0xbf,0x4a,0x58,0xaa,0x38,0xdb,0x71,0xbc, + 0xf7,0x4e,0xa7,0x9f,0xd6,0x7e,0xe4,0x72,0x33,0x5d,0x89,0xde,0x7f,0xbe,0x87,0xff,0xcd,0xbf,0x6d,0xcd, + 0xbb,0x94,0xed,0xab,0x15,0x4e,0xbb,0xad,0x97,0x75,0x18,0x79,0xf9,0xdd,0xb3,0x2b,0xed,0x52,0x2b,0x79, + 0xcf,0x46,0x7d,0xf2,0x76,0xf3,0xbb,0xd3,0x6d,0x91,0xd8,0xfe,0x55,0xba,0xf3,0xbe,0x3b,0x32,0x4f,0x77, + 0xfb,0xf6,0x37,0xe6,0x62,0xe8,0x95,0xfe,0xdb,0x92,0x79,0xfa,0xfb,0xf6,0xb9,0xfd,0xef,0xc5,0x44,0x6e, + 0xed,0x15,0x25,0x45,0x7d,0x77,0x64,0xac,0x75,0xfd,0x58,0xb5,0xc5,0x4d,0xca,0xaf,0x95,0xd5,0xeb,0x9e, + 0x6c,0xbb,0xd4,0x79,0x47,0xd3,0xaa,0xff,0x73,0x6c,0xbf,0x34,0x5f,0x47,0x2e,0xb4,0x3a,0xda,0x65,0xc4, + 0xf6,0x8b,0xe6,0x73,0x8f,0x2b,0x2b,0xfe,0x36,0xd9,0x6e,0xb7,0xef,0xd2,0x29,0x33,0xd7,0xff,0x7d,0x2f, + 0xd9,0x7e,0x4b,0x68,0xfd,0x26,0xd7,0x7f,0xff,0xfb,0x9f,0xc9,0x24,0xf3,0xff,0x3b,0x96,0xff,0xd6,0x6f, + 0xb7,0x3f,0xf3,0xfe,0x45,0x24,0x4f,0x3f,0x53,0x76,0x6c,0xef,0xa6,0xdb,0x72,0x7f,0x3f,0xfe,0xb9,0x7c, + 0xf3,0xbe,0xdf,0xd4,0xd6,0xfe,0x5d,0xee,0xe4,0xfe,0x7e,0x24,0xf6,0x79,0xff,0xd3,0xbe,0xed,0xfc,0x74, + 0xdb,0x6c,0x4f,0xc4,0xd3,0xc9,0x25,0x63,0x8e,0xdc,0xee,0x5a,0xbf,0x59,0xbd,0xfc,0x9a,0x7f,0xdd,0x1e, + 0xba,0xa7,0xe3,0x89,0xdd,0xbd,0xbe,0xb3,0x1a,0x7a,0xf4,0xff,0xfa,0x3c,0xf3,0xb1,0xc7,0x1f,0xf3,0x7a, + 0xfb,0xa6,0xfb,0xf5,0xef,0xe7,0xf4,0x4f,0x3f,0x7e,0x7e,0x5f,0xd6,0xfe,0xdb,0x4c,0x77,0xeb,0xdf,0x8f, + 0xe9,0x1d,0xce,0xc7,0x9c,0x7f,0xc9,0xa9,0xae,0x94,0xfd,0xca,0xbb,0xf3,0xd2,0x3f,0x9f,0xb9,0x3f,0xf3, + 0x5b,0x3a,0xdd,0x2f,0x3b,0x1f,0xae,0x27,0x94,0x77,0xe7,0x72,0x4f,0xc6,0xb6,0xb5,0x9e,0x5f,0xfe,0x3e, + 0xea,0x4f,0x45,0x7c,0x7f,0x39,0x1d,0xf7,0x4d,0x5b,0x6c,0xb8,0xfd,0xfe,0xbb,0xa3,0xd1,0xff,0x1f,0xc9, + 0xe6,0x9a,0xd9,0xd6,0x99,0x7e,0x5b,0x7d,0xa9,0x24,0xf2,0x77,0xc4,0xf3,0xce,0xf9,0x35,0x6d,0x32,0xee, + 0xb6,0xfb,0xde,0xba,0xe4,0xff,0x89,0xe7,0x9f,0xb2,0x6b,0x4d,0xe5,0xd9,0x7b,0xbe,0xd8,0x95,0xcf,0x3f, + 0x13,0xd6,0x3f,0xe4,0xdd,0xb0,0xcd,0x09,0xfb,0x53,0x7e,0x64,0x9e,0x7f,0xc8,0x95,0x57,0xad,0x9f,0xaf, + 0xb6,0xfe,0x75,0xff,0x7c,0x91,0x3c,0xf3,0x89,0x27,0xe3,0x93,0x5a,0x53,0x3d,0xa8,0xeb,0xbe,0x38,0xa2, + 0x7f,0xe7,0xf2,0x79,0xdf,0x26,0xb4,0xbe,0xe9,0xd1,0xf6,0xfc,0x77,0x45,0x6f,0xf9,0xe4,0x9f,0xfe,0x6f, + 0xe9,0xee,0xd0,0x9f,0xe7,0xc7,0xe5,0xd7,0xff,0x9e,0x79,0x38,0xe2,0xd6,0xb7,0x6f,0x31,0xff,0x5d,0xff, + 0xe4,0x9f,0xce,0x5c,0x92,0x77,0x4d,0xed,0x7e,0xf7,0x73,0xf5,0xdf,0x9e,0xba,0xfc,0xfe,0xb3,0xe7,0xe4, + 0xd7,0xb7,0xdf,0x6f,0x3f,0x6d,0x8f,0xeb,0x93,0xff,0x3c,0xa2,0x79,0x6c,0xdd,0xb7,0xb7,0xe3,0xee,0xd8, + 0xf3,0xc9,0xe7,0xf3,0xca,0xe7,0x26,0xb5,0xa6,0xfb,0xb7,0x3b,0x5d,0xcf,0x5c,0xf2,0x71,0xfd,0x75,0x8b, + 0x5e,0x5f,0x4d,0xbf,0xff,0xae,0xe7,0xaf,0xcf,0x3f,0xfe,0xb9,0x3d,0xbd,0x6f,0xaa,0xed,0xcf,0xbb,0x62, + 0x57,0xe7,0x9f,0xce,0x47,0x96,0xbe,0x97,0xfd,0xa9,0xff,0xdd,0xba,0xe7,0x9c,0x4f,0xff,0xa3,0xd3,0x3a, + 0xcf,0x8e,0xbf,0xff,0xad,0xe4,0x93,0xce,0x5f,0xf3,0xd7,0x6f,0xf9,0x7e,0xfb,0x6e,0x75,0xdb,0x12,0x4f, + 0xfc,0xff,0xcf,0x45,0xaf,0x6d,0x3b,0xd3,0xb9,0xd6,0xfc,0x57,0x3f,0xf3,0xff,0x24,0xa6,0xad,0xbf,0x7f, + 0x7f,0xff,0x5d,0x8f,0x27,0x9e,0x7f,0xe4,0x94,0xde,0xfa,0x9d,0xaf,0x38,0xdd,0x7e,0x3f,0x93,0xcf,0xfc, + 0xf2,0x53,0x57,0xcf,0xf5,0xc7,0x99,0xf6,0xff,0x75,0xcf,0xe7,0x9e,0x7b,0x7f,0x6c,0x75,0xbf,0xff,0x77, + 0xfb,0x62,0x71,0xfc,0x9f,0xf9,0x6f,0xee,0x7d,0xb7,0xfd,0xb6,0x3b,0x6c,0x4e,0x3c,0x9f,0xcf,0x2d,0xe3, + 0xce,0xb7,0x7d,0xb6,0x3b,0x6f,0xf9,0xdc,0x9e,0x4f,0x25,0xaf,0xff,0xf6,0xef,0xb5,0xff,0x7d,0xcf,0xfc, + 0x9e,0x4e,0x47,0xb7,0xf7,0x3e,0xea,0x6e,0xbb,0xed,0xff,0x3f,0x9e,0xb9,0xe4,0xf6,0xbd,0x3b,0xdd,0x4e, + 0xd7,0xff,0xb2,0xcb,0xfe,0xbf,0x3c,0xfe,0xcf,0xd4,0xed,0x77,0xf7,0x7c,0x77,0xe4,0xfe,0x49,0xfc,0x93, + 0x9a,0xdb,0xed,0xae,0x3b,0x6c,0x7f,0xc7,0x9e,0x7a,0xff,0x93,0xf3,0x54,0xdf,0xad,0xff,0xed,0xff,0x38, + 0x93,0xfa,0xe7,0x73,0xfe,0x4f,0x7b,0xf4,0xdf,0xfd,0xb9,0xff,0xf5,0xf9,0x2b,0x1e,0x4e,0xe9,0x7d,0xb6, + 0xb7,0xfd,0xbf,0xfb,0xf2,0x7f,0x28,0xe5,0xc9,0xdd,0xaa,0x76,0xd6,0x7f,0xf6,0x3b,0xe2,0x7f,0x24,0x9e, + 0x49,0xc7,0xa5,0xbf,0xd7,0x5f,0xbd,0xff,0x63,0x8f,0xe4,0x9e,0x4f,0x3f,0x9e,0x8e,0xfa,0xeb,0xf6,0xfb, + 0x1d,0x8f,0x3c,0xf5,0xc9,0xe7,0x9f,0xd3,0xc7,0x6d,0x76,0xf7,0x7f,0x8e,0x3f,0x93,0xc9,0xe4,0xf3,0xff, + 0x47,0xff,0x76,0xdb,0x5d,0xfe,0xfc,0xf3,0xd7,0x2b,0x9e,0x4f,0xc5,0xaf,0xf7,0xb7,0x7d,0x7d,0xfb,0x9f, + 0x8f,0x27,0x93,0xf9,0x38,0xf7,0xb9,0xd8,0xef,0xe5,0xfb,0x1d,0xf6,0x24,0xe5,0xcf,0xeb,0xfe,0x57,0x39, + 0x5d,0xfe,0xd7,0xfb,0xce,0x3b,0xf2,0x79,0xe7,0xf5,0x8e,0x6e,0x13,0xb5,0x3b,0x5f,0x77,0xe6,0xff,0xea, + 0xcb,0xa2,0x79,0x26,0x37,0x7f,0xd8,0xff,0xf2,0x9c,0xff,0x8f,0xc5,0x63,0x89,0xcb,0xd7,0x53,0xd7,0xed, + 0xd1,0xb8,0xde,0x4f,0xcb,0xf2,0x55,0x78,0xe2,0x75,0x51,0xfc,0x6f,0xb9,0x6f,0xf9,0xa5,0x62,0x49,0xe8, + 0xd5,0xff,0xca,0xfd,0x5b,0xde,0xe9,0x3f,0xfc,0x9d,0x97,0x3c,0xac,0x89,0x3d,0x6c,0x7f,0xb9,0xbd,0xb6, + 0x93,0xfd,0x8f,0xfd,0x1f,0xd1,0x3d,0x1f,0xd7,0xff,0xfd,0xbb,0x5b,0xed,0x27,0x9e,0xa3,0x8a,0x47,0xa3, + 0xf9,0x3f,0x9e,0x77,0xfb,0xe6,0xef,0xda,0x4f,0xae,0xcb,0xf4,0x57,0x2b,0x9e,0x4f,0xe7,0xfd,0xfe,0xcd, + 0xed,0xbc,0x9e,0xea,0x49,0x25,0x1e,0x72,0xdc,0x93,0x8f,0xff,0x6d,0x8b,0x5b,0x53,0x26,0xdf,0x74,0x89, + 0x27,0x1e,0x79,0x3c,0xfd,0xf5,0xfb,0xf6,0xee,0xbb,0x4d,0xfa,0xe9,0x73,0xbf,0xe7,0x95,0xff,0xbf,0x53, + 0xba,0xc5,0xad,0x66,0x3b,0x72,0xf9,0xdb,0xfc,0x49,0x3f,0xef,0xef,0x3c,0xff,0xbf,0x6f,0xd9,0x8f,0xf7, + 0xa4,0x75,0xfc,0x9c,0x8f,0x3b,0x6f,0xff,0x38,0xef,0x53,0x5e,0x5f,0xbe,0xc5,0x13,0x77,0xe7,0x92,0x4f, + 0xdb,0x73,0x8f,0xff,0xec,0xdf,0xd7,0x6d,0xf5,0x44,0xfb,0xff,0x58,0x9e,0x77,0xdf,0xf3,0xff,0xc6,0x96, + 0xf6,0xbf,0x6f,0x49,0xea,0xef,0xc9,0xe7,0x9f,0xbe,0xeb,0x13,0x7f,0xd9,0x37,0xb6,0xdf,0x7d,0xc9,0xfb, + 0x7c,0xb9,0x3f,0x9d,0xfe,0x3c,0xfd,0xef,0xc9,0xbf,0xa1,0xd8,0xee,0x7f,0xf7,0xfe,0xba,0xc7,0xef,0xf1, + 0xe7,0xef,0xf7,0x2d,0xef,0x3e,0xfb,0xf3,0x96,0xa7,0x15,0xc9,0xdf,0xff,0xcf,0x3f,0x7d,0xfe,0x6f,0xf9, + 0xb7,0xc7,0x1f,0xfe,0xdf,0xa2,0x4e,0x3f,0x1f,0xcf,0x3f,0x6f,0xff,0x6f,0xf9,0xb6,0xe7,0x7f,0xfd,0xc7, + 0x95,0xce,0xff,0xfe,0x4f,0xfb,0x6f,0xff,0x6c,0xeb,0x77,0xe6,0x9f,0xbe,0xa7,0xa2,0x7f,0xc7,0x1e,0x79, + 0xfb,0x7f,0xff,0x4d,0x7b,0x69,0xdf,0xff,0xf7,0xbf,0x92,0x7f,0xff,0xfe,0xba,0xfb,0xed,0xce,0x29,0xb3, + 0x67,0xff,0x7c,0x76,0xf7,0xf2,0x8e,0x3b,0xfe,0xbf,0x3b,0xed,0xff,0xff,0xb7,0xfc,0xbf,0xff,0x7f,0xde, + 0xe3,0xd1,0xe7,0x7e,0x79,0xe7,0xff,0xbf,0xe7,0x1e,0xd9,0xd6,0x1d,0xce,0xc7,0x7d,0x49,0x48,0xff,0x89, + 0xe8,0xf5,0x4e,0xff,0xf3,0xf1,0x6f,0xd9,0x79,0xfe,0xff,0xb6,0xa8,0xa5,0xbf,0xe4,0xf7,0x89,0xdb,0xff, + 0xcf,0xdc,0xb6,0x6c,0xfb,0x7f,0xb7,0xde,0xe2,0x52,0xdf,0x7e,0x79,0xe7,0x7f,0xbf,0x3f,0xff,0x9b,0x3e, + 0x6d,0xb9,0xdb,0xef,0xe9,0xe5,0x7e,0x69,0xe4,0xfe,0x77,0xff,0xfe,0x77,0xf5,0xb3,0xe6,0xdf,0x2a,0x6e, + 0xf7,0x7e,0x89,0xfb,0xfe,0xb9,0xff,0xfd,0xff,0x3f,0x1b,0xfb,0x67,0xdb,0xb7,0x3f,0x7d,0xb6,0xe4,0xae, + 0x76,0x3c,0x9e,0x7e,0xff,0x1f,0xce,0xfb,0xe4,0xdf,0xd7,0xec,0x77,0xf7,0xeb,0xf9,0x5f,0xff,0xf9,0x27, + 0xf3,0xbf,0xcb,0xff,0x7d,0x3c,0xb6,0xb4,0xff,0x7f,0xbe,0xbf,0x6e,0x4a,0xdf,0xe2,0x4f,0x3c,0xee,0x71, + 0xff,0xef,0xbf,0xff,0xb6,0x74,0xdf,0xe5,0x76,0xde,0xe3,0xd2,0xdf,0xe4,0x49,0xff,0xe3,0xf1,0x38,0xed, + 0xff,0xe7,0x26,0xfd,0x9b,0xff,0xee,0xbb,0x6c,0x8a,0x3b,0x7e,0xf9,0x3f,0xff,0xf1,0x3c,0xed,0xff,0xfc, + 0xee,0xd9,0xd6,0x1b,0xfd,0xfa,0x1b,0xf9,0x2b,0x1d,0xd1,0x2b,0x9d,0xce,0xe4,0xff,0xb7,0xc7,0xff,0xf2, + 0x6f,0xd9,0xb6,0x3a,0xf9,0xf6,0xc4,0xaf,0xf7,0x25,0x2e,0x4f,0xc7,0xf2,0x7f,0xdb,0xff,0xff,0xdf,0x26, + 0xfe,0xbb,0x63,0xaf,0xbe,0xde,0x4a,0xff,0xe5,0x91,0x3c,0xff,0x89,0xcb,0xef,0xbf,0xff,0xe3,0xb7,0x6c, + 0xf9,0xb7,0xc6,0xed,0xae,0xa4,0xa3,0xbe,0x25,0x75,0xfa,0xa7,0xf2,0x77,0xdb,0xff,0xff,0xdf,0xee,0xd9, + 0xd3,0x7d,0xfe,0xd7,0x79,0xcf,0x7f,0x7f,0xd1,0x5c,0x93,0x8f,0x27,0x9d,0xbf,0xff,0xfd,0xfe,0xc7,0x36, + 0x76,0x9f,0x1f,0xb6,0xda,0xee,0x4a,0xf7,0xf5,0xca,0xe4,0xff,0xf9,0x3f,0xef,0xea,0xdf,0xef,0xef,0xc5, + 0xb3,0xa7,0x34,0xfd,0xf7,0xd7,0xfe,0xff,0xd8,0x92,0x4f,0x5f,0xfe,0x4f,0x3f,0x7c,0x7e,0x3b,0xef,0x7e, + 0x2d,0xff,0x3f,0xf8,0xed,0xbe,0xb5,0x75,0xfe,0xc4,0x9e,0xb2,0xfc,0xe2,0x49,0xf4,0xe3,0x8e,0xff,0x7d, + 0xf7,0x4d,0xdb,0x0e,0xe7,0x6d,0x8c,0xdf,0xa3,0xbe,0xc4,0x95,0x9f,0x3f,0x12,0x4a,0xdf,0xe3,0xbf,0xff, + 0xd3,0x7f,0x4d,0xf9,0x76,0xe6,0xe3,0xad,0x9f,0x15,0x8e,0xc7,0x92,0x5f,0x27,0x72,0x51,0x38,0xef,0xff, + 0xff,0xfd,0x7e,0x4d,0xfb,0x36,0xdf,0x63,0x7d,0x9b,0xf7,0xff,0xe7,0xe3,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xe0, +}; +static constexpr VoiceClip soundOffClip = { + soundOffData, sizeof(soundOffData), 5393, 8000, VoiceCodec::G72624 +}; +// "Action failed" +static const uint8_t actionFailedData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x72,0x4b,0x31,0x3c,0xf3, + 0x69,0x24,0xa5,0xb7,0xdf,0x95,0xf5,0x37,0xf2,0x5b,0xd6,0xdb,0x7a,0xc7,0xff,0x3a,0xe4,0xaf,0x7f,0xff, + 0xa3,0x7e,0xfb,0x3e,0x99,0xba,0xeb,0x57,0xc7,0x7b,0x51,0xe4,0x9d,0x79,0xc4,0xaf,0x09,0xa7,0x2f,0xdb, + 0xbb,0x6d,0x57,0xdf,0x7d,0x11,0xe7,0x9f,0x39,0xff,0x9f,0x71,0xdf,0x23,0xdb,0x9e,0xfd,0x89,0xde,0x9d, + 0x51,0x27,0x2d,0x79,0x27,0x3f,0x76,0x3f,0xae,0x5b,0xba,0xed,0x8f,0xda,0x9b,0x51,0x27,0x1f,0x7a,0x59, + 0x7f,0xa6,0x58,0x9c,0xd9,0xba,0xfd,0x8f,0xdb,0x6d,0x52,0x3f,0x9d,0x49,0x5f,0x2d,0xaf,0x5f,0x9c,0x9b, + 0x9e,0x7d,0x89,0xbe,0xfd,0x51,0x3f,0x1f,0x7a,0x3f,0xe3,0x71,0x3f,0xe3,0x9b,0xd6,0x5f,0x3a,0xda,0xef, + 0x7a,0x47,0x73,0xb1,0x67,0xe3,0xbe,0x2b,0xe3,0x93,0x77,0x4b,0xe9,0x57,0xdd,0xe9,0x47,0xef,0xe9,0x25, + 0x5f,0xf7,0xe4,0xef,0xf3,0x7f,0x59,0xe7,0x3f,0x6b,0xef,0x44,0xfc,0x76,0x24,0xfc,0x77,0xfc,0x9a,0x71, + 0x6e,0xf9,0xad,0x27,0x69,0xf5,0x2b,0xaa,0x7e,0x24,0xaa,0x7f,0xfc,0x9c,0x77,0x6c,0xdb,0x6d,0xcb,0xed, + 0x7d,0xe8,0x9f,0x8e,0xfd,0x1f,0xfe,0x38,0xaf,0xfe,0x4d,0xed,0xad,0xa7,0xfb,0x76,0xa4,0x93,0xbf,0xf8, + 0x93,0xbe,0xfb,0xf5,0xf7,0xad,0xfd,0xee,0x9c,0xed,0xef,0xbc,0x95,0xb9,0xdf,0x92,0x69,0xdf,0x72,0x77, + 0xcd,0xfd,0xee,0x99,0x6d,0xb7,0xbc,0xa2,0x72,0xdc,0xf4,0x77,0xff,0x73,0xff,0xad,0xef,0xae,0x99,0x7d, + 0xb7,0xd9,0x15,0xff,0x3b,0x92,0x77,0xc6,0x9e,0x7f,0xcd,0xfb,0xe6,0x99,0x7d,0xb7,0xbc,0xa5,0xf2,0xdf, + 0x92,0x77,0xfb,0xe3,0xff,0xcd,0xcf,0xad,0x85,0x5f,0xb1,0xb9,0x9f,0xf2,0xd9,0x75,0xf7,0x37,0xfe,0x76, + 0x6f,0xdf,0x34,0xcb,0xef,0x4d,0xc5,0xf3,0x8f,0xdc,0xa3,0xb7,0xdb,0x92,0x77,0x6e,0x1b,0x66,0xcb,0x7c, + 0x76,0xcc,0x9e,0x79,0xa5,0x1f,0xfe,0xdf,0x93,0xf3,0x7b,0x79,0xa6,0x26,0xfd,0xee,0x28,0xf3,0xce,0xe5, + 0x63,0xff,0xdc,0xff,0xdb,0xf4,0xdb,0x6a,0x37,0xfd,0xb1,0x47,0x93,0xf7,0x27,0x9c,0x75,0xeb,0x1e,0xdf, + 0xa6,0xdd,0x4a,0x9c,0xdd,0xbb,0xe4,0x9f,0xba,0xe4,0xf3,0xb1,0xff,0xf6,0xfe,0x52,0xda,0x7d,0x3e,0xed, + 0xd7,0x28,0xee,0x79,0xe8,0xfd,0xfe,0xfc,0xb7,0xfa,0xb3,0x5c,0x6f,0x32,0xfd,0xc9,0x67,0x93,0xc9,0x44, + 0xf3,0xb7,0xf9,0xbf,0xd5,0x96,0xed,0x4f,0xb7,0xed,0xca,0x24,0xac,0x49,0x24,0x9f,0xbf,0xc5,0xee,0xed, + 0xd6,0xeb,0x8d,0xdf,0x6c,0x79,0xe8,0xf2,0x4f,0x24,0xf3,0xce,0x4a,0x95,0xaf,0xd7,0x5f,0xae,0x37,0x7f, + 0xbf,0x3f,0x95,0xfb,0xe7,0xae,0x4b,0xfc,0xad,0xff,0xdb,0x6d,0x77,0xbb,0xed,0xf1,0xdf,0xad,0xd7,0x3c, + 0xac,0x9e,0x24,0xe3,0xfe,0xfb,0xeb,0xfd,0xfb,0xef,0xfe,0xe7,0xf3,0xc9,0xe4,0xf4,0xfd,0x7f,0x73,0xf7, + 0xc7,0x63,0xbe,0xe7,0x63,0xfd,0x3f,0xe3,0xf9,0xe4,0xf2,0x7f,0x27,0xfc,0xbe,0x3f,0x6f,0xbf,0x9c,0xef, + 0x96,0xc4,0x9f,0x97,0xff,0x9d,0x72,0x47,0x4e,0xf5,0x27,0x43,0xcd,0x2a,0xac,0x7f,0x3f,0x75,0xb1,0xbb, + 0xee,0x9c,0xe6,0x25,0x56,0x37,0x2f,0x79,0xdb,0x2a,0x5e,0xd9,0xff,0x89,0xde,0xbf,0xab,0xf5,0x63,0xa2, + 0xff,0xff,0x8a,0x35,0x5d,0x6b,0xf5,0x6e,0x4e,0x30,0xfc,0xf6,0x3b,0xa3,0x4c,0x3f,0x3d,0xf9,0xf3,0xac, + 0x72,0xde,0x9f,0xde,0x3b,0xad,0x6f,0x3e,0x72,0xa7,0x7c,0xe5,0x6f,0x7f,0xad,0x67,0x3f,0x9f,0x39,0xe5, + 0x7f,0xbd,0x53,0x98,0x72,0x34,0xa3,0xcf,0x95,0x7e,0xe6,0xff,0xbe,0x4d,0x7b,0x13,0xfe,0x99,0x5a,0x7f, + 0xbf,0xaa,0x9d,0x5b,0x1c,0x76,0xca,0xff,0xb9,0xfc,0xfa,0x8c,0x4a,0xac,0x4c,0x5f,0xfd,0xf5,0x7e,0xa8, + 0x57,0xea,0x9f,0x95,0xe7,0x7d,0x9f,0xc7,0xe2,0x4f,0x3e,0xad,0xf1,0x54,0x9c,0xa9,0x37,0xfa,0xa9,0x5f, + 0xfc,0xe9,0xff,0x1f,0xce,0xff,0x7a,0x5c,0xe7,0xfb,0xcf,0xa8,0xd5,0x7f,0xc7,0x62,0x6a,0xab,0x7f,0xf7, + 0xaf,0x7f,0xfd,0xef,0xe7,0xf7,0xf8,0xd5,0x89,0xea,0xf3,0xd6,0x26,0xfe,0x71,0xfc,0xc3,0xb1,0xa8,0x93, + 0xb9,0xe7,0xe5,0xff,0xa8,0xe7,0xcf,0xcb,0xf3,0xbf,0x2b,0x65,0xff,0xab,0xef,0x16,0xdb,0x65,0x51,0xf8, + 0xed,0x96,0x39,0x78,0x49,0x55,0x1c,0xa9,0xd8,0xaf,0x8e,0x38,0xfe,0x71,0xdf,0x7f,0xff,0xde,0x1d,0xcf, + 0xca,0xfd,0x4c,0xe7,0x1f,0xbd,0x2b,0x33,0xff,0x3e,0xff,0xf9,0xbb,0xae,0x8c,0x3d,0xdf,0xa9,0xdf,0x6d, + 0x7b,0xe6,0x9d,0x9f,0xfc,0xab,0xd5,0xdf,0xee,0x8d,0xff,0xef,0xb6,0xd9,0x5f,0xd1,0xbd,0x5c,0xcd,0xfa, + 0xfc,0xf1,0xeb,0xef,0x49,0xa8,0xf3,0x8e,0x8a,0x9f,0x55,0xfe,0x9d,0xcf,0xff,0x1b,0xcf,0x3a,0xef,0xd6, + 0xf7,0xab,0xce,0x3b,0x1a,0xbd,0xfb,0xa2,0x57,0x3e,0x9e,0x56,0x3e,0x9b,0xff,0x47,0x9c,0x97,0x3f,0x79, + 0xcd,0x3f,0x95,0xcc,0x26,0x9e,0x4e,0x5b,0x7f,0xed,0x3b,0x42,0x77,0x46,0xcf,0xfe,0x7b,0x12,0x6e,0xf3, + 0x23,0xf1,0xfb,0xac,0x49,0x3e,0xf9,0xba,0xdb,0x1d,0xda,0xab,0xbd,0x7d,0xa6,0x9b,0x91,0x28,0xaf,0x9f, + 0xfb,0x7d,0xd4,0xdb,0xff,0x7d,0xff,0x34,0x5f,0x4a,0xf2,0x8c,0x3b,0x9d,0xb1,0x79,0x23,0xed,0xb3,0xff, + 0xae,0xfd,0x7f,0xfa,0xe5,0x15,0xc9,0xe5,0xb6,0xd9,0xd6,0xdb,0x6d,0xdb,0x6d,0xff,0xfc,0x9e,0x8a,0x28, + 0xfe,0xda,0x4b,0xd9,0xb4,0xdb,0x7f,0xfe,0xc4,0xfe,0x49,0x4b,0x9e,0x4f,0x4c,0x93,0xe4,0xba,0xe3,0xf1, + 0x3f,0x7f,0xf1,0x27,0x93,0xf9,0xff,0x26,0x89,0xd6,0x6d,0x6f,0xff,0x2f,0xb1,0x3b,0x93,0xc9,0x58,0x9f, + 0x93,0x44,0xfd,0x36,0xb7,0xef,0x8e,0xfb,0x9d,0xc9,0x3d,0x1e,0x72,0xfd,0xb3,0xff,0x9e,0xeb,0xbf,0xa7, + 0x1b,0xcf,0xfd,0x1e,0x4f,0xfd,0x64,0xd7,0x3f,0xcf,0x3d,0xa7,0x6d,0xf7,0xdc,0xe2,0x57,0x24,0xfe,0x7a, + 0x7d,0x7e,0x66,0xba,0xef,0x7d,0xfe,0x9c,0x79,0x24,0xf2,0x79,0xe4,0xbe,0x4e,0x36,0xed,0xaf,0xd7,0xef, + 0xbe,0x27,0x92,0x4f,0x5c,0xae,0x5a,0xc7,0xeb,0xee,0xdb,0x6d,0xbe,0xc7,0xf3,0xca,0xe7,0xa3,0xd6,0x4f, + 0x1e,0x75,0xdb,0xdf,0xae,0xff,0x7f,0xc9,0xc8,0xf2,0x8f,0x58,0xa7,0xbf,0xf7,0xed,0xbd,0xfb,0x7f,0xbf, + 0x24,0xee,0x89,0x27,0x2f,0xcb,0x50,0xed,0xfe,0xfb,0x1f,0x7f,0x3f,0x9f,0xcf,0x3c,0xf3,0xf1,0xfd,0xad, + 0x7d,0xdf,0xe3,0x4f,0xfb,0x13,0xc9,0x3f,0x2f,0xf9,0x3b,0xee,0x9f,0xa6,0xdd,0x8f,0xdb,0x9b,0xcf,0x24, + 0xaf,0xf9,0xfc,0xff,0xf7,0xec,0xd3,0x74,0xdf,0xfd,0xff,0xff,0x9e,0x51,0x39,0x7f,0xcf,0x34,0xe2,0xf6, + 0xfa,0xcf,0x7f,0xdf,0xec,0x4f,0xe8,0x93,0xc9,0xfc,0xff,0xbf,0x7f,0xef,0x6d,0xfb,0x63,0xbe,0xfc,0xf2, + 0x49,0xe4,0xfe,0x79,0xd8,0x97,0xf7,0xd6,0xef,0xb7,0xdf,0x7e,0x7f,0x5c,0xfe,0xbf,0xe7,0xff,0xba,0x7f, + 0xdf,0x3d,0x3b,0xee,0x69,0xfc,0x92,0x4f,0x24,0xff,0xf9,0xdf,0xf7,0xf7,0xd6,0xdd,0xfd,0x3b,0x73,0xf9, + 0xeb,0x9e,0xbf,0x27,0xff,0xf9,0x7b,0xfd,0xae,0xdb,0x6f,0xbe,0x3f,0xf3,0xcf,0x27,0x9e,0x79,0xff,0x96, + 0xb7,0xda,0xef,0xb7,0xbf,0x7d,0xce,0x3f,0x92,0x4f,0x3c,0xf3,0xce,0x4f,0x7d,0xf5,0xfb,0x6b,0xfd,0xff, + 0xff,0xf9,0xe7,0x93,0xcf,0x27,0xf2,0xd7,0xbf,0xfd,0xbe,0xbe,0xfc,0x76,0xc7,0x2f,0xf9,0xe4,0x9e,0x4f, + 0xed,0x5f,0xff,0xfb,0x7f,0x76,0xfb,0xfd,0xf7,0xe7,0xf3,0xc9,0xeb,0x2e,0x5f,0xbc,0xff,0xbf,0xbf,0xed, + 0xf1,0xdf,0x73,0xff,0xe4,0xe3,0xfa,0xc5,0xea,0xb9,0xa4,0xed,0xfe,0x3b,0xfa,0xa9,0xf8,0xfc,0x71,0xff, + 0xff,0xfb,0xd1,0xd3,0x7a,0xa7,0xfd,0xce,0x3f,0xff,0xcf,0xfc,0xe3,0x8f,0xea,0x27,0xe1,0xfe,0xf3,0xfe, + 0x38,0xfd,0xc9,0xdc,0x9f,0xce,0x5b,0x9c,0x7e,0x2f,0xc3,0x6f,0x29,0x4b,0xca,0x87,0xf3,0x79,0x3b,0x25, + 0xf5,0x7b,0x1c,0x79,0xf3,0x93,0xf1,0xbc,0xea,0x51,0xfb,0xaf,0x6b,0x3b,0xff,0xf6,0x7e,0x95,0x7f,0xe4, + 0xfd,0xd5,0x3a,0x1f,0xca,0xaa,0x93,0x51,0x3a,0x25,0x3f,0x36,0x72,0x72,0xc5,0x52,0x4e,0xa7,0xd5,0xf2, + 0xdb,0xe3,0x92,0x9c,0xdf,0xdf,0xbd,0x6c,0xbd,0xf7,0x13,0xb2,0xf3,0xa7,0x7a,0x26,0x9d,0xf3,0xe4,0xfd, + 0x39,0xdf,0x7b,0xcf,0x26,0xfd,0xcd,0xcf,0x5f,0xd1,0x27,0x29,0xde,0x53,0x1d,0xc9,0x36,0x99,0xbf,0x2f, + 0x5f,0xfe,0x47,0x1a,0xcf,0xf7,0xb5,0x8e,0xe6,0x92,0x4d,0xc5,0x78,0x49,0xbf,0xec,0x7f,0xfb,0xe3,0xb9, + 0xcb,0x13,0xef,0xdf,0xcf,0x5f,0xc7,0x63,0x4e,0xef,0xfd,0xcf,0xf9,0x63,0xea,0xa6,0xdf,0xcf,0xff,0x74, + 0x7a,0xfe,0xd7,0xf9,0xdc,0x9d,0xe1,0xb7,0x95,0xe6,0xea,0x64,0xce,0xfb,0x67,0xff,0xfa,0x75,0xfe,0xf7, + 0x92,0x69,0xd7,0xa4,0x69,0x2b,0xe3,0xae,0x7e,0xea,0x79,0xcf,0xe2,0x7d,0xfd,0x9d,0xf7,0xe6,0xad,0xfe, + 0xe4,0xe8,0x95,0xd8,0xe9,0x92,0xcf,0xa5,0x7e,0x3f,0x52,0x67,0x3f,0x92,0x7e,0xf7,0x7e,0x5d,0x9b,0xaa, + 0xf1,0x57,0x13,0xb1,0x27,0xd7,0xbf,0xfd,0x4f,0xcf,0xcc,0xd5,0x59,0xbf,0x63,0x0f,0x9c,0xa5,0x4f,0x3f, + 0xaf,0x3e,0x3b,0x63,0x7f,0xeb,0x13,0xd7,0xfb,0xd3,0x7d,0x2e,0xfd,0x4f,0xe6,0xa3,0x79,0x46,0xb3,0xa6, + 0x57,0x6d,0xfe,0x24,0xee,0x95,0xd7,0xe8,0x57,0xab,0x79,0xdd,0xa9,0x1d,0xd5,0xc4,0xb3,0x8d,0xdb,0xbd, + 0x96,0xfd,0xab,0x9f,0xc8,0xe9,0xbc,0xdf,0x6c,0x51,0x26,0x6d,0xd3,0xff,0x1d,0x99,0x46,0xfd,0x76,0x28, + 0xe4,0x6d,0x3c,0xfc,0xcd,0x3a,0xfc,0x59,0x6b,0xad,0x75,0xb6,0x6b,0x7e,0xbc,0xa3,0xca,0x29,0x22,0x4b, + 0x65,0x1b,0x24,0xb2,0xed,0xf9,0x3c,0xa2,0x4a,0x47,0xae,0x79,0xdf,0xb7,0x8a,0x92,0xcd,0x71,0xc5,0x25, + 0xca,0xfd,0x73,0xfa,0xdc,0xed,0xab,0x7b,0xad,0x2d,0x96,0x9f,0xd2,0x44,0xaf,0x8f,0xff,0x93,0x8f,0xdb, + 0x66,0x6b,0xf3,0xcd,0x61,0xf9,0x94,0xba,0x34,0xfc,0x7f,0x38,0xfd,0xb6,0x4f,0xf7,0x6c,0xb6,0x63,0xfa, + 0x48,0x93,0xbf,0xff,0x9e,0x71,0xf7,0xec,0xd5,0x7e,0xeb,0x74,0x3f,0x24,0x4e,0x5e,0x9f,0xcf,0x26,0xad, + 0xb7,0xcd,0xe2,0xb4,0xd3,0xcf,0xcf,0x64,0x9e,0x76,0x38,0xf2,0x77,0x37,0xef,0xda,0xc8,0xdb,0x6c,0xdc, + 0xf5,0xd7,0x3f,0xe3,0xcf,0x27,0xe3,0x76,0xf9,0xbf,0xd6,0xba,0xdb,0xce,0x28,0x9c,0x7d,0x3f,0x9e,0xbe, + 0x3a,0xfc,0x6b,0x7f,0xab,0xae,0xd0,0x9c,0x8a,0xdc,0xec,0x79,0xe4,0xfc,0x76,0xf8,0xe6,0xf1,0x36,0xdb, + 0xa1,0x38,0xae,0x71,0xd8,0x9e,0x79,0xf8,0xdc,0x71,0xc9,0xfe,0xa5,0xba,0xc5,0xfa,0x3c,0xe3,0xb2,0xe4, + 0xf3,0xff,0xdb,0xff,0x9b,0xc4,0xd9,0x6d,0xab,0x74,0x8e,0xe7,0x13,0xc9,0x5f,0x7f,0xbe,0x3f,0x96,0xb2, + 0xd2,0xdb,0x72,0xc5,0x1c,0x7f,0xcb,0x92,0x7f,0xc6,0xfd,0xf9,0xcd,0xe2,0x65,0xb6,0x63,0xba,0x3f,0xff, + 0x89,0xe4,0x9f,0xfe,0xdf,0xee,0xab,0x78,0x9b,0x6d,0x98,0xee,0x4f,0x38,0xd2,0xb9,0x27,0xff,0xb7,0xff, + 0xfe,0x5a,0xae,0xdd,0x65,0xca,0xa3,0x57,0x3b,0x22,0x57,0xfc,0xfb,0xff,0xe7,0xe2,0xd6,0x76,0x6f,0x2f, + 0xdd,0x1d,0xc9,0xdc,0xf2,0xb9,0xe7,0x6f,0xf1,0xdc,0xe6,0xf1,0x33,0x69,0x77,0xdd,0x7e,0xb7,0xc4,0xe4, + 0x7a,0xff,0x63,0xb1,0xdc,0xf6,0xf1,0x53,0x59,0x6f,0xdd,0x7e,0x7f,0xc7,0xf4,0x49,0xe7,0x7f,0x7f,0xff, + 0xf2,0xd6,0x7a,0xfb,0x36,0xdf,0xac,0x4f,0xff,0x9e,0x8f,0x47,0x1d,0xf7,0xf8,0x9d,0xdb,0xcf,0x5d,0xad, + 0xda,0xa3,0xf2,0xdf,0x9c,0x49,0x24,0xee,0x77,0xdf,0xf3,0xeb,0x79,0x19,0xf4,0xbb,0x6e,0xb1,0x27,0x73, + 0xf9,0x24,0xaf,0x8f,0xdf,0x7f,0xff,0xc9,0x9c,0xf5,0x32,0xdd,0xaa,0x38,0x9f,0xff,0xc5,0x72,0x4f,0x3b, + 0xee,0x77,0x38,0xe2,0xcf,0x7a,0x7b,0x6d,0xd9,0x2d,0xcf,0x3f,0x7e,0x97,0x27,0x9f,0xb7,0xe7,0x1f,0xff, + 0xa5,0xac,0xf5,0xd6,0xcc,0x69,0x3f,0xf3,0xaa,0xfd,0x12,0x79,0xdf,0xef,0xcf,0xc7,0xef,0xb3,0x7f,0xab, + 0x74,0xb7,0x9a,0x4f,0xfb,0xee,0x4f,0x44,0xff,0xfe,0x38,0xf3,0xf7,0xfb,0x6c,0xdb,0xc7,0xdd,0x75,0xab, + 0x65,0xfe,0xc7,0x72,0x49,0x27,0x7f,0xff,0x3f,0x9f,0xe9,0xdf,0x1c,0xdf,0xe6,0xe9,0xf4,0x3f,0x1b,0xfc, + 0x3f,0x92,0x8f,0x3f,0xfe,0x79,0xe7,0xff,0xbe,0xe7,0x73,0xdb,0xc7,0x5b,0x7f,0x9c,0xff,0x7f,0xa7,0x93, + 0xdf,0xc7,0x9f,0xc9,0xe7,0xfd,0x8f,0xdc,0xff,0xf1,0x6f,0xfd,0xac,0xfa,0xfe,0x75,0xfe,0x9c,0x8f,0x47, + 0x1c,0xbe,0x24,0xfd,0xfe,0xff,0x1c,0x7e,0xf8,0xb7,0xf6,0xf2,0xef,0xbf,0x5a,0xef,0xfe,0x4b,0x9e,0x7e, + 0xe7,0x9c,0xbe,0xfb,0xfd,0xcf,0xf4,0xfd,0x9b,0x3b,0xdf,0x2f,0xe7,0x65,0xed,0xcb,0xf4,0x5e,0xff,0x9d, + 0xd1,0x3b,0xfd,0xbf,0x3b,0xff,0xf6,0xe7,0xb6,0x74,0xbe,0xdc,0x57,0xd7,0xeb,0x8a,0x5c,0x93,0xf6,0x5c, + 0x9e,0xbe,0xd8,0xef,0xf9,0xfb,0x7c,0x77,0x6c,0xf9,0x7e,0xb7,0xa3,0xb5,0x3b,0x62,0xf9,0xfc,0xfd,0xca, + 0x3f,0xff,0xf6,0xe7,0xff,0xbf,0xdb,0x9f,0xdb,0x5f,0x4f,0xbd,0x84,0xfd,0x6f,0xe6,0x94,0x56,0xc4,0xf3, + 0xc9,0x3f,0x7f,0xff,0xfc,0xef,0xbe,0x3f,0x1c,0xda,0xfa,0xed,0xee,0xfd,0x79,0xef,0x3c,0xf4,0x7f,0xc7, + 0x93,0xff,0x27,0x7f,0xcf,0x3b,0x1d,0xfe,0xf9,0x6c,0xdb,0x3a,0xed,0xce,0xdc,0xfd,0x66,0x25,0x1f,0xfa, + 0xdf,0xf4,0x8f,0xc6,0x9f,0xff,0xe7,0x7d,0xbf,0x38,0xee,0x5b,0x5f,0x4d,0xbf,0xff,0x7f,0xb4,0xfd,0x22, + 0x7e,0x3f,0x9e,0x49,0xff,0xd3,0xf9,0xff,0x7f,0xbe,0xff,0x9d,0xf3,0x6f,0xeb,0xa9,0xe7,0x7d,0xfd,0xd7, + 0xa4,0x4f,0xc7,0x9e,0x79,0x27,0xef,0xb9,0xff,0xff,0xbe,0xfb,0xfe,0x76,0x4d,0xaf,0x6d,0xf8,0xff,0xbf, + 0xdb,0x6e,0x52,0xe7,0x7e,0x7f,0x27,0x9f,0xf7,0xdc,0xe3,0xff,0xbe,0xfb,0xce,0x38,0xb6,0xf7,0xb7,0xfc, + 0x77,0xdf,0x7b,0xb9,0x49,0x7d,0xf9,0x3d,0x73,0xcf,0xfb,0xfc,0x7f,0xfb,0xef,0xf7,0xff,0xe6,0xd2,0xfa, + 0xdb,0xf7,0xfb,0x7d,0xf6,0xfc,0x94,0x4f,0xfc,0xf3,0xcf,0x38,0xfd,0xf7,0xff,0x7f,0x7e,0xfe,0x9d,0xdb, + 0x4b,0xe9,0xbe,0xc7,0xef,0xf7,0xfb,0x1e,0x8a,0x3f,0xf3,0xc9,0xe7,0x73,0xbf,0xfb,0xff,0xfe,0xff,0x63, + 0xfe,0x6d,0x13,0x6d,0xdf,0x73,0xb6,0xc7,0xff,0x8f,0x29,0x73,0xb9,0xfd,0x7f,0xff,0xff,0xef,0xbe,0x3f, + 0x7d,0xb7,0xfd,0xb6,0x7f,0xd7,0xc3,0xbf,0xc7,0x7f,0xff,0xc4,0xa4,0x4f,0xfc,0xf2,0x71,0xdc,0xe3,0xbe, + 0xf8,0xe3,0xbf,0xdf,0x94,0xda,0xda,0x4d,0xf7,0xfb,0xee,0x79,0xfb,0x74,0x92,0x27,0x92,0x49,0xfb,0x1f, + 0xff,0xdb,0x7f,0xf1,0xd8,0xe2,0x5b,0x67,0x4b,0xa6,0xf7,0x63,0x57,0xe7,0xfc,0x97,0x5c,0xf5,0xc9,0xff, + 0x7f,0xff,0xdb,0x6f,0xbf,0xdb,0xff,0xcb,0x68,0xed,0xb4,0xda,0x7b,0xf1,0xfc,0xe3,0xc9,0x5c,0x9e,0x89, + 0x3c,0xee,0x7f,0xdf,0x7d,0xf7,0xfb,0x7f,0xf1,0x4d,0x9a,0x7e,0xdb,0x4d,0x7e,0xdc,0xef,0xd7,0x24,0xe2, + 0x79,0x3f,0x9c,0x79,0xdf,0xff,0xbf,0xfb,0xfd,0xce,0xc5,0xbf,0xb1,0xfb,0x7b,0xbd,0x3f,0x7f,0xcf,0xe7, + 0xf3,0xcf,0xe7,0x9f,0xff,0x3f,0x7f,0xfe,0xff,0x7f,0xea,0xaa,0x35,0xbe,0xfb,0x9b,0xbe,0xc6,0x9f,0xcf, + 0xe4,0xfe,0x79,0xff,0x9c,0x7e,0xff,0xef,0xfe,0xff,0xe3,0xb9,0xc7,0x74,0xd6,0x38,0xed,0xee,0xfa,0xff, + 0xbf,0xfc,0xfe,0x79,0xeb,0x1e,0x4e,0x3f,0xfc,0x76,0xfb,0xfd,0xbf,0xf4,0xff,0x5b,0xdf,0x9d,0xfe,0xfb, + 0xef,0xbf,0xfb,0x9f,0xcf,0xfc,0xf3,0xf9,0xff,0x9c,0x7e,0xff,0xfc,0x77,0xdf,0xe3,0x31,0x27,0xfc,0xa9, + 0x5d,0x4e,0x77,0x3f,0xff,0xee,0xfc,0xab,0x79,0x35,0x6f,0x0a,0x3b,0xea,0x57,0x3b,0x73,0xd1,0xcf,0x1f, + 0xb9,0x36,0x93,0x76,0x36,0xe2,0x4f,0x3e,0x9f,0xcb,0xbf,0x9f,0x9f,0xc7,0x2f,0x7f,0xfe,0x9d,0x72,0x26, + 0xad,0xa9,0x7c,0x9d,0xb7,0xe5,0x78,0x76,0xe9,0xea,0x56,0x27,0x5b,0x4f,0x5c,0xde,0xf9,0xb7,0x94,0xfd, + 0xbd,0x55,0xc9,0xb7,0x1f,0x8a,0x7b,0x2b,0xff,0x39,0x1b,0xbd,0x4c,0xfb,0x7b,0x3c,0xf5,0x6e,0x2f,0xec, + 0x54,0xe5,0x1d,0xf7,0xc8,0xa2,0x7d,0xd3,0x9c,0xaa,0xeb,0x9b,0xfd,0x5f,0xfc,0xa5,0xfd,0xe2,0x56,0xa7, + 0xbd,0xdf,0xf6,0xf7,0xf9,0x46,0x6d,0xf5,0xfb,0x69,0xd2,0xd9,0x25,0xf2,0x5e,0x65,0xb5,0xdb,0x1e,0x57, + 0x47,0x9d,0xa1,0xf3,0x45,0x8f,0x6b,0x1e,0x75,0xe5,0xed,0xfe,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xc0, +}; +static constexpr VoiceClip actionFailedClip = { + actionFailedData, sizeof(actionFailedData), 7470, 8000, VoiceCodec::G72624 +}; +// "USB setup" +static const uint8_t usbSetupData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x6d,0xa3,0xfb,0x2d,0x14, + 0x8f,0x36,0xd9,0xad,0xd7,0x6f,0xf9,0x29,0x24,0x51,0x27,0x9d,0x8d,0xef,0xa5,0xdf,0x3f,0xdd,0x6d,0xb6, + 0xed,0xbf,0xe8,0xa7,0xd1,0x24,0x9c,0x76,0x31,0x7e,0xf9,0x27,0x1d,0x7c,0xd7,0x5f,0x77,0xfc,0xa2,0x59, + 0x24,0x9e,0x71,0xbf,0xd7,0x91,0xcf,0xfc,0x6e,0xf3,0x6d,0xb7,0xab,0x15,0xdf,0x59,0x1c,0x7e,0xff,0x5e, + 0x94,0x7f,0x9f,0x8e,0xd7,0x5d,0xa7,0xf8,0xf2,0x57,0x7c,0x9e,0x7f,0xdf,0x53,0x11,0xaf,0x13,0xf1,0xd7, + 0xdb,0xb5,0xfa,0xbc,0x49,0x25,0x72,0xaa,0xf7,0xfd,0xb2,0x51,0x7c,0xf7,0xfb,0x7b,0x7d,0xdf,0xe2,0x7a, + 0x5d,0x12,0x4e,0x3f,0x7d,0xbe,0x46,0x3f,0x9d,0xca,0xdf,0x6f,0xd7,0x9a,0x57,0x2f,0x95,0x97,0x34,0xed, + 0xf6,0xee,0xf7,0x4b,0x87,0xdd,0xee,0xdb,0x1d,0xd2,0x29,0x14,0x7f,0x5b,0x7d,0xf6,0xcf,0x57,0xbb,0x9d, + 0x4f,0xb7,0xdb,0x13,0x8b,0xe5,0x1e,0x49,0xdf,0x6f,0xaf,0x2a,0x23,0x11,0x87,0xcf,0xf6,0xdf,0xf2,0x7b, + 0xe5,0x1c,0xbf,0xfb,0xfd,0xb7,0x76,0xbf,0x5d,0xaa,0xed,0xb6,0xc7,0x74,0x7a,0x25,0x7f,0xd6,0xdf,0x7d, + 0xba,0xd5,0xfa,0xbd,0xfa,0xff,0x7c,0x27,0x3f,0xd2,0x27,0x93,0xbf,0xdb,0xed,0xd6,0xaf,0xd5,0xee,0xfb, + 0x5f,0xe9,0x3f,0xa4,0x7a,0x3c,0x9d,0xb7,0xb7,0x7c,0xe9,0x7b,0x1c,0x6d,0x36,0x9d,0xf9,0x44,0xa5,0xd7, + 0xff,0xfd,0x7f,0xbf,0xbf,0x4b,0xdb,0xfd,0x3f,0xb4,0xef,0xd2,0xe5,0x2e,0x49,0xdb,0xfb,0xf7,0xcb,0xe2, + 0xbf,0xb9,0x4d,0xb6,0xdc,0xfc,0xc9,0x25,0x1f,0xce,0xf7,0xfb,0xf3,0xdb,0xa3,0xaf,0xfa,0x1b,0xef,0x27, + 0x94,0x51,0x27,0x9d,0xfe,0xdb,0x7e,0xbd,0x24,0x99,0x8e,0xd6,0x9d,0x8f,0x44,0x94,0x4f,0x3f,0xef,0xb7, + 0xd8,0xba,0x71,0x5a,0xd3,0xbc,0xff,0x9c,0x51,0x24,0x93,0x8e,0xff,0x6d,0xfe,0x7b,0xe3,0xd5,0xbb,0x1d, + 0x7e,0x2b,0x12,0x8f,0xe7,0x9d,0xbe,0xfb,0xee,0x51,0xdb,0x3f,0xb4,0xe7,0x5f,0x97,0x5c,0x95,0xcf,0xc7, + 0xef,0x7e,0xe6,0xbe,0x77,0xae,0xfb,0x0e,0x3e,0xf5,0xdf,0x27,0x93,0xf6,0xdf,0xed,0xb9,0xef,0xfd,0x56, + 0x36,0x7d,0xd6,0xfc,0xa4,0x7f,0xeb,0x1d,0x7e,0xff,0x7c,0x52,0x3a,0xe3,0x8d,0xb7,0x13,0xcf,0xe8,0xa5, + 0xbf,0xff,0xed,0xb7,0xff,0x16,0x7f,0xbb,0x1f,0xad,0xff,0xaf,0xcf,0x48,0xff,0xce,0x3a,0xeb,0xfe,0x2d, + 0x73,0x77,0xc6,0xdb,0x4e,0x3c,0xf2,0x52,0x3f,0x9d,0xce,0xdb,0x7f,0x8a,0x5f,0x5f,0xf7,0xba,0xef,0xc9, + 0xfc,0x94,0x57,0xc7,0xff,0xf6,0xdb,0x96,0x56,0xb4,0xff,0x75,0xbf,0x93,0x96,0x45,0x13,0xfe,0xe7,0x7d, + 0xb7,0xc9,0x23,0x6f,0xd8,0xdb,0x69,0xe4,0x9e,0x4a,0x24,0xff,0xbf,0xff,0x6d,0xfb,0x27,0xdb,0xf1,0xba, + 0xdd,0xc9,0x3c,0xf4,0x4a,0xc7,0x63,0xfe,0xc6,0xe4,0xd7,0xda,0xef,0xee,0xb7,0x9e,0x8f,0x3d,0x15,0xfe, + 0xff,0xfd,0xfd,0xfd,0xac,0xac,0xff,0xed,0x61,0xfd,0x13,0xbb,0xe4,0xff,0xb1,0xff,0x7b,0xf9,0x6b,0xe9, + 0xbe,0xfe,0xcf,0xc9,0x27,0xf2,0x52,0xdf,0xec,0x79,0xbf,0xee,0xdf,0xd6,0xdc,0xb6,0xbb,0x77,0xd6,0x3c, + 0xf4,0x77,0xbf,0xf3,0xbe,0xdd,0x35,0xe6,0xd7,0x9d,0x67,0xe4,0x95,0x89,0x28,0xf3,0x71,0xff,0x7f,0x7f, + 0x6f,0xeb,0x6d,0x5a,0xdc,0x72,0x7f,0xf2,0x7a,0xff,0x6f,0xff,0xdb,0xee,0xdf,0xd3,0xdc,0x75,0xb4,0xf4, + 0x8e,0x59,0xe5,0xf6,0xf9,0x53,0xf6,0xe5,0xa3,0xa6,0xb8,0xdd,0xa9,0x2f,0x93,0x8f,0x5f,0x7d,0x8f,0x3b, + 0xef,0x8b,0x75,0x49,0xf1,0xbb,0xe2,0xc9,0x38,0xe5,0xf7,0xdb,0x95,0xb7,0xd8,0xf6,0xba,0x93,0xed,0x3e, + 0xc9,0x75,0xf9,0xeb,0xd3,0xb9,0xe7,0x63,0x4f,0xed,0xfb,0x2d,0xde,0x7f,0xda,0xe7,0x2f,0xff,0xd8,0xad, + 0xfe,0xff,0x7a,0xd9,0xf2,0x7b,0xec,0x3c,0xbf,0xff,0x5b,0xfc,0x4a,0xfb,0xff,0xbd,0xcd,0xa9,0x6f,0xb6, + 0xdc,0x99,0xfd,0x1f,0xef,0xeb,0xfe,0x71,0xda,0xfe,0xdf,0xb7,0x79,0x6d,0x48,0x9e,0x57,0xfb,0x2f,0xff, + 0x3f,0xed,0xbe,0x6f,0x7f,0x76,0x9a,0xa2,0x79,0x2b,0x7d,0xc9,0xfc,0xf3,0xb6,0xf8,0xd6,0xf6,0xf8,0xcb, + 0xfb,0xdd,0xe5,0xb7,0xc5,0x55,0xcf,0xbf,0x7f,0xf3,0x66,0xdc,0x64,0xfd,0x1e,0xba,0xd7,0x9e,0x79,0x27, + 0xdf,0xf6,0xfd,0xbb,0xfd,0xf2,0x2c,0x8e,0x4b,0x6a,0x4e,0x27,0xbb,0xbf,0xdb,0x12,0x9f,0xa6,0xdb,0x16, + 0x2b,0x23,0x7e,0xe7,0xf4,0x4d,0xff,0x6f,0x97,0x6e,0xeb,0xac,0xcb,0x2e,0x55,0xdf,0x9c,0x57,0x3e,0x9d, + 0xbf,0x3d,0x33,0x74,0x32,0x12,0x7f,0x7e,0x9c,0x7f,0x44,0xfc,0x76,0xfc,0xf2,0xd4,0xf7,0x4a,0x7f,0x39, + 0x1b,0x8f,0xf9,0x9f,0xce,0xf4,0xff,0xd3,0x50,0xdb,0x2f,0x3b,0x95,0xa9,0xff,0x14,0x7f,0x3e,0xff,0xff, + 0x4f,0xe3,0x6c,0xc6,0xf2,0x4d,0xff,0xe2,0x57,0xe4,0xdf,0x8e,0xe5,0xbc,0x76,0x9b,0x7a,0x79,0xdb,0xfd, + 0xca,0xe4,0x9d,0xf1,0xdf,0xb7,0xf9,0xba,0x6d,0xb1,0xe6,0xff,0xf1,0x2b,0xae,0x77,0xff,0xe4,0xd6,0x3e, + 0xd9,0xee,0xdc,0xed,0xf7,0xe5,0x74,0x49,0xa7,0xff,0x9b,0xfc,0xeb,0x36,0xbb,0x9d,0xf1,0xfb,0xa2,0x49, + 0x3b,0x9d,0xff,0x6b,0x1d,0xa5,0xba,0xee,0xaf,0xdf,0xf2,0x8a,0xe8,0xef,0xff,0xe9,0x9f,0xfd,0x97,0x5d, + 0x8f,0xd8,0xef,0xd1,0x45,0x13,0x8f,0xff,0xb5,0xff,0xd6,0x6b,0xa9,0xff,0x7f,0xf1,0x28,0x94,0x79,0xff, + 0xf4,0xff,0x3f,0x4b,0x75,0xaa,0xff,0x8e,0xc4,0x92,0x89,0x3c,0xfc,0x59,0xe7,0xfb,0x36,0x9f,0x1f,0x4f, + 0xf7,0x9e,0x4a,0x27,0x93,0xeb,0x7c,0xf3,0xa6,0xb6,0xe3,0xb7,0xe6,0xef,0xff,0x47,0x92,0xb7,0x4c,0x92, + 0x4d,0xbe,0xda,0x75,0xf8,0xda,0x7e,0xe4,0xf3,0xd7,0xfd,0xba,0xf2,0xdb,0xeb,0xb1,0xbb,0xfd,0x79,0xbf, + 0xf5,0x4f,0x3f,0xb5,0x97,0x5b,0x1d,0xe9,0xf4,0xef,0xef,0x37,0xff,0x8e,0x3f,0x12,0xd5,0x5b,0xde,0x77, + 0xfc,0xdf,0xbe,0xe7,0x73,0x8d,0x27,0x2c,0x53,0x7b,0xe3,0x0a,0xff,0x7b,0x56,0xff,0xe9,0xb6,0x4b,0xca, + 0x8a,0xc5,0x1d,0x99,0xe7,0x93,0x93,0xff,0xef,0xd6,0xde,0x6a,0x74,0xd8,0xce,0x4d,0x27,0xda,0xdf,0xc7, + 0xfe,0xf9,0xdf,0xe5,0xaf,0x36,0xad,0x3d,0x39,0x1d,0xe1,0x5d,0x7c,0xb9,0x28,0xdd,0xfd,0xff,0x63,0x4c, + 0x27,0xaf,0xbf,0x54,0x9e,0x71,0xff,0x75,0xbf,0xff,0x2f,0xad,0x4a,0xfb,0xeb,0x5f,0x7f,0x73,0x3e,0xfd, + 0x52,0x3e,0xfb,0xfa,0x5a,0x7f,0xcf,0x3b,0x75,0xff,0xc6,0x95,0xf6,0x3a,0x2e,0xa9,0xff,0x72,0x7f,0xea, + 0x93,0xb9,0xbe,0x1d,0xce,0xff,0xa8,0x79,0x3c,0xff,0xba,0xe7,0x2f,0xc9,0xdb,0x7f,0xa7,0x5b,0x1f,0xb1, + 0xf8,0xaf,0x32,0x4b,0x1f,0xef,0x7e,0xfd,0xbf,0x2b,0xc4,0x72,0x26,0xdd,0xf1,0x36,0xff,0xf3,0xdf,0x67, + 0x71,0xde,0xf5,0xaf,0x4b,0x7e,0x74,0x66,0x9a,0xad,0xe5,0x1c,0x6b,0xbc,0x93,0xbd,0xbd,0x2f,0xce,0x99, + 0x1f,0xbe,0xb9,0xff,0xbf,0xa9,0xe5,0x57,0xdf,0xef,0x16,0xd4,0xa5,0x56,0x38,0x9f,0x6d,0x59,0x5c,0x61, + 0xfc,0x93,0xfa,0xcb,0x3d,0x6e,0xfb,0xa3,0x49,0xf6,0xb7,0xea,0x97,0x14,0x79,0xdd,0x34,0x8f,0xb4,0xe3, + 0xfe,0x5c,0xfa,0x69,0x3c,0xf3,0xa5,0xbf,0xb7,0x8c,0x54,0xa4,0xfd,0xd7,0x5c,0x7b,0xa7,0xcf,0xbf,0xcf, + 0xee,0x5f,0x27,0x7d,0x74,0xdf,0xf2,0xdf,0x49,0x1e,0x75,0xbb,0xe8,0xbe,0xd8,0x92,0x89,0x3d,0x6b,0x6d, + 0xd7,0xee,0x49,0x45,0x1e,0x4f,0xdb,0xcb,0x76,0xdc,0x94,0x52,0x27,0xff,0xb6,0xdf,0x6f,0xff,0xff,0x9c, + 0x7e,0x3f,0x1e,0x49,0x24,0x92,0x49,0xff,0xff,0xbd,0xfb,0x6f,0xbb,0x38,0xf3,0xf6,0xdb,0x6d,0xb7,0xdc, + 0xfe,0x49,0x24,0x93,0xcf,0x3f,0xff,0xfe,0xfb,0xfa,0xce,0xe7,0x1d,0xbe,0xdf,0x6f,0xbf,0xff,0xf3,0xc9, + 0xe4,0xf3,0xcf,0xe7,0x1f,0xff,0xdf,0xf7,0xf1,0xc7,0x7d,0xf7,0xdf,0x7f,0xf1,0xc7,0xfe,0x79,0xfc,0xfe, + 0x7f,0xff,0xff,0xff,0xf9,0x9b,0xcf,0xff,0x63,0x8e,0xdf,0xfd,0xf9,0xff,0xfe,0x4f,0x27,0xff,0xd6,0xff, + 0xf3,0xff,0xc7,0x6f,0xcd,0xfc,0xfa,0x79,0xff,0x1f,0xcf,0xe4,0xec,0x4f,0xfb,0xff,0xff,0xff,0xee,0x7f, + 0xfc,0x9f,0xff,0xff,0xed,0xb7,0xff,0xff,0xff,0xff,0xf5,0xcf,0xfc,0x9f,0xf9,0xff,0xf3,0xb1,0xfb,0xff, + 0x76,0x3b,0x9e,0x7f,0xfc,0xff,0xd1,0xa7,0xfe,0x4a,0xc7,0x5b,0xf9,0x57,0x63,0xf2,0xc4,0xef,0xff,0xc4, + 0xac,0x7d,0xfe,0x35,0x3f,0x3b,0x3f,0x8f,0x5e,0xfd,0xfc,0x3a,0xf2,0xbe,0x44,0xfe,0xa5,0xf8,0xde,0x55, + 0xfb,0xbe,0x91,0x67,0xfd,0xb4,0xd4,0xab,0xbd,0x37,0x1a,0xcf,0x48,0x9e,0x4d,0x4f,0xe5,0xf5,0xba,0xcf, + 0x76,0xff,0xf4,0x52,0x29,0x74,0x7a,0xc7,0x27,0xfb,0xdc,0xdd,0x6e,0xb7,0xdf,0xf9,0x45,0x94,0x49,0x3c, + 0xef,0xbb,0xa5,0xde,0xa1,0xdb,0x6d,0xe1,0xdc,0xf2,0x8a,0x25,0x72,0xb7,0xdd,0xde,0xe9,0xf7,0xfb,0xae, + 0xd5,0x5e,0x79,0x49,0x15,0xca,0xc4,0xde,0xbe,0x5a,0xad,0x7d,0x9e,0xdf,0xb7,0xe7,0xa2,0x91,0x24,0xf3, + 0xfe,0x2a,0x23,0x57,0x86,0xdd,0x75,0xfb,0x1c,0x57,0x44,0xae,0xbf,0x3b,0xf3,0xeb,0xbd,0xcf,0xe1,0xb7, + 0x6d,0x8d,0x24,0xa2,0x51,0x5c,0xfe,0x71,0x51,0x7a,0xed,0x53,0xfb,0xb6,0xdf,0xf3,0xd1,0x5d,0x1e,0xbf, + 0x3b,0xbb,0xdc,0x5e,0xff,0x0d,0xbf,0x6d,0xf2,0xfd,0x12,0x8f,0x5f,0x9f,0x97,0xae,0xf5,0x79,0x9f,0x5f, + 0xaf,0xdf,0x9e,0x4f,0x47,0xa3,0x96,0xe5,0x55,0xea,0xd5,0x4f,0xae,0xf7,0x7c,0x7f,0x2b,0x22,0x57,0xcb, + 0x1d,0xd6,0xea,0xaf,0x55,0xbe,0x7d,0x77,0xdf,0xf2,0x49,0x25,0x72,0x79,0xdd,0x54,0x69,0xf1,0x5d,0xed, + 0xf7,0xfa,0x7f,0x24,0x95,0x97,0x27,0xff,0x8a,0xaf,0x75,0x7f,0x86,0xdd,0x76,0xf8,0xfe,0x57,0x44,0xae, + 0x4e,0xff,0x3b,0xdc,0x5a,0xb9,0xf6,0xd7,0x6f,0xb2,0xc9,0x77,0xd1,0xe4,0xe3,0xba,0x31,0x6e,0x69,0xf3, + 0xdd,0xbd,0xde,0xac,0x57,0x4b,0x3c,0xb9,0xff,0xe2,0xab,0xd9,0x5f,0xe7,0xba,0xeb,0xfe,0x27,0x22,0x51, + 0x2b,0x1f,0xff,0xa9,0x47,0xba,0x85,0x4f,0x6e,0xbb,0xed,0xcf,0x7d,0x12,0x51,0x3b,0xf3,0x49,0xae,0xf5, + 0x79,0x86,0xdd,0xae,0xdc,0xee,0x8a,0x25,0x72,0x4f,0xfb,0xf3,0xbb,0xa7,0xd5,0x6f,0xbb,0x5f,0x7f,0xe7, + 0xa2,0x57,0x7f,0xac,0x77,0xfc,0xd7,0xea,0xbc,0xcf,0x6e,0xdb,0x6e,0x7f,0x44,0xa2,0x8f,0x3f,0xff,0xf2, + 0xbd,0xd3,0xea,0xb7,0xdd,0xaf,0xfb,0x2c,0x89,0x47,0xac,0xbf,0x3b,0x7c,0xf6,0x55,0x1a,0x6d,0xf6,0xed, + 0xb6,0x27,0x12,0x51,0x2b,0x9e,0x7e,0xff,0x2a,0x55,0xe6,0xab,0x7e,0xbe,0x1d,0xbf,0xe4,0xa2,0x89,0x24, + 0xff,0xff,0xc7,0xd7,0xb2,0xa7,0x5d,0xae,0xbb,0xfa,0x79,0x24,0xbc,0x8a,0xfc,0xfd,0xf1,0x3b,0x2a,0xb6, + 0x36,0xfb,0xe7,0xbf,0xe3,0xfa,0x28,0x94,0x49,0xe7,0x7f,0xb9,0xf9,0x52,0x69,0xbb,0xdb,0x7d,0xdf,0x1f, + 0x9e,0x48,0xae,0xbf,0x3f,0xec,0x4e,0xea,0x9f,0x8e,0xba,0xeb,0xb6,0xf4,0xf2,0x49,0x45,0x75,0xcf,0xff, + 0xee,0x4c,0x5f,0x2d,0x8d,0xd7,0xdb,0xb7,0xd8,0xf2,0x4a,0xe8,0x92,0x7f,0xca,0xfe,0xaf,0x5b,0x9d,0xfd, + 0xf7,0xcf,0xaf,0xd8,0xfe,0xba,0x28,0x92,0x79,0xc7,0x6e,0xae,0x77,0x9f,0xb1,0xbb,0x5d,0xe1,0xdf,0x13, + 0x9f,0x25,0x1e,0x4e,0x54,0xee,0xef,0x58,0xe3,0x71,0x9b,0xdd,0xbe,0xff,0x22,0x4a,0x3d,0x1e,0x7f,0xfc, + 0xde,0xff,0x53,0xa3,0x3f,0x9b,0xeb,0xf5,0x26,0xa3,0xfb,0x3c,0xac,0x4f,0xc7,0xee,0xf5,0x7b,0x13,0x32, + 0xbb,0xfb,0xd5,0xcb,0x72,0xa9,0x5b,0xaf,0xfa,0xa5,0x6e,0xd4,0x46,0x7e,0x61,0xf0,0xff,0xb9,0x87,0xee, + 0x7e,0xea,0x95,0xbf,0x55,0x1d,0xcf,0xe8,0xea,0xfe,0x3f,0xc3,0xb2,0xae,0x93,0x0d,0x5f,0x9a,0x71,0x33, + 0xe3,0xf9,0x9c,0x93,0xcf,0xa7,0xaf,0xcf,0x39,0x6d,0xb3,0x3b,0x6d,0x52,0x9f,0xe3,0xfd,0xeb,0xeb,0xd6, + 0x6b,0x1e,0x69,0x7b,0xe3,0x72,0xb7,0x7a,0x54,0xa7,0xd2,0xe9,0x27,0x77,0xb1,0x3a,0xa3,0x95,0xf7,0x2c, + 0x76,0x34,0xf4,0xb9,0xb3,0x24,0x9e,0x94,0x94,0xb4,0xa7,0xf3,0xa6,0xe7,0x23,0xb7,0xd9,0xae,0x77,0xa5, + 0x73,0xb5,0xe7,0x1f,0xb7,0x37,0xad,0xb1,0xd4,0xf5,0xd1,0xa8,0x9c,0x56,0xff,0xec,0xef,0xc6,0xe5,0xa9, + 0xd9,0x25,0xd7,0xbc,0xed,0xf4,0xc7,0x62,0x6d,0x25,0x33,0xee,0x29,0x6b,0xba,0xe7,0x6d,0x91,0xfb,0x5f, + 0xc9,0x37,0x9d,0xb9,0xe5,0x5f,0xd6,0x56,0x9d,0xb5,0xef,0xae,0xbd,0x3f,0x6f,0xa6,0x37,0xa5,0x69,0x29, + 0x9f,0x8d,0x5d,0x7d,0xb7,0x30,0xd3,0xcf,0xdf,0x9e,0x4f,0x5c,0xff,0xbe,0xff,0x6a,0xcf,0x3a,0xdd,0xf1, + 0x2e,0xdc,0x96,0x7b,0xfd,0x72,0xf5,0x73,0xba,0x9c,0xff,0x97,0xeb,0x18,0x57,0x57,0x5c,0x4a,0x3b,0x6b, + 0x49,0xef,0x4a,0x95,0x7f,0xfd,0xa9,0xff,0xe4,0x6a,0x5a,0xf2,0x52,0xbb,0xd5,0xd5,0xbe,0xee,0x8e,0xfe, + 0xce,0x6f,0xfb,0x9e,0x56,0xbc,0x92,0xb7,0xf5,0xf5,0x6f,0xbf,0xa3,0xbf,0xb3,0xae,0x8d,0x2b,0x46,0xef, + 0x7a,0x7f,0xb3,0xdf,0x73,0x89,0xb9,0xff,0xd6,0x9f,0xed,0xfd,0xe4,0xac,0x7e,0x25,0xeb,0x97,0xcc,0xcd, + 0x75,0x4b,0x1a,0xbf,0x5e,0xa5,0xcf,0xfb,0x7e,0x4d,0xab,0xfc,0xbc,0xdd,0xe6,0xf2,0xc6,0xe5,0xb6,0x3f, + 0x2d,0xb1,0x51,0x95,0xe9,0x9c,0x93,0xbd,0xb3,0x7e,0x9d,0xd5,0x64,0xb1,0xba,0xf5,0xbf,0x95,0x3f,0x8e, + 0xb5,0xdb,0xf2,0x87,0xd3,0x7d,0xeb,0x1d,0xf9,0x44,0xeb,0x2a,0x58,0x95,0xba,0xd6,0x2f,0x35,0xd9,0xb4, + 0xb1,0xe7,0x6c,0x9f,0x5a,0xf9,0xc9,0xf6,0x42,0x5a,0xdb,0x12,0xc9,0xff,0xcc,0x4f,0x9c,0xdd,0x9e,0x9f, + 0xaa,0xde,0xf4,0xec,0xff,0xbb,0xce,0x7e,0xe6,0xd6,0xb5,0x46,0x13,0x64,0xd6,0xa2,0xba,0x36,0x74,0x69, + 0xfe,0x73,0x7f,0x4a,0x2d,0xcd,0x57,0xac,0xa9,0x5d,0x15,0xf7,0xbf,0x75,0x49,0xfe,0x6f,0xc9,0x68,0xf3, + 0xf5,0xd6,0xdd,0x75,0xd6,0xf2,0x6e,0x45,0x14,0xc9,0x68,0xff,0xf4,0xdb,0x5d,0xff,0xff,0xfe,0x49,0xe9, + 0xf2,0x7f,0xff,0xfa,0x7b,0x6b,0xed,0x67,0xdb,0x62,0xbf,0xe7,0xf3,0xd2,0x2c,0xf3,0xfe,0xdb,0x7b,0xdb, + 0x3b,0xeb,0x6e,0xfb,0x95,0xf9,0xff,0xf2,0xf9,0x5f,0xfd,0xee,0xc7,0xee,0xd9,0xdb,0xcd,0xb7,0xdd,0x1f, + 0xf9,0xf5,0x72,0x7a,0xfb,0xd3,0x0f,0xe7,0x66,0xfe,0xde,0xdd,0xbe,0x28,0xff,0xd5,0x39,0x1f,0xcf,0xdb, + 0xfd,0xf9,0x3b,0x37,0xf6,0xf6,0x7d,0xff,0x4b,0x7e,0x77,0xeb,0xfe,0xa9,0xbc,0xde,0xb1,0xd9,0xbf,0xbe, + 0xb7,0x7e,0x73,0x3b,0xfe,0x69,0x47,0xff,0xf6,0xff,0xe5,0xfe,0xcd,0xfb,0xf5,0x9b,0x9f,0xd2,0xdb,0xf3, + 0x4a,0x3f,0x1f,0xb6,0x27,0x13,0xfe,0x6f,0x6b,0x7c,0xa7,0xac,0xce,0xf4,0x9a,0x51,0x37,0x9b,0xb1,0x3f, + 0x9f,0xe9,0x6f,0x6b,0xa5,0xc4,0xf2,0xff,0xd9,0x6c,0x8a,0xdf,0xfd,0x49,0xfc,0xf3,0xab,0x67,0x79,0xe4, + 0x3f,0x92,0xbe,0xa4,0xd2,0x8a,0xdc,0xed,0x89,0xfc,0xf3,0x7b,0x67,0xeb,0x25,0xf8,0xf4,0xbd,0x3b,0xe5, + 0xde,0xe7,0xdf,0x8f,0xfc,0xfd,0xb2,0x7c,0xfb,0x64,0xf4,0xf7,0xff,0xdf,0xd4,0x49,0xe7,0x6f,0x8f,0xe4, + 0xef,0xbf,0x6f,0x2b,0xa5,0xbf,0x1e,0xf7,0xfb,0xfe,0x89,0xe7,0xed,0xf9,0xc4,0xef,0xef,0x6f,0xff,0xac, + 0xbf,0x7e,0x8e,0xff,0xfc,0x8a,0xcb,0xfd,0x8f,0xfd,0x7f,0xb6,0x4d,0xff,0xf4,0xdb,0x7c,0x57,0xc7,0x7f, + 0x9f,0x5c,0x9d,0xbe,0x3b,0x2c,0x6e,0xe9,0x9e,0xaf,0x93,0xdc,0x7b,0xa7,0xe3,0x4a,0x2b,0x95,0x7e,0xff, + 0x1f,0xfe,0xf9,0xbc,0x7d,0x32,0x6d,0xf1,0x58,0xee,0x77,0x45,0xe4,0x77,0xd8,0xd3,0xc9,0xbf,0x37,0xf6, + 0xa6,0x4d,0xbe,0x2f,0x1c,0x7f,0xc9,0x3c,0xbf,0xfa,0x9d,0xf1,0x3b,0x74,0xce,0xdb,0x49,0xaf,0xdd,0x9c, + 0x71,0xfc,0x96,0x7a,0x3f,0x6f,0xb6,0x24,0xef,0xf6,0xbc,0xf3,0xfa,0xc7,0x53,0xb1,0x2c,0xe4,0x56,0x3f, + 0x59,0x35,0xd4,0xe3,0xfa,0x25,0x16,0x4a,0x24,0xe3,0xb7,0xbe,0xed,0x77,0xdf,0x73,0xd7,0x28,0x9e,0xbe, + 0x5b,0xfb,0xee,0xd8,0xda,0x7e,0x25,0xee,0x51,0xcf,0x6f,0x5f,0x9e,0xb8,0xbe,0x54,0xd5,0xea,0xe4,0xc5, + 0x7f,0xe6,0x95,0x3f,0x7f,0x7d,0x51,0xf5,0x79,0x92,0xaf,0xf3,0x8c,0x3f,0xec,0x76,0xf7,0x63,0x9e,0xc5, + 0x1a,0xd7,0xcb,0xcf,0xbc,0x7a,0xed,0xbd,0x7b,0xbe,0x76,0x29,0x77,0x8d,0xd8,0xf3,0x3a,0xdc,0xad,0x17, + 0x9c,0xeb,0x94,0xc9,0x6a,0x97,0x65,0x73,0xc9,0xfb,0xcf,0xb2,0xbb,0x9f,0x11,0x3c,0xfd,0x59,0xe5,0x7b, + 0x9e,0xfb,0xea,0x8d,0x3c,0xec,0xad,0x25,0xdf,0xfe,0xea,0x93,0xb6,0xda,0x9e,0xa9,0x53,0x9d,0xea,0xf5, + 0x15,0xcb,0xfc,0xff,0xb1,0x68,0xaf,0xb6,0xb6,0x6b,0xb7,0xdb,0x9f,0xf9,0xe4,0x93,0xd1,0x27,0xaf,0xcf, + 0xfe,0x9d,0x7b,0x7c,0xab,0xe6,0xf6,0xfb,0xe9,0xfb,0x9e,0x7a,0x24,0x94,0x7a,0x3f,0x2d,0xf6,0x37,0x7b, + 0xe2,0x7c,0x9d,0xe6,0xf3,0x6f,0xe9,0x38,0xf5,0xf3,0xe4,0x92,0xaa,0xff,0xff,0xf7,0xdf,0x7f,0xb6,0x6f, + 0x1f,0xa5,0x36,0xee,0x76,0x5b,0x72,0x79,0x24,0xf2,0x71,0xe7,0xff,0xf7,0xff,0x6f,0xef,0xad,0xf3,0xae, + 0x9c,0xdf,0xcf,0xb8,0xd3,0x91,0xe4,0xf3,0x89,0xe4,0xff,0x8f,0xdf,0x73,0xb7,0xd1,0x37,0xbd,0xf3,0xf3, + 0x8e,0x3a,0xee,0x79,0x4b,0xfe,0x71,0x25,0x6e,0x77,0xd8,0xef,0xff,0xbb,0xe6,0xd6,0xb6,0xdb,0xd1,0xfb, + 0xeb,0xb9,0x44,0xaf,0xf7,0x3c,0x93,0xfe,0xfb,0xee,0x7e,0xdf,0x6c,0x7b,0x6a,0xeb,0xe7,0x3c,0xec,0x75, + 0xc5,0x12,0x4f,0xdc,0xf3,0xfa,0xdb,0xef,0xf1,0xff,0x7d,0xf9,0xe5,0x37,0xae,0xda,0x1e,0x7d,0xe6,0xee, + 0x9e,0x24,0xfd,0x91,0xff,0x9d,0xbe,0x3b,0x9f,0xbe,0x3f,0x1e,0x79,0x6f,0x5b,0xb4,0xfd,0x6a,0x7d,0xf9, + 0x93,0xc9,0xfb,0x92,0x71,0xfe,0xff,0xff,0xfc,0xdf,0xff,0xe7,0x9c,0xda,0xba,0xf9,0xb9,0x3a,0xad,0x7f, + 0x64,0xf5,0xfd,0x27,0x9c,0x7e,0xd8,0xff,0xff,0x37,0x9c,0x7f,0x3e,0xa6,0xf6,0xba,0xcf,0xc9,0x9f,0xef, + 0x8b,0xe7,0x1f,0xb1,0x27,0xe3,0xb5,0xe4,0xff,0xce,0xdf,0x9f,0xff,0xfb,0x37,0xf4,0xda,0x6e,0x56,0xa7, + 0x7a,0x5a,0xe7,0x1f,0x4f,0x4a,0x9d,0xfd,0x27,0x9d,0xce,0xff,0x9f,0xfe,0x3b,0x36,0x6c,0xdb,0x6c,0x5e, + 0xdb,0x1d,0xd9,0x3f,0x73,0xbf,0x4b,0x6d,0x8d,0xe4,0xff,0xbf,0xf8,0xf3,0xf7,0xff,0x76,0xde,0xd7,0xdb, + 0x89,0x53,0x7d,0xff,0x64,0xec,0x7f,0xe4,0x9d,0xbe,0xff,0x13,0xbe,0xff,0xe3,0xf9,0xbc,0xe3,0x9b,0x7b, + 0xdf,0xae,0x3d,0x5b,0xbf,0xc5,0x23,0xb1,0xe7,0xf4,0x76,0xdf,0xff,0xcf,0xdb,0x1c,0x7f,0x3e,0xfc,0x7f, + 0xed,0xbb,0xaf,0xbb,0x13,0xad,0xdc,0xe4,0x97,0xdf,0x93,0xca,0xfb,0x6f,0xfe,0x3f,0x7b,0xcf,0xe7,0x2d, + 0xbf,0x5c,0xe6,0xd5,0xb7,0xcd,0xf1,0xf7,0x63,0xfa,0x45,0x5e,0x49,0x3d,0x7f,0xb1,0xfc,0xee,0x6f,0xdc, + 0xff,0xf9,0xdf,0xe5,0xea,0x6f,0xdd,0xb6,0xdf,0xbb,0x6f,0xeb,0xa2,0xbd,0xe4,0x93,0xc9,0xdb,0xf3,0xff, + 0xc7,0x6f,0xf9,0xdb,0xe3,0x7a,0xc7,0xd6,0xd6,0xbb,0x5d,0xf2,0xf6,0xc3,0xfa,0x25,0x6d,0x91,0x24,0xf3, + 0xb7,0xe4,0xef,0xfe,0xc7,0x13,0xb7,0xff,0xf3,0xf9,0xad,0x9f,0x67,0xbb,0x65,0xee,0x9c,0xf2,0x4a,0xdf, + 0x14,0x4f,0xe7,0xef,0xc9,0xfb,0xfd,0xf7,0xe7,0x7d,0xff,0xfc,0xf3,0x5b,0x7f,0x5d,0xb6,0xdd,0x5d,0x31, + 0xe8,0xf7,0xfe,0xe5,0x75,0x8f,0xdf,0x75,0xff,0xdf,0x1d,0xc9,0xdf,0x7c,0x7e,0x27,0x76,0xd6,0xd3,0xdf, + 0xb1,0x37,0x4f,0xfa,0xe5,0x7f,0xb9,0x44,0xf3,0xfe,0xfc,0xff,0xf6,0x34,0xe3,0xff,0xd8,0xfe,0x79,0xed, + 0xbf,0x37,0xdb,0xe3,0xfd,0xbb,0x95,0xcb,0xff,0xe4,0x51,0xeb,0x7f,0xb9,0xe7,0x7f,0xbd,0xfc,0xf3,0xbf, + 0xf8,0xe2,0xdb,0xfb,0x6f,0x7e,0xcb,0xdb,0x77,0xeb,0x25,0xff,0xc4,0x95,0x91,0xdf,0x7f,0xcf,0xc7,0x7d, + 0xbf,0xff,0xfd,0xfe,0xfd,0xb7,0xf5,0xf6,0xeb,0xf6,0xff,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe, +}; +static constexpr VoiceClip usbSetupClip = { + usbSetupData, sizeof(usbSetupData), 8957, 8000, VoiceCodec::G72624 +}; +// "Shutting down" +static const uint8_t shuttingDownData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x72,0x38,0xb5,0x7b,0x9a, + 0x7f,0x58,0x9d,0xf6,0x3a,0xad,0xbb,0xd5,0x6c,0x7a,0xab,0x67,0x0e,0xc6,0x9f,0x96,0x26,0x1d,0xce,0xe7, + 0xaa,0x4e,0xaa,0x1b,0xce,0xc8,0xdf,0x51,0x87,0xef,0x96,0xaf,0x73,0xbe,0x47,0x2d,0xf6,0xfb,0x98,0xf6, + 0xfd,0x5e,0xb5,0x46,0xe3,0x7e,0x7c,0x92,0xa1,0xf3,0x6b,0xe9,0xdc,0xe5,0xb2,0xbd,0x55,0xf1,0x87,0xd3, + 0xc9,0xcf,0xf4,0x79,0xc4,0xd5,0x69,0xe6,0xae,0xb7,0x3d,0x2a,0xb3,0xbc,0xff,0x8d,0x9c,0xfd,0xfe,0xab, + 0xe3,0xf1,0x3b,0x6f,0xfa,0xfc,0xd7,0x8f,0x86,0xf3,0x8f,0xcb,0x1c,0x7e,0x5d,0x7e,0xb7,0xf4,0xdc,0x79, + 0xf0,0xe5,0xf6,0xb4,0xff,0x4e,0x35,0xe3,0xfa,0xdb,0xc3,0x7e,0xd8,0xf3,0xbd,0xdb,0xd7,0x89,0xfa,0xa3, + 0x0d,0xf7,0x2f,0xf6,0xbc,0xbd,0xd7,0xf4,0x99,0xff,0xbd,0x7e,0xb7,0xc7,0xf3,0xe1,0xbf,0xef,0xa9,0xc7, + 0xff,0xa6,0xdf,0xad,0x89,0x55,0xcd,0xef,0xff,0xd3,0xb9,0xef,0x15,0x7f,0x3e,0xbe,0x56,0x38,0x9d,0xcf, + 0xff,0xee,0x7e,0x38,0xff,0xa9,0xf5,0x5f,0x7a,0xa7,0x92,0x7f,0xa5,0x74,0x71,0x9e,0x9e,0xb7,0xa9,0x4f, + 0xf9,0xdb,0x7d,0x7a,0xf9,0xdd,0xe9,0xab,0xee,0x4f,0xfe,0x93,0xf1,0xa7,0xaf,0x9f,0xcb,0x1c,0x6d,0x2a, + 0xd4,0x4d,0x3a,0x93,0xe1,0x3a,0xf5,0xb9,0x3b,0x3f,0xd7,0xfb,0xac,0x69,0xe7,0xb4,0x4f,0xbb,0xe4,0x77, + 0x57,0x1e,0x49,0x39,0x5e,0xaa,0x9b,0x43,0xff,0xaf,0x1d,0x4f,0x4b,0x2d,0xef,0x5b,0x63,0xb9,0x57,0xfd, + 0xaa,0x34,0xe3,0x8f,0xa7,0x2d,0x55,0xe9,0x63,0xbf,0xab,0x95,0x89,0x5e,0x3e,0xb7,0xd3,0x7e,0xb3,0xd4, + 0x92,0x6b,0xc7,0xf3,0x6e,0xfe,0x9a,0x4a,0xa6,0x6f,0xb5,0xfc,0xfd,0xbe,0xcb,0xe3,0xb6,0xe7,0x13,0x39, + 0xcb,0xa9,0x09,0xb9,0x58,0x7f,0x25,0x43,0xe9,0xe7,0x65,0x39,0x2a,0xed,0x57,0xe6,0x9f,0xd5,0xe7,0x1a, + 0x75,0xff,0xfd,0x8e,0x7f,0x9c,0x7e,0x39,0x62,0xbf,0xbf,0x6e,0x6f,0x27,0x54,0x69,0xde,0x15,0xff,0xfa, + 0xaf,0x91,0x9f,0x2c,0x56,0x5f,0xfc,0x77,0x7c,0xd2,0x6b,0x25,0x13,0xbf,0xa5,0xfe,0x7e,0x3f,0x74,0xb1, + 0xa7,0xf5,0xea,0xf8,0xe3,0x72,0xe5,0x15,0xb7,0xc5,0x1b,0xfa,0xc5,0x55,0xff,0xe7,0x65,0xd6,0x46,0x1d, + 0x89,0x7b,0xac,0x7f,0x3b,0x12,0x79,0xdb,0x9f,0xff,0x87,0x6e,0x95,0xcc,0xd4,0xad,0x3b,0xe6,0x76,0x57, + 0x7f,0x76,0xfb,0xe5,0xbe,0xea,0xf3,0x5e,0x26,0x93,0x9d,0x27,0xfb,0xfe,0xff,0x7c,0x7d,0xff,0xac,0xb5, + 0xba,0xae,0xbf,0x7b,0xab,0xf5,0x55,0x1b,0xff,0x54,0xd8,0x56,0x33,0xfd,0xd7,0x27,0x9d,0x8e,0xd2,0xaf, + 0x8f,0x32,0xff,0xcb,0x3c,0xb3,0xca,0xf7,0xfd,0x69,0xd1,0x12,0x91,0x30,0xfa,0x76,0x34,0xfb,0xf6,0xe5, + 0x94,0x91,0xdd,0x7d,0x0e,0x9b,0xeb,0x09,0xc5,0xe2,0x8a,0xd8,0xd2,0x7a,0xd8,0xef,0xfe,0x97,0x5f,0xa6, + 0xe4,0xf6,0x4b,0x4c,0xf5,0xb2,0xbe,0xcb,0x77,0x28,0xf2,0xd9,0x3e,0xdd,0xb5,0xc7,0xef,0xfe,0xe7,0x94, + 0x91,0x27,0xf3,0xff,0x3d,0xbf,0xbc,0x93,0x1d,0x49,0x27,0xfd,0x91,0x25,0x23,0x8f,0xdf,0xed,0xcb,0x7a, + 0xeb,0x26,0x5f,0x14,0x7f,0xff,0x12,0x49,0x47,0x7f,0xb7,0xff,0xe6,0xf4,0xdb,0x4c,0xbe,0x44,0xec,0x4d, + 0x25,0x1e,0x4e,0xdb,0xfd,0xcf,0xcd,0xe9,0x76,0xb4,0x9e,0x49,0xdb,0x9e,0x7a,0x3f,0x9d,0xb7,0x3b,0xf3, + 0x9b,0xf7,0x5f,0x37,0x3f,0xf5,0xef,0x24,0xf2,0xbf,0x3b,0xde,0xb7,0xf5,0xb3,0xb5,0xda,0xff,0xcf,0x3e, + 0xfe,0xb9,0x2f,0xfc,0x77,0xc7,0x9d,0xfb,0x7e,0xfb,0xa6,0x3f,0x9c,0xbd,0xe4,0x9e,0x57,0xdf,0x1d,0x96, + 0x3e,0xa6,0xad,0xba,0x5c,0xb9,0xc4,0xdd,0xca,0xe4,0x9f,0xb1,0xff,0xf3,0xf6,0x6f,0x6d,0x74,0xa4,0x9d, + 0xd6,0xfb,0xa3,0xc9,0xfe,0xfe,0x77,0x3f,0xee,0xdd,0xf7,0x59,0x97,0x54,0x9d,0xbf,0x7f,0x93,0xf6,0xe7, + 0xfe,0x7e,0xc5,0xab,0xed,0xb3,0x12,0x71,0x3b,0x62,0xb9,0x3c,0xea,0xb7,0x38,0x9b,0xfb,0x77,0xdb,0x65, + 0x5d,0x54,0x6f,0xdd,0xfe,0xb1,0xd7,0x9e,0x72,0xdb,0x76,0xf6,0xb6,0x5f,0xca,0xab,0xed,0xbb,0xe4,0x9f, + 0xa9,0xff,0xf5,0xbd,0x2d,0x6f,0x74,0x9f,0x2f,0x91,0xbe,0xa3,0xd1,0x26,0xff,0x8e,0x27,0xef,0xda,0xde, + 0xe9,0x37,0xe7,0x23,0x7e,0x27,0x94,0x7e,0xff,0x7f,0xd6,0xfc,0xb5,0xbe,0xb2,0x7d,0xff,0x5f,0x7c,0x4e, + 0x45,0x6f,0xf7,0xf9,0x7f,0xff,0x6f,0xff,0xac,0xbf,0x7e,0x8f,0xf8,0x9c,0x8a,0x3f,0xfd,0xf1,0x38,0xfc, + 0xd9,0xc6,0xe9,0x77,0xff,0xaf,0xf7,0x3f,0xa2,0x4e,0x3f,0x63,0xcf,0xe7,0x37,0x8d,0xf6,0x6f,0x8d,0x47, + 0x7d,0xd5,0x45,0x1c,0x7e,0xfb,0xaa,0x7f,0x2d,0x7b,0xac,0x97,0xfa,0x49,0xdf,0x1f,0xca,0x47,0x2f,0xb6, + 0x3b,0xff,0xdb,0xc6,0xeb,0x2e,0xa7,0x13,0xf7,0xe7,0x12,0x97,0x24,0xed,0xfe,0xfc,0xf6,0xaa,0xbe,0x5b, + 0xb7,0xaf,0x1d,0xcf,0xc4,0xa2,0x4a,0xfb,0xff,0xbf,0x3d,0x9c,0x6f,0x96,0xdf,0xab,0xc7,0x7f,0xff,0xef, + 0xa4,0x49,0xe7,0xfd,0xc9,0x5f,0x9b,0xe5,0xb6,0xea,0x77,0xc7,0xfe,0x7a,0xe8,0x94,0x4f,0x27,0xfe,0x9e, + 0x3f,0xe9,0xb5,0xb7,0xed,0xff,0xc7,0xfe,0x49,0xe8,0x92,0x56,0x27,0x37,0x8f,0xfa,0x7d,0x37,0xd4,0xfc, + 0x7a,0xfc,0x93,0xca,0xc7,0x9c,0x71,0xa9,0xee,0x75,0x86,0xcd,0xfd,0x2b,0x2e,0x95,0x2b,0xf2,0xa9,0x3f, + 0xe3,0xb3,0x54,0xed,0x36,0x9b,0xef,0x91,0xe8,0xac,0x57,0xe7,0xfe,0x7e,0xff,0xe4,0xe9,0x3a,0xdd,0x67, + 0xfb,0x13,0xd1,0x3f,0xa3,0xf9,0xfc,0xff,0x4e,0xf9,0x9a,0xf6,0xbb,0x4c,0x61,0xe5,0x64,0x79,0x27,0x13, + 0xce,0x3f,0x2d,0xb2,0x74,0x99,0xaf,0x94,0xdf,0xc9,0xcc,0xe5,0xcf,0x2b,0x93,0xff,0x3e,0xfc,0xce,0x76, + 0xeb,0x67,0xb5,0x7e,0x4a,0xcb,0x93,0xd6,0x2b,0x9f,0xfe,0xfd,0x9c,0xec,0xf6,0x5d,0x6a,0xf9,0x13,0xd1, + 0xc8,0x92,0x4f,0x47,0x7f,0xfb,0x39,0xd9,0xec,0xba,0xe5,0xf1,0x3d,0x2d,0xc9,0xef,0x9e,0x57,0x3e,0x97, + 0xca,0xb7,0xd9,0x6c,0xe7,0x73,0xfa,0x38,0xf2,0x57,0x24,0x9e,0x77,0x2f,0x17,0x3e,0xb3,0x68,0x7c,0x5f, + 0x1f,0xf9,0x35,0xf2,0x57,0x24,0xe3,0xde,0x4a,0x1f,0x2d,0x9f,0x18,0x7f,0x3f,0x1e,0x7a,0xe5,0x12,0xb1, + 0xfd,0x2c,0xf6,0x32,0xdb,0x76,0xdc,0x9c,0xb7,0x38,0x9e,0x4a,0x27,0xfe,0x73,0xc9,0x43,0xa6,0xb3,0xef, + 0xce,0x27,0xff,0xf9,0x3d,0x72,0xb9,0xff,0x33,0xde,0xca,0x6d,0x3e,0xdf,0xf2,0x7e,0x38,0xfe,0x49,0x5d, + 0x62,0x6a,0x79,0x1a,0xad,0xf3,0x6a,0x7e,0x3c,0xfd,0xff,0x3c,0x92,0x49,0xe7,0xf6,0x8b,0xdc,0xcd,0xa7, + 0xd5,0x5e,0x71,0xfb,0xfe,0x7a,0xe4,0xf2,0x79,0xec,0xa5,0xbe,0x9e,0x53,0x3f,0xab,0x65,0xba,0xa4,0xe5, + 0xfa,0xe8,0xf2,0x93,0x47,0x6b,0x6c,0xda,0xfb,0xff,0x3f,0xff,0xcf,0xe7,0x93,0xc9,0x3d,0xb2,0x71,0xb7, + 0x5b,0xa7,0xd7,0xee,0x71,0x3c,0x9e,0xb9,0x3c,0x9c,0x4b,0x2b,0xed,0x76,0xb7,0x5d,0xb1,0xdf,0xf2,0x49, + 0xe5,0x72,0x79,0xfc,0xb7,0xce,0xdb,0x6b,0xb5,0xdb,0x1d,0xff,0x27,0x92,0x4f,0x5c,0xf2,0x72,0x68,0xeb, + 0xf5,0xf7,0x6b,0xf6,0x38,0xfe,0x79,0x27,0x92,0x72,0xc7,0xf6,0xce,0xdb,0xdf,0xae,0xdb,0xd3,0xff,0xe4, + 0xf2,0x4f,0xeb,0xfe,0x77,0x4d,0x7d,0x3f,0xde,0xed,0xb7,0xff,0x13,0x97,0x3c,0x93,0xce,0x3c,0xee,0xd7, + 0xf3,0xef,0xbe,0xbb,0x1a,0x79,0xdc,0x93,0xf9,0x3c,0xe3,0x8e,0xc9,0x9d,0x6f,0xd8,0xed,0x7e,0xfc,0xf3, + 0xf9,0x3c,0x9e,0x4e,0xff,0x1d,0xdb,0xfa,0xef,0x4f,0xbe,0xef,0xcf,0x3c,0xf2,0x4f,0x27,0x13,0xfe,0xfc, + 0xb3,0x7c,0xde,0x9b,0xf5,0xf8,0x9c,0x4f,0x24,0x93,0xcf,0x3f,0x73,0xba,0x7b,0x4d,0xb7,0xdb,0xdd,0xb9, + 0x3c,0xe2,0x49,0x3c,0x9f,0xf9,0xdf,0x27,0xbd,0x9e,0xf3,0xf6,0xdb,0x9e,0x8f,0xe7,0x92,0x7f,0xff,0xff, + 0xbe,0x6b,0x6b,0x76,0x3f,0x6d,0xb7,0x5f,0xac,0x79,0x24,0xf3,0x8e,0xff,0x72,0xfe,0xb6,0xfc,0x76,0xdb, + 0x7e,0x4f,0xe7,0x9e,0x4a,0xff,0x9d,0xff,0xed,0x5f,0x6e,0xdf,0xfd,0xb6,0xfd,0x72,0x71,0xe5,0x72,0x71, + 0xdf,0xfc,0x9f,0xba,0xeb,0xbf,0xdb,0x5f,0xf9,0x3f,0x9c,0x4a,0xe4,0xe3,0xff,0xe5,0x2d,0xbc,0xdb,0x1f, + 0x7e,0xa7,0x15,0xcf,0x38,0x92,0x4f,0xdf,0xff,0xca,0x5e,0xdd,0x76,0x37,0xeb,0xff,0xe8,0xfe,0x79,0xeb, + 0x9f,0xff,0xdc,0xbe,0x7e,0xbe,0xef,0xf5,0xdf,0x7c,0xbf,0xfc,0xf2,0x4f,0xe7,0xef,0xc9,0x6b,0xeb,0xbd, + 0xfb,0xed,0xa9,0xc4,0xfe,0x71,0xe4,0x93,0xce,0xc4,0xe4,0xf7,0xfb,0x5f,0x8d,0xda,0xed,0xce,0x5c,0xe3, + 0xca,0xe4,0xe3,0xb7,0x29,0x1d,0xfd,0xb8,0xdf,0xad,0xfb,0x9e,0x4f,0x3c,0xf5,0xcf,0x3f,0xee,0x97,0x27, + 0x6d,0xb7,0xdb,0x5f,0xb1,0xc4,0xfe,0x79,0xe4,0xfe,0x71,0xa9,0x13,0xfe,0xda,0xff,0x7d,0xfb,0x7f,0xd7, + 0xc4,0x93,0x91,0x3f,0x9d,0xdf,0x27,0xed,0xef,0xde,0xfb,0xef,0x3b,0x93,0xff,0x27,0x93,0xfe,0x38,0xa2, + 0x7f,0xdb,0x7d,0xbe,0xbb,0x7c,0x71,0xe4,0xf3,0xca,0xff,0x9f,0xbb,0xe7,0xff,0xa9,0xd7,0xeb,0xef,0xdf, + 0xf3,0xf9,0xe4,0x9e,0x7f,0x3f,0x22,0xbf,0xfb,0x7f,0xee,0xdb,0xed,0xf1,0xc7,0xac,0x49,0x3c,0xf3,0xf1, + 0x7f,0x1f,0xfd,0x3a,0xfd,0x7e,0xfb,0xe3,0xf9,0xe7,0x9e,0x79,0xff,0xf4,0x4e,0x3b,0xfd,0xf6,0xdb,0x1d, + 0xbf,0xc6,0xf4,0x7f,0xfc,0x9f,0xff,0x5c,0xe2,0x77,0xfb,0x7f,0xb6,0xfb,0xfd,0xce,0x3c,0x9e,0x49,0xe4, + 0xf2,0xce,0x3f,0x6e,0x6e,0xfb,0x7d,0xf7,0x3b,0xf3,0x89,0xff,0x9e,0x71,0xc9,0x6d,0xff,0xdf,0xed,0xfe, + 0xff,0xff,0xff,0xe7,0xf3,0x8f,0xe7,0x7e,0x59,0xa7,0x6f,0xfe,0xfb,0x9f,0xb9,0xc7,0xe3,0xff,0xff,0xf3, + 0xf1,0xf9,0xef,0xf7,0xca,0x77,0xed,0x44,0xfa,0x79,0xbd,0xef,0xf7,0x38,0x9f,0x16,0xf5,0x98,0x7e,0x2e, + 0x72,0x76,0x7b,0x1c,0xb7,0xd9,0x7a,0xae,0x29,0x78,0x72,0xc7,0x45,0xff,0xb7,0x92,0x9c,0xfc,0xfe,0xf6, + 0x39,0x5f,0xf1,0xf1,0x6d,0xd2,0xf5,0x53,0xa7,0x25,0x7d,0x39,0xef,0x9d,0xbd,0xe4,0x99,0xcd,0x35,0x6a, + 0x73,0xe9,0x6f,0xbd,0x87,0xff,0xf4,0xe7,0x12,0x8e,0xfc,0x9e,0xb6,0x3b,0x93,0xf7,0xd9,0x2c,0x91,0xd3, + 0xe9,0x6e,0xbd,0x6c,0xb9,0x25,0x65,0xf1,0xc7,0x73,0x8a,0x25,0x3e,0x4d,0xdb,0x5e,0xf7,0x7e,0xdf,0x27, + 0xd3,0x13,0xd2,0x29,0x1e,0x4f,0xff,0x6a,0xab,0x58,0x9d,0x6e,0x9b,0xdf,0x89,0x28,0x94,0x4e,0x3f,0x7f, + 0xbe,0xf9,0x3c,0x7e,0xbb,0x4d,0xf7,0xe8,0xf4,0x49,0xe7,0x1f,0xbe,0xff,0x1a,0xce,0x27,0x5b,0xe6,0xfb, + 0xf2,0x7a,0x3c,0xf3,0xff,0xc7,0xff,0x4e,0x6f,0x7f,0xae,0xd3,0x1d,0xca,0x3d,0x7c,0xbf,0xdc,0xff,0xff, + 0xc7,0x35,0x4f,0xd3,0x6b,0x8e,0x3d,0x1e,0xbf,0xfc,0xee,0x7f,0xff,0x53,0x9b,0xdc,0xdb,0x75,0xcb,0x74, + 0x96,0x3f,0xf3,0xff,0x3f,0xfd,0xb7,0xed,0xe3,0xec,0xd6,0xd4,0x79,0x47,0xf3,0x79,0x3c,0xf3,0xbf,0xfb, + 0xe6,0xf1,0xf2,0xdd,0x6a,0xe4,0xaf,0xb9,0xdc,0x92,0x4f,0xdf,0xed,0xfb,0x74,0xfb,0x6c,0xd5,0xff,0xc9, + 0xf8,0xc2,0x49,0xfd,0x53,0xb6,0x3d,0x33,0x55,0xb6,0xfb,0xd7,0xfc,0xfa,0x7f,0x25,0x7e,0x77,0xdf,0xe3, + 0xdb,0xa7,0xdb,0x75,0xab,0xe3,0x56,0xc7,0x95,0xd6,0xe7,0x7f,0xce,0x29,0x9a,0x74,0xb4,0xdc,0xbf,0xff, + 0xee,0xb9,0x2b,0xfc,0x77,0xe7,0xfe,0x99,0xa7,0x4b,0xb6,0xc7,0xed,0xfe,0xe5,0x72,0xbf,0xfc,0xee,0x4f, + 0xc9,0xaa,0x6e,0x9f,0xdc,0x4f,0xb8,0xee,0x49,0xe8,0xfd,0xc9,0xe7,0xff,0xdb,0xdb,0xdb,0x3e,0xbc,0xfd, + 0x4e,0xfc,0xa3,0xcf,0xfb,0xac,0x79,0xfe,0xb7,0xb7,0xb6,0x63,0x7f,0xfe,0xe3,0xb9,0x47,0xf3,0xff,0x27, + 0x9e,0x76,0x6f,0x7b,0xb4,0xc7,0x7c,0x7c,0xdc,0x9e,0x8f,0xfc,0xfc,0x49,0xff,0xfc,0x5b,0xba,0xeb,0x39, + 0xdf,0x7d,0x3f,0x27,0xa3,0xbf,0x3f,0x95,0xfe,0xff,0x37,0xf5,0xde,0x53,0x8d,0xde,0xdc,0x4f,0x24,0xfc, + 0x4f,0x24,0xad,0xff,0xcd,0x9b,0x6f,0x97,0x1f,0xa9,0xb7,0x72,0x7a,0x3f,0xe2,0x79,0x27,0x9d,0xff,0x6e, + 0xe9,0xec,0xdc,0xf8,0x6f,0xb9,0x72,0x7a,0xf8,0xf4,0x4a,0xe7,0x63,0x8b,0x7a,0xdf,0x6d,0xeb,0xdf,0x7d, + 0xc4,0x93,0xd6,0xff,0xae,0x49,0x3b,0xff,0xdb,0xfa,0xef,0x67,0xe7,0x6d,0xb5,0xe7,0xae,0x4f,0xc7,0x92, + 0x49,0xff,0x1d,0xdb,0xfe,0x7f,0x36,0xeb,0x5d,0xf5,0xfd,0x1e,0xb9,0xfc,0x92,0x49,0xff,0xff,0xcb,0x77, + 0xd3,0x6c,0xeb,0x6d,0x4d,0xdf,0xae,0x4f,0x38,0xf2,0xb2,0xff,0xef,0xff,0x6f,0x79,0x55,0xbb,0xaf,0xae, + 0xfb,0x9e,0x8f,0x3f,0xf2,0x49,0x3c,0xef,0x8f,0xe5,0xb3,0x6e,0x37,0x42,0x7e,0xb4,0xd3,0x8a,0xe7,0xff, + 0xcf,0x47,0xaf,0xf7,0xfc,0xfc,0x5a,0xd6,0x7f,0xed,0x27,0xdb,0xbe,0x3c,0x93,0xf9,0xfc,0x92,0xb9,0xff, + 0xff,0xc9,0xd9,0xb5,0x67,0xdf,0x5c,0x7f,0x9b,0x63,0xfa,0xe4,0x9f,0xcf,0x44,0xfe,0x7e,0x38,0xff,0xf7, + 0x6f,0xd9,0xf1,0xb7,0x13,0xad,0xdc,0xf5,0xc9,0x3f,0x9e,0x51,0x3c,0xe3,0xbf,0xfc,0xef,0x93,0x5a,0x5d, + 0xfc,0xdc,0xfb,0xaf,0xe4,0x92,0x49,0xe7,0x92,0xb9,0xff,0xfc,0x77,0x3b,0xed,0x9b,0xf6,0xed,0xf5,0xfc, + 0x9b,0xaf,0x3d,0x1e,0xb9,0xff,0xf4,0x49,0xc7,0x7f,0xbf,0xff,0x1b,0x9b,0x3a,0xdd,0xfd,0xd8,0x9f,0x75, + 0xe4,0xae,0x49,0xe7,0xf2,0x57,0x38,0xfc,0x77,0xc7,0x7d,0xb7,0xed,0xfb,0x3e,0xfe,0xfe,0x4e,0xba,0x92, + 0x57,0xeb,0xff,0xf9,0x2b,0xf3,0xbf,0xfb,0xff,0xf7,0xbb,0x76,0xce,0xbe,0xef,0x76,0x5f,0xdd,0x4e,0x44, + 0xf2,0x4f,0xfc,0xf4,0x7f,0xff,0xff,0xbf,0xff,0x6b,0xbd,0x4d,0xfd,0x7e,0xde,0xfe,0x7f,0xd7,0x72,0x4f, + 0x24,0xf3,0xff,0x44,0xe5,0x4f,0xff,0x7c,0x7e,0xf7,0x7c,0x6b,0x67,0x5d,0xbf,0xde,0xac,0x7d,0xbc,0xae, + 0xbe,0x5c,0xe3,0x91,0x27,0x7f,0xff,0xc7,0x7f,0xf6,0xfb,0xff,0x93,0x7e,0xdd,0xb9,0xd4,0x9f,0xee,0xab, + 0x95,0x89,0x3f,0x9f,0xd7,0x3f,0xff,0xff,0xc7,0x7f,0xb6,0xfb,0xfd,0x93,0x6a,0x6f,0xf7,0xdf,0xf3,0x76, + 0xc4,0xf3,0xd7,0x3f,0x9e,0x49,0xff,0x9d,0xff,0x3b,0xff,0x7f,0xa7,0x7f,0xbe,0x6d,0xeb,0xbf,0xdb,0xf3, + 0xf5,0xd8,0xe2,0x4a,0xe7,0xf3,0xd6,0x5f,0x9f,0xf1,0xdf,0x9d,0xf7,0xf4,0xe3,0xb9,0xdd,0x36,0x6c,0xff, + 0xee,0x79,0xf7,0x7c,0x79,0x28,0xff,0xff,0x5c,0xf2,0x71,0xdf,0x9f,0xf7,0xdf,0x6f,0xfe,0x3b,0xef,0xdb, + 0x66,0x7d,0xf7,0xc4,0xfd,0x7e,0xfc,0xf4,0xb9,0xc4,0x93,0xca,0xff,0xff,0xff,0xff,0xef,0xbe,0xf8,0xd3, + 0xf1,0xf1,0xb3,0xb7,0xda,0xee,0xb6,0xdb,0xed,0xcb,0xe7,0xf2,0xb1,0x25,0x1f,0x8f,0xff,0x7f,0xf7,0xdf, + 0xef,0xff,0xc7,0x1c,0xda,0xf7,0xfb,0x75,0x5f,0x5d,0xfe,0xf9,0x2f,0xfa,0x3f,0xf2,0xb7,0xff,0x9b,0xff, + 0xfb,0xe3,0xbe,0xe7,0xee,0x4e,0x29,0xb7,0xb2,0xd7,0xef,0x7d,0xdf,0x6c,0x49,0xc5,0x25,0xca,0x2b,0x13, + 0xfd,0x34,0xeb,0xf7,0xdf,0x73,0x8f,0xe7,0x9e,0x9b,0xbc,0xfb,0xa7,0xf7,0x5f,0xf6,0xc4,0xfc,0x8a,0x25, + 0x15,0xc9,0x3f,0xe3,0xf6,0xfb,0x7d,0xb1,0xa7,0x7f,0xf9,0xe9,0x9a,0x91,0xbf,0x63,0x6e,0xda,0xef,0xbe, + 0xc4,0xfe,0x7a,0x3c,0xa3,0xcf,0x3f,0xf3,0xbe,0xc7,0x6d,0xf7,0xbf,0xe2,0xde,0xcb,0xfc,0x7f,0xd7,0x7f, + 0x77,0xfe,0xf3,0xff,0x3c,0x9e,0xba,0xfc,0xaf,0x96,0xe6,0x9d,0xf5,0xff,0xdf,0xf7,0x6f,0xe5,0xfd,0xfc, + 0xcd,0xee,0xbb,0x7f,0x0f,0x38,0x92,0x4f,0x44,0xfe,0xbf,0xfc,0xd3,0xb1,0xa7,0x7f,0xbf,0xfc,0xb5,0x7a, + 0x33,0x13,0xa6,0xfb,0x5c,0x77,0xab,0xfe,0x97,0x27,0xbf,0xf9,0xff,0xf3,0xb7,0xfb,0xfd,0xfe,0xc7,0xe2, + 0xde,0xcb,0x7d,0xf9,0x97,0xed,0x7f,0xf7,0xf2,0x7e,0x7f,0xa2,0x8f,0x3d,0x7c,0xb7,0xdf,0xef,0xb1,0xdb, + 0xff,0x93,0x54,0xad,0xf7,0xfa,0x6f,0xa7,0xdf,0xec,0x4e,0xeb,0x92,0x4a,0xc8,0x93,0xf9,0xff,0xff,0xf7, + 0xfb,0x7f,0xe9,0x6a,0xf2,0x7d,0xcb,0x4c,0x6e,0xbb,0xfd,0x89,0xc7,0xa3,0xc9,0x5f,0x93,0xce,0xe7,0xee, + 0x76,0xfb,0xfd,0xff,0xad,0xd2,0x71,0xa7,0xfb,0x0d,0xda,0x9d,0x7f,0x3f,0x95,0xc9,0x5d,0x7e,0x8f,0xc4, + 0xee,0x71,0xdb,0xfd,0xff,0xc9,0xfc,0xb9,0xdf,0x7b,0x6f,0xd6,0xff,0xb1,0xe7,0xf2,0x49,0x27,0x9c,0xbf, + 0xff,0xff,0x8e,0xfb,0xff,0xb1,0xcd,0xfd,0x0f,0xe7,0xef,0xff,0x3f,0x1d,0xf9,0xc7,0x7e,0x71,0xfb,0xfe, + 0x7f,0xfb,0xfe,0x7f,0xff,0x7f,0xcf,0xff,0xef,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe, +}; +static constexpr VoiceClip shuttingDownClip = { + shuttingDownData, sizeof(shuttingDownData), 7461, 8000, VoiceCodec::G72624 +}; +// "Restarting" +static const uint8_t restartingData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x92,0x49,0x77,0x25,0x14, + 0x92,0x24,0xf3,0xff,0xd7,0x6d,0xb5,0x4d,0xaf,0xbf,0xda,0x5b,0xb7,0xdb,0x12,0x91,0x29,0x22,0x7f,0x3f, + 0xeb,0xb6,0xdb,0x52,0xda,0xfb,0x9f,0x6c,0xdb,0x7b,0xb9,0x24,0xa4,0x91,0x27,0x93,0xaf,0xda,0xfb,0xb1, + 0xcd,0x9f,0xba,0xf6,0x7d,0x7e,0xbf,0x93,0xd2,0x4b,0xa2,0x79,0xdb,0x7b,0xaf,0xdb,0xff,0x9b,0x30,0xad, + 0xa9,0xf7,0x6f,0xbf,0xe5,0xf5,0xd1,0xe4,0xe3,0x7f,0xbb,0x7a,0x77,0xf9,0xbf,0x0a,0xf3,0xab,0xf7,0x3b, + 0x73,0xd7,0xe9,0x7e,0x55,0xff,0xed,0x4e,0xdf,0xff,0xfb,0x30,0xb3,0x2b,0xf3,0x9d,0xb1,0xfc,0xf4,0x49, + 0x44,0xee,0xb5,0xfb,0xcf,0xfe,0xe7,0x27,0x7a,0x53,0x9f,0x31,0xd7,0x9d,0x91,0xe9,0x74,0x4f,0x3f,0x63, + 0xaf,0xf7,0x9d,0xff,0x66,0x27,0x6a,0x32,0x9d,0x39,0xbc,0xf5,0x91,0x44,0x9f,0xcf,0xd7,0x79,0xff,0xa7, + 0xf2,0xe9,0x7e,0x93,0x2a,0x9b,0x7b,0xfa,0xc9,0x14,0x89,0x3c,0xfd,0xbd,0xfb,0xec,0x77,0x2f,0x66,0x69, + 0x52,0x9b,0x3e,0xb8,0x9c,0x8a,0x2f,0x9e,0xbf,0xc6,0xe3,0x7e,0xff,0xf2,0x56,0x2e,0xe7,0x37,0xb3,0xeb, + 0x8e,0xe9,0x74,0x8a,0x27,0xf3,0xb7,0xdb,0x7d,0xff,0xfd,0xee,0xfd,0x76,0x9d,0x37,0x9f,0xfe,0x57,0x49, + 0x12,0x79,0xfe,0x9b,0xf6,0xf8,0xe3,0x8b,0xc5,0x5e,0xed,0x33,0x7b,0x7f,0xc4,0xf4,0x51,0x47,0x9e,0x77, + 0xdb,0xed,0xff,0xff,0x97,0x8a,0xa5,0x4f,0xee,0xf6,0x9b,0xc9,0x25,0x14,0xbf,0x27,0xfd,0xbe,0xdf,0x7c, + 0x7e,0x6a,0xa5,0x57,0x87,0x5d,0x76,0xfb,0x2e,0x4a,0x25,0x65,0xce,0xfb,0xef,0xbe,0xe7,0x1e,0x5e,0x2a, + 0x2f,0x0e,0x86,0xef,0xbe,0x24,0xae,0x51,0x3f,0xfe,0x6f,0xdf,0xec,0x71,0x39,0x2a,0xfe,0x3e,0xfd,0x3e, + 0xbf,0x7c,0xb9,0x5d,0x13,0xcf,0x3b,0xec,0x69,0xdf,0xf3,0xfa,0x59,0x1a,0xb4,0xfa,0xed,0xb7,0xdc,0x92, + 0xb9,0x44,0xf3,0xb9,0xdb,0xd3,0x8e,0xe7,0x96,0x72,0x34,0xf9,0xf5,0xbb,0x6f,0xb9,0x3d,0x12,0x56,0x5f, + 0xee,0x76,0xf8,0xff,0xfa,0xc9,0x6e,0xf7,0x33,0xed,0x6f,0xb8,0xde,0x79,0xeb,0xf5,0xcf,0xff,0x9d,0xce, + 0x3c,0xfc,0xba,0x7d,0xea,0x4f,0x86,0xd3,0xb6,0xfa,0xaf,0x8f,0xfd,0x7c,0x4e,0x27,0xf3,0xf9,0x3b,0x94, + 0xea,0xf4,0xf3,0x0f,0xbc,0xdf,0x95,0xca,0x1f,0xfe,0x57,0x2c,0x7f,0xd5,0xee,0xbe,0xaf,0xe7,0xbe,0x5e, + 0xbf,0x4f,0xf9,0x29,0xcf,0xc5,0x4e,0x6e,0xca,0xe3,0xb7,0x56,0xaf,0x99,0xdc,0x9c,0xd6,0xe7,0xae,0xad, + 0x5b,0xfb,0x6a,0xd0,0xdf,0x97,0xa7,0xf2,0x96,0x5c,0x93,0xf6,0x3b,0xec,0xa1,0xd7,0x63,0xf2,0xb8,0x97, + 0xd7,0x95,0x22,0xec,0xc4,0xa3,0xf5,0x57,0x12,0x66,0x37,0xf3,0xa7,0xa4,0xf5,0x57,0x2b,0x22,0x4f,0x37, + 0x53,0xb1,0xbb,0x9f,0xf1,0xa5,0x63,0xce,0xda,0xf3,0xde,0x3f,0x2e,0x49,0x33,0x2d,0xf1,0xb3,0xe5,0xd3, + 0x8f,0xfd,0x9e,0xfe,0x7c,0xb7,0x57,0xfd,0xea,0xcb,0xdf,0xce,0x6a,0x9c,0xbe,0x37,0x1b,0xee,0xbd,0xa5, + 0xa2,0x27,0x9f,0x3f,0x5c,0xba,0x49,0xd9,0x6b,0xfe,0xab,0x5d,0xe9,0x7e,0xfa,0x92,0x58,0xda,0x7e,0xdf, + 0x4f,0xe9,0x46,0x64,0x51,0x3f,0x9c,0x4e,0xa7,0xd3,0xcd,0xc7,0x1e,0x76,0x2b,0x92,0x6e,0xa7,0x13,0xa9, + 0x5f,0xcf,0x4b,0xff,0xfe,0x5f,0xf4,0xd2,0x8e,0xfc,0xc5,0x8f,0x27,0x73,0xf9,0x5d,0x73,0xcf,0xb8,0xfb, + 0x7a,0x84,0xa3,0xcd,0xc5,0x9e,0x4d,0xbd,0x73,0xf4,0xc7,0x93,0xee,0x39,0x5f,0xb1,0xc8,0xe3,0xd9,0x26, + 0x4f,0xd7,0xd6,0x9e,0xf9,0xf8,0xfc,0x79,0xc7,0x43,0xf6,0xa6,0x6a,0x7e,0x7c,0xae,0xb2,0xff,0x93,0xb7, + 0xbf,0x6d,0xf6,0x3b,0x2e,0x71,0x58,0xf4,0xba,0xd7,0xa2,0x6e,0xa7,0x2f,0xbe,0x27,0x9e,0xb4,0xf8,0xe3, + 0xae,0xfb,0xfb,0xb9,0xd9,0xfe,0x7b,0xe7,0xef,0xf1,0xbf,0x1f,0xea,0xa7,0x2d,0xbe,0x27,0x9e,0x7e,0x5f, + 0xec,0x67,0xc7,0x65,0x8f,0xe6,0x9d,0xe9,0xc7,0x1d,0xf1,0xe6,0xfd,0xb1,0x7f,0x75,0xfa,0x3b,0xe3,0x89, + 0xfe,0x9f,0xcf,0x3a,0xfe,0xb9,0xf7,0xe4,0x7a,0xeb,0x73,0xcf,0x3f,0x72,0x49,0x3e,0xd7,0xf6,0x7e,0xdd, + 0xbf,0xfb,0x7f,0xff,0xff,0xf2,0x4f,0xe4,0x93,0xff,0xe5,0x1e,0x7e,0xdf,0x9d,0xfe,0xdc,0x9b,0xfa,0x3f, + 0xfd,0x7e,0xb6,0xed,0xf1,0xfb,0x93,0xff,0x29,0x23,0xd1,0xe7,0xe5,0xf9,0xe7,0x6f,0xb6,0xb6,0xed,0x7f, + 0xdb,0xf2,0x79,0x49,0x7c,0x49,0x67,0x7e,0x6f,0xf8,0xed,0xbe,0xdc,0xf3,0x56,0xab,0xfe,0x4d,0x2f,0xff, + 0xef,0x5c,0x9b,0xaf,0xe5,0x5a,0xef,0xec,0xce,0x8e,0x46,0xed,0x4e,0x79,0x52,0x67,0xa9,0x6d,0xff,0xcb, + 0xd5,0x0f,0xab,0x1d,0x8e,0x5c,0xfd,0xdf,0x47,0x3d,0xaf,0xaa,0xfa,0x9d,0x3b,0x1f,0xd5,0x7f,0xf9,0xc9, + 0xe7,0x6f,0x3f,0x26,0x1f,0x8c,0x3f,0xfc,0x7e,0x67,0xaf,0xec,0xff,0x2c,0x79,0xea,0xff,0x5e,0x54,0x98, + 0x69,0x34,0xaf,0xe3,0xf7,0xf3,0x6f,0x3f,0xb2,0x8f,0x37,0xed,0x7d,0xd7,0xe5,0xfe,0x44,0x9f,0x7d,0xdc, + 0xcf,0xce,0xcc,0xd5,0x9e,0xab,0x5f,0x1d,0x98,0x94,0x59,0xe4,0xfb,0x4f,0xfa,0x7b,0x37,0xdb,0x13,0x93, + 0xe8,0xa5,0xb1,0x26,0xed,0x76,0xbd,0xb3,0xbf,0xb2,0xed,0xb9,0x48,0x95,0xf7,0x3c,0xf2,0x7f,0xff,0x6d, + 0xf7,0xff,0x9f,0x9b,0x3b,0xeb,0x2e,0x3b,0x94,0xbe,0x47,0x6e,0x4f,0xe8,0xfd,0xb7,0xbb,0x9d,0xca,0xfb, + 0xb7,0xf6,0xd2,0xd2,0x7e,0x49,0x7c,0x4e,0xdc,0xa3,0xc9,0xfb,0x6f,0xb7,0x27,0xff,0xf3,0x6b,0x6d,0x6c, + 0xdc,0xf2,0x91,0xf4,0x9f,0xc9,0x47,0xe3,0xb6,0xdc,0xfe,0x7f,0xdf,0x16,0xfe,0xf6,0xd9,0x96,0x25,0x13, + 0xb1,0xfc,0xf2,0x4e,0xfb,0xed,0xcf,0xff,0xff,0xb7,0x6d,0x5f,0xed,0xd0,0x9f,0xd7,0x3f,0x62,0x79,0x27, + 0x9b,0xf7,0xff,0x9e,0x77,0xfb,0xfe,0xdf,0xbf,0x5b,0xa9,0x78,0xf3,0x8d,0xe4,0x93,0xf9,0xde,0x9f,0xce, + 0x3f,0xef,0x8f,0xed,0x9b,0x7d,0xbe,0x74,0xb7,0xdf,0x9d,0xca,0x3f,0x7f,0xf7,0xe4,0xe3,0xb1,0xfb,0x9e, + 0x5b,0x56,0x9b,0xbc,0xe8,0xfd,0x8e,0x5f,0x24,0x7e,0xf8,0xff,0x89,0xff,0x7c,0x7f,0xfc,0xa6,0xee,0xfa, + 0x7d,0x52,0xf7,0xfe,0x79,0xe9,0x6f,0xff,0x2b,0x73,0xf6,0xfb,0x93,0xb9,0xed,0xfb,0xfd,0xb7,0x74,0x76, + 0xe7,0xf3,0xca,0x3b,0x7f,0xff,0xc4,0xfd,0xb9,0xc7,0xfe,0x5b,0x77,0xef,0x76,0xc5,0x6d,0x8f,0xfc,0x92, + 0xbe,0xc7,0xe3,0xf9,0xff,0x63,0xff,0x3f,0x96,0xcc,0xfe,0xeb,0xb9,0x3a,0x9f,0xf7,0x24,0x9d,0xff,0xfb, + 0x9f,0xff,0xa7,0xee,0x79,0xed,0xbb,0xff,0xb7,0xfe,0x4e,0xcb,0xec,0x57,0x5f,0xff,0xf6,0x3c,0xe3,0xbf, + 0xfb,0x9e,0x7f,0x6f,0x43,0xed,0xf8,0xff,0xff,0x57,0x15,0xc9,0xe7,0xff,0x49,0xf8,0xff,0xf7,0xff,0x9c, + 0x9b,0xd4,0xf9,0x76,0x38,0xee,0x4d,0xa5,0x72,0x49,0xff,0x6e,0x7e,0x3f,0xfd,0xf7,0x3b,0x96,0xfd,0xca, + 0x59,0xf1,0xff,0x92,0x67,0x2b,0x92,0xb9,0xdb,0xf3,0xb9,0x3f,0x6d,0xff,0xfd,0xb7,0x7f,0x32,0xd3,0x8f, + 0xfd,0x7d,0x49,0x3d,0x15,0xfe,0xdf,0xef,0xcf,0xf8,0xef,0xf1,0xed,0xab,0xff,0x93,0x7f,0xff,0x45,0x5a, + 0x8e,0xe5,0x13,0xce,0xe6,0xfe,0x7e,0x3f,0xef,0xf7,0x4d,0xde,0xac,0x97,0xdd,0xf9,0x5f,0x72,0x76,0x64, + 0x92,0x7f,0xdb,0x7f,0xbf,0x3b,0xe3,0xbf,0x6f,0xe4,0xa4,0xba,0x6d,0xc9,0x3c,0xa3,0xb2,0x5c,0x94,0x7e, + 0xfb,0x6d,0x8f,0xdc,0xfc,0x6b,0x7f,0x25,0xe4,0xf6,0x6f,0xc9,0xe9,0x2d,0xd1,0x38,0xbf,0xf9,0xde,0xef, + 0xb7,0xc7,0xee,0x73,0x66,0xb5,0x65,0xf2,0xef,0xbf,0x25,0x1e,0x91,0xfd,0x9c,0x4f,0x34,0xfd,0xbe,0xdf, + 0x63,0xb3,0x7e,0xb5,0x67,0xd2,0xef,0xa9,0xe5,0x64,0xb9,0xe5,0x6e,0x4f,0xe4,0x9c,0x4e,0x3b,0xfd,0xba, + 0x7b,0xbe,0x6d,0x32,0x6b,0x36,0xfb,0x92,0xfa,0x28,0x92,0x4e,0xe7,0x7d,0xff,0xc7,0xff,0xca,0x3d,0x3c, + 0xb1,0xf7,0x69,0xad,0xba,0xed,0xf1,0xfc,0x92,0x49,0x27,0x9e,0x7f,0x38,0xff,0xdb,0xdd,0xef,0xfd,0xdb, + 0xc3,0x7f,0x8b,0x63,0xbf,0xe7,0x1f,0xce,0x46,0xba,0x4e,0x5b,0x9c,0x5b,0x8e,0xcf,0x8c,0xaa,0xe3,0xb7, + 0xe7,0x75,0x8f,0x67,0x2c,0xb1,0x57,0x9c,0x71,0xf4,0xfe,0x9e,0x2e,0xe9,0xec,0xc6,0x7e,0x76,0x5f,0x23, + 0xf9,0x58,0xaf,0xc9,0xfc,0xfd,0xff,0xc6,0x98,0xd6,0x7a,0xdd,0xec,0xf3,0x13,0xf6,0x78,0xbf,0xcf,0x3c, + 0xac,0x4f,0xfc,0xed,0xfe,0xff,0x6e,0xd7,0x7a,0xdf,0x2e,0xb7,0x9f,0xca,0xe5,0x73,0xd7,0xe4,0xf3,0xff, + 0xca,0xef,0x7e,0x3b,0x76,0xfb,0xfa,0xfb,0x77,0x9c,0xe2,0x51,0xcc,0xf2,0x4f,0x27,0x73,0xbe,0x3b,0x7d, + 0xbe,0xf7,0xb7,0x92,0xbb,0xd9,0x74,0xc7,0xfe,0x8f,0x4b,0x92,0x79,0x38,0xff,0xf7,0xd8,0xed,0xe9,0xc7, + 0x37,0xca,0xbb,0x69,0xbc,0xc7,0x72,0x4f,0x47,0x2e,0xb1,0x3c,0x9d,0xff,0xfb,0xea,0x76,0xfb,0x37,0xca, + 0xb8,0xcb,0x74,0xc7,0x72,0x4f,0x7f,0xae,0x7a,0xfc,0x9c,0x7f,0xdf,0xef,0xbe,0x34,0xe6,0xb3,0xd4,0xf9, + 0x7c,0xcb,0x6e,0x49,0x47,0x13,0xc9,0xff,0x9e,0x4e,0xff,0xfd,0xf6,0xff,0x7e,0xd7,0x7b,0x1b,0x37,0x9c, + 0xdc,0x89,0x2b,0x75,0xfa,0xe7,0xaf,0xd6,0xff,0xfd,0xf6,0x3b,0x7f,0x4b,0x5d,0xec,0x6c,0xda,0x65,0x7a, + 0xe4,0xad,0xd6,0x44,0x9e,0xb9,0x3b,0xef,0xbf,0xdf,0xef,0xfe,0xcd,0x67,0xe9,0xd2,0xe9,0x96,0xc8,0xf4, + 0x76,0x7b,0xac,0x51,0x24,0xee,0x77,0xdb,0x13,0x4e,0xff,0x64,0xf3,0x30,0xe9,0x6d,0xca,0xf4,0x4a,0xf5, + 0x7c,0x4f,0x64,0x92,0x71,0xdb,0xed,0xff,0xff,0xfd,0xe9,0x79,0x3a,0xb4,0xba,0x6f,0xb2,0xe5,0x1c,0x4e, + 0x27,0x24,0x4a,0xfc,0xef,0xf6,0xc7,0x73,0x4e,0xdf,0x66,0xbb,0xf9,0x59,0x6d,0xfe,0x95,0xca,0xa7,0xe3, + 0xc9,0x2b,0xaf,0xcd,0xff,0x7f,0xff,0xfb,0xed,0x7e,0x2f,0xb5,0x4e,0xbe,0xcf,0xb9,0x3c,0x9c,0x7d,0x3c, + 0x95,0xd1,0x3f,0xef,0xf1,0xdf,0x9d,0xf6,0xda,0xfc,0xdf,0x67,0x1b,0x7c,0xdb,0x72,0x79,0x35,0x5c,0xb2, + 0x5d,0x2e,0xa9,0xc7,0x1c,0x7e,0xfb,0x6d,0xbf,0xff,0x97,0xda,0x8e,0xcf,0x37,0xd9,0x64,0x6f,0x35,0x7c, + 0xc9,0x58,0xff,0xbe,0x3d,0x63,0xf7,0xbb,0x7f,0xfe,0x25,0xf4,0xe9,0xb3,0xcd,0xea,0xfc,0xe3,0xbe,0xcb, + 0xb3,0xd7,0x3e,0x9f,0xff,0x27,0xfd,0xb6,0xf8,0xee,0x77,0x68,0xbf,0xd4,0xd6,0x7d,0xbe,0xff,0xef,0xeb, + 0xe5,0x66,0x71,0xab,0xe3,0xcf,0xc7,0x7d,0x8e,0xff,0x9d,0xba,0x7d,0xfa,0xad,0xd3,0xea,0xb6,0x37,0xe2, + 0x7a,0x25,0x65,0xb9,0xe4,0xe5,0xb7,0xdf,0x63,0xbf,0xfb,0xff,0x9b,0x28,0xef,0x6d,0x9b,0xed,0xae,0xdb, + 0x12,0x97,0x2b,0x2c,0x57,0x27,0x1d,0xb7,0xff,0x1d,0xf6,0xfb,0x9c,0x9a,0x4a,0x9d,0x3d,0xaa,0xdf,0x76, + 0xa7,0xf4,0x51,0x3c,0xae,0x4f,0x3f,0x7d,0x8e,0xdf,0x7f,0x7f,0xe7,0x1e,0x9a,0x66,0x9f,0x3d,0xa6,0xef, + 0x37,0xa7,0xf7,0xc9,0xe5,0x72,0x49,0xf8,0xed,0xff,0xfb,0x7d,0xf7,0x3f,0xfe,0x59,0x6b,0x7f,0x0d,0xaa, + 0x63,0x3e,0xab,0xe5,0xca,0xc5,0x77,0xf9,0xf8,0xd3,0xb1,0xfb,0xdf,0xf1,0xfc,0xee,0x52,0x6f,0xed,0x75, + 0x9f,0x5f,0x37,0xbd,0x74,0x7a,0xfd,0x14,0xb1,0x3b,0xee,0x76,0x3b,0x6d,0xff,0x3b,0xff,0xd3,0x48,0xff, + 0x6e,0xbb,0xdd,0x67,0xbc,0xf2,0xb1,0x24,0x92,0xf1,0xff,0xfc,0x7f,0xdb,0xed,0xff,0xdf,0xff,0x93,0x48, + 0xe3,0xae,0xdf,0xdb,0xae,0xd8,0xfe,0x7f,0x3d,0x12,0x49,0x3f,0x9f,0xf7,0xd6,0xfb,0xb7,0xdb,0xfc,0x7b, + 0x6c,0xec,0x76,0xfb,0x6b,0xae,0xf8,0xfe,0x7f,0x5d,0x75,0xff,0x58,0xe3,0xbe,0xfb,0xfd,0x8e,0xf4,0x9c, + 0x73,0x67,0x9d,0xbe,0xf7,0xeb,0x76,0xff,0xfe,0x7f,0x2b,0xae,0x79,0x3f,0x9d,0xf6,0xf7,0xed,0xb7,0xfb, + 0xf3,0xcf,0x6d,0xa9,0xff,0xc7,0xed,0x7f,0xdc,0xff,0x89,0x24,0x93,0xcf,0xff,0x9f,0xbe,0xdf,0xfa,0x76, + 0xfc,0xee,0xbe,0x6d,0xef,0xbf,0xdc,0xed,0x3f,0xa7,0xff,0x89,0xcb,0xa3,0xd7,0xc4,0xff,0xfe,0xff,0x7f, + 0xb7,0xff,0x7f,0xf9,0xed,0xbd,0xbf,0xc7,0xfd,0xa7,0xfb,0xff,0xff,0xe4,0xf2,0x4f,0xe7,0xf3,0xf7,0xfb, + 0xef,0xb6,0xff,0xee,0x79,0xed,0xb3,0x69,0xf9,0x6f,0xaf,0xd9,0x6e,0x69,0xfd,0x75,0xc9,0xe7,0xf3,0xf1, + 0xdf,0x6f,0xf7,0xdf,0xe3,0x8f,0xe5,0xb3,0xb6,0xdc,0x9f,0xb5,0xdb,0x7e,0x76,0x34,0x93,0xc9,0xfc,0xfe, + 0xb1,0xfb,0xff,0xbf,0xf4,0xd3,0xbf,0xfd,0xb3,0xbd,0xfb,0x9e,0x6e,0xbb,0x7e,0x7f,0x3b,0xf2,0x49,0x3f, + 0x9f,0xcf,0xff,0xef,0xb1,0xdb,0x7d,0x79,0xf9,0xb5,0xef,0xdf,0x1e,0x6e,0xd7,0x7e,0xb7,0x38,0xe2,0xb9, + 0x27,0xfe,0x79,0xc7,0xed,0xff,0xd8,0xed,0xf7,0xe5,0xea,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc, +}; +static constexpr VoiceClip restartingClip = { + restartingData, sizeof(restartingData), 5866, 8000, VoiceCodec::G72624 +}; +#ifdef HAS_DRV2605 +// "Sound and vibration" +static const uint8_t alertsSoundVibrationData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x6f,0xa7,0xbc,0xbd,0x1c, + 0x79,0xb4,0x97,0xef,0xea,0x72,0x7d,0xf6,0x94,0xb6,0xd3,0x1f,0xc9,0xa5,0x5d,0xc9,0xea,0x9d,0x16,0x5a, + 0x9b,0xf9,0x78,0xfd,0xa2,0xf8,0xe5,0xb1,0xab,0x65,0x76,0x4f,0x7f,0xcd,0x3e,0xda,0xf6,0xfb,0x95,0xd2, + 0xcb,0xaf,0x75,0x3e,0xf2,0xa9,0xf3,0xfc,0x8e,0xa5,0x6e,0xff,0xfd,0x5f,0x96,0xba,0xd4,0x8f,0x26,0x52, + 0x4e,0xf6,0xf5,0xd7,0xf7,0x7e,0x5d,0xdf,0xef,0xcf,0x39,0x25,0xbd,0x98,0xf4,0xee,0xab,0x13,0x8e,0xbb, + 0xab,0xd7,0x74,0xfa,0x4e,0xd9,0xe2,0xb2,0xc7,0x65,0xfe,0x2a,0xad,0x77,0xc8,0xda,0x4e,0xef,0xf3,0xcc, + 0xfc,0x9f,0xff,0xfc,0xf5,0xd7,0x24,0xef,0xbf,0xde,0xb3,0xb6,0xc7,0x9e,0xad,0xcf,0x97,0x8f,0xfb,0x23, + 0xb1,0x38,0xed,0xbe,0x3e,0xe2,0x77,0x7b,0xff,0xf9,0xb7,0xab,0x7a,0x3b,0xdb,0x99,0xfc,0xe9,0x91,0xfb, + 0xdc,0x49,0x3f,0xd3,0xce,0xdc,0xea,0x4f,0xfb,0x1e,0x49,0xa5,0x6d,0xba,0x2b,0x73,0x1f,0x5e,0x1b,0x37, + 0x78,0xec,0x6f,0xe5,0xed,0x89,0x9f,0xad,0xf5,0xc5,0x7e,0x7c,0xa4,0x9d,0xed,0x38,0xdc,0xbf,0xb3,0x25, + 0xcd,0x3a,0xfe,0x8d,0xd9,0x5d,0xc9,0xbe,0xdd,0xd7,0xe6,0xde,0x55,0xfb,0x9c,0x7d,0xb9,0x5d,0x7e,0x3c, + 0x9d,0xbf,0xdb,0x94,0x7e,0xf7,0xa2,0x4e,0xf3,0xfe,0x7c,0x3b,0xd4,0xad,0x2a,0x95,0x66,0xbe,0xad,0x4c, + 0xd8,0x98,0x4e,0x39,0xff,0xf7,0x35,0x6d,0x4a,0x34,0xe5,0xbf,0xd6,0xae,0x6f,0xb8,0xed,0xca,0xdb,0x23, + 0x09,0x5b,0xeb,0x92,0xfc,0xfb,0x52,0x3b,0xea,0x92,0x3c,0xdb,0xc9,0x7e,0xd2,0xab,0xc4,0xdd,0x8f,0xa7, + 0xaf,0x5c,0xc7,0x1c,0x7a,0x7b,0x15,0xfb,0xd7,0x5f,0x97,0x3a,0xaf,0xd6,0xcf,0xae,0x8d,0xdf,0x7c,0x7d, + 0xb8,0xf6,0x65,0xca,0xbd,0xce,0xb8,0x9a,0xba,0x35,0x5a,0x71,0xa8,0xcf,0x4a,0x26,0xeb,0xd7,0x5f,0x6b, + 0xff,0x57,0x7d,0xfb,0x32,0xa3,0x52,0x96,0xea,0x5f,0xbc,0x92,0xf5,0xdb,0x2d,0x6f,0xf5,0x3c,0x72,0xf4, + 0xea,0x6a,0xdb,0x77,0x72,0xeb,0xb3,0xff,0xdc,0x92,0x49,0xfb,0x6b,0xef,0x89,0xef,0xa7,0xcb,0x65,0x76, + 0x4f,0xaf,0x27,0x49,0x69,0x79,0x65,0x7e,0x77,0x25,0x4c,0x76,0xcf,0xcf,0x97,0x2f,0x92,0x4e,0x44,0xf3, + 0xec,0xc7,0x75,0xfa,0x5f,0xd3,0x49,0xff,0x1f,0x6c,0xfc,0xbe,0x8f,0x57,0x92,0x66,0x37,0x55,0xa6,0xcf, + 0xb7,0x9f,0xf6,0xab,0xfc,0x37,0xee,0xba,0xf7,0xcf,0x97,0xa7,0xec,0x9e,0x5d,0x7b,0xed,0xf4,0xdb,0x69, + 0x2c,0xe6,0xbe,0xea,0x5b,0xf6,0x64,0xaf,0xea,0x3b,0x93,0xff,0xba,0xee,0x92,0x5b,0x2e,0x93,0x69,0x1b, + 0x65,0x92,0x5b,0x77,0x9f,0x92,0x93,0x27,0xa3,0xf9,0xfc,0x9f,0xb3,0x7f,0xfd,0x2d,0xb7,0x73,0xff,0x3f, + 0x93,0xc9,0x44,0xf3,0xff,0xfb,0xe6,0xff,0xda,0x5f,0xb7,0xe7,0xf3,0xff,0x28,0xa6,0x4f,0x3f,0x7c,0x76, + 0xed,0xff,0xad,0x9f,0x6e,0x4f,0xe7,0xff,0xdf,0x28,0x9e,0x7e,0xd8,0xec,0x5b,0xff,0xd9,0xbd,0xf8,0x93, + 0x5e,0xfc,0xf5,0xd1,0x38,0xfd,0x8e,0xff,0xb5,0xbf,0xb3,0x5f,0x79,0x3f,0xf3,0xb9,0x24,0xa3,0xfe,0x57, + 0xe2,0x69,0x6f,0x7f,0xad,0xde,0xfe,0xb6,0x5b,0xfe,0xf2,0x3d,0x53,0xf7,0xfc,0xee,0xdd,0xfe,0xd9,0xbd, + 0x3d,0x6c,0x7f,0xfd,0x13,0xd7,0xdf,0xff,0xf9,0xd9,0xbd,0xf7,0x97,0xef,0xbb,0xdb,0x9f,0xfa,0x27,0x93, + 0x4e,0x3f,0x1f,0xf3,0x7a,0xed,0xa6,0x38,0xe7,0xae,0xeb,0xf4,0x4e,0xe7,0x6e,0x4e,0xff,0xe6,0xfc,0xd7, + 0x4c,0x7f,0xc8,0xdd,0x91,0xe8,0x9f,0xb9,0xdc,0x9f,0xf1,0xcd,0xfd,0x2f,0x9b,0x93,0x56,0xda,0xa3,0xd1, + 0x3e,0x9c,0x7f,0x5f,0x7d,0xdb,0x32,0xdf,0x29,0xe7,0x7f,0x75,0x4b,0x22,0x4d,0xe7,0x9c,0xbf,0xdb,0xb6, + 0x65,0xbe,0x5e,0x7f,0xbf,0xdd,0xd1,0x3c,0x9d,0xf9,0x3c,0xf3,0xe9,0x6e,0xe8,0x6d,0x87,0x9b,0xb7,0xb8, + 0xa2,0x79,0x3f,0x13,0xcf,0xe7,0xd6,0xce,0x94,0xcb,0xb9,0xf7,0x7d,0xb1,0x2b,0xf5,0x8e,0xeb,0x9f,0xce, + 0x2d,0xf9,0x76,0xd3,0x13,0xae,0xdf,0xe2,0x8f,0xe7,0xf3,0x8a,0xc7,0x1c,0xda,0xb2,0x1b,0xa7,0x27,0x4f, + 0x8f,0xc5,0xf3,0x8f,0x3f,0xa2,0x4d,0x3d,0xbd,0x67,0xda,0xd2,0xb6,0xbb,0xff,0xd1,0x27,0x1e,0x7f,0x27, + 0xfd,0xdb,0x3a,0x6d,0xad,0xc8,0xfb,0x4e,0x3f,0xa2,0xb7,0xfc,0xf2,0x79,0xd9,0xb3,0xe6,0xdf,0x4e,0x79, + 0xb7,0x1f,0xc9,0x2b,0xe3,0xcf,0x3c,0xff,0x93,0x5a,0x6d,0xbc,0xfc,0x9b,0x77,0xfc,0xf4,0x79,0xc4,0xf2, + 0x4f,0x39,0xb3,0xed,0xfb,0x5d,0xcf,0xd7,0x7f,0xcf,0x47,0x9e,0x7a,0xe9,0x7f,0xdb,0x36,0xfb,0xfc,0xfc, + 0xed,0xa9,0xe4,0x9e,0x4f,0xe7,0xf5,0xcf,0xe9,0xbd,0xb6,0xde,0xec,0x7e,0xdb,0x72,0x79,0x3c,0xf3,0x89, + 0x28,0xfe,0xdf,0xd3,0xef,0xee,0x3f,0xed,0x79,0xe4,0xf3,0xcf,0xfc,0xf5,0xd5,0x6b,0x99,0xbe,0xf7,0x63, + 0xfe,0xbf,0x12,0x79,0xe4,0xff,0xc9,0x27,0xb7,0xfd,0xa6,0x9d,0x79,0xfb,0x6b,0xc9,0x3c,0xf3,0xce,0x3c, + 0x95,0x93,0x3a,0xcf,0x8d,0xc7,0x1f,0x75,0xe4,0x93,0xce,0x3f,0x9c,0x89,0xe9,0x9d,0x27,0xff,0x6f,0x8e, + 0xda,0xf2,0x57,0x3f,0x9f,0xf9,0x3d,0x76,0xee,0x9b,0x7f,0x7f,0xff,0x5d,0x8f,0x5f,0x9f,0xf9,0xfc,0x95, + 0xd3,0x56,0xd3,0x4e,0xdf,0xfd,0xae,0xfc,0xaf,0xce,0x3f,0xf2,0x7a,0x4c,0xdb,0x77,0x37,0xff,0xfd,0xd7, + 0x9e,0x4f,0x3f,0xf3,0xf9,0x45,0xbf,0xb6,0xfb,0xdf,0x8f,0xbe,0xfd,0xf9,0xfc,0xfe,0x7f,0x24,0x96,0xfe, + 0xd9,0x5f,0xa9,0x37,0xeb,0xfe,0xe7,0xf3,0xcf,0xe7,0xac,0x93,0xfb,0x53,0xed,0x38,0xeb,0xbe,0xff,0x13, + 0xff,0x3f,0x9e,0x7a,0x6a,0xfd,0xfe,0xd7,0xaa,0x6f,0xfb,0xec,0x4e,0xfc,0xff,0xf9,0xed,0xfd,0xff,0xda, + 0x1f,0xf6,0xf8,0xea,0x79,0xff,0x9e,0x71,0xe4,0xb7,0xf6,0x3a,0xdb,0xfe,0xbb,0x9d,0xb9,0xe7,0xf2,0x4f, + 0xe4,0xf4,0xd6,0xff,0x7b,0x0e,0xbb,0x53,0xe9,0xe7,0x9e,0x49,0x3f,0xaf,0xdb,0xdb,0xfd,0xad,0xfb,0x5c, + 0x76,0xfc,0x9f,0xc9,0x58,0x93,0xfa,0x7f,0xdf,0xee,0xb8,0xdb,0xf7,0xfb,0x93,0xf9,0x24,0xe5,0xce,0x4f, + 0xfd,0xbe,0xbb,0x7d,0x77,0xfe,0xaf,0xd6,0x25,0x7e,0x49,0xc5,0xfd,0xf6,0xda,0xfd,0xf6,0xff,0xff,0xc9, + 0xc8,0xf2,0x79,0x58,0xb3,0xa9,0xda,0xec,0x76,0xdc,0xef,0xd6,0x27,0xaf,0xcf,0xe7,0x14,0x76,0xde,0xeb, + 0xcd,0xdf,0xfd,0xfa,0xc4,0x93,0xf9,0x27,0x72,0xfe,0xc6,0xeb,0xf7,0xbf,0xfd,0x8e,0x27,0x92,0x7f,0x58, + 0xfe,0x96,0xdf,0x6d,0x7e,0xdb,0x9f,0xb1,0xfc,0xf2,0x79,0x27,0xf3,0xd3,0xff,0x7b,0xb6,0xdb,0xef,0x8e, + 0x3f,0x9e,0x79,0xe4,0xf3,0xfa,0x7f,0xfd,0xb6,0xde,0xfd,0xf7,0xfc,0xe3,0xd6,0x24,0xfe,0x7f,0xe9,0x63, + 0xf6,0xdb,0x6d,0xbe,0xfb,0x9e,0x79,0xe4,0xf2,0x79,0x38,0xa5,0xfe,0xf3,0x1b,0xf5,0x3b,0xe3,0xff,0x3f, + 0x93,0xcf,0xe7,0xe6,0x7e,0x3f,0x63,0x7d,0xdb,0xd3,0xbf,0xc4,0xe2,0x4f,0x3c,0xf2,0x57,0xc7,0xfd,0xf6, + 0xdb,0xe3,0x4e,0xff,0x9f,0xcf,0x3c,0x9c,0x4b,0xf8,0xed,0xbf,0xdb,0x7c,0x71,0xc7,0xe3,0xcf,0x3f,0xfe, + 0x7f,0x6a,0x7d,0xea,0xf7,0xe3,0x56,0xff,0xf3,0xb6,0x58,0xba,0xaa,0xcd,0xdf,0xb7,0x2a,0xf3,0xb7,0x54, + 0xfe,0x72,0xdf,0xaf,0x39,0x2d,0xdd,0x95,0x2e,0x9d,0xb1,0x54,0x9c,0xa9,0xf1,0x6e,0x7b,0xb8,0x93,0x95, + 0xab,0xdc,0x55,0x5f,0x73,0x7a,0xfb,0xdd,0xf3,0x3b,0xbd,0x4f,0xe5,0x9c,0x7e,0xf3,0x5c,0x7f,0x24,0xbe, + 0x49,0x37,0xbb,0xf7,0xd3,0xed,0x92,0xac,0xf3,0xd5,0xe6,0x7f,0xbe,0x27,0x12,0x7f,0xff,0x7d,0xd6,0xe5, + 0x72,0xf6,0xf6,0xcd,0xa1,0xf8,0x97,0x8b,0xe4,0xad,0x57,0xc4,0x9b,0x9e,0xdf,0x58,0x76,0xe7,0x9e,0xf7, + 0x5f,0x6f,0xbb,0xe4,0xf5,0xbe,0x9a,0xed,0x8e,0x28,0xa2,0x4f,0x3f,0x6d,0xf1,0x3f,0x93,0xff,0xd7,0x6b, + 0xbf,0xc9,0x22,0x8f,0x27,0x6b,0xf6,0x39,0x9e,0xf7,0xfb,0x5b,0xe9,0xc7,0x93,0xf9,0xc7,0x7f,0xc9,0x27, + 0xa4,0x69,0xf7,0x6b,0xa9,0xbf,0xff,0x8f,0xcb,0xf5,0xdf,0x27,0x2c,0x7b,0xdc,0xed,0xf6,0xbf,0xef,0xff, + 0xe7,0x73,0xfa,0xeb,0x23,0x8f,0xcd,0x53,0xee,0xda,0xd3,0xbf,0x3b,0x93,0x49,0xeb,0xa3,0x96,0xca,0x96, + 0x6b,0x96,0x7b,0x0f,0xfc,0x9b,0xd6,0xe8,0xae,0x96,0xe7,0xd5,0x5b,0xc4,0xcd,0x7e,0xc7,0x64,0x4e,0xdf, + 0x96,0x4f,0x7f,0x9d,0xbe,0x4d,0x55,0xad,0xba,0xf3,0x8f,0x5f,0x1f,0x91,0x7d,0x2e,0x71,0xb8,0xe6,0xf2, + 0xb2,0x6f,0x7f,0xc4,0xaf,0x7f,0x24,0xbe,0x97,0x3b,0xfa,0x7b,0x75,0x6b,0x36,0xb8,0xff,0xcf,0xa7,0xe2, + 0x5f,0x28,0x9d,0xfe,0x3d,0xba,0xb5,0x96,0xcc,0x7f,0xa8,0xdf,0xff,0x4c,0x92,0xbf,0xe7,0x7e,0xdf,0xe6, + 0xd9,0xa5,0xff,0xee,0xaf,0xff,0xe4,0x8a,0x27,0x13,0xf7,0xed,0x9c,0x75,0x96,0xcf,0xfe,0xff,0xef,0xff, + 0x48,0x92,0xb9,0xff,0xf2,0x99,0xe7,0xcb,0xac,0xfb,0x6e,0x76,0xf8,0xe4,0x89,0x44,0xf3,0x8f,0x3d,0xac, + 0x7e,0x97,0x4d,0xbf,0xdc,0xed,0xce,0xe8,0xa2,0x8f,0x27,0x7e,0x73,0x58,0xff,0x2e,0xb7,0x7f,0x8f,0xfb, + 0x1f,0xc9,0x45,0x1e,0x4f,0xff,0x96,0xf1,0xe6,0x6d,0xa7,0xfa,0x9f,0xef,0x3b,0x92,0x7a,0x27,0x93,0x8f, + 0xe9,0xf2,0x55,0xf7,0x5b,0xb5,0xdf,0xdf,0x8e,0xe7,0x9e,0x8f,0x3d,0x1f,0xd3,0x5c,0x93,0x7f,0xb6,0xfb, + 0xae,0xf7,0x1d,0xf9,0x3c,0x95,0xc9,0x5c,0xf4,0xcf,0x3c,0xed,0xed,0xde,0xeb,0xbe,0xdf,0xfc,0xb9,0xe5, + 0x12,0x49,0x3d,0x17,0xf1,0x37,0xed,0xb5,0xda,0xef,0xee,0x24,0xe2,0xbf,0x7c,0xf2,0x4e,0xc5,0x9f,0x55, + 0xdf,0x7f,0x71,0xdb,0xfc,0x79,0xe7,0x12,0x71,0xe7,0x13,0xbf,0xf9,0xad,0xb6,0xdb,0xef,0x79,0xd4,0xfe, + 0x7f,0x3c,0xf5,0xba,0xe7,0x9d,0x8f,0xc9,0xad,0xf5,0xb8,0xeb,0xf7,0xb9,0x52,0x79,0x39,0x73,0xf9,0x38, + 0xe3,0xb7,0xe5,0x9b,0xf5,0xb7,0x1d,0x4e,0xfb,0xf3,0xd1,0x3c,0x93,0xf9,0x3b,0xff,0xfe,0xf9,0xad,0xfd, + 0xd7,0x5f,0x71,0xbb,0xe3,0xc9,0x3c,0x93,0xc9,0xe7,0x73,0xbf,0xdf,0xb5,0xbe,0xba,0xef,0xae,0x37,0x1f, + 0xf9,0x27,0xf5,0xcf,0x3c,0xee,0x7e,0xfe,0xa6,0x77,0xf7,0x6d,0xae,0xfb,0x52,0x71,0xe4,0xf2,0x7f,0x5f, + 0xfc,0x4e,0xff,0x7e,0xd6,0xfe,0xfb,0xf5,0xd7,0xdf,0x8d,0x3d,0x1e,0x79,0x3d,0x63,0xff,0xc7,0x7f,0x9a, + 0xdc,0xed,0x7f,0xbb,0x6d,0x49,0xdf,0x93,0xcf,0x27,0x9f,0xff,0xff,0xe3,0xf7,0x6b,0x1b,0xed,0x3a,0xed, + 0xb7,0xfd,0x62,0x57,0x24,0xfe,0x7f,0xdf,0xef,0xbf,0xc9,0x9d,0x8e,0xdb,0xeb,0x71,0xdb,0xff,0xd7,0x27, + 0xf4,0x7e,0x3f,0xf3,0xb7,0xc7,0x16,0xae,0xff,0xdd,0x75,0xdf,0x7f,0xba,0xfd,0x75,0xcf,0x3f,0xfe,0x76, + 0xff,0xef,0xdb,0xbf,0x1f,0xe7,0xbe,0xfd,0xfe,0xe8,0xf3,0xd1,0x3c,0xe3,0xce,0xfb,0x1d,0xfe,0x2d,0x5f, + 0xcf,0xba,0xfb,0xaf,0xdb,0xe2,0x7f,0x47,0x2e,0x57,0xff,0xe3,0xf7,0xdc,0xb3,0xb9,0xe7,0x5f,0xb5,0xd7, + 0xfb,0xf2,0xfc,0xf2,0x7a,0xe4,0xff,0x8f,0xff,0x7e,0xce,0x38,0xfd,0xbe,0xbb,0x6d,0xef,0xe7,0x2f,0xc9, + 0xe4,0xf3,0xf9,0xc7,0x7f,0x8b,0x34,0xfd,0xef,0xf7,0x5d,0xf7,0xdc,0xe3,0xd7,0x3c,0xf3,0x96,0x38,0xef, + 0xfe,0x6f,0x7d,0xec,0xe6,0xed,0xfe,0xc7,0x9e,0x4f,0x3c,0x9f,0xce,0x3f,0x9f,0x89,0xad,0xe3,0xb4,0xbf, + 0xff,0x8e,0xf8,0x9f,0xfe,0x39,0x63,0xff,0xe7,0x2c,0x77,0xed,0xa9,0xf5,0x99,0x7c,0x7e,0xff,0x1e,0x75, + 0x3f,0xfe,0x7f,0xcb,0x1f,0xc9,0xad,0x9b,0x7f,0x98,0x9f,0xf6,0xdf,0x75,0xef,0xd8,0xe3,0xf9,0xfc,0xf3, + 0xf9,0xcd,0xaf,0x2e,0x98,0xef,0xef,0xd4,0xf2,0xf7,0xf8,0xfe,0x7f,0x24,0x93,0x96,0x6d,0x9b,0x37,0xda, + 0xe3,0xfe,0xff,0x93,0xf9,0x49,0x13,0xca,0xff,0xff,0xfb,0x6f,0xc9,0x76,0xd3,0xf2,0x7e,0xe7,0x92,0x4a, + 0x48,0xe3,0xf1,0xdb,0xe2,0xdb,0xb2,0x7f,0xb6,0x24,0x9f,0xb9,0x3c,0x92,0xcf,0xff,0x7f,0xbe,0x38,0xb6, + 0x64,0xa7,0x5f,0x8a,0x5b,0xec,0xbf,0x5d,0x2f,0xfd,0xe7,0x7f,0xce,0x4d,0xd9,0x3f,0xdb,0xf4,0xbe,0xd5, + 0x73,0xc9,0x27,0x6d,0xce,0x3f,0xff,0xdb,0xd6,0x53,0xaf,0xe5,0x1b,0xf7,0x58,0x9e,0xbe,0xfb,0x2d,0xff, + 0xe7,0x37,0xb4,0xbf,0xde,0x7b,0xdb,0xd2,0xb1,0x3d,0x7b,0xfe,0x58,0xff,0xcd,0x6f,0xd9,0x0e,0xdf,0xa5, + 0xee,0xc4,0x9e,0x49,0xdb,0x73,0xce,0x3b,0xfc,0xd9,0xb2,0xfb,0x4f,0x2b,0x5d,0xc9,0xe4,0x9f,0xe9,0xe4, + 0xff,0xff,0xc5,0xbd,0x6e,0xf3,0xf2,0x7d,0xd8,0x9e,0x49,0xff,0x65,0xf9,0xff,0xfd,0xdb,0xfa,0xef,0x69, + 0xe7,0xeb,0xfa,0xc4,0x93,0xb7,0x2b,0xfe,0x7d,0xf8,0xb6,0x66,0xfe,0xe3,0x89,0x98,0xf5,0x8a,0xff,0xee, + 0xb9,0xf8,0xfd,0xf9,0x6f,0x4d,0x7c,0xc7,0x9d,0x3f,0xe7,0x95,0xf7,0xc5,0x63,0xff,0xdf,0x9e,0xd9,0xba, + 0xed,0x0f,0xfb,0x43,0xf9,0xe5,0x5f,0xfa,0xfc,0xff,0xf7,0x5f,0xb7,0xad,0xfa,0x52,0x75,0xbc,0xd2,0x49, + 0xf4,0xe2,0x71,0x3b,0xd3,0xce,0x2d,0xd9,0x76,0x95,0x1d,0x69,0xfb,0xa2,0xaf,0xe7,0x9e,0x8e,0xdf,0xff, + 0xcb,0x76,0xed,0x26,0x5b,0x5c,0x74,0x24,0x9d,0x96,0xc7,0xbf,0xbf,0xfb,0x2e,0xd9,0x86,0xf9,0x8f,0xdf, + 0xe3,0x7a,0x24,0xe5,0xe9,0xeb,0xe3,0xf7,0xc4,0xf4,0xd4,0xf3,0xc8,0xbf,0xd8,0xf9,0xd7,0x58,0x9d,0x4f, + 0x58,0x9f,0xb7,0xe7,0x26,0xee,0xf6,0x4e,0xb6,0x27,0x5c,0xb9,0xeb,0xfb,0xff,0xfd,0x7f,0x8e,0xff,0xb7, + 0xf2,0xb6,0x63,0xb1,0x5b,0x63,0xf9,0x47,0xe3,0xf7,0x24,0xe5,0xbd,0x3f,0x36,0x71,0xd3,0x5f,0xb2,0xff, + 0x53,0xb2,0x24,0xe3,0xa9,0xfc,0xf3,0xf7,0xdf,0x16,0xf1,0x32,0xdd,0x69,0x5b,0xff,0xa9,0x3c,0x9e,0x69, + 0xdf,0x92,0x79,0xfb,0xfe,0xde,0x5e,0xdd,0x6d,0x5f,0x9f,0xfd,0x27,0x15,0xcf,0xfe,0x9f,0xfa,0xe7,0x7f, + 0x5b,0xfd,0xed,0x75,0xb5,0x52,0x7f,0xbc,0xde,0x89,0x3c,0xec,0x76,0x3c,0xfe,0x76,0x6f,0x17,0xe6,0xb2, + 0xe3,0xb2,0x5b,0xf3,0xb3,0xe4,0xaf,0xf1,0xbb,0xff,0xfa,0xdc,0xb7,0x5a,0x9a,0xcb,0x7e,0xdd,0x7f,0xff, + 0xbd,0x72,0xc9,0x3c,0xed,0xfe,0xfc,0xff,0xdb,0xc5,0xed,0x6c,0xb0,0xdc,0x49,0x58,0xaa,0x4f,0x28,0xbf, + 0xcf,0xdf,0x7d,0x8f,0xc4,0xb3,0xd1,0xba,0x69,0x6f,0xbc,0x92,0x7a,0x3c,0x9e,0xb9,0x27,0x9f,0xfe,0xfb, + 0x7d,0xfb,0x59,0x1f,0xec,0xf6,0xed,0xbe,0x27,0x92,0x49,0xe8,0xf4,0x49,0x3c,0x9a,0x6f,0xda,0xa6,0xb2, + 0xeb,0xdb,0xec,0xd7,0xeb,0xff,0x27,0x23,0xc9,0xe4,0xf3,0xc9,0xfc,0xff,0xff,0xc9,0x7e,0x4a,0xf3,0xed, + 0x6d,0xf7,0xdd,0xce,0x38,0x95,0x8f,0x5c,0xfe,0x4f,0x3c,0xf2,0x7b,0x7f,0x9e,0x7f,0xdb,0x5d,0x75,0xf7, + 0xee,0x7f,0xeb,0xae,0x79,0xff,0x9f,0x8e,0xff,0xfe,0xdf,0xe7,0x9f,0xb7,0xbe,0xed,0x7f,0xe6,0x93,0xd7, + 0x5c,0x93,0xcf,0xff,0xef,0xf7,0xfb,0xf6,0xce,0xe4,0xff,0xaf,0xf7,0x5f,0xbd,0x38,0x9e,0x79,0x24,0xf3, + 0xff,0xff,0xef,0xfe,0xf8,0xb3,0xff,0x5f,0xef,0xb6,0xbb,0x6b,0x8e,0xf7,0xf2,0x79,0x27,0xae,0x4f,0xeb, + 0xef,0xb1,0xdd,0x9a,0xb1,0x38,0xef,0xbe,0xdb,0xdf,0xbf,0xdf,0xff,0xc9,0xe7,0xf2,0x79,0xf8,0xef,0xfe, + 0x2f,0xe3,0xcf,0xff,0x7f,0xf6,0xdb,0xef,0xb1,0xff,0xe2,0x4f,0xe7,0x9c,0xb6,0x3f,0xee,0x71,0x7f,0x2f, + 0xf7,0xfb,0xef,0x7e,0xff,0x7c,0x7f,0x3c,0x9f,0xc9,0x39,0x63,0xf7,0x3b,0xff,0xf3,0x3b,0x9f,0xbe,0xfb, + 0xdf,0xbf,0xdf,0xfc,0xb7,0x58,0x9c,0x4f,0x38,0xfe,0x7f,0xe6,0x9f,0x9b,0xd4,0xff,0xf7,0xf8,0xd2,0xf5, + 0xd5,0x9c,0x6a,0xff,0x18,0xb7,0x57,0x9e,0x67,0x3c,0xd3,0xfe,0x3f,0xa8,0x95,0xde,0xb5,0xbe,0x3a,0x13, + 0xb7,0xfb,0x1a,0x59,0xb5,0x3f,0xb1,0x3e,0xa5,0x7f,0x9c,0xaf,0x39,0x3e,0xff,0x7a,0xf3,0x62,0x4f,0x47, + 0x12,0x6f,0x4d,0x5f,0xd1,0xd6,0xdf,0xfe,0xff,0xdd,0x8b,0xd8,0xff,0xda,0xb9,0x2e,0x8e,0xd6,0xeb,0xb6, + 0x38,0xfe,0x5b,0x7b,0x6d,0xad,0xb7,0x7f,0xb7,0x25,0x1e,0x49,0x27,0xfe,0x79,0xff,0xfc,0x9b,0x3a,0xeb, + 0x34,0xd7,0xe3,0xf9,0x29,0x2e,0xb9,0x27,0xfc,0x77,0xfb,0x7c,0xd9,0xf3,0xed,0x6c,0xdb,0x9f,0xfa,0x45, + 0x72,0x79,0x3b,0x7f,0xfe,0xdb,0xf2,0xd6,0xd4,0x9b,0x35,0xdf,0x9c,0x4a,0x5c,0xf2,0x7f,0xdf,0x7f,0xb7, + 0xff,0xf4,0xdd,0xf9,0x6d,0x77,0xff,0xfe,0x59,0x3b,0xae,0x6f,0xc7,0x7f,0xb7,0x26,0x26,0xa7,0xe7,0x68, + 0x71,0xf8,0x9e,0x8f,0xc4,0x9b,0xf1,0xfb,0xfd,0xff,0xf9,0x35,0x31,0x3a,0x5e,0x77,0xe4,0xa2,0x77,0x5f, + 0xde,0x7f,0xdf,0xff,0xbe,0x29,0x9b,0x97,0xb2,0x9f,0x79,0x28,0xac,0x49,0xdb,0x9f,0xbf,0xff,0xef,0xbf, + 0x4c,0xec,0xbc,0xbf,0x7a,0x4f,0x4b,0x2e,0x7e,0xc4,0xec,0x4f,0xdb,0xdd,0xeb,0x6a,0xf5,0xa6,0xdf,0x62, + 0x4a,0xe4,0x9f,0xb1,0x5b,0x15,0xf6,0xfb,0x6d,0x9b,0x50,0x9b,0xb6,0xf7,0x92,0x7a,0xeb,0xef,0xd6,0xc5, + 0x7d,0xff,0xbb,0x66,0xd5,0x2b,0x4c,0x6e,0xfc,0x9e,0x8f,0x3f,0x13,0x7a,0x3b,0x9f,0xb6,0xfe,0xb7,0xeb, + 0xdb,0x6d,0xaa,0xc4,0x92,0x7f,0xff,0xee,0x7f,0xe7,0x1a,0x77,0xc9,0xba,0x55,0xbe,0xe9,0xd6,0x2b,0xa3, + 0x8f,0xfb,0x9f,0xf9,0xfb,0xfd,0xf7,0x6e,0x95,0xa5,0xf6,0x73,0xc9,0x4b,0xf3,0xfd,0x3f,0xf3,0xce,0x3b, + 0xef,0x9b,0xbd,0xe9,0xbc,0x87,0x73,0xd1,0xe5,0x6c,0x7e,0xfd,0x63,0xce,0xdf,0xf6,0xeb,0x53,0x69,0x76, + 0xf8,0xa2,0x8a,0x38,0xfd,0xf1,0xf9,0x7f,0xbf,0xdd,0xaa,0xd4,0xa6,0x5d,0xb6,0x28,0xf6,0x7f,0x3f,0x7f, + 0xff,0x3f,0xff,0xf1,0x6a,0xb3,0x3f,0x97,0x5f,0x51,0xe5,0xf3,0xce,0xfc,0xee,0x7f,0xe7,0x7f,0xdf,0xcc, + 0xc3,0xa5,0xd6,0xf3,0xca,0x44,0x93,0xb9,0xd8,0xff,0xce,0xff,0xf6,0x73,0x31,0x59,0x74,0xfb,0x9e,0x9f, + 0x2b,0x13,0xff,0xe7,0x1f,0xf1,0xc9,0xd6,0xaf,0xf2,0xe9,0x7e,0x24,0xa4,0x51,0xe4,0xef,0xfe,0x3b,0xff, + 0xcb,0xe5,0xec,0x6c,0xb6,0x7b,0xff,0x64,0xa5,0xd1,0xdf,0x9d,0xfe,0xff,0xe6,0xab,0x51,0x69,0x6c,0xdb, + 0x7c,0x91,0x48,0x95,0xfe,0x3b,0x1d,0x8f,0xe5,0xe2,0xf6,0x32,0xe9,0x6e,0xc7,0xa2,0x59,0x24,0xf3,0xf7, + 0xc7,0x6f,0xbb,0x35,0x9a,0xb4,0xd6,0x6b,0xb1,0xeb,0xb2,0x51,0xe7,0xef,0xbe,0xff,0x74,0xb2,0x5b,0xa9, + 0xb4,0xbe,0xd3,0x89,0x28,0x95,0xcf,0xff,0x7d,0xf7,0xc5,0x7c,0xcd,0x77,0x1b,0x7c,0xf8,0xe3,0xd2,0x24, + 0x93,0xff,0xdf,0x7d,0xf2,0x39,0x3a,0x4d,0xde,0x6f,0x3e,0xfc,0x92,0x51,0x5c,0xf3,0xf6,0x34,0xec,0xf7, + 0x7b,0xab,0x8d,0x9e,0xed,0xbe,0x5c,0x94,0x49,0x3c,0xfc,0x77,0xdd,0x7c,0x8d,0x7b,0x7d,0x75,0xa6,0xfa, + 0xb9,0x24,0x95,0xcf,0xe7,0xfd,0xfa,0xf5,0xfc,0xb6,0xf6,0xfb,0x76,0xdc,0xe2,0x51,0x44,0xae,0x7f,0xff, + 0xe6,0x73,0xfd,0xdf,0xef,0xb6,0xe3,0x69,0xe4,0xe2,0x8f,0x39,0x63,0xbf,0xef,0x67,0x8b,0x9c,0xfd,0x36, + 0xc6,0x7f,0x89,0xcb,0x3f,0xce,0x27,0x7a,0x9d,0x2a,0xaf,0x8e,0xfb,0x6b,0x54,0xe6,0x9f,0xcf,0x27,0x9f, + 0x96,0xe7,0xb8,0x9c,0x5e,0x9b,0xee,0x33,0xfa,0xb7,0xfc,0x9c,0xaa,0xc7,0x9c,0x73,0x71,0x29,0xf9,0xdb, + 0xd3,0xe9,0xf4,0xe7,0xa3,0xf8,0xc2,0x6a,0xff,0xc5,0xf1,0xaf,0xe3,0xbd,0x5e,0xf3,0x96,0xab,0xd3,0xff, + 0x3f,0xad,0xfe,0x75,0x7a,0xbe,0xfb,0xaa,0xbd,0x38,0xf8,0xaf,0x39,0x6d,0xff,0xdd,0x5c,0xb7,0x3b,0xf5, + 0x09,0xdb,0x3d,0xde,0x57,0x1a,0x8e,0x53,0x9c,0x6f,0x54,0xd5,0xea,0xdc,0xe3,0x89,0xc7,0xfd,0xf9,0xdf, + 0x9d,0xcd,0xf8,0xaa,0x6e,0x31,0x6d,0xeb,0xfc,0xe3,0xb1,0xdf,0xf3,0xcd,0xe4,0xec,0xaa,0xdb,0x93,0xba, + 0x9f,0x65,0x56,0xc7,0x1d,0x55,0x5c,0x9f,0xfe,0x3c,0xf3,0x95,0x35,0x6f,0xb1,0xeb,0xee,0xbf,0x5f,0x7d, + 0x8a,0x8b,0x9b,0xdd,0xe7,0xa9,0xf5,0x37,0x7a,0xbf,0xd4,0xfa,0xfa,0x37,0xc2,0x71,0xeb,0xe3,0x89,0xfc, + 0xef,0x8e,0xa4,0xf7,0xd6,0xea,0x9f,0x8e,0x26,0x9c,0x7d,0x28,0xbc,0xbf,0x25,0x5c,0x77,0xe4,0xa2,0xb7, + 0xdf,0xe3,0xf6,0xab,0xf5,0x8f,0x38,0xe7,0x8a,0xe4,0xa5,0x0f,0xe7,0x2e,0x96,0xa7,0xd3,0xd5,0xbf,0x15, + 0x96,0xfc,0x9f,0x5f,0x7f,0x9b,0xb9,0xd1,0x1b,0xb9,0x65,0x7c,0x52,0xc7,0x7b,0xbf,0xfe,0x7e,0xa6,0x24, + 0xf5,0xae,0x36,0xee,0xff,0xfb,0x62,0x6a,0xfc,0xe5,0xb9,0xc7,0x93,0xcf,0xeb,0x63,0xb5,0xcf,0xe3,0x8c, + 0xe7,0x73,0x79,0xe7,0xbf,0x7e,0xbb,0x7b,0x95,0xe8,0xec,0x96,0xf8,0xee,0x55,0xb9,0x2c,0xce,0x5d,0x72, + 0xbd,0xff,0xf5,0xae,0xd5,0x5e,0x89,0xad,0x6d,0xb5,0xe5,0x63,0x7e,0x2b,0x95,0xd6,0xff,0xe5,0x8c,0x26, + 0x93,0x7d,0x3f,0x3f,0xcf,0x3a,0x7f,0xed,0xfb,0xae,0x89,0xdb,0xec,0x6e,0xb4,0x9c,0x57,0xdf,0x9a,0xbd, + 0xfd,0x7e,0x77,0x5c,0xfd,0xe6,0x57,0xec,0x49,0x36,0x78,0x7f,0x3c,0x9a,0xf6,0xe5,0x5a,0x6f,0xa4,0x9c, + 0xaf,0xc5,0x1e,0xf7,0xc6,0xe9,0xe9,0x38,0xfc,0x66,0xfd,0x62,0x6d,0xdf,0xf6,0x6d,0xff,0x53,0xa7,0x3f, + 0x65,0xef,0xe7,0x5d,0x67,0xcc,0x97,0xf7,0xbc,0xf6,0x5a,0xff,0xed,0x36,0xba,0xdd,0x76,0xa5,0x24,0x99, + 0x27,0x7e,0x99,0x4b,0xfb,0x6c,0xdb,0x6c,0x76,0xf7,0xfc,0x72,0x45,0x14,0x7a,0xfc,0xe3,0xf1,0xff,0xef, + 0xbf,0xad,0x92,0x7e,0x96,0xcd,0xbf,0xc8,0xed,0xbe,0xe8,0x9e,0x97,0xff,0xfe,0x7f,0x27,0xef,0xf6,0xbf, + 0x7f,0xdb,0x4b,0x59,0xbe,0xbc,0x9f,0xd6,0xdb,0xfc,0x51,0x24,0x9d,0xff,0xfd,0x7f,0xcf,0xbb,0x7f,0x4f, + 0xc6,0x37,0xff,0xf2,0xff,0xb7,0x58,0x9d,0xa9,0x38,0xa4,0x7a,0x3b,0xf3,0xf9,0x27,0x7f,0xb6,0xf7,0xe5, + 0x7d,0x6f,0x9f,0xf4,0xd7,0x5c,0x8d,0x3f,0xdc,0x7f,0x29,0xf2,0x49,0xab,0x9e,0x4f,0xc7,0x7b,0xfe,0x34, + 0xfd,0x93,0x44,0xff,0x26,0xb6,0xaf,0xbe,0x53,0x75,0xc9,0x67,0xf5,0x8e,0x44,0xf2,0xb6,0xc7,0x6c,0x71, + 0xa7,0xd4,0xd1,0xc7,0x4b,0x7d,0xbd,0x7b,0xf7,0xb8,0xae,0x52,0x38,0xf3,0xba,0xeb,0x13,0xbe,0xfb,0xe3, + 0xfe,0xdf,0xd6,0xcf,0xea,0x6b,0x75,0xdc,0xf8,0x77,0xbc,0x95,0xd2,0xe7,0x93,0x89,0x27,0x1f,0xf6,0xff, + 0xef,0xfe,0xfb,0xe6,0xd7,0xea,0xdd,0x6d,0xbb,0xe9,0xf6,0xf8,0x95,0xca,0x27,0x95,0x96,0x5f,0x1c,0x76, + 0xff,0xed,0xf1,0xa7,0x1e,0xdf,0x3f,0xfb,0x71,0xb7,0xed,0x69,0xdf,0x72,0xbf,0x5c,0x92,0x49,0xc7,0xef, + 0xbf,0xdb,0x7d,0xb7,0x34,0xf5,0xdb,0x3f,0x93,0x7e,0xfb,0x5d,0xb4,0x34,0xef,0xd7,0xc5,0x13,0xd1,0xe7, + 0x9d,0xfe,0xfe,0xfd,0xef,0xc7,0x6e,0x79,0x6f,0xf2,0x7e,0xff,0xfb,0xbd,0xd7,0xd3,0xbf,0x3b,0x95,0xc9, + 0x25,0x62,0x7e,0x3f,0x7b,0xbe,0x9f,0xef,0xbf,0xfc,0xb7,0xf1,0xe7,0x72,0x6d,0x3a,0xeb,0xfe,0xab,0xec, + 0x49,0xe4,0xaf,0x91,0xff,0x9c,0x69,0xdb,0xec,0x76,0xff,0xfe,0x5a,0xbd,0x6f,0xff,0x37,0xfd,0x76,0xff, + 0x7e,0x76,0x24,0xf5,0xde,0x27,0x9f,0x89,0xdb,0xfd,0xb7,0xfb,0x7f,0x8d,0x4d,0x6e,0x6f,0xfc,0xa9,0xfe, + 0xbb,0x1d,0xb9,0x37,0xf2,0x79,0x47,0x9e,0xb1,0xe7,0xfd,0xfe,0xdb,0xef,0xbf,0xdb,0x96,0xff,0xfb,0x64, + 0x4d,0xa7,0x5b,0xf7,0xd5,0x7d,0x89,0xe7,0xa5,0xcf,0x58,0xf2,0x77,0xfb,0xdf,0xf6,0xa7,0x7d,0xfa,0x6b, + 0x2f,0xb1,0xeb,0x53,0xae,0xbb,0xea,0x77,0xf8,0xfe,0x4a,0xe7,0x95,0x89,0x38,0xef,0xf6,0xfb,0xed,0xfe, + 0xff,0xb7,0xb1,0xf7,0x12,0x6f,0xfb,0x43,0xbe,0xab,0x7c,0x4f,0xe4,0xae,0x49,0x38,0x93,0xbf,0xfe,0xff, + 0xb6,0xfb,0xef,0xdb,0xdc,0xed,0xf9,0xf7,0x63,0x36,0xf7,0x7f,0xfd,0x47,0xf2,0x51,0xe8,0xfe,0x56,0xff, + 0xfd,0xbf,0xd7,0xfd,0xe9,0xed,0xee,0x76,0x38,0x99,0x8e,0xbb,0xed,0x72,0xff,0xf5,0xfa,0x4b,0x22,0xbe, + 0x5f,0xfc,0x77,0xbf,0xdf,0xbf,0xa7,0x16,0xfe,0x57,0x6e,0xbc,0xff,0xdd,0xbf,0xbc,0xfd,0xca,0xf9,0x13, + 0xca,0x3f,0xf5,0xb9,0xc6,0xfd,0xfd,0xfb,0xff,0x9b,0xf8,0xfd,0x7f,0x36,0xfd,0xaf,0xfe,0xe5,0x8f,0xe8, + 0xfe,0x56,0x24,0xff,0xf9,0xd8,0xef,0x7f,0xdb,0x7f,0x4d,0x4d,0xee,0x76,0xfc,0xf9,0xfe,0xdb,0x1d,0x72, + 0xdf,0x93,0xf2,0x2b,0x95,0xcf,0x2b,0xe3,0xfe,0x3b,0xea,0x77,0xdb,0xb7,0x5f,0xdb,0xff,0xe5,0x37,0x6f, + 0xb5,0xe6,0x9c,0x56,0x25,0xfe,0x89,0xe4,0xf3,0x97,0xc6,0x9d,0xbe,0xfb,0x76,0xe9,0x3f,0x7d,0x8c,0xdf, + 0xeb,0xbe,0xdf,0xb3,0xaf,0xc4,0x9f,0xbe,0xe7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, +}; +static constexpr VoiceClip alertsSoundVibrationClip = { + alertsSoundVibrationData, sizeof(alertsSoundVibrationData), 10915, 8000, VoiceCodec::G72624 +}; +#endif // HAS_DRV2605 +#ifdef HAS_DRV2605 +// "Sound only" +static const uint8_t alertsSoundOnlyData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x6c,0xf6,0x75,0x99,0x2c, + 0x7f,0xd3,0xf4,0x6e,0xef,0x54,0x4e,0xfa,0xf4,0x8e,0xf3,0x1f,0xca,0xd9,0xed,0xc9,0xeb,0xe5,0x17,0x26, + 0x1d,0x8f,0x5f,0x9b,0xe1,0x54,0xe5,0xe9,0xdc,0xc3,0xb6,0xef,0xe3,0xd6,0xe6,0xd8,0x7d,0xfb,0x95,0xcb, + 0xe4,0xf5,0xbd,0xe7,0x62,0xbe,0x53,0x7d,0xd6,0xb9,0x7a,0xce,0xf9,0x6d,0xbf,0x9b,0x52,0x8f,0xe6,0xce, + 0x8f,0xfe,0x72,0x49,0xfa,0x9e,0x57,0x87,0xff,0xc9,0x3c,0xa5,0xff,0x97,0x92,0xf5,0xa4,0xd7,0x8f,0xdb, + 0x1f,0x56,0x5b,0x29,0xcf,0xd5,0xfe,0xb1,0xfb,0xc3,0xfe,0xe7,0x73,0x3e,0xfd,0x6d,0xd7,0xcc,0xe3,0xd5, + 0xc7,0x9e,0x7f,0xdb,0xf3,0xcf,0xe7,0xed,0xf1,0xbe,0x15,0xb6,0xbf,0x9e,0xb5,0xa8,0xf6,0x79,0xde,0xa3, + 0xf1,0x3f,0xfb,0xff,0xeb,0x6e,0x7d,0x67,0x7d,0xf2,0xd7,0x2f,0x79,0x5b,0xed,0x92,0xfc,0xfb,0x51,0x38, + 0xec,0x57,0x5c,0xdf,0xcf,0xdf,0xfb,0xd7,0xde,0xff,0xca,0xd9,0xfd,0xb9,0x44,0xd5,0x09,0x2a,0x7f,0x3f, + 0x7f,0x9c,0xb7,0x3d,0xfd,0xfb,0xdf,0xaf,0xbd,0xa5,0x1f,0xcd,0x9d,0x7f,0xbc,0x3c,0xfc,0x8e,0xf3,0x97, + 0xce,0x3f,0x72,0x55,0xf9,0xfc,0x4a,0xdf,0xdf,0xd1,0xcb,0x6e,0x57,0xa7,0x2c,0x7e,0xb9,0x6b,0xb7,0xe7, + 0xad,0xb9,0xdb,0xf4,0x4e,0xfb,0x13,0xd6,0xf7,0xfe,0x5c,0xff,0xe2,0xf5,0xeb,0x65,0xe6,0xbe,0xa5,0x56, + 0xdf,0xaa,0x5e,0x39,0x1d,0xfd,0x54,0xfd,0x4a,0x54,0xe5,0xf9,0xfa,0x92,0x7e,0xf5,0x6d,0xca,0x3b,0xf7, + 0x79,0x47,0x1d,0xbb,0x3c,0x9d,0x3a,0x3f,0x9b,0xd2,0x5c,0xe9,0xbf,0x4a,0x58,0xaa,0x38,0xdb,0x71,0xbc, + 0xf7,0x4e,0xa7,0x9f,0xd6,0x7e,0xe4,0x72,0x33,0x5d,0x89,0xde,0x7f,0xbe,0x87,0xff,0xcd,0xbf,0x6d,0xcd, + 0xbb,0x94,0xed,0xab,0x15,0x4e,0xbb,0xad,0x97,0x75,0x18,0x79,0xf9,0xdd,0xb3,0x2b,0xed,0x52,0x2b,0x79, + 0xcf,0x46,0x7d,0xf2,0x76,0xf3,0xbb,0xd3,0x6d,0x91,0xd8,0xfe,0x55,0xba,0xf3,0xbe,0x3b,0x32,0x4f,0x77, + 0xfb,0xf6,0x37,0xe6,0x62,0xe8,0x95,0xfe,0xdb,0x92,0x79,0xfa,0xfb,0xf6,0xb9,0xfd,0xef,0xc5,0x44,0x6e, + 0xed,0x15,0x25,0x45,0x7d,0x77,0x64,0xac,0x75,0xfd,0x58,0xb5,0xc5,0x4d,0xca,0xaf,0x95,0xd5,0xeb,0x9e, + 0x6c,0xbb,0xd4,0x79,0x47,0xd3,0xaa,0xff,0x73,0x6c,0xbf,0x34,0x5f,0x47,0x2e,0xb4,0x3a,0xda,0x65,0xc4, + 0xf6,0x8b,0xe6,0x73,0x8f,0x2b,0x2b,0xfe,0x36,0xd9,0x6e,0xb7,0xef,0xd2,0x29,0x33,0xd7,0xff,0x7d,0x2f, + 0xd9,0x7e,0x4b,0x68,0xfd,0x26,0xd7,0x7f,0xff,0xfb,0x9f,0xc9,0x24,0xf3,0xff,0x3b,0x96,0xff,0xd6,0x6f, + 0xb7,0x3f,0xf3,0xfe,0x45,0x24,0x4f,0x3f,0x53,0x76,0x6c,0xef,0xa6,0xdb,0x72,0x7f,0x3f,0xfe,0xb9,0x7c, + 0xf3,0xbe,0xdf,0xd4,0xd6,0xfe,0x5d,0xee,0xe4,0xfe,0x7e,0x24,0xf6,0x79,0xff,0xd3,0xbe,0xed,0xfc,0x74, + 0xdb,0x6c,0x4f,0xc4,0xd3,0xc9,0x25,0x63,0x8e,0xdc,0xee,0x5a,0xbf,0x59,0xbd,0xfc,0x9a,0x7f,0xdd,0x1e, + 0xba,0xa7,0xe3,0x89,0xdd,0xbd,0xbe,0xb3,0x1a,0x7a,0xf4,0xff,0xfa,0x3c,0xf3,0xb1,0xc7,0x1f,0xf3,0x7a, + 0xfb,0xa6,0xfb,0xf5,0xef,0xe7,0xf4,0x4f,0x3f,0x7e,0x7e,0x5f,0xd6,0xfe,0xdb,0x4c,0x77,0xeb,0xdf,0x8f, + 0xe9,0x1d,0xce,0xc7,0x9c,0x7f,0xc9,0xa9,0xae,0x94,0xfd,0xca,0xbb,0xf3,0xd2,0x3f,0x9f,0xb9,0x3f,0xf3, + 0x5b,0x3a,0xdd,0x2f,0x3b,0x1f,0xae,0x27,0x94,0x77,0xe7,0x72,0x4f,0xc6,0xb6,0xb5,0x9e,0x5f,0xfe,0x3e, + 0xea,0x4f,0x45,0x7c,0x7f,0x39,0x1d,0xf7,0x4d,0x5b,0x6c,0xb8,0xfd,0xfe,0xbb,0xa3,0xd1,0xff,0x1f,0xc9, + 0xe6,0x9a,0xd9,0xd6,0x99,0x7e,0x5b,0x7d,0xa9,0x24,0xf2,0x77,0xc4,0xf3,0xce,0xf9,0x35,0x6d,0x32,0xee, + 0xb6,0xfb,0xde,0xba,0xe4,0xff,0x89,0xe7,0x9f,0xb2,0x6b,0x4d,0xe5,0xd9,0x7b,0xbe,0xd8,0x95,0xcf,0x3f, + 0x13,0xd6,0x3f,0xe4,0xdd,0xb0,0xcd,0x09,0xfb,0x53,0x7e,0x64,0x9e,0x7f,0xc8,0x95,0x57,0xad,0x9f,0xaf, + 0xb6,0xfe,0x75,0xff,0x7c,0x91,0x3c,0xf3,0x89,0x27,0xe3,0x93,0x5a,0x53,0x3d,0xa8,0xeb,0xbe,0x38,0xa2, + 0x7f,0xe7,0xf2,0x79,0xdf,0x26,0xb4,0xbe,0xe9,0xd1,0xf6,0xfc,0x77,0x45,0x6f,0xf9,0xe4,0x9f,0xfe,0x6f, + 0xe9,0xee,0xd0,0x9f,0xe7,0xc7,0xe5,0xd7,0xff,0x9e,0x79,0x38,0xe2,0xd6,0xb7,0x6f,0x31,0xff,0x5d,0xff, + 0xe4,0x9f,0xce,0x5c,0x92,0x77,0x4d,0xed,0x7e,0xf7,0x73,0xf5,0xdf,0x9e,0xba,0xfc,0xfe,0xb3,0xe7,0xe4, + 0xd7,0xb7,0xdf,0x6f,0x3f,0x6d,0x8f,0xeb,0x93,0xff,0x3c,0xa2,0x79,0x6c,0xdd,0xb7,0xb7,0xe3,0xee,0xd8, + 0xf3,0xc9,0xe7,0xf3,0xca,0xe7,0x26,0xb5,0xa6,0xfb,0xb7,0x3b,0x5d,0xcf,0x5c,0xf2,0x71,0xfd,0x75,0x8b, + 0x5e,0x5f,0x4d,0xbf,0xff,0xae,0xe7,0xaf,0xcf,0x3f,0xfe,0xb9,0x3d,0xbd,0x6f,0xaa,0xed,0xcf,0xbb,0x62, + 0x57,0xe7,0x9f,0xce,0x47,0x96,0xbe,0x97,0xfd,0xa9,0xff,0xdd,0xba,0xe7,0x9c,0x4f,0xff,0xae,0x5a,0xf6, + 0x6f,0x8d,0xdc,0xfd,0x75,0x24,0x9e,0x7f,0x3f,0xf2,0x57,0x6f,0x69,0xf7,0xf7,0x1c,0x6e,0xbb,0x95,0xf9, + 0xc4,0xe3,0xc9,0x29,0xab,0x67,0xff,0x6f,0xff,0xba,0xe2,0x49,0xff,0x9f,0xcf,0x24,0xb7,0xad,0xfb,0xed, + 0xb9,0xde,0xed,0xcf,0x27,0x1e,0x71,0xc4,0x94,0xd4,0xd3,0xff,0x7f,0x3f,0x6b,0xbf,0x3c,0xf2,0x71,0xff, + 0xae,0x9a,0xba,0x7f,0xaf,0xe7,0xeb,0xbf,0xf8,0x93,0xf9,0xc7,0x9e,0x5b,0xf7,0x53,0xed,0xe7,0xfb,0xbf, + 0xdb,0xf2,0x7f,0xe4,0xfe,0x7b,0x7f,0x7e,0x6d,0xbc,0xed,0xb7,0xfa,0x9e,0x7f,0xe5,0x63,0xfa,0x6f,0x1c, + 0x75,0xb4,0xed,0xef,0x3b,0x63,0xff,0xe4,0xfe,0x8f,0x49,0x9f,0xff,0xb6,0xfb,0xb5,0xff,0x7c,0x79,0xfc, + 0x93,0x97,0xe9,0xad,0xf9,0xba,0xef,0x75,0xff,0x6f,0xcf,0xe7,0xaf,0xc9,0x25,0xaf,0xf7,0xf7,0x5f,0xed, + 0xfb,0xfa,0x4f,0xfc,0x92,0x79,0x59,0x33,0xbf,0xde,0xed,0xf5,0xdf,0xef,0x89,0xc7,0x92,0x7f,0x27,0xb3, + 0xb7,0xfe,0xfa,0x6f,0xb8,0xef,0xb9,0x38,0x9e,0xb1,0x27,0x96,0x69,0xdb,0xeb,0x8d,0xf4,0xef,0xb9,0xe7, + 0x93,0xcf,0x27,0xf4,0xb7,0xdf,0x5d,0x8e,0xdb,0x9d,0xff,0x3c,0xf5,0xc9,0xeb,0xe2,0xd5,0xfe,0x9b,0x7f, + 0xdb,0xe3,0xf6,0x5f,0xf2,0xb9,0x3c,0x9c,0x52,0xdf,0x6f,0x6e,0x3a,0xff,0xfe,0xe4,0xe2,0x49,0xc8,0xf3, + 0xfa,0x5b,0xff,0x6e,0xfe,0xfc,0x6f,0xc7,0x9f,0xd7,0xe4,0x9e,0x7f,0x4b,0x7f,0xb5,0xbf,0x6d,0xf6,0x3b, + 0x9c,0x4f,0x27,0x93,0xff,0x25,0x7f,0xb6,0xde,0xfb,0xbf,0xfb,0x1e,0x7a,0x24,0x92,0x79,0xfc,0xbf,0xfe, + 0xf6,0xff,0x76,0x37,0xf3,0xf1,0x3c,0xf2,0x79,0xe7,0x14,0x79,0xdf,0x5f,0xf5,0xf4,0xef,0xff,0xe4,0xfe, + 0x4f,0xe4,0xff,0x99,0xc7,0xfd,0x4e,0xd7,0xdf,0x09,0xdf,0xf2,0x72,0xe4,0xf3,0xff,0x4b,0x1f,0xfe,0xfb, + 0x5f,0xb6,0xff,0xef,0xcf,0x3c,0xf2,0x4f,0xfd,0xad,0x96,0xdb,0xfb,0xf6,0xf8,0xef,0xf9,0xc4,0xff,0xf2, + 0xcb,0xf2,0xdc,0xb0,0xc4,0xef,0xff,0xd5,0xea,0xc7,0xf3,0xea,0xe7,0x75,0xeb,0x7a,0x9d,0xaa,0x57,0x1a, + 0x6a,0x54,0xff,0xfb,0xf8,0xff,0x96,0x37,0x37,0x4e,0xd7,0x2d,0x8f,0xf5,0x1d,0xd1,0x39,0x9c,0x79,0xd9, + 0x6a,0xab,0x57,0xeb,0x69,0xf8,0xf3,0x8b,0xff,0xf5,0xd1,0x3f,0x3d,0xf7,0xfa,0xb7,0xf6,0xb2,0xff,0xb6, + 0x2b,0x15,0xce,0x67,0xf2,0x4e,0x5f,0xed,0xfd,0x6f,0x7b,0xe4,0xdf,0x6c,0x8f,0x25,0xfc,0x49,0xfd,0x12, + 0x7a,0xdb,0x1a,0xde,0xf7,0x69,0x3e,0xf4,0x92,0x51,0x7f,0x9e,0x77,0x3c,0xfc,0x76,0xd9,0x3d,0xae,0xd2, + 0xed,0xf1,0x65,0x12,0xfe,0x38,0xed,0xff,0xf8,0xfd,0xb1,0x7f,0x6c,0x6d,0xdb,0xfe,0x97,0x3c,0x9f,0xbf, + 0xf4,0xf3,0xb7,0x37,0xd2,0xdf,0xf4,0xdb,0xb7,0x39,0x22,0x79,0x3b,0xef,0xff,0xfd,0x5f,0xfe,0xf5,0xb3, + 0xef,0xd6,0x6e,0x7f,0x49,0x7e,0x7f,0xd8,0xff,0xf9,0xfb,0xef,0xef,0x6c,0xfd,0x4c,0xbb,0x1e,0x4a,0x47, + 0x1f,0xfd,0x3c,0xee,0x7f,0xdb,0xff,0x93,0x5e,0xd3,0x2d,0xab,0x92,0x91,0xff,0x9d,0x8e,0x27,0x73,0xfe, + 0xfb,0xe2,0xd1,0x9b,0xcb,0x69,0x3f,0xa4,0xb1,0xe7,0xef,0xcf,0xff,0xff,0xb1,0xdd,0x37,0xf5,0xf2,0xeb, + 0xcf,0x25,0x1f,0xcf,0xff,0x9e,0x7f,0xff,0x7d,0x4d,0x6f,0x9d,0xbd,0x9a,0xfc,0x7a,0x3c,0x9c,0x71,0xe4, + 0xf5,0xf9,0xdb,0xed,0xcb,0x5b,0x5f,0x66,0xa7,0x12,0x57,0xe7,0x1f,0xc9,0x27,0x9c,0x6f,0xdb,0xf2,0xd7, + 0x97,0xdb,0x6a,0xe4,0x9e,0x77,0xc7,0x93,0xd7,0x3f,0x7d,0x8d,0x3d,0xbd,0xa5,0x33,0xdc,0xf9,0x38,0xed, + 0xf9,0x2c,0x93,0xfe,0xbf,0x63,0xc9,0x6f,0x58,0x76,0xdf,0x2e,0x77,0xdf,0xfe,0xfa,0x24,0xe3,0xb1,0xff, + 0xf2,0x9f,0xd2,0xfd,0xb7,0xfc,0xff,0xb7,0xfd,0x13,0xd7,0xe7,0xd3,0xc9,0xfc,0xb7,0xec,0xff,0x6f,0xb9, + 0xf8,0xfa,0x72,0x24,0x9f,0xff,0xff,0xff,0xcf,0x4c,0xe9,0xbe,0xf8,0xef,0xff,0x34,0xd2,0x51,0x58,0xd3, + 0xb9,0xff,0xfe,0x59,0x3a,0x5b,0xcf,0xff,0xee,0x7f,0xfb,0xf4,0x4a,0xdf,0xee,0x56,0x3f,0x36,0x4e,0xb7, + 0x6c,0x7f,0xdf,0x63,0xf1,0xfc,0xa2,0x4e,0xff,0xf2,0x7f,0x29,0x9f,0xac,0xdb,0x7f,0xfe,0xa7,0x73,0x8f, + 0x25,0x1e,0x7e,0x38,0x9e,0x7b,0x27,0x69,0x2e,0xdc,0xfd,0xb6,0xfc,0xf5,0xc9,0x27,0x9c,0x71,0xe7,0x94, + 0x57,0xb6,0x5d,0xbf,0x3f,0x6d,0xff,0x3d,0x72,0xb9,0x3b,0xff,0xcf,0x25,0x2f,0xad,0xb7,0x6e,0x76,0xfb, + 0xee,0x79,0x28,0x94,0x79,0xf8,0xf3,0xf3,0x47,0xeb,0x35,0xf4,0xe3,0xb6,0xff,0xf3,0xd1,0x25,0x73,0x8f, + 0xe7,0x9e,0x5f,0xfb,0x4b,0x7e,0xff,0xef,0xbe,0x3f,0x92,0x4a,0xe4,0xfc,0x7f,0x27,0xa4,0x76,0xb6,0xed, + 0xf1,0xdb,0x7f,0xb9,0xc4,0x92,0x4f,0xff,0x9e,0x7a,0xc9,0x1d,0xa6,0xd7,0xff,0xbe,0xdb,0xff,0xcf,0x24, + 0xae,0x7f,0xe7,0xa3,0xfb,0x5f,0xdb,0x77,0xc4,0xdf,0xb6,0xc7,0x1f,0xc9,0x2b,0xfe,0x77,0x2b,0x9e,0x9e, + 0xd3,0x5d,0xb9,0xdf,0x6b,0xfe,0x3f,0x12,0x57,0x3f,0xfe,0x49,0xe4,0xf6,0xec,0xbf,0xdc,0x77,0x9f,0x63, + 0xf7,0x35,0x74,0x49,0xfc,0x94,0x56,0x2d,0xfd,0x7e,0xfb,0xff,0x76,0xc4,0xfd,0xfe,0x24,0x9e,0x79,0xe7, + 0xac,0x7b,0x7e,0x5d,0xfe,0x3b,0x4d,0x8f,0xe7,0x1b,0xc9,0x2b,0x9f,0x89,0x3c,0xfe,0xd9,0x97,0x63,0xfe, + 0xf3,0x6e,0x4f,0xfe,0x92,0x4a,0x3b,0x9c,0x4f,0x3b,0xb6,0xa4,0x3e,0x9d,0xf4,0xdf,0xfe,0x7e,0xcb,0xa2, + 0x56,0x27,0x95,0xbf,0xed,0x99,0xbd,0x37,0xeb,0x6e,0xe7,0xe3,0x8f,0x48,0x92,0x71,0x27,0x1f,0xb2,0x6f, + 0xcb,0xbf,0x86,0xdd,0xb1,0xff,0x1c,0xba,0x44,0xf3,0xc9,0xff,0xfd,0xdb,0x32,0xff,0xa9,0xb6,0x7c,0x77, + 0xff,0x15,0xd7,0x27,0xae,0x79,0xdf,0xf2,0xdd,0x9f,0x1d,0x7d,0xb7,0xf3,0xbf,0xe4,0x92,0x79,0x27,0x9f, + 0xff,0xc7,0x37,0xb5,0xc7,0xdd,0x75,0xff,0x1d,0x8f,0x47,0x92,0x79,0x3f,0xff,0xf1,0xa9,0xab,0xa9,0xfb, + 0x5b,0xe9,0xff,0x72,0x7a,0xe4,0xf5,0xcf,0xff,0xfd,0xee,0x6d,0x5b,0xce,0x36,0xed,0xfe,0xff,0x93,0xc9, + 0x3d,0x73,0xf9,0xc7,0x7b,0xb2,0x6f,0xce,0x77,0xdb,0x63,0xf6,0x39,0x14,0x79,0x2b,0xff,0xfe,0x3b,0x7d, + 0x93,0x56,0xd3,0xfd,0x9b,0xd3,0xb7,0xc4,0xac,0xb9,0x44,0xf3,0x8f,0xff,0xec,0x53,0xf7,0x63,0xed,0xb6, + 0xef,0x77,0xc7,0xae,0x4a,0xe8,0xf3,0xce,0x3f,0x6f,0xda,0xde,0xff,0xf5,0xb6,0xfd,0xb6,0xe7,0x95,0xfa, + 0x24,0xf3,0xff,0x3b,0x1d,0xdb,0xdb,0xfc,0x75,0x9b,0xfa,0x76,0x2b,0x72,0x49,0x27,0xfe,0x71,0xc7,0x7f, + 0x9b,0x3a,0xdf,0xb5,0xb7,0xfc,0x77,0x3d,0x62,0xb2,0xc7,0xf3,0x8f,0xff,0x9d,0xca,0x6a,0xda,0x75,0x9b, + 0x7d,0xfe,0x3c,0x9f,0xcf,0x3f,0x93,0x96,0x3f,0x1f,0x8e,0xed,0x99,0x6f,0xb7,0xe3,0xff,0xe7,0x9c,0x79, + 0x27,0x92,0x7f,0x3f,0x1f,0xf7,0xff,0x36,0xb4,0xdb,0x7a,0x7a,0xf8,0xee,0x7f,0x24,0xae,0x79,0xf8,0xff, + 0xff,0xdf,0x7d,0x9b,0x5a,0x6b,0xbe,0xe8,0xf3,0x71,0xc7,0xa2,0x8f,0x38,0xff,0xf9,0xc7,0x6f,0xbe,0xfd, + 0xb7,0x65,0xbf,0x6c,0x9e,0xfb,0xf3,0xf9,0x4f,0xff,0xcf,0xf8,0xf3,0xf6,0xdb,0xef,0x5b,0x5e,0x5d,0xb4, + 0xfd,0x7f,0xe9,0x3f,0x12,0x9f,0xfc,0xff,0xf7,0x3f,0xef,0xbe,0xfb,0x16,0xfe,0x86,0xfb,0x79,0x5f,0xd2, + 0x77,0xc4,0xbe,0x79,0x3b,0xee,0x7f,0xff,0x7f,0x77,0x35,0xb3,0xee,0xb6,0xce,0x56,0x3b,0x9d,0xb1,0x48, + 0x92,0x4e,0xc7,0xf3,0xff,0x37,0xdf,0xbf,0xc5,0x35,0xaf,0xf2,0xdf,0xcf,0xab,0xfb,0xf9,0x59,0x15,0xff, + 0xe7,0xfe,0x4f,0xdf,0x7b,0xbf,0xfb,0x36,0xb6,0x3a,0xcd,0x8e,0xc4,0x9b,0x4f,0x38,0xb2,0xb2,0xe7,0x62, + 0x7f,0xe7,0xdf,0x7e,0xdf,0x2a,0xda,0xf8,0xe9,0x37,0xd5,0x67,0x7f,0xff,0x14,0x57,0x47,0x7e,0x7f,0x3d, + 0x6f,0xb7,0xbf,0xfe,0x7e,0x6f,0xe3,0xe4,0xdb,0x5e,0xf7,0xc7,0xde,0x57,0x49,0x7e,0x79,0xa5,0x63,0xce, + 0xde,0xfd,0x8e,0xfc,0xe2,0xde,0x3e,0xc9,0xb5,0xef,0xee,0x76,0xfc,0x92,0xc9,0xeb,0xd2,0x71,0xe7,0xef, + 0xf5,0x3b,0x1c,0x7e,0x35,0xb4,0xb7,0x93,0x4b,0xd7,0xcb,0xed,0x95,0x2c,0x92,0xbe,0x3f,0x7e,0x79,0xff, + 0xcf,0xe9,0xc7,0x75,0xbe,0x6f,0x33,0x2d,0xd3,0x7f,0xf3,0xd8,0xef,0xca,0xec,0x9c,0x7e,0xff,0xfe,0xb7, + 0xdb,0xef,0xf7,0x3f,0x2d,0xf3,0x7d,0x1b,0x6e,0x98,0xde,0x57,0xa6,0xfe,0x4f,0x6b,0xaf,0xff,0x34,0x9f, + 0xfe,0xd8,0xdd,0xff,0x38,0xd3,0xcb,0x65,0xed,0xbd,0xba,0x75,0xfd,0x3f,0x2d,0xd2,0x5d,0x1e,0x77,0xc4, + 0xef,0xf7,0xdf,0x6f,0xba,0xdf,0xe3,0xf3,0x65,0x9b,0xb6,0xba,0xc2,0x71,0xfb,0x9f,0xca,0x29,0x1e,0x7f, + 0xff,0x73,0xfe,0xfb,0x7b,0x8d,0x3f,0xfe,0x7c,0x6f,0xbf,0xbe,0xbb,0x5a,0x4d,0x5f,0x13,0xfa,0x25,0xf2, + 0x79,0xdf,0xe3,0xbf,0xa7,0x6f,0x4e,0xe6,0xaf,0xce,0xed,0x96,0x61,0xd3,0x6b,0xff,0xab,0x65,0xf2,0xe5, + 0x23,0xd1,0xe7,0x73,0xbf,0xfb,0x7d,0xfd,0xe7,0x73,0xb9,0x39,0x34,0x9d,0x3e,0x6d,0x77,0xf1,0x6e,0x7e, + 0x5c,0x95,0xd1,0x3c,0xef,0xff,0xfb,0x1d,0xf6,0xff,0x73,0x8f,0xe7,0xf6,0xd3,0xf8,0xdd,0xa6,0xde,0xf3, + 0x4f,0xcb,0x92,0x8f,0x47,0xad,0xce,0x3b,0x7d,0xf6,0xfb,0xfc,0x71,0x38,0xfc,0xdf,0x4a,0x9f,0x2d,0xbb, + 0x5c,0x6f,0x38,0x9e,0x8a,0xe8,0xf5,0xf2,0xa7,0xef,0xbf,0xa7,0x7f,0x8e,0xe7,0xff,0xcb,0x7d,0xec,0xb4, + 0xf3,0x6d,0x8e,0xdf,0xe5,0xfb,0x25,0x72,0xbf,0x5b,0xff,0xfd,0xfb,0xef,0xbf,0xdf,0xf3,0xcf,0x4c,0xb5, + 0x56,0xbe,0xcf,0x76,0xf7,0xfa,0x4e,0x44,0xae,0x49,0xe7,0x9f,0xff,0xdf,0x7a,0x69,0xdb,0xff,0xff,0x39, + 0xbe,0xf1,0x37,0xf9,0xf6,0xa6,0xef,0x49,0xa8,0xf4,0x49,0x24,0x9f,0xce,0xff,0x7d,0xbe,0xdf,0x7f,0xbf, + 0x39,0x27,0xd9,0xc7,0xd3,0x69,0x98,0xdd,0xaf,0xff,0x2c,0x8f,0x47,0xa3,0xcf,0x3f,0x1d,0xf6,0x37,0xec, + 0x6f,0xf8,0xe4,0xeb,0x39,0xea,0xaf,0xd7,0xfd,0x7e,0xa7,0x65,0x49,0x24,0xf2,0x7a,0xfc,0xf3,0xbf,0xdf, + 0x7d,0xbf,0xbf,0xfa,0x9e,0x7f,0xab,0x8d,0x3b,0x6f,0xb7,0xd5,0x53,0xf1,0x3c,0xf2,0x4e,0x5f,0x9f,0xce, + 0xfe,0x9f,0x7e,0xfb,0xd3,0x99,0x2f,0x15,0x0e,0xdf,0x7d,0xee,0xf7,0x9a,0xb6,0x78,0x9e,0xb9,0x27,0xf3, + 0xf9,0xdf,0xd3,0xbf,0xbf,0xef,0x99,0x2f,0x13,0x0d,0xde,0xef,0xb5,0x37,0xee,0x7f,0x58,0xf5,0xd6,0x27, + 0x9f,0xce,0xff,0xfb,0xf6,0x37,0x98,0x5f,0x2b,0x13,0x0e,0xbf,0x53,0x76,0xdb,0x66,0x7d,0xff,0xe2,0x7e, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xf0, +}; +static constexpr VoiceClip alertsSoundOnlyClip = { + alertsSoundOnlyData, sizeof(alertsSoundOnlyData), 7108, 8000, VoiceCodec::G72624 +}; +#endif // HAS_DRV2605 +#ifdef HAS_DRV2605 +// "Vibration only" +static const uint8_t alertsVibrationOnlyData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x6d,0xd9,0x65,0xb6,0xef, + 0xff,0xe4,0xa2,0x4a,0x48,0x93,0xcf,0xff,0x6d,0xb5,0x2d,0xbf,0x6e,0xbb,0x6e,0xb9,0x38,0xf2,0x49,0x45, + 0x1f,0xbe,0xdf,0x6f,0xf7,0xad,0xb3,0x6d,0xfb,0xee,0x51,0x3b,0x73,0xc9,0x2c,0xff,0xb7,0xdf,0xe2,0x77, + 0xf1,0x37,0xb5,0xdf,0x6f,0xd1,0x3f,0x55,0xf9,0x25,0x1d,0xb5,0x3f,0x1c,0x55,0xdb,0x36,0xad,0xde,0xef, + 0x8a,0x3b,0xec,0xb1,0x25,0x2b,0xf6,0x3f,0x2c,0x4e,0xbb,0xb6,0xf7,0xbf,0xdf,0xfa,0x3b,0xec,0xb1,0x25, + 0x1d,0xb7,0xe7,0xf2,0x7d,0xdf,0x26,0xee,0xbb,0x4f,0xf9,0x37,0xee,0x79,0x45,0x7d,0x8e,0x5f,0x2f,0x8d, + 0xff,0xa6,0xe7,0x9f,0x4f,0xf9,0xdb,0x62,0x79,0x44,0xed,0x96,0x5f,0xff,0xf6,0xe7,0xa6,0xe7,0xbf,0xce, + 0x72,0xd7,0xf2,0x79,0x27,0xfa,0x49,0x3b,0x9d,0xf7,0x3f,0xa6,0xa6,0xbf,0x5a,0xb1,0xf3,0x9e,0xb7,0x7b, + 0xfd,0xd7,0x3b,0x2d,0xbf,0x27,0x37,0xa5,0xa6,0x63,0x8f,0x9b,0x93,0xfa,0xff,0xd2,0x8f,0xf8,0xfa,0x71, + 0x39,0x37,0x34,0x3a,0xe5,0xfe,0x87,0xf5,0x89,0xf7,0xe4,0x71,0xdf,0xde,0x79,0xf9,0xb3,0x26,0xf2,0x93, + 0xf5,0xc7,0x12,0x5f,0xdf,0x2e,0x79,0xff,0x55,0xf9,0xcd,0xa9,0xb5,0xb3,0x9f,0xae,0x3b,0x14,0x8e,0xc4, + 0xe3,0xd7,0xdb,0x1f,0xf9,0xed,0xeb,0xad,0x95,0x1d,0xb1,0xd5,0x74,0xb6,0x5b,0x1e,0xbf,0xfb,0xfc,0x79, + 0x6f,0x5d,0x6c,0xaf,0x7d,0xfe,0xa8,0xaf,0xcf,0xdf,0x92,0x77,0xfe,0x9e,0x7b,0x7a,0xfb,0x66,0x46,0xff, + 0xee,0x25,0x7c,0xbd,0xfc,0x9c,0x7f,0xd8,0xf3,0x9b,0xd7,0xdb,0x3a,0xf8,0xe3,0x6a,0x27,0x93,0xef,0x3c, + 0xe5,0xf6,0xff,0xf2,0xdd,0xfa,0xcb,0x9d,0xe7,0xeb,0x97,0xe4,0x9d,0x4f,0xc7,0xad,0xff,0xc7,0x26,0xe9, + 0xd6,0x5e,0x77,0x5f,0x5f,0xfe,0x47,0xff,0xf6,0x27,0x9e,0x7d,0xe7,0x36,0x71,0xd6,0x63,0x79,0x3e,0xff, + 0xb2,0x27,0x93,0xb1,0xfc,0xf5,0xf1,0xf4,0xb7,0x8f,0xd3,0x5f,0x17,0x38,0xff,0x16,0x24,0x93,0x4f,0xa7, + 0xf3,0xcf,0xdd,0x33,0x9e,0x96,0xd9,0x96,0xe8,0xfa,0x4d,0x28,0x9e,0xbd,0xff,0x7e,0x7f,0xfd,0x33,0x5e, + 0x9a,0x6b,0x56,0xcb,0xfd,0x95,0xe8,0xf5,0xce,0xff,0x63,0xff,0x3d,0x33,0x5e,0x9a,0x6b,0x16,0xcb,0xf3, + 0x56,0xcf,0xf5,0xc9,0xc7,0x63,0x8f,0xe7,0xb7,0x52,0x96,0xdb,0x31,0xdd,0x7e,0x79,0xf5,0xfe,0x89,0x38, + 0xfb,0xff,0xff,0x96,0xea,0x56,0xd9,0xa5,0x3b,0x22,0x4e,0x47,0x72,0x49,0x27,0xf3,0xb7,0xdf,0x7e,0xd6, + 0x4b,0x69,0x74,0xbb,0x62,0x49,0xe5,0x7e,0x79,0x3c,0x9e,0x7f,0xfb,0x7d,0x53,0x39,0x13,0x6d,0xd2,0xeb, + 0xbe,0x3c,0x93,0xd7,0x24,0xf5,0xc9,0x3c,0xff,0xf6,0x6b,0xf2,0x8e,0x9b,0x5b,0x6e,0xf7,0xfe,0x79,0x24, + 0xf5,0xd7,0x24,0x93,0xc9,0xfd,0xbe,0x79,0x5f,0x5f,0xad,0xb4,0xdb,0xf1,0xc7,0x13,0xce,0x27,0xf3,0xf9, + 0xfc,0x9e,0x57,0x27,0xad,0xf6,0xd6,0xeb,0xef,0xdf,0x1f,0xc9,0x24,0x9e,0x49,0xdf,0x9c,0x73,0x5c,0x92, + 0x7e,0xf7,0x6b,0x6e,0xfe,0xfc,0x49,0xc4,0x93,0xf9,0x3f,0xee,0x77,0xc5,0x72,0x7a,0xfc,0xeb,0xf5,0xba, + 0xfb,0xf7,0xc7,0x2e,0x79,0x47,0xf3,0xcf,0x3b,0x74,0xf1,0xfd,0x7d,0xfe,0xf7,0x6f,0x6f,0xfb,0xfd,0xfa, + 0xfc,0xf5,0xc9,0xff,0x9f,0xb9,0x7b,0x9c,0xb7,0xff,0x6f,0xb6,0xde,0xfc,0x7f,0xc7,0x9e,0x4f,0x3c,0x9f, + 0xce,0x35,0x9c,0x7e,0x3f,0xfd,0xb7,0xdb,0x6f,0x8e,0xff,0x9e,0x49,0xe5,0x63,0xcf,0xff,0x1a,0xce,0xe7, + 0xff,0xf7,0xde,0xfd,0xf6,0xff,0x73,0xf9,0x27,0x9e,0x49,0xc7,0xff,0xfd,0x6a,0xf3,0xff,0xdf,0x7d,0xf7, + 0xdf,0x1d,0xcf,0xe7,0x93,0xf9,0x3f,0xff,0xce,0x3b,0x35,0x4f,0xf8,0xef,0xbe,0xdf,0xfd,0x8f,0x3b,0xac, + 0xb1,0xcb,0xff,0xce,0xe7,0xfc,0x59,0x87,0x7f,0xf6,0x3f,0x3d,0xd5,0xbc,0x95,0x3e,0x66,0xee,0x55,0xff, + 0x3f,0xb6,0x48,0xdf,0x97,0x87,0xaf,0x3f,0x3e,0x1e,0x7e,0xfc,0xa3,0x4f,0xd6,0x23,0xbe,0xe8,0xdf,0x09, + 0xcb,0x7c,0x55,0xf8,0xa9,0xd1,0xb0,0xad,0xb1,0xd7,0x25,0xd7,0x27,0x7c,0x97,0xbc,0x9b,0x6e,0xdb,0xec, + 0xd9,0xbb,0xfd,0xad,0xff,0xfd,0x8a,0xfc,0xf4,0x4f,0xfc,0xff,0xff,0x6d,0xff,0x6d,0xd3,0x4d,0xff,0xfb, + 0x94,0x57,0x25,0x73,0xf9,0xe7,0xe6,0xdf,0xd3,0x5d,0x6d,0xd8,0x9f,0xc9,0x4c,0xf3,0xc9,0x3f,0x7d,0xf9, + 0x68,0xdb,0xad,0xb6,0xdf,0xcf,0x3d,0x25,0xd7,0xe4,0xfd,0xf7,0xfb,0x96,0xb4,0xf7,0xdb,0x6e,0xeb,0xfe, + 0x8b,0xfc,0x9e,0x7f,0xdb,0xff,0xbb,0x46,0xc3,0xbc,0xb7,0xd5,0xf9,0xec,0xac,0x49,0xfb,0xfa,0x7e,0xf9, + 0x35,0x6d,0x26,0x5b,0xbf,0x3c,0xf4,0x95,0x27,0x9d,0xf1,0xdf,0xec,0x5a,0xf3,0x1f,0x65,0xff,0xf3,0xd2, + 0x2b,0x12,0x76,0xff,0xfd,0xfe,0x25,0x9b,0xba,0x96,0x7f,0xbf,0x28,0xa3,0xfa,0x37,0xf3,0xf7,0xc7,0x7c, + 0xd7,0x9d,0x59,0x6f,0xfb,0x94,0x51,0xcb,0x9f,0x49,0xdf,0xff,0xfe,0x4c,0xda,0x4c,0x9b,0xfd,0x91,0x44, + 0xf2,0x4d,0xe7,0xff,0x8f,0xfb,0xf6,0xb5,0x2a,0x4d,0xbc,0xe4,0x95,0x97,0x5b,0x73,0xfe,0x27,0xef,0xf2, + 0x7f,0x75,0x64,0xfa,0x72,0x57,0x44,0x9d,0xf9,0xf8,0x9f,0xf1,0xdf,0x26,0x6a,0x36,0x4f,0x67,0xe4,0x92, + 0x8f,0xfc,0xff,0x97,0xff,0xff,0xb3,0x5f,0x25,0x27,0xb6,0xe7,0xfb,0xe4,0xef,0xf7,0xfd,0x7e,0x4e,0xff, + 0x35,0xf3,0x32,0x7b,0x37,0xe7,0xa7,0xcf,0x3f,0xe3,0xff,0x27,0xff,0xf3,0x58,0xbf,0x36,0x96,0xff,0x91, + 0x44,0xf5,0xbf,0xe7,0x13,0xff,0xff,0x35,0xbb,0x32,0x99,0x37,0xa4,0x97,0xc9,0x3f,0x1f,0x89,0xe7,0x9f, + 0xbb,0x55,0x3b,0x0c,0x9b,0x5f,0x91,0x25,0x1f,0xcf,0xdc,0xfe,0x79,0xf8,0xb5,0x5a,0x98,0xc9,0xb5,0xfc, + 0xae,0x91,0xe7,0xfc,0x7f,0xe7,0xff,0xfb,0x59,0xa8,0x74,0x9e,0x6d,0xc9,0x29,0x72,0xb7,0xff,0xfe,0x71, + 0xff,0xb3,0x9a,0x87,0x49,0xe6,0xdc,0x92,0xcf,0x5c,0xe3,0xfe,0x5b,0x9f,0xfb,0x35,0x99,0xfc,0x9e,0x6f, + 0xc9,0x2c,0xf4,0x71,0x3b,0xff,0xff,0xf8,0xbf,0x99,0x87,0x49,0xe6,0xdf,0x94,0x89,0x47,0x93,0xb9,0xc7, + 0x1f,0x8b,0xfd,0xf8,0xac,0xb6,0x6d,0xff,0x4b,0xa5,0xc9,0xf8,0xfd,0xff,0xf8,0xbf,0xde,0xca,0xcd,0x67, + 0xbf,0x94,0x4a,0x5c,0x9d,0xcd,0x3b,0xfc,0x4b,0xe5,0xec,0xe5,0xf2,0xeb,0xbf,0x5c,0xbe,0x89,0xfc,0xef, + 0xf7,0xf8,0xbc,0x96,0xea,0x5d,0x2e,0xb4,0xe5,0xd1,0x45,0x7e,0x7f,0xdf,0x7f,0xf3,0xc5,0xec,0xa6,0xf2, + 0xed,0x4e,0x24,0xa2,0x57,0xe7,0xe3,0x4e,0xff,0xaf,0xde,0xea,0xdf,0x37,0xbb,0xf2,0x4a,0x28,0x9e,0x7f, + 0xde,0x7f,0xb3,0xf9,0xfc,0xb5,0x36,0x7d,0x7e,0xe4,0x92,0x97,0x24,0xff,0xbe,0xfb,0x15,0x52,0xa8,0xdd, + 0xe7,0xba,0xfd,0xf9,0x28,0x94,0x56,0x3c,0xed,0xe9,0x5a,0xbf,0x9e,0xaa,0xef,0x36,0xfb,0x1e,0x57,0x45, + 0x73,0xcf,0xff,0x7e,0xa9,0x55,0x7b,0xfc,0xde,0xed,0xb1,0xfc,0x94,0x49,0x2b,0xff,0xce,0xaf,0xe7,0xba, + 0xdb,0xdb,0xed,0xdb,0xe3,0x89,0x24,0x93,0xcf,0xe7,0x7c,0x94,0x5f,0xad,0x8e,0xd7,0x5d,0xb5,0x38,0xf3, + 0xd7,0x59,0x7f,0xff,0xfd,0xd2,0xea,0x34,0xfd,0xb6,0xd7,0x6c,0xa2,0xf9,0xd5,0xca,0xa7,0xe5,0x5f,0x8f, + 0x73,0x8e,0xc6,0x9d,0x0e,0xff,0xfe,0x79,0x39,0x65,0xb9,0xc4,0xb8,0x5d,0x3b,0x9a,0x6e,0xf5,0x1a,0x7e, + 0xfc,0x9d,0x57,0xab,0xe3,0xce,0x3e,0x38,0xd4,0x50,0xac,0x6f,0x54,0x9b,0xc9,0x87,0xde,0x4c,0x3b,0xa8, + 0x76,0x5f,0xf5,0x4d,0x2b,0x9d,0x5e,0x51,0x1d,0xf9,0xf5,0xea,0xb1,0xa7,0xd5,0xbf,0xaa,0xff,0xf9,0xa6, + 0xaf,0x17,0xca,0x9d,0x9d,0xff,0x2a,0x77,0x39,0x53,0xf2,0xa7,0x73,0x8e,0xc7,0x13,0xbf,0xea,0xe5,0x4f, + 0x5b,0xd3,0x69,0xfc,0xc3,0x95,0xca,0xfa,0x7e,0x47,0x73,0xf5,0x26,0x7c,0x77,0x54,0xe3,0xe1,0xfc,0xd5, + 0xb9,0xcb,0x62,0x4d,0x3b,0xf3,0x97,0xe7,0xfb,0xbf,0x78,0xdf,0x8d,0x58,0xfb,0xff,0x31,0x9d,0xf2,0xf8, + 0xd3,0x99,0xc6,0x9e,0x4d,0xd8,0xe2,0xbe,0xdf,0x72,0x77,0x3f,0x1f,0x8f,0x50,0xee,0xb9,0xe4,0xe5,0xf9, + 0xab,0x7f,0x79,0xc7,0x1b,0x11,0xcb,0xbf,0xbe,0x27,0x1b,0xbf,0x5a,0x1e,0xbf,0x5f,0xac,0xa9,0x24,0xff, + 0xf1,0xcf,0xae,0x69,0xde,0xdb,0x9e,0xc7,0x93,0xcd,0x46,0xf4,0x8d,0x5b,0x6c,0xaf,0x34,0x93,0xf2,0xfd, + 0x2f,0xc9,0xf4,0x93,0x99,0xdb,0xab,0x99,0xdb,0x58,0x95,0xfa,0xfc,0x77,0x57,0x2a,0x7a,0xd1,0x3f,0x97, + 0x85,0xfc,0x7e,0x29,0x12,0x7e,0x28,0x97,0xbf,0x3f,0x3a,0x4e,0xfb,0xee,0xf1,0xdd,0xf4,0xbf,0xf5,0x6f, + 0xf6,0x64,0xfc,0x69,0x57,0xfe,0x72,0xf5,0x1f,0xba,0xfc,0x9f,0x39,0x27,0x93,0xfe,0x5f,0x9d,0x7d,0x28, + 0xe5,0xe7,0x24,0xff,0x49,0xae,0xe3,0x4d,0x9e,0xaf,0x8c,0xca,0x9f,0x4e,0x24,0xf3,0xc9,0xc4,0xff,0x0b, + 0xa7,0xef,0x56,0xc7,0xf3,0x97,0xda,0xd3,0x3e,0xe4,0x93,0xb7,0x9f,0xff,0xbf,0x8b,0x6f,0xd7,0xca,0xe2, + 0x7c,0xeb,0x92,0xbe,0xcb,0xfe,0x77,0xff,0x7c,0x5e,0xdc,0xfa,0x8e,0xe6,0xfa,0xb6,0x64,0xbe,0xef,0x58, + 0x9a,0xef,0xdb,0xea,0xf2,0xdf,0xe2,0xb2,0xbe,0xdd,0xbf,0xdf,0x6e,0x89,0x45,0xf2,0x77,0xf4,0xcf,0xb7, + 0xf9,0xd3,0x76,0xd8,0xe3,0xbf,0xc8,0xa4,0x59,0x28,0x9b,0x55,0xd7,0x69,0xb5,0xc5,0x94,0x97,0xe7,0xe6, + 0x4a,0x26,0xdd,0x2e,0xda,0xff,0x7f,0xff,0x2f,0xc9,0x3c,0xa2,0x7b,0x69,0xaf,0x27,0xb3,0x6d,0xb9,0xdc, + 0xf2,0x7a,0x24,0x95,0x89,0xe5,0xb2,0x4d,0xb3,0x59,0xbf,0xd8,0xfe,0x49,0x3d,0x1e,0x4f,0xe4,0xec,0xd9, + 0x3b,0x4b,0xed,0x9f,0xef,0xff,0xeb,0xf2,0x4f,0x27,0xf3,0xce,0x6f,0xfe,0x66,0xb6,0xed,0xef,0xff,0x7e, + 0x79,0x24,0x92,0x7f,0x47,0x37,0xce,0x37,0x5d,0x76,0xdb,0xe3,0xbf,0x3c,0xf4,0x4f,0x5c,0x93,0x8b,0x78, + 0xe3,0x6e,0xdb,0x7d,0xb7,0x3b,0x13,0xc9,0x59,0x75,0xb9,0x3c,0xbf,0xcd,0x33,0x7b,0xe9,0xdb,0x7f,0xf2, + 0xc4,0x92,0x79,0xe7,0xf3,0xd2,0xdf,0xe9,0xb7,0xdb,0x7d,0xf7,0xdc,0xa3,0xdf,0x28,0xf3,0xcf,0xe9,0xff, + 0xb5,0xdb,0x6f,0xbe,0xdf,0x9d,0xd1,0xe8,0x95,0x8a,0xff,0xe4,0xce,0xfe,0x7d,0x8d,0xff,0x7a,0x7f,0xe7, + 0x93,0xfa,0xc4,0xff,0xcf,0x4f,0xed,0xb5,0xfb,0xff,0xf5,0xc5,0x7c,0x89,0xe4,0xef,0xd1,0xc6,0xf6,0xf6, + 0xfa,0xfd,0xfe,0xff,0x6c,0xbf,0x24,0xfe,0xbf,0xc8,0xe3,0xba,0x7a,0xfd,0x2f,0xc7,0x7f,0xf6,0x27,0x12, + 0x57,0xe7,0x9c,0x4e,0x3b,0x97,0xef,0x96,0xef,0xf7,0x3f,0x6e,0x49,0x25,0x73,0xcf,0xfc,0xfd,0xf9,0x7e, + 0xfb,0x2e,0xe7,0x63,0xfe,0xe4,0xf4,0x57,0xeb,0xfc,0x4e,0x3b,0x27,0xef,0x96,0xdc,0x76,0xe6,0xfe,0xbf, + 0x45,0x1e,0xb9,0xfc,0xfd,0xf1,0x66,0xeb,0x6d,0xa7,0x7c,0xaf,0xfc,0x9e,0x91,0x3d,0x73,0x8f,0xfb,0xf4, + 0xed,0x36,0x5b,0xbd,0xdc,0xdd,0xc9,0xe9,0x22,0x51,0x38,0xaf,0xbe,0x2c,0xdd,0xac,0xbf,0xf9,0xce,0xdf, + 0xaf,0xd3,0xfc,0x93,0xf9,0xe6,0x9f,0x9b,0x86,0xeb,0x7f,0xfa,0xad,0xf7,0x47,0x97,0xcf,0xeb,0xfc,0xb7, + 0xdc,0xb7,0x3d,0x32,0x1f,0xfe,0x3f,0xee,0xbe,0x45,0x1c,0xba,0xdd,0x7f,0xbf,0x6f,0xdf,0x6c,0x87,0xec, + 0x8e,0xf4,0xfb,0xca,0xe4,0xa2,0x72,0xff,0xf2,0x9b,0xa6,0x99,0x27,0x37,0xbd,0xf6,0x3b,0x77,0xc9,0x2b, + 0xfe,0x4e,0xeb,0xa6,0xae,0xbe,0x4f,0x8e,0xcb,0x7f,0x4f,0xe5,0x25,0xd7,0x3f,0x1c,0x7e,0x3d,0xa9,0x67, + 0x97,0x72,0xaa,0xe7,0xe3,0xca,0x28,0x93,0xbf,0xdf,0xef,0x8d,0x6e,0xd9,0xcd,0x9f,0xbe,0x7f,0x3f,0x1e, + 0x8f,0x5f,0x9d,0xef,0xfb,0xff,0xcb,0x7a,0x53,0x6e,0xad,0x13,0xf9,0xdf,0x75,0xd6,0x5b,0xfd,0x7e,0x3f, + 0xfe,0xda,0xb2,0x6b,0x69,0x64,0xfe,0x7f,0xf4,0x92,0xbf,0xff,0xeb,0xfe,0x38,0xe6,0xcd,0x97,0xdd,0x3a, + 0x48,0xd3,0xcf,0xdc,0x94,0x77,0xc7,0x6d,0xb9,0xe7,0x16,0xcc,0x97,0x79,0x4a,0x2b,0xee,0x7f,0xf8,0xa4, + 0x4d,0x3b,0xed,0x8e,0x5f,0x36,0xb4,0x9b,0x69,0x89,0x7f,0xef,0xcf,0x39,0x92,0xb6,0xfb,0xef,0xb9,0xfc, + 0xb4,0x64,0xf6,0xe9,0xc9,0x3c,0xec,0x7f,0x59,0x22,0x7f,0xd8,0xee,0x71,0xf8,0xb7,0xad,0xf3,0x6b,0x57, + 0x27,0xdf,0xcf,0x5d,0x14,0x7f,0xdf,0xff,0xf9,0xa7,0x37,0xee,0xf7,0x6b,0x49,0x3f,0xdf,0xfa,0x25,0x22, + 0x8e,0xc7,0x75,0xf7,0xfa,0xb6,0x75,0xde,0xdd,0x0e,0x27,0x1d,0x8f,0x5d,0x12,0x56,0x34,0xe3,0xf9,0xdb, + 0xf6,0xf6,0x9b,0x6d,0x7e,0x24,0x9d,0xbe,0x24,0xf2,0x79,0x3b,0xef,0xcf,0xff,0xd6,0xff,0xdb,0x6d,0xa9, + 0xa4,0xf3,0xb7,0xfd,0x75,0xcf,0x5f,0xfd,0xcf,0x27,0x6a,0xda,0xdb,0x79,0xf6,0xd8,0xee,0x7f,0xdc,0x92, + 0xb9,0xeb,0x73,0xfe,0xe7,0x1d,0x5a,0x26,0xe9,0xbd,0xff,0x7d,0xc9,0xff,0xf2,0x52,0xe7,0xff,0xcf,0xfe, + 0x9d,0xeb,0x64,0xeb,0x6e,0xdb,0xf3,0x4f,0xc7,0x1c,0x51,0x44,0xfc,0x77,0x27,0xe3,0xbe,0x2d,0x2b,0x65, + 0xd7,0xff,0xf7,0xdc,0xf3,0x89,0x28,0x93,0xf7,0xfc,0xfe,0x76,0xc9,0x95,0xec,0xd6,0xfc,0x7e,0xf8,0xee, + 0x7f,0x24,0x95,0xff,0xfb,0x9e,0x7e,0xf8,0xb4,0x7e,0x9a,0xed,0xff,0xfb,0x7f,0xff,0x27,0xa2,0x89,0xc7, + 0xfe,0xb9,0xfe,0x24,0x57,0xd6,0x6d,0x7e,0xff,0x63,0xbf,0x3c,0x92,0x89,0x3f,0xff,0xcf,0x38,0xd2,0xfa, + 0xda,0xcd,0xa9,0xff,0x7d,0xff,0xe7,0x92,0x51,0x5f,0xff,0xcf,0xe7,0xfd,0x99,0x26,0xdb,0x6e,0xa7,0x7d, + 0xbf,0xff,0x9e,0x4a,0x28,0xff,0xcf,0xe4,0xfd,0xf1,0x67,0xfb,0x6d,0xbf,0x6f,0xb7,0xff,0xf3,0x89,0x48, + 0x92,0x7f,0xe4,0xfe,0x76,0x29,0x1d,0x74,0xbe,0xdf,0xef,0xdf,0xff,0xf9,0xe9,0x12,0xbf,0x27,0xac,0xb7, + 0xdc,0xbf,0xb5,0x9e,0xff,0xb6,0xd8,0xff,0xce,0xe4,0xa2,0x4f,0x39,0x72,0x77,0x3e,0xa4,0xed,0xd6,0xea, + 0x76,0xbb,0x73,0xff,0xff,0xa4,0x4a,0xe4,0xf5,0xd6,0x3f,0x7e,0xd1,0xb7,0xcf,0xb6,0xf3,0x7a,0x4e,0xe6, + 0x93,0xd1,0x58,0x92,0x49,0xe7,0xfd,0xd3,0x5a,0xdb,0xfe,0xda,0xcf,0xb9,0xff,0xef,0xd1,0x44,0xf2,0xb2, + 0x27,0xfd,0xff,0x4d,0xb8,0x75,0x97,0x6d,0xad,0xbb,0x92,0x4f,0x25,0x24,0x89,0xfc,0x92,0x7e,0xd7,0xb6, + 0xce,0xda,0xed,0xb5,0xb7,0x7e,0x4f,0x3d,0x24,0x91,0x27,0x9e,0x7f,0xff,0x7c,0x9b,0x5e,0xdb,0x75,0xb6, + 0x5b,0xbf,0x38,0xf4,0x52,0x28,0xf5,0xc9,0xff,0x7f,0xbe,0x4d,0x1d,0xaf,0xbb,0x59,0xad,0x3b,0xff,0xc9, + 0x28,0x92,0x49,0xe7,0xff,0xfe,0xfe,0xb5,0xcd,0x34,0xeb,0xae,0x86,0xfd,0xff,0xe4,0x93,0xd7,0x5c,0xf3, + 0xff,0xff,0x7d,0xf3,0x7e,0x9c,0x7d,0xf3,0xdf,0xbe,0xf8,0xf5,0xcf,0x24,0x9f,0xf9,0xf8,0xef,0xbe,0x35, + 0xbf,0xef,0x3f,0x79,0xb7,0xdf,0x6f,0xc9,0xe7,0x95,0xfa,0xff,0x9f,0x8e,0xdf,0x7d,0xdb,0x36,0x92,0x6d, + 0xd7,0xed,0xb7,0xfc,0xf3,0xd7,0x5c,0x9e,0x79,0xdf,0xef,0xbe,0xdd,0xbf,0x7f,0x5e,0xdb,0xfe,0xbe,0xf3, + 0xf9,0xe4,0x92,0x4f,0xeb,0x73,0xbe,0x37,0xfd,0xdb,0xf7,0xf2,0x6e,0xb7,0xfd,0xb6,0x39,0x1f,0xc9,0x24, + 0xe3,0xcf,0xc7,0x6f,0xff,0xd9,0x33,0x7d,0x3c,0xdd,0x69,0xfb,0x7c,0x7a,0xe7,0xf5,0xcf,0xff,0x9d,0xfe, + 0xdf,0xef,0xcb,0x66,0xee,0x76,0xd7,0x63,0xbe,0xe7,0xaf,0xf9,0x3c,0xff,0xf1,0xff,0xfd,0xff,0xaa,0xa6, + 0xef,0xfb,0x9b,0x7e,0x3b,0xef,0xc9,0x3f,0x93,0xcf,0x38,0xff,0xf9,0xdf,0xff,0xf1,0xa9,0xbf,0x71,0xda, + 0xdd,0xff,0xf8,0x93,0xf9,0x3f,0x9f,0xcf,0x3f,0x9c,0x77,0xff,0x7d,0xfe,0x6d,0xeb,0x8e,0xbf,0xf3,0xbf, + 0x27,0xfe,0x4f,0x27,0x93,0x8f,0xfb,0xff,0xf7,0xff,0x7d,0xd3,0x66,0x6f,0xbe,0xfc,0x9d,0xff,0x3c,0xf4, + 0x49,0xff,0xff,0xce,0x3b,0xed,0xbe,0xc7,0x7f,0x9b,0x66,0x6f,0xef,0x3c,0x9f,0xb1,0xe7,0x22,0x96,0x38, + 0x9d,0xf9,0xff,0x5b,0xf6,0xf8,0xf3,0x9b,0x7a,0x5b,0xfd,0xe5,0x1f,0xa9,0x3c,0xe6,0x49,0xfb,0xad,0xff, + 0xe7,0xcd,0x8f,0xbf,0xff,0xf3,0x6f,0xdf,0x7d,0xbf,0x13,0xf6,0x3f,0xfe,0x99,0x5c,0x92,0x77,0xe7,0xff, + 0xbe,0xf7,0xef,0xf7,0x2d,0x9b,0xbd,0xb2,0xe2,0x7e,0xc7,0xed,0x91,0x7d,0x15,0xff,0xfd,0x6f,0xce,0xde, + 0xfd,0xf7,0xff,0xb6,0x75,0xfe,0x58,0x7f,0xf4,0x9d,0x71,0x2b,0xa2,0xf1,0xf9,0x63,0x97,0xfe,0xfd,0xf6, + 0x38,0xec,0x5b,0x3e,0x9d,0x26,0x3f,0x1e,0xf6,0xdc,0xe5,0xd9,0x3f,0x2d,0xf7,0x5c,0xee,0x67,0xbf,0xfc, + 0x7f,0xf8,0xb7,0xea,0xf2,0x5f,0xb7,0x2f,0x7d,0xff,0xc9,0x9e,0xb9,0xfb,0x9f,0x8a,0xc6,0xff,0x7e,0xe7, + 0x7e,0x69,0x6f,0xee,0x64,0xbb,0x54,0xbe,0xca,0xec,0x97,0x65,0x7e,0x7e,0xfd,0x73,0xf9,0x86,0xfd,0x8f, + 0xff,0x7a,0xdb,0x28,0xd9,0x36,0xb9,0xee,0x7e,0xdf,0xf2,0x59,0x24,0xfc,0x7f,0x3c,0xfd,0xfe,0xdf,0x1c, + 0x7f,0xdf,0xd6,0xcf,0x5e,0xcf,0x67,0xff,0x1e,0x6e,0x3f,0x24,0x4a,0x5b,0x9f,0x8f,0x3f,0x9d,0xbe,0xdb, + 0xff,0x96,0xc7,0x66,0xca,0x3a,0x7b,0x6f,0xbf,0x2d,0xbf,0xd9,0x1e,0xfb,0xc5,0x53,0xf9,0xcb,0x7f,0xb6, + 0xfb,0x1f,0x8f,0xff,0xf6,0xfa,0x7a,0xeb,0x2f,0xbb,0xad,0x8f,0xa7,0x92,0x97,0x47,0xef,0xfe,0x5b,0x9d, + 0xf7,0xdb,0xf3,0x8f,0xc6,0xaa,0xdf,0x2a,0xfb,0xe6,0xf7,0xae,0x6a,0xb8,0xfe,0x8a,0xef,0x7f,0xff,0xe7, + 0x1f,0xf7,0xdb,0xfd,0xfa,0xa4,0xd3,0x9b,0xe9,0x5d,0xec,0xda,0x73,0xb9,0xf4,0x9c,0x51,0x48,0x9c,0x7e, + 0x3b,0x1d,0xf1,0xdb,0xef,0xff,0xff,0xfe,0x7e,0x6f,0xbd,0xb6,0x97,0x5a,0xf7,0xfc,0xf3,0xf3,0xe5,0x13, + 0xce,0xe7,0x7f,0xbf,0xfb,0x7d,0xff,0xc7,0x13,0x8e,0x25,0xbe,0xfe,0xf6,0xdd,0x71,0xdd,0x6c,0xb1,0x24, + 0x94,0x79,0xc7,0xff,0xbf,0xfe,0xfd,0x8f,0xa7,0xf5,0xff,0xe7,0x96,0xd3,0xdb,0xdd,0xac,0xff,0xf3,0x49, + 0xe4,0xf4,0x89,0x3c,0xff,0xf7,0xc7,0xdf,0xbf,0xdf,0x63,0x89,0xc7,0xf5,0xdb,0x4f,0x63,0x76,0xbb,0x7d, + 0xfe,0x26,0xae,0x89,0x44,0x9c,0xb1,0xfb,0xff,0xb7,0xdf,0xef,0xf1,0xf8,0xfe,0x7f,0x6f,0xb3,0x4f,0x9e, + 0xed,0xbe,0xfb,0x2a,0x8e,0x45,0x12,0x7a,0xf9,0x5e,0x76,0xfb,0xed,0xfe,0xff,0xff,0xf9,0x35,0xbc,0xfe, + 0x3a,0x7b,0x76,0xa7,0x6e,0x6a,0xfd,0x9e,0xba,0x3c,0xf3,0xbf,0xc6,0xe3,0x7f,0xa7,0x73,0xbf,0xe7,0xf6, + 0xfb,0x35,0x69,0xee,0xdb,0x6d,0xbf,0xa8,0xd7,0xca,0xeb,0x93,0xc9,0xdf,0x7d,0xbd,0xfe,0xff,0xbf,0xe7, + 0x1f,0xdb,0xcf,0xe3,0xa9,0x9b,0x6b,0xf5,0x37,0x9f,0x9e,0x44,0x95,0x97,0x3f,0xff,0xf6,0xfb,0x18,0xb6, + 0xf8,0x9c,0x71,0x7d,0x3a,0xb5,0xfa,0xed,0xaf,0xbf,0xd3,0xb2,0xe5,0x72,0x49,0x3c,0x9c,0x7e,0xfb,0xfd, + 0x7e,0xfb,0xec,0x71,0xed,0xf4,0x6a,0xd8,0xc3,0xb5,0xfb,0x6f,0x55,0xe7,0x23,0xc9,0x27,0x92,0x71,0xff, + 0xfc,0x6e,0x37,0xed,0xf6,0x35,0xac,0xfe,0x5b,0x99,0xcd,0xfb,0x7d,0x7f,0xfb,0xf2,0x71,0x3d,0x72,0x79, + 0xe7,0x1f,0x8d,0xc6,0x9d,0x4e,0xdf,0x32,0x9d,0x5e,0xfd,0x0d,0xfb,0x53,0x77,0xdd,0x62,0x7a,0x59,0x7e, + 0xb9,0x38,0xff,0xbe,0xff,0x6f,0xbe,0xc7,0x27,0xd9,0xaf,0x6f,0x7f,0xbf,0x5d,0xb7,0xfb,0x9a,0xbf,0x78, + 0x9e,0x8f,0x3c,0xff,0x8f,0xdf,0x7f,0xb7,0xc6,0xa7,0x9f,0xca,0xfd,0x0e,0xdf,0x7b,0xb7,0x3b,0x9c,0x79, + 0x3c,0xdd,0xd7,0xf8,0xef,0xcf,0xfb,0xf3,0xff,0xfb,0xf3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, +}; +static constexpr VoiceClip alertsVibrationOnlyClip = { + alertsVibrationOnlyData, sizeof(alertsVibrationOnlyData), 8723, 8000, VoiceCodec::G72624 +}; +#endif // HAS_DRV2605 +#ifdef HAS_DRV2605 +// "Silent" +static const uint8_t alertsSilentData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x8e,0xc7,0xb7,0xea,0x9f, + 0x7f,0xeb,0xfd,0xde,0x2f,0xfe,0x4c,0xfb,0x9e,0x77,0x3b,0xf4,0x51,0x3f,0xcd,0x77,0xbe,0xb3,0xbe,0xdf, + 0xae,0xac,0xeb,0x95,0xce,0xf6,0xaf,0x71,0x34,0xe9,0xbf,0x27,0x62,0xaf,0x7b,0xff,0xb2,0x97,0xad,0x8a, + 0xf8,0xdb,0xd9,0xe4,0xe9,0xcf,0xff,0xcc,0x79,0x5f,0xd3,0xfe,0xdf,0xec,0x97,0xfe,0x1e,0x51,0xa5,0x6b, + 0xba,0x2f,0xe3,0x17,0x26,0x7d,0x7f,0x78,0x9c,0x77,0xf9,0xed,0xb9,0x84,0x9f,0xbd,0xa8,0xfe,0x4c,0xcb, + 0x9f,0xec,0x3f,0xee,0xf7,0xf3,0x95,0xfe,0xf7,0x7e,0x55,0xb9,0xec,0x49,0xc6,0xce,0x57,0xea,0xd2,0x9e, + 0xff,0x2e,0x74,0xd8,0xed,0xaf,0x49,0x1d,0xb9,0xbb,0x76,0x4e,0xd7,0x22,0x56,0xf7,0xfe,0x8c,0x3b,0xe6, + 0xed,0x2a,0x97,0xa7,0xdf,0x33,0x97,0xdf,0xbc,0x55,0x39,0x1a,0xb5,0xf5,0x5c,0x73,0x5c,0xe5,0xf1,0xb6, + 0x73,0xcf,0xd4,0xfb,0xd3,0x38,0x95,0x49,0x47,0xfb,0x4a,0x25,0x1b,0x09,0xfc,0xe9,0xd1,0x45,0x59,0xf6, + 0x4b,0x4c,0xaa,0x5d,0x5f,0x69,0xa7,0x95,0x16,0xa6,0x9d,0x96,0x7f,0x1e,0x79,0x33,0x4b,0x72,0xdf,0xf3, + 0x8f,0xab,0x9f,0x95,0xbe,0xeb,0xcd,0xd7,0xf2,0xfe,0x28,0xe4,0x51,0xda,0xed,0x7f,0x5b,0x9b,0xf7,0xfd, + 0xff,0xe1,0x25,0x13,0x79,0xe8,0xa5,0xfe,0xfe,0xfd,0xf6,0x6b,0xf2,0xc9,0x3c,0xd9,0xb6,0xbf,0x7d,0xbb, + 0x6c,0xfd,0xa5,0xbb,0x7c,0x7e,0xbf,0xfc,0x4a,0x24,0x9f,0xf7,0xe7,0xf3,0xff,0xbd,0xb3,0xf6,0xd6,0xdd, + 0xff,0xe7,0xef,0xc9,0x29,0x93,0xf9,0xfb,0x72,0x76,0xde,0xdc,0xda,0xf7,0x6b,0x6e,0x27,0x1e,0x77,0xc4, + 0x92,0x89,0xff,0xff,0xb9,0xff,0x7d,0xb5,0x6c,0xfb,0xf4,0xd7,0xad,0xc9,0xfb,0x72,0x79,0x47,0xef,0xfe, + 0xfc,0xff,0x4e,0xdb,0x36,0x7e,0xda,0xcd,0xcf,0xfc,0xfd,0x4f,0x27,0xa3,0xfe,0xe7,0x73,0xce,0xdb,0xed, + 0xcb,0x66,0xfd,0xa6,0xfc,0xee,0x7f,0xbd,0x72,0x73,0xdf,0x73,0xff,0xea,0xfd,0xce,0xfd,0x35,0x6c,0x32, + 0xfe,0x55,0xf8,0xde,0x53,0xf9,0x6f,0xe9,0x58,0xef,0xf6,0xfc,0xe3,0x9b,0xf6,0x6f,0x3f,0xeb,0xdf,0xcd, + 0xef,0xaf,0x8f,0xdf,0x2e,0x76,0x3b,0x7e,0x4e,0xe9,0xbb,0x67,0xb7,0xf4,0x6e,0xc7,0x72,0x91,0xa7,0xe3, + 0x89,0x3b,0x63,0xbf,0xe7,0xfc,0x9b,0xd2,0xf9,0xf7,0x46,0xec,0x71,0x29,0x1b,0xff,0xfc,0x93,0xb7,0xff, + 0xf2,0x7e,0xc9,0xbd,0xaf,0x9b,0xe4,0x6e,0xdc,0xe4,0x51,0xbf,0xf3,0x89,0xff,0x63,0xff,0x3f,0xec,0x5b, + 0xda,0xe9,0x7e,0x46,0xef,0xbe,0x45,0x7d,0xff,0xfc,0x9f,0xf6,0x3b,0xf2,0x7d,0x35,0xbf,0xae,0xb3,0xe2, + 0xae,0xf4,0xd2,0x89,0xf4,0xef,0x89,0x3b,0xe3,0xbf,0x3c,0xef,0x93,0x5b,0x4d,0x21,0xc4,0xdf,0xef,0xc9, + 0xf3,0xff,0xdc,0x95,0xb9,0xa7,0x72,0x7f,0xff,0x37,0xfc,0xd6,0x52,0x4e,0xc6,0xfd,0xd9,0xe7,0xff,0x89, + 0x27,0x1f,0xbe,0x27,0x1c,0x71,0x6e,0xe9,0xa4,0xe7,0xfb,0xf5,0xd9,0x9e,0x71,0xf0,0x9e,0x71,0xf7,0xe2, + 0x79,0xc7,0xd6,0xfe,0xb7,0x4a,0x8f,0xc7,0x6b,0xd2,0xe7,0x9d,0xb2,0x3f,0x9f,0xb7,0xe7,0xf3,0xfd,0x4d, + 0xdf,0x74,0xbd,0x6f,0x8d,0xb8,0xae,0x4f,0xf7,0x9e,0x79,0x3b,0x7f,0xff,0x5f,0x6c,0xdf,0xde,0xcb,0x8e, + 0xfc,0xf9,0x8f,0x3d,0x2d,0x8d,0x5b,0x3f,0x8e,0xff,0x13,0xff,0xe9,0xba,0xad,0x93,0xef,0xc9,0xd0,0xe2, + 0x7b,0xff,0xe3,0xba,0xeb,0x7f,0xbe,0x27,0x1d,0xdb,0xff,0x59,0x29,0xdf,0xaf,0x77,0x27,0xa5,0xfe,0xff, + 0x72,0x4e,0xff,0x6c,0x7e,0x3d,0xb3,0x8d,0xd2,0x1d,0xf1,0x3a,0xfe,0x79,0x7c,0xfc,0xb6,0x5c,0xfc,0x77, + 0xdc,0xff,0xfb,0x7f,0xdd,0x26,0xf8,0xe5,0xee,0xfc,0xe6,0x4f,0xe7,0x7f,0xd7,0xff,0xfb,0xff,0xff,0xb6, + 0xb7,0xda,0x5d,0xfe,0x27,0x6d,0xcf,0x29,0x1e,0x7f,0xdc,0x9f,0xcf,0xd7,0xff,0x89,0x6c,0xfb,0xe5,0xdb, + 0xec,0xbe,0xd8,0xe2,0x52,0xe7,0xff,0xb9,0xff,0x9f,0x7e,0xfb,0xf6,0xd6,0x3b,0x4b,0xbe,0xdd,0x7d,0xb1, + 0xc4,0xa5,0xc9,0xff,0x7e,0x7e,0x5b,0xed,0x8d,0xed,0x9f,0xf1,0x93,0x7f,0xbf,0x5e,0xee,0x7f,0x49,0x1e, + 0x4e,0xf8,0x9f,0xf9,0xdb,0x6f,0x8b,0x7f,0xef,0x6c,0xa7,0xee,0x49,0xd4,0xfe,0x4a,0x44,0xf3,0xf7,0xc7, + 0xff,0xce,0xdb,0x76,0x8f,0xde,0xcb,0x3e,0xf8,0x93,0xf7,0xe7,0x92,0x92,0xcb,0xff,0xbf,0xe7,0x7f,0xf6, + 0xd9,0xbf,0xf7,0xba,0x4f,0x8e,0xfd,0x7f,0xbf,0x5d,0x14,0x89,0xfc,0xff,0xff,0x3f,0x7d,0xb7,0x69,0x7d, + 0xae,0x93,0x7d,0xcd,0x2b,0x7f,0x8a,0x25,0x12,0xbf,0xff,0x9d,0xff,0xfe,0xfd,0x93,0x5f,0x6d,0x6c,0xbb, + 0xf3,0xf1,0x3f,0x1c,0x4a,0x24,0x93,0xce,0xe7,0xff,0xff,0xdf,0x6c,0x9a,0x37,0x5d,0x6d,0xbf,0xf3,0xbf, + 0xff,0x9e,0xba,0x2b,0x9e,0x79,0xfc,0xff,0xbe,0xba,0xd2,0xda,0xbb,0x6d,0xe7,0xf8,0xff,0xcd,0x3f,0x92, + 0x49,0x3c,0x9c,0x7f,0xe7,0x1d,0xfe,0xfb,0xee,0xdf,0xba,0xef,0xaf,0xfb,0x93,0xf7,0xf9,0x72,0x4f,0x24, + 0xff,0xcf,0xc7,0xff,0xbe,0xdf,0x6d,0xdb,0x56,0xef,0xf6,0xdb,0xf3,0xce,0xdc,0xe4,0xb9,0xe7,0x2f,0xfe, + 0x3f,0x9c,0x76,0xc7,0x63,0xb3,0x67,0x5b,0x77,0xfb,0x7f,0xd7,0xdb,0x7e,0x51,0xe7,0x93,0xce,0x38,0x9f, + 0xfe,0xff,0x7c,0x76,0xed,0x9d,0x6d,0x3f,0x7f,0xf1,0xe6,0xef,0x8a,0x5c,0xff,0xcf,0xfc,0xfe,0x7f,0xdf, + 0x6f,0xfe,0xfe,0xa6,0xcc,0xdf,0x13,0xbe,0x38,0xef,0xa9,0x28,0xaf,0xbf,0x3f,0x9e,0x79,0xff,0x7d,0xff, + 0xff,0x7f,0x4b,0x7e,0xdf,0x8e,0xff,0xef,0xfe,0xfb,0x12,0x8f,0xe7,0x9e,0x79,0xe4,0xfd,0xfd,0x3b,0xfd, + 0xf6,0xd5,0xb7,0x76,0xcb,0x73,0xbf,0x3b,0xeb,0xca,0x7c,0xef,0xff,0xe7,0x95,0xce,0xdb,0x7c,0x71,0xdf, + 0xef,0x9b,0x72,0x6c,0x71,0xff,0x95,0xb5,0xbc,0xb2,0x4f,0xfc,0xff,0xc9,0x4b,0xfd,0xae,0xfb,0xef,0xf7, + 0xd9,0x36,0x64,0xc7,0xed,0xf1,0x27,0x5d,0x49,0x48,0xf7,0xfa,0xdc,0xf4,0x4f,0xc6,0xfd,0xe9,0xdf,0xef, + 0xaa,0x6d,0x49,0xff,0xbf,0x72,0x55,0xbb,0x72,0x89,0x28,0x93,0x4f,0x44,0x9f,0xf7,0xfb,0x7f,0xf1,0xde, + 0xf4,0xdf,0x9b,0xfd,0xbd,0xe8,0xfd,0x6f,0x2b,0x95,0xca,0xff,0x1e,0x57,0xe7,0x7c,0x76,0xff,0x1d,0xef, + 0xa5,0xb3,0x76,0xe6,0xdf,0xc9,0x3b,0x5c,0x7a,0xe4,0xa2,0x7f,0xfd,0x72,0x71,0xc6,0xfd,0x8e,0x3b,0x6d, + 0xb3,0x6f,0x6d,0xfe,0xde,0xae,0x76,0xbf,0xf2,0x49,0x47,0x9c,0x79,0x27,0xf3,0xbe,0xdf,0x1c,0x77,0xbf, + 0xde,0xdb,0xbb,0xff,0xb6,0x47,0xfb,0xb1,0xf8,0xa2,0x56,0xe7,0x1e,0x4f,0x27,0x7d,0xff,0xdf,0x1d,0xef, + 0xf5,0xb5,0x77,0xbf,0xca,0x89,0xdb,0x7c,0x69,0x29,0x7e,0x7f,0xe7,0x92,0x7f,0xdf,0xec,0x77,0x3b,0x7d, + 0xb1,0x6d,0x5b,0xce,0x9b,0x95,0xb5,0x3f,0x6c,0x92,0xc4,0xf3,0xfe,0x44,0xe3,0xbf,0xdb,0xff,0xfe,0xfb, + 0xec,0xd9,0xd7,0x1d,0x2f,0x2b,0xdd,0xce,0xb9,0x14,0x72,0xe7,0xee,0x57,0xe7,0xff,0xe9,0xdf,0xef,0xbe, + 0xdf,0x36,0x6d,0x3e,0x5d,0xd1,0xbf,0xff,0x6f,0x67,0x94,0x49,0xbd,0x73,0x89,0xff,0x53,0xbe,0xff,0xfd, + 0xbf,0x2d,0xea,0x74,0xd3,0x2f,0x8e,0xe6,0x6c,0xb9,0x25,0x73,0xb9,0x5c,0xa2,0xb6,0xfb,0xef,0x8e,0x37, + 0xef,0x9b,0x53,0x2b,0x66,0x3f,0xee,0x7d,0xb9,0x72,0x52,0x7b,0x9e,0x7f,0x44,0xfd,0xcd,0xfb,0xff,0xb1, + 0xbf,0x16,0xf4,0x76,0xca,0x7f,0xa4,0xfd,0x3e,0x58,0x96,0x71,0xcb,0x1c,0x89,0xf4,0xfd,0x7f,0xe6,0x1d, + 0xf6,0xcd,0x9b,0x95,0x97,0xf3,0xf2,0xfa,0xdf,0xce,0x4c,0xfe,0x79,0xdd,0x2e,0x79,0xfb,0x63,0xbf,0xff, + 0x6d,0xbb,0x67,0x73,0x2c,0xc7,0x62,0x7e,0xbb,0xff,0xd9,0x5c,0x93,0xba,0xeb,0x9f,0xf6,0xdf,0xee,0x77, + 0xda,0xfa,0xd9,0xc7,0xdb,0x3e,0xdf,0x2f,0x76,0x34,0xf4,0xff,0x47,0x73,0xd1,0xc8,0xfa,0x76,0xfb,0xff, + 0xb7,0xde,0xa6,0xf7,0x3a,0x4d,0xfd,0x25,0x5d,0x8e,0xc5,0x22,0x51,0xfb,0x93,0xf9,0x5b,0xef,0xbd,0x3f, + 0x7c,0x76,0xdd,0xbe,0x7a,0x96,0xfb,0x79,0x57,0x1a,0x61,0x45,0x74,0xbe,0x27,0x9c,0x8f,0xdf,0xed,0x8e, + 0xfb,0x9b,0xf7,0xcd,0xf5,0x8c,0x97,0x7a,0x7a,0xd4,0xdf,0xba,0x44,0xa3,0x8e,0x3f,0x92,0x71,0xdf,0x6f, + 0xff,0xff,0xed,0xfe,0x6c,0xfe,0x65,0xbf,0x5e,0xbf,0xbf,0xdc,0x51,0x25,0x2d,0xcf,0xfc,0xaf,0xf9,0xd7, + 0xef,0x79,0xde,0xfd,0xa3,0x7c,0xff,0xe5,0xfa,0xe5,0xcd,0xe6,0xde,0x8f,0x49,0x1e,0x4f,0xc5,0x6f,0xce, + 0xdb,0x7d,0x8e,0xf8,0xef,0xb3,0x64,0x93,0x65,0xda,0x63,0xfe,0xfe,0xec,0x4e,0x65,0x7e,0xbf,0xfd,0x73, + 0xd6,0xfb,0xfd,0xbf,0xfb,0xfd,0x7b,0x7c,0xae,0x65,0xd6,0x63,0xef,0xe6,0xde,0x4e,0x49,0x1e,0xbf,0xe4, + 0xf3,0x97,0xdb,0xfd,0xff,0xfb,0xff,0xab,0x67,0x93,0xa6,0xba,0x63,0xf6,0xff,0x6c,0xb9,0x29,0x7e,0xbf, + 0xe4,0x9c,0x4e,0xfb,0xfd,0xb9,0xa7,0x63,0x79,0x6c,0xfe,0xa6,0xdb,0x5c,0x7d,0xc7,0x6d,0xd7,0x25,0x1e, + 0x7a,0xdd,0x73,0xf9,0xdf,0x1d,0xf1,0xfb,0xdf,0xf6,0x6d,0x7f,0xfc,0xbb,0xdc,0x7f,0xb8,0xdd,0xca,0x3d, + 0x2d,0xcf,0xe7,0xa3,0xf9,0xfb,0x7f,0xf1,0xfb,0x6f,0x7d,0x2d,0xac,0x4c,0xdf,0x6d,0x8f,0xbb,0xed,0x97, + 0x59,0x2f,0xcf,0x3f,0x95,0xbf,0xff,0x63,0xbe,0x3e,0x9b,0xbf,0xfd,0xb5,0xfa,0x9b,0xef,0x77,0x33,0xed, + 0xe9,0x5c,0xf4,0x7f,0x27,0x92,0x7f,0xc7,0xec,0x77,0xff,0x7d,0xff,0xf9,0x37,0xff,0x53,0x7f,0x6f,0xfe, + 0x65,0xb7,0xe8,0xe2,0x4e,0x3d,0x63,0xcf,0xdf,0xfd,0xff,0xfb,0xff,0xb9,0xc7,0x16,0xce,0xe6,0x6f,0xf5, + 0xdf,0xdb,0xff,0xc8,0x9f,0xd1,0xc4,0x93,0xff,0x37,0xff,0xf6,0x3b,0xdf,0xff,0xeb,0x1c,0xda,0xbd,0x4f, + 0xff,0xd4,0xed,0x77,0xe7,0x23,0xf9,0x5c,0xf4,0x7f,0xff,0xef,0xf7,0xbf,0xdf,0xbf,0xf9,0x1a,0xd9,0xc7, + 0xff,0xb9,0xf6,0xfd,0x3e,0xbe,0x9f,0xf7,0x27,0x92,0x8f,0x47,0x9e,0x4e,0xff,0xed,0x4d,0xdb,0xfb,0xd9, + 0xe7,0x9f,0x8f,0x3b,0x1f,0x77,0xde,0xfe,0x6f,0x3f,0xe5,0xc9,0xe8,0xfe,0x8f,0xcb,0xfb,0xfe,0xbb,0x6a, + 0x9b,0xc7,0xfd,0xbf,0xd3,0xfb,0xef,0xf7,0xf3,0xf2,0x24,0x95,0xc9,0x47,0x1e,0x7e,0xff,0x6f,0xbd,0xff, + 0x64,0xff,0x3f,0xef,0xfe,0xa7,0xdd,0xbe,0xfb,0x9c,0x49,0xfc,0x93,0xc9,0xfd,0x63,0x72,0xdb,0x7d,0xf7, + 0xfb,0x16,0xea,0xdf,0xee,0x6f,0xc7,0x6d,0xf6,0xe7,0xfe,0x4f,0x3d,0x7e,0x49,0xdc,0xff,0xbf,0xdb,0xfd, + 0x4e,0xdf,0x37,0xf9,0xfb,0x1d,0xee,0xfe,0xef,0xe9,0xff,0xf2,0x7f,0x47,0x13,0xcf,0xe7,0xef,0xfe,0xdf, + 0xdc,0x77,0xbd,0x93,0xcf,0xfb,0x9b,0xbe,0xdb,0xfd,0xb9,0xdc,0xfe,0x79,0x3c,0x9e,0x7f,0x5b,0xff,0xbe, + 0xfa,0xfd,0xb1,0x2d,0x55,0x8d,0x3b,0x6f,0xbe,0xc7,0xec,0xbe,0x27,0x9e,0x79,0xe7,0xff,0xce,0xff,0x7f, + 0xbf,0xfb,0xfc,0x73,0x5f,0x1f,0xb6,0x3e,0xff,0xe9,0xc7,0x73,0xce,0x27,0x9e,0x7f,0xe7,0xfd,0xce,0xc7, + 0xef,0xef,0xdc,0xee,0x95,0x3f,0x7f,0xcf,0xdc,0xef,0xf9,0xdf,0x9d,0xcf,0xff,0x93,0xb1,0x27,0xf5,0x3f, + 0xc6,0x9f,0xbf,0x27,0x9d,0x4f,0x27,0x6f,0xf2,0x24,0x95,0xf9,0x5f,0x73,0xb5,0xfa,0x6c,0x69,0xe4,0xfe, + 0x79,0x27,0xaf,0xfe,0xde,0xfb,0xfe,0xff,0xfe,0xbe,0xf8,0xe2,0x4e,0x27,0x6a,0x8e,0xff,0xfc,0x7e,0xf9, + 0x6c,0x77,0x3a,0xe5,0xfb,0xcb,0xff,0xcf,0x38,0xfd,0xfd,0xf7,0x7f,0x7f,0xdf,0x3c,0xbe,0x75,0x7d,0xbf, + 0xdd,0x75,0xb1,0x9f,0xf3,0x97,0xbc,0xa3,0xf4,0xc4,0xf6,0x7d,0xdb,0x2c,0x62,0x3b,0x5c,0xb9,0xf9,0xff, + 0xa7,0x4b,0xfa,0x75,0xe5,0x75,0x69,0xab,0xe2,0x94,0x8b,0xfd,0xcc,0xc5,0x74,0xb1,0xda,0xe5,0xee,0x3b, + 0x1e,0xa2,0xd5,0x7e,0x6f,0x65,0x73,0xe6,0xdb,0xd5,0xa1,0xdd,0x33,0xba,0x27,0x1d,0x3f,0xd6,0xaf,0xc9, + 0x5b,0x92,0x77,0xd3,0xee,0x4f,0x27,0x5e,0x49,0x5f,0xef,0xbd,0xca,0xe3,0x4a,0xef,0x93,0x0e,0xbf,0x1d, + 0x4d,0xe9,0x1a,0x51,0x59,0x7b,0x8e,0xc7,0xfd,0xcc,0xfc,0x9c,0x8e,0xff,0xe2,0x56,0x27,0xdd,0xbe,0xc6, + 0xb5,0x96,0xda,0x7d,0xca,0x37,0x13,0x51,0x26,0xfd,0xbe,0x5c,0x9a,0xad,0x55,0x52,0xf1,0xdf,0xd7,0xfe, + 0xaa,0xe5,0xd6,0x2a,0x5c,0x4a,0x56,0x93,0x89,0x2a,0xed,0xaf,0x5f,0xad,0x89,0xe7,0xfe,0x7f,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfe, +}; +static constexpr VoiceClip alertsSilentClip = { + alertsSilentData, sizeof(alertsSilentData), 5717, 8000, VoiceCodec::G72624 +}; +#endif // HAS_DRV2605 +// "GPS on" +static const uint8_t gpsOnData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x8d,0xc7,0x7a,0xef,0xff, + 0x39,0xcb,0x53,0x49,0x44,0xdd,0xba,0xc7,0xe9,0xd6,0x3f,0xa3,0xf9,0x51,0xfe,0x61,0xdf,0xf2,0x71,0xbb, + 0xd7,0xff,0xeb,0x94,0x66,0xbf,0xc3,0xbd,0x58,0xdc,0xf6,0xff,0xec,0xa7,0xd9,0x53,0xc9,0xef,0xff,0x97, + 0x26,0x1f,0x4d,0x7b,0x93,0x8a,0xf7,0xcf,0xb9,0xdf,0xba,0xbe,0xfb,0x2a,0xb6,0x31,0x53,0xf1,0x39,0x6e, + 0xa1,0xdf,0xef,0xb1,0xbf,0x3c,0x49,0x74,0xea,0x71,0xa6,0x1d,0xce,0x5f,0x1c,0xf7,0x39,0x55,0x77,0x27, + 0x7f,0x69,0xdc,0x9a,0x5e,0xf8,0x9e,0x76,0x35,0xef,0xaa,0xa7,0x95,0xff,0xc6,0x9f,0x95,0x5b,0x9c,0x7e, + 0x5c,0xf2,0xbf,0x3d,0x72,0x7a,0xeb,0x5f,0x57,0x58,0xae,0xb7,0x55,0x53,0x6e,0xe7,0x63,0x49,0x38,0xef, + 0xdf,0xcc,0xe3,0x96,0xeb,0x18,0x79,0x27,0x76,0xbd,0xe7,0xff,0xe1,0x5f,0x9f,0xf2,0xd8,0xfa,0xbf,0xdc, + 0xfe,0x4a,0xff,0x1b,0xbe,0xcf,0x5f,0xd4,0x5b,0x9d,0xe9,0xf9,0x7f,0xeb,0xc4,0xef,0x91,0xcf,0x93,0xbc, + 0xff,0x9e,0x77,0x5c,0xed,0xcf,0xfc,0xec,0xce,0x5c,0xea,0xaa,0xe7,0x6f,0x8f,0x44,0xbc,0x79,0xc6,0x9d, + 0xae,0x73,0x1d,0xfe,0xdf,0x4e,0x4d,0x5a,0xbf,0xef,0x3c,0xa5,0xf9,0xa4,0xfc,0x6f,0x47,0x42,0x6b,0xda, + 0xff,0x09,0xd0,0xa3,0xf9,0xc5,0x3e,0x51,0xf9,0x7b,0xff,0x84,0xe3,0xf7,0xcb,0x7b,0xce,0xb7,0xec,0x7d, + 0xd7,0x1f,0x91,0xc9,0x72,0x91,0x5f,0x3c,0xbe,0x52,0x49,0x62,0xf7,0xc2,0x4b,0xff,0x94,0x59,0x27,0xff, + 0xcf,0xa7,0xfb,0x55,0xfe,0xe9,0xb6,0xdb,0x36,0x59,0x2f,0xfd,0x35,0xb6,0xeb,0xbf,0x25,0x24,0x8a,0x47, + 0x9f,0xcd,0xef,0x17,0x7a,0xd6,0xc9,0x6c,0xfe,0xe2,0x92,0x29,0x12,0x4f,0x3b,0x79,0x9f,0xaf,0xe5,0xaf, + 0x97,0x5b,0xf6,0xe4,0xa4,0x4a,0x28,0xef,0xff,0xd7,0x15,0x4a,0xa7,0xdf,0xaf,0xb7,0xec,0x79,0x48,0xa7, + 0xc9,0xc7,0xef,0xae,0xee,0x95,0x79,0x9f,0xdd,0xaf,0xff,0x12,0x89,0x4b,0x9e,0xbf,0xbb,0xeb,0xd4,0x26, + 0x13,0x4d,0xa7,0x6f,0x71,0x3d,0x12,0x8a,0x3c,0xf3,0xbe,0xdf,0x29,0xd4,0x3e,0x9d,0x7d,0xdf,0xd2,0x7a, + 0xe5,0x92,0x7a,0x3f,0x7d,0xf1,0xf1,0xdc,0x6f,0x33,0xdd,0xf6,0xe7,0x14,0x51,0x2b,0xae,0x7e,0x3b,0x75, + 0x09,0xa7,0x45,0x6f,0x87,0x6c,0x79,0x24,0xbe,0xba,0x3f,0xfc,0x69,0x31,0x1a,0x6e,0x36,0xed,0xbd,0xe7, + 0xf2,0x8a,0x25,0x72,0x7f,0xdf,0x75,0x16,0xab,0x45,0x3e,0xbf,0xc3,0xcf,0x25,0x2e,0x89,0x5b,0x9c,0x69, + 0x35,0xce,0x61,0xf3,0xeb,0xf6,0x27,0x22,0x5f,0x2b,0x2f,0xd5,0xfb,0x3a,0x7c,0x5b,0x7b,0x7d,0xfb,0x63, + 0xc9,0xef,0x95,0xd1,0xc7,0x7f,0x96,0xca,0xff,0xb7,0x9f,0x5f,0xaa,0xc4,0x92,0xf2,0x24,0xfe,0x76,0xfd, + 0x53,0xea,0xd7,0xdd,0xb5,0xfb,0xfe,0x57,0x48,0x95,0xd6,0xe6,0xfe,0xe9,0xf1,0x6c,0x67,0xf4,0xdf,0xff, + 0x44,0x92,0x56,0x5f,0x9d,0xbf,0x55,0x6c,0x75,0xf6,0xfd,0x7d,0x3f,0x92,0x51,0x44,0xf2,0xa9,0xdf,0xa8, + 0x4d,0x56,0xa9,0xf5,0xdb,0x73,0x91,0xe8,0xa3,0xd1,0xff,0x1d,0xd4,0x7e,0x2d,0xbc,0xdb,0x6d,0x4f,0xc9, + 0x74,0x52,0x3c,0x9e,0x69,0xe6,0xaf,0x4e,0xa6,0x7b,0x77,0xbf,0xf2,0x7b,0xe5,0x14,0x71,0xff,0xf3,0x8f, + 0xae,0x7d,0x76,0xbb,0x7a,0xb1,0x3d,0xf4,0x49,0x3f,0xf3,0x57,0xae,0xd5,0x7e,0xbb,0x5f,0xe9,0xdd,0x72, + 0x89,0x24,0xfe,0x7e,0xf9,0x7a,0xe9,0xf7,0x78,0x6d,0x37,0x1c,0x8f,0x45,0x12,0x4f,0xff,0xef,0xd4,0x46, + 0x2b,0x8c,0xfa,0xed,0x8e,0x3d,0x74,0x52,0xe4,0xf3,0x4e,0xc4,0xe3,0xea,0xb4,0xdd,0xa7,0xdf,0xd3,0xd1, + 0x28,0xa3,0xd7,0x3b,0x1d,0x96,0xca,0x93,0x0e,0x9f,0x5d,0x79,0xdc,0x94,0x8a,0x24,0x9e,0x77,0xde,0xad, + 0x9c,0x26,0x2b,0x7d,0xda,0x1d,0xf9,0x28,0xa4,0xba,0xe7,0xff,0xb7,0xca,0xf5,0x17,0xa6,0x63,0x36,0xdf, + 0x7e,0xb9,0x64,0xae,0xf7,0x27,0x6a,0x72,0x85,0x53,0xe2,0xbb,0xdb,0xef,0xf4,0x94,0x51,0x4b,0xa3,0xf9, + 0xa6,0xfc,0x7d,0x46,0xab,0x94,0xda,0xfb,0x7f,0xfc,0xa2,0x8a,0x5c,0x93,0xf7,0xfb,0x62,0x62,0x34,0xfa, + 0x75,0xd7,0x6a,0x77,0xfd,0x22,0x51,0x5d,0x7f,0xf7,0xdb,0x75,0xab,0xf8,0xef,0xb6,0xb7,0xea,0x77,0xe5, + 0x12,0x8a,0x3c,0xff,0xf6,0xd7,0x74,0x61,0x5f,0x7e,0x66,0xdb,0x5d,0xf7,0x3c,0x92,0x89,0x5f,0xaf,0xf7, + 0xdf,0x6e,0x7e,0x3d,0x7f,0xcd,0xd7,0x5b,0xbc,0xd4,0xad,0xc9,0x28,0x9e,0x49,0xc7,0x1d,0xff,0xff,0xfc, + 0x77,0xfb,0x6d,0xbd,0xfb,0x63,0xcf,0xe4,0xa2,0xb9,0x24,0xf3,0xd1,0xe7,0xff,0xf7,0xbe,0x7d,0xb6,0xc7, + 0x6f,0xce,0x2b,0xf3,0xd7,0x38,0xf3,0xb2,0x5f,0x1e,0x77,0xff,0x6d,0xee,0xde,0xff,0xbf,0x3b,0x95,0x89, + 0xe4,0x9f,0xce,0x2f,0x7f,0xce,0xff,0x7f,0xb7,0xdf,0x1d,0xf7,0xe4,0xe3,0x97,0xe4,0xe3,0xcf,0xfd,0x1a, + 0x79,0xdf,0x7d,0xbe,0xfb,0x7f,0xf7,0xf5,0x1d,0xcf,0xe4,0x9e,0x7f,0xfd,0x62,0xaf,0xff,0xfd,0xbe,0xa7, + 0x63,0xbe,0x38,0x93,0xff,0x27,0x9f,0xce,0xfc,0xfd,0x99,0x87,0x1d,0xff,0xdf,0xfe,0x77,0x3f,0x9f,0xcf, + 0x3f,0x9c,0x7f,0xdf,0xef,0xfd,0x4a,0xee,0x77,0xdf,0xef,0xff,0x3f,0xfe,0x7a,0xff,0xf3,0x8e,0xff,0xef, + 0xf7,0xf9,0x9b,0xf9,0xc7,0x6e,0x7e,0x35,0x7d,0xcf,0xff,0xf5,0xb9,0xa7,0xff,0x8f,0xa7,0x9f,0xfd,0xe4, + 0xe3,0xff,0xe4,0xff,0xbf,0xfc,0xec,0x4e,0xdf,0x93,0xfa,0xf9,0xe3,0xff,0xdf,0x7d,0xf6,0xc4,0xef,0xb1, + 0xff,0xf5,0xff,0xdd,0x1e,0x7a,0x3b,0xf3,0xf6,0x3f,0xe3,0x4f,0x3f,0x1f,0xff,0xe7,0x9f,0x76,0xdc,0xdd, + 0x8f,0xc7,0x23,0xff,0x3b,0x9c,0x4f,0xe4,0xfd,0xff,0xfb,0xfd,0xbe,0x3c,0x92,0x91,0xe7,0xff,0xb6,0x57, + 0xf3,0xff,0xbb,0x6e,0x6e,0xc7,0xf3,0xc9,0xff,0x9f,0xf9,0x3f,0x9b,0xff,0xfa,0xfd,0xcf,0xff,0xa4,0x4a, + 0xe7,0x73,0xbf,0xdc,0xff,0xaf,0xdf,0xef,0xce,0xbb,0x53,0xcf,0xdf,0x92,0x8a,0x24,0xf2,0x4f,0xbc,0xed, + 0xbe,0xb7,0xfc,0x7f,0x27,0x72,0x4e,0x3c,0xe3,0xf9,0xc4,0xf3,0xff,0xff,0xdf,0x57,0xdb,0x63,0xbe,0xcb, + 0x7f,0xf2,0x5a,0xf4,0x4e,0x2b,0xee,0xbe,0xdb,0x7d,0xce,0xc4,0xdf,0xc9,0x32,0x25,0x7f,0xff,0x66,0x77, + 0x7b,0x7e,0x79,0xfd,0x42,0x71,0x87,0xef,0xcf,0xdf,0x6b,0x99,0xc8,0xeb,0x5f,0xa7,0xf2,0x7f,0xa7,0x57, + 0xb1,0xe6,0x65,0xbe,0x5c,0xbd,0x59,0xbd,0x68,0x7e,0xc4,0xe3,0xcf,0xab,0xd7,0xf2,0xe6,0x73,0xa9,0xdf, + 0x17,0x8e,0xcf,0x55,0xb5,0x5a,0xa5,0x72,0x38,0xbe,0x4e,0xcb,0x42,0x6f,0xff,0xd4,0x62,0xfb,0x93,0xba, + 0xbb,0x7b,0xe7,0x3e,0xbf,0x0e,0x3e,0xa3,0xbf,0x70,0x9c,0x8f,0xd9,0x6e,0xbd,0xc6,0x73,0xb9,0xf5,0xea, + 0xb5,0x7b,0x2e,0x72,0xd4,0xea,0xb1,0xe6,0x93,0x5f,0xeb,0x1a,0x7d,0x78,0x9d,0xff,0xc4,0xf3,0xff,0xfb, + 0x7d,0x4d,0xfc,0xf2,0xf9,0xd9,0x5f,0xfe,0xaa,0xa5,0x56,0xdf,0x1b,0x8e,0x26,0x9d,0xc9,0xff,0xc3,0x4f, + 0xe7,0xaf,0x54,0x3b,0x9e,0x71,0xdc,0xe5,0x91,0xe7,0x6f,0x3c,0xdf,0x2e,0x8d,0x39,0x1e,0xba,0xc7,0xe3, + 0x57,0x2b,0x9b,0xae,0xd7,0xec,0x4a,0xff,0x6c,0x4f,0xbf,0xa3,0xc9,0x3c,0xab,0xee,0xba,0x73,0xfb,0xc5, + 0x17,0xfe,0xd7,0xf9,0xee,0xd9,0xe3,0xcb,0xcb,0xff,0x7f,0xd7,0x7e,0x71,0xff,0x2d,0x8d,0x5b,0x7c,0x7f, + 0xdc,0xd3,0x8a,0xea,0xfc,0xbf,0x45,0x6c,0xfe,0xbe,0xfd,0xbd,0xfb,0xbe,0xda,0x27,0x6f,0x2d,0x9f,0x7d, + 0xb1,0x27,0xf2,0x8a,0xe4,0xf6,0xcb,0x3c,0xfd,0xec,0xd7,0x6b,0xbe,0xe7,0x94,0x91,0x24,0x9e,0x5f,0xef, + 0x13,0x77,0x9b,0x4f,0xa9,0xbc,0x92,0x7a,0x5c,0x9e,0x72,0x59,0x1c,0xbd,0xd6,0xeb,0xb5,0xff,0x9e,0x51, + 0x27,0xae,0x7f,0xcc,0xe5,0x7a,0xbb,0x5d,0x6e,0xfb,0xfe,0x7a,0x25,0x1e,0x79,0xf9,0x3a,0x8d,0x5a,0xfb, + 0x75,0xde,0xff,0x97,0x2b,0x92,0x49,0xc7,0x17,0x49,0xaa,0xef,0x6f,0xb4,0xdf,0xf2,0xfd,0x12,0x49,0xfc, + 0xfe,0xb2,0xf5,0x5d,0xed,0xd7,0x7a,0x77,0x24,0xae,0x49,0x3f,0x9c,0x55,0x46,0xab,0x8c,0xde,0x7d,0xbe, + 0xcb,0x92,0x4a,0xeb,0xf3,0x8a,0xcb,0x55,0xaf,0xbb,0x5d,0xef,0xfc,0xf2,0x49,0x5c,0xfe,0x72,0x55,0x6e, + 0x76,0xd7,0x79,0xbe,0xfb,0x9e,0x51,0xeb,0x93,0x96,0xea,0xbd,0x55,0xde,0xed,0x71,0x87,0xe5,0x91,0x25, + 0x73,0xf9,0xfd,0xc7,0x79,0xbb,0xdd,0xa7,0xf5,0x53,0xcf,0x7c,0xf2,0xb1,0xff,0xba,0xbe,0x33,0xfd,0xb5, + 0xfa,0xaa,0x49,0x3d,0x23,0xfa,0xe6,0xa3,0x57,0xc6,0xfd,0x76,0xbe,0xe3,0xbf,0x5c,0x94,0x7a,0x38,0xe7, + 0x89,0x8b,0x6d,0xaf,0xb7,0xef,0xf1,0x3c,0xa2,0x79,0x5b,0x92,0xa3,0xd9,0x5f,0xae,0xbb,0x7a,0x77,0x39, + 0x12,0xb9,0xeb,0x9a,0xf7,0x54,0xeb,0xf5,0xda,0xfd,0x8e,0x5f,0xae,0x89,0xe4,0xe3,0xdd,0x3b,0x39,0xbc, + 0x36,0xef,0x8d,0xeb,0xa5,0xd1,0xeb,0x13,0x9e,0xe6,0xad,0x7d,0xbe,0xdf,0x8e,0xcb,0x92,0x89,0xe4,0xf3, + 0xc9,0xca,0x9d,0x7e,0xba,0xd3,0xbf,0xa8,0xf5,0xd1,0x27,0xf3,0xd7,0xea,0xff,0x0d,0xbb,0x6f,0xb7,0xc8, + 0xf5,0x91,0x47,0xff,0xdf,0xca,0x9d,0x15,0xd6,0xfd,0x4f,0xc4,0x93,0xd1,0xeb,0x9f,0x5e,0x2a,0x1d,0x7e, + 0xba,0xef,0x57,0xc7,0x94,0x57,0xeb,0xfe,0x55,0x5e,0xa9,0xf6,0xba,0xff,0x56,0xe7,0xa2,0x57,0x27,0xfe, + 0xf7,0x34,0xdf,0xad,0xdb,0x7d,0xbf,0x24,0x92,0x49,0xeb,0x12,0xaa,0xbd,0x43,0x6e,0xdb,0x6f,0xff,0x24, + 0x92,0x49,0xe7,0x23,0x5d,0xaa,0x1d,0x76,0xa6,0x9f,0x8a,0xcf,0x93,0xc9,0xe4,0xa8,0xbd,0x30,0xed,0xee, + 0x3b,0xe2,0x4f,0x48,0x9e,0xb1,0xe8,0xd5,0xe9,0xbb,0xcf,0xee,0xf5,0xd2,0xb9,0x25,0x73,0xff,0x46,0xab, + 0xcc,0x36,0xed,0xbd,0x3f,0x9e,0x89,0x5c,0xf2,0x71,0x55,0x6a,0xa6,0xf7,0x5d,0xfe,0x58,0xae,0x57,0x5c, + 0xff,0x91,0xae,0xd3,0x76,0xbe,0xd3,0xf2,0xe4,0xf4,0x57,0xe7,0x7e,0x5c,0x5e,0xab,0x75,0xda,0xe3,0x57, + 0x28,0x95,0xc9,0xe7,0xd4,0xaa,0xb8,0xdb,0xee,0xd7,0x9d,0xd7,0x24,0xae,0x4e,0x3f,0x17,0x1d,0xca,0xdf, + 0x3e,0xbf,0xd5,0xca,0x25,0x72,0xb7,0x35,0x2a,0xf5,0x57,0xdb,0x7d,0xde,0x93,0xd2,0x28,0x95,0xf9,0xd8, + 0xee,0x6f,0xf7,0xed,0xbe,0xfb,0x9f,0xd7,0x44,0x93,0xce,0x29,0xd3,0xf1,0xb7,0xcd,0xb7,0xe7,0x92,0x57, + 0x27,0xfe,0x77,0xc8,0xe5,0xf1,0x9f,0x6b,0xb7,0xe7,0x2e,0x8f,0x27,0xfc,0x7f,0xf9,0xfe,0xaf,0xda,0xeb, + 0xf7,0xcb,0x92,0x49,0xe7,0x9d,0xb9,0xfd,0xaa,0x7e,0xd6,0xed,0xb1,0xfc,0xf5,0xcf,0xe7,0xff,0xff,0x27, + 0xa5,0x4e,0xba,0xdd,0xbe,0x3c,0xaf,0xd1,0xfc,0xf2,0x79,0x3c,0xfe,0xfe,0x53,0x6f,0xa9,0xdf,0x9e,0xb1, + 0xe4,0xe3,0xc9,0xff,0xf3,0xb9,0x57,0xf9,0xcd,0xd7,0xf2,0xa9,0x27,0x9e,0x72,0xc4,0xef,0xce,0xf9,0x39, + 0xfc,0xfb,0x5e,0x79,0x5c,0x92,0x71,0xf9,0x63,0xff,0xfb,0xd3,0x5b,0xa8,0xc9,0x7d,0x2b,0x14,0x7f,0x37, + 0x2c,0x57,0x38,0xf8,0x6e,0xe7,0x37,0xf1,0x9b,0x7d,0x91,0xeb,0x9e,0x74,0x27,0xf3,0xf9,0xf3,0x7f,0x89, + 0x8d,0x63,0x6d,0xfe,0x93,0xd1,0x3b,0x1d,0x97,0xe9,0x7f,0xb6,0xdf,0x72,0x72,0x7e,0xb9,0x2e,0xf5,0x9c, + 0x8f,0xf4,0xd2,0xbf,0x2b,0xeb,0xaf,0x3f,0x9e,0xab,0x70,0xe9,0x71,0xf9,0xf2,0x7f,0x9c,0xe2,0x49,0xe6, + 0xdf,0xff,0xeb,0x93,0xab,0x77,0x79,0x36,0xbd,0x2e,0x57,0xbf,0x7c,0x97,0x27,0xed,0xb6,0x27,0x1e,0x76, + 0x6e,0x2d,0x25,0xd6,0xae,0x49,0x30,0xfd,0xc9,0x59,0x7b,0xf6,0xdc,0xfe,0x7f,0xc5,0x9a,0xec,0xb7,0x4e, + 0xb2,0x27,0xd3,0xea,0xe8,0xf5,0xb7,0xbf,0x73,0x8f,0xff,0x16,0xab,0xb2,0xf9,0x72,0xe4,0x9d,0xcf,0xa4, + 0xae,0x4f,0xc7,0x7a,0x4f,0x3f,0xfe,0x5a,0xaf,0x4d,0x34,0xca,0x93,0xcd,0x3e,0xa2,0x4f,0x5f,0x1d,0xbf, + 0x3b,0x9d,0xfd,0x6f,0x2f,0x66,0xb6,0x1f,0xc9,0x3f,0x9c,0x49,0x3c,0x9d,0xf6,0xff,0x9a,0x7f,0xd8,0xb7, + 0x96,0x9b,0x5b,0x4f,0x27,0xfc,0x4d,0xe8,0x9f,0xce,0xff,0x62,0x7f,0xff,0xec,0xdf,0x26,0x6b,0xed,0xe7, + 0x9e,0x6f,0xff,0x12,0xb9,0xe6,0xf3,0x4f,0x5f,0x1d,0xb1,0x6f,0x2b,0x6d,0xf6,0x9e,0x77,0x37,0x2c,0x7a, + 0x3f,0x1d,0xf1,0xff,0x9f,0xea,0xa5,0xac,0x75,0x97,0xdd,0xc9,0xdf,0xed,0xc9,0xe4,0xff,0xbf,0xc4,0xff, + 0xce,0xdb,0xa6,0xf1,0xd6,0x6d,0xb7,0xe7,0x6f,0xb7,0x5c,0xf5,0xbe,0xe6,0x93,0xff,0xc6,0x9c,0x9b,0xdf, + 0x69,0xbe,0xc7,0xab,0xbf,0xfc,0xae,0x7f,0xf4,0x9f,0xc9,0xdf,0xff,0x8a,0x6f,0x7d,0xa6,0xfb,0xfe,0xad, + 0x38,0xfe,0xf7,0xf8,0xde,0xb9,0xdc,0xdf,0xf9,0xc5,0xbd,0x2e,0x97,0x1f,0xba,0xb7,0x75,0xca,0x5e,0xf3, + 0xb9,0x27,0xff,0xef,0x27,0x96,0xfd,0xba,0xcf,0xf7,0xc7,0xcc,0x4f,0xe8,0x9f,0xbf,0xc4,0xff,0xff,0xdb, + 0xfe,0x5b,0xdf,0x79,0x76,0xfe,0xad,0x77,0xe7,0x24,0x77,0x3b,0xfe,0xbf,0x3f,0xec,0x71,0x6f,0xfd,0xac, + 0xbf,0x6e,0x76,0xbf,0xfe,0x5f,0x27,0x9d,0xc9,0xe7,0x9d,0xf7,0xf9,0xb3,0xcf,0xf2,0x7b,0xef,0x37,0x6f, + 0xe9,0x45,0x72,0xb7,0x3f,0x9e,0x4e,0xff,0xee,0xdf,0x3c,0xd9,0x6d,0xb8,0xed,0x7f,0xd8,0xa2,0x8a,0x3f, + 0x9e,0x79,0x5f,0xff,0xef,0x6b,0x9e,0x6c,0xb6,0xda,0xb6,0xd8,0xdc,0x4a,0x29,0x13,0xcf,0xc7,0xaf,0x96, + 0xf7,0xb5,0xff,0x52,0x59,0xe7,0xfb,0xe3,0xa7,0xeb,0x97,0xd7,0xeb,0x1e,0x56,0x24,0xf8,0x9f,0x38,0xeb, + 0x6e,0xd4,0xed,0xbf,0xbb,0x75,0x91,0x24,0x93,0xcf,0x5f,0xae,0x71,0xed,0xef,0xf5,0xba,0x6f,0x4e,0xb4, + 0xed,0xfd,0x3d,0x63,0xc9,0xe4,0xf2,0x4f,0x27,0xf6,0xf7,0xfe,0xfd,0xb5,0x3e,0xfb,0xf6,0xff,0x7f,0xfe, + 0x3f,0x2e,0x4f,0x79,0x7e,0xb9,0x6e,0x9f,0xe9,0x3c,0xda,0xa9,0x84,0xc3,0x8e,0xde,0xf8,0x4f,0x7a,0xe2, + 0xf1,0xfc,0xd3,0x91,0xef,0xde,0xfd,0x27,0xef,0xe1,0xc7,0xc3,0xbe,0xc7,0xad,0xbe,0x49,0x62,0x76,0xed, + 0x6d,0xbe,0xc8,0xd9,0xd4,0xdf,0xf2,0x71,0xbd,0x2f,0x8f,0x47,0x9b,0xf6,0x27,0xdb,0x4a,0x2a,0x5e,0x4b, + 0x3b,0xef,0xfa,0x3e,0x55,0xf7,0x3e,0x6e,0xf1,0x77,0x62,0xba,0x3a,0xd3,0x91,0xf3,0xef,0xd9,0xb4,0xaa, + 0x9d,0xba,0xfe,0xff,0xff,0x7d,0xd9,0xb8,0xfc,0x55,0xff,0x2a,0xbe,0x30,0xf2,0x71,0xbc,0x93,0xce,0xdf, + 0x2f,0x8c,0xff,0xf3,0x89,0xfd,0x1d,0x56,0xd8,0xeb,0xbd,0x29,0x4c,0x51,0x27,0xfc,0x56,0xfc,0xd8,0x4e, + 0xd9,0x4d,0x92,0xcf,0x93,0x96,0x5f,0xef,0xfe,0x53,0xe5,0xff,0xb5,0x14,0x6e,0xc7,0xbe,0x76,0x3f,0x9e, + 0x66,0x5b,0xe3,0xa5,0x4f,0x1d,0xf1,0x48,0xce,0x77,0x35,0x7c,0x49,0xd8,0xed,0xbe,0xdb,0xe2,0x4d,0xe7, + 0xe6,0x4f,0xfd,0x1d,0xe7,0xa4,0xfd,0xf9,0x87,0x2f,0xff,0xdb,0x9e,0x72,0xbf,0x2f,0x8d,0x9c,0xad,0xff, + 0x34,0x9b,0x72,0xba,0xfe,0x4a,0x57,0x13,0xbf,0x5b,0x74,0x7a,0xbf,0xd3,0xe1,0x3c,0xf5,0x6f,0xdb,0x6f, + 0x76,0xc5,0x2b,0x8a,0x2d,0x7b,0x6d,0x4b,0xcc,0x4a,0xe8,0xf9,0x97,0xde,0xdd,0x93,0xf9,0xfb,0xf9,0x7f, + 0x73,0xe1,0x2b,0xef,0x37,0x44,0x9f,0x67,0x47,0xff,0x3f,0x2f,0x9f,0xbd,0x47,0xfa,0x77,0x45,0x69,0x8d, + 0x44,0x93,0x8e,0xaa,0xa3,0x8e,0x56,0x2c,0xf1,0x39,0xd2,0xaf,0xec,0xef,0xdf,0xcb,0xe9,0xcd,0xd4,0xf2, + 0x53,0xd8,0xfd,0x4a,0x7b,0x7f,0xa7,0x24,0xe5,0xf9,0x49,0x1f,0xae,0x38,0xf3,0xce,0xf4,0xfe,0xbf,0xfa, + 0xdc,0x52,0xec,0xd5,0xd1,0xa7,0xfb,0x97,0xfa,0xd9,0xb2,0x7b,0x65,0xf1,0x2b,0x64,0x96,0xb2,0xdb,0xed, + 0xf8,0xa2,0x9a,0x68,0x94,0x75,0xfb,0xd9,0xf5,0x9f,0xfe,0x4a,0x3c,0xb4,0x7e,0xfe,0xdb,0xf6,0xdf,0x9d, + 0xf2,0xc7,0x92,0x79,0xe7,0xe3,0xdb,0xff,0x6d,0x6d,0xdf,0xfc,0x4f,0xff,0xae,0x8a,0x44,0xf2,0x77,0xa5, + 0xb3,0xaf,0xb6,0xdf,0xfe,0xe4,0xe3,0x57,0x24,0xa2,0x7f,0x38,0xec,0xd7,0xf6,0xed,0x61,0xc4,0xee,0x7e, + 0xdc,0xf5,0x91,0x3f,0xff,0xfe,0x4d,0x7f,0x6f,0x97,0x7e,0x77,0x3f,0xed,0xd7,0x25,0x13,0xff,0x3f,0x14, + 0xd9,0xbb,0xdd,0x6f,0x26,0xff,0xfd,0xfd,0x12,0x49,0x3b,0x9c,0xb7,0x2d,0x7b,0x3e,0xb6,0x93,0xfd,0x3f, + 0x7c,0x51,0x3d,0x7e,0x77,0x3c,0xfe,0xde,0xb3,0xef,0x31,0xeb,0x5f,0xfe,0xfd,0x23,0xcf,0x3f,0xe5,0xcf, + 0xed,0xdd,0x3e,0xf6,0x2f,0xfd,0xc7,0xee,0x4a,0x38,0xf3,0xf1,0xe4,0xee,0x99,0xb2,0x9d,0x76,0xeb,0xea, + 0x71,0xfc,0x95,0xff,0xff,0x9f,0xcf,0xfd,0xbd,0xa6,0xff,0x5e,0x4f,0xbb,0xf3,0xcf,0x47,0xff,0xf9,0xe7, + 0x9f,0xbb,0x7f,0x4f,0x8d,0xf4,0x9f,0xaf,0xc4,0xf2,0x49,0xc7,0x1e,0x4f,0xe7,0x1e,0xd6,0x97,0xe3,0xaf, + 0x27,0xdf,0x49,0x27,0x93,0xce,0x38,0x93,0xfe,0xf9,0xbf,0xa5,0xff,0x5f,0x91,0xbe,0xfe,0x56,0x58,0x9c, + 0x77,0x24,0xff,0xbf,0x6f,0xe9,0x77,0xdb,0x72,0x7e,0xbf,0x22,0x79,0xe7,0xff,0x89,0x3f,0xfd,0xd3,0x3e, + 0xc3,0x76,0xd4,0x9f,0xb6,0xc4,0x9e,0x79,0x38,0xee,0x49,0xff,0x7f,0x9b,0xc6,0x7b,0xb6,0xbc,0xfd,0xee, + 0xe4,0xf5,0x97,0x3f,0xfe,0xb9,0xff,0xee,0x53,0xe6,0x7d,0x76,0xbf,0x9d,0xb6,0xfd,0x65,0xf9,0xe7,0x1f, + 0xd7,0xff,0x63,0x93,0x5e,0xcf,0xbe,0xfb,0xf3,0xb6,0xdc,0xa3,0xff,0x38,0xff,0xc9,0xe7,0x6d,0xca,0x6f, + 0xeb,0xb7,0xdf,0x7c,0x7d,0xdb,0x94,0x4f,0xc7,0xf3,0xf9,0xe7,0xfd,0xb9,0xcd,0x9f,0xa6,0xf8,0xfd,0xbf, + 0xfb,0x6e,0x4a,0xe7,0x73,0xcf,0x3c,0xf3,0xf7,0xfb,0x96,0xff,0xba,0xe3,0xbe,0xdf,0xfb,0xf7,0x28,0xff, + 0xff,0x27,0xf2,0x79,0xde,0xfe,0xba,0x6f,0xeb,0xb7,0xdf,0x6d,0xf7,0xbf,0x12,0xbf,0xff,0x93,0xcf,0x27, + 0xff,0xf7,0x3c,0xd4,0xd9,0x9f,0x7d,0xfe,0xdf,0x1b,0xf6,0x25,0x1f,0xf9,0xe5,0x62,0x79,0xff,0x7f,0xff, + 0xf9,0xa3,0xe5,0xde,0xfd,0xb7,0xfb,0xed,0xd1,0x27,0x1e,0x49,0xe7,0x9e,0x7e,0xff,0xf3,0xb7,0x2d,0x19, + 0x7e,0xdf,0x6d,0xff,0xf7,0x72,0x51,0xfc,0xf2,0x7f,0x27,0x9f,0xf7,0xfc,0xef,0xb3,0x4b,0x5d,0x77,0xda, + 0x9c,0x7d,0xfb,0x22,0x4f,0x3d,0x72,0x79,0x2f,0x1d,0xf1,0xff,0xed,0xf9,0x6e,0xdd,0xf7,0xd7,0x65,0x8e, + 0x9f,0x95,0xd6,0xe4,0x9e,0xb7,0x7c,0xef,0xb2,0xa7,0x6f,0x8d,0x4d,0xeb,0xbe,0xe7,0x53,0xff,0xd7,0x74, + 0x97,0xe7,0x95,0xcf,0x25,0x7d,0xf6,0x3f,0xef,0xf7,0xdf,0x36,0x6c,0xfb,0x1d,0xb7,0x5b,0xdb,0xf3,0x27, + 0xff,0xd7,0xe7,0x92,0xb7,0xdb,0xf3,0xbe,0xfb,0xfd,0x9b,0x52,0xdc,0x77,0xd7,0x93,0xe6,0xfd,0x25,0x8f, + 0xe8,0xfe,0x4a,0x3f,0x6d,0xf9,0xdb,0xef,0xbd,0xfd,0xb7,0x27,0xf7,0xfb,0x97,0x36,0xea,0x8a,0xe7,0x92, + 0x4e,0x29,0x23,0xbe,0xfb,0xe3,0xbf,0xfb,0x6f,0xf3,0x6e,0xcd,0xe9,0xbf,0x13,0xf5,0x9f,0x92,0xb1,0x27, + 0xf3,0x8b,0x3c,0xef,0x8f,0xdf,0x1c,0x6e,0xf7,0xfe,0x9b,0xf2,0x7f,0x76,0xcb,0x9b,0x6e,0xef,0xf5,0xc9, + 0x38,0xe4,0x89,0xff,0xe3,0xbe,0xe7,0x7d,0xb6,0x3b,0xe6,0xd6,0x97,0xef,0xb1,0xef,0x7b,0x39,0x47,0xae, + 0xbf,0x34,0x94,0x7f,0xff,0xef,0xbf,0xff,0x6f,0x7f,0xd8,0xf6,0xde,0xbc,0xdf,0xbe,0x4a,0xfb,0x7f,0x5c, + 0xa2,0x7f,0xfc,0x92,0x79,0xff,0xed,0xce,0xfb,0x79,0xf6,0xff,0xe4,0xdb,0xb4,0xfd,0xb1,0xe7,0xdd,0xf7, + 0xfc,0xa2,0x4e,0x3c,0x9e,0xb9,0xe7,0x63,0xbf,0xca,0x9b,0x7e,0xdb,0x9d,0x9b,0x7a,0xff,0xb6,0xc8,0xfb, + 0xf6,0xfb,0x94,0xb2,0xc4,0xf3,0xca,0xe7,0x1d,0xfe,0xff,0xe3,0xb6,0xfb,0xe3,0x8e,0x6d,0xeb,0xfe,0xdb, + 0xa3,0xe7,0xfb,0xd2,0x52,0xab,0x9f,0x8f,0x47,0xf3,0xf7,0xfb,0x9d,0xff,0xbf,0x63,0xfe,0x58,0xb6,0xad, + 0xfe,0xce,0xb9,0xb8,0xfb,0x7a,0x2b,0x92,0x4e,0xc5,0x7e,0xb2,0xf4,0xe3,0xbf,0xff,0x7d,0xfe,0xff,0xff, + 0xdb,0x5a,0xfd,0x2e,0x5f,0xde,0x76,0x84,0x93,0x92,0x3b,0x92,0x7f,0x24,0xef,0xff,0xdf,0x1d,0xbe,0x3b, + 0xee,0x77,0xcd,0xbf,0xce,0xb7,0x6d,0x6f,0xda,0xee,0x4f,0x28,0xae,0xba,0x3c,0x93,0xbf,0xff,0x6f,0xbd, + 0x34,0xef,0xb9,0xfc,0x96,0xd6,0x2a,0xdf,0x3e,0x9b,0xeb,0xe9,0xc7,0x14,0x57,0x48,0x93,0xd7,0xdc,0xed, + 0xbd,0xfb,0x6f,0xf7,0xff,0xf3,0xcb,0x78,0x93,0xf7,0xc6,0xdd,0xbd,0xdb,0xef,0xf2,0xfc,0xf5,0xd6,0x47, + 0xf3,0xff,0xf8,0xeb,0xf7,0xbf,0x7d,0xfd,0x25,0xbf,0xf3,0xd8,0xff,0x4d,0xfe,0xef,0xfe,0xc4,0xee,0x7a, + 0xc4,0x93,0xcf,0x27,0x1f,0xff,0xdf,0xed,0xfd,0xfb,0xe2,0xdd,0x27,0xfa,0x7f,0xd7,0x7f,0x77,0xff,0x65, + 0x8f,0x3c,0x9c,0xb9,0xfc,0xf3,0xb9,0xdb,0xff,0xb5,0xff,0xdf,0xeb,0x66,0xf5,0xef,0x3b,0x5d,0x8d,0xbc, + 0xed,0xd6,0x58,0x92,0x71,0x58,0xf3,0x8e,0xff,0x7f,0xbf,0xdf,0xfd,0xce,0x3d,0xbd,0x8f,0xd7,0xef,0x61, + 0xdf,0x63,0xf7,0x24,0xf2,0x49,0xfc,0x9f,0xcf,0xd8,0xff,0xb7,0x3b,0x7f,0xbf,0xca,0x96,0xf7,0x3f,0x6f, + 0x8d,0x9f,0xfb,0x8f,0xdc,0x9e,0x72,0x59,0x72,0x79,0xe7,0x1f,0xfe,0xfb,0xfd,0xfe,0xdf,0xfe,0xdf,0xc7, + 0x9b,0x8f,0xb3,0xed,0xaf,0x37,0xf2,0x71,0x2b,0x92,0x4f,0xeb,0x9f,0x8f,0xc7,0xfd,0xf7,0xdf,0x7f,0x5a, + 0xdf,0x9f,0x71,0xf6,0xed,0xb6,0x3f,0x62,0x79,0xe4,0x9e,0x57,0xfc,0x9c,0x7f,0x3b,0x7f,0xf1,0xbf,0x63, + 0xf3,0x7f,0x13,0xbf,0xc6,0xcd,0xf5,0xdf,0xea,0x4f,0x3c,0x92,0x7b,0xc7,0x93,0xff,0x3b,0xff,0xfe,0xff, + 0xe3,0xbf,0x6a,0xac,0x77,0xfb,0xcd,0xb6,0xbb,0xed,0x8f,0xc7,0x92,0x79,0x3f,0x92,0x79,0xc7,0xe3,0xfe, + 0xff,0x2f,0x8e,0xc7,0x9f,0xf7,0xc7,0x9f,0xf7,0xc7,0x9f,0xf7,0xff,0x9f,0xff,0xdf,0xf3,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, +}; +static constexpr VoiceClip gpsOnClip = { + gpsOnData, sizeof(gpsOnData), 9683, 8000, VoiceCodec::G72624 +}; +// "GPS off" +static const uint8_t gpsOffData[] = { + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0x8d,0xc7,0x7a,0xef,0xff, + 0x39,0xcb,0x53,0x49,0x44,0xdd,0xba,0xc7,0xe9,0xd6,0x3f,0xa3,0xf9,0x51,0xfe,0x61,0xdf,0xf2,0x71,0xbb, + 0xd7,0xff,0xeb,0x94,0x66,0xbf,0xc3,0xbd,0x58,0xdc,0xf6,0xff,0xec,0xa7,0xd9,0x53,0xc9,0xef,0xff,0x97, + 0x26,0x1f,0x4d,0x7b,0x93,0x8a,0xf7,0xcf,0xb9,0xdf,0xba,0xbe,0xfb,0x2a,0xb6,0x31,0x53,0xf1,0x39,0x6e, + 0xa1,0xdf,0xef,0xb1,0xbf,0x3c,0x49,0x74,0xea,0x71,0xa6,0x1d,0xce,0x5f,0x1c,0xf7,0x39,0x55,0x77,0x27, + 0x7f,0x69,0xdc,0x9a,0x5e,0xf8,0x9e,0x76,0x35,0xef,0xaa,0xa7,0x95,0xff,0xc6,0x9f,0x95,0x5b,0x9c,0x7e, + 0x5c,0xf2,0xbf,0x3d,0x72,0x7a,0xeb,0x5f,0x57,0x58,0xae,0xb7,0x55,0x53,0x6e,0xe7,0x63,0x49,0x38,0xef, + 0xdf,0xcc,0xe3,0x96,0xeb,0x18,0x79,0x27,0x76,0xbd,0xe7,0xff,0xe1,0x5f,0x9f,0xf2,0xd8,0xfa,0xbf,0xdc, + 0xfe,0x4a,0xff,0x1b,0xbe,0xcf,0x5f,0xd4,0x5b,0x9d,0xe9,0xf9,0x7f,0xeb,0xc4,0xef,0x91,0xcf,0x93,0xbc, + 0xff,0x9e,0x77,0x5c,0xed,0xcf,0xfc,0xec,0xce,0x5c,0xea,0xaa,0xe7,0x6f,0x8f,0x44,0xbc,0x79,0xc6,0x9d, + 0xae,0x73,0x1d,0xfe,0xdf,0x4e,0x4d,0x5a,0xbf,0xef,0x3c,0xa5,0xf9,0xa4,0xfc,0x6f,0x47,0x42,0x6b,0xda, + 0xff,0x09,0xd0,0xa3,0xf9,0xc5,0x3e,0x51,0xf9,0x7b,0xff,0x84,0xe3,0xf7,0xcb,0x7b,0xce,0xb7,0xec,0x7d, + 0xd7,0x1f,0x91,0xc9,0x72,0x91,0x5f,0x3c,0xbe,0x52,0x49,0x62,0xf7,0xc2,0x4b,0xff,0x94,0x59,0x27,0xff, + 0xcf,0xa7,0xfb,0x55,0xfe,0xe9,0xb6,0xdb,0x36,0x59,0x2f,0xfd,0x35,0xb6,0xeb,0xbf,0x25,0x24,0x8a,0x47, + 0x9f,0xcd,0xef,0x17,0x7a,0xd6,0xc9,0x6c,0xfe,0xe2,0x92,0x29,0x12,0x4f,0x3b,0x79,0x9f,0xaf,0xe5,0xaf, + 0x97,0x5b,0xf6,0xe4,0xa4,0x4a,0x28,0xef,0xff,0xd7,0x15,0x4a,0xa7,0xdf,0xaf,0xb7,0xec,0x79,0x48,0xa7, + 0xc9,0xc7,0xef,0xae,0xee,0x95,0x79,0x9f,0xdd,0xaf,0xff,0x12,0x89,0x4b,0x9e,0xbf,0xbb,0xeb,0xd4,0x26, + 0x13,0x4d,0xa7,0x6f,0x71,0x3d,0x12,0x8a,0x3c,0xf3,0xbe,0xdf,0x29,0xd4,0x3e,0x9d,0x7d,0xdf,0xd2,0x7a, + 0xe5,0x92,0x7a,0x3f,0x7d,0xf1,0xf1,0xdc,0x6f,0x33,0xdd,0xf6,0xe7,0x14,0x51,0x2b,0xae,0x7e,0x3b,0x75, + 0x09,0xa7,0x45,0x6f,0x87,0x6c,0x79,0x24,0xbe,0xba,0x3f,0xfc,0x69,0x31,0x1a,0x6e,0x36,0xed,0xbd,0xe7, + 0xf2,0x8a,0x25,0x72,0x7f,0xdf,0x75,0x16,0xab,0x45,0x3e,0xbf,0xc3,0xcf,0x25,0x2e,0x89,0x5b,0x9c,0x69, + 0x35,0xce,0x61,0xf3,0xeb,0xf6,0x27,0x22,0x5f,0x2b,0x2f,0xd5,0xfb,0x3a,0x7c,0x5b,0x7b,0x7d,0xfb,0x63, + 0xc9,0xef,0x95,0xd1,0xc7,0x7f,0x96,0xca,0xff,0xb7,0x9f,0x5f,0xaa,0xc4,0x92,0xf2,0x24,0xfe,0x76,0xfd, + 0x53,0xea,0xd7,0xdd,0xb5,0xfb,0xfe,0x57,0x48,0x95,0xd6,0xe6,0xfe,0xe9,0xf1,0x6c,0x67,0xf4,0xdf,0xff, + 0x44,0x92,0x56,0x5f,0x9d,0xbf,0x55,0x6c,0x75,0xf6,0xfd,0x7d,0x3f,0x92,0x51,0x44,0xf2,0xa9,0xdf,0xa8, + 0x4d,0x56,0xa9,0xf5,0xdb,0x73,0x91,0xe8,0xa3,0xd1,0xff,0x1d,0xd4,0x7e,0x2d,0xbc,0xdb,0x6d,0x4f,0xc9, + 0x74,0x52,0x3c,0x9e,0x69,0xe6,0xaf,0x4e,0xa6,0x7b,0x77,0xbf,0xf2,0x7b,0xe5,0x14,0x71,0xff,0xf3,0x8f, + 0xae,0x7d,0x76,0xbb,0x7a,0xb1,0x3d,0xf4,0x49,0x3f,0xf3,0x57,0xae,0xd5,0x7e,0xbb,0x5f,0xe9,0xdd,0x72, + 0x89,0x24,0xfe,0x7e,0xf9,0x7a,0xe9,0xf7,0x78,0x6d,0x37,0x1c,0x8f,0x45,0x12,0x4f,0xff,0xef,0xd4,0x46, + 0x2b,0x8c,0xfa,0xed,0x8e,0x3d,0x74,0x52,0xe4,0xf3,0x4e,0xc4,0xe3,0xea,0xb4,0xdd,0xa7,0xdf,0xd3,0xd1, + 0x28,0xa3,0xd7,0x3b,0x1d,0x96,0xca,0x93,0x0e,0x9f,0x5d,0x79,0xdc,0x94,0x8a,0x24,0x9e,0x77,0xde,0xad, + 0x9c,0x26,0x2b,0x7d,0xda,0x1d,0xf9,0x28,0xa4,0xba,0xe7,0xff,0xb7,0xca,0xf5,0x17,0xa6,0x63,0x36,0xdf, + 0x7e,0xb9,0x64,0xae,0xf7,0x27,0x6a,0x72,0x85,0x53,0xe2,0xbb,0xdb,0xef,0xf4,0x94,0x51,0x4b,0xa3,0xf9, + 0xa6,0xfc,0x7d,0x46,0xab,0x94,0xda,0xfb,0x7f,0xfc,0xa2,0x8a,0x5c,0x93,0xf7,0xfb,0x62,0x62,0x34,0xfa, + 0x75,0xd7,0x6a,0x77,0xfd,0x22,0x51,0x5d,0x7f,0xf7,0xdb,0x75,0xab,0xf8,0xef,0xb6,0xb7,0xea,0x77,0xe5, + 0x12,0x8a,0x3c,0xff,0xf6,0xd7,0x74,0x61,0x5f,0x7e,0x66,0xdb,0x5d,0xf7,0x3c,0x92,0x89,0x5f,0xaf,0xf7, + 0xdf,0x6e,0x7e,0x3d,0x7f,0xcd,0xd7,0x5b,0xbc,0xd4,0xad,0xc9,0x28,0x9e,0x49,0xc7,0x1d,0xff,0xff,0xfc, + 0x77,0xfb,0x6d,0xbd,0xfb,0x63,0xcf,0xe4,0xa2,0xb9,0x24,0xf3,0xd1,0xe7,0xff,0xf7,0xbe,0x7d,0xb6,0xc7, + 0x6f,0xce,0x2b,0xf3,0xd7,0x38,0xf3,0xb2,0x5f,0x1e,0x77,0xff,0x6d,0xee,0xde,0xff,0xbf,0x3b,0x95,0x89, + 0xe4,0x9f,0xce,0x2f,0x7f,0xce,0xff,0x7f,0xb7,0xdf,0x1d,0xf7,0xe4,0xe3,0x97,0xe4,0xe3,0xcf,0xfd,0x1a, + 0x79,0xdf,0x7d,0xbe,0xfb,0x7f,0xf7,0xf5,0x1d,0xcf,0xe4,0x9e,0x7f,0xfd,0x62,0xaf,0xff,0xfd,0xbe,0xa7, + 0x63,0xbe,0x38,0x93,0xff,0x27,0x9f,0xce,0xfc,0xfd,0x99,0x87,0x1d,0xff,0xdf,0xfe,0x77,0x3f,0x9f,0xcf, + 0x3f,0x9c,0x7f,0xdf,0xef,0xfd,0x4a,0xee,0x77,0xdf,0xef,0xff,0x3f,0xfe,0x7a,0xff,0xf3,0x8e,0xff,0xef, + 0xf7,0xf9,0x9b,0xf9,0xc7,0x6e,0x7e,0x35,0x7d,0xcf,0xff,0xf5,0xb9,0xa7,0xff,0x8f,0xa7,0x9f,0xfd,0xe4, + 0xe3,0xff,0xe4,0xff,0xbf,0xfc,0xec,0x4e,0xdf,0x93,0xfa,0xf9,0xe3,0xff,0xdf,0x7d,0xf6,0xc4,0xef,0xb1, + 0xff,0xf5,0xff,0xdd,0x1e,0x7a,0x3b,0xf3,0xf6,0x3f,0xe3,0x4f,0x3f,0x1f,0xff,0xe7,0x9f,0x76,0xdc,0xdd, + 0x8f,0xc7,0x23,0xff,0x3b,0x9c,0x4f,0xe4,0xfd,0xff,0xfb,0xfd,0xbe,0x3c,0x92,0x91,0xe7,0xff,0xb6,0x57, + 0xf3,0xff,0xbb,0x6e,0x6e,0xc7,0xf3,0xc9,0xff,0x9f,0xf9,0x3f,0x9b,0xff,0xfa,0xfd,0xcf,0xff,0xa4,0x4a, + 0xe7,0x73,0xbf,0xdc,0xff,0xaf,0xdf,0xef,0xce,0xbb,0x53,0xcf,0xdf,0x92,0x8a,0x24,0xf2,0x4f,0xbc,0xed, + 0xbe,0xb7,0xfc,0x7f,0x27,0x72,0x4e,0x3c,0xe3,0xf9,0xc4,0xf3,0xff,0xff,0xdf,0x57,0xdb,0x63,0xbe,0xcb, + 0x7f,0xf2,0x5a,0xf4,0x4e,0x2b,0xee,0xbe,0xdb,0x7d,0xce,0xc4,0xdf,0xc9,0x32,0x25,0x7f,0xff,0x66,0x77, + 0x7b,0x7e,0x79,0xfd,0x42,0x71,0x87,0xef,0xcf,0xdf,0x6b,0x99,0xc8,0xeb,0x5f,0xa7,0xf2,0x7f,0xa7,0x57, + 0xb1,0xe6,0x65,0xbe,0x5c,0xbd,0x59,0xbd,0x68,0x7e,0xc4,0xe3,0xcf,0xab,0xd7,0xf2,0xe6,0x73,0xa9,0xdf, + 0x17,0x8e,0xcf,0x55,0xb5,0x5a,0xa5,0x72,0x38,0xbe,0x4e,0xcb,0x42,0x6f,0xff,0xd4,0x62,0xfb,0x93,0xba, + 0xbb,0x7b,0xe7,0x3e,0xbf,0x0e,0x3e,0xa3,0xbf,0x70,0x9c,0x8f,0xd9,0x6e,0xbd,0xc6,0x73,0xb9,0xf5,0xea, + 0xb5,0x7b,0x2e,0x72,0xd4,0xea,0xb1,0xe6,0x93,0x5f,0xeb,0x1a,0x7d,0x78,0x9d,0xff,0xc4,0xf3,0xff,0xfb, + 0x7d,0x4d,0xfc,0xf2,0xf9,0xd9,0x5f,0xfe,0xaa,0xa5,0x56,0xdf,0x1b,0x8e,0x26,0x9d,0xc9,0xff,0xc3,0x4f, + 0xe7,0xaf,0x54,0x3b,0x9e,0x71,0xdc,0xe5,0x91,0xe7,0x6f,0x3c,0xdf,0x2e,0x8d,0x39,0x1e,0xba,0xc7,0xe3, + 0x57,0x2b,0x9b,0xae,0xd7,0xec,0x4a,0xff,0x6c,0x4f,0xbf,0xa3,0xc9,0x3c,0xab,0xee,0xba,0x73,0xfb,0xc5, + 0x17,0xfe,0xd7,0xf9,0xee,0xd9,0xe3,0xcb,0xcb,0xff,0x7f,0xd7,0x7e,0x71,0xff,0x2d,0x8d,0x5b,0x7c,0x7f, + 0xdc,0xd3,0x8a,0xea,0xfc,0xbf,0x45,0x6c,0xfe,0xbe,0xfd,0xbd,0xfb,0xbe,0xda,0x27,0x6f,0x2d,0x9f,0x7d, + 0xb1,0x27,0xf2,0x8a,0xe4,0xf6,0xcb,0x3c,0xfd,0xec,0xd7,0x6b,0xbe,0xe7,0x94,0x91,0x24,0x9e,0x5f,0xef, + 0x13,0x77,0x9b,0x4f,0xa9,0xbc,0x92,0x7a,0x5c,0x9e,0x72,0x59,0x1c,0xbd,0xd6,0xeb,0xb5,0xff,0x9e,0x51, + 0x27,0xae,0x7f,0xcc,0xe5,0x7a,0xbb,0x5d,0x6e,0xfb,0xfe,0x7a,0x25,0x1e,0x79,0xf9,0x3a,0x8d,0x5a,0xfb, + 0x75,0xde,0xff,0x97,0x2b,0x92,0x49,0xc7,0x17,0x49,0xaa,0xef,0x6f,0xb4,0xdf,0xf2,0xfd,0x12,0x49,0xfc, + 0xfe,0xb2,0xf5,0x5d,0xed,0xd7,0x7a,0x77,0x24,0xae,0x49,0x3f,0x9c,0x55,0x46,0xab,0x8c,0xde,0x7d,0xbe, + 0xcb,0x92,0x4a,0xeb,0xf3,0x8a,0xcb,0x55,0xaf,0xbb,0x5d,0xef,0xfc,0xf2,0x49,0x5c,0xfe,0x72,0x55,0x6e, + 0x76,0xd7,0x79,0xbe,0xfb,0x9e,0x51,0xeb,0x93,0x96,0xea,0xbd,0x55,0xde,0xed,0x71,0x87,0xe5,0x91,0x25, + 0x73,0xf9,0xfd,0xc7,0x79,0xbb,0xdd,0xa7,0xf5,0x53,0xcf,0x7c,0xf2,0xb1,0xff,0xba,0xbe,0x33,0xfd,0xb5, + 0xfa,0xaa,0x49,0x3d,0x23,0xfa,0xe6,0xa3,0x57,0xc6,0xfd,0x76,0xbe,0xe3,0xbf,0x5c,0x94,0x7a,0x38,0xe7, + 0x89,0x8b,0x6d,0xaf,0xb7,0xef,0xf1,0x3c,0xa2,0x79,0x5b,0x92,0xa3,0xd9,0x5f,0xae,0xbb,0x7a,0x77,0x39, + 0x12,0xb9,0xeb,0x9a,0xf7,0x54,0xeb,0xf5,0xda,0xfd,0x8e,0x5f,0xae,0x89,0xe4,0xe3,0xdd,0x3b,0x39,0xbc, + 0x36,0xef,0x8d,0xeb,0xa5,0xd1,0xeb,0x13,0x9e,0xe6,0xad,0x7d,0xbe,0xdf,0x8e,0xcb,0x92,0x89,0xe4,0xf3, + 0xc9,0xca,0x9d,0x7e,0xba,0xd3,0xbf,0xa8,0xf5,0xd1,0x27,0xf3,0xd7,0xea,0xff,0x0d,0xbb,0x6f,0xb7,0xc8, + 0xf5,0x91,0x47,0xff,0xdf,0xca,0x9d,0x15,0xd6,0xfd,0x4f,0xc4,0x93,0xd1,0xeb,0x9f,0x5e,0x2a,0x1d,0x7e, + 0xba,0xef,0x57,0xc7,0x94,0x57,0xeb,0xfe,0x55,0x5e,0xa9,0xf6,0xba,0xff,0x56,0xe7,0xa2,0x57,0x27,0xfe, + 0xf7,0x34,0xdf,0xad,0xdb,0x7d,0xbf,0x24,0x92,0x49,0xeb,0x12,0xaa,0xbd,0x43,0x6e,0xdb,0x6f,0xff,0x24, + 0x92,0x49,0xe7,0x23,0x5d,0xaa,0x1d,0x76,0xa6,0x9f,0x8a,0xcf,0x93,0xc9,0xe4,0xa8,0xbd,0x30,0xed,0xee, + 0x3b,0xe2,0x4f,0x48,0x9e,0xb1,0xe8,0xd5,0xe9,0xbb,0xcf,0xee,0xf5,0xd2,0xb9,0x25,0x73,0xff,0x46,0xab, + 0xcc,0x36,0xed,0xbd,0x3f,0x9e,0x89,0x5c,0xf2,0x71,0x55,0x6a,0xa6,0xf7,0x5d,0xfe,0x58,0xae,0x57,0x5c, + 0xff,0x91,0xae,0xd3,0x76,0xbe,0xd3,0xf2,0xe4,0xf4,0x57,0xe7,0x7e,0x5c,0x5e,0xab,0x75,0xda,0xe3,0x57, + 0x28,0x95,0xc9,0xe7,0xd4,0xaa,0xb8,0xdb,0xee,0xd7,0x9d,0xd7,0x24,0xae,0x4e,0x3f,0x17,0x1d,0xca,0xdf, + 0x3e,0xbf,0xd5,0xca,0x25,0x72,0xb7,0x35,0x2a,0xf5,0x57,0xdb,0x7d,0xde,0x93,0xd2,0x28,0x95,0xf9,0xd8, + 0xee,0x6f,0xf7,0xed,0xbe,0xfb,0x9f,0xd7,0x44,0x93,0xce,0x29,0xd3,0xf1,0xb7,0xcd,0xb7,0xe7,0x92,0x57, + 0x27,0xfe,0x77,0xc8,0xe5,0xf1,0x9f,0x6b,0xb7,0xe7,0x2e,0x8f,0x27,0xfc,0x7f,0xf9,0xfe,0xaf,0xda,0xeb, + 0xf7,0xcb,0x92,0x49,0xe7,0x9d,0xb9,0xfd,0xaa,0x7e,0xd6,0xed,0xb1,0xfc,0xf5,0xcf,0xe7,0xff,0xff,0x27, + 0xa5,0x4e,0xba,0xdd,0xbe,0x3c,0xaf,0xd1,0xfc,0xf2,0x79,0x3c,0xfe,0xfe,0x53,0x6f,0xa9,0xdf,0x9e,0xb1, + 0xe4,0xe3,0xc9,0xff,0xf3,0xb9,0x57,0xf9,0xcd,0xd7,0xf2,0xa9,0x27,0x9e,0x72,0xc4,0xef,0xce,0xf9,0x39, + 0xfc,0xfb,0x5e,0x79,0x5c,0x92,0x71,0xf9,0x63,0xff,0xfb,0xd3,0x5b,0xa8,0xc9,0x7d,0x2b,0x14,0x7f,0x37, + 0x2c,0x57,0x38,0xf8,0x6e,0xe7,0x37,0xf1,0x9b,0x7d,0x91,0xeb,0x9e,0x74,0x27,0xf3,0xf9,0xf3,0x7f,0x89, + 0x8d,0x63,0x6d,0xfe,0x93,0xd1,0x3b,0x1d,0x97,0xe9,0x7f,0xb6,0xdf,0x72,0x72,0x7e,0xb9,0x2e,0xf5,0x9c, + 0x8f,0xf4,0xd2,0xbf,0x2b,0xeb,0xaf,0x3f,0x9e,0xab,0x70,0xe9,0x71,0xf9,0xf2,0x7f,0x9c,0xe2,0x49,0xe6, + 0xdf,0xff,0xeb,0x93,0xab,0x77,0x79,0x36,0xbd,0x2e,0x57,0xbf,0x7c,0x97,0x27,0xed,0xb6,0x27,0x1e,0x76, + 0x6e,0x2d,0x25,0xd6,0xae,0x49,0x30,0xfd,0xc9,0x59,0x7b,0xf6,0xdc,0xfe,0x7f,0xc5,0x9a,0xec,0xb7,0x4e, + 0xb2,0x27,0xd3,0xea,0xe8,0xf5,0xb7,0xbf,0x73,0x8f,0xff,0x16,0xab,0xb2,0xf9,0x72,0xe4,0x9d,0xcf,0xa4, + 0xae,0x4f,0xc7,0x7a,0x4f,0x3f,0xfe,0x5a,0xaf,0x4d,0x34,0xca,0x93,0xcd,0x3e,0xa2,0x4f,0x5f,0x1d,0xbf, + 0x3b,0x9d,0xfd,0x6f,0x2f,0x66,0xb6,0x1f,0xc9,0x3f,0x9c,0x49,0x3c,0x9d,0xf6,0xff,0x9a,0x7f,0xd8,0xb7, + 0x96,0x9b,0x5b,0x4f,0x27,0xfc,0x4d,0xe8,0x9f,0xce,0xff,0x62,0x7f,0xff,0xec,0xdf,0x26,0x6b,0xed,0xe7, + 0x9e,0x6f,0xff,0x12,0xb9,0xe6,0xf3,0xb9,0x46,0xab,0xf1,0x6e,0xad,0x6e,0xf3,0x1f,0xfe,0x37,0x9c,0x7a, + 0x3b,0x1d,0xf7,0x38,0x9d,0xf1,0xc5,0xbc,0x75,0x9b,0x6d,0xd1,0xd8,0xef,0xc9,0xe8,0xfd,0xff,0xc7,0x9f, + 0xfe,0xdf,0x96,0xf1,0xd6,0x6f,0xaf,0x27,0x6d,0xbf,0x27,0x95,0xbe,0xe7,0x75,0x8e,0xff,0x6e,0x9b,0xc7, + 0x5b,0x7e,0xdf,0xab,0xb7,0xfc,0xac,0x4f,0xdb,0x9f,0xf9,0xfb,0x7d,0x8a,0x6f,0x7d,0xa5,0x3b,0xfc,0xb4, + 0x38,0xf2,0xbf,0xf8,0xde,0xb9,0xfc,0xdf,0xf9,0xc5,0xbf,0x6e,0x97,0xff,0xba,0xd6,0x93,0xca,0xe7,0x7f, + 0xb9,0x3f,0xff,0xf6,0xe4,0x96,0xfe,0xde,0x5f,0xbe,0xc7,0xcf,0xcf,0xe9,0x7f,0xff,0xfc,0x9f,0xcf,0xdb, + 0x9e,0x5b,0xff,0x79,0x7e,0xdb,0x1f,0x3e,0x3f,0x94,0x77,0x3b,0xfe,0xb7,0x3f,0x6f,0xf9,0x6f,0xfd,0xe5, + 0xbb,0xec,0x7d,0xdf,0x1e,0x52,0xcb,0x9d,0xc9,0xe7,0x9d,0xf7,0xf9,0xbe,0xbf,0xf2,0x7b,0xef,0x37,0xdf, + 0xf1,0x45,0x75,0xce,0x3c,0xf3,0xce,0xff,0xee,0xde,0x38,0xd9,0x6f,0xd5,0x6d,0x7f,0xd8,0xb2,0x49,0x3e, + 0x93,0xf9,0x5f,0xfd,0xf6,0x6f,0x1f,0xec,0xb7,0x5c,0xb7,0xbf,0xea,0x52,0x29,0x13,0x89,0xa7,0xa3,0xbf, + 0xf7,0xb5,0xff,0x32,0x5b,0xa7,0x38,0xd3,0xe7,0xeb,0xf7,0xd7,0xe7,0xf2,0x56,0x5c,0xfa,0x99,0x38,0xe9, + 0x6d,0xb7,0xef,0x71,0xb7,0xf3,0x91,0x2b,0xa3,0xc9,0x5f,0xae,0x7f,0x2d,0xe3,0xf6,0x9a,0xdd,0x7f,0x9f, + 0xea,0x76,0x3c,0xfe,0x79,0x3c,0xf2,0x4f,0x3c,0x96,0xb7,0xe6,0xef,0x7d,0x3a,0xfd,0xee,0x3b,0x73,0xbe, + 0x3f,0xae,0x57,0x7c,0x9e,0xf2,0x66,0xf5,0xa9,0x3c,0xda,0xe1,0xbc,0xdf,0x56,0xa6,0xf8,0x4e,0x5e,0x7e, + 0xab,0xff,0xef,0x9f,0xeb,0xde,0xfd,0x27,0xef,0xe1,0xc7,0xc3,0x7f,0xab,0x2b,0xfe,0x49,0x7e,0x77,0xcd, + 0xeb,0xfe,0xeb,0x5b,0x95,0xb8,0xe2,0x71,0xbd,0x2f,0x8f,0x7f,0x9b,0xfe,0x27,0xcb,0x4a,0x2a,0xcc,0x8b, + 0x5b,0x6f,0xca,0x3e,0x55,0xf6,0x5e,0x6e,0xf1,0x7a,0xe2,0xba,0x3a,0xd3,0x91,0xf3,0xfd,0xd9,0xb4,0xaa, + 0x5e,0x9f,0x7c,0xff,0xff,0x7d,0xd9,0xbb,0xfc,0x55,0xdf,0x2a,0xbe,0x30,0xf2,0x71,0xbc,0x93,0xce,0xdb, + 0x2f,0x8c,0xff,0xf3,0x89,0xfd,0x2d,0x4f,0xdb,0xe9,0xfd,0x24,0xdc,0x52,0x2b,0x9a,0x96,0xc7,0xd8,0x4e, + 0xd9,0x4d,0x92,0xcf,0x93,0x96,0x3f,0xee,0x7e,0x53,0xe5,0xff,0xb5,0x16,0x76,0xe7,0xb2,0x7e,0x3f,0x92, + 0x66,0x5b,0xe3,0xad,0x4f,0x1f,0xf1,0x45,0x43,0xf7,0x35,0x6c,0x79,0xd8,0xed,0xbe,0xdf,0xe2,0x4d,0xe7, + 0xe7,0xcf,0xfd,0x7d,0xe7,0xa4,0xff,0xf9,0x87,0xaf,0xcf,0xd8,0x9e,0xab,0xdf,0x2d,0x8d,0x9f,0xbd,0xff, + 0x38,0x9b,0x32,0xba,0xfe,0x4a,0x57,0x13,0xbf,0x5b,0x74,0xbb,0xa7,0xde,0x62,0x5c,0x95,0xaf,0xdf,0x7f, + 0x77,0xc9,0x2b,0xba,0x4d,0x1b,0x6d,0x2b,0xcc,0x4a,0xec,0xf9,0x97,0xde,0xdd,0x53,0xf9,0x7b,0xb9,0x7f, + 0x73,0xe1,0x2f,0xff,0xaf,0x64,0x9f,0xa7,0x27,0xff,0x37,0x2c,0xff,0x75,0x7f,0xfa,0x7e,0x45,0x69,0x8d, + 0x5c,0x93,0x8e,0xaa,0xa3,0x8e,0x5a,0x2c,0xf1,0x39,0x52,0xaf,0xcd,0x43,0xdf,0xab,0xd9,0xd5,0xd4,0x9e, + 0x5a,0xdc,0xff,0x7b,0x5b,0x7d,0xa7,0x2b,0xe5,0xf9,0x49,0x1f,0xae,0x39,0x7e,0x4e,0x37,0xfe,0xbf,0xfa, + 0xdc,0x52,0xec,0xe5,0xd9,0xc7,0xfb,0x97,0xfa,0xd9,0xb2,0x57,0x65,0xf1,0x2f,0x76,0x97,0xb2,0x6b,0xe6, + 0xc4,0xa2,0xca,0x44,0x92,0x75,0xfb,0x4d,0xb5,0x9f,0xf3,0xca,0x3d,0x34,0x76,0xfa,0xdb,0xbe,0xf8,0xff, + 0xf9,0xfd,0x72,0x49,0x3f,0xd5,0x7f,0xdf,0xdf,0x7e,0xdf,0x13,0xd5,0x6d,0xed,0xbd,0xd7,0x1e,0x71,0x5b, + 0xee,0x89,0x3d,0x1d,0xf7,0xde,0xf3,0xbe,0xa7,0x7b,0xd7,0x5f,0xaf,0x9b,0x7a,0xdf,0xbd,0xc5,0xf3,0x79, + 0x37,0xf6,0x57,0xe7,0xed,0xbf,0x3b,0xff,0xf6,0xf8,0xfe,0x57,0xff,0xd6,0xdf,0xbb,0x6f,0x6a,0x44,0xdf, + 0xff,0xc5,0x25,0x8f,0xc6,0xe3,0xcf,0xdf,0x7d,0xf1,0x27,0x2a,0xb7,0xfc,0xb6,0xad,0xbf,0x6a,0x4b,0xfa, + 0xfe,0xb1,0x48,0x9b,0xbf,0xfb,0x9e,0x76,0xdf,0xff,0xc9,0xfb,0xe3,0xff,0x2d,0xad,0x6f,0xbf,0xd2,0xbf, + 0xb4,0xf5,0xca,0xeb,0x6d,0xcf,0xe7,0x1f,0x7e,0xe7,0xff,0xcd,0x37,0xae,0x7e,0x6d,0xed,0x7d,0x3b,0x75, + 0xfd,0xbc,0xa3,0xd1,0xff,0x62,0x4f,0xff,0xef,0xbf,0x3f,0xfd,0xff,0xfc,0x9f,0xf5,0x6d,0xdd,0xb5,0x37, + 0x9f,0xfc,0xfd,0x12,0x4e,0x54,0xe2,0x4f,0xf4,0xfc,0x7f,0xe7,0xef,0xf9,0xe7,0xff,0xb7,0x6c,0xe9,0xbd, + 0x3f,0x1f,0xbd,0xc4,0xbf,0xce,0x3f,0xf2,0x4e,0xfb,0x73,0xcf,0xff,0xfc,0x79,0xe7,0x7c,0x7e,0x4d,0x9d, + 0x76,0xdf,0xef,0xf6,0xbf,0xa5,0xce,0xc7,0xe3,0xc9,0xa7,0x63,0x97,0xc7,0x7f,0xff,0x3f,0xff,0x8f,0x39, + 0xb3,0xe6,0xf8,0xff,0xf7,0xdb,0x74,0x8f,0xf8,0xe5,0xcf,0x3f,0xef,0xcf,0x3f,0xef,0xff,0xe7,0xff,0xb1, + 0xe7,0xb6,0xfd,0x9f,0x7d,0xfe,0xdf,0x6e,0x52,0xff,0x7e,0x49,0xe7,0xfd,0xff,0x3c,0xef,0xf7,0x38,0xff, + 0xf7,0xfd,0x62,0xdb,0xf6,0x9d,0x8e,0xf7,0x7d,0x4f,0x4b,0x1d,0x97,0x47,0x9d,0xfd,0x3f,0x9d,0xf6,0xff, + 0x9d,0xfe,0xff,0xfe,0x72,0x6f,0xd9,0xb9,0x3b,0x7b,0xf7,0x39,0x9e,0x6f,0x24,0xae,0x77,0xf9,0x62,0x77, + 0xd8,0xee,0x7f,0xdf,0xe3,0xff,0xfd,0xb5,0xa4,0xc5,0x1d,0xad,0xfb,0xf4,0xb9,0xdb,0x94,0xf9,0xff,0x73, + 0xc9,0xff,0x5f,0xff,0xff,0x6f,0xff,0xfc,0xd6,0xd7,0xd3,0xe2,0x7e,0xb7,0x5f,0xba,0xfc,0xd3,0xca,0x24, + 0xef,0xcf,0x27,0xff,0xbf,0xfc,0xef,0xf7,0xc7,0x9d,0xdb,0x7f,0x5d,0xf9,0xde,0xdd,0xa9,0xc8,0xe3,0x72, + 0xec,0xf3,0xb9,0xcb,0x9f,0xf7,0xdf,0x9f,0xbf,0xdb,0x1f,0xce,0x4d,0x9b,0x3e,0x27,0xed,0x7e,0xc7,0x92, + 0x7d,0xe4,0xa2,0x7f,0xff,0x9e,0x4e,0xff,0x7e,0x7e,0xfe,0xfc,0x77,0x35,0xb4,0x6c,0xff,0xf3,0xb5,0xfb, + 0xfe,0x8f,0xfb,0x92,0x89,0xff,0x9e,0x4f,0x3f,0x7d,0xcf,0xff,0x6d,0x8e,0x27,0x26,0xde,0xb4,0xee,0x7d, + 0xdb,0x6f,0x91,0x3e,0xfe,0x59,0x3c,0xe3,0xc9,0xe7,0xef,0x8f,0xfc,0xef,0xbf,0xff,0xfe,0xda,0xb3,0x7a, + 0x4e,0xb7,0xdd,0x8f,0x47,0xed,0xd2,0x2b,0x9c,0x79,0xe4,0xff,0xbe,0x3f,0xff,0xbe,0x3b,0x9c,0x5b,0x57, + 0x5f,0x8f,0xd6,0xeb,0xb7,0x2b,0xfd,0x89,0x28,0xf3,0xcf,0xe4,0xf3,0xbe,0xfb,0xff,0xfe,0xff,0x1e,0x7b, + 0x6a,0xdd,0xf7,0xfb,0x5d,0xee,0x25,0x7f,0xbf,0x45,0x73,0xf9,0xc7,0x93,0xbe,0xf8,0xff,0xfd,0xe6,0x9f, + 0xfb,0x6b,0xdb,0xfe,0x57,0x5d,0xee,0xe4,0xaf,0xb7,0x44,0xac,0x79,0xff,0x93,0xfe,0xdf,0xff,0xf7,0xdf, + 0xe3,0xff,0x6d,0x59,0xfe,0xe7,0x6d,0xf4,0x3f,0xa3,0xb6,0x44,0xa3,0xce,0x27,0x13,0xcd,0xfe,0xaf,0x8e, + 0xfb,0xff,0xce,0x6d,0xfb,0x29,0xcf,0x6d,0xb6,0xc7,0x33,0xbe,0xfd,0x23,0xff,0xe7,0x14,0x4f,0xba,0x9e, + 0x7e,0xfb,0x7f,0x8e,0x4d,0x9d,0x21,0xe7,0x7d,0x6f,0xb8,0x92,0x7d,0xc8,0x97,0xcf,0x3f,0x92,0x57,0xff, + 0x7f,0xff,0xfb,0x7d,0x8e,0xcd,0xad,0x6f,0xd9,0x5d,0xae,0xbb,0xf4,0x71,0xbc,0x94,0x7a,0xdc,0xfe,0xb9, + 0x3b,0xee,0x71,0xfb,0xed,0xf1,0xcd,0xad,0x67,0xfd,0x6d,0xa7,0xb8,0xe4,0xb6,0xa7,0x94,0xb9,0xff,0xf2, + 0x4a,0xfb,0xfc,0x79,0xdf,0xed,0xf1,0xad,0x9d,0x67,0xc4,0xc3,0xaf,0xbb,0xf5,0xf1,0xb8,0x94,0x7a,0xfc, + 0xe2,0xba,0xff,0xee,0x7f,0xe7,0x7d,0xf7,0xed,0xad,0x61,0xbc,0xdf,0x76,0x94,0xe4,0x77,0xb9,0x64,0xba, + 0xfc,0xee,0x8a,0xfc,0xee,0x79,0xfc,0xfb,0xf7,0xed,0xfd,0x6e,0xfb,0xd3,0xee,0xb7,0xf2,0x76,0xf8,0xee, + 0x49,0x3f,0xfe,0xb9,0x5c,0x9e,0x7a,0xeb,0xff,0xf7,0xcd,0xfd,0x3f,0xdb,0xe3,0x75,0xdb,0xff,0xbf,0xfb, + 0xf2,0x7f,0x27,0xae,0x8a,0xe4,0xf5,0xc9,0xeb,0x1f,0xf9,0x8d,0xdf,0x8f,0xbc,0xed,0x7f,0xdf,0x7c,0x69, + 0xfd,0x63,0xf9,0xe7,0x93,0xf9,0x3c,0xfe,0x7e,0x4a,0x72,0xa1,0xa7,0xd5,0xb7,0xca,0x65,0xcd,0xe4,0xde, + 0x4b,0xab,0xf5,0xbe,0x5d,0x5d,0x8a,0xb4,0xad,0x7d,0x3b,0xe7,0xaf,0x2a,0x97,0xbe,0x2a,0xff,0xd5,0xe6, + 0xf3,0x36,0x7f,0x2c,0x4d,0x39,0x7d,0x57,0xdb,0x6f,0xb1,0x77,0x75,0xab,0x39,0x43,0xc9,0xbf,0xe3,0x4a, + 0x98,0x95,0x79,0x3e,0x93,0x31,0x37,0xd3,0xce,0x4b,0x7c,0x52,0xdc,0xea,0x77,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfe, +}; +static constexpr VoiceClip gpsOffClip = { + gpsOffData, sizeof(gpsOffData), 9237, 8000, VoiceCodec::G72624 +}; +#endif // 24 kbps +}} // namespace mesh::audio diff --git a/src/helpers/ui/GpsVoice.h b/src/helpers/ui/GpsVoice.h new file mode 100644 index 000000000..58f8e1cc4 --- /dev/null +++ b/src/helpers/ui/GpsVoice.h @@ -0,0 +1,175 @@ +#pragma once + +#include +#include + +// Decoder experiment only: production speech stays IMA until acoustic tests +// qualify another codec. Do not enable this in release recipes yet. +#if defined(MESH_GPS_VOICE_G726_BITRATE) +#if !defined(MESH_BUTTON_AUDIO_HIL) || !MESH_BUTTON_AUDIO_HIL +#error "G.726 speech is an opt-in MESH_BUTTON_AUDIO_HIL experiment" +#endif +#if MESH_GPS_VOICE_G726_BITRATE != 16 && MESH_GPS_VOICE_G726_BITRATE != 24 +#error "G.726 speech bitrate must be 16 or 24 kbps" +#endif +#include +#endif + +namespace mesh { namespace audio { + +#if defined(MESH_GPS_VOICE_G726_BITRATE) +enum class VoiceCodec : uint8_t { Ima, G72616, G72624 }; +#endif + +// Low nibble first, independent IMA ADPCM stream starting at predictor/index 0. +// The samples live in flash; playback only needs two small DMA buffers in RAM. +struct VoiceClip { + const uint8_t* data; + size_t bytes; + uint32_t samples; + uint32_t sample_rate; +#if defined(MESH_GPS_VOICE_G726_BITRATE) + VoiceCodec codec; + constexpr VoiceClip(const uint8_t* data = nullptr, size_t bytes = 0, + uint32_t samples = 0, uint32_t sample_rate = 8000, + VoiceCodec codec = VoiceCodec::Ima) + : data(data), bytes(bytes), samples(samples), sample_rate(sample_rate), codec(codec) {} + unsigned bits() const { + if (codec == VoiceCodec::Ima) return 4; +#if MESH_GPS_VOICE_G726_BITRATE == 16 + if (codec == VoiceCodec::G72616) return 2; +#else + if (codec == VoiceCodec::G72624) return 3; +#endif + return 0; + } + // Divide before multiplying: valid even for UINT32_MAX sample counts and + // SIZE_MAX byte counts. The final byte may contain unused padding bits. + size_t requiredBytes(uint32_t count) const { + const unsigned b = bits(); + return (count / 8) * b + ((count % 8) * b + 7) / 8; + } + bool valid() const { + return data && samples && bits() && bytes >= requiredBytes(samples) + && (codec == VoiceCodec::Ima ? (sample_rate == 8000 || sample_rate == 16000) + : sample_rate == 8000); + } +#else + constexpr VoiceClip(const uint8_t* data = nullptr, size_t bytes = 0, + uint32_t samples = 0, uint32_t sample_rate = 8000) + : data(data), bytes(bytes), samples(samples), sample_rate(sample_rate) {} +#endif +}; + +class VoiceDecoder { + VoiceClip clip_ = {}; + uint32_t position_ = 0; + int32_t predictor_ = 0; + int index_ = 0; +#if defined(MESH_GPS_VOICE_G726_BITRATE) + G726State g726_ = {}; +#endif +public: + void begin(VoiceClip clip) { + clip_ = clip; + position_ = 0; + predictor_ = 0; + index_ = 0; +#if defined(MESH_GPS_VOICE_G726_BITRATE) + g726_init(&g726_); +#endif + } + uint32_t position() const { return position_; } + bool done() const { +#if defined(MESH_GPS_VOICE_G726_BITRATE) + return !clip_.data || !clip_.bits() || position_ >= clip_.samples + || clip_.requiredBytes(position_ + 1) > clip_.bytes; +#else + return !clip_.data || position_ >= clip_.samples + || position_ / 2 >= clip_.bytes; +#endif + } + int16_t next() { + static const int16_t steps[89] = { + 7,8,9,10,11,12,13,14,16,17,19,21,23,25,28,31,34,37,41,45,50,55, + 60,66,73,80,88,97,107,118,130,143,157,173,190,209,230,253,279, + 307,337,371,408,449,494,544,598,658,724,796,876,963,1060,1166, + 1282,1411,1552,1707,1878,2066,2272,2499,2749,3024,3327,3660, + 4026,4428,4871,5358,5894,6484,7132,7845,8630,9493,10442,11487, + 12635,13899,15289,16818,18500,20350,22385,24623,27086,29794,32767 + }; + static const int8_t adjustments[8] = {-1,-1,-1,-1,2,4,6,8}; + if (done()) return 0; +#if defined(MESH_GPS_VOICE_G726_BITRATE) + if (clip_.codec != VoiceCodec::Ima) { + const unsigned bits = clip_.bits(); + const unsigned bit = ((position_ % 8) * bits) % 8; + const size_t byte = (position_ / 8) * bits + ((position_ % 8) * bits) / 8; + unsigned word = clip_.data[byte]; + unsigned shift; + if (bit + bits > 8) { + word = (word << 8) | clip_.data[byte + 1]; + shift = 16 - bit - bits; + } else shift = 8 - bit - bits; + ++position_; + return g726_decode(&g726_, (word >> shift) & ((1u << bits) - 1), bits); + } +#endif + const uint8_t code = (clip_.data[position_ / 2] + >> ((position_ & 1) * 4)) & 15; + ++position_; + const int32_t step = steps[index_]; + int32_t delta = step >> 3; + if (code & 1) delta += step >> 2; + if (code & 2) delta += step >> 1; + if (code & 4) delta += step; + predictor_ += (code & 8) ? -delta : delta; + if (predictor_ > 32767) predictor_ = 32767; + if (predictor_ < -32768) predictor_ = -32768; + index_ += adjustments[code & 7]; + if (index_ < 0) index_ = 0; + if (index_ > 88) index_ = 88; + return static_cast(predictor_); + } +}; + +// Reconstruction at 32 kHz, without larger clips or allocations. Four phases +// suppress 8 kHz sampling images (3.2 kHz cutoff, Kaiser beta=7). Two phases +// retain the consonant band of 16 kHz clips (7.2 kHz cutoff, Kaiser beta=5). +// Each phase has exactly unity DC gain (Q14). +class VoiceInterpolator { + int16_t history_[16] = {}; + unsigned head_ = 0; + unsigned phase_ = 0; + unsigned phases_ = 4; +public: + void begin(uint32_t sample_rate = 8000) { + for (auto& sample : history_) sample = 0; + head_ = phase_ = 0; + phases_ = sample_rate == 16000 ? 2 : 4; + } + int32_t next(VoiceDecoder& decoder) { + static const int16_t coefficients[4][16] = { + {3,-31,86,-84,-181,940,-2310,4633,12885,1341,-1562,983,-394,67,25,-17}, + {2,-35,137,-268,216,424,-2259,8176,11169,-1061,-502,671,-404,141,-19,-4}, + {-4,-19,141,-404,671,-502,-1061,11169,8176,-2259,424,216,-268,137,-35,2}, + {-17,25,67,-394,983,-1562,1341,12885,4633,-2310,940,-181,-84,86,-31,3} + }; + static const int16_t wide_coefficients[2][16] = { + {2,21,-113,332,-739,1415,-2581,5802,13506,-1505,150,249,-311,238,-133,51}, + {51,-133,238,-311,249,150,-1505,13506,5802,-2581,1415,-739,332,-113,21,2} + }; + if (!phase_) { + head_ = (head_ + 1) & 15; + history_[head_] = decoder.next(); + } + int32_t value = 0; + const int16_t* taps = phases_ == 2 ? wide_coefficients[phase_] : coefficients[phase_]; + for (unsigned i = 0; i < 16; ++i) + value += static_cast(history_[(head_ - i) & 15]) * taps[i]; + phase_ = (phase_ + 1) & (phases_ - 1); + return value / 16384; + } +}; + +}} // namespace mesh::audio diff --git a/src/helpers/ui/GpsVoiceData.h b/src/helpers/ui/GpsVoiceData.h new file mode 100644 index 000000000..fe8a18969 --- /dev/null +++ b/src/helpers/ui/GpsVoiceData.h @@ -0,0 +1,491 @@ +// Generated by scripts/generate_gps_voice.py. 8 kHz IMA ADPCM. +// Phrases: "GPS on", "GPS off". No runtime speech engine. +// Voice: Microsoft Zira Desktop +#pragma once +#include +namespace mesh { namespace audio { +static const uint8_t gpsOnData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x7f,0xf7,0xf7,0x61,0x5c,0x8b,0xd1,0x04,0x4a,0x8c,0xb3,0x83,0x90,0x98,0x91,0x22,0x2d,0x89,0x28,0xd1, + 0xa3,0x20,0x0a,0x80,0xf1,0xb7,0x01,0x5d,0x1a,0x88,0x91,0x18,0x2a,0xa0,0xb5,0x81,0x38,0x2c,0x88,0x2b, + 0x5a,0xb9,0xa7,0xa1,0xb4,0xc3,0x51,0x1d,0x08,0x90,0x20,0x3c,0x1b,0xf3,0xa3,0x81,0x28,0x1b,0x98,0xb4, + 0x82,0x6c,0x8a,0xc3,0xc4,0x11,0x09,0x00,0x0a,0xb1,0xa5,0x20,0x2c,0x39,0x4f,0x8a,0xa2,0x01,0x5b,0x0a, + 0xc1,0xb6,0x82,0x4a,0x8a,0xb2,0x02,0x5c,0x1b,0xa1,0xa2,0x01,0x3a,0x2a,0x3b,0x99,0xf7,0xa3,0x30,0x2d, + 0x19,0x29,0x2c,0xc0,0xb5,0x21,0x3c,0x2b,0xc0,0xb4,0xb4,0x11,0x2a,0x1a,0x98,0x82,0x3a,0x89,0x10,0xb9, + 0xb7,0x82,0x5a,0x2b,0xe0,0xc6,0x82,0x49,0x2c,0x89,0xc3,0x82,0x29,0x4b,0x8a,0xd4,0xa3,0x20,0x4d,0x0a, + 0xc2,0x82,0x29,0x2b,0xb0,0xb5,0x02,0x4b,0x3b,0x8a,0xd4,0xb4,0x01,0x29,0x4b,0x2b,0xd0,0xb6,0x82,0x39, + 0x2c,0x89,0xb2,0xa3,0x10,0x1a,0x90,0xa2,0x50,0x2e,0xe1,0xb4,0x02,0x5c,0x2b,0x89,0xa2,0x01,0x19,0x09, + 0xc2,0x11,0x3b,0x4c,0xa9,0xb5,0x11,0x5b,0x1b,0xc1,0x83,0x5b,0x0a,0xc2,0x82,0x39,0x2c,0x88,0x29,0x89, + 0x93,0x4d,0x99,0xe6,0xb5,0x82,0x5b,0x2b,0x98,0xc3,0x82,0x49,0x3d,0x99,0xc4,0x82,0x39,0x3d,0x99,0xc3, + 0x93,0x39,0x2c,0x09,0xb1,0xa4,0x10,0x3b,0x89,0xb2,0x12,0x3d,0xc8,0xb5,0x21,0x4f,0x2b,0xa0,0xb3,0x92, + 0x18,0x19,0x4a,0x3c,0x0a,0x00,0x3a,0x0a,0xf5,0xc5,0x21,0x3d,0x0a,0xa1,0xa3,0x80,0xb1,0x03,0x6e,0x2c, + 0x98,0xb3,0x92,0x00,0x5b,0x1a,0x88,0x00,0x19,0x98,0xc6,0x21,0x4f,0x0a,0xa0,0xb4,0x82,0x08,0x19,0x08, + 0x4a,0x1a,0x29,0xb8,0xb4,0xc5,0x21,0x3c,0x4b,0x9a,0xc5,0x82,0x39,0x3d,0x0a,0xb1,0xa4,0x81,0x18,0x2a, + 0xa8,0xa4,0x28,0xb0,0x31,0x2e,0xa0,0xc3,0xb3,0x70,0x4f,0x0a,0xc1,0xa3,0x20,0x4d,0x1a,0xb0,0xa5,0x10, + 0x4b,0x0a,0xa1,0xc3,0x82,0x19,0x19,0xa0,0x11,0x3b,0x1b,0xf5,0xa3,0x10,0x4c,0x0a,0x80,0x30,0x9a,0xb7, + 0x11,0x2c,0x8a,0xb0,0xb2,0x21,0x6c,0x19,0x91,0x93,0x02,0x29,0x2b,0x0b,0x8b,0xf8,0x24,0x3f,0xc0,0xa3, + 0x88,0x8a,0x1a,0x9a,0xa4,0x13,0x32,0x34,0x50,0x18,0x98,0xd1,0xb0,0x99,0x1f,0xb3,0x78,0x2b,0xd1,0x00, + 0x0c,0xa8,0x00,0x18,0x12,0x52,0x12,0x32,0x39,0xb9,0xd0,0xaa,0xcb,0x2a,0xf3,0x04,0x5c,0x9a,0xb2,0x19, + 0x9b,0x91,0x30,0x41,0x62,0x21,0x83,0x11,0x1c,0xbb,0xe8,0x99,0x59,0x2d,0xc1,0x83,0x2c,0xaa,0xb1,0x08, + 0x00,0x42,0x51,0x03,0x15,0x10,0x89,0xa9,0xca,0xba,0x0c,0xf2,0x12,0x4d,0xb8,0xb4,0x39,0x0c,0x90,0x11, + 0x20,0x14,0x42,0x20,0x91,0xb1,0xc9,0xca,0xab,0x6b,0x1d,0xe2,0x83,0x3b,0x9b,0xb2,0x18,0x90,0x06,0x60, + 0x10,0x83,0x11,0x0a,0xb8,0x9b,0x9e,0x1a,0xd9,0xb7,0x30,0x1d,0xc0,0x92,0x29,0x09,0x11,0x31,0x13,0x15, + 0x30,0x1a,0xb9,0xf9,0xb8,0x8a,0xe2,0x12,0x3e,0xc9,0xb4,0x39,0x1c,0x90,0x02,0x12,0x14,0x42,0x28,0x98, + 0xc1,0xa9,0x9c,0x0c,0xf2,0x83,0x4c,0xa9,0xc3,0x18,0x8a,0x81,0x40,0x38,0x13,0x24,0x01,0xa2,0x98,0x9e, + 0xca,0x99,0xf3,0x83,0x4d,0xa9,0xd3,0x10,0x1b,0xa0,0x84,0x31,0x21,0x42,0x28,0xb0,0xd3,0x1a,0x0f,0x0a, + 0xd1,0xb5,0x20,0x1d,0xa8,0x92,0x19,0x08,0x12,0x60,0x01,0x94,0x12,0x3c,0xab,0xf2,0x80,0x4a,0x1c,0xc1, + 0xa4,0x39,0x0c,0xa0,0x81,0x18,0x01,0x33,0x70,0x08,0xb3,0x82,0x1c,0x8c,0xc8,0xb3,0x58,0x1c,0xb0,0x81, + 0x1d,0xb8,0x93,0x69,0x18,0x85,0x22,0x28,0xa0,0xc2,0x89,0x9c,0xa9,0xc5,0x12,0x3d,0x9a,0xd2,0x08,0x8a, + 0xa2,0x32,0x40,0x14,0x33,0x38,0xb0,0xe2,0x0a,0x8f,0x00,0x3b,0xf0,0xb4,0x38,0x1e,0xb0,0xa3,0x20,0x29, + 0x12,0x41,0x18,0xb3,0x92,0x2d,0x8d,0x99,0xd3,0x83,0x4c,0x8b,0xb0,0x19,0x8c,0xb2,0x24,0x79,0x10,0x03, + 0x82,0x81,0x09,0x0e,0xab,0x01,0x3c,0xf0,0xa4,0x4a,0x0d,0xb0,0x82,0x18,0x81,0x14,0x50,0x18,0x91,0xa2, + 0x09,0x0d,0x8b,0xf4,0x93,0x6b,0x0b,0xc1,0x81,0x1a,0x98,0x12,0x48,0x01,0x85,0x12,0x08,0x98,0x0a,0x0f, + 0x88,0x09,0xe1,0xb3,0x4a,0x0d,0xa8,0x81,0x28,0x01,0x15,0x60,0x18,0xa2,0x82,0x0b,0xca,0x88,0xb0,0x94, + 0x5d,0x0c,0xc0,0xa1,0x88,0x08,0x30,0x30,0x86,0x86,0x21,0x19,0x89,0xa9,0xd9,0x82,0x4e,0x9a,0xc3,0x00, + 0x1c,0x99,0x00,0x4a,0x00,0x85,0x32,0x38,0x81,0x92,0x8a,0xad,0xc9,0xa3,0x7b,0x1c,0xe2,0x81,0x2b,0x9b, + 0xc3,0x31,0x5a,0x01,0x04,0x21,0x18,0x98,0x99,0xbb,0x9b,0xf3,0x02,0x5f,0x8b,0xe2,0x81,0x2a,0x0a,0x81, + 0x12,0x12,0x24,0x40,0x29,0x99,0xf1,0xa0,0x1a,0xa8,0x93,0x5d,0x8b,0xe2,0x00,0x2b,0x8a,0x93,0x04,0x32, + 0x61,0x28,0x91,0xb2,0xa0,0x0d,0x9c,0xc3,0x58,0x2d,0xc0,0x92,0x2b,0x9b,0xc3,0x31,0x5a,0x01,0x14,0x31, + 0x08,0xa1,0x99,0x9d,0xba,0x3b,0xbb,0xc7,0x33,0x2f,0xaa,0xd3,0x00,0x2a,0x08,0x03,0x43,0x31,0x12,0x10, + 0x9a,0xf9,0xb8,0x8b,0x4c,0x1b,0xe5,0x83,0x4c,0x8b,0xc1,0x01,0x2a,0x00,0x31,0x30,0x85,0x13,0x4b,0xaa, + 0xd1,0x99,0x8b,0x3a,0x2c,0xe5,0x83,0x5b,0x9b,0xd3,0x00,0x1a,0x81,0x13,0x31,0x04,0x32,0x1a,0xe0,0xa0, + 0x0d,0x9b,0x08,0xd2,0x85,0x6a,0x8a,0xd2,0x00,0x1b,0x98,0x82,0x22,0x41,0x41,0x11,0x92,0x88,0x8c,0xbc, + 0xb9,0xaa,0x42,0x5d,0xb1,0x84,0x2b,0xbb,0xe1,0x08,0x2a,0x10,0x15,0x43,0x31,0x11,0xa1,0xa8,0xad,0xac, + 0xba,0x9a,0x87,0x58,0x88,0xa2,0x09,0x8d,0xba,0xa0,0x48,0x48,0x23,0x17,0x31,0x00,0xa1,0xa8,0x9d,0xbb, + 0xca,0x09,0x42,0x38,0x85,0x91,0x0a,0xaf,0xc8,0x89,0x19,0x11,0x25,0x34,0x42,0x11,0x81,0x98,0xac,0xdb, + 0xba,0x9a,0x39,0x12,0x25,0x21,0x80,0xd8,0xca,0xbb,0x8c,0xa8,0xa8,0x72,0x43,0x24,0x32,0x21,0x00,0x99, + 0xcb,0xbc,0xab,0xa9,0x00,0x08,0x80,0xa1,0xaa,0xbd,0xdb,0xa9,0x0a,0x30,0x44,0x35,0x34,0x24,0x23,0x12, + 0x81,0xa8,0xbb,0x09,0x8b,0xb9,0xfb,0xbd,0xbd,0xdb,0xaa,0x9b,0x89,0x11,0x44,0x53,0x33,0x24,0x23,0x12, + 0x00,0xa8,0xba,0x9d,0x91,0x18,0x80,0xb8,0xdc,0xbc,0xcd,0xba,0xba,0x9a,0x18,0x41,0x44,0x43,0x24,0x33, + 0x32,0x21,0x80,0xa8,0x1b,0xc9,0xa8,0xdb,0xcb,0xad,0xdb,0xaa,0xab,0x9a,0x88,0x30,0x52,0x34,0x34,0x34, + 0x32,0x23,0x22,0x01,0xa1,0x35,0x1b,0xa8,0xcc,0xbd,0xbd,0xdb,0xaa,0xab,0x9a,0x89,0x11,0x35,0x63,0x42, + 0x32,0x32,0x32,0x12,0x01,0xb0,0x54,0x8d,0xa8,0xdb,0xbb,0xbc,0xac,0xaa,0x99,0x00,0x33,0x45,0x53,0x32, + 0x23,0x14,0x02,0x81,0xa8,0xba,0xcd,0x21,0x9f,0xa8,0xc9,0xa9,0xaa,0xa9,0x10,0x41,0x51,0x43,0x23,0x24, + 0x23,0x12,0x00,0xa9,0xcc,0xda,0xba,0xda,0x32,0x0e,0x08,0x99,0xa9,0x80,0x88,0x41,0x32,0x34,0x43,0x33, + 0x32,0x93,0xb1,0xda,0xdb,0xca,0xaa,0xdb,0xb8,0x67,0x0a,0x00,0x08,0xba,0x29,0xba,0xb5,0x87,0x08,0x01, + 0x08,0x11,0xa5,0x21,0x1e,0xa8,0xa0,0xa2,0x1b,0x31,0x88,0xf1,0x38,0xc0,0x12,0x91,0x70,0x80,0x98,0x19, + 0x8b,0xa2,0x5c,0xc0,0x80,0x21,0x18,0x79,0xa8,0x97,0xa2,0x19,0x9b,0xa9,0x0a,0x8e,0x7b,0xa1,0x81,0x20, + 0x19,0x88,0x07,0x88,0x1a,0x14,0x3a,0x59,0xc8,0x90,0x82,0x9d,0x00,0x89,0xe1,0x13,0x28,0x3d,0x89,0x80, + 0x11,0x09,0xf9,0x89,0x29,0xe4,0x08,0x83,0x49,0x5a,0x90,0x18,0xb1,0x29,0x4b,0x90,0x11,0xb3,0x1f,0x1a, + 0x99,0x18,0xb9,0xb2,0x87,0x41,0x69,0x00,0x19,0x0b,0xcb,0xaa,0xb7,0x11,0x00,0x90,0x9e,0x80,0x42,0x8d, + 0x30,0xa0,0xa6,0x04,0x0a,0x00,0x99,0x01,0xd3,0x21,0x1f,0x89,0xa0,0x08,0x18,0x02,0x02,0x51,0x95,0x22, + 0x89,0x8f,0xc1,0x90,0x19,0x91,0xa8,0x5b,0x3d,0x98,0x02,0xa2,0x1f,0x9a,0x96,0x02,0x2a,0x11,0x42,0x5a, + 0x08,0xb1,0x00,0xa8,0x9f,0xc2,0xa9,0xa0,0x8e,0x21,0x6b,0x10,0x83,0x1a,0x11,0xb0,0x82,0xd1,0x90,0x30, + 0x4c,0x09,0xa3,0x9a,0xc8,0xf1,0xb8,0x07,0x1b,0x89,0xb3,0x91,0x70,0x09,0x81,0x6a,0xb2,0x2d,0x14,0xb9, + 0x33,0xf9,0x38,0xa9,0x9a,0x10,0x1c,0x93,0x7b,0xb1,0x18,0x04,0xf0,0x7f,0xb1,0x3a,0x08,0x9a,0x07,0x0b, + 0xa6,0x0a,0x12,0x0a,0x80,0xf3,0x21,0x1a,0x2f,0xb0,0x01,0x93,0x1a,0x0a,0x8a,0x17,0x5d,0xa0,0xaa,0x07, + 0x3d,0x88,0x00,0x88,0x2a,0xc0,0x95,0x29,0x18,0x0f,0xa4,0x90,0x02,0x48,0x9d,0x05,0x0d,0xa4,0x3b,0xb1, + 0x38,0xc1,0x01,0x92,0x5b,0xa9,0x95,0x3a,0x08,0x1e,0xc4,0x28,0x88,0x08,0xb4,0x80,0x58,0x8d,0x94,0x0a, + 0x93,0x5d,0xc0,0x21,0xb8,0x22,0x0b,0xb1,0x41,0xac,0x14,0x1d,0x92,0x98,0x83,0x4e,0xa8,0x11,0xb8,0x22, + 0x8c,0x01,0x09,0x28,0xc2,0x7a,0xe8,0x84,0x88,0x39,0xb8,0x11,0xf1,0x22,0x2e,0x90,0x08,0xb2,0x30,0xaa, + 0x12,0x1d,0xc3,0x11,0xa9,0xa7,0x49,0xaa,0xa6,0x38,0x8a,0x10,0xa9,0xa5,0x49,0x0a,0x81,0x2a,0xe1,0x94, + 0x39,0x0a,0x29,0xd8,0xa6,0x10,0x1a,0x90,0x28,0xa8,0x93,0x88,0x90,0x20,0x9c,0xc7,0x21,0x89,0x30,0x1d, + 0x98,0xc5,0x11,0x0a,0x38,0x2d,0xd1,0xa4,0x28,0x1a,0x19,0xd2,0x02,0x4c,0x0a,0xa2,0x18,0xc0,0xb5,0x02, + 0x5b,0x2b,0x99,0xd6,0x93,0x28,0x2b,0x19,0x1a,0xe2,0xb4,0x82,0x4a,0x1b,0xd1,0xb4,0x12,0x4c,0x0a,0xa0, + 0xb4,0x02,0x5b,0x2b,0x09,0xb0,0xb7,0xa3,0x38,0x3d,0x0a,0x90,0x91,0xb3,0x40,0x2c,0x89,0xa1,0x02,0xa8, + 0x31,0x3c,0xc8,0xb7,0x81,0x00,0x4c,0x8a,0xa2,0x20,0xb8,0x44,0x3f,0xb9,0xb6,0x01,0x2a,0x88,0x6a,0x1b, + 0xb1,0xc6,0x93,0x38,0x3e,0x0a,0xb1,0xa3,0x18,0x18,0x19,0x4a,0x8a,0x21,0x1e,0xe2,0xb5,0x20,0x3b,0x0a, + 0x00,0xc0,0xa5,0x01,0x6b,0x2c,0x19,0x88,0xc2,0xb3,0x31,0x1f,0x80,0x08,0x80,0xb1,0xb4,0x42,0x3e,0x89, + 0x90,0x88,0xc1,0xa3,0x48,0x3c,0x09,0x91,0x01,0x90,0x92,0x38,0x3c,0x9a,0x17,0x7a,0x0a,0xc0,0x80,0x0c, + 0xa9,0xa2,0x11,0x20,0x22,0x51,0x10,0xa2,0xb3,0x80,0x3c,0xb7,0x51,0x2f,0xa9,0x91,0x8a,0xc8,0xb3,0x40, + 0x4b,0x00,0x03,0x11,0xa2,0xa4,0x18,0x4f,0xa8,0xa5,0x18,0x8b,0xd8,0x90,0x0a,0x89,0x02,0x51,0x30,0x03, + 0x14,0x38,0x1b,0xab,0x7a,0xb8,0xc7,0x82,0x2d,0x9b,0xb0,0x08,0x09,0x02,0x53,0x58,0x01,0x83,0x10,0x8a, + 0xd8,0x22,0x3f,0xb9,0xc5,0x08,0x8b,0xb8,0x00,0x4a,0x00,0x05,0x41,0x28,0x81,0x81,0x1a,0x0c,0xe5,0x93, + 0x5b,0x8c,0xa0,0x88,0x8a,0xc2,0x13,0x7a,0x18,0x82,0x12,0x19,0x98,0x98,0x48,0x3e,0xc9,0xc3,0x09,0x8c, + 0xb8,0x10,0x4a,0x81,0x87,0x22,0x38,0x80,0x91,0x8a,0x0c,0xf3,0x83,0x3d,0x9b,0xf2,0x80,0x2b,0x99,0x83, + 0x50,0x10,0x04,0x21,0x29,0xb8,0xd1,0x20,0x2e,0xc8,0xc3,0x19,0x0d,0xa8,0x00,0x39,0x00,0x06,0x31,0x38, + 0x91,0x92,0x0a,0x1e,0xf3,0xa3,0x39,0x0e,0xb8,0x09,0x0b,0xb1,0x85,0x41,0x30,0x22,0x40,0x09,0xe1,0xb1, + 0x58,0x2e,0xa8,0xc3,0x18,0x0c,0xa8,0x28,0x4c,0x88,0x95,0x22,0x39,0x80,0x81,0x1a,0x8c,0xf5,0xa3,0x39, + 0x0d,0xa8,0x80,0x1a,0xb0,0x96,0x31,0x39,0x02,0x03,0x38,0x0c,0xb9,0x21,0x3f,0xcb,0xd6,0x00,0x1b,0xa9, + 0x92,0x59,0x3a,0x92,0x86,0x02,0x00,0x00,0x1b,0x1c,0xf1,0xb3,0x38,0x1e,0xa9,0x90,0x1a,0x89,0x93,0x14, + 0x32,0x24,0x32,0x39,0xb8,0xf2,0xd4,0x20,0x2f,0x9a,0xb1,0x08,0x8b,0xb2,0x13,0x50,0x11,0x05,0x21,0x08, + 0xb1,0x98,0x7a,0x3e,0xaa,0xd4,0x91,0x1a,0x8a,0x88,0x39,0x10,0x96,0x85,0x21,0x18,0x80,0x09,0x5c,0x0b, + 0xf3,0x91,0x1a,0x8c,0x98,0x19,0x19,0xa3,0x07,0x31,0x48,0x18,0x90,0xb1,0x88,0xf2,0xa3,0x5c,0x0d,0xc0, + 0xa2,0x08,0x09,0x92,0x32,0x58,0x01,0x83,0x20,0x1c,0xd8,0xc5,0x11,0x3d,0x9b,0xb1,0x08,0x0b,0xc1,0x84, + 0x40,0x38,0x11,0x02,0x92,0xc2,0xa1,0x91,0x6c,0x1e,0xa9,0xc1,0x88,0x9a,0xb2,0x32,0x7a,0x01,0x95,0x13, + 0x29,0x89,0x98,0xb3,0x6a,0x1e,0xc9,0xc2,0x08,0x0b,0x88,0x21,0x79,0x00,0x84,0x02,0x10,0x89,0x98,0x91, + 0x7b,0x1e,0xc8,0xc2,0x80,0x1a,0x09,0x01,0x31,0x31,0x04,0x04,0x48,0x1b,0xe8,0xb5,0x20,0x2f,0x9a,0xb1, + 0x08,0x0a,0xa1,0x84,0x60,0x29,0x82,0x03,0x28,0x8a,0xb8,0xd6,0x92,0x3b,0x0f,0xa8,0x90,0x09,0xa0,0x95, + 0x42,0x59,0x00,0x92,0x01,0x89,0x39,0x0c,0xf1,0xc2,0x88,0x8b,0x8a,0x1a,0x18,0x04,0x15,0x23,0x13,0x22, + 0x3a,0x8e,0x81,0x4c,0x9c,0xf1,0xa0,0x0a,0x1b,0x09,0x11,0x32,0x35,0x33,0x13,0x02,0x89,0x1f,0xf1,0xc3, + 0x29,0x0f,0xa8,0xa1,0x28,0x2a,0x92,0x15,0x40,0x18,0x92,0x92,0x89,0x28,0x2f,0xca,0xf4,0x91,0x2a,0x0b, + 0x90,0x83,0x22,0x31,0x22,0x32,0x29,0x9a,0x8b,0xf6,0xa2,0x3c,0x8e,0xc0,0x80,0x2a,0xa0,0x86,0x31,0x59, + 0x80,0x92,0x81,0x8a,0x80,0x4c,0x8c,0xf1,0xa1,0x09,0x0a,0x90,0x12,0x51,0x40,0x10,0x93,0x93,0x09,0x1d, + 0xf2,0xb3,0x3a,0x8f,0xb0,0xa1,0x29,0x08,0x04,0x42,0x48,0x81,0x93,0x08,0xab,0x82,0x4f,0x9c,0xf3,0x80, + 0x1a,0x99,0x82,0x30,0x48,0x02,0x85,0x01,0x19,0x8a,0x9a,0xe6,0x93,0x4b,0x8c,0xc0,0x80,0x09,0x91,0x23, + 0x70,0x10,0x82,0x01,0x0a,0xba,0x82,0x3f,0xab,0xf3,0x08,0x0b,0xa8,0x11,0x30,0x04,0x25,0x48,0x08,0xb1, + 0x88,0x2e,0xe1,0x93,0x5b,0x8c,0xc1,0x00,0x2b,0x90,0x04,0x50,0x18,0x92,0x01,0x8a,0xe0,0x21,0x3e,0xa9, + 0xd4,0x00,0x0b,0xa8,0x10,0x4a,0x01,0x15,0x30,0x00,0xa2,0x89,0x9d,0xd1,0x18,0x1c,0xc0,0x92,0x09,0x98, + 0x02,0x58,0x00,0x85,0x22,0x29,0x98,0xb0,0x19,0xf2,0x82,0x2e,0xac,0xd1,0x08,0x1a,0x11,0x33,0x14,0x04, + 0x10,0x99,0xb9,0x9a,0x3c,0xd2,0x96,0x29,0x8d,0xb9,0x99,0x88,0x42,0x70,0x11,0x82,0x82,0x89,0x8b,0xaa, + 0xb0,0x87,0x40,0x0d,0xc8,0x98,0x8a,0x18,0x40,0x32,0x14,0x02,0x00,0x9a,0xba,0xa9,0x98,0x37,0x3c,0xe9, + 0xc0,0x99,0x8a,0x38,0x41,0x14,0x13,0x11,0x09,0x0c,0x9a,0x88,0x10,0x7a,0xd4,0xa2,0x0d,0xab,0x88,0x00, + 0x24,0x51,0x10,0x01,0x09,0x98,0x08,0x19,0x90,0xa0,0x79,0xa9,0xf4,0xaa,0xaa,0x29,0x38,0x25,0x52,0x18, + 0x81,0xa1,0x81,0x39,0x1c,0xa8,0xf0,0x38,0xf2,0x00,0x8e,0xb1,0x98,0x11,0x61,0x28,0x92,0x11,0x19,0x29, + 0x0b,0xd2,0xa0,0xb8,0xb9,0x77,0x2d,0xc8,0x90,0x98,0x11,0x38,0x85,0x12,0x08,0x2b,0xaa,0xb4,0x01,0x1b, + 0xca,0xf2,0xa1,0x77,0x1b,0xd0,0x88,0x99,0x31,0x48,0x02,0x80,0xe1,0x28,0x1b,0x92,0x91,0x92,0x2f,0x8c, + 0x01,0x79,0xb7,0x10,0x8d,0x88,0x88,0x85,0x30,0x88,0x09,0xb9,0x83,0x3a,0x92,0x2a,0xf9,0x00,0x98,0x23, + 0x7d,0xe3,0xa2,0xaa,0x10,0x4a,0x83,0x12,0xa8,0x1a,0x9c,0x84,0x20,0xa0,0x98,0xaa,0x39,0x29,0x06,0x58, + 0xb7,0x4b,0x9e,0x00,0x80,0x15,0x19,0xa0,0x99,0xa1,0x50,0x19,0x00,0xaa,0x88,0x0a,0x04,0x31,0x3a,0x7f, + 0xf3,0x80,0x0b,0x38,0x88,0x87,0x08,0x89,0x1b,0xb2,0x23,0x08,0x2a,0xad,0x91,0x21,0x41,0x89,0xe1,0x79, + 0xe2,0x00,0xaa,0x21,0x19,0x15,0x89,0xa1,0x0c,0x80,0x48,0xa2,0x10,0xbb,0x88,0x88,0x17,0x29,0x98,0xca, + 0x57,0x0d,0xb0,0x09,0x82,0x60,0x80,0x80,0xc8,0x10,0x1a,0x12,0x98,0x91,0x0d,0x08,0x10,0x94,0x18,0x99, + 0x3c,0x07,0x3d,0xdb,0x08,0xa2,0x44,0x08,0x90,0xc9,0x82,0x5b,0x10,0x98,0xc1,0x09,0x19,0x38,0xa3,0x83, + 0xab,0x5c,0x07,0x2c,0xea,0x08,0x80,0x43,0x80,0x81,0xbb,0x81,0x19,0x05,0x19,0xc0,0x8a,0x80,0x69,0x91, + 0x01,0xa9,0x39,0x37,0x2f,0xdb,0x08,0x91,0x63,0x08,0x80,0xb9,0x01,0x3b,0x12,0xa8,0xd3,0x1b,0x89,0x11, + 0xa7,0x11,0x8b,0xb0,0x77,0x0a,0xc8,0x8a,0x81,0x50,0x01,0x00,0xb8,0x29,0x0a,0x12,0xa1,0x91,0x8f,0x90, + 0x10,0x23,0x2b,0xb8,0x9a,0x77,0xe2,0xa2,0x8d,0x18,0x28,0x05,0x18,0x99,0x8a,0xa1,0x31,0x81,0x89,0xe9, + 0x18,0x00,0x31,0xa0,0x08,0xac,0x70,0xa7,0x00,0xae,0x18,0x00,0x25,0x90,0x08,0xac,0x11,0x00,0x13,0x9b, + 0x99,0x0d,0x03,0x01,0x94,0x0c,0x89,0x39,0x77,0x1b,0xcb,0x8a,0x84,0x51,0x00,0x89,0xb8,0x28,0x01,0x20, + 0xe1,0x09,0x99,0x30,0xa3,0x02,0xba,0x4d,0x1a,0x57,0x8b,0xbb,0x8d,0x05,0x21,0x11,0x8c,0xa8,0x18,0x13, + 0x29,0xb8,0xac,0x01,0x69,0x01,0x89,0xb8,0x19,0x41,0x77,0x9b,0xaa,0x8b,0x15,0x31,0x82,0xac,0x90,0x28, + 0x33,0x99,0xe1,0x9a,0x30,0x39,0x94,0xc8,0x08,0x2b,0x61,0x27,0x8d,0xab,0x8b,0x07,0x11,0x01,0x9c,0x80, + 0x00,0x23,0x8a,0x99,0xbb,0x24,0x01,0x21,0xae,0x18,0x88,0x34,0x47,0x9e,0x99,0x8b,0x16,0x01,0x00,0xbb, + 0x01,0x82,0x52,0x9a,0x9a,0xc0,0x42,0x10,0x0a,0xf0,0x00,0x20,0x4a,0x07,0xbb,0x8a,0x8c,0x34,0x82,0x10, + 0xbc,0x28,0x93,0x33,0xc8,0x0d,0x98,0x21,0x03,0x8b,0xb8,0x1c,0x53,0x10,0x57,0xbc,0x9a,0xaa,0x36,0x01, + 0x18,0xca,0x18,0x02,0x40,0xb0,0x9b,0x88,0x49,0x04,0xa9,0x90,0x9c,0x42,0x11,0x77,0xba,0x8a,0xab,0x53, + 0x02,0x28,0xc9,0x09,0x03,0x40,0x81,0x9d,0xa0,0x08,0x43,0x99,0x90,0xda,0x31,0x28,0x77,0xb9,0x9a,0xba, + 0x42,0x13,0x20,0xc8,0x0b,0x12,0x31,0x86,0xab,0xa8,0x8a,0x34,0x90,0x18,0xbd,0x29,0x92,0x77,0xa2,0xac, + 0xd9,0x28,0x22,0x20,0xb2,0xab,0x30,0x59,0x33,0xc8,0xa8,0xbb,0x40,0x10,0x11,0xf0,0x89,0x88,0x71,0x87, + 0xa9,0xb9,0x0d,0x21,0x11,0x04,0xb9,0x08,0x08,0x63,0x81,0x88,0xc9,0x0b,0x11,0x30,0x83,0xbd,0x99,0x1b, + 0x77,0x91,0x9a,0xdc,0x08,0x02,0x42,0x81,0x9a,0xa0,0x38,0x44,0x28,0xa1,0xfa,0x88,0x19,0x30,0xa1,0xa0, + 0xe9,0x78,0x82,0x98,0xf8,0x8a,0x18,0x38,0x04,0xa1,0x92,0x0c,0x40,0x00,0x04,0xb1,0x1a,0x8c,0x29,0xb2, + 0x83,0x98,0x2f,0x07,0x98,0xb8,0x9f,0x09,0x88,0x15,0x00,0x18,0x9a,0x10,0x94,0x43,0x00,0x3a,0xc9,0x80, + 0xa2,0x38,0x1a,0x8e,0x61,0xa5,0xa0,0xbc,0x8e,0x88,0x81,0x23,0x89,0x82,0x2a,0x11,0x12,0x07,0x10,0x10, + 0x1a,0x81,0x80,0x02,0x0a,0xb9,0x77,0x92,0x8c,0xbf,0x98,0x98,0x22,0x19,0x29,0x9b,0x13,0x12,0x15,0x00, + 0x31,0x5a,0x11,0x94,0xa5,0x82,0x49,0x2c,0x57,0xab,0xa0,0x9d,0x02,0xa1,0x5a,0x1d,0x0a,0xb2,0xa3,0x84, + 0x2a,0x0a,0x2f,0x82,0x96,0x99,0x68,0x4b,0x08,0xc1,0xa1,0x02,0x79,0x99,0x38,0xd9,0x12,0xc8,0x10,0x1c, + 0x18,0xc0,0xb3,0x92,0x7a,0x3a,0x1a,0xb1,0x84,0x93,0x10,0x8c,0x7a,0xa0,0x08,0xa8,0x4a,0xa8,0x1a,0xf4, + 0x00,0x01,0x38,0x29,0x1c,0x82,0xb0,0x95,0xb3,0x20,0x1f,0x8a,0x92,0xd1,0x98,0x33,0x48,0x0e,0x18,0x21, + 0xa0,0xc8,0x92,0x58,0x08,0x9f,0x94,0x08,0x82,0x1f,0x30,0x0a,0xc4,0xa0,0x12,0x29,0x99,0xaa,0x95,0x12, + 0xc9,0x10,0x08,0x16,0x9e,0x22,0x1c,0xb3,0x0b,0x10,0x78,0x98,0x88,0x88,0x00,0x87,0x0c,0x81,0x19,0xc4, + 0x08,0x20,0x3c,0xa8,0xe2,0x93,0x11,0x3b,0x0c,0x82,0xa1,0xb2,0x2b,0x79,0x89,0xf2,0x82,0x18,0x88,0x11, + 0x1b,0x20,0x9e,0x94,0x09,0x01,0x2c,0x90,0x13,0xf0,0x48,0x80,0x29,0x0b,0x4b,0xd1,0x10,0xb0,0x7e,0xa0, + 0x80,0xd3,0x10,0x82,0x4c,0x89,0xa0,0xb3,0x92,0x08,0x38,0x8b,0xf5,0x01,0x92,0x19,0x8b,0x86,0x91,0x1b, + 0x38,0x6a,0x8a,0x99,0xa4,0x20,0x08,0x0f,0xa5,0x88,0xa3,0x1c,0x34,0x1f,0x08,0x09,0x92,0xc0,0x02,0x1a, + 0x80,0xb3,0x28,0x39,0x0f,0xa2,0x08,0x82,0x2c,0xa1,0x13,0xf0,0x40,0x9a,0x95,0x98,0x18,0x80,0x3b,0x3f, + 0x4b,0xb1,0x91,0x11,0x4f,0x19,0x99,0x92,0x98,0x13,0x2b,0x7c,0x1c,0x28,0x9a,0xb4,0x28,0x41,0x0f,0x81, + 0xb0,0x84,0x9a,0x52,0x0d,0x10,0x88,0x11,0xd8,0x20,0xb0,0x10,0xe3,0x28,0x92,0x4c,0x2b,0xa9,0x94,0x49, + 0x90,0x88,0xe4,0x28,0x88,0x18,0xb0,0x02,0x48,0x80,0x0f,0x12,0x19,0xa8,0x0e,0x80,0x15,0xca,0x41,0x08, + 0x3a,0xb9,0x2e,0xa5,0x09,0x80,0x08,0x24,0xcb,0x85,0x8c,0x22,0xb0,0x1a,0x84,0x2f,0x12,0x9d,0x92,0x18, + 0x86,0x0a,0xa8,0x4c,0x83,0x8a,0xc1,0x38,0x22,0x9b,0xca,0xa2,0x07,0x09,0x3b,0x88,0x13,0xf8,0x1b,0x95, + 0x01,0x80,0x99,0x88,0x7b,0x39,0xb8,0xb2,0xb5,0x5d,0x28,0x1b,0xc1,0xc4,0x02,0x2b,0x59,0xc9,0x82,0xc3, + 0x49,0x89,0x4b,0xe3,0x91,0x83,0x19,0x10,0x0e,0x81,0xa9,0x24,0xc8,0x28,0x98,0x5c,0x00,0xa8,0xa3,0x18, + 0x30,0x8b,0xba,0x3b,0x96,0x94,0x81,0x99,0xb9,0x05,0x68,0x8a,0x99,0xa8,0x63,0x01,0x2a,0xf9,0x92,0xa4, + 0x4b,0x1a,0x0b,0x97,0x90,0x88,0x3b,0x60,0xc1,0x90,0xa4,0x29,0x20,0x8e,0x03,0xc0,0x99,0x28,0x38,0x89, + 0x02,0x05,0x20,0x00,0xb8,0xab,0x00,0xef,0x11,0xb8,0x49,0x89,0x1c,0x15,0x00,0x12,0xa8,0x70,0xa1,0xbb, + 0xa1,0xac,0x59,0x00,0x18,0x84,0x89,0x30,0x98,0x11,0x84,0x1a,0x09,0xbc,0xa1,0x77,0x90,0x9d,0xa8,0xa8, + 0x42,0x20,0x10,0x92,0xa8,0x30,0x18,0x30,0x94,0xca,0x98,0x9c,0x2b,0x77,0xb0,0x8d,0x99,0x89,0x24,0x12, + 0x28,0x90,0xba,0x14,0x02,0x50,0x88,0xcb,0xa0,0xa8,0x7a,0x17,0xda,0x89,0x98,0x39,0x33,0xa2,0x01,0xa9, + 0x0c,0x33,0x83,0x14,0xa8,0x9f,0x88,0xa0,0x74,0x84,0xbc,0x8a,0x9a,0x48,0x24,0x80,0x80,0xb8,0x19,0x34, + 0x11,0x11,0xf9,0x9a,0x00,0x88,0x73,0x87,0xdb,0x98,0x88,0x30,0x32,0x88,0x98,0xb8,0x38,0x45,0x00,0x88, + 0xc9,0x9a,0x30,0x18,0x71,0x87,0xcc,0x89,0x08,0x20,0x24,0xa8,0x88,0x09,0x39,0x16,0xa2,0x88,0x9b,0x0c, + 0x21,0x92,0x70,0x87,0xcd,0x88,0x01,0x28,0x22,0xa8,0x99,0x81,0x20,0x44,0x90,0xa9,0xa9,0x89,0x32,0x82, + 0x7a,0x07,0xce,0x09,0x01,0x28,0x22,0xc0,0x89,0x20,0x28,0x33,0xc2,0xca,0x08,0x19,0x30,0xa2,0x3c,0x67, + 0xeb,0x8b,0x12,0x80,0x22,0xa2,0xbb,0x21,0x22,0x32,0x94,0xbc,0x8b,0x01,0x13,0x92,0xbc,0x77,0xd1,0x9e, + 0x11,0x81,0x28,0x01,0xaa,0x19,0x23,0x11,0x01,0xca,0x9b,0x38,0x22,0x80,0xeb,0x7a,0x17,0xec,0x09,0x12, + 0x88,0x21,0x90,0xab,0x31,0x23,0x80,0x89,0xab,0x8b,0x15,0x84,0x8a,0x8c,0x71,0x97,0xcd,0x10,0x02,0x88, + 0x11,0xa0,0xaa,0x52,0x21,0x0a,0x8a,0xb0,0x90,0x43,0x00,0xad,0xa9,0x77,0xb1,0x9e,0x10,0x82,0x08,0x11, + 0xa8,0x0c,0x41,0x82,0xa8,0x08,0x09,0x8a,0x14,0xa3,0xac,0x2b,0x77,0xb0,0x9e,0x20,0x01,0x09,0x11,0xa0, + 0x8c,0x41,0x03,0xa9,0x89,0x80,0x99,0x42,0x93,0xcc,0x0a,0x75,0x92,0xbf,0x28,0x12,0x89,0x20,0x91,0xcb, + 0x40,0x23,0xa8,0x9b,0x82,0xb0,0x20,0x25,0xca,0x9c,0x21,0x67,0xc0,0xac,0x20,0x02,0x90,0x11,0x98,0x9c, + 0x41,0x04,0xb0,0x99,0x01,0x09,0x39,0x13,0xfa,0x9a,0x41,0x46,0xb8,0xbf,0x20,0x12,0x88,0x10,0x88,0x9c, + 0x40,0x04,0xa0,0x9a,0x10,0x08,0x08,0x13,0xd9,0x9c,0x21,0x76,0x91,0xbe,0x19,0x13,0x81,0x09,0x00,0xb9, + 0x29,0x36,0x91,0xbb,0x08,0x02,0x88,0x30,0xa0,0xce,0x18,0x53,0x27,0xf9,0x9b,0x30,0x12,0x98,0x08,0x90, + 0xa9,0x61,0x23,0xb9,0x9c,0x11,0x11,0x89,0x10,0xc8,0xbb,0x50,0x52,0x17,0xf8,0xab,0x30,0x23,0xa8,0x09, + 0x80,0x98,0x40,0x34,0xb8,0xad,0x20,0x83,0xa0,0x08,0x90,0xac,0x08,0x24,0x77,0xa1,0xbf,0x18,0x23,0x91, + 0x8a,0x18,0x88,0x09,0x35,0x92,0xbc,0x1a,0x33,0xa1,0xa9,0x10,0xca,0x8c,0x73,0x21,0x16,0xf8,0xad,0x20, + 0x23,0xa0,0x8a,0x00,0x80,0x28,0x25,0xb1,0xbc,0x28,0x24,0x98,0x8a,0x08,0xaa,0x1a,0x34,0xb2,0x70,0x27, + 0xee,0x89,0x32,0x82,0x9a,0x19,0x01,0x89,0x41,0x13,0xca,0x8c,0x31,0x83,0xb9,0x09,0x80,0xbb,0x38,0x16, + 0xb8,0x77,0xa1,0xbf,0x29,0x33,0x90,0x9a,0x20,0x90,0x09,0x44,0x82,0xbc,0x2a,0x43,0xa0,0x9a,0x10,0xa9, + 0x8c,0x41,0x82,0xdb,0x71,0x07,0xcc,0x0a,0x33,0x81,0x8b,0x28,0x91,0xaa,0x73,0x12,0xba,0x8b,0x32,0x92, + 0x9a,0x38,0xa9,0xaf,0x11,0x04,0xb8,0x3b,0x77,0xd1,0xac,0x30,0x13,0xa8,0x09,0x01,0xa9,0x38,0x27,0xa0, + 0xbb,0x20,0x23,0x99,0x1a,0x80,0xbd,0x1a,0x53,0x90,0xbb,0x69,0x77,0xc8,0x9c,0x30,0x02,0x98,0x18,0x81, + 0xaa,0x48,0x34,0xb0,0xbb,0x30,0x11,0xa9,0x01,0xc3,0xcc,0x2a,0x32,0xa8,0xb9,0x83,0x77,0x87,0xcc,0x1a, + 0x22,0x81,0x89,0x01,0xa8,0x0a,0x35,0x84,0xba,0x0a,0x12,0xa1,0x00,0x21,0xbe,0x8c,0x22,0x83,0xba,0x09, + 0x00,0x78,0x77,0xd9,0x8b,0x31,0x02,0x99,0x01,0xa0,0x8b,0x71,0x22,0xc8,0xa9,0x11,0x01,0x09,0x20,0xc9, + 0xcb,0x11,0x04,0x98,0x8a,0x00,0x98,0x77,0x97,0xad,0x18,0x12,0x90,0x08,0x01,0xb9,0x19,0x36,0x91,0xab, + 0x18,0x82,0x99,0x21,0x92,0xce,0x1a,0x32,0x88,0x9b,0x00,0xb1,0x39,0x77,0x97,0xaf,0x10,0x12,0x88,0x18, + 0x80,0xab,0x48,0x34,0xa0,0xab,0x20,0x80,0x09,0x42,0xb0,0xaf,0x08,0x11,0x01,0x80,0x99,0xab,0x38,0x74, + 0x67,0xd9,0x9b,0x31,0x01,0x88,0x11,0xc8,0x9a,0x62,0x12,0xa9,0x89,0x81,0x98,0x31,0x13,0xfb,0x9a,0x11, + 0x81,0x19,0x29,0xcb,0xaa,0x34,0x73,0x47,0xf9,0x8b,0x21,0x81,0x18,0x10,0xb9,0x8c,0x62,0x02,0x99,0x88, + 0x90,0x98,0x32,0x04,0xbc,0x9a,0x11,0x88,0x28,0x20,0xbe,0x99,0x05,0x92,0x76,0x94,0xbe,0x08,0x03,0x08, + 0x30,0x98,0xdb,0x20,0x24,0x80,0x1a,0x98,0xd8,0x11,0x23,0xa9,0x9c,0x88,0xa8,0x30,0x12,0xcb,0xaa,0x02, + 0x13,0x12,0x77,0x27,0xcf,0x18,0x81,0x00,0x21,0x98,0x9c,0x20,0x23,0x81,0x08,0xaa,0x9b,0x42,0x03,0xa9, + 0xaa,0xac,0x0a,0x23,0x92,0xab,0x0f,0x19,0x20,0x05,0x72,0x77,0xdb,0x09,0x81,0x18,0x31,0xa0,0x9c,0x10, + 0x12,0x31,0x02,0xbb,0x9b,0x22,0x31,0x39,0xcc,0xfa,0x90,0x01,0x38,0x09,0xbc,0xa0,0x83,0x42,0x11,0x77, + 0x87,0xad,0x08,0x90,0x20,0x14,0xaa,0x89,0x01,0x11,0x34,0x88,0x9c,0x88,0x92,0x12,0x10,0x8f,0x8a,0x88, + 0x80,0x92,0xa0,0x8a,0x09,0x82,0x87,0xa3,0x77,0x87,0xad,0x80,0xa0,0x31,0x03,0x9b,0x09,0xb1,0x42,0x25, + 0x0a,0x0a,0xa8,0x80,0x05,0x98,0x98,0xaa,0x8a,0x11,0x80,0x0a,0xbc,0x1c,0x43,0x01,0x85,0x73,0x67,0xdb, + 0x88,0x99,0x38,0x23,0xa9,0x81,0xc8,0x40,0x33,0x09,0x80,0xd1,0x8a,0x13,0x3a,0x3a,0xfb,0xb0,0x92,0x08, + 0x38,0x8b,0x8b,0xc3,0xa3,0x25,0x29,0x77,0xa7,0x0c,0xa9,0x8a,0x24,0x91,0x10,0x88,0x1d,0x22,0x91,0x12, + 0xb1,0x0c,0x21,0x9b,0x12,0xf1,0x8a,0x81,0x8a,0x48,0xb8,0xa0,0x96,0x80,0x30,0x99,0x78,0x77,0x99,0x98, + 0xac,0x19,0x80,0x29,0x11,0x89,0x43,0x03,0x42,0x12,0x8a,0x20,0xd8,0x88,0xb0,0x9d,0x89,0xbb,0x09,0xc0, + 0x80,0x14,0x49,0x78,0x18,0x20,0x77,0x92,0x09,0xdb,0xab,0x90,0x9a,0x10,0x80,0x40,0x24,0x31,0x25,0x02, + 0x22,0x91,0xa9,0xb8,0xaf,0x9b,0xdb,0xa9,0xa0,0x09,0x30,0x31,0x42,0x24,0x33,0x75,0x17,0x08,0xa0,0xcb, + 0x9a,0xbb,0x9b,0xa8,0x98,0x43,0x31,0x73,0x23,0x32,0x15,0x01,0x21,0x99,0x9b,0xcb,0xcd,0xb8,0xba,0x8b, + 0x8b,0x1b,0x11,0x03,0x47,0x77,0x00,0x10,0x99,0xaa,0xc0,0xaa,0x89,0x9a,0x29,0x81,0x22,0x17,0x22,0x52, + 0x20,0x20,0x82,0xa1,0x81,0xac,0x9b,0xbd,0xcb,0xb9,0xbb,0x89,0x8b,0x81,0x77,0x17,0x18,0x01,0xbb,0x89, + 0xcc,0x8a,0xa8,0x1a,0x21,0x20,0x36,0x13,0x43,0x14,0x20,0x21,0x98,0x90,0xe9,0x9a,0xcb,0x9c,0xaa,0xbb, + 0x99,0xb8,0x21,0x79,0x77,0x11,0x01,0xba,0x8a,0xcc,0xaa,0x98,0x0a,0x32,0x20,0x27,0x13,0x52,0x21,0x10, + 0x01,0x98,0x98,0xcb,0x9c,0xca,0xba,0xb9,0x9b,0x0a,0x0b,0x10,0x45,0x77,0x13,0x21,0xca,0xab,0xea,0x9b, + 0x99,0x9a,0x22,0x11,0x45,0x23,0x52,0x22,0x20,0x02,0xa0,0x90,0xdb,0xab,0xdb,0xab,0xb9,0xba,0x80,0x98, + 0x58,0x20,0x77,0x05,0x11,0xb9,0xaa,0xea,0x9b,0x99,0x8a,0x21,0x11,0x45,0x23,0x52,0x12,0x11,0x02,0x98, + 0x88,0xbb,0xad,0xda,0xaa,0xb9,0x8c,0x89,0x9a,0x01,0x70,0x77,0x18,0x01,0xaa,0x99,0xdb,0x9a,0x99,0x0a, + 0x02,0x21,0x37,0x21,0x43,0x02,0x22,0x82,0x09,0x98,0xad,0xaa,0x9c,0xba,0xba,0xbb,0xae,0xa9,0xb9,0x77, + 0x03,0x21,0xb1,0xab,0xe9,0x9d,0x98,0x9a,0x11,0x02,0x72,0x12,0x32,0x23,0x11,0x13,0x90,0x18,0xbc,0xac, + 0xda,0xbb,0xa9,0x9d,0x99,0xa9,0x10,0x79,0x57,0x10,0x01,0xba,0x9a,0xec,0x99,0xa9,0x09,0x01,0x20,0x35, + 0x22,0x35,0x12,0x32,0x82,0x00,0xa0,0xac,0xb9,0xae,0x9a,0xcb,0x09,0xa9,0x09,0x00,0x77,0x13,0x21,0xca, + 0xaa,0xfb,0x9b,0x9a,0x9b,0x00,0x11,0x54,0x22,0x53,0x13,0x32,0x13,0x00,0x02,0x9b,0xa9,0xfb,0x9a,0xbb, + 0x9d,0x1a,0x80,0x80,0x08,0x80,0x08,0x80,0x08,0x80,0x08,0x80,0x08,0x80,0x08,0x08,0x08,0x08,0x80,0x80, + 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00, +}; +static constexpr VoiceClip gpsOnClip = { + gpsOnData, sizeof(gpsOnData), 9683, 8000 +}; +static const uint8_t gpsOffData[] = { + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70, + 0x7f,0xf7,0xf7,0x61,0x5c,0x8b,0xd1,0x04,0x4a,0x8c,0xb3,0x83,0x90,0x98,0x91,0x22,0x2d,0x89,0x28,0xd1, + 0xa3,0x20,0x0a,0x80,0xf1,0xb7,0x01,0x5d,0x1a,0x88,0x91,0x18,0x2a,0xa0,0xb5,0x81,0x38,0x2c,0x88,0x2b, + 0x5a,0xb9,0xa7,0xa1,0xb4,0xc3,0x51,0x1d,0x08,0x90,0x20,0x3c,0x1b,0xf3,0xa3,0x81,0x28,0x1b,0x98,0xb4, + 0x82,0x6c,0x8a,0xc3,0xc4,0x11,0x09,0x00,0x0a,0xb1,0xa5,0x20,0x2c,0x39,0x4f,0x8a,0xa2,0x01,0x5b,0x0a, + 0xc1,0xb6,0x82,0x4a,0x8a,0xb2,0x02,0x5c,0x1b,0xa1,0xa2,0x01,0x3a,0x2a,0x3b,0x99,0xf7,0xa3,0x30,0x2d, + 0x19,0x29,0x2c,0xc0,0xb5,0x21,0x3c,0x2b,0xc0,0xb4,0xb4,0x11,0x2a,0x1a,0x98,0x82,0x3a,0x89,0x10,0xb9, + 0xb7,0x82,0x5a,0x2b,0xe0,0xc6,0x82,0x49,0x2c,0x89,0xc3,0x82,0x29,0x4b,0x8a,0xd4,0xa3,0x20,0x4d,0x0a, + 0xc2,0x82,0x29,0x2b,0xb0,0xb5,0x02,0x4b,0x3b,0x8a,0xd4,0xb4,0x01,0x29,0x4b,0x2b,0xd0,0xb6,0x82,0x39, + 0x2c,0x89,0xb2,0xa3,0x10,0x1a,0x90,0xa2,0x50,0x2e,0xe1,0xb4,0x02,0x5c,0x2b,0x89,0xa2,0x01,0x19,0x09, + 0xc2,0x11,0x3b,0x4c,0xa9,0xb5,0x11,0x5b,0x1b,0xc1,0x83,0x5b,0x0a,0xc2,0x82,0x39,0x2c,0x88,0x29,0x89, + 0x93,0x4d,0x99,0xe6,0xb5,0x82,0x5b,0x2b,0x98,0xc3,0x82,0x49,0x3d,0x99,0xc4,0x82,0x39,0x3d,0x99,0xc3, + 0x93,0x39,0x2c,0x09,0xb1,0xa4,0x10,0x3b,0x89,0xb2,0x12,0x3d,0xc8,0xb5,0x21,0x4f,0x2b,0xa0,0xb3,0x92, + 0x18,0x19,0x4a,0x3c,0x0a,0x00,0x3a,0x0a,0xf5,0xc5,0x21,0x3d,0x0a,0xa1,0xa3,0x80,0xb1,0x03,0x6e,0x2c, + 0x98,0xb3,0x92,0x00,0x5b,0x1a,0x88,0x00,0x19,0x98,0xc6,0x21,0x4f,0x0a,0xa0,0xb4,0x82,0x08,0x19,0x08, + 0x4a,0x1a,0x29,0xb8,0xb4,0xc5,0x21,0x3c,0x4b,0x9a,0xc5,0x82,0x39,0x3d,0x0a,0xb1,0xa4,0x81,0x18,0x2a, + 0xa8,0xa4,0x28,0xb0,0x31,0x2e,0xa0,0xc3,0xb3,0x70,0x4f,0x0a,0xc1,0xa3,0x20,0x4d,0x1a,0xb0,0xa5,0x10, + 0x4b,0x0a,0xa1,0xc3,0x82,0x19,0x19,0xa0,0x11,0x3b,0x1b,0xf5,0xa3,0x10,0x4c,0x0a,0x80,0x30,0x9a,0xb7, + 0x11,0x2c,0x8a,0xb0,0xb2,0x21,0x6c,0x19,0x91,0x93,0x02,0x29,0x2b,0x0b,0x8b,0xf8,0x24,0x3f,0xc0,0xa3, + 0x88,0x8a,0x1a,0x9a,0xa4,0x13,0x32,0x34,0x50,0x18,0x98,0xd1,0xb0,0x99,0x1f,0xb3,0x78,0x2b,0xd1,0x00, + 0x0c,0xa8,0x00,0x18,0x12,0x52,0x12,0x32,0x39,0xb9,0xd0,0xaa,0xcb,0x2a,0xf3,0x04,0x5c,0x9a,0xb2,0x19, + 0x9b,0x91,0x30,0x41,0x62,0x21,0x83,0x11,0x1c,0xbb,0xe8,0x99,0x59,0x2d,0xc1,0x83,0x2c,0xaa,0xb1,0x08, + 0x00,0x42,0x51,0x03,0x15,0x10,0x89,0xa9,0xca,0xba,0x0c,0xf2,0x12,0x4d,0xb8,0xb4,0x39,0x0c,0x90,0x11, + 0x20,0x14,0x42,0x20,0x91,0xb1,0xc9,0xca,0xab,0x6b,0x1d,0xe2,0x83,0x3b,0x9b,0xb2,0x18,0x90,0x06,0x60, + 0x10,0x83,0x11,0x0a,0xb8,0x9b,0x9e,0x1a,0xd9,0xb7,0x30,0x1d,0xc0,0x92,0x29,0x09,0x11,0x31,0x13,0x15, + 0x30,0x1a,0xb9,0xf9,0xb8,0x8a,0xe2,0x12,0x3e,0xc9,0xb4,0x39,0x1c,0x90,0x02,0x12,0x14,0x42,0x28,0x98, + 0xc1,0xa9,0x9c,0x0c,0xf2,0x83,0x4c,0xa9,0xc3,0x18,0x8a,0x81,0x40,0x38,0x13,0x24,0x01,0xa2,0x98,0x9e, + 0xca,0x99,0xf3,0x83,0x4d,0xa9,0xd3,0x10,0x1b,0xa0,0x84,0x31,0x21,0x42,0x28,0xb0,0xd3,0x1a,0x0f,0x0a, + 0xd1,0xb5,0x20,0x1d,0xa8,0x92,0x19,0x08,0x12,0x60,0x01,0x94,0x12,0x3c,0xab,0xf2,0x80,0x4a,0x1c,0xc1, + 0xa4,0x39,0x0c,0xa0,0x81,0x18,0x01,0x33,0x70,0x08,0xb3,0x82,0x1c,0x8c,0xc8,0xb3,0x58,0x1c,0xb0,0x81, + 0x1d,0xb8,0x93,0x69,0x18,0x85,0x22,0x28,0xa0,0xc2,0x89,0x9c,0xa9,0xc5,0x12,0x3d,0x9a,0xd2,0x08,0x8a, + 0xa2,0x32,0x40,0x14,0x33,0x38,0xb0,0xe2,0x0a,0x8f,0x00,0x3b,0xf0,0xb4,0x38,0x1e,0xb0,0xa3,0x20,0x29, + 0x12,0x41,0x18,0xb3,0x92,0x2d,0x8d,0x99,0xd3,0x83,0x4c,0x8b,0xb0,0x19,0x8c,0xb2,0x24,0x79,0x10,0x03, + 0x82,0x81,0x09,0x0e,0xab,0x01,0x3c,0xf0,0xa4,0x4a,0x0d,0xb0,0x82,0x18,0x81,0x14,0x50,0x18,0x91,0xa2, + 0x09,0x0d,0x8b,0xf4,0x93,0x6b,0x0b,0xc1,0x81,0x1a,0x98,0x12,0x48,0x01,0x85,0x12,0x08,0x98,0x0a,0x0f, + 0x88,0x09,0xe1,0xb3,0x4a,0x0d,0xa8,0x81,0x28,0x01,0x15,0x60,0x18,0xa2,0x82,0x0b,0xca,0x88,0xb0,0x94, + 0x5d,0x0c,0xc0,0xa1,0x88,0x08,0x30,0x30,0x86,0x86,0x21,0x19,0x89,0xa9,0xd9,0x82,0x4e,0x9a,0xc3,0x00, + 0x1c,0x99,0x00,0x4a,0x00,0x85,0x32,0x38,0x81,0x92,0x8a,0xad,0xc9,0xa3,0x7b,0x1c,0xe2,0x81,0x2b,0x9b, + 0xc3,0x31,0x5a,0x01,0x04,0x21,0x18,0x98,0x99,0xbb,0x9b,0xf3,0x02,0x5f,0x8b,0xe2,0x81,0x2a,0x0a,0x81, + 0x12,0x12,0x24,0x40,0x29,0x99,0xf1,0xa0,0x1a,0xa8,0x93,0x5d,0x8b,0xe2,0x00,0x2b,0x8a,0x93,0x04,0x32, + 0x61,0x28,0x91,0xb2,0xa0,0x0d,0x9c,0xc3,0x58,0x2d,0xc0,0x92,0x2b,0x9b,0xc3,0x31,0x5a,0x01,0x14,0x31, + 0x08,0xa1,0x99,0x9d,0xba,0x3b,0xbb,0xc7,0x33,0x2f,0xaa,0xd3,0x00,0x2a,0x08,0x03,0x43,0x31,0x12,0x10, + 0x9a,0xf9,0xb8,0x8b,0x4c,0x1b,0xe5,0x83,0x4c,0x8b,0xc1,0x01,0x2a,0x00,0x31,0x30,0x85,0x13,0x4b,0xaa, + 0xd1,0x99,0x8b,0x3a,0x2c,0xe5,0x83,0x5b,0x9b,0xd3,0x00,0x1a,0x81,0x13,0x31,0x04,0x32,0x1a,0xe0,0xa0, + 0x0d,0x9b,0x08,0xd2,0x85,0x6a,0x8a,0xd2,0x00,0x1b,0x98,0x82,0x22,0x41,0x41,0x11,0x92,0x88,0x8c,0xbc, + 0xb9,0xaa,0x42,0x5d,0xb1,0x84,0x2b,0xbb,0xe1,0x08,0x2a,0x10,0x15,0x43,0x31,0x11,0xa1,0xa8,0xad,0xac, + 0xba,0x9a,0x87,0x58,0x88,0xa2,0x09,0x8d,0xba,0xa0,0x48,0x48,0x23,0x17,0x31,0x00,0xa1,0xa8,0x9d,0xbb, + 0xca,0x09,0x42,0x38,0x85,0x91,0x0a,0xaf,0xc8,0x89,0x19,0x11,0x25,0x34,0x42,0x11,0x81,0x98,0xac,0xdb, + 0xba,0x9a,0x39,0x12,0x25,0x21,0x80,0xd8,0xca,0xbb,0x8c,0xa8,0xa8,0x72,0x43,0x24,0x32,0x21,0x00,0x99, + 0xcb,0xbc,0xab,0xa9,0x00,0x08,0x80,0xa1,0xaa,0xbd,0xdb,0xa9,0x0a,0x30,0x44,0x35,0x34,0x24,0x23,0x12, + 0x81,0xa8,0xbb,0x09,0x8b,0xb9,0xfb,0xbd,0xbd,0xdb,0xaa,0x9b,0x89,0x11,0x44,0x53,0x33,0x24,0x23,0x12, + 0x00,0xa8,0xba,0x9d,0x91,0x18,0x80,0xb8,0xdc,0xbc,0xcd,0xba,0xba,0x9a,0x18,0x41,0x44,0x43,0x24,0x33, + 0x32,0x21,0x80,0xa8,0x1b,0xc9,0xa8,0xdb,0xcb,0xad,0xdb,0xaa,0xab,0x9a,0x88,0x30,0x52,0x34,0x34,0x34, + 0x32,0x23,0x22,0x01,0xa1,0x35,0x1b,0xa8,0xcc,0xbd,0xbd,0xdb,0xaa,0xab,0x9a,0x89,0x11,0x35,0x63,0x42, + 0x32,0x32,0x32,0x12,0x01,0xb0,0x54,0x8d,0xa8,0xdb,0xbb,0xbc,0xac,0xaa,0x99,0x00,0x33,0x45,0x53,0x32, + 0x23,0x14,0x02,0x81,0xa8,0xba,0xcd,0x21,0x9f,0xa8,0xc9,0xa9,0xaa,0xa9,0x10,0x41,0x51,0x43,0x23,0x24, + 0x23,0x12,0x00,0xa9,0xcc,0xda,0xba,0xda,0x32,0x0e,0x08,0x99,0xa9,0x80,0x88,0x41,0x32,0x34,0x43,0x33, + 0x32,0x93,0xb1,0xda,0xdb,0xca,0xaa,0xdb,0xb8,0x67,0x0a,0x00,0x08,0xba,0x29,0xba,0xb5,0x87,0x08,0x01, + 0x08,0x11,0xa5,0x21,0x1e,0xa8,0xa0,0xa2,0x1b,0x31,0x88,0xf1,0x38,0xc0,0x12,0x91,0x70,0x80,0x98,0x19, + 0x8b,0xa2,0x5c,0xc0,0x80,0x21,0x18,0x79,0xa8,0x97,0xa2,0x19,0x9b,0xa9,0x0a,0x8e,0x7b,0xa1,0x81,0x20, + 0x19,0x88,0x07,0x88,0x1a,0x14,0x3a,0x59,0xc8,0x90,0x82,0x9d,0x00,0x89,0xe1,0x13,0x28,0x3d,0x89,0x80, + 0x11,0x09,0xf9,0x89,0x29,0xe4,0x08,0x83,0x49,0x5a,0x90,0x18,0xb1,0x29,0x4b,0x90,0x11,0xb3,0x1f,0x1a, + 0x99,0x18,0xb9,0xb2,0x87,0x41,0x69,0x00,0x19,0x0b,0xcb,0xaa,0xb7,0x11,0x00,0x90,0x9e,0x80,0x42,0x8d, + 0x30,0xa0,0xa6,0x04,0x0a,0x00,0x99,0x01,0xd3,0x21,0x1f,0x89,0xa0,0x08,0x18,0x02,0x02,0x51,0x95,0x22, + 0x89,0x8f,0xc1,0x90,0x19,0x91,0xa8,0x5b,0x3d,0x98,0x02,0xa2,0x1f,0x9a,0x96,0x02,0x2a,0x11,0x42,0x5a, + 0x08,0xb1,0x00,0xa8,0x9f,0xc2,0xa9,0xa0,0x8e,0x21,0x6b,0x10,0x83,0x1a,0x11,0xb0,0x82,0xd1,0x90,0x30, + 0x4c,0x09,0xa3,0x9a,0xc8,0xf1,0xb8,0x07,0x1b,0x89,0xb3,0x91,0x70,0x09,0x81,0x6a,0xb2,0x2d,0x14,0xb9, + 0x33,0xf9,0x38,0xa9,0x9a,0x10,0x1c,0x93,0x7b,0xb1,0x18,0x04,0xf0,0x7f,0xb1,0x3a,0x08,0x9a,0x07,0x0b, + 0xa6,0x0a,0x12,0x0a,0x80,0xf3,0x21,0x1a,0x2f,0xb0,0x01,0x93,0x1a,0x0a,0x8a,0x17,0x5d,0xa0,0xaa,0x07, + 0x3d,0x88,0x00,0x88,0x2a,0xc0,0x95,0x29,0x18,0x0f,0xa4,0x90,0x02,0x48,0x9d,0x05,0x0d,0xa4,0x3b,0xb1, + 0x38,0xc1,0x01,0x92,0x5b,0xa9,0x95,0x3a,0x08,0x1e,0xc4,0x28,0x88,0x08,0xb4,0x80,0x58,0x8d,0x94,0x0a, + 0x93,0x5d,0xc0,0x21,0xb8,0x22,0x0b,0xb1,0x41,0xac,0x14,0x1d,0x92,0x98,0x83,0x4e,0xa8,0x11,0xb8,0x22, + 0x8c,0x01,0x09,0x28,0xc2,0x7a,0xe8,0x84,0x88,0x39,0xb8,0x11,0xf1,0x22,0x2e,0x90,0x08,0xb2,0x30,0xaa, + 0x12,0x1d,0xc3,0x11,0xa9,0xa7,0x49,0xaa,0xa6,0x38,0x8a,0x10,0xa9,0xa5,0x49,0x0a,0x81,0x2a,0xe1,0x94, + 0x39,0x0a,0x29,0xd8,0xa6,0x10,0x1a,0x90,0x28,0xa8,0x93,0x88,0x90,0x20,0x9c,0xc7,0x21,0x89,0x30,0x1d, + 0x98,0xc5,0x11,0x0a,0x38,0x2d,0xd1,0xa4,0x28,0x1a,0x19,0xd2,0x02,0x4c,0x0a,0xa2,0x18,0xc0,0xb5,0x02, + 0x5b,0x2b,0x99,0xd6,0x93,0x28,0x2b,0x19,0x1a,0xe2,0xb4,0x82,0x4a,0x1b,0xd1,0xb4,0x12,0x4c,0x0a,0xa0, + 0xb4,0x02,0x5b,0x2b,0x09,0xb0,0xb7,0xa3,0x38,0x3d,0x0a,0x90,0x91,0xb3,0x40,0x2c,0x89,0xa1,0x02,0xa8, + 0x31,0x3c,0xc8,0xb7,0x81,0x00,0x4c,0x8a,0xa2,0x20,0xb8,0x44,0x3f,0xb9,0xb6,0x01,0x2a,0x88,0x6a,0x1b, + 0xb1,0xc6,0x93,0x38,0x3e,0x0a,0xb1,0xa3,0x18,0x18,0x19,0x4a,0x8a,0x21,0x1e,0xe2,0xb5,0x20,0x3b,0x0a, + 0x00,0xc0,0xa5,0x01,0x6b,0x2c,0x19,0x88,0xc2,0xb3,0x31,0x1f,0x80,0x08,0x80,0xb1,0xb4,0x42,0x3e,0x89, + 0x90,0x88,0xc1,0xa3,0x48,0x3c,0x09,0x91,0x01,0x90,0x92,0x38,0x3c,0x9a,0x17,0x7a,0x0a,0xc0,0x80,0x0c, + 0xa9,0xa2,0x11,0x20,0x22,0x51,0x10,0xa2,0xb3,0x80,0x3c,0xb7,0x51,0x2f,0xa9,0x91,0x8a,0xc8,0xb3,0x40, + 0x4b,0x00,0x03,0x11,0xa2,0xa4,0x18,0x4f,0xa8,0xa5,0x18,0x8b,0xd8,0x90,0x0a,0x89,0x02,0x51,0x30,0x03, + 0x14,0x38,0x1b,0xab,0x7a,0xb8,0xc7,0x82,0x2d,0x9b,0xb0,0x08,0x09,0x02,0x53,0x58,0x01,0x83,0x10,0x8a, + 0xd8,0x22,0x3f,0xb9,0xc5,0x08,0x8b,0xb8,0x00,0x4a,0x00,0x05,0x41,0x28,0x81,0x81,0x1a,0x0c,0xe5,0x93, + 0x5b,0x8c,0xa0,0x88,0x8a,0xc2,0x13,0x7a,0x18,0x82,0x12,0x19,0x98,0x98,0x48,0x3e,0xc9,0xc3,0x09,0x8c, + 0xb8,0x10,0x4a,0x81,0x87,0x22,0x38,0x80,0x91,0x8a,0x0c,0xf3,0x83,0x3d,0x9b,0xf2,0x80,0x2b,0x99,0x83, + 0x50,0x10,0x04,0x21,0x29,0xb8,0xd1,0x20,0x2e,0xc8,0xc3,0x19,0x0d,0xa8,0x00,0x39,0x00,0x06,0x31,0x38, + 0x91,0x92,0x0a,0x1e,0xf3,0xa3,0x39,0x0e,0xb8,0x09,0x0b,0xb1,0x85,0x41,0x30,0x22,0x40,0x09,0xe1,0xb1, + 0x58,0x2e,0xa8,0xc3,0x18,0x0c,0xa8,0x28,0x4c,0x88,0x95,0x22,0x39,0x80,0x81,0x1a,0x8c,0xf5,0xa3,0x39, + 0x0d,0xa8,0x80,0x1a,0xb0,0x96,0x31,0x39,0x02,0x03,0x38,0x0c,0xb9,0x21,0x3f,0xcb,0xd6,0x00,0x1b,0xa9, + 0x92,0x59,0x3a,0x92,0x86,0x02,0x00,0x00,0x1b,0x1c,0xf1,0xb3,0x38,0x1e,0xa9,0x90,0x1a,0x89,0x93,0x14, + 0x32,0x24,0x32,0x39,0xb8,0xf2,0xd4,0x20,0x2f,0x9a,0xb1,0x08,0x8b,0xb2,0x13,0x50,0x11,0x05,0x21,0x08, + 0xb1,0x98,0x7a,0x3e,0xaa,0xd4,0x91,0x1a,0x8a,0x88,0x39,0x10,0x96,0x85,0x21,0x18,0x80,0x09,0x5c,0x0b, + 0xf3,0x91,0x1a,0x8c,0x98,0x19,0x19,0xa3,0x07,0x31,0x48,0x18,0x90,0xb1,0x88,0xf2,0xa3,0x5c,0x0d,0xc0, + 0xa2,0x08,0x09,0x92,0x32,0x58,0x01,0x83,0x20,0x1c,0xd8,0xc5,0x11,0x3d,0x9b,0xb1,0x08,0x0b,0xc1,0x84, + 0x40,0x38,0x11,0x02,0x92,0xc2,0xa1,0x91,0x6c,0x1e,0xa9,0xc1,0x88,0x9a,0xb2,0x32,0x7a,0x01,0x95,0x13, + 0x29,0x89,0x98,0xb3,0x6a,0x1e,0xc9,0xc2,0x08,0x0b,0x88,0x21,0x79,0x00,0x84,0x02,0x10,0x89,0x98,0x91, + 0x7b,0x1e,0xc8,0xc2,0x80,0x1a,0x09,0x01,0x31,0x31,0x04,0x04,0x48,0x1b,0xe8,0xb5,0x20,0x2f,0x9a,0xb1, + 0x08,0x0a,0xa1,0x84,0x60,0x29,0x82,0x03,0x28,0x8a,0xb8,0xd6,0x92,0x3b,0x0f,0xa8,0x90,0x09,0xa0,0x95, + 0x42,0x59,0x00,0x92,0x01,0x89,0x39,0x0c,0xf1,0xc2,0x88,0x8b,0x8a,0x1a,0x18,0x04,0x15,0x23,0x13,0x22, + 0x3a,0x8e,0x81,0x4c,0x9c,0xf1,0xa0,0x0a,0x1b,0x09,0x11,0x32,0x35,0x33,0x13,0x02,0x89,0x1f,0xf1,0xc3, + 0x29,0x0f,0xa8,0xa1,0x28,0x2a,0x92,0x15,0x40,0x18,0x92,0x92,0x89,0x28,0x2f,0xca,0xf4,0x91,0x2a,0x0b, + 0x90,0x83,0x22,0x31,0x22,0x32,0x29,0x9a,0x8b,0xf6,0xa2,0x3c,0x8e,0xc0,0x80,0x2a,0xa0,0x86,0x31,0x59, + 0x80,0x92,0x81,0x8a,0x80,0x4c,0x8c,0xf1,0xa1,0x09,0x0a,0x90,0x12,0x51,0x40,0x10,0x93,0x93,0x09,0x1d, + 0xf2,0xb3,0x3a,0x8f,0xb0,0xa1,0x29,0x08,0x04,0x42,0x48,0x81,0x93,0x08,0xab,0x82,0x4f,0x9c,0xf3,0x80, + 0x1a,0x99,0x82,0x30,0x48,0x02,0x85,0x01,0x19,0x8a,0x9a,0xe6,0x93,0x4b,0x8c,0xc0,0x80,0x09,0x91,0x23, + 0x70,0x10,0x82,0x01,0x0a,0xba,0x82,0x3f,0xab,0xf3,0x08,0x0b,0xa8,0x11,0x30,0x04,0x25,0x48,0x08,0xb1, + 0x88,0x2e,0xe1,0x93,0x5b,0x8c,0xc1,0x00,0x2b,0x90,0x04,0x50,0x18,0x92,0x01,0x8a,0xe0,0x21,0x3e,0xa9, + 0xd4,0x00,0x0b,0xa8,0x10,0x4a,0x01,0x15,0x30,0x00,0xa2,0x89,0x9d,0xd1,0x18,0x1c,0xc0,0x92,0x09,0x98, + 0x02,0x58,0x00,0x85,0x22,0x29,0x98,0xb0,0x19,0xf2,0x82,0x2e,0xac,0xd1,0x08,0x1a,0x11,0x33,0x14,0x04, + 0x10,0x99,0xb9,0x9a,0x3c,0xd2,0x96,0x29,0x8d,0xb9,0x99,0x88,0x42,0x70,0x11,0x82,0x82,0x89,0x8b,0xaa, + 0xb0,0x87,0x40,0x0d,0xc8,0x98,0x8a,0x18,0x40,0x32,0x14,0x02,0x00,0x9a,0xba,0xa9,0x98,0x37,0x3c,0xe9, + 0xc0,0x99,0x8a,0x38,0x41,0x14,0x13,0x11,0x09,0x0c,0x9a,0x88,0x10,0x7a,0xd4,0xa2,0x0d,0xab,0x88,0x00, + 0x24,0x51,0x10,0x01,0x09,0x98,0x08,0x19,0x90,0xa0,0x79,0xa9,0xf4,0xaa,0xaa,0x29,0x38,0x25,0x52,0x18, + 0x81,0xa1,0x81,0x39,0x1c,0xa8,0xf0,0x38,0xf2,0x00,0x8e,0xb1,0x98,0x11,0x61,0x28,0x92,0x11,0x19,0x29, + 0x0b,0xd2,0xa0,0xb8,0xb9,0x77,0x2d,0xc8,0x90,0x98,0x11,0x38,0x85,0x12,0x08,0x2b,0xaa,0xb4,0x01,0x1b, + 0xca,0xf2,0xa1,0x77,0x1b,0xd0,0x88,0x99,0x31,0x48,0x02,0x80,0xe1,0x28,0x1b,0x92,0x91,0x92,0x2f,0x8c, + 0x01,0x79,0xb7,0x10,0x8d,0x88,0x88,0x85,0x30,0x88,0x09,0xb9,0x83,0x3a,0x92,0x2a,0xf9,0x00,0x98,0x23, + 0x7d,0xe3,0xa2,0xaa,0x10,0x4a,0x83,0x12,0xa8,0x1a,0x9c,0x84,0x20,0xa0,0x98,0xaa,0x39,0x29,0x06,0x58, + 0xb7,0x4b,0x9e,0x00,0x80,0x15,0x19,0xa0,0x99,0xa1,0x50,0x19,0x00,0xaa,0x88,0x0a,0x04,0x31,0x3a,0x7f, + 0xf3,0x80,0x0b,0x38,0x88,0x87,0x08,0x89,0x1b,0xb2,0x23,0x08,0x2a,0xad,0x91,0x21,0x41,0x89,0xe1,0x79, + 0xe2,0x00,0xaa,0x21,0x19,0x15,0x89,0xa1,0x0c,0x80,0x48,0xa2,0x10,0xbb,0x88,0x88,0x17,0x29,0x98,0xca, + 0x57,0x0d,0xb0,0x09,0x82,0x60,0x80,0x80,0xc8,0x10,0x1a,0x12,0x98,0x91,0x0d,0x08,0x10,0x94,0x18,0x99, + 0x3c,0x07,0x3d,0xdb,0x08,0xa2,0x44,0x08,0x90,0xc9,0x82,0x5b,0x10,0x98,0xc1,0x09,0x19,0x38,0xa3,0x83, + 0xab,0x5c,0x07,0x2c,0xea,0x08,0x80,0x43,0x80,0x81,0xbb,0x81,0x19,0x05,0x19,0xc0,0x8a,0x80,0x69,0x91, + 0x01,0xa9,0x39,0x37,0x2f,0xdb,0x08,0x91,0x63,0x08,0x80,0xb9,0x01,0x3b,0x12,0xa8,0xd3,0x1b,0x89,0x11, + 0xa7,0x11,0x8b,0xb0,0x77,0x0a,0xc8,0x8a,0x81,0x50,0x01,0x00,0xb8,0x29,0x0a,0x12,0xa1,0x91,0x8f,0x90, + 0x10,0x23,0x2b,0xb8,0x9a,0x77,0xe2,0xa2,0x8d,0x18,0x28,0x05,0x18,0x99,0x8a,0xa1,0x31,0x81,0x89,0xe9, + 0x18,0x00,0x31,0xa0,0x08,0xac,0x70,0xa7,0x00,0xae,0x18,0x00,0x25,0x90,0x08,0xac,0x11,0x00,0x13,0x9b, + 0x99,0x0d,0x03,0x01,0x94,0x0c,0x89,0x39,0x77,0x1b,0xcb,0x8a,0x84,0x51,0x00,0x89,0xb8,0x28,0x01,0x20, + 0xe1,0x09,0x99,0x30,0xa3,0x02,0xba,0x4d,0x1a,0x57,0x8b,0xbb,0x8d,0x05,0x21,0x11,0x8c,0xa8,0x18,0x13, + 0x29,0xb8,0xac,0x01,0x69,0x01,0x89,0xb8,0x19,0x41,0x77,0x9b,0xaa,0x8b,0x15,0x31,0x82,0xac,0x90,0x28, + 0x33,0x99,0xe1,0x9a,0x30,0x39,0x94,0xc8,0x08,0x2b,0x61,0x27,0x8d,0xab,0x8b,0x07,0x11,0x01,0x9c,0x80, + 0x00,0x23,0x8a,0x99,0xbb,0x24,0x01,0x21,0xae,0x18,0x88,0x34,0x47,0x9e,0x99,0x8b,0x16,0x01,0x00,0xbb, + 0x01,0x82,0x52,0x9a,0x9a,0xc0,0x42,0x10,0x0a,0xf0,0x00,0x20,0x4a,0x07,0xbb,0x8a,0x8c,0x34,0x82,0x10, + 0xbc,0x28,0x93,0x33,0xc8,0x0d,0x98,0x21,0x03,0x8b,0xb8,0x1c,0x53,0x10,0x57,0xbc,0x9a,0xaa,0x36,0x01, + 0x18,0xca,0x18,0x02,0x40,0xb0,0x9b,0x88,0x49,0x04,0xa9,0x90,0x9c,0x42,0x11,0x77,0xba,0x8a,0xab,0x53, + 0x02,0x28,0xc9,0x09,0x03,0x40,0x81,0x9d,0xa0,0x08,0x43,0x99,0x90,0xda,0x31,0x28,0x77,0xb9,0x9a,0xba, + 0x42,0x13,0x20,0xc8,0x0b,0x12,0x31,0x86,0xab,0xa8,0x8a,0x34,0x90,0x18,0xbd,0x29,0x92,0x77,0xa2,0xac, + 0xd9,0x28,0x22,0x20,0xb2,0xab,0x30,0x59,0x33,0xc8,0xa8,0xbb,0x40,0x10,0x11,0xf0,0x89,0x88,0x71,0x87, + 0xa9,0xb9,0x0d,0x21,0x11,0x04,0xb9,0x08,0x08,0x63,0x81,0x88,0xc9,0x0b,0x11,0x30,0x83,0xbd,0x99,0x1b, + 0x77,0x91,0x9a,0xdc,0x08,0x02,0x42,0x81,0x9a,0xa0,0x38,0x44,0x28,0xa1,0xfa,0x88,0x19,0x30,0xa1,0xa0, + 0xe9,0x78,0x82,0x98,0xf8,0x8a,0x18,0x38,0x04,0xa1,0x92,0x0c,0x40,0x00,0x04,0xb1,0x1a,0x8c,0x29,0xb2, + 0x83,0x98,0x2f,0x07,0x98,0xb8,0x9f,0x09,0x88,0x15,0x00,0x18,0x9a,0x10,0x94,0x43,0x00,0x3a,0xc9,0x80, + 0xa2,0x38,0x1a,0x8e,0x61,0xa5,0xa0,0xbc,0x8e,0x88,0x81,0x23,0x89,0x82,0x2a,0x11,0x12,0x07,0x10,0x10, + 0x1a,0x81,0x80,0x02,0x0a,0xb9,0x77,0x92,0x8c,0xbf,0x98,0x98,0x22,0x19,0x29,0x9b,0x13,0x12,0x15,0x00, + 0x31,0x5a,0x11,0x94,0xa5,0x82,0x49,0x2c,0x57,0xab,0xa0,0x9d,0x02,0xa1,0x5a,0x1d,0x0a,0xb2,0xa3,0x84, + 0x2a,0x0a,0x2f,0x82,0x96,0x99,0x68,0x4b,0x08,0xc1,0xa1,0x02,0x79,0x99,0x38,0xd9,0x12,0xc8,0x10,0x1c, + 0x18,0xc0,0xb3,0x92,0x7a,0x3a,0x1a,0xb1,0x84,0x93,0x10,0x8c,0x7a,0xa0,0x08,0xa8,0x4a,0xa8,0x1a,0xf4, + 0x00,0x01,0x38,0x29,0x1c,0x82,0xb0,0x95,0xb3,0x20,0x1f,0x8a,0x92,0xd1,0x98,0x33,0x48,0x0e,0x18,0x21, + 0xa0,0xc8,0x92,0x58,0x08,0x9f,0x94,0x08,0x82,0x1f,0x30,0x0a,0xc4,0xa0,0x12,0x29,0x99,0xaa,0x95,0x12, + 0xc9,0x10,0x08,0x16,0x9e,0x22,0x1c,0xb3,0x0b,0x10,0x78,0x98,0x88,0x88,0x00,0x87,0x0c,0x81,0x19,0xc4, + 0x08,0x20,0x3c,0xa8,0xe2,0x93,0x11,0x3b,0x0c,0x82,0xa1,0xb2,0x2b,0x79,0x89,0xf2,0x82,0x18,0x88,0x11, + 0x1b,0x20,0x9e,0x94,0x09,0x01,0x2c,0x90,0x13,0xf0,0x48,0x80,0x29,0x0b,0x4b,0xd1,0x10,0xb0,0x7e,0xa0, + 0x80,0xd3,0x10,0x82,0x4c,0x89,0xa0,0xb3,0x92,0x08,0x38,0x8b,0xf5,0x01,0x92,0x29,0x8c,0x84,0xa2,0x1b, + 0x38,0x7a,0x8a,0xa8,0xa4,0x20,0x08,0x0f,0xa4,0x90,0x94,0x1c,0x33,0x0f,0x00,0x09,0x92,0xd0,0x02,0x1a, + 0x80,0xb3,0x28,0x28,0x0f,0x92,0x88,0x82,0x2c,0xa1,0x13,0xf0,0x40,0x9a,0x95,0x98,0x18,0x80,0x3b,0x3f, + 0x4b,0xb1,0x91,0x11,0x3f,0x18,0x8a,0xa2,0xa0,0x04,0x2a,0x6c,0x1c,0x28,0x9a,0xb4,0x38,0x40,0x0f,0x81, + 0xb0,0x84,0x8b,0x52,0x0d,0x10,0x90,0x11,0xd8,0x20,0xc0,0x20,0xe2,0x10,0x81,0x4b,0x2c,0xa8,0x93,0x6a, + 0x88,0x88,0xe3,0x28,0x88,0x18,0xb0,0x02,0x59,0x80,0x0e,0x03,0x19,0xb0,0x0e,0x80,0x15,0xca,0x41,0x08, + 0x3a,0xb9,0x2e,0xa5,0x09,0x80,0x08,0x24,0xcb,0x85,0x8c,0x13,0xb0,0x1a,0x84,0x2f,0x12,0x9d,0xa2,0x10, + 0x86,0x0a,0xa8,0x4c,0x83,0x8a,0xc1,0x38,0x22,0x9b,0xca,0xa2,0x07,0x09,0x3b,0x88,0x04,0xd8,0x1b,0x95, + 0x01,0x91,0x99,0x98,0x7b,0x49,0xa8,0xa1,0xc4,0x7b,0x18,0x0a,0xb1,0xc4,0x12,0x1c,0x59,0xc8,0x82,0xb2, + 0x49,0x0a,0x4c,0xd2,0x91,0x83,0x19,0x20,0x0f,0x91,0x98,0x23,0xc8,0x18,0x90,0x4c,0x01,0xa9,0xa5,0x08, + 0x21,0x9a,0xa9,0x3b,0x85,0xb3,0x82,0xb8,0xb8,0x06,0x7a,0x0a,0x99,0xb0,0x34,0x01,0x4b,0xea,0xa3,0xa5, + 0x4b,0x1a,0x1b,0xa6,0x90,0x08,0x2c,0x41,0xd2,0x90,0xa4,0x29,0x20,0x0e,0x93,0xc0,0x99,0x28,0x38,0x89, + 0x14,0x12,0x48,0x08,0xc0,0x9a,0x18,0xbf,0x11,0xc8,0x48,0x9a,0x4b,0x14,0x10,0x13,0xa9,0x70,0xa2,0xad, + 0xa0,0xbb,0x48,0x02,0x21,0x04,0x1a,0x39,0x99,0x85,0x82,0x19,0xbb,0xeb,0x91,0x18,0x4a,0x98,0xb0,0x84, + 0x29,0x58,0x81,0xb2,0x77,0xa4,0x9f,0x90,0x99,0x51,0x10,0x08,0x92,0xa9,0x58,0x00,0x88,0xa3,0xba,0x1b, + 0x99,0x90,0x07,0x98,0x29,0x19,0x1a,0x05,0x92,0x28,0xa9,0x77,0xb5,0xaf,0x10,0x88,0x30,0x14,0xa9,0x19, + 0xa8,0x18,0x16,0x98,0x89,0x99,0x8b,0x22,0x82,0x29,0x89,0x9d,0x81,0x13,0x62,0x00,0xba,0xc0,0x77,0xa3, + 0xbf,0x08,0x00,0x40,0x22,0xc8,0x98,0x00,0x29,0x14,0xc2,0x9a,0x1a,0x0c,0x12,0x94,0x99,0x19,0x8a,0x12, + 0x07,0x88,0x2b,0x9a,0xb2,0x77,0x94,0xdc,0x09,0x10,0x20,0x22,0xc0,0x8b,0x30,0x00,0x13,0xb1,0xaf,0x19, + 0x82,0x11,0x01,0xbc,0x98,0x14,0x20,0x20,0xba,0x9c,0x31,0x30,0x7a,0x57,0xfb,0x0b,0x21,0x82,0x11,0x90, + 0x9e,0x11,0x03,0x08,0x09,0xbc,0x08,0x15,0x08,0x09,0xb9,0x88,0x63,0x00,0x9a,0x90,0x98,0x51,0x10,0xba, + 0x77,0xa1,0xbf,0x28,0x13,0x00,0x00,0xd9,0x1a,0x43,0xa1,0x98,0x99,0x8b,0x53,0x93,0xab,0x1a,0x80,0x22, + 0x14,0xcb,0x0b,0x22,0x82,0x10,0x9a,0x9f,0x77,0xd2,0x9e,0x11,0x03,0x08,0x08,0xba,0x28,0x35,0xa9,0xab, + 0x01,0x18,0x60,0x90,0xbb,0x20,0x32,0x0a,0x88,0xe8,0x18,0x42,0x08,0xaa,0xc8,0x28,0x77,0xd2,0x9f,0x21, + 0x12,0x89,0x89,0x98,0x38,0x43,0xc8,0xab,0x21,0x11,0x18,0xb0,0xdb,0x48,0x33,0xc0,0xaa,0x28,0x28,0x12, + 0xa0,0x9e,0x39,0x84,0x71,0x97,0xec,0x19,0x33,0x91,0xaa,0x08,0x18,0x41,0xa3,0xcc,0x2a,0x23,0xa1,0x98, + 0x8a,0x8a,0x16,0x82,0x9c,0x09,0x83,0x02,0x18,0xac,0x98,0x15,0xa1,0x77,0xc0,0x9f,0x20,0x14,0x99,0x8a, + 0x81,0x01,0x22,0xa8,0xae,0x11,0x23,0xa9,0x99,0x98,0x20,0x24,0xb8,0xac,0x30,0x23,0x89,0xa9,0xb9,0x50, + 0x51,0x49,0x67,0xfa,0x0d,0x31,0x02,0xaa,0x1a,0x10,0x11,0x12,0xe9,0x9b,0x42,0x83,0xb9,0x8a,0x18,0x21, + 0x83,0xd8,0x8b,0x31,0x04,0xa8,0x9a,0x08,0x12,0x86,0x59,0x57,0xfa,0x8d,0x32,0x02,0xba,0x09,0x11,0x02, + 0x11,0xba,0xad,0x33,0x14,0xab,0x8c,0x81,0x13,0x10,0xab,0xba,0x34,0x33,0xcb,0xab,0x22,0x42,0x09,0x6a, + 0x77,0xe9,0x8d,0x31,0x84,0xa9,0x1a,0x11,0x81,0x02,0x9a,0x8d,0x21,0x04,0x9a,0x8c,0x00,0x03,0x10,0x8c, + 0xa9,0x03,0x14,0x0a,0xab,0x92,0x14,0x10,0xab,0x77,0xc5,0xaf,0x30,0x14,0x99,0x9b,0x11,0x03,0x01,0x99, + 0xbb,0x11,0x26,0x98,0xac,0x08,0x13,0x82,0xaa,0x9b,0x31,0x43,0xb8,0xcb,0x41,0x32,0xb9,0xd8,0x77,0x93, + 0xef,0x18,0x32,0x90,0x9c,0x10,0x12,0x18,0x99,0xa9,0x10,0x52,0x88,0xcb,0x08,0x41,0x00,0xb9,0x99,0x30, + 0x22,0xb0,0xc9,0x29,0x51,0x81,0xb9,0x77,0x94,0xcf,0x29,0x43,0xa0,0xab,0x20,0x22,0x08,0xa0,0xba,0x49, + 0x53,0xb0,0xd9,0x18,0x21,0x80,0xb8,0x99,0x48,0x21,0xc1,0xb8,0x19,0x68,0x02,0xd1,0x72,0x84,0xdf,0x08, + 0x24,0x98,0xaa,0x20,0x12,0x08,0x88,0xba,0x20,0x44,0x98,0xac,0x18,0x31,0x18,0xaa,0xba,0x30,0x25,0xb0, + 0xbb,0x38,0x61,0x80,0xc8,0x77,0x92,0xcf,0x18,0x33,0xa0,0xac,0x11,0x12,0x00,0x98,0xaa,0x28,0x35,0xb0, + 0xbc,0x10,0x23,0x90,0xaa,0x9b,0x30,0x16,0xa0,0x9c,0x18,0x05,0x81,0x1b,0x77,0xc2,0xbf,0x30,0x14,0xb8, + 0x8b,0x21,0x12,0x10,0x99,0x9d,0x30,0x15,0xa9,0xab,0x21,0x21,0x98,0xca,0x80,0x32,0x82,0xca,0x99,0x41, + 0x21,0xb8,0x78,0x77,0xfb,0x0a,0x42,0x81,0xba,0x18,0x21,0x01,0x81,0xbb,0x0c,0x35,0x81,0xac,0x1a,0x12, + 0x01,0x89,0xbb,0x08,0x35,0x81,0xad,0x88,0x04,0x11,0x1b,0x77,0xd2,0xae,0x20,0x14,0xa8,0x8b,0x11,0x12, + 0x10,0xa8,0xbc,0x51,0x23,0xca,0x9a,0x11,0x12,0x88,0xb9,0x8b,0x30,0x33,0xa1,0xe9,0x09,0x51,0x01,0x70, + 0x17,0xfc,0x0b,0x43,0xa2,0xaa,0x19,0x22,0x01,0x81,0xcb,0x2b,0x45,0x91,0xac,0x19,0x31,0x80,0xb8,0xb9, + 0x28,0x44,0xa1,0xcb,0x18,0x42,0x80,0x49,0x57,0xf9,0x8c,0x31,0x83,0xba,0x1a,0x03,0x02,0x21,0xca,0x9c, + 0x53,0x02,0xcb,0x09,0x11,0x00,0x80,0xc9,0x0a,0x62,0x00,0xba,0x19,0x22,0x00,0x19,0x77,0xd3,0xaf,0x20, + 0x14,0x99,0x8b,0x01,0x12,0x30,0xa9,0xad,0x41,0x23,0xca,0x9a,0x11,0x20,0x80,0xc9,0x0b,0x68,0x02,0xb9, + 0x8a,0x21,0x12,0x91,0x77,0xa4,0xde,0x08,0x43,0x98,0x9a,0x00,0x11,0x21,0x90,0xdb,0x28,0x34,0xa8,0xab, + 0x08,0x21,0x01,0xb1,0x9f,0x3a,0x33,0xb0,0xbb,0x4a,0x21,0x93,0x74,0x17,0xed,0x0a,0x42,0x91,0xa9,0x08, + 0x10,0x12,0x93,0xca,0x1b,0x34,0x93,0xca,0x0a,0x28,0x21,0xa1,0xdb,0x0a,0x22,0x83,0xc9,0x8b,0x10,0x06, + 0x70,0x27,0xfa,0x8c,0x31,0x02,0xaa,0x0a,0x10,0x22,0x13,0xca,0x9c,0x42,0x13,0x9a,0x9c,0x00,0x31,0x00, + 0xe9,0xa9,0x40,0x11,0xb8,0xa9,0x39,0x68,0x78,0x07,0xe9,0x0c,0x30,0x83,0xb9,0x1a,0x18,0x12,0x04,0xa9, + 0x8d,0x31,0x14,0x9a,0x9b,0x00,0x22,0x02,0xda,0xab,0x31,0x33,0xbb,0xbc,0x01,0x61,0x79,0x27,0xfa,0x0c, + 0x30,0x82,0x99,0x0a,0x08,0x03,0x15,0x9a,0x8d,0x22,0x12,0x8a,0xaa,0x80,0x41,0x30,0xea,0x99,0x20,0x21, + 0xa9,0xa9,0x1b,0x58,0x71,0x37,0xfb,0x0d,0x21,0x92,0xa8,0x09,0x88,0x22,0x24,0xba,0x9c,0x23,0x23,0x0a, + 0xc9,0xc0,0x41,0x30,0xc9,0xc8,0x20,0x28,0x88,0xb0,0x1c,0x0a,0x73,0x17,0xeb,0x1b,0x21,0x92,0x08,0x8a, + 0xba,0x34,0x24,0xab,0xa9,0x04,0x30,0x20,0xd0,0x99,0x69,0x10,0xa0,0x98,0x0a,0x28,0x11,0xaa,0x9c,0x08, + 0x79,0x17,0xdd,0x28,0x00,0x90,0x82,0xba,0x39,0x24,0x90,0x09,0x80,0x01,0x16,0xa8,0x08,0x30,0x4a,0x19, + 0xa9,0xb8,0x96,0x00,0x1c,0x9a,0x98,0x01,0x7f,0xc7,0x99,0x11,0x1a,0x80,0xb0,0x29,0x23,0xa8,0x11,0x2a, + 0x93,0xa7,0x92,0x69,0x2a,0x88,0x91,0x2a,0x88,0xb2,0x89,0xe0,0x25,0x8f,0x32,0x8f,0x2a,0xc2,0xa5,0x18, + 0x39,0x8f,0x84,0xa0,0x10,0xa0,0x01,0x41,0x2d,0x09,0xc2,0x90,0x82,0xf3,0x88,0x31,0x9c,0x32,0xba,0xa1, + 0x83,0x88,0xa7,0x3c,0x22,0x1f,0xc5,0x91,0x21,0x1e,0x90,0xb2,0x11,0x2b,0xc0,0x81,0x97,0x5a,0x1a,0xb8, + 0xa3,0x94,0x1b,0x83,0x0b,0x18,0x98,0x30,0xf5,0x28,0x91,0x7b,0xa8,0xd3,0x93,0x10,0x2e,0x88,0xb1,0x13, + 0x1e,0x01,0xe1,0x21,0x89,0x3a,0xc0,0x48,0xc0,0x80,0x94,0x90,0x21,0x0d,0x10,0x91,0x0a,0xb2,0x39,0x08, + 0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x88,0x00,0x88,0x00,0x08,0x08,0x08,0x08,0x88,0x80,0x80, + 0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; +static constexpr VoiceClip gpsOffClip = { + gpsOffData, sizeof(gpsOffData), 9237, 8000 +}; +}} // namespace mesh::audio diff --git a/src/helpers/ui/buzzer.cpp b/src/helpers/ui/buzzer.cpp index 2a714be79..5d02b979c 100644 --- a/src/helpers/ui/buzzer.cpp +++ b/src/helpers/ui/buzzer.cpp @@ -1,6 +1,51 @@ #include "Arduino.h" #ifdef PIN_BUZZER #include "buzzer.h" +#if MESH_GPS_VOICE +#if defined(MESH_GPS_VOICE_G726_BITRATE) +// Board source filters already compile this player entry point. Keep the +// experimental decoder out of ordinary images and avoid changing every +// board's filter just for the hardware comparison. +#include "g726/g726_decoder.c" +#include "G726VoiceData.h" +#else +#include "ButtonVoiceData.h" +#include "GpsVoiceData.h" +#endif +#include "nrf52/GpsVoicePlayer.h" +static mesh::audio::GpsVoicePlayer gps_voice; +extern "C" void PWM3_IRQHandler() { gps_voice.interrupt(); } + +static mesh::audio::VoiceClip buttonVoiceClip(ButtonVoicePrompt prompt) { + using namespace mesh::audio; + switch (prompt) { + case ButtonVoicePrompt::Ready: return readyClip; + case ButtonVoicePrompt::NotificationCleared: return notificationClearedClip; + case ButtonVoicePrompt::AdvertQueued: return advertQueuedClip; + case ButtonVoicePrompt::AdvertFailed: return advertFailedClip; + case ButtonVoicePrompt::SoundOn: return soundOnClip; + case ButtonVoicePrompt::SoundOff: return soundOffClip; + case ButtonVoicePrompt::GpsOn: return gpsOnClip; + case ButtonVoicePrompt::GpsOff: return gpsOffClip; + case ButtonVoicePrompt::ActionFailed: return actionFailedClip; + case ButtonVoicePrompt::UsbSetup: return usbSetupClip; + case ButtonVoicePrompt::ShuttingDown: return shuttingDownClip; + case ButtonVoicePrompt::Restarting: return restartingClip; +#ifdef HAS_DRV2605 + case ButtonVoicePrompt::AlertsSoundVibration: return alertsSoundVibrationClip; + case ButtonVoicePrompt::AlertsSoundOnly: return alertsSoundOnlyClip; + case ButtonVoicePrompt::AlertsVibrationOnly: return alertsVibrationOnlyClip; + case ButtonVoicePrompt::AlertsSilent: return alertsSilentClip; +#else + case ButtonVoicePrompt::AlertsSoundVibration: + case ButtonVoicePrompt::AlertsSoundOnly: + case ButtonVoicePrompt::AlertsVibrationOnly: + case ButtonVoicePrompt::AlertsSilent: return {}; +#endif + } + return {}; +} +#endif void genericBuzzer::begin() { // Serial.print("DBG: Setting up buzzer on pin "); @@ -16,9 +61,14 @@ void genericBuzzer::begin() { } void genericBuzzer::play(const char *melody) { +#if MESH_GPS_VOICE + // A muted ordinary alert must not cancel the one courtesy confirmation + // that may still be queued or playing while the preference is quiet. + if (_is_quiet) return; +#endif if (isPlaying()) // interrupt existing { - rtttl::stop(); + stop(); } if (_is_quiet) return; @@ -36,19 +86,149 @@ void genericBuzzer::playNotification(const char* melody) { rtttl::begin(PIN_BUZZER, melody); } +void genericBuzzer::stopNotification() { +#if MESH_GPS_VOICE + // Notification timers own their tones, not user-requested confirmations. + // Preserve a pending direction tone, speech gap, or active voice clip. + if (_voice_pending || gps_voice.active()) return; +#endif + stop(); +} + +bool genericBuzzer::speakGps(bool enabled) { + return speakButton(enabled ? ButtonVoicePrompt::GpsOn : ButtonVoicePrompt::GpsOff); +} + +bool genericBuzzer::speakButton(ButtonVoicePrompt prompt, bool allowQuiet) { + const char* melody = nullptr; + switch (prompt) { + case ButtonVoicePrompt::GpsOn: + melody = startup_song; + break; + case ButtonVoicePrompt::GpsOff: + case ButtonVoicePrompt::ShuttingDown: + case ButtonVoicePrompt::Restarting: + melody = shutdown_song; + break; + case ButtonVoicePrompt::Ready: + case ButtonVoicePrompt::NotificationCleared: + case ButtonVoicePrompt::AdvertQueued: + case ButtonVoicePrompt::AdvertFailed: + case ButtonVoicePrompt::SoundOn: + case ButtonVoicePrompt::SoundOff: + case ButtonVoicePrompt::ActionFailed: + case ButtonVoicePrompt::UsbSetup: + case ButtonVoicePrompt::AlertsSoundVibration: + case ButtonVoicePrompt::AlertsSoundOnly: + case ButtonVoicePrompt::AlertsVibrationOnly: + case ButtonVoicePrompt::AlertsSilent: +#if MESH_GPS_VOICE && !defined(HAS_DRV2605) + // Reject unavailable modes before cancelling any valid audio. + if (prompt >= ButtonVoicePrompt::AlertsSoundVibration) return false; +#endif + break; + default: + return false; + } + stop(); + if (_is_quiet && !allowQuiet) return true; +#if !MESH_GPS_VOICE + // The UI retains its legacy acknowledgements on untested boards. New + // voice-only prompts must not introduce tones there (including Ready). + if (!melody) return true; +#endif +#ifdef PIN_BUZZER_EN + digitalWrite(PIN_BUZZER_EN, HIGH); +#endif +#if MESH_GPS_VOICE + _voice_prompt = prompt; + _voice_pending = true; + _voice_allow_quiet = allowQuiet; + _voice_gap_started = false; +#endif + // Preserve the recognisable rising/falling control tone even where voice + // playback is disabled. Optional tones release their PWM before speech. + if (melody) rtttl::begin(PIN_BUZZER, melody); + return true; +} + +#ifdef MESH_BUTTON_AUDIO_HIL +void genericBuzzer::voiceStatus(char* reply, size_t size) { +#if MESH_GPS_VOICE + snprintf(reply, size, "voice playing=%u started=%lu completed=%lu cancelled=%lu samples=%lu quiet=%u gain=%u pending=%u tone=%u", + gps_voice.playing(), (unsigned long)gps_voice.started(), + (unsigned long)gps_voice.completed(), (unsigned long)gps_voice.cancelled(), + (unsigned long)gps_voice.played(), _is_quiet, gps_voice.gain(), + _voice_pending, rtttl::isPlaying()); +#else + snprintf(reply, size, "voice unsupported"); +#endif +} +bool genericBuzzer::voiceGain(uint8_t gain) { +#if MESH_GPS_VOICE + return !_voice_pending && gps_voice.setGain(gain); +#else + (void)gain; + return false; +#endif +} +#endif + void genericBuzzer::stop() { rtttl::stop(); +#if MESH_GPS_VOICE + _voice_pending = false; + _voice_allow_quiet = false; + _voice_gap_started = false; + gps_voice.stop(); +#endif #ifdef PIN_BUZZER_EN if (_is_quiet) digitalWrite(PIN_BUZZER_EN, LOW); #endif } bool genericBuzzer::isPlaying() { +#if MESH_GPS_VOICE + if (_voice_pending || gps_voice.active()) return true; +#endif return rtttl::isPlaying(); } void genericBuzzer::loop() { - if (!rtttl::done()) rtttl::play(); +#if MESH_GPS_VOICE + gps_voice.service(); + if (gps_voice.playing()) return; + if (_voice_pending) { + if (!rtttl::done()) { + rtttl::play(); + return; + } + if (!_voice_gap_started) { + rtttl::stop(); + _voice_gap_ms = millis(); + _voice_gap_started = true; + } + if (static_cast(millis() - _voice_gap_ms) < 100) return; + _voice_pending = false; + _voice_gap_started = false; + if (!_is_quiet || _voice_allow_quiet) + gps_voice.start(buttonVoiceClip(_voice_prompt)); + _voice_allow_quiet = false; + if (gps_voice.playing()) return; + } +#endif + if (!rtttl::done()) { + rtttl::play(); + return; + } + // Courtesy mute/unmute speech can temporarily power the driver while the + // preference stays quiet. Return both pins to their low-power state. + if (_is_quiet) { + digitalWrite(PIN_BUZZER, LOW); +#ifdef PIN_BUZZER_EN + digitalWrite(PIN_BUZZER_EN, LOW); +#endif + } } void genericBuzzer::startup() { @@ -60,6 +240,7 @@ void genericBuzzer::shutdown() { } void genericBuzzer::quiet(bool buzzer_state) { + if (buzzer_state) stop(); _is_quiet = buzzer_state; #ifdef PIN_BUZZER_EN if (_is_quiet) { diff --git a/src/helpers/ui/buzzer.h b/src/helpers/ui/buzzer.h index be701d2ac..4d79916bf 100644 --- a/src/helpers/ui/buzzer.h +++ b/src/helpers/ui/buzzer.h @@ -2,6 +2,29 @@ #include #include +#include "ButtonVoice.h" + +// Screenless Full Companions share spoken button confirmations. Keep an +// explicit board list: a configured buzzer on a screened board is not an +// opt-in, and the Wio joystick/display profiles retain their existing tones. +// ThinkNode M4 is excluded until its buzzer wiring is verified: its current +// PIN_BUZZER/PIN_BUZZER_EN overlap I2C SDA and a battery-status LED. +// R1 Neo has no flash fitted; its dummy QSPI SCK aliases the buzzer, so a +// profile which opts into QSPIFLASH must not also default to spoken audio. +// Retain the existing prerecorded clips; intelligibility still needs physical +// qualification on each board. MESH_GPS_VOICE=0 is an explicit opt-out. +#ifndef MESH_GPS_VOICE +#if defined(NRF52_PLATFORM) && defined(PIN_BUZZER) \ + && defined(COMPANION_RADIO_FULL) && COMPANION_RADIO_FULL \ + && (defined(T1000_E) || defined(RAK_WISMESH_TAG) \ + || defined(MESH_TRACKER_X1) \ + || (defined(R1Neo) && !defined(QSPIFLASH)) \ + || defined(THINKNODE_M3)) + #define MESH_GPS_VOICE 1 +#else + #define MESH_GPS_VOICE 0 +#endif +#endif /* class abstracts underlying RTTTL library @@ -22,6 +45,13 @@ class genericBuzzer void begin(); // set up buzzer port void play(const char *melody); // Generic play function void playNotification(const char* melody); + void stopNotification(); // background alert cancellation must not cut off control speech + bool speakGps(bool enabled); // direction tones, then optional spoken confirmation + bool speakButton(ButtonVoicePrompt prompt, bool allowQuiet = false); +#ifdef MESH_BUTTON_AUDIO_HIL + void voiceStatus(char* reply, size_t size); + bool voiceGain(uint8_t gain); +#endif void stop(); void loop(); // loop driven-nonblocking void startup(); // play startup sound @@ -36,4 +66,11 @@ class genericBuzzer const char *shutdown_song = "Shutdown:d=4,o=5,b=100:8g5,16e5,16c5"; bool _is_quiet = true; +#if MESH_GPS_VOICE + bool _voice_pending = false; + ButtonVoicePrompt _voice_prompt = ButtonVoicePrompt::Ready; + bool _voice_allow_quiet = false; + bool _voice_gap_started = false; + uint32_t _voice_gap_ms = 0; +#endif }; diff --git a/src/helpers/ui/g726/COPYING.LGPLv2.1 b/src/helpers/ui/g726/COPYING.LGPLv2.1 new file mode 100644 index 000000000..58af0d378 --- /dev/null +++ b/src/helpers/ui/g726/COPYING.LGPLv2.1 @@ -0,0 +1,502 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! diff --git a/src/helpers/ui/g726/g726_decoder.c b/src/helpers/ui/g726/g726_decoder.c new file mode 100644 index 000000000..1853e10c5 --- /dev/null +++ b/src/helpers/ui/g726/g726_decoder.c @@ -0,0 +1,249 @@ +/* + * This source code is a product of Sun Microsystems, Inc. and is provided + * for unrestricted use. Users may copy or modify this source code without + * charge. + * + * SUN SOURCE CODE IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING + * THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR + * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. + * + * Sun source code is provided with no support and without any obligation on + * the part of Sun Microsystems, Inc. to assist in its use, correction, + * modification or enhancement. + * + * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE + * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY THIS SOFTWARE + * OR ANY PART THEREOF. + * + * In no event will Sun Microsystems, Inc. be liable for any lost revenue + * or profits or other special, indirect and consequential damages, even if + * Sun has been advised of the possibility of such damages. + * + * Sun Microsystems, Inc. + * 2550 Garcia Avenue + * Mountain View, California 94043 + */ +/* Decoder-only adaptation for MeshCore experiments, 2026. + * Common code and G.723-24 tables: Sun source at codec-g7xx commit + * 2ebdfe0c76670c6f887542fd4c291afbab988cdc, src/g72x.c and src/g723_24.c. + * G.726-16 tables: Marc Randolph's 16 kbps adaptation, libsndfile commit + * b9103bd48b6c8fb517ae737fe3baee0c718b804c, src/G72x/g723_16.c. + * Encoder, A-law/u-law conversion and heap/block interfaces are removed. + * Sun fmult rounding (+0x30) is preserved. Negative left shifts are replaced + * by multiplication. State widths are fixed, rather than native long/short. + */ +/* MIX interpolation adapted from FFmpeg n7.1 libavcodec/g726.c. + * Copyright (c) 2004 Roman Shaposhnik. + * The MIX adaptation is under GNU LGPL version 2.1 or (at your option) later. + * This combined experimental source is distributed under that LGPL license; + * the original Sun unrestricted-use notice is retained above. + * See COPYING.LGPLv2.1 next to this source. No production codec change is made. + * Corrected fractional MIX matches FFmpeg sample-for-sample; this does not + * constitute independent ITU conformance qualification. + */ +#include "g726_decoder.h" + +#if defined(MESH_G726_DECODER_TEST) || \ + (defined(MESH_BUTTON_AUDIO_HIL) && defined(MESH_GPS_VOICE_G726_BITRATE)) + +static const int16_t power2[15] = { + 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384 +}; +#if !defined(MESH_GPS_VOICE_G726_BITRATE) || MESH_GPS_VOICE_G726_BITRATE == 16 +static const int16_t dqln16[4] = {116, 365, 365, 116}; +static const int16_t wi16[4] = {-704, 14048, 14048, -704}; +static const int16_t fi16[4] = {0, 0xe00, 0xe00, 0}; +#endif +#if !defined(MESH_GPS_VOICE_G726_BITRATE) || MESH_GPS_VOICE_G726_BITRATE == 24 +static const int16_t dqln24[8] = {-2048, 135, 273, 373, 373, 273, 135, -2048}; +static const int16_t wi24[8] = {-128, 960, 4384, 18624, 18624, 4384, 960, -128}; +static const int16_t fi24[8] = {0, 0x200, 0x400, 0xe00, 0xe00, 0x400, 0x200, 0}; +#endif + +static int quan(int value) +{ + int i; + for (i = 0; i < 15; ++i) + if (value < power2[i]) break; + return i; +} + +static int fmult(int an, int srn) +{ + int16_t anmag = (int16_t)(an > 0 ? an : ((-an) & 0x1fff)); + int16_t anexp = (int16_t)(quan(anmag) - 6); + int16_t anmant = (int16_t)(anmag == 0 ? 32 : anexp >= 0 + ? anmag >> anexp : anmag * (1 << -anexp)); + int16_t wanexp = (int16_t)(anexp + ((srn >> 6) & 15) - 13); + int16_t wanmant = (int16_t)((anmant * (srn & 63) + 0x30) >> 4); + int16_t retval = (int16_t)(wanexp >= 0 + ? (wanmant * (1 << wanexp)) & 0x7fff + : wanmant >> -wanexp); + return (an ^ srn) < 0 ? -retval : retval; +} + +void g726_init(G726State *s) +{ + unsigned i; + s->yl = 34816; + s->yu = 544; + s->dms = s->dml = s->ap = 0; + for (i = 0; i < 2; ++i) { + s->a[i] = s->pk[i] = 0; + s->sr[i] = 32; + } + for (i = 0; i < 6; ++i) { + s->b[i] = 0; + s->dq[i] = 32; + } + s->td = 0; +} + +static int predictor_zero(const G726State *s) +{ + int i, sezi = fmult(s->b[0] >> 2, s->dq[0]); + for (i = 1; i < 6; ++i) sezi += fmult(s->b[i] >> 2, s->dq[i]); + return sezi; +} + +static int predictor_pole(const G726State *s) +{ + return fmult(s->a[1] >> 2, s->sr[1]) + fmult(s->a[0] >> 2, s->sr[0]); +} + +static int step_size(const G726State *s) +{ + if (s->ap >= 256) return s->yu; + /* Retain fractional yl before the final shift, rather than truncating it + * first and applying the Sun reference's negative-difference rounding. */ + return (s->yl + (s->yu - (s->yl >> 6)) * (s->ap >> 2)) >> 6; +} + +static int reconstruct(int sign, int dqln, int y) +{ + int16_t dql = (int16_t)(dqln + (y >> 2)); + int16_t dex, dqt, dq; + if (dql < 0) return sign ? -32768 : 0; + dex = (dql >> 7) & 15; + dqt = 128 + (dql & 127); + dq = (int16_t)((dqt * 128) >> (14 - dex)); + return sign ? dq - 32768 : dq; +} + +static int magnitude(int value) { return value < 0 ? -value : value; } + +static void update(int y, int wi, int fi, int dq, int sr, int dqsez, G726State *s) +{ + int cnt; + int16_t mag, exp, a2p = 0, a1ul, pks1, fa1; + int16_t ylint, ylfrac, thr1, thr2, dqthr, pk0; + int8_t tr; + pk0 = dqsez < 0 ? 1 : 0; + mag = dq & 0x7fff; + ylint = (int16_t)(s->yl >> 15); + ylfrac = (s->yl >> 10) & 31; + thr1 = (int16_t)((32 + ylfrac) * (1 << ylint)); + thr2 = ylint > 9 ? 31 * 1024 : thr1; + dqthr = (thr2 + (thr2 >> 1)) >> 1; + tr = s->td != 0 && mag > dqthr; + + s->yu = (int16_t)(y + ((wi - y) >> 5)); + if (s->yu < 544) s->yu = 544; + else if (s->yu > 5120) s->yu = 5120; + s->yl += s->yu + ((-s->yl) >> 6); + + if (tr) { + s->a[0] = s->a[1] = 0; + for (cnt = 0; cnt < 6; ++cnt) s->b[cnt] = 0; + } else { + pks1 = pk0 ^ s->pk[0]; + a2p = (int16_t)(s->a[1] - (s->a[1] >> 7)); + if (dqsez != 0) { + fa1 = pks1 ? s->a[0] : (int16_t)-s->a[0]; + if (fa1 < -8191) a2p -= 256; + else if (fa1 > 8191) a2p += 255; + else a2p += fa1 >> 5; + if (pk0 ^ s->pk[1]) { + if (a2p <= -12160) a2p = -12288; + else if (a2p >= 12416) a2p = 12288; + else a2p -= 128; + } else { + if (a2p <= -12416) a2p = -12288; + else if (a2p >= 12160) a2p = 12288; + else a2p += 128; + } + } + s->a[1] = a2p; + s->a[0] -= s->a[0] >> 8; + if (dqsez != 0) s->a[0] += pks1 == 0 ? 192 : -192; + a1ul = 15360 - a2p; + if (s->a[0] < -a1ul) s->a[0] = (int16_t)-a1ul; + else if (s->a[0] > a1ul) s->a[0] = a1ul; + for (cnt = 0; cnt < 6; ++cnt) { + s->b[cnt] -= s->b[cnt] >> 8; + if (dq & 0x7fff) s->b[cnt] += (dq ^ s->dq[cnt]) >= 0 ? 128 : -128; + } + } + for (cnt = 5; cnt > 0; --cnt) s->dq[cnt] = s->dq[cnt - 1]; + if (mag == 0) s->dq[0] = dq >= 0 ? 32 : -992; + else { + exp = (int16_t)quan(mag); + s->dq[0] = (int16_t)(exp * 64 + ((mag * 64) >> exp) - (dq >= 0 ? 0 : 1024)); + } + s->sr[1] = s->sr[0]; + if (sr == 0) s->sr[0] = 32; + else if (sr > 0) { + exp = (int16_t)quan(sr); + s->sr[0] = (int16_t)(exp * 64 + ((sr * 64) >> exp)); + } else if (sr > -32768) { + mag = (int16_t)-sr; + exp = (int16_t)quan(mag); + s->sr[0] = (int16_t)(exp * 64 + ((mag * 64) >> exp) - 1024); + } else s->sr[0] = -992; + s->pk[1] = s->pk[0]; + s->pk[0] = pk0; + s->td = !tr && a2p < -11776; + s->dms += (fi - s->dms) >> 5; + s->dml += (fi * 4 - s->dml) >> 7; + if (tr) s->ap = 256; + else if (y < 1536 || s->td == 1 || magnitude(s->dms * 4 - s->dml) >= (s->dml >> 3)) + s->ap += (512 - s->ap) >> 4; + else s->ap += (-s->ap) >> 4; +} + +int16_t g726_decode(G726State *s, uint8_t code, uint8_t bits) +{ + int16_t sezi, sei, sez, se, y, sr, dq, dqsez; + const int16_t *dqln, *wi, *fi; + int sign; + if (bits == 2) { +#if !defined(MESH_GPS_VOICE_G726_BITRATE) || MESH_GPS_VOICE_G726_BITRATE == 16 + code &= 3; + sign = code & 2; + dqln = dqln16; wi = wi16; fi = fi16; +#else + return 0; +#endif + } else if (bits == 3) { +#if !defined(MESH_GPS_VOICE_G726_BITRATE) || MESH_GPS_VOICE_G726_BITRATE == 24 + code &= 7; + sign = code & 4; + dqln = dqln24; wi = wi24; fi = fi24; +#else + return 0; +#endif + } else return 0; + sezi = (int16_t)predictor_zero(s); + sez = sezi >> 1; + sei = (int16_t)(sezi + predictor_pole(s)); + se = sei >> 1; + y = (int16_t)step_size(s); + dq = (int16_t)reconstruct(sign, dqln[code], y); + sr = (int16_t)(dq < 0 ? se - (dq & 0x3fff) : se + dq); + dqsez = (int16_t)(sr - se + sez); + update(y, wi[code], fi[code], dq, sr, dqsez, s); + return (int16_t)(sr * 4); +} + + +#endif /* experimental decoder only */ diff --git a/src/helpers/ui/g726/g726_decoder.h b/src/helpers/ui/g726/g726_decoder.h new file mode 100644 index 000000000..f189cb386 --- /dev/null +++ b/src/helpers/ui/g726/g726_decoder.h @@ -0,0 +1,27 @@ +#ifndef MESH_G726_EXPERIMENTAL_DECODER_H +#define MESH_G726_EXPERIMENTAL_DECODER_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* Experimental Sun G.72x decoder with LGPL FFmpeg MIX interpolation. + * See g726_decoder.c and COPYING.LGPLv2.1 for attribution and license. + * All fields have explicit MCU-width types; state and code require no heap. */ +typedef struct { + int32_t yl; + int16_t yu, dms, dml, ap; + int16_t a[2], b[6], pk[2], dq[6], sr[2]; + int8_t td; +} G726State; + +void g726_init(G726State *state); +/* bits=2 for G.726-16; bits=3 for G.726-24. No packing or allocation here. */ +int16_t g726_decode(G726State *state, uint8_t code, uint8_t bits); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/src/helpers/ui/nrf52/GpsVoicePlayer.h b/src/helpers/ui/nrf52/GpsVoicePlayer.h new file mode 100644 index 000000000..cea965764 --- /dev/null +++ b/src/helpers/ui/nrf52/GpsVoicePlayer.h @@ -0,0 +1,174 @@ +#pragma once + +#include +#include +#include + +namespace mesh { namespace audio { + +class GpsVoicePlayer { + static constexpr uint32_t OWNER = 0x63696f56; // Voic + static constexpr size_t BLOCK = 128; +#if defined(MESH_BUTTON_AUDIO_HIL) && ((defined(MESH_GPS_VOICE_BINARY_DRIVE) && MESH_GPS_VOICE_BINARY_DRIVE) || (defined(MESH_GPS_VOICE_PDM_DRIVE) && MESH_GPS_VOICE_PDM_DRIVE) || (defined(MESH_GPS_VOICE_PCM32_DRIVE) && !MESH_GPS_VOICE_PCM32_DRIVE)) + static constexpr uint16_t TOP = 250; // 64 kHz carrier +#else + static constexpr uint16_t TOP = 500; // tested 32 kHz carrier and output +#endif + VoiceDecoder decoder_; + VoiceInterpolator interpolator_; + alignas(4) uint16_t buffers_[2][BLOCK] = {}; + uint16_t lengths_[2] = {}; + bool last_[2] = {}; + bool owned_ = false; + volatile bool playing_ = false; + volatile uint32_t played_ = 0; + volatile uint32_t completed_ = 0; + uint32_t started_ = 0; + uint32_t cancelled_ = 0; + uint8_t gain_ = 8; // acoustically selected drive for the T1000-E buzzer +#if defined(MESH_BUTTON_AUDIO_HIL) && defined(MESH_GPS_VOICE_BINARY_DRIVE) && MESH_GPS_VOICE_BINARY_DRIVE + // Acoustic experiment: full GPIO-level drive with a small hysteresis band. + // Unlike carrier PWM, silence holds a constant level instead of chattering. + bool binary_level_ = false; +#endif +#if defined(MESH_BUTTON_AUDIO_HIL) && defined(MESH_GPS_VOICE_PDM_DRIVE) && MESH_GPS_VOICE_PDM_DRIVE + int32_t density_error_ = 0; + int32_t held_pcm_ = 0; + bool density_repeat_ = false; +#endif + + void fill(unsigned n) { + const uint32_t before = decoder_.position(); + for (size_t i = 0; i < BLOCK; ++i) { +#if defined(MESH_BUTTON_AUDIO_HIL) && defined(MESH_GPS_VOICE_PDM_DRIVE) && MESH_GPS_VOICE_PDM_DRIVE + // Twice the reconstruction rate: full-width pulses instead of narrow + // duty-cycle pulses. Error feedback moves quantization noise upwards. + if (!density_repeat_) held_pcm_ = interpolator_.next(decoder_) * gain_; + density_repeat_ = !density_repeat_; + int32_t pcm = held_pcm_; +#else + int32_t pcm = interpolator_.next(decoder_) * gain_; +#endif + if (pcm > 32767) pcm = 32767; + if (pcm < -32768) pcm = -32768; +#if defined(MESH_BUTTON_AUDIO_HIL) && defined(MESH_GPS_VOICE_PDM_DRIVE) && MESH_GPS_VOICE_PDM_DRIVE + density_error_ += pcm; + const bool high = density_error_ >= 0; + density_error_ -= high ? 32767 : -32768; + buffers_[n][i] = 0x8000 | (high ? TOP : 0); +#elif defined(MESH_BUTTON_AUDIO_HIL) && defined(MESH_GPS_VOICE_BINARY_DRIVE) && MESH_GPS_VOICE_BINARY_DRIVE + if (pcm > 1024) binary_level_ = true; + else if (pcm < -1024) binary_level_ = false; + buffers_[n][i] = 0x8000 | (binary_level_ ? TOP : 0); +#else + buffers_[n][i] = 0x8000 | ((pcm + 32768) * TOP / 65536); +#endif + } + lengths_[n] = decoder_.position() - before; + last_[n] = decoder_.done(); + } + void finishFromInterrupt() { + NRF_PWM3->INTENCLR = 0xffffffff; + NRF_PWM3->SHORTS = 0; + NRF_PWM3->ENABLE = 0; + digitalWrite(PIN_BUZZER, LOW); + playing_ = false; + ++completed_; + } +public: + bool start(VoiceClip clip) { + stop(); +#if defined(MESH_GPS_VOICE_G726_BITRATE) + if (!clip.valid() || !HwPWM3.takeOwnership(OWNER)) return false; +#else + if (!clip.data || !clip.samples || clip.samples > clip.bytes * 2 + || (clip.sample_rate != 8000 && clip.sample_rate != 16000) + || !HwPWM3.takeOwnership(OWNER)) return false; +#endif + owned_ = true; + if (!HwPWM3.addPin(PIN_BUZZER)) { stop(); return false; } + decoder_.begin(clip); + interpolator_.begin(clip.sample_rate); +#if defined(MESH_BUTTON_AUDIO_HIL) && defined(MESH_GPS_VOICE_BINARY_DRIVE) && MESH_GPS_VOICE_BINARY_DRIVE + binary_level_ = false; +#endif +#if defined(MESH_BUTTON_AUDIO_HIL) && defined(MESH_GPS_VOICE_PDM_DRIVE) && MESH_GPS_VOICE_PDM_DRIVE + density_error_ = held_pcm_ = 0; + density_repeat_ = false; +#endif + fill(0); + fill(1); + played_ = 0; + NRF_PWM3->ENABLE = 0; + NRF_PWM3->MODE = PWM_MODE_UPDOWN_Up; + NRF_PWM3->COUNTERTOP = TOP; + NRF_PWM3->PRESCALER = PWM_PRESCALER_PRESCALER_DIV_1; + NRF_PWM3->DECODER = PWM_DECODER_LOAD_Common; + NRF_PWM3->LOOP = 1; + NRF_PWM3->SHORTS = PWM_SHORTS_LOOPSDONE_SEQSTART0_Msk; + for (unsigned i = 0; i < 2; ++i) { + NRF_PWM3->SEQ[i].PTR = reinterpret_cast(buffers_[i]); + NRF_PWM3->SEQ[i].CNT = BLOCK; +#if defined(MESH_BUTTON_AUDIO_HIL) && !(defined(MESH_GPS_VOICE_PDM_DRIVE) && MESH_GPS_VOICE_PDM_DRIVE) && ((defined(MESH_GPS_VOICE_BINARY_DRIVE) && MESH_GPS_VOICE_BINARY_DRIVE) || (defined(MESH_GPS_VOICE_PCM32_DRIVE) && !MESH_GPS_VOICE_PCM32_DRIVE)) + NRF_PWM3->SEQ[i].REFRESH = 1; +#else + NRF_PWM3->SEQ[i].REFRESH = 0; +#endif + NRF_PWM3->SEQ[i].ENDDELAY = 0; + NRF_PWM3->EVENTS_SEQEND[i] = 0; + NRF_PWM3->EVENTS_SEQSTARTED[i] = 0; + } + NRF_PWM3->EVENTS_STOPPED = 0; + NRF_PWM3->EVENTS_LOOPSDONE = 0; + NVIC_ClearPendingIRQ(PWM3_IRQn); + NVIC_SetPriority(PWM3_IRQn, 7); // below SoftDevice/radio interrupts + NRF_PWM3->INTENSET = PWM_INTENSET_SEQEND0_Msk | PWM_INTENSET_SEQEND1_Msk; + playing_ = true; + ++started_; + NRF_PWM3->ENABLE = 1; + NVIC_EnableIRQ(PWM3_IRQn); + NRF_PWM3->TASKS_SEQSTART[0] = 1; + return true; + } + void interrupt() { + for (unsigned i = 0; i < 2; ++i) { + if (!NRF_PWM3->EVENTS_SEQEND[i]) continue; + NRF_PWM3->EVENTS_SEQEND[i] = 0; + if (!playing_) continue; + played_ += lengths_[i]; + if (last_[i]) { finishFromInterrupt(); break; } + fill(i); // refill the inactive buffer; no allocation or blocking in IRQ + } + } + void service() { if (owned_ && !playing_) stop(); } + void stop() { + if (!owned_) return; + NVIC_DisableIRQ(PWM3_IRQn); + NRF_PWM3->INTENCLR = 0xffffffff; + NRF_PWM3->SHORTS = 0; + NRF_PWM3->ENABLE = 0; + NVIC_ClearPendingIRQ(PWM3_IRQn); + if (playing_) ++cancelled_; + playing_ = false; + HwPWM3.removePin(PIN_BUZZER); + HwPWM3.releaseOwnership(OWNER); + digitalWrite(PIN_BUZZER, LOW); + owned_ = false; + } + bool playing() const { return playing_; } + bool active() const { return owned_; } // includes deferred IRQ-completion cleanup +#ifdef MESH_BUTTON_AUDIO_HIL + bool setGain(uint8_t gain) { + if (active() || gain < 1 || gain > 8) return false; + gain_ = gain; + return true; + } +#endif + uint8_t gain() const { return gain_; } + uint32_t played() const { return played_; } + uint32_t started() const { return started_; } + uint32_t completed() const { return completed_; } + uint32_t cancelled() const { return cancelled_; } +}; + +}} // namespace mesh::audio diff --git a/test/test_button_voice_actions.py b/test/test_button_voice_actions.py new file mode 100644 index 000000000..f4cecca7a --- /dev/null +++ b/test/test_button_voice_actions.py @@ -0,0 +1,854 @@ +"""Run production spoken-button mappings, courtesy audio, and UI transactions natively.""" +from pathlib import Path +import unittest + +import test_gps_voice_buttons as gps_tests +from test_radio_receive_contract import method + +ROOT = Path(__file__).resolve().parents[1] + +PROMPTS = r''' +#include +#include +#define PIN_BUZZER 25 +#define PIN_BUZZER_EN 37 +#define MESH_BUTTON_AUDIO_HIL 1 +#define HAS_DRV2605 1 +#define MESH_GPS_VOICE 1 +#include +uint32_t now_ms=0; +int main(){ + using namespace mesh::audio; + struct Mapping {ButtonVoicePrompt prompt;VoiceClip clip;const char* tone;}; + const Mapping mappings[]={ + {ButtonVoicePrompt::Ready,readyClip,nullptr}, + {ButtonVoicePrompt::NotificationCleared,notificationClearedClip,nullptr}, + {ButtonVoicePrompt::AdvertQueued,advertQueuedClip,nullptr}, + {ButtonVoicePrompt::AdvertFailed,advertFailedClip,nullptr}, + {ButtonVoicePrompt::SoundOn,soundOnClip,nullptr}, + {ButtonVoicePrompt::SoundOff,soundOffClip,nullptr}, + {ButtonVoicePrompt::GpsOn,gpsOnClip,"Startup:d=4,o=5,b=160:16c6,16e6,8g6"}, + {ButtonVoicePrompt::GpsOff,gpsOffClip,"Shutdown:d=4,o=5,b=100:8g5,16e5,16c5"}, + {ButtonVoicePrompt::ActionFailed,actionFailedClip,nullptr}, + {ButtonVoicePrompt::UsbSetup,usbSetupClip,nullptr}, + {ButtonVoicePrompt::ShuttingDown,shuttingDownClip,"Shutdown:d=4,o=5,b=100:8g5,16e5,16c5"}, + {ButtonVoicePrompt::Restarting,restartingClip,"Shutdown:d=4,o=5,b=100:8g5,16e5,16c5"}, +#ifdef HAS_DRV2605 + {ButtonVoicePrompt::AlertsSoundVibration,alertsSoundVibrationClip,nullptr}, + {ButtonVoicePrompt::AlertsSoundOnly,alertsSoundOnlyClip,nullptr}, + {ButtonVoicePrompt::AlertsVibrationOnly,alertsVibrationOnlyClip,nullptr}, + {ButtonVoicePrompt::AlertsSilent,alertsSilentClip,nullptr}, +#endif + }; + genericBuzzer buzzer;buzzer.begin(); + auto finish=[&]{ + assert(!registers.ENABLE); + rtttl::finish();buzzer.loop(); + now_ms+=99;buzzer.loop();assert(!registers.ENABLE); + ++now_ms;buzzer.loop(); + assert(HwPWM3.owned&&HwPWM3.pin&&HwPWM3.bound_pin==PIN_BUZZER); + unsigned sequence=0,events=0; + while(registers.ENABLE){ + assert(++events<2000); + registers.EVENTS_SEQEND[sequence]=1;PWM3_IRQHandler();sequence^=1; + } + buzzer.loop();assert(!buzzer.isPlaying()); + assert(!HwPWM3.owned&&!HwPWM3.pin&&!irq_enabled); + assert(pin_states[PIN_BUZZER]==LOW); + }; + for(const auto& entry:mappings){ + auto actual=buttonVoiceClip(entry.prompt); + assert(actual.data==entry.clip.data&&actual.bytes==entry.clip.bytes); + assert(actual.samples==entry.clip.samples&&actual.sample_rate==entry.clip.sample_rate); + assert(actual.data&&actual.bytes==(actual.samples+1)/2); + assert(actual.sample_rate==8000||actual.sample_rate==16000); + VoiceDecoder decoder;decoder.begin(actual); + unsigned count=0,nonzero=0; + while(!decoder.done()){nonzero+=decoder.next()!=0;++count;} + assert(count==actual.samples&&nonzero>count/2); + auto started=gps_voice.started(),completed=gps_voice.completed(),tones=rtttl::begins; + assert(buzzer.speakButton(entry.prompt)&&buzzer.isPlaying()); + if(entry.tone){assert(rtttl::melody==entry.tone&&rtttl::begins==tones+1);} + else {assert(rtttl::begins==tones&&!rtttl::isPlaying());} + finish(); + assert(gps_voice.started()==started+1&&gps_voice.completed()==completed+1); + } + // Invalid values must reject without preempting a valid tone or active voice. + const auto invalid=static_cast(255); + assert(!buttonVoiceClip(invalid).data); + assert(buzzer.speakGps(true)); + auto tones=rtttl::begins,started=gps_voice.started(); + assert(!buzzer.speakButton(invalid)); + assert(buzzer.isPlaying()&&rtttl::isPlaying()&&rtttl::begins==tones); +#ifndef HAS_DRV2605 + for(auto prompt:{ButtonVoicePrompt::AlertsSoundVibration,ButtonVoicePrompt::AlertsSoundOnly, + ButtonVoicePrompt::AlertsVibrationOnly,ButtonVoicePrompt::AlertsSilent}){ + assert(!buttonVoiceClip(prompt).data&&!buzzer.speakButton(prompt,true)); + assert(buzzer.isPlaying()&&rtttl::isPlaying()&&rtttl::begins==tones); + } +#endif + finish(); + assert(gps_voice.started()==started+1); + assert(buzzer.speakButton(ButtonVoicePrompt::Ready)); + buzzer.loop();now_ms+=100;buzzer.loop(); + assert(registers.ENABLE&&buzzer.isPlaying()); + started=gps_voice.started(); + assert(!buzzer.speakButton(invalid,true)); + assert(registers.ENABLE&&gps_voice.started()==started); +#ifndef HAS_DRV2605 + for(auto prompt:{ButtonVoicePrompt::AlertsSoundVibration,ButtonVoicePrompt::AlertsSoundOnly, + ButtonVoicePrompt::AlertsVibrationOnly,ButtonVoicePrompt::AlertsSilent}){ + assert(!buzzer.speakButton(prompt,true)); + assert(registers.ENABLE&&gps_voice.started()==started); + } +#endif + unsigned sequence=0,events=0; + while(registers.ENABLE){ + assert(++events<2000);registers.EVENTS_SEQEND[sequence]=1; + PWM3_IRQHandler();sequence^=1; + } + buzzer.loop();assert(!buzzer.isPlaying()); + // A busy PWM fails the deferred voice start, without leaking ownership. + HwPWM3.reject=true; + assert(buzzer.speakButton(ButtonVoicePrompt::Ready)); + buzzer.loop();now_ms+=100;buzzer.loop(); + assert(!buzzer.isPlaying()&&!registers.ENABLE&&!HwPWM3.owned&&!irq_enabled); +} +''' + +COURTESY = r''' +#include +#define PIN_BUZZER 25 +#define PIN_BUZZER_EN 37 +#define MESH_BUTTON_AUDIO_HIL 1 +#define MESH_GPS_VOICE 1 +#include +uint32_t now_ms=0; +int main(){ + genericBuzzer buzzer;buzzer.begin();buzzer.quiet(true); + assert(buzzer.isQuiet()&&pin_states[PIN_BUZZER_EN]==LOW); + auto before=gps_voice.started(); + assert(buzzer.speakButton(ButtonVoicePrompt::Ready)); + assert(!buzzer.isPlaying()&&gps_voice.started()==before); + assert(pin_states[PIN_BUZZER_EN]==LOW); + // The explicit sound-off confirmation is one-shot: it never unmutes alerts. + assert(buzzer.speakButton(ButtonVoicePrompt::SoundOff,true)); + assert(buzzer.isQuiet()&&buzzer.isPlaying()&&pin_states[PIN_BUZZER_EN]==HIGH); + buzzer.loop();now_ms+=100;buzzer.loop(); + assert(registers.ENABLE&&gps_voice.started()==before+1); + unsigned sequence=0,events=0; + while(registers.ENABLE){ + assert(++events<2000);registers.EVENTS_SEQEND[sequence]=1; + PWM3_IRQHandler();sequence^=1; + } + assert(buzzer.isPlaying()); // IRQ cleanup is deferred to the foreground. + buzzer.loop(); + assert(buzzer.isQuiet()&&!buzzer.isPlaying()&&pin_states[PIN_BUZZER_EN]==LOW); + assert(pin_states[PIN_BUZZER]==LOW&&!HwPWM3.owned&&!HwPWM3.pin&&!irq_enabled); + auto tones=rtttl::begins; + buzzer.play("normal:d=4,o=5,b=120:c"); + assert(!buzzer.isPlaying()&&rtttl::begins==tones&&pin_states[PIN_BUZZER_EN]==LOW); + // Every cancellation path releases the courtesy output without changing mute. + assert(buzzer.speakButton(ButtonVoicePrompt::SoundOff,true)); + buzzer.stop();assert(buzzer.isQuiet()&&!buzzer.isPlaying()); + assert(pin_states[PIN_BUZZER_EN]==LOW&&pin_states[PIN_BUZZER]==LOW); + assert(buzzer.speakButton(ButtonVoicePrompt::SoundOff,true)); + buzzer.quiet(true);assert(!buzzer.isPlaying()&&pin_states[PIN_BUZZER_EN]==LOW); + // Muted ordinary notifications must preserve queued and active courtesy voice. + assert(buzzer.speakButton(ButtonVoicePrompt::SoundOff,true)); + before=gps_voice.started();auto cancelled=gps_voice.cancelled();tones=rtttl::begins; + buzzer.play("normal:d=4,o=5,b=120:c"); + assert(buzzer.isQuiet()&&buzzer.isPlaying()&&pin_states[PIN_BUZZER_EN]==HIGH); + assert(!registers.ENABLE&&gps_voice.started()==before&&rtttl::begins==tones); + buzzer.loop();now_ms+=100;buzzer.loop(); + assert(registers.ENABLE&&gps_voice.started()==before+1); + buzzer.play("normal:d=4,o=5,b=120:c"); + assert(buzzer.isQuiet()&&buzzer.isPlaying()&®isters.ENABLE); + assert(gps_voice.cancelled()==cancelled&&rtttl::begins==tones&&pin_states[PIN_BUZZER_EN]==HIGH); + // Ordinary sound still preempts voice as soon as the user actually unmutes. + buzzer.quiet(false);buzzer.play("normal:d=4,o=5,b=120:c"); + assert(!registers.ENABLE&&gps_voice.cancelled()==cancelled+1); + assert(rtttl::isPlaying()&&rtttl::begins==tones+1&&!HwPWM3.owned&&!irq_enabled); + rtttl::finish();buzzer.loop();assert(!buzzer.isPlaying());buzzer.quiet(true); + // Starting a courtesy direction tone also respects cancellation in its gap. + assert(buzzer.speakButton(ButtonVoicePrompt::GpsOff,true)); + assert(buzzer.isQuiet()&&rtttl::isPlaying()&&pin_states[PIN_BUZZER_EN]==HIGH); + rtttl::finish();buzzer.loop();buzzer.stop(); + now_ms+=1000;buzzer.loop(); + assert(!buzzer.isPlaying()&&pin_states[PIN_BUZZER_EN]==LOW&&!registers.ENABLE); + // An unavailable player must restore the sleeping amplifier immediately. + HwPWM3.reject=true; + assert(buzzer.speakButton(ButtonVoicePrompt::SoundOff,true)); + buzzer.loop();now_ms+=100;buzzer.loop(); + assert(buzzer.isQuiet()&&!buzzer.isPlaying()&&pin_states[PIN_BUZZER_EN]==LOW); +} +''' + +LEGACY_ORDINARY_PLAY = r''' +#include +#define PIN_BUZZER 25 +#define PIN_BUZZER_EN 37 +#define MESH_GPS_VOICE 0 +#include +uint32_t now_ms=0; +int main(){ + genericBuzzer buzzer;buzzer.begin();buzzer.quiet(true); + assert(buzzer.speakButton(ButtonVoicePrompt::GpsOff,true)&&rtttl::isPlaying()); + auto tones=rtttl::begins; + // Non-voice builds retain the original cancel-before-quiet behavior. + buzzer.play("normal:d=4,o=5,b=120:c"); + assert(buzzer.isQuiet()&&!buzzer.isPlaying()&&rtttl::begins==tones); + assert(pin_states[PIN_BUZZER_EN]==LOW); + buzzer.quiet(false);assert(buzzer.speakGps(true));tones=rtttl::begins; + buzzer.play("normal:d=4,o=5,b=120:c"); + assert(!buzzer.isQuiet()&&buzzer.isPlaying()&&rtttl::begins==tones+1); + assert(rtttl::melody=="normal:d=4,o=5,b=120:c"); +} +''' + +UI_ACTIONS = r''' +#include +#include +#include +#include +#include +#include "examples/companion_radio/ui-orig/Button.h" +#define PIN_BUZZER 25 +#define MESH_GPS_VOICE 1 +#define ENV_INCLUDE_GPS 1 +#define MESH_DEBUG_PRINTLN(...) ((void)0) +uint32_t now_ms=0; +static std::vector events; +enum class UIEventType{contactMessage,channelMessage,ack,roomMessage,newContactMessage,none}; +namespace mesh { + namespace notify {enum {Sound=1};} + namespace ui { + enum class DisplayWake {Button}; + inline uint8_t radioProfileDisplayPageCount(bool,uint8_t){return 4;} + } +} +struct Display { + bool on=true;unsigned wakes=0; + bool isOn(){return on;} + void wake(mesh::ui::DisplayWake){++wakes;on=true;} +}; +static uint8_t radioProfileStatusPageCount(Display&,bool){return 2;} +struct CompanionNodePrefs {uint8_t gps_enabled=0,buzzer_quiet=0;}; +struct SensorManager { + bool enabled=false,available=true,reject=false; + bool setSettingValue(const char*,const char* value){ + events.push_back("gps"); + if(!available||reject)return false; + enabled=value[0]=='1';return true; + } + const char* getSettingByKey(const char*){return available?(enabled?"1":"0"):nullptr;} +}; +static SensorManager sensors; +struct MyMesh { + CompanionNodePrefs _prefs; + bool save_ok=true,advert_ok=true,notification_active=false,output_muted=false,dual_radio=false; + unsigned saves=0,adverts=0,notification_buttons=0,mute_calls=0,cli_entries=0; + std::vector saved_quiet; + bool savePrefs(){++saves;events.push_back("save");saved_quiet.push_back(_prefs.buzzer_quiet);return save_ok;} + template bool savePreference(T& p,T v){T old=p;p=v;if(savePrefs())return true;p=old;return false;} + void applyGpsPrefs(){sensors.setSettingValue("gps",_prefs.gps_enabled?"1":"0");} + bool setGpsEnabled(bool); + bool advert(){++adverts;events.push_back("advert");return advert_ok;} + bool notificationButton(){++notification_buttons;bool cleared=notification_active;notification_active=false;return cleared;} + void setNotificationOutputMute(int,bool muted){++mute_calls;output_muted=muted;events.push_back("mute");} + bool isDualRadioActive(){return dual_radio;} + void enterCLIRescue(){++cli_entries;events.push_back("cli");} +}; +static MyMesh the_mesh; +struct Buzzer { + bool muted=false,playing=false,accept=true; + unsigned plays=0,notification_plays=0,stops=0,notification_stops=0,shutdowns=0; + std::vector prompts; + std::vector courtesy; + bool speakButton(ButtonVoicePrompt prompt,bool allowQuiet=false){ + events.push_back("speak");prompts.push_back(prompt);courtesy.push_back(allowQuiet); + playing=accept&&(!muted||allowQuiet);return accept; + } + bool speakGps(bool value){return speakButton(value?ButtonVoicePrompt::GpsOn:ButtonVoicePrompt::GpsOff);} + void quiet(bool q){muted=q;events.push_back("quiet");} + bool isQuiet(){return muted;} + bool isPlaying(){return playing;} + void stop(){++stops;playing=false;events.push_back("stop");} + void stopNotification(){++notification_stops;playing=false;events.push_back("notification_stop");} + void shutdown(){++shutdowns;playing=!muted;} + void play(const char*){++plays;} + void playNotification(const char*){++notification_plays;} + void loop(){} +}; +struct Board { + unsigned offs=0,reboots=0; + void powerOff(){++offs;events.push_back("off");} + void reboot(){++reboots;events.push_back("reboot");} +}; +struct UITask { + Display* _display=nullptr;SensorManager* _sensors=&sensors; + CompanionNodePrefs* _node_prefs=&the_mesh._prefs; + Buzzer buzzer;Board board;Board* _board=&board; + char _alert[80]={},_origin[80]={},_msg[80]={}; + bool _need_refresh=false,_displayWasOn=false,_button_notification_cleared=false; + bool _shutdown_pending=false,_shutdown_restart=false; + uint32_t _shutdown_started_at=0,ui_started_at=0; + uint8_t _radio_profile_display_page=0,_notification_outputs=mesh::notify::Sound; + bool guard_ok=true,guard_reject_drain=false;unsigned guards=0,preview_clears=0; + bool prepareForShutdown(){++guards;events.push_back("guard");return guard_ok&&(!guard_reject_drain||guards==1);} + bool shouldPlayMessageTone()const{return true;} + bool isPairingScreenActive()const{return false;} + void resetRadioProfileDisplayPage(){_radio_profile_display_page=0;} + void clearMsgPreview(){++preview_clears;_origin[0]=_msg[0]=0;} + void notify(UIEventType);void notificationMelody(const char*); + void handleButtonAnyPress();void handleButtonShortPress(); + void handleButtonDoublePress();void handleButtonTriplePress(); + void handleButtonQuadruplePress();void handleButtonLongPress(); + void shutdown(bool restart=false);void servicePendingShutdown(); +}; +@METHODS@ +int main(){ + auto reset=[](){the_mesh=MyMesh{};sensors=SensorManager{};events.clear();now_ms=10000;}; + auto last=[](const UITask& ui,ButtonVoicePrompt expected){assert(!ui.buzzer.prompts.empty()&&ui.buzzer.prompts.back()==expected);}; + reset();UITask single; + single.handleButtonAnyPress();single.handleButtonShortPress(); + last(single,ButtonVoicePrompt::Ready); + the_mesh.notification_active=true; + single.handleButtonAnyPress();single.handleButtonAnyPress(); // The first click really acknowledged it. + single.handleButtonShortPress();last(single,ButtonVoicePrompt::NotificationCleared); + single.handleButtonAnyPress();single.handleButtonShortPress();last(single,ButtonVoicePrompt::Ready); + assert(single.buzzer.prompts.size()==3); + // Multi-click actions consume the acknowledgement latch instead of leaking it to a later single. + the_mesh.notification_active=true; + single.handleButtonAnyPress();single.handleButtonDoublePress();last(single,ButtonVoicePrompt::AdvertQueued); + single.handleButtonAnyPress();single.handleButtonShortPress();last(single,ButtonVoicePrompt::Ready); + // An attached display retains its existing preview/wake behavior, with no Ready chatter. + Display display;single._display=&display;single._displayWasOn=true; + strcpy(single._origin,"sender");strcpy(single._msg,"message"); + auto prompt_count=single.buzzer.prompts.size(); + single.handleButtonAnyPress();single.handleButtonShortPress(); + assert(single.preview_clears==1&&single.buzzer.prompts.size()==prompt_count&&display.wakes==1); + + reset();UITask advert; + advert.handleButtonDoublePress();last(advert,ButtonVoicePrompt::AdvertQueued); + assert((events==std::vector{"advert","speak"})); + the_mesh.advert_ok=false;events.clear(); + advert.handleButtonDoublePress();last(advert,ButtonVoicePrompt::AdvertFailed); + assert(the_mesh.adverts==2&&strstr(advert._alert,"failed")); + assert((events==std::vector{"advert","speak"})); + + reset();UITask mute; + mute.handleButtonTriplePress();last(mute,ButtonVoicePrompt::SoundOff); + assert(mute.buzzer.muted&&the_mesh._prefs.buzzer_quiet&&the_mesh.output_muted); + assert(mute.buzzer.courtesy.back()&&mute.buzzer.playing); + assert((events==std::vector{"save","quiet","mute","speak"})); + events.clear();mute.handleButtonTriplePress();last(mute,ButtonVoicePrompt::SoundOn); + assert(!mute.buzzer.muted&&!the_mesh._prefs.buzzer_quiet&&!the_mesh.output_muted); + assert(mute.buzzer.courtesy.back()&&the_mesh.saves==2&&the_mesh.mute_calls==2); + // Failed commits preserve runtime quiet, stored preference, and output routing separately. + for(bool old_quiet:{false,true}){ + mute.buzzer.muted=old_quiet;the_mesh._prefs.buzzer_quiet=old_quiet; + the_mesh.output_muted=old_quiet;the_mesh.save_ok=false;events.clear(); + auto mutes=the_mesh.mute_calls; + mute.handleButtonTriplePress();last(mute,ButtonVoicePrompt::ActionFailed); + assert(mute.buzzer.muted==old_quiet&&the_mesh._prefs.buzzer_quiet==old_quiet); + assert(the_mesh.output_muted==old_quiet&&the_mesh.mute_calls==mutes); + assert(mute.buzzer.courtesy.back()&&mute.buzzer.playing&&strstr(mute._alert,"failed")); + assert(std::find(events.begin(),events.end(),"mute")==events.end()); + } + // Even an initially inconsistent runtime/preference pair is not rewritten on failure. + mute.buzzer.muted=false;the_mesh._prefs.buzzer_quiet=1; + mute.handleButtonTriplePress();assert(!mute.buzzer.muted&&the_mesh._prefs.buzzer_quiet==1); + + reset();UITask gps; +#if ENV_INCLUDE_GPS == 1 + gps.handleButtonQuadruplePress();last(gps,ButtonVoicePrompt::GpsOn); + assert(sensors.enabled&&the_mesh._prefs.gps_enabled&&the_mesh.saves==1); + assert((events==std::vector{"gps","save","speak"})); + events.clear();gps.handleButtonQuadruplePress();last(gps,ButtonVoicePrompt::GpsOff); + assert(!sensors.enabled&&!the_mesh._prefs.gps_enabled&&the_mesh.saves==2); + the_mesh.save_ok=false;events.clear(); + gps.handleButtonQuadruplePress();last(gps,ButtonVoicePrompt::ActionFailed); + assert(!sensors.enabled&&!the_mesh._prefs.gps_enabled&&strstr(gps._alert,"failed")); + assert((events==std::vector{"gps","save","gps","speak"})); + the_mesh.save_ok=true;sensors.reject=true; + auto saves=the_mesh.saves;gps.handleButtonQuadruplePress();last(gps,ButtonVoicePrompt::ActionFailed); + assert(the_mesh.saves==saves&&!sensors.enabled&&!the_mesh._prefs.gps_enabled); + sensors.reject=false;sensors.available=false; + gps.handleButtonQuadruplePress();last(gps,ButtonVoicePrompt::ActionFailed); + assert(the_mesh.saves==saves); +#else + gps.handleButtonQuadruplePress();last(gps,ButtonVoicePrompt::ActionFailed); + assert(the_mesh.saves==0&&!sensors.enabled&&!the_mesh._prefs.gps_enabled); +#endif + gps._sensors=nullptr;gps.handleButtonQuadruplePress();last(gps,ButtonVoicePrompt::ActionFailed); + + reset();UITask early; + now_ms=7999;early.handleButtonLongPress();last(early,ButtonVoicePrompt::UsbSetup); + assert(the_mesh.cli_entries==1&&early.guards==0&&!early._shutdown_pending); + assert((events==std::vector{"cli","speak"})); + // Uptime arithmetic is unsigned even when boot began just before clock wrap. + early.ui_started_at=0xfffffff0;now_ms=7982; + early.handleButtonLongPress();last(early,ButtonVoicePrompt::UsbSetup); + assert(the_mesh.cli_entries==2); + + reset();UITask rejected;rejected.guard_ok=false; + rejected.shutdown();last(rejected,ButtonVoicePrompt::ActionFailed); + assert(!rejected._shutdown_pending&&!rejected.board.offs&&!rejected.board.reboots); + rejected.servicePendingShutdown();assert(rejected.guards==1&&!rejected.board.offs); + + reset();UITask shutdown; + now_ms=8000;shutdown.handleButtonLongPress();last(shutdown,ButtonVoicePrompt::ShuttingDown); + assert(shutdown._shutdown_pending&&shutdown.guards==1&&!shutdown.board.offs); + assert((events==std::vector{"guard","speak"})); + // Shutdown callbacks return immediately; draining is foreground service, not a busy wait. + assert(now_ms==8000); + auto before=shutdown.buzzer.prompts.size(); + auto adverts=the_mesh.adverts,shutdown_saves=the_mesh.saves; + shutdown.handleButtonAnyPress();shutdown.handleButtonShortPress();shutdown.handleButtonDoublePress(); + shutdown.handleButtonTriplePress();shutdown.handleButtonQuadruplePress();shutdown.handleButtonLongPress(); + shutdown.shutdown(true);shutdown.notify(UIEventType::ack);shutdown.notificationMelody("notification"); + assert(shutdown.buzzer.prompts.size()==before&&the_mesh.adverts==adverts&&the_mesh.saves==shutdown_saves); + assert(!shutdown.buzzer.plays&&!shutdown.buzzer.notification_plays&&shutdown.guards==1); + now_ms+=4999;shutdown.servicePendingShutdown();assert(!shutdown.board.offs&&shutdown._shutdown_pending); + shutdown.buzzer.playing=false;shutdown.servicePendingShutdown(); + assert(shutdown.board.offs==1&&!shutdown._shutdown_pending&&shutdown.guards==2&&shutdown.buzzer.stops==1); + shutdown.servicePendingShutdown();assert(shutdown.board.offs==1); + + reset();UITask restart; + now_ms=0xfffffff0;restart.shutdown(true);last(restart,ButtonVoicePrompt::Restarting); + now_ms+=4999;restart.servicePendingShutdown();assert(!restart.board.reboots&&restart._shutdown_pending); + ++now_ms;restart.servicePendingShutdown(); + assert(restart.board.reboots==1&&!restart.board.offs&&!restart._shutdown_pending&&!restart.buzzer.playing); + + reset();UITask drain_rejected;drain_rejected.guard_reject_drain=true; + drain_rejected.shutdown();drain_rejected.buzzer.playing=false;drain_rejected.servicePendingShutdown(); + last(drain_rejected,ButtonVoicePrompt::ActionFailed); + assert(!drain_rejected._shutdown_pending&&!drain_rejected.board.offs&&drain_rejected.guards==2); + + // Use the actual click decoder to establish that holding does not turn into a Ready/advert. + reset();UITask held;now_ms=100; + Button button(6,HIGH);button.begin(); + static_assert(BUTTON_LONG_PRESS_TIME_MS==3000,"three-second hold"); + button.onAnyPress([&]{held.handleButtonAnyPress();}); + button.onShortPress([&]{held.handleButtonShortPress();}); + button.onDoublePress([&]{held.handleButtonDoublePress();}); + button.onLongPress([&]{held.handleButtonLongPress();}); + assert(button.injectPresses(1,3500)); + for(unsigned i=0;i<500;++i){now_ms+=10;button.update();} + assert(held.buzzer.prompts.size()==1&&the_mesh.adverts==0&&the_mesh.cli_entries==1); + last(held,ButtonVoicePrompt::UsbSetup); +} +''' + +NOTIFICATION_ACK = r''' +#include +#include +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wmisleading-indentation" +#include +#pragma GCC diagnostic pop +uint32_t now_ms=0; +using namespace mesh::notify; +struct Probe : Sink,Store { + unsigned stops=0; + uint8_t capabilities()const override{return Sound;} + bool gpioAvailable(uint8_t)const override{return false;} + void pulse(Output,bool,int8_t)override{} + void melody(const char* value)override{if(!value)++stops;} + void screen(int8_t)override{} + bool save(const Settings&)override{return true;} +}; +struct MyMesh { + Controller _notifications; + explicit MyMesh(Probe& probe):_notifications(probe,probe){} + @WRAPPER@ +}; +int main(){ + Probe probe;MyMesh mesh(probe); + assert(!mesh.notificationButton()&&probe.stops==0); + auto& settings=mesh._notifications.settings();settings.enabled=1;settings.outputs=Sound; + auto& rule=settings.rules[0];rule.used=1; + assert(setField(rule,FSound,"test:d=4,o=5,b=120:c")); + assert(setField(rule,FStop,"button")); + assert(mesh._notifications.message(nullptr,nullptr,false,100)); + assert(mesh.notificationButton()&&!mesh._notifications.active()&&probe.stops==1); + assert(!mesh.notificationButton()&&probe.stops==1); + // An active alert with another stop policy was not actually cleared by input. + for(const char* policy:{"connected","never"}){ + assert(setField(rule,FStop,policy)); + assert(mesh._notifications.message(nullptr,nullptr,false,200)); + auto stops=probe.stops; + assert(!mesh.notificationButton()&&mesh._notifications.active()&&probe.stops==stops); + mesh._notifications.stop(); + } +} +''' + +NOTIFICATION_MELODY = r''' +#include +#include +#define PIN_BUZZER 25 +#define MESH_GPS_VOICE @VOICE@ +uint32_t now_ms=0; +struct Buzzer { + bool muted=true,playing=true,control_voice=true;unsigned melodies=0,stops=0,notification_stops=0; + bool isQuiet(){return muted;} + void playNotification(const char*){++melodies;playing=true;control_voice=false;} + void stop(){++stops;playing=false;} + void stopNotification(){++notification_stops;if(!MESH_GPS_VOICE||!control_voice)playing=false;} +}; +struct UITask { + Buzzer buzzer;bool _shutdown_pending=false; + void notificationMelody(const char*); +}; +@METHOD@ +int main(){ + UITask ui; + // A muted programmable alert must not preempt the final courtesy confirmation. + ui.notificationMelody("ordinary"); +#if MESH_GPS_VOICE + assert(ui.buzzer.melodies==0&&ui.buzzer.playing&&ui.buzzer.stops==0); +#else + assert(ui.buzzer.melodies==1&&ui.buzzer.playing&&ui.buzzer.stops==0); +#endif + // Background stop requests retain control speech while quiet. + ui.notificationMelody(nullptr); + assert(ui.buzzer.stops==0&&ui.buzzer.notification_stops==1); +#if MESH_GPS_VOICE + assert(ui.buzzer.playing); +#else + assert(!ui.buzzer.playing); +#endif + ui.buzzer.muted=false;ui.notificationMelody("ordinary"); +#if MESH_GPS_VOICE + assert(ui.buzzer.melodies==1&&ui.buzzer.playing); +#else + assert(ui.buzzer.melodies==2&&ui.buzzer.playing); +#endif + ui._shutdown_pending=true; + ui.notificationMelody("ordinary");ui.notificationMelody(nullptr); +#if MESH_GPS_VOICE + assert(ui.buzzer.melodies==1&&ui.buzzer.stops==0&&ui.buzzer.notification_stops==1&&ui.buzzer.playing); +#else + assert(ui.buzzer.melodies==3&&ui.buzzer.stops==0&&ui.buzzer.notification_stops==2&&!ui.buzzer.playing); +#endif +} +''' + +NOTIFICATION_STOPS = r''' +#include +#include +#define PIN_BUZZER 25 +#define PIN_BUZZER_EN 37 +#define MESH_BUTTON_AUDIO_HIL 1 +#define MESH_GPS_VOICE @VOICE@ +#include +uint32_t now_ms=0; +int main(){ + genericBuzzer buzzer;buzzer.begin(); + buzzer.playNotification("ordinary:d=4,o=5,b=120:c"); + assert(buzzer.isPlaying()&&rtttl::isPlaying()); + buzzer.stopNotification();assert(!buzzer.isPlaying()&&!rtttl::isPlaying()); + assert(buzzer.speakGps(true)&&rtttl::isPlaying()); + buzzer.stopNotification(); +#if MESH_GPS_VOICE + // A stale notification stop cannot cut off the direction tone or its gap. + assert(buzzer.isPlaying()&&rtttl::isPlaying()&&!registers.ENABLE); + auto starts=gps_voice.started(),cancelled=gps_voice.cancelled(); + rtttl::finish();buzzer.loop(); + assert(buzzer.isPlaying()&&!rtttl::isPlaying()&&!registers.ENABLE); + buzzer.stopNotification();assert(buzzer.isPlaying()); + now_ms+=99;buzzer.loop();buzzer.stopNotification(); + assert(buzzer.isPlaying()&&!registers.ENABLE); + ++now_ms;buzzer.loop();assert(registers.ENABLE&&gps_voice.started()==starts+1); + buzzer.stopNotification(); + assert(registers.ENABLE&&HwPWM3.owned&&buzzer.isPlaying()&&gps_voice.cancelled()==cancelled); + auto drain=[&]{ + unsigned sequence=0,events=0; + while(registers.ENABLE){ + assert(++events<2000);buzzer.stopNotification(); + assert(registers.ENABLE&&HwPWM3.owned&&gps_voice.cancelled()==cancelled); + registers.EVENTS_SEQEND[sequence]=1;PWM3_IRQHandler();sequence^=1; + } + // Completed DMA still owns its hardware until foreground cleanup. + assert(buzzer.isPlaying()&&HwPWM3.owned); + buzzer.stopNotification();assert(HwPWM3.owned&&gps_voice.cancelled()==cancelled); + buzzer.loop();assert(!buzzer.isPlaying()&&!HwPWM3.owned&&!HwPWM3.pin&&!irq_enabled); + }; + drain(); + // The same protection covers a courtesy confirmation while alerts are muted. + buzzer.quiet(true);assert(buzzer.speakButton(ButtonVoicePrompt::ActionFailed,true)); + buzzer.stopNotification();assert(buzzer.isPlaying()&&buzzer.isQuiet()); + buzzer.loop();now_ms+=100;buzzer.loop();assert(registers.ENABLE); + drain(); + assert(pin_states[PIN_BUZZER_EN]==LOW&&pin_states[PIN_BUZZER]==LOW); +#else + // Without voice, this API remains an ordinary tone stop. + assert(!buzzer.isPlaying()&&!rtttl::isPlaying()); + buzzer.quiet(true); +#endif + buzzer.playNotification("ordinary:d=4,o=5,b=120:c"); + assert(buzzer.isPlaying()&&pin_states[PIN_BUZZER_EN]==HIGH); + buzzer.stopNotification(); + assert(!buzzer.isPlaying()&&!rtttl::isPlaying()&&buzzer.isQuiet()); + assert(pin_states[PIN_BUZZER_EN]==LOW); +} +''' + +X1_ALERT_MODES = r''' +#include +#include +#include +#include +#include +#include +#define PIN_BUZZER 25 +#define HAS_DRV2605 1 +#define MESH_GPS_VOICE @VOICE@ +#define MESH_DEBUG_PRINTLN(...) ((void)0) +uint32_t now_ms=0; +static std::vector mode_events; +enum class UIEventType{ack}; +namespace mesh{namespace notify{enum{Sound=1,Vibration=2};}} +struct CompanionNodePrefs{uint8_t buzzer_quiet=0,vibe_quiet=0;}; +struct MyMesh { + CompanionNodePrefs _prefs; + bool save_ok=true,mask_save_ok=true; + unsigned saves=0,mutes=0; + bool sound_muted=false,vibration_muted=false; + std::vector saved_modes; + bool savePrefs(){ + mode_events.push_back("save"); + ++saves;saved_modes.push_back((_prefs.buzzer_quiet?2:0)|(_prefs.vibe_quiet?1:0)); + return save_ok; + } + void setNotificationOutputMute(int output,bool quiet){ + ++mutes; + mode_events.push_back("mask"); + if(!mask_save_ok)return; + if(output==mesh::notify::Sound)sound_muted=quiet; + else if(output==mesh::notify::Vibration)vibration_muted=quiet; + else assert(false); + } +}; +static MyMesh the_mesh; +struct Buzzer { + bool muted=false; + std::vector prompts; + std::vector courtesy; + void quiet(bool value){muted=value;} + bool isQuiet(){return muted;} + bool speakButton(ButtonVoicePrompt prompt,bool allowQuiet=false){ + mode_events.push_back("voice"); + prompts.push_back(prompt);courtesy.push_back(allowQuiet);return true; + } +}; +struct Vibration { + bool muted=false,active=false;unsigned triggers=0,stops=0,pulses=0; + void quiet(bool value){muted=value;} + bool isQuiet(){return muted;} + void trigger(bool confirmation=false){assert(confirmation);++triggers;} + void stop(){++stops;active=false;mode_events.push_back("stop");} + void pulse(bool on){++pulses;active=on;} +}; +struct UITask { + CompanionNodePrefs* _node_prefs=&the_mesh._prefs; + Buzzer buzzer;Vibration vibration; + bool _shutdown_pending=false,_button_notification_cleared=false,_need_refresh=false; + char _alert[80]={};unsigned acknowledgements=0; + void notify(UIEventType){++acknowledgements;} + void handleButtonTriplePress(); + void notificationVibration(bool); +}; +@METHOD@ +@VIBRATION_METHOD@ +int main(){ + UITask ui; + const ButtonVoicePrompt expected[]={ + ButtonVoicePrompt::AlertsSoundVibration,ButtonVoicePrompt::AlertsSoundOnly, + ButtonVoicePrompt::AlertsVibrationOnly,ButtonVoicePrompt::AlertsSilent, + }; + unsigned vibration_triggers=0,vibration_stops=0; + for(unsigned step=1;step<=8;++step){ + const auto mode=step&3; + ui._button_notification_cleared=true; + auto saves=the_mesh.saves; + mode_events.clear(); + ui.vibration.active=true; + ui.handleButtonTriplePress(); + assert(the_mesh.saves==saves+1&&the_mesh.saved_modes.back()==mode); + assert(the_mesh._prefs.buzzer_quiet==!!(mode&2)); + assert(the_mesh._prefs.vibe_quiet==!!(mode&1)); + assert(ui.buzzer.muted==!!(mode&2)&&ui.vibration.muted==!!(mode&1)); + assert(the_mesh.sound_muted==!!(mode&2)&&the_mesh.vibration_muted==!!(mode&1)); + if(!(mode&1))++vibration_triggers; + assert(ui.vibration.triggers==vibration_triggers&&ui._need_refresh); +#if MESH_GPS_VOICE + if(mode&1){ + ++vibration_stops;assert(!ui.vibration.active); + assert(mode_events.size()>=2&&mode_events[0]=="save"&&mode_events[1]=="stop"); + } + assert(ui.vibration.stops==vibration_stops); + assert(ui.buzzer.prompts.size()==step&&ui.buzzer.prompts.back()==expected[mode]); + // Selecting silent or vibration-only gets a single final confirmation, + // without unmuting saved alerts or notification routing. + assert(ui.buzzer.courtesy.back()&&!ui._button_notification_cleared); + assert(ui.acknowledgements==0); +#else + assert(ui.buzzer.prompts.empty()); +#endif + } +#if MESH_GPS_VOICE + // Each possible persisted mode is restored on failure. Deliberately divergent + // runtime and routing states are preserved too; a failed save is not a toggle. + the_mesh.save_ok=false; + for(unsigned mode=0;mode<4;++mode){ + the_mesh._prefs.buzzer_quiet=!!(mode&2);the_mesh._prefs.vibe_quiet=!!(mode&1); + ui.buzzer.muted=!(mode&2);ui.vibration.muted=!(mode&1); + the_mesh.sound_muted=!(mode&2);the_mesh.vibration_muted=!(mode&1); + const auto old_buzzer=ui.buzzer.muted,old_vibration=ui.vibration.muted; + const auto old_sound=the_mesh.sound_muted,old_vibe=the_mesh.vibration_muted; + const auto mutes=the_mesh.mutes,triggers=ui.vibration.triggers,saves=the_mesh.saves; + const auto stops=ui.vibration.stops; + mode_events.clear(); + ui.handleButtonTriplePress(); + assert(the_mesh.saves==saves+1&&the_mesh.saved_modes.back()==((mode+1)&3)); + assert(the_mesh._prefs.buzzer_quiet==!!(mode&2)&&the_mesh._prefs.vibe_quiet==!!(mode&1)); + assert(ui.buzzer.muted==old_buzzer&&ui.vibration.muted==old_vibration); + assert(the_mesh.sound_muted==old_sound&&the_mesh.vibration_muted==old_vibe); + assert(the_mesh.mutes==mutes&&ui.vibration.triggers==triggers); + assert(ui.vibration.stops==stops); + assert((mode_events==std::vector{"save","voice"})); + assert(ui.buzzer.prompts.back()==ButtonVoicePrompt::ActionFailed&&strstr(ui._alert,"failed")); + assert(ui.buzzer.courtesy.back()); + } + // A notification-mask write failure cannot undo the committed physical mode. + the_mesh.save_ok=true;the_mesh.mask_save_ok=false; + the_mesh._prefs.buzzer_quiet=the_mesh._prefs.vibe_quiet=0; + the_mesh.sound_muted=the_mesh.vibration_muted=false; + ui.vibration.active=true; + ui.handleButtonTriplePress(); + assert(the_mesh._prefs.vibe_quiet==1&&!the_mesh.vibration_muted&&!ui.vibration.active); + auto pulses=ui.vibration.pulses,stops=ui.vibration.stops; + ui.notificationVibration(true); + assert(ui.vibration.pulses==pulses&&ui.vibration.stops==stops+1&&!ui.vibration.active); + ui.notificationVibration(false); + assert(ui.vibration.pulses==pulses+1&&!ui.vibration.active); + the_mesh._prefs.vibe_quiet=0;ui.notificationVibration(true); + assert(ui.vibration.pulses==pulses+2&&ui.vibration.active); + ui.notificationVibration(false);assert(!ui.vibration.active); + ui._node_prefs=nullptr;ui.notificationVibration(true);assert(ui.vibration.active); + ui._node_prefs=&the_mesh._prefs; + // Shutdown quiesces multi-click changes instead of preempting final speech. + ui._shutdown_pending=true; + const auto saves=the_mesh.saves; + const auto prompts=ui.buzzer.prompts.size(); + ui.handleButtonTriplePress(); + assert(the_mesh.saves==saves&&ui.buzzer.prompts.size()==prompts); +#else + (void)expected; + (void)vibration_stops; + assert(ui.acknowledgements==4); + // The opt-out retains its historical driver forwarding despite mute prefs. + ui._node_prefs->vibe_quiet=1; + ui.notificationVibration(true);assert(ui.vibration.active); + ui.notificationVibration(false);assert(!ui.vibration.active); +#endif +} +''' + + +class Tests(unittest.TestCase): + build = gps_tests.Tests.build + + def test_every_prompt_uses_its_own_clip_and_preserves_direction_tones(self): + self.build(PROMPTS, rtttl=True) + + def test_each_new_board_default_uses_its_actual_buzzer_pin_and_releases_pwm(self): + for board, pin, enable in ( + ('RAK_WISMESH_TAG', 21, None), + ('MESH_TRACKER_X1', 25, None), + ('R1Neo', 3, None), + ('THINKNODE_M3', 23, 36), + ): + with self.subTest(board=board): + source = PROMPTS.replace('#define PIN_BUZZER 25', f'#define PIN_BUZZER {pin}') + source = source.replace('#define PIN_BUZZER_EN 37', + '' if enable is None else f'#define PIN_BUZZER_EN {enable}') + source = source.replace('#define MESH_GPS_VOICE 1', + '#define NRF52_PLATFORM\n#define COMPANION_RADIO_FULL 1\n' + +f'#define {board}\n') + if board != 'MESH_TRACKER_X1': + source = source.replace('#define HAS_DRV2605 1', '') + self.build(source, rtttl=True) + + def test_quiet_courtesy_completion_and_cancellation_release_both_pins(self): + self.build(COURTESY, rtttl=True) + + def test_muted_x1_mode_announcements_never_unmute_notifications_and_release_pwm(self): + for prompt in ('AlertsSoundVibration', 'AlertsSoundOnly', + 'AlertsVibrationOnly', 'AlertsSilent'): + with self.subTest(prompt=prompt): + self.build(COURTESY.replace('ButtonVoicePrompt::SoundOff', + 'ButtonVoicePrompt::'+prompt) + .replace('#define MESH_GPS_VOICE 1', + '#define HAS_DRV2605 1\n#define MESH_GPS_VOICE 1'), rtttl=True) + + def test_x1_alert_modes_report_committed_result_and_legacy_tones_remain(self): + ui = (ROOT / 'examples/companion_radio/ui-orig/UITask.cpp').read_text() + triple = method(ui, 'void UITask::handleButtonTriplePress()') + vibration = method(ui, 'void UITask::notificationVibration(bool on)') + for voice in (0, 1): + with self.subTest(voice=voice): + self.build(X1_ALERT_MODES.replace('@METHOD@', triple) + .replace('@VIBRATION_METHOD@', vibration) + .replace('@VOICE@', str(voice))) + + def test_voice_disabled_ordinary_play_keeps_its_legacy_preemption(self): + self.build(LEGACY_ORDINARY_PLAY, rtttl=True) + + def test_notification_cleared_requires_an_actual_button_acknowledgement(self): + mesh = (ROOT / 'examples/companion_radio/MyMesh.h').read_text() + wrapper = method(mesh, 'bool notificationButton()') + self.build(NOTIFICATION_ACK.replace('@WRAPPER@', wrapper)) + + def test_muted_programmable_notifications_do_not_cancel_courtesy_audio(self): + ui = (ROOT / 'examples/companion_radio/ui-orig/UITask.cpp').read_text() + melody = method(ui, 'void UITask::notificationMelody(const char* text)') + for voice in (0, 1): + with self.subTest(voice=voice): + self.build(NOTIFICATION_MELODY.replace('@METHOD@', melody) + .replace('@VOICE@', str(voice))) + + def test_notification_stop_preserves_control_tone_gap_and_dma_but_cancels_alerts(self): + for voice in (0, 1): + with self.subTest(voice=voice): + self.build(NOTIFICATION_STOPS.replace('@VOICE@', str(voice)), rtttl=True) + + def test_button_actions_report_committed_results_and_shutdown_without_blocking(self): + mesh = (ROOT / 'examples/companion_radio/MyMesh.cpp').read_text() + ui = (ROOT / 'examples/companion_radio/ui-orig/UITask.cpp').read_text() + methods = method(mesh, 'bool MyMesh::setGpsEnabled(bool enabled)') + for signature in ( + 'void UITask::notify(UIEventType t)', + 'void UITask::notificationMelody(const char* text)', + 'void UITask::handleButtonAnyPress()', + 'void UITask::handleButtonShortPress()', + 'void UITask::handleButtonDoublePress()', + 'void UITask::handleButtonTriplePress()', + 'void UITask::handleButtonQuadruplePress()', + 'void UITask::handleButtonLongPress()', + 'void UITask::shutdown(bool restart)', + 'void UITask::servicePendingShutdown()', + ): + methods += '\n' + method(ui, signature) + self.build(UI_ACTIONS.replace('@METHODS@', methods), button=True) + self.build(UI_ACTIONS.replace('@METHODS@', methods) + .replace('#define ENV_INCLUDE_GPS 1', '#define ENV_INCLUDE_GPS 0'), button=True) + loop = method(ui, 'void UITask::loop()') + self.assertLess(loop.index('buzzer.loop()'), loop.index('servicePendingShutdown()')) + + +if __name__ == '__main__': + unittest.main() diff --git a/test/test_button_voice_generator.py b/test/test_button_voice_generator.py new file mode 100644 index 000000000..ebfe86f13 --- /dev/null +++ b/test/test_button_voice_generator.py @@ -0,0 +1,340 @@ +"""Validate the fixed prerecorded catalog without speech synthesis or hardware.""" +from pathlib import Path +import hashlib +import re +import shutil +import struct +import subprocess +import sys +import tempfile +import unittest +import wave + +ROOT = Path(__file__).resolve().parents[1] +ENCODER = ROOT / "scripts/generate_button_voice.py" +SYNTHESIZER = ROOT / "scripts/generate_button_voice.ps1" +POWERSHELL = shutil.which("pwsh") or shutil.which("powershell") +CATALOG = ( + ("ready", "Ready"), + ("notificationCleared", "Notification cleared"), + ("advertQueued", "Advert queued"), + ("advertFailed", "Advert failed"), + ("soundOn", "Sound on"), + ("soundOff", "Sound off"), + ("actionFailed", "Action failed"), + ("usbSetup", "USB setup"), + ("shuttingDown", "Shutting down"), + ("restarting", "Restarting"), + ("alertsSoundVibration", "Sound and vibration"), + ("alertsSoundOnly", "Sound only"), + ("alertsVibrationOnly", "Vibration only"), + ("alertsSilent", "Silent"), +) + +# Approved Microsoft Zira Desktop, rate -1 / compressed / peak-0.12 / 8 kHz. +# Fingerprints were derived from the freshly synthesized WAVs, then checked +# against the selected header. They must not be computed from that header at +# test runtime: a Zira default/label does not establish the recordings' identity. +ZIRA_RECORDINGS = { + 'ready': ('1b7823a41160abedaebb87d185a60c53bd11aba167797210c1dc37486e7c2fe0', 3147), + 'notificationCleared': ('86ef9cdaaeee5e56254fef71512fe0de11119f732b2ab3125d2efda1c6dd538d', 10984), + 'advertQueued': ('93db629d81e9d029a46f49df068dc0d8b8182687b348ec6123b43b8910ab2abb', 7062), + 'advertFailed': ('2465649d7259fed3283915e5e56d23ae9f43772f10a419a84d654ab0360c778e', 7429), + 'soundOn': ('a644478dbe1ef01d126de862b2153b077b468acaa4e452dd26b12ec4878faf1e', 6229), + 'soundOff': ('43565c13fab68fa5e0ca20c55a7213e10109e6289e4fa35dc7396acdda905f78', 5393), + 'actionFailed': ('971c92c5150931ffe63504573996ee931d77d77c2a888dfe35f8ba389a8c32d8', 7470), + 'usbSetup': ('f42ae082f7eab15bc7e2bd7b25f1ed50c6ed264099e5b7814897828d5b8ef051', 8957), + 'shuttingDown': ('973104cd1e48c6f584ec1e9eb3169bfa78bedc9399dbede88e364ef5571c91bb', 7461), + 'restarting': ('49425018482bdee20b8140cd2c33419778b591ba93e0d1137f06a0ab18a3f035', 5866), + 'alertsSoundVibration': ('8fedaa6d711c8623f67719214bc4d040ad43ad17736bcac82a516b8fc9c5aa93', 10915), + 'alertsSoundOnly': ('6f5d4f043d53c9ff40537a13df600f7c0c71abb462ddc97f357fceda8e5fd565', 7108), + 'alertsVibrationOnly': ('bd2e5d34d79655c721774db8a6e76aaf26c54b8e075fea3ddd21a427ac6f3f2e', 8723), + 'alertsSilent': ('fcdef5047e616f6454aae42c90bb238303654b04e21fc9e5378693d91233e2a8', 5717), +} + + +def write_wav(path, samples, *, rate=8000, channels=1, width=2): + with wave.open(str(path), "wb") as wav: + wav.setnchannels(channels) + wav.setsampwidth(width) + wav.setframerate(rate) + values = samples * channels + payload = (struct.pack("<" + "h" * len(values), *values) + if width == 2 else bytes(len(values))) + wav.writeframes(payload) + + +def parse_header(source): + arrays = { + name: bytes(int(value, 16) for value in re.findall(r"0x([0-9a-fA-F]{2})", body)) + for name, body in re.findall( + r"static const uint8_t (\w+)Data\[\] = \{(.*?)\};", source, re.S) + } + clips = { + name: (data, size, int(samples), int(rate)) + for name, data, size, samples, rate in re.findall( + r"static constexpr VoiceClip (\w+)Clip = \{\s*" + r"(\w+)Data, sizeof\((\w+)Data\), (\d+), (\d+)\s*\};", source) + } + return arrays, clips + + +class EncoderTests(unittest.TestCase): + def fixtures(self, directory): + samples = {} + for index, (name, _) in enumerate(CATALOG): + # This known prefix encodes to 00 91 a1 b3 from predictor/index 0. + # Odd and even lengths exercise the padded final nibble separately. + values = [0, 0, 1, -1, 2, -2, 3, -3] + values += [((offset * 997 + index * 1733) % 20001) - 10000 + for offset in range(9 + index * 7)] + write_wav(directory / (name + ".wav"), values) + samples[name] = values + return samples + + def generate(self, directory, output, *arguments): + return subprocess.run( + [sys.executable, str(ENCODER), "--directory", str(directory), + "--output", str(output), *arguments], cwd=ROOT, capture_output=True, + text=True, timeout=30, + ) + + def test_fixed_catalog_sizes_independent_streams_and_reproducibility(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + samples = self.fixtures(directory) + first, second = directory / "first.h", directory / "second.h" + result = self.generate(directory, first) + self.assertEqual(result.returncode, 0, result.stderr) + repeated = self.generate(directory, second) + self.assertEqual(repeated.returncode, 0, repeated.stderr) + self.assertEqual(first.read_bytes(), second.read_bytes()) + self.assertEqual(result.stdout, repeated.stdout) + source = first.read_text(encoding="utf-8") + self.assertNotIn('// Voice:', source) + self.assert_x1_only_recordings_are_guarded(source) + arrays, clips = parse_header(source) + self.assertEqual(tuple(arrays), tuple(name for name, _ in CATALOG)) + self.assertEqual(tuple(clips), tuple(arrays)) + for name, phrase in CATALOG: + with self.subTest(phrase=phrase): + count = len(samples[name]) + self.assertEqual(clips[name], (name, name, count, 8000)) + self.assertEqual(len(arrays[name]), (count + 1) // 2) + self.assertEqual(arrays[name][:4], bytes.fromhex("00 91 a1 b3")) + if count & 1: + self.assertEqual(arrays[name][-1] >> 4, 0) + self.assertIn('// "' + phrase + '"', source) + self.assertIn(f"{phrase}: {count / 8000:.3f}s", result.stdout) + self.assertIn( + f"Button confirmations: {sum(len(data) for data in arrays.values())} audio bytes", + result.stdout, + ) + + def test_checked_in_assets_match_fixed_catalog_and_clip_bounds(self): + source = (ROOT / "src/helpers/ui/ButtonVoiceData.h").read_text(encoding="utf-8") + self.assert_x1_only_recordings_are_guarded(source) + arrays, clips = parse_header(source) + self.assertEqual(tuple(arrays), tuple(name for name, _ in CATALOG)) + self.assertEqual(tuple(clips), tuple(arrays)) + for name, phrase in CATALOG: + with self.subTest(phrase=phrase): + data_name, size_name, count, rate = clips[name] + self.assertEqual((data_name, size_name, rate), (name, name, 8000)) + self.assertGreater(count, 0) + self.assertLessEqual(count, 32000) + self.assertEqual(len(arrays[name]), (count + 1) // 2) + self.assertTrue(any(arrays[name])) + if count & 1: + self.assertEqual(arrays[name][-1] >> 4, 0) + self.assertIn('// "' + phrase + '"', source) + + def test_optional_voice_metadata_does_not_change_encoded_fixture_bytes(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + self.fixtures(directory) + plain, selected = directory / 'plain.h', directory / 'zira.h' + baseline = self.generate(directory, plain) + voiced = self.generate(directory, selected, '--voice', 'Microsoft Zira Desktop') + self.assertEqual(baseline.returncode, 0, baseline.stderr) + self.assertEqual(voiced.returncode, 0, voiced.stderr) + source = selected.read_text(encoding='utf-8') + self.assertIn('// Voice: Microsoft Zira Desktop\n', source) + self.assertEqual(parse_header(source), parse_header(plain.read_text(encoding='utf-8'))) + + def test_selected_production_recordings_are_the_approved_zira_catalog_not_just_zira_labels(self): + source = (ROOT / 'src/helpers/ui/ButtonVoiceData.h').read_text(encoding='utf-8') + self.assertEqual([line for line in source.splitlines() if line.startswith('// Voice:')], + ['// Voice: Microsoft Zira Desktop']) + arrays, clips = parse_header(source) + self.assertEqual(tuple(arrays), tuple(ZIRA_RECORDINGS)) + self.assertEqual(tuple(clips), tuple(ZIRA_RECORDINGS)) + for name, (fingerprint, samples) in ZIRA_RECORDINGS.items(): + with self.subTest(recording=name): + self.assertEqual(hashlib.sha256(arrays[name]).hexdigest(), fingerprint) + self.assertEqual(clips[name], (name, name, samples, 8000)) + + def assert_x1_only_recordings_are_guarded(self, source): + start = source.index('#ifdef HAS_DRV2605') + end = source.index('#endif', start) + self.assertLess(source.index('restartingClip'), start) + for name, _ in CATALOG[10:]: + self.assertLess(start, source.index(name+'Data')) + self.assertLess(source.index(name+'Clip'), end) + + def test_changed_source_wav_replaces_only_its_matching_clip(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + self.fixtures(directory) + output = directory / "selected.h" + result = self.generate(directory, output) + self.assertEqual(result.returncode, 0, result.stderr) + previous, previous_clips = parse_header(output.read_text(encoding="utf-8")) + write_wav(directory / "ready.wav", [1000, -1000] * 16) + result = self.generate(directory, output) + self.assertEqual(result.returncode, 0, result.stderr) + current, current_clips = parse_header(output.read_text(encoding="utf-8")) + self.assertNotEqual(current["ready"], previous["ready"]) + self.assertEqual(current_clips["ready"], ("ready", "ready", 32, 8000)) + for name, _ in CATALOG[1:]: + self.assertEqual(current[name], previous[name]) + self.assertEqual(current_clips[name], previous_clips[name]) + + def test_empty_and_overlong_clips_do_not_replace_existing_header(self): + for count in (0, 32001): + with self.subTest(samples=count), tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + self.fixtures(directory) + # A late failure must not leave a partially regenerated catalog. + write_wav(directory / (CATALOG[-1][0] + ".wav"), [0] * count) + output = directory / "selected.h" + output.write_bytes(b"existing selected header\n") + result = self.generate(directory, output) + self.assertNotEqual(result.returncode, 0) + self.assertIn("nonempty clip under four seconds", result.stderr) + self.assertEqual(output.read_bytes(), b"existing selected header\n") + + def test_four_second_boundary_is_accepted(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + self.fixtures(directory) + write_wav(directory / "restarting.wav", [0] * 32000) + output = directory / "boundary.h" + result = self.generate(directory, output) + self.assertEqual(result.returncode, 0, result.stderr) + arrays, clips = parse_header(output.read_text(encoding="utf-8")) + self.assertEqual(len(arrays["restarting"]), 16000) + self.assertEqual(clips["restarting"][2:], (32000, 8000)) + + def test_wrong_wav_formats_and_missing_catalog_clip_preserve_header(self): + for format_options in ({"rate": 16000}, {"channels": 2}, {"width": 1}, None): + with self.subTest(format=format_options), tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + self.fixtures(directory) + wav = directory / "restarting.wav" + if format_options is None: + wav.unlink() + else: + write_wav(wav, [0] * 32, **format_options) + output = directory / "selected.h" + output.write_bytes(b"selected header\n") + result = self.generate(directory, output) + self.assertNotEqual(result.returncode, 0) + if format_options is not None: + self.assertIn("Expected mono 16-bit PCM at 8000 Hz", result.stderr) + self.assertEqual(output.read_bytes(), b"selected header\n") + + def test_powershell_and_encoder_have_the_same_fixed_phrase_catalog(self): + source = SYNTHESIZER.read_text(encoding="utf-8") + body = source.split("$buttonPhrases = [ordered]@{", 1)[1].split("}", 1)[0] + self.assertEqual(tuple(re.findall(r"(\w+) = '([^']+)'", body)), CATALOG) + self.assertIn("[string]$Voice = 'Microsoft Zira Desktop'", source) + self.assertIn("$buttonVoice.SelectVoice($Voice)", source) + invocation = next(line for line in source.splitlines() + if line.startswith('& python $buttonEncoder ')) + self.assertIn('--voice $Voice', invocation) + self.assertIn("$buttonVoices -notcontains $Voice", source) + self.assertIn("$buttonVoice.Rate = -1", source) + self.assertIn("acompressor=threshold=0.08:ratio=6", source) + self.assertIn("aresample=8000,alimiter=limit=0.12:level=disabled", source) + + +@unittest.skipUnless(POWERSHELL, "PowerShell is needed for synthesis plan tests") +class PlanTests(unittest.TestCase): + def plan(self, directory=None, header=None, *arguments): + targets = [] + if directory is not None: + targets += ["-OutputDirectory", str(directory)] + if header is not None: + targets += ["-OutputHeader", str(header)] + return subprocess.run( + [POWERSHELL, "-NoProfile", "-NonInteractive", "-File", str(SYNTHESIZER), + *targets, *arguments, "-WhatIf", "-Verbose"], cwd=ROOT, capture_output=True, + text=True, timeout=30, + ) + + def test_defaults_keep_zira_and_the_selected_production_header(self): + result = self.plan() + self.assertEqual(result.returncode, 0, result.stderr) + self.assertIn("Synthesize and encode Microsoft Zira Desktop button confirmations", result.stdout) + self.assertIn(str(ROOT / "src/helpers/ui/ButtonVoiceData.h"), result.stdout) + + def test_whatif_creates_neither_audio_directory_nor_header_directory(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) / "audio" + header = Path(temporary) / "headers" / "button.h" + result = self.plan(directory, header) + self.assertEqual(result.returncode, 0, result.stderr) + self.assertIn("Synthesize and encode Microsoft Zira Desktop button confirmations", result.stdout) + self.assertIn(str(header), result.stdout) + self.assertFalse(directory.exists()) + self.assertFalse(header.parent.exists()) + + def test_whatif_does_not_overwrite_existing_header(self): + for voice in ("Microsoft Mark", "Microsoft Zira Desktop"): + with self.subTest(voice=voice), tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) / "audio" + header = Path(temporary) / "button.h" + header.write_bytes(b"selected prerecorded catalog\n") + result = self.plan(directory, header, "-Voice", voice) + self.assertEqual(result.returncode, 0, result.stderr) + self.assertIn(f"Synthesize and encode {voice} button confirmations", result.stdout) + self.assertEqual(header.read_bytes(), b"selected prerecorded catalog\n") + self.assertFalse(directory.exists()) + + def test_onlymissing_whatif_preserves_existing_recordings_and_header(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + header = directory / "selected.h" + recording = directory / "soundOff.wav" + header.write_bytes(b"selected prerecorded catalog\n") + write_wav(recording, [0, 1, -1, 2, -2]) + original = recording.read_bytes() + result = self.plan(directory, header, "-OnlyMissing") + self.assertEqual(result.returncode, 0, result.stderr) + self.assertEqual(recording.read_bytes(), original) + self.assertEqual(header.read_bytes(), b"selected prerecorded catalog\n") + self.assertFalse((directory / "alertsSilent.wav").exists()) + + def test_mark_variant_with_explicit_header_plans_without_writes(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) / "mark" + header = Path(temporary) / "headers" / "mark.h" + result = self.plan(directory, header, "-Voice", "Microsoft Mark") + self.assertEqual(result.returncode, 0, result.stderr) + self.assertIn("Synthesize and encode Microsoft Mark button confirmations", result.stdout) + self.assertIn(str(header), result.stdout) + self.assertFalse(directory.exists()) + self.assertFalse(header.parent.exists()) + + def test_non_default_voice_requires_an_explicit_header(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) / "mark" + result = self.plan(directory, None, "-Voice", "Microsoft Mark") + self.assertNotEqual(result.returncode, 0) + self.assertIn("Voice variants require an explicit -OutputHeader", result.stderr) + self.assertFalse(directory.exists()) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/test_button_voice_preview.py b/test/test_button_voice_preview.py new file mode 100644 index 000000000..6887aeb61 --- /dev/null +++ b/test/test_button_voice_preview.py @@ -0,0 +1,199 @@ +"""Run the production laboratory audio-preview dispatch without any hardware actions.""" +from pathlib import Path +import shutil +import subprocess +import tempfile +import unittest + +from test_radio_receive_contract import method + +ROOT = Path(__file__).resolve().parents[1] +COMPILER = shutil.which("g++") +SIGNATURE = "bool UITask::handleButtonAudioTest(const char* command, char* reply, size_t size)" + +STUBS = r''' +#include +#include +#include +#include +#include +#include +#define PIN_USER_BTN 6 +struct Button { + unsigned calls=0; + bool injectPresses(uint8_t,uint32_t){++calls;return true;} +}; +struct Buzzer { + bool quiet=true,playing=true,available=true; + unsigned calls=0,status_calls=0,gain_calls=0; + ButtonVoicePrompt last=ButtonVoicePrompt::Ready; + bool allow_quiet=false; + bool speakButton(ButtonVoicePrompt prompt,bool allowQuiet=false) { + ++calls;last=prompt;allow_quiet=allowQuiet; + if(!available)return false; + playing=true;return true; + } + bool voiceGain(unsigned){++gain_calls;return true;} + void voiceStatus(char* reply,size_t size){++status_calls;snprintf(reply,size,"voice stub");} +}; +struct UITask { + Button button; + Button* _userButton=&button; +#ifdef PIN_BUZZER + Buzzer buzzer; +#endif +#if defined(PIN_BUZZER) && MESH_GPS_VOICE + bool _shutdown_pending=false; +#endif + // No button/action/persistence APIs exist in this fixture: preview code must + // compile and execute without calling any of those real-world operations. + unsigned settings_marker=12345; +#ifdef MESH_BUTTON_AUDIO_HIL + bool handleButtonAudioTest(const char* command,char* reply,size_t size); +#endif +}; +''' + +ENABLED_MAIN = r''' +int main(){ + UITask ui;char reply[180]; + struct Mapping {const char* name;ButtonVoicePrompt prompt;}; + const Mapping mappings[]={ + {"ready",ButtonVoicePrompt::Ready}, + {"notificationCleared",ButtonVoicePrompt::NotificationCleared}, + {"advertQueued",ButtonVoicePrompt::AdvertQueued}, + {"advertFailed",ButtonVoicePrompt::AdvertFailed}, + {"soundOn",ButtonVoicePrompt::SoundOn}, + {"soundOff",ButtonVoicePrompt::SoundOff}, + {"gpsOn",ButtonVoicePrompt::GpsOn}, + {"gpsOff",ButtonVoicePrompt::GpsOff}, + {"actionFailed",ButtonVoicePrompt::ActionFailed}, + {"usbSetup",ButtonVoicePrompt::UsbSetup}, + {"shuttingDown",ButtonVoicePrompt::ShuttingDown}, + {"restarting",ButtonVoicePrompt::Restarting}, +#ifdef HAS_DRV2605 + {"alertsSoundVibration",ButtonVoicePrompt::AlertsSoundVibration}, + {"alertsSoundOnly",ButtonVoicePrompt::AlertsSoundOnly}, + {"alertsVibrationOnly",ButtonVoicePrompt::AlertsVibrationOnly}, + {"alertsSilent",ButtonVoicePrompt::AlertsSilent}, +#endif + }; + for(const auto& mapping:mappings){ + auto calls=ui.buzzer.calls; + std::string command=std::string("hil voice play ")+mapping.name; + assert(ui.handleButtonAudioTest(command.c_str(),reply,sizeof(reply))); + assert(std::string(reply)==std::string("OK - preview only: ")+mapping.name); + assert(ui.buzzer.calls==calls+1&&ui.buzzer.last==mapping.prompt); + assert(ui.buzzer.allow_quiet&&ui.buzzer.quiet&&ui.buzzer.playing); + assert(!ui._shutdown_pending&&ui.settings_marker==12345&&ui.button.calls==0); + } +#ifndef HAS_DRV2605 + // Other screenless boards omit the X1-only recordings and reject their + // preview names before changing any currently playing confirmation. + for(const char* name:{"alertsSoundVibration","alertsSoundOnly","alertsVibrationOnly","alertsSilent"}){ + auto calls=ui.buzzer.calls;auto last=ui.buzzer.last; + std::string command=std::string("hil voice play ")+name; + assert(ui.handleButtonAudioTest(command.c_str(),reply,sizeof(reply))); + assert(std::string(reply)=="Error: unknown voice preview name"); + assert(ui.buzzer.calls==calls&&ui.buzzer.last==last&&ui.buzzer.playing); + } +#endif + // Unknown/case-mismatched/extended names may not preempt active playback. + for(const char* name:{"","unknown","Ready","soundOn extra","shuttingdown"}){ + auto calls=ui.buzzer.calls;auto last=ui.buzzer.last; + std::string command=std::string("hil voice play ")+name; + assert(ui.handleButtonAudioTest(command.c_str(),reply,sizeof(reply))); + assert(std::string(reply)=="Error: unknown voice preview name"); + assert(ui.buzzer.calls==calls&&ui.buzzer.last==last&&ui.buzzer.playing); + } + ui._shutdown_pending=true; + for(const auto& mapping:mappings){ + auto calls=ui.buzzer.calls;auto last=ui.buzzer.last; + std::string command=std::string("hil voice play ")+mapping.name; + assert(ui.handleButtonAudioTest(command.c_str(),reply,sizeof(reply))); + assert(std::string(reply)=="Error: shutdown pending; preview refused"); + assert(ui.buzzer.calls==calls&&ui.buzzer.last==last&&ui.buzzer.playing); + assert(ui._shutdown_pending&&ui.settings_marker==12345&&ui.button.calls==0); + } + ui._shutdown_pending=false;ui.buzzer.available=false; + assert(ui.handleButtonAudioTest("hil voice play ready",reply,sizeof(reply))); + assert(std::string(reply)=="Error: voice preview unavailable"); + assert(ui.buzzer.quiet&&!ui._shutdown_pending&&ui.settings_marker==12345); + ui.buzzer.available=true; + char tiny[12];memset(tiny,'x',sizeof(tiny)); + assert(ui.handleButtonAudioTest("hil voice play restarting",tiny,9)); + assert(tiny[8]==0&&tiny[9]=='x'&&tiny[10]=='x'&&tiny[11]=='x'); + char zero='x'; + assert(ui.handleButtonAudioTest("hil voice play ready",&zero,0)&&zero=='x'); + // Existing laboratory commands and unrelated command routing stay intact. + assert(ui.handleButtonAudioTest("hil voice gain 8",reply,sizeof(reply))); + assert(ui.buzzer.gain_calls==1&&std::string(reply)=="OK - speech gain 8"); + assert(ui.handleButtonAudioTest("hil voice status",reply,sizeof(reply))); + assert(ui.buzzer.status_calls==1&&std::string(reply)=="voice stub"); + assert(!ui.handleButtonAudioTest("get gps",reply,sizeof(reply))); +} +''' + +DISABLED_MAIN = r''' +int main(){ + UITask ui;char reply[180]; + assert(ui.handleButtonAudioTest("hil voice play shuttingDown",reply,sizeof(reply))); + assert(std::string(reply)=="Error: voice preview unsupported"); + assert(ui.settings_marker==12345&&ui.button.calls==0); +#ifdef PIN_BUZZER + assert(ui.buzzer.calls==0&&ui.buzzer.quiet&&ui.buzzer.playing); +#endif +} +''' + + +@unittest.skipUnless(COMPILER, "A native C++ compiler is needed for preview dispatch tests") +class Tests(unittest.TestCase): + def build(self, flags, main): + source = (ROOT / "examples/companion_radio/ui-orig/UITask.cpp").read_text() + handler = method(source, SIGNATURE) + # Keep the actual production method's outer laboratory-only gate. + start = source.index(SIGNATURE) + self.assertEqual(source[:start].rstrip().splitlines()[-1], "#ifdef MESH_BUTTON_AUDIO_HIL") + end = start + len(handler) + self.assertTrue(source[end:].lstrip().startswith("#endif")) + unit = (flags + STUBS + "\n#ifdef MESH_BUTTON_AUDIO_HIL\n" + + handler + "\n#endif\n" + main) + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + path = directory / "preview.cpp" + binary = directory / "preview" + path.write_text(unit) + subprocess.run( + [COMPILER, "-std=c++17", "-Wall", "-Wextra", "-Werror", + "-I" + str(ROOT / "src"), str(path), "-o", str(binary)], + check=True, timeout=30, + ) + subprocess.run([str(binary)], check=True, timeout=30) + + def test_all_prompt_previews_are_courtesy_audio_only_and_reject_preemption(self): + self.build( + "#include \n#define MESH_BUTTON_AUDIO_HIL 1\n" + "#define PIN_BUZZER 25\n#define HAS_DRV2605 1\n#define MESH_GPS_VOICE 1\n", ENABLED_MAIN) + + def test_non_vibrating_board_omits_and_rejects_x1_only_mode_previews(self): + self.build( + "#include \n#define MESH_BUTTON_AUDIO_HIL 1\n" + "#define PIN_BUZZER 21\n#define MESH_GPS_VOICE 1\n", ENABLED_MAIN) + + def test_voice_disabled_build_rejects_preview_without_preempting(self): + self.build( + "#define MESH_BUTTON_AUDIO_HIL 1\n#define PIN_BUZZER 25\n" + "#define MESH_GPS_VOICE 0\n", DISABLED_MAIN) + + def test_no_buzzer_build_rejects_preview(self): + self.build("#define MESH_BUTTON_AUDIO_HIL 1\n#define MESH_GPS_VOICE 0\n", DISABLED_MAIN) + + def test_production_build_has_no_preview_handler(self): + self.build( + "#define PIN_BUZZER 25\n#define MESH_GPS_VOICE 1\n", + "int main(){UITask ui;assert(ui.settings_marker==12345);}\n") + + +if __name__ == "__main__": + unittest.main() diff --git a/test/test_g726_voice.py b/test/test_g726_voice.py new file mode 100644 index 000000000..cc30239f6 --- /dev/null +++ b/test/test_g726_voice.py @@ -0,0 +1,294 @@ +"""Exercise opt-in G.726 speech against independent FFmpeg MSB-packed vectors.""" +from pathlib import Path +import hashlib +import json +import os +import shutil +import struct +import subprocess +import tempfile +import unittest + +import test_gps_voice_buttons as shared +from test_button_voice_generator import ZIRA_RECORDINGS +from test_gps_voice_generator import ZIRA_GPS_RECORDINGS + +ROOT = Path(__file__).resolve().parents[1] +CC = shutil.which('gcc') +CXX = shutil.which('g++') +DECODER = ROOT / 'src/helpers/ui/g726/g726_decoder.c' +SANITIZERS = (['-fsanitize=address,undefined', '-fno-omit-frame-pointer'] + if os.environ.get('MESH_G726_TEST_SANITIZERS') == '1' else []) + +# FFmpeg 7.1 g726 encoder/decoder, 8 kHz mono, continuous MSB-first packing. +# Input: 149 samples of int(23000*sin(i*.43)+7000*sin(i*1.97)). The reference +# PCM below is pinned, not computed with the decoder being tested. Odd sample +# counts exercise both cross-byte extraction and ignored final padding bits. +VECTORS = { + 16: ( + '1555aaae557fafd05c2fa3d41cebf7170be8f4133aedc41ffaf1d70ee83113caf9c402fa3d00', + (12,60,68,80,100,120,144,192,-152,-260,-460,-808,-1348,-2240,-1496,-3228, + 2668,6388,11088,18032,28296,3608,-2328,-5448,-17708,-30576,-21068,-16732, + -13524,7960,9392,10368,19852,31136,7272,9872,9056,-11444,-11928,-10604, + -19392,-31324,-7528,-9496,-9344,11660,29504,21868,17484,28932,6588,6040, + -2032,-15800,-30028,-23620,-19428,-15560,8012,1476,7584,18856,30580,8036, + 11692,10804,-11724,-14448,-12284,-20856,32136,-8856,-9784,-9688,12472, + 15444,12360,21112,18280,4004,3612,-1752,-11740,-20788,-16104,-24696, + -20612,7188,-204,8240,23980,20804,14996,23660,8108,-3212,-8576,-10660, + -18848,-25496,-18976,-15376,-5852,10232,7664,20152,-32364,13088,10528, + 10836,-900,-16984,-15196,-22620,28652,-15884,1424,-152,8760,23344,17788, + 21364,20676,8416,-2200,-2692,-13772,-24704,-19472,-14280,-21680,4836, + 4692,9024,25744,25352,17892,15096,11768,-7900,-14896,-14800,-21052, + -29392,-11948,-6336,-6580,11280,18152), + ), + 24: ( + 'edb6db92493e6d25ef976a976b93679bfcd7677f2fb972d7467d37a512cf3a6d39a9f2bd367d4aed72adf29d93e96e65f6afdae8dda5f732', + (0,60,76,92,108,132,180,252,-272,-476,-908,-1840,-3640,-7076,-1780,-3756, + 6724,16012,19764,21560,22432,8192,-8500,-3184,-18772,-24144,-17696, + -14340,-18324,4024,13468,6724,19724,25136,11348,10740,9836,-5588, + -19216,-9292,-28780,-23492,-10576,-4544,-6324,13428,24408,12108,27792, + 23912,2564,-912,-1384,-18568,-27700,-13868,-18952,-17316,3560,5296, + 7024,18520,25224,12844,15316,13484,-10176,-10292,-11676,-26980,-26004, + -12020,-16696,-4148,14284,17648,15116,22948,21032,8440,5108,-2084, + -17480,-21536,-18780,-25992,-16528,2392,-3592,9136,29948,21828,17336, + 23512,13388,-9504,-7892,-12828,-27144,-19100,-13100,-17900,-5200, + 11896,11460,20468,30592,19264,10800,12696,-3676,-18696,-14372,-20972, + -30060,-11752,-3936,-5604,8180,25072,17120,19576,26832,9028,-3872, + -1548,-15656,-28576,-16560,-15880,-21400,204,9884,6276,17700,27396, + 14016,12568,13016,-5332,-15028,-13156,-20244,-25892,-13184,-9964, + -9684,11280,23016), + ), +} + +PREAMBLE = r''' +#include +#include +#include +#include +#include +#include +#include +#define PIN_BUZZER 25 +#include +uint32_t now_ms=0; +using namespace mesh::audio; +''' + +DECODE_MAIN = r''' +int main(){ + constexpr auto codec=VoiceCodec::G726@RATE@; + constexpr unsigned bits=@BITS@; + const uint8_t data[]={@DATA@}; + const int16_t expected[]={@PCM@}; + constexpr unsigned count=sizeof(expected)/sizeof(expected[0]); + const VoiceClip full{data,sizeof(data),count,8000,codec}; + assert(full.valid()&&full.bits()==bits); + assert(full.requiredBytes(count)==sizeof(data)); + VoiceDecoder decoder; + auto check=[&](VoiceClip clip,unsigned samples){ + decoder.begin(clip);assert(decoder.position()==0); + for(unsigned i=0;i padding(data,data+sizeof(data)); + const unsigned unused=(8-(count*bits)%8)%8; + assert(unused);padding.back()^=(1u< bounded(data,data+bytes); + VoiceClip short_clip{bounded.data(),bytes,count,8000,codec}; + assert(!short_clip.valid());check(short_clip,static_cast(bytes*8/bits)); + } + check({nullptr,sizeof(data),count,8000,codec},0); + check({data,sizeof(data),0,8000,codec},0); + check({data,0,count,8000,codec},0); + VoiceClip huge{data,sizeof(data)-1,std::numeric_limits::max(),8000,codec}; + assert(!huge.valid());check(huge,static_cast((sizeof(data)-1)*8/bits)); + VoiceClip all_bytes{data,std::numeric_limits::max(), + std::numeric_limits::max(),8000,codec}; + assert(all_bytes.requiredBytes(all_bytes.samples)== + (static_cast(all_bytes.samples)*bits+7)/8); + assert(all_bytes.valid()); // Validation only: actual pointer length is caller-owned. + auto other=codec==VoiceCodec::G72616?VoiceCodec::G72624:VoiceCodec::G72616; + for(auto invalid:{other,static_cast(255)}){ + VoiceClip bad{data,sizeof(data),count,8000,invalid}; + assert(!bad.valid());check(bad,0); + } + assert(!VoiceClip(data,sizeof(data),count,16000,codec).valid()); + // IMA remains selectable in an experiment, with its original 4-argument API. + const uint8_t ima[]={0x77}; + VoiceClip original{ima,sizeof(ima),2};assert(original.codec==VoiceCodec::Ima&&original.valid()); + decoder.begin(original);assert(decoder.next()==11&&decoder.next()==41&&decoder.done()); + check(full,count);decoder.begin(original);assert(decoder.next()==11); +} +''' + +PLAYER_MAIN = r''' +int main(){ + constexpr auto codec=VoiceCodec::G726@RATE@; + const uint8_t data[]={@DATA@}; + const int16_t expected[]={@PCM@}; + constexpr unsigned count=sizeof(expected)/sizeof(expected[0]); + GpsVoicePlayer player; + assert(player.setGain(2)); + for(unsigned n:{1u,3u,31u,32u,33u,63u,64u,65u,count}){ + VoiceClip clip{data,sizeof(data),n,8000,codec}; + assert(player.start(clip)&&player.active()&&player.playing()); + assert(HwPWM3.owned&&HwPWM3.bound_pin==PIN_BUZZER&&irq_enabled); + assert(registers.COUNTERTOP==500&®isters.SEQ[0].REFRESH==0); + VoiceDecoder reference;reference.begin(clip); + VoiceInterpolator reconstruction;reconstruction.begin(); + for(unsigned i=0;i<2;++i){ + auto values=reinterpret_cast(registers.SEQ[i].PTR); + assert(registers.SEQ[i].CNT==128); + for(unsigned j=0;j<128;++j){ + int32_t pcm=reconstruction.next(reference)*2; + if(pcm>32767)pcm=32767; + if(pcm < -32768)pcm=-32768; + assert(values[j]==(0x8000|static_cast((pcm+32768)*500/65536))); + } + } + unsigned sequence=0,events=0; + while(player.playing()){ + assert(++events<100);registers.EVENTS_SEQEND[sequence]=1;player.interrupt();sequence^=1; + } + assert(player.played()==n&&events==(n*4+127)/128&&player.active()); + player.service();assert(!player.active()&&!HwPWM3.owned&&!HwPWM3.pin&&!irq_enabled); + assert(!registers.ENABLE&&pin_states[PIN_BUZZER]==LOW); + } + assert(player.started()==9&&player.completed()==9&&player.cancelled()==0); + VoiceClip full{data,sizeof(data),count,8000,codec}; + assert(player.start(full));player.stop(); + assert(player.cancelled()==1&&!HwPWM3.owned&&!irq_enabled); + assert(!player.start({data,sizeof(data)-1,count,8000,codec})); + assert(!player.start({data,sizeof(data),count,16000,codec})); + assert(!player.start({nullptr,sizeof(data),count,8000,codec})); + assert(!player.start({data,sizeof(data),0,8000,codec})); + assert(!player.start({data,sizeof(data),count,8000,static_cast(255)})); + auto other=codec==VoiceCodec::G72616?VoiceCodec::G72624:VoiceCodec::G72616; + assert(!player.start({data,sizeof(data),count,8000,other})); + HwPWM3.reject=true;assert(!player.start(full)); + assert(!player.active()&&!HwPWM3.owned&&!irq_enabled&&!registers.ENABLE); +} +''' + + +@unittest.skipUnless(CC and CXX, 'Native C and C++ compilers are required') +class Tests(unittest.TestCase): + def build(self, source, bitrate, *, run=True, expected_error=None): + with tempfile.TemporaryDirectory() as temporary: + directory=Path(temporary) + (directory/'Arduino.h').write_text(shared.ARDUINO) + (directory/'HardwarePWM.h').write_text(shared.PWM) + (directory/'NonBlockingRtttl.h').write_text(shared.RTTTL) + path=directory/'test.cpp';path.write_text(source) + binary=directory/'test' + flags=[] if bitrate is None else [f'-DMESH_GPS_VOICE_G726_BITRATE={bitrate}', + '-DMESH_BUTTON_AUDIO_HIL=1'] + if expected_error is not None: + result=subprocess.run([CXX,'-std=c++17','-I'+str(ROOT/'src'), + '-c',str(path),'-o',str(directory/'gate.o')], + capture_output=True,text=True,timeout=30) + self.assertNotEqual(result.returncode,0) + self.assertIn(expected_error,result.stderr) + return + objects=[] + if bitrate is not None: + obj=directory/'decoder.o' + subprocess.run([CC,'-std=c99','-Wall','-Wextra','-Werror',*SANITIZERS,*flags, + '-I'+str(ROOT/'src'),'-c',str(DECODER),'-o',str(obj)], + check=True,timeout=30) + objects.append(str(obj)) + subprocess.run([CXX,'-std=c++17','-Wall','-Wextra','-Werror',*SANITIZERS,*flags, + '-I'+str(directory),'-I'+str(ROOT/'src'),'-I'+str(ROOT), + str(path),*objects,'-o',str(binary)],check=True,timeout=30) + if run:subprocess.run([str(binary)],check=True,timeout=30) + + def fixture(self, source, bitrate): + data,pcm=VECTORS[bitrate] + return (PREAMBLE+source.replace('@RATE@',str(bitrate)) + .replace('@BITS@',str(bitrate//8)) + .replace('@DATA@',','.join('0x'+data[i:i+2] for i in range(0,len(data),2))) + .replace('@PCM@',','.join(map(str,pcm)))) + + def test_msb_reference_vectors_reset_padding_odd_lengths_and_bounds(self): + for bitrate in VECTORS: + with self.subTest(bitrate=bitrate):self.build(self.fixture(DECODE_MAIN,bitrate),bitrate) + + def test_g726_shares_existing_pwm_interpolation_and_dma_lifecycle(self): + for bitrate in VECTORS: + with self.subTest(bitrate=bitrate):self.build(self.fixture(PLAYER_MAIN,bitrate),bitrate) + + def test_invalid_bitrates_or_missing_laboratory_gate_cannot_compile(self): + for flags,error in ( + ('#define MESH_GPS_VOICE_G726_BITRATE 16\n','opt-in MESH_BUTTON_AUDIO_HIL'), + ('#define MESH_BUTTON_AUDIO_HIL 0\n#define MESH_GPS_VOICE_G726_BITRATE 24\n', + 'opt-in MESH_BUTTON_AUDIO_HIL'), + *[(f'#define MESH_BUTTON_AUDIO_HIL 1\n#define MESH_GPS_VOICE_G726_BITRATE {rate}\n', + 'bitrate must be 16 or 24') for rate in (0,8,32,40)], + ): + with self.subTest(flags=flags): + self.build(flags+'#include \n',None,expected_error=error) + + def test_default_ima_has_no_experimental_decoder_dependency(self): + self.build(PREAMBLE+r''' +int main(){ + const uint8_t data[]={0x77};VoiceClip clip{data,sizeof(data),2}; + VoiceDecoder decoder;decoder.begin(clip); + assert(decoder.next()==11&&decoder.next()==41&&decoder.done()); +} +''',None) + + +REFERENCE_DIR = Path(os.environ.get('G726_REFERENCE_DIR', + str(ROOT/'out/gps-voice/g726-test'))) + + +@unittest.skipUnless(CC and CXX and (REFERENCE_DIR/'report.json').is_file(), + 'Optional independently decoded voice-catalog fixtures are unavailable') +class LocalVoiceCatalogTests(unittest.TestCase): + build = Tests.build + + def test_all_32_actual_zira_g726_recordings_match_independent_ffmpeg_pcm(self): + report=json.loads((REFERENCE_DIR/'report.json').read_text(encoding='utf-8')) + expected_samples={name:recording[1] for name,recording in + {**ZIRA_RECORDINGS,**ZIRA_GPS_RECORDINGS}.items()} + self.assertEqual({clip['clip'] for clip in report['clips']}, set(expected_samples)) + for bitrate in (16,24): + statements=[] + for clip in report['clips']: + name=clip['clip'];samples=clip['samples'] + self.assertEqual(samples,expected_samples[name]) + data=(REFERENCE_DIR/f'{name}.g726{bitrate}.be').read_bytes() + pcm_bytes=(REFERENCE_DIR/f'{name}.g726{bitrate}.decoded8k.s16le').read_bytes() + self.assertEqual(len(data),(samples*(bitrate//8)+7)//8) + self.assertEqual(len(pcm_bytes),samples*2) + self.assertEqual(hashlib.sha256(data).hexdigest(), + clip['codecs'][f'g726{bitrate}']['payload_sha256']) + pcm=struct.unpack(f'<{samples}h',pcm_bytes) + statements.append('''{ + const uint8_t data[]={'''+','.join(map(str,data))+'''}; + const int16_t expected[]={'''+','.join(map(str,pcm))+'''}; + VoiceClip clip{data,sizeof(data),'''+str(samples)+''',8000,VoiceCodec::G726'''+str(bitrate)+'''}; + assert(clip.valid());VoiceDecoder decoder;decoder.begin(clip); + for(unsigned i=0;i +#include +#include +#include +#define LOW 0 +#define HIGH 1 +#define OUTPUT 1 +extern uint32_t now_ms; +inline uint32_t millis(){return now_ms;} +inline int digitalRead(int){return LOW;} +inline int analogRead(int){return 0;} +inline int pin_states[64]={}; +inline unsigned pin_writes[64]={}; +inline void digitalWrite(int pin,int value){pin_states[pin]=value;++pin_writes[pin];} +inline void pinMode(int,int){} +''' + +RTTTL = r''' +#pragma once +#include +namespace rtttl { +static bool running=false; +static std::string melody; +static unsigned begins=0; +inline void begin(int,const char* song){melody=song;running=true;++begins;} +inline void stop(){running=false;} +inline bool done(){return !running;} +inline bool isPlaying(){return running;} +inline void play(){} +inline void finish(){running=false;} +} +''' + +PWM = r''' +#pragma once +struct Sequence { uintptr_t PTR=0;uint32_t CNT=0,REFRESH=0,ENDDELAY=0; }; +struct Registers { + uint32_t INTENCLR=0,SHORTS=0,ENABLE=0,MODE=0,COUNTERTOP=0,PRESCALER=0, + DECODER=0,LOOP=0,EVENTS_STOPPED=0,EVENTS_LOOPSDONE=0,INTENSET=0; + Sequence SEQ[2];uint32_t EVENTS_SEQEND[2]={},EVENTS_SEQSTARTED[2]={},TASKS_SEQSTART[2]={}; +}; +static Registers registers; +#define NRF_PWM3 (®isters) +#define PWM_MODE_UPDOWN_Up 0 +#define PWM_PRESCALER_PRESCALER_DIV_1 0 +#define PWM_DECODER_LOAD_Common 0 +#define PWM_SHORTS_LOOPSDONE_SEQSTART0_Msk 4 +#define PWM_INTENSET_SEQEND0_Msk 1 +#define PWM_INTENSET_SEQEND1_Msk 2 +#define PWM3_IRQn 45 +static bool irq_enabled=false; +inline void NVIC_DisableIRQ(int){irq_enabled=false;} +inline void NVIC_EnableIRQ(int){irq_enabled=true;} +inline void NVIC_ClearPendingIRQ(int){} +inline void NVIC_SetPriority(int,int){} +struct HardwarePWM { + bool owned=false,pin=false,reject=false; + int bound_pin=-1; + bool takeOwnership(uint32_t){if(owned||reject)return false;return owned=true;} + bool addPin(int value){bound_pin=value;return pin=true;} + void removePin(int){pin=false;bound_pin=-1;} + bool releaseOwnership(uint32_t){assert(!pin);owned=false;return true;} +}; +static HardwarePWM HwPWM3; +''' + +PLAYER = r''' +#include +#include +#define PIN_BUZZER 25 +#define MESH_BUTTON_AUDIO_HIL 1 +#include +#include +uint32_t now_ms=0; +int main(){ + using namespace mesh::audio; + VoiceDecoder decoder; + const uint8_t short_data[]={0x77}; + decoder.begin({short_data,1,1000}); + assert(decoder.next()==11);assert(decoder.next()==41); + assert(decoder.done()&&decoder.next()==0); + decoder.begin({nullptr,1,2});assert(decoder.done()); + const uint8_t negative_data[64]={0xff,0xff,0xff,0xff}; + for(auto clip:{gpsOnClip,gpsOffClip,VoiceClip{negative_data,sizeof(negative_data),128}, + VoiceClip{negative_data,sizeof(negative_data),128,16000}}){ + decoder.begin(clip); + unsigned count=0,nonzero=0; + while(!decoder.done()){nonzero+=decoder.next()!=0; ++count;} + assert(count==clip.samples&&nonzero>count/2); + } + GpsVoicePlayer player; + assert(player.gain()==8); + assert(!player.setGain(0)&&!player.setGain(9)); + assert(player.setGain(2)); + for(auto clip:{gpsOnClip,gpsOffClip,VoiceClip{negative_data,sizeof(negative_data),128}, + VoiceClip{negative_data,sizeof(negative_data),128,16000}}){ + assert(player.start(clip));assert(player.active()&&irq_enabled&&HwPWM3.owned&&HwPWM3.pin); + assert(!player.setGain(8)&&player.gain()==2); + assert(registers.COUNTERTOP==500&®isters.SEQ[0].REFRESH==0); + VoiceDecoder reference;reference.begin(clip); + VoiceInterpolator reconstruction;reconstruction.begin(clip.sample_rate); + for(unsigned i=0;i<2;++i){ + auto data=reinterpret_cast(registers.SEQ[i].PTR); + for(unsigned j=0;j32767)pcm=32767; + if(pcm < -32768)pcm=-32768; + assert((data[j]&0x7fff)==static_cast((pcm+32768)*500/65536)); + } + } + unsigned seq=0,events=0; + while(player.playing()){ + assert(++events<1000); + registers.EVENTS_SEQEND[seq]=1;player.interrupt();seq^=1; + } + assert(player.played()==clip.samples&&player.active()); + assert(events==(clip.samples*(32000/clip.sample_rate)+127)/128); + player.service();assert(!player.active()&&!HwPWM3.owned&&!HwPWM3.pin&&!irq_enabled&&!registers.ENABLE); + assert(pin_states[PIN_BUZZER]==LOW); + } + assert(player.started()==4&&player.completed()==4&&player.cancelled()==0); + assert(player.setGain(4)); + assert(player.start(gpsOnClip));player.stop(); + assert(player.cancelled()==1&&player.completed()==4); + HwPWM3.reject=true;assert(!player.start(gpsOnClip));assert(!irq_enabled); + assert(!player.start({short_data,1,3}));assert(!player.playing()); + assert(!player.start({short_data,1,2,12345})); +} +''' + +PLAYER_BINARY = r''' +#include +#define PIN_BUZZER 25 +#define MESH_BUTTON_AUDIO_HIL 1 +#define MESH_GPS_VOICE_BINARY_DRIVE 1 +#include +#include +uint32_t now_ms=0; +int main(){ + using namespace mesh::audio; + GpsVoicePlayer player; + for(unsigned repetition=0;repetition<2;++repetition){ + assert(player.start(gpsOnClip)); + assert(player.gain()==8&®isters.COUNTERTOP==250&®isters.SEQ[0].REFRESH==1); + VoiceDecoder decoder;decoder.begin(gpsOnClip); + VoiceInterpolator interpolator;interpolator.begin(); + bool high=false;unsigned transitions=0; + for(unsigned n=0;n<2;++n){ + auto values=reinterpret_cast(registers.SEQ[n].PTR); + for(unsigned i=0;i1024)high=true;else if(pcm < -1024)high=false; + transitions+=old!=high; + assert(values[i]==(0x8000|(high?250:0))); + } + } + assert(transitions>0); + player.stop();assert(!player.active()&&!registers.ENABLE&&!irq_enabled); + } + assert(player.cancelled()==2); + // Encoded silence is below the hysteresis band and does not chatter. + const uint8_t silence[64]={}; + assert(player.start({silence,sizeof(silence),128})); + auto values=reinterpret_cast(registers.SEQ[0].PTR); + for(unsigned i=0;i +#define PIN_BUZZER 25 +#define MESH_BUTTON_AUDIO_HIL 1 +#define MESH_GPS_VOICE_PDM_DRIVE 1 +#include +#include +uint32_t now_ms=0; +int main(){ + using namespace mesh::audio; + GpsVoicePlayer player; + assert(player.start(gpsOnClip)); + assert(player.gain()==8&®isters.COUNTERTOP==250&®isters.SEQ[0].REFRESH==0); + VoiceDecoder decoder;decoder.begin(gpsOnClip); + VoiceInterpolator interpolator;interpolator.begin(); + int32_t error=0,pcm=0; + unsigned transitions=0;bool old=false; + for(unsigned n=0;n<2;++n){ + auto values=reinterpret_cast(registers.SEQ[n].PTR); + for(unsigned i=0;i32767)pcm=32767; + if(pcm < -32768)pcm=-32768; + error+=pcm;bool high=error>=0;error-=high?32767:-32768; + assert(error>=-32768&&error<=32768); + assert(values[i]==(0x8000|(high?250:0))); + transitions+=old!=high;old=high; + } + } + assert(transitions>0); + unsigned seq=0,events=0; + while(player.playing()){ + assert(++events<1000);registers.EVENTS_SEQEND[seq]=1;player.interrupt();seq^=1; + } + assert(events==(gpsOnClip.samples*8+127)/128); + assert(player.played()==gpsOnClip.samples); + player.service();assert(!player.active()&&!registers.ENABLE&&!irq_enabled); +} +''' + +BUTTON = r''' +#include +#include +#include +#include +#include "examples/companion_radio/ui-orig/Button.h" +#define ENV_INCLUDE_GPS 1 +#define PIN_BUZZER 25 +#define MESH_DEBUG_PRINTLN(...) ((void)0) +uint32_t now_ms=0; +enum class UIEventType{ack}; +namespace mesh{namespace notify{enum{Sound=1};}} +struct CompanionNodePrefs{uint8_t gps_enabled=0,buzzer_quiet=1;}; +struct SensorManager{ + bool enabled=false; + bool available=true; + bool setSettingValue(const char*,const char* value){if(!available)return false;enabled=value[0]=='1';return true;} + const char* getSettingByKey(const char*){return available?(enabled?"1":"0"):nullptr;} +}; +static SensorManager sensors; +struct MyMesh{ + CompanionNodePrefs _prefs; bool save_ok=true;unsigned saves=0,adverts=0; + bool savePrefs(){++saves;return save_ok;} + template bool savePreference(T& p,T v){T old=p;p=v;if(savePrefs())return true;p=old;return false;} + void applyGpsPrefs(){sensors.setSettingValue("gps",_prefs.gps_enabled?"1":"0");} + bool setGpsEnabled(bool); + bool advert(){++adverts;return true;} + void setNotificationOutputMute(int,int){} +}; +static MyMesh the_mesh; +struct Buzzer{ + bool muted=true;unsigned spoken=0;bool last=false; + bool speakGps(bool value){if(!muted){++spoken;last=value;}return true;} + bool speakButton(ButtonVoicePrompt prompt,bool=false){ + if(prompt==ButtonVoicePrompt::GpsOn||prompt==ButtonVoicePrompt::GpsOff) + return speakGps(prompt==ButtonVoicePrompt::GpsOn); + return true; + } + bool isQuiet(){return muted;} + void quiet(bool q){muted=q;} +}; +struct UITask{ + SensorManager* _sensors=&sensors;CompanionNodePrefs* _node_prefs=&the_mesh._prefs; + Buzzer buzzer;char _alert[80]={};bool _need_refresh=false;unsigned acks=0; + void notify(UIEventType){++acks;} + void handleButtonDoublePress();void handleButtonTriplePress();void handleButtonQuadruplePress(); +}; +@METHODS@ +int main(){ + UITask ui;Button button(6,HIGH);button.begin(); + unsigned singles=0; + button.onShortPress([&]{++singles;}); + button.onDoublePress([&]{ui.handleButtonDoublePress();}); + button.onTriplePress([&]{ui.handleButtonTriplePress();}); + button.onQuadruplePress([&]{ui.handleButtonQuadruplePress();}); + auto run=[&](unsigned count){ + assert(button.injectPresses(count)); + assert(!button.injectPresses(count)); + uint32_t start=now_ms; + while(now_ms-start<3000){now_ms+=10;button.update();} + }; + run(1);assert(singles==1&&the_mesh.adverts==0&&the_mesh._prefs.gps_enabled==0); + run(2);assert(the_mesh.adverts==1&&the_mesh._prefs.gps_enabled==0); + // Multi-click actions do not turn an overlong held press into short clicks. + unsigned held=0;button.onLongPress([&]{++held;}); + assert(button.injectPresses(1,3500)); + for(unsigned i=0;i<500;++i){now_ms+=10;button.update();} + assert(held==1&&singles==1&&the_mesh.adverts==1); + run(3);assert(!ui.buzzer.isQuiet()&&!the_mesh._prefs.buzzer_quiet); + run(4);assert(sensors.enabled&&the_mesh._prefs.gps_enabled==1&&ui.buzzer.last); + run(4);assert(!sensors.enabled&&the_mesh._prefs.gps_enabled==0&&!ui.buzzer.last); + assert(ui.buzzer.spoken==2); + the_mesh.save_ok=false; + run(4);assert(!sensors.enabled&&the_mesh._prefs.gps_enabled==0); + assert(ui.buzzer.spoken==2&&strstr(ui._alert,"failed")); + the_mesh.save_ok=true;sensors.available=false; + run(4);assert(ui.buzzer.spoken==2); +} +''' + +BUZZER_SEQUENCE = r''' +#include +#include +#define PIN_BUZZER 25 +#define PIN_BUZZER_EN 37 +#define MESH_BUTTON_AUDIO_HIL 1 +#define MESH_GPS_VOICE 1 +#include +uint32_t now_ms=0; +int main(){ + genericBuzzer buzzer;buzzer.begin(); + char status[180]; + auto check=[&](const char* expected){buzzer.voiceStatus(status,sizeof(status));assert(strstr(status,expected));}; + auto finish_tone=[&]{ + rtttl::finish();buzzer.loop();assert(buzzer.isPlaying()); + now_ms+=99;buzzer.loop();assert(!registers.ENABLE); + ++now_ms;buzzer.loop(); + }; + auto finish_speech=[&]{ + unsigned seq=0,events=0; + while(registers.ENABLE){assert(++events<1000);registers.EVENTS_SEQEND[seq]=1;PWM3_IRQHandler();seq^=1;} + assert(buzzer.isPlaying());buzzer.loop();assert(!buzzer.isPlaying()); + }; + for(bool enabled:{true,false}){ + assert(buzzer.speakGps(enabled));assert(buzzer.isPlaying()); + assert(rtttl::melody==(enabled?"Startup:d=4,o=5,b=160:16c6,16e6,8g6":"Shutdown:d=4,o=5,b=100:8g5,16e5,16c5")); + assert(!registers.ENABLE);check("pending=1 tone=1"); + assert(!buzzer.voiceGain(8)); + now_ms+=500;buzzer.loop();assert(!registers.ENABLE); + finish_tone();assert(registers.ENABLE);check("pending=0 tone=0"); + finish_speech(); + } + check("started=2 completed=2 cancelled=0"); + // Muting cancels a tone, a queued pause, and active speech without restarting. + assert(buzzer.speakGps(true));buzzer.quiet(true);assert(!buzzer.isPlaying()); + now_ms+=1000;buzzer.loop();check("started=2 completed=2 cancelled=0"); + auto before=rtttl::begins;assert(buzzer.speakGps(false));assert(rtttl::begins==before); + buzzer.quiet(false);assert(buzzer.speakGps(false));rtttl::finish();buzzer.loop(); + buzzer.quiet(true);now_ms+=1000;buzzer.loop();assert(!buzzer.isPlaying()); + buzzer.quiet(false);assert(buzzer.speakGps(true)); + buzzer.playNotification("Alert:d=4,o=5,b=120:c");rtttl::finish(); + now_ms+=1000;buzzer.loop();assert(!buzzer.isPlaying());check("started=2 completed=2 cancelled=0"); + assert(buzzer.speakGps(true));finish_tone();buzzer.quiet(true); + assert(!buzzer.isPlaying());check("started=3 completed=2 cancelled=1"); + buzzer.quiet(false); + // The pause handles the millisecond counter wrapping and a busy PWM gracefully. + now_ms=0xfffffff0;assert(buzzer.speakGps(false));finish_tone();assert(registers.ENABLE); + finish_speech();check("started=4 completed=3 cancelled=1"); + HwPWM3.reject=true;assert(buzzer.speakGps(true));finish_tone();assert(!buzzer.isPlaying()); + check("started=4 completed=3 cancelled=1"); +} +''' + +BUZZER_TONES = r''' +#include +#define PIN_BUZZER 25 +#define MESH_GPS_VOICE 0 +#include +uint32_t now_ms=0; +int main(){ + genericBuzzer buzzer;buzzer.begin(); + assert(buzzer.speakGps(true));assert(buzzer.isPlaying()); + assert(rtttl::melody=="Startup:d=4,o=5,b=160:16c6,16e6,8g6"); + rtttl::finish();buzzer.loop();assert(!buzzer.isPlaying()); + assert(buzzer.speakGps(false)); + assert(rtttl::melody=="Shutdown:d=4,o=5,b=100:8g5,16e5,16c5"); + buzzer.quiet(true);assert(!buzzer.isPlaying()); + unsigned before=rtttl::begins;assert(buzzer.speakGps(true));assert(rtttl::begins==before); + buzzer.quiet(false); + for(auto prompt:{ButtonVoicePrompt::Ready,ButtonVoicePrompt::NotificationCleared, + ButtonVoicePrompt::AdvertQueued,ButtonVoicePrompt::AdvertFailed, + ButtonVoicePrompt::SoundOn,ButtonVoicePrompt::SoundOff, + ButtonVoicePrompt::ActionFailed,ButtonVoicePrompt::UsbSetup, + ButtonVoicePrompt::AlertsSoundVibration,ButtonVoicePrompt::AlertsSoundOnly, + ButtonVoicePrompt::AlertsVibrationOnly,ButtonVoicePrompt::AlertsSilent}){ + assert(buzzer.speakButton(prompt));assert(!buzzer.isPlaying()&&rtttl::begins==before); + } + assert(buzzer.speakGps(true));before=rtttl::begins; + assert(!buzzer.speakButton(static_cast(255))); + assert(buzzer.isPlaying()&&rtttl::begins==before); +} +''' + +class Tests(unittest.TestCase): + def test_reconstruction_suppresses_audible_sampling_images(self): + source=(ROOT/'src/helpers/ui/GpsVoice.h').read_text() + body=source.split('coefficients[4][16] = {',1)[1].split('};',1)[0] + rows=[[int(value) for value in row.split(',')] + for row in re.findall(r'\{([^{}]+)\}',body)] + self.assertEqual(len(rows),4) + for row in rows: + self.assertEqual(len(row),16) + self.assertEqual(sum(row),16384) + self.assertLess(32768*sum(abs(value) for value in row),2**31) + taps=[rows[phase][index] for index in range(16) for phase in range(4)] + def response(frequency): + value=sum(tap*cmath.exp(-2j*math.pi*frequency*i/32000) + for i,tap in enumerate(taps))/65536 + return 20*math.log10(abs(value)) + self.assertAlmostEqual(response(700),0,delta=0.02) + self.assertLess(response(4700),-65) + self.assertLess(response(7300),-65) + + def test_wideband_reconstruction_bounds_and_consonant_band(self): + source=(ROOT/'src/helpers/ui/GpsVoice.h').read_text() + body=source.split('wide_coefficients[2][16] = {',1)[1].split('};',1)[0] + rows=[[int(value) for value in row.split(',')] + for row in re.findall(r'\{([^{}]+)\}',body)] + self.assertEqual(len(rows),2) + for row in rows: + self.assertEqual(len(row),16) + self.assertEqual(sum(row),16384) + self.assertLess(32768*sum(abs(value) for value in row),2**31) + taps=[rows[phase][index] for index in range(16) for phase in range(2)] + def response(frequency): + value=sum(tap*cmath.exp(-2j*math.pi*frequency*i/32000) + for i,tap in enumerate(taps))/32768 + return 20*math.log10(abs(value)) + self.assertAlmostEqual(response(3000),0,delta=0.02) + self.assertGreater(response(6500),-2) + self.assertLess(response(10000),-45) + + def build(self, source, *, button=False, rtttl=False): + with tempfile.TemporaryDirectory() as temp: + path=Path(temp) + (path/'Arduino.h').write_text(ARDUINO) + (path/'HardwarePWM.h').write_text(PWM) + (path/'NonBlockingRtttl.h').write_text(RTTTL if rtttl else '#pragma once\n') + (path/'test.cpp').write_text(source) + binary=path/'test' + cmd=['g++','-std=c++17','-Wall','-Wextra','-Werror', + '-I'+str(path),'-I'+str(ROOT/'src'),'-I'+str(ROOT), + str(path/'test.cpp'),'-o',str(binary)] + if button: + cmd+=['-DMESH_BUTTON_AUDIO_HIL=1',str(ROOT/'examples/companion_radio/ui-orig/Button.cpp')] + subprocess.run(cmd,check=True) + subprocess.run([str(binary)],check=True) + + def test_decoder_and_dma_lifecycle(self): + self.build(PLAYER.replace('#include ','#include \n#include ')) + + def test_binary_acoustic_driver_hysteresis_and_reset(self): + self.build(PLAYER_BINARY) + + def test_density_acoustic_driver_bounds_and_sample_rate(self): + self.build(PLAYER_PDM) + source=PLAYER_PDM.replace('gpsOnClip', 'clip') + source=source.replace('GpsVoicePlayer player;', + 'GpsVoicePlayer player; VoiceClip clip{gpsOnClip.data,gpsOnClip.bytes,gpsOnClip.samples,16000};') + source=source.replace('interpolator.begin();','interpolator.begin(clip.sample_rate);') + source=source.replace('clip.samples*8','clip.samples*4') + self.build(source) + + def test_lower_carrier_acoustic_driver_preserves_sample_rate(self): + source=PLAYER.replace('#define MESH_BUTTON_AUDIO_HIL 1', + '#define MESH_BUTTON_AUDIO_HIL 1\n#define MESH_GPS_VOICE_PCM32_DRIVE 1') + self.build(source.replace('#include ','#include \n#include ')) + + def test_hil_can_compare_the_previous_carrier_without_changing_output_rate(self): + source=PLAYER.replace('#define MESH_BUTTON_AUDIO_HIL 1', + '#define MESH_BUTTON_AUDIO_HIL 1\n#define MESH_GPS_VOICE_PCM32_DRIVE 0') + source=source.replace('COUNTERTOP==500&®isters.SEQ[0].REFRESH==0', + 'COUNTERTOP==250&®isters.SEQ[0].REFRESH==1') + source=source.replace('<=500','<=250').replace('pcm+32768)*500','pcm+32768)*250') + self.build(source.replace('#include ','#include \n#include ')) + + def test_experimental_drive_flags_do_not_change_non_test_firmware(self): + source=PLAYER.replace('#define MESH_BUTTON_AUDIO_HIL 1', '@FLAGS@') + # The lab gain control is absent in non-test firmware. Keep the same + # waveform assertions at its default gain instead. + source=source.replace('assert(!player.setGain(0)&&!player.setGain(9));','') + source=source.replace('assert(player.setGain(2));','') + source=source.replace('assert(!player.setGain(8)&&player.gain()==2);','') + source=source.replace('reconstruction.next(reference)*2','reconstruction.next(reference)*8') + source=source.replace('assert(player.setGain(4));','') + source=source.replace('#include ','#include \n#include ') + for flags in ( + '#define MESH_GPS_VOICE_BINARY_DRIVE 1', + '#define MESH_GPS_VOICE_PDM_DRIVE 1', + '#define MESH_GPS_VOICE_PCM32_DRIVE 0', + '#define MESH_GPS_VOICE_BINARY_DRIVE 1\n#define MESH_GPS_VOICE_PDM_DRIVE 1\n#define MESH_GPS_VOICE_PCM32_DRIVE 0', + ): + with self.subTest(flags=flags): + self.build(source.replace('@FLAGS@', flags)) + + def test_direction_tones_finish_before_speech_and_cancellation(self): + self.build(BUZZER_SEQUENCE,rtttl=True) + + def test_direction_tones_without_speech(self): + self.build(BUZZER_TONES.replace('#include ', + '#include \n#include '),rtttl=True) + + def assert_voice_policy(self, flags, expected): + self.build(flags+'#include \n' + +f'static_assert(MESH_GPS_VOICE=={expected},"speech gating");\nint main(){{}}\n') + + def test_speech_defaults_to_all_screenless_nrf52_full_companions_only(self): + eligible = ('T1000_E', 'RAK_WISMESH_TAG', 'MESH_TRACKER_X1', + 'R1Neo', 'THINKNODE_M3') + full = '#define NRF52_PLATFORM\n#define COMPANION_RADIO_FULL 1\n#define PIN_BUZZER 25\n' + for board in eligible: + for laboratory in ('', '#define MESH_BUTTON_AUDIO_HIL\n'): + with self.subTest(board=board, laboratory=bool(laboratory)): + self.assert_voice_policy(full+f'#define {board}\n'+laboratory, 1) + # A buzzer on another board is not sufficient: screened boards and all + # Wio profiles retain their existing tones, even in a Full Companion. + for board in ('HELTEC_T1', 'MESHTINY', 'NANO_G2_ULTRA', + 'LILYGO_TECHO_CARD', 'THINKNODE_M1', 'THINKNODE_M8', + 'THINKNODE_M4', + 'WIO_TRACKER_L1', 'WIO_TRACKER_L1_1W', 'WIO_TRACKER_L1_EINK', + 'RAK_4631', 'UNKNOWN_BOARD'): + with self.subTest(excluded_board=board): + self.assert_voice_policy(full+f'#define {board}\n', 0) + self.assert_voice_policy(full, 0) + + def test_r1_neo_qspi_conflict_does_not_enable_voice_and_m4_copied_pins_are_removed(self): + self.assert_voice_policy('#define NRF52_PLATFORM\n#define COMPANION_RADIO_FULL 1\n' + '#define PIN_BUZZER 3\n#define R1Neo\n#define QSPIFLASH\n', 0) + m4 = (ROOT / 'variants/thinknode_m4/platformio.ini').read_text() + active = '\n'.join(line.strip() for line in m4.splitlines() + if not line.lstrip().startswith(';')) + self.assertNotRegex(active, r'-D\s+PIN_BUZZER=23\b') + self.assertNotRegex(active, r'-D\s+PIN_BUZZER_EN=36\b') + + def test_speech_requires_full_companion_nrf52_and_fitted_buzzer_and_allows_opt_out(self): + for board in ('T1000_E', 'RAK_WISMESH_TAG', 'MESH_TRACKER_X1', + 'R1Neo', 'THINKNODE_M3'): + base = f'#define {board}\n' + for case, flags in ( + ('no_nrf52', '#define COMPANION_RADIO_FULL 1\n#define PIN_BUZZER 25\n'), + ('full_disabled', '#define NRF52_PLATFORM\n#define COMPANION_RADIO_FULL 0\n#define PIN_BUZZER 25\n'), + ('non_companion', '#define NRF52_PLATFORM\n#define PIN_BUZZER 25\n'), + ('no_buzzer', '#define NRF52_PLATFORM\n#define COMPANION_RADIO_FULL 1\n'), + ('explicit_opt_out', '#define NRF52_PLATFORM\n#define COMPANION_RADIO_FULL 1\n#define PIN_BUZZER 25\n#define MESH_GPS_VOICE 0\n'), + ): + with self.subTest(board=board, excluded_profile=case): + self.assert_voice_policy(base+flags, 0) + + def test_unsafe_audio_profiles_retain_tones_and_explicit_voice_override(self): + full = '#define NRF52_PLATFORM\n#define COMPANION_RADIO_FULL 1\n' + profiles = ( + # The M4's previous buzzer configuration overlaps its I2C SDA + # and battery-status LED, not a verified speaker connection. + '#define THINKNODE_M4\n#define PIN_BUZZER 23\n#define PIN_BUZZER_EN 36\n', + # R1 Neo's dummy QSPI clock is the same pin as its buzzer. + '#define R1Neo\n#define PIN_BUZZER 3\n#define QSPIFLASH 1\n', + ) + for profile in profiles: + with self.subTest(profile=profile): + self.assert_voice_policy(full+profile, 0) + self.assert_voice_policy(full+profile+'#define MESH_GPS_VOICE 1\n', 1) + + def test_buttons_gps_persistence_and_failed_save(self): + mesh=(ROOT/'examples/companion_radio/MyMesh.cpp').read_text() + ui=(ROOT/'examples/companion_radio/ui-orig/UITask.cpp').read_text() + methods=method(mesh,'bool MyMesh::setGpsEnabled(bool enabled)') + for signature in ('void UITask::handleButtonDoublePress()', + 'void UITask::handleButtonTriplePress()', + 'void UITask::handleButtonQuadruplePress()'): + methods+='\n'+method(ui,signature) + self.build(BUTTON.replace('@METHODS@',methods),button=True) + +if __name__=='__main__': + unittest.main() diff --git a/test/test_gps_voice_generator.py b/test/test_gps_voice_generator.py new file mode 100644 index 000000000..bfb6d0ff1 --- /dev/null +++ b/test/test_gps_voice_generator.py @@ -0,0 +1,155 @@ +"""Validate speech-generation plans, fixed audio identity, and fixture encoding.""" +from pathlib import Path +import hashlib +import shutil +import subprocess +import sys +import tempfile +import unittest +from test_button_voice_generator import parse_header, write_wav + +ROOT = Path(__file__).resolve().parents[1] +POWERSHELL = shutil.which("pwsh") or shutil.which("powershell") +BASELINE_FILTER = ( + "highpass=f=350,lowpass=f=3400," + "silenceremove=start_periods=1:start_threshold=-45dB,areverse," + "silenceremove=start_periods=1:start_threshold=-45dB,areverse," + "volume=1.4,alimiter=limit=0.8:level=disabled,apad=pad_dur=0.05" +) +SELECTED_FILTER = ( + "highpass=f=350,lowpass=f=3400," + "silenceremove=start_periods=1:start_threshold=-45dB,areverse," + "silenceremove=start_periods=1:start_threshold=-45dB,areverse," + "acompressor=threshold=0.08:ratio=6:attack=5:release=70:makeup=4:knee=4:detection=rms," + "volume=1.4,aresample=8000,alimiter=limit=0.12:level=disabled,apad=pad_dur=0.05" +) + +# Independently pinned from approved Zira WAVs (rate -1 / compressed / peak +# 0.12 / 8 kHz), not from the header being tested or its voice-name metadata. +ZIRA_GPS_RECORDINGS = { + 'gpsOn': ('8bb2571a94245c9df307857a072f5e8900e72976c81536dc02c25251da42ca7a', 9683), + 'gpsOff': ('4dd8519110914aba97d84d2d1b72a20dec8bb8ed573aa167551d8e092af8ffcb', 9237), +} + + +class AssetTests(unittest.TestCase): + def test_production_gps_recordings_are_the_approved_zira_audio_and_metadata(self): + source = (ROOT / 'src/helpers/ui/GpsVoiceData.h').read_text(encoding='utf-8') + self.assertEqual([line for line in source.splitlines() if line.startswith('// Voice:')], + ['// Voice: Microsoft Zira Desktop']) + arrays, clips = parse_header(source) + self.assertEqual(tuple(arrays), tuple(ZIRA_GPS_RECORDINGS)) + self.assertEqual(tuple(clips), tuple(ZIRA_GPS_RECORDINGS)) + for name, (fingerprint, samples) in ZIRA_GPS_RECORDINGS.items(): + with self.subTest(recording=name): + self.assertEqual(hashlib.sha256(arrays[name]).hexdigest(), fingerprint) + self.assertEqual(clips[name], (name, name, samples, 8000)) + + def test_optional_voice_metadata_preserves_generic_pcm_fixture_encoding(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) + on, off = directory / 'on.wav', directory / 'off.wav' + write_wav(on, [0, 0, 1, -1, 2, -2, 3, -3, 1000]) + write_wav(off, [0, 1, -1, 2, -2, 3, -3, -1000]) + outputs = [] + for arguments in ((), ('--voice', 'Microsoft Zira Desktop')): + target = directory / ('selected.h' if arguments else 'plain.h') + result = subprocess.run( + [sys.executable, str(ROOT / 'scripts/generate_gps_voice.py'), + '--on', str(on), '--off', str(off), '--output', str(target), *arguments], + capture_output=True, text=True, timeout=30, + ) + self.assertEqual(result.returncode, 0, result.stderr) + outputs.append(target.read_text(encoding='utf-8')) + self.assertNotIn('// Voice:', outputs[0]) + self.assertIn('// Voice: Microsoft Zira Desktop\n', outputs[1]) + self.assertEqual(parse_header(outputs[0]), parse_header(outputs[1])) + + def test_powershell_forwards_selected_voice_to_encoder_metadata(self): + source = (ROOT / 'scripts/generate_gps_voice.ps1').read_text(encoding='utf-8') + invocation = next(line for line in source.splitlines() + if line.startswith('& python $gpsEncoder ')) + self.assertIn('--voice $Voice', invocation) + + +@unittest.skipUnless(POWERSHELL, "PowerShell is needed for generator plan tests") +class Tests(unittest.TestCase): + def plan(self, *arguments): + return subprocess.run( + [POWERSHELL, "-NoProfile", "-NonInteractive", "-File", + str(ROOT / "scripts/generate_gps_voice.ps1"), + *arguments, "-WhatIf", "-Verbose"], + cwd=ROOT, capture_output=True, text=True, timeout=30, + ) + + def test_selected_defaults_and_original_profile(self): + result = self.plan() + self.assertEqual(result.returncode, 0, result.stderr) + self.assertIn(SELECTED_FILTER, result.stdout) + self.assertIn("Microsoft Zira Desktop; rate: -1", result.stdout) + self.assertIn(str(ROOT / "src/helpers/ui/GpsVoiceData.h"), result.stdout) + result = self.plan( + "-Voice", "Microsoft Zira Desktop", "-Compress:$false", "-PeakLimit", "0.8", + "-OutputHeader", "out/gps-voice/original-zira.h", + ) + self.assertEqual(result.returncode, 0, result.stderr) + self.assertIn(BASELINE_FILTER, result.stdout) + self.assertIn("Microsoft Zira Desktop; rate: -1", result.stdout) + self.assertNotIn("acompressor=", result.stdout) + + def test_compressed_variant_is_planned_without_writes(self): + with tempfile.TemporaryDirectory() as temporary: + directory = Path(temporary) / "preview" + header = Path(temporary) / "headers/mark.h" + result = self.plan( + "-Voice", "Microsoft Mark", "-Rate", "0", "-Compress", + "-PeakLimit", "0.10", "-OutputDirectory", str(directory), + "-OutputHeader", str(header), + ) + self.assertEqual(result.returncode, 0, result.stderr) + self.assertIn("Microsoft Mark; rate: 0", result.stdout) + self.assertIn("acompressor=threshold=0.08:ratio=6", result.stdout) + self.assertIn("makeup=4:knee=4:detection=rms", result.stdout) + self.assertIn("aresample=8000,alimiter=limit=0.1:level=disabled", result.stdout) + self.assertIn(str(header), result.stdout) + self.assertFalse(directory.exists()) + self.assertFalse(header.parent.exists()) + + def test_variants_require_an_explicit_header(self): + for arguments in (("-Compress:$false",), ("-Voice", "Microsoft Mark"), + ("-Rate", "0"), ("-PeakLimit", "0.10")): + with self.subTest(arguments=arguments): + result = self.plan(*arguments) + self.assertNotEqual(result.returncode, 0) + self.assertIn("explicit -OutputHeader", result.stderr) + + def test_invalid_header_extension_is_rejected(self): + result = self.plan("-OutputHeader", "out/gps-voice/test.wav") + self.assertNotEqual(result.returncode, 0) + self.assertIn("must name a .h file", result.stderr) + + def test_file_directory_collisions_are_rejected(self): + with tempfile.TemporaryDirectory() as temporary: + path = Path(temporary) + file = path / "existing-file" + file.touch() + result = self.plan("-OutputDirectory", str(file)) + self.assertNotEqual(result.returncode, 0) + self.assertIn("names an existing file", result.stderr) + directory = path / "existing-directory.h" + directory.mkdir() + result = self.plan("-OutputHeader", str(directory)) + self.assertNotEqual(result.returncode, 0) + self.assertIn("names an existing directory", result.stderr) + + def test_rate_and_peak_ranges_are_rejected(self): + for arguments in (("-Rate", "11"), ("-Rate", "-11"), + ("-PeakLimit", "0.01"), ("-PeakLimit", "1.1")): + with self.subTest(arguments=arguments): + result = self.plan("-OutputHeader", "out/gps-voice/test.h", *arguments) + self.assertNotEqual(result.returncode, 0) + self.assertIn(arguments[0][1:], result.stderr) + + +if __name__ == "__main__": + unittest.main() diff --git a/variants/thinknode_m4/platformio.ini b/variants/thinknode_m4/platformio.ini index dbf419ba6..ec1ca193b 100644 --- a/variants/thinknode_m4/platformio.ini +++ b/variants/thinknode_m4/platformio.ini @@ -82,8 +82,7 @@ build_flags = ${ThinkNode_M4.build_flags} ; -D MESH_DEBUG=1 -D OFFLINE_QUEUE_SIZE=256 -D DISPLAY_CLASS=NullDisplayDriver - -D PIN_BUZZER=23 - -D PIN_BUZZER_EN=36 + ; No verified onboard buzzer: GPIO23 is I2C SDA and GPIO36 is battery LED4. -D ENABLE_USB_INTERFACE build_src_filter = ${ThinkNode_M4.build_src_filter} + @@ -109,8 +108,7 @@ build_flags = ${ThinkNode_M4.build_flags} ; -D MESH_PACKET_LOGGING=1 -D OFFLINE_QUEUE_SIZE=256 -D DISPLAY_CLASS=NullDisplayDriver - -D PIN_BUZZER=23 - -D PIN_BUZZER_EN=36 + ; Keep I2C SDA / battery LED4 reserved; do not copy M3 buzzer wiring here. build_src_filter = ${ThinkNode_M4.build_src_filter} + +