Arduino Mastermind Logik Schematics Code WS2812

Mastermind - YT Video:


Das Spiel ist für zwei Spieler gedacht, die das Spiel spielen


Spieler 1 (Vermutung)


  • Die Rolle des Spielers besteht darin, die Zahlen des anderen Spielers und deren Reihenfolge zu erraten
  • Der Player verwendet eine 5x-Taste, um in das System einzusteigen, während 4 der Tasten an dieser Position als Nummerninkrementierer im Bereich von 0-9 fungieren.
  • Die fünfte Schaltfläche sendet die Daten zur Überprüfung. Die Zugabe wird versucht, die Kombination wird ausgewertet.
  • Daten werden aufgezeichnet und auf dem LCD-Display angezeigt.
  • Wenn der Spieler die Nummer und seine Position erraten kann, leuchtet die grüne Diode an dieser Position.
  • Andernfalls leuchtet die rote Diode auf, wenn die Nummer nicht eingegeben wird oder wenn die Nummer erraten wird, die Position jedoch nicht beurteilt wird.
  • Bei einem Spieler endet das Spiel, wenn 10 Versuche überschritten werden oder wenn die Kombination erraten wird.

  • Spieler 2 (bestimmt die Kombination von Farben und Rang)


  • Die Rolle des Mikrocontrollers Arduino Uno oder eines anderen oder AtMega-Chips.
  • Erzeugt die Nummer 0000-9999, die der Spieler erraten wird
  • Erzeugt die Nummer abroad999, die die vom Benutzer gesendeten Daten mit einer einfachen bedingten Logik bestätigen, die der Spieler erraten wird
  • Wenn sowohl Farbe als auch Position erraten werden, wird die entsprechende Diode grün.
  • Bei Farbfehler oder Position leuchtet die entsprechende LED rot.
  • Das Arduino überprüft auch die Anzahl der Züge, die der Spieler verwendet hat, und prüft, ob das Spiel beendet ist.
  • Das Spiel endet, wenn Spieler 1 alle Zahlen und deren Positionen erraten hat (alle 4 Dioden sind grün), der Eintrag wird gesperrt oder 10 Versuche schlagen fehl.
  • Der Benutzer wird auf dem Display immer über den Spielstatus informiert.


  • Hardware für das Projekt

  • Arduino Uno R3
  • 4x RGB LED WS2812 (ein Modul)
  • 5x Taste umschalten
  • LCD 20x4 oder 16x2
  • I2C-Konverter für LCD
  • Verbindung



    LCD-Anzeige mit I2C-Konverter Arduino Uno
    Vcc 5V
    GND GND
    SDA A4 (SDA)
    SCK/SCL A5 (SCK/SCL)
    Taste Arduino Uno
    IN 1 D2
    IN 2 D3
    IN 3 D4
    IN 4 D5
    Enter D6
    RGB LED Dioden Arduino Uno
    DIN D13
    GND GND
    5V -
    Der 5-V-Pin ist aufgrund eines hohen Stromverbrauchs, insbesondere wenn alle Dioden eingeschaltet sind, in der Größenordnung von 200 mA an eine externe Stromversorgung angeschlossen.

    Mastermind - Spielfeld - DEBUG OFF

    Mastermind - DEBUG OFF - Logik

    Mastermind - Spielfeld - DEBUG ON

    Mastermind - DEBUG ON - Logik

    Autodesk Eagle export (Wiring)

    Mastermind - schéma zapojenia - Arduino

    Mastermind - Arduino

    /*|----------------------------------------------------------------------------|*/
    /*|SKETCH PRE MASTERMIND IMPLEMENTACIU                                         |*/
    /*|VYHOTOVIL: MARTIN CHLEBOVEC                                                 |*/
    /*|PODPOR PROJEKT PRE VIAC VARIANT, SUPPORT: https://paypal.me/chlebovec       |*/
    /*|Doska: Arduino Uno / AtMega328P                                             |*/
    /*|MAXIMALNY POCET POKUSOV: 10                                                 |*/
    /*|POCET VSTUPOV: 5X PUSHBUTTON - SPINACIE TLACIDLA                            |*/
    /*|VYGENEROVANE 4-CISLIE: KAZDE CISLO JE ROZNE V ROZSAHU 0-9 BEZ OPAKOVANIA!   |*/
    /*|PRE ZOBRAZENIE VYGENEROVANEHO CISLA POUZITE DEBUG (ODKOMENTOVAT)            |*/
    /*|----------------------------------------------------------------------------|*/
    /*|VYSVETLIVKY PRE ZNAČKY NA DISPLEJI:                                         |*/
    /*| C --> uhadnute cislo na inej pozicii                                       |*/
    /*| = --> uhadnute cislo aj s poziciou (SPRAVNE CISLO!)                        |*/
    /*| - --> neuhadnute cislo, ani pozicia                                        |*/
    /*|----------------------------------------------------------------------------|*/
    
    #define DEBUG //odkomentuj pre DEBUG INFO (ZOBRAZENIE HLADANEHO CISLA)
    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>
    LiquidCrystal_I2C lcd(0x3F, 20, 4);
    
    const int buttonPin1 = 6;
    const int buttonPin2 = 5;
    const int buttonPin3 = 4;
    const int buttonPin4 = 3;
    const int buttonPin5 = 2;
    
    int cislo1 = 0;
    int cislo2 = 0;
    int cislo3 = 0;
    int cislo4 = 0;
    
    
    int cielovecislo1 = 0;
    int cielovecislo2 = 0;
    int cielovecislo3 = 0;
    int cielovecislo4 = 0;
    
    int buttonState1 = HIGH;
    int buttonState2 = HIGH;
    int buttonState3 = HIGH;
    int buttonState4 = HIGH;
    int buttonState5 = HIGH;
    
    int lastButtonState1 = HIGH;
    int lastButtonState2 = HIGH;
    int lastButtonState3 = HIGH;
    int lastButtonState4 = HIGH;
    int lastButtonState5 = HIGH;
    
    unsigned long lastDebounceTime1 = 0;
    unsigned long lastDebounceTime2 = 0;
    unsigned long lastDebounceTime3 = 0;
    unsigned long lastDebounceTime4 = 0;
    unsigned long lastDebounceTime5 = 0;
    unsigned long debounceInterval = 50;
    int pokus = 0;
    
    void setup() {
      lcd.begin(); //incializacia displeja na I2C zbernici
      lcd.backlight(); //zapnutie podsvietenia
      pinMode(buttonPin1, INPUT_PULLUP);
      pinMode(buttonPin2, INPUT_PULLUP);
      pinMode(buttonPin3, INPUT_PULLUP);
      pinMode(buttonPin4, INPUT_PULLUP);
      pinMode(buttonPin5, INPUT_PULLUP);
      randomSeed(analogRead(0));
      lcd.setCursor(0, 0); //nastav kurzor pre zapis na 1. riadok, 1. stlpec
      lcd.print("ZADANE CISLO:   0000");
      generuj_cisla();
    #ifdef DEBUG
      lcd.setCursor(0, 2);
      lcd.print("DEBUG ON:");
      lcd.setCursor(0, 3);
      lcd.print("HLADANE CISLO:  ");
      lcd.print(cielovecislo1);
      lcd.print(cielovecislo2);
      lcd.print(cielovecislo3);
      lcd.print(cielovecislo4);
    #endif
    }
    
    void loop() {
      if (pokus >= 10) {
        lcd.setCursor(0, 2);
        lcd.print("PREHRALI STE!");
        lcd.setCursor(0, 3);
        lcd.print("KONIEC HRY          ");
        while (1);
      } else {
        int reading1 = digitalRead(buttonPin1);
        int reading2 = digitalRead(buttonPin2);
        int reading3 = digitalRead(buttonPin3);
        int reading4 = digitalRead(buttonPin4);
        int reading5 = digitalRead(buttonPin5);
    
        if (reading1 != lastButtonState1) {
          lastDebounceTime1 = millis();
        }
    
        if (reading2 != lastButtonState2) {
          lastDebounceTime2 = millis();
        }
    
        if (reading3 != lastButtonState3) {
          lastDebounceTime3 = millis();
        }
    
        if (reading4 != lastButtonState4) {
          lastDebounceTime4 = millis();
        }
    
        if (reading5 != lastButtonState5) {
          lastDebounceTime5 = millis();
        }
    
        if ((millis() - lastDebounceTime1) > debounceInterval) {
          if (reading1 != buttonState1) {
            buttonState1 = reading1;
            if (buttonState1 == HIGH) {
              cislo1++;
              if (cislo1 > 9) {
                cislo1 = 0;
              }
            }
          }
          updateLCD();
        }
    
        if ((millis() - lastDebounceTime2) > debounceInterval) {
          if (reading2 != buttonState2) {
            buttonState2 = reading2;
            if (buttonState2 == HIGH) {
              cislo2++;
              if (cislo2 > 9) {
                cislo2 = 0;
              }
            }
          }
          updateLCD();
        }
    
        if ((millis() - lastDebounceTime3) > debounceInterval) {
          if (reading3 != buttonState3) {
            buttonState3 = reading3;
            if (buttonState3 == HIGH) {
              cislo3++;
              if (cislo3 > 9) {
                cislo3 = 0;
              }
            }
          }
          updateLCD();
        }
    
        if ((millis() - lastDebounceTime4) > debounceInterval) {
          if (reading4 != buttonState4) {
            buttonState4 = reading4;
            if (buttonState4 == HIGH) {
              cislo4++;
              if (cislo4 > 9) {
                cislo4 = 0;
              }
            }
          }
          updateLCD();
        }
    
        if ((millis() - lastDebounceTime5) > debounceInterval) {
          if (reading5 != buttonState5) {
            lcd.setCursor(16, 1);
            lcd.print(cislo1);
            lcd.print(cislo2);
            lcd.print(cislo3);
            lcd.print(cislo4);
            buttonState5 = reading5;
            if (buttonState5 == HIGH) {
              pokus++;
              updateLCD();
              over_cisla();
              cislo1 = 0;
              cislo2 = 0;
              cislo3 = 0;
              cislo4 = 0;
            }
          }
        }
        lastButtonState1 = reading1;
        lastButtonState2 = reading2;
        lastButtonState3 = reading3;
        lastButtonState4 = reading4;
        lastButtonState5 = reading5;
      }
    }
    
    void updateLCD() {
      lcd.setCursor(16, 0);
      lcd.print(cislo1);
      lcd.print(cislo2);
      lcd.print(cislo3);
      lcd.print(cislo4);
      lcd.setCursor(0, 1);
      lcd.print("POKUS: ");
      lcd.print(pokus);
    }
    
    void generuj_cisla() {
      cielovecislo1 = random(0, 9);
      cielovecislo2 = random(0, 9);
      while (cielovecislo2 == cielovecislo1) {
        cielovecislo2 = random(0, 9);
      }
      cielovecislo3 = random(0, 9);
      while ((cielovecislo3 == cielovecislo1) || (cielovecislo3 == cielovecislo2)) {
        cielovecislo3 = random(0, 9);
      }
      cielovecislo4 = random(0, 9);
      while ((cielovecislo4 == cielovecislo1) || (cielovecislo4 == cielovecislo2) || (cielovecislo4 == cielovecislo3)) {
        cielovecislo4 = random(0, 9);
      }
    }
    
    void over_cisla() {
      if (cislo1 == cielovecislo1) {
        lcd.setCursor(10, 1);
        lcd.print("="); //UHADNUTE CISLO VRATANE POZICIE
      } else if ((cislo1 == cielovecislo2) || (cislo1 == cielovecislo3) || (cislo1 == cielovecislo4)) {
        lcd.setCursor(10, 1);
        lcd.print("C"); //UHADNUTE CISLO BEZ POZICIE
      } else {
        lcd.setCursor(10, 1);
        lcd.print("-"); //NEUHADNUTE CISLO, ANI POZICIA
      }
    
      if (cislo2 == cielovecislo2) {
        lcd.setCursor(11, 1);
        lcd.print("="); //UHADNUTE CISLO VRATANE POZICIE
      } else if ((cislo2 == cielovecislo1) || (cislo2 == cielovecislo3) || (cislo2 == cielovecislo4)) {
        lcd.setCursor(11, 1);
        lcd.print("C"); //UHADNUTE CISLO BEZ POZICIE
      } else {
        lcd.setCursor(11, 1);
        lcd.print("-"); //NEUHADNUTE CISLO, ANI POZICIA
      }
    
      if (cislo3 == cielovecislo3) {
        lcd.setCursor(12, 1);
        lcd.print("="); //UHADNUTE CISLO VRATANE POZICIE
      } else if ((cislo3 == cielovecislo1) || (cislo3 == cielovecislo2) || (cislo3 == cielovecislo4)) {
        lcd.setCursor(12, 1);
        lcd.print("C"); //UHADNUTE CISLO BEZ POZICIE
      } else {
        lcd.setCursor(12, 1);
        lcd.print("-"); //NEUHADNUTE CISLO, ANI POZICIA
      }
    
      if (cislo4 == cielovecislo4) {
        lcd.setCursor(13, 1);
        lcd.print("="); //UHADNUTE CISLO VRATANE POZICIE
      } else if ((cislo4 == cielovecislo1) || (cislo4 == cielovecislo2) || (cislo4 == cielovecislo3)) {
        lcd.setCursor(13, 1);
        lcd.print("C"); //UHADNUTE CISLO BEZ POZICIE
      } else {
        lcd.setCursor(13, 1);
        lcd.print("-"); //NEUHADNUTE CISLO, ANI POZICIA
      }
    
      if ((cislo1 == cielovecislo1) && (cislo2 == cielovecislo2) && (cislo3 == cielovecislo3) && (cislo4 == cielovecislo4)) {
        lcd.setCursor(0, 2);
        lcd.print("VYHRALI STE!");
        lcd.setCursor(0, 3);
        lcd.print("KONIEC HRY          ");
        while (1);
      }
    }
    
    

    avrdude - flash .hex (COM21 example)

    avrdude -CC: avrdude.conf -v -patmega328p -carduino -PCOM21 -b115200 -D -Uflash:w:sketch.ino.hex:i
    

    Program - I2C LCD (0x3F) - DEBUG ON

    :100000000C9462000C948A000C948A000C948A0070
    :100010000C948A000C948A000C948A000C948A0038
    :100020000C948A000C948A000C948A000C948A0028
    :100030000C948A000C948A000C948A000C948A0018
    :100040000C9407040C948A000C948A000C948A0087
    :100050000C948A000C948A000C948A000C948A00F8
    :100060000C9451040C948A00000000002300260028
    :10007000290000000008000201000003040700003E
    :1000800000000000000000000000250028002B00F8
    :1000900000000000240027002A00040404040404D3
    :1000A0000404020202020202030303030303010227
    :1000B00004081020408001020408102001020408F6
    :1000C0001020A90511241FBECFEFD8E0DEBFCDBFA1
    :1000D00011E0A0E0B1E0E4E2F6E102C005900D928B
    :1000E000AC3AB107D9F722E0ACEAB1E001C01D9209
    :1000F000A738B207E1F710E0C2E6D0E004C02197CC
    :10010000FE010E94050BC136D107C9F70E94CB053D
    :100110000C94100B0C940000CF93DF9390E0FC0143
    :10012000E255FF4F2491FC01E656FF4F849188234E
    :10013000C1F090E0880F991FFC01E057FF4FC59177
    :10014000D491FC01EA57FF4FA591B4919FB7F89461
    :100150003881822F809583238883EC91E22BEC9366
    :100160009FBFDF91CF910895CF92DF92EF92FF92E0
    :100170000F931F93CF93DF936C017A018B01C0E043
    :10018000D0E0CE15DF0589F0D8016D918D01D60143
    :10019000ED91FC910190F081E02DC6010995892B2C
    :1001A00011F47E0102C02196ECCFC701DF91CF91FF
    :1001B0001F910F91FF90EF90DF90CF9008958330C3
    :1001C00081F028F4813099F08230A1F008958730D1
    :1001D000A9F08830B9F08430D1F4809180008F7D0F
    :1001E00003C0809180008F7780938000089584B54C
    :1001F0008F7702C084B58F7D84BD08958091B00053
    :100200008F7703C08091B0008F7D8093B0000895F8
    :10021000CF93DF93282F30E0F901EE58FF4F849100
    :10022000F901E255FF4FD491F901E656FF4FC49111
    :10023000CC2389F081110E94DF00EC2FF0E0EE0F5B
    :10024000FF1FEA57FF4FA591B4918FB7F894EC9137
    :10025000ED2BEC938FBFDF91CF910895CF93DF9378
    :10026000282F30E0F901EE58FF4F8491F901E25553
    :10027000FF4FD491F901E656FF4FC491CC2391F082
    :1002800081110E94DF00EC2FF0E0EE0FFF1FE85914
    :10029000FF4FA591B491EC91ED2381E090E021F422
    :1002A00080E002C080E090E0DF91CF9108953FB7F9
    :1002B000F89480913E0290913F02A0914002B0914B
    :1002C000410226B5A89B05C02F3F19F00196A11D3C
    :1002D000B11D3FBFBA2FA92F982F8827820F911DDC
    :1002E000A11DB11DBC01CD0142E0660F771F881F23
    :1002F000991F4A95D1F708958F929F92AF92BF921E
    :10030000CF92DF92EF92FF926B017C010E94570126
    :100310004B015C01C114D104E104F104F1F00E942D
    :100320005701DC01CB0188199909AA09BB09883E4C
    :100330009340A105B10570F321E0C21AD108E1088C
    :10034000F10888EE880E83E0981EA11CB11CC11430
    :10035000D104E104F10419F7DDCFFF90EF90DF90B5
    :10036000CF90BF90AF909F908F9008952FB7F89443
    :1003700060913A0270913B0280913C0290913D0263
    :100380002FBF089585ED8093BC008091BC0084FD53
    :10039000FCCF1092440208954091CE01262F30E008
    :1003A000240F311D21323105DCF420914402243028
    :1003B000C9F4FC0180E090E0861758F43091CE013A
    :1003C0002191DC01A455BE4FA30FB11D2C930196C2
    :1003D000F3CF8091CE01680F6093CE0180E0089545
    :1003E00081E0089582E00895089581E090E03091E1
    :1003F000480220914702321710F480E090E0919576
    :10040000819591090895809148029091470289173A
    :1004100030F48F5F8093480280E090E008958FEF82
    :100420009FEF08958091470290E020914802821B3F
    :1004300091090895CF92DF92EF92FF920F931F934D
    :10044000CF93DF937C01262F972F8A01809117028B
    :10045000882391F0C62FD72F6E01C40ED51ECC1560
    :10046000DD0571F06991D701ED91FC910190F0816A
    :10047000E02DC7010995F3CF642F822F0E94CC0194
    :10048000C801DF91CF911F910F91FF90EF90DF9006
    :10049000CF900895CF93DF931F92CDB7DEB76983D6
    :1004A000209117022223D1F020914502203240F002
    :1004B00021E030E0FC013383228380E090E015C02E
    :1004C00080914602E82FF0E0E85EFD4F998190832D
    :1004D0008F5F809346028093450205C061E0CE01A4
    :1004E00001960E94CC0181E090E00F90DF91CF91C6
    :1004F0000895CF93FC01C48121E020931702C0939B
    :10050000380210924602109245028385682B8FE6CE
    :1005100092E00E944A0280914502813208F046C072
    :10052000909144029111FCCF92E09093440291E0AB
    :10053000909343029FEF90931602109215028093BE
    :100540001402A8E1B2E024EF31E0F9019E2F921BE2
    :10055000981718F49D919193F9CF1092F30180911F
    :10056000F301CC0FC82BC093F3018091420281307C
    :1005700061F4109242028091F3018093BB0080915C
    :10058000BC0083FDF8CF85EC01C085EE8093BC00F4
    :10059000809144028230E1F3809116028F3F31F066
    :1005A00080911602803211F080911602109246025C
    :1005B0001092450210921702CF9108950F931F9346
    :1005C000CF938C01C62F0E9479026C2F6460C80102
    :1005D0000E9479026C2F6B7FC8010E94790283EC24
    :1005E00090E00197F1F7CF911F910F910895FF923D
    :1005F0000F931F93CF93DF931F92CDB7DEB78C017C
    :10060000F62E962F907F692F642BC80149830E9494
    :10061000DE0280E1F89EB00111244981642BC801FB
    :100620000F90DF91CF911F910F91FF900C94DE02FC
    :10063000CF93DF93CDB7DEB728970FB6F894DEBF20
    :100640000FBECDBF28E0E8E1F1E0DE011196019098
    :100650000D922A95E1F720918402261710F46FEF8E
    :10066000620FFE013196E60FF11DE60FF11D90813C
    :10067000682F690F606840E08BE792E028960FB61C
    :10068000F894DEBF0FBECDBFDF91CF910C94F7027F
    :1006900041E00E94F70281E090E00895089580E033
    :1006A00090E00895009769F0FC0101900020E9F7BF
    :1006B0003197AF01481B590BBC018BE792E00C94BA
    :1006C000B40080E090E008950C9452038F929F92C2
    :1006D000AF92BF92CF92DF92EF92FF920F931F9350
    :1006E000CF93DF93CDB7DEB7A1970FB6F894DEBFF7
    :1006F0000FBECDBF6C01990FEE08FF08F7FE31C0A9
    :10070000E0917B02F0917C020190F081E02D6DE29E
    :100710008BE792E009958C0122273327A9012C1938
    :100720003D094E095F0919A2CE0181967C019AE02C
    :10073000892E912CA12CB12CCA01B901A5019401DB
    :100740000E94D40A605DF70162937F012115310593
    :100750004105510589F7CF010E945203800F911F77
    :100760001DC0A701960119A28E010F5D1F4F8AE0DF
    :10077000C82ED12CE12CF12CCA01B901A701960198
    :100780000E94D40A605DF80162938F012115310542
    :100790004105510589F7CF010E945203A1960FB67A
    :1007A000F894DEBF0FBECDBFDF91CF911F910F91A7
    :1007B000FF90EF90DF90CF90BF90AF909F908F9081
    :1007C00008950E940B0BCF93DF9300D000D0CDB7DC
    :1007D000DEB7611571058105910579F09B01AC01CA
    :1007E00069833A834B835C830E94940A29813A810E
    :1007F0004B815C810E94A20A03C060E070E0CB01E3
    :100800000F900F900F900F90DF91CF9108951F924E
    :100810000F920FB60F9211242F933F938F939F93B4
    :10082000AF93BF9380913A0290913B02A0913C021A
    :10083000B0913D023091390223E0230F2D3720F48F
    :100840000196A11DB11D05C026E8230F0296A11D2A
    :10085000B11D2093390280933A0290933B02A093FA
    :100860003C02B0933D0280913E0290913F02A091E4
    :100870004002B09141020196A11DB11D80933E023C
    :1008800090933F02A0934002B0934102BF91AF9179
    :100890009F918F913F912F910F900FBE0F901F90BE
    :1008A00018951F920F920FB60F9211242F933F931A
    :1008B0004F935F936F937F938F939F93AF93BF9368
    :1008C000EF93FF938091B900887F803609F49CC034
    :1008D00068F5883209F45BC090F4803109F454C0A3
    :1008E00038F4882309F4F6C0883009F44DC0F6C006
    :1008F000883109F44CC0803209F45DC0EFC0803407
    :1009000009F468C048F4803309F455C0883309F00D
    :10091000E5C080931602D8C0803509F44FC08835F1
    :1009200009F45DC0883409F0D9C0D6C0883909F40B
    :10093000C7C0A8F4883709F467C038F4883609F4CA
    :1009400063C0803709F460C0C9C0883809F4B8C0F2
    :10095000803909F45FC0803809F0C0C05BC0803BBB
    :1009600009F486C038F4803A09F466C0883A09F47C
    :100970007FC0B4C0803C09F4A7C0883C09F4A4C07F
    :10098000883B09F48AC0AAC08091F30110C09091FD
    :10099000150280911402981770F5E091150281E01C
    :1009A0008E0F80931502F0E0EC50FE4F8081809313
    :1009B000BB0085EC86C0809316028EC0E0911502C4
    :1009C00081E08E0F809315028091BB00F0E0EC5027
    :1009D000FE4F808390911502809114026EC0E091C9
    :1009E000150281E08E0F809315028091BB00F0E02C
    :1009F000EC50FE4F80838091430281116DC081E0F5
    :100A00008093420284EA61C083E0809344021092A2
    :100A1000F201CFCF8091F201803208F051C0E09115
    :100A2000F20181E08E0F8093F2018091BB00F0E033
    :100A3000EE52FE4F8083BDCF85EC8093BC001092B8
    :100A400044028091F201803230F4E091F201F0E052
    :100A5000EE52FE4F10826091F20170E0E091D00101
    :100A6000F091D10182ED91E009951092F20136C02A
    :100A700084E0809344021092CF011092CE01E09165
    :100A8000CC01F091CD0109958091CE01811105C075
    :100A900081E08093CE011092AC01E091CF0181E022
    :100AA0008E0F8093CF01F0E0E455FE4F808180935C
    :100AB000BB009091CF018091CE01981708F479CFB7
    :100AC00085E88093BC000AC085EC8093BC0010923E
    :100AD000440204C0109216020E94C201FF91EF91DD
    :100AE000BF91AF919F918F917F916F915F914F9146
    :100AF0003F912F910F900FBE0F901F90189560E0BF
    :100B000080E10E94180380915702909158020E9440
    :100B1000660380915502909156020E94660380916F
    :100B20005302909154020E94660380915102909169
    :100B300052020E94660361E080E00E9418038EE387
    :100B400091E00E94640380916D0290916E020C947A
    :100B50006603EFE6F2E01382128288EE93E0A0E0F3
    :100B6000B0E084839583A683B78384E291E0918388
    :100B70008083EBE7F2E01382128286E391E09183B7
    :100B800080838FE3848384E1808784E08187128679
    :100B900088E083870895789484B5826084BD84B5A5
    :100BA000816084BD85B5826085BD85B5816085BD68
    :100BB00080916E00816080936E0010928100809120
    :100BC00081008260809381008091810081608093A8
    :100BD0008100809180008160809380008091B100CD
    :100BE00084608093B1008091B00081608093B000F8
    :100BF00080917A00846080937A0080917A0082608C
    :100C000080937A0080917A00816080937A0080914D
    :100C10007A00806880937A001092C1001092480296
    :100C2000109247021092460210924502109244021E
    :100C300081E0809343021092420282E10E94080107
    :100C400083E10E9408018091B9008E7F8093B900F2
    :100C50008091B9008D7F8093B90088E48093B800BB
    :100C600085E48093BC0010928002809184028230DF
    :100C700018F098E09093800290918502992339F0C2
    :100C8000813029F48091800284608093800262E345
    :100C900070E080E090E00E947C01609186028BE72A
    :100CA00092E00E94790268EE73E080E090E00E949A
    :100CB0007C0160E38BE792E00E94DE02CBE4D6E4A5
    :100CC000CE010197F1F760E38BE792E00E94DE022C
    :100CD0002197F1F760E38BE792E00E94DE0283E563
    :100CE00092E00197F1F760E28BE792E00E94DE026A
    :100CF00060918002606240E08BE792E00E94F70220
    :100D000084E08093810240E06CE08BE792E00E94F7
    :100D1000F70240E061E08BE792E00E94F702CBE34C
    :100D2000DFE1CE010197F1F782E08093820240E09B
    :100D300066E08BE792E00E94F70240E062E08BE71A
    :100D400092E00E94F7022197F1F788E080938602F3
    :100D500060E08BE792E00E94790286E00E948C00BE
    :100D600085E00E948C0084E00E948C0083E00E9459
    :100D70008C0082E00E948C0080E480937C00809153
    :100D80007A00806480937A0080917A0086FDFCCF9F
    :100D9000609178008091790070E0782B072E000C2C
    :100DA000880B990B611571058105910511F00E9461
    :100DB000990A60E080E00E94180386E491E00E94B6
    :100DC000640369E070E080E090E00E94E3037093C8
    :100DD000500260934F0269E070E080E090E00E9472
    :100DE000E30370934E0260934D0220914D023091C7
    :100DF0004E0280914F02909150022817390759F303
    :100E000069E070E080E090E00E94E30370934C02A0
    :100E100060934B0280914B0290914C0220914F02C3
    :100E2000309150028217930759F320914D0230916F
    :100E30004E028217930721F369E070E080E090E0B2
    :100E40000E94E30370934A02609349028091490231
    :100E500090914A0220914F023091500282179307DD
    :100E600059F320914D0230914E028217930721F3DE
    :100E700020914B0230914C0282179307E9F262E015
    :100E800080E00E9418038BE591E00E94640363E018
    :100E900080E00E94180385E691E00E94640380913F
    :100EA0004F02909150020E94660380914D029091F2
    :100EB0004E020E94660380914B0290914C020E9468
    :100EC00066038091490290914A020E94660380E085
    :100ED000882E80E0982E80916D0290916E020A9784
    :100EE0008CF062E080E00E94180386E791E00E94A7
    :100EF000640363E080E00E94180384E891E00E94AC
    :100F00006403FFCF86E00E942E015C0185E00E9411
    :100F10002E016C0184E00E942E017C0183E00E947E
    :100F20002E018C0182E00E942E01EC0180911201C1
    :100F300090911301A816B90651F00E94B601609372
    :100F4000690270936A0280936B0290936C028091A5
    :100F5000100190911101C816D90651F00E94B601F6
    :100F600060936502709366028093670290936802B3
    :100F700080910E0190910F01E816F90651F00E9440
    :100F8000B601609361027093620280936302909352
    :100F9000640280910C0190910D010817190751F01E
    :100FA0000E94B60160935D0270935E0280935F02BF
    :100FB0009093600280910A0190910B01C817D907A4
    :100FC00051F00E94B6016093590270935A028093C7
    :100FD0005B0290935C020E94B601409069025090BF
    :100FE0006A0260906B0270906C02DC01CB01841984
    :100FF0009509A609B709C397A105B10500F180912C
    :10100000080190910901A816B906B9F0B09209013A
    :10101000A092080181E0A816B10479F480915702EA
    :1010200090915802019690935802809357020A9724
    :1010300024F010925802109257020E947F050E94DD
    :10104000B601409065025090660260906702709011
    :101050006802DC01CB0184199509A609B709C39779
    :10106000A105B10500F18091060190910701C81614
    :10107000D906B9F0D0920701C092060181E0C816E6
    :10108000D10479F480915502909156020196909383
    :101090005602809355020A9724F01092560210923D
    :1010A00055020E947F050E94B60140906102509057
    :1010B00062026090630270906402DC01CB018419CB
    :1010C0009509A609B709C397A105B10500F180915B
    :1010D000040190910501E816F906B9F0F0920501B6
    :1010E000E092040181E0E816F10479F48091530262
    :1010F00090915402019690935402809353020A9760
    :1011000024F010925402109253020E947F050E9414
    :10111000B60140905D0250905E0260905F02709058
    :101120006002DC01CB0184199509A609B709C397B0
    :10113000A105B105F8F08091020190910301081713
    :101140001907B1F01093030100930201013011055A
    :1011500079F480915102909152020196909352023B
    :10116000809351020A9724F0109252021092510279
    :101170000E947F050E94B6014090590250905A0289
    :1011800060905B0270905C02DC01CB0184199509D0
    :10119000A609B709C397A105B10508F45CC1809100
    :1011A000000190910101C817D90709F454C161E009
    :1011B00080E10E94180380915702909158020E948A
    :1011C000660380915502909156020E9466038091B9
    :1011D0005302909154020E946603809151029091B3
    :1011E00052020E946603D0930101C0930001C130F6
    :1011F000D10509F030C180916D0290916E02019687
    :1012000090936E0280936D020E947F058091570239
    :101210009091580220914F0230915002821793070B
    :1012200039F461E08AE00E94180389E991E022C064
    :1012300020914D0230914E028217930771F0209158
    :101240004B0230914C028217930739F020914902EA
    :1012500030914A028217930739F461E08AE00E94D4
    :1012600018038BE991E006C061E08AE00E94180350
    :101270008DE991E00E94640380915502909156029D
    :1012800020914D0230914E028217930739F461E0AC
    :101290008BE00E94180389E991E022C020914F025F
    :1012A000309150028217930771F020914B023091D8
    :1012B0004C028217930739F02091490230914A027B
    :1012C0008217930739F461E08BE00E9418038BE9E1
    :1012D00091E006C061E08BE00E9418038DE991E087
    :1012E0000E946403809153029091540220914B021A
    :1012F00030914C028217930739F461E08CE00E9430
    :10130000180389E991E022C020914F0230915002E8
    :101310008217930771F020914D0230914E0282178F
    :10132000930739F02091490230914A0282179307BE
    :1013300039F461E08CE00E9418038BE991E006C06B
    :1013400061E08CE00E9418038DE991E00E94640343
    :1013500080915102909152022091490230914A02AB
    :101360008217930739F461E08DE00E94180389E940
    :1013700091E022C020914F023091500282179307D2
    :1013800071F020914D0230914E028217930739F08F
    :1013900020914B0230914C028217930739F461E09F
    :1013A0008DE00E9418038BE991E006C061E08DE0BA
    :1013B0000E9418038DE991E00E9464032091570276
    :1013C0003091580280914F029091500228173907AE
    :1013D00091F5209155023091560280914D029091E5
    :1013E0004E022817390739F52091530230915402E3
    :1013F00080914B0290914C0228173907E1F420911B
    :101400005102309152028091490290914A0228176C
    :10141000390789F462E080E00E9418038FE991E0C7
    :101420000E94640363E080E00E94180384E891E076
    :101430000E946403FFCF109258021092570210923C
    :1014400056021092550210925402109253021092BA
    :10145000520210925102B0921301A0921201D09246
    :101460001101C0921001F0920F01E0920E01109351
    :101470000D0100930C01D0930B01C0930A0181145C
    :10148000910409F428CD0E94000025CD8F929F92EF
    :10149000AF92BF92CF92DF92EF92FF92CF93DF9302
    :1014A000EC01688179818A819B81611571058105D3
    :1014B000910521F464E279ED8BE597E02DE133EFBE
    :1014C00041E050E00E94A20A49015A019B01AC018F
    :1014D000A7EAB1E40E94C10A6B017C01ACEEB4EF53
    :1014E000A50194010E94CF0ADC01CB018C0D9D1D4A
    :1014F000AE1DBF1DB7FF03C00197A109B048888387
    :101500009983AA83BB83BC01CD019F77DF91CF91E3
    :10151000FF90EF90DF90CF90BF90AF909F908F9013
    :1015200008950E94460A089584E191E00E94460AC7
    :1015300008956093140170931501809316019093A0
    :1015400017010895052E97FB1EF400940E94B90A16
    :1015500057FD07D00E94D40A07FC03D04EF40C9428
    :10156000B90A50954095309521953F4F4F4F5F4FA9
    :10157000089590958095709561957F4F8F4F9F4FFF
    :1015800008950E94F60AA59F900DB49F900DA49F08
    :10159000800D911D11240895B7FF0C94C10A0E947B
    :1015A000C10A821B930B0895A1E21A2EAA1BBB1B32
    :1015B000FD010DC0AA1FBB1FEE1FFF1FA217B3071F
    :1015C000E407F50720F0A21BB30BE40BF50B661F35
    :1015D000771F881F991F1A9469F7609570958095F9
    :1015E00090959B01AC01BD01CF010895A29FB00170
    :1015F000B39FC001A39F700D811D1124911DB29F47
    :10160000700D811D1124911D0895EE0FFF1F05908F
    :10161000F491E02D099481E090E0F8940C94100B83
    :04162000F894FFCF6C
    :1016240001000100010001000100010001000100AE
    :1016340001000100010000000000400014005400FB
    :10164400000000004A021A024F03F40112020302CE
    :10165400F501000000004803B4004F034E03504F4F
    :101664004B55533A20005A4144414E452043495377
    :101674004C4F3A202020303030300044454255470A
    :10168400204F4E3A00484C4144414E452043495373
    :101694004C4F3A2020005052454852414C49205367
    :1016A400544521004B4F4E49454320485259202070
    :1016B4002020202020202020003D0043002D005623
    :0C16C400594852414C4920535445210024
    :00000001FF
    
    

    Program - I2C LCD (0x27) - DEBUG ON

    :100000000C9462000C948A000C948A000C948A0070
    :100010000C948A000C948A000C948A000C948A0038
    :100020000C948A000C948A000C948A000C948A0028
    :100030000C948A000C948A000C948A000C948A0018
    :100040000C9407040C948A000C948A000C948A0087
    :100050000C948A000C948A000C948A000C948A00F8
    :100060000C9451040C948A00000000002300260028
    :10007000290000000008000201000003040700003E
    :1000800000000000000000000000250028002B00F8
    :1000900000000000240027002A00040404040404D3
    :1000A0000404020202020202030303030303010227
    :1000B00004081020408001020408102001020408F6
    :1000C0001020A90511241FBECFEFD8E0DEBFCDBFA1
    :1000D00011E0A0E0B1E0E4E2F6E102C005900D928B
    :1000E000AC3AB107D9F722E0ACEAB1E001C01D9209
    :1000F000A738B207E1F710E0C2E6D0E004C02197CC
    :10010000FE010E94050BC136D107C9F70E94CB053D
    :100110000C94100B0C940000CF93DF9390E0FC0143
    :10012000E255FF4F2491FC01E656FF4F849188234E
    :10013000C1F090E0880F991FFC01E057FF4FC59177
    :10014000D491FC01EA57FF4FA591B4919FB7F89461
    :100150003881822F809583238883EC91E22BEC9366
    :100160009FBFDF91CF910895CF92DF92EF92FF92E0
    :100170000F931F93CF93DF936C017A018B01C0E043
    :10018000D0E0CE15DF0589F0D8016D918D01D60143
    :10019000ED91FC910190F081E02DC6010995892B2C
    :1001A00011F47E0102C02196ECCFC701DF91CF91FF
    :1001B0001F910F91FF90EF90DF90CF9008958330C3
    :1001C00081F028F4813099F08230A1F008958730D1
    :1001D000A9F08830B9F08430D1F4809180008F7D0F
    :1001E00003C0809180008F7780938000089584B54C
    :1001F0008F7702C084B58F7D84BD08958091B00053
    :100200008F7703C08091B0008F7D8093B0000895F8
    :10021000CF93DF93282F30E0F901EE58FF4F849100
    :10022000F901E255FF4FD491F901E656FF4FC49111
    :10023000CC2389F081110E94DF00EC2FF0E0EE0F5B
    :10024000FF1FEA57FF4FA591B4918FB7F894EC9137
    :10025000ED2BEC938FBFDF91CF910895CF93DF9378
    :10026000282F30E0F901EE58FF4F8491F901E25553
    :10027000FF4FD491F901E656FF4FC491CC2391F082
    :1002800081110E94DF00EC2FF0E0EE0FFF1FE85914
    :10029000FF4FA591B491EC91ED2381E090E021F422
    :1002A00080E002C080E090E0DF91CF9108953FB7F9
    :1002B000F89480913E0290913F02A0914002B0914B
    :1002C000410226B5A89B05C02F3F19F00196A11D3C
    :1002D000B11D3FBFBA2FA92F982F8827820F911DDC
    :1002E000A11DB11DBC01CD0142E0660F771F881F23
    :1002F000991F4A95D1F708958F929F92AF92BF921E
    :10030000CF92DF92EF92FF926B017C010E94570126
    :100310004B015C01C114D104E104F104F1F00E942D
    :100320005701DC01CB0188199909AA09BB09883E4C
    :100330009340A105B10570F321E0C21AD108E1088C
    :10034000F10888EE880E83E0981EA11CB11CC11430
    :10035000D104E104F10419F7DDCFFF90EF90DF90B5
    :10036000CF90BF90AF909F908F9008952FB7F89443
    :1003700060913A0270913B0280913C0290913D0263
    :100380002FBF089585ED8093BC008091BC0084FD53
    :10039000FCCF1092440208954091CE01262F30E008
    :1003A000240F311D21323105DCF420914402243028
    :1003B000C9F4FC0180E090E0861758F43091CE013A
    :1003C0002191DC01A455BE4FA30FB11D2C930196C2
    :1003D000F3CF8091CE01680F6093CE0180E0089545
    :1003E00081E0089582E00895089581E090E03091E1
    :1003F000480220914702321710F480E090E0919576
    :10040000819591090895809148029091470289173A
    :1004100030F48F5F8093480280E090E008958FEF82
    :100420009FEF08958091470290E020914802821B3F
    :1004300091090895CF92DF92EF92FF920F931F934D
    :10044000CF93DF937C01262F972F8A01809117028B
    :10045000882391F0C62FD72F6E01C40ED51ECC1560
    :10046000DD0571F06991D701ED91FC910190F0816A
    :10047000E02DC7010995F3CF642F822F0E94CC0194
    :10048000C801DF91CF911F910F91FF90EF90DF9006
    :10049000CF900895CF93DF931F92CDB7DEB76983D6
    :1004A000209117022223D1F020914502203240F002
    :1004B00021E030E0FC013383228380E090E015C02E
    :1004C00080914602E82FF0E0E85EFD4F998190832D
    :1004D0008F5F809346028093450205C061E0CE01A4
    :1004E00001960E94CC0181E090E00F90DF91CF91C6
    :1004F0000895CF93FC01C48121E020931702C0939B
    :10050000380210924602109245028385682B8FE6CE
    :1005100092E00E944A0280914502813208F046C072
    :10052000909144029111FCCF92E09093440291E0AB
    :10053000909343029FEF90931602109215028093BE
    :100540001402A8E1B2E024EF31E0F9019E2F921BE2
    :10055000981718F49D919193F9CF1092F30180911F
    :10056000F301CC0FC82BC093F3018091420281307C
    :1005700061F4109242028091F3018093BB0080915C
    :10058000BC0083FDF8CF85EC01C085EE8093BC00F4
    :10059000809144028230E1F3809116028F3F31F066
    :1005A00080911602803211F080911602109246025C
    :1005B0001092450210921702CF9108950F931F9346
    :1005C000CF938C01C62F0E9479026C2F6460C80102
    :1005D0000E9479026C2F6B7FC8010E94790283EC24
    :1005E00090E00197F1F7CF911F910F910895FF923D
    :1005F0000F931F93CF93DF931F92CDB7DEB78C017C
    :10060000F62E962F907F692F642BC80149830E9494
    :10061000DE0280E1F89EB00111244981642BC801FB
    :100620000F90DF91CF911F910F91FF900C94DE02FC
    :10063000CF93DF93CDB7DEB728970FB6F894DEBF20
    :100640000FBECDBF28E0E8E1F1E0DE011196019098
    :100650000D922A95E1F720918402261710F46FEF8E
    :10066000620FFE013196E60FF11DE60FF11D90813C
    :10067000682F690F606840E08BE792E028960FB61C
    :10068000F894DEBF0FBECDBFDF91CF910C94F7027F
    :1006900041E00E94F70281E090E00895089580E033
    :1006A00090E00895009769F0FC0101900020E9F7BF
    :1006B0003197AF01481B590BBC018BE792E00C94BA
    :1006C000B40080E090E008950C9452038F929F92C2
    :1006D000AF92BF92CF92DF92EF92FF920F931F9350
    :1006E000CF93DF93CDB7DEB7A1970FB6F894DEBFF7
    :1006F0000FBECDBF6C01990FEE08FF08F7FE31C0A9
    :10070000E0917B02F0917C020190F081E02D6DE29E
    :100710008BE792E009958C0122273327A9012C1938
    :100720003D094E095F0919A2CE0181967C019AE02C
    :10073000892E912CA12CB12CCA01B901A5019401DB
    :100740000E94D40A605DF70162937F012115310593
    :100750004105510589F7CF010E945203800F911F77
    :100760001DC0A701960119A28E010F5D1F4F8AE0DF
    :10077000C82ED12CE12CF12CCA01B901A701960198
    :100780000E94D40A605DF80162938F012115310542
    :100790004105510589F7CF010E945203A1960FB67A
    :1007A000F894DEBF0FBECDBFDF91CF911F910F91A7
    :1007B000FF90EF90DF90CF90BF90AF909F908F9081
    :1007C00008950E940B0BCF93DF9300D000D0CDB7DC
    :1007D000DEB7611571058105910579F09B01AC01CA
    :1007E00069833A834B835C830E94940A29813A810E
    :1007F0004B815C810E94A20A03C060E070E0CB01E3
    :100800000F900F900F900F90DF91CF9108951F924E
    :100810000F920FB60F9211242F933F938F939F93B4
    :10082000AF93BF9380913A0290913B02A0913C021A
    :10083000B0913D023091390223E0230F2D3720F48F
    :100840000196A11DB11D05C026E8230F0296A11D2A
    :10085000B11D2093390280933A0290933B02A093FA
    :100860003C02B0933D0280913E0290913F02A091E4
    :100870004002B09141020196A11DB11D80933E023C
    :1008800090933F02A0934002B0934102BF91AF9179
    :100890009F918F913F912F910F900FBE0F901F90BE
    :1008A00018951F920F920FB60F9211242F933F931A
    :1008B0004F935F936F937F938F939F93AF93BF9368
    :1008C000EF93FF938091B900887F803609F49CC034
    :1008D00068F5883209F45BC090F4803109F454C0A3
    :1008E00038F4882309F4F6C0883009F44DC0F6C006
    :1008F000883109F44CC0803209F45DC0EFC0803407
    :1009000009F468C048F4803309F455C0883309F00D
    :10091000E5C080931602D8C0803509F44FC08835F1
    :1009200009F45DC0883409F0D9C0D6C0883909F40B
    :10093000C7C0A8F4883709F467C038F4883609F4CA
    :1009400063C0803709F460C0C9C0883809F4B8C0F2
    :10095000803909F45FC0803809F0C0C05BC0803BBB
    :1009600009F486C038F4803A09F466C0883A09F47C
    :100970007FC0B4C0803C09F4A7C0883C09F4A4C07F
    :10098000883B09F48AC0AAC08091F30110C09091FD
    :10099000150280911402981770F5E091150281E01C
    :1009A0008E0F80931502F0E0EC50FE4F8081809313
    :1009B000BB0085EC86C0809316028EC0E0911502C4
    :1009C00081E08E0F809315028091BB00F0E0EC5027
    :1009D000FE4F808390911502809114026EC0E091C9
    :1009E000150281E08E0F809315028091BB00F0E02C
    :1009F000EC50FE4F80838091430281116DC081E0F5
    :100A00008093420284EA61C083E0809344021092A2
    :100A1000F201CFCF8091F201803208F051C0E09115
    :100A2000F20181E08E0F8093F2018091BB00F0E033
    :100A3000EE52FE4F8083BDCF85EC8093BC001092B8
    :100A400044028091F201803230F4E091F201F0E052
    :100A5000EE52FE4F10826091F20170E0E091D00101
    :100A6000F091D10182ED91E009951092F20136C02A
    :100A700084E0809344021092CF011092CE01E09165
    :100A8000CC01F091CD0109958091CE01811105C075
    :100A900081E08093CE011092AC01E091CF0181E022
    :100AA0008E0F8093CF01F0E0E455FE4F808180935C
    :100AB000BB009091CF018091CE01981708F479CFB7
    :100AC00085E88093BC000AC085EC8093BC0010923E
    :100AD000440204C0109216020E94C201FF91EF91DD
    :100AE000BF91AF919F918F917F916F915F914F9146
    :100AF0003F912F910F900FBE0F901F90189560E0BF
    :100B000080E10E94180380915702909158020E9440
    :100B1000660380915502909156020E94660380916F
    :100B20005302909154020E94660380915102909169
    :100B300052020E94660361E080E00E9418038EE387
    :100B400091E00E94640380916D0290916E020C947A
    :100B50006603EFE6F2E01382128288EE93E0A0E0F3
    :100B6000B0E084839583A683B78384E291E0918388
    :100B70008083EBE7F2E01382128286E391E09183B7
    :100B8000808387E2848384E1808784E08187128682
    :100B900088E083870895789484B5826084BD84B5A5
    :100BA000816084BD85B5826085BD85B5816085BD68
    :100BB00080916E00816080936E0010928100809120
    :100BC00081008260809381008091810081608093A8
    :100BD0008100809180008160809380008091B100CD
    :100BE00084608093B1008091B00081608093B000F8
    :100BF00080917A00846080937A0080917A0082608C
    :100C000080937A0080917A00816080937A0080914D
    :100C10007A00806880937A001092C1001092480296
    :100C2000109247021092460210924502109244021E
    :100C300081E0809343021092420282E10E94080107
    :100C400083E10E9408018091B9008E7F8093B900F2
    :100C50008091B9008D7F8093B90088E48093B800BB
    :100C600085E48093BC0010928002809184028230DF
    :100C700018F098E09093800290918502992339F0C2
    :100C8000813029F48091800284608093800262E345
    :100C900070E080E090E00E947C01609186028BE72A
    :100CA00092E00E94790268EE73E080E090E00E949A
    :100CB0007C0160E38BE792E00E94DE02CBE4D6E4A5
    :100CC000CE010197F1F760E38BE792E00E94DE022C
    :100CD0002197F1F760E38BE792E00E94DE0283E563
    :100CE00092E00197F1F760E28BE792E00E94DE026A
    :100CF00060918002606240E08BE792E00E94F70220
    :100D000084E08093810240E06CE08BE792E00E94F7
    :100D1000F70240E061E08BE792E00E94F702CBE34C
    :100D2000DFE1CE010197F1F782E08093820240E09B
    :100D300066E08BE792E00E94F70240E062E08BE71A
    :100D400092E00E94F7022197F1F788E080938602F3
    :100D500060E08BE792E00E94790286E00E948C00BE
    :100D600085E00E948C0084E00E948C0083E00E9459
    :100D70008C0082E00E948C0080E480937C00809153
    :100D80007A00806480937A0080917A0086FDFCCF9F
    :100D9000609178008091790070E0782B072E000C2C
    :100DA000880B990B611571058105910511F00E9461
    :100DB000990A60E080E00E94180386E491E00E94B6
    :100DC000640369E070E080E090E00E94E3037093C8
    :100DD000500260934F0269E070E080E090E00E9472
    :100DE000E30370934E0260934D0220914D023091C7
    :100DF0004E0280914F02909150022817390759F303
    :100E000069E070E080E090E00E94E30370934C02A0
    :100E100060934B0280914B0290914C0220914F02C3
    :100E2000309150028217930759F320914D0230916F
    :100E30004E028217930721F369E070E080E090E0B2
    :100E40000E94E30370934A02609349028091490231
    :100E500090914A0220914F023091500282179307DD
    :100E600059F320914D0230914E028217930721F3DE
    :100E700020914B0230914C0282179307E9F262E015
    :100E800080E00E9418038BE591E00E94640363E018
    :100E900080E00E94180385E691E00E94640380913F
    :100EA0004F02909150020E94660380914D029091F2
    :100EB0004E020E94660380914B0290914C020E9468
    :100EC00066038091490290914A020E94660380E085
    :100ED000882E80E0982E80916D0290916E020A9784
    :100EE0008CF062E080E00E94180386E791E00E94A7
    :100EF000640363E080E00E94180384E891E00E94AC
    :100F00006403FFCF86E00E942E015C0185E00E9411
    :100F10002E016C0184E00E942E017C0183E00E947E
    :100F20002E018C0182E00E942E01EC0180911201C1
    :100F300090911301A816B90651F00E94B601609372
    :100F4000690270936A0280936B0290936C028091A5
    :100F5000100190911101C816D90651F00E94B601F6
    :100F600060936502709366028093670290936802B3
    :100F700080910E0190910F01E816F90651F00E9440
    :100F8000B601609361027093620280936302909352
    :100F9000640280910C0190910D010817190751F01E
    :100FA0000E94B60160935D0270935E0280935F02BF
    :100FB0009093600280910A0190910B01C817D907A4
    :100FC00051F00E94B6016093590270935A028093C7
    :100FD0005B0290935C020E94B601409069025090BF
    :100FE0006A0260906B0270906C02DC01CB01841984
    :100FF0009509A609B709C397A105B10500F180912C
    :10100000080190910901A816B906B9F0B09209013A
    :10101000A092080181E0A816B10479F480915702EA
    :1010200090915802019690935802809357020A9724
    :1010300024F010925802109257020E947F050E94DD
    :10104000B601409065025090660260906702709011
    :101050006802DC01CB0184199509A609B709C39779
    :10106000A105B10500F18091060190910701C81614
    :10107000D906B9F0D0920701C092060181E0C816E6
    :10108000D10479F480915502909156020196909383
    :101090005602809355020A9724F01092560210923D
    :1010A00055020E947F050E94B60140906102509057
    :1010B00062026090630270906402DC01CB018419CB
    :1010C0009509A609B709C397A105B10500F180915B
    :1010D000040190910501E816F906B9F0F0920501B6
    :1010E000E092040181E0E816F10479F48091530262
    :1010F00090915402019690935402809353020A9760
    :1011000024F010925402109253020E947F050E9414
    :10111000B60140905D0250905E0260905F02709058
    :101120006002DC01CB0184199509A609B709C397B0
    :10113000A105B105F8F08091020190910301081713
    :101140001907B1F01093030100930201013011055A
    :1011500079F480915102909152020196909352023B
    :10116000809351020A9724F0109252021092510279
    :101170000E947F050E94B6014090590250905A0289
    :1011800060905B0270905C02DC01CB0184199509D0
    :10119000A609B709C397A105B10508F45CC1809100
    :1011A000000190910101C817D90709F454C161E009
    :1011B00080E10E94180380915702909158020E948A
    :1011C000660380915502909156020E9466038091B9
    :1011D0005302909154020E946603809151029091B3
    :1011E00052020E946603D0930101C0930001C130F6
    :1011F000D10509F030C180916D0290916E02019687
    :1012000090936E0280936D020E947F058091570239
    :101210009091580220914F0230915002821793070B
    :1012200039F461E08AE00E94180389E991E022C064
    :1012300020914D0230914E028217930771F0209158
    :101240004B0230914C028217930739F020914902EA
    :1012500030914A028217930739F461E08AE00E94D4
    :1012600018038BE991E006C061E08AE00E94180350
    :101270008DE991E00E94640380915502909156029D
    :1012800020914D0230914E028217930739F461E0AC
    :101290008BE00E94180389E991E022C020914F025F
    :1012A000309150028217930771F020914B023091D8
    :1012B0004C028217930739F02091490230914A027B
    :1012C0008217930739F461E08BE00E9418038BE9E1
    :1012D00091E006C061E08BE00E9418038DE991E087
    :1012E0000E946403809153029091540220914B021A
    :1012F00030914C028217930739F461E08CE00E9430
    :10130000180389E991E022C020914F0230915002E8
    :101310008217930771F020914D0230914E0282178F
    :10132000930739F02091490230914A0282179307BE
    :1013300039F461E08CE00E9418038BE991E006C06B
    :1013400061E08CE00E9418038DE991E00E94640343
    :1013500080915102909152022091490230914A02AB
    :101360008217930739F461E08DE00E94180389E940
    :1013700091E022C020914F023091500282179307D2
    :1013800071F020914D0230914E028217930739F08F
    :1013900020914B0230914C028217930739F461E09F
    :1013A0008DE00E9418038BE991E006C061E08DE0BA
    :1013B0000E9418038DE991E00E9464032091570276
    :1013C0003091580280914F029091500228173907AE
    :1013D00091F5209155023091560280914D029091E5
    :1013E0004E022817390739F52091530230915402E3
    :1013F00080914B0290914C0228173907E1F420911B
    :101400005102309152028091490290914A0228176C
    :10141000390789F462E080E00E9418038FE991E0C7
    :101420000E94640363E080E00E94180384E891E076
    :101430000E946403FFCF109258021092570210923C
    :1014400056021092550210925402109253021092BA
    :10145000520210925102B0921301A0921201D09246
    :101460001101C0921001F0920F01E0920E01109351
    :101470000D0100930C01D0930B01C0930A0181145C
    :10148000910409F428CD0E94000025CD8F929F92EF
    :10149000AF92BF92CF92DF92EF92FF92CF93DF9302
    :1014A000EC01688179818A819B81611571058105D3
    :1014B000910521F464E279ED8BE597E02DE133EFBE
    :1014C00041E050E00E94A20A49015A019B01AC018F
    :1014D000A7EAB1E40E94C10A6B017C01ACEEB4EF53
    :1014E000A50194010E94CF0ADC01CB018C0D9D1D4A
    :1014F000AE1DBF1DB7FF03C00197A109B048888387
    :101500009983AA83BB83BC01CD019F77DF91CF91E3
    :10151000FF90EF90DF90CF90BF90AF909F908F9013
    :1015200008950E94460A089584E191E00E94460AC7
    :1015300008956093140170931501809316019093A0
    :1015400017010895052E97FB1EF400940E94B90A16
    :1015500057FD07D00E94D40A07FC03D04EF40C9428
    :10156000B90A50954095309521953F4F4F4F5F4FA9
    :10157000089590958095709561957F4F8F4F9F4FFF
    :1015800008950E94F60AA59F900DB49F900DA49F08
    :10159000800D911D11240895B7FF0C94C10A0E947B
    :1015A000C10A821B930B0895A1E21A2EAA1BBB1B32
    :1015B000FD010DC0AA1FBB1FEE1FFF1FA217B3071F
    :1015C000E407F50720F0A21BB30BE40BF50B661F35
    :1015D000771F881F991F1A9469F7609570958095F9
    :1015E00090959B01AC01BD01CF010895A29FB00170
    :1015F000B39FC001A39F700D811D1124911DB29F47
    :10160000700D811D1124911D0895EE0FFF1F05908F
    :10161000F491E02D099481E090E0F8940C94100B83
    :04162000F894FFCF6C
    :1016240001000100010001000100010001000100AE
    :1016340001000100010000000000400014005400FB
    :10164400000000004A021A024F03F40112020302CE
    :10165400F501000000004803B4004F034E03504F4F
    :101664004B55533A20005A4144414E452043495377
    :101674004C4F3A202020303030300044454255470A
    :10168400204F4E3A00484C4144414E452043495373
    :101694004C4F3A2020005052454852414C49205367
    :1016A400544521004B4F4E49454320485259202070
    :1016B4002020202020202020003D0043002D005623
    :0C16C400594852414C4920535445210024
    :00000001FF