Hi,
I'm trying to add some sounds to my robot. I use a simple speaker and PCM.h library to do it. EncodeAudio translated MP3s to code. When playing sounds is the only code, it's working well. When I implemented it to the main code of the robot, it started making short barking sounds instead of what I made it play.
Does anyone have any idea what's going on?
here's my code:
//------------------LIBRARIES------------------
#include "NewPing.h"
#include <PCM.h>
//------------------SOUNDS------------------
const unsigned char Obstacle[] PROGMEM = {
129, 129, 128, 127, 127, 128, 127, 129, 128, 128, 130, 130, 130, 128, 126, 125, 124, 126, 125, 124, 126, 127, 133, 140, 142, 135, 128, 125, 126, 125, 126, 123, 110, 116, 138, 154, 168, 161, 150, 133, 119, 134, 126, 106, 96, 85, 96, 113, 135, 149, 135, 130, 131, 128, 130, 128, 122, 112, 110, 118, 124, 128, 131, 132, 130, 131, 132, 130, 128, 125, 125, 124, 123, 126, 126, 127, 127, 127, 128, 126, 127, 127, 127, 128, 127, 128, 128, 127, 128, 127, 127, 127, 128, 128, 127, 128, 127, 127, 127, 128, 129, 128, 128, 127, 127, 127, 128, 128, 127, 129, 128, 128, 128, 127, 128, 126, 128, 128, 128, 128, 127, 127, 128, 128, 128, 128, 128, 127, 128, 128, 128, 129, 128, 129, 128, 127, 127, 126, 128, 127, 130, 132, 131, 133, 129, 125, 122, 122, 124, 121, 122, 126, 129, 138, 151, 153, 140, 128, 122, 125, 123, 126, 125, 100, 107, 143, 171, 194, 185, 169, 139, 112, 136, 130, 93, 76, 58, 71, 100, 135, 161, 141, 127, 133, 130, 132, 130, 120, 105, 97, 109, 123, 127, 132, 136, 132, 132, 135, 132, 128, 122, 121, 122, 123, 127, 128, 129, 129, 128, 128, 126, 126, 126, 125, 126, 126, 128, 128, 127, 127, 127, 128, 128, 128, 128, 127, 126, 126, 128, 127, 128, 128, 126, 127, 126, 127, 127, 127, 129, 128, 129, 128, 127, 128, 128, 129, 129, 129, 128, 127, 128, 128, 128, 128, 128, 129, 127, 129, 129, 129, 130, 129, 130, 127, 126, 127, 125, 127, 128, 132, 133, 134, 134, 128, 124, 119, 122, 124, 118, 123, 128, 131, 146, 159, 156, 139, 126, 123, 124, 121, 127, 119, 90, 112, 154, 183, 205, 189, 171, 133, 111, 144, 121, 83, 67, 51, 73, 103, 143, 163, 134, 128, 133, 129, 131, 129, 117, 101, 98, 111, 125, 128, 132, 136, 131, 132, 135, 131, 128, 121, 122, 122, 123, 128, 128, 130, 128, 128, 127, 126, 127, 125, 126, 125, 125, 127, 126, 128, 126, 127, 128, 127, 129, 127, 127, 127, 127, 128, 127, 128, 127, 127, 127, 126, 128, 127, 128, 128, 128, 128, 127, 128, 127, 128, 129, 128, 129, 127, 128, 127, 127, 128, 127, 128, 127, 128, 129, 129, 130, 128, 129, 128, 127, 128, 126, 127, 127, 130, 131, 131, 133, 129, 126, 123, 123, 126, 122, 123, 127, 129, 135, 145, 147, 136, 128, 125, 126, 125, 127, 127, 108, 114, 140, 157, 174, 165, 155, 137, 116, 135, 129, 104, 96, 84, 93, 110, 130, 147, 133, 126, 130, 128, 129, 128, 123, 115, 111, 118, 125, 127, 129, 132, 130, 130, 131, 129, 128, 125, 125, 125, 125, 127, 128, 128, 128, 127, 128, 127, 127, 127, 127, 127, 126, 127, 127, 127, 127, 128, 128, 127, 128, 127, 127, 128, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 127, 128, 128, 128, 128, 127, 128, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 127, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 126, 126, 126, 127, 127, 129, 131, 132, 132, 132, 130, 129, 129, 129, 130, 128, 128, 130, 129, 132, 134, 135, 136, 133, 133, 131, 127, 128, 125, 123, 122, 121, 121, 122, 124, 125, 124, 125, 125, 125, 126, 126, 126, 126, 126, 126, 127, 127, 127, 126, 126, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 127, 127, 127, 127, 127, 127, 128, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 128, 128, 125, 125, 129, 129, 127, 126, 127, 129, 129, 128, 128, 128, 129, 129, 128, 128, 129, 129, 129, 130, 130, 131, 131, 132, 133, 133, 133, 133, 133, 133, 132, 131, 129, 128, 127, 125, 124, 123, 122, 122, 121, 122, 122, 122, 123, 124, 124, 125, 126, 126, 126, 126, 127, 126, 126, 127, 126, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 128, 128, 127, 127, 127, 127, 128, 128, 128, 127, 127, 127, 128, 128, 128, 127, 127, 127, 128, 128, 127, 127, 127, 128, 128, 128, 127, 127, 127, 128, 128, 128, 128, 127, 127, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, 128, 129, 129, 129, 130, 130, 131, 132, 132, 133, 133, 134, 135, 134, 134, 133, 132, 131, 129, 127, 126, 124, 123, 122, 121, 121, 121, 121, 122, 122, 122, 123, 124, 125, 125, 126, 126, 126, 126, 126, 126, 127, 127, 127, 127, 125, 127, 128, 128, 128, 127, 127, 128, 129, 129, 128, 128, 128, 128, 128, 128, 128, 127, 128, 127, 127, 128, 127, 127, 127, 127, 127, 127, 128, 127, 128, 128, 127, 128, 128, 127, 128, 128, 127, 128, 127, 127, 127, 127, 127, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 129, 128, 129, 129, 129, 129, 129, 129, 129, 129, 130, 130, 131, 132, 132, 133, 134, 134, 135, 135, 135, 135, 133, 131, 131, 129, 127, 125, 123, 122, 121, 121, 120, 119, 121, 121, 122, 123, 123, 124, 125, 125, 126, 126, 126, 126, 126, 126, 127, 127, 126, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 128, 128, 127, 128, 127, 128, 128, 127, 128, 128, 128, 128, 127, 127, 128, 128, 128, 127, 127, 128, 128, 127, 127, 128, 127, 128, 128, 127, 128, 128, 128, 128, 128, 128, 127, 127, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, 129, 129, 129, 130, 130, 131, 131, 132, 133, 134, 134, 135, 135, 135, 135, 133, 132, 131, 128, 127, 126, 123, 122, 121, 120, 120, 120, 121, 121, 121, 123, 123, 124, 124, 125, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 127, 127, 127, 127, 127, 127, 128, 127, 127, 128, 127, 128, 128, 127, 127, 127, 128, 127, 127, 128, 127, 128, 127, 127, 127, 127, 128, 127, 128, 128, 126, 128, 128, 128, 128, 127, 128, 127, 127, 128, 127, 127, 127, 127, 127, 127, 128, 127, 128, 128, 128, 129, 128, 129, 129, 129, 129, 129, 129, 129, 129, 130, 130, 131, 132, 133, 133, 134, 134, 135, 135, 135, 134, 133, 132, 131, 129, 127, 125, 123, 123, 121, 120, 120, 120, 120, 121, 121, 122, 123, 124, 124, 125, 125, 126, 126, 126, 126, 126, 126, 126, 127, 126, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 127, 128, 127, 127, 128, 128, 128, 127, 127, 128, 128, 128, 128, 128, 128, 127, 128, 128, 128, 127, 127, 127, 128, 128, 128, 127, 127, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 129, 129, 129, 130, 129, 129, 129, 128, 128, 128, 129, 129, 130, 131, 132, 133, 133, 134, 135, 137, 138, 137, 136, 134, 129, 127, 123, 118, 118, 117, 117, 119, 120, 122, 123, 123, 125, 125, 126, 127, 128, 128, 128, 127, 126, 125, 125, 125, 125, 125, 126, 127, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 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, 127, 127, 127, 126, 127, 127, 128, 128, 130, 129, 129, 129, 129, 128, 129, 131, 131, 130, 131, 129, 123, 120, 118, 117, 120, 126, 137, 148, 152, 157, 161, 146, 130, 125, 108, 93, 97, 102, 105, 117, 131, 138, 142, 142, 139, 135, 127, 121, 121, 119, 117, 121, 126, 127, 127, 130, 131, 129, 129, 129, 128, 127, 127, 127, 127, 126, 126, 127, 127, 127, 128, 128, 128, 127, 127, 127, 127, 127, 128, 128, 127, 128, 128, 127, 127, 128, 128, 127, 128, 128, 128, 127, 128, 128, 127, 127, 128, 128, 128, 128, 128, 128, 127, 128, 128, 128, 128, 129, 128, 127, 127, 127, 126, 126, 128, 128, 128, 129, 129, 129, 128, 127, 127, 127, 126, 126, 128, 126, 124, 128, 129, 127, 132, 140, 139, 137, 140, 134, 122, 113, 104, 102, 104, 111, 133, 159, 171, 178, 193, 179, 140, 127, 108, 68, 63, 79, 84, 98, 128, 147, 151, 154, 151, 139, 129, 119, 116, 118, 116, 120, 128, 127, 126, 130, 128, 125, 126, 128, 127, 127, 130, 129, 128, 128, 128, 127, 127, 127, 127, 128, 128, 127, 128, 127, 126, 126, 126, 126, 126, 127, 127, 127, 128, 129, 129, 128, 127, 127, 126, 126, 127, 128, 128, 129, 129, 129, 127, 127, 127, 126, 126, 127, 127, 128, 128, 129, 130, 130, 130, 130, 129, 127, 126, 126, 125, 126, 128, 128, 129, 129, 128, 127, 126, 124, 125, 127, 126, 129, 133, 131, 129, 133, 131, 125, 130, 136, 133, 136, 139, 130, 120, 108, 102, 103, 104, 123, 158, 177, 183, 206, 199, 148, 129, 109, 56, 49, 70, 75, 95, 132, 151, 152, 154, 147, 134, 125, 118, 123, 125, 120, 128, 127, 118, 119, 121, 119, 120, 128, 130, 130, 133, 132, 129, 127, 127, 127, 126, 128, 128, 128, 128, 127, 126, 126, 125, 126, 127, 128, 129, 130, 128, 127, 126, 124, 125, 126, 126, 127, 128, 128, 127, 127, 128, 127, 127, 127, 127, 127, 127, 128, 128, 128, 130, 129, 129, 129, 127, 127, 127, 128, 128, 128, 130, 129, 129, 129, 128, 129, 128, 128, 128, 128, 129, 128, 127, 125, 123, 119, 119, 122, 122, 131, 142, 143, 141, 144, 137, 121, 127, 130, 124, 135, 139, 131, 118, 102, 100, 99, 107, 151, 196, 203, 229, 246, 174, 128, 111, 32, 7, 44, 51, 79, 135, 157, 156, 157, 145, 129, 120, 117, 131, 132, 126, 135, 123, 105, 108, 108, 107, 120, 134, 135, 138, 141, 134, 129, 127, 126, 125, 125, 128, 127, 126, 127, 127, 126, 126, 127, 125, 126, 127, 126, 128, 129, 127, 127, 127, 125, 126, 128, 127, 129, 130, 127, 127, 126, 126, 126, 129, 130, 128, 129, 127, 125, 125, 125, 128, 129, 129, 131, 130, 128, 129, 129, 128, 129, 129, 127, 127, 128, 127, 128, 129, 129, 129, 128, 129, 129, 129, 128, 126, 120, 115, 116, 118, 123, 139, 154, 152, 155, 153, 127, 118, 122, 113, 121, 134, 133, 123, 109, 106, 105, 106, 150, 201, 203, 232, 252, 171, 127, 112, 25, 7, 49, 49, 83, 139, 151, 148, 149, 136, 123, 119, 127, 142, 138, 135, 137, 110, 96, 102, 99, 109, 129, 138, 140, 141, 136, 128, 125, 125, 128, 129, 129, 129, 125, 123, 123, 125, 128, 129, 131, 128, 127, 125, 124, 127, 128, 129, 128, 127, 125, 123, 125, 127, 129, 131, 131, 129, 126, 126, 125, 126, 130, 131, 131, 128, 125, 122, 123, 126, 129, 133, 133, 131, 128, 125, 125, 127, 130, 132, 132, 130, 125, 123, 123, 126, 131, 134, 135, 131, 127, 122, 122, 126, 131, 136, 135, 129, 117, 107, 108, 111, 124, 150, 163, 160, 162, 150, 117, 115, 118, 111, 129, 139, 133, 120, 103, 103, 104, 111, 162, 213, 209, 237, 255, 165, 126, 114, 20, 3, 46, 40, 72, 133, 149, 150, 154, 141, 125, 117, 123, 140, 136, 139, 143, 111, 95, 96, 88, 100, 127, 144, 150, 153, 143, 126, 117, 113, 118, 126, 134, 138, 132, 126, 120, 116, 120, 128, 136, 138, 137, 129, 120, 116, 115, 122, 129, 135, 137, 132, 126, 119, 117, 120, 127, 133, 136, 136, 129, 123, 120, 118, 124, 130, 134, 134, 131, 126, 121, 120, 123, 127, 133, 136, 135, 130, 124, 120, 120, 124, 131, 137, 138, 135, 129, 121, 117, 119, 124, 132, 138, 139, 133, 125, 119, 117, 122, 131, 139, 142, 137, 127, 113, 103, 106, 116, 129, 150, 162, 153, 148, 140, 115, 115, 126, 123, 132, 138, 127, 113, 100, 105, 116, 124, 166, 204, 191, 207, 219, 148, 125, 123, 50, 38, 67, 51, 75, 123, 138, 147, 155, 147, 132, 119, 121, 131, 127, 137, 144, 120, 109, 104, 92, 100, 120, 136, 148, 153, 147, 132, 119, 112, 113, 121, 131, 139, 138, 133, 124, 116, 115, 119, 128, 135, 139, 137, 130, 122, 117, 117, 122, 129, 135, 136, 133, 127, 120, 118, 119, 124, 131, 136, 136, 131, 126, 119, 117, 122, 126, 133, 138, 137, 130, 123, 120, 116, 121, 128, 135, 138, 136, 131, 122, 119, 118, 123, 133, 138, 141, 136, 130, 119, 115, 119, 122, 134, 140, 139, 134, 125, 116, 113, 121, 130, 140, 146, 140, 127, 112, 100, 102, 116, 130, 155, 168, 157, 152, 141, 114, 114, 128, 122, 132, 140, 124, 110, 101, 106, 116, 131, 176, 209, 193, 212, 216, 138, 127, 121, 41, 43, 65, 45, 76, 125, 137, 146, 157, 146, 131, 119, 125, 134, 129, 140, 141, 115, 104, 98, 89, 100, 122, 140, 152, 154, 145, 129, 115, 111, 115, 124, 135, 141, 138, 130, 121, 114, 116, 123, 131, 139, 141, 135, 127, 120, 115, 118, 125, 133, 137, 135, 130, 121, 114, 114, 117, 124, 135, 138, 136, 133, 125, 118, 120, 123, 128, 135, 135, 133, 128, 122, 120, 120, 125, 131, 136, 135, 132, 126, 119, 121, 122, 127, 135, 138, 135, 132, 125, 119, 120, 125, 130, 136, 139, 134, 127, 120, 116, 119, 125, 138, 142, 139, 135, 119, 107, 107, 113, 125, 145, 159, 155, 147, 140, 121, 111, 124, 124, 125, 135, 126, 114, 103, 107, 120, 128, 159, 196, 187, 186, 209, 155, 124, 138, 76, 52, 75, 59, 66, 110, 131, 138, 155, 153, 138, 127, 123, 131, 129, 134, 143, 124, 108, 106, 94, 97, 117, 131, 144, 150, 145, 133, 120, 114, 113, 120, 130, 137, 140, 135, 126, 119, 117, 119, 125, 134, 137, 134, 130, 124, 118, 117, 123, 128, 133, 138, 135, 129, 123, 117, 117, 121, 128, 135, 137, 132, 129, 122, 116, 120, 125, 130, 138, 140, 133, 126, 121, 114, 117, 126, 130, 138, 140, 133, 128, 121, 117, 121, 125, 132, 139, 138, 134, 127, 120, 114, 119, 126, 133, 142, 140, 132, 124, 115, 112, 118, 129, 140, 146, 143, 133, 118, 106, 102, 112, 126, 140, 161, 160, 147, 143, 127, 110, 122, 131, 127, 136, 131, 112, 99, 97, 114, 128, 153, 196, 203, 180, 200, 180, 116, 138, 115, 54, 73, 67, 47, 79, 116, 131, 148, 162, 151, 135, 118, 123, 124, 121, 143, 138, 120, 114, 102, 93, 103, 122, 138, 151, 154, 147, 131, 117, 113, 110, 120, 132, 139, 141, 136, 128, 116, 112, 116, 121, 131, 139, 141, 135, 128, 124, 117, 119, 126, 130, 136, 137, 134, 126, 119, 117, 117, 124, 131, 136, 138, 134, 128, 122, 120, 120, 126, 132, 134, 135, 130, 125, 121, 118, 123, 127, 131, 137, 136, 132, 129, 121, 120, 122, 125, 133, 136, 136, 133, 125, 119, 116, 119, 124, 133, 138, 137, 136, 127, 121, 119, 119, 124, 132, 137, 137, 133, 126, 117, 110, 113, 124, 131, 147, 155, 145, 137, 133, 119, 115, 133, 132, 130, 135, 119, 105, 100, 112, 134, 147, 176, 198, 170, 159, 171, 123, 119, 149, 101, 88, 97, 63, 65, 96, 115, 133, 150, 151, 141, 124, 123, 130, 126, 137, 142, 123, 115, 112, 104, 111, 126, 132, 136, 136, 132, 126, 125, 126, 126, 127, 129, 130, 128, 128, 128, 124, 123, 123, 124, 126, 128, 130, 130, 128, 125, 125, 124, 124, 127, 130, 128, 128, 129, 125, 124, 126, 126, 125, 127, 130, 128, 130, 131, 128, 128, 128, 127, 126, 127, 126, 127, 127, 127, 128, 126, 127, 127, 128, 129, 129, 130, 128, 128, 126, 127, 128, 127, 131, 129, 128, 128, 125, 125, 126, 128, 127, 130, 129, 127, 128, 125, 127, 126, 127, 127, 125, 125, 123, 126, 128, 131, 134, 132, 132, 133, 138, 140, 141, 147, 131, 115, 120, 107, 109, 129, 129, 125, 122, 124, 131, 147, 175, 199, 182, 156, 162, 123, 110, 151, 117, 93, 95, 64, 61, 88, 115, 127, 128, 127, 128, 125, 137, 159, 145, 134, 134, 115, 113, 123, 125, 121, 121, 119, 118, 123, 128, 131, 127, 130, 129, 126, 131, 129, 129, 127, 126, 127, 125, 128, 128, 128, 128, 129, 127, 125, 128, 125, 126, 128, 127, 129, 128, 128, 128, 127, 128, 129, 128, 129, 128, 125, 126, 126, 126, 128, 128, 129, 128, 127, 128, 126, 126, 128, 126, 126, 127, 127, 125, 127, 128, 127, 128, 128, 129, 128, 129, 131, 128, 129, 128, 125, 126, 126, 127, 129, 129, 127, 129, 128, 126, 129, 129, 127, 127, 129, 126, 126, 129, 127, 127, 128, 128, 125, 125, 126, 125, 128, 132, 131, 130, 131, 130, 133, 138, 138, 136, 128, 127, 126, 121, 129, 122, 105, 113, 120, 124, 139, 146, 137, 138, 152, 169, 172, 155, 156, 131, 110, 144, 124, 99, 103, 82, 85, 102, 114, 115, 106, 118, 133, 136, 142, 145, 128, 125, 136, 132, 129, 127, 121, 118, 121, 123, 123, 122, 123, 127, 127, 128, 128, 126, 127, 129, 129, 128, 129, 128, 129, 128, 127, 128, 126, 128, 129, 128, 128, 128, 127, 127, 128, 127, 127, 127, 126, 126, 127, 126, 127, 127, 126, 127, 128, 128, 128, 129, 127, 128, 130, 128, 130, 129, 127, 126, 127, 127, 126, 128, 127, 126, 125, 126, 127, 126, 128, 129, 128, 128, 129, 129, 128, 128, 128, 128, 129, 128, 128, 129, 126, 127, 127, 126, 127, 126, 127, 127, 127, 128, 127, 128, 128, 130, 131, 129, 129, 127, 127, 127, 127, 127, 126, 127, 127, 130, 131, 129, 132, 134, 135, 133, 134, 128, 126, 131, 127, 125, 112, 118, 124, 115, 126, 124, 116, 133, 152, 150, 147, 150, 156, 166, 153, 157, 134, 109, 142, 119, 97, 101, 90, 100, 104, 108, 104, 102, 123, 137, 130, 129, 139, 134, 139, 140, 127, 127, 127, 130, 127, 123, 124, 123, 126, 124, 122, 125, 127, 128, 127, 126, 125, 124, 128, 128, 126, 128, 129, 127, 126, 129, 126, 127, 129, 126, 128, 127, 128, 127, 127, 127, 126, 127, 126, 127, 126, 127, 128, 127, 127, 129, 130, 127, 130, 129, 127, 127, 127, 128, 127, 128, 128, 128, 127, 127, 129, 127, 127, 128, 127, 126, 128, 127, 126, 127, 127, 127, 128, 130, 130, 130, 128, 128, 128, 127, 127, 128, 128, 127, 127, 127, 125, 127, 128, 129, 129, 130, 129, 128, 129, 128, 129, 128, 128, 127, 126, 128, 126, 129, 129, 127, 128, 130, 132, 131, 131, 131, 129, 131, 133, 123, 124, 125, 124, 122, 117, 122, 118, 123, 132, 124, 125, 141, 151, 145, 148, 147, 153, 153, 149, 150, 117, 127, 139, 107, 108, 102, 102, 108, 106, 110, 105, 112, 129, 130, 121, 131, 137, 133, 139, 132, 128, 130, 131, 131, 124, 124, 125, 125, 125, 125, 125, 124, 127, 125, 125, 128, 127, 127, 129, 129, 127, 130, 129, 126, 128, 127, 126, 128, 126, 127, 126, 126, 128, 126, 128, 127, 124, 126, 126, 127, 127, 129, 128, 127, 129, 128, 130, 127, 129, 128, 125, 129, 126, 129, 128, 127, 129, 127, 129, 128, 128, 127, 127, 127, 127, 128, 126, 128, 127, 126, 129, 128, 128, 128, 128, 129, 128, 129, 128, 128, 127, 126, 128, 127, 127, 128, 127, 128, 127, 128, 128, 128, 129, 128, 128, 128, 128, 127, 128, 128, 126, 127, 127, 126, 128, 128, 128, 127, 130, 129, 128, 130, 131, 133, 131, 131, 131, 127, 132, 130, 122, 122, 122, 124, 120, 115, 119, 119, 123, 133, 129, 123, 143, 151, 147, 150, 145, 154, 152, 148, 149, 117, 126, 143, 111, 107, 105, 101, 110, 106, 108, 105, 108, 129, 128, 120, 130, 136, 135, 138, 134, 130, 132, 133, 132, 125, 123, 127, 124, 124, 123, 122, 124, 126, 126, 125, 126, 128, 128, 128, 128, 128, 129, 127, 127, 127, 127, 127, 126, 127, 127, 126, 127, 128, 127, 127, 128, 127, 128, 128, 127, 128, 127, 127, 128, 126, 127, 127, 126, 127, 128, 127, 127, 128, 127, 128, 128, 128, 128, 128, 128, 128, 127, 128, 127, 128, 128, 127, 127, 127, 128, 128, 127, 127, 128, 128, 127, 128, 128, 127, 128, 127, 127, 128, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 129, 128, 128, 129, 128, 128, 129, 128, 128, 128, 127, 127, 127, 126, 126, 127, 127, 127, 127, 128, 129, 129, 130, 130, 131, 132, 131, 131, 129, 128, 131, 127, 122, 122, 124, 124, 121, 120, 122, 123, 129, 135, 126, 130, 146, 144, 144, 142, 142, 148, 141, 145, 133, 114, 136, 130, 109, 113, 108, 111, 114, 111, 113, 108, 120, 131, 122, 123, 132, 133, 134, 135, 131, 130, 132, 133, 129, 124, 126, 127, 124, 125, 124, 124, 125, 126, 127, 125, 127, 129, 128, 128, 128, 129, 128, 127, 128, 127, 127, 127, 127, 127, 126, 127, 126, 127, 127, 127, 127, 127, 128, 127, 127, 128, 128, 127, 127, 128, 127, 127, 127, 127, 127, 127, 128, 127, 127, 127, 126, 128, 127, 127, 127, 127, 128, 127, 128, 128, 127, 128, 127, 128, 127, 128, 128, 127, 128, 127, 128, 128, 128, 128, 127, 128, 127, 128, 128, 127, 128, 127, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 129, 128, 128, 128, 128, 128, 127, 128, 127, 127, 127, 127, 128, 127, 128, 129, 129, 129, 130, 131, 130, 130, 130, 130, 130, 127, 127, 124, 124, 127, 122, 120, 122, 124, 125, 123, 125, 127, 129, 137, 140, 132, 137, 151, 146, 145, 145, 141, 147, 141, 143, 135, 116, 134, 131, 112, 115, 110, 111, 113, 109, 111, 105, 110, 122, 118, 115, 122, 127, 128, 131, 130, 130, 133, 134, 135, 130, 130, 133, 130, 129, 128, 127, 127, 126, 126, 125, 125, 126, 125, 126, 126, 126, 126, 127, 127, 127, 128, 127, 128, 128, 127, 128, 127, 127, 127, 127, 127, 127, 127, 127, 126, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 127, 127, 127, 127, 128, 128, 128, 128, 127, 128, 128, 128, 128, 127, 128, 128, 127, 128, 128, 128, 127, 127, 127, 128, 127, 127, 128, 127, 128, 128, 127, 128, 128, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 128, 127, 128, 127, 127, 127, 128, 128, 128, 128, 128, 129, 129, 129, 129, 129, 129, 129, 128, 128, 128, 128, 127, 126, 126, 126, 126, 125, 125, 124, 125, 127, 124, 125, 127, 128, 130, 130, 131, 133, 134, 139, 139, 135, 138, 144, 141, 140, 139, 136, 139, 136, 136, 131, 121, 131, 130, 118, 120, 118, 118, 118, 115, 116, 112, 114, 120, 117, 115, 118, 121, 121, 123, 124, 124, 126, 127, 129, 128, 128, 130, 130, 130, 129, 129, 129, 129, 129, 128, 128, 128, 127, 128, 127, 127, 127, 127, 127, 126, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 127, 128, 127, 127, 128, 127, 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, 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, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, 129, 130, 130, 131, 131, 131, 132, 132, 133, 133, 133, 133, 132, 132, 132, 131, 129, 128, 127, 127, 125, 124, 123, 123, 123, 122, 122, 122, 122, 123, 123, 124, 124, 124, 125, 125, 126, 126, 126, 126, 126, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 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, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, 129, 130, 130, 131, 131, 131, 132, 132, 133, 133, 132, 133, 132, 132, 131, 130, 129, 127, 128, 128, 128, 125, 122, 124, 126, 125, 125, 124, 125, 125, 126, 126, 126, 126, 126, 126, 127, 127, 128, 128, 128, 125, 124, 129, 129, 128, 127, 127, 127, 126, 128, 129, 125, 127, 129, 127, 127, 128, 128, 127, 127, 127, 127, 128, 127, 127, 127, 128, 128, 127, 126, 127, 127, 128, 127, 127, 128, 129, 127, 125, 127, 128, 127, 129, 129, 127, 127, 126, 127, 127, 127, 128, 128, 127, 127, 127, 127, 127, 127, 127, 128, 129, 128, 127, 127, 127, 127, 127, 128, 128, 128, 127, 127, 127, 127, 128, 128, 127, 128, 128, 127, 127, 127, 128, 128, 126, 128, 128, 127, 128, 128, 127, 128, 128, 127, 128, 128, 127, 128, 128, 127, 128, 128, 126, 128, 128, 127, 128, 127, 128, 128, 128, 128, 127, 128, 128, 127, 128, 126, 128, 129, 127, 128, 128, 127, 128, 127, 127, 128, 128, 128, 128, 128, 128, 127, 128, 127, 127, 129, 128, 128, 128, 127, 128, 128, 128, 128, 127, 128, 129, 128, 128, 128, 128, 128, 127, 127, 128, 129, 129, 128, 128, 128, 129, 129, 128, 129, 130, 130, 129, 129, 130, 130, 129, 129, 129, 130, 130, 128, 127, 127, 127, 127, 126, 126, 126, 125, 126, 125, 124, 126, 127, 126, 126, 126, 126, 127, 126, 126, 127, 128, 128, 127, 126, 127, 127, 127, 127, 127, 128, 128, 127, 126, 127, 128, 128, 127, 127, 127, 128, 128, 127, 127, 128, 128, 127, 126, 127, 127, 128, 128, 127, 127, 128, 127, 127, 127, 128, 128, 127, 127, 127, 127, 128, 128, 126, 127, 128, 127, 127, 127, 128, 128, 127, 127, 128, 127, 128, 127, 127, 128, 128, 127, 128, 127, 127, 128, 127, 127, 128, 128, 128, 127, 127, 128, 128, 127, 127, 127, 128, 128, 127, 127, 127, 128, 127, 127, 128, 127, 128, 128, 128, 127, 128, 128, 128, 128, 127, 128, 128, 127, 128, 128, 128, 128, 127, 128, 128, 128, 128, 127, 128, 127, 128, 128, 127, 127, 127, 128, 127, 128, 128, 127, 128, 127, 128, 128, 127, 128, 128, 128, 128, 127, 128, 128, 127, 128, 128, 127, 128, 128, 128, 128, 127, 128, 128, 127, 128, 128, 128, 128, 128, 128, 127, 127, 127, 128, 128, 127, 128, 128, 127, 128, 128, 128, 127, 128, 128, 127, 128, 127, 127, 128, 128, 128, 128, 127, 128, 128, 127, 128, 128, 128, 128, 127, 127, 128, 128, 127, 127, 128, 127, 127, 128, 127, 127, 128, 128, 128, 128, 128, 128, 128, 127, 127, 128, 128, 128, 127, 128, 127, 127, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 127, 128, 127, 127, 128, 128, 128, 128, 127, 128, 128, 127, 128, 127, 128, 127, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 127, 128, 128, 127, 128, 127, 127, 128, 127, 127, 128, 128, 128, 128, 127, 127, 127, 127, 127, 128, 128, 127, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 128, 127, 128, 128, 128, 128, 127, 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, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 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 Moving[] PROGMEM = {
130, 130, 129, 129, 128, 129, 129, 129, 130, 130, 130, 129, 128, 127, 126, 126, 126, 127, 127, 127, 127, 126, 126, 125, 125, 126, 127, 129, 129, 129, 127, 126, 125, 125, 128, 129, 131, 131, 129, 129, 127, 129, 132, 136, 141, 141, 141, 139, 139, 139, 142, 146, 145, 145, 139, 134, 131, 126, 128, 129, 123, 121, 114, 111, 109, 109, 114, 116, 116, 114, 113, 112, 114, 119, 123, 127, 127, 125, 124, 122, 123, 126, 128, 130, 130, 129, 127, 125, 125, 127, 129, 130, 131, 130, 129, 128, 127, 128, 128, 129, 130, 129, 129, 127, 126, 125, 125, 125, 126, 127, 127, 127, 126, 125, 125, 125, 126, 128, 129, 129, 129, 128, 127, 127, 127, 129, 130, 131, 131, 130, 129, 128, 127, 128, 129, 131, 131, 130, 128, 126, 124, 124, 125, 127, 129, 129, 128, 126, 123, 122, 123, 126, 129, 131, 131, 128, 125, 122, 123, 127, 130, 135, 134, 132, 130, 126, 129, 134, 141, 147, 147, 146, 143, 141, 140, 146, 150, 149, 148, 139, 135, 130, 124, 131, 127, 121, 118, 108, 106, 105, 107, 114, 114, 112, 108, 106, 106, 111, 119, 124, 128, 126, 122, 120, 118, 122, 127, 132, 134, 131, 128, 124, 122, 124, 127, 132, 133, 133, 130, 127, 125, 125, 127, 130, 132, 132, 129, 127, 124, 123, 124, 125, 127, 128, 128, 126, 125, 123, 123, 125, 127, 129, 130, 129, 128, 126, 125, 126, 128, 130, 132, 133, 131, 129, 127, 127, 128, 130, 132, 132, 131, 129, 126, 124, 123, 125, 127, 130, 130, 129, 126, 122, 121, 122, 126, 131, 133, 133, 129, 125, 121, 122, 126, 132, 138, 137, 135, 131, 126, 130, 135, 144, 151, 151, 149, 146, 142, 141, 148, 152, 151, 151, 141, 135, 131, 123, 130, 127, 120, 117, 106, 103, 103, 104, 112, 113, 110, 107, 104, 103, 108, 118, 124, 128, 126, 121, 120, 117, 121, 127, 132, 135, 132, 128, 123, 121, 124, 127, 132, 134, 134, 131, 127, 125, 125, 127, 130, 132, 132, 130, 127, 124, 123, 123, 124, 127, 128, 128, 127, 124, 122, 122, 124, 126, 129, 130, 130, 128, 126, 125, 126, 128, 130, 132, 133, 131, 130, 128, 127, 128, 129, 131, 132, 131, 129, 127, 124, 123, 125, 126, 129, 130, 129, 127, 123, 122, 123, 125, 129, 132, 132, 129, 126, 123, 122, 126, 130, 135, 136, 134, 132, 127, 129, 133, 140, 147, 148, 147, 144, 141, 139, 144, 149, 148, 149, 141, 134, 132, 124, 129, 129, 121, 119, 111, 106, 107, 107, 113, 115, 112, 110, 107, 107, 110, 118, 124, 127, 126, 122, 121, 118, 121, 127, 131, 134, 131, 128, 124, 122, 124, 128, 132, 134, 133, 131, 127, 125, 125, 127, 130, 131, 131, 129, 127, 124, 123, 124, 125, 127, 128, 128, 126, 124, 123, 123, 125, 127, 129, 130, 129, 127, 125, 125, 126, 128, 132, 133, 133, 131, 128, 127, 126, 128, 131, 132, 133, 131, 128, 124, 123, 123, 125, 129, 130, 130, 127, 123, 121, 121, 124, 129, 133, 133, 130, 126, 121, 121, 125, 130, 137, 137, 136, 132, 128, 130, 135, 143, 151, 152, 151, 148, 144, 142, 148, 151, 150, 150, 141, 137, 132, 124, 131, 125, 117, 116, 105, 105, 104, 106, 113, 111, 107, 104, 104, 104, 111, 120, 124, 127, 123, 119, 118, 117, 124, 129, 134, 134, 130, 126, 122, 123, 126, 130, 134, 134, 132, 128, 126, 124, 126, 129, 131, 133, 131, 128, 124, 122, 123, 124, 128, 129, 129, 127, 124, 122, 122, 124, 127, 130, 131, 130, 128, 125, 125, 126, 129, 131, 133, 132, 130, 128, 126, 126, 129, 131, 132, 132, 130, 127, 124, 123, 124, 127, 129, 130, 129, 126, 122, 121, 122, 126, 130, 133, 132, 129, 124, 122, 122, 127, 133, 137, 136, 134, 131, 128, 131, 135, 144, 149, 148, 148, 144, 141, 141, 147, 148, 148, 146, 137, 137, 128, 126, 131, 121, 119, 113, 107, 108, 106, 110, 113, 113, 108, 106, 107, 108, 117, 122, 126, 127, 122, 120, 119, 121, 126, 131, 133, 132, 129, 125, 122, 123, 127, 131, 134, 133, 131, 127, 125, 125, 127, 130, 132, 132, 130, 127, 124, 123, 124, 125, 127, 129, 128, 127, 123, 122, 123, 125, 127, 130, 130, 129, 127, 124, 125, 126, 129, 132, 133, 133, 130, 127, 126, 126, 129, 131, 133, 132, 129, 126, 123, 122, 124, 127, 130, 130, 129, 125, 122, 120, 122, 126, 131, 133, 132, 129, 124, 121, 122, 127, 133, 138, 137, 135, 131, 127, 132, 136, 146, 151, 151, 151, 146, 143, 144, 150, 154, 160, 157, 144, 137, 122, 125, 137, 125, 109, 82, 67, 72, 86, 107, 109, 97, 82, 90, 116, 142, 154, 136, 128, 104, 104, 135, 127, 119, 106, 95, 100, 106, 119, 127, 123, 120, 126, 134, 141, 145, 145, 141, 138, 138, 138, 137, 134, 129, 127, 125, 123, 123, 122, 122, 121, 121, 123, 122, 122, 122, 124, 124, 124, 126, 127, 128, 127, 129, 130, 129, 130, 131, 133, 131, 131, 131, 131, 131, 129, 131, 130, 127, 126, 124, 121, 119, 119, 121, 121, 120, 118, 119, 123, 132, 139, 143, 138, 135, 141, 150, 152, 153, 139, 126, 117, 115, 145, 137, 117, 113, 99, 117, 136, 166, 189, 156, 126, 164, 190, 190, 217, 174, 160, 111, 83, 178, 137, 98, 81, 42, 63, 60, 95, 128, 97, 62, 85, 119, 131, 154, 144, 140, 125, 110, 143, 146, 133, 121, 111, 108, 107, 113, 119, 118, 107, 109, 118, 122, 125, 130, 131, 129, 130, 131, 136, 133, 130, 132, 129, 128, 124, 127, 127, 125, 126, 126, 128, 124, 126, 128, 127, 129, 128, 131, 129, 128, 131, 129, 130, 131, 130, 128, 128, 127, 127, 126, 122, 125, 122, 118, 123, 120, 122, 126, 125, 132, 131, 133, 142, 148, 154, 149, 140, 141, 149, 144, 146, 141, 117, 107, 91, 124, 145, 106, 110, 100, 106, 128, 151, 208, 194, 136, 138, 206, 207, 213, 218, 166, 163, 66, 119, 203, 103, 91, 37, 32, 64, 45, 105, 120, 61, 40, 93, 124, 147, 157, 138, 152, 119, 124, 174, 161, 148, 127, 114, 119, 117, 118, 121, 115, 101, 103, 110, 117, 125, 119, 119, 127, 127, 128, 134, 134, 131, 130, 125, 133, 130, 123, 129, 123, 120, 120, 123, 121, 122, 125, 121, 127, 121, 131, 133, 123, 131, 129, 134, 131, 130, 135, 123, 124, 127, 131, 131, 122, 125, 122, 125, 134, 137, 138, 130, 131, 138, 144, 148, 139, 130, 125, 131, 129, 133, 127, 104, 95, 86, 130, 141, 111, 121, 105, 117, 132, 167, 215, 188, 132, 137, 203, 186, 206, 202, 155, 153, 51, 128, 195, 102, 98, 43, 50, 72, 54, 112, 120, 71, 42, 89, 125, 141, 151, 132, 139, 119, 130, 168, 163, 149, 127, 124, 125, 130, 136, 124, 120, 107, 111, 123, 126, 128, 119, 117, 122, 130, 133, 133, 133, 123, 124, 128, 133, 133, 123, 126, 121, 119, 128, 126, 129, 120, 121, 132, 125, 133, 131, 133, 131, 125, 142, 133, 133, 133, 126, 131, 124, 128, 126, 123, 119, 124, 125, 114, 129, 126, 125, 134, 132, 142, 137, 131, 141, 150, 143, 138, 134, 126, 131, 118, 121, 128, 102, 88, 80, 114, 136, 106, 112, 110, 116, 127, 155, 221, 205, 153, 130, 194, 218, 192, 229, 173, 153, 90, 71, 208, 131, 84, 65, 21, 68, 39, 88, 133, 80, 34, 61, 125, 134, 149, 141, 151, 133, 112, 163, 178, 163, 133, 128, 131, 124, 127, 124, 127, 109, 100, 113, 120, 124, 121, 115, 122, 132, 128, 140, 141, 130, 133, 125, 136, 141, 123, 129, 123, 114, 122, 120, 124, 119, 114, 119, 123, 123, 125, 132, 121, 125, 130, 131, 138, 131, 141, 129, 127, 135, 135, 138, 128, 137, 126, 119, 123, 131, 137, 113, 124, 124, 118, 124, 128, 141, 130, 118, 130, 148, 139, 138, 140, 127, 135, 125, 132, 147, 118, 107, 105, 101, 138, 123, 104, 125, 101, 113, 132, 158, 194, 153, 120, 157, 192, 176, 200, 193, 163, 136, 79, 166, 177, 107, 102, 65, 73, 57, 69, 119, 108, 62, 48, 106, 115, 125, 135, 135, 147, 116, 139, 166, 158, 144, 128, 140, 137, 132, 132, 126, 123, 111, 113, 128, 122, 120, 117, 119, 131, 121, 128, 133, 127, 128, 126, 140, 135, 123, 122, 130, 133, 120, 128, 134, 125, 116, 116, 134, 131, 115, 120, 130, 128, 118, 118, 132, 128, 122, 129, 138, 141, 129, 126, 138, 143, 136, 136, 134, 131, 130, 115, 126, 132, 119, 115, 112, 124, 127, 120, 124, 132, 134, 125, 139, 155, 142, 129, 129, 138, 138, 129, 132, 120, 97, 82, 117, 148, 111, 111, 109, 106, 130, 148, 206, 206, 138, 124, 193, 203, 197, 219, 165, 158, 80, 83, 203, 129, 89, 58, 36, 65, 37, 92, 131, 91, 35, 64, 129, 129, 151, 143, 152, 141, 108, 163, 179, 154, 142, 127, 126, 127, 123, 130, 129, 102, 107, 117, 111, 123, 125, 121, 122, 119, 129, 141, 130, 129, 135, 126, 127, 129, 127, 134, 126, 116, 119, 119, 121, 126, 123, 126, 126, 112, 116, 130, 133, 134, 128, 126, 133, 127, 132, 147, 142, 135, 134, 132, 137, 138, 133, 134, 125, 117, 122, 121, 115, 119, 116, 110, 113, 112, 124, 128, 123, 135, 135, 135, 138, 138, 148, 148, 148, 149, 131, 130, 134, 125, 131, 131, 119, 109, 85, 96, 140, 120, 107, 119, 106, 118, 127, 164, 202, 168, 120, 145, 199, 175, 197, 194, 152, 149, 67, 134, 189, 102, 105, 66, 60, 73, 53, 108, 127, 83, 56, 96, 114, 124, 145, 139, 162, 133, 119, 159, 154, 155, 146, 135, 139, 119, 118, 126, 126, 122, 112, 113, 114, 114, 119, 123, 131, 130, 125, 131, 133, 135, 135, 134, 135, 129, 126, 130, 130, 122, 118, 118, 117, 118, 121, 129, 125, 114, 121, 127, 132, 132, 132, 140, 127, 125, 132, 136, 132, 125, 130, 127, 125, 121, 130, 130, 121, 126, 124, 133, 126, 127, 137, 127, 129, 124, 131, 133, 126, 127, 123, 130, 122, 125, 132, 127, 130, 124, 134, 139, 131, 136, 136, 135, 130, 134, 139, 124, 118, 114, 116, 115, 104, 129, 122, 93, 102, 111, 134, 144, 147, 177, 169, 127, 142, 196, 196, 193, 189, 163, 155, 98, 103, 173, 134, 101, 90, 62, 65, 52, 74, 126, 114, 83, 90, 104, 106, 127, 144, 158, 159, 130, 135, 142, 136, 144, 143, 140, 129, 119, 119, 121, 122, 122, 125, 121, 118, 120, 123, 126, 130, 131, 130, 128, 126, 128, 128, 126, 129, 130, 127, 127, 126, 125, 124, 123, 128, 128, 127, 128, 127, 125, 124, 127, 126, 127, 128, 127, 130, 126, 127, 129, 128, 130, 129, 130, 129, 129, 128, 127, 129, 128, 128, 127, 126, 126, 127, 128, 126, 127, 127, 126, 127, 127, 129, 129, 128, 128, 128, 129, 129, 131, 131, 132, 133, 130, 131, 130, 132, 133, 131, 131, 127, 124, 118, 116, 119, 121, 121, 113, 116, 114, 104, 115, 124, 140, 146, 139, 149, 149, 138, 144, 172, 183, 174, 170, 153, 144, 127, 109, 141, 141, 114, 109, 91, 82, 77, 77, 102, 118, 112, 105, 115, 111, 109, 124, 132, 146, 144, 138, 142, 135, 132, 132, 134, 136, 130, 131, 129, 126, 125, 123, 124, 123, 123, 123, 126, 128, 126, 129, 126, 126, 127, 126, 128, 128, 129, 128, 127, 129, 127, 128, 126, 126, 127, 127, 127, 127, 129, 126, 126, 127, 124, 126, 125, 125, 127, 127, 127, 127, 127, 127, 127, 127, 127, 129, 128, 129, 130, 130, 129, 128, 128, 127, 128, 128, 128, 129, 128, 129, 128, 128, 129, 128, 129, 128, 128, 129, 129, 130, 128, 129, 128, 128, 129, 127, 130, 129, 130, 132, 131, 132, 130, 131, 129, 126, 125, 121, 122, 120, 121, 124, 121, 117, 112, 115, 112, 116, 131, 136, 148, 147, 141, 150, 145, 146, 160, 179, 181, 173, 167, 147, 142, 127, 114, 140, 131, 113, 110, 90, 83, 75, 76, 94, 107, 107, 105, 113, 109, 108, 117, 125, 138, 140, 140, 144, 139, 135, 133, 135, 135, 133, 133, 130, 129, 126, 124, 124, 123, 123, 123, 124, 124, 125, 126, 126, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 128, 128, 128, 129, 129, 129, 129, 128, 128, 128, 128, 128, 128, 128, 127, 128, 127, 127, 127, 127, 128, 128, 130, 130, 131, 131, 130, 131, 131, 132, 131, 131, 130, 127, 126, 124, 123, 124, 123, 124, 122, 120, 116, 117, 122, 123, 132, 138, 142, 145, 141, 143, 146, 148, 153, 163, 169, 163, 159, 148, 138, 135, 123, 128, 132, 120, 117, 107, 97, 93, 87, 92, 101, 106, 108, 112, 113, 110, 113, 116, 123, 130, 132, 137, 138, 135, 134, 132, 132, 131, 131, 131, 129, 129, 126, 125, 124, 123, 124, 124, 124, 124, 124, 125, 125, 126, 127, 127, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 126, 127, 126, 126, 127, 127, 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, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 128, 128, 129, 128, 129, 129, 129, 129, 128, 128, 128, 128, 128, 127, 128, 128, 128, 128, 128, 129, 129, 130, 130, 131, 131, 131, 131, 130, 129, 128, 128, 128, 126, 126, 124, 123, 121, 120, 122, 124, 127, 131, 134, 136, 137, 137, 141, 145, 147, 153, 157, 155, 153, 146, 139, 136, 129, 127, 128, 120, 116, 111, 104, 101, 99, 101, 107, 110, 114, 119, 120, 120, 123, 125, 128, 130, 132, 134, 133, 131, 130, 128, 127, 126, 126, 125, 125, 125, 124, 124, 124, 125, 126, 126, 127, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 128, 129, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 129, 129, 129, 130, 130, 130, 130, 130, 130, 129, 128, 128, 127, 127, 127, 127, 128, 129, 130, 131, 132, 133, 135, 137, 138, 140, 140, 139, 138, 135, 134, 131, 128, 127, 124, 121, 119, 117, 116, 115, 116, 118, 118, 120, 122, 123, 124, 125, 126, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 127, 127, 128, 128, 127, 128, 128, 127, 128, 127, 126, 127, 128, 128, 127, 126, 127, 127, 129, 128, 126, 127, 128, 128, 128, 128, 127, 127, 128, 128, 127, 127, 128, 128, 127, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 128, 128, 127, 128, 128, 128, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 127, 127, 127, 127, 127, 127, 126, 126, 127, 127, 128, 129, 124, 124, 131, 132, 128, 125, 127, 131, 131, 129, 128, 128, 130, 131, 130, 131, 132, 133, 133, 136, 137, 137, 138, 138, 138, 137, 135, 134, 131, 129, 127, 124, 122, 120, 118, 117, 117, 117, 118, 118, 119, 121, 122, 123, 123, 124, 125, 125, 126, 126, 125, 126, 126, 126, 126, 126, 127, 127, 128, 128, 128, 128, 129, 129, 129, 129, 128, 128, 129, 129, 128, 128, 127, 127, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 128, 127, 127, 127, 127, 128, 128, 128, 127, 126, 127, 128, 128, 127, 127, 127, 126, 128, 129, 127, 126, 127, 127, 128, 128, 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, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 126, 126, 126, 125, 126, 126, 127, 127, 126, 127, 128, 128, 129, 129, 130, 130, 130, 129, 129, 130, 130, 132, 131, 129, 131, 135, 137, 136, 137, 138, 139, 142, 142, 140, 138, 136, 135, 132, 129, 126, 122, 120, 117, 115, 115, 114, 114, 115, 116, 118, 119, 121, 122, 123, 124, 124, 125, 125, 125, 125, 126, 125, 126, 126, 126, 126, 127, 127, 128, 128, 128, 129, 129, 129, 128, 129, 129, 128, 128, 128, 127, 128, 127, 127, 128, 127, 128, 127, 127, 128, 128, 127, 127, 128, 127, 127, 128, 127, 127, 127, 127, 127, 127, 128, 127, 127, 127, 127, 128, 127, 127, 127, 127, 128, 127, 128, 127, 128, 127, 125, 128, 129, 127, 128, 127, 128, 128, 128, 129, 127, 128, 128, 128, 128, 127, 128, 128, 128, 128, 127, 128, 127, 127, 128, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 128, 128, 128, 127, 128, 128, 128, 128, 128, 128, 127, 127, 128, 127, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 126, 127, 128, 128, 128, 129, 129, 129, 130, 130, 130, 130, 130, 130, 131, 131, 132, 132, 135, 135, 137, 139, 139, 141, 141, 140, 140, 138, 136, 134, 130, 127, 125, 121, 118, 116, 115, 115, 114, 115, 115, 116, 119, 120, 121, 122, 123, 124, 124, 125, 125, 125, 125, 125, 126, 126, 126, 126, 126, 127, 128, 128, 128, 128, 128, 129, 129, 129, 128, 128, 128, 128, 128, 128, 127, 128, 127, 128, 128, 127, 127, 128, 128, 127, 127, 127, 127, 128, 127, 127, 128, 127, 128, 127, 127, 128, 127, 127, 127, 127, 127, 127, 128, 127, 127, 128, 127, 128, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 127, 128, 127, 128, 128, 127, 128, 127, 127, 127, 127, 128, 127, 129, 128, 125, 128, 129, 128, 128, 127, 128, 127, 128, 129, 128, 127, 127, 128, 128, 127, 128, 127, 127, 128, 127, 128, 127, 128, 129, 128, 129, 128, 128, 129, 128, 128, 127, 127, 127, 127, 126, 126, 127, 128, 129, 130, 131, 132, 132, 132, 132, 132, 132, 129, 127, 125, 121, 121, 122, 121, 120, 120, 123, 127, 131, 140, 146, 142, 146, 153, 153, 155, 151, 147, 143, 126, 128, 129, 112, 108, 103, 99, 103, 100, 107, 112, 105, 115, 129, 131, 133, 135, 137, 142, 140, 140, 140, 132, 129, 129, 125, 122, 119, 117, 118, 119, 119, 120, 122, 125, 128, 129, 131, 132, 132, 133, 133, 132, 130, 128, 128, 126, 126, 125, 124, 125, 124, 125, 126, 126, 128, 128, 129, 129, 129, 129, 128, 128, 127, 127, 126, 126, 126, 126, 126, 126, 126, 126, 127, 128, 128, 128, 128, 129, 129, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 127, 126, 128, 127, 126, 126, 126, 127, 127, 128, 128, 128, 128, 129, 130, 129, 129, 129, 129, 129, 127, 127, 127, 127, 128, 128, 129, 129, 129, 131, 130, 130, 129, 129, 128, 125, 124, 123, 121, 120, 120, 120, 121, 123, 126, 129, 130, 135, 141, 143, 145, 142, 143, 144, 142, 137, 122, 122, 117, 105, 111, 103, 93, 98, 107, 124, 125, 117, 143, 173, 165, 176, 191, 174, 188, 184, 179, 171, 107, 128, 149, 83, 74, 70, 65, 78, 59, 75, 87, 77, 113, 139, 128, 132, 153, 164, 166, 154, 149, 153, 139, 137, 128, 111, 112, 109, 110, 105, 101, 112, 115, 120, 124, 127, 133, 135, 139, 139, 138, 137, 135, 134, 129, 128, 125, 124, 124, 121, 124, 122, 124, 127, 126, 128, 128, 129, 129, 129, 129, 128, 128, 126, 127, 126, 125, 127, 125, 126, 126, 127, 127, 126, 128, 127, 128, 127, 127, 128, 127, 129, 128, 128, 128, 128, 129, 127, 128, 128, 127, 128, 126, 128, 126, 126, 128, 127, 128, 127, 128, 128, 128, 130, 128, 130, 129, 130, 130, 128, 129, 128, 129, 127, 126, 127, 125, 126, 126, 127, 128, 128, 131, 130, 132, 133, 133, 133, 132, 132, 128, 126, 123, 120, 118, 114, 115, 114, 116, 118, 121, 129, 134, 143, 146, 147, 159, 162, 157, 147, 143, 147, 127, 111, 108, 85, 83, 92, 73, 71, 82, 120, 144, 110, 165, 214, 194, 238, 232, 223, 233, 216, 232, 131, 99, 171, 69, 22, 36, 15, 34, 6, 35, 53, 43, 128, 129, 110, 165, 186, 190, 173, 172, 185, 157, 149, 140, 111, 110, 110, 94, 87, 90, 101, 104, 104, 115, 124, 131, 137, 139, 142, 144, 144, 141, 137, 135, 132, 128, 125, 124, 123, 121, 123, 122, 123, 124, 125, 126, 125, 127, 127, 127, 128, 127, 128, 127, 127, 126, 126, 127, 126, 126, 126, 126, 126, 126, 126, 126, 128, 127, 128, 129, 128, 129, 129, 129, 129, 128, 129, 128, 127, 126, 127, 126, 125, 126, 126, 126, 127, 127, 127, 127, 129, 129, 129, 129, 129, 129, 129, 129, 128, 128, 129, 128, 128, 127, 128, 128, 127, 128, 128, 129, 130, 130, 131, 132, 133, 133, 133, 133, 132, 130, 127, 124, 121, 119, 115, 112, 112, 113, 116, 117, 121, 129, 136, 147, 150, 150, 161, 168, 162, 147, 144, 149, 123, 106, 104, 74, 80, 86, 67, 68, 80, 138, 136, 113, 203, 211, 214, 255, 228, 242, 227, 234, 209, 86, 143, 143, 21, 32, 20, 20, 21, 5, 54, 36, 79, 147, 108, 134, 180, 187, 183, 164, 178, 170, 145, 146, 121, 104, 112, 103, 90, 91, 100, 108, 107, 114, 124, 130, 137, 139, 139, 142, 141, 140, 135, 132, 130, 127, 125, 123, 123, 122, 123, 124, 124, 125, 127, 127, 127, 127, 128, 127, 127, 127, 127, 127, 126, 127, 125, 127, 127, 126, 127, 126, 127, 126, 126, 126, 126, 127, 127, 128, 128, 127, 129, 128, 129, 128, 128, 129, 127, 128, 127, 127, 127, 127, 128, 126, 127, 127, 127, 128, 127, 128, 128, 128, 129, 128, 129, 128, 129, 128, 128, 129, 128, 129, 129, 128, 129, 128, 129, 128, 128, 128, 127, 128, 127, 128, 128, 129, 130, 130, 132, 132, 133, 131, 130, 129, 126, 125, 121, 118, 116, 116, 118, 117, 119, 124, 130, 137, 142, 144, 148, 157, 158, 149, 141, 145, 140, 114, 113, 102, 85, 100, 87, 81, 86, 110, 148, 117, 147, 202, 185, 215, 216, 207, 215, 198, 214, 140, 101, 161, 89, 43, 57, 40, 52, 34, 52, 68, 59, 124, 127, 110, 152, 166, 171, 159, 158, 168, 147, 144, 136, 114, 116, 115, 106, 98, 102, 111, 111, 114, 119, 126, 131, 135, 137, 137, 139, 138, 136, 133, 130, 129, 126, 125, 123, 123, 123, 123, 125, 125, 126, 128, 128, 129, 128, 129, 128, 128, 128, 126, 126, 126, 126, 125, 125, 126, 125, 126, 127, 126, 127, 126, 128, 128, 127, 128, 128, 128, 128, 127, 128, 127, 128, 127, 127, 127, 128, 128, 127, 128, 128, 128, 128, 127, 128, 127, 128, 127, 127, 128, 127, 127, 127, 128, 129, 128, 130, 130, 130, 131, 130, 130, 130, 129, 128, 127, 126, 126, 125, 126, 127, 127, 129, 130, 131, 132, 133, 133, 132, 131, 131, 127, 125, 123, 121, 119, 117, 118, 119, 122, 124, 126, 132, 137, 142, 144, 143, 148, 150, 144, 135, 132, 134, 119, 110, 111, 96, 103, 108, 98, 102, 113, 147, 139, 132, 181, 178, 184, 199, 182, 189, 181, 189, 158, 101, 146, 125, 67, 76, 68, 73, 61, 61, 84, 70, 106, 126, 105, 131, 150, 154, 146, 142, 157, 144, 133, 134, 124, 121, 119, 113, 110, 113, 118, 118, 118, 125, 130, 130, 131, 133, 135, 133, 131, 131, 129, 127, 126, 125, 125, 124, 124, 126, 126, 126, 128, 127, 128, 128, 128, 128, 126, 127, 127, 125, 126, 126, 126, 127, 126, 127, 127, 127, 128, 127, 128, 127, 128, 128, 126, 127, 127, 127, 125, 126, 128, 126, 126, 127, 128, 127, 127, 129, 128, 128, 128, 129, 129, 129, 129, 128, 129, 130, 127, 127, 127, 128, 127, 126, 128, 127, 127, 128, 128, 128, 128, 129, 129, 128, 129, 130, 129, 128, 130, 129, 128, 129, 129, 128, 127, 128, 128, 128, 128, 128, 128, 129, 129, 128, 128, 128, 127, 126, 126, 127, 125, 123, 126, 128, 126, 124, 130, 134, 127, 128, 136, 135, 128, 125, 132, 129, 115, 122, 124, 112, 124, 129, 126, 129, 146, 169, 145, 152, 198, 179, 151, 163, 186, 161, 101, 132, 149, 85, 71, 96, 103, 71, 63, 114, 107, 84, 112, 131, 129, 119, 131, 144, 129, 129, 134, 129, 128, 127, 127, 126, 128, 130, 127, 128, 131, 130, 129, 129, 128, 127, 129, 127, 126, 127, 128, 126, 126, 127, 127, 126, 126, 128, 127, 126, 128, 128, 126, 127, 127, 127, 126, 127, 127, 127, 127, 127, 128, 129, 129, 128, 128, 129, 128, 127, 127, 127, 127, 127, 127, 127, 126, 127, 127, 126, 127, 128, 127, 128, 128, 128, 128, 129, 128, 128, 129, 128, 127, 128, 127, 127, 126, 127, 127, 126, 127, 128, 127, 128, 128, 128, 127, 127, 128, 127, 127, 129, 128, 128, 129, 129, 128, 128, 129, 128, 127, 128, 128, 128, 128, 128, 129, 129, 129, 129, 128, 128, 127, 127, 127, 128, 127, 128, 129, 129, 128, 129, 129, 128, 128, 129, 128, 128, 129, 129, 129, 129, 130, 130, 128, 128, 126, 125, 123, 123, 124, 123, 124, 127, 127, 128, 131, 132, 130, 132, 134, 132, 135, 138, 141, 144, 148, 156, 157, 158, 163, 163, 157, 153, 153, 141, 128, 128, 116, 104, 103, 99, 93, 92, 97, 99, 99, 107, 112, 114, 117, 120, 122, 121, 122, 125, 123, 124, 127, 128, 129, 131, 133, 132, 133, 132, 130, 130, 128, 127, 126, 125, 125, 125, 125, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 127, 127, 127, 128, 128, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 127, 127, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 128, 128, 128, 129, 128, 128, 128, 128, 127, 127, 127, 127, 127, 128, 128, 128, 129, 129, 128, 128, 128, 128, 127, 128, 128, 128, 128, 129, 129, 129, 130, 129, 129, 129, 129, 129, 129, 129, 129, 130, 130, 130, 129, 128, 127, 126, 124, 123, 123, 123, 123, 125, 126, 127, 128, 131, 131, 130, 133, 133, 133, 136, 139, 142, 145, 150, 157, 156, 159, 163, 161, 155, 152, 150, 135, 127, 126, 111, 102, 102, 97, 92, 93, 98, 98, 101, 109, 112, 114, 118, 121, 123, 121, 124, 125, 124, 125, 128, 128, 129, 132, 132, 132, 132, 131, 130, 129, 128, 126, 125, 125, 125, 125, 126, 126, 127, 127, 127, 126, 126, 126, 125, 125, 125, 126, 126, 127, 127, 127, 127, 127, 127, 127, 126, 126, 126, 126, 126, 127, 127, 128, 128, 128, 128, 127, 127, 126, 126, 126, 126, 126, 127, 127, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 128, 128, 128, 128, 129, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 128, 128, 128, 129, 129, 129, 129, 128, 128, 127, 127, 127, 127, 128, 128, 128, 129, 129, 129, 129, 128, 128, 128, 127, 127, 128, 128, 128, 129, 129, 129, 130, 129, 129, 128, 128, 128, 128, 128, 129, 129, 130, 130, 130, 129, 128, 127, 126, 124, 123, 123, 123, 123, 125, 127, 127, 128, 131, 131, 130, 133, 133, 133, 136, 139, 142, 144, 150, 155, 155, 158, 161, 158, 152, 151, 147, 133, 128, 125, 111, 105, 104, 98, 95, 97, 101, 100, 104, 111, 113, 116, 119, 122, 123, 122, 125, 125, 124, 126, 127, 128, 129, 131, 132, 131, 132, 131, 130, 128, 128, 126, 126, 125, 125, 126, 126, 126, 127, 127, 127, 126, 126, 126, 126, 126, 126, 126, 127, 127, 127, 127, 127, 127, 127, 127, 126, 127, 126, 127, 127, 127, 128, 128, 128, 128, 127, 127, 127, 127, 126, 127, 127, 127, 127, 127, 128, 128, 128, 128, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 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, 129, 129, 129, 129, 129, 129, 128, 128, 128, 129, 129, 129, 129, 128, 128, 127, 126, 125, 124, 124, 124, 124, 125, 126, 127, 128, 130, 130, 130, 132, 132, 132, 135, 137, 139, 141, 145, 148, 148, 151, 152, 150, 146, 144, 140, 131, 127, 123, 114, 110, 109, 105, 103, 105, 107, 108, 111, 115, 117, 119, 121, 123, 123, 123, 125, 125, 126, 127, 128, 129, 130, 131, 131, 130, 130, 129, 129, 128, 127, 127, 126, 126, 126, 126, 127, 127, 127, 127, 127, 126, 126, 126, 126, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 128, 127, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 127, 128, 128, 127, 127, 128, 128, 128, 128, 128, 128, 127, 127, 128, 127, 127, 128, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 127, 127, 128, 128, 128, 128, 128, 127, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, 127, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
};
//Variables:
//------------------SENSORS------------------
//Front IR Sensors
int IRSensorLeft = 2;
int IRSensorRight = A3;
int IRSensorTop = 6;
//Ultrasonic Sensors
//Left Bottom
#define TRIGGER_PIN 7
#define ECHO_PIN 8
//Right Bottom
#define TRIGGER_PIN2 4
#define ECHO_PIN2 5
//Shared data
#define MAX_DIST 200
int iterations = 3;
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DIST);
NewPing sonar2(TRIGGER_PIN2, ECHO_PIN2, MAX_DIST);
float duration, duration2, LeftBottom, RightBottom, Variable;
//int ledPin = 7;
//------------------MOTORS------------------
// speed
int l_speed = 3; //Left Motor
int r_speed = 9; //Right Motor
// Motor Control Pins
int M1P1 = 10;
int M1P2 = A1;
int M2P1 = 12;
int M2P2 = 13;
void setup() {
//Motors
pinMode(M1P1,OUTPUT);
pinMode(M2P1,OUTPUT);
pinMode(M1P2,OUTPUT);
pinMode(M2P2,OUTPUT);
pinMode(l_speed,OUTPUT);
pinMode(r_speed,OUTPUT);
//IR sernsors
pinMode (IRSensorLeft, INPUT);
pinMode (IRSensorRight, INPUT);
pinMode (IRSensorTop, INPUT);
Serial.begin (9600);
}
void Avoidance_Procedure()
{
startPlayback(Obstacle,sizeof(Obstacle));
analogWrite(l_speed,100);
analogWrite(r_speed,100);
digitalWrite(M1P1,LOW); //stop
digitalWrite(M2P1,LOW);
digitalWrite(M1P2,LOW);
digitalWrite(M2P2,LOW);
delay(100);
digitalWrite(M1P1,LOW); //turn left
digitalWrite(M2P1,LOW);
digitalWrite(M1P2,HIGH);
digitalWrite(M2P2,HIGH);
delay(100);
digitalWrite(M1P1,HIGH); //turn left
digitalWrite(M2P1,LOW);
digitalWrite(M1P2,LOW);
digitalWrite(M2P2,HIGH);
delay(100);
}
void Move_forward() {
startPlayback(Moving,sizeof(Moving));
analogWrite(l_speed,100);
analogWrite(r_speed,100);
digitalWrite(M1P1,HIGH);
digitalWrite(M2P1,HIGH);
digitalWrite(M1P2,LOW);
digitalWrite(M2P2,LOW);
}
void Positive_Decision() {
analogWrite(l_speed,100);
analogWrite(r_speed,100);
int FrontRight = digitalRead (IRSensorRight);
int FrontLeft = digitalRead (IRSensorLeft);
int CenterTop = digitalRead (IRSensorTop);
duration = sonar.ping_median(iterations);
delay(50);
duration2 = sonar2.ping_median(iterations);
delay(50);
LeftBottom=(duration / 2)* 0.0343;
RightBottom=(duration2 / 2)* 0.0343;
Serial.println("ULTRASONIC BOTTOM SENSORS: ");
Serial.print(" Left: ");
Serial.print(LeftBottom);
Serial.println(" cm.");
Serial.print(" Right: ");
Serial.print(RightBottom);
Serial.println(" cm.");
Serial.println("INFRARED FRONT SENSORS: ");
Serial.print(" Top: ");
Serial.print(CenterTop);
if(CenterTop!=1) {Serial.println(". Obstacle Detected!");}
else {Serial.println(". OK");}
Serial.print(" Right: ");
Serial.print(FrontRight);
if(FrontRight!=1) {Serial.println(". Obstacle Detected!");}
else {Serial.println(". OK");}
Serial.print(" Left: ");
Serial.print(FrontLeft);
if(FrontLeft!=1) {Serial.println(". Obstacle Detected!");}
else {Serial.println(". OK");}
Serial.println("Decision: ONWARD!");
Serial.println("##############################");
Serial.println("");
Move_forward();
}
void Negative_Decision() {
analogWrite(l_speed,100);
analogWrite(r_speed,100);
int FrontRight = digitalRead (IRSensorRight);
int FrontLeft = digitalRead (IRSensorLeft);
int CenterTop = digitalRead (IRSensorTop);
duration = sonar.ping_median(iterations);
delay(50);
duration2 = sonar2.ping_median(iterations);
delay(50);
LeftBottom=(duration / 2)* 0.0343;
RightBottom=(duration2 / 2)* 0.0343;
Serial.print("Left Bottom: ");
Serial.print(LeftBottom);
Serial.println(" cm.");
Serial.print("Right Bottom: ");
Serial.print(RightBottom);
Serial.println(" cm.");
Serial.print(" Top: ");
Serial.print(CenterTop);
Serial.println(".");
Serial.print(" Right: ");
Serial.print(FrontRight);
Serial.println(".");
Serial.print(" Left: ");
Serial.print(FrontLeft);
Serial.println(".");
Serial.println("Decision: RUN AWAY!");
Serial.println("##############################");
Avoidance_Procedure();
}
void loop() {
analogWrite(l_speed,100);
analogWrite(r_speed,100);
int FrontRight = digitalRead (IRSensorRight);
int FrontLeft = digitalRead (IRSensorLeft);
int CenterTop = digitalRead (IRSensorTop);
duration = sonar.ping_median(iterations);
delay(50);
duration2 = sonar2.ping_median(iterations);
delay(50);
LeftBottom=(duration / 2)* 0.0343;
RightBottom=(duration2 / 2)* 0.0343;
if (
LeftBottom >= 8 ||
RightBottom >= 8 ||
FrontLeft !=1 ||
FrontRight !=1 ||
CenterTop !=1 )
{
Negative_Decision();
}
else{
Positive_Decision();
}
}