Header Ads Widget

How to Make a Smart Plant with ESP8266, Blynk, Moisture Sensor, DHT11 Sensor, and OLED Display to Keep Your Plants Happy 🌱🌞

 if you're a plant lover, you know how important it is to keep your plants happy and healthy. However, sometimes it's difficult to know exactly what your plants need, especially when it comes to watering. That's where a smart plant system comes in! In this article, we'll show you how to create your own smart plant system using ESP8266, Blynk, a moisture sensor, a DHT11 sensor, and an OLED display.


Step 1: Gather Your Materials

To make your smart plant system, you'll need the following materials:

QURTAZ COMPONENTS :

ESP8266 module :     BUY NOW

Blynk app (available on the App Store and Google Play)

Moisture sensor : BUY NOW

DHT11 sensor :  BUY NOW

OLED display :  BUY NOW 

Breadboard :  BUY NOW

Jumper wires : BUY NOW

AMAZON :

ESP8266 module :     BUY NOW

Blynk app (available on the App Store and Google Play)

Moisture sensor : BUY NOW

DHT11 sensor :  BUY NOW

OLED display :  BUY NOW 

Breadboard :  BUY NOW

Jumper wires : BUY NOW

Step 2: Connect the Components

First, connect the ESP8266 module to the breadboard using jumper wires. 


Download circuit


Step 3: Set Up Blynk


Download the Blynk app on your smartphone and create a new project. Choose the ESP8266 as your hardware and connect it to your Wi-Fi network. Then, add a gauge widget to your project and set it up to display the moisture sensor's data.


Step 4: Upload the Code

Copy and paste the following code into the Arduino IDE and upload it to your ESP8266 module:

Download code

#define BLYNK_TEMPLATE_ID "  "

#define BLYNK_DEVICE_NAME "  "

#define BLYNK_AUTH_TOKEN " "


#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

#include <Wire.h>

#include <SPI.h>

#include <Adafruit_GFX.h>

#include <Adafruit_SSD1306.h>

#include <DHT.h>


#define SCREEN_WIDTH 128

#define SCREEN_HEIGHT 64


Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

int mositure_sensor = A0;

int mdata;

int mlow = 935;

int mhigh = 230;

int p;


char auth[] = BLYNK_AUTH_TOKEN;

char ssid[] = "wifi name";      // type your wifi name

char pass[] = " wifi password";  // type your wifi password


#define DHTPIN 14       // Mention the digital pin where you connected

#define DHTTYPE DHT11  // DHT 11

DHT dht(DHTPIN, DHTTYPE);

BlynkTimer timer;



// oled display emoji bit map


