Fişierul intrare/ieşire:captcha.in, captcha.outSursăFMI No Stress 3
AutorVlad DutaAdăugată deVmanDuta Vlad Vman
Timp execuţie pe test0.05 secLimită de memorie20480 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Captcha

Bo$$ul3tz din Hackerville are nevoie de cat mai multe conturi de email pentru a face spam. El a realizat un script care completeaza automat informatiile necesare pentru crearea unui nou cont de email, dar s-a lovit de problema completarii codului captcha. Pe serverul respectiv de email, un cod captcha este o poza in format bmp cu un color depth de 24 biti si fara compresie, avand latimea de 64 pixeli si inaltimea de 16 pixeli. Imaginea are fundalul perfect alb si contine doar cifre scrise cu diverse nuante de culori. Cifrele nu se pot intersecta, atinge sau roti si au dimensiunea de 5×5 pixeli. Daca notam cu _ un pixel alb si cu x un pixel colorat, atunci cifrele arata astfel:

xxxxx ____x xxxxx xxxxx x___x xxxxx xxxxx xxxxx xxxxx xxxxx
x___x ____x ____x ____x x___x x____ x____ ____x x___x x___x
x___x ____x xxxxx xxxxx xxxxx xxxxx xxxxx ____x xxxxx xxxxx
x___x ____x x____ ____x ____x ____x x___x ____x x___x ____x
xxxxx ____x xxxxx xxxxx ____x xxxxx xxxxx ____x xxxxx xxxxx

Pentru a valida fiecare cont, Bo$$ul3tz trebuie sa introduca suma numerelor din captcha. Neavand cunostiintele necesare este dispus sa ofere 100 de puncte pentru un program ajutator.

Precizari

  • O poza este un fisier binar, iar pentru a extrage continutul unui fisier binar acesta se va deschide cu optiunea “rb”
FILE *f = fopen("poza.bmp", "rb")
  • Citirea dintr-un fisier binar se face in mod similar cu citirea dintr-un fisier text. De exemplu, pentru a citi un int vom folosi
fscanf(f, "%d", &v)
  • Daca aveti nevoie sa cititi structuri de date puteti folosi
fread ( void * structure, int size, int count, FILE * input_file );
  • Pentru a declara un singur byte se recomanda folosirea tipului de date char.
  • Un fisier in format bmp 24bit fara compresie este format dintr-un header avand exact 14 bytes si structura
typedef struct {
   unsigned short int type;                 /* Magic identifier            */
   unsigned int size;                       /* File size in bytes          */
   unsigned short int reserved1, reserved2;
   unsigned int offset;                     /* Offset to image data, bytes */
} HEADER;
  • Urmeaza o zona de informatii avand exact 40 bytes si structura
typedef struct {
   unsigned int size;               /* Header size in bytes      */
   int width,height;                /* Width and height of image */
   unsigned short int planes;       /* Number of colour planes   */
   unsigned short int bits;         /* Bits per pixel            */
   unsigned int compression;        /* Compression type          */
   unsigned int imagesize;          /* Image size in bytes       */
   int xresolution,yresolution;     /* Pixels per meter          */
   unsigned int ncolours;           /* Number of colours         */
   unsigned int importantcolours;   /* Important colours         */
} INFOHEADER;
  • Apoi urmeaza imaginea sub forma de matrice de pixeli bgr, adica fiecare pixel este reprezentat printr-un triplet de valori, fiecare pe cate un byte, reprezentand nivelele de albastru, verde si rosu din care este compusa culoarea pixelului. Un pixel este perfect alb daca toate cele 3 nivele au valoarea maxima (0xFF in hexa). Pentru imaginea continand codul captcha vor exista exact 16*64 triplete bgr.
  • Atentie, imaginea este retinuta in matricea de pixeli incepand de la marginea de jos si mergand catre marginea de sus (un flip vertical mai exact).

Date de intrare

Fişierul de intrare captcha.in este o imagine bmp 24bit fara compresie, continand codul captcha.

Date de ieşire

În fişierul de ieşire captcha.out se va afisa pe prima linie suma cifrelor din codul captcha.

Restricţii

  • Inaltimea imaginii este de fix 16 pixeli, iar latimea de fix 64 pixeli.
  • Imaginile din exemplu respecta formatul explicat anterior si le puteti folosi pentru a va testa solutia.
  • Desi fisierul de intrare are extensia .in si nu .bmp, el respecta formatul bmp explicat anterior.

