Subversion Repositories gelsvn

Rev

Rev 601 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 601 Rev 627
1
/* ----------------------------------------------------------------------- *
1
/* ----------------------------------------------------------------------- *
2
 * This file is part of GEL, http://www.imm.dtu.dk/GEL
2
 * This file is part of GEL, http://www.imm.dtu.dk/GEL
3
 * Copyright (C) the authors and DTU Informatics
3
 * Copyright (C) the authors and DTU Informatics
4
 * For license and list of authors, see ../../doc/intro.pdf
4
 * For license and list of authors, see ../../doc/intro.pdf
5
 * ----------------------------------------------------------------------- */
5
 * ----------------------------------------------------------------------- */
6
 
6
 
7
/**
7
/**
8
 * @file   Console.cpp
8
 * @file   Console.cpp
9
 * @author Anders Wang Kristensen <awk@imm.dtu.dk>
9
 * @author Anders Wang Kristensen <awk@imm.dtu.dk>
10
 * @date   Fri Oct 22 18:36:58 2011
10
 * @date   Fri Oct 22 18:36:58 2011
11
 */
11
 */
12
 
12
 
13
#include "../GLGraphics/Console.h"
13
#include "../GLGraphics/Console.h"
14
#include "../GLGraphics/gel_glut.h"
14
#include "../GLGraphics/gel_glut.h"
15
 
15
 
16
#include <cstdarg>
16
#include <cstdarg>
17
#include <set>
17
#include <set>
18
#include <iostream> //cerr
18
#include <iostream> //cerr
19
#include <iterator> //back_inserter
19
#include <iterator> //back_inserter
20
#include <fstream>
20
#include <fstream>
21
#include <utility> //min
21
#include <utility> //min
22
 
22
 
23
#include "../GLGraphics/stb_image_aug.h"
23
#include "../GLGraphics/stb_image.h"
-
 
24
#include "../GLGraphics/stb_image_write.h"
24
 
25
 
25
static const char* history_filename = "history.txt";
26
static const char* history_filename = "history.txt";
26
 
27
 
27
static const int line_spacing = 13;
28
static const int line_spacing = 13;
28
static const int char_spacing = 7;
29
static const int char_spacing = 7;
29
 
30
 
30
using namespace GLGraphics;
31
using namespace GLGraphics;
31
 
32
 
32
//----------------------------------------------------------------------------
33
//----------------------------------------------------------------------------
33
 
34
 
34
Console::Console() : m_history_index(0), m_caret(0),
35
Console::Console() : m_history_index(0), m_caret(0),
35
                     m_id_counter(0), m_is_executing(false),
36
                     m_id_counter(0), m_is_executing(false),
36
                     m_font(0)
37
                     m_font(0)
37
{
38
{
38
    load_history();
39
    load_history();
39
 
40
 
40
    //register builtin commands
41
    //register builtin commands
41
    void (Console::*help0)() = &Console::help;
42
    void (Console::*help0)() = &Console::help;
42
    reg_cmd0("help",
43
    reg_cmd0("help",
43
             std::bind(help0, this), "Print list of commands.");
44
             std::bind(help0, this), "Print list of commands.");
44
 
45
 
45
    void (Console::*help1)(const std::string&) = &Console::help;
46
    void (Console::*help1)(const std::string&) = &Console::help;
46
    reg_cmd1<std::string>("help", std::bind(help1, this, std::placeholders::_1),
47
    reg_cmd1<std::string>("help", std::bind(help1, this, std::placeholders::_1),
47
                          "Show help for specified command.");
48
                          "Show help for specified command.");
48
 
49
 
49
    reg_cmd0("clear", std::bind(&Console::clear, this), "Clear console.");
50
    reg_cmd0("clear", std::bind(&Console::clear, this), "Clear console.");
50
 
51
 
51
    reg_cmd0("history", std::bind(&Console::history, this),
52
    reg_cmd0("history", std::bind(&Console::history, this),
52
             "Show history of commands.");
53
             "Show history of commands.");
53
    reg_cmd0("clear_history", std::bind(&Console::history, this),
54
    reg_cmd0("clear_history", std::bind(&Console::history, this),
54
             "Clear history of commands.");
55
             "Clear history of commands.");
55
    reg_cmd0("load_history", std::bind(&Console::load_history, this),
56
    reg_cmd0("load_history", std::bind(&Console::load_history, this),
56
             "Load history of commands from file.");
57
             "Load history of commands from file.");
57
    reg_cmd0("save_history", std::bind(&Console::save_history, this),
58
    reg_cmd0("save_history", std::bind(&Console::save_history, this),
58
             "Save history of commands to file.");
59
             "Save history of commands to file.");
59
}
60
}
60
 
61
 
61
Console::~Console() throw()
62
Console::~Console() throw()
62
{
63
{
63
    save_history();
64
    save_history();
64
}
65
}
65
 
66
 
66
//----------------------------------------------------------------------------
67
//----------------------------------------------------------------------------
67
 
68
 
68
void Console::load_history()
69
void Console::load_history()
69
{
70
{
70
    std::ifstream ifs(history_filename);
71
    std::ifstream ifs(history_filename);
71
 
72
 
72
    while (ifs.good())
73
    while (ifs.good())
73
    {
74
    {
74
        std::string line;
75
        std::string line;
75
        getline(ifs, line);
76
        getline(ifs, line);
76
        if (!line.empty())
77
        if (!line.empty())
77
            m_history.push_back(std::move(line));
78
            m_history.push_back(std::move(line));
78
    }
79
    }
79
 
80
 
80
    m_history_index = m_history.size();
81
    m_history_index = m_history.size();
81
}
82
}
82
 
83
 
83
void Console::save_history() const
84
void Console::save_history() const
84
{
85
{
85
    std::ofstream ofs(history_filename);
86
    std::ofstream ofs(history_filename);
86
    if (!ofs)
87
    if (!ofs)
87
        std::cerr << "Console: Unable to save history.";
88
        std::cerr << "Console: Unable to save history.";
88
    else
89
    else
89
        for (auto it=m_history.begin(); it!=m_history.end(); ++it)
90
        for (auto it=m_history.begin(); it!=m_history.end(); ++it)
90
            ofs << *it << '\n';
91
            ofs << *it << '\n';
91
}
92
}
92
 
93
 
93
void Console::clear_history()
94
void Console::clear_history()
94
{
95
{
95
    m_history.clear();
96
    m_history.clear();
96
    m_history_index = 0;
97
    m_history_index = 0;
97
}
98
}
98
 
99
 
99
//----------------------------------------------------------------------------
100
//----------------------------------------------------------------------------
100
 
101
 
101
void Console::display()
102
void Console::display()
102
{
103
{
103
    if (m_font == 0)
104
    if (m_font == 0)
104
    {
105
    {
105
        glGenTextures(1, &m_font);
106
        glGenTextures(1, &m_font);
106
        glBindTexture(GL_TEXTURE_2D, m_font);
107
        glBindTexture(GL_TEXTURE_2D, m_font);
107
        int width, height, components=1;
108
        int width, height, components=1;
108
        unsigned char* data = stbi_load_from_memory(g_png_data,
109
        unsigned char* data = stbi_load_from_memory(g_png_data,
109
            int(g_png_size), &width, &height, &components, 1);
110
            int(g_png_size), &width, &height, &components, 1);
110
        assert(data);
111
        assert(data);
111
        unsigned char* p = data;
112
        unsigned char* p = data;
112
        unsigned char* q = data + width*(height-1);
113
        unsigned char* q = data + width*(height-1);
113
        for (int h=0; h<height/2; ++h, q-=2*width)
114
        for (int h=0; h<height/2; ++h, q-=2*width)
114
            for (int w=0; w<width; ++w)
115
            for (int w=0; w<width; ++w)
115
                std::swap(*p++, *q++);
116
                std::swap(*p++, *q++);
116
        glTexImage2D(GL_TEXTURE_2D, 0, GL_ALPHA8, width, height, 0,
117
        glTexImage2D(GL_TEXTURE_2D, 0, GL_ALPHA8, width, height, 0,
117
            GL_ALPHA, GL_UNSIGNED_BYTE, data);
118
            GL_ALPHA, GL_UNSIGNED_BYTE, data);
118
        stbi_image_free(data);
119
        stbi_image_free(data);
119
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
120
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
120
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
121
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
121
        glBindTexture(GL_TEXTURE_2D, 0);
122
        glBindTexture(GL_TEXTURE_2D, 0);
122
    }
123
    }
123
 
124
 
124
    //setup matrices
125
    //setup matrices
125
    int vp[4];
126
    int vp[4];
126
    glGetIntegerv(GL_VIEWPORT, vp);
127
    glGetIntegerv(GL_VIEWPORT, vp);
127
    int width = vp[2];
128
    int width = vp[2];
128
    int height = vp[3];
129
    int height = vp[3];
129
 
130
 
130
    glMatrixMode(GL_PROJECTION);
131
    glMatrixMode(GL_PROJECTION);
131
    glPushMatrix();
132
    glPushMatrix();
132
    glLoadIdentity();
133
    glLoadIdentity();
133
    gluOrtho2D(0, width, 0, height);
134
    gluOrtho2D(0, width, 0, height);
134
    glMatrixMode(GL_MODELVIEW);
135
    glMatrixMode(GL_MODELVIEW);
135
    glPushMatrix();
136
    glPushMatrix();
136
    glLoadIdentity();
137
    glLoadIdentity();
137
 
138
 
138
    //gray background + separator
139
    //gray background + separator
139
    glPushAttrib(GL_COLOR_BUFFER_BIT);
140
    glPushAttrib(GL_COLOR_BUFFER_BIT);
140
    glPushAttrib(GL_ENABLE_BIT);
141
    glPushAttrib(GL_ENABLE_BIT);
141
    glEnable(GL_BLEND);
142
    glEnable(GL_BLEND);
142
    glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
143
    glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
143
    glDisable(GL_LIGHTING);
144
    glDisable(GL_LIGHTING);
144
 
145
 
145
    glColor4f(0.15f, 0.15f, 0.15f, 0.75f);
146
    glColor4f(0.15f, 0.15f, 0.15f, 0.75f);
146
    glRecti(0, 0, width, height);
147
    glRecti(0, 0, width, height);
147
    glColor4f(0.7f, 0.7f, 0.7f, 0.75f);
148
    glColor4f(0.7f, 0.7f, 0.7f, 0.75f);
148
    glRecti(0, 1, width, 2);
149
    glRecti(0, 1, width, 2);
149
    glColor4f(0.5f, 0.5f, 0.5f, 0.75f);
150
    glColor4f(0.5f, 0.5f, 0.5f, 0.75f);
150
    glRecti(0, 0, width, 1);
151
    glRecti(0, 0, width, 1);
151
 
152
 
152
    glPopAttrib();
153
    glPopAttrib();
153
    glPopAttrib();
154
    glPopAttrib();
154
 
155
 
155
    int current = 3;
156
    int current = 3;
156
 
157
 
157
    //draw caret
158
    //draw caret
158
    if (!m_is_executing)
159
    if (!m_is_executing)
159
    {
160
    {
160
        const int cx = int(m_caret*char_spacing) + char_spacing + 1;
161
        const int cx = int(m_caret*char_spacing) + char_spacing + 1;
161
        glRecti(cx, current, cx+char_spacing, current+2);
162
        glRecti(cx, current, cx+char_spacing, current+2);
162
    }
163
    }
163
 
164
 
164
    //restore matrices
165
    //restore matrices
165
    glMatrixMode(GL_PROJECTION);
166
    glMatrixMode(GL_PROJECTION);
166
    glPopMatrix();
167
    glPopMatrix();
167
    glMatrixMode(GL_MODELVIEW);
168
    glMatrixMode(GL_MODELVIEW);
168
    glPopMatrix();
169
    glPopMatrix();
169
 
170
 
170
    //draw command line
171
    //draw command line
171
    if (!m_is_executing)
172
    if (!m_is_executing)
172
    {
173
    {
173
        draw_textf(1, current,
174
        draw_textf(1, current,
174
                   0.9f, 0.9f, 0.9f,
175
                   0.9f, 0.9f, 0.9f,
175
                   ">%s", m_current_command.c_str());
176
                   ">%s", m_current_command.c_str());
176
        current += line_spacing;
177
        current += line_spacing;
177
    }
178
    }
178
 
179
 
179
    //draw rest
180
    //draw rest
180
    std::vector<std::string>::const_reverse_iterator it;
181
    std::vector<std::string>::const_reverse_iterator it;
181
    for (it=m_buffer.rbegin(); it!=m_buffer.rend(); ++it)
182
    for (it=m_buffer.rbegin(); it!=m_buffer.rend(); ++it)
182
    {
183
    {
183
        draw_text(1, current,
184
        draw_text(1, current,
184
                  0.75f, 0.75f, 0.75f,
185
                  0.75f, 0.75f, 0.75f,
185
                  it->c_str());
186
                  it->c_str());
186
        current += line_spacing;
187
        current += line_spacing;
187
 
188
 
188
        if (current > height)
189
        if (current > height)
189
            break;
190
            break;
190
    }
191
    }
191
}
192
}
192
 
193
 
193
//----------------------------------------------------------------------------
194
//----------------------------------------------------------------------------
194
 
195
 
195
void Console::draw_text(int cx, int cy,
196
void Console::draw_text(int cx, int cy,
196
                        float r, float g, float b,
197
                        float r, float g, float b,
197
                        const char* buffer)
198
                        const char* buffer)
198
{
199
{
199
    //save OpenGL state
200
    //save OpenGL state
200
    glPushAttrib(GL_ENABLE_BIT);
201
    glPushAttrib(GL_ENABLE_BIT);
201
    glPushAttrib(GL_COLOR_BUFFER_BIT);
202
    glPushAttrib(GL_COLOR_BUFFER_BIT);
202
    glPushAttrib(GL_DEPTH_BUFFER_BIT);
203
    glPushAttrib(GL_DEPTH_BUFFER_BIT);
203
 
204
 
204
    //setup texture mapping + blending
205
    //setup texture mapping + blending
205
    glDisable(GL_DEPTH_TEST);
206
    glDisable(GL_DEPTH_TEST);
206
    glDisable(GL_LIGHTING);
207
    glDisable(GL_LIGHTING);
207
    glEnable(GL_TEXTURE_2D);
208
    glEnable(GL_TEXTURE_2D);
208
    glEnable(GL_BLEND);
209
    glEnable(GL_BLEND);
209
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
210
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
210
 
211
 
211
    //setup matrices
212
    //setup matrices
212
    int vp[4];
213
    int vp[4];
213
    glGetIntegerv(GL_VIEWPORT, vp);
214
    glGetIntegerv(GL_VIEWPORT, vp);
214
    int width = vp[2];
215
    int width = vp[2];
215
    int height = vp[3];
216
    int height = vp[3];
216
 
217
 
217
    assert(width>0 && height>0);
218
    assert(width>0 && height>0);
218
    glMatrixMode(GL_PROJECTION);
219
    glMatrixMode(GL_PROJECTION);
219
    glPushMatrix();
220
    glPushMatrix();
220
    glLoadIdentity();
221
    glLoadIdentity();
221
    gluOrtho2D(0, width, 0, height);
222
    gluOrtho2D(0, width, 0, height);
222
    glMatrixMode(GL_MODELVIEW);
223
    glMatrixMode(GL_MODELVIEW);
223
    glPushMatrix();
224
    glPushMatrix();
224
    glLoadIdentity();
225
    glLoadIdentity();
225
 
226
 
226
    //color + texture
227
    //color + texture
227
    glColor3f(r,g,b);
228
    glColor3f(r,g,b);
228
    glBindTexture(GL_TEXTURE_2D, m_font);
229
    glBindTexture(GL_TEXTURE_2D, m_font);
229
 
230
 
230
    glBegin(GL_QUADS);
231
    glBegin(GL_QUADS);
231
    while (*buffer)
232
    while (*buffer)
232
    {
233
    {
233
        char c = *buffer++;
234
        char c = *buffer++;
234
 
235
 
235
        if (c < 32)
236
        if (c < 32)
236
            continue;
237
            continue;
237
 
238
 
238
        int fx = (c & 0x0F) << 4;
239
        int fx = (c & 0x0F) << 4;
239
        float txl = (fx +  4.f) / 256.f;
240
        float txl = (fx +  4.f) / 256.f;
240
        float txr = (fx + 11.f) / 256.f;
241
        float txr = (fx + 11.f) / 256.f;
241
 
242
 
242
        int fy = 15*16 - (c & 0xF0);
243
        int fy = 15*16 - (c & 0xF0);
243
        float tyl = (fy +  0.f) / 256.f;
244
        float tyl = (fy +  0.f) / 256.f;
244
        float tyu = (fy + 15.f) / 256.f;
245
        float tyu = (fy + 15.f) / 256.f;
245
 
246
 
246
        glTexCoord2f(txl, tyl);
247
        glTexCoord2f(txl, tyl);
247
        glVertex2i(cx +  0, cy +  1);
248
        glVertex2i(cx +  0, cy +  1);
248
        glTexCoord2f(txr, tyl);
249
        glTexCoord2f(txr, tyl);
249
        glVertex2i(cx + 7, cy +  1);
250
        glVertex2i(cx + 7, cy +  1);
250
        glTexCoord2f(txr, tyu);
251
        glTexCoord2f(txr, tyu);
251
        glVertex2i(cx + 7, cy + 16);
252
        glVertex2i(cx + 7, cy + 16);
252
        glTexCoord2f(txl, tyu);
253
        glTexCoord2f(txl, tyu);
253
        glVertex2i(cx +  0, cy + 16);
254
        glVertex2i(cx +  0, cy + 16);
254
 
255
 
255
        cx += char_spacing;
256
        cx += char_spacing;
256
    }
257
    }
257
    glEnd();
258
    glEnd();
258
 
259
 
259
    glBindTexture(GL_TEXTURE_2D, 0);
260
    glBindTexture(GL_TEXTURE_2D, 0);
260
 
261
 
261
    //restore matrices
262
    //restore matrices
262
    glMatrixMode(GL_PROJECTION);
263
    glMatrixMode(GL_PROJECTION);
263
    glPopMatrix();
264
    glPopMatrix();
264
    glMatrixMode(GL_MODELVIEW);
265
    glMatrixMode(GL_MODELVIEW);
265
    glPopMatrix();
266
    glPopMatrix();
266
 
267
 
267
    //and attributes
268
    //and attributes
268
    glPopAttrib();
269
    glPopAttrib();
269
    glPopAttrib();
270
    glPopAttrib();
270
    glPopAttrib();
271
    glPopAttrib();
271
}
272
}
272
 
273
 
273
void Console::draw_textf(int x, int y,
274
void Console::draw_textf(int x, int y,
274
                         float r, float g, float b,
275
                         float r, float g, float b,
275
                         const char* fmt, ...)
276
                         const char* fmt, ...)
276
{
277
{
277
    //format text
278
    //format text
278
    char buffer[1024];
279
    char buffer[1024];
279
    va_list arguments;
280
    va_list arguments;
280
    va_start(arguments, fmt);
281
    va_start(arguments, fmt);
281
    vsnprintf(buffer, 1024, fmt, arguments);
282
    vsnprintf(buffer, 1024, fmt, arguments);
282
    va_end(arguments);
283
    va_end(arguments);
283
 
284
 
284
    draw_text(x, y, r, g, b, buffer);
285
    draw_text(x, y, r, g, b, buffer);
285
}
286
}
286
 
287
 
287
//----------------------------------------------------------------------------
288
//----------------------------------------------------------------------------
288
 
289
 
289
void Console::tab_completion()
290
void Console::tab_completion()
290
{
291
{
291
    if (m_current_command.empty())
292
    if (m_current_command.empty())
292
        return;
293
        return;
293
 
294
 
294
    //search through command list..
295
    //search through command list..
295
    std::set<std::string> matches;
296
    std::set<std::string> matches;
296
    command_map_t::const_iterator it1;
297
    command_map_t::const_iterator it1;
297
    for (it1=m_commands.begin(); it1!= m_commands.end(); ++it1)
298
    for (it1=m_commands.begin(); it1!= m_commands.end(); ++it1)
298
    {
299
    {
299
        std::string cmd = it1->first;
300
        std::string cmd = it1->first;
300
        if (cmd.find(m_current_command) != 0)
301
        if (cmd.find(m_current_command) != 0)
301
            continue;
302
            continue;
302
 
303
 
303
        matches.insert(cmd);
304
        matches.insert(cmd);
304
    }
305
    }
305
 
306
 
306
    if (matches.empty())
307
    if (matches.empty())
307
        return;
308
        return;
308
 
309
 
309
    if (matches.size() == 1)
310
    if (matches.size() == 1)
310
    {
311
    {
311
        m_current_command = *matches.begin() + " ";
312
        m_current_command = *matches.begin() + " ";
312
        return;
313
        return;
313
    }
314
    }
314
 
315
 
315
    //show possible matches
316
    //show possible matches
316
    std::stringstream ss;
317
    std::stringstream ss;
317
    std::set<std::string>::const_iterator it2;
318
    std::set<std::string>::const_iterator it2;
318
    for (it2=matches.begin(); it2!=matches.end(); ++it2)
319
    for (it2=matches.begin(); it2!=matches.end(); ++it2)
319
        ss << *it2 << " ";
320
        ss << *it2 << " ";
320
    print(ss.str().c_str());
321
    print(ss.str().c_str());
321
 
322
 
322
    //find longest common prefix and set as current command
323
    //find longest common prefix and set as current command
323
    it2 = matches.begin();
324
    it2 = matches.begin();
324
    std::string current = *it2++;
325
    std::string current = *it2++;
325
    for (; it2!=matches.end(); ++it2)
326
    for (; it2!=matches.end(); ++it2)
326
    {
327
    {
327
        std::string::size_type n = 0;
328
        std::string::size_type n = 0;
328
        for (; n<(std::min)(current.size(), it2->size()); ++n)
329
        for (; n<(std::min)(current.size(), it2->size()); ++n)
329
             if (current.at(n) != it2->at(n))
330
             if (current.at(n) != it2->at(n))
330
                 break;
331
                 break;
331
 
332
 
332
        current.resize(n);
333
        current.resize(n);
333
    }
334
    }
334
 
335
 
335
    m_current_command = current;
336
    m_current_command = current;
336
}
337
}
337
 
338
 
338
//----------------------------------------------------------------------------
339
//----------------------------------------------------------------------------
339
 
340
 
340
void Console::keyboard(unsigned char key)
341
void Console::keyboard(unsigned char key)
341
{
342
{
342
    switch (key)
343
    switch (key)
343
    {
344
    {
344
#ifdef __APPLE__
345
#ifdef __APPLE__
345
    case 0x7f: //apple's glut sends 127 (del) when backspace is pressed
346
    case 0x7f: //apple's glut sends 127 (del) when backspace is pressed
346
#else
347
#else
347
    case '\b': //backspace
348
    case '\b': //backspace
348
#endif
349
#endif
349
        if (m_caret > 0)
350
        if (m_caret > 0)
350
        {
351
        {
351
            //delete character before caret..
352
            //delete character before caret..
352
            m_current_command.erase(m_caret-1, 1);
353
            m_current_command.erase(m_caret-1, 1);
353
            m_caret--;
354
            m_caret--;
354
        }
355
        }
355
        break;
356
        break;
356
 
357
 
357
    case '\t': //tab
358
    case '\t': //tab
358
        tab_completion();
359
        tab_completion();
359
        m_caret = m_current_command.size();
360
        m_caret = m_current_command.size();
360
        break;
361
        break;
361
 
362
 
362
    case '\r': //enter
363
    case '\r': //enter
363
        if (!m_current_command.empty())
364
        if (!m_current_command.empty())
364
        {
365
        {
365
            std::string tmp = m_current_command;
366
            std::string tmp = m_current_command;
366
            m_current_command.clear();
367
            m_current_command.clear();
367
            m_caret = 0;
368
            m_caret = 0;
368
            printf(">%s", tmp.c_str());
369
            printf(">%s", tmp.c_str());
369
 
370
 
370
            //add command to history..
371
            //add command to history..
371
            m_history.push_back(tmp);
372
            m_history.push_back(tmp);
372
            m_history_index = m_history.size();
373
            m_history_index = m_history.size();
373
 
374
 
374
            execute(tmp.c_str());
375
            execute(tmp.c_str());
375
        }
376
        }
376
        break;
377
        break;
377
 
378
 
378
    default:
379
    default:
379
        if (key>=' ' && key<0x7f) //127 == delete
380
        if (key>=' ' && key<0x7f) //127 == delete
380
        {
381
        {
381
            m_current_command.insert(m_caret, 1, key);
382
            m_current_command.insert(m_caret, 1, key);
382
            m_caret++;
383
            m_caret++;
383
        }
384
        }
384
        break;
385
        break;
385
    }
386
    }
386
}
387
}
387
 
