Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[ATmega644][C] Problem w komunikacji z STA015

ePeter1234 29 Apr 2009 22:23 2985 25
  • #1
    ePeter1234
    Level 18  
    Witam!!!

    Już kilka dni walczę aby zmusić STA015 do przyjęcia i zdekodowania danych. Napisałem procedurę inicjującą decoder. Po jej wysłaniu do dekodera pin DATA_REQ przechodzi w stan wysoki i czeka na dane do zdekodowania (przynajmniej takl mi się wydaje). Przerobiłem jakąś tam 3 sekundową mptrójkę na tablice i umieściłem ją w programie procka. Problem polega na tym, że ile bym danych do dekodera nie wysłał to DATA_REQ nie przechodzi w stan niski. Nie wiem już co jest nie tak. Datasheet już znam na pamięć, szukałem w googlach i nic :( Proszę o pomoc albo jakieś wskazówki. Poniżej zamieszczam kod inicjalizacji STA:

    
    #include "sta015.h"
    #include "twi.h"
    
    int sta_cmd_read(char twi_ack, char twi_data)
    {
    	int x;
    	
    	twi_start();
    	twi_send(0x86);
    	twi_send(twi_data);
    	twi_start();
    	twi_send(0x87);
    	x = twi_recive(twi_ack);
    	twi_stop();
    	
    	return x;
    }
    
    void sta_cmd_write(char twi_adr, char twi_data)
    {
    	twi_start();
    	twi_send(0x86);
    	twi_send(twi_adr);
    	twi_send(twi_data);
    	twi_stop();
    }
    
    void sta_init(void)
    {
    	sta_cmd_write(sta_soft_reset_reg, on);
    	sta_cmd_write(sta_soft_reset_reg, off);
    	sta_cmd_write(sta_mute_reg, on);
    	
    	sta_cmd_write(sta_pcmconf_reg, 0x22);
    	sta_cmd_write(sta_pcmcross, 0x00);
    	sta_cmd_write(sta_chip_mode_reg, 0x00);
    	sta_cmd_write(sta_sckl_pol_reg, 0x04);
    	sta_cmd_write(sta_data_req_pol_reg, 0x01);
    	sta_cmd_write(sta_data_req_reg, 0x04);
    	
    	sta_cmd_write(sta_run_reg, on);
    	sta_cmd_write(sta_play_reg, on);
    	sta_cmd_write(sta_mute_reg, off);
    }
    


    A tu jest datasheet do tego decodera:

    Jak się kasuje prowizję??
  • #2
    K_o_n_r_a_d
    Level 23  
    Testowałem ten układ jakiś czas temu i nie pamiętam dokładnie jak to było, ale: co z pozostałymi rejestrami, szczególnie wszystkie PLL* (rejestry 5-7, 80, 81, 97, 100, 101 - przeleciałem wzrokiem tabelkę i wydaje mi się, że tez trzeba skonfigurować).
    Czy dane które wysyłasz na pewno są poprawne? Jak je konwertowałeś, po prostu wkleiłeś czy coś więcej? Gdy będziesz wysyłał niepoprawne dane tak właśnie będzie się zachowywał STA015.
    Pokaż może większą część kodu. Jak wysyłasz dane do STA015? Czy poprawnie skonfigurowane SPI? Czy sam uK cokolwiek wysyła - sprawdz oscyloskopem jeśli masz taką możliwość?

    ePeter1234 wrote:
    A tu jest datasheet do tego decodera:

    Jak się kasuje prowizję??
    Podaj adres do strony producenta i nie będzie problemu.
  • #3
    ePeter1234
    Level 18  
    Ustawiłem te rejestry tak ja w tabelce na końcu datasheet'a dla kwarcu 10 MHz. tj:

    
    void sta_init(void)
    {
    	sta_cmd_write(sta_soft_reset_reg, on);
    	sta_cmd_write(sta_soft_reset_reg, off);
    //	sta_cmd_write(sta_mute_reg, on);
    
       sta_cmd_write(0x54, 0x05); 
       sta_cmd_write(0x55, 0x26); 
       sta_cmd_write(0x07, 0x00);    
       //PLL 
       sta_cmd_write(0x06, 0x11); 
       sta_cmd_write(0x0B, 0x03); 
       sta_cmd_write(0x61, 0x09); 
       sta_cmd_write(0x50, 0x0A); 
       sta_cmd_write(0x65, 0x6E); 
       sta_cmd_write(0x52, 0xA0);    
       sta_cmd_write(0x64, 0x98);    
       sta_cmd_write(0x51, 0xBA); 
       sta_cmd_write(0x05, 0xA1); 
       //PLL 
       sta_cmd_write(0x0D, 0x00);//SPI_pol 
       sta_cmd_write(0x18, 0x04);    
       sta_cmd_write(0x0C, 0x01);//REQ    
       sta_cmd_write(0x4D, 0x00);//chip mode 
       sta_cmd_write(0x14, 0x00);//demute 
       sta_cmd_write(0x72, 0x01);//Run 
       sta_cmd_write(0x13, 0x01);//Play
    


    Takie same ustawienia znalazłem na jednym poscie na elektrodzie. Wysyłam do niego MP3 z tablicy zapisanej w programie i lipa. SPI działa poprawnie. Jak miałęm dostęp do oscyloskopu do dane przelatywały poprawnie. Co do MP3 otworzyłem plik w jakims winhex czy cos i przekopiowalem dane szesnastkowo do tablicy w procku, wiec powinno byc ok. Sprawdzilem to ze specyfikacja pliku MP3 i wyglada ze dane sa poprawne.

    Tu jest SPI:

    
    #include "spi.h"
    
    void spi_init_sta(void)
    {
    	DDR_SPI = (1<<DD_MOSI)|(1<<DD_SCK)|(1<<DD_SS)|(1<<DD_MP3_CS)|(1<<DD_MMC_CS);
    	PORT_SPI = (1<<PB_SS)|(1<<PB_MP3_CS)|(1<<PB_MMC_CS);
    	SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0);
    }
    
    void spi_init_mmc(void)
    {
    	DDR_SPI = (1<<DD_MOSI)|(1<<DD_SCK)|(1<<DD_SS)|(1<<DD_MP3_CS);
    	PORT_SPI = (1<<PB_SS)|(1<<PB_MP3_CS);
    	SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0);
    }
    
    void spi_send(char spi_data)
    {
    	SPDR = spi_data;
    	while(!(SPSR & (1<<SPIF)))
    	{
    	}
    }
    
    char spi_read(void)
    {
    	SPDR = 0xaa;
    	while(!(SPSR & (1<<SPIF)))
    	{
    	}
    	
    	return SPDR;
    }
    


    Tu jest caly STA015.c

    
    #include "sta015.h"
    #include "twi.h"
    
    int sta_cmd_read(char twi_ack, char twi_data)
    {
    	int x;
    	
    	twi_start();
    	twi_send(0x86);
    	twi_send(twi_data);
    	twi_start();
    	twi_send(0x87);
    	x = twi_recive(twi_ack);
    	twi_stop();
    	
    	return x;
    }
    
    void sta_cmd_write(char twi_adr, char twi_data)
    {
    	twi_start();
    	twi_send(0x86);
    	twi_send(twi_adr);
    	twi_send(twi_data);
    	twi_stop();
    }
    
    void sta_init(void)
    {
    	sta_cmd_write(sta_soft_reset_reg, on);
    	sta_cmd_write(sta_soft_reset_reg, off);
    //	sta_cmd_write(sta_mute_reg, on);
    
       sta_cmd_write(0x54, 0x05); 
       sta_cmd_write(0x55, 0x26); 
       sta_cmd_write(0x07, 0x00);    
       //PLL 
       sta_cmd_write(0x06, 0x11); 
       sta_cmd_write(0x0B, 0x03); 
       sta_cmd_write(0x61, 0x09); 
       sta_cmd_write(0x50, 0x0A); 
       sta_cmd_write(0x65, 0x6E); 
       sta_cmd_write(0x52, 0xA0);    
       sta_cmd_write(0x64, 0x98);    
       sta_cmd_write(0x51, 0xBA); 
       sta_cmd_write(0x05, 0xA1); 
       //PLL 
       sta_cmd_write(0x0D, 0x00);//SPI_pol 
       sta_cmd_write(0x18, 0x04);    
       sta_cmd_write(0x0C, 0x01);//REQ    
       sta_cmd_write(0x4D, 0x00);//chip mode 
       sta_cmd_write(0x14, 0x00);//demute 
       sta_cmd_write(0x72, 0x01);//Run 
       sta_cmd_write(0x13, 0x01);//Play
    	
    /*	sta_cmd_write(sta_pcmconf_reg, 0x22);
    	sta_cmd_write(sta_pcmcross, 0x00);
    	sta_cmd_write(sta_chip_mode_reg, 0x00);
    	sta_cmd_write(sta_sckl_pol_reg, 0x04);
    	sta_cmd_write(sta_data_req_pol_reg, 0x01);
    	sta_cmd_write(sta_data_req_reg, 0x04);
    	
    	sta_cmd_write(sta_run_reg, on);
    	sta_cmd_write(sta_play_reg, on);
    	sta_cmd_write(sta_mute_reg, off);
    */
    }
    


    Już n ie wiem gdzie szukać błędu :(
  • #4
    maniek1818
    Level 22  
    Witam.
    Coś mi niepasuje w twojej procedurce odczytu rejestrów w STA, nie wiem, może się myle ale powinno być tak:
    int sta_cmd_read(char twi_ack, char twi_data) 
    { 
       int x; 
        
       twi_start(); 
       twi_send(0x86); 
       twi_send(twi_data); 
       twi_stop();// <== bez tego nie mogłem odczytywać
       twi_start(); 
       twi_send(0x87); 
       x = twi_recive(twi_ack); 
       twi_stop(); 
        
       return x; 
    }

    Spróbuj odczytać wartości tych rejestrów, może źle sie zapisują :D
    Jaki używasz konwerter DAC :?:
  • #5
    ePeter1234
    Level 18  
    Zmieniłem ten podprogram odczytu przez I2C. U mnie przed tem jak i teraz wszystko odczytuje się poprawnie. Sprawdziłem rejestry i wszsytko w nich jest zapisane poprawnie. zamieszczam cały listing main.c może ktoś w nim dostrzeże błąd.

    DAC jaki zastosowałem w projekcie to TDA7535

    
    #include <avr/io.h>
    #include <util/delay.h>
    #include <avr/interrupt.h>
    #include <avr/pgmspace.h>
    
    #include "twi.h"
    #include "spi.h"
    #include "sta015.h"
    #include "mmc.h"
    #include "s65_lcd.h"
    
    void atmega_init(void);
    
    char twi_adr;
    char twi_data;
    char twi_ack;
    char spi_data;
    char mmc_adr_h;
    char mmc_adr_l;
    char lcd_data;
    
    char mp3_buf[] PROGMEM ={
    0xFF,0xFB,0x38,0xC0,0x00,0x00,0x08,0x04,0xDD,0x46,0x19,0x38,0x00,0x01,0xCC,0x96,0x6B,0xCF,0x30,0xF0,0x00,0xF0,0xE2,0x40,0xD7,
    0x1F,0x02,0x4F,0x0B,0xE7,0xE0,0x6B,0xC8,0x03,0xAF,0xC6,0xC0,0xAD,0xFF,0x1C,0x62,0x53,0x17,0x5F,0xE2,0x00,0x0C,0xA0,0xB9,0x08,
    0x87,0xFF,0x8E,0x02,0x3C,0x89,0x8C,0xC0,0xE6,0x11,0x0F,0xFF,0xF2,0x08,0x79,0x32,0xE3,0x31,0x3E,0x6F,0xFF,0xFF,0xE8,0x13,0x64,
    0xFB,0xFF,0xFF,0xA4,0x3E,0x08,0x00,0xC3,0xE1,0x84,0x80,0x00,0x00,0x2B,0x7D,0x14,0x00,0x81,0x26,0x32,0x63,0x6B,0x64,0x2E,0x83,
    0x5A,0x22,0x33,0x23,0x61,0x0B,0xE1,0x44,0x16,0xDA,0x9A,0xAC,0x69,0x72,0x30,0xB0,0x46,0xBE,0xC6,0x8C,0x3E,0x48,0x86,0x21,0xE1,
    0x1A,0xC9,0xE5,0x0B,0xE4,0x9C,0xAA,0x86,0xC4,0x9A,0x83,0xBA,0x5F,0x32,0x54,0xCF,0x51,0x0E,0x51,0x95,0x4F,0x60,0xF8,0x33,0xC5,
    0xDC,0x8D,0xCF,0xDF,0x7D,0xBF,0xBE,0xDF,0x45,0x77,0x35,0xF3,0x4F,0xED,0x2B,0x95,0x25,0x7F,0x17,0x3A,0x7B,0x78,0x18,0xB4,0x2D,
    0xC2,0xF3,0x3F,0x80,0x3C,0x81,0x12,0x19,0x26,0xDC,0x14,0x30,0x50,0xA9,0x9B,0x51,0x02,0x24,0x2C,0x74,0xF9,0xF7,0x3F,0xFF,0xFA,
    0x15,0x00,0x00,0x12,0x3E,0x3D,0x70,0x01,0x54,0xD4,0x1C,0x46,0x26,0x66,0x3C,0x58,0xFF,0xFB,0x48,0xC0,0x07,0x80,0x0D,0xA1,0x0D,
    0x64,0x79,0x85,0x80,0x01,0xA6,0x14,0x6B,0x4F,0xB2,0xF0,0x01,0x8C,0xD3,0x4C,0x73,0x9F,0x77,0x39,0xA0,0xC4,0xD8,0x33,0xE8,0xC7,
    0x25,0xAF,0x08,0xA4,0x25,0x11,0x88,0x51,0x61,0x3E,0xE4,0xB9,0x0C,0xA4,0xD1,0x72,0x00,0x44,0x3F,0x06,0x67,0xC8,0xEF,0xB2,0xB3,
    0x24,0x4C,0xBA,0x55,0x64,0xA7,0x73,0x2A,0x1F,0x55,0x10,0x91,0xE9,0x3E,0xFA,0xA9,0x65,0xA8,0xEE,0x6E,0xBD,0x92,0xF4,0xFA,0x9D,
    0x19,0x8E,0xFF,0xF6,0xBA,0x3F,0xFF,0x5B,0xF8,0xFF,0xDA,0xBD,0xD7,0x6E,0xFD,0x9F,0xF9,0xC7,0x08,0x01,0x34,0x1F,0x62,0x8F,0x28,
    0x68,0xC4,0xFF,0x4B,0xBF,0x92,0x00,0x00,0xEF,0x01,0x45,0x85,0xC7,0x56,0x25,0x00,0xB2,0x24,0x9B,0x5C,0x66,0xD2,0x46,0x86,0x9D,
    0x4D,0x36,0x19,0x52,0x54,0x49,0xB8,0xB8,0xE7,0xE1,0x5A,0x30,0x3C,0xFE,0x5F,0x44,0x67,0xDB,0x74,0xF0,0x91,0x47,0x8D,0x66,0x31,
    0x20,0x35,0xEB,0x70,0xAC,0xB9,0x87,0xBC,0x66,0x4B,0x37,0x5A,0x79,0x12,0x94,0xDB,0xFA,0x41,0xCA,0xD4,0x98,0xA7,0x67,0xCC,0x69,
    0x6C,0xD7,0x9A,0x78,0x96,0xF8,0xAE,0x67,0xFE,0x8F,0x77,0x06,0x79,0xE4,0xD8,0x72,0xDB,0xFF,0xF7,0x7F,0xCC,0xB1,0x12,0x5F,0x4F,
    0xF4,0xEA,0xD4,0xFA,0x2F,0x08,0xF0,0x53,0xC6,0x98,0xE0,0x65,0x00,0x03,0x3F,0x02,0x08,0x18,0x81,0x72,0xF8,0xAB,0x27,0x84,0x69,
    0x2C,0xBD,0x40,0x36,0xAB,0xF8,0x16,0x16,0x46,0x92,0x39,0x97,0x5D,0x7C,0xC8,0xBF,0x96,0xEA,0xFF,0xFB,0x28,0xC0,0x0F,0x81,0x0B,
    0x58,0xA9,0x5C,0x67,0x98,0xF6,0x49,0x57,0x19,0x2B,0xDC,0xF4,0x89,0xE8,0x99,0x9A,0x35,0x12,0x73,0xEA,0xB6,0x3C,0xF9,0x8D,0x6D,
    0x78,0x06,0xB5,0x36,0x88,0x72,0x7F,0x44,0x09,0x67,0x68,0x48,0xB3,0x0A,0xE8,0xC1,0x93,0xE3,0xF2,0xAF,0xF4,0x65,0x31,0x65,0xAA,
    0x6F,0xAC,0x5F,0x1F,0x9E,0xD4,0x7D,0x7D,0xF9,0x37,0x2D,0x90,0xB0,0xDE,0xF7,0x7F,0x15,0xAA,0x39,0x6B,0x44,0xB4,0x9B,0x6C,0x20,
    0x00,0x1B,0xF0,0x1A,0x83,0x52,0x19,0x84,0x69,0x88,0x3A,0x4E,0xD5,0xB6,0x67,0x42,0x78,0xCE,0x7E,0x09,0xCB,0x31,0x99,0x3C,0x1C,
    0xA8,0x83,0x31,0xDB,0x68,0x06,0xD1,0x3F,0x60,0x3E,0x1C,0xAB,0x0C,0x1D,0x5B,0x6A,0x78,0x43,0x37,0xF9,0x4B,0x18,0xF1,0x49,0xF0,
    0x84,0xBB,0xAD,0xD9,0xA0,0xE2,0xAF,0x66,0x7D,0xE8,0x93,0x15,0x2F,0x4D,0x2F,0xE9,0x29,0x47,0x02,0x9A,0x8E,0x28,0x05,0x67,0x0A,
    0x83,0x9A,0x5F,0x38,0x87,0x38,0x92,0x8A,0xA6,0xB5,0x18,0x00,0x00,0x2F,0xE0,0x3F,0x08,0xB3,0x1E,0x2B,0xF2,0x3C,0xE0,0xFF,0xFB,
    0x58,0xC0,0x06,0x81,0x8B,0xF9,0x29,0x60,0xE7,0x94,0x76,0xCA,0x44,0xA8,0xEA,0xCD,0x87,0xA5,0xE0,0x36,0xE1,0xAA,0xC9,0x7C,0xB1,
    0xC1,0xBD,0x73,0xE2,0xD0,0xB3,0x78,0x53,0x6B,0x18,0xB9,0x87,0x56,0x6B,0x4C,0x7B,0xB8,0xDB,0x0A,0x7A,0xA0,0x2B,0xAA,0xC2,0x48,
    0x29,0x75,0x1C,0x66,0x79,0xAC,0xCE,0x2E,0x82,0xB7,0x67,0x2A,0xB5,0x93,0x88,0x5A,0xCA,0xEB,0x7F,0x3D,0xBF,0xF2,0x7D,0xDC,0xDC,
    0xE9,0x7E,0x6E,0x06,0xF7,0xCE,0xB8,0x18,0xE8,0x8E,0x1C,0x0C,0xE2,0x53,0x3E,0xBB,0xBB,0x83,0x36,0x74,0xA0,0xC3,0xCF,0xE8,0x7B,
    0xEC,0x21,0xCE,0x02,0x7E,0x8C,0xA8,0xD4,0x13,0x6D,0x45,0xBE,0x25,0x62,0x13,0xA5,0x12,0xC7,0x99,0x2D,0xCB,0x02,0xA0,0x0A,0x0D,
    0x92,0x0E,0x09,0xCC,0x6E,0x49,0x75,0x09,0x30,0x06,0x3A,0xC9,0xC6,0x74,0x27,0x02,0x18,0x86,0x0A,0x02,0xF8,0xE6,0x37,0x4F,0x15,
    0x7A,0xEC,0x4E,0x8E,0xA2,0xDB,0xAC,0xC6,0x94,0xE7,0x3F,0x13,0xAB,0xF7,0x5D,0xAC,0xA1,0xEC,0x3C,0xB1,0x2A,0xE3,0xA1,0xB5,0xC9,
    0x0F,0xF4,0xA6,0x54,0x79,0x4B,0x55,0xF1,0x51,0xD8,0xB2,0x1A,0x5E,0xA3,0x14,0x9A,0xB7,0x5A,0xF2,0xC6,0x6D,0x0E,0xEF,0xF1,0xD5,
    0xF1,0xFB,0x19,0xC3,0xED,0xE4,0xF2,0xD9,0x8A,0x16,0x75,0x39,0x4A,0x4C,0x2C,0x29,0x13,0x4E,0x31,0x82,0x6C,0x52,0x16,0x2A,0x58,
    0xCA,0x06,0x94,0xD7,0x37,0x43,0x04,0xF1,0x89,0x64,0x04,0xC8,0x04,0x07,0x50,0x13,0x1E,0x22,0x43,0x06,0x8B,0x32,0x10,0xC0,0x00,
    0x02,0x9E,0xBC,0x08,0x21,0xF6,0x5D,0xCD,0xC7,0xEA,0x03,0xD5,0xC9,0x4A,0xE2,0xBD,0x47,0xED,0x75,0x3D,0x1A,0x21,0xB4,0x61,0x15,
    0x33,0xC1,0xC5,0x03,0x74,0xC6,0xD1,0x60,0x2A,0x32,0xE8,0xFF,0xFB,0x18,0xC0,0x13,0x81,0x09,0xC1,0x45,0x6B,0x47,0xA0,0xAE,0x81,
    0x25,0x95,0xEC,0xE8,0xF6,0x14,0x78,0x28,0x67,0x5A,0xC9,0xDF,0x6B,0xAA,0x6A,0x3C,0xE6,0xBA,0x7A,0x79,0x39,0xE9,0x99,0x9D,0x49,
    0xEA,0x8E,0xB5,0x33,0xFF,0xAB,0x37,0xDD,0x7F,0x4E,0xF4,0x47,0xEE,0xF3,0x3E,0xE7,0x69,0x8E,0xBF,0x1A,0xA9,0x00,0x80,0x01,0x76,
    0xE0,0x30,0x0B,0x13,0xC1,0x46,0xD0,0x92,0x17,0x96,0x18,0x2C,0x90,0xDD,0x6A,0x1F,0x15,0x0C,0x22,0xED,0xD7,0x67,0xEB,0x42,0xE8,
    0x88,0x0C,0x68,0xDD,0xC0,0x24,0x17,0x2F,0x1F,0xF7,0x5E,0xF5,0x49,0x18,0x76,0x8E,0x67,0x7E,0xDB,0x77,0x74,0xF1,0xD1,0xAB,0x02,
    0xE2,0xCB,0x01,0x97,0xEE,0x6A,0xDD,0x17,0xBA,0x97,0x64,0x12,0x64,0xDB,0xA9,0x05,0xC7,0xE6,0xC2,0x55,0x40,0x80,0x00,0x00,0x1D,
    0xBC,0x04,0xC0,0xFD,0x61,0xFF,0xFB,0x28,0xC0,0x05,0x01,0x0A,0x01,0x33,0x65,0x47,0xAC,0x4E,0xC9,0x17,0x11,0x6D,0x74,0xF4,0x94,
    0xD8,0x4D,0x33,0x8D,0x62,0xAC,0x88,0xD3,0xA4,0x33,0x6E,0x30,0x62,0x4E,0x56,0x31,0x2E,0x55,0xA5,0xEA,0x40,0xB2,0x44,0x0E,0x7C,
    0xA1,0x7A,0x82,0x4A,0xA6,0x7E,0xF8,0x86,0x6A,0x02,0x75,0xF9,0x12,0x74,0x3F,0x9E,0x23,0xB6,0x9E,0xAE,0x9B,0x15,0x18,0x95,0x9B,
    0x59,0x11,0x96,0xBF,0x6F,0x4D,0x6F,0xD5,0x99,0xBE,0x89,0xEC,0xD5,0x26,0xB4,0xAA,0xA8,0x86,0xCE,0x02,0xBC,0x08,0x08,0x00,0x0A,
    0x7F,0xC0,0x48,0x0D,0xC5,0x83,0x4A,0x54,0x31,0xB4,0xD4,0xC3,0x06,0xB1,0xF6,0xE4,0xC2,0x2B,0xCB,0x6F,0x01,0xD0,0x1E,0xE1,0x4F,
    0x87,0x94,0x52,0xC8,0xE7,0xBE,0x9F,0x7D,0x6D,0x37,0x6C,0x4D,0x2E,0x47,0x8E,0x03,0x1B,0x4A,0x33,0x23,0x4C,0x1E,0x45,0x8A,0x3C,
    0x3E,0xBA,0x0D,0xD8,0xA9,0x17,0x86,0x41,0xB5,0xC2,0x2B,0x05,0x00,0x89,0x68,0x1D,0x40,0xC0,0x00,0x00,0x66,0xDC,0x01,0xB0,0x42,
    0xD2,0x87,0xEC,0x02,0xE3,0x10,0xAD,0x28,0x3A,0x15,0xFF,0xFB,0x28,0xC0,0x09,0x81,0x49,0xAC,0xB3,0x67,0x47,0xA4,0x47,0xC1,0x2C,
    0xA5,0xEC,0xE8,0xF4,0x89,0x69,0x99,0x88,0xB8,0x3E,0x11,0x2B,0x8B,0x40,0x73,0xFB,0xE3,0x91,0x41,0xE8,0xE4,0x2E,0xD0,0xD0,0xED,
    0x64,0x18,0x02,0x4C,0xED,0xF9,0x9A,0x7B,0x76,0xCD,0x3E,0x95,0xB5,0xD0,0xEB,0x27,0x85,0x28,0x7F,0x0C,0xE6,0xCC,0xDC,0xA7,0xDC,
    0xA7,0x21,0x34,0xCC,0x1C,0x78,0x10,0x55,0x29,0x10,0x2D,0x8F,0x7B,0xC0,0x20,0x18,0x00,0x11,0x24,0x15,0x6F,0xCE,0xE8,0xE4,0x5A,
    0xF1,0x8A,0xBA,0x98,0xF6,0xDA,0x3A,0x64,0x3E,0x3B,0x58,0xA9,0x42,0x5F,0xBF,0x89,0xA4,0xAD,0xF4,0x9D,0xF9,0x32,0xC6,0xE5,0x19,
    0xB0,0xB6,0x6D,0x65,0xD7,0x82,0x66,0xFF,0x1A,0xFA,0xFD,0xB4,0xCC,0x32,0x3D,0xCA,0x6A,0x2E,0xBD,0xAF,0xB2,0x37,0xBD,0x93,0xFB,
    0x23,0x23,0x53,0x24,0x8E,0x57,0x50,0xCB,0x7A,0x6B,0x15,0x30,0x77,0xD7,0xC5,0xC1,0x80,0x00,0x02,0xA7,0xD8,0x02,0x40,0x7C,0xA3,
    0xD2,0x6B,0xB3,0x90,0xDC,0x71,0x6A,0xBA,0x9F,0x30,0xA4,0xCA,0xFC,0x4C,0x48,0xFF,0xFB,0x38,0xC0,0x0C,0x80,0x09,0x90,0x89,0x69,
    0x54,0xF5,0x00,0x01,0xC8,0xA4,0x2C,0xCF,0x1E,0xB0,0x00,0x8A,0x06,0xE7,0xE8,0x22,0x4C,0x2E,0xAE,0x79,0x25,0x06,0xAA,0x29,0xA9,
    0xB6,0x47,0x4F,0xBE,0xB3,0xCC,0x5B,0xE9,0x64,0x27,0x4A,0x4E,0x1D,0x14,0x38,0x87,0x10,0x3C,0x64,0x3F,0xAA,0xE1,0xE7,0xC2,0xAE,
    0xB1,0x9F,0x9B,0x44,0x71,0xF1,0x4B,0x86,0xA1,0x85,0xD2,0x56,0x90,0x02,0x42,0x61,0x28,0xD5,0x00,0x05,0x78,0x4D,0xC5,0x34,0x57,
    0x49,0x21,0xD0,0xE6,0x7E,0x33,0x23,0xE1,0x9B,0x8A,0x83,0xC2,0x66,0x17,0x13,0x58,0x43,0x1C,0x94,0xB8,0x05,0xD4,0x10,0xB2,0xB2,
    0x08,0x7F,0x28,0x2C,0x1F,0xC8,0x75,0x0A,0x21,0x84,0xB3,0x17,0xD9,0x34,0xA9,0xB6,0xF7,0xD3,0x7D,0xD1,0xAA,0xFA,0x34,0x9B,0x7C,
    0x4C,0x28,0xF4,0x9B,0x37,0xA4,0x8B,0xD7,0x8B,0xB6,0x35,0x7B,0x98,0xA6,0x5B,0x0F,0x55,0x39,0xBF,0xED,0x37,0xB8,0x3F,0xFB,0xB6,
    0x5B,0x2A,0xD9,0x5B,0x27,0xEF,0x6E,0xD9,0x89,0x9D,0xF5,0xD7,0x3B,0x2B,0xBA,0x9C,0xE0,0x9C,0xC8,0x42,0xB3,0xE1,0x2F,0xE5,0x99,
    0xFC,0xBA,0x7B,0xA0,0x00,0x12,0x9C,0xB8,0x0B,0x03,0x33,0xE0,0x38,0x35,0xAC,0x1E,0x0E,0x9E,0x2D,0x35,0xB6,0xAE,0xAD,0x8E,0x11,
    0x4C,0xA2,0x4A,0x1A,0x83,0x99,0xFF,0xFB,0x18,0xC0,0x0E,0x80,0x09,0x24,0x4D,0x71,0x5C,0xC1,0x80,0x01,0x20,0x0E,0xAE,0x74,0xC3,
    0xCE,0xA6,0xE4,0x88,0x41,0x52,0xA2,0x58,0xF6,0x07,0x56,0xF2,0xC9,0xCB,0x92,0x24,0xE4,0x25,0x81,0x44,0x62,0x64,0x20,0x80,0x09,
    0x52,0xDD,0x80,0x1E,0x40,0x20,0x0B,0x2A,0x2B,0x1F,0x05,0x4B,0x45,0x84,0x39,0x6A,0xBE,0x16,0x1B,0xE7,0xCB,0x25,0xD6,0xAF,0x95,
    0x0F,0x75,0xFA,0x67,0x73,0x78,0x83,0x39,0xE5,0x2E,0x78,0x70,0x50,0x82,0x83,0xCC,0xB8,0x20,0x3C,0x7A,0xB1,0x74,0xB6,0x3D,0x91,
    0x81,0xE1,0xAC,0x56,0x1B,0x41,0x72,0x16,0x0B,0xA8,0xEB,0x1E,0x27,0x04,0x03,0xB4,0x4B,0xD5,0x8A,0x4C,0x41,0x00,0x00,0x9C,0xFF,
    0xFB,0x28,0xC0,0x03,0x00,0x08,0xB8,0x4D,0x73,0xA7,0xB0,0x41,0x81,0x14,0x15,0x2E,0x74,0xF3,0x08,0xD1,0xDB,0x80,0x7A,0x05,0xC8,
    0x70,0x2A,0x09,0x81,0x34,0x89,0xC1,0xF1,0x0F,0xB7,0x6A,0xE4,0x28,0xEE,0xF5,0x35,0x5A,0x79,0xB5,0x7E,0xE3,0xE7,0x74,0x23,0x0E,
    0x1A,0x41,0x75,0x81,0x9A,0x89,0xF7,0xD6,0x1C,0x12,0x6E,0xD5,0x21,0x15,0x04,0x48,0x3D,0x66,0xCA,0x06,0x63,0xE0,0x15,0x24,0x12,
    0xA5,0x51,0x22,0x61,0x70,0xB0,0x5A,0x2E,0x6C,0xA3,0x53,0x00,0x00,0x81,0x7B,0x6C,0x04,0x22,0x2D,0x0A,0x3F,0x1F,0xA3,0x93,0xCC,
    0xFC,0x72,0x4F,0xB0,0xA5,0x1F,0xAB,0x55,0xAD,0x1B,0xBE,0x8A,0xEB,0xD3,0xF3,0x6B,0xD5,0x92,0xD9,0x26,0x52,0x6B,0x77,0x22,0x24,
    0xAA,0xC4,0x8E,0x4C,0x92,0x98,0x39,0xEF,0xD1,0xDA,0xF3,0x66,0x57,0xB8,0x34,0xFD,0xBF,0xA6,0x7F,0x04,0x78,0xFD,0xA7,0xF7,0xBD,
    0xDF,0x6D,0xE9,0xC3,0xE0,0x00,0x06,0xA5,0x98,0x03,0x64,0x6F,0x17,0x55,0xD5,0xD1,0x91,0x13,0x8D,0x09,0x10,0xCE,0x96,0xB4,0x1E,
    0xD4,0x11,0x5C,0x52,0xFF,0xFB,0x18,0xC0,0x0D,0x00,0x09,0x1D,0x3D,0x6F,0x47,0xA4,0x44,0xC8,0xF2,0x91,0x6E,0xB4,0xC1,0x89,0x08,
    0x07,0xD1,0xF5,0x8C,0xBC,0x1D,0x97,0x83,0x94,0x8D,0x12,0xC7,0x5B,0xE0,0x99,0x90,0xBE,0xCE,0xBD,0x16,0xAE,0x65,0x6C,0xC8,0x8B,
    0xAD,0x1B,0xDE,0xB4,0x54,0x7D,0x56,0xE6,0xDD,0xB5,0xEF,0xFB,0x67,0x99,0xCA,0x67,0x5E,0xB7,0xA2,0xD9,0xC6,0x89,0x54,0xD5,0x02,
    0x00,0x21,0x3B,0xB6,0x00,0x2D,0x00,0x10,0x50,0xAC,0x70,0x38,0xD8,0x4B,0x32,0x2C,0xC8,0xB0,0x70,0x4E,0xD8,0x21,0x35,0xCB,0x36,
    0x9D,0xED,0xE9,0xFA,0x76,0xB2,0x5E,0xFA,0xF1,0x5C,0xB6,0x54,0x1A,0x00,0xBA,0x8F,0x41,0x0F,0xD0,0x82,0x3A,0xEB,0x1E,0x0C,0xA4,
    0x56,0x16,0x3C,0x22,0x9B,0x42,0xDE,0x95,0x20,0x46,0x40,0x00,0x00,0x54,0xD3,0x00,0x5F,0x06,0x65,0x12,0xA4,0x63,0x22,0xFF,0xFB,
    0x28,0xC0,0x07,0x81,0x08,0x6C,0x57,0x6D,0xA6,0x18,0xA8,0x81,0x1C,0x0E,0xAD,0xB4,0xF3,0x89,0x19,0x5A,0xF4,0x63,0xFD,0xB2,0xDC,
    0x39,0x5A,0xC5,0x85,0x03,0xCB,0x8C,0x8E,0xD3,0xB2,0x1D,0xB8,0x4D,0x2D,0x9A,0x7A,0xCB,0x10,0xCE,0xAC,0x21,0x5A,0x12,0xD1,0xD3,
    0x2E,0x52,0x75,0x97,0x37,0x61,0x95,0xD7,0xBD,0xDC,0x82,0x6D,0xD7,0x41,0x41,0x45,0x82,0xE2,0x10,0x19,0x81,0xCC,0x2D,0x08,0x01,
    0x4D,0x68,0x07,0x68,0xB0,0x1D,0xAA,0x66,0x12,0xE0,0x89,0x52,0xAD,0x33,0x35,0x04,0xE8,0x52,0x96,0x86,0xB4,0x87,0x43,0xE0,0x89,
    0xBA,0x9B,0xC2,0x6B,0x59,0x6D,0xAC,0x1B,0x77,0xD8,0xE7,0xE9,0xEE,0xFC,0x77,0xC5,0xE0,0x51,0x73,0x3F,0xB8,0x6C,0x49,0xC2,0xBD,
    0x3F,0xFB,0xE9,0xB7,0xF9,0x96,0x5D,0x7E,0xAB,0x72,0xBC,0xAE,0x0B,0xFC,0x5D,0x39,0xFA,0xEA,0x20,0x42,0x00,0x00,0x00,0x4B,0xD2,
    0x01,0x82,0xB4,0x90,0x1E,0x8C,0x08,0x15,0x2A,0xF8,0x59,0xAB,0xDD,0x3C,0x35,0x5B,0x6B,0x61,0x0C,0x8F,0x82,0x2D,0x77,0x7B,0x8F,
    0x65,0x23,0x33,0xFF,0xFB,0x18,0xC0,0x11,0x80,0x09,0xB0,0x65,0x6B,0xA7,0x98,0x47,0x89,0x23,0x04,0x2E,0xB4,0xB6,0x0C,0x18,0xD5,
    0xA6,0x26,0x0B,0xE0,0xD4,0xC9,0x0F,0xCD,0xBF,0x7E,0xDF,0xFF,0xD3,0x66,0xB5,0xC7,0xB0,0xEF,0xFC,0x12,0xDD,0x80,0x17,0xFE,0x6B,
    0xD3,0x23,0xAF,0xD9,0x98,0xD3,0xC7,0x59,0x4F,0x68,0x43,0x5A,0x7B,0xAE,0x1E,0x42,0x6A,0x54,0xF4,0x00,0x41,0x4E,0x5D,0xB0,0x00,
    0xA0,0x4C,0x07,0x96,0x44,0xA2,0x59,0xF9,0x64,0x12,0x13,0x90,0x09,0x1C,0x44,0x36,0xA4,0x2D,0xAF,0x30,0x60,0xC1,0x53,0x0D,0x82,
    0x40,0x55,0xAD,0x51,0x61,0x6B,0xE0,0x22,0x53,0xA1,0xA7,0x15,0x2A,0x1A,0x15,0x63,0x7B,0xA8,0xF9,0x80,0x0B,0x89,0xA5,0x8C,0x2C,
    0xC4,0x80,0xC4,0x08,0x32,0xF2,0x0C,0x21,0x58,0x2A,0x48,0x4A,0x65,0x65,0x2A,0x01,0xC0,0x00,0x02,0x9E,0x94,0x05,0xFF,0xFB,0x28,
    0xC0,0x03,0x81,0x08,0x94,0x43,0x6F,0x47,0xB0,0x62,0xC1,0x1C,0xA5,0xED,0xF4,0xF4,0x94,0x69,0x20,0x9B,0x89,0x64,0xC7,0x8C,0x91,
    0x9A,0x15,0x87,0xB6,0xA3,0x76,0x00,0x04,0x23,0x37,0x84,0x65,0x08,0x67,0x1E,0x60,0xC4,0x9D,0x7B,0xE5,0xC9,0xD3,0xC7,0x4C,0x11,
    0x3C,0xF3,0xA8,0x8A,0x25,0x6B,0x40,0x71,0x29,0x4B,0xF2,0x64,0xD4,0x4A,0x1C,0xC9,0x4B,0x50,0xF4,0x29,0x6C,0xB1,0xEE,0x5A,0x6C,
    0xAC,0xA3,0x9C,0x3C,0x80,0x25,0x50,0x42,0x53,0x6E,0x01,0x98,0x00,0x74,0xD7,0x37,0x59,0x02,0x09,0x02,0x32,0x15,0x77,0x6E,0x34,
    0xBB,0x1D,0xBC,0x8E,0xC3,0xE4,0xC2,0xD9,0xEC,0xFF,0x25,0xF4,0x77,0xA7,0x31,0x8A,0x7A,0xA3,0xAB,0xAD,0xD9,0x97,0xF5,0x94,0xCC,
    0xCA,0x87,0x9B,0x5F,0xF7,0x4B,0x99,0x7F,0x7F,0xFB,0xDF,0xFA,0x26,0x30,0xC7,0x39,0x4C,0x55,0x55,0x5F,0x13,0x28,0xAF,0x86,0xAA,
    0x2E,0x01,0xC0,0x00,0x02,0x5D,0x9C,0x04,0x0A,0x00,0x09,0x15,0x99,0xF5,0xF7,0x54,0x30,0x11,0x19,0x0B,0x34,0xDB,0x8A,0x9A,0x07,
    0x4A,0xF1,0xDC,0x25,0xFC,0xAE,0x95,0x05,0xA3,0x78,0x19,0x54,0x60,0x0A,0xC1,0xC4,0xC1,0xD9,0xB1,0xE8,0x28,0xEA,0x88,0x2D,0x44,
    0xD2,0x9B,0x1B,0x94,0x34,0xB4,0xB2,0xC9,0x56,0xA5,0x7A,0x34,0x43,0x06,0x43,0xD0,0xE9,0x89,0x20,0x30,0x80,0x68,0x2A,0x44,0xD0,
    0x40,0x00,0xAD,0xC0,0x16,0x00,0x13,0x35,0x8C,0x77,0xA2,0x8B,0x54,0x92,0x84,0x42,0xA9,0x2B,0xB4,0x8C,0xC0,0x87,0x74,0xC5,0x2A,
    0xC4,0x66,0x7A,0x61,0xA4,0x43,0xF4,0xF8,0xCE,0xB5,0x07,0x57,0x67,0xF5,0x49,0xB8,0x20,0x48,0x93,0x84,0xC7,0x76,0x5C,0xD9,0x6F,
    0x7F,0xEB,0xF2,0xA9,0xDA,0xFF,0xF7,0xFF,0xFB,0x8A,0x3F,0xF1,0x28,0x72,0x98,0xF7,0x4F,0xD0,0xD9,0x3B,0xB4,0x45,0x25,0x33,0x9E,
    0xEA,0xFA,0x6A,0x6B,0x6B,0x81,0xF5,0x01,0xC0,0x00,0x00,0x1D,0xDC,0x01,0x84,0x05,0xF1,0xFA,0x5B,0x13,0xA8,0x82,0xEC,0xAD,0x50,
    0xAB,0x13,0xD7,0xF4,0x40,0xB2,0xFF,0xFB,0x28,0xC0,0x0C,0x01,0x0A,0xE9,0x45,0x65,0x47,0x8C,0x55,0x01,0x39,0x90,0xAC,0x69,0x86,
    0x0C,0xB0,0xCF,0x06,0x3E,0xA8,0x80,0x82,0xD7,0x0B,0x09,0xDA,0xCF,0x5D,0xB6,0x77,0x81,0xF1,0x77,0xB1,0xD8,0xDB,0x86,0x65,0xCB,
    0x9E,0x64,0xA9,0xD2,0x82,0x0C,0xCD,0xBF,0xD8,0xFE,0xDF,0x90,0x8D,0x9D,0x7B,0x2C,0xF3,0x56,0xAB,0xCE,0x7F,0xB4,0xBE,0xFB,0x2C,
    0xCC,0x8E,0x7B,0xF4,0xBD,0xDC,0xB5,0x7F,0xB2,0xCC,0x8E,0xE7,0x67,0xB0,0x2A,0x00,0x30,0x00,0x15,0xBC,0x06,0x7E,0x0F,0x1B,0x0A,
    0x64,0xEF,0xD3,0x6A,0x17,0x16,0xCD,0x0F,0x41,0xDC,0xB9,0x08,0xB2,0x48,0x58,0xB0,0xF2,0xE5,0x21,0x6F,0x6A,0x7A,0x09,0xCA,0x99,
    0x82,0x1B,0x20,0x4E,0x38,0x39,0x28,0xC8,0xDA,0xD8,0xBF,0x45,0x7B,0x62,0xB2,0x95,0xB1,0x68,0x55,0xED,0xDE,0x44,0xB3,0x09,0x10,
    0xD0,0xEC,0x7D,0x0E,0xB0,0x35,0x2C,0x28,0xA4,0x54,0x8B,0xD4,0x97,0xF5,0x9D,0x07,0x8F,0x3C,0xAA,0x00,0xC0,0x00,0x00,0x16,0xDC,
    0x08,0x64,0xA0,0xEC,0x9D,0x70,0xC0,0x90,0x38,0x5C,0x3B,0xFF,0xFB,0x28,0xC0,0x08,0x83,0x8A,0xB0,0x85,0x63,0x4C,0x30,0xA5,0xC1,
    0x48,0xA7,0xEC,0x8C,0xF4,0x0A,0x21,0x96,0x08,0xA1,0x63,0xEE,0x88,0x07,0xE0,0xE1,0xAC,0x2B,0xF8,0xBC,0x3B,0xCA,0x6A,0x79,0xDE,
    0x1A,0xD3,0x93,0xC4,0xEE,0x55,0x04,0x3B,0xAA,0x04,0xB2,0x9D,0x66,0x4A,0xBA,0x44,0x5F,0xDC,0x91,0x42,0xB4,0x25,0x12,0x25,0xC2,
    0x02,0x8C,0x88,0x39,0x6B,0x4C,0x4E,0x18,0x34,0x4C,0x5D,0xF0,0xB3,0xC6,0xB0,0xB2,0x48,0x1D,0xAD,0xE4,0x9C,0xD0,0x21,0x2B,0x16,
    0xAB,0x78,0x05,0xD0,0x13,0xC7,0x29,0x26,0x42,0xD9,0x94,0xC5,0xED,0x08,0x64,0x2E,0xF8,0xF4,0x41,0x99,0x8D,0x0F,0x1E,0x7C,0x23,
    0xB6,0x8E,0x98,0x5E,0xAC,0x33,0xFB,0x40,0xEE,0xEA,0x49,0x69,0x1D,0x97,0x8D,0x72,0xDF,0x18,0xB2,0xEF,0xBC,0x51,0x95,0x1D,0xFB,
    0x32,0x25,0x54,0xEA,0xED,0x74,0x29,0x55,0x77,0x6F,0xED,0x39,0xFE,0xEF,0x4F,0x74,0xB2,0xA6,0xEE,0xBB,0xE8,0xDA,0x6B,0x4B,0x35,
    0xE8,0x10,0x96,0x0E,0x1D,0xC8,0x11,0x0D,0x00,0x80,0x00,0x00,0x14,0xDC,0x00,0xF8,0xFF,0xFB,0x38,0xC0,0x04,0x00,0x0D,0xAD,0x47,
    0x63,0x47,0xA1,0x31,0xC1,0x27,0x27,0xAE,0xB4,0xF0,0x8E,0x39,0x09,0x50,0x9E,0x13,0x95,0x02,0x85,0xB0,0x7F,0xAB,0x2E,0x4E,0x37,
    0x67,0x34,0x1A,0x49,0xA1,0x99,0xBE,0x90,0xD3,0x72,0x36,0x6A,0xD8,0x22,0xAC,0x25,0x1F,0x10,0x26,0xE4,0x63,0xC3,0x15,0x8B,0xF5,
    0x07,0x32,0xF6,0x22,0x8B,0x4D,0x5B,0x2D,0xA5,0x96,0x9D,0xF3,0xFC,0x6B,0xEF,0x49,0xDD,0x35,0x89,0x66,0xE3,0x96,0x8E,0x3E,0x64,
    0x62,0xAF,0x17,0xFD,0x43,0xB6,0xB0,0xD7,0xFF,0x82,0xD2,0xBF,0x2A,0xAB,0x51,0x33,0x6D,0xAF,0x2E,0x8D,0x04,0x75,0xA5,0xD9,0xD6,
    0xD5,0x91,0x72,0x66,0x4C,0xB2,0x1F,0x25,0x83,0xCA,0x3D,0xCC,0x25,0x91,0xA7,0x50,0x26,0x12,0xDC,0xBB,0xF0,0x05,0x30,0xDF,0x5D,
    0x9F,0xC7,0xB9,0x63,0x99,0x0B,0x62,0xAB,0x3E,0xBE,0x7D,0xB5,0x5C,0x7C,0xD0,0x26,0x46,0x1A,0xEF,0x76,0x59,0x98,0x86,0x93,0x8C,
    0x89,0xE9,0xEA,0x2C,0xD0,0xAE,0x64,0x5A,0x0B,0xD0,0xFD,0xAA,0x20,0xA8,0x00,0x04,0x20,0x15,0x0E,0x00,0x1A,0x08,0x29,0x4A,0xA4,
    0x32,0x02,0x50,0x3E,0x46,0x27,0xFF,0xFB,0x18,0xC0,0x09,0x81,0x49,0x01,0x3D,0x6D,0xA6,0x14,0x4B,0x80,0xE5,0x93,0xEE,0x34,0xC0,
    0x89,0x60,0x15,0x7E,0x75,0x09,0xD0,0xB8,0xD2,0xDE,0xF6,0x44,0x21,0xEE,0x88,0x67,0x71,0x10,0x67,0x6A,0x0A,0x9D,0x9A,0xC7,0x7E,
    0xC9,0x6F,0xDE,0xCF,0x55,0xB2,0x4D,0x22,0x31,0x0E,0x76,0x90,0xFA,0xE9,0xFF,0xFF,0xFF,0xFF,0x2B,0x5A,0xEB,0x5A,0x6A,0xBD,0x0C,
    0xAC,0xE6,0x99,0x60,0x2B,0x40,0x48,0x40,0x0E,0x95,0x80,0xE1,0x59,0x32,0xD1,0x80,0xA4,0x3F,0x2D,0x8F,0x60,0x97,0x4C,0xC9,0x98,
    0xB1,0x29,0xF6,0xA3,0x75,0x50,0x17,0xA4,0xAC,0xAD,0x33,0xD2,0x82,0x89,0xCB,0xF4,0x74,0x54,0x66,0xEE,0xC4,0xC7,0x98,0x6E,0x59,
    0x3F,0xFF,0xFF,0x45,0xC4,0xC5,0x9C,0x4C,0x7D,0x6C,0x89,0x42,0xB5,0xAB,0xC0,0x00,0x00,0xE8,0x50,0x03,0xB0,0x68,0x57,0x20,0x99,
    0xFF,0xFB,0x18,0xC0,0x06,0x00,0x07,0x50,0x6D,0x71,0x46,0x04,0xAA,0x01,0x0B,0x0A,0xED,0xA8,0xF0,0x8D,0xD0,0x08,0x62,0x59,0x6C,
    0xFD,0x28,0x23,0xC9,0x42,0x87,0xA1,0x75,0xF5,0x64,0xD4,0xDC,0xC1,0xEF,0x54,0xF4,0xE5,0x11,0x77,0x2E,0x21,0x28,0x03,0x74,0x5A,
    0x3C,0x8C,0xB0,0x46,0xDF,0xFF,0xFF,0xE2,0x27,0x34,0x94,0xB0,0x70,0x61,0xB3,0xA0,0xE9,0x99,0x6C,0x00,0x40,0x0E,0x74,0x40,0x1A,
    0x6D,0xA8,0xD5,0xE7,0x04,0xF2,0x7D,0xF2,0x6D,0xE1,0xCD,0xAF,0x06,0x74,0x97,0xBB,0x3F,0xC1,0x4D,0x84,0x7E,0xB5,0x6D,0xE8,0x33,
    0x15,0xE1,0xC5,0xF0,0x81,0x03,0x03,0x87,0x39,0xF1,0x6A,0xCF,0x0F,0x52,0x35,0x1D,0xB1,0x6C,0x5A,0x42,0x74,0xB2,0x3D,0xAF,0xD7,
    0x69,0xB7,0x8E,0x7A,0x0B,0xB0,0xA1,0xC6,0x00,0x95,0x04,0xA8,0x00,0x00,0x00,0x54,0x60,0x80,0x46,0xFF,0xFB,0x28,0xC0,0x04,0x80,
    0x0A,0x4D,0x41,0x67,0xA7,0x8C,0x4F,0xC9,0x08,0x14,0x2D,0x68,0xC7,0x88,0xD8,0x4C,0xF2,0xEC,0x7F,0x97,0x64,0x89,0xDA,0xBA,0x47,
    0x50,0x3B,0xEF,0x87,0xEB,0x68,0xA5,0x8E,0xB3,0x2F,0xB8,0xE6,0xF3,0x04,0x2F,0xCE,0xB5,0x33,0xC2,0x65,0xFE,0xF9,0x56,0x8C,0x31,
    0xD3,0xE1,0xB5,0x99,0xE9,0x95,0xC7,0xD1,0x8E,0x19,0x42,0xA8,0x98,0xD5,0xE1,0x7F,0xFF,0xFF,0xFA,0x2F,0x42,0x29,0x19,0xFF,0xB9,
    0x29,0xB3,0xAB,0x82,0xB5,0xC7,0x76,0x16,0x38,0x86,0x45,0x16,0x33,0x50,0xF0,0x00,0x82,0x16,0x60,0x00,0x0E,0xF9,0x9A,0x86,0x46,
    0x60,0xA8,0x88,0xDD,0xC7,0x66,0xF0,0xDB,0xA6,0x36,0x8D,0xD2,0xDE,0x15,0x8C,0xD0,0x56,0xAD,0xAF,0x60,0xF3,0x37,0x6B,0xFA,0x5A,
    0xE9,0xA9,0xE4,0xB7,0xEE,0xAE,0x1C,0x08,0xC8,0xE3,0xA0,0x55,0x0B,0x3B,0xFE,0xA3,0x45,0x3D,0x6F,0x57,0x48,0xB8,0x04,0x22,0x90,
    0xE0,0x48,0x0C,0xB2,0x2A,0x69,0x18,0x00,0x00,0x00,0x0C,0x44,0x00,0x70,0x00,0x42,0x02,0x61,0x8A,0x08,0xE6,0x98,0xC0,0xE0,0xFF,
    0xFB,0x38,0xC0,0x09,0x81,0x4A,0x9C,0xBD,0x6B,0xA6,0x04,0x74,0xC1,0xC8,0x22,0xAD,0x71,0x86,0x0D,0xF9,0x27,0x58,0xB1,0xB7,0x59,
    0x50,0xB0,0xCD,0xFA,0x52,0x8E,0x64,0xB1,0xEE,0x4B,0xF9,0x23,0x28,0x02,0x47,0x24,0x32,0x8D,0xDB,0x31,0xAE,0x09,0xB6,0xD2,0x55,
    0x19,0x27,0x33,0xDC,0x0D,0xE0,0x40,0x01,0x9E,0x26,0x42,0x10,0x00,0x00,0x20,0x5D,0xF5,0x9F,0x39,0xB1,0x40,0x9A,0x22,0x05,0x88,
    0x2A,0x38,0xEB,0x8A,0x45,0x42,0xCC,0x26,0x21,0x42,0xD1,0x22,0x08,0x0B,0x65,0xF4,0x70,0x50,0x44,0x8F,0xA1,0x0B,0x01,0x46,0x5F,
    0x1F,0xEC,0x69,0x34,0x1E,0x49,0x1B,0xF3,0x31,0x47,0x5A,0x8D,0xE1,0x28,0x4E,0x38,0x47,0x8E,0x49,0xB0,0x5C,0x62,0xA6,0x5A,0x39,
    0x33,0x1D,0xEA,0x3D,0x9F,0x42,0xE7,0xF3,0x05,0x8B,0xB8,0xCB,0xDC,0xC4,0x68,0x69,0x9F,0x3A,0x53,0x01,0xDB,0x6E,0xE5,0xA2,0xF8,
    0xDD,0x82,0x1E,0x38,0x2D,0x44,0xF2,0x34,0x38,0x6C,0xFB,0x33,0x8D,0xBC,0xBD,0x13,0x8C,0x43,0x15,0x5E,0x7B,0xE6,0xB5,0xD2,0x8B,
    0xBA,0xF8,0x16,0x25,0x8C,0x98,0xF3,0x16,0x8C,0x28,0xFC,0xFA,0x57,0xFE,0x76,0xB4,0x0C,0xF7,0xE5,0x31,0x26,0x85,0x41,0xFA,0x39,
    0xA5,0x48,0x00,0x00,0x04,0x9C,0xDB,0x00,0x34,0x00,0xAA,0xA7,0x53,0x21,0xC8,0xFF,0xFB,0x28,0xC0,0x07,0x80,0x09,0x20,0x2D,0x7D,
    0xA7,0xA4,0x64,0x89,0x1F,0x25,0xAF,0xB4,0xF0,0x8E,0x79,0x26,0x8B,0xA2,0x1D,0x7B,0x43,0x2A,0xE4,0xB9,0x28,0x34,0x4B,0x58,0x35,
    0xBB,0x1A,0xEF,0xE2,0xEC,0xF3,0x75,0x76,0x25,0xE0,0x2C,0xD1,0x61,0x65,0xD5,0xDA,0x8B,0x88,0x94,0x30,0x21,0xFF,0xFF,0x7E,0x67,
    0xDE,0xDF,0xF5,0xF7,0xBE,0xD5,0x3B,0xBB,0x4C,0xA4,0xDF,0xCF,0xFD,0x18,0xC5,0xDF,0xD6,0xBF,0x9A,0xAE,0x58,0x01,0x20,0x02,0x5C,
    0xDB,0x80,0x77,0x0B,0xC3,0xB1,0xA9,0x0D,0x4D,0x3D,0x70,0x72,0xA3,0x65,0xB7,0x9F,0x0A,0x6B,0x5B,0x17,0xB5,0x75,0x9C,0x5C,0xAA,
    0x40,0x23,0xDC,0x5D,0x03,0xAD,0xD3,0xA9,0xA0,0xA8,0x61,0x01,0xEF,0x44,0x89,0x08,0x44,0x64,0x4C,0x52,0xC3,0x97,0xF9,0xFA,0x8F,
    0xCF,0x1B,0x3E,0x52,0xCE,0x65,0xF2,0xB6,0xCA,0xA1,0xD0,0x75,0xBF,0x78,0xA3,0x6D,0x96,0x46,0x40,0x00,0x00,0x12,0xB7,0x00,0x7F,
    0x8A,0x81,0x5A,0x72,0x41,0x2C,0x9A,0x60,0x8D,0x19,0xF4,0x4C,0x7C,0xF9,0x6A,0xF9,0x10,0x5D,0x47,0xC8,0xFF,0xFB,0x18,0xC0,0x0E,
    0x81,0x09,0x28,0x4F,0x77,0xA7,0xB0,0x61,0x81,0x0B,0x89,0xEF,0x34,0xC3,0x09,0x18,0x68,0xA9,0x8B,0x91,0xA8,0x59,0x9A,0x71,0x96,
    0x44,0x0B,0x9D,0x90,0x20,0x6C,0xB9,0xF6,0xA2,0xA0,0xC4,0xAD,0x3E,0x91,0xB7,0x84,0xC6,0x38,0x3A,0x5C,0x83,0xEB,0x1D,0x11,0x85,
    0x98,0xD7,0x4F,0xA8,0x6A,0x5C,0xB6,0x0C,0x0F,0x85,0x5B,0x9A,0x90,0x12,0x9A,0xF0,0x03,0x51,0x80,0x1D,0x58,0x24,0x95,0x0A,0xE1,
    0x41,0x99,0xB9,0xB9,0x31,0x87,0xFF,0xDC,0xA0,0xD5,0x7A,0x95,0xAC,0x82,0x76,0x50,0xED,0x4F,0x6A,0x09,0x2A,0x66,0x4D,0xCC,0x5D,
    0x68,0x93,0x0E,0xB2,0x31,0x5F,0xBE,0xB3,0x92,0xC9,0x32,0x54,0xD4,0x2A,0xA7,0x4F,0x2C,0x5E,0xA6,0x88,0x40,0x4E,0x70,0x6C,0x70,
    0xBB,0xC7,0xAA,0x4C,0xB8,0xC0,0x00,0x00,0x02,0xB7,0x00,0x66,0x8B,0xB8,0xFF,0xFB,0x28,0xC0,0x05,0x81,0x48,0x9C,0x81,0x73,0xA7,
    0xAC,0xE9,0x41,0x24,0x0B,0x2D,0xE4,0xF4,0x9C,0xB8,0xB2,0x21,0x6C,0xCC,0xAF,0xD1,0x8C,0xEC,0x29,0x38,0xF7,0x45,0x27,0x22,0xB5,
    0x04,0xF7,0x33,0xA0,0xFB,0xBC,0xC0,0xCB,0x2E,0xA1,0x03,0x76,0x7F,0x7F,0x1E,0xEC,0xBE,0x57,0x47,0xA8,0xD4,0xAF,0x75,0x2A,0x0D,
    0xA5,0xA9,0xEA,0x99,0x71,0xE2,0x37,0x30,0x95,0x0C,0x61,0x82,0xE4,0x5C,0xC6,0xDC,0x54,0x33,0x0D,0x80,0x34,0x10,0xEB,0x47,0xB8,
    0x2A,0x10,0xB6,0x80,0x83,0xE3,0x8B,0x5B,0xB7,0xAA,0x66,0xAB,0xD9,0x71,0xF9,0xC7,0xC9,0x02,0x0F,0x85,0xA4,0x24,0x4C,0x95,0x0C,
    0x72,0xE9,0x71,0xB4,0xCF,0x24,0xAA,0x1C,0x51,0x29,0x60,0x60,0x04,0xD7,0x0B,0x86,0x33,0x9D,0x76,0x91,0x59,0xE3,0x7C,0x91,0x52,
    0x08,0x15,0x03,0xCA,0x50,0x85,0x16,0x26,0xD6,0xB4,0x40,0x4C,0xF9,0x74,0x06,0x93,0x2D,0xC6,0x80,0x00,0x00,0x52,0xDB,0x80,0x40,
    0x03,0xC2,0xB2,0xD8,0x7E,0x78,0x70,0x3A,0x46,0x84,0xDC,0x67,0x4B,0x18,0xFC,0xA5,0x03,0xED,0x08,0xFF,0xFB,0x28,0xC0,0x0E,0x00,
    0x0A,0x19,0x0F,0x73,0xA6,0x14,0x4B,0x09,0x45,0x25,0xAE,0x34,0xC4,0x88,0xF9,0xBC,0xEC,0xC2,0x45,0xDC,0xC2,0x9A,0x5A,0x31,0xEE,
    0xA5,0x22,0x9C,0xC6,0x31,0x40,0xDD,0x54,0xB1,0xCF,0xBE,0x65,0x5A,0x9C,0xA5,0x63,0xBB,0xBD,0xBD,0xFF,0xB5,0x69,0x47,0xE8,0xD4,
    0xD9,0x59,0x1E,0xEE,0x8A,0x49,0xF3,0x60,0xAE,0x7E,0x7F,0x18,0x7D,0xE3,0x36,0xDF,0xAE,0x3C,0x13,0xE2,0x44,0x00,0x00,0x27,0x5C,
    0x00,0x58,0x0D,0x82,0x47,0x0C,0x0F,0x02,0x43,0x82,0x27,0xBB,0xC2,0xAA,0xE5,0x84,0x99,0xDA,0x97,0x13,0xEC,0xBC,0xC8,0x64,0x9D,
    0xD2,0xC3,0x45,0x18,0x9F,0x91,0x8D,0xA4,0x8E,0x4D,0x03,0x19,0xA8,0x80,0x45,0x3F,0x21,0xF3,0x23,0xB9,0x2E,0x63,0x32,0xDD,0x2D,
    0xFF,0xFF,0xAB,0xD3,0x4F,0x5D,0xF7,0xD4,0xA8,0x62,0x55,0x90,0xAF,0x52,0x1B,0xA1,0x95,0xC9,0x60,0x51,0x36,0xF0,0x72,0x9A,0x29,
    0x45,0x52,0x10,0x00,0x00,0x01,0x9F,0x60,0x08,0xC3,0x1A,0x2C,0xCA,0x3B,0xCF,0x23,0x89,0xCA,0x33,0x1C,0x9A,0x34,0xEA,0xBC,0xFF,
    0xFB,0x18,0xC0,0x0C,0x80,0x09,0x41,0x09,0x75,0xE7,0x9C,0x4B,0x89,0x13,0x14,0xAE,0x74,0xC3,0x8E,0x58,0x57,0x54,0xA9,0x51,0x7A,
    0xE7,0x8D,0x4B,0x77,0x50,0x45,0xFA,0xA7,0xB2,0xFE,0x23,0xEE,0xB7,0xAB,0x7C,0x1B,0xF4,0x0C,0x85,0x6E,0xFF,0xFA,0xAF,0xAD,0x35,
    0xBA,0xCD,0xA2,0x3F,0x9D,0x1E,0xE6,0x30,0x86,0x41,0xA9,0x7E,0x5A,0x77,0xE2,0x9B,0xF6,0x66,0xB1,0x49,0xBA,0x40,0x00,0x00,0x1B,
    0xF7,0x00,0x0F,0x00,0x28,0xD2,0xE9,0x58,0xF9,0x52,0x09,0xFD,0x5B,0x9B,0x52,0x77,0xF4,0xF7,0xF6,0xB3,0x8E,0x2A,0x82,0xB4,0x07,
    0xAF,0xA1,0xE1,0x35,0xB4,0x7F,0xAF,0xC7,0x0D,0xFB,0x2C,0x4A,0xED,0x3F,0x81,0xC8,0xB2,0x41,0x02,0x66,0x19,0xEB,0x7D,0xB5,0x71,
    0x2B,0x4A,0xE2,0x58,0xB8,0x47,0x16,0x7D,0x4E,0x88,0x66,0x74,0xA1,0xA7,0xE0,0x00,0x00,0x4E,0xFF,0xFB,0x28,0xC0,0x02,0x81,0x49,
    0x44,0x97,0x6F,0x47,0xA4,0x47,0x81,0x34,0x0D,0xAD,0x24,0xF6,0x14,0xB8,0xDC,0x07,0x21,0x28,0x4F,0x99,0x95,0xAA,0x1A,0xA0,0x91,
    0x9C,0x24,0x9E,0x55,0xD1,0xB1,0xB1,0x36,0xDC,0x3D,0x06,0xA4,0xBF,0x7C,0x15,0x4C,0xDD,0x50,0x31,0xFC,0xB7,0xD5,0x13,0xCE,0xDD,
    0x95,0x7A,0x2B,0x5B,0x20,0xA6,0x89,0x03,0xBF,0xE4,0x58,0x18,0xE2,0x79,0x58,0xF9,0x69,0x40,0x74,0x90,0x80,0x3C,0xC0,0xF8,0xC0,
    0xA3,0x44,0x2E,0x2E,0xB5,0x8C,0x02,0x8A,0x89,0xC0,0x0C,0x51,0x8B,0x62,0x09,0x2A,0x85,0x17,0xF1,0xA4,0x2A,0x5F,0x43,0xA4,0x5F,
    0x67,0xD3,0x23,0x10,0x55,0xD7,0x69,0x0C,0xAE,0xAA,0x86,0xCF,0x1E,0x79,0x84,0x17,0xA1,0xC1,0xBA,0xB3,0x6A,0x55,0x5D,0x44,0x50,
    0x81,0x32,0xE7,0x9F,0x74,0x58,0x15,0x18,0x2A,0x5E,0xF1,0xEA,0xD1,0x42,0xD6,0x3D,0x1D,0x8C,0x49,0x54,0x18,0x2A,0x34,0x02,0x58,
    0x90,0x6D,0x4A,0x8D,0x89,0x43,0xA1,0x62,0x28,0x01,0xAA,0x02,0x80,0x00,0x00,0x5F,0xDC,0x01,0xB3,0x08,0xB8,0xB9,0x23,0xFF,0xFB};
    
    int main(void)
    {
    
    	atmega_init();
    	sta_init();
    	spi_init_sta();
    	
    	int n=0;
    	
    	for(int i=0;i<512;i++)
    	{
    		while(PINB2==1)
    		{
    			spi_send(mp3_buf[n]);
    			n++;
    		}
    		
    	}
    	
    	PORTA = sta_cmd_read(NOACK, sta_sckl_pol_reg);
    	while (1);
    	
    	return 0;
    }
    
    void atmega_init(void)
    {
    	DDRA = 0xff;
    	PORTA = 0x00;
    	DDRB = 0xff;
    	PORTB = 0x00;
    	DDRC = 0xff;
    	PORTC = 0x00;
    	DDRD = 0xff;
    	PORTD = 0x00;
    	
    	TWSR = 0x03;
    	TWBR = 0xff;
    	
    	TCCR2A = (1<<COM2B1)|(1<<WGM21)|(1<<WGM20);
    	TCCR2B = (1<<CS20);
    	TCNT2=0x00;
    	OCR2B=0x78;
    }
    
  • #6
    maniek1818
    Level 22  
    Quote:
    DAC jaki zastosowałem w projekcie to TDA7535

    Niestety, STA chyba nie współpracuje z tym przetwornikiem, ponieważ STA wymaga DAC z zegarem 256, 384 lub 512 fs, a TDA7535 pracuje tylko przy 64 fs :|
  • #7
    K_o_n_r_a_d
    Level 23  
    Sprawdziłem podany fragment danych mp3 - trudno to nazwać piosenką, ale jakieś dźwięki są :)

    maniek1818 wrote:
    Quote:
    DAC jaki zastosowałem w projekcie to TDA7535

    Niestety, STA nie współpracuje z tym przetwornikiem, ponieważ STA wymaga DAC z zegarem 256, 384 lub 512 fs, a TDA7535 pracuje tylko przy 64 fs :|
    Nieprawda - ja właśnie z tym przetwornikiem uruchamiałem STA015.


    Wydaje mi się, że tu masz błąd:
       for(int i=0;i<512;i++)
       {
          while(PINB2==1)
          {
             spi_send(mp3_buf[n]);
             n++;
          }
          
       } 

    Zamień na coś takiego:
        for(i=0; i<5000; i++)
        {
    		while(!PINB2);
    		spi_send(mp3_buf[i]);
    	}; 


    Dodano po 15 [minuty]:

    Dodatkowo żle skonfigurowany rejestr 0x55, czyli PCMCONF. Dla tego przetwornika powinna być wpisana wartość 0x22 a nie 0x26 no ale to nie ma wpływu na to, że sygnał DATA_REQ nie przechodzi w stan niski

    Dodano po 1 [minuty]:

    Myślę, że problem jest we wskazanej przeze mnie powyżej pętli. Dane wysyłasz dopóki masz sygnał wysoki na linii DATA_REQ, bufor się zapełni a gdy DATA_REQ opadnie, pętla szybko przelatuje i kończy się program.
  • #8
    ePeter1234
    Level 18  
    Zmieniłem wartość rejestru 0x55 z 0x26 na 0x22. Zmieniłem także tą pętle na:

    
    for(int i=0;i<5000;i++)
    	{
    		while(!PINB2);
    		spi_send(mp3_buf[n]);
    		n++;
    	}
    


    Stan DATA_REQ sprawdzam voltomierzem. Nie wiem czy jest on na tyle szybki żeby choć mignąć na wyświetlczu zmiane na tym pinie.

    Zamieszczam jeszcze plik ze schematem w Eaglu może tu jest coś nie tak
  • #9
    K_o_n_r_a_d
    Level 23  
    Przy rezonatorze kwarcowym STA015 dodałem jeszcze kondensatory po 47pF i rezystor 1MΩ równolegle z rezonatorem - tak jak jest to w nocie aplikacyjnej.

    Miernikiem na pewno nie zauważysz zmian na linii DATA_REQ - policz sobie przy jakim bitrate jaka będzie częstotliwość zmian na tej linii a w szczególności w Twoim przykładzie przy tak krótkiej próbce danych.
    Aby to zaobserwować nie mając debugera, zrób własny debuger w postaci dodatkowe diody, którą będziesz zapalał, gdy tylko linia DATA_REQ zmieni stan i nigdy gasił - w ten sposób przekonasz się co tam się dzieje.
  • #10
    ePeter1234
    Level 18  
    Dodam te elementy dziś wieczorem i napiszę czy coś się zmieniło.
  • #11
    maly_elektronik
    Level 23  
    spróbuj tak sprawdzać DATA_REQ while(PINx & 0xXX) :) Aha i przy data req nie rób pull up'a :) (na tym polegał mój błąd) :) Oczywiście pamiętając o tym żeby ustawić PINx na wejście w DDRx :)
    PS. Ustaw PLL (cośtam) na 256fps i 512B (jest to wartość o ile się nie myle 0x01). A tak wogóle to słyszysz jakiekolwiek szumy :?:
  • #12
    maniek1818
    Level 22  
    Z jaką wartością Oversampling bedzie pracował DAC TDA7535 :?: Ja już wypróbowałem 256 384 i 512 i z żadną nie chce działać, możliwe że mam źle napisaną obsługę SPI. Pozatym Data_REQ działa :D
  • #13
    ePeter1234
    Level 18  
    trochę czasu mineło od naszej ostatniej dyskusji. W końcu udało mi się zorganizować trochę wolnego czasu na budowanie mojego MP3 palyera. Dodałem rezystor i kondensatory do STA i wydaje mi się, że jest już jakiś postęp. Teraz jak wrzucam dane do dekodera to sprawdzam rejestr błędu w STA. Wysyłam stan rejestru na PORTA w uP. po sprawdzeniu stanów na pinach procka przeczytałem w datasheet ze mam jakiś problem z danymi a mianowice wyskakuje bład nr 0x04 (ancillary data not read). W czym może być problem??

    Zamieszczam plik main.c:

    
    #include <avr/io.h>
    #include <util/delay.h>
    #include <avr/interrupt.h>
    #include <avr/pgmspace.h>
    
    #include "twi.h"
    #include "spi.h"
    #include "sta015.h"
    #include "mmc.h"
    #include "s65_lcd.h"
    
    void atmega_init(void);
    
    char twi_adr;
    char twi_data;
    char twi_ack;
    char spi_data;
    char mmc_adr_h;
    char mmc_adr_l;
    char lcd_data;
    
    char mp3_buf[] PROGMEM ={
    0xFF,0xFB,0x38,0xC0,0x00,0x00,0x08,0x04,0xDD,0x46,0x19,0x38,0x00,0x01,0xCC,0x96,0x6B,0xCF,0x30,0xF0,0x00,0xF0,0xE2,0x40,0xD7,
    0x1F,0x02,0x4F,0x0B,0xE7,0xE0,0x6B,0xC8,0x03,0xAF,0xC6,0xC0,0xAD,0xFF,0x1C,0x62,0x53,0x17,0x5F,0xE2,0x00,0x0C,0xA0,0xB9,0x08,
    0x87,0xFF,0x8E,0x02,0x3C,0x89,0x8C,0xC0,0xE6,0x11,0x0F,0xFF,0xF2,0x08,0x79,0x32,0xE3,0x31,0x3E,0x6F,0xFF,0xFF,0xE8,0x13,0x64,
    0xFB,0xFF,0xFF,0xA4,0x3E,0x08,0x00,0xC3,0xE1,0x84,0x80,0x00,0x00,0x2B,0x7D,0x14,0x00,0x81,0x26,0x32,0x63,0x6B,0x64,0x2E,0x83,
    0x5A,0x22,0x33,0x23,0x61,0x0B,0xE1,0x44,0x16,0xDA,0x9A,0xAC,0x69,0x72,0x30,0xB0,0x46,0xBE,0xC6,0x8C,0x3E,0x48,0x86,0x21,0xE1,
    0x1A,0xC9,0xE5,0x0B,0xE4,0x9C,0xAA,0x86,0xC4,0x9A,0x83,0xBA,0x5F,0x32,0x54,0xCF,0x51,0x0E,0x51,0x95,0x4F,0x60,0xF8,0x33,0xC5,
    0xDC,0x8D,0xCF,0xDF,0x7D,0xBF,0xBE,0xDF,0x45,0x77,0x35,0xF3,0x4F,0xED,0x2B,0x95,0x25,0x7F,0x17,0x3A,0x7B,0x78,0x18,0xB4,0x2D,
    0xC2,0xF3,0x3F,0x80,0x3C,0x81,0x12,0x19,0x26,0xDC,0x14,0x30,0x50,0xA9,0x9B,0x51,0x02,0x24,0x2C,0x74,0xF9,0xF7,0x3F,0xFF,0xFA,
    0x15,0x00,0x00,0x12,0x3E,0x3D,0x70,0x01,0x54,0xD4,0x1C,0x46,0x26,0x66,0x3C,0x58,0xFF,0xFB,0x48,0xC0,0x07,0x80,0x0D,0xA1,0x0D,
    0x64,0x79,0x85,0x80,0x01,0xA6,0x14,0x6B,0x4F,0xB2,0xF0,0x01,0x8C,0xD3,0x4C,0x73,0x9F,0x77,0x39,0xA0,0xC4,0xD8,0x33,0xE8,0xC7,
    0x25,0xAF,0x08,0xA4,0x25,0x11,0x88,0x51,0x61,0x3E,0xE4,0xB9,0x0C,0xA4,0xD1,0x72,0x00,0x44,0x3F,0x06,0x67,0xC8,0xEF,0xB2,0xB3,
    0x24,0x4C,0xBA,0x55,0x64,0xA7,0x73,0x2A,0x1F,0x55,0x10,0x91,0xE9,0x3E,0xFA,0xA9,0x65,0xA8,0xEE,0x6E,0xBD,0x92,0xF4,0xFA,0x9D,
    0x19,0x8E,0xFF,0xF6,0xBA,0x3F,0xFF,0x5B,0xF8,0xFF,0xDA,0xBD,0xD7,0x6E,0xFD,0x9F,0xF9,0xC7,0x08,0x01,0x34,0x1F,0x62,0x8F,0x28,
    0x68,0xC4,0xFF,0x4B,0xBF,0x92,0x00,0x00,0xEF,0x01,0x45,0x85,0xC7,0x56,0x25,0x00,0xB2,0x24,0x9B,0x5C,0x66,0xD2,0x46,0x86,0x9D,
    0x4D,0x36,0x19,0x52,0x54,0x49,0xB8,0xB8,0xE7,0xE1,0x5A,0x30,0x3C,0xFE,0x5F,0x44,0x67,0xDB,0x74,0xF0,0x91,0x47,0x8D,0x66,0x31,
    0x20,0x35,0xEB,0x70,0xAC,0xB9,0x87,0xBC,0x66,0x4B,0x37,0x5A,0x79,0x12,0x94,0xDB,0xFA,0x41,0xCA,0xD4,0x98,0xA7,0x67,0xCC,0x69,
    0x6C,0xD7,0x9A,0x78,0x96,0xF8,0xAE,0x67,0xFE,0x8F,0x77,0x06,0x79,0xE4,0xD8,0x72,0xDB,0xFF,0xF7,0x7F,0xCC,0xB1,0x12,0x5F,0x4F,
    0xF4,0xEA,0xD4,0xFA,0x2F,0x08,0xF0,0x53,0xC6,0x98,0xE0,0x65,0x00,0x03,0x3F,0x02,0x08,0x18,0x81,0x72,0xF8,0xAB,0x27,0x84,0x69,
    0x2C,0xBD,0x40,0x36,0xAB,0xF8,0x16,0x16,0x46,0x92,0x39,0x97,0x5D,0x7C,0xC8,0xBF,0x96,0xEA,0xFF,0xFB,0x28,0xC0,0x0F,0x81,0x0B,
    0x58,0xA9,0x5C,0x67,0x98,0xF6,0x49,0x57,0x19,0x2B,0xDC,0xF4,0x89,0xE8,0x99,0x9A,0x35,0x12,0x73,0xEA,0xB6,0x3C,0xF9,0x8D,0x6D,
    0x78,0x06,0xB5,0x36,0x88,0x72,0x7F,0x44,0x09,0x67,0x68,0x48,0xB3,0x0A,0xE8,0xC1,0x93,0xE3,0xF2,0xAF,0xF4,0x65,0x31,0x65,0xAA,
    0x6F,0xAC,0x5F,0x1F,0x9E,0xD4,0x7D,0x7D,0xF9,0x37,0x2D,0x90,0xB0,0xDE,0xF7,0x7F,0x15,0xAA,0x39,0x6B,0x44,0xB4,0x9B,0x6C,0x20,
    0x00,0x1B,0xF0,0x1A,0x83,0x52,0x19,0x84,0x69,0x88,0x3A,0x4E,0xD5,0xB6,0x67,0x42,0x78,0xCE,0x7E,0x09,0xCB,0x31,0x99,0x3C,0x1C,
    0xA8,0x83,0x31,0xDB,0x68,0x06,0xD1,0x3F,0x60,0x3E,0x1C,0xAB,0x0C,0x1D,0x5B,0x6A,0x78,0x43,0x37,0xF9,0x4B,0x18,0xF1,0x49,0xF0,
    0x84,0xBB,0xAD,0xD9,0xA0,0xE2,0xAF,0x66,0x7D,0xE8,0x93,0x15,0x2F,0x4D,0x2F,0xE9,0x29,0x47,0x02,0x9A,0x8E,0x28,0x05,0x67,0x0A,
    0x83,0x9A,0x5F,0x38,0x87,0x38,0x92,0x8A,0xA6,0xB5,0x18,0x00,0x00,0x2F,0xE0,0x3F,0x08,0xB3,0x1E,0x2B,0xF2,0x3C,0xE0,0xFF,0xFB,
    0x58,0xC0,0x06,0x81,0x8B,0xF9,0x29,0x60,0xE7,0x94,0x76,0xCA,0x44,0xA8,0xEA,0xCD,0x87,0xA5,0xE0,0x36,0xE1,0xAA,0xC9,0x7C,0xB1,
    0xC1,0xBD,0x73,0xE2,0xD0,0xB3,0x78,0x53,0x6B,0x18,0xB9,0x87,0x56,0x6B,0x4C,0x7B,0xB8,0xDB,0x0A,0x7A,0xA0,0x2B,0xAA,0xC2,0x48,
    0x29,0x75,0x1C,0x66,0x79,0xAC,0xCE,0x2E,0x82,0xB7,0x67,0x2A,0xB5,0x93,0x88,0x5A,0xCA,0xEB,0x7F,0x3D,0xBF,0xF2,0x7D,0xDC,0xDC,
    0xE9,0x7E,0x6E,0x06,0xF7,0xCE,0xB8,0x18,0xE8,0x8E,0x1C,0x0C,0xE2,0x53,0x3E,0xBB,0xBB,0x83,0x36,0x74,0xA0,0xC3,0xCF,0xE8,0x7B,
    0xEC,0x21,0xCE,0x02,0x7E,0x8C,0xA8,0xD4,0x13,0x6D,0x45,0xBE,0x25,0x62,0x13,0xA5,0x12,0xC7,0x99,0x2D,0xCB,0x02,0xA0,0x0A,0x0D,
    0x92,0x0E,0x09,0xCC,0x6E,0x49,0x75,0x09,0x30,0x06,0x3A,0xC9,0xC6,0x74,0x27,0x02,0x18,0x86,0x0A,0x02,0xF8,0xE6,0x37,0x4F,0x15,
    0x7A,0xEC,0x4E,0x8E,0xA2,0xDB,0xAC,0xC6,0x94,0xE7,0x3F,0x13,0xAB,0xF7,0x5D,0xAC,0xA1,0xEC,0x3C,0xB1,0x2A,0xE3,0xA1,0xB5,0xC9,
    0x0F,0xF4,0xA6,0x54,0x79,0x4B,0x55,0xF1,0x51,0xD8,0xB2,0x1A,0x5E,0xA3,0x14,0x9A,0xB7,0x5A,0xF2,0xC6,0x6D,0x0E,0xEF,0xF1,0xD5,
    0xF1,0xFB,0x19,0xC3,0xED,0xE4,0xF2,0xD9,0x8A,0x16,0x75,0x39,0x4A,0x4C,0x2C,0x29,0x13,0x4E,0x31,0x82,0x6C,0x52,0x16,0x2A,0x58,
    0xCA,0x06,0x94,0xD7,0x37,0x43,0x04,0xF1,0x89,0x64,0x04,0xC8,0x04,0x07,0x50,0x13,0x1E,0x22,0x43,0x06,0x8B,0x32,0x10,0xC0,0x00,
    0x02,0x9E,0xBC,0x08,0x21,0xF6,0x5D,0xCD,0xC7,0xEA,0x03,0xD5,0xC9,0x4A,0xE2,0xBD,0x47,0xED,0x75,0x3D,0x1A,0x21,0xB4,0x61,0x15,
    0x33,0xC1,0xC5,0x03,0x74,0xC6,0xD1,0x60,0x2A,0x32,0xE8,0xFF,0xFB,0x18,0xC0,0x13,0x81,0x09,0xC1,0x45,0x6B,0x47,0xA0,0xAE,0x81,
    0x25,0x95,0xEC,0xE8,0xF6,0x14,0x78,0x28,0x67,0x5A,0xC9,0xDF,0x6B,0xAA,0x6A,0x3C,0xE6,0xBA,0x7A,0x79,0x39,0xE9,0x99,0x9D,0x49,
    0xEA,0x8E,0xB5,0x33,0xFF,0xAB,0x37,0xDD,0x7F,0x4E,0xF4,0x47,0xEE,0xF3,0x3E,0xE7,0x69,0x8E,0xBF,0x1A,0xA9,0x00,0x80,0x01,0x76,
    0xE0,0x30,0x0B,0x13,0xC1,0x46,0xD0,0x92,0x17,0x96,0x18,0x2C,0x90,0xDD,0x6A,0x1F,0x15,0x0C,0x22,0xED,0xD7,0x67,0xEB,0x42,0xE8,
    0x88,0x0C,0x68,0xDD,0xC0,0x24,0x17,0x2F,0x1F,0xF7,0x5E,0xF5,0x49,0x18,0x76,0x8E,0x67,0x7E,0xDB,0x77,0x74,0xF1,0xD1,0xAB,0x02,
    0xE2,0xCB,0x01,0x97,0xEE,0x6A,0xDD,0x17,0xBA,0x97,0x64,0x12,0x64,0xDB,0xA9,0x05,0xC7,0xE6,0xC2,0x55,0x40,0x80,0x00,0x00,0x1D,
    0xBC,0x04,0xC0,0xFD,0x61,0xFF,0xFB,0x28,0xC0,0x05,0x01,0x0A,0x01,0x33,0x65,0x47,0xAC,0x4E,0xC9,0x17,0x11,0x6D,0x74,0xF4,0x94,
    0xD8,0x4D,0x33,0x8D,0x62,0xAC,0x88,0xD3,0xA4,0x33,0x6E,0x30,0x62,0x4E,0x56,0x31,0x2E,0x55,0xA5,0xEA,0x40,0xB2,0x44,0x0E,0x7C,
    0xA1,0x7A,0x82,0x4A,0xA6,0x7E,0xF8,0x86,0x6A,0x02,0x75,0xF9,0x12,0x74,0x3F,0x9E,0x23,0xB6,0x9E,0xAE,0x9B,0x15,0x18,0x95,0x9B,
    0x59,0x11,0x96,0xBF,0x6F,0x4D,0x6F,0xD5,0x99,0xBE,0x89,0xEC,0xD5,0x26,0xB4,0xAA,0xA8,0x86,0xCE,0x02,0xBC,0x08,0x08,0x00,0x0A,
    0x7F,0xC0,0x48,0x0D,0xC5,0x83,0x4A,0x54,0x31,0xB4,0xD4,0xC3,0x06,0xB1,0xF6,0xE4,0xC2,0x2B,0xCB,0x6F,0x01,0xD0,0x1E,0xE1,0x4F,
    0x87,0x94,0x52,0xC8,0xE7,0xBE,0x9F,0x7D,0x6D,0x37,0x6C,0x4D,0x2E,0x47,0x8E,0x03,0x1B,0x4A,0x33,0x23,0x4C,0x1E,0x45,0x8A,0x3C,
    0x3E,0xBA,0x0D,0xD8,0xA9,0x17,0x86,0x41,0xB5,0xC2,0x2B,0x05,0x00,0x89,0x68,0x1D,0x40,0xC0,0x00,0x00,0x66,0xDC,0x01,0xB0,0x42,
    0xD2,0x87,0xEC,0x02,0xE3,0x10,0xAD,0x28,0x3A,0x15,0xFF,0xFB,0x28,0xC0,0x09,0x81,0x49,0xAC,0xB3,0x67,0x47,0xA4,0x47,0xC1,0x2C,
    0xA5,0xEC,0xE8,0xF4,0x89,0x69,0x99,0x88,0xB8,0x3E,0x11,0x2B,0x8B,0x40,0x73,0xFB,0xE3,0x91,0x41,0xE8,0xE4,0x2E,0xD0,0xD0,0xED,
    0x64,0x18,0x02,0x4C,0xED,0xF9,0x9A,0x7B,0x76,0xCD,0x3E,0x95,0xB5,0xD0,0xEB,0x27,0x85,0x28,0x7F,0x0C,0xE6,0xCC,0xDC,0xA7,0xDC,
    0xA7,0x21,0x34,0xCC,0x1C,0x78,0x10,0x55,0x29,0x10,0x2D,0x8F,0x7B,0xC0,0x20,0x18,0x00,0x11,0x24,0x15,0x6F,0xCE,0xE8,0xE4,0x5A,
    0xF1,0x8A,0xBA,0x98,0xF6,0xDA,0x3A,0x64,0x3E,0x3B,0x58,0xA9,0x42,0x5F,0xBF,0x89,0xA4,0xAD,0xF4,0x9D,0xF9,0x32,0xC6,0xE5,0x19,
    0xB0,0xB6,0x6D,0x65,0xD7,0x82,0x66,0xFF,0x1A,0xFA,0xFD,0xB4,0xCC,0x32,0x3D,0xCA,0x6A,0x2E,0xBD,0xAF,0xB2,0x37,0xBD,0x93,0xFB,
    0x23,0x23,0x53,0x24,0x8E,0x57,0x50,0xCB,0x7A,0x6B,0x15,0x30,0x77,0xD7,0xC5,0xC1,0x80,0x00,0x02,0xA7,0xD8,0x02,0x40,0x7C,0xA3,
    0xD2,0x6B,0xB3,0x90,0xDC,0x71,0x6A,0xBA,0x9F,0x30,0xA4,0xCA,0xFC,0x4C,0x48,0xFF,0xFB,0x38,0xC0,0x0C,0x80,0x09,0x90,0x89,0x69,
    0x54,0xF5,0x00,0x01,0xC8,0xA4,0x2C,0xCF,0x1E,0xB0,0x00,0x8A,0x06,0xE7,0xE8,0x22,0x4C,0x2E,0xAE,0x79,0x25,0x06,0xAA,0x29,0xA9,
    0xB6,0x47,0x4F,0xBE,0xB3,0xCC,0x5B,0xE9,0x64,0x27,0x4A,0x4E,0x1D,0x14,0x38,0x87,0x10,0x3C,0x64,0x3F,0xAA,0xE1,0xE7,0xC2,0xAE,
    0xB1,0x9F,0x9B,0x44,0x71,0xF1,0x4B,0x86,0xA1,0x85,0xD2,0x56,0x90,0x02,0x42,0x61,0x28,0xD5,0x00,0x05,0x78,0x4D,0xC5,0x34,0x57,
    0x49,0x21,0xD0,0xE6,0x7E,0x33,0x23,0xE1,0x9B,0x8A,0x83,0xC2,0x66,0x17,0x13,0x58,0x43,0x1C,0x94,0xB8,0x05,0xD4,0x10,0xB2,0xB2,
    0x08,0x7F,0x28,0x2C,0x1F,0xC8,0x75,0x0A,0x21,0x84,0xB3,0x17,0xD9,0x34,0xA9,0xB6,0xF7,0xD3,0x7D,0xD1,0xAA,0xFA,0x34,0x9B,0x7C,
    0x4C,0x28,0xF4,0x9B,0x37,0xA4,0x8B,0xD7,0x8B,0xB6,0x35,0x7B,0x98,0xA6,0x5B,0x0F,0x55,0x39,0xBF,0xED,0x37,0xB8,0x3F,0xFB,0xB6,
    0x5B,0x2A,0xD9,0x5B,0x27,0xEF,0x6E,0xD9,0x89,0x9D,0xF5,0xD7,0x3B,0x2B,0xBA,0x9C,0xE0,0x9C,0xC8,0x42,0xB3,0xE1,0x2F,0xE5,0x99,
    0xFC,0xBA,0x7B,0xA0,0x00,0x12,0x9C,0xB8,0x0B,0x03,0x33,0xE0,0x38,0x35,0xAC,0x1E,0x0E,0x9E,0x2D,0x35,0xB6,0xAE,0xAD,0x8E,0x11,
    0x4C,0xA2,0x4A,0x1A,0x83,0x99,0xFF,0xFB,0x18,0xC0,0x0E,0x80,0x09,0x24,0x4D,0x71,0x5C,0xC1,0x80,0x01,0x20,0x0E,0xAE,0x74,0xC3,
    0x14,0xD0,0x98,0x7F,0xC1,0x10,0xD6,0x1E,0x31,0x24,0x3C,0x00,0xB0,0x4A,0xCB,0xC9,0x28,0x70,0x2A,0xED,0xE2,0x24,0xDA,0x2F,0xA9,
    0x54,0xCE,0xA6,0xE4,0x88,0x41,0x52,0xA2,0x58,0xF6,0x07,0x56,0xF2,0xC9,0xCB,0x92,0x24,0xE4,0x25,0x81,0x44,0x62,0x64,0x20,0x80,
    0x09,0x52,0xDD,0x80,0x1E,0x40,0x20,0x0B,0x2A,0x2B,0x1F,0x05,0x4B,0x45,0x84,0x39,0x6A,0xBE,0x16,0x1B,0xE7,0xCB,0x25,0xD6,0xAF,
    0x95,0x0F,0x75,0xFA,0x67,0x73,0x78,0x83,0x39,0xE5,0x2E,0x78,0x70,0x50,0x82,0x83,0xCC,0xB8,0x20,0x3C,0x7A,0xB1,0x74,0xB6,0x3D,
    0x91,0x81,0xE1,0xAC,0x56,0x1B,0x41,0x72,0x16,0x0B,0xA8,0xEB,0x1E,0x27,0x04,0x03,0xB4,0x4B,0xD5,0x8A,0x4C,0x41,0x00,0x00,0x9C,
    0xFF,0xFB,0x28,0xC0,0x03,0x00,0x08,0xB8,0x4D,0x73,0xA7,0xB0,0x41,0x81,0x14,0x15,0x2E,0x74,0xF3,0x08,0xD1,0xDB,0x80,0x7A,0x05,
    0xC8,0x70,0x2A,0x09,0x81,0x34,0x89,0xC1,0xF1,0x0F,0xB7,0x6A,0xE4,0x28,0xEE,0xF5,0x35,0x5A,0x79,0xB5,0x7E,0xE3,0xE7,0x74,0x23,
    0x0E,0x1A,0x41,0x75,0x81,0x9A,0x89,0xF7,0xD6,0x1C,0x12,0x6E,0xD5,0x21,0x15,0x04,0x48,0x3D,0x66,0xCA,0x06,0x63,0xE0,0x15,0x24,
    0x12,0xA5,0x51,0x22,0x61,0x70,0xB0,0x5A,0x2E,0x6C,0xA3,0x53,0x00,0x00,0x81,0x7B,0x6C,0x04,0x22,0x2D,0x0A,0x3F,0x1F,0xA3,0x93,
    0xCC,0xFC,0x72,0x4F,0xB0,0xA5,0x1F,0xAB,0x55,0xAD,0x1B,0xBE,0x8A,0xEB,0xD3,0xF3,0x6B,0xD5,0x92,0xD9,0x26,0x52,0x6B,0x77,0x22,
    0x24,0xAA,0xC4,0x8E,0x4C,0x92,0x98,0x39,0xEF,0xD1,0xDA,0xF3,0x66,0x57,0xB8,0x34,0xFD,0xBF,0xA6,0x7F,0x04,0x78,0xFD,0xA7,0xF7,
    0xBD,0xDF,0x6D,0xE9,0xC3,0xE0,0x00,0x06,0xA5,0x98,0x03,0x64,0x6F,0x17,0x55,0xD5,0xD1,0x91,0x13,0x8D,0x09,0x10,0xCE,0x96,0xB4,
    0x1E,0xD4,0x11,0x5C,0x52,0xFF,0xFB,0x18,0xC0,0x0D,0x00,0x09,0x1D,0x3D,0x6F,0x47,0xA4,0x44,0xC8,0xF2,0x91,0x6E,0xB4,0xC1,0x89,
    0x08,0x07,0xD1,0xF5,0x8C,0xBC,0x1D,0x97,0x83,0x94,0x8D,0x12,0xC7,0x5B,0xE0,0x99,0x90,0xBE,0xCE,0xBD,0x16,0xAE,0x65,0x6C,0xC8,
    0x8B,0xAD,0x1B,0xDE,0xB4,0x54,0x7D,0x56,0xE6,0xDD,0xB5,0xEF,0xFB,0x67,0x99,0xCA,0x67,0x5E,0xB7,0xA2,0xD9,0xC6,0x89,0x54,0xD5,
    0x02,0x00,0x21,0x3B,0xB6,0x00,0x2D,0x00,0x10,0x50,0xAC,0x70,0x38,0xD8,0x4B,0x32,0x2C,0xC8,0xB0,0x70,0x4E,0xD8,0x21,0x35,0xCB,
    0x36,0x9D,0xED,0xE9,0xFA,0x76,0xB2,0x5E,0xFA,0xF1,0x5C,0xB6,0x54,0x1A,0x00,0xBA,0x8F,0x41,0x0F,0xD0,0x82,0x3A,0xEB,0x1E,0x0C,
    0xA4,0x56,0x16,0x3C,0x22,0x9B,0x42,0xDE,0x95,0x20,0x46,0x40,0x00,0x00,0x54,0xD3,0x00,0x5F,0x06,0x65,0x12,0xA4,0x63,0x22,0xFF,
    0xFB,0x28,0xC0,0x07,0x81,0x08,0x6C,0x57,0x6D,0xA6,0x18,0xA8,0x81,0x1C,0x0E,0xAD,0xB4,0xF3,0x89,0x19,0x5A,0xF4,0x63,0xFD,0xB2,
    0xDC,0x39,0x5A,0xC5,0x85,0x03,0xCB,0x8C,0x8E,0xD3,0xB2,0x1D,0xB8,0x4D,0x2D,0x9A,0x7A,0xCB,0x10,0xCE,0xAC,0x21,0x5A,0x12,0xD1,
    0xD3,0x2E,0x52,0x75,0x97,0x37,0x61,0x95,0xD7,0xBD,0xDC,0x82,0x6D,0xD7,0x41,0x41,0x45,0x82,0xE2,0x10,0x19,0x81,0xCC,0x2D,0x08,
    0x01,0x4D,0x68,0x07,0x68,0xB0,0x1D,0xAA,0x66,0x12,0xE0,0x89,0x52,0xAD,0x33,0x35,0x04,0xE8,0x52,0x96,0x86,0xB4,0x87,0x43,0xE0,
    0x89,0xBA,0x9B,0xC2,0x6B,0x59,0x6D,0xAC,0x1B,0x77,0xD8,0xE7,0xE9,0xEE,0xFC,0x77,0xC5,0xE0,0x51,0x73,0x3F,0xB8,0x6C,0x49,0xC2,
    0xBD,0x3F,0xFB,0xE9,0xB7,0xF9,0x96,0x5D,0x7E,0xAB,0x72,0xBC,0xAE,0x0B,0xFC,0x5D,0x39,0xFA,0xEA,0x20,0x42,0x00,0x00,0x00,0x4B,
    0xD2,0x01,0x82,0xB4,0x90,0x1E,0x8C,0x08,0x15,0x2A,0xF8,0x59,0xAB,0xDD,0x3C,0x35,0x5B,0x6B,0x61,0x0C,0x8F,0x82,0x2D,0x77,0x7B,
    0x8F,0x65,0x23,0x33,0xFF,0xFB,0x18,0xC0,0x11,0x80,0x09,0xB0,0x65,0x6B,0xA7,0x98,0x47,0x89,0x23,0x04,0x2E,0xB4,0xB6,0x0C,0x18,
    0xD5,0xA6,0x26,0x0B,0xE0,0xD4,0xC9,0x0F,0xCD,0xBF,0x7E,0xDF,0xFF,0xD3,0x66,0xB5,0xC7,0xB0,0xEF,0xFC,0x12,0xDD,0x80,0x17,0xFE,
    0x6B,0xD3,0x23,0xAF,0xD9,0x98,0xD3,0xC7,0x59,0x4F,0x68,0x43,0x5A,0x7B,0xAE,0x1E,0x42,0x6A,0x54,0xF4,0x00,0x41,0x4E,0x5D,0xB0,
    0x00,0xA0,0x4C,0x07,0x96,0x44,0xA2,0x59,0xF9,0x64,0x12,0x13,0x90,0x09,0x1C,0x44,0x36,0xA4,0x2D,0xAF,0x30,0x60,0xC1,0x53,0x0D,
    0x82,0x40,0x55,0xAD,0x51,0x61,0x6B,0xE0,0x22,0x53,0xA1,0xA7,0x15,0x2A,0x1A,0x15,0x63,0x7B,0xA8,0xF9,0x80,0x0B,0x89,0xA5,0x8C,
    0x2C,0xC4,0x80,0xC4,0x08,0x32,0xF2,0x0C,0x21,0x58,0x2A,0x48,0x4A,0x65,0x65,0x2A,0x01,0xC0,0x00,0x02,0x9E,0x94,0x05,0xFF,0xFB,
    0x28,0xC0,0x03,0x81,0x08,0x94,0x43,0x6F,0x47,0xB0,0x62,0xC1,0x1C,0xA5,0xED,0xF4,0xF4,0x94,0x69,0x20,0x9B,0x89,0x64,0xC7,0x8C,
    0x91,0x9A,0x15,0x87,0xB6,0xA3,0x76,0x00,0x04,0x23,0x37,0x84,0x65,0x08,0x67,0x1E,0x60,0xC4,0x9D,0x7B,0xE5,0xC9,0xD3,0xC7,0x4C,
    0x11,0x3C,0xF3,0xA8,0x8A,0x25,0x6B,0x40,0x71,0x29,0x4B,0xF2,0x64,0xD4,0x4A,0x1C,0xC9,0x4B,0x50,0xF4,0x29,0x6C,0xB1,0xEE,0x5A,
    0x6C,0xAC,0xA3,0x9C,0x3C,0x80,0x25,0x50,0x42,0x53,0x6E,0x01,0x98,0x00,0x74,0xD7,0x37,0x59,0x02,0x09,0x02,0x32,0x15,0x77,0x6E,
    0x34,0xBB,0x1D,0xBC,0x8E,0xC3,0xE4,0xC2,0xD9,0xEC,0xFF,0x25,0xF4,0x77,0xA7,0x31,0x8A,0x7A,0xA3,0xAB,0xAD,0xD9,0x97,0xF5,0x94,
    0xCC,0xCA,0x87,0x9B,0x5F,0xF7,0x4B,0x99,0x7F,0x7F,0xFB,0xDF,0xFA,0x26,0x30,0xC7,0x39,0x4C,0x55,0x55,0x5F,0x13,0x28,0xAF,0x86,
    0xAA,0x2E,0x01,0xC0,0x00,0x02,0x5D,0x9C,0x04,0x0A,0x00,0x09,0x15,0x99,0xF5,0xF7,0x54,0x30,0x11,0x19,0x0B,0x34,0xDB,0x8A,0x9A,
    0x07,0x5D,0x06,0xFF,0xFB,0x28,0xC0,0x0D,0x01,0x09,0xD4,0x59,0x69,0x4C,0x24,0x45,0xC1,0x47,0x0B,0x6C,0x9D,0x97,0xA4,0x11,0xEE,
    0xCD,0x5A,0x4A,0xF1,0xDC,0x25,0xFC,0xAE,0x95,0x05,0xA3,0x78,0x19,0x54,0x60,0x0A,0xC1,0xC4,0xC1,0xD9,0xB1,0xE8,0x28,0xEA,0x88,
    0x2D,0x44,0xD2,0x9B,0x1B,0x94,0x34,0xB4,0xB2,0xC9,0x56,0xA5,0x7A,0x34,0x43,0x06,0x43,0xD0,0xE9,0x89,0x20,0x30,0x80,0x68,0x2A,
    0x44,0xD0,0x40,0x00,0xAD,0xC0,0x16,0x00,0x13,0x35,0x8C,0x77,0xA2,0x8B,0x54,0x92,0x84,0x42,0xA9,0x2B,0xB4,0x8C,0xC0,0x87,0x74,
    0xC5,0x2A,0xC4,0x66,0x7A,0x61,0xA4,0x43,0xF4,0xF8,0xCE,0xB5,0x07,0x57,0x67,0xF5,0x49,0xB8,0x20,0x48,0x93,0x84,0xC7,0x76,0x5C,
    0xD9,0x6F,0x7F,0xEB,0xF2,0xA9,0xDA,0xFF,0xF7,0xFF,0xFB,0x8A,0x3F,0xF1,0x28,0x72,0x98,0xF7,0x4F,0xD0,0xD9,0x3B,0xB4,0x45,0x25,
    0x33,0x9E,0xEA,0xFA,0x6A,0x6B,0x6B,0x81,0xF5,0x01,0xC0,0x00,0x00,0x1D,0xDC,0x01,0x84,0x05,0xF1,0xFA,0x5B,0x13,0xA8,0x82,0xEC,
    0xAD,0x50,0xAB,0x13,0xD7,0xF4,0x40,0xB2,0xFF,0xFB,0x28,0xC0,0x0C,0x01,0x0A,0xE9,0x45,0x65,0x47,0x8C,0x55,0x01,0x39,0x90,0xAC,
    0x69,0x86,0x0C,0xB0,0xCF,0x06,0x3E,0xA8,0x80,0x82,0xD7,0x0B,0x09,0xDA,0xCF,0x5D,0xB6,0x77,0x81,0xF1,0x77,0xB1,0xD8,0xDB,0x86,
    0x65,0xCB,0x9E,0x64,0xA9,0xD2,0x82,0x0C,0xCD,0xBF,0xD8,0xFE,0xDF,0x90,0x8D,0x9D,0x7B,0x2C,0xF3,0x56,0xAB,0xCE,0x7F,0xB4,0xBE,
    0xFB,0x2C,0xCC,0x8E,0x7B,0xF4,0xBD,0xDC,0xB5,0x7F,0xB2,0xCC,0x8E,0xE7,0x67,0xB0,0x2A,0x00,0x30,0x00,0x15,0xBC,0x06,0x7E,0x0F,
    0x1B,0x0A,0x64,0xEF,0xD3,0x6A,0x17,0x16,0xCD,0x0F,0x41,0xDC,0xB9,0x08,0xB2,0x48,0x58,0xB0,0xF2,0xE5,0x21,0x6F,0x6A,0x7A,0x09,
    0xCA,0x99,0x82,0x1B,0x20,0x4E,0x38,0x39,0x28,0xC8,0xDA,0xD8,0xBF,0x45,0x7B,0x62,0xB2,0x95,0xB1,0x68,0x55,0xED,0xDE,0x44,0xB3,
    0x09,0x10,0xD0,0xEC,0x7D,0x0E,0xB0,0x35,0x2C,0x28,0xA4,0x54,0x8B,0xD4,0x97,0xF5,0x9D,0x07,0x8F,0x3C,0xAA,0x00,0xC0,0x00,0x00,
    0x16,0xDC,0x08,0x64,0xA0,0xEC,0x9D,0x70,0xC0,0x90,0x38,0x5C,0x3B,0xFF,0xFB,0x28,0xC0,0x08,0x83,0x8A,0xB0,0x85,0x63,0x4C,0x30,
    0xA5,0xC1,0x48,0xA7,0xEC,0x8C,0xF4,0x0A,0x21,0x96,0x08,0xA1,0x63,0xEE,0x88,0x07,0xE0,0xE1,0xAC,0x2B,0xF8,0xBC,0x3B,0xCA,0x6A,
    0x79,0xDE,0x1A,0xD3,0x93,0xC4,0xEE,0x55,0x04,0x3B,0xAA,0x04,0xB2,0x9D,0x66,0x4A,0xBA,0x44,0x5F,0xDC,0x91,0x42,0xB4,0x25,0x12,
    0x25,0xC2,0x02,0x8C,0x88,0x39,0x6B,0x4C,0x4E,0x18,0x34,0x4C,0x5D,0xF0,0xB3,0xC6,0xB0,0xB2,0x48,0x1D,0xAD,0xE4,0x9C,0xD0,0x21,
    0x2B,0x16,0xAB,0x78,0x05,0xD0,0x13,0xC7,0x29,0x26,0x42,0xD9,0x94,0xC5,0xED,0x08,0x64,0x2E,0xF8,0xF4,0x41,0x99,0x8D,0x0F,0x1E,
    0x7C,0x23,0xB6,0x8E,0x98,0x5E,0xAC,0x33,0xFB,0x40,0xEE,0xEA,0x49,0x69,0x1D,0x97,0x8D,0x72,0xDF,0x18,0xB2,0xEF,0xBC,0x51,0x95,
    0x1D,0xFB,0x32,0x25,0x54,0xEA,0xED,0x74,0x29,0x55,0x77,0x6F,0xED,0x39,0xFE,0xEF,0x4F,0x74,0xB2,0xA6,0xEE,0xBB,0xE8,0xDA,0x6B,
    0x4B,0x35,0xE8,0x10,0x96,0x0E,0x1D,0xC8,0x11,0x0D,0x00,0x80,0x00,0x00,0x14,0xDC,0x00,0xF8,0xFF,0xFB,0x38,0xC0,0x04,0x00,0x0D,
    0xAD,0x47,0x63,0x47,0xA1,0x31,0xC1,0x27,0x27,0xAE,0xB4,0xF0,0x8E,0x39,0x09,0x50,0x9E,0x13,0x95,0x02,0x85,0xB0,0x7F,0xAB,0x2E,
    0x4E,0x37,0x67,0x34,0x1A,0x49,0xA1,0x99,0xBE,0x90,0xD3,0x72,0x36,0x6A,0xD8,0x22,0xAC,0x25,0x1F,0x10,0x26,0xE4,0x63,0xC3,0x15,
    0x8B,0xF5,0x07,0x32,0xF6,0x22,0x8B,0x4D,0x5B,0x2D,0xA5,0x96,0x9D,0xF3,0xFC,0x6B,0xEF,0x49,0xDD,0x35,0x89,0x66,0xE3,0x96,0x8E,
    0x3E,0x64,0x62,0xAF,0x17,0xFD,0x43,0xB6,0xB0,0xD7,0xFF,0x82,0xD2,0xBF,0x2A,0xAB,0x51,0x33,0x6D,0xAF,0x2E,0x8D,0x04,0x75,0xA5,
    0xD9,0xD6,0xD5,0x91,0x72,0x66,0x4C,0xB2,0x1F,0x25,0x83,0xCA,0x3D,0xCC,0x25,0x91,0xA7,0x50,0x26,0x12,0xDC,0xBB,0xF0,0x05,0x30,
    0xDF,0x5D,0x9F,0xC7,0xB9,0x63,0x99,0x0B,0x62,0xAB,0x3E,0xBE,0x7D,0xB5,0x5C,0x7C,0xD0,0x26,0x46,0x1A,0xEF,0x76,0x59,0x98,0x86,
    0x93,0x8C,0xC7,0xE4,0x8E,0x8A,0x6D,0x91,0x92,0x27,0xDD,0xA9,0xE5,0xC3,0x54,0x7F,0xCD,0x7A,0xF7,0xFF,0x9F,0xDE,0x57,0xAD,0x5B,
    0x8E,0x64,0x20,0x89,0xE9,0xEA,0x2C,0xD0,0xAE,0x64,0x5A,0x0B,0xD0,0xFD,0xAA,0x20,0xA8,0x00,0x04,0x20,0x15,0x0E,0x00,0x1A,0x08,
    0x29,0x4A,0xA4,0x32,0x02,0x50,0x3E,0x46,0x27,0xFF,0xFB,0x18,0xC0,0x09,0x81,0x49,0x01,0x3D,0x6D,0xA6,0x14,0x4B,0x80,0xE5,0x93,
    0xEE,0x34,0xC0,0x89,0x60,0x15,0x7E,0x75,0x09,0xD0,0xB8,0xD2,0xDE,0xF6,0x44,0x21,0xEE,0x88,0x67,0x71,0x10,0x67,0x6A,0x0A,0x9D,
    0x9A,0xC7,0x7E,0xC9,0x6F,0xDE,0xCF,0x55,0xB2,0x4D,0x22,0x31,0x0E,0x76,0x90,0xFA,0xE9,0xFF,0xFF,0xFF,0xFF,0x2B,0x5A,0xEB,0x5A,
    0x6A,0xBD,0x0C,0xAC,0xE6,0x99,0x60,0x2B,0x40,0x48,0x40,0x0E,0x95,0x80,0xE1,0x59,0x32,0xD1,0x80,0xA4,0x3F,0x2D,0x8F,0x60,0x97,
    0x4C,0xC9,0x98,0xB1,0x29,0xF6,0xA3,0x75,0x50,0x17,0xA4,0xAC,0xAD,0x33,0xD2,0x82,0x89,0xCB,0xF4,0x74,0x54,0x66,0xEE,0xC4,0xC7,
    0x98,0x6E,0x59,0x3F,0xFF,0xFF,0x45,0xC4,0xC5,0x9C,0x4C,0x7D,0x6C,0x89,0x42,0xB5,0xAB,0xC0,0x00,0x00,0xE8,0x50,0x03,0xB0,0x68,
    0x57,0x20,0x99,0xFF,0xFB,0x18,0xC0,0x06,0x00,0x07,0x50,0x6D,0x71,0x46,0x04,0xAA,0x01,0x0B,0x0A,0xED,0xA8,0xF0,0x8D,0xD0,0x08,
    0x62,0x59,0x6C,0xFD,0x28,0x23,0xC9,0x42,0x87,0xA1,0x75,0xF5,0x64,0xD4,0xDC,0xC1,0xEF,0x54,0xF4,0xE5,0x11,0x77,0x2E,0x21,0x28,
    0x03,0x74,0x5A,0x3C,0x8C,0xB0,0x46,0xDF,0xFF,0xFF,0xE2,0x27,0x34,0x94,0xB0,0x70,0x61,0xB3,0xA0,0xE9,0x99,0x6C,0x00,0x40,0x0E,
    0x74,0x40,0x1A,0x6D,0xA8,0xD5,0xE7,0x04,0xF2,0x7D,0xF2,0x6D,0xE1,0xCD,0xAF,0x06,0x74,0x97,0xBB,0x3F,0xC1,0x4D,0x84,0x7E,0xB5,
    0x6D,0xE8,0x33,0x15,0xE1,0xC5,0xF0,0x81,0x03,0x03,0x87,0x39,0xF1,0x6A,0xCF,0x0F,0x52,0x35,0x1D,0xB1,0x6C,0x5A,0x42,0x74,0xB2,
    0x3D,0xAF,0xD7,0x69,0xB7,0x8E,0x7A,0x0B,0xB0,0xA1,0xC6,0x00,0x95,0x04,0xA8,0x00,0x00,0x00,0x54,0x60,0x80,0x46,0xFF,0xFB,0x28,
    0xC0,0x04,0x80,0x0A,0x4D,0x41,0x67,0xA7,0x8C,0x4F,0xC9,0x08,0x14,0x2D,0x68,0xC7,0x88,0xD8,0x4C,0xF2,0xEC,0x7F,0x97,0x64,0x89,
    0xDA,0xBA,0x47,0x50,0x3B,0xEF,0x87,0xEB,0x68,0xA5,0x8E,0xB3,0x2F,0xB8,0xE6,0xF3,0x04,0x2F,0xCE,0xB5,0x33,0xC2,0x65,0xFE,0xF9,
    0x56,0x8C,0x31,0xD3,0xE1,0xB5,0x99,0xE9,0x95,0xC7,0xD1,0x8E,0x19,0x42,0xA8,0x98,0xD5,0xE1,0x7F,0xFF,0xFF,0xFA,0x2F,0x42,0x29,
    0x19,0xFF,0xB9,0x29,0xB3,0xAB,0x82,0xB5,0xC7,0x76,0x16,0x38,0x86,0x45,0x16,0x33,0x50,0xF0,0x00,0x82,0x16,0x60,0x00,0x0E,0xF9,
    0x9A,0x86,0x46,0x60,0xA8,0x88,0xDD,0xC7,0x66,0xF0,0xDB,0xA6,0x36,0x8D,0xD2,0xDE,0x15,0x8C,0xD0,0x56,0xAD,0xAF,0x60,0xF3,0x37,
    0x6B,0xFA,0x5A,0xE9,0xA9,0xE4,0xB7,0xEE,0xAE,0x1C,0x08,0xC8,0xE3,0xA0,0x55,0x0B,0x3B,0xFE,0xA3,0x45,0x3D,0x6F,0x57,0x48,0xB8,
    0x04,0x22,0x90,0xE0,0x48,0x0C,0xB2,0x2A,0x69,0x18,0x00,0x00,0x00,0x0C,0x44,0x00,0x70,0x00,0x42,0x02,0x61,0x8A,0x08,0xE6,0x98,
    0xC0,0xE0,0xFF,0xFB,0x38,0xC0,0x09,0x81,0x4A,0x9C,0xBD,0x6B,0xA6,0x04,0x74,0xC1,0xC8,0x22,0xAD,0x71,0x86,0x0D,0xF9,0x27,0x58,
    0xB1,0xB7,0x59,0x50,0xB0,0xCD,0xFA,0x52,0x8E,0x64,0xB1,0xEE,0x4B,0xF9,0x23,0x28,0x02,0x47,0x24,0x32,0x8D,0xDB,0x31,0xAE,0x09,
    0xB6,0xD2,0x55,0x19,0x27,0x33,0xDC,0x0D,0xE0,0x40,0x01,0x9E,0x26,0x42,0x10,0x00,0x00,0x20,0x5D,0xF5,0x9F,0x39,0xB1,0x40,0x9A,
    0x22,0x05,0x88,0x2A,0x38,0xEB,0x8A,0x45,0x42,0xCC,0x26,0x21,0x42,0xD1,0x22,0x08,0x0B,0x65,0xF4,0x70,0x50,0x44,0x8F,0xA1,0x0B,
    0x01,0x46,0x5F,0x1F,0xEC,0x69,0x34,0x1E,0x49,0x1B,0xF3,0x31,0x47,0x5A,0x8D,0xE1,0x28,0x4E,0x38,0x47,0x8E,0x49,0xB0,0x5C,0x62,
    0xA6,0x5A,0x39,0x33,0x1D,0xEA,0x3D,0x9F,0x42,0xE7,0xF3,0x05,0x8B,0xB8,0xCB,0xDC,0xC4,0x68,0x69,0x9F,0x3A,0x53,0x01,0xDB,0x6E,
    0xE5,0xA2,0xF8,0xDD,0x82,0x1E,0x38,0x2D,0x44,0xF2,0x34,0x38,0x6C,0xFB,0x33,0x8D,0xBC,0xBD,0x13,0x8C,0x43,0x15,0x5E,0x7B,0xE6,
    0xB5,0xD2,0x8B,0xBA,0xF8,0x16,0x25,0x8C,0x98,0xF3,0x16,0x8C,0x28,0xFC,0xFA,0x57,0xFE,0x76,0xB4,0x0C,0xF7,0xE5,0x31,0x26,0x85,
    0x41,0xFA,0x39,0xA5,0x48,0x00,0x00,0x04,0x9C,0xDB,0x00,0x34,0x00,0xAA,0xA7,0x53,0x21,0xC8,0xFF,0xFB,0x28,0xC0,0x07,0x80,0x09,
    0x20,0x2D,0x7D,0xA7,0xA4,0x64,0x89,0x1F,0x25,0xAF,0xB4,0xF0,0x8E,0x79,0x26,0x8B,0xA2,0x1D,0x7B,0x43,0x2A,0xE4,0xB9,0x28,0x34,
    0x4B,0x58,0x35,0xBB,0x1A,0xEF,0xE2,0xEC,0xF3,0x75,0x76,0x25,0xE0,0x2C,0xD1,0x61,0x65,0xD5,0xDA,0x8B,0x88,0x94,0x30,0x21,0xFF,
    0xFF,0x7E,0x67,0xDE,0xDF,0xF5,0xF7,0xBE,0xD5,0x3B,0xBB,0x4C,0xA4,0xDF,0xCF,0xFD,0x18,0xC5,0xDF,0xD6,0xBF,0x9A,0xAE,0x58,0x01,
    0x20,0x02,0x5C,0xDB,0x80,0x77,0x0B,0xC3,0xB1,0xA9,0x0D,0x4D,0x3D,0x70,0x72,0xA3,0x65,0xB7,0x9F,0x0A,0x6B,0x5B,0x17,0xB5,0x75,
    0x9C,0x5C,0xAA,0x40,0x23,0xDC,0x5D,0x03,0xAD,0xD3,0xA9,0xA0,0xA8,0x61,0x01,0xEF,0x44,0x89,0x08,0x44,0x64,0x4C,0x52,0xC3,0x97,
    0xF9,0xFA,0x8F,0xCF,0x1B,0x3E,0x52,0xCE,0x65,0xF2,0xB6,0xCA,0xA1,0xD0,0x75,0xBF,0x78,0xA3,0x6D,0x96,0x46,0x40,0x00,0x00,0x12,
    0xB7,0x00,0x7F,0x8A,0x81,0x5A,0x72,0x41,0x2C,0x9A,0x60,0x8D,0x19,0xF4,0x4C,0x7C,0xF9,0x6A,0xF9,0x10,0x5D,0x47,0xC8,0xFF,0xFB,
    0x18,0xC0,0x0E,0x81,0x09,0x28,0x4F,0x77,0xA7,0xB0,0x61,0x81,0x0B,0x89,0xEF,0x34,0xC3,0x09,0x18,0x68,0xA9,0x8B,0x91,0xA8,0x59,
    0x9A,0x71,0x96,0x44,0x0B,0x9D,0x90,0x20,0x6C,0xB9,0xF6,0xA2,0xA0,0xC4,0xAD,0x3E,0x91,0xB7,0x84,0xC6,0x38,0x3A,0x5C,0x83,0xEB,
    0x1D,0x11,0x85,0x98,0xD7,0x4F,0xA8,0x6A,0x5C,0xB6,0x0C,0x0F,0x85,0x5B,0x9A,0x90,0x12,0x9A,0xF0,0x03,0x51,0x80,0x1D,0x58,0x24,
    0x95,0x0A,0xE1,0x41,0x99,0xB9,0xB9,0x31,0x87,0xFF,0xDC,0xA0,0xD5,0x7A,0x95,0xAC,0x82,0x76,0x50,0xED,0x4F,0x6A,0x09,0x2A,0x66,
    0x4D,0xCC,0x5D,0x68,0x93,0x0E,0xB2,0x31,0x5F,0xBE,0xB3,0x92,0xC9,0x32,0x54,0xD4,0x2A,0xA7,0x4F,0x2C,0x5E,0xA6,0x88,0x40,0x4E,
    0x70,0x6C,0x70,0xBB,0xC7,0xAA,0x4C,0xB8,0xC0,0x00,0x00,0x02,0xB7,0x00,0x66,0x8B,0xB8,0xFF,0xFB,0x28,0xC0,0x05,0x81,0x48,0x9C,
    0x81,0x73,0xA7,0xAC,0xE9,0x41,0x24,0x0B,0x2D,0xE4,0xF4,0x9C,0xB8,0xB2,0x21,0x6C,0xCC,0xAF,0xD1,0x8C,0xEC,0x29,0x38,0xF7,0x45,
    0x27,0x22,0xB5,0x04,0xF7,0x33,0xA0,0xFB,0xBC,0xC0,0xCB,0x2E,0xA1,0x03,0x76,0x7F,0x7F,0x1E,0xEC,0xBE,0x57,0x47,0xA8,0xD4,0xAF,
    0x75,0x2A,0x0D,0xA5,0xA9,0xEA,0x99,0x71,0xE2,0x37,0x30,0x95,0x0C,0x61,0x82,0xE4,0x5C,0xC6,0xDC,0x54,0x33,0x0D,0x80,0x34,0x10,
    0xEB,0x47,0xB8,0x2A,0x10,0xB6,0x80,0x83,0xE3,0x8B,0x5B,0xB7,0xAA,0x66,0xAB,0xD9,0x71,0xF9,0xC7,0xC9,0x02,0x0F,0x85,0xA4,0x24,
    0x4C,0x95,0x0C,0x72,0xE9,0x71,0xB4,0xCF,0x24,0xAA,0x1C,0x51,0x29,0x60,0x60,0x04,0xD7,0x0B,0x86,0x33,0x9D,0x76,0x91,0x59,0xE3,
    0x7C,0x91,0x52,0x08,0x15,0x03,0xCA,0x50,0x85,0x16,0x26,0xD6,0xB4,0x40,0x4C,0xF9,0x74,0x06,0x93,0x2D,0xC6,0x80,0x00,0x00,0x52,
    0xDB,0x80,0x40,0x03,0xC2,0xB2,0xD8,0x7E,0x78,0x70,0x3A,0x46,0x84,0xDC,0x67,0x4B,0x18,0xFC,0xA5,0x03,0xED,0x08,0xFF,0xFB,0x28,
    0xC0,0x0E,0x00,0x0A,0x19,0x0F,0x73,0xA6,0x14,0x4B,0x09,0x45,0x25,0xAE,0x34,0xC4,0x88,0xF9,0xBC,0xEC,0xC2,0x45,0xDC,0xC2,0x9A,
    0x5A,0x31,0xEE,0xA5,0x22,0x9C,0xC6,0x31,0x40,0xDD,0x54,0xB1,0xCF,0xBE,0x65,0x5A,0x9C,0xA5,0x63,0xBB,0xBD,0xBD,0xFF,0xB5,0x69,
    0x47,0xE8,0xD4,0xD9,0x59,0x1E,0xEE,0x8A,0x49,0xF3,0x60,0xAE,0x7E,0x7F,0x18,0x7D,0xE3,0x36,0xDF,0xAE,0x3C,0x13,0xE2,0x44,0x00,
    0x00,0x27,0x5C,0x00,0x58,0x0D,0x82,0x47,0x0C,0x0F,0x02,0x43,0x82,0x27,0xBB,0xC2,0xAA,0xE5,0x84,0x99,0xDA,0x97,0x13,0xEC,0xBC,
    0xC8,0x64,0x9D,0xD2,0xC3,0x45,0x18,0x9F,0x91,0x8D,0xA4,0x8E,0x4D,0x03,0x19,0xA8,0x80,0x45,0x3F,0x21,0xF3,0x23,0xB9,0x2E,0x63,
    0x32,0xDD,0x2D,0xFF,0xFF,0xAB,0xD3,0x4F,0x5D,0xF7,0xD4,0xA8,0x62,0x55,0x90,0xAF,0x52,0x1B,0xA1,0x95,0xC9,0x60,0x51,0x36,0xF0,
    0x72,0x9A,0x29,0x45,0x52,0x10,0x00,0x00,0x01,0x9F,0x60,0x08,0xC3,0x1A,0x2C,0xCA,0x3B,0xCF,0x23,0x89,0xCA,0x33,0x1C,0x9A,0x34,
    0xEA,0xBC,0xFF,0xFB,0x18,0xC0,0x0C,0x80,0x09,0x41,0x09,0x75,0xE7,0x9C,0x4B,0x89,0x13,0x14,0xAE,0x74,0xC3,0x8E,0x58,0x57,0x54,
    0xA9,0x51,0x7A,0xE7,0x8D,0x4B,0x77,0x50,0x45,0xFA,0xA7,0xB2,0xFE,0x23,0xEE,0xB7,0xAB,0x7C,0x1B,0xF4,0x0C,0x85,0x6E,0xFF,0xFA,
    0xAF,0xAD,0x35,0xBA,0xCD,0xA2,0x3F,0x9D,0x1E,0xE6,0x30,0x86,0x41,0xA9,0x7E,0x5A,0x77,0xE2,0x9B,0xF6,0x66,0xB1,0x49,0xBA,0x40,
    0x00,0x00,0x1B,0xF7,0x00,0x0F,0x00,0x28,0xD2,0xE9,0x58,0xF9,0x52,0x09,0xFD,0x5B,0x9B,0x52,0x77,0xF4,0xF7,0xF6,0xB3,0x8E,0x2A,
    0x82,0xB4,0x07,0xAF,0xA1,0xE1,0x35,0xB4,0x7F,0xAF,0xC7,0x0D,0xFB,0x2C,0x4A,0xED,0x3F,0x81,0xC8,0xB2,0x41,0x02,0x66,0x19,0xEB,
    0x7D,0xB5,0x71,0x2B,0x4A,0xE2,0x58,0xB8,0x47,0x16,0x7D,0x4E,0x88,0x66,0x74,0xA1,0xA7,0xE0,0x00,0x00,0x4E,0xFF,0xFB,0x28,0xC0,
    0x02,0x81,0x49,0x44,0x97,0x6F,0x47,0xA4,0x47,0x81,0x34,0x0D,0xAD,0x24,0xF6,0x14,0xB8,0xDC,0x07,0x21,0x28,0x4F,0x99,0x95,0xAA,
    0x1A,0xA0,0x91,0x9C,0x24,0x9E,0x55,0xD1,0xB1,0xB1,0x36,0xDC,0x3D,0x06,0xA4,0xBF,0x7C,0x15,0x4C,0xDD,0x50,0x31,0xFC,0xB7,0xD5,
    0x13,0xCE,0xDD,0x95,0x7A,0x2B,0x5B,0x20,0xA6,0x89,0x03,0xBF,0xE4,0x58,0x18,0xE2,0x79,0x58,0xF9,0x69,0x40,0x74,0x90,0x80,0x3C,
    0xC0,0xF8,0xC0,0xA3,0x44,0x2E,0x2E,0xB5,0x8C,0x02,0x8A,0x89,0xC0,0x0C,0x51,0x8B,0x62,0x09,0x2A,0x85,0x17,0xF1,0xA4,0x2A,0x5F,
    0x43,0xA4,0x5F,0x67,0xD3,0x23,0x10,0x55,0xD7,0x69,0x0C,0xAE,0xAA,0x86,0xCF,0x1E,0x79,0x84,0x17,0xA1,0xC1,0xBA,0xB3,0x6A,0x55,
    0x5D,0x44,0x50,0x81,0x32,0xE7,0x9F,0x74,0x58,0x15,0x18,0x2A,0x5E,0xF1,0xEA,0xD1,0x42,0xD6,0x3D,0x1D,0x8C,0x49,0x54,0x18,0x2A,
    0x34,0x02,0x58,0x90,0x6D,0x4A,0x8D,0x89,0x43,0xA1,0x62,0x28,0x01,0xAA,0x02,0x80,0x00,0x00,0x5F,0xDC,0x01,0xB3,0x08,0xB8,0xB9,
    0x23,0xFF,0xFB,0x28,0xC0,0x06,0x01,0x09,0x60,0xA3,0x69,0x47,0xA4,0x47,0x89,0x60,0x26,0x6C,0x28,0xF4,0x0A,0x90,0x5B,0x8E,0xD5,
    0x32,0x21,0x90,0x76,0x31,0xF3,0x2C,0xE3,0xA9,0x4B,0x23,0xE3,0x0A,0x45,0x53,0xEE,0x07,0x1A,0x5A,0x9C,0xDE,0xFA,0x48,0xFA,0x69,
    0x3F,0xAC,0x16,0x8D,0xF5,0x7B,0x50,0x1E,0xC9,0x0A,0xEB,0x21,0x3F,0x6F,0x6E,0xF7,0xBA,0xD6,0xBB,0x50,0x6A,0x6B,0xEF,0x5C,0x7D,
    0x7D,0x1C,0x15,0xD8,0x9F,0xFE,0x34,0x4F,0xFB,0xE7,0x32,0x40,0x00,0x36,0x60,0x03,0xF4,0x91,0x93,0x88,0x8D,0x25,0xC4,0xED,0x40,
    0x29,0xAC,0x6E,0x6E,0x3C,0x16,0x77,0x33,0xC2,0x5A,0xCD,0xD8,0xB3,0x58,0xFA,0x3F,0x74,0xDD,0x0A,0x83,0x21,0xE2,0xCA,0x28,0x31,
    0x1B,0x40,0x7A,0x6D,0x46,0x32,0xA2,0xA9,0x4C,0xBC,0x9B,0xA8,0x1E,0xF4,0x75,0x34,0xAD,0x4D,0x49,0xAA,0x33,0xB5,0xC9,0xA2,0xA3,
    0x2B,0xFD,0x0C,0xEE,0x9D,0xBC,0xDD,0x92,0xEB,0x76,0x2A,0x4B,0x6D,0x68,0xB9,0x57,0x7A,0x3F,0x43,0xC6,0x51,0xAA,0x9B,0xB0,0x40,
    0x00,0x00,0x16,0xDC,0x03,0x40,0xFF,0xFB,0x38,0xC0,0x04,0x00,0x0A,0xE8,0x89,0x63,0x54,0xF5,0x80,0x09,0xA9,0xA3,0x2C,0xDF,0x18,
    0xB0,0x00,0xB9,0xAD,0x3F,0x6C,0x2B,0x9C,0xD2,0x8D,0xCE,0x6A,0xA9,0xA6,0x83,0x55,0xF8,0xB5,0x6A,0xFB,0x5A,0xB1,0x5C,0x8D,0xCE,
    0x2D,0x41,0x81,0x50,0xD2,0xCA,0x6A,0x0D,0x75,0xDB,0xD7,0xB9,0xE6,0xD8,0xDE,0xF6,0xFA,0x95,0x5D,0xCD,0x57,0x5A,0xEB,0x5B,0x53,
    0xDA,0xF2,0xEA,0x4A,0x59,0x73,0xF9,0xE8,0x44,0x57,0x73,0x60,0xBE,0x97,0xC7,0xF6,0x51,0xA7,0x58,0x69,0xC2,0xBA,0x3F,0x77,0x46,
    0x95,0xBA,0x4E,0xED,0xF6,0xEC,0x40,0x60,0x00,0x03,0x26,0x35,0x50,0xD5,0x00,0x09,0xC5,0xD8,0x4F,0x10,0x06,0xB5,0xE9,0x43,0x21,
    0xA9,0x42,0x54,0xBB,0x5A,0xDE,0x8E,0x56,0x17,0x21,0x17,0x2B,0xB1,0xDE,0x40,0x9C,0x04,0x99,0x26,0x05,0x4D,0x27,0xA7,0x16,0x58,
    0xBB,0x73,0x96,0x6E,0x7D,0x6A,0x50,0xEC,0xD3,0x61,0xA7,0x6C,0x76,0x8F,0x90,0x9F,0x11,0x0D,0x48,0xE4,0xDE,0xF9,0x5A,0x5D,0x4F,
    0xBA,0x93,0x89,0xBA,0x59,0xAB,0x57,0x1F,0xC7,0x2A,0xA7,0xBF,0x9F,0xF6,0xDC,0xFD,0xFF,0xC6,0xDF,0xE6,0xA9,0xBD,0xB7,0xF9,0xAE,
    0x2E,0x56,0x0C,0xE5,0x02,0xE0,0xFA,0x9E,0x07,0xFE,0x57,0xFC,0xC5,0x97,0x44,0x61,0x00,0x10,0x00,0x0B,0xB2,0x60,0xFF,0xFB,0x28,
    0xC0,0x04,0x80,0x08,0x34,0x65,0x79,0xFC,0xC1,0x00,0x01,0x63,0x25,0xEF,0xBD,0x83,0x08,0xE9,0x05,0x44,0xE5,0x05,0xE7,0x12,0x99,
    0x8B,0x0B,0x70,0x31,0x37,0xF5,0xF9,0x37,0x67,0xD7,0x92,0x4B,0xDB,0x25,0xEA,0x58,0xBB,0x23,0xD4,0x03,0x93,0xD7,0xA1,0xB9,0x42,
    0x85,0x4B,0x20,0xC2,0x82,0xA0,0x47,0x3F,0xCF,0xF9,0x77,0xF0,0x1B,0xD5,0x07,0x05,0xCE,0x9A,0x2B,0x9F,0x03,0x9A,0x60,0xA4,0xA5,
    0x3A,0xAB,0x20,0x99,0x20,0x10,0xDC,0xF7,0x00,0xAA,0xE6,0x54,0xA8,0xF3,0xEB,0x04,0xAE,0x08,0x3E,0x88,0x10,0x71,0x24,0x65,0x30,
    0x68,0x22,0x40,0x25,0x4E,0x79,0xCC,0x55,0x1E,0x8A,0x5D,0xAA,0x2D,0x7E,0xCF,0xF0,0x52,0xB1,0x1E,0x0C,0xD6,0x64,0x59,0xF6,0xA2,
    0xFE,0x83,0xAD,0x26,0x75,0xEB,0x36,0xBC,0x33,0xCA,0x63,0x8A,0x0A,0xC2,0x98,0x8A,0x52,0x18,0xC1,0x8C,0xC0,0x46,0x6B,0xBA,0xB4,
    0xAE,0xCC,0xEB,0x39,0x4B,0xE6,0x3A,0xF6,0x20,0xCB,0x85,0x79,0x7C,0x8A,0x77,0x56,0x93,0x02,0x02,0x00,0x5D,0xFF,0x70,0x06,0x40,
    0xB0,0x26,0xFF,0xFB,0x18,0xC0,0x06,0x80,0x07,0x9C,0x2D,0x83,0xE4,0xB0,0x41,0x01,0x10,0x25,0x6E,0xF4,0xF3,0x1C,0xE9,0x70,0x24,
    0x2F,0x78,0xC1,0x40,0x2C,0x96,0x71,0x92,0xFA,0x8F,0x3F,0x7E,0x53,0xBF,0x5C,0x56,0x73,0x2C,0xF1,0x64,0xEC,0x28,0x15,0x4A,0x1F,
    0x24,0x96,0x93,0xB6,0x69,0xF2,0x37,0xD8,0xDE,0x97,0x35,0x0E,0x53,0xD3,0x20,0x5C,0x71,0x43,0xC6,0x24,0x11,0x6A,0x74,0x00,0x10,
    0x00,0x99,0x15,0x01,0x38,0x38,0x93,0xA7,0xFB,0x7A,0xD6,0x93,0x41,0x04,0x40,0x9A,0x5A,0x6D,0xE7,0xE0,0xBF,0x92,0x93,0x96,0x55,
    0xF7,0xD0,0x33,0xA6,0xAF,0x65,0xE7,0x68,0xB4,0x3F,0xF3,0x7F,0x7F,0xCF,0x63,0xBB,0x9A,0xDF,0x66,0xBF,0xEE,0xFE,0xF6,0xEB,0x54,
    0xCF,0xFD,0xBF,0x56,0xFB,0x7A,0x21,0x85,0xD0,0x34,0x9B,0xCD,0x8C,0x01,0xAE,0x48,0x49,0x08,0x04,0x9D,0xAE,0xFF,0xFB,0x28,0xC0,
    0x03,0x80,0x08,0x79,0x37,0x79,0xA7,0xA4,0x43,0x80,0xFF,0x13,0x6F,0x34,0xF6,0x1C,0x20,0x80,0x32,0x0B,0x92,0x41,0xE0,0x5A,0xA0,
    0x1C,0x42,0x4A,0x47,0x6D,0xD7,0x3A,0xDF,0xFC,0xBE,0x56,0xC1,0x01,0xBE,0xB9,0x86,0xF8,0x54,0xAA,0xB6,0xFA,0x60,0x85,0x2D,0x5A,
    0xAD,0xD9,0x1D,0xF4,0xD1,0xCC,0xFD,0xC8,0x8B,0x59,0xD5,0x7F,0xB9,0x3F,0x4F,0xAC,0xD5,0xFD,0x7F,0x21,0xBE,0x9E,0x97,0x2D,0x6A,
    0xA0,0xCB,0xAA,0xBB,0x60,0x00,0x00,0x01,0x73,0x4C,0x00,0xD0,0x5D,0x97,0xD3,0x88,0x23,0x1A,0x05,0x27,0x2C,0x45,0xE9,0x65,0x2F,
    0xC4,0x3A,0x9B,0x56,0x7D,0x71,0x59,0xBF,0x6F,0xFE,0x8A,0x73,0xBF,0xA3,0x3F,0x77,0x4D,0x32,0x49,0xA8,0xEB,0x36,0xEF,0xAB,0x14,
    0x0F,0x51,0x7E,0x35,0x92,0xE0,0xD6,0x98,0xD2,0x87,0x54,0x28,0x34,0x3A,0x81,0x01,0x55,0xBA,0xEA,0x40,0x00,0x00,0x26,0xDA,0x80,
    0x35,0x01,0xD2,0x69,0x20,0x46,0x41,0x7C,0x5A,0xEA,0x60,0x1A,0x55,0x6B,0xF0,0x11,0xB6,0xC7,0x6F,0x53,0x3F,0xA3,0x7F,0xFA,0xFE,
    0xB6,0xFF,0xFB,0x18,0xC0,0x11,0x00,0x07,0xE5,0x25,0x7B,0xA6,0x14,0x48,0xC0,0xF9,0xA7,0xAF,0x7C,0xC2,0x89,0x18,0x9A,0xCC,0xFE,
    0xE9,0xB6,0x09,0xBA,0x59,0x08,0x94,0xEF,0xFF,0xD7,0xEB,0x75,0xAD,0x8F,0xB3,0xB0,0x32,0x7D,0x87,0x7D,0x6C,0x25,0x04,0x96,0x65,
    0xC9,0x2A,0x34,0xA8,0x80,0x02,0x00,0x2A,0x6E,0xF0,0x11,0x8B,0x04,0xA3,0x31,0x14,0x9C,0x3B,0x04,0xE7,0x0C,0x84,0x6E,0x8C,0x31,
    0xF8,0x0E,0xC9,0x25,0x09,0xD2,0xA2,0x3E,0x8D,0xFF,0xDC,0x9F,0xA5,0x19,0x75,0xFA,0xF4,0x46,0x0C,0x95,0x3B,0xB9,0xBF,0xA6,0xAA,
    0x9A,0x7D,0xFF,0x33,0x74,0xFD,0x7F,0x4F,0xCD,0xF8,0x9A,0xF5,0x14,0xA5,0xD1,0xDC,0x00,0x00,0x00,0x4C,0xCA,0x80,0x46,0x4E,0x09,
    0x4C,0x8B,0x2A,0x0D,0xC3,0x5D,0xAA,0xCA,0x4F,0xA8,0x57,0x5E,0xD5,0xEA,0x18,0x3F,0x63,0xC7,0xAF,0xAB,0xFF,0xFB,0x18,0xC0,0x0F,
    0x81,0x08,0x89,0x3D,0x71,0xA7,0xA8,0x4E,0xC1,0x26,0x22,0xED,0xB4,0xC4,0x0A,0x10,0x94,0x14,0x27,0x91,0x36,0xD6,0xB7,0xCF,0x44,
    0x36,0x5E,0x46,0xBF,0xED,0x9D,0xD8,0x13,0x59,0xE9,0xED,0xF2,0xEF,0xE5,0xF7,0x59,0xEA,0x69,0xB4,0xFC,0x9F,0xAF,0xE3,0x7A,0x98,
    0xBB,0x6A,0x3A,0xBD,0x27,0x00,0x00,0x29,0x50,0x00,0x8C,0x44,0x22,0x71,0x82,0xD3,0xA1,0x78,0xE7,0x01,0xFB,0x9C,0x86,0x51,0x3A,
    0x34,0x58,0xFB,0x02,0x0B,0x09,0x09,0x48,0x23,0x2B,0xDD,0x58,0x48,0x4B,0xCF,0xF0,0xA8,0x6D,0x96,0xF4,0xC2,0x8B,0x5A,0xCC,0x6A,
    0xCF,0x7F,0xFE,0xD9,0xFE,0x8C,0xA7,0xF6,0x4B,0x7F,0x6A,0xEF,0xD8,0xEF,0xEE,0x4A,0x23,0x23,0xFE,0x3F,0x22,0x4F,0x0B,0x34,0xF9,
    0x90,0x4D,0xD5,0x54,0x32,0x00,0x00,0x00,0x94,0xD6,0xE0,0x0C,0x8D,0x0F,0xFF,0xFB,0x28,0xC0,0x06,0x01,0x0A,0xC0,0xFF,0x79,0xEC,
    0xB0,0x64,0x89,0x1E,0x25,0x6E,0xB5,0x84,0x08,0xF9,0xC4,0x57,0x1B,0x90,0xFE,0x29,0x8A,0xA1,0x7A,0x47,0x9D,0x8A,0x90,0xA3,0x43,
    0x14,0xCC,0x7F,0x96,0x16,0xC3,0xE3,0x34,0xFF,0xFC,0x9A,0x1E,0xC5,0xCA,0xBB,0x7C,0x39,0x49,0x53,0x39,0x31,0xBA,0x4D,0xFE,0xEF,
    0x0C,0x30,0xE2,0x88,0x33,0x4B,0x86,0x31,0x52,0x55,0xA5,0x2A,0x2A,0x35,0x91,0x76,0x8C,0xD2,0x31,0x97,0x3A,0x16,0x7D,0x7B,0x14,
    0x72,0x63,0x3E,0xCA,0x73,0x18,0x57,0xFB,0x45,0xED,0x36,0x00,0x11,0xC5,0x40,0x15,0x00,0x0C,0x8D,0xDA,0x5E,0xFC,0xC5,0xA1,0xA8,
    0x18,0x2C,0x6B,0x40,0xE9,0x0B,0x4D,0x0D,0xBC,0x83,0xF8,0x37,0x45,0x11,0xE3,0xFE,0xC2,0x06,0xFF,0x56,0xFD,0xBA,0x63,0x7E,0xEE,
    0xEE,0xA8,0x7A,0xB2,0x1A,0xE5,0x9F,0xAF,0xD1,0x49,0xBB,0x7B,0x49,0xDF,0x5D,0x76,0x4D,0x3E,0x84,0xFC,0xEF,0xE8,0x77,0xE8,0x8A,
    0x2E,0xBB,0x9C,0xFF,0xD9,0x05,0x8E,0x4A,0x80,0x00,0x06,0xE5,0xB3,0x00,0x0B,0x95,0x0B,0xE7,0x43,0xFF,0xFB,0x28,0xC0,0x06,0x81,
    0x09,0x11,0x2B,0x79,0xA6,0x0C,0xA8,0x89,0x00,0x97,0x6E,0xB4,0xF4,0x15,0x18,0x58,0x70,0x5A,0x41,0x25,0x29,0x71,0x27,0x5A,0x77,
    0x41,0x6A,0x75,0x16,0x5D,0xE8,0x0B,0xF4,0x59,0xF5,0x20,0xBD,0xAD,0x55,0x3D,0xD8,0xD1,0xAE,0xBD,0x12,0xCC,0x4D,0x7E,0x72,0xB7,
    0xA9,0x59,0x74,0xF6,0xF4,0x69,0xBA,0xAB,0x6E,0x7F,0xA1,0xD9,0x74,0x91,0xF2,0x51,0x0D,0xB5,0x90,0x7C,0xF1,0xF0,0x7B,0xBE,0x75,
    0x0B,0x81,0x26,0x6B,0x74,0x02,0xCC,0xF9,0x4E,0x35,0x2D,0xBC,0x48,0xB3,0x25,0x5F,0x93,0xC1,0x28,0x33,0xFE,0x40,0x9E,0x92,0x05,
    0xA2,0xD2,0xA6,0x3D,0xE8,0xC8,0x74,0x64,0x9E,0x67,0xE9,0x39,0xB3,0x68,0xFF,0xFF,0xB4,0xAE,0xA8,0x86,0x55,0x58,0xC6,0x0D,0x7F,
    0x76,0x5D,0x6D,0xA4,0x83,0xEA,0x0E,0x4C,0xD9,0x91,0x38,0xD2,0xDC,0x9A,0xAD,0x58,0x80,0x00,0x23,0x25,0xD2,0x80,0x48,0x4B,0x91,
    0xFE,0x91,0x42,0xDC,0xCE,0x96,0x66,0x76,0x68,0x11,0x9A,0x08,0x97,0x58,0xD0,0xA6,0x9A,0xA3,0xA1,0xCD,0x4A,0xC9,0x23,0x06,0xFF,
    0xFB,0x18,0xC0,0x11,0x81,0x08,0xC4,0x4B,0x77,0xA7,0x94,0xEA,0xC1,0x1F,0x07,0xAD,0xFC,0xF6,0x20,0x38,0x16,0xBE,0xD4,0xB1,0x00,
    0x74,0x9E,0x10,0x3A,0x91,0xC9,0x1C,0x95,0x52,0x11,0x28,0xB4,0x57,0x20,0xBB,0xA1,0xB1,0xE3,0x02,0xF1,0x5A,0xE6,0x71,0x11,0xEC,
    0xF6,0x22,0x3F,0x83,0x54,0x19,0x91,0xC8,0x00,0x14,0x6F,0x00,0x5D,0x05,0xF1,0x81,0xD0,0xB0,0xF0,0x7B,0x79,0x2A,0xD7,0xF6,0x34,
    0xC5,0x0C,0xA5,0x72,0x6A,0x08,0xA4,0x9F,0xE3,0x41,0x7C,0x94,0x00,0x80,0x48,0x12,0x9D,0x62,0xFC,0x1C,0xBE,0x2F,0x38,0xE3,0x8D,
    0x32,0x90,0xF9,0x00,0xA3,0x8C,0x21,0xFC,0x93,0xFF,0x68,0xB1,0xDC,0x61,0x27,0x56,0xE7,0x29,0x47,0xC8,0xB8,0x13,0x3E,0x21,0x08,
    0x98,0x1F,0x91,0x5C,0x00,0x00,0x02,0x1D,0xD5,0x00,0x67,0x40,0x51,0x99,0x2C,0xAA,0x12,0x02,0xFF,0xFB,0x18,0xC0,0x08,0x01,0x08,
    0x45,0x13,0x73,0xA7,0xAC,0x48,0xC1,0x02,0x14,0x2D,0xF4,0xC0,0x8E,0x98,0xC4,0xB2,0xD8,0x6B,0xD2,0x05,0xFD,0x45,0x70,0x15,0x12,
    0xB6,0x51,0x2F,0x4D,0x96,0xFD,0x96,0xDF,0x5F,0xD1,0xBD,0x5B,0xDF,0xAE,0x91,0x9A,0xE4,0xAA,0xBD,0xCD,0x7F,0x79,0x4C,0xEC,0xB5,
    0x56,0x4F,0xBE,0xA7,0xAD,0x6B,0xFE,0xFC,0x13,0x6B,0x06,0x02,0x7B,0x35,0xD8,0x0E,0x00,0x07,0x2B,0xC0,0x0F,0x43,0x40,0xEA,0x21,
    0x59,0x04,0xBE,0xA0,0xB2,0xF1,0x2A,0x76,0xC7,0x94,0x9C,0xB7,0xDC,0x09,0xC5,0x3D,0x67,0xF0,0xB3,0x79,0xDE,0xA6,0x7E,0xCA,0x3F,
    0x97,0x52,0x1A,0xAE,0x64,0xD9,0x11,0x1B,0x97,0x81,0xDC,0x2C,0x76,0x8F,0x3E,0x4B,0xBA,0x12,0xB4,0xDF,0xAF,0x91,0xCB,0xB9,0xED,
    0x0A,0x9D,0x5C,0xCA,0xED,0x16,0x00,0x00,0x00,0x4B,0xB3,0x00,0xFF,0xFB,0x28,0xC0,0x04,0x01,0x09,0x1C,0x75,0x6D,0xA4,0xB4,0xEC,
    0x41,0x5B,0x27,0xEE,0x3D,0x82,0x8E,0x31,0x03,0x91,0x82,0x48,0xC6,0x41,0x20,0x7C,0x70,0x71,0xE5,0x7F,0x48,0x56,0xDA,0xE8,0x84,
    0x21,0xE8,0x50,0xA3,0x0F,0x04,0x5A,0xD9,0x07,0x64,0x37,0x65,0x6A,0x56,0xED,0x45,0xB2,0x91,0x09,0x1F,0x58,0x77,0x5F,0x33,0x90,
    0x1C,0x67,0x7D,0x88,0x51,0xD5,0x5E,0xF5,0xCF,0x55,0x3E,0x26,0x62,0x90,0x0D,0x61,0x6C,0xB9,0xB0,0xCB,0xC2,0xC6,0xDB,0x0C,0x28,
    0x42,0x02,0x53,0x4E,0x00,0x36,0x62,0x4B,0x7B,0x61,0x74,0xF0,0x23,0xA2,0xEA,0x40,0x91,0x7A,0x6A,0x7D,0x63,0x2E,0xA0,0xFD,0xEB,
    0x55,0x1E,0x7C,0xD1,0x68,0x1D,0x58,0x64,0xEE,0x3D,0xBA,0xA1,0x0B,0xF5,0xD1,0x1D,0x9D,0x2E,0xEB,0x13,0x6F,0x91,0xF7,0xD1,0x0C,
    0x6D,0x2D,0x4D,0xDC,0xEB,0xD2,0x2B,0xA2,0x19,0x22,0x32,0x19,0x91,0x36,0x8F,0x4F,0x9C,0xBE,0xEC,0xDE,0x5B,0xAF,0xC2,0xB1,0x7E,
    0xFE,0x44,0xE1,0x02,0x6C,0x41,0x01,0x82,0x24,0xDD,0x92,0x2A,0x40,0x00,0x26,0xDD,0xBB,0xFF,0xFB,0x28,0xC0,0x03,0x81,0x09,0xA9,
    0x0F,0x77,0xAC,0x30,0x43,0x89,0x16,0x97,0x6E,0x28,0xF4,0x09,0x28,0x81,0x14,0x2A,0xA9,0x34,0x0B,0xD0,0x0D,0x8F,0x44,0xBA,0x82,
    0x45,0x28,0x2F,0x8F,0xBF,0xDB,0x97,0xFD,0x36,0xB2,0xCA,0xA6,0xB2,0x65,0x00,0x67,0x46,0x70,0x47,0x67,0x73,0x24,0xE4,0x44,0x3F,
    0x6E,0xF3,0x23,0xAF,0xEA,0xFA,0xA5,0xFB,0x72,0xB7,0x64,0xA9,0x2B,0xD7,0xD7,0xBF,0xF7,0x31,0x11,0x59,0x2C,0xD6,0x50,0xBE,0x5C,
    0xBF,0xF7,0xCD,0xDC,0x4C,0xC8,0x2D,0xE2,0x0A,0xE0,0x02,0x23,0x74,0x02,0xA0,0xA0,0x14,0x83,0xBA,0x22,0x89,0xBD,0x85,0x4B,0x29,
    0xCE,0x59,0x25,0x56,0xA4,0x89,0xE4,0x16,0x27,0x17,0x18,0x0D,0x3E,0x22,0xA4,0x20,0xB7,0xF3,0x9E,0x8E,0x9C,0x8F,0xD0,0xAF,0x5D,
    0x8A,0xF7,0xDB,0xFA,0x5F,0x2B,0xEC,0xF9,0x85,0xBC,0xAB,0xFF,0x44,0x94,0x72,0x15,0x0E,0x8D,0x0B,0x0F,0x43,0xE2,0xEC,0xCE,0xB4,
    0x72,0x5C,0x2A,0x29,0xCA,0x40,0x00,0x12,0x1C,0xAF,0x00,0xCC,0x23,0x67,0xC2,0x31,0x85,0x2A,0x5D,0x51,0xA2,0x0C,0xFF,0xFB,0x18,
    0xC0,0x09,0x81,0x08,0xE1,0x2B,0x75,0xA7,0x98,0xA6,0x88,0xF8,0x11,0x2F,0x34,0xF6,0x1C,0x20,0x85,0xB1,0x6C,0x55,0xC7,0xC2,0x45,
    0xA1,0x56,0xE4,0xAA,0xC8,0xE0,0x28,0x7B,0xEA,0x67,0x77,0xB5,0x7F,0x32,0xF4,0x63,0x19,0xA8,0xBA,0xF4,0xC8,0xCB,0x4F,0xE8,0xDC,
    0xAF,0xE9,0xB7,0xDE,0xDD,0x5F,0xA1,0x8E,0x73,0xFB,0x95,0xDB,0xDD,0x9E,0xD6,0x8B,0xB9,0xE7,0x6E,0xFD,0x51,0xCE,0xC0,0x12,0xD9,
    0x80,0x2C,0xC2,0x4C,0x12,0x8E,0xCA,0x13,0x0E,0xE2,0xD1,0x79,0x56,0xCB,0xB2,0x2D,0xBB,0xD0,0xEF,0xB2,0x1E,0xBE,0xA0,0x45,0xFB,
    0x6F,0xFA,0xBE,0xBA,0x1F,0xA3,0x65,0x48,0x34,0x53,0xB4,0x89,0xBA,0xCF,0x99,0xA6,0xB7,0xFB,0x95,0x4A,0xD3,0x50,0x13,0x10,0x90,
    0xD6,0xE8,0x3A,0xE0,0x5A,0xA2,0x8E,0x2A,0xD0,0x00,0x00,0xA3,0x74,0x07,0x41,0x05,0xFF,0xFB,0x18,0xC0,0x04,0x80,0x08,0x98,0xBD,
    0x71,0x47,0xB0,0x43,0x00,0xF9,0x03,0x2E,0xF4,0xF4,0xA4,0x80,0x55,0x1A,0x42,0x01,0x2D,0x81,0xB1,0x9D,0x99,0x7B,0xA4,0xC4,0x4D,
    0xA2,0x94,0xE5,0x65,0xBC,0x2C,0xC0,0xDF,0xC0,0x43,0x36,0xF4,0x29,0xAD,0xFD,0x35,0x12,0xD0,0x7C,0x8B,0x3D,0x7B,0x51,0x9B,0x94,
    0x8F,0xB9,0x5A,0x12,0xCF,0xEF,0x4C,0x99,0x53,0x0F,0x98,0x72,0x94,0x49,0xAB,0x15,0x23,0x16,0xC0,0x4F,0x03,0x30,0xA8,0x6C,0x04,
    0x10,0x14,0x97,0xDE,0x00,0xD0,0x7C,0xA9,0x78,0x8D,0x3E,0x18,0x1D,0x17,0x57,0x5E,0x28,0x1E,0x52,0x4B,0xBD,0x97,0xDE,0x89,0x88,
    0x55,0x71,0xB2,0xC8,0xB0,0x28,0x95,0x96,0x4A,0xD8,0x87,0xD1,0x24,0x47,0x5B,0xA4,0xD2,0xE8,0x9D,0xC5,0x9E,0x49,0x42,0xC1,0xA2,
    0xC9,0xFD,0x2B,0x3F,0xA9,0xA7,0xCC,0x31,0xEB,0x22,0xFF,0xFB,0x28,0xC0,0x00,0x80,0x09,0x11,0x3B,0x6D,0x47,0x8C,0x48,0xC9,0x09,
    0xA4,0x2E,0x74,0xF0,0x89,0xB9,0x81,0x00,0x12,0x9A,0x98,0x00,0xFA,0x3C,0xCE,0x36,0x84,0x36,0x09,0xFC,0x62,0x2A,0xF2,0x16,0xAC,
    0x16,0x95,0xF7,0xA0,0xB3,0x52,0x11,0x2C,0xF4,0x5B,0x30,0xAC,0x8A,0x66,0x5D,0xFD,0x6E,0xFD,0xBB,0x98,0x19,0xDC,0xDF,0xF5,0xB4,
    0x1A,0x83,0x62,0x35,0x1D,0x9C,0x8A,0xFF,0xFF,0xFD,0x11,0xAE,0xD4,0xBB,0xF7,0xA9,0xFA,0xA9,0xD1,0xEE,0xB9,0x2C,0xF1,0x4D,0x10,
    0x10,0xD8,0x86,0xC9,0xB4,0x90,0x00,0x4E,0x5B,0x78,0x04,0x88,0xB8,0x17,0x25,0x0A,0xA2,0xC9,0x86,0x47,0x6F,0x25,0x83,0x5B,0x58,
    0x35,0xC3,0x9A,0x38,0x72,0xDB,0xE1,0xA5,0x37,0x3C,0x73,0xE4,0xC2,0xC3,0x42,0x16,0x26,0x52,0xB2,0xAF,0xDD,0x2C,0xD9,0x17,0xD1,
    0xFA,0xBF,0xFF,0xAE,0x8C,0x47,0x96,0xC4,0xAE,0xFB,0x7B,0xDC,0x74,0x77,0xEA,0xD0,0x90,0x0A,0x27,0x40,0xD0,0x00,0x00,0x53,0x70,
    0x02,0xEE,0x45,0x9E,0x28,0xB2,0x78,0xE6,0x5F,0x0E,0xA3,0xC1,0xDE,0x94,0x28,0xFF,0xFB,0x28,0xC0,0x0A,0x80,0x09,0xED,0x31,0x67,
    0x47,0x8C,0x4F,0x09,0x32,0xA4,0x2E,0xB4,0xF1,0x95,0x79,0x7B,0x3B,0x63,0xA9,0xE8,0x46,0xCD,0x7B,0xB3,0x3B,0x58,0xF6,0x87,0x05,
    0xB2,0x1C,0xB6,0x64,0xBA,0x6F,0xEA,0xE8,0x85,0xB9,0x3B,0x25,0x12,0x6D,0x4D,0x2F,0x77,0x93,0x95,0x26,0xE4,0xD3,0xE6,0x69,0x34,
    0x6A,0x74,0x36,0x44,0xD9,0x0F,0x53,0x15,0xDB,0xD0,0xC8,0xCE,0xCC,0xA4,0x60,0x4B,0x75,0x57,0xE4,0x99,0x36,0xC0,0x04,0x12,0xE3,
    0xDA,0xE0,0x09,0xE8,0xFB,0x4B,0x29,0xD7,0xD0,0x85,0x32,0xBD,0xD5,0x34,0xDA,0x02,0x56,0xE7,0x0F,0x1E,0x9C,0xFC,0x5B,0xF3,0xFF,
    0x37,0xF3,0x37,0x47,0x09,0x52,0xEF,0xAE,0x87,0x17,0xD9,0x1D,0x0D,0x74,0x5F,0xDF,0x43,0xB5,0x42,0x44,0xBA,0xB1,0x5D,0x89,0x9D,
    0x7F,0xFF,0x5B,0xBD,0x75,0x79,0xB7,0xC8,0x77,0x43,0xB9,0xD4,0xE9,0x44,0x41,0x06,0xD6,0xD4,0xFC,0x74,0x9C,0x51,0x80,0x00,0x02,
    0x1C,0x48,0x00,0x70,0x09,0x18,0x07,0x63,0x89,0xF9,0x28,0x3F,0x52,0x6B,0x08,0x7C,0x4B,0x2F,0x37,0xC2,0xFF,0xFB,0x28,0xC0,0x0C,
    0x01,0x0A,0x71,0x3B,0x6B,0x46,0x18,0x4B,0x09,0x16,0x91,0xAD,0xE4,0xC3,0x0C,0xC8,0xF0,0xF1,0xDB,0x6F,0x8E,0x87,0xA3,0x19,0x94,
    0x46,0xED,0xCA,0x10,0xAC,0xC7,0x33,0x11,0xB7,0x18,0x63,0x9E,0x46,0x21,0x1A,0xED,0x76,0xFB,0x0E,0xBA,0xCE,0x73,0xD1,0x6B,0xB4,
    0xEE,0xBD,0x1F,0x53,0x7A,0x1D,0xD9,0x14,0xF7,0x4A,0xED,0xE5,0x62,0xCE,0xD5,0x3A,0x16,0xEF,0x23,0x41,0x82,0x6A,0x23,0x07,0x1F,
    0xBD,0xA8,0x02,0xFB,0x01,0x50,0x5A,0x55,0x2A,0x8F,0x0E,0x18,0x13,0xE4,0x79,0xF1,0x0D,0xD1,0xF3,0xDC,0x38,0xAB,0x73,0x41,0xBC,
    0x12,0x79,0x64,0x65,0x75,0xCB,0xC9,0xA9,0x38,0x22,0x35,0x56,0x0E,0xF3,0x39,0x10,0xC5,0x60,0x96,0x17,0x59,0xE6,0x93,0x61,0x1A,
    0x4C,0xFF,0xB1,0x69,0x75,0x43,0x51,0x0F,0x35,0xA4,0x6F,0x17,0x03,0x35,0x57,0x0E,0x20,0x55,0x41,0x06,0xAA,0x89,0xDA,0x40,0x00,
    0x00,0x0C,0xAE,0x00,0x6F,0x8B,0x61,0x38,0xBA,0x21,0x2A,0xE1,0x7D,0x08,0xAC,0xEC,0xE3,0xA3,0x2A,0xD5,0x9F,0xAC,0x5E,0x8C,0x79,
    0xFF,0xFB,0x18,0xC0,0x0E,0x80,0x08,0xE8,0xBB,0x73,0xA7,0xB0,0x41,0x01,0x15,0x83,0xAE,0xB4,0xC6,0x08,0x20,0xFD,0x4C,0xFD,0xD8,
    0xF2,0x2F,0x4A,0x15,0x0B,0xCB,0xD1,0xCA,0xFA,0x59,0x0C,0x25,0xE8,0xA2,0xB4,0x32,0xB8,0x2C,0x54,0xBD,0xF8,0x99,0xC7,0x9C,0xD0,
    0x1B,0xDC,0xE6,0x16,0x60,0xAB,0x23,0xD3,0xE8,0x71,0xE1,0x00,0xBA,0xDA,0x72,0x40,0x41,0x04,0x05,0x2C,0xC0,0x09,0xA2,0x39,0xA1,
    0x54,0x13,0x52,0x6E,0xBD,0xF4,0x15,0x8B,0xE0,0xC1,0xB4,0xCF,0xD8,0xC3,0xC2,0x79,0x48,0xB1,0x94,0xAC,0x23,0x06,0x07,0x40,0x08,
    0x62,0x41,0x7A,0x03,0x76,0x18,0x86,0xA5,0xA5,0x58,0x95,0x3D,0x81,0x53,0xEC,0x52,0x2C,0x6D,0x2F,0x52,0x5C,0x10,0x3D,0x34,0x4D,
    0x4D,0xEC,0x58,0x10,0x04,0x0F,0xA0,0x75,0xF2,0x78,0x41,0x24,0x20,0x54,0xD3,0x00,0x1E,0x3A,0x4F,0xFF,0xFB,0x28,0xC0,0x05,0x80,
    0x08,0x9C,0x2B,0x77,0xA6,0x04,0x48,0x01,0x0B,0x8F,0x6E,0x74,0xC4,0x88,0x28,0x25,0x95,0xD5,0x16,0x0F,0xA3,0x3D,0x6E,0xA2,0x15,
    0xEC,0x20,0x29,0xE5,0x83,0xE4,0xAD,0xB4,0x46,0x87,0xC9,0x21,0xA2,0xC7,0x88,0x0D,0x34,0xE3,0xB9,0xA3,0xB6,0x24,0x1A,0x45,0x13,
    0x0A,0x6C,0xE0,0xF6,0xD4,0x49,0x93,0x41,0xB6,0x82,0xD6,0x2C,0xC0,0x65,0xEE,0x58,0xB0,0xF1,0x36,0x99,0x62,0x45,0x14,0xE2,0x8D,
    0x00,0x00,0x20,0x27,0x1E,0x00,0x2C,0x06,0xC3,0x4D,0x80,0xCA,0xA8,0x31,0x40,0x1D,0x93,0x5E,0xCF,0x1A,0xD5,0x0A,0x37,0x72,0x3B,
    0x16,0xCF,0x99,0x49,0xFD,0xA9,0xDB,0xCE,0x68,0x97,0x9B,0x34,0x01,0x5B,0xA0,0x04,0x20,0x62,0xFF,0x5D,0x79,0x2D,0xC9,0x3A,0xFA,
    0x84,0x0B,0x15,0x50,0x0C,0xB0,0x41,0xDC,0x89,0xE8,0x90,0x44,0x38,0x38,0x41,0x69,0x44,0x80,0x00,0x30,0x1C,0xB3,0x00,0x56,0x00,
    0x11,0xD5,0x10,0xB9,0x34,0x97,0x38,0x92,0x71,0x69,0xCE,0xA6,0xE4,0x34,0x33,0x45,0x93,0x72,0x31,0x02,0xD4,0x00,0x40,0x19,0xFF,
    0xFB,0x18,0xC0,0x11,0x01,0x09,0x1C,0xD9,0x71,0xA6,0x04,0x51,0x49,0x2E,0x25,0xAE,0x74,0xC4,0x09,0x71,0x2F,0x22,0x4C,0x0A,0x66,
    0x61,0xB7,0x90,0xD0,0x04,0x43,0x1A,0xF5,0xDE,0xB1,0x5A,0xF5,0xA2,0xF4,0xD5,0xFC,0x29,0xD2,0x9B,0x2F,0x7B,0xD4,0x05,0x58,0x96,
    0xDD,0xF5,0x76,0x33,0xDD,0xEB,0xDE,0x17,0xB4,0xDB,0x8C,0x24,0x15,0xB3,0x80,0x3D,0x84,0x82,0xEB,0x03,0x72,0xCD,0x89,0x0C,0xA4,
    0x40,0xD7,0x81,0xF4,0xBA,0x90,0x1E,0x9F,0xCA,0x74,0x31,0x7B,0xBA,0x8D,0xF4,0x48,0x06,0x8F,0x2D,0xB4,0x5F,0x40,0x00,0x16,0xD5,
    0xEA,0xA4,0x72,0x95,0x35,0x3A,0xA3,0xA2,0xD7,0xD7,0x96,0x99,0xD3,0x6F,0xA2,0x5B,0xD4,0xEB,0x9A,0xB6,0x65,0x3F,0xBA,0x69,0x36,
    0x92,0xB5,0x13,0xFD,0x02,0x7D,0x86,0x6A,0x2E,0x6A,0x96,0xC8,0x80,0x00,0x00,0x56,0xDB,0x80,0xFF,0xFB,0x28,0xC0,0x04,0x01,0x08,
    0xC0,0x65,0x79,0xA7,0xA4,0x62,0xC1,0x56,0x27,0x6E,0x74,0xF4,0x09,0xE9,0x7A,0x90,0x71,0x1E,0x2D,0xC6,0x83,0xD8,0x28,0x50,0x36,
    0x43,0x2B,0x0D,0x5D,0xE8,0xEB,0xF9,0xE7,0x8E,0x5D,0xEF,0xD7,0x8B,0x9B,0x9D,0x2A,0xE6,0x24,0x21,0x28,0x64,0x32,0x50,0xB2,0x8B,
    0x91,0xBF,0x50,0xF7,0x89,0xE2,0x56,0x29,0xDF,0x40,0x1A,0xE7,0xE6,0x12,0x3C,0xE0,0x7C,0xA2,0x4E,0x15,0x70,0x80,0xE6,0xFA,0x54,
    0x01,0x72,0x58,0x40,0x02,0x69,0xC0,0x64,0x2A,0x99,0x5B,0x09,0xF2,0x9E,0x11,0x2D,0x3A,0x61,0x3C,0xC7,0xDC,0xE9,0xF6,0x58,0x37,
    0xD0,0xE8,0x34,0xB4,0x26,0x63,0x81,0x5F,0xEB,0x88,0x13,0x71,0x33,0x2C,0x13,0x81,0x26,0x66,0x66,0xB3,0x0E,0xB5,0xA9,0x58,0x35,
    0x4A,0xD5,0x69,0x1F,0xF1,0xD2,0x6B,0x1D,0x85,0x15,0x96,0x9D,0x3F,0x5F,0xB1,0x95,0x8F,0xD0,0xCB,0xF3,0x8C,0x5D,0xE6,0x16,0x29,
    0x79,0xD4,0x22,0xB7,0xB9,0x8A,0x59,0x5D,0x4A,0x1C,0x1D,0x8A,0x6A,0x2A,0x80,0x40,0x00,0x15,0xAB,0x00,0x16,0x01,0x8C,0xFF,0xFB,
    0x18,0xC0,0x05,0x80,0x07,0x70,0xAD,0x77,0xA6,0x1C,0x49,0xC0,0xF3,0x26,0xAE,0xB4,0xC5,0x16,0x18,0x32,0x41,0x3C,0xE3,0xD3,0x16,
    0x44,0xBE,0x81,0xCF,0xB2,0x34,0x99,0xB4,0x96,0xA7,0xEC,0x3E,0xDF,0x3C,0x54,0xFF,0x57,0x7F,0x84,0x46,0x2E,0xC7,0x3B,0x7E,0xCE,
    0xDA,0xD0,0x50,0xE9,0x76,0xF2,0x5D,0xD6,0x2B,0xA7,0x8B,0x3F,0x08,0xFE,0x90,0x11,0xA9,0x76,0xD2,0xE4,0x00,0x00,0x01,0x2A,0xE8,
    0x02,0xA0,0x74,0xF4,0xC8,0xBF,0x75,0x86,0xA9,0x23,0x53,0xD9,0x31,0x2A,0xCD,0xCE,0xCB,0xCB,0x94,0xE7,0xDC,0xCF,0x48,0xF3,0xBD,
    0x88,0x43,0x8D,0xF0,0xB6,0xFC,0x4E,0x54,0xA3,0xCD,0xFA,0xFF,0x37,0xFF,0xE8,0x8D,0xFB,0x76,0xDB,0xFB,0xFE,0x57,0xFA,0x17,0xFB,
    0xFE,0x36,0xFA,0x2A,0x4A,0xDC,0x00,0x00,0x00,0x13,0xA7,0x00,0x76,0x35,0x0F,0x64,0x00,0xFF,0xFB,0x18,0xC0,0x06,0x81,0x07,0xA1,
    0x37,0x73,0xA6,0x1C,0x4D,0x48,0xF8,0x15,0xAE,0xB4,0xF3,0x1D,0x28,0x30,0xB8,0x16,0x16,0x1E,0x72,0xEE,0xBE,0x70,0x89,0x52,0x84,
    0x2E,0xA4,0x9D,0xB2,0x4E,0xBE,0xD8,0xAF,0xF3,0x01,0x1D,0x3A,0x8D,0xF9,0x3B,0x9A,0xC2,0x3F,0x5F,0xE0,0xD7,0xE9,0xFE,0xFF,0xAF,
    0x9A,0x8F,0xFD,0xFF,0x47,0xFC,0xDF,0xF6,0xEC,0xA3,0xA7,0x95,0x4A,0x00,0x0B,0x45,0x40,0x44,0x93,0x37,0x85,0xE1,0x11,0x1C,0xF6,
    0x3F,0x58,0xD9,0xC0,0xFE,0x32,0x85,0xB3,0x30,0x6E,0xCE,0xC6,0xFC,0x78,0xC7,0xBF,0xF1,0xA3,0xEA,0x74,0xE0,0x9D,0xFE,0xAC,0xFF,
    0x1E,0x67,0xB7,0x5F,0xE6,0x23,0x1C,0xB7,0x1D,0x24,0xB3,0x61,0xB6,0x76,0x7D,0xD7,0x6B,0xEA,0xEB,0xF7,0x60,0xBD,0x2B,0xCE,0x4C,
    0x00,0x00,0x00,0x16,0xCF,0x80,0x2C,0x88,0xA7,0x48,0x43,0xFF,0xFB,0x18,0xC0,0x06,0x81,0x07,0xC1,0x3B,0x77,0xA7,0x9C,0x49,0x88,
    0xFD,0x15,0xAE,0xF4,0xF1,0x95,0x28,0x5A,0xC1,0xD9,0x55,0xBA,0x0A,0x27,0x21,0xE5,0x2B,0x2C,0x8D,0x2C,0x97,0x9B,0x55,0xFC,0x2C,
    0xDF,0x50,0x9F,0xDF,0xF4,0x64,0xEF,0x5F,0xEE,0xEA,0x9E,0x5C,0xB7,0xA7,0xF0,0x69,0xF9,0x79,0xF4,0x6F,0xD5,0xFF,0x3B,0x7E,0x6F,
    0xEC,0xDE,0x85,0x15,0xB6,0x9B,0xB5,0x38,0x40,0x0F,0x69,0x80,0x2A,0x8B,0x11,0x94,0x7F,0xA9,0x6C,0xBC,0xC5,0x19,0xF8,0x19,0x58,
    0x38,0x7F,0xA4,0xCF,0x03,0xB7,0x73,0xB7,0x3F,0x60,0xB1,0xDA,0xEA,0x23,0xFC,0xCD,0xF4,0x66,0x32,0xE6,0x43,0xFE,0x53,0xD5,0x72,
    0x0B,0x87,0xC6,0x13,0x15,0x7E,0xEC,0xA6,0x71,0x46,0xF9,0xAC,0x4A,0xCC,0xAB,0x34,0x9C,0xC4,0x46,0x2A,0x89,0x16,0x00,0x00,0x00,
    0x12,0x81,0x80,0x87,0x84,0xFF,0xFB,0x18,0xC0,0x05,0x01,0x08,0x08,0x8F,0x6F,0xA7,0xA5,0xA7,0x40,0xFB,0x25,0x6E,0x34,0xF5,0x89,
    0x30,0x65,0x38,0x8E,0x39,0x2E,0xC4,0x8E,0x32,0x50,0x93,0x50,0x49,0xA3,0x1B,0xA9,0xB2,0x98,0xF6,0x9C,0xBC,0x5A,0x92,0xE4,0x07,
    0xF9,0x34,0x25,0x2A,0x56,0xA3,0x3F,0xAF,0x6A,0xAA,0xA8,0xC9,0x1D,0xD6,0x94,0xE3,0xD7,0x57,0x29,0xD3,0x5A,0xBA,0x07,0xAF,0x39,
    0xDB,0xDD,0xDD,0xAD,0xDA,0x61,0x2A,0x00,0x02,0x75,0xD0,0x05,0x3C,0x73,0x36,0xAA,0xD2,0x11,0x98,0x12,0xEE,0x95,0xE4,0xEE,0xF5,
    0xCD,0xB4,0x5B,0xB4,0xB3,0x47,0xD5,0xD9,0x50,0xFB,0xBF,0xED,0x40,0x66,0x2B,0xC2,0xBF,0xEB,0xD3,0x9D,0x2E,0xEB,0x45,0xFA,0xDB,
    0x6E,0xCC,0xBF,0x57,0xFA,0x91,0xFE,0x53,0xE6,0xF7,0xFE,0x3F,0xE9,0xFE,0xDF,0x83,0xAE,0x25,0x51,0xBC,0x00,0x00,0x00,0x15,0xFF,
    0xFB,0x18,0xC0,0x03,0x00,0x07,0x9D,0x2D,0x75,0xA6,0x1C,0x49,0x88,0xFD,0x20,0x2D,0xF4,0xF6,0x14,0x28,0xB3,0x00,0x72,0x39,0x8E,
    0xE8,0x04,0x15,0x31,0x07,0xE8,0x55,0x1A,0xD5,0x4E,0x14,0xD1,0x28,0xB1,0xE4,0x99,0xE3,0xDD,0x32,0x80,0x1E,0xFF,0x52,0x7E,0xAD,
    0xFA,0xB2,0x7E,0xFF,0xBF,0xD5,0x0F,0x5F,0x51,0x4D,0xFF,0xE4,0x7D,0xBD,0x5B,0xF0,0x6B,0xF9,0x9F,0xF4,0x6F,0xC2,0xBE,0xFC,0x25,
    0x0A,0x58,0x00,0x40,0x00,0xA9,0x26,0x00,0x45,0x06,0x41,0xA9,0x88,0x22,0xB9,0x58,0xFE,0x76,0x6E,0x85,0x90,0x6E,0x47,0x9F,0x44,
    0xB6,0xF7,0xE3,0xB5,0x66,0x38,0x50,0xFF,0x91,0x9B,0xDE,0x5F,0x67,0x53,0x59,0x95,0x77,0x7D,0xEB,0x6A,0xED,0x8A,0xA5,0x9A,0xAC,
    0xDF,0x55,0xFA,0x77,0xFF,0xF5,0x41,0x66,0x6C,0xD6,0xCF,0x6E,0x0D,0xD5,0x85,0xA8,0x51,0x60,0xFF,0xFB,0x28,0xC0,0x02,0x00,0x08,
    0xC4,0x53,0x71,0xA7,0xA4,0x45,0x01,0x1C,0xA7,0xAD,0x68,0xF6,0x08,0x28,0x02,0x9D,0xFF,0x80,0x40,0x8C,0x7E,0x8D,0x2E,0x89,0xFE,
    0x06,0xB0,0xB1,0xDA,0x47,0xD7,0x4B,0x71,0x57,0xD6,0xCB,0x6A,0xB6,0xFA,0x0D,0x24,0x0B,0x90,0x7D,0xE0,0x61,0xA2,0xEE,0x1A,0x16,
    0x34,0xED,0xEE,0x43,0x23,0x43,0x95,0xCA,0x9D,0x71,0x10,0xFA,0xE1,0x44,0x89,0x05,0x90,0x93,0x07,0x85,0xCB,0x65,0x50,0x33,0x1B,
    0x5A,0xE2,0xEF,0x21,0x13,0xAB,0x40,0x20,0x00,0x6E,0x5A,0x02,0xBC,0x9A,0x85,0xC4,0xB2,0x52,0x62,0x48,0x0E,0x3C,0x70,0xB8,0xF7,
    0x42,0x19,0xA5,0xF7,0x2D,0xEC,0x91,0x91,0xC2,0xB2,0xEA,0x70,0x42,0xE5,0xC9,0x3E,0xBA,0xE5,0xCE,0xF4,0x9D,0x14,0x82,0x5D,0x55,
    0xAF,0x52,0xBF,0x75,0xA6,0xEF,0xAD,0x09,0xB7,0x57,0xFE,0xB5,0xC9,0x4D,0x9A,0x95,0x5A,0xF4,0x9D,0xDB,0x76,0xDA,0xEB,0xFE,0x83,
    0xBA,0x95,0xA5,0xD0,0x80,0x16,0xA6,0xD8,0x00,0xBC,0x1B,0x22,0x12,0xC7,0xB5,0x24,0xB3,0x75,0x06,0xD7,0x6C,0x06,0x14,0xFF,0xFB,
    0x18,0xC0,0x0A,0x80,0x08,0x45,0x3B,0x6F,0x46,0x18,0xA8,0x41,0x25,0x27,0x6D,0x68,0xF6,0x14,0x31,0xE9,0x35,0x35,0x4A,0xD6,0xE7,
    0xD7,0xA8,0x34,0xC4,0x25,0x26,0xEB,0x95,0x1C,0xF5,0xB1,0x95,0xCD,0xFF,0x6D,0x3E,0xF4,0x7C,0x84,0xCF,0xD3,0x43,0x7D,0xDB,0x35,
    0x1E,0x96,0x67,0xD1,0xB6,0xFA,0x39,0x6A,0x53,0x3B,0x27,0xFF,0x51,0x64,0xC7,0x40,0x20,0x00,0x52,0xEE,0x02,0xB4,0x81,0x93,0xC3,
    0x34,0x37,0x48,0x60,0x9A,0xD1,0xF1,0x8F,0xD4,0x35,0x0C,0x77,0xA1,0x91,0x29,0x92,0x1A,0xAE,0xC6,0xA9,0x73,0x82,0x29,0xFE,0x8A,
    0xBF,0x66,0xAF,0x73,0x3A,0xB6,0x84,0xED,0xE7,0x72,0xD0,0xB3,0xB4,0xA7,0x35,0x09,0x5E,0x54,0xFC,0xFD,0xB3,0x6A,0x8C,0xBD,0xD1,
    0xFA,0x51,0x11,0x6A,0x7B,0x29,0x9B,0x2D,0x96,0x93,0x09,0xA2,0xAA,0x6A,0x40,0x00,0x02,0xFF,0xFB,0x48,0xC0,0x02,0x01,0x0C,0xA5,
    0x41,0x6B,0x47,0xB1,0x03,0x09,0xFA,0x28,0x6D,0xA8,0xF3,0x26,0x28,0x9E,0xB8,0x03,0x00,0xAA,0x44,0xBA,0x0E,0x82,0xB0,0x2A,0xE1,
    0xAA,0x76,0xE3,0xA3,0x2A,0x4B,0x44,0x8A,0x7D,0x26,0x61,0xE8,0x51,0x2D,0x3B,0xEF,0xB9,0x09,0x01,0x11,0x38,0x88,0xF1,0xD8,0xB9,
    0xFC,0xD6,0x92,0x0D,0xE3,0x8D,0x3C,0xC4,0x4D,0xA3,0xAB,0x48,0xEA,0xF8,0x3F,0x68,0xEE,0xD6,0xA6,0x1E,0xAA,0xD1,0x36,0xEA,0x71,
    0x8B,0x75,0xD3,0xC6,0xF6,0x62,0xBB,0x0F,0x40,0x50,0xBF,0x09,0xD0,0x76,0x3D,0x2A,0x65,0x07,0x19,0x2F,0xA5,0x1C,0x21,0x88,0xEF,
    0x15,0x37,0x54,0x5B,0x1E,0xD2,0x39,0xC3,0xB3,0x84,0x72,0x38,0x00,0xDB,0x68,0x05,0xD8,0x5D,0xCB,0xE9,0x28,0x34,0xC4,0x30,0xD3,
    0xA2,0x31,0x78,0xE8,0x66,0x62,0x58,0x8C,0xDA,0xF1,0x9D,0x44,0xF6,0x0C,0x60,0x70,0x7D,0x0B,0x51,0x6C,0x07,0xA9,0xA6,0x7D,0x10,
    0x83,0xD2,0x3C,0x8A,0x58,0xDE,0xA4,0x14,0x3F,0xD7,0xA7,0xC1,0x2E,0xED,0xB2,0xD0,0x05,0x4F,0x8C,0xC6,0x3E,0x4D,0x67,0xFE,0x32,
    0x9A,0x49,0x12,0x96,0x7E,0x1D,0x69,0x13,0x44,0xE4,0x2D,0x9F,0x1B,0x83,0x4A,0xB3,0xE0,0xDA,0x64,0x04,0x64,0x0D,0xB4,0xAB,0x67,
    0x89,0xAD,0x09,0x43,0x41,0x63,0xA3,0xB1,0x95,0xB9,0x12,0x12,0xA2,0x65,0x91,0xDB,0x94,0x68,0xB9,0x3A,0xAC,0x25,0x6C,0xEA,0x72,
    0x9C,0x97,0x41,0xBD,0x1F,0x44,0x96,0xDD,0xF8,0x0B,0xA7,0x7D,0xAE,0x5C,0x40,0x20,0x00,0x45,0xD7,0xFF,0xFB,0x28,0xC0,0x03,0x80,
    0x09,0x5D,0x43,0x7D,0xA7,0x8C,0x49,0x01,0x24,0x20,0x2F,0x34,0xC1,0x89,0x28,0x80,0xA7,0x31,0x14,0xC3,0x25,0x4C,0xA5,0x67,0x57,
    0xAA,0x56,0x01,0xEE,0xAD,0x4F,0x3B,0xD5,0x89,0x10,0x86,0xAF,0x45,0x77,0x9F,0x75,0xE1,0x29,0x6D,0x42,0x55,0xD1,0x27,0x5F,0xEF,
    0xF9,0x5D,0x82,0x31,0xDA,0x8A,0x1B,0x53,0x5C,0x8E,0xEC,0x74,0x35,0x59,0x53,0x45,0x96,0x88,0x6A,0x7D,0x6A,0x33,0xFE,0xFA,0xA6,
    0xAD,0x6C,0xE9,0xDD,0xD9,0x94,0xC2,0xC8,0xE3,0xB0,0x80,0x00,0x00,0x19,0x66,0x00,0x4F,0x03,0xC2,0xB1,0xD4,0x39,0x46,0x02,0x62,
    0x40,0x50,0x11,0x98,0xE8,0x32,0xE1,0xB1,0x92,0xA0,0x3A,0xA9,0xBA,0xF5,0x9A,0x82,0x3B,0x3B,0xA8,0xB6,0x7E,0x93,0x92,0x8C,0xDA,
    0x49,0xF7,0xFA,0xA1,0x10,0x8C,0x56,0x09,0x04,0xE8,0x67,0x43,0xDD,0x57,0xA5,0x9E,0xD4,0x3D,0xF4,0x7B,0xAA,0x37,0xE3,0x1E,0xC8,
    0xF3,0xF7,0xA8,0x27,0x52,0x12,0xA9,0xCC,0x80,0x00,0x00,0x54,0x8F,0x80,0xC8,0x36,0x4E,0x26,0x65,0x54,0xE6,0xFC,0x46,0x55,0xFF,
    0xFB,0x18,0xC0,0x09,0x01,0x08,0x61,0x2D,0x79,0xA7,0x8C,0xA9,0x49,0x06,0xA7,0xAE,0xB4,0xF5,0x94,0xF1,0x98,0x84,0x46,0x4C,0xC0,
    0x8F,0x9C,0x52,0xD3,0xA6,0x13,0xD5,0xF1,0x6D,0x7C,0x12,0xDB,0x55,0x11,0x9D,0xA8,0xA2,0x13,0xD2,0xCE,0xE7,0xFA,0x95,0x5A,0x97,
    0x5F,0xDC,0x9F,0xD3,0xDE,0x6F,0x4E,0x9F,0xC5,0x4B,0xF4,0x6F,0xD7,0xF8,0x92,0x39,0xFF,0x89,0x5A,0x66,0x29,0x00,0x01,0x45,0xC0,
    0x2C,0x85,0x9A,0x74,0x29,0x1C,0xE0,0xD6,0xE8,0xAC,0x3A,0xD5,0xEE,0xF2,0x24,0x4A,0x9F,0x7D,0xAD,0x0F,0x87,0x5D,0xA7,0x56,0x77,
    0xC1,0x36,0xB2,0x0C,0x2D,0x3E,0x3B,0xF5,0x1C,0x5F,0xA3,0xBF,0x7B,0x17,0xFF,0xDF,0xFE,0xAD,0xF2,0x35,0x79,0x5D,0x9F,0xE3,0x5B,
    0xF4,0x6F,0xD7,0xF1,0xF9,0xEA,0xCD,0x16,0x5C,0x75,0x73,0x46,0x80,0x04,0x00,0x05,0xB2,0x80,0xFF,0xFB,0x18,0xC0,0x04,0x00,0x07,
    0xD1,0x21,0x75,0xA6,0x08,0xA7,0xC1,0x04,0x10,0x2D,0xF4,0xC3,0x1D,0x28,0x74,0x00,0x63,0xD9,0x68,0xAC,0xB8,0x92,0x1E,0xC1,0x08,
    0x82,0x58,0xA1,0x93,0x99,0xE9,0x6B,0x6D,0xDB,0x81,0xE6,0x7D,0x01,0xAB,0xF2,0xFB,0x54,0xFF,0xDF,0xF2,0xA3,0xBA,0xA4,0xC4,0x5E,
    0x8C,0xEE,0xE9,0xDA,0xCD,0xDA,0xF6,0xF5,0x7E,0xDA,0x88,0x9E,0xDB,0xFF,0xE3,0x35,0x49,0xE1,0xE2,0xE1,0x80,0x00,0x00,0x00,0x38,
    0x58,0x02,0xB0,0x98,0x27,0x0E,0x20,0x8D,0x38,0xEA,0x64,0x0D,0x4E,0xE6,0xF0,0xC5,0x86,0xAE,0xD0,0x13,0x8C,0x9F,0x6F,0x7D,0x80,
    0x95,0x9F,0x63,0xC2,0x11,0x98,0xEA,0x25,0x47,0x6D,0xE8,0x28,0x4B,0x4E,0x59,0x47,0xEA,0xD6,0xE7,0x0B,0x89,0x48,0xEF,0x52,0x9F,
    0x2B,0x6F,0xC8,0x72,0xBF,0xC5,0x7A,0x79,0x25,0x46,0x18,0x40,0xFF,0xFB,0x28,0xC0,0x01,0x81,0x07,0xA8,0x59,0x71,0xA6,0x0C,0xE8,
    0xC1,0x29,0x0C,0x2D,0xB4,0xF4,0x9C,0xE1,0x00,0x00,0x14,0xAE,0x80,0x0E,0x81,0xB5,0x23,0x11,0xC4,0xEB,0x4D,0x5A,0x41,0x07,0xB4,
    0x1A,0x95,0xCA,0x0F,0x9F,0x59,0x9B,0x96,0x7A,0x65,0x40,0x90,0xCC,0xA2,0x0B,0x2C,0x0D,0x96,0xE5,0x24,0xC2,0x28,0xD6,0x99,0xDA,
    0x9D,0x60,0x1E,0xCA,0xC8,0xCE,0xBB,0x71,0x8E,0x59,0xFF,0xA9,0xD8,0x2A,0xAC,0xB2,0x22,0x6E,0x00,0x02,0x76,0xF0,0x15,0x25,0x22,
    0x48,0xBC,0x23,0x1A,0xDD,0x1C,0x06,0x45,0x8A,0x7C,0x49,0x7A,0xCA,0xEF,0xA7,0x6D,0x28,0xA4,0xEE,0x3A,0x5B,0x5B,0xB8,0xFA,0x42,
    0xEB,0xC8,0x57,0xFF,0xF7,0x75,0x79,0xE1,0xCE,0x73,0xB0,0xFB,0x77,0xF2,0x7D,0xAC,0x23,0x78,0x62,0x07,0xC7,0x79,0xF6,0xB7,0x2F,
    0x7F,0xF6,0x58,0x11,0xFF,0x6D,0x67,0xFD,0x12,0xEA,0x4C,0x1B,0x66,0x50,0x9B,0xC5,0x5F,0xC0,0x10,0x00,0x1D,0xBC,0x04,0x21,0x18,
    0x4E,0x4E,0x34,0x1D,0x5C,0x0C,0x22,0x2D,0x8B,0xD0,0x1B,0x74,0xB8,0xBD,0x91,0x9E,0x8F,0xFF,0xFB,0x18,0xC0,0x0D,0x00,0x08,0x30,
    0xB1,0x6D,0x46,0x08,0xA8,0x01,0x2C,0x22,0x6D,0x28,0xC4,0x94,0xF1,0x13,0x2E,0x2D,0xA2,0xBB,0x84,0x18,0x76,0x79,0x3B,0xC8,0xDD,
    0xD6,0xEF,0xFB,0x7E,0x7F,0xAB,0xB8,0xC1,0xAF,0x78,0x4E,0xA8,0x94,0xF8,0xEB,0x28,0x46,0xA6,0x04,0x6C,0x50,0x87,0x88,0xAC,0x71,
    0x0B,0x81,0x64,0x9E,0x00,0x00,0x01,0x3B,0xC0,0x3B,0x00,0x16,0x03,0x25,0xE2,0x4C,0x02,0x00,0x91,0xC4,0xAD,0x42,0xE7,0x7E,0x07};
    
    
    int main(void)
    {
    
    	atmega_init();
    	sta_init();
    	spi_init_sta();
    	
    	int n=0;
    	
    	for(int i=0;i<5000;i++)
    	{
    		while(!PINB2);
    		spi_send(mp3_buf[n]);
    		n++;
    	}
    	
    	PORTB = 0x00;
    	
    	PORTA = sta_cmd_read(NOACK, sta_error_code_reg);
    	while (1);
    	
    	return 0;
    }
    
    void atmega_init(void)
    {
    	DDRA = 0xff;
    	PORTA = 0x00;
    	DDRB = 0xfb;
    	PORTB = 0x00;
    	DDRC = 0xff;
    	PORTC = 0x00;
    	DDRD = 0xff;
    	PORTD = 0x00;
    	
    	TWSR = 0x03;
    	TWBR = 0xff;
    	
    	TCCR2A = (1<<COM2B1)|(1<<WGM21)|(1<<WGM20);
    	TCCR2B = (1<<CS20);
    	TCNT2=0x00;
    	OCR2B=0x78;
    }
    
  • #14
    maly_elektronik
    Level 23  
    Tym blędem się nei martw :) Poprostu to błąd w konstrukcji ukłądu :) Też długo z tym walczylem a jak się okazało układ dzialą bez żadnego problemu :) Podepnij DAC i posuchaj muzyki :) (Mi działa z tym blędem bez żadnych problemów)
    Pozdrawiam maly_elektornik
  • #15
    ePeter1234
    Level 18  
    DAC mam podpięty. Ale w słuchawkach podpietych bezpośrednio do DAC'a nic nie slychac:(
  • #16
    maniek1818
    Level 22  
    Ten DAC "TDA7535" nie ma wzmacniacza słuchawkowego, więc ciężko będzie coś usłyszeć chyba, spróbuj przez jakiś prosty wzmacniacz puścić sygnał.
  • #17
    maly_elektronik
    Level 23  
    Wystarczy podpiąć ten DAC do chociażby prostego wzmacniacza w głośnikach komputerowych albo do głośników w monitorze :)
    Jeszcze inna sprawa odnośnie twoich problemów z powyższym kodem :) :arrow:
    Z tego co kojaże to aby odczytać coś z pamięci flash nie wystarczy proste odwołanie typu:
    Quote:

    spi_send(mp3_buf[n]);

    ale potrzeba czegoś takiego
    
    spi_send(pgm_read_byte(&mp3_buf[n]);
    


    Pozdrawiam maly_elektronik
  • #18
    ePeter1234
    Level 18  
    Huraaa!!!!! udało się :D zmieniłem kod tak jak napisał mały_elektronik i podpiąłem głośniki komputerowe pod DAC'a i słyszę dzwięk muzyki :D ale coś przerywa. musze zerknąć w program.

    Walcze już jakiś czas z ustawieniami STA015 ale nadal slysze tylko bełkot z głośników niż normalny dźwięk. Poniżej zamieszczam ustawienia jakie wysylam do decodera. Może gdzieś jeszcze jest problem. Ja go nie wiedze.

    
    #include "sta015.h"
    #include "twi.h"
    
    int sta_cmd_read(char twi_ack, char twi_data)
    {
    	int x;
    	
    	twi_start();
    	twi_send(0x86);
    	twi_send(twi_data);
    	twi_stop();
    	twi_start();
    	twi_send(0x87);
    	x = twi_recive(twi_ack);
    	twi_stop();
    	
    	return x;
    }
    
    void sta_cmd_write(char twi_adr, char twi_data)
    {
    	twi_start();
    	twi_send(0x86);
    	twi_send(twi_adr);
    	twi_send(twi_data);
    	twi_stop();
    }
    
    void sta_init(void)
    {
    	sta_cmd_write(sta_soft_reset_reg, on);
    	sta_cmd_write(sta_soft_reset_reg, off);
    	sta_cmd_write(sta_mute_reg, on);
    
       sta_cmd_write(0x54, 0x05);
       sta_cmd_write(0x55, 0x22); 
       sta_cmd_write(0x07, 0x00);    
       //PLL 
       sta_cmd_write(0x06, 0x11); 
       sta_cmd_write(0x0B, 0x03); 
       sta_cmd_write(0x61, 0x09); 
       sta_cmd_write(0x50, 0x0A); 
       sta_cmd_write(0x65, 0x6E); 
       sta_cmd_write(0x52, 0xA0);    
       sta_cmd_write(0x64, 0x98);    
       sta_cmd_write(0x51, 0xBA); 
       sta_cmd_write(0x05, 0xA1); 
       //PLL 
       sta_cmd_write(0x0D, 0x00);//SPI_pol 
       sta_cmd_write(0x18, 0x04);    
       sta_cmd_write(0x0C, 0x01);//REQ    
       sta_cmd_write(0x4D, 0x00);//chip mode 
       sta_cmd_write(0x14, 0x00);//demute 
       sta_cmd_write(0x72, 0x01);//Run 
       sta_cmd_write(0x13, 0x01);//Play
    	
    /*	sta_cmd_write(sta_pcmconf_reg, 0x22);
    	sta_cmd_write(sta_pcmcross, 0x00);
    	sta_cmd_write(sta_chip_mode_reg, 0x00);
    	sta_cmd_write(sta_sckl_pol_reg, 0x04);
    	sta_cmd_write(sta_data_req_pol_reg, 0x01);
    	sta_cmd_write(sta_data_req_reg, 0x04);
    	
    	sta_cmd_write(sta_run_reg, on);
    	sta_cmd_write(sta_play_reg, on);
    	sta_cmd_write(sta_mute_reg, off);
    */
    }
    


    Kwarc jaki mam podpięty do dekodera to 10MHz
  • #19
    maly_elektronik
    Level 23  
    Pod koniec datasheet są ustawienia konkretnych bitrate dla konkretnego kwarcu :) Ustaw na 384bps (max przy tym kwarcu ale polecam przesiąść się na kwarc 14.31818). Winą przerywania jest albo:
    1. Zły plik mp3 (pamiętaj że masz możliwość max. MPEG2,5 czyli ok 168b/s. Wszystkie większe to MPEG3 i MPEG4, osobiście polecam używanie mp3 z 128b/s gdyż bardzo ładnie chodzą)
    2.Zbyt wolny spi wysyłający mp3 do dekodera (bądź ogólne zamulenie procka na wykonywaniu funkcji ale to raczej zdarza się przy zczytywaniu mp3 bezpośrednio z karty SD oczywiście jeżeli stosuje się FAT)

    Pozdrawiam maly_elektronik :)
  • #20
    ePeter1234
    Level 18  
    Wymieniłem kwarc na 14.31818MHz. Zmeniłem ustawienia rejstrów zgodnie z ostatnią stroną daasheet'a (14.31818MHz 384 oversampling ratio) Przyspieszyłem SPI na 125kHz. I teraz MP3 dekoder nie przerywa, ale muzyka leci w przyspieszonym tempie. Jak zmniejsze prędkość SPI to utwór się przycina. Jak ustawie większą prdkość to utwór leci za szybko. Szukam po spisie rejestrów w STA i nic. Co jest nie tak?? Aha MP3 ma bitrate około 32 bit/s.
  • #21
    K_o_n_r_a_d
    Level 23  
    Kwarc 10MHz też mógł być i na pewno nie wpływało to na działanie. Skonfiguruj według tabelki 256 oversampling ratio i będziesz miał tak jak trzeba.

    Dodano po 39 [sekundy]:

    SPI ustaw na maksymalną prędkość jaką masz możliwą.

    Dodano po 1 [minuty]:

    Przy bitrate mp3ójki =320kb/s będziesz potrzebował SPI z prędkością co najmniej 320kHz a im wyższa tym lepiej.

    Dodano po 1 [minuty]:

    maly_elektronik wrote:
    Pod koniec datasheet są ustawienia konkretnych bitrate dla konkretnego kwarcu :) Ustaw na 384bps (max przy tym kwarcu ale polecam przesiąść się na kwarc 14.31818). Winą przerywania jest albo:
    1. Zły plik mp3 (pamiętaj że masz możliwość max. MPEG2,5 czyli ok 168b/s. Wszystkie większe to MPEG3 i MPEG4, osobiście polecam używanie mp3 z 128b/s gdyż bardzo ładnie chodzą)
    W tej wypowiedzi kolega coś nakręcił i głupoty napisał, albo ja coś źle zrozumiałem?

    Dodano po 2 [minuty]:

    ePeter1234 wrote:
    Aha MP3 ma bitrate około 32 bit/s.
    Chyba masz na myśli kb/s?
  • #22
    maly_elektronik
    Level 23  
    KONRAD zerknij do datasheetu :) (poprawne ustawienia dla tego DAC to progkowanie 512fps). A w datasheet nie ma czegoś takiego są ustawienia dla wszystkich innych kwarców na 256,384 i 512 a dla kwarcu 10MHz jest tylko do 384 (no chyba że mam jakąś nie aktualna note).
    Z kolei sta015 do dekoder strumienia max MPEG2,5 a żeby odtworzć mp3 190 kilka kb/s trzeba już MPEG4 (czy czegoś w tym stylu)

    Pozdrawiam maly_elektronik :)
  • #23
    K_o_n_r_a_d
    Level 23  
    Z przetwornikiem TDA7535 STA015 poprawnie współpracuje według ustawień z tabelki oversampling 256. Ze wszystkimi innymi będzie odtwarzanie przyspieszone, więc 10MHz tez jest dobry.
    Nie znam się na tyle na tych kodowaniach mp3 aby zwrócić uwagę na to, ale testowałem przeróżne bitrate mp3 (zmienne i stałe) w tym 320kbps i wszystkie odtwarzane były poprawnie.
  • #24
    ePeter1234
    Level 18  
    Doszedłem już do takiego etapu, że słyszę tylko kawałek tego co wysyłam do dekodera. Wydaje mi się że dźwięk jest już ok. Dziś podpiąłem płytkę pod oscyloskop i zauważyłem, że mam straszne szumy na wszystkich sygnałach. Amplituda zakłóceń sięga nawet 1V !!! Z racji tego że mam straszny bałagan na płytce postanowiłem wykonać nową z uwzględnionymi poprawkami. Będę ją dopiero składać za tydzień w środę. Odezwę się wtedy i dam znać co i jak.
  • #25
    maniek1818
    Level 22  
    maly_elektronik wrote:

    Z kolei sta015 do dekoder strumienia max MPEG2,5 a żeby odtworzć mp3 190 kilka kb/s trzeba już MPEG4 (czy czegoś w tym stylu)

    Bzdura :!: Ale nieoptymalny kod będzie przerywał muzykę. Tak Samo jak K_o_n_r_a_d testuję pliki nawet do 320kb/s i jest OK. Ale dla pewności radze skorzystać z tego programu na stronie ST. Być może wolne odtwarzanie jest spowodowane wartościami kondensatorów występujących przy rezonatorze kwarcowym. Użyłem 2 x 47pF i musiałem wybrać oversampling 512 (dla 14.31818MHz). I odtwarza wszystko bardzo dobrze :D
    Dla zainteresowanych schemat połączenia STA015 z TDA7535
    [ATmega644][C] Problem w komunikacji z STA015
  • #26
    ePeter1234
    Level 18  
    Dziś udało mi się uruchomić w końcu ten dekoder MP3 :) Problem polegał na tm, że stanu na pinie nie mogłem sprawdzać w spsób:

    
    if(PINB2)
    {
    ...
    }
    


    Tylko nalkeżało to zrobić tak:

    
    if(PINB&(1<<PB2))
    {
    ...
    }
    


    Nie wem czmy tak jale przz to mi nic niedziałało. Teraz wszystko śmiga:)

    Pozdrawiam i zamykam temat