Magic Mirror

Magic Mirror can offer validation (if you need to feel good) or motivation (if you need your butt kicked). It can tell if you are close or far away and will offer comments accordingly. Also, it knows if the lights are on or off. If they are on and you are not nearby, it will alert you to turn the lights off! It uses a bitmap image based on the Magic Mirror from Disney’s Snow White, which was created on the PC using Adobe Illustrator and Bitmap Converter and then stored as an array of hex values which are converted using the ST765 LCD library.


#include "ST7565.h"

//int ledPin =  13;    // LED connected to digital pin 13

// the LCD backlight is connected up to a pin so you can turn it on & off
#define BACKLIGHT_LED 10

// pin 9 - Serial data out (SID)
// pin 8 - Serial clock out (SCLK)
// pin 7 - Data/Command select (RS or A0)
// pin 6 - LCD reset (RST)
// pin 5 - LCD chip select (CS)
ST7565 glcd(9, 8, 7, 6, 5);

#define LOGO16_GLCD_HEIGHT 16 
#define LOGO16_GLCD_WIDTH  16 
#define numPin 6
#define maxNotes 20

const int ledPin = 13;
int numNotes = 6;
int photoCellPin = A0;
int sharpPin = A1;
int photoCell;
int prevPhotoCell;
int sharp;
int mode = 0;
int prevMode;
int buttonPin = 12;
int buttonPushCounter = 0;   // counter for the number of button presses
int buttonState = 0;         // current state of the button
int lastButtonState = 0;     // previous state of the button
unsigned long previousMillis = 0; 
long interval = 5000;
boolean helloBool = true;
boolean playSound = true;
unsigned long currentMillis;
long firstAlarm = 120000;
unsigned long alarmMillis=0;
char* happyTextFar[]={"Hey, is              that a new           outfit?              Smokin!", "Your skin's          amazing!             Have you             been moist-          urizing?"};
char* happyTextClose[]={ "Oh! You've           got such             beautiful            eyes.","You look             great! Have          you been             working              out?"};
char* grumpyTextFar[]={"Um. Maybe            you should           do some              jumping              jacks?", "That outfit          might work           in about             40 pounds."};
char* grumpyTextClose[]={ "Do you have          any paper            bags? Or             maybe a              Nixon mask?","Yeah...              No."};



//set up 6 buttons on pins 2-7
//int button[] = {2, 3, 4, 5, 6, 7};
//int buttonState[] = {0, 0, 0, 0, 0, 0};

/*
unsigned int array of emotions
for some reason tones will not take this as an int

If anyone has any thoughts or reasoning on this i'd love to know why, none the less this works well.
*/

static unsigned char __attribute__ ((progmem))  happyface [] = {

0x00, 0x54, 0xFE, 0xF0, 0xE0, 0xE0, 0xC0, 0xC0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xC0, 0xC0,

0xE0, 0xE0, 0xF0, 0xF8, 0xFC, 0x20, 0x00, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFE, 0xFE, 0xFE, 0xFF, 0xFE,

0xFE, 0xFE, 0xFF, 0xFE, 0xFE, 0xFE, 0xFE, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00,

0x00, 0x02, 0xFF, 0xC1, 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0F, 0x1F, 0x3F, 0x3F,

0x3F, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x7F, 0x3F, 0x3F,

0x1F, 0x1F, 0x0F, 0x0F, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x0F, 0xFF, 0xFF,

0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFC, 0x04, 0x47, 0x83,

0x82, 0x83, 0x02, 0x82, 0x84, 0x8C, 0x88, 0x3E, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFE, 0x34, 0x98, 0x08, 0x04, 0x04, 0x06, 0x06, 0x06, 0x06, 0x84,

0xCC, 0xDC, 0x30, 0xF8, 0xFE, 0xFF, 0xFF, 0xEB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x01, 0x03, 0x07, 0x07, 0x0F, 0x1C, 0x18, 0x38, 0x11, 0x30, 0x11, 0x10, 0x18, 0x18, 0x0C, 0x2F,

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x1E, 0x19, 0x31, 0x31,

0x63, 0x21, 0x63, 0x63, 0x71, 0x71, 0x31, 0x38, 0x1E, 0x1F, 0x0F, 0x07, 0xC7, 0xFF, 0x1F, 0x01,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0C, 0xE8, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x2F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF,

0x7F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xE0,

0xF0, 0x7C, 0x1F, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x08, 0x18, 0x38, 0xF8, 0xF8, 0xF0, 0x70, 0x60,

0xE0, 0xC0, 0xC0, 0xC1, 0xC0, 0xC0, 0xE0, 0xE0, 0x60, 0x70, 0x70, 0x70, 0xF0, 0xF0, 0xF0, 0x30,

0x30, 0x10, 0x00, 0x00, 0x00, 0xEA, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x01, 0x07, 0x0F, 0x1E, 0x1C, 0x3C, 0x38, 0x38, 0x38, 0x38, 0x38, 0x3C, 0x1C,

0x1E, 0x0F, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 

};

