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 10, 2015

Final Deliverables//Mae and Chloe

Final Code:

#include <PCM.h>

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

const int buttonPin = 2;     // the number of the pushbutton pin
const int ledPin =  13;      // the number of the LED pin
const int inputPin = 3;               // choose the input pin (for PIR sensor)

// variables will change:
int buttonState = 0;         // variable for reading the pushbutton status
int pirState = LOW;             // we start, assuming no motion detected
int val;                    // variable for reading the pin status

void setup() {
  Serial.begin(9600);
  // initialize the LED pin as an output:
  pinMode(ledPin, OUTPUT);    
  // initialize the pushbutton pin as an input:
  pinMode(buttonPin, INPUT);  
}

void loop(){
  // read the state of the pushbutton value:
  buttonState = digitalRead(buttonPin);
  val = digitalRead(inputPin);  // read input value
 
  // check if the pushbutton is pressed.
  // if it is, the buttonState is HIGH:
  if (buttonState == HIGH) {  
    // turn LED on:  
    digitalWrite(ledPin, HIGH);
    startPlayback(sample, sizeof(sample));
  }  else if (val == HIGH) {            // check if the input is HIGH
    digitalWrite(ledPin, HIGH);  // turn LED ON
    if (pirState == LOW) {
      // we have just turned on
      Serial.println("Motion detected!");
      startPlayback(sample, sizeof(sample));
      // We only want to print on the output change, not state
      pirState = HIGH;
    }
  } else {
    digitalWrite(ledPin, LOW); // turn LED OFF
    if (pirState == HIGH){
      // we have just turned of
      Serial.println("Motion ended!");
      // We only want to print on the output change, not state
      pirState = LOW;
    }
  }
}






Final Video:


Final PDF:

No comments:

Post a Comment