static const unsigned char sad_last[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xf0, 0xff, 0xff, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xc0, 0xff, 0xff, 0x03, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x07, 0xff, 0xff, 0xe1, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfe, 0x1f, 0xff, 0xff, 0xf0, 0x7f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfc, 0x3f, 0xff, 0xff, 0xfc, 0x3f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfc, 0x7f, 0xff, 0xff, 0xfe, 0x3f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0xfc, 0x7f, 0xfe, 0x3f, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf9, 0xf8, 0x3f, 0xf8, 0x1f, 0x9f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x1f, 0xf8, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x1f, 0xf0, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x07, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x07, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x1f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x1f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x3f, 0xf8, 0x1f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xfc, 0x7f, 0xfe, 0x3f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0x81, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0x80, 0xfc, 0x3f, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x08, 0xf0, 0x0f, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x18, 0xc0, 0x03, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xfe, 0x18, 0x00, 0x01, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfe, 0x1c, 0x00, 0x00, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xfe, 0x3c, 0x00, 0x00, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xfc, 0x3e, 0x07, 0xe0, 0x7f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7c, 0x7e, 0x3f, 0xfe, 0x7f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x78, 0x7e, 0x1f, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x38, 0x7f, 0x1f, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x18, 0xff, 0x0f, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0xff, 0x8f, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0xff, 0x8f, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0x87, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x87, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0x87, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0x8f, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x8f, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0x0f, 0xfe, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1c, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char sad_second[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x3f, 0xfc, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0x81, 0xff, 0xff, 0xc1, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfe, 0x00, 0x7f, 0xff, 0x00, 0x7f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x7f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfc, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfc, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x9f, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0x81, 0xff, 0xff, 0x80, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe7, 0xff, 0xff, 0xe7, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x9f, 0xff, 0xff, 0xe0, 0x07, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0x80, 0x00, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xfe, 0x00, 0x00, 0x7f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xf8, 0x00, 0x00, 0x1f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xe0, 0x07, 0xe0, 0x07, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xc0, 0x7f, 0xfe, 0x03, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xc1, 0xff, 0xff, 0x83, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0x87, 0xff, 0xff, 0xe1, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x9f, 0xff, 0xff, 0xf9, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x03, 0xff, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x3f, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char middle[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x0f, 0xf0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

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

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe3, 0xff, 0xff, 0xcf, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x87, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x03, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x03, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x87, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf7, 0xff, 0xff, 0xcf, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xc0, 0x00, 0x00, 0x03, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x1f, 0xf8, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char smile_first[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xfc, 0xff, 0xff, 0x7f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xf8, 0x7f, 0xfc, 0x1f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xf0, 0x3f, 0xfc, 0x1f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xf0, 0x3f, 0xf8, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xe0, 0x1f, 0xf8, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xe0, 0x1f, 0xf0, 0x0f, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe0, 0x1f, 0xf8, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x3f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x3f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x3f, 0xfc, 0x1f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x7f, 0xfe, 0x3f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x00, 0xff, 0xff, 0x00, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x80, 0x00, 0x00, 0x01, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xc0, 0x00, 0x00, 0x03, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xe0, 0x00, 0x00, 0x07, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xf8, 0x00, 0x00, 0x1f, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xfe, 0x00, 0x00, 0x7f, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0x80, 0x01, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xf8, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char smile_second[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x07, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xff, 0xf8, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xf0, 0x7f, 0xfe, 0x0f, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x7f, 0xfe, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x3f, 0xfc, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x3f, 0xfc, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x7f, 0xfe, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x7f, 0xfe, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0x3f, 0xff, 0xff, 0xfc, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfe, 0x03, 0xff, 0xff, 0xc0, 0x7f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x80, 0x3f, 0xfc, 0x01, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xc0, 0x03, 0xc0, 0x03, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xf0, 0x00, 0x00, 0x0f, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xf8, 0x00, 0x00, 0x1f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xfe, 0x00, 0x00, 0x7f, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0x80, 0x01, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xfc, 0x3f, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xff, 0xf8, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x07, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};




/*BLYNK_WRITE(V0) {

  int led_value = param.asInt();

  digitalWrite(my_led, led_value);

  Serial.println(led_value);

}

*/

void sendSensor() {

  float humidity = dht.readHumidity();

  float temperature = dht.readTemperature();  // or dht.readTemperature(true) for Fahrenheit

  Blynk.virtualWrite(V1, humidity);

  Blynk.virtualWrite(V2, temperature);

  Serial.print("Temperature : ");

  Serial.print(temperature);

  Serial.print("    Humidity : ");

  Serial.println(humidity);

}

void ldrdata() {

  int val= analogRead(mositure_sensor);

  Serial.print("value: ");

  Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  Blynk.virtualWrite(V0, p);

  Serial.print("moisture sensor : ");

  Serial.println(p);

}


/*void display_oled(){

   int val= analogRead(mositure_sensor);

  //Serial.print("value: ");

 // Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  if (p > 80) {

    Serial.println("above 80%");

    display.drawBitmap(0, 0, smile_first, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 60 && p < 80) {

    Serial.println("p>=60 && p<=80");

    display.drawBitmap(0, 0, smile_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 50 && p < 60) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, middle, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 25 && p < 50) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, sad_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p >= 0 && p < 25) {

    Serial.println("p>40");

    display.drawBitmap(0, 0, sad_last, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }



}*/



void setup() {

  Serial.begin(115200);

  Blynk.begin(auth, ssid, pass);

  dht.begin();

  pinMode(mositure_sensor, INPUT);

  timer.setInterval(2500L, sendSensor);

  timer.setInterval(2500L, ldrdata);


if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {

    Serial.println(F("SSD1306 allocation failed"));

    for (;;);

  }

  delay(2000);  // Pause for 2 seconds


  // Clear the buffer.

  display.clearDisplay();




}


void loop() {

  

   int val= analogRead(mositure_sensor);

  //Serial.print("value: ");

 // Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  if (p > 80) {

    Serial.println("above 80%");

    display.drawBitmap(0, 0, smile_first, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 60 && p < 80) {

    Serial.println("p>=60 && p<=80");

    display.drawBitmap(0, 0, smile_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 50 && p < 60) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, middle, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 25 && p < 50) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, sad_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p >= 0 && p < 25) {

    Serial.println("p>40");

    display.drawBitmap(0, 0, sad_last, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }


Blynk.run();

  timer.run();

}





#define BLYNK_TEMPLATE_ID "TMPLYXIkSu9_"

#define BLYNK_DEVICE_NAME "SMART PLANT"

#define BLYNK_AUTH_TOKEN "jV0oAE0yuLMEDtb1RYqas6uXPsATu_YQ"


#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

#include <Wire.h>

#include <SPI.h>

#include <Adafruit_GFX.h>

#include <Adafruit_SSD1306.h>

#include <DHT.h>


#define SCREEN_WIDTH 128

#define SCREEN_HEIGHT 64


Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

int mositure_sensor = A0;

int mdata;

int mlow = 935;

int mhigh = 230;

int p;


char auth[] = BLYNK_AUTH_TOKEN;

char ssid[] = "mewt";      // type your wifi name

char pass[] = "Babu@460";  // type your wifi password


#define DHTPIN 14       // Mention the digital pin where you connected

#define DHTTYPE DHT11  // DHT 11

DHT dht(DHTPIN, DHTTYPE);

BlynkTimer timer;



// oled display emoji bit map


static const unsigned char sad_last[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xf0, 0xff, 0xff, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xc0, 0xff, 0xff, 0x03, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x07, 0xff, 0xff, 0xe1, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfe, 0x1f, 0xff, 0xff, 0xf0, 0x7f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfc, 0x3f, 0xff, 0xff, 0xfc, 0x3f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfc, 0x7f, 0xff, 0xff, 0xfe, 0x3f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0xfc, 0x7f, 0xfe, 0x3f, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf9, 0xf8, 0x3f, 0xf8, 0x1f, 0x9f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x1f, 0xf8, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x1f, 0xf0, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x07, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x07, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x1f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x1f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x3f, 0xf8, 0x1f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xfc, 0x7f, 0xfe, 0x3f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0x81, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0x80, 0xfc, 0x3f, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x08, 0xf0, 0x0f, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x18, 0xc0, 0x03, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xfe, 0x18, 0x00, 0x01, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfe, 0x1c, 0x00, 0x00, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xfe, 0x3c, 0x00, 0x00, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xfc, 0x3e, 0x07, 0xe0, 0x7f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7c, 0x7e, 0x3f, 0xfe, 0x7f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x78, 0x7e, 0x1f, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x38, 0x7f, 0x1f, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x18, 0xff, 0x0f, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0xff, 0x8f, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0xff, 0x8f, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0x87, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x87, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0x87, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0x8f, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x8f, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0x0f, 0xfe, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1c, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char sad_second[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x3f, 0xfc, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0x81, 0xff, 0xff, 0xc1, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfe, 0x00, 0x7f, 0xff, 0x00, 0x7f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x7f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfc, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfc, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x9f, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0x81, 0xff, 0xff, 0x80, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe7, 0xff, 0xff, 0xe7, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x9f, 0xff, 0xff, 0xe0, 0x07, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0x80, 0x00, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xfe, 0x00, 0x00, 0x7f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xf8, 0x00, 0x00, 0x1f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xe0, 0x07, 0xe0, 0x07, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xc0, 0x7f, 0xfe, 0x03, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xc1, 0xff, 0xff, 0x83, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0x87, 0xff, 0xff, 0xe1, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x9f, 0xff, 0xff, 0xf9, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x03, 0xff, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x3f, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char middle[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x0f, 0xf0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

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

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe3, 0xff, 0xff, 0xcf, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x87, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x03, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x03, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x87, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf7, 0xff, 0xff, 0xcf, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xc0, 0x00, 0x00, 0x03, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x1f, 0xf8, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char smile_first[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xfc, 0xff, 0xff, 0x7f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xf8, 0x7f, 0xfc, 0x1f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xf0, 0x3f, 0xfc, 0x1f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xf0, 0x3f, 0xf8, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xe0, 0x1f, 0xf8, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xe0, 0x1f, 0xf0, 0x0f, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe0, 0x1f, 0xf8, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x3f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x3f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x3f, 0xfc, 0x1f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x7f, 0xfe, 0x3f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x00, 0xff, 0xff, 0x00, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x80, 0x00, 0x00, 0x01, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xc0, 0x00, 0x00, 0x03, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xe0, 0x00, 0x00, 0x07, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xf8, 0x00, 0x00, 0x1f, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xfe, 0x00, 0x00, 0x7f, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0x80, 0x01, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xf8, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char smile_second[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x07, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xff, 0xf8, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xf0, 0x7f, 0xfe, 0x0f, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x7f, 0xfe, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x3f, 0xfc, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x3f, 0xfc, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x7f, 0xfe, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x7f, 0xfe, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0x3f, 0xff, 0xff, 0xfc, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfe, 0x03, 0xff, 0xff, 0xc0, 0x7f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x80, 0x3f, 0xfc, 0x01, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xc0, 0x03, 0xc0, 0x03, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xf0, 0x00, 0x00, 0x0f, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xf8, 0x00, 0x00, 0x1f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xfe, 0x00, 0x00, 0x7f, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0x80, 0x01, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xfc, 0x3f, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xff, 0xf8, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x07, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};




/*BLYNK_WRITE(V0) {

  int led_value = param.asInt();

  digitalWrite(my_led, led_value);

  Serial.println(led_value);

}

*/

void sendSensor() {

  float humidity = dht.readHumidity();

  float temperature = dht.readTemperature();  // or dht.readTemperature(true) for Fahrenheit

  Blynk.virtualWrite(V1, humidity);

  Blynk.virtualWrite(V2, temperature);

  Serial.print("Temperature : ");

  Serial.print(temperature);

  Serial.print("    Humidity : ");

  Serial.println(humidity);

}

void ldrdata() {

  int val= analogRead(mositure_sensor);

  Serial.print("value: ");

  Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  Blynk.virtualWrite(V0, p);

  Serial.print("moisture sensor : ");

  Serial.println(p);

}


/*void display_oled(){

   int val= analogRead(mositure_sensor);

  //Serial.print("value: ");

 // Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  if (p > 80) {

    Serial.println("above 80%");

    display.drawBitmap(0, 0, smile_first, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 60 && p < 80) {

    Serial.println("p>=60 && p<=80");

    display.drawBitmap(0, 0, smile_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 50 && p < 60) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, middle, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 25 && p < 50) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, sad_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p >= 0 && p < 25) {

    Serial.println("p>40");

    display.drawBitmap(0, 0, sad_last, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }



}*/



void setup() {

  Serial.begin(115200);

  Blynk.begin(auth, ssid, pass);

  dht.begin();

  pinMode(mositure_sensor, INPUT);

  timer.setInterval(2500L, sendSensor);

  timer.setInterval(2500L, ldrdata);


if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {

    Serial.println(F("SSD1306 allocation failed"));

    for (;;);

  }

  delay(2000);  // Pause for 2 seconds


  // Clear the buffer.

  display.clearDisplay();




}


void loop() {

  

   int val= analogRead(mositure_sensor);

  //Serial.print("value: ");

 // Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  if (p > 80) {

    Serial.println("above 80%");

    display.drawBitmap(0, 0, smile_first, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 60 && p < 80) {

    Serial.println("p>=60 && p<=80");

    display.drawBitmap(0, 0, smile_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 50 && p < 60) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, middle, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 25 && p < 50) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, sad_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p >= 0 && p < 25) {

    Serial.println("p>40");

    display.drawBitmap(0, 0, sad_last, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }


Blynk.run();

  timer.run();

}





#define BLYNK_TEMPLATE_ID "TMPLYXIkSu9_"

#define BLYNK_DEVICE_NAME "SMART PLANT"

#define BLYNK_AUTH_TOKEN "jV0oAE0yuLMEDtb1RYqas6uXPsATu_YQ"


#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

#include <Wire.h>

#include <SPI.h>

#include <Adafruit_GFX.h>

#include <Adafruit_SSD1306.h>

#include <DHT.h>


#define SCREEN_WIDTH 128

#define SCREEN_HEIGHT 64


Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);

int mositure_sensor = A0;

int mdata;

int mlow = 935;

int mhigh = 230;

int p;


char auth[] = BLYNK_AUTH_TOKEN;

char ssid[] = "mewt";      // type your wifi name

char pass[] = "Babu@460";  // type your wifi password


#define DHTPIN 14       // Mention the digital pin where you connected

#define DHTTYPE DHT11  // DHT 11

DHT dht(DHTPIN, DHTTYPE);

BlynkTimer timer;



// oled display emoji bit map


static const unsigned char sad_last[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xf0, 0xff, 0xff, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xc0, 0xff, 0xff, 0x03, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x07, 0xff, 0xff, 0xe1, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfe, 0x1f, 0xff, 0xff, 0xf0, 0x7f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfc, 0x3f, 0xff, 0xff, 0xfc, 0x3f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfc, 0x7f, 0xff, 0xff, 0xfe, 0x3f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0xfc, 0x7f, 0xfe, 0x3f, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf9, 0xf8, 0x3f, 0xf8, 0x1f, 0x9f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x1f, 0xf8, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x1f, 0xf0, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x07, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x07, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x0f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x1f, 0xf0, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x1f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x3f, 0xf8, 0x1f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xfc, 0x7f, 0xfe, 0x3f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0x81, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0x80, 0xfc, 0x3f, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x08, 0xf0, 0x0f, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x18, 0xc0, 0x03, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xfe, 0x18, 0x00, 0x01, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfe, 0x1c, 0x00, 0x00, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xfe, 0x3c, 0x00, 0x00, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xfc, 0x3e, 0x07, 0xe0, 0x7f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7c, 0x7e, 0x3f, 0xfe, 0x7f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x78, 0x7e, 0x1f, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x38, 0x7f, 0x1f, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x18, 0xff, 0x0f, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0xff, 0x8f, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0xff, 0x8f, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0x87, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x87, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0x87, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0x8f, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x8f, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0x0f, 0xfe, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1c, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char sad_second[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x3f, 0xfc, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0x81, 0xff, 0xff, 0xc1, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfe, 0x00, 0x7f, 0xff, 0x00, 0x7f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x7f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfc, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfc, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x3f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x9f, 0xfe, 0x00, 0x7f, 0xfe, 0x00, 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0x81, 0xff, 0xff, 0x80, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe7, 0xff, 0xff, 0xe7, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x9f, 0xff, 0xff, 0xe0, 0x07, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0x80, 0x00, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xfe, 0x00, 0x00, 0x7f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xf8, 0x00, 0x00, 0x1f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xe0, 0x07, 0xe0, 0x07, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xc0, 0x7f, 0xfe, 0x03, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xc1, 0xff, 0xff, 0x83, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0x87, 0xff, 0xff, 0xe1, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x9f, 0xff, 0xff, 0xf9, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x03, 0xff, 0xff, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x3f, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char middle[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x0f, 0xf0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

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

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe3, 0xff, 0xff, 0xcf, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x87, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x03, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x03, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0x87, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf7, 0xff, 0xff, 0xcf, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf1, 0xff, 0xc0, 0x00, 0x00, 0x03, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x1f, 0xf8, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char smile_first[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xfc, 0xff, 0xff, 0x7f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xf8, 0x7f, 0xfc, 0x1f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xf0, 0x3f, 0xfc, 0x1f, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xf0, 0x3f, 0xf8, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xe0, 0x1f, 0xf8, 0x0f, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xe0, 0x1f, 0xf0, 0x0f, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe0, 0x1f, 0xf0, 0x07, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xe0, 0x1f, 0xf8, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xe0, 0x3f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf0, 0x3f, 0xf8, 0x0f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x3f, 0xfc, 0x1f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xf8, 0x7f, 0xfe, 0x3f, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x00, 0xff, 0xff, 0x00, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0x80, 0x00, 0x00, 0x01, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xc0, 0x00, 0x00, 0x03, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xe0, 0x00, 0x00, 0x07, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xf8, 0x00, 0x00, 0x1f, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xfe, 0x00, 0x00, 0x7f, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0x80, 0x01, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xf8, 0x1f, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0f, 0xf0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};

static const unsigned char smile_second[] PROGMEM = {

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x07, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xff, 0xf8, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0xf0, 0x7f, 0xfe, 0x0f, 0xff, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x7f, 0xfe, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xff, 0xe0, 0x3f, 0xfc, 0x07, 0xff, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x3f, 0xfc, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xe0, 0x7f, 0xfe, 0x07, 0xff, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xf0, 0x7f, 0xfe, 0x0f, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x1f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf8, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x0f, 0xf0, 0x7f, 0xff, 0xff, 0xfe, 0x0f, 0xf0, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf0, 0x3f, 0xff, 0xff, 0xfc, 0x0f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x8f, 0xf8, 0x3f, 0xff, 0xff, 0xfc, 0x1f, 0xf1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xf8, 0x1f, 0xff, 0xff, 0xf8, 0x1f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0x87, 0xfc, 0x0f, 0xff, 0xff, 0xf0, 0x3f, 0xe1, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc7, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xe3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xfe, 0x03, 0xff, 0xff, 0xc0, 0x7f, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xc3, 0xff, 0x01, 0xff, 0xff, 0x80, 0xff, 0xc3, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x00, 0xff, 0xff, 0x00, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xe1, 0xff, 0x80, 0x3f, 0xfc, 0x01, 0xff, 0x87, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0xff, 0xc0, 0x03, 0xc0, 0x03, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf0, 0x7f, 0xf0, 0x00, 0x00, 0x0f, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xf8, 0x7f, 0xf8, 0x00, 0x00, 0x1f, 0xfe, 0x1f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xfe, 0x00, 0x00, 0x7f, 0xfc, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfc, 0x1f, 0xff, 0x80, 0x01, 0xff, 0xf8, 0x3f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0xff, 0xfc, 0x3f, 0xff, 0xf0, 0x7f, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0xff, 0xff, 0xff, 0xff, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x7f, 0xff, 0xff, 0xfe, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xff, 0xf8, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x07, 0xff, 0xff, 0xe0, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xff, 0xff, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x07, 0xe0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,

  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff

};




/*BLYNK_WRITE(V0) {

  int led_value = param.asInt();

  digitalWrite(my_led, led_value);

  Serial.println(led_value);

}

*/

void sendSensor() {

  float humidity = dht.readHumidity();

  float temperature = dht.readTemperature();  // or dht.readTemperature(true) for Fahrenheit

  Blynk.virtualWrite(V1, humidity);

  Blynk.virtualWrite(V2, temperature);

  Serial.print("Temperature : ");

  Serial.print(temperature);

  Serial.print("    Humidity : ");

  Serial.println(humidity);

}

void ldrdata() {

  int val= analogRead(mositure_sensor);

  Serial.print("value: ");

  Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  Blynk.virtualWrite(V0, p);

  Serial.print("moisture sensor : ");

  Serial.println(p);

}


/*void display_oled(){

   int val= analogRead(mositure_sensor);

  //Serial.print("value: ");

 // Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  if (p > 80) {

    Serial.println("above 80%");

    display.drawBitmap(0, 0, smile_first, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 60 && p < 80) {

    Serial.println("p>=60 && p<=80");

    display.drawBitmap(0, 0, smile_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 50 && p < 60) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, middle, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 25 && p < 50) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, sad_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p >= 0 && p < 25) {

    Serial.println("p>40");

    display.drawBitmap(0, 0, sad_last, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }



}*/



void setup() {

  Serial.begin(115200);

  Blynk.begin(auth, ssid, pass);

  dht.begin();

  pinMode(mositure_sensor, INPUT);

  timer.setInterval(2500L, sendSensor);

  timer.setInterval(2500L, ldrdata);


if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {

    Serial.println(F("SSD1306 allocation failed"));

    for (;;);

  }

  delay(2000);  // Pause for 2 seconds


  // Clear the buffer.

  display.clearDisplay();




}


void loop() {

  

   int val= analogRead(mositure_sensor);

  //Serial.print("value: ");

 // Serial.print(val);

  p = map(val, mlow, mhigh, 0, 100);

  if (p > 80) {

    Serial.println("above 80%");

    display.drawBitmap(0, 0, smile_first, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 60 && p < 80) {

    Serial.println("p>=60 && p<=80");

    display.drawBitmap(0, 0, smile_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 50 && p < 60) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, middle, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p > 25 && p < 50) {

    Serial.println("p>=50 && p<=61");

    display.drawBitmap(0, 0, sad_second, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }

  if (p >= 0 && p < 25) {

    Serial.println("p>40");

    display.drawBitmap(0, 0, sad_last, 128, 64, 1);

    display.display();

    display.clearDisplay();

    delay(1000);

  }


Blynk.run();

  timer.run();

}







Post a Comment

0 Comments