static unsigned char __attribute__ ((progmem))  sadface [] = {

0xB8, 0xFC, 0xFC, 0xF8, 0xF8, 0xF0, 0xF0, 0xE0, 0xE0, 0xC0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00,

0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xC0, 0xC0, 0xE0, 0xE0, 0xF0, 0xF0,

0xF0, 0xF8, 0xFC, 0xFC, 0xFE, 0xBC, 0x00, 0x17, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF,

0xFE, 0xFE, 0xFE, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x2D,

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x3F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x3F, 0x3F, 0x7F,

0x7F, 0x7F, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,

0x7F, 0xFF, 0x7F, 0x3F, 0x3F, 0x3F, 0x1F, 0x3F, 0x1F, 0x3F, 0x3F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0x09, 0x00, 0x00, 0x00, 0x00, 0x01, 0xDF, 0xFF, 0xFF, 0xF3, 0xC0, 0xF0, 0x38, 0x18,

0x1C, 0x1C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x18, 0x18, 0xF0, 0xE0, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0xF0, 0x18, 0x18, 0x1C, 0x0C, 0x0C, 0x0C, 0x0C, 0x1C, 0x18,

0x18, 0x30, 0x60, 0xC0, 0xE5, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xC0,

0x03, 0x07, 0x0F, 0x1F, 0x1E, 0x3C, 0x3C, 0x38, 0x30, 0x38, 0x30, 0x30, 0x18, 0x18, 0x1C, 0x0E,

0x0F, 0x07, 0xEB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0x03, 0x0F, 0x1F, 0x3E, 0x3C,

0x78, 0xF0, 0x70, 0xF0, 0xF0, 0xF0, 0xF0, 0x78, 0x7C, 0x7E, 0x3F, 0x3F, 0x1F, 0xCF, 0xFF, 0x1E,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x3F, 0xF8, 0xE0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x03, 0x01, 0x03, 0x03, 0x03, 0x01,

0x03, 0x07, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0xC0, 0xF0, 0x3F, 0x0F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x07, 0x7F, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x60, 0x70, 0xB8, 0x98, 0x98, 0xDC, 0xC8,

0xC8, 0xCC, 0xCC, 0xC8, 0xC8, 0xCC, 0xC8, 0xC8, 0xC8, 0xC8, 0x88, 0x80, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x70, 0x1E, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x18, 0x30, 0x60, 0xC0, 0x00, 0x00,

0x01, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01,

0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 

};

