diff --git a/README.md b/README.md index aeea0a1..7a470aa 100644 --- a/README.md +++ b/README.md @@ -1,89 +1,87 @@ -# gioco carino (Cute Isometric Game Boy Maze) +# A Scream from the Dark -Un motore isometrico sperimentale per Game Boy (DMG/CGB) scritto in C con **GBDK-2020**. Genera un labirinto casuale ed esegue il rendering in proiezione isometrica con autotiling dinamico, movimento interpolato del personaggio, e un set di test automatizzati headless tramite l'emulatore **PyBoy** ed elaborazione d'immagine con **OpenCV**. +Un survival-horror procedurale in prospettiva isometrica per Game Boy (DMG/CGB), scritto in C con **GBDK-2020**. Sei imprigionato in un labirinto 7×7 generato casualmente, illuminato solo da un ristretto quadrato di visibilità. Un **fantasma** si nasconde nel buio e ti bracca non appena entri nel suo raggio visivo. L'unica via di fuga è la **botola** sul bordo sud della mappa: raggiungerla significa "sprofondare più giù" (*Going Deeper*) e generare un nuovo livello. --- -## 🎮 Caratteristiche Principali +## 🎮 Caratteristiche -* **Proiezione Isometrica**: Rendering di una mappa 2.5D su schermo Game Boy (tile 32x16 pixel disegnate a diamante). -* **Labirinto Casuale Dinamico**: Algoritmo di backtracking iterativo (con stack in WRAM per evitare l'overflow dello stack hardware) che genera ogni volta un percorso 7x7 unico. -* **Movimento Interpolato (Lerp)**: Spostamenti fluidi del personaggio e della telecamera interpolati linearmente su 16 tick macchina. -* **Delayed Auto Shift (DAS)**: Controlli reattivi e confortevoli con delay iniziale di 12 frame e ripetizione ogni 6 frame per il movimento continuo tenendo premuto il D-Pad. -* **Autotiling Intelligente**: Calcolo dei vicini (maschera a 4 bit) per selezionare automaticamente il bordo e gli angoli di ciascuna tessera del pavimento (16 varianti per ognuno dei 2 stili di pavimento alternati a scacchiera). -* **Pipeline di Asset Ottimizzata**: Generazione procedurale di tile e sprite da script Python (`generate_assets.py`) e compilazione in C tramite `png2asset`. -- Animazione completa dei movimenti del giocatore. -- Transizione al Game Over alla collisione. -- Menu Iniziale con copertina d'arte a 2-bit nativa per hardware Game Boy. +- **Proiezione isometrica 2.5D**: rendering della mappa a diamante (tile 32×16 px) su schermo Game Boy, con autotiling dinamico. +- **Labirinto casuale**: algoritmo DFS iterativo con stack in WRAM (per evitare overflow dello stack hardware) che genera un "perfect maze" 7×7 unico ad ogni partita, poi "rotto" con riaperture casuali al 15% per creare loop e percorsi alternativi. +- **Fog of War**: visibilità 5×5 basata sulla distanza di Chebyshev, con affievolimento della luce sui bordi. Il fantasma si attiva solo quando entra in questo riquadro. +- **Movimento interpolato (LERP)**: spostamenti fluidi del personaggio e della telecamera su 16 tick a punto fisso (no float). +- **Delayed Auto-Shift (DAS)**: controlli alla Tetris — delay iniziale di 12 frame e ripetizione ogni 6 frame per il movimento continuo tenendo premuto il D-Pad. +- **Salto evasivo con Stamina**: A+direzione scavalca il blocco adiacente atterrando 2 tile più in là (la cella intermedia deve essere un muro). Costa 60 punti stamina; la barra si ricarica di 1 punto al secondo. +- **AI del fantasma**: pathfinding greedy con distanza al quadrato (niente sqrt, niente A*), cooldown di 1 secondo tra i passi, hitbox pixel-perfect (12×6 px) per una morte "giusta". +- **Audio procedurale**: colonna sonora sintetizzata manipolando direttamente i registri APU via VBL interrupt (nessun campione). +- **Schermate a tutto schermo**: copertina 2-bit nativa per il titolo, immagine "Going Deeper" per la vittoria, metasprite "GAME OVER" per la sconfitta. +- **Test headless**: pipeline di verifica con PyBoy + OpenCV senza emulatore grafico. ### Soundtrack -Il gioco implementa la musica generata proceduralmente manipolando i registri audio hardware del Game Boy in `engine.c`. - -1. **Title Theme:** Una solenne e misteriosa melodia composta da 32 battute basata sugli accordi La minore, Sol, Fa e Mi, che accompagna la schermata d'avvio a schermo intero. -2. **Gameplay Theme:** Un battito ritmico ansioso che accelera progressivamente l'intensità all'inseguimento del fantasma, aumentando la pressione psicologica sul giocatore. -3. **Game Over Theme:** Un concerto tragico polifonico di 128 note con percussioni sinfoniche, basso virtuoso e drammatica discesa melodica, per sottolineare la sconfitta del giocatore. - -## Compilazione -Assicurati di aver installato [GBDK-2020](https://github.com/gbdk-2020/gbdk-2020). +1. **Title Theme**: solenne e misteriosa, 32 battute sugli accordi La minore, Sol, Fa e Mi. +2. **Gameplay Theme**: battito ritmico ansioso ("eerie pulse") che accelera la tensione dell'inseguimento. +3. **Game Over Theme**: concerto tragico polifonico di 128 note con percussioni (noise channel), basso virtuoso e drammatica discesa melodica. +4. **Going Deeper**: melodia misteriosa discendente di 96 step (Am → Fmaj7 → Dm → E7 → C aug → abisso). --- -## 🛠️ Dettagli Tecnici +## 🛠️ Dettagli tecnici -### Architettura dei File -* [main.c](file:///home/enne2/dev/gameboy-hello/iso_test/main.c): Punto di ingresso del gioco. Esegue l'inizializzazione del ciclo macchina e del joypad e si sincronizza con l'intervallo di VBlank (`wait_vbl_done()`). -* [engine.c](file:///home/enne2/dev/gameboy-hello/iso_test/engine.c) / [engine.h](file:///home/enne2/dev/gameboy-hello/iso_test/engine.h): Core del motore isometrico. Contiene la logica del labirinto, l'autotiling, lo scorrimento della telecamera, l'interpolazione del movimento e il supporto DAS. -* [player.c](file:///home/enne2/dev/gameboy-hello/iso_test/player.c) / [player.h](file:///home/enne2/dev/gameboy-hello/iso_test/player.h) & [tiles.c](file:///home/enne2/dev/gameboy-hello/iso_test/tiles.c) / [tiles.h](file:///home/enne2/dev/gameboy-hello/iso_test/tiles.h): Asset grafici compilati (metasprite per il giocatore in 4 direzioni e varianti di piastrelle). -* [generate_assets.py](file:///home/enne2/dev/gameboy-hello/iso_test/generate_assets.py): Script Python PIL per generare le texture di tiles e sprite a partire da matrici di pixel. +### Architettura dei file +- [`main.c`](src/main.c): entry point, loop VBL sincronizzato, macchina a stati `app_state` (0 = title, 1 = game). +- [`engine.c`](src/engine.c) / [`engine.h`](src/engine.h): "direttore d'orchestra" — `title_init/update`, `engine_init`, `engine_update`. +- [`globals.c`](src/globals.c) / [`globals.h`](src/globals.h): stato globale centralizzato (mappa, camera, player, enemy, stamina, `game_over`) per evitare dipendenze circolari tra moduli. +- [`maze.c`](src/maze.c): generazione procedurale DFS + loop + posizionamento botola. +- [`player_logic.c`](src/player_logic.c): input, DAS, state machine del movimento, salto, stamina. +- [`enemy_logic.c`](src/enemy_logic.c): AI greedy, cooldown, rendering nemico, hitbox pixel-perfect. +- [`render.c`](src/render.c): proiezione isometrica, fog of war, autotiling multi-pass, stamina UI, sprite player. +- [`sound.c`](src/sound.c): sequencer audio via VBL interrupt, 4 tracce. +- `tiles.c / player.c / enemy.c / gameover.c / next_level.c / stamina.c / title_bg.c`: asset generati da `png2asset`. +- [`scripts/`](scripts/): generazione procedurale di tile/sprite (`generate_assets.py`, `generate_enemy.py`), quantizzazione immagini (`process_next_level.py`), test headless. -### Formato delle Coordinate Isometriche -Le coordinate logiche del labirinto $2D$ `(lx, ly)` vengono convertite in coordinate dello schermo Game Boy `(iso_x, iso_y)` per i background tiles tramite la seguente formula: -$$iso\_x = (lx - ly) \times 2 + 12$$ -$$iso\_y = (lx + ly) \times 1 + 2$$ -Questo permette di mappare una griglia ruotata a diamante perfettamente centrata nello spazio di visualizzazione. +### Formato delle coordinate isometriche +Le coordinate logiche `(lx, ly)` vengono convertite in coordinate schermo `(iso_x, iso_y)`: +``` +iso_x = (lx - ly) * 2 + 12 +iso_y = (lx + ly) * 1 + 2 +``` +e in coordinate pixel fisiche per camera/collisione: +``` +px = (lx - ly) * 16 + 96 +py = (lx + ly) * 8 + 16 +``` +Camera centrata: `scroll_x = px - 64`, `scroll_y = py - 72`. + +Per un'analisi approfondita di codice, funzionalità e workaround storici, vedi [`doc/AScreamFromTheDark_report.md`](doc/AScreamFromTheDark_report.md). --- -## 🚀 Requisiti e Build +## 🚀 Requisiti e build ### Prerequisiti -1. **GBDK-2020**: Installato in `/home/enne2/.local/gbdk`. -2. **Python 3**: Con i seguenti pacchetti installati per i test e la rigenerazione degli asset: - ```bash - pip install --user Pillow pyboy opencv-python numpy - ``` +1. **GBDK-2020** installato in `/home/enne2/.local/gbdk`. +2. **Python 3** con i pacchetti per la rigenerazione degli asset e i test: + ```bash + pip install --user Pillow pyboy opencv-python numpy + ``` ### Compilazione -Per compilare la ROM ed esportare `hello_iso.gb`: ```bash make clean && make ``` Questo comando: -1. Esegue `generate_assets.py` per creare `tiles.png` e `player.png`. -2. Usa `png2asset` per convertire le PNG in codice sorgente C. -3. Usa il compilatore `lcc` di GBDK per compilare e linkare tutti i file sorgente C nella ROM finale. +1. Esegue gli script Python per creare `tiles.png`, `player.png`, `enemy.png`. +2. Usa `png2asset` per convertire i PNG in sorgenti C. +3. Usa il compilatore `lcc` di GBDK per compilare e linkare i sorgenti in `build/hello_iso.gb` (e `build/test_gameover.gb`). --- -## 🧪 Test e Analisi Automatica +## 🧪 Test e analisi automatica -Il progetto include tre livelli di verifica headless per testare la correttezza logica e visuale senza avviare manualmente un emulatore grafico. +1. **Screenshot** — `python3 scripts/test_pyboy.py`: avvia la ROM in PyBoy per 120 frame e salva `assets/hello_iso_gb.png`. +2. **Test di movimento in WRAM** — `python3 scripts/test_movement.py`: legge la griglia del labirinto in WRAM (indirizzo risolto dinamicamente via `hello_iso.noi`) e simula pressioni direzionali verificando `player_lx/ly`. +3. **Rilevamento glitch con OpenCV** — `python3 scripts/opencv_analyze_tiles.py`: esamina lo screenshot cercando disallineamenti o buchi neri tra le giunzioni isometriche. +4. **ROM di test isolata** — `make build/test_gameover.gb`: renderizza solo player + metasprite GAME OVER per validare la schermata di sconfitta. -1. **Generazione Screenshot**: - ```bash - python3 test_pyboy.py - ``` - Avvia la ROM in PyBoy per 120 frame e salva un'immagine `hello_iso_gb.png` del display. - -2. **Test di Movimento in WRAM**: - ```bash - python3 test_movement.py - ``` - Carica la ROM in PyBoy, legge lo stato della griglia del labirinto in WRAM (a partire dall'indirizzo `0xC0B1`) e simula la pressione dei tasti direzionali, verificando che la posizione del player (indirizzi `0xC4F4` e `0xC4F5`) cambi correttamente secondo le collisioni calcolate. - -3. **Rilevamento Glitch con OpenCV**: - ```bash - python3 opencv_analyze_tiles.py - ``` - Utilizza OpenCV per esaminare lo screenshot generato, cercando disallineamenti o buchi neri tra le giunzioni delle piastrelle isometriche, segnalando eventuali problemi di rendering. +La documentazione tecnica dettagliata per modulo è in [`doc/`](doc/). \ No newline at end of file diff --git a/doc/AScreamFromTheDark_report.md b/doc/AScreamFromTheDark_report.md new file mode 100644 index 0000000..099c936 --- /dev/null +++ b/doc/AScreamFromTheDark_report.md @@ -0,0 +1,185 @@ +# A Scream from the Dark — Report Tecnico Approfondito + +> Labirinto isometrico con inseguimento per Game Boy (DMG/CGB), scritto in C con **GBDK-2020**. +> Repository: `gameboy-hello-iso` · Target ROM: `build/hello_iso.gb` (32 KB). +> ~5941 righe di C/H + ~1710 righe di script Python per la pipeline asset. + +--- + +## 1. Identità del gioco + +"A Scream from the Dark" è un piccolo survival-horror procedurale in prospettiva isometrica 2.5D. Il giocatore è imprigionato in un labirinto 7×7 generato casualmente, illuminato solo da un ristretto quadrato di visibilità (Fog of War). Un **fantasma** si nasconde nel buio e bracca il giocatore non appena entra nel suo riquadro visivo (5×5). L'unica via di fuga è una **botola** (`maze[y][x] == 2`) piazzata sul bordo sud della mappa: raggiungerla significa "sprofondare più giù" (*Going Deeper*) e avanzare di livello. + +Loop di gioco: +1. **Title screen** — copertina 2-bit + tema solenne/misterioso (32 battute). +2. **Gameplay** — esplorazione a griglia con movimento interpolato, salto evasivo a consumo di stamina, AI greedy del fantasma, hitbox pixel-perfect. +3. **Game Over (Sconfitta)** — "fermo immagine" drammatico di 45 frame → schermo nero → metasprite `GAME OVER` + concerto tragico polifonico di 128 note con percussioni (noise channel). +4. **Going Deeper (Vittoria)** — reset scroll + immagine a tutto schermo `next_level.png` + melodia misteriosa discendente di 96 step. Premi START per rigenerare un nuovo livello. + +--- + +## 2. Architettura del codice + +### 2.1 Organizzazione modulare +Il progetto nasceva da un monolite `engine.c` di oltre 1000 righe, poi rifattorizzato in moduli a singola responsabilità. L'orchestrazione avviene in `main.c` / `engine.c`; lo stato mutabile è centralizzato in `globals.c`/`globals.h` per evitare dipendenze circolari tra moduli C. + +| File | Ruolo | +|------|-------| +| `main.c` | Entry point, loop VBL, macchina a stati `app_state` (0=title, 1=game). | +| `engine.c` | "Direttore d'orchestra": `title_init/update`, `engine_init`, `engine_update`. | +| `globals.c/h` | Stato globale: mappa, camera, player, enemy, stamina, game_over. | +| `maze.c` | Generazione procedurale DFS + creazione loop + posizionamento botola. | +| `player_logic.c` | Input, DAS, state machine del movimento, salto, stamina. | +| `enemy_logic.c` | AI greedy, cooldown, rendering nemico, hitbox pixel-perfect. | +| `render.c` | Proiezione isometrica, fog of war, autotiling, multi-pass, stamina UI, sprite player. | +| `sound.c` | Sequencer audio via VBL interrupt, 4 tracce (title/gameplay/gameover/next_level). | +| `tiles.c/player.c/enemy.c/gameover.c/next_level.c/stamina.c/title_bg.c` | Asset generati da `png2asset`. | + +### 2.2 Pipeline asset (Python → C) +`scripts/generate_assets.py` (PIL) produce `tiles.png`/`player.png` da matrici di pixel; `generate_enemy.py` genera il fantasma; `process_next_level.py` quantizza `next_level_original.png` a 4 livelli con soglie fisse. Il `Makefile` poi invoca `png2asset` per convertire ogni PNG in `src/*.c` (map, metasprite, tile data). `make clean` cancella anche i C generati, forzando la rigenerazione. + +--- + +## 3. Funzionalità chiave in dettaglio + +### 3.1 Proiezione isometrica +Conversione griglia logica `(lx,ly)` → schermo: +``` +iso_x = (lx - ly) * 2 + 12 // tile 32x16 → metà larghezza +iso_y = (lx + ly) * 1 + 2 // tile altezza 8px logica +``` +Coordinate fisiche pixel del player/nemico usate per camera & collision: +``` +px = (lx - ly) * 16 + 96 +py = (lx + ly) * 8 + 16 +``` +Camera centrata: `scroll_x = px - 64`, `scroll_y = py - 72` (160×144 display → centro 80×72, con offset hardware). + +### 3.2 Generazione del labirinto (`maze.c`) +- **DFS iterativo con stack in WRAM** (`stack_x[49]/stack_y[49]`): evita l'overflow dello stack hardware del LR35902 ricorrendo a un array in RAM. Celle dispari = stanze, celle pari = muri divisori; scava il muro di mezzo con la media aritmetica delle coordinate. +- **Fase 2 — loop**: riapre muri residui che collegano due corridoi opposti con probabilità 15%. Vitale per il gameplay d'inseguimento (permette di aggirare il fantasma). +- **Fase 3 — botola**: sceglie un punto **casuale** sul bordo sud (`y = MAP_SIZE-2`) tra le celle calpestabili, invece della "distanza di Manhattan massima" originaria (la doc `generation.md` è rimasta indietro rispetto al codice: vedi §7 Incongruenze). Fallback estremo su `(5,5)` se la riga fosse inaccessibile. + +### 3.3 Movimento & DAS (`player_logic.c`) +- **State machine rigida**: durante `is_moving` (16 frame di LERP) ogni input è ignorato → movimento strettamente grid-based stile Zelda/Pokémon. +- **LERP** a punto fisso: `px = start_px + ((target_px - start_px) * move_progress) >> 4` (divisione per 16 via shift, no float). +- **DAS (Delayed Auto Shift)** alla Tetris: `DAS_DELAY=12` frame di attesa iniziale, poi `DAS_REPEAT=6` frame tra ripetizioni. `keys_pressed = keys & ~prev_keys` rileva il fronte di salita. +- **Salto evasivo**: A+direzione → atterraggio 2 tile più in là. Condizioni: cella intermedia DEVE essere muro (`maze==0`), cella di arrivo pavimento/vittoria, stamina ≥ 60. Consuma 60 stamina. L'arco parabolico è solo visivo: `y_offset = (move_progress * (16 - move_progress)) >> 2` (apice 16px a frame 8). La logica resta 2D. +- **Stamina**: ricarica 1 punto/s (60 frame). Barra UI a 5 segmenti sprite (ID 18–22) in alto a destra, conversione `stamina*40/100` → pixel. + +### 3.4 Fog of War (`render.c` + `enemy_logic.c`) +Distanza di **Chebyshev** `max(|dx|,|dy|)` invece di euclidea (no sqrt, no lookup): quadrato di visibilità 5×5. +- `dist > 2` → cella non disegnata (nera). +- `dist == 2` → offset grafico scuro ("Tile Dark") per simulare affievolimento della luce prima del buio. +- Il nemico si "sveglia" e insegue solo se `dist <= 2` (entra nel cono visivo): coerente con la nebbia. + +### 3.5 Autotiling & multi-pass rendering +- **Maschera a 4 bit** sui vicini (TL, TR, BL, BR) per scegliere varianti di bordo/angolo (16 varianti × 2 stili di pavimento alternati a scacchiera `is_alt = (lx+ly)%2==0`). +- **Problema overlapping isometrico**: il background GB non ha trasparenza hardware; i tile disegnati dopo "tagliano" quelli prima con angoli piatti. Soluzione ibrida: + 1. **Pass 1**: pavimenti normali con bitmasking dinamico degli angoli (ricolorano in base al vicino). + 2. **Pass 2**: la botola (oggetto complessa, 243+81+162 varianti con maschera a 4 vicini `state_tl + state_tr*3 + state_bl*9 + state_br*27`) disegnata **per ultima**, sovrascrive i pavimenti frontali ma si fonde grazie alle maschere dei propri angoli inferiori. +- Questo evita l'uso di sprite hardware per la botola (che causerebbero flickering per il limite di 10 sprite/scanline) e contiene il consumo di VRAM (limite 256 tile). + +### 3.6 Ottimizzazione rendering +Trasferisce solo le 16 righe visibili invece di tutte le 32: `set_bkg_tiles(0, 2, 32, 16, &map_buffer[2*32])`. Aggiornamento a `move_progress==8` (metà passo) per fluidità del fog of war. `map_buffer` usato con wrap `& 31` per gestire lo scroll modulare. + +### 3.7 AI del fantasma (`enemy_logic.c`) +- **Greedy invece di A***: confronta la distanza al quadrato `dx²+dy²` delle 4 celle adiacenti calpestabili e sceglie la minima. No sqrt (pesante su 4 MHz), no heap/nodi (frame drops inammissibili). Difetto voluto: si incastra in vicoli a U → diventa una dinamica di gameplay (seminarlo col level design). +- **Cooldown**: dopo ogni passo (16 frame di LERP) rimane congelato 60 frame (1 s). Il giocatore è più veloce → il salto evasivo è il salvavita. +- **Hitbox pixel-perfect**: la morte non scatta per coincidenza di cella logica, ma per sovrapposizione dei pixel fisici con tolleranza `|dx|<12 && |dy|<6`. Più "giusta" agli occhi del giocatore. +- Culling off-screen: `enemy_screen_x` e `_y` con wrap `& 255` + soglie `-8..168` / `-8..152`; se fuori range o `ep_dist > 2` lo sprite viene spostato a `(0,0)` (offscreen). + +### 3.8 Audio (`sound.c`) +Sequencer agganciato al **VBL interrupt** (`add_VBL(play_music_tick)`), ~60 Hz, non blocca il rendering. Usa i 4 canali APU: +- **CH1** (pulse+sweep): arpeggi rapidi (gameover/next_level), tema title. +- **CH2** (pulse): bassi/melodie tenute (gameover ch2_seq, basso title/next_level un'ottava sotto con `n/2`). +- **CH4** (noise): percussioni — `step%8==0` trigger; freq `0x68` (thud basso) per `step<64`, `0x42` (crash) per `step>=64`. +- **CH3** (wave): non utilizzato. + +Tracce: +- **Title**: `title_melody[32]`, 30 frame/nota, basso ogni 4 step, accordi Am–G–F–E. +- **Gameplay**: `eerie_reg_vals[96]`, 20 frame/nota, pattern A min–D min–E7 (ansia crescente). +- **Game Over**: `ch1_seq[128]` + `ch2_seq[128]`, 10 frame/nota, 16 accordi con intensificazione (arpeggi più alti nella seconda metà). +- **Going Deeper**: `next_level_seq[96]`, 15 frame/nota, 6 sezioni (Am, Fmaj7, Dm, E7, C aug, discesa finale nel buio `N_G2 N_E3 N_C3… N_C2 R…`). + +Frequenze delle note: costanti `N_*` precalcolate come `(2048 - 131072/freq)` → scritte direttamente in `NR13/NR23` (low) e `NR14/NR24` (high | 0x80 trigger). + +--- + +## 4. Workaround e fix storici (dalla git history) + +La cronologia di 23 commit racconta un'intensa fase di caccia ai bug hardware-specifici del Game Boy. Riepilogo dei workaround più significativi: + +| Commit | Problema | Workaround | +|--------|----------|------------| +| `93deb35` | **VRAM shared memory overlap**: i tile della stamina UI (sprite) sovrascrivevano i tile del background perché caricati nello stesso blocco VRAM. | Caricare `stamina_tiles` **dopo** i background tile e a partire da `tiles_TILE_COUNT` (indici ≥128, fuori dal blocco condiviso). `base_tile = tiles_TILE_COUNT` in `update_stamina_display`. | +| `6d94992` | **2-frame lag tra tile**: il DAS non era sincronizzato col ciclo di movimento. | Sincronizzazione del timer DAS con la state machine del passo. | +| `7d85aec` | Labirinto "perfetto" intrappolava il giocatore. | Fase 2: riapertura casuale 15% dei muri → loop evasivi. | +| `b47455c` | Offset rendering nemico errato + collisione approssimata. | Calcolo `screen_x = ((px - scroll) & 255) + 24/+16` e hitbox pixel-perfect 12×6. | +| `c983631` | Palette sprite errata per il nemico su DMG + game over troppo brusco. | `OBP1_REG = 0x1B` (palette invertita per fantasma bianco) + `game_over_timer` di delay. | +| `e07e8c6` | Nemico invisibile fuori schermo a causa dello scroll. | Wrap `& 255` + culling con soglie fisiche. | +| `8d71a23` / `1b0e1a0` | Artefatti sprite sulle scale. | Primo tentativo sprite-based con `-spr8x16`, poi **revert** a tile-based (le scale tornano nel background). | +| `f14e264` | Scale come ostacolo bloccava il fantasma. | Ridisegno come **botola nel terreno**: il fantasma può camminarci sopra (tile 2 è calpestabile per l'AI: `maze[ly][lx] != 0`). | +| `cb19677` | Glitch immagine next_level + scroll non allineato. | Reset `SCX_REG=SCY_REG=0` prima di mostrare l'immagine a tutto schermo + miglioramento quantizzazione colore. | +| `d8fd746` | Quantizzazione dell'immagine perdeva i toni scuri. | Soglie fisse in `process_next_level.py`: `<40` nero, `40–128` grigio scuro (85), `128–200` grigio chiaro (170), `≥200` bianco. | +| `cc656d0` | Musica next_level poco udibile + fine brusco. | Envelope più alto (`NR12_REG=0xC5`) e discesa graduale fino a `N_C2 R…`. | + +**Pattern ricorrente di workaround GB**: ogni "feature" ha dovuto litigare con i limiti hardware — VRAM da 256 tile condivisa tra BG e sprite, assenza di trasparenza nel background, limite 10 sprite/scanline, CPU 4 MHz senza FPU, stack da 8 bit. La filosofia è **"ingannare l'hardware con la matematica"**: LERP a punto fisso, distanze al quadrato/Chebyshev, multi-pass con bitmasking, sequencer audio via interrupt. + +--- + +## 5. Test & verifica headless + +Pipeline di verifica senza emulatore grafico (PyBoy + OpenCV): +1. **`test_pyboy.py` / `take_screenshot.py`**: avvia la ROM in PyBoy per N frame e salva screenshot (`hello_iso_gb.png`). +2. **`test_movement.py`**: legge la griglia maze in WRAM (indirizzo cercato dinamicamente via `hello_iso.noi`) e simula pressioni direzionali, verificando `player_lx/ly`. Nota: lo script cerca `hello_iso.noi` ma il Makefile produce `test_gameover.noi` in `build/` — potenziale incongruenza di percorso (vedi §7). +3. **`opencv_analyze_tiles.py` / `opencv_check_centering.py`**: rilevano disallineamenti/buchi neri tra giunzioni isometriche e centratura. +4. **`test_gameover_render.c`** + target `test_gameover.gb`: ROM standalone che renderizza solo player + metasprite GAME OVER per validare visivamente la schermata di sconfitta isolata. + +--- + +## 6. Punti di forza tecnici + +- **Modularizzazione pulita** con stato centralizzato: leggibile e manutenibile nonostante i vincoli embedded. +- **Commenti didattici** in italiano: ogni modulo spiega il *perché* delle scelte (es. "non usiamo sqrt perché troppo costosa"), utile come materiale di studio GB dev. +- **Niente float**: tutto a punto fisso con shift (`>> 4`, `>> 2`), essenziale sul LR35902. +- **Audio interamente procedurale**: nessun campione, solo registri APU; la ROM resta compatta (32 KB). +- **Pipeline asset riproducibile**: `make clean && make` rigenera tutto da PNG sorgenti. + +--- + +## 7. Incongruenze, debiti tecnici e osservazioni + +1. **README obsoleto**: il `README.md` storico parlava di "gioco carino", titoli `file:///home/enne2/dev/gameboy-hello/iso_test/...` (percorso storico diverso da quello attuale `gameboy-hello-iso`) e non menzionava "A Scream from the Dark", né il salto/stamina/fantasma/botola. Risolto in questa revisione allineando il README all'identità attuale. +2. **`doc/generation.md` vs `maze.c`**: la doc descriveva il posizionamento del traguardo via **distanza di Manhattan massima**; il codice attuale sceglie invece un **punto casuale sul bordo sud**. Risolto in questa revisione aggiornando `doc/generation.md`. +3. **`victory.c/h` orfani**: l'asset `victory` (scritta VITTORIA) era ancora compilato e incluso da `render.c` ma la sequenza di vittoria è stata sostituita dall'immagine a tutto schermo `next_level` (commit `3aa20fd`). Risolto in questa revisione rimuovendo l'inclusione e i file morti. +4. **`test_movement.py`**: cerca `hello_iso.noi` nella cwd, ma il `.noi` viene generato in `build/` (per `test_gameover`); per la ROM principale il `.noi` non è tra i target Makefile espliciti. Lo script può fallire se eseguito fuori da `build/`. (Osservazione residua, non bloccante.) +5. **`game_over` come `volatile`**: marcato `volatile` in `globals.h` (corretto, modificato da ISR audio/VBL), ma alcuni aggiornamenti avvengono anche dal main loop non-atomic — in pratica sicuro perché la lettura/scrittura è a 8 bit sul LR35902 (atomica), ma vale la pena documentarlo. +6. **`app_state` ridefinito** in `globals.h` e `engine.h` (entrambi `extern uint8_t app_state`): duplicazione inoffensiva ma ridondante. +7. **Spawn player fallback**: ricerca la prima cella libera se `(1,1)` è muro (teoricamente impossibile col DFS partendo da 1,1) — difensivo, buon codice. +8. **`title_update` vuoto**: il loop del titolo non fa nulla a parte il polling (gestito in `main.c`). La musica continua via interrupt. Pulito ma il corpo vuoto andrebbe commentato o rimosso se non serve estensione futura. +9. **Costante `N_E2 = 458`** in `next_level_seq` mentre le altre note `N_*2` sono nell'ordine di 44–961: c'è un salto numerico marcato. `N_C2=44` è la nota più grave (registro APU = 44 → freq ~131 Hz, Do2). `N_E2=458` non segue la formula `2048-131072/f` in modo coerente con gli altri `N_*2` (es. `N_D2` non è definito): vale la pena verificare che la discesa finale `N_G2 N_E3 N_C3 … N_E2 N_C3 N_G2 … N_C2` suoni effettivamente come inteso. Sospetto di coerenza tonale da validare all'ascolto. + +--- + +## 8. Mappa mentale del flusso runtime + +``` +main.loop (VBL-synced) + ├─ app_state==0 → title_update (no-op) [musica: VBL interrupt → play_music_tick] + │ └─ J_START fronte → engine_init() + └─ app_state==1 → engine_update + ├─ if game_over: + │ ├─ game_over_timer>0 → countdown; a 0: svuota BG (sconfitta) o mostra next_level (vittoria) + │ ├─ timer==0 → metasprite GAME OVER + player + (enemy se vicino) + │ └─ J_START → engine_init() (riavvio) + ├─ update_enemy_logic() [AI greedy, cooldown, hitbox → game_over=1] + └─ update_player_movement [DAS, LERP, salto, stamina, vittoria → game_over=2] + └─ durante is_moving: scroll/move_bkg + draw_map a frame 8 + sprite +``` + +--- + +## 9. Conclusione + +"A Scream from the Dark" è un piccolo gioiello di ingegneria embedded: realizza proiezione isometrica, generazione procedurale, AI di inseguimento, audio polifonico e un'interfaccia stamina — tutto nei 32 KB e 8 KB WRAM di un Game Boy del 1989. Il valore didattico è alto: ogni modulo è un caso di studio su come **tradurre feature "moderne" in matematica a punto fisso e gestione diretta dei registri hardware**. Le incongruenze principali erano cosmetiche (README/doc da allineare all'identità attuale, asset `victory` orfano) e non intaccavano la correttezza; sono state risolte in questa revisione. Il codice è in ottima forma per essere esteso (più livelli con difficoltà crescente, nuovi nemici, oggetti raccoglibili) o usato come base per tutorial di sviluppo GB. \ No newline at end of file diff --git a/doc/generation.md b/doc/generation.md index 30cf47f..a88fc5b 100644 --- a/doc/generation.md +++ b/doc/generation.md @@ -17,7 +17,10 @@ Un "Perfect Maze" è frustrante in un gioco di inseguimento, perché intrappola Pertanto, è stata aggiunta una *Fase 2* alla generazione: l'algoritmo scansiona i muri rimanenti e, se un muro divide due stanze adiacenti, lo abbatte con una probabilità del 15%. Questo genera anelli (loop) all'interno del labirinto, permettendo al giocatore tattiche evasive per aggirare il fantasma. -## Posizionamento del Traguardo (Vittoria) +## Posizionamento del Traguardo (La Botola) -La casella traguardo (il "Portale") deve essere logicamente il punto più lontano dalla partenza (situata in alto a sinistra a `1,1`). -Per trovarla, l'algoritmo calcola la **Distanza di Manhattan** (`|X1 - X2| + |Y1 - Y2|`) di ogni cella percorribile rispetto a `1,1`. La cella con il valore più alto viene designata con ID 2, trasformandola graficamente nel portale di fine livello. +La casella traguardo è una **botola** nel terreno (ID 2) che il giocatore deve raggiungere per "sprofondare più giù" (*Going Deeper*) e avanzare di livello. +Invece di cercare il punto matematicamente più lontano dalla partenza, l'algoritmo attuale sceglie un **punto casuale sul bordo sud** della mappa (`y = MAP_SIZE - 2`) tra le celle calpestabili di quella riga. Questo permette alla botola di apparire in una posizione imprevedibile lungo il bordo sud ad ogni partita. +Se, per un caso limite, la riga in fondo fosse inaccessibile, esiste un **fallback estremo** che posiziona la botola nell'angolo `(MAP_SIZE-2, MAP_SIZE-2)`. + +Nota: storicamente il posizionamento usava la **Distanza di Manhattan** massima rispetto a `1,1`; il comportamento è stato cambiato per aumentare la varietà delle partite. La botola è disegnata con un oggetto complesso a maschera 4-vicini nel Pass 2 del renderer (vedi `graphics.md`). diff --git a/src/enemy.c b/src/enemy.c index 0f40f15..a3c5a8e 100644 --- a/src/enemy.c +++ b/src/enemy.c @@ -1,5 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /enemy.png -c /enemy.c -sw 16 -sh 16 -bpp 2 -noflip -keep_palette_order -sp 0x10 #include #include @@ -8,50 +7,170 @@ BANKREF(enemy) const palette_color_t enemy_palettes[32] = { - RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), + RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33) + , RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) - }; + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + +}; const uint8_t enemy_tiles[512] = { - 0x07,0x07,0x08,0x0f,0x17,0x18,0x1f,0x12,0x1c,0x13,0x3f,0x23,0x2e,0x31,0x17,0x18, - 0x09,0x0e,0x09,0x0e,0x04,0x07,0x04,0x07,0x05,0x06,0x0b,0x0d,0x06,0x06,0x00,0x00, - 0xc0,0xc0,0x20,0xe0,0xd0,0x30,0xf0,0x50,0x70,0x90,0xf0,0x90,0xf8,0x18,0xfc,0x04, - 0xf8,0x08,0xf0,0x30,0xc0,0x40,0xc0,0x40,0xc0,0x40,0x80,0x80,0x00,0x00,0x00,0x00, - 0x07,0x07,0x08,0x0f,0x17,0x18,0x1f,0x12,0x1c,0x13,0x1f,0x13,0x2e,0x31,0x27,0x38, - 0x13,0x1c,0x09,0x0e,0x04,0x07,0x04,0x07,0x05,0x06,0x02,0x03,0x01,0x01,0x00,0x00, - 0xc0,0xc0,0x20,0xe0,0xd0,0x30,0xf0,0x50,0x70,0x90,0xf0,0x90,0xf8,0x18,0xfc,0x04, - 0xf8,0x08,0xf0,0x30,0xc0,0x40,0xc0,0x40,0xc0,0x40,0xc0,0x40,0x80,0x80,0x00,0x00, - 0x03,0x03,0x04,0x07,0x0b,0x0c,0x0f,0x0a,0x0e,0x09,0x0f,0x09,0x1f,0x18,0x3f,0x20, - 0x1f,0x10,0x0f,0x0c,0x03,0x02,0x03,0x02,0x03,0x02,0x01,0x01,0x00,0x00,0x00,0x00, - 0xe0,0xe0,0x10,0xf0,0xe8,0x18,0xf8,0x48,0x38,0xc8,0xfc,0xc4,0x74,0x8c,0xe8,0x18, - 0x90,0x70,0x90,0x70,0x20,0xe0,0x20,0xe0,0xa0,0x60,0xd0,0xb0,0x60,0x60,0x00,0x00, - 0x03,0x03,0x04,0x07,0x0b,0x0c,0x0f,0x0a,0x0e,0x09,0x0f,0x09,0x1f,0x18,0x3f,0x20, - 0x1f,0x10,0x0f,0x0c,0x03,0x02,0x03,0x02,0x03,0x02,0x03,0x02,0x01,0x01,0x00,0x00, - 0xe0,0xe0,0x10,0xf0,0xe8,0x18,0xf8,0x48,0x38,0xc8,0xf8,0xc8,0x74,0x8c,0xe4,0x1c, - 0xc8,0x38,0x90,0x70,0x20,0xe0,0x20,0xe0,0xa0,0x60,0x40,0xc0,0x80,0x80,0x00,0x00, - 0x03,0x03,0x04,0x07,0x0b,0x0c,0x0f,0x08,0x0f,0x08,0x0f,0x08,0x1f,0x18,0x3f,0x20, - 0x1f,0x10,0x0f,0x0c,0x03,0x02,0x03,0x02,0x03,0x02,0x01,0x01,0x00,0x00,0x00,0x00, - 0xe0,0xe0,0x10,0xf0,0xe8,0x18,0xf8,0x08,0xf8,0x08,0xf8,0x08,0xe8,0x18,0xd0,0x30, - 0x90,0x70,0x90,0x70,0x20,0xe0,0x20,0xe0,0xa0,0x60,0xd0,0xb0,0x60,0x60,0x00,0x00, - 0x03,0x03,0x04,0x07,0x0b,0x0c,0x0f,0x08,0x0f,0x08,0x0f,0x08,0x1f,0x18,0x3f,0x20, - 0x1f,0x10,0x0f,0x0c,0x03,0x02,0x03,0x02,0x03,0x02,0x03,0x02,0x01,0x01,0x00,0x00, - 0xe0,0xe0,0x10,0xf0,0xe8,0x18,0xf8,0x08,0xf8,0x08,0xf8,0x08,0xe8,0x18,0xd0,0x30, - 0x90,0x70,0x90,0x70,0x20,0xe0,0x20,0xe0,0xa0,0x60,0x40,0xc0,0x80,0x80,0x00,0x00, - 0x07,0x07,0x08,0x0f,0x17,0x18,0x1f,0x10,0x1f,0x10,0x1f,0x10,0x17,0x18,0x0b,0x0c, - 0x09,0x0e,0x09,0x0e,0x04,0x07,0x04,0x07,0x05,0x06,0x0b,0x0d,0x06,0x06,0x00,0x00, - 0xc0,0xc0,0x20,0xe0,0xd0,0x30,0xf0,0x10,0xf0,0x10,0xf0,0x10,0xf8,0x18,0xfc,0x04, - 0xf8,0x08,0xf0,0x30,0xc0,0x40,0xc0,0x40,0xc0,0x40,0x80,0x80,0x00,0x00,0x00,0x00, - 0x07,0x07,0x08,0x0f,0x17,0x18,0x1f,0x10,0x1f,0x10,0x1f,0x10,0x17,0x18,0x0b,0x0c, - 0x09,0x0e,0x09,0x0e,0x04,0x07,0x04,0x07,0x05,0x06,0x02,0x03,0x01,0x01,0x00,0x00, - 0xc0,0xc0,0x20,0xe0,0xd0,0x30,0xf0,0x10,0xf0,0x10,0xf0,0x10,0xf8,0x18,0xfc,0x04, - 0xf8,0x08,0xf0,0x30,0xc0,0x40,0xc0,0x40,0xc0,0x40,0xc0,0x40,0x80,0x80,0x00,0x00 - }; + 0x07,0x07,0x08,0x0f, + 0x17,0x18,0x1f,0x12, + 0x1c,0x13,0x3f,0x23, + 0x2e,0x31,0x17,0x18, + 0x09,0x0e,0x09,0x0e, + 0x04,0x07,0x04,0x07, + 0x05,0x06,0x0b,0x0d, + 0x06,0x06,0x00,0x00, + +0xc0,0xc0,0x20,0xe0, + 0xd0,0x30,0xf0,0x50, + 0x70,0x90,0xf0,0x90, + 0xf8,0x18,0xfc,0x04, + 0xf8,0x08,0xf0,0x30, + 0xc0,0x40,0xc0,0x40, + 0xc0,0x40,0x80,0x80, + 0x00,0x00,0x00,0x00, + +0x07,0x07,0x08,0x0f, + 0x17,0x18,0x1f,0x12, + 0x1c,0x13,0x1f,0x13, + 0x2e,0x31,0x27,0x38, + 0x13,0x1c,0x09,0x0e, + 0x04,0x07,0x04,0x07, + 0x05,0x06,0x02,0x03, + 0x01,0x01,0x00,0x00, + +0xc0,0xc0,0x20,0xe0, + 0xd0,0x30,0xf0,0x50, + 0x70,0x90,0xf0,0x90, + 0xf8,0x18,0xfc,0x04, + 0xf8,0x08,0xf0,0x30, + 0xc0,0x40,0xc0,0x40, + 0xc0,0x40,0xc0,0x40, + 0x80,0x80,0x00,0x00, + +0x03,0x03,0x04,0x07, + 0x0b,0x0c,0x0f,0x0a, + 0x0e,0x09,0x0f,0x09, + 0x1f,0x18,0x3f,0x20, + 0x1f,0x10,0x0f,0x0c, + 0x03,0x02,0x03,0x02, + 0x03,0x02,0x01,0x01, + 0x00,0x00,0x00,0x00, + +0xe0,0xe0,0x10,0xf0, + 0xe8,0x18,0xf8,0x48, + 0x38,0xc8,0xfc,0xc4, + 0x74,0x8c,0xe8,0x18, + 0x90,0x70,0x90,0x70, + 0x20,0xe0,0x20,0xe0, + 0xa0,0x60,0xd0,0xb0, + 0x60,0x60,0x00,0x00, + +0x03,0x03,0x04,0x07, + 0x0b,0x0c,0x0f,0x0a, + 0x0e,0x09,0x0f,0x09, + 0x1f,0x18,0x3f,0x20, + 0x1f,0x10,0x0f,0x0c, + 0x03,0x02,0x03,0x02, + 0x03,0x02,0x03,0x02, + 0x01,0x01,0x00,0x00, + +0xe0,0xe0,0x10,0xf0, + 0xe8,0x18,0xf8,0x48, + 0x38,0xc8,0xf8,0xc8, + 0x74,0x8c,0xe4,0x1c, + 0xc8,0x38,0x90,0x70, + 0x20,0xe0,0x20,0xe0, + 0xa0,0x60,0x40,0xc0, + 0x80,0x80,0x00,0x00, + +0x03,0x03,0x04,0x07, + 0x0b,0x0c,0x0f,0x08, + 0x0f,0x08,0x0f,0x08, + 0x1f,0x18,0x3f,0x20, + 0x1f,0x10,0x0f,0x0c, + 0x03,0x02,0x03,0x02, + 0x03,0x02,0x01,0x01, + 0x00,0x00,0x00,0x00, + +0xe0,0xe0,0x10,0xf0, + 0xe8,0x18,0xf8,0x08, + 0xf8,0x08,0xf8,0x08, + 0xe8,0x18,0xd0,0x30, + 0x90,0x70,0x90,0x70, + 0x20,0xe0,0x20,0xe0, + 0xa0,0x60,0xd0,0xb0, + 0x60,0x60,0x00,0x00, + +0x03,0x03,0x04,0x07, + 0x0b,0x0c,0x0f,0x08, + 0x0f,0x08,0x0f,0x08, + 0x1f,0x18,0x3f,0x20, + 0x1f,0x10,0x0f,0x0c, + 0x03,0x02,0x03,0x02, + 0x03,0x02,0x03,0x02, + 0x01,0x01,0x00,0x00, + +0xe0,0xe0,0x10,0xf0, + 0xe8,0x18,0xf8,0x08, + 0xf8,0x08,0xf8,0x08, + 0xe8,0x18,0xd0,0x30, + 0x90,0x70,0x90,0x70, + 0x20,0xe0,0x20,0xe0, + 0xa0,0x60,0x40,0xc0, + 0x80,0x80,0x00,0x00, + +0x07,0x07,0x08,0x0f, + 0x17,0x18,0x1f,0x10, + 0x1f,0x10,0x1f,0x10, + 0x17,0x18,0x0b,0x0c, + 0x09,0x0e,0x09,0x0e, + 0x04,0x07,0x04,0x07, + 0x05,0x06,0x0b,0x0d, + 0x06,0x06,0x00,0x00, + +0xc0,0xc0,0x20,0xe0, + 0xd0,0x30,0xf0,0x10, + 0xf0,0x10,0xf0,0x10, + 0xf8,0x18,0xfc,0x04, + 0xf8,0x08,0xf0,0x30, + 0xc0,0x40,0xc0,0x40, + 0xc0,0x40,0x80,0x80, + 0x00,0x00,0x00,0x00, + +0x07,0x07,0x08,0x0f, + 0x17,0x18,0x1f,0x10, + 0x1f,0x10,0x1f,0x10, + 0x17,0x18,0x0b,0x0c, + 0x09,0x0e,0x09,0x0e, + 0x04,0x07,0x04,0x07, + 0x05,0x06,0x02,0x03, + 0x01,0x01,0x00,0x00, + +0xc0,0xc0,0x20,0xe0, + 0xd0,0x30,0xf0,0x10, + 0xf0,0x10,0xf0,0x10, + 0xf8,0x18,0xfc,0x04, + 0xf8,0x08,0xf0,0x30, + 0xc0,0x40,0xc0,0x40, + 0xc0,0x40,0xc0,0x40, + 0x80,0x80,0x00,0x00 + +}; const metasprite_t enemy_metasprite0[] = { METASPR_ITEM(-8, -8, 0, S_PAL(0) | S_PALETTE), diff --git a/src/enemy.h b/src/enemy.h index dd87940..d261a28 100644 --- a/src/enemy.h +++ b/src/enemy.h @@ -1,6 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /enemy.png -c /enemy.c -sw 16 -sh 16 -bpp 2 -noflip -keep_palette_order -sp 0x10 - #ifndef METASPRITE_enemy_H #define METASPRITE_enemy_H diff --git a/src/gameover.c b/src/gameover.c index 6652a1c..b59d206 100644 --- a/src/gameover.c +++ b/src/gameover.c @@ -1,5 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /gameover.png -c /gameover.c -bpp 2 -noflip -keep_palette_order #include #include @@ -8,38 +7,116 @@ BANKREF(gameover) const palette_color_t gameover_palettes[32] = { - RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), + RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33) + , RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) - }; + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + +}; const uint8_t gameover_tiles[320] = { - 0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xfc,0xfe,0xf8,0xfc,0xf8,0xfd,0xf8,0xfd, - 0xf8,0xfd,0xf8,0xfc,0xfc,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x1e,0xff,0x0c,0x1e,0x08,0xfd,0xf8,0xfd,0x88,0xfc, - 0x88,0xdd,0x08,0xdd,0x08,0x1d,0x19,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x79,0xff,0x38,0x7d,0x18,0xbc,0x18,0xbd,0x18,0x3d, - 0x18,0xbd,0x18,0xbd,0x18,0xbd,0x99,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x98,0xff,0x18,0xbc,0x18,0x3d,0x18,0xbc,0x18,0xbd, - 0x18,0xbd,0x18,0xbc,0x18,0xbf,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0xff,0x0f,0x1f,0x0f,0xff,0x1f,0x3f,0x0f,0xff, - 0xff,0xff,0x0f,0x1f,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xf8,0xfc,0xf8,0xfd,0xf8,0xfd,0xf8,0xfd, - 0xf8,0xfd,0xf8,0xfc,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x39,0xff,0x18,0x3d,0x18,0xbd,0x18,0xbd,0x18,0xbd, - 0x18,0xbd,0x1c,0x3e,0x3e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x98,0xff,0x18,0xbc,0x18,0xbd,0x18,0xbc,0x18,0xbd, - 0x18,0xbd,0x38,0x7c,0x78,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x18,0xff,0x08,0x1c,0x08,0xfd,0x18,0x3c,0x08,0xfd, - 0xf8,0xfd,0x08,0x1d,0x19,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xff,0x1f,0x3f,0x1f,0xbf,0x3f,0x7f,0x1f,0xbf, - 0x1f,0xbf,0x1f,0xbf,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff - }; + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xff, + 0xfc,0xfe,0xf8,0xfc, + 0xf8,0xfd,0xf8,0xfd, + 0xf8,0xfd,0xf8,0xfc, + 0xfc,0xfe,0xfe,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0x1e,0xff, + 0x0c,0x1e,0x08,0xfd, + 0xf8,0xfd,0x88,0xfc, + 0x88,0xdd,0x08,0xdd, + 0x08,0x1d,0x19,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0x79,0xff, + 0x38,0x7d,0x18,0xbc, + 0x18,0xbd,0x18,0x3d, + 0x18,0xbd,0x18,0xbd, + 0x18,0xbd,0x99,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0x98,0xff, + 0x18,0xbc,0x18,0x3d, + 0x18,0xbc,0x18,0xbd, + 0x18,0xbd,0x18,0xbc, + 0x18,0xbf,0x9f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0x1f,0xff, + 0x0f,0x1f,0x0f,0xff, + 0x1f,0x3f,0x0f,0xff, + 0xff,0xff,0x0f,0x1f, + 0x1f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xff, + 0xf8,0xfc,0xf8,0xfd, + 0xf8,0xfd,0xf8,0xfd, + 0xf8,0xfd,0xf8,0xfc, + 0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0x39,0xff, + 0x18,0x3d,0x18,0xbd, + 0x18,0xbd,0x18,0xbd, + 0x18,0xbd,0x1c,0x3e, + 0x3e,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0x98,0xff, + 0x18,0xbc,0x18,0xbd, + 0x18,0xbc,0x18,0xbd, + 0x18,0xbd,0x38,0x7c, + 0x78,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0x18,0xff, + 0x08,0x1c,0x08,0xfd, + 0x18,0x3c,0x08,0xfd, + 0xf8,0xfd,0x08,0x1d, + 0x19,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + +0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0xff, + 0x1f,0x3f,0x1f,0xbf, + 0x3f,0x7f,0x1f,0xbf, + 0x1f,0xbf,0x1f,0xbf, + 0x9f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff + +}; const metasprite_t gameover_metasprite0[] = { METASPR_ITEM(-8, -40, 0, S_PAL(0)), diff --git a/src/gameover.h b/src/gameover.h index 12649f5..91c9978 100644 --- a/src/gameover.h +++ b/src/gameover.h @@ -1,6 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /gameover.png -c /gameover.c -bpp 2 -noflip -keep_palette_order - #ifndef METASPRITE_gameover_H #define METASPRITE_gameover_H diff --git a/src/next_level.c b/src/next_level.c index 98a1d7e..7cf4ccd 100644 --- a/src/next_level.c +++ b/src/next_level.c @@ -1,5 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /next_level.png -c /next_level.c -map -bpp 2 -noflip -max_palettes 1 #include #include @@ -9,245 +8,954 @@ BANKREF(next_level) const palette_color_t next_level_palettes[4] = { RGB8(255,255,255), RGB8(170,170,170), RGB8( 85, 85, 85), RGB8( 0, 0, 0) - }; + +}; const uint8_t next_level_tiles[3776] = { - 0xff,0xff,0xf6,0xff,0xd0,0xbf,0xfb,0xbf,0x6f,0xe7,0xff,0x4f,0x7f,0xdf,0xbf,0xbf, - 0x3f,0x3f,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xfd,0xff,0xff,0xff,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x3f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xdf,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xfd,0xff,0xfd,0xff,0xf5,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x67,0xbf,0x47,0xbf, - 0xff,0xff,0x7f,0xff,0xbf,0xff,0xaf,0xff,0x57,0xff,0x57,0xfb,0x6f,0xdb,0x7d,0xd7, - 0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xfd,0xf9,0xfb,0xff,0xff,0xff,0xff,0xfe,0xfe, - 0x7f,0x7f,0x7f,0x7f,0xff,0xff,0xff,0xcf,0xcf,0xdf,0x8f,0x9f,0x1f,0x3f,0x03,0x17, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xfc,0xff,0xf9,0xff, - 0xf5,0xff,0xe9,0xff,0xd5,0xff,0xb5,0xff,0xe5,0xff,0xe9,0xff,0xaa,0xff,0x5a,0xff, - 0x4d,0xbf,0x5f,0xbf,0x37,0xff,0x7d,0xff,0x8f,0xff,0x07,0xff,0x0f,0xff,0x0f,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff,0xbf,0xff,0xbf,0xff,0x7f,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xfd,0xff,0xfd,0xff, - 0x3f,0xee,0x7d,0xef,0x1d,0xe7,0x77,0xfe,0xdf,0xfb,0xd7,0xfb,0x59,0xff,0xdd,0xff, - 0xff,0xff,0x7f,0x7f,0xff,0xbf,0xdf,0xdf,0xff,0x67,0xff,0xbf,0xff,0xdf,0xff,0xff, - 0xfe,0xfe,0xfe,0xff,0xe4,0xfc,0xe4,0xfc,0xc0,0xf8,0xc0,0xf0,0xf0,0xf0,0xe0,0xe0, - 0x03,0x1f,0x0f,0x07,0x03,0x03,0x03,0x03,0x02,0x03,0x0c,0x03,0x00,0x03,0x01,0x00, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x3f,0xff,0x3f,0xff, - 0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xf6,0xff,0xcc,0xff,0xbb,0xff,0xf7,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff, - 0xda,0xff,0xba,0xff,0xba,0xff,0x36,0xff,0x77,0xff,0xef,0xff,0xef,0xff,0xff,0xdf, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xbf,0xff,0xff,0xff, - 0x0f,0xff,0x0d,0xff,0x0b,0xff,0x13,0xff,0x37,0xff,0x7f,0xff,0xff,0xff,0xff,0xdf, - 0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xde,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xa0,0xe0,0xe0,0xe0,0xe0,0xe0,0xe0,0xe0,0xf0,0xe0,0xc1,0xf1,0xe1,0xf9,0xf7,0xf9, - 0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x01,0x00,0x72,0x21,0xb0,0x27,0xbb,0x3f, - 0x3f,0xff,0x3f,0xff,0x7f,0xff,0x7f,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xff,0xf5,0xf6, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xff, - 0xbf,0xdf,0x7f,0xdf,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xef,0xf7,0xef,0xff, - 0xdf,0xff,0xdf,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x7e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xf3,0xff,0xff,0xff,0xff,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xfe,0xfe,0xff,0xff, - 0x3f,0x7f,0xbf,0xbf,0xbf,0xbf,0xff,0xff,0xff,0xff,0x7f,0x7f,0xcf,0xcf,0x2f,0x2f, - 0xeb,0xef,0xdf,0xde,0xc2,0xd4,0xe1,0xe1,0xfa,0xea,0xf0,0xf0,0xe9,0xe9,0xe0,0xe8, - 0xdf,0xff,0xff,0x7f,0x7f,0x7f,0xff,0xbf,0x5f,0x7f,0x97,0x97,0x5f,0x5f,0x9f,0x9f, - 0xdf,0xff,0xbf,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xdf,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0xff,0xff,0xff, - 0xfa,0xfe,0xfb,0xff,0xfb,0xff,0xf7,0xff,0xf7,0xff,0x8c,0xff,0x5c,0xaf,0xff,0xff, - 0xf7,0xe7,0x34,0x24,0xf6,0xfe,0xbf,0xfe,0xfe,0xff,0xf7,0xff,0xe1,0xff,0xff,0xff, - 0xf7,0xff,0x7f,0x7f,0x7f,0x7f,0x38,0x38,0x15,0xd4,0xab,0xee,0xeb,0xff,0xff,0xff, - 0xa6,0xe6,0xf1,0xf1,0x97,0x17,0x78,0x08,0xcf,0x0f,0x6c,0xc5,0xa6,0xe2,0xe2,0xe2, - 0x5f,0x1f,0x1f,0x7f,0xff,0x6f,0x6d,0xcf,0xdf,0xb7,0x2f,0xff,0x7f,0x5f,0xb3,0xbf, - 0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,0x7f,0xff,0xff,0xff,0xff,0xff, - 0x7f,0xff,0x87,0xff,0xc0,0xff,0xc0,0xff,0xe0,0xff,0xf0,0xff,0xf8,0xff,0x3f,0xff, - 0xff,0xff,0xff,0xff,0x7e,0xff,0x06,0xff,0x03,0xff,0x01,0xff,0x01,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x3f,0xff,0x07,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xfe,0xff,0xfd,0xff,0xfd,0xfb,0xf3,0xff,0xf6,0xef,0xff,0xec, - 0xff,0xff,0xef,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xff,0xf3,0xff,0xff,0xff, - 0xff,0xff,0xdf,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xdf,0xff,0xdc,0xff,0xd8,0xff, - 0xff,0xff,0xf8,0xff,0xe0,0xff,0xc0,0xff,0x80,0xff,0x00,0xfe,0x00,0xfe,0x00,0xfe, - 0x7b,0xb0,0x70,0xbf,0x60,0xbf,0xe0,0x7f,0xe0,0x7f,0x40,0x7f,0x40,0x7f,0xc0,0xff, - 0xc0,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x1d,0xe3, - 0xff,0xff,0x10,0xff,0x10,0xff,0x31,0xff,0x1f,0xff,0x71,0xf1,0xe0,0xe0,0xcf,0xcf, - 0x15,0xf7,0x3b,0xf1,0x79,0xf8,0xdc,0xf8,0xac,0xdc,0xf9,0xca,0x7d,0x7d,0x7e,0x2e, - 0x7b,0x7f,0x5b,0xf7,0x6f,0xe7,0xcf,0xdf,0xff,0x3f,0xff,0x7f,0xef,0xdf,0x1f,0xff, - 0xc1,0xff,0xc1,0xff,0xc0,0xff,0xc0,0xff,0xc0,0xff,0xf0,0xff,0x9d,0xff,0xbf,0xdf, - 0x7c,0xff,0xdc,0xdf,0xc4,0xc7,0xc3,0xc7,0x83,0x83,0xa1,0xa1,0x69,0x61,0x6b,0xed, - 0x3f,0xff,0x02,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x80,0xff,0x80,0xff,0x80,0xff, - 0xf9,0xf7,0x38,0xf7,0x38,0xf7,0x1c,0xfb,0x1c,0xfb,0x08,0xfb,0x0c,0xfd,0x0e,0xfd, - 0xff,0xff,0x7f,0xff,0x1f,0xff,0x0f,0xff,0x07,0xff,0x03,0xff,0x01,0xff,0x00,0xff, - 0xff,0xff,0xff,0xff,0xbf,0xff,0xbf,0xff,0xbf,0xff,0xdf,0xff,0xdf,0xff,0xdf,0xff, - 0xff,0xfe,0xff,0xfc,0xf3,0xff,0xde,0xff,0xff,0xff,0xfb,0xff,0xe7,0xff,0xff,0xff, - 0xdf,0x7d,0xbb,0xbf,0x4b,0xff,0xfe,0xf5,0xfe,0xef,0x7f,0xec,0xbf,0xdc,0x87,0xfb, - 0xff,0xff,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0x00,0xff,0xff,0xff,0xfe,0xff,0xfe,0xff,0xfe,0xff,0xfe,0xfd,0xfb,0xfd, - 0xf8,0xbf,0x7f,0xbf,0xff,0xff,0xff,0xe0,0xc0,0xff,0xc0,0xff,0x84,0xff,0x08,0xff, - 0x00,0xfe,0xfe,0xc0,0xff,0xff,0xed,0x01,0x03,0xfd,0x01,0xf9,0x03,0xfb,0x02,0xfb, - 0xc0,0xff,0xe1,0xc0,0xff,0xff,0xec,0x00,0x00,0xff,0x00,0xff,0x03,0xff,0x0e,0xff, - 0xc3,0x07,0xff,0x7f,0xff,0xff,0x73,0x3d,0xee,0xff,0x97,0xfe,0x27,0xdf,0xe7,0xff, - 0xd7,0x8f,0x83,0xbf,0x87,0xff,0xff,0xff,0x3f,0x3f,0xbf,0x7f,0x9e,0xff,0xfe,0xff, - 0x57,0xb7,0x9f,0xdb,0xfb,0xfb,0xfd,0xfb,0xff,0xfd,0xfd,0xfc,0xff,0xfe,0x7f,0xff, - 0xff,0xff,0x3f,0x3f,0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0x1f,0xff, - 0x47,0xbf,0x09,0xff,0xbe,0xb1,0xfe,0xe1,0xfe,0xf9,0xf6,0xfd,0xef,0xfe,0xff,0xff, - 0xab,0xef,0xff,0xff,0xff,0xff,0x1e,0xff,0x0f,0xff,0x13,0xff,0x61,0xbf,0xf0,0x4f, - 0x00,0xff,0xff,0x00,0xff,0xff,0x00,0xff,0x00,0xff,0x80,0xff,0xe0,0xff,0x70,0xff, - 0x0e,0xfd,0xff,0x0c,0xff,0xff,0x03,0xff,0x03,0xff,0x01,0xff,0x01,0xff,0x01,0xff, - 0x00,0xff,0xff,0x00,0xff,0xff,0x03,0x0f,0x00,0x7f,0x00,0x7f,0x40,0x3f,0xc0,0xbf, - 0x6f,0xff,0x63,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0x1b,0xff,0x1d,0xff,0x0f,0xfd, - 0xff,0xff,0xff,0xfe,0xff,0xff,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x7b,0xff,0xf7,0xff,0xff,0xff,0xef,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0x7f,0x3f,0xff,0xbf,0xdf,0xff,0x67,0xfd,0x7b,0x7e,0xbf, - 0xfd,0xff,0xfd,0xff,0xff,0xff,0xfb,0xff,0xf7,0xff,0xff,0xff,0xfe,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xf3,0xfd,0xf7,0xf9,0xe7,0xfb,0xc3,0xff,0x07,0xff,0xff,0xff,0x7d,0x8e,0xac,0xcf, - 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x48,0xb6, - 0x02,0xfb,0x06,0xf7,0x04,0xf7,0x15,0xe7,0xc7,0xff,0xff,0xff,0x77,0xff,0x47,0xff, - 0x19,0xff,0x73,0xfd,0xcf,0xfd,0xfe,0x83,0xfd,0x03,0xfe,0x01,0xff,0x80,0xef,0xf0, - 0xde,0x9e,0xec,0xef,0xfb,0xf7,0xfe,0xfd,0xff,0xff,0x7f,0x7f,0xbf,0x3f,0x9f,0x1f, - 0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,0x9f,0xff, - 0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x90,0x8f,0x88,0xe7,0x84,0xf3,0xd0,0xf9,0xc7,0xff,0xcf,0xfe,0xcd,0xfc,0xef,0xf8, - 0x18,0xff,0x1f,0xff,0x71,0xff,0xc0,0xff,0xc0,0xbf,0x80,0x7f,0xc0,0x3f,0xc3,0x3f, - 0x01,0xff,0x01,0xff,0xc0,0xff,0xe0,0xff,0x70,0xff,0x7f,0xff,0xff,0xff,0xff,0xff, - 0xc0,0xbf,0xc0,0xbf,0xf0,0x8f,0x80,0x8f,0xcf,0xc0,0xff,0xff,0xff,0xf0,0xf8,0xf7, - 0x0f,0xfc,0x0f,0xfe,0x07,0xfe,0x07,0xfe,0xff,0x07,0xff,0xff,0x03,0xff,0x03,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xbf,0xff, - 0x7f,0xde,0xff,0xff,0xaf,0xff,0xff,0xdf,0xff,0xff,0xf9,0xff,0xfd,0xff,0xff,0x7f, - 0xff,0xff,0xdf,0xff,0xff,0xff,0xbf,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff, - 0x2c,0xcf,0x18,0xdf,0x38,0xdf,0x38,0xdf,0x10,0xff,0x30,0xff,0x30,0xff,0xf0,0xff, - 0x00,0xfe,0x00,0xfe,0x00,0xfe,0x01,0xfe,0x00,0xff,0x01,0xff,0x01,0xff,0x03,0xff, - 0x47,0xff,0xcf,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xf6,0xfb,0xf9,0xfe,0xfb,0xfc,0xfd,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xcf,0x0f,0xef,0x0f,0xf7,0x0f,0xec,0x19,0x96,0x78,0xff,0xe0,0xdf,0xe0,0xf7,0xf8, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x3f,0x3f,0xcf,0x0f,0xe7,0x07, - 0x9f,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfe,0xfd,0xfc,0xfa,0xfb, - 0xfd,0xf2,0xff,0xf8,0xde,0xef,0xdf,0xc7,0x3f,0x01,0xf9,0x07,0xfb,0x07,0xf7,0x0f, - 0xb7,0x6f,0x8f,0x7f,0xdf,0x3f,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xf0,0xf7,0xf4,0xf3,0xf0,0xf3,0xf0,0xfb,0xfc,0xfb,0xfe,0xfd,0xfe,0xfd,0xfe,0xff, - 0x03,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff, - 0xdf,0xff,0xff,0xdf,0xff,0xdf,0xff,0xff,0x6f,0xff,0x6f,0xff,0x6f,0xff,0x76,0xff, - 0xbf,0xff,0xff,0xff,0xdf,0xff,0xcf,0xff,0xef,0xff,0xef,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xfb,0x73,0x7b,0x7b,0x73,0xff,0xf7, - 0xfa,0xff,0xff,0xff,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x01,0xff,0xff,0xff,0x1f,0xff,0x9f,0xff,0xbf,0xff,0xbf,0xff,0x7f,0xff,0x7f,0xff, - 0x7c,0xff,0xff,0xff,0xff,0x80,0x84,0xff,0x82,0xff,0x80,0xff,0xc0,0xff,0xc0,0xff, - 0x03,0xff,0xff,0xff,0xf1,0x3f,0xe0,0x3f,0xe0,0x3f,0xa0,0x7f,0xe0,0x7f,0x60,0x7f, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x3f,0xff,0x1f,0xff,0x07,0xff, - 0xfb,0xfc,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xef,0x1f,0xc9,0x38,0x3e,0xf0,0xff,0xc0,0xff,0xe2,0xff,0xf1,0xff,0xf8,0xfd,0xfe, - 0xff,0xff,0xff,0xff,0x7f,0x7f,0xbf,0x3f,0xdf,0x1f,0xf7,0x07,0xe3,0x1b,0xb8,0x70, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfe,0xfd,0xfc,0xfe,0xf7,0xee,0xe3, - 0xf7,0xf3,0xef,0xe0,0x9f,0xc0,0x3e,0x01,0x7d,0x03,0xfb,0x07,0xf7,0x0f,0x1f,0xff, - 0x2f,0xdf,0xdf,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xf8,0xff,0xf0,0xff,0xe0,0xff,0xc0,0xff, - 0x9f,0xff,0xff,0xff,0xdf,0xc0,0xc0,0xdf,0x40,0xdf,0x40,0xdf,0x70,0xef,0x71,0xef, - 0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xfd,0xff,0xfd,0xfe,0xff,0xff,0xff, - 0xf7,0xf7,0xff,0xef,0xff,0xef,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0x61,0x7f,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x87,0xff,0xff,0xff,0xff,0xff,0xf7,0x03,0x07,0xf7, - 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xe0,0xfe,0xe0,0xfe,0xf1,0xfe,0xf0,0xff,0xfc,0xff,0xff,0xff,0xff,0xfc,0xfc,0xff, - 0x60,0x7f,0xc0,0xff,0xc0,0xff,0xc0,0xff,0xf9,0xff,0xff,0xff,0xff,0x00,0x00,0xff, - 0x03,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0xf9,0xff,0xff,0xff,0xdf,0x07,0x0e,0xe7, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x07,0xff,0x01,0xff, - 0x3f,0xe0,0xff,0xc4,0xdf,0xe0,0xff,0xf0,0xfb,0xfc,0xfd,0xfe,0xff,0xff,0xff,0xff, - 0x1f,0x01,0xff,0x00,0xff,0x01,0xfd,0x03,0xff,0x07,0xff,0x0f,0xdf,0x3f,0xff,0xff, - 0xbf,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xfe,0xff,0xfc,0xff,0xf8,0xff,0xf0,0xff,0xff,0xff,0x9f,0xf8,0x1c,0xfb, - 0x80,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x1f,0xff,0xff,0xff,0x7f,0x00,0x00,0xff, - 0x71,0xef,0x73,0xef,0x73,0xff,0x7f,0xff,0x7f,0xff,0xff,0xff,0xbf,0x1f,0x1f,0xff, - 0xff,0xff,0xf3,0xff,0xf3,0xff,0xfb,0xff,0xf9,0xff,0xff,0xff,0xfe,0xff,0xfe,0xfd, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xf7,0xf7,0xff,0xf7,0xff,0xf7,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xff,0xff,0xff, - 0x00,0xff,0x00,0xff,0x00,0xff,0x80,0xff,0xc0,0xff,0xe0,0xff,0xf0,0xff,0xf8,0xff, - 0x04,0xf7,0x04,0xf7,0x04,0xf7,0x04,0xef,0x0c,0xef,0x0c,0xef,0x0c,0xef,0x0c,0xef, - 0x00,0xff,0x00,0xff,0x08,0xff,0x38,0xff,0x0e,0xef,0x02,0xf3,0x01,0xff,0x00,0xff, - 0xff,0xff,0x3f,0xff,0x1f,0xff,0x1f,0xff,0x07,0xff,0x01,0xff,0x00,0xff,0x00,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xf8,0xff, - 0xfe,0xff,0xfc,0xff,0xf0,0xff,0xf0,0xff,0xc0,0xff,0x00,0xff,0x00,0xff,0x00,0xff, - 0x08,0xfb,0x08,0xfb,0x08,0xfb,0x0a,0xfd,0x0e,0xfd,0x0e,0xfd,0x0e,0xfd,0x0e,0xfd, - 0x00,0xff,0x00,0xff,0x00,0xff,0x01,0xff,0x03,0xff,0x07,0xff,0x0f,0xff,0x1f,0xff, - 0x3d,0xff,0x7d,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xfd,0xff,0xfd,0xff,0xfd,0xfe,0xff,0xfe,0xff,0xfe,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff, - 0xff,0xff,0xff,0xff,0xf9,0xff,0xe7,0xff,0xff,0xff,0xfe,0xff,0xfe,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,0xe7,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x06,0xff,0x16,0xef,0xde,0xff,0xdc,0xff,0xdc,0xff, - 0xff,0xff,0xc7,0xff,0xff,0xff,0x17,0xef,0x01,0xc1,0x18,0x84,0x04,0xba,0x04,0x3e, - 0xfe,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xf8,0xf8,0xf3,0xf3,0xf7,0xf7,0x67,0x67, - 0x0e,0xef,0x9f,0xff,0xff,0xff,0xc0,0xff,0x20,0x3c,0x1c,0x1c,0xdc,0xdc,0xcc,0xcc, - 0x00,0xff,0xff,0xff,0xff,0xff,0xef,0xf0,0x40,0xef,0x40,0xe7,0x40,0xe3,0xc0,0xeb, - 0x00,0xff,0xe7,0xff,0xff,0xff,0xff,0x00,0x00,0xdf,0x00,0xde,0x00,0xdc,0x00,0xdd, - 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0x07,0x07,0x07,0x00,0x63,0x08,0xf3,0x08,0xf3, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xf8,0x7b,0xfb,0x3b,0xfb,0x1b,0xfb, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3e,0x3e,0x8e,0x8e,0xee,0xee,0xe6,0xe6, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x03,0x02,0x63,0x7e,0x43,0x7e,0x03,0x7e, - 0xe0,0xff,0xf6,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xbf,0x00,0xbf,0x00,0xbf, - 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x03,0x00,0xc0,0x02,0xde,0x01,0xdf,0x01,0xdf, - 0x1e,0xfd,0xfe,0xff,0xff,0xff,0xc3,0xff,0x00,0xf0,0x07,0x77,0x37,0x37,0x37,0x37, - 0x3f,0xff,0x7f,0xff,0xff,0xff,0x08,0xf7,0x18,0x18,0xfb,0x7b,0xfb,0x7b,0xfb,0x7b, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0x1f,0xcf,0xcf,0xef,0xef,0xe7,0xe7, - 0x7f,0xff,0xff,0xff,0xff,0xff,0x8f,0xf7,0xff,0x9f,0xff,0x9f,0xff,0xdf,0xff,0xdf, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc7,0xff,0xff,0xff,0xff, - 0xbf,0x7f,0xff,0xff,0xff,0xff,0xe1,0xff,0xff,0xcf,0xff,0xdf,0xef,0xff,0xff,0xef, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x3f,0xff,0xff,0xff, - 0x1d,0x3f,0x7b,0x7f,0x78,0x78,0x3a,0x3e,0x3e,0x3e,0xbe,0xbe,0x8c,0x8c,0xc1,0xc1, - 0xef,0xef,0xef,0xef,0x6f,0x6f,0x67,0x67,0x67,0x67,0x77,0x77,0x71,0x71,0xf8,0xf8, - 0xcc,0xcc,0xec,0xec,0xec,0xec,0xec,0xec,0xcc,0xcc,0xdc,0xdc,0x9c,0x9c,0x3c,0x3c, - 0xc0,0xe9,0xe0,0xed,0xec,0xec,0xee,0xee,0xef,0xef,0xef,0xef,0xef,0xef,0xef,0xef, - 0x00,0xdd,0x00,0xdd,0x00,0xdd,0x00,0x5d,0x5c,0x5c,0x1c,0x1c,0x9e,0x9e,0x9f,0x9f, - 0x0c,0xf7,0x0c,0xf7,0x00,0xc3,0x08,0xf3,0x08,0xf3,0xf0,0xfb,0x72,0x73,0x07,0x07, - 0x1b,0xfb,0x03,0xfb,0x03,0xfb,0x01,0xfb,0x00,0xfb,0x00,0xfb,0x40,0xfb,0xf8,0xf8, - 0xe6,0xe6,0xf4,0xf6,0xf4,0xf6,0xe0,0xe6,0xe0,0xe6,0x00,0xee,0x00,0x8e,0x3e,0x3e, - 0x03,0x7e,0x03,0x02,0x03,0x7e,0x03,0x7e,0x03,0x7e,0x03,0x7e,0x02,0x7f,0x01,0x01, - 0x00,0xbf,0x00,0x81,0x00,0xbf,0x03,0xbf,0x3f,0xbf,0xbf,0xbf,0xbf,0xbf,0x80,0x80, - 0x03,0xdf,0x0e,0xde,0x00,0xc0,0xdf,0xdf,0xdf,0xdf,0xdf,0xdf,0xdf,0xdf,0xdf,0xdf, - 0x37,0x37,0x70,0x70,0x77,0x77,0xf7,0xf7,0xf7,0xf7,0xf7,0xf7,0xf7,0xf7,0xf0,0xf0, - 0xfb,0x7b,0x3b,0x3b,0x78,0xf8,0x7b,0xfb,0x7b,0xfb,0xba,0xfb,0xba,0xfb,0x1b,0x1b, - 0xef,0xef,0xcf,0xcf,0x1f,0x0f,0x8f,0x9f,0xdf,0xdf,0xcf,0xcf,0xef,0xef,0xe7,0xe7, - 0xdf,0xff,0xcf,0xff,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xff,0xff,0xff, - 0xff,0xef,0xff,0xff,0xf7,0xff,0xf7,0xff,0xff,0xff,0xfb,0xff,0xfb,0xff,0xff,0xff, - 0xff,0xff,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0x3f,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0x8f,0xf0,0xf1,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0x7f,0xfe,0x3f,0x7f,0x9f,0xff,0x9f,0xff,0x9f,0xbf,0xff,0xbf,0xff, - 0xff,0xff,0xff,0xff,0x3f,0xff,0xff,0x1f,0xff,0xdf,0xff,0xdf,0xff,0xff,0xff,0xff, - 0xff,0xff,0xc3,0xff,0xfb,0xff,0xfb,0xff,0xfb,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xf8,0x7f,0xff,0x27,0xff,0xaf,0xef,0xff,0xef,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0x70,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xf7, - 0xff,0xff,0xf7,0xef,0xc7,0xef,0xff,0xdf,0xff,0xdf,0xff,0xdf,0xef,0xff,0xef,0xff, - 0xff,0xff,0xff,0xfc,0xfe,0xfd,0xff,0xfd,0xff,0xfe,0xff,0xfe,0xff,0xff,0xff,0xff, - 0xff,0xff,0xe0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xfe,0xff,0xfe,0xfe,0xfc,0xfc, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x01,0xff,0xe1,0xff,0xff,0xff, - 0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc3,0xff,0xf1,0xfb,0xfd, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc3,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x1f,0xff,0xff,0xff, - 0xff,0xef,0xee,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xf7,0xff,0xf3,0xff,0xfb, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x47,0xbf,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0xff,0xff,0xff,0xff,0xff, - 0xf8,0xf8,0xf0,0xf0,0xfc,0xfc,0xfc,0xfe,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff + 0xff,0xff,0xf6,0xff, + 0xd0,0xbf,0xfb,0xbf, + 0x6f,0xe7,0xff,0x4f, + 0x7f,0xdf,0xbf,0xbf, + 0x3f,0x3f,0xff,0x7f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfd,0xff,0xff,0xff, + 0xfe,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x3f,0x3f,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xef,0xdf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfd,0xff,0xfd,0xff, + 0xfd,0xff,0xf5,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x67,0xbf,0x47,0xbf, + 0xff,0xff,0x7f,0xff, + 0xbf,0xff,0xaf,0xff, + 0x57,0xff,0x57,0xfb, + 0x6f,0xdb,0x7d,0xd7, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xfd, + 0xf9,0xfb,0xff,0xff, + 0xff,0xff,0xfe,0xfe, + 0x7f,0x7f,0x7f,0x7f, + 0xff,0xff,0xff,0xcf, + 0xcf,0xdf,0x8f,0x9f, + 0x1f,0x3f,0x03,0x17, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xff, + 0xfc,0xff,0xf9,0xff, + 0xf5,0xff,0xe9,0xff, + 0xd5,0xff,0xb5,0xff, + 0xe5,0xff,0xe9,0xff, + 0xaa,0xff,0x5a,0xff, + 0x4d,0xbf,0x5f,0xbf, + 0x37,0xff,0x7d,0xff, + 0x8f,0xff,0x07,0xff, + 0x0f,0xff,0x0f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0x7f,0xff,0xbf,0xff, + 0xbf,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xff, + 0xfd,0xff,0xfd,0xff, + 0x3f,0xee,0x7d,0xef, + 0x1d,0xe7,0x77,0xfe, + 0xdf,0xfb,0xd7,0xfb, + 0x59,0xff,0xdd,0xff, + 0xff,0xff,0x7f,0x7f, + 0xff,0xbf,0xdf,0xdf, + 0xff,0x67,0xff,0xbf, + 0xff,0xdf,0xff,0xff, + 0xfe,0xfe,0xfe,0xff, + 0xe4,0xfc,0xe4,0xfc, + 0xc0,0xf8,0xc0,0xf0, + 0xf0,0xf0,0xe0,0xe0, + 0x03,0x1f,0x0f,0x07, + 0x03,0x03,0x03,0x03, + 0x02,0x03,0x0c,0x03, + 0x00,0x03,0x01,0x00, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0x3f,0xff,0x3f,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf6,0xff,0xcc,0xff, + 0xbb,0xff,0xf7,0xff, + 0xff,0xff,0xfe,0xff, + 0xff,0xff,0xff,0xff, + 0xda,0xff,0xba,0xff, + 0xba,0xff,0x36,0xff, + 0x77,0xff,0xef,0xff, + 0xef,0xff,0xff,0xdf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0xbf,0xff,0xff,0xff, + 0x0f,0xff,0x0d,0xff, + 0x0b,0xff,0x13,0xff, + 0x37,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xdf, + 0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfd,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xde,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xdf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xa0,0xe0,0xe0,0xe0, + 0xe0,0xe0,0xe0,0xe0, + 0xf0,0xe0,0xc1,0xf1, + 0xe1,0xf9,0xf7,0xf9, + 0x00,0x00,0x00,0x00, + 0x00,0x80,0x00,0x00, + 0x01,0x00,0x72,0x21, + 0xb0,0x27,0xbb,0x3f, + 0x3f,0xff,0x3f,0xff, + 0x7f,0xff,0x7f,0xff, + 0xff,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf7,0xff,0xf5,0xf6, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0xff, + 0xbf,0xdf,0x7f,0xdf, + 0xff,0xff,0xff,0xff, + 0xfd,0xff,0xff,0xff, + 0xef,0xf7,0xef,0xff, + 0xdf,0xff,0xdf,0xff, + 0xdf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7e,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf3,0xff,0xff,0xff, + 0xff,0xff,0x3f,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0xfe,0xff,0xff, + 0x3f,0x7f,0xbf,0xbf, + 0xbf,0xbf,0xff,0xff, + 0xff,0xff,0x7f,0x7f, + 0xcf,0xcf,0x2f,0x2f, + 0xeb,0xef,0xdf,0xde, + 0xc2,0xd4,0xe1,0xe1, + 0xfa,0xea,0xf0,0xf0, + 0xe9,0xe9,0xe0,0xe8, + 0xdf,0xff,0xff,0x7f, + 0x7f,0x7f,0xff,0xbf, + 0x5f,0x7f,0x97,0x97, + 0x5f,0x5f,0x9f,0x9f, + 0xdf,0xff,0xbf,0xff, + 0xbf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xdf,0xff,0xbf,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf8,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xbf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xc0,0xff,0xff,0xff, + 0xfa,0xfe,0xfb,0xff, + 0xfb,0xff,0xf7,0xff, + 0xf7,0xff,0x8c,0xff, + 0x5c,0xaf,0xff,0xff, + 0xf7,0xe7,0x34,0x24, + 0xf6,0xfe,0xbf,0xfe, + 0xfe,0xff,0xf7,0xff, + 0xe1,0xff,0xff,0xff, + 0xf7,0xff,0x7f,0x7f, + 0x7f,0x7f,0x38,0x38, + 0x15,0xd4,0xab,0xee, + 0xeb,0xff,0xff,0xff, + 0xa6,0xe6,0xf1,0xf1, + 0x97,0x17,0x78,0x08, + 0xcf,0x0f,0x6c,0xc5, + 0xa6,0xe2,0xe2,0xe2, + 0x5f,0x1f,0x1f,0x7f, + 0xff,0x6f,0x6d,0xcf, + 0xdf,0xb7,0x2f,0xff, + 0x7f,0x5f,0xb3,0xbf, + 0xbf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xe3,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x87,0xff, + 0xc0,0xff,0xc0,0xff, + 0xe0,0xff,0xf0,0xff, + 0xf8,0xff,0x3f,0xff, + 0xff,0xff,0xff,0xff, + 0x7e,0xff,0x06,0xff, + 0x03,0xff,0x01,0xff, + 0x01,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x3f,0xff, + 0x07,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xdf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0xff,0xfd,0xff, + 0xfd,0xfb,0xf3,0xff, + 0xf6,0xef,0xff,0xec, + 0xff,0xff,0xef,0xff, + 0xef,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xf7,0xff, + 0xf3,0xff,0xff,0xff, + 0xff,0xff,0xdf,0xff, + 0xff,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xef,0xff, + 0xff,0xff,0xdf,0xff, + 0xdc,0xff,0xd8,0xff, + 0xff,0xff,0xf8,0xff, + 0xe0,0xff,0xc0,0xff, + 0x80,0xff,0x00,0xfe, + 0x00,0xfe,0x00,0xfe, + 0x7b,0xb0,0x70,0xbf, + 0x60,0xbf,0xe0,0x7f, + 0xe0,0x7f,0x40,0x7f, + 0x40,0x7f,0xc0,0xff, + 0xc0,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x1d,0xe3, + 0xff,0xff,0x10,0xff, + 0x10,0xff,0x31,0xff, + 0x1f,0xff,0x71,0xf1, + 0xe0,0xe0,0xcf,0xcf, + 0x15,0xf7,0x3b,0xf1, + 0x79,0xf8,0xdc,0xf8, + 0xac,0xdc,0xf9,0xca, + 0x7d,0x7d,0x7e,0x2e, + 0x7b,0x7f,0x5b,0xf7, + 0x6f,0xe7,0xcf,0xdf, + 0xff,0x3f,0xff,0x7f, + 0xef,0xdf,0x1f,0xff, + 0xc1,0xff,0xc1,0xff, + 0xc0,0xff,0xc0,0xff, + 0xc0,0xff,0xf0,0xff, + 0x9d,0xff,0xbf,0xdf, + 0x7c,0xff,0xdc,0xdf, + 0xc4,0xc7,0xc3,0xc7, + 0x83,0x83,0xa1,0xa1, + 0x69,0x61,0x6b,0xed, + 0x3f,0xff,0x02,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x80,0xff, + 0x80,0xff,0x80,0xff, + 0xf9,0xf7,0x38,0xf7, + 0x38,0xf7,0x1c,0xfb, + 0x1c,0xfb,0x08,0xfb, + 0x0c,0xfd,0x0e,0xfd, + 0xff,0xff,0x7f,0xff, + 0x1f,0xff,0x0f,0xff, + 0x07,0xff,0x03,0xff, + 0x01,0xff,0x00,0xff, + 0xff,0xff,0xff,0xff, + 0xbf,0xff,0xbf,0xff, + 0xbf,0xff,0xdf,0xff, + 0xdf,0xff,0xdf,0xff, + 0xff,0xfe,0xff,0xfc, + 0xf3,0xff,0xde,0xff, + 0xff,0xff,0xfb,0xff, + 0xe7,0xff,0xff,0xff, + 0xdf,0x7d,0xbb,0xbf, + 0x4b,0xff,0xfe,0xf5, + 0xfe,0xef,0x7f,0xec, + 0xbf,0xdc,0x87,0xfb, + 0xff,0xff,0xfc,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0xff, + 0xff,0xff,0xfe,0xff, + 0xfe,0xff,0xfe,0xff, + 0xfe,0xfd,0xfb,0xfd, + 0xf8,0xbf,0x7f,0xbf, + 0xff,0xff,0xff,0xe0, + 0xc0,0xff,0xc0,0xff, + 0x84,0xff,0x08,0xff, + 0x00,0xfe,0xfe,0xc0, + 0xff,0xff,0xed,0x01, + 0x03,0xfd,0x01,0xf9, + 0x03,0xfb,0x02,0xfb, + 0xc0,0xff,0xe1,0xc0, + 0xff,0xff,0xec,0x00, + 0x00,0xff,0x00,0xff, + 0x03,0xff,0x0e,0xff, + 0xc3,0x07,0xff,0x7f, + 0xff,0xff,0x73,0x3d, + 0xee,0xff,0x97,0xfe, + 0x27,0xdf,0xe7,0xff, + 0xd7,0x8f,0x83,0xbf, + 0x87,0xff,0xff,0xff, + 0x3f,0x3f,0xbf,0x7f, + 0x9e,0xff,0xfe,0xff, + 0x57,0xb7,0x9f,0xdb, + 0xfb,0xfb,0xfd,0xfb, + 0xff,0xfd,0xfd,0xfc, + 0xff,0xfe,0x7f,0xff, + 0xff,0xff,0x3f,0x3f, + 0xff,0xff,0xff,0xff, + 0xbf,0xff,0xff,0xff, + 0xff,0xff,0x1f,0xff, + 0x47,0xbf,0x09,0xff, + 0xbe,0xb1,0xfe,0xe1, + 0xfe,0xf9,0xf6,0xfd, + 0xef,0xfe,0xff,0xff, + 0xab,0xef,0xff,0xff, + 0xff,0xff,0x1e,0xff, + 0x0f,0xff,0x13,0xff, + 0x61,0xbf,0xf0,0x4f, + 0x00,0xff,0xff,0x00, + 0xff,0xff,0x00,0xff, + 0x00,0xff,0x80,0xff, + 0xe0,0xff,0x70,0xff, + 0x0e,0xfd,0xff,0x0c, + 0xff,0xff,0x03,0xff, + 0x03,0xff,0x01,0xff, + 0x01,0xff,0x01,0xff, + 0x00,0xff,0xff,0x00, + 0xff,0xff,0x03,0x0f, + 0x00,0x7f,0x00,0x7f, + 0x40,0x3f,0xc0,0xbf, + 0x6f,0xff,0x63,0xff, + 0xff,0xff,0xff,0xff, + 0xfb,0xff,0x1b,0xff, + 0x1d,0xff,0x0f,0xfd, + 0xff,0xff,0xff,0xfe, + 0xff,0xff,0xf7,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x7b,0xff,0xf7, + 0xff,0xff,0xff,0xef, + 0xdf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x7f,0x3f,0xff, + 0xbf,0xdf,0xff,0x67, + 0xfd,0x7b,0x7e,0xbf, + 0xfd,0xff,0xfd,0xff, + 0xff,0xff,0xfb,0xff, + 0xf7,0xff,0xff,0xff, + 0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xe0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf3,0xfd,0xf7,0xf9, + 0xe7,0xfb,0xc3,0xff, + 0x07,0xff,0xff,0xff, + 0x7d,0x8e,0xac,0xcf, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x00,0x48,0xb6, + 0x02,0xfb,0x06,0xf7, + 0x04,0xf7,0x15,0xe7, + 0xc7,0xff,0xff,0xff, + 0x77,0xff,0x47,0xff, + 0x19,0xff,0x73,0xfd, + 0xcf,0xfd,0xfe,0x83, + 0xfd,0x03,0xfe,0x01, + 0xff,0x80,0xef,0xf0, + 0xde,0x9e,0xec,0xef, + 0xfb,0xf7,0xfe,0xfd, + 0xff,0xff,0x7f,0x7f, + 0xbf,0x3f,0x9f,0x1f, + 0x9f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xbf,0xff,0x9f,0xff, + 0xff,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x90,0x8f,0x88,0xe7, + 0x84,0xf3,0xd0,0xf9, + 0xc7,0xff,0xcf,0xfe, + 0xcd,0xfc,0xef,0xf8, + 0x18,0xff,0x1f,0xff, + 0x71,0xff,0xc0,0xff, + 0xc0,0xbf,0x80,0x7f, + 0xc0,0x3f,0xc3,0x3f, + 0x01,0xff,0x01,0xff, + 0xc0,0xff,0xe0,0xff, + 0x70,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xc0,0xbf,0xc0,0xbf, + 0xf0,0x8f,0x80,0x8f, + 0xcf,0xc0,0xff,0xff, + 0xff,0xf0,0xf8,0xf7, + 0x0f,0xfc,0x0f,0xfe, + 0x07,0xfe,0x07,0xfe, + 0xff,0x07,0xff,0xff, + 0x03,0xff,0x03,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xbf,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0xbf,0xff, + 0x7f,0xde,0xff,0xff, + 0xaf,0xff,0xff,0xdf, + 0xff,0xff,0xf9,0xff, + 0xfd,0xff,0xff,0x7f, + 0xff,0xff,0xdf,0xff, + 0xff,0xff,0xbf,0xff, + 0xbf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xff, + 0x2c,0xcf,0x18,0xdf, + 0x38,0xdf,0x38,0xdf, + 0x10,0xff,0x30,0xff, + 0x30,0xff,0xf0,0xff, + 0x00,0xfe,0x00,0xfe, + 0x00,0xfe,0x01,0xfe, + 0x00,0xff,0x01,0xff, + 0x01,0xff,0x03,0xff, + 0x47,0xff,0xcf,0xff, + 0x9f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf6,0xfb,0xf9,0xfe, + 0xfb,0xfc,0xfd,0xfe, + 0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xcf,0x0f,0xef,0x0f, + 0xf7,0x0f,0xec,0x19, + 0x96,0x78,0xff,0xe0, + 0xdf,0xe0,0xf7,0xf8, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x7f,0x3f,0x3f, + 0xcf,0x0f,0xe7,0x07, + 0x9f,0xff,0x9f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xfe, + 0xfd,0xfc,0xfa,0xfb, + 0xfd,0xf2,0xff,0xf8, + 0xde,0xef,0xdf,0xc7, + 0x3f,0x01,0xf9,0x07, + 0xfb,0x07,0xf7,0x0f, + 0xb7,0x6f,0x8f,0x7f, + 0xdf,0x3f,0x3f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf0,0xf7,0xf4,0xf3, + 0xf0,0xf3,0xf0,0xfb, + 0xfc,0xfb,0xfe,0xfd, + 0xfe,0xfd,0xfe,0xff, + 0x03,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0xdf,0xff,0xff,0xdf, + 0xff,0xdf,0xff,0xff, + 0x6f,0xff,0x6f,0xff, + 0x6f,0xff,0x76,0xff, + 0xbf,0xff,0xff,0xff, + 0xdf,0xff,0xcf,0xff, + 0xef,0xff,0xef,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfb,0xfb,0x73,0x7b, + 0x7b,0x73,0xff,0xf7, + 0xfa,0xff,0xff,0xff, + 0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x01,0xff,0xff,0xff, + 0x1f,0xff,0x9f,0xff, + 0xbf,0xff,0xbf,0xff, + 0x7f,0xff,0x7f,0xff, + 0x7c,0xff,0xff,0xff, + 0xff,0x80,0x84,0xff, + 0x82,0xff,0x80,0xff, + 0xc0,0xff,0xc0,0xff, + 0x03,0xff,0xff,0xff, + 0xf1,0x3f,0xe0,0x3f, + 0xe0,0x3f,0xa0,0x7f, + 0xe0,0x7f,0x60,0x7f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x3f,0xff, + 0x1f,0xff,0x07,0xff, + 0xfb,0xfc,0xfd,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xef,0x1f,0xc9,0x38, + 0x3e,0xf0,0xff,0xc0, + 0xff,0xe2,0xff,0xf1, + 0xff,0xf8,0xfd,0xfe, + 0xff,0xff,0xff,0xff, + 0x7f,0x7f,0xbf,0x3f, + 0xdf,0x1f,0xf7,0x07, + 0xe3,0x1b,0xb8,0x70, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0xfe,0xfd,0xfc, + 0xfe,0xf7,0xee,0xe3, + 0xf7,0xf3,0xef,0xe0, + 0x9f,0xc0,0x3e,0x01, + 0x7d,0x03,0xfb,0x07, + 0xf7,0x0f,0x1f,0xff, + 0x2f,0xdf,0xdf,0xff, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xff, + 0xf8,0xff,0xf0,0xff, + 0xe0,0xff,0xc0,0xff, + 0x9f,0xff,0xff,0xff, + 0xdf,0xc0,0xc0,0xdf, + 0x40,0xdf,0x40,0xdf, + 0x70,0xef,0x71,0xef, + 0xf0,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfb,0xff, + 0xff,0xfd,0xff,0xfd, + 0xfe,0xff,0xff,0xff, + 0xf7,0xf7,0xff,0xef, + 0xff,0xef,0xff,0xdf, + 0xff,0xff,0xff,0xff, + 0xff,0x61,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x87,0xff, + 0xff,0xff,0xff,0xff, + 0xf7,0x03,0x07,0xf7, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xe0,0xfe,0xe0,0xfe, + 0xf1,0xfe,0xf0,0xff, + 0xfc,0xff,0xff,0xff, + 0xff,0xfc,0xfc,0xff, + 0x60,0x7f,0xc0,0xff, + 0xc0,0xff,0xc0,0xff, + 0xf9,0xff,0xff,0xff, + 0xff,0x00,0x00,0xff, + 0x03,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0xf9,0xff,0xff,0xff, + 0xdf,0x07,0x0e,0xe7, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x9f,0xff,0xff,0xff, + 0x07,0xff,0x01,0xff, + 0x3f,0xe0,0xff,0xc4, + 0xdf,0xe0,0xff,0xf0, + 0xfb,0xfc,0xfd,0xfe, + 0xff,0xff,0xff,0xff, + 0x1f,0x01,0xff,0x00, + 0xff,0x01,0xfd,0x03, + 0xff,0x07,0xff,0x0f, + 0xdf,0x3f,0xff,0xff, + 0xbf,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xff, + 0xfc,0xff,0xf8,0xff, + 0xf0,0xff,0xff,0xff, + 0x9f,0xf8,0x1c,0xfb, + 0x80,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x1f,0xff,0xff,0xff, + 0x7f,0x00,0x00,0xff, + 0x71,0xef,0x73,0xef, + 0x73,0xff,0x7f,0xff, + 0x7f,0xff,0xff,0xff, + 0xbf,0x1f,0x1f,0xff, + 0xff,0xff,0xf3,0xff, + 0xf3,0xff,0xfb,0xff, + 0xf9,0xff,0xff,0xff, + 0xfe,0xff,0xfe,0xfd, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x3f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xbf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf7,0xf7,0xff,0xf7, + 0xff,0xf7,0xff,0xef, + 0xff,0xef,0xff,0xef, + 0xff,0xff,0xff,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x80,0xff, + 0xc0,0xff,0xe0,0xff, + 0xf0,0xff,0xf8,0xff, + 0x04,0xf7,0x04,0xf7, + 0x04,0xf7,0x04,0xef, + 0x0c,0xef,0x0c,0xef, + 0x0c,0xef,0x0c,0xef, + 0x00,0xff,0x00,0xff, + 0x08,0xff,0x38,0xff, + 0x0e,0xef,0x02,0xf3, + 0x01,0xff,0x00,0xff, + 0xff,0xff,0x3f,0xff, + 0x1f,0xff,0x1f,0xff, + 0x07,0xff,0x01,0xff, + 0x00,0xff,0x00,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfc,0xff,0xf8,0xff, + 0xfe,0xff,0xfc,0xff, + 0xf0,0xff,0xf0,0xff, + 0xc0,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x08,0xfb,0x08,0xfb, + 0x08,0xfb,0x0a,0xfd, + 0x0e,0xfd,0x0e,0xfd, + 0x0e,0xfd,0x0e,0xfd, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x01,0xff, + 0x03,0xff,0x07,0xff, + 0x0f,0xff,0x1f,0xff, + 0x3d,0xff,0x7d,0xff, + 0xfd,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xfd,0xff,0xfd, + 0xff,0xfd,0xfe,0xff, + 0xfe,0xff,0xfe,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xf9,0xff,0xe7,0xff, + 0xff,0xff,0xfe,0xff, + 0xfe,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xe3,0xff, + 0xe7,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x06,0xff, + 0x16,0xef,0xde,0xff, + 0xdc,0xff,0xdc,0xff, + 0xff,0xff,0xc7,0xff, + 0xff,0xff,0x17,0xef, + 0x01,0xc1,0x18,0x84, + 0x04,0xba,0x04,0x3e, + 0xfe,0xff,0xfe,0xff, + 0xff,0xff,0xff,0xff, + 0xf8,0xf8,0xf3,0xf3, + 0xf7,0xf7,0x67,0x67, + 0x0e,0xef,0x9f,0xff, + 0xff,0xff,0xc0,0xff, + 0x20,0x3c,0x1c,0x1c, + 0xdc,0xdc,0xcc,0xcc, + 0x00,0xff,0xff,0xff, + 0xff,0xff,0xef,0xf0, + 0x40,0xef,0x40,0xe7, + 0x40,0xe3,0xc0,0xeb, + 0x00,0xff,0xe7,0xff, + 0xff,0xff,0xff,0x00, + 0x00,0xdf,0x00,0xde, + 0x00,0xdc,0x00,0xdd, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0xff,0x07, + 0x07,0x07,0x00,0x63, + 0x08,0xf3,0x08,0xf3, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf8,0xf8,0x7b,0xfb, + 0x3b,0xfb,0x1b,0xfb, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x3e,0x3e,0x8e,0x8e, + 0xee,0xee,0xe6,0xe6, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfe, + 0x03,0x02,0x63,0x7e, + 0x43,0x7e,0x03,0x7e, + 0xe0,0xff,0xf6,0xff, + 0xff,0xff,0xff,0x00, + 0x00,0x00,0x00,0xbf, + 0x00,0xbf,0x00,0xbf, + 0x00,0xff,0xff,0xff, + 0xff,0xff,0xff,0x03, + 0x00,0xc0,0x02,0xde, + 0x01,0xdf,0x01,0xdf, + 0x1e,0xfd,0xfe,0xff, + 0xff,0xff,0xc3,0xff, + 0x00,0xf0,0x07,0x77, + 0x37,0x37,0x37,0x37, + 0x3f,0xff,0x7f,0xff, + 0xff,0xff,0x08,0xf7, + 0x18,0x18,0xfb,0x7b, + 0xfb,0x7b,0xfb,0x7b, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x1f,0x1f,0xcf,0xcf, + 0xef,0xef,0xe7,0xe7, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0x8f,0xf7, + 0xff,0x9f,0xff,0x9f, + 0xff,0xdf,0xff,0xdf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xc7, + 0xff,0xff,0xff,0xff, + 0xbf,0x7f,0xff,0xff, + 0xff,0xff,0xe1,0xff, + 0xff,0xcf,0xff,0xdf, + 0xef,0xff,0xff,0xef, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf7,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0x3f,0xff,0xff,0xff, + 0x1d,0x3f,0x7b,0x7f, + 0x78,0x78,0x3a,0x3e, + 0x3e,0x3e,0xbe,0xbe, + 0x8c,0x8c,0xc1,0xc1, + 0xef,0xef,0xef,0xef, + 0x6f,0x6f,0x67,0x67, + 0x67,0x67,0x77,0x77, + 0x71,0x71,0xf8,0xf8, + 0xcc,0xcc,0xec,0xec, + 0xec,0xec,0xec,0xec, + 0xcc,0xcc,0xdc,0xdc, + 0x9c,0x9c,0x3c,0x3c, + 0xc0,0xe9,0xe0,0xed, + 0xec,0xec,0xee,0xee, + 0xef,0xef,0xef,0xef, + 0xef,0xef,0xef,0xef, + 0x00,0xdd,0x00,0xdd, + 0x00,0xdd,0x00,0x5d, + 0x5c,0x5c,0x1c,0x1c, + 0x9e,0x9e,0x9f,0x9f, + 0x0c,0xf7,0x0c,0xf7, + 0x00,0xc3,0x08,0xf3, + 0x08,0xf3,0xf0,0xfb, + 0x72,0x73,0x07,0x07, + 0x1b,0xfb,0x03,0xfb, + 0x03,0xfb,0x01,0xfb, + 0x00,0xfb,0x00,0xfb, + 0x40,0xfb,0xf8,0xf8, + 0xe6,0xe6,0xf4,0xf6, + 0xf4,0xf6,0xe0,0xe6, + 0xe0,0xe6,0x00,0xee, + 0x00,0x8e,0x3e,0x3e, + 0x03,0x7e,0x03,0x02, + 0x03,0x7e,0x03,0x7e, + 0x03,0x7e,0x03,0x7e, + 0x02,0x7f,0x01,0x01, + 0x00,0xbf,0x00,0x81, + 0x00,0xbf,0x03,0xbf, + 0x3f,0xbf,0xbf,0xbf, + 0xbf,0xbf,0x80,0x80, + 0x03,0xdf,0x0e,0xde, + 0x00,0xc0,0xdf,0xdf, + 0xdf,0xdf,0xdf,0xdf, + 0xdf,0xdf,0xdf,0xdf, + 0x37,0x37,0x70,0x70, + 0x77,0x77,0xf7,0xf7, + 0xf7,0xf7,0xf7,0xf7, + 0xf7,0xf7,0xf0,0xf0, + 0xfb,0x7b,0x3b,0x3b, + 0x78,0xf8,0x7b,0xfb, + 0x7b,0xfb,0xba,0xfb, + 0xba,0xfb,0x1b,0x1b, + 0xef,0xef,0xcf,0xcf, + 0x1f,0x0f,0x8f,0x9f, + 0xdf,0xdf,0xcf,0xcf, + 0xef,0xef,0xe7,0xe7, + 0xdf,0xff,0xcf,0xff, + 0xff,0xef,0xff,0xef, + 0xff,0xef,0xff,0xef, + 0xff,0xff,0xff,0xff, + 0xff,0xef,0xff,0xff, + 0xf7,0xff,0xf7,0xff, + 0xff,0xff,0xfb,0xff, + 0xfb,0xff,0xff,0xff, + 0xff,0xff,0xe0,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0xff, + 0xff,0xff,0x7f,0xff, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x8f,0xf0, + 0xf1,0xff,0xfe,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x7f, + 0xfe,0x3f,0x7f,0x9f, + 0xff,0x9f,0xff,0x9f, + 0xbf,0xff,0xbf,0xff, + 0xff,0xff,0xff,0xff, + 0x3f,0xff,0xff,0x1f, + 0xff,0xdf,0xff,0xdf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xc3,0xff, + 0xfb,0xff,0xfb,0xff, + 0xfb,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x00,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xf8,0x7f, + 0xff,0x27,0xff,0xaf, + 0xef,0xff,0xef,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x70,0xbf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xf7,0xf7, + 0xff,0xff,0xf7,0xef, + 0xc7,0xef,0xff,0xdf, + 0xff,0xdf,0xff,0xdf, + 0xef,0xff,0xef,0xff, + 0xff,0xff,0xff,0xfc, + 0xfe,0xfd,0xff,0xfd, + 0xff,0xfe,0xff,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xe0,0x3f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0xff,0xff,0xfe,0xff, + 0xfe,0xfe,0xfc,0xfc, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfb,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x01,0xff, + 0xe1,0xff,0xff,0xff, + 0xbf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xc3, + 0xff,0xf1,0xfb,0xfd, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfd,0xc3, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x1f,0xff,0xff,0xff, + 0xff,0xef,0xee,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xf8,0xf7, + 0xff,0xf3,0xff,0xfb, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x47,0xbf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x3f,0xff, + 0xff,0xff,0xff,0xff, + 0xf8,0xf8,0xf0,0xf0, + 0xfc,0xfc,0xfc,0xfe, + 0xfe,0xfe,0xff,0xff, + 0xff,0xff,0xff,0xff }; diff --git a/src/next_level.h b/src/next_level.h index a513c38..e3c229e 100644 --- a/src/next_level.h +++ b/src/next_level.h @@ -1,6 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /next_level.png -c /next_level.c -map -bpp 2 -noflip -max_palettes 1 - #ifndef METASPRITE_next_level_H #define METASPRITE_next_level_H diff --git a/src/player.c b/src/player.c index c5f584c..f9de847 100644 --- a/src/player.c +++ b/src/player.c @@ -1,5 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /player.png -c /player.c -sw 16 -sh 16 -bpp 2 -noflip -keep_palette_order #include #include @@ -8,46 +7,152 @@ BANKREF(player) const palette_color_t player_palettes[32] = { - RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), + RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33) + , RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) - }; + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + +}; const uint8_t player_tiles[448] = { - 0x0f,0x0f,0x10,0x1f,0x27,0x3f,0x2b,0x3c,0x2e,0x39,0x2f,0x39,0x2f,0x38,0x2f,0x39, - 0x1f,0x1c,0x2f,0x3f,0x28,0x3f,0x38,0x2f,0x3c,0x3f,0x0a,0x0e,0x1e,0x1e,0x1e,0x1e, - 0xf0,0xf0,0x08,0xf8,0xe4,0xfc,0xd4,0x3c,0xd4,0x3c,0xf4,0x3c,0xf4,0x1c,0xf4,0xfc, - 0xf8,0x38,0xf4,0xfc,0x14,0xfc,0x1c,0xf4,0x3c,0xfc,0x50,0x70,0x78,0x78,0x78,0x78, - 0x0f,0x0f,0x10,0x1f,0x27,0x3f,0x2b,0x3c,0x2e,0x39,0x2f,0x39,0x2f,0x38,0x2f,0x39, - 0x1f,0x1c,0x2f,0x3f,0x28,0x3f,0x38,0x2f,0x3c,0x3f,0x08,0x0c,0x1c,0x1c,0x1c,0x1c, - 0xf0,0xf0,0x08,0xf8,0xe4,0xfc,0xd4,0x3c,0xd4,0x3c,0xf4,0x3c,0xf4,0x1c,0xf4,0xfc, - 0xf8,0x38,0xf4,0xfc,0x14,0xfc,0x1c,0xf4,0x3c,0xfc,0x20,0x60,0xe0,0xe0,0xe0,0xe0, - 0x0f,0x0f,0x10,0x1f,0x27,0x3f,0x2b,0x3c,0x2b,0x3c,0x2f,0x3c,0x2f,0x38,0x2f,0x3f, - 0x1f,0x1c,0x2f,0x3f,0x28,0x3f,0x38,0x2f,0x3c,0x3f,0x0a,0x0e,0x1e,0x1e,0x1e,0x1e, - 0xf0,0xf0,0x08,0xf8,0xe4,0xfc,0xd4,0x3c,0x74,0x9c,0xf4,0x9c,0xf4,0x1c,0xf4,0x9c, - 0xf8,0x38,0xf4,0xfc,0x14,0xfc,0x1c,0xf4,0x3c,0xfc,0x50,0x70,0x78,0x78,0x78,0x78, - 0x0f,0x0f,0x10,0x1f,0x27,0x3f,0x2b,0x3c,0x2b,0x3c,0x2f,0x3c,0x2f,0x38,0x2f,0x3f, - 0x1f,0x1c,0x2f,0x3f,0x28,0x3f,0x38,0x2f,0x3c,0x3f,0x04,0x06,0x07,0x07,0x07,0x07, - 0xf0,0xf0,0x08,0xf8,0xe4,0xfc,0xd4,0x3c,0x74,0x9c,0xf4,0x9c,0xf4,0x1c,0xf4,0x9c, - 0xf8,0x38,0xf4,0xfc,0x14,0xfc,0x1c,0xf4,0x3c,0xfc,0x10,0x30,0x38,0x38,0x38,0x38, - 0x0f,0x0f,0x10,0x1f,0x27,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f, - 0x1f,0x1f,0x2f,0x3f,0x28,0x3f,0x38,0x2f,0x3c,0x3f,0x0a,0x0e,0x1e,0x1e,0x1e,0x1e, - 0xf0,0xf0,0x08,0xf8,0xe4,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc, - 0xf8,0xf8,0xf4,0xfc,0x14,0xfc,0x1c,0xf4,0x3c,0xfc,0x50,0x70,0x78,0x78,0x78,0x78, - 0x0f,0x0f,0x10,0x1f,0x27,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f, - 0x1f,0x1f,0x2f,0x3f,0x28,0x3f,0x38,0x2f,0x3c,0x3f,0x04,0x06,0x07,0x07,0x07,0x07, - 0xf0,0xf0,0x08,0xf8,0xe4,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc, - 0xf8,0xf8,0xf4,0xfc,0x14,0xfc,0x1c,0xf4,0x3c,0xfc,0x10,0x30,0x38,0x38,0x38,0x38, - 0x0f,0x0f,0x10,0x1f,0x27,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f,0x20,0x3f, - 0x1f,0x1f,0x2f,0x3f,0x28,0x3f,0x38,0x2f,0x3c,0x3f,0x08,0x0c,0x1c,0x1c,0x1c,0x1c, - 0xf0,0xf0,0x08,0xf8,0xe4,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc,0x04,0xfc, - 0xf8,0xf8,0xf4,0xfc,0x14,0xfc,0x1c,0xf4,0x3c,0xfc,0x20,0x60,0xe0,0xe0,0xe0,0xe0 - }; + 0x0f,0x0f,0x10,0x1f, + 0x27,0x3f,0x2b,0x3c, + 0x2e,0x39,0x2f,0x39, + 0x2f,0x38,0x2f,0x39, + 0x1f,0x1c,0x2f,0x3f, + 0x28,0x3f,0x38,0x2f, + 0x3c,0x3f,0x0a,0x0e, + 0x1e,0x1e,0x1e,0x1e, + +0xf0,0xf0,0x08,0xf8, + 0xe4,0xfc,0xd4,0x3c, + 0xd4,0x3c,0xf4,0x3c, + 0xf4,0x1c,0xf4,0xfc, + 0xf8,0x38,0xf4,0xfc, + 0x14,0xfc,0x1c,0xf4, + 0x3c,0xfc,0x50,0x70, + 0x78,0x78,0x78,0x78, + +0x0f,0x0f,0x10,0x1f, + 0x27,0x3f,0x2b,0x3c, + 0x2e,0x39,0x2f,0x39, + 0x2f,0x38,0x2f,0x39, + 0x1f,0x1c,0x2f,0x3f, + 0x28,0x3f,0x38,0x2f, + 0x3c,0x3f,0x08,0x0c, + 0x1c,0x1c,0x1c,0x1c, + +0xf0,0xf0,0x08,0xf8, + 0xe4,0xfc,0xd4,0x3c, + 0xd4,0x3c,0xf4,0x3c, + 0xf4,0x1c,0xf4,0xfc, + 0xf8,0x38,0xf4,0xfc, + 0x14,0xfc,0x1c,0xf4, + 0x3c,0xfc,0x20,0x60, + 0xe0,0xe0,0xe0,0xe0, + +0x0f,0x0f,0x10,0x1f, + 0x27,0x3f,0x2b,0x3c, + 0x2b,0x3c,0x2f,0x3c, + 0x2f,0x38,0x2f,0x3f, + 0x1f,0x1c,0x2f,0x3f, + 0x28,0x3f,0x38,0x2f, + 0x3c,0x3f,0x0a,0x0e, + 0x1e,0x1e,0x1e,0x1e, + +0xf0,0xf0,0x08,0xf8, + 0xe4,0xfc,0xd4,0x3c, + 0x74,0x9c,0xf4,0x9c, + 0xf4,0x1c,0xf4,0x9c, + 0xf8,0x38,0xf4,0xfc, + 0x14,0xfc,0x1c,0xf4, + 0x3c,0xfc,0x50,0x70, + 0x78,0x78,0x78,0x78, + +0x0f,0x0f,0x10,0x1f, + 0x27,0x3f,0x2b,0x3c, + 0x2b,0x3c,0x2f,0x3c, + 0x2f,0x38,0x2f,0x3f, + 0x1f,0x1c,0x2f,0x3f, + 0x28,0x3f,0x38,0x2f, + 0x3c,0x3f,0x04,0x06, + 0x07,0x07,0x07,0x07, + +0xf0,0xf0,0x08,0xf8, + 0xe4,0xfc,0xd4,0x3c, + 0x74,0x9c,0xf4,0x9c, + 0xf4,0x1c,0xf4,0x9c, + 0xf8,0x38,0xf4,0xfc, + 0x14,0xfc,0x1c,0xf4, + 0x3c,0xfc,0x10,0x30, + 0x38,0x38,0x38,0x38, + +0x0f,0x0f,0x10,0x1f, + 0x27,0x3f,0x20,0x3f, + 0x20,0x3f,0x20,0x3f, + 0x20,0x3f,0x20,0x3f, + 0x1f,0x1f,0x2f,0x3f, + 0x28,0x3f,0x38,0x2f, + 0x3c,0x3f,0x0a,0x0e, + 0x1e,0x1e,0x1e,0x1e, + +0xf0,0xf0,0x08,0xf8, + 0xe4,0xfc,0x04,0xfc, + 0x04,0xfc,0x04,0xfc, + 0x04,0xfc,0x04,0xfc, + 0xf8,0xf8,0xf4,0xfc, + 0x14,0xfc,0x1c,0xf4, + 0x3c,0xfc,0x50,0x70, + 0x78,0x78,0x78,0x78, + +0x0f,0x0f,0x10,0x1f, + 0x27,0x3f,0x20,0x3f, + 0x20,0x3f,0x20,0x3f, + 0x20,0x3f,0x20,0x3f, + 0x1f,0x1f,0x2f,0x3f, + 0x28,0x3f,0x38,0x2f, + 0x3c,0x3f,0x04,0x06, + 0x07,0x07,0x07,0x07, + +0xf0,0xf0,0x08,0xf8, + 0xe4,0xfc,0x04,0xfc, + 0x04,0xfc,0x04,0xfc, + 0x04,0xfc,0x04,0xfc, + 0xf8,0xf8,0xf4,0xfc, + 0x14,0xfc,0x1c,0xf4, + 0x3c,0xfc,0x10,0x30, + 0x38,0x38,0x38,0x38, + +0x0f,0x0f,0x10,0x1f, + 0x27,0x3f,0x20,0x3f, + 0x20,0x3f,0x20,0x3f, + 0x20,0x3f,0x20,0x3f, + 0x1f,0x1f,0x2f,0x3f, + 0x28,0x3f,0x38,0x2f, + 0x3c,0x3f,0x08,0x0c, + 0x1c,0x1c,0x1c,0x1c, + +0xf0,0xf0,0x08,0xf8, + 0xe4,0xfc,0x04,0xfc, + 0x04,0xfc,0x04,0xfc, + 0x04,0xfc,0x04,0xfc, + 0xf8,0xf8,0xf4,0xfc, + 0x14,0xfc,0x1c,0xf4, + 0x3c,0xfc,0x20,0x60, + 0xe0,0xe0,0xe0,0xe0 + +}; const metasprite_t player_metasprite0[] = { METASPR_ITEM(-8, -8, 0, S_PAL(0)), diff --git a/src/player.h b/src/player.h index 93cd388..0c8f685 100644 --- a/src/player.h +++ b/src/player.h @@ -1,6 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /player.png -c /player.c -sw 16 -sh 16 -bpp 2 -noflip -keep_palette_order - #ifndef METASPRITE_player_H #define METASPRITE_player_H diff --git a/src/render.c b/src/render.c index 3e9f20a..9fb551e 100644 --- a/src/render.c +++ b/src/render.c @@ -6,7 +6,6 @@ #include "player.h" #include "enemy.h" #include "gameover.h" -#include "victory.h" #include "stamina.h" #include "maze.h" diff --git a/src/stamina.c b/src/stamina.c index cb946de..d65206f 100644 --- a/src/stamina.c +++ b/src/stamina.c @@ -1,5 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /stamina.png -c /stamina.c -bpp 2 -noflip -keep_palette_order #include #include @@ -8,44 +7,143 @@ BANKREF(stamina) const palette_color_t stamina_palettes[32] = { - RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), + RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33) + , RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) - }; + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + +}; const uint8_t stamina_tiles[416] = { - 0xff,0xff,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xff,0xff,0x00,0xff,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xff,0xff,0x00,0xff,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xff,0xff,0x00,0xff,0xff,0x1f,0xff,0x1f,0xff,0x1f,0xff,0x1f,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xff,0xff,0x00,0xff,0xff,0x0f,0xff,0x0f,0xff,0x0f,0xff,0x0f,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xff,0xff,0x00,0xff,0xff,0x07,0xff,0x07,0xff,0x07,0xff,0x07,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xff,0xff,0x00,0xff,0xff,0x03,0xff,0x03,0xff,0x03,0xff,0x03,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xff,0xff,0x00,0xff,0xff,0x01,0xff,0x01,0xff,0x01,0xff,0x01,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xff,0xff,0x00,0xff,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0x00,0xff,0xff,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0x7f,0xff,0x00,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0x00,0xff,0x7f,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xfe,0xff,0x00,0xff,0xfe,0xff,0xfe,0xff,0xfe,0xff,0xfe,0xff,0x00,0xff,0xfe,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0x7f,0xff,0x00,0xff,0x7f,0x80,0x7f,0x80,0x7f,0x80,0x7f,0x80,0x00,0xff,0x7f,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, - 0xfe,0xff,0x00,0xff,0xfe,0x01,0xfe,0x01,0xfe,0x01,0xfe,0x01,0x00,0xff,0xfe,0xff, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 - }; + 0xff,0xff,0x00,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xff,0xff,0x00,0xff, + 0xff,0x7f,0xff,0x7f, + 0xff,0x7f,0xff,0x7f, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xff,0xff,0x00,0xff, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xff,0xff,0x00,0xff, + 0xff,0x1f,0xff,0x1f, + 0xff,0x1f,0xff,0x1f, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xff,0xff,0x00,0xff, + 0xff,0x0f,0xff,0x0f, + 0xff,0x0f,0xff,0x0f, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xff,0xff,0x00,0xff, + 0xff,0x07,0xff,0x07, + 0xff,0x07,0xff,0x07, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xff,0xff,0x00,0xff, + 0xff,0x03,0xff,0x03, + 0xff,0x03,0xff,0x03, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xff,0xff,0x00,0xff, + 0xff,0x01,0xff,0x01, + 0xff,0x01,0xff,0x01, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xff,0xff,0x00,0xff, + 0xff,0x00,0xff,0x00, + 0xff,0x00,0xff,0x00, + 0x00,0xff,0xff,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0x7f,0xff,0x00,0xff, + 0x7f,0xff,0x7f,0xff, + 0x7f,0xff,0x7f,0xff, + 0x00,0xff,0x7f,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xfe,0xff,0x00,0xff, + 0xfe,0xff,0xfe,0xff, + 0xfe,0xff,0xfe,0xff, + 0x00,0xff,0xfe,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0x7f,0xff,0x00,0xff, + 0x7f,0x80,0x7f,0x80, + 0x7f,0x80,0x7f,0x80, + 0x00,0xff,0x7f,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + +0xfe,0xff,0x00,0xff, + 0xfe,0x01,0xfe,0x01, + 0xfe,0x01,0xfe,0x01, + 0x00,0xff,0xfe,0xff, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00 + +}; const metasprite_t stamina_metasprite0[] = { METASPR_ITEM(-8, -52, 0, S_PAL(0)), diff --git a/src/stamina.h b/src/stamina.h index 9e74a16..1428e65 100644 --- a/src/stamina.h +++ b/src/stamina.h @@ -1,6 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /stamina.png -c /stamina.c -bpp 2 -noflip -keep_palette_order - #ifndef METASPRITE_stamina_H #define METASPRITE_stamina_H diff --git a/src/tiles.c b/src/tiles.c index 6d29083..e12103d 100644 --- a/src/tiles.c +++ b/src/tiles.c @@ -1,5 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /tiles.png -c /tiles.c -map -bpp 2 -noflip -keep_palette_order #include #include @@ -8,168 +7,629 @@ BANKREF(tiles) const palette_color_t tiles_palettes[32] = { - RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), + RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33) + , RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) - }; + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + , + RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) + +}; const uint8_t tiles_tiles[2416] = { - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xfc,0xf0,0xf0,0xc0,0xc3, - 0xff,0xff,0xfc,0xfc,0xf0,0xf0,0xc0,0xc0,0x00,0x03,0x03,0x1c,0x1f,0x60,0x7f,0x80, - 0xff,0xff,0x3f,0x3f,0x0f,0x0f,0x03,0x03,0x00,0x80,0x80,0x78,0xf8,0x07,0xff,0x00, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0x1f,0x1f,0x07,0x87,0x81,0x71, - 0x81,0x8e,0xe0,0xe1,0xf8,0xf8,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x00,0x1f,0xe0,0x01,0x1e,0x00,0x01,0xc0,0xc0,0xf0,0xf0,0xfc,0xfc,0xff,0xff, - 0xfe,0x01,0xf8,0x06,0xc0,0x38,0x00,0xc0,0x03,0x03,0x0f,0x0f,0x3f,0x3f,0xff,0xff, - 0x03,0xc3,0x0f,0x0f,0x3f,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x00,0x01,0x01,0x06,0x07,0x38,0x3f,0xc0,0xff,0x01,0xfc,0x04,0xf0,0x10,0xc0,0x43, - 0x3f,0xc0,0xfc,0x00,0xf0,0x00,0xc0,0x00,0x00,0x03,0x03,0x1c,0x1f,0x60,0x7f,0x80, - 0xff,0x01,0xfe,0x07,0xf8,0x3f,0xc0,0xff,0x01,0xff,0x04,0xfc,0x10,0xf0,0x40,0xc3, - 0xc0,0xff,0x00,0xfc,0x00,0xf0,0x00,0xc0,0x00,0x03,0x03,0x1c,0x1f,0x60,0x7f,0x80, - 0xf0,0x0e,0x3e,0x01,0x0f,0x00,0x03,0x00,0x00,0x80,0x80,0x78,0xf8,0x07,0xff,0x00, - 0x00,0x00,0x00,0xe0,0xe0,0x1e,0xfe,0x01,0x7f,0x00,0x1f,0x00,0x07,0x80,0x81,0x70, - 0x0f,0xfe,0x01,0x3f,0x00,0x0f,0x00,0x03,0x00,0x80,0x80,0x78,0xf8,0x07,0xff,0x00, - 0xff,0x00,0xff,0xe0,0x1f,0xfe,0x01,0xff,0x00,0x7f,0x00,0x1f,0x00,0x87,0x80,0x71, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xf0,0xfc,0xc3, - 0xff,0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xfc,0x03,0xe0,0x1c,0x80,0x60,0x00,0x80, - 0xff,0xff,0xff,0x3f,0xff,0x0f,0xff,0x03,0x7f,0x80,0x07,0x78,0x00,0x07,0x00,0x00, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x1f,0x7f,0x87,0x0f,0x71, - 0xf0,0x8e,0xfe,0xe1,0xff,0xf8,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x00,0x00,0x00,0xe0,0xe0,0x1e,0xfe,0x01,0xff,0xc0,0xff,0xf0,0xff,0xfc,0xff,0xff, - 0x00,0x01,0x01,0x06,0x07,0x38,0x3f,0xc0,0xff,0x03,0xff,0x0f,0xff,0x3f,0xff,0xff, - 0x3f,0xc3,0xff,0x0f,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xfe,0x01,0xf8,0x06,0xc0,0x38,0x00,0xc0,0x01,0x01,0x07,0x04,0x1f,0x10,0x7c,0x43, - 0x00,0xc0,0x03,0x00,0x0f,0x00,0x3f,0x00,0xfc,0x03,0xe0,0x1c,0x80,0x60,0x00,0x80, - 0x01,0xff,0x07,0xfe,0x3f,0xf8,0xff,0xc0,0xff,0x01,0xff,0x04,0xff,0x10,0xfc,0x43, - 0xff,0xc0,0xff,0x00,0xff,0x00,0xff,0x00,0xfc,0x03,0xe0,0x1c,0x80,0x60,0x00,0x80, - 0x01,0x0e,0xc0,0x01,0xf0,0x00,0xfc,0x00,0x7f,0x80,0x07,0x78,0x00,0x07,0x00,0x00, - 0xff,0x00,0x1f,0xe0,0x01,0x1e,0x00,0x01,0x80,0x00,0xe0,0x00,0x78,0x80,0x0e,0x70, - 0xfe,0x0f,0xff,0x01,0xff,0x00,0xff,0x00,0x7f,0x80,0x07,0x78,0x00,0x07,0x00,0x00, - 0x00,0xff,0xe0,0xff,0xfe,0x1f,0xff,0x01,0xff,0x00,0xff,0x00,0x7f,0x80,0x0f,0x70, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xf0,0xff,0xc3,0xff, - 0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff,0x03,0xff,0x1c,0xff,0x60,0xff,0x80,0xff, - 0xff,0xff,0x3f,0xff,0x0f,0xff,0x03,0xff,0x80,0xff,0x78,0xff,0x07,0xff,0x00,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x1f,0xff,0x87,0xff,0x71,0xff, - 0x8e,0xff,0xe1,0xff,0xf8,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x00,0xff,0xe0,0xff,0x1e,0xff,0x01,0xff,0xc0,0xff,0xf0,0xff,0xfc,0xff,0xff,0xff, - 0x01,0xff,0x06,0xff,0x38,0xff,0xc0,0xff,0x03,0xff,0x0f,0xff,0x3f,0xff,0xff,0xff, - 0xc3,0xff,0x0f,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x00,0x01,0x01,0x06,0x07,0x38,0x3f,0xc0,0xff,0x01,0xfc,0x07,0xf0,0x1f,0xc3,0x7f, - 0x3f,0xc0,0xfc,0x03,0xf0,0x0f,0xc0,0x3f,0x03,0xff,0x1c,0xff,0x60,0xff,0x80,0xff, - 0xff,0x01,0xfe,0x07,0xf8,0x3f,0xc0,0xff,0x01,0xff,0x04,0xff,0x10,0xff,0x43,0xff, - 0xc0,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x03,0xff,0x1c,0xff,0x60,0xff,0x80,0xff, - 0xf0,0x0e,0x3e,0xc1,0x0f,0xf0,0x03,0xfc,0x80,0xff,0x78,0xff,0x07,0xff,0x00,0xff, - 0x00,0x00,0x00,0xe0,0xe0,0x1e,0xfe,0x01,0x7f,0x80,0x1f,0xe0,0x87,0xf8,0x71,0xfe, - 0x0f,0xfe,0x01,0xff,0x00,0xff,0x00,0xff,0x80,0xff,0x78,0xff,0x07,0xff,0x00,0xff, - 0xff,0x00,0xff,0xe0,0x1f,0xfe,0x01,0xff,0x00,0xff,0x00,0xff,0x80,0xff,0x70,0xff, - 0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff,0x03,0xff,0x1f,0xfc,0x7f,0xe0,0xff,0x80, - 0xff,0xff,0x3f,0xff,0x0f,0xff,0x03,0xff,0x80,0xff,0xf8,0x7f,0xff,0x07,0xff,0x00, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x1f,0xff,0x87,0xff,0xf1,0x7f, - 0x8f,0xfe,0xe1,0xff,0xf8,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x00,0xff,0xe0,0x1f,0xfe,0x01,0xff,0xc0,0xff,0xf0,0xff,0xfc,0xff,0xff,0xff, - 0xff,0x01,0xfe,0x07,0xf8,0x3f,0xc0,0xff,0x03,0xff,0x0f,0xff,0x3f,0xff,0xff,0xff, - 0xfe,0x01,0xf8,0x06,0xc0,0x38,0x00,0xc0,0x01,0x01,0x04,0x07,0x10,0x1f,0x43,0x7f, - 0x00,0xc0,0x00,0x03,0x00,0x0f,0x00,0x3f,0x03,0xff,0x1f,0xfc,0x7f,0xe0,0xff,0x80, - 0x01,0xff,0x07,0xfe,0x3f,0xf8,0xff,0xc0,0xff,0x01,0xfc,0x07,0xf0,0x1f,0xc3,0x7f, - 0xff,0xc0,0xfc,0x03,0xf0,0x0f,0xc0,0x3f,0x03,0xff,0x1f,0xfc,0x7f,0xe0,0xff,0x80, - 0x01,0x0e,0x00,0xc1,0x00,0xf0,0x00,0xfc,0x80,0xff,0xf8,0x7f,0xff,0x07,0xff,0x00, - 0xff,0x00,0x1f,0xe0,0x01,0x1e,0x00,0x01,0x00,0x80,0x00,0xe0,0x80,0xf8,0xf0,0x7e, - 0xfe,0x0f,0x3f,0xc1,0x0f,0xf0,0x03,0xfc,0x80,0xff,0xf8,0x7f,0xff,0x07,0xff,0x00, - 0x00,0xff,0xe0,0xff,0xfe,0x1f,0xff,0x01,0x7f,0x80,0x1f,0xe0,0x87,0xf8,0xf1,0x7e, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xfc,0xf0,0xf0,0xc3,0xc0, - 0xff,0xff,0xfc,0xfc,0xf0,0xf0,0xc3,0xc0,0x0f,0x00,0x3f,0x00,0xff,0x03,0xff,0x0f, - 0xff,0xff,0x3f,0x3f,0x0f,0x0f,0x03,0xc3,0x00,0xf0,0x00,0xfc,0xc0,0xff,0xf0,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0x1f,0x1f,0x07,0x07,0x01,0xc1, - 0x80,0x80,0xe0,0xe0,0xf8,0xf8,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x3f,0x3f,0x3f,0x0f,0x0f,0x03,0x03,0xc0,0xc0,0xf0,0xf0,0xfc,0xfc,0xff,0xff, - 0xfc,0xff,0xfc,0xfc,0xf0,0xf0,0xc0,0xc0,0x03,0x03,0x0f,0x0f,0x3f,0x3f,0xff,0xff, - 0x03,0x03,0x0f,0x0f,0x3f,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x00,0x01,0x01,0x06,0x07,0x38,0x3f,0xc0,0xff,0x01,0xfc,0x04,0xf0,0x10,0xc3,0x40, - 0x3f,0xc0,0xfc,0x00,0xf0,0x00,0xc3,0x00,0x0f,0x00,0x3f,0x00,0xff,0x03,0xff,0x0f, - 0xff,0x01,0xfe,0x07,0xf8,0x3f,0xc0,0xff,0x01,0xff,0x04,0xfc,0x10,0xf0,0x43,0xc0, - 0xc0,0xff,0x00,0xfc,0x00,0xf0,0x03,0xc0,0x0f,0x00,0x3f,0x00,0xff,0x03,0xff,0x0f, - 0xf0,0x0e,0x3e,0x01,0x0f,0x00,0x03,0xc0,0x00,0xf0,0x00,0xfc,0xc0,0xff,0xf0,0xff, - 0x00,0x00,0x00,0xe0,0xe0,0x1e,0xfe,0x01,0x7f,0x00,0x1f,0x00,0x07,0x00,0x01,0xc0, - 0x0f,0xfe,0x01,0x3f,0x00,0x0f,0x00,0xc3,0x00,0xf0,0x00,0xfc,0xc0,0xff,0xf0,0xff, - 0xff,0x00,0xff,0xe0,0x1f,0xfe,0x01,0xff,0x00,0x7f,0x00,0x1f,0x00,0x07,0x00,0xc1, - 0x80,0x00,0xe0,0x00,0xf8,0x00,0xfe,0x00,0x7f,0x80,0x07,0x78,0x00,0x07,0x00,0x00, - 0xff,0x3f,0x3f,0x3f,0x0f,0x0f,0x03,0x03,0xc0,0x00,0xf0,0x00,0x7c,0x80,0x0f,0x70, - 0x00,0x80,0x00,0xe0,0x00,0xf8,0x00,0xfe,0x80,0xff,0xf8,0x7f,0xff,0x07,0xff,0x00, - 0xff,0x3f,0x3f,0x3f,0x0f,0x0f,0x03,0x03,0x00,0xc0,0x00,0xf0,0x80,0xfc,0xf0,0x7f, - 0xfc,0xff,0xfc,0xfc,0xf0,0xf0,0xc0,0xc0,0x03,0x00,0x0f,0x00,0x3f,0x00,0xfc,0x03, - 0x03,0x02,0x0f,0x08,0x3f,0x20,0xff,0x80,0xfc,0x03,0xe0,0x1c,0x80,0x60,0x00,0x80, - 0xfc,0xff,0xfc,0xfc,0xf0,0xf0,0xc0,0xc0,0x00,0x03,0x00,0x0f,0x00,0x3f,0x03,0xff, - 0x02,0x03,0x08,0x0f,0x20,0x3f,0x80,0xff,0x03,0xff,0x1f,0xfc,0x7f,0xe0,0xff,0x80, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xfc,0xf0,0xf3,0xc0, - 0xff,0xff,0xff,0xfc,0xfc,0xf0,0xf3,0xc0,0xcf,0x00,0x3f,0x00,0xff,0x03,0xff,0x0f, - 0xff,0xff,0xff,0x3f,0x3f,0x0f,0x0f,0xc3,0x03,0xf0,0x00,0xfc,0xc0,0xff,0xf0,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x1f,0x3f,0x07,0x0f,0xc1, - 0xfc,0x80,0xff,0xe0,0xff,0xf8,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x3f,0x3f,0x3f,0xcf,0x0f,0xf3,0x03,0xfc,0xc0,0xff,0xf0,0xff,0xfc,0xff,0xff, - 0xfc,0xff,0xfc,0xfc,0xf3,0xf0,0xcf,0xc0,0x3f,0x03,0xff,0x0f,0xff,0x3f,0xff,0xff, - 0x3f,0x03,0xff,0x0f,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xfe,0x01,0xf8,0x06,0xc0,0x38,0x00,0xc0,0x01,0x01,0x07,0x04,0x1c,0x10,0x73,0x40, - 0x00,0xc0,0x03,0x00,0x0c,0x00,0x33,0x00,0xcf,0x00,0x3f,0x00,0xff,0x03,0xff,0x0f, - 0x01,0xff,0x07,0xfe,0x3f,0xf8,0xff,0xc0,0xff,0x01,0xff,0x04,0xfc,0x10,0xf3,0x40, - 0xff,0xc0,0xff,0x00,0xfc,0x00,0xf3,0x00,0xcf,0x00,0x3f,0x00,0xff,0x03,0xff,0x0f, - 0x01,0x0e,0xc0,0x01,0x30,0x00,0x0c,0xc0,0x03,0xf0,0x00,0xfc,0xc0,0xff,0xf0,0xff, - 0xff,0x00,0x1f,0xe0,0x01,0x1e,0x00,0x01,0x80,0x00,0xe0,0x00,0x38,0x00,0x0e,0xc0, - 0xfe,0x0f,0xff,0x01,0x3f,0x00,0x0f,0xc0,0x03,0xf0,0x00,0xfc,0xc0,0xff,0xf0,0xff, - 0x00,0xff,0xe0,0xff,0xfe,0x1f,0xff,0x01,0xff,0x00,0xff,0x00,0x3f,0x00,0x0f,0xc0, - 0x7c,0x00,0x1f,0x00,0x07,0x00,0x01,0x00,0x00,0x80,0x80,0x78,0xf8,0x07,0xff,0x00, - 0xff,0x3f,0x3f,0x3f,0xcf,0x0f,0xf3,0x03,0x3c,0x00,0x0f,0x00,0x03,0x80,0x80,0x70, - 0xfc,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x80,0x7f,0xf8,0x07,0xff,0x00,0xff, - 0xff,0x3f,0x3f,0x3f,0xcf,0x0f,0xf3,0x03,0xfc,0x00,0xff,0x00,0xff,0x80,0x7f,0xf0, - 0xfc,0xff,0xfc,0xfc,0xf3,0xf0,0xcf,0xc0,0x3c,0x00,0xf0,0x00,0xc0,0x00,0x00,0x03, - 0x3e,0x02,0xf8,0x08,0xe0,0x20,0x80,0x80,0x00,0x03,0x03,0x1c,0x1f,0x60,0x7f,0x80, - 0xfc,0xff,0xfc,0xfc,0xf3,0xf0,0xcf,0xc0,0x3f,0x00,0xff,0x00,0xff,0x00,0xff,0x03, - 0x3f,0x02,0xff,0x08,0xff,0x20,0xff,0x80,0xff,0x03,0xfc,0x1f,0xe0,0x7f,0x80,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff, - 0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff,0x00,0xff,0x00,0xff,0x03,0xff,0x0f,0xff, - 0xff,0xff,0x3f,0xff,0x0f,0xff,0xc3,0xff,0xf0,0xff,0xfc,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x1f,0xff,0x07,0xff,0xc1,0xff, - 0x80,0xff,0xe0,0xff,0xf8,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x3f,0xff,0x3f,0xff,0x0f,0xff,0x03,0xff,0xc0,0xff,0xf0,0xff,0xfc,0xff,0xff,0xff, - 0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff,0x03,0xff,0x0f,0xff,0x3f,0xff,0xff,0xff, - 0x03,0xff,0x0f,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x00,0x01,0x01,0x06,0x07,0x38,0x3f,0xc0,0xff,0x01,0xfc,0x07,0xf0,0x1f,0xc0,0x7f, - 0x3f,0xc0,0xfc,0x03,0xf0,0x0f,0xc0,0x3f,0x00,0xff,0x00,0xff,0x03,0xff,0x0f,0xff, - 0xff,0x01,0xfe,0x07,0xf8,0x3f,0xc0,0xff,0x01,0xff,0x04,0xff,0x10,0xff,0x40,0xff, - 0xc0,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x03,0xff,0x0f,0xff, - 0xf0,0x0e,0x3e,0xc1,0x0f,0xf0,0xc3,0xfc,0xf0,0xff,0xfc,0xff,0xff,0xff,0xff,0xff, - 0x00,0x00,0x00,0xe0,0xe0,0x1e,0xfe,0x01,0x7f,0x80,0x1f,0xe0,0x07,0xf8,0xc1,0xfe, - 0x0f,0xfe,0x01,0xff,0x00,0xff,0xc0,0xff,0xf0,0xff,0xfc,0xff,0xff,0xff,0xff,0xff, - 0xff,0x00,0xff,0xe0,0x1f,0xfe,0x01,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0xc0,0xff, - 0x80,0x7f,0xe0,0x1f,0xf8,0x07,0xfe,0x01,0x7f,0x80,0x07,0x78,0x00,0x07,0x00,0x00, - 0x3f,0xff,0x3f,0xff,0x0f,0xff,0x03,0xff,0xc0,0x3f,0xf0,0x0f,0x7c,0x83,0x0f,0x70, - 0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x80,0xff,0xf8,0x7f,0xff,0x07,0xff,0x00, - 0x3f,0xff,0x3f,0xff,0x0f,0xff,0x03,0xff,0x00,0xff,0x00,0xff,0x80,0xff,0xf0,0x7f, - 0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff,0x03,0xfc,0x0f,0xf0,0x3f,0xc0,0xfc,0x03, - 0x03,0xfe,0x0f,0xf8,0x3f,0xe0,0xff,0x80,0xfc,0x03,0xe0,0x1c,0x80,0x60,0x00,0x80, - 0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff,0x00,0xff,0x00,0xff,0x00,0xff,0x03,0xff, - 0x02,0xff,0x08,0xff,0x20,0xff,0x80,0xff,0x03,0xff,0x1f,0xfc,0x7f,0xe0,0xff,0x80, - 0xfe,0x01,0xf8,0x06,0xc0,0x38,0x00,0xc0,0x01,0x01,0x04,0x07,0x10,0x1f,0x40,0x7f, - 0x00,0xc0,0x00,0x03,0x00,0x0f,0x00,0x3f,0x00,0xff,0x00,0xff,0x03,0xff,0x0f,0xff, - 0x01,0xff,0x07,0xfe,0x3f,0xf8,0xff,0xc0,0xff,0x01,0xfc,0x07,0xf0,0x1f,0xc0,0x7f, - 0xff,0xc0,0xfc,0x03,0xf0,0x0f,0xc0,0x3f,0x00,0xff,0x00,0xff,0x03,0xff,0x0f,0xff, - 0x01,0x0e,0x00,0xc1,0x00,0xf0,0xc0,0xfc,0xf0,0xff,0xfc,0xff,0xff,0xff,0xff,0xff, - 0xff,0x00,0x1f,0xe0,0x01,0x1e,0x00,0x01,0x00,0x80,0x00,0xe0,0x00,0xf8,0xc0,0xfe, - 0xfe,0x0f,0x3f,0xc1,0x0f,0xf0,0xc3,0xfc,0xf0,0xff,0xfc,0xff,0xff,0xff,0xff,0xff, - 0x00,0xff,0xe0,0xff,0xfe,0x1f,0xff,0x01,0x7f,0x80,0x1f,0xe0,0x07,0xf8,0xc1,0xfe, - 0x00,0x7f,0x00,0x1f,0x00,0x07,0x00,0x01,0x00,0x80,0x80,0x78,0xf8,0x07,0xff,0x00, - 0x3f,0xff,0x3f,0xff,0x0f,0xff,0x03,0xff,0x00,0x3f,0x00,0x0f,0x00,0x83,0x80,0x70, - 0x80,0x7f,0xe0,0x1f,0xf8,0x07,0xfe,0x01,0xff,0x80,0x7f,0xf8,0x07,0xff,0x00,0xff, - 0x3f,0xff,0x3f,0xff,0x0f,0xff,0x03,0xff,0xc0,0x3f,0xf0,0x0f,0xfc,0x83,0x7f,0xf0, - 0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff,0x00,0xfc,0x00,0xf0,0x00,0xc0,0x00,0x03, - 0x02,0xfe,0x08,0xf8,0x20,0xe0,0x80,0x80,0x00,0x03,0x03,0x1c,0x1f,0x60,0x7f,0x80, - 0xff,0xff,0xfc,0xff,0xf0,0xff,0xc0,0xff,0x03,0xfc,0x0f,0xf0,0x3f,0xc0,0xff,0x03, - 0x03,0xfe,0x0f,0xf8,0x3f,0xe0,0xff,0x80,0xff,0x03,0xfc,0x1f,0xe0,0x7f,0x80,0xff + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xfc, + 0xf0,0xf0,0xc0,0xc3, + 0xff,0xff,0xfc,0xfc, + 0xf0,0xf0,0xc0,0xc0, + 0x00,0x03,0x03,0x1c, + 0x1f,0x60,0x7f,0x80, + 0xff,0xff,0x3f,0x3f, + 0x0f,0x0f,0x03,0x03, + 0x00,0x80,0x80,0x78, + 0xf8,0x07,0xff,0x00, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0x7f,0x1f,0x1f, + 0x07,0x87,0x81,0x71, + 0x81,0x8e,0xe0,0xe1, + 0xf8,0xf8,0xfe,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x00,0x1f,0xe0, + 0x01,0x1e,0x00,0x01, + 0xc0,0xc0,0xf0,0xf0, + 0xfc,0xfc,0xff,0xff, + 0xfe,0x01,0xf8,0x06, + 0xc0,0x38,0x00,0xc0, + 0x03,0x03,0x0f,0x0f, + 0x3f,0x3f,0xff,0xff, + 0x03,0xc3,0x0f,0x0f, + 0x3f,0x3f,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0x01,0x01,0x06, + 0x07,0x38,0x3f,0xc0, + 0xff,0x01,0xfc,0x04, + 0xf0,0x10,0xc0,0x43, + 0x3f,0xc0,0xfc,0x00, + 0xf0,0x00,0xc0,0x00, + 0x00,0x03,0x03,0x1c, + 0x1f,0x60,0x7f,0x80, + 0xff,0x01,0xfe,0x07, + 0xf8,0x3f,0xc0,0xff, + 0x01,0xff,0x04,0xfc, + 0x10,0xf0,0x40,0xc3, + 0xc0,0xff,0x00,0xfc, + 0x00,0xf0,0x00,0xc0, + 0x00,0x03,0x03,0x1c, + 0x1f,0x60,0x7f,0x80, + 0xf0,0x0e,0x3e,0x01, + 0x0f,0x00,0x03,0x00, + 0x00,0x80,0x80,0x78, + 0xf8,0x07,0xff,0x00, + 0x00,0x00,0x00,0xe0, + 0xe0,0x1e,0xfe,0x01, + 0x7f,0x00,0x1f,0x00, + 0x07,0x80,0x81,0x70, + 0x0f,0xfe,0x01,0x3f, + 0x00,0x0f,0x00,0x03, + 0x00,0x80,0x80,0x78, + 0xf8,0x07,0xff,0x00, + 0xff,0x00,0xff,0xe0, + 0x1f,0xfe,0x01,0xff, + 0x00,0x7f,0x00,0x1f, + 0x00,0x87,0x80,0x71, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfc, + 0xff,0xf0,0xfc,0xc3, + 0xff,0xff,0xff,0xfc, + 0xff,0xf0,0xff,0xc0, + 0xfc,0x03,0xe0,0x1c, + 0x80,0x60,0x00,0x80, + 0xff,0xff,0xff,0x3f, + 0xff,0x0f,0xff,0x03, + 0x7f,0x80,0x07,0x78, + 0x00,0x07,0x00,0x00, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x7f,0xff,0x1f, + 0x7f,0x87,0x0f,0x71, + 0xf0,0x8e,0xfe,0xe1, + 0xff,0xf8,0xff,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0x00,0x00,0xe0, + 0xe0,0x1e,0xfe,0x01, + 0xff,0xc0,0xff,0xf0, + 0xff,0xfc,0xff,0xff, + 0x00,0x01,0x01,0x06, + 0x07,0x38,0x3f,0xc0, + 0xff,0x03,0xff,0x0f, + 0xff,0x3f,0xff,0xff, + 0x3f,0xc3,0xff,0x0f, + 0xff,0x3f,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0x01,0xf8,0x06, + 0xc0,0x38,0x00,0xc0, + 0x01,0x01,0x07,0x04, + 0x1f,0x10,0x7c,0x43, + 0x00,0xc0,0x03,0x00, + 0x0f,0x00,0x3f,0x00, + 0xfc,0x03,0xe0,0x1c, + 0x80,0x60,0x00,0x80, + 0x01,0xff,0x07,0xfe, + 0x3f,0xf8,0xff,0xc0, + 0xff,0x01,0xff,0x04, + 0xff,0x10,0xfc,0x43, + 0xff,0xc0,0xff,0x00, + 0xff,0x00,0xff,0x00, + 0xfc,0x03,0xe0,0x1c, + 0x80,0x60,0x00,0x80, + 0x01,0x0e,0xc0,0x01, + 0xf0,0x00,0xfc,0x00, + 0x7f,0x80,0x07,0x78, + 0x00,0x07,0x00,0x00, + 0xff,0x00,0x1f,0xe0, + 0x01,0x1e,0x00,0x01, + 0x80,0x00,0xe0,0x00, + 0x78,0x80,0x0e,0x70, + 0xfe,0x0f,0xff,0x01, + 0xff,0x00,0xff,0x00, + 0x7f,0x80,0x07,0x78, + 0x00,0x07,0x00,0x00, + 0x00,0xff,0xe0,0xff, + 0xfe,0x1f,0xff,0x01, + 0xff,0x00,0xff,0x00, + 0x7f,0x80,0x0f,0x70, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc3,0xff, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0x03,0xff,0x1c,0xff, + 0x60,0xff,0x80,0xff, + 0xff,0xff,0x3f,0xff, + 0x0f,0xff,0x03,0xff, + 0x80,0xff,0x78,0xff, + 0x07,0xff,0x00,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x1f,0xff, + 0x87,0xff,0x71,0xff, + 0x8e,0xff,0xe1,0xff, + 0xf8,0xff,0xfe,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0xff,0xe0,0xff, + 0x1e,0xff,0x01,0xff, + 0xc0,0xff,0xf0,0xff, + 0xfc,0xff,0xff,0xff, + 0x01,0xff,0x06,0xff, + 0x38,0xff,0xc0,0xff, + 0x03,0xff,0x0f,0xff, + 0x3f,0xff,0xff,0xff, + 0xc3,0xff,0x0f,0xff, + 0x3f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0x01,0x01,0x06, + 0x07,0x38,0x3f,0xc0, + 0xff,0x01,0xfc,0x07, + 0xf0,0x1f,0xc3,0x7f, + 0x3f,0xc0,0xfc,0x03, + 0xf0,0x0f,0xc0,0x3f, + 0x03,0xff,0x1c,0xff, + 0x60,0xff,0x80,0xff, + 0xff,0x01,0xfe,0x07, + 0xf8,0x3f,0xc0,0xff, + 0x01,0xff,0x04,0xff, + 0x10,0xff,0x43,0xff, + 0xc0,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x03,0xff,0x1c,0xff, + 0x60,0xff,0x80,0xff, + 0xf0,0x0e,0x3e,0xc1, + 0x0f,0xf0,0x03,0xfc, + 0x80,0xff,0x78,0xff, + 0x07,0xff,0x00,0xff, + 0x00,0x00,0x00,0xe0, + 0xe0,0x1e,0xfe,0x01, + 0x7f,0x80,0x1f,0xe0, + 0x87,0xf8,0x71,0xfe, + 0x0f,0xfe,0x01,0xff, + 0x00,0xff,0x00,0xff, + 0x80,0xff,0x78,0xff, + 0x07,0xff,0x00,0xff, + 0xff,0x00,0xff,0xe0, + 0x1f,0xfe,0x01,0xff, + 0x00,0xff,0x00,0xff, + 0x80,0xff,0x70,0xff, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0x03,0xff,0x1f,0xfc, + 0x7f,0xe0,0xff,0x80, + 0xff,0xff,0x3f,0xff, + 0x0f,0xff,0x03,0xff, + 0x80,0xff,0xf8,0x7f, + 0xff,0x07,0xff,0x00, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x1f,0xff, + 0x87,0xff,0xf1,0x7f, + 0x8f,0xfe,0xe1,0xff, + 0xf8,0xff,0xfe,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x00,0xff,0xe0, + 0x1f,0xfe,0x01,0xff, + 0xc0,0xff,0xf0,0xff, + 0xfc,0xff,0xff,0xff, + 0xff,0x01,0xfe,0x07, + 0xf8,0x3f,0xc0,0xff, + 0x03,0xff,0x0f,0xff, + 0x3f,0xff,0xff,0xff, + 0xfe,0x01,0xf8,0x06, + 0xc0,0x38,0x00,0xc0, + 0x01,0x01,0x04,0x07, + 0x10,0x1f,0x43,0x7f, + 0x00,0xc0,0x00,0x03, + 0x00,0x0f,0x00,0x3f, + 0x03,0xff,0x1f,0xfc, + 0x7f,0xe0,0xff,0x80, + 0x01,0xff,0x07,0xfe, + 0x3f,0xf8,0xff,0xc0, + 0xff,0x01,0xfc,0x07, + 0xf0,0x1f,0xc3,0x7f, + 0xff,0xc0,0xfc,0x03, + 0xf0,0x0f,0xc0,0x3f, + 0x03,0xff,0x1f,0xfc, + 0x7f,0xe0,0xff,0x80, + 0x01,0x0e,0x00,0xc1, + 0x00,0xf0,0x00,0xfc, + 0x80,0xff,0xf8,0x7f, + 0xff,0x07,0xff,0x00, + 0xff,0x00,0x1f,0xe0, + 0x01,0x1e,0x00,0x01, + 0x00,0x80,0x00,0xe0, + 0x80,0xf8,0xf0,0x7e, + 0xfe,0x0f,0x3f,0xc1, + 0x0f,0xf0,0x03,0xfc, + 0x80,0xff,0xf8,0x7f, + 0xff,0x07,0xff,0x00, + 0x00,0xff,0xe0,0xff, + 0xfe,0x1f,0xff,0x01, + 0x7f,0x80,0x1f,0xe0, + 0x87,0xf8,0xf1,0x7e, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xfc, + 0xf0,0xf0,0xc3,0xc0, + 0xff,0xff,0xfc,0xfc, + 0xf0,0xf0,0xc3,0xc0, + 0x0f,0x00,0x3f,0x00, + 0xff,0x03,0xff,0x0f, + 0xff,0xff,0x3f,0x3f, + 0x0f,0x0f,0x03,0xc3, + 0x00,0xf0,0x00,0xfc, + 0xc0,0xff,0xf0,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0x7f,0x1f,0x1f, + 0x07,0x07,0x01,0xc1, + 0x80,0x80,0xe0,0xe0, + 0xf8,0xf8,0xfe,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x3f,0x3f,0x3f, + 0x0f,0x0f,0x03,0x03, + 0xc0,0xc0,0xf0,0xf0, + 0xfc,0xfc,0xff,0xff, + 0xfc,0xff,0xfc,0xfc, + 0xf0,0xf0,0xc0,0xc0, + 0x03,0x03,0x0f,0x0f, + 0x3f,0x3f,0xff,0xff, + 0x03,0x03,0x0f,0x0f, + 0x3f,0x3f,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0x01,0x01,0x06, + 0x07,0x38,0x3f,0xc0, + 0xff,0x01,0xfc,0x04, + 0xf0,0x10,0xc3,0x40, + 0x3f,0xc0,0xfc,0x00, + 0xf0,0x00,0xc3,0x00, + 0x0f,0x00,0x3f,0x00, + 0xff,0x03,0xff,0x0f, + 0xff,0x01,0xfe,0x07, + 0xf8,0x3f,0xc0,0xff, + 0x01,0xff,0x04,0xfc, + 0x10,0xf0,0x43,0xc0, + 0xc0,0xff,0x00,0xfc, + 0x00,0xf0,0x03,0xc0, + 0x0f,0x00,0x3f,0x00, + 0xff,0x03,0xff,0x0f, + 0xf0,0x0e,0x3e,0x01, + 0x0f,0x00,0x03,0xc0, + 0x00,0xf0,0x00,0xfc, + 0xc0,0xff,0xf0,0xff, + 0x00,0x00,0x00,0xe0, + 0xe0,0x1e,0xfe,0x01, + 0x7f,0x00,0x1f,0x00, + 0x07,0x00,0x01,0xc0, + 0x0f,0xfe,0x01,0x3f, + 0x00,0x0f,0x00,0xc3, + 0x00,0xf0,0x00,0xfc, + 0xc0,0xff,0xf0,0xff, + 0xff,0x00,0xff,0xe0, + 0x1f,0xfe,0x01,0xff, + 0x00,0x7f,0x00,0x1f, + 0x00,0x07,0x00,0xc1, + 0x80,0x00,0xe0,0x00, + 0xf8,0x00,0xfe,0x00, + 0x7f,0x80,0x07,0x78, + 0x00,0x07,0x00,0x00, + 0xff,0x3f,0x3f,0x3f, + 0x0f,0x0f,0x03,0x03, + 0xc0,0x00,0xf0,0x00, + 0x7c,0x80,0x0f,0x70, + 0x00,0x80,0x00,0xe0, + 0x00,0xf8,0x00,0xfe, + 0x80,0xff,0xf8,0x7f, + 0xff,0x07,0xff,0x00, + 0xff,0x3f,0x3f,0x3f, + 0x0f,0x0f,0x03,0x03, + 0x00,0xc0,0x00,0xf0, + 0x80,0xfc,0xf0,0x7f, + 0xfc,0xff,0xfc,0xfc, + 0xf0,0xf0,0xc0,0xc0, + 0x03,0x00,0x0f,0x00, + 0x3f,0x00,0xfc,0x03, + 0x03,0x02,0x0f,0x08, + 0x3f,0x20,0xff,0x80, + 0xfc,0x03,0xe0,0x1c, + 0x80,0x60,0x00,0x80, + 0xfc,0xff,0xfc,0xfc, + 0xf0,0xf0,0xc0,0xc0, + 0x00,0x03,0x00,0x0f, + 0x00,0x3f,0x03,0xff, + 0x02,0x03,0x08,0x0f, + 0x20,0x3f,0x80,0xff, + 0x03,0xff,0x1f,0xfc, + 0x7f,0xe0,0xff,0x80, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfc, + 0xfc,0xf0,0xf3,0xc0, + 0xff,0xff,0xff,0xfc, + 0xfc,0xf0,0xf3,0xc0, + 0xcf,0x00,0x3f,0x00, + 0xff,0x03,0xff,0x0f, + 0xff,0xff,0xff,0x3f, + 0x3f,0x0f,0x0f,0xc3, + 0x03,0xf0,0x00,0xfc, + 0xc0,0xff,0xf0,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x7f,0xff,0x1f, + 0x3f,0x07,0x0f,0xc1, + 0xfc,0x80,0xff,0xe0, + 0xff,0xf8,0xff,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x3f,0x3f,0x3f, + 0xcf,0x0f,0xf3,0x03, + 0xfc,0xc0,0xff,0xf0, + 0xff,0xfc,0xff,0xff, + 0xfc,0xff,0xfc,0xfc, + 0xf3,0xf0,0xcf,0xc0, + 0x3f,0x03,0xff,0x0f, + 0xff,0x3f,0xff,0xff, + 0x3f,0x03,0xff,0x0f, + 0xff,0x3f,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0x01,0xf8,0x06, + 0xc0,0x38,0x00,0xc0, + 0x01,0x01,0x07,0x04, + 0x1c,0x10,0x73,0x40, + 0x00,0xc0,0x03,0x00, + 0x0c,0x00,0x33,0x00, + 0xcf,0x00,0x3f,0x00, + 0xff,0x03,0xff,0x0f, + 0x01,0xff,0x07,0xfe, + 0x3f,0xf8,0xff,0xc0, + 0xff,0x01,0xff,0x04, + 0xfc,0x10,0xf3,0x40, + 0xff,0xc0,0xff,0x00, + 0xfc,0x00,0xf3,0x00, + 0xcf,0x00,0x3f,0x00, + 0xff,0x03,0xff,0x0f, + 0x01,0x0e,0xc0,0x01, + 0x30,0x00,0x0c,0xc0, + 0x03,0xf0,0x00,0xfc, + 0xc0,0xff,0xf0,0xff, + 0xff,0x00,0x1f,0xe0, + 0x01,0x1e,0x00,0x01, + 0x80,0x00,0xe0,0x00, + 0x38,0x00,0x0e,0xc0, + 0xfe,0x0f,0xff,0x01, + 0x3f,0x00,0x0f,0xc0, + 0x03,0xf0,0x00,0xfc, + 0xc0,0xff,0xf0,0xff, + 0x00,0xff,0xe0,0xff, + 0xfe,0x1f,0xff,0x01, + 0xff,0x00,0xff,0x00, + 0x3f,0x00,0x0f,0xc0, + 0x7c,0x00,0x1f,0x00, + 0x07,0x00,0x01,0x00, + 0x00,0x80,0x80,0x78, + 0xf8,0x07,0xff,0x00, + 0xff,0x3f,0x3f,0x3f, + 0xcf,0x0f,0xf3,0x03, + 0x3c,0x00,0x0f,0x00, + 0x03,0x80,0x80,0x70, + 0xfc,0x00,0xff,0x00, + 0xff,0x00,0xff,0x00, + 0xff,0x80,0x7f,0xf8, + 0x07,0xff,0x00,0xff, + 0xff,0x3f,0x3f,0x3f, + 0xcf,0x0f,0xf3,0x03, + 0xfc,0x00,0xff,0x00, + 0xff,0x80,0x7f,0xf0, + 0xfc,0xff,0xfc,0xfc, + 0xf3,0xf0,0xcf,0xc0, + 0x3c,0x00,0xf0,0x00, + 0xc0,0x00,0x00,0x03, + 0x3e,0x02,0xf8,0x08, + 0xe0,0x20,0x80,0x80, + 0x00,0x03,0x03,0x1c, + 0x1f,0x60,0x7f,0x80, + 0xfc,0xff,0xfc,0xfc, + 0xf3,0xf0,0xcf,0xc0, + 0x3f,0x00,0xff,0x00, + 0xff,0x00,0xff,0x03, + 0x3f,0x02,0xff,0x08, + 0xff,0x20,0xff,0x80, + 0xff,0x03,0xfc,0x1f, + 0xe0,0x7f,0x80,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0x00,0xff,0x00,0xff, + 0x03,0xff,0x0f,0xff, + 0xff,0xff,0x3f,0xff, + 0x0f,0xff,0xc3,0xff, + 0xf0,0xff,0xfc,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x1f,0xff, + 0x07,0xff,0xc1,0xff, + 0x80,0xff,0xe0,0xff, + 0xf8,0xff,0xfe,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x3f,0xff,0x3f,0xff, + 0x0f,0xff,0x03,0xff, + 0xc0,0xff,0xf0,0xff, + 0xfc,0xff,0xff,0xff, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0x03,0xff,0x0f,0xff, + 0x3f,0xff,0xff,0xff, + 0x03,0xff,0x0f,0xff, + 0x3f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0x01,0x01,0x06, + 0x07,0x38,0x3f,0xc0, + 0xff,0x01,0xfc,0x07, + 0xf0,0x1f,0xc0,0x7f, + 0x3f,0xc0,0xfc,0x03, + 0xf0,0x0f,0xc0,0x3f, + 0x00,0xff,0x00,0xff, + 0x03,0xff,0x0f,0xff, + 0xff,0x01,0xfe,0x07, + 0xf8,0x3f,0xc0,0xff, + 0x01,0xff,0x04,0xff, + 0x10,0xff,0x40,0xff, + 0xc0,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x03,0xff,0x0f,0xff, + 0xf0,0x0e,0x3e,0xc1, + 0x0f,0xf0,0xc3,0xfc, + 0xf0,0xff,0xfc,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0x00,0x00,0xe0, + 0xe0,0x1e,0xfe,0x01, + 0x7f,0x80,0x1f,0xe0, + 0x07,0xf8,0xc1,0xfe, + 0x0f,0xfe,0x01,0xff, + 0x00,0xff,0xc0,0xff, + 0xf0,0xff,0xfc,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x00,0xff,0xe0, + 0x1f,0xfe,0x01,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0xc0,0xff, + 0x80,0x7f,0xe0,0x1f, + 0xf8,0x07,0xfe,0x01, + 0x7f,0x80,0x07,0x78, + 0x00,0x07,0x00,0x00, + 0x3f,0xff,0x3f,0xff, + 0x0f,0xff,0x03,0xff, + 0xc0,0x3f,0xf0,0x0f, + 0x7c,0x83,0x0f,0x70, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x00,0xff, + 0x80,0xff,0xf8,0x7f, + 0xff,0x07,0xff,0x00, + 0x3f,0xff,0x3f,0xff, + 0x0f,0xff,0x03,0xff, + 0x00,0xff,0x00,0xff, + 0x80,0xff,0xf0,0x7f, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0x03,0xfc,0x0f,0xf0, + 0x3f,0xc0,0xfc,0x03, + 0x03,0xfe,0x0f,0xf8, + 0x3f,0xe0,0xff,0x80, + 0xfc,0x03,0xe0,0x1c, + 0x80,0x60,0x00,0x80, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0x00,0xff,0x00,0xff, + 0x00,0xff,0x03,0xff, + 0x02,0xff,0x08,0xff, + 0x20,0xff,0x80,0xff, + 0x03,0xff,0x1f,0xfc, + 0x7f,0xe0,0xff,0x80, + 0xfe,0x01,0xf8,0x06, + 0xc0,0x38,0x00,0xc0, + 0x01,0x01,0x04,0x07, + 0x10,0x1f,0x40,0x7f, + 0x00,0xc0,0x00,0x03, + 0x00,0x0f,0x00,0x3f, + 0x00,0xff,0x00,0xff, + 0x03,0xff,0x0f,0xff, + 0x01,0xff,0x07,0xfe, + 0x3f,0xf8,0xff,0xc0, + 0xff,0x01,0xfc,0x07, + 0xf0,0x1f,0xc0,0x7f, + 0xff,0xc0,0xfc,0x03, + 0xf0,0x0f,0xc0,0x3f, + 0x00,0xff,0x00,0xff, + 0x03,0xff,0x0f,0xff, + 0x01,0x0e,0x00,0xc1, + 0x00,0xf0,0xc0,0xfc, + 0xf0,0xff,0xfc,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x00,0x1f,0xe0, + 0x01,0x1e,0x00,0x01, + 0x00,0x80,0x00,0xe0, + 0x00,0xf8,0xc0,0xfe, + 0xfe,0x0f,0x3f,0xc1, + 0x0f,0xf0,0xc3,0xfc, + 0xf0,0xff,0xfc,0xff, + 0xff,0xff,0xff,0xff, + 0x00,0xff,0xe0,0xff, + 0xfe,0x1f,0xff,0x01, + 0x7f,0x80,0x1f,0xe0, + 0x07,0xf8,0xc1,0xfe, + 0x00,0x7f,0x00,0x1f, + 0x00,0x07,0x00,0x01, + 0x00,0x80,0x80,0x78, + 0xf8,0x07,0xff,0x00, + 0x3f,0xff,0x3f,0xff, + 0x0f,0xff,0x03,0xff, + 0x00,0x3f,0x00,0x0f, + 0x00,0x83,0x80,0x70, + 0x80,0x7f,0xe0,0x1f, + 0xf8,0x07,0xfe,0x01, + 0xff,0x80,0x7f,0xf8, + 0x07,0xff,0x00,0xff, + 0x3f,0xff,0x3f,0xff, + 0x0f,0xff,0x03,0xff, + 0xc0,0x3f,0xf0,0x0f, + 0xfc,0x83,0x7f,0xf0, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0x00,0xfc,0x00,0xf0, + 0x00,0xc0,0x00,0x03, + 0x02,0xfe,0x08,0xf8, + 0x20,0xe0,0x80,0x80, + 0x00,0x03,0x03,0x1c, + 0x1f,0x60,0x7f,0x80, + 0xff,0xff,0xfc,0xff, + 0xf0,0xff,0xc0,0xff, + 0x03,0xfc,0x0f,0xf0, + 0x3f,0xc0,0xff,0x03, + 0x03,0xfe,0x0f,0xf8, + 0x3f,0xe0,0xff,0x80, + 0xff,0x03,0xfc,0x1f, + 0xe0,0x7f,0x80,0xff }; diff --git a/src/tiles.h b/src/tiles.h index c2b9b8b..fa27ba4 100644 --- a/src/tiles.h +++ b/src/tiles.h @@ -1,6 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /tiles.png -c /tiles.c -map -bpp 2 -noflip -keep_palette_order - #ifndef METASPRITE_tiles_H #define METASPRITE_tiles_H diff --git a/src/title_bg.c b/src/title_bg.c index 2f5b997..dd4d983 100644 --- a/src/title_bg.c +++ b/src/title_bg.c @@ -1,5 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /title_bg.png -c /title_bg.c -map -bpp 2 -noflip -keep_palette_order -max_palettes 1 #include #include @@ -9,228 +8,886 @@ BANKREF(title_bg) const palette_color_t title_bg_palettes[4] = { RGB8(255,255,255), RGB8(170,170,170), RGB8( 85, 85, 85), RGB8( 0, 0, 0) - }; + +}; const uint8_t title_bg_tiles[3504] = { - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xfd,0xf7,0xf9,0xf7,0xf9,0xff,0xf0,0xfe,0xf1,0xff,0xe0,0xff,0xe4, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f, - 0xff,0xff,0xff,0xf8,0xf7,0xf8,0xff,0xf0,0xfd,0xe1,0xfb,0xe7,0xff,0xe7,0xff,0xe3, - 0xff,0xff,0xff,0x7f,0xff,0x3f,0xfe,0x3f,0xff,0x9e,0xff,0x9c,0xdf,0xdc,0xdf,0xd8, - 0xff,0xff,0xff,0x8f,0xfb,0x07,0xff,0x01,0xff,0x31,0xff,0x79,0xff,0x79,0xff,0xfd, - 0xff,0xff,0xfb,0x03,0xff,0x01,0xff,0x00,0xff,0x80,0xff,0x8c,0xff,0x8e,0xef,0x9e, - 0xff,0xff,0xff,0xc3,0xff,0xe0,0xff,0xe0,0xff,0x71,0xff,0x33,0xff,0x33,0xbf,0x32, - 0xff,0xff,0xff,0xdf,0xff,0x1f,0xff,0x1f,0xff,0x9e,0xff,0xde,0xff,0xde,0xfd,0xdc, - 0xff,0xbf,0xdf,0x9f,0xff,0x1f,0xff,0x1f,0xff,0x1f,0xff,0x1f,0xff,0x0f,0xff,0x4f, - 0xff,0xff,0xff,0x3f,0xff,0x3f,0xff,0x3e,0x7f,0x9e,0x7f,0x9e,0x7f,0x8c,0xff,0x0c, - 0xff,0xff,0xff,0xbf,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f, - 0xff,0xff,0xbf,0x87,0xff,0xc0,0xff,0xe0,0xff,0xe7,0xff,0xe7,0xff,0xe6,0xff,0xe4, - 0xff,0xff,0xff,0xe0,0xff,0x20,0xef,0x20,0x7f,0x30,0xff,0xb1,0xff,0xb1,0xff,0xf1, - 0xff,0xff,0xff,0x7f,0xff,0x1f,0xff,0x0e,0xfd,0x04,0xff,0xc4,0xff,0xc4,0xf7,0xc4, - 0xff,0xff,0xbf,0xc7,0xff,0x01,0xfd,0x03,0xf7,0x39,0xff,0xf9,0xff,0xf9,0xff,0xf8, - 0xff,0xff,0xff,0xcf,0xff,0x8f,0xff,0x8f,0xff,0xc7,0xff,0xc7,0xff,0xc3,0xff,0xc1, - 0xff,0xef,0xff,0xff,0xff,0xdf,0xbf,0xdf,0xff,0x9f,0xff,0x9f,0xff,0x1f,0xff,0x1f, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff, - 0xff,0xc4,0xff,0xc4,0xff,0xce,0xfd,0xcc,0xff,0xc0,0xff,0x81,0xff,0x1f,0xff,0x9f, - 0xff,0x7f,0xff,0x7f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0x7f,0x1f,0xff,0x9f, - 0xff,0xe1,0xff,0xe0,0xfd,0xf2,0xff,0xfe,0xff,0xbf,0xff,0xbf,0xff,0xbf,0xff,0x9f, - 0xdf,0xd8,0xff,0x78,0xff,0x18,0xff,0x08,0xff,0x88,0xff,0x88,0xff,0x88,0xff,0x8c, - 0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f, - 0xff,0x8c,0xff,0x88,0xbf,0xc0,0xff,0x01,0xff,0x80,0xff,0x9c,0xfd,0x9e,0xff,0x9e, - 0xff,0x70,0xff,0xf0,0xff,0xf2,0xff,0xf2,0xff,0xf3,0xff,0x73,0xff,0x73,0xff,0x73, - 0xdf,0xdc,0xff,0xfc,0xff,0xf8,0xff,0xf8,0xff,0xf8,0xff,0xf0,0xff,0xc1,0xff,0xd9, - 0xff,0xc7,0xff,0xc7,0xff,0xc7,0xff,0xc3,0xff,0x03,0xff,0x23,0xff,0xf3,0xf7,0xf3, - 0xff,0x20,0xfd,0x33,0xff,0x33,0xff,0x33,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f, - 0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f, - 0xff,0xe0,0xff,0xe0,0xff,0xe4,0xff,0xe6,0xff,0xe6,0xff,0xe6,0xff,0xe7,0xff,0xe7, - 0xff,0xf9,0xff,0xf9,0xff,0xf8,0xff,0xf0,0xff,0xf8,0xff,0xf9,0xff,0xf9,0xff,0xf9, - 0xf7,0xc4,0xfd,0x8c,0xef,0x0c,0xff,0x1c,0xfd,0x0c,0xff,0x86,0xff,0xc6,0xfe,0xc6, - 0xff,0xf8,0xff,0xf8,0xff,0xf9,0xff,0xf9,0xff,0xf9,0xff,0xf9,0xff,0xf9,0xff,0xfb, - 0xff,0xc8,0xff,0xcc,0xff,0xcc,0xff,0xcc,0xff,0xce,0xff,0xcf,0xff,0xcf,0xff,0xcf, - 0xff,0x1f,0xff,0x5f,0x7f,0xdf,0xff,0xdf,0xff,0xdf,0xff,0xdf,0xff,0xdf,0xff,0xdf, - 0xff,0x9f,0xff,0x9f,0xff,0x9f,0xdf,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xbf,0x9f,0xff,0xcf,0xdf,0xef,0xff,0xcf,0xff,0xef,0xef,0xff,0xff,0xff,0xff,0xff, - 0xff,0xdf,0xff,0xcf,0xff,0xe6,0xff,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x7d,0x8c,0xff,0x1e,0xff,0x3e,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x7b,0xff,0x33,0xdf,0x37,0xff,0x8f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x9e,0xff,0x9e,0xff,0xdf,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x73,0xff,0x61,0xff,0x40,0xdf,0x7e,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xd1,0xff,0x93,0xff,0x13,0xff,0x13,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xfd,0xf9,0xff,0xf9,0xff,0xf9,0xff,0xfd,0xff,0xfd,0xff,0xfd,0xff,0xff,0xff,0xff, - 0xff,0x3f,0xff,0xbf,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0x3f,0xff,0x3f,0xff,0x3f,0xbf,0x3f,0x7f,0x7f,0xff,0xff,0xff,0xbf,0xff,0xbf, - 0xff,0xe7,0xff,0xe7,0xff,0xe7,0xff,0xe7,0xff,0xf7,0xff,0xf7,0xff,0xf7,0xff,0xff, - 0xff,0xf9,0xff,0xfb,0xfb,0xff,0xfb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xdf,0xc7,0xff,0xe7,0xff,0xe7,0xff,0xef,0xff,0xef,0xef,0xef,0xff,0xff,0xff,0xff, - 0xff,0x73,0xff,0x33,0xff,0x07,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xcf,0xff,0xcf,0xff,0xef,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xdf,0xff,0xdf,0xff,0xdf,0xff,0xdf,0xdf,0xdf,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xbf,0xfd,0x82,0xfb,0x84,0xff,0x90,0xfe,0xb9,0xff,0xb8,0xbf,0xb8,0xff,0xf8, - 0xff,0xff,0xbf,0x45,0xff,0x09,0xff,0xc9,0xff,0xe9,0xff,0xe9,0xff,0xe9,0xff,0xe9, - 0xfb,0xf9,0xff,0xe1,0xff,0xe1,0xef,0xf1,0xff,0xf1,0xff,0xf3,0xff,0xf3,0xff,0xf3, - 0xff,0xff,0xff,0x00,0xbf,0xc0,0xf7,0x88,0xff,0xce,0xff,0xce,0xed,0xdf,0xff,0xc1, - 0xff,0xff,0xff,0x7e,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xf5,0x0b,0xfd,0x82,0xff,0xc0,0xff,0xc4,0xff,0xc7,0xff,0xc7,0xff,0xc7, - 0xff,0xff,0xff,0xff,0xff,0x7e,0xff,0x3e,0xff,0x3e,0xff,0x3c,0xff,0x3c,0xff,0xb8, - 0xff,0xbf,0xff,0xbe,0xff,0x3e,0xdf,0x1f,0xff,0x1f,0xef,0x1f,0x7f,0x8f,0xff,0x8f, - 0xff,0xff,0xff,0x07,0xff,0x03,0xfe,0x00,0xff,0x18,0xfb,0x18,0xff,0x18,0xff,0x18, - 0xff,0xff,0xef,0xe7,0xff,0xc7,0xbf,0xc7,0xbf,0xc7,0xff,0xcf,0xff,0xce,0xff,0xce, - 0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xbf,0x3f, - 0xff,0xf8,0xfb,0xfc,0xff,0xf9,0xff,0xf9,0xff,0xf9,0xff,0xf9,0xff,0xf9,0xff,0xf9, - 0xff,0xf8,0xff,0xf8,0xff,0xf0,0xff,0xf0,0xfe,0xf1,0xfe,0xf9,0xff,0xf9,0xfe,0xf9, - 0xff,0x03,0xff,0x03,0xff,0x01,0xff,0xf3,0xff,0xf3,0xff,0xf3,0xff,0xf3,0xff,0xf3, - 0xff,0xc1,0xff,0xc9,0xff,0xcd,0xff,0xcd,0xff,0xcd,0xff,0xcf,0xff,0xcf,0xfe,0xcf, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff,0xff,0xff, - 0xff,0xc7,0xff,0xc7,0xff,0xc7,0xff,0xc7,0xff,0xc7,0xff,0xc7,0xff,0xcf,0xdf,0xce, - 0xff,0xb8,0xff,0xb9,0xff,0xb9,0x7f,0xb9,0x7f,0xb8,0x7e,0xa1,0xff,0x13,0xff,0x73, - 0xff,0x8f,0xff,0xc7,0xff,0xc7,0xbf,0xc7,0xff,0x07,0xfb,0xe7,0xff,0xf3,0xff,0xfb, - 0xff,0x99,0xe7,0x99,0xf7,0x8b,0xff,0x83,0xfe,0x91,0xff,0x98,0xff,0x98,0xff,0xbc, - 0xff,0xcc,0xf7,0xc8,0xfe,0xc1,0xff,0xc8,0xff,0xcc,0xff,0xce,0xff,0xcf,0xff,0xcf, - 0xff,0x7f,0xff,0xff,0x7f,0xff,0xff,0x7f,0xff,0x3f,0xff,0x3f,0xff,0x3f,0xff,0x3f, - 0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xd7,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xfd,0xfc,0xff,0xfe, - 0xff,0xff,0xff,0xfd,0xff,0xf7,0xfe,0xff,0xfc,0xef,0xdf,0xdd,0xbb,0xbb,0x57,0x77, - 0xff,0xf9,0xbb,0xf9,0x7f,0xfd,0x7f,0xfd,0xff,0xfd,0xfd,0xfd,0xff,0xff,0xff,0xff, - 0xfe,0xfd,0xfe,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xf3,0xff,0xf3,0xff,0xf3,0xff,0xf3,0xff,0xf3,0xf7,0xf3,0xfb,0xfb,0xff,0xff, - 0xff,0x82,0x0f,0xf0,0xfe,0xfd,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff, - 0xff,0xec,0xff,0xe9,0xef,0xe3,0xf7,0xcf,0xff,0x3f,0xff,0x7f,0xff,0xff,0xff,0xff, - 0xfb,0xf3,0xfb,0xf3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xf9,0xff,0xf9,0xff,0xf9,0xff,0xfd,0xff,0xfd,0xff,0xfd,0xff,0xff,0xff,0xff, - 0xff,0xbc,0xbf,0xfd,0xbf,0xfd,0xfd,0xfd,0xff,0xfd,0xff,0xfd,0xff,0xff,0xff,0xff, - 0xff,0x3f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0x7f,0x7f,0xff,0xff,0xff,0xff, - 0xfe,0xff,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x7f,0xff,0x3f,0x3f,0x4f,0x0f,0xfa,0xe3,0xf8,0xf8,0xfc,0xfc,0xff,0xff,0xff,0xff, - 0xfe,0xfe,0xfe,0xfe,0x6f,0xef,0xf1,0xf1,0xfe,0xfe,0x9c,0x9c,0xed,0xed,0xfb,0xfb, - 0xef,0xef,0xdf,0xdf,0x7f,0x7f,0x3f,0x3f,0x7f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfe,0xfe, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb3,0xff,0xe5,0x12,0xcd,0xd4, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x77,0xff,0xaa,0x22,0xca,0x26, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0x79,0xfc,0xbf,0x39,0xbe,0x7c, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc3,0xff,0x35,0x43,0x7e,0xe7,0xf6,0x6e, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf9,0xff,0xbe,0x30,0xb6,0x36,0x54,0xb1, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x87,0xff,0x5f,0x87,0xef,0xdf,0xdf,0xdf, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,0x9f,0xff, - 0xef,0xff,0xef,0xfb,0xcb,0xfb,0xd2,0xfa,0xc3,0xfb,0xc3,0xfb,0xc3,0xfb,0x83,0xfb, - 0xe3,0xe3,0xcb,0xcb,0x7b,0x7b,0xfb,0xfb,0xfb,0xfb,0xfb,0xfb,0xfb,0xfb,0xff,0xff, - 0xfe,0xfe,0xfc,0xfe,0xfe,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xb5,0xcd,0x6e,0x2c,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x8c,0xf3,0xe0,0x46,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x37,0xbb,0x3c,0x78,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x6e,0x6c,0x6d,0xed,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xae,0x15,0x9d,0xc6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xdf,0xdf,0xbf,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x9f,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xf9,0xff,0xf8,0xff,0xfe,0xff,0xff,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x83,0xfb,0x0b,0xfb,0x8b,0x7b,0xe3,0xe3,0xff,0xff,0xde,0xff,0xda,0xe3,0xfa,0x43, - 0xfd,0xff,0xfe,0xfd,0xfe,0xf1,0xf0,0x7f,0xf0,0x7f,0x1a,0xfd,0x1e,0xf8,0x10,0xfe, - 0xff,0xff,0xaf,0xdf,0xe7,0x8f,0xe3,0x8f,0x83,0x7f,0x03,0xff,0x43,0xbf,0xc3,0x1f, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xbf,0xff,0xbf,0xff, - 0xff,0xff,0xfd,0xff,0xfe,0xff,0xff,0xff,0xfe,0xfe,0xff,0xfe,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xfe,0xfd,0xff,0xff,0xff,0xfe,0xfe,0x7c,0x7c,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0xfe,0xf7,0xfe,0xf7,0xfe,0xf7,0xfe, - 0xfb,0xc3,0xf3,0x83,0xe3,0x93,0xe2,0x03,0x92,0x03,0x82,0x23,0xcb,0x22,0xe3,0x0a, - 0x96,0xf9,0xfd,0xfa,0xdf,0xee,0xbb,0x86,0xff,0x80,0xfa,0x80,0xfa,0x80,0xfc,0x80, - 0xc0,0x1f,0xc0,0x0f,0x40,0x8f,0x00,0x8f,0x18,0x0e,0x3d,0x00,0x3f,0x00,0x0b,0x00, - 0xbf,0xff,0x7f,0xff,0x1f,0xff,0x1f,0xff,0x5f,0xff,0xff,0xff,0xf9,0x7f,0xff,0x38, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfe,0xfe,0xfe, - 0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xef,0xef,0xef,0xef,0xef,0xff,0xff,0xff,0xff, - 0xff,0xff,0xfe,0xfe,0xd2,0x52,0xdb,0xfb,0xff,0xff,0xff,0xff,0xbe,0xbe,0xab,0xaa, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7b,0x7f, - 0xef,0xff,0xef,0xff,0xef,0xff,0xe7,0xff,0xe7,0xff,0xef,0xff,0xe7,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff, - 0xf6,0xfe,0xf6,0xfe,0xe6,0xf6,0xff,0xff,0xff,0xff,0xfc,0xfc,0xff,0xfc,0xff,0xfc, - 0xe3,0x02,0x83,0x62,0x03,0x02,0x03,0x02,0xfe,0xff,0x0f,0x0e,0x83,0x02,0x83,0x02, - 0xfc,0x80,0xfe,0x80,0xff,0x00,0xce,0x01,0x8e,0x00,0x88,0x44,0x80,0x08,0x80,0x00, - 0x0b,0x00,0x09,0x00,0x01,0x00,0x03,0x00,0x03,0x00,0x03,0x04,0x01,0x00,0x00,0x00, - 0xff,0x38,0xff,0x38,0xff,0x38,0xff,0x38,0xfe,0x19,0xfd,0x1a,0xbf,0x59,0x7f,0x99, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfe,0xff,0x79,0xfb, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7,0x7f,0xe7,0xdf,0xff,0xbf,0xff,0xff, - 0xfd,0xfd,0xfd,0xfd,0xfd,0xfd,0xfd,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0x7f,0x7f, - 0xff,0xff,0xf7,0xf7,0xf7,0xf7,0xf7,0xf7,0xef,0xef,0xff,0xff,0xff,0xff,0xff,0xff, - 0xeb,0xeb,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xfe,0xfe,0xfc,0xfd,0xfd,0xfd,0xfd,0xfd,0xf5,0xf5,0xf7,0xf7,0xf7,0xf7,0xff,0xff, - 0xf7,0xf7,0xef,0xef,0xff,0xef,0xdf,0xdf,0xdf,0xdf,0x9f,0x9f,0xbd,0xbd,0xbd,0xbd, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xbf, - 0xff,0xff,0xf9,0xff,0xf3,0xff,0xef,0xff,0xe7,0xff,0xef,0xff,0xef,0xff,0xef,0xff, - 0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff, - 0xfe,0xfd,0xfe,0xff,0xfc,0xfe,0xff,0xfc,0xff,0xfc,0xf3,0xf8,0xf3,0xfe,0xf7,0xfe, - 0xe3,0x02,0xe3,0x02,0xe3,0x02,0x03,0x22,0x03,0x22,0x03,0x12,0x03,0x12,0x83,0x12, - 0x00,0x00,0x80,0x80,0x80,0x00,0x80,0x00,0x80,0x00,0x40,0x80,0xc0,0x00,0xe0,0x00, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x03,0x00, - 0xff,0x7f,0xfc,0x1b,0xfc,0x1b,0xfc,0x1b,0xfc,0x1b,0x7c,0x9b,0xfc,0x1b,0xfc,0x3b, - 0xff,0xff,0x7f,0xff,0x7e,0xfe,0x7e,0xfe,0x7f,0xff,0x7f,0xff,0x7a,0xfa,0x7a,0xfa, - 0xff,0xff,0x23,0x23,0x11,0x11,0xdc,0xdc,0xdf,0xde,0x59,0x5b,0x95,0x95,0x1a,0x90, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0xdf,0xdf,0xff,0x5f,0xff, - 0xfb,0xfb,0xf7,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xbf,0xbf,0x7f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xff,0xe7,0xf9,0xf7, - 0xfd,0xfa,0xff,0xfc,0xff,0xfc,0xff,0xff,0xfc,0xfe,0xe6,0xf0,0xff,0xfc,0xff,0xfc, - 0xc3,0x22,0x83,0x62,0x07,0x87,0xff,0xff,0x47,0x47,0x43,0x43,0x63,0x43,0x73,0x4b, - 0xd8,0x20,0x8d,0x72,0xfc,0xff,0xa1,0x7e,0xf8,0x27,0xe0,0xbf,0xe6,0xbf,0xe7,0xff, - 0x9f,0x98,0x6f,0xff,0x6f,0xef,0x6c,0xef,0x5c,0xdf,0x3e,0xdf,0x6d,0xef,0xef,0xef, - 0xfc,0xfb,0xfc,0xfb,0xff,0xff,0x79,0xff,0x7a,0xff,0xfb,0xff,0xfb,0xff,0xff,0xff, - 0x7e,0xfe,0x7e,0xfe,0xff,0xff,0x7f,0xff,0x7b,0xfb,0x62,0xf4,0xc2,0xc6,0xa0,0x86, - 0x3c,0x3c,0x0a,0x0e,0x7c,0x7d,0x7f,0x7f,0xc7,0x47,0xbf,0x9f,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xdf,0xff,0xef,0xaf,0xef,0xef, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0xff,0xdf,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xf7,0xff,0xff,0xe7,0xe7,0xff,0xef,0xff,0xef,0xff,0xef,0xff, - 0xff,0xfc,0xfd,0xfe,0xfd,0xfe,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xf3,0x4b,0x7b,0xc3,0x7b,0xc3,0x7b,0xd3,0xf3,0x5b,0x7b,0xfb,0xfb,0xfb,0xff,0xff, - 0xf7,0xff,0xff,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xf5,0x6f,0xff,0xef,0xff, - 0xff,0xff,0xc9,0xc9,0xfb,0xf9,0xc9,0xcd,0xfd,0xfd,0xcf,0xcf,0xfe,0xff,0xc7,0xc7, - 0xfc,0xff,0xff,0xff,0xff,0xff,0xfe,0xfe,0xfc,0xfc,0x79,0x78,0x14,0x14,0xa2,0x8a, - 0x80,0xa6,0x7f,0x33,0x55,0x3b,0x7e,0x39,0x3f,0x3c,0xff,0x1c,0x7f,0x6e,0x7f,0xbf, - 0xce,0x4e,0x24,0x20,0x91,0x99,0xdf,0xdf,0xcf,0x5f,0xed,0x7d,0xeb,0x3f,0x65,0x3f, - 0x5f,0x5f,0xbf,0xbf,0x7f,0x7f,0x7f,0x7f,0xff,0xff,0x77,0x7b,0xf7,0x7f,0xff,0x67, - 0xfe,0xff,0xfb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x7f,0xff,0x7b,0xff,0xff,0xff,0xef,0xff,0xe7,0xff,0xef,0xff,0xef,0xff,0xed,0xf5, - 0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xfd,0xfd,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xe7,0xe7,0x63,0x1b,0xf3,0x8b,0xf3,0x8b,0xb3,0xcb,0xa3,0xdb, - 0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x7d,0xc5,0xbd,0xe5,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xc6,0xff,0xeb,0xf5,0xf5,0xfb,0xdf,0xef,0xef,0xf7,0xfd,0xf7,0xff,0xfd,0xff,0xff, - 0xdf,0x6f,0x0f,0xff,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff, - 0xe9,0xf9,0xf8,0xf8,0xfc,0xfc,0xfe,0xfe,0xfc,0xfc,0xfc,0xfc,0xfb,0xf8,0xfb,0xfb, - 0xff,0xff,0xff,0xff,0xff,0x7f,0x3f,0x7f,0x5f,0x3f,0x3f,0x1f,0x1f,0x0f,0x0f,0x2f, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff, - 0xff,0xff,0xfe,0xff,0xfd,0xff,0xfe,0xff,0xfe,0xff,0xfe,0xff,0xfe,0xff,0xff,0xff, - 0xdb,0xb7,0xbf,0xf7,0xbb,0xfb,0x3f,0xfb,0x3f,0xfb,0x7f,0xfb,0x7f,0xfb,0xff,0xfb, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc7,0xcf,0xc3,0xdd,0x82,0xbd,0xcf,0xc3, - 0xff,0xff,0xff,0xff,0x0f,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff, - 0xfb,0xfb,0xff,0xfb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xaf,0xbf,0xbf,0xbf,0xbf,0xbf,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff,0xef,0xff, - 0xff,0xff,0x7f,0xff,0xff,0xff,0x7f,0xff,0x7f,0xff,0x7f,0xff,0xff,0xff,0xff,0xff, - 0xff,0xfb,0xff,0xfb,0xfe,0xfa,0xfa,0xfa,0xff,0xff,0xff,0xff,0xff,0xe2,0xd6,0x9a, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f,0x7f,0x7f,0xbf,0xbf,0x5f,0xdf, - 0xff,0xff,0xff,0xff,0xfe,0xfe,0xfe,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0x0f,0x01,0x16,0x11,0x3f,0x39,0xff,0xfd,0xff,0xff,0x9f,0xcf,0x37,0x0b,0x1f,0x27, - 0xff,0xff,0x7f,0xff,0xff,0xff,0xdf,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xef,0xff,0xef,0xff,0xef,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xbe,0xba,0xbf,0xbb,0xbf,0xbb,0xfe,0xfa,0xfe,0xfa,0xfe,0xfa,0xff,0xfb,0xff,0xfb, - 0xef,0xaf,0x6f,0x6f,0x7f,0x77,0xff,0xfb,0xef,0xeb,0x7d,0x5d,0x5a,0x5a,0x67,0x67, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x7f, - 0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xff,0xfe,0xff, - 0x0f,0x73,0x1f,0x6f,0x1f,0x7f,0x07,0x7f,0x7f,0x1f,0x7f,0xbf,0x3f,0xff,0x3f,0xff, - 0xff,0xff,0xe7,0xef,0xff,0xc7,0xa7,0xd7,0xb7,0x87,0xbb,0x77,0xff,0xff,0xff,0xff, - 0xef,0xff,0xf7,0x87,0x77,0xbe,0x85,0x66,0xad,0x74,0x1d,0x8b,0xff,0xff,0xff,0xff, - 0xf7,0xff,0x33,0x77,0xe6,0x33,0x3a,0xa2,0xa0,0x29,0xcf,0xa9,0xff,0xff,0xff,0xff, - 0xa1,0xff,0x6d,0x23,0x5f,0x2f,0xaf,0x43,0x4f,0x5f,0x47,0x43,0xff,0xff,0xff,0xff, - 0xcd,0xff,0x90,0xc5,0xd3,0xb4,0x86,0x86,0xb6,0xb6,0x06,0x8e,0xff,0xff,0xff,0xff, - 0xdf,0xff,0x9d,0xb9,0xb9,0x79,0xfa,0x79,0xf4,0xfa,0xfe,0xf2,0xff,0xff,0xff,0xff, - 0xdd,0xff,0x89,0xdd,0x9a,0x99,0xd9,0x16,0xa4,0x50,0xee,0x8e,0xff,0xff,0xff,0xff, - 0x80,0xff,0xea,0x84,0xff,0xce,0xee,0xde,0xde,0xde,0xdd,0xde,0xff,0xff,0xff,0xff, - 0x21,0xff,0xef,0x21,0x6f,0xee,0xce,0xe2,0xfe,0xce,0xe3,0xc2,0xff,0xff,0xff,0xff, - 0xbf,0xff,0x5f,0x0f,0x6f,0xef,0xcf,0xef,0xef,0xdf,0x3f,0x1e,0xff,0xfe,0xff,0xfd, - 0xff,0xff,0xbf,0xbf,0xbf,0xbf,0x6f,0x7f,0x77,0x7f,0xff,0xff,0xbf,0xff,0xff,0x7f + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfd, + 0xf7,0xf9,0xf7,0xf9, + 0xff,0xf0,0xfe,0xf1, + 0xff,0xe0,0xff,0xe4, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x7f, + 0xff,0xff,0xff,0xf8, + 0xf7,0xf8,0xff,0xf0, + 0xfd,0xe1,0xfb,0xe7, + 0xff,0xe7,0xff,0xe3, + 0xff,0xff,0xff,0x7f, + 0xff,0x3f,0xfe,0x3f, + 0xff,0x9e,0xff,0x9c, + 0xdf,0xdc,0xdf,0xd8, + 0xff,0xff,0xff,0x8f, + 0xfb,0x07,0xff,0x01, + 0xff,0x31,0xff,0x79, + 0xff,0x79,0xff,0xfd, + 0xff,0xff,0xfb,0x03, + 0xff,0x01,0xff,0x00, + 0xff,0x80,0xff,0x8c, + 0xff,0x8e,0xef,0x9e, + 0xff,0xff,0xff,0xc3, + 0xff,0xe0,0xff,0xe0, + 0xff,0x71,0xff,0x33, + 0xff,0x33,0xbf,0x32, + 0xff,0xff,0xff,0xdf, + 0xff,0x1f,0xff,0x1f, + 0xff,0x9e,0xff,0xde, + 0xff,0xde,0xfd,0xdc, + 0xff,0xbf,0xdf,0x9f, + 0xff,0x1f,0xff,0x1f, + 0xff,0x1f,0xff,0x1f, + 0xff,0x0f,0xff,0x4f, + 0xff,0xff,0xff,0x3f, + 0xff,0x3f,0xff,0x3e, + 0x7f,0x9e,0x7f,0x9e, + 0x7f,0x8c,0xff,0x0c, + 0xff,0xff,0xff,0xbf, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0xff,0xbf,0x87, + 0xff,0xc0,0xff,0xe0, + 0xff,0xe7,0xff,0xe7, + 0xff,0xe6,0xff,0xe4, + 0xff,0xff,0xff,0xe0, + 0xff,0x20,0xef,0x20, + 0x7f,0x30,0xff,0xb1, + 0xff,0xb1,0xff,0xf1, + 0xff,0xff,0xff,0x7f, + 0xff,0x1f,0xff,0x0e, + 0xfd,0x04,0xff,0xc4, + 0xff,0xc4,0xf7,0xc4, + 0xff,0xff,0xbf,0xc7, + 0xff,0x01,0xfd,0x03, + 0xf7,0x39,0xff,0xf9, + 0xff,0xf9,0xff,0xf8, + 0xff,0xff,0xff,0xcf, + 0xff,0x8f,0xff,0x8f, + 0xff,0xc7,0xff,0xc7, + 0xff,0xc3,0xff,0xc1, + 0xff,0xef,0xff,0xff, + 0xff,0xdf,0xbf,0xdf, + 0xff,0x9f,0xff,0x9f, + 0xff,0x1f,0xff,0x1f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xfe,0xff,0xff, + 0xff,0xc4,0xff,0xc4, + 0xff,0xce,0xfd,0xcc, + 0xff,0xc0,0xff,0x81, + 0xff,0x1f,0xff,0x9f, + 0xff,0x7f,0xff,0x7f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0x7f,0x1f,0xff,0x9f, + 0xff,0xe1,0xff,0xe0, + 0xfd,0xf2,0xff,0xfe, + 0xff,0xbf,0xff,0xbf, + 0xff,0xbf,0xff,0x9f, + 0xdf,0xd8,0xff,0x78, + 0xff,0x18,0xff,0x08, + 0xff,0x88,0xff,0x88, + 0xff,0x88,0xff,0x8c, + 0xff,0xfd,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0x7f, + 0xff,0x8c,0xff,0x88, + 0xbf,0xc0,0xff,0x01, + 0xff,0x80,0xff,0x9c, + 0xfd,0x9e,0xff,0x9e, + 0xff,0x70,0xff,0xf0, + 0xff,0xf2,0xff,0xf2, + 0xff,0xf3,0xff,0x73, + 0xff,0x73,0xff,0x73, + 0xdf,0xdc,0xff,0xfc, + 0xff,0xf8,0xff,0xf8, + 0xff,0xf8,0xff,0xf0, + 0xff,0xc1,0xff,0xd9, + 0xff,0xc7,0xff,0xc7, + 0xff,0xc7,0xff,0xc3, + 0xff,0x03,0xff,0x23, + 0xff,0xf3,0xf7,0xf3, + 0xff,0x20,0xfd,0x33, + 0xff,0x33,0xff,0x33, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0xe0,0xff,0xe0, + 0xff,0xe4,0xff,0xe6, + 0xff,0xe6,0xff,0xe6, + 0xff,0xe7,0xff,0xe7, + 0xff,0xf9,0xff,0xf9, + 0xff,0xf8,0xff,0xf0, + 0xff,0xf8,0xff,0xf9, + 0xff,0xf9,0xff,0xf9, + 0xf7,0xc4,0xfd,0x8c, + 0xef,0x0c,0xff,0x1c, + 0xfd,0x0c,0xff,0x86, + 0xff,0xc6,0xfe,0xc6, + 0xff,0xf8,0xff,0xf8, + 0xff,0xf9,0xff,0xf9, + 0xff,0xf9,0xff,0xf9, + 0xff,0xf9,0xff,0xfb, + 0xff,0xc8,0xff,0xcc, + 0xff,0xcc,0xff,0xcc, + 0xff,0xce,0xff,0xcf, + 0xff,0xcf,0xff,0xcf, + 0xff,0x1f,0xff,0x5f, + 0x7f,0xdf,0xff,0xdf, + 0xff,0xdf,0xff,0xdf, + 0xff,0xdf,0xff,0xdf, + 0xff,0x9f,0xff,0x9f, + 0xff,0x9f,0xdf,0x9f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xbf,0x9f,0xff,0xcf, + 0xdf,0xef,0xff,0xcf, + 0xff,0xef,0xef,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xdf,0xff,0xcf, + 0xff,0xe6,0xff,0xf0, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7d,0x8c,0xff,0x1e, + 0xff,0x3e,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x7b,0xff,0x33, + 0xdf,0x37,0xff,0x8f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x9e,0xff,0x9e, + 0xff,0xdf,0xff,0xdf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x73,0xff,0x61, + 0xff,0x40,0xdf,0x7e, + 0xff,0x7f,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xd1,0xff,0x93, + 0xff,0x13,0xff,0x13, + 0xef,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfd,0xf9,0xff,0xf9, + 0xff,0xf9,0xff,0xfd, + 0xff,0xfd,0xff,0xfd, + 0xff,0xff,0xff,0xff, + 0xff,0x3f,0xff,0xbf, + 0xff,0xbf,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xbf,0x3f, + 0x7f,0x7f,0xff,0xff, + 0xff,0xbf,0xff,0xbf, + 0xff,0xe7,0xff,0xe7, + 0xff,0xe7,0xff,0xe7, + 0xff,0xf7,0xff,0xf7, + 0xff,0xf7,0xff,0xff, + 0xff,0xf9,0xff,0xfb, + 0xfb,0xff,0xfb,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xdf,0xc7,0xff,0xe7, + 0xff,0xe7,0xff,0xef, + 0xff,0xef,0xef,0xef, + 0xff,0xff,0xff,0xff, + 0xff,0x73,0xff,0x33, + 0xff,0x07,0xff,0xcf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xcf,0xff,0xcf, + 0xff,0xef,0xff,0xef, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xdf,0xff,0xdf, + 0xff,0xdf,0xff,0xdf, + 0xdf,0xdf,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xbf,0xfd,0x82, + 0xfb,0x84,0xff,0x90, + 0xfe,0xb9,0xff,0xb8, + 0xbf,0xb8,0xff,0xf8, + 0xff,0xff,0xbf,0x45, + 0xff,0x09,0xff,0xc9, + 0xff,0xe9,0xff,0xe9, + 0xff,0xe9,0xff,0xe9, + 0xfb,0xf9,0xff,0xe1, + 0xff,0xe1,0xef,0xf1, + 0xff,0xf1,0xff,0xf3, + 0xff,0xf3,0xff,0xf3, + 0xff,0xff,0xff,0x00, + 0xbf,0xc0,0xf7,0x88, + 0xff,0xce,0xff,0xce, + 0xed,0xdf,0xff,0xc1, + 0xff,0xff,0xff,0x7e, + 0xff,0x7f,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xf5,0x0b, + 0xfd,0x82,0xff,0xc0, + 0xff,0xc4,0xff,0xc7, + 0xff,0xc7,0xff,0xc7, + 0xff,0xff,0xff,0xff, + 0xff,0x7e,0xff,0x3e, + 0xff,0x3e,0xff,0x3c, + 0xff,0x3c,0xff,0xb8, + 0xff,0xbf,0xff,0xbe, + 0xff,0x3e,0xdf,0x1f, + 0xff,0x1f,0xef,0x1f, + 0x7f,0x8f,0xff,0x8f, + 0xff,0xff,0xff,0x07, + 0xff,0x03,0xfe,0x00, + 0xff,0x18,0xfb,0x18, + 0xff,0x18,0xff,0x18, + 0xff,0xff,0xef,0xe7, + 0xff,0xc7,0xbf,0xc7, + 0xbf,0xc7,0xff,0xcf, + 0xff,0xce,0xff,0xce, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xbf,0x3f, + 0xff,0xf8,0xfb,0xfc, + 0xff,0xf9,0xff,0xf9, + 0xff,0xf9,0xff,0xf9, + 0xff,0xf9,0xff,0xf9, + 0xff,0xf8,0xff,0xf8, + 0xff,0xf0,0xff,0xf0, + 0xfe,0xf1,0xfe,0xf9, + 0xff,0xf9,0xfe,0xf9, + 0xff,0x03,0xff,0x03, + 0xff,0x01,0xff,0xf3, + 0xff,0xf3,0xff,0xf3, + 0xff,0xf3,0xff,0xf3, + 0xff,0xc1,0xff,0xc9, + 0xff,0xcd,0xff,0xcd, + 0xff,0xcd,0xff,0xcf, + 0xff,0xcf,0xfe,0xcf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0x7f,0xff,0xff,0xff, + 0xff,0xc7,0xff,0xc7, + 0xff,0xc7,0xff,0xc7, + 0xff,0xc7,0xff,0xc7, + 0xff,0xcf,0xdf,0xce, + 0xff,0xb8,0xff,0xb9, + 0xff,0xb9,0x7f,0xb9, + 0x7f,0xb8,0x7e,0xa1, + 0xff,0x13,0xff,0x73, + 0xff,0x8f,0xff,0xc7, + 0xff,0xc7,0xbf,0xc7, + 0xff,0x07,0xfb,0xe7, + 0xff,0xf3,0xff,0xfb, + 0xff,0x99,0xe7,0x99, + 0xf7,0x8b,0xff,0x83, + 0xfe,0x91,0xff,0x98, + 0xff,0x98,0xff,0xbc, + 0xff,0xcc,0xf7,0xc8, + 0xfe,0xc1,0xff,0xc8, + 0xff,0xcc,0xff,0xce, + 0xff,0xcf,0xff,0xcf, + 0xff,0x7f,0xff,0xff, + 0x7f,0xff,0xff,0x7f, + 0xff,0x3f,0xff,0x3f, + 0xff,0x3f,0xff,0x3f, + 0xff,0xff,0xff,0xff, + 0xef,0xff,0xff,0xff, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0xd7,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xff, + 0xfd,0xfc,0xff,0xfe, + 0xff,0xff,0xff,0xfd, + 0xff,0xf7,0xfe,0xff, + 0xfc,0xef,0xdf,0xdd, + 0xbb,0xbb,0x57,0x77, + 0xff,0xf9,0xbb,0xf9, + 0x7f,0xfd,0x7f,0xfd, + 0xff,0xfd,0xfd,0xfd, + 0xff,0xff,0xff,0xff, + 0xfe,0xfd,0xfe,0xfd, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xf3,0xff,0xf3, + 0xff,0xf3,0xff,0xf3, + 0xff,0xf3,0xf7,0xf3, + 0xfb,0xfb,0xff,0xff, + 0xff,0x82,0x0f,0xf0, + 0xfe,0xfd,0xff,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x7f,0xff,0x7f, + 0xff,0xff,0xff,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xec,0xff,0xe9, + 0xef,0xe3,0xf7,0xcf, + 0xff,0x3f,0xff,0x7f, + 0xff,0xff,0xff,0xff, + 0xfb,0xf3,0xfb,0xf3, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xf9,0xff,0xf9, + 0xff,0xf9,0xff,0xfd, + 0xff,0xfd,0xff,0xfd, + 0xff,0xff,0xff,0xff, + 0xff,0xbc,0xbf,0xfd, + 0xbf,0xfd,0xfd,0xfd, + 0xff,0xfd,0xff,0xfd, + 0xff,0xff,0xff,0xff, + 0xff,0x3f,0xff,0x7f, + 0xff,0x7f,0xff,0x7f, + 0xff,0x7f,0x7f,0x7f, + 0xff,0xff,0xff,0xff, + 0xfe,0xff,0xfc,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x3f,0x3f, + 0x4f,0x0f,0xfa,0xe3, + 0xf8,0xf8,0xfc,0xfc, + 0xff,0xff,0xff,0xff, + 0xfe,0xfe,0xfe,0xfe, + 0x6f,0xef,0xf1,0xf1, + 0xfe,0xfe,0x9c,0x9c, + 0xed,0xed,0xfb,0xfb, + 0xef,0xef,0xdf,0xdf, + 0x7f,0x7f,0x3f,0x3f, + 0x7f,0x7f,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xfe,0xfe,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xb3,0xff, + 0xe5,0x12,0xcd,0xd4, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x77,0xff, + 0xaa,0x22,0xca,0x26, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0xff,0x79,0xfc, + 0xbf,0x39,0xbe,0x7c, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xc3,0xff,0x35,0x43, + 0x7e,0xe7,0xf6,0x6e, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf9,0xff,0xbe,0x30, + 0xb6,0x36,0x54,0xb1, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x87,0xff,0x5f,0x87, + 0xef,0xdf,0xdf,0xdf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xbf,0xff,0x9f,0xff, + 0xef,0xff,0xef,0xfb, + 0xcb,0xfb,0xd2,0xfa, + 0xc3,0xfb,0xc3,0xfb, + 0xc3,0xfb,0x83,0xfb, + 0xe3,0xe3,0xcb,0xcb, + 0x7b,0x7b,0xfb,0xfb, + 0xfb,0xfb,0xfb,0xfb, + 0xfb,0xfb,0xff,0xff, + 0xfe,0xfe,0xfc,0xfe, + 0xfe,0xfd,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xb5,0xcd,0x6e,0x2c, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x8c,0xf3,0xe0,0x46, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x37,0xbb,0x3c,0x78, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x6e,0x6c,0x6d,0xed, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xae,0x15,0x9d,0xc6, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xdf,0xdf,0xbf,0xdf, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x9f,0xff,0xdf,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xf9,0xff,0xf8, + 0xff,0xfe,0xff,0xff, + 0xfc,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x83,0xfb,0x0b,0xfb, + 0x8b,0x7b,0xe3,0xe3, + 0xff,0xff,0xde,0xff, + 0xda,0xe3,0xfa,0x43, + 0xfd,0xff,0xfe,0xfd, + 0xfe,0xf1,0xf0,0x7f, + 0xf0,0x7f,0x1a,0xfd, + 0x1e,0xf8,0x10,0xfe, + 0xff,0xff,0xaf,0xdf, + 0xe7,0x8f,0xe3,0x8f, + 0x83,0x7f,0x03,0xff, + 0x43,0xbf,0xc3,0x1f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0xbf,0xff,0xbf,0xff, + 0xff,0xff,0xfd,0xff, + 0xfe,0xff,0xff,0xff, + 0xfe,0xfe,0xff,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfe, + 0xfd,0xff,0xff,0xff, + 0xfe,0xfe,0x7c,0x7c, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfe, + 0xfd,0xfe,0xf7,0xfe, + 0xf7,0xfe,0xf7,0xfe, + 0xfb,0xc3,0xf3,0x83, + 0xe3,0x93,0xe2,0x03, + 0x92,0x03,0x82,0x23, + 0xcb,0x22,0xe3,0x0a, + 0x96,0xf9,0xfd,0xfa, + 0xdf,0xee,0xbb,0x86, + 0xff,0x80,0xfa,0x80, + 0xfa,0x80,0xfc,0x80, + 0xc0,0x1f,0xc0,0x0f, + 0x40,0x8f,0x00,0x8f, + 0x18,0x0e,0x3d,0x00, + 0x3f,0x00,0x0b,0x00, + 0xbf,0xff,0x7f,0xff, + 0x1f,0xff,0x1f,0xff, + 0x5f,0xff,0xff,0xff, + 0xf9,0x7f,0xff,0x38, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0xfe,0xfe,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xef,0xef, + 0xef,0xef,0xef,0xef, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xfe, + 0xd2,0x52,0xdb,0xfb, + 0xff,0xff,0xff,0xff, + 0xbe,0xbe,0xab,0xaa, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7b,0x7f, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xe7,0xff, + 0xe7,0xff,0xef,0xff, + 0xe7,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x7f,0xff, + 0xf6,0xfe,0xf6,0xfe, + 0xe6,0xf6,0xff,0xff, + 0xff,0xff,0xfc,0xfc, + 0xff,0xfc,0xff,0xfc, + 0xe3,0x02,0x83,0x62, + 0x03,0x02,0x03,0x02, + 0xfe,0xff,0x0f,0x0e, + 0x83,0x02,0x83,0x02, + 0xfc,0x80,0xfe,0x80, + 0xff,0x00,0xce,0x01, + 0x8e,0x00,0x88,0x44, + 0x80,0x08,0x80,0x00, + 0x0b,0x00,0x09,0x00, + 0x01,0x00,0x03,0x00, + 0x03,0x00,0x03,0x04, + 0x01,0x00,0x00,0x00, + 0xff,0x38,0xff,0x38, + 0xff,0x38,0xff,0x38, + 0xfe,0x19,0xfd,0x1a, + 0xbf,0x59,0x7f,0x99, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfe, + 0xfe,0xff,0x79,0xfb, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xe7,0x7f,0xe7,0xdf, + 0xff,0xbf,0xff,0xff, + 0xfd,0xfd,0xfd,0xfd, + 0xfd,0xfd,0xfd,0xfd, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0x7f,0x7f,0x7f, + 0xff,0xff,0xf7,0xf7, + 0xf7,0xf7,0xf7,0xf7, + 0xef,0xef,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xeb,0xeb,0xf7,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xfe,0xfe,0xfc,0xfd, + 0xfd,0xfd,0xfd,0xfd, + 0xf5,0xf5,0xf7,0xf7, + 0xf7,0xf7,0xff,0xff, + 0xf7,0xf7,0xef,0xef, + 0xff,0xef,0xdf,0xdf, + 0xdf,0xdf,0x9f,0x9f, + 0xbd,0xbd,0xbd,0xbd, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xbf,0xbf, + 0xff,0xff,0xf9,0xff, + 0xf3,0xff,0xef,0xff, + 0xe7,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0x7f,0xff,0x7f,0xff, + 0x7f,0xff,0x7f,0xff, + 0x7f,0xff,0x7f,0xff, + 0x7f,0xff,0x7f,0xff, + 0xfe,0xfd,0xfe,0xff, + 0xfc,0xfe,0xff,0xfc, + 0xff,0xfc,0xf3,0xf8, + 0xf3,0xfe,0xf7,0xfe, + 0xe3,0x02,0xe3,0x02, + 0xe3,0x02,0x03,0x22, + 0x03,0x22,0x03,0x12, + 0x03,0x12,0x83,0x12, + 0x00,0x00,0x80,0x80, + 0x80,0x00,0x80,0x00, + 0x80,0x00,0x40,0x80, + 0xc0,0x00,0xe0,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00, + 0x00,0x00,0x01,0x00, + 0x01,0x00,0x03,0x00, + 0xff,0x7f,0xfc,0x1b, + 0xfc,0x1b,0xfc,0x1b, + 0xfc,0x1b,0x7c,0x9b, + 0xfc,0x1b,0xfc,0x3b, + 0xff,0xff,0x7f,0xff, + 0x7e,0xfe,0x7e,0xfe, + 0x7f,0xff,0x7f,0xff, + 0x7a,0xfa,0x7a,0xfa, + 0xff,0xff,0x23,0x23, + 0x11,0x11,0xdc,0xdc, + 0xdf,0xde,0x59,0x5b, + 0x95,0x95,0x1a,0x90, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x5f,0xdf, + 0xdf,0xff,0x5f,0xff, + 0xfb,0xfb,0xf7,0xf7, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xbf,0xbf,0x7f,0x7f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xff,0xe7,0xf9,0xf7, + 0xfd,0xfa,0xff,0xfc, + 0xff,0xfc,0xff,0xff, + 0xfc,0xfe,0xe6,0xf0, + 0xff,0xfc,0xff,0xfc, + 0xc3,0x22,0x83,0x62, + 0x07,0x87,0xff,0xff, + 0x47,0x47,0x43,0x43, + 0x63,0x43,0x73,0x4b, + 0xd8,0x20,0x8d,0x72, + 0xfc,0xff,0xa1,0x7e, + 0xf8,0x27,0xe0,0xbf, + 0xe6,0xbf,0xe7,0xff, + 0x9f,0x98,0x6f,0xff, + 0x6f,0xef,0x6c,0xef, + 0x5c,0xdf,0x3e,0xdf, + 0x6d,0xef,0xef,0xef, + 0xfc,0xfb,0xfc,0xfb, + 0xff,0xff,0x79,0xff, + 0x7a,0xff,0xfb,0xff, + 0xfb,0xff,0xff,0xff, + 0x7e,0xfe,0x7e,0xfe, + 0xff,0xff,0x7f,0xff, + 0x7b,0xfb,0x62,0xf4, + 0xc2,0xc6,0xa0,0x86, + 0x3c,0x3c,0x0a,0x0e, + 0x7c,0x7d,0x7f,0x7f, + 0xc7,0x47,0xbf,0x9f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xdf,0xff,0xdf,0xff, + 0xef,0xaf,0xef,0xef, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xcf,0xff, + 0xdf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf7,0xff,0xff,0xe7, + 0xe7,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xff,0xfc,0xfd,0xfe, + 0xfd,0xfe,0xfd,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xf3,0x4b,0x7b,0xc3, + 0x7b,0xc3,0x7b,0xd3, + 0xf3,0x5b,0x7b,0xfb, + 0xfb,0xfb,0xff,0xff, + 0xf7,0xff,0xff,0xf7, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xfb,0xf5, + 0x6f,0xff,0xef,0xff, + 0xff,0xff,0xc9,0xc9, + 0xfb,0xf9,0xc9,0xcd, + 0xfd,0xfd,0xcf,0xcf, + 0xfe,0xff,0xc7,0xc7, + 0xfc,0xff,0xff,0xff, + 0xff,0xff,0xfe,0xfe, + 0xfc,0xfc,0x79,0x78, + 0x14,0x14,0xa2,0x8a, + 0x80,0xa6,0x7f,0x33, + 0x55,0x3b,0x7e,0x39, + 0x3f,0x3c,0xff,0x1c, + 0x7f,0x6e,0x7f,0xbf, + 0xce,0x4e,0x24,0x20, + 0x91,0x99,0xdf,0xdf, + 0xcf,0x5f,0xed,0x7d, + 0xeb,0x3f,0x65,0x3f, + 0x5f,0x5f,0xbf,0xbf, + 0x7f,0x7f,0x7f,0x7f, + 0xff,0xff,0x77,0x7b, + 0xf7,0x7f,0xff,0x67, + 0xfe,0xff,0xfb,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0x7b,0xff, + 0xff,0xff,0xef,0xff, + 0xe7,0xff,0xef,0xff, + 0xef,0xff,0xed,0xf5, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xfd, + 0xff,0xfd,0xfd,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xe7,0xe7,0x63,0x1b, + 0xf3,0x8b,0xf3,0x8b, + 0xb3,0xcb,0xa3,0xdb, + 0xff,0xff,0xff,0xff, + 0xff,0xfb,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7d,0xc5,0xbd,0xe5, + 0xf7,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xc6,0xff,0xeb,0xf5, + 0xf5,0xfb,0xdf,0xef, + 0xef,0xf7,0xfd,0xf7, + 0xff,0xfd,0xff,0xff, + 0xdf,0x6f,0x0f,0xff, + 0x1f,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0xff, + 0xe9,0xf9,0xf8,0xf8, + 0xfc,0xfc,0xfe,0xfe, + 0xfc,0xfc,0xfc,0xfc, + 0xfb,0xf8,0xfb,0xfb, + 0xff,0xff,0xff,0xff, + 0xff,0x7f,0x3f,0x7f, + 0x5f,0x3f,0x3f,0x1f, + 0x1f,0x0f,0x0f,0x2f, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xff,0xff,0xfe,0xff, + 0xfd,0xff,0xfe,0xff, + 0xfe,0xff,0xfe,0xff, + 0xfe,0xff,0xff,0xff, + 0xdb,0xb7,0xbf,0xf7, + 0xbb,0xfb,0x3f,0xfb, + 0x3f,0xfb,0x7f,0xfb, + 0x7f,0xfb,0xff,0xfb, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xc7,0xcf,0xc3,0xdd, + 0x82,0xbd,0xcf,0xc3, + 0xff,0xff,0xff,0xff, + 0x0f,0x3f,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0x7f,0xff,0xff, + 0xfb,0xfb,0xff,0xfb, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xaf,0xbf,0xbf,0xbf, + 0xbf,0xbf,0xbf,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xef,0xff,0xef,0xff, + 0xff,0xff,0x7f,0xff, + 0xff,0xff,0x7f,0xff, + 0x7f,0xff,0x7f,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xfb,0xff,0xfb, + 0xfe,0xfa,0xfa,0xfa, + 0xff,0xff,0xff,0xff, + 0xff,0xe2,0xd6,0x9a, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x7f,0x7f,0x7f,0x7f, + 0xbf,0xbf,0x5f,0xdf, + 0xff,0xff,0xff,0xff, + 0xfe,0xfe,0xfe,0xfe, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0x0f,0x01,0x16,0x11, + 0x3f,0x39,0xff,0xfd, + 0xff,0xff,0x9f,0xcf, + 0x37,0x0b,0x1f,0x27, + 0xff,0xff,0x7f,0xff, + 0xff,0xff,0xdf,0xff, + 0xdf,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xef,0xff,0xef, + 0xff,0xef,0xef,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xbe,0xba,0xbf,0xbb, + 0xbf,0xbb,0xfe,0xfa, + 0xfe,0xfa,0xfe,0xfa, + 0xff,0xfb,0xff,0xfb, + 0xef,0xaf,0x6f,0x6f, + 0x7f,0x77,0xff,0xfb, + 0xef,0xeb,0x7d,0x5d, + 0x5a,0x5a,0x67,0x67, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0xff,0xff, + 0xff,0xff,0x7f,0x7f, + 0xfe,0xfe,0xfe,0xfe, + 0xfe,0xfe,0xfe,0xfe, + 0xfe,0xfe,0xfe,0xfe, + 0xfe,0xff,0xfe,0xff, + 0x0f,0x73,0x1f,0x6f, + 0x1f,0x7f,0x07,0x7f, + 0x7f,0x1f,0x7f,0xbf, + 0x3f,0xff,0x3f,0xff, + 0xff,0xff,0xe7,0xef, + 0xff,0xc7,0xa7,0xd7, + 0xb7,0x87,0xbb,0x77, + 0xff,0xff,0xff,0xff, + 0xef,0xff,0xf7,0x87, + 0x77,0xbe,0x85,0x66, + 0xad,0x74,0x1d,0x8b, + 0xff,0xff,0xff,0xff, + 0xf7,0xff,0x33,0x77, + 0xe6,0x33,0x3a,0xa2, + 0xa0,0x29,0xcf,0xa9, + 0xff,0xff,0xff,0xff, + 0xa1,0xff,0x6d,0x23, + 0x5f,0x2f,0xaf,0x43, + 0x4f,0x5f,0x47,0x43, + 0xff,0xff,0xff,0xff, + 0xcd,0xff,0x90,0xc5, + 0xd3,0xb4,0x86,0x86, + 0xb6,0xb6,0x06,0x8e, + 0xff,0xff,0xff,0xff, + 0xdf,0xff,0x9d,0xb9, + 0xb9,0x79,0xfa,0x79, + 0xf4,0xfa,0xfe,0xf2, + 0xff,0xff,0xff,0xff, + 0xdd,0xff,0x89,0xdd, + 0x9a,0x99,0xd9,0x16, + 0xa4,0x50,0xee,0x8e, + 0xff,0xff,0xff,0xff, + 0x80,0xff,0xea,0x84, + 0xff,0xce,0xee,0xde, + 0xde,0xde,0xdd,0xde, + 0xff,0xff,0xff,0xff, + 0x21,0xff,0xef,0x21, + 0x6f,0xee,0xce,0xe2, + 0xfe,0xce,0xe3,0xc2, + 0xff,0xff,0xff,0xff, + 0xbf,0xff,0x5f,0x0f, + 0x6f,0xef,0xcf,0xef, + 0xef,0xdf,0x3f,0x1e, + 0xff,0xfe,0xff,0xfd, + 0xff,0xff,0xbf,0xbf, + 0xbf,0xbf,0x6f,0x7f, + 0x77,0x7f,0xff,0xff, + 0xbf,0xff,0xff,0x7f }; diff --git a/src/title_bg.h b/src/title_bg.h index 1cc8f70..290e033 100644 --- a/src/title_bg.h +++ b/src/title_bg.h @@ -1,6 +1,4 @@ //AUTOGENERATED FILE FROM png2asset -// Conversion args: /title_bg.png -c /title_bg.c -map -bpp 2 -noflip -keep_palette_order -max_palettes 1 - #ifndef METASPRITE_title_bg_H #define METASPRITE_title_bg_H diff --git a/src/victory.c b/src/victory.c deleted file mode 100644 index ee98e8b..0000000 --- a/src/victory.c +++ /dev/null @@ -1,51 +0,0 @@ -//AUTOGENERATED FILE FROM png2asset -// Conversion args: /victory.png -c /victory.c -bpp 2 -noflip -keep_palette_order - -#include -#include -#include - -BANKREF(victory) - -const palette_color_t victory_palettes[32] = { - RGB8(224,248,207), RGB8(134,192,108), RGB8( 48,104, 80), RGB8( 7, 24, 33), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), - RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0), RGB8( 0, 0, 0) - }; - -const uint8_t victory_tiles[224] = { - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x88,0xff,0x88,0xdd,0x88,0xdd,0x88,0xdd, - 0xc1,0xeb,0xc1,0xe3,0xe3,0xf7,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc3,0xff,0xc3,0xe7,0xe3,0xf7,0xe3,0xf7, - 0xe3,0xf7,0xe3,0xf7,0xc3,0xe7,0xc3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc3,0xff,0x81,0xc3,0x83,0xdf,0x8f,0xdf, - 0x8f,0xdf,0x83,0xdf,0x81,0xc3,0xc3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x81,0xff,0x80,0xc1,0xe3,0xf7,0xe3,0xf7, - 0xe3,0xf7,0xe3,0xf7,0xe3,0xf7,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc3,0xff,0x81,0xc3,0x81,0xdb,0x81,0xdb, - 0x81,0xdb,0x81,0xdb,0x81,0xc3,0xc3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x83,0xff,0x81,0xc3,0x81,0xdb,0x81,0xc3, - 0x81,0xdb,0x89,0xdb,0x89,0xdb,0x99,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, - 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x99,0xff,0x88,0xdd,0xc1,0xeb,0xc1,0xe3, - 0xe3,0xf7,0xe3,0xf7,0xe3,0xf7,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff - }; - -const metasprite_t victory_metasprite0[] = { - METASPR_ITEM(-8, -28, 0, S_PAL(0)), - METASPR_ITEM(0, 8, 2, S_PAL(0)), - METASPR_ITEM(0, 8, 4, S_PAL(0)), - METASPR_ITEM(0, 8, 6, S_PAL(0)), - METASPR_ITEM(0, 8, 8, S_PAL(0)), - METASPR_ITEM(0, 8, 10, S_PAL(0)), - METASPR_ITEM(0, 8, 12, S_PAL(0)), - METASPR_TERM -}; - -const metasprite_t* const victory_metasprites[1] = { - victory_metasprite0 -}; diff --git a/src/victory.h b/src/victory.h deleted file mode 100644 index 8bac069..0000000 --- a/src/victory.h +++ /dev/null @@ -1,31 +0,0 @@ -//AUTOGENERATED FILE FROM png2asset -// Conversion args: /victory.png -c /victory.c -bpp 2 -noflip -keep_palette_order - -#ifndef METASPRITE_victory_H -#define METASPRITE_victory_H - -#include -#include -#include - -#define victory_TILE_ORIGIN 0 -#define victory_TILE_W 8 -#define victory_TILE_H 16 -#define victory_WIDTH 56 -#define victory_HEIGHT 16 -#define victory_TILE_COUNT 14 -#define victory_PALETTE_COUNT 8 -#define victory_COLORS_PER_PALETTE 4 -#define victory_TOTAL_COLORS 32 -#define victory_PIVOT_X 28 -#define victory_PIVOT_Y 8 -#define victory_PIVOT_W 56 -#define victory_PIVOT_H 16 -extern const metasprite_t* const victory_metasprites[1]; - -BANKREF_EXTERN(victory) - -extern const palette_color_t victory_palettes[32]; -extern const uint8_t victory_tiles[224]; - -#endif