Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/freealut-1.1.0/src/alutWaveform.c @ 14

Last change on this file since 14 was 14, checked in by landauf, 16 years ago

added freealut

File size: 56.2 KB
Line 
1#include "alutInternal.h"
2#include <math.h>
3#include <string.h>
4
5#if defined(_WIN32)
6#define random() rand()
7#endif
8
9static const double sampleFrequency = 44100;
10
11/*
12 * The following waveformFoo functions expect the phase of the previous call and
13 * the current phase, both in the range [0..+1). They return an amplitude in the
14 * range [-1..+1].
15 */
16
17typedef double (*waveformFunction) (double lastPhase, double phase);
18
19static double
20waveformSine (double UNUSED (lastPhase), double phase)
21{
22  static const double pi = 3.14159265358979323846;
23  return sin (phase * pi);
24}
25
26static double
27waveformSquare (double UNUSED (lastPhase), double phase)
28{
29  return (phase >= 0.5) ? -1 : 1;
30}
31
32static double
33waveformSawtooth (double UNUSED (lastPhase), double phase)
34{
35  return 2 * phase - 1;
36}
37
38static double
39waveformWhitenoise (double UNUSED (lastPhase), double UNUSED (phase))
40{
41  static const long prime = 67867967L;
42  return 2 * (double) (random () % prime) / prime - 1;
43}
44
45static double
46waveformImpulse (double lastPhase, double phase)
47{
48  return (lastPhase > phase) ? 1 : 0;
49}
50
51static waveformFunction
52getWaveformFunction (ALenum waveshape)
53{
54  switch (waveshape)
55    {
56    case ALUT_WAVEFORM_SINE:
57      return &waveformSine;
58    case ALUT_WAVEFORM_SQUARE:
59      return &waveformSquare;
60    case ALUT_WAVEFORM_SAWTOOTH:
61      return &waveformSawtooth;
62    case ALUT_WAVEFORM_WHITENOISE:
63      return &waveformWhitenoise;
64    case ALUT_WAVEFORM_IMPULSE:
65      return &waveformImpulse;
66    }
67  _alutSetError (ALUT_ERROR_INVALID_ENUM);
68  return NULL;
69}
70
71static OutputStream *
72generateWaveform (ALenum waveshape, ALfloat frequency, ALfloat phase,
73                  ALfloat duration)
74{
75  waveformFunction func;
76  double sampleDuration, lastPhase, numSamplesD;
77  size_t numBytes, numSamples, i;
78  OutputStream *stream;
79
80  func = getWaveformFunction (waveshape);
81  if (func == NULL)
82    {
83      return NULL;
84    }
85
86  /* ToDo: Shall we test phase for [-180 .. +180]? */
87  if (frequency <= 0 || duration < 0)
88    {
89      _alutSetError (ALUT_ERROR_INVALID_VALUE);
90      return NULL;
91    }
92
93  /* allocate stream to hold AU header and sample data */
94  sampleDuration = floor ((frequency * duration) + 0.5) / frequency;
95  /* GCC is a bit picky about casting function calls, so we do it in two
96     steps... */
97  numSamplesD = floor (sampleDuration * sampleFrequency);
98  numSamples = (size_t) numSamplesD;
99  numBytes = numSamples * sizeof (int16_t);
100  stream = _alutOutputStreamConstruct (AU_HEADER_SIZE + numBytes);
101  if (stream == NULL)
102    {
103      return NULL;
104    }
105
106  /* write AU header for our 16bit mono data */
107  if (!_alutOutputStreamWriteInt32BE (stream, 0x2e736e64) ||    /* ".snd" */
108      !_alutOutputStreamWriteInt32BE (stream, AU_HEADER_SIZE) ||
109      !_alutOutputStreamWriteInt32BE (stream, (Int32BigEndian) numBytes) ||
110      !_alutOutputStreamWriteInt32BE (stream, AU_PCM_16) ||
111      !_alutOutputStreamWriteInt32BE (stream,
112                                      (Int32BigEndian) sampleFrequency) ||
113      !_alutOutputStreamWriteInt32BE (stream, 1))
114    {
115      _alutOutputStreamDestroy (stream);
116      return NULL;
117    }
118
119  /* normalize phase from degrees */
120  phase /= 180;
121
122  /* the value corresponding to i = -1 below */
123  lastPhase = phase - frequency / sampleFrequency;
124  lastPhase -= floor (lastPhase);
125
126  /* calculate samples */
127  for (i = 0; i < numSamples; i++)
128    {
129      double p = phase + frequency * (double) i / sampleFrequency;
130      double currentPhase = p - floor (p);
131      double amplitude = func (lastPhase, currentPhase);
132      if (!_alutOutputStreamWriteInt16BE
133          (stream, (Int16BigEndian) (amplitude * 32767)))
134        {
135          _alutOutputStreamDestroy (stream);
136          return NULL;
137        }
138      lastPhase = currentPhase;
139    }
140
141  return stream;
142}
143
144ALvoid *
145alutLoadMemoryWaveform (ALenum waveshape, ALfloat frequency, ALfloat phase,
146                        ALfloat duration, ALenum *format, ALsizei *size,
147                        ALfloat *freq)
148{
149  OutputStream *outputStream;
150  InputStream *inputStream;
151  ALvoid *data;
152
153  if (!_alutSanityCheck ())
154    {
155      return NULL;
156    }
157
158  outputStream = generateWaveform (waveshape, frequency, phase, duration);
159  if (outputStream == NULL)
160    {
161      return NULL;
162    }
163
164  /* We could do something more efficient here if the internal stream
165     structures were known, but this would break the abstraction. */
166  inputStream =
167    _alutInputStreamConstructFromMemory (_alutOutputStreamGetData
168                                         (outputStream),
169                                         _alutOutputStreamGetLength
170                                         (outputStream));
171  if (inputStream == NULL)
172    {
173      _alutOutputStreamDestroy (outputStream);
174      return NULL;
175    }
176
177  data = _alutLoadMemoryFromInputStream (inputStream, format, size, freq);
178  _alutOutputStreamDestroy (outputStream);
179  return data;
180}
181
182ALuint
183alutCreateBufferWaveform (ALenum waveshape, ALfloat frequency, ALfloat phase,
184                          ALfloat duration)
185{
186  OutputStream *outputStream;
187  InputStream *inputStream;
188  ALuint buffer;
189
190  if (!_alutSanityCheck ())
191    {
192      return AL_NONE;
193    }
194
195  outputStream = generateWaveform (waveshape, frequency, phase, duration);
196  if (outputStream == NULL)
197    {
198      return AL_NONE;
199    }
200
201  /* We could do something more efficient here if the internal stream
202     structures were known, but this would break the abstraction. */
203  inputStream =
204    _alutInputStreamConstructFromMemory (_alutOutputStreamGetData
205                                         (outputStream),
206                                         _alutOutputStreamGetLength
207                                         (outputStream));
208  if (inputStream == NULL)
209    {
210      _alutOutputStreamDestroy (outputStream);
211      return AL_NONE;
212    }
213
214  buffer = _alutCreateBufferFromInputStream (inputStream);
215  _alutOutputStreamDestroy (outputStream);
216  return buffer;
217}
218
219/* converted from helloworld.wav */
220static uint8_t helloWorldSample[] = {
221  0x2e, 0x73, 0x6e, 0x64,       /* ".snd" */
222  0x00, 0x00, 0x00, 0x18,       /* byte offset to data part (24) */
223  0x00, 0x00, 0x1f, 0xf2,       /* number of bytes in the data part (8178) */
224  0x00, 0x00, 0x00, 0x01,       /* encoding of the data part (8-bit ISDN u-law) */
225  0x00, 0x00, 0x2b, 0x11,       /* number of samples per second (11025) */
226  0x00, 0x00, 0x00, 0x01,       /* number of interleaved channels (1) */
227
228  0x7e, 0x7c, 0x7d, 0x7a, 0x79, 0xfc, 0xf8, 0x7e, 0x73, 0x6f, 0x7c, 0x7d,
229  0x6f, 0x71, 0x78, 0x78, 0x77, 0x6f, 0x6b, 0x6e, 0x71, 0x6c, 0x6b, 0x75,
230  0xff, 0x7b, 0x70, 0x6d, 0x6d, 0x6a, 0x6c, 0x74, 0x70, 0x73, 0x71, 0x63,
231  0x68, 0xfb, 0xf4, 0x78, 0x6f, 0xfd, 0xef, 0x74, 0x62, 0x70, 0xf6, 0x6a,
232  0x60, 0x6b, 0xf9, 0x7e, 0x6a, 0x7b, 0xea, 0x78, 0x62, 0x75, 0xe3, 0xe7,
233  0x71, 0x66, 0x78, 0xf9, 0x6d, 0x6d, 0x77, 0x74, 0x6f, 0x68, 0x6a, 0xfe,
234  0xf8, 0x7e, 0x6f, 0x6b, 0x72, 0xfe, 0xea, 0xe7, 0x72, 0x60, 0x6a, 0xed,
235  0xe8, 0x6f, 0x62, 0x62, 0x6a, 0xf3, 0xef, 0x7e, 0xfd, 0x70, 0x64, 0x6e,
236  0xed, 0xe6, 0xec, 0x6b, 0x5e, 0x7b, 0xe0, 0xe7, 0x7e, 0x62, 0x5c, 0x72,
237  0xee, 0xf5, 0x74, 0x65, 0x69, 0x6d, 0xfd, 0xe6, 0xef, 0x6c, 0x6a, 0x7e,
238  0xf6, 0x7a, 0x67, 0x64, 0x7b, 0x7c, 0x6b, 0xf0, 0xde, 0xfe, 0x5c, 0x5f,
239  0x7c, 0xe5, 0xe4, 0xf6, 0x6e, 0x69, 0x7e, 0xe2, 0xe0, 0x77, 0x5d, 0x6a,
240  0xf3, 0x6e, 0x6a, 0x79, 0xfa, 0xed, 0xeb, 0xeb, 0xec, 0x7e, 0x6f, 0x78,
241  0x69, 0x64, 0x7d, 0xff, 0x74, 0x67, 0x6c, 0xe5, 0xee, 0x77, 0xf2, 0xeb,
242  0xf2, 0x68, 0x67, 0x73, 0x6f, 0x74, 0xf2, 0xeb, 0x78, 0x66, 0x66, 0x71,
243  0xe7, 0xe2, 0x6d, 0x65, 0xf1, 0x7a, 0x5f, 0x64, 0x73, 0x79, 0x75, 0xeb,
244  0xe8, 0x6c, 0x6e, 0xee, 0xe5, 0xee, 0x66, 0x6c, 0xf5, 0x6b, 0x6f, 0xe5,
245  0xec, 0x7b, 0x7d, 0x79, 0x76, 0x68, 0x67, 0xf6, 0xef, 0x6e, 0x73, 0xfd,
246  0x7c, 0xf6, 0x75, 0x68, 0x72, 0x6a, 0x5e, 0x68, 0x77, 0x77, 0x68, 0x5e,
247  0x6e, 0xea, 0xfb, 0x6a, 0xf5, 0xf1, 0x70, 0x6a, 0x6b, 0xde, 0xdf, 0x66,
248  0x6e, 0x7d, 0x64, 0x5f, 0xf5, 0xe6, 0x7a, 0x7a, 0xee, 0xeb, 0x74, 0x60,
249  0x76, 0xde, 0xf2, 0x58, 0x66, 0xdb, 0xdd, 0x6d, 0x5b, 0xfa, 0xe3, 0x68,
250  0x6e, 0xe1, 0xe1, 0x73, 0x55, 0x5a, 0xe5, 0xda, 0xee, 0x7e, 0xef, 0x7c,
251  0x6b, 0x7a, 0xe9, 0xe7, 0x72, 0x5e, 0x79, 0xe5, 0xfa, 0xff, 0x78, 0x64,
252  0x6b, 0x7a, 0xf6, 0xf7, 0x78, 0xef, 0xe8, 0xf8, 0x7a, 0xef, 0xde, 0xe7,
253  0x58, 0x58, 0xde, 0xdf, 0x6c, 0x74, 0xfa, 0xef, 0xed, 0xfd, 0xf8, 0xf4,
254  0x66, 0x5f, 0xe7, 0xe0, 0x6e, 0x7c, 0xee, 0x71, 0x67, 0x69, 0xfb, 0xe7,
255  0xed, 0x72, 0x6c, 0x6f, 0x67, 0x6b, 0xe8, 0xe2, 0x70, 0x6b, 0xf0, 0x64,
256  0x58, 0xee, 0xe3, 0x66, 0x74, 0xe7, 0xed, 0x6d, 0x58, 0x56, 0x62, 0x6e,
257  0x6d, 0xe8, 0xd8, 0xe2, 0x6f, 0x5e, 0x63, 0xfd, 0xfa, 0x6f, 0x64, 0x59,
258  0x5b, 0x6e, 0x71, 0x69, 0x6c, 0x6c, 0x74, 0xe3, 0xdd, 0xf5, 0x69, 0x71,
259  0x7e, 0x62, 0x65, 0xe6, 0xda, 0xee, 0x64, 0xed, 0xcd, 0xcd, 0xd8, 0xd6,
260  0xcd, 0xd2, 0xea, 0xe0, 0xcd, 0xcf, 0xe9, 0x74, 0xdd, 0xd0, 0xd4, 0xdc,
261  0xef, 0xe2, 0xdd, 0x69, 0x66, 0x76, 0x6c, 0x6d, 0x5c, 0x5a, 0x67, 0x6b,
262  0x5c, 0x4c, 0x48, 0x4d, 0x5d, 0x5a, 0x4c, 0x51, 0x4f, 0x4f, 0x58, 0x4d,
263  0x4e, 0x4d, 0x40, 0x40, 0x49, 0x4d, 0x4f, 0x4d, 0x3e, 0x38, 0x4c, 0xbe,
264  0xb1, 0xb9, 0xc9, 0xcb, 0xcd, 0xf2, 0xe8, 0xd1, 0xd4, 0xeb, 0x4d, 0x54,
265  0xca, 0xc2, 0xbf, 0xb7, 0xb2, 0xb7, 0xc6, 0xc4, 0xb8, 0xbe, 0xde, 0x77,
266  0xd0, 0xcd, 0xe1, 0xdf, 0xcf, 0xc7, 0xda, 0x54, 0x59, 0x5d, 0x4f, 0x49,
267  0x49, 0x51, 0x4d, 0x45, 0x46, 0x4a, 0x46, 0x3b, 0x38, 0x38, 0x38, 0x35,
268  0x32, 0x33, 0x38, 0xe7, 0xb0, 0xb0, 0xbc, 0xce, 0xd8, 0x74, 0x47, 0x44,
269  0x4b, 0x50, 0x43, 0x3e, 0x57, 0xca, 0xbb, 0xbc, 0xc0, 0xc1, 0xca, 0xde,
270  0xee, 0xe0, 0xd3, 0x6c, 0x4d, 0xcf, 0xb7, 0xb9, 0xc7, 0xd1, 0xc5, 0xc7,
271  0xe2, 0xf7, 0xd1, 0xcc, 0xfe, 0x5d, 0xe7, 0xce, 0xcd, 0xe1, 0x74, 0x67,
272  0x4d, 0x3e, 0x3b, 0x3d, 0x3b, 0x39, 0x34, 0x33, 0x3c, 0x4b, 0x52, 0x4f,
273  0xce, 0xaf, 0xae, 0xc3, 0x5c, 0x51, 0x51, 0x3d, 0x36, 0x3c, 0x4b, 0x4d,
274  0x47, 0x5c, 0xc7, 0xb9, 0xbb, 0xbe, 0xbe, 0xc6, 0xe7, 0x57, 0x5a, 0x6b,
275  0x60, 0x51, 0x54, 0xd0, 0xb7, 0xb4, 0xbc, 0xc0, 0xc5, 0xdc, 0x6b, 0xee,
276  0xde, 0xe5, 0x63, 0x5c, 0x7d, 0xe1, 0xd1, 0xcf, 0xe8, 0x51, 0x3d, 0x32,
277  0x2d, 0x2c, 0x30, 0x3e, 0x4d, 0x52, 0x62, 0xbe, 0xac, 0xad, 0xbc, 0xdc,
278  0x58, 0x43, 0x38, 0x36, 0x3e, 0x48, 0x47, 0x46, 0x6a, 0xbf, 0xb4, 0xb4,
279  0xb9, 0xc0, 0xcf, 0x71, 0x57, 0x5b, 0x5d, 0x50, 0x47, 0x4b, 0x63, 0xdd,
280  0xc4, 0xb3, 0xad, 0xb2, 0xc9, 0xfc, 0xf9, 0xf5, 0x58, 0x4d, 0x53, 0x5a,
281  0x56, 0x53, 0xf1, 0xcd, 0xda, 0x52, 0x3d, 0x38, 0x2f, 0x27, 0x2b, 0x43,
282  0xd5, 0xbd, 0xb0, 0xae, 0xb6, 0xc4, 0xe9, 0x6f, 0x71, 0x4a, 0x38, 0x34,
283  0x36, 0x3a, 0x4a, 0xde, 0xbe, 0xb6, 0xb9, 0xbf, 0xc3, 0xc9, 0xcf, 0xe3,
284  0x5d, 0x4e, 0x44, 0x3f, 0x45, 0x52, 0xf6, 0xd2, 0xc3, 0xb6, 0xb2, 0xb5,
285  0xb8, 0xbd, 0xd2, 0x4e, 0x41, 0x43, 0x47, 0x4a, 0x4a, 0x53, 0x5e, 0x51,
286  0x48, 0x41, 0x3e, 0x2e, 0x28, 0x37, 0xc1, 0xac, 0xac, 0xb4, 0xbf, 0xd5,
287  0x51, 0x46, 0x6e, 0xde, 0x4d, 0x38, 0x2f, 0x33, 0x4a, 0xce, 0xba, 0xb1,
288  0xb3, 0xc0, 0xde, 0x71, 0xdc, 0xce, 0xde, 0x59, 0x47, 0x3e, 0x3e, 0x49,
289  0x7a, 0xc8, 0xc0, 0xc3, 0xbc, 0xb7, 0xb8, 0xbb, 0xbf, 0xd3, 0x52, 0x3f,
290  0x3d, 0x44, 0x4e, 0x4f, 0x4f, 0x4b, 0x45, 0x3f, 0x3c, 0x38, 0x2e, 0x2f,
291  0xe1, 0xab, 0xaa, 0xb6, 0xc1, 0xca, 0xf7, 0x47, 0x44, 0xfa, 0xdd, 0x3e,
292  0x2d, 0x2f, 0x41, 0xec, 0xc6, 0xb8, 0xaf, 0xb4, 0xcd, 0x66, 0xe8, 0xcb,
293  0xcc, 0x6e, 0x4a, 0x44, 0x3e, 0x3c, 0x47, 0xdc, 0xc0, 0xc2, 0xc9, 0xc0,
294  0xb7, 0xb4, 0xbd, 0xc9, 0xca, 0xde, 0x48, 0x3b, 0x3f, 0x4e, 0x51, 0x49,
295  0x42, 0x42, 0x43, 0x39, 0x32, 0x2f, 0x31, 0xde, 0xaa, 0xaa, 0xb6, 0xbb,
296  0xc4, 0x6c, 0x4b, 0x49, 0x6c, 0xd5, 0x43, 0x2e, 0x31, 0x3c, 0x51, 0xce,
297  0xbc, 0xb1, 0xb1, 0xc2, 0xee, 0xd8, 0xc8, 0xc7, 0xd6, 0x5e, 0x55, 0x42,
298  0x37, 0x3c, 0x50, 0xd9, 0xcb, 0xc4, 0xb9, 0xb5, 0xb6, 0xbd, 0xc5, 0xbe,
299  0xc6, 0x5e, 0x42, 0x3e, 0x3f, 0x3d, 0x3a, 0x3a, 0x3d, 0x3b, 0x33, 0x2d,
300  0x2a, 0x36, 0xb7, 0xa5, 0xab, 0xb1, 0xb4, 0xc9, 0x52, 0x44, 0x4b, 0xcf,
301  0xd7, 0x37, 0x2d, 0x2f, 0x34, 0x3f, 0xeb, 0xbb, 0xad, 0xaf, 0xc5, 0xd4,
302  0xc7, 0xc2, 0xc1, 0xc5, 0xd2, 0xfb, 0x43, 0x31, 0x33, 0x3f, 0x53, 0xcf,
303  0xba, 0xb6, 0xb5, 0xba, 0xbe, 0xbb, 0xba, 0xc4, 0xdc, 0x5c, 0x43, 0x3a,
304  0x35, 0x35, 0x37, 0x35, 0x30, 0x2c, 0x27, 0x2c, 0xcf, 0xaa, 0xab, 0xac,
305  0xab, 0xb3, 0xc9, 0x5c, 0x58, 0xc6, 0xc3, 0x47, 0x33, 0x2f, 0x2d, 0x2f,
306  0x38, 0x58, 0xb9, 0xb2, 0xbf, 0xc6, 0xbf, 0xbe, 0xbb, 0xba, 0xba, 0xb9,
307  0xcc, 0x40, 0x35, 0x38, 0x43, 0x5e, 0xde, 0xc5, 0xb9, 0xbd, 0xd9, 0xeb,
308  0xc9, 0xbe, 0xc6, 0xe4, 0x5b, 0x48, 0x39, 0x2f, 0x2c, 0x2b, 0x29, 0x28,
309  0x32, 0xd3, 0xb7, 0xbc, 0xba, 0xb2, 0xb3, 0xba, 0xc4, 0xbf, 0xb5, 0xbe,
310  0x4c, 0x38, 0x37, 0x35, 0x32, 0x35, 0x46, 0xd6, 0xd2, 0x66, 0xe6, 0xc0,
311  0xb9, 0xb8, 0xb6, 0xb2, 0xb2, 0xbf, 0x65, 0x64, 0xdc, 0xea, 0x7c, 0xe2,
312  0xdc, 0xfc, 0x4f, 0x49, 0x5a, 0xe5, 0xf0, 0x5e, 0x55, 0x48, 0x3a, 0x2e,
313  0x2a, 0x27, 0x2b, 0x51, 0xb8, 0xb9, 0xbe, 0xba, 0xbd, 0xcf, 0xda, 0xcc,
314  0xb8, 0xb0, 0xc3, 0x4e, 0x40, 0x39, 0x33, 0x37, 0x45, 0xd9, 0xc1, 0xd9,
315  0x58, 0xf9, 0xd8, 0xcf, 0xbf, 0xb6, 0xb0, 0xb3, 0xc9, 0x57, 0x69, 0xd7,
316  0xd4, 0xcb, 0xc2, 0xc7, 0xf5, 0x48, 0x42, 0x4d, 0x6c, 0x6f, 0x69, 0x62,
317  0x4b, 0x3a, 0x2f, 0x2a, 0x28, 0x29, 0x30, 0xed, 0xb5, 0xb7, 0xbd, 0xbb,
318  0xbe, 0xcb, 0xd0, 0xc8, 0xb8, 0xb4, 0xc8, 0x4a, 0x3d, 0x39, 0x35, 0x38,
319  0x46, 0xd9, 0xc3, 0xd6, 0x5f, 0xf2, 0xcf, 0xc9, 0xbf, 0xb7, 0xb1, 0xb4,
320  0xc4, 0xe1, 0xd0, 0xca, 0xcf, 0xd0, 0xcd, 0xd0, 0xfd, 0x49, 0x41, 0x4a,
321  0x55, 0x59, 0x56, 0x53, 0x4a, 0x3a, 0x2e, 0x28, 0x26, 0x2a, 0x38, 0xda,
322  0xb6, 0xb5, 0xb9, 0xb8, 0xc1, 0xde, 0xd2, 0xc0, 0xba, 0xb8, 0xc7, 0x50,
323  0x41, 0x3b, 0x35, 0x3a, 0x4f, 0xe0, 0xca, 0xcd, 0xec, 0xdd, 0xd1, 0xd5,
324  0xc3, 0xb7, 0xb5, 0xb8, 0xbf, 0xc8, 0xc9, 0xcb, 0xd9, 0xd9, 0xce, 0xd5,
325  0x69, 0x4e, 0x4c, 0x4c, 0x4f, 0x51, 0x4e, 0x4f, 0x4a, 0x3c, 0x30, 0x2a,
326  0x27, 0x2a, 0x2d, 0x38, 0xc6, 0xaf, 0xba, 0xbf, 0xbb, 0xc4, 0xd0, 0xcd,
327  0xc9, 0xb9, 0xb3, 0xce, 0x48, 0x45, 0x3e, 0x3a, 0x3e, 0x4b, 0xde, 0xc2,
328  0xd4, 0x6e, 0xd6, 0xcc, 0xce, 0xc4, 0xbb, 0xb6, 0xb5, 0xbc, 0xc7, 0xc3,
329  0xc4, 0xd3, 0xdc, 0xd5, 0xdd, 0x64, 0x4e, 0x4a, 0x4f, 0x61, 0x5d, 0x55,
330  0x5a, 0x4f, 0x3c, 0x31, 0x2b, 0x28, 0x2b, 0x2c, 0x2c, 0x44, 0xb7, 0xb5,
331  0xc6, 0xbb, 0xb6, 0xc3, 0xcd, 0xd2, 0xc9, 0xb5, 0xb9, 0x73, 0x58, 0x64,
332  0x40, 0x39, 0x3e, 0x4b, 0xda, 0xc7, 0xe2, 0xdd, 0xc3, 0xcc, 0xd6, 0xc5,
333  0xbf, 0xba, 0xb6, 0xbe, 0xc2, 0xbd, 0xc5, 0xde, 0xdf, 0xdd, 0xf5, 0x61,
334  0x55, 0x51, 0x64, 0xf7, 0x63, 0x66, 0xfd, 0x57, 0x43, 0x38, 0x2e, 0x2b,
335  0x2b, 0x2a, 0x29, 0x2b, 0x3f, 0xbf, 0xba, 0xc6, 0xba, 0xb1, 0xbc, 0xce,
336  0xd0, 0xc5, 0xb8, 0xba, 0xd8, 0xee, 0xea, 0x46, 0x39, 0x3b, 0x42, 0x66,
337  0xd3, 0xe7, 0xda, 0xc3, 0xca, 0xd7, 0xc8, 0xc0, 0xbd, 0xb9, 0xbc, 0xbd,
338  0xb9, 0xc1, 0xdd, 0xdf, 0xdf, 0x65, 0x5b, 0x61, 0x64, 0x77, 0xf4, 0x6f,
339  0xf1, 0xd9, 0xe7, 0x5b, 0x49, 0x3b, 0x30, 0x2c, 0x2a, 0x29, 0x2a, 0x2a,
340  0x2c, 0x4c, 0xbd, 0xc2, 0xc9, 0xb4, 0xb0, 0xbb, 0xc3, 0xc6, 0xbe, 0xb5,
341  0xbe, 0xfe, 0xe5, 0xe8, 0x43, 0x3a, 0x3b, 0x3f, 0x56, 0xfc, 0x5d, 0xd3,
342  0xbb, 0xc3, 0xcc, 0xc0, 0xc0, 0xc0, 0xbc, 0xc4, 0xc2, 0xb8, 0xbf, 0xd8,
343  0xd5, 0xe1, 0x5f, 0x6d, 0x6d, 0x66, 0xda, 0xd2, 0xe8, 0xdc, 0xd1, 0xdc,
344  0xe8, 0x6a, 0x47, 0x3c, 0x37, 0x2e, 0x2a, 0x2a, 0x29, 0x29, 0x29, 0x2d,
345  0x4d, 0xbf, 0xc5, 0xbf, 0xae, 0xae, 0xbb, 0xc2, 0xc6, 0xc4, 0xbd, 0xcd,
346  0x63, 0xdf, 0xf4, 0x3f, 0x3b, 0x3e, 0x40, 0x5a, 0xf1, 0x78, 0xc6, 0xb9,
347  0xc4, 0xc7, 0xbe, 0xc4, 0xc3, 0xbe, 0xc9, 0xc8, 0xbb, 0xc2, 0xd3, 0xc8,
348  0xcf, 0x7d, 0xe5, 0x7a, 0x5f, 0xd6, 0xd1, 0xf0, 0xd2, 0xc9, 0xd8, 0xda,
349  0xd9, 0x68, 0x4f, 0x42, 0x37, 0x33, 0x30, 0x2c, 0x29, 0x2a, 0x29, 0x26,
350  0x2b, 0x47, 0xc8, 0xcb, 0xbf, 0xae, 0xae, 0xba, 0xbf, 0xcc, 0xc7, 0xbb,
351  0xce, 0x5e, 0xce, 0xd5, 0x46, 0x40, 0x41, 0x3f, 0x5f, 0xf8, 0x5a, 0xc6,
352  0xb6, 0xc3, 0xc4, 0xbb, 0xc7, 0xc5, 0xbe, 0xd6, 0xcf, 0xbb, 0xc7, 0xd4,
353  0xc1, 0xcd, 0xf7, 0xd5, 0xed, 0x5e, 0xd5, 0xd2, 0xec, 0xcd, 0xca, 0xdc,
354  0xd0, 0xce, 0xe9, 0xe3, 0xe0, 0x54, 0x41, 0x3a, 0x32, 0x2e, 0x2b, 0x27,
355  0x26, 0x28, 0x26, 0x23, 0x2a, 0xff, 0xb2, 0xbe, 0xb9, 0xa5, 0xa8, 0xbb,
356  0xc6, 0xe0, 0xeb, 0xc7, 0x55, 0x3b, 0xea, 0xd5, 0x3e, 0x3c, 0x47, 0x48,
357  0xdc, 0xc7, 0xce, 0xb1, 0xa8, 0xb1, 0xb8, 0xb2, 0xbd, 0xc9, 0xcf, 0x53,
358  0x63, 0xd8, 0x48, 0x41, 0xec, 0xde, 0xd8, 0xc2, 0xca, 0xc2, 0xb4, 0xc0,
359  0xd8, 0xbf, 0xc6, 0xea, 0xdd, 0x70, 0x60, 0xda, 0x6a, 0x4e, 0xfb, 0x75,
360  0x47, 0x3e, 0x37, 0x30, 0x2f, 0x2c, 0x29, 0x2a, 0x2b, 0x28, 0x27, 0x27,
361  0x25, 0x3c, 0xac, 0xa8, 0xb0, 0xa0, 0x9d, 0xb3, 0xe2, 0x57, 0x35, 0x40,
362  0x54, 0x2f, 0x3a, 0xc2, 0x52, 0x36, 0x76, 0xd3, 0xcb, 0xae, 0xae, 0xad,
363  0xa0, 0xa7, 0xc1, 0xbd, 0xc7, 0x42, 0x43, 0x3e, 0x35, 0x4d, 0x4e, 0x34,
364  0x40, 0xf9, 0x5a, 0xcd, 0xb7, 0xb1, 0xa8, 0xa9, 0xbc, 0xbd, 0xbe, 0x4d,
365  0x44, 0x4d, 0x44, 0x68, 0xe4, 0x4f, 0xe7, 0xca, 0xec, 0xf0, 0xe6, 0x64,
366  0x5b, 0x45, 0x38, 0x3a, 0x3a, 0x31, 0x30, 0x32, 0x2e, 0x2d, 0x2a, 0x23,
367  0x25, 0x24, 0x1f, 0x3e, 0xa1, 0xa3, 0xab, 0x9b, 0x9c, 0xba, 0xe5, 0x3b,
368  0x2b, 0x4e, 0x50, 0x2a, 0x4a, 0xb8, 0x4c, 0x43, 0xcf, 0xe3, 0xb8, 0xa7,
369  0xb0, 0xab, 0x9e, 0xad, 0xd5, 0xcd, 0x47, 0x35, 0x3d, 0x31, 0x32, 0x66,
370  0x4f, 0x3b, 0x5e, 0xdc, 0xe8, 0xc1, 0xbc, 0xba, 0xad, 0xad, 0xbd, 0xc1,
371  0xc7, 0x58, 0x4b, 0x4c, 0x49, 0xf9, 0xcf, 0xdd, 0xcf, 0xc7, 0xce, 0xdc,
372  0xe7, 0xdd, 0xe2, 0x6e, 0x6a, 0x5a, 0x50, 0x52, 0x42, 0x3d, 0x47, 0x3e,
373  0x37, 0x3a, 0x34, 0x2d, 0x2c, 0x28, 0x26, 0x27, 0x25, 0x26, 0x2b, 0x27,
374  0x2e, 0xaa, 0x9c, 0xa8, 0x9f, 0x99, 0xa8, 0xca, 0x45, 0x29, 0x35, 0x54,
375  0x2b, 0x32, 0xbc, 0xc6, 0xfb, 0xbf, 0xc1, 0xaf, 0xa3, 0xac, 0xaf, 0xa1,
376  0xaa, 0xd6, 0x66, 0x3d, 0x33, 0x3b, 0x30, 0x2f, 0x62, 0xe1, 0x49, 0xef,
377  0xcb, 0xcc, 0xbc, 0xbf, 0xcb, 0xb8, 0xb8, 0xe0, 0x6c, 0x6f, 0x4f, 0x51,
378  0x4e, 0x4f, 0xd0, 0xbf, 0xc7, 0xc4, 0xc0, 0xc5, 0xcf, 0x6a, 0x59, 0x6f,
379  0x60, 0x55, 0x5c, 0x7e, 0xdc, 0xe7, 0x65, 0xee, 0xe0, 0x60, 0x4f, 0x4b,
380  0x43, 0x3e, 0x38, 0x35, 0x39, 0x3a, 0x39, 0x3b, 0x3d, 0x39, 0x37, 0x34,
381  0x2e, 0x2c, 0x2c, 0x28, 0x29, 0x28, 0x29, 0xca, 0x9e, 0xa2, 0xa4, 0x99,
382  0xa0, 0xc0, 0x68, 0x2d, 0x2b, 0x58, 0x39, 0x2e, 0xc7, 0xbc, 0x77, 0xc0,
383  0xbf, 0xbd, 0xa7, 0xaa, 0xb5, 0xa6, 0xaa, 0xcc, 0xe8, 0x42, 0x33, 0x41,
384  0x3a, 0x34, 0xf0, 0xcc, 0x69, 0xce, 0xcb, 0xce, 0xbb, 0xbf, 0xcd, 0xbb,
385  0xbd, 0xec, 0x5e, 0x4a, 0x40, 0x48, 0x45, 0x46, 0xe5, 0xc8, 0xc6, 0xc2,
386  0xc4, 0xc2, 0xc4, 0xdf, 0x77, 0xe0, 0x7a, 0x5c, 0x5a, 0x5d, 0x7d, 0x75,
387  0x5e, 0xfa, 0xda, 0xde, 0xf7, 0x6f, 0x6a, 0x56, 0x46, 0x3f, 0x40, 0x41,
388  0x41, 0x43, 0x49, 0x53, 0x52, 0x4b, 0x49, 0x48, 0x43, 0x3c, 0x37, 0x38,
389  0x39, 0x36, 0x35, 0x32, 0x30, 0x31, 0x2f, 0x2d, 0x2e, 0x30, 0x33, 0xc3,
390  0x9e, 0x9f, 0xa4, 0x9c, 0xa2, 0xc8, 0x4d, 0x30, 0x2b, 0x49, 0x46, 0x37,
391  0xc7, 0xb7, 0xd1, 0xbe, 0xbe, 0xc0, 0xab, 0xac, 0xb6, 0xaa, 0xad, 0xd4,
392  0xea, 0x41, 0x32, 0x41, 0x3d, 0x38, 0xe2, 0xcc, 0xee, 0xc9, 0xcb, 0xd1,
393  0xbe, 0xc6, 0xcf, 0xbe, 0xc5, 0xee, 0x5f, 0x48, 0x41, 0x43, 0x3f, 0x46,
394  0x66, 0xdb, 0xcc, 0xcd, 0xd0, 0xcb, 0xd3, 0x7c, 0xec, 0xd7, 0xd5, 0xdc,
395  0xee, 0x73, 0x65, 0x59, 0x51, 0x53, 0x68, 0xe1, 0xdd, 0xdc, 0xd9, 0xec,
396  0x60, 0x59, 0x51, 0x4f, 0x53, 0x54, 0x5c, 0x61, 0x58, 0x57, 0x59, 0x51,
397  0x4d, 0x49, 0x44, 0x44, 0x42, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3c, 0x3b,
398  0x3b, 0x37, 0x34, 0x32, 0x2f, 0x2d, 0x2f, 0x33, 0x36, 0xbf, 0x9f, 0xa1,
399  0xa7, 0x9f, 0xa6, 0xcb, 0x55, 0x34, 0x30, 0x62, 0x4c, 0x3d, 0xc6, 0xbd,
400  0xd6, 0xc1, 0xcb, 0xc0, 0xaa, 0xaf, 0xb7, 0xaa, 0xb3, 0xd7, 0xf5, 0x3b,
401  0x36, 0x49, 0x3a, 0x3b, 0xde, 0xdb, 0xe5, 0xcc, 0xd5, 0xca, 0xbd, 0xc9,
402  0xcb, 0xc3, 0xd0, 0x6f, 0x4e, 0x42, 0x43, 0x44, 0x45, 0x4e, 0x6f, 0xd7,
403  0xd0, 0xdb, 0xdf, 0xdd, 0xe3, 0xfb, 0x6c, 0xf8, 0xeb, 0x65, 0x53, 0x4f,
404  0x55, 0x5a, 0x57, 0xf2, 0xcb, 0xcc, 0xd3, 0xd6, 0xea, 0x6f, 0x5e, 0x4d,
405  0x51, 0x60, 0x59, 0x63, 0xf1, 0xf4, 0xe3, 0xdf, 0xed, 0xe5, 0xee, 0x61,
406  0x5e, 0x58, 0x4f, 0x4f, 0x4a, 0x45, 0x45, 0x45, 0x46, 0x47, 0x48, 0x4a,
407  0x45, 0x3f, 0x3d, 0x3a, 0x37, 0x35, 0x31, 0x31, 0x33, 0x31, 0x33, 0x44,
408  0xb5, 0xa2, 0xa6, 0xa9, 0xa2, 0xad, 0xeb, 0x41, 0x34, 0x3a, 0x59, 0x44,
409  0x45, 0xc7, 0xc7, 0xe3, 0xce, 0xc7, 0xb6, 0xac, 0xb1, 0xb0, 0xad, 0xbb,
410  0xe4, 0x4b, 0x3a, 0x3e, 0x43, 0x3b, 0x49, 0xe5, 0xee, 0x7b, 0xea, 0xd9,
411  0xc4, 0xbe, 0xc1, 0xbe, 0xbd, 0xcb, 0x62, 0x49, 0x43, 0x40, 0x40, 0x46,
412  0x50, 0x76, 0xe0, 0xea, 0xf1, 0xdf, 0xd9, 0xdc, 0xde, 0xd9, 0xda, 0xfe,
413  0x54, 0x49, 0x47, 0x48, 0x47, 0x46, 0x55, 0xf8, 0xeb, 0xe7, 0xd7, 0xca,
414  0xcb, 0xde, 0xed, 0xdf, 0xe1, 0x74, 0x5c, 0x60, 0x7a, 0x6f, 0x61, 0x7c,
415  0xda, 0xd2, 0xd6, 0xd9, 0xd5, 0xd9, 0xf2, 0x61, 0x5a, 0x5d, 0x61, 0x59,
416  0x58, 0x60, 0x5c, 0x4f, 0x4b, 0x47, 0x42, 0x3e, 0x3c, 0x3b, 0x3b, 0x3a,
417  0x39, 0x3a, 0x3a, 0x3a, 0x3a, 0x37, 0x36, 0x3a, 0x6f, 0xae, 0xa8, 0xae,
418  0xaa, 0xaa, 0xc9, 0x4a, 0x3f, 0x38, 0x4e, 0xf5, 0x48, 0x77, 0xc6, 0xfd,
419  0x63, 0xd5, 0xc4, 0xb3, 0xae, 0xb2, 0xaf, 0xb3, 0xcb, 0x56, 0x45, 0x44,
420  0x48, 0x49, 0x4d, 0x60, 0x73, 0x5d, 0x52, 0x69, 0xd0, 0xc5, 0xbe, 0xbc,
421  0xbd, 0xc3, 0xea, 0x4c, 0x45, 0x43, 0x44, 0x4a, 0x52, 0x68, 0x7d, 0x65,
422  0x5f, 0x67, 0xfb, 0xde, 0xda, 0xd6, 0xd1, 0xe2, 0x5b, 0x4c, 0x47, 0x46,
423  0x49, 0x49, 0x51, 0x6d, 0x72, 0x60, 0x7e, 0xde, 0xe0, 0xd6, 0xc9, 0xc7,
424  0xca, 0xd6, 0x78, 0x60, 0x5a, 0x4f, 0x54, 0x76, 0xde, 0xd5, 0xd4, 0xdb,
425  0xd7, 0xd3, 0xdc, 0xdd, 0xd7, 0xdc, 0xed, 0x6d, 0x59, 0x51, 0x51, 0x50,
426  0x54, 0x5f, 0x61, 0x59, 0x52, 0x4c, 0x49, 0x47, 0x42, 0x3f, 0x42, 0x40,
427  0x3c, 0x3b, 0x3e, 0x40, 0x3c, 0x38, 0x38, 0x38, 0x3a, 0x48, 0xbf, 0xaa,
428  0xab, 0xaf, 0xab, 0xb5, 0xf2, 0x55, 0x46, 0x4c, 0xd9, 0x5f, 0x47, 0x74,
429  0x5f, 0x45, 0x54, 0xd7, 0xbb, 0xaf, 0xb0, 0xb3, 0xb3, 0xbe, 0xea, 0x4f,
430  0x54, 0x65, 0x5d, 0x55, 0x4f, 0x4d, 0x4a, 0x41, 0x44, 0xfe, 0xca, 0xc1,
431  0xbd, 0xbd, 0xc1, 0xd0, 0x5a, 0x50, 0x59, 0x56, 0x51, 0x51, 0x4e, 0x4a,
432  0x46, 0x43, 0x49, 0x68, 0xd5, 0xce, 0xc9, 0xc6, 0xce, 0xe9, 0x5f, 0x57,
433  0x5c, 0x5d, 0x53, 0x51, 0x52, 0x4d, 0x47, 0x48, 0x54, 0x78, 0xd9, 0xcc,
434  0xc7, 0xc3, 0xc2, 0xc8, 0xd6, 0xe2, 0xed, 0x69, 0x5a, 0x5c, 0x5f, 0x5d,
435  0x5b, 0x5c, 0x67, 0xeb, 0xdf, 0xda, 0xcf, 0xcb, 0xcc, 0xd9, 0xef, 0x72,
436  0x60, 0x55, 0x4f, 0x50, 0x53, 0x4f, 0x4c, 0x4b, 0x4d, 0x4f, 0x4f, 0x51,
437  0x59, 0x5a, 0x54, 0x51, 0x4d, 0x4a, 0x47, 0x44, 0x42, 0x41, 0x41, 0x40,
438  0x3e, 0x3c, 0x3a, 0x39, 0x4d, 0xb9, 0xad, 0xb3, 0xae, 0xab, 0xbc, 0xde,
439  0x72, 0x55, 0xe0, 0xd5, 0x4e, 0x4e, 0x63, 0x45, 0x3d, 0x4c, 0xdc, 0xbe,
440  0xb8, 0xb8, 0xb8, 0xb8, 0xc3, 0xee, 0xef, 0xd4, 0xde, 0x7d, 0x5d, 0x4c,
441  0x46, 0x3c, 0x39, 0x46, 0x7a, 0xd3, 0xc8, 0xc3, 0xc2, 0xc7, 0xdc, 0xf5,
442  0xdc, 0xd3, 0xda, 0xf7, 0x67, 0x55, 0x46, 0x3f, 0x40, 0x4c, 0x67, 0xef,
443  0xdf, 0xd5, 0xd5, 0xe3, 0xfd, 0xeb, 0xd9, 0xd6, 0xdf, 0x7c, 0x5f, 0x53,
444  0x47, 0x41, 0x47, 0x55, 0x61, 0x6b, 0xf6, 0xdd, 0xd4, 0xd0, 0xce, 0xcc,
445  0xca, 0xcd, 0xda, 0xf3, 0x6b, 0x61, 0x5a, 0x56, 0x5e, 0x6c, 0x70, 0x77,
446  0xf0, 0xe3, 0xdc, 0xd8, 0xd8, 0xda, 0xde, 0xf2, 0x67, 0x5a, 0x52, 0x4d,
447  0x4b, 0x4b, 0x4c, 0x4d, 0x4e, 0x4e, 0x4f, 0x52, 0x54, 0x54, 0x56, 0x58,
448  0x54, 0x4e, 0x4c, 0x4a, 0x45, 0x42, 0x45, 0x44, 0x42, 0x42, 0x40, 0x40,
449  0x3f, 0x41, 0xcd, 0xb0, 0xb9, 0xba, 0xaf, 0xba, 0xcd, 0xd3, 0xfe, 0xd0,
450  0xc2, 0xed, 0x54, 0x5f, 0x4d, 0x3f, 0x41, 0x61, 0xc9, 0xbf, 0xbe, 0xbf,
451  0xbe, 0xbe, 0xcf, 0xd6, 0xc3, 0xc1, 0xcb, 0xe0, 0x5b, 0x4e, 0x43, 0x3c,
452  0x3f, 0x53, 0xeb, 0xe1, 0xe2, 0xd7, 0xd6, 0xdd, 0xdd, 0xd3, 0xc6, 0xc4,
453  0xcf, 0xe9, 0x61, 0x4e, 0x44, 0x42, 0x47, 0x4f, 0x58, 0x56, 0x4f, 0x55,
454  0x5c, 0x5d, 0x7b, 0xd5, 0xcb, 0xcb, 0xd4, 0xed, 0x6b, 0x5f, 0x5a, 0x5e,
455  0xe5, 0xd3, 0xdc, 0x7c, 0x66, 0x60, 0x5e, 0x62, 0xef, 0xd4, 0xd0, 0xdb,
456  0xf1, 0x72, 0x71, 0x77, 0xf1, 0xdc, 0xd1, 0xd5, 0xed, 0x66, 0x5b, 0x5b,
457  0x5c, 0x5a, 0x63, 0x6a, 0x57, 0x4d, 0x4c, 0x4c, 0x4d, 0x4f, 0x52, 0x58,
458  0x58, 0x50, 0x4a, 0x4a, 0x4e, 0x4d, 0x4a, 0x4c, 0x4d, 0x4b, 0x44, 0x40,
459  0x43, 0x46, 0x46, 0x46, 0x4a, 0x48, 0x47, 0xcf, 0xb6, 0xbb, 0xbb, 0xb0,
460  0xb8, 0xc5, 0xc7, 0xd8, 0xcd, 0xc1, 0xd9, 0x5d, 0x6a, 0x5b, 0x46, 0x44,
461  0x59, 0xe1, 0xce, 0xc8, 0xcc, 0xc8, 0xc0, 0xca, 0xce, 0xc0, 0xbe, 0xc4,
462  0xce, 0xea, 0x5c, 0x4e, 0x47, 0x42, 0x4b, 0x61, 0x5a, 0x52, 0x5d, 0x61,
463  0x65, 0xf1, 0xdd, 0xcd, 0xc5, 0xc9, 0xd8, 0xe7, 0xf6, 0x5e, 0x56, 0x58,
464  0x58, 0x57, 0x51, 0x47, 0x45, 0x4a, 0x4c, 0x4e, 0x62, 0xea, 0xdd, 0xdf,
465  0xef, 0xe2, 0xd4, 0xd8, 0xd9, 0xce, 0xcd, 0xd0, 0xd8, 0xed, 0x76, 0xfc,
466  0x72, 0x63, 0x70, 0xf3, 0x6b, 0x61, 0x66, 0x64, 0x7b, 0xe1, 0xe0, 0xdc,
467  0xd4, 0xdc, 0x7c, 0x68, 0x60, 0x5d, 0x5c, 0x59, 0x54, 0x51, 0x4d, 0x47,
468  0x45, 0x48, 0x4a, 0x4e, 0x53, 0x55, 0x54, 0x53, 0x4f, 0x4d, 0x4e, 0x51,
469  0x53, 0x53, 0x51, 0x4f, 0x4f, 0x4d, 0x4b, 0x4d, 0x50, 0x4f, 0x4d, 0x48,
470  0x45, 0xe3, 0xbc, 0xc6, 0xc5, 0xb5, 0xba, 0xc4, 0xc4, 0xcc, 0xc6, 0xbc,
471  0xc6, 0xe0, 0xdd, 0xd9, 0x58, 0x46, 0x58, 0xfc, 0xeb, 0xd7, 0xe5, 0xe6,
472  0xcc, 0xd2, 0xe8, 0xd0, 0xc0, 0xc0, 0xca, 0xcc, 0xd4, 0xf3, 0x6c, 0x53,
473  0x4d, 0x68, 0x6c, 0x4f, 0x4d, 0x50, 0x4f, 0x4e, 0x54, 0x66, 0xe6, 0xd4,
474  0xda, 0xf8, 0xeb, 0xe6, 0x79, 0x6b, 0xf8, 0xe2, 0xee, 0x63, 0x55, 0x4e,
475  0x4f, 0x4e, 0x4c, 0x5e, 0xec, 0xfb, 0xf8, 0xdf, 0xd6, 0xd4, 0xd3, 0xcf,
476  0xcc, 0xcb, 0xcf, 0xe1, 0xe9, 0xeb, 0x6a, 0x5f, 0x6b, 0x70, 0x6b, 0x66,
477  0x5e, 0x5b, 0x5f, 0x61, 0x5b, 0x65, 0xfb, 0x6e, 0x5f, 0x5d, 0x58, 0x55,
478  0x54, 0x51, 0x50, 0x54, 0x54, 0x4d, 0x49, 0x4a, 0x49, 0x49, 0x4b, 0x4c,
479  0x4d, 0x4e, 0x4b, 0x4b, 0x4e, 0x53, 0x5c, 0x62, 0x6d, 0xf9, 0xfa, 0x69,
480  0x5f, 0x66, 0x6e, 0x6c, 0x72, 0xea, 0xcf, 0xc7, 0xcb, 0xcc, 0xc4, 0xc4,
481  0xc9, 0xc9, 0xc9, 0xc7, 0xc5, 0xca, 0xd3, 0xd8, 0xd5, 0xe2, 0x78, 0xee,
482  0xe6, 0xea, 0xeb, 0xf6, 0xfe, 0xee, 0xe7, 0xee, 0xed, 0xda, 0xd5, 0xdb,
483  0xdf, 0xe0, 0xe4, 0xe8, 0xf8, 0x6f, 0x79, 0xf8, 0x6f, 0x5e, 0x5d, 0x5e,
484  0x5a, 0x56, 0x57, 0x5b, 0x5f, 0x63, 0x61, 0x64, 0x75, 0x7d, 0x7c, 0xea,
485  0xe4, 0xdf, 0xd5, 0xd2, 0xd5, 0xd4, 0xd4, 0xdc, 0xe1, 0xdf, 0xec, 0xf9,
486  0xf5, 0x7a, 0x6c, 0x68, 0x63, 0x62, 0x68, 0x71, 0x7e, 0x7c, 0x77, 0x72,
487  0x65, 0x5f, 0x61, 0x5e, 0x5c, 0x5e, 0x5e, 0x58, 0x55, 0x51, 0x4d, 0x4c,
488  0x4c, 0x4b, 0x4a, 0x4b, 0x4c, 0x4a, 0x4a, 0x4b, 0x4b, 0x4a, 0x4b, 0x4e,
489  0x51, 0x55, 0x5b, 0x61, 0x6d, 0xff, 0xf5, 0xf2, 0xec, 0xe2, 0xdf, 0xe5,
490  0xe8, 0xe4, 0xe0, 0xe5, 0xe2, 0xd8, 0xd1, 0xcd, 0xcb, 0xca, 0xca, 0xc9,
491  0xcb, 0xce, 0xcd, 0xcc, 0xce, 0xcf, 0xd1, 0xd5, 0xd9, 0xdd, 0xe9, 0xf6,
492  0xf2, 0xf6, 0x7c, 0xfa, 0xf6, 0xf5, 0xef, 0xf3, 0xfa, 0xf5, 0xee, 0xee,
493  0xf1, 0xee, 0xea, 0xea, 0xed, 0xef, 0xf6, 0xfe, 0x77, 0x73, 0x71, 0x6f,
494  0x6e, 0x6c, 0x6d, 0x6f, 0x6b, 0x6e, 0xf7, 0xed, 0xe7, 0xdd, 0xd9, 0xd9,
495  0xd8, 0xd6, 0xda, 0xde, 0xdf, 0xe6, 0xea, 0xed, 0xfd, 0x6f, 0x6d, 0x68,
496  0x5f, 0x5d, 0x5b, 0x59, 0x58, 0x57, 0x56, 0x53, 0x51, 0x4f, 0x4d, 0x4d,
497  0x4d, 0x4d, 0x4c, 0x4d, 0x4d, 0x4d, 0x4d, 0x4d, 0x4e, 0x4d, 0x4d, 0x4d,
498  0x4d, 0x4f, 0x52, 0x51, 0x54, 0x5b, 0x5e, 0x5e, 0x62, 0x6d, 0xfc, 0xee,
499  0xe8, 0xdf, 0xdd, 0xdb, 0xdb, 0xdd, 0xdc, 0xda, 0xdc, 0xdc, 0xd7, 0xd1,
500  0xcf, 0xce, 0xcc, 0xcb, 0xcc, 0xcc, 0xce, 0xd0, 0xd2, 0xd4, 0xd7, 0xd8,
501  0xd8, 0xd6, 0xd9, 0xdc, 0xdd, 0xe2, 0xe8, 0xe7, 0xea, 0xeb, 0xe6, 0xe4,
502  0xe8, 0xec, 0xf0, 0xf7, 0xf9, 0x7a, 0x6f, 0x71, 0x78, 0x77, 0x79, 0xfc,
503  0xfc, 0xf9, 0xf3, 0xf2, 0xeb, 0xe0, 0xdd, 0xdd, 0xda, 0xd8, 0xdb, 0xde,
504  0xdf, 0xe5, 0xef, 0xf7, 0xf9, 0x7c, 0x79, 0x7a, 0x6e, 0x6b, 0x68, 0x61,
505  0x5d, 0x5a, 0x58, 0x57, 0x55, 0x54, 0x53, 0x52, 0x4f, 0x4e, 0x4e, 0x4d,
506  0x4c, 0x4c, 0x4d, 0x4e, 0x50, 0x51, 0x50, 0x51, 0x53, 0x53, 0x53, 0x52,
507  0x53, 0x54, 0x56, 0x59, 0x5c, 0x60, 0x66, 0x69, 0x6e, 0x75, 0x7c, 0xfc,
508  0xf6, 0xee, 0xe9, 0xe2, 0xde, 0xdd, 0xdc, 0xdb, 0xda, 0xdb, 0xd9, 0xd7,
509  0xd5, 0xd3, 0xcf, 0xce, 0xcd, 0xcd, 0xcd, 0xcc, 0xce, 0xd1, 0xd3, 0xd4,
510  0xd7, 0xda, 0xdb, 0xdb, 0xdb, 0xdc, 0xdd, 0xe1, 0xe4, 0xeb, 0xf5, 0xff,
511  0x76, 0x71, 0x6f, 0x6e, 0x72, 0x74, 0x6f, 0x72, 0x72, 0x6d, 0x6d, 0x6e,
512  0x72, 0x7c, 0xf9, 0xea, 0xdf, 0xdb, 0xd8, 0xd6, 0xd5, 0xd6, 0xdb, 0xe0,
513  0xe6, 0xee, 0xf3, 0xfc, 0x70, 0x6b, 0x6a, 0x68, 0x65, 0x60, 0x5e, 0x5b,
514  0x58, 0x58, 0x57, 0x55, 0x54, 0x54, 0x56, 0x56, 0x57, 0x5a, 0x5a, 0x5b,
515  0x5b, 0x59, 0x57, 0x56, 0x55, 0x55, 0x56, 0x56, 0x59, 0x5c, 0x5d, 0x5d,
516  0x5d, 0x5d, 0x5c, 0x5b, 0x5c, 0x5e, 0x5e, 0x5f, 0x62, 0x64, 0x6a, 0x71,
517  0x77, 0xfa, 0xee, 0xeb, 0xe8, 0xe7, 0xe4, 0xe3, 0xe3, 0xe1, 0xdf, 0xde,
518  0xdc, 0xda, 0xd8, 0xd7, 0xd7, 0xd4, 0xd2, 0xd2, 0xd2, 0xd0, 0xd1, 0xd3,
519  0xd2, 0xd4, 0xd7, 0xd7, 0xd6, 0xd9, 0xdb, 0xda, 0xdc, 0xdf, 0xe1, 0xe6,
520  0xe9, 0xed, 0xfb, 0x75, 0x6e, 0x6a, 0x69, 0x67, 0x66, 0x6b, 0x71, 0x7d,
521  0xf4, 0xed, 0xe5, 0xe2, 0xe1, 0xde, 0xde, 0xe1, 0xe8, 0xef, 0xf9, 0x79,
522  0x70, 0x6d, 0x6c, 0x6d, 0x6f, 0x6e, 0x68, 0x67, 0x68, 0x60, 0x5d, 0x5d,
523  0x5c, 0x5a, 0x59, 0x59, 0x5a, 0x5b, 0x5b, 0x5c, 0x5e, 0x5e, 0x5d, 0x5e,
524  0x5d, 0x5d, 0x5d, 0x5d, 0x5e, 0x5f, 0x5f, 0x5e, 0x5f, 0x5f, 0x5f, 0x5f,
525  0x60, 0x62, 0x64, 0x67, 0x69, 0x6b, 0x6d, 0x6d, 0x6e, 0x74, 0x7b, 0x7c,
526  0xfe, 0xf8, 0xf3, 0xed, 0xe9, 0xe6, 0xe3, 0xe3, 0xe1, 0xdf, 0xe1, 0xe1,
527  0xdf, 0xe0, 0xe4, 0xe5, 0xe5, 0xe7, 0xe4, 0xe2, 0xe3, 0xe0, 0xdd, 0xdb,
528  0xda, 0xd8, 0xd7, 0xd7, 0xd6, 0xd6, 0xd7, 0xd8, 0xda, 0xde, 0xdf, 0xdf,
529  0xe3, 0xe7, 0xe5, 0xe2, 0xe0, 0xe3, 0xe7, 0xe7, 0xe9, 0xed, 0xf6, 0x7e,
530  0x79, 0x73, 0x6e, 0x6e, 0x6d, 0x6c, 0x6b, 0x67, 0x67, 0x6a, 0x68, 0x67,
531  0x67, 0x65, 0x64, 0x64, 0x64, 0x63, 0x64, 0x66, 0x66, 0x68, 0x69, 0x67,
532  0x67, 0x67, 0x67, 0x67, 0x65, 0x66, 0x68, 0x69, 0x69, 0x6d, 0x6d, 0x6b,
533  0x6d, 0x6d, 0x6c, 0x6b, 0x69, 0x6d, 0x6e, 0x6c, 0x6a, 0x6a, 0x6b, 0x68,
534  0x68, 0x6b, 0x6a, 0x6a, 0x6f, 0x73, 0x6f, 0x72, 0x77, 0x75, 0x75, 0x78,
535  0x7b, 0x7a, 0xfe, 0xfb, 0xf9, 0xf5, 0xf4, 0xed, 0xe9, 0xea, 0xe9, 0xe6,
536  0xe3, 0xe3, 0xe4, 0xe0, 0xdf, 0xe2, 0xe4, 0xe3, 0xe3, 0xe7, 0xe6, 0xe2,
537  0xe2, 0xe4, 0xe2, 0xe0, 0xdf, 0xdf, 0xdf, 0xdf, 0xde, 0xde, 0xdf, 0xe3,
538  0xe2, 0xe1, 0xe8, 0xed, 0xee, 0xee, 0xf0, 0xf5, 0xf6, 0xf6, 0xf8, 0xfd,
539  0xfd, 0xfc, 0xff, 0x78, 0x73, 0x74, 0x74, 0x71, 0x71, 0x72, 0x75, 0x79,
540  0x7b, 0x7e, 0xfb, 0xf5, 0xf5, 0xfa, 0xfd, 0x7e, 0x75, 0x70, 0x70, 0x70,
541  0x70, 0x70, 0x6f, 0x70, 0x75, 0x71, 0x6f, 0x70, 0x6f, 0x6c, 0x6b, 0x6b,
542  0x6b, 0x6a, 0x68, 0x68, 0x67, 0x67, 0x67, 0x66, 0x68, 0x69, 0x67, 0x69,
543  0x68, 0x67, 0x6a, 0x6a, 0x6b, 0x6b, 0x6c, 0x6e, 0x6c, 0x6a, 0x6a, 0x6c,
544  0x6b, 0x6a, 0x6d, 0x6f, 0x6f, 0x6f, 0x70, 0x72, 0x72, 0x76, 0x7c, 0xfd,
545  0xf5, 0xf0, 0xf2, 0xf4, 0xf2, 0xf0, 0xf1, 0xf9, 0xfb, 0xf1, 0xf1, 0xf2,
546  0xec, 0xe8, 0xe7, 0xe4, 0xdf, 0xde, 0xdc, 0xd9, 0xd8, 0xd8, 0xd8, 0xd7,
547  0xd8, 0xda, 0xdb, 0xde, 0xe2, 0xe3, 0xe4, 0xe4, 0xe6, 0xe8, 0xe7, 0xe7,
548  0xe9, 0xec, 0xef, 0xf2, 0xf3, 0xfb, 0x79, 0x76, 0x77, 0x76, 0x70, 0x6f,
549  0x6f, 0x6c, 0x6d, 0x6e, 0x6f, 0x71, 0x70, 0x75, 0x7e, 0x7c, 0x77, 0xfe,
550  0xf5, 0xf8, 0xf9, 0xf8, 0xfa, 0xfb, 0xfe, 0xfb, 0xfa, 0x7d, 0xfd, 0xfa,
551  0xf9, 0xfd, 0x7b, 0x7c, 0x77, 0x72, 0x72, 0x70, 0x6d, 0x6b, 0x69, 0x66,
552  0x67, 0x65, 0x63, 0x62, 0x60, 0x62, 0x63, 0x62, 0x62, 0x61, 0x62, 0x61,
553  0x60, 0x61, 0x60, 0x61, 0x61, 0x61, 0x63, 0x66, 0x67, 0x68, 0x6b, 0x6d,
554  0x6e, 0x74, 0x7b, 0xfd, 0xfa, 0xf7, 0xf2, 0xef, 0xee, 0xee, 0xed, 0xec,
555  0xea, 0xe9, 0xe8, 0xe6, 0xe6, 0xe7, 0xe9, 0xeb, 0xea, 0xe9, 0xe6, 0xe4,
556  0xe3, 0xe0, 0xdf, 0xde, 0xdd, 0xde, 0xdd, 0xdd, 0xdd, 0xde, 0xde, 0xe0,
557  0xe2, 0xe4, 0xe9, 0xe8, 0xe6, 0xe9, 0xeb, 0xeb, 0xeb, 0xef, 0xf2, 0xf0,
558  0xf4, 0xfa, 0xfe, 0x77, 0x74, 0x74, 0x71, 0x6f, 0x6f, 0x71, 0x6f, 0x6e,
559  0x71, 0x73, 0x76, 0x7c, 0xff, 0xfe, 0xfa, 0xfb, 0xfb, 0xf5, 0xf5, 0xfa,
560  0xfb, 0xfc, 0xfe, 0x7e, 0xff, 0x79, 0x74, 0x76, 0x79, 0x75, 0x74, 0x7a,
561  0x78, 0x75, 0x75, 0x72, 0x6f, 0x6d, 0x6d, 0x6d, 0x69, 0x65, 0x63, 0x63,
562  0x61, 0x5e, 0x5f, 0x60, 0x60, 0x60, 0x61, 0x5f, 0x5e, 0x5f, 0x5f, 0x60,
563  0x63, 0x65, 0x68, 0x69, 0x6a, 0x6c, 0x6c, 0x6e, 0x70, 0x76, 0x7b, 0xfe,
564  0xf5, 0xef, 0xef, 0xef, 0xec, 0xea, 0xeb, 0xe9, 0xe8, 0xec, 0xf0, 0xf4,
565  0xef, 0xeb, 0xe9, 0xea, 0xe6, 0xe0, 0xde, 0xdd, 0xdc, 0xda, 0xd9, 0xd9,
566  0xdb, 0xdd, 0xdd, 0xde, 0xe2, 0xe2, 0xe1, 0xe3, 0xe6, 0xe5, 0xe4, 0xe6,
567  0xe7, 0xe7, 0xe9, 0xed, 0xef, 0xf6, 0xfe, 0xff, 0x7b, 0x72, 0x72, 0x73,
568  0x6f, 0x6e, 0x6f, 0x73, 0x6f, 0x6d, 0x6c, 0x6b, 0x6a, 0x6a, 0x6e, 0x73,
569  0x75, 0x7a, 0x7e, 0xfa, 0xf7, 0xf2, 0xef, 0xee, 0xee, 0xf0, 0xf2, 0xf4,
570  0xf9, 0xf9, 0xfc, 0xfe, 0x7d, 0x79, 0x77, 0x72, 0x73, 0x71, 0x6d, 0x6d,
571  0x6d, 0x68, 0x65, 0x67, 0x66, 0x60, 0x5f, 0x5e, 0x5f, 0x5e, 0x5d, 0x5d,
572  0x5e, 0x5e, 0x5e, 0x5e, 0x60, 0x61, 0x62, 0x66, 0x66, 0x64, 0x67, 0x69,
573  0x66, 0x67, 0x6a, 0x6b, 0x6a, 0x6c, 0x71, 0x72, 0x74, 0x76, 0x75, 0x7a,
574  0x79, 0x7a, 0xf8, 0xef, 0xeb, 0xe7, 0xdf, 0xdc, 0xda, 0xd7, 0xd4, 0xd2,
575  0xd0, 0xd0, 0xd1, 0xd3, 0xd3, 0xd6, 0xda, 0xdd, 0xde, 0xdf, 0xe5, 0xe5,
576  0xe5, 0xe9, 0xeb, 0xeb, 0xef, 0xf2, 0xf5, 0x7d, 0x72, 0x6f, 0x6e, 0x6d,
577  0x6c, 0x6e, 0x73, 0x72, 0x72, 0x73, 0x75, 0x78, 0x77, 0x74, 0x74, 0x72,
578  0x72, 0x73, 0x6f, 0x6f, 0x72, 0x74, 0x7d, 0xf3, 0xef, 0xec, 0xe7, 0xe5,
579  0xe6, 0xe6, 0xe7, 0xe9, 0xea, 0xee, 0xfa, 0xfd, 0xfd, 0x7a, 0x79, 0xfe,
580  0xfd, 0x78, 0x74, 0x71, 0x6b, 0x66, 0x65, 0x65, 0x5f, 0x5e, 0x5f, 0x5e,
581  0x5d, 0x5d, 0x5e, 0x5e, 0x5d, 0x5e, 0x5e, 0x5f, 0x5f, 0x5e, 0x5d, 0x5d,
582  0x5d, 0x5d, 0x5d, 0x5d, 0x5c, 0x5c, 0x5c, 0x5e, 0x5e, 0x5e, 0x60, 0x5f,
583  0x62, 0x67, 0x68, 0x6d, 0xfd, 0xee, 0xe7, 0xdd, 0xd6, 0xd2, 0xcf, 0xcd,
584  0xcb, 0xcb, 0xcb, 0xca, 0xcb, 0xcd, 0xcf, 0xd0, 0xd4, 0xd8, 0xdb, 0xdf,
585  0xe9, 0xea, 0xed, 0xfc, 0x7b, 0x7a, 0x71, 0x6b, 0x68, 0x65, 0x60, 0x5f,
586  0x5f, 0x5f, 0x5f, 0x63, 0x67, 0x6b, 0x77, 0xf8, 0xef, 0xec, 0xe8, 0xe5,
587  0xe6, 0xe9, 0xed, 0xf4, 0xfe, 0x76, 0x6f, 0x6f, 0x72, 0x79, 0xfb, 0xee,
588  0xe7, 0xe2, 0xdf, 0xde, 0xde, 0xe0, 0xe7, 0xef, 0xfd, 0x74, 0x6e, 0x71,
589  0x72, 0x75, 0x7c, 0xfc, 0xfa, 0x7e, 0x77, 0x6f, 0x67, 0x60, 0x5d, 0x5a,
590  0x58, 0x58, 0x57, 0x57, 0x5a, 0x5b, 0x5b, 0x5c, 0x5c, 0x5c, 0x59, 0x59,
591  0x59, 0x57, 0x56, 0x55, 0x55, 0x55, 0x56, 0x56, 0x57, 0x5a, 0x5b, 0x5d,
592  0x61, 0x64, 0x64, 0x68, 0x6f, 0x7c, 0xee, 0xe4, 0xdc, 0xd3, 0xce, 0xcc,
593  0xc9, 0xc6, 0xc5, 0xc5, 0xc5, 0xc6, 0xc9, 0xcb, 0xce, 0xd4, 0xd8, 0xdc,
594  0xe5, 0xed, 0xf4, 0xfd, 0x73, 0x6a, 0x66, 0x64, 0x5f, 0x5d, 0x5c, 0x5b,
595  0x5c, 0x5c, 0x5d, 0x64, 0x6f, 0x7b, 0xf7, 0xe6, 0xdf, 0xdf, 0xdc, 0xdb,
596  0xdc, 0xdf, 0xe5, 0xe9, 0xf2, 0xfe, 0x74, 0x6b, 0x6a, 0x68, 0x63, 0x61,
597  0x65, 0x67, 0x63, 0x63, 0x67, 0x6c, 0x73, 0x7c, 0xef, 0xe3, 0xdf, 0xdc,
598  0xd8, 0xd4, 0xd4, 0xd6, 0xd8, 0xdb, 0xe0, 0xe8, 0xf7, 0x6e, 0x66, 0x5e,
599  0x5a, 0x59, 0x58, 0x59, 0x57, 0x57, 0x59, 0x58, 0x56, 0x55, 0x54, 0x53,
600  0x50, 0x50, 0x51, 0x53, 0x54, 0x55, 0x57, 0x58, 0x57, 0x55, 0x54, 0x53,
601  0x51, 0x4f, 0x50, 0x50, 0x50, 0x52, 0x52, 0x57, 0x69, 0x7c, 0xfa, 0xd8,
602  0xca, 0xc9, 0xc7, 0xbf, 0xbf, 0xc0, 0xbf, 0xc1, 0xc4, 0xc5, 0xca, 0xce,
603  0xcf, 0xd2, 0xd7, 0xe1, 0xe6, 0xe6, 0x74, 0x60, 0x63, 0x5c, 0x53, 0x52,
604  0x52, 0x53, 0x58, 0x5c, 0x5f, 0x74, 0xe6, 0xde, 0xdd, 0xd7, 0xd1, 0xd5,
605  0xd9, 0xd7, 0xda, 0xe2, 0xe2, 0xe6, 0xee, 0xf6, 0x77, 0x6a, 0x65, 0x5f,
606  0x58, 0x51, 0x50, 0x4f, 0x4d, 0x4c, 0x4f, 0x53, 0x56, 0x60, 0x7a, 0xec,
607  0xdf, 0xd6, 0xd0, 0xcd, 0xcc, 0xcc, 0xcb, 0xcb, 0xcd, 0xcf, 0xd3, 0xd6,
608  0xdd, 0xe9, 0xf1, 0x76, 0x63, 0x5d, 0x58, 0x53, 0x52, 0x50, 0x4e, 0x4f,
609  0x51, 0x51, 0x4f, 0x52, 0x57, 0x56, 0x53, 0x55, 0x57, 0x55, 0x54, 0x54,
610  0x53, 0x51, 0x4f, 0x4d, 0x4e, 0x4d, 0x4b, 0x4a, 0x4c, 0x4c, 0x4b, 0x4c,
611  0x4d, 0x4d, 0x56, 0x7a, 0xf8, 0xde, 0xc6, 0xc0, 0xc1, 0xbb, 0xb8, 0xbb,
612  0xbc, 0xbd, 0xc1, 0xc5, 0xca, 0xce, 0xd5, 0xd8, 0xd8, 0xee, 0x75, 0xf0,
613  0x62, 0x51, 0x55, 0x52, 0x4d, 0x4f, 0x55, 0x5c, 0x6e, 0xe7, 0xd8, 0xd2,
614  0xcb, 0xc9, 0xce, 0xcd, 0xcc, 0xd6, 0xde, 0xdc, 0xe1, 0xf0, 0xfd, 0x75,
615  0x69, 0x5d, 0x56, 0x4e, 0x4b, 0x4a, 0x47, 0x44, 0x49, 0x4e, 0x4f, 0x58,
616  0x6e, 0xef, 0xe4, 0xdb, 0xd5, 0xd2, 0xcf, 0xce, 0xd0, 0xcd, 0xc8, 0xcc,
617  0xcd, 0xc9, 0xcd, 0xd9, 0xdf, 0xf4, 0x61, 0x58, 0x56, 0x51, 0x51, 0x57,
618  0x58, 0x59, 0x66, 0x67, 0x5d, 0x5e, 0x61, 0x59, 0x54, 0x56, 0x54, 0x52,
619  0x51, 0x51, 0x4f, 0x4f, 0x4d, 0x48, 0x46, 0x45, 0x3f, 0x3e, 0x3f, 0x40,
620  0x41, 0x44, 0x49, 0x4c, 0x4e, 0x4f, 0x53, 0xfe, 0xd3, 0xd5, 0xc7, 0xb7,
621  0xb7, 0xb9, 0xb4, 0xb5, 0xb9, 0xbd, 0xc7, 0xce, 0xd7, 0xef, 0x66, 0x5f,
622  0x7d, 0x64, 0x4e, 0x5c, 0x5e, 0x4c, 0x4e, 0x53, 0x58, 0x6f, 0xed, 0xd7,
623  0xc9, 0xc1, 0xbf, 0xc4, 0xbf, 0xc0, 0xcf, 0xd7, 0xd5, 0xe8, 0x76, 0x67,
624  0x62, 0x61, 0x58, 0x4f, 0x4b, 0x4a, 0x49, 0x42, 0x44, 0x4d, 0x4f, 0x58,
625  0xf7, 0xdb, 0xd3, 0xd1, 0xd2, 0xd3, 0xd4, 0xd6, 0xe0, 0xdd, 0xcf, 0xd3,
626  0xdb, 0xcf, 0xcf, 0xdd, 0xed, 0xfb, 0x6d, 0x5f, 0x5a, 0x5c, 0x68, 0xf9,
627  0xff, 0xfc, 0xde, 0xe2, 0x6e, 0x69, 0x69, 0x5d, 0x56, 0x54, 0x56, 0x55,
628  0x52, 0x4d, 0x49, 0x49, 0x43, 0x3e, 0x3e, 0x3f, 0x3d, 0x3c, 0x3e, 0x41,
629  0x41, 0x41, 0x43, 0x48, 0x4a, 0x49, 0x4b, 0x51, 0x72, 0xcd, 0xc6, 0xbf,
630  0xb3, 0xb1, 0xb7, 0xb6, 0xb8, 0xc0, 0xcb, 0xd7, 0xe6, 0xea, 0xf8, 0x6e,
631  0x66, 0xfc, 0x6a, 0x4b, 0x4f, 0x59, 0x4c, 0x53, 0xfd, 0xdb, 0xca, 0xc3,
632  0xbf, 0xbd, 0xbd, 0xc1, 0xcd, 0xce, 0xcf, 0xfb, 0xf9, 0xe5, 0xfe, 0x77,
633  0x63, 0x59, 0x53, 0x4c, 0x47, 0x44, 0x4b, 0x55, 0x55, 0x78, 0xd4, 0xd1,
634  0xcf, 0xd1, 0xd6, 0xda, 0xea, 0x72, 0x7b, 0xe8, 0xe8, 0xec, 0xdc, 0xdc,
635  0xf9, 0x70, 0x6b, 0x60, 0x61, 0x6d, 0xef, 0xdf, 0xd4, 0xd1, 0xd4, 0xd3,
636  0xdb, 0x7d, 0x6d, 0x65, 0x59, 0x57, 0x5d, 0x5f, 0x5b, 0x58, 0x50, 0x4a,
637  0x46, 0x40, 0x3c, 0x3d, 0x3d, 0x3c, 0x3e, 0x40, 0x3f, 0x3e, 0x3e, 0x3d,
638  0x3d, 0x3e, 0x41, 0x45, 0x4b, 0x57, 0x5e, 0xdc, 0xbf, 0xbf, 0xbf, 0xb3,
639  0xb2, 0xbb, 0xb9, 0xbc, 0xc5, 0xca, 0xd9, 0xf0, 0xe9, 0xee, 0x5c, 0x52,
640  0x6c, 0x5b, 0x4a, 0x5a, 0x6f, 0x6b, 0xdc, 0xce, 0xc8, 0xbf, 0xbe, 0xc2,
641  0xc2, 0xc0, 0xca, 0xdb, 0xd2, 0xd9, 0x76, 0x7e, 0x6c, 0x5e, 0x5b, 0x4f,
642  0x4b, 0x4e, 0x53, 0x4f, 0x56, 0xeb, 0xdf, 0xe0, 0xd1, 0xcf, 0xd3, 0xd7,
643  0xe2, 0xe9, 0xe2, 0xe6, 0x7d, 0xf3, 0xe1, 0xf9, 0x67, 0x6a, 0x64, 0x61,
644  0x66, 0x6a, 0xf0, 0xdb, 0xdc, 0xdf, 0xd8, 0xda, 0xf7, 0x70, 0x76, 0x68,
645  0x61, 0x61, 0x5d, 0x5e, 0x5c, 0x4f, 0x4b, 0x4b, 0x46, 0x3f, 0x3f, 0x40,
646  0x3e, 0x3d, 0x3e, 0x3d, 0x3c, 0x3c, 0x3a, 0x3b, 0x3e, 0x3f, 0x41, 0x49,
647  0x4e, 0x4f, 0x51, 0xf0, 0xc2, 0xbe, 0xbd, 0xb1, 0xaf, 0xb6, 0xb9, 0xbd,
648  0xc9, 0xcf, 0xec, 0x6c, 0xea, 0xe5, 0x6b, 0x59, 0x6e, 0x62, 0x4a, 0x51,
649  0x65, 0x7b, 0xd2, 0xcb, 0xc2, 0xbb, 0xbc, 0xc2, 0xc6, 0xc8, 0xd4, 0xff,
650  0xec, 0xeb, 0x72, 0x6e, 0x5d, 0x5a, 0x57, 0x4a, 0x47, 0x4d, 0x57, 0x5c,
651  0x79, 0xd3, 0xcc, 0xcc, 0xcd, 0xd4, 0xd5, 0xdb, 0xef, 0xdf, 0xd4, 0xd7,
652  0xde, 0xdd, 0xe4, 0x6c, 0x60, 0x5d, 0x5e, 0x73, 0xfe, 0xf1, 0xdc, 0xd9,
653  0xeb, 0xfc, 0xf3, 0x6b, 0x5c, 0x5e, 0x5f, 0x5e, 0x5c, 0x54, 0x4e, 0x4a,
654  0x43, 0x3e, 0x3d, 0x3e, 0x3c, 0x3c, 0x3d, 0x3c, 0x3a, 0x38, 0x36, 0x37,
655  0x3a, 0x3c, 0x3e, 0x49, 0x53, 0x50, 0x5e, 0xcc, 0xbc, 0xbc, 0xb8, 0xae,
656  0xaf, 0xb8, 0xba, 0xc1, 0xca, 0xd2, 0x68, 0x68, 0xe5, 0x77, 0x57, 0x59,
657  0x72, 0x59, 0x4e, 0x6d, 0xe4, 0xd1, 0xc6, 0xc4, 0xbc, 0xba, 0xc0, 0xc9,
658  0xcb, 0xce, 0xef, 0x63, 0x6f, 0x64, 0x5b, 0x52, 0x4b, 0x4f, 0x4d, 0x46,
659  0x4c, 0x61, 0xfd, 0xe7, 0xd1, 0xc8, 0xc8, 0xca, 0xcf, 0xd4, 0xd0, 0xd7,
660  0xde, 0xd5, 0xd1, 0xdc, 0xe9, 0xf6, 0x71, 0x69, 0x61, 0x65, 0xeb, 0xde,
661  0xe6, 0xe2, 0xdb, 0xe4, 0x76, 0x6e, 0x6c, 0x65, 0x61, 0x5a, 0x57, 0x54,
662  0x4a, 0x42, 0x3e, 0x3c, 0x39, 0x37, 0x37, 0x37, 0x36, 0x36, 0x34, 0x34,
663  0x36, 0x36, 0x39, 0x3d, 0x43, 0x4a, 0x78, 0xbc, 0xb6, 0xb8, 0xae, 0xac,
664  0xb5, 0xb9, 0xbe, 0xc9, 0xca, 0xdb, 0x76, 0xe9, 0xec, 0x55, 0x46, 0x4f,
665  0x50, 0x48, 0x5e, 0xdb, 0xcb, 0xbd, 0xbd, 0xbd, 0xb8, 0xbd, 0xc8, 0xcb,
666  0xca, 0xd3, 0xf4, 0xf1, 0x6b, 0x53, 0x4c, 0x40, 0x3f, 0x45, 0x42, 0x46,
667  0x5b, 0xef, 0xde, 0xd4, 0xcd, 0xcb, 0xcb, 0xce, 0xcf, 0xc7, 0xc4, 0xcb,
668  0xcb, 0xca, 0xd5, 0xf0, 0x6d, 0x65, 0x6a, 0x6d, 0x69, 0xf1, 0xda, 0xe6,
669  0x78, 0xef, 0xf2, 0x68, 0x66, 0x6b, 0x69, 0x65, 0x57, 0x4c, 0x48, 0x3f,
670  0x3a, 0x37, 0x36, 0x34, 0x33, 0x33, 0x33, 0x32, 0x30, 0x2f, 0x33, 0x36,
671  0x37, 0x41, 0xce, 0xb7, 0xb7, 0xaf, 0xaa, 0xae, 0xb8, 0xbd, 0xc8, 0xc8,
672  0xcc, 0xf0, 0xde, 0xd2, 0x64, 0x46, 0x45, 0x49, 0x43, 0x4a, 0xfa, 0xce,
673  0xbc, 0xb9, 0xbc, 0xb7, 0xb9, 0xc5, 0xcb, 0xc7, 0xc9, 0xd4, 0xdd, 0xeb,
674  0x5f, 0x4e, 0x3f, 0x3c, 0x41, 0x43, 0x43, 0x58, 0xe2, 0xda, 0xd5, 0xcf,
675  0xce, 0xcc, 0xcc, 0xcb, 0xc4, 0xbf, 0xc2, 0xca, 0xcb, 0xd6, 0x69, 0x59,
676  0x58, 0x58, 0x5f, 0x67, 0xfc, 0xde, 0xe5, 0x73, 0x71, 0xf9, 0x6e, 0x63,
677  0x79, 0x7c, 0x62, 0x52, 0x45, 0x3e, 0x3a, 0x34, 0x32, 0x32, 0x32, 0x31,
678  0x32, 0x32, 0x31, 0x31, 0x33, 0x35, 0x3f, 0xd7, 0xba, 0xb7, 0xaf, 0xaa,
679  0xaf, 0xb9, 0xbf, 0xce, 0xd0, 0xd3, 0xee, 0xdb, 0xd8, 0x5f, 0x48, 0x44,
680  0x45, 0x42, 0x4d, 0xe7, 0xc9, 0xbb, 0xb8, 0xba, 0xb8, 0xbb, 0xc8, 0xcb,
681  0xca, 0xcd, 0xd6, 0xdd, 0xf8, 0x59, 0x49, 0x3d, 0x3c, 0x40, 0x43, 0x49,
682  0x6b, 0xda, 0xd3, 0xce, 0xce, 0xcc, 0xc4, 0xc5, 0xc6, 0xbd, 0xbb, 0xc1,
683  0xc8, 0xcf, 0xe7, 0x62, 0x53, 0x4f, 0x5b, 0x6d, 0x62, 0x72, 0xe3, 0x6e,
684  0x59, 0x5c, 0x5b, 0x57, 0x54, 0x50, 0x4c, 0x46, 0x3d, 0x37, 0x34, 0x31,
685  0x2e, 0x2e, 0x2f, 0x2f, 0x2f, 0x31, 0x34, 0x37, 0x45, 0xcc, 0xbc, 0xb8,
686  0xad, 0xac, 0xb1, 0xb6, 0xbf, 0xca, 0xc9, 0xd8, 0xeb, 0xd6, 0xde, 0x56,
687  0x49, 0x4a, 0x48, 0x47, 0x5b, 0xdf, 0xc6, 0xba, 0xbc, 0xbb, 0xb8, 0xbe,
688  0xca, 0xcb, 0xcd, 0xd3, 0xdf, 0xfc, 0x5e, 0x50, 0x46, 0x3d, 0x3e, 0x43,
689  0x45, 0x4e, 0x7e, 0xd8, 0xce, 0xcc, 0xc7, 0xbf, 0xbf, 0xc1, 0xbe, 0xbb,
690  0xbd, 0xc6, 0xcd, 0xd2, 0xef, 0x59, 0x51, 0x53, 0x5c, 0x5b, 0x5a, 0x75,
691  0x7b, 0x5e, 0x58, 0x59, 0x57, 0x4d, 0x48, 0x44, 0x3f, 0x3a, 0x34, 0x30,
692  0x2f, 0x2d, 0x2c, 0x2d, 0x2e, 0x30, 0x31, 0x3a, 0xdd, 0xbf, 0xbf, 0xb3,
693  0xad, 0xb2, 0xb8, 0xbd, 0xc7, 0xc4, 0xcb, 0xee, 0xd9, 0xd7, 0x56, 0x46,
694  0x4a, 0x4b, 0x4a, 0x5b, 0xdd, 0xc9, 0xbb, 0xbc, 0xbe, 0xb7, 0xbc, 0xc8,
695  0xc6, 0xc6, 0xcd, 0xd9, 0xfa, 0x5d, 0x52, 0x46, 0x3d, 0x3f, 0x47, 0x46,
696  0x4b, 0x6d, 0xe1, 0xd8, 0xce, 0xca, 0xc2, 0xbd, 0xc0, 0xbf, 0xbb, 0xbe,
697  0xc9, 0xcf, 0xda, 0xfb, 0x5c, 0x53, 0x55, 0x5f, 0x5e, 0x59, 0x6e, 0xff,
698  0x5c, 0x56, 0x57, 0x50, 0x4a, 0x42, 0x3d, 0x3b, 0x37, 0x30, 0x2e, 0x2f,
699  0x2d, 0x2c, 0x2f, 0x30, 0x33, 0x4e, 0xc8, 0xc5, 0xb9, 0xae, 0xb3, 0xb9,
700  0xba, 0xca, 0xcc, 0xc8, 0xef, 0xf1, 0xd4, 0x62, 0x49, 0x4c, 0x4c, 0x46,
701  0x56, 0xe6, 0xd2, 0xbe, 0xbb, 0xbe, 0xb9, 0xba, 0xc6, 0xc7, 0xc6, 0xcf,
702  0xda, 0xeb, 0x5b, 0x4f, 0x49, 0x3d, 0x3d, 0x43, 0x43, 0x49, 0x65, 0xe2,
703  0xd1, 0xc8, 0xc6, 0xbf, 0xbb, 0xbd, 0xbe, 0xba, 0xbc, 0xc5, 0xcb, 0xd6,
704  0xf8, 0x64, 0x58, 0x55, 0x61, 0x66, 0x5b, 0x6c, 0xf6, 0x5c, 0x54, 0x53,
705  0x4a, 0x44, 0x3d, 0x38, 0x35, 0x31, 0x2e, 0x2d, 0x2d, 0x2d, 0x2e, 0x30,
706  0x3b, 0xdf, 0xca, 0xc7, 0xb2, 0xb0, 0xbc, 0xbd, 0xc5, 0xcf, 0xca, 0xdc,
707  0xfd, 0xd3, 0xe0, 0x4f, 0x4c, 0x54, 0x4c, 0x4d, 0xef, 0xcf, 0xc2, 0xba,
708  0xbc, 0xba, 0xb7, 0xc1, 0xcb, 0xc5, 0xcc, 0xdb, 0xe8, 0x6b, 0x56, 0x4b,
709  0x3f, 0x3c, 0x41, 0x44, 0x44, 0x54, 0xe2, 0xd5, 0xcd, 0xc8, 0xc3, 0xbf,
710  0xbf, 0xc1, 0xbe, 0xbd, 0xc5, 0xce, 0xd3, 0xe9, 0x5c, 0x54, 0x54, 0x5a,
711  0x64, 0x63, 0x7c, 0xe5, 0x70, 0x57, 0x51, 0x4c, 0x40, 0x39, 0x35, 0x34,
712  0x31, 0x2d, 0x2d, 0x2f, 0x2f, 0x2f, 0x3f, 0xd9, 0xcd, 0xc3, 0xb3, 0xb4,
713  0xbb, 0xbe, 0xcf, 0xd4, 0xcc, 0x75, 0x6c, 0xd5, 0x71, 0x4c, 0x4e, 0x4f,
714  0x4b, 0x51, 0x78, 0xd4, 0xbf, 0xbb, 0xbd, 0xb8, 0xb7, 0xc3, 0xca, 0xc9,
715  0xd3, 0xdf, 0xfa, 0x5d, 0x5a, 0x4e, 0x3f, 0x3f, 0x46, 0x44, 0x46, 0x5b,
716  0xe0, 0xcd, 0xc7, 0xc5, 0xbf, 0xbd, 0xc2, 0xc5, 0xbf, 0xc2, 0xca, 0xce,
717  0xd5, 0xec, 0x60, 0x54, 0x51, 0x59, 0x5b, 0x58, 0x69, 0xf9, 0x5c, 0x4e,
718  0x49, 0x41, 0x3a, 0x33, 0x2f, 0x30, 0x2e, 0x2c, 0x2f, 0x34, 0x39, 0x5a,
719  0xd1, 0xce, 0xba, 0xb5, 0xbe, 0xbd, 0xbf, 0xd5, 0xd0, 0xd6, 0x7a, 0xe8,
720  0xf6, 0x52, 0x4e, 0x54, 0x4d, 0x4e, 0xf3, 0xd3, 0xc8, 0xbc, 0xba, 0xb9,
721  0xb8, 0xbe, 0xc5, 0xc5, 0xd0, 0xee, 0xf9, 0x5f, 0x4f, 0x4b, 0x43, 0x3f,
722  0x41, 0x41, 0x43, 0x4e, 0x73, 0xdc, 0xcc, 0xc1, 0xbe, 0xbd, 0xbd, 0xc1,
723  0xc1, 0xc3, 0xce, 0xd5, 0xd9, 0x7b, 0x5d, 0x58, 0x51, 0x50, 0x53, 0x56,
724  0x5f, 0x6d, 0x5c, 0x50, 0x4d, 0x43, 0x3a, 0x34, 0x2f, 0x2e, 0x2e, 0x2e,
725  0x32, 0x3b, 0x5f, 0xd0, 0xcf, 0xbc, 0xb7, 0xc4, 0xc5, 0xc6, 0xd8, 0xcf,
726  0xd5, 0xf8, 0xda, 0xf5, 0x4d, 0x4d, 0x4e, 0x48, 0x4b, 0x78, 0xd1, 0xc6,
727  0xbc, 0xba, 0xb9, 0xb8, 0xbf, 0xc7, 0xc5, 0xcf, 0xef, 0xee, 0x6c, 0x55,
728  0x4c, 0x42, 0x3f, 0x42, 0x3f, 0x43, 0x57, 0xeb, 0xd6, 0xc7, 0xbe, 0xbc,
729  0xbb, 0xbe, 0xbf, 0xbe, 0xc6, 0xd1, 0xcf, 0xdb, 0x67, 0x57, 0x50, 0x4e,
730  0x4d, 0x4c, 0x4f, 0x57, 0x55, 0x4d, 0x4b, 0x45, 0x3a, 0x32, 0x2f, 0x2e,
731  0x2d, 0x2f, 0x34, 0x42, 0xdd, 0xca, 0xc9, 0xb9, 0xba, 0xcb, 0xcb, 0xce,
732  0xdf, 0xd4, 0xdf, 0xe7, 0xda, 0x62, 0x4b, 0x4c, 0x4b, 0x48, 0x52, 0xdd,
733  0xc7, 0xbe, 0xb9, 0xb7, 0xb6, 0xb9, 0xc3, 0xc8, 0xc8, 0xd8, 0xf0, 0xef,
734  0x69, 0x55, 0x4a, 0x41, 0x42, 0x42, 0x40, 0x4b, 0x74, 0xd5, 0xc9, 0xbf,
735  0xb9, 0xb9, 0xbd, 0xbe, 0xc0, 0xc9, 0xd2, 0xda, 0xde, 0x7c, 0x55, 0x4e,
736  0x4d, 0x47, 0x44, 0x47, 0x4a, 0x4a, 0x47, 0x43, 0x3f, 0x37, 0x2f, 0x2e,
737  0x2e, 0x2e, 0x31, 0x3d, 0x78, 0xc5, 0xc5, 0xbb, 0xb5, 0xc0, 0xce, 0xcd,
738  0xde, 0xdf, 0xdf, 0xed, 0xd3, 0xde, 0x53, 0x4e, 0x4e, 0x48, 0x49, 0x62,
739  0xcf, 0xc1, 0xbb, 0xb7, 0xb5, 0xb7, 0xbf, 0xca, 0xc9, 0xd6, 0x6d, 0xfb,
740  0xfb, 0x5e, 0x53, 0x48, 0x43, 0x42, 0x3e, 0x43, 0x5c, 0xe2, 0xcd, 0xbd,
741  0xb7, 0xb9, 0xbb, 0xbc, 0xc4, 0xcb, 0xd3, 0xdf, 0xdc, 0xe8, 0x67, 0x68,
742  0x5c, 0x4c, 0x4a, 0x48, 0x45, 0x43, 0x42, 0x3e, 0x37, 0x31, 0x2e, 0x2c,
743  0x2c, 0x2f, 0x36, 0x4e, 0xc8, 0xc1, 0xba, 0xb0, 0xba, 0xc6, 0xc9, 0xe7,
744  0x72, 0xf5, 0x66, 0xeb, 0xdf, 0x5d, 0x52, 0x50, 0x47, 0x44, 0x4f, 0xea,
745  0xcb, 0xbe, 0xb7, 0xb3, 0xb3, 0xb8, 0xc1, 0xc8, 0xd8, 0x63, 0x5f, 0x63,
746  0x59, 0x53, 0x4d, 0x49, 0x45, 0x40, 0x46, 0x56, 0x73, 0xcb, 0xbb, 0xb8,
747  0xb6, 0xb5, 0xbb, 0xc2, 0xcb, 0xdd, 0xf5, 0x7e, 0x6b, 0x69, 0x6b, 0x5c,
748  0x51, 0x4c, 0x44, 0x3e, 0x3d, 0x39, 0x31, 0x30, 0x30, 0x2d, 0x2e, 0x33,
749  0x35, 0x48, 0xcc, 0xc8, 0xbd, 0xb0, 0xb9, 0xc1, 0xbf, 0xdc, 0x71, 0xf6,
750  0x53, 0x5d, 0xf3, 0x55, 0x53, 0x5c, 0x4c, 0x4b, 0x5b, 0xee, 0xce, 0xbf,
751  0xb8, 0xb3, 0xb0, 0xb4, 0xba, 0xbd, 0xcc, 0x71, 0x60, 0x55, 0x4b, 0x4c,
752  0x49, 0x46, 0x49, 0x4b, 0x4b, 0x59, 0xde, 0xcb, 0xc2, 0xb9, 0xb6, 0xb8,
753  0xbb, 0xbf, 0xcc, 0xdb, 0x6c, 0x5c, 0x5f, 0x57, 0x50, 0x53, 0x4e, 0x45,
754  0x3e, 0x39, 0x32, 0x2e, 0x2c, 0x2c, 0x2c, 0x2e, 0x35, 0x3c, 0x6e, 0xc0,
755  0xc0, 0xb8, 0xaf, 0xb9, 0xbf, 0xc1, 0xdd, 0xef, 0x7b, 0x4e, 0x5c, 0x5e,
756  0x47, 0x4c, 0x51, 0x49, 0x4d, 0x69, 0xd9, 0xc7, 0xbc, 0xb6, 0xb2, 0xb1,
757  0xb5, 0xbb, 0xbe, 0xcc, 0x7a, 0x66, 0x57, 0x4a, 0x4a, 0x47, 0x47, 0x51,
758  0x4e, 0x51, 0xe1, 0xce, 0xcb, 0xbd, 0xb8, 0xb9, 0xb9, 0xbb, 0xc3, 0xcb,
759  0xdc, 0x64, 0x69, 0x5e, 0x4d, 0x4f, 0x50, 0x43, 0x3e, 0x37, 0x2e, 0x2c,
760  0x2a, 0x29, 0x2a, 0x2e, 0x32, 0x3c, 0xe0, 0xbe, 0xbe, 0xb4, 0xae, 0xb9,
761  0xbd, 0xc2, 0xe8, 0xeb, 0x69, 0x4b, 0x60, 0x58, 0x43, 0x4d, 0x4d, 0x45,
762  0x4d, 0x64, 0xd9, 0xc4, 0xbc, 0xb5, 0xaf, 0xaf, 0xb5, 0xb9, 0xbd, 0xce,
763  0xfd, 0x6a, 0x52, 0x4b, 0x4b, 0x48, 0x52, 0x59, 0x4e, 0x7c, 0xd3, 0xda,
764  0xc6, 0xbb, 0xbc, 0xbb, 0xbb, 0xbf, 0xc5, 0xd0, 0xfe, 0x6a, 0x5f, 0x4e,
765  0x4c, 0x4f, 0x46, 0x3d, 0x37, 0x2e, 0x2c, 0x2a, 0x27, 0x29, 0x2e, 0x2f,
766  0x3c, 0xcf, 0xbd, 0xbc, 0xb0, 0xae, 0xb7, 0xbb, 0xc4, 0xdd, 0xdf, 0x5c,
767  0x4c, 0x6b, 0x52, 0x42, 0x4d, 0x4b, 0x42, 0x4b, 0x5d, 0xdd, 0xc4, 0xbc,
768  0xb5, 0xae, 0xaf, 0xb6, 0xb7, 0xbc, 0xd3, 0xfe, 0x62, 0x4e, 0x4a, 0x4b,
769  0x4d, 0x57, 0x5b, 0x5e, 0xe9, 0xd9, 0xd4, 0xc8, 0xbf, 0xbd, 0xbd, 0xbe,
770  0xbf, 0xc8, 0xd8, 0xfe, 0x5d, 0x4f, 0x49, 0x45, 0x42, 0x3d, 0x34, 0x2e,
771  0x2d, 0x2a, 0x27, 0x29, 0x2d, 0x2f, 0x3c, 0xce, 0xbd, 0xb9, 0xad, 0xad,
772  0xb5, 0xb8, 0xc6, 0xe6, 0xe0, 0x54, 0x4d, 0xfb, 0x52, 0x48, 0x58, 0x4c,
773  0x44, 0x4b, 0x54, 0xef, 0xc8, 0xbd, 0xb4, 0xae, 0xae, 0xb3, 0xb5, 0xbc,
774  0xd7, 0x6b, 0x57, 0x48, 0x4c, 0x55, 0x4f, 0x6a, 0xe4, 0x6d, 0xe3, 0xd1,
775  0xdb, 0xcd, 0xc3, 0xc4, 0xbf, 0xbd, 0xc3, 0xc9, 0xd5, 0x65, 0x51, 0x4a,
776  0x3f, 0x3c, 0x39, 0x30, 0x2d, 0x2d, 0x29, 0x28, 0x2b, 0x2c, 0x2f, 0x49,
777  0xcc, 0xc0, 0xb2, 0xaa, 0xad, 0xb2, 0xb7, 0xca, 0xde, 0x67, 0x49, 0x57,
778  0x5d, 0x49, 0x55, 0x5b, 0x48, 0x4a, 0x4d, 0x52, 0xe6, 0xcd, 0xbf, 0xb3,
779  0xaf, 0xb0, 0xb0, 0xb4, 0xbf, 0xd3, 0x72, 0x4e, 0x4b, 0x4f, 0x4e, 0x61,
780  0xdb, 0xec, 0xe1, 0xd1, 0xe9, 0xe7, 0xd0, 0xd0, 0xc8, 0xc2, 0xc4, 0xc2,
781  0xc8, 0xdf, 0x6d, 0x52, 0x41, 0x3b, 0x34, 0x2e, 0x2d, 0x2b, 0x29, 0x2a,
782  0x2c, 0x2c, 0x33, 0x57, 0xd6, 0xc5, 0xaf, 0xac, 0xaf, 0xaf, 0xb7, 0xc6,
783  0xcd, 0x5a, 0x48, 0x5b, 0x49, 0x44, 0x5b, 0x4f, 0x4a, 0x53, 0x4f, 0x5e,
784  0xe4, 0xd8, 0xc1, 0xb6, 0xb4, 0xb3, 0xaf, 0xb5, 0xbf, 0xcc, 0xf6, 0x5b,
785  0x56, 0x4c, 0x59, 0xdb, 0xdf, 0xdc, 0xc9, 0xce, 0xda, 0xd3, 0xd5, 0xcf,
786  0xcc, 0xce, 0xc6, 0xc6, 0xdb, 0xf8, 0x61, 0x44, 0x38, 0x2f, 0x2d, 0x2b,
787  0x29, 0x28, 0x2c, 0x2e, 0x2e, 0x3d, 0xdc, 0xdb, 0xc2, 0xaf, 0xb1, 0xb4,
788  0xb3, 0xbf, 0xc3, 0xce, 0x4e, 0x5e, 0x64, 0x3f, 0x49, 0x58, 0x48, 0x4d,
789  0x54, 0x5a, 0xdf, 0xd6, 0xcd, 0xba, 0xb5, 0xb7, 0xb3, 0xb2, 0xba, 0xc4,
790  0xce, 0xdf, 0x76, 0x56, 0x54, 0xec, 0xe2, 0xfc, 0xd2, 0xcb, 0xd6, 0xd6,
791  0xcf, 0xce, 0xcf, 0xd5, 0xce, 0xca, 0xda, 0x76, 0x68, 0x4c, 0x39, 0x30,
792  0x2d, 0x2b, 0x28, 0x27, 0x2b, 0x2d, 0x2f, 0x3f, 0xe3, 0xd2, 0xbe, 0xb1,
793  0xb2, 0xb4, 0xb6, 0xbf, 0xc2, 0xce, 0x5f, 0xf8, 0x70, 0x49, 0x50, 0x54,
794  0x49, 0x4d, 0x4d, 0x55, 0xeb, 0xde, 0xce, 0xbb, 0xb7, 0xb7, 0xb4, 0xb4,
795  0xba, 0xc3, 0xcd, 0xd2, 0xeb, 0x59, 0x68, 0xe2, 0xef, 0xf0, 0xd9, 0xd3,
796  0xdb, 0xe2, 0xd9, 0xd2, 0xda, 0xda, 0xce, 0xcf, 0xe3, 0x70, 0x5a, 0x42,
797  0x34, 0x2e, 0x2c, 0x29, 0x28, 0x29, 0x2c, 0x2e, 0x3b, 0x6a, 0xd6, 0xc1,
798  0xb2, 0xb3, 0xb4, 0xb5, 0xbf, 0xc5, 0xcb, 0x65, 0x76, 0xf4, 0x4d, 0x58,
799  0x5e, 0x4c, 0x51, 0x52, 0x4f, 0x6e, 0xe4, 0xd6, 0xc0, 0xba, 0xb9, 0xb5,
800  0xb5, 0xba, 0xbf, 0xca, 0xd1, 0xe1, 0x64, 0x6b, 0xe1, 0xe2, 0xde, 0xcf,
801  0xce, 0xd7, 0xda, 0xd9, 0xda, 0xdd, 0xdf, 0xd9, 0xd6, 0xe8, 0x66, 0x58,
802  0x41, 0x34, 0x2f, 0x2d, 0x29, 0x29, 0x2b, 0x2c, 0x2f, 0x40, 0x6e, 0xdb,
803  0xbd, 0xb2, 0xb6, 0xb5, 0xb6, 0xc2, 0xc3, 0xcf, 0x69, 0xe1, 0x6f, 0x4d,
804  0x64, 0x59, 0x4a, 0x52, 0x4f, 0x52, 0x7a, 0xec, 0xcf, 0xbe, 0xbc, 0xb9,
805  0xb5, 0xb7, 0xbc, 0xc2, 0xc9, 0xd1, 0xf2, 0x6b, 0xeb, 0xe2, 0xea, 0xdc,
806  0xd1, 0xd5, 0xdd, 0xdb, 0xd9, 0xdf, 0xe1, 0xdb, 0xd7, 0xde, 0x74, 0x5f,
807  0x4a, 0x38, 0x31, 0x2e, 0x2a, 0x29, 0x2a, 0x2b, 0x2e, 0x3a, 0x5d, 0xe0,
808  0xc2, 0xb2, 0xb4, 0xb6, 0xb4, 0xbf, 0xc7, 0xc9, 0xfe, 0xed, 0xe3, 0x54,
809  0x65, 0x6e, 0x4a, 0x4d, 0x4f, 0x4a, 0x56, 0x69, 0xdf, 0xc6, 0xbe, 0xba,
810  0xb6, 0xb5, 0xb9, 0xbf, 0xc5, 0xcb, 0xde, 0xf7, 0xde, 0xd5, 0xd7, 0xd2,
811  0xcb, 0xce, 0xd9, 0xdc, 0xdf, 0xeb, 0xf4, 0xef, 0xdf, 0xe2, 0x72, 0x5f,
812  0x4b, 0x3a, 0x33, 0x2e, 0x2b, 0x29, 0x2a, 0x2b, 0x2e, 0x3d, 0x5e, 0xe7,
813  0xc0, 0xb4, 0xb8, 0xb7, 0xb6, 0xc3, 0xc7, 0xcb, 0x7e, 0xdb, 0xe2, 0x56,
814  0xf7, 0x6b, 0x49, 0x4f, 0x4d, 0x48, 0x52, 0x5b, 0xee, 0xca, 0xc2, 0xbc,
815  0xb7, 0xb8, 0xbc, 0xbf, 0xc3, 0xcb, 0xda, 0xde, 0xd2, 0xd0, 0xd2, 0xcb,
816  0xc9, 0xcf, 0xd9, 0xda, 0xdf, 0xef, 0x7e, 0xef, 0xe3, 0xfa, 0x5e, 0x54,
817  0x42, 0x35, 0x2f, 0x2d, 0x2a, 0x29, 0x2b, 0x2c, 0x35, 0x4e, 0x69, 0xcd,
818  0xb5, 0xb7, 0xba, 0xb5, 0xbe, 0xca, 0xc8, 0xe5, 0xe7, 0xd6, 0x5e, 0x73,
819  0xde, 0x51, 0x4e, 0x57, 0x4a, 0x4b, 0x54, 0x63, 0xd7, 0xc7, 0xc1, 0xba,
820  0xb7, 0xbb, 0xbe, 0xbf, 0xc6, 0xd3, 0xd8, 0xcf, 0xce, 0xd0, 0xcb, 0xc6,
821  0xcb, 0xd7, 0xdb, 0xe0, 0x72, 0x5f, 0x67, 0x73, 0x64, 0x55, 0x4e, 0x43,
822  0x37, 0x30, 0x2e, 0x2b, 0x2a, 0x2b, 0x2c, 0x35, 0x4d, 0x60, 0xcf, 0xb6,
823  0xb8, 0xbb, 0xb5, 0xbe, 0xcc, 0xc9, 0xe5, 0xe2, 0xd3, 0x68, 0xee, 0xd6,
824  0x5b, 0x54, 0x5b, 0x4c, 0x4c, 0x50, 0x5b, 0xdd, 0xcc, 0xc6, 0xbb, 0xb8,
825  0xbb, 0xbe, 0xbe, 0xc3, 0xd0, 0xd6, 0xcc, 0xcc, 0xcf, 0xc8, 0xc4, 0xcb,
826  0xd2, 0xd8, 0xe2, 0x7e, 0x5e, 0x5f, 0x6d, 0x5e, 0x50, 0x4b, 0x3f, 0x36,
827  0x2f, 0x2d, 0x2b, 0x2a, 0x2a, 0x2d, 0x3b, 0x51, 0x65, 0xc3, 0xb4, 0xba,
828  0xb9, 0xb6, 0xc2, 0xc7, 0xcb, 0xec, 0xd4, 0xd7, 0x67, 0xd9, 0xdb, 0x58,
829  0x5c, 0x57, 0x4b, 0x4e, 0x4e, 0x5a, 0xdc, 0xd0, 0xca, 0xbd, 0xbb, 0xbe,
830  0xc0, 0xbe, 0xc3, 0xd3, 0xce, 0xc4, 0xcc, 0xcd, 0xc2, 0xc5, 0xcd, 0xd1,
831  0xdd, 0xe5, 0x6d, 0x57, 0x62, 0x62, 0x50, 0x4c, 0x45, 0x3b, 0x34, 0x2f,
832  0x2d, 0x2b, 0x2a, 0x2b, 0x2f, 0x3f, 0x4e, 0x68, 0xbd, 0xb6, 0xbd, 0xb6,
833  0xb7, 0xc4, 0xc1, 0xcd, 0xda, 0xc7, 0xdc, 0xe7, 0xc8, 0xe0, 0x62, 0x79,
834  0x53, 0x4b, 0x4b, 0x48, 0x56, 0xfb, 0xea, 0xce, 0xbf, 0xbe, 0xc1, 0xbe,
835  0xbc, 0xc4, 0xcd, 0xc2, 0xc1, 0xcb, 0xc4, 0xbf, 0xc5, 0xcb, 0xd3, 0xdd,
836  0xeb, 0x57, 0x50, 0x5c, 0x51, 0x48, 0x44, 0x3f, 0x39, 0x32, 0x2f, 0x2d,
837  0x2c, 0x2b, 0x2d, 0x35, 0x48, 0x4e, 0xe7, 0xb8, 0xba, 0xbd, 0xb3, 0xbb,
838  0xc3, 0xbe, 0xd3, 0xcd, 0xc4, 0xe5, 0xd1, 0xc5, 0xed, 0x7a, 0xf5, 0x52,
839  0x4d, 0x49, 0x48, 0x54, 0x60, 0x6c, 0xd7, 0xc7, 0xc6, 0xc9, 0xbf, 0xbe,
840  0xca, 0xc7, 0xbe, 0xc3, 0xc3, 0xbe, 0xc2, 0xc3, 0xc8, 0xdc, 0xda, 0xee,
841  0x52, 0x55, 0x56, 0x4a, 0x43, 0x3d, 0x39, 0x35, 0x2f, 0x2d, 0x2d, 0x2d,
842  0x2c, 0x2f, 0x3f, 0x4e, 0x58, 0xc4, 0xb8, 0xbe, 0xb8, 0xb6, 0xc1, 0xbe,
843  0xc5, 0xd7, 0xc3, 0xcd, 0xea, 0xc7, 0xce, 0x75, 0xea, 0x68, 0x4f, 0x4e,
844  0x49, 0x4a, 0x59, 0x64, 0x70, 0xd7, 0xca, 0xcc, 0xc7, 0xbf, 0xc5, 0xc7,
845  0xbf, 0xc0, 0xc3, 0xbd, 0xbf, 0xc3, 0xbf, 0xcb, 0xda, 0xd6, 0x7b, 0x59,
846  0x59, 0x4e, 0x47, 0x40, 0x3b, 0x37, 0x32, 0x2f, 0x2d, 0x2d, 0x2d, 0x2d,
847  0x34, 0x46, 0x4d, 0x79, 0xbd, 0xbc, 0xbe, 0xb5, 0xba, 0xc1, 0xbd, 0xc9,
848  0xce, 0xc3, 0xd0, 0xd6, 0xc8, 0xd8, 0xfd, 0xf3, 0x59, 0x4b, 0x49, 0x48,
849  0x48, 0x4f, 0x5f, 0x73, 0xdc, 0xcb, 0xca, 0xc6, 0xc0, 0xc5, 0xc2, 0xbe,
850  0xc2, 0xbf, 0xbb, 0xc1, 0xc4, 0xc1, 0xcd, 0xdc, 0xe2, 0x72, 0x5a, 0x52,
851  0x4b, 0x41, 0x3c, 0x39, 0x34, 0x30, 0x2f, 0x2e, 0x2e, 0x2f, 0x30, 0x3a,
852  0x4c, 0x51, 0xde, 0xbc, 0xbf, 0xbf, 0xb6, 0xbc, 0xc3, 0xbe, 0xc6, 0xca,
853  0xc5, 0xcc, 0xce, 0xcc, 0xd6, 0xea, 0x79, 0x5e, 0x4d, 0x49, 0x4c, 0x4b,
854  0x4c, 0x63, 0xf8, 0xed, 0xcf, 0xc7, 0xc9, 0xc6, 0xbf, 0xbf, 0xc0, 0xbe,
855  0xbb, 0xbd, 0xbf, 0xc0, 0xc6, 0xcd, 0xd7, 0xee, 0x6d, 0x5a, 0x4d, 0x47,
856  0x3f, 0x3c, 0x38, 0x34, 0x31, 0x2f, 0x2f, 0x2e, 0x2f, 0x33, 0x3d, 0x4a,
857  0x4f, 0xd8, 0xbe, 0xc4, 0xc0, 0xb9, 0xbe, 0xc6, 0xc1, 0xc3, 0xcb, 0xca,
858  0xc8, 0xc9, 0xcd, 0xd2, 0xdd, 0x7e, 0x5e, 0x50, 0x4a, 0x4d, 0x4f, 0x4d,
859  0x5b, 0xef, 0xee, 0xdb, 0xca, 0xc9, 0xcb, 0xc2, 0xbe, 0xc2, 0xbf, 0xbb,
860  0xbd, 0xc1, 0xbf, 0xc3, 0xcf, 0xd8, 0xde, 0x69, 0x54, 0x52, 0x47, 0x3d,
861  0x3c, 0x39, 0x35, 0x33, 0x33, 0x31, 0x2f, 0x32, 0x34, 0x3a, 0x47, 0x4f,
862  0x7a, 0xca, 0xc4, 0xc6, 0xc0, 0xbd, 0xc4, 0xcc, 0xc4, 0xc3, 0xce, 0xcc,
863  0xc4, 0xc7, 0xd2, 0xd4, 0xd3, 0xfb, 0x5c, 0x5a, 0x57, 0x57, 0x56, 0x5f,
864  0xfd, 0xee, 0xdb, 0xd1, 0xd3, 0xcd, 0xc7, 0xc7, 0xc8, 0xc3, 0xbe, 0xc0,
865  0xc4, 0xc1, 0xc3, 0xcd, 0xd6, 0xda, 0xf5, 0x5b, 0x53, 0x4e, 0x44, 0x3e,
866  0x3d, 0x3b, 0x36, 0x34, 0x34, 0x33, 0x32, 0x34, 0x35, 0x3b, 0x46, 0x4d,
867  0x5f, 0xd6, 0xca, 0xcb, 0xca, 0xc4, 0xc5, 0xcc, 0xcc, 0xc5, 0xc5, 0xc8,
868  0xc6, 0xc2, 0xc6, 0xce, 0xd5, 0xdd, 0x7a, 0x63, 0x5d, 0x5a, 0x60, 0x65,
869  0x6e, 0xf1, 0xdc, 0xd0, 0xd4, 0xd6, 0xcc, 0xc8, 0xcb, 0xca, 0xc2, 0xbf,
870  0xc3, 0xc7, 0xc5, 0xc7, 0xd3, 0xe2, 0xf2, 0x6a, 0x5c, 0x4c, 0x47, 0x47,
871  0x40, 0x3f, 0x3c, 0x39, 0x3c, 0x38, 0x36, 0x36, 0x37, 0x39, 0x3c, 0x47,
872  0x4f, 0x62, 0xdd, 0xd3, 0xcf, 0xd0, 0xcc, 0xca, 0xd2, 0xd0, 0xca, 0xc6,
873  0xc4, 0xc5, 0xc4, 0xc3, 0xc8, 0xd0, 0xd9, 0xe8, 0x73, 0x6e, 0x68, 0x66,
874  0x77, 0xf2, 0xea, 0xe3, 0xde, 0xdc, 0xdc, 0xdb, 0xd6, 0xcf, 0xcd, 0xcb,
875  0xc7, 0xc7, 0xc9, 0xcb, 0xd0, 0xd9, 0xe5, 0xf6, 0x6d, 0x63, 0x58, 0x4f,
876  0x4d, 0x4b, 0x48, 0x42, 0x3f, 0x3f, 0x3c, 0x3b, 0x3b, 0x3b, 0x3b, 0x3a,
877  0x3e, 0x47, 0x4d, 0x54, 0x67, 0xe5, 0xd9, 0xd8, 0xd9, 0xd5, 0xd1, 0xd2,
878  0xcf, 0xcd, 0xca, 0xc7, 0xc4, 0xc4, 0xc9, 0xcb, 0xce, 0xd4, 0xdc, 0xeb,
879  0xec, 0xe3, 0xe6, 0xe5, 0xe6, 0xe3, 0xde, 0xdd, 0xdc, 0xde, 0xdc, 0xd5,
880  0xd4, 0xd2, 0xcf, 0xcf, 0xce, 0xd2, 0xda, 0xdd, 0xe6, 0xf7, 0x7d, 0x6f,
881  0x69, 0x68, 0x5d, 0x59, 0x56, 0x4d, 0x4c, 0x4c, 0x4c, 0x4a, 0x44, 0x46,
882  0x45, 0x43, 0x47, 0x42, 0x42, 0x45, 0x48, 0x52, 0x55, 0x5c, 0x6a, 0x72,
883  0xef, 0xf5, 0xea, 0xe2, 0xe3, 0xdb, 0xd6, 0xcf, 0xcc, 0xcb, 0xca, 0xcc,
884  0xcd, 0xd0, 0xd4, 0xd7, 0xda, 0xda, 0xd8, 0xd6, 0xd6, 0xd6, 0xd5, 0xd9,
885  0xdd, 0xde, 0xde, 0xde, 0xdf, 0xdf, 0xdd, 0xdd, 0xde, 0xdf, 0xe6, 0xe9,
886  0xf2, 0xfe, 0xf3, 0xfc, 0x70, 0x79, 0x7b, 0x6e, 0x67, 0x67, 0x65, 0x5c,
887  0x58, 0x56, 0x57, 0x56, 0x54, 0x57, 0x52, 0x4f, 0x4e, 0x4b, 0x4a, 0x49,
888  0x47, 0x48, 0x4c, 0x4f, 0x53, 0x5a, 0x5d, 0x60, 0x67, 0x65, 0x69, 0x6b,
889  0x70, 0xf9, 0xeb, 0xdf, 0xda, 0xd5, 0xcf, 0xd0, 0xcf, 0xcf, 0xd3, 0xd2,
890  0xd2, 0xd1, 0xcf, 0xd0, 0xd0, 0xd1, 0xd4, 0xd7, 0xdc, 0xde, 0xdf, 0xe2,
891  0xe0, 0xdf, 0xdf, 0xe6, 0xe9, 0xe7, 0xec, 0xfc, 0x7b, 0x7c, 0x72, 0x6c,
892  0x72, 0x7c, 0x75, 0x77, 0xfa, 0x73, 0x6f, 0x6c, 0x64, 0x68, 0x61, 0x62,
893  0x64, 0x5c, 0x5f, 0x5e, 0x5b, 0x5d, 0x58, 0x57, 0x59, 0x54, 0x56, 0x56,
894  0x53, 0x53, 0x53, 0x54, 0x57, 0x56, 0x59, 0x5f, 0x61, 0x63, 0x68, 0x6d,
895  0x71, 0x7e, 0xfc, 0xf5, 0xe7, 0xe4, 0xe2, 0xda, 0xd9, 0xdb, 0xdb, 0xd9,
896  0xd9, 0xda, 0xd9, 0xd8, 0xd7, 0xd7, 0xda, 0xda, 0xdc, 0xdf, 0xe3, 0xe9,
897  0xea, 0xef, 0xf6, 0xef, 0xf5, 0x78, 0x79, 0xff, 0x73, 0x70, 0x73, 0x6f,
898  0x70, 0x6f, 0x74, 0xfc, 0xff, 0xfb, 0xfd, 0x76, 0x79, 0x7b, 0x7a, 0x77,
899  0x7c, 0x78, 0x6d, 0xf0, 0xf5, 0x64, 0x74, 0x76, 0x65, 0x6e, 0x6b, 0x6a,
900  0x69, 0x5f, 0x69, 0x67, 0x5f, 0x65, 0x61, 0x61, 0x63, 0x5e, 0x5f, 0x60,
901  0x5c, 0x5d, 0x5f, 0x61, 0x62, 0x61, 0x68, 0x77, 0x75, 0x6e, 0x7e, 0xfe,
902  0x77, 0xf8, 0xf7, 0xf4, 0xeb, 0xec, 0xe8, 0xe3, 0xe6, 0xe1, 0xde, 0xe0,
903  0xde, 0xdd, 0xdf, 0xdd, 0xdf, 0xe0, 0xde, 0xe7, 0xe5, 0xe5, 0xf6, 0xf3,
904  0xf5, 0xfd, 0x7d, 0x7b, 0xfa, 0x7d, 0x7a, 0x76, 0x76, 0x78, 0x6d, 0xe2,
905  0xe8, 0x55, 0x6a, 0xea, 0x61, 0x79, 0xf6, 0x6a, 0xfb, 0xfa, 0x79, 0xf5,
906  0x7e, 0xfe, 0xf6, 0x75, 0x79, 0x7d, 0x79, 0xfe, 0x79, 0x71, 0x75, 0x79,
907  0x6d, 0x6e, 0x75, 0x6e, 0x6f, 0x69, 0x6d, 0x79, 0x6b, 0x6b, 0x74, 0x70,
908  0x6f, 0x6f, 0x6c, 0x70, 0x71, 0x71, 0x73, 0x6d, 0x6d, 0x64, 0xfa, 0xee,
909  0x5a, 0x65, 0x6c, 0x64, 0x7d, 0x6f
910};
911
912static InputStream *
913generateHelloWorld (void)
914{
915  return _alutInputStreamConstructFromMemory (helloWorldSample,
916                                              sizeof (helloWorldSample));
917}
918
919ALvoid *
920alutLoadMemoryHelloWorld (ALenum *format, ALsizei *size, ALfloat *frequency)
921{
922  if (!_alutSanityCheck ())
923    {
924      return NULL;
925    }
926  return _alutLoadMemoryFromInputStream (generateHelloWorld (), format, size,
927                                         frequency);
928}
929
930ALuint
931alutCreateBufferHelloWorld (void)
932{
933  if (!_alutSanityCheck ())
934    {
935      return AL_NONE;
936    }
937  return _alutCreateBufferFromInputStream (generateHelloWorld ());
938}
Note: See TracBrowser for help on using the repository browser.