initial check-in, version 0.5.0
[musl] / src / misc / crypt.c
1 /*
2  * FreeSec: libcrypt for NetBSD
3  *
4  * Copyright (c) 1994 David Burren
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  * 1. Redistributions of source code must retain the above copyright
11  *    notice, this list of conditions and the following disclaimer.
12  * 2. Redistributions in binary form must reproduce the above copyright
13  *    notice, this list of conditions and the following disclaimer in the
14  *    documentation and/or other materials provided with the distribution.
15  * 3. Neither the name of the author nor the names of other contributors
16  *    may be used to endorse or promote products derived from this software
17  *    without specific prior written permission.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
20  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
23  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29  * SUCH DAMAGE.
30  *
31  * This is an original implementation of the DES and the crypt(3) interfaces
32  * by David Burren <davidb@werj.com.au>.
33  *
34  * An excellent reference on the underlying algorithm (and related
35  * algorithms) is:
36  *
37  *      B. Schneier, Applied Cryptography: protocols, algorithms,
38  *      and source code in C, John Wiley & Sons, 1994.
39  *
40  * Note that in that book's description of DES the lookups for the initial,
41  * pbox, and final permutations are inverted (this has been brought to the
42  * attention of the author).  A list of errata for this book has been
43  * posted to the sci.crypt newsgroup by the author and is available for FTP.
44  *
45  * ARCHITECTURE ASSUMPTIONS:
46  *      It is assumed that the 8-byte arrays passed by reference can be
47  *      addressed as arrays of uint32_t's (ie. the CPU is not picky about
48  *      alignment).
49  */
50
51 #include <stdint.h>
52 #include "libc.h"
53
54 static int i64c(int i)
55 {
56         i &= 0x3f;
57         if (i == 0)
58                 return '.';
59         if (i == 1)
60                 return '/';
61         if (i < 12)
62                 return ('0' - 2 + i);
63         if (i < 38)
64                 return ('A' - 12 + i);
65         return ('a' - 38 + i);
66 }
67
68 /* Generated by const_des_init() (removed) */
69
70 static const uint8_t final_perm[64] = {
71         0x39, 0x31, 0x29, 0x21, 0x19, 0x11, 0x09, 0x01, 0x3b, 0x33, 0x2b, 0x23, 0x1b, 0x13, 0x0b, 0x03,
72         0x3d, 0x35, 0x2d, 0x25, 0x1d, 0x15, 0x0d, 0x05, 0x3f, 0x37, 0x2f, 0x27, 0x1f, 0x17, 0x0f, 0x07,
73         0x38, 0x30, 0x28, 0x20, 0x18, 0x10, 0x08, 0x00, 0x3a, 0x32, 0x2a, 0x22, 0x1a, 0x12, 0x0a, 0x02,
74         0x3c, 0x34, 0x2c, 0x24, 0x1c, 0x14, 0x0c, 0x04, 0x3e, 0x36, 0x2e, 0x26, 0x1e, 0x16, 0x0e, 0x06,
75 };
76 static const uint8_t m_sbox[4][4096] = {
77         {
78                 0xef, 0xe3, 0xe1, 0xed, 0xe8, 0xe4, 0xee, 0xe7,
79                 0xe6, 0xef, 0xeb, 0xe2, 0xe3, 0xe8, 0xe4, 0xee,
80                 0xe9, 0xec, 0xe7, 0xe0, 0xe2, 0xe1, 0xed, 0xea,
81                 0xec, 0xe6, 0xe0, 0xe9, 0xe5, 0xeb, 0xea, 0xe5,
82                 0xe0, 0xed, 0xee, 0xe8, 0xe7, 0xea, 0xeb, 0xe1,
83                 0xea, 0xe3, 0xe4, 0xef, 0xed, 0xe4, 0xe1, 0xe2,
84                 0xe5, 0xeb, 0xe8, 0xe6, 0xec, 0xe7, 0xe6, 0xec,
85                 0xe9, 0xe0, 0xe3, 0xe5, 0xe2, 0xee, 0xef, 0xe9,
86                 0x0f, 0x03, 0x01, 0x0d, 0x08, 0x04, 0x0e, 0x07,
87                 0x06, 0x0f, 0x0b, 0x02, 0x03, 0x08, 0x04, 0x0e,
88                 0x09, 0x0c, 0x07, 0x00, 0x02, 0x01, 0x0d, 0x0a,
89                 0x0c, 0x06, 0x00, 0x09, 0x05, 0x0b, 0x0a, 0x05,
90                 0x00, 0x0d, 0x0e, 0x08, 0x07, 0x0a, 0x0b, 0x01,
91                 0x0a, 0x03, 0x04, 0x0f, 0x0d, 0x04, 0x01, 0x02,
92                 0x05, 0x0b, 0x08, 0x06, 0x0c, 0x07, 0x06, 0x0c,
93                 0x09, 0x00, 0x03, 0x05, 0x02, 0x0e, 0x0f, 0x09,
94                 0x4f, 0x43, 0x41, 0x4d, 0x48, 0x44, 0x4e, 0x47,
95                 0x46, 0x4f, 0x4b, 0x42, 0x43, 0x48, 0x44, 0x4e,
96                 0x49, 0x4c, 0x47, 0x40, 0x42, 0x41, 0x4d, 0x4a,
97                 0x4c, 0x46, 0x40, 0x49, 0x45, 0x4b, 0x4a, 0x45,
98                 0x40, 0x4d, 0x4e, 0x48, 0x47, 0x4a, 0x4b, 0x41,
99                 0x4a, 0x43, 0x44, 0x4f, 0x4d, 0x44, 0x41, 0x42,
100                 0x45, 0x4b, 0x48, 0x46, 0x4c, 0x47, 0x46, 0x4c,
101                 0x49, 0x40, 0x43, 0x45, 0x42, 0x4e, 0x4f, 0x49,
102                 0xff, 0xf3, 0xf1, 0xfd, 0xf8, 0xf4, 0xfe, 0xf7,
103                 0xf6, 0xff, 0xfb, 0xf2, 0xf3, 0xf8, 0xf4, 0xfe,
104                 0xf9, 0xfc, 0xf7, 0xf0, 0xf2, 0xf1, 0xfd, 0xfa,
105                 0xfc, 0xf6, 0xf0, 0xf9, 0xf5, 0xfb, 0xfa, 0xf5,
106                 0xf0, 0xfd, 0xfe, 0xf8, 0xf7, 0xfa, 0xfb, 0xf1,
107                 0xfa, 0xf3, 0xf4, 0xff, 0xfd, 0xf4, 0xf1, 0xf2,
108                 0xf5, 0xfb, 0xf8, 0xf6, 0xfc, 0xf7, 0xf6, 0xfc,
109                 0xf9, 0xf0, 0xf3, 0xf5, 0xf2, 0xfe, 0xff, 0xf9,
110                 0xdf, 0xd3, 0xd1, 0xdd, 0xd8, 0xd4, 0xde, 0xd7,
111                 0xd6, 0xdf, 0xdb, 0xd2, 0xd3, 0xd8, 0xd4, 0xde,
112                 0xd9, 0xdc, 0xd7, 0xd0, 0xd2, 0xd1, 0xdd, 0xda,
113                 0xdc, 0xd6, 0xd0, 0xd9, 0xd5, 0xdb, 0xda, 0xd5,
114                 0xd0, 0xdd, 0xde, 0xd8, 0xd7, 0xda, 0xdb, 0xd1,
115                 0xda, 0xd3, 0xd4, 0xdf, 0xdd, 0xd4, 0xd1, 0xd2,
116                 0xd5, 0xdb, 0xd8, 0xd6, 0xdc, 0xd7, 0xd6, 0xdc,
117                 0xd9, 0xd0, 0xd3, 0xd5, 0xd2, 0xde, 0xdf, 0xd9,
118                 0x7f, 0x73, 0x71, 0x7d, 0x78, 0x74, 0x7e, 0x77,
119                 0x76, 0x7f, 0x7b, 0x72, 0x73, 0x78, 0x74, 0x7e,
120                 0x79, 0x7c, 0x77, 0x70, 0x72, 0x71, 0x7d, 0x7a,
121                 0x7c, 0x76, 0x70, 0x79, 0x75, 0x7b, 0x7a, 0x75,
122                 0x70, 0x7d, 0x7e, 0x78, 0x77, 0x7a, 0x7b, 0x71,
123                 0x7a, 0x73, 0x74, 0x7f, 0x7d, 0x74, 0x71, 0x72,
124                 0x75, 0x7b, 0x78, 0x76, 0x7c, 0x77, 0x76, 0x7c,
125                 0x79, 0x70, 0x73, 0x75, 0x72, 0x7e, 0x7f, 0x79,
126                 0x1f, 0x13, 0x11, 0x1d, 0x18, 0x14, 0x1e, 0x17,
127                 0x16, 0x1f, 0x1b, 0x12, 0x13, 0x18, 0x14, 0x1e,
128                 0x19, 0x1c, 0x17, 0x10, 0x12, 0x11, 0x1d, 0x1a,
129                 0x1c, 0x16, 0x10, 0x19, 0x15, 0x1b, 0x1a, 0x15,
130                 0x10, 0x1d, 0x1e, 0x18, 0x17, 0x1a, 0x1b, 0x11,
131                 0x1a, 0x13, 0x14, 0x1f, 0x1d, 0x14, 0x11, 0x12,
132                 0x15, 0x1b, 0x18, 0x16, 0x1c, 0x17, 0x16, 0x1c,
133                 0x19, 0x10, 0x13, 0x15, 0x12, 0x1e, 0x1f, 0x19,
134                 0x4f, 0x43, 0x41, 0x4d, 0x48, 0x44, 0x4e, 0x47,
135                 0x46, 0x4f, 0x4b, 0x42, 0x43, 0x48, 0x44, 0x4e,
136                 0x49, 0x4c, 0x47, 0x40, 0x42, 0x41, 0x4d, 0x4a,
137                 0x4c, 0x46, 0x40, 0x49, 0x45, 0x4b, 0x4a, 0x45,
138                 0x40, 0x4d, 0x4e, 0x48, 0x47, 0x4a, 0x4b, 0x41,
139                 0x4a, 0x43, 0x44, 0x4f, 0x4d, 0x44, 0x41, 0x42,
140                 0x45, 0x4b, 0x48, 0x46, 0x4c, 0x47, 0x46, 0x4c,
141                 0x49, 0x40, 0x43, 0x45, 0x42, 0x4e, 0x4f, 0x49,
142                 0x2f, 0x23, 0x21, 0x2d, 0x28, 0x24, 0x2e, 0x27,
143                 0x26, 0x2f, 0x2b, 0x22, 0x23, 0x28, 0x24, 0x2e,
144                 0x29, 0x2c, 0x27, 0x20, 0x22, 0x21, 0x2d, 0x2a,
145                 0x2c, 0x26, 0x20, 0x29, 0x25, 0x2b, 0x2a, 0x25,
146                 0x20, 0x2d, 0x2e, 0x28, 0x27, 0x2a, 0x2b, 0x21,
147                 0x2a, 0x23, 0x24, 0x2f, 0x2d, 0x24, 0x21, 0x22,
148                 0x25, 0x2b, 0x28, 0x26, 0x2c, 0x27, 0x26, 0x2c,
149                 0x29, 0x20, 0x23, 0x25, 0x22, 0x2e, 0x2f, 0x29,
150                 0xef, 0xe3, 0xe1, 0xed, 0xe8, 0xe4, 0xee, 0xe7,
151                 0xe6, 0xef, 0xeb, 0xe2, 0xe3, 0xe8, 0xe4, 0xee,
152                 0xe9, 0xec, 0xe7, 0xe0, 0xe2, 0xe1, 0xed, 0xea,
153                 0xec, 0xe6, 0xe0, 0xe9, 0xe5, 0xeb, 0xea, 0xe5,
154                 0xe0, 0xed, 0xee, 0xe8, 0xe7, 0xea, 0xeb, 0xe1,
155                 0xea, 0xe3, 0xe4, 0xef, 0xed, 0xe4, 0xe1, 0xe2,
156                 0xe5, 0xeb, 0xe8, 0xe6, 0xec, 0xe7, 0xe6, 0xec,
157                 0xe9, 0xe0, 0xe3, 0xe5, 0xe2, 0xee, 0xef, 0xe9,
158                 0xff, 0xf3, 0xf1, 0xfd, 0xf8, 0xf4, 0xfe, 0xf7,
159                 0xf6, 0xff, 0xfb, 0xf2, 0xf3, 0xf8, 0xf4, 0xfe,
160                 0xf9, 0xfc, 0xf7, 0xf0, 0xf2, 0xf1, 0xfd, 0xfa,
161                 0xfc, 0xf6, 0xf0, 0xf9, 0xf5, 0xfb, 0xfa, 0xf5,
162                 0xf0, 0xfd, 0xfe, 0xf8, 0xf7, 0xfa, 0xfb, 0xf1,
163                 0xfa, 0xf3, 0xf4, 0xff, 0xfd, 0xf4, 0xf1, 0xf2,
164                 0xf5, 0xfb, 0xf8, 0xf6, 0xfc, 0xf7, 0xf6, 0xfc,
165                 0xf9, 0xf0, 0xf3, 0xf5, 0xf2, 0xfe, 0xff, 0xf9,
166                 0x2f, 0x23, 0x21, 0x2d, 0x28, 0x24, 0x2e, 0x27,
167                 0x26, 0x2f, 0x2b, 0x22, 0x23, 0x28, 0x24, 0x2e,
168                 0x29, 0x2c, 0x27, 0x20, 0x22, 0x21, 0x2d, 0x2a,
169                 0x2c, 0x26, 0x20, 0x29, 0x25, 0x2b, 0x2a, 0x25,
170                 0x20, 0x2d, 0x2e, 0x28, 0x27, 0x2a, 0x2b, 0x21,
171                 0x2a, 0x23, 0x24, 0x2f, 0x2d, 0x24, 0x21, 0x22,
172                 0x25, 0x2b, 0x28, 0x26, 0x2c, 0x27, 0x26, 0x2c,
173                 0x29, 0x20, 0x23, 0x25, 0x22, 0x2e, 0x2f, 0x29,
174                 0xbf, 0xb3, 0xb1, 0xbd, 0xb8, 0xb4, 0xbe, 0xb7,
175                 0xb6, 0xbf, 0xbb, 0xb2, 0xb3, 0xb8, 0xb4, 0xbe,
176                 0xb9, 0xbc, 0xb7, 0xb0, 0xb2, 0xb1, 0xbd, 0xba,
177                 0xbc, 0xb6, 0xb0, 0xb9, 0xb5, 0xbb, 0xba, 0xb5,
178                 0xb0, 0xbd, 0xbe, 0xb8, 0xb7, 0xba, 0xbb, 0xb1,
179                 0xba, 0xb3, 0xb4, 0xbf, 0xbd, 0xb4, 0xb1, 0xb2,
180                 0xb5, 0xbb, 0xb8, 0xb6, 0xbc, 0xb7, 0xb6, 0xbc,
181                 0xb9, 0xb0, 0xb3, 0xb5, 0xb2, 0xbe, 0xbf, 0xb9,
182                 0xdf, 0xd3, 0xd1, 0xdd, 0xd8, 0xd4, 0xde, 0xd7,
183                 0xd6, 0xdf, 0xdb, 0xd2, 0xd3, 0xd8, 0xd4, 0xde,
184                 0xd9, 0xdc, 0xd7, 0xd0, 0xd2, 0xd1, 0xdd, 0xda,
185                 0xdc, 0xd6, 0xd0, 0xd9, 0xd5, 0xdb, 0xda, 0xd5,
186                 0xd0, 0xdd, 0xde, 0xd8, 0xd7, 0xda, 0xdb, 0xd1,
187                 0xda, 0xd3, 0xd4, 0xdf, 0xdd, 0xd4, 0xd1, 0xd2,
188                 0xd5, 0xdb, 0xd8, 0xd6, 0xdc, 0xd7, 0xd6, 0xdc,
189                 0xd9, 0xd0, 0xd3, 0xd5, 0xd2, 0xde, 0xdf, 0xd9,
190                 0x8f, 0x83, 0x81, 0x8d, 0x88, 0x84, 0x8e, 0x87,
191                 0x86, 0x8f, 0x8b, 0x82, 0x83, 0x88, 0x84, 0x8e,
192                 0x89, 0x8c, 0x87, 0x80, 0x82, 0x81, 0x8d, 0x8a,
193                 0x8c, 0x86, 0x80, 0x89, 0x85, 0x8b, 0x8a, 0x85,
194                 0x80, 0x8d, 0x8e, 0x88, 0x87, 0x8a, 0x8b, 0x81,
195                 0x8a, 0x83, 0x84, 0x8f, 0x8d, 0x84, 0x81, 0x82,
196                 0x85, 0x8b, 0x88, 0x86, 0x8c, 0x87, 0x86, 0x8c,
197                 0x89, 0x80, 0x83, 0x85, 0x82, 0x8e, 0x8f, 0x89,
198                 0x1f, 0x13, 0x11, 0x1d, 0x18, 0x14, 0x1e, 0x17,
199                 0x16, 0x1f, 0x1b, 0x12, 0x13, 0x18, 0x14, 0x1e,
200                 0x19, 0x1c, 0x17, 0x10, 0x12, 0x11, 0x1d, 0x1a,
201                 0x1c, 0x16, 0x10, 0x19, 0x15, 0x1b, 0x1a, 0x15,
202                 0x10, 0x1d, 0x1e, 0x18, 0x17, 0x1a, 0x1b, 0x11,
203                 0x1a, 0x13, 0x14, 0x1f, 0x1d, 0x14, 0x11, 0x12,
204                 0x15, 0x1b, 0x18, 0x16, 0x1c, 0x17, 0x16, 0x1c,
205                 0x19, 0x10, 0x13, 0x15, 0x12, 0x1e, 0x1f, 0x19,
206                 0x3f, 0x33, 0x31, 0x3d, 0x38, 0x34, 0x3e, 0x37,
207                 0x36, 0x3f, 0x3b, 0x32, 0x33, 0x38, 0x34, 0x3e,
208                 0x39, 0x3c, 0x37, 0x30, 0x32, 0x31, 0x3d, 0x3a,
209                 0x3c, 0x36, 0x30, 0x39, 0x35, 0x3b, 0x3a, 0x35,
210                 0x30, 0x3d, 0x3e, 0x38, 0x37, 0x3a, 0x3b, 0x31,
211                 0x3a, 0x33, 0x34, 0x3f, 0x3d, 0x34, 0x31, 0x32,
212                 0x35, 0x3b, 0x38, 0x36, 0x3c, 0x37, 0x36, 0x3c,
213                 0x39, 0x30, 0x33, 0x35, 0x32, 0x3e, 0x3f, 0x39,
214                 0xaf, 0xa3, 0xa1, 0xad, 0xa8, 0xa4, 0xae, 0xa7,
215                 0xa6, 0xaf, 0xab, 0xa2, 0xa3, 0xa8, 0xa4, 0xae,
216                 0xa9, 0xac, 0xa7, 0xa0, 0xa2, 0xa1, 0xad, 0xaa,
217                 0xac, 0xa6, 0xa0, 0xa9, 0xa5, 0xab, 0xaa, 0xa5,
218                 0xa0, 0xad, 0xae, 0xa8, 0xa7, 0xaa, 0xab, 0xa1,
219                 0xaa, 0xa3, 0xa4, 0xaf, 0xad, 0xa4, 0xa1, 0xa2,
220                 0xa5, 0xab, 0xa8, 0xa6, 0xac, 0xa7, 0xa6, 0xac,
221                 0xa9, 0xa0, 0xa3, 0xa5, 0xa2, 0xae, 0xaf, 0xa9,
222                 0xaf, 0xa3, 0xa1, 0xad, 0xa8, 0xa4, 0xae, 0xa7,
223                 0xa6, 0xaf, 0xab, 0xa2, 0xa3, 0xa8, 0xa4, 0xae,
224                 0xa9, 0xac, 0xa7, 0xa0, 0xa2, 0xa1, 0xad, 0xaa,
225                 0xac, 0xa6, 0xa0, 0xa9, 0xa5, 0xab, 0xaa, 0xa5,
226                 0xa0, 0xad, 0xae, 0xa8, 0xa7, 0xaa, 0xab, 0xa1,
227                 0xaa, 0xa3, 0xa4, 0xaf, 0xad, 0xa4, 0xa1, 0xa2,
228                 0xa5, 0xab, 0xa8, 0xa6, 0xac, 0xa7, 0xa6, 0xac,
229                 0xa9, 0xa0, 0xa3, 0xa5, 0xa2, 0xae, 0xaf, 0xa9,
230                 0x6f, 0x63, 0x61, 0x6d, 0x68, 0x64, 0x6e, 0x67,
231                 0x66, 0x6f, 0x6b, 0x62, 0x63, 0x68, 0x64, 0x6e,
232                 0x69, 0x6c, 0x67, 0x60, 0x62, 0x61, 0x6d, 0x6a,
233                 0x6c, 0x66, 0x60, 0x69, 0x65, 0x6b, 0x6a, 0x65,
234                 0x60, 0x6d, 0x6e, 0x68, 0x67, 0x6a, 0x6b, 0x61,
235                 0x6a, 0x63, 0x64, 0x6f, 0x6d, 0x64, 0x61, 0x62,
236                 0x65, 0x6b, 0x68, 0x66, 0x6c, 0x67, 0x66, 0x6c,
237                 0x69, 0x60, 0x63, 0x65, 0x62, 0x6e, 0x6f, 0x69,
238                 0x6f, 0x63, 0x61, 0x6d, 0x68, 0x64, 0x6e, 0x67,
239                 0x66, 0x6f, 0x6b, 0x62, 0x63, 0x68, 0x64, 0x6e,
240                 0x69, 0x6c, 0x67, 0x60, 0x62, 0x61, 0x6d, 0x6a,
241                 0x6c, 0x66, 0x60, 0x69, 0x65, 0x6b, 0x6a, 0x65,
242                 0x60, 0x6d, 0x6e, 0x68, 0x67, 0x6a, 0x6b, 0x61,
243                 0x6a, 0x63, 0x64, 0x6f, 0x6d, 0x64, 0x61, 0x62,
244                 0x65, 0x6b, 0x68, 0x66, 0x6c, 0x67, 0x66, 0x6c,
245                 0x69, 0x60, 0x63, 0x65, 0x62, 0x6e, 0x6f, 0x69,
246                 0xcf, 0xc3, 0xc1, 0xcd, 0xc8, 0xc4, 0xce, 0xc7,
247                 0xc6, 0xcf, 0xcb, 0xc2, 0xc3, 0xc8, 0xc4, 0xce,
248                 0xc9, 0xcc, 0xc7, 0xc0, 0xc2, 0xc1, 0xcd, 0xca,
249                 0xcc, 0xc6, 0xc0, 0xc9, 0xc5, 0xcb, 0xca, 0xc5,
250                 0xc0, 0xcd, 0xce, 0xc8, 0xc7, 0xca, 0xcb, 0xc1,
251                 0xca, 0xc3, 0xc4, 0xcf, 0xcd, 0xc4, 0xc1, 0xc2,
252                 0xc5, 0xcb, 0xc8, 0xc6, 0xcc, 0xc7, 0xc6, 0xcc,
253                 0xc9, 0xc0, 0xc3, 0xc5, 0xc2, 0xce, 0xcf, 0xc9,
254                 0xcf, 0xc3, 0xc1, 0xcd, 0xc8, 0xc4, 0xce, 0xc7,
255                 0xc6, 0xcf, 0xcb, 0xc2, 0xc3, 0xc8, 0xc4, 0xce,
256                 0xc9, 0xcc, 0xc7, 0xc0, 0xc2, 0xc1, 0xcd, 0xca,
257                 0xcc, 0xc6, 0xc0, 0xc9, 0xc5, 0xcb, 0xca, 0xc5,
258                 0xc0, 0xcd, 0xce, 0xc8, 0xc7, 0xca, 0xcb, 0xc1,
259                 0xca, 0xc3, 0xc4, 0xcf, 0xcd, 0xc4, 0xc1, 0xc2,
260                 0xc5, 0xcb, 0xc8, 0xc6, 0xcc, 0xc7, 0xc6, 0xcc,
261                 0xc9, 0xc0, 0xc3, 0xc5, 0xc2, 0xce, 0xcf, 0xc9,
262                 0xbf, 0xb3, 0xb1, 0xbd, 0xb8, 0xb4, 0xbe, 0xb7,
263                 0xb6, 0xbf, 0xbb, 0xb2, 0xb3, 0xb8, 0xb4, 0xbe,
264                 0xb9, 0xbc, 0xb7, 0xb0, 0xb2, 0xb1, 0xbd, 0xba,
265                 0xbc, 0xb6, 0xb0, 0xb9, 0xb5, 0xbb, 0xba, 0xb5,
266                 0xb0, 0xbd, 0xbe, 0xb8, 0xb7, 0xba, 0xbb, 0xb1,
267                 0xba, 0xb3, 0xb4, 0xbf, 0xbd, 0xb4, 0xb1, 0xb2,
268                 0xb5, 0xbb, 0xb8, 0xb6, 0xbc, 0xb7, 0xb6, 0xbc,
269                 0xb9, 0xb0, 0xb3, 0xb5, 0xb2, 0xbe, 0xbf, 0xb9,
270                 0x5f, 0x53, 0x51, 0x5d, 0x58, 0x54, 0x5e, 0x57,
271                 0x56, 0x5f, 0x5b, 0x52, 0x53, 0x58, 0x54, 0x5e,
272                 0x59, 0x5c, 0x57, 0x50, 0x52, 0x51, 0x5d, 0x5a,
273                 0x5c, 0x56, 0x50, 0x59, 0x55, 0x5b, 0x5a, 0x55,
274                 0x50, 0x5d, 0x5e, 0x58, 0x57, 0x5a, 0x5b, 0x51,
275                 0x5a, 0x53, 0x54, 0x5f, 0x5d, 0x54, 0x51, 0x52,
276                 0x55, 0x5b, 0x58, 0x56, 0x5c, 0x57, 0x56, 0x5c,
277                 0x59, 0x50, 0x53, 0x55, 0x52, 0x5e, 0x5f, 0x59,
278                 0x9f, 0x93, 0x91, 0x9d, 0x98, 0x94, 0x9e, 0x97,
279                 0x96, 0x9f, 0x9b, 0x92, 0x93, 0x98, 0x94, 0x9e,
280                 0x99, 0x9c, 0x97, 0x90, 0x92, 0x91, 0x9d, 0x9a,
281                 0x9c, 0x96, 0x90, 0x99, 0x95, 0x9b, 0x9a, 0x95,
282                 0x90, 0x9d, 0x9e, 0x98, 0x97, 0x9a, 0x9b, 0x91,
283                 0x9a, 0x93, 0x94, 0x9f, 0x9d, 0x94, 0x91, 0x92,
284                 0x95, 0x9b, 0x98, 0x96, 0x9c, 0x97, 0x96, 0x9c,
285                 0x99, 0x90, 0x93, 0x95, 0x92, 0x9e, 0x9f, 0x99,
286                 0x9f, 0x93, 0x91, 0x9d, 0x98, 0x94, 0x9e, 0x97,
287                 0x96, 0x9f, 0x9b, 0x92, 0x93, 0x98, 0x94, 0x9e,
288                 0x99, 0x9c, 0x97, 0x90, 0x92, 0x91, 0x9d, 0x9a,
289                 0x9c, 0x96, 0x90, 0x99, 0x95, 0x9b, 0x9a, 0x95,
290                 0x90, 0x9d, 0x9e, 0x98, 0x97, 0x9a, 0x9b, 0x91,
291                 0x9a, 0x93, 0x94, 0x9f, 0x9d, 0x94, 0x91, 0x92,
292                 0x95, 0x9b, 0x98, 0x96, 0x9c, 0x97, 0x96, 0x9c,
293                 0x99, 0x90, 0x93, 0x95, 0x92, 0x9e, 0x9f, 0x99,
294                 0x5f, 0x53, 0x51, 0x5d, 0x58, 0x54, 0x5e, 0x57,
295                 0x56, 0x5f, 0x5b, 0x52, 0x53, 0x58, 0x54, 0x5e,
296                 0x59, 0x5c, 0x57, 0x50, 0x52, 0x51, 0x5d, 0x5a,
297                 0x5c, 0x56, 0x50, 0x59, 0x55, 0x5b, 0x5a, 0x55,
298                 0x50, 0x5d, 0x5e, 0x58, 0x57, 0x5a, 0x5b, 0x51,
299                 0x5a, 0x53, 0x54, 0x5f, 0x5d, 0x54, 0x51, 0x52,
300                 0x55, 0x5b, 0x58, 0x56, 0x5c, 0x57, 0x56, 0x5c,
301                 0x59, 0x50, 0x53, 0x55, 0x52, 0x5e, 0x5f, 0x59,
302                 0x0f, 0x03, 0x01, 0x0d, 0x08, 0x04, 0x0e, 0x07,
303                 0x06, 0x0f, 0x0b, 0x02, 0x03, 0x08, 0x04, 0x0e,
304                 0x09, 0x0c, 0x07, 0x00, 0x02, 0x01, 0x0d, 0x0a,
305                 0x0c, 0x06, 0x00, 0x09, 0x05, 0x0b, 0x0a, 0x05,
306                 0x00, 0x0d, 0x0e, 0x08, 0x07, 0x0a, 0x0b, 0x01,
307                 0x0a, 0x03, 0x04, 0x0f, 0x0d, 0x04, 0x01, 0x02,
308                 0x05, 0x0b, 0x08, 0x06, 0x0c, 0x07, 0x06, 0x0c,
309                 0x09, 0x00, 0x03, 0x05, 0x02, 0x0e, 0x0f, 0x09,
310                 0x3f, 0x33, 0x31, 0x3d, 0x38, 0x34, 0x3e, 0x37,
311                 0x36, 0x3f, 0x3b, 0x32, 0x33, 0x38, 0x34, 0x3e,
312                 0x39, 0x3c, 0x37, 0x30, 0x32, 0x31, 0x3d, 0x3a,
313                 0x3c, 0x36, 0x30, 0x39, 0x35, 0x3b, 0x3a, 0x35,
314                 0x30, 0x3d, 0x3e, 0x38, 0x37, 0x3a, 0x3b, 0x31,
315                 0x3a, 0x33, 0x34, 0x3f, 0x3d, 0x34, 0x31, 0x32,
316                 0x35, 0x3b, 0x38, 0x36, 0x3c, 0x37, 0x36, 0x3c,
317                 0x39, 0x30, 0x33, 0x35, 0x32, 0x3e, 0x3f, 0x39,
318                 0x7f, 0x73, 0x71, 0x7d, 0x78, 0x74, 0x7e, 0x77,
319                 0x76, 0x7f, 0x7b, 0x72, 0x73, 0x78, 0x74, 0x7e,
320                 0x79, 0x7c, 0x77, 0x70, 0x72, 0x71, 0x7d, 0x7a,
321                 0x7c, 0x76, 0x70, 0x79, 0x75, 0x7b, 0x7a, 0x75,
322                 0x70, 0x7d, 0x7e, 0x78, 0x77, 0x7a, 0x7b, 0x71,
323                 0x7a, 0x73, 0x74, 0x7f, 0x7d, 0x74, 0x71, 0x72,
324                 0x75, 0x7b, 0x78, 0x76, 0x7c, 0x77, 0x76, 0x7c,
325                 0x79, 0x70, 0x73, 0x75, 0x72, 0x7e, 0x7f, 0x79,
326                 0x8f, 0x83, 0x81, 0x8d, 0x88, 0x84, 0x8e, 0x87,
327                 0x86, 0x8f, 0x8b, 0x82, 0x83, 0x88, 0x84, 0x8e,
328                 0x89, 0x8c, 0x87, 0x80, 0x82, 0x81, 0x8d, 0x8a,
329                 0x8c, 0x86, 0x80, 0x89, 0x85, 0x8b, 0x8a, 0x85,
330                 0x80, 0x8d, 0x8e, 0x88, 0x87, 0x8a, 0x8b, 0x81,
331                 0x8a, 0x83, 0x84, 0x8f, 0x8d, 0x84, 0x81, 0x82,
332                 0x85, 0x8b, 0x88, 0x86, 0x8c, 0x87, 0x86, 0x8c,
333                 0x89, 0x80, 0x83, 0x85, 0x82, 0x8e, 0x8f, 0x89,
334                 0x4f, 0x43, 0x41, 0x4d, 0x48, 0x44, 0x4e, 0x47,
335                 0x46, 0x4f, 0x4b, 0x42, 0x43, 0x48, 0x44, 0x4e,
336                 0x49, 0x4c, 0x47, 0x40, 0x42, 0x41, 0x4d, 0x4a,
337                 0x4c, 0x46, 0x40, 0x49, 0x45, 0x4b, 0x4a, 0x45,
338                 0x40, 0x4d, 0x4e, 0x48, 0x47, 0x4a, 0x4b, 0x41,
339                 0x4a, 0x43, 0x44, 0x4f, 0x4d, 0x44, 0x41, 0x42,
340                 0x45, 0x4b, 0x48, 0x46, 0x4c, 0x47, 0x46, 0x4c,
341                 0x49, 0x40, 0x43, 0x45, 0x42, 0x4e, 0x4f, 0x49,
342                 0xff, 0xf3, 0xf1, 0xfd, 0xf8, 0xf4, 0xfe, 0xf7,
343                 0xf6, 0xff, 0xfb, 0xf2, 0xf3, 0xf8, 0xf4, 0xfe,
344                 0xf9, 0xfc, 0xf7, 0xf0, 0xf2, 0xf1, 0xfd, 0xfa,
345                 0xfc, 0xf6, 0xf0, 0xf9, 0xf5, 0xfb, 0xfa, 0xf5,
346                 0xf0, 0xfd, 0xfe, 0xf8, 0xf7, 0xfa, 0xfb, 0xf1,
347                 0xfa, 0xf3, 0xf4, 0xff, 0xfd, 0xf4, 0xf1, 0xf2,
348                 0xf5, 0xfb, 0xf8, 0xf6, 0xfc, 0xf7, 0xf6, 0xfc,
349                 0xf9, 0xf0, 0xf3, 0xf5, 0xf2, 0xfe, 0xff, 0xf9,
350                 0x1f, 0x13, 0x11, 0x1d, 0x18, 0x14, 0x1e, 0x17,
351                 0x16, 0x1f, 0x1b, 0x12, 0x13, 0x18, 0x14, 0x1e,
352                 0x19, 0x1c, 0x17, 0x10, 0x12, 0x11, 0x1d, 0x1a,
353                 0x1c, 0x16, 0x10, 0x19, 0x15, 0x1b, 0x1a, 0x15,
354                 0x10, 0x1d, 0x1e, 0x18, 0x17, 0x1a, 0x1b, 0x11,
355                 0x1a, 0x13, 0x14, 0x1f, 0x1d, 0x14, 0x11, 0x12,
356                 0x15, 0x1b, 0x18, 0x16, 0x1c, 0x17, 0x16, 0x1c,
357                 0x19, 0x10, 0x13, 0x15, 0x12, 0x1e, 0x1f, 0x19,
358                 0xcf, 0xc3, 0xc1, 0xcd, 0xc8, 0xc4, 0xce, 0xc7,
359                 0xc6, 0xcf, 0xcb, 0xc2, 0xc3, 0xc8, 0xc4, 0xce,
360                 0xc9, 0xcc, 0xc7, 0xc0, 0xc2, 0xc1, 0xcd, 0xca,
361                 0xcc, 0xc6, 0xc0, 0xc9, 0xc5, 0xcb, 0xca, 0xc5,
362                 0xc0, 0xcd, 0xce, 0xc8, 0xc7, 0xca, 0xcb, 0xc1,
363                 0xca, 0xc3, 0xc4, 0xcf, 0xcd, 0xc4, 0xc1, 0xc2,
364                 0xc5, 0xcb, 0xc8, 0xc6, 0xcc, 0xc7, 0xc6, 0xcc,
365                 0xc9, 0xc0, 0xc3, 0xc5, 0xc2, 0xce, 0xcf, 0xc9,
366                 0xef, 0xe3, 0xe1, 0xed, 0xe8, 0xe4, 0xee, 0xe7,
367                 0xe6, 0xef, 0xeb, 0xe2, 0xe3, 0xe8, 0xe4, 0xee,
368                 0xe9, 0xec, 0xe7, 0xe0, 0xe2, 0xe1, 0xed, 0xea,
369                 0xec, 0xe6, 0xe0, 0xe9, 0xe5, 0xeb, 0xea, 0xe5,
370                 0xe0, 0xed, 0xee, 0xe8, 0xe7, 0xea, 0xeb, 0xe1,
371                 0xea, 0xe3, 0xe4, 0xef, 0xed, 0xe4, 0xe1, 0xe2,
372                 0xe5, 0xeb, 0xe8, 0xe6, 0xec, 0xe7, 0xe6, 0xec,
373                 0xe9, 0xe0, 0xe3, 0xe5, 0xe2, 0xee, 0xef, 0xe9,
374                 0x8f, 0x83, 0x81, 0x8d, 0x88, 0x84, 0x8e, 0x87,
375                 0x86, 0x8f, 0x8b, 0x82, 0x83, 0x88, 0x84, 0x8e,
376                 0x89, 0x8c, 0x87, 0x80, 0x82, 0x81, 0x8d, 0x8a,
377                 0x8c, 0x86, 0x80, 0x89, 0x85, 0x8b, 0x8a, 0x85,
378                 0x80, 0x8d, 0x8e, 0x88, 0x87, 0x8a, 0x8b, 0x81,
379                 0x8a, 0x83, 0x84, 0x8f, 0x8d, 0x84, 0x81, 0x82,
380                 0x85, 0x8b, 0x88, 0x86, 0x8c, 0x87, 0x86, 0x8c,
381                 0x89, 0x80, 0x83, 0x85, 0x82, 0x8e, 0x8f, 0x89,
382                 0x8f, 0x83, 0x81, 0x8d, 0x88, 0x84, 0x8e, 0x87,
383                 0x86, 0x8f, 0x8b, 0x82, 0x83, 0x88, 0x84, 0x8e,
384                 0x89, 0x8c, 0x87, 0x80, 0x82, 0x81, 0x8d, 0x8a,
385                 0x8c, 0x86, 0x80, 0x89, 0x85, 0x8b, 0x8a, 0x85,
386                 0x80, 0x8d, 0x8e, 0x88, 0x87, 0x8a, 0x8b, 0x81,
387                 0x8a, 0x83, 0x84, 0x8f, 0x8d, 0x84, 0x81, 0x82,
388                 0x85, 0x8b, 0x88, 0x86, 0x8c, 0x87, 0x86, 0x8c,
389                 0x89, 0x80, 0x83, 0x85, 0x82, 0x8e, 0x8f, 0x89,
390                 0x2f, 0x23, 0x21, 0x2d, 0x28, 0x24, 0x2e, 0x27,
391                 0x26, 0x2f, 0x2b, 0x22, 0x23, 0x28, 0x24, 0x2e,
392                 0x29, 0x2c, 0x27, 0x20, 0x22, 0x21, 0x2d, 0x2a,
393                 0x2c, 0x26, 0x20, 0x29, 0x25, 0x2b, 0x2a, 0x25,
394                 0x20, 0x2d, 0x2e, 0x28, 0x27, 0x2a, 0x2b, 0x21,
395                 0x2a, 0x23, 0x24, 0x2f, 0x2d, 0x24, 0x21, 0x22,
396                 0x25, 0x2b, 0x28, 0x26, 0x2c, 0x27, 0x26, 0x2c,
397                 0x29, 0x20, 0x23, 0x25, 0x22, 0x2e, 0x2f, 0x29,
398                 0xdf, 0xd3, 0xd1, 0xdd, 0xd8, 0xd4, 0xde, 0xd7,
399                 0xd6, 0xdf, 0xdb, 0xd2, 0xd3, 0xd8, 0xd4, 0xde,
400                 0xd9, 0xdc, 0xd7, 0xd0, 0xd2, 0xd1, 0xdd, 0xda,
401                 0xdc, 0xd6, 0xd0, 0xd9, 0xd5, 0xdb, 0xda, 0xd5,
402                 0xd0, 0xdd, 0xde, 0xd8, 0xd7, 0xda, 0xdb, 0xd1,
403                 0xda, 0xd3, 0xd4, 0xdf, 0xdd, 0xd4, 0xd1, 0xd2,
404                 0xd5, 0xdb, 0xd8, 0xd6, 0xdc, 0xd7, 0xd6, 0xdc,
405                 0xd9, 0xd0, 0xd3, 0xd5, 0xd2, 0xde, 0xdf, 0xd9,
406                 0x4f, 0x43, 0x41, 0x4d, 0x48, 0x44, 0x4e, 0x47,
407                 0x46, 0x4f, 0x4b, 0x42, 0x43, 0x48, 0x44, 0x4e,
408                 0x49, 0x4c, 0x47, 0x40, 0x42, 0x41, 0x4d, 0x4a,
409                 0x4c, 0x46, 0x40, 0x49, 0x45, 0x4b, 0x4a, 0x45,
410                 0x40, 0x4d, 0x4e, 0x48, 0x47, 0x4a, 0x4b, 0x41,
411                 0x4a, 0x43, 0x44, 0x4f, 0x4d, 0x44, 0x41, 0x42,
412                 0x45, 0x4b, 0x48, 0x46, 0x4c, 0x47, 0x46, 0x4c,
413                 0x49, 0x40, 0x43, 0x45, 0x42, 0x4e, 0x4f, 0x49,
414                 0x6f, 0x63, 0x61, 0x6d, 0x68, 0x64, 0x6e, 0x67,
415                 0x66, 0x6f, 0x6b, 0x62, 0x63, 0x68, 0x64, 0x6e,
416                 0x69, 0x6c, 0x67, 0x60, 0x62, 0x61, 0x6d, 0x6a,
417                 0x6c, 0x66, 0x60, 0x69, 0x65, 0x6b, 0x6a, 0x65,
418                 0x60, 0x6d, 0x6e, 0x68, 0x67, 0x6a, 0x6b, 0x61,
419                 0x6a, 0x63, 0x64, 0x6f, 0x6d, 0x64, 0x61, 0x62,
420                 0x65, 0x6b, 0x68, 0x66, 0x6c, 0x67, 0x66, 0x6c,
421                 0x69, 0x60, 0x63, 0x65, 0x62, 0x6e, 0x6f, 0x69,
422                 0x9f, 0x93, 0x91, 0x9d, 0x98, 0x94, 0x9e, 0x97,
423                 0x96, 0x9f, 0x9b, 0x92, 0x93, 0x98, 0x94, 0x9e,
424                 0x99, 0x9c, 0x97, 0x90, 0x92, 0x91, 0x9d, 0x9a,
425                 0x9c, 0x96, 0x90, 0x99, 0x95, 0x9b, 0x9a, 0x95,
426                 0x90, 0x9d, 0x9e, 0x98, 0x97, 0x9a, 0x9b, 0x91,
427                 0x9a, 0x93, 0x94, 0x9f, 0x9d, 0x94, 0x91, 0x92,
428                 0x95, 0x9b, 0x98, 0x96, 0x9c, 0x97, 0x96, 0x9c,
429                 0x99, 0x90, 0x93, 0x95, 0x92, 0x9e, 0x9f, 0x99,
430                 0x2f, 0x23, 0x21, 0x2d, 0x28, 0x24, 0x2e, 0x27,
431                 0x26, 0x2f, 0x2b, 0x22, 0x23, 0x28, 0x24, 0x2e,
432                 0x29, 0x2c, 0x27, 0x20, 0x22, 0x21, 0x2d, 0x2a,
433                 0x2c, 0x26, 0x20, 0x29, 0x25, 0x2b, 0x2a, 0x25,
434                 0x20, 0x2d, 0x2e, 0x28, 0x27, 0x2a, 0x2b, 0x21,
435                 0x2a, 0x23, 0x24, 0x2f, 0x2d, 0x24, 0x21, 0x22,
436                 0x25, 0x2b, 0x28, 0x26, 0x2c, 0x27, 0x26, 0x2c,
437                 0x29, 0x20, 0x23, 0x25, 0x22, 0x2e, 0x2f, 0x29,
438                 0x1f, 0x13, 0x11, 0x1d, 0x18, 0x14, 0x1e, 0x17,
439                 0x16, 0x1f, 0x1b, 0x12, 0x13, 0x18, 0x14, 0x1e,
440                 0x19, 0x1c, 0x17, 0x10, 0x12, 0x11, 0x1d, 0x1a,
441                 0x1c, 0x16, 0x10, 0x19, 0x15, 0x1b, 0x1a, 0x15,
442                 0x10, 0x1d, 0x1e, 0x18, 0x17, 0x1a, 0x1b, 0x11,
443                 0x1a, 0x13, 0x14, 0x1f, 0x1d, 0x14, 0x11, 0x12,
444                 0x15, 0x1b, 0x18, 0x16, 0x1c, 0x17, 0x16, 0x1c,
445                 0x19, 0x10, 0x13, 0x15, 0x12, 0x1e, 0x1f, 0x19,
446                 0xbf, 0xb3, 0xb1, 0xbd, 0xb8, 0xb4, 0xbe, 0xb7,
447                 0xb6, 0xbf, 0xbb, 0xb2, 0xb3, 0xb8, 0xb4, 0xbe,
448                 0xb9, 0xbc, 0xb7, 0xb0, 0xb2, 0xb1, 0xbd, 0xba,
449                 0xbc, 0xb6, 0xb0, 0xb9, 0xb5, 0xbb, 0xba, 0xb5,
450                 0xb0, 0xbd, 0xbe, 0xb8, 0xb7, 0xba, 0xbb, 0xb1,
451                 0xba, 0xb3, 0xb4, 0xbf, 0xbd, 0xb4, 0xb1, 0xb2,
452                 0xb5, 0xbb, 0xb8, 0xb6, 0xbc, 0xb7, 0xb6, 0xbc,
453                 0xb9, 0xb0, 0xb3, 0xb5, 0xb2, 0xbe, 0xbf, 0xb9,
454                 0x7f, 0x73, 0x71, 0x7d, 0x78, 0x74, 0x7e, 0x77,
455                 0x76, 0x7f, 0x7b, 0x72, 0x73, 0x78, 0x74, 0x7e,
456                 0x79, 0x7c, 0x77, 0x70, 0x72, 0x71, 0x7d, 0x7a,
457                 0x7c, 0x76, 0x70, 0x79, 0x75, 0x7b, 0x7a, 0x75,
458                 0x70, 0x7d, 0x7e, 0x78, 0x77, 0x7a, 0x7b, 0x71,
459                 0x7a, 0x73, 0x74, 0x7f, 0x7d, 0x74, 0x71, 0x72,
460                 0x75, 0x7b, 0x78, 0x76, 0x7c, 0x77, 0x76, 0x7c,
461                 0x79, 0x70, 0x73, 0x75, 0x72, 0x7e, 0x7f, 0x79,
462                 0xff, 0xf3, 0xf1, 0xfd, 0xf8, 0xf4, 0xfe, 0xf7,
463                 0xf6, 0xff, 0xfb, 0xf2, 0xf3, 0xf8, 0xf4, 0xfe,
464                 0xf9, 0xfc, 0xf7, 0xf0, 0xf2, 0xf1, 0xfd, 0xfa,
465                 0xfc, 0xf6, 0xf0, 0xf9, 0xf5, 0xfb, 0xfa, 0xf5,
466                 0xf0, 0xfd, 0xfe, 0xf8, 0xf7, 0xfa, 0xfb, 0xf1,
467                 0xfa, 0xf3, 0xf4, 0xff, 0xfd, 0xf4, 0xf1, 0xf2,
468                 0xf5, 0xfb, 0xf8, 0xf6, 0xfc, 0xf7, 0xf6, 0xfc,
469                 0xf9, 0xf0, 0xf3, 0xf5, 0xf2, 0xfe, 0xff, 0xf9,
470                 0x5f, 0x53, 0x51, 0x5d, 0x58, 0x54, 0x5e, 0x57,
471                 0x56, 0x5f, 0x5b, 0x52, 0x53, 0x58, 0x54, 0x5e,
472                 0x59, 0x5c, 0x57, 0x50, 0x52, 0x51, 0x5d, 0x5a,
473                 0x5c, 0x56, 0x50, 0x59, 0x55, 0x5b, 0x5a, 0x55,
474                 0x50, 0x5d, 0x5e, 0x58, 0x57, 0x5a, 0x5b, 0x51,
475                 0x5a, 0x53, 0x54, 0x5f, 0x5d, 0x54, 0x51, 0x52,
476                 0x55, 0x5b, 0x58, 0x56, 0x5c, 0x57, 0x56, 0x5c,
477                 0x59, 0x50, 0x53, 0x55, 0x52, 0x5e, 0x5f, 0x59,
478                 0xcf, 0xc3, 0xc1, 0xcd, 0xc8, 0xc4, 0xce, 0xc7,
479                 0xc6, 0xcf, 0xcb, 0xc2, 0xc3, 0xc8, 0xc4, 0xce,
480                 0xc9, 0xcc, 0xc7, 0xc0, 0xc2, 0xc1, 0xcd, 0xca,
481                 0xcc, 0xc6, 0xc0, 0xc9, 0xc5, 0xcb, 0xca, 0xc5,
482                 0xc0, 0xcd, 0xce, 0xc8, 0xc7, 0xca, 0xcb, 0xc1,
483                 0xca, 0xc3, 0xc4, 0xcf, 0xcd, 0xc4, 0xc1, 0xc2,
484                 0xc5, 0xcb, 0xc8, 0xc6, 0xcc, 0xc7, 0xc6, 0xcc,
485                 0xc9, 0xc0, 0xc3, 0xc5, 0xc2, 0xce, 0xcf, 0xc9,
486                 0xbf, 0xb3, 0xb1, 0xbd, 0xb8, 0xb4, 0xbe, 0xb7,
487                 0xb6, 0xbf, 0xbb, 0xb2, 0xb3, 0xb8, 0xb4, 0xbe,
488                 0xb9, 0xbc, 0xb7, 0xb0, 0xb2, 0xb1, 0xbd, 0xba,
489                 0xbc, 0xb6, 0xb0, 0xb9, 0xb5, 0xbb, 0xba, 0xb5,
490                 0xb0, 0xbd, 0xbe, 0xb8, 0xb7, 0xba, 0xbb, 0xb1,
491                 0xba, 0xb3, 0xb4, 0xbf, 0xbd, 0xb4, 0xb1, 0xb2,
492                 0xb5, 0xbb, 0xb8, 0xb6, 0xbc, 0xb7, 0xb6, 0xbc,
493                 0xb9, 0xb0, 0xb3, 0xb5, 0xb2, 0xbe, 0xbf, 0xb9,
494                 0x9f, 0x93, 0x91, 0x9d, 0x98, 0x94, 0x9e, 0x97,
495                 0x96, 0x9f, 0x9b, 0x92, 0x93, 0x98, 0x94, 0x9e,
496                 0x99, 0x9c, 0x97, 0x90, 0x92, 0x91, 0x9d, 0x9a,
497                 0x9c, 0x96, 0x90, 0x99, 0x95, 0x9b, 0x9a, 0x95,
498                 0x90, 0x9d, 0x9e, 0x98, 0x97, 0x9a, 0x9b, 0x91,
499                 0x9a, 0x93, 0x94, 0x9f, 0x9d, 0x94, 0x91, 0x92,
500                 0x95, 0x9b, 0x98, 0x96, 0x9c, 0x97, 0x96, 0x9c,
501                 0x99, 0x90, 0x93, 0x95, 0x92, 0x9e, 0x9f, 0x99,
502                 0x3f, 0x33, 0x31, 0x3d, 0x38, 0x34, 0x3e, 0x37,
503                 0x36, 0x3f, 0x3b, 0x32, 0x33, 0x38, 0x34, 0x3e,
504                 0x39, 0x3c, 0x37, 0x30, 0x32, 0x31, 0x3d, 0x3a,
505                 0x3c, 0x36, 0x30, 0x39, 0x35, 0x3b, 0x3a, 0x35,
506                 0x30, 0x3d, 0x3e, 0x38, 0x37, 0x3a, 0x3b, 0x31,
507                 0x3a, 0x33, 0x34, 0x3f, 0x3d, 0x34, 0x31, 0x32,
508                 0x35, 0x3b, 0x38, 0x36, 0x3c, 0x37, 0x36, 0x3c,
509                 0x39, 0x30, 0x33, 0x35, 0x32, 0x3e, 0x3f, 0x39,
510                 0x7f, 0x73, 0x71, 0x7d, 0x78, 0x74, 0x7e, 0x77,
511                 0x76, 0x7f, 0x7b, 0x72, 0x73, 0x78, 0x74, 0x7e,
512                 0x79, 0x7c, 0x77, 0x70, 0x72, 0x71, 0x7d, 0x7a,
513                 0x7c, 0x76, 0x70, 0x79, 0x75, 0x7b, 0x7a, 0x75,
514                 0x70, 0x7d, 0x7e, 0x78, 0x77, 0x7a, 0x7b, 0x71,
515                 0x7a, 0x73, 0x74, 0x7f, 0x7d, 0x74, 0x71, 0x72,
516                 0x75, 0x7b, 0x78, 0x76, 0x7c, 0x77, 0x76, 0x7c,
517                 0x79, 0x70, 0x73, 0x75, 0x72, 0x7e, 0x7f, 0x79,
518                 0xef, 0xe3, 0xe1, 0xed, 0xe8, 0xe4, 0xee, 0xe7,
519                 0xe6, 0xef, 0xeb, 0xe2, 0xe3, 0xe8, 0xe4, 0xee,
520                 0xe9, 0xec, 0xe7, 0xe0, 0xe2, 0xe1, 0xed, 0xea,
521                 0xec, 0xe6, 0xe0, 0xe9, 0xe5, 0xeb, 0xea, 0xe5,
522                 0xe0, 0xed, 0xee, 0xe8, 0xe7, 0xea, 0xeb, 0xe1,
523                 0xea, 0xe3, 0xe4, 0xef, 0xed, 0xe4, 0xe1, 0xe2,
524                 0xe5, 0xeb, 0xe8, 0xe6, 0xec, 0xe7, 0xe6, 0xec,
525                 0xe9, 0xe0, 0xe3, 0xe5, 0xe2, 0xee, 0xef, 0xe9,
526                 0x3f, 0x33, 0x31, 0x3d, 0x38, 0x34, 0x3e, 0x37,
527                 0x36, 0x3f, 0x3b, 0x32, 0x33, 0x38, 0x34, 0x3e,
528                 0x39, 0x3c, 0x37, 0x30, 0x32, 0x31, 0x3d, 0x3a,
529                 0x3c, 0x36, 0x30, 0x39, 0x35, 0x3b, 0x3a, 0x35,
530                 0x30, 0x3d, 0x3e, 0x38, 0x37, 0x3a, 0x3b, 0x31,
531                 0x3a, 0x33, 0x34, 0x3f, 0x3d, 0x34, 0x31, 0x32,
532                 0x35, 0x3b, 0x38, 0x36, 0x3c, 0x37, 0x36, 0x3c,
533                 0x39, 0x30, 0x33, 0x35, 0x32, 0x3e, 0x3f, 0x39,
534                 0xaf, 0xa3, 0xa1, 0xad, 0xa8, 0xa4, 0xae, 0xa7,
535                 0xa6, 0xaf, 0xab, 0xa2, 0xa3, 0xa8, 0xa4, 0xae,
536                 0xa9, 0xac, 0xa7, 0xa0, 0xa2, 0xa1, 0xad, 0xaa,
537                 0xac, 0xa6, 0xa0, 0xa9, 0xa5, 0xab, 0xaa, 0xa5,
538                 0xa0, 0xad, 0xae, 0xa8, 0xa7, 0xaa, 0xab, 0xa1,
539                 0xaa, 0xa3, 0xa4, 0xaf, 0xad, 0xa4, 0xa1, 0xa2,
540                 0xa5, 0xab, 0xa8, 0xa6, 0xac, 0xa7, 0xa6, 0xac,
541                 0xa9, 0xa0, 0xa3, 0xa5, 0xa2, 0xae, 0xaf, 0xa9,
542                 0xaf, 0xa3, 0xa1, 0xad, 0xa8, 0xa4, 0xae, 0xa7,
543                 0xa6, 0xaf, 0xab, 0xa2, 0xa3, 0xa8, 0xa4, 0xae,
544                 0xa9, 0xac, 0xa7, 0xa0, 0xa2, 0xa1, 0xad, 0xaa,
545                 0xac, 0xa6, 0xa0, 0xa9, 0xa5, 0xab, 0xaa, 0xa5,
546                 0xa0, 0xad, 0xae, 0xa8, 0xa7, 0xaa, 0xab, 0xa1,
547                 0xaa, 0xa3, 0xa4, 0xaf, 0xad, 0xa4, 0xa1, 0xa2,
548                 0xa5, 0xab, 0xa8, 0xa6, 0xac, 0xa7, 0xa6, 0xac,
549                 0xa9, 0xa0, 0xa3, 0xa5, 0xa2, 0xae, 0xaf, 0xa9,
550                 0x0f, 0x03, 0x01, 0x0d, 0x08, 0x04, 0x0e, 0x07,
551                 0x06, 0x0f, 0x0b, 0x02, 0x03, 0x08, 0x04, 0x0e,
552                 0x09, 0x0c, 0x07, 0x00, 0x02, 0x01, 0x0d, 0x0a,
553                 0x0c, 0x06, 0x00, 0x09, 0x05, 0x0b, 0x0a, 0x05,
554                 0x00, 0x0d, 0x0e, 0x08, 0x07, 0x0a, 0x0b, 0x01,
555                 0x0a, 0x03, 0x04, 0x0f, 0x0d, 0x04, 0x01, 0x02,
556                 0x05, 0x0b, 0x08, 0x06, 0x0c, 0x07, 0x06, 0x0c,
557                 0x09, 0x00, 0x03, 0x05, 0x02, 0x0e, 0x0f, 0x09,
558                 0x5f, 0x53, 0x51, 0x5d, 0x58, 0x54, 0x5e, 0x57,
559                 0x56, 0x5f, 0x5b, 0x52, 0x53, 0x58, 0x54, 0x5e,
560                 0x59, 0x5c, 0x57, 0x50, 0x52, 0x51, 0x5d, 0x5a,
561                 0x5c, 0x56, 0x50, 0x59, 0x55, 0x5b, 0x5a, 0x55,
562                 0x50, 0x5d, 0x5e, 0x58, 0x57, 0x5a, 0x5b, 0x51,
563                 0x5a, 0x53, 0x54, 0x5f, 0x5d, 0x54, 0x51, 0x52,
564                 0x55, 0x5b, 0x58, 0x56, 0x5c, 0x57, 0x56, 0x5c,
565                 0x59, 0x50, 0x53, 0x55, 0x52, 0x5e, 0x5f, 0x59,
566                 0x6f, 0x63, 0x61, 0x6d, 0x68, 0x64, 0x6e, 0x67,
567                 0x66, 0x6f, 0x6b, 0x62, 0x63, 0x68, 0x64, 0x6e,
568                 0x69, 0x6c, 0x67, 0x60, 0x62, 0x61, 0x6d, 0x6a,
569                 0x6c, 0x66, 0x60, 0x69, 0x65, 0x6b, 0x6a, 0x65,
570                 0x60, 0x6d, 0x6e, 0x68, 0x67, 0x6a, 0x6b, 0x61,
571                 0x6a, 0x63, 0x64, 0x6f, 0x6d, 0x64, 0x61, 0x62,
572                 0x65, 0x6b, 0x68, 0x66, 0x6c, 0x67, 0x66, 0x6c,
573                 0x69, 0x60, 0x63, 0x65, 0x62, 0x6e, 0x6f, 0x69,
574                 0x0f, 0x03, 0x01, 0x0d, 0x08, 0x04, 0x0e, 0x07,
575                 0x06, 0x0f, 0x0b, 0x02, 0x03, 0x08, 0x04, 0x0e,
576                 0x09, 0x0c, 0x07, 0x00, 0x02, 0x01, 0x0d, 0x0a,
577                 0x0c, 0x06, 0x00, 0x09, 0x05, 0x0b, 0x0a, 0x05,
578                 0x00, 0x0d, 0x0e, 0x08, 0x07, 0x0a, 0x0b, 0x01,
579                 0x0a, 0x03, 0x04, 0x0f, 0x0d, 0x04, 0x01, 0x02,
580                 0x05, 0x0b, 0x08, 0x06, 0x0c, 0x07, 0x06, 0x0c,
581                 0x09, 0x00, 0x03, 0x05, 0x02, 0x0e, 0x0f, 0x09,
582                 0xdf, 0xd3, 0xd1, 0xdd, 0xd8, 0xd4, 0xde, 0xd7,
583                 0xd6, 0xdf, 0xdb, 0xd2, 0xd3, 0xd8, 0xd4, 0xde,
584                 0xd9, 0xdc, 0xd7, 0xd0, 0xd2, 0xd1, 0xdd, 0xda,
585                 0xdc, 0xd6, 0xd0, 0xd9, 0xd5, 0xdb, 0xda, 0xd5,
586                 0xd0, 0xdd, 0xde, 0xd8, 0xd7, 0xda, 0xdb, 0xd1,
587                 0xda, 0xd3, 0xd4, 0xdf, 0xdd, 0xd4, 0xd1, 0xd2,
588                 0xd5, 0xdb, 0xd8, 0xd6, 0xdc, 0xd7, 0xd6, 0xdc,
589                 0xd9, 0xd0, 0xd3, 0xd5, 0xd2, 0xde, 0xdf, 0xd9,
590         },{
591                 0xa7, 0xad, 0xad, 0xa8, 0xae, 0xab, 0xa3, 0xa5,
592                 0xa0, 0xa6, 0xa6, 0xaf, 0xa9, 0xa0, 0xaa, 0xa3,
593                 0xa1, 0xa4, 0xa2, 0xa7, 0xa8, 0xa2, 0xa5, 0xac,
594                 0xab, 0xa1, 0xac, 0xaa, 0xa4, 0xae, 0xaf, 0xa9,
595                 0xaa, 0xa3, 0xa6, 0xaf, 0xa9, 0xa0, 0xa0, 0xa6,
596                 0xac, 0xaa, 0xab, 0xa1, 0xa7, 0xad, 0xad, 0xa8,
597                 0xaf, 0xa9, 0xa1, 0xa4, 0xa3, 0xa5, 0xae, 0xab,
598                 0xa5, 0xac, 0xa2, 0xa7, 0xa8, 0xa2, 0xa4, 0xae,
599                 0xd7, 0xdd, 0xdd, 0xd8, 0xde, 0xdb, 0xd3, 0xd5,
600                 0xd0, 0xd6, 0xd6, 0xdf, 0xd9, 0xd0, 0xda, 0xd3,
601                 0xd1, 0xd4, 0xd2, 0xd7, 0xd8, 0xd2, 0xd5, 0xdc,
602                 0xdb, 0xd1, 0xdc, 0xda, 0xd4, 0xde, 0xdf, 0xd9,
603                 0xda, 0xd3, 0xd6, 0xdf, 0xd9, 0xd0, 0xd0, 0xd6,
604                 0xdc, 0xda, 0xdb, 0xd1, 0xd7, 0xdd, 0xdd, 0xd8,
605                 0xdf, 0xd9, 0xd1, 0xd4, 0xd3, 0xd5, 0xde, 0xdb,
606                 0xd5, 0xdc, 0xd2, 0xd7, 0xd8, 0xd2, 0xd4, 0xde,
607                 0x07, 0x0d, 0x0d, 0x08, 0x0e, 0x0b, 0x03, 0x05,
608                 0x00, 0x06, 0x06, 0x0f, 0x09, 0x00, 0x0a, 0x03,
609                 0x01, 0x04, 0x02, 0x07, 0x08, 0x02, 0x05, 0x0c,
610                 0x0b, 0x01, 0x0c, 0x0a, 0x04, 0x0e, 0x0f, 0x09,
611                 0x0a, 0x03, 0x06, 0x0f, 0x09, 0x00, 0x00, 0x06,
612                 0x0c, 0x0a, 0x0b, 0x01, 0x07, 0x0d, 0x0d, 0x08,
613                 0x0f, 0x09, 0x01, 0x04, 0x03, 0x05, 0x0e, 0x0b,
614                 0x05, 0x0c, 0x02, 0x07, 0x08, 0x02, 0x04, 0x0e,
615                 0x77, 0x7d, 0x7d, 0x78, 0x7e, 0x7b, 0x73, 0x75,
616                 0x70, 0x76, 0x76, 0x7f, 0x79, 0x70, 0x7a, 0x73,
617                 0x71, 0x74, 0x72, 0x77, 0x78, 0x72, 0x75, 0x7c,
618                 0x7b, 0x71, 0x7c, 0x7a, 0x74, 0x7e, 0x7f, 0x79,
619                 0x7a, 0x73, 0x76, 0x7f, 0x79, 0x70, 0x70, 0x76,
620                 0x7c, 0x7a, 0x7b, 0x71, 0x77, 0x7d, 0x7d, 0x78,
621                 0x7f, 0x79, 0x71, 0x74, 0x73, 0x75, 0x7e, 0x7b,
622                 0x75, 0x7c, 0x72, 0x77, 0x78, 0x72, 0x74, 0x7e,
623                 0x97, 0x9d, 0x9d, 0x98, 0x9e, 0x9b, 0x93, 0x95,
624                 0x90, 0x96, 0x96, 0x9f, 0x99, 0x90, 0x9a, 0x93,
625                 0x91, 0x94, 0x92, 0x97, 0x98, 0x92, 0x95, 0x9c,
626                 0x9b, 0x91, 0x9c, 0x9a, 0x94, 0x9e, 0x9f, 0x99,
627                 0x9a, 0x93, 0x96, 0x9f, 0x99, 0x90, 0x90, 0x96,
628                 0x9c, 0x9a, 0x9b, 0x91, 0x97, 0x9d, 0x9d, 0x98,
629                 0x9f, 0x99, 0x91, 0x94, 0x93, 0x95, 0x9e, 0x9b,
630                 0x95, 0x9c, 0x92, 0x97, 0x98, 0x92, 0x94, 0x9e,
631                 0x07, 0x0d, 0x0d, 0x08, 0x0e, 0x0b, 0x03, 0x05,
632                 0x00, 0x06, 0x06, 0x0f, 0x09, 0x00, 0x0a, 0x03,
633                 0x01, 0x04, 0x02, 0x07, 0x08, 0x02, 0x05, 0x0c,
634                 0x0b, 0x01, 0x0c, 0x0a, 0x04, 0x0e, 0x0f, 0x09,
635                 0x0a, 0x03, 0x06, 0x0f, 0x09, 0x00, 0x00, 0x06,
636                 0x0c, 0x0a, 0x0b, 0x01, 0x07, 0x0d, 0x0d, 0x08,
637                 0x0f, 0x09, 0x01, 0x04, 0x03, 0x05, 0x0e, 0x0b,
638                 0x05, 0x0c, 0x02, 0x07, 0x08, 0x02, 0x04, 0x0e,
639                 0xe7, 0xed, 0xed, 0xe8, 0xee, 0xeb, 0xe3, 0xe5,
640                 0xe0, 0xe6, 0xe6, 0xef, 0xe9, 0xe0, 0xea, 0xe3,
641                 0xe1, 0xe4, 0xe2, 0xe7, 0xe8, 0xe2, 0xe5, 0xec,
642                 0xeb, 0xe1, 0xec, 0xea, 0xe4, 0xee, 0xef, 0xe9,
643                 0xea, 0xe3, 0xe6, 0xef, 0xe9, 0xe0, 0xe0, 0xe6,
644                 0xec, 0xea, 0xeb, 0xe1, 0xe7, 0xed, 0xed, 0xe8,
645                 0xef, 0xe9, 0xe1, 0xe4, 0xe3, 0xe5, 0xee, 0xeb,
646                 0xe5, 0xec, 0xe2, 0xe7, 0xe8, 0xe2, 0xe4, 0xee,
647                 0x97, 0x9d, 0x9d, 0x98, 0x9e, 0x9b, 0x93, 0x95,
648                 0x90, 0x96, 0x96, 0x9f, 0x99, 0x90, 0x9a, 0x93,
649                 0x91, 0x94, 0x92, 0x97, 0x98, 0x92, 0x95, 0x9c,
650                 0x9b, 0x91, 0x9c, 0x9a, 0x94, 0x9e, 0x9f, 0x99,
651                 0x9a, 0x93, 0x96, 0x9f, 0x99, 0x90, 0x90, 0x96,
652                 0x9c, 0x9a, 0x9b, 0x91, 0x97, 0x9d, 0x9d, 0x98,
653                 0x9f, 0x99, 0x91, 0x94, 0x93, 0x95, 0x9e, 0x9b,
654                 0x95, 0x9c, 0x92, 0x97, 0x98, 0x92, 0x94, 0x9e,
655                 0x67, 0x6d, 0x6d, 0x68, 0x6e, 0x6b, 0x63, 0x65,
656                 0x60, 0x66, 0x66, 0x6f, 0x69, 0x60, 0x6a, 0x63,
657                 0x61, 0x64, 0x62, 0x67, 0x68, 0x62, 0x65, 0x6c,
658                 0x6b, 0x61, 0x6c, 0x6a, 0x64, 0x6e, 0x6f, 0x69,
659                 0x6a, 0x63, 0x66, 0x6f, 0x69, 0x60, 0x60, 0x66,
660                 0x6c, 0x6a, 0x6b, 0x61, 0x67, 0x6d, 0x6d, 0x68,
661                 0x6f, 0x69, 0x61, 0x64, 0x63, 0x65, 0x6e, 0x6b,
662                 0x65, 0x6c, 0x62, 0x67, 0x68, 0x62, 0x64, 0x6e,
663                 0x37, 0x3d, 0x3d, 0x38, 0x3e, 0x3b, 0x33, 0x35,
664                 0x30, 0x36, 0x36, 0x3f, 0x39, 0x30, 0x3a, 0x33,
665                 0x31, 0x34, 0x32, 0x37, 0x38, 0x32, 0x35, 0x3c,
666                 0x3b, 0x31, 0x3c, 0x3a, 0x34, 0x3e, 0x3f, 0x39,
667                 0x3a, 0x33, 0x36, 0x3f, 0x39, 0x30, 0x30, 0x36,
668                 0x3c, 0x3a, 0x3b, 0x31, 0x37, 0x3d, 0x3d, 0x38,
669                 0x3f, 0x39, 0x31, 0x34, 0x33, 0x35, 0x3e, 0x3b,
670                 0x35, 0x3c, 0x32, 0x37, 0x38, 0x32, 0x34, 0x3e,
671                 0x37, 0x3d, 0x3d, 0x38, 0x3e, 0x3b, 0x33, 0x35,
672                 0x30, 0x36, 0x36, 0x3f, 0x39, 0x30, 0x3a, 0x33,
673                 0x31, 0x34, 0x32, 0x37, 0x38, 0x32, 0x35, 0x3c,
674                 0x3b, 0x31, 0x3c, 0x3a, 0x34, 0x3e, 0x3f, 0x39,
675                 0x3a, 0x33, 0x36, 0x3f, 0x39, 0x30, 0x30, 0x36,
676                 0x3c, 0x3a, 0x3b, 0x31, 0x37, 0x3d, 0x3d, 0x38,
677                 0x3f, 0x39, 0x31, 0x34, 0x33, 0x35, 0x3e, 0x3b,
678                 0x35, 0x3c, 0x32, 0x37, 0x38, 0x32, 0x34, 0x3e,
679                 0x47, 0x4d, 0x4d, 0x48, 0x4e, 0x4b, 0x43, 0x45,
680                 0x40, 0x46, 0x46, 0x4f, 0x49, 0x40, 0x4a, 0x43,
681                 0x41, 0x44, 0x42, 0x47, 0x48, 0x42, 0x45, 0x4c,
682                 0x4b, 0x41, 0x4c, 0x4a, 0x44, 0x4e, 0x4f, 0x49,
683                 0x4a, 0x43, 0x46, 0x4f, 0x49, 0x40, 0x40, 0x46,
684                 0x4c, 0x4a, 0x4b, 0x41, 0x47, 0x4d, 0x4d, 0x48,
685                 0x4f, 0x49, 0x41, 0x44, 0x43, 0x45, 0x4e, 0x4b,
686                 0x45, 0x4c, 0x42, 0x47, 0x48, 0x42, 0x44, 0x4e,
687                 0xf7, 0xfd, 0xfd, 0xf8, 0xfe, 0xfb, 0xf3, 0xf5,
688                 0xf0, 0xf6, 0xf6, 0xff, 0xf9, 0xf0, 0xfa, 0xf3,
689                 0xf1, 0xf4, 0xf2, 0xf7, 0xf8, 0xf2, 0xf5, 0xfc,
690                 0xfb, 0xf1, 0xfc, 0xfa, 0xf4, 0xfe, 0xff, 0xf9,
691                 0xfa, 0xf3, 0xf6, 0xff, 0xf9, 0xf0, 0xf0, 0xf6,
692                 0xfc, 0xfa, 0xfb, 0xf1, 0xf7, 0xfd, 0xfd, 0xf8,
693                 0xff, 0xf9, 0xf1, 0xf4, 0xf3, 0xf5, 0xfe, 0xfb,
694                 0xf5, 0xfc, 0xf2, 0xf7, 0xf8, 0xf2, 0xf4, 0xfe,
695                 0x67, 0x6d, 0x6d, 0x68, 0x6e, 0x6b, 0x63, 0x65,
696                 0x60, 0x66, 0x66, 0x6f, 0x69, 0x60, 0x6a, 0x63,
697                 0x61, 0x64, 0x62, 0x67, 0x68, 0x62, 0x65, 0x6c,
698                 0x6b, 0x61, 0x6c, 0x6a, 0x64, 0x6e, 0x6f, 0x69,
699                 0x6a, 0x63, 0x66, 0x6f, 0x69, 0x60, 0x60, 0x66,
700                 0x6c, 0x6a, 0x6b, 0x61, 0x67, 0x6d, 0x6d, 0x68,
701                 0x6f, 0x69, 0x61, 0x64, 0x63, 0x65, 0x6e, 0x6b,
702                 0x65, 0x6c, 0x62, 0x67, 0x68, 0x62, 0x64, 0x6e,
703                 0x57, 0x5d, 0x5d, 0x58, 0x5e, 0x5b, 0x53, 0x55,
704                 0x50, 0x56, 0x56, 0x5f, 0x59, 0x50, 0x5a, 0x53,
705                 0x51, 0x54, 0x52, 0x57, 0x58, 0x52, 0x55, 0x5c,
706                 0x5b, 0x51, 0x5c, 0x5a, 0x54, 0x5e, 0x5f, 0x59,
707                 0x5a, 0x53, 0x56, 0x5f, 0x59, 0x50, 0x50, 0x56,
708                 0x5c, 0x5a, 0x5b, 0x51, 0x57, 0x5d, 0x5d, 0x58,
709                 0x5f, 0x59, 0x51, 0x54, 0x53, 0x55, 0x5e, 0x5b,
710                 0x55, 0x5c, 0x52, 0x57, 0x58, 0x52, 0x54, 0x5e,
711                 0xa7, 0xad, 0xad, 0xa8, 0xae, 0xab, 0xa3, 0xa5,
712                 0xa0, 0xa6, 0xa6, 0xaf, 0xa9, 0xa0, 0xaa, 0xa3,
713                 0xa1, 0xa4, 0xa2, 0xa7, 0xa8, 0xa2, 0xa5, 0xac,
714                 0xab, 0xa1, 0xac, 0xaa, 0xa4, 0xae, 0xaf, 0xa9,
715                 0xaa, 0xa3, 0xa6, 0xaf, 0xa9, 0xa0, 0xa0, 0xa6,
716                 0xac, 0xaa, 0xab, 0xa1, 0xa7, 0xad, 0xad, 0xa8,
717                 0xaf, 0xa9, 0xa1, 0xa4, 0xa3, 0xa5, 0xae, 0xab,
718                 0xa5, 0xac, 0xa2, 0xa7, 0xa8, 0xa2, 0xa4, 0xae,
719                 0x17, 0x1d, 0x1d, 0x18, 0x1e, 0x1b, 0x13, 0x15,
720                 0x10, 0x16, 0x16, 0x1f, 0x19, 0x10, 0x1a, 0x13,
721                 0x11, 0x14, 0x12, 0x17, 0x18, 0x12, 0x15, 0x1c,
722                 0x1b, 0x11, 0x1c, 0x1a, 0x14, 0x1e, 0x1f, 0x19,
723                 0x1a, 0x13, 0x16, 0x1f, 0x19, 0x10, 0x10, 0x16,
724                 0x1c, 0x1a, 0x1b, 0x11, 0x17, 0x1d, 0x1d, 0x18,
725                 0x1f, 0x19, 0x11, 0x14, 0x13, 0x15, 0x1e, 0x1b,
726                 0x15, 0x1c, 0x12, 0x17, 0x18, 0x12, 0x14, 0x1e,
727                 0x27, 0x2d, 0x2d, 0x28, 0x2e, 0x2b, 0x23, 0x25,
728                 0x20, 0x26, 0x26, 0x2f, 0x29, 0x20, 0x2a, 0x23,
729                 0x21, 0x24, 0x22, 0x27, 0x28, 0x22, 0x25, 0x2c,
730                 0x2b, 0x21, 0x2c, 0x2a, 0x24, 0x2e, 0x2f, 0x29,
731                 0x2a, 0x23, 0x26, 0x2f, 0x29, 0x20, 0x20, 0x26,
732                 0x2c, 0x2a, 0x2b, 0x21, 0x27, 0x2d, 0x2d, 0x28,
733                 0x2f, 0x29, 0x21, 0x24, 0x23, 0x25, 0x2e, 0x2b,
734                 0x25, 0x2c, 0x22, 0x27, 0x28, 0x22, 0x24, 0x2e,
735                 0xd7, 0xdd, 0xdd, 0xd8, 0xde, 0xdb, 0xd3, 0xd5,
736                 0xd0, 0xd6, 0xd6, 0xdf, 0xd9, 0xd0, 0xda, 0xd3,
737                 0xd1, 0xd4, 0xd2, 0xd7, 0xd8, 0xd2, 0xd5, 0xdc,
738                 0xdb, 0xd1, 0xdc, 0xda, 0xd4, 0xde, 0xdf, 0xd9,
739                 0xda, 0xd3, 0xd6, 0xdf, 0xd9, 0xd0, 0xd0, 0xd6,
740                 0xdc, 0xda, 0xdb, 0xd1, 0xd7, 0xdd, 0xdd, 0xd8,
741                 0xdf, 0xd9, 0xd1, 0xd4, 0xd3, 0xd5, 0xde, 0xdb,
742                 0xd5, 0xdc, 0xd2, 0xd7, 0xd8, 0xd2, 0xd4, 0xde,
743                 0x87, 0x8d, 0x8d, 0x88, 0x8e, 0x8b, 0x83, 0x85,
744                 0x80, 0x86, 0x86, 0x8f, 0x89, 0x80, 0x8a, 0x83,
745                 0x81, 0x84, 0x82, 0x87, 0x88, 0x82, 0x85, 0x8c,
746                 0x8b, 0x81, 0x8c, 0x8a, 0x84, 0x8e, 0x8f, 0x89,
747                 0x8a, 0x83, 0x86, 0x8f, 0x89, 0x80, 0x80, 0x86,
748                 0x8c, 0x8a, 0x8b, 0x81, 0x87, 0x8d, 0x8d, 0x88,
749                 0x8f, 0x89, 0x81, 0x84, 0x83, 0x85, 0x8e, 0x8b,
750                 0x85, 0x8c, 0x82, 0x87, 0x88, 0x82, 0x84, 0x8e,
751                 0xc7, 0xcd, 0xcd, 0xc8, 0xce, 0xcb, 0xc3, 0xc5,
752                 0xc0, 0xc6, 0xc6, 0xcf, 0xc9, 0xc0, 0xca, 0xc3,
753                 0xc1, 0xc4, 0xc2, 0xc7, 0xc8, 0xc2, 0xc5, 0xcc,
754                 0xcb, 0xc1, 0xcc, 0xca, 0xc4, 0xce, 0xcf, 0xc9,
755                 0xca, 0xc3, 0xc6, 0xcf, 0xc9, 0xc0, 0xc0, 0xc6,
756                 0xcc, 0xca, 0xcb, 0xc1, 0xc7, 0xcd, 0xcd, 0xc8,
757                 0xcf, 0xc9, 0xc1, 0xc4, 0xc3, 0xc5, 0xce, 0xcb,
758                 0xc5, 0xcc, 0xc2, 0xc7, 0xc8, 0xc2, 0xc4, 0xce,
759                 0x57, 0x5d, 0x5d, 0x58, 0x5e, 0x5b, 0x53, 0x55,
760                 0x50, 0x56, 0x56, 0x5f, 0x59, 0x50, 0x5a, 0x53,
761                 0x51, 0x54, 0x52, 0x57, 0x58, 0x52, 0x55, 0x5c,
762                 0x5b, 0x51, 0x5c, 0x5a, 0x54, 0x5e, 0x5f, 0x59,
763                 0x5a, 0x53, 0x56, 0x5f, 0x59, 0x50, 0x50, 0x56,
764                 0x5c, 0x5a, 0x5b, 0x51, 0x57, 0x5d, 0x5d, 0x58,
765                 0x5f, 0x59, 0x51, 0x54, 0x53, 0x55, 0x5e, 0x5b,
766                 0x55, 0x5c, 0x52, 0x57, 0x58, 0x52, 0x54, 0x5e,
767                 0x77, 0x7d, 0x7d, 0x78, 0x7e, 0x7b, 0x73, 0x75,
768                 0x70, 0x76, 0x76, 0x7f, 0x79, 0x70, 0x7a, 0x73,
769                 0x71, 0x74, 0x72, 0x77, 0x78, 0x72, 0x75, 0x7c,
770                 0x7b, 0x71, 0x7c, 0x7a, 0x74, 0x7e, 0x7f, 0x79,
771                 0x7a, 0x73, 0x76, 0x7f, 0x79, 0x70, 0x70, 0x76,
772                 0x7c, 0x7a, 0x7b, 0x71, 0x77, 0x7d, 0x7d, 0x78,
773                 0x7f, 0x79, 0x71, 0x74, 0x73, 0x75, 0x7e, 0x7b,
774                 0x75, 0x7c, 0x72, 0x77, 0x78, 0x72, 0x74, 0x7e,
775                 0xe7, 0xed, 0xed, 0xe8, 0xee, 0xeb, 0xe3, 0xe5,
776                 0xe0, 0xe6, 0xe6, 0xef, 0xe9, 0xe0, 0xea, 0xe3,
777                 0xe1, 0xe4, 0xe2, 0xe7, 0xe8, 0xe2, 0xe5, 0xec,
778                 0xeb, 0xe1, 0xec, 0xea, 0xe4, 0xee, 0xef, 0xe9,
779                 0xea, 0xe3, 0xe6, 0xef, 0xe9, 0xe0, 0xe0, 0xe6,
780                 0xec, 0xea, 0xeb, 0xe1, 0xe7, 0xed, 0xed, 0xe8,
781                 0xef, 0xe9, 0xe1, 0xe4, 0xe3, 0xe5, 0xee, 0xeb,
782                 0xe5, 0xec, 0xe2, 0xe7, 0xe8, 0xe2, 0xe4, 0xee,
783                 0xb7, 0xbd, 0xbd, 0xb8, 0xbe, 0xbb, 0xb3, 0xb5,
784                 0xb0, 0xb6, 0xb6, 0xbf, 0xb9, 0xb0, 0xba, 0xb3,
785                 0xb1, 0xb4, 0xb2, 0xb7, 0xb8, 0xb2, 0xb5, 0xbc,
786                 0xbb, 0xb1, 0xbc, 0xba, 0xb4, 0xbe, 0xbf, 0xb9,
787                 0xba, 0xb3, 0xb6, 0xbf, 0xb9, 0xb0, 0xb0, 0xb6,
788                 0xbc, 0xba, 0xbb, 0xb1, 0xb7, 0xbd, 0xbd, 0xb8,
789                 0xbf, 0xb9, 0xb1, 0xb4, 0xb3, 0xb5, 0xbe, 0xbb,
790                 0xb5, 0xbc, 0xb2, 0xb7, 0xb8, 0xb2, 0xb4, 0xbe,
791                 0xc7, 0xcd, 0xcd, 0xc8, 0xce, 0xcb, 0xc3, 0xc5,
792                 0xc0, 0xc6, 0xc6, 0xcf, 0xc9, 0xc0, 0xca, 0xc3,
793                 0xc1, 0xc4, 0xc2, 0xc7, 0xc8, 0xc2, 0xc5, 0xcc,
794                 0xcb, 0xc1, 0xcc, 0xca, 0xc4, 0xce, 0xcf, 0xc9,
795                 0xca, 0xc3, 0xc6, 0xcf, 0xc9, 0xc0, 0xc0, 0xc6,
796                 0xcc, 0xca, 0xcb, 0xc1, 0xc7, 0xcd, 0xcd, 0xc8,
797                 0xcf, 0xc9, 0xc1, 0xc4, 0xc3, 0xc5, 0xce, 0xcb,
798                 0xc5, 0xcc, 0xc2, 0xc7, 0xc8, 0xc2, 0xc4, 0xce,
799                 0x47, 0x4d, 0x4d, 0x48, 0x4e, 0x4b, 0x43, 0x45,
800                 0x40, 0x46, 0x46, 0x4f, 0x49, 0x40, 0x4a, 0x43,
801                 0x41, 0x44, 0x42, 0x47, 0x48, 0x42, 0x45, 0x4c,
802                 0x4b, 0x41, 0x4c, 0x4a, 0x44, 0x4e, 0x4f, 0x49,
803                 0x4a, 0x43, 0x46, 0x4f, 0x49, 0x40, 0x40, 0x46,
804                 0x4c, 0x4a, 0x4b, 0x41, 0x47, 0x4d, 0x4d, 0x48,
805                 0x4f, 0x49, 0x41, 0x44, 0x43, 0x45, 0x4e, 0x4b,
806                 0x45, 0x4c, 0x42, 0x47, 0x48, 0x42, 0x44, 0x4e,
807                 0xb7, 0xbd, 0xbd, 0xb8, 0xbe, 0xbb, 0xb3, 0xb5,
808                 0xb0, 0xb6, 0xb6, 0xbf, 0xb9, 0xb0, 0xba, 0xb3,
809                 0xb1, 0xb4, 0xb2, 0xb7, 0xb8, 0xb2, 0xb5, 0xbc,
810                 0xbb, 0xb1, 0xbc, 0xba, 0xb4, 0xbe, 0xbf, 0xb9,
811                 0xba, 0xb3, 0xb6, 0xbf, 0xb9, 0xb0, 0xb0, 0xb6,
812                 0xbc, 0xba, 0xbb, 0xb1, 0xb7, 0xbd, 0xbd, 0xb8,
813                 0xbf, 0xb9, 0xb1, 0xb4, 0xb3, 0xb5, 0xbe, 0xbb,
814                 0xb5, 0xbc, 0xb2, 0xb7, 0xb8, 0xb2, 0xb4, 0xbe,
815                 0x27, 0x2d, 0x2d, 0x28, 0x2e, 0x2b, 0x23, 0x25,
816                 0x20, 0x26, 0x26, 0x2f, 0x29, 0x20, 0x2a, 0x23,
817                 0x21, 0x24, 0x22, 0x27, 0x28, 0x22, 0x25, 0x2c,
818                 0x2b, 0x21, 0x2c, 0x2a, 0x24, 0x2e, 0x2f, 0x29,
819                 0x2a, 0x23, 0x26, 0x2f, 0x29, 0x20, 0x20, 0x26,
820                 0x2c, 0x2a, 0x2b, 0x21, 0x27, 0x2d, 0x2d, 0x28,
821                 0x2f, 0x29, 0x21, 0x24, 0x23, 0x25, 0x2e, 0x2b,
822                 0x25, 0x2c, 0x22, 0x27, 0x28, 0x22, 0x24, 0x2e,
823                 0xf7, 0xfd, 0xfd, 0xf8, 0xfe, 0xfb, 0xf3, 0xf5,
824                 0xf0, 0xf6, 0xf6, 0xff, 0xf9, 0xf0, 0xfa, 0xf3,
825                 0xf1, 0xf4, 0xf2, 0xf7, 0xf8, 0xf2, 0xf5, 0xfc,
826                 0xfb, 0xf1, 0xfc, 0xfa, 0xf4, 0xfe, 0xff, 0xf9,
827                 0xfa, 0xf3, 0xf6, 0xff, 0xf9, 0xf0, 0xf0, 0xf6,
828                 0xfc, 0xfa, 0xfb, 0xf1, 0xf7, 0xfd, 0xfd, 0xf8,
829                 0xff, 0xf9, 0xf1, 0xf4, 0xf3, 0xf5, 0xfe, 0xfb,
830                 0xf5, 0xfc, 0xf2, 0xf7, 0xf8, 0xf2, 0xf4, 0xfe,
831                 0x87, 0x8d, 0x8d, 0x88, 0x8e, 0x8b, 0x83, 0x85,
832                 0x80, 0x86, 0x86, 0x8f, 0x89, 0x80, 0x8a, 0x83,
833                 0x81, 0x84, 0x82, 0x87, 0x88, 0x82, 0x85, 0x8c,
834                 0x8b, 0x81, 0x8c, 0x8a, 0x84, 0x8e, 0x8f, 0x89,
835                 0x8a, 0x83, 0x86, 0x8f, 0x89, 0x80, 0x80, 0x86,
836                 0x8c, 0x8a, 0x8b, 0x81, 0x87, 0x8d, 0x8d, 0x88,
837                 0x8f, 0x89, 0x81, 0x84, 0x83, 0x85, 0x8e, 0x8b,
838                 0x85, 0x8c, 0x82, 0x87, 0x88, 0x82, 0x84, 0x8e,
839                 0x17, 0x1d, 0x1d, 0x18, 0x1e, 0x1b, 0x13, 0x15,
840                 0x10, 0x16, 0x16, 0x1f, 0x19, 0x10, 0x1a, 0x13,
841                 0x11, 0x14, 0x12, 0x17, 0x18, 0x12, 0x15, 0x1c,
842                 0x1b, 0x11, 0x1c, 0x1a, 0x14, 0x1e, 0x1f, 0x19,
843                 0x1a, 0x13, 0x16, 0x1f, 0x19, 0x10, 0x10, 0x16,
844                 0x1c, 0x1a, 0x1b, 0x11, 0x17, 0x1d, 0x1d, 0x18,
845                 0x1f, 0x19, 0x11, 0x14, 0x13, 0x15, 0x1e, 0x1b,
846                 0x15, 0x1c, 0x12, 0x17, 0x18, 0x12, 0x14, 0x1e,
847                 0xd7, 0xdd, 0xdd, 0xd8, 0xde, 0xdb, 0xd3, 0xd5,
848                 0xd0, 0xd6, 0xd6, 0xdf, 0xd9, 0xd0, 0xda, 0xd3,
849                 0xd1, 0xd4, 0xd2, 0xd7, 0xd8, 0xd2, 0xd5, 0xdc,
850                 0xdb, 0xd1, 0xdc, 0xda, 0xd4, 0xde, 0xdf, 0xd9,
851                 0xda, 0xd3, 0xd6, 0xdf, 0xd9, 0xd0, 0xd0, 0xd6,
852                 0xdc, 0xda, 0xdb, 0xd1, 0xd7, 0xdd, 0xdd, 0xd8,
853                 0xdf, 0xd9, 0xd1, 0xd4, 0xd3, 0xd5, 0xde, 0xdb,
854                 0xd5, 0xdc, 0xd2, 0xd7, 0xd8, 0xd2, 0xd4, 0xde,
855                 0x17, 0x1d, 0x1d, 0x18, 0x1e, 0x1b, 0x13, 0x15,
856                 0x10, 0x16, 0x16, 0x1f, 0x19, 0x10, 0x1a, 0x13,
857                 0x11, 0x14, 0x12, 0x17, 0x18, 0x12, 0x15, 0x1c,
858                 0x1b, 0x11, 0x1c, 0x1a, 0x14, 0x1e, 0x1f, 0x19,
859                 0x1a, 0x13, 0x16, 0x1f, 0x19, 0x10, 0x10, 0x16,
860                 0x1c, 0x1a, 0x1b, 0x11, 0x17, 0x1d, 0x1d, 0x18,
861                 0x1f, 0x19, 0x11, 0x14, 0x13, 0x15, 0x1e, 0x1b,
862                 0x15, 0x1c, 0x12, 0x17, 0x18, 0x12, 0x14, 0x1e,
863                 0x67, 0x6d, 0x6d, 0x68, 0x6e, 0x6b, 0x63, 0x65,
864                 0x60, 0x66, 0x66, 0x6f, 0x69, 0x60, 0x6a, 0x63,
865                 0x61, 0x64, 0x62, 0x67, 0x68, 0x62, 0x65, 0x6c,
866                 0x6b, 0x61, 0x6c, 0x6a, 0x64, 0x6e, 0x6f, 0x69,
867                 0x6a, 0x63, 0x66, 0x6f, 0x69, 0x60, 0x60, 0x66,
868                 0x6c, 0x6a, 0x6b, 0x61, 0x67, 0x6d, 0x6d, 0x68,
869                 0x6f, 0x69, 0x61, 0x64, 0x63, 0x65, 0x6e, 0x6b,
870                 0x65, 0x6c, 0x62, 0x67, 0x68, 0x62, 0x64, 0x6e,
871                 0xa7, 0xad, 0xad, 0xa8, 0xae, 0xab, 0xa3, 0xa5,
872                 0xa0, 0xa6, 0xa6, 0xaf, 0xa9, 0xa0, 0xaa, 0xa3,
873                 0xa1, 0xa4, 0xa2, 0xa7, 0xa8, 0xa2, 0xa5, 0xac,
874                 0xab, 0xa1, 0xac, 0xaa, 0xa4, 0xae, 0xaf, 0xa9,
875                 0xaa, 0xa3, 0xa6, 0xaf, 0xa9, 0xa0, 0xa0, 0xa6,
876                 0xac, 0xaa, 0xab, 0xa1, 0xa7, 0xad, 0xad, 0xa8,
877                 0xaf, 0xa9, 0xa1, 0xa4, 0xa3, 0xa5, 0xae, 0xab,
878                 0xa5, 0xac, 0xa2, 0xa7, 0xa8, 0xa2, 0xa4, 0xae,
879                 0x47, 0x4d, 0x4d, 0x48, 0x4e, 0x4b, 0x43, 0x45,
880                 0x40, 0x46, 0x46, 0x4f, 0x49, 0x40, 0x4a, 0x43,
881                 0x41, 0x44, 0x42, 0x47, 0x48, 0x42, 0x45, 0x4c,
882                 0x4b, 0x41, 0x4c, 0x4a, 0x44, 0x4e, 0x4f, 0x49,
883                 0x4a, 0x43, 0x46, 0x4f, 0x49, 0x40, 0x40, 0x46,
884                 0x4c, 0x4a, 0x4b, 0x41, 0x47, 0x4d, 0x4d, 0x48,
885                 0x4f, 0x49, 0x41, 0x44, 0x43, 0x45, 0x4e, 0x4b,
886                 0x45, 0x4c, 0x42, 0x47, 0x48, 0x42, 0x44, 0x4e,
887                 0xd7, 0xdd, 0xdd, 0xd8, 0xde, 0xdb, 0xd3, 0xd5,
888                 0xd0, 0xd6, 0xd6, 0xdf, 0xd9, 0xd0, 0xda, 0xd3,
889                 0xd1, 0xd4, 0xd2, 0xd7, 0xd8, 0xd2, 0xd5, 0xdc,
890                 0xdb, 0xd1, 0xdc, 0xda, 0xd4, 0xde, 0xdf, 0xd9,
891                 0xda, 0xd3, 0xd6, 0xdf, 0xd9, 0xd0, 0xd0, 0xd6,
892                 0xdc, 0xda, 0xdb, 0xd1, 0xd7, 0xdd, 0xdd, 0xd8,
893                 0xdf, 0xd9, 0xd1, 0xd4, 0xd3, 0xd5, 0xde, 0xdb,
894                 0xd5, 0xdc, 0xd2, 0xd7, 0xd8, 0xd2, 0xd4, 0xde,
895                 0x97, 0x9d, 0x9d, 0x98, 0x9e, 0x9b, 0x93, 0x95,
896                 0x90, 0x96, 0x96, 0x9f, 0x99, 0x90, 0x9a, 0x93,
897                 0x91, 0x94, 0x92, 0x97, 0x98, 0x92, 0x95, 0x9c,
898                 0x9b, 0x91, 0x9c, 0x9a, 0x94, 0x9e, 0x9f, 0x99,
899                 0x9a, 0x93, 0x96, 0x9f, 0x99, 0x90, 0x90, 0x96,
900                 0x9c, 0x9a, 0x9b, 0x91, 0x97, 0x9d, 0x9d, 0x98,
901                 0x9f, 0x99, 0x91, 0x94, 0x93, 0x95, 0x9e, 0x9b,
902                 0x95, 0x9c, 0x92, 0x97, 0x98, 0x92, 0x94, 0x9e,
903                 0x07, 0x0d, 0x0d, 0x08, 0x0e, 0x0b, 0x03, 0x05,
904                 0x00, 0x06, 0x06, 0x0f, 0x09, 0x00, 0x0a, 0x03,
905                 0x01, 0x04, 0x02, 0x07, 0x08, 0x02, 0x05, 0x0c,
906                 0x0b, 0x01, 0x0c, 0x0a, 0x04, 0x0e, 0x0f, 0x09,
907                 0x0a, 0x03, 0x06, 0x0f, 0x09, 0x00, 0x00, 0x06,
908                 0x0c, 0x0a, 0x0b, 0x01, 0x07, 0x0d, 0x0d, 0x08,
909                 0x0f, 0x09, 0x01, 0x04, 0x03, 0x05, 0x0e, 0x0b,
910                 0x05, 0x0c, 0x02, 0x07, 0x08, 0x02, 0x04, 0x0e,
911                 0x87, 0x8d, 0x8d, 0x88, 0x8e, 0x8b, 0x83, 0x85,
912                 0x80, 0x86, 0x86, 0x8f, 0x89, 0x80, 0x8a, 0x83,
913                 0x81, 0x84, 0x82, 0x87, 0x88, 0x82, 0x85, 0x8c,
914                 0x8b, 0x81, 0x8c, 0x8a, 0x84, 0x8e, 0x8f, 0x89,
915                 0x8a, 0x83, 0x86, 0x8f, 0x89, 0x80, 0x80, 0x86,
916                 0x8c, 0x8a, 0x8b, 0x81, 0x87, 0x8d, 0x8d, 0x88,
917                 0x8f, 0x89, 0x81, 0x84, 0x83, 0x85, 0x8e, 0x8b,
918                 0x85, 0x8c, 0x82, 0x87, 0x88, 0x82, 0x84, 0x8e,
919                 0x67, 0x6d, 0x6d, 0x68, 0x6e, 0x6b, 0x63, 0x65,
920                 0x60, 0x66, 0x66, 0x6f, 0x69, 0x60, 0x6a, 0x63,
921                 0x61, 0x64, 0x62, 0x67, 0x68, 0x62, 0x65, 0x6c,
922                 0x6b, 0x61, 0x6c, 0x6a, 0x64, 0x6e, 0x6f, 0x69,
923                 0x6a, 0x63, 0x66, 0x6f, 0x69, 0x60, 0x60, 0x66,
924                 0x6c, 0x6a, 0x6b, 0x61, 0x67, 0x6d, 0x6d, 0x68,
925                 0x6f, 0x69, 0x61, 0x64, 0x63, 0x65, 0x6e, 0x6b,
926                 0x65, 0x6c, 0x62, 0x67, 0x68, 0x62, 0x64, 0x6e,
927                 0xf7, 0xfd, 0xfd, 0xf8, 0xfe, 0xfb, 0xf3, 0xf5,
928                 0xf0, 0xf6, 0xf6, 0xff, 0xf9, 0xf0, 0xfa, 0xf3,
929                 0xf1, 0xf4, 0xf2, 0xf7, 0xf8, 0xf2, 0xf5, 0xfc,
930                 0xfb, 0xf1, 0xfc, 0xfa, 0xf4, 0xfe, 0xff, 0xf9,
931                 0xfa, 0xf3, 0xf6, 0xff, 0xf9, 0xf0, 0xf0, 0xf6,
932                 0xfc, 0xfa, 0xfb, 0xf1, 0xf7, 0xfd, 0xfd, 0xf8,
933                 0xff, 0xf9, 0xf1, 0xf4, 0xf3, 0xf5, 0xfe, 0xfb,
934                 0xf5, 0xfc, 0xf2, 0xf7, 0xf8, 0xf2, 0xf4, 0xfe,
935                 0x97, 0x9d, 0x9d, 0x98, 0x9e, 0x9b, 0x93, 0x95,
936                 0x90, 0x96, 0x96, 0x9f, 0x99, 0x90, 0x9a, 0x93,
937                 0x91, 0x94, 0x92, 0x97, 0x98, 0x92, 0x95, 0x9c,
938                 0x9b, 0x91, 0x9c, 0x9a, 0x94, 0x9e, 0x9f, 0x99,
939                 0x9a, 0x93, 0x96, 0x9f, 0x99, 0x90, 0x90, 0x96,
940                 0x9c, 0x9a, 0x9b, 0x91, 0x97, 0x9d, 0x9d, 0x98,
941                 0x9f, 0x99, 0x91, 0x94, 0x93, 0x95, 0x9e, 0x9b,
942                 0x95, 0x9c, 0x92, 0x97, 0x98, 0x92, 0x94, 0x9e,
943                 0x37, 0x3d, 0x3d, 0x38, 0x3e, 0x3b, 0x33, 0x35,
944                 0x30, 0x36, 0x36, 0x3f, 0x39, 0x30, 0x3a, 0x33,
945                 0x31, 0x34, 0x32, 0x37, 0x38, 0x32, 0x35, 0x3c,
946                 0x3b, 0x31, 0x3c, 0x3a, 0x34, 0x3e, 0x3f, 0x39,
947                 0x3a, 0x33, 0x36, 0x3f, 0x39, 0x30, 0x30, 0x36,
948                 0x3c, 0x3a, 0x3b, 0x31, 0x37, 0x3d, 0x3d, 0x38,
949                 0x3f, 0x39, 0x31, 0x34, 0x33, 0x35, 0x3e, 0x3b,
950                 0x35, 0x3c, 0x32, 0x37, 0x38, 0x32, 0x34, 0x3e,
951                 0x87, 0x8d, 0x8d, 0x88, 0x8e, 0x8b, 0x83, 0x85,
952                 0x80, 0x86, 0x86, 0x8f, 0x89, 0x80, 0x8a, 0x83,
953                 0x81, 0x84, 0x82, 0x87, 0x88, 0x82, 0x85, 0x8c,
954                 0x8b, 0x81, 0x8c, 0x8a, 0x84, 0x8e, 0x8f, 0x89,
955                 0x8a, 0x83, 0x86, 0x8f, 0x89, 0x80, 0x80, 0x86,
956                 0x8c, 0x8a, 0x8b, 0x81, 0x87, 0x8d, 0x8d, 0x88,
957                 0x8f, 0x89, 0x81, 0x84, 0x83, 0x85, 0x8e, 0x8b,
958                 0x85, 0x8c, 0x82, 0x87, 0x88, 0x82, 0x84, 0x8e,
959                 0x07, 0x0d, 0x0d, 0x08, 0x0e, 0x0b, 0x03, 0x05,
960                 0x00, 0x06, 0x06, 0x0f, 0x09, 0x00, 0x0a, 0x03,
961                 0x01, 0x04, 0x02, 0x07, 0x08, 0x02, 0x05, 0x0c,
962                 0x0b, 0x01, 0x0c, 0x0a, 0x04, 0x0e, 0x0f, 0x09,
963                 0x0a, 0x03, 0x06, 0x0f, 0x09, 0x00, 0x00, 0x06,
964                 0x0c, 0x0a, 0x0b, 0x01, 0x07, 0x0d, 0x0d, 0x08,
965                 0x0f, 0x09, 0x01, 0x04, 0x03, 0x05, 0x0e, 0x0b,
966                 0x05, 0x0c, 0x02, 0x07, 0x08, 0x02, 0x04, 0x0e,
967                 0x77, 0x7d, 0x7d, 0x78, 0x7e, 0x7b, 0x73, 0x75,
968                 0x70, 0x76, 0x76, 0x7f, 0x79, 0x70, 0x7a, 0x73,
969                 0x71, 0x74, 0x72, 0x77, 0x78, 0x72, 0x75, 0x7c,
970                 0x7b, 0x71, 0x7c, 0x7a, 0x74, 0x7e, 0x7f, 0x79,
971                 0x7a, 0x73, 0x76, 0x7f, 0x79, 0x70, 0x70, 0x76,
972                 0x7c, 0x7a, 0x7b, 0x71, 0x77, 0x7d, 0x7d, 0x78,
973                 0x7f, 0x79, 0x71, 0x74, 0x73, 0x75, 0x7e, 0x7b,
974                 0x75, 0x7c, 0x72, 0x77, 0x78, 0x72, 0x74, 0x7e,
975                 0xb7, 0xbd, 0xbd, 0xb8, 0xbe, 0xbb, 0xb3, 0xb5,
976                 0xb0, 0xb6, 0xb6, 0xbf, 0xb9, 0xb0, 0xba, 0xb3,
977                 0xb1, 0xb4, 0xb2, 0xb7, 0xb8, 0xb2, 0xb5, 0xbc,
978                 0xbb, 0xb1, 0xbc, 0xba, 0xb4, 0xbe, 0xbf, 0xb9,
979                 0xba, 0xb3, 0xb6, 0xbf, 0xb9, 0xb0, 0xb0, 0xb6,
980                 0xbc, 0xba, 0xbb, 0xb1, 0xb7, 0xbd, 0xbd, 0xb8,
981                 0xbf, 0xb9, 0xb1, 0xb4, 0xb3, 0xb5, 0xbe, 0xbb,
982                 0xb5, 0xbc, 0xb2, 0xb7, 0xb8, 0xb2, 0xb4, 0xbe,
983                 0x47, 0x4d, 0x4d, 0x48, 0x4e, 0x4b, 0x43, 0x45,
984                 0x40, 0x46, 0x46, 0x4f, 0x49, 0x40, 0x4a, 0x43,
985                 0x41, 0x44, 0x42, 0x47, 0x48, 0x42, 0x45, 0x4c,
986                 0x4b, 0x41, 0x4c, 0x4a, 0x44, 0x4e, 0x4f, 0x49,
987                 0x4a, 0x43, 0x46, 0x4f, 0x49, 0x40, 0x40, 0x46,
988                 0x4c, 0x4a, 0x4b, 0x41, 0x47, 0x4d, 0x4d, 0x48,
989                 0x4f, 0x49, 0x41, 0x44, 0x43, 0x45, 0x4e, 0x4b,
990                 0x45, 0x4c, 0x42, 0x47, 0x48, 0x42, 0x44, 0x4e,
991                 0x17, 0x1d, 0x1d, 0x18, 0x1e, 0x1b, 0x13, 0x15,
992                 0x10, 0x16, 0x16, 0x1f, 0x19, 0x10, 0x1a, 0x13,
993                 0x11, 0x14, 0x12, 0x17, 0x18, 0x12, 0x15, 0x1c,
994                 0x1b, 0x11, 0x1c, 0x1a, 0x14, 0x1e, 0x1f, 0x19,
995                 0x1a, 0x13, 0x16, 0x1f, 0x19, 0x10, 0x10, 0x16,
996                 0x1c, 0x1a, 0x1b, 0x11, 0x17, 0x1d, 0x1d, 0x18,
997                 0x1f, 0x19, 0x11, 0x14, 0x13, 0x15, 0x1e, 0x1b,
998                 0x15, 0x1c, 0x12, 0x17, 0x18, 0x12, 0x14, 0x1e,
999                 0xf7, 0xfd, 0xfd, 0xf8, 0xfe, 0xfb, 0xf3, 0xf5,
1000                 0xf0, 0xf6, 0xf6, 0xff, 0xf9, 0xf0, 0xfa, 0xf3,
1001                 0xf1, 0xf4, 0xf2, 0xf7, 0xf8, 0xf2, 0xf5, 0xfc,
1002                 0xfb, 0xf1, 0xfc, 0xfa, 0xf4, 0xfe, 0xff, 0xf9,
1003                 0xfa, 0xf3, 0xf6, 0xff, 0xf9, 0xf0, 0xf0, 0xf6,
1004                 0xfc, 0xfa, 0xfb, 0xf1, 0xf7, 0xfd, 0xfd, 0xf8,
1005                 0xff, 0xf9, 0xf1, 0xf4, 0xf3, 0xf5, 0xfe, 0xfb,
1006                 0xf5, 0xfc, 0xf2, 0xf7, 0xf8, 0xf2, 0xf4, 0xfe,
1007                 0x27, 0x2d, 0x2d, 0x28, 0x2e, 0x2b, 0x23, 0x25,
1008                 0x20, 0x26, 0x26, 0x2f, 0x29, 0x20, 0x2a, 0x23,
1009                 0x21, 0x24, 0x22, 0x27, 0x28, 0x22, 0x25, 0x2c,
1010                 0x2b, 0x21, 0x2c, 0x2a, 0x24, 0x2e, 0x2f, 0x29,
1011                 0x2a, 0x23, 0x26, 0x2f, 0x29, 0x20, 0x20, 0x26,
1012                 0x2c, 0x2a, 0x2b, 0x21, 0x27, 0x2d, 0x2d, 0x28,
1013                 0x2f, 0x29, 0x21, 0x24, 0x23, 0x25, 0x2e, 0x2b,
1014                 0x25, 0x2c, 0x22, 0x27, 0x28, 0x22, 0x24, 0x2e,
1015                 0xe7, 0xed, 0xed, 0xe8, 0xee, 0xeb, 0xe3, 0xe5,
1016                 0xe0, 0xe6, 0xe6, 0xef, 0xe9, 0xe0, 0xea, 0xe3,
1017                 0xe1, 0xe4, 0xe2, 0xe7, 0xe8, 0xe2, 0xe5, 0xec,
1018                 0xeb, 0xe1, 0xec, 0xea, 0xe4, 0xee, 0xef, 0xe9,
1019                 0xea, 0xe3, 0xe6, 0xef, 0xe9, 0xe0, 0xe0, 0xe6,
1020                 0xec, 0xea, 0xeb, 0xe1, 0xe7, 0xed, 0xed, 0xe8,
1021                 0xef, 0xe9, 0xe1, 0xe4, 0xe3, 0xe5, 0xee, 0xeb,
1022                 0xe5, 0xec, 0xe2, 0xe7, 0xe8, 0xe2, 0xe4, 0xee,
1023                 0xc7, 0xcd, 0xcd, 0xc8, 0xce, 0xcb, 0xc3, 0xc5,
1024                 0xc0, 0xc6, 0xc6, 0xcf, 0xc9, 0xc0, 0xca, 0xc3,
1025                 0xc1, 0xc4, 0xc2, 0xc7, 0xc8, 0xc2, 0xc5, 0xcc,
1026                 0xcb, 0xc1, 0xcc, 0xca, 0xc4, 0xce, 0xcf, 0xc9,
1027                 0xca, 0xc3, 0xc6, 0xcf, 0xc9, 0xc0, 0xc0, 0xc6,
1028                 0xcc, 0xca, 0xcb, 0xc1, 0xc7, 0xcd, 0xcd, 0xc8,
1029                 0xcf, 0xc9, 0xc1, 0xc4, 0xc3, 0xc5, 0xce, 0xcb,
1030                 0xc5, 0xcc, 0xc2, 0xc7, 0xc8, 0xc2, 0xc4, 0xce,
1031                 0x37, 0x3d, 0x3d, 0x38, 0x3e, 0x3b, 0x33, 0x35,
1032                 0x30, 0x36, 0x36, 0x3f, 0x39, 0x30, 0x3a, 0x33,
1033                 0x31, 0x34, 0x32, 0x37, 0x38, 0x32, 0x35, 0x3c,
1034                 0x3b, 0x31, 0x3c, 0x3a, 0x34, 0x3e, 0x3f, 0x39,
1035                 0x3a, 0x33, 0x36, 0x3f, 0x39, 0x30, 0x30, 0x36,
1036                 0x3c, 0x3a, 0x3b, 0x31, 0x37, 0x3d, 0x3d, 0x38,
1037                 0x3f, 0x39, 0x31, 0x34, 0x33, 0x35, 0x3e, 0x3b,
1038                 0x35, 0x3c, 0x32, 0x37, 0x38, 0x32, 0x34, 0x3e,
1039                 0x57, 0x5d, 0x5d, 0x58, 0x5e, 0x5b, 0x53, 0x55,
1040                 0x50, 0x56, 0x56, 0x5f, 0x59, 0x50, 0x5a, 0x53,
1041                 0x51, 0x54, 0x52, 0x57, 0x58, 0x52, 0x55, 0x5c,
1042                 0x5b, 0x51, 0x5c, 0x5a, 0x54, 0x5e, 0x5f, 0x59,
1043                 0x5a, 0x53, 0x56, 0x5f, 0x59, 0x50, 0x50, 0x56,
1044                 0x5c, 0x5a, 0x5b, 0x51, 0x57, 0x5d, 0x5d, 0x58,
1045                 0x5f, 0x59, 0x51, 0x54, 0x53, 0x55, 0x5e, 0x5b,
1046                 0x55, 0x5c, 0x52, 0x57, 0x58, 0x52, 0x54, 0x5e,
1047                 0xb7, 0xbd, 0xbd, 0xb8, 0xbe, 0xbb, 0xb3, 0xb5,
1048                 0xb0, 0xb6, 0xb6, 0xbf, 0xb9, 0xb0, 0xba, 0xb3,
1049                 0xb1, 0xb4, 0xb2, 0xb7, 0xb8, 0xb2, 0xb5, 0xbc,
1050                 0xbb, 0xb1, 0xbc, 0xba, 0xb4, 0xbe, 0xbf, 0xb9,
1051                 0xba, 0xb3, 0xb6, 0xbf, 0xb9, 0xb0, 0xb0, 0xb6,
1052                 0xbc, 0xba, 0xbb, 0xb1, 0xb7, 0xbd, 0xbd, 0xb8,
1053                 0xbf, 0xb9, 0xb1, 0xb4, 0xb3, 0xb5, 0xbe, 0xbb,
1054                 0xb5, 0xbc, 0xb2, 0xb7, 0xb8, 0xb2, 0xb4, 0xbe,
1055                 0xa7, 0xad, 0xad, 0xa8, 0xae, 0xab, 0xa3, 0xa5,
1056                 0xa0, 0xa6, 0xa6, 0xaf, 0xa9, 0xa0, 0xaa, 0xa3,
1057                 0xa1, 0xa4, 0xa2, 0xa7, 0xa8, 0xa2, 0xa5, 0xac,
1058                 0xab, 0xa1, 0xac, 0xaa, 0xa4, 0xae, 0xaf, 0xa9,
1059                 0xaa, 0xa3, 0xa6, 0xaf, 0xa9, 0xa0, 0xa0, 0xa6,
1060                 0xac, 0xaa, 0xab, 0xa1, 0xa7, 0xad, 0xad, 0xa8,
1061                 0xaf, 0xa9, 0xa1, 0xa4, 0xa3, 0xa5, 0xae, 0xab,
1062                 0xa5, 0xac, 0xa2, 0xa7, 0xa8, 0xa2, 0xa4, 0xae,
1063                 0x57, 0x5d, 0x5d, 0x58, 0x5e, 0x5b, 0x53, 0x55,
1064                 0x50, 0x56, 0x56, 0x5f, 0x59, 0x50, 0x5a, 0x53,
1065                 0x51, 0x54, 0x52, 0x57, 0x58, 0x52, 0x55, 0x5c,
1066                 0x5b, 0x51, 0x5c, 0x5a, 0x54, 0x5e, 0x5f, 0x59,
1067                 0x5a, 0x53, 0x56, 0x5f, 0x59, 0x50, 0x50, 0x56,
1068                 0x5c, 0x5a, 0x5b, 0x51, 0x57, 0x5d, 0x5d, 0x58,
1069                 0x5f, 0x59, 0x51, 0x54, 0x53, 0x55, 0x5e, 0x5b,
1070                 0x55, 0x5c, 0x52, 0x57, 0x58, 0x52, 0x54, 0x5e,
1071                 0xe7, 0xed, 0xed, 0xe8, 0xee, 0xeb, 0xe3, 0xe5,
1072                 0xe0, 0xe6, 0xe6, 0xef, 0xe9, 0xe0, 0xea, 0xe3,
1073                 0xe1, 0xe4, 0xe2, 0xe7, 0xe8, 0xe2, 0xe5, 0xec,
1074                 0xeb, 0xe1, 0xec, 0xea, 0xe4, 0xee, 0xef, 0xe9,
1075                 0xea, 0xe3, 0xe6, 0xef, 0xe9, 0xe0, 0xe0, 0xe6,
1076                 0xec, 0xea, 0xeb, 0xe1, 0xe7, 0xed, 0xed, 0xe8,
1077                 0xef, 0xe9, 0xe1, 0xe4, 0xe3, 0xe5, 0xee, 0xeb,
1078                 0xe5, 0xec, 0xe2, 0xe7, 0xe8, 0xe2, 0xe4, 0xee,
1079                 0x27, 0x2d, 0x2d, 0x28, 0x2e, 0x2b, 0x23, 0x25,
1080                 0x20, 0x26, 0x26, 0x2f, 0x29, 0x20, 0x2a, 0x23,
1081                 0x21, 0x24, 0x22, 0x27, 0x28, 0x22, 0x25, 0x2c,
1082                 0x2b, 0x21, 0x2c, 0x2a, 0x24, 0x2e, 0x2f, 0x29,
1083                 0x2a, 0x23, 0x26, 0x2f, 0x29, 0x20, 0x20, 0x26,
1084                 0x2c, 0x2a, 0x2b, 0x21, 0x27, 0x2d, 0x2d, 0x28,
1085                 0x2f, 0x29, 0x21, 0x24, 0x23, 0x25, 0x2e, 0x2b,
1086                 0x25, 0x2c, 0x22, 0x27, 0x28, 0x22, 0x24, 0x2e,
1087                 0x77, 0x7d, 0x7d, 0x78, 0x7e, 0x7b, 0x73, 0x75,
1088                 0x70, 0x76, 0x76, 0x7f, 0x79, 0x70, 0x7a, 0x73,
1089                 0x71, 0x74, 0x72, 0x77, 0x78, 0x72, 0x75, 0x7c,
1090                 0x7b, 0x71, 0x7c, 0x7a, 0x74, 0x7e, 0x7f, 0x79,
1091                 0x7a, 0x73, 0x76, 0x7f, 0x79, 0x70, 0x70, 0x76,
1092                 0x7c, 0x7a, 0x7b, 0x71, 0x77, 0x7d, 0x7d, 0x78,
1093                 0x7f, 0x79, 0x71, 0x74, 0x73, 0x75, 0x7e, 0x7b,
1094                 0x75, 0x7c, 0x72, 0x77, 0x78, 0x72, 0x74, 0x7e,
1095                 0xc7, 0xcd, 0xcd, 0xc8, 0xce, 0xcb, 0xc3, 0xc5,
1096                 0xc0, 0xc6, 0xc6, 0xcf, 0xc9, 0xc0, 0xca, 0xc3,
1097                 0xc1, 0xc4, 0xc2, 0xc7, 0xc8, 0xc2, 0xc5, 0xcc,
1098                 0xcb, 0xc1, 0xcc, 0xca, 0xc4, 0xce, 0xcf, 0xc9,
1099                 0xca, 0xc3, 0xc6, 0xcf, 0xc9, 0xc0, 0xc0, 0xc6,
1100                 0xcc, 0xca, 0xcb, 0xc1, 0xc7, 0xcd, 0xcd, 0xc8,
1101                 0xcf, 0xc9, 0xc1, 0xc4, 0xc3, 0xc5, 0xce, 0xcb,
1102                 0xc5, 0xcc, 0xc2, 0xc7, 0xc8, 0xc2, 0xc4, 0xce,
1103         },{
1104                 0x2c, 0x2a, 0x21, 0x2f, 0x2a, 0x24, 0x2f, 0x22,
1105                 0x29, 0x27, 0x22, 0x2c, 0x26, 0x29, 0x28, 0x25,
1106                 0x20, 0x26, 0x2d, 0x21, 0x23, 0x2d, 0x24, 0x2e,
1107                 0x2e, 0x20, 0x27, 0x2b, 0x25, 0x23, 0x2b, 0x28,
1108                 0x29, 0x24, 0x2e, 0x23, 0x2f, 0x22, 0x25, 0x2c,
1109                 0x22, 0x29, 0x28, 0x25, 0x2c, 0x2f, 0x23, 0x2a,
1110                 0x27, 0x2b, 0x20, 0x2e, 0x24, 0x21, 0x2a, 0x27,
1111                 0x21, 0x26, 0x2d, 0x20, 0x2b, 0x28, 0x26, 0x2d,
1112                 0xec, 0xea, 0xe1, 0xef, 0xea, 0xe4, 0xef, 0xe2,
1113                 0xe9, 0xe7, 0xe2, 0xec, 0xe6, 0xe9, 0xe8, 0xe5,
1114                 0xe0, 0xe6, 0xed, 0xe1, 0xe3, 0xed, 0xe4, 0xee,
1115                 0xee, 0xe0, 0xe7, 0xeb, 0xe5, 0xe3, 0xeb, 0xe8,
1116                 0xe9, 0xe4, 0xee, 0xe3, 0xef, 0xe2, 0xe5, 0xec,
1117                 0xe2, 0xe9, 0xe8, 0xe5, 0xec, 0xef, 0xe3, 0xea,
1118                 0xe7, 0xeb, 0xe0, 0xee, 0xe4, 0xe1, 0xea, 0xe7,
1119                 0xe1, 0xe6, 0xed, 0xe0, 0xeb, 0xe8, 0xe6, 0xed,
1120                 0xcc, 0xca, 0xc1, 0xcf, 0xca, 0xc4, 0xcf, 0xc2,
1121                 0xc9, 0xc7, 0xc2, 0xcc, 0xc6, 0xc9, 0xc8, 0xc5,
1122                 0xc0, 0xc6, 0xcd, 0xc1, 0xc3, 0xcd, 0xc4, 0xce,
1123                 0xce, 0xc0, 0xc7, 0xcb, 0xc5, 0xc3, 0xcb, 0xc8,
1124                 0xc9, 0xc4, 0xce, 0xc3, 0xcf, 0xc2, 0xc5, 0xcc,
1125                 0xc2, 0xc9, 0xc8, 0xc5, 0xcc, 0xcf, 0xc3, 0xca,
1126                 0xc7, 0xcb, 0xc0, 0xce, 0xc4, 0xc1, 0xca, 0xc7,
1127                 0xc1, 0xc6, 0xcd, 0xc0, 0xcb, 0xc8, 0xc6, 0xcd,
1128                 0xbc, 0xba, 0xb1, 0xbf, 0xba, 0xb4, 0xbf, 0xb2,
1129                 0xb9, 0xb7, 0xb2, 0xbc, 0xb6, 0xb9, 0xb8, 0xb5,
1130                 0xb0, 0xb6, 0xbd, 0xb1, 0xb3, 0xbd, 0xb4, 0xbe,
1131                 0xbe, 0xb0, 0xb7, 0xbb, 0xb5, 0xb3, 0xbb, 0xb8,
1132                 0xb9, 0xb4, 0xbe, 0xb3, 0xbf, 0xb2, 0xb5, 0xbc,
1133                 0xb2, 0xb9, 0xb8, 0xb5, 0xbc, 0xbf, 0xb3, 0xba,
1134                 0xb7, 0xbb, 0xb0, 0xbe, 0xb4, 0xb1, 0xba, 0xb7,
1135                 0xb1, 0xb6, 0xbd, 0xb0, 0xbb, 0xb8, 0xb6, 0xbd,
1136                 0x4c, 0x4a, 0x41, 0x4f, 0x4a, 0x44, 0x4f, 0x42,
1137                 0x49, 0x47, 0x42, 0x4c, 0x46, 0x49, 0x48, 0x45,
1138                 0x40, 0x46, 0x4d, 0x41, 0x43, 0x4d, 0x44, 0x4e,
1139                 0x4e, 0x40, 0x47, 0x4b, 0x45, 0x43, 0x4b, 0x48,
1140                 0x49, 0x44, 0x4e, 0x43, 0x4f, 0x42, 0x45, 0x4c,
1141                 0x42, 0x49, 0x48, 0x45, 0x4c, 0x4f, 0x43, 0x4a,
1142                 0x47, 0x4b, 0x40, 0x4e, 0x44, 0x41, 0x4a, 0x47,
1143                 0x41, 0x46, 0x4d, 0x40, 0x4b, 0x48, 0x46, 0x4d,
1144                 0x2c, 0x2a, 0x21, 0x2f, 0x2a, 0x24, 0x2f, 0x22,
1145                 0x29, 0x27, 0x22, 0x2c, 0x26, 0x29, 0x28, 0x25,
1146                 0x20, 0x26, 0x2d, 0x21, 0x23, 0x2d, 0x24, 0x2e,
1147                 0x2e, 0x20, 0x27, 0x2b, 0x25, 0x23, 0x2b, 0x28,
1148                 0x29, 0x24, 0x2e, 0x23, 0x2f, 0x22, 0x25, 0x2c,
1149                 0x22, 0x29, 0x28, 0x25, 0x2c, 0x2f, 0x23, 0x2a,
1150                 0x27, 0x2b, 0x20, 0x2e, 0x24, 0x21, 0x2a, 0x27,
1151                 0x21, 0x26, 0x2d, 0x20, 0x2b, 0x28, 0x26, 0x2d,
1152                 0x1c, 0x1a, 0x11, 0x1f, 0x1a, 0x14, 0x1f, 0x12,
1153                 0x19, 0x17, 0x12, 0x1c, 0x16, 0x19, 0x18, 0x15,
1154                 0x10, 0x16, 0x1d, 0x11, 0x13, 0x1d, 0x14, 0x1e,
1155                 0x1e, 0x10, 0x17, 0x1b, 0x15, 0x13, 0x1b, 0x18,
1156                 0x19, 0x14, 0x1e, 0x13, 0x1f, 0x12, 0x15, 0x1c,
1157                 0x12, 0x19, 0x18, 0x15, 0x1c, 0x1f, 0x13, 0x1a,
1158                 0x17, 0x1b, 0x10, 0x1e, 0x14, 0x11, 0x1a, 0x17,
1159                 0x11, 0x16, 0x1d, 0x10, 0x1b, 0x18, 0x16, 0x1d,
1160                 0xcc, 0xca, 0xc1, 0xcf, 0xca, 0xc4, 0xcf, 0xc2,
1161                 0xc9, 0xc7, 0xc2, 0xcc, 0xc6, 0xc9, 0xc8, 0xc5,
1162                 0xc0, 0xc6, 0xcd, 0xc1, 0xc3, 0xcd, 0xc4, 0xce,
1163                 0xce, 0xc0, 0xc7, 0xcb, 0xc5, 0xc3, 0xcb, 0xc8,
1164                 0xc9, 0xc4, 0xce, 0xc3, 0xcf, 0xc2, 0xc5, 0xcc,
1165                 0xc2, 0xc9, 0xc8, 0xc5, 0xcc, 0xcf, 0xc3, 0xca,
1166                 0xc7, 0xcb, 0xc0, 0xce, 0xc4, 0xc1, 0xca, 0xc7,
1167                 0xc1, 0xc6, 0xcd, 0xc0, 0xcb, 0xc8, 0xc6, 0xcd,
1168                 0x7c, 0x7a, 0x71, 0x7f, 0x7a, 0x74, 0x7f, 0x72,
1169                 0x79, 0x77, 0x72, 0x7c, 0x76, 0x79, 0x78, 0x75,
1170                 0x70, 0x76, 0x7d, 0x71, 0x73, 0x7d, 0x74, 0x7e,
1171                 0x7e, 0x70, 0x77, 0x7b, 0x75, 0x73, 0x7b, 0x78,
1172                 0x79, 0x74, 0x7e, 0x73, 0x7f, 0x72, 0x75, 0x7c,
1173                 0x72, 0x79, 0x78, 0x75, 0x7c, 0x7f, 0x73, 0x7a,
1174                 0x77, 0x7b, 0x70, 0x7e, 0x74, 0x71, 0x7a, 0x77,
1175                 0x71, 0x76, 0x7d, 0x70, 0x7b, 0x78, 0x76, 0x7d,
1176                 0x4c, 0x4a, 0x41, 0x4f, 0x4a, 0x44, 0x4f, 0x42,
1177                 0x49, 0x47, 0x42, 0x4c, 0x46, 0x49, 0x48, 0x45,
1178                 0x40, 0x46, 0x4d, 0x41, 0x43, 0x4d, 0x44, 0x4e,
1179                 0x4e, 0x40, 0x47, 0x4b, 0x45, 0x43, 0x4b, 0x48,
1180                 0x49, 0x44, 0x4e, 0x43, 0x4f, 0x42, 0x45, 0x4c,
1181                 0x42, 0x49, 0x48, 0x45, 0x4c, 0x4f, 0x43, 0x4a,
1182                 0x47, 0x4b, 0x40, 0x4e, 0x44, 0x41, 0x4a, 0x47,
1183                 0x41, 0x46, 0x4d, 0x40, 0x4b, 0x48, 0x46, 0x4d,
1184                 0xac, 0xaa, 0xa1, 0xaf, 0xaa, 0xa4, 0xaf, 0xa2,
1185                 0xa9, 0xa7, 0xa2, 0xac, 0xa6, 0xa9, 0xa8, 0xa5,
1186                 0xa0, 0xa6, 0xad, 0xa1, 0xa3, 0xad, 0xa4, 0xae,
1187                 0xae, 0xa0, 0xa7, 0xab, 0xa5, 0xa3, 0xab, 0xa8,
1188                 0xa9, 0xa4, 0xae, 0xa3, 0xaf, 0xa2, 0xa5, 0xac,
1189                 0xa2, 0xa9, 0xa8, 0xa5, 0xac, 0xaf, 0xa3, 0xaa,
1190                 0xa7, 0xab, 0xa0, 0xae, 0xa4, 0xa1, 0xaa, 0xa7,
1191                 0xa1, 0xa6, 0xad, 0xa0, 0xab, 0xa8, 0xa6, 0xad,
1192                 0x7c, 0x7a, 0x71, 0x7f, 0x7a, 0x74, 0x7f, 0x72,
1193                 0x79, 0x77, 0x72, 0x7c, 0x76, 0x79, 0x78, 0x75,
1194                 0x70, 0x76, 0x7d, 0x71, 0x73, 0x7d, 0x74, 0x7e,
1195                 0x7e, 0x70, 0x77, 0x7b, 0x75, 0x73, 0x7b, 0x78,
1196                 0x79, 0x74, 0x7e, 0x73, 0x7f, 0x72, 0x75, 0x7c,
1197                 0x72, 0x79, 0x78, 0x75, 0x7c, 0x7f, 0x73, 0x7a,
1198                 0x77, 0x7b, 0x70, 0x7e, 0x74, 0x71, 0x7a, 0x77,
1199                 0x71, 0x76, 0x7d, 0x70, 0x7b, 0x78, 0x76, 0x7d,
1200                 0xbc, 0xba, 0xb1, 0xbf, 0xba, 0xb4, 0xbf, 0xb2,
1201                 0xb9, 0xb7, 0xb2, 0xbc, 0xb6, 0xb9, 0xb8, 0xb5,
1202                 0xb0, 0xb6, 0xbd, 0xb1, 0xb3, 0xbd, 0xb4, 0xbe,
1203                 0xbe, 0xb0, 0xb7, 0xbb, 0xb5, 0xb3, 0xbb, 0xb8,
1204                 0xb9, 0xb4, 0xbe, 0xb3, 0xbf, 0xb2, 0xb5, 0xbc,
1205                 0xb2, 0xb9, 0xb8, 0xb5, 0xbc, 0xbf, 0xb3, 0xba,
1206                 0xb7, 0xbb, 0xb0, 0xbe, 0xb4, 0xb1, 0xba, 0xb7,
1207                 0xb1, 0xb6, 0xbd, 0xb0, 0xbb, 0xb8, 0xb6, 0xbd,
1208                 0xdc, 0xda, 0xd1, 0xdf, 0xda, 0xd4, 0xdf, 0xd2,
1209                 0xd9, 0xd7, 0xd2, 0xdc, 0xd6, 0xd9, 0xd8, 0xd5,
1210                 0xd0, 0xd6, 0xdd, 0xd1, 0xd3, 0xdd, 0xd4, 0xde,
1211                 0xde, 0xd0, 0xd7, 0xdb, 0xd5, 0xd3, 0xdb, 0xd8,
1212                 0xd9, 0xd4, 0xde, 0xd3, 0xdf, 0xd2, 0xd5, 0xdc,
1213                 0xd2, 0xd9, 0xd8, 0xd5, 0xdc, 0xdf, 0xd3, 0xda,
1214                 0xd7, 0xdb, 0xd0, 0xde, 0xd4, 0xd1, 0xda, 0xd7,
1215                 0xd1, 0xd6, 0xdd, 0xd0, 0xdb, 0xd8, 0xd6, 0xdd,
1216                 0x6c, 0x6a, 0x61, 0x6f, 0x6a, 0x64, 0x6f, 0x62,
1217                 0x69, 0x67, 0x62, 0x6c, 0x66, 0x69, 0x68, 0x65,
1218                 0x60, 0x66, 0x6d, 0x61, 0x63, 0x6d, 0x64, 0x6e,
1219                 0x6e, 0x60, 0x67, 0x6b, 0x65, 0x63, 0x6b, 0x68,
1220                 0x69, 0x64, 0x6e, 0x63, 0x6f, 0x62, 0x65, 0x6c,
1221                 0x62, 0x69, 0x68, 0x65, 0x6c, 0x6f, 0x63, 0x6a,
1222                 0x67, 0x6b, 0x60, 0x6e, 0x64, 0x61, 0x6a, 0x67,
1223                 0x61, 0x66, 0x6d, 0x60, 0x6b, 0x68, 0x66, 0x6d,
1224                 0x1c, 0x1a, 0x11, 0x1f, 0x1a, 0x14, 0x1f, 0x12,
1225                 0x19, 0x17, 0x12, 0x1c, 0x16, 0x19, 0x18, 0x15,
1226                 0x10, 0x16, 0x1d, 0x11, 0x13, 0x1d, 0x14, 0x1e,
1227                 0x1e, 0x10, 0x17, 0x1b, 0x15, 0x13, 0x1b, 0x18,
1228                 0x19, 0x14, 0x1e, 0x13, 0x1f, 0x12, 0x15, 0x1c,
1229                 0x12, 0x19, 0x18, 0x15, 0x1c, 0x1f, 0x13, 0x1a,
1230                 0x17, 0x1b, 0x10, 0x1e, 0x14, 0x11, 0x1a, 0x17,
1231                 0x11, 0x16, 0x1d, 0x10, 0x1b, 0x18, 0x16, 0x1d,
1232                 0x8c, 0x8a, 0x81, 0x8f, 0x8a, 0x84, 0x8f, 0x82,
1233                 0x89, 0x87, 0x82, 0x8c, 0x86, 0x89, 0x88, 0x85,
1234                 0x80, 0x86, 0x8d, 0x81, 0x83, 0x8d, 0x84, 0x8e,
1235                 0x8e, 0x80, 0x87, 0x8b, 0x85, 0x83, 0x8b, 0x88,
1236                 0x89, 0x84, 0x8e, 0x83, 0x8f, 0x82, 0x85, 0x8c,
1237                 0x82, 0x89, 0x88, 0x85, 0x8c, 0x8f, 0x83, 0x8a,
1238                 0x87, 0x8b, 0x80, 0x8e, 0x84, 0x81, 0x8a, 0x87,
1239                 0x81, 0x86, 0x8d, 0x80, 0x8b, 0x88, 0x86, 0x8d,
1240                 0x5c, 0x5a, 0x51, 0x5f, 0x5a, 0x54, 0x5f, 0x52,
1241                 0x59, 0x57, 0x52, 0x5c, 0x56, 0x59, 0x58, 0x55,
1242                 0x50, 0x56, 0x5d, 0x51, 0x53, 0x5d, 0x54, 0x5e,
1243                 0x5e, 0x50, 0x57, 0x5b, 0x55, 0x53, 0x5b, 0x58,
1244                 0x59, 0x54, 0x5e, 0x53, 0x5f, 0x52, 0x55, 0x5c,
1245                 0x52, 0x59, 0x58, 0x55, 0x5c, 0x5f, 0x53, 0x5a,
1246                 0x57, 0x5b, 0x50, 0x5e, 0x54, 0x51, 0x5a, 0x57,
1247                 0x51, 0x56, 0x5d, 0x50, 0x5b, 0x58, 0x56, 0x5d,
1248                 0x5c, 0x5a, 0x51, 0x5f, 0x5a, 0x54, 0x5f, 0x52,
1249                 0x59, 0x57, 0x52, 0x5c, 0x56, 0x59, 0x58, 0x55,
1250                 0x50, 0x56, 0x5d, 0x51, 0x53, 0x5d, 0x54, 0x5e,
1251                 0x5e, 0x50, 0x57, 0x5b, 0x55, 0x53, 0x5b, 0x58,
1252                 0x59, 0x54, 0x5e, 0x53, 0x5f, 0x52, 0x55, 0x5c,
1253                 0x52, 0x59, 0x58, 0x55, 0x5c, 0x5f, 0x53, 0x5a,
1254                 0x57, 0x5b, 0x50, 0x5e, 0x54, 0x51, 0x5a, 0x57,
1255                 0x51, 0x56, 0x5d, 0x50, 0x5b, 0x58, 0x56, 0x5d,
1256                 0x0c, 0x0a, 0x01, 0x0f, 0x0a, 0x04, 0x0f, 0x02,
1257                 0x09, 0x07, 0x02, 0x0c, 0x06, 0x09, 0x08, 0x05,
1258                 0x00, 0x06, 0x0d, 0x01, 0x03, 0x0d, 0x04, 0x0e,
1259                 0x0e, 0x00, 0x07, 0x0b, 0x05, 0x03, 0x0b, 0x08,
1260                 0x09, 0x04, 0x0e, 0x03, 0x0f, 0x02, 0x05, 0x0c,
1261                 0x02, 0x09, 0x08, 0x05, 0x0c, 0x0f, 0x03, 0x0a,
1262                 0x07, 0x0b, 0x00, 0x0e, 0x04, 0x01, 0x0a, 0x07,
1263                 0x01, 0x06, 0x0d, 0x00, 0x0b, 0x08, 0x06, 0x0d,
1264                 0x3c, 0x3a, 0x31, 0x3f, 0x3a, 0x34, 0x3f, 0x32,
1265                 0x39, 0x37, 0x32, 0x3c, 0x36, 0x39, 0x38, 0x35,
1266                 0x30, 0x36, 0x3d, 0x31, 0x33, 0x3d, 0x34, 0x3e,
1267                 0x3e, 0x30, 0x37, 0x3b, 0x35, 0x33, 0x3b, 0x38,
1268                 0x39, 0x34, 0x3e, 0x33, 0x3f, 0x32, 0x35, 0x3c,
1269                 0x32, 0x39, 0x38, 0x35, 0x3c, 0x3f, 0x33, 0x3a,
1270                 0x37, 0x3b, 0x30, 0x3e, 0x34, 0x31, 0x3a, 0x37,
1271                 0x31, 0x36, 0x3d, 0x30, 0x3b, 0x38, 0x36, 0x3d,
1272                 0xfc, 0xfa, 0xf1, 0xff, 0xfa, 0xf4, 0xff, 0xf2,
1273                 0xf9, 0xf7, 0xf2, 0xfc, 0xf6, 0xf9, 0xf8, 0xf5,
1274                 0xf0, 0xf6, 0xfd, 0xf1, 0xf3, 0xfd, 0xf4, 0xfe,
1275                 0xfe, 0xf0, 0xf7, 0xfb, 0xf5, 0xf3, 0xfb, 0xf8,
1276                 0xf9, 0xf4, 0xfe, 0xf3, 0xff, 0xf2, 0xf5, 0xfc,
1277                 0xf2, 0xf9, 0xf8, 0xf5, 0xfc, 0xff, 0xf3, 0xfa,
1278                 0xf7, 0xfb, 0xf0, 0xfe, 0xf4, 0xf1, 0xfa, 0xf7,
1279                 0xf1, 0xf6, 0xfd, 0xf0, 0xfb, 0xf8, 0xf6, 0xfd,
1280                 0xfc, 0xfa, 0xf1, 0xff, 0xfa, 0xf4, 0xff, 0xf2,
1281                 0xf9, 0xf7, 0xf2, 0xfc, 0xf6, 0xf9, 0xf8, 0xf5,
1282                 0xf0, 0xf6, 0xfd, 0xf1, 0xf3, 0xfd, 0xf4, 0xfe,
1283                 0xfe, 0xf0, 0xf7, 0xfb, 0xf5, 0xf3, 0xfb, 0xf8,
1284                 0xf9, 0xf4, 0xfe, 0xf3, 0xff, 0xf2, 0xf5, 0xfc,
1285                 0xf2, 0xf9, 0xf8, 0xf5, 0xfc, 0xff, 0xf3, 0xfa,
1286                 0xf7, 0xfb, 0xf0, 0xfe, 0xf4, 0xf1, 0xfa, 0xf7,
1287                 0xf1, 0xf6, 0xfd, 0xf0, 0xfb, 0xf8, 0xf6, 0xfd,
1288                 0xac, 0xaa, 0xa1, 0xaf, 0xaa, 0xa4, 0xaf, 0xa2,
1289                 0xa9, 0xa7, 0xa2, 0xac, 0xa6, 0xa9, 0xa8, 0xa5,
1290                 0xa0, 0xa6, 0xad, 0xa1, 0xa3, 0xad, 0xa4, 0xae,
1291                 0xae, 0xa0, 0xa7, 0xab, 0xa5, 0xa3, 0xab, 0xa8,
1292                 0xa9, 0xa4, 0xae, 0xa3, 0xaf, 0xa2, 0xa5, 0xac,
1293                 0xa2, 0xa9, 0xa8, 0xa5, 0xac, 0xaf, 0xa3, 0xaa,
1294                 0xa7, 0xab, 0xa0, 0xae, 0xa4, 0xa1, 0xaa, 0xa7,
1295                 0xa1, 0xa6, 0xad, 0xa0, 0xab, 0xa8, 0xa6, 0xad,
1296                 0xdc, 0xda, 0xd1, 0xdf, 0xda, 0xd4, 0xdf, 0xd2,
1297                 0xd9, 0xd7, 0xd2, 0xdc, 0xd6, 0xd9, 0xd8, 0xd5,
1298                 0xd0, 0xd6, 0xdd, 0xd1, 0xd3, 0xdd, 0xd4, 0xde,
1299                 0xde, 0xd0, 0xd7, 0xdb, 0xd5, 0xd3, 0xdb, 0xd8,
1300                 0xd9, 0xd4, 0xde, 0xd3, 0xdf, 0xd2, 0xd5, 0xdc,
1301                 0xd2, 0xd9, 0xd8, 0xd5, 0xdc, 0xdf, 0xd3, 0xda,
1302                 0xd7, 0xdb, 0xd0, 0xde, 0xd4, 0xd1, 0xda, 0xd7,
1303                 0xd1, 0xd6, 0xdd, 0xd0, 0xdb, 0xd8, 0xd6, 0xdd,
1304                 0x3c, 0x3a, 0x31, 0x3f, 0x3a, 0x34, 0x3f, 0x32,
1305                 0x39, 0x37, 0x32, 0x3c, 0x36, 0x39, 0x38, 0x35,
1306                 0x30, 0x36, 0x3d, 0x31, 0x33, 0x3d, 0x34, 0x3e,
1307                 0x3e, 0x30, 0x37, 0x3b, 0x35, 0x33, 0x3b, 0x38,
1308                 0x39, 0x34, 0x3e, 0x33, 0x3f, 0x32, 0x35, 0x3c,
1309                 0x32, 0x39, 0x38, 0x35, 0x3c, 0x3f, 0x33, 0x3a,
1310                 0x37, 0x3b, 0x30, 0x3e, 0x34, 0x31, 0x3a, 0x37,
1311                 0x31, 0x36, 0x3d, 0x30, 0x3b, 0x38, 0x36, 0x3d,
1312                 0x0c, 0x0a, 0x01, 0x0f, 0x0a, 0x04, 0x0f, 0x02,
1313                 0x09, 0x07, 0x02, 0x0c, 0x06, 0x09, 0x08, 0x05,
1314                 0x00, 0x06, 0x0d, 0x01, 0x03, 0x0d, 0x04, 0x0e,
1315                 0x0e, 0x00, 0x07, 0x0b, 0x05, 0x03, 0x0b, 0x08,
1316                 0x09, 0x04, 0x0e, 0x03, 0x0f, 0x02, 0x05, 0x0c,
1317                 0x02, 0x09, 0x08, 0x05, 0x0c, 0x0f, 0x03, 0x0a,
1318                 0x07, 0x0b, 0x00, 0x0e, 0x04, 0x01, 0x0a, 0x07,
1319                 0x01, 0x06, 0x0d, 0x00, 0x0b, 0x08, 0x06, 0x0d,
1320                 0x9c, 0x9a, 0x91, 0x9f, 0x9a, 0x94, 0x9f, 0x92,
1321                 0x99, 0x97, 0x92, 0x9c, 0x96, 0x99, 0x98, 0x95,
1322                 0x90, 0x96, 0x9d, 0x91, 0x93, 0x9d, 0x94, 0x9e,
1323                 0x9e, 0x90, 0x97, 0x9b, 0x95, 0x93, 0x9b, 0x98,
1324                 0x99, 0x94, 0x9e, 0x93, 0x9f, 0x92, 0x95, 0x9c,
1325                 0x92, 0x99, 0x98, 0x95, 0x9c, 0x9f, 0x93, 0x9a,
1326                 0x97, 0x9b, 0x90, 0x9e, 0x94, 0x91, 0x9a, 0x97,
1327                 0x91, 0x96, 0x9d, 0x90, 0x9b, 0x98, 0x96, 0x9d,
1328                 0xec, 0xea, 0xe1, 0xef, 0xea, 0xe4, 0xef, 0xe2,
1329                 0xe9, 0xe7, 0xe2, 0xec, 0xe6, 0xe9, 0xe8, 0xe5,
1330                 0xe0, 0xe6, 0xed, 0xe1, 0xe3, 0xed, 0xe4, 0xee,
1331                 0xee, 0xe0, 0xe7, 0xeb, 0xe5, 0xe3, 0xeb, 0xe8,
1332                 0xe9, 0xe4, 0xee, 0xe3, 0xef, 0xe2, 0xe5, 0xec,
1333                 0xe2, 0xe9, 0xe8, 0xe5, 0xec, 0xef, 0xe3, 0xea,
1334                 0xe7, 0xeb, 0xe0, 0xee, 0xe4, 0xe1, 0xea, 0xe7,
1335                 0xe1, 0xe6, 0xed, 0xe0, 0xeb, 0xe8, 0xe6, 0xed,
1336                 0x8c, 0x8a, 0x81, 0x8f, 0x8a, 0x84, 0x8f, 0x82,
1337                 0x89, 0x87, 0x82, 0x8c, 0x86, 0x89, 0x88, 0x85,
1338                 0x80, 0x86, 0x8d, 0x81, 0x83, 0x8d, 0x84, 0x8e,
1339                 0x8e, 0x80, 0x87, 0x8b, 0x85, 0x83, 0x8b, 0x88,
1340                 0x89, 0x84, 0x8e, 0x83, 0x8f, 0x82, 0x85, 0x8c,
1341                 0x82, 0x89, 0x88, 0x85, 0x8c, 0x8f, 0x83, 0x8a,
1342                 0x87, 0x8b, 0x80, 0x8e, 0x84, 0x81, 0x8a, 0x87,
1343                 0x81, 0x86, 0x8d, 0x80, 0x8b, 0x88, 0x86, 0x8d,
1344                 0x9c, 0x9a, 0x91, 0x9f, 0x9a, 0x94, 0x9f, 0x92,
1345                 0x99, 0x97, 0x92, 0x9c, 0x96, 0x99, 0x98, 0x95,
1346                 0x90, 0x96, 0x9d, 0x91, 0x93, 0x9d, 0x94, 0x9e,
1347                 0x9e, 0x90, 0x97, 0x9b, 0x95, 0x93, 0x9b, 0x98,
1348                 0x99, 0x94, 0x9e, 0x93, 0x9f, 0x92, 0x95, 0x9c,
1349                 0x92, 0x99, 0x98, 0x95, 0x9c, 0x9f, 0x93, 0x9a,
1350                 0x97, 0x9b, 0x90, 0x9e, 0x94, 0x91, 0x9a, 0x97,
1351                 0x91, 0x96, 0x9d, 0x90, 0x9b, 0x98, 0x96, 0x9d,
1352                 0x6c, 0x6a, 0x61, 0x6f, 0x6a, 0x64, 0x6f, 0x62,
1353                 0x69, 0x67, 0x62, 0x6c, 0x66, 0x69, 0x68, 0x65,
1354                 0x60, 0x66, 0x6d, 0x61, 0x63, 0x6d, 0x64, 0x6e,
1355                 0x6e, 0x60, 0x67, 0x6b, 0x65, 0x63, 0x6b, 0x68,
1356                 0x69, 0x64, 0x6e, 0x63, 0x6f, 0x62, 0x65, 0x6c,
1357                 0x62, 0x69, 0x68, 0x65, 0x6c, 0x6f, 0x63, 0x6a,
1358                 0x67, 0x6b, 0x60, 0x6e, 0x64, 0x61, 0x6a, 0x67,
1359                 0x61, 0x66, 0x6d, 0x60, 0x6b, 0x68, 0x66, 0x6d,
1360                 0x4c, 0x4a, 0x41, 0x4f, 0x4a, 0x44, 0x4f, 0x42,
1361                 0x49, 0x47, 0x42, 0x4c, 0x46, 0x49, 0x48, 0x45,
1362                 0x40, 0x46, 0x4d, 0x41, 0x43, 0x4d, 0x44, 0x4e,
1363                 0x4e, 0x40, 0x47, 0x4b, 0x45, 0x43, 0x4b, 0x48,
1364                 0x49, 0x44, 0x4e, 0x43, 0x4f, 0x42, 0x45, 0x4c,
1365                 0x42, 0x49, 0x48, 0x45, 0x4c, 0x4f, 0x43, 0x4a,
1366                 0x47, 0x4b, 0x40, 0x4e, 0x44, 0x41, 0x4a, 0x47,
1367                 0x41, 0x46, 0x4d, 0x40, 0x4b, 0x48, 0x46, 0x4d,
1368                 0xbc, 0xba, 0xb1, 0xbf, 0xba, 0xb4, 0xbf, 0xb2,
1369                 0xb9, 0xb7, 0xb2, 0xbc, 0xb6, 0xb9, 0xb8, 0xb5,
1370                 0xb0, 0xb6, 0xbd, 0xb1, 0xb3, 0xbd, 0xb4, 0xbe,
1371                 0xbe, 0xb0, 0xb7, 0xbb, 0xb5, 0xb3, 0xbb, 0xb8,
1372                 0xb9, 0xb4, 0xbe, 0xb3, 0xbf, 0xb2, 0xb5, 0xbc,
1373                 0xb2, 0xb9, 0xb8, 0xb5, 0xbc, 0xbf, 0xb3, 0xba,
1374                 0xb7, 0xbb, 0xb0, 0xbe, 0xb4, 0xb1, 0xba, 0xb7,
1375                 0xb1, 0xb6, 0xbd, 0xb0, 0xbb, 0xb8, 0xb6, 0xbd,
1376                 0x2c, 0x2a, 0x21, 0x2f, 0x2a, 0x24, 0x2f, 0x22,
1377                 0x29, 0x27, 0x22, 0x2c, 0x26, 0x29, 0x28, 0x25,
1378                 0x20, 0x26, 0x2d, 0x21, 0x23, 0x2d, 0x24, 0x2e,
1379                 0x2e, 0x20, 0x27, 0x2b, 0x25, 0x23, 0x2b, 0x28,
1380                 0x29, 0x24, 0x2e, 0x23, 0x2f, 0x22, 0x25, 0x2c,
1381                 0x22, 0x29, 0x28, 0x25, 0x2c, 0x2f, 0x23, 0x2a,
1382                 0x27, 0x2b, 0x20, 0x2e, 0x24, 0x21, 0x2a, 0x27,
1383                 0x21, 0x26, 0x2d, 0x20, 0x2b, 0x28, 0x26, 0x2d,
1384                 0x8c, 0x8a, 0x81, 0x8f, 0x8a, 0x84, 0x8f, 0x82,
1385                 0x89, 0x87, 0x82, 0x8c, 0x86, 0x89, 0x88, 0x85,
1386                 0x80, 0x86, 0x8d, 0x81, 0x83, 0x8d, 0x84, 0x8e,
1387                 0x8e, 0x80, 0x87, 0x8b, 0x85, 0x83, 0x8b, 0x88,
1388                 0x89, 0x84, 0x8e, 0x83, 0x8f, 0x82, 0x85, 0x8c,
1389                 0x82, 0x89, 0x88, 0x85, 0x8c, 0x8f, 0x83, 0x8a,
1390                 0x87, 0x8b, 0x80, 0x8e, 0x84, 0x81, 0x8a, 0x87,
1391                 0x81, 0x86, 0x8d, 0x80, 0x8b, 0x88, 0x86, 0x8d,
1392                 0x1c, 0x1a, 0x11, 0x1f, 0x1a, 0x14, 0x1f, 0x12,
1393                 0x19, 0x17, 0x12, 0x1c, 0x16, 0x19, 0x18, 0x15,
1394                 0x10, 0x16, 0x1d, 0x11, 0x13, 0x1d, 0x14, 0x1e,
1395                 0x1e, 0x10, 0x17, 0x1b, 0x15, 0x13, 0x1b, 0x18,
1396                 0x19, 0x14, 0x1e, 0x13, 0x1f, 0x12, 0x15, 0x1c,
1397                 0x12, 0x19, 0x18, 0x15, 0x1c, 0x1f, 0x13, 0x1a,
1398                 0x17, 0x1b, 0x10, 0x1e, 0x14, 0x11, 0x1a, 0x17,
1399                 0x11, 0x16, 0x1d, 0x10, 0x1b, 0x18, 0x16, 0x1d,
1400                 0xcc, 0xca, 0xc1, 0xcf, 0xca, 0xc4, 0xcf, 0xc2,
1401                 0xc9, 0xc7, 0xc2, 0xcc, 0xc6, 0xc9, 0xc8, 0xc5,
1402                 0xc0, 0xc6, 0xcd, 0xc1, 0xc3, 0xcd, 0xc4, 0xce,
1403                 0xce, 0xc0, 0xc7, 0xcb, 0xc5, 0xc3, 0xcb, 0xc8,
1404                 0xc9, 0xc4, 0xce, 0xc3, 0xcf, 0xc2, 0xc5, 0xcc,
1405                 0xc2, 0xc9, 0xc8, 0xc5, 0xcc, 0xcf, 0xc3, 0xca,
1406                 0xc7, 0xcb, 0xc0, 0xce, 0xc4, 0xc1, 0xca, 0xc7,
1407                 0xc1, 0xc6, 0xcd, 0xc0, 0xcb, 0xc8, 0xc6, 0xcd,
1408                 0xbc, 0xba, 0xb1, 0xbf, 0xba, 0xb4, 0xbf, 0xb2,
1409                 0xb9, 0xb7, 0xb2, 0xbc, 0xb6, 0xb9, 0xb8, 0xb5,
1410                 0xb0, 0xb6, 0xbd, 0xb1, 0xb3, 0xbd, 0xb4, 0xbe,
1411                 0xbe, 0xb0, 0xb7, 0xbb, 0xb5, 0xb3, 0xbb, 0xb8,
1412                 0xb9, 0xb4, 0xbe, 0xb3, 0xbf, 0xb2, 0xb5, 0xbc,
1413                 0xb2, 0xb9, 0xb8, 0xb5, 0xbc, 0xbf, 0xb3, 0xba,
1414                 0xb7, 0xbb, 0xb0, 0xbe, 0xb4, 0xb1, 0xba, 0xb7,
1415                 0xb1, 0xb6, 0xbd, 0xb0, 0xbb, 0xb8, 0xb6, 0xbd,
1416                 0x7c, 0x7a, 0x71, 0x7f, 0x7a, 0x74, 0x7f, 0x72,
1417                 0x79, 0x77, 0x72, 0x7c, 0x76, 0x79, 0x78, 0x75,
1418                 0x70, 0x76, 0x7d, 0x71, 0x73, 0x7d, 0x74, 0x7e,
1419                 0x7e, 0x70, 0x77, 0x7b, 0x75, 0x73, 0x7b, 0x78,
1420                 0x79, 0x74, 0x7e, 0x73, 0x7f, 0x72, 0x75, 0x7c,
1421                 0x72, 0x79, 0x78, 0x75, 0x7c, 0x7f, 0x73, 0x7a,
1422                 0x77, 0x7b, 0x70, 0x7e, 0x74, 0x71, 0x7a, 0x77,
1423                 0x71, 0x76, 0x7d, 0x70, 0x7b, 0x78, 0x76, 0x7d,
1424                 0xac, 0xaa, 0xa1, 0xaf, 0xaa, 0xa4, 0xaf, 0xa2,
1425                 0xa9, 0xa7, 0xa2, 0xac, 0xa6, 0xa9, 0xa8, 0xa5,
1426                 0xa0, 0xa6, 0xad, 0xa1, 0xa3, 0xad, 0xa4, 0xae,
1427                 0xae, 0xa0, 0xa7, 0xab, 0xa5, 0xa3, 0xab, 0xa8,
1428                 0xa9, 0xa4, 0xae, 0xa3, 0xaf, 0xa2, 0xa5, 0xac,
1429                 0xa2, 0xa9, 0xa8, 0xa5, 0xac, 0xaf, 0xa3, 0xaa,
1430                 0xa7, 0xab, 0xa0, 0xae, 0xa4, 0xa1, 0xaa, 0xa7,
1431                 0xa1, 0xa6, 0xad, 0xa0, 0xab, 0xa8, 0xa6, 0xad,
1432                 0x1c, 0x1a, 0x11, 0x1f, 0x1a, 0x14, 0x1f, 0x12,
1433                 0x19, 0x17, 0x12, 0x1c, 0x16, 0x19, 0x18, 0x15,
1434                 0x10, 0x16, 0x1d, 0x11, 0x13, 0x1d, 0x14, 0x1e,
1435                 0x1e, 0x10, 0x17, 0x1b, 0x15, 0x13, 0x1b, 0x18,
1436                 0x19, 0x14, 0x1e, 0x13, 0x1f, 0x12, 0x15, 0x1c,
1437                 0x12, 0x19, 0x18, 0x15, 0x1c, 0x1f, 0x13, 0x1a,
1438                 0x17, 0x1b, 0x10, 0x1e, 0x14, 0x11, 0x1a, 0x17,
1439                 0x11, 0x16, 0x1d, 0x10, 0x1b, 0x18, 0x16, 0x1d,
1440                 0xdc, 0xda, 0xd1, 0xdf, 0xda, 0xd4, 0xdf, 0xd2,
1441                 0xd9, 0xd7, 0xd2, 0xdc, 0xd6, 0xd9, 0xd8, 0xd5,
1442                 0xd0, 0xd6, 0xdd, 0xd1, 0xd3, 0xdd, 0xd4, 0xde,
1443                 0xde, 0xd0, 0xd7, 0xdb, 0xd5, 0xd3, 0xdb, 0xd8,
1444                 0xd9, 0xd4, 0xde, 0xd3, 0xdf, 0xd2, 0xd5, 0xdc,
1445                 0xd2, 0xd9, 0xd8, 0xd5, 0xdc, 0xdf, 0xd3, 0xda,
1446                 0xd7, 0xdb, 0xd0, 0xde, 0xd4, 0xd1, 0xda, 0xd7,
1447                 0xd1, 0xd6, 0xdd, 0xd0, 0xdb, 0xd8, 0xd6, 0xdd,
1448                 0xec, 0xea, 0xe1, 0xef, 0xea, 0xe4, 0xef, 0xe2,
1449                 0xe9, 0xe7, 0xe2, 0xec, 0xe6, 0xe9, 0xe8, 0xe5,
1450                 0xe0, 0xe6, 0xed, 0xe1, 0xe3, 0xed, 0xe4, 0xee,
1451                 0xee, 0xe0, 0xe7, 0xeb, 0xe5, 0xe3, 0xeb, 0xe8,
1452                 0xe9, 0xe4, 0xee, 0xe3, 0xef, 0xe2, 0xe5, 0xec,
1453                 0xe2, 0xe9, 0xe8, 0xe5, 0xec, 0xef, 0xe3, 0xea,
1454                 0xe7, 0xeb, 0xe0, 0xee, 0xe4, 0xe1, 0xea, 0xe7,
1455                 0xe1, 0xe6, 0xed, 0xe0, 0xeb, 0xe8, 0xe6, 0xed,
1456                 0x7c, 0x7a, 0x71, 0x7f, 0x7a, 0x74, 0x7f, 0x72,
1457                 0x79, 0x77, 0x72, 0x7c, 0x76, 0x79, 0x78, 0x75,
1458                 0x70, 0x76, 0x7d, 0x71, 0x73, 0x7d, 0x74, 0x7e,
1459                 0x7e, 0x70, 0x77, 0x7b, 0x75, 0x73, 0x7b, 0x78,
1460                 0x79, 0x74, 0x7e, 0x73, 0x7f, 0x72, 0x75, 0x7c,
1461                 0x72, 0x79, 0x78, 0x75, 0x7c, 0x7f, 0x73, 0x7a,
1462                 0x77, 0x7b, 0x70, 0x7e, 0x74, 0x71, 0x7a, 0x77,
1463                 0x71, 0x76, 0x7d, 0x70, 0x7b, 0x78, 0x76, 0x7d,
1464                 0x2c, 0x2a, 0x21, 0x2f, 0x2a, 0x24, 0x2f, 0x22,
1465                 0x29, 0x27, 0x22, 0x2c, 0x26, 0x29, 0x28, 0x25,
1466                 0x20, 0x26, 0x2d, 0x21, 0x23, 0x2d, 0x24, 0x2e,
1467                 0x2e, 0x20, 0x27, 0x2b, 0x25, 0x23, 0x2b, 0x28,
1468                 0x29, 0x24, 0x2e, 0x23, 0x2f, 0x22, 0x25, 0x2c,
1469                 0x22, 0x29, 0x28, 0x25, 0x2c, 0x2f, 0x23, 0x2a,
1470                 0x27, 0x2b, 0x20, 0x2e, 0x24, 0x21, 0x2a, 0x27,
1471                 0x21, 0x26, 0x2d, 0x20, 0x2b, 0x28, 0x26, 0x2d,
1472                 0x8c, 0x8a, 0x81, 0x8f, 0x8a, 0x84, 0x8f, 0x82,
1473                 0x89, 0x87, 0x82, 0x8c, 0x86, 0x89, 0x88, 0x85,
1474                 0x80, 0x86, 0x8d, 0x81, 0x83, 0x8d, 0x84, 0x8e,
1475                 0x8e, 0x80, 0x87, 0x8b, 0x85, 0x83, 0x8b, 0x88,
1476                 0x89, 0x84, 0x8e, 0x83, 0x8f, 0x82, 0x85, 0x8c,
1477                 0x82, 0x89, 0x88, 0x85, 0x8c, 0x8f, 0x83, 0x8a,
1478                 0x87, 0x8b, 0x80, 0x8e, 0x84, 0x81, 0x8a, 0x87,
1479                 0x81, 0x86, 0x8d, 0x80, 0x8b, 0x88, 0x86, 0x8d,
1480                 0xdc, 0xda, 0xd1, 0xdf, 0xda, 0xd4, 0xdf, 0xd2,
1481                 0xd9, 0xd7, 0xd2, 0xdc, 0xd6, 0xd9, 0xd8, 0xd5,
1482                 0xd0, 0xd6, 0xdd, 0xd1, 0xd3, 0xdd, 0xd4, 0xde,
1483                 0xde, 0xd0, 0xd7, 0xdb, 0xd5, 0xd3, 0xdb, 0xd8,
1484                 0xd9, 0xd4, 0xde, 0xd3, 0xdf, 0xd2, 0xd5, 0xdc,
1485                 0xd2, 0xd9, 0xd8, 0xd5, 0xdc, 0xdf, 0xd3, 0xda,
1486                 0xd7, 0xdb, 0xd0, 0xde, 0xd4, 0xd1, 0xda, 0xd7,
1487                 0xd1, 0xd6, 0xdd, 0xd0, 0xdb, 0xd8, 0xd6, 0xdd,
1488                 0xfc, 0xfa, 0xf1, 0xff, 0xfa, 0xf4, 0xff, 0xf2,
1489                 0xf9, 0xf7, 0xf2, 0xfc, 0xf6, 0xf9, 0xf8, 0xf5,
1490                 0xf0, 0xf6, 0xfd, 0xf1, 0xf3, 0xfd, 0xf4, 0xfe,
1491                 0xfe, 0xf0, 0xf7, 0xfb, 0xf5, 0xf3, 0xfb, 0xf8,
1492                 0xf9, 0xf4, 0xfe, 0xf3, 0xff, 0xf2, 0xf5, 0xfc,
1493                 0xf2, 0xf9, 0xf8, 0xf5, 0xfc, 0xff, 0xf3, 0xfa,
1494                 0xf7, 0xfb, 0xf0, 0xfe, 0xf4, 0xf1, 0xfa, 0xf7,
1495                 0xf1, 0xf6, 0xfd, 0xf0, 0xfb, 0xf8, 0xf6, 0xfd,
1496                 0x6c, 0x6a, 0x61, 0x6f, 0x6a, 0x64, 0x6f, 0x62,
1497                 0x69, 0x67, 0x62, 0x6c, 0x66, 0x69, 0x68, 0x65,
1498                 0x60, 0x66, 0x6d, 0x61, 0x63, 0x6d, 0x64, 0x6e,
1499                 0x6e, 0x60, 0x67, 0x6b, 0x65, 0x63, 0x6b, 0x68,
1500                 0x69, 0x64, 0x6e, 0x63, 0x6f, 0x62, 0x65, 0x6c,
1501                 0x62, 0x69, 0x68, 0x65, 0x6c, 0x6f, 0x63, 0x6a,
1502                 0x67, 0x6b, 0x60, 0x6e, 0x64, 0x61, 0x6a, 0x67,
1503                 0x61, 0x66, 0x6d, 0x60, 0x6b, 0x68, 0x66, 0x6d,
1504                 0x9c, 0x9a, 0x91, 0x9f, 0x9a, 0x94, 0x9f, 0x92,
1505                 0x99, 0x97, 0x92, 0x9c, 0x96, 0x99, 0x98, 0x95,
1506                 0x90, 0x96, 0x9d, 0x91, 0x93, 0x9d, 0x94, 0x9e,
1507                 0x9e, 0x90, 0x97, 0x9b, 0x95, 0x93, 0x9b, 0x98,
1508                 0x99, 0x94, 0x9e, 0x93, 0x9f, 0x92, 0x95, 0x9c,
1509                 0x92, 0x99, 0x98, 0x95, 0x9c, 0x9f, 0x93, 0x9a,
1510                 0x97, 0x9b, 0x90, 0x9e, 0x94, 0x91, 0x9a, 0x97,
1511                 0x91, 0x96, 0x9d, 0x90, 0x9b, 0x98, 0x96, 0x9d,
1512                 0xfc, 0xfa, 0xf1, 0xff, 0xfa, 0xf4, 0xff, 0xf2,
1513                 0xf9, 0xf7, 0xf2, 0xfc, 0xf6, 0xf9, 0xf8, 0xf5,
1514                 0xf0, 0xf6, 0xfd, 0xf1, 0xf3, 0xfd, 0xf4, 0xfe,
1515                 0xfe, 0xf0, 0xf7, 0xfb, 0xf5, 0xf3, 0xfb, 0xf8,
1516                 0xf9, 0xf4, 0xfe, 0xf3, 0xff, 0xf2, 0xf5, 0xfc,
1517                 0xf2, 0xf9, 0xf8, 0xf5, 0xfc, 0xff, 0xf3, 0xfa,
1518                 0xf7, 0xfb, 0xf0, 0xfe, 0xf4, 0xf1, 0xfa, 0xf7,
1519                 0xf1, 0xf6, 0xfd, 0xf0, 0xfb, 0xf8, 0xf6, 0xfd,
1520                 0xcc, 0xca, 0xc1, 0xcf, 0xca, 0xc4, 0xcf, 0xc2,
1521                 0xc9, 0xc7, 0xc2, 0xcc, 0xc6, 0xc9, 0xc8, 0xc5,
1522                 0xc0, 0xc6, 0xcd, 0xc1, 0xc3, 0xcd, 0xc4, 0xce,
1523                 0xce, 0xc0, 0xc7, 0xcb, 0xc5, 0xc3, 0xcb, 0xc8,
1524                 0xc9, 0xc4, 0xce, 0xc3, 0xcf, 0xc2, 0xc5, 0xcc,
1525                 0xc2, 0xc9, 0xc8, 0xc5, 0xcc, 0xcf, 0xc3, 0xca,
1526                 0xc7, 0xcb, 0xc0, 0xce, 0xc4, 0xc1, 0xca, 0xc7,
1527                 0xc1, 0xc6, 0xcd, 0xc0, 0xcb, 0xc8, 0xc6, 0xcd,
1528                 0x0c, 0x0a, 0x01, 0x0f, 0x0a, 0x04, 0x0f, 0x02,
1529                 0x09, 0x07, 0x02, 0x0c, 0x06, 0x09, 0x08, 0x05,
1530                 0x00, 0x06, 0x0d, 0x01, 0x03, 0x0d, 0x04, 0x0e,
1531                 0x0e, 0x00, 0x07, 0x0b, 0x05, 0x03, 0x0b, 0x08,
1532                 0x09, 0x04, 0x0e, 0x03, 0x0f, 0x02, 0x05, 0x0c,
1533                 0x02, 0x09, 0x08, 0x05, 0x0c, 0x0f, 0x03, 0x0a,
1534                 0x07, 0x0b, 0x00, 0x0e, 0x04, 0x01, 0x0a, 0x07,
1535                 0x01, 0x06, 0x0d, 0x00, 0x0b, 0x08, 0x06, 0x0d,
1536                 0x5c, 0x5a, 0x51, 0x5f, 0x5a, 0x54, 0x5f, 0x52,
1537                 0x59, 0x57, 0x52, 0x5c, 0x56, 0x59, 0x58, 0x55,
1538                 0x50, 0x56, 0x5d, 0x51, 0x53, 0x5d, 0x54, 0x5e,
1539                 0x5e, 0x50, 0x57, 0x5b, 0x55, 0x53, 0x5b, 0x58,
1540                 0x59, 0x54, 0x5e, 0x53, 0x5f, 0x52, 0x55, 0x5c,
1541                 0x52, 0x59, 0x58, 0x55, 0x5c, 0x5f, 0x53, 0x5a,
1542                 0x57, 0x5b, 0x50, 0x5e, 0x54, 0x51, 0x5a, 0x57,
1543                 0x51, 0x56, 0x5d, 0x50, 0x5b, 0x58, 0x56, 0x5d,
1544                 0x9c, 0x9a, 0x91, 0x9f, 0x9a, 0x94, 0x9f, 0x92,
1545                 0x99, 0x97, 0x92, 0x9c, 0x96, 0x99, 0x98, 0x95,
1546                 0x90, 0x96, 0x9d, 0x91, 0x93, 0x9d, 0x94, 0x9e,
1547                 0x9e, 0x90, 0x97, 0x9b, 0x95, 0x93, 0x9b, 0x98,
1548                 0x99, 0x94, 0x9e, 0x93, 0x9f, 0x92, 0x95, 0x9c,
1549                 0x92, 0x99, 0x98, 0x95, 0x9c, 0x9f, 0x93, 0x9a,
1550                 0x97, 0x9b, 0x90, 0x9e, 0x94, 0x91, 0x9a, 0x97,
1551                 0x91, 0x96, 0x9d, 0x90, 0x9b, 0x98, 0x96, 0x9d,
1552                 0x6c, 0x6a, 0x61, 0x6f, 0x6a, 0x64, 0x6f, 0x62,
1553                 0x69, 0x67, 0x62, 0x6c, 0x66, 0x69, 0x68, 0x65,
1554                 0x60, 0x66, 0x6d, 0x61, 0x63, 0x6d, 0x64, 0x6e,
1555                 0x6e, 0x60, 0x67, 0x6b, 0x65, 0x63, 0x6b, 0x68,
1556                 0x69, 0x64, 0x6e, 0x63, 0x6f, 0x62, 0x65, 0x6c,
1557                 0x62, 0x69, 0x68, 0x65, 0x6c, 0x6f, 0x63, 0x6a,
1558                 0x67, 0x6b, 0x60, 0x6e, 0x64, 0x61, 0x6a, 0x67,
1559                 0x61, 0x66, 0x6d, 0x60, 0x6b, 0x68, 0x66, 0x6d,
1560                 0xac, 0xaa, 0xa1, 0xaf, 0xaa, 0xa4, 0xaf, 0xa2,
1561                 0xa9, 0xa7, 0xa2, 0xac, 0xa6, 0xa9, 0xa8, 0xa5,
1562                 0xa0, 0xa6, 0xad, 0xa1, 0xa3, 0xad, 0xa4, 0xae,
1563                 0xae, 0xa0, 0xa7, 0xab, 0xa5, 0xa3, 0xab, 0xa8,
1564                 0xa9, 0xa4, 0xae, 0xa3, 0xaf, 0xa2, 0xa5, 0xac,
1565                 0xa2, 0xa9, 0xa8, 0xa5, 0xac, 0xaf, 0xa3, 0xaa,
1566                 0xa7, 0xab, 0xa0, 0xae, 0xa4, 0xa1, 0xaa, 0xa7,
1567                 0xa1, 0xa6, 0xad, 0xa0, 0xab, 0xa8, 0xa6, 0xad,
1568                 0x3c, 0x3a, 0x31, 0x3f, 0x3a, 0x34, 0x3f, 0x32,
1569                 0x39, 0x37, 0x32, 0x3c, 0x36, 0x39, 0x38, 0x35,
1570                 0x30, 0x36, 0x3d, 0x31, 0x33, 0x3d, 0x34, 0x3e,
1571                 0x3e, 0x30, 0x37, 0x3b, 0x35, 0x33, 0x3b, 0x38,
1572                 0x39, 0x34, 0x3e, 0x33, 0x3f, 0x32, 0x35, 0x3c,
1573                 0x32, 0x39, 0x38, 0x35, 0x3c, 0x3f, 0x33, 0x3a,
1574                 0x37, 0x3b, 0x30, 0x3e, 0x34, 0x31, 0x3a, 0x37,
1575                 0x31, 0x36, 0x3d, 0x30, 0x3b, 0x38, 0x36, 0x3d,
1576                 0x4c, 0x4a, 0x41, 0x4f, 0x4a, 0x44, 0x4f, 0x42,
1577                 0x49, 0x47, 0x42, 0x4c, 0x46, 0x49, 0x48, 0x45,
1578                 0x40, 0x46, 0x4d, 0x41, 0x43, 0x4d, 0x44, 0x4e,
1579                 0x4e, 0x40, 0x47, 0x4b, 0x45, 0x43, 0x4b, 0x48,
1580                 0x49, 0x44, 0x4e, 0x43, 0x4f, 0x42, 0x45, 0x4c,
1581                 0x42, 0x49, 0x48, 0x45, 0x4c, 0x4f, 0x43, 0x4a,
1582                 0x47, 0x4b, 0x40, 0x4e, 0x44, 0x41, 0x4a, 0x47,
1583                 0x41, 0x46, 0x4d, 0x40, 0x4b, 0x48, 0x46, 0x4d,
1584                 0x0c, 0x0a, 0x01, 0x0f, 0x0a, 0x04, 0x0f, 0x02,
1585                 0x09, 0x07, 0x02, 0x0c, 0x06, 0x09, 0x08, 0x05,
1586                 0x00, 0x06, 0x0d, 0x01, 0x03, 0x0d, 0x04, 0x0e,
1587                 0x0e, 0x00, 0x07, 0x0b, 0x05, 0x03, 0x0b, 0x08,
1588                 0x09, 0x04, 0x0e, 0x03, 0x0f, 0x02, 0x05, 0x0c,
1589                 0x02, 0x09, 0x08, 0x05, 0x0c, 0x0f, 0x03, 0x0a,
1590                 0x07, 0x0b, 0x00, 0x0e, 0x04, 0x01, 0x0a, 0x07,
1591                 0x01, 0x06, 0x0d, 0x00, 0x0b, 0x08, 0x06, 0x0d,
1592                 0x5c, 0x5a, 0x51, 0x5f, 0x5a, 0x54, 0x5f, 0x52,
1593                 0x59, 0x57, 0x52, 0x5c, 0x56, 0x59, 0x58, 0x55,
1594                 0x50, 0x56, 0x5d, 0x51, 0x53, 0x5d, 0x54, 0x5e,
1595                 0x5e, 0x50, 0x57, 0x5b, 0x55, 0x53, 0x5b, 0x58,
1596                 0x59, 0x54, 0x5e, 0x53, 0x5f, 0x52, 0x55, 0x5c,
1597                 0x52, 0x59, 0x58, 0x55, 0x5c, 0x5f, 0x53, 0x5a,
1598                 0x57, 0x5b, 0x50, 0x5e, 0x54, 0x51, 0x5a, 0x57,
1599                 0x51, 0x56, 0x5d, 0x50, 0x5b, 0x58, 0x56, 0x5d,
1600                 0xec, 0xea, 0xe1, 0xef, 0xea, 0xe4, 0xef, 0xe2,
1601                 0xe9, 0xe7, 0xe2, 0xec, 0xe6, 0xe9, 0xe8, 0xe5,
1602                 0xe0, 0xe6, 0xed, 0xe1, 0xe3, 0xed, 0xe4, 0xee,
1603                 0xee, 0xe0, 0xe7, 0xeb, 0xe5, 0xe3, 0xeb, 0xe8,
1604                 0xe9, 0xe4, 0xee, 0xe3, 0xef, 0xe2, 0xe5, 0xec,
1605                 0xe2, 0xe9, 0xe8, 0xe5, 0xec, 0xef, 0xe3, 0xea,
1606                 0xe7, 0xeb, 0xe0, 0xee, 0xe4, 0xe1, 0xea, 0xe7,
1607                 0xe1, 0xe6, 0xed, 0xe0, 0xeb, 0xe8, 0xe6, 0xed,
1608                 0x3c, 0x3a, 0x31, 0x3f, 0x3a, 0x34, 0x3f, 0x32,
1609                 0x39, 0x37, 0x32, 0x3c, 0x36, 0x39, 0x38, 0x35,
1610                 0x30, 0x36, 0x3d, 0x31, 0x33, 0x3d, 0x34, 0x3e,
1611                 0x3e, 0x30, 0x37, 0x3b, 0x35, 0x33, 0x3b, 0x38,
1612                 0x39, 0x34, 0x3e, 0x33, 0x3f, 0x32, 0x35, 0x3c,
1613                 0x32, 0x39, 0x38, 0x35, 0x3c, 0x3f, 0x33, 0x3a,
1614                 0x37, 0x3b, 0x30, 0x3e, 0x34, 0x31, 0x3a, 0x37,
1615                 0x31, 0x36, 0x3d, 0x30, 0x3b, 0x38, 0x36, 0x3d,
1616         },{
1617                 0x4d, 0x41, 0x42, 0x4f, 0x48, 0x4d, 0x44, 0x48,
1618                 0x46, 0x4a, 0x4f, 0x43, 0x4b, 0x47, 0x41, 0x44,
1619                 0x4a, 0x4c, 0x49, 0x45, 0x43, 0x46, 0x4e, 0x4b,
1620                 0x45, 0x40, 0x40, 0x4e, 0x4c, 0x49, 0x47, 0x42,
1621                 0x47, 0x42, 0x4b, 0x41, 0x44, 0x4e, 0x41, 0x47,
1622                 0x49, 0x44, 0x4c, 0x4a, 0x4e, 0x48, 0x42, 0x4d,
1623                 0x40, 0x4f, 0x46, 0x4c, 0x4a, 0x49, 0x4d, 0x40,
1624                 0x4f, 0x43, 0x43, 0x45, 0x45, 0x46, 0x48, 0x4b,
1625                 0xdd, 0xd1, 0xd2, 0xdf, 0xd8, 0xdd, 0xd4, 0xd8,
1626                 0xd6, 0xda, 0xdf, 0xd3, 0xdb, 0xd7, 0xd1, 0xd4,
1627                 0xda, 0xdc, 0xd9, 0xd5, 0xd3, 0xd6, 0xde, 0xdb,
1628                 0xd5, 0xd0, 0xd0, 0xde, 0xdc, 0xd9, 0xd7, 0xd2,
1629                 0xd7, 0xd2, 0xdb, 0xd1, 0xd4, 0xde, 0xd1, 0xd7,
1630                 0xd9, 0xd4, 0xdc, 0xda, 0xde, 0xd8, 0xd2, 0xdd,
1631                 0xd0, 0xdf, 0xd6, 0xdc, 0xda, 0xd9, 0xdd, 0xd0,
1632                 0xdf, 0xd3, 0xd3, 0xd5, 0xd5, 0xd6, 0xd8, 0xdb,
1633                 0xbd, 0xb1, 0xb2, 0xbf, 0xb8, 0xbd, 0xb4, 0xb8,
1634                 0xb6, 0xba, 0xbf, 0xb3, 0xbb, 0xb7, 0xb1, 0xb4,
1635                 0xba, 0xbc, 0xb9, 0xb5, 0xb3, 0xb6, 0xbe, 0xbb,
1636                 0xb5, 0xb0, 0xb0, 0xbe, 0xbc, 0xb9, 0xb7, 0xb2,
1637                 0xb7, 0xb2, 0xbb, 0xb1, 0xb4, 0xbe, 0xb1, 0xb7,
1638                 0xb9, 0xb4, 0xbc, 0xba, 0xbe, 0xb8, 0xb2, 0xbd,
1639                 0xb0, 0xbf, 0xb6, 0xbc, 0xba, 0xb9, 0xbd, 0xb0,
1640                 0xbf, 0xb3, 0xb3, 0xb5, 0xb5, 0xb6, 0xb8, 0xbb,
1641                 0x0d, 0x01, 0x02, 0x0f, 0x08, 0x0d, 0x04, 0x08,
1642                 0x06, 0x0a, 0x0f, 0x03, 0x0b, 0x07, 0x01, 0x04,
1643                 0x0a, 0x0c, 0x09, 0x05, 0x03, 0x06, 0x0e, 0x0b,
1644                 0x05, 0x00, 0x00, 0x0e, 0x0c, 0x09, 0x07, 0x02,
1645                 0x07, 0x02, 0x0b, 0x01, 0x04, 0x0e, 0x01, 0x07,
1646                 0x09, 0x04, 0x0c, 0x0a, 0x0e, 0x08, 0x02, 0x0d,
1647                 0x00, 0x0f, 0x06, 0x0c, 0x0a, 0x09, 0x0d, 0x00,
1648                 0x0f, 0x03, 0x03, 0x05, 0x05, 0x06, 0x08, 0x0b,
1649                 0x2d, 0x21, 0x22, 0x2f, 0x28, 0x2d, 0x24, 0x28,
1650                 0x26, 0x2a, 0x2f, 0x23, 0x2b, 0x27, 0x21, 0x24,
1651                 0x2a, 0x2c, 0x29, 0x25, 0x23, 0x26, 0x2e, 0x2b,
1652                 0x25, 0x20, 0x20, 0x2e, 0x2c, 0x29, 0x27, 0x22,
1653                 0x27, 0x22, 0x2b, 0x21, 0x24, 0x2e, 0x21, 0x27,
1654                 0x29, 0x24, 0x2c, 0x2a, 0x2e, 0x28, 0x22, 0x2d,
1655                 0x20, 0x2f, 0x26, 0x2c, 0x2a, 0x29, 0x2d, 0x20,
1656                 0x2f, 0x23, 0x23, 0x25, 0x25, 0x26, 0x28, 0x2b,
1657                 0xbd, 0xb1, 0xb2, 0xbf, 0xb8, 0xbd, 0xb4, 0xb8,
1658                 0xb6, 0xba, 0xbf, 0xb3, 0xbb, 0xb7, 0xb1, 0xb4,
1659                 0xba, 0xbc, 0xb9, 0xb5, 0xb3, 0xb6, 0xbe, 0xbb,
1660                 0xb5, 0xb0, 0xb0, 0xbe, 0xbc, 0xb9, 0xb7, 0xb2,
1661                 0xb7, 0xb2, 0xbb, 0xb1, 0xb4, 0xbe, 0xb1, 0xb7,
1662                 0xb9, 0xb4, 0xbc, 0xba, 0xbe, 0xb8, 0xb2, 0xbd,
1663                 0xb0, 0xbf, 0xb6, 0xbc, 0xba, 0xb9, 0xbd, 0xb0,
1664                 0xbf, 0xb3, 0xb3, 0xb5, 0xb5, 0xb6, 0xb8, 0xbb,
1665                 0xed, 0xe1, 0xe2, 0xef, 0xe8, 0xed, 0xe4, 0xe8,
1666                 0xe6, 0xea, 0xef, 0xe3, 0xeb, 0xe7, 0xe1, 0xe4,
1667                 0xea, 0xec, 0xe9, 0xe5, 0xe3, 0xe6, 0xee, 0xeb,
1668                 0xe5, 0xe0, 0xe0, 0xee, 0xec, 0xe9, 0xe7, 0xe2,
1669                 0xe7, 0xe2, 0xeb, 0xe1, 0xe4, 0xee, 0xe1, 0xe7,
1670                 0xe9, 0xe4, 0xec, 0xea, 0xee, 0xe8, 0xe2, 0xed,
1671                 0xe0, 0xef, 0xe6, 0xec, 0xea, 0xe9, 0xed, 0xe0,
1672                 0xef, 0xe3, 0xe3, 0xe5, 0xe5, 0xe6, 0xe8, 0xeb,
1673                 0x7d, 0x71, 0x72, 0x7f, 0x78, 0x7d, 0x74, 0x78,
1674                 0x76, 0x7a, 0x7f, 0x73, 0x7b, 0x77, 0x71, 0x74,
1675                 0x7a, 0x7c, 0x79, 0x75, 0x73, 0x76, 0x7e, 0x7b,
1676                 0x75, 0x70, 0x70, 0x7e, 0x7c, 0x79, 0x77, 0x72,
1677                 0x77, 0x72, 0x7b, 0x71, 0x74, 0x7e, 0x71, 0x77,
1678                 0x79, 0x74, 0x7c, 0x7a, 0x7e, 0x78, 0x72, 0x7d,
1679                 0x70, 0x7f, 0x76, 0x7c, 0x7a, 0x79, 0x7d, 0x70,
1680                 0x7f, 0x73, 0x73, 0x75, 0x75, 0x76, 0x78, 0x7b,
1681                 0xfd, 0xf1, 0xf2, 0xff, 0xf8, 0xfd, 0xf4, 0xf8,
1682                 0xf6, 0xfa, 0xff, 0xf3, 0xfb, 0xf7, 0xf1, 0xf4,
1683                 0xfa, 0xfc, 0xf9, 0xf5, 0xf3, 0xf6, 0xfe, 0xfb,
1684                 0xf5, 0xf0, 0xf0, 0xfe, 0xfc, 0xf9, 0xf7, 0xf2,
1685                 0xf7, 0xf2, 0xfb, 0xf1, 0xf4, 0xfe, 0xf1, 0xf7,
1686                 0xf9, 0xf4, 0xfc, 0xfa, 0xfe, 0xf8, 0xf2, 0xfd,
1687                 0xf0, 0xff, 0xf6, 0xfc, 0xfa, 0xf9, 0xfd, 0xf0,
1688                 0xff, 0xf3, 0xf3, 0xf5, 0xf5, 0xf6, 0xf8, 0xfb,
1689                 0x4d, 0x41, 0x42, 0x4f, 0x48, 0x4d, 0x44, 0x48,
1690                 0x46, 0x4a, 0x4f, 0x43, 0x4b, 0x47, 0x41, 0x44,
1691                 0x4a, 0x4c, 0x49, 0x45, 0x43, 0x46, 0x4e, 0x4b,
1692                 0x45, 0x40, 0x40, 0x4e, 0x4c, 0x49, 0x47, 0x42,
1693                 0x47, 0x42, 0x4b, 0x41, 0x44, 0x4e, 0x41, 0x47,
1694                 0x49, 0x44, 0x4c, 0x4a, 0x4e, 0x48, 0x42, 0x4d,
1695                 0x40, 0x4f, 0x46, 0x4c, 0x4a, 0x49, 0x4d, 0x40,
1696                 0x4f, 0x43, 0x43, 0x45, 0x45, 0x46, 0x48, 0x4b,
1697                 0x0d, 0x01, 0x02, 0x0f, 0x08, 0x0d, 0x04, 0x08,
1698                 0x06, 0x0a, 0x0f, 0x03, 0x0b, 0x07, 0x01, 0x04,
1699                 0x0a, 0x0c, 0x09, 0x05, 0x03, 0x06, 0x0e, 0x0b,
1700                 0x05, 0x00, 0x00, 0x0e, 0x0c, 0x09, 0x07, 0x02,
1701                 0x07, 0x02, 0x0b, 0x01, 0x04, 0x0e, 0x01, 0x07,
1702                 0x09, 0x04, 0x0c, 0x0a, 0x0e, 0x08, 0x02, 0x0d,
1703                 0x00, 0x0f, 0x06, 0x0c, 0x0a, 0x09, 0x0d, 0x00,
1704                 0x0f, 0x03, 0x03, 0x05, 0x05, 0x06, 0x08, 0x0b,
1705                 0x9d, 0x91, 0x92, 0x9f, 0x98, 0x9d, 0x94, 0x98,
1706                 0x96, 0x9a, 0x9f, 0x93, 0x9b, 0x97, 0x91, 0x94,
1707                 0x9a, 0x9c, 0x99, 0x95, 0x93, 0x96, 0x9e, 0x9b,
1708                 0x95, 0x90, 0x90, 0x9e, 0x9c, 0x99, 0x97, 0x92,
1709                 0x97, 0x92, 0x9b, 0x91, 0x94, 0x9e, 0x91, 0x97,
1710                 0x99, 0x94, 0x9c, 0x9a, 0x9e, 0x98, 0x92, 0x9d,
1711                 0x90, 0x9f, 0x96, 0x9c, 0x9a, 0x99, 0x9d, 0x90,
1712                 0x9f, 0x93, 0x93, 0x95, 0x95, 0x96, 0x98, 0x9b,
1713                 0x8d, 0x81, 0x82, 0x8f, 0x88, 0x8d, 0x84, 0x88,
1714                 0x86, 0x8a, 0x8f, 0x83, 0x8b, 0x87, 0x81, 0x84,
1715                 0x8a, 0x8c, 0x89, 0x85, 0x83, 0x86, 0x8e, 0x8b,
1716                 0x85, 0x80, 0x80, 0x8e, 0x8c, 0x89, 0x87, 0x82,
1717                 0x87, 0x82, 0x8b, 0x81, 0x84, 0x8e, 0x81, 0x87,
1718                 0x89, 0x84, 0x8c, 0x8a, 0x8e, 0x88, 0x82, 0x8d,
1719                 0x80, 0x8f, 0x86, 0x8c, 0x8a, 0x89, 0x8d, 0x80,
1720                 0x8f, 0x83, 0x83, 0x85, 0x85, 0x86, 0x88, 0x8b,
1721                 0x1d, 0x11, 0x12, 0x1f, 0x18, 0x1d, 0x14, 0x18,
1722                 0x16, 0x1a, 0x1f, 0x13, 0x1b, 0x17, 0x11, 0x14,
1723                 0x1a, 0x1c, 0x19, 0x15, 0x13, 0x16, 0x1e, 0x1b,
1724                 0x15, 0x10, 0x10, 0x1e, 0x1c, 0x19, 0x17, 0x12,
1725                 0x17, 0x12, 0x1b, 0x11, 0x14, 0x1e, 0x11, 0x17,
1726                 0x19, 0x14, 0x1c, 0x1a, 0x1e, 0x18, 0x12, 0x1d,
1727                 0x10, 0x1f, 0x16, 0x1c, 0x1a, 0x19, 0x1d, 0x10,
1728                 0x1f, 0x13, 0x13, 0x15, 0x15, 0x16, 0x18, 0x1b,
1729                 0xdd, 0xd1, 0xd2, 0xdf, 0xd8, 0xdd, 0xd4, 0xd8,
1730                 0xd6, 0xda, 0xdf, 0xd3, 0xdb, 0xd7, 0xd1, 0xd4,
1731                 0xda, 0xdc, 0xd9, 0xd5, 0xd3, 0xd6, 0xde, 0xdb,
1732                 0xd5, 0xd0, 0xd0, 0xde, 0xdc, 0xd9, 0xd7, 0xd2,
1733                 0xd7, 0xd2, 0xdb, 0xd1, 0xd4, 0xde, 0xd1, 0xd7,
1734                 0xd9, 0xd4, 0xdc, 0xda, 0xde, 0xd8, 0xd2, 0xdd,
1735                 0xd0, 0xdf, 0xd6, 0xdc, 0xda, 0xd9, 0xdd, 0xd0,
1736                 0xdf, 0xd3, 0xd3, 0xd5, 0xd5, 0xd6, 0xd8, 0xdb,
1737                 0xad, 0xa1, 0xa2, 0xaf, 0xa8, 0xad, 0xa4, 0xa8,
1738                 0xa6, 0xaa, 0xaf, 0xa3, 0xab, 0xa7, 0xa1, 0xa4,
1739                 0xaa, 0xac, 0xa9, 0xa5, 0xa3, 0xa6, 0xae, 0xab,
1740                 0xa5, 0xa0, 0xa0, 0xae, 0xac, 0xa9, 0xa7, 0xa2,
1741                 0xa7, 0xa2, 0xab, 0xa1, 0xa4, 0xae, 0xa1, 0xa7,
1742                 0xa9, 0xa4, 0xac, 0xaa, 0xae, 0xa8, 0xa2, 0xad,
1743                 0xa0, 0xaf, 0xa6, 0xac, 0xaa, 0xa9, 0xad, 0xa0,
1744                 0xaf, 0xa3, 0xa3, 0xa5, 0xa5, 0xa6, 0xa8, 0xab,
1745                 0x3d, 0x31, 0x32, 0x3f, 0x38, 0x3d, 0x34, 0x38,
1746                 0x36, 0x3a, 0x3f, 0x33, 0x3b, 0x37, 0x31, 0x34,
1747                 0x3a, 0x3c, 0x39, 0x35, 0x33, 0x36, 0x3e, 0x3b,
1748                 0x35, 0x30, 0x30, 0x3e, 0x3c, 0x39, 0x37, 0x32,
1749                 0x37, 0x32, 0x3b, 0x31, 0x34, 0x3e, 0x31, 0x37,
1750                 0x39, 0x34, 0x3c, 0x3a, 0x3e, 0x38, 0x32, 0x3d,
1751                 0x30, 0x3f, 0x36, 0x3c, 0x3a, 0x39, 0x3d, 0x30,
1752                 0x3f, 0x33, 0x33, 0x35, 0x35, 0x36, 0x38, 0x3b,
1753                 0xed, 0xe1, 0xe2, 0xef, 0xe8, 0xed, 0xe4, 0xe8,
1754                 0xe6, 0xea, 0xef, 0xe3, 0xeb, 0xe7, 0xe1, 0xe4,
1755                 0xea, 0xec, 0xe9, 0xe5, 0xe3, 0xe6, 0xee, 0xeb,
1756                 0xe5, 0xe0, 0xe0, 0xee, 0xec, 0xe9, 0xe7, 0xe2,
1757                 0xe7, 0xe2, 0xeb, 0xe1, 0xe4, 0xee, 0xe1, 0xe7,
1758                 0xe9, 0xe4, 0xec, 0xea, 0xee, 0xe8, 0xe2, 0xed,
1759                 0xe0, 0xef, 0xe6, 0xec, 0xea, 0xe9, 0xed, 0xe0,
1760                 0xef, 0xe3, 0xe3, 0xe5, 0xe5, 0xe6, 0xe8, 0xeb,
1761                 0xcd, 0xc1, 0xc2, 0xcf, 0xc8, 0xcd, 0xc4, 0xc8,
1762                 0xc6, 0xca, 0xcf, 0xc3, 0xcb, 0xc7, 0xc1, 0xc4,
1763                 0xca, 0xcc, 0xc9, 0xc5, 0xc3, 0xc6, 0xce, 0xcb,
1764                 0xc5, 0xc0, 0xc0, 0xce, 0xcc, 0xc9, 0xc7, 0xc2,
1765                 0xc7, 0xc2, 0xcb, 0xc1, 0xc4, 0xce, 0xc1, 0xc7,
1766                 0xc9, 0xc4, 0xcc, 0xca, 0xce, 0xc8, 0xc2, 0xcd,
1767                 0xc0, 0xcf, 0xc6, 0xcc, 0xca, 0xc9, 0xcd, 0xc0,
1768                 0xcf, 0xc3, 0xc3, 0xc5, 0xc5, 0xc6, 0xc8, 0xcb,
1769                 0x3d, 0x31, 0x32, 0x3f, 0x38, 0x3d, 0x34, 0x38,
1770                 0x36, 0x3a, 0x3f, 0x33, 0x3b, 0x37, 0x31, 0x34,
1771                 0x3a, 0x3c, 0x39, 0x35, 0x33, 0x36, 0x3e, 0x3b,
1772                 0x35, 0x30, 0x30, 0x3e, 0x3c, 0x39, 0x37, 0x32,
1773                 0x37, 0x32, 0x3b, 0x31, 0x34, 0x3e, 0x31, 0x37,
1774                 0x39, 0x34, 0x3c, 0x3a, 0x3e, 0x38, 0x32, 0x3d,
1775                 0x30, 0x3f, 0x36, 0x3c, 0x3a, 0x39, 0x3d, 0x30,
1776                 0x3f, 0x33, 0x33, 0x35, 0x35, 0x36, 0x38, 0x3b,
1777                 0x9d, 0x91, 0x92, 0x9f, 0x98, 0x9d, 0x94, 0x98,
1778                 0x96, 0x9a, 0x9f, 0x93, 0x9b, 0x97, 0x91, 0x94,
1779                 0x9a, 0x9c, 0x99, 0x95, 0x93, 0x96, 0x9e, 0x9b,
1780                 0x95, 0x90, 0x90, 0x9e, 0x9c, 0x99, 0x97, 0x92,
1781                 0x97, 0x92, 0x9b, 0x91, 0x94, 0x9e, 0x91, 0x97,
1782                 0x99, 0x94, 0x9c, 0x9a, 0x9e, 0x98, 0x92, 0x9d,
1783                 0x90, 0x9f, 0x96, 0x9c, 0x9a, 0x99, 0x9d, 0x90,
1784                 0x9f, 0x93, 0x93, 0x95, 0x95, 0x96, 0x98, 0x9b,
1785                 0x5d, 0x51, 0x52, 0x5f, 0x58, 0x5d, 0x54, 0x58,
1786                 0x56, 0x5a, 0x5f, 0x53, 0x5b, 0x57, 0x51, 0x54,
1787                 0x5a, 0x5c, 0x59, 0x55, 0x53, 0x56, 0x5e, 0x5b,
1788                 0x55, 0x50, 0x50, 0x5e, 0x5c, 0x59, 0x57, 0x52,
1789                 0x57, 0x52, 0x5b, 0x51, 0x54, 0x5e, 0x51, 0x57,
1790                 0x59, 0x54, 0x5c, 0x5a, 0x5e, 0x58, 0x52, 0x5d,
1791                 0x50, 0x5f, 0x56, 0x5c, 0x5a, 0x59, 0x5d, 0x50,
1792                 0x5f, 0x53, 0x53, 0x55, 0x55, 0x56, 0x58, 0x5b,
1793                 0x7d, 0x71, 0x72, 0x7f, 0x78, 0x7d, 0x74, 0x78,
1794                 0x76, 0x7a, 0x7f, 0x73, 0x7b, 0x77, 0x71, 0x74,
1795                 0x7a, 0x7c, 0x79, 0x75, 0x73, 0x76, 0x7e, 0x7b,
1796                 0x75, 0x70, 0x70, 0x7e, 0x7c, 0x79, 0x77, 0x72,
1797                 0x77, 0x72, 0x7b, 0x71, 0x74, 0x7e, 0x71, 0x77,
1798                 0x79, 0x74, 0x7c, 0x7a, 0x7e, 0x78, 0x72, 0x7d,
1799                 0x70, 0x7f, 0x76, 0x7c, 0x7a, 0x79, 0x7d, 0x70,
1800                 0x7f, 0x73, 0x73, 0x75, 0x75, 0x76, 0x78, 0x7b,
1801                 0xcd, 0xc1, 0xc2, 0xcf, 0xc8, 0xcd, 0xc4, 0xc8,
1802                 0xc6, 0xca, 0xcf, 0xc3, 0xcb, 0xc7, 0xc1, 0xc4,
1803                 0xca, 0xcc, 0xc9, 0xc5, 0xc3, 0xc6, 0xce, 0xcb,
1804                 0xc5, 0xc0, 0xc0, 0xce, 0xcc, 0xc9, 0xc7, 0xc2,
1805                 0xc7, 0xc2, 0xcb, 0xc1, 0xc4, 0xce, 0xc1, 0xc7,
1806                 0xc9, 0xc4, 0xcc, 0xca, 0xce, 0xc8, 0xc2, 0xcd,
1807                 0xc0, 0xcf, 0xc6, 0xcc, 0xca, 0xc9, 0xcd, 0xc0,
1808                 0xcf, 0xc3, 0xc3, 0xc5, 0xc5, 0xc6, 0xc8, 0xcb,
1809                 0x5d, 0x51, 0x52, 0x5f, 0x58, 0x5d, 0x54, 0x58,
1810                 0x56, 0x5a, 0x5f, 0x53, 0x5b, 0x57, 0x51, 0x54,
1811                 0x5a, 0x5c, 0x59, 0x55, 0x53, 0x56, 0x5e, 0x5b,
1812                 0x55, 0x50, 0x50, 0x5e, 0x5c, 0x59, 0x57, 0x52,
1813                 0x57, 0x52, 0x5b, 0x51, 0x54, 0x5e, 0x51, 0x57,
1814                 0x59, 0x54, 0x5c, 0x5a, 0x5e, 0x58, 0x52, 0x5d,
1815                 0x50, 0x5f, 0x56, 0x5c, 0x5a, 0x59, 0x5d, 0x50,
1816                 0x5f, 0x53, 0x53, 0x55, 0x55, 0x56, 0x58, 0x5b,
1817                 0x2d, 0x21, 0x22, 0x2f, 0x28, 0x2d, 0x24, 0x28,
1818                 0x26, 0x2a, 0x2f, 0x23, 0x2b, 0x27, 0x21, 0x24,
1819                 0x2a, 0x2c, 0x29, 0x25, 0x23, 0x26, 0x2e, 0x2b,
1820                 0x25, 0x20, 0x20, 0x2e, 0x2c, 0x29, 0x27, 0x22,
1821                 0x27, 0x22, 0x2b, 0x21, 0x24, 0x2e, 0x21, 0x27,
1822                 0x29, 0x24, 0x2c, 0x2a, 0x2e, 0x28, 0x22, 0x2d,
1823                 0x20, 0x2f, 0x26, 0x2c, 0x2a, 0x29, 0x2d, 0x20,
1824                 0x2f, 0x23, 0x23, 0x25, 0x25, 0x26, 0x28, 0x2b,
1825                 0xad, 0xa1, 0xa2, 0xaf, 0xa8, 0xad, 0xa4, 0xa8,
1826                 0xa6, 0xaa, 0xaf, 0xa3, 0xab, 0xa7, 0xa1, 0xa4,
1827                 0xaa, 0xac, 0xa9, 0xa5, 0xa3, 0xa6, 0xae, 0xab,
1828                 0xa5, 0xa0, 0xa0, 0xae, 0xac, 0xa9, 0xa7, 0xa2,
1829                 0xa7, 0xa2, 0xab, 0xa1, 0xa4, 0xae, 0xa1, 0xa7,
1830                 0xa9, 0xa4, 0xac, 0xaa, 0xae, 0xa8, 0xa2, 0xad,
1831                 0xa0, 0xaf, 0xa6, 0xac, 0xaa, 0xa9, 0xad, 0xa0,
1832                 0xaf, 0xa3, 0xa3, 0xa5, 0xa5, 0xa6, 0xa8, 0xab,
1833                 0xfd, 0xf1, 0xf2, 0xff, 0xf8, 0xfd, 0xf4, 0xf8,
1834                 0xf6, 0xfa, 0xff, 0xf3, 0xfb, 0xf7, 0xf1, 0xf4,
1835                 0xfa, 0xfc, 0xf9, 0xf5, 0xf3, 0xf6, 0xfe, 0xfb,
1836                 0xf5, 0xf0, 0xf0, 0xfe, 0xfc, 0xf9, 0xf7, 0xf2,
1837                 0xf7, 0xf2, 0xfb, 0xf1, 0xf4, 0xfe, 0xf1, 0xf7,
1838                 0xf9, 0xf4, 0xfc, 0xfa, 0xfe, 0xf8, 0xf2, 0xfd,
1839                 0xf0, 0xff, 0xf6, 0xfc, 0xfa, 0xf9, 0xfd, 0xf0,
1840                 0xff, 0xf3, 0xf3, 0xf5, 0xf5, 0xf6, 0xf8, 0xfb,
1841                 0x6d, 0x61, 0x62, 0x6f, 0x68, 0x6d, 0x64, 0x68,
1842                 0x66, 0x6a, 0x6f, 0x63, 0x6b, 0x67, 0x61, 0x64,
1843                 0x6a, 0x6c, 0x69, 0x65, 0x63, 0x66, 0x6e, 0x6b,
1844                 0x65, 0x60, 0x60, 0x6e, 0x6c, 0x69, 0x67, 0x62,
1845                 0x67, 0x62, 0x6b, 0x61, 0x64, 0x6e, 0x61, 0x67,
1846                 0x69, 0x64, 0x6c, 0x6a, 0x6e, 0x68, 0x62, 0x6d,
1847                 0x60, 0x6f, 0x66, 0x6c, 0x6a, 0x69, 0x6d, 0x60,
1848                 0x6f, 0x63, 0x63, 0x65, 0x65, 0x66, 0x68, 0x6b,
1849                 0x8d, 0x81, 0x82, 0x8f, 0x88, 0x8d, 0x84, 0x88,
1850                 0x86, 0x8a, 0x8f, 0x83, 0x8b, 0x87, 0x81, 0x84,
1851                 0x8a, 0x8c, 0x89, 0x85, 0x83, 0x86, 0x8e, 0x8b,
1852                 0x85, 0x80, 0x80, 0x8e, 0x8c, 0x89, 0x87, 0x82,
1853                 0x87, 0x82, 0x8b, 0x81, 0x84, 0x8e, 0x81, 0x87,
1854                 0x89, 0x84, 0x8c, 0x8a, 0x8e, 0x88, 0x82, 0x8d,
1855                 0x80, 0x8f, 0x86, 0x8c, 0x8a, 0x89, 0x8d, 0x80,
1856                 0x8f, 0x83, 0x83, 0x85, 0x85, 0x86, 0x88, 0x8b,
1857                 0x1d, 0x11, 0x12, 0x1f, 0x18, 0x1d, 0x14, 0x18,
1858                 0x16, 0x1a, 0x1f, 0x13, 0x1b, 0x17, 0x11, 0x14,
1859                 0x1a, 0x1c, 0x19, 0x15, 0x13, 0x16, 0x1e, 0x1b,
1860                 0x15, 0x10, 0x10, 0x1e, 0x1c, 0x19, 0x17, 0x12,
1861                 0x17, 0x12, 0x1b, 0x11, 0x14, 0x1e, 0x11, 0x17,
1862                 0x19, 0x14, 0x1c, 0x1a, 0x1e, 0x18, 0x12, 0x1d,
1863                 0x10, 0x1f, 0x16, 0x1c, 0x1a, 0x19, 0x1d, 0x10,
1864                 0x1f, 0x13, 0x13, 0x15, 0x15, 0x16, 0x18, 0x1b,
1865                 0x6d, 0x61, 0x62, 0x6f, 0x68, 0x6d, 0x64, 0x68,
1866                 0x66, 0x6a, 0x6f, 0x63, 0x6b, 0x67, 0x61, 0x64,
1867                 0x6a, 0x6c, 0x69, 0x65, 0x63, 0x66, 0x6e, 0x6b,
1868                 0x65, 0x60, 0x60, 0x6e, 0x6c, 0x69, 0x67, 0x62,
1869                 0x67, 0x62, 0x6b, 0x61, 0x64, 0x6e, 0x61, 0x67,
1870                 0x69, 0x64, 0x6c, 0x6a, 0x6e, 0x68, 0x62, 0x6d,
1871                 0x60, 0x6f, 0x66, 0x6c, 0x6a, 0x69, 0x6d, 0x60,
1872                 0x6f, 0x63, 0x63, 0x65, 0x65, 0x66, 0x68, 0x6b,
1873                 0x1d, 0x11, 0x12, 0x1f, 0x18, 0x1d, 0x14, 0x18,
1874                 0x16, 0x1a, 0x1f, 0x13, 0x1b, 0x17, 0x11, 0x14,
1875                 0x1a, 0x1c, 0x19, 0x15, 0x13, 0x16, 0x1e, 0x1b,
1876                 0x15, 0x10, 0x10, 0x1e, 0x1c, 0x19, 0x17, 0x12,
1877                 0x17, 0x12, 0x1b, 0x11, 0x14, 0x1e, 0x11, 0x17,
1878                 0x19, 0x14, 0x1c, 0x1a, 0x1e, 0x18, 0x12, 0x1d,
1879                 0x10, 0x1f, 0x16, 0x1c, 0x1a, 0x19, 0x1d, 0x10,
1880                 0x1f, 0x13, 0x13, 0x15, 0x15, 0x16, 0x18, 0x1b,
1881                 0x6d, 0x61, 0x62, 0x6f, 0x68, 0x6d, 0x64, 0x68,
1882                 0x66, 0x6a, 0x6f, 0x63, 0x6b, 0x67, 0x61, 0x64,
1883                 0x6a, 0x6c, 0x69, 0x65, 0x63, 0x66, 0x6e, 0x6b,
1884                 0x65, 0x60, 0x60, 0x6e, 0x6c, 0x69, 0x67, 0x62,
1885                 0x67, 0x62, 0x6b, 0x61, 0x64, 0x6e, 0x61, 0x67,
1886                 0x69, 0x64, 0x6c, 0x6a, 0x6e, 0x68, 0x62, 0x6d,
1887                 0x60, 0x6f, 0x66, 0x6c, 0x6a, 0x69, 0x6d, 0x60,
1888                 0x6f, 0x63, 0x63, 0x65, 0x65, 0x66, 0x68, 0x6b,
1889                 0x4d, 0x41, 0x42, 0x4f, 0x48, 0x4d, 0x44, 0x48,
1890                 0x46, 0x4a, 0x4f, 0x43, 0x4b, 0x47, 0x41, 0x44,
1891                 0x4a, 0x4c, 0x49, 0x45, 0x43, 0x46, 0x4e, 0x4b,
1892                 0x45, 0x40, 0x40, 0x4e, 0x4c, 0x49, 0x47, 0x42,
1893                 0x47, 0x42, 0x4b, 0x41, 0x44, 0x4e, 0x41, 0x47,
1894                 0x49, 0x44, 0x4c, 0x4a, 0x4e, 0x48, 0x42, 0x4d,
1895                 0x40, 0x4f, 0x46, 0x4c, 0x4a, 0x49, 0x4d, 0x40,
1896                 0x4f, 0x43, 0x43, 0x45, 0x45, 0x46, 0x48, 0x4b,
1897                 0xbd, 0xb1, 0xb2, 0xbf, 0xb8, 0xbd, 0xb4, 0xb8,
1898                 0xb6, 0xba, 0xbf, 0xb3, 0xbb, 0xb7, 0xb1, 0xb4,
1899                 0xba, 0xbc, 0xb9, 0xb5, 0xb3, 0xb6, 0xbe, 0xbb,
1900                 0xb5, 0xb0, 0xb0, 0xbe, 0xbc, 0xb9, 0xb7, 0xb2,
1901                 0xb7, 0xb2, 0xbb, 0xb1, 0xb4, 0xbe, 0xb1, 0xb7,
1902                 0xb9, 0xb4, 0xbc, 0xba, 0xbe, 0xb8, 0xb2, 0xbd,
1903                 0xb0, 0xbf, 0xb6, 0xbc, 0xba, 0xb9, 0xbd, 0xb0,
1904                 0xbf, 0xb3, 0xb3, 0xb5, 0xb5, 0xb6, 0xb8, 0xbb,
1905                 0xbd, 0xb1, 0xb2, 0xbf, 0xb8, 0xbd, 0xb4, 0xb8,
1906                 0xb6, 0xba, 0xbf, 0xb3, 0xbb, 0xb7, 0xb1, 0xb4,
1907                 0xba, 0xbc, 0xb9, 0xb5, 0xb3, 0xb6, 0xbe, 0xbb,
1908                 0xb5, 0xb0, 0xb0, 0xbe, 0xbc, 0xb9, 0xb7, 0xb2,
1909                 0xb7, 0xb2, 0xbb, 0xb1, 0xb4, 0xbe, 0xb1, 0xb7,
1910                 0xb9, 0xb4, 0xbc, 0xba, 0xbe, 0xb8, 0xb2, 0xbd,
1911                 0xb0, 0xbf, 0xb6, 0xbc, 0xba, 0xb9, 0xbd, 0xb0,
1912                 0xbf, 0xb3, 0xb3, 0xb5, 0xb5, 0xb6, 0xb8, 0xbb,
1913                 0xdd, 0xd1, 0xd2, 0xdf, 0xd8, 0xdd, 0xd4, 0xd8,
1914                 0xd6, 0xda, 0xdf, 0xd3, 0xdb, 0xd7, 0xd1, 0xd4,
1915                 0xda, 0xdc, 0xd9, 0xd5, 0xd3, 0xd6, 0xde, 0xdb,
1916                 0xd5, 0xd0, 0xd0, 0xde, 0xdc, 0xd9, 0xd7, 0xd2,
1917                 0xd7, 0xd2, 0xdb, 0xd1, 0xd4, 0xde, 0xd1, 0xd7,
1918                 0xd9, 0xd4, 0xdc, 0xda, 0xde, 0xd8, 0xd2, 0xdd,
1919                 0xd0, 0xdf, 0xd6, 0xdc, 0xda, 0xd9, 0xdd, 0xd0,
1920                 0xdf, 0xd3, 0xd3, 0xd5, 0xd5, 0xd6, 0xd8, 0xdb,
1921                 0xdd, 0xd1, 0xd2, 0xdf, 0xd8, 0xdd, 0xd4, 0xd8,
1922                 0xd6, 0xda, 0xdf, 0xd3, 0xdb, 0xd7, 0xd1, 0xd4,
1923                 0xda, 0xdc, 0xd9, 0xd5, 0xd3, 0xd6, 0xde, 0xdb,
1924                 0xd5, 0xd0, 0xd0, 0xde, 0xdc, 0xd9, 0xd7, 0xd2,
1925                 0xd7, 0xd2, 0xdb, 0xd1, 0xd4, 0xde, 0xd1, 0xd7,
1926                 0xd9, 0xd4, 0xdc, 0xda, 0xde, 0xd8, 0xd2, 0xdd,
1927                 0xd0, 0xdf, 0xd6, 0xdc, 0xda, 0xd9, 0xdd, 0xd0,
1928                 0xdf, 0xd3, 0xd3, 0xd5, 0xd5, 0xd6, 0xd8, 0xdb,
1929                 0x8d, 0x81, 0x82, 0x8f, 0x88, 0x8d, 0x84, 0x88,
1930                 0x86, 0x8a, 0x8f, 0x83, 0x8b, 0x87, 0x81, 0x84,
1931                 0x8a, 0x8c, 0x89, 0x85, 0x83, 0x86, 0x8e, 0x8b,
1932                 0x85, 0x80, 0x80, 0x8e, 0x8c, 0x89, 0x87, 0x82,
1933                 0x87, 0x82, 0x8b, 0x81, 0x84, 0x8e, 0x81, 0x87,
1934                 0x89, 0x84, 0x8c, 0x8a, 0x8e, 0x88, 0x82, 0x8d,
1935                 0x80, 0x8f, 0x86, 0x8c, 0x8a, 0x89, 0x8d, 0x80,
1936                 0x8f, 0x83, 0x83, 0x85, 0x85, 0x86, 0x88, 0x8b,
1937                 0xcd, 0xc1, 0xc2, 0xcf, 0xc8, 0xcd, 0xc4, 0xc8,
1938                 0xc6, 0xca, 0xcf, 0xc3, 0xcb, 0xc7, 0xc1, 0xc4,
1939                 0xca, 0xcc, 0xc9, 0xc5, 0xc3, 0xc6, 0xce, 0xcb,
1940                 0xc5, 0xc0, 0xc0, 0xce, 0xcc, 0xc9, 0xc7, 0xc2,
1941                 0xc7, 0xc2, 0xcb, 0xc1, 0xc4, 0xce, 0xc1, 0xc7,
1942                 0xc9, 0xc4, 0xcc, 0xca, 0xce, 0xc8, 0xc2, 0xcd,
1943                 0xc0, 0xcf, 0xc6, 0xcc, 0xca, 0xc9, 0xcd, 0xc0,
1944                 0xcf, 0xc3, 0xc3, 0xc5, 0xc5, 0xc6, 0xc8, 0xcb,
1945                 0x1d, 0x11, 0x12, 0x1f, 0x18, 0x1d, 0x14, 0x18,
1946                 0x16, 0x1a, 0x1f, 0x13, 0x1b, 0x17, 0x11, 0x14,
1947                 0x1a, 0x1c, 0x19, 0x15, 0x13, 0x16, 0x1e, 0x1b,
1948                 0x15, 0x10, 0x10, 0x1e, 0x1c, 0x19, 0x17, 0x12,
1949                 0x17, 0x12, 0x1b, 0x11, 0x14, 0x1e, 0x11, 0x17,
1950                 0x19, 0x14, 0x1c, 0x1a, 0x1e, 0x18, 0x12, 0x1d,
1951                 0x10, 0x1f, 0x16, 0x1c, 0x1a, 0x19, 0x1d, 0x10,
1952                 0x1f, 0x13, 0x13, 0x15, 0x15, 0x16, 0x18, 0x1b,
1953                 0x3d, 0x31, 0x32, 0x3f, 0x38, 0x3d, 0x34, 0x38,
1954                 0x36, 0x3a, 0x3f, 0x33, 0x3b, 0x37, 0x31, 0x34,
1955                 0x3a, 0x3c, 0x39, 0x35, 0x33, 0x36, 0x3e, 0x3b,
1956                 0x35, 0x30, 0x30, 0x3e, 0x3c, 0x39, 0x37, 0x32,
1957                 0x37, 0x32, 0x3b, 0x31, 0x34, 0x3e, 0x31, 0x37,
1958                 0x39, 0x34, 0x3c, 0x3a, 0x3e, 0x38, 0x32, 0x3d,
1959                 0x30, 0x3f, 0x36, 0x3c, 0x3a, 0x39, 0x3d, 0x30,
1960                 0x3f, 0x33, 0x33, 0x35, 0x35, 0x36, 0x38, 0x3b,
1961                 0x4d, 0x41, 0x42, 0x4f, 0x48, 0x4d, 0x44, 0x48,
1962                 0x46, 0x4a, 0x4f, 0x43, 0x4b, 0x47, 0x41, 0x44,
1963                 0x4a, 0x4c, 0x49, 0x45, 0x43, 0x46, 0x4e, 0x4b,
1964                 0x45, 0x40, 0x40, 0x4e, 0x4c, 0x49, 0x47, 0x42,
1965                 0x47, 0x42, 0x4b, 0x41, 0x44, 0x4e, 0x41, 0x47,
1966                 0x49, 0x44, 0x4c, 0x4a, 0x4e, 0x48, 0x42, 0x4d,
1967                 0x40, 0x4f, 0x46, 0x4c, 0x4a, 0x49, 0x4d, 0x40,
1968                 0x4f, 0x43, 0x43, 0x45, 0x45, 0x46, 0x48, 0x4b,
1969                 0x7d, 0x71, 0x72, 0x7f, 0x78, 0x7d, 0x74, 0x78,
1970                 0x76, 0x7a, 0x7f, 0x73, 0x7b, 0x77, 0x71, 0x74,
1971                 0x7a, 0x7c, 0x79, 0x75, 0x73, 0x76, 0x7e, 0x7b,
1972                 0x75, 0x70, 0x70, 0x7e, 0x7c, 0x79, 0x77, 0x72,
1973                 0x77, 0x72, 0x7b, 0x71, 0x74, 0x7e, 0x71, 0x77,
1974                 0x79, 0x74, 0x7c, 0x7a, 0x7e, 0x78, 0x72, 0x7d,
1975                 0x70, 0x7f, 0x76, 0x7c, 0x7a, 0x79, 0x7d, 0x70,
1976                 0x7f, 0x73, 0x73, 0x75, 0x75, 0x76, 0x78, 0x7b,
1977                 0xad, 0xa1, 0xa2, 0xaf, 0xa8, 0xad, 0xa4, 0xa8,
1978                 0xa6, 0xaa, 0xaf, 0xa3, 0xab, 0xa7, 0xa1, 0xa4,
1979                 0xaa, 0xac, 0xa9, 0xa5, 0xa3, 0xa6, 0xae, 0xab,
1980                 0xa5, 0xa0, 0xa0, 0xae, 0xac, 0xa9, 0xa7, 0xa2,
1981                 0xa7, 0xa2, 0xab, 0xa1, 0xa4, 0xae, 0xa1, 0xa7,
1982                 0xa9, 0xa4, 0xac, 0xaa, 0xae, 0xa8, 0xa2, 0xad,
1983                 0xa0, 0xaf, 0xa6, 0xac, 0xaa, 0xa9, 0xad, 0xa0,
1984                 0xaf, 0xa3, 0xa3, 0xa5, 0xa5, 0xa6, 0xa8, 0xab,
1985                 0xed, 0xe1, 0xe2, 0xef, 0xe8, 0xed, 0xe4, 0xe8,
1986                 0xe6, 0xea, 0xef, 0xe3, 0xeb, 0xe7, 0xe1, 0xe4,
1987                 0xea, 0xec, 0xe9, 0xe5, 0xe3, 0xe6, 0xee, 0xeb,
1988                 0xe5, 0xe0, 0xe0, 0xee, 0xec, 0xe9, 0xe7, 0xe2,
1989                 0xe7, 0xe2, 0xeb, 0xe1, 0xe4, 0xee, 0xe1, 0xe7,
1990                 0xe9, 0xe4, 0xec, 0xea, 0xee, 0xe8, 0xe2, 0xed,
1991                 0xe0, 0xef, 0xe6, 0xec, 0xea, 0xe9, 0xed, 0xe0,
1992                 0xef, 0xe3, 0xe3, 0xe5, 0xe5, 0xe6, 0xe8, 0xeb,
1993                 0x7d, 0x71, 0x72, 0x7f, 0x78, 0x7d, 0x74, 0x78,
1994                 0x76, 0x7a, 0x7f, 0x73, 0x7b, 0x77, 0x71, 0x74,
1995                 0x7a, 0x7c, 0x79, 0x75, 0x73, 0x76, 0x7e, 0x7b,
1996                 0x75, 0x70, 0x70, 0x7e, 0x7c, 0x79, 0x77, 0x72,
1997                 0x77, 0x72, 0x7b, 0x71, 0x74, 0x7e, 0x71, 0x77,
1998                 0x79, 0x74, 0x7c, 0x7a, 0x7e, 0x78, 0x72, 0x7d,
1999                 0x70, 0x7f, 0x76, 0x7c, 0x7a, 0x79, 0x7d, 0x70,
2000                 0x7f, 0x73, 0x73, 0x75, 0x75, 0x76, 0x78, 0x7b,
2001                 0xad, 0xa1, 0xa2, 0xaf, 0xa8, 0xad, 0xa4, 0xa8,
2002                 0xa6, 0xaa, 0xaf, 0xa3, 0xab, 0xa7, 0xa1, 0xa4,
2003                 0xaa, 0xac, 0xa9, 0xa5, 0xa3, 0xa6, 0xae, 0xab,
2004                 0xa5, 0xa0, 0xa0, 0xae, 0xac, 0xa9, 0xa7, 0xa2,
2005                 0xa7, 0xa2, 0xab, 0xa1, 0xa4, 0xae, 0xa1, 0xa7,
2006                 0xa9, 0xa4, 0xac, 0xaa, 0xae, 0xa8, 0xa2, 0xad,
2007                 0xa0, 0xaf, 0xa6, 0xac, 0xaa, 0xa9, 0xad, 0xa0,
2008                 0xaf, 0xa3, 0xa3, 0xa5, 0xa5, 0xa6, 0xa8, 0xab,
2009                 0x9d, 0x91, 0x92, 0x9f, 0x98, 0x9d, 0x94, 0x98,
2010                 0x96, 0x9a, 0x9f, 0x93, 0x9b, 0x97, 0x91, 0x94,
2011                 0x9a, 0x9c, 0x99, 0x95, 0x93, 0x96, 0x9e, 0x9b,
2012                 0x95, 0x90, 0x90, 0x9e, 0x9c, 0x99, 0x97, 0x92,
2013                 0x97, 0x92, 0x9b, 0x91, 0x94, 0x9e, 0x91, 0x97,
2014                 0x99, 0x94, 0x9c, 0x9a, 0x9e, 0x98, 0x92, 0x9d,
2015                 0x90, 0x9f, 0x96, 0x9c, 0x9a, 0x99, 0x9d, 0x90,
2016                 0x9f, 0x93, 0x93, 0x95, 0x95, 0x96, 0x98, 0x9b,
2017                 0xfd, 0xf1, 0xf2, 0xff, 0xf8, 0xfd, 0xf4, 0xf8,
2018                 0xf6, 0xfa, 0xff, 0xf3, 0xfb, 0xf7, 0xf1, 0xf4,
2019                 0xfa, 0xfc, 0xf9, 0xf5, 0xf3, 0xf6, 0xfe, 0xfb,
2020                 0xf5, 0xf0, 0xf0, 0xfe, 0xfc, 0xf9, 0xf7, 0xf2,
2021                 0xf7, 0xf2, 0xfb, 0xf1, 0xf4, 0xfe, 0xf1, 0xf7,
2022                 0xf9, 0xf4, 0xfc, 0xfa, 0xfe, 0xf8, 0xf2, 0xfd,
2023                 0xf0, 0xff, 0xf6, 0xfc, 0xfa, 0xf9, 0xfd, 0xf0,
2024                 0xff, 0xf3, 0xf3, 0xf5, 0xf5, 0xf6, 0xf8, 0xfb,
2025                 0x5d, 0x51, 0x52, 0x5f, 0x58, 0x5d, 0x54, 0x58,
2026                 0x56, 0x5a, 0x5f, 0x53, 0x5b, 0x57, 0x51, 0x54,
2027                 0x5a, 0x5c, 0x59, 0x55, 0x53, 0x56, 0x5e, 0x5b,
2028                 0x55, 0x50, 0x50, 0x5e, 0x5c, 0x59, 0x57, 0x52,
2029                 0x57, 0x52, 0x5b, 0x51, 0x54, 0x5e, 0x51, 0x57,
2030                 0x59, 0x54, 0x5c, 0x5a, 0x5e, 0x58, 0x52, 0x5d,
2031                 0x50, 0x5f, 0x56, 0x5c, 0x5a, 0x59, 0x5d, 0x50,
2032                 0x5f, 0x53, 0x53, 0x55, 0x55, 0x56, 0x58, 0x5b,
2033                 0x6d, 0x61, 0x62, 0x6f, 0x68, 0x6d, 0x64, 0x68,
2034                 0x66, 0x6a, 0x6f, 0x63, 0x6b, 0x67, 0x61, 0x64,
2035                 0x6a, 0x6c, 0x69, 0x65, 0x63, 0x66, 0x6e, 0x6b,
2036                 0x65, 0x60, 0x60, 0x6e, 0x6c, 0x69, 0x67, 0x62,
2037                 0x67, 0x62, 0x6b, 0x61, 0x64, 0x6e, 0x61, 0x67,
2038                 0x69, 0x64, 0x6c, 0x6a, 0x6e, 0x68, 0x62, 0x6d,
2039                 0x60, 0x6f, 0x66, 0x6c, 0x6a, 0x69, 0x6d, 0x60,
2040                 0x6f, 0x63, 0x63, 0x65, 0x65, 0x66, 0x68, 0x6b,
2041                 0x0d, 0x01, 0x02, 0x0f, 0x08, 0x0d, 0x04, 0x08,
2042                 0x06, 0x0a, 0x0f, 0x03, 0x0b, 0x07, 0x01, 0x04,
2043                 0x0a, 0x0c, 0x09, 0x05, 0x03, 0x06, 0x0e, 0x0b,
2044                 0x05, 0x00, 0x00, 0x0e, 0x0c, 0x09, 0x07, 0x02,
2045                 0x07, 0x02, 0x0b, 0x01, 0x04, 0x0e, 0x01, 0x07,
2046                 0x09, 0x04, 0x0c, 0x0a, 0x0e, 0x08, 0x02, 0x0d,
2047                 0x00, 0x0f, 0x06, 0x0c, 0x0a, 0x09, 0x0d, 0x00,
2048                 0x0f, 0x03, 0x03, 0x05, 0x05, 0x06, 0x08, 0x0b,
2049                 0x8d, 0x81, 0x82, 0x8f, 0x88, 0x8d, 0x84, 0x88,
2050                 0x86, 0x8a, 0x8f, 0x83, 0x8b, 0x87, 0x81, 0x84,
2051                 0x8a, 0x8c, 0x89, 0x85, 0x83, 0x86, 0x8e, 0x8b,
2052                 0x85, 0x80, 0x80, 0x8e, 0x8c, 0x89, 0x87, 0x82,
2053                 0x87, 0x82, 0x8b, 0x81, 0x84, 0x8e, 0x81, 0x87,
2054                 0x89, 0x84, 0x8c, 0x8a, 0x8e, 0x88, 0x82, 0x8d,
2055                 0x80, 0x8f, 0x86, 0x8c, 0x8a, 0x89, 0x8d, 0x80,
2056                 0x8f, 0x83, 0x83, 0x85, 0x85, 0x86, 0x88, 0x8b,
2057                 0xfd, 0xf1, 0xf2, 0xff, 0xf8, 0xfd, 0xf4, 0xf8,
2058                 0xf6, 0xfa, 0xff, 0xf3, 0xfb, 0xf7, 0xf1, 0xf4,
2059                 0xfa, 0xfc, 0xf9, 0xf5, 0xf3, 0xf6, 0xfe, 0xfb,
2060                 0xf5, 0xf0, 0xf0, 0xfe, 0xfc, 0xf9, 0xf7, 0xf2,
2061                 0xf7, 0xf2, 0xfb, 0xf1, 0xf4, 0xfe, 0xf1, 0xf7,
2062                 0xf9, 0xf4, 0xfc, 0xfa, 0xfe, 0xf8, 0xf2, 0xfd,
2063                 0xf0, 0xff, 0xf6, 0xfc, 0xfa, 0xf9, 0xfd, 0xf0,
2064                 0xff, 0xf3, 0xf3, 0xf5, 0xf5, 0xf6, 0xf8, 0xfb,
2065                 0x0d, 0x01, 0x02, 0x0f, 0x08, 0x0d, 0x04, 0x08,
2066                 0x06, 0x0a, 0x0f, 0x03, 0x0b, 0x07, 0x01, 0x04,
2067                 0x0a, 0x0c, 0x09, 0x05, 0x03, 0x06, 0x0e, 0x0b,
2068                 0x05, 0x00, 0x00, 0x0e, 0x0c, 0x09, 0x07, 0x02,
2069                 0x07, 0x02, 0x0b, 0x01, 0x04, 0x0e, 0x01, 0x07,
2070                 0x09, 0x04, 0x0c, 0x0a, 0x0e, 0x08, 0x02, 0x0d,
2071                 0x00, 0x0f, 0x06, 0x0c, 0x0a, 0x09, 0x0d, 0x00,
2072                 0x0f, 0x03, 0x03, 0x05, 0x05, 0x06, 0x08, 0x0b,
2073                 0xed, 0xe1, 0xe2, 0xef, 0xe8, 0xed, 0xe4, 0xe8,
2074                 0xe6, 0xea, 0xef, 0xe3, 0xeb, 0xe7, 0xe1, 0xe4,
2075                 0xea, 0xec, 0xe9, 0xe5, 0xe3, 0xe6, 0xee, 0xeb,
2076                 0xe5, 0xe0, 0xe0, 0xee, 0xec, 0xe9, 0xe7, 0xe2,
2077                 0xe7, 0xe2, 0xeb, 0xe1, 0xe4, 0xee, 0xe1, 0xe7,
2078                 0xe9, 0xe4, 0xec, 0xea, 0xee, 0xe8, 0xe2, 0xed,
2079                 0xe0, 0xef, 0xe6, 0xec, 0xea, 0xe9, 0xed, 0xe0,
2080                 0xef, 0xe3, 0xe3, 0xe5, 0xe5, 0xe6, 0xe8, 0xeb,
2081                 0x5d, 0x51, 0x52, 0x5f, 0x58, 0x5d, 0x54, 0x58,
2082                 0x56, 0x5a, 0x5f, 0x53, 0x5b, 0x57, 0x51, 0x54,
2083                 0x5a, 0x5c, 0x59, 0x55, 0x53, 0x56, 0x5e, 0x5b,
2084                 0x55, 0x50, 0x50, 0x5e, 0x5c, 0x59, 0x57, 0x52,
2085                 0x57, 0x52, 0x5b, 0x51, 0x54, 0x5e, 0x51, 0x57,
2086                 0x59, 0x54, 0x5c, 0x5a, 0x5e, 0x58, 0x52, 0x5d,
2087                 0x50, 0x5f, 0x56, 0x5c, 0x5a, 0x59, 0x5d, 0x50,
2088                 0x5f, 0x53, 0x53, 0x55, 0x55, 0x56, 0x58, 0x5b,
2089                 0x2d, 0x21, 0x22, 0x2f, 0x28, 0x2d, 0x24, 0x28,
2090                 0x26, 0x2a, 0x2f, 0x23, 0x2b, 0x27, 0x21, 0x24,
2091                 0x2a, 0x2c, 0x29, 0x25, 0x23, 0x26, 0x2e, 0x2b,
2092                 0x25, 0x20, 0x20, 0x2e, 0x2c, 0x29, 0x27, 0x22,
2093                 0x27, 0x22, 0x2b, 0x21, 0x24, 0x2e, 0x21, 0x27,
2094                 0x29, 0x24, 0x2c, 0x2a, 0x2e, 0x28, 0x22, 0x2d,
2095                 0x20, 0x2f, 0x26, 0x2c, 0x2a, 0x29, 0x2d, 0x20,
2096                 0x2f, 0x23, 0x23, 0x25, 0x25, 0x26, 0x28, 0x2b,
2097                 0x9d, 0x91, 0x92, 0x9f, 0x98, 0x9d, 0x94, 0x98,
2098                 0x96, 0x9a, 0x9f, 0x93, 0x9b, 0x97, 0x91, 0x94,
2099                 0x9a, 0x9c, 0x99, 0x95, 0x93, 0x96, 0x9e, 0x9b,
2100                 0x95, 0x90, 0x90, 0x9e, 0x9c, 0x99, 0x97, 0x92,
2101                 0x97, 0x92, 0x9b, 0x91, 0x94, 0x9e, 0x91, 0x97,
2102                 0x99, 0x94, 0x9c, 0x9a, 0x9e, 0x98, 0x92, 0x9d,
2103                 0x90, 0x9f, 0x96, 0x9c, 0x9a, 0x99, 0x9d, 0x90,
2104                 0x9f, 0x93, 0x93, 0x95, 0x95, 0x96, 0x98, 0x9b,
2105                 0x3d, 0x31, 0x32, 0x3f, 0x38, 0x3d, 0x34, 0x38,
2106                 0x36, 0x3a, 0x3f, 0x33, 0x3b, 0x37, 0x31, 0x34,
2107                 0x3a, 0x3c, 0x39, 0x35, 0x33, 0x36, 0x3e, 0x3b,
2108                 0x35, 0x30, 0x30, 0x3e, 0x3c, 0x39, 0x37, 0x32,
2109                 0x37, 0x32, 0x3b, 0x31, 0x34, 0x3e, 0x31, 0x37,
2110                 0x39, 0x34, 0x3c, 0x3a, 0x3e, 0x38, 0x32, 0x3d,
2111                 0x30, 0x3f, 0x36, 0x3c, 0x3a, 0x39, 0x3d, 0x30,
2112                 0x3f, 0x33, 0x33, 0x35, 0x35, 0x36, 0x38, 0x3b,
2113                 0x2d, 0x21, 0x22, 0x2f, 0x28, 0x2d, 0x24, 0x28,
2114                 0x26, 0x2a, 0x2f, 0x23, 0x2b, 0x27, 0x21, 0x24,
2115                 0x2a, 0x2c, 0x29, 0x25, 0x23, 0x26, 0x2e, 0x2b,
2116                 0x25, 0x20, 0x20, 0x2e, 0x2c, 0x29, 0x27, 0x22,
2117                 0x27, 0x22, 0x2b, 0x21, 0x24, 0x2e, 0x21, 0x27,
2118                 0x29, 0x24, 0x2c, 0x2a, 0x2e, 0x28, 0x22, 0x2d,
2119                 0x20, 0x2f, 0x26, 0x2c, 0x2a, 0x29, 0x2d, 0x20,
2120                 0x2f, 0x23, 0x23, 0x25, 0x25, 0x26, 0x28, 0x2b,
2121                 0xcd, 0xc1, 0xc2, 0xcf, 0xc8, 0xcd, 0xc4, 0xc8,
2122                 0xc6, 0xca, 0xcf, 0xc3, 0xcb, 0xc7, 0xc1, 0xc4,
2123                 0xca, 0xcc, 0xc9, 0xc5, 0xc3, 0xc6, 0xce, 0xcb,
2124                 0xc5, 0xc0, 0xc0, 0xce, 0xcc, 0xc9, 0xc7, 0xc2,
2125                 0xc7, 0xc2, 0xcb, 0xc1, 0xc4, 0xce, 0xc1, 0xc7,
2126                 0xc9, 0xc4, 0xcc, 0xca, 0xce, 0xc8, 0xc2, 0xcd,
2127                 0xc0, 0xcf, 0xc6, 0xcc, 0xca, 0xc9, 0xcd, 0xc0,
2128                 0xcf, 0xc3, 0xc3, 0xc5, 0xc5, 0xc6, 0xc8, 0xcb,
2129         },
2130 };
2131
2132 static const uint8_t key_perm[56] = {
2133         57, 49, 41, 33, 25, 17,  9,  1, 58, 50, 42, 34, 26, 18,
2134         10,  2, 59, 51, 43, 35, 27, 19, 11,  3, 60, 52, 44, 36,
2135         63, 55, 47, 39, 31, 23, 15,  7, 62, 54, 46, 38, 30, 22,
2136         14,  6, 61, 53, 45, 37, 29, 21, 13,  5, 28, 20, 12,  4
2137 };
2138
2139 static const uint8_t key_shifts[16] = {
2140         1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1
2141 };
2142
2143 static const uint8_t comp_perm[48] = {
2144         14, 17, 11, 24,  1,  5,  3, 28, 15,  6, 21, 10,
2145         23, 19, 12,  4, 26,  8, 16,  7, 27, 20, 13,  2,
2146         41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48,
2147         44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32
2148 };
2149
2150 static const uint8_t pbox[32] = {
2151         16,  7, 20, 21, 29, 12, 28, 17,  1, 15, 23, 26,  5, 18, 31, 10,
2152          2,  8, 24, 14, 32, 27,  3,  9, 19, 13, 30,  6, 22, 11,  4, 25
2153 };
2154
2155 static int
2156 ascii_to_bin(char ch)
2157 {
2158         if (ch > 'z')
2159                 return 0;
2160         if (ch >= 'a')
2161                 return (ch - 'a' + 38);
2162         if (ch > 'Z')
2163                 return 0;
2164         if (ch >= 'A')
2165                 return (ch - 'A' + 12);
2166         if (ch > '9')
2167                 return 0;
2168         if (ch >= '.')
2169                 return (ch - '.');
2170         return 0;
2171 }
2172
2173
2174
2175 struct des_ctx {
2176         uint32_t saltbits; /* referenced 5 times */
2177         uint8_t un_pbox[32]; /* 2 times */
2178         uint8_t inv_comp_perm[56]; /* 3 times */
2179         uint8_t inv_key_perm[64]; /* 3 times */
2180         uint32_t en_keysl[16], en_keysr[16]; /* 2 times each */
2181         uint32_t fp_maskl[8][256], fp_maskr[8][256]; /* 9 times each */
2182         uint32_t key_perm_maskl[8][128], key_perm_maskr[8][128]; /* 9 times */
2183         uint32_t comp_maskl[8][128], comp_maskr[8][128]; /* 9 times each */
2184         uint32_t psbox[4][256]; /* 5 times */
2185 };
2186 #define D (*ctx)
2187 #define saltbits        (D.saltbits       )
2188 #define old_salt        (D.old_salt       )
2189 #define old_rawkey0     (D.old_rawkey0    )
2190 #define old_rawkey1     (D.old_rawkey1    )
2191 #define un_pbox         (D.un_pbox        )
2192 #define inv_comp_perm   (D.inv_comp_perm  )
2193 #define inv_key_perm    (D.inv_key_perm   )
2194 #define en_keysl        (D.en_keysl       )
2195 #define en_keysr        (D.en_keysr       )
2196 #define de_keysl        (D.de_keysl       )
2197 #define de_keysr        (D.de_keysr       )
2198 #define ip_maskl        (D.ip_maskl       )
2199 #define ip_maskr        (D.ip_maskr       )
2200 #define fp_maskl        (D.fp_maskl       )
2201 #define fp_maskr        (D.fp_maskr       )
2202 #define key_perm_maskl  (D.key_perm_maskl )
2203 #define key_perm_maskr  (D.key_perm_maskr )
2204 #define comp_maskl      (D.comp_maskl     )
2205 #define comp_maskr      (D.comp_maskr     )
2206 #define psbox           (D.psbox          )
2207
2208 static struct des_ctx *des_init(struct des_ctx *ctx)
2209 {
2210         int i, j, b, k, inbit, obit;
2211         uint32_t p;
2212
2213         saltbits = 0;
2214
2215         /* Initialise the inverted key permutation. */
2216         for (i = 0; i < 64; i++) {
2217                 inv_key_perm[i] = 255;
2218         }
2219
2220         /*
2221          * Invert the key permutation and initialise the inverted key
2222          * compression permutation.
2223          */
2224         for (i = 0; i < 56; i++) {
2225                 inv_key_perm[key_perm[i] - 1] = (uint8_t)i;
2226                 inv_comp_perm[i] = 255;
2227         }
2228
2229         /* Invert the key compression permutation. */
2230         for (i = 0; i < 48; i++) {
2231                 inv_comp_perm[comp_perm[i] - 1] = (uint8_t)i;
2232         }
2233
2234         /*
2235          * Set up the OR-mask arrays for the initial and final permutations,
2236          * and for the key initial and compression permutations.
2237          */
2238         for (k = 0; k < 8; k++) {
2239                 uint32_t il, ir;
2240                 uint32_t fl, fr;
2241                 for (i = 0; i < 256; i++) {
2242                         fl = 0;
2243                         fr = 0;
2244                         for (j = 0; j < 8; j++) {
2245                                 inbit = 8 * k + j;
2246                                 if (i & (0x80>>j)) {
2247                                         obit = final_perm[inbit];
2248                                         if (obit < 32)
2249                                                 fl |= 0x80000000UL >> obit;
2250                                         else
2251                                                 fr |= 0x80000000UL >> obit-32;
2252                                 }
2253                         }
2254                         fp_maskl[k][i] = fl;
2255                         fp_maskr[k][i] = fr;
2256                 }
2257                 for (i = 0; i < 128; i++) {
2258                         il = 0;
2259                         ir = 0;
2260                         for (j = 0; j < 7; j++) {
2261                                 inbit = 8 * k + j;
2262                                 if (i & (0x80 >> j + 1)) {
2263                                         obit = inv_key_perm[inbit];
2264                                         if (obit == 255)
2265                                                 continue;
2266                                         if (obit < 28)
2267                                                 il |= 0x8000000UL >> obit;
2268                                         else
2269                                                 ir |= 0x8000000UL >> obit-28;
2270                                 }
2271                         }
2272                         key_perm_maskl[k][i] = il;
2273                         key_perm_maskr[k][i] = ir;
2274                         il = 0;
2275                         ir = 0;
2276                         for (j = 0; j < 7; j++) {
2277                                 inbit = 7 * k + j;
2278                                 if (i & (0x80 >> j + 1)) {
2279                                         obit = inv_comp_perm[inbit];
2280                                         if (obit == 255)
2281                                                 continue;
2282                                         if (obit < 24)
2283                                                 il |= 0x800000UL >> obit;
2284                                         else
2285                                                 ir |= 0x800000UL >> obit-24;
2286                                 }
2287                         }
2288                         comp_maskl[k][i] = il;
2289                         comp_maskr[k][i] = ir;
2290                 }
2291         }
2292
2293         /*
2294          * Invert the P-box permutation, and convert into OR-masks for
2295          * handling the output of the S-box arrays setup above.
2296          */
2297         for (i = 0; i < 32; i++)
2298                 un_pbox[pbox[i] - 1] = (uint8_t)i;
2299
2300         for (b = 0; b < 4; b++) {
2301                 for (i = 0; i < 256; i++) {
2302                         p = 0;
2303                         for (j = 0; j < 8; j++) {
2304                                 if (i & (0x80 >> j))
2305                                         p |= 0x80000000>>un_pbox[8 * b + j];
2306                         }
2307                         psbox[b][i] = p;
2308                 }
2309         }
2310
2311         return ctx;
2312 }
2313
2314
2315 static void setup_salt(struct des_ctx *ctx, uint32_t salt)
2316 {
2317         uint32_t obit, saltbit;
2318         int i;
2319
2320         saltbits = 0;
2321         saltbit = 1;
2322         obit = 0x800000;
2323         for (i = 0; i < 24; i++) {
2324                 if (salt & saltbit)
2325                         saltbits |= obit;
2326                 saltbit <<= 1;
2327                 obit >>= 1;
2328         }
2329 }
2330
2331 static void des_setkey(struct des_ctx *ctx, const unsigned char *key)
2332 {
2333         uint32_t k0, k1, rawkey0, rawkey1;
2334         int shifts, round;
2335
2336         rawkey0 = key[0]<<24 | key[1]<<16 | key[2]<<8 | key[3];
2337         rawkey1 = key[4]<<24 | key[5]<<16 | key[6]<<8 | key[7];
2338
2339         /*
2340          * Do key permutation and split into two 28-bit subkeys.
2341          */
2342         k0 = key_perm_maskl[0][rawkey0 >> 25]
2343            | key_perm_maskl[1][(rawkey0 >> 17) & 0x7f]
2344            | key_perm_maskl[2][(rawkey0 >> 9) & 0x7f]
2345            | key_perm_maskl[3][(rawkey0 >> 1) & 0x7f]
2346            | key_perm_maskl[4][rawkey1 >> 25]
2347            | key_perm_maskl[5][(rawkey1 >> 17) & 0x7f]
2348            | key_perm_maskl[6][(rawkey1 >> 9) & 0x7f]
2349            | key_perm_maskl[7][(rawkey1 >> 1) & 0x7f];
2350         k1 = key_perm_maskr[0][rawkey0 >> 25]
2351            | key_perm_maskr[1][(rawkey0 >> 17) & 0x7f]
2352            | key_perm_maskr[2][(rawkey0 >> 9) & 0x7f]
2353            | key_perm_maskr[3][(rawkey0 >> 1) & 0x7f]
2354            | key_perm_maskr[4][rawkey1 >> 25]
2355            | key_perm_maskr[5][(rawkey1 >> 17) & 0x7f]
2356            | key_perm_maskr[6][(rawkey1 >> 9) & 0x7f]
2357            | key_perm_maskr[7][(rawkey1 >> 1) & 0x7f];
2358         /*
2359          * Rotate subkeys and do compression permutation.
2360          */
2361         shifts = 0;
2362         for (round = 0; round < 16; round++) {
2363                 uint32_t t0, t1;
2364
2365                 shifts += key_shifts[round];
2366
2367                 t0 = (k0 << shifts) | (k0 >> (28 - shifts));
2368                 t1 = (k1 << shifts) | (k1 >> (28 - shifts));
2369
2370                 en_keysl[round] = comp_maskl[0][(t0 >> 21) & 0x7f]
2371                                 | comp_maskl[1][(t0 >> 14) & 0x7f]
2372                                 | comp_maskl[2][(t0 >> 7) & 0x7f]
2373                                 | comp_maskl[3][t0 & 0x7f]
2374                                 | comp_maskl[4][(t1 >> 21) & 0x7f]
2375                                 | comp_maskl[5][(t1 >> 14) & 0x7f]
2376                                 | comp_maskl[6][(t1 >> 7) & 0x7f]
2377                                 | comp_maskl[7][t1 & 0x7f];
2378
2379                 en_keysr[round] = comp_maskr[0][(t0 >> 21) & 0x7f]
2380                                 | comp_maskr[1][(t0 >> 14) & 0x7f]
2381                                 | comp_maskr[2][(t0 >> 7) & 0x7f]
2382                                 | comp_maskr[3][t0 & 0x7f]
2383                                 | comp_maskr[4][(t1 >> 21) & 0x7f]
2384                                 | comp_maskr[5][(t1 >> 14) & 0x7f]
2385                                 | comp_maskr[6][(t1 >> 7) & 0x7f]
2386                                 | comp_maskr[7][t1 & 0x7f];
2387         }
2388 }
2389
2390
2391 static void do_des(struct des_ctx *ctx, uint32_t *l_out, uint32_t *r_out, int count)
2392 {
2393         uint32_t l, r, *kl, *kr;
2394         uint32_t f = f; /* silence gcc */
2395         uint32_t r48l, r48r;
2396         int round;
2397
2398         /* Do initial permutation (IP). */
2399         l = r = 0;
2400
2401         do {
2402                 /* Do each round. */
2403                 kl = en_keysl;
2404                 kr = en_keysr;
2405                 round = 16;
2406                 do {
2407                         /* Expand R to 48 bits (simulate the E-box). */
2408                         r48l    = ((r & 0x00000001) << 23)
2409                                 | ((r & 0xf8000000) >> 9)
2410                                 | ((r & 0x1f800000) >> 11)
2411                                 | ((r & 0x01f80000) >> 13)
2412                                 | ((r & 0x001f8000) >> 15);
2413
2414                         r48r    = ((r & 0x0001f800) << 7)
2415                                 | ((r & 0x00001f80) << 5)
2416                                 | ((r & 0x000001f8) << 3)
2417                                 | ((r & 0x0000001f) << 1)
2418                                 | ((r & 0x80000000) >> 31);
2419                         /*
2420                          * Do salting for crypt() and friends, and
2421                          * XOR with the permuted key.
2422                          */
2423                         f = (r48l ^ r48r) & saltbits;
2424                         r48l ^= f ^ *kl++;
2425                         r48r ^= f ^ *kr++;
2426                         /*
2427                          * Do sbox lookups (which shrink it back to 32 bits)
2428                          * and do the pbox permutation at the same time.
2429                          */
2430                         f = psbox[0][m_sbox[0][r48l >> 12]]
2431                           | psbox[1][m_sbox[1][r48l & 0xfff]]
2432                           | psbox[2][m_sbox[2][r48r >> 12]]
2433                           | psbox[3][m_sbox[3][r48r & 0xfff]];
2434                         /* Now that we've permuted things, complete f(). */
2435                         f ^= l;
2436                         l = r;
2437                         r = f;
2438                 } while (--round);
2439                 r = l;
2440                 l = f;
2441         } while (--count);
2442
2443         /* Do final permutation (inverse of IP). */
2444         *l_out  = fp_maskl[0][l >> 24]
2445                 | fp_maskl[1][(l >> 16) & 0xff]
2446                 | fp_maskl[2][(l >> 8) & 0xff]
2447                 | fp_maskl[3][l & 0xff]
2448                 | fp_maskl[4][r >> 24]
2449                 | fp_maskl[5][(r >> 16) & 0xff]
2450                 | fp_maskl[6][(r >> 8) & 0xff]
2451                 | fp_maskl[7][r & 0xff];
2452         *r_out  = fp_maskr[0][l >> 24]
2453                 | fp_maskr[1][(l >> 16) & 0xff]
2454                 | fp_maskr[2][(l >> 8) & 0xff]
2455                 | fp_maskr[3][l & 0xff]
2456                 | fp_maskr[4][r >> 24]
2457                 | fp_maskr[5][(r >> 16) & 0xff]
2458                 | fp_maskr[6][(r >> 8) & 0xff]
2459                 | fp_maskr[7][r & 0xff];
2460 }
2461
2462 #define DES_OUT_BUFSIZE 21
2463
2464 static void
2465 to64_msb_first(char *s, unsigned v)
2466 {
2467         *s++ = i64c(v >> 18); /* bits 23..18 */
2468         *s++ = i64c(v >> 12); /* bits 17..12 */
2469         *s++ = i64c(v >> 6); /* bits 11..6 */
2470         *s   = i64c(v); /* bits 5..0 */
2471 }
2472
2473 static char *
2474 des_crypt(struct des_ctx *ctx, char output[DES_OUT_BUFSIZE],
2475                 const unsigned char *key, const unsigned char *setting)
2476 {
2477         uint32_t salt, r0, r1, keybuf[2];
2478         uint8_t *q;
2479
2480         /*
2481          * Copy the key, shifting each character up by one bit
2482          * and padding with zeros.
2483          */
2484         q = (uint8_t *)keybuf;
2485         while (q - (uint8_t *)keybuf != 8) {
2486                 *q = *key << 1;
2487                 if (*q)
2488                         key++;
2489                 q++;
2490         }
2491         des_setkey(ctx, (char *)keybuf);
2492
2493         /*
2494          * setting - 2 bytes of salt
2495          * key - up to 8 characters
2496          */
2497         salt = (ascii_to_bin(setting[1]) << 6)
2498              |  ascii_to_bin(setting[0]);
2499
2500         output[0] = setting[0];
2501         /*
2502          * If the encrypted password that the salt was extracted from
2503          * is only 1 character long, the salt will be corrupted.  We
2504          * need to ensure that the output string doesn't have an extra
2505          * NUL in it!
2506          */
2507         output[1] = setting[1] ? setting[1] : output[0];
2508
2509         setup_salt(ctx, salt);
2510         /* Do it. */
2511         do_des(ctx, /*0, 0,*/ &r0, &r1, 25 /* count */);
2512
2513         /* Now encode the result. */
2514         /* Each call takes low-order 24 bits and stores 4 chars */
2515         /* bits 31..8 of r0 */
2516         to64_msb_first(output + 2, (r0 >> 8));
2517         /* bits 7..0 of r0 and 31..16 of r1 */
2518         to64_msb_first(output + 6, (r0 << 16) | (r1 >> 16));
2519         /* bits 15..0 of r1 and two zero bits (plus extra zero byte) */
2520         to64_msb_first(output + 10, (r1 << 8));
2521         /* extra zero byte is encoded as '.', fixing it */
2522         output[13] = '\0';
2523
2524         return output;
2525 }
2526
2527 #undef C
2528 #undef init_perm
2529 #undef final_perm
2530 #undef m_sbox
2531 #undef D
2532 #undef const_ctx
2533 #undef saltbits
2534 #undef old_salt
2535 #undef old_rawkey0
2536 #undef old_rawkey1
2537 #undef un_pbox
2538 #undef inv_comp_perm
2539 #undef inv_key_perm
2540 #undef en_keysl
2541 #undef en_keysr
2542 #undef de_keysl
2543 #undef de_keysr
2544 #undef ip_maskl
2545 #undef ip_maskr
2546 #undef fp_maskl
2547 #undef fp_maskr
2548 #undef key_perm_maskl
2549 #undef key_perm_maskr
2550 #undef comp_maskl
2551 #undef comp_maskr
2552 #undef psbox
2553
2554 struct crypt_data;
2555
2556 char *__crypt_r(const char *clear, const char *salt, struct crypt_data *data)
2557 {
2558         struct des_ctx des_ctx = { 0 };
2559
2560 #if 0
2561         /* MD5 or SHA? */
2562         if (salt[0] == '$' && salt[1] && salt[2] == '$') {
2563                 if (salt[1] == '1')
2564                         return md5_crypt((char *)data, clear, salt);
2565         }
2566 #endif
2567
2568         des_init(&des_ctx);
2569         return des_crypt(&des_ctx, (char *)data, clear, salt);
2570 }
2571
2572 weak_alias(__crypt_r, crypt_r);
2573
2574 char *crypt(const char *clear, const char *salt)
2575 {
2576         static char buf[128];
2577         return __crypt_r(clear, salt, (void *)buf);
2578 }