/* * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only * (the "License"). You may not use this file except in compliance * with the License. * * See the file CDDL.Schily.txt in this distribution for details. * * When distributing Covered Code, include this CDDL HEADER in each * file and include the License file CDDL.Schily.txt from this distribution. */ #ifdef EDC_DECODER static const unsigned char rs_l12_alog[512] = { 1, 2, 4, 8,16,32,64,128,29,58,116,232,205,135,19,38,76,152,45,90, 180,117,234,201,143, 3, 6,12,24,48,96,192,157,39,78,156,37,74,148,53, 106,212,181,119,238,193,159,35,70,140, 5,10,20,40,80,160,93,186,105,210, 185,111,222,161,95,190,97,194,153,47,94,188,101,202,137,15,30,60,120,240, 253,231,211,187,107,214,177,127,254,225,223,163,91,182,113,226,217,175,67,134, 17,34,68,136,13,26,52,104,208,189,103,206,129,31,62,124,248,237,199,147, 59,118,236,197,151,51,102,204,133,23,46,92,184,109,218,169,79,158,33,66, 132,21,42,84,168,77,154,41,82,164,85,170,73,146,57,114,228,213,183,115, 230,209,191,99,198,145,63,126,252,229,215,179,123,246,241,255,227,219,171,75, 150,49,98,196,149,55,110,220,165,87,174,65,130,25,50,100,200,141, 7,14, 28,56,112,224,221,167,83,166,81,162,89,178,121,242,249,239,195,155,43,86, 172,69,138, 9,18,36,72,144,61,122,244,245,247,243,251,235,203,139,11,22, 44,88,176,125,250,233,207,131,27,54,108,216,173,71,142, 1, 2, 4, 8,16, 32,64,128,29,58,116,232,205,135,19,38,76,152,45,90,180,117,234,201,143, 3, 6,12,24,48,96,192,157,39,78,156,37,74,148,53,106,212,181,119,238, 193,159,35,70,140, 5,10,20,40,80,160,93,186,105,210,185,111,222,161,95, 190,97,194,153,47,94,188,101,202,137,15,30,60,120,240,253,231,211,187,107, 214,177,127,254,225,223,163,91,182,113,226,217,175,67,134,17,34,68,136,13, 26,52,104,208,189,103,206,129,31,62,124,248,237,199,147,59,118,236,197,151, 51,102,204,133,23,46,92,184,109,218,169,79,158,33,66,132,21,42,84,168, 77,154,41,82,164,85,170,73,146,57,114,228,213,183,115,230,209,191,99,198, 145,63,126,252,229,215,179,123,246,241,255,227,219,171,75,150,49,98,196,149, 55,110,220,165,87,174,65,130,25,50,100,200,141, 7,14,28,56,112,224,221, 167,83,166,81,162,89,178,121,242,249,239,195,155,43,86,172,69,138, 9,18, 36,72,144,61,122,244,245,247,243,251,235,203,139,11,22,44,88,176,125,250, 233,207,131,27,54,108,216,173,71,142, 1, 2,}; static const unsigned char rs_l12_log[256] = { 255, 0, 1,25, 2,50,26,198, 3,223,51,238,27,104,199,75, 4,100,224,14, 52,141,239,129,28,193,105,248,200, 8,76,113, 5,138,101,47,225,36,15,33, 53,147,142,218,240,18,130,69,29,181,194,125,106,39,249,185,201,154, 9,120, 77,228,114,166, 6,191,139,98,102,221,48,253,226,152,37,179,16,145,34,136, 54,208,148,206,143,150,219,189,241,210,19,92,131,56,70,64,30,66,182,163, 195,72,126,110,107,58,40,84,250,133,186,61,202,94,155,159,10,21,121,43, 78,212,229,172,115,243,167,87, 7,112,192,247,140,128,99,13,103,74,222,237, 49,197,254,24,227,165,153,119,38,184,180,124,17,68,146,217,35,32,137,46, 55,63,209,91,149,188,207,205,144,135,151,178,220,252,190,97,242,86,211,171, 20,42,93,158,132,60,57,83,71,109,65,162,31,45,67,216,183,123,164,118, 196,23,73,236,127,12,111,246,108,161,59,82,41,157,85,170,251,96,134,177, 187,204,62,90,203,89,95,176,156,169,160,81,11,245,22,235,122,117,44,215, 79,174,213,233,230,231,173,232,116,214,244,234,168,80,88,175,}; static const unsigned char L2syn[45][256] = { {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39, 40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59, 60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79, 80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99, 100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119, 120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139, 140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159, 160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179, 180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199, 200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219, 220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239, 240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,}, {0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38, 40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78, 80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118, 120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158, 160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198, 200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238, 240,242,244,246,248,250,252,254,29,31,25,27,21,23,17,19,13,15,9,11, 5,7,1,3,61,63,57,59,53,55,49,51,45,47,41,43,37,39,33,35, 93,95,89,91,85,87,81,83,77,79,73,75,69,71,65,67,125,127,121,123, 117,119,113,115,109,111,105,107,101,103,97,99,157,159,153,155,149,151,145,147, 141,143,137,139,133,135,129,131,189,191,185,187,181,183,177,179,173,175,169,171, 165,167,161,163,221,223,217,219,213,215,209,211,205,207,201,203,197,199,193,195, 253,255,249,251,245,247,241,243,237,239,233,235,229,231,225,227,}, {0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76, 80,84,88,92,96,100,104,108,112,116,120,124,128,132,136,140,144,148,152,156, 160,164,168,172,176,180,184,188,192,196,200,204,208,212,216,220,224,228,232,236, 240,244,248,252,29,25,21,17,13,9,5,1,61,57,53,49,45,41,37,33, 93,89,85,81,77,73,69,65,125,121,117,113,109,105,101,97,157,153,149,145, 141,137,133,129,189,185,181,177,173,169,165,161,221,217,213,209,205,201,197,193, 253,249,245,241,237,233,229,225,58,62,50,54,42,46,34,38,26,30,18,22, 10,14,2,6,122,126,114,118,106,110,98,102,90,94,82,86,74,78,66,70, 186,190,178,182,170,174,162,166,154,158,146,150,138,142,130,134,250,254,242,246, 234,238,226,230,218,222,210,214,202,206,194,198,39,35,47,43,55,51,63,59, 7,3,15,11,23,19,31,27,103,99,111,107,119,115,127,123,71,67,79,75, 87,83,95,91,167,163,175,171,183,179,191,187,135,131,143,139,151,147,159,155, 231,227,239,235,247,243,255,251,199,195,207,203,215,211,223,219,}, {0,8,16,24,32,40,48,56,64,72,80,88,96,104,112,120,128,136,144,152, 160,168,176,184,192,200,208,216,224,232,240,248,29,21,13,5,61,53,45,37, 93,85,77,69,125,117,109,101,157,149,141,133,189,181,173,165,221,213,205,197, 253,245,237,229,58,50,42,34,26,18,10,2,122,114,106,98,90,82,74,66, 186,178,170,162,154,146,138,130,250,242,234,226,218,210,202,194,39,47,55,63, 7,15,23,31,103,111,119,127,71,79,87,95,167,175,183,191,135,143,151,159, 231,239,247,255,199,207,215,223,116,124,100,108,84,92,68,76,52,60,36,44, 20,28,4,12,244,252,228,236,212,220,196,204,180,188,164,172,148,156,132,140, 105,97,121,113,73,65,89,81,41,33,57,49,9,1,25,17,233,225,249,241, 201,193,217,209,169,161,185,177,137,129,153,145,78,70,94,86,110,102,126,118, 14,6,30,22,46,38,62,54,206,198,222,214,238,230,254,246,142,134,158,150, 174,166,190,182,83,91,67,75,115,123,99,107,19,27,3,11,51,59,35,43, 211,219,195,203,243,251,227,235,147,155,131,139,179,187,163,171,}, {0,16,32,48,64,80,96,112,128,144,160,176,192,208,224,240,29,13,61,45, 93,77,125,109,157,141,189,173,221,205,253,237,58,42,26,10,122,106,90,74, 186,170,154,138,250,234,218,202,39,55,7,23,103,119,71,87,167,183,135,151, 231,247,199,215,116,100,84,68,52,36,20,4,244,228,212,196,180,164,148,132, 105,121,73,89,41,57,9,25,233,249,201,217,169,185,137,153,78,94,110,126, 14,30,46,62,206,222,238,254,142,158,174,190,83,67,115,99,19,3,51,35, 211,195,243,227,147,131,179,163,232,248,200,216,168,184,136,152,104,120,72,88, 40,56,8,24,245,229,213,197,181,165,149,133,117,101,85,69,53,37,21,5, 210,194,242,226,146,130,178,162,82,66,114,98,18,2,50,34,207,223,239,255, 143,159,175,191,79,95,111,127,15,31,47,63,156,140,188,172,220,204,252,236, 28,12,60,44,92,76,124,108,129,145,161,177,193,209,225,241,1,17,33,49, 65,81,97,113,166,182,134,150,230,246,198,214,38,54,6,22,102,118,70,86, 187,171,155,139,251,235,219,203,59,43,27,11,123,107,91,75,}, {0,32,64,96,128,160,192,224,29,61,93,125,157,189,221,253,58,26,122,90, 186,154,250,218,39,7,103,71,167,135,231,199,116,84,52,20,244,212,180,148, 105,73,41,9,233,201,169,137,78,110,14,46,206,238,142,174,83,115,19,51, 211,243,147,179,232,200,168,136,104,72,40,8,245,213,181,149,117,85,53,21, 210,242,146,178,82,114,18,50,207,239,143,175,79,111,15,47,156,188,220,252, 28,60,92,124,129,161,193,225,1,33,65,97,166,134,230,198,38,6,102,70, 187,155,251,219,59,27,123,91,205,237,141,173,77,109,13,45,208,240,144,176, 80,112,16,48,247,215,183,151,119,87,55,23,234,202,170,138,106,74,42,10, 185,153,249,217,57,25,121,89,164,132,228,196,36,4,100,68,131,163,195,227, 3,35,67,99,158,190,222,254,30,62,94,126,37,5,101,69,165,133,229,197, 56,24,120,88,184,152,248,216,31,63,95,127,159,191,223,255,2,34,66,98, 130,162,194,226,81,113,17,49,209,241,145,177,76,108,12,44,204,236,140,172, 107,75,43,11,235,203,171,139,118,86,54,22,246,214,182,150,}, {0,64,128,192,29,93,157,221,58,122,186,250,39,103,167,231,116,52,244,180, 105,41,233,169,78,14,206,142,83,19,211,147,232,168,104,40,245,181,117,53, 210,146,82,18,207,143,79,15,156,220,28,92,129,193,1,65,166,230,38,102, 187,251,59,123,205,141,77,13,208,144,80,16,247,183,119,55,234,170,106,42, 185,249,57,121,164,228,36,100,131,195,3,67,158,222,30,94,37,101,165,229, 56,120,184,248,31,95,159,223,2,66,130,194,81,17,209,145,76,12,204,140, 107,43,235,171,118,54,246,182,135,199,7,71,154,218,26,90,189,253,61,125, 160,224,32,96,243,179,115,51,238,174,110,46,201,137,73,9,212,148,84,20, 111,47,239,175,114,50,242,178,85,21,213,149,72,8,200,136,27,91,155,219, 6,70,134,198,33,97,161,225,60,124,188,252,74,10,202,138,87,23,215,151, 112,48,240,176,109,45,237,173,62,126,190,254,35,99,163,227,4,68,132,196, 25,89,153,217,162,226,34,98,191,255,63,127,152,216,24,88,133,197,5,69, 214,150,86,22,203,139,75,11,236,172,108,44,241,177,113,49,}, {0,128,29,157,58,186,39,167,116,244,105,233,78,206,83,211,232,104,245,117, 210,82,207,79,156,28,129,1,166,38,187,59,205,77,208,80,247,119,234,106, 185,57,164,36,131,3,158,30,37,165,56,184,31,159,2,130,81,209,76,204, 107,235,118,246,135,7,154,26,189,61,160,32,243,115,238,110,201,73,212,84, 111,239,114,242,85,213,72,200,27,155,6,134,33,161,60,188,74,202,87,215, 112,240,109,237,62,190,35,163,4,132,25,153,162,34,191,63,152,24,133,5, 214,86,203,75,236,108,241,113,19,147,14,142,41,169,52,180,103,231,122,250, 93,221,64,192,251,123,230,102,193,65,220,92,143,15,146,18,181,53,168,40, 222,94,195,67,228,100,249,121,170,42,183,55,144,16,141,13,54,182,43,171, 12,140,17,145,66,194,95,223,120,248,101,229,148,20,137,9,174,46,179,51, 224,96,253,125,218,90,199,71,124,252,97,225,70,198,91,219,8,136,21,149, 50,178,47,175,89,217,68,196,99,227,126,254,45,173,48,176,23,151,10,138, 177,49,172,44,139,11,150,22,197,69,216,88,255,127,226,98,}, {0,29,58,39,116,105,78,83,232,245,210,207,156,129,166,187,205,208,247,234, 185,164,131,158,37,56,31,2,81,76,107,118,135,154,189,160,243,238,201,212, 111,114,85,72,27,6,33,60,74,87,112,109,62,35,4,25,162,191,152,133, 214,203,236,241,19,14,41,52,103,122,93,64,251,230,193,220,143,146,181,168, 222,195,228,249,170,183,144,141,54,43,12,17,66,95,120,101,148,137,174,179, 224,253,218,199,124,97,70,91,8,21,50,47,89,68,99,126,45,48,23,10, 177,172,139,150,197,216,255,226,38,59,28,1,82,79,104,117,206,211,244,233, 186,167,128,157,235,246,209,204,159,130,165,184,3,30,57,36,119,106,77,80, 161,188,155,134,213,200,239,242,73,84,115,110,61,32,7,26,108,113,86,75, 24,5,34,63,132,153,190,163,240,237,202,215,53,40,15,18,65,92,123,102, 221,192,231,250,169,180,147,142,248,229,194,223,140,145,182,171,16,13,42,55, 100,121,94,67,178,175,136,149,198,219,252,225,90,71,96,125,46,51,20,9, 127,98,69,88,11,22,49,44,151,138,173,176,227,254,217,196,}, {0,58,116,78,232,210,156,166,205,247,185,131,37,31,81,107,135,189,243,201, 111,85,27,33,74,112,62,4,162,152,214,236,19,41,103,93,251,193,143,181, 222,228,170,144,54,12,66,120,148,174,224,218,124,70,8,50,89,99,45,23, 177,139,197,255,38,28,82,104,206,244,186,128,235,209,159,165,3,57,119,77, 161,155,213,239,73,115,61,7,108,86,24,34,132,190,240,202,53,15,65,123, 221,231,169,147,248,194,140,182,16,42,100,94,178,136,198,252,90,96,46,20, 127,69,11,49,151,173,227,217,76,118,56,2,164,158,208,234,129,187,245,207, 105,83,29,39,203,241,191,133,35,25,87,109,6,60,114,72,238,212,154,160, 95,101,43,17,183,141,195,249,146,168,230,220,122,64,14,52,216,226,172,150, 48,10,68,126,21,47,97,91,253,199,137,179,106,80,30,36,130,184,246,204, 167,157,211,233,79,117,59,1,237,215,153,163,5,63,113,75,32,26,84,110, 200,242,188,134,121,67,13,55,145,171,229,223,180,142,192,250,92,102,40,18, 254,196,138,176,22,44,98,88,51,9,71,125,219,225,175,149,}, {0,116,232,156,205,185,37,81,135,243,111,27,74,62,162,214,19,103,251,143, 222,170,54,66,148,224,124,8,89,45,177,197,38,82,206,186,235,159,3,119, 161,213,73,61,108,24,132,240,53,65,221,169,248,140,16,100,178,198,90,46, 127,11,151,227,76,56,164,208,129,245,105,29,203,191,35,87,6,114,238,154, 95,43,183,195,146,230,122,14,216,172,48,68,21,97,253,137,106,30,130,246, 167,211,79,59,237,153,5,113,32,84,200,188,121,13,145,229,180,192,92,40, 254,138,22,98,51,71,219,175,152,236,112,4,85,33,189,201,31,107,247,131, 210,166,58,78,139,255,99,23,70,50,174,218,12,120,228,144,193,181,41,93, 190,202,86,34,115,7,155,239,57,77,209,165,244,128,28,104,173,217,69,49, 96,20,136,252,42,94,194,182,231,147,15,123,212,160,60,72,25,109,241,133, 83,39,187,207,158,234,118,2,199,179,47,91,10,126,226,150,64,52,168,220, 141,249,101,17,242,134,26,110,63,75,215,163,117,1,157,233,184,204,80,36, 225,149,9,125,44,88,196,176,102,18,142,250,171,223,67,55,}, {0,232,205,37,135,111,74,162,19,251,222,54,148,124,89,177,38,206,235,3, 161,73,108,132,53,221,248,16,178,90,127,151,76,164,129,105,203,35,6,238, 95,183,146,122,216,48,21,253,106,130,167,79,237,5,32,200,121,145,180,92, 254,22,51,219,152,112,85,189,31,247,210,58,139,99,70,174,12,228,193,41, 190,86,115,155,57,209,244,28,173,69,96,136,42,194,231,15,212,60,25,241, 83,187,158,118,199,47,10,226,64,168,141,101,242,26,63,215,117,157,184,80, 225,9,44,196,102,142,171,67,45,197,224,8,170,66,103,143,62,214,243,27, 185,81,116,156,11,227,198,46,140,100,65,169,24,240,213,61,159,119,82,186, 97,137,172,68,230,14,43,195,114,154,191,87,245,29,56,208,71,175,138,98, 192,40,13,229,84,188,153,113,211,59,30,246,181,93,120,144,50,218,255,23, 166,78,107,131,33,201,236,4,147,123,94,182,20,252,217,49,128,104,77,165, 7,239,202,34,249,17,52,220,126,150,179,91,234,2,39,207,109,133,160,72, 223,55,18,250,88,176,149,125,204,36,1,233,75,163,134,110,}, {0,205,135,74,19,222,148,89,38,235,161,108,53,248,178,127,76,129,203,6, 95,146,216,21,106,167,237,32,121,180,254,51,152,85,31,210,139,70,12,193, 190,115,57,244,173,96,42,231,212,25,83,158,199,10,64,141,242,63,117,184, 225,44,102,171,45,224,170,103,62,243,185,116,11,198,140,65,24,213,159,82, 97,172,230,43,114,191,245,56,71,138,192,13,84,153,211,30,181,120,50,255, 166,107,33,236,147,94,20,217,128,77,7,202,249,52,126,179,234,39,109,160, 223,18,88,149,204,1,75,134,90,151,221,16,73,132,206,3,124,177,251,54, 111,162,232,37,22,219,145,92,5,200,130,79,48,253,183,122,35,238,164,105, 194,15,69,136,209,28,86,155,228,41,99,174,247,58,112,189,142,67,9,196, 157,80,26,215,168,101,47,226,187,118,60,241,119,186,240,61,100,169,227,46, 81,156,214,27,66,143,197,8,59,246,188,113,40,229,175,98,29,208,154,87, 14,195,137,68,239,34,104,165,252,49,123,182,201,4,78,131,218,23,93,144, 163,110,36,233,176,125,55,250,133,72,2,207,150,91,17,220,}, {0,135,19,148,38,161,53,178,76,203,95,216,106,237,121,254,152,31,139,12, 190,57,173,42,212,83,199,64,242,117,225,102,45,170,62,185,11,140,24,159, 97,230,114,245,71,192,84,211,181,50,166,33,147,20,128,7,249,126,234,109, 223,88,204,75,90,221,73,206,124,251,111,232,22,145,5,130,48,183,35,164, 194,69,209,86,228,99,247,112,142,9,157,26,168,47,187,60,119,240,100,227, 81,214,66,197,59,188,40,175,29,154,14,137,239,104,252,123,201,78,218,93, 163,36,176,55,133,2,150,17,180,51,167,32,146,21,129,6,248,127,235,108, 222,89,205,74,44,171,63,184,10,141,25,158,96,231,115,244,70,193,85,210, 153,30,138,13,191,56,172,43,213,82,198,65,243,116,224,103,1,134,18,149, 39,160,52,179,77,202,94,217,107,236,120,255,238,105,253,122,200,79,219,92, 162,37,177,54,132,3,151,16,118,241,101,226,80,215,67,196,58,189,41,174, 28,155,15,136,195,68,208,87,229,98,246,113,143,8,156,27,169,46,186,61, 91,220,72,207,125,250,110,233,23,144,4,131,49,182,34,165,}, {0,19,38,53,76,95,106,121,152,139,190,173,212,199,242,225,45,62,11,24, 97,114,71,84,181,166,147,128,249,234,223,204,90,73,124,111,22,5,48,35, 194,209,228,247,142,157,168,187,119,100,81,66,59,40,29,14,239,252,201,218, 163,176,133,150,180,167,146,129,248,235,222,205,44,63,10,25,96,115,70,85, 153,138,191,172,213,198,243,224,1,18,39,52,77,94,107,120,238,253,200,219, 162,177,132,151,118,101,80,67,58,41,28,15,195,208,229,246,143,156,169,186, 91,72,125,110,23,4,49,34,117,102,83,64,57,42,31,12,237,254,203,216, 161,178,135,148,88,75,126,109,20,7,50,33,192,211,230,245,140,159,170,185, 47,60,9,26,99,112,69,86,183,164,145,130,251,232,221,206,2,17,36,55, 78,93,104,123,154,137,188,175,214,197,240,227,193,210,231,244,141,158,171,184, 89,74,127,108,21,6,51,32,236,255,202,217,160,179,134,149,116,103,82,65, 56,43,30,13,155,136,189,174,215,196,241,226,3,16,37,54,79,92,105,122, 182,165,144,131,250,233,220,207,46,61,8,27,98,113,68,87,}, {0,38,76,106,152,190,212,242,45,11,97,71,181,147,249,223,90,124,22,48, 194,228,142,168,119,81,59,29,239,201,163,133,180,146,248,222,44,10,96,70, 153,191,213,243,1,39,77,107,238,200,162,132,118,80,58,28,195,229,143,169, 91,125,23,49,117,83,57,31,237,203,161,135,88,126,20,50,192,230,140,170, 47,9,99,69,183,145,251,221,2,36,78,104,154,188,214,240,193,231,141,171, 89,127,21,51,236,202,160,134,116,82,56,30,155,189,215,241,3,37,79,105, 182,144,250,220,46,8,98,68,234,204,166,128,114,84,62,24,199,225,139,173, 95,121,19,53,176,150,252,218,40,14,100,66,157,187,209,247,5,35,73,111, 94,120,18,52,198,224,138,172,115,85,63,25,235,205,167,129,4,34,72,110, 156,186,208,246,41,15,101,67,177,151,253,219,159,185,211,245,7,33,75,109, 178,148,254,216,42,12,102,64,197,227,137,175,93,123,17,55,232,206,164,130, 112,86,60,26,43,13,103,65,179,149,255,217,6,32,74,108,158,184,210,244, 113,87,61,27,233,207,165,131,92,122,16,54,196,226,136,174,}, {0,76,152,212,45,97,181,249,90,22,194,142,119,59,239,163,180,248,44,96, 153,213,1,77,238,162,118,58,195,143,91,23,117,57,237,161,88,20,192,140, 47,99,183,251,2,78,154,214,193,141,89,21,236,160,116,56,155,215,3,79, 182,250,46,98,234,166,114,62,199,139,95,19,176,252,40,100,157,209,5,73, 94,18,198,138,115,63,235,167,4,72,156,208,41,101,177,253,159,211,7,75, 178,254,42,102,197,137,93,17,232,164,112,60,43,103,179,255,6,74,158,210, 113,61,233,165,92,16,196,136,201,133,81,29,228,168,124,48,147,223,11,71, 190,242,38,106,125,49,229,169,80,28,200,132,39,107,191,243,10,70,146,222, 188,240,36,104,145,221,9,69,230,170,126,50,203,135,83,31,8,68,144,220, 37,105,189,241,82,30,202,134,127,51,231,171,35,111,187,247,14,66,150,218, 121,53,225,173,84,24,204,128,151,219,15,67,186,246,34,110,205,129,85,25, 224,172,120,52,86,26,206,130,123,55,227,175,12,64,148,216,33,109,185,245, 226,174,122,54,207,131,87,27,184,244,32,108,149,217,13,65,}, {0,152,45,181,90,194,119,239,180,44,153,1,238,118,195,91,117,237,88,192, 47,183,2,154,193,89,236,116,155,3,182,46,234,114,199,95,176,40,157,5, 94,198,115,235,4,156,41,177,159,7,178,42,197,93,232,112,43,179,6,158, 113,233,92,196,201,81,228,124,147,11,190,38,125,229,80,200,39,191,10,146, 188,36,145,9,230,126,203,83,8,144,37,189,82,202,127,231,35,187,14,150, 121,225,84,204,151,15,186,34,205,85,224,120,86,206,123,227,12,148,33,185, 226,122,207,87,184,32,149,13,143,23,162,58,213,77,248,96,59,163,22,142, 97,249,76,212,250,98,215,79,160,56,141,21,78,214,99,251,20,140,57,161, 101,253,72,208,63,167,18,138,209,73,252,100,139,19,166,62,16,136,61,165, 74,210,103,255,164,60,137,17,254,102,211,75,70,222,107,243,28,132,49,169, 242,106,223,71,168,48,133,29,51,171,30,134,105,241,68,220,135,31,170,50, 221,69,240,104,172,52,129,25,246,110,219,67,24,128,53,173,66,218,111,247, 217,65,244,108,131,27,174,54,109,245,64,216,55,175,26,130,}, {0,45,90,119,180,153,238,195,117,88,47,2,193,236,155,182,234,199,176,157, 94,115,4,41,159,178,197,232,43,6,113,92,201,228,147,190,125,80,39,10, 188,145,230,203,8,37,82,127,35,14,121,84,151,186,205,224,86,123,12,33, 226,207,184,149,143,162,213,248,59,22,97,76,250,215,160,141,78,99,20,57, 101,72,63,18,209,252,139,166,16,61,74,103,164,137,254,211,70,107,28,49, 242,223,168,133,51,30,105,68,135,170,221,240,172,129,246,219,24,53,66,111, 217,244,131,174,109,64,55,26,3,46,89,116,183,154,237,192,118,91,44,1, 194,239,152,181,233,196,179,158,93,112,7,42,156,177,198,235,40,5,114,95, 202,231,144,189,126,83,36,9,191,146,229,200,11,38,81,124,32,13,122,87, 148,185,206,227,85,120,15,34,225,204,187,150,140,161,214,251,56,21,98,79, 249,212,163,142,77,96,23,58,102,75,60,17,210,255,136,165,19,62,73,100, 167,138,253,208,69,104,31,50,241,220,171,134,48,29,106,71,132,169,222,243, 175,130,245,216,27,54,65,108,218,247,128,173,110,67,52,25,}, {0,90,180,238,117,47,193,155,234,176,94,4,159,197,43,113,201,147,125,39, 188,230,8,82,35,121,151,205,86,12,226,184,143,213,59,97,250,160,78,20, 101,63,209,139,16,74,164,254,70,28,242,168,51,105,135,221,172,246,24,66, 217,131,109,55,3,89,183,237,118,44,194,152,233,179,93,7,156,198,40,114, 202,144,126,36,191,229,11,81,32,122,148,206,85,15,225,187,140,214,56,98, 249,163,77,23,102,60,210,136,19,73,167,253,69,31,241,171,48,106,132,222, 175,245,27,65,218,128,110,52,6,92,178,232,115,41,199,157,236,182,88,2, 153,195,45,119,207,149,123,33,186,224,14,84,37,127,145,203,80,10,228,190, 137,211,61,103,252,166,72,18,99,57,215,141,22,76,162,248,64,26,244,174, 53,111,129,219,170,240,30,68,223,133,107,49,5,95,177,235,112,42,196,158, 239,181,91,1,154,192,46,116,204,150,120,34,185,227,13,87,38,124,146,200, 83,9,231,189,138,208,62,100,255,165,75,17,96,58,212,142,21,79,161,251, 67,25,247,173,54,108,130,216,169,243,29,71,220,134,104,50,}, {0,180,117,193,234,94,159,43,201,125,188,8,35,151,86,226,143,59,250,78, 101,209,16,164,70,242,51,135,172,24,217,109,3,183,118,194,233,93,156,40, 202,126,191,11,32,148,85,225,140,56,249,77,102,210,19,167,69,241,48,132, 175,27,218,110,6,178,115,199,236,88,153,45,207,123,186,14,37,145,80,228, 137,61,252,72,99,215,22,162,64,244,53,129,170,30,223,107,5,177,112,196, 239,91,154,46,204,120,185,13,38,146,83,231,138,62,255,75,96,212,21,161, 67,247,54,130,169,29,220,104,12,184,121,205,230,82,147,39,197,113,176,4, 47,155,90,238,131,55,246,66,105,221,28,168,74,254,63,139,160,20,213,97, 15,187,122,206,229,81,144,36,198,114,179,7,44,152,89,237,128,52,245,65, 106,222,31,171,73,253,60,136,163,23,214,98,10,190,127,203,224,84,149,33, 195,119,182,2,41,157,92,232,133,49,240,68,111,219,26,174,76,248,57,141, 166,18,211,103,9,189,124,200,227,87,150,34,192,116,181,1,42,158,95,235, 134,50,243,71,108,216,25,173,79,251,58,142,165,17,208,100,}, {0,117,234,159,201,188,35,86,143,250,101,16,70,51,172,217,3,118,233,156, 202,191,32,85,140,249,102,19,69,48,175,218,6,115,236,153,207,186,37,80, 137,252,99,22,64,53,170,223,5,112,239,154,204,185,38,83,138,255,96,21, 67,54,169,220,12,121,230,147,197,176,47,90,131,246,105,28,74,63,160,213, 15,122,229,144,198,179,44,89,128,245,106,31,73,60,163,214,10,127,224,149, 195,182,41,92,133,240,111,26,76,57,166,211,9,124,227,150,192,181,42,95, 134,243,108,25,79,58,165,208,24,109,242,135,209,164,59,78,151,226,125,8, 94,43,180,193,27,110,241,132,210,167,56,77,148,225,126,11,93,40,183,194, 30,107,244,129,215,162,61,72,145,228,123,14,88,45,178,199,29,104,247,130, 212,161,62,75,146,231,120,13,91,46,177,196,20,97,254,139,221,168,55,66, 155,238,113,4,82,39,184,205,23,98,253,136,222,171,52,65,152,237,114,7, 81,36,187,206,18,103,248,141,219,174,49,68,157,232,119,2,84,33,190,203, 17,100,251,142,216,173,50,71,158,235,116,1,87,34,189,200,}, {0,234,201,35,143,101,70,172,3,233,202,32,140,102,69,175,6,236,207,37, 137,99,64,170,5,239,204,38,138,96,67,169,12,230,197,47,131,105,74,160, 15,229,198,44,128,106,73,163,10,224,195,41,133,111,76,166,9,227,192,42, 134,108,79,165,24,242,209,59,151,125,94,180,27,241,210,56,148,126,93,183, 30,244,215,61,145,123,88,178,29,247,212,62,146,120,91,177,20,254,221,55, 155,113,82,184,23,253,222,52,152,114,81,187,18,248,219,49,157,119,84,190, 17,251,216,50,158,116,87,189,48,218,249,19,191,85,118,156,51,217,250,16, 188,86,117,159,54,220,255,21,185,83,112,154,53,223,252,22,186,80,115,153, 60,214,245,31,179,89,122,144,63,213,246,28,176,90,121,147,58,208,243,25, 181,95,124,150,57,211,240,26,182,92,127,149,40,194,225,11,167,77,110,132, 43,193,226,8,164,78,109,135,46,196,231,13,161,75,104,130,45,199,228,14, 162,72,107,129,36,206,237,7,171,65,98,136,39,205,238,4,168,66,97,139, 34,200,235,1,173,71,100,142,33,203,232,2,174,68,103,141,}, {0,201,143,70,3,202,140,69,6,207,137,64,5,204,138,67,12,197,131,74, 15,198,128,73,10,195,133,76,9,192,134,79,24,209,151,94,27,210,148,93, 30,215,145,88,29,212,146,91,20,221,155,82,23,222,152,81,18,219,157,84, 17,216,158,87,48,249,191,118,51,250,188,117,54,255,185,112,53,252,186,115, 60,245,179,122,63,246,176,121,58,243,181,124,57,240,182,127,40,225,167,110, 43,226,164,109,46,231,161,104,45,228,162,107,36,237,171,98,39,238,168,97, 34,235,173,100,33,232,174,103,96,169,239,38,99,170,236,37,102,175,233,32, 101,172,234,35,108,165,227,42,111,166,224,41,106,163,229,44,105,160,230,47, 120,177,247,62,123,178,244,61,126,183,241,56,125,180,242,59,116,189,251,50, 119,190,248,49,114,187,253,52,113,184,254,55,80,153,223,22,83,154,220,21, 86,159,217,16,85,156,218,19,92,149,211,26,95,150,208,25,90,147,213,28, 89,144,214,31,72,129,199,14,75,130,196,13,78,135,193,8,77,132,194,11, 68,141,203,2,71,142,200,1,66,139,205,4,65,136,206,7,}, {0,143,3,140,6,137,5,138,12,131,15,128,10,133,9,134,24,151,27,148, 30,145,29,146,20,155,23,152,18,157,17,158,48,191,51,188,54,185,53,186, 60,179,63,176,58,181,57,182,40,167,43,164,46,161,45,162,36,171,39,168, 34,173,33,174,96,239,99,236,102,233,101,234,108,227,111,224,106,229,105,230, 120,247,123,244,126,241,125,242,116,251,119,248,114,253,113,254,80,223,83,220, 86,217,85,218,92,211,95,208,90,213,89,214,72,199,75,196,78,193,77,194, 68,203,71,200,66,205,65,206,192,79,195,76,198,73,197,74,204,67,207,64, 202,69,201,70,216,87,219,84,222,81,221,82,212,91,215,88,210,93,209,94, 240,127,243,124,246,121,245,122,252,115,255,112,250,117,249,118,232,103,235,100, 238,97,237,98,228,107,231,104,226,109,225,110,160,47,163,44,166,41,165,42, 172,35,175,32,170,37,169,38,184,55,187,52,190,49,189,50,180,59,183,56, 178,61,177,62,144,31,147,28,150,25,149,26,156,19,159,16,154,21,153,22, 136,7,139,4,142,1,141,2,132,11,135,8,130,13,129,14,}, {0,3,6,5,12,15,10,9,24,27,30,29,20,23,18,17,48,51,54,53, 60,63,58,57,40,43,46,45,36,39,34,33,96,99,102,101,108,111,106,105, 120,123,126,125,116,119,114,113,80,83,86,85,92,95,90,89,72,75,78,77, 68,71,66,65,192,195,198,197,204,207,202,201,216,219,222,221,212,215,210,209, 240,243,246,245,252,255,250,249,232,235,238,237,228,231,226,225,160,163,166,165, 172,175,170,169,184,187,190,189,180,183,178,177,144,147,150,149,156,159,154,153, 136,139,142,141,132,135,130,129,157,158,155,152,145,146,151,148,133,134,131,128, 137,138,143,140,173,174,171,168,161,162,167,164,181,182,179,176,185,186,191,188, 253,254,251,248,241,242,247,244,229,230,227,224,233,234,239,236,205,206,203,200, 193,194,199,196,213,214,211,208,217,218,223,220,93,94,91,88,81,82,87,84, 69,70,67,64,73,74,79,76,109,110,107,104,97,98,103,100,117,118,115,112, 121,122,127,124,61,62,59,56,49,50,55,52,37,38,35,32,41,42,47,44, 13,14,11,8,1,2,7,4,21,22,19,16,25,26,31,28,}, {0,6,12,10,24,30,20,18,48,54,60,58,40,46,36,34,96,102,108,106, 120,126,116,114,80,86,92,90,72,78,68,66,192,198,204,202,216,222,212,210, 240,246,252,250,232,238,228,226,160,166,172,170,184,190,180,178,144,150,156,154, 136,142,132,130,157,155,145,151,133,131,137,143,173,171,161,167,181,179,185,191, 253,251,241,247,229,227,233,239,205,203,193,199,213,211,217,223,93,91,81,87, 69,67,73,79,109,107,97,103,117,115,121,127,61,59,49,55,37,35,41,47, 13,11,1,7,21,19,25,31,39,33,43,45,63,57,51,53,23,17,27,29, 15,9,3,5,71,65,75,77,95,89,83,85,119,113,123,125,111,105,99,101, 231,225,235,237,255,249,243,245,215,209,219,221,207,201,195,197,135,129,139,141, 159,153,147,149,183,177,187,189,175,169,163,165,186,188,182,176,162,164,174,168, 138,140,134,128,146,148,158,152,218,220,214,208,194,196,206,200,234,236,230,224, 242,244,254,248,122,124,118,112,98,100,110,104,74,76,70,64,82,84,94,88, 26,28,22,16,2,4,14,8,42,44,38,32,50,52,62,56,}, {0,12,24,20,48,60,40,36,96,108,120,116,80,92,72,68,192,204,216,212, 240,252,232,228,160,172,184,180,144,156,136,132,157,145,133,137,173,161,181,185, 253,241,229,233,205,193,213,217,93,81,69,73,109,97,117,121,61,49,37,41, 13,1,21,25,39,43,63,51,23,27,15,3,71,75,95,83,119,123,111,99, 231,235,255,243,215,219,207,195,135,139,159,147,183,187,175,163,186,182,162,174, 138,134,146,158,218,214,194,206,234,230,242,254,122,118,98,110,74,70,82,94, 26,22,2,14,42,38,50,62,78,66,86,90,126,114,102,106,46,34,54,58, 30,18,6,10,142,130,150,154,190,178,166,170,238,226,246,250,222,210,198,202, 211,223,203,199,227,239,251,247,179,191,171,167,131,143,155,151,19,31,11,7, 35,47,59,55,115,127,107,103,67,79,91,87,105,101,113,125,89,85,65,77, 9,5,17,29,57,53,33,45,169,165,177,189,153,149,129,141,201,197,209,221, 249,245,225,237,244,248,236,224,196,200,220,208,148,152,140,128,164,168,188,176, 52,56,44,32,4,8,28,16,84,88,76,64,100,104,124,112,}, {0,24,48,40,96,120,80,72,192,216,240,232,160,184,144,136,157,133,173,181, 253,229,205,213,93,69,109,117,61,37,13,21,39,63,23,15,71,95,119,111, 231,255,215,207,135,159,183,175,186,162,138,146,218,194,234,242,122,98,74,82, 26,2,42,50,78,86,126,102,46,54,30,6,142,150,190,166,238,246,222,198, 211,203,227,251,179,171,131,155,19,11,35,59,115,107,67,91,105,113,89,65, 9,17,57,33,169,177,153,129,201,209,249,225,244,236,196,220,148,140,164,188, 52,44,4,28,84,76,100,124,156,132,172,180,252,228,204,212,92,68,108,116, 60,36,12,20,1,25,49,41,97,121,81,73,193,217,241,233,161,185,145,137, 187,163,139,147,219,195,235,243,123,99,75,83,27,3,43,51,38,62,22,14, 70,94,118,110,230,254,214,206,134,158,182,174,210,202,226,250,178,170,130,154, 18,10,34,58,114,106,66,90,79,87,127,103,47,55,31,7,143,151,191,167, 239,247,223,199,245,237,197,221,149,141,165,189,53,45,5,29,85,77,101,125, 104,112,88,64,8,16,56,32,168,176,152,128,200,208,248,224,}, {0,48,96,80,192,240,160,144,157,173,253,205,93,109,61,13,39,23,71,119, 231,215,135,183,186,138,218,234,122,74,26,42,78,126,46,30,142,190,238,222, 211,227,179,131,19,35,115,67,105,89,9,57,169,153,201,249,244,196,148,164, 52,4,84,100,156,172,252,204,92,108,60,12,1,49,97,81,193,241,161,145, 187,139,219,235,123,75,27,43,38,22,70,118,230,214,134,182,210,226,178,130, 18,34,114,66,79,127,47,31,143,191,239,223,245,197,149,165,53,5,85,101, 104,88,8,56,168,152,200,248,37,21,69,117,229,213,133,181,184,136,216,232, 120,72,24,40,2,50,98,82,194,242,162,146,159,175,255,207,95,111,63,15, 107,91,11,59,171,155,203,251,246,198,150,166,54,6,86,102,76,124,44,28, 140,188,236,220,209,225,177,129,17,33,113,65,185,137,217,233,121,73,25,41, 36,20,68,116,228,212,132,180,158,174,254,206,94,110,62,14,3,51,99,83, 195,243,163,147,247,199,151,167,55,7,87,103,106,90,10,58,170,154,202,250, 208,224,176,128,16,32,112,64,77,125,45,29,141,189,237,221,}, {0,96,192,160,157,253,93,61,39,71,231,135,186,218,122,26,78,46,142,238, 211,179,19,115,105,9,169,201,244,148,52,84,156,252,92,60,1,97,193,161, 187,219,123,27,38,70,230,134,210,178,18,114,79,47,143,239,245,149,53,85, 104,8,168,200,37,69,229,133,184,216,120,24,2,98,194,162,159,255,95,63, 107,11,171,203,246,150,54,86,76,44,140,236,209,177,17,113,185,217,121,25, 36,68,228,132,158,254,94,62,3,99,195,163,247,151,55,87,106,10,170,202, 208,176,16,112,77,45,141,237,74,42,138,234,215,183,23,119,109,13,173,205, 240,144,48,80,4,100,196,164,153,249,89,57,35,67,227,131,190,222,126,30, 214,182,22,118,75,43,139,235,241,145,49,81,108,12,172,204,152,248,88,56, 5,101,197,165,191,223,127,31,34,66,226,130,111,15,175,207,242,146,50,82, 72,40,136,232,213,181,21,117,33,65,225,129,188,220,124,28,6,102,198,166, 155,251,91,59,243,147,51,83,110,14,174,206,212,180,20,116,73,41,137,233, 189,221,125,29,32,64,224,128,154,250,90,58,7,103,199,167,}, {0,192,157,93,39,231,186,122,78,142,211,19,105,169,244,52,156,92,1,193, 187,123,38,230,210,18,79,143,245,53,104,168,37,229,184,120,2,194,159,95, 107,171,246,54,76,140,209,17,185,121,36,228,158,94,3,195,247,55,106,170, 208,16,77,141,74,138,215,23,109,173,240,48,4,196,153,89,35,227,190,126, 214,22,75,139,241,49,108,172,152,88,5,197,191,127,34,226,111,175,242,50, 72,136,213,21,33,225,188,124,6,198,155,91,243,51,110,174,212,20,73,137, 189,125,32,224,154,90,7,199,148,84,9,201,179,115,46,238,218,26,71,135, 253,61,96,160,8,200,149,85,47,239,178,114,70,134,219,27,97,161,252,60, 177,113,44,236,150,86,11,203,255,63,98,162,216,24,69,133,45,237,176,112, 10,202,151,87,99,163,254,62,68,132,217,25,222,30,67,131,249,57,100,164, 144,80,13,205,183,119,42,234,66,130,223,31,101,165,248,56,12,204,145,81, 43,235,182,118,251,59,102,166,220,28,65,129,181,117,40,232,146,82,15,207, 103,167,250,58,64,128,221,29,41,233,180,116,14,206,147,83,}, {0,157,39,186,78,211,105,244,156,1,187,38,210,79,245,104,37,184,2,159, 107,246,76,209,185,36,158,3,247,106,208,77,74,215,109,240,4,153,35,190, 214,75,241,108,152,5,191,34,111,242,72,213,33,188,6,155,243,110,212,73, 189,32,154,7,148,9,179,46,218,71,253,96,8,149,47,178,70,219,97,252, 177,44,150,11,255,98,216,69,45,176,10,151,99,254,68,217,222,67,249,100, 144,13,183,42,66,223,101,248,12,145,43,182,251,102,220,65,181,40,146,15, 103,250,64,221,41,180,14,147,53,168,18,143,123,230,92,193,169,52,142,19, 231,122,192,93,16,141,55,170,94,195,121,228,140,17,171,54,194,95,229,120, 127,226,88,197,49,172,22,139,227,126,196,89,173,48,138,23,90,199,125,224, 20,137,51,174,198,91,225,124,136,21,175,50,161,60,134,27,239,114,200,85, 61,160,26,135,115,238,84,201,132,25,163,62,202,87,237,112,24,133,63,162, 86,203,113,236,235,118,204,81,165,56,130,31,119,234,80,205,57,164,30,131, 206,83,233,116,128,29,167,58,82,207,117,232,28,129,59,166,}, {0,39,78,105,156,187,210,245,37,2,107,76,185,158,247,208,74,109,4,35, 214,241,152,191,111,72,33,6,243,212,189,154,148,179,218,253,8,47,70,97, 177,150,255,216,45,10,99,68,222,249,144,183,66,101,12,43,251,220,181,146, 103,64,41,14,53,18,123,92,169,142,231,192,16,55,94,121,140,171,194,229, 127,88,49,22,227,196,173,138,90,125,20,51,198,225,136,175,161,134,239,200, 61,26,115,84,132,163,202,237,24,63,86,113,235,204,165,130,119,80,57,30, 206,233,128,167,82,117,28,59,106,77,36,3,246,209,184,159,79,104,1,38, 211,244,157,186,32,7,110,73,188,155,242,213,5,34,75,108,153,190,215,240, 254,217,176,151,98,69,44,11,219,252,149,178,71,96,9,46,180,147,250,221, 40,15,102,65,145,182,223,248,13,42,67,100,95,120,17,54,195,228,141,170, 122,93,52,19,230,193,168,143,21,50,91,124,137,174,199,224,48,23,126,89, 172,139,226,197,203,236,133,162,87,112,25,62,238,201,160,135,114,85,60,27, 129,166,207,232,29,58,83,116,164,131,234,205,56,31,118,81,}, {0,78,156,210,37,107,185,247,74,4,214,152,111,33,243,189,148,218,8,70, 177,255,45,99,222,144,66,12,251,181,103,41,53,123,169,231,16,94,140,194, 127,49,227,173,90,20,198,136,161,239,61,115,132,202,24,86,235,165,119,57, 206,128,82,28,106,36,246,184,79,1,211,157,32,110,188,242,5,75,153,215, 254,176,98,44,219,149,71,9,180,250,40,102,145,223,13,67,95,17,195,141, 122,52,230,168,21,91,137,199,48,126,172,226,203,133,87,25,238,160,114,60, 129,207,29,83,164,234,56,118,212,154,72,6,241,191,109,35,158,208,2,76, 187,245,39,105,64,14,220,146,101,43,249,183,10,68,150,216,47,97,179,253, 225,175,125,51,196,138,88,22,171,229,55,121,142,192,18,92,117,59,233,167, 80,30,204,130,63,113,163,237,26,84,134,200,190,240,34,108,155,213,7,73, 244,186,104,38,209,159,77,3,42,100,182,248,15,65,147,221,96,46,252,178, 69,11,217,151,139,197,23,89,174,224,50,124,193,143,93,19,228,170,120,54, 31,81,131,205,58,116,166,232,85,27,201,135,112,62,236,162,}, {0,156,37,185,74,214,111,243,148,8,177,45,222,66,251,103,53,169,16,140, 127,227,90,198,161,61,132,24,235,119,206,82,106,246,79,211,32,188,5,153, 254,98,219,71,180,40,145,13,95,195,122,230,21,137,48,172,203,87,238,114, 129,29,164,56,212,72,241,109,158,2,187,39,64,220,101,249,10,150,47,179, 225,125,196,88,171,55,142,18,117,233,80,204,63,163,26,134,190,34,155,7, 244,104,209,77,42,182,15,147,96,252,69,217,139,23,174,50,193,93,228,120, 31,131,58,166,85,201,112,236,181,41,144,12,255,99,218,70,33,189,4,152, 107,247,78,210,128,28,165,57,202,86,239,115,20,136,49,173,94,194,123,231, 223,67,250,102,149,9,176,44,75,215,110,242,1,157,36,184,234,118,207,83, 160,60,133,25,126,226,91,199,52,168,17,141,97,253,68,216,43,183,14,146, 245,105,208,76,191,35,154,6,84,200,113,237,30,130,59,167,192,92,229,121, 138,22,175,51,11,151,46,178,65,221,100,248,159,3,186,38,213,73,240,108, 62,162,27,135,116,232,81,205,170,54,143,19,224,124,197,89,}, {0,37,74,111,148,177,222,251,53,16,127,90,161,132,235,206,106,79,32,5, 254,219,180,145,95,122,21,48,203,238,129,164,212,241,158,187,64,101,10,47, 225,196,171,142,117,80,63,26,190,155,244,209,42,15,96,69,139,174,193,228, 31,58,85,112,181,144,255,218,33,4,107,78,128,165,202,239,20,49,94,123, 223,250,149,176,75,110,1,36,234,207,160,133,126,91,52,17,97,68,43,14, 245,208,191,154,84,113,30,59,192,229,138,175,11,46,65,100,159,186,213,240, 62,27,116,81,170,143,224,197,119,82,61,24,227,198,169,140,66,103,8,45, 214,243,156,185,29,56,87,114,137,172,195,230,40,13,98,71,188,153,246,211, 163,134,233,204,55,18,125,88,150,179,220,249,2,39,72,109,201,236,131,166, 93,120,23,50,252,217,182,147,104,77,34,7,194,231,136,173,86,115,28,57, 247,210,189,152,99,70,41,12,168,141,226,199,60,25,118,83,157,184,215,242, 9,44,67,102,22,51,92,121,130,167,200,237,35,6,105,76,183,146,253,216, 124,89,54,19,232,205,162,135,73,108,3,38,221,248,151,178,}, {0,74,148,222,53,127,161,235,106,32,254,180,95,21,203,129,212,158,64,10, 225,171,117,63,190,244,42,96,139,193,31,85,181,255,33,107,128,202,20,94, 223,149,75,1,234,160,126,52,97,43,245,191,84,30,192,138,11,65,159,213, 62,116,170,224,119,61,227,169,66,8,214,156,29,87,137,195,40,98,188,246, 163,233,55,125,150,220,2,72,201,131,93,23,252,182,104,34,194,136,86,28, 247,189,99,41,168,226,60,118,157,215,9,67,22,92,130,200,35,105,183,253, 124,54,232,162,73,3,221,151,238,164,122,48,219,145,79,5,132,206,16,90, 177,251,37,111,58,112,174,228,15,69,155,209,80,26,196,142,101,47,241,187, 91,17,207,133,110,36,250,176,49,123,165,239,4,78,144,218,143,197,27,81, 186,240,46,100,229,175,113,59,208,154,68,14,153,211,13,71,172,230,56,114, 243,185,103,45,198,140,82,24,77,7,217,147,120,50,236,166,39,109,179,249, 18,88,134,204,44,102,184,242,25,83,141,199,70,12,210,152,115,57,231,173, 248,178,108,38,205,135,89,19,146,216,6,76,167,237,51,121,}, {0,148,53,161,106,254,95,203,212,64,225,117,190,42,139,31,181,33,128,20, 223,75,234,126,97,245,84,192,11,159,62,170,119,227,66,214,29,137,40,188, 163,55,150,2,201,93,252,104,194,86,247,99,168,60,157,9,22,130,35,183, 124,232,73,221,238,122,219,79,132,16,177,37,58,174,15,155,80,196,101,241, 91,207,110,250,49,165,4,144,143,27,186,46,229,113,208,68,153,13,172,56, 243,103,198,82,77,217,120,236,39,179,18,134,44,184,25,141,70,210,115,231, 248,108,205,89,146,6,167,51,193,85,244,96,171,63,158,10,21,129,32,180, 127,235,74,222,116,224,65,213,30,138,43,191,160,52,149,1,202,94,255,107, 182,34,131,23,220,72,233,125,98,246,87,195,8,156,61,169,3,151,54,162, 105,253,92,200,215,67,226,118,189,41,136,28,47,187,26,142,69,209,112,228, 251,111,206,90,145,5,164,48,154,14,175,59,240,100,197,81,78,218,123,239, 36,176,17,133,88,204,109,249,50,166,7,147,140,24,185,45,230,114,211,71, 237,121,216,76,135,19,178,38,57,173,12,152,83,199,102,242,}, {0,53,106,95,212,225,190,139,181,128,223,234,97,84,11,62,119,66,29,40, 163,150,201,252,194,247,168,157,22,35,124,73,238,219,132,177,58,15,80,101, 91,110,49,4,143,186,229,208,153,172,243,198,77,120,39,18,44,25,70,115, 248,205,146,167,193,244,171,158,21,32,127,74,116,65,30,43,160,149,202,255, 182,131,220,233,98,87,8,61,3,54,105,92,215,226,189,136,47,26,69,112, 251,206,145,164,154,175,240,197,78,123,36,17,88,109,50,7,140,185,230,211, 237,216,135,178,57,12,83,102,159,170,245,192,75,126,33,20,42,31,64,117, 254,203,148,161,232,221,130,183,60,9,86,99,93,104,55,2,137,188,227,214, 113,68,27,46,165,144,207,250,196,241,174,155,16,37,122,79,6,51,108,89, 210,231,184,141,179,134,217,236,103,82,13,56,94,107,52,1,138,191,224,213, 235,222,129,180,63,10,85,96,41,28,67,118,253,200,151,162,156,169,246,195, 72,125,34,23,176,133,218,239,100,81,14,59,5,48,111,90,209,228,187,142, 199,242,173,152,19,38,121,76,114,71,24,45,166,147,204,249,}, {0,106,212,190,181,223,97,11,119,29,163,201,194,168,22,124,238,132,58,80, 91,49,143,229,153,243,77,39,44,70,248,146,193,171,21,127,116,30,160,202, 182,220,98,8,3,105,215,189,47,69,251,145,154,240,78,36,88,50,140,230, 237,135,57,83,159,245,75,33,42,64,254,148,232,130,60,86,93,55,137,227, 113,27,165,207,196,174,16,122,6,108,210,184,179,217,103,13,94,52,138,224, 235,129,63,85,41,67,253,151,156,246,72,34,176,218,100,14,5,111,209,187, 199,173,19,121,114,24,166,204,35,73,247,157,150,252,66,40,84,62,128,234, 225,139,53,95,205,167,25,115,120,18,172,198,186,208,110,4,15,101,219,177, 226,136,54,92,87,61,131,233,149,255,65,43,32,74,244,158,12,102,216,178, 185,211,109,7,123,17,175,197,206,164,26,112,188,214,104,2,9,99,221,183, 203,161,31,117,126,20,170,192,82,56,134,236,231,141,51,89,37,79,241,155, 144,250,68,46,125,23,169,195,200,162,28,118,10,96,222,180,191,213,107,1, 147,249,71,45,38,76,242,152,228,142,48,90,81,59,133,239,}, {0,212,181,97,119,163,194,22,238,58,91,143,153,77,44,248,193,21,116,160, 182,98,3,215,47,251,154,78,88,140,237,57,159,75,42,254,232,60,93,137, 113,165,196,16,6,210,179,103,94,138,235,63,41,253,156,72,176,100,5,209, 199,19,114,166,35,247,150,66,84,128,225,53,205,25,120,172,186,110,15,219, 226,54,87,131,149,65,32,244,12,216,185,109,123,175,206,26,188,104,9,221, 203,31,126,170,82,134,231,51,37,241,144,68,125,169,200,28,10,222,191,107, 147,71,38,242,228,48,81,133,70,146,243,39,49,229,132,80,168,124,29,201, 223,11,106,190,135,83,50,230,240,36,69,145,105,189,220,8,30,202,171,127, 217,13,108,184,174,122,27,207,55,227,130,86,64,148,245,33,24,204,173,121, 111,187,218,14,246,34,67,151,129,85,52,224,101,177,208,4,18,198,167,115, 139,95,62,234,252,40,73,157,164,112,17,197,211,7,102,178,74,158,255,43, 61,233,136,92,250,46,79,155,141,89,56,236,20,192,161,117,99,183,214,2, 59,239,142,90,76,152,249,45,213,1,96,180,162,118,23,195,}, {0,181,119,194,238,91,153,44,193,116,182,3,47,154,88,237,159,42,232,93, 113,196,6,179,94,235,41,156,176,5,199,114,35,150,84,225,205,120,186,15, 226,87,149,32,12,185,123,206,188,9,203,126,82,231,37,144,125,200,10,191, 147,38,228,81,70,243,49,132,168,29,223,106,135,50,240,69,105,220,30,171, 217,108,174,27,55,130,64,245,24,173,111,218,246,67,129,52,101,208,18,167, 139,62,252,73,164,17,211,102,74,255,61,136,250,79,141,56,20,161,99,214, 59,142,76,249,213,96,162,23,140,57,251,78,98,215,21,160,77,248,58,143, 163,22,212,97,19,166,100,209,253,72,138,63,210,103,165,16,60,137,75,254, 175,26,216,109,65,244,54,131,110,219,25,172,128,53,247,66,48,133,71,242, 222,107,169,28,241,68,134,51,31,170,104,221,202,127,189,8,36,145,83,230, 11,190,124,201,229,80,146,39,85,224,34,151,187,14,204,121,148,33,227,86, 122,207,13,184,233,92,158,43,7,178,112,197,40,157,95,234,198,115,177,4, 118,195,1,180,152,45,239,90,183,2,192,117,89,236,46,155,}, {0,119,238,153,193,182,47,88,159,232,113,6,94,41,176,199,35,84,205,186, 226,149,12,123,188,203,82,37,125,10,147,228,70,49,168,223,135,240,105,30, 217,174,55,64,24,111,246,129,101,18,139,252,164,211,74,61,250,141,20,99, 59,76,213,162,140,251,98,21,77,58,163,212,19,100,253,138,210,165,60,75, 175,216,65,54,110,25,128,247,48,71,222,169,241,134,31,104,202,189,36,83, 11,124,229,146,85,34,187,204,148,227,122,13,233,158,7,112,40,95,198,177, 118,1,152,239,183,192,89,46,5,114,235,156,196,179,42,93,154,237,116,3, 91,44,181,194,38,81,200,191,231,144,9,126,185,206,87,32,120,15,150,225, 67,52,173,218,130,245,108,27,220,171,50,69,29,106,243,132,96,23,142,249, 161,214,79,56,255,136,17,102,62,73,208,167,137,254,103,16,72,63,166,209, 22,97,248,143,215,160,57,78,170,221,68,51,107,28,133,242,53,66,219,172, 244,131,26,109,207,184,33,86,14,121,224,151,80,39,190,201,145,230,127,8, 236,155,2,117,45,90,195,180,115,4,157,234,178,197,92,43,}, {0,238,193,47,159,113,94,176,35,205,226,12,188,82,125,147,70,168,135,105, 217,55,24,246,101,139,164,74,250,20,59,213,140,98,77,163,19,253,210,60, 175,65,110,128,48,222,241,31,202,36,11,229,85,187,148,122,233,7,40,198, 118,152,183,89,5,235,196,42,154,116,91,181,38,200,231,9,185,87,120,150, 67,173,130,108,220,50,29,243,96,142,161,79,255,17,62,208,137,103,72,166, 22,248,215,57,170,68,107,133,53,219,244,26,207,33,14,224,80,190,145,127, 236,2,45,195,115,157,178,92,10,228,203,37,149,123,84,186,41,199,232,6, 182,88,119,153,76,162,141,99,211,61,18,252,111,129,174,64,240,30,49,223, 134,104,71,169,25,247,216,54,165,75,100,138,58,212,251,21,192,46,1,239, 95,177,158,112,227,13,34,204,124,146,189,83,15,225,206,32,144,126,81,191, 44,194,237,3,179,93,114,156,73,167,136,102,214,56,23,249,106,132,171,69, 245,27,52,218,131,109,66,172,28,242,221,51,160,78,97,143,63,209,254,16, 197,43,4,234,90,180,155,117,230,8,39,201,121,151,184,86,}, }; # ifdef EDC_SUBCHANNEL static const unsigned char rs_sub_rw_alog[128] = { 1, 2, 4, 8,16,32, 3, 6,12,24,48,35, 5,10,20,40,19,38,15,30, 60,59,53,41,17,34, 7,14,28,56,51,37, 9,18,36,11,22,44,27,54, 47,29,58,55,45,25,50,39,13,26,52,43,21,42,23,46,31,62,63,61, 57,49,33, 1, 2, 4, 8,16,32, 3, 6,12,24,48,35, 5,10,20,40,19, 38,15,30,60,59,53,41,17,34, 7,14,28,56,51,37, 9,18,36,11,22, 44,27,54,47,29,58,55,45,25,50,39,13,26,52,43,21,42,23,46,31, 62,63,61,57,49,33, 1, 2,}; static const unsigned char rs_sub_rw_log[64] = { 0, 0, 1, 6, 2,12, 7,26, 3,32,13,35, 8,48,27,18, 4,24,33,16, 14,52,36,54, 9,45,49,38,28,41,19,56, 5,62,25,11,34,31,17,47, 15,23,53,51,37,44,55,40,10,61,46,30,50,22,39,43,29,60,42,21, 20,59,57,58,}; static const unsigned char SUBsyn[24][3][64] = { { {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39, 40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59, 60,61,62,63,}, {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39, 40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59, 60,61,62,63,}, {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39, 40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59, 60,61,62,63,}, }, { {0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38, 40,42,44,46,48,50,52,54,56,58,60,62,3,1,7,5,11,9,15,13, 19,17,23,21,27,25,31,29,35,33,39,37,43,41,47,45,51,49,55,53, 59,57,63,61,}, {0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,3,7,11,15, 19,23,27,31,35,39,43,47,51,55,59,63,6,2,14,10,22,18,30,26, 38,34,46,42,54,50,62,58,5,1,13,9,21,17,29,25,37,33,45,41, 53,49,61,57,}, {0,8,16,24,32,40,48,56,3,11,19,27,35,43,51,59,6,14,22,30, 38,46,54,62,5,13,21,29,37,45,53,61,12,4,28,20,44,36,60,52, 15,7,31,23,47,39,63,55,10,2,26,18,42,34,58,50,9,1,25,17, 41,33,57,49,}, }, { {0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,3,7,11,15, 19,23,27,31,35,39,43,47,51,55,59,63,6,2,14,10,22,18,30,26, 38,34,46,42,54,50,62,58,5,1,13,9,21,17,29,25,37,33,45,41, 53,49,61,57,}, {0,16,32,48,3,19,35,51,6,22,38,54,5,21,37,53,12,28,44,60, 15,31,47,63,10,26,42,58,9,25,41,57,24,8,56,40,27,11,59,43, 30,14,62,46,29,13,61,45,20,4,52,36,23,7,55,39,18,2,50,34, 17,1,49,33,}, {0,3,6,5,12,15,10,9,24,27,30,29,20,23,18,17,48,51,54,53, 60,63,58,57,40,43,46,45,36,39,34,33,35,32,37,38,47,44,41,42, 59,56,61,62,55,52,49,50,19,16,21,22,31,28,25,26,11,8,13,14, 7,4,1,2,}, }, { {0,8,16,24,32,40,48,56,3,11,19,27,35,43,51,59,6,14,22,30, 38,46,54,62,5,13,21,29,37,45,53,61,12,4,28,20,44,36,60,52, 15,7,31,23,47,39,63,55,10,2,26,18,42,34,58,50,9,1,25,17, 41,33,57,49,}, {0,3,6,5,12,15,10,9,24,27,30,29,20,23,18,17,48,51,54,53, 60,63,58,57,40,43,46,45,36,39,34,33,35,32,37,38,47,44,41,42, 59,56,61,62,55,52,49,50,19,16,21,22,31,28,25,26,11,8,13,14, 7,4,1,2,}, {0,24,48,40,35,59,19,11,5,29,53,45,38,62,22,14,10,18,58,34, 41,49,25,1,15,23,63,39,44,52,28,4,20,12,36,60,55,47,7,31, 17,9,33,57,50,42,2,26,30,6,46,54,61,37,13,21,27,3,43,51, 56,32,8,16,}, }, { {0,16,32,48,3,19,35,51,6,22,38,54,5,21,37,53,12,28,44,60, 15,31,47,63,10,26,42,58,9,25,41,57,24,8,56,40,27,11,59,43, 30,14,62,46,29,13,61,45,20,4,52,36,23,7,55,39,18,2,50,34, 17,1,49,33,}, {0,12,24,20,48,60,40,36,35,47,59,55,19,31,11,7,5,9,29,17, 53,57,45,33,38,42,62,50,22,26,14,2,10,6,18,30,58,54,34,46, 41,37,49,61,25,21,1,13,15,3,23,27,63,51,39,43,44,32,52,56, 28,16,4,8,}, {0,5,10,15,20,17,30,27,40,45,34,39,60,57,54,51,19,22,25,28, 7,2,13,8,59,62,49,52,47,42,37,32,38,35,44,41,50,55,56,61, 14,11,4,1,26,31,16,21,53,48,63,58,33,36,43,46,29,24,23,18, 9,12,3,6,}, }, { {0,32,3,35,6,38,5,37,12,44,15,47,10,42,9,41,24,56,27,59, 30,62,29,61,20,52,23,55,18,50,17,49,48,16,51,19,54,22,53,21, 60,28,63,31,58,26,57,25,40,8,43,11,46,14,45,13,36,4,39,7, 34,2,33,1,}, {0,48,35,19,5,53,38,22,10,58,41,25,15,63,44,28,20,36,55,7, 17,33,50,2,30,46,61,13,27,43,56,8,40,24,11,59,45,29,14,62, 34,18,1,49,39,23,4,52,60,12,31,47,57,9,26,42,54,6,21,37, 51,3,16,32,}, {0,40,19,59,38,14,53,29,15,39,28,52,41,1,58,18,30,54,13,37, 56,16,43,3,17,57,2,42,55,31,36,12,60,20,47,7,26,50,9,33, 51,27,32,8,21,61,6,46,34,10,49,25,4,44,23,63,45,5,62,22, 11,35,24,48,}, }, { {0,3,6,5,12,15,10,9,24,27,30,29,20,23,18,17,48,51,54,53, 60,63,58,57,40,43,46,45,36,39,34,33,35,32,37,38,47,44,41,42, 59,56,61,62,55,52,49,50,19,16,21,22,31,28,25,26,11,8,13,14, 7,4,1,2,}, {0,5,10,15,20,17,30,27,40,45,34,39,60,57,54,51,19,22,25,28, 7,2,13,8,59,62,49,52,47,42,37,32,38,35,44,41,50,55,56,61, 14,11,4,1,26,31,16,21,53,48,63,58,33,36,43,46,29,24,23,18, 9,12,3,6,}, {0,15,30,17,60,51,34,45,59,52,37,42,7,8,25,22,53,58,43,36, 9,6,23,24,14,1,16,31,50,61,44,35,41,38,55,56,21,26,11,4, 18,29,12,3,46,33,48,63,28,19,2,13,32,47,62,49,39,40,57,54, 27,20,5,10,}, }, { {0,6,12,10,24,30,20,18,48,54,60,58,40,46,36,34,35,37,47,41, 59,61,55,49,19,21,31,25,11,13,7,1,5,3,9,15,29,27,17,23, 53,51,57,63,45,43,33,39,38,32,42,44,62,56,50,52,22,16,26,28, 14,8,2,4,}, {0,20,40,60,19,7,59,47,38,50,14,26,53,33,29,9,15,27,39,51, 28,8,52,32,41,61,1,21,58,46,18,6,30,10,54,34,13,25,37,49, 56,44,16,4,43,63,3,23,17,5,57,45,2,22,42,62,55,35,31,11, 36,48,12,24,}, {0,59,53,14,41,18,28,39,17,42,36,31,56,3,13,54,34,25,23,44, 11,48,62,5,51,8,6,61,26,33,47,20,7,60,50,9,46,21,27,32, 22,45,35,24,63,4,10,49,37,30,16,43,12,55,57,2,52,15,1,58, 29,38,40,19,}, }, { {0,12,24,20,48,60,40,36,35,47,59,55,19,31,11,7,5,9,29,17, 53,57,45,33,38,42,62,50,22,26,14,2,10,6,18,30,58,54,34,46, 41,37,49,61,25,21,1,13,15,3,23,27,63,51,39,43,44,32,52,56, 28,16,4,8,}, {0,19,38,53,15,28,41,58,30,13,56,43,17,2,55,36,60,47,26,9, 51,32,21,6,34,49,4,23,45,62,11,24,59,40,29,14,52,39,18,1, 37,54,3,16,42,57,12,31,7,20,33,50,8,27,46,61,25,10,63,44, 22,5,48,35,}, {0,17,34,51,7,22,37,52,14,31,44,61,9,24,43,58,28,13,62,47, 27,10,57,40,18,3,48,33,21,4,55,38,56,41,26,11,63,46,29,12, 54,39,20,5,49,32,19,2,36,53,6,23,35,50,1,16,42,59,8,25, 45,60,15,30,}, }, { {0,24,48,40,35,59,19,11,5,29,53,45,38,62,22,14,10,18,58,34, 41,49,25,1,15,23,63,39,44,52,28,4,20,12,36,60,55,47,7,31, 17,9,33,57,50,42,2,26,30,6,46,54,61,37,13,21,27,3,43,51, 56,32,8,16,}, {0,15,30,17,60,51,34,45,59,52,37,42,7,8,25,22,53,58,43,36, 9,6,23,24,14,1,16,31,50,61,44,35,41,38,55,56,21,26,11,4, 18,29,12,3,46,33,48,63,28,19,2,13,32,47,62,49,39,40,57,54, 27,20,5,10,}, {0,14,28,18,56,54,36,42,51,61,47,33,11,5,23,25,37,43,57,55, 29,19,1,15,22,24,10,4,46,32,50,60,9,7,21,27,49,63,45,35, 58,52,38,40,2,12,30,16,44,34,48,62,20,26,8,6,31,17,3,13, 39,41,59,53,}, }, { {0,48,35,19,5,53,38,22,10,58,41,25,15,63,44,28,20,36,55,7, 17,33,50,2,30,46,61,13,27,43,56,8,40,24,11,59,45,29,14,62, 34,18,1,49,39,23,4,52,60,12,31,47,57,9,26,42,54,6,21,37, 51,3,16,32,}, {0,60,59,7,53,9,14,50,41,21,18,46,28,32,39,27,17,45,42,22, 36,24,31,35,56,4,3,63,13,49,54,10,34,30,25,37,23,43,44,16, 11,55,48,12,62,2,5,57,51,15,8,52,6,58,61,1,26,38,33,29, 47,19,20,40,}, {0,51,37,22,9,58,44,31,18,33,55,4,27,40,62,13,36,23,1,50, 45,30,8,59,54,5,19,32,63,12,26,41,11,56,46,29,2,49,39,20, 25,42,60,15,16,35,53,6,47,28,10,57,38,21,3,48,61,14,24,43, 52,7,17,34,}, }, { {0,35,5,38,10,41,15,44,20,55,17,50,30,61,27,56,40,11,45,14, 34,1,39,4,60,31,57,26,54,21,51,16,19,48,22,53,25,58,28,63, 7,36,2,33,13,46,8,43,59,24,62,29,49,18,52,23,47,12,42,9, 37,6,32,3,}, {0,53,41,28,17,36,56,13,34,23,11,62,51,6,26,47,7,50,46,27, 22,35,63,10,37,16,12,57,52,1,29,40,14,59,39,18,31,42,54,3, 44,25,5,48,61,8,20,33,9,60,32,21,24,45,49,4,43,30,2,55, 58,15,19,38,}, {0,18,36,54,11,25,47,61,22,4,50,32,29,15,57,43,44,62,8,26, 39,53,3,17,58,40,30,12,49,35,21,7,27,9,63,45,16,2,52,38, 13,31,41,59,6,20,34,48,55,37,19,1,60,46,24,10,33,51,5,23, 42,56,14,28,}, }, { {0,5,10,15,20,17,30,27,40,45,34,39,60,57,54,51,19,22,25,28, 7,2,13,8,59,62,49,52,47,42,37,32,38,35,44,41,50,55,56,61, 14,11,4,1,26,31,16,21,53,48,63,58,33,36,43,46,29,24,23,18, 9,12,3,6,}, {0,17,34,51,7,22,37,52,14,31,44,61,9,24,43,58,28,13,62,47, 27,10,57,40,18,3,48,33,21,4,55,38,56,41,26,11,63,46,29,12, 54,39,20,5,49,32,19,2,36,53,6,23,35,50,1,16,42,59,8,25, 45,60,15,30,}, {0,22,44,58,27,13,55,33,54,32,26,12,45,59,1,23,47,57,3,21, 52,34,24,14,25,15,53,35,2,20,46,56,29,11,49,39,6,16,42,60, 43,61,7,17,48,38,28,10,50,36,30,8,41,63,5,19,4,18,40,62, 31,9,51,37,}, }, { {0,10,20,30,40,34,60,54,19,25,7,13,59,49,47,37,38,44,50,56, 14,4,26,16,53,63,33,43,29,23,9,3,15,5,27,17,39,45,51,57, 28,22,8,2,52,62,32,42,41,35,61,55,1,11,21,31,58,48,46,36, 18,24,6,12,}, {0,7,14,9,28,27,18,21,56,63,54,49,36,35,42,45,51,52,61,58, 47,40,33,38,11,12,5,2,23,16,25,30,37,34,43,44,57,62,55,48, 29,26,19,20,1,6,15,8,22,17,24,31,10,13,4,3,46,41,32,39, 50,53,60,59,}, {0,54,47,25,29,43,50,4,58,12,21,35,39,17,8,62,55,1,24,46, 42,28,5,51,13,59,34,20,16,38,63,9,45,27,2,52,48,6,31,41, 23,33,56,14,10,60,37,19,26,44,53,3,7,49,40,30,32,22,15,57, 61,11,18,36,}, }, { {0,20,40,60,19,7,59,47,38,50,14,26,53,33,29,9,15,27,39,51, 28,8,52,32,41,61,1,21,58,46,18,6,30,10,54,34,13,25,37,49, 56,44,16,4,43,63,3,23,17,5,57,45,2,22,42,62,55,35,31,11, 36,48,12,24,}, {0,28,56,36,51,47,11,23,37,57,29,1,22,10,46,50,9,21,49,45, 58,38,2,30,44,48,20,8,31,3,39,59,18,14,42,54,33,61,25,5, 55,43,15,19,4,24,60,32,27,7,35,63,40,52,16,12,62,34,6,26, 13,17,53,41,}, {0,58,55,13,45,23,26,32,25,35,46,20,52,14,3,57,50,8,5,63, 31,37,40,18,43,17,28,38,6,60,49,11,39,29,16,42,10,48,61,7, 62,4,9,51,19,41,36,30,21,47,34,24,56,2,15,53,12,54,59,1, 33,27,22,44,}, }, { {0,40,19,59,38,14,53,29,15,39,28,52,41,1,58,18,30,54,13,37, 56,16,43,3,17,57,2,42,55,31,36,12,60,20,47,7,26,50,9,33, 51,27,32,8,21,61,6,46,34,10,49,25,4,44,23,63,45,5,62,22, 11,35,24,48,}, {0,51,37,22,9,58,44,31,18,33,55,4,27,40,62,13,36,23,1,50, 45,30,8,59,54,5,19,32,63,12,26,41,11,56,46,29,2,49,39,20, 25,42,60,15,16,35,53,6,47,28,10,57,38,21,3,48,61,14,24,43, 52,7,17,34,}, {0,25,50,43,39,62,21,12,13,20,63,38,42,51,24,1,26,3,40,49, 61,36,15,22,23,14,37,60,48,41,2,27,52,45,6,31,19,10,33,56, 57,32,11,18,30,7,44,53,46,55,28,5,9,16,59,34,35,58,17,8, 4,29,54,47,}, }, { {0,19,38,53,15,28,41,58,30,13,56,43,17,2,55,36,60,47,26,9, 51,32,21,6,34,49,4,23,45,62,11,24,59,40,29,14,52,39,18,1, 37,54,3,16,42,57,12,31,7,20,33,50,8,27,46,61,25,10,63,44, 22,5,48,35,}, {0,9,18,27,36,45,54,63,11,2,25,16,47,38,61,52,22,31,4,13, 50,59,32,41,29,20,15,6,57,48,43,34,44,37,62,55,8,1,26,19, 39,46,53,60,3,10,17,24,58,51,40,33,30,23,12,5,49,56,35,42, 21,28,7,14,}, {0,13,26,23,52,57,46,35,43,38,49,60,31,18,5,8,21,24,15,2, 33,44,59,54,62,51,36,41,10,7,16,29,42,39,48,61,30,19,4,9, 1,12,27,22,53,56,47,34,63,50,37,40,11,6,17,28,20,25,14,3, 32,45,58,55,}, }, { {0,38,15,41,30,56,17,55,60,26,51,21,34,4,45,11,59,29,52,18, 37,3,42,12,7,33,8,46,25,63,22,48,53,19,58,28,43,13,36,2, 9,47,6,32,23,49,24,62,14,40,1,39,16,54,31,57,50,20,61,27, 44,10,35,5,}, {0,36,11,47,22,50,29,57,44,8,39,3,58,30,49,21,27,63,16,52, 13,41,6,34,55,19,60,24,33,5,42,14,54,18,61,25,32,4,43,15, 26,62,17,53,12,40,7,35,45,9,38,2,59,31,48,20,1,37,10,46, 23,51,28,56,}, {0,43,21,62,42,1,63,20,23,60,2,41,61,22,40,3,46,5,59,16, 4,47,17,58,57,18,44,7,19,56,6,45,31,52,10,33,53,30,32,11, 8,35,29,54,34,9,55,28,49,26,36,15,27,48,14,37,38,13,51,24, 12,39,25,50,}, }, { {0,15,30,17,60,51,34,45,59,52,37,42,7,8,25,22,53,58,43,36, 9,6,23,24,14,1,16,31,50,61,44,35,41,38,55,56,21,26,11,4, 18,29,12,3,46,33,48,63,28,19,2,13,32,47,62,49,39,40,57,54, 27,20,5,10,}, {0,22,44,58,27,13,55,33,54,32,26,12,45,59,1,23,47,57,3,21, 52,34,24,14,25,15,53,35,2,20,46,56,29,11,49,39,6,16,42,60, 43,61,7,17,48,38,28,10,50,36,30,8,41,63,5,19,4,18,40,62, 31,9,51,37,}, {0,23,46,57,31,8,49,38,62,41,16,7,33,54,15,24,63,40,17,6, 32,55,14,25,1,22,47,56,30,9,48,39,61,42,19,4,34,53,12,27, 3,20,45,58,28,11,50,37,2,21,44,59,29,10,51,36,60,43,18,5, 35,52,13,26,}, }, { {0,30,60,34,59,37,7,25,53,43,9,23,14,16,50,44,41,55,21,11, 18,12,46,48,28,2,32,62,39,57,27,5,17,15,45,51,42,52,22,8, 36,58,24,6,31,1,35,61,56,38,4,26,3,29,63,33,13,19,49,47, 54,40,10,20,}, {0,27,54,45,47,52,25,2,29,6,43,48,50,41,4,31,58,33,12,23, 21,14,35,56,39,60,17,10,8,19,62,37,55,44,1,26,24,3,46,53, 42,49,28,7,5,30,51,40,13,22,59,32,34,57,20,15,16,11,38,61, 63,36,9,18,}, {0,62,63,1,61,3,2,60,57,7,6,56,4,58,59,5,49,15,14,48, 12,50,51,13,8,54,55,9,53,11,10,52,33,31,30,32,28,34,35,29, 24,38,39,25,37,27,26,36,16,46,47,17,45,19,18,44,41,23,22,40, 20,42,43,21,}, }, { {0,60,59,7,53,9,14,50,41,21,18,46,28,32,39,27,17,45,42,22, 36,24,31,35,56,4,3,63,13,49,54,10,34,30,25,37,23,43,44,16, 11,55,48,12,62,2,5,57,51,15,8,52,6,58,61,1,26,38,33,29, 47,19,20,40,}, {0,47,29,50,58,21,39,8,55,24,42,5,13,34,16,63,45,2,48,31, 23,56,10,37,26,53,7,40,32,15,61,18,25,54,4,43,35,12,62,17, 46,1,51,28,20,59,9,38,52,27,41,6,14,33,19,60,3,44,30,49, 57,22,36,11,}, {0,57,49,8,33,24,16,41,1,56,48,9,32,25,17,40,2,59,51,10, 35,26,18,43,3,58,50,11,34,27,19,42,4,61,53,12,37,28,20,45, 5,60,52,13,36,29,21,44,6,63,55,14,39,30,22,47,7,62,54,15, 38,31,23,46,}, }, { {0,59,53,14,41,18,28,39,17,42,36,31,56,3,13,54,34,25,23,44, 11,48,62,5,51,8,6,61,26,33,47,20,7,60,50,9,46,21,27,32, 22,45,35,24,63,4,10,49,37,30,16,43,12,55,57,2,52,15,1,58, 29,38,40,19,}, {0,58,55,13,45,23,26,32,25,35,46,20,52,14,3,57,50,8,5,63, 31,37,40,18,43,17,28,38,6,60,49,11,39,29,16,42,10,48,61,7, 62,4,9,51,19,41,36,30,21,47,34,24,56,2,15,53,12,54,59,1, 33,27,22,44,}, {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39, 40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59, 60,61,62,63,}, }, { {0,53,41,28,17,36,56,13,34,23,11,62,51,6,26,47,7,50,46,27, 22,35,63,10,37,16,12,57,52,1,29,40,14,59,39,18,31,42,54,3, 44,25,5,48,61,8,20,33,9,60,32,21,24,45,49,4,43,30,2,55, 58,15,19,38,}, {0,45,25,52,50,31,43,6,39,10,62,19,21,56,12,33,13,32,20,57, 63,18,38,11,42,7,51,30,24,53,1,44,26,55,3,46,40,5,49,28, 61,16,36,9,15,34,22,59,23,58,14,35,37,8,60,17,48,29,41,4, 2,47,27,54,}, {0,8,16,24,32,40,48,56,3,11,19,27,35,43,51,59,6,14,22,30, 38,46,54,62,5,13,21,29,37,45,53,61,12,4,28,20,44,36,60,52, 15,7,31,23,47,39,63,55,10,2,26,18,42,34,58,50,9,1,25,17, 41,33,57,49,}, }, { {0,41,17,56,34,11,51,26,7,46,22,63,37,12,52,29,14,39,31,54, 44,5,61,20,9,32,24,49,43,2,58,19,28,53,13,36,62,23,47,6, 27,50,10,35,57,16,40,1,18,59,3,42,48,25,33,8,21,60,4,45, 55,30,38,15,}, {0,50,39,21,13,63,42,24,26,40,61,15,23,37,48,2,52,6,19,33, 57,11,30,44,46,28,9,59,35,17,4,54,43,25,12,62,38,20,1,51, 49,3,22,36,60,14,27,41,31,45,56,10,18,32,53,7,5,55,34,16, 8,58,47,29,}, {0,3,6,5,12,15,10,9,24,27,30,29,20,23,18,17,48,51,54,53, 60,63,58,57,40,43,46,45,36,39,34,33,35,32,37,38,47,44,41,42, 59,56,61,62,55,52,49,50,19,16,21,22,31,28,25,26,11,8,13,14, 7,4,1,2,}, }, }; # endif const unsigned short qacc[26][64] = { {0, 88, 176, 264, 352, 440, 528, 616, 704, 792, 880, 968, 1056, 1144, 1232, 1320, 1408, 1496, 1584, 1672, 1760, 1848, 1936, 2024, 2112, 2200, 52, 140, 228, 316, 404, 492, 580, 668, 756, 844, 932, 1020, 1108, 1196, 1284, 1372, 1460, 2236, 2288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {86, 174, 262, 350, 438, 526, 614, 702, 790, 878, 966, 1054, 1142, 1230, 1318, 1406, 1494, 1582, 1670, 1758, 1846, 1934, 2022, 2110, 2198, 50, 138, 226, 314, 402, 490, 578, 666, 754, 842, 930, 1018, 1106, 1194, 1282, 1370, 1458, 1546, 2238, 2290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {172, 260, 348, 436, 524, 612, 700, 788, 876, 964, 1052, 1140, 1228, 1316, 1404, 1492, 1580, 1668, 1756, 1844, 1932, 2020, 2108, 2196, 48, 136, 224, 312, 400, 488, 576, 664, 752, 840, 928, 1016, 1104, 1192, 1280, 1368, 1456, 1544, 1632, 2240, 2292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {258, 346, 434, 522, 610, 698, 786, 874, 962, 1050, 1138, 1226, 1314, 1402, 1490, 1578, 1666, 1754, 1842, 1930, 2018, 2106, 2194, 46, 134, 222, 310, 398, 486, 574, 662, 750, 838, 926, 1014, 1102, 1190, 1278, 1366, 1454, 1542, 1630, 1718, 2242, 2294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {344, 432, 520, 608, 696, 784, 872, 960, 1048, 1136, 1224, 1312, 1400, 1488, 1576, 1664, 1752, 1840, 1928, 2016, 2104, 2192, 44, 132, 220, 308, 396, 484, 572, 660, 748, 836, 924, 1012, 1100, 1188, 1276, 1364, 1452, 1540, 1628, 1716, 1804, 2244, 2296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {430, 518, 606, 694, 782, 870, 958, 1046, 1134, 1222, 1310, 1398, 1486, 1574, 1662, 1750, 1838, 1926, 2014, 2102, 2190, 42, 130, 218, 306, 394, 482, 570, 658, 746, 834, 922, 1010, 1098, 1186, 1274, 1362, 1450, 1538, 1626, 1714, 1802, 1890, 2246, 2298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {516, 604, 692, 780, 868, 956, 1044, 1132, 1220, 1308, 1396, 1484, 1572, 1660, 1748, 1836, 1924, 2012, 2100, 2188, 40, 128, 216, 304, 392, 480, 568, 656, 744, 832, 920, 1008, 1096, 1184, 1272, 1360, 1448, 1536, 1624, 1712, 1800, 1888, 1976, 2248, 2300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {602, 690, 778, 866, 954, 1042, 1130, 1218, 1306, 1394, 1482, 1570, 1658, 1746, 1834, 1922, 2010, 2098, 2186, 38, 126, 214, 302, 390, 478, 566, 654, 742, 830, 918, 1006, 1094, 1182, 1270, 1358, 1446, 1534, 1622, 1710, 1798, 1886, 1974, 2062, 2250, 2302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {688, 776, 864, 952, 1040, 1128, 1216, 1304, 1392, 1480, 1568, 1656, 1744, 1832, 1920, 2008, 2096, 2184, 36, 124, 212, 300, 388, 476, 564, 652, 740, 828, 916, 1004, 1092, 1180, 1268, 1356, 1444, 1532, 1620, 1708, 1796, 1884, 1972, 2060, 2148, 2252, 2304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {774, 862, 950, 1038, 1126, 1214, 1302, 1390, 1478, 1566, 1654, 1742, 1830, 1918, 2006, 2094, 2182, 34, 122, 210, 298, 386, 474, 562, 650, 738, 826, 914, 1002, 1090, 1178, 1266, 1354, 1442, 1530, 1618, 1706, 1794, 1882, 1970, 2058, 2146, 2234, 2254, 2306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {860, 948, 1036, 1124, 1212, 1300, 1388, 1476, 1564, 1652, 1740, 1828, 1916, 2004, 2092, 2180, 32, 120, 208, 296, 384, 472, 560, 648, 736, 824, 912, 1000, 1088, 1176, 1264, 1352, 1440, 1528, 1616, 1704, 1792, 1880, 1968, 2056, 2144, 2232, 84, 2256, 2308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {946, 1034, 1122, 1210, 1298, 1386, 1474, 1562, 1650, 1738, 1826, 1914, 2002, 2090, 2178, 30, 118, 206, 294, 382, 470, 558, 646, 734, 822, 910, 998, 1086, 1174, 1262, 1350, 1438, 1526, 1614, 1702, 1790, 1878, 1966, 2054, 2142, 2230, 82, 170, 2258, 2310, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1032, 1120, 1208, 1296, 1384, 1472, 1560, 1648, 1736, 1824, 1912, 2000, 2088, 2176, 28, 116, 204, 292, 380, 468, 556, 644, 732, 820, 908, 996, 1084, 1172, 1260, 1348, 1436, 1524, 1612, 1700, 1788, 1876, 1964, 2052, 2140, 2228, 80, 168, 256, 2260, 2312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1118, 1206, 1294, 1382, 1470, 1558, 1646, 1734, 1822, 1910, 1998, 2086, 2174, 26, 114, 202, 290, 378, 466, 554, 642, 730, 818, 906, 994, 1082, 1170, 1258, 1346, 1434, 1522, 1610, 1698, 1786, 1874, 1962, 2050, 2138, 2226, 78, 166, 254, 342, 2262, 2314, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1204, 1292, 1380, 1468, 1556, 1644, 1732, 1820, 1908, 1996, 2084, 2172, 24, 112, 200, 288, 376, 464, 552, 640, 728, 816, 904, 992, 1080, 1168, 1256, 1344, 1432, 1520, 1608, 1696, 1784, 1872, 1960, 2048, 2136, 2224, 76, 164, 252, 340, 428, 2264, 2316, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1290, 1378, 1466, 1554, 1642, 1730, 1818, 1906, 1994, 2082, 2170, 22, 110, 198, 286, 374, 462, 550, 638, 726, 814, 902, 990, 1078, 1166, 1254, 1342, 1430, 1518, 1606, 1694, 1782, 1870, 1958, 2046, 2134, 2222, 74, 162, 250, 338, 426, 514, 2266, 2318, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1376, 1464, 1552, 1640, 1728, 1816, 1904, 1992, 2080, 2168, 20, 108, 196, 284, 372, 460, 548, 636, 724, 812, 900, 988, 1076, 1164, 1252, 1340, 1428, 1516, 1604, 1692, 1780, 1868, 1956, 2044, 2132, 2220, 72, 160, 248, 336, 424, 512, 600, 2268, 2320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1462, 1550, 1638, 1726, 1814, 1902, 1990, 2078, 2166, 18, 106, 194, 282, 370, 458, 546, 634, 722, 810, 898, 986, 1074, 1162, 1250, 1338, 1426, 1514, 1602, 1690, 1778, 1866, 1954, 2042, 2130, 2218, 70, 158, 246, 334, 422, 510, 598, 686, 2270, 2322, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1548, 1636, 1724, 1812, 1900, 1988, 2076, 2164, 16, 104, 192, 280, 368, 456, 544, 632, 720, 808, 896, 984, 1072, 1160, 1248, 1336, 1424, 1512, 1600, 1688, 1776, 1864, 1952, 2040, 2128, 2216, 68, 156, 244, 332, 420, 508, 596, 684, 772, 2272, 2324, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1634, 1722, 1810, 1898, 1986, 2074, 2162, 14, 102, 190, 278, 366, 454, 542, 630, 718, 806, 894, 982, 1070, 1158, 1246, 1334, 1422, 1510, 1598, 1686, 1774, 1862, 1950, 2038, 2126, 2214, 66, 154, 242, 330, 418, 506, 594, 682, 770, 858, 2274, 2326, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1720, 1808, 1896, 1984, 2072, 2160, 12, 100, 188, 276, 364, 452, 540, 628, 716, 804, 892, 980, 1068, 1156, 1244, 1332, 1420, 1508, 1596, 1684, 1772, 1860, 1948, 2036, 2124, 2212, 64, 152, 240, 328, 416, 504, 592, 680, 768, 856, 944, 2276, 2328, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1806, 1894, 1982, 2070, 2158, 10, 98, 186, 274, 362, 450, 538, 626, 714, 802, 890, 978, 1066, 1154, 1242, 1330, 1418, 1506, 1594, 1682, 1770, 1858, 1946, 2034, 2122, 2210, 62, 150, 238, 326, 414, 502, 590, 678, 766, 854, 942, 1030, 2278, 2330, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1892, 1980, 2068, 2156, 8, 96, 184, 272, 360, 448, 536, 624, 712, 800, 888, 976, 1064, 1152, 1240, 1328, 1416, 1504, 1592, 1680, 1768, 1856, 1944, 2032, 2120, 2208, 60, 148, 236, 324, 412, 500, 588, 676, 764, 852, 940, 1028, 1116, 2280, 2332, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {1978, 2066, 2154, 6, 94, 182, 270, 358, 446, 534, 622, 710, 798, 886, 974, 1062, 1150, 1238, 1326, 1414, 1502, 1590, 1678, 1766, 1854, 1942, 2030, 2118, 2206, 58, 146, 234, 322, 410, 498, 586, 674, 762, 850, 938, 1026, 1114, 1202, 2282, 2334, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {2064, 2152, 4, 92, 180, 268, 356, 444, 532, 620, 708, 796, 884, 972, 1060, 1148, 1236, 1324, 1412, 1500, 1588, 1676, 1764, 1852, 1940, 2028, 2116, 2204, 56, 144, 232, 320, 408, 496, 584, 672, 760, 848, 936, 1024, 1112, 1200, 1288, 2284, 2336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, {2150, 2, 90, 178, 266, 354, 442, 530, 618, 706, 794, 882, 970, 1058, 1146, 1234, 1322, 1410, 1498, 1586, 1674, 1762, 1850, 1938, 2026, 2114, 2202, 54, 142, 230, 318, 406, 494, 582, 670, 758, 846, 934, 1022, 1110, 1198, 1286, 1374, 2286, 2338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, }; #endif