388
 
388
void Console::special(int key)
389
void Console::special(int key)
389
{
390
{
390
    switch (key)
391
    switch (key)
391
    {
392
    {
392
    case GLUT_KEY_LEFT:
393
    case GLUT_KEY_LEFT:
393
        if (m_caret > 0)
394
        if (m_caret > 0)
394
            m_caret -= 1;
395
            m_caret -= 1;
395
        break;
396
        break;
396
 
397
 
397
    case GLUT_KEY_RIGHT:
398
    case GLUT_KEY_RIGHT:
398
        if (m_caret < m_current_command.size())
399
        if (m_caret < m_current_command.size())
399
            m_caret += 1;
400
            m_caret += 1;
400
        break;
401
        break;
401
 
402
 
402
    case GLUT_KEY_HOME:
403
    case GLUT_KEY_HOME:
403
        m_caret = 0;
404
        m_caret = 0;
404
        break;
405
        break;
405
 
406
 
406
    case GLUT_KEY_END:
407
    case GLUT_KEY_END:
407
        m_caret = m_current_command.size();
408
        m_caret = m_current_command.size();
408
        break;
409
        break;
409
 
410
 
410
    case GLUT_KEY_UP:
411
    case GLUT_KEY_UP:
411
        if (!m_history.empty())
412
        if (!m_history.empty())
412
        {
413
        {
413
            if (m_history_index > 0)
414
            if (m_history_index > 0)
414
                m_history_index--;
415
                m_history_index--;
415
 
416
 
416
            m_current_command = m_history[m_history_index];
417
            m_current_command = m_history[m_history_index];
417
            m_caret = m_current_command.size();
418
            m_caret = m_current_command.size();
418
        }
419
        }
419
        break;
420
        break;
420
 
421
 
421
    case GLUT_KEY_DOWN:
422
    case GLUT_KEY_DOWN:
422
        if (m_history_index < m_history.size())
423
        if (m_history_index < m_history.size())
423
        {
424
        {
424
            if (m_history_index < m_history.size()-1)
425
            if (m_history_index < m_history.size()-1)
425
                m_history_index++;
426
                m_history_index++;
426
 
427
 
427
            assert(m_history_index < m_history.size());
428
            assert(m_history_index < m_history.size());
428
            m_current_command = m_history[m_history_index];
429
            m_current_command = m_history[m_history_index];
429
            m_caret = m_current_command.size();
430
            m_caret = m_current_command.size();
430
        }
431
        }
431
        break;
432
        break;
432
    }
433
    }
433
}
434
}
434
 
435
 
435
//----------------------------------------------------------------------------
436
//----------------------------------------------------------------------------
436
 
437
 
437
void Console::execute(const char* buffer)
438
void Console::execute(const char* buffer)
438
{
439
{
439
    //split into command arg0 arg1 ..
440
    //split into command arg0 arg1 ..
440
    std::vector<std::string> tmp;
441
    std::vector<std::string> tmp;
441
 
442
 
442
    try {
443
    try {
443
        tmp = parse_cmdline(buffer);
444
        tmp = parse_cmdline(buffer);
444
    }
445
    }
445
    catch (std::exception& e)
446
    catch (std::exception& e)
446
    {
447
    {
447
        printf("Error: %s", e.what());
448
        printf("Error: %s", e.what());
448
        return;
449
        return;
449
    }
450
    }
450
 
451
 
451
    if (tmp.empty())
452
    if (tmp.empty())
452
        return;
453
        return;
453
 
454
 
454
    const std::string command_name = std::move(tmp[0]);
455
    const std::string command_name = std::move(tmp[0]);
455
    std::vector<std::string> args;
456
    std::vector<std::string> args;
456
    std::move(tmp.begin()+1, tmp.end(), std::back_inserter(args));
457
    std::move(tmp.begin()+1, tmp.end(), std::back_inserter(args));
457
 
458
 
458
    //find commands with matching names
459
    //find commands with matching names
459
    std::pair<command_map_t::const_iterator,command_map_t::const_iterator> rng;
460
    std::pair<command_map_t::const_iterator,command_map_t::const_iterator> rng;
460
    rng = m_commands.equal_range(command_name);
461
    rng = m_commands.equal_range(command_name);
461
 
462
 
462
     //find command with right number of arguments and execute
463
     //find command with right number of arguments and execute
463
    command_map_t::const_iterator it;
464
    command_map_t::const_iterator it;
464
     for (it=rng.first; it!=rng.second; ++it)
465
     for (it=rng.first; it!=rng.second; ++it)
465
     {
466
     {
466
         size_t arity = it->second->arity();
467
         size_t arity = it->second->arity();
467
         if (arity!=any_arity && arity!=args.size())
468
         if (arity!=any_arity && arity!=args.size())
468
             continue;
469
             continue;
469
 
470
 
470
         m_is_executing = true;
471
         m_is_executing = true;
471
 
472
 
472
         try {
473
         try {
473
             it->second->execute(args);
474
             it->second->execute(args);
474
         }
475
         }
475
         catch (std::exception& e)
476
         catch (std::exception& e)
476
         {
477
         {
477
             printf("Error: %s", e.what());
478
             printf("Error: %s", e.what());
478
         }
479
         }
479
         catch (...)
480
         catch (...)
480
         {
481
         {
481
             printf("Unknown exception.");
482
             printf("Unknown exception.");
482
         }
483
         }
483
 
484
 
484
         m_is_executing = false;
485
         m_is_executing = false;
485
 
486
 
486
         return;
487
         return;
487
     }
488
     }
488
 
489
 
489
    //didn't find a matching command: error!
490
    //didn't find a matching command: error!
490
     if (rng.first == rng.second)
491
     if (rng.first == rng.second)
491
         printf("Syntax error: Command '%s' not found.", command_name.c_str());
492
         printf("Syntax error: Command '%s' not found.", command_name.c_str());
492
     else
493
     else
493
        printf("Syntax error: Command '%s' with %u arguments not found.",
494
        printf("Syntax error: Command '%s' with %u arguments not found.",
494
            command_name.c_str(), args.size());
495
            command_name.c_str(), args.size());
495
}
496
}
496
 
497
 
497
void Console::executef(const char* format, ...)
498
void Console::executef(const char* format, ...)
498
{
499
{
499
    //format text
500
    //format text
500
    char buffer[1024];
501
    char buffer[1024];
501
    va_list arguments;
502
    va_list arguments;
502
    va_start(arguments, format);
503
    va_start(arguments, format);
503
    vsprintf(buffer, format, arguments);
504
    vsprintf(buffer, format, arguments);
504
    va_end(arguments);
505
    va_end(arguments);
505
 
506
 
506
    execute(buffer);
507
    execute(buffer);
507
}
508
}
508
 
509
 
509
//----------------------------------------------------------------------------
510
//----------------------------------------------------------------------------
510
 
511
 
511
std::vector<std::string> Console::parse_cmdline(const char* buffer) const
512
std::vector<std::string> Console::parse_cmdline(const char* buffer) const
512
{
513
{
513
    std::string str(buffer);
514
    std::string str(buffer);
514
    std::vector<std::string> tmp;
515
    std::vector<std::string> tmp;
515
    size_t curr = 0;
516
    size_t curr = 0;
516
    while (true)
517
    while (true)
517
    {
518
    {
518
        //eat whitespace, nom nom nom
519
        //eat whitespace, nom nom nom
519
        size_t start = str.find_first_not_of(' ', curr);
520
        size_t start = str.find_first_not_of(' ', curr);
520
        if (start == std::string::npos)
521
        if (start == std::string::npos)
521
            break;
522
            break;
522
 
523
 
523
        //grouping delimiters, note: doesn't have nesting
524
        //grouping delimiters, note: doesn't have nesting
524
        const char delim[] = { '[' ,']', '(', ')', '{', '}', '"', '"'};
525
        const char delim[] = { '[' ,']', '(', ')', '{', '}', '"', '"'};
525
        const size_t n = sizeof(delim) / sizeof(delim[0]);
526
        const size_t n = sizeof(delim) / sizeof(delim[0]);
526
 
527
 
527
        char c = ' ';
528
        char c = ' ';
528
        for (size_t i=0; i<n; i+=2)
529
        for (size_t i=0; i<n; i+=2)
529
        {
530
        {
530
            if (str[start] != delim[i])
531
            if (str[start] != delim[i])
531
                continue;
532
                continue;
532
 
533
 
533
            c = delim[i+1];
534
            c = delim[i+1];
534
 
535
 
535
            if (c == '"')
536
            if (c == '"')
536
                start++;
537
                start++;
537
            break;
538
            break;
538
        }
539
        }
539
 
540
 
540
        //find closing character
541
        //find closing character
541
        size_t end = str.find_first_of(c, start+1);
542
        size_t end = str.find_first_of(c, start+1);
542
 
543
 
543
        //done?
544
        //done?
544
        if (end == std::string::npos)
545
        if (end == std::string::npos)
545
        {
546
        {
546
            if (c != ' ')
547
            if (c != ' ')
547
            {
548
            {
548
                std::stringstream ss;
549
                std::stringstream ss;
549
                ss << "Missing closing '" << c << "' in expression.";
550
                ss << "Missing closing '" << c << "' in expression.";
550
                throw std::invalid_argument(ss.str());
551
                throw std::invalid_argument(ss.str());
551
            }
552
            }
552
 
553
 
553
            tmp.push_back(str.substr(start, end));
554
            tmp.push_back(str.substr(start, end));
554
            break;
555
            break;
555
        }
556
        }
556
 
557
 
557
        //don't include '"' or trailing ' '
558
        //don't include '"' or trailing ' '
558
        if (c=='"' || c==' ')
559
        if (c=='"' || c==' ')
559
            end--;
560
            end--;
560
 
561
 
561
        size_t len = end - start + 1;
562
        size_t len = end - start + 1;
562
        tmp.push_back(str.substr(start, len));
563
        tmp.push_back(str.substr(start, len));
563
 
564
 
564
        if (c=='"' || c==' ')
565
        if (c=='"' || c==' ')
565
            end++;
566
            end++;
566
 
567
 
567
        curr = end+1;
568
        curr = end+1;
568
    }
569
    }
569
 
570
 
570
    return tmp;
571
    return tmp;
571
}
572
}
572
 
573
 
573
//----------------------------------------------------------------------------
574
//----------------------------------------------------------------------------
574
 
575
 
575
void Console::print(const char* buffer)
576
void Console::print(const char* buffer)
576
{
577
{
577
    std::string tmp(buffer);
578
    std::string tmp(buffer);
578
 
579
 
579
    //parse into multiple lines
580
    //parse into multiple lines
580
    size_t curr = 0;
581
    size_t curr = 0;
581
    while (curr < tmp.length())
582
    while (curr < tmp.length())
582
    {
583
    {
583
        //TODO: handle '\t'
584
        //TODO: handle '\t'
584
        size_t end = tmp.find('\n', curr);
585
        size_t end = tmp.find('\n', curr);
585
 
586
 
586
        if (end == std::string::npos)
587
        if (end == std::string::npos)
587
        {
588
        {
588
            m_buffer.push_back(tmp.substr(curr, end));
589
            m_buffer.push_back(tmp.substr(curr, end));
589
            break;
590
            break;
590
        }
591
        }
591
 
592
 
592
        size_t len = end-curr;
593
        size_t len = end-curr;
593
        m_buffer.push_back(tmp.substr(curr, len));
594
        m_buffer.push_back(tmp.substr(curr, len));
594
        curr = end + 1;
595
        curr = end + 1;
595
    }
596
    }
596
}
597
}
597
 
598
 
598
void Console::printf(const char* format, ...)
599
void Console::printf(const char* format, ...)
599
{
600
{
600
    //format text
601
    //format text
601
    char buffer[1024];
602
    char buffer[1024];
602
    va_list args;
603
    va_list args;
603
    va_start(args, format);
604
    va_start(args, format);
604
    vsprintf(buffer, format, args);
605
    vsprintf(buffer, format, args);
605
    va_end(args);
606
    va_end(args);
606
 
607
 
607
    print(buffer);
608
    print(buffer);
608
}
609
}
609
 
610
 
610
void Console::newline()
611
void Console::newline()
611
{
612
{
612
    m_buffer.push_back("");
613
    m_buffer.push_back("");
613
}
614
}
614
 
615
 
615
//----------------------------------------------------------------------------
616
//----------------------------------------------------------------------------
616
 
617
 
617
Console::cmd_token Console::add_command(const std::string& name,
618
Console::cmd_token Console::add_command(const std::string& name,
618
                                        std::unique_ptr<command_base>&& ptr)
619
                                        std::unique_ptr<command_base>&& ptr)
619
{
620
{
620
    auto it = m_commands.insert(std::make_pair(name, std::move(ptr)));
621
    auto it = m_commands.insert(std::make_pair(name, std::move(ptr)));
621
    return it->second->get_id();
622
    return it->second->get_id();
622
}
623
}
623
 
624
 
624
void Console::remove_command(cmd_token id)
625
void Console::remove_command(cmd_token id)
625
{
626
{
626
    for (auto it=m_commands.begin(); it!=m_commands.end(); ++it)
627
    for (auto it=m_commands.begin(); it!=m_commands.end(); ++it)
627
    {
628
    {
628
        if (it->second->get_id() != id)
629
        if (it->second->get_id() != id)
629
            continue;
630
            continue;
630
 
631
 
631
        m_commands.erase(it);
632
        m_commands.erase(it);
632
        return;
633
        return;
633
    }
634
    }
634
 
635
 
635
    assert(false);
636
    assert(false);
636
}
637
}
637
 
638
 
638
//----------------------------------------------------------------------------
639
//----------------------------------------------------------------------------
639
 
640
 
640
const char* Console::get_name(cmd_token id) const
641
const char* Console::get_name(cmd_token id) const
641
{
642
{
642
    for (auto it=m_commands.begin(); it!=m_commands.end(); ++it)
643
    for (auto it=m_commands.begin(); it!=m_commands.end(); ++it)
643
    {
644
    {
644
        if (it->second->get_id() != id)
645
        if (it->second->get_id() != id)
645
            continue;
646
            continue;
646
 
647
 
647
        return it->first.c_str();
648
        return it->first.c_str();
648
    }
649
    }
649
 
650
 
650
    assert(false);
651
    assert(false);
651
    return NULL;
652
    return NULL;
652
}
653
}
653
 
654
 
654
const char* Console::get_help(cmd_token id) const
655
const char* Console::get_help(cmd_token id) const
655
{
656
{
656
    for (auto it=m_commands.begin(); it!=m_commands.end(); ++it)
657
    for (auto it=m_commands.begin(); it!=m_commands.end(); ++it)
657
    {
658
    {
658
        if (it->second->get_id() != id)
659
        if (it->second->get_id() != id)
659
            continue;
660
            continue;
660
 
661
 
661
        return it->second->get_help();
662
        return it->second->get_help();
662
    }
663
    }
663
 
664
 
664
    assert(false);
665
    assert(false);
665
    return NULL;
666
    return NULL;
666
}
667
}
667
 
668
 
668
//----------------------------------------------------------------------------
669
//----------------------------------------------------------------------------
669
 
670
 
670
void Console::clear()
671
void Console::clear()
671
{
672
{
672
    m_buffer.clear();
673
    m_buffer.clear();
673
}
674
}
674
 
675
 
675
void Console::history()
676
void Console::history()
676
{
677
{
677
    printf("Printing history:");
678
    printf("Printing history:");
678
    std::vector<std::string>::const_iterator it;
679
    std::vector<std::string>::const_iterator it;
679
    for (it=m_history.begin(); it!=m_history.end(); ++it)
680
    for (it=m_history.begin(); it!=m_history.end(); ++it)
680
        printf("  %s", it->c_str());
681
        printf("  %s", it->c_str());
681
}
682
}
682
 
683
 
683
void Console::help()
684
void Console::help()
684
{
685
{
685
    printf("Printing list of commands:");
686
    printf("Printing list of commands:");
686
 
687
 
687
    command_map_t::const_iterator it = m_commands.begin();
688
    command_map_t::const_iterator it = m_commands.begin();
688
    while (it != m_commands.end())
689
    while (it != m_commands.end())
689
    {
690
    {
690
        int n = 0;
691
        int n = 0;
691
        std::string prev = it->first;
692
        std::string prev = it->first;
692
        do
693
        do
693
        {
694
        {
694
            ++n;
695
            ++n;
695
            ++it;
696
            ++it;
696
        }
697
        }
697
        while (it!=m_commands.end() && it->first==prev);
698
        while (it!=m_commands.end() && it->first==prev);
698
 
699
 
699
        printf("  %s(%i)", prev.c_str(), n);
700
        printf("  %s(%i)", prev.c_str(), n);
700
    }
701
    }
701
}
702
}
702
 
703
 
703
void Console::help(const std::string& cmd)
704
void Console::help(const std::string& cmd)
704
{
705
{
705
    std::pair<command_map_t::const_iterator,command_map_t::const_iterator> rng;
706
    std::pair<command_map_t::const_iterator,command_map_t::const_iterator> rng;
706
    rng = m_commands.equal_range(cmd);
707
    rng = m_commands.equal_range(cmd);
707
 
708
 
708
    if (rng.first == rng.second)
709
    if (rng.first == rng.second)
709
    {
710
    {
710
        printf("Command '%s' not found.", cmd.c_str());
711
        printf("Command '%s' not found.", cmd.c_str());
711
        return;
712
        return;
712
    }
713
    }
713
 
714
 
714
    printf("Printing help for command(s) '%s':", cmd.c_str());
715
    printf("Printing help for command(s) '%s':", cmd.c_str());
715
 
716
 
716
    for (command_map_t::const_iterator it=rng.first; it!=rng.second; ++it)
717
    for (command_map_t::const_iterator it=rng.first; it!=rng.second; ++it)
717
    {
718
    {
718
        std::stringstream ss;
719
        std::stringstream ss;
719
        if (it->second->arity() != any_arity)
720
        if (it->second->arity() != any_arity)
720
            for (size_t i=0; i<it->second->arity(); ++i)
721
            for (size_t i=0; i<it->second->arity(); ++i)
721
                ss << "arg" << i << " ";
722
                ss << "arg" << i << " ";
722
        else
723
        else
723
            ss << "arg0, arg1, .., argN";
724
            ss << "arg0, arg1, .., argN";
724
 
725
 
725
        printf("  %s %s: %s",
726
        printf("  %s %s: %s",
726
            it->first.c_str(), ss.str().c_str(),
727
            it->first.c_str(), ss.str().c_str(),
727
            it->second->get_help());
728
            it->second->get_help());
728
    }
729
    }
729
}
730
}
730
 
731
 
731
//----------------------------------------------------------------------------
732
//----------------------------------------------------------------------------
732
 
733
 