Exemplu

captcha.incaptcha.out
12
11
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?

Explicaţie

Poza din primul exemplu in hex:

0000-0010:  42 4d 36 0c-00 00 00 00-00 00 36 00-00 00 28 00  BM6..... ..6...(.
0000-0020:  00 00 40 00-00 00 10 00-00 00 01 00-18 00 00 00  ..@..... ........
0000-0030:  00 00 00 0c-00 00 13 0b-00 00 13 0b-00 00 00 00  ........ ........
0000-0040:  00 00 00 00-00 00 ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0050:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0060:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0070:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0080:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0090:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-00a0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-00b0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-00c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-00d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-00e0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-00f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0100:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0110:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0120:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0130:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0140:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0150:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0160:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0170:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0180:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0190:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-01a0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-01b0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-01c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-01d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-01e0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-01f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0200:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0210:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0220:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0230:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0240:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0250:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0260:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0270:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0280:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0290:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-02a0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-02b0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-02c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-02d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-02e0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-02f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0300:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0310:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0320:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0330:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0340:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0350:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0360:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0370:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0380:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0390:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-03a0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-03b0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-03c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-03d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-03e0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-03f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0400:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0410:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0420:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0430:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0440:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0450:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0460:  ff ff ff 00-00 00 ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0470:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0480:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0490:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-04a0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-04b0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-04c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-04d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-04e0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-04f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0500:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0510:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0520:  ff ff ff 00-00 00 ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0530:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0540:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0550:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0560:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0570:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0580:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0590:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-05a0:  ff ff ff ff-00 00 00 00-00 00 00 00-00 00 00 00  ........ ........
0000-05b0:  00 00 00 ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-05c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-05d0:  ff ff ff ff-ff ff ff 00-00 00 00 00-00 00 00 00  ........ ........
0000-05e0:  00 00 00 00-00 00 ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-05f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0600:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0610:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0620:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0630:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0640:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0650:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0660:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0670:  00 00 00 ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0680:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0690:  ff ff ff ff-ff ff ff 00-00 00 ff ff-ff ff ff ff  ........ ........
0000-06a0:  ff ff ff 00-00 00 ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-06b0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-06c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-06d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-06e0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-06f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0700:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0710:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0720:  ff ff ff ff-00 00 00 00-00 00 00 00-00 00 00 00  ........ ........
0000-0730:  00 00 00 ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0740:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0750:  ff ff ff ff-ff ff ff 00-00 00 ff ff-ff ff ff ff  ........ ........
0000-0760:  ff ff ff 00-00 00 ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0770:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0780:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0790:  ff ff ff 00-00 00 00 00-00 00 00 00-00 00 00 00  ........ ........
0000-07a0:  00 00 ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-07b0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-07c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-07d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-07e0:  ff ff ff ff-00 00 00 ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-07f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0800:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0810:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0820:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0830:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0840:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0850:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff 00  ........ ........
0000-0860:  00 00 ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0870:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0880:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0890:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-08a0:  ff ff ff ff-00 00 00 00-00 00 00 00-00 00 00 00  ........ ........
0000-08b0:  00 00 00 ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-08c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-08d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-08e0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-08f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0900:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0910:  ff ff ff 00-00 00 00 00-00 00 00 00-00 00 00 00  ........ ........
0000-0920:  00 00 ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0930:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0940:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0950:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0960:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0970:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0980:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0990:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-09a0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-09b0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-09c0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-09d0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff 00  ........ ........
0000-09e0:  00 00 ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-09f0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a00:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a10:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a20:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a30:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a40:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a50:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a60:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a70:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a80:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0a90:  ff ff ff 00-00 00 00 00-00 00 00 00-00 00 00 00  ........ ........
0000-0aa0:  00 00 ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0ab0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0ac0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0ad0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0ae0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0af0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b00:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b10:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b20:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b30:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b40:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b50:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b60:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b70:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b80:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0b90:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0ba0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0bb0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0bc0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0bd0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0be0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0bf0:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0c00:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0c10:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0c20:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0c30:  ff ff ff ff-ff ff ff ff-ff ff ff ff-ff ff ff ff  ........ ........
0000-0c36:  ff ff ff ff-ff ff                                ......