Teensy APA102 POV Poi / Pixel Poi Build. Tutorial

Hi All

Ive been wanting to make a website for quite some time so I had a go at making a build guide for my version of the poi, feel free to check it out.
Build Guide

My modified version of the image converter is linked on the page and here --> Image Converter
It's bit different to the Mortonkopf one as my code on the poi works differently. I have included a copy of my code in a link so feel free to use & improve it :)

Cheers
 
@InvisiBug
nice jobs, my suggestions:
1. you can design a easy PCB that connects the strip, charger ,teensy together with plenty of extra pads for battery wire.
saves up time for air-wiring and its even more sturdy to impact, as the PCB is made of glass-fiber
2. be care the plastic tube should be at least made of "PVC" , best with "PC(PolyCarbonate)" so it gives durability to your poi, not sure if there are other clear and sturdy plastic, but DO NOT USE ACRYLIC.

3. I used to use gpio pins for data/clock pushing, but then I suddenly found out the SPI-port-pins(11 for DATA,13 for CLOCK) works so much faster ,(and DMA/thread even further)
not sure if T3.2 can drive gpio at 20Mhz (fastest speed with apa102 strips), but since the picture read from flash and may not need this extra speed boost.

;) ;)
 
Hiya Po Ting,
I am currently in the process of designing a PCB for my more finished version with an integrated charger based on the tp4056.
I'm definitely going to rewire the poi to use the SPI pins (I thought it was odd they weren't being used in the first place but I decided to go with the non SPI pins as I knew they would work).
What is the advantage of having faster SPI communication once the images are stable? I thought a faster clock speed would just require longer delays to stretch out the image negating the faster clock?
 