static unsigned char __attribute__ ((progmem))  youAgain [] = {

0x00, 0x06, 0x7E, 0xFE, 0xFC, 0x80, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFE, 0xFE, 0x0E, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0xFE, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7E, 0x7E, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xF0, 0xFC, 0x7E, 0x7E, 0x7E, 0xFC,

0xF8, 0xF0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xE0, 0x00, 0x80, 0xFC, 0xFF, 0x1F,

0x01, 0x00, 0x00, 0xC0, 0xF0, 0xF8, 0xFC, 0xFC, 0xFC, 0xF8, 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00,

0xF8, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x07, 0x07, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0xE0, 0xF8, 0xF8, 0xF8, 0xF8, 0xE0, 0xC0, 0xF8, 0xF8, 0x00, 0x00, 0x00, 0x80, 0xF0,

0xF8, 0xF8, 0xFC, 0xF8, 0xF8, 0xF0, 0xC0, 0x00, 0x00, 0x00, 0xF8, 0xF8, 0xF8, 0x00, 0x00, 0x00,

0xF8, 0xF8, 0xC0, 0xE0, 0xF8, 0xF8, 0xF8, 0xF8, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x07,

0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF,

0xFF, 0x3F, 0x03, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF,

0xFC, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x07, 0xFF, 0xFF,

0xE0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x07, 0x01, 0x00, 0x00, 0x01, 0x3F, 0xFF, 0xFF, 0x00,

0x00, 0x00, 0x0F, 0x8F, 0x81, 0xC0, 0xC0, 0xE0, 0xFB, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF,

0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x3F, 0x01, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFC, 0x7F, 0x1F, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x00, 0x00, 0x00,

0x00, 0x00, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF,

0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0x3F, 0x3E, 0x3E,

0x3E, 0x3E, 0x3F, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00,

0xF8, 0xFF, 0xFF, 0x00, 0x00, 0xC0, 0xFE, 0xFF, 0x07, 0x07, 0x03, 0x01, 0xE1, 0xFF, 0xFF, 0x00,

0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,

0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,

0x1F, 0x3F, 0x7E, 0x7E, 0x7E, 0x3F, 0x1F, 0x07, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x3F, 0x3F, 0x3E,

0x3E, 0x1E, 0x0F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x3F, 0x3F,

0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3F, 0x3F, 0x38, 0x00, 0x00, 0x01, 0x0F, 0x1F,

0x3F, 0x3E, 0x1E, 0x0F, 0xC7, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x1F, 0x3F, 0x7E, 0x3C, 0x3C, 0x0E,

0x0F, 0x3F, 0x3F, 0x20, 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x00, 0x00,

0x00, 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x1C, 0x7C, 0xFC, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0x7F, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x78, 0x30, 0x30, 0x2C, 0x20, 0x30, 0x78,

0x30, 0x30, 0x2C, 0x20, 0x30, 0x78, 0x30, 0x30, 0x2C, 0x20, 0x30, 0x78, 0x30, 0x30, 0x2C, 0x20,

0x30, 0x78, 0x44, 0x44, 0x2C, 

};
static unsigned char __attribute__ ((progmem))  later [] = {

0x00, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFE, 0xFE, 0xFE, 0xFE,

0xFE, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,

0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xFE,

0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,

0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,

0xFE, 0xFE, 0xFE, 0xFC, 0xF8, 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFE,

0xFE, 0xFE, 0xFE, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF,

0xFF, 0xFF, 0x1F, 0x7F, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01,

0x01, 0x01, 0x01, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,

0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,

0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x01,

0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0xC0, 0xFF, 0xFF, 0xFF, 0x7F, 0x01, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, 0xF0,

0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xE0, 0xFF, 0xFF, 0xFF, 0x7F, 0x07,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0xFF, 0xFF, 0xFF,

0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xBF, 0x80, 0x80, 0x80, 0x80, 0x80, 0x8F, 0xFF, 0xFF,

0xFF, 0xFE, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,

0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,

0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x7F, 0xFF, 0xFF,

0xFB, 0xF1, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,

0x7F, 0x7F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,

0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x0F, 0x0F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,

0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x7F, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,

0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x2C, 0x21, 0x31, 0x79, 0x31, 0x31, 0x2D, 0x21,

0x31, 0x79, 0x31, 0x31, 0x2D, 0x21, 0x31, 0x79, 0x31, 0x30, 0x2C, 0x20, 0x31, 0x79, 0x31, 0x31,

0x2C, 0x20, 0x30, 0x78, 0x30, 

};
static unsigned char __attribute__ ((progmem))  heyThere [] = {

0x00, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFE, 0xFE, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0xFE, 0xFE, 0xFE, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x00, 0x00, 0xFE,

0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0xFE, 0xFE, 0xFE, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xFF,

0xFF, 0xFF, 0x00, 0x00, 0x00, 0x80, 0xE0, 0xF8, 0xFC, 0x7C, 0x7C, 0xFC, 0xF8, 0xF0, 0xC0, 0x00,

0x00, 0x78, 0xF8, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xF8, 0x78, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xE0, 0xF8, 0x7C, 0xFC, 0xFC, 0xF8, 0xE0, 0x00, 0x00, 0x00,

0x00, 0xC0, 0xF0, 0xF8, 0xFC, 0x7C, 0xFC, 0xFC, 0xF8, 0xE0, 0x80, 0x00, 0x00, 0x00, 0xF8, 0xF8,

0xC0, 0xE0, 0xF8, 0xFC, 0x00, 0x00, 0x00, 0xE0, 0xF8, 0xF8, 0x7C, 0x7C, 0xFC, 0xF8, 0xF0, 0xC0,

0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x1F, 0x1F,

0x1F, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xE0, 0xFF, 0xFF, 0xC3, 0xC0, 0xC0, 0xC0, 0xC0,

0xC1, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0x3F, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x03, 0xFF,

0xFF, 0x00, 0x00, 0x00, 0xFC, 0xFF, 0xFF, 0xC1, 0xC0, 0xC0, 0xC0, 0xC0, 0xC7, 0xFF, 0xFF, 0x00,

0x00, 0x00, 0xFF, 0xFF, 0x0F, 0x03, 0x01, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0xC0, 0xC0,

0xC0, 0xC1, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0xFF,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC3,

0x03, 0x03, 0x03, 0x03, 0x83, 0xC3, 0xC3, 0x43, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC0, 0xFC,

0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x83, 0x03, 0x03, 0x03, 0x03,

0xC3, 0xC3, 0xC3, 0x03, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,

0xE3, 0x03, 0x03, 0x03, 0x03, 0x03, 0xC3, 0xC3, 0xC3, 0x00, 0x00, 0x00, 0x80, 0x87, 0x80, 0x00,

0x00, 0x3F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x00, 0x00,

0x00, 0x03, 0x0F, 0x1F, 0x3F, 0x3E, 0x3E, 0x3E, 0x3F, 0x0F, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00,

0x03, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F,

0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0F, 0x1F,

0x3E, 0x3E, 0x3E, 0x3F, 0x1F, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x01, 0x07, 0x1F, 0x3F, 0x3E, 0x7E, 0x3E, 0x3F, 0x1F, 0x07, 0x00, 0x00, 0x00, 0x00,

0x3F, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0xF8, 0xF8, 0xF8, 0xFF, 0x3F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x44, 0x30, 0x2C, 0x20, 0x30, 0x78, 0x30,

0x30, 0x2C, 0x20, 0x30, 0x78, 0x30, 0x30, 0x2C, 0x20, 0x30, 0x78, 0x30, 0x30, 0x2C, 0x20, 0x30,

0x78, 0x30, 0x30, 0x2C, 0x20, 

};