733
const unsigned char Console::g_png_data[] = {
734
const unsigned char Console::g_png_data[] = {
734
 
735
 
735
    0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00, 0x00, 0x0D,
736
    0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00, 0x00, 0x0D,
736
    0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00,
737
    0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00,
737
    0x08, 0x03, 0x00, 0x00, 0x00, 0x6B, 0xAC, 0x58, 0x54, 0x00, 0x00, 0x00,
738
    0x08, 0x03, 0x00, 0x00, 0x00, 0x6B, 0xAC, 0x58, 0x54, 0x00, 0x00, 0x00,
738
    0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xAE, 0xCE, 0x1C, 0xE9, 0x00, 0x00,
739
    0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xAE, 0xCE, 0x1C, 0xE9, 0x00, 0x00,
739
    0x00, 0x04, 0x67, 0x41, 0x4D, 0x41, 0x00, 0x00, 0xB1, 0x8F, 0x0B, 0xFC,
740
    0x00, 0x04, 0x67, 0x41, 0x4D, 0x41, 0x00, 0x00, 0xB1, 0x8F, 0x0B, 0xFC,
740
    0x61, 0x05, 0x00, 0x00, 0x03, 0x00, 0x50, 0x4C, 0x54, 0x45, 0x00, 0x00,
741
    0x61, 0x05, 0x00, 0x00, 0x03, 0x00, 0x50, 0x4C, 0x54, 0x45, 0x00, 0x00,
741
    0x00, 0x3A, 0x3A, 0x3A, 0x66, 0x66, 0x66, 0x90, 0x90, 0x90, 0xB6, 0xB6,
742
    0x00, 0x3A, 0x3A, 0x3A, 0x66, 0x66, 0x66, 0x90, 0x90, 0x90, 0xB6, 0xB6,
742
    0xB6, 0xDB, 0xDB, 0xDB, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00,
743
    0xB6, 0xDB, 0xDB, 0xDB, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00,
743
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
744
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
744
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
745
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
745
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
746
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
746
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
747
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
747
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
748
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
748
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
749
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
749
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
750
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
750
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
751
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
751
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
752
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
752
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
753
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
753
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
754
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
754
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
755
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
755
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
756
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
756
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
757
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
757
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
758
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
758
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
759
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
759
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
760
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
760
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
761
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
761
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
762
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
762
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
763
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
763
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
764
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
764
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
765
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
765
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
766
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
766
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
767
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
767
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
768
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
768
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
769
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
769
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
770
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
770
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
771
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
771
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
772
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
772
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
773
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
773
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
774
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
774
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
775
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
775
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
776
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
776
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
777
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
777
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
778
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
778
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
779
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
779
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
780
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
780
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
781
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
781
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
782
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
782
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
783
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
783
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
784
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
784
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
785
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
785
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
786
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
786
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
787
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
787
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
788
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
788
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
789
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
789
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
790
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
790
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
791
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
791
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
792
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
792
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
793
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
793
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
794
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
794
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
795
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
795
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
796
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
796
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
797
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
797
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
798
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
798
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
799
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
799
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
800
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
800
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
801
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
801
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
802
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
802
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
803
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
803
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
804
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
804
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC5, 0x75,
805
    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC5, 0x75,
805
    0x62, 0x5B, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00,
806
    0x62, 0x5B, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, 0x00,
806
    0x0E, 0xC3, 0x00, 0x00, 0x0E, 0xC3, 0x01, 0xC7, 0x6F, 0xA8, 0x64, 0x00,
807
    0x0E, 0xC3, 0x00, 0x00, 0x0E, 0xC3, 0x01, 0xC7, 0x6F, 0xA8, 0x64, 0x00,
807
    0x00, 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6F, 0x66, 0x74, 0x77,
808
    0x00, 0x00, 0x19, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6F, 0x66, 0x74, 0x77,
808
    0x61, 0x72, 0x65, 0x00, 0x50, 0x61, 0x69, 0x6E, 0x74, 0x2E, 0x4E, 0x45,
809
    0x61, 0x72, 0x65, 0x00, 0x50, 0x61, 0x69, 0x6E, 0x74, 0x2E, 0x4E, 0x45,
809
    0x54, 0x20, 0x76, 0x33, 0x2E, 0x35, 0x2E, 0x38, 0x37, 0x3B, 0x80, 0x5D,
810
    0x54, 0x20, 0x76, 0x33, 0x2E, 0x35, 0x2E, 0x38, 0x37, 0x3B, 0x80, 0x5D,
810
    0x00, 0x00, 0x13, 0x3D, 0x49, 0x44, 0x41, 0x54, 0x78, 0x5E, 0xED, 0x5D,
811
    0x00, 0x00, 0x13, 0x3D, 0x49, 0x44, 0x41, 0x54, 0x78, 0x5E, 0xED, 0x5D,
811
    0xD9, 0x72, 0xDB, 0x30, 0x0C, 0xB4, 0x75, 0xFD, 0xFF, 0x27, 0x77, 0x41,
812
    0xD9, 0x72, 0xDB, 0x30, 0x0C, 0xB4, 0x75, 0xFD, 0xFF, 0x27, 0x77, 0x41,
812
    0x77, 0x6A, 0xEC, 0x42, 0x25, 0x82, 0x52, 0x8E, 0x93, 0x94, 0x99, 0xC9,
813
    0x77, 0x6A, 0xEC, 0x42, 0x25, 0x82, 0x52, 0x8E, 0x93, 0x94, 0x99, 0xC9,
813
    0x03, 0x2D, 0x89, 0xC7, 0x12, 0x24, 0x71, 0xF3, 0x76, 0x9B, 0x7F, 0x13,
814
    0x03, 0x2D, 0x89, 0xC7, 0x12, 0x24, 0x71, 0xF3, 0x76, 0x9B, 0x7F, 0x13,
814
    0x81, 0x89, 0xC0, 0x44, 0x60, 0x22, 0xA0, 0x08, 0x1C, 0xC7, 0x4E, 0x3F,
815
    0x81, 0x89, 0xC0, 0x44, 0x60, 0x22, 0xA0, 0x08, 0x1C, 0xC7, 0x4E, 0x3F,
815
    0x7D, 0x76, 0x39, 0x9B, 0x91, 0xAC, 0x3F, 0xD5, 0xF1, 0x84, 0xF6, 0xB6,
816
    0x7D, 0x76, 0x39, 0x9B, 0x91, 0xAC, 0x3F, 0xD5, 0xF1, 0x84, 0xF6, 0xB6,
816
    0xDB, 0x4A, 0xBF, 0x7D, 0x76, 0x39, 0x03, 0x20, 0xEB, 0x8F, 0x7E, 0x5F,
817
    0xDB, 0x4A, 0xBF, 0x7D, 0x76, 0x39, 0x03, 0x20, 0xEB, 0x8F, 0x7E, 0x5F,
817
    0x7D, 0xFF, 0x96, 0x7D, 0xF0, 0xEA, 0xE7, 0x13, 0x80, 0x04, 0x81, 0x6C,
818
    0x7D, 0xFF, 0x96, 0x7D, 0xF0, 0xEA, 0xE7, 0x13, 0x80, 0x04, 0x81, 0x6C,
818
    0x02, 0x26, 0x05, 0x08, 0x02, 0x55, 0xC0, 0xE6, 0x12, 0xC8, 0x10, 0x7B,
819
    0x02, 0x26, 0x05, 0x08, 0x02, 0x55, 0xC0, 0xE6, 0x12, 0xC8, 0x10, 0x7B,
819
    0xF5, 0xF3, 0xB9, 0x07, 0xBC, 0x7B, 0x0F, 0xC8, 0xCE, 0xD9, 0x57, 0x3F,
820
    0xF5, 0xF3, 0xB9, 0x07, 0xBC, 0x7B, 0x0F, 0xC8, 0xCE, 0xD9, 0x57, 0x3F,
820
    0xCF, 0x28, 0x20, 0x6B, 0x7F, 0x98, 0x0F, 0xC8, 0x3A, 0x30, 0x9F, 0x4F,
821
    0xCF, 0x28, 0x20, 0x6B, 0x7F, 0x98, 0x0F, 0xC8, 0x3A, 0x30, 0x9F, 0x4F,
821
    0x04, 0x26, 0x02, 0x13, 0x81, 0x89, 0xC0, 0x44, 0xE0, 0x07, 0x21, 0x90,
822
    0x04, 0x26, 0x02, 0x13, 0x81, 0x89, 0xC0, 0x44, 0xE0, 0x07, 0x21, 0x90,
822
    0x9D, 0xAB, 0x5F, 0xFD, 0xF9, 0xF0, 0x54, 0xBC, 0x9A, 0xB5, 0x7D, 0x75,
823
    0x9D, 0xAB, 0x5F, 0xFD, 0xF9, 0xF0, 0x54, 0xBC, 0x9A, 0xB5, 0x7D, 0x75,
823
    0xFD, 0x13, 0x80, 0x51, 0x04, 0x5E, 0x3D, 0x43, 0xAF, 0xAE, 0x7F, 0x74,
824
    0xFD, 0x13, 0x80, 0x51, 0x04, 0x5E, 0x3D, 0x43, 0xAF, 0xAE, 0x7F, 0x74,
824
    0xFC, 0x6F, 0x17, 0x7F, 0x47, 0x01, 0x9A, 0x00, 0x8C, 0x22, 0x30, 0x3A,
825
    0xFC, 0x6F, 0x17, 0x7F, 0x47, 0x01, 0x9A, 0x00, 0x8C, 0x22, 0x30, 0x3A,
825
    0x03, 0xEF, 0xFE, 0x7E, 0x74, 0xFC, 0x73, 0x09, 0x7C, 0xF5, 0x73, 0x3E,
826
    0x03, 0xEF, 0xFE, 0x7E, 0x74, 0xFC, 0x73, 0x09, 0x7C, 0xF5, 0x73, 0x3E,
826
    0xEB, 0xDF, 0x30, 0x05, 0xCC, 0x0A, 0x26, 0x02, 0x13, 0x81, 0x89, 0xC0,
827
    0xEB, 0xDF, 0x30, 0x05, 0xCC, 0x0A, 0x26, 0x02, 0x13, 0x81, 0x89, 0xC0,
827
    0x44, 0x60, 0x22, 0xF0, 0x44, 0x60, 0x65, 0xEB, 0xF8, 0xBE, 0x2D, 0xC7,
828
    0x44, 0x60, 0x22, 0xF0, 0x44, 0x60, 0x65, 0xEB, 0xF8, 0xBE, 0x2D, 0xC7,
828
    0xBD, 0x8B, 0xCF, 0xE6, 0x1F, 0xAF, 0x66, 0x5C, 0xDF, 0x9C, 0x7D, 0x79,
829
    0xBD, 0x8B, 0xCF, 0xE6, 0x1F, 0xAF, 0x66, 0x5C, 0xDF, 0x9C, 0x7D, 0x79,
829
    0x3D, 0x8E, 0x85, 0x3E, 0x5F, 0x8F, 0xA0, 0xB8, 0xF6, 0x3F, 0xAC, 0x6C,
830
    0x3D, 0x8E, 0x85, 0x3E, 0x5F, 0x8F, 0xA0, 0xB8, 0xF6, 0x3F, 0xAC, 0x6C,
830
    0x9B, 0xBE, 0xDD, 0xEE, 0xFA, 0xC3, 0xF0, 0x64, 0xAD, 0x5B, 0xB7, 0x0A,
831
    0x9B, 0xBE, 0xDD, 0xEE, 0xFA, 0xC3, 0xF0, 0x64, 0xAD, 0x5B, 0xB7, 0x0A,
831
    0x01, 0x60, 0xDB, 0xEE, 0x04, 0xC0, 0x7D, 0xBB, 0xED, 0x7E, 0x44, 0xDB,
832
    0x01, 0x60, 0xDB, 0xEE, 0x04, 0xC0, 0x7D, 0xBB, 0xED, 0x7E, 0x44, 0xDB,
832
    0x41, 0x23, 0x3C, 0x6E, 0xDB, 0xB2, 0xB8, 0x06, 0xEE, 0xC7, 0x6D, 0x61,
833
    0x41, 0x23, 0x3C, 0x6E, 0xDB, 0xB2, 0xB8, 0x06, 0xEE, 0xC7, 0x6D, 0x61,
833
    0x44, 0x17, 0x05, 0x80, 0xAA, 0xBB, 0xDD, 0x18, 0xAF, 0xFB, 0xB1, 0xAC,
834
    0x44, 0x17, 0x05, 0x80, 0xAA, 0xBB, 0xDD, 0x18, 0xAF, 0xFB, 0xB1, 0xAC,
834
    0xFB, 0xC5, 0x10, 0xEC, 0xFD, 0x09, 0xF5, 0xDD, 0x07, 0x52, 0xDB, 0x8A,
835
    0xFB, 0xC5, 0x10, 0xEC, 0xFD, 0x09, 0xF5, 0xDD, 0x07, 0x52, 0xDB, 0x8A,
835
    0x31, 0xB8, 0x3F, 0x3C, 0xF6, 0x15, 0x00, 0x2E, 0x7A, 0x6C, 0x00, 0xF8,
836
    0x31, 0xB8, 0x3F, 0x3C, 0xF6, 0x15, 0x00, 0x2E, 0x7A, 0x6C, 0x00, 0xF8,
836
    0x1F, 0xEE, 0xFB, 0x8D, 0xBF, 0x57, 0x3C, 0x6E, 0x3A, 0x1F, 0x82, 0xD7,
837
    0x1F, 0xEE, 0xFB, 0x8D, 0xBF, 0x57, 0x3C, 0x6E, 0x3A, 0x1F, 0x82, 0xD7,
837
    0x6D, 0x17, 0x02, 0x94, 0xFE, 0xD5, 0xE9, 0x41, 0x1B, 0xD0, 0x1A, 0xFA,
838
    0x6D, 0x17, 0x02, 0x94, 0xFE, 0xD5, 0xE9, 0x41, 0x1B, 0xD0, 0x1A, 0xFA,
838
    0x0D, 0xEC, 0x98, 0xF0, 0xE3, 0x78, 0x4E, 0xC9, 0xBA, 0x61, 0x88, 0xEE,
839
    0x0D, 0xEC, 0x98, 0xF0, 0xE3, 0x78, 0x4E, 0xC9, 0xBA, 0x61, 0x88, 0xEE,
839
    0x6F, 0x3B, 0x76, 0xBF, 0x00, 0x6C, 0x42, 0xB7, 0x3E, 0xC5, 0x85, 0x05,
840
    0x6F, 0x3B, 0x76, 0xBF, 0x00, 0x6C, 0x42, 0xB7, 0x3E, 0xC5, 0x85, 0x05,
840
    0x46, 0x14, 0x11, 0x29, 0x60, 0x18, 0x80, 0x8D, 0x97, 0x64, 0x40, 0x30,
841
    0x46, 0x14, 0x11, 0x29, 0x60, 0x18, 0x80, 0x8D, 0x97, 0x64, 0x40, 0x30,
841
    0x69, 0x00, 0x6B, 0x94, 0xA7, 0xFC, 0x90, 0xF1, 0x09, 0xC0, 0xAB, 0x3E,
842
    0x69, 0x00, 0x6B, 0x94, 0xA7, 0xFC, 0x90, 0xF1, 0x09, 0xC0, 0xAB, 0x3E,
842
    0x97, 0x06, 0xE3, 0x7C, 0x08, 0x49, 0xE8, 0x1E, 0x30, 0x0A, 0x00, 0x4F,
843
    0x97, 0x06, 0xE3, 0x7C, 0x08, 0x49, 0xE8, 0x1E, 0x30, 0x0A, 0x00, 0x4F,
843
    0xD8, 0x09, 0x01, 0x25, 0x0D, 0x6C, 0x8B, 0xD4, 0xB0, 0xC8, 0x2E, 0x77,
844
    0xD8, 0x09, 0x01, 0x25, 0x0D, 0x6C, 0x8B, 0xD4, 0xB0, 0xC8, 0x2E, 0x77,
844
    0x60, 0xDB, 0x7B, 0x2E, 0xB2, 0x75, 0xDF, 0x0E, 0x46, 0x4C, 0x01, 0x08,
845
    0x60, 0xDB, 0x7B, 0x2E, 0xB2, 0x75, 0xDF, 0x0E, 0x46, 0x4C, 0x01, 0x08,
845
    0xF4, 0xD1, 0x25, 0xD1, 0x07, 0x05, 0x76, 0x16, 0xB1, 0xED, 0x49, 0xDD,
846
    0xF4, 0xD1, 0x25, 0xD1, 0x07, 0x05, 0x76, 0x16, 0xB1, 0xED, 0x49, 0xDD,
846
    0x35, 0xCE, 0x04, 0x5A, 0x5D, 0x41, 0xF7, 0xD6, 0x3E, 0xB5, 0xB0, 0x2E,
847
    0x35, 0xCE, 0x04, 0x5A, 0x5D, 0x41, 0xF7, 0xD6, 0x3E, 0xB5, 0xB0, 0x2E,
847
    0xB4, 0xE8, 0xD7, 0x75, 0xBF, 0xBB, 0x9D, 0x1C, 0xAF, 0xEE, 0x3B, 0xEF,
848
    0xB4, 0xE8, 0xD7, 0x75, 0xBF, 0xBB, 0x9D, 0x1C, 0xAF, 0xEE, 0x3B, 0xEF,
848
    0x82, 0xDC, 0x66, 0xC4, 0x3B, 0x59, 0xA3, 0xA3, 0x14, 0x10, 0x0E, 0x21,
849
    0x82, 0xDC, 0x66, 0xC4, 0x3B, 0x59, 0xA3, 0xA3, 0x14, 0x10, 0x0E, 0x21,
849
    0xC5, 0x40, 0x4E, 0x01, 0x7D, 0xBC, 0xDF, 0x75, 0x97, 0xC4, 0x36, 0xFD,
850
    0xC5, 0x40, 0x4E, 0x01, 0x7D, 0xBC, 0xDF, 0x75, 0x97, 0xC4, 0x36, 0xFD,
850
    0x7C, 0x09, 0xE4, 0x41, 0x00, 0xD8, 0x82, 0x76, 0x5B, 0x46, 0x04, 0x3C,
851
    0x7C, 0x09, 0xE4, 0x41, 0x00, 0xD8, 0x82, 0x76, 0x5B, 0x46, 0x04, 0x3C,
851
    0x5D, 0x02, 0xD9, 0x1E, 0x05, 0x0A, 0xEB, 0x9F, 0xD2, 0xFC, 0x3C, 0x1C,
852
    0x5D, 0x02, 0xD9, 0x1E, 0x05, 0x0A, 0xEB, 0x9F, 0xD2, 0xFC, 0x3C, 0x1C,
852
    0xB3, 0xE1, 0xE3, 0x04, 0x80, 0xE3, 0x46, 0x55, 0x18, 0xC5, 0xF9, 0x16,
853
    0xB3, 0xE1, 0xE3, 0x04, 0x80, 0xE3, 0x46, 0x55, 0x18, 0xC5, 0xF9, 0x16,
853
    0x30, 0xE3, 0x58, 0x02, 0x0E, 0x10, 0xDB, 0x32, 0xBB, 0x08, 0xF4, 0x37,
854
    0x30, 0xE3, 0x58, 0x02, 0x0E, 0x10, 0xDB, 0x32, 0xBB, 0x08, 0xF4, 0x37,
854
    0xC1, 0x13, 0xC4, 0x64, 0xCD, 0xAC, 0xC2, 0x67, 0x84, 0x19, 0x63, 0x00,
855
    0xC1, 0x13, 0xC4, 0x64, 0xCD, 0xAC, 0xC2, 0x67, 0x84, 0x19, 0x63, 0x00,
855
    0x12, 0xA6, 0xA6, 0xBA, 0x24, 0xF0, 0x7E, 0x8F, 0xBE, 0x3F, 0x52, 0x5D,
856
    0x12, 0xA6, 0xA6, 0xBA, 0x24, 0xF0, 0x7E, 0x8F, 0xBE, 0x3F, 0x52, 0x5D,
856
    0x76, 0x0C, 0x66, 0x75, 0x04, 0xBE, 0xA2, 0xCF, 0xE5, 0xF4, 0x8F, 0xA4,
857
    0x76, 0x0C, 0x66, 0x75, 0x04, 0xBE, 0xA2, 0xCF, 0xE5, 0xF4, 0x8F, 0xA4,
857
    0xAC, 0xB1, 0xB3, 0xE7, 0xA3, 0x00, 0x30, 0x5F, 0xA5, 0x8C, 0x50, 0xDA,
858
    0xAC, 0xB1, 0xB3, 0xE7, 0xA3, 0x00, 0x30, 0x5F, 0xA5, 0x8C, 0x50, 0xDA,
858
    0x23, 0x65, 0x13, 0xD2, 0x0F, 0xBE, 0xE0, 0x0B, 0x44, 0xA3, 0xD9, 0x29,
859
    0x23, 0x65, 0x13, 0xD2, 0x0F, 0xBE, 0xE0, 0x0B, 0x44, 0xA3, 0xD9, 0x29,
859
    0xFD, 0x05, 0xFB, 0x3F, 0xBB, 0x34, 0x11, 0x98, 0x08, 0x4C, 0x04, 0xBE,
860
    0xFD, 0x05, 0xFB, 0x3F, 0xBB, 0x34, 0x11, 0x98, 0x08, 0x4C, 0x04, 0xBE,
860
    0x0F, 0x02, 0xE0, 0xDC, 0xB9, 0xB3, 0x60, 0x5B, 0xE8, 0x20, 0x03, 0xB3,
861
    0x0F, 0x02, 0xE0, 0xDC, 0xB9, 0xB3, 0x60, 0x5B, 0xE8, 0x20, 0x03, 0xB3,
861
    0x4B, 0x2F, 0xE8, 0x73, 0x30, 0x36, 0x72, 0xF0, 0xED, 0x24, 0xFE, 0x1A,
862
    0x4B, 0x2F, 0xE8, 0x73, 0x30, 0x36, 0x72, 0xF0, 0xED, 0x24, 0xFE, 0x1A,
862
    0x63, 0x44, 0xE2, 0x16, 0x58, 0x25, 0x27, 0xCF, 0x37, 0xC6, 0xC9, 0x7F,
863
    0x63, 0x44, 0xE2, 0x16, 0x58, 0x25, 0x27, 0xCF, 0x37, 0xC6, 0xC9, 0x7F,
863
    0x20, 0xFA, 0x84, 0x1B, 0xCA, 0xD7, 0x1F, 0xD5, 0x32, 0x22, 0x5F, 0x34,
864
    0x20, 0xFA, 0x84, 0x1B, 0xCA, 0xD7, 0x1F, 0xD5, 0x32, 0x22, 0x5F, 0x34,
864
    0x36, 0xC2, 0xB3, 0x22, 0xCB, 0xCE, 0xE2, 0x3B, 0xF4, 0x1F, 0x37, 0x55,
865
    0x36, 0xC2, 0xB3, 0x22, 0xCB, 0xCE, 0xE2, 0x3B, 0xF4, 0x1F, 0x37, 0x55,
865
    0x48, 0x70, 0x79, 0x23, 0x5E, 0x54, 0x84, 0xFF, 0xF8, 0x31, 0x1A, 0xF7,
866
    0x48, 0x70, 0x79, 0x23, 0x5E, 0x54, 0x84, 0xFF, 0xF8, 0x31, 0x1A, 0xF7,
866
    0xDC, 0xAF, 0xF1, 0xD5, 0xBE, 0x6C, 0x7D, 0xA9, 0x8A, 0x2B, 0xA2, 0x51,
867
    0xDC, 0xAF, 0xF1, 0xD5, 0xBE, 0x6C, 0x7D, 0xA9, 0x8A, 0x2B, 0xA2, 0x51,
867
    0xE1, 0x09, 0x3E, 0xD1, 0x7E, 0x50, 0xFF, 0xAD, 0x31, 0x9A, 0x42, 0xD5,
868
    0xE1, 0x09, 0x3E, 0xD1, 0x7E, 0x50, 0xFF, 0xAD, 0x31, 0x9A, 0x42, 0xD5,
868
    0x5F, 0xA0, 0x3A, 0x15, 0xE8, 0xA9, 0x41, 0x41, 0x4C, 0x01, 0x38, 0x93,
869
    0x5F, 0xA0, 0x3A, 0x15, 0xE8, 0xA9, 0x41, 0x41, 0x4C, 0x01, 0x38, 0x93,
869
    0x6C, 0xFC, 0xF7, 0xA6, 0x6E, 0xF2, 0x03, 0x36, 0x36, 0x80, 0xBF, 0x51,
870
    0x6C, 0xFC, 0xF7, 0xA6, 0x6E, 0xF2, 0x03, 0x36, 0x36, 0x80, 0xBF, 0x51,
870
    0x5E, 0x3F, 0xF0, 0xFE, 0x5D, 0x46, 0xFB, 0x4C, 0x12, 0xA1, 0xFE, 0xA3,
871
    0x5E, 0x3F, 0xF0, 0xFE, 0x5D, 0x46, 0xFB, 0x4C, 0x12, 0xA1, 0xFE, 0xA3,
871
    0x00, 0x5E, 0xDD, 0xCB, 0x8F, 0x61, 0x0E, 0x99, 0x55, 0xC3, 0x1A, 0x22,
872
    0x00, 0x5E, 0xDD, 0xCB, 0x8F, 0x61, 0x0E, 0x99, 0x55, 0xC3, 0x1A, 0x22,
872
    0x0D, 0xD5, 0x71, 0xA7, 0x0F, 0x4C, 0x5C, 0xF4, 0x4B, 0x04, 0xC2, 0xA1,
873
    0x0D, 0xD5, 0x71, 0xA7, 0x0F, 0x4C, 0x5C, 0xF4, 0x4B, 0x04, 0xC2, 0xA1,
873
    0x8A, 0xA7, 0x82, 0x09, 0xAF, 0x18, 0x03, 0x9B, 0xA5, 0xC7, 0x04, 0x00,
874
    0x8A, 0xA7, 0x82, 0x09, 0xAF, 0x18, 0x03, 0x9B, 0xA5, 0xC7, 0x04, 0x00,
874
    0xD1, 0x58, 0x62, 0xC5, 0xF2, 0x12, 0x43, 0x75, 0xBC, 0xA4, 0x76, 0x5E,
875
    0xD1, 0x58, 0x62, 0xC5, 0xF2, 0x12, 0x43, 0x75, 0xBC, 0xA4, 0x76, 0x5E,
875
    0xC2, 0xFB, 0x82, 0x15, 0xDB, 0x07, 0x20, 0x68, 0x74, 0xFC, 0x0F, 0x98,
876
    0xC2, 0xFB, 0x82, 0x15, 0xDB, 0x07, 0x20, 0x68, 0x74, 0xFC, 0x0F, 0x98,
876
    0xB1, 0x48, 0xF5, 0xAE, 0x45, 0x03, 0x57, 0x46, 0xAC, 0x1A, 0x1F, 0x96,
877
    0xB1, 0x48, 0xF5, 0xAE, 0x45, 0x03, 0x57, 0x46, 0xAC, 0x1A, 0x1F, 0x96,
877
    0x16, 0x81, 0x57, 0x22, 0x8E, 0x75, 0x16, 0xF4, 0xF9, 0x5E, 0xBC, 0xB1,
878
    0x16, 0x81, 0x57, 0x22, 0x8E, 0x75, 0x16, 0xF4, 0xF9, 0x5E, 0xBC, 0xB1,
878
    0xCE, 0x8A, 0x15, 0x42, 0x1B, 0x3A, 0x28, 0xAB, 0x5E, 0x76, 0x49, 0x01,
879
    0xCE, 0x8A, 0x15, 0x42, 0x1B, 0x3A, 0x28, 0xAB, 0x5E, 0x76, 0x49, 0x01,
879
    0x90, 0xD7, 0xF0, 0x6F, 0xFD, 0x00, 0x6B, 0x2D, 0xFD, 0x00, 0x9A, 0xE8,
880
    0x90, 0xD7, 0xF0, 0x6F, 0xFD, 0x00, 0x6B, 0x2D, 0xFD, 0x00, 0x9A, 0xE8,
880
    0x48, 0x35, 0xF2, 0xF0, 0x6C, 0xCD, 0xAB, 0x38, 0x93, 0x68, 0x6D, 0x79,
881
    0x48, 0x35, 0xF2, 0xF0, 0x6C, 0xCD, 0xAB, 0x38, 0x93, 0x68, 0x6D, 0x79,
881
    0x94, 0x36, 0x81, 0xEE, 0x2F, 0xA7, 0x00, 0x01, 0xC9, 0x66, 0x87, 0xA7,
882
    0x94, 0x36, 0x81, 0xEE, 0x2F, 0xA7, 0x00, 0x01, 0xC9, 0x66, 0x87, 0xA7,
882
    0x58, 0x26, 0x34, 0x8E, 0x5F, 0x37, 0xA9, 0x40, 0x01, 0x7E, 0x8D, 0xD8,
883
    0x58, 0x26, 0x34, 0x8E, 0x5F, 0x37, 0xA9, 0x40, 0x01, 0x7E, 0x8D, 0xD8,
883
    0x43, 0x1E, 0xB2, 0x74, 0x18, 0xED, 0xCB, 0x8C, 0xB3, 0x16, 0x1A, 0xC7,
884
    0x43, 0x1E, 0xB2, 0x74, 0x18, 0xED, 0xCB, 0x8C, 0xB3, 0x16, 0x1A, 0xC7,
884
    0x02, 0x77, 0xD9, 0xA6, 0x8C, 0xFE, 0x8A, 0x7B, 0x80, 0x6E, 0xE9, 0x72,
885
    0x02, 0x77, 0xD9, 0xA6, 0x8C, 0xFE, 0x8A, 0x7B, 0x80, 0x6E, 0xE9, 0x72,
885
    0xCC, 0x61, 0x89, 0xD3, 0x1A, 0x52, 0x44, 0xED, 0xB9, 0x68, 0xA9, 0xC3,
886
    0xCC, 0x61, 0x89, 0xD3, 0x1A, 0x52, 0x44, 0xED, 0xB9, 0x68, 0xA9, 0xC3,
886
    0x1E, 0x40, 0xCF, 0xAD, 0x02, 0x9A, 0xA2, 0x70, 0x88, 0xD2, 0x73, 0x23,
887
    0x1E, 0x40, 0xCF, 0xAD, 0x02, 0x9A, 0xA2, 0x70, 0x88, 0xD2, 0x73, 0x23,
887
    0x29, 0x1D, 0xB0, 0x9E, 0xDB, 0xAA, 0xD4, 0xAC, 0x9D, 0x02, 0x57, 0x2B,
888
    0x29, 0x1D, 0xB0, 0x9E, 0xDB, 0xAA, 0xD4, 0xAC, 0x9D, 0x02, 0x57, 0x2B,
888
    0xD9, 0x3F, 0x9D, 0x05, 0x12, 0x02, 0xF9, 0xF4, 0xF6, 0xDF, 0xDD, 0xE0,
889
    0xD9, 0x3F, 0x9D, 0x05, 0x12, 0x02, 0xF9, 0xF4, 0xF6, 0xDF, 0xDD, 0xE0,
889
    0x4F, 0x90, 0xFF, 0xDF, 0x8D, 0xE1, 0x6C, 0x7F, 0x22, 0x30, 0x11, 0x98,
890
    0x4F, 0x90, 0xFF, 0xDF, 0x8D, 0xE1, 0x6C, 0x7F, 0x22, 0x30, 0x11, 0x98,
890
    0x08, 0x38, 0x04, 0x02, 0xAF, 0xFE, 0x9F, 0xA1, 0x03, 0xBE, 0x80, 0x59,
891
    0x08, 0x38, 0x04, 0x02, 0xAF, 0xFE, 0x9F, 0xA1, 0x03, 0xBE, 0x80, 0x59,
891
    0x39, 0xE6, 0xB4, 0x1A, 0x63, 0xC4, 0x8C, 0x17, 0x49, 0x3B, 0x26, 0xCE,
892
    0x39, 0xE6, 0xB4, 0x1A, 0x63, 0xC4, 0x8C, 0x17, 0x49, 0x3B, 0x26, 0xCE,
892
    0x93, 0xB0, 0x61, 0xEF, 0xFB, 0x1F, 0xB4, 0xDC, 0x98, 0xE7, 0x67, 0x85,
893
    0x93, 0xB0, 0x61, 0xEF, 0xFB, 0x1F, 0xB4, 0xDC, 0x98, 0xE7, 0x67, 0x85,
893
    0x26, 0x09, 0xFA, 0xF6, 0x5B, 0x7B, 0xFA, 0xBD, 0x63, 0xFD, 0x4C, 0x7C,
894
    0x26, 0x09, 0xFA, 0xF6, 0x5B, 0x7B, 0xFA, 0xBD, 0x63, 0xFD, 0x4C, 0x7C,
894
    0x26, 0x17, 0x0B, 0x11, 0x77, 0x8D, 0xEF, 0xF7, 0xCF, 0x03, 0xAB, 0xAF,
895
    0x26, 0x17, 0x0B, 0x11, 0x77, 0x8D, 0xEF, 0xF7, 0xCF, 0x03, 0xAB, 0xAF,
895
    0x8C, 0x59, 0xB3, 0x73, 0xAD, 0x9E, 0xB7, 0xDA, 0xC9, 0xF2, 0x63, 0xCF,
896
    0x8C, 0x59, 0xB3, 0x73, 0xAD, 0x9E, 0xB7, 0xDA, 0xC9, 0xF2, 0x63, 0xCF,
896
    0x3D, 0xAB, 0x0C, 0x73, 0x35, 0xC1, 0xD1, 0xC4, 0x69, 0xEA, 0xB0, 0x10,
897
    0x3D, 0xAB, 0x0C, 0x73, 0x35, 0xC1, 0xD1, 0xC4, 0x69, 0xEA, 0xB0, 0x10,
897
    0x90, 0xF0, 0x75, 0x67, 0xDF, 0x07, 0x07, 0x04, 0xAD, 0x82, 0x01, 0x60,
898
    0x90, 0xF0, 0x75, 0x67, 0xDF, 0x07, 0x07, 0x04, 0xAD, 0x82, 0x01, 0x60,
898
    0xD1, 0x41, 0x00, 0xD8, 0x51, 0xDE, 0xDC, 0x6F, 0x9B, 0x4C, 0x70, 0xD3,
899
    0xD1, 0x41, 0x00, 0xD8, 0x51, 0xDE, 0xDC, 0x6F, 0x9B, 0x4C, 0x70, 0xD3,
899
    0x7F, 0x78, 0x66, 0x74, 0xBF, 0x63, 0x0E, 0x17, 0xC7, 0xBC, 0x2E, 0x2B,
900
    0x7F, 0x78, 0x66, 0x74, 0xBF, 0x63, 0x0E, 0x17, 0xC7, 0xBC, 0x2E, 0x2B,
900
    0x59, 0x7F, 0x1B, 0x00, 0xDE, 0xE3, 0x45, 0xD4, 0x35, 0x8F, 0x19, 0x74,
901
    0x59, 0x7F, 0x1B, 0x00, 0xDE, 0xE3, 0x45, 0xD4, 0x35, 0x8F, 0x19, 0x74,
901
    0x3D, 0x54, 0x4B, 0x9D, 0x32, 0xB6, 0xA7, 0xDF, 0xFB, 0x11, 0x47, 0xE3,
902
    0x3D, 0x54, 0x4B, 0x9D, 0x32, 0xB6, 0xA7, 0xDF, 0xFB, 0x11, 0x47, 0xE3,
902
    0xA7, 0xAF, 0x1E, 0x4F, 0x59, 0x16, 0x50, 0x00, 0xD0, 0x7F, 0xA8, 0x28,
903
    0xA7, 0xAF, 0x1E, 0x4F, 0x59, 0x16, 0x50, 0x00, 0xD0, 0x7F, 0xA8, 0x28,
903
    0xFE, 0x54, 0xB8, 0x61, 0xB4, 0x1E, 0xE0, 0xC6, 0x36, 0xFB, 0x1A, 0x76,
904
    0xFE, 0x54, 0xB8, 0x61, 0xB4, 0x1E, 0xE0, 0xC6, 0x36, 0xFB, 0x1A, 0x76,
904
    0xBC, 0xBD, 0x7B, 0x00, 0xE0, 0xF1, 0xE3, 0xEB, 0x34, 0x92, 0x24, 0xC0,
905
    0xBC, 0xBD, 0x7B, 0x00, 0xE0, 0xF1, 0xE3, 0xEB, 0x34, 0x92, 0x24, 0xC0,
905
    0x44, 0x10, 0x68, 0xE0, 0x10, 0x00, 0x22, 0x2C, 0x18, 0x49, 0xBB, 0x6F,
906
    0x44, 0x10, 0x68, 0xE0, 0x10, 0x00, 0x22, 0x2C, 0x18, 0x49, 0xBB, 0x6F,
906
    0xD0, 0x01, 0x6C, 0x3A, 0x6E, 0x09, 0x04, 0xF9, 0x3D, 0x03, 0x40, 0x2C,
907
    0xD0, 0x01, 0x6C, 0x3A, 0x6E, 0x09, 0x04, 0xF9, 0x3D, 0x03, 0x40, 0x2C,
907
    0x27, 0x0A, 0x80, 0xD1, 0x2B, 0x01, 0xB0, 0x2E, 0x1E, 0x80, 0xD6, 0x55,
908
    0x27, 0x0A, 0x80, 0xD1, 0x2B, 0x01, 0xB0, 0x2E, 0x1E, 0x80, 0xD6, 0x55,
908
    0x27, 0x3C, 0xDC, 0xB7, 0x75, 0x5D, 0x36, 0x07, 0x40, 0x93, 0xDE, 0x3C,
909
    0x27, 0x3C, 0xDC, 0xB7, 0x75, 0x5D, 0x36, 0x07, 0x40, 0x93, 0xDE, 0x3C,
909
    0x41, 0xD8, 0x9A, 0x73, 0x08, 0xA8, 0x28, 0x11, 0x01, 0xE8, 0x2F, 0x01,
910
    0x41, 0xD8, 0x9A, 0x73, 0x08, 0xA8, 0x28, 0x11, 0x01, 0xE8, 0x2F, 0x01,
910
    0x6B, 0xDB, 0x77, 0x48, 0xF7, 0x00, 0x08, 0xC7, 0x41, 0x25, 0x48, 0x14,
911
    0x6B, 0xDB, 0x77, 0x48, 0xF7, 0x00, 0x08, 0xC7, 0x41, 0x25, 0x48, 0x14,
911
    0xA0, 0xEA, 0x15, 0x01, 0x00, 0xB6, 0x5B, 0x01, 0x00, 0x70, 0x38, 0xC0,
912
    0xA0, 0xEA, 0x15, 0x01, 0x00, 0xB6, 0x5B, 0x01, 0x00, 0x70, 0x38, 0xC0,
912
    0x15, 0x80, 0x65, 0xC5, 0xE8, 0x57, 0x07, 0x40, 0x93, 0xFE, 0xDC, 0x80,
913
    0x15, 0x80, 0x65, 0xC5, 0xE8, 0x57, 0x07, 0x40, 0x93, 0xFE, 0xDC, 0x80,
913
    0xAD, 0x3B, 0x7E, 0x4D, 0xA8, 0x76, 0x24, 0x0C, 0x20, 0x5B, 0x02, 0xB2,
914
    0xAD, 0x3B, 0x7E, 0x4D, 0xA8, 0x76, 0x24, 0x0C, 0x20, 0x5B, 0x02, 0xB2,
914
    0xE9, 0x95, 0x01, 0x10, 0x9F, 0x2D, 0x22, 0x57, 0x23, 0x46, 0xC3, 0xDF,
915
    0xE9, 0x95, 0x01, 0x10, 0x9F, 0x2D, 0x22, 0x57, 0x23, 0x46, 0xC3, 0xDF,
915
    0x11, 0x09, 0xEA, 0xDF, 0xFC, 0xA6, 0xA8, 0x4B, 0xC0, 0x00, 0xD8, 0xF0,
916
    0x11, 0x09, 0xEA, 0xDF, 0xFC, 0xA6, 0xA8, 0x4B, 0xC0, 0x00, 0xD8, 0xF0,
916
    0xFF, 0x67, 0xDA, 0xDA, 0x0B, 0x0E, 0xD5, 0xB6, 0xEB, 0x92, 0xD7, 0x57,
917
    0xFF, 0x67, 0xDA, 0xDA, 0x0B, 0x0E, 0xD5, 0xB6, 0xEB, 0x92, 0xD7, 0x57,
917
    0xDC, 0x04, 0x79, 0xD7, 0xEE, 0x53, 0x80, 0x69, 0xB0, 0x2A, 0x14, 0x70,
918
    0xDC, 0x04, 0x79, 0xD7, 0xEE, 0x53, 0x80, 0x69, 0xB0, 0x2A, 0x14, 0x70,
918
    0x5F, 0x58, 0x5F, 0x82, 0xFE, 0x74, 0x37, 0xC1, 0x13, 0x00, 0xEE, 0x5E,
919
    0x5F, 0x58, 0x5F, 0x82, 0xFE, 0x74, 0x37, 0xC1, 0x13, 0x00, 0xEE, 0x5E,
919
    0xE7, 0x69, 0xD4, 0x4C, 0xFE, 0x0C, 0xF0, 0xE9, 0x82, 0x5F, 0xD3, 0x9F,
920
    0xE7, 0x69, 0xD4, 0x4C, 0xFE, 0x0C, 0xF0, 0xE9, 0x82, 0x5F, 0xD3, 0x9F,
920
    0x4E, 0x3F, 0xFA, 0xE6, 0xA6, 0x59, 0xF7, 0x00, 0x34, 0x1F, 0x8E, 0x41,
921
    0x4E, 0x3F, 0xFA, 0xE6, 0xA6, 0x59, 0xF7, 0x00, 0x34, 0x1F, 0x8E, 0x41,
921
    0xD6, 0x11, 0xEA, 0x31, 0x26, 0x80, 0xE8, 0xF7, 0xD9, 0x31, 0x88, 0x3D,
922
    0xD6, 0x11, 0xEA, 0x31, 0x26, 0x80, 0xE8, 0xF7, 0xD9, 0x31, 0x88, 0x3D,
922
    0xDA, 0x2B, 0x40, 0x1E, 0xC7, 0xA0, 0xFB, 0xA5, 0xF9, 0xCC, 0x68, 0xFF,
923
    0xDA, 0x2B, 0x40, 0x1E, 0xC7, 0xA0, 0xFB, 0xA5, 0xF9, 0xCC, 0x68, 0xFF,
923
    0x9F, 0x93, 0x64, 0x14, 0x46, 0x2A, 0x15, 0xD4, 0x47, 0x1A, 0x89, 0xD4,
924
    0x9F, 0x93, 0x64, 0x14, 0x46, 0x2A, 0x15, 0xD4, 0x47, 0x1A, 0x89, 0xD4,
924
    0x61, 0xE4, 0xA7, 0xB3, 0x45, 0x0D, 0xA1, 0x9F, 0x3E, 0xC8, 0xEE, 0xF8,
925
    0x61, 0xE4, 0xA7, 0xB3, 0x45, 0x0D, 0xA1, 0x9F, 0x3E, 0xC8, 0xEE, 0xF8,
925
    0x40, 0x42, 0xFF, 0x37, 0x00, 0xFF, 0xF5, 0xEC, 0xCF, 0xC1, 0x4F, 0x04,
926
    0x40, 0x42, 0xFF, 0x37, 0x00, 0xFF, 0xF5, 0xEC, 0xCF, 0xC1, 0x4F, 0x04,
926
    0x26, 0x02, 0xDF, 0x0E, 0x01, 0x31, 0x1C, 0x04, 0xAB, 0x0C, 0x5B, 0xE3,
927
    0x26, 0x02, 0xDF, 0x0E, 0x01, 0x31, 0x1C, 0x04, 0xAB, 0x0C, 0x5B, 0xE3,
927
    0xF3, 0xE1, 0x05, 0x79, 0x5F, 0xE4, 0xE5, 0xC0, 0x08, 0xD9, 0x73, 0xC7,
928
    0xF3, 0xE1, 0x05, 0x79, 0x5F, 0xE4, 0xE5, 0xC0, 0x08, 0xD9, 0x73, 0xC7,
928
    0x0C, 0xAA, 0xEF, 0xAE, 0xB0, 0xB6, 0xBF, 0x19, 0xAB, 0x27, 0xAB, 0xA4,
929
    0x0C, 0xAA, 0xEF, 0xAE, 0xB0, 0xB6, 0xBF, 0x19, 0xAB, 0x27, 0xAB, 0xA4,
929
    0x9C, 0x9A, 0x89, 0xD2, 0x4E, 0x44, 0x7E, 0x08, 0x96, 0x4E, 0xE0, 0x08,
930
    0x9C, 0x9A, 0x89, 0xD2, 0x4E, 0x44, 0x7E, 0x08, 0x96, 0x4E, 0xE0, 0x08,
930
    0xA6, 0x2E, 0xF5, 0x75, 0x8E, 0x5E, 0x65, 0xE2, 0x0B, 0xCA, 0x96, 0xC1,
931
    0xA6, 0x2E, 0xF5, 0x75, 0x8E, 0x5E, 0x65, 0xE2, 0x0B, 0xCA, 0x96, 0xC1,
931
    0x80, 0x48, 0xE3, 0xAC, 0x3C, 0xEF, 0x2F, 0xF2, 0xB2, 0x99, 0xCE, 0xBC,
932
    0x80, 0x48, 0xE3, 0xAC, 0x3C, 0xEF, 0x2F, 0xF2, 0xB2, 0x99, 0xCE, 0xBC,
932
    0x00, 0x14, 0x0D, 0x97, 0x2C, 0xBC, 0x28, 0x6F, 0xAF, 0xBC, 0x77, 0x1B,
933
    0x00, 0x14, 0x0D, 0x97, 0x2C, 0xBC, 0x28, 0x6F, 0xAF, 0xBC, 0x77, 0x1B,
933
    0xA0, 0xEF, 0x34, 0xD0, 0xD4, 0xFA, 0xB5, 0x0D, 0x1A, 0xA3, 0x02, 0x10,
934
    0xA0, 0xEF, 0x34, 0xD0, 0xD4, 0xFA, 0xB5, 0x0D, 0x1A, 0xA3, 0x02, 0x10,
934
    0x9D, 0xBF, 0x19, 0x00, 0x13, 0xF7, 0x7A, 0x74, 0xD0, 0x84, 0x1D, 0xC7,
935
    0x9D, 0xBF, 0x19, 0x00, 0x13, 0xF7, 0x7A, 0x74, 0xD0, 0x84, 0x1D, 0xC7,
935
    0x0E, 0xB6, 0xCE, 0x38, 0x56, 0xD3, 0x00, 0xF0, 0xB2, 0x40, 0x15, 0x80,
936
    0x0E, 0xB6, 0xCE, 0x38, 0x56, 0xD3, 0x00, 0xF0, 0xB2, 0x40, 0x15, 0x80,
936
    0x66, 0xFC, 0xF4, 0xD2, 0xA4, 0x02, 0xB0, 0x88, 0x31, 0xD8, 0xEC, 0xF5,
937
    0x66, 0xFC, 0xF4, 0xD2, 0xA4, 0x02, 0xB0, 0x88, 0x31, 0xD8, 0xEC, 0xF5,
937
    0x6C, 0xFC, 0x63, 0x84, 0xC3, 0x80, 0x83, 0x07, 0x04, 0x0F, 0x18, 0x8F,
938
    0x6C, 0xFC, 0x63, 0x84, 0xC3, 0x80, 0x83, 0x07, 0x04, 0x0F, 0x18, 0x8F,
938
    0xBB, 0xDC, 0x6E, 0x53, 0x78, 0xB8, 0x0E, 0x36, 0xF2, 0x76, 0xF2, 0xB2,
939
    0xBB, 0xDC, 0x6E, 0x53, 0x78, 0xB8, 0x0E, 0x36, 0xF2, 0x76, 0xF2, 0xB2,
939
    0x75, 0x9E, 0x94, 0x40, 0xBB, 0x9A, 0x06, 0xFB, 0x14, 0x60, 0xE0, 0x7A,
940
    0x75, 0x9E, 0x94, 0x40, 0xBB, 0x9A, 0x06, 0xFB, 0x14, 0x60, 0xE0, 0x7A,
940
    0x85, 0x4A, 0xF3, 0xB5, 0xA6, 0x28, 0x23, 0x31, 0xF5, 0x00, 0x10, 0x61,
941
    0x85, 0x4A, 0xF3, 0xB5, 0xA6, 0x28, 0x23, 0x31, 0xF5, 0x00, 0x10, 0x61,
941
    0xCC, 0xB8, 0xFF, 0x01, 0x80, 0x20, 0x3E, 0x13, 0x00, 0x56, 0x59, 0xD7,
942
    0xCC, 0xB8, 0xFF, 0x01, 0x80, 0x20, 0x3E, 0x13, 0x00, 0x56, 0x59, 0xD7,
942
    0xDC, 0xAE, 0x6B, 0x3C, 0x00, 0x10, 0x8D, 0xA1, 0x02, 0x41, 0x1F, 0x00,
943
    0xDC, 0xAE, 0x6B, 0x3C, 0x00, 0x10, 0x8D, 0xA1, 0x02, 0x41, 0x1F, 0x00,
943
    0x03, 0xD3, 0xCF, 0x28, 0x84, 0x4F, 0x8E, 0xB9, 0x81, 0x7E, 0x44, 0x0D,
944
    0x03, 0xD3, 0xCF, 0x28, 0x84, 0x4F, 0x8E, 0xB9, 0x81, 0x7E, 0x44, 0x0D,
944
    0xF6, 0x4C, 0xB1, 0xB2, 0xC8, 0x23, 0xC9, 0xAB, 0xB5, 0x38, 0xF7, 0x07,
945
    0xF6, 0x4C, 0xB1, 0xB2, 0xC8, 0x23, 0xC9, 0xAB, 0xB5, 0x38, 0xF7, 0x07,
945
    0xF7, 0x0D, 0x28, 0x7E, 0x27, 0x4B, 0x80, 0x1D, 0x48, 0xF0, 0x31, 0xCB,
946
    0xF7, 0x0D, 0x28, 0x7E, 0x27, 0x4B, 0x80, 0x1D, 0x48, 0xF0, 0x31, 0xCB,
946
    0xA3, 0x09, 0x00, 0x90, 0xB5, 0xBD, 0xF4, 0x05, 0x00, 0x16, 0xAF, 0xB2,
947
    0xA3, 0x09, 0x00, 0x90, 0xB5, 0xBD, 0xF4, 0x05, 0x00, 0x16, 0xAF, 0xB2,
947
    0xC2, 0xF4, 0x48, 0x18, 0x99, 0xF4, 0xC8, 0x9C, 0x94, 0xFC, 0x5F, 0xB6,
948
    0xC2, 0xF4, 0x48, 0x18, 0x99, 0xF4, 0xC8, 0x9C, 0x94, 0xFC, 0x5F, 0xB6,
948
    0xE6, 0x59, 0x9F, 0xF3, 0x81, 0x53, 0x40, 0xEA, 0xB7, 0xDE, 0xF8, 0x25,
949
    0xE6, 0x59, 0x9F, 0xF3, 0x81, 0x53, 0x40, 0xEA, 0xB7, 0xDE, 0xF8, 0x25,
949
    0xD1, 0x36, 0x41, 0x7D, 0x87, 0xE4, 0x49, 0xEE, 0x70, 0x93, 0xB7, 0xFD,
950
    0xD1, 0x36, 0x41, 0x7D, 0x87, 0xE4, 0x49, 0xEE, 0x70, 0x93, 0xB7, 0xFD,
950
    0xFB, 0xF7, 0x83, 0x7C, 0x9E, 0x36, 0xD3, 0x50, 0xF8, 0xF8, 0x02, 0x8B,
951
    0xFB, 0xF7, 0x83, 0x7C, 0x9E, 0x36, 0xD3, 0x50, 0xF8, 0xF8, 0x02, 0x8B,
951
    0xA8, 0xA0, 0x5D, 0x4A, 0x00, 0xD0, 0x25, 0x7E, 0x12, 0xF1, 0x22, 0x6B,
952
    0xA8, 0xA0, 0x5D, 0x4A, 0x00, 0xD0, 0x25, 0x7E, 0x12, 0xF1, 0x22, 0x6B,
952
    0x7C, 0x8C, 0x02, 0xCC, 0x4D, 0xCD, 0x8F, 0xCF, 0x00, 0xF0, 0x6E, 0x38,
953
    0x7C, 0x8C, 0x02, 0xCC, 0x4D, 0xCD, 0x8F, 0xCF, 0x00, 0xF0, 0x6E, 0x38,
953
    0x1A, 0x1F, 0x10, 0x54, 0x58, 0x38, 0x17, 0xD9, 0x03, 0x80, 0x5D, 0xB0,
954
    0x1A, 0x1F, 0x10, 0x54, 0x58, 0x38, 0x17, 0xD9, 0x03, 0x80, 0x5D, 0xB0,
954
    0x8C, 0x9C, 0xFC, 0x2F, 0xB6, 0xA3, 0xB0, 0x93, 0x87, 0x00, 0xAA, 0x3A,
955
    0x8C, 0x9C, 0xFC, 0x2F, 0xB6, 0xA3, 0xB0, 0x93, 0x87, 0x00, 0xAA, 0x3A,
955
    0xC3, 0x13, 0x00, 0xC4, 0xAB, 0xAC, 0x06, 0x40, 0xA4, 0x91, 0x2C, 0xAA,
956
    0xC3, 0x13, 0x00, 0xC4, 0xAB, 0xAC, 0x06, 0x40, 0xA4, 0x91, 0x2C, 0xAA,
956
    0x2C, 0xA7, 0xAA, 0x97, 0xBE, 0x71, 0x02, 0x80, 0x30, 0x43, 0xA3, 0x00,
957
    0x2C, 0xA7, 0xAA, 0x97, 0xBE, 0x71, 0x02, 0x80, 0x30, 0x43, 0xA3, 0x00,
957
    0x7C, 0x82, 0xAB, 0xE2, 0x08, 0x42, 0x69, 0xD0, 0x17, 0x47, 0xB4, 0x8C,
958
    0x7C, 0x82, 0xAB, 0xE2, 0x08, 0x42, 0x69, 0xD0, 0x17, 0x47, 0xB4, 0x8C,
958
    0x34, 0xF5, 0x35, 0xBF, 0x8D, 0x3E, 0x34, 0x72, 0x68, 0x04, 0x17, 0x1E,
959
    0x34, 0xF5, 0x35, 0xBF, 0x8D, 0x3E, 0x34, 0x72, 0x68, 0x04, 0x17, 0x1E,
959
    0xDA, 0xF3, 0xDB, 0x8A, 0x52, 0x5F, 0xD7, 0xAF, 0x39, 0xD2, 0xD9, 0xAB,
960
    0xDA, 0xF3, 0xDB, 0x8A, 0x52, 0x5F, 0xD7, 0xAF, 0x39, 0xD2, 0xD9, 0xAB,
960
    0x89, 0xC0, 0x44, 0xE0, 0x53, 0x10, 0x48, 0x36, 0x84, 0x8F, 0xC4, 0x69,
961
    0x89, 0xC0, 0x44, 0xE0, 0x53, 0x10, 0x48, 0x36, 0x84, 0x8F, 0xC4, 0x69,
961
    0xF6, 0x3D, 0x3B, 0x6D, 0xD7, 0xFA, 0x7B, 0x2C, 0x6B, 0xAC, 0x3F, 0xE4,
962
    0xF6, 0x3D, 0x3B, 0x6D, 0xD7, 0xFA, 0x7B, 0x2C, 0x6B, 0xAC, 0x3F, 0xE4,
962
    0x17, 0xA0, 0x1F, 0xA2, 0x57, 0xA6, 0xFA, 0x15, 0x96, 0x51, 0xEB, 0x07,
963
    0x17, 0xA0, 0x1F, 0xA2, 0x57, 0xA6, 0xFA, 0x15, 0x96, 0x51, 0xEB, 0x07,
963
    0x77, 0x8F, 0x03, 0xD0, 0x77, 0x7E, 0x1F, 0x06, 0xE0, 0xC4, 0xBB, 0xBD,
964
    0x77, 0x8F, 0x03, 0xD0, 0x77, 0x7E, 0x1F, 0x06, 0xE0, 0xC4, 0xBB, 0xBD,
964
    0x0C, 0x41, 0x26, 0x2E, 0x67, 0x15, 0xF6, 0x29, 0xA0, 0xEB, 0xC7, 0x79,
965
    0x0C, 0x41, 0x26, 0x2E, 0x67, 0x15, 0xF6, 0x29, 0xA0, 0xEB, 0xC7, 0x79,
965
    0x62, 0x0A, 0xED, 0xB7, 0x16, 0x7D, 0xD9, 0xE3, 0x2F, 0x59, 0x7F, 0xFB,
966
    0x62, 0x0A, 0xED, 0xB7, 0x16, 0x7D, 0xD9, 0xE3, 0x2F, 0x59, 0x7F, 0xFB,
966
    0xCF, 0xC5, 0x23, 0x04, 0xC2, 0x9B, 0x50, 0xB0, 0x98, 0xBE, 0x4C, 0x65,
967
    0xCF, 0xC5, 0x23, 0x04, 0xC2, 0x9B, 0x50, 0xB0, 0x98, 0xBE, 0x4C, 0x65,
967
    0xE3, 0x79, 0x7F, 0xD1, 0x28, 0x35, 0x8D, 0x91, 0x7F, 0xDE, 0x78, 0xE9,
968
    0xE3, 0x79, 0x7F, 0xD1, 0x28, 0x35, 0x8D, 0x91, 0x7F, 0xDE, 0x78, 0xE9,
968
    0xE7, 0x92, 0x08, 0xF5, 0x93, 0xFF, 0x88, 0xE9, 0x2A, 0xF8, 0x07, 0x1B,
969
    0xE7, 0x92, 0x08, 0xF5, 0x93, 0xFF, 0x88, 0xE9, 0x2A, 0xF8, 0x07, 0x1B,
969
    0x6E, 0x2F, 0xBE, 0x01, 0xA2, 0x15, 0x85, 0xEE, 0x2E, 0x9B, 0xB8, 0x00,
970
    0x6E, 0x2F, 0xBE, 0x01, 0xA2, 0x15, 0x85, 0xEE, 0x2E, 0x9B, 0xB8, 0x00,
970
    0xA9, 0x87, 0xC8, 0x19, 0x1A, 0x14, 0x41, 0x02, 0x61, 0x95, 0xE4, 0x69,
971
    0xA9, 0x87, 0xC8, 0x19, 0x1A, 0x14, 0x41, 0x02, 0x61, 0x95, 0xE4, 0x69,
971
    0x11, 0x5E, 0x43, 0xC4, 0x89, 0x28, 0x40, 0x48, 0xB9, 0x60, 0x92, 0xA4,
972
    0x11, 0x5E, 0x43, 0xC4, 0x89, 0x28, 0x40, 0x48, 0xB9, 0x60, 0x92, 0xA4,
972
    0x39, 0x67, 0x7B, 0xF3, 0x3B, 0xEA, 0xEB, 0x3A, 0x6B, 0xB3, 0xBE, 0xC6,
973
    0x39, 0x67, 0x7B, 0xF3, 0x3B, 0xEA, 0xEB, 0x3A, 0x6B, 0xB3, 0xBE, 0xC6,
973
    0x08, 0x5E, 0x14, 0x12, 0x4C, 0x01, 0x2D, 0xE5, 0x89, 0x37, 0xEE, 0x4A,
974
    0x08, 0x5E, 0x14, 0x12, 0x4C, 0x01, 0x2D, 0xE5, 0x89, 0x37, 0xEE, 0x4A,
974
    0xFD, 0x6A, 0x1C, 0x8D, 0xE3, 0x17, 0xA7, 0x1F, 0xD5, 0x18, 0xA9, 0xA4,
975
    0xFD, 0x6A, 0x1C, 0x8D, 0xE3, 0x17, 0xA7, 0x1F, 0xD5, 0x18, 0xA9, 0xA4,
975
    0x60, 0x83, 0x21, 0x8D, 0x51, 0x60, 0xB4, 0x78, 0x09, 0x04, 0x00, 0xC4,
976
    0x60, 0x83, 0x21, 0x8D, 0x51, 0x60, 0xB4, 0x78, 0x09, 0x04, 0x00, 0xC4,
976
    0xFA, 0x2C, 0xE3, 0xB5, 0xFE, 0xA9, 0x33, 0xB6, 0xF8, 0x4A, 0x0B, 0x00,
977
    0xFA, 0x2C, 0xE3, 0xB5, 0xFE, 0xA9, 0x33, 0xB6, 0xF8, 0x4A, 0x0B, 0x00,
977
    0x10, 0xB6, 0x7B, 0xD6, 0xED, 0x87, 0x8A, 0xAE, 0xB3, 0x08, 0x54, 0x05,
978
    0x10, 0xB6, 0x7B, 0xD6, 0xED, 0x87, 0x8A, 0xAE, 0xB3, 0x08, 0x54, 0x05,
978
    0x56, 0x05, 0x20, 0x6E, 0x79, 0x9A, 0x23, 0x45, 0xA4, 0xCD, 0x32, 0x00,
979
    0x56, 0x05, 0x20, 0x6E, 0x79, 0x9A, 0x23, 0x45, 0xA4, 0xCD, 0x32, 0x00,
979
    0x1A, 0x5D, 0x70, 0x31, 0x00, 0x46, 0x22, 0x7E, 0xCD, 0x66, 0x4E, 0x52,
980
    0x1A, 0x5D, 0x70, 0x31, 0x00, 0x46, 0x22, 0x7E, 0xCD, 0x66, 0x4E, 0x52,
980
    0xCD, 0x05, 0xC7, 0xAD, 0xF1, 0x18, 0xCB, 0xCD, 0x00, 0xA8, 0xA8, 0xA6,
981
    0xCD, 0x05, 0xC7, 0xAD, 0xF1, 0x18, 0xCB, 0xCD, 0x00, 0xA8, 0xA8, 0xA6,
981
    0xFE, 0x07, 0x39, 0x05, 0xB0, 0x93, 0x98, 0xBE, 0xBF, 0x27, 0x14, 0x90,
982
    0xFE, 0x07, 0x39, 0x05, 0xB0, 0x93, 0x98, 0xBE, 0xBF, 0x27, 0x14, 0x90,
982
    0x2F, 0x01, 0x53, 0x81, 0xD1, 0x80, 0x62, 0x58, 0x1D, 0x6D, 0x6A, 0xD8,
983
    0x2F, 0x01, 0x53, 0x81, 0xD1, 0x80, 0x62, 0x58, 0x1D, 0x6D, 0x6A, 0xD8,
983
    0x63, 0xE8, 0x28, 0xB3, 0x4D, 0x86, 0x14, 0x1C, 0x91, 0x02, 0x14, 0x60,
984
    0x63, 0xE8, 0x28, 0xB3, 0x4D, 0x86, 0x14, 0x1C, 0x91, 0x02, 0x14, 0x60,
984
    0x76, 0xC0, 0x90, 0x5D, 0x2F, 0xEE, 0x01, 0x10, 0x57, 0x9F, 0x9B, 0xE8,
985
    0x76, 0xC0, 0x90, 0x5D, 0x2F, 0xEE, 0x01, 0x10, 0x57, 0x9F, 0x9B, 0xE8,
985
    0x23, 0x64, 0xE5, 0x49, 0xD2, 0x19, 0x00, 0xAA, 0xEF, 0x18, 0x3B, 0x31,
986
    0x23, 0x64, 0xE5, 0x49, 0xD2, 0x19, 0x00, 0xAA, 0xEF, 0x18, 0x3B, 0x31,
986
    0xFE, 0xE1, 0xEB, 0xB6, 0xE1, 0xD5, 0x92, 0x18, 0x5C, 0x7D, 0xCE, 0xFD,
987
    0xFE, 0xE1, 0xEB, 0xB6, 0xE1, 0xD5, 0x92, 0x18, 0x5C, 0x7D, 0xCE, 0xFD,
987
    0x43, 0xAF, 0x2F, 0xFC, 0xC4, 0x00, 0xA8, 0xA5, 0x3C, 0x08, 0x51, 0x7B,
988
    0x43, 0xAF, 0x2F, 0xFC, 0xC4, 0x00, 0xA8, 0xA5, 0x3C, 0x08, 0x51, 0x7B,
988
    0x17, 0xF6, 0xE6, 0x0D, 0x55, 0x35, 0x92, 0xED, 0x67, 0x72, 0xA2, 0x5E,
989
    0x17, 0xF6, 0xE6, 0x0D, 0x55, 0x35, 0x92, 0xED, 0x67, 0x72, 0xA2, 0x5E,
989
    0x7D, 0xE4, 0xD8, 0x7E, 0xC3, 0x30, 0x66, 0x93, 0x13, 0x81, 0x89, 0xC0,
990
    0x7D, 0xE4, 0xD8, 0x7E, 0xC3, 0x30, 0x66, 0x93, 0x13, 0x81, 0x89, 0xC0,
990
    0x97, 0x41, 0xE0, 0x23, 0xF2, 0xEA, 0x97, 0xE9, 0xEC, 0x25, 0x1D, 0x91,
991
    0x97, 0x41, 0xE0, 0x23, 0xF2, 0xEA, 0x97, 0xE9, 0xEC, 0x25, 0x1D, 0x91,
991
    0xF0, 0x7C, 0x35, 0xA4, 0x24, 0x69, 0x85, 0x2E, 0xE9, 0x82, 0xAF, 0xE4,
992
    0xF0, 0x7C, 0x35, 0xA4, 0x24, 0x69, 0x85, 0x2E, 0xE9, 0x82, 0xAF, 0xE4,
992
    0xD3, 0x4F, 0xE9, 0x90, 0x77, 0x48, 0xEC, 0x56, 0x89, 0x5D, 0x03, 0xC7,
993
    0xD3, 0x4F, 0xE9, 0x90, 0x77, 0x48, 0xEC, 0x56, 0x89, 0x5D, 0x03, 0xC7,
993
    0x50, 0xE1, 0x10, 0xFA, 0x00, 0x5C, 0x9F, 0x0E, 0x80, 0x4A, 0x1B, 0x61,
994
    0x50, 0xE1, 0x10, 0xFA, 0x00, 0x5C, 0x9F, 0x0E, 0x80, 0x4A, 0x1B, 0x61,
994
    0x09, 0xF4, 0x7D, 0x3F, 0xEF, 0xCB, 0x42, 0x00, 0x9C, 0xCA, 0xCB, 0x1E,
995
    0x09, 0xF4, 0x7D, 0x3F, 0xEF, 0xCB, 0x42, 0x00, 0x9C, 0xCA, 0xCB, 0x1E,
995
    0x53, 0x13, 0xAF, 0x55, 0xDE, 0x57, 0x4F, 0x55, 0x71, 0xAE, 0xF6, 0x73,
996
    0x53, 0x13, 0xAF, 0x55, 0xDE, 0x57, 0x4F, 0x55, 0x71, 0xAE, 0xF6, 0x73,
996
    0x24, 0xC6, 0xD6, 0xE0, 0x31, 0x62, 0x6E, 0xAC, 0xDE, 0xF4, 0x66, 0xEF,
997
    0x24, 0xC6, 0xD6, 0xE0, 0x31, 0x62, 0x6E, 0xAC, 0xDE, 0xF4, 0x66, 0xEF,
997
    0xFB, 0xF8, 0x83, 0xC6, 0x37, 0xD0, 0x1C, 0x5F, 0x0D, 0x80, 0xC8, 0xFB,
998
    0xFB, 0xF8, 0x83, 0xC6, 0x37, 0xD0, 0x1C, 0x5F, 0x0D, 0x80, 0xC8, 0xFB,
998
    0x2A, 0xDF, 0x37, 0xE9, 0xDB, 0x63, 0xAA, 0xF8, 0x0A, 0x05, 0xA8, 0x70,
999
    0x2A, 0xDF, 0x37, 0xE9, 0xDB, 0x63, 0xAA, 0xF8, 0x0A, 0x05, 0xA8, 0x70,
999
    0xD3, 0x6C, 0x8B, 0x6E, 0x00, 0x87, 0xF9, 0x07, 0x78, 0xF1, 0x00, 0xAC,
1000
    0xD3, 0x6C, 0x8B, 0x6E, 0x00, 0x87, 0xF9, 0x07, 0x78, 0xF1, 0x00, 0xAC,
1000
    0x21, 0xB9, 0xC3, 0xAB, 0x71, 0x15, 0x44, 0xC8, 0xB6, 0x46, 0xF5, 0x89,
1001
    0x21, 0xB9, 0xC3, 0xAB, 0x71, 0x15, 0x44, 0xC8, 0xB6, 0x46, 0xF5, 0x89,
1001
    0x89, 0x14, 0xC0, 0xD9, 0x10, 0xCC, 0xDA, 0xEB, 0x24, 0xE8, 0x48, 0x01,
1002
    0x89, 0x14, 0xC0, 0xD9, 0x10, 0xCC, 0xDA, 0xEB, 0x24, 0xE8, 0x48, 0x01,
1002
    0xD1, 0x7F, 0x9F, 0x56, 0x99, 0x0E, 0x58, 0xCD, 0xF9, 0x09, 0x00, 0x36,
1003
    0xD1, 0x7F, 0x9F, 0x56, 0x99, 0x0E, 0x58, 0xCD, 0xF9, 0x09, 0x00, 0x36,
1003
    0x3A, 0x3F, 0x5E, 0x44, 0xA8, 0x90, 0xBC, 0x6E, 0xFA, 0x1D, 0x12, 0xF0,
1004
    0x3A, 0x3F, 0x5E, 0x44, 0xA8, 0x90, 0xBC, 0x6E, 0xFA, 0x1D, 0x12, 0xF0,
1004
    0xED, 0x7D, 0x5E, 0xA4, 0x6C, 0x8B, 0x0E, 0x7B, 0x5C, 0x3C, 0x05, 0x7C,
1005
    0xED, 0x7D, 0x5E, 0xA4, 0x6C, 0x8B, 0x0E, 0x7B, 0x5C, 0x3C, 0x05, 0x7C,
1005
    0x02, 0x06, 0x33, 0xC6, 0x53, 0x85, 0xC3, 0x00, 0x98, 0xF3, 0xB5, 0xEF,
1006
    0x02, 0x06, 0x33, 0xC6, 0x53, 0x85, 0xC3, 0x00, 0x98, 0xF3, 0xB5, 0xEF,
1006
    0x71, 0x06, 0xC0, 0xCA, 0x21, 0x38, 0xE6, 0x9D, 0x2F, 0xFE, 0xEE, 0x2A,
1007
    0x71, 0x06, 0xC0, 0xCA, 0x21, 0x38, 0xE6, 0x9D, 0x2F, 0xFE, 0xEE, 0x2A,
1007
    0x2F, 0xCB, 0x88, 0x74, 0xC6, 0x55, 0xC7, 0xD8, 0xA7, 0x00, 0x80, 0xC9,
1008
    0x2F, 0xCB, 0x88, 0x74, 0xC6, 0x55, 0xC7, 0xD8, 0xA7, 0x00, 0x80, 0xC9,
1008
    0x39, 0x2D, 0xCF, 0x00, 0xF0, 0x2A, 0x29, 0x95, 0xEF, 0xCF, 0xB4, 0x27,
1009
    0x39, 0x2D, 0xCF, 0x00, 0xF0, 0x2A, 0x29, 0x95, 0xEF, 0xCF, 0xB4, 0x27,
1009
    0xBC, 0x0F, 0xF3, 0xA6, 0x0A, 0xBC, 0x49, 0x3F, 0x80, 0x68, 0x0B, 0x71,
1010
    0xBC, 0x0F, 0xF3, 0xA6, 0x0A, 0xBC, 0x49, 0x3F, 0x80, 0x68, 0x0B, 0x71,
1010
    0x59, 0x59, 0x8D, 0x06, 0x9E, 0x7F, 0x96, 0xB4, 0x95, 0x66, 0x1C, 0x4A,
1011
    0x59, 0x59, 0x8D, 0x06, 0x9E, 0x7F, 0x96, 0xB4, 0x95, 0x66, 0x1C, 0x4A,
1011
    0x2D, 0xBF, 0xF7, 0xFA, 0x70, 0x9E, 0xF6, 0xFB, 0xE8, 0x1E, 0x20, 0xA7,
1012
    0x2D, 0xBF, 0xF7, 0xFA, 0x70, 0x9E, 0xF6, 0xFB, 0xE8, 0x1E, 0x20, 0xA7,
1012
    0x40, 0x70, 0x83, 0x53, 0xF9, 0x3E, 0x44, 0x7D, 0x89, 0xD6, 0xD2, 0xD2,
1013
    0x40, 0x70, 0x83, 0x53, 0xF9, 0x3E, 0x44, 0x7D, 0x89, 0xD6, 0xD2, 0xD2,
1013
    0x07, 0x52, 0x50, 0x11, 0xEB, 0x13, 0xC4, 0x5B, 0xBF, 0x6D, 0x78, 0xDE,
1014
    0x07, 0x52, 0x50, 0x11, 0xEB, 0x13, 0xC4, 0x5B, 0xBF, 0x6D, 0x78, 0xDE,
1014
    0xE1, 0xE2, 0x11, 0xE6, 0xE6, 0x11, 0xE0, 0x84, 0x09, 0x6D, 0x13, 0xA4,
1015
    0xE1, 0xE2, 0x11, 0xE6, 0xE6, 0x11, 0xE0, 0x84, 0x09, 0x6D, 0x13, 0xA4,
1015
    0x45, 0x30, 0x08, 0x80, 0x1E, 0x6C, 0x67, 0x7C, 0x54, 0x29, 0x85, 0xC5,
1016
    0x45, 0x30, 0x08, 0x80, 0x1E, 0x6C, 0x67, 0x7C, 0x54, 0x29, 0x85, 0xC5,
1016
    0x07, 0x4E, 0xCA, 0xDA, 0x2B, 0x59, 0x12, 0x9D, 0x9F, 0x0E, 0x40, 0xAA,
1017
    0x07, 0x4E, 0xCA, 0xDA, 0x2B, 0x59, 0x12, 0x9D, 0x9F, 0x0E, 0x40, 0xAA,
1017
    0x2C, 0x18, 0x64, 0x84, 0xBE, 0x3A, 0x05, 0x7C, 0x80, 0x4F, 0x93, 0x63,
1018
    0x2C, 0x18, 0x64, 0x84, 0xBE, 0x3A, 0x05, 0x7C, 0x80, 0x4F, 0x93, 0x63,
1018
    0xE3, 0xDD, 0xAC, 0x70, 0x8D, 0xBE, 0xE7, 0xDB, 0x13, 0x81, 0x2A, 0x02,
1019
    0xE3, 0xDD, 0xAC, 0x70, 0x8D, 0xBE, 0xE7, 0xDB, 0x13, 0x81, 0x2A, 0x02,
1019
    0x1B, 0x52, 0x3D, 0x55, 0xBF, 0xF1, 0xEF, 0x8F, 0x7E, 0x3F, 0xD2, 0xF6,
1020
    0x1B, 0x52, 0x3D, 0x55, 0xBF, 0xF1, 0xEF, 0x8F, 0x7E, 0x3F, 0xD2, 0xF6,
1020
    0x35, 0xDF, 0x66, 0x79, 0x83, 0xB3, 0x56, 0x46, 0xBF, 0x8F, 0xF5, 0x53,
1021
    0x35, 0xDF, 0x66, 0x79, 0x83, 0xB3, 0x56, 0x46, 0xBF, 0x8F, 0xF5, 0x53,
1021
    0xEA, 0xEC, 0xAC, 0xF9, 0x18, 0x0A, 0xAB, 0x07, 0x2F, 0xFB, 0x03, 0x04,
1022
    0xEA, 0xEC, 0xAC, 0xF9, 0x18, 0x0A, 0xAB, 0x07, 0x2F, 0xFB, 0x03, 0x04,
1022
    0x57, 0xE4, 0xBC, 0x81, 0xD1, 0x37, 0x8C, 0xF3, 0x29, 0xD5, 0x51, 0x94,
1023
    0x57, 0xE4, 0xBC, 0x81, 0xD1, 0x37, 0x8C, 0xF3, 0x29, 0xD5, 0x51, 0x94,
1023
    0xA7, 0x75, 0xC0, 0xCA, 0xE9, 0x12, 0x89, 0xDB, 0xED, 0x05, 0xDC, 0x19,
1024
    0xA7, 0x75, 0xC0, 0xCA, 0xE9, 0x12, 0x89, 0xDB, 0xED, 0x05, 0xDC, 0x19,
1024
    0x89, 0x4F, 0x08, 0x3D, 0x0D, 0xE6, 0xE7, 0xF8, 0x79, 0xDF, 0x85, 0xC2,
1025
    0x89, 0x4F, 0x08, 0x3D, 0x0D, 0xE6, 0xE7, 0xF8, 0x79, 0xDF, 0x85, 0xC2,
1025
    0xD8, 0xB2, 0xAE, 0x43, 0x7D, 0x38, 0x38, 0xA5, 0x87, 0x7D, 0xF0, 0x34,
1026
    0xD8, 0xB2, 0xAE, 0x43, 0x7D, 0x38, 0x38, 0xA5, 0x87, 0x7D, 0xF0, 0x34,
1026
    0x21, 0x42, 0x48, 0x90, 0x20, 0x9F, 0x37, 0x0A, 0x70, 0x3A, 0x8D, 0x13,
1027
    0x21, 0x42, 0x48, 0x90, 0x20, 0x9F, 0x37, 0x0A, 0x70, 0x3A, 0x8D, 0x13,
1027
    0x4F, 0x6F, 0x62, 0x95, 0xC1, 0xC6, 0x67, 0x9C, 0x13, 0x09, 0x83, 0xA1,
1028
    0x4F, 0x6F, 0x62, 0x95, 0xC1, 0xC6, 0x67, 0x9C, 0x13, 0x09, 0x83, 0xA1,
1028
    0xB7, 0x41, 0xDC, 0x4E, 0x89, 0xA1, 0xAA, 0x83, 0x4B, 0x28, 0x20, 0xB6,
1029
    0xB7, 0x41, 0xDC, 0x4E, 0x89, 0xA1, 0xAA, 0x83, 0x4B, 0x28, 0x20, 0xB6,
1029
    0xB7, 0x7B, 0xF9, 0xFF, 0x24, 0x3E, 0x81, 0x23, 0x5F, 0x39, 0x1D, 0xE1,
1030
    0xB7, 0x7B, 0xF9, 0xFF, 0x24, 0x3E, 0x81, 0x23, 0x5F, 0x39, 0x1D, 0xE1,
1030
    0x59, 0xEF, 0xFB, 0x1D, 0xAE, 0x26, 0xA6, 0xD2, 0xE8, 0xF2, 0x14, 0xAF,
1031
    0x59, 0xEF, 0xFB, 0x1D, 0xAE, 0x26, 0xA6, 0xD2, 0xE8, 0xF2, 0x14, 0xAF,
1031
    0xE0, 0x03, 0x92, 0xF5, 0x47, 0x56, 0x98, 0x6E, 0x0A, 0x72, 0xE1, 0x87,
1032
    0xE0, 0x03, 0x92, 0xF5, 0x47, 0x56, 0x98, 0x6E, 0x0A, 0x72, 0xE1, 0x87,
1032
    0x49, 0xFB, 0x5D, 0xD7, 0xC8, 0xBE, 0x31, 0x1C, 0x4F, 0x55, 0xE1, 0x92,
1033
    0x49, 0xFB, 0x5D, 0xD7, 0xC8, 0xBE, 0x31, 0x1C, 0x4F, 0x55, 0xE1, 0x92,
1033
    0x8E, 0x28, 0xA5, 0x38, 0xA9, 0xA1, 0x44, 0x01, 0xA7, 0x09, 0x28, 0xC9,
1034
    0x8E, 0x28, 0xA5, 0x38, 0xA9, 0xA1, 0x44, 0x01, 0xA7, 0x09, 0x28, 0xC9,
1034
    0xD8, 0xCA, 0x09, 0x14, 0x35, 0x1E, 0xE3, 0xA4, 0xF7, 0x59, 0xAA, 0xEA,
1035
    0xD8, 0xCA, 0x09, 0x14, 0x35, 0x1E, 0xE3, 0xA4, 0xF7, 0x59, 0xAA, 0xEA,
1035
    0xBE, 0x0B, 0xCF, 0x49, 0x85, 0xD5, 0x0F, 0x18, 0x80, 0x6C, 0x0F, 0xC0,
1036
    0xBE, 0x0B, 0xCF, 0x49, 0x85, 0xD5, 0x0F, 0x18, 0x80, 0x6C, 0x0F, 0xC0,
1036
    0x2D, 0x35, 0x41, 0x6D, 0x29, 0xF1, 0x09, 0xB5, 0x25, 0xA0, 0xF1, 0x06,
1037
    0x2D, 0x35, 0x41, 0x6D, 0x29, 0xF1, 0x09, 0xB5, 0x25, 0xA0, 0xF1, 0x06,
1037
    0x61, 0x44, 0x69, 0xFA, 0x46, 0x3D, 0x47, 0x85, 0x44, 0xB1, 0x60, 0xBD,
1038
    0x61, 0x44, 0x69, 0xFA, 0x46, 0x3D, 0x47, 0x85, 0x44, 0xB1, 0x60, 0xBD,
1038
    0x7C, 0x0F, 0xE9, 0x1F, 0x23, 0xE8, 0xE9, 0x5D, 0xFB, 0x4B, 0x60, 0x87,
1039
    0x7C, 0x0F, 0xE9, 0x1F, 0x23, 0xE8, 0xE9, 0x5D, 0xFB, 0x4B, 0x60, 0x87,
1039
    0x2D, 0x74, 0x11, 0x1D, 0x80, 0xDE, 0x7B, 0x43, 0x97, 0xDC, 0x64, 0x9B,
1040
    0x2D, 0x74, 0x11, 0x1D, 0x80, 0xDE, 0x7B, 0x43, 0x97, 0xDC, 0x64, 0x9B,
1040
    0x60, 0x72, 0xA5, 0x0C, 0xF0, 0xD0, 0x80, 0x7A, 0x85, 0x48, 0xF2, 0xF7,
1041
    0x60, 0x72, 0xA5, 0x0C, 0xF0, 0xD0, 0x80, 0x7A, 0x85, 0x48, 0xF2, 0xF7,
1041
    0xAB, 0x16, 0x18, 0xA3, 0xF7, 0x33, 0x34, 0x0A, 0x80, 0x52, 0x40, 0x8C,
1042
    0xAB, 0x16, 0x18, 0xA3, 0xF7, 0x33, 0x34, 0x0A, 0x80, 0x52, 0x40, 0x8C,
1042
    0x4F, 0x08, 0xC7, 0x46, 0x77, 0x11, 0x9F, 0x64, 0x98, 0x4C, 0x17, 0xB9,
1043
    0x4F, 0x08, 0xC7, 0x46, 0x77, 0x11, 0x9F, 0x64, 0x98, 0x4C, 0x17, 0xB9,
1043
    0xAE, 0x61, 0xE6, 0x44, 0x43, 0x4C, 0x1B, 0x52, 0x3A, 0x94, 0x0E, 0xC6,
1044
    0xAE, 0x61, 0xE6, 0x44, 0x43, 0x4C, 0x1B, 0x52, 0x3A, 0x94, 0x0E, 0xC6,
1044
    0x6A, 0xFB, 0xEF, 0x7E, 0x9F, 0x83, 0xBA, 0xB0, 0x3E, 0x99, 0x6B, 0x82,
1045
    0x6A, 0xFB, 0xEF, 0x7E, 0x9F, 0x83, 0xBA, 0xB0, 0x3E, 0x99, 0x6B, 0x82,
1045
    0xB6, 0xE6, 0x7A, 0x5E, 0xF3, 0xDD, 0x63, 0x9E, 0xED, 0x4F, 0x04, 0x26,
1046
    0xB6, 0xE6, 0x7A, 0x5E, 0xF3, 0xDD, 0x63, 0x9E, 0xED, 0x4F, 0x04, 0x26,
1046
    0x02, 0x13, 0x81, 0x1F, 0x8B, 0xC0, 0x8E, 0xCC, 0x5A, 0x89, 0x79, 0x98,
1047
    0x02, 0x13, 0x81, 0x1F, 0x8B, 0xC0, 0x8E, 0xCC, 0x5A, 0x89, 0x79, 0x98,
1047
    0x2D, 0x3F, 0xBA, 0xC9, 0xC3, 0x49, 0x8F, 0xE2, 0xFC, 0x84, 0x11, 0x2A,
1048
    0x2D, 0x3F, 0xBA, 0xC9, 0xC3, 0x49, 0x8F, 0xE2, 0xFC, 0x84, 0x11, 0x2A,
1048
    0x03, 0xB7, 0x1D, 0x6B, 0xF7, 0x46, 0xC1, 0x51, 0x8D, 0x4E, 0xFD, 0x7B,
1049
    0x03, 0xB7, 0x1D, 0x6B, 0xF7, 0x46, 0xC1, 0x51, 0x8D, 0x4E, 0xFD, 0x7B,
1049
    0x8D, 0xB7, 0xE7, 0xB0, 0x46, 0x49, 0xCE, 0xD6, 0xC2, 0x4C, 0x87, 0x74,
1050
    0x8D, 0xB7, 0xE7, 0xB0, 0x46, 0x49, 0xCE, 0xD6, 0xC2, 0x4C, 0x87, 0x74,
1050
    0x56, 0x50, 0x00, 0xB8, 0x93, 0xD5, 0x2E, 0x2E, 0x83, 0x3B, 0xF4, 0xDF,
1051
    0x56, 0x50, 0x00, 0xB8, 0x93, 0xD5, 0x2E, 0x2E, 0x83, 0x3B, 0xF4, 0xDF,
1051
    0x0D, 0x25, 0x65, 0x80, 0x79, 0x02, 0x43, 0x7E, 0x82, 0x33, 0x5E, 0x5F,
1052
    0x0D, 0x25, 0x65, 0x80, 0x79, 0x02, 0x43, 0x7E, 0x82, 0x33, 0x5E, 0x5F,
1052
    0xD8, 0x1A, 0x1E, 0x1E, 0xC6, 0xCB, 0x2A, 0x1C, 0x08, 0xE4, 0x57, 0x32,
1053
    0xD8, 0x1A, 0x1E, 0x1E, 0xC6, 0xCB, 0x2A, 0x1C, 0x08, 0xE4, 0x57, 0x32,
1053
    0x42, 0xB8, 0xB9, 0x6C, 0xC3, 0xA4, 0x75, 0xC6, 0x39, 0xA4, 0x21, 0x6C,
1054
    0x42, 0xB8, 0xB9, 0x6C, 0xC3, 0xA4, 0x75, 0xC6, 0x39, 0xA4, 0x21, 0x6C,
1054
    0x9E, 0xEF, 0x09, 0xF7, 0x2F, 0xB9, 0xBB, 0x25, 0xBA, 0x1D, 0x66, 0x2C,
1055
    0x9E, 0xEF, 0x09, 0xF7, 0x2F, 0xB9, 0xBB, 0x25, 0xBA, 0x1D, 0x66, 0x2C,
1055
    0xCA, 0x89, 0x18, 0x19, 0xA1, 0x44, 0x38, 0x4D, 0xA6, 0x10, 0x89, 0xDD,
1056
    0xCA, 0x89, 0x18, 0x19, 0xA1, 0x44, 0x38, 0x4D, 0xA6, 0x10, 0x89, 0xDD,
1056
    0x40, 0x72, 0x3E, 0x81, 0xA1, 0xFA, 0x15, 0x72, 0xF7, 0x1B, 0xC9, 0x74,
1057
    0x40, 0x72, 0x3E, 0x81, 0xA1, 0xFA, 0x15, 0x72, 0xF7, 0x1B, 0xC9, 0x74,
1057
    0x38, 0xD1, 0xE0, 0x5F, 0x10, 0xF3, 0x13, 0xD4, 0x89, 0xAA, 0xFB, 0x45,
1058
    0x38, 0xD1, 0xE0, 0x5F, 0x10, 0xF3, 0x13, 0xD4, 0x89, 0xAA, 0xFB, 0x45,
1058
    0x7A, 0xDD, 0x5D, 0xB1, 0xBD, 0x38, 0xE1, 0x14, 0x6B, 0x8D, 0x9B, 0xDD,
1059
    0x7A, 0xDD, 0x5D, 0xB1, 0xBD, 0x38, 0xE1, 0x14, 0x6B, 0x8D, 0x9B, 0xDD,
1059
    0xEC, 0x92, 0xCB, 0x6E, 0xA5, 0x62, 0x5F, 0x7F, 0xB1, 0xE5, 0x4F, 0x00,
1060
    0xEC, 0x92, 0xCB, 0x6E, 0xA5, 0x62, 0x5F, 0x7F, 0xB1, 0xE5, 0x4F, 0x00,
1060
    0x10, 0x61, 0xE4, 0x91, 0xBB, 0xBD, 0x12, 0xB9, 0xA9, 0xFE, 0x08, 0x72,
1061
    0x10, 0x61, 0xE4, 0x91, 0xBB, 0xBD, 0x12, 0xB9, 0xA9, 0xFE, 0x08, 0x72,
1061
    0xFF, 0x02, 0xAE, 0x34, 0x55, 0xEF, 0x6C, 0x05, 0x43, 0xE8, 0xE3, 0xE5,
1062
    0xFF, 0x02, 0xAE, 0x34, 0x55, 0xEF, 0x6C, 0x05, 0x43, 0xE8, 0xE3, 0xE5,
1062
    0x9C, 0xFB, 0xD8, 0x12, 0x38, 0xD3, 0x68, 0xC4, 0x84, 0xFC, 0x7F, 0xDE,
1063
    0x9C, 0xFB, 0xD8, 0x12, 0x38, 0xD3, 0x68, 0xC4, 0x84, 0xFC, 0x7F, 0xDE,
1063
    0x82, 0x6C, 0x9A, 0xED, 0x40, 0xA9, 0x47, 0x49, 0x91, 0x24, 0xDF, 0xF0,
1064
    0x82, 0x6C, 0x9A, 0xED, 0x40, 0xA9, 0x47, 0x49, 0x91, 0x24, 0xDF, 0xF0,
1064
    0xBA, 0xF8, 0x23, 0x50, 0x0F, 0x0E, 0x2C, 0x81, 0xEE, 0xB1, 0x1E, 0xFC,
1065
    0xBA, 0xF8, 0x23, 0x50, 0x0F, 0x0E, 0x2C, 0x81, 0xEE, 0xB1, 0x1E, 0xFC,
1065
    0x0B, 0xAA, 0x3A, 0xCD, 0x37, 0x0C, 0xD8, 0x37, 0xA9, 0x41, 0x53, 0x51,
1066
    0x0B, 0xAA, 0x3A, 0xCD, 0x37, 0x0C, 0xD8, 0x37, 0xA9, 0x41, 0x53, 0x51,
1066
    0x5B, 0x01, 0xB5, 0x7A, 0x47, 0xAF, 0x1F, 0xFD, 0x0B, 0xBE, 0x19, 0x00,
1067
    0x5B, 0x01, 0xB5, 0x7A, 0x47, 0xAF, 0x1F, 0xFD, 0x0B, 0xBE, 0x19, 0x00,
1067
    0x6F, 0xC6, 0x7F, 0x36, 0x3F, 0x11, 0x98, 0x08, 0x4C, 0x04, 0x26, 0x02,
1068
    0x6F, 0xC6, 0x7F, 0x36, 0x3F, 0x11, 0x98, 0x08, 0x4C, 0x04, 0x26, 0x02,
1068
    0x83, 0x08, 0x7C, 0xFF, 0x63, 0x27, 0xB5, 0xAD, 0xF4, 0x11, 0x12, 0x00,
1069
    0x83, 0x08, 0x7C, 0xFF, 0x63, 0x27, 0xB5, 0xAD, 0xF4, 0x11, 0x12, 0x00,
1069
    0xFA, 0xE9, 0x04, 0x06, 0xC1, 0x3E, 0xF9, 0x5C, 0xAF, 0x0B, 0xFC, 0x87,
1070
    0xFA, 0xE9, 0x04, 0x06, 0xC1, 0x3E, 0xF9, 0x5C, 0xAF, 0x0B, 0xFC, 0x87,
1070
    0x16, 0x64, 0x04, 0x60, 0xBD, 0x9D, 0xEC, 0x11, 0xD2, 0xE7, 0x69, 0xB6,
1071
    0x16, 0x64, 0x04, 0x60, 0xBD, 0x9D, 0xEC, 0x11, 0xD2, 0xE7, 0x69, 0xB6,
1071
    0x79, 0x35, 0x8E, 0xAA, 0xA8, 0xBB, 0x23, 0x57, 0x36, 0x99, 0x7A, 0xC4,
1072
    0x79, 0x35, 0x8E, 0xAA, 0xA8, 0xBB, 0x23, 0x57, 0x36, 0x99, 0x7A, 0xC4,
1072
    0x11, 0x53, 0x9C, 0xD5, 0xAB, 0xFD, 0xB7, 0xCE, 0xD3, 0x00, 0x4C, 0x74,
1073
    0x11, 0x53, 0x9C, 0xD5, 0xAB, 0xFD, 0xB7, 0xCE, 0xD3, 0x00, 0x4C, 0x74,
1073
    0x28, 0x55, 0x62, 0x33, 0xE6, 0xFD, 0x07, 0x30, 0x62, 0x4F, 0x12, 0x8D,
1074
    0x28, 0x55, 0x62, 0x33, 0xE6, 0xFD, 0x07, 0x30, 0x62, 0x4F, 0x12, 0x8D,
1074
    0xD3, 0xF2, 0xCF, 0xC5, 0x39, 0x3A, 0x66, 0x9A, 0xEA, 0x3B, 0x23, 0x98,
1075
    0xD3, 0xF2, 0xCF, 0xC5, 0x39, 0x3A, 0x66, 0x9A, 0xEA, 0x3B, 0x23, 0x98,
1075
    0xDB, 0xAE, 0xE6, 0x90, 0xA8, 0x75, 0x98, 0x47, 0xB7, 0x21, 0xB1, 0x76,
1076
    0xDB, 0xAE, 0xE6, 0x90, 0xA8, 0x75, 0x98, 0x47, 0xB7, 0x21, 0xB1, 0x76,
1076
    0x9E, 0x7A, 0x88, 0xBE, 0x61, 0x79, 0x1B, 0xD3, 0xC3, 0xD2, 0x84, 0xCE,
1077
    0x9E, 0x7A, 0x88, 0xBE, 0x61, 0x79, 0x1B, 0xD3, 0xC3, 0xD2, 0x84, 0xCE,
1077
    0xA0, 0xE6, 0x02, 0x5B, 0x76, 0x11, 0x37, 0x83, 0x1F, 0x5F, 0x77, 0x3C,
1078
    0xA0, 0xE6, 0x02, 0x5B, 0x76, 0x11, 0x37, 0x83, 0x1F, 0x5F, 0x77, 0x3C,
1078
    0x07, 0x14, 0x44, 0x3E, 0xD7, 0xB9, 0x79, 0xE2, 0xD2, 0x07, 0x10, 0x7F,
1079
    0x07, 0x14, 0x44, 0x3E, 0xD7, 0xB9, 0x79, 0xE2, 0xD2, 0x07, 0x10, 0x7F,
1079
    0x2A, 0x31, 0x1A, 0x1B, 0x12, 0x2A, 0x66, 0xE2, 0x92, 0x10, 0x44, 0xB8,
1080
    0x2A, 0x31, 0x1A, 0x1B, 0x12, 0x2A, 0x66, 0xE2, 0x92, 0x10, 0x44, 0xB8,
1080
    0x0D, 0x8E, 0xCC, 0x8B, 0x9C, 0xCA, 0xFB, 0xE1, 0x6A, 0xCF, 0x01, 0xD1,
1081
    0x0D, 0x8E, 0xCC, 0x8B, 0x9C, 0xCA, 0xFB, 0xE1, 0x6A, 0xCF, 0x01, 0xD1,
1081
    0x7D, 0x71, 0x13, 0xE8, 0xC8, 0xFD, 0x70, 0xD4, 0xFC, 0xB2, 0xB7, 0x80,
1082
    0x7D, 0x71, 0x13, 0xE8, 0xC8, 0xFD, 0x70, 0xD4, 0xFC, 0xB2, 0xB7, 0x80,
1082
    0x03, 0x47, 0x25, 0x26, 0x5E, 0xFB, 0x57, 0xEC, 0x82, 0x82, 0x82, 0x4B,
1083
    0x03, 0x47, 0x25, 0x26, 0x5E, 0xFB, 0x57, 0xEC, 0x82, 0x82, 0x82, 0x4B,
1083
    0x4F, 0x58, 0x02, 0x25, 0xF2, 0xC7, 0xCB, 0x96, 0xAD, 0x9F, 0xBE, 0x39,
1084
    0x4F, 0x58, 0x02, 0x25, 0xF2, 0xC7, 0xCB, 0x96, 0xAD, 0x9F, 0xBE, 0x39,
1084
    0xA3, 0x00, 0xD7, 0xA1, 0xD4, 0xFC, 0x6D, 0x01, 0x14, 0x7F, 0xD7, 0xE0,
1085
    0xA3, 0x00, 0xD7, 0xA1, 0xD4, 0xFC, 0x6D, 0x01, 0x14, 0x7F, 0xD7, 0xE0,
1085
    0xFC, 0x06, 0xE0, 0xEF, 0xB9, 0xAE, 0x31, 0x20, 0xA2, 0xB0, 0x66, 0x3C,
1086
    0xFC, 0x06, 0xE0, 0xEF, 0xB9, 0xAE, 0x31, 0x20, 0xA2, 0xB0, 0x66, 0x3C,
1086
    0xD5, 0x0C, 0x15, 0x5E, 0x3C, 0xAC, 0x6F, 0x82, 0x4C, 0xB2, 0xD0, 0x22,
1087
    0xD5, 0x0C, 0x15, 0x5E, 0x3C, 0xAC, 0x6F, 0x82, 0x4C, 0xB2, 0xD0, 0x22,
1087
    0x76, 0x01, 0x08, 0x7B, 0x40, 0x96, 0x15, 0x04, 0xD1, 0x0C, 0x3D, 0x92,
1088
    0x76, 0x01, 0x08, 0x7B, 0x40, 0x96, 0x15, 0x04, 0xD1, 0x0C, 0x3D, 0x92,
1088
    0x84, 0x46, 0x94, 0x97, 0x80, 0x91, 0x1C, 0x5D, 0x81, 0x12, 0x29, 0xE0,
1089
    0x84, 0x46, 0x94, 0x97, 0x80, 0x91, 0x1C, 0x5D, 0x81, 0x12, 0x29, 0xE0,
1089
    0xE2, 0x83, 0x56, 0xAA, 0x53, 0x85, 0x8B, 0x50, 0x40, 0x7A, 0x4B, 0x4C,
1090
    0xE2, 0x83, 0x56, 0xAA, 0x53, 0x85, 0x8B, 0x50, 0x40, 0x7A, 0x4B, 0x4C,
1090
    0x00, 0xA4, 0xEF, 0x65, 0x97, 0x06, 0x57, 0xDB, 0x9A, 0x93, 0x5D, 0xE4,
1091
    0x00, 0xA4, 0xEF, 0x65, 0x97, 0x06, 0x57, 0xDB, 0x9A, 0x93, 0x5D, 0xE4,
1091
    0xB5, 0x00, 0xC8, 0x00, 0xDA, 0x1E, 0xD0, 0x35, 0x87, 0xE7, 0x2E, 0x31,
1092
    0xB5, 0x00, 0xC8, 0x00, 0xDA, 0x1E, 0xD0, 0x35, 0x87, 0xE7, 0x2E, 0x31,
1092
    0x5D, 0x0D, 0x86, 0xAE, 0xF9, 0xEA, 0x9A, 0x1D, 0x7F, 0x3F, 0x38, 0x32,
1093
    0x5D, 0x0D, 0x86, 0xAE, 0xF9, 0xEA, 0x9A, 0x1D, 0x7F, 0x3F, 0x38, 0x32,
1093
    0x96, 0x9C, 0xE8, 0x62, 0xFB, 0x71, 0x7E, 0x32, 0xCB, 0xCC, 0xF8, 0x18,
1094
    0x96, 0x9C, 0xE8, 0x62, 0xFB, 0x71, 0x7E, 0x32, 0xCB, 0xCC, 0xF8, 0x18,
1094
    0x86, 0x6A, 0x50, 0xAD, 0x39, 0x5D, 0x42, 0xF4, 0x0F, 0x35, 0x47, 0x1F,
1095
    0x86, 0x6A, 0x50, 0xAD, 0x39, 0x5D, 0x42, 0xF4, 0x0F, 0x35, 0x47, 0x1F,
1095
    0xA1, 0xC2, 0x26, 0xFE, 0x0F, 0xED, 0x0D, 0x7F, 0x92, 0x3A, 0x0D, 0x15,
1096
    0xA1, 0xC2, 0x26, 0xFE, 0x0F, 0xED, 0x0D, 0x7F, 0x92, 0x3A, 0x0D, 0x15,
1096
    0x5B, 0xB8, 0x78, 0x85, 0x16, 0x5B, 0x9F, 0xAF, 0x4F, 0x04, 0x26, 0x02,
1097
    0x5B, 0xB8, 0x78, 0x85, 0x16, 0x5B, 0x9F, 0xAF, 0x4F, 0x04, 0x26, 0x02,
1097
    0x13, 0x81, 0x44, 0x5C, 0x4F, 0x2E, 0x59, 0x51, 0x4F, 0x5C, 0xF0, 0x31,
1098
    0x13, 0x81, 0x44, 0x5C, 0x4F, 0x2E, 0x59, 0x51, 0x4F, 0x5C, 0xF0, 0x31,
1098
    0x72, 0x2E, 0x22, 0x1B, 0x78, 0xA7, 0x09, 0x13, 0x66, 0x4A, 0x6E, 0x74,
1099
    0x72, 0x2E, 0x22, 0x1B, 0x78, 0xA7, 0x09, 0x13, 0x66, 0x4A, 0x6E, 0x74,
1099
    0xB5, 0xB7, 0x9B, 0xE7, 0xAC, 0xF3, 0xDE, 0xD5, 0x72, 0x73, 0x76, 0xE8,
1100
    0xB5, 0xB7, 0x9B, 0xE7, 0xAC, 0xF3, 0xDE, 0xD5, 0x72, 0x73, 0x76, 0xE8,
1100
    0x7A, 0xF7, 0x46, 0xF1, 0x55, 0xBB, 0xAB, 0xE6, 0x7F, 0xE1, 0x64, 0xE5,
1101
    0x7A, 0xF7, 0x46, 0xF1, 0x55, 0xBB, 0xAB, 0xE6, 0x7F, 0xE1, 0x64, 0xE5,
1101
    0xF6, 0x73, 0x15, 0xAD, 0x80, 0x6F, 0x49, 0x1C, 0xDD, 0xE5, 0x14, 0x02,
1102
    0xF6, 0x73, 0x15, 0xAD, 0x80, 0x6F, 0x49, 0x1C, 0xDD, 0xE5, 0x14, 0x02,
1102
    0x27, 0xDA, 0xBB, 0x05, 0xC7, 0xAE, 0xD6, 0xF3, 0xE7, 0x8C, 0x96, 0x4D,
1103
    0x27, 0xDA, 0xBB, 0x05, 0xC7, 0xAE, 0xD6, 0xF3, 0xE7, 0x8C, 0x96, 0x4D,
1103
    0xB0, 0xEA, 0x9F, 0x43, 0x39, 0x00, 0xE1, 0xF6, 0xF6, 0x0A, 0x67, 0x04,
1104
    0xB0, 0xEA, 0x9F, 0x43, 0x39, 0x00, 0xE1, 0xF6, 0xF6, 0x0A, 0x67, 0x04,
1104
    0x02, 0xAA, 0x01, 0x40, 0x37, 0x9B, 0x01, 0x4D, 0x0C, 0xB0, 0xEB, 0xED,
1105
    0x02, 0xAA, 0x01, 0x40, 0x37, 0x9B, 0x01, 0x4D, 0x0C, 0xB0, 0xEB, 0xED,
1105
    0xAA, 0xE9, 0xF3, 0xA5, 0x6C, 0x7E, 0xAE, 0x7D, 0x7D, 0x82, 0x20, 0xDC,
1106
    0xAA, 0xE9, 0xF3, 0xA5, 0x6C, 0x7E, 0xAE, 0x7D, 0x7D, 0x82, 0x20, 0xDC,
1106
    0xA4, 0x2B, 0x62, 0xD5, 0x02, 0x81, 0x77, 0x7D, 0x6C, 0x9A, 0x34, 0xEB,
1107
    0xA4, 0x2B, 0x62, 0xD5, 0x02, 0x81, 0x77, 0x7D, 0x6C, 0x9A, 0x34, 0xEB,
1107
    0xA6, 0xCC, 0x14, 0x3A, 0x25, 0x0A, 0x50, 0x00, 0x24, 0x9A, 0xBC, 0x5D,
1108
    0xA6, 0xCC, 0x14, 0x3A, 0x25, 0x0A, 0x50, 0x00, 0x24, 0x9A, 0xBC, 0x5D,
1108
    0x9E, 0x46, 0xE2, 0x31, 0x04, 0xFE, 0x5E, 0x19, 0xFE, 0x16, 0xC2, 0x78,
1109
    0x9E, 0x46, 0xE2, 0x31, 0x04, 0xFE, 0x5E, 0x19, 0xFE, 0x16, 0xC2, 0x78,
1109
    0x25, 0x77, 0x95, 0xAB, 0xAC, 0x66, 0xCC, 0x3F, 0x7B, 0xAC, 0x74, 0x49,
1110
    0x25, 0x77, 0x95, 0xAB, 0xAC, 0x66, 0xCC, 0x3F, 0x7B, 0xAC, 0x74, 0x49,
1110
    0x52, 0x01, 0x80, 0x87, 0x8A, 0x00, 0x90, 0x98, 0xA7, 0xD5, 0xBF, 0x40,
1111
    0x52, 0x01, 0x80, 0x87, 0x8A, 0x00, 0x90, 0x98, 0xA7, 0xD5, 0xBF, 0x40,
1111
    0x97, 0x00, 0x3A, 0x13, 0xC2, 0xB5, 0x45, 0xA5, 0x40, 0x78, 0x1C, 0xE1,
1112
    0x97, 0x00, 0x3A, 0x13, 0xC2, 0xB5, 0x45, 0xA5, 0x40, 0x78, 0x1C, 0xE1,
1112
    0x8A, 0x8D, 0x22, 0x00, 0xC5, 0x43, 0x24, 0x00, 0x80, 0xEF, 0x99, 0x02,
1113
    0x8A, 0x8D, 0x22, 0x00, 0xC5, 0x43, 0x24, 0x00, 0x80, 0xEF, 0x99, 0x02,
1113
    0x06, 0xED, 0xF3, 0xA8, 0x8C, 0x37, 0xA1, 0x03, 0x12, 0xB9, 0xEF, 0x24,
1114
    0x06, 0xED, 0xF3, 0xA8, 0x8C, 0x37, 0xA1, 0x03, 0x12, 0xB9, 0xEF, 0x24,
1114
    0x3C, 0x46, 0x98, 0x82, 0xE5, 0x79, 0x3A, 0xA0, 0xA2, 0x02, 0x49, 0xEA,
1115
    0x3C, 0x46, 0x98, 0x82, 0xE5, 0x79, 0x3A, 0xA0, 0xA2, 0x02, 0x49, 0xEA,
1115
    0xCB, 0x01, 0x48, 0x3B, 0xC0, 0x2F, 0x28, 0x05, 0x2A, 0x05, 0xAC, 0x2B,
1116
    0xCB, 0x01, 0x48, 0x3B, 0xC0, 0x2F, 0x28, 0x05, 0x2A, 0x05, 0xAC, 0x2B,
1116
    0xDD, 0x27, 0xD8, 0xB4, 0x49, 0x9E, 0xE8, 0x71, 0x99, 0xA0, 0xE8, 0x18,
1117
    0xDD, 0x27, 0xD8, 0xB4, 0x49, 0x9E, 0xE8, 0x71, 0x99, 0xA0, 0xE8, 0x18,
1117
    0x73, 0x07, 0xFA, 0x62, 0x17, 0x95, 0x00, 0x39, 0x7F, 0x40, 0xA0, 0x80,
1118
    0x73, 0x07, 0xFA, 0x62, 0x17, 0x95, 0x00, 0x39, 0x7F, 0x40, 0xA0, 0x80,
1118
    0x91, 0xDA, 0xDB, 0x89, 0x46, 0x6B, 0x1E, 0x04, 0x41, 0x5A, 0x59, 0xA3,
1119
    0x91, 0xDA, 0xDB, 0x89, 0x46, 0x6B, 0x1E, 0x04, 0x41, 0x5A, 0x59, 0xA3,
1119
    0x36, 0xFF, 0x82, 0x3E, 0x37, 0x87, 0x92, 0xAE, 0x3F, 0xC1, 0xA8, 0x7F,
1120
    0x36, 0xFF, 0x82, 0x3E, 0x37, 0x87, 0x92, 0xAE, 0x3F, 0xC1, 0xA8, 0x7F,
1120
    0xBD, 0xE9, 0x4F, 0x94, 0x31, 0x18, 0xA3, 0xA9, 0x3E, 0x60, 0x36, 0x1A,
1121
    0xBD, 0xE9, 0x4F, 0x94, 0x31, 0x18, 0xA3, 0xA9, 0x3E, 0x60, 0x36, 0x1A,
1121
    0xB9, 0x52, 0x13, 0x5D, 0x70, 0xD7, 0xFA, 0xC8, 0x73, 0xBE, 0x30, 0x65,
1122
    0xB9, 0x52, 0x13, 0x5D, 0x70, 0xD7, 0xFA, 0xC8, 0x73, 0xBE, 0x30, 0x65,
1122
    0x6C, 0x32, 0x4E, 0xBF, 0x0E, 0x67, 0x2E, 0x2E, 0x54, 0x19, 0xCF, 0x5C,
1123
    0x6C, 0x32, 0x4E, 0xBF, 0x0E, 0x67, 0x2E, 0x2E, 0x54, 0x19, 0xCF, 0x5C,
1123
    0x7C, 0x61, 0x47, 0x5F, 0xAD, 0x8C, 0x08, 0x00, 0x60, 0x3E, 0xFA, 0x8C,
1124
    0x7C, 0x61, 0x47, 0x5F, 0xAD, 0x8C, 0x08, 0x00, 0x60, 0x3E, 0xFA, 0x8C,
1124
    0xE0, 0xF0, 0x7D, 0x08, 0x35, 0x74, 0x92, 0x7B, 0x97, 0x6A, 0x95, 0x9D,
1125
    0xE0, 0xF0, 0x7D, 0x08, 0x35, 0x74, 0x92, 0x7B, 0x97, 0x6A, 0x95, 0x9D,
1125
    0xBC, 0xFD, 0xF5, 0xA5, 0x7F, 0x4A, 0x3B, 0x3C, 0x3C, 0xDE, 0x59, 0xC1,
1126
    0xBC, 0xFD, 0xF5, 0xA5, 0x7F, 0x4A, 0x3B, 0x3C, 0x3C, 0xDE, 0x59, 0xC1,
1126
    0xF7, 0x47, 0xC0, 0x67, 0x1D, 0x7A, 0x8C, 0x46, 0xC2, 0xC4, 0xC4, 0x75,
1127
    0xF7, 0x47, 0xC0, 0x67, 0x1D, 0x7A, 0x8C, 0x46, 0xC2, 0xC4, 0xC4, 0x75,
1127
    0x36, 0xF3, 0xEE, 0x86, 0x69, 0xAB, 0x94, 0xAC, 0xAC, 0xDA, 0xBE, 0x22,
1128
    0x36, 0xF3, 0xEE, 0x86, 0x69, 0xAB, 0x94, 0xAC, 0xAC, 0xDA, 0xBE, 0x22,
1128
    0x3E, 0xFA, 0x3D, 0x5F, 0xAD, 0x6E, 0xB5, 0x8B, 0x74, 0xA7, 0xEE, 0xE6,
1129
    0x3E, 0xFA, 0x3D, 0x5F, 0xAD, 0x6E, 0xB5, 0x8B, 0x74, 0xA7, 0xEE, 0xE6,
1129
    0xEC, 0xDD, 0x6D, 0x99, 0xB3, 0x25, 0x98, 0xD5, 0xDF, 0x63, 0xFD, 0x11,
1130
    0xEC, 0xDD, 0x6D, 0x99, 0xB3, 0x25, 0x98, 0xD5, 0xDF, 0x63, 0xFD, 0x11,
1130
    0xFA, 0xD0, 0x33, 0x22, 0x69, 0x3F, 0xF8, 0xFB, 0x8F, 0x7E, 0xFF, 0x91,
1131
    0xFA, 0xD0, 0x33, 0x22, 0x69, 0x3F, 0xF8, 0xFB, 0x8F, 0x7E, 0xFF, 0x91,
1131
    0x3E, 0x96, 0xDE, 0x29, 0x52, 0x40, 0xA9, 0xEE, 0x97, 0xBC, 0x2C, 0x24,
1132
    0x3E, 0x96, 0xDE, 0x29, 0x52, 0x40, 0xA9, 0xEE, 0x97, 0xBC, 0x2C, 0x24,
1132
    0x4E, 0x69, 0x8B, 0xAD, 0xC1, 0xD1, 0xE7, 0x9A, 0x69, 0xD9, 0xA4, 0x4D,
1133
    0x4E, 0x69, 0x8B, 0xAD, 0xC1, 0xD1, 0xE7, 0x9A, 0x69, 0xD9, 0xA4, 0x4D,
1133
    0x37, 0x10, 0xB5, 0xED, 0x15, 0xCB, 0x59, 0x78, 0x7E, 0xF6, 0x1C, 0x3D,
1134
    0x37, 0x10, 0xB5, 0xED, 0x15, 0xCB, 0x59, 0x78, 0x7E, 0xF6, 0x1C, 0x3D,
1134
    0xE1, 0x54, 0x57, 0x2F, 0x28, 0xF3, 0x75, 0x81, 0x2A, 0x8B, 0xA9, 0xB0,
1135
    0xE1, 0x54, 0x57, 0x2F, 0x28, 0xF3, 0x75, 0x81, 0x2A, 0x8B, 0xA9, 0xB0,
1135
    0x5E, 0x2D, 0xA7, 0xD1, 0xE9, 0x99, 0xA5, 0x6A, 0xE1, 0x64, 0x67, 0xB7,
1136
    0x5E, 0x2D, 0xA7, 0xD1, 0xE9, 0x99, 0xA5, 0x6A, 0xE1, 0x64, 0x67, 0xB7,
1136
    0xCB, 0xCB, 0x2C, 0x8F, 0x07, 0x5F, 0xF5, 0xEA, 0x80, 0x83, 0x76, 0x23,
1137
    0xCB, 0xCB, 0x2C, 0x8F, 0x07, 0x5F, 0xF5, 0xEA, 0x80, 0x83, 0x76, 0x23,
1137
    0x1D, 0xA0, 0x66, 0x9C, 0x94, 0x32, 0x58, 0x55, 0x12, 0x8F, 0xAE, 0x2F,
1138
    0x1D, 0xA0, 0x66, 0x9C, 0x94, 0x32, 0x58, 0x55, 0x12, 0x8F, 0xAE, 0x2F,
1138
    0x43, 0xC2, 0x77, 0x97, 0xBB, 0xAB, 0x3A, 0x29, 0x78, 0x98, 0xA8, 0xC7,
1139
    0x43, 0xC2, 0x77, 0x97, 0xBB, 0xAB, 0x3A, 0x29, 0x78, 0x98, 0xA8, 0xC7,
1139
    0x49, 0x52, 0x1E, 0xA5, 0x00, 0x75, 0x70, 0xB8, 0xBC, 0x8C, 0xD0, 0x5A,
1140
    0x49, 0x52, 0x1E, 0xA5, 0x00, 0x75, 0x70, 0xB8, 0xBC, 0x8C, 0xD0, 0x5A,
1140
    0xB2, 0x6E, 0x07, 0x00, 0x64, 0x63, 0xAB, 0x52, 0xC4, 0x28, 0x00, 0x9A,
1141
    0xB2, 0x6E, 0x07, 0x00, 0x64, 0x63, 0xAB, 0x52, 0xC4, 0x28, 0x00, 0x9A,
1141
    0x11, 0xE2, 0x15, 0x65, 0x09, 0x77, 0xE7, 0x11, 0x57, 0x07, 0x7C, 0xF5,
1142
    0x11, 0xE2, 0x15, 0x65, 0x09, 0x77, 0xE7, 0x11, 0x57, 0x07, 0x7C, 0xF5,
1142
    0x12, 0x68, 0xE6, 0x7E, 0xB7, 0x06, 0xAE, 0x2E, 0x4B, 0x42, 0x4B, 0x7F,
1143
    0x12, 0x68, 0xE6, 0x7E, 0xB7, 0x06, 0xAE, 0x2E, 0x4B, 0x42, 0x4B, 0x7F,
1143
    0xC3, 0xEC, 0x03, 0x88, 0x37, 0x03, 0xF0, 0x3B, 0xC9, 0xE9, 0x9F, 0x7D,
1144
    0xC3, 0xEC, 0x03, 0x88, 0x37, 0x03, 0xF0, 0x3B, 0xC9, 0xE9, 0x9F, 0x7D,
1144
    0xE1, 0xEA, 0xB2, 0xED, 0x79, 0x6C, 0x59, 0xD0, 0x00, 0x80, 0xE2, 0xB1,
1145
    0xE1, 0xEA, 0xB2, 0xED, 0x79, 0x6C, 0x59, 0xD0, 0x00, 0x80, 0xE2, 0xB1,
1145
    0xA7, 0x39, 0x3F, 0xB2, 0x63, 0x2E, 0x7B, 0xFE, 0x12, 0xCE, 0xA2, 0x5F,
1146
    0xA7, 0x39, 0x3F, 0xB2, 0x63, 0x2E, 0x7B, 0xFE, 0x12, 0xCE, 0xA2, 0x5F,
1146
    0xE9, 0x2B, 0xD5, 0x23, 0x6F, 0x18, 0x4E, 0xBD, 0xC9, 0x4F, 0x96, 0xFF,
1147
    0xE9, 0x2B, 0xD5, 0x23, 0x6F, 0x18, 0x4E, 0xBD, 0xC9, 0x4F, 0x96, 0xFF,
1147
    0xEB, 0x1D, 0x9C, 0x5F, 0x4C, 0x04, 0xFE, 0x6F, 0x04, 0x54, 0xDE, 0xAF,
1148
    0xEB, 0x1D, 0x9C, 0x5F, 0x4C, 0x04, 0xFE, 0x6F, 0x04, 0x54, 0xDE, 0xAF,
1148
    0xCA, 0xDB, 0xA9, 0xBE, 0x20, 0x81, 0xB7, 0xDA, 0x5E, 0xAC, 0x4E, 0xF4,
1149
    0xCA, 0xDB, 0xA9, 0xBE, 0x20, 0x81, 0xB7, 0xDA, 0x5E, 0xAC, 0x4E, 0xF4,
1149
    0x19, 0xD5, 0xE9, 0x54, 0x79, 0x3F, 0xE8, 0x74, 0x07, 0xF5, 0x05, 0x69,
1150
    0x19, 0xD5, 0xE9, 0x54, 0x79, 0x3F, 0xE8, 0x74, 0x07, 0xF5, 0x05, 0x69,
1150
    0x7F, 0x46, 0xE5, 0xFB, 0xBE, 0xB5, 0x3A, 0x6D, 0xFE, 0x1D, 0x2F, 0xD0,
1151
    0x7F, 0x46, 0xE5, 0xFB, 0xBE, 0xB5, 0x3A, 0x6D, 0xFE, 0x1D, 0x2F, 0xD0,
1151
    0x55, 0xE4, 0xAF, 0xEE, 0x80, 0x3A, 0x5F, 0xAB, 0xFF, 0x82, 0x49, 0xFF,
1152
    0x55, 0xE4, 0xAF, 0xEE, 0x80, 0x3A, 0x5F, 0xAB, 0xFF, 0x82, 0x49, 0xFF,
1152
    0xE4, 0x8D, 0x7D, 0xF6, 0x81, 0xEF, 0x64, 0xF5, 0xB9, 0x0E, 0xD0, 0xBE,
1153
    0xE4, 0x8D, 0x7D, 0xF6, 0x81, 0xEF, 0x64, 0xF5, 0xB9, 0x0E, 0xD0, 0xBE,
1153
    0x77, 0x3A, 0x34, 0xF5, 0x3C, 0x2D, 0x96, 0x43, 0x7E, 0x00, 0x95, 0x15,
1154
    0x77, 0x3A, 0x34, 0xF5, 0x3C, 0x2D, 0x96, 0x43, 0x7E, 0x00, 0x95, 0x15,
1154
    0x43, 0xF2, 0xB1, 0xC6, 0xAA, 0x39, 0x01, 0x71, 0x43, 0x6C, 0xB6, 0x07,
1155
    0x43, 0xF2, 0xB1, 0xC6, 0xAA, 0x39, 0x01, 0x71, 0x43, 0x6C, 0xB6, 0x07,
1155
    0xA0, 0x65, 0x9B, 0xF7, 0xE9, 0xF3, 0x47, 0xCB, 0x12, 0xC0, 0x80, 0xFA,
1156
    0xA0, 0x65, 0x9B, 0xF7, 0xE9, 0xF3, 0x47, 0xCB, 0x12, 0xC0, 0x80, 0xFA,
1156
    0x29, 0xFC, 0xBD, 0x38, 0xE0, 0x66, 0x06, 0xF3, 0xFD, 0xD5, 0xFC, 0x00,
1157
    0x29, 0xFC, 0xBD, 0x38, 0xE0, 0x66, 0x06, 0xF3, 0xFD, 0xD5, 0xFC, 0x00,
1157
    0x8D, 0x13, 0x74, 0xA0, 0xDB, 0x78, 0xC9, 0xDB, 0xD7, 0x7E, 0xF0, 0x4A,
1158
    0x8D, 0x13, 0x74, 0xA0, 0xDB, 0x78, 0xC9, 0xDB, 0xD7, 0x7E, 0xF0, 0x4A,
1158
    0xBD, 0x4D, 0x52, 0x44, 0x3C, 0x6E, 0x67, 0x7B, 0x4E, 0xD1, 0x68, 0x19,
1159
    0xBD, 0x4D, 0x52, 0x44, 0x3C, 0x6E, 0x67, 0x7B, 0x4E, 0xD1, 0x68, 0x19,
1159
    0xE9, 0xFA, 0x49, 0x87, 0x08, 0xBC, 0x11, 0x32, 0xF2, 0xAC, 0x7F, 0x14,
1160
    0xE9, 0xFA, 0x49, 0x87, 0x08, 0xBC, 0x11, 0x32, 0xF2, 0xAC, 0x7F, 0x14,
1160
    0x00, 0xBD, 0xED, 0xBE, 0x19, 0x6B, 0xDD, 0x04, 0x62, 0xBC, 0xE4, 0x7B,
1161
    0x00, 0xBD, 0xED, 0xBE, 0x19, 0x6B, 0xDD, 0x04, 0x62, 0xBC, 0xE4, 0x7B,
1161
    0xFD, 0x08, 0x20, 0x71, 0x3F, 0x6D, 0xEB, 0x0A, 0x2D, 0xE7, 0x13, 0xB2,
1162
    0xFD, 0x08, 0x20, 0x71, 0x3F, 0x6D, 0xEB, 0x0A, 0x2D, 0xE7, 0x13, 0xB2,
1162
    0xD6, 0x37, 0x07, 0xD9, 0x68, 0xD9, 0x8C, 0x93, 0x5E, 0x3A, 0x44, 0x01,
1163
    0xD6, 0x37, 0x07, 0xD9, 0x68, 0xD9, 0x8C, 0x93, 0x5E, 0x3A, 0x44, 0x01,
1163
    0xE9, 0xEF, 0x9F, 0xBF, 0x0C, 0x03, 0x00, 0xC3, 0xA4, 0xD7, 0x78, 0x18,
1164
    0xE9, 0xEF, 0x9F, 0xBF, 0x0C, 0x03, 0x00, 0xC3, 0xA4, 0xD7, 0x78, 0x18,
1164
    0x00, 0x44, 0x21, 0xEA, 0xAE, 0xD1, 0xDE, 0xE6, 0x19, 0x40, 0x36, 0xB8,
1165
    0x00, 0x44, 0x21, 0xEA, 0xAE, 0xD1, 0xDE, 0xE6, 0x19, 0x40, 0x36, 0xB8,
1165
    0x17, 0x02, 0x20, 0x5A, 0xF7, 0xC3, 0x52, 0xC7, 0x5D, 0x09, 0x80, 0x24,
1166
    0x17, 0x02, 0x20, 0x5A, 0xF7, 0xC3, 0x52, 0xC7, 0x5D, 0x09, 0x80, 0x24,
1166
    0x7D, 0x31, 0x00, 0xBC, 0x35, 0x0C, 0xE3, 0x65, 0x07, 0x85, 0xC7, 0x12,
1167
    0x7D, 0x31, 0x00, 0xBC, 0x35, 0x0C, 0xE3, 0x65, 0x07, 0x85, 0xC7, 0x12,
1167
    0x78, 0x0E, 0xB8, 0x99, 0x9F, 0x5D, 0x79, 0x94, 0xE4, 0xF5, 0x7B, 0x78,
1168
    0x78, 0x0E, 0xB8, 0x99, 0x9F, 0x5D, 0x79, 0x94, 0xE4, 0xF5, 0x7B, 0x78,
1168
    0x37, 0x90, 0xB9, 0x1E, 0x01, 0x36, 0xE4, 0xF2, 0x31, 0x4C, 0x01, 0xA2,
1169
    0x37, 0x90, 0xB9, 0x1E, 0x01, 0x36, 0xE4, 0xF2, 0x31, 0x4C, 0x01, 0xA2,
1169
    0x20, 0xD1, 0xEC, 0xF9, 0x36, 0x5E, 0x72, 0xC3, 0x6A, 0x9B, 0x82, 0xDF,
1170
    0x20, 0xD1, 0xEC, 0xF9, 0x36, 0x5E, 0x72, 0xC3, 0x6A, 0x9B, 0x82, 0xDF,
1170
    0x04, 0xB1, 0x07, 0xFA, 0x3B, 0x3D, 0x75, 0x53, 0x19, 0x2D, 0xDB, 0xA6,
1171
    0x04, 0xB1, 0x07, 0xFA, 0x3B, 0x3D, 0x75, 0x53, 0x19, 0x2D, 0xDB, 0xA6,
1171
    0x4A, 0x33, 0x02, 0xD3, 0x29, 0xAD, 0x51, 0xB9, 0x62, 0xA3, 0xB5, 0xE7,
1172
    0x4A, 0x33, 0x02, 0xD3, 0x29, 0xAD, 0x51, 0xB9, 0x62, 0xA3, 0xB5, 0xE7,
1172
    0x7D, 0x8E, 0x92, 0xB2, 0x06, 0x69, 0x05, 0xDF, 0x77, 0x99, 0xF0, 0x16,
1173
    0x7D, 0x8E, 0x92, 0xB2, 0x06, 0x69, 0x05, 0xDF, 0x77, 0x99, 0xF0, 0x16,
1173
    0x93, 0x24, 0x41, 0x61, 0x4C, 0x23, 0x9A, 0x6E, 0x70, 0xB4, 0xAC, 0xC7,
1174
    0x93, 0x24, 0x41, 0x61, 0x4C, 0x23, 0x9A, 0x6E, 0x70, 0xB4, 0xAC, 0xC7,
1174
    0xA0, 0xD6, 0x07, 0x8F, 0x10, 0xB2, 0x26, 0x57, 0xCB, 0x4A, 0x01, 0xA2,
1175
    0xA0, 0xD6, 0x07, 0x8F, 0x10, 0xB2, 0x26, 0x57, 0xCB, 0x4A, 0x01, 0xA2,
1175
    0x02, 0x45, 0x40, 0xD6, 0xE5, 0x29, 0x2E, 0xC6, 0x58, 0x97, 0x4F, 0xE5,
1176
    0x02, 0x45, 0x40, 0xD6, 0xE5, 0x29, 0x2E, 0xC6, 0x58, 0x97, 0x4F, 0xE5,
1176
    0x82, 0xC6, 0xBA, 0x3A, 0xBF, 0x9E, 0x08, 0x4C, 0x04, 0x26, 0x02, 0x13,
1177
    0x82, 0xC6, 0xBA, 0x3A, 0xBF, 0x9E, 0x08, 0x4C, 0x04, 0x26, 0x02, 0x13,
1177
    0x81, 0x1C, 0x81, 0xEF, 0x66, 0x1E, 0x8F, 0x3E, 0x5C, 0xE2, 0xE6, 0x27,
1178
    0x81, 0x1C, 0x81, 0xEF, 0x66, 0x1E, 0x8F, 0x3E, 0x5C, 0xE2, 0xE6, 0x27,
1178
    0x7E, 0x96, 0x99, 0xC6, 0xE7, 0xDE, 0x4F, 0x0F, 0x18, 0x00, 0xAC, 0xB6,
1179
    0x7E, 0x96, 0x99, 0xC6, 0xE7, 0xDE, 0x4F, 0x0F, 0x18, 0x00, 0xAC, 0xB6,
1179
    0xAF, 0x15, 0x8C, 0x7E, 0x3F, 0xEE, 0x21, 0x22, 0xF1, 0xFF, 0x55, 0x17,
1180
    0xAF, 0x15, 0x8C, 0x7E, 0x3F, 0xEE, 0x21, 0x22, 0xF1, 0xFF, 0x55, 0x17,
1180
    0x99, 0xAA, 0xC6, 0x49, 0xF3, 0x0D, 0x0C, 0x7F, 0x9F, 0xD3, 0xF4, 0x0F,
1181
    0x99, 0xAA, 0xC6, 0x49, 0xF3, 0x0D, 0x0C, 0x7F, 0x9F, 0xD3, 0xF4, 0x0F,
1181
    0x7F, 0x43, 0x14, 0x06, 0xCD, 0xF4, 0xE4, 0x87, 0x3C, 0x58, 0x06, 0x27,
1182
    0x7F, 0x43, 0x14, 0x06, 0xCD, 0xF4, 0xE4, 0x87, 0x3C, 0x58, 0x06, 0x27,
1182
    0xBB, 0x31, 0x95, 0x4A, 0xB4, 0x77, 0x55, 0xA3, 0xA4, 0xEF, 0x4B, 0x77,
1183
    0xBB, 0x31, 0x95, 0x4A, 0xB4, 0x77, 0x55, 0xA3, 0xA4, 0xEF, 0x4B, 0x77,
1183
    0xAD, 0xFF, 0x34, 0x63, 0x59, 0xD9, 0x5E, 0x56, 0xA7, 0x85, 0x6B, 0xCB,
1184
    0xAD, 0xFF, 0x34, 0x63, 0x59, 0xD9, 0x5E, 0x56, 0xA7, 0x85, 0x6B, 0xCB,
1184
    0x30, 0x85, 0x79, 0x03, 0xB9, 0xE4, 0xFD, 0x6A, 0xF1, 0xFD, 0x5E, 0xE3,
1185
    0x30, 0x85, 0x79, 0x03, 0xB9, 0xE4, 0xFD, 0x6A, 0xF1, 0xFD, 0x5E, 0xE3,
1185
    0x54, 0x2C, 0xC7, 0xCB, 0xDA, 0x35, 0xBD, 0x42, 0x56, 0xB6, 0x00, 0x05,
1186
    0x54, 0x2C, 0xC7, 0xCB, 0xDA, 0x35, 0xBD, 0x42, 0x56, 0xB6, 0x00, 0x05,
1186
    0x8D, 0xBF, 0xBF, 0xB0, 0xFC, 0x88, 0x40, 0x79, 0x2A, 0x3C, 0xD4, 0x32,
1187
    0x8D, 0xBF, 0xBF, 0xB0, 0xFC, 0x88, 0x40, 0x79, 0x2A, 0x3C, 0xD4, 0x32,
1187
    0x38, 0x6A, 0x8E, 0x1F, 0x06, 0xC0, 0x3A, 0x44, 0xB7, 0xCD, 0x5F, 0x5B,
1188
    0x38, 0x6A, 0x8E, 0x1F, 0x06, 0xC0, 0x3A, 0x44, 0xB7, 0xCD, 0x5F, 0x5B,
1188
    0xB6, 0x7C, 0x7F, 0x24, 0x8F, 0x29, 0x00, 0x1A, 0xD0, 0x55, 0x2D, 0x0F,
1189
    0xB6, 0x7C, 0x7F, 0x24, 0x8F, 0x29, 0x00, 0x1A, 0xD0, 0x55, 0x2D, 0x0F,
1189
    0x03, 0x60, 0xF2, 0xB6, 0xDE, 0xE9, 0x71, 0x61, 0x19, 0xEE, 0xFA, 0x7A,
1190
    0x03, 0x60, 0xF2, 0xB6, 0xDE, 0xE9, 0x71, 0x61, 0x19, 0xEE, 0xFA, 0x7A,
1190
    0x7D, 0x1E, 0x47, 0xF0, 0x84, 0x90, 0x34, 0xCD, 0x0D, 0x90, 0x94, 0x87,
1191
    0x7D, 0x1E, 0x47, 0xF0, 0x84, 0x90, 0x34, 0xCD, 0x0D, 0x90, 0x94, 0x87,
1191
    0x01, 0x68, 0xE1, 0x06, 0x7E, 0x8E, 0x2E, 0x2E, 0x5B, 0x4A, 0x14, 0xD2,
1192
    0x01, 0x68, 0xE1, 0x06, 0x7E, 0x8E, 0x2E, 0x2E, 0x5B, 0x4A, 0x14, 0xD2,
1192
    0x7B, 0x9B, 0x8A, 0xC6, 0xB7, 0xA7, 0x0A, 0x89, 0x62, 0xB9, 0xB9, 0x1B,
1193
    0x7B, 0x9B, 0x8A, 0xC6, 0xB7, 0xA7, 0x0A, 0x89, 0x62, 0xB9, 0xB9, 0x1B,
1193
    0x38, 0x90, 0xAA, 0xE5, 0x37, 0x1C, 0x71, 0xD3, 0x3F, 0xA0, 0x12, 0x76,
1194
    0x38, 0x90, 0xAA, 0xE5, 0x37, 0x1C, 0x71, 0xD3, 0x3F, 0xA0, 0x12, 0x76,
1194
    0xF8, 0x86, 0x09, 0x9A, 0x4D, 0x4E, 0x04, 0x26, 0x02, 0x13, 0x81, 0xFF,
1195
    0xF8, 0x86, 0x09, 0x9A, 0x4D, 0x4E, 0x04, 0x26, 0x02, 0x13, 0x81, 0xFF,
1195
    0x0A, 0x01, 0x3B, 0x38, 0x39, 0x9D, 0x1D, 0x0B, 0xF4, 0x55, 0x79, 0x3B,
1196
    0x0A, 0x01, 0x3B, 0x38, 0x39, 0x9D, 0x1D, 0x0B, 0xF4, 0x55, 0x79, 0x3B,
1196
    0xD3, 0x17, 0x64, 0xE0, 0x56, 0xDB, 0x8B, 0xF5, 0x91, 0x3E, 0x23, 0x0F,
1197
    0xD3, 0x17, 0x64, 0xE0, 0x56, 0xDB, 0x8B, 0xF5, 0x91, 0x3E, 0x23, 0x0F,
1197
    0xE2, 0x82, 0xB8, 0x46, 0x21, 0x2E, 0x97, 0x7B, 0x88, 0xA8, 0xBE, 0x20,
1198
    0xE2, 0x82, 0xB8, 0x46, 0x21, 0x2E, 0x97, 0x7B, 0x88, 0xA8, 0xBE, 0x20,
1198
    0xF6, 0x98, 0x99, 0xBD, 0xAA, 0x87, 0x88, 0xD6, 0xCF, 0x1E, 0x22, 0x01,
1199
    0xF6, 0x98, 0x99, 0xBD, 0xAA, 0x87, 0x88, 0xD6, 0xCF, 0x1E, 0x22, 0x01,
1199
    0x80, 0xA0, 0x4F, 0x60, 0x4B, 0x55, 0x36, 0x3F, 0x17, 0x3C, 0x0F, 0x81,
1200
    0x80, 0xA0, 0x4F, 0x60, 0x4B, 0x55, 0x36, 0x3F, 0x17, 0x3C, 0x0F, 0x81,
1200
    0x7B, 0xF9, 0x24, 0x0D, 0xB4, 0x9A, 0x57, 0x2E, 0x37, 0x3A, 0x2E, 0x9B,
1201
    0x7B, 0xF9, 0x24, 0x0D, 0xB4, 0x9A, 0x57, 0x2E, 0x37, 0x3A, 0x2E, 0x9B,
1201
    0x90, 0xC4, 0xA8, 0xBC, 0xAE, 0xDF, 0xEB, 0xF5, 0x06, 0x92, 0x3A, 0x4B,
1202
    0x90, 0xC4, 0xA8, 0xBC, 0xAE, 0xDF, 0xEB, 0xF5, 0x06, 0x92, 0x3A, 0x4B,
1202
    0x83, 0xAF, 0xAB, 0x65, 0xCB, 0xBD, 0xEF, 0xFD, 0x0D, 0x90, 0x3E, 0x80,
1203
    0x83, 0xAF, 0xAB, 0x65, 0xCB, 0xBD, 0xEF, 0xFD, 0x0D, 0x90, 0x3E, 0x80,
1203
    0x48, 0x5C, 0x9F, 0x37, 0x59, 0xDC, 0x13, 0x9D, 0x25, 0xFB, 0x93, 0xCB,
1204
    0x48, 0x5C, 0x9F, 0x37, 0x59, 0xDC, 0x13, 0x9D, 0x25, 0xFB, 0x93, 0xCB,
1204
    0xD8, 0xA3, 0xF1, 0xD2, 0x3B, 0x1C, 0xC8, 0x8D, 0x0D, 0x99, 0xF1, 0x54,
1205
    0xD8, 0xA3, 0xF1, 0xD2, 0x3B, 0x1C, 0xC8, 0x8D, 0x0D, 0x99, 0xF1, 0x54,
1205
    0x27, 0x13, 0xEF, 0x53, 0x84, 0x7F, 0x75, 0xC0, 0xE1, 0x7D, 0x95, 0x66,
1206
    0x27, 0x13, 0xEF, 0x53, 0x84, 0x7F, 0x75, 0xC0, 0xE1, 0x7D, 0x95, 0x66,
1206
    0x31, 0x1E, 0xF2, 0x70, 0x91, 0xE7, 0x0F, 0x17, 0x13, 0x51, 0x48, 0x78,
1207
    0x31, 0x1E, 0xF2, 0x70, 0x91, 0xE7, 0x0F, 0x17, 0x13, 0x51, 0x48, 0x78,
1207
    0xE1, 0xE8, 0x61, 0xDE, 0x7E, 0x76, 0x7B, 0xB8, 0xDC, 0x84, 0x17, 0xEF,
1208
    0xE1, 0xE8, 0x61, 0xDE, 0x7E, 0x76, 0x7B, 0xB8, 0xDC, 0x84, 0x17, 0xEF,
1208
    0x71, 0x82, 0x21, 0xB8, 0xFA, 0x47, 0x01, 0x30, 0x5F, 0x07, 0x1F, 0x00,
1209
    0x71, 0x82, 0x21, 0xB8, 0xFA, 0x47, 0x01, 0x30, 0x5F, 0x07, 0x1F, 0x00,
1209
    0xA2, 0x0E, 0x12, 0xFA, 0xBC, 0x29, 0x6B, 0x3E, 0x13, 0x00, 0xA5, 0x00,
1210
    0xA2, 0x0E, 0x12, 0xFA, 0xBC, 0x29, 0x6B, 0x3E, 0x13, 0x00, 0xA5, 0x00,
1210
    0x64, 0x90, 0xA4, 0x24, 0x1F, 0xC3, 0x00, 0xC0, 0xC3, 0xA5, 0xE7, 0x21,
1211
    0x64, 0x90, 0xA4, 0x24, 0x1F, 0xC3, 0x00, 0xC0, 0xC3, 0xA5, 0xE7, 0x21,
1211
    0x82, 0xFC, 0x02, 0xBC, 0x2D, 0x18, 0x79, 0x78, 0x25, 0x44, 0xC8, 0x01,
1212
    0x82, 0xFC, 0x02, 0xBC, 0x2D, 0x18, 0x79, 0x78, 0x25, 0x44, 0xC8, 0x01,
1212
    0x52, 0x24, 0xF1, 0x7C, 0x09, 0x48, 0xCA, 0x4E, 0x38, 0x23, 0x08, 0x89,
1213
    0x52, 0x24, 0xF1, 0x7C, 0x09, 0x48, 0xCA, 0x4E, 0x38, 0x23, 0x08, 0x89,
1213
    0x52, 0xFE, 0x01, 0x2C, 0xD1, 0x52, 0xD9, 0xBC, 0x1D, 0xFC, 0xA9, 0xDE,
1214
    0x52, 0xFE, 0x01, 0x2C, 0xD1, 0x52, 0xD9, 0xBC, 0x1D, 0xFC, 0xA9, 0xDE,
1214
    0x3C, 0x44, 0x48, 0x25, 0xC3, 0xCF, 0x9B, 0x37, 0xBF, 0x22, 0xA6, 0x39,
1215
    0x3C, 0x44, 0x48, 0x25, 0xC3, 0xCF, 0x9B, 0x37, 0xBF, 0x22, 0xA6, 0x39,
1215
    0x2B, 0xC9, 0x5E, 0x3F, 0xEC, 0x1F, 0x20, 0xA7, 0xC0, 0x89, 0x7F, 0x00,
1216
    0x2B, 0xC9, 0x5E, 0x3F, 0xEC, 0x1F, 0x20, 0xA7, 0xC0, 0x89, 0x7F, 0x00,
1216
    0xB5, 0x8F, 0x3D, 0xB9, 0x54, 0x56, 0x17, 0x19, 0x2C, 0x38, 0x8E, 0x5E,
1217
    0xB5, 0x8F, 0x3D, 0xB9, 0x54, 0x56, 0x17, 0x19, 0x2C, 0x38, 0x8E, 0x5E,
1217
    0x1F, 0x4C, 0xE1, 0x31, 0x70, 0x22, 0x9D, 0x7F, 0x9A, 0x5D, 0x09, 0x5A,
1218
    0x1F, 0x4C, 0xE1, 0x31, 0x70, 0x22, 0x9D, 0x7F, 0x9A, 0x5D, 0x09, 0x5A,
1218
    0x6E, 0x90, 0x95, 0x6A, 0xF1, 0x18, 0xAC, 0xDE, 0x99, 0x5A, 0xEE, 0xC0,
1219
    0x6E, 0x90, 0x95, 0x6A, 0xF1, 0x18, 0xAC, 0xDE, 0x99, 0x5A, 0xEE, 0xC0,
1219
    0x9B, 0x3F, 0x10, 0x1D, 0xDB, 0x49, 0x3E, 0x83, 0x37, 0x77, 0xF0, 0xC5,
1220
    0x9B, 0x3F, 0x10, 0x1D, 0xDB, 0x49, 0x3E, 0x83, 0x37, 0x77, 0xF0, 0xC5,
1220
    0xCD, 0x6B, 0x86, 0x10, 0x05, 0xC0, 0x3F, 0xFF, 0x05, 0x6D, 0x80, 0x60,
1221
    0xCD, 0x6B, 0x86, 0x10, 0x05, 0xC0, 0x3F, 0xFF, 0x05, 0x6D, 0x80, 0x60,
1221
    0x8A, 0x5F, 0xA6, 0xA3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4E,
1222
    0x8A, 0x5F, 0xA6, 0xA3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4E,
1222
    0x44, 0xAE, 0x42, 0x60, 0x82,
1223
    0x44, 0xAE, 0x42, 0x60, 0x82,
1223
};
1224
};
1224
 
1225
 
1225
const size_t Console::g_png_size = 5849;
1226
const size_t Console::g_png_size = 5849;
1226
 
1227