static const u32 aes_little_constants[522] = {
0x00000001,
0x00000002,
0x00000004,
0x00000008,
0x00000010,
0x00000020,
0x00000040,
0x00000080,
0x0000001b,
0x00000036,
0xc6a56300, 0xc6a56363,
0xf8847c00, 0xf8847c7c,
0xee997700, 0xee997777,
0xf68d7b00, 0xf68d7b7b,
0xff0df200, 0xff0df2f2,
0xd6bd6b00, 0xd6bd6b6b,
0xdeb16f00, 0xdeb16f6f,
0x9154c500, 0x9154c5c5,
0x60503000, 0x60503030,
0x02030100, 0x02030101,
0xcea96700, 0xcea96767,
0x567d2b00, 0x567d2b2b,
0xe719fe00, 0xe719fefe,
0xb562d700, 0xb562d7d7,
0x4de6ab00, 0x4de6abab,
0xec9a7600, 0xec9a7676,
0x8f45ca00, 0x8f45caca,
0x1f9d8200, 0x1f9d8282,
0x8940c900, 0x8940c9c9,
0xfa877d00, 0xfa877d7d,
0xef15fa00, 0xef15fafa,
0xb2eb5900, 0xb2eb5959,
0x8ec94700, 0x8ec94747,
0xfb0bf000, 0xfb0bf0f0,
0x41ecad00, 0x41ecadad,
0xb367d400, 0xb367d4d4,
0x5ffda200, 0x5ffda2a2,
0x45eaaf00, 0x45eaafaf,
0x23bf9c00, 0x23bf9c9c,
0x53f7a400, 0x53f7a4a4,
0xe4967200, 0xe4967272,
0x9b5bc000, 0x9b5bc0c0,
0x75c2b700, 0x75c2b7b7,
0xe11cfd00, 0xe11cfdfd,
0x3dae9300, 0x3dae9393,
0x4c6a2600, 0x4c6a2626,
0x6c5a3600, 0x6c5a3636,
0x7e413f00, 0x7e413f3f,
0xf502f700, 0xf502f7f7,
0x834fcc00, 0x834fcccc,
0x685c3400, 0x685c3434,
0x51f4a500, 0x51f4a5a5,
0xd134e500, 0xd134e5e5,
0xf908f100, 0xf908f1f1,
0xe2937100, 0xe2937171,
0xab73d800, 0xab73d8d8,
0x62533100, 0x62533131,
0x2a3f1500, 0x2a3f1515,
0x080c0400, 0x080c0404,
0x9552c700, 0x9552c7c7,
0x46652300, 0x46652323,
0x9d5ec300, 0x9d5ec3c3,
0x30281800, 0x30281818,
0x37a19600, 0x37a19696,
0x0a0f0500, 0x0a0f0505,
0x2fb59a00, 0x2fb59a9a,
0x0e090700, 0x0e090707,
0x24361200, 0x24361212,
0x1b9b8000, 0x1b9b8080,
0xdf3de200, 0xdf3de2e2,
0xcd26eb00, 0xcd26ebeb,
0x4e692700, 0x4e692727,
0x7fcdb200, 0x7fcdb2b2,
0xea9f7500, 0xea9f7575,
0x121b0900, 0x121b0909,
0x1d9e8300, 0x1d9e8383,
0x58742c00, 0x58742c2c,
0x342e1a00, 0x342e1a1a,
0x362d1b00, 0x362d1b1b,
0xdcb26e00, 0xdcb26e6e,
0xb4ee5a00, 0xb4ee5a5a,
0x5bfba000, 0x5bfba0a0,
0xa4f65200, 0xa4f65252,
0x764d3b00, 0x764d3b3b,
0xb761d600, 0xb761d6d6,
0x7dceb300, 0x7dceb3b3,
0x527b2900, 0x527b2929,
0xdd3ee300, 0xdd3ee3e3,
0x5e712f00, 0x5e712f2f,
0x13978400, 0x13978484,
0xa6f55300, 0xa6f55353,
0xb968d100, 0xb968d1d1,
0x00000000, 0x00000000,
0xc12ced00, 0xc12ceded,
0x40602000, 0x40602020,
0xe31ffc00, 0xe31ffcfc,
0x79c8b100, 0x79c8b1b1,
0xb6ed5b00, 0xb6ed5b5b,
0xd4be6a00, 0xd4be6a6a,
0x8d46cb00, 0x8d46cbcb,
0x67d9be00, 0x67d9bebe,
0x724b3900, 0x724b3939,
0x94de4a00, 0x94de4a4a,
0x98d44c00, 0x98d44c4c,
0xb0e85800, 0xb0e85858,
0x854acf00, 0x854acfcf,
0xbb6bd000, 0xbb6bd0d0,
0xc52aef00, 0xc52aefef,
0x4fe5aa00, 0x4fe5aaaa,
0xed16fb00, 0xed16fbfb,
0x86c54300, 0x86c54343,
0x9ad74d00, 0x9ad74d4d,
0x66553300, 0x66553333,
0x11948500, 0x11948585,
0x8acf4500, 0x8acf4545,
0xe910f900, 0xe910f9f9,
0x04060200, 0x04060202,
0xfe817f00, 0xfe817f7f,
0xa0f05000, 0xa0f05050,
0x78443c00, 0x78443c3c,
0x25ba9f00, 0x25ba9f9f,
0x4be3a800, 0x4be3a8a8,
0xa2f35100, 0xa2f35151,
0x5dfea300, 0x5dfea3a3,
0x80c04000, 0x80c04040,
0x058a8f00, 0x058a8f8f,
0x3fad9200, 0x3fad9292,
0x21bc9d00, 0x21bc9d9d,
0x70483800, 0x70483838,
0xf104f500, 0xf104f5f5,
0x63dfbc00, 0x63dfbcbc,
0x77c1b600, 0x77c1b6b6,
0xaf75da00, 0xaf75dada,
0x42632100, 0x42632121,
0x20301000, 0x20301010,
0xe51aff00, 0xe51affff,
0xfd0ef300, 0xfd0ef3f3,
0xbf6dd200, 0xbf6dd2d2,
0x814ccd00, 0x814ccdcd,
0x18140c00, 0x18140c0c,
0x26351300, 0x26351313,
0xc32fec00, 0xc32fecec,
0xbee15f00, 0xbee15f5f,
0x35a29700, 0x35a29797,
0x88cc4400, 0x88cc4444,
0x2e391700, 0x2e391717,
0x9357c400, 0x9357c4c4,
0x55f2a700, 0x55f2a7a7,
0xfc827e00, 0xfc827e7e,
0x7a473d00, 0x7a473d3d,
0xc8ac6400, 0xc8ac6464,
0xbae75d00, 0xbae75d5d,
0x322b1900, 0x322b1919,
0xe6957300, 0xe6957373,
0xc0a06000, 0xc0a06060,
0x19988100, 0x19988181,
0x9ed14f00, 0x9ed14f4f,
0xa37fdc00, 0xa37fdcdc,
0x44662200, 0x44662222,
0x547e2a00, 0x547e2a2a,
0x3bab9000, 0x3bab9090,
0x0b838800, 0x0b838888,
0x8cca4600, 0x8cca4646,
0xc729ee00, 0xc729eeee,
0x6bd3b800, 0x6bd3b8b8,
0x283c1400, 0x283c1414,
0xa779de00, 0xa779dede,
0xbce25e00, 0xbce25e5e,
0x161d0b00, 0x161d0b0b,
0xad76db00, 0xad76dbdb,
0xdb3be000, 0xdb3be0e0,
0x64563200, 0x64563232,
0x744e3a00, 0x744e3a3a,
0x141e0a00, 0x141e0a0a,
0x92db4900, 0x92db4949,
0x0c0a0600, 0x0c0a0606,
0x486c2400, 0x486c2424,
0xb8e45c00, 0xb8e45c5c,
0x9f5dc200, 0x9f5dc2c2,
0xbd6ed300, 0xbd6ed3d3,
0x43efac00, 0x43efacac,
0xc4a66200, 0xc4a66262,
0x39a89100, 0x39a89191,
0x31a49500, 0x31a49595,
0xd337e400, 0xd337e4e4,
0xf28b7900, 0xf28b7979,
0xd532e700, 0xd532e7e7,
0x8b43c800, 0x8b43c8c8,
0x6e593700, 0x6e593737,
0xdab76d00, 0xdab76d6d,
0x018c8d00, 0x018c8d8d,
0xb164d500, 0xb164d5d5,
0x9cd24e00, 0x9cd24e4e,
0x49e0a900, 0x49e0a9a9,
0xd8b46c00, 0xd8b46c6c,
0xacfa5600, 0xacfa5656,
0xf307f400, 0xf307f4f4,
0xcf25ea00, 0xcf25eaea,
0xcaaf6500, 0xcaaf6565,
0xf48e7a00, 0xf48e7a7a,
0x47e9ae00, 0x47e9aeae,
0x10180800, 0x10180808,
0x6fd5ba00, 0x6fd5baba,
0xf0887800, 0xf0887878,
0x4a6f2500, 0x4a6f2525,
0x5c722e00, 0x5c722e2e,
0x38241c00, 0x38241c1c,
0x57f1a600, 0x57f1a6a6,
0x73c7b400, 0x73c7b4b4,
0x9751c600, 0x9751c6c6,
0xcb23e800, 0xcb23e8e8,
0xa17cdd00, 0xa17cdddd,
0xe89c7400, 0xe89c7474,
0x3e211f00, 0x3e211f1f,
0x96dd4b00, 0x96dd4b4b,
0x61dcbd00, 0x61dcbdbd,
0x0d868b00, 0x0d868b8b,
0x0f858a00, 0x0f858a8a,
0xe0907000, 0xe0907070,
0x7c423e00, 0x7c423e3e,
0x71c4b500, 0x71c4b5b5,
0xccaa6600, 0xccaa6666,
0x90d84800, 0x90d84848,
0x06050300, 0x06050303,
0xf701f600, 0xf701f6f6,
0x1c120e00, 0x1c120e0e,
0xc2a36100, 0xc2a36161,
0x6a5f3500, 0x6a5f3535,
0xaef95700, 0xaef95757,
0x69d0b900, 0x69d0b9b9,
0x17918600, 0x17918686,
0x9958c100, 0x9958c1c1,
0x3a271d00, 0x3a271d1d,
0x27b99e00, 0x27b99e9e,
0xd938e100, 0xd938e1e1,
0xeb13f800, 0xeb13f8f8,
0x2bb39800, 0x2bb39898,
0x22331100, 0x22331111,
0xd2bb6900, 0xd2bb6969,
0xa970d900, 0xa970d9d9,
0x07898e00, 0x07898e8e,
0x33a79400, 0x33a79494,
0x2db69b00, 0x2db69b9b,
0x3c221e00, 0x3c221e1e,
0x15928700, 0x15928787,
0xc920e900, 0xc920e9e9,
0x8749ce00, 0x8749cece,
0xaaff5500, 0xaaff5555,
0x50782800, 0x50782828,
0xa57adf00, 0xa57adfdf,
0x038f8c00, 0x038f8c8c,
0x59f8a100, 0x59f8a1a1,
0x09808900, 0x09808989,
0x1a170d00, 0x1a170d0d,
0x65dabf00, 0x65dabfbf,
0xd731e600, 0xd731e6e6,
0x84c64200, 0x84c64242,
0xd0b86800, 0xd0b86868,
0x82c34100, 0x82c34141,
0x29b09900, 0x29b09999,
0x5a772d00, 0x5a772d2d,
0x1e110f00, 0x1e110f0f,
0x7bcbb000, 0x7bcbb0b0,
0xa8fc5400, 0xa8fc5454,
0x6dd6bb00, 0x6dd6bbbb,
0x2c3a1600, 0x2c3a1616,
} ;
#define table0 (3 + (char *) &aes_little_constants[10])
#define table1 (2 + (char *) &aes_little_constants[10])
#define table2 (1 + (char *) &aes_little_constants[10])
#define table3 (4 + (char *) &aes_little_constants[10])
#define tablex (0 + (char *) &aes_little_constants[10])