static unsigned char __attribute__ ((progmem))  goodLuck [] = {

0x00, 0x00, 0xC0, 0xF0, 0xF8, 0x7C, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x3C, 0xF8, 0xF0, 0xC0, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFC, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0xFC, 0xFC, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xE0, 0xE0,

0xE1, 0xE1, 0xE1, 0x00, 0x00, 0x00, 0xC0, 0xF8, 0xFE, 0x1F, 0x0F, 0x07, 0x07, 0x0F, 0x3F, 0xFC,

0xF8, 0x80, 0x00, 0x00, 0xF0, 0xFC, 0x3E, 0x0F, 0x07, 0x07, 0x07, 0x0F, 0xFE, 0xFC, 0xE0, 0x00,

0x00, 0xE0, 0xFC, 0xFE, 0x1F, 0x0F, 0x0F, 0x0F, 0x0C, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,

0xE0, 0xFC, 0xFE, 0x0F, 0x07, 0x07, 0x0F, 0x3F, 0x3E, 0x38, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x80,

0xC0, 0xF0, 0xF8, 0x3E, 0x0F, 0x03, 0x01, 0x00, 0x00, 0x07, 0x3F, 0xFF, 0xF8, 0xE0, 0xC0, 0x80,

0x80, 0x81, 0x81, 0xC1, 0xF1, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xC0, 0x80, 0x80,

0x80, 0x80, 0xE0, 0xFF, 0x7F, 0x07, 0x00, 0x00, 0x7F, 0xFF, 0xF0, 0x80, 0x80, 0x80, 0x80, 0xC0,

0xFF, 0xFF, 0x3F, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xC0, 0x80, 0x80, 0x80, 0xC0, 0xF8, 0xFF, 0xFF,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xC0, 0xC0, 0xC0,

0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xC0, 0x80, 0x80, 0x80, 0xFF, 0xFF,

0xFF, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xC0, 0x80, 0x80, 0x80, 0xE0, 0xF0, 0x70, 0x00, 0x00,

0x00, 0xFF, 0xFF, 0x0F, 0x07, 0x07, 0x3F, 0xFE, 0xF8, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x01, 0x03, 0x07, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,

0x01, 0x03, 0x07, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07,

0x07, 0x07, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x07, 0x03,

0x01, 0x01, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03,

0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x07, 0x07,

0x03, 0x01, 0x01, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x07, 0x07, 0x03,

0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x02, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x07, 0x3F, 0xF8, 0x80, 0x80, 0xF0, 0x3F, 0x07, 0x00, 0xC0, 0xE0, 0x60, 0x70,

0x60, 0xC0, 0x00, 0x00, 0x00, 0xE0, 0xE0, 0x00, 0x00, 0x00, 0xE0, 0xE0, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0xE0, 0xE0, 0xC0, 0x60, 0x60, 0xE0, 0x80, 0x00, 0x00, 0xC0, 0xE0, 0x60, 0x60, 0x60,

0xC0, 0x00, 0x00, 0x80, 0xE0, 0x60, 0x60, 0x60, 0xC0, 0x00, 0x00, 0x00, 0xC0, 0xE0, 0x60, 0x60,

0xC0, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE7, 0x00, 0x00, 0x60, 0xFE, 0xFE, 0x60,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00,

0x7F, 0xC0, 0x80, 0x80, 0xC0, 0xFF, 0x3F, 0x00, 0x00, 0xFF, 0xFF, 0x80, 0x80, 0xC0, 0xFF, 0xFF,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x7F,

0xCC, 0x8C, 0x8C, 0x8C, 0xCF, 0x0F, 0x00, 0x7F, 0xED, 0x8C, 0x8C, 0x8C, 0xCF, 0x0F, 0x00, 0x3F,

0xFF, 0xC0, 0x80, 0x80, 0xE1, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00,

0x00, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA4, 0xA4, 0xA4, 0x00, 0xA4, 0xA4, 0xA4, 0x00,

0xA4, 0xA4, 0xA4, 0x00, 0xA4, 0xA4, 0xA4, 0x00, 0xA8, 0xA8, 0xA8, 0x00, 0xA8, 0xA8, 0xA9, 0x01,

0xA8, 0xA8, 0xA8, 0x00, 0xA8, 

};
static unsigned char __attribute__ ((progmem))  lightOff [] = {

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x3C, 0x3C, 0x3C, 0xFC, 0xFC, 0xFC, 0x3C, 0x3C,

0x3C, 0x3C, 0x3C, 0x00, 0x00, 0xFC, 0xFC, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,

0xFC, 0xFC, 0x00, 0x00, 0x00, 0xFC, 0xFC, 0xFC, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0xFC, 0xF8,

0xF0, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFC, 0xFC, 0xF8, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,

0xFC, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xF8, 0xFC, 0x3E,

0x3E, 0x1E, 0x1E, 0x1E, 0x3E, 0xFC, 0xF8, 0xE0, 0x80, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFC, 0x3C,

0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x00, 0x00, 0x00, 0xFC, 0xFC, 0xFC, 0x3C, 0x3C, 0x3C,

0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,

0xFF, 0xFF, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xE0, 0xF0, 0x7F, 0x3F, 0x03, 0x00, 0x00, 0x00,

0xFF, 0xFF, 0xFF, 0x03, 0x1F, 0xFE, 0xF0, 0x80, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x0F, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0,

0xE0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xC0, 0x00,

0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x03, 0x03,

0x03, 0x03, 0x03, 0x07, 0xFF, 0xFE, 0xFC, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0x07, 0x3F, 0xFC, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x3F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xF8, 0xFF, 0x7F, 0x00,

0x00, 0x00, 0x00, 0xFF, 0xFF, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,

0xFF, 0xFF, 0xFF, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x1F, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0F, 0x1F, 0x1F, 0x1E, 0x1E, 0x1E, 0x1F, 0x1F,

0x0F, 0x03, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F,

0x1F, 0x1F, 0x10, 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0F,

0x1F, 0x1F, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0F,

0x1F, 0x1E, 0x1E, 0x1E, 0x1E, 0x1F, 0x0F, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x1F,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x1F, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x1F, 0x1F, 0x1F,

0x1F, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F,

0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF,

0x00, 0x00, 0x00, 0x00, 0xE0, 0xF8, 0xFC, 0x3E, 0x1F, 0x0F, 0x0F, 0x0F, 0x1F, 0x3E, 0xFC, 0xF8,

0xE0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,

0xFF, 0x00, 0x00, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F,

0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78,

0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78,

0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0xFF, 0xFF,

0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xE0, 0xE0, 0xE1, 0xE1, 0xE1, 0x00, 0x00, 0x00, 0x00,

0xFF, 0xFF, 0xFF, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF,

0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00,

0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,

0x80, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x0F, 0x7F, 0xFF, 0xF0, 0xC0, 0x80, 0x00,

0x00, 0x01, 0x81, 0xC1, 0xF9, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,

0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x8F, 0x80, 0x00, 0x20, 0x20, 0x00,

0xE0, 0x40, 0x4F, 0x0F, 0xEF, 0x80, 0x80, 0x00, 0xA0, 0x80, 0x80, 0x00, 0x8F, 0x8F, 0x8F, 0x00,

0x80, 0x80, 0x80, 0x00, 0x80, 0x80, 0x8F, 0x0F, 0x80, 0x80, 0x80, 0x00, 0x8F, 0x8F, 0x8F, 0x0F,

0x8F, 0x8F, 0x8F, 0x0F, 0x8F, 0x8F, 0x8F, 0x0F, 0x80, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x00,

0x60, 0x6F, 0x6F, 0x0F, 0x6F, 0x6F, 0x6F, 0x0F, 0x6F, 0x6F, 0x6F, 0x0F, 0x40, 0x60, 0x6F, 0x0F,

0x4F, 0x40, 0x40, 0x00, 0x20, 0x20, 0x21, 0x07, 0x47, 

};



