-
Notifications
You must be signed in to change notification settings - Fork 0
/
tables.c
176 lines (169 loc) · 13.6 KB
/
tables.c
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
/*
*
* University of Luxembourg
* Laboratory of Algorithmics, Cryptology and Security (LACS)
*
* FELICS - Fair Evaluation of Lightweight Cryptographic Systems
*
* Copyright (C) 2015 University of Luxembourg
*
* Written in 2015 by Dmitry Khovratovich <dmitry.khovratovich@uni.lu>
*
* This file is part of FELICS.
*
* FELICS is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* FELICS is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, see <http://www.gnu.org/licenses/>.
*
*/
#include <stdint.h>
#include "constants.h"
uint32_t T0_F0[256] =
{
0xef41ae57, 0xab399249, 0xdc63bfd1, 0xae3f91c6, 0xe2bc5e2f, 0xaacc6633, 0x25cde874, 0x20cbebfb,
0x596e3795, 0x73a9da6d, 0x2b321982, 0x468fc9ea, 0x24381c0e, 0x87fa7db0, 0xd79a4da8, 0x4870381c,
0xf0a05028, 0xda67bdd0, 0xa731964b, 0x4b723992, 0xd56db85c, 0x5e9fc1ee, 0x392e1785, 0x81fe7fb1,
0xa23795c4, 0x3c28140a, 0x29c5ec76, 0x8ef47a3d, 0x5791c663, 0x2cc3eff9, 0x725c2e17, 0xc58643af,
0xa5c663bf, 0xe1be5fa1, 0x56643219, 0x4389ca65, 0x8fbf3f7, 0x1f5f47a, 0xacc86432, 0xc0804020,
0x14180c06, 0x9e1f81ce, 0x62b7d5e4, 0x2d361b83, 0x694e279d, 0xc771b65b, 0xb52d984c, 0xea47add8,
0x91158442, 0xd369ba5d, 0xe4b85c2e, 0x4a87cde8, 0xc277b5d4, 0x7d562b9b, 0x223c1e0f, 0x6a4c2613,
0x88f0783c, 0x111e0f89, 0x4f81ce67, 0xba279dc0, 0x3bd9e271, 0xdb9249aa, 0x93e271b6, 0x4f3f7f5,
0xffaa55a4, 0xa3c261be, 0x34d3e7fd, 0xf0a058c, 0x6c482412, 0x0, 0x55663397, 0xe64fa9da,
0xdfdf078, 0x7ca3dfe1, 0x981b83cf, 0x67b1d66b, 0x96e47239, 0x97118643, 0xe349aa55, 0xd4984c26,
0xa0c06030, 0x775a2d98, 0x921785cc, 0xf453a7dd, 0x408bcbeb, 0xe54da854, 0x8df67bb3, 0x506038f,
0xb9259c4e, 0x74582c16, 0x26cfe9fa, 0xcc884422, 0xf9ae57a5, 0x2fc1ee77, 0x36241209, 0x5b99c261,
0xce7fb1d6, 0xfca8542a, 0xf751a653, 0xb2dc6e37, 0x83098a45, 0xbc239fc1, 0x75add86c, 0xc38241ae,
0x589bc3ef, 0x3ddde070, 0x30201008, 0x715e2f99, 0x1d160b8b, 0x4e743a1d, 0x16eff9f2, 0x9fea75b4,
0x4c83cfe9, 0xa83b93c7, 0x6546239f, 0xa135944a, 0xa6c46231, 0xde944a25, 0x3edfe1fe, 0x15edf87c,
0xd06bbbd3, 0xebb259a2, 0xa9ce67bd, 0xe945ac56, 0x78502814, 0x171a0d88, 0x5d9dc060, 0x3a2c160b,
0x941387cd, 0x76afd9e2, 0xb8d06834, 0xfd5da050, 0x6342219e, 0xf257a5dc, 0x66442211, 0x1e140a05,
0xfaac562b, 0x95e673b7, 0xd19e4fa9, 0xad3d9048, 0x38dbe3ff, 0x4985cc66, 0x1b12098a, 0x37d1e673,
0xa0c0603, 0x23c9ea75, 0x33221186, 0x1ce3fff1, 0x61b5d46a, 0xf5a653a7, 0x9d1d8040, 0xb62f99c2,
0xb1de6fb9, 0xe8b0582c, 0xe04babdb, 0x427c3e1f, 0xcd7db058, 0x5f6a3594, 0x84f87c3e, 0x5493c7ed,
0x32d7e5fc, 0x5a6c361b, 0xe7ba5da0, 0x18100804, 0xb7da6db8, 0x90e078d, 0x6ebfd1e6, 0xcb79b259,
0x5195c462, 0x4d763b93, 0xbed46a35, 0x19e5fc7e, 0x860f89ca, 0xc6844221, 0xf85ba3df, 0x8f018e47,
0x7e542a15, 0x10ebfbf3, 0xbbd269ba, 0x1fe1fe7f, 0xf3a251a6, 0x6bb9d269, 0x8a078dc8, 0xb3299a4d,
0x35261387, 0x9aec763b, 0x6f4a259c, 0x6040201, 0x7aa7dde0, 0xfe5fa1de, 0xd8904824, 0xf155a452,
0x7f1f67b, 0x2830180c, 0x6dbdd068, 0x44783c1e, 0x273a1d80, 0x8bf279b2, 0xc175b45a, 0x68bbd3e7,
0xc98e47ad, 0xc473b7d5, 0xca8c4623, 0x2f7f5f4, 0x89058c46, 0x82fc7e3f, 0x417e3f91, 0x8c038fc9,
0x79a5dc6e, 0x3f2a1584, 0x31d5e472, 0xbdd66bbb, 0x2e341a0d, 0x50603018, 0xec43afd9, 0x53623196,
0x1ae7fdf0, 0xdf61be5f, 0x9b198241, 0xcf8a45ac, 0xd29c4e27, 0xa43397c5, 0x70abdbe3, 0x9ce8743a,
0x213e1f81, 0x7fa1de6f, 0x121c0e07, 0xedb65ba3, 0xbf9f279, 0xefff1f6, 0xeeb45a2d, 0x90e07038,
0x5c68341a, 0x850d8844, 0xd965bc5e, 0x99ee77b5, 0xd66fb9d2, 0x5297c5ec, 0x800b8bcb, 0x477a3d90,
0x7b52299a, 0xb4d86c36, 0x64b3d7e5, 0xf6a45229, 0xb02b9bc3, 0xbf219e4f, 0xdd964bab, 0x458dc864,
0xfb59a251, 0x2ac7edf8, 0x60402010, 0xc87bb3d7, 0xafca65bc, 0xc080402, 0x13e9fa7d, 0x302018e
};
uint32_t T1_F0[256] =
{
0xad756cd8, 0x4fe6daa9, 0x2bb0c39b, 0x834ce9cf, 0x25b94e9c, 0x4e699d27, 0x283c0a14, 0xf48e3d7a,
0xdab7b86d, 0xd8b4366c, 0xea9fb475, 0xe0903870, 0x4c6a1326, 0xd0b83468, 0x30280c18, 0x43ecd9af,
0xc6a5bf63, 0xcd2574e8, 0x6a5f9435, 0x6058f03, 0xe695b773, 0x4a6f9c25, 0xb364e5d7, 0x57f2dca5,
0x42639e21, 0x1c12070e, 0x39ab4992, 0x21bf4f9e, 0x5a77982d, 0xb0e82c58, 0xfa87b07d, 0x764d933b,
0x486c1224, 0x8b40ebcb, 0x1394cd87, 0xf68db37b, 0x724b9239, 0xbb68e7d3, 0x199b4182, 0x9d5d60c0,
0xab70e3db, 0x84c62142, 0x9cd2274e, 0xec9a3b76, 0xbf6ee6d1, 0x64561932, 0x6fd6d2b9, 0x38240e1c,
0x7e41913f, 0x44661122, 0x3ba8c793, 0xfc823f7e, 0xa8fc2a54, 0x2038e01, 0xbee1a15f, 0xcaafbc65,
0xacfa2b56, 0x78ac88d, 0x33a4c597, 0x3c220f1e, 0x71c75bb6, 0xeb10f3fb, 0x26358713, 0x161d8b0b,
0xcb20fbeb, 0xf304f5f7, 0x5ffedea1, 0x80c02040, 0x3faec691, 0xa6f5a753, 0x2a3f8415, 0x1f9ece81,
0x47ead8ad, 0x894365ca, 0x59fb51a2, 0x38cc98f, 0xaaffa455, 0x9b58efc3, 0x11974386, 0x51f753a6,
0x94de254a, 0x69d35dba, 0x567d9b2b, 0xc4a63162, 0x874ae8cd, 0xf8843e7c, 0x342e0d1a, 0x7bc8d7b3,
0x3a27801d, 0xdb38ffe3, 0xb96b69d2, 0x121b8a09, 0xd2bbba69, 0x2c3a0b16, 0xd13773e6, 0x6dd55cb8,
0xa5796edc, 0x4de554a8, 0x547e152a, 0x955162c4, 0xff0ef6f1, 0xd4be356a, 0xc0a03060, 0x55f152a4,
0xb6eda35b, 0x5874162c, 0x6bd0d3bb, 0xa0f02850, 0xc8ac3264, 0xcf26fae9, 0x92dbaa49, 0x65d95ebc,
0x1b98cf83, 0x8f46eac9, 0x9354edc7, 0xfd0d78f0, 0xccaa3366, 0x7dcd58b0, 0x24360912, 0xf1077bf6,
0x915763c6, 0x27bac09d, 0x23bcc19f, 0x589468c, 0x78441e3c, 0x5bf8dfa3, 0x9ed1a94f, 0x5e71992f,
0x49e355aa, 0x10180408, 0x37a2c495, 0x22338611, 0xe4963972, 0xc12f77ee, 0x322b8219, 0x9752ecc5,
0x1d9d4080, 0x60501830, 0x7a47903d, 0x66559733, 0x79cb59b2, 0x53f4dda7, 0x362d831b, 0x7c421f3e,
0x527b9a29, 0xdcb2376e, 0x1814060c, 0x90d82448, 0x8d4564c8, 0xed157cf8, 0xaef9a557, 0x45e956ac,
0x3dad4890, 0x20300810, 0x2e398517, 0x67dad0bd, 0x995b61c2, 0x98d4264c, 0xf86ca89, 0xa17f6fde,
0xe5197efc, 0xb5616ad4, 0xe293b671, 0xd93b71e2, 0xbae7a05d, 0xdd3d70e0, 0x141e050a, 0x63dcd1bf,
0x983458a, 0xa0f8c05, 0x8cca2346, 0x70481c38, 0xe71af0fd, 0x9f5eeec1, 0x1e11890f, 0x8ec9ad47,
0xf5017af4, 0x31a74b96, 0x2fb6c299, 0xbce22f5e, 0x4be0dbab, 0x75c15ab4, 0x29b34d9a, 0xc52976ec,
0x814f67ce, 0x5c72172e, 0xb4ee2d5a, 0xf702f4f5, 0xb80cb8b, 0xfe81b17f, 0x35a14a94, 0x9ad7a84d,
0xee99b577, 0x88cc2244, 0x18f478e, 0xe89c3a74, 0x73c4d5b7, 0x40601020, 0x2db54c98, 0xd53172e4,
0x1792cc85, 0x0, 0xc32cf9ef, 0xa77ae0dd, 0xd334fde7, 0xaf76e2d9, 0xdf3efee1, 0x82c3ae41,
0xc72af8ed, 0x61df5fbe, 0x96ddab4b, 0xe31cf1ff, 0x6c5a1b36, 0x15914284, 0x3e21811f, 0x7fced6b1,
0xc2a3be61, 0xd854488, 0xa4f62952, 0xa2f3a651, 0x41ef57ae, 0xdeb1b96f, 0x86c5af43, 0xef16f2f9,
0x77c2d4b5, 0xc92375ea, 0x854966cc, 0xd6bdbb6b, 0xbd6d68d0, 0x46659f23, 0x5dfd50a0, 0x80c0204,
0x4060102, 0xf0883c78, 0xe11f7ffe, 0xe098d07, 0x685c1a34, 0x1a17880d, 0xcea9bd67, 0x8acfac45,
0xfb08f7f3, 0xb762e4d5, 0xf90b79f2, 0x62539631, 0xb2eba259, 0xd732fce5, 0xa9736dda, 0xf28bb279,
0xb1676bd6, 0xc0a0306, 0xa37ce1df, 0xb8e42e5c, 0xe9137dfa, 0x50781428, 0x6e599537, 0x744e1d3a
};
uint32_t T0_F1[256] =
{
0x9fd8476c, 0x37a99eda, 0xcd9b56c3, 0xd4cf1be9, 0xd69c4a4e, 0xbb279c9d, 0x4414500a, 0x8f7af53d,
0xc46da9b8, 0xc16cad36, 0xbc75c9b4, 0xad70dd38, 0xbe269813, 0xd568bd34, 0x7818600c, 0x29af86d9,
0xf26391bf, 0x6fe88774, 0xe135d494, 0xf030c8f, 0xa273d1b7, 0xb125949c, 0xacd77be5, 0xba5aedc,
0xa521849e, 0x360e3807, 0xe0927249, 0xdc9e424f, 0x992db498, 0x25587d2c, 0x947de9b0, 0xd73bec93,
0xb4249012, 0xc0cb0beb, 0xa18726cd, 0x8a7bf1b3, 0xdd39e492, 0xb8d36be7, 0xb0823241, 0xe7c02760,
0x90db4be3, 0x57421521, 0x6b4e2527, 0xb376c53b, 0xb2d163e6, 0xfa32c819, 0x67b9ded2, 0x6c1c700e,
0xc33ffc91, 0xaa228811, 0xe59376c7, 0x9b7ee53f, 0x19544d2a, 0x501048e, 0x3e5f61a1, 0xec6589bc,
0x1356452b, 0x838d0ec8, 0xf19766c5, 0x661e780f, 0x54b6e25b, 0x30fbcbf3, 0x5f134c87, 0x270b2c8b,
0x60eb8bfb, 0xcf7fbf5, 0x1fa1bede, 0x5d401d20, 0xef917ec6, 0x25351a7, 0x41155484, 0xbf813ece,
0x23ad8ed8, 0xc5ca0f65, 0x10a2b251, 0x898f06c9, 0x1c5549a4, 0xe8c32bef, 0xa4862243, 0x4a6a253,
0x7f4a3525, 0x68bad25d, 0x872bac9b, 0xf7629531, 0xdecd13e8, 0x917ced3e, 0x721a680d, 0x45b3f6d7,
0x691d7480, 0x48e3abff, 0xbdd26f69, 0x2d09248a, 0xd069b9ba, 0x4e16580b, 0x59e6bf73, 0x62b8da5c,
0x8bdc576e, 0x32a89a54, 0x822aa815, 0xf3c43762, 0x12f1e3f6, 0xdf6ab535, 0xfd609d30, 0xea4aa52,
0x2a5b71a3, 0x9c2cb016, 0x6dbbd6d3, 0xd505d28, 0xe9648d32, 0x6ae983fa, 0x704939aa, 0x76bcca5e,
0xb58336cf, 0xcac903ea, 0xfcc73bed, 0x17f0e778, 0xe3668533, 0x4ab0fa58, 0x5a124809, 0x9f6ff7b,
0xf9c63f63, 0xd39d4ec0, 0xd99f46c1, 0x868c0a46, 0xcc3cf01e, 0x15a3b6df, 0x6e4f21a9, 0x932fbc99,
0x38aa9255, 0x28082004, 0xfb956ec4, 0x55114486, 0xa772d539, 0x71ee9f77, 0x7d196482, 0xf6c533ec,
0xba803a40, 0xf030c018, 0xc93df490, 0xff33cc97, 0x40b2f259, 0x1a7a6dd, 0x771b6c83, 0xc63ef81f,
0x8d29a49a, 0xcb6ea537, 0x3c0c3006, 0x75483d24, 0xcfc80764, 0x3ff8c77c, 0x165741a5, 0x26ac8a56,
0xea907a48, 0x50104008, 0x4b175c85, 0x73bdced0, 0xedc22f61, 0x614c2d26, 0x97891eca, 0x81de5f6f,
0x2bfcd77e, 0xa3d4776a, 0xa871d9b6, 0x4de2af71, 0x345d69a0, 0x47e0a770, 0x220a2805, 0x79bfc6d1,
0x988a1245, 0x1105148c, 0x43460523, 0xd838e01c, 0x2efdd3f0, 0xe2c123ee, 0x330f3c89, 0x464701ad,
0x3f4f77a, 0xf496624b, 0xc7995ec2, 0x3b5e652f, 0x3dab96db, 0x5eb4ea5a, 0xc89a524d, 0x7bec9776,
0xd1ce1f67, 0x962eb817, 0x2f5a752d, 0x6f5f3f4, 0x9d8b16cb, 0x9e7fe1b1, 0xfe946a4a, 0x644d29a8,
0xb677c1b5, 0x49440d22, 0x8c8e0247, 0xb974cd3a, 0x51b7e6d5, 0xa0208010, 0xc2985a4c, 0x53e4b772,
0xab852ecc, 0x0, 0x74ef9bf9, 0x8edd53e0, 0x5ce7bbfd, 0x9ad943e2, 0x42e1a3fe, 0x584119ae,
0x7eed93f8, 0x7cbec25f, 0x7a4b31ab, 0x24ffdbf1, 0xee36d81b, 0xae842a42, 0x631f7c81, 0x4fb1fed6,
0xf86199be, 0x92881a44, 0x7525529, 0x85159a6, 0x2cae8257, 0xce6fa1b9, 0x524311af, 0x3af9c3f2,
0x5bb5eed4, 0x65ea8f75, 0xdbcc1766, 0xda6bb1bb, 0xb7d06768, 0xaf238c9f, 0x1aa0ba50, 0x14041002,
0xa020801, 0x8578fd3c, 0x21fedf7f, 0x1b071c8d, 0xe434d01a, 0x390d3488, 0xe66781bd, 0x4c4509ac,
0x18f3ebf7, 0xa6d573e4, 0x1df2ef79, 0xf531c496, 0x205979a2, 0x56e5b3fc, 0x95da4f6d, 0x8079f9b2,
0xa9d67f6b, 0x1e061803, 0x84df5be1, 0x315c6d2e, 0x35facf7d, 0x8828a014, 0xeb37dc95, 0xd23ae81d
};
uint32_t T1_F1[256] =
{
0xae2c5782, 0x92e04972, 0xbf79d1c6, 0x91efc67e, 0x5e3b2f65, 0x66e33385, 0xe86f7487, 0xeb60fb8b,
0x37eb95dc, 0xda956d4f, 0x197d8264, 0xc9caea03, 0x1c6c0e70, 0x7d94b0e9, 0x4d64a829, 0x38d81ce0,
0x500d285d, 0xbd73d0ce, 0x96f44b62, 0x39dd92e4, 0xb8625cda, 0xc1e2ee23, 0x174b855c, 0x7f9eb1e1,
0x95fbc46e, 0x14440a50, 0xec7b7697, 0x7a8f3df5, 0xc6f9633f, 0xef74f99b, 0x2e9617b8, 0x4352af11,
0x63f2bf91, 0x5f3ea161, 0x32fa19c8, 0xcac5650f, 0xf318f7eb, 0xf4037af7, 0x64e9328d, 0x405d201d,
0xc3c0630, 0x81bfce3e, 0xd5a6e473, 0x1b77836c, 0x27bb9d9c, 0xb6545be2, 0x98c24c5a, 0xad23d88e,
0x84ae422a, 0xba685dd2, 0x5c312e6d, 0xcddee813, 0xb55bd4ee, 0x2b879bac, 0x1e660f78, 0x26be1398,
0x78853cfd, 0xf33893c, 0xced1671f, 0x9dd3c04e, 0xe24d71af, 0x4970aa39, 0x71a8b6d9, 0xf70cf5fb,
0x551ca449, 0x61f8be99, 0xe75cfdbb, 0x5118c14, 0x24b41290, 0x0, 0x33ff97cc, 0xa937da9e,
0xf01778e7, 0xdf84e15b, 0x83b5cf36, 0xd6a96b7f, 0x72a739d5, 0x86a44322, 0xaa385592, 0x4c61262d,
0x60fd309d, 0x2d9998b4, 0x85abcc2e, 0xa701dda6, 0xcbc0eb0b, 0xa832549a, 0x7b8ab3f1, 0x30f8f0c,
0x9cd64e4a, 0x2c9c16b0, 0xe96afa83, 0x4449220d, 0x5716a541, 0xee71779f, 0x125a0948, 0xc2ed612f,
0xb14fd6fe, 0x54192a4d, 0xa60453a2, 0x6ecb37a5, 0x8a984512, 0x9fd9c146, 0xd89f6c47, 0x4158ae19,
0xc3e8ef2b, 0xe04770a7, 0x10500840, 0x2f9399bc, 0xb278b2c, 0x3ad21de8, 0xf93af2c3, 0x75bcb4c9,
0xcfd4e91b, 0x93e5c776, 0x23af9f8c, 0x94fe4a6a, 0x62f73195, 0x4a7f2535, 0xe142fea3, 0xf83f7cc7,
0xbb6dd3d6, 0x5920a279, 0x67e6bd81, 0xac26568a, 0x288814a0, 0xd398834, 0xc0e76027, 0x164e0b58,
0x87a1cd26, 0xd99ae243, 0x68d534bd, 0xa01a50ba, 0x21a59e84, 0xa50bdcae, 0x22aa1188, 0xa220528,
0x56132b45, 0x73a2b7d1, 0x4f6ea921, 0x90ea487a, 0xe348ffab, 0xccdb6617, 0x92d8a24, 0xe65973bf,
0x61e0318, 0xea65758f, 0x11558644, 0xff24f1db, 0xd4a36a77, 0x5302a751, 0x80ba403a, 0x99c7c25e,
0x6fceb9a1, 0x58252c7d, 0xab3ddb96, 0x3ec61ff8, 0xb04a58fa, 0x35e194d4, 0x7c913eed, 0xc7fced3b,
0xe556fcb3, 0x36ee1bd8, 0x5d34a069, 0x8280420, 0x6dc4b8a9, 0x71b8d1c, 0xd1b2e663, 0xb24059f2,
0xc4f36237, 0x3bd793ec, 0x6adf35b5, 0xfc2b7ed7, 0x8997ca1e, 0x42572115, 0xa315dfb6, 0x8e8c4702,
0x2a8215a8, 0xfb30f3cb, 0x69d0bab9, 0xfe217fdf, 0x5108a659, 0xd2bd696f, 0x8d83c80e, 0x9ac84d52,
0x135f874c, 0x76b33bc5, 0x25b19c94, 0x20a0108, 0xdd8ee053, 0xa11fdebe, 0x4875243d, 0xa40e52aa,
0xf6097bff, 0x18780c60, 0xd0b76867, 0x3ccc1ef0, 0x1d698074, 0x7980b2f9, 0xb45e5aea, 0xd3b8e76b,
0x4746ad01, 0xb751d5e6, 0x46432305, 0xf506f4f3, 0x8c86460a, 0x7e9b3fe5, 0x3fc391fc, 0x8f89c906,
0xdc8b6e57, 0x15418454, 0xe45372b7, 0x6bdabbb1, 0x1a720d68, 0x30f018c0, 0xaf29d986, 0x31f596c4,
0xfd2ef0d3, 0xbe7c5fc2, 0x82b04132, 0x454cac09, 0x4e6b2725, 0x97f1c566, 0xdb90e34b, 0x74b93acd,
0x1f63817c, 0xde816f5f, 0xe360738, 0x5b2aa371, 0xf21d79ef, 0xf112f6e3, 0x5a2f2d75, 0x70ad38dd,
0x34e41ad0, 0x8892441a, 0xbc765eca, 0x77b6b5c1, 0xb967d2de, 0xc5f6ec33, 0x8b9dcb16, 0x3dc990f4,
0x298d9aa4, 0x6cc136ad, 0xd7ace57b, 0x52072955, 0x9bcdc356, 0x9edc4f42, 0x4b7aab31, 0xc8cf6407,
0xa21051b2, 0xed7ef893, 0x20a01080, 0xb345d7f6, 0x65ecbc89, 0x4140210, 0xfa357dcf, 0x1058e04
};