As computing becomes more ubiquitous in our objects, designers need to be more aware of how to design meaningful interactions into electronically enhanced objects. At the University of Washington, a class of junior Interaction Design majors is exploring this question. These pages chronicle their efforts.

Wednesday, June 6, 2012

Reema & Jill's Final Project: The ThermoSleeve

Do you ever begin to sip a cup of coffee, only to be disappointed by its temperature? If it's too hot, it could leave you with painful burns, and if it's too cold, it just doesn't taste right. Introducing the ThermoSleeve! It's the beverage sleeve that tells you if your drink is too hot or cold, just by touching it!



Powered by an Arduino Uno, the ThermoSleeve is a simple solution to a commonly recurring problem. To use this product, simply slide on the ThermoSleeve and hook the thermistor over the lip of the cup. Simply touching the sleeve lets you know if your beverage is too hot, too cold, or just right. The thermistor measures the temperature of the liquid inside the cup, and when the sleeve is touched, it triggers the foil capacitive touch sensor that activates the system. A speaker plays one of three audio clips, "too hot", "too cold", or "just right", depending on the beverage temperature. The programmed temperature range for the "ideal beverage temperature" was an averaged number, based off research and surveys that inquired about  preferred sipping temperatures for hot beverages. A red, yellow, or green LED, corresponding to the beverage temperature, also illuminates as the sound is played, to ensure that the user is aware of the beverage's temperature before they begin sipping their drink. This way, nobody needs to be disappointed by the temperature of their beverage again!

The ThermoSleeve from Reema Bhagat on Vimeo.

FUNCTIONS BOARD
















SOLUTION BOARD

VIDEO 
https://vimeo.com/43521812

OPEN SOURCE COMMUNITY
The ThermoSleeve would not have been made possible without the notes, tips, and tutorials from outside sources. We bought the Arduino Uno from Amazon, and got the Sparkfun Starter Kit. We also needed speakers that we got directly from the Sparkfun Electronics website. In order to use the speakers, we first needed to down-sample the audio clips to be small enough for the Arduino to hold. Next, using the CapSense library, along with a video tutorial, we made a foil capacitive touch sensor. This touch sensor starts our code and tells the system how to behave, and the temperature is measured with a thermistor that goes into the top of the cup. The combining of all these small parts (electronic, as well as coding components) allowed for us to create a product that didn't previously exist in this way. The ThermoSleeve is a direct result of the open source community.

PROCESS
We began this process by taking apart an old kitchen timer that we found at Value Village. By dissecting this object and diagramming how it worked, we learned a lot about circuits and how information is sent through an object via sensors, actuators, etc. Then, we went through a process of ideation about situations and reactions that our project could be based off, and potential sensors each situation would use. Next was a series of trials with our Arduino. We experimented with LED's, a potentiometer, a buzzer, and a pushbutton/fade demo. Once we knew more about how products worked, we were able to diagram our initial idea for a bike warning system. After critique and feedback, we went in a new direction, coming up with the idea for our coffee cup sleeve, and we researched sensors and actuators that would make the product work. We then began to tackle individual elements of the project. We made a foil touch sensor, learned about down-sampling audio clips and playing them through our speakers, measured the beverage temperature with a thermistor,  and explored forms for the coffee cup sleeve. When we combined the code and hardware from these individual elements, the result was the ThermoSleeve.


THE FINAL CODE
Below is the final code for our project. Note that the numbers at the beginning of the code are the down-sampled audio clips, and if you scroll to the bottom you see how they are used.

#include <CapSense.h>  //capsense library
#include <PCM.h>       //pcm library
const unsigned char hotsample[] PROGMEM = {  //audio sample for hot temp

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



void setup() //define variables
     {
        Serial.begin(9600); // open serial port and set data rate to 9600 bps
        cs_4_2.set_CS_AutocaL_Millis(0xFFFFFFFF);     // turn off autocalibrate on channel 1 - just as an example
        pinMode(8, OUTPUT);  //red LED
        pinMode(12, OUTPUT); //yellow LED
        pinMode(13, OUTPUT); //green LED

     }

void loop()
    {
       int ThermistorPin = 1; // Analog input pin for thermistor voltage
       int Vo; // Integer value of voltage reading
       float R = 9870.0; // Fixed resistance in the voltage divider
       float logRt,Rt,T;
       float c1 = 1.009249522e-03, c2 = 2.378405444e-04, c3 = 2.019202697e-07;
       Vo = analogRead(ThermistorPin);
       Rt = R*( 1023.0 / (float)Vo - 1.0 );
       logRt = log(Rt);
       T = ( 1.0 / (c1 + c2*logRt + c3*logRt*logRt*logRt ) ) - 273.15;   //temperature calculation
              //Serial.print(" "); Serial.print(Vo);
              //Serial.print(" "); Serial.print(Rt);
              //Serial.print(" "); Serial.println(T);
       delay(200);
       long start = millis();   // setting up touch sensor
          long total1 =  cs_4_2.capSense(30);
       Serial.println(total1); // get the touch sensor to print
     
     
  if (total1 > 100)  // if touch sensor reads > 100
        {
           Serial.print("in loop"); // this is where i tried to get the touch sensor to print
       
             if (T > 40)  //if temp is greater than 40 degrees celcius
                    {
                       // do hot things
                      Serial.print("too hot");
                      digitalWrite(8,HIGH); //LED on
                      digitalWrite(12,LOW); //LED off
                      digitalWrite(13,LOW); //LED off
                      startPlayback(hotsample, sizeof(hotsample));  //play hot audio
                      delay (3000);
                    }
                 
                 
             else if (T < 30) //if temp is less than 30 degrees celcius
                    {
                      // do cold things
                      Serial.print("too cold");
                      digitalWrite(12,HIGH); //LED on
                      digitalWrite(8,LOW); //LED off
                      digitalWrite(13,LOW); //LED off
                      startPlayback(coldsample, sizeof(coldsample)); //play cold audio
                      delay (3000);
                    }
                 
                 
             else
                    {
                      // do perf temp things
                      Serial.print("perfect");
                      digitalWrite(13,HIGH); //LED on
                      digitalWrite(8,LOW); //LED off
                      digitalWrite(12,LOW); //LED off
                      startPlayback(perfsample, sizeof(perfsample)); //play perfect audio
                      delay (3000);
                    }
         }
  else
         {
             digitalWrite(8,LOW); //LED off
             digitalWrite(12,LOW); //LED off
             digitalWrite(13,LOW); //LED off
         }
       
}



No comments:

Post a Comment