// Some stuff to check if we are playing or not
boolean bPlaying = false;
boolean bPlayNow = false;
// a bitmap of a 16x16 fruit icon



// The setup() method runs once, when the sketch starts
void setup()   {                
  Serial.begin(9600);

  Serial.print(freeRam());
  
  // turn on backlight
  pinMode(BACKLIGHT_LED, OUTPUT);
  pinMode(photoCellPin, INPUT);
  pinMode(sharpPin, INPUT);
  pinMode(buttonPin, INPUT);
  //digitalWrite(BACKLIGHT_LED, HIGH);

  // initialize and set the contrast to 0x18
  glcd.begin(0x18);

  glcd.display(); // show splashscreen
  delay(100);
  glcd.clear();
  glcd.display(); // show splashscreen
  delay(100);
  glcd.clear();
  //whaWha();
  
  
}

void loop()                     
{
  
 
  sharp = analogRead(sharpPin);
  photoCell = analogRead(photoCellPin);
  delay(100);
  //Serial.print("PHOTOCELL: ");Serial.println(photoCell);
  if(photoCell > 500 && helloBool ==true){
    hello();
    
    Serial.println("HELLO");
    
    //116,50
  }else if(photoCell < 500 && helloBool==false){
    goodbye();
    
    Serial.println("GOODBYE");
  }
  //Dark <= 500
  //NoOne <= 50
  //Close > 120
  //Serial.print("SHARP: ");Serial.println(sharp);
  if(photoCell>500){
    if(mode ==0){
      doHappyStuff();
    }else if(mode==1){
      doGrumpyStuff();
    }
  }else{
    
    
  }
  currentMillis = millis();
  if(playSound == false && currentMillis - previousMillis > interval ){
    //Serial.println("RESET");
   playSound = true; 
  }
  if(currentMillis-alarmMillis > firstAlarm){
    alarm();
    prevMode = mode;
    mode ==2;
  }
  buttonState = digitalRead(buttonPin);

  // compare the buttonState to its previous state
  if (buttonState != lastButtonState) {
    // if the state has changed, increment the counter
    previousMillis = currentMillis;
     playSound = true;
    if (buttonState == HIGH) {
      buttonPushCounter++;
    } 
    else {
      //Serial.println("off"); 
    }
  }
  lastButtonState = buttonState;
  
  if (buttonPushCounter % 2 == 0) {
    digitalWrite(ledPin, HIGH);
  } else {
   digitalWrite(ledPin, LOW);
  }
  mode = buttonPushCounter % 2;
  
  //glcd.drawbitmap(0, 0, logo16_glcd_bmp2, 115, 56, BLACK);
  //glcd.display();
 // prevPhotoCell = analogRead(photoCellPin);
}