(I thought it was odd they weren't being used in the first place but I decided to go with the non SPI pins as I knew they would work).
yep, not using the SPI pins was about trying to get a work around at that time to use SPI leds with other SPI peripherals. I was thinking about additional storage space.
 
Hello everybody!Please tell me. Is it possible to create pov poi with sk9822?��

yes, it follows the same usage with apa102 strips,
by the phrase "Persistence Of Vision" , any LED or light-reflecting object that seen by human eyes is suitable to the subject.
but their effect doesn't show any meaningful things (words,watermelons,etc)

I just made my new design with apa102-5050 and apa102-2020.
hold on, wait me some hours.
 
okay, finish busying
my previous version of work is on floor #252 , its half year since.

heres my latest apa102 PCB holder board (of 2020, and 5050)
32469097_2006676856018350_6794020250837843968_n.jpg
the density is by far the most possible I can layout
at a 4LED/CM , makes those 80 tiny LEDS stuck in 20cm.
the 5050 design shows sanity(of blue) on the last 6 LEDs, not happening when using 144/m apa102c strips,
I have to guess if it was the LED parts differs (chips called apa102-8192A from the manufacturer)
still need figuring :\
the 2020 board shows just fine in later tesing (after cleaning up)

32462583_2006676519351717_4120069944169725952_n.jpg
the apa102-2020s was pasted with stencil
and then cooked with the grill plate bought intended for SMD prototyping :)
it wasn't working well as the vcc-gnd pads are very close, and there are shorts.
need some cleaning up with hot-air gun and really frustrating :(
(my 5050 board shows good results, much bigger pads and bigger spacing)
should became better as these packs are the firsts of my paste works.

and here is the video shown they works, and could see some blue-sanity on 5050s, 2020s worked pretty perfect! recorded via my poor phone.
https://www.facebook.com/PandaSpectrum/videos/1985074908473016/
tell me if need the video on a different space
 
32472040_2006689489350420_7468300751618441216_n.jpg
this is the closest shot my phone could reach.
the data is pushed from the 4 pads (designed the same with the strips) all the way up.
sorry the board is dirty :(
 
Nice! I just got my APA102-2020 POV experiment working too! (The one using two adjacent, offset rows of 198 LED per meter strips.) It's not yet in POV baton form, as I wanted to make sure it worked before putting it in an enclosure. Not having the LEDs in a perfectly straight line does seem to make a difference in image quality, but it's hard to know how much of a difference until I can actually swing this thing around. My testing involved precariously holding in one hand and waving around a Teensy, 18650 battery, dupont cables, and a piece of acrylic crammed with 172 LEDs. The higher image resolution is really cool to see :)

About the APA102 2020 198/meter strips:

I am not a fan of the durability of the APA102-2020 198 LEDs / meter strips on flex PCB. The pads on the LEDs are of necessity so small that there seems to be no way to handle the strips without at least a couple of LEDs requiring reflowing (while praying that you don't screw up adjacent LEDs with the hot air gun). In a few cases LEDs actually fell off the flex PCB under minimal flexion and without crazy handling. Not cool for $50/strip.

I found that I am able to solder wires to the strip at the section ends (which are every 66 LEDs), as the flex PCB is designed to break out the data and clock traces to two slightly-larger pads on one side of the flex, with the power pads similarly broken out on the opposite side. I examined the flex PCB under a microscope and I think that the only way to reliably connect wires at any place other than section ends would be with with a 4 pin, FPC/FFC connector. I took a stab at connecting wires without an FFC connector and I really don't think I can expose sufficient metal to heat and solder to without removing too much" solder mask and inevitably bridging traces. (I used a laser cutter to remove all the solder mask I could from an each trace while still preserving a sliver of the mask between each of the four traces protect against shorts/bridges. I'm generally comfortable soldering 0603 without magnification and with an iron, but flex is a different animal altogether. The copper is quite thin to begin with, and from there the traces are under 1 mm pitch. Even reliably tinning the traces wasn't happening with my Metcal iron and a good amount of patience.

Photos to come.

@Po Ting - I'm looking forward to seeing that 2020 light bar lit up!
 
Some help for a nooooob

Hi All

Ive been wanting to make a website for quite some time so I had a go at making a build guide for my version of the poi, feel free to check it out.
Build Guide

My modified version of the image converter is linked on the page and here --> Image Converter
It's bit different to the Mortonkopf one as my code on the poi works differently. I have included a copy of my code in a link so feel free to use & improve it :)

Cheers

Hey InvisiBug,

I started down the path of following Mortonkopf, and had to put it aside for a while. I have recently picked it back up and found these updates, and your site.

I built everything, have it all wired up and have played with the LEDs with some simple commands. I am very, very new to this Arduino programming, so I am sure these will be simple solves, but boy have I spent some time getting lost. I just dont know what to do with Streaming.h (should it be a tab in the sketch?)

Here's the error code:
Arduino: 1.8.3 (Windows 10), TD: 1.37, Board: "Teensy 3.2 / 3.1, Serial, 96 MHz (overclock), Faster, US English"

C:\Users\dscheib\Desktop\Dan Projects\Orbit\Orbit.ino:18:23: fatal error: Streaming.h: No such file or directory

compilation terminated.

Error compiling for board Teensy 3.2 / 3.1.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

And the actual code (which will look familiar, since it's what you provide in the Orbit downloads, with my LED count change to 64)
////////////////////////////////////////////////////////////////////////
// Matthew Kavanagh (Kavanet.co.uk)
//
// Orbit POI
// Orbit.ino
// 2018
// *********
////////////////////////////////////////////////////////////////////////
// ###
// # # # #### # # # ##### ###### ####
// # ## # # # # # # # # # #
// # # # # # # # # # # ##### ####
// # # # # # # # # # # # #
// # # ## # # # # # # # # # #
// ### # # #### ###### #### ##### ###### ####
//
////////////////////////////////////////////////////////////////////////
#include <Streaming.h>
#include <FastLED.h>
#include "Images.h"
#include <stdlib.h>

////////////////////////////////////////////////////////////////////////
//
// ######
// # # ###### ###### # # # # ##### # #### # # ####
// # # # # # ## # # # # # # ## # #
// # # ##### ##### # # # # # # # # # # # # ####
// # # # # # # # # # # # # # # # # #
// # # # # # # ## # # # # # # ## # #
// ###### ###### # # # # # # # #### # # ####
//
////////////////////////////////////////////////////////////////////////
#define totalLEDs 64 // Change this depending on how many LEDs you have

#define LEDBrightness 100
#define powerLED 13
#define data 2 // yellow
#define clock 3 // green

#define OFF LOW
#define ON HIGH

#define redVal 0
#define greenVal 1
#define blueVal 2

#define width(array) sizeof(array) / sizeof(array[0])

////////////////////////////////////////////////////////////////////////
//
// # #
// # # ## ##### ##### # # ## ##### ######
// # # # # # # # # # # # # # # #
// ####### # # # # # # # # # # # # #####
// # # ###### ##### # # # ## # ###### ##### #
// # # # # # # # # ## ## # # # # #
// # # # # # # ##### # # # # # # ######
//
////////////////////////////////////////////////////////////////////////
CRGB currentLED[totalLEDs]; // RGB colour space

////////////////////////////////////////////////////////////////////////
//
// ######
// # # ##### #### ##### #### ##### # # ##### ###### ####
// # # # # # # # # # # # # # # # #
// ###### # # # # # # # # # # # ##### ####
// # ##### # # # # # # # ##### # #
// # # # # # # # # # # # # # #
// # # # #### # #### # # # ###### ####
//
////////////////////////////////////////////////////////////////////////
void drawImage(unsigned long time, const char pattern[][totalLEDs][3], int pictureWidth);


////////////////////////////////////////////////////////////////////////
//
// # #
// # # ## ##### # ## ##### # ###### ####
// # # # # # # # # # # # # # #
// # # # # # # # # # ##### # ##### ####
// # # ###### ##### # ###### # # # # #
// # # # # # # # # # # # # # # #
// # # # # # # # # ##### ###### ###### ####
//
////////////////////////////////////////////////////////////////////////
const char vendor_logo_cascadia_gardens[][totalLEDs][3] = {{{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 254, 255}, {255, 254, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 251}, {255, 255, 250}, {255, 255, 252}, {255, 255, 255}, {254, 255, 254}, {255, 255, 252}, {255, 255, 253}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 253}, {255, 255, 253}, {255, 255, 253}, {255, 255, 253}, {255, 255, 254}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 250}, {255, 255, 254}, {255, 254, 255}, {255, 254, 255}, {255, 253, 255}, {255, 254, 255}, {253, 255, 255}, {251, 255, 250}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {253, 253, 253}, {253, 253, 253}, {255, 254, 255}, {255, 255, 255}, {250, 251, 246}, {251, 252, 245}, {194, 194, 190}, {188, 189, 184}, {249, 250, 247}, {254, 254, 251}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 253}, {255, 254, 255}, {247, 246, 248}, {251, 252, 242}, {242, 246, 222}, {205, 211, 198}, {252, 255, 255}, {253, 255, 251}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {240, 240, 240}, {253, 253, 253}, {255, 254, 255}, {255, 255, 254}, {251, 251, 244}, {189, 190, 181}, {252, 253, 248}, {253, 254, 249}, {217, 217, 213}, {249, 250, 245}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 254, 255}, {254, 254, 248}, {169, 172, 138}, {108, 144, 42}, {207, 224, 174}, {254, 255, 248}, {255, 251, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {244, 252, 239}, {218, 228, 190}, {253, 254, 251}, {247, 248, 233}, {196, 200, 175}, {251, 252, 248}, {198, 201, 187}, {253, 252, 252}, {255, 255, 255}, {255, 255, 255}, {252, 253, 246}, {120, 123, 104}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 252}, {255, 255, 250}, {255, 255, 251}, {249, 247, 254}, {248, 254, 238}, {104, 137, 62}, {101, 149, 36}, {105, 152, 43}, {243, 254, 228}, {255, 255, 251}, {252, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {254, 255, 254}, {254, 255, 255}, {255, 255, 252}, {255, 255, 247}, {254, 252, 248}, {254, 252, 254}, {253, 253, 255}, {254, 254, 255}, {251, 253, 254}, {253, 254, 252}, {255, 255, 249}, {255, 254, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {168, 180, 154}, {247, 250, 253}, {251, 255, 241}, {252, 253, 254}, {239, 242, 222}, {249, 251, 248}, {192, 197, 180}, {251, 251, 251}, {255, 255, 254}, {255, 255, 255}, {254, 254, 250}, {109, 111, 97}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 253}, {255, 254, 255}, {255, 254, 255}, {255, 254, 255}, {247, 252, 235}, {115, 139, 69}, {109, 149, 45}, {97, 144, 40}, {102, 146, 46}, {255, 255, 245}, {255, 255, 253}, {253, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 247}, {255, 255, 253}, {255, 255, 255}, {254, 253, 255}, {255, 250, 253}, {252, 254, 244}, {236, 242, 217}, {209, 223, 181}, {173, 181, 139}, {251, 253, 245}, {255, 254, 255}, {255, 254, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {235, 242, 216}, {248, 252, 251}, {235, 238, 228}, {254, 254, 255}, {254, 255, 241}, {243, 245, 243}, {250, 252, 237}, {249, 250, 246}, {255, 255, 253}, {255, 254, 255}, {254, 254, 254}, {244, 244, 239}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 251}, {255, 254, 255}, {251, 250, 253}, {254, 254, 246}, {125, 154, 82}, {106, 143, 40}, {105, 151, 35}, {103, 150, 46}, {104, 144, 54}, {251, 255, 242}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {253, 253, 253}, {254, 254, 254}, {251, 250, 255}, {252, 255, 254}, {235, 245, 219}, {147, 170, 110}, {106, 151, 60}, {98, 146, 38}, {95, 145, 28}, {99, 151, 40}, {227, 230, 200}, {251, 253, 245}, {255, 254, 255}, {255, 254, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {130, 144, 117}, {146, 160, 110}, {237, 241, 238}, {251, 254, 244}, {218, 221, 209}, {253, 253, 252}, {201, 206, 188}, {242, 244, 236}, {253, 254, 249}, {255, 254, 255}, {250, 249, 253}, {254, 254, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 252}, {255, 254, 255}, {252, 253, 244}, {230, 232, 203}, {106, 146, 31}, {106, 147, 43}, {104, 149, 46}, {103, 152, 39}, {112, 148, 67}, {250, 251, 246}, {255, 251, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {253, 252, 253}, {176, 200, 116}, {103, 134, 43}, {110, 152, 47}, {103, 152, 34}, {104, 151, 43}, {110, 150, 42}, {123, 147, 65}, {187, 199, 151}, {252, 253, 255}, {251, 252, 250}, {255, 255, 247}, {255, 254, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {248, 251, 241}, {252, 254, 251}, {253, 254, 254}, {255, 254, 255}, {255, 254, 255}, {255, 255, 255}, {254, 254, 254}, {253, 253, 253}, {184, 186, 173}, {188, 191, 181}, {250, 251, 249}, {251, 253, 253}, {254, 255, 253}, {255, 255, 255}, {255, 254, 255}, {255, 254, 254}, {255, 255, 250}, {255, 254, 253}, {245, 252, 251}, {102, 142, 41}, {103, 150, 45}, {104, 149, 48}, {104, 146, 47}, {105, 146, 43}, {183, 205, 148}, {252, 255, 251}, {255, 254, 254}, {254, 255, 252}, {251, 248, 250}, {252, 253, 249}, {167, 190, 133}, {105, 144, 32}, {104, 149, 44}, {103, 150, 47}, {102, 150, 48}, {101, 151, 44}, {102, 154, 36}, {104, 146, 42}, {164, 184, 131}, {249, 253, 249}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {243, 245, 232}, {180, 185, 164}, {240, 245, 221}, {246, 253, 224}, {254, 255, 251}, {254, 255, 255}, {252, 254, 252}, {250, 251, 248}, {236, 238, 228}, {252, 254, 244}, {225, 228, 215}, {140, 144, 128}, {255, 253, 255}, {254, 255, 248}, {253, 255, 252}, {253, 254, 255}, {255, 255, 255}, {254, 255, 255}, {228, 239, 215}, {107, 151, 40}, {103, 150, 46}, {104, 151, 41}, {104, 148, 38}, {104, 146, 37}, {244, 248, 226}, {253, 249, 254}, {255, 253, 255}, {254, 255, 255}, {219, 236, 204}, {107, 141, 45}, {106, 151, 32}, {101, 148, 52}, {103, 150, 47}, {103, 150, 43}, {104, 151, 42}, {104, 150, 41}, {105, 146, 42}, {170, 195, 141}, {249, 255, 247}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 254, 252}, {254, 255, 251}, {183, 189, 178}, {178, 190, 171}, {211, 216, 200}, {248, 252, 249}, {249, 253, 250}, {250, 254, 247}, {221, 223, 216}, {146, 148, 138}, {254, 255, 249}, {255, 255, 246}, {255, 254, 255}, {253, 255, 254}, {246, 252, 241}, {240, 248, 229}, {255, 255, 253}, {250, 252, 254}, {168, 191, 135}, {101, 148, 35}, {103, 150, 43}, {104, 151, 37}, {107, 151, 45}, {100, 140, 48}, {255, 254, 255}, {254, 251, 255}, {251, 254, 233}, {143, 165, 119}, {104, 148, 32}, {103, 148, 48}, {102, 151, 46}, {100, 154, 33}, {102, 151, 49}, {104, 150, 42}, {107, 148, 44}, {110, 143, 58}, {202, 219, 169}, {247, 254, 245}, {255, 253, 255}, {255, 253, 254}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 253, 252}, {255, 255, 249}, {178, 189, 162}, {182, 199, 157}, {216, 223, 196}, {248, 253, 248}, {219, 225, 222}, {198, 204, 191}, {254, 255, 247}, {251, 252, 249}, {252, 253, 254}, {253, 253, 255}, {255, 255, 250}, {253, 253, 255}, {247, 255, 238}, {104, 132, 46}, {252, 254, 250}, {246, 251, 250}, {125, 152, 81}, {101, 147, 44}, {103, 151, 39}, {104, 151, 36}, {102, 143, 52}, {170, 200, 141}, {254, 254, 255}, {254, 254, 250}, {118, 144, 72}, {101, 151, 35}, {103, 149, 41}, {101, 147, 44}, {104, 149, 49}, {104, 149, 47}, {101, 151, 45}, {104, 150, 41}, {107, 143, 52}, {221, 238, 192}, {253, 254, 255}, {251, 251, 254}, {255, 254, 253}, {255, 253, 252}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {249, 253, 239}, {169, 179, 144}, {242, 244, 233}, {250, 253, 254}, {255, 255, 253}, {255, 255, 253}, {254, 254, 253}, {252, 252, 250}, {247, 248, 251}, {248, 249, 244}, {253, 254, 247}, {251, 253, 251}, {255, 254, 252}, {254, 254, 255}, {240, 250, 213}, {104, 148, 46}, {165, 190, 126}, {251, 250, 252}, {106, 143, 56}, {105, 151, 46}, {107, 147, 52}, {104, 150, 43}, {101, 139, 33}, {250, 253, 238}, {247, 253, 243}, {90, 132, 50}, {100, 153, 38}, {109, 146, 49}, {104, 150, 42}, {104, 150, 44}, {103, 149, 47}, {100, 147, 43}, {100, 149, 32}, {107, 139, 68}, {248, 253, 238}, {255, 254, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {253, 254, 249}, {251, 254, 254}, {250, 253, 253}, {249, 253, 246}, {255, 255, 251}, {255, 255, 251}, {218, 219, 214}, {250, 251, 247}, {248, 250, 245}, {132, 135, 124}, {254, 254, 250}, {174, 177, 169}, {255, 254, 250}, {254, 254, 254}, {205, 225, 176}, {103, 147, 43}, {107, 142, 56}, {252, 255, 242}, {106, 143, 56}, {106, 152, 41}, {100, 153, 42}, {103, 151, 42}, {130, 151, 98}, {252, 254, 248}, {114, 140, 65}, {105, 149, 43}, {102, 152, 36}, {107, 146, 51}, {103, 151, 39}, {103, 149, 53}, {105, 151, 55}, {100, 148, 38}, {191, 201, 174}, {244, 254, 239}, {247, 250, 247}, {255, 255, 254}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {180, 188, 164}, {184, 191, 174}, {165, 173, 151}, {185, 194, 163}, {188, 193, 181}, {248, 251, 242}, {193, 199, 187}, {250, 254, 244}, {255, 255, 248}, {243, 243, 239}, {250, 251, 246}, {123, 126, 115}, {255, 254, 248}, {254, 254, 254}, {179, 201, 149}, {106, 150, 42}, {104, 148, 41}, {239, 246, 218}, {115, 153, 72}, {106, 149, 41}, {97, 147, 45}, {107, 149, 28}, {248, 254, 251}, {143, 163, 95}, {108, 150, 40}, {104, 151, 36}, {102, 149, 37}, {104, 146, 43}, {104, 149, 40}, {106, 148, 35}, {124, 155, 82}, {240, 253, 240}, {210, 219, 202}, {249, 251, 248}, {253, 254, 253}, {252, 252, 248}, {252, 252, 252}, {250, 250, 250}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {246, 250, 250}, {247, 252, 232}, {171, 179, 157}, {249, 253, 251}, {251, 254, 244}, {246, 251, 238}, {246, 253, 238}, {143, 153, 135}, {159, 162, 150}, {248, 249, 251}, {248, 248, 250}, {252, 253, 249}, {255, 254, 247}, {254, 254, 254}, {215, 237, 183}, {103, 147, 38}, {102, 153, 39}, {164, 181, 140}, {152, 187, 121}, {103, 144, 44}, {111, 152, 44}, {160, 182, 135}, {197, 218, 166}, {104, 146, 37}, {102, 150, 49}, {105, 147, 52}, {104, 146, 44}, {102, 150, 34}, {100, 135, 38}, {229, 240, 220}, {249, 252, 250}, {111, 118, 77}, {61, 99, 19}, {55, 77, 31}, {253, 255, 242}, {255, 252, 251}, {212, 212, 212}, {252, 252, 252}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {187, 196, 165}, {230, 236, 212}, {252, 254, 231}, {193, 201, 165}, {167, 175, 129}, {242, 243, 238}, {251, 249, 253}, {251, 253, 248}, {232, 233, 231}, {231, 232, 228}, {251, 252, 241}, {250, 251, 251}, {254, 255, 255}, {255, 252, 255}, {248, 252, 233}, {107, 152, 38}, {104, 148, 57}, {109, 141, 75}, {215, 221, 200}, {98, 150, 32}, {108, 144, 49}, {249, 253, 239}, {105, 138, 44}, {97, 155, 34}, {97, 148, 42}, {103, 152, 31}, {107, 145, 45}, {209, 227, 191}, {253, 255, 246}, {197, 208, 179}, {63, 88, 34}, {68, 100, 31}, {67, 97, 24}, {67, 97, 29}, {66, 94, 38}, {134, 160, 113}, {206, 221, 181}, {68, 90, 34}, {228, 234, 210}, {252, 249, 253}, {253, 252, 255}, {252, 253, 249}, {251, 252, 245}, {250, 249, 254}, {255, 255, 253}, {254, 255, 253}, {252, 255, 253}, {251, 255, 251}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {251, 254, 247}, {248, 250, 247}, {247, 250, 248}, {249, 251, 249}, {248, 250, 246}, {248, 249, 249}, {249, 251, 243}, {150, 157, 121}, {250, 252, 248}, {251, 252, 246}, {172, 174, 165}, {253, 254, 252}, {254, 255, 252}, {255, 253, 255}, {251, 254, 250}, {130, 158, 98}, {102, 148, 40}, {106, 151, 28}, {250, 255, 254}, {99, 147, 43}, {222, 232, 208}, {120, 163, 71}, {99, 149, 43}, {108, 145, 45}, {117, 145, 63}, {216, 231, 211}, {252, 255, 255}, {219, 224, 204}, {78, 95, 40}, {73, 94, 35}, {73, 99, 33}, {63, 94, 22}, {67, 97, 27}, {67, 97, 27}, {70, 100, 30}, {68, 97, 28}, {58, 93, 21}, {66, 98, 20}, {68, 95, 22}, {88, 108, 49}, {198, 207, 183}, {253, 254, 231}, {72, 85, 45}, {250, 254, 232}, {255, 254, 255}, {255, 254, 255}, {255, 253, 255}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {168, 178, 146}, {167, 175, 153}, {168, 175, 156}, {168, 175, 152}, {168, 174, 154}, {249, 251, 239}, {220, 221, 212}, {252, 252, 252}, {254, 255, 255}, {254, 255, 255}, {248, 251, 245}, {152, 156, 143}, {255, 255, 252}, {255, 254, 254}, {253, 255, 255}, {252, 255, 246}, {108, 137, 65}, {111, 152, 31}, {250, 250, 255}, {167, 193, 142}, {242, 245, 224}, {107, 145, 47}, {120, 154, 86}, {246, 252, 222}, {246, 254, 244}, {222, 233, 197}, {66, 82, 21}, {67, 81, 23}, {69, 97, 22}, {69, 97, 22}, {69, 96, 25}, {68, 97, 25}, {67, 96, 29}, {67, 97, 27}, {67, 97, 23}, {67, 98, 21}, {66, 95, 37}, {65, 97, 33}, {66, 96, 31}, {67, 96, 30}, {72, 95, 33}, {68, 91, 28}, {73, 97, 33}, {60, 84, 23}, {220, 228, 211}, {253, 255, 243}, {255, 255, 253}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {232, 239, 222}, {249, 253, 248}, {252, 255, 255}, {252, 255, 253}, {252, 254, 248}, {249, 250, 238}, {181, 187, 159}, {250, 253, 239}, {254, 255, 255}, {254, 254, 255}, {253, 255, 252}, {104, 108, 90}, {255, 254, 253}, {255, 255, 249}, {254, 254, 255}, {254, 254, 250}, {252, 254, 252}, {157, 178, 119}, {254, 250, 249}, {248, 249, 253}, {210, 223, 203}, {255, 253, 241}, {248, 246, 240}, {164, 175, 148}, {63, 87, 29}, {70, 99, 31}, {69, 101, 29}, {67, 100, 31}, {66, 97, 31}, {67, 96, 31}, {68, 95, 31}, {69, 95, 30}, {67, 97, 27}, {67, 97, 28}, {67, 96, 30}, {67, 96, 32}, {72, 95, 25}, {70, 95, 28}, {69, 96, 29}, {68, 96, 27}, {67, 97, 28}, {67, 97, 30}, {67, 97, 31}, {67, 96, 29}, {65, 94, 25}, {73, 95, 44}, {225, 230, 215}, {254, 254, 254}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {157, 161, 144}, {249, 250, 242}, {251, 252, 250}, {254, 255, 255}, {216, 221, 202}, {250, 254, 248}, {243, 244, 244}, {252, 252, 252}, {255, 254, 255}, {255, 255, 255}, {251, 251, 251}, {220, 221, 216}, {255, 254, 255}, {254, 255, 243}, {255, 254, 255}, {255, 254, 254}, {252, 251, 249}, {224, 233, 205}, {254, 253, 248}, {247, 253, 250}, {244, 251, 246}, {254, 252, 248}, {210, 214, 190}, {93, 118, 66}, {62, 97, 19}, {69, 102, 28}, {71, 98, 31}, {70, 95, 38}, {66, 97, 31}, {67, 96, 33}, {68, 95, 32}, {69, 96, 29}, {67, 96, 29}, {67, 96, 29}, {67, 96, 29}, {67, 96, 29}, {71, 95, 24}, {70, 95, 28}, {69, 96, 29}, {68, 97, 26}, {66, 97, 26}, {66, 97, 28}, {65, 94, 27}, {71, 102, 30}, {64, 95, 17}, {63, 86, 26}, {178, 190, 163}, {243, 244, 240}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {252, 254, 238}, {180, 188, 165}, {251, 252, 235}, {217, 224, 199}, {227, 230, 223}, {249, 254, 249}, {228, 230, 225}, {253, 253, 247}, {255, 255, 248}, {255, 255, 251}, {254, 254, 254}, {252, 252, 254}, {254, 255, 254}, {255, 255, 252}, {255, 253, 255}, {253, 254, 246}, {121, 151, 104}, {108, 151, 33}, {253, 253, 247}, {233, 243, 229}, {230, 233, 206}, {104, 133, 64}, {209, 231, 196}, {248, 255, 246}, {251, 253, 253}, {128, 143, 107}, {66, 92, 23}, {70, 97, 26}, {69, 97, 23}, {68, 97, 22}, {69, 96, 24}, {68, 96, 27}, {67, 96, 29}, {67, 96, 29}, {67, 96, 29}, {67, 96, 29}, {66, 95, 36}, {66, 96, 34}, {67, 96, 30}, {67, 96, 31}, {66, 97, 30}, {66, 97, 27}, {66, 97, 27}, {73, 104, 37}, {130, 141, 113}, {250, 253, 238}, {253, 254, 248}, {255, 252, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {249, 252, 255}, {247, 251, 255}, {254, 255, 255}, {253, 255, 254}, {247, 252, 241}, {247, 252, 247}, {254, 255, 250}, {239, 240, 231}, {153, 160, 145}, {231, 235, 226}, {252, 254, 250}, {249, 253, 250}, {253, 255, 254}, {255, 253, 254}, {250, 252, 249}, {162, 183, 132}, {97, 151, 31}, {103, 147, 49}, {252, 255, 255}, {99, 140, 37}, {247, 252, 235}, {107, 152, 35}, {105, 147, 55}, {107, 137, 39}, {163, 183, 130}, {246, 254, 248}, {246, 254, 252}, {169, 184, 152}, {73, 91, 40}, {73, 96, 30}, {70, 98, 24}, {67, 97, 31}, {67, 96, 29}, {67, 96, 29}, {64, 93, 26}, {69, 98, 31}, {64, 100, 27}, {64, 96, 19}, {71, 99, 25}, {75, 95, 36}, {123, 140, 109}, {213, 227, 188}, {64, 84, 38}, {217, 232, 201}, {255, 253, 255}, {255, 254, 255}, {255, 253, 255}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {166, 181, 141}, {184, 197, 154}, {156, 171, 130}, {182, 195, 152}, {183, 192, 168}, {247, 251, 244}, {254, 255, 255}, {254, 253, 253}, {232, 238, 230}, {248, 252, 244}, {178, 185, 170}, {172, 178, 163}, {252, 255, 255}, {255, 253, 255}, {247, 253, 228}, {109, 150, 44}, {104, 145, 45}, {110, 139, 70}, {226, 234, 200}, {100, 155, 48}, {104, 148, 58}, {226, 240, 219}, {103, 141, 35}, {99, 152, 43}, {105, 154, 45}, {102, 143, 35}, {145, 168, 98}, {252, 254, 251}, {251, 253, 250}, {152, 165, 126}, {64, 91, 28}, {66, 96, 35}, {67, 96, 29}, {67, 96, 29}, {69, 98, 31}, {66, 96, 28}, {144, 167, 120}, {70, 92, 36}, {165, 176, 144}, {254, 252, 254}, {252, 250, 254}, {254, 254, 248}, {248, 249, 240}, {250, 248, 253}, {255, 255, 255}, {254, 255, 254}, {253, 255, 254}, {251, 255, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {224, 237, 214}, {248, 254, 255}, {192, 205, 176}, {246, 254, 253}, {253, 255, 251}, {249, 251, 238}, {252, 254, 251}, {252, 251, 255}, {237, 237, 224}, {159, 163, 147}, {231, 233, 226}, {255, 255, 252}, {255, 254, 249}, {254, 254, 254}, {219, 240, 188}, {104, 147, 41}, {105, 155, 38}, {143, 168, 126}, {165, 190, 129}, {102, 146, 48}, {107, 151, 40}, {198, 218, 177}, {135, 158, 105}, {102, 144, 27}, {103, 151, 40}, {103, 148, 52}, {105, 148, 48}, {104, 151, 31}, {154, 178, 115}, {253, 253, 251}, {254, 254, 250}, {79, 94, 50}, {63, 102, 15}, {64, 90, 27}, {222, 230, 209}, {252, 251, 254}, {206, 208, 195}, {254, 254, 247}, {255, 255, 252}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {230, 234, 214}, {253, 254, 255}, {199, 204, 181}, {252, 254, 252}, {253, 255, 249}, {249, 251, 237}, {233, 236, 221}, {156, 159, 148}, {244, 245, 241}, {252, 254, 248}, {251, 252, 249}, {251, 253, 251}, {255, 254, 249}, {254, 254, 254}, {174, 196, 145}, {106, 150, 44}, {102, 146, 35}, {224, 239, 206}, {125, 152, 77}, {107, 154, 48}, {102, 145, 44}, {108, 141, 50}, {244, 255, 245}, {108, 138, 60}, {105, 151, 35}, {105, 149, 41}, {106, 148, 45}, {105, 148, 47}, {100, 151, 34}, {106, 141, 55}, {187, 202, 164}, {247, 255, 243}, {170, 177, 159}, {242, 245, 238}, {248, 251, 247}, {251, 253, 253}, {252, 253, 244}, {252, 252, 247}, {255, 255, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {250, 251, 251}, {252, 252, 255}, {254, 255, 254}, {254, 254, 255}, {248, 249, 251}, {252, 253, 254}, {251, 252, 254}, {253, 253, 252}, {255, 255, 255}, {255, 255, 254}, {254, 254, 252}, {255, 255, 252}, {255, 254, 249}, {254, 254, 254}, {183, 203, 152}, {105, 148, 43}, {107, 141, 52}, {251, 255, 241}, {111, 139, 55}, {103, 153, 45}, {106, 148, 47}, {106, 152, 32}, {188, 207, 176}, {243, 251, 227}, {102, 135, 50}, {98, 138, 34}, {106, 149, 41}, {103, 148, 51}, {102, 150, 51}, {102, 152, 40}, {107, 151, 46}, {111, 143, 60}, {249, 252, 239}, {251, 254, 249}, {251, 253, 254}, {253, 255, 255}, {255, 255, 253}, {255, 255, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {217, 225, 204}, {221, 230, 200}, {219, 227, 207}, {219, 228, 200}, {225, 229, 201}, {250, 252, 240}, {199, 201, 193}, {239, 242, 228}, {241, 242, 238}, {241, 242, 235}, {240, 241, 230}, {117, 122, 105}, {255, 254, 249}, {254, 254, 254}, {235, 247, 205}, {105, 149, 43}, {143, 169, 103}, {247, 253, 251}, {107, 136, 53}, {103, 152, 51}, {105, 151, 39}, {103, 150, 44}, {105, 139, 42}, {253, 252, 248}, {241, 251, 227}, {108, 140, 58}, {105, 150, 36}, {103, 151, 40}, {114, 144, 46}, {105, 149, 45}, {100, 152, 42}, {102, 149, 39}, {108, 146, 47}, {181, 204, 155}, {249, 255, 249}, {254, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {254, 255, 253}, {254, 255, 255}, {250, 251, 251}, {250, 251, 244}, {204, 207, 187}, {250, 253, 240}, {219, 221, 212}, {251, 252, 241}, {254, 254, 252}, {253, 254, 249}, {250, 252, 243}, {145, 148, 137}, {254, 255, 246}, {255, 251, 255}, {248, 253, 236}, {103, 140, 44}, {247, 249, 243}, {248, 254, 244}, {116, 145, 67}, {104, 151, 49}, {101, 152, 43}, {105, 148, 49}, {110, 145, 54}, {207, 224, 181}, {252, 254, 253}, {241, 247, 231}, {109, 146, 27}, {97, 149, 43}, {106, 146, 58}, {107, 150, 34}, {106, 152, 30}, {106, 149, 48}, {101, 153, 37}, {107, 149, 41}, {122, 147, 73}, {251, 252, 234}, {255, 250, 255}, {255, 254, 251}, {255, 255, 250}, {254, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {252, 255, 249}, {252, 255, 249}, {240, 244, 229}, {242, 244, 220}, {249, 251, 250}, {249, 249, 252}, {252, 252, 252}, {203, 206, 197}, {254, 254, 251}, {254, 254, 252}, {239, 239, 237}, {252, 252, 253}, {254, 255, 253}, {255, 254, 255}, {252, 255, 245}, {200, 217, 184}, {251, 252, 253}, {251, 255, 250}, {155, 180, 115}, {105, 152, 39}, {102, 151, 45}, {104, 148, 47}, {105, 146, 37}, {115, 148, 66}, {251, 251, 251}, {255, 254, 255}, {250, 253, 243}, {106, 138, 48}, {107, 150, 36}, {105, 147, 57}, {103, 148, 58}, {101, 151, 42}, {105, 149, 46}, {104, 150, 41}, {106, 150, 45}, {104, 142, 57}, {251, 254, 229}, {248, 251, 248}, {254, 255, 255}, {254, 255, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {250, 254, 254}, {209, 213, 209}, {240, 245, 235}, {245, 252, 242}, {254, 255, 253}, {252, 253, 255}, {251, 252, 251}, {249, 250, 245}, {160, 165, 145}, {144, 149, 132}, {242, 243, 231}, {253, 254, 242}, {255, 254, 255}, {254, 255, 249}, {252, 255, 251}, {255, 254, 255}, {255, 254, 255}, {254, 255, 254}, {210, 226, 192}, {106, 150, 38}, {103, 151, 45}, {103, 149, 49}, {104, 151, 32}, {98, 143, 36}, {250, 249, 253}, {254, 253, 245}, {255, 253, 254}, {253, 253, 250}, {147, 172, 107}, {109, 147, 36}, {103, 150, 30}, {100, 148, 46}, {106, 148, 46}, {104, 151, 40}, {102, 153, 35}, {100, 154, 34}, {106, 141, 51}, {217, 235, 198}, {248, 255, 250}, {252, 253, 249}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {170, 184, 150}, {232, 241, 208}, {236, 244, 218}, {232, 243, 226}, {239, 242, 222}, {251, 253, 242}, {249, 251, 242}, {252, 254, 243}, {251, 253, 240}, {251, 253, 242}, {253, 254, 246}, {252, 253, 246}, {255, 255, 249}, {251, 255, 255}, {254, 255, 255}, {255, 253, 252}, {255, 255, 250}, {255, 255, 252}, {249, 255, 251}, {103, 144, 44}, {104, 150, 41}, {103, 148, 54}, {101, 150, 39}, {100, 150, 47}, {208, 224, 170}, {247, 247, 254}, {255, 254, 248}, {255, 252, 253}, {254, 254, 254}, {234, 242, 221}, {109, 141, 64}, {104, 145, 45}, {104, 150, 41}, {106, 148, 46}, {106, 147, 48}, {108, 147, 47}, {101, 156, 34}, {109, 149, 55}, {216, 228, 194}, {254, 254, 254}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {233, 233, 236}, {253, 251, 255}, {255, 255, 232}, {255, 253, 255}, {255, 255, 255}, {253, 255, 254}, {251, 252, 249}, {254, 254, 252}, {253, 252, 255}, {254, 254, 255}, {255, 255, 255}, {254, 255, 250}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 252}, {255, 254, 255}, {253, 254, 245}, {178, 183, 150}, {104, 147, 30}, {101, 152, 42}, {101, 150, 48}, {105, 149, 44}, {134, 166, 89}, {251, 253, 247}, {255, 251, 255}, {254, 255, 255}, {255, 255, 255}, {255, 254, 255}, {253, 254, 247}, {243, 244, 226}, {102, 134, 40}, {115, 153, 53}, {99, 145, 37}, {100, 153, 40}, {97, 153, 45}, {101, 147, 46}, {107, 140, 68}, {241, 251, 228}, {253, 255, 255}, {252, 254, 246}, {255, 255, 248}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {192, 195, 177}, {251, 251, 249}, {251, 249, 255}, {195, 199, 171}, {209, 211, 202}, {250, 252, 244}, {211, 213, 207}, {205, 207, 202}, {254, 254, 249}, {252, 253, 249}, {255, 255, 255}, {255, 254, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 251}, {255, 254, 255}, {253, 253, 254}, {253, 253, 245}, {106, 137, 61}, {102, 148, 36}, {103, 153, 33}, {106, 147, 50}, {101, 137, 53}, {252, 254, 246}, {255, 253, 255}, {253, 255, 255}, {255, 255, 251}, {255, 255, 254}, {252, 253, 249}, {252, 253, 246}, {246, 251, 250}, {245, 252, 234}, {172, 191, 136}, {111, 142, 57}, {107, 146, 44}, {107, 150, 33}, {105, 148, 28}, {101, 145, 33}, {247, 249, 226}, {251, 252, 248}, {255, 254, 255}, {255, 255, 250}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {235, 240, 217}, {247, 250, 254}, {222, 226, 198}, {249, 253, 250}, {254, 255, 244}, {247, 250, 239}, {254, 255, 250}, {254, 255, 253}, {204, 209, 196}, {161, 166, 156}, {252, 253, 251}, {250, 254, 251}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 252}, {255, 254, 255}, {255, 254, 255}, {255, 254, 255}, {243, 248, 228}, {108, 142, 58}, {102, 149, 37}, {105, 145, 47}, {101, 140, 43}, {253, 255, 242}, {255, 253, 255}, {251, 255, 255}, {255, 255, 250}, {255, 255, 250}, {255, 255, 254}, {255, 254, 255}, {255, 254, 254}, {255, 254, 255}, {255, 254, 253}, {255, 254, 252}, {250, 255, 247}, {223, 233, 210}, {175, 198, 146}, {129, 162, 96}, {127, 136, 98}, {253, 254, 249}, {255, 253, 255}, {255, 255, 249}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {150, 162, 133}, {249, 254, 227}, {164, 175, 141}, {250, 255, 253}, {221, 223, 214}, {253, 253, 250}, {254, 255, 255}, {254, 254, 255}, {232, 237, 231}, {253, 255, 249}, {234, 238, 229}, {107, 115, 97}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 253}, {255, 255, 250}, {255, 255, 251}, {254, 254, 254}, {234, 251, 219}, {94, 134, 49}, {103, 146, 34}, {103, 148, 44}, {251, 255, 238}, {255, 255, 253}, {249, 255, 255}, {255, 253, 255}, {255, 255, 252}, {255, 255, 252}, {255, 255, 255}, {255, 255, 255}, {255, 254, 255}, {255, 254, 255}, {255, 253, 253}, {254, 253, 253}, {255, 253, 255}, {251, 250, 253}, {254, 255, 255}, {251, 254, 253}, {247, 249, 243}, {255, 255, 250}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {253, 253, 254}, {245, 245, 248}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 254}, {252, 252, 248}, {249, 250, 245}, {190, 191, 176}, {183, 184, 173}, {255, 255, 251}, {252, 251, 252}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 254}, {254, 255, 255}, {247, 255, 239}, {118, 140, 89}, {109, 145, 45}, {216, 237, 186}, {253, 255, 248}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {253, 253, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 254}, {210, 211, 207}, {230, 230, 226}, {254, 255, 249}, {251, 251, 248}, {254, 254, 254}, {249, 248, 254}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 252}, {254, 255, 255}, {246, 253, 246}, {248, 255, 238}, {182, 203, 151}, {197, 209, 185}, {254, 255, 253}, {255, 254, 254}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 253}, {255, 255, 251}, {255, 255, 250}, {255, 255, 255}, {255, 255, 255}, {255, 254, 255}, {255, 254, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 252}, {254, 255, 255}, {253, 255, 255}, {253, 255, 255}, {251, 255, 249}, {254, 255, 255}, {255, 255, 255}, {255, 254, 253}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 253}, {255, 255, 251}, {255, 255, 250}, {255, 255, 255}, {255, 255, 253}, {255, 255, 252}, {255, 255, 250}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {254, 255, 255}, {255, 255, 253}, {255, 255, 252}, {255, 254, 254}, {255, 253, 255}, {255, 254, 254}, {255, 254, 254}, {255, 253, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {255, 255, 255}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}};

////////////////////////////////////////////////////////////////////////
//
// ###### #####
// # # ##### #### #### ##### ## # # # # ##### ## ##### ##### # # #####
// # # # # # # # # # # # # ## ## # # # # # # # # # # #
// ###### # # # # # # # # # # ## # ##### # # # # # # # # # #
// # ##### # # # ### ##### ###### # # # # ###### ##### # # # #####
// # # # # # # # # # # # # # # # # # # # # # # # #
// # # # #### #### # # # # # # ##### # # # # # # #### #
//
////////////////////////////////////////////////////////////////////////
void setup()
{
delay(200);

FastLED.addLeds<APA102, data, clock, BGR >(currentLED, totalLEDs);
FastLED.setBrightness(LEDBrightness);

pinMode(powerLED, OUTPUT);
digitalWrite(powerLED, ON);
startupEffect();
}

///////////////////////////////////////////////////////////////////////
//
// # # ######
// ## ## ## # # # # # ##### #### #### ##### ## # #
// # # # # # # # ## # # # # # # # # # # # # # ## ##
// # # # # # # # # # ###### # # # # # # # # # # ## #
// # # ###### # # # # # ##### # # # ### ##### ###### # #
// # # # # # # ## # # # # # # # # # # # # #
// # # # # # # # # # # #### #### # # # # # #
//
//////////////////////////////////////////////////////////////////////
void loop()
{
drawImage(30, Image, width(Image));
}


void drawImage(unsigned long time, const char pattern[][totalLEDs][3], int pictureWidth)
{
unsigned long currentTime = millis();

while (millis() < currentTime + (time * 1000))
{
for(int slice = 0; slice < pictureWidth; slice ++)
{
for(int LED = totalLEDs-1; LED > -1; LED --) // LED number
{
currentLED[LED].setRGB(pattern[slice] [LED] [redVal],
pattern[slice] [LED] [greenVal],
pattern[slice] [LED] [blueVal]);
}
FastLED.show();
delayMicroseconds(800); // How wide the image is
}
delayMicroseconds(1000); // Gap between images
}
}


I appreciate any help!
Dan
 
Hiya Dan,

Firstly I'd like to say the problem you're having isn't your fault, i'ts mine for not looking at my code well enough before adding it to my website.
When you get an error like the one you have (missing something.h) <- take note of the .h, it means you don't have a specific library installed, in this case its the "Arduino Streaming" library. (available here.
There are a few ways you can resolve this issue. The easiest way would be to follow the steps below
  • Open the arduino software
  • Click the sketch button at the top
  • Hover over "include library"
  • Click manage libraries
  • Search for "streaming"
  • Select "Arduino Streaming"
  • Click Install
Then you should be good to go.

Another way to include the library would be to;

  • Go to the link posted above and download the zip file
  • Extract the file to your Arduino libraries folder (located in documents on windows)
The streaming library changes the syntax of the serial print functions to bring them more in line with c++ (which is what i'm more used to using) google cout for more information.
I'm fairly sure the streaming library isn't actually used in the program so I'll remove it now and re upload the file to the site, thanks for pointing it out.

Also, you'll also run in to issues with the images.h file not being included. Go ahead and delete that line or re-download the file.

If you have any other questions don't hesitate to ask, if I can't answer them I'm sure someone else will.

Matt
 
Thank you!

I have downloaded and installed the streaming.h and stdlib.h, and they are both in the Arduino folder.

New error message related to startupEffect. Since you seem to be available, hoping to work through some of this:

Arduino: 1.8.3 (Windows 10), TD: 1.37, Board: "Teensy 3.2 / 3.1, Serial, 96 MHz (overclock), Faster, US English"

In file included from C:\Users\dscheib\Desktop\Dan Projects\Kavanet Download\Orbit\Orbit.ino:19:0:

C:\Users\dscheib\Documents\Arduino\libraries\FastLED/FastLED.h:17:21: note: #pragma message: FastLED version 3.001.007

# pragma message "FastLED version 3.001.007"

^

Orbit: In function 'void setup()':
Orbit:110: error: 'startupEffect' was not declared in this scope
startupEffect();

^

Multiple libraries were found for "FastLED.h"
Used: C:\Users\dscheib\Documents\Arduino\libraries\FastLED
Not used: C:\Program Files (x86)\Arduino\hardware\teensy\avr\libraries\FastLED
'startupEffect' was not declared in this scope

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
 
Hiya Dan,

The error you're getting is also due to a mistake on my part. My poi have a startup animation before the pictures are displayed, just a little something I was messing around with and decided to include.
If you go ahead and delete that line the program should compile.

Sorry for not proof reading my code better, we all know how annoying it is to be constantly getting compile errors.

Cheers

Matt
 
Hey Matt,

Thank you for all the work you put into this, and the correspondence on this! I took a leap and decided to delete that line prior to this morning (here it's 6/11, 10:32 am) and it worked!

The image converter is also SO GREAT!

I got it up and working and was playing around with switching out images and swinging them around. It's a present for my younger brother, so excited to see it working now!

I have seen a project somewhere that included an ability to switch images via IR remote or push button. I am assuming that it would change the loop and setup code, so going to try and immerse myself in it and see what happens.

Again, thank you for all the great work! HUGE thanks to Mortonkopf as well (as well as all the others in the forum that are pushing the limits continually)!

Dan
 
Hiya Dan,

Great to hear that you got it working.

I am currently working on a new version of the poi which will have a way to control the image via a remote system and hope to have it working soon.
Arduino programming can be quite daunting especially in the early stages so don't be afraid to ask for help about even the smallest things (the Arduino stack exchange is a great place for information).
Good luck and have fun :)
Matt
 
@Howsthewater
Hi Matt,
there's a video link at the end of #308,
the 2020 LEDs with 80-chained, 's already light-able!
I'm still working hard on the system,
since drawing 80 LED need much speed, SPI with DMA is needed
also my new hardward uses a momentary switch(or touch sense) to controll all the things,
(e.g. click to change picture or picture-page, double clicks to change mode,changing global whiteness/color temperature , hold to shut down.)
so many coding, please wait for my success :)

@bsktbllmn23
Dan welcome to the POV club, enjoy you flow
 
Would any these parts be compatible with any of the existing poi code

Build List:
Teensy 3.6
Apa102(sk9822) 144M
128x32 I2C OLED graphic display
Rotary Encoder - Illuminated (RGB)

•Functions and operations•
1. First click turns on device and Display
2. Scoll thru the menu
3. Pick animation With Click turning the display off turning the LEDs on
 
Build List:
Teensy 3.6
Apa102(sk9822) 144M
128x32 I2C OLED graphic display
Rotary Encoder - Illuminated (RGB)

•Functions and operations•
1. First click turns on device and Display
2. Scoll thru the menu
3. Pick animation With Click turning the display off turning the LEDs on

I remember there is some POV stick project that uses arduino mega with a I2C LED display and buttons for picture choosing,
found the link here, http://www.instructables.com/id/Arduino-Pixel-Stick/
with some edit it may work good for you.
 
Hello community,
I've rearranged some of my script (of DMASPI) so it can compile with latest Arduino 1.8.5 and Teensyduino 1.42
I am not good at making library, so I made them into examples,
This shows how to use DMASPI over apa102, and also with CRGB arrays that could use in FastLED projects.
it is possible to combine it with FastLED examples, by adding the function "DMAshow()" into your sketch and replace it over "FastLED.show()"
and I have a extra FPS design, so it keeps the program from not-going too fast.

https://github.com/Alan-NTHU/DMApa102
Tested both example with T3.6 and my apa102-2020 with 80 LEDs, works, and should work with
who downloaded the latest IDE and libraries :) .
enjoy!!


@InvisiBug Thank you, :) we're both awesome.
 
