From 3e5cfe814d825e9dc38fcd6f167b74c51f867101 Mon Sep 17 00:00:00 2001 From: Michele Bigi Date: Tue, 25 Aug 2026 21:53:00 +0200 Subject: [PATCH] Integrate DigiRadioFinale DSP program: exclusive source mux, real Bass Boost1/SPhat1 enhancement blocks Replaces the 74-parameter ADAU1701 program with the new 224-parameter SigmaStudio export. The new netlist has no mixer -- MX1 is an exclusive selector (DC1) passing through exactly one of three stereo pairs (radio/bluetooth/beep) instead of blending them with independent gains. core::MixSource/MixerState are gone; core::ActiveSource plus IDsp::selectSource() replace applyMixer()/setInputVolume() throughout the driver/service/API stack. AudioProfile.mixer -> activeSource; the HTTP "mixer" JSON object -> a single "active_source" string. DC1 turned out to need a raw 32-bit integer (0/1/2), not the 5.23 fixpoint its compiled TYPE_DC1 macro implies -- confirmed live by writing both encodings and listening for which one actually switched sources. Documented in Adau1701Driver::selectSource() and adau1701::paramSourceIndex(). Bass Boost1 and SPhat1 are real ADI algorithm blocks in this revision, so core::applyEnhancementsToEq() (the old EQ-band-overwrite hack for bass/stereo enhancement) is deleted; IDsp::setBassBoostLevel()/ setStereoSpreadLevel() scale each block's compiled coefficients toward identity/unity instead. Confirmed live: Bass Boost audible on real program content (not a static test tone -- the algorithm is dynamics- based), Stereo Spread audible but subtle. The EQ "locked" flag from 2026-08-24 (enhancements silently overwriting manually-set bands) no longer applies to bands 1-5. A full sweep of all 223 non-DC1 named parameters (writing each back to its own compiled default) completed with zero failures, confirming the whole new address space is reachable. Co-Authored-By: Claude Sonnet 5 --- .../Firmware/ADAU1701-Firmware/DigiRadio.hex | 332 +-- .../ADAU1701-Firmware/DigiRadio.params | 1924 ++++++++++------ .../Firmware/ADAU1701-Firmware/DigiRadio.xml | 1325 +++++++---- .../ADAU1701-Firmware/DigiRadio_IC_1.h | 1982 ++++++++--------- .../ADAU1701-Firmware/DigiRadio_IC_1_PARAM.h | 1262 ++++++++--- .../ADAU1701-Firmware/DigiRadio_IC_1_REG.h | 10 +- .../ADAU1701-Firmware/DigiRadio_NetList.xml | 154 +- Software/Firmware/ADAU1701-Firmware/defines.h | 4 +- Software/components/core/CMakeLists.txt | 2 - .../core/include/core/ActiveSource.hpp | 46 + .../core/include/core/AudioEnhancements.hpp | 11 +- .../core/include/core/AudioProfile.hpp | 4 +- .../core/include/core/EnhancementsDesign.hpp | 39 - .../components/core/include/core/IDsp.hpp | 68 +- .../core/include/core/MixSource.hpp | 32 - .../core/include/core/MixerState.hpp | 64 - Software/components/core/src/AudioProfile.cpp | 2 +- .../components/core/src/AudioProfileJson.cpp | 93 +- .../core/src/EnhancementsDesign.cpp | 70 - Software/components/core/src/MixerState.cpp | 45 - Software/components/core/test/CMakeLists.txt | 6 - .../core/test/audio_profile_json_test.cpp | 17 + .../core/test/enhancements_design_test.cpp | 124 -- .../core/test/integration_service_test.cpp | 22 +- .../include/adau1701/Adau1701Driver.hpp | 61 +- .../adau1701/include/adau1701/Adau1701Dsp.hpp | 13 +- .../include/adau1701/Adau1701ParamMap.hpp | 47 +- .../include/adau1701/Adau1701ParamTable.hpp | 311 ++- .../drivers/adau1701/src/Adau1701Driver.cpp | 168 +- .../drivers/adau1701/src/Adau1701Dsp.cpp | 33 +- .../audio/include/audio/AudioService.hpp | 23 +- .../services/audio/src/AudioService.cpp | 70 +- 32 files changed, 5013 insertions(+), 3351 deletions(-) create mode 100644 Software/components/core/include/core/ActiveSource.hpp delete mode 100644 Software/components/core/include/core/EnhancementsDesign.hpp delete mode 100644 Software/components/core/include/core/MixSource.hpp delete mode 100644 Software/components/core/include/core/MixerState.hpp delete mode 100644 Software/components/core/src/EnhancementsDesign.cpp delete mode 100644 Software/components/core/src/MixerState.cpp delete mode 100644 Software/components/core/test/enhancements_design_test.cpp diff --git a/Software/Firmware/ADAU1701-Firmware/DigiRadio.hex b/Software/Firmware/ADAU1701-Firmware/DigiRadio.hex index bd61360..7ee4842 100644 --- a/Software/Firmware/ADAU1701-Firmware/DigiRadio.hex +++ b/Software/Firmware/ADAU1701-Firmware/DigiRadio.hex @@ -2,6 +2,28 @@ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x6C , 0xAC , 0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x7F , 0xFC , 0xB9 , +0x00 , 0x7F , 0xFC , 0xB9 , +0x00 , 0x7F , 0xFC , 0xB9 , +0x00 , 0x7F , 0xFC , 0xB9 , +0x01 , 0x41 , 0x85 , 0x7F , +0x00 , 0x09 , 0x0F , 0xCC , +0x00 , 0x09 , 0x0F , 0xCC , +0x00 , 0x06 , 0x6A , 0x4A , +0x00 , 0x04 , 0x8A , 0xA7 , +0x00 , 0x03 , 0x37 , 0x18 , +0x00 , 0x02 , 0x46 , 0xB5 , +0x00 , 0x01 , 0x9C , 0x86 , +0x00 , 0x01 , 0x24 , 0x0C , +0x00 , 0x00 , 0xCE , 0xC1 , +0x00 , 0x00 , 0x92 , 0x5F , +0x00 , 0x00 , 0x67 , 0x9F , +0x00 , 0x00 , 0x49 , 0x5C , +0x00 , 0x00 , 0xDA , 0xD7 , +0x00 , 0x02 , 0xFD , 0x86 , +0x00 , 0x0A , 0x75 , 0xDE , +0x00 , 0x24 , 0x97 , 0x68 , +0x00 , 0x7E , 0xDA , 0x4D , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , @@ -10,31 +32,113 @@ 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x00 , 0x0F , 0xB9 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x00 , 0x09 , 0x60 , +0x00 , 0x00 , 0x00 , 0xB6 , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , 0x00 , 0x7F , 0xC3 , 0x65 , 0x0F , 0x00 , 0x79 , 0x35 , 0x00 , 0x7F , 0xC3 , 0x65 , 0x00 , 0xFF , 0x86 , 0xAE , 0x0F , 0x80 , 0x79 , 0x19 , +0x00 , 0x7F , 0xE6 , 0x6F , +0x0F , 0x01 , 0xD7 , 0xBF , +0x00 , 0x7E , 0x47 , 0xC2 , +0x00 , 0xFE , 0x28 , 0x41 , +0x0F , 0x81 , 0xD1 , 0xCF , +0x00 , 0x80 , 0x0B , 0x93 , +0x0F , 0x06 , 0x4A , 0x08 , +0x00 , 0x79 , 0xF5 , 0x34 , +0x00 , 0xF9 , 0xB5 , 0xF8 , +0x0F , 0x85 , 0xFF , 0x39 , +0x00 , 0x7F , 0x5D , 0x86 , +0x0F , 0x14 , 0xBB , 0x22 , +0x00 , 0x6E , 0x7D , 0xEA , +0x00 , 0xEB , 0x44 , 0xDE , +0x0F , 0x92 , 0x24 , 0x90 , +0x00 , 0x80 , 0x52 , 0x5D , +0x0F , 0x3C , 0xC4 , 0x90 , +0x00 , 0x55 , 0x01 , 0xAB , +0x00 , 0xC3 , 0x3B , 0x70 , +0x0F , 0xAA , 0xAB , 0xF8 , +0x00 , 0x82 , 0x2B , 0x9A , +0x0F , 0x98 , 0xC2 , 0xB2 , +0x00 , 0x34 , 0x93 , 0x0C , +0x00 , 0x67 , 0x3D , 0x4E , +0x0F , 0xC9 , 0x41 , 0x5A , +0x00 , 0x02 , 0xC4 , 0x78 , +0x00 , 0x05 , 0x88 , 0xEF , +0x00 , 0x02 , 0xC4 , 0x78 , +0x00 , 0xC5 , 0x84 , 0xFE , +0xFF , 0xAF , 0x69 , 0x23 , +0x00 , 0x65 , 0x86 , 0xF7 , +0xFF , 0x34 , 0xF2 , 0x12 , +0x00 , 0x65 , 0x86 , 0xF7 , +0x00 , 0xC5 , 0x84 , 0xFE , +0xFF , 0xAF , 0x69 , 0x23 , +0x00 , 0xA6 , 0x66 , 0x66 , +0x00 , 0x73 , 0x33 , 0x33 , +0x00 , 0x6D , 0x66 , 0xD6 , 0x00 , 0x80 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x75 , 0x69 , 0x4C , +0x00 , 0x5A , 0x9D , 0xF8 , +0x00 , 0x45 , 0xEF , 0xFF , +0x00 , 0x35 , 0xFA , 0x27 , +0x00 , 0x29 , 0xA8 , 0xBB , +0x00 , 0x20 , 0x26 , 0xF3 , +0x00 , 0x06 , 0x4A , 0x36 , +0x00 , 0x00 , 0x01 , 0x6C , +0x00 , 0x00 , 0x5D , 0xC0 , +0x00 , 0x08 , 0x0D , 0x6A , +0x00 , 0x02 , 0x78 , 0x8C , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , @@ -42,6 +146,52 @@ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x01 , 0x01 , 0x5C , +0x00 , 0x00 , 0x01 , 0x64 , +0x00 , 0x00 , 0x02 , 0xC8 , +0x00 , 0x00 , 0x01 , 0x64 , +0x00 , 0xFD , 0xA1 , 0x53 , +0x0F , 0x82 , 0x59 , 0x1D , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x29 , 0x53 , 0x21 , +0x00 , 0x2A , 0xC6 , 0xE7 , +0x00 , 0x2C , 0x47 , 0xBE , +0x00 , 0x2D , 0xD6 , 0x1B , +0x00 , 0x2F , 0x72 , 0x77 , +0x00 , 0x31 , 0x1D , 0x52 , +0x00 , 0x32 , 0xD7 , 0x2C , +0x00 , 0x34 , 0xA0 , 0x8E , +0x00 , 0x36 , 0x7A , 0x02 , +0x00 , 0x00 , 0x06 , 0xD3 , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , 0x0F , 0xFE , 0x2B , 0xE3 , 0x00 , 0x22 , 0xBE , 0x2C , 0x0F , 0xEA , 0xAA , 0xAB , @@ -872,154 +1022,4 @@ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , diff --git a/Software/Firmware/ADAU1701-Firmware/DigiRadio.params b/Software/Firmware/ADAU1701-Firmware/DigiRadio.params index ace2c4d..a1f8685 100644 --- a/Software/Firmware/ADAU1701-Firmware/DigiRadio.params +++ b/Software/Firmware/ADAU1701-Firmware/DigiRadio.params @@ -1,69 +1,6 @@ -Cell Name = Si4674 -Parameter Name = Gain1940AlgNS1 -Parameter Address = 3 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - -Cell Name = Si4674 -Parameter Name = Gain1940AlgNS2 -Parameter Address = 4 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - -Cell Name = ESP32 -Parameter Name = Gain1940AlgNS3 -Parameter Address = 5 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - -Cell Name = ESP32 -Parameter Name = Gain1940AlgNS4 -Parameter Address = 6 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - -Cell Name = St Mixer1 -Parameter Name = StereoMixerAlg12 -Parameter Address = 9 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - -Cell Name = St Mixer1 -Parameter Name = StereoMixerAlg14 -Parameter Address = 10 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - -Cell Name = St Mixer1 -Parameter Name = StereoMixerAlg16 -Parameter Address = 11 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B1 -Parameter Address = 12 +Parameter Address = 59 Parameter Value = 0.99815046787262 Parameter Data : 0x00 , 0x7F , 0xC3 , 0x65 , @@ -72,7 +9,7 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B1 -Parameter Address = 13 +Parameter Address = 60 Parameter Value = -1.99630105495453 Parameter Data : 0x0F , 0x00 , 0x79 , 0x35 , @@ -81,7 +18,7 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B1 -Parameter Address = 14 +Parameter Address = 61 Parameter Value = 0.99815046787262 Parameter Data : 0x00 , 0x7F , 0xC3 , 0x65 , @@ -90,7 +27,7 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A1 -Parameter Address = 15 +Parameter Address = 62 Parameter Value = 1.99629759788513 Parameter Data : 0x00 , 0xFF , 0x86 , 0xAE , @@ -99,7 +36,7 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A1 -Parameter Address = 16 +Parameter Address = 63 Parameter Value = -0.996304392814636 Parameter Data : 0x0F , 0x80 , 0x79 , 0x19 , @@ -108,232 +45,232 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B2 -Parameter Address = 17 -Parameter Value = 1 +Parameter Address = 64 +Parameter Value = 0.99921977519989 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x7F , 0xE6 , 0x6F , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B2 -Parameter Address = 18 -Parameter Value = 0 +Parameter Address = 65 +Parameter Value = -1.98560345172882 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x01 , 0xD7 , 0xBF , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B2 -Parameter Address = 19 -Parameter Value = 0 +Parameter Address = 66 +Parameter Value = 0.986564874649048 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x7E , 0x47 , 0xC2 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A2 -Parameter Address = 20 -Parameter Value = 0 +Parameter Address = 67 +Parameter Value = 1.98560345172882 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0xFE , 0x28 , 0x41 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A2 -Parameter Address = 21 -Parameter Value = 0 +Parameter Address = 68 +Parameter Value = -0.985784649848938 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x81 , 0xD1 , 0xCF , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B3 -Parameter Address = 22 -Parameter Value = 1 +Parameter Address = 69 +Parameter Value = 1.00035321712494 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x0B , 0x93 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B3 -Parameter Address = 23 -Parameter Value = 0 +Parameter Address = 70 +Parameter Value = -1.95086574554443 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x06 , 0x4A , 0x08 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B3 -Parameter Address = 24 -Parameter Value = 0 +Parameter Address = 71 +Parameter Value = 0.952795505523682 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x79 , 0xF5 , 0x34 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A3 -Parameter Address = 25 -Parameter Value = 0 +Parameter Address = 72 +Parameter Value = 1.95086574554443 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0xF9 , 0xB5 , 0xF8 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A3 -Parameter Address = 26 -Parameter Value = 0 +Parameter Address = 73 +Parameter Value = -0.953148722648621 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x85 , 0xFF , 0x39 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B4 -Parameter Address = 27 -Parameter Value = 1 +Parameter Address = 74 +Parameter Value = 0.995041608810425 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x7F , 0x5D , 0x86 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B4 -Parameter Address = 28 -Parameter Value = 0 +Parameter Address = 75 +Parameter Value = -1.83803915977478 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x14 , 0xBB , 0x22 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B4 -Parameter Address = 29 -Parameter Value = 0 +Parameter Address = 76 +Parameter Value = 0.86321759223938 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x6E , 0x7D , 0xEA , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A4 -Parameter Address = 30 -Parameter Value = 0 +Parameter Address = 77 +Parameter Value = 1.83803915977478 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0xEB , 0x44 , 0xDE , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A4 -Parameter Address = 31 -Parameter Value = 0 +Parameter Address = 78 +Parameter Value = -0.858259201049805 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x92 , 0x24 , 0x90 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B5 -Parameter Address = 32 -Parameter Value = 1 +Parameter Address = 79 +Parameter Value = 1.00251352787018 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x52 , 0x5D , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B5 -Parameter Address = 33 -Parameter Value = 0 +Parameter Address = 80 +Parameter Value = -1.5252513885498 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x3C , 0xC4 , 0x90 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B5 -Parameter Address = 34 -Parameter Value = 0 +Parameter Address = 81 +Parameter Value = 0.664113402366638 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x55 , 0x01 , 0xAB , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A5 -Parameter Address = 35 -Parameter Value = 0 +Parameter Address = 82 +Parameter Value = 1.5252513885498 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0xC3 , 0x3B , 0x70 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A5 -Parameter Address = 36 -Parameter Value = 0 +Parameter Address = 83 +Parameter Value = -0.666626930236816 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0xAA , 0xAB , 0xF8 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B6 -Parameter Address = 37 -Parameter Value = 1 +Parameter Address = 84 +Parameter Value = 1.01695561408997 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x82 , 0x2B , 0x9A , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B6 -Parameter Address = 38 -Parameter Value = 0 +Parameter Address = 85 +Parameter Value = -0.80655837059021 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x98 , 0xC2 , 0xB2 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B6 -Parameter Address = 39 -Parameter Value = 0 +Parameter Address = 86 +Parameter Value = 0.41073751449585 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x34 , 0x93 , 0x0C , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A6 -Parameter Address = 40 -Parameter Value = 0 +Parameter Address = 87 +Parameter Value = 0.80655837059021 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x67 , 0x3D , 0x4E , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A6 -Parameter Address = 41 -Parameter Value = 0 +Parameter Address = 88 +Parameter Value = -0.427693128585815 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0xC9 , 0x41 , 0x5A , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B1 -Parameter Address = 12 +Parameter Address = 59 Parameter Value = 0.99815046787262 Parameter Data : 0x00 , 0x7F , 0xC3 , 0x65 , @@ -342,7 +279,7 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B1 -Parameter Address = 13 +Parameter Address = 60 Parameter Value = -1.99630105495453 Parameter Data : 0x0F , 0x00 , 0x79 , 0x35 , @@ -351,7 +288,7 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B1 -Parameter Address = 14 +Parameter Address = 61 Parameter Value = 0.99815046787262 Parameter Data : 0x00 , 0x7F , 0xC3 , 0x65 , @@ -360,7 +297,7 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A1 -Parameter Address = 15 +Parameter Address = 62 Parameter Value = 1.99629759788513 Parameter Data : 0x00 , 0xFF , 0x86 , 0xAE , @@ -369,7 +306,7 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A1 -Parameter Address = 16 +Parameter Address = 63 Parameter Value = -0.996304392814636 Parameter Data : 0x0F , 0x80 , 0x79 , 0x19 , @@ -378,232 +315,232 @@ Parameter Data : Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B2 -Parameter Address = 17 -Parameter Value = 1 +Parameter Address = 64 +Parameter Value = 0.99921977519989 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x7F , 0xE6 , 0x6F , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B2 -Parameter Address = 18 -Parameter Value = 0 +Parameter Address = 65 +Parameter Value = -1.98560345172882 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x01 , 0xD7 , 0xBF , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B2 -Parameter Address = 19 -Parameter Value = 0 +Parameter Address = 66 +Parameter Value = 0.986564874649048 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x7E , 0x47 , 0xC2 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A2 -Parameter Address = 20 -Parameter Value = 0 +Parameter Address = 67 +Parameter Value = 1.98560345172882 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0xFE , 0x28 , 0x41 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A2 -Parameter Address = 21 -Parameter Value = 0 +Parameter Address = 68 +Parameter Value = -0.985784649848938 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x81 , 0xD1 , 0xCF , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B3 -Parameter Address = 22 -Parameter Value = 1 +Parameter Address = 69 +Parameter Value = 1.00035321712494 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x0B , 0x93 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B3 -Parameter Address = 23 -Parameter Value = 0 +Parameter Address = 70 +Parameter Value = -1.95086574554443 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x06 , 0x4A , 0x08 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B3 -Parameter Address = 24 -Parameter Value = 0 +Parameter Address = 71 +Parameter Value = 0.952795505523682 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x79 , 0xF5 , 0x34 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A3 -Parameter Address = 25 -Parameter Value = 0 +Parameter Address = 72 +Parameter Value = 1.95086574554443 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0xF9 , 0xB5 , 0xF8 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A3 -Parameter Address = 26 -Parameter Value = 0 +Parameter Address = 73 +Parameter Value = -0.953148722648621 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x85 , 0xFF , 0x39 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B4 -Parameter Address = 27 -Parameter Value = 1 +Parameter Address = 74 +Parameter Value = 0.995041608810425 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x7F , 0x5D , 0x86 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B4 -Parameter Address = 28 -Parameter Value = 0 +Parameter Address = 75 +Parameter Value = -1.83803915977478 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x14 , 0xBB , 0x22 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B4 -Parameter Address = 29 -Parameter Value = 0 +Parameter Address = 76 +Parameter Value = 0.86321759223938 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x6E , 0x7D , 0xEA , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A4 -Parameter Address = 30 -Parameter Value = 0 +Parameter Address = 77 +Parameter Value = 1.83803915977478 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0xEB , 0x44 , 0xDE , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A4 -Parameter Address = 31 -Parameter Value = 0 +Parameter Address = 78 +Parameter Value = -0.858259201049805 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x92 , 0x24 , 0x90 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B5 -Parameter Address = 32 -Parameter Value = 1 +Parameter Address = 79 +Parameter Value = 1.00251352787018 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x52 , 0x5D , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B5 -Parameter Address = 33 -Parameter Value = 0 +Parameter Address = 80 +Parameter Value = -1.5252513885498 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x3C , 0xC4 , 0x90 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B5 -Parameter Address = 34 -Parameter Value = 0 +Parameter Address = 81 +Parameter Value = 0.664113402366638 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x55 , 0x01 , 0xAB , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A5 -Parameter Address = 35 -Parameter Value = 0 +Parameter Address = 82 +Parameter Value = 1.5252513885498 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0xC3 , 0x3B , 0x70 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A5 -Parameter Address = 36 -Parameter Value = 0 +Parameter Address = 83 +Parameter Value = -0.666626930236816 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0xAA , 0xAB , 0xF8 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan10B6 -Parameter Address = 37 -Parameter Value = 1 +Parameter Address = 84 +Parameter Value = 1.01695561408997 Parameter Data : -0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x82 , 0x2B , 0x9A , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11B6 -Parameter Address = 38 -Parameter Value = 0 +Parameter Address = 85 +Parameter Value = -0.80655837059021 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0x98 , 0xC2 , 0xB2 , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12B6 -Parameter Address = 39 -Parameter Value = 0 +Parameter Address = 86 +Parameter Value = 0.41073751449585 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x34 , 0x93 , 0x0C , Cell Name = Param EQ1 Parameter Name = PEQ1Chan11A6 -Parameter Address = 40 -Parameter Value = 0 +Parameter Address = 87 +Parameter Value = 0.80655837059021 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x67 , 0x3D , 0x4E , Cell Name = Param EQ1 Parameter Name = PEQ1Chan12A6 -Parameter Address = 41 -Parameter Value = 0 +Parameter Address = 88 +Parameter Value = -0.427693128585815 Parameter Data : -0x00 , 0x00 , 0x00 , 0x00 , +0x0F , 0xC9 , 0x41 , 0x5A , Cell Name = Multiple 1 Parameter Name = Gain1940AlgNS5 -Parameter Address = 42 +Parameter Address = 146 Parameter Value = 1 Parameter Data : 0x00, 0x80, 0x00, 0x00, @@ -612,7 +549,7 @@ Parameter Data : Cell Name = Multiple 1 Parameter Name = Gain1940AlgNS6 -Parameter Address = 43 +Parameter Address = 147 Parameter Value = 1 Parameter Data : 0x00, 0x80, 0x00, 0x00, @@ -621,7 +558,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1slope_1 -Parameter Address = 44 +Parameter Address = 209 Parameter Value = -0.014285683631897 Parameter Data : 0x0F, 0xFE, 0x2B, 0xE3, @@ -630,7 +567,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1inter_1 -Parameter Address = 45 +Parameter Address = 210 Parameter Value = 0.27142858505249 Parameter Data : 0x00, 0x22, 0xBE, 0x2C, @@ -639,7 +576,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1slope_2 -Parameter Address = 46 +Parameter Address = 211 Parameter Value = -0.166666626930237 Parameter Data : 0x0F, 0xEA, 0xAA, 0xAB, @@ -648,7 +585,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1inter_2 -Parameter Address = 47 +Parameter Address = 212 Parameter Value = 0.833333373069763 Parameter Data : 0x00, 0x6A, 0xAA, 0xAB, @@ -657,7 +594,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1slope_3 -Parameter Address = 48 +Parameter Address = 213 Parameter Value = -0.79365074634552 Parameter Data : 0x0F, 0x9A, 0x69, 0xA7, @@ -666,7 +603,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1inter_3 -Parameter Address = 49 +Parameter Address = 214 Parameter Value = 1.98412692546844 Parameter Data : 0x00, 0xFD, 0xF7, 0xDF, @@ -675,7 +612,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1slope_4 -Parameter Address = 50 +Parameter Address = 215 Parameter Value = -15.5279502868652 Parameter Data : 0x08, 0x3C, 0x6C, 0x20, @@ -684,7 +621,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1inter_4 -Parameter Address = 51 +Parameter Address = 216 Parameter Value = 7.91925466060638 Parameter Data : 0x03, 0xF5, 0xAA, 0x23, @@ -693,7 +630,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1comp1 -Parameter Address = 52 +Parameter Address = 217 Parameter Value = 3 Parameter Data : 0x01, 0x80, 0x00, 0x00, @@ -702,7 +639,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1comp2 -Parameter Address = 53 +Parameter Address = 218 Parameter Value = 2 Parameter Data : 0x01, 0x00, 0x00, 0x00, @@ -711,7 +648,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1comp3 -Parameter Address = 54 +Parameter Address = 219 Parameter Value = 0.399999976158142 Parameter Data : 0x00, 0x33, 0x33, 0x33, @@ -720,7 +657,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1RMS_MONO_TCONST -Parameter Address = 56 +Parameter Address = 221 Parameter Value = 0.000239849090576172 Parameter Data : 0x00, 0x00, 0x07, 0xDC, @@ -729,7 +666,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1threshold -Parameter Address = 55 +Parameter Address = 220 Parameter Value = 1 Parameter Data : 0x00, 0x80, 0x00, 0x00, @@ -738,7 +675,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1decay -Parameter Address = 57 +Parameter Address = 222 Parameter Value = 0.000244140625 Parameter Data : 0x00, 0x00, 0x08, 0x00, @@ -747,142 +684,7 @@ Parameter Data : Cell Name = Limiter 1 Parameter Name = limiterAlg1decaycomplement -Parameter Address = 58 -Parameter Value = 0.99951171875 -Parameter Data : -0x00, 0x7F, 0xF0, 0x00, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2slope_1 -Parameter Address = 59 -Parameter Value = -0.014285683631897 -Parameter Data : -0x0F, 0xFE, 0x2B, 0xE3, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2inter_1 -Parameter Address = 60 -Parameter Value = 0.27142858505249 -Parameter Data : -0x00, 0x22, 0xBE, 0x2C, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2slope_2 -Parameter Address = 61 -Parameter Value = -0.166666626930237 -Parameter Data : -0x0F, 0xEA, 0xAA, 0xAB, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2inter_2 -Parameter Address = 62 -Parameter Value = 0.833333373069763 -Parameter Data : -0x00, 0x6A, 0xAA, 0xAB, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2slope_3 -Parameter Address = 63 -Parameter Value = -0.79365074634552 -Parameter Data : -0x0F, 0x9A, 0x69, 0xA7, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2inter_3 -Parameter Address = 64 -Parameter Value = 1.98412692546844 -Parameter Data : -0x00, 0xFD, 0xF7, 0xDF, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2slope_4 -Parameter Address = 65 -Parameter Value = -15.5279502868652 -Parameter Data : -0x08, 0x3C, 0x6C, 0x20, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2inter_4 -Parameter Address = 66 -Parameter Value = 7.91925466060638 -Parameter Data : -0x03, 0xF5, 0xAA, 0x23, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2comp1 -Parameter Address = 67 -Parameter Value = 3 -Parameter Data : -0x01, 0x80, 0x00, 0x00, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2comp2 -Parameter Address = 68 -Parameter Value = 2 -Parameter Data : -0x01, 0x00, 0x00, 0x00, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2comp3 -Parameter Address = 69 -Parameter Value = 0.399999976158142 -Parameter Data : -0x00, 0x33, 0x33, 0x33, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2RMS_MONO_TCONST -Parameter Address = 71 -Parameter Value = 0.000239849090576172 -Parameter Data : -0x00, 0x00, 0x07, 0xDC, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2threshold -Parameter Address = 70 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2decay -Parameter Address = 72 -Parameter Value = 0.000244140625 -Parameter Data : -0x00, 0x00, 0x08, 0x00, - - - -Cell Name = Limiter 2 -Parameter Name = limiterAlg2decaycomplement -Parameter Address = 73 +Parameter Address = 223 Parameter Value = 0.99951171875 Parameter Data : 0x00, 0x7F, 0xF0, 0x00, @@ -916,30 +718,740 @@ Parameter Data : -Cell Name = Single 1 -Parameter Name = Gain1940AlgNS7 -Parameter Address = 7 -Parameter Value = 1 -Parameter Data : -0x00, 0x80, 0x00, 0x00, - - - Cell Name = S Splitter1 Parameter Name = SingleCtrlSplit1 Parameter Address = 8 +Parameter Value = 2.5118864774704 +Parameter Data : +0x01, 0x41, 0x85, 0x7F, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2slope_1 +Parameter Address = 194 +Parameter Value = -0.014285683631897 +Parameter Data : +0x0F, 0xFE, 0x2B, 0xE3, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2inter_1 +Parameter Address = 195 +Parameter Value = 0.27142858505249 +Parameter Data : +0x00, 0x22, 0xBE, 0x2C, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2slope_2 +Parameter Address = 196 +Parameter Value = -0.166666626930237 +Parameter Data : +0x0F, 0xEA, 0xAA, 0xAB, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2inter_2 +Parameter Address = 197 +Parameter Value = 0.833333373069763 +Parameter Data : +0x00, 0x6A, 0xAA, 0xAB, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2slope_3 +Parameter Address = 198 +Parameter Value = -0.79365074634552 +Parameter Data : +0x0F, 0x9A, 0x69, 0xA7, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2inter_3 +Parameter Address = 199 +Parameter Value = 1.98412692546844 +Parameter Data : +0x00, 0xFD, 0xF7, 0xDF, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2slope_4 +Parameter Address = 200 +Parameter Value = -15.5279502868652 +Parameter Data : +0x08, 0x3C, 0x6C, 0x20, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2inter_4 +Parameter Address = 201 +Parameter Value = 7.91925466060638 +Parameter Data : +0x03, 0xF5, 0xAA, 0x23, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2comp1 +Parameter Address = 202 +Parameter Value = 3 +Parameter Data : +0x01, 0x80, 0x00, 0x00, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2comp2 +Parameter Address = 203 +Parameter Value = 2 +Parameter Data : +0x01, 0x00, 0x00, 0x00, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2comp3 +Parameter Address = 204 +Parameter Value = 0.399999976158142 +Parameter Data : +0x00, 0x33, 0x33, 0x33, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2RMS_MONO_TCONST +Parameter Address = 206 +Parameter Value = 0.000239849090576172 +Parameter Data : +0x00, 0x00, 0x07, 0xDC, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2threshold +Parameter Address = 205 Parameter Value = 1 Parameter Data : 0x00, 0x80, 0x00, 0x00, +Cell Name = Limiter 2 +Parameter Name = limiterAlg2decay +Parameter Address = 207 +Parameter Value = 0.000244140625 +Parameter Data : +0x00, 0x00, 0x08, 0x00, + + + +Cell Name = Limiter 2 +Parameter Name = limiterAlg2decaycomplement +Parameter Address = 208 +Parameter Value = 0.99951171875 +Parameter Data : +0x00, 0x7F, 0xF0, 0x00, + + + +Cell Name = DCB1 +Parameter Name = DCBlockAlgDoublePrec1pole +Parameter Address = 4 +Parameter Value = 0.999899983406067 +Parameter Data : +0x00, 0x7F, 0xFC, 0xB9, + + + +Cell Name = DCB2 +Parameter Name = DCBlockAlgDoublePrec2pole +Parameter Address = 5 +Parameter Value = 0.999899983406067 +Parameter Data : +0x00, 0x7F, 0xFC, 0xB9, + + + +Cell Name = DCB3 +Parameter Name = DCBlockAlgDoublePrec3pole +Parameter Address = 7 +Parameter Value = 0.999899983406067 +Parameter Data : +0x00, 0x7F, 0xFC, 0xB9, + + + +Cell Name = DCB4 +Parameter Name = DCBlockAlgDoublePrec4pole +Parameter Address = 6 +Parameter Value = 0.999899983406067 +Parameter Data : +0x00, 0x7F, 0xFC, 0xB9, + + + +Cell Name = Compressor1 +Parameter Name = TwoChannelSingleDetectAlgFix1 +Parameter Address = 9 +Parameter Data : +0x00, 0x09, 0x0F, 0xCC, +0x00, 0x09, 0x0F, 0xCC, +0x00, 0x06, 0x6A, 0x4A, +0x00, 0x04, 0x8A, 0xA7, +0x00, 0x03, 0x37, 0x18, +0x00, 0x02, 0x46, 0xB5, +0x00, 0x01, 0x9C, 0x86, +0x00, 0x01, 0x24, 0x0C, +0x00, 0x00, 0xCE, 0xC1, +0x00, 0x00, 0x92, 0x5F, +0x00, 0x00, 0x67, 0x9F, +0x00, 0x00, 0x49, 0x5C, +0x00, 0x00, 0xDA, 0xD7, +0x00, 0x02, 0xFD, 0x86, +0x00, 0x0A, 0x75, 0xDE, +0x00, 0x24, 0x97, 0x68, +0x00, 0x7E, 0xDA, 0x4D, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, + + + +Cell Name = Compressor1 +Parameter Name = TwoChannelSingleDetectAlgFix1RMS +Parameter Address = 43 +Parameter Value = 0.000479817390441895 +Parameter Data : +0x00 , 0x00 , 0x0F , 0xB9 , + + + +Cell Name = Compressor1 +Parameter Name = TwoChannelSingleDetectAlgFix1post_gain +Parameter Address = 44 +Parameter Value = 1 +Parameter Data : +0x00 , 0x80 , 0x00 , 0x00 , + + + +Cell Name = Compressor1 +Parameter Name = TwoChannelSingleDetectAlgFix1hold +Parameter Address = 45 +Parameter Value = 2400 +Parameter Data : +0x00 , 0x00 , 0x09 , 0x60 , + + + +Cell Name = Compressor1 +Parameter Name = TwoChannelSingleDetectAlgFix1decay +Parameter Address = 46 +Parameter Value = 2.16960906982422E-05 +Parameter Data : +0x00 , 0x00 , 0x00 , 0xB6 , + + + +Cell Name = 1 X RTA1 +Parameter Name = SingleBandLevelDet1TCONST +Parameter Address = 53 +Parameter Value = 0.00240135192871094 +Parameter Data : +0x00 , 0x00 , 0x4E , 0xB0 , + + + +Cell Name = 1 X RTA1 +Parameter Name = SingleBandLevelDet1hold +Parameter Address = 54 +Parameter Value = 480 +Parameter Data : +0x00 , 0x00 , 0x01 , 0xE0 , + + + +Cell Name = 1 X RTA1 +Parameter Name = SingleBandLevelDet1decay +Parameter Address = 55 +Parameter Value = 0.000216960906982422 +Parameter Data : +0x00 , 0x00 , 0x07 , 0x1C , + + + +Cell Name = 1 X RTA2 +Parameter Name = SingleBandLevelDet2TCONST +Parameter Address = 56 +Parameter Value = 0.00240135192871094 +Parameter Data : +0x00 , 0x00 , 0x4E , 0xB0 , + + + +Cell Name = 1 X RTA2 +Parameter Name = SingleBandLevelDet2hold +Parameter Address = 57 +Parameter Value = 480 +Parameter Data : +0x00 , 0x00 , 0x01 , 0xE0 , + + + +Cell Name = 1 X RTA2 +Parameter Name = SingleBandLevelDet2decay +Parameter Address = 58 +Parameter Value = 0.000216960906982422 +Parameter Data : +0x00 , 0x00 , 0x07 , 0x1C , + + + +Cell Name = 1 X RTA3 +Parameter Name = SingleBandLevelDet3TCONST +Parameter Address = 47 +Parameter Value = 0.00240135192871094 +Parameter Data : +0x00 , 0x00 , 0x4E , 0xB0 , + + + +Cell Name = 1 X RTA3 +Parameter Name = SingleBandLevelDet3hold +Parameter Address = 48 +Parameter Value = 480 +Parameter Data : +0x00 , 0x00 , 0x01 , 0xE0 , + + + +Cell Name = 1 X RTA3 +Parameter Name = SingleBandLevelDet3decay +Parameter Address = 49 +Parameter Value = 0.000216960906982422 +Parameter Data : +0x00 , 0x00 , 0x07 , 0x1C , + + + +Cell Name = 1 X RTA4 +Parameter Name = SingleBandLevelDet4TCONST +Parameter Address = 50 +Parameter Value = 0.00240135192871094 +Parameter Data : +0x00 , 0x00 , 0x4E , 0xB0 , + + + +Cell Name = 1 X RTA4 +Parameter Name = SingleBandLevelDet4hold +Parameter Address = 51 +Parameter Value = 480 +Parameter Data : +0x00 , 0x00 , 0x01 , 0xE0 , + + + +Cell Name = 1 X RTA4 +Parameter Name = SingleBandLevelDet4decay +Parameter Address = 52 +Parameter Value = 0.000216960906982422 +Parameter Data : +0x00 , 0x00 , 0x07 , 0x1C , + + + +Cell Name = DC1 +Parameter Name = DCInpAlg1 +Parameter Address = 3 +Parameter Value = 1 +Parameter Data : +0x00, 0x80, 0x00, 0x00, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1gainHi +Parameter Address = 99 +Parameter Value = 1.29999995231628 +Parameter Data : +0x00, 0xA6, 0x66, 0x66, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1gainLo +Parameter Address = 100 +Parameter Value = 0.899999976158142 +Parameter Data : +0x00, 0x73, 0x33, 0x33, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1gainInv +Parameter Address = 101 +Parameter Value = 0.854700803756714 +Parameter Data : +0x00, 0x6D, 0x66, 0xD6, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1spread1 +Parameter Address = 139 +Parameter Value = 0.0629093647003174 +Parameter Data : +0x00, 0x08, 0x0D, 0x6A, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1comp_base +Parameter Address = 102 +Parameter Data : +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x75, 0x69, 0x4C, +0x00, 0x5A, 0x9D, 0xF8, +0x00, 0x45, 0xEF, 0xFF, +0x00, 0x35, 0xFA, 0x27, +0x00, 0x29, 0xA8, 0xBB, +0x00, 0x20, 0x26, 0xF3, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1RMS +Parameter Address = 136 +Parameter Value = 0.0491397380828857 +Parameter Data : +0x00, 0x06, 0x4A, 0x36, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1decay +Parameter Address = 137 +Parameter Value = 4.33921813964844E-05 +Parameter Data : +0x00, 0x00, 0x01, 0x6C, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1hold +Parameter Address = 138 +Parameter Value = 24000 +Parameter Data : +0x00, 0x00, 0x5D, 0xC0, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1B0lo +Parameter Address = 89 +Parameter Data : +0x00, 0x02, 0xC4, 0x78, +0x00, 0x05, 0x88, 0xEF, +0x00, 0x02, 0xC4, 0x78, +0x00, 0xC5, 0x84, 0xFE, +0xFF, 0xAF, 0x69, 0x23, +0x00, 0x65, 0x86, 0xF7, +0xFF, 0x34, 0xF2, 0x12, +0x00, 0x65, 0x86, 0xF7, +0x00, 0xC5, 0x84, 0xFE, +0xFF, 0xAF, 0x69, 0x23, + + + +Cell Name = SPhat1 +Parameter Name = SuperPhatAlg1spread2 +Parameter Address = 140 +Parameter Value = 0.0193037986755371 +Parameter Data : +0x00, 0x02, 0x78, 0x8C, + + + +Cell Name = Gen Filter1 +Parameter Name = EQ1940DualS10B1 +Parameter Address = 141 +Parameter Value = 1 +Parameter Data : +0x00 , 0x80 , 0x00 , 0x00 , + + + +Cell Name = Gen Filter1 +Parameter Name = EQ1940DualS11B1 +Parameter Address = 142 +Parameter Value = 0 +Parameter Data : +0x00 , 0x00 , 0x00 , 0x00 , + + + +Cell Name = Gen Filter1 +Parameter Name = EQ1940DualS12B1 +Parameter Address = 143 +Parameter Value = 0 +Parameter Data : +0x00 , 0x00 , 0x00 , 0x00 , + + + +Cell Name = Gen Filter1 +Parameter Name = EQ1940DualS11A1 +Parameter Address = 144 +Parameter Value = 0 +Parameter Data : +0x00 , 0x00 , 0x00 , 0x00 , + + + +Cell Name = Gen Filter1 +Parameter Name = EQ1940DualS12A1 +Parameter Address = 145 +Parameter Value = 0 +Parameter Data : +0x00 , 0x00 , 0x00 , 0x00 , + + + +Cell Name = 1 X RTA1_2 +Parameter Name = SingleBandLevelDet5TCONST +Parameter Address = 191 +Parameter Value = 0.00240135192871094 +Parameter Data : +0x00 , 0x00 , 0x4E , 0xB0 , + + + +Cell Name = 1 X RTA1_2 +Parameter Name = SingleBandLevelDet5hold +Parameter Address = 192 +Parameter Value = 480 +Parameter Data : +0x00 , 0x00 , 0x01 , 0xE0 , + + + +Cell Name = 1 X RTA1_2 +Parameter Name = SingleBandLevelDet5decay +Parameter Address = 193 +Parameter Value = 0.000216960906982422 +Parameter Data : +0x00 , 0x00 , 0x07 , 0x1C , + + + +Cell Name = 1 X RTA2_2 +Parameter Name = SingleBandLevelDet6TCONST +Parameter Address = 188 +Parameter Value = 0.00240135192871094 +Parameter Data : +0x00 , 0x00 , 0x4E , 0xB0 , + + + +Cell Name = 1 X RTA2_2 +Parameter Name = SingleBandLevelDet6hold +Parameter Address = 189 +Parameter Value = 480 +Parameter Data : +0x00 , 0x00 , 0x01 , 0xE0 , + + + +Cell Name = 1 X RTA2_2 +Parameter Name = SingleBandLevelDet6decay +Parameter Address = 190 +Parameter Value = 0.000216960906982422 +Parameter Data : +0x00 , 0x00 , 0x07 , 0x1C , + + + +Cell Name = Bass Boost1 +Parameter Name = BassBAlg_stereo1iir_coeff_0_biq +Parameter Address = 149 +Parameter Value = 4.24385070800781E-05 +Parameter Data : +0x00 , 0x00 , 0x01 , 0x64 , + + + +Cell Name = Bass Boost1 +Parameter Name = BassBAlg_stereo1iir_coeff_1_biq +Parameter Address = 150 +Parameter Value = 8.48770141601563E-05 +Parameter Data : +0x00 , 0x00 , 0x02 , 0xC8 , + + + +Cell Name = Bass Boost1 +Parameter Name = BassBAlg_stereo1iir_coeff_2_biq +Parameter Address = 151 +Parameter Value = 4.24385070800781E-05 +Parameter Data : +0x00 , 0x00 , 0x01 , 0x64 , + + + +Cell Name = Bass Boost1 +Parameter Name = BassBAlg_stereo1iir_coeff_3_biq +Parameter Address = 152 +Parameter Value = 1.98148572444916 +Parameter Data : +0x00 , 0xFD , 0xA1 , 0x53 , + + + +Cell Name = Bass Boost1 +Parameter Name = BassBAlg_stereo1iir_coeff_4_biq +Parameter Address = 153 +Parameter Value = -0.981655478477478 +Parameter Data : +0x0F , 0x82 , 0x59 , 0x1D , + + + +Cell Name = Bass Boost1 +Parameter Name = BassBAlg_stereo1compbase_table1_comp +Parameter Address = 154 +Parameter Data : +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x29, 0x53, 0x21, +0x00, 0x2A, 0xC6, 0xE7, +0x00, 0x2C, 0x47, 0xBE, +0x00, 0x2D, 0xD6, 0x1B, +0x00, 0x2F, 0x72, 0x77, +0x00, 0x31, 0x1D, 0x52, +0x00, 0x32, 0xD7, 0x2C, +0x00, 0x34, 0xA0, 0x8E, +0x00, 0x36, 0x7A, 0x02, + + + +Cell Name = Bass Boost1 +Parameter Name = BassBAlg_stereo1freq_varq +Parameter Address = 148 +Parameter Value = 0.00785398483276367 +Parameter Data : +0x00, 0x01, 0x01, 0x5C, + + + +Cell Name = Bass Boost1 +Parameter Name = BassBAlg_stereo1TCONST_comp +Parameter Address = 187 +Parameter Value = 0.000208258628845215 +Parameter Data : +0x00, 0x00, 0x06, 0xD3, + + + Parameter data for: IC 1 (Hexadecimal format starting at parameter address 0) -See also DigiRadio.hex file +See also DigiRadioFinale.hex file 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x6C , 0xAC , 0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x7F , 0xFC , 0xB9 , +0x00 , 0x7F , 0xFC , 0xB9 , +0x00 , 0x7F , 0xFC , 0xB9 , +0x00 , 0x7F , 0xFC , 0xB9 , +0x01 , 0x41 , 0x85 , 0x7F , +0x00 , 0x09 , 0x0F , 0xCC , +0x00 , 0x09 , 0x0F , 0xCC , +0x00 , 0x06 , 0x6A , 0x4A , +0x00 , 0x04 , 0x8A , 0xA7 , +0x00 , 0x03 , 0x37 , 0x18 , +0x00 , 0x02 , 0x46 , 0xB5 , +0x00 , 0x01 , 0x9C , 0x86 , +0x00 , 0x01 , 0x24 , 0x0C , +0x00 , 0x00 , 0xCE , 0xC1 , +0x00 , 0x00 , 0x92 , 0x5F , +0x00 , 0x00 , 0x67 , 0x9F , +0x00 , 0x00 , 0x49 , 0x5C , +0x00 , 0x00 , 0xDA , 0xD7 , +0x00 , 0x02 , 0xFD , 0x86 , +0x00 , 0x0A , 0x75 , 0xDE , +0x00 , 0x24 , 0x97 , 0x68 , +0x00 , 0x7E , 0xDA , 0x4D , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , @@ -948,31 +1460,113 @@ See also DigiRadio.hex file 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x00 , 0x0F , 0xB9 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x00 , 0x09 , 0x60 , +0x00 , 0x00 , 0x00 , 0xB6 , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , 0x00 , 0x7F , 0xC3 , 0x65 , 0x0F , 0x00 , 0x79 , 0x35 , 0x00 , 0x7F , 0xC3 , 0x65 , 0x00 , 0xFF , 0x86 , 0xAE , 0x0F , 0x80 , 0x79 , 0x19 , +0x00 , 0x7F , 0xE6 , 0x6F , +0x0F , 0x01 , 0xD7 , 0xBF , +0x00 , 0x7E , 0x47 , 0xC2 , +0x00 , 0xFE , 0x28 , 0x41 , +0x0F , 0x81 , 0xD1 , 0xCF , +0x00 , 0x80 , 0x0B , 0x93 , +0x0F , 0x06 , 0x4A , 0x08 , +0x00 , 0x79 , 0xF5 , 0x34 , +0x00 , 0xF9 , 0xB5 , 0xF8 , +0x0F , 0x85 , 0xFF , 0x39 , +0x00 , 0x7F , 0x5D , 0x86 , +0x0F , 0x14 , 0xBB , 0x22 , +0x00 , 0x6E , 0x7D , 0xEA , +0x00 , 0xEB , 0x44 , 0xDE , +0x0F , 0x92 , 0x24 , 0x90 , +0x00 , 0x80 , 0x52 , 0x5D , +0x0F , 0x3C , 0xC4 , 0x90 , +0x00 , 0x55 , 0x01 , 0xAB , +0x00 , 0xC3 , 0x3B , 0x70 , +0x0F , 0xAA , 0xAB , 0xF8 , +0x00 , 0x82 , 0x2B , 0x9A , +0x0F , 0x98 , 0xC2 , 0xB2 , +0x00 , 0x34 , 0x93 , 0x0C , +0x00 , 0x67 , 0x3D , 0x4E , +0x0F , 0xC9 , 0x41 , 0x5A , +0x00 , 0x02 , 0xC4 , 0x78 , +0x00 , 0x05 , 0x88 , 0xEF , +0x00 , 0x02 , 0xC4 , 0x78 , +0x00 , 0xC5 , 0x84 , 0xFE , +0xFF , 0xAF , 0x69 , 0x23 , +0x00 , 0x65 , 0x86 , 0xF7 , +0xFF , 0x34 , 0xF2 , 0x12 , +0x00 , 0x65 , 0x86 , 0xF7 , +0x00 , 0xC5 , 0x84 , 0xFE , +0xFF , 0xAF , 0x69 , 0x23 , +0x00 , 0xA6 , 0x66 , 0x66 , +0x00 , 0x73 , 0x33 , 0x33 , +0x00 , 0x6D , 0x66 , 0xD6 , 0x00 , 0x80 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x75 , 0x69 , 0x4C , +0x00 , 0x5A , 0x9D , 0xF8 , +0x00 , 0x45 , 0xEF , 0xFF , +0x00 , 0x35 , 0xFA , 0x27 , +0x00 , 0x29 , 0xA8 , 0xBB , +0x00 , 0x20 , 0x26 , 0xF3 , +0x00 , 0x06 , 0x4A , 0x36 , +0x00 , 0x00 , 0x01 , 0x6C , +0x00 , 0x00 , 0x5D , 0xC0 , +0x00 , 0x08 , 0x0D , 0x6A , +0x00 , 0x02 , 0x78 , 0x8C , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , @@ -980,6 +1574,52 @@ See also DigiRadio.hex file 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , 0x00 , 0x80 , 0x00 , 0x00 , +0x00 , 0x01 , 0x01 , 0x5C , +0x00 , 0x00 , 0x01 , 0x64 , +0x00 , 0x00 , 0x02 , 0xC8 , +0x00 , 0x00 , 0x01 , 0x64 , +0x00 , 0xFD , 0xA1 , 0x53 , +0x0F , 0x82 , 0x59 , 0x1D , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x28 , 0xDA , 0x08 , +0x00 , 0x29 , 0x53 , 0x21 , +0x00 , 0x2A , 0xC6 , 0xE7 , +0x00 , 0x2C , 0x47 , 0xBE , +0x00 , 0x2D , 0xD6 , 0x1B , +0x00 , 0x2F , 0x72 , 0x77 , +0x00 , 0x31 , 0x1D , 0x52 , +0x00 , 0x32 , 0xD7 , 0x2C , +0x00 , 0x34 , 0xA0 , 0x8E , +0x00 , 0x36 , 0x7A , 0x02 , +0x00 , 0x00 , 0x06 , 0xD3 , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , +0x00 , 0x00 , 0x4E , 0xB0 , +0x00 , 0x00 , 0x01 , 0xE0 , +0x00 , 0x00 , 0x07 , 0x1C , 0x0F , 0xFE , 0x2B , 0xE3 , 0x00 , 0x22 , 0xBE , 0x2C , 0x0F , 0xEA , 0xAA , 0xAB , @@ -1810,162 +2450,34 @@ See also DigiRadio.hex file 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , -0x00 , 0x00 , 0x00 , 0x00 , Parameter data for: IC 1 (Binary format starting at parameter address 0) 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 01101100 10101100 00000000 10000000 00000000 00000000 +00000000 01111111 11111100 10111001 +00000000 01111111 11111100 10111001 +00000000 01111111 11111100 10111001 +00000000 01111111 11111100 10111001 +00000001 01000001 10000101 01111111 +00000000 00001001 00001111 11001100 +00000000 00001001 00001111 11001100 +00000000 00000110 01101010 01001010 +00000000 00000100 10001010 10100111 +00000000 00000011 00110111 00011000 +00000000 00000010 01000110 10110101 +00000000 00000001 10011100 10000110 +00000000 00000001 00100100 00001100 +00000000 00000000 11001110 11000001 +00000000 00000000 10010010 01011111 +00000000 00000000 01100111 10011111 +00000000 00000000 01001001 01011100 +00000000 00000000 11011010 11010111 +00000000 00000010 11111101 10000110 +00000000 00001010 01110101 11011110 +00000000 00100100 10010111 01101000 +00000000 01111110 11011010 01001101 00000000 10000000 00000000 00000000 00000000 10000000 00000000 00000000 00000000 10000000 00000000 00000000 @@ -1974,31 +2486,113 @@ Parameter data for: IC 1 (Binary format starting at parameter address 0) 00000000 10000000 00000000 00000000 00000000 10000000 00000000 00000000 00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 00000000 00001111 10111001 +00000000 10000000 00000000 00000000 +00000000 00000000 00001001 01100000 +00000000 00000000 00000000 10110110 +00000000 00000000 01001110 10110000 +00000000 00000000 00000001 11100000 +00000000 00000000 00000111 00011100 +00000000 00000000 01001110 10110000 +00000000 00000000 00000001 11100000 +00000000 00000000 00000111 00011100 +00000000 00000000 01001110 10110000 +00000000 00000000 00000001 11100000 +00000000 00000000 00000111 00011100 +00000000 00000000 01001110 10110000 +00000000 00000000 00000001 11100000 +00000000 00000000 00000111 00011100 00000000 01111111 11000011 01100101 00001111 00000000 01111001 00110101 00000000 01111111 11000011 01100101 00000000 11111111 10000110 10101110 00001111 10000000 01111001 00011001 +00000000 01111111 11100110 01101111 +00001111 00000001 11010111 10111111 +00000000 01111110 01000111 11000010 +00000000 11111110 00101000 01000001 +00001111 10000001 11010001 11001111 +00000000 10000000 00001011 10010011 +00001111 00000110 01001010 00001000 +00000000 01111001 11110101 00110100 +00000000 11111001 10110101 11111000 +00001111 10000101 11111111 00111001 +00000000 01111111 01011101 10000110 +00001111 00010100 10111011 00100010 +00000000 01101110 01111101 11101010 +00000000 11101011 01000100 11011110 +00001111 10010010 00100100 10010000 +00000000 10000000 01010010 01011101 +00001111 00111100 11000100 10010000 +00000000 01010101 00000001 10101011 +00000000 11000011 00111011 01110000 +00001111 10101010 10101011 11111000 +00000000 10000010 00101011 10011010 +00001111 10011000 11000010 10110010 +00000000 00110100 10010011 00001100 +00000000 01100111 00111101 01001110 +00001111 11001001 01000001 01011010 +00000000 00000010 11000100 01111000 +00000000 00000101 10001000 11101111 +00000000 00000010 11000100 01111000 +00000000 11000101 10000100 11111110 +11111111 10101111 01101001 00100011 +00000000 01100101 10000110 11110111 +11111111 00110100 11110010 00010010 +00000000 01100101 10000110 11110111 +00000000 11000101 10000100 11111110 +11111111 10101111 01101001 00100011 +00000000 10100110 01100110 01100110 +00000000 01110011 00110011 00110011 +00000000 01101101 01100110 11010110 00000000 10000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 00000000 10000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 00000000 10000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 00000000 10000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 10000000 00000000 00000000 +00000000 01110101 01101001 01001100 +00000000 01011010 10011101 11111000 +00000000 01000101 11101111 11111111 +00000000 00110101 11111010 00100111 +00000000 00101001 10101000 10111011 +00000000 00100000 00100110 11110011 +00000000 00000110 01001010 00110110 +00000000 00000000 00000001 01101100 +00000000 00000000 01011101 11000000 +00000000 00001000 00001101 01101010 +00000000 00000010 01111000 10001100 00000000 10000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 @@ -2006,6 +2600,52 @@ Parameter data for: IC 1 (Binary format starting at parameter address 0) 00000000 00000000 00000000 00000000 00000000 10000000 00000000 00000000 00000000 10000000 00000000 00000000 +00000000 00000001 00000001 01011100 +00000000 00000000 00000001 01100100 +00000000 00000000 00000010 11001000 +00000000 00000000 00000001 01100100 +00000000 11111101 10100001 01010011 +00001111 10000010 01011001 00011101 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101000 11011010 00001000 +00000000 00101001 01010011 00100001 +00000000 00101010 11000110 11100111 +00000000 00101100 01000111 10111110 +00000000 00101101 11010110 00011011 +00000000 00101111 01110010 01110111 +00000000 00110001 00011101 01010010 +00000000 00110010 11010111 00101100 +00000000 00110100 10100000 10001110 +00000000 00110110 01111010 00000010 +00000000 00000000 00000110 11010011 +00000000 00000000 01001110 10110000 +00000000 00000000 00000001 11100000 +00000000 00000000 00000111 00011100 +00000000 00000000 01001110 10110000 +00000000 00000000 00000001 11100000 +00000000 00000000 00000111 00011100 00001111 11111110 00101011 11100011 00000000 00100010 10111110 00101100 00001111 11101010 10101010 10101011 @@ -2836,154 +3476,4 @@ Parameter data for: IC 1 (Binary format starting at parameter address 0) 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 -00000000 00000000 00000000 00000000 diff --git a/Software/Firmware/ADAU1701-Firmware/DigiRadio.xml b/Software/Firmware/ADAU1701-Firmware/DigiRadio.xml index 2f5a953..dee4ff2 100644 --- a/Software/Firmware/ADAU1701-Firmware/DigiRadio.xml +++ b/Software/Firmware/ADAU1701-Firmware/DigiRadio.xml @@ -30,14 +30,14 @@
1024
5 5120 - 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x18, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x20, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x28, 0x00, 0xE8, 0x01, 0x00, 0x02, 0x01, 0xA0, 0x01, 0xFF, 0xE1, 0x07, 0x20, 0x01, 0x00, 0x38, 0x00, 0xE2, 0x01, 0x00, 0x42, 0x02, 0x20, 0x01, 0x00, 0x52, 0x00, 0x22, 0x01, 0x00, 0x58, 0x00, 0xE2, 0x01, 0x00, 0x42, 0x00, 0x20, 0x01, 0x00, 0x59, 0x08, 0x22, 0x41, 0x00, 0x39, 0x08, 0x22, 0x01, 0x00, 0x31, 0x08, 0x22, 0x41, 0x00, 0x48, 0x00, 0xE2, 0x01, 0x00, 0x12, 0x03, 0x20, 0x01, 0x00, 0x60, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1A, 0x04, 0x20, 0x01, 0x00, 0x68, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x22, 0x05, 0x20, 0x01, 0x00, 0x70, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x2A, 0x06, 0x20, 0x01, 0x00, 0x78, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x5A, 0x07, 0x20, 0x01, 0x00, 0x80, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x82, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x88, 0x00, 0xE2, 0x01, 0x00, 0x82, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x90, 0x00, 0xE2, 0x01, 0x00, 0x62, 0x09, 0x20, 0x01, 0x00, 0x6A, 0x09, 0x40, 0x01, 0x00, 0x72, 0x0A, 0x22, 0x01, 0x00, 0x7A, 0x0A, 0x44, 0x01, 0x00, 0x8A, 0x0B, 0x22, 0x01, 0x00, 0x92, 0x0B, 0x44, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xA8, 0x00, 0xE2, 0x01, 0x01, 0xE0, 0x00, 0xE4, 0x01, 0x00, 0xD2, 0x0F, 0x20, 0x01, 0x00, 0xCA, 0x10, 0x22, 0x01, 0x00, 0xBA, 0x0F, 0x34, 0x01, 0x00, 0xB2, 0x10, 0x22, 0x01, 0x00, 0xAA, 0x0C, 0x22, 0x01, 0x00, 0xA2, 0x0D, 0x22, 0x01, 0x00, 0x9A, 0x0E, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xC0, 0x00, 0xE2, 0x01, 0x00, 0xD8, 0x00, 0xF2, 0x01, 0x01, 0x02, 0x14, 0x20, 0x01, 0x00, 0xFA, 0x15, 0x22, 0x01, 0x00, 0xEA, 0x14, 0x34, 0x01, 0x00, 0xE2, 0x15, 0x22, 0x01, 0x00, 0xC2, 0x11, 0x22, 0x01, 0x00, 0xBA, 0x12, 0x22, 0x01, 0x00, 0xB2, 0x13, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xF0, 0x00, 0xE2, 0x01, 0x01, 0x08, 0x00, 0xF2, 0x01, 0x01, 0x32, 0x19, 0x20, 0x01, 0x01, 0x2A, 0x1A, 0x22, 0x01, 0x01, 0x1A, 0x19, 0x34, 0x01, 0x01, 0x12, 0x1A, 0x22, 0x01, 0x00, 0xF2, 0x16, 0x22, 0x01, 0x00, 0xEA, 0x17, 0x22, 0x01, 0x00, 0xE2, 0x18, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x20, 0x00, 0xE2, 0x01, 0x01, 0x38, 0x00, 0xF2, 0x01, 0x01, 0x62, 0x1E, 0x20, 0x01, 0x01, 0x5A, 0x1F, 0x22, 0x01, 0x01, 0x4A, 0x1E, 0x34, 0x01, 0x01, 0x42, 0x1F, 0x22, 0x01, 0x01, 0x22, 0x1B, 0x22, 0x01, 0x01, 0x1A, 0x1C, 0x22, 0x01, 0x01, 0x12, 0x1D, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x50, 0x00, 0xE2, 0x01, 0x01, 0x68, 0x00, 0xF2, 0x01, 0x01, 0x92, 0x23, 0x20, 0x01, 0x01, 0x8A, 0x24, 0x22, 0x01, 0x01, 0x7A, 0x23, 0x34, 0x01, 0x01, 0x72, 0x24, 0x22, 0x01, 0x01, 0x52, 0x20, 0x22, 0x01, 0x01, 0x4A, 0x21, 0x22, 0x01, 0x01, 0x42, 0x22, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x80, 0x00, 0xE2, 0x01, 0x01, 0x98, 0x00, 0xF2, 0x01, 0x01, 0xC2, 0x28, 0x20, 0x01, 0x01, 0xBA, 0x29, 0x22, 0x01, 0x01, 0xAA, 0x28, 0x34, 0x01, 0x01, 0xA2, 0x29, 0x22, 0x01, 0x01, 0x82, 0x25, 0x22, 0x01, 0x01, 0x7A, 0x26, 0x22, 0x01, 0x01, 0x72, 0x27, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xB0, 0x00, 0xE2, 0x01, 0x01, 0xC8, 0x00, 0xF2, 0x01, 0x02, 0x0A, 0x0F, 0x20, 0x01, 0x02, 0x02, 0x10, 0x22, 0x01, 0x01, 0xF2, 0x0F, 0x34, 0x01, 0x01, 0xEA, 0x10, 0x22, 0x01, 0x01, 0xE2, 0x0C, 0x22, 0x01, 0x01, 0xDA, 0x0D, 0x22, 0x01, 0x01, 0xD2, 0x0E, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xF8, 0x00, 0xE2, 0x01, 0x02, 0x10, 0x00, 0xF2, 0x01, 0x02, 0x3A, 0x14, 0x20, 0x01, 0x02, 0x32, 0x15, 0x22, 0x01, 0x02, 0x22, 0x14, 0x34, 0x01, 0x02, 0x1A, 0x15, 0x22, 0x01, 0x01, 0xFA, 0x11, 0x22, 0x01, 0x01, 0xF2, 0x12, 0x22, 0x01, 0x01, 0xEA, 0x13, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x28, 0x00, 0xE2, 0x01, 0x02, 0x40, 0x00, 0xF2, 0x01, 0x02, 0x6A, 0x19, 0x20, 0x01, 0x02, 0x62, 0x1A, 0x22, 0x01, 0x02, 0x52, 0x19, 0x34, 0x01, 0x02, 0x4A, 0x1A, 0x22, 0x01, 0x02, 0x2A, 0x16, 0x22, 0x01, 0x02, 0x22, 0x17, 0x22, 0x01, 0x02, 0x1A, 0x18, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x58, 0x00, 0xE2, 0x01, 0x02, 0x70, 0x00, 0xF2, 0x01, 0x02, 0x9A, 0x1E, 0x20, 0x01, 0x02, 0x92, 0x1F, 0x22, 0x01, 0x02, 0x82, 0x1E, 0x34, 0x01, 0x02, 0x7A, 0x1F, 0x22, 0x01, 0x02, 0x5A, 0x1B, 0x22, 0x01, 0x02, 0x52, 0x1C, 0x22, 0x01, 0x02, 0x4A, 0x1D, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x88, 0x00, 0xE2, 0x01, 0x02, 0xA0, 0x00, 0xF2, 0x01, 0x02, 0xCA, 0x23, 0x20, 0x01, 0x02, 0xC2, 0x24, 0x22, 0x01, 0x02, 0xB2, 0x23, 0x34, 0x01, 0x02, 0xAA, 0x24, 0x22, 0x01, 0x02, 0x8A, 0x20, 0x22, 0x01, 0x02, 0x82, 0x21, 0x22, 0x01, 0x02, 0x7A, 0x22, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0xB8, 0x00, 0xE2, 0x01, 0x02, 0xD0, 0x00, 0xF2, 0x01, 0x02, 0xFA, 0x28, 0x20, 0x01, 0x02, 0xF2, 0x29, 0x22, 0x01, 0x02, 0xE2, 0x28, 0x34, 0x01, 0x02, 0xDA, 0x29, 0x22, 0x01, 0x02, 0xBA, 0x25, 0x22, 0x01, 0x02, 0xB2, 0x26, 0x22, 0x01, 0x02, 0xAA, 0x27, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0xE8, 0x00, 0xE2, 0x01, 0x03, 0x00, 0x00, 0xF2, 0x01, 0x01, 0xB2, 0x2A, 0x20, 0x01, 0x03, 0x08, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0xEA, 0x2B, 0x20, 0x01, 0x03, 0x10, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x09, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x70, 0x00, 0xF0, 0x01, 0xFF, 0xE9, 0x08, 0x22, 0x01, 0x03, 0x68, 0x00, 0xF2, 0x01, 0x03, 0x59, 0x08, 0x20, 0x01, 0x03, 0x5A, 0x38, 0x22, 0x41, 0x03, 0x6A, 0x38, 0x22, 0x01, 0x03, 0x49, 0x08, 0x34, 0x01, 0x03, 0x4A, 0x38, 0x22, 0x41, 0x03, 0x72, 0x38, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x50, 0x00, 0xE2, 0x01, 0x03, 0x60, 0x00, 0xF2, 0x01, 0x03, 0x78, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0x34, 0x40, 0x01, 0x03, 0x79, 0x08, 0x20, 0x09, 0x03, 0x7A, 0x2C, 0x20, 0x01, 0xFF, 0xF2, 0x2D, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x7A, 0x2E, 0x20, 0x01, 0xFF, 0xF2, 0x2F, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x23, 0xFF, 0xF2, 0x35, 0x40, 0x01, 0x03, 0x79, 0x08, 0x20, 0x09, 0x03, 0x7A, 0x30, 0x20, 0x01, 0xFF, 0xF2, 0x31, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x23, 0xFF, 0xF2, 0x36, 0x40, 0x01, 0x03, 0x79, 0x08, 0x20, 0x09, 0x03, 0x7A, 0x32, 0x20, 0x01, 0xFF, 0xF2, 0x33, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x18, 0x00, 0xC0, 0x01, 0x03, 0x7F, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x1F, 0xFF, 0x20, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x18, 0x00, 0xC0, 0x01, 0x03, 0x7F, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x1F, 0xFF, 0x20, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x18, 0x00, 0xC0, 0x01, 0x03, 0x7F, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x1F, 0xFF, 0x20, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x18, 0x00, 0xC0, 0x01, 0x00, 0x02, 0x37, 0xA0, 0x01, 0xFF, 0xE7, 0xFF, 0x20, 0x01, 0x03, 0x40, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x41, 0x08, 0x40, 0x01, 0xFF, 0xF1, 0x08, 0x20, 0x09, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x40, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x41, 0x08, 0x40, 0x01, 0x03, 0x39, 0x08, 0x20, 0x09, 0x03, 0x42, 0x39, 0x20, 0x01, 0x03, 0x3A, 0x39, 0x22, 0x41, 0x03, 0x39, 0x08, 0x22, 0x01, 0x03, 0x40, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x41, 0x08, 0x20, 0x01, 0x03, 0x30, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0x3A, 0x22, 0x49, 0xFF, 0xF1, 0x08, 0x20, 0x01, 0xFF, 0xE9, 0x08, 0x20, 0x25, 0x03, 0x28, 0x00, 0xE2, 0x01, 0x03, 0x40, 0x00, 0xC0, 0x01, 0x03, 0x0F, 0xFF, 0x20, 0x01, 0x03, 0x20, 0x00, 0xE2, 0x01, 0x03, 0x11, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x70, 0x00, 0xF0, 0x01, 0xFF, 0xE9, 0x08, 0x22, 0x01, 0x03, 0x68, 0x00, 0xF2, 0x01, 0x03, 0xB9, 0x08, 0x20, 0x01, 0x03, 0xBA, 0x47, 0x22, 0x41, 0x03, 0x6A, 0x47, 0x22, 0x01, 0x03, 0xA9, 0x08, 0x34, 0x01, 0x03, 0xAA, 0x47, 0x22, 0x41, 0x03, 0x72, 0x47, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0xB0, 0x00, 0xE2, 0x01, 0x03, 0xC0, 0x00, 0xF2, 0x01, 0x03, 0x78, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0x43, 0x40, 0x01, 0x03, 0x79, 0x08, 0x20, 0x09, 0x03, 0x7A, 0x3B, 0x20, 0x01, 0xFF, 0xF2, 0x3C, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x7A, 0x3D, 0x20, 0x01, 0xFF, 0xF2, 0x3E, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x23, 0xFF, 0xF2, 0x44, 0x40, 0x01, 0x03, 0x79, 0x08, 0x20, 0x09, 0x03, 0x7A, 0x3F, 0x20, 0x01, 0xFF, 0xF2, 0x40, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x23, 0xFF, 0xF2, 0x45, 0x40, 0x01, 0x03, 0x79, 0x08, 0x20, 0x09, 0x03, 0x7A, 0x41, 0x20, 0x01, 0xFF, 0xF2, 0x42, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x18, 0x00, 0xC0, 0x01, 0x03, 0x7F, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x1F, 0xFF, 0x20, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x18, 0x00, 0xC0, 0x01, 0x03, 0x7F, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x1F, 0xFF, 0x20, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x18, 0x00, 0xC0, 0x01, 0x03, 0x7F, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x1F, 0xFF, 0x20, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x03, 0x18, 0x00, 0xC0, 0x01, 0x00, 0x02, 0x46, 0xA0, 0x01, 0xFF, 0xE7, 0xFF, 0x20, 0x01, 0x03, 0xA0, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0xA1, 0x08, 0x40, 0x01, 0xFF, 0xF1, 0x08, 0x20, 0x09, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0xA0, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0xA1, 0x08, 0x40, 0x01, 0x03, 0x99, 0x08, 0x20, 0x09, 0x03, 0xA2, 0x48, 0x20, 0x01, 0x03, 0x9A, 0x48, 0x22, 0x41, 0x03, 0x99, 0x08, 0x22, 0x01, 0x03, 0xA0, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0xA1, 0x08, 0x20, 0x01, 0x03, 0x90, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0x49, 0x22, 0x49, 0xFF, 0xF1, 0x08, 0x20, 0x01, 0xFF, 0xE9, 0x08, 0x20, 0x25, 0x03, 0x88, 0x00, 0xE2, 0x01, 0x03, 0xA0, 0x00, 0xC0, 0x01, 0x03, 0x17, 0xFF, 0x20, 0x01, 0x03, 0x80, 0x00, 0xE2, 0x01, 0x03, 0x81, 0x08, 0x20, 0x01, 0xFF, 0x30, 0x00, 0x02, 0x01, 0x03, 0x21, 0x08, 0x20, 0x01, 0xFF, 0x28, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x50, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x88, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xC0, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xF8, 0x00, 0xE8, 0x01, 0x00, 0x02, 0x01, 0xA0, 0x01, 0xFF, 0xE1, 0x07, 0x20, 0x01, 0x00, 0x18, 0x00, 0xE2, 0x01, 0x00, 0x22, 0x02, 0x20, 0x01, 0x00, 0x32, 0x00, 0x22, 0x01, 0x00, 0x38, 0x00, 0xE2, 0x01, 0x00, 0x22, 0x00, 0x20, 0x01, 0x00, 0x39, 0x08, 0x22, 0x41, 0x00, 0x19, 0x08, 0x22, 0x01, 0x00, 0x11, 0x08, 0x22, 0x41, 0x00, 0x28, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0x03, 0x20, 0x01, 0x00, 0x40, 0x00, 0xE2, 0x01, 0x00, 0x6A, 0x04, 0x20, 0x01, 0x00, 0x5A, 0x04, 0x34, 0x01, 0x00, 0x49, 0x08, 0x22, 0x41, 0x00, 0x51, 0x08, 0x22, 0x01, 0x00, 0x60, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x70, 0x00, 0xF2, 0x01, 0x00, 0xA2, 0x05, 0x20, 0x01, 0x00, 0x92, 0x05, 0x34, 0x01, 0x00, 0x81, 0x08, 0x22, 0x41, 0x00, 0x89, 0x08, 0x22, 0x01, 0x00, 0x98, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xA8, 0x00, 0xF2, 0x01, 0x00, 0xDA, 0x06, 0x20, 0x01, 0x00, 0xCA, 0x06, 0x34, 0x01, 0x00, 0xB9, 0x08, 0x22, 0x41, 0x00, 0xC1, 0x08, 0x22, 0x01, 0x00, 0xD0, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xE0, 0x00, 0xF2, 0x01, 0x01, 0x12, 0x07, 0x20, 0x01, 0x01, 0x02, 0x07, 0x34, 0x01, 0x00, 0xF1, 0x08, 0x22, 0x41, 0x00, 0xF9, 0x08, 0x22, 0x01, 0x01, 0x08, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x18, 0x00, 0xF2, 0x01, 0x00, 0x3A, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x28, 0x00, 0xE2, 0x01, 0x00, 0x3A, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x30, 0x00, 0xE2, 0x01, 0x00, 0x61, 0x09, 0x20, 0x01, 0x00, 0x99, 0x09, 0x22, 0x01, 0x01, 0x88, 0x00, 0xE2, 0x01, 0x01, 0x88, 0x00, 0xC0, 0x01, 0x01, 0x8F, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xA8, 0x00, 0xE2, 0x01, 0x01, 0xB0, 0x00, 0xF2, 0x01, 0x01, 0x59, 0x08, 0x20, 0x01, 0x01, 0x5A, 0x2B, 0x22, 0x41, 0x01, 0xB2, 0x2B, 0x22, 0x01, 0x01, 0x49, 0x08, 0x34, 0x01, 0x01, 0x4A, 0x2B, 0x22, 0x41, 0x01, 0xAA, 0x2B, 0x82, 0x01, 0x01, 0xAA, 0x2B, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x50, 0x00, 0xE2, 0x01, 0x01, 0x60, 0x00, 0xF2, 0x01, 0x01, 0xB8, 0x00, 0xF6, 0x01, 0x01, 0x79, 0x08, 0x20, 0x09, 0x01, 0x80, 0x00, 0xE2, 0x01, 0x01, 0x69, 0x08, 0x20, 0x01, 0xFF, 0xF2, 0x2E, 0x22, 0x67, 0x01, 0x70, 0x00, 0xE2, 0x01, 0x01, 0xB9, 0x08, 0x22, 0x49, 0x01, 0xB9, 0x08, 0x20, 0x01, 0x01, 0x70, 0x00, 0xE2, 0x27, 0xFF, 0xF2, 0x2D, 0x20, 0x01, 0x01, 0x80, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x81, 0x08, 0x20, 0x09, 0xFF, 0xF9, 0x08, 0x22, 0x41, 0x01, 0x80, 0x00, 0xE2, 0x26, 0x01, 0x71, 0x1A, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xC0, 0x00, 0xE2, 0x01, 0x01, 0xC8, 0x00, 0xF2, 0x01, 0x01, 0xC0, 0x00, 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x0A, 0xA1, 0x01, 0xFF, 0xE1, 0x08, 0x20, 0x01, 0x00, 0x02, 0x09, 0xA1, 0x01, 0xFF, 0xE1, 0x08, 0x22, 0x41, 0x01, 0x90, 0x00, 0xE2, 0x01, 0x01, 0xC8, 0x00, 0xC0, 0x01, 0x01, 0x97, 0xFF, 0x20, 0x01, 0xFF, 0xE1, 0x08, 0x22, 0x01, 0x01, 0xA0, 0x00, 0xE2, 0x01, 0x01, 0xA0, 0x00, 0xC0, 0x01, 0x00, 0x67, 0xFF, 0x20, 0x01, 0x01, 0x98, 0x00, 0xE2, 0x01, 0x01, 0x9A, 0x2C, 0x20, 0x01, 0x01, 0x98, 0x00, 0xE2, 0x01, 0x01, 0x9A, 0x2C, 0x20, 0x01, 0x01, 0x38, 0x00, 0xE2, 0x01, 0x00, 0x9F, 0xFF, 0x20, 0x01, 0x01, 0x98, 0x00, 0xE2, 0x01, 0x01, 0x9A, 0x2C, 0x20, 0x01, 0x01, 0x98, 0x00, 0xE2, 0x01, 0x01, 0x9A, 0x2C, 0x20, 0x01, 0x01, 0x40, 0x00, 0xE2, 0x01, 0x00, 0xD0, 0x00, 0xC0, 0x01, 0x00, 0xD7, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x10, 0x00, 0xE2, 0x01, 0x02, 0x18, 0x00, 0xF2, 0x01, 0x01, 0xE1, 0x08, 0x20, 0x01, 0x01, 0xE2, 0x2F, 0x22, 0x41, 0x02, 0x1A, 0x2F, 0x22, 0x01, 0x01, 0xD1, 0x08, 0x34, 0x01, 0x01, 0xD2, 0x2F, 0x22, 0x41, 0x02, 0x12, 0x2F, 0x82, 0x01, 0x02, 0x12, 0x2F, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xD8, 0x00, 0xE2, 0x01, 0x01, 0xE8, 0x00, 0xF2, 0x01, 0x02, 0x20, 0x00, 0xF6, 0x01, 0x02, 0x01, 0x08, 0x20, 0x09, 0x02, 0x08, 0x00, 0xE2, 0x01, 0x01, 0xF1, 0x08, 0x20, 0x01, 0xFF, 0xF2, 0x31, 0x22, 0x67, 0x01, 0xF8, 0x00, 0xE2, 0x01, 0x02, 0x21, 0x08, 0x22, 0x49, 0x02, 0x21, 0x08, 0x20, 0x01, 0x01, 0xF8, 0x00, 0xE2, 0x27, 0xFF, 0xF2, 0x30, 0x20, 0x01, 0x02, 0x08, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x09, 0x08, 0x20, 0x09, 0xFF, 0xF9, 0x08, 0x22, 0x41, 0x02, 0x08, 0x00, 0xE2, 0x26, 0x01, 0xF9, 0x08, 0x20, 0x01, 0x00, 0xD1, 0x08, 0x20, 0x01, 0x02, 0x28, 0x00, 0xE2, 0x01, 0x01, 0x08, 0x00, 0xC0, 0x01, 0x01, 0x0F, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x10, 0x00, 0xE2, 0x01, 0x02, 0x18, 0x00, 0xF2, 0x01, 0x02, 0x41, 0x08, 0x20, 0x01, 0x02, 0x42, 0x32, 0x22, 0x41, 0x02, 0x1A, 0x32, 0x22, 0x01, 0x02, 0x31, 0x08, 0x34, 0x01, 0x02, 0x32, 0x32, 0x22, 0x41, 0x02, 0x12, 0x32, 0x82, 0x01, 0x02, 0x12, 0x32, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x38, 0x00, 0xE2, 0x01, 0x02, 0x48, 0x00, 0xF2, 0x01, 0x02, 0x20, 0x00, 0xF6, 0x01, 0x02, 0x61, 0x08, 0x20, 0x09, 0x02, 0x68, 0x00, 0xE2, 0x01, 0x02, 0x51, 0x08, 0x20, 0x01, 0xFF, 0xF2, 0x34, 0x22, 0x67, 0x02, 0x58, 0x00, 0xE2, 0x01, 0x02, 0x21, 0x08, 0x22, 0x49, 0x02, 0x21, 0x08, 0x20, 0x01, 0x02, 0x58, 0x00, 0xE2, 0x27, 0xFF, 0xF2, 0x33, 0x20, 0x01, 0x02, 0x68, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x69, 0x08, 0x20, 0x09, 0xFF, 0xF9, 0x08, 0x22, 0x41, 0x02, 0x68, 0x00, 0xE2, 0x26, 0x02, 0x59, 0x08, 0x20, 0x01, 0x01, 0x09, 0x08, 0x20, 0x01, 0x02, 0x70, 0x00, 0xE2, 0x01, 0x01, 0x38, 0x00, 0xC0, 0x01, 0x01, 0x3F, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x10, 0x00, 0xE2, 0x01, 0x02, 0x18, 0x00, 0xF2, 0x01, 0x02, 0x89, 0x08, 0x20, 0x01, 0x02, 0x8A, 0x35, 0x22, 0x41, 0x02, 0x1A, 0x35, 0x22, 0x01, 0x02, 0x79, 0x08, 0x34, 0x01, 0x02, 0x7A, 0x35, 0x22, 0x41, 0x02, 0x12, 0x35, 0x82, 0x01, 0x02, 0x12, 0x35, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x80, 0x00, 0xE2, 0x01, 0x02, 0x90, 0x00, 0xF2, 0x01, 0x02, 0x20, 0x00, 0xF6, 0x01, 0x02, 0xA9, 0x08, 0x20, 0x09, 0x02, 0xB0, 0x00, 0xE2, 0x01, 0x02, 0x99, 0x08, 0x20, 0x01, 0xFF, 0xF2, 0x37, 0x22, 0x67, 0x02, 0xA0, 0x00, 0xE2, 0x01, 0x02, 0x21, 0x08, 0x22, 0x49, 0x02, 0x21, 0x08, 0x20, 0x01, 0x02, 0xA0, 0x00, 0xE2, 0x27, 0xFF, 0xF2, 0x36, 0x20, 0x01, 0x02, 0xB0, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0xB1, 0x08, 0x20, 0x09, 0xFF, 0xF9, 0x08, 0x22, 0x41, 0x02, 0xB0, 0x00, 0xE2, 0x26, 0x02, 0xA1, 0x08, 0x20, 0x01, 0x01, 0x39, 0x08, 0x20, 0x01, 0x02, 0xB8, 0x00, 0xE2, 0x01, 0x01, 0x40, 0x00, 0xC0, 0x01, 0x01, 0x47, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x10, 0x00, 0xE2, 0x01, 0x02, 0x18, 0x00, 0xF2, 0x01, 0x02, 0xD1, 0x08, 0x20, 0x01, 0x02, 0xD2, 0x38, 0x22, 0x41, 0x02, 0x1A, 0x38, 0x22, 0x01, 0x02, 0xC1, 0x08, 0x34, 0x01, 0x02, 0xC2, 0x38, 0x22, 0x41, 0x02, 0x12, 0x38, 0x82, 0x01, 0x02, 0x12, 0x38, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0xC8, 0x00, 0xE2, 0x01, 0x02, 0xD8, 0x00, 0xF2, 0x01, 0x02, 0x20, 0x00, 0xF6, 0x01, 0x02, 0xF1, 0x08, 0x20, 0x09, 0x02, 0xF8, 0x00, 0xE2, 0x01, 0x02, 0xE1, 0x08, 0x20, 0x01, 0xFF, 0xF2, 0x3A, 0x22, 0x67, 0x02, 0xE8, 0x00, 0xE2, 0x01, 0x02, 0x21, 0x08, 0x22, 0x49, 0x02, 0x21, 0x08, 0x20, 0x01, 0x02, 0xE8, 0x00, 0xE2, 0x27, 0xFF, 0xF2, 0x39, 0x20, 0x01, 0x02, 0xF8, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0xF9, 0x08, 0x20, 0x09, 0xFF, 0xF9, 0x08, 0x22, 0x41, 0x02, 0xF8, 0x00, 0xE2, 0x26, 0x02, 0xE9, 0x08, 0x20, 0x01, 0x01, 0x41, 0x08, 0x20, 0x01, 0x03, 0x00, 0x00, 0xE2, 0x01, 0x02, 0xB9, 0x08, 0x20, 0x01, 0x03, 0x10, 0x00, 0xE2, 0x01, 0x03, 0x01, 0x08, 0x20, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, 0x02, 0x29, 0x08, 0x20, 0x01, 0x03, 0x20, 0x00, 0xE2, 0x01, 0x02, 0x71, 0x08, 0x20, 0x01, 0x03, 0x28, 0x00, 0xE2, 0x01, 0x01, 0x29, 0x08, 0x20, 0x01, 0x03, 0x30, 0x00, 0xE2, 0x01, 0x01, 0x31, 0x08, 0x20, 0x01, 0x03, 0x38, 0x00, 0xE2, 0x01, 0x00, 0x41, 0x07, 0x20, 0x01, 0x03, 0x08, 0x00, 0xE2, 0x01, 0x03, 0x08, 0x00, 0xC0, 0x01, 0x00, 0x07, 0xFF, 0xA0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x11, 0x08, 0x20, 0x81, 0x03, 0x50, 0x00, 0xE2, 0x01, 0x03, 0x19, 0x08, 0x20, 0x81, 0x04, 0x88, 0x00, 0xE2, 0x01, 0x03, 0x7A, 0x3E, 0x20, 0x01, 0x03, 0x72, 0x3F, 0x22, 0x01, 0x03, 0x62, 0x3E, 0x34, 0x01, 0x03, 0x5A, 0x3F, 0x22, 0x01, 0x03, 0x52, 0x3B, 0x22, 0x01, 0x03, 0x4A, 0x3C, 0x22, 0x01, 0x03, 0x42, 0x3D, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x68, 0x00, 0xE2, 0x01, 0x03, 0x80, 0x00, 0xF2, 0x01, 0x03, 0xAA, 0x43, 0x20, 0x01, 0x03, 0xA2, 0x44, 0x22, 0x01, 0x03, 0x92, 0x43, 0x34, 0x01, 0x03, 0x8A, 0x44, 0x22, 0x01, 0x03, 0x6A, 0x40, 0x22, 0x01, 0x03, 0x62, 0x41, 0x22, 0x01, 0x03, 0x5A, 0x42, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x98, 0x00, 0xE2, 0x01, 0x03, 0xB0, 0x00, 0xF2, 0x01, 0x03, 0xDA, 0x48, 0x20, 0x01, 0x03, 0xD2, 0x49, 0x22, 0x01, 0x03, 0xC2, 0x48, 0x34, 0x01, 0x03, 0xBA, 0x49, 0x22, 0x01, 0x03, 0x9A, 0x45, 0x22, 0x01, 0x03, 0x92, 0x46, 0x22, 0x01, 0x03, 0x8A, 0x47, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0xC8, 0x00, 0xE2, 0x01, 0x03, 0xE0, 0x00, 0xF2, 0x01, 0x04, 0x0A, 0x4D, 0x20, 0x01, 0x04, 0x02, 0x4E, 0x22, 0x01, 0x03, 0xF2, 0x4D, 0x34, 0x01, 0x03, 0xEA, 0x4E, 0x22, 0x01, 0x03, 0xCA, 0x4A, 0x22, 0x01, 0x03, 0xC2, 0x4B, 0x22, 0x01, 0x03, 0xBA, 0x4C, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0xF8, 0x00, 0xE2, 0x01, 0x04, 0x10, 0x00, 0xF2, 0x01, 0x04, 0x3A, 0x52, 0x20, 0x01, 0x04, 0x32, 0x53, 0x22, 0x01, 0x04, 0x22, 0x52, 0x34, 0x01, 0x04, 0x1A, 0x53, 0x22, 0x01, 0x03, 0xFA, 0x4F, 0x22, 0x01, 0x03, 0xF2, 0x50, 0x22, 0x01, 0x03, 0xEA, 0x51, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x28, 0x00, 0xE2, 0x01, 0x04, 0x40, 0x00, 0xF2, 0x01, 0x04, 0x6A, 0x57, 0x20, 0x01, 0x04, 0x62, 0x58, 0x22, 0x01, 0x04, 0x52, 0x57, 0x34, 0x01, 0x04, 0x4A, 0x58, 0x22, 0x01, 0x04, 0x2A, 0x54, 0x22, 0x01, 0x04, 0x22, 0x55, 0x22, 0x01, 0x04, 0x1A, 0x56, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x58, 0x00, 0xE2, 0x01, 0x04, 0x70, 0x00, 0xF2, 0x01, 0x04, 0xB2, 0x3E, 0x20, 0x01, 0x04, 0xAA, 0x3F, 0x22, 0x01, 0x04, 0x9A, 0x3E, 0x34, 0x01, 0x04, 0x92, 0x3F, 0x22, 0x01, 0x04, 0x8A, 0x3B, 0x22, 0x01, 0x04, 0x82, 0x3C, 0x22, 0x01, 0x04, 0x7A, 0x3D, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0xA0, 0x00, 0xE2, 0x01, 0x04, 0xB8, 0x00, 0xF2, 0x01, 0x04, 0xE2, 0x43, 0x20, 0x01, 0x04, 0xDA, 0x44, 0x22, 0x01, 0x04, 0xCA, 0x43, 0x34, 0x01, 0x04, 0xC2, 0x44, 0x22, 0x01, 0x04, 0xA2, 0x40, 0x22, 0x01, 0x04, 0x9A, 0x41, 0x22, 0x01, 0x04, 0x92, 0x42, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0xD0, 0x00, 0xE2, 0x01, 0x04, 0xE8, 0x00, 0xF2, 0x01, 0x05, 0x12, 0x48, 0x20, 0x01, 0x05, 0x0A, 0x49, 0x22, 0x01, 0x04, 0xFA, 0x48, 0x34, 0x01, 0x04, 0xF2, 0x49, 0x22, 0x01, 0x04, 0xD2, 0x45, 0x22, 0x01, 0x04, 0xCA, 0x46, 0x22, 0x01, 0x04, 0xC2, 0x47, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x00, 0x00, 0xE2, 0x01, 0x05, 0x18, 0x00, 0xF2, 0x01, 0x05, 0x42, 0x4D, 0x20, 0x01, 0x05, 0x3A, 0x4E, 0x22, 0x01, 0x05, 0x2A, 0x4D, 0x34, 0x01, 0x05, 0x22, 0x4E, 0x22, 0x01, 0x05, 0x02, 0x4A, 0x22, 0x01, 0x04, 0xFA, 0x4B, 0x22, 0x01, 0x04, 0xF2, 0x4C, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x30, 0x00, 0xE2, 0x01, 0x05, 0x48, 0x00, 0xF2, 0x01, 0x05, 0x72, 0x52, 0x20, 0x01, 0x05, 0x6A, 0x53, 0x22, 0x01, 0x05, 0x5A, 0x52, 0x34, 0x01, 0x05, 0x52, 0x53, 0x22, 0x01, 0x05, 0x32, 0x4F, 0x22, 0x01, 0x05, 0x2A, 0x50, 0x22, 0x01, 0x05, 0x22, 0x51, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x60, 0x00, 0xE2, 0x01, 0x05, 0x78, 0x00, 0xF2, 0x01, 0x05, 0xA2, 0x57, 0x20, 0x01, 0x05, 0x9A, 0x58, 0x22, 0x01, 0x05, 0x8A, 0x57, 0x34, 0x01, 0x05, 0x82, 0x58, 0x22, 0x01, 0x05, 0x62, 0x54, 0x22, 0x01, 0x05, 0x5A, 0x55, 0x22, 0x01, 0x05, 0x52, 0x56, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x90, 0x00, 0xE2, 0x01, 0x05, 0xA8, 0x00, 0xF2, 0x01, 0x04, 0x59, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0xE0, 0x00, 0xE2, 0x01, 0x06, 0x0A, 0x5C, 0x20, 0x01, 0x06, 0x02, 0x5D, 0x22, 0x01, 0x05, 0xF2, 0x5C, 0x34, 0x01, 0x05, 0xEA, 0x5D, 0x22, 0x01, 0x05, 0xE2, 0x59, 0x22, 0x01, 0x05, 0xDA, 0x5A, 0x22, 0x01, 0x05, 0xD2, 0x5B, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0xF8, 0x00, 0xE2, 0x01, 0x06, 0x10, 0x00, 0xF2, 0x01, 0x06, 0x3A, 0x5C, 0x20, 0x01, 0x06, 0x32, 0x5D, 0x22, 0x01, 0x06, 0x22, 0x5C, 0x34, 0x01, 0x06, 0x1A, 0x5D, 0x22, 0x01, 0x05, 0xFA, 0x59, 0x22, 0x01, 0x05, 0xF2, 0x5A, 0x22, 0x01, 0x05, 0xEA, 0x5B, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x28, 0x00, 0xE2, 0x01, 0x05, 0xB8, 0x00, 0xE2, 0x01, 0x06, 0x40, 0x00, 0xF2, 0x01, 0x04, 0x59, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x58, 0x00, 0xE2, 0x01, 0x06, 0x82, 0x61, 0x20, 0x01, 0x06, 0x7A, 0x62, 0x22, 0x01, 0x06, 0x6A, 0x61, 0x34, 0x01, 0x06, 0x62, 0x62, 0x22, 0x01, 0x06, 0x5A, 0x5E, 0x22, 0x01, 0x06, 0x52, 0x5F, 0x22, 0x01, 0x06, 0x4A, 0x60, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x70, 0x00, 0xE2, 0x01, 0x06, 0x88, 0x00, 0xF2, 0x01, 0x06, 0xB2, 0x61, 0x20, 0x01, 0x06, 0xAA, 0x62, 0x22, 0x01, 0x06, 0x9A, 0x61, 0x34, 0x01, 0x06, 0x92, 0x62, 0x22, 0x01, 0x06, 0x72, 0x5E, 0x22, 0x01, 0x06, 0x6A, 0x5F, 0x22, 0x01, 0x06, 0x62, 0x60, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0xA0, 0x00, 0xE2, 0x01, 0x05, 0xB0, 0x00, 0xE2, 0x01, 0x06, 0xB8, 0x00, 0xF2, 0x01, 0x05, 0x91, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0xD0, 0x00, 0xE2, 0x01, 0x06, 0xFA, 0x5C, 0x20, 0x01, 0x06, 0xF2, 0x5D, 0x22, 0x01, 0x06, 0xE2, 0x5C, 0x34, 0x01, 0x06, 0xDA, 0x5D, 0x22, 0x01, 0x06, 0xD2, 0x59, 0x22, 0x01, 0x06, 0xCA, 0x5A, 0x22, 0x01, 0x06, 0xC2, 0x5B, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0xE8, 0x00, 0xE2, 0x01, 0x07, 0x00, 0x00, 0xF2, 0x01, 0x07, 0x2A, 0x5C, 0x20, 0x01, 0x07, 0x22, 0x5D, 0x22, 0x01, 0x07, 0x12, 0x5C, 0x34, 0x01, 0x07, 0x0A, 0x5D, 0x22, 0x01, 0x06, 0xEA, 0x59, 0x22, 0x01, 0x06, 0xE2, 0x5A, 0x22, 0x01, 0x06, 0xDA, 0x5B, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x18, 0x00, 0xE2, 0x01, 0x05, 0xC8, 0x00, 0xE2, 0x01, 0x07, 0x30, 0x00, 0xF2, 0x01, 0x05, 0x91, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x48, 0x00, 0xE2, 0x01, 0x07, 0x72, 0x61, 0x20, 0x01, 0x07, 0x6A, 0x62, 0x22, 0x01, 0x07, 0x5A, 0x61, 0x34, 0x01, 0x07, 0x52, 0x62, 0x22, 0x01, 0x07, 0x4A, 0x5E, 0x22, 0x01, 0x07, 0x42, 0x5F, 0x22, 0x01, 0x07, 0x3A, 0x60, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x60, 0x00, 0xE2, 0x01, 0x07, 0x78, 0x00, 0xF2, 0x01, 0x07, 0xA2, 0x61, 0x20, 0x01, 0x07, 0x9A, 0x62, 0x22, 0x01, 0x07, 0x8A, 0x61, 0x34, 0x01, 0x07, 0x82, 0x62, 0x22, 0x01, 0x07, 0x62, 0x5E, 0x22, 0x01, 0x07, 0x5A, 0x5F, 0x22, 0x01, 0x07, 0x52, 0x60, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x90, 0x00, 0xE2, 0x01, 0x05, 0xC0, 0x00, 0xE2, 0x01, 0x07, 0xA8, 0x00, 0xF2, 0x01, 0x05, 0xB9, 0x08, 0x20, 0x01, 0x05, 0xC9, 0x08, 0x22, 0x41, 0x08, 0x30, 0x00, 0xE2, 0x01, 0x08, 0x30, 0x00, 0xC0, 0x01, 0x08, 0x37, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x08, 0x08, 0x00, 0xE2, 0x01, 0x08, 0x10, 0x00, 0xF2, 0x01, 0x07, 0xC1, 0x08, 0x20, 0x01, 0x07, 0xC2, 0x88, 0x22, 0x41, 0x08, 0x12, 0x88, 0x22, 0x01, 0x07, 0xB1, 0x08, 0x34, 0x01, 0x07, 0xB2, 0x88, 0x22, 0x41, 0x08, 0x0A, 0x88, 0x82, 0x01, 0x08, 0x0A, 0x88, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0xB8, 0x00, 0xE2, 0x01, 0x07, 0xC8, 0x00, 0xF2, 0x01, 0x08, 0x18, 0x00, 0xF6, 0x01, 0x07, 0xE1, 0x08, 0x20, 0x09, 0x07, 0xE8, 0x00, 0xE2, 0x01, 0x07, 0xD1, 0x08, 0x20, 0x01, 0xFF, 0xF2, 0x89, 0x22, 0x67, 0x07, 0xD8, 0x00, 0xE2, 0x01, 0x08, 0x19, 0x08, 0x22, 0x49, 0x08, 0x19, 0x08, 0x20, 0x01, 0x07, 0xD8, 0x00, 0xE2, 0x27, 0xFF, 0xF2, 0x8A, 0x20, 0x01, 0x07, 0xE8, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0xE9, 0x08, 0x20, 0x09, 0xFF, 0xF9, 0x08, 0x22, 0x41, 0x07, 0xE8, 0x00, 0xE2, 0x26, 0x07, 0xD9, 0x1A, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x08, 0x20, 0x00, 0xE2, 0x01, 0x08, 0x28, 0x00, 0xF2, 0x01, 0x08, 0x20, 0x00, 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x67, 0xA1, 0x01, 0xFF, 0xE1, 0x08, 0x20, 0x01, 0x00, 0x02, 0x66, 0xA1, 0x01, 0xFF, 0xE1, 0x08, 0x22, 0x41, 0x07, 0xF0, 0x00, 0xE2, 0x01, 0x08, 0x28, 0x00, 0xC0, 0x01, 0x07, 0xF7, 0xFF, 0x20, 0x01, 0xFF, 0xE1, 0x08, 0x22, 0x01, 0x08, 0x00, 0x00, 0xE2, 0x01, 0x08, 0x00, 0x00, 0xC0, 0x01, 0x08, 0x37, 0xFF, 0x20, 0x01, 0x08, 0x38, 0x00, 0xE2, 0x01, 0x05, 0xCA, 0x64, 0x20, 0x01, 0x08, 0x42, 0x64, 0x22, 0x41, 0x08, 0x58, 0x00, 0xE2, 0x01, 0x05, 0xBA, 0x64, 0x20, 0x01, 0x08, 0x42, 0x64, 0x22, 0x01, 0x08, 0x50, 0x00, 0xE2, 0x01, 0x08, 0x39, 0x08, 0x20, 0x01, 0x08, 0x41, 0x08, 0x22, 0x41, 0x07, 0xF8, 0x00, 0xE2, 0x01, 0x07, 0xFA, 0x8B, 0x20, 0x01, 0x08, 0x41, 0x08, 0x22, 0x01, 0x08, 0x48, 0x00, 0xE2, 0x01, 0x08, 0x5A, 0x64, 0x20, 0x01, 0x08, 0x62, 0x64, 0x22, 0x41, 0x08, 0x58, 0x00, 0xE2, 0x01, 0x08, 0x52, 0x64, 0x20, 0x01, 0x08, 0x62, 0x64, 0x22, 0x01, 0x08, 0x50, 0x00, 0xE2, 0x01, 0x08, 0x39, 0x08, 0x20, 0x01, 0x08, 0x61, 0x08, 0x22, 0x41, 0x07, 0xF8, 0x00, 0xE2, 0x01, 0x07, 0xFA, 0x8C, 0x20, 0x01, 0x08, 0x61, 0x08, 0x22, 0x01, 0x08, 0x68, 0x00, 0xE2, 0x01, 0x05, 0xB2, 0x63, 0x20, 0x01, 0x08, 0x52, 0x65, 0x22, 0x01, 0x08, 0x80, 0x00, 0xE2, 0x01, 0x05, 0xC2, 0x63, 0x20, 0x01, 0x08, 0x5A, 0x65, 0x22, 0x01, 0x08, 0x98, 0x00, 0xE2, 0x01, 0x08, 0xAA, 0x90, 0x20, 0x01, 0x08, 0xA2, 0x91, 0x22, 0x01, 0x08, 0x82, 0x8D, 0x22, 0x01, 0x08, 0x7A, 0x8E, 0x22, 0x01, 0x08, 0x72, 0x8F, 0x22, 0x01, 0x08, 0xB0, 0x00, 0xE2, 0x01, 0x08, 0xC2, 0x90, 0x20, 0x01, 0x08, 0xBA, 0x91, 0x22, 0x01, 0x08, 0x9A, 0x8D, 0x22, 0x01, 0x08, 0x92, 0x8E, 0x22, 0x01, 0x08, 0x8A, 0x8F, 0x22, 0x01, 0x08, 0xC8, 0x00, 0xE2, 0x01, 0x08, 0xB2, 0x92, 0x20, 0x01, 0x08, 0xD0, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x08, 0xCA, 0x93, 0x20, 0x01, 0x08, 0xD8, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x12, 0x94, 0x20, 0x01, 0x09, 0x01, 0x08, 0x22, 0x01, 0x09, 0x08, 0x00, 0xE2, 0x01, 0x09, 0x09, 0x08, 0x20, 0x41, 0x08, 0xD1, 0x08, 0x22, 0x01, 0x08, 0xE0, 0x00, 0xC0, 0x01, 0x09, 0x17, 0xFF, 0x22, 0x41, 0x08, 0xF0, 0x00, 0xE2, 0x01, 0x08, 0xF2, 0x94, 0x20, 0x01, 0x09, 0x11, 0x08, 0x22, 0x01, 0x09, 0x18, 0x00, 0xE2, 0x01, 0x09, 0x32, 0x94, 0x20, 0x01, 0x09, 0x21, 0x08, 0x22, 0x01, 0x09, 0x28, 0x00, 0xE2, 0x01, 0x09, 0x29, 0x08, 0x20, 0x41, 0x08, 0xD9, 0x08, 0x22, 0x01, 0x08, 0xE0, 0x00, 0xC0, 0x01, 0x09, 0x37, 0xFF, 0x22, 0x41, 0x08, 0xF8, 0x00, 0xE2, 0x01, 0x08, 0xFA, 0x94, 0x20, 0x01, 0x09, 0x31, 0x08, 0x22, 0x01, 0x09, 0x38, 0x00, 0xE2, 0x01, 0x09, 0x19, 0x08, 0x22, 0x01, 0x09, 0x50, 0x00, 0xE2, 0x01, 0x09, 0x62, 0x98, 0x20, 0x01, 0x09, 0x5A, 0x99, 0x22, 0x01, 0x09, 0x52, 0x95, 0x22, 0x01, 0x09, 0x4A, 0x96, 0x22, 0x01, 0x09, 0x42, 0x97, 0x22, 0x01, 0x09, 0x68, 0x00, 0xE2, 0x01, 0x09, 0x68, 0x00, 0xC0, 0x01, 0x09, 0x6F, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0xA0, 0x00, 0xE2, 0x01, 0x09, 0xA8, 0x00, 0xF2, 0x01, 0x09, 0x81, 0x08, 0x20, 0x01, 0x09, 0x82, 0xBB, 0x22, 0x41, 0x09, 0xAA, 0xBB, 0x22, 0x01, 0x09, 0x71, 0x08, 0x34, 0x01, 0x09, 0x72, 0xBB, 0x22, 0x41, 0x09, 0xA2, 0xBB, 0x82, 0x01, 0x09, 0xA2, 0xBB, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x78, 0x00, 0xE2, 0x01, 0x09, 0x88, 0x00, 0xF2, 0x01, 0x09, 0xB0, 0x00, 0xF6, 0x01, 0x09, 0xB1, 0x1A, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0xB8, 0x00, 0xE2, 0x01, 0x09, 0xC0, 0x00, 0xF2, 0x01, 0x09, 0xB8, 0x00, 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x9B, 0xA1, 0x01, 0xFF, 0xE1, 0x08, 0x20, 0x01, 0x00, 0x02, 0x9A, 0xA1, 0x01, 0xFF, 0xE1, 0x08, 0x22, 0x41, 0x09, 0x90, 0x00, 0xE2, 0x01, 0x09, 0xC0, 0x00, 0xC0, 0x01, 0x09, 0x97, 0xFF, 0x20, 0x01, 0xFF, 0xE1, 0x08, 0x22, 0x01, 0x08, 0xE8, 0x00, 0xE2, 0x01, 0x08, 0xF8, 0x00, 0xC0, 0x01, 0x08, 0xFF, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x10, 0x00, 0xE2, 0x01, 0x02, 0x18, 0x00, 0xF2, 0x01, 0x09, 0xD9, 0x08, 0x20, 0x01, 0x09, 0xDA, 0xBC, 0x22, 0x41, 0x02, 0x1A, 0xBC, 0x22, 0x01, 0x09, 0xC9, 0x08, 0x34, 0x01, 0x09, 0xCA, 0xBC, 0x22, 0x41, 0x02, 0x12, 0xBC, 0x82, 0x01, 0x02, 0x12, 0xBC, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0xD0, 0x00, 0xE2, 0x01, 0x09, 0xE0, 0x00, 0xF2, 0x01, 0x02, 0x20, 0x00, 0xF6, 0x01, 0x09, 0xF9, 0x08, 0x20, 0x09, 0x0A, 0x00, 0x00, 0xE2, 0x01, 0x09, 0xE9, 0x08, 0x20, 0x01, 0xFF, 0xF2, 0xBE, 0x22, 0x67, 0x09, 0xF0, 0x00, 0xE2, 0x01, 0x02, 0x21, 0x08, 0x22, 0x49, 0x02, 0x21, 0x08, 0x20, 0x01, 0x09, 0xF0, 0x00, 0xE2, 0x27, 0xFF, 0xF2, 0xBD, 0x20, 0x01, 0x0A, 0x00, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x01, 0x08, 0x20, 0x09, 0xFF, 0xF9, 0x08, 0x22, 0x41, 0x0A, 0x00, 0x00, 0xE2, 0x26, 0x09, 0xF1, 0x08, 0x20, 0x01, 0x08, 0xF9, 0x08, 0x20, 0x01, 0x0A, 0x08, 0x00, 0xE2, 0x01, 0x08, 0xF0, 0x00, 0xC0, 0x01, 0x08, 0xF7, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x10, 0x00, 0xE2, 0x01, 0x02, 0x18, 0x00, 0xF2, 0x01, 0x0A, 0x21, 0x08, 0x20, 0x01, 0x0A, 0x22, 0xBF, 0x22, 0x41, 0x02, 0x1A, 0xBF, 0x22, 0x01, 0x0A, 0x11, 0x08, 0x34, 0x01, 0x0A, 0x12, 0xBF, 0x22, 0x41, 0x02, 0x12, 0xBF, 0x82, 0x01, 0x02, 0x12, 0xBF, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x18, 0x00, 0xE2, 0x01, 0x0A, 0x28, 0x00, 0xF2, 0x01, 0x02, 0x20, 0x00, 0xF6, 0x01, 0x0A, 0x41, 0x08, 0x20, 0x09, 0x0A, 0x48, 0x00, 0xE2, 0x01, 0x0A, 0x31, 0x08, 0x20, 0x01, 0xFF, 0xF2, 0xC1, 0x22, 0x67, 0x0A, 0x38, 0x00, 0xE2, 0x01, 0x02, 0x21, 0x08, 0x22, 0x49, 0x02, 0x21, 0x08, 0x20, 0x01, 0x0A, 0x38, 0x00, 0xE2, 0x27, 0xFF, 0xF2, 0xC0, 0x20, 0x01, 0x0A, 0x48, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x49, 0x08, 0x20, 0x09, 0xFF, 0xF9, 0x08, 0x22, 0x41, 0x0A, 0x48, 0x00, 0xE2, 0x26, 0x0A, 0x39, 0x08, 0x20, 0x01, 0x08, 0xF1, 0x08, 0x20, 0x01, 0x0A, 0x50, 0x00, 0xE2, 0x01, 0x0A, 0x09, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x10, 0x00, 0xF0, 0x01, 0xFF, 0xE9, 0x08, 0x22, 0x01, 0x02, 0x18, 0x00, 0xF2, 0x01, 0x0A, 0x91, 0x08, 0x20, 0x01, 0x0A, 0x92, 0xCE, 0x22, 0x41, 0x02, 0x1A, 0xCE, 0x22, 0x01, 0x0A, 0x81, 0x08, 0x34, 0x01, 0x0A, 0x82, 0xCE, 0x22, 0x41, 0x02, 0x12, 0xCE, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x88, 0x00, 0xE2, 0x01, 0x0A, 0x98, 0x00, 0xF2, 0x01, 0x0A, 0xA0, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0xCA, 0x40, 0x01, 0x0A, 0xA1, 0x08, 0x20, 0x09, 0x0A, 0xA2, 0xC2, 0x20, 0x01, 0xFF, 0xF2, 0xC3, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x0A, 0xA2, 0xC4, 0x20, 0x01, 0xFF, 0xF2, 0xC5, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x23, 0xFF, 0xF2, 0xCB, 0x40, 0x01, 0x0A, 0xA1, 0x08, 0x20, 0x09, 0x0A, 0xA2, 0xC6, 0x20, 0x01, 0xFF, 0xF2, 0xC7, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x23, 0xFF, 0xF2, 0xCC, 0x40, 0x01, 0x0A, 0xA1, 0x08, 0x20, 0x09, 0x0A, 0xA2, 0xC8, 0x20, 0x01, 0xFF, 0xF2, 0xC9, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x98, 0x00, 0xC0, 0x01, 0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x9F, 0xFF, 0x20, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x98, 0x00, 0xC0, 0x01, 0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x9F, 0xFF, 0x20, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x98, 0x00, 0xC0, 0x01, 0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x9F, 0xFF, 0x20, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x98, 0x00, 0xC0, 0x01, 0x00, 0x02, 0xCD, 0xA0, 0x01, 0xFF, 0xE7, 0xFF, 0x20, 0x01, 0x0A, 0x78, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x79, 0x08, 0x40, 0x01, 0xFF, 0xF1, 0x08, 0x20, 0x09, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x78, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x79, 0x08, 0x40, 0x01, 0x0A, 0x71, 0x08, 0x20, 0x09, 0x0A, 0x7A, 0xCF, 0x20, 0x01, 0x0A, 0x72, 0xCF, 0x22, 0x41, 0x0A, 0x71, 0x08, 0x22, 0x01, 0x0A, 0x78, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0x79, 0x08, 0x20, 0x01, 0x0A, 0x68, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0xD0, 0x22, 0x49, 0xFF, 0xF1, 0x08, 0x20, 0x01, 0xFF, 0xE9, 0x08, 0x20, 0x25, 0x0A, 0x60, 0x00, 0xE2, 0x01, 0x0A, 0x78, 0x00, 0xC0, 0x01, 0x0A, 0x0F, 0xFF, 0x20, 0x01, 0x0A, 0x58, 0x00, 0xE2, 0x01, 0x0A, 0x51, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x10, 0x00, 0xF0, 0x01, 0xFF, 0xE9, 0x08, 0x22, 0x01, 0x02, 0x18, 0x00, 0xF2, 0x01, 0x0A, 0xE1, 0x08, 0x20, 0x01, 0x0A, 0xE2, 0xDD, 0x22, 0x41, 0x02, 0x1A, 0xDD, 0x22, 0x01, 0x0A, 0xD1, 0x08, 0x34, 0x01, 0x0A, 0xD2, 0xDD, 0x22, 0x41, 0x02, 0x12, 0xDD, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0xD8, 0x00, 0xE2, 0x01, 0x0A, 0xE8, 0x00, 0xF2, 0x01, 0x0A, 0xA0, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0xD9, 0x40, 0x01, 0x0A, 0xA1, 0x08, 0x20, 0x09, 0x0A, 0xA2, 0xD1, 0x20, 0x01, 0xFF, 0xF2, 0xD2, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x0A, 0xA2, 0xD3, 0x20, 0x01, 0xFF, 0xF2, 0xD4, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x23, 0xFF, 0xF2, 0xDA, 0x40, 0x01, 0x0A, 0xA1, 0x08, 0x20, 0x09, 0x0A, 0xA2, 0xD5, 0x20, 0x01, 0xFF, 0xF2, 0xD6, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x23, 0xFF, 0xF2, 0xDB, 0x40, 0x01, 0x0A, 0xA1, 0x08, 0x20, 0x09, 0x0A, 0xA2, 0xD7, 0x20, 0x01, 0xFF, 0xF2, 0xD8, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x98, 0x00, 0xC0, 0x01, 0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x9F, 0xFF, 0x20, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x98, 0x00, 0xC0, 0x01, 0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x9F, 0xFF, 0x20, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x98, 0x00, 0xC0, 0x01, 0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x9F, 0xFF, 0x20, 0x01, 0x09, 0x98, 0x00, 0xE2, 0x01, 0x09, 0x98, 0x00, 0xC0, 0x01, 0x00, 0x02, 0xDC, 0xA0, 0x01, 0xFF, 0xE7, 0xFF, 0x20, 0x01, 0x0A, 0xC8, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0xC9, 0x08, 0x40, 0x01, 0xFF, 0xF1, 0x08, 0x20, 0x09, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0xC8, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0xC9, 0x08, 0x40, 0x01, 0x0A, 0xC1, 0x08, 0x20, 0x09, 0x0A, 0xCA, 0xDE, 0x20, 0x01, 0x0A, 0xC2, 0xDE, 0x22, 0x41, 0x0A, 0xC1, 0x08, 0x22, 0x01, 0x0A, 0xC8, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0A, 0xC9, 0x08, 0x20, 0x01, 0x0A, 0xB8, 0x00, 0xE2, 0x01, 0xFF, 0xF2, 0xDF, 0x22, 0x49, 0xFF, 0xF1, 0x08, 0x20, 0x01, 0xFF, 0xE9, 0x08, 0x20, 0x25, 0x0A, 0xB0, 0x00, 0xE2, 0x01, 0x0A, 0xC8, 0x00, 0xC0, 0x01, 0x0A, 0x57, 0xFF, 0x20, 0x01, 0x0A, 0xA8, 0x00, 0xE2, 0x01, 0x0A, 0xA9, 0x08, 0x20, 0x01, 0xFF, 0x28, 0x00, 0x02, 0x01, 0x0A, 0x59, 0x08, 0x20, 0x01, 0xFF, 0x30, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, Param
0
4 4096 - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C, 0xAC, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x7F, 0xC3, 0x65, 0x0F, 0x00, 0x79, 0x35, 0x00, 0x7F, 0xC3, 0x65, 0x00, 0xFF, 0x86, 0xAE, 0x0F, 0x80, 0x79, 0x19, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x0F, 0xFE, 0x2B, 0xE3, 0x00, 0x22, 0xBE, 0x2C, 0x0F, 0xEA, 0xAA, 0xAB, 0x00, 0x6A, 0xAA, 0xAB, 0x0F, 0x9A, 0x69, 0xA7, 0x00, 0xFD, 0xF7, 0xDF, 0x08, 0x3C, 0x6C, 0x20, 0x03, 0xF5, 0xAA, 0x23, 0x01, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0xDC, 0x00, 0x00, 0x08, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x0F, 0xFE, 0x2B, 0xE3, 0x00, 0x22, 0xBE, 0x2C, 0x0F, 0xEA, 0xAA, 0xAB, 0x00, 0x6A, 0xAA, 0xAB, 0x0F, 0x9A, 0x69, 0xA7, 0x00, 0xFD, 0xF7, 0xDF, 0x08, 0x3C, 0x6C, 0x20, 0x03, 0xF5, 0xAA, 0x23, 0x01, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0xDC, 0x00, 0x00, 0x08, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C, 0xAC, 0x00, 0x80, 0x00, 0x00, 0x00, 0x7F, 0xFC, 0xB9, 0x00, 0x7F, 0xFC, 0xB9, 0x00, 0x7F, 0xFC, 0xB9, 0x00, 0x7F, 0xFC, 0xB9, 0x01, 0x41, 0x85, 0x7F, 0x00, 0x09, 0x0F, 0xCC, 0x00, 0x09, 0x0F, 0xCC, 0x00, 0x06, 0x6A, 0x4A, 0x00, 0x04, 0x8A, 0xA7, 0x00, 0x03, 0x37, 0x18, 0x00, 0x02, 0x46, 0xB5, 0x00, 0x01, 0x9C, 0x86, 0x00, 0x01, 0x24, 0x0C, 0x00, 0x00, 0xCE, 0xC1, 0x00, 0x00, 0x92, 0x5F, 0x00, 0x00, 0x67, 0x9F, 0x00, 0x00, 0x49, 0x5C, 0x00, 0x00, 0xDA, 0xD7, 0x00, 0x02, 0xFD, 0x86, 0x00, 0x0A, 0x75, 0xDE, 0x00, 0x24, 0x97, 0x68, 0x00, 0x7E, 0xDA, 0x4D, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xB9, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x09, 0x60, 0x00, 0x00, 0x00, 0xB6, 0x00, 0x00, 0x4E, 0xB0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x1C, 0x00, 0x00, 0x4E, 0xB0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x1C, 0x00, 0x00, 0x4E, 0xB0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x1C, 0x00, 0x00, 0x4E, 0xB0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x1C, 0x00, 0x7F, 0xC3, 0x65, 0x0F, 0x00, 0x79, 0x35, 0x00, 0x7F, 0xC3, 0x65, 0x00, 0xFF, 0x86, 0xAE, 0x0F, 0x80, 0x79, 0x19, 0x00, 0x7F, 0xE6, 0x6F, 0x0F, 0x01, 0xD7, 0xBF, 0x00, 0x7E, 0x47, 0xC2, 0x00, 0xFE, 0x28, 0x41, 0x0F, 0x81, 0xD1, 0xCF, 0x00, 0x80, 0x0B, 0x93, 0x0F, 0x06, 0x4A, 0x08, 0x00, 0x79, 0xF5, 0x34, 0x00, 0xF9, 0xB5, 0xF8, 0x0F, 0x85, 0xFF, 0x39, 0x00, 0x7F, 0x5D, 0x86, 0x0F, 0x14, 0xBB, 0x22, 0x00, 0x6E, 0x7D, 0xEA, 0x00, 0xEB, 0x44, 0xDE, 0x0F, 0x92, 0x24, 0x90, 0x00, 0x80, 0x52, 0x5D, 0x0F, 0x3C, 0xC4, 0x90, 0x00, 0x55, 0x01, 0xAB, 0x00, 0xC3, 0x3B, 0x70, 0x0F, 0xAA, 0xAB, 0xF8, 0x00, 0x82, 0x2B, 0x9A, 0x0F, 0x98, 0xC2, 0xB2, 0x00, 0x34, 0x93, 0x0C, 0x00, 0x67, 0x3D, 0x4E, 0x0F, 0xC9, 0x41, 0x5A, 0x00, 0x02, 0xC4, 0x78, 0x00, 0x05, 0x88, 0xEF, 0x00, 0x02, 0xC4, 0x78, 0x00, 0xC5, 0x84, 0xFE, 0xFF, 0xAF, 0x69, 0x23, 0x00, 0x65, 0x86, 0xF7, 0xFF, 0x34, 0xF2, 0x12, 0x00, 0x65, 0x86, 0xF7, 0x00, 0xC5, 0x84, 0xFE, 0xFF, 0xAF, 0x69, 0x23, 0x00, 0xA6, 0x66, 0x66, 0x00, 0x73, 0x33, 0x33, 0x00, 0x6D, 0x66, 0xD6, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x75, 0x69, 0x4C, 0x00, 0x5A, 0x9D, 0xF8, 0x00, 0x45, 0xEF, 0xFF, 0x00, 0x35, 0xFA, 0x27, 0x00, 0x29, 0xA8, 0xBB, 0x00, 0x20, 0x26, 0xF3, 0x00, 0x06, 0x4A, 0x36, 0x00, 0x00, 0x01, 0x6C, 0x00, 0x00, 0x5D, 0xC0, 0x00, 0x08, 0x0D, 0x6A, 0x00, 0x02, 0x78, 0x8C, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x01, 0x01, 0x5C, 0x00, 0x00, 0x01, 0x64, 0x00, 0x00, 0x02, 0xC8, 0x00, 0x00, 0x01, 0x64, 0x00, 0xFD, 0xA1, 0x53, 0x0F, 0x82, 0x59, 0x1D, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x29, 0x53, 0x21, 0x00, 0x2A, 0xC6, 0xE7, 0x00, 0x2C, 0x47, 0xBE, 0x00, 0x2D, 0xD6, 0x1B, 0x00, 0x2F, 0x72, 0x77, 0x00, 0x31, 0x1D, 0x52, 0x00, 0x32, 0xD7, 0x2C, 0x00, 0x34, 0xA0, 0x8E, 0x00, 0x36, 0x7A, 0x02, 0x00, 0x00, 0x06, 0xD3, 0x00, 0x00, 0x4E, 0xB0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x1C, 0x00, 0x00, 0x4E, 0xB0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x1C, 0x0F, 0xFE, 0x2B, 0xE3, 0x00, 0x22, 0xBE, 0x2C, 0x0F, 0xEA, 0xAA, 0xAB, 0x00, 0x6A, 0xAA, 0xAB, 0x0F, 0x9A, 0x69, 0xA7, 0x00, 0xFD, 0xF7, 0xDF, 0x08, 0x3C, 0x6C, 0x20, 0x03, 0xF5, 0xAA, 0x23, 0x01, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0xDC, 0x00, 0x00, 0x08, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x0F, 0xFE, 0x2B, 0xE3, 0x00, 0x22, 0xBE, 0x2C, 0x0F, 0xEA, 0xAA, 0xAB, 0x00, 0x6A, 0xAA, 0xAB, 0x0F, 0x9A, 0x69, 0xA7, 0x00, 0xFD, 0xF7, 0xDF, 0x08, 0x3C, 0x6C, 0x20, 0x03, 0xF5, 0xAA, 0x23, 0x01, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0xDC, 0x00, 0x00, 0x08, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
IC 1.HWConFiguration @@ -53,106 +53,16 @@ 2 0x00, 0x1C, - - Si4674 - - ALG0 - Gain1940AlgNS1 - Gain (no slew)( 1 ) : Gain`max[ 0 ],Gain`min[ -80 ],Gain`res[ 40 ],Gain[ 0 ]; - - Gain1940AlgNS1 - FixedPoint -
3
- 1 - 4 - 0x00, 0x80, 0x00, 0x00, -
-
- - ALG1 - Gain1940AlgNS2 - Gain (no slew)( 1 ) : Gain`max[ 0 ],Gain`min[ -80 ],Gain`res[ 40 ],Gain[ 0 ]; - - Gain1940AlgNS2 - FixedPoint -
4
- 1 - 4 - 0x00, 0x80, 0x00, 0x00, -
-
-
- - ESP32 - - ALG0 - Gain1940AlgNS3 - Gain (no slew)( 1 ) : Gain`max[ 0 ],Gain`min[ -80 ],Gain`res[ 40 ],Gain[ 0 ]; - - Gain1940AlgNS3 - FixedPoint -
5
- 1 - 4 - 0x00, 0x80, 0x00, 0x00, -
-
- - ALG1 - Gain1940AlgNS4 - Gain (no slew)( 1 ) : Gain`max[ 0 ],Gain`min[ -80 ],Gain`res[ 40 ],Gain[ 0 ]; - - Gain1940AlgNS4 - FixedPoint -
6
- 1 - 4 - 0x00, 0x80, 0x00, 0x00, -
-
-
- - St Mixer1 - - ALG0 - StereoMixerAlg1 - Stereo Mixer( 3 ) : Gain`max[ 6 ],Gain`min[ -30 ],Gain`res[ 36 ],Gain[ 0 ];Gain`max[ 6 ],Gain`min[ -30 ],Gain`res[ 36 ],Gain[ 0 ];Gain`max[ 6 ],Gain`min[ -30 ],Gain`res[ 36 ],Gain[ 0 ]; - - StereoMixerAlg12 - FixedPoint -
9
- 1 - 4 - 0x00, 0x80, 0x00, 0x00, -
- - StereoMixerAlg14 - FixedPoint -
10
- 1 - 4 - 0x00, 0x80, 0x00, 0x00, -
- - StereoMixerAlg16 - FixedPoint -
11
- 1 - 4 - 0x00, 0x80, 0x00, 0x00, -
-
-
Param EQ1 ALG0 PEQ1Chan1 - PEQ1Chan - Double Precision( 1 ) : Gain10[ 0 ],Gain20[ 0 ],Q0[ 1.41 ],Boost0[ 0 ],Frequency10[ 20 ],Frequency20[ 1000 ],Ripple0[ 0.1 ],Active10[ True ],Active20[ True ],LowPass10[ True ],LowPass20[ True ],Bypass0[ False ],View0[ False ],Type0[ 6 ],SubType0[ 0 ],Gain11[ 0 ],Gain21[ 0 ],Q1[ 1 ],Boost1[ 0 ],Frequency11[ 100 ],Frequency21[ 1000 ],Ripple1[ 0.1 ],Active11[ True ],Active21[ True ],LowPass11[ True ],LowPass21[ True ],Bypass1[ False ],View1[ False ],Type1[ 0 ],SubType1[ 0 ],Gain12[ 0 ],Gain22[ 0 ],Q2[ 1 ],Boost2[ 0 ],Frequency12[ 400 ],Frequency22[ 1000 ],Ripple2[ 0.1 ],Active12[ True ],Active22[ True ],LowPass12[ True ],LowPass22[ True ],Bypass2[ False ],View2[ False ],Type2[ 0 ],SubType2[ 0 ],Gain13[ 0 ],Gain23[ 0 ],Q3[ 1 ],Boost3[ 0 ],Frequency13[ 1000 ],Frequency23[ 1000 ],Ripple3[ 0.1 ],Active13[ True ],Active23[ True ],LowPass13[ True ],LowPass23[ True ],Bypass3[ False ],View3[ False ],Type3[ 0 ],SubType3[ 0 ],Gain14[ 0 ],Gain24[ 0 ],Q4[ 1 ],Boost4[ 0 ],Frequency14[ 3000 ],Frequency24[ 1000 ],Ripple4[ 0.1 ],Active14[ True ],Active24[ True ],LowPass14[ True ],LowPass24[ True ],Bypass4[ False ],View4[ False ],Type4[ 0 ],SubType4[ 0 ],Gain15[ 0 ],Gain25[ 0 ],Q5[ 1 ],Boost5[ 0 ],Frequency15[ 8000 ],Frequency25[ 1000 ],Ripple5[ 0.1 ],Active15[ True ],Active25[ True ],LowPass15[ True ],LowPass25[ True ],Bypass5[ False ],View5[ False ],Type5[ 0 ],SubType5[ 0 ],Gain16[ 0 ],Gain26[ 0 ],Q6[ 1.41 ],Boost6[ 5 ],Frequency16[ 4000 ],Frequency26[ 1000 ],Ripple6[ 0.1 ],Active16[ True ],Active26[ True ],LowPass16[ True ],LowPass26[ True ],Bypass6[ False ],View6[ False ],Type6[ 0 ],SubType6[ 0 ],Gain17[ 0 ],Gain27[ 0 ],Q7[ 1.41 ],Boost7[ 5 ],Frequency17[ 8000 ],Frequency27[ 1000 ],Ripple7[ 0.1 ],Active17[ True ],Active27[ True ],LowPass17[ True ],LowPass27[ True ],Bypass7[ False ],View7[ False ],Type7[ 0 ],SubType7[ 0 ],Gain18[ 0 ],Gain28[ 0 ],Q8[ 1.41 ],Boost8[ 5 ],Frequency18[ 16000 ],Frequency28[ 1000 ],Ripple8[ 0.1 ],Active18[ True ],Active28[ True ],LowPass18[ True ],LowPass28[ True ],Bypass8[ False ],View8[ False ],Type8[ 0 ],SubType8[ 0 ],Gain19[ 0 ],Gain29[ 0 ],Q9[ 1.41 ],Boost9[ 5 ],Frequency19[ 32000 ],Frequency29[ 1000 ],Ripple9[ 0.1 ],Active19[ True ],Active29[ True ],LowPass19[ True ],LowPass29[ True ],Bypass9[ False ],View9[ False ],Type9[ 0 ],SubType9[ 0 ],Gain110[ 0 ],Gain210[ 0 ],Q10[ 1.41 ],Boost10[ 5 ],Frequency110[ 64000 ],Frequency210[ 1000 ],Ripple10[ 0.1 ],Active110[ True ],Active210[ True ],LowPass110[ True ],LowPass210[ True ],Bypass10[ False ],View10[ False ],Type10[ 0 ],SubType10[ 0 ],Gain111[ 0 ],Gain211[ 0 ],Q11[ 1.41 ],Boost11[ 5 ],Frequency111[ 128000 ],Frequency211[ 1000 ],Ripple11[ 0.1 ],Active111[ True ],Active211[ True ],LowPass111[ True ],LowPass211[ True ],Bypass11[ False ],View11[ False ],Type11[ 0 ],SubType11[ 0 ],Gain112[ 0 ],Gain212[ 0 ],Q12[ 1.41 ],Boost12[ 5 ],Frequency112[ 256000 ],Frequency212[ 1000 ],Ripple12[ 0.1 ],Active112[ True ],Active212[ True ],LowPass112[ True ],LowPass212[ True ],Bypass12[ False ],View12[ False ],Type12[ 0 ],SubType12[ 0 ],Gain113[ 0 ],Gain213[ 0 ],Q13[ 1.41 ],Boost13[ 5 ],Frequency113[ 512000 ],Frequency213[ 1000 ],Ripple13[ 0.1 ],Active113[ True ],Active213[ True ],LowPass113[ True ],LowPass213[ True ],Bypass13[ False ],View13[ False ],Type13[ 0 ],SubType13[ 0 ],Gain114[ 0 ],Gain214[ 0 ],Q14[ 1.41 ],Boost14[ 5 ],Frequency114[ 1024000 ],Frequency214[ 1000 ],Ripple14[ 0.1 ],Active114[ True ],Active214[ True ],LowPass114[ True ],LowPass214[ True ],Bypass14[ False ],View14[ False ],Type14[ 0 ],SubType14[ 0 ],Index[ 5 ]; + PEQ1Chan - Double Precision( 1 ) : Gain10[ 0 ],Gain20[ 0 ],Q0[ 1.41 ],Boost0[ 0 ],Frequency10[ 20 ],Frequency20[ 1000 ],Ripple0[ 0.1 ],Active10[ True ],Active20[ True ],LowPass10[ True ],LowPass20[ True ],Bypass0[ False ],View0[ False ],Type0[ 6 ],SubType0[ 0 ],Gain11[ 0 ],Gain21[ 0 ],Q1[ 1 ],Boost1[ -1.01 ],Frequency11[ 103.2 ],Frequency21[ 1000 ],Ripple1[ 0.1 ],Active11[ True ],Active21[ True ],LowPass11[ True ],LowPass21[ True ],Bypass1[ False ],View1[ False ],Type1[ 0 ],SubType1[ 0 ],Gain12[ 0 ],Gain22[ 0 ],Q2[ 1 ],Boost2[ 0.13 ],Frequency12[ 369.4 ],Frequency22[ 1000 ],Ripple2[ 0.1 ],Active12[ True ],Active22[ True ],LowPass12[ True ],LowPass22[ True ],Bypass2[ False ],View2[ False ],Type2[ 0 ],SubType2[ 0 ],Gain13[ 0 ],Gain23[ 0 ],Q3[ 1 ],Boost3[ -0.63 ],Frequency13[ 1128 ],Frequency23[ 1000 ],Ripple3[ 0.1 ],Active13[ True ],Active23[ True ],LowPass13[ True ],LowPass23[ True ],Bypass3[ False ],View3[ False ],Type3[ 0 ],SubType3[ 0 ],Gain14[ 0 ],Gain24[ 0 ],Q4[ 1 ],Boost4[ 0.13 ],Frequency14[ 3169.3 ],Frequency24[ 1000 ],Ripple4[ 0.1 ],Active14[ True ],Active24[ True ],LowPass14[ True ],LowPass24[ True ],Bypass4[ False ],View4[ False ],Type4[ 0 ],SubType4[ 0 ],Gain15[ 0 ],Gain25[ 0 ],Q5[ 1 ],Boost5[ 0.5 ],Frequency15[ 7413.6 ],Frequency25[ 1000 ],Ripple5[ 0.1 ],Active15[ True ],Active25[ True ],LowPass15[ True ],LowPass25[ True ],Bypass5[ False ],View5[ False ],Type5[ 0 ],SubType5[ 0 ],Gain16[ 0 ],Gain26[ 0 ],Q6[ 1.41 ],Boost6[ 5 ],Frequency16[ 4000 ],Frequency26[ 1000 ],Ripple6[ 0.1 ],Active16[ True ],Active26[ True ],LowPass16[ True ],LowPass26[ True ],Bypass6[ False ],View6[ False ],Type6[ 0 ],SubType6[ 0 ],Gain17[ 0 ],Gain27[ 0 ],Q7[ 1.41 ],Boost7[ 5 ],Frequency17[ 8000 ],Frequency27[ 1000 ],Ripple7[ 0.1 ],Active17[ True ],Active27[ True ],LowPass17[ True ],LowPass27[ True ],Bypass7[ False ],View7[ False ],Type7[ 0 ],SubType7[ 0 ],Gain18[ 0 ],Gain28[ 0 ],Q8[ 1.41 ],Boost8[ 5 ],Frequency18[ 16000 ],Frequency28[ 1000 ],Ripple8[ 0.1 ],Active18[ True ],Active28[ True ],LowPass18[ True ],LowPass28[ True ],Bypass8[ False ],View8[ False ],Type8[ 0 ],SubType8[ 0 ],Gain19[ 0 ],Gain29[ 0 ],Q9[ 1.41 ],Boost9[ 5 ],Frequency19[ 32000 ],Frequency29[ 1000 ],Ripple9[ 0.1 ],Active19[ True ],Active29[ True ],LowPass19[ True ],LowPass29[ True ],Bypass9[ False ],View9[ False ],Type9[ 0 ],SubType9[ 0 ],Gain110[ 0 ],Gain210[ 0 ],Q10[ 1.41 ],Boost10[ 5 ],Frequency110[ 64000 ],Frequency210[ 1000 ],Ripple10[ 0.1 ],Active110[ True ],Active210[ True ],LowPass110[ True ],LowPass210[ True ],Bypass10[ False ],View10[ False ],Type10[ 0 ],SubType10[ 0 ],Gain111[ 0 ],Gain211[ 0 ],Q11[ 1.41 ],Boost11[ 5 ],Frequency111[ 128000 ],Frequency211[ 1000 ],Ripple11[ 0.1 ],Active111[ True ],Active211[ True ],LowPass111[ True ],LowPass211[ True ],Bypass11[ False ],View11[ False ],Type11[ 0 ],SubType11[ 0 ],Gain112[ 0 ],Gain212[ 0 ],Q12[ 1.41 ],Boost12[ 5 ],Frequency112[ 256000 ],Frequency212[ 1000 ],Ripple12[ 0.1 ],Active112[ True ],Active212[ True ],LowPass112[ True ],LowPass212[ True ],Bypass12[ False ],View12[ False ],Type12[ 0 ],SubType12[ 0 ],Gain113[ 0 ],Gain213[ 0 ],Q13[ 1.41 ],Boost13[ 5 ],Frequency113[ 512000 ],Frequency213[ 1000 ],Ripple13[ 0.1 ],Active113[ True ],Active213[ True ],LowPass113[ True ],LowPass213[ True ],Bypass13[ False ],View13[ False ],Type13[ 0 ],SubType13[ 0 ],Gain114[ 0 ],Gain214[ 0 ],Q14[ 1.41 ],Boost14[ 5 ],Frequency114[ 1024000 ],Frequency214[ 1000 ],Ripple14[ 0.1 ],Active114[ True ],Active214[ True ],LowPass114[ True ],LowPass214[ True ],Bypass14[ False ],View14[ False ],Type14[ 0 ],SubType14[ 0 ],Index[ 5 ]; PEQ1Chan10B1 FixedPoint -
12
+
59
0.99815046787262 4 0x00, 0x7F, 0xC3, 0x65, @@ -160,7 +70,7 @@ PEQ1Chan10B1 FixedPoint -
12
+
59
0.99815046787262 4 0x00, 0x7F, 0xC3, 0x65, @@ -168,7 +78,7 @@ PEQ1Chan11B1 FixedPoint -
13
+
60
-1.99630105495453 4 0x0F, 0x00, 0x79, 0x35, @@ -176,7 +86,7 @@ PEQ1Chan11B1 FixedPoint -
13
+
60
-1.99630105495453 4 0x0F, 0x00, 0x79, 0x35, @@ -184,7 +94,7 @@ PEQ1Chan12B1 FixedPoint -
14
+
61
0.99815046787262 4 0x00, 0x7F, 0xC3, 0x65, @@ -192,7 +102,7 @@ PEQ1Chan12B1 FixedPoint -
14
+
61
0.99815046787262 4 0x00, 0x7F, 0xC3, 0x65, @@ -200,7 +110,7 @@ PEQ1Chan11A1 FixedPoint -
15
+
62
1.99629759788513 4 0x00, 0xFF, 0x86, 0xAE, @@ -208,7 +118,7 @@ PEQ1Chan11A1 FixedPoint -
15
+
62
1.99629759788513 4 0x00, 0xFF, 0x86, 0xAE, @@ -216,7 +126,7 @@ PEQ1Chan12A1 FixedPoint -
16
+
63
-0.996304392814636 4 0x0F, 0x80, 0x79, 0x19, @@ -224,7 +134,7 @@ PEQ1Chan12A1 FixedPoint -
16
+
63
-0.996304392814636 4 0x0F, 0x80, 0x79, 0x19, @@ -232,402 +142,402 @@ PEQ1Chan10B2 FixedPoint -
17
- 1 +
64
+ 0.99921977519989 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x7F, 0xE6, 0x6F,
PEQ1Chan10B2 FixedPoint -
17
- 1 +
64
+ 0.99921977519989 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x7F, 0xE6, 0x6F,
PEQ1Chan11B2 FixedPoint -
18
- 0 +
65
+ -1.98560345172882 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x01, 0xD7, 0xBF,
PEQ1Chan11B2 FixedPoint -
18
- 0 +
65
+ -1.98560345172882 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x01, 0xD7, 0xBF,
PEQ1Chan12B2 FixedPoint -
19
- 0 +
66
+ 0.986564874649048 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x7E, 0x47, 0xC2,
PEQ1Chan12B2 FixedPoint -
19
- 0 +
66
+ 0.986564874649048 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x7E, 0x47, 0xC2,
PEQ1Chan11A2 FixedPoint -
20
- 0 +
67
+ 1.98560345172882 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0xFE, 0x28, 0x41,
PEQ1Chan11A2 FixedPoint -
20
- 0 +
67
+ 1.98560345172882 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0xFE, 0x28, 0x41,
PEQ1Chan12A2 FixedPoint -
21
- 0 +
68
+ -0.985784649848938 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x81, 0xD1, 0xCF,
PEQ1Chan12A2 FixedPoint -
21
- 0 +
68
+ -0.985784649848938 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x81, 0xD1, 0xCF,
PEQ1Chan10B3 FixedPoint -
22
- 1 +
69
+ 1.00035321712494 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x80, 0x0B, 0x93,
PEQ1Chan10B3 FixedPoint -
22
- 1 +
69
+ 1.00035321712494 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x80, 0x0B, 0x93,
PEQ1Chan11B3 FixedPoint -
23
- 0 +
70
+ -1.95086574554443 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x06, 0x4A, 0x08,
PEQ1Chan11B3 FixedPoint -
23
- 0 +
70
+ -1.95086574554443 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x06, 0x4A, 0x08,
PEQ1Chan12B3 FixedPoint -
24
- 0 +
71
+ 0.952795505523682 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x79, 0xF5, 0x34,
PEQ1Chan12B3 FixedPoint -
24
- 0 +
71
+ 0.952795505523682 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x79, 0xF5, 0x34,
PEQ1Chan11A3 FixedPoint -
25
- 0 +
72
+ 1.95086574554443 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0xF9, 0xB5, 0xF8,
PEQ1Chan11A3 FixedPoint -
25
- 0 +
72
+ 1.95086574554443 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0xF9, 0xB5, 0xF8,
PEQ1Chan12A3 FixedPoint -
26
- 0 +
73
+ -0.953148722648621 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x85, 0xFF, 0x39,
PEQ1Chan12A3 FixedPoint -
26
- 0 +
73
+ -0.953148722648621 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x85, 0xFF, 0x39,
PEQ1Chan10B4 FixedPoint -
27
- 1 +
74
+ 0.995041608810425 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x7F, 0x5D, 0x86,
PEQ1Chan10B4 FixedPoint -
27
- 1 +
74
+ 0.995041608810425 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x7F, 0x5D, 0x86,
PEQ1Chan11B4 FixedPoint -
28
- 0 +
75
+ -1.83803915977478 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x14, 0xBB, 0x22,
PEQ1Chan11B4 FixedPoint -
28
- 0 +
75
+ -1.83803915977478 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x14, 0xBB, 0x22,
PEQ1Chan12B4 FixedPoint -
29
- 0 +
76
+ 0.86321759223938 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x6E, 0x7D, 0xEA,
PEQ1Chan12B4 FixedPoint -
29
- 0 +
76
+ 0.86321759223938 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x6E, 0x7D, 0xEA,
PEQ1Chan11A4 FixedPoint -
30
- 0 +
77
+ 1.83803915977478 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0xEB, 0x44, 0xDE,
PEQ1Chan11A4 FixedPoint -
30
- 0 +
77
+ 1.83803915977478 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0xEB, 0x44, 0xDE,
PEQ1Chan12A4 FixedPoint -
31
- 0 +
78
+ -0.858259201049805 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x92, 0x24, 0x90,
PEQ1Chan12A4 FixedPoint -
31
- 0 +
78
+ -0.858259201049805 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x92, 0x24, 0x90,
PEQ1Chan10B5 FixedPoint -
32
- 1 +
79
+ 1.00251352787018 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x80, 0x52, 0x5D,
PEQ1Chan10B5 FixedPoint -
32
- 1 +
79
+ 1.00251352787018 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x80, 0x52, 0x5D,
PEQ1Chan11B5 FixedPoint -
33
- 0 +
80
+ -1.5252513885498 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x3C, 0xC4, 0x90,
PEQ1Chan11B5 FixedPoint -
33
- 0 +
80
+ -1.5252513885498 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x3C, 0xC4, 0x90,
PEQ1Chan12B5 FixedPoint -
34
- 0 +
81
+ 0.664113402366638 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x55, 0x01, 0xAB,
PEQ1Chan12B5 FixedPoint -
34
- 0 +
81
+ 0.664113402366638 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x55, 0x01, 0xAB,
PEQ1Chan11A5 FixedPoint -
35
- 0 +
82
+ 1.5252513885498 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0xC3, 0x3B, 0x70,
PEQ1Chan11A5 FixedPoint -
35
- 0 +
82
+ 1.5252513885498 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0xC3, 0x3B, 0x70,
PEQ1Chan12A5 FixedPoint -
36
- 0 +
83
+ -0.666626930236816 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0xAA, 0xAB, 0xF8,
PEQ1Chan12A5 FixedPoint -
36
- 0 +
83
+ -0.666626930236816 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0xAA, 0xAB, 0xF8,
PEQ1Chan10B6 FixedPoint -
37
- 1 +
84
+ 1.01695561408997 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x82, 0x2B, 0x9A,
PEQ1Chan10B6 FixedPoint -
37
- 1 +
84
+ 1.01695561408997 4 - 0x00, 0x80, 0x00, 0x00, + 0x00, 0x82, 0x2B, 0x9A,
PEQ1Chan11B6 FixedPoint -
38
- 0 +
85
+ -0.80655837059021 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x98, 0xC2, 0xB2,
PEQ1Chan11B6 FixedPoint -
38
- 0 +
85
+ -0.80655837059021 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0x98, 0xC2, 0xB2,
PEQ1Chan12B6 FixedPoint -
39
- 0 +
86
+ 0.41073751449585 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x34, 0x93, 0x0C,
PEQ1Chan12B6 FixedPoint -
39
- 0 +
86
+ 0.41073751449585 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x34, 0x93, 0x0C,
PEQ1Chan11A6 FixedPoint -
40
- 0 +
87
+ 0.80655837059021 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x67, 0x3D, 0x4E,
PEQ1Chan11A6 FixedPoint -
40
- 0 +
87
+ 0.80655837059021 4 - 0x00, 0x00, 0x00, 0x00, + 0x00, 0x67, 0x3D, 0x4E,
PEQ1Chan12A6 FixedPoint -
41
- 0 +
88
+ -0.427693128585815 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0xC9, 0x41, 0x5A,
PEQ1Chan12A6 FixedPoint -
41
- 0 +
88
+ -0.427693128585815 4 - 0x00, 0x00, 0x00, 0x00, + 0x0F, 0xC9, 0x41, 0x5A,
@@ -640,7 +550,7 @@ Gain1940AlgNS5 FixedPoint -
42
+
146
1 4 0x00, 0x80, 0x00, 0x00, @@ -653,7 +563,7 @@ Gain1940AlgNS6 FixedPoint -
43
+
147
1 4 0x00, 0x80, 0x00, 0x00, @@ -669,7 +579,7 @@ limiterAlg1slope_1 FixedPoint -
44
+
209
-0.014285683631897 4 0x0F, 0xFE, 0x2B, 0xE3, @@ -677,7 +587,7 @@ limiterAlg1inter_1 FixedPoint -
45
+
210
0.27142858505249 4 0x00, 0x22, 0xBE, 0x2C, @@ -685,7 +595,7 @@ limiterAlg1slope_2 FixedPoint -
46
+
211
-0.166666626930237 4 0x0F, 0xEA, 0xAA, 0xAB, @@ -693,7 +603,7 @@ limiterAlg1inter_2 FixedPoint -
47
+
212
0.833333373069763 4 0x00, 0x6A, 0xAA, 0xAB, @@ -701,7 +611,7 @@ limiterAlg1slope_3 FixedPoint -
48
+
213
-0.79365074634552 4 0x0F, 0x9A, 0x69, 0xA7, @@ -709,7 +619,7 @@ limiterAlg1inter_3 FixedPoint -
49
+
214
1.98412692546844 4 0x00, 0xFD, 0xF7, 0xDF, @@ -717,7 +627,7 @@ limiterAlg1slope_4 FixedPoint -
50
+
215
-15.5279502868652 4 0x08, 0x3C, 0x6C, 0x20, @@ -725,7 +635,7 @@ limiterAlg1inter_4 FixedPoint -
51
+
216
7.91925466060638 4 0x03, 0xF5, 0xAA, 0x23, @@ -733,7 +643,7 @@ limiterAlg1comp1 FixedPoint -
52
+
217
3 4 0x01, 0x80, 0x00, 0x00, @@ -741,7 +651,7 @@ limiterAlg1comp2 FixedPoint -
53
+
218
2 4 0x01, 0x00, 0x00, 0x00, @@ -749,7 +659,7 @@ limiterAlg1comp3 FixedPoint -
54
+
219
0.399999976158142 4 0x00, 0x33, 0x33, 0x33, @@ -757,7 +667,7 @@ limiterAlg1threshold FixedPoint -
55
+
220
1 4 0x00, 0x80, 0x00, 0x00, @@ -765,7 +675,7 @@ limiterAlg1RMS_MONO_TCONST FixedPoint -
56
+
221
0.000239849090576172 4 0x00, 0x00, 0x07, 0xDC, @@ -773,7 +683,7 @@ limiterAlg1decay FixedPoint -
57
+
222
0.000244140625 4 0x00, 0x00, 0x08, 0x00, @@ -781,135 +691,7 @@ limiterAlg1decaycomplement FixedPoint -
58
- 0.99951171875 - 4 - 0x00, 0x7F, 0xF0, 0x00, -
- - - - Limiter 2 - - ALG0 - limiterAlg2 - Limiter with Indicator( 1 ) : RMSvalue[ 50 ],Threshold[ 0 ],DecayTime[ 12 ]; - - limiterAlg2slope_1 - FixedPoint -
59
- -0.014285683631897 - 4 - 0x0F, 0xFE, 0x2B, 0xE3, -
- - limiterAlg2inter_1 - FixedPoint -
60
- 0.27142858505249 - 4 - 0x00, 0x22, 0xBE, 0x2C, -
- - limiterAlg2slope_2 - FixedPoint -
61
- -0.166666626930237 - 4 - 0x0F, 0xEA, 0xAA, 0xAB, -
- - limiterAlg2inter_2 - FixedPoint -
62
- 0.833333373069763 - 4 - 0x00, 0x6A, 0xAA, 0xAB, -
- - limiterAlg2slope_3 - FixedPoint -
63
- -0.79365074634552 - 4 - 0x0F, 0x9A, 0x69, 0xA7, -
- - limiterAlg2inter_3 - FixedPoint -
64
- 1.98412692546844 - 4 - 0x00, 0xFD, 0xF7, 0xDF, -
- - limiterAlg2slope_4 - FixedPoint -
65
- -15.5279502868652 - 4 - 0x08, 0x3C, 0x6C, 0x20, -
- - limiterAlg2inter_4 - FixedPoint -
66
- 7.91925466060638 - 4 - 0x03, 0xF5, 0xAA, 0x23, -
- - limiterAlg2comp1 - FixedPoint -
67
- 3 - 4 - 0x01, 0x80, 0x00, 0x00, -
- - limiterAlg2comp2 - FixedPoint -
68
- 2 - 4 - 0x01, 0x00, 0x00, 0x00, -
- - limiterAlg2comp3 - FixedPoint -
69
- 0.399999976158142 - 4 - 0x00, 0x33, 0x33, 0x33, -
- - limiterAlg2threshold - FixedPoint -
70
- 1 - 4 - 0x00, 0x80, 0x00, 0x00, -
- - limiterAlg2RMS_MONO_TCONST - FixedPoint -
71
- 0.000239849090576172 - 4 - 0x00, 0x00, 0x07, 0xDC, -
- - limiterAlg2decay - FixedPoint -
72
- 0.000244140625 - 4 - 0x00, 0x00, 0x08, 0x00, -
- - limiterAlg2decaycomplement - FixedPoint -
73
+
223
0.99951171875 4 0x00, 0x7F, 0xF0, 0x00, @@ -949,15 +731,459 @@
- Single 1 + S Splitter1 ALG0 - Gain1940AlgNS7 - Gain (no slew)( 1 ) : Gain`max[ 0 ],Gain`min[ -80 ],Gain`res[ 40 ],Gain[ 0 ]; + SingleCtrlSplit1 + Splitter Single( 1 ) : Gain`max[ 8 ],Gain`min[ -40 ],Gain`res[ 48 ],Gain[ 8 ]; - Gain1940AlgNS7 + SingleCtrlSplit1 + FixedPoint +
8
+ 2.5118864774704 + 4 + 0x01, 0x41, 0x85, 0x7F, +
+
+
+ + Limiter 2 + + ALG0 + limiterAlg2 + Limiter with Indicator( 1 ) : RMSvalue[ 50 ],Threshold[ 0 ],DecayTime[ 12 ]; + + limiterAlg2slope_1 + FixedPoint +
194
+ -0.014285683631897 + 4 + 0x0F, 0xFE, 0x2B, 0xE3, +
+ + limiterAlg2inter_1 + FixedPoint +
195
+ 0.27142858505249 + 4 + 0x00, 0x22, 0xBE, 0x2C, +
+ + limiterAlg2slope_2 + FixedPoint +
196
+ -0.166666626930237 + 4 + 0x0F, 0xEA, 0xAA, 0xAB, +
+ + limiterAlg2inter_2 + FixedPoint +
197
+ 0.833333373069763 + 4 + 0x00, 0x6A, 0xAA, 0xAB, +
+ + limiterAlg2slope_3 + FixedPoint +
198
+ -0.79365074634552 + 4 + 0x0F, 0x9A, 0x69, 0xA7, +
+ + limiterAlg2inter_3 + FixedPoint +
199
+ 1.98412692546844 + 4 + 0x00, 0xFD, 0xF7, 0xDF, +
+ + limiterAlg2slope_4 + FixedPoint +
200
+ -15.5279502868652 + 4 + 0x08, 0x3C, 0x6C, 0x20, +
+ + limiterAlg2inter_4 + FixedPoint +
201
+ 7.91925466060638 + 4 + 0x03, 0xF5, 0xAA, 0x23, +
+ + limiterAlg2comp1 + FixedPoint +
202
+ 3 + 4 + 0x01, 0x80, 0x00, 0x00, +
+ + limiterAlg2comp2 + FixedPoint +
203
+ 2 + 4 + 0x01, 0x00, 0x00, 0x00, +
+ + limiterAlg2comp3 + FixedPoint +
204
+ 0.399999976158142 + 4 + 0x00, 0x33, 0x33, 0x33, +
+ + limiterAlg2threshold + FixedPoint +
205
+ 1 + 4 + 0x00, 0x80, 0x00, 0x00, +
+ + limiterAlg2RMS_MONO_TCONST + FixedPoint +
206
+ 0.000239849090576172 + 4 + 0x00, 0x00, 0x07, 0xDC, +
+ + limiterAlg2decay + FixedPoint +
207
+ 0.000244140625 + 4 + 0x00, 0x00, 0x08, 0x00, +
+ + limiterAlg2decaycomplement + FixedPoint +
208
+ 0.99951171875 + 4 + 0x00, 0x7F, 0xF0, 0x00, +
+
+
+ + DCB1 + + ALG0 + DCBlockAlgDoublePrec1 + DC Blocking + + DCBlockAlgDoublePrec1pole + FixedPoint +
4
+ 0.999899983406067 + 4 + 0x00, 0x7F, 0xFC, 0xB9, +
+
+
+ + DCB2 + + ALG0 + DCBlockAlgDoublePrec2 + DC Blocking + + DCBlockAlgDoublePrec2pole + FixedPoint +
5
+ 0.999899983406067 + 4 + 0x00, 0x7F, 0xFC, 0xB9, +
+
+
+ + DCB3 + + ALG0 + DCBlockAlgDoublePrec3 + DC Blocking + + DCBlockAlgDoublePrec3pole FixedPoint
7
+ 0.999899983406067 + 4 + 0x00, 0x7F, 0xFC, 0xB9, +
+
+
+ + DCB4 + + ALG0 + DCBlockAlgDoublePrec4 + DC Blocking + + DCBlockAlgDoublePrec4pole + FixedPoint +
6
+ 0.999899983406067 + 4 + 0x00, 0x7F, 0xFC, 0xB9, +
+
+
+ + Compressor1 + + ALG0 + TwoChannelSingleDetectAlgFix1 + Stereo RMS (Post Gain)( 1 ) : PostGain[ 0 ],HoldTime[ 50 ],DecayTime[ 100 ],TimeConstant[ 100 ],SoftKnee[ False ],RMS_Label[ RMS TC (dB/s) ],Deacay_Label[ Decay (dB/s) ],DecayTime_ms[ 87 ],TimeConstant_ms[ 87 ],IsdBPS[ True ]; + + TwoChannelSingleDetectAlgFix1 + HexArray +
9
+ 136 + 4 + 0x00, 0x09, 0x0F, 0xCC, 0x00, 0x09, 0x0F, 0xCC, 0x00, 0x06, 0x6A, 0x4A, 0x00, 0x04, 0x8A, 0xA7, 0x00, 0x03, 0x37, 0x18, 0x00, 0x02, 0x46, 0xB5, 0x00, 0x01, 0x9C, 0x86, 0x00, 0x01, 0x24, 0x0C, 0x00, 0x00, 0xCE, 0xC1, 0x00, 0x00, 0x92, 0x5F, 0x00, 0x00, 0x67, 0x9F, 0x00, 0x00, 0x49, 0x5C, 0x00, 0x00, 0xDA, 0xD7, 0x00, 0x02, 0xFD, 0x86, 0x00, 0x0A, 0x75, 0xDE, 0x00, 0x24, 0x97, 0x68, 0x00, 0x7E, 0xDA, 0x4D, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, +
+ + TwoChannelSingleDetectAlgFix1RMS + FixedPoint +
43
+ 0.000479817390441895 + 4 + 0x00, 0x00, 0x0F, 0xB9, +
+ + TwoChannelSingleDetectAlgFix1post_gain + FixedPoint +
44
+ 1 + 4 + 0x00, 0x80, 0x00, 0x00, +
+ + TwoChannelSingleDetectAlgFix1hold + FixedPoint +
45
+ 2400 + 4 + 0x00, 0x00, 0x09, 0x60, +
+ + TwoChannelSingleDetectAlgFix1decay + FixedPoint +
46
+ 2.16960906982422E-05 + 4 + 0x00, 0x00, 0x00, 0xB6, +
+
+
+ + 1 X RTA1 + + ALG0 + SingleBandLevelDet1 + Single Band + + SingleBandLevelDet1TCONST + FixedPoint +
53
+ 0.00240135192871094 + 4 + 0x00, 0x00, 0x4E, 0xB0, +
+ + SingleBandLevelDet1hold + FixedPoint +
54
+ 480 + 4 + 0x00, 0x00, 0x01, 0xE0, +
+ + SingleBandLevelDet1decay + FixedPoint +
55
+ 0.000216960906982422 + 4 + 0x00, 0x00, 0x07, 0x1C, +
+ + SingleBandLevelDet1 + HexArray +
2074
+ 2 + 0x03, 0x76, +
+ + + FixedPoint +
2074
+ 0 + 3 + 0x00, 0x00, 0x00, +
+
+
+ + 1 X RTA2 + + ALG0 + SingleBandLevelDet2 + Single Band + + SingleBandLevelDet2TCONST + FixedPoint +
56
+ 0.00240135192871094 + 4 + 0x00, 0x00, 0x4E, 0xB0, +
+ + SingleBandLevelDet2hold + FixedPoint +
57
+ 480 + 4 + 0x00, 0x00, 0x01, 0xE0, +
+ + SingleBandLevelDet2decay + FixedPoint +
58
+ 0.000216960906982422 + 4 + 0x00, 0x00, 0x07, 0x1C, +
+ + SingleBandLevelDet2 + HexArray +
2074
+ 2 + 0x03, 0xFA, +
+ + + FixedPoint +
2074
+ 0 + 3 + 0x00, 0x00, 0x00, +
+
+
+ + 1 X RTA3 + + ALG0 + SingleBandLevelDet3 + Single Band + + SingleBandLevelDet3TCONST + FixedPoint +
47
+ 0.00240135192871094 + 4 + 0x00, 0x00, 0x4E, 0xB0, +
+ + SingleBandLevelDet3hold + FixedPoint +
48
+ 480 + 4 + 0x00, 0x00, 0x01, 0xE0, +
+ + SingleBandLevelDet3decay + FixedPoint +
49
+ 0.000216960906982422 + 4 + 0x00, 0x00, 0x07, 0x1C, +
+ + SingleBandLevelDet3 + HexArray +
2074
+ 2 + 0x02, 0x6E, +
+ + + FixedPoint +
2074
+ 0 + 3 + 0x00, 0x00, 0x00, +
+
+
+ + 1 X RTA4 + + ALG0 + SingleBandLevelDet4 + Single Band + + SingleBandLevelDet4TCONST + FixedPoint +
50
+ 0.00240135192871094 + 4 + 0x00, 0x00, 0x4E, 0xB0, +
+ + SingleBandLevelDet4hold + FixedPoint +
51
+ 480 + 4 + 0x00, 0x00, 0x01, 0xE0, +
+ + SingleBandLevelDet4decay + FixedPoint +
52
+ 0.000216960906982422 + 4 + 0x00, 0x00, 0x07, 0x1C, +
+ + SingleBandLevelDet4 + HexArray +
2074
+ 2 + 0x02, 0xF2, +
+ + + FixedPoint +
2074
+ 0 + 3 + 0x00, 0x00, 0x00, +
+
+
+ + DC1 + + ALG0 + DCInpAlg1 + dc Input( 1 ) : FormatL[ 23 ],FormatM[ 5 ],DC[ 1 ],IsDBSelected[ True ]; + + DCInpAlg1 + FixedPoint +
3
1 4 0x00, 0x80, 0x00, 0x00, @@ -965,19 +1191,304 @@
- S Splitter1 + SPhat1 ALG0 - SingleCtrlSplit1 - Splitter Single( 1 ) : Gain`max[ 8 ],Gain`min[ -40 ],Gain`res[ 48 ],Gain[ 0 ]; + SuperPhatAlg1 + Super Bass( 1 ) : XOver[ 500 ],Gain[ 1.3 ]; - SingleCtrlSplit1 + SuperPhatAlg1B0lo + HexArray +
89
+ 40 + 0x00, 0x02, 0xC4, 0x78, 0x00, 0x05, 0x88, 0xEF, 0x00, 0x02, 0xC4, 0x78, 0x00, 0xC5, 0x84, 0xFE, 0xFF, 0xAF, 0x69, 0x23, 0x00, 0x65, 0x86, 0xF7, 0xFF, 0x34, 0xF2, 0x12, 0x00, 0x65, 0x86, 0xF7, 0x00, 0xC5, 0x84, 0xFE, 0xFF, 0xAF, 0x69, 0x23, +
+ + SuperPhatAlg1gainHi FixedPoint -
8
+
99
+ 1.29999995231628 + 4 + 0x00, 0xA6, 0x66, 0x66, +
+ + SuperPhatAlg1gainLo + FixedPoint +
100
+ 0.899999976158142 + 4 + 0x00, 0x73, 0x33, 0x33, +
+ + SuperPhatAlg1gainInv + FixedPoint +
101
+ 0.854700803756714 + 4 + 0x00, 0x6D, 0x66, 0xD6, +
+ + SuperPhatAlg1comp_base + HexArray +
102
+ 136 + 4 + 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x75, 0x69, 0x4C, 0x00, 0x5A, 0x9D, 0xF8, 0x00, 0x45, 0xEF, 0xFF, 0x00, 0x35, 0xFA, 0x27, 0x00, 0x29, 0xA8, 0xBB, 0x00, 0x20, 0x26, 0xF3, +
+ + SuperPhatAlg1RMS + FixedPoint +
136
+ 0.0491397380828857 + 4 + 0x00, 0x06, 0x4A, 0x36, +
+ + SuperPhatAlg1decay + FixedPoint +
137
+ 4.33921813964844E-05 + 4 + 0x00, 0x00, 0x01, 0x6C, +
+ + SuperPhatAlg1hold + FixedPoint +
138
+ 24000 + 4 + 0x00, 0x00, 0x5D, 0xC0, +
+ + SuperPhatAlg1spread1 + FixedPoint +
139
+ 0.0629093647003174 + 4 + 0x00, 0x08, 0x0D, 0x6A, +
+ + SuperPhatAlg1spread2 + FixedPoint +
140
+ 0.0193037986755371 + 4 + 0x00, 0x02, 0x78, 0x8C, +
+
+
+ + Gen Filter1 + + ALG0 + EQ1940DualS1 + 2 Channel - Single Precision( 1 ) : Frequency`lock[ False ],Gain[ 4 ],Q[ 1.2 ],Boost1`max[ 10 ],Boost1`min[ -10 ],Boost1`res[ 20 ],Boost1[ 0 ],Boost2`max[ 10 ],Boost2`min[ -10 ],Boost2`res[ 20 ],Boost2[ 0 ],Boost3`max[ 10 ],Boost3`min[ -10 ],Boost3`res[ 20 ],Boost3[ 0 ],Frequency1[ 2500 ],Frequency2[ 1000 ],FilterEnable[ False ],PhaseShifted[ False ],Slope`res[ 20 ],Slope[ 1 ],Ripple[ 0.1 ],Active1[ True ],Active2[ True ],LowPass1[ True ],LowPass2[ False ],AllPass1[ False ],AllPass2[ False ],ClassicEE_Filtering[ False ],ShelvingType[ 0 ],GeneralType[ 0 ],BandPassType[ 0 ],Type[ 8 ],ChebyshevType[ 0 ]; + + EQ1940DualS10B1 + FixedPoint +
141
1 4 0x00, 0x80, 0x00, 0x00,
+ + EQ1940DualS11B1 + FixedPoint +
142
+ 0 + 4 + 0x00, 0x00, 0x00, 0x00, +
+ + EQ1940DualS12B1 + FixedPoint +
143
+ 0 + 4 + 0x00, 0x00, 0x00, 0x00, +
+ + EQ1940DualS11A1 + FixedPoint +
144
+ 0 + 4 + 0x00, 0x00, 0x00, 0x00, +
+ + EQ1940DualS12A1 + FixedPoint +
145
+ 0 + 4 + 0x00, 0x00, 0x00, 0x00, +
+
+
+ + 1 X RTA1_2 + + ALG0 + SingleBandLevelDet5 + Single Band + + SingleBandLevelDet5TCONST + FixedPoint +
191
+ 0.00240135192871094 + 4 + 0x00, 0x00, 0x4E, 0xB0, +
+ + SingleBandLevelDet5hold + FixedPoint +
192
+ 480 + 4 + 0x00, 0x00, 0x01, 0xE0, +
+ + SingleBandLevelDet5decay + FixedPoint +
193
+ 0.000216960906982422 + 4 + 0x00, 0x00, 0x07, 0x1C, +
+ + SingleBandLevelDet5 + HexArray +
2074
+ 2 + 0x0B, 0x36, +
+ + + FixedPoint +
2074
+ 0 + 3 + 0x00, 0x00, 0x00, +
+
+
+ + 1 X RTA2_2 + + ALG0 + SingleBandLevelDet6 + Single Band + + SingleBandLevelDet6TCONST + FixedPoint +
188
+ 0.00240135192871094 + 4 + 0x00, 0x00, 0x4E, 0xB0, +
+ + SingleBandLevelDet6hold + FixedPoint +
189
+ 480 + 4 + 0x00, 0x00, 0x01, 0xE0, +
+ + SingleBandLevelDet6decay + FixedPoint +
190
+ 0.000216960906982422 + 4 + 0x00, 0x00, 0x07, 0x1C, +
+ + SingleBandLevelDet6 + HexArray +
2074
+ 2 + 0x0A, 0xB2, +
+ + + FixedPoint +
2074
+ 0 + 3 + 0x00, 0x00, 0x00, +
+
+
+ + Bass Boost1 + + ALG0 + BassBAlg_stereo1 + Stereo Dynamic Bass Boost( 1 ) : Frequency[ 60 ],FrequencyL[ 100 ],Boost[ 1.1 ],Threshold[ -25 ],Gain1[ 0 ],Gain2[ 9.92 ],TimeConstant[ 100 ]; + + BassBAlg_stereo1freq_varq + FixedPoint +
148
+ 0.00785398483276367 + 4 + 0x00, 0x01, 0x01, 0x5C, +
+ + BassBAlg_stereo1iir_coeff_0_biq + FixedPoint +
149
+ 4.24385070800781E-05 + 4 + 0x00, 0x00, 0x01, 0x64, +
+ + BassBAlg_stereo1iir_coeff_1_biq + FixedPoint +
150
+ 8.48770141601563E-05 + 4 + 0x00, 0x00, 0x02, 0xC8, +
+ + BassBAlg_stereo1iir_coeff_2_biq + FixedPoint +
151
+ 4.24385070800781E-05 + 4 + 0x00, 0x00, 0x01, 0x64, +
+ + BassBAlg_stereo1iir_coeff_3_biq + FixedPoint +
152
+ 1.98148572444916 + 4 + 0x00, 0xFD, 0xA1, 0x53, +
+ + BassBAlg_stereo1iir_coeff_4_biq + FixedPoint +
153
+ -0.981655478477478 + 4 + 0x0F, 0x82, 0x59, 0x1D, +
+ + BassBAlg_stereo1compbase_table1_comp + HexArray +
154
+ 132 + 4 + 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x28, 0xDA, 0x08, 0x00, 0x29, 0x53, 0x21, 0x00, 0x2A, 0xC6, 0xE7, 0x00, 0x2C, 0x47, 0xBE, 0x00, 0x2D, 0xD6, 0x1B, 0x00, 0x2F, 0x72, 0x77, 0x00, 0x31, 0x1D, 0x52, 0x00, 0x32, 0xD7, 0x2C, 0x00, 0x34, 0xA0, 0x8E, 0x00, 0x36, 0x7A, 0x02, +
+ + BassBAlg_stereo1TCONST_comp + FixedPoint +
187
+ 0.000208258628845215 + 4 + 0x00, 0x00, 0x06, 0xD3, +
diff --git a/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1.h b/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1.h index 502be37..8224af9 100644 --- a/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1.h +++ b/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1.h @@ -1,8 +1,8 @@ /* - * File: C:\Users\mikbi\Documents\Allegati\Desktop\DigiRadio\DigiRadioModificato\DigiRadio_IC_1.h + * File: C:\Users\mikbi\Documents\Allegati\Desktop\Sigmastudio\DigiRadioFinale_IC_1.h * - * Created: Friday, August 7, 2026 3:19:11 AM - * Description: DigiRadio:IC 1 program data. + * Created: Tuesday, August 25, 2026 8:11:05 PM + * Description: DigiRadioFinale:IC 1 program data. * * This software is distributed in the hope that it will be useful, * but is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR @@ -16,8 +16,8 @@ * * Copyright ©2026 Analog Devices, Inc. All rights reserved. */ -#ifndef __DIGIRADIO_IC_1_H__ -#define __DIGIRADIO_IC_1_H__ +#ifndef __DIGIRADIOFINALE_IC_1_H__ +#define __DIGIRADIOFINALE_IC_1_H__ #include "SigmaStudioFW.h" #include "DigiRadio_IC_1_REG.h" @@ -34,876 +34,876 @@ ADI_REG_TYPE Program_Data_IC_1[PROGRAM_SIZE_IC_1] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x10, 0x00, 0xE8, 0x01, +0x00, 0x50, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x18, 0x00, 0xE8, 0x01, +0x00, 0x88, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x20, 0x00, 0xE8, 0x01, +0x00, 0xC0, 0x00, 0xE8, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x28, 0x00, 0xE8, 0x01, +0x00, 0xF8, 0x00, 0xE8, 0x01, 0x00, 0x02, 0x01, 0xA0, 0x01, 0xFF, 0xE1, 0x07, 0x20, 0x01, +0x00, 0x18, 0x00, 0xE2, 0x01, +0x00, 0x22, 0x02, 0x20, 0x01, +0x00, 0x32, 0x00, 0x22, 0x01, 0x00, 0x38, 0x00, 0xE2, 0x01, -0x00, 0x42, 0x02, 0x20, 0x01, -0x00, 0x52, 0x00, 0x22, 0x01, -0x00, 0x58, 0x00, 0xE2, 0x01, -0x00, 0x42, 0x00, 0x20, 0x01, -0x00, 0x59, 0x08, 0x22, 0x41, -0x00, 0x39, 0x08, 0x22, 0x01, -0x00, 0x31, 0x08, 0x22, 0x41, -0x00, 0x48, 0x00, 0xE2, 0x01, -0x00, 0x12, 0x03, 0x20, 0x01, +0x00, 0x22, 0x00, 0x20, 0x01, +0x00, 0x39, 0x08, 0x22, 0x41, +0x00, 0x19, 0x08, 0x22, 0x01, +0x00, 0x11, 0x08, 0x22, 0x41, +0x00, 0x28, 0x00, 0xE2, 0x01, +0xFF, 0xF2, 0x03, 0x20, 0x01, +0x00, 0x40, 0x00, 0xE2, 0x01, +0x00, 0x6A, 0x04, 0x20, 0x01, +0x00, 0x5A, 0x04, 0x34, 0x01, +0x00, 0x49, 0x08, 0x22, 0x41, +0x00, 0x51, 0x08, 0x22, 0x01, 0x00, 0x60, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x1A, 0x04, 0x20, 0x01, -0x00, 0x68, 0x00, 0xE2, 0x01, +0x00, 0x70, 0x00, 0xF2, 0x01, +0x00, 0xA2, 0x05, 0x20, 0x01, +0x00, 0x92, 0x05, 0x34, 0x01, +0x00, 0x81, 0x08, 0x22, 0x41, +0x00, 0x89, 0x08, 0x22, 0x01, +0x00, 0x98, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x22, 0x05, 0x20, 0x01, -0x00, 0x70, 0x00, 0xE2, 0x01, +0x00, 0xA8, 0x00, 0xF2, 0x01, +0x00, 0xDA, 0x06, 0x20, 0x01, +0x00, 0xCA, 0x06, 0x34, 0x01, +0x00, 0xB9, 0x08, 0x22, 0x41, +0x00, 0xC1, 0x08, 0x22, 0x01, +0x00, 0xD0, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x2A, 0x06, 0x20, 0x01, -0x00, 0x78, 0x00, 0xE2, 0x01, +0x00, 0xE0, 0x00, 0xF2, 0x01, +0x01, 0x12, 0x07, 0x20, 0x01, +0x01, 0x02, 0x07, 0x34, 0x01, +0x00, 0xF1, 0x08, 0x22, 0x41, +0x00, 0xF9, 0x08, 0x22, 0x01, +0x01, 0x08, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x5A, 0x07, 0x20, 0x01, -0x00, 0x80, 0x00, 0xE2, 0x01, +0x01, 0x18, 0x00, 0xF2, 0x01, +0x00, 0x3A, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x82, 0x08, 0x20, 0x01, +0x01, 0x28, 0x00, 0xE2, 0x01, +0x00, 0x3A, 0x08, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x88, 0x00, 0xE2, 0x01, -0x00, 0x82, 0x08, 0x20, 0x01, +0x01, 0x30, 0x00, 0xE2, 0x01, +0x00, 0x61, 0x09, 0x20, 0x01, +0x00, 0x99, 0x09, 0x22, 0x01, +0x01, 0x88, 0x00, 0xE2, 0x01, +0x01, 0x88, 0x00, 0xC0, 0x01, +0x01, 0x8F, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x90, 0x00, 0xE2, 0x01, -0x00, 0x62, 0x09, 0x20, 0x01, -0x00, 0x6A, 0x09, 0x40, 0x01, -0x00, 0x72, 0x0A, 0x22, 0x01, -0x00, 0x7A, 0x0A, 0x44, 0x01, -0x00, 0x8A, 0x0B, 0x22, 0x01, -0x00, 0x92, 0x0B, 0x44, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0xA8, 0x00, 0xE2, 0x01, -0x01, 0xE0, 0x00, 0xE4, 0x01, -0x00, 0xD2, 0x0F, 0x20, 0x01, -0x00, 0xCA, 0x10, 0x22, 0x01, -0x00, 0xBA, 0x0F, 0x34, 0x01, -0x00, 0xB2, 0x10, 0x22, 0x01, -0x00, 0xAA, 0x0C, 0x22, 0x01, -0x00, 0xA2, 0x0D, 0x22, 0x01, -0x00, 0x9A, 0x0E, 0x22, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0xC0, 0x00, 0xE2, 0x01, -0x00, 0xD8, 0x00, 0xF2, 0x01, -0x01, 0x02, 0x14, 0x20, 0x01, -0x00, 0xFA, 0x15, 0x22, 0x01, -0x00, 0xEA, 0x14, 0x34, 0x01, -0x00, 0xE2, 0x15, 0x22, 0x01, -0x00, 0xC2, 0x11, 0x22, 0x01, -0x00, 0xBA, 0x12, 0x22, 0x01, -0x00, 0xB2, 0x13, 0x22, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0xF0, 0x00, 0xE2, 0x01, -0x01, 0x08, 0x00, 0xF2, 0x01, -0x01, 0x32, 0x19, 0x20, 0x01, -0x01, 0x2A, 0x1A, 0x22, 0x01, -0x01, 0x1A, 0x19, 0x34, 0x01, -0x01, 0x12, 0x1A, 0x22, 0x01, -0x00, 0xF2, 0x16, 0x22, 0x01, -0x00, 0xEA, 0x17, 0x22, 0x01, -0x00, 0xE2, 0x18, 0x22, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x01, 0x20, 0x00, 0xE2, 0x01, -0x01, 0x38, 0x00, 0xF2, 0x01, -0x01, 0x62, 0x1E, 0x20, 0x01, -0x01, 0x5A, 0x1F, 0x22, 0x01, -0x01, 0x4A, 0x1E, 0x34, 0x01, -0x01, 0x42, 0x1F, 0x22, 0x01, -0x01, 0x22, 0x1B, 0x22, 0x01, -0x01, 0x1A, 0x1C, 0x22, 0x01, -0x01, 0x12, 0x1D, 0x22, 0x01, +0x01, 0xA8, 0x00, 0xE2, 0x01, +0x01, 0xB0, 0x00, 0xF2, 0x01, +0x01, 0x59, 0x08, 0x20, 0x01, +0x01, 0x5A, 0x2B, 0x22, 0x41, +0x01, 0xB2, 0x2B, 0x22, 0x01, +0x01, 0x49, 0x08, 0x34, 0x01, +0x01, 0x4A, 0x2B, 0x22, 0x41, +0x01, 0xAA, 0x2B, 0x82, 0x01, +0x01, 0xAA, 0x2B, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x50, 0x00, 0xE2, 0x01, -0x01, 0x68, 0x00, 0xF2, 0x01, -0x01, 0x92, 0x23, 0x20, 0x01, -0x01, 0x8A, 0x24, 0x22, 0x01, -0x01, 0x7A, 0x23, 0x34, 0x01, -0x01, 0x72, 0x24, 0x22, 0x01, -0x01, 0x52, 0x20, 0x22, 0x01, -0x01, 0x4A, 0x21, 0x22, 0x01, -0x01, 0x42, 0x22, 0x22, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, +0x01, 0x60, 0x00, 0xF2, 0x01, +0x01, 0xB8, 0x00, 0xF6, 0x01, +0x01, 0x79, 0x08, 0x20, 0x09, 0x01, 0x80, 0x00, 0xE2, 0x01, -0x01, 0x98, 0x00, 0xF2, 0x01, -0x01, 0xC2, 0x28, 0x20, 0x01, -0x01, 0xBA, 0x29, 0x22, 0x01, -0x01, 0xAA, 0x28, 0x34, 0x01, -0x01, 0xA2, 0x29, 0x22, 0x01, -0x01, 0x82, 0x25, 0x22, 0x01, -0x01, 0x7A, 0x26, 0x22, 0x01, -0x01, 0x72, 0x27, 0x22, 0x01, +0x01, 0x69, 0x08, 0x20, 0x01, +0xFF, 0xF2, 0x2E, 0x22, 0x67, +0x01, 0x70, 0x00, 0xE2, 0x01, +0x01, 0xB9, 0x08, 0x22, 0x49, +0x01, 0xB9, 0x08, 0x20, 0x01, +0x01, 0x70, 0x00, 0xE2, 0x27, +0xFF, 0xF2, 0x2D, 0x20, 0x01, +0x01, 0x80, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, -0x01, 0xB0, 0x00, 0xE2, 0x01, +0x01, 0x81, 0x08, 0x20, 0x09, +0xFF, 0xF9, 0x08, 0x22, 0x41, +0x01, 0x80, 0x00, 0xE2, 0x26, +0x01, 0x71, 0x1A, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x01, 0xC0, 0x00, 0xE2, 0x01, 0x01, 0xC8, 0x00, 0xF2, 0x01, -0x02, 0x0A, 0x0F, 0x20, 0x01, -0x02, 0x02, 0x10, 0x22, 0x01, -0x01, 0xF2, 0x0F, 0x34, 0x01, -0x01, 0xEA, 0x10, 0x22, 0x01, -0x01, 0xE2, 0x0C, 0x22, 0x01, -0x01, 0xDA, 0x0D, 0x22, 0x01, -0x01, 0xD2, 0x0E, 0x22, 0x01, +0x01, 0xC0, 0x00, 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, +0x00, 0x02, 0x0A, 0xA1, 0x01, +0xFF, 0xE1, 0x08, 0x20, 0x01, +0x00, 0x02, 0x09, 0xA1, 0x01, +0xFF, 0xE1, 0x08, 0x22, 0x41, +0x01, 0x90, 0x00, 0xE2, 0x01, +0x01, 0xC8, 0x00, 0xC0, 0x01, +0x01, 0x97, 0xFF, 0x20, 0x01, +0xFF, 0xE1, 0x08, 0x22, 0x01, +0x01, 0xA0, 0x00, 0xE2, 0x01, +0x01, 0xA0, 0x00, 0xC0, 0x01, +0x00, 0x67, 0xFF, 0x20, 0x01, +0x01, 0x98, 0x00, 0xE2, 0x01, +0x01, 0x9A, 0x2C, 0x20, 0x01, +0x01, 0x98, 0x00, 0xE2, 0x01, +0x01, 0x9A, 0x2C, 0x20, 0x01, +0x01, 0x38, 0x00, 0xE2, 0x01, +0x00, 0x9F, 0xFF, 0x20, 0x01, +0x01, 0x98, 0x00, 0xE2, 0x01, +0x01, 0x9A, 0x2C, 0x20, 0x01, +0x01, 0x98, 0x00, 0xE2, 0x01, +0x01, 0x9A, 0x2C, 0x20, 0x01, +0x01, 0x40, 0x00, 0xE2, 0x01, +0x00, 0xD0, 0x00, 0xC0, 0x01, +0x00, 0xD7, 0xFF, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x10, 0x00, 0xE2, 0x01, +0x02, 0x18, 0x00, 0xF2, 0x01, +0x01, 0xE1, 0x08, 0x20, 0x01, +0x01, 0xE2, 0x2F, 0x22, 0x41, +0x02, 0x1A, 0x2F, 0x22, 0x01, +0x01, 0xD1, 0x08, 0x34, 0x01, +0x01, 0xD2, 0x2F, 0x22, 0x41, +0x02, 0x12, 0x2F, 0x82, 0x01, +0x02, 0x12, 0x2F, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x01, 0xD8, 0x00, 0xE2, 0x01, +0x01, 0xE8, 0x00, 0xF2, 0x01, +0x02, 0x20, 0x00, 0xF6, 0x01, +0x02, 0x01, 0x08, 0x20, 0x09, +0x02, 0x08, 0x00, 0xE2, 0x01, +0x01, 0xF1, 0x08, 0x20, 0x01, +0xFF, 0xF2, 0x31, 0x22, 0x67, 0x01, 0xF8, 0x00, 0xE2, 0x01, -0x02, 0x10, 0x00, 0xF2, 0x01, -0x02, 0x3A, 0x14, 0x20, 0x01, -0x02, 0x32, 0x15, 0x22, 0x01, -0x02, 0x22, 0x14, 0x34, 0x01, -0x02, 0x1A, 0x15, 0x22, 0x01, -0x01, 0xFA, 0x11, 0x22, 0x01, -0x01, 0xF2, 0x12, 0x22, 0x01, -0x01, 0xEA, 0x13, 0x22, 0x01, +0x02, 0x21, 0x08, 0x22, 0x49, +0x02, 0x21, 0x08, 0x20, 0x01, +0x01, 0xF8, 0x00, 0xE2, 0x27, +0xFF, 0xF2, 0x30, 0x20, 0x01, +0x02, 0x08, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x09, 0x08, 0x20, 0x09, +0xFF, 0xF9, 0x08, 0x22, 0x41, +0x02, 0x08, 0x00, 0xE2, 0x26, +0x01, 0xF9, 0x08, 0x20, 0x01, +0x00, 0xD1, 0x08, 0x20, 0x01, 0x02, 0x28, 0x00, 0xE2, 0x01, -0x02, 0x40, 0x00, 0xF2, 0x01, -0x02, 0x6A, 0x19, 0x20, 0x01, -0x02, 0x62, 0x1A, 0x22, 0x01, -0x02, 0x52, 0x19, 0x34, 0x01, -0x02, 0x4A, 0x1A, 0x22, 0x01, -0x02, 0x2A, 0x16, 0x22, 0x01, -0x02, 0x22, 0x17, 0x22, 0x01, -0x02, 0x1A, 0x18, 0x22, 0x01, +0x01, 0x08, 0x00, 0xC0, 0x01, +0x01, 0x0F, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x10, 0x00, 0xE2, 0x01, +0x02, 0x18, 0x00, 0xF2, 0x01, +0x02, 0x41, 0x08, 0x20, 0x01, +0x02, 0x42, 0x32, 0x22, 0x41, +0x02, 0x1A, 0x32, 0x22, 0x01, +0x02, 0x31, 0x08, 0x34, 0x01, +0x02, 0x32, 0x32, 0x22, 0x41, +0x02, 0x12, 0x32, 0x82, 0x01, +0x02, 0x12, 0x32, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x38, 0x00, 0xE2, 0x01, +0x02, 0x48, 0x00, 0xF2, 0x01, +0x02, 0x20, 0x00, 0xF6, 0x01, +0x02, 0x61, 0x08, 0x20, 0x09, +0x02, 0x68, 0x00, 0xE2, 0x01, +0x02, 0x51, 0x08, 0x20, 0x01, +0xFF, 0xF2, 0x34, 0x22, 0x67, 0x02, 0x58, 0x00, 0xE2, 0x01, -0x02, 0x70, 0x00, 0xF2, 0x01, -0x02, 0x9A, 0x1E, 0x20, 0x01, -0x02, 0x92, 0x1F, 0x22, 0x01, -0x02, 0x82, 0x1E, 0x34, 0x01, -0x02, 0x7A, 0x1F, 0x22, 0x01, -0x02, 0x5A, 0x1B, 0x22, 0x01, -0x02, 0x52, 0x1C, 0x22, 0x01, -0x02, 0x4A, 0x1D, 0x22, 0x01, +0x02, 0x21, 0x08, 0x22, 0x49, +0x02, 0x21, 0x08, 0x20, 0x01, +0x02, 0x58, 0x00, 0xE2, 0x27, +0xFF, 0xF2, 0x33, 0x20, 0x01, +0x02, 0x68, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, -0x02, 0x88, 0x00, 0xE2, 0x01, -0x02, 0xA0, 0x00, 0xF2, 0x01, -0x02, 0xCA, 0x23, 0x20, 0x01, -0x02, 0xC2, 0x24, 0x22, 0x01, -0x02, 0xB2, 0x23, 0x34, 0x01, -0x02, 0xAA, 0x24, 0x22, 0x01, -0x02, 0x8A, 0x20, 0x22, 0x01, -0x02, 0x82, 0x21, 0x22, 0x01, -0x02, 0x7A, 0x22, 0x22, 0x01, +0x02, 0x69, 0x08, 0x20, 0x09, +0xFF, 0xF9, 0x08, 0x22, 0x41, +0x02, 0x68, 0x00, 0xE2, 0x26, +0x02, 0x59, 0x08, 0x20, 0x01, +0x01, 0x09, 0x08, 0x20, 0x01, +0x02, 0x70, 0x00, 0xE2, 0x01, +0x01, 0x38, 0x00, 0xC0, 0x01, +0x01, 0x3F, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x10, 0x00, 0xE2, 0x01, +0x02, 0x18, 0x00, 0xF2, 0x01, +0x02, 0x89, 0x08, 0x20, 0x01, +0x02, 0x8A, 0x35, 0x22, 0x41, +0x02, 0x1A, 0x35, 0x22, 0x01, +0x02, 0x79, 0x08, 0x34, 0x01, +0x02, 0x7A, 0x35, 0x22, 0x41, +0x02, 0x12, 0x35, 0x82, 0x01, +0x02, 0x12, 0x35, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x80, 0x00, 0xE2, 0x01, +0x02, 0x90, 0x00, 0xF2, 0x01, +0x02, 0x20, 0x00, 0xF6, 0x01, +0x02, 0xA9, 0x08, 0x20, 0x09, +0x02, 0xB0, 0x00, 0xE2, 0x01, +0x02, 0x99, 0x08, 0x20, 0x01, +0xFF, 0xF2, 0x37, 0x22, 0x67, +0x02, 0xA0, 0x00, 0xE2, 0x01, +0x02, 0x21, 0x08, 0x22, 0x49, +0x02, 0x21, 0x08, 0x20, 0x01, +0x02, 0xA0, 0x00, 0xE2, 0x27, +0xFF, 0xF2, 0x36, 0x20, 0x01, +0x02, 0xB0, 0x00, 0xE2, 0x27, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0xB1, 0x08, 0x20, 0x09, +0xFF, 0xF9, 0x08, 0x22, 0x41, +0x02, 0xB0, 0x00, 0xE2, 0x26, +0x02, 0xA1, 0x08, 0x20, 0x01, +0x01, 0x39, 0x08, 0x20, 0x01, 0x02, 0xB8, 0x00, 0xE2, 0x01, -0x02, 0xD0, 0x00, 0xF2, 0x01, -0x02, 0xFA, 0x28, 0x20, 0x01, -0x02, 0xF2, 0x29, 0x22, 0x01, -0x02, 0xE2, 0x28, 0x34, 0x01, -0x02, 0xDA, 0x29, 0x22, 0x01, -0x02, 0xBA, 0x25, 0x22, 0x01, -0x02, 0xB2, 0x26, 0x22, 0x01, -0x02, 0xAA, 0x27, 0x22, 0x01, +0x01, 0x40, 0x00, 0xC0, 0x01, +0x01, 0x47, 0xFF, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x10, 0x00, 0xE2, 0x01, +0x02, 0x18, 0x00, 0xF2, 0x01, +0x02, 0xD1, 0x08, 0x20, 0x01, +0x02, 0xD2, 0x38, 0x22, 0x41, +0x02, 0x1A, 0x38, 0x22, 0x01, +0x02, 0xC1, 0x08, 0x34, 0x01, +0x02, 0xC2, 0x38, 0x22, 0x41, +0x02, 0x12, 0x38, 0x82, 0x01, +0x02, 0x12, 0x38, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0xC8, 0x00, 0xE2, 0x01, +0x02, 0xD8, 0x00, 0xF2, 0x01, +0x02, 0x20, 0x00, 0xF6, 0x01, +0x02, 0xF1, 0x08, 0x20, 0x09, +0x02, 0xF8, 0x00, 0xE2, 0x01, +0x02, 0xE1, 0x08, 0x20, 0x01, +0xFF, 0xF2, 0x3A, 0x22, 0x67, 0x02, 0xE8, 0x00, 0xE2, 0x01, -0x03, 0x00, 0x00, 0xF2, 0x01, -0x01, 0xB2, 0x2A, 0x20, 0x01, -0x03, 0x08, 0x00, 0xE2, 0x01, +0x02, 0x21, 0x08, 0x22, 0x49, +0x02, 0x21, 0x08, 0x20, 0x01, +0x02, 0xE8, 0x00, 0xE2, 0x27, +0xFF, 0xF2, 0x39, 0x20, 0x01, +0x02, 0xF8, 0x00, 0xE2, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, -0x02, 0xEA, 0x2B, 0x20, 0x01, +0x02, 0xF9, 0x08, 0x20, 0x09, +0xFF, 0xF9, 0x08, 0x22, 0x41, +0x02, 0xF8, 0x00, 0xE2, 0x26, +0x02, 0xE9, 0x08, 0x20, 0x01, +0x01, 0x41, 0x08, 0x20, 0x01, +0x03, 0x00, 0x00, 0xE2, 0x01, +0x02, 0xB9, 0x08, 0x20, 0x01, 0x03, 0x10, 0x00, 0xE2, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x09, 0x08, 0x20, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x70, 0x00, 0xF0, 0x01, -0xFF, 0xE9, 0x08, 0x22, 0x01, -0x03, 0x68, 0x00, 0xF2, 0x01, -0x03, 0x59, 0x08, 0x20, 0x01, -0x03, 0x5A, 0x38, 0x22, 0x41, -0x03, 0x6A, 0x38, 0x22, 0x01, -0x03, 0x49, 0x08, 0x34, 0x01, -0x03, 0x4A, 0x38, 0x22, 0x41, -0x03, 0x72, 0x38, 0x22, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x50, 0x00, 0xE2, 0x01, -0x03, 0x60, 0x00, 0xF2, 0x01, -0x03, 0x78, 0x00, 0xE2, 0x01, -0xFF, 0xF2, 0x34, 0x40, 0x01, -0x03, 0x79, 0x08, 0x20, 0x09, -0x03, 0x7A, 0x2C, 0x20, 0x01, -0xFF, 0xF2, 0x2D, 0x22, 0x01, +0x03, 0x01, 0x08, 0x20, 0x01, 0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x7A, 0x2E, 0x20, 0x01, -0xFF, 0xF2, 0x2F, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x23, -0xFF, 0xF2, 0x35, 0x40, 0x01, -0x03, 0x79, 0x08, 0x20, 0x09, -0x03, 0x7A, 0x30, 0x20, 0x01, -0xFF, 0xF2, 0x31, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x23, -0xFF, 0xF2, 0x36, 0x40, 0x01, -0x03, 0x79, 0x08, 0x20, 0x09, -0x03, 0x7A, 0x32, 0x20, 0x01, -0xFF, 0xF2, 0x33, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x23, -0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x18, 0x00, 0xC0, 0x01, -0x03, 0x7F, 0xFF, 0x20, 0x41, -0xFF, 0xF1, 0x07, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x1F, 0xFF, 0x20, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x18, 0x00, 0xC0, 0x01, -0x03, 0x7F, 0xFF, 0x20, 0x41, -0xFF, 0xF1, 0x07, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x1F, 0xFF, 0x20, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x18, 0x00, 0xC0, 0x01, -0x03, 0x7F, 0xFF, 0x20, 0x41, -0xFF, 0xF1, 0x07, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x1F, 0xFF, 0x20, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x18, 0x00, 0xC0, 0x01, -0x00, 0x02, 0x37, 0xA0, 0x01, -0xFF, 0xE7, 0xFF, 0x20, 0x01, -0x03, 0x40, 0x00, 0xE2, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x41, 0x08, 0x40, 0x01, -0xFF, 0xF1, 0x08, 0x20, 0x09, -0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x40, 0x00, 0xE2, 0x23, -0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x41, 0x08, 0x40, 0x01, -0x03, 0x39, 0x08, 0x20, 0x09, -0x03, 0x42, 0x39, 0x20, 0x01, -0x03, 0x3A, 0x39, 0x22, 0x41, -0x03, 0x39, 0x08, 0x22, 0x01, -0x03, 0x40, 0x00, 0xE2, 0x23, -0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x41, 0x08, 0x20, 0x01, -0x03, 0x30, 0x00, 0xE2, 0x01, -0xFF, 0xF2, 0x3A, 0x22, 0x49, -0xFF, 0xF1, 0x08, 0x20, 0x01, -0xFF, 0xE9, 0x08, 0x20, 0x25, -0x03, 0x28, 0x00, 0xE2, 0x01, -0x03, 0x40, 0x00, 0xC0, 0x01, -0x03, 0x0F, 0xFF, 0x20, 0x01, +0x02, 0x29, 0x08, 0x20, 0x01, 0x03, 0x20, 0x00, 0xE2, 0x01, -0x03, 0x11, 0x08, 0x20, 0x01, +0x02, 0x71, 0x08, 0x20, 0x01, +0x03, 0x28, 0x00, 0xE2, 0x01, +0x01, 0x29, 0x08, 0x20, 0x01, +0x03, 0x30, 0x00, 0xE2, 0x01, +0x01, 0x31, 0x08, 0x20, 0x01, +0x03, 0x38, 0x00, 0xE2, 0x01, +0x00, 0x41, 0x07, 0x20, 0x01, +0x03, 0x08, 0x00, 0xE2, 0x01, +0x03, 0x08, 0x00, 0xC0, 0x01, +0x00, 0x07, 0xFF, 0xA0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x70, 0x00, 0xF0, 0x01, +0x03, 0x11, 0x08, 0x20, 0x81, +0x03, 0x50, 0x00, 0xE2, 0x01, +0x03, 0x19, 0x08, 0x20, 0x81, +0x04, 0x88, 0x00, 0xE2, 0x01, +0x03, 0x7A, 0x3E, 0x20, 0x01, +0x03, 0x72, 0x3F, 0x22, 0x01, +0x03, 0x62, 0x3E, 0x34, 0x01, +0x03, 0x5A, 0x3F, 0x22, 0x01, +0x03, 0x52, 0x3B, 0x22, 0x01, +0x03, 0x4A, 0x3C, 0x22, 0x01, +0x03, 0x42, 0x3D, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x03, 0x68, 0x00, 0xE2, 0x01, +0x03, 0x80, 0x00, 0xF2, 0x01, +0x03, 0xAA, 0x43, 0x20, 0x01, +0x03, 0xA2, 0x44, 0x22, 0x01, +0x03, 0x92, 0x43, 0x34, 0x01, +0x03, 0x8A, 0x44, 0x22, 0x01, +0x03, 0x6A, 0x40, 0x22, 0x01, +0x03, 0x62, 0x41, 0x22, 0x01, +0x03, 0x5A, 0x42, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x03, 0x98, 0x00, 0xE2, 0x01, +0x03, 0xB0, 0x00, 0xF2, 0x01, +0x03, 0xDA, 0x48, 0x20, 0x01, +0x03, 0xD2, 0x49, 0x22, 0x01, +0x03, 0xC2, 0x48, 0x34, 0x01, +0x03, 0xBA, 0x49, 0x22, 0x01, +0x03, 0x9A, 0x45, 0x22, 0x01, +0x03, 0x92, 0x46, 0x22, 0x01, +0x03, 0x8A, 0x47, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x03, 0xC8, 0x00, 0xE2, 0x01, +0x03, 0xE0, 0x00, 0xF2, 0x01, +0x04, 0x0A, 0x4D, 0x20, 0x01, +0x04, 0x02, 0x4E, 0x22, 0x01, +0x03, 0xF2, 0x4D, 0x34, 0x01, +0x03, 0xEA, 0x4E, 0x22, 0x01, +0x03, 0xCA, 0x4A, 0x22, 0x01, +0x03, 0xC2, 0x4B, 0x22, 0x01, +0x03, 0xBA, 0x4C, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x03, 0xF8, 0x00, 0xE2, 0x01, +0x04, 0x10, 0x00, 0xF2, 0x01, +0x04, 0x3A, 0x52, 0x20, 0x01, +0x04, 0x32, 0x53, 0x22, 0x01, +0x04, 0x22, 0x52, 0x34, 0x01, +0x04, 0x1A, 0x53, 0x22, 0x01, +0x03, 0xFA, 0x4F, 0x22, 0x01, +0x03, 0xF2, 0x50, 0x22, 0x01, +0x03, 0xEA, 0x51, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x04, 0x28, 0x00, 0xE2, 0x01, +0x04, 0x40, 0x00, 0xF2, 0x01, +0x04, 0x6A, 0x57, 0x20, 0x01, +0x04, 0x62, 0x58, 0x22, 0x01, +0x04, 0x52, 0x57, 0x34, 0x01, +0x04, 0x4A, 0x58, 0x22, 0x01, +0x04, 0x2A, 0x54, 0x22, 0x01, +0x04, 0x22, 0x55, 0x22, 0x01, +0x04, 0x1A, 0x56, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x04, 0x58, 0x00, 0xE2, 0x01, +0x04, 0x70, 0x00, 0xF2, 0x01, +0x04, 0xB2, 0x3E, 0x20, 0x01, +0x04, 0xAA, 0x3F, 0x22, 0x01, +0x04, 0x9A, 0x3E, 0x34, 0x01, +0x04, 0x92, 0x3F, 0x22, 0x01, +0x04, 0x8A, 0x3B, 0x22, 0x01, +0x04, 0x82, 0x3C, 0x22, 0x01, +0x04, 0x7A, 0x3D, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x04, 0xA0, 0x00, 0xE2, 0x01, +0x04, 0xB8, 0x00, 0xF2, 0x01, +0x04, 0xE2, 0x43, 0x20, 0x01, +0x04, 0xDA, 0x44, 0x22, 0x01, +0x04, 0xCA, 0x43, 0x34, 0x01, +0x04, 0xC2, 0x44, 0x22, 0x01, +0x04, 0xA2, 0x40, 0x22, 0x01, +0x04, 0x9A, 0x41, 0x22, 0x01, +0x04, 0x92, 0x42, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x04, 0xD0, 0x00, 0xE2, 0x01, +0x04, 0xE8, 0x00, 0xF2, 0x01, +0x05, 0x12, 0x48, 0x20, 0x01, +0x05, 0x0A, 0x49, 0x22, 0x01, +0x04, 0xFA, 0x48, 0x34, 0x01, +0x04, 0xF2, 0x49, 0x22, 0x01, +0x04, 0xD2, 0x45, 0x22, 0x01, +0x04, 0xCA, 0x46, 0x22, 0x01, +0x04, 0xC2, 0x47, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x05, 0x00, 0x00, 0xE2, 0x01, +0x05, 0x18, 0x00, 0xF2, 0x01, +0x05, 0x42, 0x4D, 0x20, 0x01, +0x05, 0x3A, 0x4E, 0x22, 0x01, +0x05, 0x2A, 0x4D, 0x34, 0x01, +0x05, 0x22, 0x4E, 0x22, 0x01, +0x05, 0x02, 0x4A, 0x22, 0x01, +0x04, 0xFA, 0x4B, 0x22, 0x01, +0x04, 0xF2, 0x4C, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x05, 0x30, 0x00, 0xE2, 0x01, +0x05, 0x48, 0x00, 0xF2, 0x01, +0x05, 0x72, 0x52, 0x20, 0x01, +0x05, 0x6A, 0x53, 0x22, 0x01, +0x05, 0x5A, 0x52, 0x34, 0x01, +0x05, 0x52, 0x53, 0x22, 0x01, +0x05, 0x32, 0x4F, 0x22, 0x01, +0x05, 0x2A, 0x50, 0x22, 0x01, +0x05, 0x22, 0x51, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x05, 0x60, 0x00, 0xE2, 0x01, +0x05, 0x78, 0x00, 0xF2, 0x01, +0x05, 0xA2, 0x57, 0x20, 0x01, +0x05, 0x9A, 0x58, 0x22, 0x01, +0x05, 0x8A, 0x57, 0x34, 0x01, +0x05, 0x82, 0x58, 0x22, 0x01, +0x05, 0x62, 0x54, 0x22, 0x01, +0x05, 0x5A, 0x55, 0x22, 0x01, +0x05, 0x52, 0x56, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x05, 0x90, 0x00, 0xE2, 0x01, +0x05, 0xA8, 0x00, 0xF2, 0x01, +0x04, 0x59, 0x08, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x05, 0xE0, 0x00, 0xE2, 0x01, +0x06, 0x0A, 0x5C, 0x20, 0x01, +0x06, 0x02, 0x5D, 0x22, 0x01, +0x05, 0xF2, 0x5C, 0x34, 0x01, +0x05, 0xEA, 0x5D, 0x22, 0x01, +0x05, 0xE2, 0x59, 0x22, 0x01, +0x05, 0xDA, 0x5A, 0x22, 0x01, +0x05, 0xD2, 0x5B, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x05, 0xF8, 0x00, 0xE2, 0x01, +0x06, 0x10, 0x00, 0xF2, 0x01, +0x06, 0x3A, 0x5C, 0x20, 0x01, +0x06, 0x32, 0x5D, 0x22, 0x01, +0x06, 0x22, 0x5C, 0x34, 0x01, +0x06, 0x1A, 0x5D, 0x22, 0x01, +0x05, 0xFA, 0x59, 0x22, 0x01, +0x05, 0xF2, 0x5A, 0x22, 0x01, +0x05, 0xEA, 0x5B, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x06, 0x28, 0x00, 0xE2, 0x01, +0x05, 0xB8, 0x00, 0xE2, 0x01, +0x06, 0x40, 0x00, 0xF2, 0x01, +0x04, 0x59, 0x08, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x06, 0x58, 0x00, 0xE2, 0x01, +0x06, 0x82, 0x61, 0x20, 0x01, +0x06, 0x7A, 0x62, 0x22, 0x01, +0x06, 0x6A, 0x61, 0x34, 0x01, +0x06, 0x62, 0x62, 0x22, 0x01, +0x06, 0x5A, 0x5E, 0x22, 0x01, +0x06, 0x52, 0x5F, 0x22, 0x01, +0x06, 0x4A, 0x60, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x06, 0x70, 0x00, 0xE2, 0x01, +0x06, 0x88, 0x00, 0xF2, 0x01, +0x06, 0xB2, 0x61, 0x20, 0x01, +0x06, 0xAA, 0x62, 0x22, 0x01, +0x06, 0x9A, 0x61, 0x34, 0x01, +0x06, 0x92, 0x62, 0x22, 0x01, +0x06, 0x72, 0x5E, 0x22, 0x01, +0x06, 0x6A, 0x5F, 0x22, 0x01, +0x06, 0x62, 0x60, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x06, 0xA0, 0x00, 0xE2, 0x01, +0x05, 0xB0, 0x00, 0xE2, 0x01, +0x06, 0xB8, 0x00, 0xF2, 0x01, +0x05, 0x91, 0x08, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x06, 0xD0, 0x00, 0xE2, 0x01, +0x06, 0xFA, 0x5C, 0x20, 0x01, +0x06, 0xF2, 0x5D, 0x22, 0x01, +0x06, 0xE2, 0x5C, 0x34, 0x01, +0x06, 0xDA, 0x5D, 0x22, 0x01, +0x06, 0xD2, 0x59, 0x22, 0x01, +0x06, 0xCA, 0x5A, 0x22, 0x01, +0x06, 0xC2, 0x5B, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x06, 0xE8, 0x00, 0xE2, 0x01, +0x07, 0x00, 0x00, 0xF2, 0x01, +0x07, 0x2A, 0x5C, 0x20, 0x01, +0x07, 0x22, 0x5D, 0x22, 0x01, +0x07, 0x12, 0x5C, 0x34, 0x01, +0x07, 0x0A, 0x5D, 0x22, 0x01, +0x06, 0xEA, 0x59, 0x22, 0x01, +0x06, 0xE2, 0x5A, 0x22, 0x01, +0x06, 0xDA, 0x5B, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x07, 0x18, 0x00, 0xE2, 0x01, +0x05, 0xC8, 0x00, 0xE2, 0x01, +0x07, 0x30, 0x00, 0xF2, 0x01, +0x05, 0x91, 0x08, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x07, 0x48, 0x00, 0xE2, 0x01, +0x07, 0x72, 0x61, 0x20, 0x01, +0x07, 0x6A, 0x62, 0x22, 0x01, +0x07, 0x5A, 0x61, 0x34, 0x01, +0x07, 0x52, 0x62, 0x22, 0x01, +0x07, 0x4A, 0x5E, 0x22, 0x01, +0x07, 0x42, 0x5F, 0x22, 0x01, +0x07, 0x3A, 0x60, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x07, 0x60, 0x00, 0xE2, 0x01, +0x07, 0x78, 0x00, 0xF2, 0x01, +0x07, 0xA2, 0x61, 0x20, 0x01, +0x07, 0x9A, 0x62, 0x22, 0x01, +0x07, 0x8A, 0x61, 0x34, 0x01, +0x07, 0x82, 0x62, 0x22, 0x01, +0x07, 0x62, 0x5E, 0x22, 0x01, +0x07, 0x5A, 0x5F, 0x22, 0x01, +0x07, 0x52, 0x60, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x07, 0x90, 0x00, 0xE2, 0x01, +0x05, 0xC0, 0x00, 0xE2, 0x01, +0x07, 0xA8, 0x00, 0xF2, 0x01, +0x05, 0xB9, 0x08, 0x20, 0x01, +0x05, 0xC9, 0x08, 0x22, 0x41, +0x08, 0x30, 0x00, 0xE2, 0x01, +0x08, 0x30, 0x00, 0xC0, 0x01, +0x08, 0x37, 0xFF, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x08, 0x08, 0x00, 0xE2, 0x01, +0x08, 0x10, 0x00, 0xF2, 0x01, +0x07, 0xC1, 0x08, 0x20, 0x01, +0x07, 0xC2, 0x88, 0x22, 0x41, +0x08, 0x12, 0x88, 0x22, 0x01, +0x07, 0xB1, 0x08, 0x34, 0x01, +0x07, 0xB2, 0x88, 0x22, 0x41, +0x08, 0x0A, 0x88, 0x82, 0x01, +0x08, 0x0A, 0x88, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x07, 0xB8, 0x00, 0xE2, 0x01, +0x07, 0xC8, 0x00, 0xF2, 0x01, +0x08, 0x18, 0x00, 0xF6, 0x01, +0x07, 0xE1, 0x08, 0x20, 0x09, +0x07, 0xE8, 0x00, 0xE2, 0x01, +0x07, 0xD1, 0x08, 0x20, 0x01, +0xFF, 0xF2, 0x89, 0x22, 0x67, +0x07, 0xD8, 0x00, 0xE2, 0x01, +0x08, 0x19, 0x08, 0x22, 0x49, +0x08, 0x19, 0x08, 0x20, 0x01, +0x07, 0xD8, 0x00, 0xE2, 0x27, +0xFF, 0xF2, 0x8A, 0x20, 0x01, +0x07, 0xE8, 0x00, 0xE2, 0x27, +0x00, 0x00, 0x00, 0x00, 0x01, +0x07, 0xE9, 0x08, 0x20, 0x09, +0xFF, 0xF9, 0x08, 0x22, 0x41, +0x07, 0xE8, 0x00, 0xE2, 0x26, +0x07, 0xD9, 0x1A, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x08, 0x20, 0x00, 0xE2, 0x01, +0x08, 0x28, 0x00, 0xF2, 0x01, +0x08, 0x20, 0x00, 0xC0, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x00, 0x02, 0x67, 0xA1, 0x01, +0xFF, 0xE1, 0x08, 0x20, 0x01, +0x00, 0x02, 0x66, 0xA1, 0x01, +0xFF, 0xE1, 0x08, 0x22, 0x41, +0x07, 0xF0, 0x00, 0xE2, 0x01, +0x08, 0x28, 0x00, 0xC0, 0x01, +0x07, 0xF7, 0xFF, 0x20, 0x01, +0xFF, 0xE1, 0x08, 0x22, 0x01, +0x08, 0x00, 0x00, 0xE2, 0x01, +0x08, 0x00, 0x00, 0xC0, 0x01, +0x08, 0x37, 0xFF, 0x20, 0x01, +0x08, 0x38, 0x00, 0xE2, 0x01, +0x05, 0xCA, 0x64, 0x20, 0x01, +0x08, 0x42, 0x64, 0x22, 0x41, +0x08, 0x58, 0x00, 0xE2, 0x01, +0x05, 0xBA, 0x64, 0x20, 0x01, +0x08, 0x42, 0x64, 0x22, 0x01, +0x08, 0x50, 0x00, 0xE2, 0x01, +0x08, 0x39, 0x08, 0x20, 0x01, +0x08, 0x41, 0x08, 0x22, 0x41, +0x07, 0xF8, 0x00, 0xE2, 0x01, +0x07, 0xFA, 0x8B, 0x20, 0x01, +0x08, 0x41, 0x08, 0x22, 0x01, +0x08, 0x48, 0x00, 0xE2, 0x01, +0x08, 0x5A, 0x64, 0x20, 0x01, +0x08, 0x62, 0x64, 0x22, 0x41, +0x08, 0x58, 0x00, 0xE2, 0x01, +0x08, 0x52, 0x64, 0x20, 0x01, +0x08, 0x62, 0x64, 0x22, 0x01, +0x08, 0x50, 0x00, 0xE2, 0x01, +0x08, 0x39, 0x08, 0x20, 0x01, +0x08, 0x61, 0x08, 0x22, 0x41, +0x07, 0xF8, 0x00, 0xE2, 0x01, +0x07, 0xFA, 0x8C, 0x20, 0x01, +0x08, 0x61, 0x08, 0x22, 0x01, +0x08, 0x68, 0x00, 0xE2, 0x01, +0x05, 0xB2, 0x63, 0x20, 0x01, +0x08, 0x52, 0x65, 0x22, 0x01, +0x08, 0x80, 0x00, 0xE2, 0x01, +0x05, 0xC2, 0x63, 0x20, 0x01, +0x08, 0x5A, 0x65, 0x22, 0x01, +0x08, 0x98, 0x00, 0xE2, 0x01, +0x08, 0xAA, 0x90, 0x20, 0x01, +0x08, 0xA2, 0x91, 0x22, 0x01, +0x08, 0x82, 0x8D, 0x22, 0x01, +0x08, 0x7A, 0x8E, 0x22, 0x01, +0x08, 0x72, 0x8F, 0x22, 0x01, +0x08, 0xB0, 0x00, 0xE2, 0x01, +0x08, 0xC2, 0x90, 0x20, 0x01, +0x08, 0xBA, 0x91, 0x22, 0x01, +0x08, 0x9A, 0x8D, 0x22, 0x01, +0x08, 0x92, 0x8E, 0x22, 0x01, +0x08, 0x8A, 0x8F, 0x22, 0x01, +0x08, 0xC8, 0x00, 0xE2, 0x01, +0x08, 0xB2, 0x92, 0x20, 0x01, +0x08, 0xD0, 0x00, 0xE2, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x08, 0xCA, 0x93, 0x20, 0x01, +0x08, 0xD8, 0x00, 0xE2, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x09, 0x12, 0x94, 0x20, 0x01, +0x09, 0x01, 0x08, 0x22, 0x01, +0x09, 0x08, 0x00, 0xE2, 0x01, +0x09, 0x09, 0x08, 0x20, 0x41, +0x08, 0xD1, 0x08, 0x22, 0x01, +0x08, 0xE0, 0x00, 0xC0, 0x01, +0x09, 0x17, 0xFF, 0x22, 0x41, +0x08, 0xF0, 0x00, 0xE2, 0x01, +0x08, 0xF2, 0x94, 0x20, 0x01, +0x09, 0x11, 0x08, 0x22, 0x01, +0x09, 0x18, 0x00, 0xE2, 0x01, +0x09, 0x32, 0x94, 0x20, 0x01, +0x09, 0x21, 0x08, 0x22, 0x01, +0x09, 0x28, 0x00, 0xE2, 0x01, +0x09, 0x29, 0x08, 0x20, 0x41, +0x08, 0xD9, 0x08, 0x22, 0x01, +0x08, 0xE0, 0x00, 0xC0, 0x01, +0x09, 0x37, 0xFF, 0x22, 0x41, +0x08, 0xF8, 0x00, 0xE2, 0x01, +0x08, 0xFA, 0x94, 0x20, 0x01, +0x09, 0x31, 0x08, 0x22, 0x01, +0x09, 0x38, 0x00, 0xE2, 0x01, +0x09, 0x19, 0x08, 0x22, 0x01, +0x09, 0x50, 0x00, 0xE2, 0x01, +0x09, 0x62, 0x98, 0x20, 0x01, +0x09, 0x5A, 0x99, 0x22, 0x01, +0x09, 0x52, 0x95, 0x22, 0x01, +0x09, 0x4A, 0x96, 0x22, 0x01, +0x09, 0x42, 0x97, 0x22, 0x01, +0x09, 0x68, 0x00, 0xE2, 0x01, +0x09, 0x68, 0x00, 0xC0, 0x01, +0x09, 0x6F, 0xFF, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x09, 0xA0, 0x00, 0xE2, 0x01, +0x09, 0xA8, 0x00, 0xF2, 0x01, +0x09, 0x81, 0x08, 0x20, 0x01, +0x09, 0x82, 0xBB, 0x22, 0x41, +0x09, 0xAA, 0xBB, 0x22, 0x01, +0x09, 0x71, 0x08, 0x34, 0x01, +0x09, 0x72, 0xBB, 0x22, 0x41, +0x09, 0xA2, 0xBB, 0x82, 0x01, +0x09, 0xA2, 0xBB, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x09, 0x78, 0x00, 0xE2, 0x01, +0x09, 0x88, 0x00, 0xF2, 0x01, +0x09, 0xB0, 0x00, 0xF6, 0x01, +0x09, 0xB1, 0x1A, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x09, 0xB8, 0x00, 0xE2, 0x01, +0x09, 0xC0, 0x00, 0xF2, 0x01, +0x09, 0xB8, 0x00, 0xC0, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x00, 0x02, 0x9B, 0xA1, 0x01, +0xFF, 0xE1, 0x08, 0x20, 0x01, +0x00, 0x02, 0x9A, 0xA1, 0x01, +0xFF, 0xE1, 0x08, 0x22, 0x41, +0x09, 0x90, 0x00, 0xE2, 0x01, +0x09, 0xC0, 0x00, 0xC0, 0x01, +0x09, 0x97, 0xFF, 0x20, 0x01, +0xFF, 0xE1, 0x08, 0x22, 0x01, +0x08, 0xE8, 0x00, 0xE2, 0x01, +0x08, 0xF8, 0x00, 0xC0, 0x01, +0x08, 0xFF, 0xFF, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x10, 0x00, 0xE2, 0x01, +0x02, 0x18, 0x00, 0xF2, 0x01, +0x09, 0xD9, 0x08, 0x20, 0x01, +0x09, 0xDA, 0xBC, 0x22, 0x41, +0x02, 0x1A, 0xBC, 0x22, 0x01, +0x09, 0xC9, 0x08, 0x34, 0x01, +0x09, 0xCA, 0xBC, 0x22, 0x41, +0x02, 0x12, 0xBC, 0x82, 0x01, +0x02, 0x12, 0xBC, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x09, 0xD0, 0x00, 0xE2, 0x01, +0x09, 0xE0, 0x00, 0xF2, 0x01, +0x02, 0x20, 0x00, 0xF6, 0x01, +0x09, 0xF9, 0x08, 0x20, 0x09, +0x0A, 0x00, 0x00, 0xE2, 0x01, +0x09, 0xE9, 0x08, 0x20, 0x01, +0xFF, 0xF2, 0xBE, 0x22, 0x67, +0x09, 0xF0, 0x00, 0xE2, 0x01, +0x02, 0x21, 0x08, 0x22, 0x49, +0x02, 0x21, 0x08, 0x20, 0x01, +0x09, 0xF0, 0x00, 0xE2, 0x27, +0xFF, 0xF2, 0xBD, 0x20, 0x01, +0x0A, 0x00, 0x00, 0xE2, 0x27, +0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0x01, 0x08, 0x20, 0x09, +0xFF, 0xF9, 0x08, 0x22, 0x41, +0x0A, 0x00, 0x00, 0xE2, 0x26, +0x09, 0xF1, 0x08, 0x20, 0x01, +0x08, 0xF9, 0x08, 0x20, 0x01, +0x0A, 0x08, 0x00, 0xE2, 0x01, +0x08, 0xF0, 0x00, 0xC0, 0x01, +0x08, 0xF7, 0xFF, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x10, 0x00, 0xE2, 0x01, +0x02, 0x18, 0x00, 0xF2, 0x01, +0x0A, 0x21, 0x08, 0x20, 0x01, +0x0A, 0x22, 0xBF, 0x22, 0x41, +0x02, 0x1A, 0xBF, 0x22, 0x01, +0x0A, 0x11, 0x08, 0x34, 0x01, +0x0A, 0x12, 0xBF, 0x22, 0x41, +0x02, 0x12, 0xBF, 0x82, 0x01, +0x02, 0x12, 0xBF, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0x18, 0x00, 0xE2, 0x01, +0x0A, 0x28, 0x00, 0xF2, 0x01, +0x02, 0x20, 0x00, 0xF6, 0x01, +0x0A, 0x41, 0x08, 0x20, 0x09, +0x0A, 0x48, 0x00, 0xE2, 0x01, +0x0A, 0x31, 0x08, 0x20, 0x01, +0xFF, 0xF2, 0xC1, 0x22, 0x67, +0x0A, 0x38, 0x00, 0xE2, 0x01, +0x02, 0x21, 0x08, 0x22, 0x49, +0x02, 0x21, 0x08, 0x20, 0x01, +0x0A, 0x38, 0x00, 0xE2, 0x27, +0xFF, 0xF2, 0xC0, 0x20, 0x01, +0x0A, 0x48, 0x00, 0xE2, 0x27, +0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0x49, 0x08, 0x20, 0x09, +0xFF, 0xF9, 0x08, 0x22, 0x41, +0x0A, 0x48, 0x00, 0xE2, 0x26, +0x0A, 0x39, 0x08, 0x20, 0x01, +0x08, 0xF1, 0x08, 0x20, 0x01, +0x0A, 0x50, 0x00, 0xE2, 0x01, +0x0A, 0x09, 0x08, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x10, 0x00, 0xF0, 0x01, 0xFF, 0xE9, 0x08, 0x22, 0x01, -0x03, 0x68, 0x00, 0xF2, 0x01, -0x03, 0xB9, 0x08, 0x20, 0x01, -0x03, 0xBA, 0x47, 0x22, 0x41, -0x03, 0x6A, 0x47, 0x22, 0x01, -0x03, 0xA9, 0x08, 0x34, 0x01, -0x03, 0xAA, 0x47, 0x22, 0x41, -0x03, 0x72, 0x47, 0x22, 0x01, +0x02, 0x18, 0x00, 0xF2, 0x01, +0x0A, 0x91, 0x08, 0x20, 0x01, +0x0A, 0x92, 0xCE, 0x22, 0x41, +0x02, 0x1A, 0xCE, 0x22, 0x01, +0x0A, 0x81, 0x08, 0x34, 0x01, +0x0A, 0x82, 0xCE, 0x22, 0x41, +0x02, 0x12, 0xCE, 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0xB0, 0x00, 0xE2, 0x01, -0x03, 0xC0, 0x00, 0xF2, 0x01, -0x03, 0x78, 0x00, 0xE2, 0x01, -0xFF, 0xF2, 0x43, 0x40, 0x01, -0x03, 0x79, 0x08, 0x20, 0x09, -0x03, 0x7A, 0x3B, 0x20, 0x01, -0xFF, 0xF2, 0x3C, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x7A, 0x3D, 0x20, 0x01, -0xFF, 0xF2, 0x3E, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x23, -0xFF, 0xF2, 0x44, 0x40, 0x01, -0x03, 0x79, 0x08, 0x20, 0x09, -0x03, 0x7A, 0x3F, 0x20, 0x01, -0xFF, 0xF2, 0x40, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x23, -0xFF, 0xF2, 0x45, 0x40, 0x01, -0x03, 0x79, 0x08, 0x20, 0x09, -0x03, 0x7A, 0x41, 0x20, 0x01, -0xFF, 0xF2, 0x42, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x23, +0x0A, 0x88, 0x00, 0xE2, 0x01, +0x0A, 0x98, 0x00, 0xF2, 0x01, +0x0A, 0xA0, 0x00, 0xE2, 0x01, +0xFF, 0xF2, 0xCA, 0x40, 0x01, +0x0A, 0xA1, 0x08, 0x20, 0x09, +0x0A, 0xA2, 0xC2, 0x20, 0x01, +0xFF, 0xF2, 0xC3, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x0A, 0xA2, 0xC4, 0x20, 0x01, +0xFF, 0xF2, 0xC5, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x23, +0xFF, 0xF2, 0xCB, 0x40, 0x01, +0x0A, 0xA1, 0x08, 0x20, 0x09, +0x0A, 0xA2, 0xC6, 0x20, 0x01, +0xFF, 0xF2, 0xC7, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x23, +0xFF, 0xF2, 0xCC, 0x40, 0x01, +0x0A, 0xA1, 0x08, 0x20, 0x09, +0x0A, 0xA2, 0xC8, 0x20, 0x01, +0xFF, 0xF2, 0xC9, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0x18, 0x00, 0xC0, 0x01, -0x03, 0x7F, 0xFF, 0x20, 0x41, +0x09, 0x98, 0x00, 0xC0, 0x01, +0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x1F, 0xFF, 0x20, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x18, 0x00, 0xC0, 0x01, -0x03, 0x7F, 0xFF, 0x20, 0x41, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x9F, 0xFF, 0x20, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x98, 0x00, 0xC0, 0x01, +0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x1F, 0xFF, 0x20, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x18, 0x00, 0xC0, 0x01, -0x03, 0x7F, 0xFF, 0x20, 0x41, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x9F, 0xFF, 0x20, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x98, 0x00, 0xC0, 0x01, +0x0A, 0xA7, 0xFF, 0x20, 0x41, 0xFF, 0xF1, 0x07, 0x22, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x1F, 0xFF, 0x20, 0x01, -0x03, 0x18, 0x00, 0xE2, 0x01, -0x03, 0x18, 0x00, 0xC0, 0x01, -0x00, 0x02, 0x46, 0xA0, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x9F, 0xFF, 0x20, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x98, 0x00, 0xC0, 0x01, +0x00, 0x02, 0xCD, 0xA0, 0x01, 0xFF, 0xE7, 0xFF, 0x20, 0x01, -0x03, 0xA0, 0x00, 0xE2, 0x01, +0x0A, 0x78, 0x00, 0xE2, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0xA1, 0x08, 0x40, 0x01, +0x0A, 0x79, 0x08, 0x40, 0x01, 0xFF, 0xF1, 0x08, 0x20, 0x09, 0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0xA0, 0x00, 0xE2, 0x23, +0x0A, 0x78, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0xA1, 0x08, 0x40, 0x01, -0x03, 0x99, 0x08, 0x20, 0x09, -0x03, 0xA2, 0x48, 0x20, 0x01, -0x03, 0x9A, 0x48, 0x22, 0x41, -0x03, 0x99, 0x08, 0x22, 0x01, -0x03, 0xA0, 0x00, 0xE2, 0x23, +0x0A, 0x79, 0x08, 0x40, 0x01, +0x0A, 0x71, 0x08, 0x20, 0x09, +0x0A, 0x7A, 0xCF, 0x20, 0x01, +0x0A, 0x72, 0xCF, 0x22, 0x41, +0x0A, 0x71, 0x08, 0x22, 0x01, +0x0A, 0x78, 0x00, 0xE2, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, -0x03, 0xA1, 0x08, 0x20, 0x01, -0x03, 0x90, 0x00, 0xE2, 0x01, -0xFF, 0xF2, 0x49, 0x22, 0x49, +0x0A, 0x79, 0x08, 0x20, 0x01, +0x0A, 0x68, 0x00, 0xE2, 0x01, +0xFF, 0xF2, 0xD0, 0x22, 0x49, 0xFF, 0xF1, 0x08, 0x20, 0x01, 0xFF, 0xE9, 0x08, 0x20, 0x25, -0x03, 0x88, 0x00, 0xE2, 0x01, -0x03, 0xA0, 0x00, 0xC0, 0x01, -0x03, 0x17, 0xFF, 0x20, 0x01, -0x03, 0x80, 0x00, 0xE2, 0x01, -0x03, 0x81, 0x08, 0x20, 0x01, -0xFF, 0x30, 0x00, 0x02, 0x01, -0x03, 0x21, 0x08, 0x20, 0x01, +0x0A, 0x60, 0x00, 0xE2, 0x01, +0x0A, 0x78, 0x00, 0xC0, 0x01, +0x0A, 0x0F, 0xFF, 0x20, 0x01, +0x0A, 0x58, 0x00, 0xE2, 0x01, +0x0A, 0x51, 0x08, 0x20, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x02, 0x10, 0x00, 0xF0, 0x01, +0xFF, 0xE9, 0x08, 0x22, 0x01, +0x02, 0x18, 0x00, 0xF2, 0x01, +0x0A, 0xE1, 0x08, 0x20, 0x01, +0x0A, 0xE2, 0xDD, 0x22, 0x41, +0x02, 0x1A, 0xDD, 0x22, 0x01, +0x0A, 0xD1, 0x08, 0x34, 0x01, +0x0A, 0xD2, 0xDD, 0x22, 0x41, +0x02, 0x12, 0xDD, 0x22, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0xD8, 0x00, 0xE2, 0x01, +0x0A, 0xE8, 0x00, 0xF2, 0x01, +0x0A, 0xA0, 0x00, 0xE2, 0x01, +0xFF, 0xF2, 0xD9, 0x40, 0x01, +0x0A, 0xA1, 0x08, 0x20, 0x09, +0x0A, 0xA2, 0xD1, 0x20, 0x01, +0xFF, 0xF2, 0xD2, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x0A, 0xA2, 0xD3, 0x20, 0x01, +0xFF, 0xF2, 0xD4, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x23, +0xFF, 0xF2, 0xDA, 0x40, 0x01, +0x0A, 0xA1, 0x08, 0x20, 0x09, +0x0A, 0xA2, 0xD5, 0x20, 0x01, +0xFF, 0xF2, 0xD6, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x23, +0xFF, 0xF2, 0xDB, 0x40, 0x01, +0x0A, 0xA1, 0x08, 0x20, 0x09, +0x0A, 0xA2, 0xD7, 0x20, 0x01, +0xFF, 0xF2, 0xD8, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x23, +0x00, 0x00, 0x00, 0x00, 0x01, +0x09, 0x98, 0x00, 0xC0, 0x01, +0x0A, 0xA7, 0xFF, 0x20, 0x41, +0xFF, 0xF1, 0x07, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x9F, 0xFF, 0x20, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x98, 0x00, 0xC0, 0x01, +0x0A, 0xA7, 0xFF, 0x20, 0x41, +0xFF, 0xF1, 0x07, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x9F, 0xFF, 0x20, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x98, 0x00, 0xC0, 0x01, +0x0A, 0xA7, 0xFF, 0x20, 0x41, +0xFF, 0xF1, 0x07, 0x22, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x9F, 0xFF, 0x20, 0x01, +0x09, 0x98, 0x00, 0xE2, 0x01, +0x09, 0x98, 0x00, 0xC0, 0x01, +0x00, 0x02, 0xDC, 0xA0, 0x01, +0xFF, 0xE7, 0xFF, 0x20, 0x01, +0x0A, 0xC8, 0x00, 0xE2, 0x01, +0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0xC9, 0x08, 0x40, 0x01, +0xFF, 0xF1, 0x08, 0x20, 0x09, +0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0xC8, 0x00, 0xE2, 0x23, +0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0xC9, 0x08, 0x40, 0x01, +0x0A, 0xC1, 0x08, 0x20, 0x09, +0x0A, 0xCA, 0xDE, 0x20, 0x01, +0x0A, 0xC2, 0xDE, 0x22, 0x41, +0x0A, 0xC1, 0x08, 0x22, 0x01, +0x0A, 0xC8, 0x00, 0xE2, 0x23, +0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0xC9, 0x08, 0x20, 0x01, +0x0A, 0xB8, 0x00, 0xE2, 0x01, +0xFF, 0xF2, 0xDF, 0x22, 0x49, +0xFF, 0xF1, 0x08, 0x20, 0x01, +0xFF, 0xE9, 0x08, 0x20, 0x25, +0x0A, 0xB0, 0x00, 0xE2, 0x01, +0x0A, 0xC8, 0x00, 0xC0, 0x01, +0x0A, 0x57, 0xFF, 0x20, 0x01, +0x0A, 0xA8, 0x00, 0xE2, 0x01, +0x0A, 0xA9, 0x08, 0x20, 0x01, 0xFF, 0x28, 0x00, 0x02, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, -0x00, 0x00, 0x00, 0x00, 0x01, +0x0A, 0x59, 0x08, 0x20, 0x01, +0xFF, 0x30, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, @@ -1063,6 +1063,28 @@ ADI_REG_TYPE Param_Data_IC_1[PARAM_SIZE_IC_1] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C, 0xAC, 0x00, 0x80, 0x00, 0x00, +0x00, 0x7F, 0xFC, 0xB9, +0x00, 0x7F, 0xFC, 0xB9, +0x00, 0x7F, 0xFC, 0xB9, +0x00, 0x7F, 0xFC, 0xB9, +0x01, 0x41, 0x85, 0x7F, +0x00, 0x09, 0x0F, 0xCC, +0x00, 0x09, 0x0F, 0xCC, +0x00, 0x06, 0x6A, 0x4A, +0x00, 0x04, 0x8A, 0xA7, +0x00, 0x03, 0x37, 0x18, +0x00, 0x02, 0x46, 0xB5, +0x00, 0x01, 0x9C, 0x86, +0x00, 0x01, 0x24, 0x0C, +0x00, 0x00, 0xCE, 0xC1, +0x00, 0x00, 0x92, 0x5F, +0x00, 0x00, 0x67, 0x9F, +0x00, 0x00, 0x49, 0x5C, +0x00, 0x00, 0xDA, 0xD7, +0x00, 0x02, 0xFD, 0x86, +0x00, 0x0A, 0x75, 0xDE, +0x00, 0x24, 0x97, 0x68, +0x00, 0x7E, 0xDA, 0x4D, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, @@ -1071,31 +1093,113 @@ ADI_REG_TYPE Param_Data_IC_1[PARAM_SIZE_IC_1] = { 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x00, 0x0F, 0xB9, +0x00, 0x80, 0x00, 0x00, +0x00, 0x00, 0x09, 0x60, +0x00, 0x00, 0x00, 0xB6, +0x00, 0x00, 0x4E, 0xB0, +0x00, 0x00, 0x01, 0xE0, +0x00, 0x00, 0x07, 0x1C, +0x00, 0x00, 0x4E, 0xB0, +0x00, 0x00, 0x01, 0xE0, +0x00, 0x00, 0x07, 0x1C, +0x00, 0x00, 0x4E, 0xB0, +0x00, 0x00, 0x01, 0xE0, +0x00, 0x00, 0x07, 0x1C, +0x00, 0x00, 0x4E, 0xB0, +0x00, 0x00, 0x01, 0xE0, +0x00, 0x00, 0x07, 0x1C, 0x00, 0x7F, 0xC3, 0x65, 0x0F, 0x00, 0x79, 0x35, 0x00, 0x7F, 0xC3, 0x65, 0x00, 0xFF, 0x86, 0xAE, 0x0F, 0x80, 0x79, 0x19, +0x00, 0x7F, 0xE6, 0x6F, +0x0F, 0x01, 0xD7, 0xBF, +0x00, 0x7E, 0x47, 0xC2, +0x00, 0xFE, 0x28, 0x41, +0x0F, 0x81, 0xD1, 0xCF, +0x00, 0x80, 0x0B, 0x93, +0x0F, 0x06, 0x4A, 0x08, +0x00, 0x79, 0xF5, 0x34, +0x00, 0xF9, 0xB5, 0xF8, +0x0F, 0x85, 0xFF, 0x39, +0x00, 0x7F, 0x5D, 0x86, +0x0F, 0x14, 0xBB, 0x22, +0x00, 0x6E, 0x7D, 0xEA, +0x00, 0xEB, 0x44, 0xDE, +0x0F, 0x92, 0x24, 0x90, +0x00, 0x80, 0x52, 0x5D, +0x0F, 0x3C, 0xC4, 0x90, +0x00, 0x55, 0x01, 0xAB, +0x00, 0xC3, 0x3B, 0x70, +0x0F, 0xAA, 0xAB, 0xF8, +0x00, 0x82, 0x2B, 0x9A, +0x0F, 0x98, 0xC2, 0xB2, +0x00, 0x34, 0x93, 0x0C, +0x00, 0x67, 0x3D, 0x4E, +0x0F, 0xC9, 0x41, 0x5A, +0x00, 0x02, 0xC4, 0x78, +0x00, 0x05, 0x88, 0xEF, +0x00, 0x02, 0xC4, 0x78, +0x00, 0xC5, 0x84, 0xFE, +0xFF, 0xAF, 0x69, 0x23, +0x00, 0x65, 0x86, 0xF7, +0xFF, 0x34, 0xF2, 0x12, +0x00, 0x65, 0x86, 0xF7, +0x00, 0xC5, 0x84, 0xFE, +0xFF, 0xAF, 0x69, 0x23, +0x00, 0xA6, 0x66, 0x66, +0x00, 0x73, 0x33, 0x33, +0x00, 0x6D, 0x66, 0xD6, 0x00, 0x80, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x80, 0x00, 0x00, +0x00, 0x75, 0x69, 0x4C, +0x00, 0x5A, 0x9D, 0xF8, +0x00, 0x45, 0xEF, 0xFF, +0x00, 0x35, 0xFA, 0x27, +0x00, 0x29, 0xA8, 0xBB, +0x00, 0x20, 0x26, 0xF3, +0x00, 0x06, 0x4A, 0x36, +0x00, 0x00, 0x01, 0x6C, +0x00, 0x00, 0x5D, 0xC0, +0x00, 0x08, 0x0D, 0x6A, +0x00, 0x02, 0x78, 0x8C, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -1103,6 +1207,52 @@ ADI_REG_TYPE Param_Data_IC_1[PARAM_SIZE_IC_1] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, +0x00, 0x01, 0x01, 0x5C, +0x00, 0x00, 0x01, 0x64, +0x00, 0x00, 0x02, 0xC8, +0x00, 0x00, 0x01, 0x64, +0x00, 0xFD, 0xA1, 0x53, +0x0F, 0x82, 0x59, 0x1D, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x28, 0xDA, 0x08, +0x00, 0x29, 0x53, 0x21, +0x00, 0x2A, 0xC6, 0xE7, +0x00, 0x2C, 0x47, 0xBE, +0x00, 0x2D, 0xD6, 0x1B, +0x00, 0x2F, 0x72, 0x77, +0x00, 0x31, 0x1D, 0x52, +0x00, 0x32, 0xD7, 0x2C, +0x00, 0x34, 0xA0, 0x8E, +0x00, 0x36, 0x7A, 0x02, +0x00, 0x00, 0x06, 0xD3, +0x00, 0x00, 0x4E, 0xB0, +0x00, 0x00, 0x01, 0xE0, +0x00, 0x00, 0x07, 0x1C, +0x00, 0x00, 0x4E, 0xB0, +0x00, 0x00, 0x01, 0xE0, +0x00, 0x00, 0x07, 0x1C, 0x0F, 0xFE, 0x2B, 0xE3, 0x00, 0x22, 0xBE, 0x2C, 0x0F, 0xEA, 0xAA, 0xAB, @@ -1933,156 +2083,6 @@ ADI_REG_TYPE Param_Data_IC_1[PARAM_SIZE_IC_1] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, }; diff --git a/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1_PARAM.h b/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1_PARAM.h index f818e2b..1d16f2f 100644 --- a/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1_PARAM.h +++ b/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1_PARAM.h @@ -1,8 +1,8 @@ /* - * File: C:\Users\mikbi\Documents\Allegati\Desktop\DigiRadio\DigiRadioModificato\DigiRadio_IC_1_PARAM.h + * File: C:\Users\mikbi\Documents\Allegati\Desktop\Sigmastudio\DigiRadioFinale_IC_1_PARAM.h * - * Created: Friday, August 7, 2026 3:19:11 AM - * Description: DigiRadio:IC 1 parameter RAM definitions. + * Created: Tuesday, August 25, 2026 8:11:05 PM + * Description: DigiRadioFinale:IC 1 parameter RAM definitions. * * This software is distributed in the hope that it will be useful, * but is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR @@ -16,8 +16,8 @@ * * Copyright ©2026 Analog Devices, Inc. All rights reserved. */ -#ifndef __DIGIRADIO_IC_1_PARAM_H__ -#define __DIGIRADIO_IC_1_PARAM_H__ +#ifndef __DIGIRADIOFINALE_IC_1_PARAM_H__ +#define __DIGIRADIOFINALE_IC_1_PARAM_H__ /* Module Beep1 - Beep Sources*/ @@ -36,444 +36,1124 @@ #define VALUE_BEEP1_BEEP_FREQ SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00331636677280911) #define TYPE_BEEP1_BEEP_FREQ SIGMASTUDIOTYPE_FIXPOINT -/* Module Si4674 - Multiple Volume Control*/ -#define COUNT_SI4674 2 -#define DEVICE_SI4674 "IC1" -#define ADDR_SI4674 3 -#define FIXPT_SI4674 0x00800000 -#define VALUE_SI4674 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_SI4674 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_SI4674_1 4 -#define FIXPT_SI4674_1 0x00800000 -#define VALUE_SI4674_1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_SI4674_1 SIGMASTUDIOTYPE_FIXPOINT +/* Module DC1 - DC Input Entry*/ +#define COUNT_DC1 1 +#define DEVICE_DC1 "IC1" +#define ADDR_DC1 3 +#define FIXPT_DC1 0x00800000 +#define VALUE_DC1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_DC1 SIGMASTUDIOTYPE_FIXPOINT -/* Module ESP32 - Multiple Volume Control*/ -#define COUNT_ESP32 2 -#define DEVICE_ESP32 "IC1" -#define ADDR_ESP32 5 -#define FIXPT_ESP32 0x00800000 -#define VALUE_ESP32 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_ESP32 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_ESP32_1 6 -#define FIXPT_ESP32_1 0x00800000 -#define VALUE_ESP32_1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_ESP32_1 SIGMASTUDIOTYPE_FIXPOINT +/* Module DCB1 - DC Blocking*/ +#define COUNT_DCB1 1 +#define DEVICE_DCB1 "IC1" +#define ADDR_DCB1_POLE 4 +#define FIXPT_DCB1_POLE 0x007FFCB9 +#define VALUE_DCB1_POLE SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.9999) +#define TYPE_DCB1_POLE SIGMASTUDIOTYPE_FIXPOINT -/* Module Single 1 - Single Volume*/ -#define COUNT_SINGLE1 1 -#define DEVICE_SINGLE1 "IC1" -#define ADDR_SINGLE1 7 -#define FIXPT_SINGLE1 0x00800000 -#define VALUE_SINGLE1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_SINGLE1 SIGMASTUDIOTYPE_FIXPOINT +/* Module DCB2 - DC Blocking*/ +#define COUNT_DCB2 1 +#define DEVICE_DCB2 "IC1" +#define ADDR_DCB2_POLE 5 +#define FIXPT_DCB2_POLE 0x007FFCB9 +#define VALUE_DCB2_POLE SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.9999) +#define TYPE_DCB2_POLE SIGMASTUDIOTYPE_FIXPOINT + +/* Module DCB4 - DC Blocking*/ +#define COUNT_DCB4 1 +#define DEVICE_DCB4 "IC1" +#define ADDR_DCB4_POLE 6 +#define FIXPT_DCB4_POLE 0x007FFCB9 +#define VALUE_DCB4_POLE SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.9999) +#define TYPE_DCB4_POLE SIGMASTUDIOTYPE_FIXPOINT + +/* Module DCB3 - DC Blocking*/ +#define COUNT_DCB3 1 +#define DEVICE_DCB3 "IC1" +#define ADDR_DCB3_POLE 7 +#define FIXPT_DCB3_POLE 0x007FFCB9 +#define VALUE_DCB3_POLE SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.9999) +#define TYPE_DCB3_POLE SIGMASTUDIOTYPE_FIXPOINT /* Module S Splitter1 - Single Control Splitter*/ #define COUNT_SSPLITTER1 1 #define DEVICE_SSPLITTER1 "IC1" #define ADDR_SSPLITTER1 8 -#define FIXPT_SSPLITTER1 0x00800000 -#define VALUE_SSPLITTER1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define FIXPT_SSPLITTER1 0x0141857E +#define VALUE_SSPLITTER1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(2.51188643150958) #define TYPE_SSPLITTER1 SIGMASTUDIOTYPE_FIXPOINT -/* Module St Mixer1 - Stereo Mixer*/ -#define COUNT_STMIXER1 3 -#define DEVICE_STMIXER1 "IC1" -#define ADDR_STMIXER1_ST0_VOLUME 9 -#define FIXPT_STMIXER1_ST0_VOLUME 0x00800000 -#define VALUE_STMIXER1_ST0_VOLUME SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_STMIXER1_ST0_VOLUME SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_STMIXER1_ST1_VOLUME 10 -#define FIXPT_STMIXER1_ST1_VOLUME 0x00800000 -#define VALUE_STMIXER1_ST1_VOLUME SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_STMIXER1_ST1_VOLUME SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_STMIXER1_ST2_VOLUME 11 -#define FIXPT_STMIXER1_ST2_VOLUME 0x00800000 -#define VALUE_STMIXER1_ST2_VOLUME SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_STMIXER1_ST2_VOLUME SIGMASTUDIOTYPE_FIXPOINT +/* Module Compressor1 - RMS (gain)*/ +#define COUNT_COMPRESSOR1 38 +#define DEVICE_COMPRESSOR1 "IC1" +#define ADDR_COMPRESSOR1_0 9 +#define FIXPT_COMPRESSOR1_0 0x00090FCB +#define VALUE_COMPRESSOR1_0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0707945784384138) +#define TYPE_COMPRESSOR1_0 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_1 10 +#define FIXPT_COMPRESSOR1_1 0x00090FCB +#define VALUE_COMPRESSOR1_1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0707945784384138) +#define TYPE_COMPRESSOR1_1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_2 11 +#define FIXPT_COMPRESSOR1_2 0x00066A4A +#define VALUE_COMPRESSOR1_2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0501187233627272) +#define TYPE_COMPRESSOR1_2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_3 12 +#define FIXPT_COMPRESSOR1_3 0x00048AA7 +#define VALUE_COMPRESSOR1_3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0354813389233576) +#define TYPE_COMPRESSOR1_3 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_4 13 +#define FIXPT_COMPRESSOR1_4 0x00033718 +#define VALUE_COMPRESSOR1_4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0251188643150958) +#define TYPE_COMPRESSOR1_4 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_5 14 +#define FIXPT_COMPRESSOR1_5 0x000246B4 +#define VALUE_COMPRESSOR1_5 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0177827941003892) +#define TYPE_COMPRESSOR1_5 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_6 15 +#define FIXPT_COMPRESSOR1_6 0x00019C86 +#define VALUE_COMPRESSOR1_6 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0125892541179417) +#define TYPE_COMPRESSOR1_6 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_7 16 +#define FIXPT_COMPRESSOR1_7 0x0001240B +#define VALUE_COMPRESSOR1_7 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00891250938133746) +#define TYPE_COMPRESSOR1_7 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_8 17 +#define FIXPT_COMPRESSOR1_8 0x0000CEC0 +#define VALUE_COMPRESSOR1_8 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00630957344480193) +#define TYPE_COMPRESSOR1_8 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_9 18 +#define FIXPT_COMPRESSOR1_9 0x0000925E +#define VALUE_COMPRESSOR1_9 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00446683592150963) +#define TYPE_COMPRESSOR1_9 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_10 19 +#define FIXPT_COMPRESSOR1_10 0x0000679F +#define VALUE_COMPRESSOR1_10 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00316227766016838) +#define TYPE_COMPRESSOR1_10 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_11 20 +#define FIXPT_COMPRESSOR1_11 0x0000495B +#define VALUE_COMPRESSOR1_11 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00223872118189122) +#define TYPE_COMPRESSOR1_11 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_12 21 +#define FIXPT_COMPRESSOR1_12 0x0000DAD7 +#define VALUE_COMPRESSOR1_12 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0066784843631956) +#define TYPE_COMPRESSOR1_12 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_13 22 +#define FIXPT_COMPRESSOR1_13 0x0002FD85 +#define VALUE_COMPRESSOR1_13 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.023361914765363) +#define TYPE_COMPRESSOR1_13 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_14 23 +#define FIXPT_COMPRESSOR1_14 0x000A75DD +#define VALUE_COMPRESSOR1_14 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0817219943662389) +#define TYPE_COMPRESSOR1_14 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_15 24 +#define FIXPT_COMPRESSOR1_15 0x00249768 +#define VALUE_COMPRESSOR1_15 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.285870590243626) +#define TYPE_COMPRESSOR1_15 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_16 25 +#define FIXPT_COMPRESSOR1_16 0x007EDA4C +#define VALUE_COMPRESSOR1_16 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.991036968711138) +#define TYPE_COMPRESSOR1_16 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_17 26 +#define FIXPT_COMPRESSOR1_17 0x00800000 +#define VALUE_COMPRESSOR1_17 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_17 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_18 27 +#define FIXPT_COMPRESSOR1_18 0x00800000 +#define VALUE_COMPRESSOR1_18 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_18 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_19 28 +#define FIXPT_COMPRESSOR1_19 0x00800000 +#define VALUE_COMPRESSOR1_19 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_19 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_20 29 +#define FIXPT_COMPRESSOR1_20 0x00800000 +#define VALUE_COMPRESSOR1_20 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_20 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_21 30 +#define FIXPT_COMPRESSOR1_21 0x00800000 +#define VALUE_COMPRESSOR1_21 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_21 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_22 31 +#define FIXPT_COMPRESSOR1_22 0x00800000 +#define VALUE_COMPRESSOR1_22 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_22 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_23 32 +#define FIXPT_COMPRESSOR1_23 0x00800000 +#define VALUE_COMPRESSOR1_23 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_23 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_24 33 +#define FIXPT_COMPRESSOR1_24 0x00800000 +#define VALUE_COMPRESSOR1_24 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_24 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_25 34 +#define FIXPT_COMPRESSOR1_25 0x00800000 +#define VALUE_COMPRESSOR1_25 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_25 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_26 35 +#define FIXPT_COMPRESSOR1_26 0x00800000 +#define VALUE_COMPRESSOR1_26 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_26 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_27 36 +#define FIXPT_COMPRESSOR1_27 0x00800000 +#define VALUE_COMPRESSOR1_27 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_27 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_28 37 +#define FIXPT_COMPRESSOR1_28 0x00800000 +#define VALUE_COMPRESSOR1_28 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_28 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_29 38 +#define FIXPT_COMPRESSOR1_29 0x00800000 +#define VALUE_COMPRESSOR1_29 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_29 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_30 39 +#define FIXPT_COMPRESSOR1_30 0x00800000 +#define VALUE_COMPRESSOR1_30 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_30 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_31 40 +#define FIXPT_COMPRESSOR1_31 0x00800000 +#define VALUE_COMPRESSOR1_31 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_31 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_32 41 +#define FIXPT_COMPRESSOR1_32 0x00800000 +#define VALUE_COMPRESSOR1_32 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_32 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_33 42 +#define FIXPT_COMPRESSOR1_33 0x00800000 +#define VALUE_COMPRESSOR1_33 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_33 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_RMS 43 +#define FIXPT_COMPRESSOR1_RMS 0x00000FB9 +#define VALUE_COMPRESSOR1_RMS SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000479820304660095) +#define TYPE_COMPRESSOR1_RMS SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_POST_GAIN 44 +#define FIXPT_COMPRESSOR1_POST_GAIN 0x00800000 +#define VALUE_COMPRESSOR1_POST_GAIN SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_COMPRESSOR1_POST_GAIN SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_COMPRESSOR1_HOLD 45 +#define FIXPT_COMPRESSOR1_HOLD 0x00000960 +#define VALUE_COMPRESSOR1_HOLD SIGMASTUDIOTYPE_INTEGER_CONVERT(2400) +#define TYPE_COMPRESSOR1_HOLD SIGMASTUDIOTYPE_INTEGER +#define ADDR_COMPRESSOR1_DECAY 46 +#define FIXPT_COMPRESSOR1_DECAY 0x000000B6 +#define VALUE_COMPRESSOR1_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(2.17013888888889E-05) +#define TYPE_COMPRESSOR1_DECAY SIGMASTUDIOTYPE_FIXPOINT + +/* Module 1 X RTA3 - Single Level Detector*/ +#define COUNT_1XRTA3 5 +#define DEVICE_1XRTA3 "IC1" +#define ADDR_1XRTA3_TCONST 47 +#define FIXPT_1XRTA3_TCONST 0x00004EB0 +#define VALUE_1XRTA3_TCONST SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00240140490349172) +#define TYPE_1XRTA3_TCONST SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA3_HOLD 48 +#define FIXPT_1XRTA3_HOLD 0x000001E0 +#define VALUE_1XRTA3_HOLD SIGMASTUDIOTYPE_INTEGER_CONVERT(480) +#define TYPE_1XRTA3_HOLD SIGMASTUDIOTYPE_INTEGER +#define ADDR_1XRTA3_DECAY 49 +#define FIXPT_1XRTA3_DECAY 0x0000071C +#define VALUE_1XRTA3_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000217013888888889) +#define TYPE_1XRTA3_DECAY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA3 2074 +#define VALUES_1XRTA3 SIGMASTUDIOTYPE_SPECIAL(0x026E) +#define TYPE_1XRTA3 SIGMASTUDIOTYPE_SPECIAL +#define ADDR_1XRTA3 2074 +#define VALUE_1XRTA3 SIGMASTUDIOTYPE_10_14_CONVERT(0) +#define TYPE_1XRTA3 SIGMASTUDIOTYPE_10_14 + +/* Module 1 X RTA4 - Single Level Detector*/ +#define COUNT_1XRTA4 5 +#define DEVICE_1XRTA4 "IC1" +#define ADDR_1XRTA4_TCONST 50 +#define FIXPT_1XRTA4_TCONST 0x00004EB0 +#define VALUE_1XRTA4_TCONST SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00240140490349172) +#define TYPE_1XRTA4_TCONST SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA4_HOLD 51 +#define FIXPT_1XRTA4_HOLD 0x000001E0 +#define VALUE_1XRTA4_HOLD SIGMASTUDIOTYPE_INTEGER_CONVERT(480) +#define TYPE_1XRTA4_HOLD SIGMASTUDIOTYPE_INTEGER +#define ADDR_1XRTA4_DECAY 52 +#define FIXPT_1XRTA4_DECAY 0x0000071C +#define VALUE_1XRTA4_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000217013888888889) +#define TYPE_1XRTA4_DECAY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA4 2074 +#define VALUES_1XRTA4 SIGMASTUDIOTYPE_SPECIAL(0x02F2) +#define TYPE_1XRTA4 SIGMASTUDIOTYPE_SPECIAL +#define ADDR_1XRTA4 2074 +#define VALUE_1XRTA4 SIGMASTUDIOTYPE_10_14_CONVERT(0) +#define TYPE_1XRTA4 SIGMASTUDIOTYPE_10_14 + +/* Module 1 X RTA1 - Single Level Detector*/ +#define COUNT_1XRTA1 5 +#define DEVICE_1XRTA1 "IC1" +#define ADDR_1XRTA1_TCONST 53 +#define FIXPT_1XRTA1_TCONST 0x00004EB0 +#define VALUE_1XRTA1_TCONST SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00240140490349172) +#define TYPE_1XRTA1_TCONST SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA1_HOLD 54 +#define FIXPT_1XRTA1_HOLD 0x000001E0 +#define VALUE_1XRTA1_HOLD SIGMASTUDIOTYPE_INTEGER_CONVERT(480) +#define TYPE_1XRTA1_HOLD SIGMASTUDIOTYPE_INTEGER +#define ADDR_1XRTA1_DECAY 55 +#define FIXPT_1XRTA1_DECAY 0x0000071C +#define VALUE_1XRTA1_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000217013888888889) +#define TYPE_1XRTA1_DECAY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA1 2074 +#define VALUES_1XRTA1 SIGMASTUDIOTYPE_SPECIAL(0x0376) +#define TYPE_1XRTA1 SIGMASTUDIOTYPE_SPECIAL +#define ADDR_1XRTA1 2074 +#define VALUE_1XRTA1 SIGMASTUDIOTYPE_10_14_CONVERT(0) +#define TYPE_1XRTA1 SIGMASTUDIOTYPE_10_14 + +/* Module 1 X RTA2 - Single Level Detector*/ +#define COUNT_1XRTA2 5 +#define DEVICE_1XRTA2 "IC1" +#define ADDR_1XRTA2_TCONST 56 +#define FIXPT_1XRTA2_TCONST 0x00004EB0 +#define VALUE_1XRTA2_TCONST SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00240140490349172) +#define TYPE_1XRTA2_TCONST SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA2_HOLD 57 +#define FIXPT_1XRTA2_HOLD 0x000001E0 +#define VALUE_1XRTA2_HOLD SIGMASTUDIOTYPE_INTEGER_CONVERT(480) +#define TYPE_1XRTA2_HOLD SIGMASTUDIOTYPE_INTEGER +#define ADDR_1XRTA2_DECAY 58 +#define FIXPT_1XRTA2_DECAY 0x0000071C +#define VALUE_1XRTA2_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000217013888888889) +#define TYPE_1XRTA2_DECAY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA2 2074 +#define VALUES_1XRTA2 SIGMASTUDIOTYPE_SPECIAL(0x03FA) +#define TYPE_1XRTA2 SIGMASTUDIOTYPE_SPECIAL +#define ADDR_1XRTA2 2074 +#define VALUE_1XRTA2 SIGMASTUDIOTYPE_10_14_CONVERT(0) +#define TYPE_1XRTA2 SIGMASTUDIOTYPE_10_14 /* Module Param EQ1 - Parametric EQ*/ #define COUNT_PARAMEQ1 60 #define DEVICE_PARAMEQ1 "IC1" -#define ADDR_PARAMEQ1_ST0_B0 12 +#define ADDR_PARAMEQ1_ST0_B0 59 #define FIXPT_PARAMEQ1_ST0_B0 0x007FC365 #define VALUE_PARAMEQ1_ST0_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.998150511190452) #define TYPE_PARAMEQ1_ST0_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_B0 12 +#define ADDR_PARAMEQ1_ST0_B0 59 #define FIXPT_PARAMEQ1_ST0_B0 0x007FC365 #define VALUE_PARAMEQ1_ST0_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.998150511190452) #define TYPE_PARAMEQ1_ST0_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_B1 13 +#define ADDR_PARAMEQ1_ST0_B1 60 #define FIXPT_PARAMEQ1_ST0_B1 0xFF007936 #define VALUE_PARAMEQ1_ST0_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.9963010223809) #define TYPE_PARAMEQ1_ST0_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_B1 13 +#define ADDR_PARAMEQ1_ST0_B1 60 #define FIXPT_PARAMEQ1_ST0_B1 0xFF007936 #define VALUE_PARAMEQ1_ST0_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.9963010223809) #define TYPE_PARAMEQ1_ST0_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_B2 14 +#define ADDR_PARAMEQ1_ST0_B2 61 #define FIXPT_PARAMEQ1_ST0_B2 0x007FC365 #define VALUE_PARAMEQ1_ST0_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.998150511190452) #define TYPE_PARAMEQ1_ST0_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_B2 14 +#define ADDR_PARAMEQ1_ST0_B2 61 #define FIXPT_PARAMEQ1_ST0_B2 0x007FC365 #define VALUE_PARAMEQ1_ST0_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.998150511190452) #define TYPE_PARAMEQ1_ST0_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_A0 15 +#define ADDR_PARAMEQ1_ST0_A0 62 #define FIXPT_PARAMEQ1_ST0_A0 0x00FF86AE #define VALUE_PARAMEQ1_ST0_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.99629760176912) #define TYPE_PARAMEQ1_ST0_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_A0 15 +#define ADDR_PARAMEQ1_ST0_A0 62 #define FIXPT_PARAMEQ1_ST0_A0 0x00FF86AE #define VALUE_PARAMEQ1_ST0_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.99629760176912) #define TYPE_PARAMEQ1_ST0_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_A1 16 +#define ADDR_PARAMEQ1_ST0_A1 63 #define FIXPT_PARAMEQ1_ST0_A1 0xFF807919 #define VALUE_PARAMEQ1_ST0_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.996304442992686) #define TYPE_PARAMEQ1_ST0_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST0_A1 16 +#define ADDR_PARAMEQ1_ST0_A1 63 #define FIXPT_PARAMEQ1_ST0_A1 0xFF807919 #define VALUE_PARAMEQ1_ST0_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.996304442992686) #define TYPE_PARAMEQ1_ST0_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_B0 17 -#define FIXPT_PARAMEQ1_ST1_B0 0x00800000 -#define VALUE_PARAMEQ1_ST1_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST1_B0 64 +#define FIXPT_PARAMEQ1_ST1_B0 0x007FE66E +#define VALUE_PARAMEQ1_ST1_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.999219758597071) #define TYPE_PARAMEQ1_ST1_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_B0 17 -#define FIXPT_PARAMEQ1_ST1_B0 0x00800000 -#define VALUE_PARAMEQ1_ST1_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST1_B0 64 +#define FIXPT_PARAMEQ1_ST1_B0 0x007FE66E +#define VALUE_PARAMEQ1_ST1_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.999219758597071) #define TYPE_PARAMEQ1_ST1_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_B1 18 -#define FIXPT_PARAMEQ1_ST1_B1 0x00000000 -#define VALUE_PARAMEQ1_ST1_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST1_B1 65 +#define FIXPT_PARAMEQ1_ST1_B1 0xFF01D7BF +#define VALUE_PARAMEQ1_ST1_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.98560347007805) #define TYPE_PARAMEQ1_ST1_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_B1 18 -#define FIXPT_PARAMEQ1_ST1_B1 0x00000000 -#define VALUE_PARAMEQ1_ST1_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST1_B1 65 +#define FIXPT_PARAMEQ1_ST1_B1 0xFF01D7BF +#define VALUE_PARAMEQ1_ST1_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.98560347007805) #define TYPE_PARAMEQ1_ST1_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_B2 19 -#define FIXPT_PARAMEQ1_ST1_B2 0x00000000 -#define VALUE_PARAMEQ1_ST1_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST1_B2 66 +#define FIXPT_PARAMEQ1_ST1_B2 0x007E47C2 +#define VALUE_PARAMEQ1_ST1_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.986564900639355) #define TYPE_PARAMEQ1_ST1_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_B2 19 -#define FIXPT_PARAMEQ1_ST1_B2 0x00000000 -#define VALUE_PARAMEQ1_ST1_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST1_B2 66 +#define FIXPT_PARAMEQ1_ST1_B2 0x007E47C2 +#define VALUE_PARAMEQ1_ST1_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.986564900639355) #define TYPE_PARAMEQ1_ST1_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_A0 20 -#define FIXPT_PARAMEQ1_ST1_A0 0x00000000 -#define VALUE_PARAMEQ1_ST1_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST1_A0 67 +#define FIXPT_PARAMEQ1_ST1_A0 0x00FE2841 +#define VALUE_PARAMEQ1_ST1_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.98560347007805) #define TYPE_PARAMEQ1_ST1_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_A0 20 -#define FIXPT_PARAMEQ1_ST1_A0 0x00000000 -#define VALUE_PARAMEQ1_ST1_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST1_A0 67 +#define FIXPT_PARAMEQ1_ST1_A0 0x00FE2841 +#define VALUE_PARAMEQ1_ST1_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.98560347007805) #define TYPE_PARAMEQ1_ST1_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_A1 21 -#define FIXPT_PARAMEQ1_ST1_A1 0x00000000 -#define VALUE_PARAMEQ1_ST1_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST1_A1 68 +#define FIXPT_PARAMEQ1_ST1_A1 0xFF81D1CF +#define VALUE_PARAMEQ1_ST1_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.985784659236426) #define TYPE_PARAMEQ1_ST1_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST1_A1 21 -#define FIXPT_PARAMEQ1_ST1_A1 0x00000000 -#define VALUE_PARAMEQ1_ST1_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST1_A1 68 +#define FIXPT_PARAMEQ1_ST1_A1 0xFF81D1CF +#define VALUE_PARAMEQ1_ST1_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.985784659236426) #define TYPE_PARAMEQ1_ST1_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_B0 22 -#define FIXPT_PARAMEQ1_ST2_B0 0x00800000 -#define VALUE_PARAMEQ1_ST2_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST2_B0 69 +#define FIXPT_PARAMEQ1_ST2_B0 0x00800B93 +#define VALUE_PARAMEQ1_ST2_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.00035324391255) #define TYPE_PARAMEQ1_ST2_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_B0 22 -#define FIXPT_PARAMEQ1_ST2_B0 0x00800000 -#define VALUE_PARAMEQ1_ST2_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST2_B0 69 +#define FIXPT_PARAMEQ1_ST2_B0 0x00800B93 +#define VALUE_PARAMEQ1_ST2_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.00035324391255) #define TYPE_PARAMEQ1_ST2_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_B1 23 -#define FIXPT_PARAMEQ1_ST2_B1 0x00000000 -#define VALUE_PARAMEQ1_ST2_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST2_B1 70 +#define FIXPT_PARAMEQ1_ST2_B1 0xFF064A08 +#define VALUE_PARAMEQ1_ST2_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.95086578127628) #define TYPE_PARAMEQ1_ST2_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_B1 23 -#define FIXPT_PARAMEQ1_ST2_B1 0x00000000 -#define VALUE_PARAMEQ1_ST2_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST2_B1 70 +#define FIXPT_PARAMEQ1_ST2_B1 0xFF064A08 +#define VALUE_PARAMEQ1_ST2_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.95086578127628) #define TYPE_PARAMEQ1_ST2_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_B2 24 -#define FIXPT_PARAMEQ1_ST2_B2 0x00000000 -#define VALUE_PARAMEQ1_ST2_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST2_B2 71 +#define FIXPT_PARAMEQ1_ST2_B2 0x0079F533 +#define VALUE_PARAMEQ1_ST2_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.952795462852717) #define TYPE_PARAMEQ1_ST2_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_B2 24 -#define FIXPT_PARAMEQ1_ST2_B2 0x00000000 -#define VALUE_PARAMEQ1_ST2_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST2_B2 71 +#define FIXPT_PARAMEQ1_ST2_B2 0x0079F533 +#define VALUE_PARAMEQ1_ST2_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.952795462852717) #define TYPE_PARAMEQ1_ST2_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_A0 25 -#define FIXPT_PARAMEQ1_ST2_A0 0x00000000 -#define VALUE_PARAMEQ1_ST2_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST2_A0 72 +#define FIXPT_PARAMEQ1_ST2_A0 0x00F9B5F8 +#define VALUE_PARAMEQ1_ST2_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.95086578127628) #define TYPE_PARAMEQ1_ST2_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_A0 25 -#define FIXPT_PARAMEQ1_ST2_A0 0x00000000 -#define VALUE_PARAMEQ1_ST2_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST2_A0 72 +#define FIXPT_PARAMEQ1_ST2_A0 0x00F9B5F8 +#define VALUE_PARAMEQ1_ST2_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.95086578127628) #define TYPE_PARAMEQ1_ST2_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_A1 26 -#define FIXPT_PARAMEQ1_ST2_A1 0x00000000 -#define VALUE_PARAMEQ1_ST2_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST2_A1 73 +#define FIXPT_PARAMEQ1_ST2_A1 0xFF85FF3A +#define VALUE_PARAMEQ1_ST2_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.953148706765263) #define TYPE_PARAMEQ1_ST2_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST2_A1 26 -#define FIXPT_PARAMEQ1_ST2_A1 0x00000000 -#define VALUE_PARAMEQ1_ST2_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST2_A1 73 +#define FIXPT_PARAMEQ1_ST2_A1 0xFF85FF3A +#define VALUE_PARAMEQ1_ST2_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.953148706765263) #define TYPE_PARAMEQ1_ST2_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_B0 27 -#define FIXPT_PARAMEQ1_ST3_B0 0x00800000 -#define VALUE_PARAMEQ1_ST3_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST3_B0 74 +#define FIXPT_PARAMEQ1_ST3_B0 0x007F5D86 +#define VALUE_PARAMEQ1_ST3_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.995041660660568) #define TYPE_PARAMEQ1_ST3_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_B0 27 -#define FIXPT_PARAMEQ1_ST3_B0 0x00800000 -#define VALUE_PARAMEQ1_ST3_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST3_B0 74 +#define FIXPT_PARAMEQ1_ST3_B0 0x007F5D86 +#define VALUE_PARAMEQ1_ST3_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.995041660660568) #define TYPE_PARAMEQ1_ST3_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_B1 28 -#define FIXPT_PARAMEQ1_ST3_B1 0x00000000 -#define VALUE_PARAMEQ1_ST3_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST3_B1 75 +#define FIXPT_PARAMEQ1_ST3_B1 0xFF14BB23 +#define VALUE_PARAMEQ1_ST3_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.83803915762905) #define TYPE_PARAMEQ1_ST3_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_B1 28 -#define FIXPT_PARAMEQ1_ST3_B1 0x00000000 -#define VALUE_PARAMEQ1_ST3_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST3_B1 75 +#define FIXPT_PARAMEQ1_ST3_B1 0xFF14BB23 +#define VALUE_PARAMEQ1_ST3_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.83803915762905) #define TYPE_PARAMEQ1_ST3_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_B2 29 -#define FIXPT_PARAMEQ1_ST3_B2 0x00000000 -#define VALUE_PARAMEQ1_ST3_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST3_B2 76 +#define FIXPT_PARAMEQ1_ST3_B2 0x006E7DE9 +#define VALUE_PARAMEQ1_ST3_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.863217563504857) #define TYPE_PARAMEQ1_ST3_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_B2 29 -#define FIXPT_PARAMEQ1_ST3_B2 0x00000000 -#define VALUE_PARAMEQ1_ST3_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST3_B2 76 +#define FIXPT_PARAMEQ1_ST3_B2 0x006E7DE9 +#define VALUE_PARAMEQ1_ST3_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.863217563504857) #define TYPE_PARAMEQ1_ST3_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_A0 30 -#define FIXPT_PARAMEQ1_ST3_A0 0x00000000 -#define VALUE_PARAMEQ1_ST3_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST3_A0 77 +#define FIXPT_PARAMEQ1_ST3_A0 0x00EB44DD +#define VALUE_PARAMEQ1_ST3_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.83803915762905) #define TYPE_PARAMEQ1_ST3_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_A0 30 -#define FIXPT_PARAMEQ1_ST3_A0 0x00000000 -#define VALUE_PARAMEQ1_ST3_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST3_A0 77 +#define FIXPT_PARAMEQ1_ST3_A0 0x00EB44DD +#define VALUE_PARAMEQ1_ST3_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.83803915762905) #define TYPE_PARAMEQ1_ST3_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_A1 31 -#define FIXPT_PARAMEQ1_ST3_A1 0x00000000 -#define VALUE_PARAMEQ1_ST3_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST3_A1 78 +#define FIXPT_PARAMEQ1_ST3_A1 0xFF922490 +#define VALUE_PARAMEQ1_ST3_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.858259224165424) #define TYPE_PARAMEQ1_ST3_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST3_A1 31 -#define FIXPT_PARAMEQ1_ST3_A1 0x00000000 -#define VALUE_PARAMEQ1_ST3_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST3_A1 78 +#define FIXPT_PARAMEQ1_ST3_A1 0xFF922490 +#define VALUE_PARAMEQ1_ST3_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.858259224165424) #define TYPE_PARAMEQ1_ST3_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_B0 32 -#define FIXPT_PARAMEQ1_ST4_B0 0x00800000 -#define VALUE_PARAMEQ1_ST4_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST4_B0 79 +#define FIXPT_PARAMEQ1_ST4_B0 0x0080525C +#define VALUE_PARAMEQ1_ST4_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.0025135270275) #define TYPE_PARAMEQ1_ST4_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_B0 32 -#define FIXPT_PARAMEQ1_ST4_B0 0x00800000 -#define VALUE_PARAMEQ1_ST4_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST4_B0 79 +#define FIXPT_PARAMEQ1_ST4_B0 0x0080525C +#define VALUE_PARAMEQ1_ST4_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.0025135270275) #define TYPE_PARAMEQ1_ST4_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_B1 33 -#define FIXPT_PARAMEQ1_ST4_B1 0x00000000 -#define VALUE_PARAMEQ1_ST4_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST4_B1 80 +#define FIXPT_PARAMEQ1_ST4_B1 0xFF3CC491 +#define VALUE_PARAMEQ1_ST4_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.52525133650548) #define TYPE_PARAMEQ1_ST4_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_B1 33 -#define FIXPT_PARAMEQ1_ST4_B1 0x00000000 -#define VALUE_PARAMEQ1_ST4_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST4_B1 80 +#define FIXPT_PARAMEQ1_ST4_B1 0xFF3CC491 +#define VALUE_PARAMEQ1_ST4_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.52525133650548) #define TYPE_PARAMEQ1_ST4_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_B2 34 -#define FIXPT_PARAMEQ1_ST4_B2 0x00000000 -#define VALUE_PARAMEQ1_ST4_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST4_B2 81 +#define FIXPT_PARAMEQ1_ST4_B2 0x005501AB +#define VALUE_PARAMEQ1_ST4_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.664113447602641) #define TYPE_PARAMEQ1_ST4_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_B2 34 -#define FIXPT_PARAMEQ1_ST4_B2 0x00000000 -#define VALUE_PARAMEQ1_ST4_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST4_B2 81 +#define FIXPT_PARAMEQ1_ST4_B2 0x005501AB +#define VALUE_PARAMEQ1_ST4_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.664113447602641) #define TYPE_PARAMEQ1_ST4_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_A0 35 -#define FIXPT_PARAMEQ1_ST4_A0 0x00000000 -#define VALUE_PARAMEQ1_ST4_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST4_A0 82 +#define FIXPT_PARAMEQ1_ST4_A0 0x00C33B6F +#define VALUE_PARAMEQ1_ST4_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.52525133650548) #define TYPE_PARAMEQ1_ST4_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_A0 35 -#define FIXPT_PARAMEQ1_ST4_A0 0x00000000 -#define VALUE_PARAMEQ1_ST4_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST4_A0 82 +#define FIXPT_PARAMEQ1_ST4_A0 0x00C33B6F +#define VALUE_PARAMEQ1_ST4_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.52525133650548) #define TYPE_PARAMEQ1_ST4_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_A1 36 -#define FIXPT_PARAMEQ1_ST4_A1 0x00000000 -#define VALUE_PARAMEQ1_ST4_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST4_A1 83 +#define FIXPT_PARAMEQ1_ST4_A1 0xFFAAABF8 +#define VALUE_PARAMEQ1_ST4_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.666626974630141) #define TYPE_PARAMEQ1_ST4_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST4_A1 36 -#define FIXPT_PARAMEQ1_ST4_A1 0x00000000 -#define VALUE_PARAMEQ1_ST4_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST4_A1 83 +#define FIXPT_PARAMEQ1_ST4_A1 0xFFAAABF8 +#define VALUE_PARAMEQ1_ST4_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.666626974630141) #define TYPE_PARAMEQ1_ST4_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_B0 37 -#define FIXPT_PARAMEQ1_ST5_B0 0x00800000 -#define VALUE_PARAMEQ1_ST5_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST5_B0 84 +#define FIXPT_PARAMEQ1_ST5_B0 0x00822B9A +#define VALUE_PARAMEQ1_ST5_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.0169556566183) #define TYPE_PARAMEQ1_ST5_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_B0 37 -#define FIXPT_PARAMEQ1_ST5_B0 0x00800000 -#define VALUE_PARAMEQ1_ST5_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define ADDR_PARAMEQ1_ST5_B0 84 +#define FIXPT_PARAMEQ1_ST5_B0 0x00822B9A +#define VALUE_PARAMEQ1_ST5_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.0169556566183) #define TYPE_PARAMEQ1_ST5_B0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_B1 38 -#define FIXPT_PARAMEQ1_ST5_B1 0x00000000 -#define VALUE_PARAMEQ1_ST5_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST5_B1 85 +#define FIXPT_PARAMEQ1_ST5_B1 0xFF98C2B2 +#define VALUE_PARAMEQ1_ST5_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.806558395910749) #define TYPE_PARAMEQ1_ST5_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_B1 38 -#define FIXPT_PARAMEQ1_ST5_B1 0x00000000 -#define VALUE_PARAMEQ1_ST5_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST5_B1 85 +#define FIXPT_PARAMEQ1_ST5_B1 0xFF98C2B2 +#define VALUE_PARAMEQ1_ST5_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.806558395910749) #define TYPE_PARAMEQ1_ST5_B1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_B2 39 -#define FIXPT_PARAMEQ1_ST5_B2 0x00000000 -#define VALUE_PARAMEQ1_ST5_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST5_B2 86 +#define FIXPT_PARAMEQ1_ST5_B2 0x0034930B +#define VALUE_PARAMEQ1_ST5_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.410737486131021) #define TYPE_PARAMEQ1_ST5_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_B2 39 -#define FIXPT_PARAMEQ1_ST5_B2 0x00000000 -#define VALUE_PARAMEQ1_ST5_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST5_B2 86 +#define FIXPT_PARAMEQ1_ST5_B2 0x0034930B +#define VALUE_PARAMEQ1_ST5_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.410737486131021) #define TYPE_PARAMEQ1_ST5_B2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_A0 40 -#define FIXPT_PARAMEQ1_ST5_A0 0x00000000 -#define VALUE_PARAMEQ1_ST5_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST5_A0 87 +#define FIXPT_PARAMEQ1_ST5_A0 0x00673D4E +#define VALUE_PARAMEQ1_ST5_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.806558395910749) #define TYPE_PARAMEQ1_ST5_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_A0 40 -#define FIXPT_PARAMEQ1_ST5_A0 0x00000000 -#define VALUE_PARAMEQ1_ST5_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST5_A0 87 +#define FIXPT_PARAMEQ1_ST5_A0 0x00673D4E +#define VALUE_PARAMEQ1_ST5_A0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.806558395910749) #define TYPE_PARAMEQ1_ST5_A0 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_A1 41 -#define FIXPT_PARAMEQ1_ST5_A1 0x00000000 -#define VALUE_PARAMEQ1_ST5_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST5_A1 88 +#define FIXPT_PARAMEQ1_ST5_A1 0xFFC9415A +#define VALUE_PARAMEQ1_ST5_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.427693142749325) #define TYPE_PARAMEQ1_ST5_A1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_PARAMEQ1_ST5_A1 41 -#define FIXPT_PARAMEQ1_ST5_A1 0x00000000 -#define VALUE_PARAMEQ1_ST5_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define ADDR_PARAMEQ1_ST5_A1 88 +#define FIXPT_PARAMEQ1_ST5_A1 0xFFC9415A +#define VALUE_PARAMEQ1_ST5_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.427693142749325) #define TYPE_PARAMEQ1_ST5_A1 SIGMASTUDIOTYPE_FIXPOINT +/* Module SPhat1 - SuperPhat Spatializer*/ +#define COUNT_SPHAT1 52 +#define DEVICE_SPHAT1 "IC1" +#define ADDR_SPHAT1_B0LO0 89 +#define FIXPT_SPHAT1_B0LO0 0x0002C477 +#define VALUE_SPHAT1_B0LO0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.021620718376497) +#define TYPE_SPHAT1_B0LO0 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO1 90 +#define FIXPT_SPHAT1_B0LO1 0x000588EF +#define VALUE_SPHAT1_B0LO1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.043241436752994) +#define TYPE_SPHAT1_B0LO1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO2 91 +#define FIXPT_SPHAT1_B0LO2 0x0002C477 +#define VALUE_SPHAT1_B0LO2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.021620718376497) +#define TYPE_SPHAT1_B0LO2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO3 92 +#define FIXPT_SPHAT1_B0LO3 0x00C584FE +#define VALUE_SPHAT1_B0LO3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.54312113123739) +#define TYPE_SPHAT1_B0LO3 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO4 93 +#define FIXPT_SPHAT1_B0LO4 0xFFAF6923 +#define VALUE_SPHAT1_B0LO4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.629604004743374) +#define TYPE_SPHAT1_B0LO4 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO5 94 +#define FIXPT_SPHAT1_B0LO5 0x006586F6 +#define VALUE_SPHAT1_B0LO5 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.79318128399519) +#define TYPE_SPHAT1_B0LO5 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO6 95 +#define FIXPT_SPHAT1_B0LO6 0xFF34F213 +#define VALUE_SPHAT1_B0LO6 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.58636256799038) +#define TYPE_SPHAT1_B0LO6 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO7 96 +#define FIXPT_SPHAT1_B0LO7 0x006586F6 +#define VALUE_SPHAT1_B0LO7 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.79318128399519) +#define TYPE_SPHAT1_B0LO7 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO8 97 +#define FIXPT_SPHAT1_B0LO8 0x00C584FE +#define VALUE_SPHAT1_B0LO8 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.54312113123739) +#define TYPE_SPHAT1_B0LO8 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_B0LO9 98 +#define FIXPT_SPHAT1_B0LO9 0xFFAF6923 +#define VALUE_SPHAT1_B0LO9 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.629604004743374) +#define TYPE_SPHAT1_B0LO9 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_GAINHI 99 +#define FIXPT_SPHAT1_GAINHI 0x00A66666 +#define VALUE_SPHAT1_GAINHI SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.3) +#define TYPE_SPHAT1_GAINHI SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_GAINLO 100 +#define FIXPT_SPHAT1_GAINLO 0x00733333 +#define VALUE_SPHAT1_GAINLO SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.9000000000004) +#define TYPE_SPHAT1_GAINLO SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_GAININV 101 +#define FIXPT_SPHAT1_GAININV 0x006D66D6 +#define VALUE_SPHAT1_GAININV SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.854700854700475) +#define TYPE_SPHAT1_GAININV SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE0 102 +#define FIXPT_SPHAT1_COMP_BASE0 0x00800000 +#define VALUE_SPHAT1_COMP_BASE0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE0 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE1 103 +#define FIXPT_SPHAT1_COMP_BASE1 0x00800000 +#define VALUE_SPHAT1_COMP_BASE1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE2 104 +#define FIXPT_SPHAT1_COMP_BASE2 0x00800000 +#define VALUE_SPHAT1_COMP_BASE2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE3 105 +#define FIXPT_SPHAT1_COMP_BASE3 0x00800000 +#define VALUE_SPHAT1_COMP_BASE3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE3 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE4 106 +#define FIXPT_SPHAT1_COMP_BASE4 0x00800000 +#define VALUE_SPHAT1_COMP_BASE4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE4 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE5 107 +#define FIXPT_SPHAT1_COMP_BASE5 0x00800000 +#define VALUE_SPHAT1_COMP_BASE5 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE5 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE6 108 +#define FIXPT_SPHAT1_COMP_BASE6 0x00800000 +#define VALUE_SPHAT1_COMP_BASE6 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE6 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE7 109 +#define FIXPT_SPHAT1_COMP_BASE7 0x00800000 +#define VALUE_SPHAT1_COMP_BASE7 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE7 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE8 110 +#define FIXPT_SPHAT1_COMP_BASE8 0x00800000 +#define VALUE_SPHAT1_COMP_BASE8 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE8 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE9 111 +#define FIXPT_SPHAT1_COMP_BASE9 0x00800000 +#define VALUE_SPHAT1_COMP_BASE9 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE9 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE10 112 +#define FIXPT_SPHAT1_COMP_BASE10 0x00800000 +#define VALUE_SPHAT1_COMP_BASE10 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE10 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE11 113 +#define FIXPT_SPHAT1_COMP_BASE11 0x00800000 +#define VALUE_SPHAT1_COMP_BASE11 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE11 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE12 114 +#define FIXPT_SPHAT1_COMP_BASE12 0x00800000 +#define VALUE_SPHAT1_COMP_BASE12 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE12 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE13 115 +#define FIXPT_SPHAT1_COMP_BASE13 0x00800000 +#define VALUE_SPHAT1_COMP_BASE13 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE13 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE14 116 +#define FIXPT_SPHAT1_COMP_BASE14 0x00800000 +#define VALUE_SPHAT1_COMP_BASE14 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE14 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE15 117 +#define FIXPT_SPHAT1_COMP_BASE15 0x00800000 +#define VALUE_SPHAT1_COMP_BASE15 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE15 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE16 118 +#define FIXPT_SPHAT1_COMP_BASE16 0x00800000 +#define VALUE_SPHAT1_COMP_BASE16 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE16 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE17 119 +#define FIXPT_SPHAT1_COMP_BASE17 0x00800000 +#define VALUE_SPHAT1_COMP_BASE17 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE17 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE18 120 +#define FIXPT_SPHAT1_COMP_BASE18 0x00800000 +#define VALUE_SPHAT1_COMP_BASE18 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE18 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE19 121 +#define FIXPT_SPHAT1_COMP_BASE19 0x00800000 +#define VALUE_SPHAT1_COMP_BASE19 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE19 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE20 122 +#define FIXPT_SPHAT1_COMP_BASE20 0x00800000 +#define VALUE_SPHAT1_COMP_BASE20 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE20 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE21 123 +#define FIXPT_SPHAT1_COMP_BASE21 0x00800000 +#define VALUE_SPHAT1_COMP_BASE21 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE21 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE22 124 +#define FIXPT_SPHAT1_COMP_BASE22 0x00800000 +#define VALUE_SPHAT1_COMP_BASE22 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE22 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE23 125 +#define FIXPT_SPHAT1_COMP_BASE23 0x00800000 +#define VALUE_SPHAT1_COMP_BASE23 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE23 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE24 126 +#define FIXPT_SPHAT1_COMP_BASE24 0x00800000 +#define VALUE_SPHAT1_COMP_BASE24 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE24 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE25 127 +#define FIXPT_SPHAT1_COMP_BASE25 0x00800000 +#define VALUE_SPHAT1_COMP_BASE25 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE25 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE26 128 +#define FIXPT_SPHAT1_COMP_BASE26 0x00800000 +#define VALUE_SPHAT1_COMP_BASE26 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE26 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE27 129 +#define FIXPT_SPHAT1_COMP_BASE27 0x00800000 +#define VALUE_SPHAT1_COMP_BASE27 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_SPHAT1_COMP_BASE27 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE28 130 +#define FIXPT_SPHAT1_COMP_BASE28 0x0075694C +#define VALUE_SPHAT1_COMP_BASE28 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.917275905609131) +#define TYPE_SPHAT1_COMP_BASE28 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE29 131 +#define FIXPT_SPHAT1_COMP_BASE29 0x005A9DF8 +#define VALUE_SPHAT1_COMP_BASE29 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.707945823669434) +#define TYPE_SPHAT1_COMP_BASE29 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE30 132 +#define FIXPT_SPHAT1_COMP_BASE30 0x0045EFFE +#define VALUE_SPHAT1_COMP_BASE30 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.54638659954071) +#define TYPE_SPHAT1_COMP_BASE30 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE31 133 +#define FIXPT_SPHAT1_COMP_BASE31 0x0035FA26 +#define VALUE_SPHAT1_COMP_BASE31 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.421696543693542) +#define TYPE_SPHAT1_COMP_BASE31 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE32 134 +#define FIXPT_SPHAT1_COMP_BASE32 0x0029A8BB +#define VALUE_SPHAT1_COMP_BASE32 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.325461745262146) +#define TYPE_SPHAT1_COMP_BASE32 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_COMP_BASE33 135 +#define FIXPT_SPHAT1_COMP_BASE33 0x002026F3 +#define VALUE_SPHAT1_COMP_BASE33 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.251188635826111) +#define TYPE_SPHAT1_COMP_BASE33 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_RMS 136 +#define FIXPT_SPHAT1_RMS 0x00064A35 +#define VALUE_SPHAT1_RMS SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0491397291363098) +#define TYPE_SPHAT1_RMS SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_DECAY 137 +#define FIXPT_SPHAT1_DECAY 0x0000016C +#define VALUE_SPHAT1_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(4.34027777777778E-05) +#define TYPE_SPHAT1_DECAY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_HOLD 138 +#define FIXPT_SPHAT1_HOLD 0x00005DC0 +#define VALUE_SPHAT1_HOLD SIGMASTUDIOTYPE_INTEGER_CONVERT(24000) +#define TYPE_SPHAT1_HOLD SIGMASTUDIOTYPE_INTEGER +#define ADDR_SPHAT1_SPREAD1 139 +#define FIXPT_SPHAT1_SPREAD1 0x00080D69 +#define VALUE_SPHAT1_SPREAD1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0629093159447337) +#define TYPE_SPHAT1_SPREAD1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_SPHAT1_SPREAD2 140 +#define FIXPT_SPHAT1_SPREAD2 0x0002788C +#define VALUE_SPHAT1_SPREAD2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.0193038143874401) +#define TYPE_SPHAT1_SPREAD2 SIGMASTUDIOTYPE_FIXPOINT + +/* Module Gen Filter1 - General (2nd order)*/ +#define COUNT_GENFILTER1 5 +#define DEVICE_GENFILTER1 "IC1" +#define ADDR_GENFILTER1_ST0_B0 141 +#define FIXPT_GENFILTER1_ST0_B0 0x00800000 +#define VALUE_GENFILTER1_ST0_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_GENFILTER1_ST0_B0 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_GENFILTER1_ST0_B1 142 +#define FIXPT_GENFILTER1_ST0_B1 0x00000000 +#define VALUE_GENFILTER1_ST0_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define TYPE_GENFILTER1_ST0_B1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_GENFILTER1_ST0_B2 143 +#define FIXPT_GENFILTER1_ST0_B2 0x00000000 +#define VALUE_GENFILTER1_ST0_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define TYPE_GENFILTER1_ST0_B2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_GENFILTER1_ST0_A1 144 +#define FIXPT_GENFILTER1_ST0_A1 0x00000000 +#define VALUE_GENFILTER1_ST0_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define TYPE_GENFILTER1_ST0_A1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_GENFILTER1_ST0_A2 145 +#define FIXPT_GENFILTER1_ST0_A2 0x00000000 +#define VALUE_GENFILTER1_ST0_A2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0) +#define TYPE_GENFILTER1_ST0_A2 SIGMASTUDIOTYPE_FIXPOINT + /* Module Multiple 1 - Multiple Volume Control*/ #define COUNT_MULTIPLE1 2 #define DEVICE_MULTIPLE1 "IC1" -#define ADDR_MULTIPLE1 42 +#define ADDR_MULTIPLE1 146 #define FIXPT_MULTIPLE1 0x00800000 #define VALUE_MULTIPLE1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) #define TYPE_MULTIPLE1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_MULTIPLE1_1 43 +#define ADDR_MULTIPLE1_1 147 #define FIXPT_MULTIPLE1_1 0x00800000 #define VALUE_MULTIPLE1_1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) #define TYPE_MULTIPLE1_1 SIGMASTUDIOTYPE_FIXPOINT -/* Module Limiter 1 - Limiter*/ -#define COUNT_LIMITER1 15 -#define DEVICE_LIMITER1 "IC1" -#define ADDR_LIMITER1_S1 44 -#define FIXPT_LIMITER1_S1 0xFFFE2BE3 -#define VALUE_LIMITER1_S1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.01428571428571) -#define TYPE_LIMITER1_S1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_INT1 45 -#define FIXPT_LIMITER1_INT1 0x0022BE2B -#define VALUE_LIMITER1_INT1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.27142857142857) -#define TYPE_LIMITER1_INT1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_S2 46 -#define FIXPT_LIMITER1_S2 0xFFEAAAAB -#define VALUE_LIMITER1_S2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.16666666666667) -#define TYPE_LIMITER1_S2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_INT2 47 -#define FIXPT_LIMITER1_INT2 0x006AAAAA -#define VALUE_LIMITER1_INT2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.8333333333333) -#define TYPE_LIMITER1_INT2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_S3 48 -#define FIXPT_LIMITER1_S3 0xFF9A69A7 -#define VALUE_LIMITER1_S3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.79365079365079) -#define TYPE_LIMITER1_S3 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_INT3 49 -#define FIXPT_LIMITER1_INT3 0x00FDF7DF -#define VALUE_LIMITER1_INT3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.98412698412698) -#define TYPE_LIMITER1_INT3 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_S4 50 -#define FIXPT_LIMITER1_S4 0xF83C6C20 -#define VALUE_LIMITER1_S4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-15.527950310559) -#define TYPE_LIMITER1_S4 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_INT4 51 -#define FIXPT_LIMITER1_INT4 0x03F5AA22 -#define VALUE_LIMITER1_INT4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(7.91925465838509) -#define TYPE_LIMITER1_INT4 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_C1 52 -#define FIXPT_LIMITER1_C1 0x01800000 -#define VALUE_LIMITER1_C1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(3) -#define TYPE_LIMITER1_C1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_C2 53 -#define FIXPT_LIMITER1_C2 0x01000000 -#define VALUE_LIMITER1_C2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(2) -#define TYPE_LIMITER1_C2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_C3 54 -#define FIXPT_LIMITER1_C3 0x00333333 -#define VALUE_LIMITER1_C3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.4) -#define TYPE_LIMITER1_C3 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_THRESHOLD 55 -#define FIXPT_LIMITER1_THRESHOLD 0x00800000 -#define VALUE_LIMITER1_THRESHOLD SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) -#define TYPE_LIMITER1_THRESHOLD SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_RMS 56 -#define FIXPT_LIMITER1_RMS 0x000007DC -#define VALUE_LIMITER1_RMS SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000239881380791562) -#define TYPE_LIMITER1_RMS SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_DECAY 57 -#define FIXPT_LIMITER1_DECAY 0x00000800 -#define VALUE_LIMITER1_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000244140625) -#define TYPE_LIMITER1_DECAY SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER1_DECAYCOMPLEMENT 58 -#define FIXPT_LIMITER1_DECAYCOMPLEMENT 0x007FF000 -#define VALUE_LIMITER1_DECAYCOMPLEMENT SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.99951171875) -#define TYPE_LIMITER1_DECAYCOMPLEMENT SIGMASTUDIOTYPE_FIXPOINT +/* Module Bass Boost1 - Dynamic Bass Boost*/ +#define COUNT_BASSBOOST1 40 +#define DEVICE_BASSBOOST1 "IC1" +#define ADDR_BASSBOOST1_BASSFREQUENCY 148 +#define FIXPT_BASSBOOST1_BASSFREQUENCY 0x0001015B +#define VALUE_BASSBOOST1_BASSFREQUENCY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00785396144863598) +#define TYPE_BASSBOOST1_BASSFREQUENCY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_B0 149 +#define FIXPT_BASSBOOST1_B0 0x00000164 +#define VALUE_BASSBOOST1_B0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(4.24433093514364E-05) +#define TYPE_BASSBOOST1_B0 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_B1 150 +#define FIXPT_BASSBOOST1_B1 0x000002C8 +#define VALUE_BASSBOOST1_B1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(8.48866187028728E-05) +#define TYPE_BASSBOOST1_B1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_B2 151 +#define FIXPT_BASSBOOST1_B2 0x00000164 +#define VALUE_BASSBOOST1_B2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(4.24433093514364E-05) +#define TYPE_BASSBOOST1_B2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_A1 152 +#define FIXPT_BASSBOOST1_A1 0x00FDA153 +#define VALUE_BASSBOOST1_A1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.98148576456209) +#define TYPE_BASSBOOST1_A1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_A2 153 +#define FIXPT_BASSBOOST1_A2 0xFF82591D +#define VALUE_BASSBOOST1_A2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.981655537799498) +#define TYPE_BASSBOOST1_A2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE0 154 +#define FIXPT_BASSBOOST1_TABLE0 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE0 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE0 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE1 155 +#define FIXPT_BASSBOOST1_TABLE1 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE2 156 +#define FIXPT_BASSBOOST1_TABLE2 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE3 157 +#define FIXPT_BASSBOOST1_TABLE3 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE3 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE4 158 +#define FIXPT_BASSBOOST1_TABLE4 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE4 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE5 159 +#define FIXPT_BASSBOOST1_TABLE5 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE5 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE5 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE6 160 +#define FIXPT_BASSBOOST1_TABLE6 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE6 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE6 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE7 161 +#define FIXPT_BASSBOOST1_TABLE7 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE7 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE7 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE8 162 +#define FIXPT_BASSBOOST1_TABLE8 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE8 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE8 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE9 163 +#define FIXPT_BASSBOOST1_TABLE9 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE9 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE9 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE10 164 +#define FIXPT_BASSBOOST1_TABLE10 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE10 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE10 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE11 165 +#define FIXPT_BASSBOOST1_TABLE11 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE11 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE11 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE12 166 +#define FIXPT_BASSBOOST1_TABLE12 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE12 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE12 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE13 167 +#define FIXPT_BASSBOOST1_TABLE13 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE13 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE13 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE14 168 +#define FIXPT_BASSBOOST1_TABLE14 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE14 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE14 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE15 169 +#define FIXPT_BASSBOOST1_TABLE15 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE15 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE15 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE16 170 +#define FIXPT_BASSBOOST1_TABLE16 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE16 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE16 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE17 171 +#define FIXPT_BASSBOOST1_TABLE17 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE17 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE17 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE18 172 +#define FIXPT_BASSBOOST1_TABLE18 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE18 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE18 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE19 173 +#define FIXPT_BASSBOOST1_TABLE19 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE19 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE19 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE20 174 +#define FIXPT_BASSBOOST1_TABLE20 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE20 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE20 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE21 175 +#define FIXPT_BASSBOOST1_TABLE21 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE21 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE21 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE22 176 +#define FIXPT_BASSBOOST1_TABLE22 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE22 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE22 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE23 177 +#define FIXPT_BASSBOOST1_TABLE23 0x0028DA07 +#define VALUE_BASSBOOST1_TABLE23 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.319153785510076) +#define TYPE_BASSBOOST1_TABLE23 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE24 178 +#define FIXPT_BASSBOOST1_TABLE24 0x00295321 +#define VALUE_BASSBOOST1_TABLE24 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.322849412171264) +#define TYPE_BASSBOOST1_TABLE24 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE25 179 +#define FIXPT_BASSBOOST1_TABLE25 0x002AC6E7 +#define VALUE_BASSBOOST1_TABLE25 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.334195040026114) +#define TYPE_BASSBOOST1_TABLE25 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE26 180 +#define FIXPT_BASSBOOST1_TABLE26 0x002C47BD +#define VALUE_BASSBOOST1_TABLE26 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.345939377826122) +#define TYPE_BASSBOOST1_TABLE26 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE27 181 +#define FIXPT_BASSBOOST1_TABLE27 0x002DD61A +#define VALUE_BASSBOOST1_TABLE27 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.358096437102636) +#define TYPE_BASSBOOST1_TABLE27 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE28 182 +#define FIXPT_BASSBOOST1_TABLE28 0x002F7277 +#define VALUE_BASSBOOST1_TABLE28 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.370680721782576) +#define TYPE_BASSBOOST1_TABLE28 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE29 183 +#define FIXPT_BASSBOOST1_TABLE29 0x00311D51 +#define VALUE_BASSBOOST1_TABLE29 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.383707245492279) +#define TYPE_BASSBOOST1_TABLE29 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE30 184 +#define FIXPT_BASSBOOST1_TABLE30 0x0032D72C +#define VALUE_BASSBOOST1_TABLE30 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.39719154946944) +#define TYPE_BASSBOOST1_TABLE30 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE31 185 +#define FIXPT_BASSBOOST1_TABLE31 0x0034A08D +#define VALUE_BASSBOOST1_TABLE31 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.411149721104522) +#define TYPE_BASSBOOST1_TABLE31 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TABLE32 186 +#define FIXPT_BASSBOOST1_TABLE32 0x00367A02 +#define VALUE_BASSBOOST1_TABLE32 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.425598413133743) +#define TYPE_BASSBOOST1_TABLE32 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_BASSBOOST1_TIMECONSTANT 187 +#define FIXPT_BASSBOOST1_TIMECONSTANT 0x000006D3 +#define VALUE_BASSBOOST1_TIMECONSTANT SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000208311633451363) +#define TYPE_BASSBOOST1_TIMECONSTANT SIGMASTUDIOTYPE_FIXPOINT + +/* Module 1 X RTA2_2 - Single Level Detector*/ +#define COUNT_1XRTA2_2 5 +#define DEVICE_1XRTA2_2 "IC1" +#define ADDR_1XRTA2_2_TCONST 188 +#define FIXPT_1XRTA2_2_TCONST 0x00004EB0 +#define VALUE_1XRTA2_2_TCONST SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00240140490349172) +#define TYPE_1XRTA2_2_TCONST SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA2_2_HOLD 189 +#define FIXPT_1XRTA2_2_HOLD 0x000001E0 +#define VALUE_1XRTA2_2_HOLD SIGMASTUDIOTYPE_INTEGER_CONVERT(480) +#define TYPE_1XRTA2_2_HOLD SIGMASTUDIOTYPE_INTEGER +#define ADDR_1XRTA2_2_DECAY 190 +#define FIXPT_1XRTA2_2_DECAY 0x0000071C +#define VALUE_1XRTA2_2_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000217013888888889) +#define TYPE_1XRTA2_2_DECAY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA2_2 2074 +#define VALUES_1XRTA2_2 SIGMASTUDIOTYPE_SPECIAL(0x0AB2) +#define TYPE_1XRTA2_2 SIGMASTUDIOTYPE_SPECIAL +#define ADDR_1XRTA2_2 2074 +#define VALUE_1XRTA2_2 SIGMASTUDIOTYPE_10_14_CONVERT(0) +#define TYPE_1XRTA2_2 SIGMASTUDIOTYPE_10_14 + +/* Module 1 X RTA1_2 - Single Level Detector*/ +#define COUNT_1XRTA1_2 5 +#define DEVICE_1XRTA1_2 "IC1" +#define ADDR_1XRTA1_2_TCONST 191 +#define FIXPT_1XRTA1_2_TCONST 0x00004EB0 +#define VALUE_1XRTA1_2_TCONST SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.00240140490349172) +#define TYPE_1XRTA1_2_TCONST SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA1_2_HOLD 192 +#define FIXPT_1XRTA1_2_HOLD 0x000001E0 +#define VALUE_1XRTA1_2_HOLD SIGMASTUDIOTYPE_INTEGER_CONVERT(480) +#define TYPE_1XRTA1_2_HOLD SIGMASTUDIOTYPE_INTEGER +#define ADDR_1XRTA1_2_DECAY 193 +#define FIXPT_1XRTA1_2_DECAY 0x0000071C +#define VALUE_1XRTA1_2_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000217013888888889) +#define TYPE_1XRTA1_2_DECAY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_1XRTA1_2 2074 +#define VALUES_1XRTA1_2 SIGMASTUDIOTYPE_SPECIAL(0x0B36) +#define TYPE_1XRTA1_2 SIGMASTUDIOTYPE_SPECIAL +#define ADDR_1XRTA1_2 2074 +#define VALUE_1XRTA1_2 SIGMASTUDIOTYPE_10_14_CONVERT(0) +#define TYPE_1XRTA1_2 SIGMASTUDIOTYPE_10_14 /* Module Limiter 2 - Limiter*/ #define COUNT_LIMITER2 15 #define DEVICE_LIMITER2 "IC1" -#define ADDR_LIMITER2_S1 59 +#define ADDR_LIMITER2_S1 194 #define FIXPT_LIMITER2_S1 0xFFFE2BE3 #define VALUE_LIMITER2_S1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.01428571428571) #define TYPE_LIMITER2_S1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_INT1 60 +#define ADDR_LIMITER2_INT1 195 #define FIXPT_LIMITER2_INT1 0x0022BE2B #define VALUE_LIMITER2_INT1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.27142857142857) #define TYPE_LIMITER2_INT1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_S2 61 +#define ADDR_LIMITER2_S2 196 #define FIXPT_LIMITER2_S2 0xFFEAAAAB #define VALUE_LIMITER2_S2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.16666666666667) #define TYPE_LIMITER2_S2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_INT2 62 +#define ADDR_LIMITER2_INT2 197 #define FIXPT_LIMITER2_INT2 0x006AAAAA #define VALUE_LIMITER2_INT2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.8333333333333) #define TYPE_LIMITER2_INT2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_S3 63 +#define ADDR_LIMITER2_S3 198 #define FIXPT_LIMITER2_S3 0xFF9A69A7 #define VALUE_LIMITER2_S3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.79365079365079) #define TYPE_LIMITER2_S3 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_INT3 64 +#define ADDR_LIMITER2_INT3 199 #define FIXPT_LIMITER2_INT3 0x00FDF7DF #define VALUE_LIMITER2_INT3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.98412698412698) #define TYPE_LIMITER2_INT3 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_S4 65 +#define ADDR_LIMITER2_S4 200 #define FIXPT_LIMITER2_S4 0xF83C6C20 #define VALUE_LIMITER2_S4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-15.527950310559) #define TYPE_LIMITER2_S4 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_INT4 66 +#define ADDR_LIMITER2_INT4 201 #define FIXPT_LIMITER2_INT4 0x03F5AA22 #define VALUE_LIMITER2_INT4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(7.91925465838509) #define TYPE_LIMITER2_INT4 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_C1 67 +#define ADDR_LIMITER2_C1 202 #define FIXPT_LIMITER2_C1 0x01800000 #define VALUE_LIMITER2_C1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(3) #define TYPE_LIMITER2_C1 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_C2 68 +#define ADDR_LIMITER2_C2 203 #define FIXPT_LIMITER2_C2 0x01000000 #define VALUE_LIMITER2_C2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(2) #define TYPE_LIMITER2_C2 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_C3 69 +#define ADDR_LIMITER2_C3 204 #define FIXPT_LIMITER2_C3 0x00333333 #define VALUE_LIMITER2_C3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.4) #define TYPE_LIMITER2_C3 SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_THRESHOLD 70 +#define ADDR_LIMITER2_THRESHOLD 205 #define FIXPT_LIMITER2_THRESHOLD 0x00800000 #define VALUE_LIMITER2_THRESHOLD SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) #define TYPE_LIMITER2_THRESHOLD SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_RMS 71 +#define ADDR_LIMITER2_RMS 206 #define FIXPT_LIMITER2_RMS 0x000007DC #define VALUE_LIMITER2_RMS SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000239881380791562) #define TYPE_LIMITER2_RMS SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_DECAY 72 +#define ADDR_LIMITER2_DECAY 207 #define FIXPT_LIMITER2_DECAY 0x00000800 #define VALUE_LIMITER2_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000244140625) #define TYPE_LIMITER2_DECAY SIGMASTUDIOTYPE_FIXPOINT -#define ADDR_LIMITER2_DECAYCOMPLEMENT 73 +#define ADDR_LIMITER2_DECAYCOMPLEMENT 208 #define FIXPT_LIMITER2_DECAYCOMPLEMENT 0x007FF000 #define VALUE_LIMITER2_DECAYCOMPLEMENT SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.99951171875) #define TYPE_LIMITER2_DECAYCOMPLEMENT SIGMASTUDIOTYPE_FIXPOINT +/* Module Limiter 1 - Limiter*/ +#define COUNT_LIMITER1 15 +#define DEVICE_LIMITER1 "IC1" +#define ADDR_LIMITER1_S1 209 +#define FIXPT_LIMITER1_S1 0xFFFE2BE3 +#define VALUE_LIMITER1_S1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.01428571428571) +#define TYPE_LIMITER1_S1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_INT1 210 +#define FIXPT_LIMITER1_INT1 0x0022BE2B +#define VALUE_LIMITER1_INT1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.27142857142857) +#define TYPE_LIMITER1_INT1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_S2 211 +#define FIXPT_LIMITER1_S2 0xFFEAAAAB +#define VALUE_LIMITER1_S2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.16666666666667) +#define TYPE_LIMITER1_S2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_INT2 212 +#define FIXPT_LIMITER1_INT2 0x006AAAAA +#define VALUE_LIMITER1_INT2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.8333333333333) +#define TYPE_LIMITER1_INT2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_S3 213 +#define FIXPT_LIMITER1_S3 0xFF9A69A7 +#define VALUE_LIMITER1_S3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.79365079365079) +#define TYPE_LIMITER1_S3 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_INT3 214 +#define FIXPT_LIMITER1_INT3 0x00FDF7DF +#define VALUE_LIMITER1_INT3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.98412698412698) +#define TYPE_LIMITER1_INT3 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_S4 215 +#define FIXPT_LIMITER1_S4 0xF83C6C20 +#define VALUE_LIMITER1_S4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-15.527950310559) +#define TYPE_LIMITER1_S4 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_INT4 216 +#define FIXPT_LIMITER1_INT4 0x03F5AA22 +#define VALUE_LIMITER1_INT4 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(7.91925465838509) +#define TYPE_LIMITER1_INT4 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_C1 217 +#define FIXPT_LIMITER1_C1 0x01800000 +#define VALUE_LIMITER1_C1 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(3) +#define TYPE_LIMITER1_C1 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_C2 218 +#define FIXPT_LIMITER1_C2 0x01000000 +#define VALUE_LIMITER1_C2 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(2) +#define TYPE_LIMITER1_C2 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_C3 219 +#define FIXPT_LIMITER1_C3 0x00333333 +#define VALUE_LIMITER1_C3 SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.4) +#define TYPE_LIMITER1_C3 SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_THRESHOLD 220 +#define FIXPT_LIMITER1_THRESHOLD 0x00800000 +#define VALUE_LIMITER1_THRESHOLD SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1) +#define TYPE_LIMITER1_THRESHOLD SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_RMS 221 +#define FIXPT_LIMITER1_RMS 0x000007DC +#define VALUE_LIMITER1_RMS SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000239881380791562) +#define TYPE_LIMITER1_RMS SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_DECAY 222 +#define FIXPT_LIMITER1_DECAY 0x00000800 +#define VALUE_LIMITER1_DECAY SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.000244140625) +#define TYPE_LIMITER1_DECAY SIGMASTUDIOTYPE_FIXPOINT +#define ADDR_LIMITER1_DECAYCOMPLEMENT 223 +#define FIXPT_LIMITER1_DECAYCOMPLEMENT 0x007FF000 +#define VALUE_LIMITER1_DECAYCOMPLEMENT SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.99951171875) +#define TYPE_LIMITER1_DECAYCOMPLEMENT SIGMASTUDIOTYPE_FIXPOINT + #endif diff --git a/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1_REG.h b/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1_REG.h index fed84c3..ae0b532 100644 --- a/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1_REG.h +++ b/Software/Firmware/ADAU1701-Firmware/DigiRadio_IC_1_REG.h @@ -1,8 +1,8 @@ /* - * File: C:\Users\mikbi\Documents\Allegati\Desktop\DigiRadio\DigiRadioModificato\DigiRadio_IC_1_REG.h + * File: C:\Users\mikbi\Documents\Allegati\Desktop\Sigmastudio\DigiRadioFinale_IC_1_REG.h * - * Created: Friday, August 7, 2026 3:19:11 AM - * Description: DigiRadio:IC 1 control register definitions. + * Created: Tuesday, August 25, 2026 8:11:05 PM + * Description: DigiRadioFinale:IC 1 control register definitions. * * This software is distributed in the hope that it will be useful, * but is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR @@ -16,8 +16,8 @@ * * Copyright ©2026 Analog Devices, Inc. All rights reserved. */ -#ifndef __DIGIRADIO_IC_1_REG_H__ -#define __DIGIRADIO_IC_1_REG_H__ +#ifndef __DIGIRADIOFINALE_IC_1_REG_H__ +#define __DIGIRADIOFINALE_IC_1_REG_H__ /* InterfaceRegister0 - Registers (IC 1) */ diff --git a/Software/Firmware/ADAU1701-Firmware/DigiRadio_NetList.xml b/Software/Firmware/ADAU1701-Firmware/DigiRadio_NetList.xml index c850e4e..e682eaf 100644 --- a/Software/Firmware/ADAU1701-Firmware/DigiRadio_NetList.xml +++ b/Software/Firmware/ADAU1701-Firmware/DigiRadio_NetList.xml @@ -17,77 +17,125 @@ - - - - - + + + + + - - + + - - - + + - - - + + + - - - + + + - - - + + + - - - + + + - + - - - - - - - - - + + + + + - - - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + + + + + + + + - - + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Software/Firmware/ADAU1701-Firmware/defines.h b/Software/Firmware/ADAU1701-Firmware/defines.h index 6719fa9..7053c1c 100644 --- a/Software/Firmware/ADAU1701-Firmware/defines.h +++ b/Software/Firmware/ADAU1701-Firmware/defines.h @@ -1,8 +1,8 @@ /* * File: defines.h * - * Created: Friday, August 7, 2026 3:19:11 AM - * Description: DigiRadio IC default download data definitions. + * Created: Tuesday, August 25, 2026 8:11:05 PM + * Description: DigiRadioFinale IC default download data definitions. * * This software is distributed in the hope that it will be useful, * but is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR diff --git a/Software/components/core/CMakeLists.txt b/Software/components/core/CMakeLists.txt index 4a9dc52..93534f0 100644 --- a/Software/components/core/CMakeLists.txt +++ b/Software/components/core/CMakeLists.txt @@ -19,11 +19,9 @@ idf_component_register( "src/EqBandIndex.cpp" "src/BiquadCoefficients.cpp" "src/BiquadDesign.cpp" - "src/MixerState.cpp" "src/EqProfile.cpp" "src/EnhanceLevel.cpp" "src/AudioEnhancements.cpp" - "src/EnhancementsDesign.cpp" "src/AudioProfile.cpp" "src/AudioProfileJson.cpp" "src/Bt1035At.cpp" diff --git a/Software/components/core/include/core/ActiveSource.hpp b/Software/components/core/include/core/ActiveSource.hpp new file mode 100644 index 0000000..377ccc8 --- /dev/null +++ b/Software/components/core/include/core/ActiveSource.hpp @@ -0,0 +1,46 @@ +/** + * @file ActiveSource.hpp + * @brief ADAU1701 MX1 input source selector. + * + * DigiRadio firmware — https://github.com/manvalan/DigiRadio + * + * Copyright 2026 Michele Bigi + * SPDX-License-Identifier: Apache-2.0 + * + * @author Michele Bigi + * @date 2026-08-25 + */ +#pragma once + +namespace core { + +/** + * @brief ActiveSource — the one stereo pair MX1 currently passes through. + * + * @dname ActiveSource + * @return n/a (type) + * @pubstate n/a + * + * The DigiRadioFinale SigmaStudio revision (2026-08-25) replaced St Mixer1 + * (which combined Si4684 + ESP32 + Beep simultaneously, each at its own + * gain) with MX1, a DC-controlled exclusive mux: only one of the three + * stereo pairs reaches Param EQ1 at a time, selected by the DC1 cell. + * Per-source gain trims (the old Si4674/ESP32 cells) no longer exist — + * level is controlled solely by Master Volume and the EQ, downstream of + * the selected source. + * + * @author Michele Bigi + * @date 2026-08-25 + */ +enum class ActiveSource { + Radio, ///< Si4684 tuner (FM/DAB), MX1 pair index 0. + Bluetooth, ///< ESP32 I2S input, MX1 pair index 1. + Beep, ///< Internal test tone, MX1 pair index 2. +}; + +// DC1 is a raw 32-bit integer index (0/1/2), not the 5.23 fixpoint its +// compiled TYPE_DC1/VALUE_DC1 macros would suggest -- confirmed live +// 2026-08-25 (see adau1701::paramSourceIndex() and Adau1701Driver:: +// selectSource()). + +} // namespace core diff --git a/Software/components/core/include/core/AudioEnhancements.hpp b/Software/components/core/include/core/AudioEnhancements.hpp index a3a2b80..9e9c7e7 100644 --- a/Software/components/core/include/core/AudioEnhancements.hpp +++ b/Software/components/core/include/core/AudioEnhancements.hpp @@ -17,19 +17,20 @@ namespace core { /** - * @brief AudioEnhancements — psychoacoustic EQ overlays (0–100 each). + * @brief AudioEnhancements — dedicated-block enhancement levels (0–100). * * @dname AudioEnhancements * @return n/a (type) - * @pubstate Mapped to PEQ bands at runtime (manual chapter sigmastudio). - * No dedicated SigmaStudio blocks; see \c applyEnhancementsToEq. + * @pubstate Applied via IDsp::setStereoSpreadLevel/setBassBoostLevel, which + * scale the SPhat1/Bass Boost1 SigmaStudio blocks toward their + * compiled response; does not touch EqProfile. * * @author Michele Bigi * @date 2026-07-06 */ struct AudioEnhancements { - EnhanceLevel stereo; ///< Stereo depth / presence (PEQ bands 3–5). - EnhanceLevel bass; ///< Bass emphasis (PEQ bands 1–2). + EnhanceLevel stereo; ///< Stereo spread (SPhat1 spatializer). + EnhanceLevel bass; ///< Bass boost intensity (Bass Boost1). /** * @brief factoryDefault — both enhancements off. diff --git a/Software/components/core/include/core/AudioProfile.hpp b/Software/components/core/include/core/AudioProfile.hpp index 1260b2f..dccc03d 100644 --- a/Software/components/core/include/core/AudioProfile.hpp +++ b/Software/components/core/include/core/AudioProfile.hpp @@ -12,10 +12,10 @@ */ #pragma once +#include "core/ActiveSource.hpp" #include "core/AudioEnhancements.hpp" #include "core/EqProfile.hpp" #include "core/GainDb.hpp" -#include "core/MixerState.hpp" namespace core { @@ -31,7 +31,7 @@ namespace core { * @date 2026-07-06 */ struct AudioProfile { - MixerState mixer; ///< Input and stereo-mixer gains. + ActiveSource activeSource; ///< Which MX1 pair reaches Param EQ1. EqProfile eq; ///< Six-band parametric EQ. GainDb masterLeft; ///< Multiple 1 master volume, left. GainDb masterRight; ///< Multiple 1 master volume, right. diff --git a/Software/components/core/include/core/EnhancementsDesign.hpp b/Software/components/core/include/core/EnhancementsDesign.hpp deleted file mode 100644 index ec8f1d8..0000000 --- a/Software/components/core/include/core/EnhancementsDesign.hpp +++ /dev/null @@ -1,39 +0,0 @@ -/** - * @file EnhancementsDesign.hpp - * @brief Map enhancement levels onto Param EQ1 bands (host-testable). - * - * DigiRadio firmware — https://github.com/manvalan/DigiRadio - * - * Copyright 2026 Michele Bigi - * SPDX-License-Identifier: Apache-2.0 - * - * @author Michele Bigi - * @date 2026-07-06 - */ -#pragma once - -#include "core/AudioEnhancements.hpp" -#include "core/EqProfile.hpp" - -namespace core { - -/** - * @brief applyEnhancementsToEq — merge enhancement overlays into an EQ profile. - * - * @dname applyEnhancementsToEq - * @param base User EQ settings (bands not touched stay unchanged). - * @param enhancements Stereo and bass levels (0 = use base band only). - * @return EqProfile with affected PEQ bands updated for safeload. - * @pubstate none - * - * Stereo (bands 3–5): slight 1\,kHz cut plus 3/8\,kHz lift for depth. - * Bass (bands 1–2): 100\,Hz and 400\,Hz peaking boost. - * Band 0 (high-pass) is never modified. - * - * @author Michele Bigi - * @date 2026-07-06 - */ -[[nodiscard]] EqProfile applyEnhancementsToEq( - const EqProfile& base, const AudioEnhancements& enhancements) noexcept; - -} // namespace core diff --git a/Software/components/core/include/core/IDsp.hpp b/Software/components/core/include/core/IDsp.hpp index 6400805..483eff5 100644 --- a/Software/components/core/include/core/IDsp.hpp +++ b/Software/components/core/include/core/IDsp.hpp @@ -12,13 +12,13 @@ */ #pragma once +#include "core/ActiveSource.hpp" #include "core/AudioProfile.hpp" #include "core/DspError.hpp" +#include "core/EnhanceLevel.hpp" #include "core/EqBandIndex.hpp" #include "core/FrequencyHz.hpp" #include "core/GainDb.hpp" -#include "core/MixSource.hpp" -#include "core/MixerState.hpp" #include "core/EqProfile.hpp" #include @@ -56,18 +56,18 @@ public: const AudioProfile& profile) = 0; /** - * @brief applyMixer — safeload input and stereo-mixer gains. + * @brief selectSource — safeload MX1's DC1 control to pick one source. * - * @dname applyMixer - * @param mixer Per-source and St Mixer1 levels. + * @dname selectSource + * @param source Which stereo pair MX1 passes through to Param EQ1. * @return Ok on success, or DspError. * @pubstate writes ADAU1701 parameter RAM via safeload. * * @author Michele Bigi - * @date 2026-07-06 + * @date 2026-08-25 */ - [[nodiscard]] virtual std::expected applyMixer( - const MixerState& mixer) = 0; + [[nodiscard]] virtual std::expected selectSource( + ActiveSource source) = 0; /** * @brief applyEq — safeload all six PEQ bands. @@ -83,22 +83,6 @@ public: [[nodiscard]] virtual std::expected applyEq( const EqProfile& eq) = 0; - /** - * @brief setInputVolume — safeload one input path (Si4684 or ESP32). - * - * @dname setInputVolume - * @param source Tuner or ESP32 I2S path. - * @param left Left channel gain. - * @param right Right channel gain. - * @return Ok on success, or DspError. - * @pubstate writes ADAU1701 parameter RAM via safeload. - * - * @author Michele Bigi - * @date 2026-07-06 - */ - [[nodiscard]] virtual std::expected setInputVolume( - MixSource source, GainDb left, GainDb right) = 0; - /** * @brief setMasterVolume — safeload Multiple 1 master output gain. * @@ -146,6 +130,42 @@ public: [[nodiscard]] virtual std::expected setBeepEnabled( bool enabled) = 0; + /** + * @brief setBassBoostLevel — scale Bass Boost1 toward its compiled + * curve. + * + * @dname setBassBoostLevel + * @param level 0 = flat bypass, 100 = the full SigmaStudio-tuned + * Dynamic Bass Boost response. + * @return Ok on success, or DspError. + * @pubstate writes ADAU1701 parameter RAM via safeload. Linearly + * interpolates the compiled crossover filter and 33-point + * compander curve toward identity/unity; BASSFREQUENCY and + * the time constant are left at their tuned defaults. + * + * @author Michele Bigi + * @date 2026-08-25 + */ + [[nodiscard]] virtual std::expected setBassBoostLevel( + EnhanceLevel level) = 0; + + /** + * @brief setStereoSpreadLevel — scale SPhat1's stereo spread amount. + * + * @dname setStereoSpreadLevel + * @param level 0 = no added spread, 100 = the full SigmaStudio-tuned + * SuperPhat spread. + * @return Ok on success, or DspError. + * @pubstate writes ADAU1701 parameter RAM via safeload. Scales + * SPREAD1/SPREAD2 linearly; the crossover filter and + * compander curve are left at their tuned defaults. + * + * @author Michele Bigi + * @date 2026-08-25 + */ + [[nodiscard]] virtual std::expected setStereoSpreadLevel( + EnhanceLevel level) = 0; + /** * @brief writeRawParam — safeload any named Parameter RAM cell. * diff --git a/Software/components/core/include/core/MixSource.hpp b/Software/components/core/include/core/MixSource.hpp deleted file mode 100644 index 1b2618a..0000000 --- a/Software/components/core/include/core/MixSource.hpp +++ /dev/null @@ -1,32 +0,0 @@ -/** - * @file MixSource.hpp - * @brief ADAU1701 input path selector for per-source volume control. - * - * DigiRadio firmware — https://github.com/manvalan/DigiRadio - * - * Copyright 2026 Michele Bigi - * SPDX-License-Identifier: Apache-2.0 - * - * @author Michele Bigi - * @date 2026-07-06 - */ -#pragma once - -namespace core { - -/** - * @brief MixSource — Si4684 tuner or ESP32 I2S input on the ADAU1701. - * - * @dname MixSource - * @return n/a (type) - * @pubstate n/a - * - * @author Michele Bigi - * @date 2026-07-06 - */ -enum class MixSource { - Si4684, - Esp32, -}; - -} // namespace core diff --git a/Software/components/core/include/core/MixerState.hpp b/Software/components/core/include/core/MixerState.hpp deleted file mode 100644 index 1f8948b..0000000 --- a/Software/components/core/include/core/MixerState.hpp +++ /dev/null @@ -1,64 +0,0 @@ -/** - * @file MixerState.hpp - * @brief ADAU1701 input and stereo-mixer gain snapshot. - * - * DigiRadio firmware — https://github.com/manvalan/DigiRadio - * - * Copyright 2026 Michele Bigi - * SPDX-License-Identifier: Apache-2.0 - * - * @author Michele Bigi - * @date 2026-07-06 - */ -#pragma once - -#include "core/GainDb.hpp" - -namespace core { - -/** - * @brief MixerState — per-source and St Mixer1 levels for the ADAU1701. - * - * @dname MixerState - * @return n/a (type) - * @pubstate Immutable snapshot applied by AudioService via IDsp. - * - * Maps to SigmaStudio modules Si4674, ESP32, and St Mixer1. - * - * @author Michele Bigi - * @date 2026-07-06 - */ -struct MixerState { - GainDb si4684Left; ///< Si4674 volume control, left channel. - GainDb si4684Right; ///< Si4674 volume control, right channel. - GainDb esp32Left; ///< ESP32 volume control, left channel. - GainDb esp32Right; ///< ESP32 volume control, right channel. - GainDb mixLeft; ///< St Mixer1 ST0 (Si4684) input level. - GainDb mixRight; ///< St Mixer1 ST1 (ESP32) input level. - - /** - * @brief factoryDefault — unity gains on all paths. - * - * @dname factoryDefault - * @return MixerState with 0 dB on every control. - * @pubstate none - * - * @author Michele Bigi - * @date 2026-07-06 - */ - [[nodiscard]] static MixerState factoryDefault() noexcept; - - /** - * @brief radioFirst — Si4684 path open, ESP32 path muted. - * - * @dname radioFirst - * @return MixerState for FM/DAB tuner audio to the Bose I2S chain. - * @pubstate none - * - * @author Michele Bigi - * @date 2026-08-05 - */ - [[nodiscard]] static MixerState radioFirst() noexcept; -}; - -} // namespace core diff --git a/Software/components/core/src/AudioProfile.cpp b/Software/components/core/src/AudioProfile.cpp index 2407d1e..a693024 100644 --- a/Software/components/core/src/AudioProfile.cpp +++ b/Software/components/core/src/AudioProfile.cpp @@ -19,7 +19,7 @@ AudioProfile AudioProfile::factoryDefault() noexcept { const GainDb unity = GainDb::zero(); return AudioProfile{ - .mixer = MixerState::factoryDefault(), + .activeSource = ActiveSource::Radio, .eq = EqProfile::factoryDefault(), .masterLeft = unity, .masterRight = unity, diff --git a/Software/components/core/src/AudioProfileJson.cpp b/Software/components/core/src/AudioProfileJson.cpp index a29614c..21f644b 100644 --- a/Software/components/core/src/AudioProfileJson.cpp +++ b/Software/components/core/src/AudioProfileJson.cpp @@ -92,35 +92,48 @@ namespace { return GainDb::tryFromDb(db); } -[[nodiscard]] std::expected parseMixerJson( +[[nodiscard]] std::string_view activeSourceName(ActiveSource source) noexcept +{ + switch (source) { + case ActiveSource::Radio: + return "radio"; + case ActiveSource::Bluetooth: + return "bluetooth"; + case ActiveSource::Beep: + return "beep"; + } + return "radio"; +} + +[[nodiscard]] std::expected parseActiveSourceJson( std::string_view json) { - const std::size_t mixerStart = json.find("\"mixer\""); - if (mixerStart == std::string_view::npos) { + constexpr std::string_view kKey = "\"active_source\""; + const std::size_t needlePos = json.find(kKey); + if (needlePos == std::string_view::npos) { return std::unexpected(ParseError::MissingField); } - const std::string_view mixer = json.substr(mixerStart); - - const auto si4684Left = parseGainField(mixer, "si4684_left_db"); - const auto si4684Right = parseGainField(mixer, "si4684_right_db"); - const auto esp32Left = parseGainField(mixer, "esp32_left_db"); - const auto esp32Right = parseGainField(mixer, "esp32_right_db"); - const auto mixLeft = parseGainField(mixer, "mix_left_db"); - const auto mixRight = parseGainField(mixer, "mix_right_db"); - - if (!si4684Left || !si4684Right || !esp32Left || !esp32Right || !mixLeft - || !mixRight) { + const std::size_t quoteStart = json.find('"', needlePos + kKey.size()); + if (quoteStart == std::string_view::npos) { return std::unexpected(ParseError::MissingField); } + const std::size_t quoteEnd = json.find('"', quoteStart + 1U); + if (quoteEnd == std::string_view::npos) { + return std::unexpected(ParseError::MissingField); + } + const std::string_view value = + json.substr(quoteStart + 1U, quoteEnd - quoteStart - 1U); - return MixerState{ - .si4684Left = *si4684Left, - .si4684Right = *si4684Right, - .esp32Left = *esp32Left, - .esp32Right = *esp32Right, - .mixLeft = *mixLeft, - .mixRight = *mixRight, - }; + if (value == "radio") { + return ActiveSource::Radio; + } + if (value == "bluetooth") { + return ActiveSource::Bluetooth; + } + if (value == "beep") { + return ActiveSource::Beep; + } + return std::unexpected(ParseError::MissingField); } [[nodiscard]] std::expected parseEqJson( @@ -207,14 +220,8 @@ namespace { std::string serializeAudioProfileJson(const AudioProfile& profile) { std::ostringstream out; - const auto& m = profile.mixer; - out << "{\"mixer\":{" - << "\"si4684_left_db\":" << m.si4684Left.value() << ',' - << "\"si4684_right_db\":" << m.si4684Right.value() << ',' - << "\"esp32_left_db\":" << m.esp32Left.value() << ',' - << "\"esp32_right_db\":" << m.esp32Right.value() << ',' - << "\"mix_left_db\":" << m.mixLeft.value() << ',' - << "\"mix_right_db\":" << m.mixRight.value() << "}," + out << "{\"active_source\":\"" << activeSourceName(profile.activeSource) + << "\"," << "\"master\":{" << "\"left_db\":" << profile.masterLeft.value() << ',' << "\"right_db\":" << profile.masterRight.value() << "}," @@ -223,19 +230,13 @@ std::string serializeAudioProfileJson(const AudioProfile& profile) // Per-band "locked" flag, added 2026-08-24: band 0 is a fixed high-pass // Adau1701Driver::applyEq() never safeloads (SigmaStudio band 1, ST0 in // the compiled program -- whatever gain_db/center_hz/q is stored/sent - // for it has zero audible effect, always). Bands 1-2 are overwritten by - // core::applyEnhancementsToEq() with formula-derived values whenever - // bass_level > 0; bands 3-5 likewise whenever stereo_level > 0 -- a - // manual edit to those bands is silently inaudible while the - // corresponding enhancement is active. This was previously - // undiscoverable from the API response (GET echoed back the stored, - // inert value with no indication it wasn't what was actually playing); - // "locked":true now tells a client to grey out that slider instead of - // letting the user "fix" a value that can't take effect. - const bool bassLocks = profile.enhancements.bass.value() > 0U; - const bool stereoLocks = profile.enhancements.stereo.value() > 0U; + // for it has zero audible effect, always). Since the 2026-08-25 + // DigiRadioFinale revision, bass/stereo enhancement drive the dedicated + // Bass Boost1/SPhat1 blocks directly instead of overwriting EQ bands, + // so bands 1-5 are no longer locked by enhancement levels -- only + // band 0 remains permanently inert. const bool locked[EqBandIndex::kBandCount] = { - true, bassLocks, bassLocks, stereoLocks, stereoLocks, stereoLocks, + true, false, false, false, false, false, }; const auto& bands = profile.eq.bands(); @@ -263,9 +264,9 @@ std::expected parseAudioProfileJson( return std::unexpected(ParseError::InvalidJson); } - const auto mixer = parseMixerJson(json); - if (!mixer) { - return std::unexpected(mixer.error()); + const auto activeSource = parseActiveSourceJson(json); + if (!activeSource) { + return std::unexpected(activeSource.error()); } const auto eq = parseEqJson(json); @@ -290,7 +291,7 @@ std::expected parseAudioProfileJson( } return AudioProfile{ - .mixer = *mixer, + .activeSource = *activeSource, .eq = *eq, .masterLeft = *masterLeft, .masterRight = *masterRight, diff --git a/Software/components/core/src/EnhancementsDesign.cpp b/Software/components/core/src/EnhancementsDesign.cpp deleted file mode 100644 index a3f37dc..0000000 --- a/Software/components/core/src/EnhancementsDesign.cpp +++ /dev/null @@ -1,70 +0,0 @@ -/** - * @file EnhancementsDesign.cpp - * @brief Enhancement-to-EQ mapping implementation. - * - * DigiRadio firmware — https://github.com/manvalan/DigiRadio - * - * Copyright 2026 Michele Bigi - * SPDX-License-Identifier: Apache-2.0 - * - * @author Michele Bigi - * @date 2026-07-06 - */ -#include "core/EnhancementsDesign.hpp" - -#include "core/EqBandIndex.hpp" -#include "core/FrequencyHz.hpp" -#include "core/GainDb.hpp" - -namespace core { - -namespace { - -void setBand(EqProfile& profile, std::uint8_t index, GainDb gain, - FrequencyHz center, float q) noexcept -{ - const auto band = EqBandIndex::tryFromIndex(index); - if (!band) { - return; - } - profile.setBand(*band, EqBandSettings{ - .gain = gain, - .center = center, - .q = q, - }); -} - -[[nodiscard]] GainDb gainFromDb(float db) noexcept -{ - return *GainDb::tryFromDb(db); -} - -} // namespace - -EqProfile applyEnhancementsToEq(const EqProfile& base, - const AudioEnhancements& enhancements) noexcept -{ - EqProfile profile = base; - - if (enhancements.bass.value() > 0U) { - const float t = enhancements.bass.fraction(); - setBand(profile, 1U, gainFromDb(9.0F * t), - *FrequencyHz::tryFromHz(100U), 0.9F); - setBand(profile, 2U, gainFromDb(3.0F * t), - *FrequencyHz::tryFromHz(400U), 1.0F); - } - - if (enhancements.stereo.value() > 0U) { - const float t = enhancements.stereo.fraction(); - setBand(profile, 3U, gainFromDb(-1.5F * t), - *FrequencyHz::tryFromHz(1000U), 1.0F); - setBand(profile, 4U, gainFromDb(2.0F * t), - *FrequencyHz::tryFromHz(3000U), 1.0F); - setBand(profile, 5U, gainFromDb(4.0F * t), - *FrequencyHz::tryFromHz(8000U), 1.0F); - } - - return profile; -} - -} // namespace core diff --git a/Software/components/core/src/MixerState.cpp b/Software/components/core/src/MixerState.cpp deleted file mode 100644 index f766016..0000000 --- a/Software/components/core/src/MixerState.cpp +++ /dev/null @@ -1,45 +0,0 @@ -/** - * @file MixerState.cpp - * @brief MixerState factory defaults. - * - * DigiRadio firmware — https://github.com/manvalan/DigiRadio - * - * Copyright 2026 Michele Bigi - * SPDX-License-Identifier: Apache-2.0 - * - * @author Michele Bigi - * @date 2026-07-06 - */ - -#include "core/MixerState.hpp" - -namespace core { - -MixerState MixerState::factoryDefault() noexcept -{ - const GainDb unity = GainDb::zero(); - return MixerState{ - .si4684Left = unity, - .si4684Right = unity, - .esp32Left = unity, - .esp32Right = unity, - .mixLeft = unity, - .mixRight = unity, - }; -} - -MixerState MixerState::radioFirst() noexcept -{ - const GainDb unity = GainDb::zero(); - const GainDb muted = *GainDb::tryFromDb(GainDb::kMinDb); - return MixerState{ - .si4684Left = unity, - .si4684Right = unity, - .esp32Left = muted, - .esp32Right = muted, - .mixLeft = unity, - .mixRight = muted, - }; -} - -} // namespace core diff --git a/Software/components/core/test/CMakeLists.txt b/Software/components/core/test/CMakeLists.txt index 784f300..b9dbbc6 100644 --- a/Software/components/core/test/CMakeLists.txt +++ b/Software/components/core/test/CMakeLists.txt @@ -31,11 +31,9 @@ add_library(digiradio_core STATIC "${CORE_SRC_DIR}/EqBandIndex.cpp" "${CORE_SRC_DIR}/BiquadCoefficients.cpp" "${CORE_SRC_DIR}/BiquadDesign.cpp" - "${CORE_SRC_DIR}/MixerState.cpp" "${CORE_SRC_DIR}/EqProfile.cpp" "${CORE_SRC_DIR}/EnhanceLevel.cpp" "${CORE_SRC_DIR}/AudioEnhancements.cpp" - "${CORE_SRC_DIR}/EnhancementsDesign.cpp" "${CORE_SRC_DIR}/AudioProfile.cpp" "${CORE_SRC_DIR}/AudioProfileJson.cpp" "${CORE_SRC_DIR}/Bt1035At.cpp" @@ -110,10 +108,6 @@ add_executable(audio_profile_json_test audio_profile_json_test.cpp) target_link_libraries(audio_profile_json_test PRIVATE digiradio_core) add_test(NAME audio_profile_json_test COMMAND audio_profile_json_test) -add_executable(enhancements_design_test enhancements_design_test.cpp) -target_link_libraries(enhancements_design_test PRIVATE digiradio_core) -add_test(NAME enhancements_design_test COMMAND enhancements_design_test) - add_executable(station_service_test station_service_test.cpp) target_include_directories(station_service_test PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/host_stubs" diff --git a/Software/components/core/test/audio_profile_json_test.cpp b/Software/components/core/test/audio_profile_json_test.cpp index 1a9e2d6..d533de8 100644 --- a/Software/components/core/test/audio_profile_json_test.cpp +++ b/Software/components/core/test/audio_profile_json_test.cpp @@ -69,6 +69,23 @@ namespace { std::cerr << "enhancements round-trip mismatch\n"; return EXIT_FAILURE; } + + if (parsed->activeSource != core::ActiveSource::Radio) { + std::cerr << "default active_source mismatch\n"; + return EXIT_FAILURE; + } + + profile.activeSource = core::ActiveSource::Bluetooth; + const std::string json3 = core::serializeAudioProfileJson(profile); + if (json3.find(R"("active_source":"bluetooth")") == std::string::npos) { + std::cerr << "active_source serialization mismatch: " << json3 << '\n'; + return EXIT_FAILURE; + } + const auto parsed3 = core::parseAudioProfileJson(json3); + if (!parsed3 || parsed3->activeSource != core::ActiveSource::Bluetooth) { + std::cerr << "active_source round-trip mismatch\n"; + return EXIT_FAILURE; + } return EXIT_SUCCESS; } diff --git a/Software/components/core/test/enhancements_design_test.cpp b/Software/components/core/test/enhancements_design_test.cpp deleted file mode 100644 index 3da3559..0000000 --- a/Software/components/core/test/enhancements_design_test.cpp +++ /dev/null @@ -1,124 +0,0 @@ -/** - * @file enhancements_design_test.cpp - * @brief Host tests for enhancement-to-EQ mapping. - * - * DigiRadio firmware — https://github.com/manvalan/DigiRadio - * - * Copyright 2026 Michele Bigi - * SPDX-License-Identifier: Apache-2.0 - * - * @author Michele Bigi - * @date 2026-07-06 - */ - -#include "core/AudioEnhancements.hpp" -#include "core/EnhanceLevel.hpp" -#include "core/EnhancementsDesign.hpp" -#include "core/EqBandIndex.hpp" -#include "core/EqProfile.hpp" - -#include -#include -#include - -namespace { - -[[nodiscard]] bool nearlyEqual(float a, float b) noexcept -{ - return std::fabs(a - b) < 0.01F; -} - -[[nodiscard]] int runBassMappingTest() -{ - const auto level = core::EnhanceLevel::tryFromLevel(100U); - if (!level) { - std::cerr << "level setup failed\n"; - return EXIT_FAILURE; - } - - core::AudioEnhancements enhancements = core::AudioEnhancements::factoryDefault(); - enhancements.bass = *level; - - const core::EqProfile base = core::EqProfile::factoryDefault(); - const core::EqProfile effective = - core::applyEnhancementsToEq(base, enhancements); - - const auto band1 = core::EqBandIndex::tryFromIndex(1U); - const auto band2 = core::EqBandIndex::tryFromIndex(2U); - if (!band1 || !band2) { - return EXIT_FAILURE; - } - - if (!nearlyEqual(effective.band(*band1).gain.value(), 9.0F) - || !nearlyEqual(effective.band(*band2).gain.value(), 3.0F)) { - std::cerr << "bass mapping mismatch\n"; - return EXIT_FAILURE; - } - return EXIT_SUCCESS; -} - -[[nodiscard]] int runStereoMappingTest() -{ - const auto level = core::EnhanceLevel::tryFromLevel(50U); - if (!level) { - std::cerr << "level setup failed\n"; - return EXIT_FAILURE; - } - - core::AudioEnhancements enhancements = core::AudioEnhancements::factoryDefault(); - enhancements.stereo = *level; - - const core::EqProfile base = core::EqProfile::factoryDefault(); - const core::EqProfile effective = - core::applyEnhancementsToEq(base, enhancements); - - const auto band3 = core::EqBandIndex::tryFromIndex(3U); - const auto band4 = core::EqBandIndex::tryFromIndex(4U); - const auto band5 = core::EqBandIndex::tryFromIndex(5U); - if (!band3 || !band4 || !band5) { - return EXIT_FAILURE; - } - - if (!nearlyEqual(effective.band(*band3).gain.value(), -0.75F) - || !nearlyEqual(effective.band(*band4).gain.value(), 1.0F) - || !nearlyEqual(effective.band(*band5).gain.value(), 2.0F)) { - std::cerr << "stereo mapping mismatch\n"; - return EXIT_FAILURE; - } - return EXIT_SUCCESS; -} - -[[nodiscard]] int runOffLeavesBaseTest() -{ - const core::EqProfile base = core::EqProfile::factoryDefault(); - const core::AudioEnhancements off = core::AudioEnhancements::factoryDefault(); - const core::EqProfile effective = core::applyEnhancementsToEq(base, off); - - const auto band1 = core::EqBandIndex::tryFromIndex(1U); - if (!band1) { - return EXIT_FAILURE; - } - - if (!nearlyEqual(effective.band(*band1).gain.value(), - base.band(*band1).gain.value())) { - std::cerr << "off should leave base unchanged\n"; - return EXIT_FAILURE; - } - return EXIT_SUCCESS; -} - -} // namespace - -int main() -{ - if (runBassMappingTest() != EXIT_SUCCESS) { - return EXIT_FAILURE; - } - if (runStereoMappingTest() != EXIT_SUCCESS) { - return EXIT_FAILURE; - } - if (runOffLeavesBaseTest() != EXIT_SUCCESS) { - return EXIT_FAILURE; - } - return EXIT_SUCCESS; -} diff --git a/Software/components/core/test/integration_service_test.cpp b/Software/components/core/test/integration_service_test.cpp index 41451d1..1a0097e 100644 --- a/Software/components/core/test/integration_service_test.cpp +++ b/Software/components/core/test/integration_service_test.cpp @@ -40,8 +40,8 @@ public: return {}; } - [[nodiscard]] std::expected applyMixer( - const core::MixerState&) override + [[nodiscard]] std::expected selectSource( + core::ActiveSource) override { return {}; } @@ -52,12 +52,6 @@ public: return {}; } - [[nodiscard]] std::expected setInputVolume( - core::MixSource, core::GainDb, core::GainDb) override - { - return {}; - } - [[nodiscard]] std::expected setMasterVolume( core::GainDb, core::GainDb) override { @@ -76,6 +70,18 @@ public: return {}; } + [[nodiscard]] std::expected setBassBoostLevel( + core::EnhanceLevel) override + { + return {}; + } + + [[nodiscard]] std::expected setStereoSpreadLevel( + core::EnhanceLevel) override + { + return {}; + } + [[nodiscard]] std::expected writeRawParam( unsigned, float) override { diff --git a/Software/components/drivers/adau1701/include/adau1701/Adau1701Driver.hpp b/Software/components/drivers/adau1701/include/adau1701/Adau1701Driver.hpp index 57f3753..25cfbeb 100644 --- a/Software/components/drivers/adau1701/include/adau1701/Adau1701Driver.hpp +++ b/Software/components/drivers/adau1701/include/adau1701/Adau1701Driver.hpp @@ -15,13 +15,13 @@ #include "adau1701/Adau1701Error.hpp" #include "core/AudioProfile.hpp" +#include "core/EnhanceLevel.hpp" #include "core/EqBandIndex.hpp" #include "core/EqProfile.hpp" #include "core/FrequencyHz.hpp" #include "core/GainDb.hpp" #include "core/IDspProgramSource.hpp" -#include "core/MixSource.hpp" -#include "core/MixerState.hpp" +#include "core/ActiveSource.hpp" #include #include @@ -144,18 +144,18 @@ public: const core::AudioProfile& profile); /** - * @brief applyMixer — safeload input and stereo-mixer gains. + * @brief selectSource — safeload DC1 to pick MX1's active input pair. * - * @dname applyMixer - * @param mixer Per-source and St Mixer1 levels. + * @dname selectSource + * @param source Which stereo pair MX1 passes through. * @return Ok on success, or Adau1701Error. * @pubstate writes parameter RAM via safeload. * * @author Michele Bigi - * @date 2026-07-06 + * @date 2026-08-25 */ - [[nodiscard]] std::expected applyMixer( - const core::MixerState& mixer); + [[nodiscard]] std::expected selectSource( + core::ActiveSource source); /** * @brief applyEq — safeload all six PEQ bands. @@ -171,22 +171,6 @@ public: [[nodiscard]] std::expected applyEq( const core::EqProfile& eq); - /** - * @brief setInputVolume — safeload one input path gain. - * - * @dname setInputVolume - * @param source Si4684 or ESP32 I2S path. - * @param left Left channel gain. - * @param right Right channel gain. - * @return Ok on success, or Adau1701Error. - * @pubstate writes parameter RAM via safeload. - * - * @author Michele Bigi - * @date 2026-07-06 - */ - [[nodiscard]] std::expected setInputVolume( - core::MixSource source, core::GainDb left, core::GainDb right); - /** * @brief setMasterVolume — safeload Multiple 1 master output gain. * @@ -234,6 +218,35 @@ public: [[nodiscard]] std::expected setBeepEnabled( bool enabled); + /** + * @brief setBassBoostLevel — scale Bass Boost1 toward its compiled + * curve. + * + * @dname setBassBoostLevel + * @param level 0 = flat bypass, 100 = full compiled response. + * @return Ok on success, or Adau1701Error. + * @pubstate writes parameter RAM via safeload. + * + * @author Michele Bigi + * @date 2026-08-25 + */ + [[nodiscard]] std::expected setBassBoostLevel( + core::EnhanceLevel level); + + /** + * @brief setStereoSpreadLevel — scale SPhat1's stereo spread amount. + * + * @dname setStereoSpreadLevel + * @param level 0 = no spread, 100 = full compiled spread. + * @return Ok on success, or Adau1701Error. + * @pubstate writes parameter RAM via safeload. + * + * @author Michele Bigi + * @date 2026-08-25 + */ + [[nodiscard]] std::expected setStereoSpreadLevel( + core::EnhanceLevel level); + /** * @brief writeRawParam — safeload any named Parameter RAM cell. * diff --git a/Software/components/drivers/adau1701/include/adau1701/Adau1701Dsp.hpp b/Software/components/drivers/adau1701/include/adau1701/Adau1701Dsp.hpp index 722ab8e..baf00cc 100644 --- a/Software/components/drivers/adau1701/include/adau1701/Adau1701Dsp.hpp +++ b/Software/components/drivers/adau1701/include/adau1701/Adau1701Dsp.hpp @@ -45,15 +45,12 @@ public: [[nodiscard]] std::expected applyProfile( const core::AudioProfile& profile) override; - [[nodiscard]] std::expected applyMixer( - const core::MixerState& mixer) override; + [[nodiscard]] std::expected selectSource( + core::ActiveSource source) override; [[nodiscard]] std::expected applyEq( const core::EqProfile& eq) override; - [[nodiscard]] std::expected setInputVolume( - core::MixSource source, core::GainDb left, core::GainDb right) override; - [[nodiscard]] std::expected setMasterVolume( core::GainDb left, core::GainDb right) override; @@ -64,6 +61,12 @@ public: [[nodiscard]] std::expected setBeepEnabled( bool enabled) override; + [[nodiscard]] std::expected setBassBoostLevel( + core::EnhanceLevel level) override; + + [[nodiscard]] std::expected setStereoSpreadLevel( + core::EnhanceLevel level) override; + [[nodiscard]] std::expected writeRawParam( unsigned address, float value) override; diff --git a/Software/components/drivers/adau1701/include/adau1701/Adau1701ParamMap.hpp b/Software/components/drivers/adau1701/include/adau1701/Adau1701ParamMap.hpp index 23ff4b7..85132fb 100644 --- a/Software/components/drivers/adau1701/include/adau1701/Adau1701ParamMap.hpp +++ b/Software/components/drivers/adau1701/include/adau1701/Adau1701ParamMap.hpp @@ -14,8 +14,8 @@ #include "DigiRadio_IC_1_PARAM.h" +#include "core/ActiveSource.hpp" #include "core/EqBandIndex.hpp" -#include "core/MixSource.hpp" #include @@ -39,39 +39,30 @@ namespace adau1701 { } /** - * @brief paramAddrInputLeft — left volume address for an input source. + * @brief paramSourceIndex — MX1 pair index written to DC1 for a source. * - * @dname paramAddrInputLeft - * @param source Si4684 or ESP32 path. - * @return Parameter RAM address for the left channel gain cell. + * @dname paramSourceIndex + * @param source Which stereo pair MX1 should pass through. + * @return 0 (Radio), 1 (Bluetooth), or 2 (Beep) -- confirmed live + * 2026-08-25 against real hardware (see + * docs/adau1701-sigmastudio-analysis.md). * @pubstate none * * @author Michele Bigi - * @date 2026-07-06 + * @date 2026-08-25 */ -[[nodiscard]] inline unsigned paramAddrInputLeft(core::MixSource source) noexcept +[[nodiscard]] inline unsigned paramSourceIndex( + core::ActiveSource source) noexcept { - return source == core::MixSource::Si4684 - ? static_cast(ADDR_SI4674) - : static_cast(ADDR_ESP32); -} - -/** - * @brief paramAddrInputRight — right volume address for an input source. - * - * @dname paramAddrInputRight - * @param source Si4684 or ESP32 path. - * @return Parameter RAM address for the right channel gain cell. - * @pubstate none - * - * @author Michele Bigi - * @date 2026-07-06 - */ -[[nodiscard]] inline unsigned paramAddrInputRight(core::MixSource source) noexcept -{ - return source == core::MixSource::Si4684 - ? static_cast(ADDR_SI4674_1) - : static_cast(ADDR_ESP32_1); + switch (source) { + case core::ActiveSource::Radio: + return 0U; + case core::ActiveSource::Bluetooth: + return 1U; + case core::ActiveSource::Beep: + return 2U; + } + return 0U; } } // namespace adau1701 diff --git a/Software/components/drivers/adau1701/include/adau1701/Adau1701ParamTable.hpp b/Software/components/drivers/adau1701/include/adau1701/Adau1701ParamTable.hpp index 6263ce7..a4e1d9d 100644 --- a/Software/components/drivers/adau1701/include/adau1701/Adau1701ParamTable.hpp +++ b/Software/components/drivers/adau1701/include/adau1701/Adau1701ParamTable.hpp @@ -8,13 +8,14 @@ * SPDX-License-Identifier: Apache-2.0 * * Generated from Firmware/ADAU1701-Firmware/DigiRadio_IC_1_PARAM.h (the - * SigmaStudio export). Regenerate by re-running the extraction over that - * file if the SigmaStudio project's cell list changes; entries here must - * stay in sync with the ADDR_* constants used by + * SigmaStudio export, "DigiRadioFinale" revision, captured 2026-08-25). + * Regenerate by re-running the extraction over that file if the SigmaStudio + * project's cell list changes; entries here must stay in sync with the + * ADDR_* constants used by * components/drivers/adau1701/src/Adau1701Driver.cpp's replayProgram(). * * @author Michele Bigi - * @date 2026-08-18 + * @date 2026-08-25 */ #pragma once @@ -39,83 +40,239 @@ struct Adau1701ParamEntry { * @pubstate Read-only; see file header for regeneration instructions. * * @author Michele Bigi - * @date 2026-08-18 + * @date 2026-08-25 */ -inline constexpr std::array kAdau1701ParamTable = {{ +inline constexpr std::array kAdau1701ParamTable = {{ {"BEEP1_ENABLE", 0}, {"BEEP1_KICK", 1}, {"BEEP1_BEEP_FREQ", 2}, - {"SI4674", 3}, - {"SI4674_1", 4}, - {"ESP32", 5}, - {"ESP32_1", 6}, - {"SINGLE1", 7}, + {"DC1", 3}, + {"DCB1_POLE", 4}, + {"DCB2_POLE", 5}, + {"DCB4_POLE", 6}, + {"DCB3_POLE", 7}, {"SSPLITTER1", 8}, - {"STMIXER1_ST0_VOLUME", 9}, - {"STMIXER1_ST1_VOLUME", 10}, - {"STMIXER1_ST2_VOLUME", 11}, - {"PARAMEQ1_ST0_B0", 12}, - {"PARAMEQ1_ST0_B1", 13}, - {"PARAMEQ1_ST0_B2", 14}, - {"PARAMEQ1_ST0_A0", 15}, - {"PARAMEQ1_ST0_A1", 16}, - {"PARAMEQ1_ST1_B0", 17}, - {"PARAMEQ1_ST1_B1", 18}, - {"PARAMEQ1_ST1_B2", 19}, - {"PARAMEQ1_ST1_A0", 20}, - {"PARAMEQ1_ST1_A1", 21}, - {"PARAMEQ1_ST2_B0", 22}, - {"PARAMEQ1_ST2_B1", 23}, - {"PARAMEQ1_ST2_B2", 24}, - {"PARAMEQ1_ST2_A0", 25}, - {"PARAMEQ1_ST2_A1", 26}, - {"PARAMEQ1_ST3_B0", 27}, - {"PARAMEQ1_ST3_B1", 28}, - {"PARAMEQ1_ST3_B2", 29}, - {"PARAMEQ1_ST3_A0", 30}, - {"PARAMEQ1_ST3_A1", 31}, - {"PARAMEQ1_ST4_B0", 32}, - {"PARAMEQ1_ST4_B1", 33}, - {"PARAMEQ1_ST4_B2", 34}, - {"PARAMEQ1_ST4_A0", 35}, - {"PARAMEQ1_ST4_A1", 36}, - {"PARAMEQ1_ST5_B0", 37}, - {"PARAMEQ1_ST5_B1", 38}, - {"PARAMEQ1_ST5_B2", 39}, - {"PARAMEQ1_ST5_A0", 40}, - {"PARAMEQ1_ST5_A1", 41}, - {"MULTIPLE1", 42}, - {"MULTIPLE1_1", 43}, - {"LIMITER1_S1", 44}, - {"LIMITER1_INT1", 45}, - {"LIMITER1_S2", 46}, - {"LIMITER1_INT2", 47}, - {"LIMITER1_S3", 48}, - {"LIMITER1_INT3", 49}, - {"LIMITER1_S4", 50}, - {"LIMITER1_INT4", 51}, - {"LIMITER1_C1", 52}, - {"LIMITER1_C2", 53}, - {"LIMITER1_C3", 54}, - {"LIMITER1_THRESHOLD", 55}, - {"LIMITER1_RMS", 56}, - {"LIMITER1_DECAY", 57}, - {"LIMITER1_DECAYCOMPLEMENT", 58}, - {"LIMITER2_S1", 59}, - {"LIMITER2_INT1", 60}, - {"LIMITER2_S2", 61}, - {"LIMITER2_INT2", 62}, - {"LIMITER2_S3", 63}, - {"LIMITER2_INT3", 64}, - {"LIMITER2_S4", 65}, - {"LIMITER2_INT4", 66}, - {"LIMITER2_C1", 67}, - {"LIMITER2_C2", 68}, - {"LIMITER2_C3", 69}, - {"LIMITER2_THRESHOLD", 70}, - {"LIMITER2_RMS", 71}, - {"LIMITER2_DECAY", 72}, - {"LIMITER2_DECAYCOMPLEMENT", 73}, + {"COMPRESSOR1_0", 9}, + {"COMPRESSOR1_1", 10}, + {"COMPRESSOR1_2", 11}, + {"COMPRESSOR1_3", 12}, + {"COMPRESSOR1_4", 13}, + {"COMPRESSOR1_5", 14}, + {"COMPRESSOR1_6", 15}, + {"COMPRESSOR1_7", 16}, + {"COMPRESSOR1_8", 17}, + {"COMPRESSOR1_9", 18}, + {"COMPRESSOR1_10", 19}, + {"COMPRESSOR1_11", 20}, + {"COMPRESSOR1_12", 21}, + {"COMPRESSOR1_13", 22}, + {"COMPRESSOR1_14", 23}, + {"COMPRESSOR1_15", 24}, + {"COMPRESSOR1_16", 25}, + {"COMPRESSOR1_17", 26}, + {"COMPRESSOR1_18", 27}, + {"COMPRESSOR1_19", 28}, + {"COMPRESSOR1_20", 29}, + {"COMPRESSOR1_21", 30}, + {"COMPRESSOR1_22", 31}, + {"COMPRESSOR1_23", 32}, + {"COMPRESSOR1_24", 33}, + {"COMPRESSOR1_25", 34}, + {"COMPRESSOR1_26", 35}, + {"COMPRESSOR1_27", 36}, + {"COMPRESSOR1_28", 37}, + {"COMPRESSOR1_29", 38}, + {"COMPRESSOR1_30", 39}, + {"COMPRESSOR1_31", 40}, + {"COMPRESSOR1_32", 41}, + {"COMPRESSOR1_33", 42}, + {"COMPRESSOR1_RMS", 43}, + {"COMPRESSOR1_POST_GAIN", 44}, + {"COMPRESSOR1_HOLD", 45}, + {"COMPRESSOR1_DECAY", 46}, + {"1XRTA3_TCONST", 47}, + {"1XRTA3_HOLD", 48}, + {"1XRTA3_DECAY", 49}, + {"1XRTA3", 2074}, + {"1XRTA4_TCONST", 50}, + {"1XRTA4_HOLD", 51}, + {"1XRTA4_DECAY", 52}, + {"1XRTA4", 2074}, + {"1XRTA1_TCONST", 53}, + {"1XRTA1_HOLD", 54}, + {"1XRTA1_DECAY", 55}, + {"1XRTA1", 2074}, + {"1XRTA2_TCONST", 56}, + {"1XRTA2_HOLD", 57}, + {"1XRTA2_DECAY", 58}, + {"1XRTA2", 2074}, + {"PARAMEQ1_ST0_B0", 59}, + {"PARAMEQ1_ST0_B1", 60}, + {"PARAMEQ1_ST0_B2", 61}, + {"PARAMEQ1_ST0_A0", 62}, + {"PARAMEQ1_ST0_A1", 63}, + {"PARAMEQ1_ST1_B0", 64}, + {"PARAMEQ1_ST1_B1", 65}, + {"PARAMEQ1_ST1_B2", 66}, + {"PARAMEQ1_ST1_A0", 67}, + {"PARAMEQ1_ST1_A1", 68}, + {"PARAMEQ1_ST2_B0", 69}, + {"PARAMEQ1_ST2_B1", 70}, + {"PARAMEQ1_ST2_B2", 71}, + {"PARAMEQ1_ST2_A0", 72}, + {"PARAMEQ1_ST2_A1", 73}, + {"PARAMEQ1_ST3_B0", 74}, + {"PARAMEQ1_ST3_B1", 75}, + {"PARAMEQ1_ST3_B2", 76}, + {"PARAMEQ1_ST3_A0", 77}, + {"PARAMEQ1_ST3_A1", 78}, + {"PARAMEQ1_ST4_B0", 79}, + {"PARAMEQ1_ST4_B1", 80}, + {"PARAMEQ1_ST4_B2", 81}, + {"PARAMEQ1_ST4_A0", 82}, + {"PARAMEQ1_ST4_A1", 83}, + {"PARAMEQ1_ST5_B0", 84}, + {"PARAMEQ1_ST5_B1", 85}, + {"PARAMEQ1_ST5_B2", 86}, + {"PARAMEQ1_ST5_A0", 87}, + {"PARAMEQ1_ST5_A1", 88}, + {"SPHAT1_B0LO0", 89}, + {"SPHAT1_B0LO1", 90}, + {"SPHAT1_B0LO2", 91}, + {"SPHAT1_B0LO3", 92}, + {"SPHAT1_B0LO4", 93}, + {"SPHAT1_B0LO5", 94}, + {"SPHAT1_B0LO6", 95}, + {"SPHAT1_B0LO7", 96}, + {"SPHAT1_B0LO8", 97}, + {"SPHAT1_B0LO9", 98}, + {"SPHAT1_GAINHI", 99}, + {"SPHAT1_GAINLO", 100}, + {"SPHAT1_GAININV", 101}, + {"SPHAT1_COMP_BASE0", 102}, + {"SPHAT1_COMP_BASE1", 103}, + {"SPHAT1_COMP_BASE2", 104}, + {"SPHAT1_COMP_BASE3", 105}, + {"SPHAT1_COMP_BASE4", 106}, + {"SPHAT1_COMP_BASE5", 107}, + {"SPHAT1_COMP_BASE6", 108}, + {"SPHAT1_COMP_BASE7", 109}, + {"SPHAT1_COMP_BASE8", 110}, + {"SPHAT1_COMP_BASE9", 111}, + {"SPHAT1_COMP_BASE10", 112}, + {"SPHAT1_COMP_BASE11", 113}, + {"SPHAT1_COMP_BASE12", 114}, + {"SPHAT1_COMP_BASE13", 115}, + {"SPHAT1_COMP_BASE14", 116}, + {"SPHAT1_COMP_BASE15", 117}, + {"SPHAT1_COMP_BASE16", 118}, + {"SPHAT1_COMP_BASE17", 119}, + {"SPHAT1_COMP_BASE18", 120}, + {"SPHAT1_COMP_BASE19", 121}, + {"SPHAT1_COMP_BASE20", 122}, + {"SPHAT1_COMP_BASE21", 123}, + {"SPHAT1_COMP_BASE22", 124}, + {"SPHAT1_COMP_BASE23", 125}, + {"SPHAT1_COMP_BASE24", 126}, + {"SPHAT1_COMP_BASE25", 127}, + {"SPHAT1_COMP_BASE26", 128}, + {"SPHAT1_COMP_BASE27", 129}, + {"SPHAT1_COMP_BASE28", 130}, + {"SPHAT1_COMP_BASE29", 131}, + {"SPHAT1_COMP_BASE30", 132}, + {"SPHAT1_COMP_BASE31", 133}, + {"SPHAT1_COMP_BASE32", 134}, + {"SPHAT1_COMP_BASE33", 135}, + {"SPHAT1_RMS", 136}, + {"SPHAT1_DECAY", 137}, + {"SPHAT1_HOLD", 138}, + {"SPHAT1_SPREAD1", 139}, + {"SPHAT1_SPREAD2", 140}, + {"GENFILTER1_ST0_B0", 141}, + {"GENFILTER1_ST0_B1", 142}, + {"GENFILTER1_ST0_B2", 143}, + {"GENFILTER1_ST0_A1", 144}, + {"GENFILTER1_ST0_A2", 145}, + {"MULTIPLE1", 146}, + {"MULTIPLE1_1", 147}, + {"BASSBOOST1_BASSFREQUENCY", 148}, + {"BASSBOOST1_B0", 149}, + {"BASSBOOST1_B1", 150}, + {"BASSBOOST1_B2", 151}, + {"BASSBOOST1_A1", 152}, + {"BASSBOOST1_A2", 153}, + {"BASSBOOST1_TABLE0", 154}, + {"BASSBOOST1_TABLE1", 155}, + {"BASSBOOST1_TABLE2", 156}, + {"BASSBOOST1_TABLE3", 157}, + {"BASSBOOST1_TABLE4", 158}, + {"BASSBOOST1_TABLE5", 159}, + {"BASSBOOST1_TABLE6", 160}, + {"BASSBOOST1_TABLE7", 161}, + {"BASSBOOST1_TABLE8", 162}, + {"BASSBOOST1_TABLE9", 163}, + {"BASSBOOST1_TABLE10", 164}, + {"BASSBOOST1_TABLE11", 165}, + {"BASSBOOST1_TABLE12", 166}, + {"BASSBOOST1_TABLE13", 167}, + {"BASSBOOST1_TABLE14", 168}, + {"BASSBOOST1_TABLE15", 169}, + {"BASSBOOST1_TABLE16", 170}, + {"BASSBOOST1_TABLE17", 171}, + {"BASSBOOST1_TABLE18", 172}, + {"BASSBOOST1_TABLE19", 173}, + {"BASSBOOST1_TABLE20", 174}, + {"BASSBOOST1_TABLE21", 175}, + {"BASSBOOST1_TABLE22", 176}, + {"BASSBOOST1_TABLE23", 177}, + {"BASSBOOST1_TABLE24", 178}, + {"BASSBOOST1_TABLE25", 179}, + {"BASSBOOST1_TABLE26", 180}, + {"BASSBOOST1_TABLE27", 181}, + {"BASSBOOST1_TABLE28", 182}, + {"BASSBOOST1_TABLE29", 183}, + {"BASSBOOST1_TABLE30", 184}, + {"BASSBOOST1_TABLE31", 185}, + {"BASSBOOST1_TABLE32", 186}, + {"BASSBOOST1_TIMECONSTANT", 187}, + {"1XRTA2_2_TCONST", 188}, + {"1XRTA2_2_HOLD", 189}, + {"1XRTA2_2_DECAY", 190}, + {"1XRTA2_2", 2074}, + {"1XRTA1_2_TCONST", 191}, + {"1XRTA1_2_HOLD", 192}, + {"1XRTA1_2_DECAY", 193}, + {"1XRTA1_2", 2074}, + {"LIMITER2_S1", 194}, + {"LIMITER2_INT1", 195}, + {"LIMITER2_S2", 196}, + {"LIMITER2_INT2", 197}, + {"LIMITER2_S3", 198}, + {"LIMITER2_INT3", 199}, + {"LIMITER2_S4", 200}, + {"LIMITER2_INT4", 201}, + {"LIMITER2_C1", 202}, + {"LIMITER2_C2", 203}, + {"LIMITER2_C3", 204}, + {"LIMITER2_THRESHOLD", 205}, + {"LIMITER2_RMS", 206}, + {"LIMITER2_DECAY", 207}, + {"LIMITER2_DECAYCOMPLEMENT", 208}, + {"LIMITER1_S1", 209}, + {"LIMITER1_INT1", 210}, + {"LIMITER1_S2", 211}, + {"LIMITER1_INT2", 212}, + {"LIMITER1_S3", 213}, + {"LIMITER1_INT3", 214}, + {"LIMITER1_S4", 215}, + {"LIMITER1_INT4", 216}, + {"LIMITER1_C1", 217}, + {"LIMITER1_C2", 218}, + {"LIMITER1_C3", 219}, + {"LIMITER1_THRESHOLD", 220}, + {"LIMITER1_RMS", 221}, + {"LIMITER1_DECAY", 222}, + {"LIMITER1_DECAYCOMPLEMENT", 223}, }}; /** @@ -127,7 +284,7 @@ inline constexpr std::array kAdau1701ParamTable = {{ * @pubstate none * * @author Michele Bigi - * @date 2026-08-18 + * @date 2026-08-25 */ [[nodiscard]] inline std::optional findAdau1701ParamAddress( std::string_view name) noexcept diff --git a/Software/components/drivers/adau1701/src/Adau1701Driver.cpp b/Software/components/drivers/adau1701/src/Adau1701Driver.cpp index d0924db..823f1ff 100644 --- a/Software/components/drivers/adau1701/src/Adau1701Driver.cpp +++ b/Software/components/drivers/adau1701/src/Adau1701Driver.cpp @@ -358,18 +358,22 @@ namespace adau1701 return safeloadFixpoint(paramAddr, core::gainDbToLinearFixpoint(gain)); } - std::expected Adau1701Driver::setInputVolume( - core::MixSource source, core::GainDb left, core::GainDb right) + std::expected Adau1701Driver::selectSource( + core::ActiveSource source) { if (auto ready = ensureBooted(); !ready) { return ready; } - if (auto result = safeloadGain(paramAddrInputLeft(source), left); !result) - { - return result; - } - return safeloadGain(paramAddrInputRight(source), right); + // MX1 (DCinputmux_stereo) reads DC1 as a raw 32-bit integer pair + // index (0/1/2), NOT the 5.23 fixpoint conversion its compiled + // TYPE_DC1/VALUE_DC1 macros would suggest -- confirmed live + // 2026-08-25 (a 5.23-encoded write left the source unchanged; the + // raw integer switched Radio/Bluetooth/Beep correctly). 0=Radio, + // 1=Bluetooth (ESP32), 2=Beep, per paramSourceIndex(). + const auto index = + static_cast(paramSourceIndex(source)); + return safeloadFixpoint(static_cast(ADDR_DC1), index); } std::expected Adau1701Driver::setMasterVolume( @@ -387,45 +391,6 @@ namespace adau1701 return safeloadGain(static_cast(ADDR_MULTIPLE1_1), right); } - std::expected Adau1701Driver::applyMixer( - const core::MixerState &mixer) - { - if (auto ready = ensureBooted(); !ready) - { - return ready; - } - if (auto result = setInputVolume(core::MixSource::Si4684, mixer.si4684Left, - mixer.si4684Right); - !result) - { - ESP_LOGW(kTag, "applyMixer: si4684 input safeload failed"); - return result; - } - if (auto result = setInputVolume(core::MixSource::Esp32, mixer.esp32Left, - mixer.esp32Right); - !result) - { - ESP_LOGW(kTag, "applyMixer: esp32 input safeload failed"); - return result; - } - if (auto result = - safeloadGain(static_cast(ADDR_STMIXER1_ST0_VOLUME), - mixer.mixLeft); - !result) - { - ESP_LOGW(kTag, "applyMixer: st0 safeload failed"); - return result; - } - if (auto result = safeloadGain( - static_cast(ADDR_STMIXER1_ST1_VOLUME), mixer.mixRight); - !result) - { - ESP_LOGW(kTag, "applyMixer: st1 safeload failed"); - return result; - } - return {}; - } - std::expected Adau1701Driver::setEqBand( core::EqBandIndex band, core::GainDb gain, core::FrequencyHz center, float q) { @@ -487,6 +452,103 @@ namespace adau1701 return safeloadFixpoint(static_cast(ADDR_BEEP1_KICK), value); } + namespace + { + // Compiled SigmaStudio defaults for Bass Boost1's crossover filter + // and 33-point compander curve (DigiRadioFinale_IC_1_PARAM.h, + // 2026-08-25 export). setBassBoostLevel() interpolates from these + // toward an identity/unity bypass as level goes from 100 to 0 -- + // ADI's Dynamic Bass Boost algorithm internals aren't documented, + // so this is a linear blend of the known-good compiled curve, not + // a re-derivation of the algorithm's own math. + constexpr float kBassBoostB0 = 4.24433093514364e-05F; + constexpr float kBassBoostB1 = 8.48866187028728e-05F; + constexpr float kBassBoostB2 = 4.24433093514364e-05F; + constexpr float kBassBoostA1 = 1.98148576456209F; + constexpr float kBassBoostA2 = -0.981655537799498F; + constexpr float kBassBoostTable[33] = { + 0.319153785510076F, 0.319153785510076F, 0.319153785510076F, + 0.319153785510076F, 0.319153785510076F, 0.319153785510076F, + 0.319153785510076F, 0.319153785510076F, 0.319153785510076F, + 0.319153785510076F, 0.319153785510076F, 0.319153785510076F, + 0.319153785510076F, 0.319153785510076F, 0.319153785510076F, + 0.319153785510076F, 0.319153785510076F, 0.319153785510076F, + 0.319153785510076F, 0.319153785510076F, 0.319153785510076F, + 0.319153785510076F, 0.319153785510076F, 0.319153785510076F, + 0.322849412171264F, 0.334195040026114F, 0.345939377826122F, + 0.358096437102636F, 0.370680721782576F, 0.383707245492279F, + 0.39719154946944F, 0.411149721104522F, 0.425598413133743F, + }; + + constexpr float kSpreadSpread1 = 0.0629093159447337F; + constexpr float kSpreadSpread2 = 0.0193038143874401F; + + [[nodiscard]] float towardIdentity(float compiled, float identity, + float level) noexcept + { + return identity + (compiled - identity) * level; + } + } // namespace + + std::expected Adau1701Driver::setBassBoostLevel( + core::EnhanceLevel level) + { + if (auto ready = ensureBooted(); !ready) + { + return ready; + } + const float t = level.fraction(); + unsigned addrs[5U]; + int values[5U]; + addrs[0] = static_cast(ADDR_BASSBOOST1_B0); + addrs[1] = static_cast(ADDR_BASSBOOST1_B1); + addrs[2] = static_cast(ADDR_BASSBOOST1_B2); + addrs[3] = static_cast(ADDR_BASSBOOST1_A1); + addrs[4] = static_cast(ADDR_BASSBOOST1_A2); + values[0] = core::floatToFixpoint823(towardIdentity(kBassBoostB0, 1.0F, t)); + values[1] = core::floatToFixpoint823(towardIdentity(kBassBoostB1, 0.0F, t)); + values[2] = core::floatToFixpoint823(towardIdentity(kBassBoostB2, 0.0F, t)); + values[3] = core::floatToFixpoint823(towardIdentity(kBassBoostA1, 0.0F, t)); + values[4] = core::floatToFixpoint823(towardIdentity(kBassBoostA2, 0.0F, t)); + if (sigma_safeload_block(5U, addrs, values) != 0) + { + return std::unexpected(Adau1701Error::SafeloadFailed); + } + + for (unsigned i = 0U; i < 33U; ++i) + { + const unsigned addr = + static_cast(ADDR_BASSBOOST1_TABLE0) + i; + const std::int32_t value = core::floatToFixpoint823( + towardIdentity(kBassBoostTable[i], 1.0F, t)); + if (auto result = safeloadFixpoint(addr, value); !result) + { + return result; + } + } + return {}; + } + + std::expected Adau1701Driver::setStereoSpreadLevel( + core::EnhanceLevel level) + { + if (auto ready = ensureBooted(); !ready) + { + return ready; + } + const float t = level.fraction(); + if (auto result = safeloadFixpoint( + static_cast(ADDR_SPHAT1_SPREAD1), + core::floatToFixpoint823(kSpreadSpread1 * t)); + !result) + { + return result; + } + return safeloadFixpoint( + static_cast(ADDR_SPHAT1_SPREAD2), + core::floatToFixpoint823(kSpreadSpread2 * t)); + } + std::expected Adau1701Driver::writeRawParam( unsigned address, float value) { @@ -535,7 +597,7 @@ namespace adau1701 { return ready; } - if (auto result = applyMixer(profile.mixer); !result) + if (auto result = selectSource(profile.activeSource); !result) { return result; } @@ -543,7 +605,17 @@ namespace adau1701 { return result; } - return setMasterVolume(profile.masterLeft, profile.masterRight); + if (auto result = setMasterVolume(profile.masterLeft, profile.masterRight); + !result) + { + return result; + } + if (auto result = setBassBoostLevel(profile.enhancements.bass); + !result) + { + return result; + } + return setStereoSpreadLevel(profile.enhancements.stereo); } } // namespace adau1701 diff --git a/Software/components/drivers/adau1701/src/Adau1701Dsp.cpp b/Software/components/drivers/adau1701/src/Adau1701Dsp.cpp index ad850bf..5614114 100644 --- a/Software/components/drivers/adau1701/src/Adau1701Dsp.cpp +++ b/Software/components/drivers/adau1701/src/Adau1701Dsp.cpp @@ -43,10 +43,10 @@ std::expected Adau1701Dsp::applyProfile( return {}; } -std::expected Adau1701Dsp::applyMixer( - const core::MixerState& mixer) +std::expected Adau1701Dsp::selectSource( + core::ActiveSource source) { - if (auto result = driver_.applyMixer(mixer); !result) { + if (auto result = driver_.selectSource(source); !result) { return std::unexpected(mapError(result.error())); } return {}; @@ -61,15 +61,6 @@ std::expected Adau1701Dsp::applyEq( return {}; } -std::expected Adau1701Dsp::setInputVolume( - core::MixSource source, core::GainDb left, core::GainDb right) -{ - if (auto result = driver_.setInputVolume(source, left, right); !result) { - return std::unexpected(mapError(result.error())); - } - return {}; -} - std::expected Adau1701Dsp::setMasterVolume( core::GainDb left, core::GainDb right) { @@ -97,6 +88,24 @@ std::expected Adau1701Dsp::setBeepEnabled(bool enabled) return {}; } +std::expected Adau1701Dsp::setBassBoostLevel( + core::EnhanceLevel level) +{ + if (auto result = driver_.setBassBoostLevel(level); !result) { + return std::unexpected(mapError(result.error())); + } + return {}; +} + +std::expected Adau1701Dsp::setStereoSpreadLevel( + core::EnhanceLevel level) +{ + if (auto result = driver_.setStereoSpreadLevel(level); !result) { + return std::unexpected(mapError(result.error())); + } + return {}; +} + std::expected Adau1701Dsp::writeRawParam( unsigned address, float value) { diff --git a/Software/components/services/audio/include/audio/AudioService.hpp b/Software/components/services/audio/include/audio/AudioService.hpp index f806394..78fe69d 100644 --- a/Software/components/services/audio/include/audio/AudioService.hpp +++ b/Software/components/services/audio/include/audio/AudioService.hpp @@ -12,16 +12,15 @@ */ #pragma once +#include "core/ActiveSource.hpp" #include "core/AudioProfile.hpp" #include "core/DspError.hpp" #include "core/EnhanceLevel.hpp" -#include "core/EnhancementsDesign.hpp" #include "core/EqBandIndex.hpp" #include "core/FrequencyHz.hpp" #include "core/GainDb.hpp" #include "core/IAudioProfileStore.hpp" #include "core/IDsp.hpp" -#include "core/MixSource.hpp" #include "core/StoreError.hpp" #include @@ -106,22 +105,19 @@ public: const core::AudioProfile& profile, bool persist); /** - * @brief setInputVolume — update one input path and apply live. + * @brief selectSource — switch MX1's active input pair and apply live. * - * @dname setInputVolume - * @param source Si4684 or ESP32 path. - * @param left Left gain. - * @param right Right gain. + * @dname selectSource + * @param source Which stereo pair MX1 should pass through. * @param persist When true and store is set, write NVS. * @return Ok on success, or StoreError wrapping DspError/IoFailed. - * @pubstate updates profile_.mixer and safeloads. + * @pubstate updates profile_.activeSource and safeloads. * * @author Michele Bigi - * @date 2026-07-06 + * @date 2026-08-25 */ - [[nodiscard]] std::expected setInputVolume( - core::MixSource source, core::GainDb left, core::GainDb right, - bool persist); + [[nodiscard]] std::expected selectSource( + core::ActiveSource source, bool persist); /** * @brief setMasterVolume — update master output and apply live. @@ -239,9 +235,6 @@ private: [[nodiscard]] std::expected applyProfileToDsp( const core::AudioProfile& profile); - [[nodiscard]] std::expected applyEffectiveEq( - bool persist); - core::IDsp& dsp_; core::IAudioProfileStore* store_; core::AudioProfile profile_; diff --git a/Software/components/services/audio/src/AudioService.cpp b/Software/components/services/audio/src/AudioService.cpp index 42f3440..2b49cab 100644 --- a/Software/components/services/audio/src/AudioService.cpp +++ b/Software/components/services/audio/src/AudioService.cpp @@ -21,15 +21,6 @@ namespace { constexpr char kTag[] = "AudioService"; -[[nodiscard]] core::AudioProfile profileForHardware( - const core::AudioProfile& profile) noexcept -{ - core::AudioProfile hardware = profile; - hardware.eq = - core::applyEnhancementsToEq(profile.eq, profile.enhancements); - return hardware; -} - } // namespace AudioService::AudioService(core::IDsp& dsp, core::IAudioProfileStore* store) @@ -81,28 +72,13 @@ std::expected AudioService::persistProfile() const std::expected AudioService::applyProfileToDsp( const core::AudioProfile& profile) { - const core::AudioProfile hardware = profileForHardware(profile); - if (auto applied = dsp_.applyProfile(hardware); !applied) { + if (auto applied = dsp_.applyProfile(profile); !applied) { ESP_LOGW(kTag, "applyProfileToDsp: DSP safeload failed"); return std::unexpected(core::StoreError::IoFailed); } return {}; } -std::expected AudioService::applyEffectiveEq( - bool persist) -{ - const core::EqProfile effective = core::applyEnhancementsToEq( - profile_.eq, profile_.enhancements); - if (auto applied = dsp_.applyEq(effective); !applied) { - return std::unexpected(core::StoreError::IoFailed); - } - if (persist) { - return persistProfile(); - } - return {}; -} - std::expected AudioService::applyProfile( const core::AudioProfile& profile, bool persist) { @@ -116,21 +92,13 @@ std::expected AudioService::applyProfile( return {}; } -std::expected AudioService::setInputVolume( - core::MixSource source, core::GainDb left, core::GainDb right, bool persist) +std::expected AudioService::selectSource( + core::ActiveSource source, bool persist) { - if (auto applied = dsp_.setInputVolume(source, left, right); !applied) { + if (auto applied = dsp_.selectSource(source); !applied) { return std::unexpected(core::StoreError::IoFailed); } - - if (source == core::MixSource::Si4684) { - profile_.mixer.si4684Left = left; - profile_.mixer.si4684Right = right; - } else { - profile_.mixer.esp32Left = left; - profile_.mixer.esp32Right = right; - } - + profile_.activeSource = source; if (persist) { return persistProfile(); } @@ -155,10 +123,10 @@ std::expected AudioService::applyRadioFirstMix( bool persist) { const core::GainDb unity = core::GainDb::zero(); - profile_.mixer = core::MixerState::radioFirst(); + profile_.activeSource = core::ActiveSource::Radio; profile_.masterLeft = unity; profile_.masterRight = unity; - if (auto applied = dsp_.applyMixer(profile_.mixer); !applied) { + if (auto applied = dsp_.selectSource(profile_.activeSource); !applied) { return std::unexpected(core::StoreError::IoFailed); } if (auto master = dsp_.setMasterVolume(unity, unity); !master) { @@ -179,21 +147,39 @@ std::expected AudioService::setEqBand( .center = center, .q = q, }); - return applyEffectiveEq(persist); + if (auto applied = dsp_.applyEq(profile_.eq); !applied) { + return std::unexpected(core::StoreError::IoFailed); + } + if (persist) { + return persistProfile(); + } + return {}; } std::expected AudioService::setStereoEnhance( core::EnhanceLevel level, bool persist) { + if (auto applied = dsp_.setStereoSpreadLevel(level); !applied) { + return std::unexpected(core::StoreError::IoFailed); + } profile_.enhancements.stereo = level; - return applyEffectiveEq(persist); + if (persist) { + return persistProfile(); + } + return {}; } std::expected AudioService::setBassEnhance( core::EnhanceLevel level, bool persist) { + if (auto applied = dsp_.setBassBoostLevel(level); !applied) { + return std::unexpected(core::StoreError::IoFailed); + } profile_.enhancements.bass = level; - return applyEffectiveEq(persist); + if (persist) { + return persistProfile(); + } + return {}; } std::expected AudioService::setBeepEnabled(bool enabled)