void hello(){
  helloBool = false;
//  tone(2,700,100);
//  delay(250);
//  noTone(2);
//  tone(2,700,400);
//  delay(400);
//  noTone(2);
//delay(250);
  tone(2,300,200);
  delay(400);
  int note1 = 400;
  for(int i=0;i<50;i++){
    

      // play the pitch:
      tone(2, note1, 10);
      delay(5);
      note1+=10;
  }
  if(mode ==0){
      digitalWrite(BACKLIGHT_LED, HIGH);
      glcd.clear();
      glcd.drawbitmap(6,7, heyThere, 116, 50, BLACK);
      glcd.display();
    }else{
      digitalWrite(BACKLIGHT_LED, HIGH);
      glcd.clear();
      glcd.drawbitmap(6,7, youAgain, 116, 50, BLACK);
      glcd.display();
    }


  alarmMillis = currentMillis;
}
void goodbye(){
  helloBool = true;
//  delay(1000);
//  tone(2,700,500);
//  delay(250);
//  noTone(2);
//  tone(2,400,200);
//  delay(1000);
//  noTone(2);
//  delay(1000);
tone(2,300,200);
  delay(400);
  int note1 = 300;
  for(int i=0;i<50;i++){
    

      // play the pitch:
      tone(2, note1, 10);
      delay(5);
      note1-=2;
  }
  if(mode ==0){
      glcd.clear();
      glcd.drawbitmap(6,7, later, 116, 50, BLACK);
      glcd.display();
      delay(2000);
    digitalWrite(BACKLIGHT_LED, LOW);
    glcd.display(); // show splashscreen
  //delay(100);
  glcd.clear();
  glcd.display(); // show splashscreen
  //delay(100);
  glcd.clear();
    }else{
      glcd.clear();
      glcd.drawbitmap(6,7, goodLuck, 116, 50, BLACK);
      glcd.display();
      delay(2000);
    digitalWrite(BACKLIGHT_LED, LOW);
     glcd.display(); // show splashscreen
  //delay(100);
  glcd.clear();
  glcd.display(); // show splashscreen
  //delay(100);
  glcd.clear();
    }
}

