# Next Level MakeCode Arcade Games

## Overview

https://youtu.be/eJBsZ9brP8A

Add beautiful splash screens made in other programs...

![gaming_dkadafancy.png](https://cdn-learn.adafruit.com/assets/assets/000/076/051/medium640/gaming_dkadafancy.png?1559088279)

And backgrounds that make&nbsp; your game come alive!

![gaming_MakeCode_Arcade_13.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/984/medium640/gaming_MakeCode_Arcade_13.jpg?1558674378)

## Level Next!

Once you've been making your own MakeCode Arcade games for a little while, you may want to start upping the quality of your graphics, add background music (BGM), and maybe even use the NeoPixels on your PyGamer or PyBadge to indicate in-game stats!

This guide will share some techniques for polishing up your games so they look and sound terrific!

## Parts
Featured
### Adafruit PyGamer Starter Kit

[Adafruit PyGamer Starter Kit](https://www.adafruit.com/product/4277)
**Please note: you may get a royal blue _or_ purple case with your starter kit (they're both lovely colors)**

What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right,...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4277)
[Related Guides to the Product](https://learn.adafruit.com/products/4277/guides)
![Adafruit PyGamer Starter Kit with PCB, enclosure, buttons, and storage bag](https://cdn-shop.adafruit.com/640x480/4277-08.jpg)

Featured
### Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino

[Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino](https://www.adafruit.com/product/4242)
What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right, it's the **Adafruit PyGamer!** We wanted to make an entry-level gaming handheld for DIY gaming, and maybe a little...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4242)
[Related Guides to the Product](https://learn.adafruit.com/products/4242/guides)
![Angled shot of Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino.](https://cdn-shop.adafruit.com/640x480/4242-00.jpg)

Featured
### Adafruit PyGamer Acrylic Enclosure Kit

[Adafruit PyGamer Acrylic Enclosure Kit](https://www.adafruit.com/product/4238)
You've got your PyGamer, and you're ready to start jammin' on your favorite arcade games. You gaze adoringly at the charming silkscreen designed by Ada-friend PaintYourDragon.&nbsp;The nostalgia is palpable!

Cradling the PCB in your hands, you realize there's something...

In Stock
[Buy Now](https://www.adafruit.com/product/4238)
[Related Guides to the Product](https://learn.adafruit.com/products/4238/guides)
![Enclosure pieces and black, plastic hardware for a DIY handheld game console.](https://cdn-shop.adafruit.com/640x480/4238-00.jpg)

Featured
### Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino

[Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino](https://www.adafruit.com/product/4200)
What's the size of a credit card and can run CircuitPython, MakeCode Arcade or Arduino? That's right, its the **Adafruit PyBadge!** We wanted to see how much we could cram into a ​3 3⁄8 × ​2 1⁄8 inch rounded rectangle, to make an all-in-one dev board with...

In Stock
[Buy Now](https://www.adafruit.com/product/4200)
[Related Guides to the Product](https://learn.adafruit.com/products/4200/guides)
![Angled shot of a Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino. ](https://cdn-shop.adafruit.com/640x480/4200-01.jpg)

Featured
### Adafruit PyBadge LC - MakeCode Arcade, CircuitPython, or Arduino

[Adafruit PyBadge LC - MakeCode Arcade, CircuitPython, or Arduino](https://www.adafruit.com/product/3939)
What's the size of a credit card and can run CircuitPython, MakeCode Arcade or Arduino even when you're on a budget? That's right, it's the&nbsp; **Adafruit PyBadge LC!** &nbsp;We wanted to see how much we could cram into a ​3 3⁄8 × ​2 1⁄8 inch...

In Stock
[Buy Now](https://www.adafruit.com/product/3939)
[Related Guides to the Product](https://learn.adafruit.com/products/3939/guides)
![Angled Shot of Adafruit PyBadge - Low Cost. ](https://cdn-shop.adafruit.com/640x480/3939-05.jpg)

Featured
### Lithium Ion Polymer Battery - 3.7V 350mAh

[Lithium Ion Polymer Battery - 3.7V 350mAh](https://www.adafruit.com/product/2750)
Lithium-ion polymer (also known as 'lipo' or 'lipoly') batteries are thin, light, and powerful. The output ranges from 4.2V when completely charged to 3.7V. This battery has a capacity of 350mAh for a total of about 1.3 Wh. If you need a larger (or smaller!) battery, <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/2750)
[Related Guides to the Product](https://learn.adafruit.com/products/2750/guides)
![Angled shot of a rectangular lipo battery with a 2-pin JST connector. The battery specs are listed on the body: 3.7V 250mAh.](https://cdn-shop.adafruit.com/640x480/2750-05.jpg)

Featured
### Mini Oval Speaker - 8 Ohm 1 Watt

[Mini Oval Speaker - 8 Ohm 1 Watt](https://www.adafruit.com/product/3923)
Hear the good news! This wee speaker&nbsp;is&nbsp;a&nbsp;great addition to any audio project where you need 8 ohm impedance and 1W or less of power. We particularly like this&nbsp;speaker&nbsp;as it is&nbsp;small and comes with nice skinny wires with a connector on the end. It has a handy...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3923)
[Related Guides to the Product](https://learn.adafruit.com/products/3923/guides)
![Small, black, oval speaker with Pico Blade connector.](https://cdn-shop.adafruit.com/640x480/3923-06.jpg)

# Next Level MakeCode Arcade Games

## Background Music

A great enhancement you can make to your game is to add some background music, a.k.a., BGM. We can pay homage to old school handheld gaming systems and use short, repeating arpeggio patterns for a charming motif that plays along to your gaming action.

## Arpeggiation

An arpeggio is a sequence of notes, often short and played in ascending or descending order, that may be played in octaves or in the order of a chord. In fact, and arpeggio is sometimes referred to as a "broken chord". Playing multiple synthesized notes at once is called polyphony, and is sometimes taxing on the game hardware, so instead we can approach it with single notes (monophonic) played rapidly to convey the impression of polyphony.

![](https://cdn-learn.adafruit.com/assets/assets/000/076/007/medium800thumb/gaming_keyboard_arpeggio.jpg?1558717104)

Info: 

Play this sample to hear two chords played followed by their equivalent arpeggiated versions.

https://soundcloud.com/user-505776715/chords-and-arps

Primary: 

## MakeCode Background Music

To create our BGM in MakeCode Arcade, we'll start with the **play tone** block, which allows us to select the a note and duration per tone.

Here, I've created a quick one octave arpeggio that adds some light, happy motion to the sound, compared to a single note.

Repeat this technique to create a repeating melody line. I chose a I-V-II-V note progression of C-G-E-G, while continuing the octave arpeggio technique.

Also, I found that I preferred the lower note of each octave pair to be shorter, so I changed the durations to 1/8th notes for those, with the higher octave notes at 1/4 notes.

I'd like to loop this phrase twice, so I'll place it in a **repeat** block. And then I'll move the phrase up a fourth, so we play F-C-A-C twice and then go back to the beginning.

Note that for the second phrase, I needed to multiply the frequency of the High C by two and enter 1046 Hz since the MakeCode Arcade graphical UI keyboard doesn't go up that high.

![gaming_MakeCode_Arcade_15.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/012/medium640/gaming_MakeCode_Arcade_15.jpg?1558720267)

![gaming_Banners_and_Alerts_and_MakeCode_Arcade.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/015/medium640/gaming_Banners_and_Alerts_and_MakeCode_Arcade.jpg?1558721354)

![gaming_MakeCode_Arcade_16.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/016/medium640/gaming_MakeCode_Arcade_16.jpg?1558721367)

![gaming_Banners_and_Alerts_and_MakeCode_Arcade_2.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/017/medium640/gaming_Banners_and_Alerts_and_MakeCode_Arcade_2.jpg?1558721498)

Info: 

Check out this great upgraded version of _[Sparky Invaders](https://learn.adafruit.com/makecode-arcade-sparky-invaders/overview)&nbsp;_in which Noe Ruiz added background music. You can download the .png file below and drag it into a MakeCode Arcade session to try it out!

![](https://cdn-learn.adafruit.com/assets/assets/000/076/050/medium800/gaming_arcade-Sparky_Invaders_BGM.png?1558733980)

# Next Level MakeCode Arcade Games

## Asset Tool

The sprite editor in MakeCode Arcade is simple and effective for creating smaller pieces of game art, such as characters, power-ups, and enemies. If you want to create more complex art, animation frames, or larger background pieces, it can be a bit constraining. If you need to take things to a higher level of complexity, there's a way to use external pixel art programs and then import the results into MakeCode Arcade!

## External Tools

You can imagine it being pretty difficult to create a compelling, detailed background image in this small canvas withing the MCA sprite editor:

![](https://cdn-learn.adafruit.com/assets/assets/000/075/944/medium800/gaming_mca_sprite.png?1558666840)

A specialized pixel art application such as [Aseprite](https://www.aseprite.org/) (shown here) or [Piskel](https://www.piskelapp.com/) has a much steeper learning curve, but also includes more advanced tools, such as canvas zooming, that make it more practical for creating backgrounds.

![](https://cdn-learn.adafruit.com/assets/assets/000/075/942/medium800/gaming_aseprite_ship_bg_02.png?1558666589)

While it's beyond the scope of this guide to teach the finer points of Aseprite/Piskel/Photoshop or other external tools you may choose to use, it's important to note that you'll need to work in indexed color mode (not RGB) and with the same 16-color palette as your MakeCode Arcade game. In the screenshot above you can see that I've created a custom palette in Aseprite that matches the colors and order of MakeCode Arcade. If not, your images will come into MakeCode Arcade with unexpected color values!

Primary: 

## Asset Conversion

The question is, how can you work in a dedicated graphics application and export the images to MakeCode Arcade? Enter, the [MakeCode Arcade asset tool](https://riknoll.github.io/pxt-arcade-asset-tool/)!

This is an unofficial and unsupported tool, so caveat emptor, but I've found it to be invaluable for bringing my pixel art and animation into MakeCode Arcade.

It works just as it says on the page. You can export a .png graphic from your pixel art program, and then drag it onto the asset tool.

It will convert the image to text, which you can then copy and paste into your MakeCode Arcade program in the JavaScript mode.

![gaming_assettool.png](https://cdn-learn.adafruit.com/assets/assets/000/075/874/medium640/gaming_assettool.png?1558667881)

Primary: 

The key to it all is the JavaScript tab of MakeCode Arcade where we can edit the code directly, rather than with blocks. Here, the images are represented with text. The **.** character represents the absence of a color, which is the same as the zero index transparency "color". All other characters from 1-9 and a-f indicates a colored pixel in one of the 15 colors in our palette.

Here's a nice example of a small sprite -- just 16x16 pixels -- where you can see the correlation between the text encoded image and the sprite editor.

![](https://cdn-learn.adafruit.com/assets/assets/000/076/138/medium800/gaming_Untitled.png?1559053599)

Here's a hamburger!

![](https://cdn-learn.adafruit.com/assets/assets/000/076/139/medium800/gaming_Untitled.png?1559053644)

## Asset Tool Usage

To use the tool, drag a .png image onto [the page](https://riknoll.github.io/pxt-arcade-asset-tool/). In this example, I've dragged the **shipping\_game\_bg.png** file (which I exported from Aseprite) onto the asset tool. (You can download the image shown here to try it yourself.)

The asset tool converts the image to text encoding.

Next, I copy the text formatted asset by clicking in the copy box and selecting all the text, either by dragging or right-clicking a picking "Select All" (currently the **Copy** button only works for smaller assets, but doesn't select all lines of larger ones) and then I right-click and choose "copy" or hit the ctrl-c/command-c copy hotkey.

Each character represents a pixel and its index color based on the 16-color palette used. Here's what the raw text looks like:

![gaming_assetTool02.png](https://cdn-learn.adafruit.com/assets/assets/000/075/943/medium640/gaming_assetTool02.png?1558667624)

![gaming_shipping_game_bg.png](https://cdn-learn.adafruit.com/assets/assets/000/075/948/medium640/gaming_shipping_game_bg.png?1558667918)

```auto
    const shipping_game_bg = img`
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 f f c b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 f c b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f 4 4 c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f 4 c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c b b b b b b b b b b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b b b b b b b b b b b b b c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b b b b b b b b b b b b b c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c b b b b b b b b b b b b b b b b b b c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b b b b c c b b b b b b b b b b c c b b c c c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b c c b b b b b b b b b b c c b b c c c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b c c b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c b b b c c c b b b b b b b b b b c b b b b b c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b c c c b b b b b b b b b b c b b b b b c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b c c c b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c b b b c c c b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b c c c b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b c c c b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c b b b b c c b b b b b b b b b c c c b b b c c c c c b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b c c b b b b b b b b b b c c b b b c c c c c b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b c c b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c b c c c c c c b b b b b b b b b b c c c c c c c c c c b b b b b b b b c c c c b b b b b b c c c c c c c c c c b c b c b c b b c c c c c c c c b b b b b b b b b b c c c c c c c c c c b b b b b b b b c c c c b b b b b b c c c c c c c c c c b c b c b c b b c c c c c c c c b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c b b b c c c c b b b b b b b b b c c c c c c c c c c c b b b b b b b b c c b b c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b b b b b b b b c c c c c c c c c c b b b b b b b b c c b b c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b c c c c b b b b b b b b b c c c b c b c b c b c b b b b b b b b c c b c c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b b b b b b b b c c b c b c b c b c b b b b b b b b c c b c c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b c c c c b b b b b b b b b c c b c b c b c b c c b b b b b b b b c c b c c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b b b b b b b b c b c b c b c b c c b b b b b b b b c c b c c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b c c c c c c b b b b b b b b b c c c c c c c c c c c b b b b b b b b c c c b c c b b b b c c c c c c c c c c c c c c c c b b b c c c c c c c b b b b b b b b b b c c c c c c c c c c b b b b b b b b c c c b c c b b b b c c c c c c c c c c c c c c c c b b b c c c c c c c b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c c c c c b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c c c b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c c b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c c b c c b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b c c c b b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b c c c b b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b c c c b b b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b c c c b b b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b c c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b c c c b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b c c c c c b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b c c c c c b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c b b b b b b b b b b b c c c b c c c b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c b b b b b b b b b b b c c c b c c c b c c b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c b c c c c c c c b b b b b b b b b c c c b b b c c c b b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c b c c c c c c c b b b b b b b b b c c c b b b c c c b b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b b c c c b b b c c c b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b b c c c b b b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c b b b b b b b b b b b c c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b c c b c c c b c c c b b b b b b b b b b b c c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b c c b c c c b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c b b b b b b b b b b b c c c c c c c c c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b b b c c c c c c c c c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c b b b b b b b b b b b c c c c c c c c c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b b b c c c c c c c c c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c b b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c b b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b b b b b b b b c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c b b b b b b b b b b b c c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b c c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c c c c c c c b b b b b b b b c c c c c c c c c c c c c c c c b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c c c c c c c b b b b b b b b c c c c c c c c c c c c c c c c b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c c b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c c c c c c c c c c c c c c c c c c b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c c c c c c c c c c c c c c c c c c b c c b b c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c c c c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c c c c c c c c c c c c c c c c c c c c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c c c c c c c c c c c c c c c c c c c c c b b c c b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 6 b b b b b b b 6 6 6 6 6 6 6 6 f 4 f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 c c c c c c c b b c c c c c c c f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 c c c c c c c b c 1 1 2 1 2 c c f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 c c f f f c c b 2 2 2 2 2 2 2 c f 4 4 4 c b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b
    6 c c f 4 f c c b 2 1 2 1 1 2 2 c f f 4 4 c b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b
    6 c c 4 f f c c b 2 2 2 2 2 2 2 c f f f 4 c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b
    6 c c 4 c c c c b 2 1 2 2 2 2 2 c f f f f c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b
    6 c c 4 c c c c b c 2 2 2 2 2 c b f f f f c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c
    6 c c c 4 c c c b b c c c c c b b f 4 f f c c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c
    6 6 f f 4 f f f f f f f f f f f b f 4 4 f c b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c
    6 c 6 c 6 4 6 6 6 6 6 c c c c c c f 4 4 4 c b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c
    6 c c c c 4 c c b b b c c c c c c f 4 4 4 c c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c
    6 c c f f 4 c c b b b b c b c b c f f 4 4 c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b
    6 c c f 4 f c c b c c b b b b b c f f f 4 c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b
    6 c c f f f c c b c c b b b b b c f f f f c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b
    6 f f f f f f f c c c c c c c c c f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f
    `;
  
```

Interestingly, if you zoom out far enough, you can make out the image:

![](https://cdn-learn.adafruit.com/assets/assets/000/075/959/medium800/gaming_bg_atom.png?1558670352)

## Import Assets

Now that we have the asset text copied, we need to paste it into MakeCode Arcade.

&nbsp;

First, we'll create a simple MakeCode Arcade scene with just a **background**  **image** block in the **start** block.

&nbsp;

&nbsp;

![gaming_MakeCode_Arcade.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/962/medium640/gaming_MakeCode_Arcade.jpg?1558670816)

![gaming_MakeCode_Arcade_2.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/964/medium640/gaming_MakeCode_Arcade_2.jpg?1558670869)

## JavaScript

Next, click on the **JavaScript** tab at the top of MakeCode Arcade to switch from Blocks mode to JavaScript mode.

This will convert the code to the equivalent JavaScript. You'll see that there is a bit of "code folding" going on to neaten things up, but since the background image block creates a blank 160x120 pixel image, there are a lot of hidden lines here. You can unfold the code by clicking the **...** ellipsis.

Now we see the entire (blank) canvas!

![gaming_MakeCode_Arcade_3.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/965/medium640/gaming_MakeCode_Arcade_3.jpg?1558671004)

![gaming_MakeCode_Arcade_4.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/967/medium640/gaming_MakeCode_Arcade_4.jpg?1558671310)

![gaming_MakeCode_Arcade_5.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/968/medium640/gaming_MakeCode_Arcade_5.jpg?1558671418)

Next, select all of the unneeded lines of text (lines 2-121) and delete them.

Then, with your cursor at the beginning of line 2, paste the previously copied code.

We'll actually get a little more than we wanted here, so delete the new line 2 that looks like this:

`const shipping_game_bg = img``

And, there will be an extraneous back tick and semicolon to eliminate at the end:

``;`

So that your last line only has a back tick and closed parenthesis:

``)`

In the end, the code should look like this:

![gaming_MakeCode_Arcade_10.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/977/medium640/gaming_MakeCode_Arcade_10.jpg?1558673424)

![gaming_MakeCode_Arcade_11.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/978/medium640/gaming_MakeCode_Arcade_11.jpg?1558673626)

![gaming_MakeCode_Arcade_12.jpg](https://cdn-learn.adafruit.com/assets/assets/000/075/979/medium640/gaming_MakeCode_Arcade_12.jpg?1558673801)

```auto
scene.setBackgroundImage(img`
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 f f c b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 f c b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f 4 4 c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f 4 c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c b b b b b b b b b b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b b b b b b b b b b b b b c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b b b b b b b b b b b b b c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c b b b b b b b b b b b b b b b b b b c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c b b b b b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b b b b c c b b b b b b b b b b c c b b c c c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b c c b b b b b b b b b b c c b b c c c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b c c b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c b b b c c c b b b b b b b b b b c b b b b b c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b c c c b b b b b b b b b b c b b b b b c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b c c c b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c b b b c c c b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b c c c b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b c c c b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c b b b b c c b b b b b b b b b c c c b b b c c c c c b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b c c b b b b b b b b b b c c b b b c c c c c b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b c c b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c b c c c c c c b b b b b b b b b b c c c c c c c c c c b b b b b b b b c c c c b b b b b b c c c c c c c c c c b c b c b c b b c c c c c c c c b b b b b b b b b b c c c c c c c c c c b b b b b b b b c c c c b b b b b b c c c c c c c c c c b c b c b c b b c c c c c c c c b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c b b b c c c c b b b b b b b b b c c c c c c c c c c c b b b b b b b b c c b b c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b b b b b b b b c c c c c c c c c c b b b b b b b b c c b b c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c b b b c c c c b b b b b b b b b c c c b c b c b c b c b b b b b b b b c c b c c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b b b b b b b b c c b c b c b c b c b b b b b b b b c c b c c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c b b b c c c c b b b b b b b b b c c b c b c b c b c c b b b b b b b b c c b c c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b b b b b b b b c b c b c b c b c c b b b b b b b b c c b c c c b b b b c c c c c c c c c c b c b c b c b b b b b b c c c c b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c b c c c c c c b b b b b b b b b c c c c c c c c c c c b b b b b b b b c c c b c c b b b b c c c c c c c c c c c c c c c c b b b c c c c c c c b b b b b b b b b b c c c c c c c c c c b b b b b b b b c c c b c c b b b b c c c c c c c c c c c c c c c c b b b c c c c c c c b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c c c c c b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c c c b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c c b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c c b c c b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b c c c b b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b c c c b b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b c c c b b b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b c c c b b b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b c c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b c c c b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c b b b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c b b b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b c c c c c b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c b c c c c c b b b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c b b b b b b b b b b b c c c b c c c b c c b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c b b b b b b b b b b b c c c b c c c b c c b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c b c c c c c c c b b b b b b b b b c c c b b b c c c b b c c c b b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c b c c c c c c c b b b b b b b b b c c c b b b c c c b b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b b c c c b b b c c c b b b b b b b b b b b b b b b b b b b b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b b c c c b b b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c b b b b b b b b b b b c c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b c c b c c c b c c c b b b b b b b b b b b c c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b c c b c c c b c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c b b b b b b b b b b b c c c c c c c c c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b b b c c c c c c c c c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c b c c b b c c b c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c b b b b b b b b b b b c c c c c c c c c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b b b c c c c c c c c c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c b b b b b b c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c b b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c b b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c b b b b b b b b b b b b c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b b c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c b b b b b b b b b b b c c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b b b c c c c c c c c b b b b b b c c c c c c c c c c b c b c b c b b b b b b b b b c c c c c c c c c c c c c c b b b b b b b b b
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c c c c c c c b b b b b b b b c c c c c c c c c c c c c c c c b b b b b b b b b b c c c c c c c b c b b b b b c c c c c c c c c c c c c c c c b b b b b b b b c c c c c c c c c c c c c c c c b b b b b b b b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c c b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c c c c c c c c c c c c c c c c c c b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c c c c c c c c c c c c c c c c c c b c c b b c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c c c c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c c c c c c c c c c c c c c c c c c c c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c b b c c c c c c c c c c c c c c c c c c c c c c b b c c b
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    f 6 f 6 f 6 f 6 f 6 f 6 f 6 f 6 f f f f f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 6 b b b b b b b 6 6 6 6 6 6 6 6 f 4 f f c b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b
    6 c c c c c c c b b c c c c c c c f 4 4 f c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 c c c c c c c b c 1 1 2 1 2 c c f 4 4 4 c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c
    6 c c f f f c c b 2 2 2 2 2 2 2 c f 4 4 4 c b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b
    6 c c f 4 f c c b 2 1 2 1 1 2 2 c f f 4 4 c b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b
    6 c c 4 f f c c b 2 2 2 2 2 2 2 c f f f 4 c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b
    6 c c 4 c c c c b 2 1 2 2 2 2 2 c f f f f c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b
    6 c c 4 c c c c b c 2 2 2 2 2 c b f f f f c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c
    6 c c c 4 c c c b b c c c c c b b f 4 f f c c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c
    6 6 f f 4 f f f f f f f f f f f b f 4 4 f c b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c
    6 c 6 c 6 4 6 6 6 6 6 c c c c c c f 4 4 4 c b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c c c c b c b b c c c c b b b b c
    6 c c c c 4 c c b b b c c c c c c f 4 4 4 c c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c b c c c b b c c
    6 c c f f 4 c c b b b b c b c b c f f 4 4 c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b b b c c c c c b
    6 c c f 4 f c c b c c b b b b b c f f f 4 c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b b b b c c c b b
    6 c c f f f c c b c c b b b b b c f f f f c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b c b b b c c c b b b b b c c c b
    6 f f f f f f f c c c c c c c c c f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f f
    `)
```

You can test this by pressing play in the simulator, or checking the sprite editor back in **Blocks** mode.

![](https://cdn-learn.adafruit.com/assets/assets/000/075/981/medium800/gaming_MakeCode_Arcade_13.jpg?1558674111)

## Tweaks

I decided it may look better to knock down the background's perceived brightness a bit -- but how do you do that with a limited color palette? In Aseprite it is pretty simple to create a checkerboard pattern to fill the brighter sections. Here's what that looks like, after a quick trip through the asset tool and into MakeCode Arcade!

![](https://cdn-learn.adafruit.com/assets/assets/000/075/992/medium800/gaming_MakeCode_Arcade_14.jpg?1558712552)

## Splash Screen

Using Aseprite and the asset tool, I also made a splash screen for the game startup sequence that features the Digi-Key and Adafruit logos. Reducing logos can be tricky. I built the Adafruit logo by hand, one pixel at a time (originally for some tests our own Scott Shawcroft is doing with CircuitPython running on original Nintendo Game Boy hardware!).

I then used a dithered pattern to create the "gradient" effect from teal to purple. Dithering is another effective way of making the most out of a limited color palette while giving the illusion of a smooth-ish color gradient.

For the Digi-Key logo I downloaded a nice, clear image from a web image search and then scaled it down in Aseprite to 160px wide, and then did a bit of cleanup on some edges.

![](https://cdn-learn.adafruit.com/assets/assets/000/075/993/medium800/gaming_adafruit_digi-key_logo_fancyBG.png?1558713204)

# Next Level MakeCode Arcade Games

## NeoPixel Display Bar

Some handheld gaming hardware that's compatible with MakeCode Arcade includes one or more NeoPixel RGB LEDs. The PyGamer and PyBadge each have a strip of five NeoPixels located just below the display screen, while the PyBadge LC has a single NeoPixel.

Or, get really fancy and plug in external NeoPixels to the PyGamer or PyBadge/PyBadge LC JST connector port!

You can use these to great effect in your games! Flash lights when you blow up an enemy, show the player sprite's life/hearts meter, or display rainbow effects when a player sets a new high score!

Here's what you need to know to use the NeoPixels in your MCA games.

Primary: 

## Add Extension

First, open the Advanced category section and click on the Extensions item.

Next, click on the **light** extension, which adds the blocks we need.

Click the **Light** category to see the available blocks.

In order to simply light up the five NeoPixels on, say, the PyGamer, here's one arrangement that'll do that.

- **set pixels length to 5 pixels**
- **set brightness to 10**
- **set all pixels to magenta**

By setting the proper pixel length of the strip we can then use the graphing, animation, and other blocks accurately.

![gaming_MakeCode_Arcade_17.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/018/medium640/gaming_MakeCode_Arcade_17.jpg?1558722057)

![gaming_MakeCode_Arcade_and_Adafruit_Learning_System.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/019/medium640/gaming_MakeCode_Arcade_and_Adafruit_Learning_System.jpg?1558723142)

![gaming_MakeCode_Arcade_18.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/020/medium640/gaming_MakeCode_Arcade_18.jpg?1558723626)

![gaming_MakeCode_Arcade_19.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/021/medium640/gaming_MakeCode_Arcade_19.jpg?1558724324)

Here's a very simple way to light up specific NeoPixels when you press the left button or A button.

![](https://cdn-learn.adafruit.com/assets/assets/000/076/023/medium800/gaming_Banners_and_Alerts_and_MakeCode_Arcade_3.jpg?1558725712)

![](https://cdn-learn.adafruit.com/assets/assets/000/076/027/medium800thumb/gaming_PGNeoPixels.jpg?1558726386)

## Life Meter

In order to tie the NeoPixel bar to the health status in a typical MCA game, I lit the first three NeoPixels to red, and then added these blocks to the loop that's run when the player loses a life (in this case from overlapping an un-needed component).

First, set the brightness high, then set the NeoPixel to black at the same index as the current life number, and finally return the brightness to a moderate level. It's pretty simple!

![](https://cdn-learn.adafruit.com/assets/assets/000/076/029/medium800/gaming_MakeCode_Arcade_20.jpg?1558726630)

You can add all kinds of other effects using the NeoPixel animation block and run them when different events occur in the game.

# Next Level MakeCode Arcade Games

## Shipping Game

Here we'll have a look at a fully featured game created in MakeCode Arcade including the enhancements shown in this guide, as well as adding a bit of animation on our player sprite. First of all, if you're new to making games with MakeCode Arcade, have a look at these fundamental guides first:

- [MakeCode Arcade Pixel Art](https://learn.adafruit.com/makecode-arcade-pixel-art-sprites/overview)
- [MakeCode Arcade Animation](https://learn.adafruit.com/makecode-arcade-pixel-animation/overview)
- [MakeCode Arcade Platformer Level Design](https://learn.adafruit.com/makecode-arcade-platform-level/overview)

Primary: 

We'll look at two versions of the Digi-Key Shipping Game, before and after the enhancements were added.

Start by launching [MakeCode Arcade beta](https://arcade.makecode.com/beta) using the Google Chrome web browser. Then, download the **Shipping\_Game\_before.png** file by right-clicking on the image below and saving it to your computer.

![](https://cdn-learn.adafruit.com/assets/assets/000/076/035/medium800/gaming_arcade-Shipping_Game_before.png?1558728556)

## Load the Code

This is a special .png file that contains not only an image, but the entire game is embedded in it as well!

Simply drag it from the location to which you saved the image on your computer (such as the desktop as shown here) onto the Chrome browser window that is already running MakeCode Arcade (MCA).

This will open the code into the MCA editor.

![gaming_MakeCode_Arcade_3.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/036/medium640/gaming_MakeCode_Arcade_3.jpg?1558728649)

![gaming_MakeCode_Arcade_21.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/039/medium640/gaming_MakeCode_Arcade_21.jpg?1558728762)

Info: 

Give the game a test play -- it's fun! Use the controller d-pad/thumbstick to move the D-K box around the screen and collect the proper number of components to fulfill the latest order. You'll see the number of each component needed on the left side of the screen.

Now, let's take it up a level! Here's the version with these additions:

- Splash screen background
- Intro music
- Factory background during gameplay
- Background music
- Animation for the player sprite
- Health counter bar indicator on the NeoPixel strip

Again, download this special .png file and than drag it into your MakeCode Arcade window to open it.

![](https://cdn-learn.adafruit.com/assets/assets/000/076/048/medium800/gaming_arcade-Shipping_Game_after.png?1558732340)

Now try playing this version -- it's NEXT LEVEL!

Then, when you're ready, you can upload the game onto a PyGamer or PyBadge to bring it on the go.

https://youtu.be/eJBsZ9brP8A

Here's the version that shipped with AdaBox 012, which has a different splash screen:

[pygamer_Digi-Key_shipping_game.UF2](https://cdn-learn.adafruit.com/assets/assets/000/078/073/original/pygamer_Digi-Key_shipping_game.UF2?1562873633)
# Next Level MakeCode Arcade Games

## Update the PyBadge/PyGamer Bootloader

You are at the bleeding edge of handheld, open source, game playing hardware and software, what with your PyBadge/PyBadge LC or PyGamer! Congratulations! It's fun and exciting! It is also changing and improving all the time, so please update your bootloaders before proceeding to put your MakeCode Arcade games on the board!!

Info: 

## PyBadge/PyBadge LC Bootloader

If you have a **PyBadge** or **PyBadge LC** , [please go to this page for instructions on updating the bootloader.](https://learn.adafruit.com/adafruit-pybadge/updating-the-bootloader)

![gaming_pyb.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/276/medium640/gaming_pyb.jpg?1559330072)

## PyGamer Bootloader

If you have a **PyGamer** , [please go to this page for instructions on updating the bootloader.](https://learn.adafruit.com/adafruit-pygamer/updating-the-bootloader)

![gaming_pyg.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/277/medium640/gaming_pyg.jpg?1559330110)

Danger: 

## Hardware Checks

If, after updating your board's bootloader, you still think you may have a hardware problem, here's a great way to test out all of the functions. From buttons, to the light sensor, thumbstick (PyGamer only), accelerometer (PyGamer and PyBadge only, not the LC), and more, we've got a super nifty set of hardware test .UF2 files you can use.

Click on the link for your board below for more info and a link to the appropriate UF2 file.

[PyBadge/PyBadge LC Hardware Check](https://learn.adafruit.com/adafruit-pybadge/arduino-test)
[PyGamer Hardware Check](https://learn.adafruit.com/adafruit-pygamer/arduino-test)
Another way to do a hardware check is with the handy, dandy MakeCode Arcade Basic Hardware Test. This was created with MakeCode Arcade and you can use it to check that your d-pad buttons or thumb joystick can move the yellow face around the screen, and that the A and B buttons work to play a sound (just make sure you have a speaker plugged in to the PyGamer first).

You can [open this link](https://makecode.com/_icwXcg4PWRYW) to get to it, or download the UF2 file below and drag it onto your board's USB drive in bootloader mode.

[arcade-Basic-Hardware-Test.UF2](https://cdn-learn.adafruit.com/assets/assets/000/076/316/original/arcade-Basic-Hardware-Test-PyBadge_and_PyGamer.uf2?1559345409)
![](https://cdn-learn.adafruit.com/assets/assets/000/076/317/medium800/gaming_hwtest.png?1559345457)

# Next Level MakeCode Arcade Games

## Load a MakeCode Game on PyGamer/PyBadge

Let's load a game! For example, here's a link to **Run, Blinka, Run!&nbsp;** To open the game in the MakeCode Arcade editor, first, click the share link below. This will allow you to play the game in the browser right away.

[Makecode Arcade Game: Run, Blinka, Run!](https://makecode.com/_Y90aTaiHfh41)
Then, click on the&nbsp;Show Code&nbsp;button in the upper left corner. The shows the code for the game, and by clicking the&nbsp;Edit&nbsp;button in the upper right corner, it'll open into the editor where you can upload it to your PyGamer/PyBadge.

Once you have a game working on the MakeCode Arcade web editor, it's time to download it and flash it onto your board.

![adafruit_products_Run_Blinka_Run__-_Microsoft_MakeCode_2.jpg](https://cdn-learn.adafruit.com/assets/assets/000/078/777/medium640/adafruit_products_Run_Blinka_Run__-_Microsoft_MakeCode_2.jpg?1564457638)

![adafruit_products_Run_Blinka_Run__-_Microsoft_MakeCode_3.jpg](https://cdn-learn.adafruit.com/assets/assets/000/078/778/medium640/adafruit_products_Run_Blinka_Run__-_Microsoft_MakeCode_3.jpg?1564457679)

Primary: 

## Board Definition

In order to load a game made in MakeCode Arcade onto the PyBadge, first choose the proper board definition inside of MakeCode. Click the ellipsis (...) next to DOWNLOAD and then the **Choose Hardware** item.

![adafruit_products_MakeCode_choose_hardware.jpg](https://cdn-learn.adafruit.com/assets/assets/000/108/981/medium640/adafruit_products_MakeCode_choose_hardware.jpg?1644859647)

## Change Board screen

Click on the image of your board, either the PyBadge/PyBadge LC or the PyGamer

![adafruit_products_MakeCode_Arcade.jpg](https://cdn-learn.adafruit.com/assets/assets/000/078/781/medium640/adafruit_products_MakeCode_Arcade.jpg?1564458209)

This will cause the game .uf2 file for your particular board to be saved to your hard drive. You only need to do this the first time you use a new board. Thereafter you can simply click the **Download** button on the MakeCode Arcade editor page.

![](https://cdn-learn.adafruit.com/assets/assets/000/074/943/medium800/gaming_downloaded.png?1556169879)

Danger: 

## Bootloader Mode

Now, we'll put the board into bootloader mode so we can drag on the saved .uf2 file. On the back side of the board you'll see a reset button at the top. Make sure the board is plugged into your computer via USB with a USB micro B to A data cable. Also, be sure the board is turned on.

&nbsp;

Then, press the reset button. This will initiate bootloader mode.

&nbsp;

When the board is in bootloader mode you'll see a screen similar to this one show up.

![gaming_IMG_5427.jpg](https://cdn-learn.adafruit.com/assets/assets/000/074/945/medium640/gaming_IMG_5427.jpg?1556170490)

![gaming_IMG_5428.jpg](https://cdn-learn.adafruit.com/assets/assets/000/074/991/medium640/gaming_IMG_5428.jpg?1556308393)

![gaming_IMG_5429.jpg](https://cdn-learn.adafruit.com/assets/assets/000/074/992/medium640/gaming_IMG_5429.jpg?1556308428)

## Drag and Drop

Now that the board is in bootloader mode, you should see a **BADGEBOOT** drive show up on your computer as a USB flash drive. Simply drag the arcade game .uf2 file onto the drive.

![gaming_dragtoPyBadge.jpg](https://cdn-learn.adafruit.com/assets/assets/000/074/944/medium640/gaming_dragtoPyBadge.jpg?1556308458)

## Play!

That's all there is to it! Once the file is copied over the board will restart and launch the game!

![](https://cdn-learn.adafruit.com/assets/assets/000/074/948/medium800/gaming_IMG_5430.jpg?1556170587)

https://youtu.be/au5w1sLjsaU

Keep an eye on Adafruit.com for additional game related content.

# Next Level MakeCode Arcade Games

## Troubleshooting MakeCode Arcade

If you run into trouble with MakeCode Arcade, here are some resources for getting help:

- [Microsoft MakeCode Arcade Forum](https://forum.makecode.com/c/Share-your-Arcade-projects-here)
- [Adafruit MakeCode Forum](https://forums.adafruit.com/viewforum.php?f=64)
- [Microsoft MakeCode Arcade Discord](https://aka.ms/makecodecommunity) -- look for the #arcade channel
- [Adafruit MakeCode Discord](https://adafru.it/discord) -- look for the #makecode channel

Primary: 


## Guide Products

### Adafruit PyGamer Starter Kit

[Adafruit PyGamer Starter Kit](https://www.adafruit.com/product/4277)
**Please note: you may get a royal blue _or_ purple case with your starter kit (they're both lovely colors)**

What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right,...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4277)
[Related Guides to the Product](https://learn.adafruit.com/products/4277/guides)
### Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino

[Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino](https://www.adafruit.com/product/4242)
What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right, it's the **Adafruit PyGamer!** We wanted to make an entry-level gaming handheld for DIY gaming, and maybe a little...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4242)
[Related Guides to the Product](https://learn.adafruit.com/products/4242/guides)
### Adafruit PyGamer Acrylic Enclosure Kit

[Adafruit PyGamer Acrylic Enclosure Kit](https://www.adafruit.com/product/4238)
You've got your PyGamer, and you're ready to start jammin' on your favorite arcade games. You gaze adoringly at the charming silkscreen designed by Ada-friend PaintYourDragon.&nbsp;The nostalgia is palpable!

Cradling the PCB in your hands, you realize there's something...

In Stock
[Buy Now](https://www.adafruit.com/product/4238)
[Related Guides to the Product](https://learn.adafruit.com/products/4238/guides)
### Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino

[Adafruit PyBadge for MakeCode Arcade, CircuitPython, or Arduino](https://www.adafruit.com/product/4200)
What's the size of a credit card and can run CircuitPython, MakeCode Arcade or Arduino? That's right, its the **Adafruit PyBadge!** We wanted to see how much we could cram into a ​3 3⁄8 × ​2 1⁄8 inch rounded rectangle, to make an all-in-one dev board with...

In Stock
[Buy Now](https://www.adafruit.com/product/4200)
[Related Guides to the Product](https://learn.adafruit.com/products/4200/guides)
### Adafruit PyBadge LC - MakeCode Arcade, CircuitPython, or Arduino

[Adafruit PyBadge LC - MakeCode Arcade, CircuitPython, or Arduino](https://www.adafruit.com/product/3939)
What's the size of a credit card and can run CircuitPython, MakeCode Arcade or Arduino even when you're on a budget? That's right, it's the&nbsp; **Adafruit PyBadge LC!** &nbsp;We wanted to see how much we could cram into a ​3 3⁄8 × ​2 1⁄8 inch...

In Stock
[Buy Now](https://www.adafruit.com/product/3939)
[Related Guides to the Product](https://learn.adafruit.com/products/3939/guides)
### Pink and Purple Braided USB A to Micro B Cable - 2 meter long

[Pink and Purple Braided USB A to Micro B Cable - 2 meter long](https://www.adafruit.com/product/4148)
This cable is&nbsp;super-fashionable&nbsp;with a woven pink and purple Blinka-like pattern!

First let's talk about the cover and over-molding. We got these in custom colors, and if you&nbsp;_have_&nbsp;to have visible cables, then you might as well have the nicest fabric-bound...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/4148)
[Related Guides to the Product](https://learn.adafruit.com/products/4148/guides)
### Lithium Ion Polymer Battery - 3.7V 350mAh

[Lithium Ion Polymer Battery - 3.7V 350mAh](https://www.adafruit.com/product/2750)
Lithium-ion polymer (also known as 'lipo' or 'lipoly') batteries are thin, light, and powerful. The output ranges from 4.2V when completely charged to 3.7V. This battery has a capacity of 350mAh for a total of about 1.3 Wh. If you need a larger (or smaller!) battery, <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/2750)
[Related Guides to the Product](https://learn.adafruit.com/products/2750/guides)
### Mini Oval Speaker - 8 Ohm 1 Watt

[Mini Oval Speaker - 8 Ohm 1 Watt](https://www.adafruit.com/product/3923)
Hear the good news! This wee speaker&nbsp;is&nbsp;a&nbsp;great addition to any audio project where you need 8 ohm impedance and 1W or less of power. We particularly like this&nbsp;speaker&nbsp;as it is&nbsp;small and comes with nice skinny wires with a connector on the end. It has a handy...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3923)
[Related Guides to the Product](https://learn.adafruit.com/products/3923/guides)

## Related Guides

- [Adafruit PyBadge and PyBadge LC](https://learn.adafruit.com/adafruit-pybadge.md)
- [Introducing Adafruit PyGamer](https://learn.adafruit.com/adafruit-pygamer.md)
- [PyPortal Tides Viewer](https://learn.adafruit.com/pyportal-tides-viewer.md)
- [Trash Panda: The Game](https://learn.adafruit.com/trash-panda-the-game.md)
- [Feather Waveform Generator in CircuitPython](https://learn.adafruit.com/waveform-generator.md)
- [Making a Name Tag in MakeCode Arcade](https://learn.adafruit.com/making-a-name-tag-in-makecode-arcade.md)
- [Playing Arduboy Games on Arcada](https://learn.adafruit.com/playing-arduboy-games-on-arcada.md)
- [Your First Power Switch Relay Project - Circuit Playground Smart Plug](https://learn.adafruit.com/beginner-first-project-power-switch-relay-circuit-playground-smart-plug.md)
- [Glowing Fascinator Hat with Gemma M0 and MakeCode](https://learn.adafruit.com/glowing-fascinator-hat-gemma-m0-makecode.md)
- [Sailor Moon Star Locket](https://learn.adafruit.com/sailor-moon-star-locket.md)
- [CircuitPython Minesweeper Game](https://learn.adafruit.com/circuitpython-pyportal-minesweeper-game.md)
- [Daily UV Index PyPortal Display](https://learn.adafruit.com/pyportal-uv-index.md)
- [PyBadge GamePad](https://learn.adafruit.com/pybadge-gamepad.md)
- [Voicebox FX](https://learn.adafruit.com/voicebox-fx.md)
- [PyGamer 3D Printed Snapfit Case](https://learn.adafruit.com/pygamer-snapfit-case.md)
- [PyPortal IoT Plant Monitor with AWS IoT and CircuitPython](https://learn.adafruit.com/pyportal-iot-plant-monitor-with-aws-iot-and-circuitpython.md)
- [Adafruit Fruit Jam](https://learn.adafruit.com/adafruit-fruit-jam.md)
