diff --git a/dist/index.html.gz.h b/dist/index.html.gz.h
index 16950819..afadd2cf 100644
--- a/dist/index.html.gz.h
+++ b/dist/index.html.gz.h
@@ -1,2 +1,2 @@
-#define index_html_gz_len 11482
-static const char index_html_gz[] PROGMEM = {31,139,8,0,0,0,0,0,0,19,237,125,107,119,219,56,146,232,247,251,43,16,166,39,150,218,20,37,219,177,147,200,150,178,110,219,233,228,110,30,222,216,153,222,61,30,95,29,72,130,44,38,20,169,33,41,59,94,183,254,251,173,7,64,130,15,217,74,38,51,219,167,239,77,207,88,36,1,2,85,133,66,189,80,0,15,30,141,163,81,122,59,87,98,154,206,130,254,1,254,21,129,12,175,122,142,10,29,184,87,114,220,63,152,169,84,138,209,84,198,137,74,123,206,34,157,180,158,67,89,234,167,129,234,191,243,223,250,87,211,84,188,94,12,15,218,252,232,32,240,195,47,34,86,65,207,73,210,219,64,37,83,165,82,71,76,99,53,233,57,211,52,157,39,221,118,123,38,191,142,198,161,55,140,162,52,73,99,57,199,155,81,52,107,103,15,218,59,222,142,247,172,61,74,146,252,153,55,243,161,86,146,56,186,143,98,147,87,126,138,173,192,207,116,49,244,252,40,127,175,149,70,87,87,129,106,111,123,240,95,177,73,93,148,181,92,129,187,182,43,232,231,115,226,141,130,104,49,158,4,50,86,4,186,252,44,191,182,3,127,104,183,158,4,254,88,197,237,23,222,51,175,83,234,152,139,126,108,199,137,10,212,40,245,255,91,121,159,147,118,199,219,218,246,246,168,215,252,121,214,255,206,63,13,101,234,171,189,133,189,63,45,227,76,101,247,245,76,188,22,202,153,234,57,215,190,186,153,71,49,176,206,40,10,83,21,2,239,221,248,227,116,218,27,171,107,127,164,90,116,227,250,161,159,250,50,104,37,35,25,168,222,22,52,241,168,213,186,240,39,34,72,197,155,19,241,226,178,255,191,4,252,59,72,70,177,63,79,69,18,143,214,198,9,103,195,110,50,245,175,129,23,159,121,59,249,61,80,23,250,105,115,147,216,254,193,163,11,21,142,253,201,101,171,213,63,32,124,250,30,206,29,21,183,226,232,230,110,24,197,120,57,140,210,52,154,117,183,230,95,69,18,193,232,139,199,163,209,104,25,200,161,10,238,198,126,50,15,228,109,119,24,68,163,47,75,47,150,99,63,106,69,243,212,143,194,187,185,28,143,253,240,170,219,17,187,243,175,251,163,69,156,68,113,119,30,249,64,148,120,137,48,207,100,56,110,13,23,208,122,152,220,5,126,146,182,8,134,110,24,133,106,127,38,227,43,63,236,118,246,179,102,42,239,136,192,207,0,240,67,24,124,213,34,56,244,187,173,24,167,120,119,75,205,246,163,107,21,79,130,232,166,43,23,105,180,244,38,81,60,107,193,200,196,183,119,166,27,209,17,219,29,192,176,99,151,10,190,198,113,140,163,224,142,70,174,187,221,81,179,66,165,34,37,108,64,152,72,128,79,218,240,84,28,71,113,83,240,111,203,15,39,81,246,10,226,187,180,11,70,81,0,164,138,213,120,127,2,93,183,18,152,1,93,239,25,118,155,87,234,14,21,192,160,238,52,147,117,55,26,27,133,98,57,1,50,231,165,77,40,213,67,59,76,67,131,54,162,188,244,174,100,170,110,228,109,11,8,77,133,64,41,153,118,137,122,203,199,186,5,225,141,227,104,62,142,110,96,92,163,196,199,1,238,106,30,46,81,183,250,70,107,166,194,133,61,88,76,156,199,48,183,38,19,127,212,74,66,127,50,41,82,227,49,61,83,227,150,174,3,0,127,109,77,21,13,232,110,199,26,209,214,173,30,83,211,217,125,195,225,133,242,122,40,227,187,161,28,125,185,138,163,5,176,146,38,245,213,80,54,158,110,185,248,191,93,215,123,209,124,228,207,112,14,203,48,221,215,179,0,89,123,145,32,23,114,35,173,97,12,172,232,22,238,186,83,4,75,15,223,227,201,100,178,244,128,158,32,62,128,36,99,9,220,86,233,24,43,233,30,202,19,204,99,208,87,96,114,51,245,83,213,74,213,108,222,154,251,163,47,208,171,166,206,54,16,39,239,166,139,239,0,120,87,8,62,12,74,35,141,4,13,172,251,88,238,141,183,38,19,209,113,17,6,177,219,249,11,94,200,78,167,35,182,58,157,191,52,247,107,103,150,153,140,59,60,85,166,11,85,211,61,207,19,108,101,191,36,31,242,250,192,164,97,221,91,32,14,71,13,124,85,180,196,142,154,173,0,163,40,76,214,194,23,102,19,227,10,248,237,121,123,123,123,207,0,225,14,220,237,128,198,134,127,116,167,233,208,233,76,196,94,86,105,2,119,207,77,37,108,134,232,195,200,92,203,0,254,106,24,239,170,3,9,228,52,210,40,80,147,180,235,237,102,152,34,206,22,250,245,195,60,15,22,73,11,244,14,252,69,4,231,119,133,185,102,83,122,20,0,222,93,144,213,211,50,209,203,109,8,22,159,221,137,31,131,200,141,38,45,180,164,138,194,158,69,103,198,243,102,14,164,209,188,92,194,178,2,113,91,183,219,64,174,236,21,155,169,237,180,88,240,80,71,30,25,116,166,109,77,35,100,88,211,164,158,123,48,203,204,19,86,60,52,104,25,143,131,214,18,230,255,207,64,131,101,26,73,143,218,206,83,120,72,131,165,31,108,121,79,95,220,67,144,137,175,130,49,212,13,230,245,90,43,151,245,91,222,54,242,73,153,113,64,82,7,183,243,169,15,210,196,75,230,48,129,0,202,59,25,250,51,73,226,24,31,137,173,68,128,248,71,201,172,4,207,133,253,214,141,26,126,241,211,86,177,230,118,77,213,37,154,10,185,124,7,51,7,234,95,131,46,6,40,12,142,192,107,203,97,52,54,154,211,88,7,219,29,84,37,19,48,153,172,89,77,207,254,109,166,198,190,20,81,24,220,10,48,61,148,10,5,136,74,209,192,70,105,108,68,119,7,245,80,243,174,174,217,93,108,98,157,54,158,62,95,217,70,103,221,54,158,237,61,95,209,198,214,238,243,53,219,120,241,98,123,85,27,91,123,216,134,55,139,198,96,248,97,5,225,37,104,223,70,97,171,192,177,85,131,75,41,101,216,210,148,122,32,52,180,154,20,57,95,180,72,14,105,254,222,155,236,213,212,72,96,66,101,42,106,111,111,185,8,60,201,64,172,50,197,44,11,172,88,115,149,1,86,83,143,140,32,45,114,70,83,63,24,55,239,42,236,253,111,95,212,237,36,6,35,58,17,200,161,119,147,56,154,221,129,1,16,38,104,109,117,201,84,110,108,53,69,28,165,96,177,52,58,205,101,26,221,83,190,179,215,25,171,171,38,140,154,153,1,197,246,183,185,3,83,152,55,84,104,127,101,113,214,188,151,185,41,173,49,92,165,170,96,64,121,163,86,94,14,83,109,150,155,156,96,153,46,193,28,39,187,251,160,205,78,43,178,69,191,214,234,71,3,223,187,138,34,112,251,228,220,79,74,70,255,231,191,47,84,124,11,22,63,56,48,250,134,252,149,130,201,95,219,238,186,46,237,231,178,71,251,112,211,235,186,182,159,87,120,182,15,247,240,128,43,4,22,129,138,147,17,216,201,232,89,110,121,207,193,29,202,159,181,126,72,31,43,188,230,90,143,249,31,238,172,206,83,134,171,4,44,85,16,42,48,89,173,26,63,26,187,130,131,252,121,133,127,92,219,33,135,102,82,245,53,109,127,150,215,146,159,58,253,201,34,36,49,33,192,252,62,143,94,39,65,67,186,202,141,155,119,178,221,219,222,221,117,21,255,196,244,179,127,45,99,145,184,169,59,234,189,147,233,212,3,182,213,213,221,169,126,226,135,230,73,216,107,140,54,167,205,246,246,190,63,105,140,122,189,105,51,233,165,189,206,190,10,18,117,135,13,13,123,163,214,116,63,185,1,6,157,54,210,94,216,247,118,95,14,219,141,237,22,60,110,118,225,10,95,119,71,205,187,145,76,148,144,221,164,215,80,173,184,217,30,110,54,212,65,252,114,175,219,105,238,15,99,37,193,20,197,10,10,43,196,45,137,21,182,237,130,24,11,100,75,97,193,211,101,210,238,237,45,99,149,46,226,240,110,218,77,220,164,155,186,224,30,46,151,25,37,62,254,250,75,26,189,62,251,171,161,196,86,175,215,3,113,177,0,15,42,77,188,64,133,87,233,244,201,147,134,234,73,239,202,141,225,239,208,149,240,55,110,26,242,84,136,51,170,16,103,218,3,17,12,36,234,64,219,233,203,78,119,218,78,221,97,47,109,35,145,13,69,52,226,35,0,191,99,227,131,148,0,66,108,78,127,206,232,224,34,86,63,79,203,228,0,106,108,110,255,60,173,41,69,154,0,73,54,159,102,165,69,154,132,238,117,119,184,92,174,203,69,63,53,12,245,26,205,187,159,26,227,104,68,212,106,122,240,192,25,77,225,37,229,184,14,168,158,0,126,173,170,72,48,213,251,169,145,78,253,164,9,132,83,30,24,243,141,166,23,43,208,103,35,213,104,255,237,111,237,43,215,105,59,214,35,239,231,191,181,219,174,227,52,247,149,151,130,124,191,82,113,195,193,150,121,6,56,238,69,122,217,92,54,93,27,12,64,124,124,91,132,81,67,195,32,218,175,103,181,148,155,50,132,210,64,232,205,97,114,2,19,52,28,112,12,231,139,148,109,93,104,3,44,184,49,180,136,116,113,154,174,223,75,247,101,198,40,146,112,242,1,36,252,143,120,228,211,251,55,231,131,211,195,143,135,239,206,122,119,192,21,239,124,112,105,18,48,112,118,92,224,26,125,183,243,172,131,119,191,144,10,11,85,146,128,33,182,187,116,63,189,25,156,31,254,114,214,187,184,75,229,85,215,73,229,16,172,158,137,15,112,199,224,108,141,131,219,174,243,27,222,47,221,188,66,2,67,59,183,107,156,209,3,187,74,160,198,118,133,183,39,199,133,98,10,42,217,21,62,210,3,187,202,236,239,105,106,215,120,247,31,231,231,206,242,18,1,126,245,230,228,237,113,6,178,28,3,202,131,69,162,98,12,214,217,175,28,98,137,200,75,208,78,239,58,159,244,189,0,205,47,2,208,76,96,7,129,213,12,94,37,14,138,0,219,96,46,145,191,208,153,233,58,32,13,161,28,238,228,208,162,142,1,148,251,158,203,36,185,1,59,207,238,251,52,123,198,189,154,251,31,209,235,52,74,210,50,174,175,179,103,220,223,153,10,38,45,96,242,40,78,193,189,53,111,8,232,47,129,55,4,42,150,43,1,146,97,42,142,143,94,159,138,88,129,125,145,164,235,245,143,55,3,208,79,169,63,26,248,69,70,160,135,226,205,169,56,28,143,99,96,178,12,156,172,64,114,129,104,128,205,115,173,196,16,68,192,23,4,11,134,73,28,191,62,58,109,126,15,12,131,80,165,51,153,124,169,135,229,189,41,100,88,244,173,233,148,136,144,85,254,174,222,117,180,173,190,247,95,185,176,76,17,139,20,26,16,153,8,221,144,184,153,162,27,146,67,37,124,180,111,149,63,242,39,56,177,214,6,17,152,109,164,6,195,1,248,39,5,110,121,133,207,197,243,206,182,183,181,53,20,239,168,84,131,53,17,105,188,80,174,160,87,129,57,149,56,57,59,125,190,189,183,199,220,106,222,193,22,61,33,206,227,91,102,96,127,34,110,163,197,70,172,196,84,94,251,196,91,19,95,0,137,134,126,224,167,183,98,30,71,195,64,205,18,207,64,207,17,229,129,118,39,28,151,239,147,238,157,131,253,59,93,231,28,127,92,103,34,65,193,195,237,43,250,93,174,192,22,176,4,243,223,70,241,232,68,180,197,233,191,159,11,122,174,39,33,136,3,208,200,6,33,32,58,207,199,141,163,147,13,209,192,171,247,31,95,109,63,125,219,217,18,20,133,154,128,134,104,10,172,0,13,233,26,27,167,111,193,235,123,214,126,123,254,252,69,167,179,97,85,92,57,46,73,65,60,142,146,176,2,235,217,251,245,192,60,123,191,177,102,47,192,88,42,45,247,243,241,228,236,100,61,130,80,205,117,251,2,97,95,238,9,4,126,185,31,205,229,216,60,150,226,236,89,36,66,251,154,162,209,233,193,165,4,30,25,55,247,69,168,174,40,76,1,212,189,6,203,30,189,59,255,42,148,129,104,196,10,87,12,80,132,181,182,169,45,116,73,35,9,130,21,26,93,119,8,230,114,244,5,168,3,226,81,201,52,41,138,109,44,17,89,9,131,127,14,179,32,92,204,134,10,186,131,249,225,163,187,137,81,72,170,37,62,190,18,220,96,130,178,53,197,146,225,34,24,38,43,129,137,11,202,174,8,204,96,174,226,65,16,69,243,213,80,9,168,34,184,138,22,104,25,104,166,134,17,243,62,74,145,4,122,15,148,184,138,96,190,190,6,237,15,85,41,198,153,136,153,146,33,204,228,24,231,57,152,30,87,83,48,66,92,12,234,137,0,229,210,108,17,164,126,10,162,18,26,240,214,196,6,125,16,141,203,0,102,69,26,197,5,45,117,126,126,106,200,102,74,25,135,119,216,215,60,240,71,60,238,92,136,188,89,36,15,13,185,86,86,24,235,194,213,10,84,112,195,91,18,85,212,254,225,233,27,79,124,58,166,11,1,64,67,155,65,112,11,111,141,20,52,13,44,183,224,126,148,25,54,87,36,17,147,193,244,146,76,163,69,0,173,170,124,74,96,211,107,26,5,139,52,2,120,129,193,227,20,135,211,143,10,150,193,33,20,183,116,177,48,197,76,4,44,194,120,158,1,152,235,32,98,188,208,40,20,204,134,91,139,21,49,68,154,82,236,67,129,106,240,213,24,16,135,57,214,33,136,205,124,90,115,82,64,245,17,134,162,111,7,180,212,105,65,124,108,74,4,151,104,59,10,40,140,247,200,108,24,94,2,141,165,123,53,149,245,164,136,66,79,28,171,137,132,17,38,206,68,124,18,52,70,232,109,34,48,12,159,89,190,103,76,97,76,158,62,127,254,226,133,193,7,94,211,232,172,55,6,104,61,14,192,208,3,64,202,70,164,48,143,25,141,99,160,56,74,193,216,54,78,128,180,84,117,24,71,95,192,207,23,31,72,57,209,168,48,169,111,97,94,17,248,100,61,52,212,87,57,155,7,160,43,102,183,248,158,126,109,132,17,191,231,207,159,174,4,153,108,220,2,200,105,4,236,10,6,101,10,74,37,172,64,78,165,34,43,53,150,37,221,18,241,243,90,137,53,44,56,0,39,12,97,23,158,1,149,147,118,151,233,60,240,199,217,37,2,217,238,146,15,2,143,61,113,166,148,248,120,114,120,252,238,132,218,158,44,226,20,101,199,88,165,210,15,86,75,183,42,82,139,249,24,102,219,3,184,113,165,251,81,4,148,230,139,33,96,53,21,214,59,137,39,78,53,171,165,83,16,44,146,38,50,77,118,152,186,113,52,19,145,6,92,115,22,198,119,231,229,55,72,116,83,109,178,103,244,132,187,241,131,0,39,34,240,46,10,83,221,33,8,6,52,113,240,149,111,32,3,106,188,135,168,64,117,190,101,156,109,154,152,151,61,241,27,219,143,188,118,194,14,115,194,197,46,77,191,201,2,208,250,18,226,218,42,191,132,106,13,158,243,11,132,52,200,62,221,46,80,209,184,41,37,192,214,231,128,26,239,140,71,16,10,68,217,59,19,198,85,1,63,73,176,229,80,152,184,107,119,91,231,152,81,75,243,85,222,89,214,233,119,247,57,10,112,145,114,192,230,13,143,118,165,251,35,170,67,230,61,152,64,231,92,135,33,57,138,194,144,23,16,140,133,4,198,70,34,113,252,30,24,22,180,198,201,18,15,71,193,98,12,245,223,254,118,78,172,62,244,97,226,66,233,189,243,121,181,126,47,160,152,248,40,69,6,85,76,11,230,108,1,189,119,6,254,130,155,1,232,81,83,228,72,184,188,252,66,138,129,186,79,196,198,136,9,161,198,27,132,196,6,233,149,236,81,133,22,128,31,180,201,184,0,101,184,85,152,172,82,200,97,180,96,37,138,166,36,16,214,181,36,189,43,84,10,148,51,205,105,218,141,215,247,82,206,8,11,203,79,57,214,32,216,174,74,129,132,211,104,166,6,192,111,62,70,120,211,129,165,118,99,53,241,191,22,157,250,153,58,52,53,153,31,115,93,124,170,171,103,126,27,168,115,151,49,81,33,106,74,114,77,174,98,90,31,100,61,85,104,111,35,225,22,115,133,109,66,85,146,60,54,96,46,80,120,209,13,232,106,20,164,240,80,38,108,247,14,209,30,73,105,36,132,180,77,150,245,120,136,12,198,65,230,55,145,222,169,196,130,114,191,74,112,57,163,185,237,61,21,191,190,254,111,65,109,208,40,7,160,157,145,121,88,202,217,206,40,9,56,227,149,134,17,154,26,40,181,193,228,53,94,222,163,7,135,57,196,154,93,135,126,28,151,125,62,16,23,182,11,104,15,116,209,22,142,39,219,79,193,152,186,65,139,30,44,183,192,70,146,90,20,167,88,40,222,114,161,22,69,244,136,234,211,52,13,53,172,15,130,250,238,205,123,16,47,232,115,189,253,240,27,120,96,209,141,227,190,126,243,235,107,96,35,80,249,142,251,238,240,63,161,92,126,125,0,94,182,25,6,72,206,176,14,228,183,108,83,28,153,114,134,250,183,169,63,154,10,253,82,82,50,9,51,9,6,124,136,243,80,83,243,1,124,8,11,194,231,221,155,99,188,26,23,240,185,31,11,3,73,21,254,51,244,139,142,178,226,85,224,147,251,100,3,142,136,100,192,131,180,249,68,204,52,81,56,90,217,139,96,28,170,113,2,102,2,189,191,58,216,1,83,53,69,49,215,189,155,177,223,163,186,143,58,203,127,28,119,61,120,53,142,173,30,182,146,99,251,38,28,197,74,18,38,169,214,29,120,143,211,28,80,149,179,104,1,114,71,187,188,136,28,220,113,23,132,59,80,68,155,81,104,44,146,35,96,91,234,121,213,204,254,199,56,214,206,106,85,83,48,225,217,92,154,4,139,100,202,194,2,156,214,114,132,13,44,25,44,23,121,185,246,38,193,51,156,45,102,5,79,41,0,112,40,107,11,205,183,244,6,23,250,233,101,178,228,180,229,4,79,100,50,173,199,6,68,141,188,37,93,228,207,40,103,32,85,32,118,230,168,83,146,180,212,194,154,46,151,101,22,198,248,39,240,103,126,37,232,173,155,198,10,66,87,248,38,36,109,75,25,43,97,108,66,183,217,24,91,110,217,110,167,179,58,126,82,16,224,5,151,124,128,161,131,52,5,163,0,46,20,56,206,193,120,101,232,66,152,186,194,170,155,217,61,152,144,153,136,41,200,236,121,49,222,33,117,128,2,223,68,69,127,106,71,91,72,177,81,184,130,152,212,96,13,252,139,150,188,12,153,177,41,224,33,26,96,76,218,52,106,178,186,28,73,12,76,149,58,101,61,151,117,43,48,17,17,250,126,199,209,146,98,187,212,10,76,21,131,221,98,14,53,109,151,119,187,211,153,125,87,60,40,167,46,32,139,57,60,215,160,154,215,160,111,161,246,55,83,184,24,37,178,201,83,165,11,200,58,156,19,148,167,57,145,48,225,227,34,91,117,92,49,147,95,137,81,153,88,91,157,14,60,235,152,121,149,172,102,186,251,232,50,99,230,95,77,138,172,66,13,246,19,25,27,12,112,246,143,36,90,142,44,249,88,198,151,2,106,42,247,23,11,184,237,172,11,59,59,213,90,162,97,206,88,65,54,255,74,94,23,79,73,83,154,173,226,128,153,5,166,63,233,39,46,179,130,83,198,92,69,39,201,18,21,102,178,227,184,124,60,57,59,71,7,118,14,122,69,113,248,44,23,0,6,250,58,240,234,167,62,91,150,131,204,234,163,149,133,1,47,49,19,1,114,172,78,216,8,205,170,146,181,38,172,170,140,226,43,128,232,227,175,191,252,246,27,7,77,69,131,173,52,120,180,121,116,116,142,113,153,87,159,206,59,207,95,52,93,109,214,38,86,147,89,107,217,188,199,78,80,143,9,202,187,34,35,118,50,1,26,102,94,48,250,76,106,6,98,27,156,19,224,122,164,81,130,151,218,76,70,199,153,194,5,55,32,36,132,15,242,133,136,141,230,35,56,136,95,214,246,11,24,123,219,47,208,225,171,213,186,91,141,153,154,180,114,3,242,105,226,95,149,67,234,68,194,241,34,206,22,88,76,53,166,101,86,133,208,176,226,134,164,218,197,225,104,132,114,242,20,83,108,117,61,233,167,164,252,35,221,18,146,132,214,123,53,158,6,40,139,31,216,183,169,131,121,194,142,79,29,204,4,16,65,204,149,116,143,33,45,145,63,0,252,84,38,213,183,76,32,145,218,12,97,240,173,193,89,23,232,136,184,160,196,182,69,48,172,42,107,145,56,89,16,141,49,190,114,43,226,5,229,115,126,43,88,44,106,106,97,202,226,225,201,58,240,160,13,138,163,75,33,115,140,135,225,77,246,254,247,0,5,108,185,8,11,160,189,66,115,71,140,216,80,172,64,247,190,188,104,2,240,33,196,164,48,201,82,98,184,141,116,69,61,68,19,213,34,91,69,180,18,124,151,238,175,31,63,124,58,29,156,157,31,158,159,12,254,253,228,191,206,122,23,142,22,106,142,9,73,56,195,44,219,1,110,180,15,230,76,105,93,49,159,244,112,67,185,147,240,203,148,112,190,168,224,218,207,158,15,80,94,96,99,32,159,52,173,160,96,54,95,128,94,24,152,55,21,73,25,184,200,226,170,112,109,98,169,249,99,246,101,157,104,170,95,188,116,129,28,131,119,31,142,79,16,254,15,147,9,20,158,161,211,205,41,115,112,247,10,116,106,126,71,101,195,0,87,221,185,196,92,7,148,130,15,87,31,66,104,244,211,241,233,224,244,227,135,243,15,71,31,222,14,254,122,242,241,236,205,135,247,208,193,174,187,119,233,30,159,188,58,252,244,246,124,144,215,201,170,244,118,221,44,215,204,213,14,255,89,246,128,210,78,97,40,122,143,182,220,32,146,200,90,103,218,143,193,71,164,117,224,134,180,217,155,177,253,232,16,155,130,7,152,186,229,56,143,122,65,52,34,202,123,38,47,129,19,99,110,212,240,44,66,70,232,133,234,70,252,102,238,26,206,13,102,181,57,155,149,215,54,157,238,243,45,167,185,159,189,232,69,161,246,217,122,121,222,77,243,14,186,53,192,115,79,152,26,132,193,161,253,159,26,78,121,95,138,211,244,230,168,246,49,5,231,0,174,250,206,102,186,233,28,180,233,178,185,92,46,169,129,232,181,250,90,232,131,243,157,156,206,87,103,83,121,105,116,70,92,219,216,218,107,194,205,167,57,136,145,35,160,102,163,185,100,162,40,67,37,187,137,10,5,59,249,112,120,224,57,252,21,237,167,6,64,78,188,244,102,220,68,63,82,87,134,199,87,124,69,79,49,214,150,213,60,7,166,107,214,141,79,172,38,104,134,211,19,114,167,16,190,188,205,2,112,63,53,54,30,235,30,4,101,43,93,32,1,121,183,68,207,217,216,84,155,27,206,229,70,211,27,33,39,234,118,16,138,74,35,36,173,2,255,161,215,175,84,122,180,136,49,63,234,88,163,219,179,18,174,152,218,32,55,226,68,189,9,211,70,78,167,43,67,167,102,161,145,10,74,89,27,200,2,6,49,74,114,166,101,103,64,16,24,1,97,108,56,4,36,12,189,139,121,89,135,225,152,167,4,51,181,213,30,112,217,163,18,145,77,74,218,93,62,16,221,28,38,26,164,166,107,134,179,91,69,25,74,53,104,221,10,42,72,164,180,247,97,248,25,243,52,113,219,154,175,146,70,121,210,122,218,48,193,156,178,0,108,243,60,105,45,205,8,48,240,252,228,228,239,11,25,52,210,139,173,75,143,194,125,212,199,169,140,229,44,113,21,230,153,149,166,114,199,77,117,70,90,191,243,178,210,105,198,171,233,69,231,178,217,173,148,211,198,150,70,179,34,31,150,75,151,7,224,83,28,244,42,121,125,181,228,73,123,53,132,113,101,175,76,101,22,61,189,158,106,162,225,127,227,188,91,128,240,84,24,54,48,10,243,205,177,131,149,50,118,208,123,30,51,46,0,211,25,174,147,121,224,131,68,114,225,210,4,218,27,178,249,251,239,141,180,215,105,186,14,102,34,3,151,128,134,234,245,80,214,163,230,171,246,200,203,44,216,161,150,26,109,157,248,147,128,148,3,169,6,127,37,253,77,151,213,57,106,19,166,196,110,191,255,254,19,242,255,255,62,251,240,190,145,17,18,200,97,79,65,208,174,227,64,81,75,159,72,18,53,112,124,237,169,82,156,181,133,121,162,231,174,158,38,213,9,98,201,182,222,192,51,78,98,195,238,31,119,104,254,228,97,54,114,227,110,17,7,93,11,206,77,231,37,237,53,248,16,254,199,66,129,88,32,83,218,157,169,116,26,141,193,189,251,116,238,184,216,95,23,241,243,216,44,240,39,183,208,168,171,247,39,210,252,114,228,92,231,17,68,97,251,115,130,250,93,91,101,221,7,233,0,132,128,23,57,91,86,6,42,78,225,2,152,114,75,237,160,84,13,199,71,188,91,117,21,110,26,47,167,157,220,130,35,12,190,231,93,6,252,135,179,239,133,30,7,135,0,208,60,114,70,43,82,31,163,155,158,157,90,234,74,158,38,126,207,57,72,227,62,176,242,38,94,141,251,142,11,87,27,7,36,209,244,118,102,35,112,146,139,75,71,140,192,10,75,122,142,189,43,214,17,5,177,220,238,111,184,212,90,219,52,183,170,97,92,17,95,163,209,244,193,70,199,254,181,105,3,119,91,114,94,44,45,231,232,189,4,240,92,187,94,253,141,125,232,166,129,184,135,189,206,126,120,80,107,251,104,97,181,31,110,110,50,157,146,94,109,189,139,240,210,141,122,178,215,75,126,255,61,233,245,238,177,149,158,60,121,84,223,147,37,22,246,9,25,218,189,106,161,35,10,27,72,55,54,27,209,75,71,232,25,213,117,156,38,80,135,137,99,136,139,130,164,199,203,38,142,217,145,206,75,89,68,108,116,135,209,30,197,125,42,61,39,2,27,82,20,117,107,2,45,10,238,103,52,85,96,39,141,185,31,167,47,156,205,68,15,3,65,217,119,116,222,182,224,135,48,14,253,250,17,98,242,151,177,26,163,143,141,222,198,44,186,86,45,179,9,89,175,161,102,72,153,183,178,13,76,34,223,202,196,175,226,134,3,63,227,16,238,203,192,96,129,211,70,78,95,146,49,154,89,162,197,172,108,189,141,129,127,90,152,47,132,50,156,238,120,211,42,72,199,90,139,244,201,147,92,148,194,124,214,173,59,110,201,172,172,216,193,29,87,107,228,47,234,54,129,74,184,171,252,68,130,68,177,21,175,201,2,223,120,108,26,214,38,21,15,46,207,16,176,134,92,191,96,61,73,163,196,55,46,86,218,77,89,166,120,191,243,228,73,67,51,13,238,56,240,100,154,198,13,135,28,16,208,87,204,9,195,232,107,181,240,229,97,28,203,91,48,10,232,183,161,48,1,254,37,254,173,226,130,68,32,253,209,245,185,94,151,211,211,233,26,179,230,181,85,10,62,208,64,91,1,0,85,189,61,192,57,54,9,12,72,201,166,169,182,81,67,85,149,25,246,96,114,128,254,87,96,202,0,249,108,195,75,98,73,102,108,73,172,96,140,43,121,177,125,9,164,43,195,37,199,99,134,170,113,135,185,248,221,212,37,186,195,111,217,72,234,250,128,108,229,125,173,187,13,102,143,182,128,36,72,147,204,71,68,106,36,171,200,96,215,171,69,56,89,13,40,186,39,168,90,24,94,133,91,5,44,95,162,10,87,62,82,118,20,208,208,20,56,149,95,214,12,90,19,47,4,30,220,79,139,51,203,161,5,153,218,118,151,48,117,148,87,23,241,90,213,101,109,116,236,158,78,107,219,174,235,150,35,75,235,117,171,3,92,107,119,171,219,46,117,155,197,148,30,236,52,143,62,173,211,101,222,110,169,67,142,174,60,216,155,142,59,173,211,149,110,113,105,4,25,152,204,5,89,223,98,130,39,32,108,113,255,113,131,183,215,232,58,122,52,128,247,43,143,106,217,28,164,211,156,220,241,178,1,212,208,108,142,78,134,75,19,94,193,60,38,185,83,141,79,160,25,133,179,86,167,227,31,113,135,85,47,3,145,193,40,211,98,60,55,10,12,208,0,63,227,209,22,70,11,216,51,4,159,200,99,77,117,132,170,172,225,208,41,29,14,111,199,33,201,110,203,115,219,222,186,220,192,119,103,114,110,161,152,219,110,63,129,209,192,123,150,246,141,30,78,222,203,247,13,191,249,18,28,12,80,46,84,1,102,123,177,91,55,92,4,65,147,100,144,95,238,220,216,100,255,236,142,67,236,184,224,63,95,84,76,149,90,24,82,203,195,72,203,30,5,249,109,143,160,138,177,241,146,222,5,90,104,157,253,232,192,104,186,253,8,140,186,228,34,186,236,93,72,248,235,250,248,39,132,63,151,251,185,65,158,41,240,204,36,167,113,124,192,113,168,51,216,239,74,60,219,77,104,43,214,210,157,163,231,80,181,67,128,131,75,220,136,110,218,143,135,139,221,56,100,113,227,30,87,162,19,37,56,12,203,15,104,72,144,241,13,167,58,77,152,83,249,38,104,19,69,112,171,1,47,65,123,236,22,160,97,246,11,248,55,238,114,229,69,250,199,6,237,144,21,229,154,224,173,29,226,136,213,120,49,82,37,222,226,25,89,27,217,48,172,14,214,10,160,139,236,99,5,204,92,153,197,217,224,82,27,10,32,97,150,238,93,21,215,178,129,162,49,230,189,227,117,241,43,91,23,163,24,209,218,219,108,12,44,76,130,123,52,119,179,56,222,24,18,178,251,172,132,168,106,44,148,135,123,127,200,172,105,86,71,150,1,97,168,78,80,84,20,166,131,122,105,49,91,203,31,183,200,247,112,234,228,75,77,61,251,188,37,163,95,84,179,217,173,111,178,78,74,155,56,5,6,58,52,18,247,69,155,116,152,142,52,231,125,209,75,33,55,52,56,77,212,20,12,129,107,194,38,14,218,232,17,208,38,109,56,217,201,70,64,94,126,35,37,84,241,28,9,149,199,157,10,130,18,221,25,123,120,86,135,163,84,243,165,169,154,76,65,75,34,105,248,182,64,140,44,134,51,245,17,63,20,30,20,78,253,43,203,235,94,141,105,13,16,97,112,164,221,248,219,120,179,249,55,207,254,105,180,26,222,207,205,230,203,182,81,32,119,51,249,57,138,187,56,241,220,153,31,210,229,246,37,11,73,184,220,185,116,99,24,44,236,9,238,118,177,0,244,84,247,130,234,83,77,170,131,69,151,48,147,64,27,97,166,85,21,182,124,138,219,192,163,233,235,23,159,164,153,102,147,30,245,213,247,249,119,233,114,40,232,8,29,162,87,81,204,209,160,26,142,64,93,7,92,64,63,178,36,187,240,225,163,30,122,141,48,220,35,230,155,150,214,124,25,147,122,250,193,166,35,26,184,74,0,205,250,50,76,55,157,166,214,164,143,122,41,183,16,32,4,89,3,194,67,94,199,163,46,160,41,85,48,143,12,108,233,69,145,59,168,46,250,65,197,199,115,224,59,176,82,100,198,32,248,0,55,145,231,60,162,231,211,210,64,4,56,105,208,200,161,174,128,166,215,218,114,67,207,173,214,50,115,149,217,145,141,164,125,217,43,14,106,35,245,82,121,53,64,163,193,205,72,213,124,233,64,29,147,185,43,228,53,88,212,184,140,254,200,233,58,255,197,153,157,58,169,112,6,142,59,45,115,134,169,169,238,241,236,51,64,36,139,217,76,198,183,6,84,201,128,248,189,212,131,249,128,73,108,171,67,228,169,135,96,193,48,140,213,215,15,104,91,235,161,107,62,234,181,182,208,72,177,156,110,236,114,226,199,179,27,25,171,22,30,95,232,104,50,59,120,140,161,3,230,9,168,214,97,28,221,128,169,60,64,33,128,106,111,176,136,3,212,24,126,137,181,193,14,72,162,0,44,239,232,74,71,10,179,91,48,191,247,107,184,205,125,96,132,172,248,139,57,112,72,212,7,98,72,200,235,72,76,243,62,74,222,63,232,44,94,220,204,228,161,124,108,176,119,42,65,89,64,23,24,217,149,168,60,208,115,90,196,138,44,75,243,102,118,106,202,220,55,231,143,224,193,22,184,201,57,105,39,254,56,154,182,85,50,199,141,140,131,153,79,219,92,6,80,7,202,3,74,105,108,51,120,117,61,99,88,186,167,42,61,27,201,96,5,137,203,203,138,138,168,75,243,190,96,117,107,154,99,100,134,199,222,4,222,92,231,195,123,92,134,224,247,154,249,25,45,231,20,215,108,128,179,0,183,17,210,182,92,132,62,58,173,26,27,121,156,157,177,161,159,123,177,169,225,93,101,87,67,92,13,201,206,160,184,191,230,126,25,139,124,141,28,49,225,83,79,48,168,198,203,59,142,187,213,233,252,44,189,68,175,228,168,83,20,233,234,230,8,155,195,195,116,126,78,189,41,213,1,127,82,255,6,218,57,205,87,214,141,11,130,229,133,130,150,117,174,129,151,29,107,208,108,55,10,207,205,1,7,43,106,151,81,178,114,127,86,224,228,107,8,243,220,1,134,48,236,217,207,126,198,19,237,218,37,72,242,195,21,42,253,114,242,65,125,143,33,206,252,42,5,43,241,253,148,150,153,160,95,24,82,184,148,189,221,14,155,13,149,99,235,208,216,0,29,111,29,78,72,45,118,157,41,112,11,45,49,185,180,170,253,23,151,86,154,254,210,164,85,6,60,70,234,204,44,242,215,58,198,180,84,14,10,196,78,5,64,167,184,234,16,23,15,167,42,216,118,197,147,173,88,118,36,115,25,82,35,44,80,206,104,227,163,129,197,33,216,224,201,183,2,215,121,16,56,77,172,58,224,24,238,90,224,162,185,5,27,137,190,194,185,151,153,166,195,85,181,16,185,77,29,107,131,239,21,198,191,86,44,220,172,90,246,240,199,198,196,92,181,2,2,206,183,244,76,38,249,203,60,180,171,247,90,152,101,70,97,135,166,211,154,32,170,52,107,35,233,133,188,92,103,241,2,180,131,189,68,177,177,25,34,148,22,192,38,160,77,55,53,11,21,153,5,45,177,66,187,47,112,181,194,90,141,104,186,249,66,132,131,250,174,24,222,47,156,78,235,152,40,120,141,205,60,135,121,213,168,200,226,71,29,115,132,138,66,78,78,107,109,94,60,151,227,63,91,166,33,128,26,38,46,52,133,103,156,129,100,77,219,141,173,159,77,33,157,23,215,104,162,237,73,39,244,208,204,35,65,40,245,10,122,81,68,250,77,123,197,180,113,7,243,152,244,206,190,153,212,246,193,154,232,16,68,184,91,22,216,168,48,100,138,151,227,113,7,14,193,1,28,181,212,117,23,243,70,81,189,98,28,140,139,64,9,175,44,195,169,82,236,226,201,147,114,7,36,120,88,150,57,153,80,227,167,177,188,105,49,94,56,36,148,119,89,181,88,239,48,123,193,94,133,48,68,44,44,69,152,135,62,76,205,174,25,55,48,10,97,180,187,196,65,153,221,202,193,43,117,81,108,134,182,22,54,47,193,172,176,9,173,12,252,217,233,195,105,45,247,20,6,71,215,237,22,45,106,253,212,161,211,120,152,38,180,246,187,170,73,107,21,121,237,38,141,100,43,183,134,174,52,113,54,165,68,80,90,50,58,227,90,50,189,180,197,57,56,129,5,9,218,48,77,23,4,87,139,60,212,90,176,11,109,213,138,60,227,70,98,33,30,121,167,207,66,162,166,64,221,60,198,163,136,117,116,24,105,227,62,128,198,189,65,229,85,1,97,199,193,147,156,12,110,218,87,95,151,112,232,179,251,232,50,216,135,51,193,108,174,119,155,179,122,185,238,200,138,42,225,5,111,136,39,58,81,253,123,72,228,213,175,155,186,53,242,44,11,37,164,113,22,228,192,150,179,181,112,217,235,236,203,131,23,251,114,115,179,153,69,22,242,176,131,161,32,8,120,191,127,32,245,9,235,143,181,134,161,202,5,209,220,199,31,144,195,18,220,1,120,195,161,8,71,29,10,133,126,128,248,66,58,117,81,195,194,204,194,119,74,115,32,135,192,225,101,196,202,104,161,180,210,14,156,221,126,53,69,11,164,2,230,156,212,229,186,113,174,7,188,181,92,150,237,53,29,84,116,46,221,44,40,186,145,9,51,191,158,191,252,106,172,172,151,71,165,116,104,44,91,127,134,82,144,0,49,110,47,232,130,0,167,189,150,39,179,121,122,203,60,131,207,34,24,163,15,225,171,104,180,72,240,150,43,127,8,127,1,7,5,239,129,63,241,108,226,59,134,181,91,23,20,1,172,14,208,124,201,92,190,210,185,150,142,61,248,253,251,151,230,97,194,27,127,144,25,1,27,6,215,176,78,45,217,241,225,218,161,171,153,146,250,133,74,0,147,21,79,133,243,43,167,112,58,205,149,140,194,203,34,182,125,85,121,185,207,70,198,70,190,0,98,230,136,67,20,236,83,94,167,250,74,185,160,252,0,154,53,117,36,92,131,17,31,133,60,120,135,227,113,105,56,210,74,244,25,141,249,202,67,179,96,253,29,217,128,238,61,57,134,203,250,24,237,178,24,230,207,227,204,22,219,226,98,64,61,199,38,81,156,146,61,219,213,177,226,90,30,254,127,143,105,223,140,255,20,28,171,23,78,120,121,103,95,255,246,178,140,91,105,47,75,176,56,215,203,8,18,222,118,11,185,9,111,0,220,134,110,161,102,201,130,89,228,21,69,223,186,181,163,161,227,206,255,167,209,249,122,33,91,147,195,214,171,78,235,197,229,221,150,251,116,249,251,133,190,220,93,54,127,106,55,95,54,50,8,161,171,206,1,198,47,213,65,111,111,119,119,103,247,101,163,176,38,129,121,15,232,2,116,75,143,57,83,115,136,123,131,120,11,189,138,179,237,69,157,175,29,60,78,31,119,13,117,190,190,130,127,14,14,87,243,71,180,177,180,83,52,122,217,85,97,134,238,115,32,98,227,96,145,249,100,161,188,6,47,235,186,149,202,97,194,174,23,237,49,61,199,91,240,12,161,134,54,75,246,245,81,143,181,107,236,33,249,122,217,76,226,156,49,107,154,109,32,43,201,171,138,15,10,189,162,109,160,60,179,35,196,54,18,176,115,116,225,116,227,86,115,149,5,246,154,86,63,29,159,102,77,109,96,27,208,242,2,124,66,110,206,154,24,216,152,94,47,45,96,44,112,11,199,131,72,151,26,130,105,130,167,79,129,98,215,121,115,218,153,213,216,115,251,78,126,10,101,109,126,151,63,161,96,246,16,227,124,240,158,153,75,133,206,242,175,141,96,10,163,68,244,200,201,117,101,238,118,67,29,202,6,203,58,135,75,155,208,218,75,6,231,15,183,219,96,102,85,9,163,252,124,122,77,97,188,108,161,76,224,118,241,150,6,90,75,18,87,230,222,182,91,151,230,211,3,129,128,174,217,75,238,138,25,179,40,167,217,103,21,118,202,157,88,153,54,36,76,212,2,8,91,222,208,83,159,12,130,0,178,238,232,83,32,235,160,109,238,150,6,124,238,26,164,157,181,189,233,31,2,220,30,130,124,195,206,15,128,15,239,75,91,9,51,64,107,67,71,188,72,2,3,110,86,228,49,83,199,100,21,220,45,155,221,98,206,40,157,32,91,159,141,91,198,12,19,114,237,209,135,201,33,151,60,121,179,248,75,179,118,238,213,78,153,202,12,231,57,92,245,234,146,22,29,158,47,172,51,244,45,143,70,175,167,218,80,20,174,201,59,54,57,20,249,198,157,176,89,46,73,22,195,153,159,22,134,138,162,188,181,126,103,53,255,199,155,202,164,228,229,53,171,217,68,24,128,48,199,81,167,189,50,4,42,246,193,61,248,111,197,105,149,224,149,192,72,223,147,178,160,46,120,213,233,50,91,183,44,37,102,202,230,75,233,205,23,201,52,83,173,221,236,157,222,5,104,97,126,122,105,61,213,143,40,139,161,112,78,70,247,226,114,73,75,220,30,112,12,82,240,174,58,89,177,14,170,246,127,70,242,74,138,193,14,107,163,129,105,154,153,131,66,95,240,219,112,48,200,224,104,11,169,38,66,128,44,94,63,216,186,237,186,49,171,51,193,86,242,233,74,80,172,111,129,172,92,165,133,106,7,62,217,162,245,49,103,203,110,165,19,14,105,173,205,191,66,127,61,141,34,20,148,141,59,58,182,26,143,161,238,58,24,160,118,233,51,19,37,239,57,147,242,14,111,46,144,62,136,146,46,251,235,75,116,221,117,228,130,45,65,19,13,123,172,247,141,23,66,87,181,107,227,205,66,202,117,163,38,224,161,163,28,127,236,99,188,11,96,148,188,244,42,60,149,52,152,124,167,25,192,184,42,43,233,2,230,111,250,228,201,163,194,86,167,39,79,10,155,0,107,252,192,63,238,137,227,249,25,238,104,121,230,70,232,16,45,83,254,112,150,62,180,21,204,10,219,125,49,124,88,124,172,95,225,239,152,65,145,222,87,192,234,139,111,156,82,93,189,25,182,104,50,142,162,32,144,243,36,123,44,227,43,252,68,164,249,150,87,86,220,47,122,150,113,11,79,30,115,250,188,196,138,8,248,87,36,171,180,199,36,10,213,105,102,66,115,78,255,135,20,103,59,27,4,88,198,69,28,233,219,99,230,75,149,109,167,248,113,75,169,237,181,34,121,25,65,81,69,184,226,43,96,57,252,208,215,21,45,163,60,19,231,69,202,178,216,43,146,181,44,159,251,70,22,100,22,123,169,105,138,17,179,119,66,151,15,120,237,180,44,71,130,146,73,216,47,46,8,102,244,203,59,51,173,101,33,78,171,119,58,165,221,41,215,168,231,163,236,125,1,86,146,197,130,152,239,209,2,35,96,30,205,23,243,30,159,242,192,15,213,87,128,101,172,0,53,62,234,161,207,199,206,23,134,126,4,211,46,181,198,93,218,163,82,248,166,94,121,80,8,246,22,127,123,103,173,145,41,188,96,134,231,144,111,11,4,99,252,18,5,34,65,226,65,188,25,56,254,181,207,115,177,58,142,180,2,163,215,118,180,183,105,43,141,53,192,51,213,53,96,164,88,232,84,18,173,90,86,48,80,214,229,186,61,180,178,20,28,221,19,183,47,94,233,199,43,250,193,5,243,202,86,179,218,110,184,102,171,60,17,126,161,199,121,235,232,178,218,87,188,163,138,255,194,28,92,33,34,137,178,153,79,107,215,193,157,164,84,154,167,58,106,213,131,223,247,44,139,220,160,149,204,90,59,200,83,185,63,89,212,115,245,109,57,125,14,208,136,247,96,54,26,63,211,56,77,249,27,89,35,164,132,241,56,39,5,29,28,81,56,135,15,12,244,60,143,216,158,61,158,2,250,197,75,27,191,181,145,120,51,46,195,207,73,151,6,250,55,227,226,52,180,18,71,243,185,184,10,57,108,188,128,215,9,237,221,157,46,134,184,115,183,130,84,21,228,167,69,68,236,220,78,234,166,176,203,152,185,139,112,27,141,82,55,190,26,222,224,159,1,222,76,22,105,231,249,11,250,121,177,85,164,131,142,7,59,125,178,29,50,100,86,39,18,152,23,86,164,18,60,176,222,111,182,41,246,87,239,76,52,11,39,15,109,75,220,2,129,195,235,185,189,108,65,190,47,182,50,20,190,41,241,224,187,32,216,134,254,182,255,133,253,1,11,139,157,127,97,127,192,127,226,233,154,253,137,2,119,230,188,200,172,247,35,160,217,5,104,118,255,48,208,236,1,52,123,127,24,104,158,1,52,207,254,48,208,60,7,104,158,255,11,249,180,3,253,29,6,65,214,99,65,71,222,35,91,45,49,72,33,190,254,71,53,139,64,241,96,220,161,78,18,90,166,225,138,221,203,250,144,202,138,133,88,244,70,234,237,69,13,79,31,157,224,92,169,220,99,3,106,219,127,165,33,72,226,154,17,67,115,205,166,24,106,135,226,34,24,158,160,86,176,238,236,234,160,67,138,181,143,142,206,87,86,214,74,39,51,7,51,137,95,236,109,243,129,54,42,47,172,172,156,49,174,85,159,143,124,19,109,241,203,243,123,223,35,117,88,122,239,197,22,190,183,93,54,193,238,99,170,85,70,199,214,246,61,42,60,159,122,5,101,13,191,110,134,210,186,125,76,119,251,175,23,192,54,240,251,173,48,238,149,92,218,60,109,108,101,129,206,39,171,247,82,171,185,164,57,203,234,159,10,41,87,128,188,154,92,150,89,243,109,84,58,203,50,146,191,155,88,44,175,76,0,128,242,214,132,149,177,38,42,169,207,12,58,215,196,239,75,162,196,42,62,147,95,193,158,233,148,158,26,59,7,158,127,31,157,52,55,213,154,128,223,64,50,74,53,20,231,121,222,243,119,83,206,122,90,249,86,249,218,132,181,19,176,255,57,148,253,182,233,13,180,200,211,182,191,139,52,212,204,122,200,115,22,248,143,70,251,155,152,129,114,11,255,1,68,115,117,149,37,79,230,206,131,95,52,7,178,236,78,81,216,21,145,245,99,209,167,184,254,171,245,110,213,65,96,137,94,63,119,4,127,175,120,165,100,206,228,13,54,113,95,156,177,106,115,217,121,162,220,188,126,66,171,237,3,154,13,78,255,55,252,201,21,59,43,31,34,238,186,61,162,107,122,95,103,33,237,106,97,163,224,61,94,151,122,91,27,51,222,1,115,95,87,115,233,199,15,135,233,22,137,14,211,157,66,245,239,4,70,31,26,115,15,44,139,112,29,104,236,163,99,196,39,122,165,60,24,104,9,204,225,119,126,63,31,127,11,127,105,126,178,94,41,127,188,254,129,168,118,217,250,196,107,125,0,241,125,195,131,121,228,209,34,209,204,80,80,225,117,196,33,120,234,34,207,246,139,180,150,228,104,19,86,219,6,255,56,232,130,206,53,193,111,85,148,185,89,125,77,215,133,223,176,90,201,120,182,133,148,233,165,164,13,242,89,248,3,196,198,191,206,157,192,65,184,63,136,252,128,3,33,138,41,191,69,59,248,251,136,82,23,150,250,31,226,127,62,119,26,63,183,48,208,232,253,200,25,112,134,13,255,192,41,112,15,244,68,159,127,5,247,87,220,32,124,155,66,130,181,235,220,22,83,200,128,210,59,204,146,200,216,151,65,116,85,17,147,50,104,173,46,169,141,101,115,209,90,75,127,188,49,129,169,8,126,201,204,207,222,119,250,79,232,108,225,253,156,44,211,237,98,15,122,80,205,135,88,121,187,0,154,64,219,245,147,192,164,161,60,104,20,9,219,48,194,220,131,26,122,114,78,66,255,32,165,211,208,243,180,25,132,232,32,69,228,251,120,96,31,92,102,81,235,227,131,54,220,225,19,252,198,222,105,20,167,217,131,211,56,194,88,74,32,244,166,233,172,32,95,65,44,235,120,3,14,238,191,32,86,68,24,75,155,49,214,214,243,236,85,99,127,120,246,26,94,49,2,72,175,58,228,205,150,13,172,138,117,240,23,113,135,95,164,203,67,206,100,190,82,240,36,28,38,243,253,18,231,150,22,95,254,124,44,155,47,171,174,197,171,85,42,173,99,209,19,227,242,130,33,109,1,177,41,91,138,239,113,98,205,42,115,50,219,206,119,198,213,190,117,144,179,144,19,158,188,41,232,111,235,70,198,180,69,157,239,232,120,80,157,96,86,216,126,180,214,80,84,94,211,251,157,106,134,227,105,255,156,43,10,125,58,180,104,208,215,70,48,105,215,124,91,176,9,163,242,212,98,198,210,49,210,171,144,204,23,77,203,107,148,127,62,254,173,44,186,126,147,200,173,225,3,135,236,247,97,255,48,192,188,60,145,202,47,74,72,145,133,0,219,86,14,131,62,89,33,231,101,143,210,207,250,188,112,139,103,210,223,70,11,76,247,204,51,23,196,80,77,240,251,46,139,249,85,76,71,17,121,2,80,236,159,69,51,197,231,215,115,1,126,19,133,191,54,198,71,216,243,158,208,196,213,159,233,192,207,137,140,162,56,94,204,249,179,115,148,155,67,155,2,61,129,159,215,198,239,198,76,41,247,10,94,33,189,205,237,184,192,89,224,15,35,208,250,61,166,154,171,185,46,73,249,219,51,74,172,64,193,35,199,102,157,233,68,100,60,214,20,202,58,18,67,63,148,120,198,146,249,14,166,202,41,107,14,95,176,14,94,120,248,200,5,208,185,126,250,122,49,20,230,129,192,205,180,72,105,79,228,43,255,82,132,214,17,31,67,240,182,49,243,140,62,92,192,71,123,56,149,44,1,71,48,227,49,198,196,17,239,144,21,146,133,161,16,98,114,107,62,254,198,68,165,143,102,72,114,122,231,244,53,9,108,144,8,72,31,144,126,132,67,157,177,42,127,87,200,15,177,178,76,253,33,125,83,71,159,213,57,162,79,130,232,156,65,65,199,52,212,140,44,144,141,184,131,192,161,47,84,83,147,159,206,126,177,199,169,32,124,219,102,36,28,193,9,149,120,124,91,2,242,86,133,35,158,163,156,46,45,227,148,36,107,11,39,103,113,206,216,105,93,165,197,27,171,72,43,125,219,236,52,178,124,30,251,116,182,71,255,23,58,162,68,20,228,63,101,156,233,96,14,95,39,233,45,11,40,138,21,119,195,40,84,213,181,245,53,83,146,49,201,13,211,177,64,95,233,171,239,67,193,168,35,16,63,196,223,217,152,214,234,178,181,48,208,66,220,86,103,21,1,54,1,70,120,80,170,150,252,133,21,242,245,8,101,175,21,188,184,71,103,218,57,56,127,110,53,178,174,246,64,138,148,79,170,49,239,77,99,82,238,122,115,92,110,69,219,138,188,124,124,83,153,218,197,99,110,28,106,240,45,61,171,182,103,2,194,28,248,188,191,37,147,152,194,44,151,53,85,93,200,204,78,131,98,170,194,21,122,20,124,116,82,214,7,191,246,145,5,175,56,38,250,173,215,84,246,77,213,129,76,87,52,247,62,162,84,45,221,222,60,86,247,181,167,135,134,62,160,193,89,63,114,69,117,60,158,161,199,199,36,89,239,227,22,0,60,31,201,233,255,213,7,69,1,140,198,90,165,152,8,89,219,42,18,185,120,22,83,174,245,138,153,96,15,91,165,255,211,147,188,62,225,236,207,55,217,57,131,78,60,17,31,181,197,243,173,78,208,193,116,39,155,119,252,41,229,82,211,86,131,59,253,111,177,29,87,235,202,114,195,69,206,92,9,80,13,138,59,101,155,32,7,235,255,219,4,63,206,38,248,161,166,192,31,78,86,212,37,1,255,249,36,5,39,90,103,185,205,15,75,135,60,82,206,164,41,45,93,222,251,77,3,98,162,153,176,78,119,41,197,116,209,65,131,73,200,147,90,198,247,44,205,125,103,7,228,42,22,206,63,7,182,64,239,17,63,216,39,120,59,83,221,130,215,31,134,59,219,58,2,136,10,189,255,127,1,206,106,193,19,241,163,0,0};
\ No newline at end of file
+#define index_html_gz_len 11463
+static const char index_html_gz[] PROGMEM = {31,139,8,0,0,0,0,0,0,19,237,125,107,119,219,56,146,232,247,251,43,16,166,39,150,218,20,37,219,177,147,200,150,178,110,219,233,228,110,30,222,216,153,222,61,30,95,29,72,130,44,38,20,169,33,41,59,94,183,254,251,173,7,64,130,15,217,74,38,51,219,167,239,77,207,88,36,1,2,85,133,66,189,80,0,15,30,141,163,81,122,59,87,98,154,206,130,254,1,254,21,129,12,175,122,142,10,29,184,87,114,220,63,152,169,84,138,209,84,198,137,74,123,206,34,157,180,158,67,89,234,167,129,234,191,243,223,250,87,211,84,188,94,12,15,218,252,232,32,240,195,47,34,86,65,207,73,210,219,64,37,83,165,82,71,76,99,53,233,57,211,52,157,39,221,118,123,38,191,142,198,161,55,140,162,52,73,99,57,199,155,81,52,107,103,15,218,59,222,142,247,172,61,74,146,252,153,55,243,161,86,146,56,186,143,98,147,87,126,138,173,192,207,116,49,244,252,40,127,175,149,70,87,87,129,106,111,123,240,95,177,73,93,148,181,92,129,187,182,43,232,231,115,226,141,130,104,49,158,4,50,86,4,186,252,44,191,182,3,127,104,183,158,4,254,88,197,237,23,222,51,175,83,234,152,139,126,108,199,137,10,212,40,245,255,91,121,159,147,118,199,219,218,246,246,168,215,252,121,214,255,206,63,13,101,234,171,189,133,189,63,45,227,76,101,247,245,76,188,22,202,153,234,57,215,190,186,153,71,49,176,206,40,10,83,21,2,239,221,248,227,116,218,27,171,107,127,164,90,116,227,250,161,159,250,50,104,37,35,25,168,222,22,52,241,168,213,186,240,39,34,72,197,155,19,241,226,178,255,191,4,252,59,72,70,177,63,79,69,18,143,214,198,9,103,195,110,50,245,175,129,23,159,121,59,249,61,80,23,250,105,115,147,216,254,193,163,11,21,142,253,201,101,171,213,63,32,124,250,30,206,29,21,183,226,232,230,110,24,197,120,57,140,210,52,154,117,183,230,95,69,18,193,232,139,199,163,209,104,25,200,161,10,238,198,126,50,15,228,109,119,24,68,163,47,75,47,150,99,63,106,69,243,212,143,194,187,185,28,143,253,240,170,219,17,187,243,175,251,163,69,156,68,113,119,30,249,64,148,120,137,48,207,100,56,110,13,23,208,122,152,220,5,126,146,182,8,134,110,24,133,106,127,38,227,43,63,236,118,246,179,102,42,239,136,192,207,0,240,67,24,124,213,34,56,244,187,173,24,167,120,119,75,205,246,163,107,21,79,130,232,166,43,23,105,180,244,38,81,60,107,193,200,196,183,119,166,27,209,17,219,29,192,176,99,151,10,190,198,113,140,163,224,142,70,174,187,221,81,179,66,165,34,37,108,64,152,72,128,79,218,240,84,28,71,113,83,240,111,203,15,39,81,246,10,226,187,180,11,70,81,0,164,138,213,120,127,2,93,183,18,152,1,93,239,25,118,155,87,234,14,21,192,160,238,52,147,117,55,26,27,133,98,57,1,50,231,165,77,40,213,67,59,76,67,131,54,162,188,244,174,100,170,110,228,109,11,8,77,133,64,41,153,118,137,122,203,199,186,5,225,141,227,104,62,142,110,96,92,163,196,199,1,238,106,30,46,81,183,250,70,107,166,194,133,61,88,76,156,199,48,183,38,19,127,212,74,66,127,50,41,82,227,49,61,83,227,150,174,3,0,127,109,77,21,13,232,110,199,26,209,214,173,30,83,211,217,125,195,225,133,242,122,40,227,187,161,28,125,185,138,163,5,176,146,38,245,213,80,54,158,110,185,248,191,93,215,123,209,124,228,207,112,14,203,48,221,215,179,0,89,123,145,32,23,114,35,173,97,12,172,232,22,238,186,83,4,75,15,223,227,201,100,178,244,128,158,32,62,128,36,99,9,220,86,233,24,43,233,30,202,19,204,99,208,87,96,114,51,245,83,213,74,213,108,222,154,251,163,47,208,171,166,206,54,16,39,239,166,139,239,0,120,87,8,62,12,74,35,141,4,13,172,251,88,238,141,183,38,19,209,113,17,6,177,219,249,11,94,200,78,167,35,182,58,157,191,52,247,107,103,150,153,140,59,60,85,166,11,85,211,61,207,19,108,101,191,36,31,242,250,192,164,97,221,91,32,14,71,13,124,85,180,196,142,154,173,0,163,40,76,214,194,23,102,19,227,10,248,237,121,123,123,123,207,0,225,14,220,237,128,198,134,127,116,167,233,208,233,76,196,94,86,105,2,119,207,77,37,108,134,232,195,200,92,203,0,254,106,24,239,170,3,9,228,52,210,40,80,147,180,235,237,102,152,34,206,22,250,245,195,60,15,22,73,11,244,14,252,69,4,231,119,133,185,102,83,122,20,0,222,93,144,213,211,50,209,203,109,8,22,159,221,137,31,131,200,141,38,45,180,164,138,194,158,69,103,198,243,102,14,164,209,188,92,194,178,2,113,91,183,219,64,174,236,21,155,169,237,180,88,240,80,71,30,25,116,166,109,77,35,100,88,211,164,158,123,48,203,204,19,86,60,52,104,25,143,131,214,18,230,255,207,64,131,101,26,73,143,218,206,83,120,72,131,165,31,108,121,79,95,220,67,144,137,175,130,49,212,13,230,245,90,43,151,245,91,222,54,242,73,153,113,64,82,7,183,243,169,15,210,196,75,230,48,129,0,202,59,25,250,51,73,226,24,31,137,173,68,128,248,71,201,172,4,207,133,253,214,141,26,126,241,211,86,177,230,118,77,213,37,154,10,185,124,7,51,7,234,95,131,46,6,40,12,142,192,107,203,97,52,54,154,211,88,7,219,29,84,37,19,48,153,172,89,77,207,254,109,166,198,190,20,81,24,220,10,48,61,148,10,5,136,74,209,192,70,105,108,68,119,7,245,80,243,174,174,217,93,108,98,157,54,158,62,95,217,70,103,221,54,158,237,61,95,209,198,214,238,243,53,219,120,241,98,123,85,27,91,123,216,134,55,139,198,96,248,97,5,225,37,104,223,70,97,171,192,177,85,131,75,41,101,216,210,148,122,32,52,180,154,20,57,95,180,72,14,105,254,222,155,236,213,212,72,96,66,101,42,106,111,111,185,8,60,201,64,172,50,197,44,11,172,88,115,149,1,86,83,143,140,32,45,114,70,83,63,24,55,239,42,236,253,111,95,212,237,36,6,35,58,17,200,161,119,147,56,154,221,129,1,16,38,104,109,117,201,84,110,108,53,69,28,165,96,177,52,58,205,101,26,221,83,190,179,215,25,171,171,38,140,154,153,1,197,246,183,185,3,83,152,55,84,104,127,101,113,214,188,151,185,41,173,49,92,165,170,96,64,121,163,86,94,14,83,109,150,155,156,96,153,46,193,28,39,187,251,160,205,78,43,178,69,191,214,234,71,3,223,187,138,34,112,251,228,220,79,74,70,255,231,191,47,84,124,11,22,63,56,48,250,134,252,149,130,201,95,219,238,186,46,237,231,178,71,251,112,211,235,186,182,159,87,120,182,15,247,240,128,43,4,22,129,138,147,17,216,201,232,89,110,121,207,193,29,202,159,181,126,72,31,43,188,230,90,143,249,31,238,172,206,83,134,171,4,44,85,16,42,48,89,173,26,63,26,187,130,131,252,121,133,127,92,219,33,135,102,82,245,53,109,127,150,215,146,159,58,253,201,34,36,49,33,192,252,62,143,94,39,65,67,186,202,141,155,119,178,221,219,222,221,117,21,255,196,244,179,127,45,99,145,184,169,59,234,189,147,233,212,3,182,213,213,221,169,126,226,135,230,73,216,107,140,54,167,205,246,246,190,63,105,140,122,189,105,51,233,165,189,206,190,10,18,117,135,13,13,123,163,214,116,63,185,1,6,157,54,210,94,216,247,118,95,14,219,141,237,22,60,110,118,225,10,95,119,71,205,187,145,76,148,144,221,164,215,80,173,184,217,30,110,54,212,65,252,114,175,219,105,238,15,99,37,193,20,197,10,10,43,196,45,137,21,182,237,130,24,11,100,75,97,193,211,101,210,238,237,45,99,149,46,226,240,110,218,77,220,164,155,186,224,30,46,151,25,37,62,254,250,75,26,189,62,251,171,161,196,86,175,215,3,113,177,0,15,42,77,188,64,133,87,233,244,201,147,134,234,73,239,202,141,225,239,208,149,240,55,110,26,242,84,136,51,170,16,103,218,3,17,12,36,234,64,219,233,203,78,119,218,78,221,97,47,109,35,145,13,69,52,226,35,0,191,99,227,131,148,0,66,108,78,127,206,232,224,34,86,63,79,203,228,0,106,108,110,255,60,173,41,69,154,0,73,54,159,102,165,69,154,132,238,117,119,184,92,174,203,69,63,53,12,245,26,205,187,159,26,227,104,68,212,106,122,240,192,25,77,225,37,229,184,14,168,158,0,126,173,170,72,48,213,251,169,145,78,253,164,9,132,83,30,24,243,141,166,23,43,208,103,35,213,104,255,237,111,237,43,215,105,59,214,35,239,231,191,181,219,174,227,52,247,149,151,130,124,191,82,113,195,193,150,121,6,56,238,69,122,217,92,54,93,27,12,64,124,124,91,132,81,67,195,32,218,175,103,181,148,155,50,132,210,64,232,205,97,114,2,19,52,28,112,12,231,139,148,109,93,104,3,44,184,49,180,136,116,113,154,174,223,75,247,101,198,40,146,112,242,1,36,252,143,120,228,211,251,55,231,131,211,195,143,135,239,206,122,119,192,21,239,124,112,105,18,48,112,118,92,224,26,125,183,243,172,131,119,191,144,10,11,85,146,128,33,182,187,116,63,189,25,156,31,254,114,214,187,184,75,229,85,215,73,229,16,172,158,137,15,112,199,224,108,141,131,219,174,243,27,222,47,221,188,66,2,67,59,183,107,156,209,3,187,74,160,198,118,133,183,39,199,133,98,10,42,217,21,62,210,3,187,202,236,239,105,106,215,120,247,31,231,231,206,242,18,1,126,245,230,228,237,113,6,178,28,3,202,131,69,162,98,12,214,217,175,28,98,137,200,75,208,78,239,58,159,244,189,0,205,47,2,208,76,96,7,129,213,12,94,37,14,138,0,219,96,46,145,191,208,153,233,58,32,13,161,28,238,228,208,162,142,1,148,251,158,203,36,185,1,59,207,238,251,52,123,198,189,154,251,31,209,235,52,74,210,50,174,175,179,103,220,223,153,10,38,45,96,242,40,78,193,189,53,111,8,232,47,129,55,4,42,150,43,1,146,97,42,142,143,94,159,138,88,129,125,145,164,235,245,143,55,3,208,79,169,63,26,248,69,70,160,135,226,205,169,56,28,143,99,96,178,12,156,172,64,114,129,104,128,205,115,173,196,16,68,192,23,4,11,134,73,28,191,62,58,109,126,15,12,131,80,165,51,153,124,169,135,229,189,41,100,88,244,173,233,148,136,144,85,254,174,222,117,180,173,190,247,95,185,176,76,17,139,20,26,16,153,8,221,144,184,153,162,27,146,67,37,124,180,111,149,63,242,39,56,177,214,6,17,252,18,85,156,202,175,124,241,142,30,50,20,231,241,45,244,141,188,248,171,192,202,194,159,136,219,104,177,17,43,49,149,215,248,28,176,28,250,129,159,222,138,121,28,13,3,53,75,76,255,28,19,30,104,135,192,113,249,62,233,222,1,56,191,56,46,192,240,171,227,134,64,111,128,169,30,198,145,26,128,209,110,3,120,116,34,218,226,244,223,207,5,61,215,83,7,38,49,232,209,147,179,211,231,219,123,123,72,42,158,69,27,71,39,27,162,129,87,239,63,190,218,126,250,182,179,37,40,118,52,1,185,222,20,88,1,26,210,53,54,78,223,130,175,246,172,253,246,252,249,139,78,103,195,170,184,146,154,73,65,168,141,146,176,2,235,217,251,245,192,60,123,191,177,102,47,192,14,42,45,247,243,241,228,236,100,61,130,80,205,117,251,2,17,93,238,9,196,116,185,31,205,155,216,60,150,34,207,47,18,161,61,68,209,232,244,224,82,2,91,140,155,251,34,84,87,20,92,0,234,94,131,61,142,62,153,127,21,202,64,52,98,133,113,126,20,60,173,109,106,11,29,201,72,130,56,132,70,215,29,130,185,28,125,1,234,128,80,83,50,77,138,194,22,75,68,86,162,121,123,170,68,184,152,13,21,116,55,17,169,143,78,34,198,14,169,150,248,248,74,112,131,9,74,196,20,75,134,139,96,152,172,4,38,46,168,168,34,48,131,185,138,7,65,20,205,87,67,37,160,138,224,42,90,12,101,160,153,26,70,56,251,56,247,113,82,6,74,92,69,158,16,175,65,103,67,85,138,76,38,98,166,100,8,147,21,166,104,58,5,131,225,106,10,166,131,139,161,56,17,160,52,153,45,130,212,79,65,192,65,3,222,154,216,160,231,160,113,25,192,172,72,163,184,160,91,206,207,79,13,217,76,41,227,240,14,251,154,7,254,136,199,157,11,145,55,139,228,161,33,215,42,6,35,84,184,198,128,106,105,120,11,40,40,65,237,31,158,190,241,196,167,99,186,16,0,52,180,25,4,183,240,214,72,65,211,192,114,11,238,71,153,97,115,69,18,49,25,76,47,201,52,90,4,208,170,202,167,4,54,189,166,42,95,164,17,192,11,12,30,167,56,156,126,84,208,231,135,80,220,210,197,194,20,51,17,176,8,163,112,6,96,174,131,136,241,242,160,80,48,27,110,45,86,196,192,102,74,17,11,5,2,221,87,99,64,28,230,88,135,32,54,243,105,205,73,1,213,71,24,64,190,29,208,2,165,5,241,177,41,17,92,162,173,31,160,48,222,35,179,97,80,8,244,140,238,213,84,214,147,34,10,61,113,172,38,18,70,152,56,19,241,73,208,132,160,183,137,192,48,124,102,209,157,49,133,49,121,250,252,249,139,23,6,31,120,77,163,179,222,24,160,205,55,0,243,12,0,41,155,126,194,60,102,52,142,129,226,40,5,99,219,164,0,210,82,213,97,28,125,1,239,92,124,32,133,68,163,194,164,190,133,121,69,224,147,206,111,168,175,114,54,15,64,87,204,110,241,61,253,218,8,227,116,207,159,63,93,9,50,89,166,5,144,211,8,216,21,204,192,20,148,74,88,129,156,74,69,86,106,236,65,186,37,226,231,181,18,107,88,112,0,78,24,194,46,60,3,42,39,237,46,211,121,224,143,179,75,4,178,221,37,207,1,30,123,226,76,41,241,241,228,240,248,221,9,181,61,89,196,41,202,142,177,74,165,31,172,150,110,85,164,22,243,49,204,182,7,112,227,74,247,163,8,40,205,23,67,192,106,42,172,119,18,79,156,106,86,75,167,32,88,36,77,100,154,236,48,117,227,104,38,34,13,184,230,44,140,202,206,203,111,144,232,166,218,100,70,235,9,119,227,7,1,78,68,224,93,20,166,186,67,16,12,100,208,192,43,223,64,6,212,120,15,81,129,234,124,203,56,219,52,49,47,123,226,55,182,250,120,197,131,221,220,132,139,93,154,126,147,5,160,245,37,196,21,81,126,9,213,26,60,231,23,8,105,144,125,186,93,160,162,113,46,74,128,173,207,1,53,62,21,143,32,20,136,178,79,37,140,131,1,222,141,96,203,161,48,113,215,238,182,206,157,162,150,230,171,124,170,172,211,239,238,115,20,224,210,226,128,205,27,30,237,74,247,71,84,135,140,114,48,129,206,185,14,67,114,20,133,33,135,253,141,133,4,198,70,34,113,252,30,24,22,208,238,231,120,227,135,163,96,49,134,250,111,127,59,39,86,31,250,48,113,161,244,222,249,188,90,191,23,80,76,124,148,34,131,42,166,5,115,182,128,222,59,3,191,237,45,188,1,244,168,41,242,21,92,94,52,33,197,64,221,39,98,99,196,132,80,227,13,66,98,131,244,74,246,168,66,11,192,15,218,100,92,128,50,220,42,76,86,41,228,48,90,176,18,69,83,18,8,235,90,146,222,21,42,5,202,153,230,52,237,198,25,53,86,122,38,78,26,47,148,3,222,25,97,225,184,206,68,6,9,62,56,214,32,216,174,74,129,132,211,104,166,6,192,111,62,198,101,211,129,165,118,99,53,241,191,22,93,241,153,58,52,53,153,31,115,93,124,170,171,107,130,78,128,85,193,120,35,76,84,136,154,146,92,147,171,152,86,245,88,79,21,218,219,72,184,197,92,97,155,0,147,36,39,13,152,11,20,94,116,3,186,26,5,41,60,148,9,219,189,67,180,71,82,26,9,33,109,147,101,61,30,34,131,113,144,249,77,164,119,42,17,156,220,175,18,92,206,104,110,123,79,197,175,175,255,91,80,27,52,202,1,104,103,100,30,150,114,60,31,216,245,36,1,103,124,208,48,74,181,123,10,38,175,241,242,30,61,56,204,33,214,236,58,244,227,184,236,243,129,184,176,93,64,123,160,139,182,112,60,217,126,10,198,212,13,90,244,96,185,5,54,146,212,162,56,197,66,241,150,11,181,40,162,71,84,159,166,105,168,97,125,16,212,119,111,222,131,120,65,159,235,237,135,223,192,3,139,110,28,247,245,155,95,95,3,27,129,202,119,220,119,135,255,9,229,242,235,3,240,178,205,48,64,114,134,117,32,191,101,155,226,200,148,51,212,191,77,253,209,84,232,151,146,146,73,152,73,48,224,67,156,135,154,154,15,224,67,88,16,62,239,222,28,227,213,184,128,207,253,88,24,72,170,240,159,161,95,116,148,21,175,2,159,220,39,27,112,68,36,3,30,164,205,39,98,166,137,194,209,202,94,4,227,80,141,19,48,19,232,253,100,165,24,129,169,154,162,152,235,222,205,216,239,81,221,71,157,229,63,142,187,30,188,26,199,86,15,91,201,177,125,19,142,98,37,9,147,84,235,14,188,199,105,14,168,202,89,180,0,185,163,93,94,68,14,238,184,11,194,29,40,162,205,40,52,22,201,17,176,45,245,188,106,102,255,99,244,105,103,181,170,41,152,240,108,46,77,130,69,50,101,97,1,78,107,57,46,6,150,12,150,139,188,92,123,147,224,25,206,22,179,130,167,20,0,56,148,107,133,230,91,122,131,203,243,244,178,14,77,145,229,4,79,100,50,173,199,6,68,141,188,37,93,228,207,104,165,63,85,32,118,230,168,83,146,180,212,194,154,46,151,101,22,198,248,39,240,103,126,37,84,173,155,198,10,66,87,248,38,36,109,75,25,43,97,108,66,183,217,24,91,110,217,110,167,179,58,126,82,16,224,5,151,124,128,161,131,52,5,163,0,46,20,56,206,193,120,101,232,66,152,186,194,170,155,217,61,152,70,153,136,41,200,236,121,49,222,33,117,128,2,223,68,69,127,106,71,91,72,177,81,184,130,152,212,96,13,252,139,150,188,12,153,177,41,224,33,26,96,76,218,52,106,178,186,28,73,12,76,149,58,101,61,151,117,43,48,125,16,250,126,199,209,146,98,187,212,10,76,21,131,221,98,14,53,109,151,119,187,211,153,125,87,60,40,167,46,32,139,153,55,215,160,154,215,160,111,161,246,55,83,184,24,37,178,201,83,165,11,200,58,156,19,148,93,57,145,48,225,227,34,91,117,92,49,147,95,137,81,153,88,91,157,14,60,235,152,121,149,172,102,186,251,232,50,99,230,95,77,138,172,66,13,246,19,25,27,12,112,246,143,36,90,142,44,249,88,198,151,2,106,42,247,23,11,184,237,172,11,59,59,213,90,162,97,166,87,65,54,255,74,94,23,79,73,83,154,173,189,128,153,5,166,63,233,39,46,179,130,83,198,92,69,39,201,18,21,102,178,227,184,124,60,57,59,71,7,118,14,122,69,113,248,44,23,0,6,250,58,240,234,167,62,91,150,131,204,234,163,117,129,1,47,12,19,1,114,172,78,216,8,205,170,242,170,128,85,149,81,124,5,16,125,252,245,151,223,126,227,160,169,104,176,149,6,143,54,143,142,206,49,46,243,234,211,121,231,249,139,166,171,205,218,196,106,50,107,45,155,247,216,9,234,49,65,217,82,100,196,78,38,64,195,204,11,70,159,73,205,64,108,131,115,2,92,143,52,74,240,82,155,201,232,56,83,184,224,6,132,132,240,65,190,16,177,209,124,4,7,241,203,218,126,1,99,111,251,5,58,124,181,90,119,171,49,83,147,214,91,64,62,77,252,171,114,72,157,72,56,94,32,175,9,172,38,76,53,166,101,86,133,208,176,226,134,164,218,197,225,104,132,114,242,20,19,99,117,61,233,167,164,252,35,221,18,146,132,86,105,53,158,6,40,139,31,216,183,169,131,121,194,142,79,29,204,4,16,65,204,149,116,143,33,45,108,63,0,252,84,38,213,183,76,32,145,218,12,97,240,173,193,89,23,232,136,184,160,196,182,69,48,172,42,107,145,56,89,16,141,49,190,114,43,226,5,101,97,126,43,88,44,106,106,97,202,226,225,201,58,240,160,13,138,163,75,33,115,140,135,225,77,246,254,247,0,5,108,185,8,11,160,189,66,115,71,140,216,80,172,64,247,190,188,104,2,240,33,196,164,48,201,82,98,184,141,116,69,61,68,19,213,34,91,69,180,18,124,151,238,175,31,63,124,58,29,156,157,31,158,159,12,254,253,228,191,206,122,23,142,22,106,142,9,73,56,195,44,71,1,110,180,15,230,76,23,84,39,155,244,112,67,25,143,240,203,148,112,190,168,224,218,207,158,15,80,94,96,99,32,159,52,173,160,96,54,95,128,94,24,152,55,21,73,25,184,200,226,170,112,109,98,169,249,99,246,101,157,104,170,95,188,116,129,28,131,119,31,142,79,16,254,15,147,9,20,158,161,211,205,137,110,112,247,10,116,106,126,71,101,195,0,215,202,185,196,92,7,148,56,15,87,31,66,104,244,211,241,233,224,244,227,135,243,15,71,31,222,14,254,122,242,241,236,205,135,247,208,193,174,187,119,233,30,159,188,58,252,244,246,124,144,215,201,170,244,118,221,44,67,204,213,14,255,89,246,128,146,69,97,40,122,143,182,220,32,146,200,90,103,218,143,193,71,164,117,224,134,180,217,155,177,253,232,16,155,130,7,152,112,229,56,143,122,65,52,34,202,123,38,155,128,211,89,110,212,240,44,66,70,232,133,234,70,252,102,238,26,206,13,230,162,57,155,149,215,54,157,238,243,45,167,185,159,189,232,69,161,246,217,122,121,182,76,243,14,186,53,192,115,79,152,208,131,193,161,253,159,26,78,121,55,137,211,244,230,168,246,49,113,230,0,174,250,206,102,186,233,28,180,233,178,185,92,46,169,129,232,181,250,90,232,131,179,148,156,206,87,103,83,121,105,116,70,92,219,216,218,107,194,205,167,57,136,145,35,160,102,163,185,100,162,40,67,37,187,137,10,5,59,249,112,120,224,57,252,21,237,167,6,64,78,188,244,102,220,68,63,82,87,134,199,87,124,69,79,49,214,150,213,60,7,166,107,214,141,79,172,38,104,134,211,19,114,167,16,190,188,205,2,112,63,53,54,30,235,30,4,229,24,93,32,1,121,143,67,207,217,216,84,155,27,206,229,70,211,27,33,39,234,118,16,138,74,35,36,173,2,255,161,215,175,84,122,180,136,49,171,233,88,163,219,179,210,164,152,218,32,55,226,68,189,9,211,70,78,167,43,67,167,102,161,145,10,74,89,27,200,2,6,49,74,77,166,101,103,64,16,24,1,97,108,56,4,36,12,189,139,217,84,135,225,152,167,4,51,181,213,30,112,217,163,18,145,77,34,217,93,62,16,221,28,38,26,164,166,107,134,179,91,69,25,74,53,104,221,10,42,72,164,180,247,97,248,25,179,43,113,179,153,175,146,70,121,210,122,218,48,193,76,176,0,108,243,60,213,44,205,8,48,240,252,228,228,239,11,25,52,210,139,173,75,143,194,125,212,199,169,140,229,44,113,21,102,135,149,166,114,199,77,117,30,89,191,243,178,210,105,198,171,233,69,231,178,217,173,148,211,118,148,70,179,34,31,150,75,151,7,224,83,28,244,42,217,120,181,228,73,123,53,132,113,101,175,76,101,22,61,189,158,106,162,225,127,227,188,91,128,240,84,24,54,48,10,243,205,177,131,149,50,118,208,59,21,51,46,0,211,25,174,147,121,224,131,68,114,225,210,4,218,27,178,249,251,239,141,180,215,105,186,14,230,15,3,151,128,134,234,245,80,214,163,230,171,246,200,203,44,216,161,150,26,109,157,174,147,128,148,3,169,6,127,37,253,77,151,213,57,106,19,166,196,110,191,255,254,19,242,255,255,62,251,240,190,145,17,18,200,97,79,65,208,174,227,64,81,75,159,72,18,53,112,124,237,169,82,156,181,133,121,162,231,174,158,38,213,9,98,201,182,222,192,51,78,98,195,238,31,247,85,254,228,97,14,113,227,110,17,7,93,11,206,77,231,37,237,16,248,16,254,199,66,129,88,32,83,218,157,169,116,26,141,193,189,251,116,238,184,216,95,23,241,243,216,44,240,39,183,208,168,171,119,21,210,252,114,228,92,231,17,68,97,251,115,130,250,93,91,101,221,7,233,0,132,128,23,57,199,85,6,42,78,225,2,152,114,75,237,160,84,13,199,71,188,199,116,21,110,26,47,167,157,220,130,35,12,190,231,93,6,252,135,179,239,133,30,7,135,0,208,60,114,70,43,82,31,163,155,158,157,16,234,74,158,38,126,207,57,72,227,62,176,242,38,94,141,251,142,11,87,27,7,36,209,244,38,100,35,112,146,139,75,71,140,192,10,75,122,142,189,151,213,17,5,177,220,238,111,184,212,90,219,52,183,170,97,92,17,95,163,209,244,193,70,199,254,181,105,3,247,72,114,54,43,45,231,232,29,0,240,92,187,94,253,141,125,232,166,129,184,135,189,206,126,120,80,107,251,104,97,181,31,110,110,50,157,146,94,109,189,139,240,210,141,122,178,215,75,126,255,61,233,245,238,177,149,158,60,121,84,223,147,37,22,246,9,25,218,115,106,161,35,10,219,62,55,54,27,209,75,71,232,25,213,117,156,38,80,135,137,99,136,139,130,164,199,203,38,142,217,71,206,75,89,68,108,116,135,209,30,197,221,37,61,39,2,27,82,20,117,107,2,45,10,238,103,52,85,96,39,141,185,31,167,47,156,205,68,15,3,65,217,119,116,182,181,224,135,48,14,253,250,17,98,242,151,177,26,163,143,141,222,198,44,186,86,45,179,117,88,175,161,102,72,153,183,178,109,71,34,223,128,196,175,226,54,1,63,227,16,238,203,192,96,129,211,70,78,95,146,49,154,89,162,197,92,106,189,249,128,127,90,152,47,132,50,156,238,120,171,41,72,199,90,139,244,201,147,92,148,194,124,214,173,59,110,201,172,172,216,193,29,87,107,228,47,234,54,129,74,184,23,252,68,130,68,177,21,175,201,221,222,120,108,26,214,38,21,15,46,207,16,176,134,92,191,96,61,73,163,196,55,46,86,218,77,89,126,119,191,243,228,73,67,51,13,238,19,240,100,154,198,13,135,28,16,208,87,204,9,195,232,107,181,240,229,97,28,203,91,48,10,232,183,161,48,109,253,37,254,173,226,130,68,32,253,209,245,185,94,151,147,202,233,26,115,221,181,85,10,62,208,64,91,1,0,85,189,61,192,57,54,9,12,72,201,166,169,182,81,67,85,149,25,246,96,114,128,254,87,96,202,0,249,108,195,75,98,73,102,108,73,172,96,140,43,121,177,125,9,164,43,195,37,199,99,134,170,113,135,25,244,221,212,37,186,195,111,217,72,234,250,128,108,229,125,173,187,13,102,143,182,128,36,72,147,204,71,68,106,36,171,200,96,215,171,69,56,89,13,40,186,39,168,90,24,94,133,9,254,150,47,81,133,43,31,41,59,10,104,104,10,156,202,47,107,6,173,137,23,2,15,238,167,197,153,229,208,130,76,109,187,75,152,58,202,171,139,120,173,234,178,54,58,118,79,167,181,109,215,117,203,145,165,245,186,213,1,174,181,187,213,109,151,186,205,98,74,15,118,154,71,159,214,233,50,111,183,212,33,71,87,30,236,77,199,157,214,233,74,183,184,52,130,12,76,230,130,172,111,49,193,19,16,182,184,107,184,193,155,98,116,29,61,26,192,251,149,71,181,108,14,210,105,78,238,120,217,0,106,104,54,71,39,195,165,9,175,96,30,147,220,169,198,39,208,140,194,89,171,147,232,143,184,195,170,151,129,200,96,148,105,49,158,27,5,6,104,128,159,241,104,11,163,5,236,25,130,79,228,177,166,58,66,85,214,112,232,108,13,135,55,209,144,100,183,229,185,109,111,93,110,224,187,51,57,183,80,204,109,183,159,192,104,224,157,70,251,70,15,39,239,229,251,134,223,124,9,14,6,40,23,170,0,179,189,216,173,27,46,130,160,73,50,200,47,119,110,108,178,127,118,199,33,118,92,240,159,47,42,166,74,45,12,169,229,97,164,101,143,130,252,182,71,80,197,216,120,73,239,2,45,180,206,126,116,96,52,221,126,4,70,93,114,17,93,246,46,36,252,117,125,252,19,194,159,203,253,220,32,207,20,120,102,146,211,56,62,224,56,212,25,236,119,37,158,237,38,180,129,106,233,206,209,115,168,218,33,192,193,37,110,68,55,237,199,195,197,110,28,178,184,113,143,43,209,137,18,28,134,229,7,52,36,200,248,134,83,157,38,204,169,124,235,178,137,34,184,213,128,151,160,157,113,11,208,48,251,5,252,27,119,185,242,34,253,99,131,118,200,138,114,77,240,214,14,113,196,106,188,24,169,18,111,241,140,172,141,108,24,86,7,107,5,208,69,246,177,2,102,174,204,226,108,112,169,13,5,144,48,75,247,174,138,107,217,64,209,24,243,142,239,186,248,149,173,139,81,140,104,237,109,182,243,21,38,193,61,154,187,89,28,111,12,9,217,125,86,66,84,53,22,202,195,189,63,100,214,52,171,35,203,128,48,84,39,40,42,10,211,65,189,180,152,173,229,143,91,228,123,56,117,242,165,166,158,125,74,146,209,47,170,217,236,214,55,89,39,165,77,156,2,3,29,26,137,251,162,77,58,76,71,154,243,190,232,165,144,27,26,156,38,106,10,134,192,53,97,19,7,109,244,8,104,147,54,156,236,60,34,32,47,191,145,18,170,120,250,131,202,227,78,5,65,137,238,140,61,60,171,195,81,170,249,210,84,77,166,160,37,145,52,124,91,32,70,22,195,153,250,136,31,10,15,10,167,254,149,229,117,175,198,180,6,136,48,56,210,110,252,109,188,217,252,155,103,255,52,90,13,239,231,102,243,101,219,40,144,187,153,252,28,197,93,156,120,238,204,15,233,114,251,146,133,36,92,238,92,186,49,12,22,246,4,119,187,88,0,122,170,123,65,245,169,38,213,193,162,75,152,73,160,141,48,211,170,10,91,62,197,109,224,209,244,245,139,79,210,76,179,73,143,250,234,251,252,187,116,57,20,116,132,14,209,171,40,230,104,80,13,71,160,174,3,46,160,31,89,146,93,248,240,81,15,189,70,24,238,17,243,77,75,107,190,140,73,61,253,96,211,17,13,92,37,128,102,125,25,166,155,78,83,107,210,71,189,148,91,8,16,130,172,1,225,33,175,227,1,21,208,148,42,152,71,6,182,244,162,200,29,84,23,253,160,226,227,57,240,29,88,41,50,99,16,124,128,91,191,115,30,209,243,105,105,32,2,156,52,104,228,80,87,64,211,107,109,185,161,231,86,107,153,185,202,236,200,70,210,190,236,21,7,181,145,122,169,188,26,160,209,224,102,164,106,190,116,160,142,201,220,21,242,26,44,106,92,70,127,228,116,157,255,226,204,78,157,84,56,3,199,157,150,57,195,212,84,247,120,246,25,32,146,197,108,38,227,91,3,170,100,64,252,94,234,193,124,192,36,182,213,33,242,212,67,176,96,24,198,234,235,7,180,173,245,208,53,31,245,90,91,104,164,88,78,55,118,57,241,227,217,141,140,85,11,15,29,116,52,153,29,60,124,208,1,243,4,84,235,48,142,110,192,84,30,160,16,64,181,55,88,196,1,106,12,191,196,218,96,7,36,81,0,150,119,116,165,35,133,217,45,152,223,251,53,220,230,62,48,66,86,252,197,28,19,36,234,3,49,36,228,117,36,166,121,31,37,239,31,116,22,47,110,102,242,80,62,54,216,59,149,160,44,160,11,140,236,74,84,30,232,57,45,98,69,150,165,121,51,59,235,100,238,155,83,67,240,56,10,220,154,156,180,19,127,28,77,219,42,153,227,70,198,193,204,167,109,46,3,168,3,229,1,165,52,182,25,188,186,158,49,44,221,83,149,158,141,100,176,130,196,229,101,69,69,212,165,121,95,176,186,53,205,49,50,195,99,111,2,111,174,243,225,61,46,67,240,123,205,252,100,149,115,138,107,54,192,89,128,219,8,105,91,46,66,31,157,86,141,141,60,206,78,198,208,207,189,216,212,240,174,178,171,33,174,134,100,39,71,220,95,115,191,140,69,190,70,142,152,240,89,37,24,84,227,229,29,199,221,234,116,126,150,94,162,87,114,212,41,138,116,117,115,132,205,225,17,56,63,167,222,148,234,128,63,169,127,3,237,156,230,43,235,198,5,193,242,66,65,203,58,141,192,203,14,35,104,182,27,133,231,230,88,130,21,181,203,40,89,185,63,43,112,242,53,132,121,238,0,67,24,246,236,103,63,227,57,116,237,18,36,249,145,8,149,126,57,249,160,190,199,16,103,126,149,130,149,248,126,74,203,76,208,47,12,41,92,202,222,110,135,205,134,202,97,115,104,108,128,142,183,142,20,164,22,187,206,20,184,133,150,152,92,90,213,254,139,75,43,77,127,105,210,42,3,30,254,116,102,22,249,107,29,99,90,42,7,5,98,167,2,160,83,92,117,136,139,71,74,21,108,187,226,121,84,44,59,146,185,12,169,17,22,40,103,180,241,209,192,226,16,108,240,228,91,129,235,60,8,156,38,86,29,112,12,119,45,112,209,220,130,141,68,95,225,180,202,76,211,225,170,90,136,220,166,142,181,193,247,10,227,95,43,22,110,86,45,123,248,99,99,98,174,90,1,1,231,91,122,38,147,252,101,30,218,213,123,45,204,50,163,176,67,211,105,77,16,85,154,181,145,244,66,94,174,179,120,1,218,193,94,162,216,216,12,17,74,11,96,19,208,166,155,154,133,138,204,130,150,88,161,221,23,184,90,97,173,70,52,221,124,33,194,65,125,87,12,239,23,206,148,117,76,20,188,198,102,158,195,188,106,84,100,241,163,142,57,248,68,33,39,167,181,54,47,158,166,241,159,45,211,16,64,13,19,23,154,194,147,201,64,178,166,237,198,214,207,166,144,78,121,107,52,209,246,164,115,117,104,230,145,32,148,122,5,189,40,34,253,166,189,98,218,184,131,121,76,122,103,223,76,106,251,56,76,116,8,34,220,45,11,108,84,24,50,197,203,241,184,3,135,224,0,142,90,234,186,139,121,163,168,94,49,14,198,69,160,132,87,150,225,84,41,118,241,228,73,185,3,18,60,44,203,156,76,168,241,211,88,222,180,24,47,28,18,202,187,172,90,172,119,152,189,96,175,66,24,34,22,150,34,204,67,31,166,102,215,140,27,24,133,48,218,93,226,160,204,110,229,224,149,186,40,54,67,91,11,155,151,96,86,216,132,86,6,254,236,204,224,180,150,123,10,131,163,235,118,139,22,181,126,234,208,25,58,76,19,90,251,93,213,164,181,138,188,118,147,70,178,149,91,67,87,154,56,155,82,34,40,45,25,157,113,45,153,94,218,226,28,156,192,130,4,109,152,166,11,130,171,69,30,106,45,216,133,182,106,69,158,113,35,177,16,15,170,211,39,24,81,83,160,110,30,227,1,194,58,58,140,180,113,31,64,227,222,160,242,170,128,176,227,224,249,75,6,55,237,171,175,75,56,244,217,125,116,25,236,35,149,96,54,215,187,205,89,189,92,119,100,69,149,240,130,55,196,115,152,168,254,61,36,242,234,215,77,221,26,121,150,133,18,210,56,11,114,96,203,217,90,184,236,117,246,229,193,139,125,185,185,217,204,34,11,121,216,193,80,16,4,188,223,63,144,250,92,244,199,90,195,80,229,130,104,238,227,15,200,97,9,238,0,188,225,80,132,163,14,133,66,63,64,124,33,157,186,168,97,97,102,225,59,165,57,144,67,224,240,50,98,101,180,80,90,105,7,206,110,191,154,162,5,82,1,115,78,234,114,221,56,215,3,222,90,46,203,246,154,14,42,58,151,110,22,20,221,200,132,153,95,207,95,126,53,86,214,203,163,82,58,52,150,173,63,67,41,72,128,24,183,23,116,65,128,211,94,203,147,217,60,189,101,158,193,103,17,140,209,135,240,85,52,90,36,120,203,149,63,132,191,128,131,130,247,192,159,120,162,240,29,195,218,173,11,138,0,86,7,104,190,100,46,95,233,52,74,199,30,252,254,253,75,243,48,225,141,63,200,140,128,13,131,107,88,167,150,236,248,112,237,208,213,76,73,253,66,37,128,201,138,167,194,249,149,179,51,157,230,74,70,225,101,17,219,190,170,188,220,103,35,99,35,95,0,49,115,196,33,10,246,41,175,83,125,165,92,80,126,0,205,154,58,18,174,193,136,143,66,30,188,195,241,184,52,28,105,37,250,140,198,124,229,161,89,176,254,142,108,64,247,158,28,195,101,125,140,118,89,12,243,231,113,102,139,109,113,49,160,158,99,147,40,78,201,158,237,234,88,113,45,15,255,191,199,180,111,198,127,10,142,213,11,39,188,188,179,175,127,123,89,198,173,180,151,37,88,156,235,101,4,9,111,187,133,220,132,55,0,110,67,183,80,179,100,193,44,242,138,162,111,221,218,209,208,113,231,255,211,232,124,189,144,173,201,97,235,85,167,245,226,242,110,203,125,186,252,253,66,95,238,46,155,63,181,155,47,27,25,132,208,85,231,0,227,151,234,160,183,183,187,187,179,251,178,81,88,147,192,188,7,116,1,186,165,199,156,169,57,196,189,65,188,133,94,197,217,246,162,206,215,14,30,130,143,187,134,58,95,95,193,63,7,135,171,249,35,218,88,218,41,26,189,236,170,48,67,247,57,16,177,113,176,200,124,178,80,94,131,151,117,221,74,229,48,97,215,139,246,152,158,227,45,120,134,80,67,155,37,251,250,128,198,218,53,246,144,124,189,108,38,113,206,152,53,205,54,144,149,228,85,197,7,133,94,209,54,80,158,217,17,98,27,9,216,57,186,112,186,113,171,185,202,2,123,77,171,159,142,79,179,166,54,176,13,104,121,1,62,33,55,103,77,12,108,76,175,151,22,48,22,184,133,227,65,164,75,13,193,52,193,211,167,64,177,235,188,57,237,204,106,236,185,125,39,63,59,178,54,191,203,159,80,48,123,136,113,62,120,207,204,165,66,103,249,55,66,48,133,81,34,122,228,228,186,50,119,187,161,14,101,131,101,157,195,165,77,104,237,37,131,243,135,219,109,48,179,170,132,81,126,170,188,166,48,94,182,80,38,112,187,120,75,3,173,37,137,43,115,111,219,173,75,243,233,129,64,64,215,236,37,119,197,140,89,148,211,236,179,10,59,229,78,172,76,27,18,38,106,1,132,45,111,232,169,79,6,65,0,89,119,244,41,144,117,208,54,119,75,3,62,119,13,210,206,218,222,244,15,1,110,15,65,190,97,231,7,192,135,247,165,173,132,25,160,181,161,35,94,36,129,1,55,43,242,152,169,99,178,10,238,150,205,110,49,103,148,206,125,173,207,198,45,99,134,9,185,246,232,195,228,144,75,158,188,89,252,165,89,59,247,106,167,76,101,134,243,28,174,122,117,73,139,142,188,23,214,201,247,150,71,163,215,83,109,40,10,215,228,29,155,28,138,124,227,78,216,44,151,36,139,225,204,79,11,67,69,81,222,90,191,179,154,255,227,77,101,82,242,242,154,213,108,34,12,64,152,67,164,211,94,25,2,21,251,224,30,252,183,226,180,74,240,74,96,164,239,73,89,80,23,188,234,116,153,173,91,150,18,51,101,243,165,244,230,139,100,154,169,214,110,246,78,239,2,180,48,63,189,180,158,234,71,148,197,80,56,39,163,123,113,185,164,37,110,15,56,6,41,120,87,157,172,88,7,85,251,63,35,121,37,197,96,135,181,209,192,52,205,204,65,161,47,248,109,56,24,100,112,180,133,84,19,33,64,22,175,31,108,221,118,221,152,213,153,96,43,249,116,37,40,214,23,60,86,174,210,66,181,3,159,108,209,250,152,179,101,183,210,9,135,180,214,230,95,161,191,158,70,17,10,202,198,29,29,54,141,135,71,119,29,12,80,187,244,113,136,146,247,156,73,121,135,55,23,72,31,68,73,151,253,245,37,186,238,58,114,193,150,160,137,134,61,214,251,198,11,161,171,218,181,241,102,33,229,186,81,19,240,208,81,142,63,246,225,219,5,48,74,94,122,21,158,74,26,76,190,211,12,96,92,149,149,116,1,243,55,125,242,228,81,97,171,211,147,39,133,77,128,53,126,224,31,247,156,240,252,228,117,180,60,115,35,116,136,150,41,127,238,74,31,218,10,102,133,237,190,24,62,44,62,214,175,240,215,199,160,72,239,43,96,245,197,55,78,169,174,222,12,91,52,25,71,81,16,200,121,146,61,150,241,21,126,216,209,124,129,43,43,238,23,61,203,184,133,39,143,57,125,94,98,69,4,252,43,146,85,218,99,18,133,234,52,51,161,57,167,255,67,138,179,157,13,2,44,227,34,142,244,197,48,243,125,201,182,83,252,36,165,212,246,90,145,188,140,160,168,34,92,241,21,176,28,126,232,155,136,150,81,158,137,243,34,101,89,236,21,201,90,150,207,125,35,11,50,139,189,212,52,197,136,217,59,161,203,7,188,118,90,150,35,65,201,36,236,23,23,4,51,250,229,157,153,214,178,16,167,213,59,157,173,238,148,107,212,243,81,246,190,0,43,201,98,65,204,247,104,129,17,48,143,230,139,121,143,79,121,224,135,234,43,192,50,86,128,26,31,245,208,231,195,226,11,67,63,130,105,151,90,227,46,237,81,41,124,9,175,60,40,4,123,139,191,152,179,214,200,20,94,48,195,115,200,183,5,130,49,126,137,2,145,32,241,32,222,12,28,255,218,231,185,88,29,71,90,129,209,107,59,218,219,180,149,198,26,224,153,234,26,48,82,44,116,42,137,86,45,43,24,40,235,114,221,30,90,89,10,142,238,137,219,23,175,244,227,21,253,224,130,121,101,171,89,109,55,92,179,85,158,8,191,208,227,188,117,116,89,237,43,222,81,197,127,97,14,174,16,145,68,217,204,167,181,235,224,78,82,42,205,83,29,181,234,193,175,114,150,69,110,208,74,102,173,29,228,169,220,159,44,234,185,250,182,156,62,7,104,196,123,48,27,141,159,105,156,166,252,141,172,17,82,194,120,156,147,130,14,142,40,156,195,7,6,122,158,71,108,207,30,79,1,253,226,165,141,223,218,72,188,25,151,225,231,164,75,3,253,155,113,113,26,90,137,163,249,92,92,133,28,54,94,192,235,132,246,238,78,23,67,220,185,91,65,170,10,242,211,34,34,118,110,39,117,83,216,101,204,220,69,184,141,70,169,27,95,13,111,240,207,0,111,38,139,180,243,252,5,253,188,216,42,210,65,199,131,157,62,217,14,25,50,171,19,9,204,11,43,82,9,30,88,239,55,219,20,251,171,119,38,154,133,147,135,182,37,110,129,192,225,245,220,94,182,32,223,23,91,25,10,223,148,120,240,93,16,108,67,127,219,255,194,254,128,133,197,206,191,176,63,224,63,241,116,205,254,68,129,59,115,94,100,214,251,17,208,236,2,52,187,127,24,104,246,0,154,189,63,12,52,207,0,154,103,127,24,104,158,3,52,207,255,133,124,218,129,254,14,131,32,235,177,160,35,239,145,173,150,24,164,16,95,255,163,154,69,160,120,48,238,80,39,9,45,211,112,197,238,101,125,72,101,197,66,44,122,35,245,246,162,134,167,143,78,112,174,84,238,177,1,181,237,191,210,16,36,113,205,136,161,185,102,83,12,181,67,113,17,12,79,80,43,88,119,118,117,208,33,197,218,71,71,231,43,43,107,165,147,153,131,153,196,47,246,182,249,64,27,149,23,86,86,206,24,215,170,207,71,190,137,182,248,229,249,189,239,145,58,44,189,247,98,11,223,219,46,155,96,247,49,213,42,163,99,107,251,30,21,158,79,189,130,178,134,95,55,67,105,221,62,166,187,253,215,11,96,27,248,253,86,24,247,74,46,109,158,54,182,178,64,231,147,213,123,169,213,92,210,156,101,245,79,133,148,43,64,94,77,46,203,172,249,54,42,157,101,25,201,223,77,44,150,87,38,0,64,121,107,194,202,88,19,149,212,103,6,157,107,226,87,33,81,98,21,159,201,175,96,207,116,74,79,141,157,3,207,191,143,78,154,155,106,77,192,111,32,25,165,26,138,243,60,239,249,187,41,103,61,173,124,97,124,109,194,218,9,216,255,28,202,126,219,244,6,90,228,105,219,223,69,26,106,102,61,228,57,11,252,71,163,253,77,204,64,185,133,255,0,162,185,186,202,146,39,115,231,193,47,154,3,89,118,167,40,236,138,200,250,177,232,83,92,255,213,122,183,234,32,176,68,175,159,59,130,191,50,188,82,50,103,242,6,155,184,47,206,88,181,185,236,60,81,110,94,63,161,213,246,1,205,6,167,255,27,254,228,138,157,149,15,17,119,221,30,209,53,189,175,179,144,118,181,176,81,240,30,175,75,189,173,141,25,239,128,185,175,171,185,244,227,135,195,116,139,68,135,233,78,161,250,119,2,163,15,141,185,7,150,69,184,14,52,246,209,49,226,19,189,82,30,12,180,4,230,240,59,191,159,143,191,133,191,52,63,89,175,148,63,57,255,64,84,187,108,125,226,181,62,128,248,190,225,193,60,242,104,145,104,102,40,168,240,58,226,16,60,117,145,103,251,69,90,75,114,180,9,171,109,131,127,28,116,65,231,154,224,183,42,202,220,172,190,166,235,194,111,88,173,100,60,219,66,202,244,82,210,6,249,44,252,1,98,227,95,231,78,224,32,220,31,68,126,192,129,16,197,148,223,162,29,252,125,68,169,11,75,253,15,241,63,159,59,141,159,91,24,104,244,126,228,12,56,195,134,127,224,20,184,7,122,162,207,191,130,251,43,110,16,190,77,33,193,218,117,110,139,41,100,64,233,29,102,73,100,236,203,32,186,170,136,73,25,180,86,151,212,198,178,185,104,173,165,63,222,152,192,84,4,191,100,230,103,239,59,253,39,116,182,240,126,78,150,233,118,177,7,61,168,230,243,169,188,93,0,77,160,237,250,73,96,210,80,30,52,138,132,109,24,97,238,65,13,61,57,39,161,127,144,210,105,232,121,218,12,66,116,144,34,242,125,60,176,15,46,179,168,245,241,65,27,238,240,9,126,99,239,52,138,211,236,193,105,28,97,44,37,16,122,211,116,86,144,175,32,150,117,188,1,7,247,95,16,43,34,140,165,205,24,107,235,121,246,170,177,63,60,123,13,175,24,1,164,87,29,242,102,203,6,86,197,58,248,139,184,195,47,210,229,33,103,50,95,41,120,18,14,147,249,126,137,115,75,139,47,127,62,150,205,151,85,215,226,213,42,149,214,177,232,137,113,121,193,144,182,128,216,148,45,197,247,56,177,102,149,57,153,109,231,59,227,106,223,58,200,89,200,9,79,222,20,244,183,117,35,99,218,162,206,119,116,60,168,78,48,43,108,63,90,107,40,42,175,233,253,78,53,195,241,180,127,206,21,133,62,29,90,52,232,107,35,152,180,107,190,45,216,132,81,121,106,49,99,233,24,233,85,72,230,139,166,229,53,202,63,31,255,86,22,93,191,73,228,214,240,129,67,246,251,176,127,24,96,94,158,72,229,23,37,164,200,66,128,109,43,135,65,159,172,144,243,178,71,233,103,125,94,184,197,51,233,111,163,5,166,123,230,153,11,98,168,38,248,125,151,197,252,42,166,163,136,60,1,40,246,207,162,153,226,243,235,185,0,191,137,194,95,27,227,35,236,121,79,104,226,234,207,116,224,231,68,70,81,28,47,230,252,217,57,202,205,161,77,129,158,120,51,225,239,198,76,41,247,10,94,33,189,205,237,184,192,89,224,15,35,208,250,61,166,154,171,185,46,73,249,219,51,74,172,64,193,35,199,102,157,233,68,100,60,214,20,202,58,18,67,63,148,120,198,146,249,14,166,202,41,107,14,95,176,14,94,120,248,200,5,208,185,126,250,122,49,20,230,129,192,205,180,72,105,79,228,43,255,82,132,214,17,31,67,240,182,49,243,140,62,92,192,71,123,56,149,44,1,71,48,227,49,198,196,17,239,144,21,146,133,161,16,98,114,107,62,254,198,68,165,143,102,72,114,122,231,244,53,9,108,144,8,72,31,144,126,132,67,157,177,42,127,87,200,15,177,178,76,253,33,125,83,71,159,213,57,162,79,130,232,156,65,65,199,52,212,140,44,144,141,184,131,192,161,47,84,83,147,159,206,126,177,199,169,32,124,219,102,36,28,193,9,149,120,124,91,2,242,86,133,35,158,163,156,46,45,227,148,36,107,11,39,103,113,206,216,105,93,165,197,27,171,72,43,125,219,236,52,178,124,30,251,116,182,71,255,23,58,162,68,20,228,63,101,156,233,96,14,95,39,233,45,11,40,138,21,119,195,40,84,213,181,245,53,83,146,49,201,13,211,177,64,95,233,171,239,67,193,168,35,16,63,196,223,217,152,214,234,178,181,48,208,66,220,86,103,21,1,54,1,70,120,80,170,150,252,133,21,242,245,8,101,175,21,188,184,71,103,218,57,56,127,110,53,178,174,246,64,138,148,79,170,49,239,77,99,82,238,122,115,92,110,69,219,138,188,124,124,83,153,218,197,99,110,28,106,240,45,61,171,182,103,2,194,28,248,188,191,37,147,152,194,44,151,53,85,93,200,204,78,131,98,170,194,21,122,20,124,116,82,214,7,191,246,145,5,175,56,38,250,173,215,84,246,77,213,129,76,87,52,247,62,162,84,45,221,222,60,86,247,181,167,135,134,62,160,193,89,63,114,69,117,60,158,161,199,199,36,89,239,227,22,0,60,31,201,233,255,213,7,69,1,140,198,90,165,152,8,89,219,42,18,185,120,22,83,174,245,138,153,96,15,91,165,255,211,147,188,62,225,236,207,55,217,57,131,78,60,17,31,181,197,243,173,78,208,193,116,39,155,119,252,41,229,82,211,86,131,59,253,111,177,29,87,235,202,114,195,69,206,92,9,80,13,138,59,101,155,32,7,235,255,219,4,63,206,38,248,161,166,192,31,78,86,212,37,1,255,249,36,5,39,90,103,185,205,15,75,135,60,82,206,164,41,45,93,222,251,77,3,98,162,153,176,78,119,41,197,116,209,65,131,73,200,147,90,198,247,44,205,125,103,7,228,42,22,206,63,7,182,64,239,17,63,216,39,120,59,83,221,130,215,31,134,59,219,58,2,136,10,189,255,127,1,47,189,55,80,167,163,0,0};
\ No newline at end of file
diff --git a/lib/Settings/Settings.cpp b/lib/Settings/Settings.cpp
index d1ccda50..1bc1eded 100644
--- a/lib/Settings/Settings.cpp
+++ b/lib/Settings/Settings.cpp
@@ -99,7 +99,10 @@ void Settings::patch(JsonObject parsedSettings) {
this->setIfPresent(parsedSettings, "wifi_static_ip_netmask", wifiStaticIPNetmask);
this->setIfPresent(parsedSettings, "packet_repeats_per_loop", packetRepeatsPerLoop);
this->setIfPresent(parsedSettings, "home_assistant_discovery_prefix", homeAssistantDiscoveryPrefix);
- this->setIfPresent(parsedSettings, "wifi_force_b_mode", wifiForceBMode);
+
+ if (parsedSettings.containsKey("wifi_mode")) {
+ this->wifiMode = wifiModeFromString(parsedSettings["wifi_mode"]);
+ }
if (parsedSettings.containsKey("rf24_channels")) {
JsonArray arr = parsedSettings["rf24_channels"];
@@ -284,7 +287,7 @@ void Settings::serialize(Print& stream, const bool prettyPrint) {
root["wifi_static_ip_netmask"] = this->wifiStaticIPNetmask;
root["packet_repeats_per_loop"] = this->packetRepeatsPerLoop;
root["home_assistant_discovery_prefix"] = this->homeAssistantDiscoveryPrefix;
- root["wifi_force_b_mode"] = this->wifiForceBMode;
+ root["wifi_mode"] = wifiModeToString(this->wifiMode);
JsonArray channelArr = root.createNestedArray("rf24_channels");
JsonHelpers::vectorToJsonArr(channelArr, rf24Channels, RF24ChannelHelpers::nameFromValue);
@@ -349,4 +352,26 @@ String Settings::typeToString(RadioInterfaceType type) {
default:
return "nRF24";
}
+}
+
+WifiMode Settings::wifiModeFromString(const String& mode) {
+ if (mode.equalsIgnoreCase("b")) {
+ return WifiMode::B;
+ } else if (mode.equalsIgnoreCase("g")) {
+ return WifiMode::G;
+ } else {
+ return WifiMode::N;
+ }
+}
+
+String Settings::wifiModeToString(WifiMode mode) {
+ switch (mode) {
+ case WifiMode::B:
+ return "b";
+ case WifiMode::G:
+ return "g";
+ case WifiMode::N:
+ default:
+ return "n";
+ }
}
\ No newline at end of file
diff --git a/lib/Settings/Settings.h b/lib/Settings/Settings.h
index 75857881..37ef5476 100644
--- a/lib/Settings/Settings.h
+++ b/lib/Settings/Settings.h
@@ -63,6 +63,10 @@ enum RadioInterfaceType {
LT8900 = 1,
};
+enum class WifiMode {
+ B, G, N
+};
+
static const std::vector DEFAULT_GROUP_STATE_FIELDS({
GroupStateField::STATE,
GroupStateField::BRIGHTNESS,
@@ -113,7 +117,7 @@ class Settings {
groupStateFields(DEFAULT_GROUP_STATE_FIELDS),
rf24ListenChannel(RF24Channel::RF24_LOW),
packetRepeatsPerLoop(10),
- wifiForceBMode(false),
+ wifiMode(WifiMode::N),
_autoRestartPeriod(0)
{ }
@@ -186,7 +190,7 @@ class Settings {
std::map groupIdAliases;
std::map deletedGroupIdAliases;
String homeAssistantDiscoveryPrefix;
- bool wifiForceBMode;
+ WifiMode wifiMode;
protected:
size_t _autoRestartPeriod;
@@ -194,6 +198,9 @@ class Settings {
void parseGroupIdAliases(JsonObject json);
void dumpGroupIdAliases(JsonObject json);
+ static WifiMode wifiModeFromString(const String& mode);
+ static String wifiModeToString(WifiMode mode);
+
template
void setIfPresent(JsonObject obj, const char* key, T& var) {
if (obj.containsKey(key)) {
diff --git a/src/main.cpp b/src/main.cpp
index 3c8aad9c..73a94c5f 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -272,11 +272,19 @@ void applySettings() {
WiFi.hostname(settings.hostname);
- if (settings.wifiForceBMode) {
- WiFi.setPhyMode(WIFI_PHY_MODE_11B);
- } else {
- WiFi.setPhyMode(WIFI_PHY_MODE_11G);
+ WiFiPhyMode_t wifiMode;
+ switch (settings.wifiMode) {
+ case WifiMode::B:
+ wifiMode = WIFI_PHY_MODE_11B;
+ break;
+ case WifiMode::G:
+ wifiMode = WIFI_PHY_MODE_11G;
+ break;
+ case WifiMode::N:
+ wifiMode = WIFI_PHY_MODE_11N;
+ break;
}
+ WiFi.setPhyMode(wifiMode);
}
/**
diff --git a/web/src/js/script.js b/web/src/js/script.js
index 7f6276f4..4848de0b 100644
--- a/web/src/js/script.js
+++ b/web/src/js/script.js
@@ -79,13 +79,14 @@ var UI_FIELDS = [ {
type: "string",
tab: "tab-wifi"
}, {
- tag: "wifi_force_b_mode",
- friendly: "Force 802.11b Mode",
- help: "If true, force the ESP8266 into 802.11b mode. Try this if you're having wifi stability problems.",
+ tag: "wifi_mode",
+ friendly: "WiFi Mode",
+ help: "Try using G mode if you're having stability problems",
type: "option_buttons",
options: {
- 'true': 'True',
- 'false': 'False'
+ 'b': 'B',
+ 'g': 'G',
+ 'n': 'N'
},
tab: "tab-wifi"
}, {