void alarm(){
  digitalWrite(BACKLIGHT_LED, HIGH);
  glcd.clear();
  glcd.drawbitmap(3,3, lightOff, 121, 61, BLACK);
  glcd.display();
  int note1 = 500;
   for(int i=0;i<50;i++){
    

      // play the pitch:
      tone(2, note1, 10);
      delay(5);
      note1+=2;
  }
  for(int i=0;i<50;i++){
    

      // play the pitch:
      tone(2, note1, 10);
      delay(5);
      note1-=2;
  }
  if(photoCell<500){
    mode = prevMode;
    alarmMillis = currentMillis;
  }
  digitalWrite(BACKLIGHT_LED, LOW);
  //123,61
}

void doHappyStuff(){
  if(playSound==true){
    int randomNum = random(0,2);
    if(sharp>160){ 
      //Serial.println("FROM CLOSE");
      //playMelody(random(numNotes-1));
      
      playSound = false;
      previousMillis = currentMillis;
      glcd.clear();
      glcd.drawstring(58, 1, happyTextClose[randomNum]);
      glcd.display();
      glcd.drawbitmap(0,0, happyface, 55, 64, BLACK);
      glcd.display();
      if(randomNum ==0){
        whistle();
      }else{
        badToTheBone();
      }
      alarmMillis = currentMillis;
    }else if(sharp<160 && sharp>90){
      Serial.println("FROM FAR");
      //int randomNum = random(0,2);
      //playMelody(random(numNotes-1));
      
      playSound = false;
      previousMillis = currentMillis;
      glcd.clear();
      glcd.drawstring(58, 1, happyTextFar[randomNum]);
      glcd.display();
      glcd.drawbitmap(0,0, happyface, 55, 64, BLACK);
      glcd.display();
      if(randomNum ==0){
        whistle();
      }else{
        badToTheBone();
      }
      alarmMillis = currentMillis;
    }
    
  }
}

