From 01ae27faa77d215dbcacb41ee70ba0ac7124bf00 Mon Sep 17 00:00:00 2001 From: frntc <48584231+frntc@users.noreply.github.com> Date: Wed, 10 Nov 2021 21:12:08 +0100 Subject: [PATCH] Add files via upload --- Source/SIDKick/AudioStreamSID.cpp | 1029 ++++++-- Source/SIDKick/AudioStreamSID.h | 20 +- Source/SIDKick/LED_Helpers.h | 191 ++ Source/SIDKick/SIDKick.ino | 1754 ++++++++++---- Source/SIDKick/config.h | 3620 +++++++++++++++-------------- Source/SIDKick/fmopl.cpp | 178 +- Source/SIDKick/fmopl.h | 6 +- Source/SIDKick/globals.h | 59 + Source/SIDKick/incl_resid.cpp | 48 +- Source/SIDKick/incl_resid.h | 8 +- Source/SIDKick/launch.h | 19 +- Source/SIDKick/prgslots.cpp | 6 +- Source/SIDKick/prgslots.h | 5 +- Source/SIDKick/samvoice.h | 2 +- 14 files changed, 4479 insertions(+), 2466 deletions(-) create mode 100644 Source/SIDKick/LED_Helpers.h create mode 100644 Source/SIDKick/globals.h diff --git a/Source/SIDKick/AudioStreamSID.cpp b/Source/SIDKick/AudioStreamSID.cpp index b4c4dc8..12e6b18 100644 --- a/Source/SIDKick/AudioStreamSID.cpp +++ b/Source/SIDKick/AudioStreamSID.cpp @@ -8,7 +8,7 @@ AudioStreamSID.cpp - SIDKick - SID-replacement with SID and Sound Expander Emulation based on Teensy 4.1 + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 (using reSID by Dag Lem and FMOPL by Jarek Burczynski, Tatsuyuki Satoh, Marco van den Heuvel, and Acho A. Tang) Copyright (c) 2019-2021 Carsten Dachsbacher @@ -28,56 +28,92 @@ along with this program. If not, see . */ +#include "globals.h" + #include "AudioStreamSID.h" #include #include #include "samvoice.h" -#define SAMPLERATE AUDIO_SAMPLE_RATE_EXACT -unsigned int CLOCKFREQ = 985248; +#include "imxrt.h" +#include "utility/imxrt_hw.h" -bool useSID16 = true; -bool emulateSID2 = true, emulateFM = false, readRegistersFM = false, activeSID2 = false, activeFM = false, registerRead = true; +#define SAMPLERATE AUDIO_SAMPLE_RATE_EXACT -uint32_t SID1_MODEL = 6581; -uint32_t SID2_MODEL = 6581; +// overwritten in SIDKick.ino according to auto detection +unsigned int CLOCKFREQ = 985248; +unsigned int CLOCKFREQ_NOMINAL = 985248; + +bool useSID16 = true, + emulateSID2 = true, + emulateFM = false, + readRegistersFM = false, + activeSID2 = false, + activeFM = false, + activeSID2Prev = false, + activeFMPrev = false, + registerRead = true, + emulateMIDI = false, + midiInputEnabled = false, + driveLEDs = false; + +uint32_t SID1_MODEL = 0; +uint32_t SID2_MODEL = 0; uint32_t SID2_ADDR = 0xffffffff; int32_t cfgVolSID1_Left, cfgVolSID1_Right; int32_t cfgVolSID2_Left, cfgVolSID2_Right; int32_t cfgVolOPL_Left, cfgVolOPL_Right; +int32_t actVolSID1_Left, actVolSID1_Right; +int32_t actVolSID2_Left, actVolSID2_Right; +int32_t actVolOPL_Left, actVolOPL_Right; + #define max( a, b ) ((a)>(b)?(a):(b)) #define min( a, b ) ((a)<(b)?(a):(b)) +extern uint32_t nSIDFMDelay; +extern uint32_t nMIDIDelay; +uint8_t samActive = 0; + +#ifdef FANCY_LED +// look into this file for all the variables... +#include "LED_Helpers.h" +#endif + uint32_t samCurPos, samEndPos1, samStartPos2, samEndPos2; uint8_t samSpeaking = 0; -void speakSAM( uint8_t digit ) +void speakSAM( uint8_t digit, bool onlyDigit ) { samCurPos = 0; samEndPos1 = ( 18 * 1024 - 1 ) << 1; samStartPos2 = samEndPos1 + ( ( digit * 12 * 1024 ) << 1 ); samEndPos2 = samStartPos2 + ( ( 12 * 1024 ) << 1 ); + if ( onlyDigit ) + samCurPos = samStartPos2; samSpeaking = 1; } +uint8_t firstBufferAfterReset = 0; +uint8_t recalibrateFrequency = 0; + void AudioStreamSID::init() { sid16_1 = new SID16(); sid16_2 = new SID16(); +#ifndef NO_RESID10 sid_1 = new RESID_NAMESPACE::SID(); sid_2 = new RESID_NAMESPACE::SID(); +#endif #ifdef EMULATE_OPL2 pOPL = ym3812_init( 3579545, SAMPLERATE ); ym3812_reset_chip( pOPL ); fmFakeOutput = 0; #endif - - //this->reset(); - + sid16_1->set_chip_model( MOS6581 ); sid16_2->set_chip_model( MOS6581 ); sid16_1->reset(); @@ -85,7 +121,8 @@ void AudioStreamSID::init() sid16_1->set_sampling_parameters( CLOCKFREQ, SAMPLE_INTERPOLATE, AUDIO_SAMPLE_RATE_EXACT ); sid16_2->set_sampling_parameters( CLOCKFREQ, SAMPLE_INTERPOLATE, AUDIO_SAMPLE_RATE_EXACT ); - sid_1->set_chip_model( RESID_NAMESPACE::MOS8580 ); +#ifndef NO_RESID10 + sid_1->set_chip_model( RESID_NAMESPACE::MOS8580 ); sid_1->set_voice_mask( 0x07 ); sid_1->input( 0 ); @@ -100,17 +137,59 @@ void AudioStreamSID::init() int SID_gain = 97; int SID_filterbias = +500; - sid_1->adjust_filter_bias(SID_filterbias / 1000.0f); - sid_2->adjust_filter_bias(SID_filterbias / 1000.0f); + sid_1->adjust_filter_bias( SID_filterbias / 1000.0f ); + sid_2->adjust_filter_bias( SID_filterbias / 1000.0f ); sid_1->set_sampling_parameters( CLOCKFREQ, RESID_NAMESPACE::SAMPLE_FAST, AUDIO_SAMPLE_RATE_EXACT, AUDIO_SAMPLE_RATE_EXACT * SID_passband / 200.0f, SID_gain / 100.0f ); sid_2->set_sampling_parameters( CLOCKFREQ, RESID_NAMESPACE::SAMPLE_FAST, AUDIO_SAMPLE_RATE_EXACT, AUDIO_SAMPLE_RATE_EXACT * SID_passband / 200.0f, SID_gain / 100.0f ); +#endif - activeSID2 = false; - activeFM = false; + activeSID2 = activeSID2Prev = false; + activeFM = activeFMPrev = false; } -void AudioStreamSID::updateConfiguration( uint8_t *cfg ) +void AudioStreamSID::updateMixer( bool playSID2, bool playFM ) +{ + actVolSID1_Left = cfgVolSID1_Left; + actVolSID1_Right = cfgVolSID1_Right; + actVolSID2_Left = cfgVolSID2_Left; + actVolSID2_Right = cfgVolSID2_Right; + actVolOPL_Left = cfgVolOPL_Left; + actVolOPL_Right = cfgVolOPL_Right; + + if ( !playSID2 ) + actVolSID2_Left = actVolSID2_Right = 0; + if ( !playFM ) + actVolOPL_Left = actVolOPL_Right = 0; + +#ifdef DEBUG_OUTPUT + Serial.print( "SID #2: " ); + if ( playSID2 ) + Serial.println( "active" ); else + Serial.println( "off" ); + + Serial.print( "FM: " ); + if ( playFM ) + Serial.println( "active" ); else + Serial.println( "off" ); +#endif + + // old: + //int maxVolFactor = max( actVolSID1_Left, max( actVolSID1_Right, max( actVolSID2_Left, max( actVolSID2_Right, max( actVolOPL_Left, actVolOPL_Right ) ) ) ) ); + int maxVolFactor = max( actVolSID1_Left + actVolSID2_Left + actVolOPL_Left, actVolSID1_Right + actVolSID2_Right + actVolOPL_Right ); + + const int globalVolume = 255; // old: 128 + actVolSID1_Left = actVolSID1_Left * globalVolume / maxVolFactor; + actVolSID1_Right = actVolSID1_Right * globalVolume / maxVolFactor; + actVolSID2_Left = actVolSID2_Left * globalVolume / maxVolFactor; + actVolSID2_Right = actVolSID2_Right * globalVolume / maxVolFactor; + actVolOPL_Left = actVolOPL_Left * globalVolume / maxVolFactor; + actVolOPL_Right = actVolOPL_Right * globalVolume / maxVolFactor; +} + +static int muteTest = 0; + +void AudioStreamSID::updateConfiguration( uint8_t *cfg, uint8_t *globalCfg ) { switch ( cfg[ 10 ] ) // sid 2 address settings { @@ -136,20 +215,32 @@ void AudioStreamSID::updateConfiguration( uint8_t *cfg ) } registerRead = cfg[ 2 ] > 0 ? true : false; + #ifdef NO_RESID10 + useSID16 = true; + #else useSID16 = cfg[ 19 ] == 0 ? true : false; + #endif emulateFM = cfg[ 16 ] > 0 ? true : false; readRegistersFM = cfg[ 16 ] == 1 ? true : false; emulateSID2 = cfg[ 8 ] < 3 ? true : false; + if ( !emulateSID2 ) + SID2_ADDR = 0; + if ( cfg[0] == 0 ) { SID1_MODEL = 6581; sid16_1->set_chip_model( MOS6581 ); +#ifndef NO_RESID10 sid_1->set_chip_model( RESID_NAMESPACE::MOS6581 ); + sid_1->set_voice_mask( 0x07 ); + sid_1->input( 0 ); +#endif } else { SID1_MODEL = 8580; sid16_1->set_chip_model( MOS8580 ); +#ifndef NO_RESID10 sid_1->set_chip_model( RESID_NAMESPACE::MOS8580 ); if ( cfg[0] == 1 ) // no digiboost { @@ -160,18 +251,24 @@ void AudioStreamSID::updateConfiguration( uint8_t *cfg ) sid_1->set_voice_mask( 0x0f ); sid_1->input( -(1<set_chip_model( MOS6581 ); +#ifndef NO_RESID10 sid_2->set_chip_model( RESID_NAMESPACE::MOS6581 ); + sid_2->set_voice_mask( 0x07 ); + sid_2->input( 0 ); +#endif } else if ( cfg[8] != 3 ) { SID2_MODEL = 8580; sid16_2->set_chip_model( MOS8580 ); +#ifndef NO_RESID10 sid_2->set_chip_model( RESID_NAMESPACE::MOS8580 ); if ( cfg[8] == 1 ) // no digiboost { @@ -182,6 +279,7 @@ void AudioStreamSID::updateConfiguration( uint8_t *cfg ) sid_2->set_voice_mask( 0x0f ); sid_2->input( -(1<adjust_filter_bias(SID_filterbias / 1000.0f); sid_2->set_sampling_parameters( CLOCKFREQ, RESID_NAMESPACE::SAMPLE_FAST, AUDIO_SAMPLE_RATE_EXACT, AUDIO_SAMPLE_RATE_EXACT * SID_passband / 200.0f, SID_gain / 100.0f ); } - + +#endif + +#ifdef FANCY_LED + ledWriteStatus = -1; + last_tL = 0.0f; + last_tR = 0.0f; + vuSumL = 0; + vuSumR = 0; + vuAvg = 0.0f; + vuMeter = 0; + vu_nValues = 0; + nLEDs = 0; + nLEDsL = 0; + nLEDsR = 0; + + ledVisMode = (int)cfg[ 20 ]; + driveLEDs = (ledVisMode > 0) ? true : false; + + ledColorsBufOfs = 0; + ledColors2Write = 0; + ledBits2Write = 0; + + NUM_LEDS = cfg[21] + 1; + + nSamplesCollected = 3 + (uint32_t)cfg[ 22 ]; + nSamplesCollected *= (uint32_t)64; + scaleSamples = (float)cfg[ 23 ] / 64.0f; + + if ( ledVisMode == 5 || ledVisMode == 6 ) + scaleSamples *= 4.0f; + if ( ledVisMode == 3 || ledVisMode == 4 ) + scaleSamples *= 2.0f; + if ( ledVisMode == 2 ) + scaleSamples *= 2.0f; + + scaleSamples *= 2.480903f; // from powf approximation + + scaleSamplesConfigTool = scaleSamples * 1.2f; + scaleSamplesConfigTool = 3.0f / scaleSamplesConfigTool; + + colorCycle = 0; + ledColorCycleSpeed = cfg[24]; + + // color #0 25-27 + hsv0 = (cfg[25]*255/89) << 16; + hsv0 |= cfg[26] << 11; + hsv0 |= cfg[27] << 2; + + hsv1 = (cfg[28]*255/89) << 16; + hsv1 |= cfg[29] << 11; + hsv1 |= cfg[30] << 2; + + col0 = HSV2RGB( hsv0 ); + col1 = HSV2RGB( hsv1 ); + + for ( int i = 0; i < 128; i++ ) + { + col0_cycle[ i ] = HSV2RGB( ( hsv0 & 0x00ffff ) | ( (( H_( hsv0 ) + (i * 2) ) & 255) << 16 ) ); + col1_cycle[ i ] = HSV2RGB( ( hsv1 & 0x00ffff ) | ( (( H_( hsv1 ) + (i * 2) ) & 255) << 16 ) ); + } + + hsv0 = RGB2HSV( col0 ); + hsv1 = RGB2HSV( col1 ); + #endif + + // + // MIDI + // + #ifdef SUPPORT_MIDI + extern uint8_t MIDI_START_ADDR; + extern uint8_t MIDI_END_ADDR; + emulateMIDI = true; + switch ( cfg[ 31 ] ) + { + default: + case 0: + emulateMIDI = false; + MIDI_START_ADDR = 0xff; + MIDI_END_ADDR = 0x00; + break; + case 1: // Datel + MIDI_START_ADDR = 0x04; + MIDI_END_ADDR = 0x07; + break; + case 2: // Sequential + case 4: // Namesoft + MIDI_START_ADDR = 0x00; + MIDI_END_ADDR = 0x03; + break; + case 3: // Datel & Sequential + MIDI_START_ADDR = 0x00; + MIDI_END_ADDR = 0x07; + break; + } + #endif + + midiInputEnabled = cfg[ 32 ] > 0; + + nSIDFMDelay = nMIDIDelay = 0; + extern uint8_t runningOnPAL; + + if ( cfg[ 34 ] == 0 ) + nSIDFMDelay = cfg[ 33 ] * (runningOnPAL ? 985 : 1023); else + nMIDIDelay = cfg[ 33 ] * (runningOnPAL ? 985 : 1023); + + samActive = cfg[ 35 ]; + + muteTest = 768; } @@ -232,9 +429,9 @@ void AudioStreamSID::begin() void AudioStreamSID::stop() { - //__disable_irq(); - playing = false; - //__enable_irq(); + __disable_irq(); + playing = false; + __enable_irq(); } void AudioStreamSID::continuePlaying() @@ -247,108 +444,374 @@ void AudioStreamSID::continuePlaying() extern uint32_t c64CycleCount; extern uint32_t nCyclesEmulated; -#define RING_SIZE (1024*4) +#define RING_SIZE (256) extern uint32_t ringBufGPIO[ RING_SIZE ]; extern uint32_t ringTime[ RING_SIZE ]; -extern uint32_t ringWrite; +extern uint16_t ringWrite; -uint32_t ringRead = 0; +uint16_t ringRead = 0; unsigned long long samplesElapsed = 0; - uint32_t samplesTotal = 0; -void AudioStreamSID::update() +__attribute__( ( always_inline ) ) inline uint32_t __SMLAWB(const uint32_t Rd, const uint32_t Rm, const uint32_t Rn, const uint32_t Ra) +{ + uint32_t result; + asm volatile ( "SMLAWB %0, %1, %2, %3" : "=r" (result) : "r" (Rn), "r" (Rm), "r" (Ra) ); + return(result); +} + +__attribute__( ( always_inline ) ) inline uint32_t __SSAT(const uint32_t op) +{ + uint32_t result; + asm volatile ( "SSAT %0, #16, %1" : "=r" (result) : "r" (op) ); + return(result); +} + +__attribute__( ( always_inline ) ) inline uint32_t __UQADD8(const uint32_t op1, const uint32_t op2) +{ + uint32_t result; + asm volatile ( "uqadd8 %0, %1, %2" : "=r" (result) : "r" (op1), "r" (op2) ); + return(result); +} + +__attribute__( ( always_inline ) ) inline uint32_t __UXTB16(const uint32_t op1) { + uint32_t result; + + asm volatile ( "uxtb16 %0, %1" : "=r" (result) : "r" (op1)); + return(result); +} + +static uint32_t totalCyclesPerBuffer = 0; +static uint32_t nTotalCycleCounter = 0; + +FASTRUN void AudioStreamSID::update() +{ + if ( firstBufferAfterReset > 0 ) + { + firstBufferAfterReset --; + fillBlock(); + return; + } + audio_block_t *block; audio_block_t *block2; - if ( !playing ) return; + if ( !playing ) return; block = allocate(); block2 = allocate(); - if ( block == NULL ) return; + if ( block == NULL || block2 == NULL ) return; - uint32_t nSamplesComputed = 0; + uint32_t nSamplesComputed = 0; int16_t *output = (int16_t*)block->data; int16_t *output2 = (int16_t*)block2->data; - uint32_t cycleCount = c64CycleCount; - samplesTotal += AUDIO_BLOCK_SAMPLES; - while ( nSamplesComputed < AUDIO_BLOCK_SAMPLES ) - { - unsigned long long samplesElapsedBefore = samplesElapsed; + if ( activeSID2 != activeSID2Prev || activeFM != activeFMPrev ) + { + activeSID2Prev = activeSID2; + activeFMPrev = activeFM; + updateMixer( activeSID2, activeFM ); + } + + #ifdef DYNAMIC_ADJUSTMENT_MIXER + + static long lastDiff = 0; + + static int cnt = 0; + #define BUFFER_OBSERVE 256 + if ( ++ cnt > BUFFER_OBSERVE ) + { + cnt = 0; + + static int targetCycleDiff = 4000; + if ( recalibrateFrequency ) + { + targetCycleDiff = lastDiff = (int)c64CycleCount - (int)nCyclesEmulated; + recalibrateFrequency = 0; + } + + int diff = (int)c64CycleCount - (int)nCyclesEmulated; + static int nObservations = 0; + + static int checkNextTime = 10; + if ( ++nObservations >= checkNextTime ) + { + float dC = (float)lastDiff - (float)diff; + dC += ( (float)targetCycleDiff - (float)diff ) * 0.5f; + if ( dC > 1000.0f ) dC = 1000.0f; + if ( dC < -1000.0f ) dC = -1000.0f; + uint32_t S = nObservations * BUFFER_OBSERVE * 128; + float F = AUDIO_SAMPLE_RATE_EXACT / (float)S * ( (float)S / 44100.0f * (float)CLOCKFREQ - dC); + CLOCKFREQ = (int) ( F + 0.5f ); + lastDiff = diff; + nObservations = 0; + } + } + #else + #ifdef FIRMWARE_C128 + int32_t cyclesToEmulatePerRun = 16; + if ( activeSID2 ) + cyclesToEmulatePerRun += 3; + if ( activeFM ) + cyclesToEmulatePerRun += 3; + if ( activeSID2 || activeFM ) + cyclesToEmulatePerRun = 22; + + #else + int32_t cyclesToEmulatePerRun = 16; + if ( activeSID2 || activeFM ) + cyclesToEmulatePerRun = 22; + #endif + #endif + + uint32_t nCyclesPerBuffer = 0; + + while ( nSamplesComputed < AUDIO_BLOCK_SAMPLES ) + { + // + // + // sample generation with clock rate adapting to "measured" clock + // (in fact it can only be called measurement assuming that the 44.1kHz playback is accurate) + // + // + #ifdef DYNAMIC_ADJUSTMENT_MIXER + + samplesElapsed = ( ( unsigned long long )nCyclesEmulated * ( unsigned long long )AUDIO_SAMPLE_RATE_EXACT ) / ( unsigned long long )CLOCKFREQ; + + unsigned long long tmp; + long long _cycleNextSampleReady = nCyclesEmulated + 20; // unless the C64/C128 is severely underclocked (or if we change the sample rate) then we always need to compute at least 22 cycles + do + { + _cycleNextSampleReady ++; + tmp = ( _cycleNextSampleReady * (unsigned long long)AUDIO_SAMPLE_RATE_EXACT ) / (unsigned long long)CLOCKFREQ; + } while ( tmp == samplesElapsed); + + long long cycleNextSampleReady = _cycleNextSampleReady; + long long cyclesToNextSample = (long long)cycleNextSampleReady - (long long)nCyclesEmulated; + + uint32_t cyclesToNextWrite; + + // check if next SID-command comes earlier + // this is crucial to play tunes with elaborate sample techniques correctly + if ( ringRead != ringWrite ) + cyclesToNextWrite = ringTime[ ringRead ] - nCyclesEmulated; else + cyclesToNextWrite = 0xffffffff; + + + do { // do SID emulation until time passed to create an additional sample (i.e. there may be several loops until a sample value is created) + + uint32_t cyclesToEmulate = cyclesToNextSample; + + if ( cyclesToEmulate > cyclesToNextWrite ) + cyclesToEmulate = cyclesToNextWrite; + + if ( useSID16 ) + { + sid16_1->clock( cyclesToEmulate ); + if ( emulateSID2 && activeSID2 ) + { + sid16_2->clock( cyclesToEmulate ); + } + } else + { + sid_1->clock( cyclesToEmulate ); + if ( emulateSID2 && activeSID2 ) + { + sid_2->clock( cyclesToEmulate ); + } + } + + nCyclesPerBuffer += cyclesToEmulate; + nCyclesEmulated += cyclesToEmulate; + cyclesToNextSample -= cyclesToEmulate; + + if ( ringRead != ringWrite && nCyclesEmulated >= ringTime[ ringRead ] ) + { + quicklyGetAnotherRegisterWrite: + register uint8_t A, D;D = ringBufGPIO[ ringRead ] & 255;A = (ringBufGPIO[ ringRead ] >> 8); + + if ( ringBufGPIO[ ringRead ] == 0xffffffff ) // reset everything + { reset(); } else + if ( ringBufGPIO[ ringRead ] & (1<<28) ) // fm command? + { + #ifdef EMULATE_OPL2 + activeFM = true; ym3812_write( pOPL, ( A >> 4 ) & 1, D ); + #endif + } else + { + if ( ringBufGPIO[ ringRead ] & (1<<21) ) // pseudo-stereo command? + { + if ( useSID16 ) + { + sid16_1->write( A & 31, D ); + { + sid16_2->write( A & 31, D ); + activeSID2 = true; + } + } else + { + #ifndef NO_RESID10 + sid_1->write( A & 31, D ); + { + sid_2->write( A & 31, D ); + activeSID2 = true; + } + #endif + } + } else + { + if ( useSID16 ) + { + if ( ringBufGPIO[ ringRead ] & (1<<20) ) + { + sid16_2->write( A & 31, D ); + activeSID2 = true; + } else + sid16_1->write( A & 31, D ); + } else + { + #ifndef NO_RESID10 + if ( ringBufGPIO[ ringRead ] & (1<<20) ) + { + sid_2->write( A & 31, D ); + activeSID2 = true; + } else + sid_1->write( A & 31, D ); + #endif + } + } + } + + ringRead++; + ringRead &= ( RING_SIZE - 1 ); + + if ( ringRead != ringWrite ) + { + int32_t t = ringTime[ ringRead ] - nCyclesEmulated; + if ( t <= 0 ) + goto quicklyGetAnotherRegisterWrite; + cyclesToNextWrite = t; + } else + cyclesToNextWrite = 0xffffffff; + + } + + } while ( nCyclesEmulated < cycleNextSampleReady ); + + //Serial.print( " afterwards: " ); + //Serial.println( (uint32_t)nCyclesEmulated ); + + samplesElapsed ++; + // samplesElapsed = ( ( unsigned long long )nCyclesEmulated * ( unsigned long long )AUDIO_SAMPLE_RATE_EXACT ) / ( unsigned long long )CLOCKFREQ; + + extern uint8_t outRegisters[ 32 ]; + if ( useSID16 ) + { + outRegisters[ 0x1b ] = sid16_1->read( 0x1b ); + outRegisters[ 0x1c ] = sid16_1->read( 0x1c ); + } else + { + #ifndef NO_RESID10 + outRegisters[ 0x1b ] = sid_1->read( 0x1b ); + outRegisters[ 0x1c ] = sid_1->read( 0x1c ); + #endif + } + + int valOPL = 0; + #ifdef EMULATE_OPL2 + if ( activeFM ) + { + // todo: bulk updates only for C128? + ym3812_update_one( pOPL, &valOPL, 1 ); + + // TODO asynchronous read back is an issue... + //fmOutRegister = encodeGPIO( ym3812_read( pOPL, 0 ) ); + } + #endif + + + +#else + // + // + // sample generation with fixed clock (adjusting the SIDKick CPU cycle counter if necessary) + // + // + // + + + unsigned long long samplesElapsedBefore = samplesElapsed; long long cycleNextSampleReady = ( ( unsigned long long )(samplesElapsedBefore+1) * ( unsigned long long )CLOCKFREQ ) / ( unsigned long long )AUDIO_SAMPLE_RATE_EXACT; int32_t cyclesToNextSample = cycleNextSampleReady - nCyclesEmulated; - do { // do SID emulation until time passed to create an additional sample (i.e. there may be several loops until a sample value is created) + uint32_t cyclesToNextWrite; + + // check if next SID-command comes earlier + // this is crucial to play tunes with elaborate sample techniques correctly + if ( ringRead != ringWrite ) + cyclesToNextWrite = ringTime[ ringRead ] - nCyclesEmulated; else + cyclesToNextWrite = 0xffffffff; + +#ifdef DEBUG_OUTPUT + uint32_t nCyclesEmulatedTab[ 64 ]; + uint32_t idx = 0; +#endif - int32_t cyclesToEmulate = 16; + do { // do SID emulation until time passed to create an additional sample (i.e. there may be several loops until a sample value is created) + + uint32_t cyclesToEmulate = cyclesToEmulatePerRun; // this really eats time, only do this if Teensy is overclocked or SID2 is non-active - if ( !activeSID2 ) + if ( !activeSID2 && !activeFM ) { // cyclesToEmulate might be reduced because of ... // a) next sample is due earlier, ... // this should super-slightly increase sound quality, however, requires overclocking already when 2 SIDs + FM are emulated - if ( cyclesToEmulate > cyclesToNextSample ) + if ( (int32_t)cyclesToEmulate > cyclesToNextSample ) cyclesToEmulate = cyclesToNextSample; - if ( cyclesToEmulate == 0 ) - cyclesToEmulate = 1; } - // ... and b) next SID-command comes earlier - // this is crucial to play LMAN's tunes - if ( ringRead != ringWrite ) - { - int cyclesToNextWrite = ringTime[ ringRead ] - nCyclesEmulated; + // b) next SID command is earlier ... +// if ( !(activeSID2 && activeFM) ) + if ( !(activeSID2 || activeFM) ) + if ( cyclesToEmulate > cyclesToNextWrite ) + cyclesToEmulate = cyclesToNextWrite; - if ( cyclesToEmulate > cyclesToNextWrite ) - cyclesToEmulate = cyclesToNextWrite; - } - - if ( cyclesToEmulate == 0 ) + if ( cyclesToEmulate <= 0 ) cyclesToEmulate = 1; - extern uint8_t outRegisters[ 32 ]; - extern uint8_t outRegisters_2[ 32 ]; +#ifdef DEBUG_OUTPUT + nCyclesEmulatedTab[ idx ++ ] = cyclesToEmulate; +#endif + if ( useSID16 ) { sid16_1->clock( cyclesToEmulate ); if ( emulateSID2 && activeSID2 ) - { sid16_2->clock( cyclesToEmulate ); - outRegisters_2[ 0x1b ] = 0;//sid16_2->read( 0x1b ); - outRegisters_2[ 0x1c ] = 0;//sid16_2->read( 0x1c ); - } - outRegisters[ 0x1b ] = sid16_1->read( 0x1b ); - outRegisters[ 0x1c ] = sid16_1->read( 0x1c ); } else { +#ifndef NO_RESID10 sid_1->clock( cyclesToEmulate ); if ( emulateSID2 && activeSID2 ) - { sid_2->clock( cyclesToEmulate ); - outRegisters_2[ 0x1b ] = 0;//sid_2->read( 0x1b ); - outRegisters_2[ 0x1c ] = 0;//sid_2->read( 0x1c ); - } - outRegisters[ 0x1b ] = sid_1->read( 0x1b ); - outRegisters[ 0x1c ] = sid_1->read( 0x1c ); +#endif } nCyclesEmulated += cyclesToEmulate; cyclesToNextSample -= cyclesToEmulate; - unsigned int readUpTo = ringWrite; - - if ( ringRead != readUpTo && nCyclesEmulated >= ringTime[ ringRead ] ) - { - unsigned char A, D; - D = ringBufGPIO[ ringRead ] & 255; - A = (ringBufGPIO[ ringRead ] >> 8); + if ( ringRead != ringWrite && nCyclesEmulated >= ringTime[ ringRead ] ) + { + quicklyGetAnotherRegisterWrite: + register uint8_t A, D; + D = ringBufGPIO[ ringRead ] & 255; + A = (ringBufGPIO[ ringRead ] >> 8); if ( ringBufGPIO[ ringRead ] == 0xffffffff ) // reset everything { @@ -358,109 +821,386 @@ void AudioStreamSID::update() { #ifdef EMULATE_OPL2 activeFM = true; - if ( ( ( A & ( 1 << 4 ) ) == 0 ) ) - ym3812_write( pOPL, 0, D ); else - ym3812_write( pOPL, 1, D ); + ym3812_write( pOPL, ( A >> 4 ) & 1, D ); #endif } else { - if ( useSID16 ) + if ( ringBufGPIO[ ringRead ] & (1<<21) ) // pseudo-stereo command? { - if ( ringBufGPIO[ ringRead ] & (1<<20) ) + if ( useSID16 ) { - sid16_2->write( A & 31, D ); - activeSID2 = true; - } else sid16_1->write( A & 31, D ); + { + sid16_2->write( A & 31, D ); + activeSID2 = true; + } + } else + { + #ifndef NO_RESID10 + sid_1->write( A & 31, D ); + { + sid_2->write( A & 31, D ); + activeSID2 = true; + } + #endif + } } else { - if ( ringBufGPIO[ ringRead ] & (1<<20) ) + if ( useSID16 ) { - sid_2->write( A & 31, D ); - activeSID2 = true; + if ( ringBufGPIO[ ringRead ] & (1<<20) ) + { + sid16_2->write( A & 31, D ); + activeSID2 = true; + } else + sid16_1->write( A & 31, D ); } else - sid_1->write( A & 31, D ); + { + #ifndef NO_RESID10 + if ( ringBufGPIO[ ringRead ] & (1<<20) ) + { + sid_2->write( A & 31, D ); + activeSID2 = true; + } else + sid_1->write( A & 31, D ); + #endif + } } } - ringRead++; - ringRead &= ( RING_SIZE - 1 ); - } + ringRead++; + ringRead &= ( RING_SIZE - 1 ); - samplesElapsed = ( ( unsigned long long )nCyclesEmulated * ( unsigned long long )AUDIO_SAMPLE_RATE_EXACT ) / ( unsigned long long )CLOCKFREQ; + if ( ringRead != ringWrite ) + { + int32_t t = ringTime[ ringRead ] - nCyclesEmulated; + if ( t <= 0 ) + goto quicklyGetAnotherRegisterWrite; + cyclesToNextWrite = t; + } else + cyclesToNextWrite = 0xffffffff; - } while ( samplesElapsed == samplesElapsedBefore ); + } + + samplesElapsed = ( ( unsigned long long )nCyclesEmulated * ( unsigned long long )AUDIO_SAMPLE_RATE_EXACT ) / ( unsigned long long )CLOCKFREQ; + } while ( samplesElapsed == samplesElapsedBefore ); - //output: + extern uint8_t outRegisters[ 32 ]; + if ( useSID16 ) + { + outRegisters[ 0x1b ] = sid16_1->read( 0x1b ); + outRegisters[ 0x1c ] = sid16_1->read( 0x1c ); + } else + { + #ifndef NO_RESID10 + outRegisters[ 0x1b ] = sid_1->read( 0x1b ); + outRegisters[ 0x1c ] = sid_1->read( 0x1c ); + #endif + } int valOPL = 0; + #ifdef EMULATE_OPL2 if ( activeFM ) { - ym3812_update_one( pOPL, &valOPL, 1 ); - // TODO asynchronous read back is an issue, needs to be fixed + ym3812_update_one( pOPL, &valOPL, 1 ); + + // TODO asynchronous read back is an issue... //fmOutRegister = encodeGPIO( ym3812_read( pOPL, 0 ) ); } #endif +#endif + signed int sid1, sid2 = 0; - if ( useSID16 ) + + int32_t left, right; + + if ( muteTest > 0 ) { - sid1 = sid16_1->output(); - if ( emulateSID2 && activeSID2 ) - sid2 = sid16_2->output(); + muteTest --; + left = right = 0; } else { - sid1 = sid_1->output(); - if ( emulateSID2 && activeSID2 ) - sid2 = sid_2->output(); + if ( useSID16 ) + { + sid1 = sid16_1->output(); + if ( emulateSID2 && activeSID2 ) + sid2 = sid16_2->output(); + } else + { + #ifndef NO_RESID10 + sid1 = sid_1->output(); + if ( emulateSID2 && activeSID2 ) + sid2 = sid_2->output(); + #endif + } + + //left = ( sid1 * cfgVolSID1_Left + sid2 * cfgVolSID2_Left + valOPL * cfgVolOPL_Left ) >> 8; + //right = ( sid1 * cfgVolSID1_Right + sid2 * cfgVolSID2_Right + valOPL * cfgVolOPL_Right ) >> 8; + + asm volatile ( "SMULBB %0, %1, %2" : "=r" (left) : "r" (sid1), "r" (actVolSID1_Left) ); + asm volatile ( "SMLABB %0, %1, %2, %3" : "=r" (left) : "r" (sid2), "r" (actVolSID2_Left), "r" (left) ); + asm volatile ( "SMLABB %0, %1, %2, %3" : "=r" (left) : "r" (valOPL), "r" (actVolOPL_Left), "r" (left) ); + left >>= 8; + + asm volatile ( "SMULBB %0, %1, %2" : "=r" (right) : "r" (sid1), "r" (actVolSID1_Right) ); + asm volatile ( "SMLABB %0, %1, %2, %3" : "=r" (right) : "r" (sid2), "r" (actVolSID2_Right), "r" (right) ); + asm volatile ( "SMLABB %0, %1, %2, %3" : "=r" (right) : "r" (valOPL), "r" (actVolOPL_Right), "r" (right) ); + right >>= 8; + + + if ( samSpeaking ) + { + int32_t sam = ( (int32_t)(*(int8_t*)&samvoice_raw[ samCurPos >> 1 ]) * samActive ) << 2; + + if ( ++ samCurPos == samEndPos1 ) + samCurPos = samStartPos2; + if ( samCurPos >= samEndPos2 ) + samSpeaking = 0; + + left += sam; + right += sam; + } + + //right = max( -32767, min( 32767, right ) ); + //left = max( -32767, min( 32767, left ) ); + right = __SSAT( right ); + left = __SSAT( left ); + } - int32_t left, right; - - left = ( sid1 * cfgVolSID1_Left + sid2 * cfgVolSID2_Left + valOPL * cfgVolOPL_Left ) >> 8; - right = ( sid1 * cfgVolSID1_Right + sid2 * cfgVolSID2_Right + valOPL * cfgVolOPL_Right ) >> 8; +#ifdef FANCY_LED - if ( samSpeaking ) + if ( driveLEDs && collectStatistics && (( ++vu_nValues & 31 )==0) ) { - int32_t sam = (int32_t)(*(int8_t*)&samvoice_raw[ samCurPos >> 1 ]) << 7; - - if ( ++ samCurPos == samEndPos1 ) - samCurPos = samStartPos2; - if ( samCurPos >= samEndPos2 ) - samSpeaking = 0; + register uint32_t t; + asm volatile ( "SMULBB %0, %1, %1" : "=r" (t) : "r" (left) ); + vuSumL += t >> 16; + asm volatile ( "SMULBB %0, %1, %1" : "=r" (t) : "r" (right) ); + vuSumR += t >> 16; + + float scale = scaleSamples; + + if ( vu_nValues >= nSamplesCollected ) + { + float tmp = ( (float)vuSumL/16384.0f / (float)nSamplesCollected * 32.0f ); + float vu_VolumeL = powf_fast( tmp, 0.247518f ) * scale; + + tmp = ( (float)vuSumR/16384.0f / (float)nSamplesCollected * 32.0f ); + float vu_VolumeR = powf_fast( tmp, 0.247518f ) * scale; - left += sam; - right += sam; + { + const float movAvg = 0.7f; + static float ledValueAvgL = 0.0f; + ledValueAvgL = ledValueAvgL * movAvg + vu_VolumeL * ( 1.0f - movAvg ); + static float ledValueAvgR = 0.0f; + ledValueAvgR = ledValueAvgR * movAvg + vu_VolumeR * ( 1.0f - movAvg ); + + nLEDsL = ledValueAvgL * 256.0f; + nLEDsR = ledValueAvgR * 256.0f; + + nLEDs = (nLEDsL + nLEDsR) >> 1; + nLEDsConfigTool = nLEDs * scaleSamplesConfigTool; + } + + vuSumL = 0; + vuSumR = 0; + vu_nValues = 0; + collectStatistics = 0; + } } + delayLED ++; +#endif - right = max( -32767, min( 32767, right ) ); - left = max( -32767, min( 32767, left ) ); - *( output++ ) = left; *( output2++ ) = right; - nSamplesComputed++; - } + nSamplesComputed++; + } + + + +totalCyclesPerBuffer += nCyclesPerBuffer; +nTotalCycleCounter ++; - if ( nCyclesEmulated > cycleCount ) - nCyclesEmulated = cycleCount; + + + /*if ( nCyclesEmulated > cycleCount ) + { + nCyclesEmulated = cycleCount; + }*/ - transmit( block,0 ); - transmit( block2,1 ); + transmit( block, 0 ); + transmit( block2, 1 ); release( block ); release( block2 ); + +#ifdef FANCY_LED + + static uint32_t lastVisUpdate = 0; + static uint8_t updatePhase = 0; + #define N_PHASES 32 + #define LEDS_UPD_PER_RUN 8 + + if ( driveLEDs ) + { + if ( delayLED > nSamplesCollected ) + { + colorCycle += ledColorCycleSpeed * 4; + delayLED = 0; + } + + if ( ledWriteStatus == -1 && ( ( samplesTotal - lastVisUpdate ) > nSamplesCollected ) )// && ledColors2Write == 0 && ledBits2Write == 0 ) + { + if ( updatePhase == 0 ) + { + lastVisUpdate = samplesTotal; + + if ( ledColorCycleSpeed ) + { + col0 = col0_cycle[ ( colorCycle >> 11 ) & 127 ]; + col1 = col1_cycle[ ( colorCycle >> 11 ) & 127 ]; + } + } + + uint8_t startIdx = updatePhase * LEDS_UPD_PER_RUN; + uint8_t endIdx = ( updatePhase + 1 ) * LEDS_UPD_PER_RUN; + if ( endIdx > NUM_LEDS ) endIdx = NUM_LEDS; + + uint32_t i; + switch ( ledVisMode ) + { + default: + case 0: // off + for ( i = startIdx; i < endIdx; i++ ) + ledWriteRGB[ i ] = 0; + break; + case 1: // constant + for ( i = startIdx; i < endIdx; i++ ) + ledWriteRGB[ i ] = col0; + break; + case 5: // mono peakmeter + for ( i = startIdx; i < endIdx; i++ ) + { + int v = ( (int)nLEDs * (int)NUM_LEDS / 8 - i * 32 ) * 2; + if ( v < 0 ) v = 0; if ( v > 63 ) v = 63; + int r = v * i / (int)( NUM_LEDS - 1 ); + + ledWriteRGB[ i ] = SCALE( col0, ( v - r ) ) + SCALE( col1, r ); + } + break; + case 6: // stereo peakmeter + for ( i = startIdx; i < endIdx; i++ ) + { + int r, v; + if ( i >= NUM_LEDS / 2 ) + { + v = ( (int)nLEDsR * (int)NUM_LEDS / 16 - ( i - NUM_LEDS / 2 ) * 32 ) * 2; + if ( v < 0 ) v = 0; if ( v > 63 ) v = 63; + r = v * ( i - NUM_LEDS / 2 ) / (int)( NUM_LEDS / 2 - 1 ); + } else + { + v = ( (int)nLEDsL * (int)NUM_LEDS / 16 - i * 32 ) * 2; + if ( v < 0 ) v = 0; if ( v > 63 ) v = 63; + r = v * i / (int)( NUM_LEDS / 2 - 1 ); + } + + + if ( i >= NUM_LEDS / 2 ) + ledWriteRGB[ i ] = SCALE( col0, ( v - r ) ) + SCALE( col1, r ); else + ledWriteRGB[ NUM_LEDS / 2 - 1 - i ] = SCALE( col0, ( v - r ) ) + SCALE( col1, r ); + } + ledColorsBufOfs = 0; + break; + case 3: // scroll left and right + case 4: + if ( startIdx == 0 ) + { + int v = nLEDs * 4; + if ( v > 255 ) v = 255; + v = ( v * v ) >> 8; + + uint32_t color = LERP( col1, col0, ( v * v ) >> 8 ); + + color = SCALE( color, v ); + + if ( ledVisMode == 4 ) + { + ledColorsBufOfs = ( ledColorsBufOfs + ( NUM_LEDS - 1 ) ) % NUM_LEDS; + ledWriteRGB[ ledColorsBufOfs ] = color; + } else + { + ledWriteRGB[ ledColorsBufOfs ] = color; + ledColorsBufOfs = ( ledColorsBufOfs + 1 ) % NUM_LEDS; + } + } + break; + case 2: // pulse + for ( i = startIdx; i < endIdx; i++ ) + { + int t = (int)nLEDs * 2; + if ( i >= NUM_LEDS / 2 ) + t *= (int)NUM_LEDS - i + 1; else + t *= i + 2; + t /= (int)( NUM_LEDS ); + + int tt = t * 4; + if ( tt > 255 ) tt = 255; + tt = ( tt * tt ) >> 8; + + uint32_t c1 = SCALE( col0, tt ); + if ( nLEDs > 32 ) + { + t = ( t * ( nLEDs - 32 ) ) / 16; + if ( t > 255 ) t = 255; + t = ( t * t ) >> 8; + uint32_t c2 = SCALE( col1, t ); + c1 = ADD_CLAMP( c1, c2 ); + } + + ledWriteRGB[ i ] = c1; + } + + break; + } + + if ( endIdx >= NUM_LEDS - 1 ) + { + if ( ledVisMode != 3 && ledVisMode != 4 ) + ledColorsBufOfs = 0; + ledColors2Write = NUM_LEDS; + ledWriteStatus = 0; + updatePhase = 0; + collectStatistics = 1; + } else + updatePhase++; + } + } +#endif + } void AudioStreamSID::reset() { - activeSID2 = false; - activeFM = false; + firstBufferAfterReset = 1; + recalibrateFrequency = 1; + muteTest = 768; + + #ifdef FANCY_LED + driveLEDs = (ledVisMode > 0) ? true : false; + #endif + + activeSID2 = activeSID2Prev = false; + activeFM = activeFMPrev = false; + updateMixer( false, false ); for ( int i = 0; i <= 24; i++ ) { +#ifndef NO_RESID10 sid_1->write( i, 0 ); sid_2->write( i, 0 ); +#endif sid16_1->write( i, 0 ); sid16_2->write( i, 0 ); } @@ -470,3 +1210,22 @@ void AudioStreamSID::reset() fmFakeOutput = 0; #endif } + +void AudioStreamSID::fillBlock() +{ + audio_block_t *block; + audio_block_t *block2; + + block = allocate(); + block2 = allocate(); + + if ( block == NULL || block2 == NULL ) return; + + memset( block->data, 0, sizeof( int16_t ) * AUDIO_BLOCK_SAMPLES ); + memset( block2->data, 0, sizeof( int16_t ) * AUDIO_BLOCK_SAMPLES ); + + transmit( block, 0 ); + transmit( block2, 1 ); + release( block ); + release( block2 ); +} diff --git a/Source/SIDKick/AudioStreamSID.h b/Source/SIDKick/AudioStreamSID.h index 2ccf956..75e6a31 100644 --- a/Source/SIDKick/AudioStreamSID.h +++ b/Source/SIDKick/AudioStreamSID.h @@ -8,7 +8,7 @@ AudioStreamSID.h - SIDKick - SID-replacement with SID and Sound Expander Emulation based on Teensy 4.1 + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 (using reSID by Dag Lem and FMOPL by Jarek Burczynski, Tatsuyuki Satoh, Marco van den Heuvel, and Acho A. Tang) Copyright (c) 2019-2021 Carsten Dachsbacher @@ -42,25 +42,34 @@ #include "fmopl.h" #endif -extern void speakSAM( uint8_t digit ); +#include "imxrt.h" +#include "utility/imxrt_hw.h" + +#define CB( name, i, n ) { if ( (int)(i) < 0 || (int)(i) >= (int)(n) ) {Serial.print( name ); Serial.print( " out of bounds: " ); Serial.println( (int)i );} }; + +extern unsigned int CLOCKFREQ, CLOCKFREQ_NOMINAL; +extern void speakSAM( uint8_t digit, bool onlyDigit = false ); class AudioStreamSID : public AudioStream { public: - AudioStreamSID(void) : AudioStream( 0, NULL) { init(); } + AudioStreamSID(void) : AudioStream( 0, NULL) {} void init(); void begin(); void reset(); void stop(); void continuePlaying(); + void fillBlock(); void quickreset(); - void updateConfiguration( uint8_t *cfg ); + void updateConfiguration( uint8_t *cfg, uint8_t *globalCfg ); private: volatile bool playing; virtual void update(); SID16 *sid16_1, *sid16_2; +#ifndef NO_RESID10 RESID_NAMESPACE::SID *sid_1, *sid_2; +#endif #ifdef EMULATE_OPL2 FM_OPL *pOPL; @@ -68,9 +77,12 @@ class AudioStreamSID : public AudioStream #endif public: +#ifndef NO_RESID10 RESID_NAMESPACE::SID *getSID() { return sid_1; }; +#endif SID16 *getSID16() { return sid16_1; }; + void updateMixer( bool playSID2, bool playFM ); }; #endif diff --git a/Source/SIDKick/LED_Helpers.h b/Source/SIDKick/LED_Helpers.h new file mode 100644 index 0000000..055f295 --- /dev/null +++ b/Source/SIDKick/LED_Helpers.h @@ -0,0 +1,191 @@ +/* + _________.___________ ____ __.__ __ + / _____/| \______ \ | |/ _|__| ____ | | __ + \_____ \ | || | \| < | |/ ___\| |/ / + / \| || ` \ | \| \ \___| < + /_______ /|___/_______ /____|__ \__|\___ >__|_ \ + \/ \/ \/ \/ \/ + + LED_Helpers.h + + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 + (using reSID by Dag Lem and FMOPL by Jarek Burczynski, Tatsuyuki Satoh, Marco van den Heuvel, and Acho A. Tang) + Copyright (c) 2019-2021 Carsten Dachsbacher + + Logo created with http://patorjk.com/software/taag/ + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +extern uint32_t NUM_LEDS; + +extern uint32_t ledWriteRGB[32]; + +extern uint8_t ledBits2Write; +extern uint8_t ledColors2Write; +extern int32_t ledWriteStatus; +extern uint8_t ledColorsBufOfs; + +int32_t nLEDs = 0; +int32_t nLEDsConfigTool = 0; + +static uint8_t ledVisMode = 0; +static float last_tL = 0.0f; +static float last_tR = 0.0f; +static uint32_t vuSumL = 0; +static uint32_t vuSumR = 0; +static float vuAvg = 0.0f; +static uint32_t vuMeter = 0; +static uint32_t vu_nValues = 0; +static uint32_t nSamplesCollected = 64*8; +static float scaleSamples = 1.0f; +static float scaleSamplesConfigTool = 1.0f; +static int32_t nLEDsL = 0; +static int32_t nLEDsR = 0; +static uint32_t colorCycle = 0; +static uint32_t ledColorCycleSpeed = 0; +uint8_t collectStatistics = 1; + +static uint32_t col0 = 0; +static uint32_t col1 = 0; +static uint32_t hsv0 = 0; +static uint32_t hsv1 = 0; +static uint32_t col0_cycle[ 128 ], col1_cycle[ 128 ]; + +static uint32_t delayLED = 0; + +#define H_( hsv ) (((uint8_t*)&hsv)[2]) +#define S_( hsv ) (((uint8_t*)&hsv)[1]) +#define V_( hsv ) (((uint8_t*)&hsv)[0]) + +// unusual format of WS2818 +#define G_( rgb ) (((uint8_t*)&rgb)[2]) +#define R_( rgb ) (((uint8_t*)&rgb)[1]) +#define B_( rgb ) (((uint8_t*)&rgb)[0]) + +#define LRG( r, g ) (((r)<<16)|g) +//#define LR_( rg ) (((rg)>>16)&255) +//#define LG_( rg ) ((rg)&255) + +#define RGB( r, g, b ) (((g)<<16)|((r)<<8)|b) +#define HSV( h, s, v ) (((h)<<16)|((s)<<8)|v) + +__attribute__( ( always_inline ) ) inline uint32_t SCALE( const uint32_t a, const int32_t t ) +{ + int32_t c; uint8_t *p = (uint8_t *)&c; + p[ 1 ] = (R_(a) * t) >> 8; + p[ 2 ] = (G_(a) * t) >> 8; + p[ 0 ] = (B_(a) * t) >> 8; + return c; +} + +__attribute__( ( always_inline ) ) inline uint32_t LERP( uint32_t a, uint32_t b, int32_t t ) +{ + int32_t it = 255 - t; + int32_t c; uint8_t *p = (uint8_t *)&c; + p[ 1 ] = (R_(a) * t + R_(b) * it) >> 8; + p[ 2 ] = (G_(a) * t + G_(b) * it) >> 8; + p[ 0 ] = (B_(a) * t + B_(b) * it) >> 8; + return c; +} + +__attribute__( ( always_inline ) ) inline uint32_t ADD_CLAMP( const uint32_t a, const uint32_t b ) +{ + uint32_t result; + asm volatile ( "uqadd8 %0, %1, %2" : "=r" (result) : "r" (a), "r" (b) ); + return(result); +} + +__attribute__( ( always_inline ) ) inline uint32_t HSV2RGB(uint32_t hsv) +{ + int32_t region, remainder, p, q, t; + + if (S_(hsv) == 0) + return RGB( V_( hsv ), V_( hsv ), V_( hsv ) ); + + region = H_( hsv ) / 43; + remainder = ( H_( hsv ) - (region * 43)) * 6; + + p = (V_( hsv ) * (255 - S_( hsv ))) / 256; + q = (V_( hsv ) * (255*256 - ((S_( hsv ) * remainder)))) / 65536; + t = (V_( hsv ) * (255*256 - ((S_( hsv ) * (255 - remainder))))) / 65536; + + switch (region) + { + case 0: + return RGB( V_( hsv ), t, p ); + case 1: + return RGB( q, V_( hsv ), p ); + case 2: + return RGB( p, V_( hsv ), t ); + case 3: + return RGB( p, q, V_( hsv ) ); + case 4: + return RGB( t, p, V_( hsv ) ); + default: + return RGB( V_( hsv ), p, q ); + } +} + +__attribute__( ( always_inline ) ) inline uint32_t RGB2HSV( uint32_t rgb ) +{ + int32_t rgbMin, rgbMax, h, s, v; + + rgbMax = rgbMin = R_(rgb); + if ( G_(rgb) > rgbMax ) rgbMax = G_(rgb); + if ( G_(rgb) < rgbMin ) rgbMin = G_(rgb); + if ( B_(rgb) > rgbMax ) rgbMax = B_(rgb); + if ( B_(rgb) < rgbMin ) rgbMin = B_(rgb); + v = rgbMax; + + if ( v == 0 ) + return 0; + + s = 255 * ((int32_t)(rgbMax - rgbMin)) / v; + + int32_t diff = rgbMax - rgbMin; + + if ( s == 0 ) + return HSV( 0, 0, v ); + + if (rgbMax == R_(rgb)) + h = 0 + 43 * ((int32_t)G_(rgb) - (int32_t)B_(rgb)) / diff; else + if (rgbMax == G_(rgb)) + h = 85 + 43 * ((int32_t)B_(rgb) - (int32_t)R_(rgb)) / diff; else + h = 171 + 43 * ((int32_t)R_(rgb) - (int32_t)G_(rgb)) / diff; + + h &= 255; + return HSV( h, s, v ); +} + +// +// https://github.com/ekmett/approximate/blob/master/cbits/fast.c +// +__attribute__( ( always_inline ) ) inline float powf_fast(float a, float b) { + union { float d; int x; } u = { a }; + u.x = (int)(b * (u.x - 1064866805) + 1064866805); + return u.d; +} + +__attribute__( ( always_inline ) ) inline float powf_fast_lb(float a, float b) { + union { float d; int x; } u = { a }; + u.x = (int)(b * (u.x - 1065353217) + 1064631197); + return u.d; +} + +__attribute__( ( always_inline ) ) inline float powf_fast_ub(float a, float b) { + union { float d; int x; } u = { a }; + u.x = (int)(b * (u.x - 1064631197) + 1065353217); + return u.d; +} diff --git a/Source/SIDKick/SIDKick.ino b/Source/SIDKick/SIDKick.ino index 1a026c1..3694f64 100644 --- a/Source/SIDKick/SIDKick.ino +++ b/Source/SIDKick/SIDKick.ino @@ -1,14 +1,15 @@ /* - _________.___________ ____ __.__ __ - / _____/| \______ \ | |/ _|__| ____ | | __ - \_____ \ | || | \| < | |/ ___\| |/ / - / \| || ` \ | \| \ \___| < - /_______ /|___/_______ /____|__ \__|\___ >__|_ \ - \/ \/ \/ \/ \/ + _________.___________ ____ __.__ __ + / _____/| \______ \ | |/ _|__| ____ | | __ + \_____ \ | || | \| < | |/ ___\| |/ / + / \| || ` \ | \| \ \___| < + /_______ /|___/_______ /____|__ \__|\___ >__|_ \ + \/ \/ \/ \/ \/ + SIDKick.ino - SIDKick - SID-replacement with SID and Sound Expander Emulation based on Teensy 4.1 + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 (using reSID by Dag Lem and FMOPL by Jarek Burczynski, Tatsuyuki Satoh, Marco van den Heuvel, and Acho A. Tang) Copyright (c) 2019-2021 Carsten Dachsbacher @@ -28,9 +29,18 @@ along with this program. If not, see . */ +/* + pinout for extenion header (X1 to X5) + MIDI IN/OUT = X1/X2 (GPIO 28/29) + MIDI IRQ = X3 (GPIO 30) + LED = X4 (GPIO 31) + BUTTON = X5 (GPIO 33) +*/ + +#include "globals.h" + #include #include - #include "AudioStreamSID.h" #include "imxrt.h" #include "utility/imxrt_hw.h" @@ -38,43 +48,33 @@ #include "launch.h" // trampoline code for launching PRGs #include "prgslots.h" // memory for PRG-launcher -uint32_t prgSize = 0; -const uint8_t *prgCode = NULL; -#include "config.h" // built-in config tool -// 0 = MQS, 1 = DAC -#define audioDevice 1 -#define TEENSY_CLOCK 816 +uint32_t prgSize = 0; +const uint8_t *prgCode = NULL; -//#define FIRMWARE_C128 +#include "config.h" // built-in config tool -// C128 does not support $D500 for SID #2 -// except for the C64-mode if: -// A8 is connected to U3 pin 14, and A7 to U7 (MMU, MOS 8722) Pin 47 #ifdef FIRMWARE_C128 -#define C128_D500_SUPPORT +#if audioDevice == 1 +static const char VERSION_STR_Flash[20] = {0x53, 0x49, 0x44, 0x4b, 0x09, 0x03, 0x0b, '0', '.', '2', 0x44, 0x41, 0x43, '1', '2', '8' }; +#else +static const char VERSION_STR_Flash[20] = {0x53, 0x49, 0x44, 0x4b, 0x09, 0x03, 0x0b, '0', '.', '2', 0x4d, 0x51, 0x53, '1', '2', '8' }; #endif - - -#ifdef FIRMWARE_C128 - #if audioDevice == 1 - static const char VERSION_STR[20] = {0x53, 0x49, 0x44, 0x4b, 0x09, 0x03, 0x0b, '0', '.', '1', 0x44, 0x41, 0x43, '1', '2', '8' }; - #else - static const char VERSION_STR[20] = {0x53, 0x49, 0x44, 0x4b, 0x09, 0x03, 0x0b, '0', '.', '1', 0x4d, 0x51, 0x53, '1', '2', '8' }; - #endif #else - #if audioDevice == 1 - static const char VERSION_STR[20] = {0x53, 0x49, 0x44, 0x4b, 0x09, 0x03, 0x0b, '0', '.', '1', '/', 0x44, 0x41, 0x43, '6', '4' }; - #else - static const char VERSION_STR[20] = {0x53, 0x49, 0x44, 0x4b, 0x09, 0x03, 0x0b, '0', '.', '1', '/', 0x4d, 0x51, 0x53, '6', '4' }; - #endif +#if audioDevice == 1 +static const char VERSION_STR_Flash[20] = {0x53, 0x49, 0x44, 0x4b, 0x09, 0x03, 0x0b, '0', '.', '2', '/', 0x44, 0x41, 0x43, '6', '4' }; +#else +static const char VERSION_STR_Flash[20] = {0x53, 0x49, 0x44, 0x4b, 0x09, 0x03, 0x0b, '0', '.', '2', '/', 0x4d, 0x51, 0x53, '6', '4' }; +#endif #endif -uint8_t portPinsC[ 5 ] = { 0, 24, 25, 26, 27 }; // A0..4 (GPIOs on port 6) -uint8_t portPinsD[ 8 ] = { 23, 22, 16, 17, 15, 14, 18, 19 }; // D0..7 (GPIOs on port 6) -uint8_t portPinsA[ 7 ] = { 34, 35, 36, 37, 11, 13, 32 }; // A5..8, IO1, IO2, RESET (GPIOs on port 7) +char VERSION_STR[20]; + +const uint8_t portPinsC[ 5 ] PROGMEM = { 0, 24, 25, 26, 27 }; // A0..4 (GPIOs on port 6) +const uint8_t portPinsD[ 8 ] PROGMEM = { 23, 22, 16, 17, 15, 14, 18, 19 }; // D0..7 (GPIOs on port 6) +const uint8_t portPinsA[ 7 ] PROGMEM = { 34, 35, 36, 37, 11, 13, 32 }; // A5..8, IO1, IO2, RESET (GPIOs on port 7) #define S_A5 CORE_PIN34_BITMASK #define S_A6 CORE_PIN35_BITMASK @@ -85,14 +85,15 @@ uint8_t portPinsA[ 7 ] = { 34, 35, 36, 37, 11, 13, 32 }; // A5..8, IO1, I #define DUAL_SID_ADDR_MASK (S_A5 | S_A8) #define DUAL_SID_FLIPMASK (CORE_PIN11_BITMASK | CORE_PIN13_BITMASK) -uint8_t pinPHI2 = 1, // GPIO on port 6 - pinRW = 2, // GPIO on port 9 - pinCS = 3, // GPIO on port 9 - potX = 4, // GPIO on ... - potY = 5, // ... port 9 - pin245OE = 6; // GPIO on port 6 +const uint8_t pinPHI2 = 1, // GPIO on port 6 + pinRW = 2, // GPIO on port 9 + pinCS = 3, // GPIO on port 9 + + potX = 4, // GPIO on ... + potY = 5, // ... port 9 + pin245OE = 6; // GPIO on port 6 -uint8_t pinButtonProfile = 29; // GPIO on port 9 +const uint8_t pinButtonProfile = 33; // GPIO on port 9 uint8_t outRegisters[ 32 ]; uint8_t outRegisters_2[ 32 ]; @@ -102,9 +103,10 @@ AudioOutputMQS *mqs; AudioOutputPT8211 *audioPT8211; uint32_t debounceCycle = 0; -uint32_t c64CycleCount; +uint32_t c64CycleCount, c64CycleCountResetReleased; uint32_t nCyclesEmulated; +uint8_t addrLine = 0; uint32_t fmFakeOutput = 0; uint32_t fmAutoDetectStep = 0; uint32_t sidFakeOutput = 0; @@ -113,11 +115,86 @@ uint32_t sidAutoDetectStep_2 = 0; uint8_t sidAutoDetectRegs[ 32 ]; uint8_t sidAutoDetectRegs_2[ 32 ]; -#define RING_SIZE (1024*4) +uint32_t nSIDFMDelay = 0; +uint32_t nMIDIDelay = 0; + +const uint8_t midiPinOut = 29; +const uint8_t midiPinIn = 28; +const uint8_t midiIRQPin = 30; + +#define MIDI_IRQ_PIN_LOW { CORE_PIN30_PORTCLEAR = CORE_PIN30_BITMASK; } +#define MIDI_IRQ_PIN_HIGH { CORE_PIN30_PORTSET = CORE_PIN30_BITMASK; } + +#define MIDI_OUT_PIN_LOW { CORE_PIN29_PORTCLEAR = CORE_PIN29_BITMASK; } +#define MIDI_OUT_PIN_HIGH { CORE_PIN29_PORTSET = CORE_PIN29_BITMASK; } + +#ifdef SUPPORT_MIDI + +uint8_t MIDI_START_ADDR = 0x04; +uint8_t MIDI_END_ADDR = 0x07; + +bool activeMIDI_In = false, + activeMIDI_Out = false; + +uint32_t midiDelayCyclesFP16 = 2066198; +uint32_t midiWrite = 0; +int32_t midiWriteBit = 65536; + +// MIDI-interface register offsets +const uint8_t MIDI_CONTROL_REG = 0x00; +const uint8_t MIDI_STATUS_REG = 0x02; +const uint8_t MIDI_TRANSMIT_REG = 0x01; +const uint8_t MIDI_RECEIVE_REG = 0x03; + +uint8_t MIDIControlReg = 0, MIDIStatusReg = 0; +uint8_t MIDINextReceivedByte = 0; + +uint8_t MIDIFetchReceivedByte = 1; +int16_t midiSerialWrite = -1; + +uint8_t midiAutoDetectStep = 0; + +static uint32_t clock2midi_Counter = 0; +static uint32_t midiIn_DetectedStartBitThreshold = 28; + +#define MIDI_RING_SIZE (64) +uint32_t MIDI_ringBuf[ MIDI_RING_SIZE ]; +uint32_t MIDI_ringTime[ MIDI_RING_SIZE ]; +uint16_t MIDI_ringWrite; +uint16_t MIDI_ringRead; + +uint32_t MIDI_ringBufIn[ MIDI_RING_SIZE ]; +uint16_t MIDI_ringWriteIn; +uint16_t MIDI_ringReadIn; + +static uint8_t releasedIRQ = 1; +static uint8_t IRQconditionTX = 0, IRQconditionRX = 0; +static uint8_t doNotTriggerIRQAgainThisCycle = 0; + +#endif + +#ifdef FANCY_LED +#define MAX_NUM_LEDS 32 +const uint8_t ledPin = 31; +const int LED_HIGH_DURATION = 200; // the ISR seems to take long enough that this explicit delay is unnecessary +uint32_t NUM_LEDS = MAX_NUM_LEDS; +uint32_t ledWriteRGB[MAX_NUM_LEDS] = { 0 }; +uint8_t ledCurRGB = 0; +uint8_t ledBits2Write = 0; +uint8_t ledColors2Write = 0; +int32_t ledWriteStatus = 0; +uint8_t ledColorsBufOfs = 0; +uint8_t ledPinStatus = 0; +extern uint32_t nLEDsConfigTool; +#else +uint32_t nLEDsConfigTool = 0; +#endif + +#define RING_SIZE (256) uint32_t ringBufGPIO[ RING_SIZE ]; uint32_t ringTime[ RING_SIZE ]; -uint32_t ringWrite; -extern uint32_t ringRead; +uint16_t ringWrite; +extern uint16_t ringRead; extern unsigned long long samplesElapsed; extern uint32_t samplesTotal; @@ -125,6 +202,7 @@ volatile uint32_t dummy; int doReset = 0; int disableISR = 0; +uint8_t runningOnPAL = 1; #define CACHE_PRELOAD( ptr ) { asm volatile ("pld\t[%0]" :: "r" (ptr)); } #define CACHE_PRELOADW( ptr ) { asm volatile ("pldw\t[%0]" :: "r" (ptr)); } @@ -132,53 +210,74 @@ int disableISR = 0; extern bool registerRead; static uint32_t stateReadDirectoryMode = 0; +static uint32_t stateGoingTowardsTransferMode = 0; static uint32_t stateInTransferMode = 0; static uint32_t stateInConfigMode = 0; +static uint32_t stateInVisualizationMode = 0; static uint32_t stateConfigRegisterAccess = 0; static uint32_t stateWriteConfigToEEPROM = 0; +static uint8_t configUpdatedTemporarily = 0; static const uint8_t *transferData = NULL; static uint8_t *transferDataEnd = NULL; -static uint32_t transferAddress, - jumpAddress, - launcherAddress, - transferStage; // 0 = copy launcher, 1 = copy PRG, 2 = done +static uint32_t transferAddress, + jumpAddress, + launcherAddress, + transferStage; // 0 = copy launcher, 1 = copy PRG, 2 = done #define CONFIG_MODE_CYCLES 25000 -uint8_t stateConfig[ 20 * 10 + 1 ]; +#define TRANSFER_MODE_CYCLES 256 +#define MAX_SETTINGS 64 +uint8_t stateConfig[ MAX_SETTINGS * 11 ]; +uint8_t stateConfigPrevious[ MAX_SETTINGS * 11 ]; + +const unsigned char rangeSettings[ MAX_SETTINGS ] PROGMEM = +{ 4, 16, 2, 16, 15, 91, 11, 101, 4, 16, 6, 16, 15, 91, 11, 101, 3, 16, 15, 2, + 7, 32, 32, 32, 254, 90, 32, 32, 90, 32, 32, 5, 254, 2, 127, 127, 254, 254, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 +}; void readConfigFromEEPROM() { - for (int i = 0; i < 20 * 10 + 1; i++) + for (int i = 0; i < MAX_SETTINGS * 11; i++) stateConfig[ i ] = EEPROM.read(i); - #define MAX_SETTINGS 20 - char rangeSettings[ MAX_SETTINGS ] = { 4, 16, 2, 16, 15, 91, 11, 101, 4, 16, 6, 16, 15, 91, 11, 101, 3, 16, 15, 2 }; + bool allOK = true; - for ( int i = 0; i < 20 * 10; i++ ) + for ( int i = 0; i < MAX_SETTINGS * 10; i++ ) { - if ( stateConfig[ i ] >= rangeSettings[ i % 20 ] ) + if ( stateConfig[ i ] >= rangeSettings[ i % MAX_SETTINGS ] ) + { stateConfig[ i ] = 0; + allOK = false; + } } - if ( stateConfig[ 200 ] > 9 ) - stateConfig[ 200 ] = 0; + if ( stateConfig[ MAX_SETTINGS * 10 ] > 9 ) + { + stateConfig[ MAX_SETTINGS * 10 ] = 0; + allOK = false; + } - for (int i = 0; i < 20 * 10 + 1; i++) - EEPROM.write( i, stateConfig[ i ] ); + if ( !allOK ) + for (int i = 0; i < MAX_SETTINGS * 11; i++) + EEPROM.write( i, stateConfig[ i ] ); } void writeConfigToEEPROM() { - for (int i = 0; i < 20 * 10 + 1; i++) + for (int i = 0; i < MAX_SETTINGS * 11; i++) EEPROM.write( i, stateConfig[ i ] ); } +#define CPU_RESET_CYCLECOUNTER { ARM_DEMCR |= ARM_DEMCR_TRCENA; ARM_DWT_CTRL |= ARM_DWT_CTRL_CYCCNTENA; ARM_DWT_CYCCNT = 0; } + +void setD07_Write(); + +//static uint32_t nTotalTeensyCycles = 0; + void setup() { - dummy = prgDirectory[ 0 ]; - dummy = prgRepository[ 0 ]; - CORE_PIN34_CONFIG = CONFIG_PULLUP; CORE_PIN35_CONFIG = CONFIG_PULLUP; CORE_PIN36_CONFIG = CONFIG_PULLUP; @@ -186,8 +285,8 @@ void setup() CORE_PIN11_CONFIG = CONFIG_PULLUP; CORE_PIN13_CONFIG = CONFIG_PULLUP; CORE_PIN32_CONFIG = CONFIG_PULLUP; - - for ( int i = 0; i < 5; i++ ) + + for ( int i = 0; i < 5; i++ ) pinMode( portPinsC[ i ], INPUT ); for ( int i = 0; i < 7; i++ ) @@ -210,59 +309,170 @@ void setup() delay( 5 ); disableISR = 1; - attachInterrupt( digitalPinToInterrupt( pinPHI2 ), isrSID, RISING ); - playSID = new AudioStreamSID; - - #if ( audioDevice == 0 ) - mqs = new AudioOutputMQS(); - AudioMemory( 512 ); - new AudioConnection(*playSID, 0, *mqs, 0); - new AudioConnection(*playSID, 1, *mqs, 1); - #else - audioPT8211 = new AudioOutputPT8211(); - AudioMemory( 512 ); - new AudioConnection(*playSID, 0, *audioPT8211, 0); - new AudioConnection(*playSID, 1, *audioPT8211, 1); - #endif + memset( outRegisters, 0, 32 ); + memset( outRegisters_2, 0, 32 ); + + memcpy( prgDirectory, prgDirectory_Flash, 36 * 24 + 1 ); + +#ifdef DEBUG_OUTPUT + Serial.begin( 9600 ); + Serial.println( "SIDKick here... "); +#endif + + memcpy( VERSION_STR, VERSION_STR_Flash, 20 ); + + cfgPRGCode = new unsigned char[ cfgPRGCode_size ]; + memcpy( cfgPRGCode, cfgPRGCode_Flash, cfgPRGCode_size ); + + runningOnPAL = 1; + + c64CycleCount = c64CycleCountResetReleased = 0; + attachInterrupt( digitalPinToInterrupt( pinPHI2 ), isrDetermineClockFrequency, RISING ); + while ( c64CycleCount < 1000 ) { + delay( 1 ); + } + detachInterrupt( digitalPinToInterrupt( pinPHI2 ) ); + + c64CycleCount = c64CycleCountResetReleased = 0; + attachInterrupt( digitalPinToInterrupt( pinPHI2 ), isrSID, RISING ); readConfigFromEEPROM(); - uint8_t activeProfile = stateConfig[ 20 * 10 ]; + uint8_t activeProfile = stateConfig[ MAX_SETTINGS * 10 ]; if ( activeProfile >= 10 ) activeProfile = 0; - c64CycleCount = - nCyclesEmulated = - fmFakeOutput = - fmAutoDetectStep = - sidFakeOutput = - sidAutoDetectStep = - sidAutoDetectStep_2 = - ringRead = ringWrite = - samplesElapsed = + if ( !runningOnPAL ) // NTSC? + { + CLOCKFREQ = CLOCKFREQ_NOMINAL = 1022727; +#ifdef SUPPORT_MIDI + midiDelayCyclesFP16 = 2144814; + midiIn_DetectedStartBitThreshold = 29; +#endif +#ifdef DEBUG_OUTPUT + Serial.println( "running on NTSC" ); +#endif + } else + { + CLOCKFREQ = CLOCKFREQ_NOMINAL = 985248; +#ifdef SUPPORT_MIDI + midiDelayCyclesFP16 = 2066202; // CLOCKFREQ * 65536 / 31250 + midiIn_DetectedStartBitThreshold = 28; +#endif +#ifdef DEBUG_OUTPUT + Serial.println( "running on PAL" ); +#endif + } + + c64CycleCount = + c64CycleCountResetReleased = + nCyclesEmulated = + fmFakeOutput = + fmAutoDetectStep = + sidFakeOutput = + sidAutoDetectStep = + sidAutoDetectStep_2 = + ringRead = ringWrite = + samplesElapsed = samplesTotal = 0; - playSID->updateConfiguration( &stateConfig[ activeProfile * 20 ] ); +#ifdef FANCY_LED + pinMode( ledPin, OUTPUT ); + //digitalWrite( ledPin, LOW ); + CORE_PIN31_PORTCLEAR = CORE_PIN31_BITMASK; + ledPinStatus = 0; + + ledColorsBufOfs = 0; + ledColors2Write = 0; + ledWriteStatus = 0; +#endif + + // to make sure we don't have undefined behaviour + pinMode( midiPinIn, INPUT ); + pinMode( midiPinOut, OUTPUT ); + pinMode( midiIRQPin, OUTPUT ); + MIDI_IRQ_PIN_LOW + +#ifdef SUPPORT_MIDI + MIDI_ringRead = MIDI_ringWrite = 0; + MIDI_ringReadIn = MIDI_ringWriteIn = 0; +#endif + + dummy = prgDirectory[ 0 ]; + dummy = prgRepository[ 0 ]; + + for ( uint32_t i = 0; i < cfgPRGCode_size; i++ ) + dummy = cfgPRGCode[ i ]; + + playSID = new AudioStreamSID; + + playSID->init(); + + playSID->updateConfiguration( &stateConfig[ activeProfile * MAX_SETTINGS ], &stateConfig[ 10 * MAX_SETTINGS ] ); + memcpy( stateConfigPrevious, stateConfig, MAX_SETTINGS * 11 ); playSID->begin(); +#if ( audioDevice == 0 ) + mqs = new AudioOutputMQS(); + AudioMemory( 512 ); + new AudioConnection(*playSID, 0, *mqs, 0); + new AudioConnection(*playSID, 1, *mqs, 1); +#else + audioPT8211 = new AudioOutputPT8211(); + AudioMemory( 512 ); + new AudioConnection(*playSID, 0, *audioPT8211, 0); + new AudioConnection(*playSID, 1, *audioPT8211, 1); +#endif + disableISR = 0; doReset = 1; } void resetEmulation() { - //playSID->stop(); - disableISR = 1; - debounceCycle = - ringRead = - ringWrite = - nCyclesEmulated = - samplesElapsed = + + stateInConfigMode = + stateInTransferMode = + stateInVisualizationMode = + stateConfigRegisterAccess = + stateReadDirectoryMode = + debounceCycle = + ringRead = + ringWrite = + nCyclesEmulated = + samplesElapsed = samplesTotal = 0; + c64CycleCountResetReleased = c64CycleCount = 10; + extern uint8_t firstBufferAfterReset; + firstBufferAfterReset = 0; + + extern bool activeSID2, activeFM, activeSID2Prev, activeFMPrev; + + activeSID2 = activeSID2Prev = false; + activeFM = activeFMPrev = false; + +#ifdef SUPPORT_MIDI + activeMIDI_In = activeMIDI_Out = false; +#endif + + stateInTransferMode = 0; + transferData = (uint8_t *)&launchCode[ 2 ]; + transferDataEnd = (uint8_t *)&launchCode[ launchSize ]; + + /* if ( configUpdatedTemporarily ) + { + configUpdatedTemporarily = 0; + readConfigFromEEPROM(); + + uint8_t activeProfile = stateConfig[ MAX_SETTINGS * 10 ]; + playSID->updateConfiguration( &stateConfig[ activeProfile * MAX_SETTINGS ] ); + memcpy( stateConfigPrevious, stateConfig, MAX_SETTINGS * 11 ); + }*/ + // send special command to reset sound chips ringBufGPIO[ ringWrite ] = 0xffffffff; ringTime[ ringWrite ] = c64CycleCount; @@ -270,12 +480,19 @@ void resetEmulation() ringWrite &= ( RING_SIZE - 1 ); c64CycleCount ++; - //playSID->continuePlaying(); +#ifdef SUPPORT_MIDI + + MIDIControlReg = MIDIStatusReg = 0; + MIDI_ringWrite = MIDI_ringRead = 0; + MIDI_ringWriteIn = MIDI_ringReadIn = 0; + + +#endif - fmFakeOutput = + fmFakeOutput = fmAutoDetectStep = 0; - - sidFakeOutput = + + sidFakeOutput = sidAutoDetectStep = sidAutoDetectStep_2 = 0; @@ -284,36 +501,88 @@ void resetEmulation() sidAutoDetectRegs[ i ] = 0; sidAutoDetectRegs_2[ i ] = 0; } + disableISR = 0; } +uint32_t accCycleCounter = 0; +uint32_t accCycleCounterMin = 1000000; +uint32_t accCycleCounterMax = 0; +uint32_t accCycleN = 0; + void loop() { if ( doReset == 1 ) { doReset = 2; +#ifdef DEBUG_OUTPUT + Serial.println( "reset emulation" ); +#endif resetEmulation(); - //speakSAM( 7 ); +#ifdef SUPPORT_MIDI + MIDIControlReg = 3; + MIDIStatusReg &= 127; + releasedIRQ = 1; + MIDI_IRQ_PIN_LOW +#endif } if ( stateWriteConfigToEEPROM ) { - stateWriteConfigToEEPROM = 0; - writeConfigToEEPROM(); - - uint8_t activeProfile = stateConfig[ 20 * 10 ]; + disableISR = 1; + playSID->stop(); + + if ( stateWriteConfigToEEPROM == 1 ) + { + writeConfigToEEPROM(); + doReset = 1; + configUpdatedTemporarily = 0; + } else if ( stateWriteConfigToEEPROM == 3 ) + { + for (int i = MAX_SETTINGS * 10; i < MAX_SETTINGS * 11; i++) + EEPROM.write( i, stateConfig[ i ] ); + doReset = 1; + configUpdatedTemporarily = 0; + } + + uint8_t activeProfile = stateConfig[ MAX_SETTINGS * 10 ]; if ( activeProfile >= 10 ) activeProfile = 0; - - playSID->updateConfiguration( &stateConfig[ activeProfile * 20 ] ); + + // if profile or SID #1/#2 or FM or reSID version changed => do emulation reset + playSID->updateConfiguration( &stateConfig[ activeProfile * MAX_SETTINGS ], &stateConfig[ 10 * MAX_SETTINGS ] ); + memcpy( stateConfigPrevious, stateConfig, MAX_SETTINGS * 11 ); + + playSID->reset(); + + doReset = 2; + + resetEmulation(); + + #ifdef SUPPORT_MIDI + MIDIControlReg = 3; + MIDIStatusReg &= 127; + releasedIRQ = 1; + MIDI_IRQ_PIN_LOW + #endif + + playSID->begin(); + stateWriteConfigToEEPROM = 0; + disableISR = 0; } - #if ( audioDevice == 0 ) - mqs->poll_update(); - #else - audioPT8211->poll_update(); - #endif + if ( stateInVisualizationMode ) + { + extern bool driveLEDs; + driveLEDs = true; + } + +#if ( audioDevice == 0 ) + mqs->poll_update(); +#else + audioPT8211->poll_update(); +#endif } void setD07_Read() @@ -326,11 +595,9 @@ void setD07_Write() CORE_PIN19_DDRREG |= CORE_PIN19_BITMASK | CORE_PIN18_BITMASK | CORE_PIN14_BITMASK | CORE_PIN15_BITMASK | CORE_PIN17_BITMASK | CORE_PIN16_BITMASK | CORE_PIN22_BITMASK | CORE_PIN23_BITMASK; } -#define CPU_RESET_CYCLECOUNTER { ARM_DEMCR |= ARM_DEMCR_TRCENA; ARM_DWT_CTRL |= ARM_DWT_CTRL_CYCCNTENA; ARM_DWT_CYCCNT = 0; } - #define D_FLAGS (CORE_PIN19_BITMASK|CORE_PIN18_BITMASK|CORE_PIN14_BITMASK|CORE_PIN15_BITMASK|CORE_PIN17_BITMASK|CORE_PIN16_BITMASK|CORE_PIN22_BITMASK|CORE_PIN23_BITMASK) -inline void writeDataPins(uint8_t val) +__attribute__( ( always_inline ) ) inline void writeDataPins(uint8_t val) { // enable LVC245 CORE_PIN6_PORTCLEAR = CORE_PIN6_BITMASK; @@ -350,19 +617,25 @@ inline void writeDataPins(uint8_t val) CORE_PIN19_PORTSET = s; CORE_PIN19_PORTCLEAR = c; - unsigned long cycles; - do { - cycles = ARM_DWT_CYCCNT; #ifdef FIRMWARE_C128 - } while (cycles < ( 180 * TEENSY_CLOCK / 600 ) ); + do {} while (ARM_DWT_CYCCNT < ( 180 * TEENSY_CLOCK / 600 ) ); #else - } while (cycles < ( 120 * TEENSY_CLOCK / 600 ) ); + do {} while (ARM_DWT_CYCCNT < ( 120 * TEENSY_CLOCK / 600 ) ); #endif CORE_PIN6_PORTSET = CORE_PIN6_BITMASK; } -inline uint8_t readDataPins() +__attribute__( ( always_inline ) ) inline void omitReadDataPins() +{ + CORE_PIN6_PORTSET = CORE_PIN6_BITMASK; + setD07_Write(); +} + +__attribute__( ( always_inline ) ) inline uint8_t readDataPins() { +/* + // this setup of the level shifter has been moved into the ISR-handler. Not nice, but saves a few cycles... + setD07_Read(); // some delay (maybe use CPU cycle counter instead) @@ -375,12 +648,16 @@ inline uint8_t readDataPins() if ( TEENSY_CLOCK > 720 ) CORE_PIN6_PORTCLEAR = CORE_PIN6_BITMASK; if ( TEENSY_CLOCK > 600 ) - CORE_PIN6_PORTCLEAR = CORE_PIN6_BITMASK; + CORE_PIN6_PORTCLEAR = CORE_PIN6_BITMASK;*/ + + #ifdef FIRMWARE_C128 + // this delay does not seem to be necessary + // const uint32_t waitC128 = 80 * TEENSY_CLOCK / 600; + // do { } while (ARM_DWT_CYCCNT < waitC128 ); + #endif #define IMXRT_GPIO6_DIRECT (*(volatile uint32_t *)0x42000000) register uint32_t data = IMXRT_GPIO6_DIRECT; - register uint32_t data2 = data >> 12; - asm volatile( "bfi %0, %1, 14, 2" : "+r"( data ) : "r"( data2 ) ); // disable reading/writing D0...D7 CORE_PIN6_PORTSET = CORE_PIN6_BITMASK; @@ -400,300 +677,431 @@ inline uint8_t readDataPins() return D; } -volatile uint8_t forceRead; -FASTRUN void isrSID() + +volatile uint8_t forceRead __attribute__ ((aligned (64))); + + +FASTRUN void isrDetermineClockFrequency() { - // for accurate timing - CPU_RESET_CYCLECOUNTER; + static uint32_t cyclesSinceLastCallAcc = 0, cyclesSinceLastCall = 816; + static uint32_t accCyclesSinceLastCall = 0; - // C128 needs at least a delay value of 6, let's go with 10 for now - // to do: test with various PLAs on C64s - #ifdef FIRMWARE_C128 - unsigned long cycles; - do { - cycles = ARM_DWT_CYCCNT; - } while (cycles < ( 20 * TEENSY_CLOCK / 600 ) ); - #endif + cyclesSinceLastCallAcc += ARM_DWT_CYCCNT; - static int potCycleCounterAll = 0; + CPU_RESET_CYCLECOUNTER; + if ( ++ accCyclesSinceLastCall >= 64 ) + { + cyclesSinceLastCall = cyclesSinceLastCallAcc / 64 + 16; + accCyclesSinceLastCall = 0; + cyclesSinceLastCallAcc = 0; + + // cyculesSinceLastCall: ~828 cycles for PAL, approx. 797 or 798 for NTSC for TEENSY_CLOCK 816 + if ( cyclesSinceLastCall > ( 813 * TEENSY_CLOCK ) / 816 ) // PAL system + runningOnPAL = 1; else + runningOnPAL = 0; + } c64CycleCount ++; - potCycleCounterAll ++; +} - // GPIO Bank #9: Phi2, CS, ... - #define IMXRT_GPIO9_DIRECT (*(volatile uint32_t *)0x4200C000) - register uint32_t data_9 = IMXRT_GPIO9_DIRECT; - register uint32_t data2_9 = data_9 >> 12; - asm volatile( "bfi %0, %1, 14, 2" : "+r"( data_9 ) : "r"( data2_9 ) ); - // read signals: address, RW, ... - #define IMXRT_GPIO6_DIRECT (*(volatile uint32_t *)0x42000000) - register uint32_t data = IMXRT_GPIO6_DIRECT; - register uint32_t data2 = data >> 12; - asm volatile( "bfi %0, %1, 14, 2" : "+r"( data ) : "r"( data2 ) ); +FASTRUN void isrSID() +{ + // for accurate timing + CPU_RESET_CYCLECOUNTER; + + c64CycleCount ++; - // check PHI2 (only if you're testing on breadboards) - // if ( !( data & CORE_PIN1_BITMASK ) ) return; - // read more signals - #define IMXRT_GPIO7_DIRECT (*(volatile uint32_t *)0x42004000) - register uint32_t data_7 = IMXRT_GPIO7_DIRECT; - register uint32_t data2_7 = data_7 >> 12; - asm volatile( "bfi %0, %1, 14, 2" : "+r"( data_7 ) : "r"( data2_7 ) ); + if ( disableISR ) + return; - register uint32_t A = ( ( data & ( 1 << CORE_PIN0_BIT ) ) >> CORE_PIN0_BIT ) | - ( ( data & ( 3 << CORE_PIN24_BIT ) ) >> ( CORE_PIN24_BIT - 1 ) ) | - ( ( data & ( 3 << CORE_PIN26_BIT ) ) >> ( CORE_PIN26_BIT - 3 ) ); + register uint32_t data_7, data_9; + register uint32_t signals, sid2; + register uint32_t data, A = 0; #ifdef C128_D500_SUPPORT - register uint32_t temp_7 = data_7; - data_7 &= ~CORE_PIN37_BITMASK; + uint8_t sid2_d500 = 0; #endif - if ( disableISR ) - return; + // C128 needs a delay + #ifdef FIRMWARE_C128 + // shorter delays result in invalid RW line + do { } while (ARM_DWT_CYCCNT < 20 * TEENSY_CLOCK / 600 ); + #endif - static int busValue = 0; - static int busValueTTL = 0; + // GPIO Bank #9: Phi2, CS, ... + #define IMXRT_GPIO9_DIRECT (*(volatile uint32_t *)0x4200C000) + data_9 = IMXRT_GPIO9_DIRECT; - if ( busValueTTL <= 0 ) + #ifdef FIRMWARE_C128 + if ( !( data_9 & CORE_PIN2_BITMASK ) ) // CPU writes to bus { - busValue = 0; - } else - busValueTTL --; + do { } while (ARM_DWT_CYCCNT < 60 * TEENSY_CLOCK / 600 ); + data_9 = IMXRT_GPIO9_DIRECT; + } + #endif + // read A5..8, IO1, IO2, RESET + // this must not happen earlier, at least on a C128 (the above delay 15 or 20 + read data_9 is sufficient) + #define IMXRT_GPIO7_DIRECT (*(volatile uint32_t *)0x42004000) + data_7 = IMXRT_GPIO7_DIRECT; + + #ifdef C128_D500_SUPPORT + register uint32_t temp_7; + temp_7 = data_7; + data_7 &= ~CORE_PIN37_BITMASK; + #endif + // // is (any) SID selected? // extern uint32_t SID2_ADDR; - register uint32_t signals = ( ( data_7 ^ DUAL_SID_FLIPMASK ) & DUAL_SID_FLIPMASK ) | ( data_7 & DUAL_SID_ADDR_MASK ); - register uint32_t sid2 = (signals & SID2_ADDR); + extern uint32_t SID2_MODEL; + signals = ( ( data_7 ^ DUAL_SID_FLIPMASK ) & DUAL_SID_FLIPMASK ) | ( data_7 & DUAL_SID_ADDR_MASK ); + sid2 = (signals & SID2_ADDR); #ifdef C128_D500_SUPPORT - uint8_t sid2_d500 = 0; if ( ( SID2_ADDR & CORE_PIN37_BITMASK ) && // D500? !( temp_7 & CORE_PIN36_BITMASK ) && // MMU Pin 47 (C64-Mode = low) !( temp_7 & CORE_PIN37_BITMASK ) && // A8 (read at U3 pin 14) - !( data_9 & CORE_PIN2_BITMASK ) ) + !( data_9 & CORE_PIN2_BITMASK ) && + c64CycleCount > 500000 ) { sid2_d500 = sid2 = 1; + if ( SID2_MODEL == 0 ) + { + sid2 = 0; + #ifdef C128_D500_SUPPORT + sid2_d500 = 0; + #endif + } } data_7 = temp_7; #endif - extern uint32_t SID2_MODEL; - if ( SID2_MODEL == 0 ) sid2 = 0; + static int32_t potCycleCounter = 0; + extern bool emulateFM, readRegistersFM; + #ifdef SUPPORT_MIDI + extern bool emulateMIDI; + #endif + + uint8_t tasksToDo = 0; if ( !( data_9 & CORE_PIN3_BITMASK ) // Chip Select - #ifdef C128_D500_SUPPORT - || sid2_d500 - #endif + #ifdef C128_D500_SUPPORT + || sid2_d500 + #endif || ( (SID2_ADDR & DUAL_SID_FLIPMASK) && sid2 ) ) + tasksToDo |= 1; + + if ( !stateInConfigMode && !stateInTransferMode ) { - if ( !( data_9 & CORE_PIN2_BITMASK ) ) // RW - { - // - // CPU writes to SID - // - register uint8_t D = readDataPins(); + if ( potCycleCounter == 0 || potCycleCounter == 256 ) + tasksToDo |= 2; - if ( sid2 == 0 ) + if ( emulateFM && !( data_7 & CORE_PIN13_BITMASK ) ) // IO2 + tasksToDo |= 4; + + #ifdef SUPPORT_MIDI + if ( emulateMIDI && !( data_7 & CORE_PIN11_BITMASK ) ) // IO1 access + tasksToDo |= 8; + #endif + + if ( stateInVisualizationMode ) + { + #ifdef FIRMWARE_C128 + if ( !( temp_7 & CORE_PIN36_BITMASK ) && // MMU Pin 47 (C64-Mode = low) + !( temp_7 & CORE_PIN37_BITMASK ) && // A8 (read at U3 pin 14) + !( data_9 & CORE_PIN2_BITMASK ) ) // RW + addrLine |= 8; + #endif + + if ( !( data_9 & CORE_PIN3_BITMASK ) ) // Chip Select { - if ( sidAutoDetectStep == 0 && - sidAutoDetectRegs[ 0x12 ] == 0xff && - sidAutoDetectRegs[ 0x0e ] == 0xff && - sidAutoDetectRegs[ 0x0f ] == 0xff && - A == 0x12 && D == 0x20 ) - { - sidAutoDetectStep = 1; - } - sidAutoDetectRegs[ A & 31 ] = D; + if ( ( data_7 & CORE_PIN34_BITMASK ) ) addrLine |= 1; + if ( ( data_7 & CORE_PIN35_BITMASK ) ) addrLine |= 2; + if ( ( data_7 & CORE_PIN36_BITMASK ) ) addrLine |= 4; + #ifndef FIRMWARE_C128 + if ( ( data_7 & CORE_PIN37_BITMASK ) ) addrLine |= 8; + #endif + } + if ( !( data_7 & CORE_PIN11_BITMASK ) ) // IO1 access -> set flag + addrLine |= 0x10; + if ( !( data_7 & CORE_PIN13_BITMASK ) ) // IO2 access -> set flag + addrLine |= 0x20; + } + } else + { + tasksToDo = ( tasksToDo & 1 ) | 0x80; + #ifdef FANCY_LED + ledWriteStatus = 0; + #endif + } - if ( A == 0x1f ) - { - stateInConfigMode = CONFIG_MODE_CYCLES; // SID remains in config mode for 1/40sec - goto noSIDCommand; - } else - if ( A == 0x1e && stateInConfigMode > 0 ) - { - stateConfigRegisterAccess = D; - stateInConfigMode = CONFIG_MODE_CYCLES; - goto noSIDCommand; - } else - if ( A == 0x1d && stateInConfigMode > 0 ) + if ( ( tasksToDo & ( 1 + 4 + 8 ) ) && !( data_9 & CORE_PIN2_BITMASK ) ) + { + setD07_Read(); + CORE_PIN6_PORTCLEAR = CORE_PIN6_BITMASK; + } + + /* + ___ __ + | |__ | \ + |___ |___ |__/ + + */ + #ifdef FANCY_LED + + // 0 = do nothing + // 1 = writing '0', need to do something before we quit the FIQ-handler + // 2 = started writing a '1', need to switch low next cycle + // 3 = started writing the interbit gap (T0L, T1L), can do more work next time + // 4 + x = wait for x more cycles (reset signal) + // 5 = wait to send reset signal + // -1 = do nothing + extern bool driveLEDs; + static uint8_t ledUpdate = 0; + if ( driveLEDs && tasksToDo == 0 && ( (++ledUpdate & 3) == 0 || ledWriteStatus == 1 ) ) + { + switch (ledWriteStatus) + { + case 0: { - if ( D == 0xff ) + if ( ledBits2Write || ledColors2Write ) { - stateWriteConfigToEEPROM = 1; + static uint32_t currentLEDColor; + if ( ledBits2Write == 0 && ledColors2Write ) // next led + { + currentLEDColor = ledWriteRGB[ ( (NUM_LEDS - ledColors2Write) + ledColorsBufOfs ) % NUM_LEDS ]; + ledColors2Write --; + ledBits2Write = 24; + } + + // transmit next bit + register uint8_t bit = ( currentLEDColor >> 23 ) & 1; + currentLEDColor <<= 1; + ledBits2Write --; + if ( bit && !ledPinStatus ) + CORE_PIN31_PORTSET = CORE_PIN31_BITMASK; + ledPinStatus = bit; + + ledWriteStatus = bit + 1; } else { - stateConfig[ stateConfigRegisterAccess ] = D; - stateInConfigMode = CONFIG_MODE_CYCLES; + // transmit reset, this delay (must be >5) is essential for the update-rate of the LED-animation + ledWriteStatus = 5 + 200 * 4; + if ( ledPinStatus ) + CORE_PIN31_PORTCLEAR = CORE_PIN31_BITMASK; + ledPinStatus = 0; } - goto noSIDCommand; - } else - if ( A == 0x1c && stateInConfigMode > 0 ) - { - // launch PRG! - if ( D == 0xff ) // read directory - { - stateReadDirectoryMode = 0x1000; - transferData = &prgDirectory[ 0 ]; - forceRead = *transferData; - } else - { - const uint8_t *dirEntry = &prgDirectory[ D * 24 ]; - uint32_t ofs = ( dirEntry[ 19 ] * 256 + dirEntry[ 20 ] ) * 256 + dirEntry[ 21 ]; - prgSize = dirEntry[ 22 ] * 256 + dirEntry[ 23 ]; - prgCode = &prgRepository[ ofs ]; + break; + } - launchCode[ 11 ] = ( 0x0801 + prgSize + 2 ) & 255; - launchCode[ 13 ] = ( 0x0801 + prgSize + 2 ) >> 8; + case 1: + if ( !ledPinStatus ) + CORE_PIN31_PORTSET = CORE_PIN31_BITMASK; + ledPinStatus = 1; + ledWriteStatus = 4; + break; + + case 2: + if ( ledPinStatus ) + CORE_PIN31_PORTCLEAR = CORE_PIN31_BITMASK; + ledPinStatus = 0; + ledWriteStatus = 0; + break; + + case 5: + ledWriteStatus = -1; + + default: + if ( ledWriteStatus >= 6 ) + ledWriteStatus --; + break; + } + } +#endif // FANCY_LED - for ( int i = 0; i < 256; i++ ) - forceRead = prgCode[ i ]; + // read signals: A0..4 (D0..7 are only on this port, but the level shifter is not set to read here) + if ( tasksToDo & ~2 ) + { + #define IMXRT_GPIO6_DIRECT (*(volatile uint32_t *)0x42000000) + data = IMXRT_GPIO6_DIRECT; - stateInConfigMode = 0; - stateInTransferMode = 1; - } - goto noSIDCommand; - } - } else - { - // SID #2 - if ( sidAutoDetectStep_2 == 0 && - sidAutoDetectRegs_2[ 0x12 ] == 0xff && - sidAutoDetectRegs_2[ 0x0e ] == 0xff && - sidAutoDetectRegs_2[ 0x0f ] == 0xff && - A == 0x12 && D == 0x20 ) - { - sidAutoDetectStep_2 = 1; - } - sidAutoDetectRegs_2[ A & 31 ] = D; - } + A = ( ( data & ( 1 << CORE_PIN0_BIT ) ) >> CORE_PIN0_BIT ) | + ( ( data & ( 3 << CORE_PIN24_BIT ) ) >> ( CORE_PIN24_BIT - 1 ) ) | + ( ( data & ( 3 << CORE_PIN26_BIT ) ) >> ( CORE_PIN26_BIT - 3 ) ); + } - A &= 0x1f; + static uint8_t busValue = 0; + static int busValueTTL = 0; - extern uint32_t SID1_MODEL; - busValue = D; - if ( SID1_MODEL == 8580 ) - busValueTTL = 0xa2000; else // 8580 - busValueTTL = 0x1d00; // 6581 + if ( busValueTTL <= 0 ) + { + busValue = 0; + } else + busValueTTL --; - if ( A <= 24 ) - { - ringBufGPIO[ ringWrite ] = D | ( A << 8 ) | ( sid2 ? 1 << 20 : 0 ); - ringTime[ ringWrite ] = c64CycleCount; - ringWrite++; - ringWrite &= ( RING_SIZE - 1 ); - - // pseudo stereo - if ( SID2_ADDR == (uint32_t)(1 << 31) ) - { - ringBufGPIO[ ringWrite ] = D | ( A << 8 ) | ( 1 << 20 ); - ringTime[ ringWrite ] = c64CycleCount; - ringWrite++; - ringWrite &= ( RING_SIZE - 1 ); - } - } - } else + if ( ( tasksToDo & 127 ) == 0 ) + goto noSID_FM_MIDI_Commands; + + /* + __ __ __ __ __ __ + /__` | | \ |__) | | /__` |__| /\ |\ | | \ | | |\ | / _` + .__/ | |__/ |__) \__/ .__/ | | /~~\ | \| |__/ |___ | | \| \__> + + */ + if ( tasksToDo & 1 ) + { + if ( ( data_9 & CORE_PIN2_BITMASK ) ) // RW -> READ { // // CPU reads SID register // + // this mirrors the 0x1D to 0x1F registers to launch the config tool with SYS54301, SYS54333, ... + if ( (A & 0x1F) >= 0x1D && (A & 0x1F) <= 0x1F ) + { + sid2 = 0; A &= 0x1F; + } + if ( sid2 == 0 ) { - if ( stateInTransferMode && A < 16 ) + if ( ( stateInTransferMode || stateGoingTowardsTransferMode == 3 ) && A < 10 ) { - - if ( A == 0 ) // start transfer - { - writeDataPins( 0xEA ); // execute NOP - transferStage = 0; - launcherAddress = transferAddress = ( launchCode[ 1 ] << 8 ) + launchCode[ 0 ]; - transferData = (uint8_t *)&launchCode[ 2 ]; - transferDataEnd = (uint8_t *)&launchCode[ launchSize ]; - jumpAddress = 0xD401; - forceRead = *transferData; - } else if ( A == 1 ) - { - writeDataPins( 0xA9 ); // execute LDA - forceRead = *transferData; - } else if ( A == 2 ) - { - writeDataPins( forceRead ); // LDA value - transferData ++; - forceRead = *transferData; - } else if ( A == 3 ) - { - writeDataPins( 0x8D ); // execute STA - forceRead = *transferData; - } else if ( A == 4 ) - { - writeDataPins( transferAddress & 255 ); // STA lowbyte address - forceRead = *transferData; - } else if ( A == 5 ) + switch ( A ) { - writeDataPins( transferAddress >> 8 ); // STA highbyte address - transferAddress ++; - } else if ( A == 6 ) - { - writeDataPins( 0x4C ); // JMP - if ( transferData >= transferDataEnd && transferStage == 0 ) - { - transferStage = 1; - transferAddress = ( prgCode[ 1 ] << 8 ) + prgCode[ 0 ]; - transferData = (uint8_t *)&prgCode[ 2 ]; - transferDataEnd = (uint8_t *)&prgCode[ prgSize ]; + case 0: // start transfer + writeDataPins( 0x78 ); // execute SEI, previous: NOP 0xea + transferStage = 0; + launcherAddress = transferAddress = ( launchCode[ 1 ] << 8 ) + launchCode[ 0 ]; + transferData = (uint8_t *)&launchCode[ 2 ]; + transferDataEnd = (uint8_t *)&launchCode[ launchSize ]; + jumpAddress = 0xD401; + forceRead = *transferData; - } - if ( transferData >= transferDataEnd && transferStage == 1 ) - { - jumpAddress = launcherAddress; - } - } else if ( A == 7 ) - { - writeDataPins( jumpAddress & 255 ); // JMP address low byte - } else if ( A == 8 ) - { - writeDataPins( jumpAddress >> 8 ); // JMP address high byte - if ( stateInTransferMode && jumpAddress == launcherAddress ) - stateInTransferMode = 0; + CACHE_PRELOAD( transferData ) + break; + + case 1: + writeDataPins( 0xA9 ); // execute LDA + forceRead = *transferData; + break; + + case 2: + writeDataPins( forceRead ); // LDA value + transferData ++; + forceRead = *transferData; + break; + + case 3: + writeDataPins( 0x8D ); // execute STA + forceRead = *transferData; + break; + + case 4: + writeDataPins( transferAddress & 255 ); // STA lowbyte address + forceRead = *transferData; + break; + + case 5: + writeDataPins( transferAddress >> 8 ); // STA highbyte address + transferAddress ++; + break; + + case 6: + writeDataPins( 0x4C ); // JMP + if ( transferData >= transferDataEnd && transferStage == 0 ) + { + transferStage = 1; + transferAddress = ( prgCode[ 1 ] << 8 ) + prgCode[ 0 ]; + transferData = (uint8_t *)&prgCode[ 2 ]; + transferDataEnd = (uint8_t *)&prgCode[ prgSize ]; + forceRead = *transferData; + } + if ( transferData >= transferDataEnd && transferStage == 1 ) + { + jumpAddress = launcherAddress; + } + break; + + case 7: + writeDataPins( jumpAddress & 255 ); // JMP address low byte + break; + + case 8: + writeDataPins( jumpAddress >> 8 ); // JMP address high byte + if ( stateInTransferMode && jumpAddress == launcherAddress ) + stateInTransferMode = 0; + break; } - } else - if ( A == 0x1d && stateInConfigMode == 0 ) + stateInTransferMode = TRANSFER_MODE_CYCLES; + stateGoingTowardsTransferMode = 0; + + } /* if ( stateInTransferMode && A < 9 ) */ else + if ( A == 0x1d && stateInVisualizationMode ) + { + #ifdef FANCY_LED + writeDataPins( nLEDsConfigTool ); + #else + writeDataPins( 0 ); + #endif + } else if ( A == 0x1e && stateInVisualizationMode ) + { + // firmware features + register uint8_t F = 0; + #ifdef EMULATE_OPL2 + F |= 1; + #endif + #ifdef SUPPORT_MIDI + F |= 2; + #endif + #ifdef FANCY_LED + F |= 4; + #endif + writeDataPins( F ); + } else if ( A == 0x1c && stateInVisualizationMode ) + { + // address line flags + writeDataPins( addrLine ); + } else + + if ( A == 0x1d && stateInConfigMode == 0 && c64CycleCount > 1000000 ) { - prgSize = cfgPRGSize; - prgCode = cfgPRGCode; - - stateInTransferMode = 1; writeDataPins( 0x4C ); // JMP - } else if ( A == 0x1e && stateInConfigMode == 0 ) + prgSize = cfgPRGCode_size; + prgCode = cfgPRGCode; + stateGoingTowardsTransferMode = 1; + } else if ( A == 0x1e && stateInConfigMode == 0 && stateGoingTowardsTransferMode == 1 ) { writeDataPins( 0x00 ); - } else if ( A == 0x1f && stateInConfigMode == 0 ) + stateGoingTowardsTransferMode = 2; + } else if ( A == 0x1f && stateInConfigMode == 0 && stateGoingTowardsTransferMode == 2 ) { writeDataPins( 0xD4 ); - } else if ( A == 0x1d && stateInConfigMode > 0 ) + stateGoingTowardsTransferMode = 3; + } else + if ( A == 0x1d && stateInConfigMode > 0 ) { - if ( stateConfigRegisterAccess < 224 ) - writeDataPins( stateConfig[ stateConfigRegisterAccess ] ); else - if ( stateConfigRegisterAccess < 224 + 16 ) - writeDataPins( VERSION_STR[ stateConfigRegisterAccess - 224 ] ); + if ( stateConfigRegisterAccess < 65536 ) + writeDataPins( stateConfig[ stateConfigRegisterAccess ++ ] ); else if ( stateConfigRegisterAccess < 65536 + 16 ) + writeDataPins( VERSION_STR[ stateConfigRegisterAccess - 65536 ] ); stateInConfigMode = CONFIG_MODE_CYCLES; } else if ( A == 0x1c && stateReadDirectoryMode >= 0x1000 ) { if ( stateReadDirectoryMode < 0x1000 + 36 * 24 + 1 ) { - writeDataPins( *transferData ); + writeDataPins( *transferData ); transferData ++; forceRead = *transferData; stateReadDirectoryMode ++; } else + { stateReadDirectoryMode = 0; + } stateInConfigMode = CONFIG_MODE_CYCLES; - } else + } else { if ( registerRead ) { @@ -703,7 +1111,7 @@ FASTRUN void isrSID() extern uint32_t SID1_MODEL; if ( SID1_MODEL == 8580 ) writeDataPins( 2 ); else - writeDataPins( 3 ); + writeDataPins( 3 ); } else { if ( A >= 0x19 && A <= 0x1c ) @@ -714,155 +1122,611 @@ FASTRUN void isrSID() } } else { - if ( registerRead ) + if ( registerRead ) + { + if ( sidAutoDetectStep_2 == 1 && A == 0x1b ) + { + sidAutoDetectStep_2 = 0; + if ( SID2_MODEL == 8580 ) + writeDataPins( 2 ); else + writeDataPins( 3 ); + } else { - if ( sidAutoDetectStep_2 == 1 && A == 0x1b ) + if ( A >= 0x19 && A <= 0x1c ) + writeDataPins( outRegisters_2[ A & 31 ] ); else + writeDataPins( busValue ); + } + } + } + } else + { + // + // CPU writes to SID + // + register uint8_t D = readDataPins(); + + if ( sid2 == 0 ) + { + if ( sidAutoDetectStep == 0 && + sidAutoDetectRegs[ 0x12 ] == 0xff && + sidAutoDetectRegs[ 0x0e ] == 0xff && + sidAutoDetectRegs[ 0x0f ] == 0xff && + A == 0x12 && D == 0x20 ) + { + sidAutoDetectStep = 1; + } + sidAutoDetectRegs[ A & 31 ] = D; + + if ( A == 0x1f ) + { + if ( D == 0xfe ) + { + stateInVisualizationMode = CONFIG_MODE_CYCLES; + addrLine = 0; + } + if ( D == 0xff ) + stateInConfigMode = CONFIG_MODE_CYCLES; // SID remains in config mode for 1/40sec + + goto noSID_FM_MIDI_Commands; + } else if ( stateInConfigMode > 0 ) + { + if ( A == 0x1e ) + { + if ( D >= 224 ) + stateConfigRegisterAccess = 65536 - 224 + D; else + stateConfigRegisterAccess = D * 64; + stateInConfigMode = CONFIG_MODE_CYCLES; + goto noSID_FM_MIDI_Commands; + } else if ( A == 0x1d ) + { + if ( D == 0xff ) { - sidAutoDetectStep_2 = 0; - if ( SID2_MODEL == 8580 ) - writeDataPins( 2 ); else - writeDataPins( 3 ); + stateWriteConfigToEEPROM = 1; + } else if ( D == 0xfe ) + { + configUpdatedTemporarily = 1; + stateWriteConfigToEEPROM = 2; // update settings, but DO NOT WRITE to EEPROM + } else if ( D == 0xfd ) + { + configUpdatedTemporarily = 1; + stateWriteConfigToEEPROM = 3; // only write current profile to EEPROM } else { - if ( A >= 0x19 && A <= 0x1c ) - //writeDataPins( 0 ); else - writeDataPins( outRegisters_2[ A & 31 ] ); else - writeDataPins( busValue ); + stateConfig[ stateConfigRegisterAccess ++ ] = D; + stateInConfigMode = CONFIG_MODE_CYCLES; } + goto noSID_FM_MIDI_Commands; + } else if ( A == 0x1c ) + { + // launch PRG! + if ( D == 0xff ) // read directory + { + stateReadDirectoryMode = 0x1000; + stateInVisualizationMode = + stateInConfigMode = 0; + transferData = &prgDirectory[ 0 ]; + __builtin_prefetch( &prgDirectory[ 0 ] ); + forceRead = *transferData; + } else + { + const uint8_t *dirEntry = &prgDirectory[ D * 24 ]; + uint32_t ofs = ( dirEntry[ 19 ] * 256 + dirEntry[ 20 ] ) * 256 + dirEntry[ 21 ]; + prgSize = dirEntry[ 22 ] * 256 + dirEntry[ 23 ]; + prgCode = &prgRepository[ ofs ]; + + launchCode[ 12 + 70 ] = ( 0x0801 + prgSize + 2 ) & 255; + launchCode[ 14 + 70 ] = ( 0x0801 + prgSize + 2 ) >> 8; + + __builtin_prefetch( &prgCode[ 0 ] ); + __builtin_prefetch( &launchCode[ 0 ] ); + + stateInConfigMode = 0; + stateGoingTowardsTransferMode = 3; + stateInTransferMode = TRANSFER_MODE_CYCLES; + } + goto noSID_FM_MIDI_Commands; } + } + } else + { + // SID #2 + if ( sidAutoDetectStep_2 == 0 && + sidAutoDetectRegs_2[ 0x12 ] == 0xff && + sidAutoDetectRegs_2[ 0x0e ] == 0xff && + sidAutoDetectRegs_2[ 0x0f ] == 0xff && + A == 0x12 && D == 0x20 ) + { + sidAutoDetectStep_2 = 1; + } + sidAutoDetectRegs_2[ A & 31 ] = D; + } + + A &= 0x1f; + + extern uint32_t SID1_MODEL; + busValue = D; + if ( SID1_MODEL == 8580 ) + busValueTTL = 0xa2000; else // 8580 + busValueTTL = 0x1d00; // 6581 + + if ( A <= 24 ) + { + // pseudo stereo? + if ( SID2_ADDR == (uint32_t)(1 << 31) ) + // yes, flag command for both SIDs + ringBufGPIO[ ringWrite ] = D | ( A << 8 ) | ( 1 << 21 ); else + // command is only for one of the SIDs + ringBufGPIO[ ringWrite ] = D | ( A << 8 ) | ( sid2 ? 1 << 20 : 0 ); + ringTime[ ringWrite ] = c64CycleCount + nSIDFMDelay; + ringWrite++; + ringWrite &= ( RING_SIZE - 1 ); } } - return; + goto handleLED_and_quit_FIQ; } - extern bool emulateFM, readRegistersFM; - if ( emulateFM ) + /* + ___ __ __ __ ___ __ __ ___ __ + |__ |\/| /__` / \ | | |\ | | \ |__ \_/ |__) /\ |\ | | \ |__ |__) + | | | .__/ \__/ \__/ | \| |__/ |___ / \ | /~~\ | \| |__/ |___ | \ + + */ + if ( tasksToDo & 4 ) { - if ( readRegistersFM ) - if ( ( data_9 & CORE_PIN2_BITMASK ) ) // RW - if ( !( data_7 & CORE_PIN13_BITMASK ) ) // IO2 + if ( !( data_9 & CORE_PIN2_BITMASK ) ) // RW -> Write + { + register uint8_t D = readDataPins(); + + if ( ( data_7 & CORE_PIN34_BITMASK ) ) A |= 1 << 5; + if ( ( data_7 & CORE_PIN35_BITMASK ) ) A |= 1 << 6; + //if ( ( data_7 & CORE_PIN36_BITMASK ) ) A |= 1 << 7; + //if ( ( data_7 & CORE_PIN37_BITMASK ) ) A |= 1 << 8; + + if ( A == 0 && D == 0x04 ) + fmAutoDetectStep = 1; + if ( A > 0 && D == 0x60 && fmAutoDetectStep == 1 ) + fmAutoDetectStep = 2; + if ( A == 0 && D == 0x04 && fmAutoDetectStep == 2 ) + fmAutoDetectStep = 3; + if ( A > 0 && D == 0x80 && fmAutoDetectStep == 3 ) { - // CPU reads from bus - if ( ( data_7 & CORE_PIN34_BITMASK ) ) A |= 1 << 5; - if ( ( data_7 & CORE_PIN35_BITMASK ) ) A |= 1 << 6; - if ( ( data_7 & CORE_PIN36_BITMASK ) ) A |= 1 << 7; - if ( ( data_7 & CORE_PIN37_BITMASK ) ) A |= 1 << 8; - - if ( (A & 0x60) == 0x60 ) - { - // this is not a real read of the YM3812 status register! - // only a fake that let's the detection routine be happy - uint32_t D = fmFakeOutput; - fmFakeOutput = 0xc0 - fmFakeOutput; - writeDataPins( D ); - return; - } else - if ( A >= 0x08 && A <= 0x0f ) - { - // reading of the external Sound Expander Keyboard => we don't have it, return 0xFF - writeDataPins( 0xff ); - return; - } + fmAutoDetectStep = 4; + fmFakeOutput = 0; } - if ( !( data_9 & CORE_PIN2_BITMASK ) ) // RW - { - if ( !( data_7 & CORE_PIN13_BITMASK ) ) // IO2 + if ( A >= 0x40 && !( A & 15 ) ) { - register uint8_t D = readDataPins(); - - if ( ( data_7 & CORE_PIN34_BITMASK ) ) A |= 1 << 5; - if ( ( data_7 & CORE_PIN35_BITMASK ) ) A |= 1 << 6; - if ( ( data_7 & CORE_PIN36_BITMASK ) ) A |= 1 << 7; - if ( ( data_7 & CORE_PIN37_BITMASK ) ) A |= 1 << 8; - - if ( A == 0 && D == 0x04 ) - fmAutoDetectStep = 1; - if ( A > 0 && D == 0x60 && fmAutoDetectStep == 1 ) - fmAutoDetectStep = 2; - if ( A == 0 && D == 0x04 && fmAutoDetectStep == 2 ) - fmAutoDetectStep = 3; - if ( A > 0 && D == 0x80 && fmAutoDetectStep == 3 ) - { - fmAutoDetectStep = 4; - fmFakeOutput = 0; - } - - ringBufGPIO[ ringWrite ] = D | ( A << 8 ) | ( 1 << 28 ); - ringTime[ ringWrite ] = c64CycleCount; + ringTime[ ringWrite ] = c64CycleCount + nSIDFMDelay; ringWrite++; ringWrite &= ( RING_SIZE - 1 ); - return; } - } - + goto handleLED_and_quit_FIQ; + } else if ( readRegistersFM ) // RW and IO2 already checked + { + // CPU reads from bus + if ( ( data_7 & CORE_PIN34_BITMASK ) ) A |= 1 << 5; + if ( ( data_7 & CORE_PIN35_BITMASK ) ) A |= 1 << 6; + //if ( ( data_7 & CORE_PIN36_BITMASK ) ) A |= 1 << 7; + //if ( ( data_7 & CORE_PIN37_BITMASK ) ) A |= 1 << 8; + + if ( (A & 0x60) == 0x60 ) + { + // this is not a real read of the YM3812 status register! + // only a fake that let's the detection routine be happy + uint32_t D = fmFakeOutput; + fmFakeOutput = 0xc0 - fmFakeOutput; + writeDataPins( D ); + goto handleLED_and_quit_FIQ; + } else if ( A >= 0x08 && A <= 0x0f ) + { + // reading of the external Sound Expander Keyboard => we don't have it, return 0xFF + writeDataPins( 0xff ); + goto handleLED_and_quit_FIQ; + } + } } -noSIDCommand: - if ( true ) - { - static int32_t potCycleCounter = 0; - static int newPotCounterX = 0; - static int newPotCounterY = 0; - if ( potCycleCounter == 0 ) - { - pinMode( potX, OUTPUT ); pinMode( potY, OUTPUT ); - CORE_PIN4_PORTCLEAR = CORE_PIN4_BITMASK | CORE_PIN5_BITMASK; - } else if ( potCycleCounter == 256 ) - { - pinMode( potX, INPUT ); pinMode( potY, INPUT ); - newPotCounterX = 1; - newPotCounterY = 1; - } else if ( potCycleCounter >= 256 ) + /* + __ __ __ __ __ + |\/| | | \ | |__) | | /__` |__| /\ |\ | | \ | | |\ | / _` + | | | |__/ | |__) \__/ .__/ | | /~~\ | \| |__/ |___ | | \| \__> + + */ +#ifdef SUPPORT_MIDI + + if ( tasksToDo & 8 ) + { + if ( !( data_9 & CORE_PIN2_BITMASK ) ) // RW -> Write { - if ( newPotCounterX && (data_9 & CORE_PIN4_BITMASK) ) + register uint8_t D = readDataPins(); + // write to IO1 + if ( A >= MIDI_START_ADDR && A <= MIDI_END_ADDR ) { - outRegisters[ 25 ] = potCycleCounter - 256 - 5; - newPotCounterX = 0; + switch ( (A & 3) ) + { + default: + break; + case MIDI_CONTROL_REG: + MIDIControlReg = D; + if ( D == 3 ) + { + MIDIStatusReg = 0; + activeMIDI_In = true; + } + + if ( /*midiAutoDetectStep == 0 &&*/ D == 3 ) + midiAutoDetectStep = 1; else + if ( midiAutoDetectStep == 1 && D >= 0x15 ) + midiAutoDetectStep = 2; else + midiAutoDetectStep = 0; + + if ( ( !( D & 0x80 ) ) // disable ACIA IRQ + || ( !releasedIRQ && IRQconditionTX ) + ) + { + MIDI_IRQ_PIN_LOW + releasedIRQ = 1; + doNotTriggerIRQAgainThisCycle = 1; + } + break; + case MIDI_TRANSMIT_REG: + //D = readDataPins(); + //MIDIStatusReg &= 127; + MIDIStatusReg |= 128; + MIDI_ringBuf[ MIDI_ringWrite ] = ( D << 1 ) | ( 255 << 9 ); + MIDI_ringTime[ MIDI_ringWrite++ ] = c64CycleCount + nMIDIDelay; + MIDI_ringWrite &= MIDI_RING_SIZE - 1; + midiSerialWrite = -1; + activeMIDI_Out = true; + + if ( !releasedIRQ && IRQconditionTX ) // disable IRQ when it was active because of TX + { + MIDI_IRQ_PIN_LOW + releasedIRQ = 1; + doNotTriggerIRQAgainThisCycle = 1; + } + break; + } } - if ( newPotCounterY && (data_9 & CORE_PIN5_BITMASK) ) + } else + { + // reading IO1 range + extern bool midiInputEnabled; + if ( midiInputEnabled && A >= MIDI_START_ADDR && A <= MIDI_END_ADDR ) { - outRegisters[ 26 ] = potCycleCounter - 256 - 5; - newPotCounterY = 0; - } + register uint8_t D = 0; + // read from IO1 + if ( (A & 3) == MIDI_STATUS_REG ) + { + if ( midiAutoDetectStep == 1 ) + { + D = 0; + } else + { + D = MIDIStatusReg; + D |= (1 << 1);// | ( 1 << 7 ); // also turns on bit 7 + if ( !MIDIFetchReceivedByte ) + D |= (1 << 0);// | ( 1 << 7 ); // also turns on bit 7 + } + writeDataPins( D ); + } else if ( (A & 3) == MIDI_RECEIVE_REG ) + { + activeMIDI_In = true; + + if ( !MIDIFetchReceivedByte ) + { + D = MIDINextReceivedByte; + MIDIFetchReceivedByte = 1; + writeDataPins( D ); + if ( !releasedIRQ && IRQconditionRX ) // disable IRQ when it was active because of RX + { + MIDI_IRQ_PIN_LOW + releasedIRQ = 1; + doNotTriggerIRQAgainThisCycle = 1; + IRQconditionRX = 0; + } + } + } + } else + writeDataPins( 0xff ); } + } - potCycleCounter ++; +#endif + + +noSID_FM_MIDI_Commands: + /* + __ __ ___ + |__) / \ | \_/ \ / + | \__/ | / \ . | + ' + */ + static uint8_t newPotCounterX = 0; + static uint8_t newPotCounterY = 0; - if ( potCycleCounterAll >= 512 ) + if ( potCycleCounter == 0 ) + { + //pinMode( potX, OUTPUT ); pinMode( potY, OUTPUT ); + CORE_PIN4_DDRREG |= CORE_PIN4_BITMASK | CORE_PIN5_BITMASK; + CORE_PIN4_PORTCLEAR = CORE_PIN4_BITMASK | CORE_PIN5_BITMASK; + } else if ( potCycleCounter == 256 ) + { + //pinMode( potX, INPUT ); pinMode( potY, INPUT ); + CORE_PIN4_DDRREG &= ~CORE_PIN4_BITMASK & ~CORE_PIN5_BITMASK; + newPotCounterX = newPotCounterY = 1; + } else if ( potCycleCounter >= 256 ) + { + if ( newPotCounterX && (data_9 & CORE_PIN4_BITMASK) ) + { + outRegisters[ 25 ] = potCycleCounter - 256; + newPotCounterX = 0; + } + if ( newPotCounterY && (data_9 & CORE_PIN5_BITMASK) ) { - if ( newPotCounterX ) outRegisters[ 25 ] = 255; - if ( newPotCounterY ) outRegisters[ 26 ] = 255; - potCycleCounter = 0; - potCycleCounterAll = 0; + outRegisters[ 26 ] = potCycleCounter - 256; + newPotCounterY = 0; } } + potCycleCounter ++; + potCycleCounter &= 511; + if ( stateInConfigMode > 0 ) stateInConfigMode --; - if ( !( data_9 & CORE_PIN29_BITMASK ) && debounceCycle < c64CycleCount ) // Button - { - stateConfig[ 200 ] ++; - stateConfig[ 200 ] %= 10; - debounceCycle = c64CycleCount + 200000; + if ( stateInTransferMode > 0 ) + stateInTransferMode --; - playSID->updateConfiguration( &stateConfig[ stateConfig[ 200 ] * 20 ] ); - speakSAM( stateConfig[ 200 ] ); - } + if ( stateInVisualizationMode ) + stateInVisualizationMode --; - if ( !(data_7 & CORE_PIN32_BITMASK) ) // reset +handleLED_and_quit_FIQ:; + + /* + __ ___ __ ___ ___ + |__) |__ /__` |__ | + | \ |___ .__/ |___ | + + */ + /*static uint8_t subsample = 0; + subsample ++; + subsample &= 63;*/ + + if ( /*!subsample && */!(data_7 & CORE_PIN32_BITMASK) ) // reset { if ( doReset == 0 ) { - //playSID->stop(); doReset = 1; - return; } } else if ( doReset == 2 ) + { doReset = 0; + c64CycleCountResetReleased = c64CycleCount; + } + + /* + __ + |\/| | | \ | + | | | |__/ | + + */ +#ifdef SUPPORT_MIDI + + if ( emulateMIDI ) + { + if ( !stateInConfigMode && !stateInTransferMode ) + if ( activeMIDI_In && releasedIRQ && MIDIFetchReceivedByte && MIDI_ringReadIn != MIDI_ringWriteIn && doNotTriggerIRQAgainThisCycle == 0 ) + { + //MIDINextReceivedByteTime = MIDI_ringTimeIn[ MIDI_ringReadIn ]; + MIDINextReceivedByte = MIDI_ringBufIn[ MIDI_ringReadIn++ ]; + MIDI_ringReadIn &= MIDI_RING_SIZE - 1; + + MIDIFetchReceivedByte = 0; + if ( MIDIControlReg & 0x80 ) // receiver interupt enable? + { + MIDI_IRQ_PIN_HIGH + releasedIRQ = 0; + IRQconditionRX = 1; + } + } + + if ( releasedIRQ && doNotTriggerIRQAgainThisCycle == 0 ) + { + if ( ((MIDIControlReg >> 5) & 3 ) == 1 ) // CR5*~CR6 + { + MIDI_IRQ_PIN_HIGH + releasedIRQ = 0; + IRQconditionTX = 1; + } + } + + if ( !releasedIRQ ) + { + MIDIStatusReg |= 128; + } else + { + if ( IRQconditionRX == 0 && ((MIDIControlReg >> 5) & 3 ) != 1 ) + MIDIStatusReg &= 127; + } + + if ( ((MIDIControlReg >> 5) & 3 ) != 1 && ( MIDIControlReg & 0x80 ) == 0 ) + MIDIStatusReg &= 127; + + + doNotTriggerIRQAgainThisCycle = 0; + + clock2midi_Counter += 65536; + + static uint8_t lastBit = 2; + + if ( activeMIDI_Out && clock2midi_Counter >= midiDelayCyclesFP16 ) + { + clock2midi_Counter -= midiDelayCyclesFP16; + + if ( midiWriteBit <= 1024 / 2 ) + { + if ( ( midiWrite & 1 ) != lastBit ) + { + if ( midiWrite & 1 ) + CORE_PIN29_PORTSET = CORE_PIN29_BITMASK; else + CORE_PIN29_PORTCLEAR = CORE_PIN29_BITMASK; + lastBit = midiWrite & 1; + } + midiWrite >>= 1; + midiWriteBit <<= 1; + } else + { + CORE_PIN29_PORTSET = CORE_PIN29_BITMASK; + + if ( MIDI_ringRead != MIDI_ringWrite && nCyclesEmulated >= MIDI_ringTime[ MIDI_ringRead ] ) + { + lastBit = 2; + midiWrite = MIDI_ringBuf[ MIDI_ringRead ]; + MIDI_ringRead ++; + MIDI_ringRead &= MIDI_RING_SIZE - 1; + midiWriteBit = 1; + } + } + } + + static uint8_t midiIn_Status = 1; // 1 = idle + static uint32_t midiIn_Value = 0; + static uint32_t midiIn_CurBit = 0; + static uint32_t midiIn_DetectedStartBit = 0; + + static int32_t midiIn_Clock = 0; + + extern bool midiInputEnabled; + if ( midiInputEnabled && !stateInConfigMode && !stateInTransferMode && activeMIDI_In ) + { + #define IMXRT_GPIO8_DIRECT (*(volatile uint32_t *)0x42008000) + register uint32_t data_8 = IMXRT_GPIO8_DIRECT; + + if ( midiIn_Status == 2 ) // receive 8 bits + stop bit + { + midiIn_Clock += 65536; + if ( midiIn_Clock >= (int32_t)midiDelayCyclesFP16 ) + { + uint8_t l = (data_8 >> CORE_PIN28_BIT) & 1; + midiIn_Clock -= midiDelayCyclesFP16; + if ( midiIn_CurBit < 8 ) // 9-th bit is the stop bit + { + midiIn_Value |= l << midiIn_CurBit; + } else + { + if ( l == 1 ) + { + midiIn_Status = 1; + MIDI_ringBufIn[ MIDI_ringWriteIn++ ] = midiIn_Value; + MIDI_ringWriteIn &= MIDI_RING_SIZE - 1; + } + } + midiIn_CurBit ++; + } + } else + { + + if ( ( data_8 & ( 1 << CORE_PIN28_BIT ) ) == 0 ) + { + midiIn_DetectedStartBit ++; + + if ( midiIn_DetectedStartBit > midiIn_DetectedStartBitThreshold ) + { + midiIn_DetectedStartBit = 0; + midiIn_Value = 0; + midiIn_CurBit = 0; + midiIn_Clock = 0; + midiIn_Status = 2; // 2 = receive + } + } else + midiIn_DetectedStartBit = 0; + } + } + } +#endif + + /* + __ ___ ___ __ + |__) | | | | / \ |\ | + |__) \__/ | | \__/ | \| + + */ + if ( /*!subsample && */!stateInConfigMode && !stateInTransferMode ) + { + static uint32_t buttonPressedCycle = 0, nCyclesPressed = 0, nCyclesReleased = 0, lastSAMMessage = 0; + static uint8_t buttonState = 0; + if ( !( data_9 & CORE_PIN33_BITMASK ) && debounceCycle < c64CycleCount ) // Button + { + if ( buttonState == 0 ) + { + buttonPressedCycle = c64CycleCount; + buttonState = 1; + } + nCyclesPressed ++; + nCyclesReleased = 0; + } else + { + nCyclesReleased ++; + nCyclesPressed = 0; + } + + if ( buttonState && nCyclesReleased > 1000 ) + { + debounceCycle = c64CycleCount + 200000; + + uint8_t activeProfile = stateConfig[ MAX_SETTINGS * 10 ]; + + if ( c64CycleCount - buttonPressedCycle > 300000 ) + { + if ( activeProfile > 0 ) + activeProfile --; else + activeProfile = 9; + } else + { + activeProfile ++; + if ( activeProfile >= 10 ) + activeProfile = 0; + } + + stateConfig[ MAX_SETTINGS * 10 ] = activeProfile; + + playSID->updateConfiguration( &stateConfig[ activeProfile * MAX_SETTINGS ], &stateConfig[ 10 * MAX_SETTINGS ] ); + memcpy( stateConfigPrevious, stateConfig, MAX_SETTINGS * 11 ); + + extern uint8_t samActive; + if ( samActive ) + { + speakSAM( activeProfile, c64CycleCount - lastSAMMessage < 2000000 ? true : false ); + lastSAMMessage = c64CycleCount; + } + + buttonState = 0; + nCyclesReleased = 0; + + } + } + + /* + ___ __ + | |__ | \ + |___ |___ |__/ + + */ +#ifdef FANCY_LED + if ( ledWriteStatus == 4 ) + { + if ( ledPinStatus ) + { + //do {} while ( ARM_DWT_CYCCNT < ( LED_HIGH_DURATION * TEENSY_CLOCK / 600 ) ); + CORE_PIN31_PORTCLEAR = CORE_PIN31_BITMASK; + } + ledPinStatus = 0; + ledWriteStatus = 0; + } +#endif } diff --git a/Source/SIDKick/config.h b/Source/SIDKick/config.h index abe9070..51a7f88 100644 --- a/Source/SIDKick/config.h +++ b/Source/SIDKick/config.h @@ -6,7 +6,7 @@ /_______ /|___/_______ /____|__ \__|\___ >__|_ \ \/ \/ \/ \/ \/ - SIDKick - SID-replacement with SID and Sound Expander Emulation based on Teensy 4.1 + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 Copyright (c) 2019-2021 Carsten Dachsbacher Logo created with http://patorjk.com/software/taag/ @@ -25,1642 +25,1008 @@ along with this program. If not, see . */ -const long int cfgPRGSize = 30721; -const unsigned char cfgPRGCode[30721] = { - 0x01, 0x08, 0x0B, 0x08, 0x20, 0x03, 0x9E, 0x32, 0x30, 0x36, 0x31, 0x00, 0x00, 0x00, 0xA5, 0x01, - 0x8D, 0xD9, 0x36, 0x29, 0xF8, 0x09, 0x06, 0x85, 0x01, 0xBA, 0x8E, 0xDA, 0x36, 0x20, 0x01, 0x37, - 0x20, 0x56, 0x30, 0x20, 0xB8, 0x2D, 0x48, 0x20, 0x16, 0x2E, 0xA2, 0x19, 0xBD, 0xDB, 0x36, 0x95, - 0x02, 0xCA, 0x10, 0xF8, 0x68, 0x85, 0x90, 0xAE, 0xDA, 0x36, 0x9A, 0xAE, 0xD9, 0x36, 0x86, 0x01, - 0x60, 0x20, 0xA5, 0x2F, 0xA0, 0x04, 0xB1, 0x02, 0x8D, 0x36, 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x35, - 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x37, 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x38, 0x37, 0xA0, 0x06, 0xB1, - 0x02, 0x8D, 0x3A, 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x39, 0x37, 0xAD, 0x39, 0x37, 0x85, 0x26, 0xAD, - 0x3A, 0x37, 0x18, 0x69, 0xD8, 0x85, 0x27, 0xAD, 0x35, 0x37, 0x85, 0xFB, 0xAD, 0x36, 0x37, 0x85, - 0xFC, 0xAD, 0x39, 0x37, 0x85, 0xFD, 0xAD, 0x3A, 0x37, 0x18, 0x69, 0x44, 0x85, 0xFE, 0xA0, 0x00, - 0xB1, 0xFB, 0xF0, 0x0E, 0x0D, 0x38, 0x37, 0x91, 0xFD, 0xAD, 0x37, 0x37, 0x91, 0x26, 0xC8, 0x4C, - 0x8F, 0x08, 0x4C, 0x8C, 0x2E, 0x20, 0xA5, 0x2F, 0xA9, 0x28, 0x8D, 0x3B, 0x37, 0xA0, 0x05, 0xB1, - 0x02, 0x8D, 0x3C, 0x37, 0xC8, 0xB1, 0x02, 0x8D, 0x3D, 0x37, 0xA0, 0x04, 0xB1, 0x02, 0x8D, 0x3F, - 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x3E, 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x40, 0x37, 0x88, 0xB1, 0x02, - 0x8D, 0x41, 0x37, 0xA9, 0x00, 0xA2, 0x08, 0x4E, 0x3B, 0x37, 0x90, 0x04, 0x18, 0x6D, 0x3C, 0x37, - 0x6A, 0x6E, 0x3B, 0x37, 0xCA, 0xD0, 0xF3, 0x8D, 0x3C, 0x37, 0xAD, 0x3B, 0x37, 0x18, 0x6D, 0x3D, - 0x37, 0x8D, 0x3B, 0x37, 0xAD, 0x3C, 0x37, 0x69, 0x00, 0x8D, 0x3C, 0x37, 0xAD, 0x3B, 0x37, 0x85, - 0x26, 0xAD, 0x3C, 0x37, 0x18, 0x69, 0xD8, 0x85, 0x27, 0xAD, 0x3E, 0x37, 0x85, 0xFB, 0xAD, 0x3F, - 0x37, 0x85, 0xFC, 0xAD, 0x3B, 0x37, 0x85, 0xFD, 0xAD, 0x3C, 0x37, 0x18, 0x69, 0x44, 0x85, 0xFE, - 0xA0, 0x00, 0xB1, 0xFB, 0xF0, 0x0E, 0x0D, 0x41, 0x37, 0x91, 0xFD, 0xAD, 0x40, 0x37, 0x91, 0x26, - 0xC8, 0x4C, 0x21, 0x09, 0x4C, 0x8C, 0x2E, 0x20, 0xA5, 0x2F, 0xA0, 0x02, 0xB1, 0x02, 0x8D, 0x42, - 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x43, 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x44, 0x37, 0xA9, 0x30, 0x8D, - 0x46, 0x37, 0xA9, 0x84, 0x8D, 0x45, 0x37, 0xA0, 0x04, 0xB1, 0x02, 0x8D, 0x48, 0x37, 0x88, 0xB1, - 0x02, 0x8D, 0x47, 0x37, 0xAD, 0x47, 0x37, 0x85, 0x26, 0xAD, 0x48, 0x37, 0x18, 0x69, 0xD8, 0x85, - 0x27, 0xAD, 0x45, 0x37, 0x85, 0xFB, 0xAD, 0x46, 0x37, 0x85, 0xFC, 0xAD, 0x47, 0x37, 0x85, 0xFD, - 0xAD, 0x48, 0x37, 0x18, 0x69, 0x44, 0x85, 0xFE, 0xAD, 0x42, 0x37, 0x0A, 0xA8, 0xAA, 0xB1, 0xFB, - 0x0D, 0x44, 0x37, 0xA0, 0x00, 0x91, 0xFD, 0xAD, 0x43, 0x37, 0x91, 0x26, 0x8A, 0xA8, 0xC8, 0xB1, - 0xFB, 0x0D, 0x44, 0x37, 0xA0, 0x01, 0x91, 0xFD, 0xAD, 0x43, 0x37, 0x91, 0x26, 0x4C, 0x87, 0x2E, - 0x20, 0xA5, 0x2F, 0xA9, 0x28, 0x8D, 0x49, 0x37, 0xA0, 0x03, 0xB1, 0x02, 0x8D, 0x4A, 0x37, 0xC8, - 0xB1, 0x02, 0x8D, 0x4B, 0x37, 0xA0, 0x02, 0xB1, 0x02, 0x8D, 0x4C, 0x37, 0x88, 0xB1, 0x02, 0x8D, - 0x4D, 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x4E, 0x37, 0xA9, 0x30, 0x8D, 0x50, 0x37, 0xA9, 0x84, 0x8D, - 0x4F, 0x37, 0x98, 0xA2, 0x08, 0x4E, 0x49, 0x37, 0x90, 0x04, 0x18, 0x6D, 0x4A, 0x37, 0x6A, 0x6E, - 0x49, 0x37, 0xCA, 0xD0, 0xF3, 0x8D, 0x4A, 0x37, 0xAD, 0x49, 0x37, 0x18, 0x6D, 0x4B, 0x37, 0x8D, - 0x49, 0x37, 0xAD, 0x4A, 0x37, 0x69, 0x00, 0x8D, 0x4A, 0x37, 0xAD, 0x49, 0x37, 0x85, 0x26, 0xAD, - 0x4A, 0x37, 0x18, 0x69, 0xD8, 0x85, 0x27, 0xAD, 0x4F, 0x37, 0x85, 0xFB, 0xAD, 0x50, 0x37, 0x85, - 0xFC, 0xAD, 0x49, 0x37, 0x85, 0xFD, 0xAD, 0x4A, 0x37, 0x18, 0x69, 0x44, 0x85, 0xFE, 0xAD, 0x4C, - 0x37, 0x0A, 0xA8, 0xAA, 0xB1, 0xFB, 0x0D, 0x4E, 0x37, 0xA0, 0x00, 0x91, 0xFD, 0xAD, 0x4D, 0x37, - 0x91, 0x26, 0x8A, 0xA8, 0xC8, 0xB1, 0xFB, 0x0D, 0x4E, 0x37, 0xA0, 0x01, 0x91, 0xFD, 0xAD, 0x4D, - 0x37, 0x91, 0x26, 0x4C, 0x87, 0x2E, 0x20, 0xA5, 0x2F, 0xA9, 0x28, 0x8D, 0x51, 0x37, 0xA0, 0x03, - 0xB1, 0x02, 0x8D, 0x52, 0x37, 0xC8, 0xB1, 0x02, 0x8D, 0x53, 0x37, 0xA0, 0x02, 0xB1, 0x02, 0x8D, - 0x54, 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x55, 0x37, 0x88, 0xB1, 0x02, 0x8D, 0x56, 0x37, 0xA9, 0x30, - 0x8D, 0x58, 0x37, 0xA9, 0x84, 0x8D, 0x57, 0x37, 0x98, 0xA2, 0x08, 0x4E, 0x51, 0x37, 0x90, 0x04, - 0x18, 0x6D, 0x52, 0x37, 0x6A, 0x6E, 0x51, 0x37, 0xCA, 0xD0, 0xF3, 0x8D, 0x52, 0x37, 0xAD, 0x51, - 0x37, 0x18, 0x6D, 0x53, 0x37, 0x8D, 0x51, 0x37, 0xAD, 0x52, 0x37, 0x69, 0x00, 0x8D, 0x52, 0x37, - 0xAD, 0x51, 0x37, 0x85, 0x26, 0xAD, 0x52, 0x37, 0x18, 0x69, 0xD8, 0x85, 0x27, 0xAD, 0x51, 0x37, - 0x85, 0xFD, 0xAD, 0x52, 0x37, 0x18, 0x69, 0x44, 0x85, 0xFE, 0xAD, 0x57, 0x37, 0x85, 0xFB, 0xAD, - 0x58, 0x37, 0x85, 0xFC, 0xAD, 0x54, 0x37, 0x0A, 0xA8, 0xC8, 0xB1, 0xFB, 0x0D, 0x56, 0x37, 0xA0, - 0x00, 0x91, 0xFD, 0xAD, 0x55, 0x37, 0x91, 0x26, 0x4C, 0x87, 0x2E, 0x20, 0xA5, 0x2F, 0xAD, 0xAE, - 0x36, 0xAE, 0xAF, 0x36, 0x20, 0xBB, 0x2F, 0xAD, 0x85, 0x36, 0x20, 0xB9, 0x2F, 0xA9, 0x14, 0x20, - 0x47, 0x2F, 0x20, 0x82, 0x2D, 0x8D, 0x59, 0x37, 0x8E, 0x5A, 0x37, 0xA9, 0x02, 0x8D, 0x5B, 0x37, - 0xA9, 0x09, 0x8D, 0x5C, 0x37, 0xA9, 0x01, 0x8D, 0x5D, 0x37, 0xA9, 0x00, 0x8D, 0x5E, 0x37, 0x20, - 0x2F, 0x2E, 0xA9, 0x7B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0xE1, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, - 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x22, 0x2E, 0xA9, 0x13, 0xA0, 0x03, 0x91, 0x02, - 0x98, 0x88, 0x91, 0x02, 0xAD, 0x85, 0x36, 0x88, 0x91, 0x02, 0x98, 0x88, 0x91, 0x02, 0x98, 0x20, - 0x55, 0x0A, 0x20, 0x2F, 0x2E, 0xA9, 0xA3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, - 0xA9, 0x5D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, - 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x8D, 0x0B, 0xA9, 0x00, 0xA0, 0x00, - 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0xB3, 0xA0, 0x04, 0x91, 0x02, - 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xAD, 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x00, 0x20, 0x91, 0x2E, - 0x20, 0xBB, 0x2F, 0xA9, 0x14, 0x20, 0x47, 0x2F, 0x18, 0x69, 0xB1, 0xA8, 0x8A, 0x69, 0x35, 0xAA, - 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, - 0xB1, 0x02, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xDA, 0x0B, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, - 0x0E, 0x20, 0x40, 0x08, 0xA9, 0x0D, 0x8D, 0x5F, 0x37, 0xA9, 0x03, 0x8D, 0x60, 0x37, 0xAD, 0x59, - 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0xC9, 0x02, 0xF0, 0x08, 0xA9, 0x0B, 0x8D, - 0x60, 0x37, 0x8D, 0x5F, 0x37, 0x20, 0x2F, 0x2E, 0xA9, 0xCB, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, - 0x00, 0x91, 0x02, 0xA9, 0x14, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xAD, 0x5F, - 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x01, 0xD0, 0x05, 0xA9, 0x80, 0x4C, - 0x33, 0x0C, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x09, 0x20, 0x40, 0x08, 0x20, 0x22, 0x2E, - 0xA9, 0xDB, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xAD, 0x5A, 0x37, 0x85, 0x0B, - 0xAD, 0x59, 0x37, 0x85, 0x0A, 0xA0, 0x01, 0xB1, 0x0A, 0x91, 0x02, 0xAD, 0x60, 0x37, 0x88, 0x91, - 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x01, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x6F, 0x0C, 0xA9, 0x00, - 0x20, 0x36, 0x09, 0x20, 0x2F, 0x2E, 0xA9, 0xF3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, - 0x02, 0xA9, 0xD3, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, - 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x02, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xA0, 0x0C, 0xA9, - 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0D, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x13, 0xA0, - 0x05, 0x91, 0x02, 0xAD, 0x5E, 0x37, 0x18, 0x69, 0x06, 0x88, 0x91, 0x02, 0xAD, 0x59, 0x37, 0xAE, - 0x5A, 0x37, 0xA0, 0x02, 0x20, 0x91, 0x2E, 0x20, 0xAA, 0x2D, 0x18, 0x69, 0x99, 0xA8, 0x8A, 0x69, - 0x35, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, - 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x02, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xEE, 0x0C, 0xA9, 0x00, 0xA0, - 0x00, 0x91, 0x02, 0xA9, 0x03, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x1B, 0xA0, 0x04, 0x91, - 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x4F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, - 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x03, 0xD0, 0x05, 0xA9, - 0x80, 0x4C, 0x25, 0x0D, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, - 0x2F, 0x2E, 0xA9, 0x21, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x85, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, - 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x22, 0xA0, 0x04, 0x91, - 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x39, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, - 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x04, 0xD0, 0x05, 0xA9, - 0x80, 0x4C, 0x85, 0x0D, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, - 0x2F, 0x2E, 0xA9, 0x2E, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x85, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, - 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x22, 0x2E, 0xA9, 0x2B, 0xA0, 0x02, 0x91, 0x02, - 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x5A, 0x37, 0x85, 0x0B, 0xAD, 0x59, 0x37, 0x85, 0x0A, 0xB1, - 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x03, - 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xE8, 0x0D, 0xA9, 0x00, 0x20, 0x36, 0x09, 0xAD, 0x59, 0x37, 0xAE, - 0x5A, 0x37, 0xA0, 0x04, 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x07, 0xC9, 0x80, 0x8D, 0xA3, 0x37, 0x8D, - 0xA4, 0x37, 0x0A, 0x90, 0x0B, 0xAD, 0xA3, 0x37, 0x49, 0xFF, 0x18, 0x69, 0x01, 0x8D, 0xA3, 0x37, - 0x20, 0x22, 0x2E, 0xA9, 0x31, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0xA3, - 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x04, - 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x38, 0x0E, 0xA9, 0x00, 0x20, 0x36, 0x09, 0xAD, 0xA4, 0x37, 0x0A, - 0x90, 0x2B, 0x20, 0x2F, 0x2E, 0xA9, 0x30, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, - 0xA9, 0x89, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, - 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x04, 0xD0, 0x30, 0xA9, 0x80, 0x4C, 0x99, 0x0E, 0x20, 0x2F, 0x2E, - 0xA9, 0x30, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x8F, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, - 0x04, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x99, 0x0E, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, - 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x43, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, - 0x02, 0xA9, 0x28, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, - 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x05, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xD0, 0x0E, 0xA9, - 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x08, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x4B, 0xA0, - 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x85, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, - 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, - 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x4C, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, - 0x02, 0xA9, 0x69, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, - 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x06, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x30, 0x0F, 0xA9, - 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x04, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x56, 0xA0, - 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x85, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, - 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, - 0x40, 0x08, 0x20, 0x22, 0x2E, 0xA9, 0x53, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, - 0xAD, 0x5A, 0x37, 0x85, 0x0B, 0xAD, 0x59, 0x37, 0x85, 0x0A, 0xA0, 0x05, 0xB1, 0x0A, 0xA0, 0x01, - 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x05, 0xD0, 0x05, 0xA9, - 0x80, 0x4C, 0x95, 0x0F, 0xA9, 0x00, 0x20, 0x36, 0x09, 0xAD, 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, - 0x06, 0x20, 0x91, 0x2E, 0x18, 0x69, 0x5A, 0xC9, 0x80, 0x8D, 0xA3, 0x37, 0xC9, 0x64, 0xD0, 0x2B, - 0x20, 0x2F, 0x2E, 0xA9, 0x58, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x72, - 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, - 0xB1, 0x02, 0xC9, 0x06, 0xD0, 0x67, 0xA9, 0x80, 0x4C, 0x3E, 0x10, 0x20, 0x22, 0x2E, 0xA9, 0x58, - 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, - 0x06, 0x20, 0x91, 0x2E, 0x18, 0x69, 0x5A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, - 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x06, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x0E, 0x10, 0xA9, 0x00, 0x20, - 0x36, 0x09, 0x20, 0x2F, 0x2E, 0xA9, 0x5A, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, - 0xA9, 0x70, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, - 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x06, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x3E, 0x10, 0xA9, 0x00, 0xA0, - 0x00, 0x91, 0x02, 0xA9, 0x03, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x6B, 0xA0, 0x04, 0x91, - 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xFC, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, 0x91, - 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x05, 0xA9, - 0x80, 0x4C, 0x75, 0x10, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0B, 0x20, 0x40, 0x08, 0xAD, - 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x07, 0x20, 0x91, 0x2E, 0xA2, 0x00, 0xC9, 0x80, 0x90, 0x01, - 0xCA, 0x38, 0xE9, 0x32, 0xB0, 0x01, 0xCA, 0x8D, 0xA1, 0x37, 0x8E, 0xA2, 0x37, 0xE0, 0x80, 0xB0, - 0x03, 0x4C, 0x3E, 0x11, 0xAD, 0xA1, 0x37, 0xAE, 0xA2, 0x37, 0x20, 0x85, 0x2F, 0x8D, 0xA1, 0x37, - 0x8E, 0xA2, 0x37, 0xC9, 0x0A, 0x8A, 0xE9, 0x00, 0x50, 0x02, 0x49, 0x80, 0x10, 0x27, 0x20, 0x22, - 0x2E, 0xA9, 0x7C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0xA1, 0x37, 0xA0, - 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x2C, - 0xA9, 0x80, 0x4C, 0x0D, 0x11, 0x20, 0x22, 0x2E, 0xA9, 0x7C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, - 0x01, 0x91, 0x02, 0xAD, 0xA1, 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, - 0x04, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x0D, 0x11, 0xA9, 0x00, 0x20, 0x36, - 0x09, 0x20, 0x2F, 0x2E, 0xA9, 0x7B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, - 0x89, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, - 0x06, 0xB1, 0x02, 0xC9, 0x07, 0xF0, 0x03, 0x4C, 0xCC, 0x11, 0xA9, 0x80, 0x4C, 0xCE, 0x11, 0xAD, - 0xA1, 0x37, 0xC9, 0x0A, 0xAD, 0xA2, 0x37, 0xE9, 0x00, 0x50, 0x02, 0x49, 0x80, 0x10, 0x27, 0x20, - 0x22, 0x2E, 0xA9, 0x7C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0xA1, 0x37, - 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x07, 0xD0, - 0x2C, 0xA9, 0x80, 0x4C, 0x9E, 0x11, 0x20, 0x22, 0x2E, 0xA9, 0x7C, 0xA0, 0x02, 0x91, 0x02, 0xC8, - 0xA9, 0x01, 0x91, 0x02, 0xAD, 0xA1, 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, - 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x9E, 0x11, 0xA9, 0x00, 0x20, - 0x36, 0x09, 0x20, 0x2F, 0x2E, 0xA9, 0x7B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, - 0xA9, 0x8F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, - 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xCE, 0x11, 0xA9, 0x00, 0xA0, - 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x16, 0xA0, 0x05, 0x91, - 0x02, 0xA9, 0x09, 0x88, 0x91, 0x02, 0xA9, 0x6E, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, - 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, - 0x4C, 0x04, 0x12, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0xA4, 0x08, 0x20, 0x2F, - 0x2E, 0xA9, 0x93, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x56, 0xA0, 0x02, - 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, - 0x02, 0xC9, 0x08, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x3B, 0x12, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, - 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0xA3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, - 0x01, 0x91, 0x02, 0xAD, 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x08, 0x20, 0x91, 0x2E, 0x20, 0xBB, - 0x2F, 0xA9, 0x14, 0x20, 0x47, 0x2F, 0x18, 0x69, 0xB1, 0xA8, 0x8A, 0x69, 0x35, 0xAA, 0x98, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, - 0xC9, 0x08, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x8A, 0x12, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, - 0x0E, 0x20, 0x40, 0x08, 0xA9, 0x0D, 0x8D, 0x5F, 0x37, 0xA9, 0x03, 0x8D, 0x60, 0x37, 0xAD, 0x59, - 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x08, 0x20, 0x91, 0x2E, 0xC9, 0x02, 0xF0, 0x08, 0xA9, 0x0B, 0x8D, - 0x60, 0x37, 0x8D, 0x5F, 0x37, 0x20, 0x2F, 0x2E, 0xA9, 0xBB, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, - 0x01, 0x91, 0x02, 0xA9, 0x14, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xAD, 0x5F, - 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x09, 0xD0, 0x05, 0xA9, 0x80, 0x4C, - 0xE3, 0x12, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x09, 0x20, 0x40, 0x08, 0x20, 0x22, 0x2E, - 0xA9, 0xCB, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x5A, 0x37, 0x85, 0x0B, - 0xAD, 0x59, 0x37, 0x85, 0x0A, 0xA0, 0x09, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x60, 0x37, - 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x09, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x21, 0x13, - 0xA9, 0x00, 0x20, 0x36, 0x09, 0x20, 0x2F, 0x2E, 0xA9, 0xE3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, - 0x01, 0x91, 0x02, 0xA9, 0x31, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, - 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0A, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x52, - 0x13, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, - 0xF3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x59, 0x37, 0xAE, 0x5A, 0x37, - 0xA0, 0x0A, 0x20, 0x91, 0x2E, 0x20, 0xBB, 0x2F, 0xA9, 0x0C, 0x20, 0x47, 0x2F, 0x18, 0x69, 0x01, - 0xA8, 0x8A, 0x69, 0x36, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0x98, 0xA0, - 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0A, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xA1, 0x13, - 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x05, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x0B, - 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x4F, 0xA0, 0x02, 0x91, 0x02, 0xC8, - 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0B, - 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xD8, 0x13, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, - 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x11, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, - 0xA9, 0x85, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, - 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x12, - 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x39, 0xA0, 0x02, 0x91, 0x02, 0xC8, - 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0C, - 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x38, 0x14, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, - 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x1E, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, - 0xA9, 0x85, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, - 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x22, 0x2E, 0xA9, 0x1B, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x5A, 0x37, 0x85, 0x0B, 0xAD, 0x59, 0x37, - 0x85, 0x0A, 0xA0, 0x0B, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, - 0x04, 0xB1, 0x02, 0xC9, 0x0B, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x9D, 0x14, 0xA9, 0x00, 0x20, 0x36, - 0x09, 0xAD, 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x0C, 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x07, 0xC9, - 0x80, 0x8D, 0xA3, 0x37, 0x8D, 0xA4, 0x37, 0x0A, 0x90, 0x0B, 0xAD, 0xA3, 0x37, 0x49, 0xFF, 0x18, - 0x69, 0x01, 0x8D, 0xA3, 0x37, 0x20, 0x22, 0x2E, 0xA9, 0x21, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, - 0x02, 0x91, 0x02, 0xAD, 0xA3, 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, - 0x04, 0xB1, 0x02, 0xC9, 0x0C, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xED, 0x14, 0xA9, 0x00, 0x20, 0x36, - 0x09, 0xAD, 0xA4, 0x37, 0x0A, 0x90, 0x2B, 0x20, 0x2F, 0x2E, 0xA9, 0x20, 0xA0, 0x04, 0x91, 0x02, - 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x89, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, - 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0C, 0xD0, 0x30, 0xA9, 0x80, 0x4C, - 0x4E, 0x15, 0x20, 0x2F, 0x2E, 0xA9, 0x20, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, - 0xA9, 0x8F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, - 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0C, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x4E, 0x15, 0xA9, 0x00, 0xA0, - 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x33, 0xA0, 0x04, 0x91, - 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x28, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, - 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0D, 0xD0, 0x05, 0xA9, - 0x80, 0x4C, 0x85, 0x15, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x08, 0x20, 0x40, 0x08, 0x20, - 0x2F, 0x2E, 0xA9, 0x3B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x85, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, - 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x3C, 0xA0, 0x04, 0x91, - 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x69, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, - 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0E, 0xD0, 0x05, 0xA9, - 0x80, 0x4C, 0xE5, 0x15, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x04, 0x20, 0x40, 0x08, 0x20, - 0x2F, 0x2E, 0xA9, 0x46, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x85, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, - 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x22, 0x2E, 0xA9, 0x43, 0xA0, 0x02, 0x91, 0x02, - 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x5A, 0x37, 0x85, 0x0B, 0xAD, 0x59, 0x37, 0x85, 0x0A, 0xA0, - 0x0D, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, - 0xC9, 0x0D, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x4A, 0x16, 0xA9, 0x00, 0x20, 0x36, 0x09, 0xAD, 0x59, - 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x0E, 0x20, 0x91, 0x2E, 0x18, 0x69, 0x5A, 0xC9, 0x80, 0x8D, 0xA3, - 0x37, 0xC9, 0x64, 0xD0, 0x2B, 0x20, 0x2F, 0x2E, 0xA9, 0x48, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, - 0x02, 0x91, 0x02, 0xA9, 0x72, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, - 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0E, 0xD0, 0x67, 0xA9, 0x80, 0x4C, 0xF3, 0x16, - 0x20, 0x22, 0x2E, 0xA9, 0x48, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x59, - 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x0E, 0x20, 0x91, 0x2E, 0x18, 0x69, 0x5A, 0xA0, 0x01, 0x91, 0x02, - 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0E, 0xD0, 0x05, 0xA9, 0x80, 0x4C, - 0xC3, 0x16, 0xA9, 0x00, 0x20, 0x36, 0x09, 0x20, 0x2F, 0x2E, 0xA9, 0x4A, 0xA0, 0x04, 0x91, 0x02, - 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x70, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, - 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0E, 0xD0, 0x05, 0xA9, 0x80, 0x4C, - 0xF3, 0x16, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x03, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x5B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xFC, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, - 0xC9, 0x0F, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x2A, 0x17, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, - 0x0B, 0x20, 0x40, 0x08, 0xAD, 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x0F, 0x20, 0x91, 0x2E, 0xA2, - 0x00, 0xC9, 0x80, 0x90, 0x01, 0xCA, 0x38, 0xE9, 0x32, 0xB0, 0x01, 0xCA, 0x8D, 0xA1, 0x37, 0x8E, - 0xA2, 0x37, 0xE0, 0x80, 0xB0, 0x03, 0x4C, 0xF3, 0x17, 0xAD, 0xA1, 0x37, 0xAE, 0xA2, 0x37, 0x20, - 0x85, 0x2F, 0x8D, 0xA1, 0x37, 0x8E, 0xA2, 0x37, 0xC9, 0x0A, 0x8A, 0xE9, 0x00, 0x50, 0x02, 0x49, - 0x80, 0x10, 0x27, 0x20, 0x22, 0x2E, 0xA9, 0x6C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, - 0x02, 0xAD, 0xA1, 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, - 0x02, 0xC9, 0x0F, 0xD0, 0x2C, 0xA9, 0x80, 0x4C, 0xC2, 0x17, 0x20, 0x22, 0x2E, 0xA9, 0x6C, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0xA1, 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA9, - 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xC2, - 0x17, 0xA9, 0x00, 0x20, 0x36, 0x09, 0x20, 0x2F, 0x2E, 0xA9, 0x6B, 0xA0, 0x04, 0x91, 0x02, 0xC8, - 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x89, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, - 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0F, 0xF0, 0x03, 0x4C, 0x81, 0x18, 0xA9, - 0x80, 0x4C, 0x83, 0x18, 0xAD, 0xA1, 0x37, 0xC9, 0x0A, 0xAD, 0xA2, 0x37, 0xE9, 0x00, 0x50, 0x02, - 0x49, 0x80, 0x10, 0x27, 0x20, 0x22, 0x2E, 0xA9, 0x6C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, - 0x91, 0x02, 0xAD, 0xA1, 0x37, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, - 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x2C, 0xA9, 0x80, 0x4C, 0x53, 0x18, 0x20, 0x22, 0x2E, 0xA9, 0x6C, - 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0xA1, 0x37, 0xA0, 0x01, 0x91, 0x02, - 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x05, 0xA9, 0x80, 0x4C, - 0x53, 0x18, 0xA9, 0x00, 0x20, 0x36, 0x09, 0x20, 0x2F, 0x2E, 0xA9, 0x6B, 0xA0, 0x04, 0x91, 0x02, - 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x8F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, - 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x05, 0xA9, 0x80, 0x4C, - 0x83, 0x18, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x16, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x0F, 0x88, 0x91, 0x02, 0xA9, 0x6E, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, - 0x0F, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xB9, 0x18, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, - 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x83, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, - 0x02, 0xA9, 0xB5, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, - 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x10, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xF0, 0x18, 0xA9, - 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0E, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x93, 0xA0, - 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x10, - 0x20, 0x91, 0x2E, 0x20, 0xBB, 0x2F, 0xA9, 0x0B, 0x20, 0x47, 0x2F, 0x18, 0x69, 0x5F, 0xA8, 0x8A, - 0x69, 0x36, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, - 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x10, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x3F, 0x19, 0xA9, 0x00, - 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x03, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0xAB, 0xA0, 0x04, - 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x4F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, - 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x11, 0xD0, 0x05, - 0xA9, 0x80, 0x4C, 0x76, 0x19, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, - 0x20, 0x2F, 0x2E, 0xA9, 0xB1, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x85, - 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, - 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0xB2, 0xA0, 0x04, - 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x39, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, - 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x12, 0xD0, 0x05, - 0xA9, 0x80, 0x4C, 0xD6, 0x19, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, - 0x20, 0x2F, 0x2E, 0xA9, 0xBE, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x85, - 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, - 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x22, 0x2E, 0xA9, 0xBB, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x5A, 0x37, 0x85, 0x0B, 0xAD, 0x59, 0x37, 0x85, 0x0A, - 0xA0, 0x11, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, - 0x02, 0xC9, 0x11, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x3B, 0x1A, 0xA9, 0x00, 0x20, 0x36, 0x09, 0xAD, - 0x59, 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x12, 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x07, 0xC9, 0x80, 0x8D, - 0xA3, 0x37, 0x8D, 0xA4, 0x37, 0x0A, 0x90, 0x0B, 0xAD, 0xA3, 0x37, 0x49, 0xFF, 0x18, 0x69, 0x01, - 0x8D, 0xA3, 0x37, 0x20, 0x22, 0x2E, 0xAD, 0x5C, 0x37, 0x18, 0x69, 0x10, 0xA0, 0x03, 0x91, 0x02, - 0xA9, 0x11, 0x88, 0x91, 0x02, 0xAD, 0xA3, 0x37, 0x88, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, - 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x12, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x8E, 0x1A, 0xA9, 0x00, 0x20, - 0x55, 0x0A, 0xAD, 0xA4, 0x37, 0x0A, 0x90, 0x2B, 0x20, 0x2F, 0x2E, 0xA9, 0xC0, 0xA0, 0x04, 0x91, - 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x89, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, - 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x12, 0xD0, 0x30, 0xA9, 0x80, - 0x4C, 0xEF, 0x1A, 0x20, 0x2F, 0x2E, 0xA9, 0xC0, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, - 0x02, 0xA9, 0x8F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, - 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x12, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xEF, 0x1A, 0xA9, 0x00, - 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x40, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0xD3, 0xA0, 0x04, - 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xEF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, - 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x13, 0xD0, 0x05, - 0xA9, 0x80, 0x4C, 0x26, 0x1B, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0C, 0x20, 0x40, 0x08, - 0x20, 0x2F, 0x2E, 0xA9, 0xE3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x59, - 0x37, 0xAE, 0x5A, 0x37, 0xA0, 0x13, 0x20, 0x91, 0x2E, 0x20, 0xBB, 0x2F, 0xA9, 0x0B, 0x20, 0x47, - 0x2F, 0x18, 0x69, 0x49, 0xA8, 0x8A, 0x69, 0x36, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, - 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x13, 0xD0, 0x05, 0xA9, - 0x80, 0x4C, 0x75, 0x1B, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0A, 0x20, 0x40, 0x08, 0x4C, - 0x6A, 0x2E, 0x8D, 0x1F, 0xD4, 0xA2, 0x00, 0xA0, 0xE0, 0x8C, 0x1E, 0xD4, 0xAD, 0x1D, 0xD4, 0x9D, - 0x00, 0xC0, 0xC8, 0xE8, 0xE0, 0x10, 0xD0, 0xF1, 0xA9, 0x00, 0x9D, 0x00, 0xC0, 0x60, 0xAD, 0xAE, - 0x36, 0xAE, 0xAF, 0x36, 0x20, 0xBB, 0x2F, 0xAD, 0x85, 0x36, 0x20, 0xB9, 0x2F, 0xA9, 0x14, 0x20, - 0x47, 0x2F, 0x20, 0x82, 0x2D, 0x8D, 0xA5, 0x37, 0x8E, 0xA6, 0x37, 0x20, 0xBB, 0x2F, 0xA9, 0x9A, - 0xA2, 0x36, 0x20, 0xBB, 0x2F, 0xA2, 0x00, 0xA9, 0x14, 0x4C, 0x9D, 0x2E, 0x8D, 0x1F, 0xD4, 0xA2, - 0x00, 0x8E, 0x1E, 0xD4, 0xAD, 0x1D, 0xD4, 0x9D, 0x20, 0xC0, 0xE8, 0xE0, 0xC8, 0xD0, 0xF2, 0x8E, - 0x1E, 0xD4, 0xAD, 0x1D, 0xD4, 0x8D, 0x85, 0x36, 0xAD, 0xAF, 0x36, 0x8D, 0xAA, 0x37, 0xAD, 0xAE, - 0x36, 0x8D, 0xA9, 0x37, 0xA9, 0x00, 0x8D, 0xA8, 0x37, 0xAD, 0xA8, 0x37, 0xC9, 0x0A, 0x90, 0x01, - 0x60, 0xA9, 0x00, 0x8D, 0xA7, 0x37, 0xAD, 0xA7, 0x37, 0xC9, 0x14, 0xB0, 0x66, 0xAD, 0xA9, 0x37, - 0xAE, 0xAA, 0x37, 0x18, 0x6D, 0xA7, 0x37, 0x90, 0x01, 0xE8, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0x0A, - 0xB0, 0x28, 0xAD, 0xA9, 0x37, 0xAE, 0xAA, 0x37, 0x18, 0x6D, 0xA7, 0x37, 0x90, 0x01, 0xE8, 0x20, - 0x91, 0x2E, 0x20, 0xBB, 0x2F, 0xA9, 0x86, 0xA2, 0x36, 0x18, 0x6D, 0xA7, 0x37, 0x90, 0x01, 0xE8, - 0xA0, 0x00, 0x20, 0x91, 0x2E, 0x20, 0x3E, 0x2E, 0x30, 0x23, 0xAD, 0xA9, 0x37, 0xAE, 0xAA, 0x37, - 0x18, 0x6D, 0xA7, 0x37, 0x90, 0x01, 0xE8, 0x20, 0xBB, 0x2F, 0xA9, 0x9A, 0xA2, 0x36, 0x18, 0x6D, - 0xA7, 0x37, 0x90, 0x01, 0xE8, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0x20, 0xF1, 0x2F, 0xEE, 0xA7, 0x37, - 0x4C, 0x05, 0x1C, 0xA9, 0x14, 0x18, 0x6D, 0xA9, 0x37, 0x8D, 0xA9, 0x37, 0x90, 0x03, 0xEE, 0xAA, - 0x37, 0xEE, 0xA8, 0x37, 0x4C, 0xF8, 0x1B, 0x8D, 0x1F, 0xD4, 0xA2, 0x00, 0x8E, 0x1E, 0xD4, 0xBD, - 0x20, 0xC0, 0x8D, 0x1D, 0xD4, 0xE8, 0xE0, 0xC8, 0xD0, 0xF2, 0x8E, 0x1E, 0xD4, 0xAD, 0x85, 0x36, - 0x8D, 0x1D, 0xD4, 0xA9, 0xFF, 0x8D, 0x1D, 0xD4, 0x60, 0x8D, 0x1F, 0xD4, 0xA9, 0xC8, 0x8D, 0x1E, - 0xD4, 0xAD, 0x85, 0x36, 0x8D, 0x1D, 0xD4, 0xA9, 0xFF, 0x8D, 0x1D, 0xD4, 0x60, 0x20, 0xA5, 0x2F, - 0xA0, 0x00, 0xB1, 0x02, 0x8D, 0xAC, 0x37, 0xAD, 0x95, 0x35, 0xAE, 0x96, 0x35, 0x20, 0xBB, 0x2F, - 0xA0, 0x02, 0xB1, 0x02, 0x20, 0xB9, 0x2F, 0xA9, 0x18, 0x20, 0x47, 0x2F, 0x18, 0x69, 0x16, 0x90, - 0x01, 0xE8, 0x20, 0x82, 0x2D, 0x85, 0x0A, 0x86, 0x0B, 0xA0, 0x00, 0xB1, 0x0A, 0xAA, 0x98, 0x20, - 0xBB, 0x2F, 0xAD, 0x95, 0x35, 0xAE, 0x96, 0x35, 0x20, 0xBB, 0x2F, 0xA0, 0x04, 0xB1, 0x02, 0x20, - 0xB9, 0x2F, 0xA9, 0x18, 0x20, 0x47, 0x2F, 0x18, 0x69, 0x17, 0x90, 0x01, 0xE8, 0x20, 0x82, 0x2D, - 0x85, 0x0A, 0x86, 0x0B, 0xA2, 0x00, 0xA1, 0x0A, 0x20, 0x80, 0x2D, 0x8D, 0xAD, 0x37, 0x8E, 0xAE, - 0x37, 0xE0, 0x00, 0xD0, 0x07, 0xC9, 0x00, 0xD0, 0x03, 0x4C, 0x6A, 0x2E, 0x20, 0x81, 0xFF, 0xAD, - 0xF5, 0x36, 0x8D, 0x11, 0xD0, 0xAD, 0xF6, 0x36, 0x8D, 0x16, 0xD0, 0xAD, 0xF7, 0x36, 0x29, 0xFD, - 0x8D, 0x18, 0xD0, 0xAD, 0xF8, 0x36, 0x8D, 0x20, 0xD0, 0xAD, 0xF9, 0x36, 0x8D, 0x12, 0xD0, 0xAD, - 0xFA, 0x36, 0x8D, 0x88, 0x02, 0xAD, 0xFB, 0x36, 0x8D, 0x00, 0xDD, 0x8D, 0x1F, 0xD4, 0xAD, 0xAC, - 0x37, 0x8D, 0x1C, 0xD4, 0xA9, 0x53, 0x8D, 0x77, 0x02, 0xA9, 0x59, 0x8D, 0x78, 0x02, 0xA9, 0x53, - 0x8D, 0x79, 0x02, 0xA9, 0x35, 0x8D, 0x7A, 0x02, 0xA9, 0x34, 0x8D, 0x7B, 0x02, 0xA9, 0x32, 0x8D, - 0x7C, 0x02, 0xA9, 0x37, 0x8D, 0x7D, 0x02, 0xA9, 0x32, 0x8D, 0x7E, 0x02, 0xA9, 0x3A, 0x8D, 0x7F, - 0x02, 0xA9, 0x0D, 0x8D, 0x80, 0x02, 0xA9, 0x0A, 0x85, 0xC6, 0xA2, 0x04, 0xA9, 0x00, 0x20, 0xBB, - 0x2F, 0xA9, 0x20, 0x20, 0xB9, 0x2F, 0xA2, 0x03, 0xA9, 0xE8, 0x20, 0xE1, 0x2E, 0xA9, 0x00, 0x8D, - 0xAB, 0x37, 0xAA, 0xAD, 0xAB, 0x37, 0xC9, 0x0F, 0xB0, 0x12, 0x2C, 0x11, 0xD0, 0x10, 0xFB, 0x2C, - 0x11, 0xD0, 0x30, 0xFB, 0xA2, 0x00, 0xEE, 0xAB, 0x37, 0x4C, 0xB2, 0x1D, 0xA9, 0x01, 0x20, 0x25, - 0x08, 0x4C, 0x00, 0xD4, 0xA9, 0x00, 0x85, 0xFB, 0xA9, 0x40, 0x85, 0xFC, 0x8D, 0x1F, 0xD4, 0xA9, - 0xFF, 0x8D, 0x1C, 0xD4, 0xA0, 0x00, 0xAD, 0x1C, 0xD4, 0x91, 0xFB, 0xC8, 0xD0, 0xF8, 0xE6, 0xFC, - 0xAD, 0x1C, 0xD4, 0x91, 0xFB, 0xC8, 0xD0, 0xF8, 0xE6, 0xFC, 0xAD, 0x1C, 0xD4, 0x91, 0xFB, 0xC8, - 0xC0, 0xD0, 0xD0, 0xF6, 0x60, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, - 0x88, 0x91, 0x02, 0xA9, 0x6D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0x8D, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, - 0xA9, 0x01, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x06, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, - 0x88, 0x91, 0x02, 0xA9, 0x8B, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x13, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0x7D, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, - 0xA9, 0x02, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x1C, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, - 0x88, 0x91, 0x02, 0xA9, 0x80, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x02, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0xC9, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x33, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, - 0xA9, 0x28, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x04, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, - 0x88, 0x91, 0x02, 0xA9, 0x83, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x0C, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0x7A, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, - 0xA9, 0x02, 0x4C, 0xA4, 0x08, 0xA2, 0x44, 0xA9, 0x21, 0x8D, 0xB2, 0x37, 0x8E, 0xB3, 0x37, 0xA9, - 0xE4, 0x8D, 0xB1, 0x37, 0xA9, 0x00, 0x8D, 0xB0, 0x37, 0xAD, 0xB0, 0x37, 0xC9, 0x04, 0xB0, 0x4C, - 0xA9, 0x00, 0x8D, 0xAF, 0x37, 0xAD, 0xAF, 0x37, 0xC9, 0x07, 0xB0, 0x2C, 0xAD, 0xB3, 0x37, 0x85, - 0x0B, 0xAD, 0xB2, 0x37, 0x85, 0x0A, 0xAD, 0xB1, 0x37, 0xA0, 0x00, 0x91, 0x0A, 0xEE, 0xB1, 0x37, - 0xAD, 0xB2, 0x37, 0xAE, 0xB3, 0x37, 0x18, 0x69, 0x01, 0x90, 0x01, 0xE8, 0x8D, 0xB2, 0x37, 0x8E, - 0xB3, 0x37, 0xEE, 0xAF, 0x37, 0x4C, 0x64, 0x1F, 0xA9, 0x21, 0x18, 0x6D, 0xB2, 0x37, 0x8D, 0xB2, - 0x37, 0x90, 0x03, 0xEE, 0xB3, 0x37, 0xEE, 0xB0, 0x37, 0x4C, 0x58, 0x1F, 0xA2, 0xD8, 0xA9, 0x21, - 0x8D, 0xB2, 0x37, 0x8E, 0xB3, 0x37, 0xA9, 0x00, 0x8D, 0xB0, 0x37, 0xAD, 0xB0, 0x37, 0xC9, 0x02, - 0xB0, 0x48, 0xA9, 0x00, 0x8D, 0xAF, 0x37, 0xAD, 0xAF, 0x37, 0xC9, 0x07, 0xB0, 0x28, 0xAD, 0xB3, - 0x37, 0x85, 0x0B, 0xAD, 0xB2, 0x37, 0x85, 0x0A, 0xA9, 0x0D, 0xA0, 0x00, 0x91, 0x0A, 0xAD, 0xB2, - 0x37, 0xAE, 0xB3, 0x37, 0x18, 0x69, 0x01, 0x90, 0x01, 0xE8, 0x8D, 0xB2, 0x37, 0x8E, 0xB3, 0x37, - 0xEE, 0xAF, 0x37, 0x4C, 0xC6, 0x1F, 0xA9, 0x21, 0x18, 0x6D, 0xB2, 0x37, 0x8D, 0xB2, 0x37, 0x90, - 0x03, 0xEE, 0xB3, 0x37, 0xEE, 0xB0, 0x37, 0x4C, 0xBA, 0x1F, 0xA9, 0x00, 0x8D, 0xB0, 0x37, 0xAD, - 0xB0, 0x37, 0xC9, 0x02, 0xB0, 0x48, 0xA9, 0x00, 0x8D, 0xAF, 0x37, 0xAD, 0xAF, 0x37, 0xC9, 0x07, - 0xB0, 0x28, 0xAD, 0xB3, 0x37, 0x85, 0x0B, 0xAD, 0xB2, 0x37, 0x85, 0x0A, 0xA9, 0x03, 0xA0, 0x00, - 0x91, 0x0A, 0xAD, 0xB2, 0x37, 0xAE, 0xB3, 0x37, 0x18, 0x69, 0x01, 0x90, 0x01, 0xE8, 0x8D, 0xB2, - 0x37, 0x8E, 0xB3, 0x37, 0xEE, 0xAF, 0x37, 0x4C, 0x1A, 0x20, 0xA9, 0x21, 0x18, 0x6D, 0xB2, 0x37, - 0x8D, 0xB2, 0x37, 0x90, 0x03, 0xEE, 0xB3, 0x37, 0xEE, 0xB0, 0x37, 0x4C, 0x0E, 0x20, 0xA2, 0x44, - 0xA9, 0xA0, 0x20, 0xBB, 0x2F, 0xA9, 0x20, 0x20, 0xB9, 0x2F, 0xA2, 0x03, 0xA9, 0x48, 0x20, 0xE1, - 0x2E, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0x88, 0x91, 0x02, 0xA9, 0x96, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, - 0x91, 0x02, 0xA9, 0x1E, 0x20, 0xA4, 0x08, 0x20, 0x04, 0x1E, 0x20, 0x2F, 0x2E, 0xA9, 0x05, 0xA8, - 0x91, 0x02, 0xA9, 0x01, 0x88, 0x91, 0x02, 0xA9, 0x1E, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, - 0x91, 0x02, 0xA9, 0x0C, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x0F, 0x20, - 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x0E, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x01, 0x88, 0x91, 0x02, - 0xAD, 0x97, 0x35, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xAD, 0x98, 0x35, 0x91, 0x02, 0xA9, 0x0C, 0xA0, - 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x14, 0x4C, 0xA4, 0x08, 0xA0, 0x20, 0x98, - 0x99, 0x78, 0x44, 0x88, 0x10, 0xFA, 0xA2, 0x44, 0xA9, 0xA0, 0x20, 0xBB, 0x2F, 0xA9, 0x20, 0x20, - 0xB9, 0x2F, 0xA2, 0x03, 0xA9, 0x48, 0x20, 0xE1, 0x2E, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, - 0x91, 0x02, 0xA9, 0x17, 0x88, 0x91, 0x02, 0xA9, 0x44, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, - 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, - 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x0A, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x17, 0x88, 0x91, 0x02, 0xA9, - 0x7D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, - 0x80, 0x88, 0x91, 0x02, 0xA9, 0x02, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x13, 0xA0, 0x05, - 0x91, 0x02, 0xA9, 0x17, 0x88, 0x91, 0x02, 0xA9, 0x80, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, - 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x02, 0x20, 0xA4, - 0x08, 0xA9, 0x00, 0x8D, 0xBC, 0x37, 0x8D, 0xB6, 0x37, 0xAD, 0xB6, 0x37, 0xC9, 0x10, 0x90, 0x01, - 0x60, 0xAD, 0x95, 0x35, 0xAE, 0x96, 0x35, 0x20, 0xBB, 0x2F, 0xAD, 0xB6, 0x37, 0x20, 0xB9, 0x2F, - 0xA9, 0x18, 0x20, 0x47, 0x2F, 0x18, 0x69, 0x16, 0x90, 0x01, 0xE8, 0x20, 0x82, 0x2D, 0x85, 0x0A, - 0x86, 0x0B, 0xA0, 0x00, 0xB1, 0x0A, 0xAA, 0x98, 0x20, 0xBB, 0x2F, 0xAD, 0x95, 0x35, 0xAE, 0x96, - 0x35, 0x20, 0xBB, 0x2F, 0xAD, 0xB6, 0x37, 0x20, 0xB9, 0x2F, 0xA9, 0x18, 0x20, 0x47, 0x2F, 0x18, - 0x69, 0x17, 0x90, 0x01, 0xE8, 0x20, 0x82, 0x2D, 0x85, 0x0A, 0x86, 0x0B, 0xA2, 0x00, 0xA1, 0x0A, - 0x20, 0x80, 0x2D, 0x8D, 0xBD, 0x37, 0x8E, 0xBE, 0x37, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x41, 0x8D, - 0xBB, 0x37, 0xAD, 0xBD, 0x37, 0x0D, 0xBE, 0x37, 0xD0, 0x03, 0x4C, 0x4E, 0x23, 0x20, 0x2F, 0x2E, - 0xA9, 0x04, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x05, 0x88, 0x91, 0x02, 0xA9, - 0xBB, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x37, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, - 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1F, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x06, 0xA0, 0x05, - 0x91, 0x02, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x05, 0x88, 0x91, 0x02, 0xAD, 0x95, 0x35, 0xAE, 0x96, - 0x35, 0x20, 0xBB, 0x2F, 0xAD, 0xB6, 0x37, 0x20, 0xB9, 0x2F, 0xA9, 0x18, 0x20, 0x47, 0x2F, 0x20, - 0x82, 0x2D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, - 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1F, 0x20, 0xA4, 0x08, 0xAD, 0xBD, 0x37, 0xC9, 0x00, 0xAD, - 0xBE, 0x37, 0xE9, 0x28, 0x90, 0x39, 0x20, 0x22, 0x2E, 0xA2, 0x00, 0xAD, 0xB6, 0x37, 0x18, 0x69, - 0x05, 0x90, 0x01, 0xE8, 0x20, 0xBB, 0x2F, 0xA9, 0x28, 0x20, 0x47, 0x2F, 0x18, 0x69, 0x1E, 0x90, - 0x01, 0xE8, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0xAD, 0xBE, 0x37, 0x4A, 0x4A, 0xA0, - 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0x98, 0x20, 0x36, 0x09, 0x4C, 0x2D, 0x23, 0x20, - 0x2F, 0x2E, 0xA9, 0x1E, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x05, 0x88, 0x91, - 0x02, 0xA9, 0xB3, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, - 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0xA4, 0x08, 0x20, 0x22, 0x2E, 0xA9, 0x1F, - 0xA0, 0x03, 0x91, 0x02, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x05, 0x88, 0x91, 0x02, 0xAD, 0xBE, 0x37, - 0x29, 0x03, 0xAA, 0xAD, 0xBD, 0x37, 0x20, 0xBB, 0x2F, 0xA9, 0x66, 0x20, 0x07, 0x30, 0xA0, 0x01, - 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0x98, 0x20, 0x55, 0x0A, 0x20, 0x22, 0x2E, 0xA9, 0x1D, - 0xA0, 0x03, 0x91, 0x02, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x05, 0x88, 0x91, 0x02, 0xAD, 0xBE, 0x37, - 0x4A, 0x4A, 0x88, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0x98, 0x20, 0x55, 0x0A, 0x20, 0x2F, - 0x2E, 0xA9, 0x20, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x05, 0x88, 0x91, 0x02, - 0xA9, 0x76, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0x4C, 0xAE, 0x23, 0x20, - 0x2F, 0x2E, 0xA9, 0x04, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x05, 0x88, 0x91, - 0x02, 0xA9, 0xBB, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x37, 0x91, 0x02, 0xA9, 0x0B, 0xA0, 0x01, - 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1F, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, - 0x06, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0xB6, 0x37, 0x18, 0x69, 0x05, 0x88, 0x91, 0x02, 0xAD, 0x95, - 0x35, 0xAE, 0x96, 0x35, 0x20, 0xBB, 0x2F, 0xAD, 0xB6, 0x37, 0x20, 0xB9, 0x2F, 0xA9, 0x18, 0x20, - 0x47, 0x2F, 0x20, 0x82, 0x2D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0xA9, 0x0B, 0xA0, - 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1F, 0x20, 0xA4, 0x08, 0xEE, 0xB6, 0x37, - 0x4C, 0x88, 0x21, 0xA0, 0x20, 0x98, 0x99, 0x78, 0x44, 0x88, 0x10, 0xFA, 0xA2, 0x44, 0xA9, 0xA0, - 0x20, 0xBB, 0x2F, 0xA9, 0x20, 0x20, 0xB9, 0x2F, 0xA2, 0x03, 0xA9, 0x48, 0x20, 0xE1, 0x2E, 0x20, - 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x17, 0x88, 0x91, 0x02, 0xA9, 0x1B, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, - 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, - 0xA9, 0x04, 0x88, 0x91, 0x02, 0xA9, 0x7A, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x32, 0x91, 0x02, - 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, - 0x2F, 0x2E, 0xA9, 0x04, 0xA0, 0x05, 0x91, 0x02, 0x88, 0x91, 0x02, 0xA9, 0x74, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, - 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x06, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x04, - 0x88, 0x91, 0x02, 0xA9, 0x87, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x06, 0x88, 0x91, 0x02, 0xA9, 0x4F, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x32, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, - 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x03, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x06, - 0x88, 0x91, 0x02, 0xA9, 0x64, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x08, 0x88, 0x91, 0x02, 0xA9, 0x78, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x31, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, - 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x04, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x08, - 0x88, 0x91, 0x02, 0xA9, 0x8D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x06, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x08, 0x88, 0x91, 0x02, 0xA9, 0x8B, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, - 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x0A, - 0x88, 0x91, 0x02, 0xA9, 0xA3, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x31, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x06, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x0A, 0x88, 0x91, 0x02, 0xA9, 0x83, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, - 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x0B, - 0x88, 0x91, 0x02, 0xA9, 0xCE, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x31, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x0D, 0x88, 0x91, 0x02, 0xA9, 0xF9, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x31, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, - 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x0E, - 0x88, 0x91, 0x02, 0xA9, 0x24, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x32, 0x91, 0x02, 0xA9, 0x01, - 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x05, 0xA8, 0x91, 0x02, 0xA9, 0x0D, 0x88, 0x91, 0x02, 0xA9, 0x7A, 0xA0, 0x02, 0x91, 0x02, - 0xC8, 0xA9, 0x35, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, - 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x10, 0x88, - 0x91, 0x02, 0xA9, 0xF9, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x32, 0x91, 0x02, 0xA9, 0x0D, 0xA0, - 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, - 0xA9, 0x02, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x10, 0x88, 0x91, 0x02, 0xA9, 0xC4, 0xA0, 0x02, 0x91, - 0x02, 0xC8, 0xA9, 0x34, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, - 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x11, - 0x88, 0x91, 0x02, 0xA9, 0xCF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x32, 0x91, 0x02, 0xA9, 0x0D, - 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, - 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x12, 0x88, 0x91, 0x02, 0xA9, 0xA5, 0xA0, 0x02, - 0x91, 0x02, 0xC8, 0xA9, 0x32, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, - 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x06, 0xA0, 0x05, 0x91, 0x02, - 0xA9, 0x12, 0x88, 0x91, 0x02, 0xA9, 0x08, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, - 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, - 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x13, 0x88, 0x91, 0x02, 0xA9, 0x4D, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x33, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, - 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, - 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0x4C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x31, 0x91, - 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, - 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, - 0x23, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x33, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, - 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x0F, 0xA0, - 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0x41, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, - 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, - 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x19, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, - 0xA9, 0x48, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x35, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, - 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x4C, 0xA4, 0x08, 0xA9, 0x00, 0x8D, 0xD2, 0x37, 0xAD, - 0x11, 0xD0, 0x8D, 0xF5, 0x36, 0xAD, 0x16, 0xD0, 0x8D, 0xF6, 0x36, 0xAD, 0x18, 0xD0, 0x8D, 0xF7, - 0x36, 0xAD, 0x20, 0xD0, 0x8D, 0xF8, 0x36, 0xAD, 0x21, 0xD0, 0x8D, 0xF9, 0x36, 0xAD, 0x88, 0x02, - 0x8D, 0xFA, 0x36, 0xAD, 0x00, 0xDD, 0x8D, 0xFB, 0x36, 0xAD, 0x11, 0xD0, 0x8D, 0xCD, 0x37, 0xA9, - 0x00, 0x8D, 0x11, 0xD0, 0x8D, 0x20, 0xD0, 0x8D, 0x21, 0xD0, 0x20, 0xCB, 0x1B, 0x20, 0x81, 0x1B, - 0xA9, 0x00, 0x8D, 0xCD, 0x37, 0x4C, 0x1A, 0x28, 0xEE, 0xCD, 0x37, 0xAD, 0xCD, 0x37, 0xC9, 0x08, - 0xB0, 0x1D, 0xAC, 0xCD, 0x37, 0xB9, 0x7D, 0x30, 0x20, 0xB9, 0x2F, 0xAD, 0x97, 0x35, 0xAE, 0x98, - 0x35, 0xAC, 0xCD, 0x37, 0x85, 0x0A, 0x86, 0x0B, 0xB1, 0x0A, 0x20, 0x3C, 0x2E, 0xF0, 0xD9, 0x20, - 0xD3, 0x1D, 0xAD, 0x00, 0xDD, 0x29, 0xFC, 0x09, 0x02, 0x8D, 0x00, 0xDD, 0xA9, 0x1E, 0x8D, 0x18, - 0xD0, 0xA9, 0x00, 0x8D, 0xCD, 0x37, 0xAD, 0xCD, 0x37, 0xC9, 0x08, 0xB0, 0x38, 0x48, 0xA9, 0x00, - 0x18, 0x69, 0x78, 0xAA, 0x68, 0x18, 0x69, 0xD8, 0x90, 0x01, 0xE8, 0xE8, 0xE8, 0x85, 0x0A, 0x86, - 0x0B, 0xA9, 0x00, 0xA8, 0x91, 0x0A, 0xAD, 0xCD, 0x37, 0x48, 0x98, 0x18, 0x69, 0x7C, 0xAA, 0x68, - 0x18, 0x69, 0xD8, 0x90, 0x01, 0xE8, 0xE8, 0xE8, 0x85, 0x0A, 0x86, 0x0B, 0x98, 0x91, 0x0A, 0xEE, - 0xCD, 0x37, 0x4C, 0x55, 0x28, 0xA9, 0x44, 0x8D, 0x88, 0x02, 0xA9, 0x01, 0x8D, 0x8B, 0x02, 0xA9, - 0x04, 0x8D, 0x8C, 0x02, 0x20, 0x44, 0xE5, 0xA9, 0x0B, 0x8D, 0x20, 0xD0, 0x20, 0x44, 0x1F, 0xA9, - 0x00, 0x20, 0xEA, 0x0A, 0xA9, 0x00, 0x8D, 0x82, 0x36, 0x8D, 0x83, 0x36, 0xA8, 0x20, 0xEE, 0x2C, - 0xAD, 0xAE, 0x36, 0xAE, 0xAF, 0x36, 0x20, 0xBB, 0x2F, 0xAD, 0x85, 0x36, 0x20, 0xB9, 0x2F, 0xA9, - 0x14, 0x20, 0x47, 0x2F, 0x20, 0x82, 0x2D, 0x8D, 0xC6, 0x37, 0x8E, 0xC7, 0x37, 0x20, 0xCF, 0x2D, - 0x8D, 0xC8, 0x37, 0xAD, 0x80, 0x36, 0xF0, 0x03, 0x4C, 0x78, 0x2C, 0xAD, 0xD2, 0x37, 0xF0, 0x08, - 0xA9, 0x00, 0x8D, 0xD2, 0x37, 0x20, 0x04, 0x1E, 0xAD, 0xC8, 0x37, 0xC9, 0x30, 0x90, 0x0D, 0xC9, - 0x3A, 0xB0, 0x09, 0x38, 0xE9, 0x30, 0x8D, 0x85, 0x36, 0x4C, 0x72, 0x2C, 0xAD, 0xC8, 0x37, 0xC9, - 0x58, 0xD0, 0x09, 0x20, 0xA8, 0x1C, 0x20, 0xE2, 0xFC, 0x4C, 0x72, 0x2C, 0xAD, 0xC8, 0x37, 0xC9, - 0x9D, 0xF0, 0x03, 0x4C, 0x0E, 0x2A, 0xA9, 0x00, 0x8D, 0x81, 0x36, 0xAD, 0x82, 0x36, 0xF0, 0x04, - 0xC9, 0x08, 0xD0, 0x05, 0xA9, 0x01, 0x8D, 0x81, 0x36, 0xA2, 0x00, 0xAD, 0x82, 0x36, 0x10, 0x01, - 0xCA, 0x18, 0x6D, 0xC6, 0x37, 0x48, 0x8A, 0x6D, 0xC7, 0x37, 0xAA, 0x68, 0x20, 0xBB, 0x2F, 0xA0, - 0x00, 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x01, 0x20, 0xF1, 0x2F, 0xA9, 0x86, 0xA2, 0x36, 0x18, 0x6D, - 0x82, 0x36, 0x90, 0x01, 0xE8, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x0F, 0x50, 0x02, 0x49, - 0x80, 0x0A, 0xA2, 0x00, 0x90, 0x48, 0xAD, 0x82, 0x36, 0x10, 0x01, 0xCA, 0x18, 0x6D, 0xC6, 0x37, - 0x48, 0x8A, 0x6D, 0xC7, 0x37, 0xAA, 0x68, 0x20, 0x91, 0x2E, 0x0A, 0x90, 0x5F, 0xA2, 0x00, 0xAD, - 0x82, 0x36, 0x10, 0x01, 0xCA, 0x18, 0x6D, 0xC6, 0x37, 0x48, 0x8A, 0x6D, 0xC7, 0x37, 0xAA, 0x68, - 0x20, 0xBB, 0x2F, 0xA9, 0x86, 0xA2, 0x36, 0x18, 0x6D, 0x82, 0x36, 0x90, 0x01, 0xE8, 0xA0, 0x00, - 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x01, 0xC9, 0x80, 0x20, 0xF1, 0x2F, 0x4C, 0xEB, 0x29, 0xAD, 0x82, - 0x36, 0x10, 0x01, 0xCA, 0x18, 0x6D, 0xC6, 0x37, 0x48, 0x8A, 0x6D, 0xC7, 0x37, 0xAA, 0x68, 0x20, - 0x91, 0x2E, 0x0A, 0x90, 0x17, 0xA2, 0x00, 0xAD, 0x82, 0x36, 0x10, 0x01, 0xCA, 0x18, 0x6D, 0xC6, - 0x37, 0x85, 0x0A, 0x8A, 0x6D, 0xC7, 0x37, 0x85, 0x0B, 0x98, 0x91, 0x0A, 0xAD, 0xC6, 0x37, 0xAE, - 0xC7, 0x37, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0xC9, 0x03, 0xF0, 0x03, 0x4C, 0x72, 0x2C, 0xAD, 0xC7, - 0x37, 0x85, 0x0B, 0xAD, 0xC6, 0x37, 0x85, 0x0A, 0xA9, 0x02, 0x91, 0x0A, 0x4C, 0x72, 0x2C, 0xAD, - 0xC8, 0x37, 0xC9, 0x1D, 0xF0, 0x03, 0x4C, 0x20, 0x2B, 0xA9, 0x00, 0x8D, 0x81, 0x36, 0xAD, 0x82, - 0x36, 0xF0, 0x04, 0xC9, 0x08, 0xD0, 0x05, 0xA9, 0x01, 0x8D, 0x81, 0x36, 0xA2, 0x00, 0xAD, 0x82, - 0x36, 0x10, 0x01, 0xCA, 0x18, 0x6D, 0xC6, 0x37, 0x48, 0x8A, 0x6D, 0xC7, 0x37, 0xAA, 0x68, 0x20, - 0xBB, 0x2F, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0x18, 0x69, 0x01, 0x20, 0xF1, 0x2F, 0xA9, 0x86, 0xA2, - 0x36, 0x18, 0x6D, 0x82, 0x36, 0x90, 0x01, 0xE8, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x0F, - 0x50, 0x02, 0x49, 0x80, 0x0A, 0xA2, 0x00, 0x90, 0x34, 0xAD, 0x82, 0x36, 0x10, 0x01, 0xCA, 0x18, - 0x6D, 0xC6, 0x37, 0x48, 0x8A, 0x6D, 0xC7, 0x37, 0xAA, 0x68, 0x20, 0xBB, 0x2F, 0xA0, 0x00, 0x20, - 0x91, 0x2E, 0x20, 0xBB, 0x2F, 0xA9, 0x86, 0xA2, 0x36, 0x18, 0x6D, 0x82, 0x36, 0x90, 0x01, 0xE8, - 0xA0, 0x00, 0x20, 0x91, 0x2E, 0x20, 0x38, 0x2F, 0xA0, 0x00, 0x4C, 0xFB, 0x2A, 0xAD, 0x82, 0x36, - 0x10, 0x01, 0xCA, 0x18, 0x6D, 0xC6, 0x37, 0x48, 0x8A, 0x6D, 0xC7, 0x37, 0xAA, 0x68, 0x20, 0x91, - 0x2E, 0x20, 0xBB, 0x2F, 0xA9, 0x86, 0xA2, 0x36, 0x18, 0x6D, 0x82, 0x36, 0x90, 0x01, 0xE8, 0xA0, - 0x00, 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x01, 0xB0, 0x01, 0xCA, 0x20, 0x3E, 0x2E, 0x30, 0x30, 0xF0, - 0x2E, 0xA2, 0x00, 0xAD, 0x82, 0x36, 0x10, 0x01, 0xCA, 0x18, 0x6D, 0xC6, 0x37, 0x48, 0x8A, 0x6D, - 0xC7, 0x37, 0xAA, 0x68, 0x20, 0xBB, 0x2F, 0xA9, 0x86, 0xA2, 0x36, 0x18, 0x6D, 0x82, 0x36, 0x90, - 0x01, 0xE8, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0x38, 0xE9, 0x01, 0xC9, 0x80, 0x20, 0xF1, 0x2F, 0xAD, - 0xC6, 0x37, 0xAE, 0xC7, 0x37, 0xA0, 0x00, 0x20, 0x91, 0x2E, 0xC9, 0x03, 0xF0, 0x03, 0x4C, 0x72, - 0x2C, 0xAD, 0xC7, 0x37, 0x85, 0x0B, 0xAD, 0xC6, 0x37, 0x85, 0x0A, 0x98, 0x91, 0x0A, 0x4C, 0x72, - 0x2C, 0xAD, 0xC8, 0x37, 0xC9, 0x11, 0xD0, 0x21, 0xAD, 0x82, 0x36, 0x8D, 0x83, 0x36, 0xEE, 0x82, - 0x36, 0xA2, 0x00, 0xAD, 0x82, 0x36, 0x10, 0x01, 0xCA, 0x20, 0xBB, 0x2F, 0xA2, 0x00, 0xA9, 0x14, - 0x20, 0x36, 0x2F, 0x8D, 0x82, 0x36, 0x4C, 0x72, 0x2C, 0xAD, 0xC8, 0x37, 0xC9, 0x91, 0xD0, 0x19, - 0xAD, 0x82, 0x36, 0x8D, 0x83, 0x36, 0xAD, 0x82, 0x36, 0xD0, 0x08, 0xA9, 0x13, 0x8D, 0x82, 0x36, - 0x4C, 0x72, 0x2C, 0xCE, 0x82, 0x36, 0x4C, 0x72, 0x2C, 0xAD, 0xC8, 0x37, 0xC9, 0x88, 0xD0, 0x15, - 0xA0, 0x00, 0x20, 0x21, 0x2D, 0xA9, 0x01, 0x8D, 0x80, 0x36, 0xA9, 0x00, 0x8D, 0xC8, 0x37, 0x20, - 0xEC, 0x20, 0x4C, 0x78, 0x2C, 0xAD, 0xC8, 0x37, 0xC9, 0x85, 0xD0, 0x15, 0xA0, 0x00, 0x20, 0x21, - 0x2D, 0xA9, 0x02, 0x8D, 0x80, 0x36, 0xA9, 0x00, 0x8D, 0xC8, 0x37, 0x20, 0xC2, 0x23, 0x4C, 0x78, - 0x2C, 0xAD, 0xC8, 0x37, 0xC9, 0x53, 0xD0, 0x5D, 0x20, 0x86, 0x1C, 0x20, 0x2F, 0x2E, 0xA9, 0x00, - 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0xA0, 0xA0, 0x02, 0x91, 0x02, 0xC8, - 0xA9, 0x33, 0x91, 0x02, 0xA9, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, - 0x28, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, 0x88, - 0x91, 0x02, 0xA9, 0x77, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x33, 0x91, 0x02, 0xA9, 0x0A, 0xA0, - 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x28, 0x20, 0xA4, 0x08, 0xA9, 0x01, 0x8D, - 0xD2, 0x37, 0x4C, 0x72, 0x2C, 0xAD, 0xC8, 0x37, 0xC9, 0x4C, 0xD0, 0x5D, 0x20, 0xCB, 0x1B, 0x20, - 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0xA0, 0xA0, - 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x33, 0x91, 0x02, 0xA9, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, - 0x88, 0x91, 0x02, 0xA9, 0x28, 0x20, 0xA4, 0x08, 0x20, 0x2F, 0x2E, 0xA9, 0x00, 0xA0, 0x05, 0x91, - 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0xF2, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x33, 0x91, - 0x02, 0xA9, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x28, 0x20, 0xA4, - 0x08, 0xA9, 0x01, 0x8D, 0xD2, 0x37, 0x4C, 0x72, 0x2C, 0xAD, 0xC8, 0x37, 0xC9, 0x8C, 0xD0, 0x03, - 0x20, 0x9D, 0x1B, 0xAD, 0x82, 0x36, 0x20, 0xEA, 0x0A, 0xAD, 0x80, 0x36, 0xC9, 0x01, 0xD0, 0x49, - 0xAD, 0xC8, 0x37, 0xC9, 0x85, 0xD0, 0x10, 0xA9, 0x02, 0x8D, 0x80, 0x36, 0xA9, 0x00, 0x8D, 0xC8, - 0x37, 0x20, 0xC2, 0x23, 0x4C, 0xC8, 0x2C, 0xAD, 0xC8, 0x37, 0xC9, 0x88, 0xD0, 0x14, 0xA9, 0x00, - 0x8D, 0x80, 0x36, 0xA8, 0x20, 0xEE, 0x2C, 0xA9, 0x00, 0x8D, 0xC8, 0x37, 0x20, 0x44, 0x1F, 0x4C, - 0xE2, 0x28, 0xAD, 0xC8, 0x37, 0xC9, 0x41, 0x90, 0x10, 0xC9, 0x52, 0xB0, 0x0C, 0x20, 0xA8, 0x1C, - 0xAD, 0xC8, 0x37, 0x38, 0xE9, 0x41, 0x20, 0xBC, 0x1C, 0xAD, 0x80, 0x36, 0xC9, 0x02, 0xF0, 0x03, - 0x4C, 0xBF, 0x28, 0xAD, 0xC8, 0x37, 0xD0, 0x03, 0x4C, 0xBF, 0x28, 0xA9, 0x00, 0x8D, 0x80, 0x36, - 0xA8, 0x20, 0xEE, 0x2C, 0xA9, 0x00, 0x8D, 0xC8, 0x37, 0x20, 0x44, 0x1F, 0x4C, 0xE2, 0x28, 0x78, - 0xAD, 0x14, 0x03, 0x8D, 0x4A, 0x2D, 0xAD, 0x15, 0x03, 0x8D, 0x4B, 0x2D, 0xA9, 0x4C, 0x8D, 0x14, - 0x03, 0xA9, 0x2D, 0x8D, 0x15, 0x03, 0xAD, 0x1A, 0xD0, 0x09, 0x01, 0x8D, 0x1A, 0xD0, 0xA9, 0x55, - 0x8D, 0x12, 0xD0, 0xAD, 0x11, 0xD0, 0x29, 0x7F, 0x8D, 0x11, 0xD0, 0xA9, 0x01, 0x8D, 0x19, 0xD0, - 0x58, 0x60, 0x78, 0xAD, 0x4A, 0x2D, 0x8D, 0x14, 0x03, 0xAD, 0x4B, 0x2D, 0x8D, 0x15, 0x03, 0xAD, - 0x1A, 0xD0, 0x29, 0xFE, 0x8D, 0x1A, 0xD0, 0xA9, 0x1F, 0x8D, 0x11, 0xD0, 0x58, 0x60, 0x00, 0x00, - 0x55, 0x8A, 0xBE, 0xD4, 0xE0, 0x1F, 0x1B, 0x18, 0x1D, 0x18, 0x18, 0x00, 0x00, 0xAD, 0x19, 0xD0, - 0x30, 0x0A, 0xAD, 0x0D, 0xDC, 0x58, 0x4C, 0x31, 0xEA, 0x4C, 0x7A, 0x2D, 0xAE, 0x3D, 0x2D, 0xBD, - 0x44, 0x2D, 0x8D, 0x11, 0xD0, 0xE8, 0xE0, 0x06, 0xD0, 0x02, 0xA2, 0x00, 0x8E, 0x3D, 0x2D, 0xBD, - 0x3E, 0x2D, 0x8D, 0x12, 0xD0, 0xAD, 0x19, 0xD0, 0x8D, 0x19, 0xD0, 0x68, 0xA8, 0x68, 0xAA, 0x68, - 0x40, 0xA2, 0x00, 0x18, 0xA0, 0x00, 0x71, 0x02, 0xC8, 0x85, 0x12, 0x8A, 0x71, 0x02, 0xAA, 0x18, - 0xA5, 0x02, 0x69, 0x02, 0x85, 0x02, 0x90, 0x02, 0xE6, 0x03, 0xA5, 0x12, 0x60, 0xC8, 0x48, 0x18, - 0x98, 0x65, 0x02, 0x85, 0x02, 0x90, 0x02, 0xE6, 0x03, 0x68, 0x60, 0x86, 0x12, 0x0A, 0x26, 0x12, - 0x0A, 0x26, 0x12, 0x0A, 0x26, 0x12, 0xA6, 0x12, 0x60, 0xAD, 0xB0, 0x36, 0xAE, 0xB1, 0x36, 0x20, - 0xBB, 0x2F, 0xAD, 0xB2, 0x36, 0xAE, 0xB3, 0x36, 0x20, 0xBB, 0x2F, 0xA0, 0x04, 0x4C, 0xC9, 0x27, - 0xA5, 0xC6, 0xD0, 0x17, 0xA5, 0xCC, 0x48, 0xAD, 0xD5, 0x37, 0x20, 0xF0, 0x2D, 0xA5, 0xC6, 0xF0, - 0xFC, 0xA2, 0x00, 0x68, 0xD0, 0x01, 0xE8, 0x8A, 0x20, 0xF0, 0x2D, 0x20, 0xB4, 0xE5, 0xA2, 0x00, - 0x60, 0xAA, 0xD0, 0x1E, 0xA5, 0xCC, 0xD0, 0x19, 0xA9, 0x01, 0x85, 0xCC, 0xA5, 0xCF, 0xF0, 0x0D, - 0xA4, 0xD3, 0xB1, 0xD1, 0x49, 0x80, 0x91, 0xD1, 0xAD, 0x87, 0x02, 0x91, 0xF3, 0xA9, 0x00, 0x85, - 0xCF, 0x60, 0xA9, 0x00, 0x85, 0xCC, 0x60, 0xA0, 0x00, 0xF0, 0x07, 0xA9, 0x95, 0xA2, 0x35, 0x4C, - 0xB4, 0x36, 0x60, 0xA5, 0x02, 0x38, 0xE9, 0x04, 0x85, 0x02, 0x90, 0x01, 0x60, 0xC6, 0x03, 0x60, - 0xA5, 0x02, 0x38, 0xE9, 0x06, 0x85, 0x02, 0x90, 0x01, 0x60, 0xC6, 0x03, 0x60, 0xA2, 0x00, 0x85, - 0x04, 0x86, 0x05, 0xA0, 0x00, 0xB1, 0x02, 0xAA, 0xE6, 0x02, 0xD0, 0x02, 0xE6, 0x03, 0xB1, 0x02, - 0xE6, 0x02, 0xD0, 0x02, 0xE6, 0x03, 0x38, 0xE5, 0x05, 0xD0, 0x09, 0xE4, 0x04, 0xF0, 0x04, 0x69, - 0xFF, 0x09, 0x01, 0x60, 0x50, 0xFD, 0x49, 0xFF, 0x09, 0x01, 0x60, 0xE6, 0x02, 0xD0, 0x02, 0xE6, - 0x03, 0x60, 0xA0, 0x01, 0xB1, 0x02, 0xAA, 0x88, 0xB1, 0x02, 0xE6, 0x02, 0xF0, 0x05, 0xE6, 0x02, - 0xF0, 0x03, 0x60, 0xE6, 0x02, 0xE6, 0x03, 0x60, 0xA0, 0x05, 0x4C, 0x9D, 0x2D, 0xA0, 0x07, 0x4C, - 0x9D, 0x2D, 0x85, 0x0A, 0x86, 0x0B, 0xA2, 0x00, 0xB1, 0x0A, 0x10, 0x01, 0xCA, 0x60, 0x20, 0xC6, - 0x2E, 0xA6, 0x0F, 0xF0, 0x13, 0xB1, 0x0A, 0x91, 0x0C, 0xC8, 0xB1, 0x0A, 0x91, 0x0C, 0xC8, 0xD0, - 0xF4, 0xE6, 0x0B, 0xE6, 0x0D, 0xCA, 0xD0, 0xED, 0xA6, 0x0E, 0xF0, 0x08, 0xB1, 0x0A, 0x91, 0x0C, - 0xC8, 0xCA, 0xD0, 0xF8, 0x4C, 0x71, 0x2E, 0x85, 0x0E, 0x86, 0x0F, 0x20, 0x93, 0x2F, 0xC8, 0xB1, - 0x02, 0xAA, 0x86, 0x0D, 0x88, 0xB1, 0x02, 0x85, 0x0C, 0x60, 0x85, 0x0E, 0x86, 0x0F, 0xA2, 0x00, - 0xF0, 0x08, 0x85, 0x0E, 0x86, 0x0F, 0x20, 0x71, 0x2E, 0xAA, 0xA0, 0x01, 0xB1, 0x02, 0x85, 0x0B, - 0x88, 0xB1, 0x02, 0x85, 0x0A, 0x46, 0x0F, 0x66, 0x0E, 0x90, 0x09, 0x8A, 0x91, 0x0A, 0xE6, 0x0A, - 0xD0, 0x02, 0xE6, 0x0B, 0xA5, 0x0A, 0x18, 0x65, 0x0E, 0x85, 0x0C, 0xA5, 0x0B, 0x65, 0x0F, 0x85, - 0x0D, 0x8A, 0xA6, 0x0F, 0xF0, 0x13, 0x91, 0x0A, 0x91, 0x0C, 0xC8, 0x91, 0x0A, 0x91, 0x0C, 0xC8, - 0xD0, 0xF4, 0xE6, 0x0B, 0xE6, 0x0D, 0xCA, 0xD0, 0xED, 0xA4, 0x0E, 0xF0, 0x07, 0x88, 0x91, 0x0A, - 0x91, 0x0C, 0xD0, 0xF9, 0x4C, 0x71, 0x2E, 0xA2, 0x00, 0x20, 0xD1, 0x2F, 0xA5, 0x04, 0xA6, 0x05, - 0x24, 0x12, 0x10, 0x03, 0x4C, 0x85, 0x2F, 0x60, 0x85, 0x10, 0x20, 0x93, 0x2F, 0x98, 0xA0, 0x08, - 0xA6, 0x0B, 0xF0, 0x1D, 0x85, 0x11, 0x46, 0x10, 0x90, 0x0B, 0x18, 0x65, 0x0A, 0xAA, 0xA5, 0x0B, - 0x65, 0x11, 0x85, 0x11, 0x8A, 0x66, 0x11, 0x6A, 0x66, 0x10, 0x88, 0xD0, 0xEB, 0xAA, 0xA5, 0x10, - 0x60, 0x46, 0x10, 0x90, 0x03, 0x18, 0x65, 0x0A, 0x6A, 0x66, 0x10, 0x88, 0xD0, 0xF5, 0xAA, 0xA5, - 0x10, 0x60, 0xE0, 0x00, 0x10, 0x0D, 0x18, 0x49, 0xFF, 0x69, 0x01, 0x48, 0x8A, 0x49, 0xFF, 0x69, - 0x00, 0xAA, 0x68, 0x60, 0xA0, 0x01, 0xB1, 0x02, 0x85, 0x0B, 0x88, 0xB1, 0x02, 0x85, 0x0A, 0x4C, - 0x79, 0x2E, 0xA0, 0x00, 0xB1, 0x02, 0xA4, 0x02, 0xF0, 0x07, 0xC6, 0x02, 0xA0, 0x00, 0x91, 0x02, - 0x60, 0xC6, 0x03, 0xC6, 0x02, 0x91, 0x02, 0x60, 0xA9, 0x00, 0xA2, 0x00, 0x48, 0xA5, 0x02, 0x38, - 0xE9, 0x02, 0x85, 0x02, 0xB0, 0x02, 0xC6, 0x03, 0xA0, 0x01, 0x8A, 0x91, 0x02, 0x68, 0x88, 0x91, - 0x02, 0x60, 0x86, 0x13, 0xE0, 0x00, 0x10, 0x03, 0x20, 0x85, 0x2F, 0x85, 0x10, 0x86, 0x11, 0x20, - 0x71, 0x2E, 0x86, 0x12, 0xE0, 0x00, 0x10, 0x03, 0x20, 0x85, 0x2F, 0x85, 0x0A, 0x86, 0x0B, 0x4C, - 0x18, 0x30, 0x48, 0x84, 0x12, 0xA0, 0x01, 0xB1, 0x02, 0x85, 0x0B, 0x88, 0xB1, 0x02, 0x85, 0x0A, - 0xA4, 0x12, 0x68, 0x91, 0x0A, 0x4C, 0x79, 0x2E, 0xA2, 0x00, 0x85, 0x10, 0x86, 0x11, 0x20, 0x93, - 0x2F, 0x20, 0x18, 0x30, 0xA5, 0x0A, 0xA6, 0x0B, 0x60, 0xA9, 0x00, 0x85, 0x05, 0xA0, 0x10, 0xA6, - 0x11, 0xF0, 0x1F, 0x06, 0x0A, 0x26, 0x0B, 0x2A, 0x26, 0x05, 0xAA, 0xC5, 0x10, 0xA5, 0x05, 0xE5, - 0x11, 0x90, 0x08, 0x85, 0x05, 0x8A, 0xE5, 0x10, 0xAA, 0xE6, 0x0A, 0x8A, 0x88, 0xD0, 0xE4, 0x85, - 0x04, 0x60, 0x06, 0x0A, 0x26, 0x0B, 0x2A, 0xB0, 0x04, 0xC5, 0x10, 0x90, 0x04, 0xE5, 0x10, 0xE6, - 0x0A, 0x88, 0xD0, 0xEE, 0x85, 0x04, 0x60, 0xA9, 0xF5, 0x85, 0x0A, 0xA9, 0x36, 0x85, 0x0B, 0xA9, - 0x00, 0xA8, 0xA2, 0x00, 0xF0, 0x0A, 0x91, 0x0A, 0xC8, 0xD0, 0xFB, 0xE6, 0x0B, 0xCA, 0xD0, 0xF6, - 0xC0, 0xE1, 0xF0, 0x05, 0x91, 0x0A, 0xC8, 0xD0, 0xF7, 0x60, 0x00, 0x10, 0x00, 0x00, 0x53, 0x49, - 0x44, 0x4B, 0x09, 0x03, 0x0B, 0x30, 0x30, 0x30, 0x31, 0x30, 0x32, 0x30, 0x33, 0x30, 0x34, 0x30, - 0x35, 0x30, 0x36, 0x30, 0x37, 0x30, 0x38, 0x30, 0x39, 0x31, 0x30, 0x31, 0x31, 0x31, 0x32, 0x31, - 0x33, 0x31, 0x34, 0x31, 0x35, 0x31, 0x36, 0x31, 0x37, 0x31, 0x38, 0x31, 0x39, 0x32, 0x30, 0x32, - 0x31, 0x32, 0x32, 0x32, 0x33, 0x32, 0x34, 0x32, 0x35, 0x32, 0x36, 0x32, 0x37, 0x32, 0x38, 0x32, - 0x39, 0x33, 0x30, 0x33, 0x31, 0x33, 0x32, 0x33, 0x33, 0x33, 0x34, 0x33, 0x35, 0x33, 0x36, 0x33, - 0x37, 0x33, 0x38, 0x33, 0x39, 0x34, 0x30, 0x34, 0x31, 0x34, 0x32, 0x34, 0x33, 0x34, 0x34, 0x34, - 0x35, 0x34, 0x36, 0x34, 0x37, 0x34, 0x38, 0x34, 0x39, 0x35, 0x30, 0x35, 0x31, 0x35, 0x32, 0x35, - 0x33, 0x35, 0x34, 0x35, 0x35, 0x35, 0x36, 0x35, 0x37, 0x35, 0x38, 0x35, 0x39, 0x36, 0x30, 0x36, - 0x31, 0x36, 0x32, 0x36, 0x33, 0x36, 0x34, 0x36, 0x35, 0x36, 0x36, 0x36, 0x37, 0x36, 0x38, 0x36, - 0x39, 0x37, 0x30, 0x37, 0x31, 0x37, 0x32, 0x37, 0x33, 0x37, 0x34, 0x37, 0x35, 0x37, 0x36, 0x37, - 0x37, 0x37, 0x38, 0x37, 0x39, 0x38, 0x30, 0x38, 0x31, 0x38, 0x32, 0x38, 0x33, 0x38, 0x34, 0x38, - 0x35, 0x38, 0x36, 0x38, 0x37, 0x38, 0x38, 0x38, 0x39, 0x39, 0x30, 0x39, 0x31, 0x39, 0x32, 0x39, - 0x33, 0x39, 0x34, 0x39, 0x35, 0x39, 0x36, 0x39, 0x37, 0x39, 0x38, 0x39, 0x39, 0x20, 0x20, 0x20, - 0x17, 0x08, 0x05, 0x0E, 0x20, 0x0F, 0x14, 0x08, 0x05, 0x12, 0x20, 0x49, 0x4F, 0x31, 0x2F, 0x32, - 0x20, 0x04, 0x05, 0x16, 0x09, 0x03, 0x05, 0x13, 0x20, 0x01, 0x12, 0x05, 0x20, 0x15, 0x13, 0x05, - 0x04, 0x29, 0x2E, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x4C, 0x2F, 0x53, 0x20, - 0x20, 0x0C, 0x0F, 0x01, 0x04, 0x2F, 0x13, 0x01, 0x16, 0x05, 0x20, 0x01, 0x0C, 0x0C, 0x20, 0x10, - 0x12, 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x13, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x58, 0x20, 0x20, 0x05, 0x18, 0x09, 0x14, - 0x2C, 0x20, 0x10, 0x12, 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x13, 0x20, 0x01, 0x12, 0x05, 0x20, 0x0E, - 0x0F, 0x14, 0x20, 0x13, 0x01, 0x16, 0x05, 0x04, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x14, 0x08, 0x05, 0x20, 0x13, 0x05, 0x0C, 0x05, 0x03, - 0x14, 0x05, 0x04, 0x20, 0x0F, 0x0E, 0x05, 0x20, 0x09, 0x13, 0x20, 0x01, 0x03, 0x14, 0x09, 0x16, - 0x01, 0x14, 0x05, 0x04, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x46, 0x38, - 0x20, 0x20, 0x0F, 0x16, 0x05, 0x12, 0x17, 0x12, 0x09, 0x14, 0x05, 0x20, 0x01, 0x03, 0x14, 0x09, - 0x16, 0x05, 0x20, 0x10, 0x12, 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x17, 0x09, 0x14, - 0x08, 0x20, 0x04, 0x05, 0x06, 0x01, 0x15, 0x0C, 0x14, 0x20, 0x13, 0x05, 0x14, 0x14, 0x09, 0x0E, - 0x07, 0x13, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x43, 0x52, 0x53, 0x52, 0x20, 0x20, 0x13, 0x05, 0x0C, 0x05, 0x03, 0x14, 0x20, 0x01, - 0x0E, 0x04, 0x20, 0x03, 0x08, 0x01, 0x0E, 0x07, 0x05, 0x20, 0x16, 0x01, 0x0C, 0x15, 0x05, 0x13, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x30, 0x2D, - 0x39, 0x20, 0x20, 0x13, 0x05, 0x0C, 0x05, 0x03, 0x14, 0x20, 0x01, 0x03, 0x14, 0x09, 0x16, 0x05, - 0x20, 0x10, 0x12, 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x2D, 0x20, 0x53, 0x46, 0x58, 0x20, 0x0F, 0x0E, 0x20, - 0x10, 0x01, 0x13, 0x13, 0x09, 0x16, 0x05, 0x20, 0x10, 0x0C, 0x01, 0x19, 0x13, 0x20, 0x46, 0x4D, - 0x2C, 0x20, 0x02, 0x15, 0x14, 0x20, 0x12, 0x05, 0x01, 0x04, 0x09, 0x0E, 0x07, 0x20, 0x20, 0x00, - 0x20, 0x20, 0x20, 0x10, 0x01, 0x04, 0x04, 0x0C, 0x05, 0x13, 0x2F, 0x0D, 0x0F, 0x15, 0x13, 0x05, - 0x20, 0x01, 0x0E, 0x04, 0x20, 0x53, 0x49, 0x44, 0x20, 0x01, 0x15, 0x14, 0x0F, 0x04, 0x05, 0x14, - 0x05, 0x03, 0x14, 0x09, 0x0F, 0x0E, 0x2E, 0x20, 0x20, 0x00, 0x20, 0x2D, 0x20, 0x12, 0x05, 0x07, - 0x09, 0x13, 0x14, 0x05, 0x12, 0x20, 0x12, 0x05, 0x01, 0x04, 0x20, 0x09, 0x13, 0x20, 0x12, 0x05, - 0x11, 0x15, 0x09, 0x12, 0x05, 0x04, 0x20, 0x06, 0x0F, 0x12, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x00, 0x20, 0x2D, 0x20, 0x53, 0x49, 0x44, 0x4B, 0x09, 0x03, 0x0B, 0x20, 0x15, - 0x13, 0x05, 0x13, 0x20, 0x12, 0x05, 0x53, 0x49, 0x44, 0x20, 0x01, 0x0E, 0x04, 0x20, 0x06, 0x0D, - 0x0F, 0x10, 0x0C, 0x2E, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, - 0x20, 0x12, 0x05, 0x07, 0x09, 0x13, 0x14, 0x05, 0x12, 0x13, 0x20, 0x09, 0x13, 0x20, 0x14, 0x15, - 0x12, 0x0E, 0x05, 0x04, 0x20, 0x0F, 0x06, 0x06, 0x20, 0x28, 0x12, 0x05, 0x03, 0x0F, 0x0D, 0x0D, - 0x05, 0x0E, 0x04, 0x05, 0x04, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x49, - 0x44, 0x4B, 0x09, 0x03, 0x0B, 0x2D, 0x03, 0x0F, 0x0E, 0x06, 0x09, 0x07, 0x15, 0x12, 0x01, 0x14, - 0x09, 0x0F, 0x0E, 0x20, 0x13, 0x01, 0x16, 0x05, 0x04, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x58, 0x20, - 0x45, 0x18, 0x09, 0x14, 0x2C, 0x20, 0x46, 0x38, 0x20, 0x4C, 0x0F, 0x01, 0x04, 0x20, 0x44, 0x05, - 0x06, 0x01, 0x15, 0x0C, 0x14, 0x20, 0x53, 0x05, 0x14, 0x14, 0x09, 0x0E, 0x07, 0x13, 0x20, 0x20, - 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x53, 0x49, 0x44, 0x4B, 0x09, 0x03, 0x0B, - 0x2D, 0x03, 0x0F, 0x0E, 0x06, 0x09, 0x07, 0x15, 0x12, 0x01, 0x14, 0x09, 0x0F, 0x0E, 0x20, 0x0C, - 0x0F, 0x01, 0x04, 0x05, 0x04, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x20, 0x50, 0x12, - 0x05, 0x13, 0x13, 0x20, 0x01, 0x0E, 0x19, 0x20, 0x0B, 0x05, 0x19, 0x20, 0x14, 0x0F, 0x20, 0x07, - 0x0F, 0x20, 0x02, 0x01, 0x03, 0x0B, 0x20, 0x14, 0x0F, 0x20, 0x53, 0x05, 0x14, 0x14, 0x09, 0x0E, - 0x07, 0x13, 0x20, 0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x46, - 0x31, 0x20, 0x48, 0x05, 0x0C, 0x10, 0x2C, 0x20, 0x46, 0x37, 0x20, 0x53, 0x05, 0x14, 0x14, 0x09, - 0x0E, 0x07, 0x13, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x4C, - 0x0F, 0x01, 0x04, 0x2F, 0x53, 0x01, 0x16, 0x05, 0x20, 0x43, 0x0F, 0x0E, 0x06, 0x09, 0x07, 0x2C, - 0x20, 0x46, 0x31, 0x20, 0x48, 0x05, 0x0C, 0x10, 0x2C, 0x20, 0x46, 0x37, 0x20, 0x46, 0x09, 0x0C, - 0x05, 0x0D, 0x05, 0x0E, 0x15, 0x20, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2E, 0x2D, 0x20, 0x53, - 0x49, 0x44, 0x4B, 0x09, 0x03, 0x0B, 0x20, 0x2D, 0x2D, 0x20, 0x46, 0x12, 0x05, 0x0E, 0x05, 0x14, - 0x09, 0x03, 0x20, 0x2D, 0x2E, 0x00, 0x53, 0x46, 0x58, 0x20, 0x53, 0x0F, 0x15, 0x0E, 0x04, 0x20, - 0x45, 0x18, 0x10, 0x2E, 0x00, 0x20, 0x12, 0x05, 0x07, 0x09, 0x13, 0x14, 0x05, 0x12, 0x20, 0x12, - 0x05, 0x01, 0x04, 0x00, 0x52, 0x05, 0x07, 0x09, 0x13, 0x14, 0x05, 0x12, 0x20, 0x52, 0x05, 0x01, - 0x04, 0x00, 0x50, 0x12, 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x20, 0x28, 0x30, 0x2D, 0x39, 0x29, 0x00, - 0x12, 0x05, 0x53, 0x49, 0x44, 0x20, 0x45, 0x0E, 0x07, 0x09, 0x0E, 0x05, 0x00, 0x46, 0x09, 0x0C, - 0x14, 0x05, 0x12, 0x20, 0x42, 0x09, 0x01, 0x13, 0x00, 0x20, 0x0F, 0x0E, 0x20, 0x10, 0x01, 0x13, - 0x13, 0x09, 0x16, 0x05, 0x00, 0x44, 0x09, 0x07, 0x09, 0x02, 0x0F, 0x0F, 0x13, 0x14, 0x00, 0x46, - 0x09, 0x12, 0x0D, 0x17, 0x01, 0x12, 0x05, 0x3A, 0x00, 0x50, 0x01, 0x13, 0x13, 0x02, 0x01, 0x0E, - 0x04, 0x00, 0x41, 0x04, 0x04, 0x12, 0x05, 0x13, 0x13, 0x00, 0x50, 0x01, 0x0E, 0x0E, 0x09, 0x0E, - 0x07, 0x00, 0x20, 0x12, 0x05, 0x53, 0x49, 0x44, 0x00, 0x20, 0x06, 0x0D, 0x0F, 0x10, 0x0C, 0x00, - 0x56, 0x0F, 0x0C, 0x15, 0x0D, 0x05, 0x00, 0x53, 0x49, 0x44, 0x20, 0x23, 0x32, 0x00, 0x53, 0x49, - 0x44, 0x20, 0x23, 0x31, 0x00, 0x43, 0x52, 0x53, 0x52, 0x00, 0x47, 0x01, 0x09, 0x0E, 0x00, 0x30, - 0x30, 0xDB, 0x00, 0x31, 0x30, 0x30, 0x00, 0x20, 0x0B, 0x02, 0x00, 0x46, 0x38, 0x00, 0x46, 0x31, - 0x00, 0x46, 0x37, 0x00, 0x58, 0x00, 0x2F, 0x00, 0x39, 0x00, 0x2D, 0x00, 0x53, 0x00, 0x4C, 0x00, - 0x2B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0xC0, 0x0F, 0x06, 0x06, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x0F, 0x0E, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x36, 0x35, 0x38, 0x31, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x35, 0x38, 0x30, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, - 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x35, 0x38, 0x30, 0x2B, 0x04, - 0x09, 0x07, 0x09, 0x02, 0x0F, 0x0F, 0x13, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0F, - 0x0E, 0x05, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x24, 0x44, 0x34, 0x30, 0x30, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x24, 0x44, - 0x34, 0x32, 0x30, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x24, 0x44, 0x35, 0x30, 0x30, 0xDB, - 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x24, 0x44, 0x34, 0x32, 0x30, 0x2B, 0x24, 0x44, 0x35, 0x30, - 0x30, 0x00, 0x24, 0x44, 0x45, 0x30, 0x30, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x24, 0x44, - 0x46, 0x30, 0x30, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x12, 0x05, 0x53, 0x49, 0x44, 0x20, - 0x30, 0x2E, 0x31, 0x36, 0x00, 0x12, 0x05, 0x53, 0x49, 0x44, 0x20, 0x31, 0x2E, 0x30, 0xDB, 0x00, - 0x0F, 0x06, 0x06, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x0F, 0x0E, 0xDB, 0xDB, 0xDB, - 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x0F, 0x0E, 0x20, 0x10, 0x01, 0x13, 0x13, 0x09, 0x16, 0x05, - 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x04, 0x10, 0x02, 0x10, 0x0F, 0x5B, 0x0B, 0x65, 0x04, - 0x10, 0x06, 0x10, 0x0F, 0x5B, 0x0B, 0x65, 0x03, 0x10, 0x0F, 0x02, 0x02, 0x0C, 0x01, 0x0F, 0x04, - 0x5A, 0x07, 0x37, 0x02, 0x0C, 0x03, 0x0F, 0x0A, 0x5A, 0x07, 0x37, 0x00, 0x0F, 0x07, 0x01, 0x20, - 0xC0, 0x00, 0x00, 0x00, 0x00, 0x8D, 0xC2, 0x36, 0x8E, 0xC3, 0x36, 0x8D, 0xC9, 0x36, 0x8E, 0xCA, - 0x36, 0x88, 0xB9, 0xFF, 0xFF, 0x8D, 0xD3, 0x36, 0x88, 0xB9, 0xFF, 0xFF, 0x8D, 0xD2, 0x36, 0x8C, - 0xD5, 0x36, 0x20, 0xFF, 0xFF, 0xA0, 0xFF, 0xD0, 0xE8, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA0, 0x00, 0xF0, 0x07, 0xA9, 0x1B, 0xA2, 0x37, 0x4C, 0xB4, - 0x36, 0x60, 0xA2, 0x19, 0xB5, 0x02, 0x9D, 0xDB, 0x36, 0xCA, 0x10, 0xF8, 0xA9, 0x00, 0xA2, 0x70, - 0x85, 0x02, 0x86, 0x03, 0xA9, 0x0E, 0x20, 0xD2, 0xFF, 0x4C, 0xF5, 0x36, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +/* Generated by bin2c, do not edit manually */ + +#include + +/* Contents of file cfgPRGCode */ +const long int cfgPRGCode_size = 32012; +unsigned char *cfgPRGCode; +const unsigned char cfgPRGCode_Flash[32012] = { + 0x01, 0x08, 0x0B, 0x08, 0x20, 0x03, 0x9E, 0x32, 0x30, 0x36, 0x31, 0x00, 0x00, 0x00, 0xA5, 0x01, + 0x8D, 0xD3, 0x45, 0x29, 0xF8, 0x09, 0x06, 0x85, 0x01, 0xBA, 0x8E, 0xD4, 0x45, 0x20, 0xFB, 0x45, + 0x20, 0xB0, 0x45, 0x20, 0xC3, 0x42, 0x48, 0x20, 0x21, 0x43, 0xA2, 0x19, 0xBD, 0xD5, 0x45, 0x95, + 0x02, 0xCA, 0x10, 0xF8, 0x68, 0x85, 0x90, 0xAE, 0xD4, 0x45, 0x9A, 0xAE, 0xD3, 0x45, 0x86, 0x01, + 0x60, 0x20, 0xCE, 0x44, 0xA0, 0x04, 0xB1, 0x02, 0x8D, 0xA0, 0x46, 0x88, 0xB1, 0x02, 0x8D, 0x9F, + 0x46, 0x88, 0xB1, 0x02, 0x8D, 0xA1, 0x46, 0x88, 0xB1, 0x02, 0x8D, 0xA2, 0x46, 0xA0, 0x06, 0xB1, + 0x02, 0x8D, 0xA4, 0x46, 0x88, 0xB1, 0x02, 0x8D, 0xA3, 0x46, 0xAD, 0xA3, 0x46, 0x85, 0x26, 0x85, + 0xFD, 0xAD, 0xA4, 0x46, 0x18, 0x69, 0xD8, 0x85, 0x27, 0x69, 0x0C, 0x85, 0xFE, 0xAD, 0x9F, 0x46, + 0x85, 0xFB, 0xAD, 0xA0, 0x46, 0x85, 0xFC, 0xA0, 0x00, 0xB1, 0xFB, 0xF0, 0x0E, 0x0D, 0xA2, 0x46, + 0x91, 0xFD, 0xAD, 0xA1, 0x46, 0x91, 0x26, 0xC8, 0x4C, 0x88, 0x08, 0x4C, 0xAC, 0x43, 0x20, 0xCE, + 0x44, 0xA9, 0x28, 0x8D, 0xA5, 0x46, 0xA0, 0x05, 0xB1, 0x02, 0x8D, 0xA6, 0x46, 0xC8, 0xB1, 0x02, + 0x8D, 0xA7, 0x46, 0xA0, 0x04, 0xB1, 0x02, 0x8D, 0xA9, 0x46, 0x88, 0xB1, 0x02, 0x8D, 0xA8, 0x46, + 0x88, 0xB1, 0x02, 0x8D, 0xAA, 0x46, 0x88, 0xB1, 0x02, 0x8D, 0xAB, 0x46, 0xA9, 0x00, 0xA2, 0x08, + 0x4E, 0xA5, 0x46, 0x90, 0x04, 0x18, 0x6D, 0xA6, 0x46, 0x6A, 0x6E, 0xA5, 0x46, 0xCA, 0xD0, 0xF3, + 0x8D, 0xA6, 0x46, 0xAD, 0xA5, 0x46, 0x18, 0x6D, 0xA7, 0x46, 0x8D, 0xA5, 0x46, 0xAD, 0xA6, 0x46, + 0x69, 0x00, 0x8D, 0xA6, 0x46, 0xAD, 0xA5, 0x46, 0x85, 0x26, 0xAD, 0xA6, 0x46, 0x18, 0x69, 0xD8, + 0x85, 0x27, 0xAD, 0xA8, 0x46, 0x85, 0xFB, 0xAD, 0xA9, 0x46, 0x85, 0xFC, 0xAD, 0xA5, 0x46, 0x85, + 0xFD, 0xAD, 0xA6, 0x46, 0x18, 0x69, 0xE4, 0x85, 0xFE, 0xA0, 0x00, 0xB1, 0xFB, 0xF0, 0x0E, 0x0D, + 0xAB, 0x46, 0x91, 0xFD, 0xAD, 0xAA, 0x46, 0x91, 0x26, 0xC8, 0x4C, 0x1A, 0x09, 0x4C, 0xAC, 0x43, + 0x20, 0xCE, 0x44, 0xA0, 0x02, 0xB1, 0x02, 0x8D, 0xAC, 0x46, 0x88, 0xB1, 0x02, 0x8D, 0xAD, 0x46, + 0x88, 0xB1, 0x02, 0x8D, 0xAE, 0x46, 0xA9, 0x6C, 0x8D, 0xB0, 0x46, 0xA9, 0xD8, 0x8D, 0xAF, 0x46, + 0xA0, 0x04, 0xB1, 0x02, 0x8D, 0xB2, 0x46, 0x88, 0xB1, 0x02, 0x8D, 0xB1, 0x46, 0xAD, 0xB1, 0x46, + 0x85, 0x26, 0xAD, 0xB2, 0x46, 0x18, 0x69, 0xD8, 0x85, 0x27, 0xAD, 0xAF, 0x46, 0x85, 0xFB, 0xAD, + 0xB0, 0x46, 0x85, 0xFC, 0xAD, 0xB1, 0x46, 0x85, 0xFD, 0xAD, 0xB2, 0x46, 0x18, 0x69, 0xE4, 0x85, + 0xFE, 0xAD, 0xAC, 0x46, 0x0A, 0xA8, 0xAA, 0xB1, 0xFB, 0x0D, 0xAE, 0x46, 0xA0, 0x00, 0x91, 0xFD, + 0xAD, 0xAD, 0x46, 0x91, 0x26, 0x8A, 0xA8, 0xC8, 0xB1, 0xFB, 0x0D, 0xAE, 0x46, 0xA0, 0x01, 0x91, + 0xFD, 0xAD, 0xAD, 0x46, 0x91, 0x26, 0x4C, 0xA7, 0x43, 0xA9, 0x41, 0x8D, 0xA1, 0xE6, 0xA9, 0x0C, + 0x8D, 0xA1, 0xDA, 0xA9, 0x3A, 0x8D, 0xA2, 0xE6, 0xA9, 0x0C, 0x8D, 0xA2, 0xDA, 0xA9, 0x49, 0x8D, + 0xCA, 0xE6, 0xA9, 0x0C, 0x8D, 0xCA, 0xDA, 0xA9, 0x4F, 0x8D, 0xCB, 0xE6, 0xA9, 0x0C, 0x8D, 0xCB, + 0xDA, 0xA9, 0x3A, 0x8D, 0xCC, 0xE6, 0xA9, 0x0C, 0x8D, 0xCC, 0xDA, 0xAD, 0x19, 0x73, 0x8D, 0xDE, + 0x46, 0xA2, 0xDA, 0xA9, 0xA3, 0x8D, 0xE0, 0x46, 0x8E, 0xE1, 0x46, 0xA9, 0x00, 0x8D, 0xDF, 0x46, + 0xAD, 0xDF, 0x46, 0xC9, 0x04, 0xB0, 0x40, 0xAD, 0xE1, 0x46, 0x85, 0x0B, 0xAD, 0xE0, 0x46, 0x85, + 0x0A, 0xAD, 0xDE, 0x46, 0x29, 0x01, 0x18, 0x69, 0x0C, 0xA0, 0x00, 0x91, 0x0A, 0xAD, 0xDF, 0x46, + 0x18, 0x69, 0xA3, 0x85, 0x0A, 0x98, 0x69, 0xE6, 0x85, 0x0B, 0xAD, 0xDF, 0x46, 0x18, 0x69, 0x35, + 0x91, 0x0A, 0xEE, 0xE0, 0x46, 0xD0, 0x03, 0xEE, 0xE1, 0x46, 0xAD, 0xDE, 0x46, 0x4A, 0x8D, 0xDE, + 0x46, 0xEE, 0xDF, 0x46, 0x4C, 0xEF, 0x09, 0xA2, 0xDA, 0xA9, 0xCD, 0x8D, 0xE0, 0x46, 0x8E, 0xE1, + 0x46, 0x85, 0x0A, 0x86, 0x0B, 0xAD, 0xDE, 0x46, 0x29, 0x01, 0x18, 0x69, 0x0C, 0xA0, 0x00, 0x91, + 0x0A, 0xA9, 0x31, 0x8D, 0xCD, 0xE6, 0xEE, 0xE0, 0x46, 0xD0, 0x03, 0xEE, 0xE1, 0x46, 0xAD, 0xDE, + 0x46, 0x4A, 0x8D, 0xDE, 0x46, 0xAD, 0xE1, 0x46, 0x85, 0x0B, 0xAD, 0xE0, 0x46, 0x85, 0x0A, 0xAD, + 0xDE, 0x46, 0x29, 0x01, 0x18, 0x69, 0x0C, 0x91, 0x0A, 0xA9, 0x32, 0x8D, 0xCE, 0xE6, 0x60, 0x20, + 0xCE, 0x44, 0xA2, 0x00, 0xAD, 0x43, 0x7A, 0x20, 0xB2, 0x42, 0x20, 0x99, 0x42, 0x18, 0x69, 0x1C, + 0x8D, 0xE2, 0x46, 0x8A, 0x69, 0x73, 0x8D, 0xE3, 0x46, 0xA9, 0x02, 0x8D, 0xE4, 0x46, 0xA9, 0x09, + 0x8D, 0xE5, 0x46, 0xA9, 0x01, 0x8D, 0xE6, 0x46, 0xA9, 0x00, 0x8D, 0xE7, 0x46, 0x20, 0x3A, 0x43, + 0xA9, 0x7B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xAD, 0x45, 0x7A, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0xAD, 0x46, 0x7A, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, + 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x8D, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0xF2, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, + 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, + 0x2D, 0x43, 0xA9, 0x13, 0xA0, 0x03, 0x91, 0x02, 0x98, 0x88, 0x91, 0x02, 0xAD, 0x43, 0x7A, 0x88, + 0x91, 0x02, 0x98, 0x88, 0x91, 0x02, 0x98, 0x20, 0x70, 0x7A, 0x20, 0x3A, 0x43, 0xA9, 0xA3, 0xA0, + 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0x97, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0x45, 0x0B, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, + 0x3A, 0x43, 0xA9, 0xB3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xAD, 0xE2, 0x46, + 0xAE, 0xE3, 0x46, 0xA0, 0x00, 0x20, 0xBA, 0x43, 0x20, 0xE4, 0x44, 0xA9, 0x0F, 0x20, 0x70, 0x44, + 0x18, 0x69, 0x06, 0xA8, 0x8A, 0x69, 0x6B, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, + 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x92, + 0x0B, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0E, 0x20, 0x40, 0x08, 0xA9, 0x0D, 0x8D, 0xE8, + 0x46, 0xA9, 0x03, 0x8D, 0xE9, 0x46, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x00, 0x20, 0xBA, + 0x43, 0xC9, 0x02, 0xF0, 0x08, 0xA9, 0x0B, 0x8D, 0xE9, 0x46, 0x8D, 0xE8, 0x46, 0x20, 0x3A, 0x43, + 0xA9, 0xCB, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0x48, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0xE8, 0x46, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, + 0x02, 0xC9, 0x01, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xEB, 0x0B, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, + 0xA9, 0x09, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0xDB, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x00, 0x91, 0x02, 0xAD, 0xE3, 0x46, 0x85, 0x0B, 0xAD, 0xE2, 0x46, 0x85, 0x0A, 0xA0, 0x01, 0xB1, + 0x0A, 0x91, 0x02, 0xAD, 0xE9, 0x46, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x01, 0xD0, + 0x05, 0xA9, 0x80, 0x4C, 0x27, 0x0C, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0xF3, + 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0xD7, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x71, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x02, + 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x58, 0x0C, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0D, 0x20, + 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x13, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0xE7, 0x46, 0x18, 0x69, + 0x06, 0x88, 0x91, 0x02, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x02, 0x20, 0xBA, 0x43, 0x20, + 0xA4, 0x42, 0x18, 0x69, 0xEE, 0xA8, 0x8A, 0x69, 0x6A, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0x8A, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x02, 0xD0, 0x05, + 0xA9, 0x80, 0x4C, 0xA6, 0x0C, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x03, 0x20, 0x9D, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x1B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x9E, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, + 0x06, 0xB1, 0x02, 0xC9, 0x03, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xDD, 0x0C, 0xA9, 0x00, 0xA0, 0x00, + 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x21, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, + 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x22, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x88, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, + 0x06, 0xB1, 0x02, 0xC9, 0x04, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x3D, 0x0D, 0xA9, 0x00, 0xA0, 0x00, + 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x2E, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, + 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, + 0x2D, 0x43, 0xA9, 0x2B, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0xE3, 0x46, + 0x85, 0x0B, 0xAD, 0xE2, 0x46, 0x85, 0x0A, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, + 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x03, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xA0, 0x0D, 0xA9, + 0x00, 0x20, 0x2F, 0x09, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x04, 0x20, 0xBA, 0x43, 0x38, + 0xE9, 0x07, 0xC9, 0x80, 0x8D, 0x2C, 0x47, 0x8D, 0x2D, 0x47, 0x0A, 0x90, 0x0D, 0xAD, 0x2C, 0x47, + 0x49, 0xFF, 0x18, 0x69, 0x01, 0xC9, 0x80, 0x8D, 0x2C, 0x47, 0x20, 0x2D, 0x43, 0xA9, 0x31, 0xA0, + 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x2C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA9, + 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x04, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xF2, + 0x0D, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0xAD, 0x2D, 0x47, 0x0A, 0x90, 0x2B, 0x20, 0x3A, 0x43, 0xA9, + 0x30, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x01, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x73, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x04, + 0xD0, 0x30, 0xA9, 0x80, 0x4C, 0x53, 0x0E, 0x20, 0x3A, 0x43, 0xA9, 0x30, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x0B, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, + 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x04, 0xD0, 0x05, 0xA9, 0x80, 0x4C, + 0x53, 0x0E, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, + 0xA9, 0x43, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x5C, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x05, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x8A, 0x0E, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, + 0x08, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x4B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, + 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, + 0xA9, 0x4C, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xBD, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x06, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xEA, 0x0E, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, + 0x04, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x56, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, + 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, + 0x53, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0xE3, 0x46, 0x85, 0x0B, 0xAD, + 0xE2, 0x46, 0x85, 0x0A, 0xA0, 0x05, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, + 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x05, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x4F, 0x0F, 0xA9, 0x00, + 0x20, 0x2F, 0x09, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x06, 0x20, 0xBA, 0x43, 0x18, 0x69, + 0x5A, 0xC9, 0x80, 0x8D, 0x2C, 0x47, 0xC9, 0x64, 0xD0, 0x2B, 0x20, 0x3A, 0x43, 0xA9, 0x58, 0xA0, + 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xDA, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x06, 0xD0, 0x67, + 0xA9, 0x80, 0x4C, 0xF8, 0x0F, 0x20, 0x2D, 0x43, 0xA9, 0x58, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x01, 0x91, 0x02, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x06, 0x20, 0xBA, 0x43, 0x18, 0x69, + 0x5A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x06, + 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xC8, 0x0F, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, + 0x5A, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x7D, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x71, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x06, + 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xF8, 0x0F, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x03, 0x20, + 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x6B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, + 0xA9, 0x26, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, + 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x2F, 0x10, 0xA9, 0x00, + 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0B, 0x20, 0x40, 0x08, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, + 0x07, 0x20, 0xBA, 0x43, 0x38, 0xE9, 0x32, 0xB0, 0x01, 0xCA, 0x8D, 0x2A, 0x47, 0x8E, 0x2B, 0x47, + 0xE0, 0x80, 0x90, 0x3A, 0xAD, 0x2A, 0x47, 0xAE, 0x2B, 0x47, 0x20, 0xAE, 0x44, 0x8D, 0x2A, 0x47, + 0x8E, 0x2B, 0x47, 0x20, 0x3A, 0x43, 0xA9, 0x7B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, + 0x02, 0xA9, 0x01, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, + 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x30, 0xA9, 0x80, 0x4C, 0xBA, 0x10, 0x20, 0x3A, + 0x43, 0xA9, 0x7B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x0B, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xBA, 0x10, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, + 0x02, 0x20, 0x40, 0x08, 0xAD, 0x2A, 0x47, 0xC9, 0x0A, 0xAD, 0x2B, 0x47, 0xE9, 0x00, 0x50, 0x02, + 0x49, 0x80, 0x10, 0x27, 0x20, 0x2D, 0x43, 0xA9, 0x7C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xAD, 0x2A, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, + 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x2C, 0xA9, 0x80, 0x4C, 0x23, 0x11, 0x20, 0x2D, 0x43, 0xA9, 0x7C, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x2A, 0x47, 0xA0, 0x01, 0x91, 0x02, + 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, 0x4C, + 0x23, 0x11, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0x16, 0xA0, 0x05, 0x91, 0x02, + 0xA9, 0x09, 0x88, 0x91, 0x02, 0xA9, 0xD6, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, + 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, 0x4C, + 0x53, 0x11, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x9D, 0x08, 0x20, 0x3A, 0x43, + 0xA9, 0x93, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x70, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x08, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x8A, 0x11, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, + 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xA3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x08, 0x20, 0xBA, 0x43, 0x20, 0xE4, 0x44, + 0xA9, 0x0F, 0x20, 0x70, 0x44, 0x18, 0x69, 0x06, 0xA8, 0x8A, 0x69, 0x6B, 0xAA, 0x98, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, + 0x08, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xD9, 0x11, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0E, + 0x20, 0x40, 0x08, 0xA9, 0x0D, 0x8D, 0xE8, 0x46, 0xA9, 0x03, 0x8D, 0xE9, 0x46, 0xAD, 0xE2, 0x46, + 0xAE, 0xE3, 0x46, 0xA0, 0x08, 0x20, 0xBA, 0x43, 0xC9, 0x02, 0xF0, 0x08, 0xA9, 0x0B, 0x8D, 0xE9, + 0x46, 0x8D, 0xE8, 0x46, 0x20, 0x3A, 0x43, 0xA9, 0xBB, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xA9, 0x48, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0xE8, 0x46, + 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x09, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x32, + 0x12, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x09, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, + 0xCB, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0xE3, 0x46, 0x85, 0x0B, 0xAD, + 0xE2, 0x46, 0x85, 0x0A, 0xA0, 0x09, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0xE9, 0x46, 0x88, + 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x09, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x70, 0x12, 0xA9, + 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0xE3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xA9, 0x8E, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0xA9, 0x0D, 0xA0, + 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0A, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xA1, 0x12, + 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xF3, + 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, + 0x0A, 0x20, 0xBA, 0x43, 0x20, 0xE4, 0x44, 0xA9, 0x0C, 0x20, 0x70, 0x44, 0x18, 0x69, 0x42, 0xA8, + 0x8A, 0x69, 0x6B, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0x98, 0xA0, 0x01, + 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0A, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xF0, 0x12, 0xA9, + 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x05, 0x20, 0x40, 0x08, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, + 0xA0, 0x08, 0x20, 0xBA, 0x43, 0xC9, 0x03, 0xF0, 0x3D, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, + 0x0A, 0x20, 0xBA, 0x43, 0xC9, 0x04, 0xD0, 0x2E, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x1F, + 0x20, 0xBA, 0x43, 0x38, 0xE9, 0x01, 0x70, 0x02, 0x49, 0x80, 0x10, 0x1A, 0x20, 0x3A, 0x43, 0xA9, + 0xF8, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x30, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x71, 0x4C, 0xD1, 0x13, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x08, 0x20, 0xBA, + 0x43, 0xC9, 0x03, 0xF0, 0x3D, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x0A, 0x20, 0xBA, 0x43, + 0xC9, 0x05, 0xD0, 0x2E, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x10, 0x20, 0xBA, 0x43, 0x38, + 0xE9, 0x01, 0x70, 0x02, 0x49, 0x80, 0x10, 0x1A, 0x20, 0x3A, 0x43, 0xA9, 0xF8, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x20, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x4C, + 0xD1, 0x13, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x0A, 0x20, 0xBA, 0x43, 0xC9, 0x03, 0xF0, + 0x1A, 0x20, 0x3A, 0x43, 0xA9, 0xF8, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, + 0x60, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x4C, 0xD1, 0x13, 0x20, 0x3A, 0x43, 0xA9, 0xFE, + 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x6E, 0x91, 0x02, 0xA9, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, + 0x05, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x0B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, + 0x91, 0x02, 0xA9, 0x9E, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, + 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0B, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x11, 0x14, + 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x11, + 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, + 0x01, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x12, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, + 0x91, 0x02, 0xA9, 0x88, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, + 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0C, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x71, 0x14, + 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x1D, + 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xE2, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, + 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x1D, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, + 0x02, 0xA9, 0x7D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, + 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x1B, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0xE3, 0x46, 0x85, 0x0B, 0xAD, 0xE2, + 0x46, 0x85, 0x0A, 0xA0, 0x0B, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, + 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0B, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xFE, 0x14, 0xA9, 0x00, 0x20, + 0x2F, 0x09, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x0C, 0x20, 0xBA, 0x43, 0x38, 0xE9, 0x07, + 0xC9, 0x80, 0x8D, 0x2C, 0x47, 0x8D, 0x2D, 0x47, 0x0A, 0x90, 0x0D, 0xAD, 0x2C, 0x47, 0x49, 0xFF, + 0x18, 0x69, 0x01, 0xC9, 0x80, 0x8D, 0x2C, 0x47, 0x20, 0x2D, 0x43, 0xA9, 0x21, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x2C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, + 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0C, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x50, 0x15, 0xA9, + 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0x23, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, + 0x91, 0x02, 0xA9, 0x77, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0x98, 0xA0, 0x01, + 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0xAD, 0x2D, 0x47, 0x0A, + 0x90, 0x2B, 0x20, 0x3A, 0x43, 0xA9, 0x20, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, + 0xA9, 0x01, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, + 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0C, 0xD0, 0x30, 0xA9, 0x80, 0x4C, 0xD9, 0x15, 0x20, 0x3A, 0x43, + 0xA9, 0x20, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x0B, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, + 0x0C, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xD9, 0x15, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, + 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x33, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, + 0x02, 0xA9, 0x5C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, + 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0D, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x10, 0x16, 0xA9, + 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x08, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x3B, 0xA0, + 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, + 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x3C, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, + 0x02, 0xA9, 0xBD, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, + 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0E, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x70, 0x16, 0xA9, + 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x04, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x46, 0xA0, + 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, + 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x43, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, + 0xAD, 0xE3, 0x46, 0x85, 0x0B, 0xAD, 0xE2, 0x46, 0x85, 0x0A, 0xA0, 0x0D, 0xB1, 0x0A, 0xA0, 0x01, + 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0D, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0xD5, 0x16, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, + 0x0E, 0x20, 0xBA, 0x43, 0x18, 0x69, 0x5A, 0xC9, 0x80, 0x8D, 0x2C, 0x47, 0xC9, 0x64, 0xD0, 0x2B, + 0x20, 0x3A, 0x43, 0xA9, 0x48, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xDA, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, + 0xB1, 0x02, 0xC9, 0x0E, 0xD0, 0x67, 0xA9, 0x80, 0x4C, 0x7E, 0x17, 0x20, 0x2D, 0x43, 0xA9, 0x48, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, + 0x0E, 0x20, 0xBA, 0x43, 0x18, 0x69, 0x5A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, + 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0E, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x4E, 0x17, 0xA9, 0x00, 0x20, + 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0x4A, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, + 0xA9, 0x7D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, + 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0E, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x7E, 0x17, 0xA9, 0x00, 0xA0, + 0x00, 0x91, 0x02, 0xA9, 0x03, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x5B, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x26, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, + 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0xB5, 0x17, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0B, 0x20, 0x40, 0x08, 0xAD, + 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x0F, 0x20, 0xBA, 0x43, 0x38, 0xE9, 0x32, 0xB0, 0x01, 0xCA, + 0x8D, 0x2A, 0x47, 0x8E, 0x2B, 0x47, 0xE0, 0x80, 0x90, 0x48, 0x20, 0x3A, 0x43, 0xA9, 0x6B, 0xA0, + 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x01, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x73, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x05, + 0xA9, 0x80, 0x4C, 0x06, 0x18, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x40, 0x08, + 0xAD, 0x2A, 0x47, 0xAE, 0x2B, 0x47, 0x20, 0xAE, 0x44, 0x8D, 0x2A, 0x47, 0x8E, 0x2B, 0x47, 0x4C, + 0x57, 0x18, 0x20, 0x3A, 0x43, 0xA9, 0x6B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, + 0xA9, 0x0B, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, + 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x4E, 0x18, 0xA9, 0x00, 0xA0, + 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x40, 0x08, 0xAD, 0x2A, 0x47, 0xC9, 0x0A, 0xAD, 0x2B, 0x47, + 0xE9, 0x00, 0x50, 0x02, 0x49, 0x80, 0x10, 0x27, 0x20, 0x2D, 0x43, 0xA9, 0x6C, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x2A, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, + 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x2C, 0xA9, 0x80, 0x4C, 0xB7, 0x18, 0x20, + 0x2D, 0x43, 0xA9, 0x6C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x2A, 0x47, + 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, + 0x05, 0xA9, 0x80, 0x4C, 0xB7, 0x18, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0x16, + 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x0F, 0x88, 0x91, 0x02, 0xA9, 0xD6, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, + 0x05, 0xA9, 0x80, 0x4C, 0xE7, 0x18, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x9D, + 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x83, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, + 0xAC, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, + 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x10, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x1E, 0x19, 0xA9, 0x00, 0xA0, + 0x00, 0x91, 0x02, 0xA9, 0x0E, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x93, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0xE2, 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x10, 0x20, 0xBA, + 0x43, 0x20, 0xE4, 0x44, 0xA9, 0x0B, 0x20, 0x70, 0x44, 0x18, 0x69, 0xA0, 0xA8, 0x8A, 0x69, 0x6B, + 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, + 0x06, 0xB1, 0x02, 0xC9, 0x10, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x6D, 0x19, 0xA9, 0x00, 0xA0, 0x00, + 0x91, 0x02, 0xA9, 0x03, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xAB, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x9E, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, + 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x11, 0xD0, 0x05, 0xA9, 0x80, + 0x4C, 0xA4, 0x19, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, + 0x43, 0xA9, 0xB1, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, + 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xB2, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x88, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, + 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x12, 0xD0, 0x05, 0xA9, 0x80, + 0x4C, 0x04, 0x1A, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, 0x3A, + 0x43, 0xA9, 0xBE, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, + 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0xBB, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x02, 0x91, 0x02, 0xAD, 0xE3, 0x46, 0x85, 0x0B, 0xAD, 0xE2, 0x46, 0x85, 0x0A, 0xA0, 0x11, + 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, + 0x11, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x69, 0x1A, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0xAD, 0xE2, 0x46, + 0xAE, 0xE3, 0x46, 0xA0, 0x12, 0x20, 0xBA, 0x43, 0x38, 0xE9, 0x07, 0xC9, 0x80, 0x8D, 0x2C, 0x47, + 0x8D, 0x2D, 0x47, 0x0A, 0x90, 0x0D, 0xAD, 0x2C, 0x47, 0x49, 0xFF, 0x18, 0x69, 0x01, 0xC9, 0x80, + 0x8D, 0x2C, 0x47, 0x20, 0x2D, 0x43, 0xAD, 0xE5, 0x46, 0x18, 0x69, 0x10, 0xA0, 0x03, 0x91, 0x02, + 0xA9, 0x11, 0x88, 0x91, 0x02, 0xAD, 0x2C, 0x47, 0x88, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, + 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x12, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xBE, 0x1A, 0xA9, 0x00, 0x20, + 0x70, 0x7A, 0xAD, 0x2D, 0x47, 0x0A, 0x90, 0x2B, 0x20, 0x3A, 0x43, 0xA9, 0xC0, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x01, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, + 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x12, 0xD0, 0x30, 0xA9, 0x80, + 0x4C, 0x1F, 0x1B, 0x20, 0x3A, 0x43, 0xA9, 0xC0, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, + 0x02, 0xA9, 0x0B, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, + 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x12, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x1F, 0x1B, 0xA9, 0x00, + 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xD3, 0xA0, 0x04, + 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x0C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, + 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x13, 0xD0, 0x05, + 0xA9, 0x80, 0x4C, 0x56, 0x1B, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0C, 0x20, 0x40, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0xE3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0xE2, + 0x46, 0xAE, 0xE3, 0x46, 0xA0, 0x13, 0x20, 0xBA, 0x43, 0x20, 0xE4, 0x44, 0xA9, 0x0B, 0x20, 0x70, + 0x44, 0x18, 0x69, 0x8A, 0xA8, 0x8A, 0x69, 0x6B, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, + 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x13, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0xA5, 0x1B, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0A, 0x20, 0x40, 0x08, 0xA0, + 0x00, 0xB1, 0x02, 0xC9, 0x0A, 0xF0, 0x04, 0xC9, 0x10, 0xD0, 0x06, 0x20, 0xA8, 0x09, 0x4C, 0xD4, + 0x1B, 0xA0, 0x05, 0xA9, 0x20, 0x99, 0xA1, 0xE6, 0x88, 0x10, 0xFA, 0xA0, 0x04, 0xA9, 0x20, 0x99, + 0xCA, 0xE6, 0x88, 0x10, 0xFA, 0x4C, 0x8A, 0x43, 0x20, 0xCE, 0x44, 0xA2, 0x00, 0xAD, 0x43, 0x7A, + 0x20, 0xB2, 0x42, 0x20, 0x99, 0x42, 0x18, 0x69, 0x1C, 0xA8, 0x8A, 0x69, 0x73, 0xAA, 0x98, 0x18, + 0x69, 0x14, 0x90, 0x01, 0xE8, 0x8D, 0x30, 0x47, 0x8E, 0x31, 0x47, 0xA9, 0x02, 0x8D, 0x32, 0x47, + 0xA9, 0x09, 0x8D, 0x33, 0x47, 0xA9, 0x01, 0x8D, 0x34, 0x47, 0xA9, 0x00, 0x8D, 0x35, 0x47, 0x20, + 0x3A, 0x43, 0xA9, 0x7B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xAD, 0x45, 0x7A, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xAD, 0x46, 0x7A, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, + 0x00, 0x88, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x8D, 0xA0, 0x04, + 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, + 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, + 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x13, 0xA0, 0x03, 0x91, 0x02, 0x98, 0x88, 0x91, 0x02, 0xAD, 0x43, + 0x7A, 0x88, 0x91, 0x02, 0x98, 0x88, 0x91, 0x02, 0x98, 0x20, 0x70, 0x7A, 0xA9, 0x0D, 0x8D, 0x7C, + 0x47, 0xA9, 0x03, 0x8D, 0x7D, 0x47, 0xAD, 0x1B, 0x73, 0xD0, 0x08, 0xA9, 0x0C, 0x8D, 0x7C, 0x47, + 0x8D, 0x7D, 0x47, 0x20, 0x3A, 0x43, 0xA9, 0xA3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, + 0x02, 0xA9, 0x77, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, + 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xBF, 0x1C, 0xA9, 0x00, + 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xB3, 0xA0, 0x04, + 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, + 0x0A, 0xA2, 0x00, 0xA1, 0x0A, 0x20, 0xE2, 0x44, 0xA9, 0x0D, 0x20, 0x70, 0x44, 0x18, 0x69, 0x7D, + 0xA8, 0x8A, 0x69, 0x6C, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0xAD, 0x7D, + 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x11, 0x1D, + 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0E, 0x20, 0x40, 0x08, 0xAD, 0x44, 0x7A, 0xF0, 0x0A, + 0xA0, 0x27, 0xA9, 0x20, 0x99, 0xC8, 0xE4, 0x88, 0x10, 0xFA, 0x20, 0x3A, 0x43, 0xA9, 0xCB, 0xA0, + 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0x7F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x71, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x01, + 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x58, 0x1D, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, + 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0xDB, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, + 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x01, 0xB1, 0x0A, 0x18, 0x69, + 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x01, 0xD0, + 0x05, 0xA9, 0x80, 0x4C, 0x97, 0x1D, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0xF3, + 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0x90, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, + 0x02, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xC9, 0x1D, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, + 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xFA, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, + 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, + 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, + 0xA9, 0x06, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xFF, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, + 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xFC, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0xAB, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, + 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x03, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0x55, 0x1E, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, + 0x2D, 0x43, 0xA9, 0x03, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, + 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0x88, 0xB1, 0x0A, 0x18, 0x69, 0x01, 0x88, 0x91, 0x02, + 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x02, 0xD0, 0x05, 0xA9, 0x80, + 0x4C, 0x94, 0x1E, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x2D, 0x43, 0xA9, 0x08, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, + 0xB1, 0x0A, 0x18, 0x69, 0x01, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, + 0x04, 0xB1, 0x02, 0xC9, 0x03, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xCD, 0x1E, 0xA9, 0x00, 0x20, 0x2F, + 0x09, 0x20, 0x3A, 0x43, 0xA9, 0x1B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, + 0x40, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, + 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x04, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xFF, 0x1E, 0xA9, 0x00, + 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x13, 0xA0, 0x03, + 0x91, 0x02, 0xA9, 0x07, 0x88, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, + 0x0A, 0xA0, 0x04, 0xB1, 0x0A, 0x20, 0xE2, 0x44, 0xA9, 0x64, 0x20, 0x45, 0x45, 0xA0, 0x01, 0x91, + 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x04, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0x45, 0x1F, 0xA9, 0x00, 0x20, 0x70, 0x7A, 0x20, 0x2D, 0x43, 0xA9, 0x2C, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, + 0x0A, 0xC8, 0xB1, 0x0A, 0x20, 0xE2, 0x44, 0xA9, 0x64, 0x20, 0x94, 0x45, 0xA0, 0x01, 0x91, 0x02, + 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x04, 0xD0, 0x05, 0xA9, 0x80, + 0x4C, 0x84, 0x1F, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0x43, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x65, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, + 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x05, 0xA9, 0x00, + 0x90, 0x0D, 0xB1, 0x02, 0xC9, 0x08, 0x90, 0x05, 0xA9, 0x00, 0x4C, 0xBE, 0x1F, 0xA9, 0x80, 0xA0, + 0x00, 0x91, 0x02, 0xA9, 0x07, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x53, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xF0, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, + 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x05, 0xD0, 0x05, + 0xA9, 0x80, 0x4C, 0xF6, 0x1F, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x03, 0x20, 0x40, 0x08, + 0x20, 0x2D, 0x43, 0xA9, 0x15, 0xA0, 0x03, 0x91, 0x02, 0xA9, 0x08, 0x88, 0x91, 0x02, 0xAD, 0x31, + 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x05, 0xA2, 0x00, 0xB1, 0x0A, 0x20, 0x99, + 0x42, 0x20, 0xE4, 0x44, 0xA9, 0x64, 0x20, 0x47, 0x43, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, + 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x05, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x41, 0x20, + 0xA9, 0x00, 0x20, 0x70, 0x7A, 0x20, 0x2D, 0x43, 0xA9, 0x56, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x05, 0xA2, + 0x00, 0xB1, 0x0A, 0x20, 0x99, 0x42, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xA9, 0x64, 0x20, 0x5F, 0x44, + 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x05, + 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x88, 0x20, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, + 0x59, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xFC, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x06, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xBA, 0x20, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, + 0x06, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x5B, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x06, 0xB1, 0x0A, + 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x06, + 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xF8, 0x20, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, + 0x5E, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xF3, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x07, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x2A, 0x21, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, + 0x06, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x60, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x07, 0xB1, 0x0A, + 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x07, + 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x68, 0x21, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, + 0x6B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x6E, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x08, 0xA9, 0x00, 0x90, 0x0D, 0xB1, 0x02, 0xC9, 0x0B, 0x90, 0x05, 0xA9, 0x00, 0x4C, 0xA2, + 0x21, 0xA9, 0x80, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, + 0x7B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xF0, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x08, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xDA, 0x21, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, + 0x03, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x15, 0xA0, 0x03, 0x91, 0x02, 0xA9, 0x09, 0x88, + 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x08, 0xA2, 0x00, + 0xB1, 0x0A, 0x20, 0x99, 0x42, 0x20, 0xE4, 0x44, 0xA9, 0x64, 0x20, 0x47, 0x43, 0xA0, 0x01, 0x91, + 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x08, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0x25, 0x22, 0xA9, 0x00, 0x20, 0x70, 0x7A, 0x20, 0x2D, 0x43, 0xA9, 0x7E, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, + 0x0A, 0xA0, 0x08, 0xA2, 0x00, 0xB1, 0x0A, 0x20, 0x99, 0x42, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xA9, + 0x64, 0x20, 0x5F, 0x44, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, + 0xB1, 0x02, 0xC9, 0x08, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x6C, 0x22, 0xA9, 0x00, 0x20, 0x2F, 0x09, + 0x20, 0x3A, 0x43, 0xA9, 0x81, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xFC, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, + 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x09, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x9E, 0x22, 0xA9, 0x00, 0xA0, + 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x83, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, + 0xA0, 0x09, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, + 0xB1, 0x02, 0xC9, 0x09, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xDC, 0x22, 0xA9, 0x00, 0x20, 0x2F, 0x09, + 0x20, 0x3A, 0x43, 0xA9, 0x86, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xF3, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, + 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0A, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x0E, 0x23, 0xA9, 0x00, 0xA0, + 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x88, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, + 0xA0, 0x0A, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0x88, 0x91, 0x02, 0xA0, 0x04, + 0xB1, 0x02, 0xC9, 0x0A, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x4C, 0x23, 0xA9, 0x00, 0x20, 0x2F, 0x09, + 0xA9, 0x0D, 0x8D, 0x7C, 0x47, 0xA9, 0x03, 0x8D, 0x7D, 0x47, 0xAD, 0x1A, 0x73, 0xD0, 0x08, 0xA9, + 0x0C, 0x8D, 0x7C, 0x47, 0x8D, 0x7D, 0x47, 0x20, 0x3A, 0x43, 0xA9, 0x93, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x9D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, + 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0B, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0x95, 0x23, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, + 0x3A, 0x43, 0xA9, 0xA3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, + 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x0B, 0xB1, 0x0A, 0x20, 0xE2, 0x44, 0xA9, 0x11, + 0x20, 0x70, 0x44, 0x18, 0x69, 0xC1, 0xA8, 0x8A, 0x69, 0x6B, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0x8A, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, + 0x0B, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xE9, 0x23, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0E, + 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xCB, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, + 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x0B, 0xB1, 0x0A, 0x20, + 0xE2, 0x44, 0xA9, 0x13, 0x20, 0x70, 0x44, 0x18, 0x69, 0x16, 0xA8, 0x8A, 0x69, 0x6C, 0xAA, 0x98, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, + 0x06, 0xB1, 0x02, 0xC9, 0x0B, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x3D, 0x24, 0xA9, 0x00, 0xA0, 0x00, + 0x91, 0x02, 0xA9, 0x0E, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xE3, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x50, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, + 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0C, 0xD0, 0x05, 0xA9, + 0x80, 0x4C, 0x75, 0x24, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, + 0x3A, 0x43, 0xA9, 0xF3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xAD, 0x31, 0x47, + 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x0C, 0xA2, 0x00, 0xB1, 0x0A, 0x20, 0xA4, 0x42, + 0x18, 0x69, 0xEE, 0xA8, 0x8A, 0x69, 0x6A, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, + 0x02, 0xAD, 0x7D, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0C, 0xD0, 0x05, + 0xA9, 0x80, 0x4C, 0xC6, 0x24, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0E, 0x20, 0x40, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x0B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x19, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xAD, 0x7C, 0x47, 0xA0, 0x01, 0x91, 0x02, + 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0D, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xFE, 0x24, 0xA9, 0x00, 0xA0, + 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x1F, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xEA, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, + 0x02, 0xAD, 0x7D, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0D, 0xD0, 0x05, + 0xA9, 0x80, 0x4C, 0x36, 0x25, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, + 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x0E, 0xB1, 0x0A, 0xF0, 0x2D, + 0x20, 0x3A, 0x43, 0xA9, 0x1B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x01, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0xA0, 0x01, 0x91, 0x02, + 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0D, 0xD0, 0x32, 0xA9, 0x80, 0x4C, 0xAB, 0x25, 0x20, 0x3A, 0x43, + 0xA9, 0x1B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x0B, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xAD, 0x7D, 0x47, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, + 0x02, 0xC9, 0x0D, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xAB, 0x25, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, + 0xA9, 0x06, 0x20, 0x40, 0x08, 0x20, 0x2D, 0x43, 0xA9, 0x14, 0xA0, 0x03, 0x91, 0x02, 0xA9, 0x0D, + 0x88, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x0D, 0xB1, + 0x0A, 0x20, 0xE2, 0x44, 0xA9, 0x64, 0x20, 0x45, 0x45, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, + 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0D, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xF1, 0x25, + 0xA9, 0x00, 0x20, 0x70, 0x7A, 0x20, 0x2D, 0x43, 0xA9, 0x1D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x02, 0x91, 0x02, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x0D, 0xB1, + 0x0A, 0x20, 0xE2, 0x44, 0xA9, 0x64, 0x20, 0x94, 0x45, 0xA0, 0x01, 0x91, 0x02, 0xAD, 0x7D, 0x47, + 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0D, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x31, 0x26, + 0xA9, 0x00, 0x20, 0x2F, 0x09, 0xAD, 0x1A, 0x73, 0xD0, 0x47, 0xAD, 0x1B, 0x73, 0xD0, 0x42, 0x20, + 0x3A, 0x43, 0xA9, 0xB5, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xE5, 0xA0, + 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, + 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xD9, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x59, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, 0x4C, 0xBB, + 0x26, 0xAD, 0x1A, 0x73, 0xD0, 0x1A, 0x20, 0x3A, 0x43, 0xA9, 0xD7, 0xA0, 0x04, 0x91, 0x02, 0xC8, + 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x54, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, 0x4C, 0xBB, 0x26, + 0xAD, 0x1B, 0x73, 0xD0, 0x28, 0x20, 0x3A, 0x43, 0xA9, 0xD8, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, + 0x02, 0x91, 0x02, 0xA9, 0xBE, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, 0x91, 0x02, 0xA9, 0x01, + 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, + 0xA9, 0x5B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x32, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, + 0xC9, 0x0F, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0xFA, 0x26, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, + 0x06, 0x20, 0x40, 0x08, 0xAD, 0x31, 0x47, 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x0F, + 0xB1, 0x0A, 0xD0, 0x2B, 0x20, 0x3A, 0x43, 0xA9, 0x6B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, + 0x91, 0x02, 0xA9, 0xDE, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, + 0x91, 0x02, 0xA0, 0x06, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x5A, 0xA9, 0x80, 0x4C, 0x95, 0x27, 0x20, + 0x2D, 0x43, 0xA9, 0x6B, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xAD, 0x31, 0x47, + 0x85, 0x0B, 0xAD, 0x30, 0x47, 0x85, 0x0A, 0xA0, 0x0F, 0xB1, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, + 0x03, 0x88, 0x91, 0x02, 0xA0, 0x04, 0xB1, 0x02, 0xC9, 0x0F, 0xD0, 0x05, 0xA9, 0x80, 0x4C, 0x72, + 0x27, 0xA9, 0x00, 0x20, 0x2F, 0x09, 0x20, 0x3A, 0x43, 0xA9, 0x6D, 0xA0, 0x04, 0x91, 0x02, 0xC8, + 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x15, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6E, 0x91, 0x02, 0x98, + 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0xA0, 0x00, 0x91, 0x02, 0xA9, 0x0E, 0x20, 0x40, 0x08, 0xA0, + 0x00, 0xB1, 0x02, 0xC9, 0x0B, 0xF0, 0x04, 0xC9, 0x0C, 0xD0, 0x06, 0x20, 0xA8, 0x09, 0x4C, 0xC4, + 0x27, 0xA0, 0x05, 0xA9, 0x20, 0x99, 0xA1, 0xE6, 0x88, 0x10, 0xFA, 0xA0, 0x04, 0xA9, 0x20, 0x99, + 0xCA, 0xE6, 0x88, 0x10, 0xFA, 0x4C, 0x8A, 0x43, 0x20, 0x3A, 0x43, 0xA9, 0x00, 0xA0, 0x05, 0x91, + 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0x3F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6E, 0x91, + 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x9D, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x01, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0x05, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, + 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x9D, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x0E, 0xA0, 0x05, 0x91, + 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0x07, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, + 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x9D, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x13, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0x09, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, + 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x9D, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x20, 0xA0, 0x05, 0x91, + 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0xED, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, + 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x9D, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0x17, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6E, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, + 0x88, 0x91, 0x02, 0xA9, 0x28, 0x20, 0x9D, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x02, 0xA0, 0x05, 0x91, + 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0x7E, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6F, 0x91, + 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x9D, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x07, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0xF6, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, + 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x9D, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x14, 0xA0, 0x05, 0x91, + 0x02, 0xA9, 0x15, 0x88, 0x91, 0x02, 0xA9, 0xF9, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, + 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x02, 0x4C, 0x9D, 0x08, + 0xA2, 0xE4, 0xA9, 0x21, 0x8D, 0x81, 0x47, 0x8E, 0x82, 0x47, 0x8E, 0x80, 0x47, 0xA9, 0x00, 0x8D, + 0x7F, 0x47, 0xAD, 0x7F, 0x47, 0xC9, 0x04, 0xB0, 0x42, 0xA9, 0x00, 0x8D, 0x7E, 0x47, 0xAD, 0x7E, + 0x47, 0xC9, 0x07, 0xB0, 0x22, 0xAD, 0x82, 0x47, 0x85, 0x0B, 0xAD, 0x81, 0x47, 0x85, 0x0A, 0xAD, + 0x80, 0x47, 0xEE, 0x80, 0x47, 0xA0, 0x00, 0x91, 0x0A, 0xEE, 0x81, 0x47, 0xD0, 0x03, 0xEE, 0x82, + 0x47, 0xEE, 0x7E, 0x47, 0x4C, 0x4D, 0x29, 0xEE, 0x7F, 0x47, 0xA9, 0x21, 0x18, 0x6D, 0x81, 0x47, + 0x8D, 0x81, 0x47, 0x90, 0xBD, 0xEE, 0x82, 0x47, 0x4C, 0x41, 0x29, 0xA2, 0xD8, 0xA9, 0x21, 0x8D, + 0x81, 0x47, 0x8E, 0x82, 0x47, 0xA9, 0x00, 0x8D, 0x7F, 0x47, 0xAD, 0x7F, 0x47, 0xC9, 0x02, 0xB0, + 0x3E, 0xA9, 0x00, 0x8D, 0x7E, 0x47, 0xAD, 0x7E, 0x47, 0xC9, 0x07, 0xB0, 0x1E, 0xAD, 0x82, 0x47, + 0x85, 0x0B, 0xAD, 0x81, 0x47, 0x85, 0x0A, 0xA9, 0x0D, 0xA0, 0x00, 0x91, 0x0A, 0xEE, 0x81, 0x47, + 0xD0, 0x03, 0xEE, 0x82, 0x47, 0xEE, 0x7E, 0x47, 0x4C, 0xA5, 0x29, 0xEE, 0x7F, 0x47, 0xA9, 0x21, + 0x18, 0x6D, 0x81, 0x47, 0x8D, 0x81, 0x47, 0x90, 0xC1, 0xEE, 0x82, 0x47, 0x4C, 0x99, 0x29, 0xA9, + 0x00, 0x8D, 0x7F, 0x47, 0xAD, 0x7F, 0x47, 0xC9, 0x02, 0xB0, 0x3E, 0xA9, 0x00, 0x8D, 0x7E, 0x47, + 0xAD, 0x7E, 0x47, 0xC9, 0x07, 0xB0, 0x1E, 0xAD, 0x82, 0x47, 0x85, 0x0B, 0xAD, 0x81, 0x47, 0x85, + 0x0A, 0xA9, 0x03, 0xA0, 0x00, 0x91, 0x0A, 0xEE, 0x81, 0x47, 0xD0, 0x03, 0xEE, 0x82, 0x47, 0xEE, + 0x7E, 0x47, 0x4C, 0xEF, 0x29, 0xEE, 0x7F, 0x47, 0xA9, 0x21, 0x18, 0x6D, 0x81, 0x47, 0x8D, 0x81, + 0x47, 0x90, 0xC1, 0xEE, 0x82, 0x47, 0x4C, 0xE3, 0x29, 0x20, 0x3A, 0x43, 0xA9, 0x00, 0xA0, 0x05, + 0x91, 0x02, 0x88, 0x91, 0x02, 0xA9, 0xDD, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6F, 0x91, 0x02, + 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1E, 0x20, 0x9D, 0x08, 0x20, + 0x3A, 0x43, 0xA9, 0x05, 0xA8, 0x91, 0x02, 0xA9, 0x01, 0x88, 0x91, 0x02, 0xA9, 0x52, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0C, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, + 0x91, 0x02, 0xA9, 0x0F, 0x20, 0x9D, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x0E, 0xA0, 0x05, 0x91, 0x02, + 0xA9, 0x01, 0x88, 0x91, 0x02, 0xA9, 0x1C, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x7A, 0x91, 0x02, + 0xA9, 0x0C, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x14, 0x20, 0x9D, 0x08, + 0x4C, 0xC7, 0x27, 0xA0, 0x20, 0x98, 0x99, 0x78, 0xE4, 0x88, 0x10, 0xFA, 0xA2, 0xE4, 0xA9, 0xA0, + 0x20, 0xE4, 0x44, 0xA9, 0x20, 0x20, 0xE2, 0x44, 0xA2, 0x03, 0xA9, 0x48, 0x20, 0x0A, 0x44, 0x20, + 0x3A, 0x43, 0xA9, 0x00, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x17, 0x88, 0x91, 0x02, 0xA9, 0xEE, 0xA0, + 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6D, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, + 0x91, 0x02, 0xA9, 0x27, 0x20, 0x9D, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x0A, 0xA0, 0x05, 0x91, 0x02, + 0xA9, 0x17, 0x88, 0x91, 0x02, 0xA9, 0xED, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, + 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x02, 0x20, 0x9D, 0x08, 0x20, + 0x3A, 0x43, 0xA9, 0x13, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x17, 0x88, 0x91, 0x02, 0xA9, 0xF6, 0xA0, + 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, + 0x91, 0x02, 0xA9, 0x02, 0x20, 0x9D, 0x08, 0xA9, 0x00, 0x8D, 0x8B, 0x47, 0x8D, 0x85, 0x47, 0xAD, + 0x85, 0x47, 0xC9, 0x10, 0x90, 0x01, 0x60, 0xAD, 0x85, 0x47, 0x20, 0xE2, 0x44, 0xA9, 0x18, 0x20, + 0x70, 0x44, 0x18, 0x69, 0x16, 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, 0x76, 0x85, 0x0B, + 0xA0, 0x1C, 0xB1, 0x0A, 0xAA, 0xA9, 0x00, 0x20, 0xE4, 0x44, 0xAD, 0x85, 0x47, 0x20, 0xE2, 0x44, + 0xA9, 0x18, 0x20, 0x70, 0x44, 0x18, 0x69, 0x17, 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, + 0x76, 0x85, 0x0B, 0xA0, 0x1C, 0xB1, 0x0A, 0x20, 0x6F, 0x42, 0x8D, 0x8C, 0x47, 0x8E, 0x8D, 0x47, + 0xAD, 0x85, 0x47, 0x18, 0x69, 0x41, 0x8D, 0x8A, 0x47, 0xAD, 0x8C, 0x47, 0x0D, 0x8D, 0x47, 0xD0, + 0x03, 0x4C, 0xF2, 0x2C, 0x20, 0x3A, 0x43, 0xA9, 0x04, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0x85, 0x47, + 0x18, 0x69, 0x05, 0x88, 0x91, 0x02, 0xA9, 0x8A, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x47, 0x91, + 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1F, 0x20, 0x9D, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x06, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0x85, 0x47, 0x18, 0x69, 0x05, 0x88, + 0x91, 0x02, 0xAD, 0x85, 0x47, 0x20, 0xE2, 0x44, 0xA9, 0x18, 0x20, 0x70, 0x44, 0x18, 0x69, 0x1C, + 0xA8, 0x8A, 0x69, 0x76, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0xA9, 0x0D, + 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1F, 0x20, 0x9D, 0x08, 0xAD, 0x8C, + 0x47, 0xC9, 0x00, 0xAD, 0x8D, 0x47, 0xE9, 0x28, 0x90, 0x39, 0x20, 0x2D, 0x43, 0xA2, 0x00, 0xAD, + 0x85, 0x47, 0x18, 0x69, 0x05, 0x90, 0x01, 0xE8, 0x20, 0xE4, 0x44, 0xA9, 0x28, 0x20, 0x70, 0x44, + 0x18, 0x69, 0x1E, 0x90, 0x01, 0xE8, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0xAD, 0x8D, + 0x47, 0x4A, 0x4A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0x98, 0x20, 0x2F, 0x09, + 0x4C, 0xD1, 0x2C, 0x20, 0x3A, 0x43, 0xA9, 0x1E, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0x85, 0x47, 0x18, + 0x69, 0x05, 0x88, 0x91, 0x02, 0xA9, 0xD6, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6E, 0x91, 0x02, + 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x01, 0x20, 0x9D, 0x08, 0x20, + 0x2D, 0x43, 0xA9, 0x1F, 0xA0, 0x03, 0x91, 0x02, 0xAD, 0x85, 0x47, 0x18, 0x69, 0x05, 0x88, 0x91, + 0x02, 0xAD, 0x8D, 0x47, 0x29, 0x03, 0xAA, 0xAD, 0x8C, 0x47, 0x20, 0xE4, 0x44, 0xA9, 0x66, 0x20, + 0x45, 0x45, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0x98, 0x20, 0x70, 0x7A, 0x20, + 0x2D, 0x43, 0xA9, 0x1D, 0xA0, 0x03, 0x91, 0x02, 0xAD, 0x85, 0x47, 0x18, 0x69, 0x05, 0x88, 0x91, + 0x02, 0xAD, 0x8D, 0x47, 0x4A, 0x4A, 0x88, 0x91, 0x02, 0xA9, 0x03, 0x88, 0x91, 0x02, 0x98, 0x20, + 0x70, 0x7A, 0x20, 0x3A, 0x43, 0xA9, 0x20, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0x85, 0x47, 0x18, 0x69, + 0x05, 0x88, 0x91, 0x02, 0xA9, 0xE6, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0x98, + 0x4C, 0x4F, 0x2D, 0x20, 0x3A, 0x43, 0xA9, 0x04, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0x85, 0x47, 0x18, + 0x69, 0x05, 0x88, 0x91, 0x02, 0xA9, 0x8A, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x47, 0x91, 0x02, + 0xA9, 0x0B, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1F, 0x20, 0x9D, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x06, 0xA0, 0x05, 0x91, 0x02, 0xAD, 0x85, 0x47, 0x18, 0x69, 0x05, 0x88, + 0x91, 0x02, 0xAD, 0x85, 0x47, 0x20, 0xE2, 0x44, 0xA9, 0x18, 0x20, 0x70, 0x44, 0x18, 0x69, 0x1C, + 0xA8, 0x8A, 0x69, 0x76, 0xAA, 0x98, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0x8A, 0x91, 0x02, 0xA9, 0x0B, + 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x1F, 0x20, 0x9D, 0x08, 0xEE, 0x85, + 0x47, 0x4C, 0x3E, 0x2B, 0x20, 0xCE, 0x44, 0xA0, 0x00, 0xB1, 0x02, 0x8D, 0x9E, 0x47, 0xC8, 0xB1, + 0x02, 0x8D, 0xA1, 0x47, 0x18, 0xA2, 0xD8, 0x8E, 0xA2, 0x47, 0xAD, 0xA1, 0x47, 0x85, 0xFB, 0xAD, + 0xA2, 0x47, 0x85, 0xFC, 0x20, 0xA5, 0x45, 0xA0, 0x00, 0xB9, 0x78, 0xD8, 0x29, 0x0F, 0xAA, 0xBD, + 0xCE, 0x6D, 0x99, 0x78, 0xD8, 0xC8, 0xC0, 0x21, 0xD0, 0xEF, 0xA0, 0x00, 0xB1, 0xFB, 0x29, 0x0F, + 0xAA, 0xBD, 0xCE, 0x6D, 0x91, 0xFB, 0xC8, 0xD0, 0xF3, 0xE6, 0xFC, 0xB1, 0xFB, 0x29, 0x0F, 0xAA, + 0xBD, 0xCE, 0x6D, 0x91, 0xFB, 0xC8, 0xD0, 0xF3, 0xE6, 0xFC, 0xB1, 0xFB, 0x29, 0x0F, 0xAA, 0xBD, + 0xCE, 0x6D, 0x91, 0xFB, 0xC8, 0xD0, 0xF3, 0xE6, 0xFC, 0xB1, 0xFB, 0x29, 0x0F, 0xAA, 0xBD, 0xCE, + 0x6D, 0x91, 0xFB, 0xC8, 0xCC, 0x9E, 0x47, 0xD0, 0xF0, 0x4C, 0x99, 0x43, 0xA9, 0x00, 0x8D, 0xA3, + 0x47, 0xAD, 0xA3, 0x47, 0xC9, 0x04, 0xB0, 0x16, 0xA9, 0x00, 0x20, 0xCE, 0x44, 0xA9, 0xE6, 0x20, + 0x63, 0x2D, 0x20, 0xA3, 0x3E, 0x20, 0xA5, 0x45, 0xEE, 0xA3, 0x47, 0x4C, 0xE0, 0x2D, 0xA9, 0x00, + 0x8D, 0x11, 0xD0, 0x8D, 0x15, 0xD0, 0x60, 0xA9, 0x00, 0x8D, 0xA4, 0x47, 0x8D, 0xA5, 0x47, 0xAD, + 0xA5, 0x47, 0xC9, 0x00, 0xD0, 0x05, 0xAD, 0xA4, 0x47, 0xC9, 0x04, 0xB0, 0x1D, 0x20, 0xA5, 0x45, + 0xA9, 0xA2, 0x20, 0x2F, 0x84, 0xA9, 0xA1, 0x20, 0x2F, 0x84, 0xA9, 0xA0, 0x20, 0x2F, 0x84, 0xEE, + 0xA4, 0x47, 0xD0, 0xDB, 0xEE, 0xA5, 0x47, 0x4C, 0x0E, 0x2E, 0x60, 0xA9, 0x00, 0x8D, 0xB5, 0x47, + 0x8D, 0xB6, 0x47, 0x8D, 0xBE, 0x47, 0x8D, 0xBF, 0x47, 0x8D, 0xC3, 0x47, 0x8D, 0xC4, 0x47, 0x8D, + 0xC5, 0x47, 0x8D, 0xC6, 0x47, 0x8D, 0xC7, 0x47, 0xAD, 0x11, 0xD0, 0x8D, 0x16, 0x46, 0xAD, 0x16, + 0xD0, 0x8D, 0x17, 0x46, 0xAD, 0x18, 0xD0, 0x8D, 0x18, 0x46, 0xAD, 0x20, 0xD0, 0x8D, 0x19, 0x46, + 0xAD, 0x21, 0xD0, 0x8D, 0x1A, 0x46, 0xAD, 0x88, 0x02, 0x8D, 0x1B, 0x46, 0xAD, 0x00, 0xDD, 0x8D, + 0x1C, 0x46, 0xAD, 0x11, 0xD0, 0x8D, 0xBB, 0x47, 0xA9, 0x80, 0x8D, 0x91, 0x02, 0xA9, 0x00, 0x8D, + 0x11, 0xD0, 0x8D, 0x20, 0xD0, 0xAA, 0x8D, 0x21, 0xD0, 0x20, 0x8E, 0x40, 0x8D, 0x3C, 0x7A, 0xC9, + 0x02, 0xD0, 0x05, 0xA9, 0x01, 0x4C, 0xA9, 0x2E, 0xA9, 0x00, 0x8D, 0x3C, 0x7A, 0xA0, 0x3F, 0xB9, + 0xAE, 0x6A, 0x99, 0x5C, 0x46, 0x88, 0x10, 0xF7, 0x20, 0xAC, 0x7C, 0x20, 0xAC, 0x7C, 0x20, 0x05, + 0x7B, 0xA9, 0x00, 0x8D, 0xBB, 0x47, 0x4C, 0xCB, 0x2E, 0xEE, 0xBB, 0x47, 0xAD, 0xBB, 0x47, 0xC9, + 0x08, 0xB0, 0x0E, 0xAC, 0xBB, 0x47, 0xB9, 0x67, 0x6A, 0xAC, 0xBB, 0x47, 0xD9, 0x1C, 0x7A, 0xF0, + 0xE8, 0xA9, 0xFE, 0x8D, 0x1F, 0xD4, 0xAD, 0x1E, 0xD4, 0x8D, 0xBB, 0x47, 0xA9, 0x00, 0x8D, 0x1A, + 0x73, 0x8D, 0x1B, 0x73, 0xAD, 0xBB, 0x47, 0x29, 0x02, 0xF0, 0x05, 0xA9, 0x01, 0x8D, 0x1A, 0x73, + 0xAD, 0xBB, 0x47, 0x29, 0x04, 0xF0, 0x05, 0xA9, 0x01, 0x8D, 0x1B, 0x73, 0x20, 0xA0, 0x7E, 0xAD, + 0x00, 0xDD, 0x8D, 0xB4, 0x47, 0x29, 0xFC, 0x8D, 0x00, 0xDD, 0xA9, 0x9A, 0x8D, 0x18, 0xD0, 0xA9, + 0x80, 0x8D, 0xF8, 0xE7, 0xA9, 0x86, 0x8D, 0xF9, 0xE7, 0xA9, 0x82, 0x8D, 0xFA, 0xE7, 0xA9, 0x83, + 0x8D, 0xFB, 0xE7, 0xA9, 0x84, 0x8D, 0xFC, 0xE7, 0xA9, 0x81, 0x8D, 0xFD, 0xE7, 0xA9, 0x85, 0x8D, + 0xFE, 0xE7, 0x8D, 0xFF, 0xE7, 0xA2, 0xE8, 0xA9, 0x00, 0x20, 0xE4, 0x44, 0xA2, 0x48, 0x20, 0xE4, + 0x44, 0xA2, 0x08, 0x20, 0xC6, 0x43, 0xA9, 0x00, 0x8D, 0xBB, 0x47, 0xAD, 0xBB, 0x47, 0xC9, 0x08, + 0xB0, 0x47, 0x18, 0xA2, 0xE8, 0x18, 0x69, 0xD8, 0x90, 0x01, 0xE8, 0xE8, 0xE8, 0x85, 0x0A, 0x86, + 0x0B, 0xA9, 0x00, 0xA8, 0x91, 0x0A, 0xAD, 0xBB, 0x47, 0x18, 0xA2, 0xEC, 0x18, 0x69, 0xD8, 0x90, + 0x01, 0xE8, 0xE8, 0xE8, 0x85, 0x0A, 0x86, 0x0B, 0x98, 0x91, 0x0A, 0xAD, 0xBB, 0x47, 0x85, 0x04, + 0x18, 0xA2, 0xEA, 0x86, 0x05, 0xAD, 0xBB, 0x47, 0x85, 0x0A, 0x18, 0xA2, 0x48, 0x86, 0x0B, 0xB1, + 0x0A, 0x91, 0x04, 0xEE, 0xBB, 0x47, 0x4C, 0x5A, 0x2F, 0xA9, 0x44, 0x8D, 0x88, 0x02, 0xA9, 0x01, + 0x8D, 0x8B, 0x02, 0xA9, 0x04, 0x8D, 0x8C, 0x02, 0xA2, 0xE4, 0xA9, 0x00, 0x20, 0xE4, 0x44, 0xA9, + 0x20, 0x20, 0xE2, 0x44, 0xA2, 0x03, 0xA9, 0xE8, 0x20, 0x0A, 0x44, 0xA9, 0x0B, 0x8D, 0x20, 0xD0, + 0x20, 0x2F, 0x29, 0xA9, 0x00, 0x20, 0x7E, 0x0A, 0xA2, 0x00, 0x8A, 0x8D, 0x40, 0x7A, 0x20, 0xB8, + 0x3C, 0x20, 0xC6, 0x3E, 0x20, 0x32, 0x7B, 0x8D, 0x19, 0x73, 0xA0, 0x05, 0xA9, 0x00, 0x99, 0x56, + 0x46, 0x88, 0x10, 0xFA, 0xA9, 0x01, 0x8D, 0x56, 0x46, 0xAD, 0x19, 0x73, 0x29, 0x01, 0xF0, 0x05, + 0xA9, 0x01, 0x8D, 0x57, 0x46, 0xAD, 0x19, 0x73, 0x29, 0x08, 0xF0, 0x05, 0xA9, 0x01, 0x8D, 0x58, + 0x46, 0xAD, 0x19, 0x73, 0x29, 0x09, 0xC9, 0x09, 0xD0, 0x05, 0xA9, 0x01, 0x8D, 0x59, 0x46, 0xAD, + 0x19, 0x73, 0x29, 0x10, 0xF0, 0x05, 0xA9, 0x01, 0x8D, 0x5A, 0x46, 0xAD, 0x19, 0x73, 0x29, 0x20, + 0xF0, 0x05, 0xA9, 0x01, 0x8D, 0x5B, 0x46, 0x20, 0x12, 0x7D, 0xA2, 0x00, 0xAD, 0x43, 0x7A, 0x20, + 0xB2, 0x42, 0x20, 0x99, 0x42, 0x18, 0x69, 0x1C, 0x8D, 0xB1, 0x47, 0x8A, 0x69, 0x73, 0x8D, 0xB2, + 0x47, 0xA9, 0x00, 0x8D, 0xBD, 0x47, 0x4C, 0x6A, 0x30, 0x20, 0x9F, 0xFF, 0xEE, 0xBD, 0x47, 0xAD, + 0xBD, 0x47, 0xC9, 0xFE, 0xD0, 0x05, 0xA9, 0x00, 0x8D, 0xB5, 0x47, 0x20, 0xB1, 0x43, 0xAA, 0xF0, + 0xE8, 0x20, 0xDA, 0x42, 0x8D, 0xB3, 0x47, 0x4C, 0x7C, 0x30, 0x20, 0xDA, 0x42, 0x20, 0xB1, 0x43, + 0xAA, 0xD0, 0xF7, 0xAD, 0x3D, 0x7A, 0xF0, 0x03, 0x4C, 0x18, 0x31, 0xAD, 0xB3, 0x47, 0xC9, 0x43, + 0xD0, 0x40, 0xA9, 0x5C, 0xA2, 0x46, 0x20, 0xE4, 0x44, 0xAD, 0xB1, 0x47, 0xAE, 0xB2, 0x47, 0x20, + 0xE4, 0x44, 0xA2, 0x00, 0xA9, 0x40, 0x20, 0xC6, 0x43, 0x20, 0x3A, 0x43, 0xA9, 0xF3, 0xA0, 0x04, + 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xC2, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, + 0x91, 0x02, 0xA9, 0x07, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x06, 0x20, + 0x40, 0x08, 0xAD, 0xB3, 0x47, 0xC9, 0x56, 0xD0, 0x40, 0xAD, 0xB1, 0x47, 0xAE, 0xB2, 0x47, 0x20, + 0xE4, 0x44, 0xA9, 0x5C, 0xA2, 0x46, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xA9, 0x40, 0x20, 0xC6, 0x43, + 0x20, 0x3A, 0x43, 0xA9, 0xF2, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xB7, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x07, 0xA0, 0x01, 0x91, 0x02, 0xA9, + 0x00, 0x88, 0x91, 0x02, 0xA9, 0x06, 0x20, 0x40, 0x08, 0xAD, 0x3D, 0x7A, 0xF0, 0x03, 0x4C, 0x4E, + 0x3B, 0xAD, 0xC3, 0x47, 0xF0, 0x08, 0xA9, 0x00, 0x8D, 0xC3, 0x47, 0x20, 0xC7, 0x27, 0xAD, 0xB3, + 0x47, 0xC9, 0x30, 0xA2, 0x00, 0x90, 0x35, 0xAD, 0xB3, 0x47, 0xC9, 0x3A, 0xB0, 0x2E, 0xAD, 0x43, + 0x7A, 0x20, 0xE2, 0x44, 0xAD, 0xB3, 0x47, 0x38, 0xE9, 0x30, 0xB0, 0x02, 0xA2, 0xFF, 0x20, 0x5E, + 0x43, 0xD0, 0x03, 0x4C, 0x34, 0x34, 0xAD, 0xB3, 0x47, 0x38, 0xE9, 0x30, 0x8D, 0x43, 0x7A, 0x20, + 0x06, 0x2E, 0xA2, 0x00, 0xA9, 0x01, 0x8D, 0xC5, 0x47, 0x4C, 0x36, 0x34, 0xAD, 0xB3, 0x47, 0xC9, + 0x54, 0xD0, 0x23, 0x20, 0xBE, 0x84, 0xAD, 0x3E, 0x7A, 0xD0, 0x0D, 0xA9, 0x01, 0x8D, 0x3E, 0x7A, + 0xA2, 0x00, 0x8D, 0x44, 0x7A, 0x4C, 0x36, 0x34, 0xA9, 0x00, 0x8D, 0x3E, 0x7A, 0xAA, 0xA9, 0x01, + 0x8D, 0x44, 0x7A, 0x4C, 0x36, 0x34, 0xAD, 0xB3, 0x47, 0xC9, 0x58, 0xD0, 0x0C, 0x20, 0xDB, 0x2D, + 0x20, 0x72, 0x7D, 0x20, 0xE2, 0xFC, 0x4C, 0x34, 0x34, 0xAD, 0x3E, 0x7A, 0xF0, 0x03, 0x4C, 0xBE, + 0x32, 0xAD, 0xB3, 0x47, 0xC9, 0x9D, 0xF0, 0x03, 0x4C, 0xBE, 0x32, 0xAD, 0x40, 0x7A, 0xC9, 0x0A, + 0xD0, 0x53, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xA0, 0x0A, 0xB1, 0x0A, + 0x8D, 0xBC, 0x47, 0x8E, 0xBB, 0x47, 0xAD, 0xBB, 0x47, 0xC9, 0x06, 0x90, 0x03, 0x4C, 0x36, 0x34, + 0xAD, 0xBC, 0x47, 0xD0, 0x0C, 0xAD, 0x78, 0x6A, 0x38, 0xE9, 0x01, 0x8D, 0xBC, 0x47, 0x4C, 0xF3, + 0x31, 0xCE, 0xBC, 0x47, 0xAC, 0xBC, 0x47, 0xB9, 0x56, 0x46, 0xF0, 0x13, 0xAD, 0xB1, 0x47, 0xAE, + 0xB2, 0x47, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xAD, 0xBC, 0x47, 0xA0, 0x0A, 0x4C, 0xB8, 0x32, 0xEE, + 0xBB, 0x47, 0x4C, 0xD5, 0x31, 0x8E, 0x3F, 0x7A, 0xAD, 0x40, 0x7A, 0xF0, 0x04, 0xC9, 0x08, 0xD0, + 0x05, 0xA9, 0x01, 0x8D, 0x3F, 0x7A, 0xAD, 0x40, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x6D, 0xB1, 0x47, + 0x8D, 0xC1, 0x47, 0x8A, 0x6D, 0xB2, 0x47, 0x8D, 0xC2, 0x47, 0xAC, 0x40, 0x7A, 0xB9, 0x6E, 0x6A, + 0xC9, 0x0F, 0xB0, 0x2A, 0xAD, 0xC2, 0x47, 0x85, 0x0B, 0xAD, 0xC1, 0x47, 0x85, 0x0A, 0xA0, 0x00, + 0xB1, 0x0A, 0xD0, 0x2A, 0xAD, 0xC2, 0x47, 0x85, 0x0B, 0xAD, 0xC1, 0x47, 0x85, 0x0A, 0xAC, 0x40, + 0x7A, 0xB9, 0x6E, 0x6A, 0x38, 0xE9, 0x01, 0xA0, 0x00, 0x91, 0x0A, 0x4C, 0x94, 0x32, 0xAD, 0xC2, + 0x47, 0x85, 0x0B, 0xAD, 0xC1, 0x47, 0x85, 0x0A, 0xA0, 0x00, 0xB1, 0x0A, 0xF0, 0x17, 0xAD, 0xC1, + 0x47, 0xAE, 0xC2, 0x47, 0x20, 0xE4, 0x44, 0x85, 0x0A, 0x86, 0x0B, 0xA0, 0x00, 0xB1, 0x0A, 0x38, + 0xE9, 0x01, 0x20, 0x1A, 0x45, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xA2, + 0x00, 0xA1, 0x0A, 0xC9, 0x03, 0xF0, 0x03, 0x4C, 0x36, 0x34, 0xAD, 0xB1, 0x47, 0xAE, 0xB2, 0x47, + 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xA9, 0x02, 0xA0, 0x00, 0x20, 0x1A, 0x45, 0x4C, 0x36, 0x34, 0xAD, + 0x3E, 0x7A, 0xF0, 0x03, 0x4C, 0xF3, 0x33, 0xAD, 0xB3, 0x47, 0xC9, 0x1D, 0xF0, 0x03, 0x4C, 0xF3, + 0x33, 0xAD, 0x40, 0x7A, 0xC9, 0x0A, 0xD0, 0x53, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, + 0x85, 0x0A, 0xA0, 0x0A, 0xB1, 0x0A, 0x8D, 0xBC, 0x47, 0x8E, 0xBB, 0x47, 0xAD, 0xBB, 0x47, 0xC9, + 0x06, 0x90, 0x03, 0x4C, 0x36, 0x34, 0xEE, 0xBC, 0x47, 0xAD, 0xBC, 0x47, 0x20, 0xE2, 0x44, 0xAD, + 0x78, 0x6A, 0x20, 0x94, 0x45, 0x8D, 0xBC, 0x47, 0xAC, 0xBC, 0x47, 0xA2, 0x00, 0xB9, 0x56, 0x46, + 0xF0, 0x13, 0xAD, 0xB1, 0x47, 0xAE, 0xB2, 0x47, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xAD, 0xBC, 0x47, + 0xA0, 0x0A, 0x4C, 0xED, 0x33, 0xEE, 0xBB, 0x47, 0x4C, 0xEB, 0x32, 0x8E, 0x3F, 0x7A, 0xAD, 0x40, + 0x7A, 0xF0, 0x04, 0xC9, 0x08, 0xD0, 0x05, 0xA9, 0x01, 0x8D, 0x3F, 0x7A, 0xAD, 0x40, 0x7A, 0x10, + 0x01, 0xCA, 0x18, 0x6D, 0xB1, 0x47, 0x48, 0x8A, 0x6D, 0xB2, 0x47, 0xAA, 0x68, 0x8D, 0xC1, 0x47, + 0x8E, 0xC2, 0x47, 0x85, 0x04, 0x86, 0x05, 0x85, 0x0A, 0x86, 0x0B, 0xA0, 0x00, 0xB1, 0x0A, 0x18, + 0x69, 0x01, 0x91, 0x04, 0xAC, 0x40, 0x7A, 0xB9, 0x6E, 0x6A, 0xC9, 0x0F, 0xB0, 0x25, 0xAD, 0xC1, + 0x47, 0xAE, 0xC2, 0x47, 0x20, 0xE4, 0x44, 0x85, 0x0A, 0x86, 0x0B, 0xA2, 0x00, 0xA1, 0x0A, 0x20, + 0xE2, 0x44, 0xAC, 0x40, 0x7A, 0xB9, 0x6E, 0x6A, 0x20, 0x94, 0x45, 0xA0, 0x00, 0x20, 0x1A, 0x45, + 0x4C, 0xCE, 0x33, 0xAD, 0xC2, 0x47, 0x85, 0x0B, 0xAD, 0xC1, 0x47, 0x85, 0x0A, 0xA2, 0x00, 0xA1, + 0x0A, 0x20, 0xE2, 0x44, 0xAC, 0x40, 0x7A, 0xB9, 0x6E, 0x6A, 0x38, 0xE9, 0x01, 0xB0, 0x02, 0xA2, + 0xFF, 0x20, 0x5E, 0x43, 0x30, 0x19, 0xF0, 0x17, 0xAD, 0xC2, 0x47, 0x85, 0x0B, 0xAD, 0xC1, 0x47, + 0x85, 0x0A, 0xAC, 0x40, 0x7A, 0xB9, 0x6E, 0x6A, 0x38, 0xE9, 0x01, 0xA0, 0x00, 0x91, 0x0A, 0xAD, + 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xA2, 0x00, 0xA1, 0x0A, 0xC9, 0x03, 0xD0, + 0x56, 0xAD, 0xB1, 0x47, 0xAE, 0xB2, 0x47, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0x8A, 0xA8, 0x20, 0x1A, + 0x45, 0x4C, 0x36, 0x34, 0xAD, 0x3E, 0x7A, 0xD0, 0x20, 0xAD, 0xB3, 0x47, 0xC9, 0x11, 0xD0, 0x19, + 0xEE, 0x40, 0x7A, 0xAD, 0x40, 0x7A, 0x10, 0x01, 0xCA, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xA9, 0x14, + 0x20, 0x5F, 0x44, 0x8D, 0x40, 0x7A, 0x4C, 0x34, 0x34, 0xAD, 0x3E, 0x7A, 0xD0, 0x19, 0xAD, 0xB3, + 0x47, 0xC9, 0x91, 0xD0, 0x12, 0xAD, 0x40, 0x7A, 0xD0, 0x08, 0xA9, 0x13, 0x8D, 0x40, 0x7A, 0x4C, + 0x36, 0x34, 0xCE, 0x40, 0x7A, 0xA2, 0x00, 0xAD, 0x3E, 0x7A, 0xC9, 0x01, 0xF0, 0x03, 0x4C, 0x92, + 0x36, 0xAD, 0xB3, 0x47, 0xC9, 0x9D, 0xF0, 0x03, 0x4C, 0x92, 0x36, 0xAD, 0x41, 0x7A, 0xC9, 0x0D, + 0xF0, 0x03, 0x4C, 0xE5, 0x34, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xA0, + 0x22, 0xB1, 0x0A, 0xF0, 0x49, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0x88, + 0xB1, 0x0A, 0xC9, 0xFF, 0xB0, 0x15, 0xAD, 0xB1, 0x47, 0xAE, 0xB2, 0x47, 0x85, 0x0C, 0x86, 0x0D, + 0x85, 0x0A, 0x86, 0x0B, 0xB1, 0x0A, 0x18, 0x69, 0x01, 0x91, 0x0C, 0xAD, 0xB2, 0x47, 0x85, 0x0B, + 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xB1, 0x0A, 0xF0, 0x03, 0x4C, 0xF2, 0x3A, 0xAD, 0xB2, 0x47, 0x85, + 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xA9, 0x00, 0xC8, 0x91, 0x0A, 0x4C, 0xF2, 0x3A, 0xAD, 0xB2, + 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0x88, 0xB1, 0x0A, 0xF0, 0x09, 0xAD, 0xB1, 0x47, + 0xAE, 0xB2, 0x47, 0x4C, 0x80, 0x36, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, + 0xA9, 0x01, 0x91, 0x0A, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xA9, 0x01, + 0xC8, 0x91, 0x0A, 0x4C, 0xF2, 0x3A, 0xAD, 0x41, 0x7A, 0x10, 0x02, 0xA2, 0xFF, 0x18, 0x69, 0x14, + 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, 0x6A, 0x85, 0x0B, 0xA0, 0x6E, 0xB1, 0x0A, 0xC9, + 0x02, 0xD0, 0x49, 0xA2, 0x00, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, + 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x48, 0x8A, 0x6D, 0xB2, 0x47, 0xAA, 0x68, 0x20, 0xE4, 0x44, 0xA9, + 0x01, 0x20, 0xE2, 0x44, 0xAD, 0x41, 0x7A, 0x10, 0x02, 0xA2, 0xFF, 0x18, 0x69, 0x14, 0x90, 0x02, + 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0xA2, 0x00, 0xA1, + 0x0A, 0x20, 0x30, 0x45, 0xA0, 0x00, 0x20, 0x1A, 0x45, 0x4C, 0xF2, 0x3A, 0xAD, 0x41, 0x7A, 0xC9, + 0x05, 0xF0, 0x09, 0xC9, 0x08, 0xF0, 0x05, 0xA2, 0x00, 0x4C, 0xA0, 0x35, 0xA2, 0x00, 0xAD, 0x41, + 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x85, 0x0A, + 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0xA0, 0x00, 0xB1, 0x0A, 0xF0, 0x05, 0xA2, 0x00, 0x4C, 0xA0, + 0x35, 0xAA, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, + 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0xA9, 0x59, 0x91, 0x0A, 0x4C, 0xF2, + 0x3A, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, + 0x18, 0x69, 0x6A, 0x85, 0x0B, 0xA0, 0x6E, 0xA2, 0x00, 0xB1, 0x0A, 0xC9, 0x0F, 0x90, 0x03, 0x4C, + 0x46, 0x36, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, + 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0xA0, 0x00, 0xA2, 0x00, 0xB1, 0x0A, + 0xD0, 0x3C, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, + 0xB1, 0x47, 0x85, 0x0C, 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0D, 0xA2, 0x00, 0xAD, 0x41, 0x7A, 0x10, + 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, 0x6A, 0x85, 0x0B, + 0xA0, 0x6E, 0xB1, 0x0A, 0x38, 0xE9, 0x01, 0xA0, 0x00, 0x91, 0x0C, 0x4C, 0xF2, 0x3A, 0xAD, 0x41, + 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x48, 0x8A, + 0x6D, 0xB2, 0x47, 0xAA, 0x68, 0x85, 0x0C, 0x86, 0x0D, 0x85, 0x0A, 0x86, 0x0B, 0xB1, 0x0A, 0x38, + 0xE9, 0x01, 0x91, 0x0C, 0x4C, 0xF2, 0x3A, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, + 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0xA0, + 0x00, 0xB1, 0x0A, 0xD0, 0x03, 0x4C, 0xF2, 0x3A, 0xA2, 0x00, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, + 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x48, 0x8A, 0x6D, 0xB2, 0x47, 0xAA, + 0x68, 0x85, 0x0C, 0x86, 0x0D, 0x85, 0x0A, 0x86, 0x0B, 0xB1, 0x0A, 0x38, 0xE9, 0x01, 0x91, 0x0C, + 0x4C, 0xF2, 0x3A, 0xAD, 0x3E, 0x7A, 0xC9, 0x01, 0xF0, 0x03, 0x4C, 0x3C, 0x39, 0xAD, 0xB3, 0x47, + 0xC9, 0x1D, 0xF0, 0x03, 0x4C, 0x3C, 0x39, 0xAD, 0x41, 0x7A, 0xC9, 0x0D, 0xF0, 0x03, 0x4C, 0x5A, + 0x37, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xA0, 0x22, 0xB1, 0x0A, 0xD0, + 0x53, 0xAD, 0xB1, 0x47, 0xAE, 0xB2, 0x47, 0x85, 0x04, 0x86, 0x05, 0x85, 0x0A, 0x86, 0x0B, 0x88, + 0xB1, 0x0A, 0x18, 0x69, 0x01, 0x91, 0x04, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, + 0x0A, 0xB1, 0x0A, 0x20, 0xE2, 0x44, 0xAD, 0x8F, 0x6A, 0x38, 0xE9, 0x01, 0xB0, 0x02, 0xA2, 0xFF, + 0x20, 0x5E, 0x43, 0x10, 0x03, 0x4C, 0xF2, 0x3A, 0xD0, 0x03, 0x4C, 0xF2, 0x3A, 0xAD, 0xB2, 0x47, + 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xAD, 0x8F, 0x6A, 0x38, 0xE9, 0x01, 0xA0, 0x21, 0x91, + 0x0A, 0x4C, 0xF2, 0x3A, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0x88, 0xB1, + 0x0A, 0xF0, 0x18, 0xAD, 0xB1, 0x47, 0xAE, 0xB2, 0x47, 0x85, 0x0C, 0x86, 0x0D, 0x85, 0x0A, 0x86, + 0x0B, 0xB1, 0x0A, 0x38, 0xE9, 0x01, 0x91, 0x0C, 0x4C, 0xF2, 0x3A, 0xAD, 0xB2, 0x47, 0x85, 0x0B, + 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0xA9, 0x01, 0x91, 0x0A, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, + 0x47, 0x85, 0x0A, 0xA9, 0x00, 0xC8, 0x91, 0x0A, 0x4C, 0xF2, 0x3A, 0xAD, 0x41, 0x7A, 0x10, 0x02, + 0xA2, 0xFF, 0x18, 0x69, 0x14, 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, 0x6A, 0x85, 0x0B, + 0xA0, 0x6E, 0xB1, 0x0A, 0xC9, 0x02, 0xD0, 0x49, 0xA2, 0x00, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, + 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x48, 0x8A, 0x6D, 0xB2, 0x47, 0xAA, + 0x68, 0x20, 0xE4, 0x44, 0xA9, 0x01, 0x20, 0xE2, 0x44, 0xAD, 0x41, 0x7A, 0x10, 0x02, 0xA2, 0xFF, + 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0x6D, 0xB2, 0x47, + 0x85, 0x0B, 0xA2, 0x00, 0xA1, 0x0A, 0x20, 0x30, 0x45, 0xA0, 0x00, 0x20, 0x1A, 0x45, 0x4C, 0xF2, + 0x3A, 0xAD, 0x41, 0x7A, 0xC9, 0x05, 0xF0, 0x04, 0xC9, 0x08, 0xD0, 0x42, 0xA2, 0x00, 0xAD, 0x41, + 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x85, 0x0A, + 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0xA0, 0x00, 0xB1, 0x0A, 0xC9, 0x59, 0xD0, 0x20, 0xA2, 0x00, + 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, + 0x85, 0x0A, 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0x98, 0x91, 0x0A, 0x4C, 0xF2, 0x3A, 0xAD, 0x41, + 0x7A, 0xF0, 0x09, 0xC9, 0x0B, 0xF0, 0x05, 0xA2, 0x00, 0x4C, 0x89, 0x38, 0xA2, 0x00, 0xAD, 0x41, + 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x85, 0x0A, + 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0xA2, 0x00, 0xA1, 0x0A, 0x20, 0xE2, 0x44, 0xAD, 0x41, 0x7A, + 0x10, 0x02, 0xA2, 0xFF, 0x18, 0x69, 0x14, 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, 0x6A, + 0x85, 0x0B, 0xA0, 0x6E, 0xA2, 0x00, 0xB1, 0x0A, 0x38, 0xE9, 0x01, 0xB0, 0x01, 0xCA, 0x20, 0x5E, + 0x43, 0xF0, 0x05, 0xA2, 0x00, 0x4C, 0x89, 0x38, 0xA2, 0x00, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, + 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0x6D, 0xB2, 0x47, + 0x85, 0x0B, 0xA9, 0x00, 0xA8, 0x91, 0x0A, 0x4C, 0xF2, 0x3A, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, + 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, 0x47, 0x48, 0x8A, 0x6D, 0xB2, 0x47, 0xAA, + 0x68, 0x85, 0x04, 0x86, 0x05, 0x85, 0x0A, 0x86, 0x0B, 0xA0, 0x00, 0xB1, 0x0A, 0x18, 0x69, 0x01, + 0x91, 0x04, 0xA2, 0x00, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, + 0x18, 0x6D, 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0B, 0xB1, 0x0A, 0x20, 0xE2, + 0x44, 0xAD, 0x41, 0x7A, 0x10, 0x02, 0xA2, 0xFF, 0x18, 0x69, 0x14, 0x90, 0x01, 0xE8, 0x85, 0x0A, + 0x8A, 0x18, 0x69, 0x6A, 0x85, 0x0B, 0xA0, 0x6E, 0xA2, 0x00, 0xB1, 0x0A, 0x38, 0xE9, 0x01, 0xB0, + 0x01, 0xCA, 0x20, 0x5E, 0x43, 0x10, 0x03, 0x4C, 0xF2, 0x3A, 0xD0, 0x03, 0x4C, 0xF2, 0x3A, 0xA2, + 0x00, 0xAD, 0x41, 0x7A, 0x10, 0x01, 0xCA, 0x18, 0x69, 0x14, 0x90, 0x02, 0xE8, 0x18, 0x6D, 0xB1, + 0x47, 0x85, 0x0C, 0x8A, 0x6D, 0xB2, 0x47, 0x85, 0x0D, 0xA2, 0x00, 0xAD, 0x41, 0x7A, 0x10, 0x01, + 0xCA, 0x18, 0x69, 0x14, 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, 0x6A, 0x85, 0x0B, 0xA0, + 0x6E, 0xB1, 0x0A, 0x38, 0xE9, 0x01, 0xA0, 0x00, 0x91, 0x0C, 0x4C, 0xF2, 0x3A, 0xAD, 0x3E, 0x7A, + 0xC9, 0x01, 0xD0, 0x2D, 0xAD, 0xB3, 0x47, 0xC9, 0x11, 0xD0, 0x26, 0xEE, 0x41, 0x7A, 0xAD, 0x41, + 0x7A, 0xC9, 0x0E, 0xD0, 0x05, 0xA9, 0x0F, 0x8D, 0x41, 0x7A, 0xAD, 0x41, 0x7A, 0x10, 0x02, 0xA2, + 0xFF, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xA9, 0x10, 0x20, 0x5F, 0x44, 0x8D, 0x41, 0x7A, 0x4C, 0xF2, + 0x3A, 0xAD, 0x3E, 0x7A, 0xC9, 0x01, 0xD0, 0x29, 0xAD, 0xB3, 0x47, 0xC9, 0x91, 0xD0, 0x22, 0xAD, + 0x41, 0x7A, 0xD0, 0x08, 0xA9, 0x0F, 0x8D, 0x41, 0x7A, 0x4C, 0x8E, 0x39, 0xCE, 0x41, 0x7A, 0xAD, + 0x41, 0x7A, 0xC9, 0x0E, 0xF0, 0x03, 0x4C, 0xF2, 0x3A, 0xA9, 0x0D, 0x8D, 0x41, 0x7A, 0x4C, 0xF2, + 0x3A, 0xAD, 0xB3, 0x47, 0xC9, 0x50, 0xD0, 0x49, 0xAD, 0xC4, 0x47, 0xD0, 0x22, 0x20, 0x33, 0x40, + 0xA9, 0x01, 0x8D, 0xC4, 0x47, 0x20, 0x3A, 0x43, 0xA9, 0xF3, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, + 0x02, 0x91, 0x02, 0xA9, 0xCC, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x4C, 0xE0, 0x3A, 0x20, + 0x41, 0x40, 0xA9, 0x00, 0x8D, 0xC4, 0x47, 0x20, 0x3A, 0x43, 0xA9, 0xF3, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xD1, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x4C, 0xE0, + 0x3A, 0xAD, 0xB3, 0x47, 0xC9, 0x88, 0xD0, 0x19, 0x20, 0xE3, 0x84, 0x20, 0xEA, 0x3E, 0x20, 0xA5, + 0x45, 0xA9, 0x01, 0x8D, 0x3D, 0x7A, 0xA9, 0x00, 0x8D, 0xB3, 0x47, 0x20, 0xA2, 0x2A, 0x4C, 0x4E, + 0x3B, 0xAD, 0xB3, 0x47, 0xC9, 0x85, 0xD0, 0x1E, 0xA9, 0x00, 0x8D, 0xC4, 0x47, 0x20, 0xE3, 0x84, + 0x20, 0xEA, 0x3E, 0x20, 0xA5, 0x45, 0xA9, 0x02, 0x8D, 0x3D, 0x7A, 0xA9, 0x00, 0x8D, 0xB3, 0x47, + 0x20, 0xDA, 0x7E, 0x4C, 0x4E, 0x3B, 0xAD, 0xB3, 0x47, 0xC9, 0x53, 0xD0, 0x3E, 0x20, 0x4C, 0x7C, + 0xA0, 0x4F, 0xA9, 0x00, 0x99, 0x20, 0xDB, 0x88, 0x10, 0xFA, 0x20, 0x3A, 0x43, 0xA9, 0x06, 0xA0, + 0x05, 0x91, 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0x1A, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x70, 0x91, 0x02, 0xA9, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x28, + 0x20, 0x9D, 0x08, 0xA9, 0x01, 0x8D, 0xC3, 0x47, 0x4C, 0xF2, 0x3A, 0xAD, 0xB3, 0x47, 0xC9, 0x4C, + 0xD0, 0x3E, 0x20, 0xAC, 0x7C, 0xA0, 0x4F, 0xA9, 0x00, 0x99, 0x20, 0xDB, 0x88, 0x10, 0xFA, 0x20, + 0x3A, 0x43, 0xA9, 0x06, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x14, 0x88, 0x91, 0x02, 0xA9, 0xFC, 0xA0, + 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6F, 0x91, 0x02, 0xA9, 0x0A, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, + 0x88, 0x91, 0x02, 0xA9, 0x28, 0x20, 0x9D, 0x08, 0xA9, 0x01, 0x8D, 0xC3, 0x47, 0x4C, 0xF2, 0x3A, + 0xAD, 0xB3, 0x47, 0xC9, 0x8C, 0xD0, 0x2C, 0x20, 0x21, 0x7C, 0x20, 0x3A, 0x43, 0xA9, 0xF0, 0xA0, + 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x80, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x72, 0x91, 0x02, 0xA9, 0x07, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x06, + 0x20, 0x40, 0x08, 0xAD, 0x19, 0x73, 0x29, 0x20, 0xD0, 0x10, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, + 0xB1, 0x47, 0x85, 0x0A, 0xA9, 0x00, 0xA0, 0x10, 0x91, 0x0A, 0xAD, 0x19, 0x73, 0xA2, 0x00, 0x29, + 0x10, 0xD0, 0x1D, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0xA0, 0x1F, + 0x91, 0x0A, 0xAD, 0xB2, 0x47, 0x85, 0x0B, 0xAD, 0xB1, 0x47, 0x85, 0x0A, 0x8A, 0xC8, 0x91, 0x0A, + 0xAD, 0x3E, 0x7A, 0xD0, 0x0C, 0x20, 0xC6, 0x3E, 0xAD, 0x40, 0x7A, 0x20, 0x7E, 0x0A, 0x4C, 0x49, + 0x3B, 0x20, 0xD8, 0x3E, 0xAD, 0x41, 0x7A, 0x20, 0xD7, 0x1B, 0xA9, 0x00, 0x8D, 0x44, 0x7A, 0xAD, + 0x3D, 0x7A, 0xC9, 0x01, 0xD0, 0x6A, 0xAD, 0xB3, 0x47, 0xC9, 0x85, 0xD0, 0x19, 0xA9, 0x02, 0x8D, + 0x3D, 0x7A, 0xA9, 0x00, 0x8D, 0xB3, 0x47, 0x20, 0xE3, 0x84, 0x20, 0xEA, 0x3E, 0x20, 0xA5, 0x45, + 0x20, 0xDA, 0x7E, 0x4C, 0xBF, 0x3B, 0xAD, 0xB3, 0x47, 0xC9, 0x88, 0xD0, 0x23, 0xA9, 0x00, 0x8D, + 0x3D, 0x7A, 0x20, 0xE3, 0x84, 0xA2, 0x00, 0xAD, 0x3E, 0x7A, 0xD0, 0x06, 0x20, 0xC6, 0x3E, 0x4C, + 0x94, 0x3B, 0x20, 0xD8, 0x3E, 0xA9, 0x00, 0x8D, 0xB3, 0x47, 0x20, 0x2F, 0x29, 0x4C, 0x82, 0x30, + 0xAD, 0xB3, 0x47, 0xC9, 0x41, 0x90, 0x19, 0xC9, 0x52, 0xB0, 0x15, 0x20, 0x72, 0x7D, 0xA2, 0x00, + 0x8A, 0x8D, 0x3D, 0x7A, 0x20, 0xC2, 0x3D, 0xAD, 0xB3, 0x47, 0x38, 0xE9, 0x41, 0x20, 0x88, 0x7D, + 0xAD, 0x3D, 0x7A, 0xC9, 0x02, 0xD0, 0x24, 0xA2, 0x00, 0xAD, 0xB3, 0x47, 0xC9, 0x50, 0xD0, 0x1B, + 0xAD, 0xC4, 0x47, 0xD0, 0x0B, 0x20, 0x33, 0x40, 0xA9, 0x01, 0x8D, 0xC4, 0x47, 0x4C, 0x1E, 0x3C, + 0x20, 0x41, 0x40, 0xA9, 0x00, 0x8D, 0xC4, 0x47, 0x4C, 0x1C, 0x3C, 0xAD, 0x3D, 0x7A, 0xC9, 0x02, + 0xD0, 0x2B, 0xAD, 0xB3, 0x47, 0xF0, 0x26, 0xA9, 0x00, 0x8D, 0x3D, 0x7A, 0x20, 0xE3, 0x84, 0xA2, + 0x00, 0xAD, 0x3E, 0x7A, 0xD0, 0x06, 0x20, 0xC6, 0x3E, 0x4C, 0x0E, 0x3C, 0x20, 0xD8, 0x3E, 0x20, + 0xA5, 0x45, 0xA9, 0x00, 0x8D, 0xB3, 0x47, 0x20, 0x2F, 0x29, 0x4C, 0x82, 0x30, 0xA9, 0x01, 0x8D, + 0xBD, 0x47, 0xAD, 0xB3, 0x47, 0xCD, 0xB5, 0x47, 0xF0, 0x0D, 0xA9, 0x08, 0x8D, 0xBD, 0x47, 0xA9, + 0x00, 0x8D, 0xB6, 0x47, 0x4C, 0x4A, 0x3C, 0xAD, 0xB6, 0x47, 0xC9, 0x0B, 0x90, 0x08, 0xA9, 0x00, + 0x8D, 0xBD, 0x47, 0x4C, 0x4A, 0x3C, 0xEE, 0xB6, 0x47, 0xA9, 0x00, 0x8D, 0xBC, 0x47, 0xAD, 0xBC, + 0x47, 0xCD, 0xBD, 0x47, 0xB0, 0x1E, 0xA9, 0x00, 0x8D, 0xBB, 0x47, 0xAD, 0xBB, 0x47, 0xC9, 0xFF, + 0xB0, 0x0C, 0xAD, 0x00, 0xC0, 0x8D, 0x00, 0xC0, 0xEE, 0xBB, 0x47, 0x4C, 0x5A, 0x3C, 0xEE, 0xBC, + 0x47, 0x4C, 0x4D, 0x3C, 0xAD, 0xB3, 0x47, 0x8D, 0xB5, 0x47, 0xAD, 0x3D, 0x7A, 0xF0, 0x03, 0x4C, + 0x39, 0x30, 0xAD, 0xB3, 0x47, 0xC9, 0x1D, 0xD0, 0x03, 0x4C, 0x36, 0x30, 0xC9, 0x9D, 0xD0, 0x03, + 0x4C, 0x36, 0x30, 0xC9, 0x4C, 0xD0, 0x03, 0x4C, 0x36, 0x30, 0xC9, 0x8C, 0xD0, 0x03, 0x4C, 0x36, + 0x30, 0xC9, 0x56, 0xD0, 0x03, 0x4C, 0x36, 0x30, 0xC9, 0x30, 0xB0, 0x03, 0x4C, 0x39, 0x30, 0xC9, + 0x3A, 0x90, 0x03, 0x4C, 0x39, 0x30, 0x4C, 0x36, 0x30, 0x20, 0x8E, 0x40, 0xC9, 0x02, 0xD0, 0x10, + 0xA2, 0x1D, 0xBD, 0x3C, 0x3E, 0x9D, 0xEF, 0x3D, 0xCA, 0xD0, 0xF7, 0xA9, 0x01, 0x8D, 0xEE, 0x3D, + 0x78, 0x20, 0x41, 0x40, 0xAD, 0x14, 0x03, 0x8D, 0x40, 0x3F, 0xAD, 0x15, 0x03, 0x8D, 0x41, 0x3F, + 0xA9, 0x42, 0x8D, 0x14, 0x03, 0xA9, 0x3F, 0x8D, 0x15, 0x03, 0xAD, 0x1A, 0xD0, 0x09, 0x01, 0x8D, + 0x1A, 0xD0, 0xA9, 0x55, 0x8D, 0x12, 0xD0, 0xAD, 0x11, 0xD0, 0x29, 0x7F, 0x8D, 0x11, 0xD0, 0xA9, + 0x3F, 0x8D, 0x0D, 0xDC, 0xAD, 0x0D, 0xDC, 0xA9, 0x3F, 0x8D, 0x0D, 0xDD, 0xAD, 0x0D, 0xDD, 0xA9, + 0x01, 0x8D, 0x19, 0xD0, 0xA2, 0x00, 0xBD, 0xAF, 0x40, 0x9D, 0x00, 0xE0, 0xBD, 0xAF, 0x41, 0x9D, + 0x00, 0xE1, 0xBD, 0xAF, 0x42, 0x9D, 0x00, 0xE2, 0xE8, 0xD0, 0xEB, 0xA9, 0x3F, 0x8D, 0x15, 0xD0, + 0xA9, 0x00, 0x8D, 0x17, 0xD0, 0xA9, 0x00, 0x8D, 0x1D, 0xD0, 0xA9, 0xFF, 0x8D, 0x10, 0xD0, 0xA9, + 0x00, 0x8D, 0x1B, 0xD0, 0xA9, 0x00, 0x8D, 0x1C, 0xD0, 0xA9, 0x05, 0x8D, 0x27, 0xD0, 0x8D, 0x2C, + 0xD0, 0xA9, 0x23, 0x8D, 0x00, 0xD0, 0xA9, 0x39, 0x8D, 0x01, 0xD0, 0xA9, 0x3B, 0x8D, 0x0A, 0xD0, + 0xA9, 0x39, 0x8D, 0x0B, 0xD0, 0xA9, 0x23, 0x8D, 0x00, 0xD0, 0xA9, 0x39, 0x8D, 0x01, 0xD0, 0xA9, + 0x2A, 0x8D, 0x04, 0xD0, 0xA9, 0x45, 0x8D, 0x05, 0xD0, 0xA9, 0x42, 0x8D, 0x06, 0xD0, 0xA9, 0x45, + 0x8D, 0x07, 0xD0, 0xA9, 0x25, 0x8D, 0x08, 0xD0, 0xA9, 0x39, 0x8D, 0x09, 0xD0, 0xA9, 0x3A, 0x8D, + 0x03, 0xD0, 0x8D, 0x0D, 0xD0, 0x8D, 0x0F, 0xD0, 0xA9, 0x44, 0x8D, 0x0E, 0xD0, 0x8D, 0x02, 0xD0, + 0xA9, 0x4D, 0x8D, 0x0C, 0xD0, 0xA9, 0x06, 0x8D, 0x29, 0xD0, 0x8D, 0x2A, 0xD0, 0xA9, 0x01, 0x8D, + 0x2B, 0xD0, 0xA9, 0x00, 0x8D, 0x28, 0xD0, 0xA9, 0x03, 0x8D, 0x2E, 0xD0, 0xA9, 0x0D, 0x8D, 0x2D, + 0xD0, 0x58, 0x60, 0x78, 0xAD, 0x40, 0x3F, 0x8D, 0x14, 0x03, 0xAD, 0x41, 0x3F, 0x8D, 0x15, 0x03, + 0xAD, 0x1A, 0xD0, 0x29, 0xFE, 0x8D, 0x1A, 0xD0, 0xA9, 0x1F, 0x8D, 0x11, 0xD0, 0x20, 0x84, 0xFF, + 0x58, 0x60, 0x8D, 0xEB, 0x3D, 0xAD, 0x0D, 0xDD, 0xEE, 0x21, 0xD0, 0xA9, 0x00, 0x40, 0x00, 0x00, + 0x00, 0x0E, 0x1C, 0x2A, 0x30, 0x55, 0x89, 0xBE, 0xD3, 0xEB, 0xFC, 0x02, 0x11, 0x26, 0x00, 0x00, + 0x1F, 0x1F, 0x1F, 0x1F, 0x1B, 0x18, 0x1D, 0x18, 0x1A, 0x9A, 0x9A, 0x9A, 0x9A, 0x0C, 0x0F, 0x0F, + 0x0C, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x0C, 0xFF, 0x0C, 0x0F, 0x0F, 0x0C, 0x0B, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x0C, 0xFF, 0x0E, 0x03, 0x03, 0x0E, 0x06, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x06, 0x0E, 0xFF, 0x00, 0x01, 0x05, 0x06, 0x07, 0x09, 0xFF, 0x0E, 0x21, + 0x2B, 0x2F, 0x55, 0x89, 0xBE, 0xD3, 0xEB, 0xFB, 0xFF, 0x00, 0x26, 0x00, 0x00, 0x1F, 0x1F, 0x1F, + 0x1F, 0x1B, 0x18, 0x1D, 0x18, 0x1A, 0x1A, 0x1A, 0x1A, 0x9A, 0x0C, 0x53, 0x89, 0xBE, 0xD3, 0xEB, + 0x1B, 0x18, 0x1D, 0x18, 0x1A, 0x53, 0x89, 0xBE, 0xD3, 0xEB, 0x1B, 0x18, 0x1D, 0x18, 0x1A, 0x53, + 0x89, 0xBE, 0xD3, 0xEB, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x0F, 0x09, 0x0E, 0x02, 0x0B, 0x00, + 0x0D, 0x09, 0x00, 0x02, 0x00, 0x0B, 0x05, 0x06, 0x0C, 0x00, 0x85, 0xFB, 0x18, 0xA9, 0x19, 0x65, + 0xFB, 0x85, 0xFB, 0xA9, 0x3E, 0x69, 0x00, 0x85, 0xFC, 0xA0, 0x0E, 0xB1, 0xFB, 0x99, 0x0B, 0x3E, + 0x88, 0xD0, 0xF8, 0x60, 0xA0, 0x0F, 0xB9, 0x0B, 0x3E, 0x29, 0x0F, 0xAA, 0xBD, 0x78, 0x3E, 0x99, + 0x0B, 0x3E, 0x88, 0xD0, 0xF1, 0xA0, 0x08, 0xB9, 0x26, 0xD0, 0x29, 0x0F, 0xAA, 0xBD, 0x78, 0x3E, + 0x99, 0x26, 0xD0, 0x88, 0xD0, 0xF1, 0x60, 0xA2, 0x05, 0xBD, 0x59, 0x3E, 0x9D, 0xF3, 0x3D, 0xBD, + 0x5E, 0x3E, 0x9D, 0x02, 0x3E, 0xCA, 0xD0, 0xF1, 0x60, 0xA2, 0x05, 0xBD, 0x63, 0x3E, 0x9D, 0xF3, + 0x3D, 0xBD, 0x68, 0x3E, 0x9D, 0x02, 0x3E, 0xCA, 0xD0, 0xF1, 0x60, 0xA2, 0x05, 0xBD, 0x6D, 0x3E, + 0x9D, 0xF3, 0x3D, 0xBD, 0x72, 0x3E, 0x9D, 0x02, 0x3E, 0xCA, 0xD0, 0xF1, 0x60, 0x00, 0x0B, 0x00, + 0x0B, 0x0B, 0x05, 0x0B, 0x05, 0x05, 0x0C, 0x05, 0x0C, 0x0C, 0x0D, 0x0C, 0x0D, 0x0D, 0x0F, 0x0D, + 0x0F, 0x0F, 0x03, 0x0F, 0x03, 0x03, 0x07, 0x03, 0x07, 0x07, 0x01, 0x07, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x07, 0x01, 0x07, 0x01, 0x03, 0x07, 0x03, 0x07, 0x0F, 0x03, 0x0F, 0x03, 0x0D, 0x0F, 0x0D, + 0x0F, 0x0C, 0x0D, 0x0C, 0x0D, 0x05, 0x0C, 0x05, 0x0C, 0x0B, 0x05, 0x0B, 0x05, 0x00, 0x0B, 0x00, + 0x00, 0x00, 0x00, 0xAD, 0x19, 0xD0, 0x30, 0x07, 0xAD, 0x0D, 0xDC, 0x58, 0x4C, 0x31, 0xEA, 0xEA, + 0xA4, 0x9E, 0x24, 0x01, 0xA6, 0xA4, 0xE8, 0x8C, 0x20, 0xD0, 0xA5, 0x9F, 0x8D, 0x11, 0xD0, 0xA5, + 0xA5, 0x8D, 0x12, 0xD0, 0xA9, 0xFF, 0x8D, 0x19, 0xD0, 0xA5, 0xA6, 0x24, 0x01, 0x24, 0x01, 0x24, + 0x01, 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0xEA, + 0xEA, 0xE0, 0x0C, 0x30, 0x02, 0xA2, 0x00, 0x86, 0xA4, 0x8D, 0x20, 0xD0, 0x24, 0x01, 0x24, 0x01, + 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0x24, 0x01, 0xEA, 0xBD, 0xFE, 0x3D, + 0x85, 0x9F, 0xBD, 0x0C, 0x3E, 0x85, 0xA6, 0xBD, 0x0D, 0x3E, 0x85, 0x9E, 0xBD, 0xF0, 0x3D, 0x85, + 0xA5, 0xE0, 0x0A, 0xD0, 0x0D, 0xAE, 0xED, 0x3D, 0xE8, 0xE0, 0x06, 0xD0, 0x02, 0xA2, 0x00, 0x8E, + 0xED, 0x3D, 0x8C, 0x20, 0xD0, 0xA6, 0xA4, 0xE0, 0x07, 0xD0, 0x22, 0xAD, 0x3D, 0x7A, 0xD0, 0x1D, + 0xAE, 0x88, 0x3E, 0xE8, 0x8A, 0x29, 0x03, 0x8D, 0x88, 0x3E, 0xD0, 0x11, 0xA0, 0x07, 0xB9, 0xEF, + 0xDA, 0x29, 0x0F, 0xAA, 0xBD, 0x78, 0x3E, 0x99, 0xEF, 0xDA, 0x88, 0xD0, 0xF1, 0xAD, 0xEE, 0x3D, + 0xD0, 0x09, 0xA6, 0xA4, 0xE0, 0x07, 0xD0, 0x36, 0x4C, 0x04, 0x40, 0xAE, 0xED, 0x3D, 0xBD, 0x37, + 0x3E, 0xC5, 0xA4, 0xD0, 0x29, 0xAD, 0xEF, 0x3D, 0xF0, 0x24, 0x20, 0x03, 0x50, 0xA9, 0xFE, 0x8D, + 0x1F, 0xD4, 0xAD, 0x1D, 0xD4, 0x4A, 0x4A, 0x4A, 0x4A, 0x8D, 0x32, 0x03, 0x4A, 0x4A, 0x18, 0x6D, + 0x32, 0x03, 0xC9, 0x12, 0x30, 0x02, 0xA9, 0x12, 0x18, 0x69, 0x44, 0x8D, 0x02, 0xD0, 0x68, 0xA8, + 0x68, 0xAA, 0x68, 0x40, 0x20, 0x00, 0x50, 0xA9, 0xFF, 0x8D, 0x15, 0xD0, 0xA9, 0x01, 0x8D, 0xEF, + 0x3D, 0x60, 0xA9, 0x3F, 0x8D, 0x15, 0xD0, 0xA9, 0x44, 0x8D, 0x02, 0xD0, 0xA2, 0x1C, 0xA9, 0x00, + 0x8D, 0xEF, 0x3D, 0x9D, 0x00, 0xD4, 0xCA, 0xD0, 0xFA, 0x60, 0xAD, 0x19, 0xD0, 0x30, 0x0A, 0xAD, + 0x0D, 0xDC, 0x58, 0x4C, 0x31, 0xEA, 0x4C, 0x88, 0x40, 0xA6, 0xA4, 0xBD, 0xFE, 0x3D, 0x8D, 0x11, + 0xD0, 0x8D, 0x20, 0xD0, 0xE8, 0xE0, 0x06, 0xD0, 0x02, 0xA2, 0x00, 0x86, 0xA4, 0xBD, 0xF0, 0x3D, + 0x8D, 0x12, 0xD0, 0xAD, 0x19, 0xD0, 0x8D, 0x19, 0xD0, 0x68, 0xA8, 0x68, 0xAA, 0x68, 0x40, 0x78, + 0xA2, 0x00, 0xAD, 0x12, 0xD0, 0xCD, 0x12, 0xD0, 0xF0, 0xFB, 0x30, 0xF6, 0x29, 0x03, 0xC9, 0x03, + 0xD0, 0x0D, 0xA8, 0xE8, 0xAD, 0x12, 0xD0, 0x10, 0xFA, 0xE0, 0x5E, 0x90, 0x01, 0xC8, 0x98, 0x60, + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x48, 0x00, 0x10, 0x41, 0x00, 0x02, 0x01, + 0x00, 0x00, 0x08, 0x42, 0x49, 0x04, 0x22, 0x40, 0x81, 0x00, 0x00, 0x81, 0x04, 0x02, 0x00, 0x28, + 0x00, 0x00, 0x40, 0x20, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x1E, 0xD2, 0x20, 0x1B, 0x54, 0x01, 0x3E, 0x68, 0x11, 0x3F, 0xA8, 0x10, + 0x3D, 0x60, 0x40, 0x1F, 0x50, 0x02, 0x77, 0x68, 0x0A, 0x7B, 0x20, 0x20, 0x6E, 0xC0, 0x00, 0x00, + 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x44, 0x01, 0x09, 0x50, 0x14, 0x02, 0x90, 0x00, 0x42, + 0x20, 0x09, 0x50, 0x22, 0x40, 0x10, 0x42, 0x40, 0x00, 0x40, 0x02, 0x81, 0x24, 0x09, 0xA4, 0x08, + 0x04, 0x24, 0xA0, 0x22, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x01, 0x28, 0x00, 0x01, 0x2A, 0x00, 0x80, 0x52, 0x40, 0x08, + 0x44, 0x40, 0x02, 0x04, 0x00, 0x02, 0x08, 0x00, 0x00, 0x08, 0x80, 0x00, 0x24, 0x80, 0x14, 0x80, + 0x00, 0x14, 0x94, 0x00, 0x00, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x77, 0x6A, 0x80, 0xC0, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF7, 0x6A, 0x01, 0x80, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0xFF, 0xFF, 0x09, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x05, 0xFF, 0xFF, 0x41, + 0xFF, 0xFF, 0x11, 0xFF, 0xFF, 0x09, 0xFF, 0xFF, 0x22, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3F, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xA2, 0x00, 0x18, 0xA0, 0x00, 0x71, 0x02, 0xC8, 0x85, 0x12, 0x8A, 0x71, 0x02, 0xAA, 0x18, 0xA5, + 0x02, 0x69, 0x02, 0x85, 0x02, 0x90, 0x02, 0xE6, 0x03, 0xA5, 0x12, 0x60, 0xC8, 0x48, 0x18, 0x98, + 0x65, 0x02, 0x85, 0x02, 0x90, 0x02, 0xE6, 0x03, 0x68, 0x60, 0x86, 0x12, 0x0A, 0x26, 0x12, 0x0A, + 0x26, 0x12, 0xA6, 0x12, 0x60, 0x86, 0x12, 0x0A, 0x26, 0x12, 0x0A, 0x26, 0x12, 0x0A, 0x26, 0x12, + 0xA6, 0x12, 0x60, 0x86, 0x12, 0x0A, 0x26, 0x12, 0x0A, 0x26, 0x12, 0x0A, 0x26, 0x12, 0x0A, 0x26, + 0x12, 0xA6, 0x12, 0x60, 0xAD, 0x47, 0x7A, 0xAE, 0x48, 0x7A, 0x20, 0xE4, 0x44, 0xAD, 0x49, 0x7A, + 0xAE, 0x4A, 0x7A, 0x20, 0xE4, 0x44, 0xA0, 0x04, 0x4C, 0x3A, 0x2E, 0xA5, 0xC6, 0xD0, 0x17, 0xA5, + 0xCC, 0x48, 0xAD, 0xCA, 0x47, 0x20, 0xFB, 0x42, 0xA5, 0xC6, 0xF0, 0xFC, 0xA2, 0x00, 0x68, 0xD0, + 0x01, 0xE8, 0x8A, 0x20, 0xFB, 0x42, 0x20, 0xB4, 0xE5, 0xA2, 0x00, 0x60, 0xAA, 0xD0, 0x1E, 0xA5, + 0xCC, 0xD0, 0x19, 0xA9, 0x01, 0x85, 0xCC, 0xA5, 0xCF, 0xF0, 0x0D, 0xA4, 0xD3, 0xB1, 0xD1, 0x49, + 0x80, 0x91, 0xD1, 0xAD, 0x87, 0x02, 0x91, 0xF3, 0xA9, 0x00, 0x85, 0xCF, 0x60, 0xA9, 0x00, 0x85, + 0xCC, 0x60, 0xA0, 0x00, 0xF0, 0x07, 0xA9, 0x19, 0xA2, 0x73, 0x4C, 0x4B, 0x7A, 0x60, 0xA5, 0x02, + 0x38, 0xE9, 0x04, 0x85, 0x02, 0x90, 0x01, 0x60, 0xC6, 0x03, 0x60, 0xA5, 0x02, 0x38, 0xE9, 0x06, + 0x85, 0x02, 0x90, 0x01, 0x60, 0xC6, 0x03, 0x60, 0xA2, 0x00, 0x20, 0xFA, 0x44, 0xA6, 0x0B, 0xA5, + 0x12, 0x45, 0x13, 0x10, 0x05, 0xA5, 0x0A, 0x4C, 0xAE, 0x44, 0xA5, 0x0A, 0x60, 0xA2, 0x00, 0x85, + 0x04, 0x86, 0x05, 0xA0, 0x00, 0xB1, 0x02, 0xAA, 0xE6, 0x02, 0xD0, 0x02, 0xE6, 0x03, 0xB1, 0x02, + 0xE6, 0x02, 0xD0, 0x02, 0xE6, 0x03, 0x38, 0xE5, 0x05, 0xD0, 0x09, 0xE4, 0x04, 0xF0, 0x04, 0x69, + 0xFF, 0x09, 0x01, 0x60, 0x50, 0xFD, 0x49, 0xFF, 0x09, 0x01, 0x60, 0xE6, 0x02, 0xD0, 0x02, 0xE6, + 0x03, 0x60, 0xA0, 0x01, 0xB1, 0x02, 0xAA, 0x88, 0xB1, 0x02, 0xE6, 0x02, 0xF0, 0x05, 0xE6, 0x02, + 0xF0, 0x03, 0x60, 0xE6, 0x02, 0xE6, 0x03, 0x60, 0xA0, 0x05, 0x4C, 0x8C, 0x42, 0xA0, 0x07, 0x4C, + 0x8C, 0x42, 0xA2, 0x00, 0xA5, 0xC6, 0xF0, 0x02, 0xA9, 0x01, 0x60, 0x85, 0x0A, 0x86, 0x0B, 0xA2, + 0x00, 0xB1, 0x0A, 0x10, 0x01, 0xCA, 0x60, 0x20, 0xEF, 0x43, 0xA6, 0x0F, 0xF0, 0x13, 0xB1, 0x0A, + 0x91, 0x0C, 0xC8, 0xB1, 0x0A, 0x91, 0x0C, 0xC8, 0xD0, 0xF4, 0xE6, 0x0B, 0xE6, 0x0D, 0xCA, 0xD0, + 0xED, 0xA6, 0x0E, 0xF0, 0x08, 0xB1, 0x0A, 0x91, 0x0C, 0xC8, 0xCA, 0xD0, 0xF8, 0x4C, 0x91, 0x43, + 0x85, 0x0E, 0x86, 0x0F, 0x20, 0xBC, 0x44, 0xC8, 0xB1, 0x02, 0xAA, 0x86, 0x0D, 0x88, 0xB1, 0x02, + 0x85, 0x0C, 0x60, 0x85, 0x0E, 0x86, 0x0F, 0xA2, 0x00, 0xF0, 0x08, 0x85, 0x0E, 0x86, 0x0F, 0x20, + 0x91, 0x43, 0xAA, 0xA0, 0x01, 0xB1, 0x02, 0x85, 0x0B, 0x88, 0xB1, 0x02, 0x85, 0x0A, 0x46, 0x0F, + 0x66, 0x0E, 0x90, 0x09, 0x8A, 0x91, 0x0A, 0xE6, 0x0A, 0xD0, 0x02, 0xE6, 0x0B, 0xA5, 0x0A, 0x18, + 0x65, 0x0E, 0x85, 0x0C, 0xA5, 0x0B, 0x65, 0x0F, 0x85, 0x0D, 0x8A, 0xA6, 0x0F, 0xF0, 0x13, 0x91, + 0x0A, 0x91, 0x0C, 0xC8, 0x91, 0x0A, 0x91, 0x0C, 0xC8, 0xD0, 0xF4, 0xE6, 0x0B, 0xE6, 0x0D, 0xCA, + 0xD0, 0xED, 0xA4, 0x0E, 0xF0, 0x07, 0x88, 0x91, 0x0A, 0x91, 0x0C, 0xD0, 0xF9, 0x4C, 0x91, 0x43, + 0xA2, 0x00, 0x20, 0xFA, 0x44, 0xA5, 0x04, 0xA6, 0x05, 0x24, 0x12, 0x10, 0x03, 0x4C, 0xAE, 0x44, + 0x60, 0x85, 0x10, 0x20, 0xBC, 0x44, 0x98, 0xA0, 0x08, 0xA6, 0x0B, 0xF0, 0x1D, 0x85, 0x11, 0x46, + 0x10, 0x90, 0x0B, 0x18, 0x65, 0x0A, 0xAA, 0xA5, 0x0B, 0x65, 0x11, 0x85, 0x11, 0x8A, 0x66, 0x11, + 0x6A, 0x66, 0x10, 0x88, 0xD0, 0xEB, 0xAA, 0xA5, 0x10, 0x60, 0x46, 0x10, 0x90, 0x03, 0x18, 0x65, + 0x0A, 0x6A, 0x66, 0x10, 0x88, 0xD0, 0xF5, 0xAA, 0xA5, 0x10, 0x60, 0xE0, 0x00, 0x10, 0x0D, 0x18, + 0x49, 0xFF, 0x69, 0x01, 0x48, 0x8A, 0x49, 0xFF, 0x69, 0x00, 0xAA, 0x68, 0x60, 0xA0, 0x01, 0xB1, + 0x02, 0x85, 0x0B, 0x88, 0xB1, 0x02, 0x85, 0x0A, 0x4C, 0x99, 0x43, 0xA0, 0x00, 0xB1, 0x02, 0xA4, + 0x02, 0xF0, 0x07, 0xC6, 0x02, 0xA0, 0x00, 0x91, 0x02, 0x60, 0xC6, 0x03, 0xC6, 0x02, 0x91, 0x02, + 0x60, 0xA9, 0x00, 0xA2, 0x00, 0x48, 0xA5, 0x02, 0x38, 0xE9, 0x02, 0x85, 0x02, 0xB0, 0x02, 0xC6, + 0x03, 0xA0, 0x01, 0x8A, 0x91, 0x02, 0x68, 0x88, 0x91, 0x02, 0x60, 0x86, 0x13, 0xE0, 0x00, 0x10, + 0x03, 0x20, 0xAE, 0x44, 0x85, 0x10, 0x86, 0x11, 0x20, 0x91, 0x43, 0x86, 0x12, 0xE0, 0x00, 0x10, + 0x03, 0x20, 0xAE, 0x44, 0x85, 0x0A, 0x86, 0x0B, 0x4C, 0x56, 0x45, 0x48, 0x84, 0x12, 0xA0, 0x01, + 0xB1, 0x02, 0x85, 0x0B, 0x88, 0xB1, 0x02, 0x85, 0x0A, 0xA4, 0x12, 0x68, 0x91, 0x0A, 0x4C, 0x99, + 0x43, 0xA2, 0x00, 0x38, 0x49, 0xFF, 0xA0, 0x00, 0x71, 0x02, 0xC8, 0x48, 0x8A, 0x49, 0xFF, 0x71, + 0x02, 0xAA, 0x68, 0x4C, 0x8B, 0x42, 0xA2, 0x00, 0x85, 0x10, 0x86, 0x11, 0x20, 0xBC, 0x44, 0x20, + 0x56, 0x45, 0xA5, 0x0A, 0xA6, 0x0B, 0x60, 0xA9, 0x00, 0x85, 0x05, 0xA0, 0x10, 0xA6, 0x11, 0xF0, + 0x1F, 0x06, 0x0A, 0x26, 0x0B, 0x2A, 0x26, 0x05, 0xAA, 0xC5, 0x10, 0xA5, 0x05, 0xE5, 0x11, 0x90, + 0x08, 0x85, 0x05, 0x8A, 0xE5, 0x10, 0xAA, 0xE6, 0x0A, 0x8A, 0x88, 0xD0, 0xE4, 0x85, 0x04, 0x60, + 0x06, 0x0A, 0x26, 0x0B, 0x2A, 0xB0, 0x04, 0xC5, 0x10, 0x90, 0x04, 0xE5, 0x10, 0xE6, 0x0A, 0x88, + 0xD0, 0xEE, 0x85, 0x04, 0x60, 0xA2, 0x00, 0x85, 0x10, 0x86, 0x11, 0x20, 0xBC, 0x44, 0x20, 0x56, + 0x45, 0xA5, 0x04, 0xA6, 0x05, 0x60, 0x2C, 0x11, 0xD0, 0x10, 0xFB, 0x2C, 0x11, 0xD0, 0x30, 0xFB, + 0x60, 0xA9, 0x15, 0x85, 0x0A, 0xA9, 0x46, 0x85, 0x0B, 0xA9, 0x00, 0xA8, 0xA2, 0x01, 0xF0, 0x0A, + 0x91, 0x0A, 0xC8, 0xD0, 0xFB, 0xE6, 0x0B, 0xCA, 0xD0, 0xF6, 0xC0, 0xB6, 0xF0, 0x05, 0x91, 0x0A, + 0xC8, 0xD0, 0xF7, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xA0, 0x00, 0xF0, 0x07, 0xA9, 0x15, 0xA2, 0x46, 0x4C, 0x4B, 0x7A, 0x60, 0xA2, 0x19, 0xB5, 0x02, + 0x9D, 0xD5, 0x45, 0xCA, 0x10, 0xF8, 0xA9, 0x00, 0xA2, 0x48, 0x85, 0x02, 0x86, 0x03, 0xA9, 0x0E, + 0x20, 0xD2, 0xFF, 0x4C, 0xEF, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -1691,134 +1057,6 @@ const unsigned char cfgPRGCode[30721] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x3C, 0x66, 0x6E, 0x6E, 0x60, 0x3C, 0x00, 0x00, 0x3C, 0x66, 0x66, 0x7E, 0x66, 0x66, - 0x00, 0x00, 0x7C, 0x66, 0x7C, 0x66, 0x66, 0x7C, 0x00, 0x00, 0x3E, 0x60, 0x60, 0x60, 0x60, 0x3E, - 0x00, 0x00, 0x7C, 0x66, 0x66, 0x66, 0x66, 0x7C, 0x00, 0x00, 0x7E, 0x60, 0x7C, 0x60, 0x60, 0x7E, - 0x00, 0x00, 0x7E, 0x60, 0x7C, 0x60, 0x60, 0x60, 0x00, 0x00, 0x3E, 0x60, 0x6E, 0x66, 0x66, 0x3E, - 0x00, 0x00, 0x66, 0x66, 0x7E, 0x66, 0x66, 0x66, 0x00, 0x00, 0x3C, 0x18, 0x18, 0x18, 0x18, 0x3C, - 0x00, 0x00, 0x1E, 0x06, 0x06, 0x66, 0x66, 0x3C, 0x00, 0x00, 0x66, 0x6C, 0x78, 0x78, 0x6C, 0x66, - 0x00, 0x00, 0x60, 0x60, 0x60, 0x60, 0x60, 0x7E, 0x00, 0x00, 0x63, 0x77, 0x7F, 0x6B, 0x63, 0x63, - 0x00, 0x00, 0x66, 0x76, 0x7E, 0x6E, 0x66, 0x66, 0x00, 0x00, 0x3C, 0x66, 0x66, 0x66, 0x66, 0x3C, - 0x00, 0x00, 0x7C, 0x66, 0x66, 0x7C, 0x60, 0x60, 0x00, 0x00, 0x3C, 0x66, 0x66, 0x66, 0x66, 0x3C, - 0x0E, 0x00, 0x7C, 0x66, 0x66, 0x7C, 0x66, 0x66, 0x00, 0x00, 0x3C, 0x60, 0x78, 0x1E, 0x06, 0x7C, - 0x00, 0x00, 0x7E, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x3C, - 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x3C, 0x18, 0x00, 0x00, 0x63, 0x63, 0x6B, 0x6B, 0x7F, 0x36, - 0x00, 0x00, 0x66, 0x66, 0x3C, 0x3C, 0x66, 0x66, 0x00, 0x00, 0x66, 0x66, 0x3C, 0x18, 0x18, 0x18, - 0x00, 0x00, 0x7E, 0x0C, 0x18, 0x30, 0x60, 0x7E, 0x00, 0x00, 0x3C, 0x30, 0x30, 0x30, 0x30, 0x3C, - 0x00, 0x00, 0x1C, 0x32, 0x30, 0x78, 0x30, 0x7E, 0x00, 0x00, 0x3C, 0x0C, 0x0C, 0x0C, 0x0C, 0x3C, - 0x00, 0x00, 0x18, 0x3C, 0x7E, 0x18, 0x18, 0x18, 0x00, 0x00, 0x10, 0x30, 0x7E, 0x7E, 0x30, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x00, 0x18, - 0x00, 0x00, 0x36, 0x36, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x7F, 0x36, 0x36, 0x7F, 0x36, - 0x00, 0x00, 0x18, 0x1C, 0x30, 0x3C, 0x0C, 0x38, 0x18, 0x00, 0x73, 0x56, 0x6C, 0x1B, 0x35, 0x67, - 0x00, 0x00, 0x38, 0x6C, 0x38, 0x6F, 0x66, 0x3F, 0x00, 0x00, 0x18, 0x18, 0x10, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x18, 0x30, 0x30, 0x30, 0x30, 0x18, 0x00, 0x00, 0x18, 0x0C, 0x0C, 0x0C, 0x0C, 0x18, - 0x00, 0x00, 0x00, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x0C, 0x0C, 0x18, 0x18, 0x30, 0x30, - 0x00, 0x00, 0x3C, 0x66, 0x6E, 0x76, 0x66, 0x3C, 0x00, 0x00, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7E, - 0x00, 0x00, 0x78, 0x0C, 0x0C, 0x18, 0x30, 0x7E, 0x00, 0x00, 0x7E, 0x0C, 0x1C, 0x06, 0x06, 0x7C, - 0x00, 0x00, 0x0C, 0x18, 0x36, 0x66, 0x7E, 0x06, 0x00, 0x00, 0x7C, 0x60, 0x7C, 0x06, 0x06, 0x7C, - 0x00, 0x00, 0x3C, 0x60, 0x7C, 0x66, 0x66, 0x3C, 0x00, 0x00, 0x7E, 0x06, 0x0C, 0x18, 0x18, 0x18, - 0x00, 0x00, 0x3C, 0x66, 0x3C, 0x66, 0x66, 0x3C, 0x00, 0x00, 0x3C, 0x66, 0x66, 0x3E, 0x06, 0x3C, - 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x18, 0x18, - 0x30, 0x00, 0x00, 0x0C, 0x18, 0x30, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x7E, 0x00, - 0x00, 0x00, 0x00, 0x30, 0x18, 0x0C, 0x18, 0x30, 0x00, 0x00, 0x3C, 0x66, 0x0E, 0x1C, 0x00, 0x18, - 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3C, 0x7E, 0x7E, 0x18, 0x3C, - 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x00, 0x00, 0x00, 0xE0, 0xF0, 0x38, 0x18, - 0x18, 0x18, 0x18, 0x1C, 0x0F, 0x07, 0x00, 0x00, 0x00, 0x18, 0x18, 0x38, 0xF0, 0xE0, 0x00, 0x00, - 0x00, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, - 0x03, 0x03, 0x07, 0x0E, 0x1C, 0x38, 0x70, 0xE0, 0xC0, 0xFF, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, - 0xC0, 0xFF, 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x3C, 0x7E, 0x7E, 0x7E, 0x7E, 0x3C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x36, 0x7F, 0x7F, 0x3E, 0x1C, 0x08, - 0x00, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, 0x00, 0x00, 0x07, 0x0F, 0x1C, 0x18, - 0x18, 0xC3, 0xE7, 0x7E, 0x3C, 0x3C, 0x7E, 0xE7, 0xC3, 0x00, 0x3C, 0x7E, 0x66, 0x66, 0x7E, 0x3C, - 0x00, 0x00, 0x18, 0x18, 0x76, 0x6E, 0x18, 0x3C, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, - 0x06, 0x00, 0x18, 0x3C, 0x7E, 0x7E, 0x3C, 0x18, 0x00, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x18, - 0x18, 0xC0, 0xC0, 0x30, 0x30, 0xC0, 0xC0, 0x30, 0x30, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, - 0x18, 0x00, 0x00, 0x7F, 0x36, 0x36, 0x36, 0x36, 0x00, 0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, - 0xC0, 0xCC, 0xCC, 0x33, 0x33, 0xCC, 0xCC, 0x33, 0x33, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, - 0x03, 0x00, 0x00, 0x00, 0x00, 0xCC, 0xCC, 0x33, 0x33, 0xFF, 0xFE, 0xFC, 0xF8, 0xF0, 0xE0, 0xC0, - 0x80, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x18, 0x18, 0x18, 0x1F, 0x1F, 0x18, 0x18, - 0x18, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x18, 0x18, 0x18, 0x1F, 0x1F, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF8, 0xF8, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, - 0xFF, 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xF8, 0xF8, 0x18, 0x18, - 0x18, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, - 0xE0, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, - 0xFF, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xF0, 0xF0, - 0xF0, 0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0xF8, 0xF8, 0x00, 0x00, - 0x00, 0xF0, 0xF0, 0xF0, 0xF0, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xF0, 0xF0, 0xF0, 0x0F, 0x0F, 0x0F, - 0x0F, 0xFF, 0xC3, 0x99, 0x91, 0x91, 0x9F, 0xC3, 0xFF, 0xFF, 0xC3, 0x99, 0x99, 0x81, 0x99, 0x99, - 0xFF, 0xFF, 0x83, 0x99, 0x83, 0x99, 0x99, 0x83, 0xFF, 0xFF, 0xC1, 0x9F, 0x9F, 0x9F, 0x9F, 0xC1, - 0xFF, 0xFF, 0x83, 0x99, 0x99, 0x99, 0x99, 0x83, 0xFF, 0xFF, 0x81, 0x9F, 0x83, 0x9F, 0x9F, 0x81, - 0xFF, 0xFF, 0x81, 0x9F, 0x83, 0x9F, 0x9F, 0x9F, 0xFF, 0xFF, 0xC1, 0x9F, 0x91, 0x99, 0x99, 0xC1, - 0xFF, 0xFF, 0x99, 0x99, 0x81, 0x99, 0x99, 0x99, 0xFF, 0xFF, 0xC3, 0xE7, 0xE7, 0xE7, 0xE7, 0xC3, - 0xFF, 0xFF, 0xE1, 0xF9, 0xF9, 0x99, 0x99, 0xC3, 0xFF, 0xFF, 0x99, 0x93, 0x87, 0x87, 0x93, 0x99, - 0xFF, 0xFF, 0x9F, 0x9F, 0x9F, 0x9F, 0x9F, 0x81, 0xFF, 0xFF, 0x9C, 0x88, 0x80, 0x94, 0x9C, 0x9C, - 0xFF, 0xFF, 0x99, 0x89, 0x81, 0x91, 0x99, 0x99, 0xFF, 0xFF, 0xC3, 0x99, 0x99, 0x99, 0x99, 0xC3, - 0xFF, 0xFF, 0x83, 0x99, 0x99, 0x83, 0x9F, 0x9F, 0xFF, 0xFF, 0xC3, 0x99, 0x99, 0x99, 0x99, 0xC3, - 0xF1, 0xFF, 0x83, 0x99, 0x99, 0x83, 0x99, 0x99, 0xFF, 0xFF, 0xC3, 0x9F, 0x87, 0xE1, 0xF9, 0x83, - 0xFF, 0xFF, 0x81, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xFF, 0xFF, 0x99, 0x99, 0x99, 0x99, 0x99, 0xC3, - 0xFF, 0xFF, 0x99, 0x99, 0x99, 0x99, 0xC3, 0xE7, 0xFF, 0xFF, 0x9C, 0x9C, 0x94, 0x94, 0x80, 0xC9, - 0xFF, 0xFF, 0x99, 0x99, 0xC3, 0xC3, 0x99, 0x99, 0xFF, 0xFF, 0x99, 0x99, 0xC3, 0xE7, 0xE7, 0xE7, - 0xFF, 0xFF, 0x81, 0xF3, 0xE7, 0xCF, 0x9F, 0x81, 0xFF, 0xFF, 0xC3, 0xCF, 0xCF, 0xCF, 0xCF, 0xC3, - 0xFF, 0xFF, 0xE3, 0xCD, 0xCF, 0x87, 0xCF, 0x81, 0xFF, 0xFF, 0xC3, 0xF3, 0xF3, 0xF3, 0xF3, 0xC3, - 0xFF, 0xFF, 0xE7, 0xC3, 0x81, 0xE7, 0xE7, 0xE7, 0xFF, 0xFF, 0xEF, 0xCF, 0x81, 0x81, 0xCF, 0xEF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0xE7, 0xE7, 0xFF, 0xE7, - 0xFF, 0xFF, 0xC9, 0xC9, 0xDB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC9, 0x80, 0xC9, 0xC9, 0x80, 0xC9, - 0xFF, 0xFF, 0xE7, 0xE3, 0xCF, 0xC3, 0xF3, 0xC7, 0xE7, 0xFF, 0x8C, 0xA9, 0x93, 0xE4, 0xCA, 0x98, - 0xFF, 0xFF, 0xC7, 0x93, 0xC7, 0x90, 0x99, 0xC0, 0xFF, 0xFF, 0xE7, 0xE7, 0xEF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xE7, 0xCF, 0xCF, 0xCF, 0xCF, 0xE7, 0xFF, 0xFF, 0xE7, 0xF3, 0xF3, 0xF3, 0xF3, 0xE7, - 0xFF, 0xFF, 0xFF, 0x99, 0xC3, 0x00, 0xC3, 0x99, 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0x81, 0xE7, 0xE7, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0xCF, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0xFF, 0xFF, 0xF3, 0xF3, 0xE7, 0xE7, 0xCF, 0xCF, - 0xFF, 0xFF, 0xC3, 0x99, 0x91, 0x89, 0x99, 0xC3, 0xFF, 0xFF, 0xE7, 0xC7, 0xE7, 0xE7, 0xE7, 0x81, - 0xFF, 0xFF, 0x87, 0xF3, 0xF3, 0xE7, 0xCF, 0x81, 0xFF, 0xFF, 0x81, 0xF3, 0xE3, 0xF9, 0xF9, 0x83, - 0xFF, 0xFF, 0xF3, 0xE7, 0xC9, 0x99, 0x81, 0xF9, 0xFF, 0xFF, 0x83, 0x9F, 0x83, 0xF9, 0xF9, 0x83, - 0xFF, 0xFF, 0xC3, 0x9F, 0x83, 0x99, 0x99, 0xC3, 0xFF, 0xFF, 0x81, 0xF9, 0xF3, 0xE7, 0xE7, 0xE7, - 0xFF, 0xFF, 0xC3, 0x99, 0xC3, 0x99, 0x99, 0xC3, 0xFF, 0xFF, 0xC3, 0x99, 0x99, 0xC1, 0xF9, 0xC3, - 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0xFF, 0xE7, 0xE7, - 0xCF, 0xFF, 0xFF, 0xF3, 0xE7, 0xCF, 0xE7, 0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0x81, 0xFF, - 0xFF, 0xFF, 0xFF, 0xCF, 0xE7, 0xF3, 0xE7, 0xCF, 0xFF, 0xFF, 0xC3, 0x99, 0xF1, 0xE3, 0xFF, 0xE7, - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xC3, 0x81, 0x81, 0xE7, 0xC3, - 0xFF, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xCF, 0xCF, 0xCF, 0xCF, 0xCF, 0xCF, 0xCF, - 0xCF, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xF3, 0xFF, 0xFF, 0xFF, 0x1F, 0x0F, 0xC7, 0xE7, - 0xE7, 0xE7, 0xE7, 0xE3, 0xF0, 0xF8, 0xFF, 0xFF, 0xFF, 0xE7, 0xE7, 0xC7, 0x0F, 0x1F, 0xFF, 0xFF, - 0xFF, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x00, 0x00, 0x3F, 0x1F, 0x8F, 0xC7, 0xE3, 0xF1, 0xF8, - 0xFC, 0xFC, 0xF8, 0xF1, 0xE3, 0xC7, 0x8F, 0x1F, 0x3F, 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, - 0x3F, 0x00, 0x00, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFF, 0xC3, 0x81, 0x81, 0x81, 0x81, 0xC3, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xC9, 0x80, 0x80, 0xC1, 0xE3, 0xF7, - 0xFF, 0x9F, 0x9F, 0x9F, 0x9F, 0x9F, 0x9F, 0x9F, 0x9F, 0xFF, 0xFF, 0xFF, 0xF8, 0xF0, 0xE3, 0xE7, - 0xE7, 0x3C, 0x18, 0x81, 0xC3, 0xC3, 0x81, 0x18, 0x3C, 0xFF, 0xC3, 0x81, 0x99, 0x99, 0x81, 0xC3, - 0xFF, 0xFF, 0xE7, 0xE7, 0x89, 0x91, 0xE7, 0xC3, 0xFF, 0xF9, 0xF9, 0xF9, 0xF9, 0xF9, 0xF9, 0xF9, - 0xF9, 0xFF, 0xE7, 0xC3, 0x81, 0x81, 0xC3, 0xE7, 0xFF, 0xE7, 0xE7, 0xE7, 0x00, 0x00, 0xE7, 0xE7, - 0xE7, 0x3F, 0x3F, 0xCF, 0xCF, 0x3F, 0x3F, 0xCF, 0xCF, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, - 0xE7, 0xFF, 0xFF, 0x80, 0xC9, 0xC9, 0xC9, 0xC9, 0xFF, 0x00, 0x80, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC, - 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x06, 0x0E, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x01, 0x01, - 0x3F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x01, 0x01, 0xC7, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x03, 0x01, - 0x10, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC0, 0xC0, 0xC7, 0x00, 0x00, 0x00, 0xF0, 0xF0, 0x70, 0x70, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0E, 0x0F, 0x0F, 0x1F, 0x1C, 0x1C, - 0x1F, 0x3F, 0x07, 0x03, 0xE3, 0xE3, 0x02, 0x06, 0xFF, 0xC7, 0xC7, 0x8F, 0x8E, 0x8E, 0x02, 0x02, - 0xFF, 0x18, 0xFC, 0xFC, 0x30, 0x21, 0x01, 0x07, 0xFF, 0xC7, 0xC1, 0x81, 0x8F, 0x8F, 0x80, 0x80, - 0xFF, 0xE0, 0xE0, 0xE0, 0xC0, 0xC0, 0xC0, 0xC0, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xF0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x0C, 0x0C, 0x0C, 0x0C, 0x1C, 0x18, - 0x18, 0xFF, 0x62, 0x62, 0x47, 0x47, 0x0F, 0x0F, 0x8F, 0xFF, 0x03, 0x02, 0x8E, 0x8C, 0x8C, 0x1C, - 0x1C, 0xFF, 0x81, 0x01, 0x11, 0x31, 0xFF, 0xFF, 0x63, 0xFF, 0x8C, 0x8C, 0x88, 0x88, 0x81, 0x01, - 0x11, 0xF0, 0x70, 0x70, 0xF0, 0xE0, 0xE0, 0xE0, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x18, 0x38, 0x38, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x87, 0xC4, 0xC4, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1C, 0x06, 0x07, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x23, 0x03, 0x03, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x10, 0x18, 0x18, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x66, 0x6E, 0x6E, 0x60, 0x3C, 0x00, 0x00, 0x00, 0x3C, 0x06, 0x3E, 0x66, 0x3E, 0x00, 0x00, 0x60, 0x6C, 0x76, 0x66, 0x66, 0x7C, 0x00, 0x00, 0x00, 0x3E, 0x60, 0x60, 0x60, 0x3E, 0x00, 0x00, 0x06, 0x36, 0x6E, 0x66, 0x66, 0x3E, 0x00, 0x00, 0x00, 0x3C, 0x66, 0x7E, 0x60, 0x3C, @@ -1840,7 +1078,7 @@ const unsigned char cfgPRGCode[30721] = { 0x00, 0x00, 0x18, 0x1C, 0x30, 0x3C, 0x0C, 0x38, 0x18, 0x00, 0x73, 0x56, 0x6C, 0x1B, 0x35, 0x67, 0x00, 0x00, 0x38, 0x6C, 0x38, 0x6F, 0x66, 0x3F, 0x00, 0x00, 0x18, 0x18, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x30, 0x30, 0x30, 0x30, 0x18, 0x00, 0x00, 0x18, 0x0C, 0x0C, 0x0C, 0x0C, 0x18, - 0x00, 0x00, 0x00, 0x66, 0x3C, 0xFF, 0x3C, 0x66, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, + 0x00, 0x00, 0x1F, 0x1F, 0x11, 0x11, 0x77, 0x77, 0x00, 0x00, 0x00, 0x18, 0x18, 0x7E, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x0C, 0x0C, 0x18, 0x18, 0x30, 0x30, 0x00, 0x00, 0x3C, 0x66, 0x6E, 0x76, 0x66, 0x3C, 0x00, 0x00, 0x18, 0x38, 0x18, 0x18, 0x18, 0x7E, @@ -1946,6 +1184,854 @@ const unsigned char cfgPRGCode[30721] = { 0x11, 0xF0, 0x70, 0x70, 0xF0, 0xE0, 0xE0, 0xE0, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x38, 0x38, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x87, 0xC4, 0xC4, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x1C, 0x06, 0x07, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x23, 0x03, 0x03, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x10, 0x18, 0x18, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x00, 0x00, - 0x00 + 0x00, 0x10, 0x18, 0x18, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xC0, 0xC0, 0xC0, 0xC0, 0x80, 0x00, 0x00, + 0x00, 0x4C, 0xC7, 0x50, 0x4C, 0xCB, 0x50, 0xB9, 0xE1, 0x55, 0x4C, 0x13, 0x50, 0xA8, 0xA9, 0x00, + 0x9D, 0x1B, 0x54, 0x98, 0x9D, 0xF2, 0x53, 0xBD, 0xE1, 0x53, 0x9D, 0xF1, 0x53, 0x60, 0x9D, 0x30, + 0x54, 0x60, 0x9D, 0x31, 0x54, 0x60, 0x9D, 0xF5, 0x53, 0x60, 0x9D, 0xF6, 0x53, 0xA9, 0x00, 0x9D, + 0xF7, 0x53, 0x60, 0xA0, 0x00, 0x8C, 0x06, 0x51, 0x8D, 0x02, 0x51, 0x60, 0x8D, 0x08, 0x54, 0x8D, + 0x0F, 0x54, 0x8D, 0x16, 0x54, 0x60, 0xDE, 0x1C, 0x54, 0x4C, 0x9B, 0x52, 0xF0, 0xFB, 0xBD, 0x1C, + 0x54, 0xD0, 0xF3, 0xA9, 0x00, 0x85, 0xA8, 0xBD, 0x1B, 0x54, 0x30, 0x09, 0xD9, 0xFA, 0x57, 0x90, + 0x05, 0xF0, 0x02, 0x49, 0xFF, 0x18, 0x69, 0x02, 0x9D, 0x1B, 0x54, 0x4A, 0x90, 0x2D, 0xB0, 0x42, + 0x98, 0xF0, 0x4F, 0xB9, 0xFA, 0x57, 0x85, 0xA8, 0xA9, 0x00, 0xC9, 0x02, 0x90, 0x1D, 0xF0, 0x32, + 0xBC, 0x0A, 0x14, 0xBD, 0x1E, 0x14, 0xF9, 0x3C, 0x14, 0x48, 0xBD, 0x1F, 0x14, 0xF9, 0x93, 0x14, + 0xA8, 0x68, 0xB0, 0x17, 0x65, 0xFB, 0x98, 0x65, 0xFC, 0x10, 0x27, 0xBD, 0x1E, 0x54, 0x65, 0xA7, + 0x9D, 0x1E, 0x54, 0xBD, 0x1F, 0x54, 0x65, 0xA8, 0x4C, 0x98, 0x52, 0xE5, 0xFB, 0x98, 0xE5, 0xFC, + 0x30, 0x10, 0xBD, 0x1E, 0x54, 0xE5, 0xA7, 0x9D, 0x1E, 0x54, 0xBD, 0x1F, 0x54, 0xE5, 0xA8, 0x4C, + 0x98, 0x52, 0xBC, 0x0A, 0x54, 0x4C, 0x8A, 0x52, 0x8D, 0xCE, 0x50, 0x60, 0xA2, 0x00, 0xA0, 0x00, + 0x30, 0x30, 0x8A, 0xA2, 0x29, 0x9D, 0xDC, 0x53, 0xCA, 0x10, 0xFA, 0x8D, 0x15, 0xD4, 0x8D, 0x50, + 0x51, 0x8D, 0x02, 0x51, 0x8E, 0xCE, 0x50, 0xAA, 0x20, 0xF1, 0x50, 0xA2, 0x07, 0x20, 0xF1, 0x50, + 0xA2, 0x0E, 0xA9, 0x05, 0x9D, 0x08, 0x54, 0xA9, 0x01, 0x9D, 0x09, 0x54, 0x9D, 0x0B, 0x54, 0x4C, + 0x92, 0x53, 0xA0, 0x00, 0xF0, 0x45, 0xA9, 0x00, 0xD0, 0x23, 0xB9, 0x81, 0x57, 0xF0, 0x12, 0x10, + 0x19, 0x0A, 0x8D, 0x55, 0x51, 0xB9, 0xBD, 0x57, 0x8D, 0x50, 0x51, 0xB9, 0x82, 0x57, 0xD0, 0x1F, + 0xC8, 0xB9, 0xBD, 0x57, 0x8D, 0x4B, 0x51, 0x4C, 0x3B, 0x51, 0x8D, 0x06, 0x51, 0xB9, 0xBD, 0x57, + 0x18, 0x6D, 0x4B, 0x51, 0x8D, 0x4B, 0x51, 0xCE, 0x06, 0x51, 0xD0, 0x11, 0xB9, 0x82, 0x57, 0xC9, + 0xFF, 0xC8, 0x98, 0x90, 0x03, 0xB9, 0xBD, 0x57, 0x8D, 0x02, 0x51, 0xA9, 0x00, 0x8D, 0x16, 0xD4, + 0xA9, 0x00, 0x8D, 0x17, 0xD4, 0xA9, 0x00, 0x09, 0x0F, 0x8D, 0x18, 0xD4, 0x20, 0x65, 0x51, 0xA2, + 0x07, 0x20, 0x65, 0x51, 0xA2, 0x0E, 0xDE, 0x09, 0x54, 0xF0, 0x0B, 0x10, 0x06, 0xBD, 0x08, 0x54, + 0x9D, 0x09, 0x54, 0x4C, 0x2C, 0x52, 0xBC, 0xE1, 0x53, 0xB9, 0xC7, 0x53, 0x8D, 0x1E, 0x52, 0x8D, + 0x2A, 0x52, 0xBD, 0xDF, 0x53, 0xD0, 0x30, 0xBC, 0x06, 0x54, 0xB9, 0xF3, 0x54, 0x85, 0xA7, 0xB9, + 0xF6, 0x54, 0x85, 0xA8, 0xBC, 0xDC, 0x53, 0xB1, 0xA7, 0xC9, 0xFF, 0x90, 0x06, 0xC8, 0xB1, 0xA7, + 0xA8, 0xB1, 0xA7, 0xC9, 0xE0, 0x90, 0x08, 0xE9, 0xF0, 0x9D, 0xDD, 0x53, 0xC8, 0xB1, 0xA7, 0x9D, + 0x07, 0x54, 0xC8, 0x98, 0x9D, 0xDC, 0x53, 0xBC, 0x0B, 0x54, 0xB9, 0x13, 0x56, 0x9D, 0x35, 0x54, + 0xBD, 0xF3, 0x53, 0xF0, 0x62, 0x38, 0xE9, 0x60, 0x9D, 0x0A, 0x54, 0xA9, 0x00, 0x9D, 0xF1, 0x53, + 0x9D, 0xF3, 0x53, 0xB9, 0xFA, 0x55, 0x9D, 0x1C, 0x54, 0xB9, 0xE1, 0x55, 0x9D, 0xF2, 0x53, 0xBD, + 0xE1, 0x53, 0xC9, 0x03, 0xF0, 0x41, 0xB9, 0x2C, 0x56, 0x9D, 0xF5, 0x53, 0xFE, 0x0C, 0x54, 0xB9, + 0xAF, 0x55, 0xF0, 0x08, 0x9D, 0xF6, 0x53, 0xA9, 0x00, 0x9D, 0xF7, 0x53, 0xB9, 0xC8, 0x55, 0xF0, + 0x08, 0x8D, 0x02, 0x51, 0xA9, 0x00, 0x8D, 0x06, 0x51, 0xB9, 0x96, 0x55, 0x9D, 0xF4, 0x53, 0xB9, + 0x7D, 0x55, 0x9D, 0x31, 0x54, 0xB9, 0x64, 0x55, 0x9D, 0x30, 0x54, 0xBD, 0xE2, 0x53, 0x20, 0x06, + 0x50, 0x4C, 0x6E, 0x53, 0x4C, 0x9C, 0x53, 0xBD, 0xE2, 0x53, 0x20, 0x06, 0x50, 0xBC, 0xF4, 0x53, + 0xF0, 0x3A, 0xB9, 0x45, 0x56, 0xC9, 0x10, 0xB0, 0x0A, 0xDD, 0x1D, 0x54, 0xF0, 0x0E, 0xFE, 0x1D, + 0x54, 0xD0, 0x29, 0xE9, 0x10, 0xC9, 0xE0, 0xB0, 0x03, 0x9D, 0xF5, 0x53, 0xB9, 0x46, 0x56, 0xC9, + 0xFF, 0xC8, 0x98, 0x90, 0x03, 0xB9, 0xB2, 0x56, 0x9D, 0xF4, 0x53, 0xA9, 0x00, 0x9D, 0x1D, 0x54, + 0xB9, 0x44, 0x56, 0xC9, 0xE0, 0xB0, 0xBD, 0xB9, 0xB1, 0x56, 0xD0, 0x17, 0xBC, 0xF1, 0x53, 0x8C, + 0x78, 0x50, 0xB9, 0xD7, 0x53, 0x8D, 0x80, 0x52, 0xBC, 0xF2, 0x53, 0xB9, 0x03, 0x58, 0x85, 0xA7, + 0x4C, 0x4B, 0x50, 0x10, 0x05, 0x7D, 0x0A, 0x54, 0x29, 0x7F, 0xA8, 0xA9, 0x00, 0x9D, 0x1B, 0x54, + 0xB9, 0x3C, 0x54, 0x9D, 0x1E, 0x54, 0xB9, 0x93, 0x54, 0x9D, 0x1F, 0x54, 0xBC, 0xF6, 0x53, 0xF0, + 0x41, 0xBD, 0xF7, 0x53, 0xD0, 0x14, 0xB9, 0x1F, 0x57, 0x10, 0x0C, 0x9D, 0x21, 0x54, 0xB9, 0x50, + 0x57, 0x9D, 0x20, 0x54, 0x4C, 0xD2, 0x52, 0x9D, 0xF7, 0x53, 0xB9, 0x50, 0x57, 0x18, 0x10, 0x03, + 0xDE, 0x21, 0x54, 0x7D, 0x20, 0x54, 0x9D, 0x20, 0x54, 0x90, 0x03, 0xFE, 0x21, 0x54, 0xDE, 0xF7, + 0x53, 0xD0, 0x0F, 0xB9, 0x20, 0x57, 0xC9, 0xFF, 0xC8, 0x98, 0x90, 0x03, 0xB9, 0x50, 0x57, 0x9D, + 0xF6, 0x53, 0xBD, 0x09, 0x54, 0xDD, 0x35, 0x54, 0xF0, 0x03, 0x4C, 0x6E, 0x53, 0xBC, 0x07, 0x54, + 0xB9, 0xF9, 0x54, 0x85, 0xA7, 0xB9, 0x2F, 0x55, 0x85, 0xA8, 0xBC, 0xDF, 0x53, 0xB1, 0xA7, 0xC9, + 0x40, 0x90, 0x18, 0xC9, 0x60, 0x90, 0x1E, 0xC9, 0xC0, 0x90, 0x2E, 0xBD, 0xE0, 0x53, 0xD0, 0x02, + 0xB1, 0xA7, 0x69, 0x00, 0x9D, 0xE0, 0x53, 0xF0, 0x4D, 0xD0, 0x54, 0x9D, 0x0B, 0x54, 0xC8, 0xB1, + 0xA7, 0xC9, 0x60, 0xB0, 0x14, 0xC9, 0x50, 0x29, 0x0F, 0x9D, 0xE1, 0x53, 0xF0, 0x06, 0xC8, 0xB1, + 0xA7, 0x9D, 0xE2, 0x53, 0xB0, 0x30, 0xC8, 0xB1, 0xA7, 0xC9, 0xBD, 0x90, 0x06, 0xF0, 0x27, 0x09, + 0xF0, 0xD0, 0x20, 0x7D, 0xDD, 0x53, 0x9D, 0xF3, 0x53, 0xBD, 0xE1, 0x53, 0xC9, 0x03, 0xF0, 0x16, + 0xBD, 0x0B, 0x54, 0xC9, 0x17, 0xB0, 0x0A, 0xA9, 0x00, 0x9D, 0x31, 0x54, 0xA9, 0x0F, 0x9D, 0x30, + 0x54, 0xA9, 0xFE, 0x9D, 0x0C, 0x54, 0xC8, 0xB1, 0xA7, 0xF0, 0x01, 0x98, 0x9D, 0xDF, 0x53, 0xBD, + 0x20, 0x54, 0x9D, 0x02, 0xD4, 0xBD, 0x21, 0x54, 0x9D, 0x03, 0xD4, 0xBD, 0x31, 0x54, 0x9D, 0x06, + 0xD4, 0xBD, 0x30, 0x54, 0x9D, 0x05, 0xD4, 0xBD, 0x1E, 0x54, 0x9D, 0x00, 0xD4, 0xBD, 0x1F, 0x54, + 0x9D, 0x01, 0xD4, 0xBD, 0xF5, 0x53, 0x3D, 0x0C, 0x54, 0x9D, 0x04, 0xD4, 0x60, 0x29, 0x0F, 0x85, + 0xA7, 0xB9, 0xB1, 0x56, 0x85, 0xA8, 0xA4, 0xA7, 0xC0, 0x05, 0xB0, 0x0E, 0x8C, 0x78, 0x50, 0xB9, + 0xD7, 0x53, 0x8D, 0x80, 0x52, 0xA4, 0xA8, 0x4C, 0x7A, 0x52, 0xB9, 0xC7, 0x13, 0x8D, 0xC2, 0x13, + 0xA5, 0xFC, 0x20, 0x06, 0x10, 0x4C, 0x9B, 0x12, 0x06, 0x0C, 0x0C, 0x13, 0x13, 0x1D, 0x21, 0x25, + 0x29, 0x29, 0x32, 0x3B, 0x3B, 0x3B, 0x3B, 0x3B, 0x4B, 0x72, 0x72, 0x6F, 0x52, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x01, 0xFE, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD4, 0xF0, 0x0E, 0x2D, 0x4E, 0x71, 0x96, 0xBE, 0xE8, 0x14, + 0x43, 0x74, 0xA9, 0xE1, 0x1C, 0x5A, 0x9C, 0xE2, 0x2D, 0x7C, 0xCF, 0x28, 0x85, 0xE8, 0x52, 0xC1, + 0x37, 0xB4, 0x39, 0xC5, 0x5A, 0xF7, 0x9E, 0x4F, 0x0A, 0xD1, 0xA3, 0x82, 0x6E, 0x68, 0x71, 0x8A, + 0xB3, 0xEE, 0x3C, 0x9E, 0x15, 0xA2, 0x46, 0x04, 0xDC, 0xD0, 0xE2, 0x14, 0x67, 0xDD, 0x79, 0x3C, + 0x29, 0x44, 0x8D, 0x08, 0xB8, 0xA1, 0xC5, 0x28, 0xCD, 0xBA, 0xF1, 0x78, 0x53, 0x87, 0x1A, 0x10, + 0x71, 0x42, 0x89, 0x4F, 0x9B, 0x74, 0xE2, 0xF0, 0xA6, 0x0E, 0x33, 0x20, 0xFF, 0x01, 0x01, 0x02, + 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x04, 0x04, 0x04, 0x04, 0x05, + 0x05, 0x05, 0x06, 0x06, 0x06, 0x07, 0x07, 0x08, 0x08, 0x09, 0x09, 0x0A, 0x0A, 0x0B, 0x0C, 0x0D, + 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x17, 0x18, 0x1A, 0x1B, 0x1D, 0x1F, 0x20, + 0x22, 0x24, 0x27, 0x29, 0x2B, 0x2E, 0x31, 0x34, 0x37, 0x3A, 0x3E, 0x41, 0x45, 0x49, 0x4E, 0x52, + 0x57, 0x5C, 0x62, 0x68, 0x6E, 0x75, 0x7C, 0x83, 0x8B, 0x93, 0x9C, 0xA5, 0xAF, 0xB9, 0xC4, 0xD0, + 0xDD, 0xEA, 0xF8, 0xFF, 0x0C, 0x30, 0x54, 0x58, 0x58, 0x58, 0x78, 0xED, 0x62, 0xD7, 0x4C, 0xC8, + 0x2A, 0x88, 0xE8, 0x48, 0xAA, 0x0C, 0x70, 0xC8, 0x1E, 0x28, 0x87, 0xE9, 0x49, 0xBE, 0xDC, 0xF0, + 0x0C, 0x27, 0x92, 0xFD, 0x6C, 0xDF, 0x3E, 0xAE, 0x17, 0x41, 0xB5, 0xBE, 0x1D, 0x8F, 0xF9, 0x7D, + 0xFF, 0x81, 0x03, 0x49, 0x97, 0xE3, 0x37, 0x81, 0xAE, 0xFC, 0x41, 0x6F, 0xAB, 0xE0, 0x15, 0x55, + 0x58, 0x58, 0x59, 0x59, 0x5A, 0x5A, 0x5B, 0x5B, 0x5B, 0x5C, 0x5C, 0x5D, 0x5D, 0x5D, 0x5E, 0x5E, + 0x5E, 0x5E, 0x5F, 0x5F, 0x5F, 0x5F, 0x60, 0x60, 0x60, 0x60, 0x61, 0x61, 0x62, 0x62, 0x63, 0x63, + 0x63, 0x63, 0x64, 0x64, 0x64, 0x65, 0x65, 0x66, 0x67, 0x67, 0x67, 0x67, 0x68, 0x68, 0x68, 0x68, + 0x69, 0x69, 0x69, 0x69, 0x6A, 0x6A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, + 0x05, 0x00, 0x00, 0x00, 0x00, 0x90, 0x05, 0x04, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0xBE, + 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x9A, 0x7C, 0xFA, 0xFB, 0xDB, 0xF5, 0x9A, 0x79, 0xD9, + 0xAC, 0x84, 0x88, 0xA9, 0xA6, 0xAB, 0x9C, 0x9D, 0x01, 0x04, 0x0A, 0x10, 0x16, 0x1C, 0x22, 0x28, + 0x2E, 0x34, 0x62, 0x68, 0x36, 0x3A, 0x3F, 0x34, 0x47, 0x4D, 0x44, 0x52, 0x59, 0x5D, 0x34, 0x02, + 0x02, 0x00, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x00, 0x17, 0x2C, 0x17, 0x1C, 0x07, + 0x00, 0x1E, 0x23, 0x00, 0x28, 0x0A, 0x25, 0x0D, 0x12, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x23, 0x2A, 0x0A, 0x12, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x01, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0F, 0x17, 0x15, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, + 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x09, 0x09, + 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x09, 0x09, 0x09, + 0x09, 0x11, 0x01, 0x09, 0x01, 0x09, 0x01, 0x51, 0x51, 0xFF, 0x31, 0x51, 0x01, 0x01, 0x01, 0xFF, + 0x31, 0x51, 0x01, 0x01, 0x01, 0xFF, 0x31, 0x51, 0x01, 0x01, 0x01, 0xFF, 0x31, 0x51, 0x01, 0x01, + 0x01, 0xFF, 0x31, 0x51, 0x01, 0x01, 0x01, 0xFF, 0x31, 0x51, 0x01, 0x01, 0x01, 0xFF, 0x31, 0x51, + 0x01, 0x01, 0x01, 0xFF, 0x31, 0x51, 0x01, 0x01, 0x01, 0xFF, 0x31, 0xFF, 0x51, 0x51, 0x51, 0xFF, + 0x91, 0x51, 0x50, 0x90, 0xFF, 0x51, 0x01, 0x01, 0x01, 0xFF, 0x91, 0x90, 0xFF, 0x91, 0x51, 0x51, + 0x21, 0x20, 0xFF, 0x91, 0x51, 0x51, 0x90, 0xFF, 0x25, 0x51, 0x50, 0x30, 0x30, 0x02, 0xFF, 0x51, + 0x51, 0xF2, 0xFF, 0x91, 0x90, 0x50, 0x20, 0xFF, 0x91, 0x51, 0x04, 0x51, 0x05, 0xFF, 0x91, 0x51, + 0x51, 0x51, 0x51, 0xFF, 0x8C, 0x80, 0x00, 0x8C, 0x8C, 0x87, 0x83, 0x80, 0x06, 0x80, 0x8C, 0x87, + 0x84, 0x80, 0x0C, 0x80, 0x8C, 0x89, 0x85, 0x80, 0x12, 0x80, 0x8C, 0x88, 0x85, 0x80, 0x18, 0x80, + 0x8C, 0x87, 0x85, 0x80, 0x1E, 0x80, 0x8C, 0x8A, 0x85, 0x80, 0x24, 0x80, 0x8C, 0x88, 0x83, 0x80, + 0x2A, 0x80, 0x8C, 0x89, 0x84, 0x80, 0x30, 0x80, 0x00, 0x8C, 0x80, 0x80, 0x00, 0x5C, 0x2A, 0x26, + 0x5A, 0x00, 0x8C, 0x86, 0x84, 0x80, 0x40, 0x2E, 0x5F, 0x00, 0x5F, 0x1D, 0x1A, 0x14, 0x10, 0x00, + 0x5C, 0x26, 0x22, 0x5F, 0x00, 0x8C, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x8C, 0x80, 0x07, 0x00, + 0x5F, 0x8C, 0x8C, 0x80, 0x5E, 0x5F, 0x80, 0x80, 0x80, 0x80, 0x63, 0x5C, 0x22, 0x18, 0x10, 0x80, + 0x00, 0x98, 0x10, 0x96, 0x40, 0x40, 0xFF, 0x8D, 0x01, 0xFF, 0x98, 0x01, 0xFF, 0x9B, 0x12, 0x20, + 0x20, 0xFF, 0x98, 0x03, 0x93, 0x01, 0xFF, 0x87, 0x02, 0x85, 0x01, 0xFF, 0x98, 0xFF, 0x88, 0x08, + 0x08, 0x08, 0xFF, 0x88, 0xFF, 0x88, 0x01, 0xFF, 0x81, 0x84, 0x86, 0xFF, 0x88, 0x02, 0x87, 0x20, + 0x20, 0xFF, 0x00, 0x10, 0x00, 0x20, 0xE0, 0x04, 0x00, 0x90, 0x08, 0xA0, 0x01, 0x0B, 0x40, 0xD0, + 0x30, 0xD0, 0x0F, 0x00, 0x20, 0x30, 0x30, 0x15, 0x00, 0x00, 0x00, 0x38, 0x1A, 0x08, 0x00, 0x00, + 0x20, 0x80, 0x20, 0x20, 0x80, 0x00, 0x00, 0x01, 0x26, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0xC0, 0x2F, 0x88, 0x00, 0x00, 0x00, 0x2F, 0x70, 0x70, 0x2F, 0xFF, 0xA0, 0x00, 0x88, 0x00, + 0x00, 0x00, 0x04, 0xFF, 0xA0, 0x00, 0xB0, 0x00, 0x00, 0xA0, 0x00, 0xFF, 0xA0, 0x00, 0x98, 0x00, + 0x00, 0x00, 0xFF, 0x01, 0xFF, 0xA0, 0x00, 0x88, 0x00, 0x00, 0x02, 0xFF, 0xA0, 0x00, 0x88, 0x00, + 0x00, 0x00, 0x88, 0x00, 0x00, 0x04, 0xFF, 0x98, 0xFF, 0xA0, 0x00, 0xFF, 0xA0, 0x00, 0xFF, 0xF3, + 0x50, 0x40, 0x34, 0xFF, 0x00, 0x00, 0x01, 0x05, 0xF1, 0x60, 0xA1, 0x12, 0x0C, 0x0A, 0xFE, 0x00, + 0xF1, 0xF3, 0xF1, 0x04, 0x03, 0xA1, 0x2E, 0x00, 0xF1, 0x60, 0xF1, 0x09, 0x02, 0x01, 0x00, 0x01, + 0x21, 0xF1, 0x80, 0x81, 0x08, 0x05, 0xFF, 0x00, 0xF1, 0x60, 0xF1, 0x03, 0x02, 0x01, 0xA1, 0x0E, + 0x0A, 0xFE, 0x00, 0xF1, 0x02, 0xF1, 0x01, 0x00, 0xF1, 0xA0, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x02, 0x00, 0x80, 0x40, 0xA0, 0x70, 0x20, 0xF0, 0x08, 0xA0, 0xF0, 0x00, 0x00, + 0x01, 0x02, 0x03, 0x04, 0x05, 0x08, 0x05, 0x0F, 0x05, 0x0B, 0x0D, 0x0C, 0x09, 0x0A, 0x06, 0x07, + 0xF0, 0x05, 0x08, 0xF2, 0x05, 0x08, 0x05, 0x0B, 0x0D, 0x0C, 0x09, 0x0A, 0x10, 0x11, 0x0E, 0xFF, + 0x00, 0xF0, 0x12, 0x12, 0x13, 0x14, 0x15, 0x16, 0x29, 0x29, 0x2A, 0x2B, 0x2E, 0x2F, 0x33, 0x30, + 0x31, 0x32, 0x2C, 0x2D, 0xF0, 0x29, 0x29, 0xF2, 0x2A, 0x2B, 0x2E, 0x2F, 0x33, 0x30, 0x31, 0x32, + 0x2C, 0x34, 0x35, 0xFF, 0x00, 0xF0, 0x24, 0x24, 0x25, 0x26, 0x27, 0x28, 0x18, 0x1D, 0x17, 0x22, + 0x17, 0x23, 0x1E, 0x1C, 0x19, 0x1F, 0x1A, 0x1B, 0xF0, 0x18, 0x1D, 0xF2, 0x17, 0x22, 0x17, 0x23, + 0x1E, 0x1C, 0x19, 0x1F, 0x1A, 0x21, 0x20, 0xFF, 0x00, 0x01, 0x49, 0x01, 0x6E, 0x40, 0xBE, 0x45, + 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0x6E, 0x45, 0x90, 0x6E, + 0x40, 0x6E, 0xBD, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, + 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0x6E, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBD, 0x45, + 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x45, 0x90, 0x6E, + 0x40, 0x6E, 0xBE, 0x6E, 0x6E, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBD, 0x45, 0x90, 0x6E, 0x40, 0x6E, + 0xBE, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, + 0x6E, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBD, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x00, 0x01, 0x4A, + 0x35, 0x73, 0x40, 0xBE, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, + 0x73, 0x73, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBD, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, 0x73, 0xBE, + 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, 0x73, 0x73, 0x45, 0x90, + 0x73, 0x40, 0x73, 0xBD, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, 0x73, 0xBE, 0x45, 0x90, 0x73, 0x40, + 0x73, 0xBE, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, 0x73, 0x73, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBD, + 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, 0x73, 0xBE, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBE, 0x45, 0x90, + 0x73, 0x40, 0x73, 0xBE, 0x73, 0x73, 0x45, 0x90, 0x73, 0x40, 0x73, 0xBD, 0x45, 0x90, 0x73, 0x40, + 0x73, 0xBE, 0x00, 0x01, 0x4A, 0x35, 0x75, 0x40, 0xBE, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBE, 0x45, + 0x90, 0x75, 0x40, 0x75, 0xBE, 0x75, 0x75, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBD, 0x45, 0x90, 0x75, + 0x40, 0x75, 0xBE, 0x75, 0xBE, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBE, 0x45, 0x90, 0x75, 0x40, 0x75, + 0xBE, 0x75, 0x75, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBD, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBE, 0x75, + 0xBE, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBE, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBE, 0x75, 0x75, 0x45, + 0x90, 0x75, 0x40, 0x75, 0xBD, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBE, 0x75, 0xBE, 0x45, 0x90, 0x75, + 0x40, 0x75, 0xBE, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBE, 0x75, 0x75, 0x45, 0x90, 0x75, 0x40, 0x75, + 0xBD, 0x45, 0x90, 0x75, 0x40, 0x75, 0xBE, 0x00, 0x01, 0x4A, 0x35, 0x70, 0x40, 0xBE, 0x45, 0x90, + 0x70, 0x40, 0x70, 0xBE, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x70, 0x70, 0x45, 0x90, 0x70, 0x40, + 0x70, 0xBD, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x70, 0xBE, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, + 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x70, 0x70, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBD, 0x45, 0x90, + 0x70, 0x40, 0x70, 0xBE, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, + 0x6E, 0xBE, 0x6E, 0x6E, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBD, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, + 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0x6E, + 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBD, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x00, 0x01, 0x4A, 0x35, + 0x70, 0x40, 0xBE, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x70, + 0x70, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBD, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x70, 0xBE, 0x45, + 0x90, 0x70, 0x4A, 0x35, 0x70, 0x40, 0xBE, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x70, 0xBE, 0x45, + 0x90, 0x70, 0x4A, 0x35, 0x70, 0x50, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x11, 0x70, 0xBE, 0x01, + 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x70, 0x70, 0x45, 0x90, + 0x70, 0x40, 0x70, 0xBD, 0x45, 0x90, 0x70, 0x40, 0x70, 0x4A, 0x37, 0xBE, 0x4A, 0x21, 0x70, 0x40, + 0xBE, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x45, 0x90, 0x70, 0x40, 0x70, 0xBE, 0x70, 0x70, 0x45, + 0x90, 0x70, 0x40, 0x70, 0xFE, 0x0E, 0x70, 0xBE, 0x00, 0x0D, 0x40, 0x70, 0xBD, 0x0C, 0x70, 0xBD, + 0x0E, 0x70, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, + 0x6E, 0xBD, 0x0C, 0x70, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, + 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, + 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x78, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, + 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, + 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x00, 0x0C, 0x40, 0x70, 0xBD, 0x0B, + 0x70, 0xBD, 0x0E, 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x70, + 0xBD, 0x0B, 0x70, 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, + 0x0D, 0x78, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, + 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x6E, + 0xBD, 0x0B, 0x6E, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xFD, + 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x00, 0x0C, 0x40, 0x75, 0xBD, 0x0B, 0x75, 0xBD, + 0x0E, 0x81, 0xBD, 0x0C, 0x75, 0xBD, 0x0D, 0x81, 0xBD, 0x0B, 0x75, 0xBD, 0x0E, 0x75, 0xBD, 0x0B, + 0x75, 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x78, + 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, + 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, + 0x6E, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, + 0xBD, 0x0E, 0x6E, 0xBD, 0x6E, 0xBD, 0x6E, 0xBD, 0x00, 0x0C, 0x40, 0x70, 0xBD, 0x0B, 0x70, 0xBD, + 0x0E, 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, + 0x6E, 0xBD, 0x0C, 0x70, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, + 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, + 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x78, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, + 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, + 0xBD, 0x0E, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x00, 0x0C, 0x40, 0x70, 0xBD, 0x0B, 0x70, 0xBD, + 0x0E, 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x70, 0xBD, 0x0B, + 0x70, 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x78, + 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, + 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, + 0x6E, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, + 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x00, 0x0C, 0x40, 0x70, 0xBD, 0x0B, + 0x70, 0xBD, 0x0E, 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x70, + 0xBD, 0x0B, 0x70, 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, + 0x0D, 0x78, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, + 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x6E, + 0xBD, 0x0B, 0x6E, 0xBD, 0x0C, 0x6B, 0xBD, 0x0B, 0x6B, 0xBD, 0x0E, 0x77, 0xBD, 0x0C, 0x6B, 0xBD, + 0x0D, 0x77, 0xBD, 0x0B, 0x6B, 0xBD, 0x0E, 0x6B, 0xBD, 0x0B, 0x6B, 0xBD, 0x00, 0x0C, 0x40, 0x70, + 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, + 0x0E, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0C, 0x70, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x7C, 0xBD, 0x0C, + 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0C, 0x6C, + 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x78, 0xBD, 0x0B, 0x6C, 0xBD, + 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, + 0x6E, 0x5A, 0x21, 0x50, 0xBD, 0x0D, 0x6E, 0xBD, 0x0E, 0x46, 0xE6, 0x6E, 0x50, 0x0C, 0x6E, 0xBD, + 0x00, 0x0C, 0x40, 0x6C, 0xFD, 0x0D, 0x6C, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x45, 0xA0, 0x6C, 0x50, + 0x6C, 0xBD, 0x78, 0xBD, 0x6C, 0xBD, 0x0C, 0x6C, 0xFD, 0x0D, 0x6C, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, + 0x45, 0xA0, 0x6C, 0x50, 0x6C, 0xBD, 0x0E, 0x46, 0xE9, 0x78, 0x50, 0xFE, 0x0C, 0x6E, 0xFD, 0x0D, + 0x6E, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x45, 0xA0, 0x6E, 0x50, 0x6E, 0xBD, 0x7A, 0xBD, 0x6E, 0xBD, + 0x0C, 0x6F, 0xBD, 0x5A, 0x21, 0x50, 0x0D, 0x6F, 0xBD, 0x0C, 0x6F, 0xBD, 0x5A, 0x3A, 0x5A, 0x21, + 0x40, 0x6F, 0xBD, 0x0E, 0x7B, 0xBD, 0x6F, 0xBD, 0x00, 0x0C, 0x40, 0x6C, 0xFD, 0x0D, 0x6C, 0xBD, + 0x0C, 0x6C, 0xBD, 0x0D, 0x45, 0xA0, 0x6C, 0x50, 0x6C, 0xBD, 0x78, 0xBD, 0x6C, 0xBD, 0x0C, 0x6C, + 0xFD, 0x0D, 0x6C, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x45, 0xA0, 0x6C, 0x50, 0x6C, 0xBD, 0x0E, 0x46, + 0xE9, 0x78, 0x50, 0xFE, 0x0C, 0x6C, 0xFD, 0x0D, 0x6C, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x45, 0xA0, + 0x6C, 0x50, 0x6C, 0xBD, 0x78, 0xBD, 0x6C, 0xBD, 0x0C, 0x6C, 0xFD, 0x0D, 0x6C, 0xBD, 0x0C, 0x6C, + 0xBD, 0x0D, 0x45, 0xA0, 0x6C, 0x50, 0x6C, 0xBD, 0x0E, 0x46, 0xE9, 0x78, 0x50, 0xFE, 0x00, 0x0C, + 0x40, 0x70, 0xF6, 0x46, 0xFA, 0xBE, 0x50, 0xCD, 0x00, 0x0C, 0x40, 0x70, 0xBD, 0x0B, 0x70, 0xBD, + 0x0E, 0x70, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, + 0x6E, 0xBD, 0x0C, 0x70, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, + 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, + 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x78, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, + 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, + 0xBD, 0x0C, 0x6E, 0xBD, 0x0E, 0x6E, 0xFD, 0x00, 0x0C, 0x40, 0x70, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, + 0x7C, 0xBD, 0x0C, 0x70, 0xBD, 0x0D, 0x7C, 0xBD, 0x0B, 0x70, 0xBD, 0x0E, 0x70, 0xBD, 0x0B, 0x70, + 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x78, 0xBD, + 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, + 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x6E, 0xBD, 0x0B, 0x6E, + 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, 0x78, 0xBD, + 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x00, 0x0C, 0x40, 0x69, 0xBD, 0x0B, 0x69, + 0xBD, 0x0E, 0x75, 0xBD, 0x0C, 0x69, 0xBD, 0x0D, 0x75, 0xBD, 0x0B, 0x69, 0xBD, 0x0E, 0x69, 0xBD, + 0x0B, 0x69, 0xBD, 0x0C, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x78, 0xBD, 0x0C, 0x6C, 0xBD, 0x0D, + 0x78, 0xBD, 0x0B, 0x6C, 0xBD, 0x0E, 0x6C, 0xBD, 0x0B, 0x6C, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, + 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, 0x7A, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x6E, 0xBD, + 0x0B, 0x6E, 0xBD, 0x0C, 0x6E, 0xBD, 0x0B, 0x6E, 0xBD, 0x0E, 0x7A, 0xBD, 0x0C, 0x6E, 0xBD, 0x0D, + 0x7A, 0xBD, 0x0E, 0x6E, 0xBD, 0x6E, 0xBD, 0x6E, 0xBD, 0x00, 0x15, 0x4A, 0x01, 0x6E, 0x40, 0xBE, + 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0x6E, 0x45, 0x90, + 0x6E, 0x40, 0x6E, 0xBD, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, + 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0x6E, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBD, + 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x45, 0x90, + 0x6E, 0x40, 0x6E, 0xBE, 0x6E, 0x6E, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBD, 0x45, 0x90, 0x6E, 0x40, + 0x6E, 0xBE, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, + 0x6E, 0x6E, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBD, 0x45, 0x90, 0x6E, 0x40, 0x6E, 0xBE, 0x00, 0x02, + 0x45, 0xE0, 0x8B, 0x50, 0xEB, 0x46, 0xAD, 0xBE, 0x50, 0xE9, 0x09, 0x45, 0xC0, 0x8E, 0x50, 0xFC, + 0x03, 0x45, 0xC0, 0x8E, 0x50, 0xFC, 0x0F, 0x45, 0xA0, 0x8E, 0x50, 0xFE, 0x00, 0x02, 0x45, 0xE0, + 0x8D, 0x50, 0xEC, 0x46, 0x9C, 0xBE, 0x50, 0xF8, 0x09, 0x45, 0xE0, 0x90, 0x50, 0xEA, 0xBE, 0xF9, + 0x00, 0x05, 0x45, 0xE0, 0x8F, 0x50, 0xEE, 0x46, 0xAD, 0xBE, 0x50, 0xF6, 0x07, 0x45, 0xD0, 0x8D, + 0x50, 0xF4, 0xBE, 0xBD, 0x04, 0x45, 0xD0, 0x8D, 0x50, 0xF4, 0xBE, 0xBD, 0x00, 0x06, 0x45, 0xD0, + 0x8F, 0x50, 0xF4, 0x46, 0x9D, 0xBE, 0x50, 0xF2, 0x46, 0xAD, 0xBE, 0x50, 0x09, 0x45, 0xD0, 0x8B, + 0x50, 0xF7, 0x46, 0x8E, 0xBE, 0x50, 0xED, 0x00, 0x50, 0xBD, 0x05, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, + 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x06, 0x40, 0x8F, 0xBE, 0xFD, 0x0A, + 0x99, 0xBD, 0x9B, 0x05, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x07, 0x40, 0x8F, 0xBE, 0x45, + 0xA0, 0x8F, 0x57, 0x21, 0x06, 0x40, 0x8F, 0xBE, 0xFD, 0x0A, 0x99, 0xBD, 0x9B, 0x03, 0x90, 0xBE, + 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, + 0xFE, 0x45, 0x90, 0x90, 0x50, 0x04, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBE, 0x45, 0xA0, + 0x8D, 0x57, 0x21, 0x06, 0x40, 0x8D, 0xBE, 0x04, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x08, 0x40, 0x8A, + 0xBE, 0xFC, 0x00, 0x46, 0x00, 0xBE, 0x50, 0x05, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x40, + 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x06, 0x40, 0x8F, 0xBE, 0xFC, 0x05, 0x45, 0xA0, 0x8F, + 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x07, 0x40, 0x8F, 0xBE, 0x45, 0xA0, + 0x8F, 0x57, 0x21, 0x06, 0x40, 0x8F, 0xBE, 0xFA, 0x03, 0x90, 0xBE, 0x45, 0xA0, 0x90, 0x57, 0x21, + 0x40, 0x90, 0xBE, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0xFE, 0x45, 0x90, 0x90, 0x50, + 0x04, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBE, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x06, 0x40, + 0x8D, 0xBE, 0x04, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x08, 0x40, 0x8A, 0xBE, 0xFC, 0x00, 0x05, 0x40, + 0x8F, 0xBE, 0x0A, 0x41, 0x02, 0x95, 0xBD, 0x43, 0x00, 0x97, 0x50, 0x05, 0x8F, 0xBE, 0x0A, 0x97, + 0xBD, 0x05, 0x45, 0xA0, 0x8F, 0x50, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBD, 0x47, 0x21, 0xBE, 0x50, + 0x8F, 0xBD, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x0A, 0x94, 0xBD, 0x05, 0x45, 0xA0, + 0x8F, 0x50, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0x57, 0x21, 0x04, 0x40, 0x8D, 0xBE, 0xBD, 0x45, 0xA0, + 0x8D, 0x50, 0xBD, 0x8D, 0xBE, 0xFE, 0x45, 0xA0, 0x8D, 0x50, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBD, + 0x47, 0x21, 0xBE, 0x50, 0x8D, 0xBD, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBE, 0x0A, 0x8B, + 0xBD, 0x04, 0x45, 0xA0, 0x8D, 0x50, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBD, 0x00, 0x05, 0x40, 0x8F, + 0xBE, 0x0A, 0x97, 0xBD, 0x05, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x0A, 0x97, 0xBD, + 0x05, 0x45, 0xA0, 0x8F, 0x50, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBD, 0x47, 0x21, 0xBE, 0x50, 0x8F, + 0xBD, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x0A, 0x96, 0xBD, 0x05, 0x45, 0xA0, 0x8F, + 0x50, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0x57, 0x21, 0x04, 0x40, 0x8D, 0xBE, 0x0A, 0x92, 0xBD, 0x04, + 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBE, 0x0A, 0x92, 0xBD, 0x04, 0x45, 0xA0, 0x8D, 0x50, + 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBD, 0x47, 0x21, 0xBE, 0x50, 0x8D, 0xBD, 0x45, 0xA0, 0x8D, 0x57, + 0x21, 0x40, 0x8D, 0xBE, 0xFE, 0x45, 0xA0, 0x8D, 0x50, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBD, 0x00, + 0x02, 0x40, 0x8D, 0xBE, 0x0A, 0x90, 0xBD, 0x02, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBE, + 0x0A, 0x90, 0xBD, 0x02, 0x45, 0xA0, 0x8D, 0x50, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBD, 0x47, 0x21, + 0xBE, 0x50, 0x03, 0x90, 0xBD, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0xBD, 0x0A, 0x45, + 0xB0, 0x94, 0x50, 0xBD, 0x03, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBD, 0x92, 0xBE, 0x0A, 0x99, 0xBD, + 0x03, 0x45, 0xA0, 0x92, 0x57, 0x21, 0x40, 0x92, 0xBE, 0x0A, 0x99, 0xBD, 0x03, 0x45, 0xA0, 0x92, + 0x50, 0x92, 0x57, 0x21, 0x40, 0x92, 0xBD, 0x45, 0xD0, 0x92, 0x50, 0xF4, 0xBE, 0xBD, 0x00, 0x03, + 0x40, 0x90, 0xBE, 0x0A, 0x88, 0xBD, 0x03, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0x0A, + 0x88, 0xBD, 0x03, 0x45, 0xA0, 0x90, 0x50, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBD, 0x47, 0x21, 0xBE, + 0x50, 0x90, 0xBD, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0x0A, 0x8B, 0xBD, 0x03, 0x45, + 0xA0, 0x90, 0x50, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBD, 0x92, 0xBE, 0x0A, 0x90, 0xBD, 0x03, 0x45, + 0xA0, 0x92, 0x57, 0x21, 0x40, 0x92, 0xBE, 0x0A, 0x92, 0xBD, 0x03, 0x45, 0xA0, 0x92, 0x50, 0x92, + 0x57, 0x21, 0x40, 0x92, 0xBD, 0x47, 0x21, 0xBE, 0x50, 0x08, 0x93, 0xBD, 0x45, 0xA0, 0x93, 0x57, + 0x21, 0x40, 0x93, 0xBE, 0x0A, 0x96, 0xFD, 0x08, 0x93, 0x57, 0x21, 0x40, 0x93, 0xBD, 0x00, 0x50, + 0xBD, 0x05, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, + 0x21, 0x06, 0x40, 0x8F, 0xBE, 0xFC, 0x05, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x45, + 0xA0, 0x8F, 0x57, 0x21, 0x07, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x06, 0x40, 0x8F, + 0xBE, 0xFA, 0x03, 0x90, 0xBE, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0x45, 0xA0, 0x90, + 0x57, 0x21, 0x40, 0x90, 0xBE, 0xFE, 0x45, 0x90, 0x90, 0x50, 0x04, 0x45, 0xA0, 0x8D, 0x57, 0x21, + 0x40, 0x8D, 0xBE, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x06, 0x40, 0x8D, 0xBE, 0x04, 0x45, 0xA0, 0x8D, + 0x57, 0x21, 0x08, 0x40, 0x8A, 0xBE, 0xFC, 0x00, 0x04, 0x45, 0xE0, 0x8B, 0x50, 0xF0, 0x46, 0xAD, + 0xBE, 0x50, 0xF4, 0x45, 0xE0, 0x8D, 0x50, 0xF0, 0x46, 0x90, 0x8D, 0x57, 0x21, 0x45, 0xA0, 0x8D, + 0x57, 0x21, 0x46, 0x9A, 0x8D, 0x40, 0xBE, 0x0A, 0x8A, 0xFD, 0x04, 0x8D, 0x57, 0x21, 0x40, 0x8D, + 0xBD, 0x00, 0x03, 0x40, 0x90, 0xBE, 0x0A, 0x8F, 0xBD, 0x03, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, + 0x90, 0xBE, 0x0A, 0x8F, 0xBD, 0x03, 0x45, 0xA0, 0x90, 0x50, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBD, + 0x47, 0x21, 0xBE, 0x50, 0x90, 0xBD, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0x0A, 0x8F, + 0xBD, 0x03, 0x45, 0xA0, 0x90, 0x50, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBD, 0x92, 0xBE, 0x0A, 0x8D, + 0xBD, 0x03, 0x45, 0xA0, 0x92, 0x57, 0x21, 0x40, 0x92, 0xBE, 0x0A, 0x8D, 0xBD, 0x03, 0x45, 0xA0, + 0x92, 0x50, 0x92, 0x57, 0x21, 0x40, 0x92, 0xBD, 0x47, 0x21, 0xBE, 0x50, 0x08, 0x93, 0xBD, 0x45, + 0xA0, 0x93, 0x57, 0x21, 0x40, 0x93, 0xBE, 0xBD, 0x0A, 0x45, 0xA0, 0x94, 0x50, 0xBD, 0x08, 0x93, + 0x57, 0x21, 0x40, 0x93, 0xBD, 0x00, 0x08, 0x45, 0xD0, 0x8C, 0x50, 0xF6, 0xBE, 0xCD, 0x00, 0x02, + 0x40, 0x8D, 0xBE, 0x0A, 0x90, 0xBD, 0x02, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBE, 0x0A, + 0x90, 0xBD, 0x02, 0x45, 0xA0, 0x8D, 0x50, 0x8D, 0x57, 0x21, 0x40, 0x8D, 0xBD, 0x47, 0x21, 0xBE, + 0x50, 0x03, 0x90, 0xBD, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0xBD, 0x0A, 0x45, 0xA0, + 0x92, 0x50, 0xBD, 0x03, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBD, 0x92, 0xBE, 0x0A, 0x8D, 0xBD, 0x03, + 0x45, 0xA0, 0x92, 0x57, 0x21, 0x40, 0x92, 0xBE, 0x0A, 0x8F, 0xBD, 0x03, 0x45, 0xA0, 0x92, 0x50, + 0x92, 0x57, 0x21, 0x40, 0x92, 0xBD, 0x45, 0xD0, 0x92, 0x50, 0xF4, 0xBE, 0xBD, 0x00, 0x46, 0x00, + 0xBE, 0x50, 0x05, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, + 0x57, 0x21, 0x06, 0x40, 0x8F, 0xBE, 0xBD, 0x0A, 0x97, 0xBD, 0x96, 0x05, 0x45, 0xA0, 0x8F, 0x57, + 0x21, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x07, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, + 0x57, 0x21, 0x06, 0x40, 0x8F, 0xBE, 0xBD, 0x0A, 0x9B, 0xBD, 0x99, 0xBD, 0x97, 0x03, 0x90, 0xBE, + 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, + 0xFE, 0x45, 0x90, 0x90, 0x50, 0x07, 0x8D, 0xBD, 0x04, 0x8D, 0xBE, 0x45, 0xA0, 0x8D, 0x57, 0x21, + 0x06, 0x40, 0x8D, 0xBE, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x08, 0x40, 0x8A, 0xFD, 0xBE, 0xBD, 0x00, + 0x50, 0xBD, 0x05, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, + 0x57, 0x21, 0x06, 0x40, 0x8F, 0xBE, 0xBD, 0x0A, 0x97, 0xBD, 0x96, 0xBD, 0x93, 0x05, 0x8F, 0xBE, + 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x07, 0x40, 0x8F, 0xBE, 0x45, 0xA0, 0x8F, 0x57, 0x21, 0x06, 0x40, + 0x8F, 0xBE, 0xFD, 0x0A, 0x99, 0xBD, 0x97, 0x03, 0x90, 0xBE, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, + 0x90, 0xBE, 0x45, 0xA0, 0x90, 0x57, 0x21, 0x40, 0x90, 0xBE, 0xFE, 0x45, 0xA0, 0x90, 0x50, 0x07, + 0x8D, 0xBD, 0x04, 0x8D, 0xBE, 0x45, 0xA0, 0x8D, 0x57, 0x21, 0x06, 0x40, 0x8D, 0xBE, 0x45, 0xA0, + 0x8D, 0x57, 0x21, 0x08, 0x40, 0x8A, 0xBD, 0xBE, 0xFD, 0x00, 0x14, 0x4F, 0x04, 0xA1, 0x10, 0x40, + 0x99, 0x14, 0x9E, 0x10, 0xA1, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA1, 0x10, 0x99, 0x14, 0x9E, 0x10, + 0xA1, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA0, 0x10, 0x99, 0x14, 0x99, 0x10, 0xA0, 0x14, 0xA1, 0x10, + 0x99, 0x14, 0x9E, 0x10, 0xA1, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA1, 0x10, 0x99, 0x14, 0x9E, 0x10, + 0xA1, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA0, 0x10, 0x99, 0x14, 0x99, 0x10, 0xA0, 0x14, 0xA1, 0x10, + 0x99, 0x14, 0x9E, 0x10, 0xA1, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA1, 0x10, 0x99, 0x14, 0x9E, 0x10, + 0xA1, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA0, 0x10, 0x99, 0x14, 0x99, 0x10, 0xA0, 0x14, 0xA1, 0x10, + 0x99, 0x14, 0x9E, 0x10, 0xA1, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA1, 0x10, 0x99, 0x14, 0x9E, 0x10, + 0xA1, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA0, 0x10, 0x99, 0x14, 0x99, 0x10, 0xA0, 0x00, 0x14, 0x40, + 0xA1, 0x10, 0x9E, 0x14, 0x9E, 0x10, 0xA1, 0x14, 0x9A, 0x10, 0x9E, 0x14, 0xA1, 0x10, 0x9A, 0x14, + 0x9E, 0x10, 0xA1, 0x14, 0x9A, 0x10, 0x9E, 0x14, 0xA3, 0x10, 0x9A, 0x14, 0xA0, 0x10, 0xA3, 0x14, + 0xA1, 0x10, 0xA0, 0x14, 0x9E, 0x10, 0xA1, 0x14, 0x9A, 0x10, 0x9E, 0x14, 0xA1, 0x10, 0x9A, 0x14, + 0x9E, 0x10, 0xA1, 0x14, 0x9A, 0x10, 0x9E, 0x14, 0xA3, 0x10, 0x9A, 0x14, 0xA0, 0x10, 0xA3, 0x14, + 0xA1, 0x10, 0x9E, 0x14, 0x9E, 0x10, 0xA1, 0x14, 0x9A, 0x10, 0x9E, 0x14, 0xA1, 0x10, 0x9A, 0x14, + 0x9E, 0x10, 0xA1, 0x14, 0x9A, 0x10, 0x9E, 0x14, 0xA3, 0x10, 0x9A, 0x14, 0xA0, 0x10, 0xA3, 0x14, + 0xA1, 0x10, 0xA0, 0x14, 0x9E, 0x10, 0xA1, 0x14, 0x9A, 0x10, 0x9E, 0x14, 0xA1, 0x10, 0x9A, 0x14, + 0x9E, 0x10, 0xA1, 0x14, 0x9A, 0x10, 0x9E, 0x14, 0xA3, 0x10, 0x9A, 0x14, 0xA0, 0x10, 0xA3, 0x00, + 0x14, 0x40, 0xA0, 0x10, 0xA0, 0x14, 0x9C, 0x10, 0xA0, 0x14, 0x99, 0x10, 0x9C, 0x14, 0xA0, 0x10, + 0x99, 0x14, 0x9C, 0x10, 0xA0, 0x14, 0x99, 0x10, 0x9C, 0x14, 0xA0, 0x10, 0x99, 0x14, 0x9C, 0x10, + 0xA0, 0x14, 0xA0, 0x10, 0x9C, 0x14, 0x9C, 0x10, 0xA0, 0x14, 0x99, 0x10, 0x9C, 0x14, 0xA0, 0x10, + 0x99, 0x14, 0x9C, 0x10, 0xA0, 0x14, 0x99, 0x10, 0x9C, 0x14, 0xA0, 0x10, 0x99, 0x14, 0x9C, 0x10, + 0xA0, 0x14, 0xA0, 0x10, 0x9C, 0x14, 0x9C, 0x10, 0xA0, 0x14, 0x99, 0x10, 0x9C, 0x14, 0xA0, 0x10, + 0x99, 0x14, 0x9C, 0x10, 0xA0, 0x14, 0x99, 0x10, 0x9C, 0x14, 0xA0, 0x10, 0x99, 0x14, 0x9C, 0x10, + 0xA0, 0x14, 0xA0, 0x10, 0x9C, 0x14, 0x9C, 0x10, 0xA0, 0x14, 0x99, 0x10, 0x9C, 0x14, 0xA0, 0x10, + 0x99, 0x14, 0x9C, 0x10, 0xA0, 0x14, 0x99, 0x10, 0x9C, 0x14, 0xA0, 0x10, 0x99, 0x14, 0x9C, 0x10, + 0xA0, 0x00, 0x14, 0x40, 0xA3, 0x10, 0xA0, 0x14, 0xA0, 0x10, 0xA3, 0x14, 0x9B, 0x10, 0xA0, 0x14, + 0xA3, 0x10, 0x9B, 0x14, 0xA0, 0x10, 0xA3, 0x14, 0x9B, 0x10, 0xA0, 0x14, 0xA5, 0x10, 0x9B, 0x14, + 0xA2, 0x10, 0xA5, 0x14, 0xA3, 0x10, 0xA2, 0x14, 0xA0, 0x10, 0xA3, 0x14, 0x9B, 0x10, 0xA0, 0x14, + 0xA3, 0x10, 0x9B, 0x14, 0xA0, 0x10, 0xA3, 0x14, 0x9B, 0x10, 0xA0, 0x14, 0xA3, 0x10, 0x9B, 0x14, + 0xA0, 0x10, 0xA5, 0x14, 0xA3, 0x10, 0xA0, 0x14, 0x9E, 0x10, 0xA3, 0x14, 0x99, 0x10, 0x9E, 0x14, + 0xA3, 0x10, 0x99, 0x14, 0x9E, 0x10, 0xA3, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA3, 0x10, 0x99, 0x14, + 0xA0, 0x10, 0xA3, 0x14, 0xA2, 0x10, 0xA0, 0x14, 0x9E, 0x10, 0xA2, 0x14, 0x99, 0x10, 0x9E, 0x14, + 0xA2, 0x10, 0x99, 0x14, 0x9E, 0x10, 0xA2, 0x14, 0x99, 0x10, 0x9E, 0x14, 0xA2, 0x10, 0x99, 0x14, + 0x9E, 0x10, 0xA2, 0x00, 0x14, 0x40, 0xA0, 0x10, 0x9E, 0x14, 0x9B, 0x10, 0xA0, 0x14, 0x97, 0x10, + 0x9B, 0x14, 0xA0, 0x10, 0x97, 0x14, 0x9B, 0x10, 0xA0, 0x14, 0x97, 0x10, 0x9B, 0x14, 0xA2, 0x10, + 0x97, 0x14, 0x9E, 0x10, 0xA2, 0x14, 0xA0, 0x10, 0x9E, 0x14, 0x9B, 0x10, 0xA0, 0x14, 0x97, 0x10, + 0x9B, 0x14, 0xA0, 0x10, 0x97, 0x14, 0x9B, 0x10, 0xA0, 0x14, 0x97, 0x10, 0x9B, 0x14, 0x96, 0x10, + 0x97, 0x14, 0x92, 0x10, 0x96, 0x12, 0x96, 0xBE, 0xE2, 0x00, 0x13, 0x40, 0x94, 0xBD, 0x94, 0xBD, + 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x16, 0x9B, 0xBD, 0x13, 0x94, 0xBD, 0x16, 0x9B, 0xBD, 0x13, + 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x97, 0xBD, 0x94, 0xBD, 0x16, 0x9B, + 0xBD, 0x13, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x16, 0x9B, 0xBD, 0x13, + 0x94, 0xBD, 0x16, 0x9B, 0xBD, 0x13, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, 0x94, 0xBD, + 0x97, 0xBD, 0x94, 0xBD, 0x16, 0x9B, 0xBD, 0x00, 0x50, 0xFD, 0x19, 0x41, 0x03, 0x99, 0x43, 0x00, + 0x9B, 0x50, 0xBD, 0x9C, 0xFD, 0x99, 0xBD, 0x9B, 0xF8, 0x57, 0x47, 0x50, 0x47, 0x41, 0xBE, 0x52, + 0x06, 0xBD, 0x40, 0x99, 0xBD, 0x9B, 0xBD, 0x9E, 0xBD, 0x9C, 0xBD, 0x10, 0x9E, 0xBD, 0x19, 0x9B, + 0xBD, 0x10, 0x9C, 0xBD, 0x19, 0x97, 0xFD, 0x52, 0x06, 0xBD, 0x43, 0x00, 0x96, 0x50, 0xBD, 0x52, + 0x06, 0x40, 0x97, 0xBD, 0x99, 0xBD, 0x10, 0x97, 0xBD, 0x19, 0x96, 0xBD, 0x10, 0x99, 0xBD, 0x19, + 0x95, 0x51, 0x04, 0x00, 0x19, 0x43, 0x00, 0x97, 0x50, 0xFB, 0x52, 0x06, 0x40, 0x96, 0xBD, 0x97, + 0xBD, 0x96, 0xBD, 0x93, 0x51, 0x04, 0x43, 0x00, 0x94, 0x50, 0xFC, 0x52, 0x06, 0xBD, 0x10, 0x40, + 0x94, 0xBD, 0x19, 0x9B, 0xBD, 0x99, 0xBD, 0x97, 0xBD, 0x9E, 0xBD, 0x9C, 0xBD, 0x10, 0x9E, 0xBD, + 0x19, 0x9B, 0xBD, 0x10, 0x9C, 0xBD, 0x19, 0x41, 0x04, 0x95, 0x43, 0x00, 0x97, 0x50, 0xBD, 0x57, + 0x21, 0x52, 0x06, 0x17, 0x40, 0x97, 0xBD, 0x96, 0xBD, 0x10, 0x97, 0xBD, 0x17, 0x94, 0xBD, 0x10, + 0x96, 0xBD, 0x17, 0x92, 0xFD, 0xBE, 0xBD, 0x00, 0x18, 0x40, 0x96, 0x51, 0x02, 0x43, 0x00, 0x97, + 0x50, 0xFA, 0x52, 0x06, 0xBD, 0x40, 0x97, 0xBD, 0x96, 0xBD, 0x99, 0xBD, 0x97, 0xBD, 0x10, 0x99, + 0xBD, 0x18, 0x96, 0xBD, 0x10, 0x97, 0xBD, 0x18, 0x94, 0xBD, 0x10, 0x96, 0xBD, 0x18, 0x90, 0x51, + 0x04, 0x43, 0x00, 0x92, 0x50, 0xF6, 0x94, 0xBD, 0x92, 0xBD, 0x97, 0xBD, 0x96, 0xBD, 0x10, 0x97, + 0xBD, 0x18, 0x94, 0xBD, 0x10, 0x96, 0xBD, 0x18, 0x92, 0xBD, 0x10, 0x94, 0xBD, 0x18, 0x8E, 0x51, + 0x04, 0x00, 0x18, 0x43, 0x00, 0x90, 0x50, 0xF8, 0x52, 0x06, 0xBD, 0x40, 0x8D, 0xBD, 0x8F, 0xBD, + 0x90, 0xBD, 0x92, 0xBD, 0x10, 0x90, 0xBD, 0x18, 0x94, 0xBD, 0x10, 0x92, 0xBD, 0x18, 0x97, 0xBD, + 0x10, 0x94, 0xBD, 0x18, 0x97, 0x51, 0x04, 0x43, 0x00, 0x99, 0x50, 0xF3, 0xBE, 0xF0, 0x00, 0x19, + 0x41, 0x04, 0x99, 0xBD, 0x43, 0x00, 0x9B, 0x50, 0xFE, 0x52, 0x06, 0xBD, 0x43, 0x00, 0x9C, 0x50, + 0xFE, 0x99, 0xBD, 0x9B, 0xF8, 0x57, 0x47, 0x50, 0x47, 0x41, 0xBE, 0x52, 0x06, 0xBD, 0x40, 0x99, + 0xBD, 0x9B, 0xBD, 0x9E, 0xBD, 0x9C, 0xBD, 0x10, 0x9E, 0xBD, 0x19, 0x9B, 0xBD, 0x10, 0x9C, 0xBD, + 0x19, 0x97, 0xFD, 0x52, 0x06, 0xBD, 0x43, 0x00, 0x96, 0x50, 0xFE, 0x97, 0xBD, 0x99, 0xBD, 0x10, + 0x97, 0xBD, 0x19, 0x96, 0xBD, 0x10, 0x99, 0xBD, 0x19, 0x95, 0x51, 0x04, 0x00, 0x19, 0x43, 0x00, + 0x97, 0x50, 0xFB, 0x52, 0x06, 0x40, 0x96, 0xBD, 0x97, 0xBD, 0x96, 0xBD, 0x93, 0x51, 0x04, 0x43, + 0x00, 0x94, 0x50, 0xFC, 0x52, 0x06, 0xBD, 0x10, 0x40, 0x94, 0xBD, 0x19, 0x9B, 0xBD, 0x99, 0xBD, + 0x97, 0xBD, 0x17, 0x9E, 0xBD, 0x9C, 0xBD, 0x10, 0x9E, 0xBD, 0x17, 0x9B, 0xBD, 0x10, 0x9C, 0xBD, + 0x17, 0x97, 0xBD, 0x10, 0x9B, 0xBD, 0x17, 0x98, 0x51, 0x04, 0x43, 0x00, 0x99, 0x50, 0xFE, 0xBE, + 0xF5, 0x00, 0x18, 0x40, 0x88, 0xF9, 0x8A, 0xF9, 0x8B, 0xF9, 0x90, 0xFC, 0x52, 0x04, 0xFE, 0x40, + 0x90, 0x51, 0x03, 0x43, 0x00, 0x92, 0x50, 0xF7, 0xBE, 0x52, 0x03, 0xBD, 0x40, 0x93, 0xFD, 0x94, + 0xBD, 0x96, 0xFE, 0x52, 0x06, 0x41, 0x02, 0x8D, 0x43, 0x00, 0x8F, 0x50, 0xBD, 0xBE, 0xBD, 0x00, + 0x18, 0x41, 0x02, 0x95, 0xBD, 0x43, 0x00, 0x97, 0x50, 0xF6, 0x52, 0x03, 0xBD, 0x40, 0x97, 0xBD, + 0x96, 0xBD, 0x10, 0x97, 0xBD, 0x18, 0x94, 0xBD, 0x10, 0x96, 0xBD, 0x18, 0x92, 0xBD, 0x10, 0x94, + 0xBD, 0x18, 0x8B, 0x51, 0x02, 0x43, 0x00, 0x8D, 0x50, 0xF5, 0xBE, 0xBD, 0x52, 0x06, 0x40, 0x8D, + 0xFE, 0x8A, 0xFE, 0x8B, 0xBD, 0x8D, 0xFE, 0x92, 0xFE, 0x90, 0xBD, 0x00, 0x18, 0x40, 0x8F, 0xF7, + 0x52, 0x06, 0xBD, 0x40, 0x90, 0xBD, 0x8F, 0xBD, 0x92, 0xFD, 0x90, 0xBD, 0x8F, 0xFD, 0x8B, 0xFE, + 0x52, 0x06, 0x40, 0x8B, 0x51, 0x04, 0x43, 0x00, 0x8D, 0x50, 0xF6, 0xBE, 0xFD, 0x8F, 0xBD, 0x93, + 0xBD, 0x10, 0x8F, 0xBD, 0x18, 0x94, 0xBD, 0x10, 0x93, 0xBD, 0x18, 0x96, 0xFD, 0x52, 0x06, 0xBD, + 0x00, 0x18, 0x40, 0x97, 0xF5, 0xBE, 0xFE, 0x52, 0x06, 0x40, 0x96, 0xFD, 0x94, 0xBD, 0x92, 0xFD, + 0x8B, 0xFD, 0x52, 0x03, 0xBD, 0x43, 0x00, 0x8B, 0x51, 0x05, 0xFE, 0x43, 0x00, 0x8D, 0x50, 0xF9, + 0xBE, 0xBD, 0x52, 0x03, 0x41, 0x02, 0x8B, 0x43, 0x00, 0x8D, 0x50, 0xBD, 0x8B, 0xBD, 0x8A, 0xFD, + 0x86, 0xFD, 0x52, 0x06, 0xBD, 0x00, 0x18, 0x43, 0x00, 0x90, 0x50, 0xF8, 0x52, 0x06, 0xBD, 0x40, + 0x8D, 0xBD, 0x8F, 0xBD, 0x90, 0xBD, 0x8F, 0xBD, 0x10, 0x90, 0xBD, 0x18, 0x92, 0xBD, 0x10, 0x8F, + 0xBD, 0x18, 0x90, 0xBD, 0x10, 0x92, 0xBD, 0x18, 0x8D, 0x51, 0x04, 0x43, 0x00, 0x8F, 0x50, 0xF9, + 0x52, 0x06, 0x40, 0x8D, 0xBD, 0x8B, 0xBD, 0x8D, 0xF7, 0x52, 0x06, 0xBD, 0x43, 0x00, 0x8A, 0x50, + 0x86, 0xBD, 0x86, 0x51, 0x02, 0x00, 0x18, 0x43, 0x00, 0x88, 0x50, 0xF7, 0x46, 0x9A, 0xBE, 0x50, + 0xCD, 0x00, 0x00, 0x00, 0x63, 0x1A, 0x00, 0x00, 0x53, 0x49, 0x44, 0x4B, 0x09, 0x03, 0x0B, 0x04, + 0x10, 0x02, 0x10, 0x0F, 0x5B, 0x0B, 0x65, 0x04, 0x10, 0x06, 0x10, 0x0F, 0x5B, 0x0B, 0x65, 0x03, + 0x10, 0x0F, 0x02, 0x07, 0x20, 0x20, 0x20, 0xFE, 0x5A, 0x20, 0x20, 0x5A, 0x20, 0x20, 0x05, 0x02, + 0xFE, 0x02, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, + 0x0C, 0x01, 0x0F, 0x04, 0x5A, 0x07, 0x3C, 0x03, 0x0C, 0x03, 0x0F, 0x0A, 0x5A, 0x07, 0x3C, 0x00, + 0x0F, 0x07, 0x01, 0x02, 0x1F, 0x08, 0x0F, 0x01, 0x00, 0x1F, 0x1F, 0x2D, 0x1F, 0x1F, 0x01, 0x00, + 0x00, 0x00, 0x07, 0x1F, 0x08, 0x10, 0x01, 0xB4, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x01, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, + 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0E, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x35, 0x38, 0x31, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, + 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x38, 0x35, 0x38, 0x30, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, + 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x38, 0x35, 0x38, 0x30, 0x2B, 0x04, 0x09, 0x07, 0x09, 0x02, 0x0F, + 0x0F, 0x13, 0x14, 0x00, 0x0E, 0x0F, 0x0E, 0x05, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, + 0xDB, 0xDB, 0x00, 0x24, 0x44, 0x34, 0x30, 0x30, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, + 0x44, 0x34, 0x32, 0x30, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x44, 0x35, 0x30, 0x30, + 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x44, 0x34, 0x32, 0x30, 0x2B, 0x24, 0x44, 0x35, + 0x30, 0x30, 0x00, 0x24, 0x44, 0x45, 0x30, 0x30, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, + 0x44, 0x46, 0x30, 0x30, 0xDB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x05, 0x53, 0x49, 0x44, + 0x20, 0x30, 0x2E, 0x31, 0x36, 0x00, 0x12, 0x05, 0x53, 0x49, 0x44, 0x20, 0x31, 0x2E, 0x30, 0xDB, + 0x00, 0x0F, 0x06, 0x06, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x0F, 0x0E, 0xDB, 0xDB, + 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x0F, 0x0E, 0x20, 0x10, 0x01, 0x13, 0x13, 0x09, 0x16, + 0x05, 0x00, 0x0E, 0x0F, 0x0E, 0x05, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, + 0xDB, 0xDB, 0x00, 0x44, 0x01, 0x14, 0x05, 0x0C, 0x2F, 0x4A, 0x4D, 0x53, 0x2F, 0x43, 0x2D, 0x4C, + 0x41, 0x42, 0xDB, 0x00, 0x53, 0x05, 0x11, 0x15, 0x05, 0x0E, 0x14, 0x09, 0x01, 0x0C, 0xDB, 0xDB, + 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x44, 0x01, 0x14, 0x05, 0x0C, 0x2B, 0x53, 0x05, 0x11, 0x15, 0x05, + 0x0E, 0x14, 0x09, 0x01, 0x0C, 0x00, 0x4E, 0x01, 0x0D, 0x05, 0x13, 0x0F, 0x06, 0x14, 0xDB, 0xDB, + 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x28, 0x0E, 0x0F, 0x20, 0x49, 0x4F, 0x2D, 0x01, 0x04, + 0x04, 0x12, 0x05, 0x13, 0x13, 0x29, 0xDB, 0xDB, 0xDB, 0x00, 0x24, 0x44, 0x45, 0x30, 0x34, 0x2D, + 0x24, 0x44, 0x45, 0x30, 0x37, 0x2F, 0x49, 0x52, 0x51, 0xDB, 0xDB, 0xDB, 0x00, 0x24, 0x44, 0x45, + 0x30, 0x30, 0x2D, 0x24, 0x44, 0x45, 0x30, 0x33, 0x2F, 0x49, 0x52, 0x51, 0xDB, 0xDB, 0xDB, 0x00, + 0x24, 0x44, 0x45, 0x30, 0x30, 0x2D, 0x30, 0x33, 0x2C, 0x30, 0x34, 0x2D, 0x30, 0x37, 0x2F, 0x49, + 0x52, 0x51, 0x00, 0x24, 0x44, 0x45, 0x30, 0x30, 0x2D, 0x24, 0x44, 0x45, 0x30, 0x33, 0x2F, 0x4E, + 0x4D, 0x49, 0xDB, 0xDB, 0xDB, 0x00, 0x0F, 0x06, 0x06, 0x00, 0x0F, 0x0E, 0xDB, 0x00, 0x0F, 0x06, + 0x06, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x03, 0x0F, 0x0E, 0x13, 0x14, + 0x01, 0x0E, 0x14, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x10, 0x15, 0x0C, 0x13, 0x05, 0xDB, 0xDB, 0xDB, + 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x13, 0x03, 0x12, 0x0F, 0x0C, 0x0C, 0x20, 0x0C, 0x05, 0x06, 0x14, + 0xDB, 0x00, 0x13, 0x03, 0x12, 0x0F, 0x0C, 0x0C, 0x20, 0x12, 0x09, 0x07, 0x08, 0x14, 0x00, 0x10, + 0x05, 0x01, 0x0B, 0x20, 0x0D, 0x0F, 0x0E, 0x0F, 0xDB, 0xDB, 0xDB, 0x00, 0x10, 0x05, 0x01, 0x0B, + 0x20, 0x13, 0x14, 0x05, 0x12, 0x05, 0x0F, 0xDB, 0x00, 0x30, 0x30, 0x30, 0x31, 0x30, 0x32, 0x30, + 0x33, 0x30, 0x34, 0x30, 0x35, 0x30, 0x36, 0x30, 0x37, 0x30, 0x38, 0x30, 0x39, 0x31, 0x30, 0x31, + 0x31, 0x31, 0x32, 0x31, 0x33, 0x31, 0x34, 0x31, 0x35, 0x31, 0x36, 0x31, 0x37, 0x31, 0x38, 0x31, + 0x39, 0x32, 0x30, 0x32, 0x31, 0x32, 0x32, 0x32, 0x33, 0x32, 0x34, 0x32, 0x35, 0x32, 0x36, 0x32, + 0x37, 0x32, 0x38, 0x32, 0x39, 0x33, 0x30, 0x33, 0x31, 0x33, 0x32, 0x33, 0x33, 0x33, 0x34, 0x33, + 0x35, 0x33, 0x36, 0x33, 0x37, 0x33, 0x38, 0x33, 0x39, 0x34, 0x30, 0x34, 0x31, 0x34, 0x32, 0x34, + 0x33, 0x34, 0x34, 0x34, 0x35, 0x34, 0x36, 0x34, 0x37, 0x34, 0x38, 0x34, 0x39, 0x35, 0x30, 0x35, + 0x31, 0x35, 0x32, 0x35, 0x33, 0x35, 0x34, 0x35, 0x35, 0x35, 0x36, 0x35, 0x37, 0x35, 0x38, 0x35, + 0x39, 0x36, 0x30, 0x36, 0x31, 0x36, 0x32, 0x36, 0x33, 0x36, 0x34, 0x36, 0x35, 0x36, 0x36, 0x36, + 0x37, 0x36, 0x38, 0x36, 0x39, 0x37, 0x30, 0x37, 0x31, 0x37, 0x32, 0x37, 0x33, 0x37, 0x34, 0x37, + 0x35, 0x37, 0x36, 0x37, 0x37, 0x37, 0x38, 0x37, 0x39, 0x38, 0x30, 0x38, 0x31, 0x38, 0x32, 0x38, + 0x33, 0x38, 0x34, 0x38, 0x35, 0x38, 0x36, 0x38, 0x37, 0x38, 0x38, 0x38, 0x39, 0x39, 0x30, 0x39, + 0x31, 0x39, 0x32, 0x39, 0x33, 0x39, 0x34, 0x39, 0x35, 0x39, 0x36, 0x39, 0x37, 0x39, 0x38, 0x39, + 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x9B, 0x37, 0x00, 0x00, 0x00, 0x08, 0x00, 0x14, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0E, 0x06, 0x01, 0x02, 0x03, 0x04, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x00, + 0x0F, 0x09, 0x0E, 0x02, 0x0B, 0x00, 0x0D, 0x09, 0x00, 0x02, 0x00, 0x0B, 0x05, 0x06, 0x0C, 0x00, + 0x0F, 0x00, 0x03, 0x00, 0x0D, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0B, 0x0D, 0x03, 0x0C, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x46, 0x31, 0x20, 0x48, 0x05, 0x0C, 0x10, + 0x2C, 0x20, 0x46, 0x37, 0x20, 0x53, 0x05, 0x14, 0x14, 0x09, 0x0E, 0x07, 0x13, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x20, 0x45, 0x18, 0x09, 0x14, 0x2C, 0x20, 0x46, + 0x37, 0x20, 0x46, 0x09, 0x0C, 0x05, 0x0D, 0x05, 0x0E, 0x15, 0x2C, 0x20, 0x46, 0x38, 0x20, 0x44, + 0x05, 0x06, 0x01, 0x15, 0x0C, 0x14, 0x20, 0x53, 0x05, 0x14, 0x14, 0x09, 0x0E, 0x07, 0x13, 0x00, + 0x20, 0x54, 0x0F, 0x07, 0x07, 0x0C, 0x05, 0x20, 0x50, 0x01, 0x07, 0x05, 0x2C, 0x20, 0x4C, 0x0F, + 0x01, 0x04, 0x2F, 0x53, 0x01, 0x16, 0x05, 0x20, 0x43, 0x0F, 0x0E, 0x06, 0x09, 0x07, 0x2C, 0x20, + 0x46, 0x31, 0x20, 0x48, 0x05, 0x0C, 0x10, 0x00, 0x2A, 0x20, 0x53, 0x46, 0x58, 0x20, 0x0F, 0x0E, + 0x20, 0x10, 0x01, 0x13, 0x13, 0x09, 0x16, 0x05, 0x20, 0x10, 0x0C, 0x01, 0x19, 0x13, 0x20, 0x46, + 0x4D, 0x2C, 0x20, 0x02, 0x15, 0x14, 0x20, 0x12, 0x05, 0x01, 0x04, 0x09, 0x0E, 0x07, 0x00, 0x50, + 0x12, 0x05, 0x13, 0x13, 0x20, 0x01, 0x0E, 0x19, 0x20, 0x0B, 0x05, 0x19, 0x20, 0x14, 0x0F, 0x20, + 0x07, 0x0F, 0x20, 0x02, 0x01, 0x03, 0x0B, 0x20, 0x14, 0x0F, 0x20, 0x13, 0x05, 0x14, 0x14, 0x09, + 0x0E, 0x07, 0x13, 0x00, 0x10, 0x01, 0x04, 0x04, 0x0C, 0x05, 0x13, 0x2F, 0x0D, 0x0F, 0x15, 0x13, + 0x05, 0x20, 0x01, 0x0E, 0x04, 0x20, 0x53, 0x49, 0x44, 0x20, 0x01, 0x15, 0x14, 0x0F, 0x04, 0x05, + 0x14, 0x05, 0x03, 0x14, 0x09, 0x0F, 0x0E, 0x2E, 0x00, 0x12, 0x05, 0x07, 0x09, 0x13, 0x14, 0x05, + 0x12, 0x13, 0x20, 0x09, 0x13, 0x20, 0x14, 0x15, 0x12, 0x0E, 0x05, 0x04, 0x20, 0x0F, 0x06, 0x06, + 0x20, 0x28, 0x12, 0x05, 0x03, 0x0F, 0x0D, 0x0D, 0x05, 0x0E, 0x04, 0x05, 0x04, 0x00, 0x17, 0x08, + 0x05, 0x0E, 0x20, 0x0F, 0x14, 0x08, 0x05, 0x12, 0x20, 0x49, 0x4F, 0x31, 0x2F, 0x32, 0x20, 0x04, + 0x05, 0x16, 0x09, 0x03, 0x05, 0x13, 0x20, 0x01, 0x12, 0x05, 0x20, 0x15, 0x13, 0x05, 0x04, 0x29, + 0x2E, 0x00, 0x2A, 0x20, 0x53, 0x49, 0x44, 0x4B, 0x09, 0x03, 0x0B, 0x20, 0x15, 0x13, 0x05, 0x13, + 0x20, 0x12, 0x05, 0x53, 0x49, 0x44, 0x20, 0x01, 0x0E, 0x04, 0x20, 0x06, 0x0D, 0x0F, 0x10, 0x0C, + 0x2E, 0x00, 0x2A, 0x20, 0x12, 0x05, 0x07, 0x09, 0x13, 0x14, 0x05, 0x12, 0x20, 0x12, 0x05, 0x01, + 0x04, 0x20, 0x09, 0x13, 0x20, 0x12, 0x05, 0x11, 0x15, 0x09, 0x12, 0x05, 0x04, 0x20, 0x06, 0x0F, + 0x12, 0x00, 0x10, 0x0C, 0x01, 0x19, 0x20, 0x27, 0x54, 0x08, 0x05, 0x20, 0x53, 0x10, 0x01, 0x12, + 0x0B, 0x20, 0x09, 0x0E, 0x20, 0x4D, 0x05, 0x27, 0x20, 0x02, 0x19, 0x20, 0x46, 0x0C, 0x05, 0x18, + 0x00, 0x28, 0x41, 0x0E, 0x14, 0x14, 0x09, 0x20, 0x48, 0x01, 0x0E, 0x0E, 0x15, 0x0C, 0x01, 0x29, + 0x20, 0x0F, 0x0E, 0x20, 0x53, 0x49, 0x44, 0x20, 0x40, 0x20, 0x24, 0x44, 0x34, 0x30, 0x30, 0x00, + 0x2F, 0x56, 0x20, 0x20, 0x03, 0x0F, 0x10, 0x19, 0x2F, 0x10, 0x01, 0x13, 0x14, 0x05, 0x20, 0x03, + 0x15, 0x12, 0x12, 0x05, 0x0E, 0x14, 0x20, 0x10, 0x12, 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x00, 0x14, + 0x0F, 0x07, 0x07, 0x0C, 0x05, 0x20, 0x02, 0x01, 0x13, 0x09, 0x03, 0x2F, 0x05, 0x18, 0x14, 0x05, + 0x0E, 0x04, 0x05, 0x04, 0x20, 0x13, 0x05, 0x14, 0x14, 0x09, 0x0E, 0x07, 0x13, 0x00, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2E, 0x2D, 0x20, 0x53, 0x49, 0x44, 0x4B, 0x09, 0x03, 0x0B, 0x20, 0x2D, 0x2D, + 0x20, 0x46, 0x12, 0x05, 0x0E, 0x05, 0x14, 0x09, 0x03, 0x20, 0x2D, 0x2E, 0x00, 0x53, 0x49, 0x44, + 0x4B, 0x09, 0x03, 0x0B, 0x2D, 0x03, 0x0F, 0x0E, 0x06, 0x09, 0x07, 0x15, 0x12, 0x01, 0x14, 0x09, + 0x0F, 0x0E, 0x20, 0x0C, 0x0F, 0x01, 0x04, 0x05, 0x04, 0x21, 0x00, 0x53, 0x49, 0x44, 0x4B, 0x09, + 0x03, 0x0B, 0x2D, 0x03, 0x0F, 0x0E, 0x06, 0x09, 0x07, 0x15, 0x12, 0x01, 0x14, 0x09, 0x0F, 0x0E, + 0x20, 0x13, 0x01, 0x16, 0x05, 0x04, 0x21, 0x00, 0x05, 0x18, 0x09, 0x14, 0x2C, 0x20, 0x10, 0x12, + 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x13, 0x20, 0x01, 0x12, 0x05, 0x20, 0x0E, 0x0F, 0x14, 0x20, 0x13, + 0x01, 0x16, 0x05, 0x04, 0x00, 0x4D, 0x49, 0x44, 0x49, 0x20, 0x04, 0x09, 0x13, 0x01, 0x02, 0x0C, + 0x05, 0x04, 0x20, 0x09, 0x0E, 0x20, 0x06, 0x09, 0x12, 0x0D, 0x17, 0x01, 0x12, 0x05, 0x21, 0x00, + 0x2F, 0x53, 0x20, 0x20, 0x0C, 0x0F, 0x01, 0x04, 0x2F, 0x13, 0x01, 0x16, 0x05, 0x20, 0x01, 0x0C, + 0x0C, 0x20, 0x10, 0x12, 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x13, 0x00, 0x2D, 0x39, 0x20, 0x20, 0x13, + 0x05, 0x0C, 0x05, 0x03, 0x14, 0x20, 0x01, 0x03, 0x14, 0x09, 0x16, 0x05, 0x20, 0x10, 0x12, 0x0F, + 0x06, 0x09, 0x0C, 0x05, 0x00, 0x13, 0x05, 0x0C, 0x05, 0x03, 0x14, 0x05, 0x04, 0x20, 0x0F, 0x0E, + 0x05, 0x20, 0x09, 0x13, 0x20, 0x01, 0x03, 0x14, 0x09, 0x16, 0x01, 0x14, 0x05, 0x04, 0x00, 0x4C, + 0x45, 0x44, 0x20, 0x04, 0x09, 0x13, 0x01, 0x02, 0x0C, 0x05, 0x04, 0x20, 0x09, 0x0E, 0x20, 0x06, + 0x09, 0x12, 0x0D, 0x17, 0x01, 0x12, 0x05, 0x21, 0x00, 0x13, 0x05, 0x0C, 0x05, 0x03, 0x14, 0x20, + 0x01, 0x0E, 0x04, 0x20, 0x03, 0x08, 0x01, 0x0E, 0x07, 0x05, 0x20, 0x16, 0x01, 0x0C, 0x15, 0x05, + 0x13, 0x00, 0x0F, 0x16, 0x05, 0x12, 0x17, 0x12, 0x09, 0x14, 0x05, 0x20, 0x01, 0x03, 0x14, 0x09, + 0x16, 0x05, 0x20, 0x10, 0x12, 0x0F, 0x06, 0x09, 0x0C, 0x05, 0x00, 0x17, 0x09, 0x14, 0x08, 0x20, + 0x04, 0x05, 0x06, 0x01, 0x15, 0x0C, 0x14, 0x20, 0x13, 0x05, 0x14, 0x14, 0x09, 0x0E, 0x07, 0x13, + 0x00, 0x20, 0x20, 0x20, 0x53, 0x46, 0x58, 0x20, 0x01, 0x14, 0x20, 0x24, 0x44, 0x46, 0x18, 0x18, + 0x00, 0x20, 0x20, 0x4D, 0x49, 0x44, 0x49, 0x20, 0x01, 0x14, 0x20, 0x24, 0x44, 0x45, 0x18, 0x18, + 0x00, 0x43, 0x0F, 0x0C, 0x0F, 0x12, 0x20, 0x43, 0x19, 0x03, 0x0C, 0x05, 0x20, 0x53, 0x10, 0x04, + 0x00, 0x4D, 0x49, 0x44, 0x49, 0x2D, 0x09, 0x0E, 0x20, 0x05, 0x0E, 0x01, 0x02, 0x0C, 0x05, 0x04, + 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x00, 0x53, 0x49, 0x44, 0x20, 0x23, 0x32, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, + 0x4E, 0x15, 0x0D, 0x02, 0x05, 0x12, 0x20, 0x0F, 0x06, 0x20, 0x4C, 0x45, 0x44, 0x13, 0x00, 0x41, + 0x04, 0x04, 0x12, 0x05, 0x13, 0x13, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0xDB, 0x00, 0x4D, 0x49, + 0x44, 0x49, 0x20, 0x49, 0x0E, 0x14, 0x05, 0x12, 0x06, 0x01, 0x03, 0x05, 0x00, 0x53, 0x46, 0x58, + 0x20, 0x53, 0x0F, 0x15, 0x0E, 0x04, 0x20, 0x45, 0x18, 0x10, 0x2E, 0x00, 0x50, 0x12, 0x0F, 0x06, + 0x09, 0x0C, 0x05, 0x20, 0x28, 0x30, 0x2D, 0x39, 0x29, 0x00, 0x12, 0x05, 0x07, 0x09, 0x13, 0x14, + 0x05, 0x12, 0x20, 0x12, 0x05, 0x01, 0x04, 0x00, 0x52, 0x05, 0x07, 0x09, 0x13, 0x14, 0x05, 0x12, + 0x20, 0x52, 0x05, 0x01, 0x04, 0x00, 0x4C, 0x45, 0x44, 0x20, 0x01, 0x0E, 0x04, 0x20, 0x4D, 0x49, + 0x44, 0x49, 0x00, 0x28, 0x42, 0x01, 0x13, 0x09, 0x03, 0x20, 0x43, 0x06, 0x07, 0x2E, 0x29, 0x00, + 0x28, 0x45, 0x18, 0x14, 0x05, 0x0E, 0x13, 0x09, 0x0F, 0x0E, 0x13, 0x29, 0x00, 0x12, 0x05, 0x53, + 0x49, 0x44, 0x20, 0x45, 0x0E, 0x07, 0x09, 0x0E, 0x05, 0x00, 0x53, 0x49, 0x44, 0x2B, 0x46, 0x4D, + 0x20, 0x04, 0x05, 0x0C, 0x01, 0x19, 0x00, 0x46, 0x09, 0x0C, 0x14, 0x05, 0x12, 0x20, 0x42, 0x09, + 0x01, 0x13, 0x00, 0x53, 0x41, 0x4D, 0x20, 0x16, 0x0F, 0x0C, 0x15, 0x0D, 0x05, 0x00, 0x0F, 0x0E, + 0x20, 0x10, 0x01, 0x13, 0x13, 0x09, 0x16, 0x05, 0x00, 0x44, 0x09, 0x07, 0x09, 0x02, 0x0F, 0x0F, + 0x13, 0x14, 0x00, 0x46, 0x09, 0x12, 0x0D, 0x17, 0x01, 0x12, 0x05, 0x3A, 0x00, 0x50, 0x01, 0x13, + 0x13, 0x02, 0x01, 0x0E, 0x04, 0x00, 0x03, 0x0F, 0x0C, 0x0F, 0x12, 0x20, 0x23, 0x30, 0x00, 0x03, + 0x0F, 0x0C, 0x0F, 0x12, 0x20, 0x23, 0x31, 0x00, 0x4C, 0x45, 0x44, 0x20, 0x0D, 0x0F, 0x04, 0x05, + 0x00, 0x04, 0x05, 0x06, 0x01, 0x15, 0x0C, 0x14, 0x00, 0x50, 0x01, 0x0E, 0x0E, 0x09, 0x0E, 0x07, + 0x00, 0x57, 0x09, 0x0E, 0x04, 0x0F, 0x17, 0x00, 0x53, 0x49, 0x44, 0x20, 0x23, 0x31, 0x00, 0x56, + 0x0F, 0x0C, 0x15, 0x0D, 0x05, 0x00, 0x06, 0x0D, 0x0F, 0x10, 0x0C, 0x00, 0x53, 0x03, 0x01, 0x0C, + 0x05, 0x00, 0x12, 0x05, 0x53, 0x49, 0x44, 0x00, 0x10, 0x01, 0x13, 0x14, 0x05, 0x00, 0x47, 0x01, + 0x09, 0x0E, 0x00, 0x03, 0x0F, 0x10, 0x19, 0x00, 0x43, 0x52, 0x53, 0x52, 0x00, 0x10, 0x0C, 0x01, + 0x19, 0x00, 0x13, 0x14, 0x0F, 0x10, 0x00, 0x30, 0x30, 0xDB, 0x00, 0x31, 0x30, 0x30, 0x00, 0x0F, + 0x06, 0x06, 0x00, 0xDB, 0x2F, 0xDB, 0x00, 0x20, 0x0B, 0x02, 0x00, 0x0D, 0x13, 0x00, 0x46, 0x31, + 0x00, 0x48, 0x3A, 0x00, 0x56, 0x3A, 0x00, 0x46, 0x37, 0x00, 0x46, 0x38, 0x00, 0x53, 0x3A, 0x00, + 0x2F, 0x00, 0x2D, 0x00, 0x39, 0x00, 0x54, 0x00, 0x4C, 0x00, 0x53, 0x00, 0x2B, 0x00, 0x43, 0x00, + 0x56, 0x00, 0x50, 0x00, 0x58, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBB, 0x71, 0x00, 0x00, 0x00, 0x00, 0x8D, 0x59, 0x7A, 0x8E, + 0x5A, 0x7A, 0x8D, 0x60, 0x7A, 0x8E, 0x61, 0x7A, 0x88, 0xB9, 0xFF, 0xFF, 0x8D, 0x6A, 0x7A, 0x88, + 0xB9, 0xFF, 0xFF, 0x8D, 0x69, 0x7A, 0x8C, 0x6C, 0x7A, 0x20, 0xFF, 0xFF, 0xA0, 0xFF, 0xD0, 0xE8, + 0x60, 0x20, 0xCE, 0x44, 0xA9, 0x28, 0x8D, 0xB3, 0x46, 0xA0, 0x03, 0xB1, 0x02, 0x8D, 0xB4, 0x46, + 0xC8, 0xB1, 0x02, 0x8D, 0xB5, 0x46, 0xA0, 0x02, 0xB1, 0x02, 0x8D, 0xB6, 0x46, 0x88, 0xB1, 0x02, + 0x8D, 0xB7, 0x46, 0x88, 0xB1, 0x02, 0x8D, 0xB8, 0x46, 0xA9, 0x6C, 0x8D, 0xBA, 0x46, 0xA9, 0xD8, + 0x8D, 0xB9, 0x46, 0x98, 0xA2, 0x08, 0x4E, 0xB3, 0x46, 0x90, 0x04, 0x18, 0x6D, 0xB4, 0x46, 0x6A, + 0x6E, 0xB3, 0x46, 0xCA, 0xD0, 0xF3, 0x8D, 0xB4, 0x46, 0xAD, 0xB3, 0x46, 0x18, 0x6D, 0xB5, 0x46, + 0x8D, 0xB3, 0x46, 0xAD, 0xB4, 0x46, 0x69, 0x00, 0x8D, 0xB4, 0x46, 0xAD, 0xB3, 0x46, 0x85, 0x26, + 0xAD, 0xB4, 0x46, 0x18, 0x69, 0xD8, 0x85, 0x27, 0xAD, 0xB3, 0x46, 0x85, 0xFD, 0xAD, 0xB4, 0x46, + 0x18, 0x69, 0xE4, 0x85, 0xFE, 0xAD, 0xB9, 0x46, 0x85, 0xFB, 0xAD, 0xBA, 0x46, 0x85, 0xFC, 0xAD, + 0xB6, 0x46, 0x0A, 0xA8, 0xC8, 0xB1, 0xFB, 0x0D, 0xB8, 0x46, 0xA0, 0x00, 0x91, 0xFD, 0xAD, 0xB7, + 0x46, 0x91, 0x26, 0x4C, 0xA7, 0x43, 0xA9, 0x7A, 0x8D, 0xBC, 0x46, 0xA9, 0x1C, 0x8D, 0xBB, 0x46, + 0x85, 0xFB, 0xAD, 0xBC, 0x46, 0x85, 0xFC, 0xA9, 0xFF, 0x8D, 0x1F, 0xD4, 0xA0, 0x00, 0xA2, 0xE0, + 0x8E, 0x1E, 0xD4, 0xAD, 0x1D, 0xD4, 0x91, 0xFB, 0xE8, 0xC8, 0xC0, 0x10, 0xD0, 0xF2, 0xA9, 0x00, + 0x91, 0xFB, 0x60, 0xA9, 0x00, 0x8D, 0xBF, 0x46, 0xA9, 0xFE, 0x8D, 0x1F, 0xD4, 0x8D, 0x1F, 0xD4, + 0x8D, 0x1F, 0xD4, 0x8D, 0x1F, 0xD4, 0x8D, 0x1F, 0xD4, 0x8D, 0x1F, 0xD4, 0x8D, 0x1F, 0xD4, 0xAD, + 0x1C, 0xD4, 0x8D, 0xBD, 0x46, 0x49, 0xFF, 0x8D, 0xBD, 0x46, 0xA9, 0xFE, 0x8D, 0x1F, 0xD4, 0xA9, + 0x00, 0x8D, 0x20, 0xD4, 0xAD, 0x1C, 0xD4, 0x8D, 0xBE, 0x46, 0xA2, 0x00, 0xAD, 0xBD, 0x46, 0x2D, + 0xBE, 0x46, 0x48, 0x68, 0xF0, 0x08, 0xAD, 0xBF, 0x46, 0x09, 0x01, 0x8D, 0xBF, 0x46, 0xA9, 0xFE, + 0x8D, 0x1F, 0xD4, 0x8E, 0x40, 0xD4, 0xAD, 0x1C, 0xD4, 0x8D, 0xBE, 0x46, 0xAD, 0xBD, 0x46, 0x2D, + 0xBE, 0x46, 0x48, 0x68, 0xF0, 0x08, 0xAD, 0xBF, 0x46, 0x09, 0x02, 0x8D, 0xBF, 0x46, 0xA9, 0xFE, + 0x8D, 0x1F, 0xD4, 0x8E, 0x80, 0xD4, 0xAD, 0x1C, 0xD4, 0x8D, 0xBE, 0x46, 0xAD, 0xBD, 0x46, 0x2D, + 0xBE, 0x46, 0x48, 0x68, 0xF0, 0x08, 0xAD, 0xBF, 0x46, 0x09, 0x04, 0x8D, 0xBF, 0x46, 0xA9, 0xFE, + 0x8D, 0x1F, 0xD4, 0x8E, 0x00, 0xD5, 0xAD, 0x1C, 0xD4, 0x8D, 0xBE, 0x46, 0xAD, 0xBD, 0x46, 0x2D, + 0xBE, 0x46, 0x48, 0x68, 0xF0, 0x08, 0xAD, 0xBF, 0x46, 0x09, 0x08, 0x8D, 0xBF, 0x46, 0xA9, 0xFE, + 0x8D, 0x1F, 0xD4, 0x8E, 0xEE, 0xDE, 0xAD, 0x1C, 0xD4, 0x8D, 0xBE, 0x46, 0xAD, 0xBD, 0x46, 0x2D, + 0xBE, 0x46, 0x48, 0x68, 0xF0, 0x08, 0xAD, 0xBF, 0x46, 0x09, 0x10, 0x8D, 0xBF, 0x46, 0xA9, 0xFE, + 0x8D, 0x1F, 0xD4, 0x8E, 0xEE, 0xDF, 0xAD, 0x1C, 0xD4, 0x8D, 0xBE, 0x46, 0xAD, 0xBD, 0x46, 0x2D, + 0xBE, 0x46, 0x48, 0x68, 0xF0, 0x08, 0xAD, 0xBF, 0x46, 0x09, 0x20, 0x8D, 0xBF, 0x46, 0xAD, 0xBF, + 0x46, 0x60, 0xA2, 0x00, 0xAD, 0x43, 0x7A, 0x20, 0xB2, 0x42, 0x20, 0x99, 0x42, 0x18, 0x69, 0x1C, + 0xA8, 0x8A, 0x69, 0x73, 0xAA, 0x98, 0x8D, 0xC0, 0x46, 0x8E, 0xC1, 0x46, 0x20, 0xE4, 0x44, 0xA9, + 0xAE, 0xA2, 0x6A, 0x20, 0xE4, 0x44, 0xA2, 0x00, 0xA9, 0x40, 0x4C, 0xC6, 0x43, 0xA9, 0x73, 0x8D, + 0xC6, 0x46, 0xA9, 0x1C, 0x8D, 0xC5, 0x46, 0x85, 0xFB, 0xAD, 0xC6, 0x46, 0x85, 0xFC, 0xA9, 0xFF, + 0x8D, 0x1F, 0xD4, 0xA2, 0x00, 0x8E, 0x1E, 0xD4, 0xA0, 0x00, 0xB1, 0xFB, 0x8D, 0x1D, 0xD4, 0xC8, + 0xC0, 0x40, 0xD0, 0xF6, 0x18, 0xA5, 0xFB, 0x69, 0x40, 0x85, 0xFB, 0xA5, 0xFC, 0x69, 0x00, 0x85, + 0xFC, 0xE8, 0xE0, 0x0A, 0xD0, 0xDF, 0x8E, 0x1E, 0xD4, 0xAD, 0x43, 0x7A, 0x8D, 0x1D, 0xD4, 0xAD, + 0xC2, 0x46, 0x8D, 0x1D, 0xD4, 0xAD, 0xC3, 0x46, 0x8D, 0x1D, 0xD4, 0xAD, 0xC4, 0x46, 0x8D, 0x1D, + 0xD4, 0xAD, 0x3C, 0x7A, 0x8D, 0x1D, 0xD4, 0xA9, 0xFF, 0x8D, 0x1D, 0xD4, 0x60, 0xA9, 0x73, 0x8D, + 0xD2, 0x46, 0xA9, 0x1C, 0x8D, 0xD1, 0x46, 0xA9, 0x1C, 0xA2, 0x73, 0x20, 0xE4, 0x44, 0xA2, 0x03, + 0xA9, 0x00, 0x20, 0x02, 0x44, 0xAD, 0xD1, 0x46, 0x85, 0xFB, 0xAD, 0xD2, 0x46, 0x85, 0xFC, 0xA9, + 0xFF, 0x8D, 0x1F, 0xD4, 0xA2, 0x00, 0x8E, 0x1E, 0xD4, 0xA0, 0x00, 0xAD, 0x1D, 0xD4, 0x91, 0xFB, + 0xC8, 0xC0, 0x40, 0xD0, 0xF6, 0x18, 0xA5, 0xFB, 0x69, 0x40, 0x85, 0xFB, 0xA5, 0xFC, 0x69, 0x00, + 0x85, 0xFC, 0xE8, 0xE0, 0x0A, 0xD0, 0xDF, 0x8E, 0x1E, 0xD4, 0xAD, 0x1D, 0xD4, 0x8D, 0x43, 0x7A, + 0xAD, 0x1D, 0xD4, 0x8D, 0xCC, 0x46, 0xAD, 0x1D, 0xD4, 0x8D, 0xCD, 0x46, 0xAD, 0x1D, 0xD4, 0x8D, + 0xCE, 0x46, 0x60, 0xA9, 0x73, 0x8D, 0xD7, 0x46, 0xA9, 0x1C, 0x8D, 0xD6, 0x46, 0x85, 0xFB, 0xAD, + 0xD7, 0x46, 0x85, 0xFC, 0xA9, 0xFF, 0x8D, 0x1F, 0xD4, 0xA2, 0x00, 0x8E, 0x1E, 0xD4, 0xA0, 0x00, + 0xB1, 0xFB, 0x8D, 0x1D, 0xD4, 0xC8, 0xC0, 0x40, 0xD0, 0xF6, 0x18, 0xA5, 0xFB, 0x69, 0x40, 0x85, + 0xFB, 0xA5, 0xFC, 0x69, 0x00, 0x85, 0xFC, 0xE8, 0xE0, 0x0A, 0xD0, 0xDF, 0x8E, 0x1E, 0xD4, 0xAD, + 0x43, 0x7A, 0x8D, 0x1D, 0xD4, 0xAD, 0xD3, 0x46, 0x8D, 0x1D, 0xD4, 0xAD, 0xD4, 0x46, 0x8D, 0x1D, + 0xD4, 0xAD, 0xD5, 0x46, 0x8D, 0x1D, 0xD4, 0xAD, 0x3C, 0x7A, 0x8D, 0x1D, 0xD4, 0xA9, 0xFE, 0x8D, + 0x1D, 0xD4, 0x60, 0xA9, 0xFF, 0x8D, 0x1F, 0xD4, 0xA9, 0x0A, 0x8D, 0x1E, 0xD4, 0xAD, 0x43, 0x7A, + 0x8D, 0x1D, 0xD4, 0xA9, 0xFD, 0x8D, 0x1D, 0xD4, 0x60, 0x20, 0xCE, 0x44, 0xA0, 0x00, 0xB1, 0x02, + 0x8D, 0xD9, 0x46, 0xB1, 0x02, 0x20, 0xE2, 0x44, 0xA9, 0x18, 0x20, 0x70, 0x44, 0x18, 0x69, 0x16, + 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, 0x76, 0x85, 0x0B, 0xA0, 0x1C, 0xB1, 0x0A, 0xAA, + 0xA9, 0x00, 0x20, 0xE4, 0x44, 0xA0, 0x02, 0xB1, 0x02, 0x20, 0xE2, 0x44, 0xA9, 0x18, 0x20, 0x70, + 0x44, 0x18, 0x69, 0x17, 0x90, 0x01, 0xE8, 0x85, 0x0A, 0x8A, 0x18, 0x69, 0x76, 0x85, 0x0B, 0xA0, + 0x1C, 0xB1, 0x0A, 0x20, 0x6F, 0x42, 0x8D, 0xDA, 0x46, 0x8E, 0xDB, 0x46, 0xE0, 0x00, 0xD0, 0x07, + 0xC9, 0x00, 0xD0, 0x03, 0x4C, 0x9D, 0x7E, 0xA9, 0x03, 0x85, 0x9A, 0xA9, 0x00, 0x85, 0x99, 0xA0, + 0x2F, 0xB9, 0xA0, 0x6D, 0x99, 0x00, 0xD0, 0x88, 0x10, 0xF7, 0xAD, 0x86, 0x02, 0x8D, 0xD8, 0x46, + 0xA2, 0xD8, 0xA9, 0x00, 0x20, 0xE4, 0x44, 0xAD, 0xD8, 0x46, 0x20, 0xE2, 0x44, 0xA2, 0x03, 0xA9, + 0xE8, 0x20, 0x0A, 0x44, 0xAD, 0x21, 0xD0, 0x8D, 0x86, 0x02, 0xAD, 0x16, 0x46, 0x8D, 0x11, 0xD0, + 0xAD, 0x17, 0x46, 0x8D, 0x16, 0xD0, 0xAD, 0x18, 0x46, 0x29, 0xFD, 0x8D, 0x18, 0xD0, 0xAD, 0x1A, + 0x46, 0x8D, 0x12, 0xD0, 0xAD, 0x1B, 0x46, 0x8D, 0x88, 0x02, 0xAD, 0x1C, 0x46, 0x8D, 0x00, 0xDD, + 0xA9, 0xFF, 0x8D, 0x1F, 0xD4, 0xAD, 0xD9, 0x46, 0x8D, 0x1C, 0xD4, 0xA9, 0x53, 0x8D, 0x77, 0x02, + 0xA9, 0x59, 0x8D, 0x78, 0x02, 0xA9, 0x53, 0x8D, 0x79, 0x02, 0xA9, 0x35, 0x8D, 0x7A, 0x02, 0xA9, + 0x34, 0x8D, 0x7B, 0x02, 0xA9, 0x32, 0x8D, 0x7C, 0x02, 0xA9, 0x37, 0x8D, 0x7D, 0x02, 0xA9, 0x32, + 0x8D, 0x7E, 0x02, 0xA9, 0x3A, 0x8D, 0x7F, 0x02, 0xA9, 0x0D, 0x8D, 0x80, 0x02, 0xA9, 0x0A, 0x85, + 0xC6, 0xA9, 0x00, 0x8D, 0xD8, 0x46, 0xAA, 0xAD, 0xD8, 0x46, 0xC9, 0x0F, 0xB0, 0x0B, 0x20, 0xA5, + 0x45, 0xA2, 0x00, 0xEE, 0xD8, 0x46, 0x4C, 0x86, 0x7E, 0xA9, 0x01, 0x20, 0x25, 0x08, 0x4C, 0x8A, + 0x43, 0xA9, 0x76, 0x8D, 0xDD, 0x46, 0xA9, 0x1C, 0x8D, 0xDC, 0x46, 0x85, 0xFB, 0xAD, 0xDD, 0x46, + 0x85, 0xFC, 0xA9, 0xFF, 0x8D, 0x1F, 0xD4, 0x8D, 0x1C, 0xD4, 0xA0, 0x00, 0xAD, 0x1C, 0xD4, 0x91, + 0xFB, 0xC8, 0xD0, 0xF8, 0xE6, 0xFC, 0xAD, 0x1C, 0xD4, 0x91, 0xFB, 0xC8, 0xD0, 0xF8, 0xE6, 0xFC, + 0xAD, 0x1C, 0xD4, 0x91, 0xFB, 0xC8, 0xC0, 0xD0, 0xD0, 0xF6, 0x60, 0xA0, 0x20, 0x98, 0x99, 0x78, + 0xE4, 0x88, 0x10, 0xFA, 0xA2, 0xE4, 0xA9, 0xA0, 0x20, 0xE4, 0x44, 0xA9, 0x20, 0x20, 0xE2, 0x44, + 0xA2, 0x03, 0xA9, 0x48, 0x20, 0x0A, 0x44, 0x20, 0x3A, 0x43, 0xA9, 0x9A, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x03, 0x91, 0x02, 0xA9, 0x8E, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6E, 0x91, 0x02, + 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, + 0x3A, 0x43, 0xA9, 0xA4, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0x8A, 0xA0, + 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, + 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xA3, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0x9D, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6F, 0x91, 0x02, + 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, + 0x3A, 0x43, 0xA9, 0xA5, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0x03, 0xA0, + 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, + 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xD0, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0xBE, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6F, 0x91, 0x02, + 0xA9, 0x0F, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0xCD, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0x05, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x0F, 0xA0, 0x01, 0x91, 0x02, 0xA9, + 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xF8, 0xA0, 0x04, + 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, 0xD8, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, + 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, + 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xF2, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x00, 0x91, 0x02, 0xA9, + 0xC7, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, + 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x1C, 0xA0, 0x04, + 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x6F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, + 0x91, 0x02, 0xA9, 0x0F, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, + 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x1B, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, + 0xA9, 0x07, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x0F, 0xA0, 0x01, 0x91, + 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x1D, + 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x09, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x0F, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, + 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x44, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xA9, 0x9F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6F, 0x91, 0x02, 0xA9, 0x01, 0xA8, + 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, + 0x43, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, + 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x45, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xA9, 0x0F, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x01, 0xA8, + 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, + 0xC0, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x61, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x6F, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, + 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xBD, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, + 0x91, 0x02, 0xA9, 0x11, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x01, 0xA8, + 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, + 0x08, 0xA0, 0x05, 0x91, 0x02, 0xA9, 0x0C, 0x88, 0x91, 0x02, 0xA9, 0x80, 0xA0, 0x02, 0x91, 0x02, + 0xC8, 0xA9, 0x6F, 0x91, 0x02, 0xA9, 0x01, 0xA8, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, + 0x27, 0x20, 0x9D, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x10, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, + 0x91, 0x02, 0xA9, 0x37, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, 0x91, 0x02, 0xA9, 0x0F, 0xA0, + 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, + 0xA9, 0x0D, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x13, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x73, 0x91, 0x02, 0xA9, 0x0F, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x80, 0x88, 0x91, + 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x38, 0xA0, 0x04, 0x91, 0x02, 0xC8, + 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xA4, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, 0x91, 0x02, 0xA9, + 0x0F, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, + 0x3A, 0x43, 0xA9, 0x70, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0xF1, 0xA0, + 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x70, 0x91, 0x02, 0xA9, 0x0F, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, + 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x98, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, 0x0A, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, + 0x02, 0xA9, 0x0F, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, + 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x6C, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x01, 0x91, 0x02, 0xA9, + 0xF9, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0xA9, 0x0F, 0xA0, 0x01, 0x91, 0x02, + 0xA9, 0x80, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x81, 0xA0, + 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x41, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, + 0x6F, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, + 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x83, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, + 0x02, 0xA9, 0xC9, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x71, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, + 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xAB, + 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0xB3, 0xA0, 0x02, 0x91, 0x02, 0xC8, + 0xA9, 0x6E, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, + 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xD1, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, + 0x91, 0x02, 0xA9, 0x67, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6E, 0x91, 0x02, 0xA9, 0x0D, 0xA0, + 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, + 0xA9, 0xD7, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x02, 0x91, 0x02, 0xA9, 0x3D, 0xA0, 0x02, 0x91, + 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, + 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0xFB, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, + 0x02, 0x91, 0x02, 0xA9, 0xD8, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6E, 0x91, 0x02, 0xA9, 0x0D, + 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, + 0x43, 0xA9, 0x23, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x03, 0x91, 0x02, 0xA9, 0xFD, 0xA0, 0x02, + 0x91, 0x02, 0xC8, 0xA9, 0x6E, 0x91, 0x02, 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, + 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x49, 0xA0, 0x04, 0x91, 0x02, + 0xC8, 0xA9, 0x03, 0x91, 0x02, 0xA9, 0x21, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x6F, 0x91, 0x02, + 0xA9, 0x0D, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, + 0x20, 0x3A, 0x43, 0xA9, 0x58, 0xA0, 0x04, 0x91, 0x02, 0xC8, 0xA9, 0x03, 0x91, 0x02, 0xA9, 0xB1, + 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, + 0x88, 0x91, 0x02, 0xA9, 0x27, 0x20, 0x40, 0x08, 0x20, 0x3A, 0x43, 0xA9, 0x62, 0xA0, 0x04, 0x91, + 0x02, 0xC8, 0xA9, 0x03, 0x91, 0x02, 0xA9, 0xA5, 0xA0, 0x02, 0x91, 0x02, 0xC8, 0xA9, 0x72, 0x91, + 0x02, 0x98, 0xA0, 0x01, 0x91, 0x02, 0xA9, 0x00, 0x88, 0x91, 0x02, 0xA9, 0x27, 0x4C, 0x40, 0x08, + 0x20, 0xCE, 0x44, 0xA0, 0x00, 0xB1, 0x02, 0x8D, 0x98, 0x47, 0x18, 0xA2, 0xD8, 0x8E, 0x99, 0x47, + 0xAD, 0x98, 0x47, 0x85, 0xFB, 0xAD, 0x99, 0x47, 0x85, 0xFC, 0xB1, 0xFB, 0x29, 0x0F, 0xAA, 0xBD, + 0xCE, 0x6D, 0x91, 0xFB, 0xC8, 0xC8, 0xC8, 0xC0, 0xFF, 0xD0, 0xEF, 0xC8, 0xE6, 0xFC, 0xC6, 0xFB, + 0xB1, 0xFB, 0x29, 0x0F, 0xAA, 0xBD, 0xCE, 0x6D, 0x91, 0xFB, 0xC8, 0xC8, 0xC8, 0xC0, 0xFF, 0xD0, + 0xEF, 0xC8, 0xE6, 0xFC, 0xB1, 0xFB, 0x29, 0x0F, 0xAA, 0xBD, 0xCE, 0x6D, 0x91, 0xFB, 0xC8, 0xC8, + 0xC8, 0xC0, 0x5A, 0xD0, 0xEF, 0xA9, 0x00, 0x8D, 0x96, 0x47, 0x8D, 0x97, 0x47, 0xAD, 0x97, 0x47, + 0xC9, 0x00, 0xD0, 0x05, 0xAD, 0x96, 0x47, 0xC9, 0x50, 0xB0, 0x21, 0xAD, 0x00, 0xD8, 0x29, 0x0F, + 0x85, 0x0A, 0x18, 0xA9, 0x6D, 0x85, 0x0B, 0xA0, 0xCE, 0xB1, 0x0A, 0x8D, 0x00, 0xD8, 0x8D, 0x95, + 0x47, 0xEE, 0x96, 0x47, 0xD0, 0xD7, 0xEE, 0x97, 0x47, 0x4C, 0x8C, 0x84, 0x4C, 0x8A, 0x43, 0xA9, + 0x00, 0x8D, 0x9A, 0x47, 0xAD, 0x9A, 0x47, 0xC9, 0x04, 0xB0, 0x18, 0x20, 0xA5, 0x45, 0xA9, 0xA0, + 0x20, 0x2F, 0x84, 0xA9, 0xA1, 0x20, 0x2F, 0x84, 0xA9, 0xA2, 0x20, 0x2F, 0x84, 0xEE, 0x9A, 0x47, + 0x4C, 0xC3, 0x84, 0x60, 0xA9, 0xA0, 0x20, 0xCE, 0x44, 0xA9, 0x28, 0x20, 0x63, 0x2D, 0xA9, 0xA0, + 0x20, 0xCE, 0x44, 0xA9, 0x28, 0x20, 0x63, 0x2D, 0xA9, 0xA0, 0x20, 0xCE, 0x44, 0xA9, 0x28, 0x20, + 0x63, 0x2D, 0xA9, 0xA0, 0x20, 0xCE, 0x44, 0xA9, 0x28, 0x4C, 0x63, 0x2D }; diff --git a/Source/SIDKick/fmopl.cpp b/Source/SIDKick/fmopl.cpp index e833774..df893cc 100644 --- a/Source/SIDKick/fmopl.cpp +++ b/Source/SIDKick/fmopl.cpp @@ -72,6 +72,9 @@ Revision History: verify volume of the FM part on the Y8950 */ +// note: this version has some minor changes for use with SIDKick! + + //#include "vice.h" #include @@ -82,7 +85,7 @@ Revision History: #include "fmopl.h" #ifndef M_PI -#define M_PI 3.14159265358979323846 +#define M_PI 3.14159265358979323846f #endif #define FINAL_SH (0) @@ -99,7 +102,7 @@ Revision History: /* envelope output entries */ #define ENV_BITS 10 #define ENV_LEN (1 << ENV_BITS) -#define ENV_STEP (128.0 / ENV_LEN) +#define ENV_STEP (128.0f / ENV_LEN) #define MAX_ATT_INDEX ((1 << (ENV_BITS - 1)) - 1) /*511*/ #define MIN_ATT_INDEX (0) @@ -143,62 +146,62 @@ static const int slot_array[32] = { /* key scale level */ /* table is 3dB/octave , DV converts this into 6dB/octave */ /* 0.1875 is bit 0 weight of the envelope counter (volume) expressed in the 'decibel' scale */ -#define DV (0.1875 / 2.0) +#define DV (0.1875f / 2.0f) -static const double ksl_tab[8 * 16] = { +static const float ksl_tab[8 * 16] = { /* OCT 0 */ - 0.000 / DV, 0.000 / DV, 0.000 / DV, 0.000 / DV, - 0.000 / DV, 0.000 / DV, 0.000 / DV, 0.000 / DV, - 0.000 / DV, 0.000 / DV, 0.000 / DV, 0.000 / DV, - 0.000 / DV, 0.000 / DV, 0.000 / DV, 0.000 / DV, + 0.000f / DV, 0.000f / DV, 0.000f / DV, 0.000f / DV, + 0.000f / DV, 0.000f / DV, 0.000f / DV, 0.000f / DV, + 0.000f / DV, 0.000f / DV, 0.000f / DV, 0.000f / DV, + 0.000f / DV, 0.000f / DV, 0.000f / DV, 0.000f / DV, /* OCT 1 */ - 0.000 / DV, 0.000 / DV, 0.000 / DV, 0.000 / DV, - 0.000 / DV, 0.000 / DV, 0.000 / DV, 0.000 / DV, - 0.000 / DV, 0.750 / DV, 1.125 / DV, 1.500 / DV, - 1.875 / DV, 2.250 / DV, 2.625 / DV, 3.000 / DV, + 0.000f / DV, 0.000f / DV, 0.000f / DV, 0.000f / DV, + 0.000f / DV, 0.000f / DV, 0.000f / DV, 0.000f / DV, + 0.000f / DV, 0.750f / DV, 1.125f / DV, 1.500f / DV, + 1.875f / DV, 2.250f / DV, 2.625f / DV, 3.000f / DV, /* OCT 2 */ - 0.000 / DV, 0.000 / DV, 0.000 / DV, 0.000 / DV, - 0.000 / DV, 1.125 / DV, 1.875 / DV, 2.625 / DV, - 3.000 / DV, 3.750 / DV, 4.125 / DV, 4.500 / DV, - 4.875 / DV, 5.250 / DV, 5.625 / DV, 6.000 / DV, + 0.000f / DV, 0.000f / DV, 0.000f / DV, 0.000f / DV, + 0.000f / DV, 1.125f / DV, 1.875f / DV, 2.625f / DV, + 3.000f / DV, 3.750f / DV, 4.125f / DV, 4.500f / DV, + 4.875f / DV, 5.250f / DV, 5.625f / DV, 6.000f / DV, /* OCT 3 */ - 0.000 / DV, 0.000 / DV, 0.000 / DV, 1.875 / DV, - 3.000 / DV, 4.125 / DV, 4.875 / DV, 5.625 / DV, - 6.000 / DV, 6.750 / DV, 7.125 / DV, 7.500 / DV, - 7.875 / DV, 8.250 / DV, 8.625 / DV, 9.000 / DV, + 0.000f / DV, 0.000f / DV, 0.000f / DV, 1.875f / DV, + 3.000f / DV, 4.125f / DV, 4.875f / DV, 5.625f / DV, + 6.000f / DV, 6.750f / DV, 7.125f / DV, 7.500f / DV, + 7.875f / DV, 8.250f / DV, 8.625f / DV, 9.000f / DV, /* OCT 4 */ - 0.000 / DV, 0.000 / DV, 3.000 / DV, 4.875 / DV, - 6.000 / DV, 7.125 / DV, 7.875 / DV, 8.625 / DV, - 9.000 / DV, 9.750 / DV, 10.125 / DV, 10.500 / DV, - 10.875 / DV, 11.250 / DV, 11.625 / DV, 12.000 / DV, + 0.000f / DV, 0.000f / DV, 3.000f / DV, 4.875f / DV, + 6.000f / DV, 7.125f / DV, 7.875f / DV, 8.625f / DV, + 9.000f / DV, 9.750f / DV, 10.125f / DV, 10.500f / DV, + 10.875f / DV, 11.250f / DV, 11.625f / DV, 12.000f / DV, /* OCT 5 */ - 0.000 / DV, 3.000 / DV, 6.000 / DV, 7.875 / DV, - 9.000 / DV, 10.125 / DV, 10.875 / DV, 11.625 / DV, - 12.000 / DV, 12.750 / DV, 13.125 / DV, 13.500 / DV, - 13.875 / DV, 14.250 / DV, 14.625 / DV, 15.000 / DV, + 0.000f / DV, 3.000f / DV, 6.000f / DV, 7.875f / DV, + 9.000f / DV, 10.125f / DV, 10.875f / DV, 11.625f / DV, + 12.000f / DV, 12.750f / DV, 13.125f / DV, 13.500f / DV, + 13.875f / DV, 14.250f / DV, 14.625f / DV, 15.000f / DV, /* OCT 6 */ - 0.000 / DV, 6.000 / DV, 9.000 / DV, 10.875 / DV, - 12.000 / DV, 13.125 / DV, 13.875 / DV, 14.625 / DV, - 15.000 / DV, 15.750 / DV, 16.125 / DV, 16.500 / DV, - 16.875 / DV, 17.250 / DV, 17.625 / DV, 18.000 / DV, + 0.000f / DV, 6.000f / DV, 9.000f / DV, 10.875f / DV, + 12.000f / DV, 13.125f / DV, 13.875f / DV, 14.625f / DV, + 15.000f / DV, 15.750f / DV, 16.125f / DV, 16.500f / DV, + 16.875f / DV, 17.250f / DV, 17.625f / DV, 18.000f / DV, /* OCT 7 */ - 0.000 / DV, 9.000 / DV, 12.000 / DV, 13.875 / DV, - 15.000 / DV, 16.125 / DV, 16.875 / DV, 17.625 / DV, - 18.000 / DV, 18.750 / DV, 19.125 / DV, 19.500 / DV, - 19.875 / DV, 20.250 / DV, 20.625 / DV, 21.000 / DV + 0.000f / DV, 9.000f / DV, 12.000f / DV, 13.875f / DV, + 15.000f / DV, 16.125f / DV, 16.875f / DV, 17.625f / DV, + 18.000f / DV, 18.750f / DV, 19.125f / DV, 19.500f / DV, + 19.875f / DV, 20.250f / DV, 20.625f / DV, 21.000f / DV }; #undef DV /* sustain level table (3dB per step) */ /* 0 - 15: 0, 3, 6, 9,12,15,18,21,24,27,30,33,36,39,42,93 (dB)*/ -#define SC(db) (UINT32)(db * (2.0 / ENV_STEP)) +#define SC(db) (UINT32)(db * (2.0f / ENV_STEP)) static const UINT32 sl_tab[16] = { SC(0), SC(1), SC(2), SC(3), SC(4), SC(5), SC(6), SC(7), @@ -311,12 +314,12 @@ static const unsigned char eg_rate_shift[16 + 64 + 16] = { /* Envelope Gene #undef O /* multiple table */ -#define ML 2 +#define ML 2.0f -static const double mul_tab[16] = { +static const float mul_tab[16] = { /* 1/2, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,10,12,12,15,15 */ - 0.50 * ML, 1.00 * ML, 2.00 * ML, 3.00 * ML, 4.00 * ML, 5.00 * ML, 6.00 * ML, 7.00 * ML, - 8.00 * ML, 9.00 * ML, 10.00 * ML, 10.00 * ML, 12.00 * ML, 12.00 * ML, 15.00 * ML, 15.00 * ML + 0.50f * ML, 1.00f * ML, 2.00f * ML, 3.00f * ML, 4.00f * ML, 5.00f * ML, 6.00f * ML, 7.00f * ML, + 8.00f * ML, 9.00f * ML, 10.00f * ML, 10.00f * ML, 12.00f * ML, 12.00f * ML, 15.00f * ML, 15.00f * ML }; #undef ML @@ -489,7 +492,7 @@ static void fmopl_alarm_B(CLOCK offset, void *data) /* ---------------------------------------------------------------------*/ -inline static int limit(int val, int max, int min) +__attribute__( ( always_inline ) ) inline static int limit(int val, int max, int min) { if (val > max) { val = max; @@ -501,7 +504,7 @@ inline static int limit(int val, int max, int min) } /* status set and IRQ handling */ -inline static void OPL_STATUS_SET(FM_OPL *OPL, int flag) +__attribute__( ( always_inline ) ) inline static void OPL_STATUS_SET(FM_OPL *OPL, int flag) { /* set status flag */ OPL->status |= flag; @@ -513,7 +516,7 @@ inline static void OPL_STATUS_SET(FM_OPL *OPL, int flag) } /* status reset and IRQ handling */ -inline static void OPL_STATUS_RESET(FM_OPL *OPL, int flag) +__attribute__( ( always_inline ) ) inline static void OPL_STATUS_RESET(FM_OPL *OPL, int flag) { /* reset status flag */ OPL->status &= ~flag; @@ -525,7 +528,7 @@ inline static void OPL_STATUS_RESET(FM_OPL *OPL, int flag) } /* IRQ mask set */ -inline static void OPL_STATUSMASK_SET(FM_OPL *OPL, int flag) +__attribute__( ( always_inline ) ) inline static void OPL_STATUSMASK_SET(FM_OPL *OPL, int flag) { OPL->statusmask = flag; @@ -535,7 +538,7 @@ inline static void OPL_STATUSMASK_SET(FM_OPL *OPL, int flag) } /* advance LFO to next sample */ -inline static void advance_lfo(FM_OPL *OPL) +__attribute__( ( always_inline ) ) inline static void advance_lfo(FM_OPL *OPL) { UINT8 tmp; @@ -558,7 +561,7 @@ inline static void advance_lfo(FM_OPL *OPL) } /* advance to next sample */ -inline static void advance(FM_OPL *OPL) +__attribute__( ( always_inline ) ) inline static void advance(FM_OPL *OPL) { OPL_CH *CH; OPL_SLOT *op; @@ -687,7 +690,7 @@ inline static void advance(FM_OPL *OPL) } } -inline static signed int op_calc(UINT32 phase, unsigned int env, signed int pm, unsigned int wave_tab) +__attribute__( ( always_inline ) ) inline static signed int op_calc(UINT32 phase, unsigned int env, signed int pm, unsigned int wave_tab) { UINT32 p; @@ -699,7 +702,7 @@ inline static signed int op_calc(UINT32 phase, unsigned int env, signed int pm, return tl_tab[p]; } -inline static signed int op_calc1(UINT32 phase, unsigned int env, signed int pm, unsigned int wave_tab) +__attribute__( ( always_inline ) ) inline static signed int op_calc1(UINT32 phase, unsigned int env, signed int pm, unsigned int wave_tab) { UINT32 p; @@ -714,7 +717,7 @@ inline static signed int op_calc1(UINT32 phase, unsigned int env, signed int pm, #define volume_calc(OP) ((OP)->TLL + ((UINT32)(OP)->volume) + (LFO_AM & (OP)->AMmask)) /* calculate output */ -inline static void OPL_CALC_CH(OPL_CH *CH) +__attribute__( ( always_inline ) ) inline static void OPL_CALC_CH(OPL_CH *CH) { OPL_SLOT *SLOT; unsigned int env; @@ -781,7 +784,7 @@ number number BLK/FNUM2 FNUM Drum Hat Drum Tom Cymbal /* calculate rhythm */ -inline static void OPL_CALC_RH(OPL_CH *CH, unsigned int noise) +__attribute__( ( always_inline ) ) inline static void OPL_CALC_RH(OPL_CH *CH, unsigned int noise) { OPL_SLOT *SLOT; signed int out; @@ -951,11 +954,11 @@ static int init_tables(void) { signed int i, x; signed int n; - double o, m; + float o, m; for (x = 0; x < TL_RES_LEN; x++) { - m = (1 << 16) / pow(2, (x + 1) * (ENV_STEP / 4.0) / 8.0); - m = floor(m); + m = (1 << 16) / powf(2.0f, (x + 1) * (ENV_STEP / 4.0f) / 8.0f); + m = floorf(m); /* we never reach (1<<16) here due to the (x+1) */ /* result fits within 16 bits at maximum */ @@ -980,25 +983,25 @@ static int init_tables(void) for (i = 0; i < SIN_LEN; i++) { /* non-standard sinus */ - m = sin(((i * 2) + 1) * M_PI / SIN_LEN ); /* checked against the real chip */ + m = sinf(((i * 2) + 1) * M_PI / SIN_LEN ); /* checked against the real chip */ /* we never reach zero here due to ((i * 2) + 1) */ - if (m > 0.0) { - o = 8 * log(1.0 / m) / log(2.0); /* convert to 'decibels' */ + if (m > 0.0f) { + o = 8.0f * logf(1.0f / m) / logf(2.0f); /* convert to 'decibels' */ } else { - o = 8 * log(-1.0 / m) / log(2.0); /* convert to 'decibels' */ + o = 8.0f * logf(-1.0f / m) / logf(2.0f); /* convert to 'decibels' */ } o = o / (ENV_STEP / 4); - n = (int)(2.0 * o); + n = (int)(2.0f * o); if (n & 1) { /* round to nearest */ n = (n >> 1) + 1; } else { n = n >> 1; } - sin_tab[i] = n * 2 + (m >= 0.0 ? 0 : 1); + sin_tab[i] = n * 2 + (m >= 0.0f ? 0 : 1); } for (i = 0; i < SIN_LEN; i++) { @@ -1036,34 +1039,59 @@ static void OPLCloseTable( void ) { } -static void OPL_initalize(FM_OPL *OPL) +void OPL_initalize(FM_OPL *OPL) { int i; /* frequency base */ - OPL->freqbase = (OPL->rate) ? ((double)OPL->clock / 72.0) / OPL->rate : 0; + OPL->freqbase = (OPL->rate) ? ((float)OPL->clock / 72.0f) / OPL->rate : 0; /* make fnumber -> increment counter table */ for (i = 0; i < 1024; i++) { /* opn phase increment counter = 20bit */ - OPL->fn_tab[i] = (UINT32)((double)i * 64 * OPL->freqbase * (1 << (FREQ_SH - 10))); /* -10 because chip works with 10.10 fixed point, while we use 16.16 */ + OPL->fn_tab1[i] = (UINT32)((float)i * 64 * OPL->freqbase * (1 << (FREQ_SH - 10))); /* -10 because chip works with 10.10 fixed point, while we use 16.16 */ + } + for (i = 0; i < 1024; i++) { + /* opn phase increment counter = 20bit */ + OPL->fn_tab2[i] = (UINT32)((float)i * 64 * 2 * OPL->freqbase * (1 << (FREQ_SH - 10))); /* -10 because chip works with 10.10 fixed point, while we use 16.16 */ } + OPL->fn_tab = &OPL->fn_tab1[0]; + /* Amplitude modulation: 27 output levels (triangle waveform); 1 level takes one of: 192, 256 or 448 samples */ /* One entry from LFO_AM_TABLE lasts for 64 samples */ - OPL->lfo_am_inc = (UINT32)((1.0 / 64.0) * (1 << LFO_SH) * OPL->freqbase); + OPL->lfo_am_inc = (UINT32)((1.0f / 64.0f) * (1 << LFO_SH) * OPL->freqbase); /* Vibrato: 8 output levels (triangle waveform); 1 level takes 1024 samples */ - OPL->lfo_pm_inc = (UINT32)((1.0 / 1024.0) * (1 << LFO_SH) * OPL->freqbase); + OPL->lfo_pm_inc = (UINT32)((1.0f / 1024.0f) * (1 << LFO_SH) * OPL->freqbase); /* Noise generator: a step takes 1 sample */ - OPL->noise_f = (UINT32)((1.0 / 1.0) * (1 << FREQ_SH) * OPL->freqbase); + OPL->noise_f = (UINT32)((1.0f / 1.0f) * (1 << FREQ_SH) * OPL->freqbase); OPL->eg_timer_add = (UINT32)((1 << EG_SH) * OPL->freqbase); OPL->eg_timer_overflow = (1) * (1 << EG_SH); } -inline static void FM_KEYON(OPL_SLOT *SLOT, UINT32 key_set) +void OPL_initalize_without_table(FM_OPL *OPL) +{ + /* frequency base */ + OPL->freqbase = (OPL->rate) ? ((float)OPL->clock / 72.0f) / OPL->rate : 0; + + /* Amplitude modulation: 27 output levels (triangle waveform); 1 level takes one of: 192, 256 or 448 samples */ + /* One entry from LFO_AM_TABLE lasts for 64 samples */ + OPL->lfo_am_inc = (UINT32)((1.0f / 64.0f) * (1 << LFO_SH) * OPL->freqbase); + + /* Vibrato: 8 output levels (triangle waveform); 1 level takes 1024 samples */ + OPL->lfo_pm_inc = (UINT32)((1.0f / 1024.0f) * (1 << LFO_SH) * OPL->freqbase); + + /* Noise generator: a step takes 1 sample */ + OPL->noise_f = (UINT32)((1.0f / 1.0f) * (1 << FREQ_SH) * OPL->freqbase); + + OPL->eg_timer_add = (UINT32)((1 << EG_SH) * OPL->freqbase); + OPL->eg_timer_overflow = (1) * (1 << EG_SH); +} + +__attribute__( ( always_inline ) ) inline static void FM_KEYON(OPL_SLOT *SLOT, UINT32 key_set) { if (!SLOT->key) { /* restart Phase Generator */ @@ -1075,7 +1103,7 @@ inline static void FM_KEYON(OPL_SLOT *SLOT, UINT32 key_set) SLOT->key |= key_set; } -inline static void FM_KEYOFF(OPL_SLOT *SLOT, UINT32 key_clr) +__attribute__( ( always_inline ) ) inline static void FM_KEYOFF(OPL_SLOT *SLOT, UINT32 key_clr) { if (SLOT->key) { SLOT->key &= key_clr; @@ -1090,7 +1118,7 @@ inline static void FM_KEYOFF(OPL_SLOT *SLOT, UINT32 key_clr) } /* update phase increment counter of operator (also update the EG rates if necessary) */ -inline static void CALC_FCSLOT(OPL_CH *CH, OPL_SLOT *SLOT) +__attribute__( ( always_inline ) ) inline static void CALC_FCSLOT(OPL_CH *CH, OPL_SLOT *SLOT) { int ksr; @@ -1117,7 +1145,7 @@ inline static void CALC_FCSLOT(OPL_CH *CH, OPL_SLOT *SLOT) } /* set multi,am,vib,EG-TYP,KSR,mul */ -inline static void set_mul(FM_OPL *OPL, int slot, int v) +__attribute__( ( always_inline ) ) inline static void set_mul(FM_OPL *OPL, int slot, int v) { OPL_CH *CH = &OPL->P_CH[slot / 2]; OPL_SLOT *SLOT = &CH->SLOT[slot & 1]; @@ -1131,7 +1159,7 @@ inline static void set_mul(FM_OPL *OPL, int slot, int v) } /* set ksl & tl */ -inline static void set_ksl_tl(FM_OPL *OPL, int slot, int v) +__attribute__( ( always_inline ) ) inline static void set_ksl_tl(FM_OPL *OPL, int slot, int v) { OPL_CH *CH = &OPL->P_CH[slot / 2]; OPL_SLOT *SLOT = &CH->SLOT[slot & 1]; @@ -1144,7 +1172,7 @@ inline static void set_ksl_tl(FM_OPL *OPL, int slot, int v) } /* set attack rate & decay rate */ -inline static void set_ar_dr(FM_OPL *OPL, int slot, int v) +__attribute__( ( always_inline ) ) inline static void set_ar_dr(FM_OPL *OPL, int slot, int v) { OPL_CH *CH = &OPL->P_CH[slot / 2]; OPL_SLOT *SLOT = &CH->SLOT[slot & 1]; @@ -1165,7 +1193,7 @@ inline static void set_ar_dr(FM_OPL *OPL, int slot, int v) } /* set sustain level & release rate */ -inline static void set_sl_rr(FM_OPL *OPL, int slot, int v) +__attribute__( ( always_inline ) ) inline static void set_sl_rr(FM_OPL *OPL, int slot, int v) { OPL_CH *CH = &OPL->P_CH[slot / 2]; OPL_SLOT *SLOT = &CH->SLOT[slot & 1]; @@ -1605,7 +1633,7 @@ static unsigned char OPLRead(FM_OPL *OPL, int a) } /* CSM Key Controll */ -inline static void CSMKeyControll(OPL_CH *CH) +__attribute__( ( always_inline ) ) inline static void CSMKeyControll(OPL_CH *CH) { FM_KEYON(&CH->SLOT[SLOT1], 4); FM_KEYON(&CH->SLOT[SLOT2], 4); @@ -1745,7 +1773,7 @@ void ym3812_update_one(FM_OPL *chip, OPLSAMPLE *buffer, int length) lt >>= FINAL_SH; /* limit check */ - lt = limit(lt, MAXOUT, MINOUT); + //lt = limit(lt, MAXOUT, MINOUT); /* store to sound buffer */ buf[i] = lt; diff --git a/Source/SIDKick/fmopl.h b/Source/SIDKick/fmopl.h index c9b9414..86ee17d 100644 --- a/Source/SIDKick/fmopl.h +++ b/Source/SIDKick/fmopl.h @@ -75,7 +75,9 @@ typedef struct fm_opl_f { UINT8 rhythm; /* Rhythm mode */ - UINT32 fn_tab[1024]; /* fnumber->increment counter */ + UINT32 fn_tab1[1024]; /* fnumber->increment counter */ + UINT32 fn_tab2[1024]; /* fnumber->increment counter */ + UINT32 *fn_tab; /* fnumber->increment counter */ /* LFO */ UINT8 lfo_am_depth; @@ -104,7 +106,7 @@ typedef struct fm_opl_f { UINT32 clock; /* master clock (Hz) */ UINT32 rate; /* sampling rate (Hz) */ - double freqbase; /* frequency base */ + float freqbase; /* frequency base */ } FM_OPL; /* diff --git a/Source/SIDKick/globals.h b/Source/SIDKick/globals.h new file mode 100644 index 0000000..4cefa72 --- /dev/null +++ b/Source/SIDKick/globals.h @@ -0,0 +1,59 @@ +/* + _________.___________ ____ __.__ __ + / _____/| \______ \ | |/ _|__| ____ | | __ + \_____ \ | || | \| < | |/ ___\| |/ / + / \| || ` \ | \| \ \___| < + /_______ /|___/_______ /____|__ \__|\___ >__|_ \ + \/ \/ \/ \/ \/ + + globals.h + + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 + (using reSID by Dag Lem and FMOPL by Jarek Burczynski, Tatsuyuki Satoh, Marco van den Heuvel, and Acho A. Tang) + Copyright (c) 2019-2021 Carsten Dachsbacher + + Logo created with http://patorjk.com/software/taag/ + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +#pragma GCC optimize( "Ofast", "unroll-loops", "omit-frame-pointer", "inline", "finite-math-only", "single-precision-constant", "fp-contract=fast", "modulo-sched", "modulo-sched-allow-regmoves", "gcse-sm", "gcse-las" ) +//#pragma GCC optimize( "Ofast", "unroll-loops", "omit-frame-pointer", "inline", "finite-math-only", "single-precision-constant", "fp-contract=fast" ) + +// choose audio device used for output: 0 = MQS, 1 = DAC +#define audioDevice 1 + +// Teensy clock speed (keep 816 unless you deactivate MIDI and LED) +#define TEENSY_CLOCK 816 + +//#define FIRMWARE_C128 + +// C128 does not support $D500 for SID #2 +// except for the C64-mode if: +// A8 is connected to U3 pin 14, and A7 to U7 (MMU, MOS 8722) pin 47 +#ifdef FIRMWARE_C128 +#define C128_D500_SUPPORT +#endif + +// define if MIDI device emulation to be included in the firmware +#define SUPPORT_MIDI + +// define if WS2818b-LED support to be included in the firmware +#define FANCY_LED + +// define this to use the sample generation routine which adapts to the actual C64/C128 clock +#define DYNAMIC_ADJUSTMENT_MIXER + + +//#define DEBUG_OUTPUT diff --git a/Source/SIDKick/incl_resid.cpp b/Source/SIDKick/incl_resid.cpp index 5d1cb8b..3597f47 100644 --- a/Source/SIDKick/incl_resid.cpp +++ b/Source/SIDKick/incl_resid.cpp @@ -1,27 +1,27 @@ #include "incl_resid.h" -#include STR(SIDKICK_SOURCE_DIR/reSID16/envelope.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/extfilt.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/filter.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/pot.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/version.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/voice.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave6581__ST.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave6581_P_T.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave6581_PS_.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave6581_PST.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave8580__ST.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave8580_P_T.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave8580_PS_.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave8580_PST.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/wave.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID16/sid.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/envelope.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/extfilt.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/filter.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/pot.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/version.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/voice.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave6581__ST.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave6581_P_T.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave6581_PS_.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave6581_PST.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave8580__ST.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave8580_P_T.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave8580_PS_.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave8580_PST.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/wave.cc) +#include STR(LOCAL_SKETCH_DIR/reSID16/sid.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID/envelope.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID/extfilt.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID/filter.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID/version.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID/voice.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID/dac.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID/wave.cc) -#include STR(SIDKICK_SOURCE_DIR/reSID/sid.cc) +#include STR(LOCAL_SKETCH_DIR/reSID/envelope.cc) +#include STR(LOCAL_SKETCH_DIR/reSID/extfilt.cc) +#include STR(LOCAL_SKETCH_DIR/reSID/filter.cc) +#include STR(LOCAL_SKETCH_DIR/reSID/version.cc) +#include STR(LOCAL_SKETCH_DIR/reSID/voice.cc) +#include STR(LOCAL_SKETCH_DIR/reSID/dac.cc) +#include STR(LOCAL_SKETCH_DIR/reSID/wave.cc) +#include STR(LOCAL_SKETCH_DIR/reSID/sid.cc) diff --git a/Source/SIDKick/incl_resid.h b/Source/SIDKick/incl_resid.h index 19fcf8a..b1f5e85 100644 --- a/Source/SIDKick/incl_resid.h +++ b/Source/SIDKick/incl_resid.h @@ -1,6 +1,12 @@ #define XSTR(x) #x #define STR(x) XSTR(x) -#define SIDKICK_SOURCE_DIR c:\SIDKick\ +#define LOCAL_SKETCH_DIR c:\putyourpathhere\SIDKick\ + +#define HIGH_PRECISION_TABLES + +//#define NO_RESID10 #include "reSID16/sid.h" +#ifndef NO_RESID10 #include "reSID/sid.h" +#endif diff --git a/Source/SIDKick/launch.h b/Source/SIDKick/launch.h index bdaf79a..6fe5606 100644 --- a/Source/SIDKick/launch.h +++ b/Source/SIDKick/launch.h @@ -6,7 +6,7 @@ /_______ /|___/_______ /____|__ \__|\___ >__|_ \ \/ \/ \/ \/ \/ - SIDKick - SID-replacement with SID and Sound Expander Emulation based on Teensy 4.1 + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 Copyright (c) 2019-2021 Carsten Dachsbacher Logo created with http://patorjk.com/software/taag/ @@ -25,11 +25,14 @@ along with this program. If not, see . */ -const long int launchSize = 55; -unsigned char launchCode[55] = { - // with keyboard buffer and rU:[return] - 0x3C, 0x03, 0xA2, 0x01, 0xA9, 0x08, 0x86, 0x2B, 0x85, 0x2C, 0xA2, 0x01, 0xA9, 0x80, 0x86, 0x2D, - 0x85, 0x2E, 0x86, 0x2F, 0x85, 0x30, 0x86, 0x31, 0x85, 0x32, 0x86, 0xAE, 0x85, 0xAF, 0xA9, 0x52, - 0x8D, 0x77, 0x02, 0xA9, 0xD5, 0x8D, 0x78, 0x02, 0xA9, 0x3A, 0x8D, 0x79, 0x02, 0xA9, 0x0D, 0x8D, - 0x7A, 0x02, 0xA9, 0x04, 0x85, 0xC6, 0x60 +long int launchSize = 127; +unsigned char launchCode[127] = { + 0x3C, 0x03, 0xA9, 0x1C, 0xC5, 0x2E, 0xD0, 0x41, 0xA2, 0x00, 0xBD, 0x50, 0x03, 0x9D, 0x22, 0x22, + 0xCA, 0xD0, 0xF7, 0x4C, 0x2B, 0x22, 0x53, 0x59, 0x53, 0x35, 0x34, 0x33, 0x30, 0x31, 0x0D, 0xA9, + 0xF7, 0x8D, 0x05, 0xD5, 0xA2, 0xFF, 0x78, 0x9A, 0xD8, 0x8E, 0x16, 0xD0, 0x20, 0xA3, 0xFD, 0x20, + 0x50, 0xFD, 0x20, 0x15, 0xFD, 0x20, 0x5B, 0xFF, 0xA2, 0x09, 0x86, 0xC6, 0xBD, 0x21, 0x22, 0x9D, + 0x76, 0x02, 0xCA, 0xD0, 0xF7, 0x58, 0x4C, 0xFE, 0xFC, 0xA2, 0x01, 0xA9, 0x08, 0x86, 0x2B, 0x85, + 0x2C, 0xA2, 0x01, 0xA9, 0x80, 0x86, 0x2D, 0x85, 0x2E, 0x86, 0x2F, 0x85, 0x30, 0x86, 0x31, 0x85, + 0x32, 0x86, 0xAE, 0x85, 0xAF, 0xA9, 0x52, 0x8D, 0x77, 0x02, 0xA9, 0xD5, 0x8D, 0x78, 0x02, 0xA9, + 0x3A, 0x8D, 0x79, 0x02, 0xA9, 0x0D, 0x8D, 0x7A, 0x02, 0xA9, 0x04, 0x85, 0xC6, 0x58, 0x60 }; diff --git a/Source/SIDKick/prgslots.cpp b/Source/SIDKick/prgslots.cpp index 393499d..a062bf4 100644 --- a/Source/SIDKick/prgslots.cpp +++ b/Source/SIDKick/prgslots.cpp @@ -8,7 +8,7 @@ prgslots.cpp - SIDKick - SID-replacement with SID and Sound Expander Emulation based on Teensy 4.1 + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 (using reSID by Dag Lem and FMOPL by Jarek Burczynski, Tatsuyuki Satoh, Marco van den Heuvel, and Acho A. Tang) Copyright (c) 2019-2021 Carsten Dachsbacher @@ -29,7 +29,9 @@ */ #include -unsigned char prgDirectory[ 36 * 24 + 1 ] = +unsigned char prgDirectory[ 36 * 24 + 1 ]; + +unsigned char prgDirectory_Flash[ 36 * 24 + 1 ] PROGMEM = { // 18 byte name (string null-terminated), 4 byte ofs, 2 byte length 'E', 'M', 'P', 'T', 'Y', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/Source/SIDKick/prgslots.h b/Source/SIDKick/prgslots.h index 12f817d..afd40d7 100644 --- a/Source/SIDKick/prgslots.h +++ b/Source/SIDKick/prgslots.h @@ -8,7 +8,7 @@ prgslots.h - SIDKick - SID-replacement with SID and Sound Expander Emulation based on Teensy 4.1 + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 (using reSID by Dag Lem and FMOPL by Jarek Burczynski, Tatsuyuki Satoh, Marco van den Heuvel, and Acho A. Tang) Copyright (c) 2019-2021 Carsten Dachsbacher @@ -30,7 +30,8 @@ #ifndef PRG_SLOTS_h_ #define PRG_SLOTS_h_ -extern const unsigned char prgDirectory[ 36 * 24 + 1 ]; +extern unsigned char prgDirectory[ 36 * 24 + 1 ]; +extern const unsigned char prgDirectory_Flash[ 36 * 24 + 1 ]; extern const unsigned char prgRepository[ 1024 * 1024 ]; #endif diff --git a/Source/SIDKick/samvoice.h b/Source/SIDKick/samvoice.h index bd2860a..1b681d6 100644 --- a/Source/SIDKick/samvoice.h +++ b/Source/SIDKick/samvoice.h @@ -6,7 +6,7 @@ /_______ /|___/_______ /____|__ \__|\___ >__|_ \ \/ \/ \/ \/ \/ - SIDKick - SID-replacement with SID and Sound Expander Emulation based on Teensy 4.1 + SIDKick - SID-replacement with SID, Sound Expander and MIDI Emulation based on Teensy 4.1 Copyright (c) 2019-2021 Carsten Dachsbacher Logo created with http://patorjk.com/software/taag/