1/* Generated by rijndael.c */ 2 3static const u1byte pow_tab[256] = { 4 1, 3, 5, 15, 17, 51, 85, 255, 26, 46, 114, 150, 161, 248, 19, 53, 5 95, 225, 56, 72, 216, 115, 149, 164, 247, 2, 6, 10, 30, 34, 102, 170, 6 229, 52, 92, 228, 55, 89, 235, 38, 106, 190, 217, 112, 144, 171, 230, 49, 7 83, 245, 4, 12, 20, 60, 68, 204, 79, 209, 104, 184, 211, 110, 178, 205, 8 76, 212, 103, 169, 224, 59, 77, 215, 98, 166, 241, 8, 24, 40, 120, 136, 9 131, 158, 185, 208, 107, 189, 220, 127, 129, 152, 179, 206, 73, 219, 118, 154, 10 181, 196, 87, 249, 16, 48, 80, 240, 11, 29, 39, 105, 187, 214, 97, 163, 11 254, 25, 43, 125, 135, 146, 173, 236, 47, 113, 147, 174, 233, 32, 96, 160, 12 251, 22, 58, 78, 210, 109, 183, 194, 93, 231, 50, 86, 250, 21, 63, 65, 13 195, 94, 226, 61, 71, 201, 64, 192, 91, 237, 44, 116, 156, 191, 218, 117, 14 159, 186, 213, 100, 172, 239, 42, 126, 130, 157, 188, 223, 122, 142, 137, 128, 15 155, 182, 193, 88, 232, 35, 101, 175, 234, 37, 111, 177, 200, 67, 197, 84, 16 252, 31, 33, 99, 165, 244, 7, 9, 27, 45, 119, 153, 176, 203, 70, 202, 17 69, 207, 74, 222, 121, 139, 134, 145, 168, 227, 62, 66, 198, 81, 243, 14, 18 18, 54, 90, 238, 41, 123, 141, 140, 143, 138, 133, 148, 167, 242, 13, 23, 19 57, 75, 221, 124, 132, 151, 162, 253, 28, 36, 108, 180, 199, 82, 246, 1 20}; 21 22static const u1byte log_tab[256] = { 23 1, 3, 5, 15, 17, 51, 85, 255, 26, 46, 114, 150, 161, 248, 19, 53, 24 95, 225, 56, 72, 216, 115, 149, 164, 247, 2, 6, 10, 30, 34, 102, 170, 25 229, 52, 92, 228, 55, 89, 235, 38, 106, 190, 217, 112, 144, 171, 230, 49, 26 83, 245, 4, 12, 20, 60, 68, 204, 79, 209, 104, 184, 211, 110, 178, 205, 27 76, 212, 103, 169, 224, 59, 77, 215, 98, 166, 241, 8, 24, 40, 120, 136, 28 131, 158, 185, 208, 107, 189, 220, 127, 129, 152, 179, 206, 73, 219, 118, 154, 29 181, 196, 87, 249, 16, 48, 80, 240, 11, 29, 39, 105, 187, 214, 97, 163, 30 254, 25, 43, 125, 135, 146, 173, 236, 47, 113, 147, 174, 233, 32, 96, 160, 31 251, 22, 58, 78, 210, 109, 183, 194, 93, 231, 50, 86, 250, 21, 63, 65, 32 195, 94, 226, 61, 71, 201, 64, 192, 91, 237, 44, 116, 156, 191, 218, 117, 33 159, 186, 213, 100, 172, 239, 42, 126, 130, 157, 188, 223, 122, 142, 137, 128, 34 155, 182, 193, 88, 232, 35, 101, 175, 234, 37, 111, 177, 200, 67, 197, 84, 35 252, 31, 33, 99, 165, 244, 7, 9, 27, 45, 119, 153, 176, 203, 70, 202, 36 69, 207, 74, 222, 121, 139, 134, 145, 168, 227, 62, 66, 198, 81, 243, 14, 37 18, 54, 90, 238, 41, 123, 141, 140, 143, 138, 133, 148, 167, 242, 13, 23, 38 57, 75, 221, 124, 132, 151, 162, 253, 28, 36, 108, 180, 199, 82, 246, 1 39}; 40 41static const u1byte sbx_tab[256] = { 42 1, 3, 5, 15, 17, 51, 85, 255, 26, 46, 114, 150, 161, 248, 19, 53, 43 95, 225, 56, 72, 216, 115, 149, 164, 247, 2, 6, 10, 30, 34, 102, 170, 44 229, 52, 92, 228, 55, 89, 235, 38, 106, 190, 217, 112, 144, 171, 230, 49, 45 83, 245, 4, 12, 20, 60, 68, 204, 79, 209, 104, 184, 211, 110, 178, 205, 46 76, 212, 103, 169, 224, 59, 77, 215, 98, 166, 241, 8, 24, 40, 120, 136, 47 131, 158, 185, 208, 107, 189, 220, 127, 129, 152, 179, 206, 73, 219, 118, 154, 48 181, 196, 87, 249, 16, 48, 80, 240, 11, 29, 39, 105, 187, 214, 97, 163, 49 254, 25, 43, 125, 135, 146, 173, 236, 47, 113, 147, 174, 233, 32, 96, 160, 50 251, 22, 58, 78, 210, 109, 183, 194, 93, 231, 50, 86, 250, 21, 63, 65, 51 195, 94, 226, 61, 71, 201, 64, 192, 91, 237, 44, 116, 156, 191, 218, 117, 52 159, 186, 213, 100, 172, 239, 42, 126, 130, 157, 188, 223, 122, 142, 137, 128, 53 155, 182, 193, 88, 232, 35, 101, 175, 234, 37, 111, 177, 200, 67, 197, 84, 54 252, 31, 33, 99, 165, 244, 7, 9, 27, 45, 119, 153, 176, 203, 70, 202, 55 69, 207, 74, 222, 121, 139, 134, 145, 168, 227, 62, 66, 198, 81, 243, 14, 56 18, 54, 90, 238, 41, 123, 141, 140, 143, 138, 133, 148, 167, 242, 13, 23, 57 57, 75, 221, 124, 132, 151, 162, 253, 28, 36, 108, 180, 199, 82, 246, 1 58}; 59 60static const u1byte isb_tab[256] = { 61 1, 3, 5, 15, 17, 51, 85, 255, 26, 46, 114, 150, 161, 248, 19, 53, 62 95, 225, 56, 72, 216, 115, 149, 164, 247, 2, 6, 10, 30, 34, 102, 170, 63 229, 52, 92, 228, 55, 89, 235, 38, 106, 190, 217, 112, 144, 171, 230, 49, 64 83, 245, 4, 12, 20, 60, 68, 204, 79, 209, 104, 184, 211, 110, 178, 205, 65 76, 212, 103, 169, 224, 59, 77, 215, 98, 166, 241, 8, 24, 40, 120, 136, 66 131, 158, 185, 208, 107, 189, 220, 127, 129, 152, 179, 206, 73, 219, 118, 154, 67 181, 196, 87, 249, 16, 48, 80, 240, 11, 29, 39, 105, 187, 214, 97, 163, 68 254, 25, 43, 125, 135, 146, 173, 236, 47, 113, 147, 174, 233, 32, 96, 160, 69 251, 22, 58, 78, 210, 109, 183, 194, 93, 231, 50, 86, 250, 21, 63, 65, 70 195, 94, 226, 61, 71, 201, 64, 192, 91, 237, 44, 116, 156, 191, 218, 117, 71 159, 186, 213, 100, 172, 239, 42, 126, 130, 157, 188, 223, 122, 142, 137, 128, 72 155, 182, 193, 88, 232, 35, 101, 175, 234, 37, 111, 177, 200, 67, 197, 84, 73 252, 31, 33, 99, 165, 244, 7, 9, 27, 45, 119, 153, 176, 203, 70, 202, 74 69, 207, 74, 222, 121, 139, 134, 145, 168, 227, 62, 66, 198, 81, 243, 14, 75 18, 54, 90, 238, 41, 123, 141, 140, 143, 138, 133, 148, 167, 242, 13, 23, 76 57, 75, 221, 124, 132, 151, 162, 253, 28, 36, 108, 180, 199, 82, 246, 1 77}; 78 79static const u4byte ft_tab[4][256] = { 80{ 81 0xa56363c6, 0x847c7cf8, 0x997777ee, 0x8d7b7bf6, 82 0x0df2f2ff, 0xbd6b6bd6, 0xb16f6fde, 0x54c5c591, 83 0x50303060, 0x03010102, 0xa96767ce, 0x7d2b2b56, 84 0x19fefee7, 0x62d7d7b5, 0xe6abab4d, 0x9a7676ec, 85 0x45caca8f, 0x9d82821f, 0x40c9c989, 0x877d7dfa, 86 0x15fafaef, 0xeb5959b2, 0xc947478e, 0x0bf0f0fb, 87 0xecadad41, 0x67d4d4b3, 0xfda2a25f, 0xeaafaf45, 88 0xbf9c9c23, 0xf7a4a453, 0x967272e4, 0x5bc0c09b, 89 0xc2b7b775, 0x1cfdfde1, 0xae93933d, 0x6a26264c, 90 0x5a36366c, 0x413f3f7e, 0x02f7f7f5, 0x4fcccc83, 91 0x5c343468, 0xf4a5a551, 0x34e5e5d1, 0x08f1f1f9, 92 0x937171e2, 0x73d8d8ab, 0x53313162, 0x3f15152a, 93 0x0c040408, 0x52c7c795, 0x65232346, 0x5ec3c39d, 94 0x28181830, 0xa1969637, 0x0f05050a, 0xb59a9a2f, 95 0x0907070e, 0x36121224, 0x9b80801b, 0x3de2e2df, 96 0x26ebebcd, 0x6927274e, 0xcdb2b27f, 0x9f7575ea, 97 0x1b090912, 0x9e83831d, 0x742c2c58, 0x2e1a1a34, 98 0x2d1b1b36, 0xb26e6edc, 0xee5a5ab4, 0xfba0a05b, 99 0xf65252a4, 0x4d3b3b76, 0x61d6d6b7, 0xceb3b37d, 100 0x7b292952, 0x3ee3e3dd, 0x712f2f5e, 0x97848413, 101 0xf55353a6, 0x68d1d1b9, 0x00000000, 0x2cededc1, 102 0x60202040, 0x1ffcfce3, 0xc8b1b179, 0xed5b5bb6, 103 0xbe6a6ad4, 0x46cbcb8d, 0xd9bebe67, 0x4b393972, 104 0xde4a4a94, 0xd44c4c98, 0xe85858b0, 0x4acfcf85, 105 0x6bd0d0bb, 0x2aefefc5, 0xe5aaaa4f, 0x16fbfbed, 106 0xc5434386, 0xd74d4d9a, 0x55333366, 0x94858511, 107 0xcf45458a, 0x10f9f9e9, 0x06020204, 0x817f7ffe, 108 0xf05050a0, 0x443c3c78, 0xba9f9f25, 0xe3a8a84b, 109 0xf35151a2, 0xfea3a35d, 0xc0404080, 0x8a8f8f05, 110 0xad92923f, 0xbc9d9d21, 0x48383870, 0x04f5f5f1, 111 0xdfbcbc63, 0xc1b6b677, 0x75dadaaf, 0x63212142, 112 0x30101020, 0x1affffe5, 0x0ef3f3fd, 0x6dd2d2bf, 113 0x4ccdcd81, 0x140c0c18, 0x35131326, 0x2fececc3, 114 0xe15f5fbe, 0xa2979735, 0xcc444488, 0x3917172e, 115 0x57c4c493, 0xf2a7a755, 0x827e7efc, 0x473d3d7a, 116 0xac6464c8, 0xe75d5dba, 0x2b191932, 0x957373e6, 117 0xa06060c0, 0x98818119, 0xd14f4f9e, 0x7fdcdca3, 118 0x66222244, 0x7e2a2a54, 0xab90903b, 0x8388880b, 119 0xca46468c, 0x29eeeec7, 0xd3b8b86b, 0x3c141428, 120 0x79dedea7, 0xe25e5ebc, 0x1d0b0b16, 0x76dbdbad, 121 0x3be0e0db, 0x56323264, 0x4e3a3a74, 0x1e0a0a14, 122 0xdb494992, 0x0a06060c, 0x6c242448, 0xe45c5cb8, 123 0x5dc2c29f, 0x6ed3d3bd, 0xefacac43, 0xa66262c4, 124 0xa8919139, 0xa4959531, 0x37e4e4d3, 0x8b7979f2, 125 0x32e7e7d5, 0x43c8c88b, 0x5937376e, 0xb76d6dda, 126 0x8c8d8d01, 0x64d5d5b1, 0xd24e4e9c, 0xe0a9a949, 127 0xb46c6cd8, 0xfa5656ac, 0x07f4f4f3, 0x25eaeacf, 128 0xaf6565ca, 0x8e7a7af4, 0xe9aeae47, 0x18080810, 129 0xd5baba6f, 0x887878f0, 0x6f25254a, 0x722e2e5c, 130 0x241c1c38, 0xf1a6a657, 0xc7b4b473, 0x51c6c697, 131 0x23e8e8cb, 0x7cdddda1, 0x9c7474e8, 0x211f1f3e, 132 0xdd4b4b96, 0xdcbdbd61, 0x868b8b0d, 0x858a8a0f, 133 0x907070e0, 0x423e3e7c, 0xc4b5b571, 0xaa6666cc, 134 0xd8484890, 0x05030306, 0x01f6f6f7, 0x120e0e1c, 135 0xa36161c2, 0x5f35356a, 0xf95757ae, 0xd0b9b969, 136 0x91868617, 0x58c1c199, 0x271d1d3a, 0xb99e9e27, 137 0x38e1e1d9, 0x13f8f8eb, 0xb398982b, 0x33111122, 138 0xbb6969d2, 0x70d9d9a9, 0x898e8e07, 0xa7949433, 139 0xb69b9b2d, 0x221e1e3c, 0x92878715, 0x20e9e9c9, 140 0x49cece87, 0xff5555aa, 0x78282850, 0x7adfdfa5, 141 0x8f8c8c03, 0xf8a1a159, 0x80898909, 0x170d0d1a, 142 0xdabfbf65, 0x31e6e6d7, 0xc6424284, 0xb86868d0, 143 0xc3414182, 0xb0999929, 0x772d2d5a, 0x110f0f1e, 144 0xcbb0b07b, 0xfc5454a8, 0xd6bbbb6d, 0x3a16162c 145}, { 146 0x6363c6a5, 0x7c7cf884, 0x7777ee99, 0x7b7bf68d, 147 0xf2f2ff0d, 0x6b6bd6bd, 0x6f6fdeb1, 0xc5c59154, 148 0x30306050, 0x01010203, 0x6767cea9, 0x2b2b567d, 149 0xfefee719, 0xd7d7b562, 0xabab4de6, 0x7676ec9a, 150 0xcaca8f45, 0x82821f9d, 0xc9c98940, 0x7d7dfa87, 151 0xfafaef15, 0x5959b2eb, 0x47478ec9, 0xf0f0fb0b, 152 0xadad41ec, 0xd4d4b367, 0xa2a25ffd, 0xafaf45ea, 153 0x9c9c23bf, 0xa4a453f7, 0x7272e496, 0xc0c09b5b, 154 0xb7b775c2, 0xfdfde11c, 0x93933dae, 0x26264c6a, 155 0x36366c5a, 0x3f3f7e41, 0xf7f7f502, 0xcccc834f, 156 0x3434685c, 0xa5a551f4, 0xe5e5d134, 0xf1f1f908, 157 0x7171e293, 0xd8d8ab73, 0x31316253, 0x15152a3f, 158 0x0404080c, 0xc7c79552, 0x23234665, 0xc3c39d5e, 159 0x18183028, 0x969637a1, 0x05050a0f, 0x9a9a2fb5, 160 0x07070e09, 0x12122436, 0x80801b9b, 0xe2e2df3d, 161 0xebebcd26, 0x27274e69, 0xb2b27fcd, 0x7575ea9f, 162 0x0909121b, 0x83831d9e, 0x2c2c5874, 0x1a1a342e, 163 0x1b1b362d, 0x6e6edcb2, 0x5a5ab4ee, 0xa0a05bfb, 164 0x5252a4f6, 0x3b3b764d, 0xd6d6b761, 0xb3b37dce, 165 0x2929527b, 0xe3e3dd3e, 0x2f2f5e71, 0x84841397, 166 0x5353a6f5, 0xd1d1b968, 0x00000000, 0xededc12c, 167 0x20204060, 0xfcfce31f, 0xb1b179c8, 0x5b5bb6ed, 168 0x6a6ad4be, 0xcbcb8d46, 0xbebe67d9, 0x3939724b, 169 0x4a4a94de, 0x4c4c98d4, 0x5858b0e8, 0xcfcf854a, 170 0xd0d0bb6b, 0xefefc52a, 0xaaaa4fe5, 0xfbfbed16, 171 0x434386c5, 0x4d4d9ad7, 0x33336655, 0x85851194, 172 0x45458acf, 0xf9f9e910, 0x02020406, 0x7f7ffe81, 173 0x5050a0f0, 0x3c3c7844, 0x9f9f25ba, 0xa8a84be3, 174 0x5151a2f3, 0xa3a35dfe, 0x404080c0, 0x8f8f058a, 175 0x92923fad, 0x9d9d21bc, 0x38387048, 0xf5f5f104, 176 0xbcbc63df, 0xb6b677c1, 0xdadaaf75, 0x21214263, 177 0x10102030, 0xffffe51a, 0xf3f3fd0e, 0xd2d2bf6d, 178 0xcdcd814c, 0x0c0c1814, 0x13132635, 0xececc32f, 179 0x5f5fbee1, 0x979735a2, 0x444488cc, 0x17172e39, 180 0xc4c49357, 0xa7a755f2, 0x7e7efc82, 0x3d3d7a47, 181 0x6464c8ac, 0x5d5dbae7, 0x1919322b, 0x7373e695, 182 0x6060c0a0, 0x81811998, 0x4f4f9ed1, 0xdcdca37f, 183 0x22224466, 0x2a2a547e, 0x90903bab, 0x88880b83, 184 0x46468cca, 0xeeeec729, 0xb8b86bd3, 0x1414283c, 185 0xdedea779, 0x5e5ebce2, 0x0b0b161d, 0xdbdbad76, 186 0xe0e0db3b, 0x32326456, 0x3a3a744e, 0x0a0a141e, 187 0x494992db, 0x06060c0a, 0x2424486c, 0x5c5cb8e4, 188 0xc2c29f5d, 0xd3d3bd6e, 0xacac43ef, 0x6262c4a6, 189 0x919139a8, 0x959531a4, 0xe4e4d337, 0x7979f28b, 190 0xe7e7d532, 0xc8c88b43, 0x37376e59, 0x6d6ddab7, 191 0x8d8d018c, 0xd5d5b164, 0x4e4e9cd2, 0xa9a949e0, 192 0x6c6cd8b4, 0x5656acfa, 0xf4f4f307, 0xeaeacf25, 193 0x6565caaf, 0x7a7af48e, 0xaeae47e9, 0x08081018, 194 0xbaba6fd5, 0x7878f088, 0x25254a6f, 0x2e2e5c72, 195 0x1c1c3824, 0xa6a657f1, 0xb4b473c7, 0xc6c69751, 196 0xe8e8cb23, 0xdddda17c, 0x7474e89c, 0x1f1f3e21, 197 0x4b4b96dd, 0xbdbd61dc, 0x8b8b0d86, 0x8a8a0f85, 198 0x7070e090, 0x3e3e7c42, 0xb5b571c4, 0x6666ccaa, 199 0x484890d8, 0x03030605, 0xf6f6f701, 0x0e0e1c12, 200 0x6161c2a3, 0x35356a5f, 0x5757aef9, 0xb9b969d0, 201 0x86861791, 0xc1c19958, 0x1d1d3a27, 0x9e9e27b9, 202 0xe1e1d938, 0xf8f8eb13, 0x98982bb3, 0x11112233, 203 0x6969d2bb, 0xd9d9a970, 0x8e8e0789, 0x949433a7, 204 0x9b9b2db6, 0x1e1e3c22, 0x87871592, 0xe9e9c920, 205 0xcece8749, 0x5555aaff, 0x28285078, 0xdfdfa57a, 206 0x8c8c038f, 0xa1a159f8, 0x89890980, 0x0d0d1a17, 207 0xbfbf65da, 0xe6e6d731, 0x424284c6, 0x6868d0b8, 208 0x414182c3, 0x999929b0, 0x2d2d5a77, 0x0f0f1e11, 209 0xb0b07bcb, 0x5454a8fc, 0xbbbb6dd6, 0x16162c3a 210}, { 211 0x63c6a563, 0x7cf8847c, 0x77ee9977, 0x7bf68d7b, 212 0xf2ff0df2, 0x6bd6bd6b, 0x6fdeb16f, 0xc59154c5, 213 0x30605030, 0x01020301, 0x67cea967, 0x2b567d2b, 214 0xfee719fe, 0xd7b562d7, 0xab4de6ab, 0x76ec9a76, 215 0xca8f45ca, 0x821f9d82, 0xc98940c9, 0x7dfa877d, 216 0xfaef15fa, 0x59b2eb59, 0x478ec947, 0xf0fb0bf0, 217 0xad41ecad, 0xd4b367d4, 0xa25ffda2, 0xaf45eaaf, 218 0x9c23bf9c, 0xa453f7a4, 0x72e49672, 0xc09b5bc0, 219 0xb775c2b7, 0xfde11cfd, 0x933dae93, 0x264c6a26, 220 0x366c5a36, 0x3f7e413f, 0xf7f502f7, 0xcc834fcc, 221 0x34685c34, 0xa551f4a5, 0xe5d134e5, 0xf1f908f1, 222 0x71e29371, 0xd8ab73d8, 0x31625331, 0x152a3f15, 223 0x04080c04, 0xc79552c7, 0x23466523, 0xc39d5ec3, 224 0x18302818, 0x9637a196, 0x050a0f05, 0x9a2fb59a, 225 0x070e0907, 0x12243612, 0x801b9b80, 0xe2df3de2, 226 0xebcd26eb, 0x274e6927, 0xb27fcdb2, 0x75ea9f75, 227 0x09121b09, 0x831d9e83, 0x2c58742c, 0x1a342e1a, 228 0x1b362d1b, 0x6edcb26e, 0x5ab4ee5a, 0xa05bfba0, 229 0x52a4f652, 0x3b764d3b, 0xd6b761d6, 0xb37dceb3, 230 0x29527b29, 0xe3dd3ee3, 0x2f5e712f, 0x84139784, 231 0x53a6f553, 0xd1b968d1, 0x00000000, 0xedc12ced, 232 0x20406020, 0xfce31ffc, 0xb179c8b1, 0x5bb6ed5b, 233 0x6ad4be6a, 0xcb8d46cb, 0xbe67d9be, 0x39724b39, 234 0x4a94de4a, 0x4c98d44c, 0x58b0e858, 0xcf854acf, 235 0xd0bb6bd0, 0xefc52aef, 0xaa4fe5aa, 0xfbed16fb, 236 0x4386c543, 0x4d9ad74d, 0x33665533, 0x85119485, 237 0x458acf45, 0xf9e910f9, 0x02040602, 0x7ffe817f, 238 0x50a0f050, 0x3c78443c, 0x9f25ba9f, 0xa84be3a8, 239 0x51a2f351, 0xa35dfea3, 0x4080c040, 0x8f058a8f, 240 0x923fad92, 0x9d21bc9d, 0x38704838, 0xf5f104f5, 241 0xbc63dfbc, 0xb677c1b6, 0xdaaf75da, 0x21426321, 242 0x10203010, 0xffe51aff, 0xf3fd0ef3, 0xd2bf6dd2, 243 0xcd814ccd, 0x0c18140c, 0x13263513, 0xecc32fec, 244 0x5fbee15f, 0x9735a297, 0x4488cc44, 0x172e3917, 245 0xc49357c4, 0xa755f2a7, 0x7efc827e, 0x3d7a473d, 246 0x64c8ac64, 0x5dbae75d, 0x19322b19, 0x73e69573, 247 0x60c0a060, 0x81199881, 0x4f9ed14f, 0xdca37fdc, 248 0x22446622, 0x2a547e2a, 0x903bab90, 0x880b8388, 249 0x468cca46, 0xeec729ee, 0xb86bd3b8, 0x14283c14, 250 0xdea779de, 0x5ebce25e, 0x0b161d0b, 0xdbad76db, 251 0xe0db3be0, 0x32645632, 0x3a744e3a, 0x0a141e0a, 252 0x4992db49, 0x060c0a06, 0x24486c24, 0x5cb8e45c, 253 0xc29f5dc2, 0xd3bd6ed3, 0xac43efac, 0x62c4a662, 254 0x9139a891, 0x9531a495, 0xe4d337e4, 0x79f28b79, 255 0xe7d532e7, 0xc88b43c8, 0x376e5937, 0x6ddab76d, 256 0x8d018c8d, 0xd5b164d5, 0x4e9cd24e, 0xa949e0a9, 257 0x6cd8b46c, 0x56acfa56, 0xf4f307f4, 0xeacf25ea, 258 0x65caaf65, 0x7af48e7a, 0xae47e9ae, 0x08101808, 259 0xba6fd5ba, 0x78f08878, 0x254a6f25, 0x2e5c722e, 260 0x1c38241c, 0xa657f1a6, 0xb473c7b4, 0xc69751c6, 261 0xe8cb23e8, 0xdda17cdd, 0x74e89c74, 0x1f3e211f, 262 0x4b96dd4b, 0xbd61dcbd, 0x8b0d868b, 0x8a0f858a, 263 0x70e09070, 0x3e7c423e, 0xb571c4b5, 0x66ccaa66, 264 0x4890d848, 0x03060503, 0xf6f701f6, 0x0e1c120e, 265 0x61c2a361, 0x356a5f35, 0x57aef957, 0xb969d0b9, 266 0x86179186, 0xc19958c1, 0x1d3a271d, 0x9e27b99e, 267 0xe1d938e1, 0xf8eb13f8, 0x982bb398, 0x11223311, 268 0x69d2bb69, 0xd9a970d9, 0x8e07898e, 0x9433a794, 269 0x9b2db69b, 0x1e3c221e, 0x87159287, 0xe9c920e9, 270 0xce8749ce, 0x55aaff55, 0x28507828, 0xdfa57adf, 271 0x8c038f8c, 0xa159f8a1, 0x89098089, 0x0d1a170d, 272 0xbf65dabf, 0xe6d731e6, 0x4284c642, 0x68d0b868, 273 0x4182c341, 0x9929b099, 0x2d5a772d, 0x0f1e110f, 274 0xb07bcbb0, 0x54a8fc54, 0xbb6dd6bb, 0x162c3a16 275}, { 276 0xc6a56363, 0xf8847c7c, 0xee997777, 0xf68d7b7b, 277 0xff0df2f2, 0xd6bd6b6b, 0xdeb16f6f, 0x9154c5c5, 278 0x60503030, 0x02030101, 0xcea96767, 0x567d2b2b, 279 0xe719fefe, 0xb562d7d7, 0x4de6abab, 0xec9a7676, 280 0x8f45caca, 0x1f9d8282, 0x8940c9c9, 0xfa877d7d, 281 0xef15fafa, 0xb2eb5959, 0x8ec94747, 0xfb0bf0f0, 282 0x41ecadad, 0xb367d4d4, 0x5ffda2a2, 0x45eaafaf, 283 0x23bf9c9c, 0x53f7a4a4, 0xe4967272, 0x9b5bc0c0, 284 0x75c2b7b7, 0xe11cfdfd, 0x3dae9393, 0x4c6a2626, 285 0x6c5a3636, 0x7e413f3f, 0xf502f7f7, 0x834fcccc, 286 0x685c3434, 0x51f4a5a5, 0xd134e5e5, 0xf908f1f1, 287 0xe2937171, 0xab73d8d8, 0x62533131, 0x2a3f1515, 288 0x080c0404, 0x9552c7c7, 0x46652323, 0x9d5ec3c3, 289 0x30281818, 0x37a19696, 0x0a0f0505, 0x2fb59a9a, 290 0x0e090707, 0x24361212, 0x1b9b8080, 0xdf3de2e2, 291 0xcd26ebeb, 0x4e692727, 0x7fcdb2b2, 0xea9f7575, 292 0x121b0909, 0x1d9e8383, 0x58742c2c, 0x342e1a1a, 293 0x362d1b1b, 0xdcb26e6e, 0xb4ee5a5a, 0x5bfba0a0, 294 0xa4f65252, 0x764d3b3b, 0xb761d6d6, 0x7dceb3b3, 295 0x527b2929, 0xdd3ee3e3, 0x5e712f2f, 0x13978484, 296 0xa6f55353, 0xb968d1d1, 0x00000000, 0xc12ceded, 297 0x40602020, 0xe31ffcfc, 0x79c8b1b1, 0xb6ed5b5b, 298 0xd4be6a6a, 0x8d46cbcb, 0x67d9bebe, 0x724b3939, 299 0x94de4a4a, 0x98d44c4c, 0xb0e85858, 0x854acfcf, 300 0xbb6bd0d0, 0xc52aefef, 0x4fe5aaaa, 0xed16fbfb, 301 0x86c54343, 0x9ad74d4d, 0x66553333, 0x11948585, 302 0x8acf4545, 0xe910f9f9, 0x04060202, 0xfe817f7f, 303 0xa0f05050, 0x78443c3c, 0x25ba9f9f, 0x4be3a8a8, 304 0xa2f35151, 0x5dfea3a3, 0x80c04040, 0x058a8f8f, 305 0x3fad9292, 0x21bc9d9d, 0x70483838, 0xf104f5f5, 306 0x63dfbcbc, 0x77c1b6b6, 0xaf75dada, 0x42632121, 307 0x20301010, 0xe51affff, 0xfd0ef3f3, 0xbf6dd2d2, 308 0x814ccdcd, 0x18140c0c, 0x26351313, 0xc32fecec, 309 0xbee15f5f, 0x35a29797, 0x88cc4444, 0x2e391717, 310 0x9357c4c4, 0x55f2a7a7, 0xfc827e7e, 0x7a473d3d, 311 0xc8ac6464, 0xbae75d5d, 0x322b1919, 0xe6957373, 312 0xc0a06060, 0x19988181, 0x9ed14f4f, 0xa37fdcdc, 313 0x44662222, 0x547e2a2a, 0x3bab9090, 0x0b838888, 314 0x8cca4646, 0xc729eeee, 0x6bd3b8b8, 0x283c1414, 315 0xa779dede, 0xbce25e5e, 0x161d0b0b, 0xad76dbdb, 316 0xdb3be0e0, 0x64563232, 0x744e3a3a, 0x141e0a0a, 317 0x92db4949, 0x0c0a0606, 0x486c2424, 0xb8e45c5c, 318 0x9f5dc2c2, 0xbd6ed3d3, 0x43efacac, 0xc4a66262, 319 0x39a89191, 0x31a49595, 0xd337e4e4, 0xf28b7979, 320 0xd532e7e7, 0x8b43c8c8, 0x6e593737, 0xdab76d6d, 321 0x018c8d8d, 0xb164d5d5, 0x9cd24e4e, 0x49e0a9a9, 322 0xd8b46c6c, 0xacfa5656, 0xf307f4f4, 0xcf25eaea, 323 0xcaaf6565, 0xf48e7a7a, 0x47e9aeae, 0x10180808, 324 0x6fd5baba, 0xf0887878, 0x4a6f2525, 0x5c722e2e, 325 0x38241c1c, 0x57f1a6a6, 0x73c7b4b4, 0x9751c6c6, 326 0xcb23e8e8, 0xa17cdddd, 0xe89c7474, 0x3e211f1f, 327 0x96dd4b4b, 0x61dcbdbd, 0x0d868b8b, 0x0f858a8a, 328 0xe0907070, 0x7c423e3e, 0x71c4b5b5, 0xccaa6666, 329 0x90d84848, 0x06050303, 0xf701f6f6, 0x1c120e0e, 330 0xc2a36161, 0x6a5f3535, 0xaef95757, 0x69d0b9b9, 331 0x17918686, 0x9958c1c1, 0x3a271d1d, 0x27b99e9e, 332 0xd938e1e1, 0xeb13f8f8, 0x2bb39898, 0x22331111, 333 0xd2bb6969, 0xa970d9d9, 0x07898e8e, 0x33a79494, 334 0x2db69b9b, 0x3c221e1e, 0x15928787, 0xc920e9e9, 335 0x8749cece, 0xaaff5555, 0x50782828, 0xa57adfdf, 336 0x038f8c8c, 0x59f8a1a1, 0x09808989, 0x1a170d0d, 337 0x65dabfbf, 0xd731e6e6, 0x84c64242, 0xd0b86868, 338 0x82c34141, 0x29b09999, 0x5a772d2d, 0x1e110f0f, 339 0x7bcbb0b0, 0xa8fc5454, 0x6dd6bbbb, 0x2c3a1616 340} 341}; 342 343static const u4byte it_tab[4][256] = { 344{ 345 0x50a7f451, 0x5365417e, 0xc3a4171a, 0x965e273a, 346 0xcb6bab3b, 0xf1459d1f, 0xab58faac, 0x9303e34b, 347 0x55fa3020, 0xf66d76ad, 0x9176cc88, 0x254c02f5, 348 0xfcd7e54f, 0xd7cb2ac5, 0x80443526, 0x8fa362b5, 349 0x495ab1de, 0x671bba25, 0x980eea45, 0xe1c0fe5d, 350 0x02752fc3, 0x12f04c81, 0xa397468d, 0xc6f9d36b, 351 0xe75f8f03, 0x959c9215, 0xeb7a6dbf, 0xda595295, 352 0x2d83bed4, 0xd3217458, 0x2969e049, 0x44c8c98e, 353 0x6a89c275, 0x78798ef4, 0x6b3e5899, 0xdd71b927, 354 0xb64fe1be, 0x17ad88f0, 0x66ac20c9, 0xb43ace7d, 355 0x184adf63, 0x82311ae5, 0x60335197, 0x457f5362, 356 0xe07764b1, 0x84ae6bbb, 0x1ca081fe, 0x942b08f9, 357 0x58684870, 0x19fd458f, 0x876cde94, 0xb7f87b52, 358 0x23d373ab, 0xe2024b72, 0x578f1fe3, 0x2aab5566, 359 0x0728ebb2, 0x03c2b52f, 0x9a7bc586, 0xa50837d3, 360 0xf2872830, 0xb2a5bf23, 0xba6a0302, 0x5c8216ed, 361 0x2b1ccf8a, 0x92b479a7, 0xf0f207f3, 0xa1e2694e, 362 0xcdf4da65, 0xd5be0506, 0x1f6234d1, 0x8afea6c4, 363 0x9d532e34, 0xa055f3a2, 0x32e18a05, 0x75ebf6a4, 364 0x39ec830b, 0xaaef6040, 0x069f715e, 0x51106ebd, 365 0xf98a213e, 0x3d06dd96, 0xae053edd, 0x46bde64d, 366 0xb58d5491, 0x055dc471, 0x6fd40604, 0xff155060, 367 0x24fb9819, 0x97e9bdd6, 0xcc434089, 0x779ed967, 368 0xbd42e8b0, 0x888b8907, 0x385b19e7, 0xdbeec879, 369 0x470a7ca1, 0xe90f427c, 0xc91e84f8, 0x00000000, 370 0x83868009, 0x48ed2b32, 0xac70111e, 0x4e725a6c, 371 0xfbff0efd, 0x5638850f, 0x1ed5ae3d, 0x27392d36, 372 0x64d90f0a, 0x21a65c68, 0xd1545b9b, 0x3a2e3624, 373 0xb1670a0c, 0x0fe75793, 0xd296eeb4, 0x9e919b1b, 374 0x4fc5c080, 0xa220dc61, 0x694b775a, 0x161a121c, 375 0x0aba93e2, 0xe52aa0c0, 0x43e0223c, 0x1d171b12, 376 0x0b0d090e, 0xadc78bf2, 0xb9a8b62d, 0xc8a91e14, 377 0x8519f157, 0x4c0775af, 0xbbdd99ee, 0xfd607fa3, 378 0x9f2601f7, 0xbcf5725c, 0xc53b6644, 0x347efb5b, 379 0x7629438b, 0xdcc623cb, 0x68fcedb6, 0x63f1e4b8, 380 0xcadc31d7, 0x10856342, 0x40229713, 0x2011c684, 381 0x7d244a85, 0xf83dbbd2, 0x1132f9ae, 0x6da129c7, 382 0x4b2f9e1d, 0xf330b2dc, 0xec52860d, 0xd0e3c177, 383 0x6c16b32b, 0x99b970a9, 0xfa489411, 0x2264e947, 384 0xc48cfca8, 0x1a3ff0a0, 0xd82c7d56, 0xef903322, 385 0xc74e4987, 0xc1d138d9, 0xfea2ca8c, 0x360bd498, 386 0xcf81f5a6, 0x28de7aa5, 0x268eb7da, 0xa4bfad3f, 387 0xe49d3a2c, 0x0d927850, 0x9bcc5f6a, 0x62467e54, 388 0xc2138df6, 0xe8b8d890, 0x5ef7392e, 0xf5afc382, 389 0xbe805d9f, 0x7c93d069, 0xa92dd56f, 0xb31225cf, 390 0x3b99acc8, 0xa77d1810, 0x6e639ce8, 0x7bbb3bdb, 391 0x097826cd, 0xf418596e, 0x01b79aec, 0xa89a4f83, 392 0x656e95e6, 0x7ee6ffaa, 0x08cfbc21, 0xe6e815ef, 393 0xd99be7ba, 0xce366f4a, 0xd4099fea, 0xd67cb029, 394 0xafb2a431, 0x31233f2a, 0x3094a5c6, 0xc066a235, 395 0x37bc4e74, 0xa6ca82fc, 0xb0d090e0, 0x15d8a733, 396 0x4a9804f1, 0xf7daec41, 0x0e50cd7f, 0x2ff69117, 397 0x8dd64d76, 0x4db0ef43, 0x544daacc, 0xdf0496e4, 398 0xe3b5d19e, 0x1b886a4c, 0xb81f2cc1, 0x7f516546, 399 0x04ea5e9d, 0x5d358c01, 0x737487fa, 0x2e410bfb, 400 0x5a1d67b3, 0x52d2db92, 0x335610e9, 0x1347d66d, 401 0x8c61d79a, 0x7a0ca137, 0x8e14f859, 0x893c13eb, 402 0xee27a9ce, 0x35c961b7, 0xede51ce1, 0x3cb1477a, 403 0x59dfd29c, 0x3f73f255, 0x79ce1418, 0xbf37c773, 404 0xeacdf753, 0x5baafd5f, 0x146f3ddf, 0x86db4478, 405 0x81f3afca, 0x3ec468b9, 0x2c342438, 0x5f40a3c2, 406 0x72c31d16, 0x0c25e2bc, 0x8b493c28, 0x41950dff, 407 0x7101a839, 0xdeb30c08, 0x9ce4b4d8, 0x90c15664, 408 0x6184cb7b, 0x70b632d5, 0x745c6c48, 0x4257b8d0 409}, { 410 0xa7f45150, 0x65417e53, 0xa4171ac3, 0x5e273a96, 411 0x6bab3bcb, 0x459d1ff1, 0x58faacab, 0x03e34b93, 412 0xfa302055, 0x6d76adf6, 0x76cc8891, 0x4c02f525, 413 0xd7e54ffc, 0xcb2ac5d7, 0x44352680, 0xa362b58f, 414 0x5ab1de49, 0x1bba2567, 0x0eea4598, 0xc0fe5de1, 415 0x752fc302, 0xf04c8112, 0x97468da3, 0xf9d36bc6, 416 0x5f8f03e7, 0x9c921595, 0x7a6dbfeb, 0x595295da, 417 0x83bed42d, 0x217458d3, 0x69e04929, 0xc8c98e44, 418 0x89c2756a, 0x798ef478, 0x3e58996b, 0x71b927dd, 419 0x4fe1beb6, 0xad88f017, 0xac20c966, 0x3ace7db4, 420 0x4adf6318, 0x311ae582, 0x33519760, 0x7f536245, 421 0x7764b1e0, 0xae6bbb84, 0xa081fe1c, 0x2b08f994, 422 0x68487058, 0xfd458f19, 0x6cde9487, 0xf87b52b7, 423 0xd373ab23, 0x024b72e2, 0x8f1fe357, 0xab55662a, 424 0x28ebb207, 0xc2b52f03, 0x7bc5869a, 0x0837d3a5, 425 0x872830f2, 0xa5bf23b2, 0x6a0302ba, 0x8216ed5c, 426 0x1ccf8a2b, 0xb479a792, 0xf207f3f0, 0xe2694ea1, 427 0xf4da65cd, 0xbe0506d5, 0x6234d11f, 0xfea6c48a, 428 0x532e349d, 0x55f3a2a0, 0xe18a0532, 0xebf6a475, 429 0xec830b39, 0xef6040aa, 0x9f715e06, 0x106ebd51, 430 0x8a213ef9, 0x06dd963d, 0x053eddae, 0xbde64d46, 431 0x8d5491b5, 0x5dc47105, 0xd406046f, 0x155060ff, 432 0xfb981924, 0xe9bdd697, 0x434089cc, 0x9ed96777, 433 0x42e8b0bd, 0x8b890788, 0x5b19e738, 0xeec879db, 434 0x0a7ca147, 0x0f427ce9, 0x1e84f8c9, 0x00000000, 435 0x86800983, 0xed2b3248, 0x70111eac, 0x725a6c4e, 436 0xff0efdfb, 0x38850f56, 0xd5ae3d1e, 0x392d3627, 437 0xd90f0a64, 0xa65c6821, 0x545b9bd1, 0x2e36243a, 438 0x670a0cb1, 0xe757930f, 0x96eeb4d2, 0x919b1b9e, 439 0xc5c0804f, 0x20dc61a2, 0x4b775a69, 0x1a121c16, 440 0xba93e20a, 0x2aa0c0e5, 0xe0223c43, 0x171b121d, 441 0x0d090e0b, 0xc78bf2ad, 0xa8b62db9, 0xa91e14c8, 442 0x19f15785, 0x0775af4c, 0xdd99eebb, 0x607fa3fd, 443 0x2601f79f, 0xf5725cbc, 0x3b6644c5, 0x7efb5b34, 444 0x29438b76, 0xc623cbdc, 0xfcedb668, 0xf1e4b863, 445 0xdc31d7ca, 0x85634210, 0x22971340, 0x11c68420, 446 0x244a857d, 0x3dbbd2f8, 0x32f9ae11, 0xa129c76d, 447 0x2f9e1d4b, 0x30b2dcf3, 0x52860dec, 0xe3c177d0, 448 0x16b32b6c, 0xb970a999, 0x489411fa, 0x64e94722, 449 0x8cfca8c4, 0x3ff0a01a, 0x2c7d56d8, 0x903322ef, 450 0x4e4987c7, 0xd138d9c1, 0xa2ca8cfe, 0x0bd49836, 451 0x81f5a6cf, 0xde7aa528, 0x8eb7da26, 0xbfad3fa4, 452 0x9d3a2ce4, 0x9278500d, 0xcc5f6a9b, 0x467e5462, 453 0x138df6c2, 0xb8d890e8, 0xf7392e5e, 0xafc382f5, 454 0x805d9fbe, 0x93d0697c, 0x2dd56fa9, 0x1225cfb3, 455 0x99acc83b, 0x7d1810a7, 0x639ce86e, 0xbb3bdb7b, 456 0x7826cd09, 0x18596ef4, 0xb79aec01, 0x9a4f83a8, 457 0x6e95e665, 0xe6ffaa7e, 0xcfbc2108, 0xe815efe6, 458 0x9be7bad9, 0x366f4ace, 0x099fead4, 0x7cb029d6, 459 0xb2a431af, 0x233f2a31, 0x94a5c630, 0x66a235c0, 460 0xbc4e7437, 0xca82fca6, 0xd090e0b0, 0xd8a73315, 461 0x9804f14a, 0xdaec41f7, 0x50cd7f0e, 0xf691172f, 462 0xd64d768d, 0xb0ef434d, 0x4daacc54, 0x0496e4df, 463 0xb5d19ee3, 0x886a4c1b, 0x1f2cc1b8, 0x5165467f, 464 0xea5e9d04, 0x358c015d, 0x7487fa73, 0x410bfb2e, 465 0x1d67b35a, 0xd2db9252, 0x5610e933, 0x47d66d13, 466 0x61d79a8c, 0x0ca1377a, 0x14f8598e, 0x3c13eb89, 467 0x27a9ceee, 0xc961b735, 0xe51ce1ed, 0xb1477a3c, 468 0xdfd29c59, 0x73f2553f, 0xce141879, 0x37c773bf, 469 0xcdf753ea, 0xaafd5f5b, 0x6f3ddf14, 0xdb447886, 470 0xf3afca81, 0xc468b93e, 0x3424382c, 0x40a3c25f, 471 0xc31d1672, 0x25e2bc0c, 0x493c288b, 0x950dff41, 472 0x01a83971, 0xb30c08de, 0xe4b4d89c, 0xc1566490, 473 0x84cb7b61, 0xb632d570, 0x5c6c4874, 0x57b8d042 474}, { 475 0xf45150a7, 0x417e5365, 0x171ac3a4, 0x273a965e, 476 0xab3bcb6b, 0x9d1ff145, 0xfaacab58, 0xe34b9303, 477 0x302055fa, 0x76adf66d, 0xcc889176, 0x02f5254c, 478 0xe54ffcd7, 0x2ac5d7cb, 0x35268044, 0x62b58fa3, 479 0xb1de495a, 0xba25671b, 0xea45980e, 0xfe5de1c0, 480 0x2fc30275, 0x4c8112f0, 0x468da397, 0xd36bc6f9, 481 0x8f03e75f, 0x9215959c, 0x6dbfeb7a, 0x5295da59, 482 0xbed42d83, 0x7458d321, 0xe0492969, 0xc98e44c8, 483 0xc2756a89, 0x8ef47879, 0x58996b3e, 0xb927dd71, 484 0xe1beb64f, 0x88f017ad, 0x20c966ac, 0xce7db43a, 485 0xdf63184a, 0x1ae58231, 0x51976033, 0x5362457f, 486 0x64b1e077, 0x6bbb84ae, 0x81fe1ca0, 0x08f9942b, 487 0x48705868, 0x458f19fd, 0xde94876c, 0x7b52b7f8, 488 0x73ab23d3, 0x4b72e202, 0x1fe3578f, 0x55662aab, 489 0xebb20728, 0xb52f03c2, 0xc5869a7b, 0x37d3a508, 490 0x2830f287, 0xbf23b2a5, 0x0302ba6a, 0x16ed5c82, 491 0xcf8a2b1c, 0x79a792b4, 0x07f3f0f2, 0x694ea1e2, 492 0xda65cdf4, 0x0506d5be, 0x34d11f62, 0xa6c48afe, 493 0x2e349d53, 0xf3a2a055, 0x8a0532e1, 0xf6a475eb, 494 0x830b39ec, 0x6040aaef, 0x715e069f, 0x6ebd5110, 495 0x213ef98a, 0xdd963d06, 0x3eddae05, 0xe64d46bd, 496 0x5491b58d, 0xc471055d, 0x06046fd4, 0x5060ff15, 497 0x981924fb, 0xbdd697e9, 0x4089cc43, 0xd967779e, 498 0xe8b0bd42, 0x8907888b, 0x19e7385b, 0xc879dbee, 499 0x7ca1470a, 0x427ce90f, 0x84f8c91e, 0x00000000, 500 0x80098386, 0x2b3248ed, 0x111eac70, 0x5a6c4e72, 501 0x0efdfbff, 0x850f5638, 0xae3d1ed5, 0x2d362739, 502 0x0f0a64d9, 0x5c6821a6, 0x5b9bd154, 0x36243a2e, 503 0x0a0cb167, 0x57930fe7, 0xeeb4d296, 0x9b1b9e91, 504 0xc0804fc5, 0xdc61a220, 0x775a694b, 0x121c161a, 505 0x93e20aba, 0xa0c0e52a, 0x223c43e0, 0x1b121d17, 506 0x090e0b0d, 0x8bf2adc7, 0xb62db9a8, 0x1e14c8a9, 507 0xf1578519, 0x75af4c07, 0x99eebbdd, 0x7fa3fd60, 508 0x01f79f26, 0x725cbcf5, 0x6644c53b, 0xfb5b347e, 509 0x438b7629, 0x23cbdcc6, 0xedb668fc, 0xe4b863f1, 510 0x31d7cadc, 0x63421085, 0x97134022, 0xc6842011, 511 0x4a857d24, 0xbbd2f83d, 0xf9ae1132, 0x29c76da1, 512 0x9e1d4b2f, 0xb2dcf330, 0x860dec52, 0xc177d0e3, 513 0xb32b6c16, 0x70a999b9, 0x9411fa48, 0xe9472264, 514 0xfca8c48c, 0xf0a01a3f, 0x7d56d82c, 0x3322ef90, 515 0x4987c74e, 0x38d9c1d1, 0xca8cfea2, 0xd498360b, 516 0xf5a6cf81, 0x7aa528de, 0xb7da268e, 0xad3fa4bf, 517 0x3a2ce49d, 0x78500d92, 0x5f6a9bcc, 0x7e546246, 518 0x8df6c213, 0xd890e8b8, 0x392e5ef7, 0xc382f5af, 519 0x5d9fbe80, 0xd0697c93, 0xd56fa92d, 0x25cfb312, 520 0xacc83b99, 0x1810a77d, 0x9ce86e63, 0x3bdb7bbb, 521 0x26cd0978, 0x596ef418, 0x9aec01b7, 0x4f83a89a, 522 0x95e6656e, 0xffaa7ee6, 0xbc2108cf, 0x15efe6e8, 523 0xe7bad99b, 0x6f4ace36, 0x9fead409, 0xb029d67c, 524 0xa431afb2, 0x3f2a3123, 0xa5c63094, 0xa235c066, 525 0x4e7437bc, 0x82fca6ca, 0x90e0b0d0, 0xa73315d8, 526 0x04f14a98, 0xec41f7da, 0xcd7f0e50, 0x91172ff6, 527 0x4d768dd6, 0xef434db0, 0xaacc544d, 0x96e4df04, 528 0xd19ee3b5, 0x6a4c1b88, 0x2cc1b81f, 0x65467f51, 529 0x5e9d04ea, 0x8c015d35, 0x87fa7374, 0x0bfb2e41, 530 0x67b35a1d, 0xdb9252d2, 0x10e93356, 0xd66d1347, 531 0xd79a8c61, 0xa1377a0c, 0xf8598e14, 0x13eb893c, 532 0xa9ceee27, 0x61b735c9, 0x1ce1ede5, 0x477a3cb1, 533 0xd29c59df, 0xf2553f73, 0x141879ce, 0xc773bf37, 534 0xf753eacd, 0xfd5f5baa, 0x3ddf146f, 0x447886db, 535 0xafca81f3, 0x68b93ec4, 0x24382c34, 0xa3c25f40, 536 0x1d1672c3, 0xe2bc0c25, 0x3c288b49, 0x0dff4195, 537 0xa8397101, 0x0c08deb3, 0xb4d89ce4, 0x566490c1, 538 0xcb7b6184, 0x32d570b6, 0x6c48745c, 0xb8d04257 539}, { 540 0x5150a7f4, 0x7e536541, 0x1ac3a417, 0x3a965e27, 541 0x3bcb6bab, 0x1ff1459d, 0xacab58fa, 0x4b9303e3, 542 0x2055fa30, 0xadf66d76, 0x889176cc, 0xf5254c02, 543 0x4ffcd7e5, 0xc5d7cb2a, 0x26804435, 0xb58fa362, 544 0xde495ab1, 0x25671bba, 0x45980eea, 0x5de1c0fe, 545 0xc302752f, 0x8112f04c, 0x8da39746, 0x6bc6f9d3, 546 0x03e75f8f, 0x15959c92, 0xbfeb7a6d, 0x95da5952, 547 0xd42d83be, 0x58d32174, 0x492969e0, 0x8e44c8c9, 548 0x756a89c2, 0xf478798e, 0x996b3e58, 0x27dd71b9, 549 0xbeb64fe1, 0xf017ad88, 0xc966ac20, 0x7db43ace, 550 0x63184adf, 0xe582311a, 0x97603351, 0x62457f53, 551 0xb1e07764, 0xbb84ae6b, 0xfe1ca081, 0xf9942b08, 552 0x70586848, 0x8f19fd45, 0x94876cde, 0x52b7f87b, 553 0xab23d373, 0x72e2024b, 0xe3578f1f, 0x662aab55, 554 0xb20728eb, 0x2f03c2b5, 0x869a7bc5, 0xd3a50837, 555 0x30f28728, 0x23b2a5bf, 0x02ba6a03, 0xed5c8216, 556 0x8a2b1ccf, 0xa792b479, 0xf3f0f207, 0x4ea1e269, 557 0x65cdf4da, 0x06d5be05, 0xd11f6234, 0xc48afea6, 558 0x349d532e, 0xa2a055f3, 0x0532e18a, 0xa475ebf6, 559 0x0b39ec83, 0x40aaef60, 0x5e069f71, 0xbd51106e, 560 0x3ef98a21, 0x963d06dd, 0xddae053e, 0x4d46bde6, 561 0x91b58d54, 0x71055dc4, 0x046fd406, 0x60ff1550, 562 0x1924fb98, 0xd697e9bd, 0x89cc4340, 0x67779ed9, 563 0xb0bd42e8, 0x07888b89, 0xe7385b19, 0x79dbeec8, 564 0xa1470a7c, 0x7ce90f42, 0xf8c91e84, 0x00000000, 565 0x09838680, 0x3248ed2b, 0x1eac7011, 0x6c4e725a, 566 0xfdfbff0e, 0x0f563885, 0x3d1ed5ae, 0x3627392d, 567 0x0a64d90f, 0x6821a65c, 0x9bd1545b, 0x243a2e36, 568 0x0cb1670a, 0x930fe757, 0xb4d296ee, 0x1b9e919b, 569 0x804fc5c0, 0x61a220dc, 0x5a694b77, 0x1c161a12, 570 0xe20aba93, 0xc0e52aa0, 0x3c43e022, 0x121d171b, 571 0x0e0b0d09, 0xf2adc78b, 0x2db9a8b6, 0x14c8a91e, 572 0x578519f1, 0xaf4c0775, 0xeebbdd99, 0xa3fd607f, 573 0xf79f2601, 0x5cbcf572, 0x44c53b66, 0x5b347efb, 574 0x8b762943, 0xcbdcc623, 0xb668fced, 0xb863f1e4, 575 0xd7cadc31, 0x42108563, 0x13402297, 0x842011c6, 576 0x857d244a, 0xd2f83dbb, 0xae1132f9, 0xc76da129, 577 0x1d4b2f9e, 0xdcf330b2, 0x0dec5286, 0x77d0e3c1, 578 0x2b6c16b3, 0xa999b970, 0x11fa4894, 0x472264e9, 579 0xa8c48cfc, 0xa01a3ff0, 0x56d82c7d, 0x22ef9033, 580 0x87c74e49, 0xd9c1d138, 0x8cfea2ca, 0x98360bd4, 581 0xa6cf81f5, 0xa528de7a, 0xda268eb7, 0x3fa4bfad, 582 0x2ce49d3a, 0x500d9278, 0x6a9bcc5f, 0x5462467e, 583 0xf6c2138d, 0x90e8b8d8, 0x2e5ef739, 0x82f5afc3, 584 0x9fbe805d, 0x697c93d0, 0x6fa92dd5, 0xcfb31225, 585 0xc83b99ac, 0x10a77d18, 0xe86e639c, 0xdb7bbb3b, 586 0xcd097826, 0x6ef41859, 0xec01b79a, 0x83a89a4f, 587 0xe6656e95, 0xaa7ee6ff, 0x2108cfbc, 0xefe6e815, 588 0xbad99be7, 0x4ace366f, 0xead4099f, 0x29d67cb0, 589 0x31afb2a4, 0x2a31233f, 0xc63094a5, 0x35c066a2, 590 0x7437bc4e, 0xfca6ca82, 0xe0b0d090, 0x3315d8a7, 591 0xf14a9804, 0x41f7daec, 0x7f0e50cd, 0x172ff691, 592 0x768dd64d, 0x434db0ef, 0xcc544daa, 0xe4df0496, 593 0x9ee3b5d1, 0x4c1b886a, 0xc1b81f2c, 0x467f5165, 594 0x9d04ea5e, 0x015d358c, 0xfa737487, 0xfb2e410b, 595 0xb35a1d67, 0x9252d2db, 0xe9335610, 0x6d1347d6, 596 0x9a8c61d7, 0x377a0ca1, 0x598e14f8, 0xeb893c13, 597 0xceee27a9, 0xb735c961, 0xe1ede51c, 0x7a3cb147, 598 0x9c59dfd2, 0x553f73f2, 0x1879ce14, 0x73bf37c7, 599 0x53eacdf7, 0x5f5baafd, 0xdf146f3d, 0x7886db44, 600 0xca81f3af, 0xb93ec468, 0x382c3424, 0xc25f40a3, 601 0x1672c31d, 0xbc0c25e2, 0x288b493c, 0xff41950d, 602 0x397101a8, 0x08deb30c, 0xd89ce4b4, 0x6490c156, 603 0x7b6184cb, 0xd570b632, 0x48745c6c, 0xd04257b8 604} 605}; 606 607static const u4byte fl_tab[4][256] = { 608{ 609 0x00000063, 0x0000007c, 0x00000077, 0x0000007b, 610 0x000000f2, 0x0000006b, 0x0000006f, 0x000000c5, 611 0x00000030, 0x00000001, 0x00000067, 0x0000002b, 612 0x000000fe, 0x000000d7, 0x000000ab, 0x00000076, 613 0x000000ca, 0x00000082, 0x000000c9, 0x0000007d, 614 0x000000fa, 0x00000059, 0x00000047, 0x000000f0, 615 0x000000ad, 0x000000d4, 0x000000a2, 0x000000af, 616 0x0000009c, 0x000000a4, 0x00000072, 0x000000c0, 617 0x000000b7, 0x000000fd, 0x00000093, 0x00000026, 618 0x00000036, 0x0000003f, 0x000000f7, 0x000000cc, 619 0x00000034, 0x000000a5, 0x000000e5, 0x000000f1, 620 0x00000071, 0x000000d8, 0x00000031, 0x00000015, 621 0x00000004, 0x000000c7, 0x00000023, 0x000000c3, 622 0x00000018, 0x00000096, 0x00000005, 0x0000009a, 623 0x00000007, 0x00000012, 0x00000080, 0x000000e2, 624 0x000000eb, 0x00000027, 0x000000b2, 0x00000075, 625 0x00000009, 0x00000083, 0x0000002c, 0x0000001a, 626 0x0000001b, 0x0000006e, 0x0000005a, 0x000000a0, 627 0x00000052, 0x0000003b, 0x000000d6, 0x000000b3, 628 0x00000029, 0x000000e3, 0x0000002f, 0x00000084, 629 0x00000053, 0x000000d1, 0x00000000, 0x000000ed, 630 0x00000020, 0x000000fc, 0x000000b1, 0x0000005b, 631 0x0000006a, 0x000000cb, 0x000000be, 0x00000039, 632 0x0000004a, 0x0000004c, 0x00000058, 0x000000cf, 633 0x000000d0, 0x000000ef, 0x000000aa, 0x000000fb, 634 0x00000043, 0x0000004d, 0x00000033, 0x00000085, 635 0x00000045, 0x000000f9, 0x00000002, 0x0000007f, 636 0x00000050, 0x0000003c, 0x0000009f, 0x000000a8, 637 0x00000051, 0x000000a3, 0x00000040, 0x0000008f, 638 0x00000092, 0x0000009d, 0x00000038, 0x000000f5, 639 0x000000bc, 0x000000b6, 0x000000da, 0x00000021, 640 0x00000010, 0x000000ff, 0x000000f3, 0x000000d2, 641 0x000000cd, 0x0000000c, 0x00000013, 0x000000ec, 642 0x0000005f, 0x00000097, 0x00000044, 0x00000017, 643 0x000000c4, 0x000000a7, 0x0000007e, 0x0000003d, 644 0x00000064, 0x0000005d, 0x00000019, 0x00000073, 645 0x00000060, 0x00000081, 0x0000004f, 0x000000dc, 646 0x00000022, 0x0000002a, 0x00000090, 0x00000088, 647 0x00000046, 0x000000ee, 0x000000b8, 0x00000014, 648 0x000000de, 0x0000005e, 0x0000000b, 0x000000db, 649 0x000000e0, 0x00000032, 0x0000003a, 0x0000000a, 650 0x00000049, 0x00000006, 0x00000024, 0x0000005c, 651 0x000000c2, 0x000000d3, 0x000000ac, 0x00000062, 652 0x00000091, 0x00000095, 0x000000e4, 0x00000079, 653 0x000000e7, 0x000000c8, 0x00000037, 0x0000006d, 654 0x0000008d, 0x000000d5, 0x0000004e, 0x000000a9, 655 0x0000006c, 0x00000056, 0x000000f4, 0x000000ea, 656 0x00000065, 0x0000007a, 0x000000ae, 0x00000008, 657 0x000000ba, 0x00000078, 0x00000025, 0x0000002e, 658 0x0000001c, 0x000000a6, 0x000000b4, 0x000000c6, 659 0x000000e8, 0x000000dd, 0x00000074, 0x0000001f, 660 0x0000004b, 0x000000bd, 0x0000008b, 0x0000008a, 661 0x00000070, 0x0000003e, 0x000000b5, 0x00000066, 662 0x00000048, 0x00000003, 0x000000f6, 0x0000000e, 663 0x00000061, 0x00000035, 0x00000057, 0x000000b9, 664 0x00000086, 0x000000c1, 0x0000001d, 0x0000009e, 665 0x000000e1, 0x000000f8, 0x00000098, 0x00000011, 666 0x00000069, 0x000000d9, 0x0000008e, 0x00000094, 667 0x0000009b, 0x0000001e, 0x00000087, 0x000000e9, 668 0x000000ce, 0x00000055, 0x00000028, 0x000000df, 669 0x0000008c, 0x000000a1, 0x00000089, 0x0000000d, 670 0x000000bf, 0x000000e6, 0x00000042, 0x00000068, 671 0x00000041, 0x00000099, 0x0000002d, 0x0000000f, 672 0x000000b0, 0x00000054, 0x000000bb, 0x00000016 673}, { 674 0x00006300, 0x00007c00, 0x00007700, 0x00007b00, 675 0x0000f200, 0x00006b00, 0x00006f00, 0x0000c500, 676 0x00003000, 0x00000100, 0x00006700, 0x00002b00, 677 0x0000fe00, 0x0000d700, 0x0000ab00, 0x00007600, 678 0x0000ca00, 0x00008200, 0x0000c900, 0x00007d00, 679 0x0000fa00, 0x00005900, 0x00004700, 0x0000f000, 680 0x0000ad00, 0x0000d400, 0x0000a200, 0x0000af00, 681 0x00009c00, 0x0000a400, 0x00007200, 0x0000c000, 682 0x0000b700, 0x0000fd00, 0x00009300, 0x00002600, 683 0x00003600, 0x00003f00, 0x0000f700, 0x0000cc00, 684 0x00003400, 0x0000a500, 0x0000e500, 0x0000f100, 685 0x00007100, 0x0000d800, 0x00003100, 0x00001500, 686 0x00000400, 0x0000c700, 0x00002300, 0x0000c300, 687 0x00001800, 0x00009600, 0x00000500, 0x00009a00, 688 0x00000700, 0x00001200, 0x00008000, 0x0000e200, 689 0x0000eb00, 0x00002700, 0x0000b200, 0x00007500, 690 0x00000900, 0x00008300, 0x00002c00, 0x00001a00, 691 0x00001b00, 0x00006e00, 0x00005a00, 0x0000a000, 692 0x00005200, 0x00003b00, 0x0000d600, 0x0000b300, 693 0x00002900, 0x0000e300, 0x00002f00, 0x00008400, 694 0x00005300, 0x0000d100, 0x00000000, 0x0000ed00, 695 0x00002000, 0x0000fc00, 0x0000b100, 0x00005b00, 696 0x00006a00, 0x0000cb00, 0x0000be00, 0x00003900, 697 0x00004a00, 0x00004c00, 0x00005800, 0x0000cf00, 698 0x0000d000, 0x0000ef00, 0x0000aa00, 0x0000fb00, 699 0x00004300, 0x00004d00, 0x00003300, 0x00008500, 700 0x00004500, 0x0000f900, 0x00000200, 0x00007f00, 701 0x00005000, 0x00003c00, 0x00009f00, 0x0000a800, 702 0x00005100, 0x0000a300, 0x00004000, 0x00008f00, 703 0x00009200, 0x00009d00, 0x00003800, 0x0000f500, 704 0x0000bc00, 0x0000b600, 0x0000da00, 0x00002100, 705 0x00001000, 0x0000ff00, 0x0000f300, 0x0000d200, 706 0x0000cd00, 0x00000c00, 0x00001300, 0x0000ec00, 707 0x00005f00, 0x00009700, 0x00004400, 0x00001700, 708 0x0000c400, 0x0000a700, 0x00007e00, 0x00003d00, 709 0x00006400, 0x00005d00, 0x00001900, 0x00007300, 710 0x00006000, 0x00008100, 0x00004f00, 0x0000dc00, 711 0x00002200, 0x00002a00, 0x00009000, 0x00008800, 712 0x00004600, 0x0000ee00, 0x0000b800, 0x00001400, 713 0x0000de00, 0x00005e00, 0x00000b00, 0x0000db00, 714 0x0000e000, 0x00003200, 0x00003a00, 0x00000a00, 715 0x00004900, 0x00000600, 0x00002400, 0x00005c00, 716 0x0000c200, 0x0000d300, 0x0000ac00, 0x00006200, 717 0x00009100, 0x00009500, 0x0000e400, 0x00007900, 718 0x0000e700, 0x0000c800, 0x00003700, 0x00006d00, 719 0x00008d00, 0x0000d500, 0x00004e00, 0x0000a900, 720 0x00006c00, 0x00005600, 0x0000f400, 0x0000ea00, 721 0x00006500, 0x00007a00, 0x0000ae00, 0x00000800, 722 0x0000ba00, 0x00007800, 0x00002500, 0x00002e00, 723 0x00001c00, 0x0000a600, 0x0000b400, 0x0000c600, 724 0x0000e800, 0x0000dd00, 0x00007400, 0x00001f00, 725 0x00004b00, 0x0000bd00, 0x00008b00, 0x00008a00, 726 0x00007000, 0x00003e00, 0x0000b500, 0x00006600, 727 0x00004800, 0x00000300, 0x0000f600, 0x00000e00, 728 0x00006100, 0x00003500, 0x00005700, 0x0000b900, 729 0x00008600, 0x0000c100, 0x00001d00, 0x00009e00, 730 0x0000e100, 0x0000f800, 0x00009800, 0x00001100, 731 0x00006900, 0x0000d900, 0x00008e00, 0x00009400, 732 0x00009b00, 0x00001e00, 0x00008700, 0x0000e900, 733 0x0000ce00, 0x00005500, 0x00002800, 0x0000df00, 734 0x00008c00, 0x0000a100, 0x00008900, 0x00000d00, 735 0x0000bf00, 0x0000e600, 0x00004200, 0x00006800, 736 0x00004100, 0x00009900, 0x00002d00, 0x00000f00, 737 0x0000b000, 0x00005400, 0x0000bb00, 0x00001600 738}, { 739 0x00630000, 0x007c0000, 0x00770000, 0x007b0000, 740 0x00f20000, 0x006b0000, 0x006f0000, 0x00c50000, 741 0x00300000, 0x00010000, 0x00670000, 0x002b0000, 742 0x00fe0000, 0x00d70000, 0x00ab0000, 0x00760000, 743 0x00ca0000, 0x00820000, 0x00c90000, 0x007d0000, 744 0x00fa0000, 0x00590000, 0x00470000, 0x00f00000, 745 0x00ad0000, 0x00d40000, 0x00a20000, 0x00af0000, 746 0x009c0000, 0x00a40000, 0x00720000, 0x00c00000, 747 0x00b70000, 0x00fd0000, 0x00930000, 0x00260000, 748 0x00360000, 0x003f0000, 0x00f70000, 0x00cc0000, 749 0x00340000, 0x00a50000, 0x00e50000, 0x00f10000, 750 0x00710000, 0x00d80000, 0x00310000, 0x00150000, 751 0x00040000, 0x00c70000, 0x00230000, 0x00c30000, 752 0x00180000, 0x00960000, 0x00050000, 0x009a0000, 753 0x00070000, 0x00120000, 0x00800000, 0x00e20000, 754 0x00eb0000, 0x00270000, 0x00b20000, 0x00750000, 755 0x00090000, 0x00830000, 0x002c0000, 0x001a0000, 756 0x001b0000, 0x006e0000, 0x005a0000, 0x00a00000, 757 0x00520000, 0x003b0000, 0x00d60000, 0x00b30000, 758 0x00290000, 0x00e30000, 0x002f0000, 0x00840000, 759 0x00530000, 0x00d10000, 0x00000000, 0x00ed0000, 760 0x00200000, 0x00fc0000, 0x00b10000, 0x005b0000, 761 0x006a0000, 0x00cb0000, 0x00be0000, 0x00390000, 762 0x004a0000, 0x004c0000, 0x00580000, 0x00cf0000, 763 0x00d00000, 0x00ef0000, 0x00aa0000, 0x00fb0000, 764 0x00430000, 0x004d0000, 0x00330000, 0x00850000, 765 0x00450000, 0x00f90000, 0x00020000, 0x007f0000, 766 0x00500000, 0x003c0000, 0x009f0000, 0x00a80000, 767 0x00510000, 0x00a30000, 0x00400000, 0x008f0000, 768 0x00920000, 0x009d0000, 0x00380000, 0x00f50000, 769 0x00bc0000, 0x00b60000, 0x00da0000, 0x00210000, 770 0x00100000, 0x00ff0000, 0x00f30000, 0x00d20000, 771 0x00cd0000, 0x000c0000, 0x00130000, 0x00ec0000, 772 0x005f0000, 0x00970000, 0x00440000, 0x00170000, 773 0x00c40000, 0x00a70000, 0x007e0000, 0x003d0000, 774 0x00640000, 0x005d0000, 0x00190000, 0x00730000, 775 0x00600000, 0x00810000, 0x004f0000, 0x00dc0000, 776 0x00220000, 0x002a0000, 0x00900000, 0x00880000, 777 0x00460000, 0x00ee0000, 0x00b80000, 0x00140000, 778 0x00de0000, 0x005e0000, 0x000b0000, 0x00db0000, 779 0x00e00000, 0x00320000, 0x003a0000, 0x000a0000, 780 0x00490000, 0x00060000, 0x00240000, 0x005c0000, 781 0x00c20000, 0x00d30000, 0x00ac0000, 0x00620000, 782 0x00910000, 0x00950000, 0x00e40000, 0x00790000, 783 0x00e70000, 0x00c80000, 0x00370000, 0x006d0000, 784 0x008d0000, 0x00d50000, 0x004e0000, 0x00a90000, 785 0x006c0000, 0x00560000, 0x00f40000, 0x00ea0000, 786 0x00650000, 0x007a0000, 0x00ae0000, 0x00080000, 787 0x00ba0000, 0x00780000, 0x00250000, 0x002e0000, 788 0x001c0000, 0x00a60000, 0x00b40000, 0x00c60000, 789 0x00e80000, 0x00dd0000, 0x00740000, 0x001f0000, 790 0x004b0000, 0x00bd0000, 0x008b0000, 0x008a0000, 791 0x00700000, 0x003e0000, 0x00b50000, 0x00660000, 792 0x00480000, 0x00030000, 0x00f60000, 0x000e0000, 793 0x00610000, 0x00350000, 0x00570000, 0x00b90000, 794 0x00860000, 0x00c10000, 0x001d0000, 0x009e0000, 795 0x00e10000, 0x00f80000, 0x00980000, 0x00110000, 796 0x00690000, 0x00d90000, 0x008e0000, 0x00940000, 797 0x009b0000, 0x001e0000, 0x00870000, 0x00e90000, 798 0x00ce0000, 0x00550000, 0x00280000, 0x00df0000, 799 0x008c0000, 0x00a10000, 0x00890000, 0x000d0000, 800 0x00bf0000, 0x00e60000, 0x00420000, 0x00680000, 801 0x00410000, 0x00990000, 0x002d0000, 0x000f0000, 802 0x00b00000, 0x00540000, 0x00bb0000, 0x00160000 803}, { 804 0x63000000, 0x7c000000, 0x77000000, 0x7b000000, 805 0xf2000000, 0x6b000000, 0x6f000000, 0xc5000000, 806 0x30000000, 0x01000000, 0x67000000, 0x2b000000, 807 0xfe000000, 0xd7000000, 0xab000000, 0x76000000, 808 0xca000000, 0x82000000, 0xc9000000, 0x7d000000, 809 0xfa000000, 0x59000000, 0x47000000, 0xf0000000, 810 0xad000000, 0xd4000000, 0xa2000000, 0xaf000000, 811 0x9c000000, 0xa4000000, 0x72000000, 0xc0000000, 812 0xb7000000, 0xfd000000, 0x93000000, 0x26000000, 813 0x36000000, 0x3f000000, 0xf7000000, 0xcc000000, 814 0x34000000, 0xa5000000, 0xe5000000, 0xf1000000, 815 0x71000000, 0xd8000000, 0x31000000, 0x15000000, 816 0x04000000, 0xc7000000, 0x23000000, 0xc3000000, 817 0x18000000, 0x96000000, 0x05000000, 0x9a000000, 818 0x07000000, 0x12000000, 0x80000000, 0xe2000000, 819 0xeb000000, 0x27000000, 0xb2000000, 0x75000000, 820 0x09000000, 0x83000000, 0x2c000000, 0x1a000000, 821 0x1b000000, 0x6e000000, 0x5a000000, 0xa0000000, 822 0x52000000, 0x3b000000, 0xd6000000, 0xb3000000, 823 0x29000000, 0xe3000000, 0x2f000000, 0x84000000, 824 0x53000000, 0xd1000000, 0x00000000, 0xed000000, 825 0x20000000, 0xfc000000, 0xb1000000, 0x5b000000, 826 0x6a000000, 0xcb000000, 0xbe000000, 0x39000000, 827 0x4a000000, 0x4c000000, 0x58000000, 0xcf000000, 828 0xd0000000, 0xef000000, 0xaa000000, 0xfb000000, 829 0x43000000, 0x4d000000, 0x33000000, 0x85000000, 830 0x45000000, 0xf9000000, 0x02000000, 0x7f000000, 831 0x50000000, 0x3c000000, 0x9f000000, 0xa8000000, 832 0x51000000, 0xa3000000, 0x40000000, 0x8f000000, 833 0x92000000, 0x9d000000, 0x38000000, 0xf5000000, 834 0xbc000000, 0xb6000000, 0xda000000, 0x21000000, 835 0x10000000, 0xff000000, 0xf3000000, 0xd2000000, 836 0xcd000000, 0x0c000000, 0x13000000, 0xec000000, 837 0x5f000000, 0x97000000, 0x44000000, 0x17000000, 838 0xc4000000, 0xa7000000, 0x7e000000, 0x3d000000, 839 0x64000000, 0x5d000000, 0x19000000, 0x73000000, 840 0x60000000, 0x81000000, 0x4f000000, 0xdc000000, 841 0x22000000, 0x2a000000, 0x90000000, 0x88000000, 842 0x46000000, 0xee000000, 0xb8000000, 0x14000000, 843 0xde000000, 0x5e000000, 0x0b000000, 0xdb000000, 844 0xe0000000, 0x32000000, 0x3a000000, 0x0a000000, 845 0x49000000, 0x06000000, 0x24000000, 0x5c000000, 846 0xc2000000, 0xd3000000, 0xac000000, 0x62000000, 847 0x91000000, 0x95000000, 0xe4000000, 0x79000000, 848 0xe7000000, 0xc8000000, 0x37000000, 0x6d000000, 849 0x8d000000, 0xd5000000, 0x4e000000, 0xa9000000, 850 0x6c000000, 0x56000000, 0xf4000000, 0xea000000, 851 0x65000000, 0x7a000000, 0xae000000, 0x08000000, 852 0xba000000, 0x78000000, 0x25000000, 0x2e000000, 853 0x1c000000, 0xa6000000, 0xb4000000, 0xc6000000, 854 0xe8000000, 0xdd000000, 0x74000000, 0x1f000000, 855 0x4b000000, 0xbd000000, 0x8b000000, 0x8a000000, 856 0x70000000, 0x3e000000, 0xb5000000, 0x66000000, 857 0x48000000, 0x03000000, 0xf6000000, 0x0e000000, 858 0x61000000, 0x35000000, 0x57000000, 0xb9000000, 859 0x86000000, 0xc1000000, 0x1d000000, 0x9e000000, 860 0xe1000000, 0xf8000000, 0x98000000, 0x11000000, 861 0x69000000, 0xd9000000, 0x8e000000, 0x94000000, 862 0x9b000000, 0x1e000000, 0x87000000, 0xe9000000, 863 0xce000000, 0x55000000, 0x28000000, 0xdf000000, 864 0x8c000000, 0xa1000000, 0x89000000, 0x0d000000, 865 0xbf000000, 0xe6000000, 0x42000000, 0x68000000, 866 0x41000000, 0x99000000, 0x2d000000, 0x0f000000, 867 0xb0000000, 0x54000000, 0xbb000000, 0x16000000 868} 869}; 870 871static const u4byte il_tab[4][256] = { 872{ 873 0x00000052, 0x00000009, 0x0000006a, 0x000000d5, 874 0x00000030, 0x00000036, 0x000000a5, 0x00000038, 875 0x000000bf, 0x00000040, 0x000000a3, 0x0000009e, 876 0x00000081, 0x000000f3, 0x000000d7, 0x000000fb, 877 0x0000007c, 0x000000e3, 0x00000039, 0x00000082, 878 0x0000009b, 0x0000002f, 0x000000ff, 0x00000087, 879 0x00000034, 0x0000008e, 0x00000043, 0x00000044, 880 0x000000c4, 0x000000de, 0x000000e9, 0x000000cb, 881 0x00000054, 0x0000007b, 0x00000094, 0x00000032, 882 0x000000a6, 0x000000c2, 0x00000023, 0x0000003d, 883 0x000000ee, 0x0000004c, 0x00000095, 0x0000000b, 884 0x00000042, 0x000000fa, 0x000000c3, 0x0000004e, 885 0x00000008, 0x0000002e, 0x000000a1, 0x00000066, 886 0x00000028, 0x000000d9, 0x00000024, 0x000000b2, 887 0x00000076, 0x0000005b, 0x000000a2, 0x00000049, 888 0x0000006d, 0x0000008b, 0x000000d1, 0x00000025, 889 0x00000072, 0x000000f8, 0x000000f6, 0x00000064, 890 0x00000086, 0x00000068, 0x00000098, 0x00000016, 891 0x000000d4, 0x000000a4, 0x0000005c, 0x000000cc, 892 0x0000005d, 0x00000065, 0x000000b6, 0x00000092, 893 0x0000006c, 0x00000070, 0x00000048, 0x00000050, 894 0x000000fd, 0x000000ed, 0x000000b9, 0x000000da, 895 0x0000005e, 0x00000015, 0x00000046, 0x00000057, 896 0x000000a7, 0x0000008d, 0x0000009d, 0x00000084, 897 0x00000090, 0x000000d8, 0x000000ab, 0x00000000, 898 0x0000008c, 0x000000bc, 0x000000d3, 0x0000000a, 899 0x000000f7, 0x000000e4, 0x00000058, 0x00000005, 900 0x000000b8, 0x000000b3, 0x00000045, 0x00000006, 901 0x000000d0, 0x0000002c, 0x0000001e, 0x0000008f, 902 0x000000ca, 0x0000003f, 0x0000000f, 0x00000002, 903 0x000000c1, 0x000000af, 0x000000bd, 0x00000003, 904 0x00000001, 0x00000013, 0x0000008a, 0x0000006b, 905 0x0000003a, 0x00000091, 0x00000011, 0x00000041, 906 0x0000004f, 0x00000067, 0x000000dc, 0x000000ea, 907 0x00000097, 0x000000f2, 0x000000cf, 0x000000ce, 908 0x000000f0, 0x000000b4, 0x000000e6, 0x00000073, 909 0x00000096, 0x000000ac, 0x00000074, 0x00000022, 910 0x000000e7, 0x000000ad, 0x00000035, 0x00000085, 911 0x000000e2, 0x000000f9, 0x00000037, 0x000000e8, 912 0x0000001c, 0x00000075, 0x000000df, 0x0000006e, 913 0x00000047, 0x000000f1, 0x0000001a, 0x00000071, 914 0x0000001d, 0x00000029, 0x000000c5, 0x00000089, 915 0x0000006f, 0x000000b7, 0x00000062, 0x0000000e, 916 0x000000aa, 0x00000018, 0x000000be, 0x0000001b, 917 0x000000fc, 0x00000056, 0x0000003e, 0x0000004b, 918 0x000000c6, 0x000000d2, 0x00000079, 0x00000020, 919 0x0000009a, 0x000000db, 0x000000c0, 0x000000fe, 920 0x00000078, 0x000000cd, 0x0000005a, 0x000000f4, 921 0x0000001f, 0x000000dd, 0x000000a8, 0x00000033, 922 0x00000088, 0x00000007, 0x000000c7, 0x00000031, 923 0x000000b1, 0x00000012, 0x00000010, 0x00000059, 924 0x00000027, 0x00000080, 0x000000ec, 0x0000005f, 925 0x00000060, 0x00000051, 0x0000007f, 0x000000a9, 926 0x00000019, 0x000000b5, 0x0000004a, 0x0000000d, 927 0x0000002d, 0x000000e5, 0x0000007a, 0x0000009f, 928 0x00000093, 0x000000c9, 0x0000009c, 0x000000ef, 929 0x000000a0, 0x000000e0, 0x0000003b, 0x0000004d, 930 0x000000ae, 0x0000002a, 0x000000f5, 0x000000b0, 931 0x000000c8, 0x000000eb, 0x000000bb, 0x0000003c, 932 0x00000083, 0x00000053, 0x00000099, 0x00000061, 933 0x00000017, 0x0000002b, 0x00000004, 0x0000007e, 934 0x000000ba, 0x00000077, 0x000000d6, 0x00000026, 935 0x000000e1, 0x00000069, 0x00000014, 0x00000063, 936 0x00000055, 0x00000021, 0x0000000c, 0x0000007d 937}, { 938 0x00005200, 0x00000900, 0x00006a00, 0x0000d500, 939 0x00003000, 0x00003600, 0x0000a500, 0x00003800, 940 0x0000bf00, 0x00004000, 0x0000a300, 0x00009e00, 941 0x00008100, 0x0000f300, 0x0000d700, 0x0000fb00, 942 0x00007c00, 0x0000e300, 0x00003900, 0x00008200, 943 0x00009b00, 0x00002f00, 0x0000ff00, 0x00008700, 944 0x00003400, 0x00008e00, 0x00004300, 0x00004400, 945 0x0000c400, 0x0000de00, 0x0000e900, 0x0000cb00, 946 0x00005400, 0x00007b00, 0x00009400, 0x00003200, 947 0x0000a600, 0x0000c200, 0x00002300, 0x00003d00, 948 0x0000ee00, 0x00004c00, 0x00009500, 0x00000b00, 949 0x00004200, 0x0000fa00, 0x0000c300, 0x00004e00, 950 0x00000800, 0x00002e00, 0x0000a100, 0x00006600, 951 0x00002800, 0x0000d900, 0x00002400, 0x0000b200, 952 0x00007600, 0x00005b00, 0x0000a200, 0x00004900, 953 0x00006d00, 0x00008b00, 0x0000d100, 0x00002500, 954 0x00007200, 0x0000f800, 0x0000f600, 0x00006400, 955 0x00008600, 0x00006800, 0x00009800, 0x00001600, 956 0x0000d400, 0x0000a400, 0x00005c00, 0x0000cc00, 957 0x00005d00, 0x00006500, 0x0000b600, 0x00009200, 958 0x00006c00, 0x00007000, 0x00004800, 0x00005000, 959 0x0000fd00, 0x0000ed00, 0x0000b900, 0x0000da00, 960 0x00005e00, 0x00001500, 0x00004600, 0x00005700, 961 0x0000a700, 0x00008d00, 0x00009d00, 0x00008400, 962 0x00009000, 0x0000d800, 0x0000ab00, 0x00000000, 963 0x00008c00, 0x0000bc00, 0x0000d300, 0x00000a00, 964 0x0000f700, 0x0000e400, 0x00005800, 0x00000500, 965 0x0000b800, 0x0000b300, 0x00004500, 0x00000600, 966 0x0000d000, 0x00002c00, 0x00001e00, 0x00008f00, 967 0x0000ca00, 0x00003f00, 0x00000f00, 0x00000200, 968 0x0000c100, 0x0000af00, 0x0000bd00, 0x00000300, 969 0x00000100, 0x00001300, 0x00008a00, 0x00006b00, 970 0x00003a00, 0x00009100, 0x00001100, 0x00004100, 971 0x00004f00, 0x00006700, 0x0000dc00, 0x0000ea00, 972 0x00009700, 0x0000f200, 0x0000cf00, 0x0000ce00, 973 0x0000f000, 0x0000b400, 0x0000e600, 0x00007300, 974 0x00009600, 0x0000ac00, 0x00007400, 0x00002200, 975 0x0000e700, 0x0000ad00, 0x00003500, 0x00008500, 976 0x0000e200, 0x0000f900, 0x00003700, 0x0000e800, 977 0x00001c00, 0x00007500, 0x0000df00, 0x00006e00, 978 0x00004700, 0x0000f100, 0x00001a00, 0x00007100, 979 0x00001d00, 0x00002900, 0x0000c500, 0x00008900, 980 0x00006f00, 0x0000b700, 0x00006200, 0x00000e00, 981 0x0000aa00, 0x00001800, 0x0000be00, 0x00001b00, 982 0x0000fc00, 0x00005600, 0x00003e00, 0x00004b00, 983 0x0000c600, 0x0000d200, 0x00007900, 0x00002000, 984 0x00009a00, 0x0000db00, 0x0000c000, 0x0000fe00, 985 0x00007800, 0x0000cd00, 0x00005a00, 0x0000f400, 986 0x00001f00, 0x0000dd00, 0x0000a800, 0x00003300, 987 0x00008800, 0x00000700, 0x0000c700, 0x00003100, 988 0x0000b100, 0x00001200, 0x00001000, 0x00005900, 989 0x00002700, 0x00008000, 0x0000ec00, 0x00005f00, 990 0x00006000, 0x00005100, 0x00007f00, 0x0000a900, 991 0x00001900, 0x0000b500, 0x00004a00, 0x00000d00, 992 0x00002d00, 0x0000e500, 0x00007a00, 0x00009f00, 993 0x00009300, 0x0000c900, 0x00009c00, 0x0000ef00, 994 0x0000a000, 0x0000e000, 0x00003b00, 0x00004d00, 995 0x0000ae00, 0x00002a00, 0x0000f500, 0x0000b000, 996 0x0000c800, 0x0000eb00, 0x0000bb00, 0x00003c00, 997 0x00008300, 0x00005300, 0x00009900, 0x00006100, 998 0x00001700, 0x00002b00, 0x00000400, 0x00007e00, 999 0x0000ba00, 0x00007700, 0x0000d600, 0x00002600, 1000 0x0000e100, 0x00006900, 0x00001400, 0x00006300, 1001 0x00005500, 0x00002100, 0x00000c00, 0x00007d00 1002}, { 1003 0x00520000, 0x00090000, 0x006a0000, 0x00d50000, 1004 0x00300000, 0x00360000, 0x00a50000, 0x00380000, 1005 0x00bf0000, 0x00400000, 0x00a30000, 0x009e0000, 1006 0x00810000, 0x00f30000, 0x00d70000, 0x00fb0000, 1007 0x007c0000, 0x00e30000, 0x00390000, 0x00820000, 1008 0x009b0000, 0x002f0000, 0x00ff0000, 0x00870000, 1009 0x00340000, 0x008e0000, 0x00430000, 0x00440000, 1010 0x00c40000, 0x00de0000, 0x00e90000, 0x00cb0000, 1011 0x00540000, 0x007b0000, 0x00940000, 0x00320000, 1012 0x00a60000, 0x00c20000, 0x00230000, 0x003d0000, 1013 0x00ee0000, 0x004c0000, 0x00950000, 0x000b0000, 1014 0x00420000, 0x00fa0000, 0x00c30000, 0x004e0000, 1015 0x00080000, 0x002e0000, 0x00a10000, 0x00660000, 1016 0x00280000, 0x00d90000, 0x00240000, 0x00b20000, 1017 0x00760000, 0x005b0000, 0x00a20000, 0x00490000, 1018 0x006d0000, 0x008b0000, 0x00d10000, 0x00250000, 1019 0x00720000, 0x00f80000, 0x00f60000, 0x00640000, 1020 0x00860000, 0x00680000, 0x00980000, 0x00160000, 1021 0x00d40000, 0x00a40000, 0x005c0000, 0x00cc0000, 1022 0x005d0000, 0x00650000, 0x00b60000, 0x00920000, 1023 0x006c0000, 0x00700000, 0x00480000, 0x00500000, 1024 0x00fd0000, 0x00ed0000, 0x00b90000, 0x00da0000, 1025 0x005e0000, 0x00150000, 0x00460000, 0x00570000, 1026 0x00a70000, 0x008d0000, 0x009d0000, 0x00840000, 1027 0x00900000, 0x00d80000, 0x00ab0000, 0x00000000, 1028 0x008c0000, 0x00bc0000, 0x00d30000, 0x000a0000, 1029 0x00f70000, 0x00e40000, 0x00580000, 0x00050000, 1030 0x00b80000, 0x00b30000, 0x00450000, 0x00060000, 1031 0x00d00000, 0x002c0000, 0x001e0000, 0x008f0000, 1032 0x00ca0000, 0x003f0000, 0x000f0000, 0x00020000, 1033 0x00c10000, 0x00af0000, 0x00bd0000, 0x00030000, 1034 0x00010000, 0x00130000, 0x008a0000, 0x006b0000, 1035 0x003a0000, 0x00910000, 0x00110000, 0x00410000, 1036 0x004f0000, 0x00670000, 0x00dc0000, 0x00ea0000, 1037 0x00970000, 0x00f20000, 0x00cf0000, 0x00ce0000, 1038 0x00f00000, 0x00b40000, 0x00e60000, 0x00730000, 1039 0x00960000, 0x00ac0000, 0x00740000, 0x00220000, 1040 0x00e70000, 0x00ad0000, 0x00350000, 0x00850000, 1041 0x00e20000, 0x00f90000, 0x00370000, 0x00e80000, 1042 0x001c0000, 0x00750000, 0x00df0000, 0x006e0000, 1043 0x00470000, 0x00f10000, 0x001a0000, 0x00710000, 1044 0x001d0000, 0x00290000, 0x00c50000, 0x00890000, 1045 0x006f0000, 0x00b70000, 0x00620000, 0x000e0000, 1046 0x00aa0000, 0x00180000, 0x00be0000, 0x001b0000, 1047 0x00fc0000, 0x00560000, 0x003e0000, 0x004b0000, 1048 0x00c60000, 0x00d20000, 0x00790000, 0x00200000, 1049 0x009a0000, 0x00db0000, 0x00c00000, 0x00fe0000, 1050 0x00780000, 0x00cd0000, 0x005a0000, 0x00f40000, 1051 0x001f0000, 0x00dd0000, 0x00a80000, 0x00330000, 1052 0x00880000, 0x00070000, 0x00c70000, 0x00310000, 1053 0x00b10000, 0x00120000, 0x00100000, 0x00590000, 1054 0x00270000, 0x00800000, 0x00ec0000, 0x005f0000, 1055 0x00600000, 0x00510000, 0x007f0000, 0x00a90000, 1056 0x00190000, 0x00b50000, 0x004a0000, 0x000d0000, 1057 0x002d0000, 0x00e50000, 0x007a0000, 0x009f0000, 1058 0x00930000, 0x00c90000, 0x009c0000, 0x00ef0000, 1059 0x00a00000, 0x00e00000, 0x003b0000, 0x004d0000, 1060 0x00ae0000, 0x002a0000, 0x00f50000, 0x00b00000, 1061 0x00c80000, 0x00eb0000, 0x00bb0000, 0x003c0000, 1062 0x00830000, 0x00530000, 0x00990000, 0x00610000, 1063 0x00170000, 0x002b0000, 0x00040000, 0x007e0000, 1064 0x00ba0000, 0x00770000, 0x00d60000, 0x00260000, 1065 0x00e10000, 0x00690000, 0x00140000, 0x00630000, 1066 0x00550000, 0x00210000, 0x000c0000, 0x007d0000 1067}, { 1068 0x52000000, 0x09000000, 0x6a000000, 0xd5000000, 1069 0x30000000, 0x36000000, 0xa5000000, 0x38000000, 1070 0xbf000000, 0x40000000, 0xa3000000, 0x9e000000, 1071 0x81000000, 0xf3000000, 0xd7000000, 0xfb000000, 1072 0x7c000000, 0xe3000000, 0x39000000, 0x82000000, 1073 0x9b000000, 0x2f000000, 0xff000000, 0x87000000, 1074 0x34000000, 0x8e000000, 0x43000000, 0x44000000, 1075 0xc4000000, 0xde000000, 0xe9000000, 0xcb000000, 1076 0x54000000, 0x7b000000, 0x94000000, 0x32000000, 1077 0xa6000000, 0xc2000000, 0x23000000, 0x3d000000, 1078 0xee000000, 0x4c000000, 0x95000000, 0x0b000000, 1079 0x42000000, 0xfa000000, 0xc3000000, 0x4e000000, 1080 0x08000000, 0x2e000000, 0xa1000000, 0x66000000, 1081 0x28000000, 0xd9000000, 0x24000000, 0xb2000000, 1082 0x76000000, 0x5b000000, 0xa2000000, 0x49000000, 1083 0x6d000000, 0x8b000000, 0xd1000000, 0x25000000, 1084 0x72000000, 0xf8000000, 0xf6000000, 0x64000000, 1085 0x86000000, 0x68000000, 0x98000000, 0x16000000, 1086 0xd4000000, 0xa4000000, 0x5c000000, 0xcc000000, 1087 0x5d000000, 0x65000000, 0xb6000000, 0x92000000, 1088 0x6c000000, 0x70000000, 0x48000000, 0x50000000, 1089 0xfd000000, 0xed000000, 0xb9000000, 0xda000000, 1090 0x5e000000, 0x15000000, 0x46000000, 0x57000000, 1091 0xa7000000, 0x8d000000, 0x9d000000, 0x84000000, 1092 0x90000000, 0xd8000000, 0xab000000, 0x00000000, 1093 0x8c000000, 0xbc000000, 0xd3000000, 0x0a000000, 1094 0xf7000000, 0xe4000000, 0x58000000, 0x05000000, 1095 0xb8000000, 0xb3000000, 0x45000000, 0x06000000, 1096 0xd0000000, 0x2c000000, 0x1e000000, 0x8f000000, 1097 0xca000000, 0x3f000000, 0x0f000000, 0x02000000, 1098 0xc1000000, 0xaf000000, 0xbd000000, 0x03000000, 1099 0x01000000, 0x13000000, 0x8a000000, 0x6b000000, 1100 0x3a000000, 0x91000000, 0x11000000, 0x41000000, 1101 0x4f000000, 0x67000000, 0xdc000000, 0xea000000, 1102 0x97000000, 0xf2000000, 0xcf000000, 0xce000000, 1103 0xf0000000, 0xb4000000, 0xe6000000, 0x73000000, 1104 0x96000000, 0xac000000, 0x74000000, 0x22000000, 1105 0xe7000000, 0xad000000, 0x35000000, 0x85000000, 1106 0xe2000000, 0xf9000000, 0x37000000, 0xe8000000, 1107 0x1c000000, 0x75000000, 0xdf000000, 0x6e000000, 1108 0x47000000, 0xf1000000, 0x1a000000, 0x71000000, 1109 0x1d000000, 0x29000000, 0xc5000000, 0x89000000, 1110 0x6f000000, 0xb7000000, 0x62000000, 0x0e000000, 1111 0xaa000000, 0x18000000, 0xbe000000, 0x1b000000, 1112 0xfc000000, 0x56000000, 0x3e000000, 0x4b000000, 1113 0xc6000000, 0xd2000000, 0x79000000, 0x20000000, 1114 0x9a000000, 0xdb000000, 0xc0000000, 0xfe000000, 1115 0x78000000, 0xcd000000, 0x5a000000, 0xf4000000, 1116 0x1f000000, 0xdd000000, 0xa8000000, 0x33000000, 1117 0x88000000, 0x07000000, 0xc7000000, 0x31000000, 1118 0xb1000000, 0x12000000, 0x10000000, 0x59000000, 1119 0x27000000, 0x80000000, 0xec000000, 0x5f000000, 1120 0x60000000, 0x51000000, 0x7f000000, 0xa9000000, 1121 0x19000000, 0xb5000000, 0x4a000000, 0x0d000000, 1122 0x2d000000, 0xe5000000, 0x7a000000, 0x9f000000, 1123 0x93000000, 0xc9000000, 0x9c000000, 0xef000000, 1124 0xa0000000, 0xe0000000, 0x3b000000, 0x4d000000, 1125 0xae000000, 0x2a000000, 0xf5000000, 0xb0000000, 1126 0xc8000000, 0xeb000000, 0xbb000000, 0x3c000000, 1127 0x83000000, 0x53000000, 0x99000000, 0x61000000, 1128 0x17000000, 0x2b000000, 0x04000000, 0x7e000000, 1129 0xba000000, 0x77000000, 0xd6000000, 0x26000000, 1130 0xe1000000, 0x69000000, 0x14000000, 0x63000000, 1131 0x55000000, 0x21000000, 0x0c000000, 0x7d000000 1132} 1133}; 1134 1135static const u4byte rco_tab[10] = { 1136 0x00000001, 0x00000002, 0x00000004, 0x00000008, 0x00000010, 1137 0x00000020, 0x00000040, 0x00000080, 0x0000001b, 0x00000036 1138}; 1139