Last edited:
Hello everyone, hello Po Ting
Congratulations to all in this forum.
I have only made one project so far (6 costumes with Electroluminescent wire with 344Mhz radio remote control).
With the information from this forum, I have been able to build the following poi.
144 APA / 2020 LED on AL strip.
Teensy 3.6
IR remote control

A few pictures!

POI_01.jpgPOI_02.jpgPOI_00.jpg
Everything works pretty well. Pictures and graphics are read from the SD and displayed.
Only for fonts, the output is too slow. Hello Po Ting I've tried to build your description for faster access with me.
Unfortunately, my very little programming experience was not enough. I could not install the DMASPI with me. Would it be possible to publish your whole script? Maybe then create the faster DMASPI access to activate.
Thank you.
Gerhard
 
@gerhards
congrads, your first proj is POV with apa102-2020, and even with IR controll, cool, I think 144 LEDS might be too much for some cards,
also you'd might need to find a faster card for that.
there's no definite clues which are faster, sometimes lower classed or smaller volume gives faster results.
You'll need to try and find your source.

check out my DMApa102 example, the example can use and possible replace FastLED.show() function
https://github.com/Alan-NTHU/DMApa102

edit:
you may need to look into apa102's datasheet to know what is going on, see how it communicate with SPI, you look into with my example to see how I do the LED sequences settings.
its fully detailed in my example (I think so), you can even use bit-bang if you wish, though that's much slower.
 
Back
Top