Making block size in bits variable and dependent on the DV spec
[ffmpeg.git] / libavcodec / dvdata.h
1 /*
2  * Constants for DV codec
3  * Copyright (c) 2002 Fabrice Bellard.
4  *
5  * This file is part of FFmpeg.
6  *
7  * FFmpeg is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * FFmpeg is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with FFmpeg; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  */
21
22 /**
23  * @file dvdata.h
24  * Constants for DV codec.
25  */
26
27 #ifndef FFMPEG_DVDATA_H
28 #define FFMPEG_DVDATA_H
29
30 #include "libavutil/rational.h"
31 #include "avcodec.h"
32
33 /*
34  * DVprofile is used to express the differences between various
35  * DV flavors. For now it's primarily used for differentiating
36  * 525/60 and 625/50, but the plans are to use it for various
37  * DV specs as well (e.g. SMPTE314M vs. IEC 61834).
38  */
39 typedef struct DVprofile {
40     int              dsf;                 /* value of the dsf in the DV header */
41     int              frame_size;          /* total size of one frame in bytes */
42     int              difseg_size;         /* number of DIF segments per DIF channel */
43     int              n_difchan;           /* number of DIF channels per frame */
44     int              frame_rate;
45     int              frame_rate_base;
46     int              ltc_divisor;         /* FPS from the LTS standpoint */
47     int              height;              /* picture height in pixels */
48     int              width;               /* picture width in pixels */
49     AVRational       sar[2];              /* sample aspect ratios for 4:3 and 16:9 */
50     const uint16_t  *video_place;         /* positions of all DV macro blocks */
51     enum PixelFormat pix_fmt;             /* picture pixel format */
52     int              bpm;                 /* blocks per macroblock */
53     const uint8_t   *block_sizes;         /* AC block sizes, in bits */
54     int              audio_stride;        /* size of audio_shuffle table */
55     int              audio_min_samples[3];/* min ammount of audio samples */
56                                           /* for 48Khz, 44.1Khz and 32Khz */
57     int              audio_samples_dist[5];/* how many samples are supposed to be */
58                                          /* in each frame in a 5 frames window */
59     const uint8_t  (*audio_shuffle)[9];  /* PCM shuffling table */
60 } DVprofile;
61
62 #define NB_DV_VLC 409
63
64 /*
65  * There's a catch about the following three tables: the mapping they establish
66  * between (run, level) and vlc is not 1-1. So you have to watch out for that
67  * when building misc. tables. E.g. (1, 0) can be either 0x7cf or 0x1f82.
68  */
69 static const uint16_t dv_vlc_bits[409] = {
70  0x0000, 0x0002, 0x0007, 0x0008, 0x0009, 0x0014, 0x0015, 0x0016,
71  0x0017, 0x0030, 0x0031, 0x0032, 0x0033, 0x0068, 0x0069, 0x006a,
72  0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x00e0, 0x00e1, 0x00e2,
73  0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7, 0x00e8, 0x00e9, 0x00ea,
74  0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef, 0x01e0, 0x01e1, 0x01e2,
75  0x01e3, 0x01e4, 0x01e5, 0x01e6, 0x01e7, 0x01e8, 0x01e9, 0x01ea,
76  0x01eb, 0x01ec, 0x01ed, 0x01ee, 0x01ef, 0x03e0, 0x03e1, 0x03e2,
77  0x03e3, 0x03e4, 0x03e5, 0x03e6, 0x07ce, 0x07cf, 0x07d0, 0x07d1,
78  0x07d2, 0x07d3, 0x07d4, 0x07d5, 0x0fac, 0x0fad, 0x0fae, 0x0faf,
79  0x0fb0, 0x0fb1, 0x0fb2, 0x0fb3, 0x0fb4, 0x0fb5, 0x0fb6, 0x0fb7,
80  0x0fb8, 0x0fb9, 0x0fba, 0x0fbb, 0x0fbc, 0x0fbd, 0x0fbe, 0x0fbf,
81  0x1f80, 0x1f81, 0x1f82, 0x1f83, 0x1f84, 0x1f85, 0x1f86, 0x1f87,
82  0x1f88, 0x1f89, 0x1f8a, 0x1f8b, 0x1f8c, 0x1f8d, 0x1f8e, 0x1f8f,
83  0x1f90, 0x1f91, 0x1f92, 0x1f93, 0x1f94, 0x1f95, 0x1f96, 0x1f97,
84  0x1f98, 0x1f99, 0x1f9a, 0x1f9b, 0x1f9c, 0x1f9d, 0x1f9e, 0x1f9f,
85  0x1fa0, 0x1fa1, 0x1fa2, 0x1fa3, 0x1fa4, 0x1fa5, 0x1fa6, 0x1fa7,
86  0x1fa8, 0x1fa9, 0x1faa, 0x1fab, 0x1fac, 0x1fad, 0x1fae, 0x1faf,
87  0x1fb0, 0x1fb1, 0x1fb2, 0x1fb3, 0x1fb4, 0x1fb5, 0x1fb6, 0x1fb7,
88  0x1fb8, 0x1fb9, 0x1fba, 0x1fbb, 0x1fbc, 0x1fbd, 0x1fbe, 0x1fbf,
89  0x7f00, 0x7f01, 0x7f02, 0x7f03, 0x7f04, 0x7f05, 0x7f06, 0x7f07,
90  0x7f08, 0x7f09, 0x7f0a, 0x7f0b, 0x7f0c, 0x7f0d, 0x7f0e, 0x7f0f,
91  0x7f10, 0x7f11, 0x7f12, 0x7f13, 0x7f14, 0x7f15, 0x7f16, 0x7f17,
92  0x7f18, 0x7f19, 0x7f1a, 0x7f1b, 0x7f1c, 0x7f1d, 0x7f1e, 0x7f1f,
93  0x7f20, 0x7f21, 0x7f22, 0x7f23, 0x7f24, 0x7f25, 0x7f26, 0x7f27,
94  0x7f28, 0x7f29, 0x7f2a, 0x7f2b, 0x7f2c, 0x7f2d, 0x7f2e, 0x7f2f,
95  0x7f30, 0x7f31, 0x7f32, 0x7f33, 0x7f34, 0x7f35, 0x7f36, 0x7f37,
96  0x7f38, 0x7f39, 0x7f3a, 0x7f3b, 0x7f3c, 0x7f3d, 0x7f3e, 0x7f3f,
97  0x7f40, 0x7f41, 0x7f42, 0x7f43, 0x7f44, 0x7f45, 0x7f46, 0x7f47,
98  0x7f48, 0x7f49, 0x7f4a, 0x7f4b, 0x7f4c, 0x7f4d, 0x7f4e, 0x7f4f,
99  0x7f50, 0x7f51, 0x7f52, 0x7f53, 0x7f54, 0x7f55, 0x7f56, 0x7f57,
100  0x7f58, 0x7f59, 0x7f5a, 0x7f5b, 0x7f5c, 0x7f5d, 0x7f5e, 0x7f5f,
101  0x7f60, 0x7f61, 0x7f62, 0x7f63, 0x7f64, 0x7f65, 0x7f66, 0x7f67,
102  0x7f68, 0x7f69, 0x7f6a, 0x7f6b, 0x7f6c, 0x7f6d, 0x7f6e, 0x7f6f,
103  0x7f70, 0x7f71, 0x7f72, 0x7f73, 0x7f74, 0x7f75, 0x7f76, 0x7f77,
104  0x7f78, 0x7f79, 0x7f7a, 0x7f7b, 0x7f7c, 0x7f7d, 0x7f7e, 0x7f7f,
105  0x7f80, 0x7f81, 0x7f82, 0x7f83, 0x7f84, 0x7f85, 0x7f86, 0x7f87,
106  0x7f88, 0x7f89, 0x7f8a, 0x7f8b, 0x7f8c, 0x7f8d, 0x7f8e, 0x7f8f,
107  0x7f90, 0x7f91, 0x7f92, 0x7f93, 0x7f94, 0x7f95, 0x7f96, 0x7f97,
108  0x7f98, 0x7f99, 0x7f9a, 0x7f9b, 0x7f9c, 0x7f9d, 0x7f9e, 0x7f9f,
109  0x7fa0, 0x7fa1, 0x7fa2, 0x7fa3, 0x7fa4, 0x7fa5, 0x7fa6, 0x7fa7,
110  0x7fa8, 0x7fa9, 0x7faa, 0x7fab, 0x7fac, 0x7fad, 0x7fae, 0x7faf,
111  0x7fb0, 0x7fb1, 0x7fb2, 0x7fb3, 0x7fb4, 0x7fb5, 0x7fb6, 0x7fb7,
112  0x7fb8, 0x7fb9, 0x7fba, 0x7fbb, 0x7fbc, 0x7fbd, 0x7fbe, 0x7fbf,
113  0x7fc0, 0x7fc1, 0x7fc2, 0x7fc3, 0x7fc4, 0x7fc5, 0x7fc6, 0x7fc7,
114  0x7fc8, 0x7fc9, 0x7fca, 0x7fcb, 0x7fcc, 0x7fcd, 0x7fce, 0x7fcf,
115  0x7fd0, 0x7fd1, 0x7fd2, 0x7fd3, 0x7fd4, 0x7fd5, 0x7fd6, 0x7fd7,
116  0x7fd8, 0x7fd9, 0x7fda, 0x7fdb, 0x7fdc, 0x7fdd, 0x7fde, 0x7fdf,
117  0x7fe0, 0x7fe1, 0x7fe2, 0x7fe3, 0x7fe4, 0x7fe5, 0x7fe6, 0x7fe7,
118  0x7fe8, 0x7fe9, 0x7fea, 0x7feb, 0x7fec, 0x7fed, 0x7fee, 0x7fef,
119  0x7ff0, 0x7ff1, 0x7ff2, 0x7ff3, 0x7ff4, 0x7ff5, 0x7ff6, 0x7ff7,
120  0x7ff8, 0x7ff9, 0x7ffa, 0x7ffb, 0x7ffc, 0x7ffd, 0x7ffe, 0x7fff,
121  0x0006,
122 };
123
124 static const uint8_t dv_vlc_len[409] = {
125   2,  3,  4,  4,  4,  5,  5,  5,
126   5,  6,  6,  6,  6,  7,  7,  7,
127   7,  7,  7,  7,  7,  8,  8,  8,
128   8,  8,  8,  8,  8,  8,  8,  8,
129   8,  8,  8,  8,  8,  9,  9,  9,
130   9,  9,  9,  9,  9,  9,  9,  9,
131   9,  9,  9,  9,  9, 10, 10, 10,
132  10, 10, 10, 10, 11, 11, 11, 11,
133  11, 11, 11, 11, 12, 12, 12, 12,
134  12, 12, 12, 12, 12, 12, 12, 12,
135  12, 12, 12, 12, 12, 12, 12, 12,
136  13, 13, 13, 13, 13, 13, 13, 13,
137  13, 13, 13, 13, 13, 13, 13, 13,
138  13, 13, 13, 13, 13, 13, 13, 13,
139  13, 13, 13, 13, 13, 13, 13, 13,
140  13, 13, 13, 13, 13, 13, 13, 13,
141  13, 13, 13, 13, 13, 13, 13, 13,
142  13, 13, 13, 13, 13, 13, 13, 13,
143  13, 13, 13, 13, 13, 13, 13, 13,
144  15, 15, 15, 15, 15, 15, 15, 15,
145  15, 15, 15, 15, 15, 15, 15, 15,
146  15, 15, 15, 15, 15, 15, 15, 15,
147  15, 15, 15, 15, 15, 15, 15, 15,
148  15, 15, 15, 15, 15, 15, 15, 15,
149  15, 15, 15, 15, 15, 15, 15, 15,
150  15, 15, 15, 15, 15, 15, 15, 15,
151  15, 15, 15, 15, 15, 15, 15, 15,
152  15, 15, 15, 15, 15, 15, 15, 15,
153  15, 15, 15, 15, 15, 15, 15, 15,
154  15, 15, 15, 15, 15, 15, 15, 15,
155  15, 15, 15, 15, 15, 15, 15, 15,
156  15, 15, 15, 15, 15, 15, 15, 15,
157  15, 15, 15, 15, 15, 15, 15, 15,
158  15, 15, 15, 15, 15, 15, 15, 15,
159  15, 15, 15, 15, 15, 15, 15, 15,
160  15, 15, 15, 15, 15, 15, 15, 15,
161  15, 15, 15, 15, 15, 15, 15, 15,
162  15, 15, 15, 15, 15, 15, 15, 15,
163  15, 15, 15, 15, 15, 15, 15, 15,
164  15, 15, 15, 15, 15, 15, 15, 15,
165  15, 15, 15, 15, 15, 15, 15, 15,
166  15, 15, 15, 15, 15, 15, 15, 15,
167  15, 15, 15, 15, 15, 15, 15, 15,
168  15, 15, 15, 15, 15, 15, 15, 15,
169  15, 15, 15, 15, 15, 15, 15, 15,
170  15, 15, 15, 15, 15, 15, 15, 15,
171  15, 15, 15, 15, 15, 15, 15, 15,
172  15, 15, 15, 15, 15, 15, 15, 15,
173  15, 15, 15, 15, 15, 15, 15, 15,
174  15, 15, 15, 15, 15, 15, 15, 15,
175  15, 15, 15, 15, 15, 15, 15, 15,
176   4,
177 };
178
179 static const uint8_t dv_vlc_run[409] = {
180   0,  0,  1,  0,  0,  2,  1,  0,
181   0,  3,  4,  0,  0,  5,  6,  2,
182   1,  1,  0,  0,  0,  7,  8,  9,
183  10,  3,  4,  2,  1,  1,  1,  0,
184   0,  0,  0,  0,  0, 11, 12, 13,
185  14,  5,  6,  3,  4,  2,  2,  1,
186   0,  0,  0,  0,  0,  5,  3,  3,
187   2,  1,  1,  1,  0,  1,  6,  4,
188   3,  1,  1,  1,  2,  3,  4,  5,
189   7,  8,  9, 10,  7,  8,  4,  3,
190   2,  2,  2,  2,  2,  1,  1,  1,
191   0,  1,  2,  3,  4,  5,  6,  7,
192   8,  9, 10, 11, 12, 13, 14, 15,
193  16, 17, 18, 19, 20, 21, 22, 23,
194  24, 25, 26, 27, 28, 29, 30, 31,
195  32, 33, 34, 35, 36, 37, 38, 39,
196  40, 41, 42, 43, 44, 45, 46, 47,
197  48, 49, 50, 51, 52, 53, 54, 55,
198  56, 57, 58, 59, 60, 61, 62, 63,
199   0,  0,  0,  0,  0,  0,  0,  0,
200   0,  0,  0,  0,  0,  0,  0,  0,
201   0,  0,  0,  0,  0,  0,  0,  0,
202   0,  0,  0,  0,  0,  0,  0,  0,
203   0,  0,  0,  0,  0,  0,  0,  0,
204   0,  0,  0,  0,  0,  0,  0,  0,
205   0,  0,  0,  0,  0,  0,  0,  0,
206   0,  0,  0,  0,  0,  0,  0,  0,
207   0,  0,  0,  0,  0,  0,  0,  0,
208   0,  0,  0,  0,  0,  0,  0,  0,
209   0,  0,  0,  0,  0,  0,  0,  0,
210   0,  0,  0,  0,  0,  0,  0,  0,
211   0,  0,  0,  0,  0,  0,  0,  0,
212   0,  0,  0,  0,  0,  0,  0,  0,
213   0,  0,  0,  0,  0,  0,  0,  0,
214   0,  0,  0,  0,  0,  0,  0,  0,
215   0,  0,  0,  0,  0,  0,  0,  0,
216   0,  0,  0,  0,  0,  0,  0,  0,
217   0,  0,  0,  0,  0,  0,  0,  0,
218   0,  0,  0,  0,  0,  0,  0,  0,
219   0,  0,  0,  0,  0,  0,  0,  0,
220   0,  0,  0,  0,  0,  0,  0,  0,
221   0,  0,  0,  0,  0,  0,  0,  0,
222   0,  0,  0,  0,  0,  0,  0,  0,
223   0,  0,  0,  0,  0,  0,  0,  0,
224   0,  0,  0,  0,  0,  0,  0,  0,
225   0,  0,  0,  0,  0,  0,  0,  0,
226   0,  0,  0,  0,  0,  0,  0,  0,
227   0,  0,  0,  0,  0,  0,  0,  0,
228   0,  0,  0,  0,  0,  0,  0,  0,
229   0,  0,  0,  0,  0,  0,  0,  0,
230   0,  0,  0,  0,  0,  0,  0,  0,
231 127,
232 };
233
234 static const uint8_t dv_vlc_level[409] = {
235   1,  2,  1,  3,  4,  1,  2,  5,
236   6,  1,  1,  7,  8,  1,  1,  2,
237   3,  4,  9, 10, 11,  1,  1,  1,
238   1,  2,  2,  3,  5,  6,  7, 12,
239  13, 14, 15, 16, 17,  1,  1,  1,
240   1,  2,  2,  3,  3,  4,  5,  8,
241  18, 19, 20, 21, 22,  3,  4,  5,
242   6,  9, 10, 11,  0,  0,  3,  4,
243   6, 12, 13, 14,  0,  0,  0,  0,
244   2,  2,  2,  2,  3,  3,  5,  7,
245   7,  8,  9, 10, 11, 15, 16, 17,
246   0,  0,  0,  0,  0,  0,  0,  0,
247   0,  0,  0,  0,  0,  0,  0,  0,
248   0,  0,  0,  0,  0,  0,  0,  0,
249   0,  0,  0,  0,  0,  0,  0,  0,
250   0,  0,  0,  0,  0,  0,  0,  0,
251   0,  0,  0,  0,  0,  0,  0,  0,
252   0,  0,  0,  0,  0,  0,  0,  0,
253   0,  0,  0,  0,  0,  0,  0,  0,
254   0,  1,  2,  3,  4,  5,  6,  7,
255   8,  9, 10, 11, 12, 13, 14, 15,
256  16, 17, 18, 19, 20, 21, 22, 23,
257  24, 25, 26, 27, 28, 29, 30, 31,
258  32, 33, 34, 35, 36, 37, 38, 39,
259  40, 41, 42, 43, 44, 45, 46, 47,
260  48, 49, 50, 51, 52, 53, 54, 55,
261  56, 57, 58, 59, 60, 61, 62, 63,
262  64, 65, 66, 67, 68, 69, 70, 71,
263  72, 73, 74, 75, 76, 77, 78, 79,
264  80, 81, 82, 83, 84, 85, 86, 87,
265  88, 89, 90, 91, 92, 93, 94, 95,
266  96, 97, 98, 99, 100, 101, 102, 103,
267  104, 105, 106, 107, 108, 109, 110, 111,
268  112, 113, 114, 115, 116, 117, 118, 119,
269  120, 121, 122, 123, 124, 125, 126, 127,
270  128, 129, 130, 131, 132, 133, 134, 135,
271  136, 137, 138, 139, 140, 141, 142, 143,
272  144, 145, 146, 147, 148, 149, 150, 151,
273  152, 153, 154, 155, 156, 157, 158, 159,
274  160, 161, 162, 163, 164, 165, 166, 167,
275  168, 169, 170, 171, 172, 173, 174, 175,
276  176, 177, 178, 179, 180, 181, 182, 183,
277  184, 185, 186, 187, 188, 189, 190, 191,
278  192, 193, 194, 195, 196, 197, 198, 199,
279  200, 201, 202, 203, 204, 205, 206, 207,
280  208, 209, 210, 211, 212, 213, 214, 215,
281  216, 217, 218, 219, 220, 221, 222, 223,
282  224, 225, 226, 227, 228, 229, 230, 231,
283  232, 233, 234, 235, 236, 237, 238, 239,
284  240, 241, 242, 243, 244, 245, 246, 247,
285  248, 249, 250, 251, 252, 253, 254, 255,
286   0,
287 };
288
289 /* unquant tables (not used directly) */
290 static const uint8_t dv_quant_shifts[22][4] = {
291   { 3,3,4,4 },
292   { 3,3,4,4 },
293   { 2,3,3,4 },
294   { 2,3,3,4 },
295   { 2,2,3,3 },
296   { 2,2,3,3 },
297   { 1,2,2,3 },
298   { 1,2,2,3 },
299   { 1,1,2,2 },
300   { 1,1,2,2 },
301   { 0,1,1,2 },
302   { 0,1,1,2 },
303   { 0,0,1,1 },
304   { 0,0,1,1 },
305   { 0,0,0,1 },
306   { 0,0,0,0 },
307   { 0,0,0,0 },
308   { 0,0,0,0 },
309   { 0,0,0,0 },
310   { 0,0,0,0 },
311   { 0,0,0,0 },
312   { 0,0,0,0 },
313 };
314
315 static const uint8_t dv_quant_offset[4] = { 6, 3, 0, 1 };
316 static const uint8_t dv_quant_areas[4] = { 6, 21, 43, 64 };
317
318 /* NOTE: I prefer hardcoding the positioning of dv blocks, it is
319    simpler :-) */
320
321 static const uint16_t dv_place_420[1620] = {
322  0x0c24, 0x2412, 0x3036, 0x0000, 0x1848,
323  0x0e24, 0x2612, 0x3236, 0x0200, 0x1a48,
324  0x1024, 0x2812, 0x3436, 0x0400, 0x1c48,
325  0x1026, 0x2814, 0x3438, 0x0402, 0x1c4a,
326  0x0e26, 0x2614, 0x3238, 0x0202, 0x1a4a,
327  0x0c26, 0x2414, 0x3038, 0x0002, 0x184a,
328  0x0c28, 0x2416, 0x303a, 0x0004, 0x184c,
329  0x0e28, 0x2616, 0x323a, 0x0204, 0x1a4c,
330  0x1028, 0x2816, 0x343a, 0x0404, 0x1c4c,
331  0x102a, 0x2818, 0x343c, 0x0406, 0x1c4e,
332  0x0e2a, 0x2618, 0x323c, 0x0206, 0x1a4e,
333  0x0c2a, 0x2418, 0x303c, 0x0006, 0x184e,
334  0x0c2c, 0x241a, 0x303e, 0x0008, 0x1850,
335  0x0e2c, 0x261a, 0x323e, 0x0208, 0x1a50,
336  0x102c, 0x281a, 0x343e, 0x0408, 0x1c50,
337  0x102e, 0x281c, 0x3440, 0x040a, 0x1c52,
338  0x0e2e, 0x261c, 0x3240, 0x020a, 0x1a52,
339  0x0c2e, 0x241c, 0x3040, 0x000a, 0x1852,
340  0x0c30, 0x241e, 0x3042, 0x000c, 0x1854,
341  0x0e30, 0x261e, 0x3242, 0x020c, 0x1a54,
342  0x1030, 0x281e, 0x3442, 0x040c, 0x1c54,
343  0x1032, 0x2820, 0x3444, 0x040e, 0x1c56,
344  0x0e32, 0x2620, 0x3244, 0x020e, 0x1a56,
345  0x0c32, 0x2420, 0x3044, 0x000e, 0x1856,
346  0x0c34, 0x2422, 0x3046, 0x0010, 0x1858,
347  0x0e34, 0x2622, 0x3246, 0x0210, 0x1a58,
348  0x1034, 0x2822, 0x3446, 0x0410, 0x1c58,
349  0x1224, 0x2a12, 0x3636, 0x0600, 0x1e48,
350  0x1424, 0x2c12, 0x3836, 0x0800, 0x2048,
351  0x1624, 0x2e12, 0x3a36, 0x0a00, 0x2248,
352  0x1626, 0x2e14, 0x3a38, 0x0a02, 0x224a,
353  0x1426, 0x2c14, 0x3838, 0x0802, 0x204a,
354  0x1226, 0x2a14, 0x3638, 0x0602, 0x1e4a,
355  0x1228, 0x2a16, 0x363a, 0x0604, 0x1e4c,
356  0x1428, 0x2c16, 0x383a, 0x0804, 0x204c,
357  0x1628, 0x2e16, 0x3a3a, 0x0a04, 0x224c,
358  0x162a, 0x2e18, 0x3a3c, 0x0a06, 0x224e,
359  0x142a, 0x2c18, 0x383c, 0x0806, 0x204e,
360  0x122a, 0x2a18, 0x363c, 0x0606, 0x1e4e,
361  0x122c, 0x2a1a, 0x363e, 0x0608, 0x1e50,
362  0x142c, 0x2c1a, 0x383e, 0x0808, 0x2050,
363  0x162c, 0x2e1a, 0x3a3e, 0x0a08, 0x2250,
364  0x162e, 0x2e1c, 0x3a40, 0x0a0a, 0x2252,
365  0x142e, 0x2c1c, 0x3840, 0x080a, 0x2052,
366  0x122e, 0x2a1c, 0x3640, 0x060a, 0x1e52,
367  0x1230, 0x2a1e, 0x3642, 0x060c, 0x1e54,
368  0x1430, 0x2c1e, 0x3842, 0x080c, 0x2054,
369  0x1630, 0x2e1e, 0x3a42, 0x0a0c, 0x2254,
370  0x1632, 0x2e20, 0x3a44, 0x0a0e, 0x2256,
371  0x1432, 0x2c20, 0x3844, 0x080e, 0x2056,
372  0x1232, 0x2a20, 0x3644, 0x060e, 0x1e56,
373  0x1234, 0x2a22, 0x3646, 0x0610, 0x1e58,
374  0x1434, 0x2c22, 0x3846, 0x0810, 0x2058,
375  0x1634, 0x2e22, 0x3a46, 0x0a10, 0x2258,
376  0x1824, 0x3012, 0x3c36, 0x0c00, 0x2448,
377  0x1a24, 0x3212, 0x3e36, 0x0e00, 0x2648,
378  0x1c24, 0x3412, 0x4036, 0x1000, 0x2848,
379  0x1c26, 0x3414, 0x4038, 0x1002, 0x284a,
380  0x1a26, 0x3214, 0x3e38, 0x0e02, 0x264a,
381  0x1826, 0x3014, 0x3c38, 0x0c02, 0x244a,
382  0x1828, 0x3016, 0x3c3a, 0x0c04, 0x244c,
383  0x1a28, 0x3216, 0x3e3a, 0x0e04, 0x264c,
384  0x1c28, 0x3416, 0x403a, 0x1004, 0x284c,
385  0x1c2a, 0x3418, 0x403c, 0x1006, 0x284e,
386  0x1a2a, 0x3218, 0x3e3c, 0x0e06, 0x264e,
387  0x182a, 0x3018, 0x3c3c, 0x0c06, 0x244e,
388  0x182c, 0x301a, 0x3c3e, 0x0c08, 0x2450,
389  0x1a2c, 0x321a, 0x3e3e, 0x0e08, 0x2650,
390  0x1c2c, 0x341a, 0x403e, 0x1008, 0x2850,
391  0x1c2e, 0x341c, 0x4040, 0x100a, 0x2852,
392  0x1a2e, 0x321c, 0x3e40, 0x0e0a, 0x2652,
393  0x182e, 0x301c, 0x3c40, 0x0c0a, 0x2452,
394  0x1830, 0x301e, 0x3c42, 0x0c0c, 0x2454,
395  0x1a30, 0x321e, 0x3e42, 0x0e0c, 0x2654,
396  0x1c30, 0x341e, 0x4042, 0x100c, 0x2854,
397  0x1c32, 0x3420, 0x4044, 0x100e, 0x2856,
398  0x1a32, 0x3220, 0x3e44, 0x0e0e, 0x2656,
399  0x1832, 0x3020, 0x3c44, 0x0c0e, 0x2456,
400  0x1834, 0x3022, 0x3c46, 0x0c10, 0x2458,
401  0x1a34, 0x3222, 0x3e46, 0x0e10, 0x2658,
402  0x1c34, 0x3422, 0x4046, 0x1010, 0x2858,
403  0x1e24, 0x3612, 0x4236, 0x1200, 0x2a48,
404  0x2024, 0x3812, 0x4436, 0x1400, 0x2c48,
405  0x2224, 0x3a12, 0x4636, 0x1600, 0x2e48,
406  0x2226, 0x3a14, 0x4638, 0x1602, 0x2e4a,
407  0x2026, 0x3814, 0x4438, 0x1402, 0x2c4a,
408  0x1e26, 0x3614, 0x4238, 0x1202, 0x2a4a,
409  0x1e28, 0x3616, 0x423a, 0x1204, 0x2a4c,
410  0x2028, 0x3816, 0x443a, 0x1404, 0x2c4c,
411  0x2228, 0x3a16, 0x463a, 0x1604, 0x2e4c,
412  0x222a, 0x3a18, 0x463c, 0x1606, 0x2e4e,
413  0x202a, 0x3818, 0x443c, 0x1406, 0x2c4e,
414  0x1e2a, 0x3618, 0x423c, 0x1206, 0x2a4e,
415  0x1e2c, 0x361a, 0x423e, 0x1208, 0x2a50,
416  0x202c, 0x381a, 0x443e, 0x1408, 0x2c50,
417  0x222c, 0x3a1a, 0x463e, 0x1608, 0x2e50,
418  0x222e, 0x3a1c, 0x4640, 0x160a, 0x2e52,
419  0x202e, 0x381c, 0x4440, 0x140a, 0x2c52,
420  0x1e2e, 0x361c, 0x4240, 0x120a, 0x2a52,
421  0x1e30, 0x361e, 0x4242, 0x120c, 0x2a54,
422  0x2030, 0x381e, 0x4442, 0x140c, 0x2c54,
423  0x2230, 0x3a1e, 0x4642, 0x160c, 0x2e54,
424  0x2232, 0x3a20, 0x4644, 0x160e, 0x2e56,
425  0x2032, 0x3820, 0x4444, 0x140e, 0x2c56,
426  0x1e32, 0x3620, 0x4244, 0x120e, 0x2a56,
427  0x1e34, 0x3622, 0x4246, 0x1210, 0x2a58,
428  0x2034, 0x3822, 0x4446, 0x1410, 0x2c58,
429  0x2234, 0x3a22, 0x4646, 0x1610, 0x2e58,
430  0x2424, 0x3c12, 0x0036, 0x1800, 0x3048,
431  0x2624, 0x3e12, 0x0236, 0x1a00, 0x3248,
432  0x2824, 0x4012, 0x0436, 0x1c00, 0x3448,
433  0x2826, 0x4014, 0x0438, 0x1c02, 0x344a,
434  0x2626, 0x3e14, 0x0238, 0x1a02, 0x324a,
435  0x2426, 0x3c14, 0x0038, 0x1802, 0x304a,
436  0x2428, 0x3c16, 0x003a, 0x1804, 0x304c,
437  0x2628, 0x3e16, 0x023a, 0x1a04, 0x324c,
438  0x2828, 0x4016, 0x043a, 0x1c04, 0x344c,
439  0x282a, 0x4018, 0x043c, 0x1c06, 0x344e,
440  0x262a, 0x3e18, 0x023c, 0x1a06, 0x324e,
441  0x242a, 0x3c18, 0x003c, 0x1806, 0x304e,
442  0x242c, 0x3c1a, 0x003e, 0x1808, 0x3050,
443  0x262c, 0x3e1a, 0x023e, 0x1a08, 0x3250,
444  0x282c, 0x401a, 0x043e, 0x1c08, 0x3450,
445  0x282e, 0x401c, 0x0440, 0x1c0a, 0x3452,
446  0x262e, 0x3e1c, 0x0240, 0x1a0a, 0x3252,
447  0x242e, 0x3c1c, 0x0040, 0x180a, 0x3052,
448  0x2430, 0x3c1e, 0x0042, 0x180c, 0x3054,
449  0x2630, 0x3e1e, 0x0242, 0x1a0c, 0x3254,
450  0x2830, 0x401e, 0x0442, 0x1c0c, 0x3454,
451  0x2832, 0x4020, 0x0444, 0x1c0e, 0x3456,
452  0x2632, 0x3e20, 0x0244, 0x1a0e, 0x3256,
453  0x2432, 0x3c20, 0x0044, 0x180e, 0x3056,
454  0x2434, 0x3c22, 0x0046, 0x1810, 0x3058,
455  0x2634, 0x3e22, 0x0246, 0x1a10, 0x3258,
456  0x2834, 0x4022, 0x0446, 0x1c10, 0x3458,
457  0x2a24, 0x4212, 0x0636, 0x1e00, 0x3648,
458  0x2c24, 0x4412, 0x0836, 0x2000, 0x3848,
459  0x2e24, 0x4612, 0x0a36, 0x2200, 0x3a48,
460  0x2e26, 0x4614, 0x0a38, 0x2202, 0x3a4a,
461  0x2c26, 0x4414, 0x0838, 0x2002, 0x384a,
462  0x2a26, 0x4214, 0x0638, 0x1e02, 0x364a,
463  0x2a28, 0x4216, 0x063a, 0x1e04, 0x364c,
464  0x2c28, 0x4416, 0x083a, 0x2004, 0x384c,
465  0x2e28, 0x4616, 0x0a3a, 0x2204, 0x3a4c,
466  0x2e2a, 0x4618, 0x0a3c, 0x2206, 0x3a4e,
467  0x2c2a, 0x4418, 0x083c, 0x2006, 0x384e,
468  0x2a2a, 0x4218, 0x063c, 0x1e06, 0x364e,
469  0x2a2c, 0x421a, 0x063e, 0x1e08, 0x3650,
470  0x2c2c, 0x441a, 0x083e, 0x2008, 0x3850,
471  0x2e2c, 0x461a, 0x0a3e, 0x2208, 0x3a50,
472  0x2e2e, 0x461c, 0x0a40, 0x220a, 0x3a52,
473  0x2c2e, 0x441c, 0x0840, 0x200a, 0x3852,
474  0x2a2e, 0x421c, 0x0640, 0x1e0a, 0x3652,
475  0x2a30, 0x421e, 0x0642, 0x1e0c, 0x3654,
476  0x2c30, 0x441e, 0x0842, 0x200c, 0x3854,
477  0x2e30, 0x461e, 0x0a42, 0x220c, 0x3a54,
478  0x2e32, 0x4620, 0x0a44, 0x220e, 0x3a56,
479  0x2c32, 0x4420, 0x0844, 0x200e, 0x3856,
480  0x2a32, 0x4220, 0x0644, 0x1e0e, 0x3656,
481  0x2a34, 0x4222, 0x0646, 0x1e10, 0x3658,
482  0x2c34, 0x4422, 0x0846, 0x2010, 0x3858,
483  0x2e34, 0x4622, 0x0a46, 0x2210, 0x3a58,
484  0x3024, 0x0012, 0x0c36, 0x2400, 0x3c48,
485  0x3224, 0x0212, 0x0e36, 0x2600, 0x3e48,
486  0x3424, 0x0412, 0x1036, 0x2800, 0x4048,
487  0x3426, 0x0414, 0x1038, 0x2802, 0x404a,
488  0x3226, 0x0214, 0x0e38, 0x2602, 0x3e4a,
489  0x3026, 0x0014, 0x0c38, 0x2402, 0x3c4a,
490  0x3028, 0x0016, 0x0c3a, 0x2404, 0x3c4c,
491  0x3228, 0x0216, 0x0e3a, 0x2604, 0x3e4c,
492  0x3428, 0x0416, 0x103a, 0x2804, 0x404c,
493  0x342a, 0x0418, 0x103c, 0x2806, 0x404e,
494  0x322a, 0x0218, 0x0e3c, 0x2606, 0x3e4e,
495  0x302a, 0x0018, 0x0c3c, 0x2406, 0x3c4e,
496  0x302c, 0x001a, 0x0c3e, 0x2408, 0x3c50,
497  0x322c, 0x021a, 0x0e3e, 0x2608, 0x3e50,
498  0x342c, 0x041a, 0x103e, 0x2808, 0x4050,
499  0x342e, 0x041c, 0x1040, 0x280a, 0x4052,
500  0x322e, 0x021c, 0x0e40, 0x260a, 0x3e52,
501  0x302e, 0x001c, 0x0c40, 0x240a, 0x3c52,
502  0x3030, 0x001e, 0x0c42, 0x240c, 0x3c54,
503  0x3230, 0x021e, 0x0e42, 0x260c, 0x3e54,
504  0x3430, 0x041e, 0x1042, 0x280c, 0x4054,
505  0x3432, 0x0420, 0x1044, 0x280e, 0x4056,
506  0x3232, 0x0220, 0x0e44, 0x260e, 0x3e56,
507  0x3032, 0x0020, 0x0c44, 0x240e, 0x3c56,
508  0x3034, 0x0022, 0x0c46, 0x2410, 0x3c58,
509  0x3234, 0x0222, 0x0e46, 0x2610, 0x3e58,
510  0x3434, 0x0422, 0x1046, 0x2810, 0x4058,
511  0x3624, 0x0612, 0x1236, 0x2a00, 0x4248,
512  0x3824, 0x0812, 0x1436, 0x2c00, 0x4448,
513  0x3a24, 0x0a12, 0x1636, 0x2e00, 0x4648,
514  0x3a26, 0x0a14, 0x1638, 0x2e02, 0x464a,
515  0x3826, 0x0814, 0x1438, 0x2c02, 0x444a,
516  0x3626, 0x0614, 0x1238, 0x2a02, 0x424a,
517  0x3628, 0x0616, 0x123a, 0x2a04, 0x424c,
518  0x3828, 0x0816, 0x143a, 0x2c04, 0x444c,
519  0x3a28, 0x0a16, 0x163a, 0x2e04, 0x464c,
520  0x3a2a, 0x0a18, 0x163c, 0x2e06, 0x464e,
521  0x382a, 0x0818, 0x143c, 0x2c06, 0x444e,
522  0x362a, 0x0618, 0x123c, 0x2a06, 0x424e,
523  0x362c, 0x061a, 0x123e, 0x2a08, 0x4250,
524  0x382c, 0x081a, 0x143e, 0x2c08, 0x4450,
525  0x3a2c, 0x0a1a, 0x163e, 0x2e08, 0x4650,
526  0x3a2e, 0x0a1c, 0x1640, 0x2e0a, 0x4652,
527  0x382e, 0x081c, 0x1440, 0x2c0a, 0x4452,
528  0x362e, 0x061c, 0x1240, 0x2a0a, 0x4252,
529  0x3630, 0x061e, 0x1242, 0x2a0c, 0x4254,
530  0x3830, 0x081e, 0x1442, 0x2c0c, 0x4454,
531  0x3a30, 0x0a1e, 0x1642, 0x2e0c, 0x4654,
532  0x3a32, 0x0a20, 0x1644, 0x2e0e, 0x4656,
533  0x3832, 0x0820, 0x1444, 0x2c0e, 0x4456,
534  0x3632, 0x0620, 0x1244, 0x2a0e, 0x4256,
535  0x3634, 0x0622, 0x1246, 0x2a10, 0x4258,
536  0x3834, 0x0822, 0x1446, 0x2c10, 0x4458,
537  0x3a34, 0x0a22, 0x1646, 0x2e10, 0x4658,
538  0x3c24, 0x0c12, 0x1836, 0x3000, 0x0048,
539  0x3e24, 0x0e12, 0x1a36, 0x3200, 0x0248,
540  0x4024, 0x1012, 0x1c36, 0x3400, 0x0448,
541  0x4026, 0x1014, 0x1c38, 0x3402, 0x044a,
542  0x3e26, 0x0e14, 0x1a38, 0x3202, 0x024a,
543  0x3c26, 0x0c14, 0x1838, 0x3002, 0x004a,
544  0x3c28, 0x0c16, 0x183a, 0x3004, 0x004c,
545  0x3e28, 0x0e16, 0x1a3a, 0x3204, 0x024c,
546  0x4028, 0x1016, 0x1c3a, 0x3404, 0x044c,
547  0x402a, 0x1018, 0x1c3c, 0x3406, 0x044e,
548  0x3e2a, 0x0e18, 0x1a3c, 0x3206, 0x024e,
549  0x3c2a, 0x0c18, 0x183c, 0x3006, 0x004e,
550  0x3c2c, 0x0c1a, 0x183e, 0x3008, 0x0050,
551  0x3e2c, 0x0e1a, 0x1a3e, 0x3208, 0x0250,
552  0x402c, 0x101a, 0x1c3e, 0x3408, 0x0450,
553  0x402e, 0x101c, 0x1c40, 0x340a, 0x0452,
554  0x3e2e, 0x0e1c, 0x1a40, 0x320a, 0x0252,
555  0x3c2e, 0x0c1c, 0x1840, 0x300a, 0x0052,
556  0x3c30, 0x0c1e, 0x1842, 0x300c, 0x0054,
557  0x3e30, 0x0e1e, 0x1a42, 0x320c, 0x0254,
558  0x4030, 0x101e, 0x1c42, 0x340c, 0x0454,
559  0x4032, 0x1020, 0x1c44, 0x340e, 0x0456,
560  0x3e32, 0x0e20, 0x1a44, 0x320e, 0x0256,
561  0x3c32, 0x0c20, 0x1844, 0x300e, 0x0056,
562  0x3c34, 0x0c22, 0x1846, 0x3010, 0x0058,
563  0x3e34, 0x0e22, 0x1a46, 0x3210, 0x0258,
564  0x4034, 0x1022, 0x1c46, 0x3410, 0x0458,
565  0x4224, 0x1212, 0x1e36, 0x3600, 0x0648,
566  0x4424, 0x1412, 0x2036, 0x3800, 0x0848,
567  0x4624, 0x1612, 0x2236, 0x3a00, 0x0a48,
568  0x4626, 0x1614, 0x2238, 0x3a02, 0x0a4a,
569  0x4426, 0x1414, 0x2038, 0x3802, 0x084a,
570  0x4226, 0x1214, 0x1e38, 0x3602, 0x064a,
571  0x4228, 0x1216, 0x1e3a, 0x3604, 0x064c,
572  0x4428, 0x1416, 0x203a, 0x3804, 0x084c,
573  0x4628, 0x1616, 0x223a, 0x3a04, 0x0a4c,
574  0x462a, 0x1618, 0x223c, 0x3a06, 0x0a4e,
575  0x442a, 0x1418, 0x203c, 0x3806, 0x084e,
576  0x422a, 0x1218, 0x1e3c, 0x3606, 0x064e,
577  0x422c, 0x121a, 0x1e3e, 0x3608, 0x0650,
578  0x442c, 0x141a, 0x203e, 0x3808, 0x0850,
579  0x462c, 0x161a, 0x223e, 0x3a08, 0x0a50,
580  0x462e, 0x161c, 0x2240, 0x3a0a, 0x0a52,
581  0x442e, 0x141c, 0x2040, 0x380a, 0x0852,
582  0x422e, 0x121c, 0x1e40, 0x360a, 0x0652,
583  0x4230, 0x121e, 0x1e42, 0x360c, 0x0654,
584  0x4430, 0x141e, 0x2042, 0x380c, 0x0854,
585  0x4630, 0x161e, 0x2242, 0x3a0c, 0x0a54,
586  0x4632, 0x1620, 0x2244, 0x3a0e, 0x0a56,
587  0x4432, 0x1420, 0x2044, 0x380e, 0x0856,
588  0x4232, 0x1220, 0x1e44, 0x360e, 0x0656,
589  0x4234, 0x1222, 0x1e46, 0x3610, 0x0658,
590  0x4434, 0x1422, 0x2046, 0x3810, 0x0858,
591  0x4634, 0x1622, 0x2246, 0x3a10, 0x0a58,
592  0x0024, 0x1812, 0x2436, 0x3c00, 0x0c48,
593  0x0224, 0x1a12, 0x2636, 0x3e00, 0x0e48,
594  0x0424, 0x1c12, 0x2836, 0x4000, 0x1048,
595  0x0426, 0x1c14, 0x2838, 0x4002, 0x104a,
596  0x0226, 0x1a14, 0x2638, 0x3e02, 0x0e4a,
597  0x0026, 0x1814, 0x2438, 0x3c02, 0x0c4a,
598  0x0028, 0x1816, 0x243a, 0x3c04, 0x0c4c,
599  0x0228, 0x1a16, 0x263a, 0x3e04, 0x0e4c,
600  0x0428, 0x1c16, 0x283a, 0x4004, 0x104c,
601  0x042a, 0x1c18, 0x283c, 0x4006, 0x104e,
602  0x022a, 0x1a18, 0x263c, 0x3e06, 0x0e4e,
603  0x002a, 0x1818, 0x243c, 0x3c06, 0x0c4e,
604  0x002c, 0x181a, 0x243e, 0x3c08, 0x0c50,
605  0x022c, 0x1a1a, 0x263e, 0x3e08, 0x0e50,
606  0x042c, 0x1c1a, 0x283e, 0x4008, 0x1050,
607  0x042e, 0x1c1c, 0x2840, 0x400a, 0x1052,
608  0x022e, 0x1a1c, 0x2640, 0x3e0a, 0x0e52,
609  0x002e, 0x181c, 0x2440, 0x3c0a, 0x0c52,
610  0x0030, 0x181e, 0x2442, 0x3c0c, 0x0c54,
611  0x0230, 0x1a1e, 0x2642, 0x3e0c, 0x0e54,
612  0x0430, 0x1c1e, 0x2842, 0x400c, 0x1054,
613  0x0432, 0x1c20, 0x2844, 0x400e, 0x1056,
614  0x0232, 0x1a20, 0x2644, 0x3e0e, 0x0e56,
615  0x0032, 0x1820, 0x2444, 0x3c0e, 0x0c56,
616  0x0034, 0x1822, 0x2446, 0x3c10, 0x0c58,
617  0x0234, 0x1a22, 0x2646, 0x3e10, 0x0e58,
618  0x0434, 0x1c22, 0x2846, 0x4010, 0x1058,
619  0x0624, 0x1e12, 0x2a36, 0x4200, 0x1248,
620  0x0824, 0x2012, 0x2c36, 0x4400, 0x1448,
621  0x0a24, 0x2212, 0x2e36, 0x4600, 0x1648,
622  0x0a26, 0x2214, 0x2e38, 0x4602, 0x164a,
623  0x0826, 0x2014, 0x2c38, 0x4402, 0x144a,
624  0x0626, 0x1e14, 0x2a38, 0x4202, 0x124a,
625  0x0628, 0x1e16, 0x2a3a, 0x4204, 0x124c,
626  0x0828, 0x2016, 0x2c3a, 0x4404, 0x144c,
627  0x0a28, 0x2216, 0x2e3a, 0x4604, 0x164c,
628  0x0a2a, 0x2218, 0x2e3c, 0x4606, 0x164e,
629  0x082a, 0x2018, 0x2c3c, 0x4406, 0x144e,
630  0x062a, 0x1e18, 0x2a3c, 0x4206, 0x124e,
631  0x062c, 0x1e1a, 0x2a3e, 0x4208, 0x1250,
632  0x082c, 0x201a, 0x2c3e, 0x4408, 0x1450,
633  0x0a2c, 0x221a, 0x2e3e, 0x4608, 0x1650,
634  0x0a2e, 0x221c, 0x2e40, 0x460a, 0x1652,
635  0x082e, 0x201c, 0x2c40, 0x440a, 0x1452,
636  0x062e, 0x1e1c, 0x2a40, 0x420a, 0x1252,
637  0x0630, 0x1e1e, 0x2a42, 0x420c, 0x1254,
638  0x0830, 0x201e, 0x2c42, 0x440c, 0x1454,
639  0x0a30, 0x221e, 0x2e42, 0x460c, 0x1654,
640  0x0a32, 0x2220, 0x2e44, 0x460e, 0x1656,
641  0x0832, 0x2020, 0x2c44, 0x440e, 0x1456,
642  0x0632, 0x1e20, 0x2a44, 0x420e, 0x1256,
643  0x0634, 0x1e22, 0x2a46, 0x4210, 0x1258,
644  0x0834, 0x2022, 0x2c46, 0x4410, 0x1458,
645  0x0a34, 0x2222, 0x2e46, 0x4610, 0x1658,
646 };
647
648 static const uint16_t dv_place_411P[1620] = {
649  0x0c24, 0x2710, 0x3334, 0x0000, 0x1848,
650  0x0d24, 0x2810, 0x3434, 0x0100, 0x1948,
651  0x0e24, 0x2910, 0x3534, 0x0200, 0x1a48,
652  0x0f24, 0x2914, 0x3538, 0x0300, 0x1b48,
653  0x1024, 0x2814, 0x3438, 0x0400, 0x1c48,
654  0x1124, 0x2714, 0x3338, 0x0500, 0x1d48,
655  0x1128, 0x2614, 0x3238, 0x0504, 0x1d4c,
656  0x1028, 0x2514, 0x3138, 0x0404, 0x1c4c,
657  0x0f28, 0x2414, 0x3038, 0x0304, 0x1b4c,
658  0x0e28, 0x2418, 0x303c, 0x0204, 0x1a4c,
659  0x0d28, 0x2518, 0x313c, 0x0104, 0x194c,
660  0x0c28, 0x2618, 0x323c, 0x0004, 0x184c,
661  0x0c2c, 0x2718, 0x333c, 0x0008, 0x1850,
662  0x0d2c, 0x2818, 0x343c, 0x0108, 0x1950,
663  0x0e2c, 0x2918, 0x353c, 0x0208, 0x1a50,
664  0x0f2c, 0x291c, 0x3540, 0x0308, 0x1b50,
665  0x102c, 0x281c, 0x3440, 0x0408, 0x1c50,
666  0x112c, 0x271c, 0x3340, 0x0508, 0x1d50,
667  0x1130, 0x261c, 0x3240, 0x050c, 0x1d54,
668  0x1030, 0x251c, 0x3140, 0x040c, 0x1c54,
669  0x0f30, 0x241c, 0x3040, 0x030c, 0x1b54,
670  0x0e30, 0x2420, 0x3044, 0x020c, 0x1a54,
671  0x0d30, 0x2520, 0x3144, 0x010c, 0x1954,
672  0x0c30, 0x2620, 0x3244, 0x000c, 0x1854,
673  0x0c34, 0x2720, 0x3344, 0x0010, 0x1858,
674  0x0d34, 0x2820, 0x3444, 0x0110, 0x1a58,
675  0x0e34, 0x2920, 0x3544, 0x0210, 0x1c58,
676  0x1224, 0x2d10, 0x3934, 0x0600, 0x1e48,
677  0x1324, 0x2e10, 0x3a34, 0x0700, 0x1f48,
678  0x1424, 0x2f10, 0x3b34, 0x0800, 0x2048,
679  0x1524, 0x2f14, 0x3b38, 0x0900, 0x2148,
680  0x1624, 0x2e14, 0x3a38, 0x0a00, 0x2248,
681  0x1724, 0x2d14, 0x3938, 0x0b00, 0x2348,
682  0x1728, 0x2c14, 0x3838, 0x0b04, 0x234c,
683  0x1628, 0x2b14, 0x3738, 0x0a04, 0x224c,
684  0x1528, 0x2a14, 0x3638, 0x0904, 0x214c,
685  0x1428, 0x2a18, 0x363c, 0x0804, 0x204c,
686  0x1328, 0x2b18, 0x373c, 0x0704, 0x1f4c,
687  0x1228, 0x2c18, 0x383c, 0x0604, 0x1e4c,
688  0x122c, 0x2d18, 0x393c, 0x0608, 0x1e50,
689  0x132c, 0x2e18, 0x3a3c, 0x0708, 0x1f50,
690  0x142c, 0x2f18, 0x3b3c, 0x0808, 0x2050,
691  0x152c, 0x2f1c, 0x3b40, 0x0908, 0x2150,
692  0x162c, 0x2e1c, 0x3a40, 0x0a08, 0x2250,
693  0x172c, 0x2d1c, 0x3940, 0x0b08, 0x2350,
694  0x1730, 0x2c1c, 0x3840, 0x0b0c, 0x2354,
695  0x1630, 0x2b1c, 0x3740, 0x0a0c, 0x2254,
696  0x1530, 0x2a1c, 0x3640, 0x090c, 0x2154,
697  0x1430, 0x2a20, 0x3644, 0x080c, 0x2054,
698  0x1330, 0x2b20, 0x3744, 0x070c, 0x1f54,
699  0x1230, 0x2c20, 0x3844, 0x060c, 0x1e54,
700  0x1234, 0x2d20, 0x3944, 0x0610, 0x1e58,
701  0x1334, 0x2e20, 0x3a44, 0x0710, 0x2058,
702  0x1434, 0x2f20, 0x3b44, 0x0810, 0x2258,
703  0x1824, 0x3310, 0x3f34, 0x0c00, 0x2448,
704  0x1924, 0x3410, 0x4034, 0x0d00, 0x2548,
705  0x1a24, 0x3510, 0x4134, 0x0e00, 0x2648,
706  0x1b24, 0x3514, 0x4138, 0x0f00, 0x2748,
707  0x1c24, 0x3414, 0x4038, 0x1000, 0x2848,
708  0x1d24, 0x3314, 0x3f38, 0x1100, 0x2948,
709  0x1d28, 0x3214, 0x3e38, 0x1104, 0x294c,
710  0x1c28, 0x3114, 0x3d38, 0x1004, 0x284c,
711  0x1b28, 0x3014, 0x3c38, 0x0f04, 0x274c,
712  0x1a28, 0x3018, 0x3c3c, 0x0e04, 0x264c,
713  0x1928, 0x3118, 0x3d3c, 0x0d04, 0x254c,
714  0x1828, 0x3218, 0x3e3c, 0x0c04, 0x244c,
715  0x182c, 0x3318, 0x3f3c, 0x0c08, 0x2450,
716  0x192c, 0x3418, 0x403c, 0x0d08, 0x2550,
717  0x1a2c, 0x3518, 0x413c, 0x0e08, 0x2650,
718  0x1b2c, 0x351c, 0x4140, 0x0f08, 0x2750,
719  0x1c2c, 0x341c, 0x4040, 0x1008, 0x2850,
720  0x1d2c, 0x331c, 0x3f40, 0x1108, 0x2950,
721  0x1d30, 0x321c, 0x3e40, 0x110c, 0x2954,
722  0x1c30, 0x311c, 0x3d40, 0x100c, 0x2854,
723  0x1b30, 0x301c, 0x3c40, 0x0f0c, 0x2754,
724  0x1a30, 0x3020, 0x3c44, 0x0e0c, 0x2654,
725  0x1930, 0x3120, 0x3d44, 0x0d0c, 0x2554,
726  0x1830, 0x3220, 0x3e44, 0x0c0c, 0x2454,
727  0x1834, 0x3320, 0x3f44, 0x0c10, 0x2458,
728  0x1934, 0x3420, 0x4044, 0x0d10, 0x2658,
729  0x1a34, 0x3520, 0x4144, 0x0e10, 0x2858,
730  0x1e24, 0x3910, 0x4534, 0x1200, 0x2a48,
731  0x1f24, 0x3a10, 0x4634, 0x1300, 0x2b48,
732  0x2024, 0x3b10, 0x4734, 0x1400, 0x2c48,
733  0x2124, 0x3b14, 0x4738, 0x1500, 0x2d48,
734  0x2224, 0x3a14, 0x4638, 0x1600, 0x2e48,
735  0x2324, 0x3914, 0x4538, 0x1700, 0x2f48,
736  0x2328, 0x3814, 0x4438, 0x1704, 0x2f4c,
737  0x2228, 0x3714, 0x4338, 0x1604, 0x2e4c,
738  0x2128, 0x3614, 0x4238, 0x1504, 0x2d4c,
739  0x2028, 0x3618, 0x423c, 0x1404, 0x2c4c,
740  0x1f28, 0x3718, 0x433c, 0x1304, 0x2b4c,
741  0x1e28, 0x3818, 0x443c, 0x1204, 0x2a4c,
742  0x1e2c, 0x3918, 0x453c, 0x1208, 0x2a50,
743  0x1f2c, 0x3a18, 0x463c, 0x1308, 0x2b50,
744  0x202c, 0x3b18, 0x473c, 0x1408, 0x2c50,
745  0x212c, 0x3b1c, 0x4740, 0x1508, 0x2d50,
746  0x222c, 0x3a1c, 0x4640, 0x1608, 0x2e50,
747  0x232c, 0x391c, 0x4540, 0x1708, 0x2f50,
748  0x2330, 0x381c, 0x4440, 0x170c, 0x2f54,
749  0x2230, 0x371c, 0x4340, 0x160c, 0x2e54,
750  0x2130, 0x361c, 0x4240, 0x150c, 0x2d54,
751  0x2030, 0x3620, 0x4244, 0x140c, 0x2c54,
752  0x1f30, 0x3720, 0x4344, 0x130c, 0x2b54,
753  0x1e30, 0x3820, 0x4444, 0x120c, 0x2a54,
754  0x1e34, 0x3920, 0x4544, 0x1210, 0x2a58,
755  0x1f34, 0x3a20, 0x4644, 0x1310, 0x2c58,
756  0x2034, 0x3b20, 0x4744, 0x1410, 0x2e58,
757  0x2424, 0x3f10, 0x0334, 0x1800, 0x3048,
758  0x2524, 0x4010, 0x0434, 0x1900, 0x3148,
759  0x2624, 0x4110, 0x0534, 0x1a00, 0x3248,
760  0x2724, 0x4114, 0x0538, 0x1b00, 0x3348,
761  0x2824, 0x4014, 0x0438, 0x1c00, 0x3448,
762  0x2924, 0x3f14, 0x0338, 0x1d00, 0x3548,
763  0x2928, 0x3e14, 0x0238, 0x1d04, 0x354c,
764  0x2828, 0x3d14, 0x0138, 0x1c04, 0x344c,
765  0x2728, 0x3c14, 0x0038, 0x1b04, 0x334c,
766  0x2628, 0x3c18, 0x003c, 0x1a04, 0x324c,
767  0x2528, 0x3d18, 0x013c, 0x1904, 0x314c,
768  0x2428, 0x3e18, 0x023c, 0x1804, 0x304c,
769  0x242c, 0x3f18, 0x033c, 0x1808, 0x3050,
770  0x252c, 0x4018, 0x043c, 0x1908, 0x3150,
771  0x262c, 0x4118, 0x053c, 0x1a08, 0x3250,
772  0x272c, 0x411c, 0x0540, 0x1b08, 0x3350,
773  0x282c, 0x401c, 0x0440, 0x1c08, 0x3450,
774  0x292c, 0x3f1c, 0x0340, 0x1d08, 0x3550,
775  0x2930, 0x3e1c, 0x0240, 0x1d0c, 0x3554,
776  0x2830, 0x3d1c, 0x0140, 0x1c0c, 0x3454,
777  0x2730, 0x3c1c, 0x0040, 0x1b0c, 0x3354,
778  0x2630, 0x3c20, 0x0044, 0x1a0c, 0x3254,
779  0x2530, 0x3d20, 0x0144, 0x190c, 0x3154,
780  0x2430, 0x3e20, 0x0244, 0x180c, 0x3054,
781  0x2434, 0x3f20, 0x0344, 0x1810, 0x3058,
782  0x2534, 0x4020, 0x0444, 0x1910, 0x3258,
783  0x2634, 0x4120, 0x0544, 0x1a10, 0x3458,
784  0x2a24, 0x4510, 0x0934, 0x1e00, 0x3648,
785  0x2b24, 0x4610, 0x0a34, 0x1f00, 0x3748,
786  0x2c24, 0x4710, 0x0b34, 0x2000, 0x3848,
787  0x2d24, 0x4714, 0x0b38, 0x2100, 0x3948,
788  0x2e24, 0x4614, 0x0a38, 0x2200, 0x3a48,
789  0x2f24, 0x4514, 0x0938, 0x2300, 0x3b48,
790  0x2f28, 0x4414, 0x0838, 0x2304, 0x3b4c,
791  0x2e28, 0x4314, 0x0738, 0x2204, 0x3a4c,
792  0x2d28, 0x4214, 0x0638, 0x2104, 0x394c,
793  0x2c28, 0x4218, 0x063c, 0x2004, 0x384c,
794  0x2b28, 0x4318, 0x073c, 0x1f04, 0x374c,
795  0x2a28, 0x4418, 0x083c, 0x1e04, 0x364c,
796  0x2a2c, 0x4518, 0x093c, 0x1e08, 0x3650,
797  0x2b2c, 0x4618, 0x0a3c, 0x1f08, 0x3750,
798  0x2c2c, 0x4718, 0x0b3c, 0x2008, 0x3850,
799  0x2d2c, 0x471c, 0x0b40, 0x2108, 0x3950,
800  0x2e2c, 0x461c, 0x0a40, 0x2208, 0x3a50,
801  0x2f2c, 0x451c, 0x0940, 0x2308, 0x3b50,
802  0x2f30, 0x441c, 0x0840, 0x230c, 0x3b54,
803  0x2e30, 0x431c, 0x0740, 0x220c, 0x3a54,
804  0x2d30, 0x421c, 0x0640, 0x210c, 0x3954,
805  0x2c30, 0x4220, 0x0644, 0x200c, 0x3854,
806  0x2b30, 0x4320, 0x0744, 0x1f0c, 0x3754,
807  0x2a30, 0x4420, 0x0844, 0x1e0c, 0x3654,
808  0x2a34, 0x4520, 0x0944, 0x1e10, 0x3658,
809  0x2b34, 0x4620, 0x0a44, 0x1f10, 0x3858,
810  0x2c34, 0x4720, 0x0b44, 0x2010, 0x3a58,
811  0x3024, 0x0310, 0x0f34, 0x2400, 0x3c48,
812  0x3124, 0x0410, 0x1034, 0x2500, 0x3d48,
813  0x3224, 0x0510, 0x1134, 0x2600, 0x3e48,
814  0x3324, 0x0514, 0x1138, 0x2700, 0x3f48,
815  0x3424, 0x0414, 0x1038, 0x2800, 0x4048,
816  0x3524, 0x0314, 0x0f38, 0x2900, 0x4148,
817  0x3528, 0x0214, 0x0e38, 0x2904, 0x414c,
818  0x3428, 0x0114, 0x0d38, 0x2804, 0x404c,
819  0x3328, 0x0014, 0x0c38, 0x2704, 0x3f4c,
820  0x3228, 0x0018, 0x0c3c, 0x2604, 0x3e4c,
821  0x3128, 0x0118, 0x0d3c, 0x2504, 0x3d4c,
822  0x3028, 0x0218, 0x0e3c, 0x2404, 0x3c4c,
823  0x302c, 0x0318, 0x0f3c, 0x2408, 0x3c50,
824  0x312c, 0x0418, 0x103c, 0x2508, 0x3d50,
825  0x322c, 0x0518, 0x113c, 0x2608, 0x3e50,
826  0x332c, 0x051c, 0x1140, 0x2708, 0x3f50,
827  0x342c, 0x041c, 0x1040, 0x2808, 0x4050,
828  0x352c, 0x031c, 0x0f40, 0x2908, 0x4150,
829  0x3530, 0x021c, 0x0e40, 0x290c, 0x4154,
830  0x3430, 0x011c, 0x0d40, 0x280c, 0x4054,
831  0x3330, 0x001c, 0x0c40, 0x270c, 0x3f54,
832  0x3230, 0x0020, 0x0c44, 0x260c, 0x3e54,
833  0x3130, 0x0120, 0x0d44, 0x250c, 0x3d54,
834  0x3030, 0x0220, 0x0e44, 0x240c, 0x3c54,
835  0x3034, 0x0320, 0x0f44, 0x2410, 0x3c58,
836  0x3134, 0x0420, 0x1044, 0x2510, 0x3e58,
837  0x3234, 0x0520, 0x1144, 0x2610, 0x4058,
838  0x3624, 0x0910, 0x1534, 0x2a00, 0x4248,
839  0x3724, 0x0a10, 0x1634, 0x2b00, 0x4348,
840  0x3824, 0x0b10, 0x1734, 0x2c00, 0x4448,
841  0x3924, 0x0b14, 0x1738, 0x2d00, 0x4548,
842  0x3a24, 0x0a14, 0x1638, 0x2e00, 0x4648,
843  0x3b24, 0x0914, 0x1538, 0x2f00, 0x4748,
844  0x3b28, 0x0814, 0x1438, 0x2f04, 0x474c,
845  0x3a28, 0x0714, 0x1338, 0x2e04, 0x464c,
846  0x3928, 0x0614, 0x1238, 0x2d04, 0x454c,
847  0x3828, 0x0618, 0x123c, 0x2c04, 0x444c,
848  0x3728, 0x0718, 0x133c, 0x2b04, 0x434c,
849  0x3628, 0x0818, 0x143c, 0x2a04, 0x424c,
850  0x362c, 0x0918, 0x153c, 0x2a08, 0x4250,
851  0x372c, 0x0a18, 0x163c, 0x2b08, 0x4350,
852  0x382c, 0x0b18, 0x173c, 0x2c08, 0x4450,
853  0x392c, 0x0b1c, 0x1740, 0x2d08, 0x4550,
854  0x3a2c, 0x0a1c, 0x1640, 0x2e08, 0x4650,
855  0x3b2c, 0x091c, 0x1540, 0x2f08, 0x4750,
856  0x3b30, 0x081c, 0x1440, 0x2f0c, 0x4754,
857  0x3a30, 0x071c, 0x1340, 0x2e0c, 0x4654,
858  0x3930, 0x061c, 0x1240, 0x2d0c, 0x4554,
859  0x3830, 0x0620, 0x1244, 0x2c0c, 0x4454,
860  0x3730, 0x0720, 0x1344, 0x2b0c, 0x4354,
861  0x3630, 0x0820, 0x1444, 0x2a0c, 0x4254,
862  0x3634, 0x0920, 0x1544, 0x2a10, 0x4258,
863  0x3734, 0x0a20, 0x1644, 0x2b10, 0x4458,
864  0x3834, 0x0b20, 0x1744, 0x2c10, 0x4658,
865  0x3c24, 0x0f10, 0x1b34, 0x3000, 0x0048,
866  0x3d24, 0x1010, 0x1c34, 0x3100, 0x0148,
867  0x3e24, 0x1110, 0x1d34, 0x3200, 0x0248,
868  0x3f24, 0x1114, 0x1d38, 0x3300, 0x0348,
869  0x4024, 0x1014, 0x1c38, 0x3400, 0x0448,
870  0x4124, 0x0f14, 0x1b38, 0x3500, 0x0548,
871  0x4128, 0x0e14, 0x1a38, 0x3504, 0x054c,
872  0x4028, 0x0d14, 0x1938, 0x3404, 0x044c,
873  0x3f28, 0x0c14, 0x1838, 0x3304, 0x034c,
874  0x3e28, 0x0c18, 0x183c, 0x3204, 0x024c,
875  0x3d28, 0x0d18, 0x193c, 0x3104, 0x014c,
876  0x3c28, 0x0e18, 0x1a3c, 0x3004, 0x004c,
877  0x3c2c, 0x0f18, 0x1b3c, 0x3008, 0x0050,
878  0x3d2c, 0x1018, 0x1c3c, 0x3108, 0x0150,
879  0x3e2c, 0x1118, 0x1d3c, 0x3208, 0x0250,
880  0x3f2c, 0x111c, 0x1d40, 0x3308, 0x0350,
881  0x402c, 0x101c, 0x1c40, 0x3408, 0x0450,
882  0x412c, 0x0f1c, 0x1b40, 0x3508, 0x0550,
883  0x4130, 0x0e1c, 0x1a40, 0x350c, 0x0554,
884  0x4030, 0x0d1c, 0x1940, 0x340c, 0x0454,
885  0x3f30, 0x0c1c, 0x1840, 0x330c, 0x0354,
886  0x3e30, 0x0c20, 0x1844, 0x320c, 0x0254,
887  0x3d30, 0x0d20, 0x1944, 0x310c, 0x0154,
888  0x3c30, 0x0e20, 0x1a44, 0x300c, 0x0054,
889  0x3c34, 0x0f20, 0x1b44, 0x3010, 0x0058,
890  0x3d34, 0x1020, 0x1c44, 0x3110, 0x0258,
891  0x3e34, 0x1120, 0x1d44, 0x3210, 0x0458,
892  0x4224, 0x1510, 0x2134, 0x3600, 0x0648,
893  0x4324, 0x1610, 0x2234, 0x3700, 0x0748,
894  0x4424, 0x1710, 0x2334, 0x3800, 0x0848,
895  0x4524, 0x1714, 0x2338, 0x3900, 0x0948,
896  0x4624, 0x1614, 0x2238, 0x3a00, 0x0a48,
897  0x4724, 0x1514, 0x2138, 0x3b00, 0x0b48,
898  0x4728, 0x1414, 0x2038, 0x3b04, 0x0b4c,
899  0x4628, 0x1314, 0x1f38, 0x3a04, 0x0a4c,
900  0x4528, 0x1214, 0x1e38, 0x3904, 0x094c,
901  0x4428, 0x1218, 0x1e3c, 0x3804, 0x084c,
902  0x4328, 0x1318, 0x1f3c, 0x3704, 0x074c,
903  0x4228, 0x1418, 0x203c, 0x3604, 0x064c,
904  0x422c, 0x1518, 0x213c, 0x3608, 0x0650,
905  0x432c, 0x1618, 0x223c, 0x3708, 0x0750,
906  0x442c, 0x1718, 0x233c, 0x3808, 0x0850,
907  0x452c, 0x171c, 0x2340, 0x3908, 0x0950,
908  0x462c, 0x161c, 0x2240, 0x3a08, 0x0a50,
909  0x472c, 0x151c, 0x2140, 0x3b08, 0x0b50,
910  0x4730, 0x141c, 0x2040, 0x3b0c, 0x0b54,
911  0x4630, 0x131c, 0x1f40, 0x3a0c, 0x0a54,
912  0x4530, 0x121c, 0x1e40, 0x390c, 0x0954,
913  0x4430, 0x1220, 0x1e44, 0x380c, 0x0854,
914  0x4330, 0x1320, 0x1f44, 0x370c, 0x0754,
915  0x4230, 0x1420, 0x2044, 0x360c, 0x0654,
916  0x4234, 0x1520, 0x2144, 0x3610, 0x0658,
917  0x4334, 0x1620, 0x2244, 0x3710, 0x0858,
918  0x4434, 0x1720, 0x2344, 0x3810, 0x0a58,
919  0x0024, 0x1b10, 0x2734, 0x3c00, 0x0c48,
920  0x0124, 0x1c10, 0x2834, 0x3d00, 0x0d48,
921  0x0224, 0x1d10, 0x2934, 0x3e00, 0x0e48,
922  0x0324, 0x1d14, 0x2938, 0x3f00, 0x0f48,
923  0x0424, 0x1c14, 0x2838, 0x4000, 0x1048,
924  0x0524, 0x1b14, 0x2738, 0x4100, 0x1148,
925  0x0528, 0x1a14, 0x2638, 0x4104, 0x114c,
926  0x0428, 0x1914, 0x2538, 0x4004, 0x104c,
927  0x0328, 0x1814, 0x2438, 0x3f04, 0x0f4c,
928  0x0228, 0x1818, 0x243c, 0x3e04, 0x0e4c,
929  0x0128, 0x1918, 0x253c, 0x3d04, 0x0d4c,
930  0x0028, 0x1a18, 0x263c, 0x3c04, 0x0c4c,
931  0x002c, 0x1b18, 0x273c, 0x3c08, 0x0c50,
932  0x012c, 0x1c18, 0x283c, 0x3d08, 0x0d50,
933  0x022c, 0x1d18, 0x293c, 0x3e08, 0x0e50,
934  0x032c, 0x1d1c, 0x2940, 0x3f08, 0x0f50,
935  0x042c, 0x1c1c, 0x2840, 0x4008, 0x1050,
936  0x052c, 0x1b1c, 0x2740, 0x4108, 0x1150,
937  0x0530, 0x1a1c, 0x2640, 0x410c, 0x1154,
938  0x0430, 0x191c, 0x2540, 0x400c, 0x1054,
939  0x0330, 0x181c, 0x2440, 0x3f0c, 0x0f54,
940  0x0230, 0x1820, 0x2444, 0x3e0c, 0x0e54,
941  0x0130, 0x1920, 0x2544, 0x3d0c, 0x0d54,
942  0x0030, 0x1a20, 0x2644, 0x3c0c, 0x0c54,
943  0x0034, 0x1b20, 0x2744, 0x3c10, 0x0c58,
944  0x0134, 0x1c20, 0x2844, 0x3d10, 0x0e58,
945  0x0234, 0x1d20, 0x2944, 0x3e10, 0x1058,
946  0x0624, 0x2110, 0x2d34, 0x4200, 0x1248,
947  0x0724, 0x2210, 0x2e34, 0x4300, 0x1348,
948  0x0824, 0x2310, 0x2f34, 0x4400, 0x1448,
949  0x0924, 0x2314, 0x2f38, 0x4500, 0x1548,
950  0x0a24, 0x2214, 0x2e38, 0x4600, 0x1648,
951  0x0b24, 0x2114, 0x2d38, 0x4700, 0x1748,
952  0x0b28, 0x2014, 0x2c38, 0x4704, 0x174c,
953  0x0a28, 0x1f14, 0x2b38, 0x4604, 0x164c,
954  0x0928, 0x1e14, 0x2a38, 0x4504, 0x154c,
955  0x0828, 0x1e18, 0x2a3c, 0x4404, 0x144c,
956  0x0728, 0x1f18, 0x2b3c, 0x4304, 0x134c,
957  0x0628, 0x2018, 0x2c3c, 0x4204, 0x124c,
958  0x062c, 0x2118, 0x2d3c, 0x4208, 0x1250,
959  0x072c, 0x2218, 0x2e3c, 0x4308, 0x1350,
960  0x082c, 0x2318, 0x2f3c, 0x4408, 0x1450,
961  0x092c, 0x231c, 0x2f40, 0x4508, 0x1550,
962  0x0a2c, 0x221c, 0x2e40, 0x4608, 0x1650,
963  0x0b2c, 0x211c, 0x2d40, 0x4708, 0x1750,
964  0x0b30, 0x201c, 0x2c40, 0x470c, 0x1754,
965  0x0a30, 0x1f1c, 0x2b40, 0x460c, 0x1654,
966  0x0930, 0x1e1c, 0x2a40, 0x450c, 0x1554,
967  0x0830, 0x1e20, 0x2a44, 0x440c, 0x1454,
968  0x0730, 0x1f20, 0x2b44, 0x430c, 0x1354,
969  0x0630, 0x2020, 0x2c44, 0x420c, 0x1254,
970  0x0634, 0x2120, 0x2d44, 0x4210, 0x1258,
971  0x0734, 0x2220, 0x2e44, 0x4310, 0x1458,
972  0x0834, 0x2320, 0x2f44, 0x4410, 0x1658,
973 };
974
975 static const uint16_t dv_place_411[1350] = {
976  0x0c24, 0x2710, 0x3334, 0x0000, 0x1848,
977  0x0d24, 0x2810, 0x3434, 0x0100, 0x1948,
978  0x0e24, 0x2910, 0x3534, 0x0200, 0x1a48,
979  0x0f24, 0x2914, 0x3538, 0x0300, 0x1b48,
980  0x1024, 0x2814, 0x3438, 0x0400, 0x1c48,
981  0x1124, 0x2714, 0x3338, 0x0500, 0x1d48,
982  0x1128, 0x2614, 0x3238, 0x0504, 0x1d4c,
983  0x1028, 0x2514, 0x3138, 0x0404, 0x1c4c,
984  0x0f28, 0x2414, 0x3038, 0x0304, 0x1b4c,
985  0x0e28, 0x2418, 0x303c, 0x0204, 0x1a4c,
986  0x0d28, 0x2518, 0x313c, 0x0104, 0x194c,
987  0x0c28, 0x2618, 0x323c, 0x0004, 0x184c,
988  0x0c2c, 0x2718, 0x333c, 0x0008, 0x1850,
989  0x0d2c, 0x2818, 0x343c, 0x0108, 0x1950,
990  0x0e2c, 0x2918, 0x353c, 0x0208, 0x1a50,
991  0x0f2c, 0x291c, 0x3540, 0x0308, 0x1b50,
992  0x102c, 0x281c, 0x3440, 0x0408, 0x1c50,
993  0x112c, 0x271c, 0x3340, 0x0508, 0x1d50,
994  0x1130, 0x261c, 0x3240, 0x050c, 0x1d54,
995  0x1030, 0x251c, 0x3140, 0x040c, 0x1c54,
996  0x0f30, 0x241c, 0x3040, 0x030c, 0x1b54,
997  0x0e30, 0x2420, 0x3044, 0x020c, 0x1a54,
998  0x0d30, 0x2520, 0x3144, 0x010c, 0x1954,
999  0x0c30, 0x2620, 0x3244, 0x000c, 0x1854,
1000  0x0c34, 0x2720, 0x3344, 0x0010, 0x1858,
1001  0x0d34, 0x2820, 0x3444, 0x0110, 0x1a58,
1002  0x0e34, 0x2920, 0x3544, 0x0210, 0x1c58,
1003  0x1224, 0x2d10, 0x3934, 0x0600, 0x1e48,
1004  0x1324, 0x2e10, 0x3a34, 0x0700, 0x1f48,
1005  0x1424, 0x2f10, 0x3b34, 0x0800, 0x2048,
1006  0x1524, 0x2f14, 0x3b38, 0x0900, 0x2148,
1007  0x1624, 0x2e14, 0x3a38, 0x0a00, 0x2248,
1008  0x1724, 0x2d14, 0x3938, 0x0b00, 0x2348,
1009  0x1728, 0x2c14, 0x3838, 0x0b04, 0x234c,
1010  0x1628, 0x2b14, 0x3738, 0x0a04, 0x224c,
1011  0x1528, 0x2a14, 0x3638, 0x0904, 0x214c,
1012  0x1428, 0x2a18, 0x363c, 0x0804, 0x204c,
1013  0x1328, 0x2b18, 0x373c, 0x0704, 0x1f4c,
1014  0x1228, 0x2c18, 0x383c, 0x0604, 0x1e4c,
1015  0x122c, 0x2d18, 0x393c, 0x0608, 0x1e50,
1016  0x132c, 0x2e18, 0x3a3c, 0x0708, 0x1f50,
1017  0x142c, 0x2f18, 0x3b3c, 0x0808, 0x2050,
1018  0x152c, 0x2f1c, 0x3b40, 0x0908, 0x2150,
1019  0x162c, 0x2e1c, 0x3a40, 0x0a08, 0x2250,
1020  0x172c, 0x2d1c, 0x3940, 0x0b08, 0x2350,
1021  0x1730, 0x2c1c, 0x3840, 0x0b0c, 0x2354,
1022  0x1630, 0x2b1c, 0x3740, 0x0a0c, 0x2254,
1023  0x1530, 0x2a1c, 0x3640, 0x090c, 0x2154,
1024  0x1430, 0x2a20, 0x3644, 0x080c, 0x2054,
1025  0x1330, 0x2b20, 0x3744, 0x070c, 0x1f54,
1026  0x1230, 0x2c20, 0x3844, 0x060c, 0x1e54,
1027  0x1234, 0x2d20, 0x3944, 0x0610, 0x1e58,
1028  0x1334, 0x2e20, 0x3a44, 0x0710, 0x2058,
1029  0x1434, 0x2f20, 0x3b44, 0x0810, 0x2258,
1030  0x1824, 0x3310, 0x0334, 0x0c00, 0x2448,
1031  0x1924, 0x3410, 0x0434, 0x0d00, 0x2548,
1032  0x1a24, 0x3510, 0x0534, 0x0e00, 0x2648,
1033  0x1b24, 0x3514, 0x0538, 0x0f00, 0x2748,
1034  0x1c24, 0x3414, 0x0438, 0x1000, 0x2848,
1035  0x1d24, 0x3314, 0x0338, 0x1100, 0x2948,
1036  0x1d28, 0x3214, 0x0238, 0x1104, 0x294c,
1037  0x1c28, 0x3114, 0x0138, 0x1004, 0x284c,
1038  0x1b28, 0x3014, 0x0038, 0x0f04, 0x274c,
1039  0x1a28, 0x3018, 0x003c, 0x0e04, 0x264c,
1040  0x1928, 0x3118, 0x013c, 0x0d04, 0x254c,
1041  0x1828, 0x3218, 0x023c, 0x0c04, 0x244c,
1042  0x182c, 0x3318, 0x033c, 0x0c08, 0x2450,
1043  0x192c, 0x3418, 0x043c, 0x0d08, 0x2550,
1044  0x1a2c, 0x3518, 0x053c, 0x0e08, 0x2650,
1045  0x1b2c, 0x351c, 0x0540, 0x0f08, 0x2750,
1046  0x1c2c, 0x341c, 0x0440, 0x1008, 0x2850,
1047  0x1d2c, 0x331c, 0x0340, 0x1108, 0x2950,
1048  0x1d30, 0x321c, 0x0240, 0x110c, 0x2954,
1049  0x1c30, 0x311c, 0x0140, 0x100c, 0x2854,
1050  0x1b30, 0x301c, 0x0040, 0x0f0c, 0x2754,
1051  0x1a30, 0x3020, 0x0044, 0x0e0c, 0x2654,
1052  0x1930, 0x3120, 0x0144, 0x0d0c, 0x2554,
1053  0x1830, 0x3220, 0x0244, 0x0c0c, 0x2454,
1054  0x1834, 0x3320, 0x0344, 0x0c10, 0x2458,
1055  0x1934, 0x3420, 0x0444, 0x0d10, 0x2658,
1056  0x1a34, 0x3520, 0x0544, 0x0e10, 0x2858,
1057  0x1e24, 0x3910, 0x0934, 0x1200, 0x2a48,
1058  0x1f24, 0x3a10, 0x0a34, 0x1300, 0x2b48,
1059  0x2024, 0x3b10, 0x0b34, 0x1400, 0x2c48,
1060  0x2124, 0x3b14, 0x0b38, 0x1500, 0x2d48,
1061  0x2224, 0x3a14, 0x0a38, 0x1600, 0x2e48,
1062  0x2324, 0x3914, 0x0938, 0x1700, 0x2f48,
1063  0x2328, 0x3814, 0x0838, 0x1704, 0x2f4c,
1064  0x2228, 0x3714, 0x0738, 0x1604, 0x2e4c,
1065  0x2128, 0x3614, 0x0638, 0x1504, 0x2d4c,
1066  0x2028, 0x3618, 0x063c, 0x1404, 0x2c4c,
1067  0x1f28, 0x3718, 0x073c, 0x1304, 0x2b4c,
1068  0x1e28, 0x3818, 0x083c, 0x1204, 0x2a4c,
1069  0x1e2c, 0x3918, 0x093c, 0x1208, 0x2a50,
1070  0x1f2c, 0x3a18, 0x0a3c, 0x1308, 0x2b50,
1071  0x202c, 0x3b18, 0x0b3c, 0x1408, 0x2c50,
1072  0x212c, 0x3b1c, 0x0b40, 0x1508, 0x2d50,
1073  0x222c, 0x3a1c, 0x0a40, 0x1608, 0x2e50,
1074  0x232c, 0x391c, 0x0940, 0x1708, 0x2f50,
1075  0x2330, 0x381c, 0x0840, 0x170c, 0x2f54,
1076  0x2230, 0x371c, 0x0740, 0x160c, 0x2e54,
1077  0x2130, 0x361c, 0x0640, 0x150c, 0x2d54,
1078  0x2030, 0x3620, 0x0644, 0x140c, 0x2c54,
1079  0x1f30, 0x3720, 0x0744, 0x130c, 0x2b54,
1080  0x1e30, 0x3820, 0x0844, 0x120c, 0x2a54,
1081  0x1e34, 0x3920, 0x0944, 0x1210, 0x2a58,
1082  0x1f34, 0x3a20, 0x0a44, 0x1310, 0x2c58,
1083  0x2034, 0x3b20, 0x0b44, 0x1410, 0x2e58,
1084  0x2424, 0x0310, 0x0f34, 0x1800, 0x3048,
1085  0x2524, 0x0410, 0x1034, 0x1900, 0x3148,
1086  0x2624, 0x0510, 0x1134, 0x1a00, 0x3248,
1087  0x2724, 0x0514, 0x1138, 0x1b00, 0x3348,
1088  0x2824, 0x0414, 0x1038, 0x1c00, 0x3448,
1089  0x2924, 0x0314, 0x0f38, 0x1d00, 0x3548,
1090  0x2928, 0x0214, 0x0e38, 0x1d04, 0x354c,
1091  0x2828, 0x0114, 0x0d38, 0x1c04, 0x344c,
1092  0x2728, 0x0014, 0x0c38, 0x1b04, 0x334c,
1093  0x2628, 0x0018, 0x0c3c, 0x1a04, 0x324c,
1094  0x2528, 0x0118, 0x0d3c, 0x1904, 0x314c,
1095  0x2428, 0x0218, 0x0e3c, 0x1804, 0x304c,
1096  0x242c, 0x0318, 0x0f3c, 0x1808, 0x3050,
1097  0x252c, 0x0418, 0x103c, 0x1908, 0x3150,
1098  0x262c, 0x0518, 0x113c, 0x1a08, 0x3250,
1099  0x272c, 0x051c, 0x1140, 0x1b08, 0x3350,
1100  0x282c, 0x041c, 0x1040, 0x1c08, 0x3450,
1101  0x292c, 0x031c, 0x0f40, 0x1d08, 0x3550,
1102  0x2930, 0x021c, 0x0e40, 0x1d0c, 0x3554,
1103  0x2830, 0x011c, 0x0d40, 0x1c0c, 0x3454,
1104  0x2730, 0x001c, 0x0c40, 0x1b0c, 0x3354,
1105  0x2630, 0x0020, 0x0c44, 0x1a0c, 0x3254,
1106  0x2530, 0x0120, 0x0d44, 0x190c, 0x3154,
1107  0x2430, 0x0220, 0x0e44, 0x180c, 0x3054,
1108  0x2434, 0x0320, 0x0f44, 0x1810, 0x3058,
1109  0x2534, 0x0420, 0x1044, 0x1910, 0x3258,
1110  0x2634, 0x0520, 0x1144, 0x1a10, 0x3458,
1111  0x2a24, 0x0910, 0x1534, 0x1e00, 0x3648,
1112  0x2b24, 0x0a10, 0x1634, 0x1f00, 0x3748,
1113  0x2c24, 0x0b10, 0x1734, 0x2000, 0x3848,
1114  0x2d24, 0x0b14, 0x1738, 0x2100, 0x3948,
1115  0x2e24, 0x0a14, 0x1638, 0x2200, 0x3a48,
1116  0x2f24, 0x0914, 0x1538, 0x2300, 0x3b48,
1117  0x2f28, 0x0814, 0x1438, 0x2304, 0x3b4c,
1118  0x2e28, 0x0714, 0x1338, 0x2204, 0x3a4c,
1119  0x2d28, 0x0614, 0x1238, 0x2104, 0x394c,
1120  0x2c28, 0x0618, 0x123c, 0x2004, 0x384c,
1121  0x2b28, 0x0718, 0x133c, 0x1f04, 0x374c,
1122  0x2a28, 0x0818, 0x143c, 0x1e04, 0x364c,
1123  0x2a2c, 0x0918, 0x153c, 0x1e08, 0x3650,
1124  0x2b2c, 0x0a18, 0x163c, 0x1f08, 0x3750,
1125  0x2c2c, 0x0b18, 0x173c, 0x2008, 0x3850,
1126  0x2d2c, 0x0b1c, 0x1740, 0x2108, 0x3950,
1127  0x2e2c, 0x0a1c, 0x1640, 0x2208, 0x3a50,
1128  0x2f2c, 0x091c, 0x1540, 0x2308, 0x3b50,
1129  0x2f30, 0x081c, 0x1440, 0x230c, 0x3b54,
1130  0x2e30, 0x071c, 0x1340, 0x220c, 0x3a54,
1131  0x2d30, 0x061c, 0x1240, 0x210c, 0x3954,
1132  0x2c30, 0x0620, 0x1244, 0x200c, 0x3854,
1133  0x2b30, 0x0720, 0x1344, 0x1f0c, 0x3754,
1134  0x2a30, 0x0820, 0x1444, 0x1e0c, 0x3654,
1135  0x2a34, 0x0920, 0x1544, 0x1e10, 0x3658,
1136  0x2b34, 0x0a20, 0x1644, 0x1f10, 0x3858,
1137  0x2c34, 0x0b20, 0x1744, 0x2010, 0x3a58,
1138  0x3024, 0x0f10, 0x1b34, 0x2400, 0x0048,
1139  0x3124, 0x1010, 0x1c34, 0x2500, 0x0148,
1140  0x3224, 0x1110, 0x1d34, 0x2600, 0x0248,
1141  0x3324, 0x1114, 0x1d38, 0x2700, 0x0348,
1142  0x3424, 0x1014, 0x1c38, 0x2800, 0x0448,
1143  0x3524, 0x0f14, 0x1b38, 0x2900, 0x0548,
1144  0x3528, 0x0e14, 0x1a38, 0x2904, 0x054c,
1145  0x3428, 0x0d14, 0x1938, 0x2804, 0x044c,
1146  0x3328, 0x0c14, 0x1838, 0x2704, 0x034c,
1147  0x3228, 0x0c18, 0x183c, 0x2604, 0x024c,
1148  0x3128, 0x0d18, 0x193c, 0x2504, 0x014c,
1149  0x3028, 0x0e18, 0x1a3c, 0x2404, 0x004c,
1150  0x302c, 0x0f18, 0x1b3c, 0x2408, 0x0050,
1151  0x312c, 0x1018, 0x1c3c, 0x2508, 0x0150,
1152  0x322c, 0x1118, 0x1d3c, 0x2608, 0x0250,
1153  0x332c, 0x111c, 0x1d40, 0x2708, 0x0350,
1154  0x342c, 0x101c, 0x1c40, 0x2808, 0x0450,
1155  0x352c, 0x0f1c, 0x1b40, 0x2908, 0x0550,
1156  0x3530, 0x0e1c, 0x1a40, 0x290c, 0x0554,
1157  0x3430, 0x0d1c, 0x1940, 0x280c, 0x0454,
1158  0x3330, 0x0c1c, 0x1840, 0x270c, 0x0354,
1159  0x3230, 0x0c20, 0x1844, 0x260c, 0x0254,
1160  0x3130, 0x0d20, 0x1944, 0x250c, 0x0154,
1161  0x3030, 0x0e20, 0x1a44, 0x240c, 0x0054,
1162  0x3034, 0x0f20, 0x1b44, 0x2410, 0x0058,
1163  0x3134, 0x1020, 0x1c44, 0x2510, 0x0258,
1164  0x3234, 0x1120, 0x1d44, 0x2610, 0x0458,
1165  0x3624, 0x1510, 0x2134, 0x2a00, 0x0648,
1166  0x3724, 0x1610, 0x2234, 0x2b00, 0x0748,
1167  0x3824, 0x1710, 0x2334, 0x2c00, 0x0848,
1168  0x3924, 0x1714, 0x2338, 0x2d00, 0x0948,
1169  0x3a24, 0x1614, 0x2238, 0x2e00, 0x0a48,
1170  0x3b24, 0x1514, 0x2138, 0x2f00, 0x0b48,
1171  0x3b28, 0x1414, 0x2038, 0x2f04, 0x0b4c,
1172  0x3a28, 0x1314, 0x1f38, 0x2e04, 0x0a4c,
1173  0x3928, 0x1214, 0x1e38, 0x2d04, 0x094c,
1174  0x3828, 0x1218, 0x1e3c, 0x2c04, 0x084c,
1175  0x3728, 0x1318, 0x1f3c, 0x2b04, 0x074c,
1176  0x3628, 0x1418, 0x203c, 0x2a04, 0x064c,
1177  0x362c, 0x1518, 0x213c, 0x2a08, 0x0650,
1178  0x372c, 0x1618, 0x223c, 0x2b08, 0x0750,
1179  0x382c, 0x1718, 0x233c, 0x2c08, 0x0850,
1180  0x392c, 0x171c, 0x2340, 0x2d08, 0x0950,
1181  0x3a2c, 0x161c, 0x2240, 0x2e08, 0x0a50,
1182  0x3b2c, 0x151c, 0x2140, 0x2f08, 0x0b50,
1183  0x3b30, 0x141c, 0x2040, 0x2f0c, 0x0b54,
1184  0x3a30, 0x131c, 0x1f40, 0x2e0c, 0x0a54,
1185  0x3930, 0x121c, 0x1e40, 0x2d0c, 0x0954,
1186  0x3830, 0x1220, 0x1e44, 0x2c0c, 0x0854,
1187  0x3730, 0x1320, 0x1f44, 0x2b0c, 0x0754,
1188  0x3630, 0x1420, 0x2044, 0x2a0c, 0x0654,
1189  0x3634, 0x1520, 0x2144, 0x2a10, 0x0658,
1190  0x3734, 0x1620, 0x2244, 0x2b10, 0x0858,
1191  0x3834, 0x1720, 0x2344, 0x2c10, 0x0a58,
1192  0x0024, 0x1b10, 0x2734, 0x3000, 0x0c48,
1193  0x0124, 0x1c10, 0x2834, 0x3100, 0x0d48,
1194  0x0224, 0x1d10, 0x2934, 0x3200, 0x0e48,
1195  0x0324, 0x1d14, 0x2938, 0x3300, 0x0f48,
1196  0x0424, 0x1c14, 0x2838, 0x3400, 0x1048,
1197  0x0524, 0x1b14, 0x2738, 0x3500, 0x1148,
1198  0x0528, 0x1a14, 0x2638, 0x3504, 0x114c,
1199  0x0428, 0x1914, 0x2538, 0x3404, 0x104c,
1200  0x0328, 0x1814, 0x2438, 0x3304, 0x0f4c,
1201  0x0228, 0x1818, 0x243c, 0x3204, 0x0e4c,
1202  0x0128, 0x1918, 0x253c, 0x3104, 0x0d4c,
1203  0x0028, 0x1a18, 0x263c, 0x3004, 0x0c4c,
1204  0x002c, 0x1b18, 0x273c, 0x3008, 0x0c50,
1205  0x012c, 0x1c18, 0x283c, 0x3108, 0x0d50,
1206  0x022c, 0x1d18, 0x293c, 0x3208, 0x0e50,
1207  0x032c, 0x1d1c, 0x2940, 0x3308, 0x0f50,
1208  0x042c, 0x1c1c, 0x2840, 0x3408, 0x1050,
1209  0x052c, 0x1b1c, 0x2740, 0x3508, 0x1150,
1210  0x0530, 0x1a1c, 0x2640, 0x350c, 0x1154,
1211  0x0430, 0x191c, 0x2540, 0x340c, 0x1054,
1212  0x0330, 0x181c, 0x2440, 0x330c, 0x0f54,
1213  0x0230, 0x1820, 0x2444, 0x320c, 0x0e54,
1214  0x0130, 0x1920, 0x2544, 0x310c, 0x0d54,
1215  0x0030, 0x1a20, 0x2644, 0x300c, 0x0c54,
1216  0x0034, 0x1b20, 0x2744, 0x3010, 0x0c58,
1217  0x0134, 0x1c20, 0x2844, 0x3110, 0x0e58,
1218  0x0234, 0x1d20, 0x2944, 0x3210, 0x1058,
1219  0x0624, 0x2110, 0x2d34, 0x3600, 0x1248,
1220  0x0724, 0x2210, 0x2e34, 0x3700, 0x1348,
1221  0x0824, 0x2310, 0x2f34, 0x3800, 0x1448,
1222  0x0924, 0x2314, 0x2f38, 0x3900, 0x1548,
1223  0x0a24, 0x2214, 0x2e38, 0x3a00, 0x1648,
1224  0x0b24, 0x2114, 0x2d38, 0x3b00, 0x1748,
1225  0x0b28, 0x2014, 0x2c38, 0x3b04, 0x174c,
1226  0x0a28, 0x1f14, 0x2b38, 0x3a04, 0x164c,
1227  0x0928, 0x1e14, 0x2a38, 0x3904, 0x154c,
1228  0x0828, 0x1e18, 0x2a3c, 0x3804, 0x144c,
1229  0x0728, 0x1f18, 0x2b3c, 0x3704, 0x134c,
1230  0x0628, 0x2018, 0x2c3c, 0x3604, 0x124c,
1231  0x062c, 0x2118, 0x2d3c, 0x3608, 0x1250,
1232  0x072c, 0x2218, 0x2e3c, 0x3708, 0x1350,
1233  0x082c, 0x2318, 0x2f3c, 0x3808, 0x1450,
1234  0x092c, 0x231c, 0x2f40, 0x3908, 0x1550,
1235  0x0a2c, 0x221c, 0x2e40, 0x3a08, 0x1650,
1236  0x0b2c, 0x211c, 0x2d40, 0x3b08, 0x1750,
1237  0x0b30, 0x201c, 0x2c40, 0x3b0c, 0x1754,
1238  0x0a30, 0x1f1c, 0x2b40, 0x3a0c, 0x1654,
1239  0x0930, 0x1e1c, 0x2a40, 0x390c, 0x1554,
1240  0x0830, 0x1e20, 0x2a44, 0x380c, 0x1454,
1241  0x0730, 0x1f20, 0x2b44, 0x370c, 0x1354,
1242  0x0630, 0x2020, 0x2c44, 0x360c, 0x1254,
1243  0x0634, 0x2120, 0x2d44, 0x3610, 0x1258,
1244  0x0734, 0x2220, 0x2e44, 0x3710, 0x1458,
1245  0x0834, 0x2320, 0x2f44, 0x3810, 0x1658,
1246 };
1247
1248 /* 2 channels per frame, 10 DIF sequences per channel,
1249    27 video segments per DIF sequence, 5 macroblocks per video segment */
1250 static const uint16_t dv_place_422_525[2*10*27*5] = {
1251  0x0c24, 0x2412, 0x3036, 0x0000, 0x1848,
1252  0x0d24, 0x2512, 0x3136, 0x0100, 0x1948,
1253  0x0e24, 0x2612, 0x3236, 0x0200, 0x1a48,
1254  0x0e26, 0x2614, 0x3238, 0x0202, 0x1a4a,
1255  0x0d26, 0x2514, 0x3138, 0x0102, 0x194a,
1256  0x0c26, 0x2414, 0x3038, 0x0002, 0x184a,
1257  0x0c28, 0x2416, 0x303a, 0x0004, 0x184c,
1258  0x0d28, 0x2516, 0x313a, 0x0104, 0x194c,
1259  0x0e28, 0x2616, 0x323a, 0x0204, 0x1a4c,
1260  0x0e2a, 0x2618, 0x323c, 0x0206, 0x1a4e,
1261  0x0d2a, 0x2518, 0x313c, 0x0106, 0x194e,
1262  0x0c2a, 0x2418, 0x303c, 0x0006, 0x184e,
1263  0x0c2c, 0x241a, 0x303e, 0x0008, 0x1850,
1264  0x0d2c, 0x251a, 0x313e, 0x0108, 0x1950,
1265  0x0e2c, 0x261a, 0x323e, 0x0208, 0x1a50,
1266  0x0e2e, 0x261c, 0x3240, 0x020a, 0x1a52,
1267  0x0d2e, 0x251c, 0x3140, 0x010a, 0x1952,
1268  0x0c2e, 0x241c, 0x3040, 0x000a, 0x1852,
1269  0x0c30, 0x241e, 0x3042, 0x000c, 0x1854,
1270  0x0d30, 0x251e, 0x3142, 0x010c, 0x1954,
1271  0x0e30, 0x261e, 0x3242, 0x020c, 0x1a54,
1272  0x0e32, 0x2620, 0x3244, 0x020e, 0x1a56,
1273  0x0d32, 0x2520, 0x3144, 0x010e, 0x1956,
1274  0x0c32, 0x2420, 0x3044, 0x000e, 0x1856,
1275  0x0c34, 0x2422, 0x3046, 0x0010, 0x1858,
1276  0x0d34, 0x2522, 0x3146, 0x0110, 0x1958,
1277  0x0e34, 0x2622, 0x3246, 0x0210, 0x1a58,
1278  0x1224, 0x2a12, 0x3636, 0x0600, 0x1e48,
1279  0x1324, 0x2b12, 0x3736, 0x0700, 0x1f48,
1280  0x1424, 0x2c12, 0x3836, 0x0800, 0x2048,
1281  0x1426, 0x2c14, 0x3838, 0x0802, 0x204a,
1282  0x1326, 0x2b14, 0x3738, 0x0702, 0x1f4a,
1283  0x1226, 0x2a14, 0x3638, 0x0602, 0x1e4a,
1284  0x1228, 0x2a16, 0x363a, 0x0604, 0x1e4c,
1285  0x1328, 0x2b16, 0x373a, 0x0704, 0x1f4c,
1286  0x1428, 0x2c16, 0x383a, 0x0804, 0x204c,
1287  0x142a, 0x2c18, 0x383c, 0x0806, 0x204e,
1288  0x132a, 0x2b18, 0x373c, 0x0706, 0x1f4e,
1289  0x122a, 0x2a18, 0x363c, 0x0606, 0x1e4e,
1290  0x122c, 0x2a1a, 0x363e, 0x0608, 0x1e50,
1291  0x132c, 0x2b1a, 0x373e, 0x0708, 0x1f50,
1292  0x142c, 0x2c1a, 0x383e, 0x0808, 0x2050,
1293  0x142e, 0x2c1c, 0x3840, 0x080a, 0x2052,
1294  0x132e, 0x2b1c, 0x3740, 0x070a, 0x1f52,
1295  0x122e, 0x2a1c, 0x3640, 0x060a, 0x1e52,
1296  0x1230, 0x2a1e, 0x3642, 0x060c, 0x1e54,
1297  0x1330, 0x2b1e, 0x3742, 0x070c, 0x1f54,
1298  0x1430, 0x2c1e, 0x3842, 0x080c, 0x2054,
1299  0x1432, 0x2c20, 0x3844, 0x080e, 0x2056,
1300  0x1332, 0x2b20, 0x3744, 0x070e, 0x1f56,
1301  0x1232, 0x2a20, 0x3644, 0x060e, 0x1e56,
1302  0x1234, 0x2a22, 0x3646, 0x0610, 0x1e58,
1303  0x1334, 0x2b22, 0x3746, 0x0710, 0x1f58,
1304  0x1434, 0x2c22, 0x3846, 0x0810, 0x2058,
1305  0x1824, 0x3012, 0x0036, 0x0c00, 0x2448,
1306  0x1924, 0x3112, 0x0136, 0x0d00, 0x2548,
1307  0x1a24, 0x3212, 0x0236, 0x0e00, 0x2648,
1308  0x1a26, 0x3214, 0x0238, 0x0e02, 0x264a,
1309  0x1926, 0x3114, 0x0138, 0x0d02, 0x254a,
1310  0x1826, 0x3014, 0x0038, 0x0c02, 0x244a,
1311  0x1828, 0x3016, 0x003a, 0x0c04, 0x244c,
1312  0x1928, 0x3116, 0x013a, 0x0d04, 0x254c,
1313  0x1a28, 0x3216, 0x023a, 0x0e04, 0x264c,
1314  0x1a2a, 0x3218, 0x023c, 0x0e06, 0x264e,
1315  0x192a, 0x3118, 0x013c, 0x0d06, 0x254e,
1316  0x182a, 0x3018, 0x003c, 0x0c06, 0x244e,
1317  0x182c, 0x301a, 0x003e, 0x0c08, 0x2450,
1318  0x192c, 0x311a, 0x013e, 0x0d08, 0x2550,
1319  0x1a2c, 0x321a, 0x023e, 0x0e08, 0x2650,
1320  0x1a2e, 0x321c, 0x0240, 0x0e0a, 0x2652,
1321  0x192e, 0x311c, 0x0140, 0x0d0a, 0x2552,
1322  0x182e, 0x301c, 0x0040, 0x0c0a, 0x2452,
1323  0x1830, 0x301e, 0x0042, 0x0c0c, 0x2454,
1324  0x1930, 0x311e, 0x0142, 0x0d0c, 0x2554,
1325  0x1a30, 0x321e, 0x0242, 0x0e0c, 0x2654,
1326  0x1a32, 0x3220, 0x0244, 0x0e0e, 0x2656,
1327  0x1932, 0x3120, 0x0144, 0x0d0e, 0x2556,
1328  0x1832, 0x3020, 0x0044, 0x0c0e, 0x2456,
1329  0x1834, 0x3022, 0x0046, 0x0c10, 0x2458,
1330  0x1934, 0x3122, 0x0146, 0x0d10, 0x2558,
1331  0x1a34, 0x3222, 0x0246, 0x0e10, 0x2658,
1332  0x1e24, 0x3612, 0x0636, 0x1200, 0x2a48,
1333  0x1f24, 0x3712, 0x0736, 0x1300, 0x2b48,
1334  0x2024, 0x3812, 0x0836, 0x1400, 0x2c48,
1335  0x2026, 0x3814, 0x0838, 0x1402, 0x2c4a,
1336  0x1f26, 0x3714, 0x0738, 0x1302, 0x2b4a,
1337  0x1e26, 0x3614, 0x0638, 0x1202, 0x2a4a,
1338  0x1e28, 0x3616, 0x063a, 0x1204, 0x2a4c,
1339  0x1f28, 0x3716, 0x073a, 0x1304, 0x2b4c,
1340  0x2028, 0x3816, 0x083a, 0x1404, 0x2c4c,
1341  0x202a, 0x3818, 0x083c, 0x1406, 0x2c4e,
1342  0x1f2a, 0x3718, 0x073c, 0x1306, 0x2b4e,
1343  0x1e2a, 0x3618, 0x063c, 0x1206, 0x2a4e,
1344  0x1e2c, 0x361a, 0x063e, 0x1208, 0x2a50,
1345  0x1f2c, 0x371a, 0x073e, 0x1308, 0x2b50,
1346  0x202c, 0x381a, 0x083e, 0x1408, 0x2c50,
1347  0x202e, 0x381c, 0x0840, 0x140a, 0x2c52,
1348  0x1f2e, 0x371c, 0x0740, 0x130a, 0x2b52,
1349  0x1e2e, 0x361c, 0x0640, 0x120a, 0x2a52,
1350  0x1e30, 0x361e, 0x0642, 0x120c, 0x2a54,
1351  0x1f30, 0x371e, 0x0742, 0x130c, 0x2b54,
1352  0x2030, 0x381e, 0x0842, 0x140c, 0x2c54,
1353  0x2032, 0x3820, 0x0844, 0x140e, 0x2c56,
1354  0x1f32, 0x3720, 0x0744, 0x130e, 0x2b56,
1355  0x1e32, 0x3620, 0x0644, 0x120e, 0x2a56,
1356  0x1e34, 0x3622, 0x0646, 0x1210, 0x2a58,
1357  0x1f34, 0x3722, 0x0746, 0x1310, 0x2b58,
1358  0x2034, 0x3822, 0x0846, 0x1410, 0x2c58,
1359  0x2424, 0x0012, 0x0c36, 0x1800, 0x3048,
1360  0x2524, 0x0112, 0x0d36, 0x1900, 0x3148,
1361  0x2624, 0x0212, 0x0e36, 0x1a00, 0x3248,
1362  0x2626, 0x0214, 0x0e38, 0x1a02, 0x324a,
1363  0x2526, 0x0114, 0x0d38, 0x1902, 0x314a,
1364  0x2426, 0x0014, 0x0c38, 0x1802, 0x304a,
1365  0x2428, 0x0016, 0x0c3a, 0x1804, 0x304c,
1366  0x2528, 0x0116, 0x0d3a, 0x1904, 0x314c,
1367  0x2628, 0x0216, 0x0e3a, 0x1a04, 0x324c,
1368  0x262a, 0x0218, 0x0e3c, 0x1a06, 0x324e,
1369  0x252a, 0x0118, 0x0d3c, 0x1906, 0x314e,
1370  0x242a, 0x0018, 0x0c3c, 0x1806, 0x304e,
1371  0x242c, 0x001a, 0x0c3e, 0x1808, 0x3050,
1372  0x252c, 0x011a, 0x0d3e, 0x1908, 0x3150,
1373  0x262c, 0x021a, 0x0e3e, 0x1a08, 0x3250,
1374  0x262e, 0x021c, 0x0e40, 0x1a0a, 0x3252,
1375  0x252e, 0x011c, 0x0d40, 0x190a, 0x3152,
1376  0x242e, 0x001c, 0x0c40, 0x180a, 0x3052,
1377  0x2430, 0x001e, 0x0c42, 0x180c, 0x3054,
1378  0x2530, 0x011e, 0x0d42, 0x190c, 0x3154,
1379  0x2630, 0x021e, 0x0e42, 0x1a0c, 0x3254,
1380  0x2632, 0x0220, 0x0e44, 0x1a0e, 0x3256,
1381  0x2532, 0x0120, 0x0d44, 0x190e, 0x3156,
1382  0x2432, 0x0020, 0x0c44, 0x180e, 0x3056,
1383  0x2434, 0x0022, 0x0c46, 0x1810, 0x3058,
1384  0x2534, 0x0122, 0x0d46, 0x1910, 0x3158,
1385  0x2634, 0x0222, 0x0e46, 0x1a10, 0x3258,
1386  0x2a24, 0x0612, 0x1236, 0x1e00, 0x3648,
1387  0x2b24, 0x0712, 0x1336, 0x1f00, 0x3748,
1388  0x2c24, 0x0812, 0x1436, 0x2000, 0x3848,
1389  0x2c26, 0x0814, 0x1438, 0x2002, 0x384a,
1390  0x2b26, 0x0714, 0x1338, 0x1f02, 0x374a,
1391  0x2a26, 0x0614, 0x1238, 0x1e02, 0x364a,
1392  0x2a28, 0x0616, 0x123a, 0x1e04, 0x364c,
1393  0x2b28, 0x0716, 0x133a, 0x1f04, 0x374c,
1394  0x2c28, 0x0816, 0x143a, 0x2004, 0x384c,
1395  0x2c2a, 0x0818, 0x143c, 0x2006, 0x384e,
1396  0x2b2a, 0x0718, 0x133c, 0x1f06, 0x374e,
1397  0x2a2a, 0x0618, 0x123c, 0x1e06, 0x364e,
1398  0x2a2c, 0x061a, 0x123e, 0x1e08, 0x3650,
1399  0x2b2c, 0x071a, 0x133e, 0x1f08, 0x3750,
1400  0x2c2c, 0x081a, 0x143e, 0x2008, 0x3850,
1401  0x2c2e, 0x081c, 0x1440, 0x200a, 0x3852,
1402  0x2b2e, 0x071c, 0x1340, 0x1f0a, 0x3752,
1403  0x2a2e, 0x061c, 0x1240, 0x1e0a, 0x3652,
1404  0x2a30, 0x061e, 0x1242, 0x1e0c, 0x3654,
1405  0x2b30, 0x071e, 0x1342, 0x1f0c, 0x3754,
1406  0x2c30, 0x081e, 0x1442, 0x200c, 0x3854,
1407  0x2c32, 0x0820, 0x1444, 0x200e, 0x3856,
1408  0x2b32, 0x0720, 0x1344, 0x1f0e, 0x3756,
1409  0x2a32, 0x0620, 0x1244, 0x1e0e, 0x3656,
1410  0x2a34, 0x0622, 0x1246, 0x1e10, 0x3658,
1411  0x2b34, 0x0722, 0x1346, 0x1f10, 0x3758,
1412  0x2c34, 0x0822, 0x1446, 0x2010, 0x3858,
1413  0x3024, 0x0c12, 0x1836, 0x2400, 0x0048,
1414  0x3124, 0x0d12, 0x1936, 0x2500, 0x0148,
1415  0x3224, 0x0e12, 0x1a36, 0x2600, 0x0248,
1416  0x3226, 0x0e14, 0x1a38, 0x2602, 0x024a,
1417  0x3126, 0x0d14, 0x1938, 0x2502, 0x014a,
1418  0x3026, 0x0c14, 0x1838, 0x2402, 0x004a,
1419  0x3028, 0x0c16, 0x183a, 0x2404, 0x004c,
1420  0x3128, 0x0d16, 0x193a, 0x2504, 0x014c,
1421  0x3228, 0x0e16, 0x1a3a, 0x2604, 0x024c,
1422  0x322a, 0x0e18, 0x1a3c, 0x2606, 0x024e,
1423  0x312a, 0x0d18, 0x193c, 0x2506, 0x014e,
1424  0x302a, 0x0c18, 0x183c, 0x2406, 0x004e,
1425  0x302c, 0x0c1a, 0x183e, 0x2408, 0x0050,
1426  0x312c, 0x0d1a, 0x193e, 0x2508, 0x0150,
1427  0x322c, 0x0e1a, 0x1a3e, 0x2608, 0x0250,
1428  0x322e, 0x0e1c, 0x1a40, 0x260a, 0x0252,
1429  0x312e, 0x0d1c, 0x1940, 0x250a, 0x0152,
1430  0x302e, 0x0c1c, 0x1840, 0x240a, 0x0052,
1431  0x3030, 0x0c1e, 0x1842, 0x240c, 0x0054,
1432  0x3130, 0x0d1e, 0x1942, 0x250c, 0x0154,
1433  0x3230, 0x0e1e, 0x1a42, 0x260c, 0x0254,
1434  0x3232, 0x0e20, 0x1a44, 0x260e, 0x0256,
1435  0x3132, 0x0d20, 0x1944, 0x250e, 0x0156,
1436  0x3032, 0x0c20, 0x1844, 0x240e, 0x0056,
1437  0x3034, 0x0c22, 0x1846, 0x2410, 0x0058,
1438  0x3134, 0x0d22, 0x1946, 0x2510, 0x0158,
1439  0x3234, 0x0e22, 0x1a46, 0x2610, 0x0258,
1440  0x3624, 0x1212, 0x1e36, 0x2a00, 0x0648,
1441  0x3724, 0x1312, 0x1f36, 0x2b00, 0x0748,
1442  0x3824, 0x1412, 0x2036, 0x2c00, 0x0848,
1443  0x3826, 0x1414, 0x2038, 0x2c02, 0x084a,
1444  0x3726, 0x1314, 0x1f38, 0x2b02, 0x074a,
1445  0x3626, 0x1214, 0x1e38, 0x2a02, 0x064a,
1446  0x3628, 0x1216, 0x1e3a, 0x2a04, 0x064c,
1447  0x3728, 0x1316, 0x1f3a, 0x2b04, 0x074c,
1448  0x3828, 0x1416, 0x203a, 0x2c04, 0x084c,
1449  0x382a, 0x1418, 0x203c, 0x2c06, 0x084e,
1450  0x372a, 0x1318, 0x1f3c, 0x2b06, 0x074e,
1451  0x362a, 0x1218, 0x1e3c, 0x2a06, 0x064e,
1452  0x362c, 0x121a, 0x1e3e, 0x2a08, 0x0650,
1453  0x372c, 0x131a, 0x1f3e, 0x2b08, 0x0750,
1454  0x382c, 0x141a, 0x203e, 0x2c08, 0x0850,
1455  0x382e, 0x141c, 0x2040, 0x2c0a, 0x0852,
1456  0x372e, 0x131c, 0x1f40, 0x2b0a, 0x0752,
1457  0x362e, 0x121c, 0x1e40, 0x2a0a, 0x0652,
1458  0x3630, 0x121e, 0x1e42, 0x2a0c, 0x0654,
1459  0x3730, 0x131e, 0x1f42, 0x2b0c, 0x0754,
1460  0x3830, 0x141e, 0x2042, 0x2c0c, 0x0854,
1461  0x3832, 0x1420, 0x2044, 0x2c0e, 0x0856,
1462  0x3732, 0x1320, 0x1f44, 0x2b0e, 0x0756,
1463  0x3632, 0x1220, 0x1e44, 0x2a0e, 0x0656,
1464  0x3634, 0x1222, 0x1e46, 0x2a10, 0x0658,
1465  0x3734, 0x1322, 0x1f46, 0x2b10, 0x0758,
1466  0x3834, 0x1422, 0x2046, 0x2c10, 0x0858,
1467  0x0024, 0x1812, 0x2436, 0x3000, 0x0c48,
1468  0x0124, 0x1912, 0x2536, 0x3100, 0x0d48,
1469  0x0224, 0x1a12, 0x2636, 0x3200, 0x0e48,
1470  0x0226, 0x1a14, 0x2638, 0x3202, 0x0e4a,
1471  0x0126, 0x1914, 0x2538, 0x3102, 0x0d4a,
1472  0x0026, 0x1814, 0x2438, 0x3002, 0x0c4a,
1473  0x0028, 0x1816, 0x243a, 0x3004, 0x0c4c,
1474  0x0128, 0x1916, 0x253a, 0x3104, 0x0d4c,
1475  0x0228, 0x1a16, 0x263a, 0x3204, 0x0e4c,
1476  0x022a, 0x1a18, 0x263c, 0x3206, 0x0e4e,
1477  0x012a, 0x1918, 0x253c, 0x3106, 0x0d4e,
1478  0x002a, 0x1818, 0x243c, 0x3006, 0x0c4e,
1479  0x002c, 0x181a, 0x243e, 0x3008, 0x0c50,
1480  0x012c, 0x191a, 0x253e, 0x3108, 0x0d50,
1481  0x022c, 0x1a1a, 0x263e, 0x3208, 0x0e50,
1482  0x022e, 0x1a1c, 0x2640, 0x320a, 0x0e52,
1483  0x012e, 0x191c, 0x2540, 0x310a, 0x0d52,
1484  0x002e, 0x181c, 0x2440, 0x300a, 0x0c52,
1485  0x0030, 0x181e, 0x2442, 0x300c, 0x0c54,
1486  0x0130, 0x191e, 0x2542, 0x310c, 0x0d54,
1487  0x0230, 0x1a1e, 0x2642, 0x320c, 0x0e54,
1488  0x0232, 0x1a20, 0x2644, 0x320e, 0x0e56,
1489  0x0132, 0x1920, 0x2544, 0x310e, 0x0d56,
1490  0x0032, 0x1820, 0x2444, 0x300e, 0x0c56,
1491  0x0034, 0x1822, 0x2446, 0x3010, 0x0c58,
1492  0x0134, 0x1922, 0x2546, 0x3110, 0x0d58,
1493  0x0234, 0x1a22, 0x2646, 0x3210, 0x0e58,
1494  0x0624, 0x1e12, 0x2a36, 0x3600, 0x1248,
1495  0x0724, 0x1f12, 0x2b36, 0x3700, 0x1348,
1496  0x0824, 0x2012, 0x2c36, 0x3800, 0x1448,
1497  0x0826, 0x2014, 0x2c38, 0x3802, 0x144a,
1498  0x0726, 0x1f14, 0x2b38, 0x3702, 0x134a,
1499  0x0626, 0x1e14, 0x2a38, 0x3602, 0x124a,
1500  0x0628, 0x1e16, 0x2a3a, 0x3604, 0x124c,
1501  0x0728, 0x1f16, 0x2b3a, 0x3704, 0x134c,
1502  0x0828, 0x2016, 0x2c3a, 0x3804, 0x144c,
1503  0x082a, 0x2018, 0x2c3c, 0x3806, 0x144e,
1504  0x072a, 0x1f18, 0x2b3c, 0x3706, 0x134e,
1505  0x062a, 0x1e18, 0x2a3c, 0x3606, 0x124e,
1506  0x062c, 0x1e1a, 0x2a3e, 0x3608, 0x1250,
1507  0x072c, 0x1f1a, 0x2b3e, 0x3708, 0x1350,
1508  0x082c, 0x201a, 0x2c3e, 0x3808, 0x1450,
1509  0x082e, 0x201c, 0x2c40, 0x380a, 0x1452,
1510  0x072e, 0x1f1c, 0x2b40, 0x370a, 0x1352,
1511  0x062e, 0x1e1c, 0x2a40, 0x360a, 0x1252,
1512  0x0630, 0x1e1e, 0x2a42, 0x360c, 0x1254,
1513  0x0730, 0x1f1e, 0x2b42, 0x370c, 0x1354,
1514  0x0830, 0x201e, 0x2c42, 0x380c, 0x1454,
1515  0x0832, 0x2020, 0x2c44, 0x380e, 0x1456,
1516  0x0732, 0x1f20, 0x2b44, 0x370e, 0x1356,
1517  0x0632, 0x1e20, 0x2a44, 0x360e, 0x1256,
1518  0x0634, 0x1e22, 0x2a46, 0x3610, 0x1258,
1519  0x0734, 0x1f22, 0x2b46, 0x3710, 0x1358,
1520  0x0834, 0x2022, 0x2c46, 0x3810, 0x1458,
1521  0x0f24, 0x2712, 0x3336, 0x0300, 0x1b48,
1522  0x1024, 0x2812, 0x3436, 0x0400, 0x1c48,
1523  0x1124, 0x2912, 0x3536, 0x0500, 0x1d48,
1524  0x1126, 0x2914, 0x3538, 0x0502, 0x1d4a,
1525  0x1026, 0x2814, 0x3438, 0x0402, 0x1c4a,
1526  0x0f26, 0x2714, 0x3338, 0x0302, 0x1b4a,
1527  0x0f28, 0x2716, 0x333a, 0x0304, 0x1b4c,
1528  0x1028, 0x2816, 0x343a, 0x0404, 0x1c4c,
1529  0x1128, 0x2916, 0x353a, 0x0504, 0x1d4c,
1530  0x112a, 0x2918, 0x353c, 0x0506, 0x1d4e,
1531  0x102a, 0x2818, 0x343c, 0x0406, 0x1c4e,
1532  0x0f2a, 0x2718, 0x333c, 0x0306, 0x1b4e,
1533  0x0f2c, 0x271a, 0x333e, 0x0308, 0x1b50,
1534  0x102c, 0x281a, 0x343e, 0x0408, 0x1c50,
1535  0x112c, 0x291a, 0x353e, 0x0508, 0x1d50,
1536  0x112e, 0x291c, 0x3540, 0x050a, 0x1d52,
1537  0x102e, 0x281c, 0x3440, 0x040a, 0x1c52,
1538  0x0f2e, 0x271c, 0x3340, 0x030a, 0x1b52,
1539  0x0f30, 0x271e, 0x3342, 0x030c, 0x1b54,
1540  0x1030, 0x281e, 0x3442, 0x040c, 0x1c54,
1541  0x1130, 0x291e, 0x3542, 0x050c, 0x1d54,
1542  0x1132, 0x2920, 0x3544, 0x050e, 0x1d56,
1543  0x1032, 0x2820, 0x3444, 0x040e, 0x1c56,
1544  0x0f32, 0x2720, 0x3344, 0x030e, 0x1b56,
1545  0x0f34, 0x2722, 0x3346, 0x0310, 0x1b58,
1546  0x1034, 0x2822, 0x3446, 0x0410, 0x1c58,
1547  0x1134, 0x2922, 0x3546, 0x0510, 0x1d58,
1548  0x1524, 0x2d12, 0x3936, 0x0900, 0x2148,
1549  0x1624, 0x2e12, 0x3a36, 0x0a00, 0x2248,
1550  0x1724, 0x2f12, 0x3b36, 0x0b00, 0x2348,
1551  0x1726, 0x2f14, 0x3b38, 0x0b02, 0x234a,
1552  0x1626, 0x2e14, 0x3a38, 0x0a02, 0x224a,
1553  0x1526, 0x2d14, 0x3938, 0x0902, 0x214a,
1554  0x1528, 0x2d16, 0x393a, 0x0904, 0x214c,
1555  0x1628, 0x2e16, 0x3a3a, 0x0a04, 0x224c,
1556  0x1728, 0x2f16, 0x3b3a, 0x0b04, 0x234c,
1557  0x172a, 0x2f18, 0x3b3c, 0x0b06, 0x234e,
1558  0x162a, 0x2e18, 0x3a3c, 0x0a06, 0x224e,
1559  0x152a, 0x2d18, 0x393c, 0x0906, 0x214e,
1560  0x152c, 0x2d1a, 0x393e, 0x0908, 0x2150,
1561  0x162c, 0x2e1a, 0x3a3e, 0x0a08, 0x2250,
1562  0x172c, 0x2f1a, 0x3b3e, 0x0b08, 0x2350,
1563  0x172e, 0x2f1c, 0x3b40, 0x0b0a, 0x2352,
1564  0x162e, 0x2e1c, 0x3a40, 0x0a0a, 0x2252,
1565  0x152e, 0x2d1c, 0x3940, 0x090a, 0x2152,
1566  0x1530, 0x2d1e, 0x3942, 0x090c, 0x2154,
1567  0x1630, 0x2e1e, 0x3a42, 0x0a0c, 0x2254,
1568  0x1730, 0x2f1e, 0x3b42, 0x0b0c, 0x2354,
1569  0x1732, 0x2f20, 0x3b44, 0x0b0e, 0x2356,
1570  0x1632, 0x2e20, 0x3a44, 0x0a0e, 0x2256,
1571  0x1532, 0x2d20, 0x3944, 0x090e, 0x2156,
1572  0x1534, 0x2d22, 0x3946, 0x0910, 0x2158,
1573  0x1634, 0x2e22, 0x3a46, 0x0a10, 0x2258,
1574  0x1734, 0x2f22, 0x3b46, 0x0b10, 0x2358,
1575  0x1b24, 0x3312, 0x0336, 0x0f00, 0x2748,
1576  0x1c24, 0x3412, 0x0436, 0x1000, 0x2848,
1577  0x1d24, 0x3512, 0x0536, 0x1100, 0x2948,
1578  0x1d26, 0x3514, 0x0538, 0x1102, 0x294a,
1579  0x1c26, 0x3414, 0x0438, 0x1002, 0x284a,
1580  0x1b26, 0x3314, 0x0338, 0x0f02, 0x274a,
1581  0x1b28, 0x3316, 0x033a, 0x0f04, 0x274c,
1582  0x1c28, 0x3416, 0x043a, 0x1004, 0x284c,
1583  0x1d28, 0x3516, 0x053a, 0x1104, 0x294c,
1584  0x1d2a, 0x3518, 0x053c, 0x1106, 0x294e,
1585  0x1c2a, 0x3418, 0x043c, 0x1006, 0x284e,
1586  0x1b2a, 0x3318, 0x033c, 0x0f06, 0x274e,
1587  0x1b2c, 0x331a, 0x033e, 0x0f08, 0x2750,
1588  0x1c2c, 0x341a, 0x043e, 0x1008, 0x2850,
1589  0x1d2c, 0x351a, 0x053e, 0x1108, 0x2950,
1590  0x1d2e, 0x351c, 0x0540, 0x110a, 0x2952,
1591  0x1c2e, 0x341c, 0x0440, 0x100a, 0x2852,
1592  0x1b2e, 0x331c, 0x0340, 0x0f0a, 0x2752,
1593  0x1b30, 0x331e, 0x0342, 0x0f0c, 0x2754,
1594  0x1c30, 0x341e, 0x0442, 0x100c, 0x2854,
1595  0x1d30, 0x351e, 0x0542, 0x110c, 0x2954,
1596  0x1d32, 0x3520, 0x0544, 0x110e, 0x2956,
1597  0x1c32, 0x3420, 0x0444, 0x100e, 0x2856,
1598  0x1b32, 0x3320, 0x0344, 0x0f0e, 0x2756,
1599  0x1b34, 0x3322, 0x0346, 0x0f10, 0x2758,
1600  0x1c34, 0x3422, 0x0446, 0x1010, 0x2858,
1601  0x1d34, 0x3522, 0x0546, 0x1110, 0x2958,
1602  0x2124, 0x3912, 0x0936, 0x1500, 0x2d48,
1603  0x2224, 0x3a12, 0x0a36, 0x1600, 0x2e48,
1604  0x2324, 0x3b12, 0x0b36, 0x1700, 0x2f48,
1605  0x2326, 0x3b14, 0x0b38, 0x1702, 0x2f4a,
1606  0x2226, 0x3a14, 0x0a38, 0x1602, 0x2e4a,
1607  0x2126, 0x3914, 0x0938, 0x1502, 0x2d4a,
1608  0x2128, 0x3916, 0x093a, 0x1504, 0x2d4c,
1609  0x2228, 0x3a16, 0x0a3a, 0x1604, 0x2e4c,
1610  0x2328, 0x3b16, 0x0b3a, 0x1704, 0x2f4c,
1611  0x232a, 0x3b18, 0x0b3c, 0x1706, 0x2f4e,
1612  0x222a, 0x3a18, 0x0a3c, 0x1606, 0x2e4e,
1613  0x212a, 0x3918, 0x093c, 0x1506, 0x2d4e,
1614  0x212c, 0x391a, 0x093e, 0x1508, 0x2d50,
1615  0x222c, 0x3a1a, 0x0a3e, 0x1608, 0x2e50,
1616  0x232c, 0x3b1a, 0x0b3e, 0x1708, 0x2f50,
1617  0x232e, 0x3b1c, 0x0b40, 0x170a, 0x2f52,
1618  0x222e, 0x3a1c, 0x0a40, 0x160a, 0x2e52,
1619  0x212e, 0x391c, 0x0940, 0x150a, 0x2d52,
1620  0x2130, 0x391e, 0x0942, 0x150c, 0x2d54,
1621  0x2230, 0x3a1e, 0x0a42, 0x160c, 0x2e54,
1622  0x2330, 0x3b1e, 0x0b42, 0x170c, 0x2f54,
1623  0x2332, 0x3b20, 0x0b44, 0x170e, 0x2f56,
1624  0x2232, 0x3a20, 0x0a44, 0x160e, 0x2e56,
1625  0x2132, 0x3920, 0x0944, 0x150e, 0x2d56,
1626  0x2134, 0x3922, 0x0946, 0x1510, 0x2d58,
1627  0x2234, 0x3a22, 0x0a46, 0x1610, 0x2e58,
1628  0x2334, 0x3b22, 0x0b46, 0x1710, 0x2f58,
1629  0x2724, 0x0312, 0x0f36, 0x1b00, 0x3348,
1630  0x2824, 0x0412, 0x1036, 0x1c00, 0x3448,
1631  0x2924, 0x0512, 0x1136, 0x1d00, 0x3548,
1632  0x2926, 0x0514, 0x1138, 0x1d02, 0x354a,
1633  0x2826, 0x0414, 0x1038, 0x1c02, 0x344a,
1634  0x2726, 0x0314, 0x0f38, 0x1b02, 0x334a,
1635  0x2728, 0x0316, 0x0f3a, 0x1b04, 0x334c,
1636  0x2828, 0x0416, 0x103a, 0x1c04, 0x344c,
1637  0x2928, 0x0516, 0x113a, 0x1d04, 0x354c,
1638  0x292a, 0x0518, 0x113c, 0x1d06, 0x354e,
1639  0x282a, 0x0418, 0x103c, 0x1c06, 0x344e,
1640  0x272a, 0x0318, 0x0f3c, 0x1b06, 0x334e,
1641  0x272c, 0x031a, 0x0f3e, 0x1b08, 0x3350,
1642  0x282c, 0x041a, 0x103e, 0x1c08, 0x3450,
1643  0x292c, 0x051a, 0x113e, 0x1d08, 0x3550,
1644  0x292e, 0x051c, 0x1140, 0x1d0a, 0x3552,
1645  0x282e, 0x041c, 0x1040, 0x1c0a, 0x3452,
1646  0x272e, 0x031c, 0x0f40, 0x1b0a, 0x3352,
1647  0x2730, 0x031e, 0x0f42, 0x1b0c, 0x3354,
1648  0x2830, 0x041e, 0x1042, 0x1c0c, 0x3454,
1649  0x2930, 0x051e, 0x1142, 0x1d0c, 0x3554,
1650  0x2932, 0x0520, 0x1144, 0x1d0e, 0x3556,
1651  0x2832, 0x0420, 0x1044, 0x1c0e, 0x3456,
1652  0x2732, 0x0320, 0x0f44, 0x1b0e, 0x3356,
1653  0x2734, 0x0322, 0x0f46, 0x1b10, 0x3358,
1654  0x2834, 0x0422, 0x1046, 0x1c10, 0x3458,
1655  0x2934, 0x0522, 0x1146, 0x1d10, 0x3558,
1656  0x2d24, 0x0912, 0x1536, 0x2100, 0x3948,
1657  0x2e24, 0x0a12, 0x1636, 0x2200, 0x3a48,
1658  0x2f24, 0x0b12, 0x1736, 0x2300, 0x3b48,
1659  0x2f26, 0x0b14, 0x1738, 0x2302, 0x3b4a,
1660  0x2e26, 0x0a14, 0x1638, 0x2202, 0x3a4a,
1661  0x2d26, 0x0914, 0x1538, 0x2102, 0x394a,
1662  0x2d28, 0x0916, 0x153a, 0x2104, 0x394c,
1663  0x2e28, 0x0a16, 0x163a, 0x2204, 0x3a4c,
1664  0x2f28, 0x0b16, 0x173a, 0x2304, 0x3b4c,
1665  0x2f2a, 0x0b18, 0x173c, 0x2306, 0x3b4e,
1666  0x2e2a, 0x0a18, 0x163c, 0x2206, 0x3a4e,
1667  0x2d2a, 0x0918, 0x153c, 0x2106, 0x394e,
1668  0x2d2c, 0x091a, 0x153e, 0x2108, 0x3950,
1669  0x2e2c, 0x0a1a, 0x163e, 0x2208, 0x3a50,
1670  0x2f2c, 0x0b1a, 0x173e, 0x2308, 0x3b50,
1671  0x2f2e, 0x0b1c, 0x1740, 0x230a, 0x3b52,
1672  0x2e2e, 0x0a1c, 0x1640, 0x220a, 0x3a52,
1673  0x2d2e, 0x091c, 0x1540, 0x210a, 0x3952,
1674  0x2d30, 0x091e, 0x1542, 0x210c, 0x3954,
1675  0x2e30, 0x0a1e, 0x1642, 0x220c, 0x3a54,
1676  0x2f30, 0x0b1e, 0x1742, 0x230c, 0x3b54,
1677  0x2f32, 0x0b20, 0x1744, 0x230e, 0x3b56,
1678  0x2e32, 0x0a20, 0x1644, 0x220e, 0x3a56,
1679  0x2d32, 0x0920, 0x1544, 0x210e, 0x3956,
1680  0x2d34, 0x0922, 0x1546, 0x2110, 0x3958,
1681  0x2e34, 0x0a22, 0x1646, 0x2210, 0x3a58,
1682  0x2f34, 0x0b22, 0x1746, 0x2310, 0x3b58,
1683  0x3324, 0x0f12, 0x1b36, 0x2700, 0x0348,
1684  0x3424, 0x1012, 0x1c36, 0x2800, 0x0448,
1685  0x3524, 0x1112, 0x1d36, 0x2900, 0x0548,
1686  0x3526, 0x1114, 0x1d38, 0x2902, 0x054a,
1687  0x3426, 0x1014, 0x1c38, 0x2802, 0x044a,
1688  0x3326, 0x0f14, 0x1b38, 0x2702, 0x034a,
1689  0x3328, 0x0f16, 0x1b3a, 0x2704, 0x034c,
1690  0x3428, 0x1016, 0x1c3a, 0x2804, 0x044c,
1691  0x3528, 0x1116, 0x1d3a, 0x2904, 0x054c,
1692  0x352a, 0x1118, 0x1d3c, 0x2906, 0x054e,
1693  0x342a, 0x1018, 0x1c3c, 0x2806, 0x044e,
1694  0x332a, 0x0f18, 0x1b3c, 0x2706, 0x034e,
1695  0x332c, 0x0f1a, 0x1b3e, 0x2708, 0x0350,
1696  0x342c, 0x101a, 0x1c3e, 0x2808, 0x0450,
1697  0x352c, 0x111a, 0x1d3e, 0x2908, 0x0550,
1698  0x352e, 0x111c, 0x1d40, 0x290a, 0x0552,
1699  0x342e, 0x101c, 0x1c40, 0x280a, 0x0452,
1700  0x332e, 0x0f1c, 0x1b40, 0x270a, 0x0352,
1701  0x3330, 0x0f1e, 0x1b42, 0x270c, 0x0354,
1702  0x3430, 0x101e, 0x1c42, 0x280c, 0x0454,
1703  0x3530, 0x111e, 0x1d42, 0x290c, 0x0554,
1704  0x3532, 0x1120, 0x1d44, 0x290e, 0x0556,
1705  0x3432, 0x1020, 0x1c44, 0x280e, 0x0456,
1706  0x3332, 0x0f20, 0x1b44, 0x270e, 0x0356,
1707  0x3334, 0x0f22, 0x1b46, 0x2710, 0x0358,
1708  0x3434, 0x1022, 0x1c46, 0x2810, 0x0458,
1709  0x3534, 0x1122, 0x1d46, 0x2910, 0x0558,
1710  0x3924, 0x1512, 0x2136, 0x2d00, 0x0948,
1711  0x3a24, 0x1612, 0x2236, 0x2e00, 0x0a48,
1712  0x3b24, 0x1712, 0x2336, 0x2f00, 0x0b48,
1713  0x3b26, 0x1714, 0x2338, 0x2f02, 0x0b4a,
1714  0x3a26, 0x1614, 0x2238, 0x2e02, 0x0a4a,
1715  0x3926, 0x1514, 0x2138, 0x2d02, 0x094a,
1716  0x3928, 0x1516, 0x213a, 0x2d04, 0x094c,
1717  0x3a28, 0x1616, 0x223a, 0x2e04, 0x0a4c,
1718  0x3b28, 0x1716, 0x233a, 0x2f04, 0x0b4c,
1719  0x3b2a, 0x1718, 0x233c, 0x2f06, 0x0b4e,
1720  0x3a2a, 0x1618, 0x223c, 0x2e06, 0x0a4e,
1721  0x392a, 0x1518, 0x213c, 0x2d06, 0x094e,
1722  0x392c, 0x151a, 0x213e, 0x2d08, 0x0950,
1723  0x3a2c, 0x161a, 0x223e, 0x2e08, 0x0a50,
1724  0x3b2c, 0x171a, 0x233e, 0x2f08, 0x0b50,
1725  0x3b2e, 0x171c, 0x2340, 0x2f0a, 0x0b52,
1726  0x3a2e, 0x161c, 0x2240, 0x2e0a, 0x0a52,
1727  0x392e, 0x151c, 0x2140, 0x2d0a, 0x0952,
1728  0x3930, 0x151e, 0x2142, 0x2d0c, 0x0954,
1729  0x3a30, 0x161e, 0x2242, 0x2e0c, 0x0a54,
1730  0x3b30, 0x171e, 0x2342, 0x2f0c, 0x0b54,
1731  0x3b32, 0x1720, 0x2344, 0x2f0e, 0x0b56,
1732  0x3a32, 0x1620, 0x2244, 0x2e0e, 0x0a56,
1733  0x3932, 0x1520, 0x2144, 0x2d0e, 0x0956,
1734  0x3934, 0x1522, 0x2146, 0x2d10, 0x0958,
1735  0x3a34, 0x1622, 0x2246, 0x2e10, 0x0a58,
1736  0x3b34, 0x1722, 0x2346, 0x2f10, 0x0b58,
1737  0x0324, 0x1b12, 0x2736, 0x3300, 0x0f48,
1738  0x0424, 0x1c12, 0x2836, 0x3400, 0x1048,
1739  0x0524, 0x1d12, 0x2936, 0x3500, 0x1148,
1740  0x0526, 0x1d14, 0x2938, 0x3502, 0x114a,
1741  0x0426, 0x1c14, 0x2838, 0x3402, 0x104a,
1742  0x0326, 0x1b14, 0x2738, 0x3302, 0x0f4a,
1743  0x0328, 0x1b16, 0x273a, 0x3304, 0x0f4c,
1744  0x0428, 0x1c16, 0x283a, 0x3404, 0x104c,
1745  0x0528, 0x1d16, 0x293a, 0x3504, 0x114c,
1746  0x052a, 0x1d18, 0x293c, 0x3506, 0x114e,
1747  0x042a, 0x1c18, 0x283c, 0x3406, 0x104e,
1748  0x032a, 0x1b18, 0x273c, 0x3306, 0x0f4e,
1749  0x032c, 0x1b1a, 0x273e, 0x3308, 0x0f50,
1750  0x042c, 0x1c1a, 0x283e, 0x3408, 0x1050,
1751  0x052c, 0x1d1a, 0x293e, 0x3508, 0x1150,
1752  0x052e, 0x1d1c, 0x2940, 0x350a, 0x1152,
1753  0x042e, 0x1c1c, 0x2840, 0x340a, 0x1052,
1754  0x032e, 0x1b1c, 0x2740, 0x330a, 0x0f52,
1755  0x0330, 0x1b1e, 0x2742, 0x330c, 0x0f54,
1756  0x0430, 0x1c1e, 0x2842, 0x340c, 0x1054,
1757  0x0530, 0x1d1e, 0x2942, 0x350c, 0x1154,
1758  0x0532, 0x1d20, 0x2944, 0x350e, 0x1156,
1759  0x0432, 0x1c20, 0x2844, 0x340e, 0x1056,
1760  0x0332, 0x1b20, 0x2744, 0x330e, 0x0f56,
1761  0x0334, 0x1b22, 0x2746, 0x3310, 0x0f58,
1762  0x0434, 0x1c22, 0x2846, 0x3410, 0x1058,
1763  0x0534, 0x1d22, 0x2946, 0x3510, 0x1158,
1764  0x0924, 0x2112, 0x2d36, 0x3900, 0x1548,
1765  0x0a24, 0x2212, 0x2e36, 0x3a00, 0x1648,
1766  0x0b24, 0x2312, 0x2f36, 0x3b00, 0x1748,
1767  0x0b26, 0x2314, 0x2f38, 0x3b02, 0x174a,
1768  0x0a26, 0x2214, 0x2e38, 0x3a02, 0x164a,
1769  0x0926, 0x2114, 0x2d38, 0x3902, 0x154a,
1770  0x0928, 0x2116, 0x2d3a, 0x3904, 0x154c,
1771  0x0a28, 0x2216, 0x2e3a, 0x3a04, 0x164c,
1772  0x0b28, 0x2316, 0x2f3a, 0x3b04, 0x174c,
1773  0x0b2a, 0x2318, 0x2f3c, 0x3b06, 0x174e,
1774  0x0a2a, 0x2218, 0x2e3c, 0x3a06, 0x164e,
1775  0x092a, 0x2118, 0x2d3c, 0x3906, 0x154e,
1776  0x092c, 0x211a, 0x2d3e, 0x3908, 0x1550,
1777  0x0a2c, 0x221a, 0x2e3e, 0x3a08, 0x1650,
1778  0x0b2c, 0x231a, 0x2f3e, 0x3b08, 0x1750,
1779  0x0b2e, 0x231c, 0x2f40, 0x3b0a, 0x1752,
1780  0x0a2e, 0x221c, 0x2e40, 0x3a0a, 0x1652,
1781  0x092e, 0x211c, 0x2d40, 0x390a, 0x1552,
1782  0x0930, 0x211e, 0x2d42, 0x390c, 0x1554,
1783  0x0a30, 0x221e, 0x2e42, 0x3a0c, 0x1654,
1784  0x0b30, 0x231e, 0x2f42, 0x3b0c, 0x1754,
1785  0x0b32, 0x2320, 0x2f44, 0x3b0e, 0x1756,
1786  0x0a32, 0x2220, 0x2e44, 0x3a0e, 0x1656,
1787  0x0932, 0x2120, 0x2d44, 0x390e, 0x1556,
1788  0x0934, 0x2122, 0x2d46, 0x3910, 0x1558,
1789  0x0a34, 0x2222, 0x2e46, 0x3a10, 0x1658,
1790  0x0b34, 0x2322, 0x2f46, 0x3b10, 0x1758,
1791 };
1792
1793 /* 2 channels per frame, 12 DIF sequences per channel,
1794    27 video segments per DIF sequence, 5 macroblocks per video segment */
1795 static const uint16_t dv_place_422_625[2*12*27*5] = {
1796  0x0c24, 0x2412, 0x3036, 0x0000, 0x1848,
1797  0x0d24, 0x2512, 0x3136, 0x0100, 0x1948,
1798  0x0e24, 0x2612, 0x3236, 0x0200, 0x1a48,
1799  0x0e26, 0x2614, 0x3238, 0x0202, 0x1a4a,
1800  0x0d26, 0x2514, 0x3138, 0x0102, 0x194a,
1801  0x0c26, 0x2414, 0x3038, 0x0002, 0x184a,
1802  0x0c28, 0x2416, 0x303a, 0x0004, 0x184c,
1803  0x0d28, 0x2516, 0x313a, 0x0104, 0x194c,
1804  0x0e28, 0x2616, 0x323a, 0x0204, 0x1a4c,
1805  0x0e2a, 0x2618, 0x323c, 0x0206, 0x1a4e,
1806  0x0d2a, 0x2518, 0x313c, 0x0106, 0x194e,
1807  0x0c2a, 0x2418, 0x303c, 0x0006, 0x184e,
1808  0x0c2c, 0x241a, 0x303e, 0x0008, 0x1850,
1809  0x0d2c, 0x251a, 0x313e, 0x0108, 0x1950,
1810  0x0e2c, 0x261a, 0x323e, 0x0208, 0x1a50,
1811  0x0e2e, 0x261c, 0x3240, 0x020a, 0x1a52,
1812  0x0d2e, 0x251c, 0x3140, 0x010a, 0x1952,
1813  0x0c2e, 0x241c, 0x3040, 0x000a, 0x1852,
1814  0x0c30, 0x241e, 0x3042, 0x000c, 0x1854,
1815  0x0d30, 0x251e, 0x3142, 0x010c, 0x1954,
1816  0x0e30, 0x261e, 0x3242, 0x020c, 0x1a54,
1817  0x0e32, 0x2620, 0x3244, 0x020e, 0x1a56,
1818  0x0d32, 0x2520, 0x3144, 0x010e, 0x1956,
1819  0x0c32, 0x2420, 0x3044, 0x000e, 0x1856,
1820  0x0c34, 0x2422, 0x3046, 0x0010, 0x1858,
1821  0x0d34, 0x2522, 0x3146, 0x0110, 0x1958,
1822  0x0e34, 0x2622, 0x3246, 0x0210, 0x1a58,
1823  0x1224, 0x2a12, 0x3636, 0x0600, 0x1e48,
1824  0x1324, 0x2b12, 0x3736, 0x0700, 0x1f48,
1825  0x1424, 0x2c12, 0x3836, 0x0800, 0x2048,
1826  0x1426, 0x2c14, 0x3838, 0x0802, 0x204a,
1827  0x1326, 0x2b14, 0x3738, 0x0702, 0x1f4a,
1828  0x1226, 0x2a14, 0x3638, 0x0602, 0x1e4a,
1829  0x1228, 0x2a16, 0x363a, 0x0604, 0x1e4c,
1830  0x1328, 0x2b16, 0x373a, 0x0704, 0x1f4c,
1831  0x1428, 0x2c16, 0x383a, 0x0804, 0x204c,
1832  0x142a, 0x2c18, 0x383c, 0x0806, 0x204e,
1833  0x132a, 0x2b18, 0x373c, 0x0706, 0x1f4e,
1834  0x122a, 0x2a18, 0x363c, 0x0606, 0x1e4e,
1835  0x122c, 0x2a1a, 0x363e, 0x0608, 0x1e50,
1836  0x132c, 0x2b1a, 0x373e, 0x0708, 0x1f50,
1837  0x142c, 0x2c1a, 0x383e, 0x0808, 0x2050,
1838  0x142e, 0x2c1c, 0x3840, 0x080a, 0x2052,
1839  0x132e, 0x2b1c, 0x3740, 0x070a, 0x1f52,
1840  0x122e, 0x2a1c, 0x3640, 0x060a, 0x1e52,
1841  0x1230, 0x2a1e, 0x3642, 0x060c, 0x1e54,
1842  0x1330, 0x2b1e, 0x3742, 0x070c, 0x1f54,
1843  0x1430, 0x2c1e, 0x3842, 0x080c, 0x2054,
1844  0x1432, 0x2c20, 0x3844, 0x080e, 0x2056,
1845  0x1332, 0x2b20, 0x3744, 0x070e, 0x1f56,
1846  0x1232, 0x2a20, 0x3644, 0x060e, 0x1e56,
1847  0x1234, 0x2a22, 0x3646, 0x0610, 0x1e58,
1848  0x1334, 0x2b22, 0x3746, 0x0710, 0x1f58,
1849  0x1434, 0x2c22, 0x3846, 0x0810, 0x2058,
1850  0x1824, 0x3012, 0x3c36, 0x0c00, 0x2448,
1851  0x1924, 0x3112, 0x3d36, 0x0d00, 0x2548,
1852  0x1a24, 0x3212, 0x3e36, 0x0e00, 0x2648,
1853  0x1a26, 0x3214, 0x3e38, 0x0e02, 0x264a,
1854  0x1926, 0x3114, 0x3d38, 0x0d02, 0x254a,
1855  0x1826, 0x3014, 0x3c38, 0x0c02, 0x244a,
1856  0x1828, 0x3016, 0x3c3a, 0x0c04, 0x244c,
1857  0x1928, 0x3116, 0x3d3a, 0x0d04, 0x254c,
1858  0x1a28, 0x3216, 0x3e3a, 0x0e04, 0x264c,
1859  0x1a2a, 0x3218, 0x3e3c, 0x0e06, 0x264e,
1860  0x192a, 0x3118, 0x3d3c, 0x0d06, 0x254e,
1861  0x182a, 0x3018, 0x3c3c, 0x0c06, 0x244e,
1862  0x182c, 0x301a, 0x3c3e, 0x0c08, 0x2450,
1863  0x192c, 0x311a, 0x3d3e, 0x0d08, 0x2550,
1864  0x1a2c, 0x321a, 0x3e3e, 0x0e08, 0x2650,
1865  0x1a2e, 0x321c, 0x3e40, 0x0e0a, 0x2652,
1866  0x192e, 0x311c, 0x3d40, 0x0d0a, 0x2552,
1867  0x182e, 0x301c, 0x3c40, 0x0c0a, 0x2452,
1868  0x1830, 0x301e, 0x3c42, 0x0c0c, 0x2454,
1869  0x1930, 0x311e, 0x3d42, 0x0d0c, 0x2554,
1870  0x1a30, 0x321e, 0x3e42, 0x0e0c, 0x2654,
1871  0x1a32, 0x3220, 0x3e44, 0x0e0e, 0x2656,
1872  0x1932, 0x3120, 0x3d44, 0x0d0e, 0x2556,
1873  0x1832, 0x3020, 0x3c44, 0x0c0e, 0x2456,
1874  0x1834, 0x3022, 0x3c46, 0x0c10, 0x2458,
1875  0x1934, 0x3122, 0x3d46, 0x0d10, 0x2558,
1876  0x1a34, 0x3222, 0x3e46, 0x0e10, 0x2658,
1877  0x1e24, 0x3612, 0x4236, 0x1200, 0x2a48,
1878  0x1f24, 0x3712, 0x4336, 0x1300, 0x2b48,
1879  0x2024, 0x3812, 0x4436, 0x1400, 0x2c48,
1880  0x2026, 0x3814, 0x4438, 0x1402, 0x2c4a,
1881  0x1f26, 0x3714, 0x4338, 0x1302, 0x2b4a,
1882  0x1e26, 0x3614, 0x4238, 0x1202, 0x2a4a,
1883  0x1e28, 0x3616, 0x423a, 0x1204, 0x2a4c,
1884  0x1f28, 0x3716, 0x433a, 0x1304, 0x2b4c,
1885  0x2028, 0x3816, 0x443a, 0x1404, 0x2c4c,
1886  0x202a, 0x3818, 0x443c, 0x1406, 0x2c4e,
1887  0x1f2a, 0x3718, 0x433c, 0x1306, 0x2b4e,
1888  0x1e2a, 0x3618, 0x423c, 0x1206, 0x2a4e,
1889  0x1e2c, 0x361a, 0x423e, 0x1208, 0x2a50,
1890  0x1f2c, 0x371a, 0x433e, 0x1308, 0x2b50,
1891  0x202c, 0x381a, 0x443e, 0x1408, 0x2c50,
1892  0x202e, 0x381c, 0x4440, 0x140a, 0x2c52,
1893  0x1f2e, 0x371c, 0x4340, 0x130a, 0x2b52,
1894  0x1e2e, 0x361c, 0x4240, 0x120a, 0x2a52,
1895  0x1e30, 0x361e, 0x4242, 0x120c, 0x2a54,
1896  0x1f30, 0x371e, 0x4342, 0x130c, 0x2b54,
1897  0x2030, 0x381e, 0x4442, 0x140c, 0x2c54,
1898  0x2032, 0x3820, 0x4444, 0x140e, 0x2c56,
1899  0x1f32, 0x3720, 0x4344, 0x130e, 0x2b56,
1900  0x1e32, 0x3620, 0x4244, 0x120e, 0x2a56,
1901  0x1e34, 0x3622, 0x4246, 0x1210, 0x2a58,
1902  0x1f34, 0x3722, 0x4346, 0x1310, 0x2b58,
1903  0x2034, 0x3822, 0x4446, 0x1410, 0x2c58,
1904  0x2424, 0x3c12, 0x0036, 0x1800, 0x3048,
1905  0x2524, 0x3d12, 0x0136, 0x1900, 0x3148,
1906  0x2624, 0x3e12, 0x0236, 0x1a00, 0x3248,
1907  0x2626, 0x3e14, 0x0238, 0x1a02, 0x324a,
1908  0x2526, 0x3d14, 0x0138, 0x1902, 0x314a,
1909  0x2426, 0x3c14, 0x0038, 0x1802, 0x304a,
1910  0x2428, 0x3c16, 0x003a, 0x1804, 0x304c,
1911  0x2528, 0x3d16, 0x013a, 0x1904, 0x314c,
1912  0x2628, 0x3e16, 0x023a, 0x1a04, 0x324c,
1913  0x262a, 0x3e18, 0x023c, 0x1a06, 0x324e,
1914  0x252a, 0x3d18, 0x013c, 0x1906, 0x314e,
1915  0x242a, 0x3c18, 0x003c, 0x1806, 0x304e,
1916  0x242c, 0x3c1a, 0x003e, 0x1808, 0x3050,
1917  0x252c, 0x3d1a, 0x013e, 0x1908, 0x3150,
1918  0x262c, 0x3e1a, 0x023e, 0x1a08, 0x3250,
1919  0x262e, 0x3e1c, 0x0240, 0x1a0a, 0x3252,
1920  0x252e, 0x3d1c, 0x0140, 0x190a, 0x3152,
1921  0x242e, 0x3c1c, 0x0040, 0x180a, 0x3052,
1922  0x2430, 0x3c1e, 0x0042, 0x180c, 0x3054,
1923  0x2530, 0x3d1e, 0x0142, 0x190c, 0x3154,
1924  0x2630, 0x3e1e, 0x0242, 0x1a0c, 0x3254,
1925  0x2632, 0x3e20, 0x0244, 0x1a0e, 0x3256,
1926  0x2532, 0x3d20, 0x0144, 0x190e, 0x3156,
1927  0x2432, 0x3c20, 0x0044, 0x180e, 0x3056,
1928  0x2434, 0x3c22, 0x0046, 0x1810, 0x3058,
1929  0x2534, 0x3d22, 0x0146, 0x1910, 0x3158,
1930  0x2634, 0x3e22, 0x0246, 0x1a10, 0x3258,
1931  0x2a24, 0x4212, 0x0636, 0x1e00, 0x3648,
1932  0x2b24, 0x4312, 0x0736, 0x1f00, 0x3748,
1933  0x2c24, 0x4412, 0x0836, 0x2000, 0x3848,
1934  0x2c26, 0x4414, 0x0838, 0x2002, 0x384a,
1935  0x2b26, 0x4314, 0x0738, 0x1f02, 0x374a,
1936  0x2a26, 0x4214, 0x0638, 0x1e02, 0x364a,
1937  0x2a28, 0x4216, 0x063a, 0x1e04, 0x364c,
1938  0x2b28, 0x4316, 0x073a, 0x1f04, 0x374c,
1939  0x2c28, 0x4416, 0x083a, 0x2004, 0x384c,
1940  0x2c2a, 0x4418, 0x083c, 0x2006, 0x384e,
1941  0x2b2a, 0x4318, 0x073c, 0x1f06, 0x374e,
1942  0x2a2a, 0x4218, 0x063c, 0x1e06, 0x364e,
1943  0x2a2c, 0x421a, 0x063e, 0x1e08, 0x3650,
1944  0x2b2c, 0x431a, 0x073e, 0x1f08, 0x3750,
1945  0x2c2c, 0x441a, 0x083e, 0x2008, 0x3850,
1946  0x2c2e, 0x441c, 0x0840, 0x200a, 0x3852,
1947  0x2b2e, 0x431c, 0x0740, 0x1f0a, 0x3752,
1948  0x2a2e, 0x421c, 0x0640, 0x1e0a, 0x3652,
1949  0x2a30, 0x421e, 0x0642, 0x1e0c, 0x3654,
1950  0x2b30, 0x431e, 0x0742, 0x1f0c, 0x3754,
1951  0x2c30, 0x441e, 0x0842, 0x200c, 0x3854,
1952  0x2c32, 0x4420, 0x0844, 0x200e, 0x3856,
1953  0x2b32, 0x4320, 0x0744, 0x1f0e, 0x3756,
1954  0x2a32, 0x4220, 0x0644, 0x1e0e, 0x3656,
1955  0x2a34, 0x4222, 0x0646, 0x1e10, 0x3658,
1956  0x2b34, 0x4322, 0x0746, 0x1f10, 0x3758,
1957  0x2c34, 0x4422, 0x0846, 0x2010, 0x3858,
1958  0x3024, 0x0012, 0x0c36, 0x2400, 0x3c48,
1959  0x3124, 0x0112, 0x0d36, 0x2500, 0x3d48,
1960  0x3224, 0x0212, 0x0e36, 0x2600, 0x3e48,
1961  0x3226, 0x0214, 0x0e38, 0x2602, 0x3e4a,
1962  0x3126, 0x0114, 0x0d38, 0x2502, 0x3d4a,
1963  0x3026, 0x0014, 0x0c38, 0x2402, 0x3c4a,
1964  0x3028, 0x0016, 0x0c3a, 0x2404, 0x3c4c,
1965  0x3128, 0x0116, 0x0d3a, 0x2504, 0x3d4c,
1966  0x3228, 0x0216, 0x0e3a, 0x2604, 0x3e4c,
1967  0x322a, 0x0218, 0x0e3c, 0x2606, 0x3e4e,
1968  0x312a, 0x0118, 0x0d3c, 0x2506, 0x3d4e,
1969  0x302a, 0x0018, 0x0c3c, 0x2406, 0x3c4e,
1970  0x302c, 0x001a, 0x0c3e, 0x2408, 0x3c50,
1971  0x312c, 0x011a, 0x0d3e, 0x2508, 0x3d50,
1972  0x322c, 0x021a, 0x0e3e, 0x2608, 0x3e50,
1973  0x322e, 0x021c, 0x0e40, 0x260a, 0x3e52,
1974  0x312e, 0x011c, 0x0d40, 0x250a, 0x3d52,
1975  0x302e, 0x001c, 0x0c40, 0x240a, 0x3c52,
1976  0x3030, 0x001e, 0x0c42, 0x240c, 0x3c54,
1977  0x3130, 0x011e, 0x0d42, 0x250c, 0x3d54,
1978  0x3230, 0x021e, 0x0e42, 0x260c, 0x3e54,
1979  0x3232, 0x0220, 0x0e44, 0x260e, 0x3e56,
1980  0x3132, 0x0120, 0x0d44, 0x250e, 0x3d56,
1981  0x3032, 0x0020, 0x0c44, 0x240e, 0x3c56,
1982  0x3034, 0x0022, 0x0c46, 0x2410, 0x3c58,
1983  0x3134, 0x0122, 0x0d46, 0x2510, 0x3d58,
1984  0x3234, 0x0222, 0x0e46, 0x2610, 0x3e58,
1985  0x3624, 0x0612, 0x1236, 0x2a00, 0x4248,
1986  0x3724, 0x0712, 0x1336, 0x2b00, 0x4348,
1987  0x3824, 0x0812, 0x1436, 0x2c00, 0x4448,
1988  0x3826, 0x0814, 0x1438, 0x2c02, 0x444a,
1989  0x3726, 0x0714, 0x1338, 0x2b02, 0x434a,
1990  0x3626, 0x0614, 0x1238, 0x2a02, 0x424a,
1991  0x3628, 0x0616, 0x123a, 0x2a04, 0x424c,
1992  0x3728, 0x0716, 0x133a, 0x2b04, 0x434c,
1993  0x3828, 0x0816, 0x143a, 0x2c04, 0x444c,
1994  0x382a, 0x0818, 0x143c, 0x2c06, 0x444e,
1995  0x372a, 0x0718, 0x133c, 0x2b06, 0x434e,
1996  0x362a, 0x0618, 0x123c, 0x2a06, 0x424e,
1997  0x362c, 0x061a, 0x123e, 0x2a08, 0x4250,
1998  0x372c, 0x071a, 0x133e, 0x2b08, 0x4350,
1999  0x382c, 0x081a, 0x143e, 0x2c08, 0x4450,
2000  0x382e, 0x081c, 0x1440, 0x2c0a, 0x4452,
2001  0x372e, 0x071c, 0x1340, 0x2b0a, 0x4352,
2002  0x362e, 0x061c, 0x1240, 0x2a0a, 0x4252,
2003  0x3630, 0x061e, 0x1242, 0x2a0c, 0x4254,
2004  0x3730, 0x071e, 0x1342, 0x2b0c, 0x4354,
2005  0x3830, 0x081e, 0x1442, 0x2c0c, 0x4454,
2006  0x3832, 0x0820, 0x1444, 0x2c0e, 0x4456,
2007  0x3732, 0x0720, 0x1344, 0x2b0e, 0x4356,
2008  0x3632, 0x0620, 0x1244, 0x2a0e, 0x4256,
2009  0x3634, 0x0622, 0x1246, 0x2a10, 0x4258,
2010  0x3734, 0x0722, 0x1346, 0x2b10, 0x4358,
2011  0x3834, 0x0822, 0x1446, 0x2c10, 0x4458,
2012  0x3c24, 0x0c12, 0x1836, 0x3000, 0x0048,
2013  0x3d24, 0x0d12, 0x1936, 0x3100, 0x0148,
2014  0x3e24, 0x0e12, 0x1a36, 0x3200, 0x0248,
2015  0x3e26, 0x0e14, 0x1a38, 0x3202, 0x024a,
2016  0x3d26, 0x0d14, 0x1938, 0x3102, 0x014a,
2017  0x3c26, 0x0c14, 0x1838, 0x3002, 0x004a,
2018  0x3c28, 0x0c16, 0x183a, 0x3004, 0x004c,
2019  0x3d28, 0x0d16, 0x193a, 0x3104, 0x014c,
2020  0x3e28, 0x0e16, 0x1a3a, 0x3204, 0x024c,
2021  0x3e2a, 0x0e18, 0x1a3c, 0x3206, 0x024e,
2022  0x3d2a, 0x0d18, 0x193c, 0x3106, 0x014e,
2023  0x3c2a, 0x0c18, 0x183c, 0x3006, 0x004e,
2024  0x3c2c, 0x0c1a, 0x183e, 0x3008, 0x0050,
2025  0x3d2c, 0x0d1a, 0x193e, 0x3108, 0x0150,
2026  0x3e2c, 0x0e1a, 0x1a3e, 0x3208, 0x0250,
2027  0x3e2e, 0x0e1c, 0x1a40, 0x320a, 0x0252,
2028  0x3d2e, 0x0d1c, 0x1940, 0x310a, 0x0152,
2029  0x3c2e, 0x0c1c, 0x1840, 0x300a, 0x0052,
2030  0x3c30, 0x0c1e, 0x1842, 0x300c, 0x0054,
2031  0x3d30, 0x0d1e, 0x1942, 0x310c, 0x0154,
2032  0x3e30, 0x0e1e, 0x1a42, 0x320c, 0x0254,
2033  0x3e32, 0x0e20, 0x1a44, 0x320e, 0x0256,
2034  0x3d32, 0x0d20, 0x1944, 0x310e, 0x0156,
2035  0x3c32, 0x0c20, 0x1844, 0x300e, 0x0056,
2036  0x3c34, 0x0c22, 0x1846, 0x3010, 0x0058,
2037  0x3d34, 0x0d22, 0x1946, 0x3110, 0x0158,
2038  0x3e34, 0x0e22, 0x1a46, 0x3210, 0x0258,
2039  0x4224, 0x1212, 0x1e36, 0x3600, 0x0648,
2040  0x4324, 0x1312, 0x1f36, 0x3700, 0x0748,
2041  0x4424, 0x1412, 0x2036, 0x3800, 0x0848,
2042  0x4426, 0x1414, 0x2038, 0x3802, 0x084a,
2043  0x4326, 0x1314, 0x1f38, 0x3702, 0x074a,
2044  0x4226, 0x1214, 0x1e38, 0x3602, 0x064a,
2045  0x4228, 0x1216, 0x1e3a, 0x3604, 0x064c,
2046  0x4328, 0x1316, 0x1f3a, 0x3704, 0x074c,
2047  0x4428, 0x1416, 0x203a, 0x3804, 0x084c,
2048  0x442a, 0x1418, 0x203c, 0x3806, 0x084e,
2049  0x432a, 0x1318, 0x1f3c, 0x3706, 0x074e,
2050  0x422a, 0x1218, 0x1e3c, 0x3606, 0x064e,
2051  0x422c, 0x121a, 0x1e3e, 0x3608, 0x0650,
2052  0x432c, 0x131a, 0x1f3e, 0x3708, 0x0750,
2053  0x442c, 0x141a, 0x203e, 0x3808, 0x0850,
2054  0x442e, 0x141c, 0x2040, 0x380a, 0x0852,
2055  0x432e, 0x131c, 0x1f40, 0x370a, 0x0752,
2056  0x422e, 0x121c, 0x1e40, 0x360a, 0x0652,
2057  0x4230, 0x121e, 0x1e42, 0x360c, 0x0654,
2058  0x4330, 0x131e, 0x1f42, 0x370c, 0x0754,
2059  0x4430, 0x141e, 0x2042, 0x380c, 0x0854,
2060  0x4432, 0x1420, 0x2044, 0x380e, 0x0856,
2061  0x4332, 0x1320, 0x1f44, 0x370e, 0x0756,
2062  0x4232, 0x1220, 0x1e44, 0x360e, 0x0656,
2063  0x4234, 0x1222, 0x1e46, 0x3610, 0x0658,
2064  0x4334, 0x1322, 0x1f46, 0x3710, 0x0758,
2065  0x4434, 0x1422, 0x2046, 0x3810, 0x0858,
2066  0x0024, 0x1812, 0x2436, 0x3c00, 0x0c48,
2067  0x0124, 0x1912, 0x2536, 0x3d00, 0x0d48,
2068  0x0224, 0x1a12, 0x2636, 0x3e00, 0x0e48,
2069  0x0226, 0x1a14, 0x2638, 0x3e02, 0x0e4a,
2070  0x0126, 0x1914, 0x2538, 0x3d02, 0x0d4a,
2071  0x0026, 0x1814, 0x2438, 0x3c02, 0x0c4a,
2072  0x0028, 0x1816, 0x243a, 0x3c04, 0x0c4c,
2073  0x0128, 0x1916, 0x253a, 0x3d04, 0x0d4c,
2074  0x0228, 0x1a16, 0x263a, 0x3e04, 0x0e4c,
2075  0x022a, 0x1a18, 0x263c, 0x3e06, 0x0e4e,
2076  0x012a, 0x1918, 0x253c, 0x3d06, 0x0d4e,
2077  0x002a, 0x1818, 0x243c, 0x3c06, 0x0c4e,
2078  0x002c, 0x181a, 0x243e, 0x3c08, 0x0c50,
2079  0x012c, 0x191a, 0x253e, 0x3d08, 0x0d50,
2080  0x022c, 0x1a1a, 0x263e, 0x3e08, 0x0e50,
2081  0x022e, 0x1a1c, 0x2640, 0x3e0a, 0x0e52,
2082  0x012e, 0x191c, 0x2540, 0x3d0a, 0x0d52,
2083  0x002e, 0x181c, 0x2440, 0x3c0a, 0x0c52,
2084  0x0030, 0x181e, 0x2442, 0x3c0c, 0x0c54,
2085  0x0130, 0x191e, 0x2542, 0x3d0c, 0x0d54,
2086  0x0230, 0x1a1e, 0x2642, 0x3e0c, 0x0e54,
2087  0x0232, 0x1a20, 0x2644, 0x3e0e, 0x0e56,
2088  0x0132, 0x1920, 0x2544, 0x3d0e, 0x0d56,
2089  0x0032, 0x1820, 0x2444, 0x3c0e, 0x0c56,
2090  0x0034, 0x1822, 0x2446, 0x3c10, 0x0c58,
2091  0x0134, 0x1922, 0x2546, 0x3d10, 0x0d58,
2092  0x0234, 0x1a22, 0x2646, 0x3e10, 0x0e58,
2093  0x0624, 0x1e12, 0x2a36, 0x4200, 0x1248,
2094  0x0724, 0x1f12, 0x2b36, 0x4300, 0x1348,
2095  0x0824, 0x2012, 0x2c36, 0x4400, 0x1448,
2096  0x0826, 0x2014, 0x2c38, 0x4402, 0x144a,
2097  0x0726, 0x1f14, 0x2b38, 0x4302, 0x134a,
2098  0x0626, 0x1e14, 0x2a38, 0x4202, 0x124a,
2099  0x0628, 0x1e16, 0x2a3a, 0x4204, 0x124c,
2100  0x0728, 0x1f16, 0x2b3a, 0x4304, 0x134c,
2101  0x0828, 0x2016, 0x2c3a, 0x4404, 0x144c,
2102  0x082a, 0x2018, 0x2c3c, 0x4406, 0x144e,
2103  0x072a, 0x1f18, 0x2b3c, 0x4306, 0x134e,
2104  0x062a, 0x1e18, 0x2a3c, 0x4206, 0x124e,
2105  0x062c, 0x1e1a, 0x2a3e, 0x4208, 0x1250,
2106  0x072c, 0x1f1a, 0x2b3e, 0x4308, 0x1350,
2107  0x082c, 0x201a, 0x2c3e, 0x4408, 0x1450,
2108  0x082e, 0x201c, 0x2c40, 0x440a, 0x1452,
2109  0x072e, 0x1f1c, 0x2b40, 0x430a, 0x1352,
2110  0x062e, 0x1e1c, 0x2a40, 0x420a, 0x1252,
2111  0x0630, 0x1e1e, 0x2a42, 0x420c, 0x1254,
2112  0x0730, 0x1f1e, 0x2b42, 0x430c, 0x1354,
2113  0x0830, 0x201e, 0x2c42, 0x440c, 0x1454,
2114  0x0832, 0x2020, 0x2c44, 0x440e, 0x1456,
2115  0x0732, 0x1f20, 0x2b44, 0x430e, 0x1356,
2116  0x0632, 0x1e20, 0x2a44, 0x420e, 0x1256,
2117  0x0634, 0x1e22, 0x2a46, 0x4210, 0x1258,
2118  0x0734, 0x1f22, 0x2b46, 0x4310, 0x1358,
2119  0x0834, 0x2022, 0x2c46, 0x4410, 0x1458,
2120  0x0f24, 0x2712, 0x3336, 0x0300, 0x1b48,
2121  0x1024, 0x2812, 0x3436, 0x0400, 0x1c48,
2122  0x1124, 0x2912, 0x3536, 0x0500, 0x1d48,
2123  0x1126, 0x2914, 0x3538, 0x0502, 0x1d4a,
2124  0x1026, 0x2814, 0x3438, 0x0402, 0x1c4a,
2125  0x0f26, 0x2714, 0x3338, 0x0302, 0x1b4a,
2126  0x0f28, 0x2716, 0x333a, 0x0304, 0x1b4c,
2127  0x1028, 0x2816, 0x343a, 0x0404, 0x1c4c,
2128  0x1128, 0x2916, 0x353a, 0x0504, 0x1d4c,
2129  0x112a, 0x2918, 0x353c, 0x0506, 0x1d4e,
2130  0x102a, 0x2818, 0x343c, 0x0406, 0x1c4e,
2131  0x0f2a, 0x2718, 0x333c, 0x0306, 0x1b4e,
2132  0x0f2c, 0x271a, 0x333e, 0x0308, 0x1b50,
2133  0x102c, 0x281a, 0x343e, 0x0408, 0x1c50,
2134  0x112c, 0x291a, 0x353e, 0x0508, 0x1d50,
2135  0x112e, 0x291c, 0x3540, 0x050a, 0x1d52,
2136  0x102e, 0x281c, 0x3440, 0x040a, 0x1c52,
2137  0x0f2e, 0x271c, 0x3340, 0x030a, 0x1b52,
2138  0x0f30, 0x271e, 0x3342, 0x030c, 0x1b54,
2139  0x1030, 0x281e, 0x3442, 0x040c, 0x1c54,
2140  0x1130, 0x291e, 0x3542, 0x050c, 0x1d54,
2141  0x1132, 0x2920, 0x3544, 0x050e, 0x1d56,
2142  0x1032, 0x2820, 0x3444, 0x040e, 0x1c56,
2143  0x0f32, 0x2720, 0x3344, 0x030e, 0x1b56,
2144  0x0f34, 0x2722, 0x3346, 0x0310, 0x1b58,
2145  0x1034, 0x2822, 0x3446, 0x0410, 0x1c58,
2146  0x1134, 0x2922, 0x3546, 0x0510, 0x1d58,
2147  0x1524, 0x2d12, 0x3936, 0x0900, 0x2148,
2148  0x1624, 0x2e12, 0x3a36, 0x0a00, 0x2248,
2149  0x1724, 0x2f12, 0x3b36, 0x0b00, 0x2348,
2150  0x1726, 0x2f14, 0x3b38, 0x0b02, 0x234a,
2151  0x1626, 0x2e14, 0x3a38, 0x0a02, 0x224a,
2152  0x1526, 0x2d14, 0x3938, 0x0902, 0x214a,
2153  0x1528, 0x2d16, 0x393a, 0x0904, 0x214c,
2154  0x1628, 0x2e16, 0x3a3a, 0x0a04, 0x224c,
2155  0x1728, 0x2f16, 0x3b3a, 0x0b04, 0x234c,
2156  0x172a, 0x2f18, 0x3b3c, 0x0b06, 0x234e,
2157  0x162a, 0x2e18, 0x3a3c, 0x0a06, 0x224e,
2158  0x152a, 0x2d18, 0x393c, 0x0906, 0x214e,
2159  0x152c, 0x2d1a, 0x393e, 0x0908, 0x2150,
2160  0x162c, 0x2e1a, 0x3a3e, 0x0a08, 0x2250,
2161  0x172c, 0x2f1a, 0x3b3e, 0x0b08, 0x2350,
2162  0x172e, 0x2f1c, 0x3b40, 0x0b0a, 0x2352,
2163  0x162e, 0x2e1c, 0x3a40, 0x0a0a, 0x2252,
2164  0x152e, 0x2d1c, 0x3940, 0x090a, 0x2152,
2165  0x1530, 0x2d1e, 0x3942, 0x090c, 0x2154,
2166  0x1630, 0x2e1e, 0x3a42, 0x0a0c, 0x2254,
2167  0x1730, 0x2f1e, 0x3b42, 0x0b0c, 0x2354,
2168  0x1732, 0x2f20, 0x3b44, 0x0b0e, 0x2356,
2169  0x1632, 0x2e20, 0x3a44, 0x0a0e, 0x2256,
2170  0x1532, 0x2d20, 0x3944, 0x090e, 0x2156,
2171  0x1534, 0x2d22, 0x3946, 0x0910, 0x2158,
2172  0x1634, 0x2e22, 0x3a46, 0x0a10, 0x2258,
2173  0x1734, 0x2f22, 0x3b46, 0x0b10, 0x2358,
2174  0x1b24, 0x3312, 0x3f36, 0x0f00, 0x2748,
2175  0x1c24, 0x3412, 0x4036, 0x1000, 0x2848,
2176  0x1d24, 0x3512, 0x4136, 0x1100, 0x2948,
2177  0x1d26, 0x3514, 0x4138, 0x1102, 0x294a,
2178  0x1c26, 0x3414, 0x4038, 0x1002, 0x284a,
2179  0x1b26, 0x3314, 0x3f38, 0x0f02, 0x274a,
2180  0x1b28, 0x3316, 0x3f3a, 0x0f04, 0x274c,
2181  0x1c28, 0x3416, 0x403a, 0x1004, 0x284c,
2182  0x1d28, 0x3516, 0x413a, 0x1104, 0x294c,
2183  0x1d2a, 0x3518, 0x413c, 0x1106, 0x294e,
2184  0x1c2a, 0x3418, 0x403c, 0x1006, 0x284e,
2185  0x1b2a, 0x3318, 0x3f3c, 0x0f06, 0x274e,
2186  0x1b2c, 0x331a, 0x3f3e, 0x0f08, 0x2750,
2187  0x1c2c, 0x341a, 0x403e, 0x1008, 0x2850,
2188  0x1d2c, 0x351a, 0x413e, 0x1108, 0x2950,
2189  0x1d2e, 0x351c, 0x4140, 0x110a, 0x2952,
2190  0x1c2e, 0x341c, 0x4040, 0x100a, 0x2852,
2191  0x1b2e, 0x331c, 0x3f40, 0x0f0a, 0x2752,
2192  0x1b30, 0x331e, 0x3f42, 0x0f0c, 0x2754,
2193  0x1c30, 0x341e, 0x4042, 0x100c, 0x2854,
2194  0x1d30, 0x351e, 0x4142, 0x110c, 0x2954,
2195  0x1d32, 0x3520, 0x4144, 0x110e, 0x2956,
2196  0x1c32, 0x3420, 0x4044, 0x100e, 0x2856,
2197  0x1b32, 0x3320, 0x3f44, 0x0f0e, 0x2756,
2198  0x1b34, 0x3322, 0x3f46, 0x0f10, 0x2758,
2199  0x1c34, 0x3422, 0x4046, 0x1010, 0x2858,
2200  0x1d34, 0x3522, 0x4146, 0x1110, 0x2958,
2201  0x2124, 0x3912, 0x4536, 0x1500, 0x2d48,
2202  0x2224, 0x3a12, 0x4636, 0x1600, 0x2e48,
2203  0x2324, 0x3b12, 0x4736, 0x1700, 0x2f48,
2204  0x2326, 0x3b14, 0x4738, 0x1702, 0x2f4a,
2205  0x2226, 0x3a14, 0x4638, 0x1602, 0x2e4a,
2206  0x2126, 0x3914, 0x4538, 0x1502, 0x2d4a,
2207  0x2128, 0x3916, 0x453a, 0x1504, 0x2d4c,
2208  0x2228, 0x3a16, 0x463a, 0x1604, 0x2e4c,
2209  0x2328, 0x3b16, 0x473a, 0x1704, 0x2f4c,
2210  0x232a, 0x3b18, 0x473c, 0x1706, 0x2f4e,
2211  0x222a, 0x3a18, 0x463c, 0x1606, 0x2e4e,
2212  0x212a, 0x3918, 0x453c, 0x1506, 0x2d4e,
2213  0x212c, 0x391a, 0x453e, 0x1508, 0x2d50,
2214  0x222c, 0x3a1a, 0x463e, 0x1608, 0x2e50,
2215  0x232c, 0x3b1a, 0x473e, 0x1708, 0x2f50,
2216  0x232e, 0x3b1c, 0x4740, 0x170a, 0x2f52,
2217  0x222e, 0x3a1c, 0x4640, 0x160a, 0x2e52,
2218  0x212e, 0x391c, 0x4540, 0x150a, 0x2d52,
2219  0x2130, 0x391e, 0x4542, 0x150c, 0x2d54,
2220  0x2230, 0x3a1e, 0x4642, 0x160c, 0x2e54,
2221  0x2330, 0x3b1e, 0x4742, 0x170c, 0x2f54,
2222  0x2332, 0x3b20, 0x4744, 0x170e, 0x2f56,
2223  0x2232, 0x3a20, 0x4644, 0x160e, 0x2e56,
2224  0x2132, 0x3920, 0x4544, 0x150e, 0x2d56,
2225  0x2134, 0x3922, 0x4546, 0x1510, 0x2d58,
2226  0x2234, 0x3a22, 0x4646, 0x1610, 0x2e58,
2227  0x2334, 0x3b22, 0x4746, 0x1710, 0x2f58,
2228  0x2724, 0x3f12, 0x0336, 0x1b00, 0x3348,
2229  0x2824, 0x4012, 0x0436, 0x1c00, 0x3448,
2230  0x2924, 0x4112, 0x0536, 0x1d00, 0x3548,
2231  0x2926, 0x4114, 0x0538, 0x1d02, 0x354a,
2232  0x2826, 0x4014, 0x0438, 0x1c02, 0x344a,
2233  0x2726, 0x3f14, 0x0338, 0x1b02, 0x334a,
2234  0x2728, 0x3f16, 0x033a, 0x1b04, 0x334c,
2235  0x2828, 0x4016, 0x043a, 0x1c04, 0x344c,
2236  0x2928, 0x4116, 0x053a, 0x1d04, 0x354c,
2237  0x292a, 0x4118, 0x053c, 0x1d06, 0x354e,
2238  0x282a, 0x4018, 0x043c, 0x1c06, 0x344e,
2239  0x272a, 0x3f18, 0x033c, 0x1b06, 0x334e,
2240  0x272c, 0x3f1a, 0x033e, 0x1b08, 0x3350,
2241  0x282c, 0x401a, 0x043e, 0x1c08, 0x3450,
2242  0x292c, 0x411a, 0x053e, 0x1d08, 0x3550,
2243  0x292e, 0x411c, 0x0540, 0x1d0a, 0x3552,
2244  0x282e, 0x401c, 0x0440, 0x1c0a, 0x3452,
2245  0x272e, 0x3f1c, 0x0340, 0x1b0a, 0x3352,
2246  0x2730, 0x3f1e, 0x0342, 0x1b0c, 0x3354,
2247  0x2830, 0x401e, 0x0442, 0x1c0c, 0x3454,
2248  0x2930, 0x411e, 0x0542, 0x1d0c, 0x3554,
2249  0x2932, 0x4120, 0x0544, 0x1d0e, 0x3556,
2250  0x2832, 0x4020, 0x0444, 0x1c0e, 0x3456,
2251  0x2732, 0x3f20, 0x0344, 0x1b0e, 0x3356,
2252  0x2734, 0x3f22, 0x0346, 0x1b10, 0x3358,
2253  0x2834, 0x4022, 0x0446, 0x1c10, 0x3458,
2254  0x2934, 0x4122, 0x0546, 0x1d10, 0x3558,
2255  0x2d24, 0x4512, 0x0936, 0x2100, 0x3948,
2256  0x2e24, 0x4612, 0x0a36, 0x2200, 0x3a48,
2257  0x2f24, 0x4712, 0x0b36, 0x2300, 0x3b48,
2258  0x2f26, 0x4714, 0x0b38, 0x2302, 0x3b4a,
2259  0x2e26, 0x4614, 0x0a38, 0x2202, 0x3a4a,
2260  0x2d26, 0x4514, 0x0938, 0x2102, 0x394a,
2261  0x2d28, 0x4516, 0x093a, 0x2104, 0x394c,
2262  0x2e28, 0x4616, 0x0a3a, 0x2204, 0x3a4c,
2263  0x2f28, 0x4716, 0x0b3a, 0x2304, 0x3b4c,
2264  0x2f2a, 0x4718, 0x0b3c, 0x2306, 0x3b4e,
2265  0x2e2a, 0x4618, 0x0a3c, 0x2206, 0x3a4e,
2266  0x2d2a, 0x4518, 0x093c, 0x2106, 0x394e,
2267  0x2d2c, 0x451a, 0x093e, 0x2108, 0x3950,
2268  0x2e2c, 0x461a, 0x0a3e, 0x2208, 0x3a50,
2269  0x2f2c, 0x471a, 0x0b3e, 0x2308, 0x3b50,
2270  0x2f2e, 0x471c, 0x0b40, 0x230a, 0x3b52,
2271  0x2e2e, 0x461c, 0x0a40, 0x220a, 0x3a52,
2272  0x2d2e, 0x451c, 0x0940, 0x210a, 0x3952,
2273  0x2d30, 0x451e, 0x0942, 0x210c, 0x3954,
2274  0x2e30, 0x461e, 0x0a42, 0x220c, 0x3a54,
2275  0x2f30, 0x471e, 0x0b42, 0x230c, 0x3b54,
2276  0x2f32, 0x4720, 0x0b44, 0x230e, 0x3b56,
2277  0x2e32, 0x4620, 0x0a44, 0x220e, 0x3a56,
2278  0x2d32, 0x4520, 0x0944, 0x210e, 0x3956,
2279  0x2d34, 0x4522, 0x0946, 0x2110, 0x3958,
2280  0x2e34, 0x4622, 0x0a46, 0x2210, 0x3a58,
2281  0x2f34, 0x4722, 0x0b46, 0x2310, 0x3b58,
2282  0x3324, 0x0312, 0x0f36, 0x2700, 0x3f48,
2283  0x3424, 0x0412, 0x1036, 0x2800, 0x4048,
2284  0x3524, 0x0512, 0x1136, 0x2900, 0x4148,
2285  0x3526, 0x0514, 0x1138, 0x2902, 0x414a,
2286  0x3426, 0x0414, 0x1038, 0x2802, 0x404a,
2287  0x3326, 0x0314, 0x0f38, 0x2702, 0x3f4a,
2288  0x3328, 0x0316, 0x0f3a, 0x2704, 0x3f4c,
2289  0x3428, 0x0416, 0x103a, 0x2804, 0x404c,
2290  0x3528, 0x0516, 0x113a, 0x2904, 0x414c,
2291  0x352a, 0x0518, 0x113c, 0x2906, 0x414e,
2292  0x342a, 0x0418, 0x103c, 0x2806, 0x404e,
2293  0x332a, 0x0318, 0x0f3c, 0x2706, 0x3f4e,
2294  0x332c, 0x031a, 0x0f3e, 0x2708, 0x3f50,
2295  0x342c, 0x041a, 0x103e, 0x2808, 0x4050,
2296  0x352c, 0x051a, 0x113e, 0x2908, 0x4150,
2297  0x352e, 0x051c, 0x1140, 0x290a, 0x4152,
2298  0x342e, 0x041c, 0x1040, 0x280a, 0x4052,
2299  0x332e, 0x031c, 0x0f40, 0x270a, 0x3f52,
2300  0x3330, 0x031e, 0x0f42, 0x270c, 0x3f54,
2301  0x3430, 0x041e, 0x1042, 0x280c, 0x4054,
2302  0x3530, 0x051e, 0x1142, 0x290c, 0x4154,
2303  0x3532, 0x0520, 0x1144, 0x290e, 0x4156,
2304  0x3432, 0x0420, 0x1044, 0x280e, 0x4056,
2305  0x3332, 0x0320, 0x0f44, 0x270e, 0x3f56,
2306  0x3334, 0x0322, 0x0f46, 0x2710, 0x3f58,
2307  0x3434, 0x0422, 0x1046, 0x2810, 0x4058,
2308  0x3534, 0x0522, 0x1146, 0x2910, 0x4158,
2309  0x3924, 0x0912, 0x1536, 0x2d00, 0x4548,
2310  0x3a24, 0x0a12, 0x1636, 0x2e00, 0x4648,
2311  0x3b24, 0x0b12, 0x1736, 0x2f00, 0x4748,
2312  0x3b26, 0x0b14, 0x1738, 0x2f02, 0x474a,
2313  0x3a26, 0x0a14, 0x1638, 0x2e02, 0x464a,
2314  0x3926, 0x0914, 0x1538, 0x2d02, 0x454a,
2315  0x3928, 0x0916, 0x153a, 0x2d04, 0x454c,
2316  0x3a28, 0x0a16, 0x163a, 0x2e04, 0x464c,
2317  0x3b28, 0x0b16, 0x173a, 0x2f04, 0x474c,
2318  0x3b2a, 0x0b18, 0x173c, 0x2f06, 0x474e,
2319  0x3a2a, 0x0a18, 0x163c, 0x2e06, 0x464e,
2320  0x392a, 0x0918, 0x153c, 0x2d06, 0x454e,
2321  0x392c, 0x091a, 0x153e, 0x2d08, 0x4550,
2322  0x3a2c, 0x0a1a, 0x163e, 0x2e08, 0x4650,
2323  0x3b2c, 0x0b1a, 0x173e, 0x2f08, 0x4750,
2324  0x3b2e, 0x0b1c, 0x1740, 0x2f0a, 0x4752,
2325  0x3a2e, 0x0a1c, 0x1640, 0x2e0a, 0x4652,
2326  0x392e, 0x091c, 0x1540, 0x2d0a, 0x4552,
2327  0x3930, 0x091e, 0x1542, 0x2d0c, 0x4554,
2328  0x3a30, 0x0a1e, 0x1642, 0x2e0c, 0x4654,
2329  0x3b30, 0x0b1e, 0x1742, 0x2f0c, 0x4754,
2330  0x3b32, 0x0b20, 0x1744, 0x2f0e, 0x4756,
2331  0x3a32, 0x0a20, 0x1644, 0x2e0e, 0x4656,
2332  0x3932, 0x0920, 0x1544, 0x2d0e, 0x4556,
2333  0x3934, 0x0922, 0x1546, 0x2d10, 0x4558,
2334  0x3a34, 0x0a22, 0x1646, 0x2e10, 0x4658,
2335  0x3b34, 0x0b22, 0x1746, 0x2f10, 0x4758,
2336  0x3f24, 0x0f12, 0x1b36, 0x3300, 0x0348,
2337  0x4024, 0x1012, 0x1c36, 0x3400, 0x0448,
2338  0x4124, 0x1112, 0x1d36, 0x3500, 0x0548,
2339  0x4126, 0x1114, 0x1d38, 0x3502, 0x054a,
2340  0x4026, 0x1014, 0x1c38, 0x3402, 0x044a,
2341  0x3f26, 0x0f14, 0x1b38, 0x3302, 0x034a,
2342  0x3f28, 0x0f16, 0x1b3a, 0x3304, 0x034c,
2343  0x4028, 0x1016, 0x1c3a, 0x3404, 0x044c,
2344  0x4128, 0x1116, 0x1d3a, 0x3504, 0x054c,
2345  0x412a, 0x1118, 0x1d3c, 0x3506, 0x054e,
2346  0x402a, 0x1018, 0x1c3c, 0x3406, 0x044e,
2347  0x3f2a, 0x0f18, 0x1b3c, 0x3306, 0x034e,
2348  0x3f2c, 0x0f1a, 0x1b3e, 0x3308, 0x0350,
2349  0x402c, 0x101a, 0x1c3e, 0x3408, 0x0450,
2350  0x412c, 0x111a, 0x1d3e, 0x3508, 0x0550,
2351  0x412e, 0x111c, 0x1d40, 0x350a, 0x0552,
2352  0x402e, 0x101c, 0x1c40, 0x340a, 0x0452,
2353  0x3f2e, 0x0f1c, 0x1b40, 0x330a, 0x0352,
2354  0x3f30, 0x0f1e, 0x1b42, 0x330c, 0x0354,
2355  0x4030, 0x101e, 0x1c42, 0x340c, 0x0454,
2356  0x4130, 0x111e, 0x1d42, 0x350c, 0x0554,
2357  0x4132, 0x1120, 0x1d44, 0x350e, 0x0556,
2358  0x4032, 0x1020, 0x1c44, 0x340e, 0x0456,
2359  0x3f32, 0x0f20, 0x1b44, 0x330e, 0x0356,
2360  0x3f34, 0x0f22, 0x1b46, 0x3310, 0x0358,
2361  0x4034, 0x1022, 0x1c46, 0x3410, 0x0458,
2362  0x4134, 0x1122, 0x1d46, 0x3510, 0x0558,
2363  0x4524, 0x1512, 0x2136, 0x3900, 0x0948,
2364  0x4624, 0x1612, 0x2236, 0x3a00, 0x0a48,
2365  0x4724, 0x1712, 0x2336, 0x3b00, 0x0b48,
2366  0x4726, 0x1714, 0x2338, 0x3b02, 0x0b4a,
2367  0x4626, 0x1614, 0x2238, 0x3a02, 0x0a4a,
2368  0x4526, 0x1514, 0x2138, 0x3902, 0x094a,
2369  0x4528, 0x1516, 0x213a, 0x3904, 0x094c,
2370  0x4628, 0x1616, 0x223a, 0x3a04, 0x0a4c,
2371  0x4728, 0x1716, 0x233a, 0x3b04, 0x0b4c,
2372  0x472a, 0x1718, 0x233c, 0x3b06, 0x0b4e,
2373  0x462a, 0x1618, 0x223c, 0x3a06, 0x0a4e,
2374  0x452a, 0x1518, 0x213c, 0x3906, 0x094e,
2375  0x452c, 0x151a, 0x213e, 0x3908, 0x0950,
2376  0x462c, 0x161a, 0x223e, 0x3a08, 0x0a50,
2377  0x472c, 0x171a, 0x233e, 0x3b08, 0x0b50,
2378  0x472e, 0x171c, 0x2340, 0x3b0a, 0x0b52,
2379  0x462e, 0x161c, 0x2240, 0x3a0a, 0x0a52,
2380  0x452e, 0x151c, 0x2140, 0x390a, 0x0952,
2381  0x4530, 0x151e, 0x2142, 0x390c, 0x0954,
2382  0x4630, 0x161e, 0x2242, 0x3a0c, 0x0a54,
2383  0x4730, 0x171e, 0x2342, 0x3b0c, 0x0b54,
2384  0x4732, 0x1720, 0x2344, 0x3b0e, 0x0b56,
2385  0x4632, 0x1620, 0x2244, 0x3a0e, 0x0a56,
2386  0x4532, 0x1520, 0x2144, 0x390e, 0x0956,
2387  0x4534, 0x1522, 0x2146, 0x3910, 0x0958,
2388  0x4634, 0x1622, 0x2246, 0x3a10, 0x0a58,
2389  0x4734, 0x1722, 0x2346, 0x3b10, 0x0b58,
2390  0x0324, 0x1b12, 0x2736, 0x3f00, 0x0f48,
2391  0x0424, 0x1c12, 0x2836, 0x4000, 0x1048,
2392  0x0524, 0x1d12, 0x2936, 0x4100, 0x1148,
2393  0x0526, 0x1d14, 0x2938, 0x4102, 0x114a,
2394  0x0426, 0x1c14, 0x2838, 0x4002, 0x104a,
2395  0x0326, 0x1b14, 0x2738, 0x3f02, 0x0f4a,
2396  0x0328, 0x1b16, 0x273a, 0x3f04, 0x0f4c,
2397  0x0428, 0x1c16, 0x283a, 0x4004, 0x104c,
2398  0x0528, 0x1d16, 0x293a, 0x4104, 0x114c,
2399  0x052a, 0x1d18, 0x293c, 0x4106, 0x114e,
2400  0x042a, 0x1c18, 0x283c, 0x4006, 0x104e,
2401  0x032a, 0x1b18, 0x273c, 0x3f06, 0x0f4e,
2402  0x032c, 0x1b1a, 0x273e, 0x3f08, 0x0f50,
2403  0x042c, 0x1c1a, 0x283e, 0x4008, 0x1050,
2404  0x052c, 0x1d1a, 0x293e, 0x4108, 0x1150,
2405  0x052e, 0x1d1c, 0x2940, 0x410a, 0x1152,
2406  0x042e, 0x1c1c, 0x2840, 0x400a, 0x1052,
2407  0x032e, 0x1b1c, 0x2740, 0x3f0a, 0x0f52,
2408  0x0330, 0x1b1e, 0x2742, 0x3f0c, 0x0f54,
2409  0x0430, 0x1c1e, 0x2842, 0x400c, 0x1054,
2410  0x0530, 0x1d1e, 0x2942, 0x410c, 0x1154,
2411  0x0532, 0x1d20, 0x2944, 0x410e, 0x1156,
2412  0x0432, 0x1c20, 0x2844, 0x400e, 0x1056,
2413  0x0332, 0x1b20, 0x2744, 0x3f0e, 0x0f56,
2414  0x0334, 0x1b22, 0x2746, 0x3f10, 0x0f58,
2415  0x0434, 0x1c22, 0x2846, 0x4010, 0x1058,
2416  0x0534, 0x1d22, 0x2946, 0x4110, 0x1158,
2417  0x0924, 0x2112, 0x2d36, 0x4500, 0x1548,
2418  0x0a24, 0x2212, 0x2e36, 0x4600, 0x1648,
2419  0x0b24, 0x2312, 0x2f36, 0x4700, 0x1748,
2420  0x0b26, 0x2314, 0x2f38, 0x4702, 0x174a,
2421  0x0a26, 0x2214, 0x2e38, 0x4602, 0x164a,
2422  0x0926, 0x2114, 0x2d38, 0x4502, 0x154a,
2423  0x0928, 0x2116, 0x2d3a, 0x4504, 0x154c,
2424  0x0a28, 0x2216, 0x2e3a, 0x4604, 0x164c,
2425  0x0b28, 0x2316, 0x2f3a, 0x4704, 0x174c,
2426  0x0b2a, 0x2318, 0x2f3c, 0x4706, 0x174e,
2427  0x0a2a, 0x2218, 0x2e3c, 0x4606, 0x164e,
2428  0x092a, 0x2118, 0x2d3c, 0x4506, 0x154e,
2429  0x092c, 0x211a, 0x2d3e, 0x4508, 0x1550,
2430  0x0a2c, 0x221a, 0x2e3e, 0x4608, 0x1650,
2431  0x0b2c, 0x231a, 0x2f3e, 0x4708, 0x1750,
2432  0x0b2e, 0x231c, 0x2f40, 0x470a, 0x1752,
2433  0x0a2e, 0x221c, 0x2e40, 0x460a, 0x1652,
2434  0x092e, 0x211c, 0x2d40, 0x450a, 0x1552,
2435  0x0930, 0x211e, 0x2d42, 0x450c, 0x1554,
2436  0x0a30, 0x221e, 0x2e42, 0x460c, 0x1654,
2437  0x0b30, 0x231e, 0x2f42, 0x470c, 0x1754,
2438  0x0b32, 0x2320, 0x2f44, 0x470e, 0x1756,
2439  0x0a32, 0x2220, 0x2e44, 0x460e, 0x1656,
2440  0x0932, 0x2120, 0x2d44, 0x450e, 0x1556,
2441  0x0934, 0x2122, 0x2d46, 0x4510, 0x1558,
2442  0x0a34, 0x2222, 0x2e46, 0x4610, 0x1658,
2443  0x0b34, 0x2322, 0x2f46, 0x4710, 0x1758,
2444 };
2445
2446 /* DV25/50 DCT coefficient weights and inverse weights */
2447 /* created by dvtables.py */
2448 static const int dv_weight_bits = 18;
2449 static const int dv_weight_88[64] = {
2450  131072, 257107, 257107, 242189, 252167, 242189, 235923, 237536,
2451  237536, 235923, 229376, 231390, 223754, 231390, 229376, 222935,
2452  224969, 217965, 217965, 224969, 222935, 200636, 218652, 211916,
2453  212325, 211916, 218652, 200636, 188995, 196781, 205965, 206433,
2454  206433, 205965, 196781, 188995, 185364, 185364, 200636, 200704,
2455  200636, 185364, 185364, 174609, 180568, 195068, 195068, 180568,
2456  174609, 170091, 175557, 189591, 175557, 170091, 165371, 170627,
2457  170627, 165371, 160727, 153560, 160727, 144651, 144651, 136258,
2458 };
2459 static const int dv_weight_248[64] = {
2460  131072, 242189, 257107, 237536, 229376, 200636, 242189, 223754,
2461  224969, 196781, 262144, 242189, 229376, 200636, 257107, 237536,
2462  211916, 185364, 235923, 217965, 229376, 211916, 206433, 180568,
2463  242189, 223754, 224969, 196781, 211916, 185364, 235923, 217965,
2464  200704, 175557, 222935, 205965, 200636, 185364, 195068, 170627,
2465  229376, 211916, 206433, 180568, 200704, 175557, 222935, 205965,
2466  175557, 153560, 188995, 174609, 165371, 144651, 200636, 185364,
2467  195068, 170627, 175557, 153560, 188995, 174609, 165371, 144651,
2468 };
2469 static const int dv_iweight_bits = 14;
2470 static const int dv_iweight_88[64] = {
2471  32768, 16710, 16710, 17735, 17015, 17735, 18197, 18079,
2472  18079, 18197, 18725, 18559, 19196, 18559, 18725, 19284,
2473  19108, 19692, 19692, 19108, 19284, 21400, 19645, 20262,
2474  20214, 20262, 19645, 21400, 22733, 21845, 20867, 20815,
2475  20815, 20867, 21845, 22733, 23173, 23173, 21400, 21400,
2476  21400, 23173, 23173, 24600, 23764, 22017, 22017, 23764,
2477  24600, 25267, 24457, 22672, 24457, 25267, 25971, 25191,
2478  25191, 25971, 26715, 27962, 26715, 29642, 29642, 31536,
2479 };
2480 static const int dv_iweight_248[64] = {
2481  32768, 17735, 16710, 18079, 18725, 21400, 17735, 19196,
2482  19108, 21845, 16384, 17735, 18725, 21400, 16710, 18079,
2483  20262, 23173, 18197, 19692, 18725, 20262, 20815, 23764,
2484  17735, 19196, 19108, 21845, 20262, 23173, 18197, 19692,
2485  21400, 24457, 19284, 20867, 21400, 23173, 22017, 25191,
2486  18725, 20262, 20815, 23764, 21400, 24457, 19284, 20867,
2487  24457, 27962, 22733, 24600, 25971, 29642, 21400, 23173,
2488  22017, 25191, 24457, 27962, 22733, 24600, 25971, 29642,
2489 };
2490
2491 static const uint8_t dv_audio_shuffle525[10][9] = {
2492   {  0, 30, 60, 20, 50, 80, 10, 40, 70 }, /* 1st channel */
2493   {  6, 36, 66, 26, 56, 86, 16, 46, 76 },
2494   { 12, 42, 72,  2, 32, 62, 22, 52, 82 },
2495   { 18, 48, 78,  8, 38, 68, 28, 58, 88 },
2496   { 24, 54, 84, 14, 44, 74,  4, 34, 64 },
2497
2498   {  1, 31, 61, 21, 51, 81, 11, 41, 71 }, /* 2nd channel */
2499   {  7, 37, 67, 27, 57, 87, 17, 47, 77 },
2500   { 13, 43, 73,  3, 33, 63, 23, 53, 83 },
2501   { 19, 49, 79,  9, 39, 69, 29, 59, 89 },
2502   { 25, 55, 85, 15, 45, 75,  5, 35, 65 },
2503 };
2504
2505 static const uint8_t dv_audio_shuffle625[12][9] = {
2506   {   0,  36,  72,  26,  62,  98,  16,  52,  88}, /* 1st channel */
2507   {   6,  42,  78,  32,  68, 104,  22,  58,  94},
2508   {  12,  48,  84,   2,  38,  74,  28,  64, 100},
2509   {  18,  54,  90,   8,  44,  80,  34,  70, 106},
2510   {  24,  60,  96,  14,  50,  86,   4,  40,  76},
2511   {  30,  66, 102,  20,  56,  92,  10,  46,  82},
2512
2513   {   1,  37,  73,  27,  63,  99,  17,  53,  89}, /* 2nd channel */
2514   {   7,  43,  79,  33,  69, 105,  23,  59,  95},
2515   {  13,  49,  85,   3,  39,  75,  29,  65, 101},
2516   {  19,  55,  91,   9,  45,  81,  35,  71, 107},
2517   {  25,  61,  97,  15,  51,  87,   5,  41,  77},
2518   {  31,  67, 103,  21,  57,  93,  11,  47,  83},
2519 };
2520
2521 static const av_unused int dv_audio_frequency[3] = {
2522     48000, 44100, 32000,
2523 };
2524
2525 /* macroblock bit budgets */
2526 static const uint8_t block_sizes_dv2550[8] = {
2527     112, 112, 112, 112, 80, 80, 0, 0,
2528 };
2529
2530 static const uint8_t block_sizes_dv100[8] = {
2531     80, 80, 80, 80, 80, 80, 64, 64,
2532 };
2533
2534 static const DVprofile dv_profiles[] = {
2535     { .dsf = 0,
2536       .frame_size = 120000,        /* IEC 61834, SMPTE-314M - 525/60 (NTSC) */
2537       .difseg_size = 10,
2538       .n_difchan = 1,
2539       .frame_rate = 30000,
2540       .ltc_divisor = 30,
2541       .frame_rate_base = 1001,
2542       .height = 480,
2543       .width = 720,
2544       .sar = {{10, 11}, {40, 33}},
2545       .video_place = dv_place_411,
2546       .pix_fmt = PIX_FMT_YUV411P,
2547       .bpm = 6,
2548       .block_sizes = block_sizes_dv2550,
2549       .audio_stride = 90,
2550       .audio_min_samples = { 1580, 1452, 1053 }, /* for 48, 44.1 and 32Khz */
2551       .audio_samples_dist = { 1600, 1602, 1602, 1602, 1602 }, /* per SMPTE-314M */
2552       .audio_shuffle = dv_audio_shuffle525,
2553     },
2554     { .dsf = 1,
2555       .frame_size = 144000,        /* IEC 61834 - 625/50 (PAL) */
2556       .difseg_size = 12,
2557       .n_difchan = 1,
2558       .frame_rate = 25,
2559       .frame_rate_base = 1,
2560       .ltc_divisor = 25,
2561       .height = 576,
2562       .width = 720,
2563       .sar = {{59, 54}, {118, 81}},
2564       .video_place = dv_place_420,
2565       .pix_fmt = PIX_FMT_YUV420P,
2566       .bpm = 6,
2567       .block_sizes = block_sizes_dv2550,
2568       .audio_stride = 108,
2569       .audio_min_samples = { 1896, 1742, 1264 }, /* for 48, 44.1 and 32Khz */
2570       .audio_samples_dist = { 1920, 1920, 1920, 1920, 1920 },
2571       .audio_shuffle = dv_audio_shuffle625,
2572     },
2573     { .dsf = 1,
2574       .frame_size = 144000,        /* SMPTE-314M - 625/50 (PAL) */
2575       .difseg_size = 12,
2576       .n_difchan = 1,
2577       .frame_rate = 25,
2578       .frame_rate_base = 1,
2579       .ltc_divisor = 25,
2580       .height = 576,
2581       .width = 720,
2582       .sar = {{59, 54}, {118, 81}},
2583       .video_place = dv_place_411P,
2584       .pix_fmt = PIX_FMT_YUV411P,
2585       .bpm = 6,
2586       .block_sizes = block_sizes_dv2550,
2587       .audio_stride = 108,
2588       .audio_min_samples = { 1896, 1742, 1264 }, /* for 48, 44.1 and 32Khz */
2589       .audio_samples_dist = { 1920, 1920, 1920, 1920, 1920 },
2590       .audio_shuffle = dv_audio_shuffle625,
2591     },
2592     { .dsf = 0,
2593       .frame_size = 240000,        /* SMPTE-314M - 525/60 (NTSC) 50 Mbps */
2594       .difseg_size = 10,           /* also known as "DVCPRO50" */
2595       .n_difchan = 2,
2596       .frame_rate = 30000,
2597       .ltc_divisor = 30,
2598       .frame_rate_base = 1001,
2599       .height = 480,
2600       .width = 720,
2601       .sar = {{10, 11}, {40, 33}},
2602       .video_place = dv_place_422_525,
2603       .pix_fmt = PIX_FMT_YUV422P,
2604       .bpm = 6,
2605       .block_sizes = block_sizes_dv2550,
2606       .audio_stride = 90,
2607       .audio_min_samples = { 1580, 1452, 1053 }, /* for 48, 44.1 and 32Khz */
2608       .audio_samples_dist = { 1600, 1602, 1602, 1602, 1602 }, /* per SMPTE-314M */
2609       .audio_shuffle = dv_audio_shuffle525,
2610     },
2611     { .dsf = 1,
2612       .frame_size = 288000,        /* SMPTE-314M - 625/50 (PAL) 50 Mbps */
2613       .difseg_size = 12,           /* also known as "DVCPRO50" */
2614       .n_difchan = 2,
2615       .frame_rate = 25,
2616       .frame_rate_base = 1,
2617       .ltc_divisor = 25,
2618       .height = 576,
2619       .width = 720,
2620       .sar = {{59, 54}, {118, 81}},
2621       .video_place = dv_place_422_625,
2622       .pix_fmt = PIX_FMT_YUV422P,
2623       .bpm = 6,
2624       .block_sizes = block_sizes_dv2550,
2625       .audio_stride = 108,
2626       .audio_min_samples = { 1896, 1742, 1264 }, /* for 48, 44.1 and 32Khz */
2627       .audio_samples_dist = { 1920, 1920, 1920, 1920, 1920 },
2628       .audio_shuffle = dv_audio_shuffle625,
2629     }
2630 };
2631
2632 enum dv_section_type {
2633      dv_sect_header  = 0x1f,
2634      dv_sect_subcode = 0x3f,
2635      dv_sect_vaux    = 0x56,
2636      dv_sect_audio   = 0x76,
2637      dv_sect_video   = 0x96,
2638 };
2639
2640 enum dv_pack_type {
2641      dv_header525     = 0x3f, /* see dv_write_pack for important details on */
2642      dv_header625     = 0xbf, /* these two packs */
2643      dv_timecode      = 0x13,
2644      dv_audio_source  = 0x50,
2645      dv_audio_control = 0x51,
2646      dv_audio_recdate = 0x52,
2647      dv_audio_rectime = 0x53,
2648      dv_video_source  = 0x60,
2649      dv_video_control = 0x61,
2650      dv_video_recdate = 0x62,
2651      dv_video_rectime = 0x63,
2652      dv_unknown_pack  = 0xff,
2653 };
2654
2655 /* minimum number of bytes to read from a DV stream in order to determine the profile */
2656 #define DV_PROFILE_BYTES (6*80) /* 6 DIF blocks */
2657
2658 /* largest possible DV frame, in bytes (PAL 50Mbps) */
2659 #define DV_MAX_FRAME_SIZE 288000
2660
2661 /* maximum number of blocks per macroblock in any DV format */
2662 #define DV_MAX_BPM 8
2663
2664 static inline const DVprofile* dv_frame_profile(const uint8_t* frame)
2665 {
2666     if ((frame[3] & 0x80) == 0) {      /* DSF flag */
2667         /* it's an NTSC format */
2668         if ((frame[80*5 + 48 + 3] & 0x4) && (frame[80*5 + 48] == dv_video_source)) { /* 4:2:2 sampling */
2669             return &dv_profiles[3]; /* NTSC 50Mbps */
2670         } else { /* 4:1:1 sampling */
2671             return &dv_profiles[0]; /* NTSC 25Mbps */
2672         }
2673     } else {
2674         /* it's a PAL format */
2675         if ((frame[80*5 + 48 + 3] & 0x4) && (frame[80*5 + 48] == dv_video_source)) { /* 4:2:2 sampling */
2676             return &dv_profiles[4]; /* PAL 50Mbps */
2677         } else if ((frame[5] & 0x07) == 0) { /* APT flag */
2678             return &dv_profiles[1]; /* PAL 25Mbps 4:2:0 */
2679         } else
2680             return &dv_profiles[2]; /* PAL 25Mbps 4:1:1 */
2681     }
2682 }
2683
2684 static inline const DVprofile* dv_codec_profile(AVCodecContext* codec)
2685 {
2686     int i;
2687
2688     if (codec->width != 720)
2689         return NULL;
2690
2691     for (i=0; i<sizeof(dv_profiles)/sizeof(DVprofile); i++)
2692        if (codec->height == dv_profiles[i].height && codec->pix_fmt == dv_profiles[i].pix_fmt)
2693            return &dv_profiles[i];
2694
2695     return NULL;
2696 }
2697
2698 static inline int dv_write_dif_id(enum dv_section_type t, uint8_t chan_num, uint8_t seq_num,
2699                                   uint8_t dif_num, uint8_t* buf)
2700 {
2701     buf[0] = (uint8_t)t;    /* Section type */
2702     buf[1] = (seq_num<<4) | /* DIF seq number 0-9 for 525/60; 0-11 for 625/50 */
2703              (chan_num << 3) | /* FSC: for 50Mb/s 0 - first channel; 1 - second */
2704              7;             /* reserved -- always 1 */
2705     buf[2] = dif_num;       /* DIF block number Video: 0-134, Audio: 0-8 */
2706     return 3;
2707 }
2708
2709
2710 static inline int dv_write_ssyb_id(uint8_t syb_num, uint8_t fr, uint8_t* buf)
2711 {
2712     if (syb_num == 0 || syb_num == 6) {
2713         buf[0] = (fr<<7) | /* FR ID 1 - first half of each channel; 0 - second */
2714                  (0<<4)  | /* AP3 (Subcode application ID) */
2715                  0x0f;     /* reserved -- always 1 */
2716     }
2717     else if (syb_num == 11) {
2718         buf[0] = (fr<<7) | /* FR ID 1 - first half of each channel; 0 - second */
2719                  0x7f;     /* reserved -- always 1 */
2720     }
2721     else {
2722         buf[0] = (fr<<7) | /* FR ID 1 - first half of each channel; 0 - second */
2723                  (0<<4)  | /* APT (Track application ID) */
2724                  0x0f;     /* reserved -- always 1 */
2725     }
2726     buf[1] = 0xf0 |            /* reserved -- always 1 */
2727              (syb_num & 0x0f); /* SSYB number 0 - 11   */
2728     buf[2] = 0xff;             /* reserved -- always 1 */
2729     return 3;
2730 }
2731
2732 #endif /* FFMPEG_DVDATA_H */