void doGrumpyStuff(){
  if(playSound==true){
    int randomNum = random(0,2);
    if(sharp>160){ 
      Serial.println("FROM CLOSE");
      //playMelody(random(numNotes-1));
      
      playSound = false;
      previousMillis = currentMillis;
      glcd.clear();
      glcd.drawstring(58, 1, grumpyTextClose[randomNum]);
      glcd.display();
      glcd.drawbitmap(0,0, sadface, 55, 64, BLACK);
      glcd.display();
      if(randomNum ==0){
        whaWha();
      }else{
        buzzer();
      }
      alarmMillis = currentMillis;
    }else if(sharp<160 && sharp>90){
      Serial.println("FROM FAR");
      //int randomNum = random(0,2);
      //playMelody(random(numNotes-1));
      
      playSound = false;
      previousMillis = currentMillis;
      glcd.clear();
      glcd.drawstring(58, 1, grumpyTextFar[randomNum]);
      glcd.display();
      glcd.drawbitmap(0,0, sadface, 55, 64, BLACK);
      glcd.display();
      if(randomNum ==0){
        whaWha();
      }else{
        buzzer();
      }
      alarmMillis = currentMillis;
    }
    
  }
}
void badToTheBone(){
      tone(2,110,300);
      delay(300);
      tone(2,165,300);
      delay(300);
      tone(2,110,300);
      delay(300);
      tone(2,147,300);
      delay(300);
      tone(2,110,300);
      delay(300);
}
void whaWha(){
      //int wahTone=139;
      tone(2,131,400);
      delay(500);
      tone(2,123,500);
      delay(600);
      tone(2,117,600);
      delay(700);
      tone(2,110,800);
      delay(1600);
//      tone(2,110,300);
//      delay(300);
}
void whistle(){
 int note1 = 400;
      for(int i=0;i<50;i++){
    

          // play the pitch:
          tone(2, note1, 10);
          delay(5);
          note1+=15;
      }
      note1=400;
      delay(200);
      for(int j=0;j<50;j++){
        
    
          // play the pitch:
          tone(2, note1, 10);
          delay(5);
          note1+=10;
      }
      for(int k=0;k<50;k++){
        
    
          // play the pitch:
          tone(2, note1, 10);
          delay(5);
          note1-=10;
      } 
}

void buzzer(){
  tone(2, 500, 1000);
  delay(500);
}


// this handy function will return the number of bytes currently free in RAM, great for debugging!   
int freeRam(void)
{
  extern int  __bss_end; 
  extern int  *__brkval; 
  int free_memory; 
  if((int)__brkval == 0) {
    free_memory = ((int)&free_memory) - ((int)&__bss_end); 
  }
  else {
    free_memory = ((int)&free_memory) - ((int)__brkval); 
  }
  return free_memory; 
} 

/*
char* myStrings[]={"This is string 1", "This is string 2", "This is string 3",
"This is string 4", "This is string 5","This is string 6"};

void setup(){
Serial.begin(9600);
}

void loop(){
for (int i = 0; i < 6; i++){
   Serial.println(myStrings[i]);
   delay(500);
   }
}
 glcd.drawstring(58, 1, "You look             great! Have          you been             working              out?");
   glcd.display();
   glcd.drawbitmap(0,0, happyface, 55, 64, BLACK);
    glcd.display();
    delay(2000);
   glcd.clear();
    
    
    glcd.drawstring(58, 2, "Hey, is              that a new           outfit?              Smokin!");
    glcd.display();
    glcd.drawbitmap(0,0, happyface, 55, 64, BLACK);
    glcd.display();
    delay(2000);
   glcd.clear();
    
    glcd.drawstring(58, 1, "Your skin's          amazing!             Have you             been moist-          urizing?");
    glcd.display();
    glcd.drawbitmap(0,0, happyface, 55, 64, BLACK);
    glcd.display();
    delay(2000);
    glcd.clear();
    
    glcd.drawstring(58, 1, "Oh! You've           got such             beautiful            eyes.");
    glcd.display();
    glcd.drawbitmap(0,0, happyface, 55, 64, BLACK);
    glcd.display();
    delay(2000);
    glcd.clear();
    
    //d,h,d,g
    //c,b,bb,a



*/