From df83dd37303ef3d758b6598d8b88cca36786ca03 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Tue, 29 Dec 2020 18:27:37 -0500 Subject: [PATCH 001/228] Draft SMFL-based native canvas implementation --- doc/LICENSE.md | 25 ++ include/emp/web/Canvas.hpp | 333 +------------------------ include/emp/web/Color.hpp | 334 +++++++++++++++++++++++++ include/emp/web/_EmscriptenCanvas.hpp | 342 ++++++++++++++++++++++++++ include/emp/web/_LineShape.hpp | 80 ++++++ include/emp/web/_NativeCanvas.hpp | 238 ++++++++++++++++++ 6 files changed, 1027 insertions(+), 325 deletions(-) create mode 100644 include/emp/web/Color.hpp create mode 100644 include/emp/web/_EmscriptenCanvas.hpp create mode 100644 include/emp/web/_LineShape.hpp create mode 100644 include/emp/web/_NativeCanvas.hpp diff --git a/doc/LICENSE.md b/doc/LICENSE.md index 566ace5788..355215f994 100644 --- a/doc/LICENSE.md +++ b/doc/LICENSE.md @@ -113,3 +113,28 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. This repository contains source code adapted from the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. See https://llvm.org/LICENSE.txt for license information. SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception. + +=============================================================================== + +This repository contains source code for css-color-parser-cpp. + +(c) Dean McNamee , 2012. +(c) Konstantin Käfer , 2014. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to +deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +IN THE SOFTWARE. diff --git a/include/emp/web/Canvas.hpp b/include/emp/web/Canvas.hpp index e9ccb29318..4e5902fab4 100644 --- a/include/emp/web/Canvas.hpp +++ b/include/emp/web/Canvas.hpp @@ -9,334 +9,17 @@ */ -#ifndef EMP_WEB_CANVAS_H -#define EMP_WEB_CANVAS_H +#ifndef EMP_WEB_CANVAS_HPP +#define EMP_WEB_CANVAS_HPP -#include +#ifdef __EMSCRIPTEN__ -#include "../base/vector.hpp" -#include "../geometry/Circle2D.hpp" -#include "../tools/string_utils.hpp" +#include "_EmscriptenCanvas.hpp" -#include "CanvasAction.hpp" -#include "CanvasShape.hpp" +#else // #ifdef __EMSCRIPTEN__ -namespace emp { -namespace web { +#include "_NativeCanvas.hpp" - /// Manage an HTML Canvas object. - class Canvas : public internal::WidgetFacet { - friend class CanvasInfo; - protected: +#endif // #ifdef __EMSCRIPTEN__ - class CanvasInfo : public internal::WidgetInfo { - friend Canvas; - - protected: - double width; ///< pixel width of the canvas. - double height; ///< pixel height of the canvas. - - emp::vector actions; - - CanvasInfo(const std::string & in_id="") : internal::WidgetInfo(in_id) { ; } - CanvasInfo(const CanvasInfo &) = delete; // No copies of INFO allowed - CanvasInfo & operator=(const CanvasInfo &) = delete; // No copies of INFO allowed - virtual ~CanvasInfo() { ClearActions(); } - - std::string GetTypeName() const override { return "CanvasInfo"; } - - virtual void GetHTML(std::stringstream & HTML) override { - HTML.str(""); // Clear the current text. - HTML << ""; - // @CAO We can include fallback content here for browsers that don't support canvas. - HTML << ""; - - // create an offscreen canvas - #ifdef __EMSCRIPTEN_PTHREADS__ - EM_ASM({ - var cname = UTF8ToString($0); - emp_i.offscreen_canvases[ cname ] = new OffscreenCanvas($1, $2); - }, id.c_str(), width, height); - #endif // __EMSCRIPTEN_PTHREADS__ - } - - // Setup a canvas to be drawn on. - void TargetCanvas() { - #ifdef __EMSCRIPTEN_PTHREADS__ - EM_ASM({ - var cname = UTF8ToString($0); - var canvas = emp_i.offscreen_canvases[ cname ]; - emp_i.pending_offscreen_canvas_ids.add( cname ); - emp_i.ctx = canvas.getContext('2d'); - }, id.c_str()); - #else - EM_ASM({ - var cname = UTF8ToString($0); - var canvas = document.getElementById(cname); - }, id.c_str()); - #endif - } - - // Trigger any JS code needed on re-draw. - void TriggerJS() override { - if (state == Widget::ACTIVE) { // Only draw on active canvases - TargetCanvas(); // Prepare the canvas for drawing - for (auto & a : actions) a->Apply(); // Run all of the actions - } - } - - void AddAction(CanvasAction * new_action) { - if (state == Widget::ACTIVE) { // Only draw on active canvases - TargetCanvas(); // Prepare the canvas for drawing - new_action->Apply(); // Draw the current action - } - actions.push_back(new_action); // Store the current action. - } - - void ClearActions() { - for (auto * a : actions) delete a; - actions.resize(0); - } - - - public: - virtual std::string GetType() override { return "web::CanvasInfo"; } - - }; // End of ButtonInfo definition. - - - // Get a properly cast version of indo. - CanvasInfo * Info() { return (CanvasInfo *) info; } - const CanvasInfo * Info() const { return (CanvasInfo *) info; } - - Canvas(CanvasInfo * in_info) : WidgetFacet(in_info) { ; } - - public: - /// Create a new canvas with the specified size and optional HTML identifier. - Canvas(double w, double h, const std::string & in_id="") - : WidgetFacet(in_id) - { - info = new CanvasInfo(in_id); - Info()->width = w; - Info()->height = h; - } - - /// Link to an existing canvas. - Canvas(const Canvas & in) : WidgetFacet(in) { ; } - Canvas(const Widget & in) : WidgetFacet(in) { emp_assert(in.IsCanvas()); } - Canvas() { ; } - virtual ~Canvas() { ; } - - using INFO_TYPE = CanvasInfo; - - double GetWidth() const { return Info()->width; } ///< Get the pixel width of this Canvas. - double GetHeight() const { return Info()->height; } ///< Get the pixel height of this Canvas. - - void SetWidth(double w) { Info()->width=w; } ///< Set a new width for this Canvas. - void SetHeight(double h) { Info()->height=h; } ///< Set a new height for this Canvas. - - /// Set Canvas size. - void SetSize(double w, double h) { Info()->width=w; Info()->height=h; } - - /// Add a Circle to this canvas; provide constructor for the CanvasCircle with a position and radius - /// as well as optional face color, line color, and line width. - template - Canvas & Circle(Point center, double _r, Ts &&... vals) { - Info()->AddAction( new CanvasCircle(emp::Circle(center, _r), std::forward(vals)...) ); - return *this; - } - - template - Canvas & Circle(double _x, double _y, double _r, Ts &&... vals) { - Info()->AddAction( new CanvasCircle(emp::Circle(_x, _y, _r), std::forward(vals)...) ); - return *this; - } - - /// Add a Rectangle to this canvas at x,y with width w and heigh h. Optional face color and - /// line color. - template - Canvas & Rect(Point corner, double w, double h, Ts &&... vals) { - Info()->AddAction( new CanvasRect(corner, w, h, std::forward(vals)...) ); - return *this; - } - - template - Canvas & Rect(double x, double y, double w, double h, Ts &&... vals) { - Info()->AddAction( new CanvasRect(x, y, w, h, std::forward(vals)...) ); - return *this; - } - - /// Add an Image to this canvas at x,y with width w and heigh h. - template - Canvas & Image(const emp::RawImage & image, Point corner, Ts &&... vals) { - Info()->AddAction( new CanvasImage(image, corner, std::forward(vals)...) ); - return *this; - } - - template - Canvas & Image(const emp::RawImage & image, double x, double y, Ts &&... vals) { - Info()->AddAction( new CanvasImage(image, x, y, std::forward(vals)...) ); - return *this; - } - - - /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. - template - Canvas & Line(double x1, double y1, double x2, double y2, Ts &&... vals) { - Info()->AddAction( new CanvasLine(x1, y1, x2, y2, std::forward(vals)...) ); - return *this; - } - - template - Canvas & Line(emp::Point p1, emp::Point p2, Ts &&... vals) { - Info()->AddAction( new CanvasLine(p1, p2, std::forward(vals)...) ); - return *this; - } - - /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. - template - Canvas & MultiLine(emp::Point p1, const emp::vector & points, Ts &&... vals) { - Info()->AddAction( new CanvasMultiLine(p1, points, std::forward(vals)...) ); - return *this; - } - - /// Add a string to this canvas at x,y with specified text. Optional face color and - /// line color. - template - Canvas & Text(emp::Point p, Ts &&... vals) { - Info()->AddAction( new CanvasText(p, std::forward(vals)...) ); - return *this; - } - - template - Canvas & Text(double x, double y, Ts &&... vals) { - Info()->AddAction( new CanvasText(x, y, std::forward(vals)...) ); - return *this; - } - - /// Add a string to this canvas centered at x,y with specified text. Optional face color and - /// line color. - template - Canvas & CenterText(emp::Point p, Ts &&... vals) { - auto * ctext = new CanvasText(p, std::forward(vals)...); - ctext->Center(); - Info()->AddAction( ctext ); - return *this; - } - - template - Canvas & CenterText(double x, double y, Ts &&... vals) { - auto * ctext = new CanvasText({x, y}, std::forward(vals)...); - ctext->Center(); - Info()->AddAction( ctext ); - return *this; - } - - /// Update the default font for text. - Canvas & Font(const std::string font) { - Info()->AddAction( new CanvasFont(font) ); - return *this; - } - - /// Draw a circle onto this canvas. - Canvas & Draw(const emp::Circle & circle, - const std::string & fc="", const std::string & lc="") { - Info()->AddAction( new CanvasCircle(circle, fc, lc) ); - return *this; - } - - /// Draw an arbitrary shape onto this canvas. - Canvas & Draw(const CanvasShape & shape) { - Info()->AddAction( shape.Clone() ); - return *this; - } - - /// Change the default stroke color. - Canvas & StrokeColor(std::string c) { - Info()->AddAction( new CanvasStrokeColor(c) ); - return *this; - } - - /// Rotate the entire canvas. - Canvas & Rotate(double angle) { - Info()->AddAction( new CanvasRotate(angle) ); - return *this; - } - - /// Clear everything off of this canvas. - Canvas & Clear() { - Info()->ClearActions(); - Info()->AddAction( new CanvasClearRect({0,0}, GetWidth(), GetHeight()) ); - return *this; - } - - /// Clear to a specific background color. - Canvas & Clear(const std::string & bg_color) { - Info()->ClearActions(); - Info()->AddAction( new CanvasClearRect({0,0}, GetWidth(), GetHeight()) ); - Info()->AddAction( new CanvasRect({0,0}, GetWidth(), GetHeight(), bg_color, "") ); - return *this; - } - - /// Download a PNG image of a canvas. - void DownloadPNG() const { DownloadPNG(Info()->id + ".png"); } - - /// Download a PNG image of a canvas. - void DownloadPNG(const std::string & fname) const { - - const std::string ext = ".png"; - emscripten_run_script( - ( - std::string() - + "emp.download(document.getElementById('" - + Info()->id - + "').toDataURL('img/png'), '" - + fname - + (fname.rfind(ext, fname.length()) == std::string::npos ? ext : "") - + "', 'img/png');" - ).c_str() - ); - - } - - /// Save a PNG image of a canvas with node.js. - void SavePNG(const std::string& fname) const { - - // adapted from https://stackoverflow.com/a/11335500 - const std::string command_template = R"( - setTimeout(function(){ - - fs = require('fs'); - - canvas = document.getElementById('%s'); - - var url = canvas.toDataURL('image/png'); - var regex = `^data:.+\/(.+);base64,(.*)$`; - - var matches = url.match(regex); - var data = matches[2]; - var buffer = Buffer.from(data, 'base64'); - - fs.writeFileSync('%s' , buffer); - - }, 10); - )"; - - - const std::string id{ Info()->id }; - const std::string command{ - emp::format_string( command_template, id.c_str(), fname.c_str() ) - }; - - emscripten_run_script( command.c_str() ); - - } - - }; - -} -} - -#endif +#endif // #ifndef EMP_WEB_CANVAS_HPP diff --git a/include/emp/web/Color.hpp b/include/emp/web/Color.hpp new file mode 100644 index 0000000000..c62003c1b6 --- /dev/null +++ b/include/emp/web/Color.hpp @@ -0,0 +1,334 @@ +/** + * @note This file is part of Empirical, https://github.com/devosoft/Empirical + * @copyright Copyright (C) Michigan State University, MIT Software license; see doc/LICENSE.md + * @date 2020 + * + * @file Color.hpp + * @brief Represent RGBA color, parseable from CSS strings. + * + * Adapted largely from https://github.com/mapbox/css-color-parser-cpp/. + */ + + +#ifndef EMP_WEB_COLOR_HPP +#define EMP_WEB_COLOR_HPP + +#include +#include +#include +#include + +#if __has_include() +#include +#endif + +#include "../base/vector.hpp" +#include "../geometry/Circle2D.hpp" + +namespace emp { +namespace web { + + /// Represents RGBA color. + struct Color { + + unsigned char r{}, g{}, b{}; + float a{ 1.0f }; + + Color() = default; + + Color(unsigned char r_, unsigned char g_, unsigned char b_, float a_) + : r(r_), g(g_), b(b_), a(a_ > 1 ? 1 : a_ < 0 ? 0 : a_) + { } + + // defined out of body + Color( const std::string& css_str ); + + bool operator==( const Color& rhs ) const { + return std::tuple{ + r, g, b, a + } == std::tuple{ + rhs.r, rhs.g, rhs.b, rhs.a + }; + } + + bool operator!=( const Color& rhs ) const { return !operator==( rhs ); } + + #if __has_include() + operator sf::Color() const { return sf::Color( r, g, b, a * 255 ); } + #endif + + }; + + namespace color_impl { + + struct NamedColor { const char *const name; const Color color; }; + const NamedColor namedColors[] = { + { "transparent", { 0, 0, 0, 0 } }, { "aliceblue", { 240, 248, 255, 1 } }, + { "antiquewhite", { 250, 235, 215, 1 } }, { "aqua", { 0, 255, 255, 1 } }, + { "aquamarine", { 127, 255, 212, 1 } }, { "azure", { 240, 255, 255, 1 } }, + { "beige", { 245, 245, 220, 1 } }, { "bisque", { 255, 228, 196, 1 } }, + { "black", { 0, 0, 0, 1 } }, { "blanchedalmond", { 255, 235, 205, 1 } }, + { "blue", { 0, 0, 255, 1 } }, { "blueviolet", { 138, 43, 226, 1 } }, + { "brown", { 165, 42, 42, 1 } }, { "burlywood", { 222, 184, 135, 1 } }, + { "cadetblue", { 95, 158, 160, 1 } }, { "chartreuse", { 127, 255, 0, 1 } }, + { "chocolate", { 210, 105, 30, 1 } }, { "coral", { 255, 127, 80, 1 } }, + { "cornflowerblue", { 100, 149, 237, 1 } }, { "cornsilk", { 255, 248, 220, 1 } }, + { "crimson", { 220, 20, 60, 1 } }, { "cyan", { 0, 255, 255, 1 } }, + { "darkblue", { 0, 0, 139, 1 } }, { "darkcyan", { 0, 139, 139, 1 } }, + { "darkgoldenrod", { 184, 134, 11, 1 } }, { "darkgray", { 169, 169, 169, 1 } }, + { "darkgreen", { 0, 100, 0, 1 } }, { "darkgrey", { 169, 169, 169, 1 } }, + { "darkkhaki", { 189, 183, 107, 1 } }, { "darkmagenta", { 139, 0, 139, 1 } }, + { "darkolivegreen", { 85, 107, 47, 1 } }, { "darkorange", { 255, 140, 0, 1 } }, + { "darkorchid", { 153, 50, 204, 1 } }, { "darkred", { 139, 0, 0, 1 } }, + { "darksalmon", { 233, 150, 122, 1 } }, { "darkseagreen", { 143, 188, 143, 1 } }, + { "darkslateblue", { 72, 61, 139, 1 } }, { "darkslategray", { 47, 79, 79, 1 } }, + { "darkslategrey", { 47, 79, 79, 1 } }, { "darkturquoise", { 0, 206, 209, 1 } }, + { "darkviolet", { 148, 0, 211, 1 } }, { "deeppink", { 255, 20, 147, 1 } }, + { "deepskyblue", { 0, 191, 255, 1 } }, { "dimgray", { 105, 105, 105, 1 } }, + { "dimgrey", { 105, 105, 105, 1 } }, { "dodgerblue", { 30, 144, 255, 1 } }, + { "firebrick", { 178, 34, 34, 1 } }, { "floralwhite", { 255, 250, 240, 1 } }, + { "forestgreen", { 34, 139, 34, 1 } }, { "fuchsia", { 255, 0, 255, 1 } }, + { "gainsboro", { 220, 220, 220, 1 } }, { "ghostwhite", { 248, 248, 255, 1 } }, + { "gold", { 255, 215, 0, 1 } }, { "goldenrod", { 218, 165, 32, 1 } }, + { "gray", { 128, 128, 128, 1 } }, { "green", { 0, 128, 0, 1 } }, + { "greenyellow", { 173, 255, 47, 1 } }, { "grey", { 128, 128, 128, 1 } }, + { "honeydew", { 240, 255, 240, 1 } }, { "hotpink", { 255, 105, 180, 1 } }, + { "indianred", { 205, 92, 92, 1 } }, { "indigo", { 75, 0, 130, 1 } }, + { "ivory", { 255, 255, 240, 1 } }, { "khaki", { 240, 230, 140, 1 } }, + { "lavender", { 230, 230, 250, 1 } }, { "lavenderblush", { 255, 240, 245, 1 } }, + { "lawngreen", { 124, 252, 0, 1 } }, { "lemonchiffon", { 255, 250, 205, 1 } }, + { "lightblue", { 173, 216, 230, 1 } }, { "lightcoral", { 240, 128, 128, 1 } }, + { "lightcyan", { 224, 255, 255, 1 } }, { "lightgoldenrodyellow", { 250, 250, 210, 1 } }, + { "lightgray", { 211, 211, 211, 1 } }, { "lightgreen", { 144, 238, 144, 1 } }, + { "lightgrey", { 211, 211, 211, 1 } }, { "lightpink", { 255, 182, 193, 1 } }, + { "lightsalmon", { 255, 160, 122, 1 } }, { "lightseagreen", { 32, 178, 170, 1 } }, + { "lightskyblue", { 135, 206, 250, 1 } }, { "lightslategray", { 119, 136, 153, 1 } }, + { "lightslategrey", { 119, 136, 153, 1 } }, { "lightsteelblue", { 176, 196, 222, 1 } }, + { "lightyellow", { 255, 255, 224, 1 } }, { "lime", { 0, 255, 0, 1 } }, + { "limegreen", { 50, 205, 50, 1 } }, { "linen", { 250, 240, 230, 1 } }, + { "magenta", { 255, 0, 255, 1 } }, { "maroon", { 128, 0, 0, 1 } }, + { "mediumaquamarine", { 102, 205, 170, 1 } }, { "mediumblue", { 0, 0, 205, 1 } }, + { "mediumorchid", { 186, 85, 211, 1 } }, { "mediumpurple", { 147, 112, 219, 1 } }, + { "mediumseagreen", { 60, 179, 113, 1 } }, { "mediumslateblue", { 123, 104, 238, 1 } }, + { "mediumspringgreen", { 0, 250, 154, 1 } }, { "mediumturquoise", { 72, 209, 204, 1 } }, + { "mediumvioletred", { 199, 21, 133, 1 } }, { "midnightblue", { 25, 25, 112, 1 } }, + { "mintcream", { 245, 255, 250, 1 } }, { "mistyrose", { 255, 228, 225, 1 } }, + { "moccasin", { 255, 228, 181, 1 } }, { "navajowhite", { 255, 222, 173, 1 } }, + { "navy", { 0, 0, 128, 1 } }, { "oldlace", { 253, 245, 230, 1 } }, + { "olive", { 128, 128, 0, 1 } }, { "olivedrab", { 107, 142, 35, 1 } }, + { "orange", { 255, 165, 0, 1 } }, { "orangered", { 255, 69, 0, 1 } }, + { "orchid", { 218, 112, 214, 1 } }, { "palegoldenrod", { 238, 232, 170, 1 } }, + { "palegreen", { 152, 251, 152, 1 } }, { "paleturquoise", { 175, 238, 238, 1 } }, + { "palevioletred", { 219, 112, 147, 1 } }, { "papayawhip", { 255, 239, 213, 1 } }, + { "peachpuff", { 255, 218, 185, 1 } }, { "peru", { 205, 133, 63, 1 } }, + { "pink", { 255, 192, 203, 1 } }, { "plum", { 221, 160, 221, 1 } }, + { "powderblue", { 176, 224, 230, 1 } }, { "purple", { 128, 0, 128, 1 } }, + { "red", { 255, 0, 0, 1 } }, { "rosybrown", { 188, 143, 143, 1 } }, + { "royalblue", { 65, 105, 225, 1 } }, { "saddlebrown", { 139, 69, 19, 1 } }, + { "salmon", { 250, 128, 114, 1 } }, { "sandybrown", { 244, 164, 96, 1 } }, + { "seagreen", { 46, 139, 87, 1 } }, { "seashell", { 255, 245, 238, 1 } }, + { "sienna", { 160, 82, 45, 1 } }, { "silver", { 192, 192, 192, 1 } }, + { "skyblue", { 135, 206, 235, 1 } }, { "slateblue", { 106, 90, 205, 1 } }, + { "slategray", { 112, 128, 144, 1 } }, { "slategrey", { 112, 128, 144, 1 } }, + { "snow", { 255, 250, 250, 1 } }, { "springgreen", { 0, 255, 127, 1 } }, + { "steelblue", { 70, 130, 180, 1 } }, { "tan", { 210, 180, 140, 1 } }, + { "teal", { 0, 128, 128, 1 } }, { "thistle", { 216, 191, 216, 1 } }, + { "tomato", { 255, 99, 71, 1 } }, { "turquoise", { 64, 224, 208, 1 } }, + { "violet", { 238, 130, 238, 1 } }, { "wheat", { 245, 222, 179, 1 } }, + { "white", { 255, 255, 255, 1 } }, { "whitesmoke", { 245, 245, 245, 1 } }, + { "yellow", { 255, 255, 0, 1 } }, { "yellowgreen", { 154, 205, 50, 1 } } + }; + + template + uint8_t clamp_css_byte(T i) { // Clamp to integer 0 .. 255. + i = ::round(i); // Seems to be what Chrome does (vs truncation). + return i < 0 ? 0 : i > 255 ? 255 : uint8_t(i); + } + + template + float clamp_css_float(T f) { // Clamp to float 0.0 .. 1.0. + return f < 0 ? 0 : f > 1 ? 1 : float(f); + } + + float parseFloat(const std::string& str) { + return strtof(str.c_str(), nullptr); + } + + int64_t parseInt(const std::string& str, uint8_t base = 10) { + return strtoll(str.c_str(), nullptr, base); + } + + uint8_t parse_css_int(const std::string& str) { // int or percentage. + if (str.length() && str.back() == '%') { + return clamp_css_byte(parseFloat(str) / 100.0f * 255.0f); + } else { + return clamp_css_byte(parseInt(str)); + } + } + + float parse_css_float(const std::string& str) { // float or percentage. + if (str.length() && str.back() == '%') { + return clamp_css_float(parseFloat(str) / 100.0f); + } else { + return clamp_css_float(parseFloat(str)); + } + } + + float css_hue_to_rgb(float m1, float m2, float h) { + if (h < 0.0f) { + h += 1.0f; + } else if (h > 1.0f) { + h -= 1.0f; + } + + if (h * 6.0f < 1.0f) { + return m1 + (m2 - m1) * h * 6.0f; + } + if (h * 2.0f < 1.0f) { + return m2; + } + if (h * 3.0f < 2.0f) { + return m1 + (m2 - m1) * (2.0f / 3.0f - h) * 6.0f; + } + return m1; + } + + emp::vector split(const std::string& s, char delim) { + emp::vector elems; + std::stringstream ss(s); + std::string item; + while (std::getline(ss, item, delim)) { + elems.push_back(item); + } + return elems; + } + + } + + Color::Color( const std::string& css_str ) { + std::string str = css_str; + + // Remove all whitespace, not compliant, but should just be more accepting. + str.erase(std::remove(str.begin(), str.end(), ' '), str.end()); + + // Convert to lowercase. + std::transform(str.begin(), str.end(), str.begin(), ::tolower); + + for (const auto& namedColor : color_impl::namedColors) { + if (str == namedColor.name) { + *this = namedColor.color; + return; + } + } + + // #abc and #abc123 syntax. + if (str.length() && str.front() == '#') { + if (str.length() == 4) { + int64_t iv = color_impl::parseInt(str.substr(1), 16); // TODO(deanm): Stricter parsing. + if (!(iv >= 0 && iv <= 0xfff)) { + emp_assert( false, css_str ); + return; + } else { + *this = { + static_cast(((iv & 0xf00) >> 4) | ((iv & 0xf00) >> 8)), + static_cast((iv & 0xf0) | ((iv & 0xf0) >> 4)), + static_cast((iv & 0xf) | ((iv & 0xf) << 4)), + 1 + }; + return; + } + } else if (str.length() == 7) { + int64_t iv = color_impl::parseInt(str.substr(1), 16); // TODO(deanm): Stricter parsing. + if (!(iv >= 0 && iv <= 0xffffff)) { + emp_assert( false, css_str ); + return; // Covers NaN. + } else { + *this = { + static_cast((iv & 0xff0000) >> 16), + static_cast((iv & 0xff00) >> 8), + static_cast(iv & 0xff), + 1 + }; + return; + } + } + + emp_assert( false, css_str ); + return; + } + + size_t op = str.find_first_of('('), ep = str.find_first_of(')'); + if (op != std::string::npos && ep + 1 == str.length()) { + const std::string fname = str.substr(0, op); + const std::vector params = color_impl::split(str.substr(op + 1, ep - (op + 1)), ','); + + float alpha = 1.0f; + + if (fname == "rgba" || fname == "rgb") { + if (fname == "rgba") { + if (params.size() != 4) { + emp_assert( false, css_str ); + return; + } + alpha = color_impl::parse_css_float(params.back()); + } else { + if (params.size() != 3) { + emp_assert( false, css_str ); + return; + } + } + + *this = { + color_impl::parse_css_int(params[0]), + color_impl::parse_css_int(params[1]), + color_impl::parse_css_int(params[2]), + alpha + }; + return; + + } else if (fname == "hsla" || fname == "hsl") { + if (fname == "hsla") { + if (params.size() != 4) { + emp_assert( false, css_str ); + return; + } + alpha = color_impl::parse_css_float(params.back()); + } else { + if (params.size() != 3) { + emp_assert( false, css_str ); + return; + } + } + + float h = color_impl::parseFloat(params[0]) / 360.0f; + float i; + // Normalize the hue to [0..1] + h = std::modf(h, &i); + + // NOTE(deanm): According to the CSS spec s/l should only be + // percentages, but we don't bother and let float or percentage. + float s = color_impl::parse_css_float(params[1]); + float l = color_impl::parse_css_float(params[2]); + + float m2 = l <= 0.5f ? l * (s + 1.0f) : l + s - l * s; + float m1 = l * 2.0f - m2; + + *this = { + color_impl::clamp_css_byte(color_impl::css_hue_to_rgb(m1, m2, h + 1.0f / 3.0f) * 255.0f), + color_impl::clamp_css_byte(color_impl::css_hue_to_rgb(m1, m2, h) * 255.0f), + color_impl::clamp_css_byte(color_impl::css_hue_to_rgb(m1, m2, h - 1.0f / 3.0f) * 255.0f), + alpha + }; + return; + } + } + + emp_assert( false, css_str ); + return; + + } + +} +} + +#endif diff --git a/include/emp/web/_EmscriptenCanvas.hpp b/include/emp/web/_EmscriptenCanvas.hpp new file mode 100644 index 0000000000..5f3b883e33 --- /dev/null +++ b/include/emp/web/_EmscriptenCanvas.hpp @@ -0,0 +1,342 @@ +/** + * @note This file is part of Empirical, https://github.com/devosoft/Empirical + * @copyright Copyright (C) Michigan State University, MIT Software license; see doc/LICENSE.md + * @date 2015-2018 + * + * @file Canvas.hpp + * @brief Manage an HTML canvas object. + * + */ + + +#ifndef EMP_WEB_EMSCRIPTENCANVAS_H +#define EMP_WEB_EMSCRIPTENCANVAS_H + +#include + +#include "../base/vector.hpp" +#include "../geometry/Circle2D.hpp" +#include "../tools/string_utils.hpp" + +#include "CanvasAction.hpp" +#include "CanvasShape.hpp" + +namespace emp { +namespace web { + + /// Manage an HTML Canvas object. + class Canvas : public internal::WidgetFacet { + friend class CanvasInfo; + protected: + + class CanvasInfo : public internal::WidgetInfo { + friend Canvas; + + protected: + double width; ///< pixel width of the canvas. + double height; ///< pixel height of the canvas. + + emp::vector actions; + + CanvasInfo(const std::string & in_id="") : internal::WidgetInfo(in_id) { ; } + CanvasInfo(const CanvasInfo &) = delete; // No copies of INFO allowed + CanvasInfo & operator=(const CanvasInfo &) = delete; // No copies of INFO allowed + virtual ~CanvasInfo() { ClearActions(); } + + std::string GetTypeName() const override { return "CanvasInfo"; } + + virtual void GetHTML(std::stringstream & HTML) override { + HTML.str(""); // Clear the current text. + HTML << ""; + // @CAO We can include fallback content here for browsers that don't support canvas. + HTML << ""; + + // create an offscreen canvas + #ifdef __EMSCRIPTEN_PTHREADS__ + EM_ASM({ + var cname = UTF8ToString($0); + emp_i.offscreen_canvases[ cname ] = new OffscreenCanvas($1, $2); + }, id.c_str(), width, height); + #endif // __EMSCRIPTEN_PTHREADS__ + } + + // Setup a canvas to be drawn on. + void TargetCanvas() { + #ifdef __EMSCRIPTEN_PTHREADS__ + EM_ASM({ + var cname = UTF8ToString($0); + var canvas = emp_i.offscreen_canvases[ cname ]; + emp_i.pending_offscreen_canvas_ids.add( cname ); + emp_i.ctx = canvas.getContext('2d'); + }, id.c_str()); + #else + EM_ASM({ + var cname = UTF8ToString($0); + var canvas = document.getElementById(cname); + }, id.c_str()); + #endif + } + + // Trigger any JS code needed on re-draw. + void TriggerJS() override { + if (state == Widget::ACTIVE) { // Only draw on active canvases + TargetCanvas(); // Prepare the canvas for drawing + for (auto & a : actions) a->Apply(); // Run all of the actions + } + } + + void AddAction(CanvasAction * new_action) { + if (state == Widget::ACTIVE) { // Only draw on active canvases + TargetCanvas(); // Prepare the canvas for drawing + new_action->Apply(); // Draw the current action + } + actions.push_back(new_action); // Store the current action. + } + + void ClearActions() { + for (auto * a : actions) delete a; + actions.resize(0); + } + + + public: + virtual std::string GetType() override { return "web::CanvasInfo"; } + + }; // End of ButtonInfo definition. + + + // Get a properly cast version of indo. + CanvasInfo * Info() { return (CanvasInfo *) info; } + const CanvasInfo * Info() const { return (CanvasInfo *) info; } + + Canvas(CanvasInfo * in_info) : WidgetFacet(in_info) { ; } + + public: + /// Create a new canvas with the specified size and optional HTML identifier. + Canvas(double w, double h, const std::string & in_id="") + : WidgetFacet(in_id) + { + info = new CanvasInfo(in_id); + Info()->width = w; + Info()->height = h; + } + + /// Link to an existing canvas. + Canvas(const Canvas & in) : WidgetFacet(in) { ; } + Canvas(const Widget & in) : WidgetFacet(in) { emp_assert(in.IsCanvas()); } + Canvas() { ; } + virtual ~Canvas() { ; } + + using INFO_TYPE = CanvasInfo; + + double GetWidth() const { return Info()->width; } ///< Get the pixel width of this Canvas. + double GetHeight() const { return Info()->height; } ///< Get the pixel height of this Canvas. + + void SetWidth(double w) { Info()->width=w; } ///< Set a new width for this Canvas. + void SetHeight(double h) { Info()->height=h; } ///< Set a new height for this Canvas. + + /// Set Canvas size. + void SetSize(double w, double h) { Info()->width=w; Info()->height=h; } + + /// Add a Circle to this canvas; provide constructor for the CanvasCircle with a position and radius + /// as well as optional face color, line color, and line width. + template + Canvas & Circle(Point center, double _r, Ts &&... vals) { + Info()->AddAction( new CanvasCircle(emp::Circle(center, _r), std::forward(vals)...) ); + return *this; + } + + template + Canvas & Circle(double _x, double _y, double _r, Ts &&... vals) { + Info()->AddAction( new CanvasCircle(emp::Circle(_x, _y, _r), std::forward(vals)...) ); + return *this; + } + + /// Add a Rectangle to this canvas at x,y with width w and heigh h. Optional face color and + /// line color. + template + Canvas & Rect(Point corner, double w, double h, Ts &&... vals) { + Info()->AddAction( new CanvasRect(corner, w, h, std::forward(vals)...) ); + return *this; + } + + template + Canvas & Rect(double x, double y, double w, double h, Ts &&... vals) { + Info()->AddAction( new CanvasRect(x, y, w, h, std::forward(vals)...) ); + return *this; + } + + /// Add an Image to this canvas at x,y with width w and heigh h. + template + Canvas & Image(const emp::RawImage & image, Point corner, Ts &&... vals) { + Info()->AddAction( new CanvasImage(image, corner, std::forward(vals)...) ); + return *this; + } + + template + Canvas & Image(const emp::RawImage & image, double x, double y, Ts &&... vals) { + Info()->AddAction( new CanvasImage(image, x, y, std::forward(vals)...) ); + return *this; + } + + + /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. + template + Canvas & Line(double x1, double y1, double x2, double y2, Ts &&... vals) { + Info()->AddAction( new CanvasLine(x1, y1, x2, y2, std::forward(vals)...) ); + return *this; + } + + template + Canvas & Line(emp::Point p1, emp::Point p2, Ts &&... vals) { + Info()->AddAction( new CanvasLine(p1, p2, std::forward(vals)...) ); + return *this; + } + + /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. + template + Canvas & MultiLine(emp::Point p1, const emp::vector & points, Ts &&... vals) { + Info()->AddAction( new CanvasMultiLine(p1, points, std::forward(vals)...) ); + return *this; + } + + /// Add a string to this canvas at x,y with specified text. Optional face color and + /// line color. + template + Canvas & Text(emp::Point p, Ts &&... vals) { + Info()->AddAction( new CanvasText(p, std::forward(vals)...) ); + return *this; + } + + template + Canvas & Text(double x, double y, Ts &&... vals) { + Info()->AddAction( new CanvasText(x, y, std::forward(vals)...) ); + return *this; + } + + /// Add a string to this canvas centered at x,y with specified text. Optional face color and + /// line color. + template + Canvas & CenterText(emp::Point p, Ts &&... vals) { + auto * ctext = new CanvasText(p, std::forward(vals)...); + ctext->Center(); + Info()->AddAction( ctext ); + return *this; + } + + template + Canvas & CenterText(double x, double y, Ts &&... vals) { + auto * ctext = new CanvasText({x, y}, std::forward(vals)...); + ctext->Center(); + Info()->AddAction( ctext ); + return *this; + } + + /// Update the default font for text. + Canvas & Font(const std::string font) { + Info()->AddAction( new CanvasFont(font) ); + return *this; + } + + /// Draw a circle onto this canvas. + Canvas & Draw(const emp::Circle & circle, + const std::string & fc="", const std::string & lc="") { + Info()->AddAction( new CanvasCircle(circle, fc, lc) ); + return *this; + } + + /// Draw an arbitrary shape onto this canvas. + Canvas & Draw(const CanvasShape & shape) { + Info()->AddAction( shape.Clone() ); + return *this; + } + + /// Change the default stroke color. + Canvas & StrokeColor(std::string c) { + Info()->AddAction( new CanvasStrokeColor(c) ); + return *this; + } + + /// Rotate the entire canvas. + Canvas & Rotate(double angle) { + Info()->AddAction( new CanvasRotate(angle) ); + return *this; + } + + /// Clear everything off of this canvas. + Canvas & Clear() { + Info()->ClearActions(); + Info()->AddAction( new CanvasClearRect({0,0}, GetWidth(), GetHeight()) ); + return *this; + } + + /// Clear to a specific background color. + Canvas & Clear(const std::string & bg_color) { + Info()->ClearActions(); + Info()->AddAction( new CanvasClearRect({0,0}, GetWidth(), GetHeight()) ); + Info()->AddAction( new CanvasRect({0,0}, GetWidth(), GetHeight(), bg_color, "") ); + return *this; + } + + /// Download a PNG image of a canvas. + void DownloadPNG() const { DownloadPNG(Info()->id + ".png"); } + + /// Download a PNG image of a canvas. + void DownloadPNG(const std::string & fname) const { + + const std::string ext = ".png"; + emscripten_run_script( + ( + std::string() + + "emp.download(document.getElementById('" + + Info()->id + + "').toDataURL('img/png'), '" + + fname + + (fname.rfind(ext, fname.length()) == std::string::npos ? ext : "") + + "', 'img/png');" + ).c_str() + ); + + } + + /// Save a PNG image of a canvas with node.js. + void SavePNG(const std::string& fname) const { + + // adapted from https://stackoverflow.com/a/11335500 + const std::string command_template = R"( + setTimeout(function(){ + + fs = require('fs'); + + canvas = document.getElementById('%s'); + + var url = canvas.toDataURL('image/png'); + var regex = `^data:.+\/(.+);base64,(.*)$`; + + var matches = url.match(regex); + var data = matches[2]; + var buffer = Buffer.from(data, 'base64'); + + fs.writeFileSync('%s' , buffer); + + }, 10); + )"; + + + const std::string id{ Info()->id }; + const std::string command{ + emp::format_string( command_template, id.c_str(), fname.c_str() ) + }; + + emscripten_run_script( command.c_str() ); + + } + + }; + +} +} + +#endif diff --git a/include/emp/web/_LineShape.hpp b/include/emp/web/_LineShape.hpp new file mode 100644 index 0000000000..b07d0bdbd7 --- /dev/null +++ b/include/emp/web/_LineShape.hpp @@ -0,0 +1,80 @@ +#ifndef SFML_LINESHAPE_HPP +#define SFML_LINESHAPE_HPP + +#include + +#include +#include + +// adapted from https://github.com/SFML/SFML/wiki/Source:-Line-segment-with-thickness + +namespace sf { + +class SFML_GRAPHICS_API LineShape : public Shape { + public: + + explicit LineShape(const Vector2f& point1, const Vector2f& point2); + + void setThickness(float thickness); + + float getThickness() const; + + float getLength() const; + + virtual size_t getPointCount() const; + + virtual Vector2f getPoint(size_t index) const; + + private: + + Vector2f m_direction; ///< Direction of the line + float m_thickness; ///< Thickness of the line +}; + + +LineShape::LineShape(const Vector2f& point1, const Vector2f& point2) +: m_direction(point2 - point1) { + setPosition(point1); + setThickness(2.f); +} + + +void LineShape::setThickness(const float thickness) { + m_thickness = thickness; + update(); +} + + +float LineShape::getThickness() const { + return m_thickness; +} + + +float LineShape::getLength() const { + return std::sqrt(m_direction.x*m_direction.x+m_direction.y*m_direction.y); +} + + +size_t LineShape::getPointCount() const { + return 4; +} + +Vector2f LineShape::getPoint(const size_t index) const { + Vector2f unitDirection = m_direction/getLength(); + Vector2f unitPerpendicular(-unitDirection.y,unitDirection.x); + + Vector2f offset = (m_thickness/2.f)*unitPerpendicular; + + switch (index) { + default: + case 0: return offset; + case 1: return (m_direction + offset); + case 2: return (m_direction - offset); + case 3: return (-offset); + } +} + +} // namespace sf + + +#endif // SFML_LINESHAPE_HPP diff --git a/include/emp/web/_NativeCanvas.hpp b/include/emp/web/_NativeCanvas.hpp new file mode 100644 index 0000000000..85c014e56c --- /dev/null +++ b/include/emp/web/_NativeCanvas.hpp @@ -0,0 +1,238 @@ +/** + * @note This file is part of Empirical, https://github.com/devosoft/Empirical + * @copyright Copyright (C) Michigan State University, MIT Software license; see doc/LICENSE.md + * @date 2015-2018 + * + * @file Canvas.hpp + * @brief Manage an HTML canvas object. + * + */ + + +#ifndef EMP_WEB_NATIVECANVAS_H +#define EMP_WEB_NATIVECANVAS_H + +#include + +#include + +#include "../base/vector.hpp" +#include "../geometry/Circle2D.hpp" +#include "../tools/string_utils.hpp" + +#include "_LineShape.hpp" +#include "Color.hpp" + +namespace emp { +namespace web { + + /// Manage a SFML Canvas object. + class Canvas { + + double width{}; + double height{}; + std::string id; + + sf::RenderTexture window; + // sf::RenderWindow window; + + public: + /// Create a new canvas with the specified size and optional HTML identifier. + Canvas(const double w, const double h, const std::string & in_id="") + : width( w ) + , height( h ) + , id( in_id ) { + // , window( sf::VideoMode(w, h), id ) { + window.clear(); + [[maybe_unused]] const auto res = window.create( width, height); + emp_assert( res ); + } + + Canvas() = default; + + /// Get the pixel width of this Canvas. + double GetWidth() const { return width; } + + /// Get the pixel height of this Canvas. + double GetHeight() const { return height; } + + /// Set a new width for this Canvas. + void SetWidth(const double w) { emp_assert(false, "unimplemented"); } + + /// Set a new height for this Canvas. + void SetHeight(const double h) { emp_assert(false, "unimplemented"); } + + /// Set Canvas size. + void SetSize(const double w, const double h) { + emp_assert(false, "unimplemented"); + } + + /// Add a Circle to this canvas; provide constructor for the CanvasCircle with a position and radius + /// as well as optional face color, line color, and line width. + template + Canvas & Circle(Point center, double _r, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + template + Canvas & Circle(double _x, double _y, double _r, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Add a Rectangle to this canvas at x,y with width w and heigh h. Optional face color and + /// line color. + template + Canvas & Rect(Point corner, double w, double h, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + template + Canvas & Rect( + const double x, const double y, const double w, const double h, + const std::string& fc="", const std::string& lc="", const double lw=1.0 + ) { + sf::RectangleShape shape( sf::Vector2f(w, h) ); + shape.setPosition(x, y); + shape.setFillColor( (sf::Color) emp::web::Color( fc ) ); + shape.setOutlineColor( (sf::Color) emp::web::Color( lc ) ); + shape.setOutlineThickness( lw ); + + window.draw( shape ); + return *this; + } + + /// Add an Image to this canvas at x,y with width w and heigh h. + // template + // Canvas & Image(const emp::RawImage & image, Point corner, Ts &&... vals) { + // emp_assert(false, "unimplemented"); + // return *this; + // } + + // template + // Canvas & Image(const emp::RawImage & image, double x, double y, Ts &&... vals) { + // emp_assert(false, "unimplemented"); + // return *this; + // } + + + /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. + template + Canvas & Line( + const double x1, const double y1, const double x2, const double y2, + const std::string& fc="", const std::string& lc="", const double lw=1.0 + ) { + + sf::LineShape shape( sf::Vector2f(x1, y1), sf::Vector2f(x2, y2) ); + shape.setFillColor( (sf::Color) emp::web::Color( fc ) ); + shape.setOutlineColor( (sf::Color) emp::web::Color( lc ) ); + shape.setOutlineThickness( lw ); + + return *this; + } + + template + Canvas & Line(emp::Point p1, emp::Point p2, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. + template + Canvas & MultiLine(emp::Point p1, const emp::vector & points, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Add a string to this canvas at x,y with specified text. Optional face color and + /// line color. + template + Canvas & Text(emp::Point p, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + template + Canvas & Text(double x, double y, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Add a string to this canvas centered at x,y with specified text. Optional face color and + /// line color. + template + Canvas & CenterText(emp::Point p, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + template + Canvas & CenterText(double x, double y, Ts &&... vals) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Update the default font for text. + Canvas & Font(const std::string font) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Draw a circle onto this canvas. + Canvas & Draw(const emp::Circle & circle, + const std::string & fc="", const std::string & lc="") { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Draw an arbitrary shape onto this canvas. + // Canvas & Draw(const CanvasShape & shape) { + // emp_assert(false, "unimplemented"); + // return *this; + // } + + /// Change the default stroke color. + Canvas & StrokeColor(std::string c) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Rotate the entire canvas. + Canvas & Rotate(double angle) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Clear everything off of this canvas. + Canvas & Clear() { + window.clear(); + return *this; + } + + /// Clear to a specific background color. + Canvas & Clear(const std::string & bg_color) { + emp_assert(false, "unimplemented"); + return *this; + } + + /// Download a PNG image of a canvas. + void DownloadPNG() { DownloadPNG(id + ".png"); } + + /// Download a PNG image of a canvas. + void DownloadPNG(const std::string & fname) { SavePNG( fname ); } + + /// Save a PNG image of a canvas. + void SavePNG(const std::string& fname) { + window.display(); + window.getTexture().copyToImage().saveToFile( fname ); + // window.capture().saveToFile( fname ); + } + + }; + +} // namespace web +} // namespace emp + +#endif From b04416a64bfb045cae4ede1b09224d719ff1893d Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Tue, 29 Dec 2020 22:50:00 -0500 Subject: [PATCH 002/228] Bugfix: actually draw lines --- include/emp/web/_NativeCanvas.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/include/emp/web/_NativeCanvas.hpp b/include/emp/web/_NativeCanvas.hpp index 85c014e56c..b4de89136b 100644 --- a/include/emp/web/_NativeCanvas.hpp +++ b/include/emp/web/_NativeCanvas.hpp @@ -130,6 +130,7 @@ namespace web { shape.setOutlineColor( (sf::Color) emp::web::Color( lc ) ); shape.setOutlineThickness( lw ); + window.draw( shape ); return *this; } From 5f03c336360e73389012a636dfccc17fd8d977d9 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Tue, 29 Dec 2020 22:50:35 -0500 Subject: [PATCH 003/228] Implement CanvasShape for native --- include/emp/web/CanvasShape.hpp | 257 +------------------- include/emp/web/_EmscriptenCanvasShape.hpp | 260 +++++++++++++++++++++ include/emp/web/_NativeCanvas.hpp | 11 +- include/emp/web/_NativeCanvasShape.hpp | 195 ++++++++++++++++ 4 files changed, 472 insertions(+), 251 deletions(-) create mode 100644 include/emp/web/_EmscriptenCanvasShape.hpp create mode 100644 include/emp/web/_NativeCanvasShape.hpp diff --git a/include/emp/web/CanvasShape.hpp b/include/emp/web/CanvasShape.hpp index fb04837ed7..355a92bdb0 100644 --- a/include/emp/web/CanvasShape.hpp +++ b/include/emp/web/CanvasShape.hpp @@ -1,260 +1,25 @@ /** * @note This file is part of Empirical, https://github.com/devosoft/Empirical * @copyright Copyright (C) Michigan State University, MIT Software license; see doc/LICENSE.md - * @date 2015-2017 + * @date 2015-2018 * - * @file CanvasShape.hpp - * @brief Define simple shapes to draw on a canvas. + * @file Canvas.hpp + * @brief Manage an HTML canvas object. * - * Canvas shapes can be definied in detail, describing how they modify a canvas. - * - * Other, more specific actions defined here are: - * CanvasCircle - * CanvasRect */ -#ifndef EMP_WEB_CANVAS_SHAPE_H -#define EMP_WEB_CANVAS_SHAPE_H - -#include - -#include "../base/vector.hpp" -#include "../geometry/Circle2D.hpp" - -#include "CanvasAction.hpp" - -namespace emp { -namespace web { - - /// Define an arbitrary shape to draw on a canvas (base clase) - class CanvasShape : public CanvasAction { - protected: - Point p; ///< Anchor point for this shape. - std::string fill_color; ///< Internal color to fill shape with. - std::string line_color; ///< Border color for shape. - double line_width; ///< How wide should lines be? - - public: - CanvasShape(double _x, double _y, const std::string & fc="", const std::string & lc="", double lw=1.0) - : p(_x,_y), fill_color(fc), line_color(lc), line_width(lw) { ; } - CanvasShape(Point _p, const std::string & fc="", const std::string & lc="", double lw=1.0) - : p(_p), fill_color(fc), line_color(lc), line_width(lw) { ; } - virtual ~CanvasShape() { ; } - - /// Shift the position of this shape to a point. - void MoveTo(Point _p) { p = _p; } - - /// Shift the position of this shape to coordinates. - void MoveTo(double _x, double _y) { p.Set(_x,_y); } - - /// Setup details needed before drawing lines. - void SetLineWidth(double lw = 1.0) { line_width = lw; } - - /// Change the fill color of this shape. - void SetFillColor(const std::string & color) { fill_color = color; } - - /// Change the stroke color of this shape. - void SetLineColor(const std::string & color) { line_color = color; } - - /// Actually change the color on screen. - void ApplyColor() { - LineWidth(line_width); - Fill(fill_color); - Stroke(line_color); - } - }; - - /// Track a circle shape to be drawn on a canvas. - class CanvasCircle : public CanvasShape { - double radius; ///< Circle radius - public: - CanvasCircle(double _x, double _y, double _r, - const std::string & fc="", const std::string & lc="", double lw=1.0) - : CanvasShape(_x, _y, fc, lc, lw), radius(_r) { ; } - - CanvasCircle(Point _p, double _r, const std::string & fc="", const std::string & lc="", double lw=1.0) - : CanvasShape(_p, fc, lc, lw), radius(_r) { ; } - - CanvasCircle(emp::Circle circle, const std::string & fc="", const std::string & lc="", double lw=1.0) - : CanvasShape(circle.GetCenterX(), circle.GetCenterY(), fc, lc, lw) - , radius(circle.GetRadius()) { ; } - - void Apply() { - EM_ASM({ - emp_i.ctx.beginPath(); - emp_i.ctx.arc($0, $1, $2, 0, Math.PI*2); - }, p.GetX(), p.GetY(), radius); // Draw the circle - ApplyColor(); - } - CanvasAction * Clone() const { return new CanvasCircle(*this); } - }; - - /// Track a rectangle shape to be drawn on a canvas. - class CanvasRect : public CanvasShape { - double w; ///< Rectangle widgth. - double h; ///< Rectangle height. - public: - CanvasRect(Point _p, double _w, double _h, - const std::string & fc="", const std::string & lc="") - : CanvasShape(_p, fc, lc), w(_w), h(_h) { ; } - - CanvasRect(double _x, double _y, double _w, double _h, - const std::string & fc="", const std::string & lc="") - : CanvasShape(_x, _y, fc, lc), w(_w), h(_h) { ; } - - void Apply() { - EM_ASM({ - emp_i.ctx.beginPath(); - emp_i.ctx.rect($0, $1, $2, $3); - }, p.GetX(), p.GetY(), w, h); // Draw the rectangle - ApplyColor(); - } - CanvasAction * Clone() const { return new CanvasRect(*this); } - }; - - /// Clear a rectangular area in a canvas. - class CanvasClearRect : public CanvasShape { - double w; ///< Rectangle widgth. - double h; ///< Rectangle height. - public: - CanvasClearRect(Point _p, double _w, double _h) - : CanvasShape(_p), w(_w), h(_h) { ; } - - void Apply() { - EM_ASM({ - emp_i.ctx.clearRect($0, $1, $2, $3); - }, p.GetX(), p.GetY(), w, h); // Draw the rectangle - } - CanvasAction * Clone() const { return new CanvasClearRect(*this); } - }; - - /// An arbitrary-sized polygon to be drawn on a canvas. - class CanvasPolygon : public CanvasShape { - private: - emp::vector points; ///< Series of points defining the perimiter of the Polygon. - public: - CanvasPolygon(const std::string & fc="", const std::string & lc="") - : CanvasShape(0, 0, fc, lc) { ; } - CanvasPolygon(const emp::vector & p, const std::string & fc="", const std::string & lc="") - : CanvasShape(0, 0, fc, lc), points(p) { ; } - CanvasPolygon(Point _p, const std::string & fc="", const std::string & lc="") - : CanvasShape(_p, fc, lc) { ; } - CanvasPolygon(double _x, double _y, const std::string & fc="", const std::string & lc="") - : CanvasShape(_x, _y, fc, lc) { ; } - - CanvasPolygon & AddPoint(double x, double y) { points.emplace_back(x,y); return *this; } - CanvasPolygon & AddPoint(Point p) { points.emplace_back(p); return *this; } - - void Apply() { - EM_ASM({ - emp_i.ctx.translate($0,$1); - emp_i.ctx.beginPath(); - emp_i.ctx.moveTo($2, $3); - }, p.GetX(), p.GetY(), points[0].GetX(), points[0].GetY()); // Setup the polygon - for (size_t i = 1; i < points.size(); i++) { - EM_ASM({ - emp_i.ctx.lineTo($0, $1); - }, points[i].GetX(), points[i].GetY()); // Draw the lines for the polygon - } - EM_ASM({ - emp_i.ctx.closePath(); - emp_i.ctx.translate($0,$1); - }, -p.GetX(), -p.GetY()); // Close the polygon - ApplyColor(); - } - CanvasAction * Clone() const { return new CanvasPolygon(*this); } - }; - - /// A line segment on the canvas. - class CanvasLine : public CanvasShape { - private: - double x2; /// X-position for second point of line segment. - double y2; /// Y-position for second point of line segment. - public: - CanvasLine(double _x1, double _y1, double _x2, double _y2, - const std::string & lc="", double lw=1.0) - : CanvasShape(_x1, _y1, "", lc, lw), x2(_x2), y2(_y2) { ; } - CanvasLine(Point p1, Point p2, const std::string & lc="", double lw=1.0) - : CanvasLine(p1.GetX(), p1.GetY(), p2.GetX(), p2.GetY(), lc, lw) { ; } - - void Apply() { - EM_ASM({ - emp_i.ctx.beginPath(); - emp_i.ctx.moveTo($0, $1); - emp_i.ctx.lineTo($2, $3); -// emp_i.ctx.closePath(); - }, p.GetX(), p.GetY(), x2, y2); - // ApplyColor(); - LineWidth(line_width); - Stroke(line_color); - } - CanvasAction * Clone() const { return new CanvasLine(*this); } - }; - - /// A whole series of line segments on the canvas. - /// Currently not working... - class CanvasMultiLine : public CanvasShape { - private: - emp::vector points; - - public: - CanvasMultiLine(double _x1, double _y1, const emp::vector & _points, - const std::string & lc="", double lw=1.0) - : CanvasShape(_x1, _y1, "", lc, lw), points(_points) { ; } - CanvasMultiLine(Point p1, const emp::vector & _points, - const std::string & lc="", double lw=1.0) - : CanvasMultiLine(p1.GetX(), p1.GetY(), _points, lc, lw) { ; } - - void Apply() { - // Startup the line path. - EM_ASM({ - emp_i.ctx.beginPath(); - emp_i.ctx.moveTo($0, $1); - }, p.GetX(), p.GetY()); - // Loop through all internal points... - for (auto p : points) { - EM_ASM({ emp_i.ctx.lineTo($0, $1); }, p.GetX(), p.GetY()); - } - - LineWidth(line_width); - Stroke(line_color); - } - CanvasAction * Clone() const { return new CanvasMultiLine(*this); } - }; - - /// Text to be written on a canvas. - class CanvasText : public CanvasShape { - protected: - std::string text; ///< Specific text to be written. - bool center; ///< Should this text be centered (or is anchor on left side)? - public: - CanvasText(Point p, const std::string & _text, - const std::string & fc="", const std::string & lc="") - : CanvasShape(p, fc, lc), text(_text), center(false) { ; } +#ifndef EMP_WEB_CANVAS_SHAPE_HPP +#define EMP_WEB_CANVAS_SHAPE_HPP - void Apply() { - if (center) { - EM_ASM({ emp_i.ctx.textAlign = "center"; }); - EM_ASM({ emp_i.ctx.textBaseline = "middle"; }); - } - EM_ASM({ - emp_i.ctx.fillStyle = UTF8ToString($3); - var text = UTF8ToString($2); - emp_i.ctx.fillText(text,$0,$1); - }, p.GetX(), p.GetY(), text.c_str(), fill_color.c_str()); - } +#ifdef __EMSCRIPTEN__ - /// Center this text. - void Center(bool c=true) { center = c; } +#include "_EmscriptenCanvasShape.hpp" - /// Identify if text is centered. - bool GetCenter() const { return center; } +#else // #ifdef __EMSCRIPTEN__ - CanvasAction * Clone() const { return new CanvasText(*this); } - }; +#include "_NativeCanvasShape.hpp" -} -} +#endif // #ifdef __EMSCRIPTEN__ -#endif +#endif // #ifndef EMP_WEB_CANVAS_HPP diff --git a/include/emp/web/_EmscriptenCanvasShape.hpp b/include/emp/web/_EmscriptenCanvasShape.hpp new file mode 100644 index 0000000000..15a9940f29 --- /dev/null +++ b/include/emp/web/_EmscriptenCanvasShape.hpp @@ -0,0 +1,260 @@ +/** + * @note This file is part of Empirical, https://github.com/devosoft/Empirical + * @copyright Copyright (C) Michigan State University, MIT Software license; see doc/LICENSE.md + * @date 2015-2017 + * + * @file CanvasShape.hpp + * @brief Define simple shapes to draw on a canvas. + * + * Canvas shapes can be definied in detail, describing how they modify a canvas. + * + * Other, more specific actions defined here are: + * CanvasCircle + * CanvasRect + */ + + +#ifndef EMP_WEB_EMSCRIPTEN_CANVAS_SHAPE_HPP +#define EMP_WEB_EMSCRIPTEN_CANVAS_SHAPE_HPP + +#include + +#include "../base/vector.hpp" +#include "../geometry/Circle2D.hpp" + +#include "CanvasAction.hpp" + +namespace emp { +namespace web { + + /// Define an arbitrary shape to draw on a canvas (base clase) + class CanvasShape : public CanvasAction { + protected: + Point p; ///< Anchor point for this shape. + std::string fill_color; ///< Internal color to fill shape with. + std::string line_color; ///< Border color for shape. + double line_width; ///< How wide should lines be? + + public: + CanvasShape(double _x, double _y, const std::string & fc="", const std::string & lc="", double lw=1.0) + : p(_x,_y), fill_color(fc), line_color(lc), line_width(lw) { ; } + CanvasShape(Point _p, const std::string & fc="", const std::string & lc="", double lw=1.0) + : p(_p), fill_color(fc), line_color(lc), line_width(lw) { ; } + virtual ~CanvasShape() { ; } + + /// Shift the position of this shape to a point. + void MoveTo(Point _p) { p = _p; } + + /// Shift the position of this shape to coordinates. + void MoveTo(double _x, double _y) { p.Set(_x,_y); } + + /// Setup details needed before drawing lines. + void SetLineWidth(double lw = 1.0) { line_width = lw; } + + /// Change the fill color of this shape. + void SetFillColor(const std::string & color) { fill_color = color; } + + /// Change the stroke color of this shape. + void SetLineColor(const std::string & color) { line_color = color; } + + /// Actually change the color on screen. + void ApplyColor() { + LineWidth(line_width); + Fill(fill_color); + Stroke(line_color); + } + }; + + /// Track a circle shape to be drawn on a canvas. + class CanvasCircle : public CanvasShape { + double radius; ///< Circle radius + public: + CanvasCircle(double _x, double _y, double _r, + const std::string & fc="", const std::string & lc="", double lw=1.0) + : CanvasShape(_x, _y, fc, lc, lw), radius(_r) { ; } + + CanvasCircle(Point _p, double _r, const std::string & fc="", const std::string & lc="", double lw=1.0) + : CanvasShape(_p, fc, lc, lw), radius(_r) { ; } + + CanvasCircle(emp::Circle circle, const std::string & fc="", const std::string & lc="", double lw=1.0) + : CanvasShape(circle.GetCenterX(), circle.GetCenterY(), fc, lc, lw) + , radius(circle.GetRadius()) { ; } + + void Apply() { + EM_ASM({ + emp_i.ctx.beginPath(); + emp_i.ctx.arc($0, $1, $2, 0, Math.PI*2); + }, p.GetX(), p.GetY(), radius); // Draw the circle + ApplyColor(); + } + CanvasAction * Clone() const { return new CanvasCircle(*this); } + }; + + /// Track a rectangle shape to be drawn on a canvas. + class CanvasRect : public CanvasShape { + double w; ///< Rectangle widgth. + double h; ///< Rectangle height. + public: + CanvasRect(Point _p, double _w, double _h, + const std::string & fc="", const std::string & lc="") + : CanvasShape(_p, fc, lc), w(_w), h(_h) { ; } + + CanvasRect(double _x, double _y, double _w, double _h, + const std::string & fc="", const std::string & lc="") + : CanvasShape(_x, _y, fc, lc), w(_w), h(_h) { ; } + + void Apply() { + EM_ASM({ + emp_i.ctx.beginPath(); + emp_i.ctx.rect($0, $1, $2, $3); + }, p.GetX(), p.GetY(), w, h); // Draw the rectangle + ApplyColor(); + } + CanvasAction * Clone() const { return new CanvasRect(*this); } + }; + + /// Clear a rectangular area in a canvas. + class CanvasClearRect : public CanvasShape { + double w; ///< Rectangle widgth. + double h; ///< Rectangle height. + public: + CanvasClearRect(Point _p, double _w, double _h) + : CanvasShape(_p), w(_w), h(_h) { ; } + + void Apply() { + EM_ASM({ + emp_i.ctx.clearRect($0, $1, $2, $3); + }, p.GetX(), p.GetY(), w, h); // Draw the rectangle + } + CanvasAction * Clone() const { return new CanvasClearRect(*this); } + }; + + /// An arbitrary-sized polygon to be drawn on a canvas. + class CanvasPolygon : public CanvasShape { + private: + emp::vector points; ///< Series of points defining the perimiter of the Polygon. + public: + CanvasPolygon(const std::string & fc="", const std::string & lc="") + : CanvasShape(0, 0, fc, lc) { ; } + CanvasPolygon(const emp::vector & p, const std::string & fc="", const std::string & lc="") + : CanvasShape(0, 0, fc, lc), points(p) { ; } + CanvasPolygon(Point _p, const std::string & fc="", const std::string & lc="") + : CanvasShape(_p, fc, lc) { ; } + CanvasPolygon(double _x, double _y, const std::string & fc="", const std::string & lc="") + : CanvasShape(_x, _y, fc, lc) { ; } + + CanvasPolygon & AddPoint(double x, double y) { points.emplace_back(x,y); return *this; } + CanvasPolygon & AddPoint(Point p) { points.emplace_back(p); return *this; } + + void Apply() { + EM_ASM({ + emp_i.ctx.translate($0,$1); + emp_i.ctx.beginPath(); + emp_i.ctx.moveTo($2, $3); + }, p.GetX(), p.GetY(), points[0].GetX(), points[0].GetY()); // Setup the polygon + for (size_t i = 1; i < points.size(); i++) { + EM_ASM({ + emp_i.ctx.lineTo($0, $1); + }, points[i].GetX(), points[i].GetY()); // Draw the lines for the polygon + } + EM_ASM({ + emp_i.ctx.closePath(); + emp_i.ctx.translate($0,$1); + }, -p.GetX(), -p.GetY()); // Close the polygon + ApplyColor(); + } + CanvasAction * Clone() const { return new CanvasPolygon(*this); } + }; + + /// A line segment on the canvas. + class CanvasLine : public CanvasShape { + private: + double x2; /// X-position for second point of line segment. + double y2; /// Y-position for second point of line segment. + public: + CanvasLine(double _x1, double _y1, double _x2, double _y2, + const std::string & lc="", double lw=1.0) + : CanvasShape(_x1, _y1, "", lc, lw), x2(_x2), y2(_y2) { ; } + CanvasLine(Point p1, Point p2, const std::string & lc="", double lw=1.0) + : CanvasLine(p1.GetX(), p1.GetY(), p2.GetX(), p2.GetY(), lc, lw) { ; } + + void Apply() { + EM_ASM({ + emp_i.ctx.beginPath(); + emp_i.ctx.moveTo($0, $1); + emp_i.ctx.lineTo($2, $3); +// emp_i.ctx.closePath(); + }, p.GetX(), p.GetY(), x2, y2); + // ApplyColor(); + LineWidth(line_width); + Stroke(line_color); + } + CanvasAction * Clone() const { return new CanvasLine(*this); } + }; + + /// A whole series of line segments on the canvas. + /// Currently not working... + class CanvasMultiLine : public CanvasShape { + private: + emp::vector points; + + public: + CanvasMultiLine(double _x1, double _y1, const emp::vector & _points, + const std::string & lc="", double lw=1.0) + : CanvasShape(_x1, _y1, "", lc, lw), points(_points) { ; } + CanvasMultiLine(Point p1, const emp::vector & _points, + const std::string & lc="", double lw=1.0) + : CanvasMultiLine(p1.GetX(), p1.GetY(), _points, lc, lw) { ; } + + void Apply() { + // Startup the line path. + EM_ASM({ + emp_i.ctx.beginPath(); + emp_i.ctx.moveTo($0, $1); + }, p.GetX(), p.GetY()); + // Loop through all internal points... + for (auto p : points) { + EM_ASM({ emp_i.ctx.lineTo($0, $1); }, p.GetX(), p.GetY()); + } + + LineWidth(line_width); + Stroke(line_color); + } + CanvasAction * Clone() const { return new CanvasMultiLine(*this); } + }; + + /// Text to be written on a canvas. + class CanvasText : public CanvasShape { + protected: + std::string text; ///< Specific text to be written. + bool center; ///< Should this text be centered (or is anchor on left side)? + public: + CanvasText(Point p, const std::string & _text, + const std::string & fc="", const std::string & lc="") + : CanvasShape(p, fc, lc), text(_text), center(false) { ; } + + void Apply() { + if (center) { + EM_ASM({ emp_i.ctx.textAlign = "center"; }); + EM_ASM({ emp_i.ctx.textBaseline = "middle"; }); + } + EM_ASM({ + emp_i.ctx.fillStyle = UTF8ToString($3); + var text = UTF8ToString($2); + emp_i.ctx.fillText(text,$0,$1); + }, p.GetX(), p.GetY(), text.c_str(), fill_color.c_str()); + } + + /// Center this text. + void Center(bool c=true) { center = c; } + + /// Identify if text is centered. + bool GetCenter() const { return center; } + + CanvasAction * Clone() const { return new CanvasText(*this); } + }; + +} +} + +#endif diff --git a/include/emp/web/_NativeCanvas.hpp b/include/emp/web/_NativeCanvas.hpp index b4de89136b..824d2dc3c6 100644 --- a/include/emp/web/_NativeCanvas.hpp +++ b/include/emp/web/_NativeCanvas.hpp @@ -3,7 +3,7 @@ * @copyright Copyright (C) Michigan State University, MIT Software license; see doc/LICENSE.md * @date 2015-2018 * - * @file Canvas.hpp + * @file _NativeCanvas.hpp * @brief Manage an HTML canvas object. * */ @@ -21,6 +21,7 @@ #include "../tools/string_utils.hpp" #include "_LineShape.hpp" +#include "CanvasShape.hpp" #include "Color.hpp" namespace emp { @@ -189,10 +190,10 @@ namespace web { } /// Draw an arbitrary shape onto this canvas. - // Canvas & Draw(const CanvasShape & shape) { - // emp_assert(false, "unimplemented"); - // return *this; - // } + Canvas & Draw(const CanvasShape & shape) { + shape.Apply( window ); + return *this; + } /// Change the default stroke color. Canvas & StrokeColor(std::string c) { diff --git a/include/emp/web/_NativeCanvasShape.hpp b/include/emp/web/_NativeCanvasShape.hpp new file mode 100644 index 0000000000..5af463e315 --- /dev/null +++ b/include/emp/web/_NativeCanvasShape.hpp @@ -0,0 +1,195 @@ +/** + * @note This file is part of Empirical, https://github.com/devosoft/Empirical + * @copyright Copyright (C) Michigan State University, MIT Software license; see doc/LICENSE.md + * @date 2015-2017 + * + * @file CanvasShape.hpp + * @brief Define simple shapes to draw on a canvas. + * + * Canvas shapes can be definied in detail, describing how they modify a canvas. + * + * Other, more specific actions defined here are: + * CanvasCircle + * CanvasRect + */ + + +#ifndef EMP_WEB_NATIVE_CANVAS_SHAPE_HPP +#define EMP_WEB_NATIVE_CANVAS_SHAPE_HPP + +#include + +#include + +#include "../base/vector.hpp" +#include "../geometry/Circle2D.hpp" + +#include "Color.hpp" + +namespace emp { +namespace web { + + /// Define an arbitrary shape to draw on a canvas (base clase) + class CanvasShape { + protected: + Point p; ///< Anchor point for this shape. + std::string fill_color; ///< Internal color to fill shape with. + std::string line_color; ///< Border color for shape. + double line_width; ///< How wide should lines be? + + public: + CanvasShape(double _x, double _y, const std::string & fc="", const std::string & lc="", double lw=1.0) + : p(_x,_y), fill_color(fc), line_color(lc), line_width(lw) { ; } + CanvasShape(Point _p, const std::string & fc="", const std::string & lc="", double lw=1.0) + : p(_p), fill_color(fc), line_color(lc), line_width(lw) { ; } + ~CanvasShape() { ; } + + /// Shift the position of this shape to a point. + void MoveTo(Point _p) { p = _p; } + + /// Shift the position of this shape to coordinates. + void MoveTo(double _x, double _y) { p.Set(_x,_y); } + + /// Setup details needed before drawing lines. + void SetLineWidth(double lw = 1.0) { line_width = lw; } + + /// Change the fill color of this shape. + void SetFillColor(const std::string & color) { fill_color = color; } + + /// Change the stroke color of this shape. + void SetLineColor(const std::string & color) { line_color = color; } + + virtual void Apply( sf::RenderTexture& ) const = 0; + + + }; + + /// Track a circle shape to be drawn on a canvas. + class CanvasCircle : public CanvasShape { + double radius; ///< Circle radius + public: + CanvasCircle(double _x, double _y, double _r, + const std::string & fc="", const std::string & lc="", double lw=1.0) + : CanvasShape(_x, _y, fc, lc, lw), radius(_r) { ; } + + CanvasCircle(Point _p, double _r, const std::string & fc="", const std::string & lc="", double lw=1.0) + : CanvasShape(_p, fc, lc, lw), radius(_r) { ; } + + CanvasCircle(emp::Circle circle, const std::string & fc="", const std::string & lc="", double lw=1.0) + : CanvasShape(circle.GetCenterX(), circle.GetCenterY(), fc, lc, lw) + , radius(circle.GetRadius()) { ; } + + }; + + /// Track a rectangle shape to be drawn on a canvas. + class CanvasRect : public CanvasShape { + double w; ///< Rectangle widgth. + double h; ///< Rectangle height. + public: + CanvasRect(Point _p, double _w, double _h, + const std::string & fc="", const std::string & lc="") + : CanvasShape(_p, fc, lc), w(_w), h(_h) { ; } + + CanvasRect(double _x, double _y, double _w, double _h, + const std::string & fc="", const std::string & lc="") + : CanvasShape(_x, _y, fc, lc), w(_w), h(_h) { ; } + + }; + + /// Clear a rectangular area in a canvas. + class CanvasClearRect : public CanvasShape { + double w; ///< Rectangle widgth. + double h; ///< Rectangle height. + public: + CanvasClearRect(Point _p, double _w, double _h) + : CanvasShape(_p), w(_w), h(_h) { ; } + + }; + + /// An arbitrary-sized polygon to be drawn on a canvas. + class CanvasPolygon : public CanvasShape { + private: + emp::vector points; ///< Series of points defining the perimiter of the Polygon. + public: + CanvasPolygon(const std::string & fc="", const std::string & lc="") + : CanvasShape(0, 0, fc, lc) { ; } + CanvasPolygon(const emp::vector & p, const std::string & fc="", const std::string & lc="") + : CanvasShape(0, 0, fc, lc), points(p) { ; } + CanvasPolygon(Point _p, const std::string & fc="", const std::string & lc="") + : CanvasShape(_p, fc, lc) { ; } + CanvasPolygon(double _x, double _y, const std::string & fc="", const std::string & lc="") + : CanvasShape(_x, _y, fc, lc) { ; } + + CanvasPolygon & AddPoint(double x, double y) { points.emplace_back(x,y); return *this; } + CanvasPolygon & AddPoint(Point p) { points.emplace_back(p); return *this; } + + virtual void Apply( sf::RenderTexture& window ) const override { + + sf::ConvexShape res; + + res.setPointCount( points.size() ); + for (size_t i{}; i < points.size(); ++i) { + res.setPoint( i, sf::Vector2f( points[i].GetX(), points[i].GetY() ) ); + } + res.setFillColor( (sf::Color) emp::web::Color( fill_color ) ); + res.setOutlineColor( (sf::Color) emp::web::Color( line_color ) ); + res.setOutlineThickness( line_width ); + + window.draw( res ); + + } + + }; + + /// A line segment on the canvas. + class CanvasLine : public CanvasShape { + private: + double x2; /// X-position for second point of line segment. + double y2; /// Y-position for second point of line segment. + public: + CanvasLine(double _x1, double _y1, double _x2, double _y2, + const std::string & lc="", double lw=1.0) + : CanvasShape(_x1, _y1, "", lc, lw), x2(_x2), y2(_y2) { ; } + CanvasLine(Point p1, Point p2, const std::string & lc="", double lw=1.0) + : CanvasLine(p1.GetX(), p1.GetY(), p2.GetX(), p2.GetY(), lc, lw) { ; } + + }; + + /// A whole series of line segments on the canvas. + /// Currently not working... + class CanvasMultiLine : public CanvasShape { + private: + emp::vector points; + + public: + CanvasMultiLine(double _x1, double _y1, const emp::vector & _points, + const std::string & lc="", double lw=1.0) + : CanvasShape(_x1, _y1, "", lc, lw), points(_points) { ; } + CanvasMultiLine(Point p1, const emp::vector & _points, + const std::string & lc="", double lw=1.0) + : CanvasMultiLine(p1.GetX(), p1.GetY(), _points, lc, lw) { ; } + + }; + + /// Text to be written on a canvas. + class CanvasText : public CanvasShape { + protected: + std::string text; ///< Specific text to be written. + bool center; ///< Should this text be centered (or is anchor on left side)? + public: + CanvasText(Point p, const std::string & _text, + const std::string & fc="", const std::string & lc="") + : CanvasShape(p, fc, lc), text(_text), center(false) { ; } + + /// Center this text. + void Center(bool c=true) { center = c; } + + /// Identify if text is centered. + bool GetCenter() const { return center; } + + }; + +} +} + +#endif From 40da472d913e2fea2b927d9848ca907a596822cd Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Sun, 10 Jan 2021 12:33:25 -0500 Subject: [PATCH 004/228] Add stub tests for canvas shape --- Dockerfile | 1 + tests/Makefile | 2 +- tests/native/CanvasShape.cpp | 105 +++++++++++++++++++++++++++++++++++ tests/native/Makefile | 58 +++++++++++++++++++ tests/native/down.png | Bin 0 -> 10110 bytes tests/native/left.png | Bin 0 -> 10190 bytes tests/native/right.png | Bin 0 -> 10176 bytes tests/native/up.png | Bin 0 -> 10092 bytes 8 files changed, 165 insertions(+), 1 deletion(-) create mode 100644 tests/native/CanvasShape.cpp create mode 100644 tests/native/Makefile create mode 100644 tests/native/down.png create mode 100644 tests/native/left.png create mode 100644 tests/native/right.png create mode 100644 tests/native/up.png diff --git a/Dockerfile b/Dockerfile index 4ecd5c302a..91f57daa23 100644 --- a/Dockerfile +++ b/Dockerfile @@ -37,6 +37,7 @@ RUN \ libc6=2.27-3ubuntu1 \ libc6-dev \ libc6-dbg \ + libsfml-dev \ build-essential \ xvfb \ x11vnc \ diff --git a/tests/Makefile b/tests/Makefile index 1d3f24ebdc..951957fd23 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -1,4 +1,4 @@ -TEST_NAMES := base bits compiler config control data datastructs debug Evolve functional games geometry hardware io matching math meta scholar testing tools +TEST_NAMES := base bits compiler config control data datastructs debug Evolve functional games geometry hardware io matching math meta native scholar testing tools CXX = clang++ #CXX := g++ diff --git a/tests/native/CanvasShape.cpp b/tests/native/CanvasShape.cpp new file mode 100644 index 0000000000..cee41c4894 --- /dev/null +++ b/tests/native/CanvasShape.cpp @@ -0,0 +1,105 @@ +#define CATCH_CONFIG_MAIN +#include "third-party/Catch/single_include/catch2/catch.hpp" + +#include "emp/web/Canvas.hpp" +#include "emp/web/CanvasShape.hpp" + +TEST_CASE("Test CanvasShape up", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + emp::web::CanvasPolygon poly( + 0, + 0, + "red", + "blue" + ); + + // add central vertex + poly.AddPoint( 150, 150 ); + + // pick other two vertices depending on direction + poly.AddPoint( 100, 100 ); + poly.AddPoint( 200, 100 ); + + // draw the polygon + canvas.Draw(poly); + + canvas.SavePNG("up.png"); + +} + +TEST_CASE("Test CanvasShape down", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + emp::web::CanvasPolygon poly( + 0, + 0, + "red", + "blue" + ); + + // add central vertex + poly.AddPoint( 150, 150 ); + + // pick other two vertices depending on direction + poly.AddPoint( 100, 200 ); + poly.AddPoint( 200, 200 ); + + // draw the polygon + canvas.Draw(poly); + + canvas.SavePNG("down.png"); + +} + +TEST_CASE("Test CanvasShape left", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + emp::web::CanvasPolygon poly( + 0, + 0, + "red", + "blue" + ); + + // add central vertex + poly.AddPoint( 150, 150 ); + + // pick other two vertices depending on direction + poly.AddPoint( 100, 100 ); + poly.AddPoint( 100, 200 ); + + // draw the polygon + canvas.Draw(poly); + + canvas.SavePNG("left.png"); + +} + +TEST_CASE("Test CanvasShape right", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + emp::web::CanvasPolygon poly( + 0, + 0, + "red", + "blue" + ); + + // add central vertex + poly.AddPoint( 150, 150 ); + + // pick other two vertices depending on direction + poly.AddPoint( 200, 100 ); + poly.AddPoint( 200, 200 ); + + // draw the polygon + canvas.Draw(poly); + + canvas.SavePNG("right.png"); + +} diff --git a/tests/native/Makefile b/tests/native/Makefile new file mode 100644 index 0000000000..09b1c59d1d --- /dev/null +++ b/tests/native/Makefile @@ -0,0 +1,58 @@ +TEST_NAMES = CanvasShape + +# -O3 -Wl,--stack,8388608 -ftrack-macro-expansion=0 +FLAGS = -std=c++17 -pthread -Wall -Wno-unused-function -Wno-unused-private-field -I../../include/ -I../../ -I../../third-party/cereal/include/ + +default: test + +cov-%: %.cpp ../../third-party/Catch/single_include/catch2/catch.hpp + $(CXX) $(FLAGS) $< -o $@.out + #echo "running $@.out" + # execute test + ./$@.out + llvm-profdata merge default.profraw -o default.profdata + llvm-cov show ./$@.out -instr-profile=default.profdata > coverage_$@.txt + python ../../third-party/force-cover/fix_coverage.py coverage_$@.txt + +test-prep: + mkdir -p temp + +test-%: %.cpp ../../third-party/Catch/single_include/catch2/catch.hpp + $(CXX) $(FLAGS) $< -lsfml-graphics -o $@.out + # execute test + ./$@.out + +# Test in debug mode without pointer tracker +test: test-prep $(addprefix test-, $(TEST_NAMES)) + rm -rf test*.out + +coverage: FLAGS := -std=c++17 -pthread -g -Wall -Wno-unused-function -I../../coverage_source/ -I../../ -I../../third-party/cereal/include/ -DEMP_TRACK_MEM -Wnon-virtual-dtor -Wcast-align -Woverloaded-virtual -ftemplate-backtrace-limit=0 -fprofile-instr-generate -fcoverage-mapping -fno-inline -fno-elide-constructors -O0 +coverage: test-prep $(addprefix cov-, $(TEST_NAMES)) + +# Test optimized version without debug features +opt: FLAGS := -std=c++17 -pthread -DNDEBUG -O3 -Wno-unused-function -I../../include/ -I../../third-party/cereal/include/ -I../../ +opt: test-prep $(addprefix test-, $(TEST_NAMES)) + rm -rf test*.out + +# Test in debug mode with pointer tracking +fulldebug: FLAGS := -std=c++17 -pthread -g -Wall -Wno-unused-function -I../../include/ -I../../third-party/cereal/include/ -I../../ -pedantic -DEMP_TRACK_MEM -Wnon-virtual-dtor -Wcast-align -Woverloaded-virtual -ftemplate-backtrace-limit=0 # -Wmisleading-indentation +fulldebug: test-prep $(addprefix test-, $(TEST_NAMES)) + rm -rf test*.out + +cranky: FLAGS := -std=c++17 -pthread -g -Wall -Wno-unused-function -I../../include/ -I../../third-party/cereal/include/ -I../../ -pedantic -DEMP_TRACK_MEM -Wnon-virtual-dtor -Wcast-align -Woverloaded-virtual -Wconversion -Weffc++ +cranky: test-prep $(addprefix test-, $(TEST_NAMES)) + rm -rf test*.out + +../../third-party/Catch/single_include/catch2/catch.hpp: + git submodule init + git submodule update + +clean: + rm -f *.out + rm -f *.o + rm -f *.gcda + rm -f *.gcno + rm -f *.info + rm -f *.gcov + rm -f ./Coverage* + rm -rf ./temp diff --git a/tests/native/down.png b/tests/native/down.png new file mode 100644 index 0000000000000000000000000000000000000000..eaaf9c18837964e20ea306d8d18ac32031a00bd4 GIT binary patch literal 10110 zcmeHNT})eL7(TF$oiYgZ2iCAb#hF2=nD*HHXr!Snw3LK~wT!VQk`qS5abvR#FNl#z z9W4|Jb;+8n%}gpMPP$lJVnZA*3%XxAoUJjYCMHUUq|T`rz(_AP&-Z=jnBtu`UVRt+ zF3!{Qe$V^7&-+{*Pm9@Dm|vPt5JaJ=vED)uIcwlY=5bH%e*42HK~y%F>b0%?9Y>{G z*$QQ8ESWFKE;sR- ze}nlz6O6-Z2L0enh0^xE@1l~@4PK4C6}8Bkdw7%7eI}7c;zsKZPet7kyT%sw?fFz- z-%NVj(yV-JND?w5XjXtuLnu6YM-n=TpsNCO61_D#A_+Ak=$Zg^ptn4AWPFB_0Wp5$ z#c1Kh7^)Pdtw;<9FGf|7Gm$@_E?y*aGHp-{-7a2?m=1QVZP(E>5<@k?i?M+^E{{s2 zN!0PXLdS@Oe4AX9XG8>JJi%vb;YeDy6godY1X+mtcovP@A&Z-Yo^~J>DS<@_>i$RA z?m)BZ-N)PSh6~JU(i)3TEf^K+iBu0?j2s3)r*%GlX)~|_foH9E;va1W91uuZZpWuL z1D7E%X}PuXuRD~Gl`7oXe+Y{9534Dt%*fNKR}{cM(F20D>cMobYxWlW4h5^Z$GeAk z61efQS-hKtLmLz9P1BrphEG&Wk3hTGE+8ka0Y?qn^Q8gwIOKyfS%QyWedv3L%Eyhs z>V{+R*6L-WqHihP#qH2f)WpTr1a%r}mE_vf?(doGk5acw{9qI08mO)Xj=n@yYYW^T zy9N5FL#rzW?GxVPSeDSczErT{H+X0BmH~r>)5QlC0-FKv0?q@Rgg6Ot65=Gp zNr;mWCm~KkoP;2A{=0whl76_k z_nhxJ=X+lXj-1_Qe?P6CN~Q9*WTabFDxb&XN3#UT$n78NRjQ~~OZtx7^8JM&FS^17 ztuKFY4R{~$G2m9fosc`>|K^1DH`LD-bWI(efDr#m@u81WpEcRv@2%;#T`;yqn$z+P zY7=>6tgQ6-RphwaJed`ScxP?DP18so&B4B|)lc=iVi(qibiAtVnJ~xCioa^CRe8gO zypEOMOvL4NIg2NygM6%M`F*Ln&XVFjt8Vn>VwZPT_uFcWb>k!C^mB`+*Fk`O70sWw zDozgwBBuvrM7dg@+KR&#(^!Sv5~1MzYmjH^lzcVvUF(z_vkS;tqu?p1MxEQCh(~{d z#9uu=pol*ob@28HM2D$G9da~{`=$rc-JwAcgrp8 z7I>7S6jj!FkRq?WNo<%IEM)bCM<85Z;ySTllWU3mnykA-=F)BA%nxi;n_?aZwso6h z<~;WgiR#q8MKp^@-01|(uHO}VZTY7GAw6T}@`GW}felxf!eK;rr@N?@)F}`f79L|* zJ;Q1{1a8%3YnYgQm`L`u8Q5#W95lf8{sH%Xb89A?{LrNvI!+4r&MOs0T5opF0I^4!c^8qWbS zo+TgAc+O1I_(xd$_h|f47Eq(h8F`ke(@xdNYN0w9m=5z;=IquY>H>#ZNe{#48e`jr z;T4rcPcPH+r=?^%4GC75Iw+v8RxInaKvGs)W@jQzz#t~}f)4rSPEpVjmcTYlY*ofr zG=XuJz}uKum$REDaFHc&mL_&jT!-;2wpP@Xpo~}<}Jduj$D1!b!U~DUA;?1D7 zwP}a_Dm^!j873w1;4_G~vt>Pq_owZ%wM;y;DqHu)Xb@%AqmCEFvy<+DuCROviA=d1 zQuRNeiJiU(iQF^?-C*K9qKR#~M)@$~&nS;3-2v;rW4wv-&9^B3mhn$0kGW0x5aT_R zzha{CNYk;O#uNN9jbG|^G5%#RgrGw#(_swq1|83z4eX}sz!uW%xlU-T z_5j6Ech2t$Gs^tyhB#r-A5onIdY**9EbZSXOcwKsP=G)HhDD{2xt z!;a{q&;nbASV`x>)M|{W)+bQtyhh35U^@IN)SWYsUSEi0aTu`R{8>g%;e-e$f0a|b z)r6+st^ki0&*pses)iRQFox27$F$68X9?%O>4HqKJf@ASQA45S4N(w;G(LpA& z*7puhPwE3DzlwZANugprwJP5SN?wiYe<>+atREC#FoqTJh%XrKRz>{HFA;I{SzAe; zMLzd}k)RGS+Ybpf{R<14?}d{?qqh6&C6m#=t~MQ=w#Qu}6MCdvv^Q*<+QSVz?i0Kj41A{eb%ccS7!j+zGi8awp_Y p$eoZoA$P+6#tDxb!&Rz{UylyHdnKj_{!dS3*||IYi`4w8e*j3oW7+@! literal 0 HcmV?d00001 diff --git a/tests/native/right.png b/tests/native/right.png new file mode 100644 index 0000000000000000000000000000000000000000..9ba107a2f1f9cc511a378ccaf398bdbacd5e0836 GIT binary patch literal 10176 zcmeH~e@v8h9LFEVRD|9#zbC=l%Kc*tDu#O-f8jR1_ttw4`{oqQu3FzvcuY=g$AotSC95(&EBr{FNJQGc`wE zO1%6>)8JzcssAx7v~#y647gbEbTU z(~{ykthOVAYI2{?+!BloTN?DlI_J-OgUX}yVb9#w4jI8=b#1klM}jsueu7_I%q+UsU^^Y`r+)Px&qo-XhF}0s-Xq-!r4e@E4160 zHVS$%R0S=l7tVePt%J4(TF{BmT4+JNaCR;96tvaQf=-1>p#}BA*^FQzw0@?gf2gU> zygus6qV%$pd>1K+ta)jcA6ZM=e`hWAnIlE4d9z){bJz8rM|e0+QzE)sKMFZ)@!Gzd zzTUK?1|uACG1k=4KI?4O>N9)E8ihmo9K7F3@1Y2MDfm(FZ>_T!KP33q-~(1Oc0=kL*%;e5ekIR8C859cr8equQP zh&~_ZPjj4qLg)UcInE#A_h;#e8rpN1?RibjI zjL9|!Rcge9mW!Ein#SkEYmdeBu=_GKVoYtnzz-VEB!4k|n>z&lo#4wEce+0YzbN=3 z#$zi7z`qy#LB_)?e*wQF_yah9i9(G&)SCSj5738iu%J|J-bsyKonBTW0yIR=538f2 z3N`v*LDwzX)<#BmRv;(`nq79P~c&Ga~#%;s2Bs{%;EZ#<3J2wn3>5cWlsIsOO)&p2ixe z@^sP~pe}ZxIOuu4$3{z@=)0g>SRoJ9cY^kSZe%pK-iGpi0$K^}j!w`p=o)Bu*l4-X zxyM1vp{?r#?E`f~TW5l^K}Li1(AEY($3WkNw$=n^mq1^Ec6$Ic3c3l}?It+83i<-H zH385VsPQc_uI1L4;OrLYlh9TNKxeY#vpFU$&9TjBUok!|Vi^8@d|c2x-0^V{L0l~? zOD?SIG3xz%#Ctc3cekB|{w#gdw6OLi_lx$CVY5ZEPTu~YAugb1zRt&okE3TdnQScR z3NY&e{!1f&#O}hkoUDedhVg$7nFCn^nFBcnauvu;C^w_W@ZrE zxpr8}It(OuW=q!_3NtuJF8@AEwG^F6=%-rg3sMy*#91fgkabb1Ivu>xP@2Jqy@+|N;h*tx68+2B2O=&&x2 zGn(~E{DwWiIl$KdR{?H9+=TyE6Q(UHotry3em1qX#&ueT9KlZNTC99V(CRdyh7u(g z&LpCj)>6K1ir(=2fVnDl^B^~Pm#MX(9o=#G`M-20Iw{|1L8M~)*thQ9-_g;_Tb10F zdx_YDKzAFsHomI#nJKr!PpKjSGS<5Iu6533S`GEE!gLpJDAk0(p{qu-?{YzQsAw#+ zwEa0aq(K}q0EXC0S0z1xmxlAj@Z69)j zb=Aps8Q+&6Uq_Y8Z8}LOkII0<2(Y#S;CS*48Spv+>W%=wlRPE^-b8@yEdT_P9WvlF z1kz7N0MI4W= z7|B3Ufp)ZKO0^e7puaM}ypV;-uvn#v7=odR|KPPyrd60FT@lKXMzM^5#Q_Wd)W3nB z5O61Bp&kPMM!-i}Kbij<;@f;hYU27DXouicYC>PVh$L=2Arb4@1hrGchH&cERm6F+ zR-!hE(#iT}?EVffV*PcoL~hm&6Wwe%X!rXOZ))Fpw515KB(l&K8_njydtiaA0o@yy zBlrbep?m*hm$ZpvXj|piCEpCY5y6bZpjzB766}-+R)_@iHg8t)V~C)$Mj|*M5{&lb zD{hJemFonvXc6rDjie&minuSV8=FN5W7)=hMOKpa4+J!XZESLiR7@jtDWOl2wTc$l zeBiYR@wO=ImK27dRaE@6+8*RZ-`m%H|6EkOEo`iRSyaqRiW5iSmEkI5YGd$Al+nT; z(bZ?j8JoB**RVEqNHk+TMvH|ozzod=$b=+IFRla@kS1g-QYPq&^Sd8OzfJJNP3u2PO&U0DFLQfUg0r0^EeS32_tRCd5sMn-Di4ZbICIxCwC+ w;wHpRh?@{MA#Ot4gt!TD6aI%LH0)9l?5WwEf%_IO_!k|~w5P@Ssoj6(0Vg8ibpQYW literal 0 HcmV?d00001 From 1532208ebb7bd909e0bccf52dc2ddf39a32cfda1 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Sun, 10 Jan 2021 21:48:28 -0500 Subject: [PATCH 005/228] Fixup test makefile --- tests/web/Makefile | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/web/Makefile b/tests/web/Makefile index b797b85b9f..2de3cc6e05 100644 --- a/tests/web/Makefile +++ b/tests/web/Makefile @@ -13,7 +13,7 @@ OFLAGS_web := -Werror -pedantic -Wno-dollar-in-identifier-extension -s TOTAL_MEM #initializer lists - to compile files with them, we need to remove -Werror OFLAGS_web_braces := -pedantic -Wno-dollar-in-identifier-extension -s TOTAL_MEMORY=67108864 -CFLAGS_web := $(CFLAGS_all) $(OFLAGS_web_braces) --js-library ../../include/emp/web/library_emp.js --js-library ../../include/emp/web/d3/library_d3.js -s EXPORTED_FUNCTIONS="['_main', '_empCppCallback']" -s DISABLE_EXCEPTION_CATCHING=1 -s NO_EXIT_RUNTIME=1 -s EXTRA_EXPORTED_RUNTIME_METHODS='["ccall", "cwrap", "stringToUTF8"]' -s WASM=0 +CFLAGS_web := $(CFLAGS_all) $(OFLAGS_web_braces) --js-library ../../include/emp/web/library_emp.js --js-library ../../include/emp/web/d3/library_d3.js -s EXPORTED_FUNCTIONS="['_main', '_empCppCallback', '_empDoCppCallback']" -s DISABLE_EXCEPTION_CATCHING=1 -s NO_EXIT_RUNTIME=1 -s EXTRA_EXPORTED_RUNTIME_METHODS='["ccall", "cwrap", "stringToUTF8"]' -s WASM=0 test: $(addprefix test-, $(TEST_NAMES)) test-color_map test-GetUrlParams @@ -33,6 +33,11 @@ test-GetUrlParams: GetUrlParams.cpp $(CXX_web) $(CFLAGS_web) $< -o $@.js node $@.js +test-CanvasShape: CanvasShape.cpp + source ../../third-party/emsdk/emsdk_env.sh; \ + $(CXX_web) $(CFLAGS_web) $< -o $@.js + node $@.js + ../../third-party/Catch/single_include/catch2/catch.hpp: git submodule init git submodule update From 2088d0fd22708205fa16b61a8b6aae7698c402a5 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 18 Jan 2021 00:21:09 -0500 Subject: [PATCH 006/228] Add optimized shift for single-field bitsets --- include/emp/bits/BitSet.hpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/include/emp/bits/BitSet.hpp b/include/emp/bits/BitSet.hpp index 3c1f800025..25fed503c4 100644 --- a/include/emp/bits/BitSet.hpp +++ b/include/emp/bits/BitSet.hpp @@ -128,6 +128,16 @@ namespace emp { std::memcpy(bit_set, in_set, sizeof(bit_set)); } + template + void ShiftLeft() { + // profiled this templated, special case variant + // and did see a difference in runtime MAM + + // TODO currently only implemented for NUM_FIELDS == 1 + static_assert( NUM_FIELDS == 1 ); + bit_set[0] <<= shift; + } + /// Helper: call SHIFT with positive number instead void ShiftLeft(const size_t shift_size) { @@ -900,8 +910,14 @@ namespace emp { size_t length = 0; BitSet out_set(*this); while(out_set.Any()){ - out_set.AND_SELF(out_set<<1); + BitSet temp( out_set ); + // optimization currently only implemented for NUM_FIELDS == 1 + if constexpr (NUM_FIELDS == 1) temp.template ShiftLeft<1>(); + else temp <<= 1; + + out_set.AND_SELF(temp); ++length; + } return length; } From 37389c46962d8bdd52adfc679a2db6985ccadf96 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 18 Jan 2021 00:22:05 -0500 Subject: [PATCH 007/228] Add single-field optimization for BitSet Any --- include/emp/bits/BitSet.hpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/include/emp/bits/BitSet.hpp b/include/emp/bits/BitSet.hpp index 25fed503c4..70dca3f2dc 100644 --- a/include/emp/bits/BitSet.hpp +++ b/include/emp/bits/BitSet.hpp @@ -791,7 +791,15 @@ namespace emp { static constexpr double MaxDouble() { return emp::Pow2(NUM_BITS) - 1.0; } /// Return true if ANY bits in the BitSet are one, else return false. - bool Any() const { for (auto i : bit_set) if (i) return true; return false; } + bool Any() const { + // profiled the if constexpr else + // and did see a difference on perf reports and in runtime MAM + if constexpr (NUM_FIELDS == 1) return bit_set[0]; + else { + for (auto i : bit_set) if (i) return true; + return false; + } + } /// Return true if NO bits in the BitSet are one, else return false. bool None() const { return !Any(); } From c9ce6ecd0f8290b715f8f136883b4ce9ca4a94be Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 18 Jan 2021 00:22:34 -0500 Subject: [PATCH 008/228] Use X_SELF to implement X operations --- include/emp/bits/BitSet.hpp | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/include/emp/bits/BitSet.hpp b/include/emp/bits/BitSet.hpp index 70dca3f2dc..73922eb3a3 100644 --- a/include/emp/bits/BitSet.hpp +++ b/include/emp/bits/BitSet.hpp @@ -934,53 +934,49 @@ namespace emp { /// Perform a Boolean NOT on this BitSet and return the result. BitSet NOT() const { BitSet out_set(*this); - for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = ~bit_set[i]; - if (LAST_BIT > 0) out_set.bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + out_set.NOT_SELF(); return out_set; } /// Perform a Boolean AND with a second BitSet and return the result. BitSet AND(const BitSet & set2) const { BitSet out_set(*this); - for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = bit_set[i] & set2.bit_set[i]; + out_set.AND_SELF( set2 ); return out_set; } /// Perform a Boolean OR with a second BitSet and return the result. BitSet OR(const BitSet & set2) const { BitSet out_set(*this); - for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = bit_set[i] | set2.bit_set[i]; + out_set.OR_SELF( set2 ); return out_set; } /// Perform a Boolean NAND with a second BitSet and return the result. BitSet NAND(const BitSet & set2) const { BitSet out_set(*this); - for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = ~(bit_set[i] & set2.bit_set[i]); - if (LAST_BIT > 0) out_set.bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + out_set.NAND_SELF( set2 ); return out_set; } /// Perform a Boolean NOR with a second BitSet and return the result. BitSet NOR(const BitSet & set2) const { BitSet out_set(*this); - for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = ~(bit_set[i] | set2.bit_set[i]); - if (LAST_BIT > 0) out_set.bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + out_set.NOR_SELF( set2 ); return out_set; } /// Perform a Boolean XOR with a second BitSet and return the result. BitSet XOR(const BitSet & set2) const { BitSet out_set(*this); - for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = bit_set[i] ^ set2.bit_set[i]; + out_set.XOR_SELF( set2 ); return out_set; } /// Perform a Boolean EQU with a second BitSet and return the result. BitSet EQU(const BitSet & set2) const { BitSet out_set(*this); - for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = ~(bit_set[i] ^ set2.bit_set[i]); - if (LAST_BIT > 0) out_set.bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + out_set.EQU_SELF( set2 ); return out_set; } From 50731793b295300ced1fa9d9be6c1ad6ad304202 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 18 Jan 2021 00:23:00 -0500 Subject: [PATCH 009/228] Mark constexpr --- include/emp/bits/BitSet.hpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/include/emp/bits/BitSet.hpp b/include/emp/bits/BitSet.hpp index 73922eb3a3..c623d81827 100644 --- a/include/emp/bits/BitSet.hpp +++ b/include/emp/bits/BitSet.hpp @@ -984,7 +984,9 @@ namespace emp { /// Perform a Boolean NOT on this BitSet, store result here, and return this object. BitSet & NOT_SELF() { for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~bit_set[i]; - if (LAST_BIT > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + if constexpr (LAST_BIT > 0) { + bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + } return *this; } @@ -1003,14 +1005,18 @@ namespace emp { /// Perform a Boolean NAND with a second BitSet, store result here, and return this object. BitSet & NAND_SELF(const BitSet & set2) { for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~(bit_set[i] & set2.bit_set[i]); - if (LAST_BIT > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + if constexpr (LAST_BIT > 0) { + bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + } return *this; } /// Perform a Boolean NOR with a second BitSet, store result here, and return this object. BitSet & NOR_SELF(const BitSet & set2) { for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~(bit_set[i] | set2.bit_set[i]); - if (LAST_BIT > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + if constexpr (LAST_BIT > 0) { + bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + } return *this; } @@ -1023,7 +1029,9 @@ namespace emp { /// Perform a Boolean EQU with a second BitSet, store result here, and return this object. BitSet & EQU_SELF(const BitSet & set2) { for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~(bit_set[i] ^ set2.bit_set[i]); - if (LAST_BIT > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + if constexpr (LAST_BIT > 0) { + bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + } return *this; } From c3b5a33eb3371d1b6ee770d15aab896282538bf5 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 18 Jan 2021 00:23:17 -0500 Subject: [PATCH 010/228] Implement and test OptimizedApproxDualStreakMetric --- include/emp/matching/matchbin_metrics.hpp | 76 +++++++++++++++++++++++ tests/matching/matchbin_utils.cpp | 23 +++++++ 2 files changed, 99 insertions(+) diff --git a/include/emp/matching/matchbin_metrics.hpp b/include/emp/matching/matchbin_metrics.hpp index 47b5ce0043..5fc6f775bf 100644 --- a/include/emp/matching/matchbin_metrics.hpp +++ b/include/emp/matching/matchbin_metrics.hpp @@ -493,6 +493,82 @@ namespace emp { }; + /// Matches based on longest streaks of equal and unequal bits in two bitsets. + /// This implementation uses Incorrect Math from Downing's Intelligence + /// Emerging. + /// Adapted from Downing, Keith L. Intelligence emerging: adaptivity and search in evolving neural systems. MIT Press, 2015. + template + struct OptimizedApproxDualStreakMetric : public BaseMetric< + emp::BitSet, + emp::BitSet + > { + + using query_t = emp::BitSet; + using tag_t = emp::BitSet; + + size_t dim() const override { return 1; } + + size_t width() const override { return Width; } + + std::string name() const override { + return emp::to_string(Width) + "-bit " + base(); + } + + std::string base() const override { return "Approx Dual Streak Metric"; } + + double operator()(const query_t& a, const tag_t& b) const override { + return calculate(a, b); + } + + // TODO move to math utils + // adapted from https://stackoverflow.com/a/39949009 + inline double static fastDivide(const double y, const double x) { + // calculates y/x + union { + double dbl; + unsigned long long ull; + } u; + u.dbl = x; // x = x + u.ull = ( 0xbfcdd6a18f6a6f52ULL - u.ull ) >> (unsigned char)1; + // pow( x, -0.5 ) + u.dbl *= u.dbl; // pow( pow(x,-0.5), 2 ) = pow( x, -1 ) = 1.0/x + return u.dbl * y; // (1.0/x) * y = y/x + } + + // TODO move to math utils + inline static double customPow(const size_t k) { + // lookup table provides a big speedup in runtime MAM + static const emp::array lookup = [](){ + emp::array res; + res[0] = 1.0; + for ( size_t i = 1; i <= Width; ++i ) res[i] = res[i - 1] * 0.5; + return res; + }(); + return lookup[ k ]; + } + + inline static double calculate(const query_t& a, const tag_t& b) { + const emp::BitSet bs = a^b; + const size_t same = (~bs).LongestSegmentOnes(); + const size_t different = bs.LongestSegmentOnes(); + const double ps = ProbabilityKBitSequence(same); + const double pd = ProbabilityKBitSequence(different); + + const double match = fastDivide(pd, ps + pd); + // Note: here, close match score > poor match score + // However, we're computing distance where smaller means closer match. + // Note also: 0.0 < match < 1.0 + // So, we subtract match score from 1.0 to get a distance. + return 1.0 - match; + } + + inline static double ProbabilityKBitSequence(const size_t k) { + // Bad Math + return static_cast(Width - k + 1) * customPow(k); + } + + }; + /// Compute the probability of K or more heads in a row out of N flips. /// Adapted from https://www.askamathematician.com/2010/07/q-whats-the-chance-of-getting-a-run-of-k-successes-in-n-bernoulli-trials-why-use-approximations-when-the-exact-answer-is-known/ /// Helper class for exact streak metrics diff --git a/tests/matching/matchbin_utils.cpp b/tests/matching/matchbin_utils.cpp index 714917ca48..7839be1c49 100644 --- a/tests/matching/matchbin_utils.cpp +++ b/tests/matching/matchbin_utils.cpp @@ -84,6 +84,29 @@ TEST_CASE("Test matchbin_utils", "[matchbin]") REQUIRE(metric(a,b) >= 0.0); } + } + + // test OptimizedApproxDualStreakMetric + { + emp::OptimizedApproxDualStreakMetric<4> metric; + + REQUIRE( metric({0,0,0,0},{0,0,0,0}) < metric({0,0,0,0},{1,0,0,0}) ); + REQUIRE( metric({0,0,0,0},{0,0,0,1}) < metric({0,0,0,0},{0,1,0,0}) ); + REQUIRE( metric({0,0,0,0},{1,1,0,1}) < metric({0,0,0,0},{1,1,1,1}) ); + REQUIRE( metric({0,0,0,0},{1,1,0,0}) < metric({0,0,0,0},{1,1,0,1}) ); + REQUIRE( metric({0,0,0,0},{1,1,0,1}) < metric({0,0,0,0},{1,1,1,0}) ); + REQUIRE( metric({0,0,0,0},{0,0,1,1}) > metric({0,0,0,0},{0,0,1,0}) ); + + emp::Random rand(1); + for (size_t i = 0; i < 1000; ++i) { + emp::BitSet<4> a(rand); + emp::BitSet<4> b(rand); + // optimizations aren't free ¯\_(ツ)_/¯, approximation okay + REQUIRE(metric(a,b) <= 1.05); + REQUIRE(metric(a,b) >= -0.05); + } + + } // test ExactSingleStreakMetric { From dcf098bb101241f29e9865876502131cb2a7cf3f Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 18 Jan 2021 00:23:46 -0500 Subject: [PATCH 011/228] Bugfix: actuall test ApproxDualStreakMetric --- tests/matching/matchbin_utils.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/matching/matchbin_utils.cpp b/tests/matching/matchbin_utils.cpp index 7839be1c49..f03980e909 100644 --- a/tests/matching/matchbin_utils.cpp +++ b/tests/matching/matchbin_utils.cpp @@ -67,7 +67,8 @@ TEST_CASE("Test matchbin_utils", "[matchbin]") } // test ApproxDualStreakMetric - emp::ExactDualStreakMetric<4> metric; + { + emp::ApproxDualStreakMetric<4> metric; REQUIRE( metric({0,0,0,0},{0,0,0,0}) < metric({0,0,0,0},{1,0,0,0}) ); REQUIRE( metric({0,0,0,0},{0,0,0,1}) < metric({0,0,0,0},{0,1,0,0}) ); From f0e0cf609fa34aa4c327f1028045590e2d58a5e5 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 18 Jan 2021 17:06:37 -0500 Subject: [PATCH 012/228] Add fastDivide profiling result --- include/emp/matching/matchbin_metrics.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/include/emp/matching/matchbin_metrics.hpp b/include/emp/matching/matchbin_metrics.hpp index 5fc6f775bf..a5e187f99a 100644 --- a/include/emp/matching/matchbin_metrics.hpp +++ b/include/emp/matching/matchbin_metrics.hpp @@ -522,6 +522,7 @@ namespace emp { // TODO move to math utils // adapted from https://stackoverflow.com/a/39949009 + // profiling result https://quick-bench.com/q/-c32FIZ0rRRnJCM2PNp-Nq_vq1E inline double static fastDivide(const double y, const double x) { // calculates y/x union { From 6e6d9c0e9693adf53e09d1a3920f0e23d1363148 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Sun, 24 Jan 2021 23:06:02 -0500 Subject: [PATCH 013/228] Don't fail asserts for raw scores outside bounds --- include/emp/matching/regulators/PlusCountdownRegulator.hpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/include/emp/matching/regulators/PlusCountdownRegulator.hpp b/include/emp/matching/regulators/PlusCountdownRegulator.hpp index 48d5134db3..3933eee71a 100644 --- a/include/emp/matching/regulators/PlusCountdownRegulator.hpp +++ b/include/emp/matching/regulators/PlusCountdownRegulator.hpp @@ -54,9 +54,12 @@ struct PlusCountdownRegulator { 0.0f, 1.0f ); - emp_assert(state <= 0.0f || res >= raw_score || std::isnan(state), + emp_assert(state <= 0.0f || res >= raw_score + || raw_score > 1.0f || std::isnan(state), state, res, raw_score); - emp_assert(state >= 0.0f || res <= raw_score || std::isnan(state), + emp_assert( + state >= 0.0f || res <= raw_score + || raw_score < 0.0f || std::isnan(state), state, res, raw_score); emp_assert( (res >= 0.0f && res <= 1.0f) || std::isnan(state), res); From 47da80e05d4145a0a2cf9bcc67922b15c1c73924 Mon Sep 17 00:00:00 2001 From: Katherine Perry Date: Mon, 25 Jan 2021 12:21:40 -0500 Subject: [PATCH 014/228] Describe X11 Display Set up --- doc/dev/getting-started.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/doc/dev/getting-started.md b/doc/dev/getting-started.md index 9b85b36ca4..b93cf82486 100644 --- a/doc/dev/getting-started.md +++ b/doc/dev/getting-started.md @@ -314,3 +314,20 @@ recipe: git status ## sanity check git push ## should fail git push --force ## override what's in GitHub's copy of the branch/pull request + +## How to Set Up X11 Display for SFML on Windows: +1. Download MobaXterm +2. Open a WSL-Ubuntu Session +3. Hover over the XServer icon at the top right of the screen and note the DISPLAY value (X.X.X.X:X.X) +4. Type at the command prompt: export DISPLAY=X.X.X.X:X.X +5. Run your desired programs! + +## How to Set Up X11 Display for SFML on HPCC: +adapted from https://wiki.hpcc.msu.edu/display/~colbrydi@msu.edu/2013/10 +1. specify display, start the Xvfb server, and save the process ID +2. Run the following commands +- export DISPLAY=":${SLURM_JOB_ID-1}" +- rm -f "/tmp/.X11-unix/X${SLURM_JOB_ID-1}" +- rm -f "/tmp/.X${SLURM_JOB_ID-1}-lock" +- Xvfb "${DISPLAY}" -auth /dev/null/ & +- export XVFB_PID=$! From d50f11ccfe81ba18e99bd856f0860097dc5a9443 Mon Sep 17 00:00:00 2001 From: Katherine Perry Date: Mon, 25 Jan 2021 12:31:19 -0500 Subject: [PATCH 015/228] Fix X11 walkthrough format --- doc/dev/getting-started.md | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/doc/dev/getting-started.md b/doc/dev/getting-started.md index b93cf82486..9ce5db35c2 100644 --- a/doc/dev/getting-started.md +++ b/doc/dev/getting-started.md @@ -319,15 +319,19 @@ recipe: 1. Download MobaXterm 2. Open a WSL-Ubuntu Session 3. Hover over the XServer icon at the top right of the screen and note the DISPLAY value (X.X.X.X:X.X) -4. Type at the command prompt: export DISPLAY=X.X.X.X:X.X +4. Type at the command prompt: + + export DISPLAY=X.X.X.X:X.X + 5. Run your desired programs! ## How to Set Up X11 Display for SFML on HPCC: adapted from https://wiki.hpcc.msu.edu/display/~colbrydi@msu.edu/2013/10 1. specify display, start the Xvfb server, and save the process ID 2. Run the following commands -- export DISPLAY=":${SLURM_JOB_ID-1}" -- rm -f "/tmp/.X11-unix/X${SLURM_JOB_ID-1}" -- rm -f "/tmp/.X${SLURM_JOB_ID-1}-lock" -- Xvfb "${DISPLAY}" -auth /dev/null/ & -- export XVFB_PID=$! + + export DISPLAY=":${SLURM_JOB_ID-1}" + rm -f "/tmp/.X11-unix/X${SLURM_JOB_ID-1}" + rm -f "/tmp/.X${SLURM_JOB_ID-1}-lock" + Xvfb "${DISPLAY}" -auth /dev/null/ & + export XVFB_PID=$! From 3553756feddbbaf3c1e6649a155fcbfa2c5dae13 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Tue, 26 Jan 2021 12:52:30 -0500 Subject: [PATCH 016/228] Add clamp leeway to plus coundown regulator --- .../regulators/PlusCountdownRegulator.hpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/include/emp/matching/regulators/PlusCountdownRegulator.hpp b/include/emp/matching/regulators/PlusCountdownRegulator.hpp index 3933eee71a..7cfb7366c7 100644 --- a/include/emp/matching/regulators/PlusCountdownRegulator.hpp +++ b/include/emp/matching/regulators/PlusCountdownRegulator.hpp @@ -19,7 +19,7 @@ namespace emp { -template +template > struct PlusCountdownRegulator { using set_t = float; @@ -29,6 +29,9 @@ struct PlusCountdownRegulator { static constexpr float slope = ( static_cast(Slope::num) / static_cast(Slope::den) ); + static constexpr float clamp_leeway = ( + static_cast(ClampLeeway::num) / static_cast(ClampLeeway::den) + ); // positive = downregulated // negative = upregulated @@ -51,8 +54,8 @@ struct PlusCountdownRegulator { float operator()(const float raw_score) const { const float res = std::clamp( slope * state + raw_score, - 0.0f, - 1.0f + -clamp_leeway, + 1.0f + clamp_leeway ); emp_assert(state <= 0.0f || res >= raw_score || raw_score > 1.0f || std::isnan(state), @@ -61,8 +64,10 @@ struct PlusCountdownRegulator { state >= 0.0f || res <= raw_score || raw_score < 0.0f || std::isnan(state), state, res, raw_score); - emp_assert( (res >= 0.0f && res <= 1.0f) || std::isnan(state), - res); + emp_assert( + (res >= -clamp_leeway && res <= 1.0f + clamp_leeway) || std::isnan(state), + res + ); return res; } From 10855ebfb1f77a73d385f9cf80bfd41e3eef8ed0 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Thu, 28 Jan 2021 02:04:15 -0500 Subject: [PATCH 017/228] Patch for Emscripten >1.38.48 --- include/emp/tools/keyname_utils.hpp | 17 ++-- include/emp/web/Attributes.hpp | 8 +- include/emp/web/Div.hpp | 2 +- include/emp/web/JSWrap.hpp | 38 ++++----- include/emp/web/KeypressManager.hpp | 2 +- include/emp/web/Listeners.hpp | 6 +- include/emp/web/NodeDomShim.hpp | 2 +- include/emp/web/Style.hpp | 8 +- include/emp/web/Table.hpp | 2 +- include/emp/web/TextArea.hpp | 2 +- include/emp/web/TextFeed.hpp | 4 +- include/emp/web/UrlParams.hpp | 2 +- include/emp/web/Widget.hpp | 2 +- include/emp/web/_MochaTestRunner.hpp | 18 ++-- include/emp/web/d3/axis.hpp | 32 +++---- include/emp/web/d3/dataset.hpp | 12 +-- include/emp/web/d3/histogram.hpp | 14 ++-- include/emp/web/d3/layout.hpp | 8 +- include/emp/web/d3/scales.hpp | 42 +++++----- include/emp/web/d3/selection.hpp | 116 +++++++++++++------------- include/emp/web/d3/svg_shapes.hpp | 68 +++++++-------- include/emp/web/d3/utils.hpp | 14 ++-- include/emp/web/d3/visualizations.hpp | 22 ++--- include/emp/web/events.hpp | 4 +- include/emp/web/init.hpp | 16 ++-- include/emp/web/js_utils.hpp | 56 ++++++------- 26 files changed, 263 insertions(+), 254 deletions(-) diff --git a/include/emp/tools/keyname_utils.hpp b/include/emp/tools/keyname_utils.hpp index 7d5cf467d9..e5a920de09 100644 --- a/include/emp/tools/keyname_utils.hpp +++ b/include/emp/tools/keyname_utils.hpp @@ -15,15 +15,17 @@ #define EMP_KEY_NAME_UTILS_H #include +#include #include #include #include -#ifndef __EMSCRIPTEN__ -#include -#else + +#if defined(__EMSCRIPTEN__) \ + && __EMSCRIPTEN_major__ == 1 && __EMSCRIPTEN_minor__ <= 38 #include +#else +#include #endif -#include #include "../base/assert.hpp" #include "../base/vector.hpp" @@ -78,10 +80,11 @@ namespace emp::keyname { unpack_t res; const auto kv_strs = emp::slice( -#ifndef __EMSCRIPTEN__ - std::filesystem::path(filename).filename().string(), // get basename -#else +#if defined(__EMSCRIPTEN__) \ + && __EMSCRIPTEN_major__ == 1 && __EMSCRIPTEN_minor__ <= 38 std::experimental::filesystem::path(filename).filename().string(), // get basename +#else + std::filesystem::path(filename).filename().string(), // get basename #endif '+' ); diff --git a/include/emp/web/Attributes.hpp b/include/emp/web/Attributes.hpp index c50f4442ef..0a3b92616c 100644 --- a/include/emp/web/Attributes.hpp +++ b/include/emp/web/Attributes.hpp @@ -104,7 +104,7 @@ namespace web { // Find the current object only once. #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); emp_i.cur_obj = $( '#' + id ); }, widget_id.c_str()); @@ -113,7 +113,7 @@ namespace web { for (auto attr_pair : settings) { if (attr_pair.second == "") continue; // Ignore empty entries. #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var name = UTF8ToString($0); var value = UTF8ToString($1); emp_i.cur_obj.attr( name, value); @@ -130,7 +130,7 @@ namespace web { emp_assert(Has(setting)); #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); var setting = UTF8ToString($1); var value = UTF8ToString($2); @@ -146,7 +146,7 @@ namespace web { static void Apply(const std::string & widget_id, const std::string & setting, const std::string & value) { #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); var setting = UTF8ToString($1); var value = UTF8ToString($2); diff --git a/include/emp/web/Div.hpp b/include/emp/web/Div.hpp index 01c68d684a..5aad8c9ac1 100644 --- a/include/emp/web/Div.hpp +++ b/include/emp/web/Div.hpp @@ -278,7 +278,7 @@ namespace web { // float scroll_frac = ((float) (hardware->GetIP() - 3)) / (float) hardware->GetNumInsts(); // if (scroll_frac < 0.0) scroll_frac = 0.0; - // MAIN_THREAD_EM_ASM({ + // MAIN_THREAD_EMP_ASM({ // var code = UTF8ToString($0); // var code_obj = document.getElementById("code"); // code_obj.innerHTML = code; diff --git a/include/emp/web/JSWrap.hpp b/include/emp/web/JSWrap.hpp index 46f3cac0b1..5c942d7f63 100644 --- a/include/emp/web/JSWrap.hpp +++ b/include/emp/web/JSWrap.hpp @@ -82,7 +82,7 @@ namespace emp { if constexpr ( is_introspective_tuple() ) { using JSON_TYPE = T; //std::cout << "Loading ARGNID: " << ARG_ID << std::endl; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.object_queue = []; emp_i.curr_obj = emp_i.cb_args[$0]; }, ARG_ID); @@ -102,12 +102,12 @@ namespace emp { } template static void LoadArg(emp::array & arg_var){ - MAIN_THREAD_EM_ASM({emp_i.__outgoing_array = emp_i.cb_args[$0];}, ARG_ID); + MAIN_THREAD_EMP_ASM({emp_i.__outgoing_array = emp_i.cb_args[$0];}, ARG_ID); pass_array_to_cpp(arg_var); } template static void LoadArg(emp::vector & arg_var){ - MAIN_THREAD_EM_ASM({emp_i.__outgoing_array = emp_i.cb_args[$0];}, ARG_ID); + MAIN_THREAD_EMP_ASM({emp_i.__outgoing_array = emp_i.cb_args[$0];}, ARG_ID); pass_vector_to_cpp(arg_var); } @@ -188,7 +188,7 @@ namespace emp { LoadArg(JSON_TYPE & arg_var, std::string var) { //std::cout << "Loading " << var << " ARGNID: " << ARG_ID << std::endl; //LoadArg(std::get(arg_var.emp__tuple_body)); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.object_queue.push(emp_i.curr_obj); emp_i.curr_obj = emp_i.curr_obj[UTF8ToString($0)]; }, var.c_str()); @@ -209,7 +209,7 @@ namespace emp { template struct LoadTuple { static void LoadJSDataArg(JSON_TYPE & arg_var) { - MAIN_THREAD_EM_ASM({emp_i.curr_obj = emp_i.object_queue.pop();}); + MAIN_THREAD_EMP_ASM({emp_i.curr_obj = emp_i.object_queue.pop();}); } }; @@ -218,25 +218,25 @@ namespace emp { // Helper functions to individually store return values to JS // static void StoreReturn(const bool & ret_var) { - // MAIN_THREAD_EM_ASM({ emp_i.cb_return = $0; }, ret_var); + // MAIN_THREAD_EMP_ASM({ emp_i.cb_return = $0; }, ret_var); // } static void StoreReturn(const int & ret_var) { - MAIN_THREAD_EM_ASM({ emp_i.cb_return = $0; }, ret_var); + MAIN_THREAD_EMP_ASM({ emp_i.cb_return = $0; }, ret_var); } static void StoreReturn(const double & ret_var) { - MAIN_THREAD_EM_ASM({ emp_i.cb_return = $0; }, ret_var); + MAIN_THREAD_EMP_ASM({ emp_i.cb_return = $0; }, ret_var); } static void StoreReturn(const std::string & ret_var) { - MAIN_THREAD_EM_ASM({ emp_i.cb_return = UTF8ToString($0); }, ret_var.c_str()); + MAIN_THREAD_EMP_ASM({ emp_i.cb_return = UTF8ToString($0); }, ret_var.c_str()); } template static void StoreReturn(const emp::array & ret_var) { pass_array_to_javascript(ret_var); - MAIN_THREAD_EM_ASM({ emp_i.cb_return = emp_i.__incoming_array; }); + MAIN_THREAD_EMP_ASM({ emp_i.cb_return = emp_i.__incoming_array; }); } /// If the return type has a personalized function to handle the return, use it! @@ -248,22 +248,22 @@ namespace emp { /// Helper functions to store values inside JSON objects static void StoreReturn(const int & ret_var, std::string var) { - MAIN_THREAD_EM_ASM({ emp_i.curr_obj[UTF8ToString($1)] = $0; }, ret_var, var.c_str()); + MAIN_THREAD_EMP_ASM({ emp_i.curr_obj[UTF8ToString($1)] = $0; }, ret_var, var.c_str()); } static void StoreReturn(const double & ret_var, std::string var) { - MAIN_THREAD_EM_ASM({ emp_i.curr_obj[UTF8ToString($1)] = $0; }, ret_var, var.c_str()); + MAIN_THREAD_EMP_ASM({ emp_i.curr_obj[UTF8ToString($1)] = $0; }, ret_var, var.c_str()); } static void StoreReturn(const std::string & ret_var, std::string var) { - MAIN_THREAD_EM_ASM({ emp_i.curr_obj[UTF8ToString($1)] = UTF8ToString($0); } + MAIN_THREAD_EMP_ASM({ emp_i.curr_obj[UTF8ToString($1)] = UTF8ToString($0); } , ret_var.c_str(), var.c_str()); } template static void StoreReturn(const emp::array & ret_var, std::string var) { pass_array_to_javascript(ret_var); - MAIN_THREAD_EM_ASM({ emp_i.curr_obj[UTF8ToString($0)] = emp_i.__incoming_array;}, var.c_str()); + MAIN_THREAD_EMP_ASM({ emp_i.curr_obj[UTF8ToString($0)] = emp_i.__incoming_array;}, var.c_str()); } template @@ -273,7 +273,7 @@ namespace emp { template static typename std::enable_if::type StoreReturn(const RETURN_TYPE & ret_var) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.cb_return = {}; emp_i.object_queue = []; emp_i.curr_obj = emp_i.cb_return; @@ -287,7 +287,7 @@ namespace emp { template static emp::sfinae_decoy StoreReturn(const RETURN_TYPE & ret_var, std::string var) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.curr_obj[UTF8ToString($0)] = {}; emp_i.object_queue.push(emp_i.curr_obj); emp_i.curr_obj = emp_i.curr_obj[UTF8ToString($0)]; @@ -309,7 +309,7 @@ namespace emp { template struct StoreTuple { static void StoreJSDataArg(const JSON_TYPE & ret_var) { - MAIN_THREAD_EM_ASM({emp_i.curr_obj = emp_i.object_queue.pop();}); + MAIN_THREAD_EMP_ASM({emp_i.curr_obj = emp_i.object_queue.pop();}); } }; @@ -476,7 +476,7 @@ namespace emp { callback_array.push_back(new_cb); if (fun_name != "") { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var fun_name = UTF8ToString($1); emp[fun_name] = function() { emp_i.cb_args = []; @@ -608,7 +608,7 @@ void empCppCallback(const size_t cb_id) { }); - emscripten_async_queue_on_thread_( + emscripten_dispatch_to_thread( proxy_pthread_id, EM_FUNC_SIG_VI, // VI = no return value, one argument (void*) &empDoCppCallback, diff --git a/include/emp/web/KeypressManager.hpp b/include/emp/web/KeypressManager.hpp index 446d1308e9..80b0339c65 100644 --- a/include/emp/web/KeypressManager.hpp +++ b/include/emp/web/KeypressManager.hpp @@ -82,7 +82,7 @@ namespace web { std::bind( &KeypressManager::DoCallback, this, _1 ); callback_id = JSWrap( callback_fun ); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ document.addEventListener('keydown', function(evt) { var is_used = emp.Callback($0, evt); if (is_used == 1) evt.preventDefault(); diff --git a/include/emp/web/Listeners.hpp b/include/emp/web/Listeners.hpp index 1c96ac2c70..20eedba5a6 100644 --- a/include/emp/web/Listeners.hpp +++ b/include/emp/web/Listeners.hpp @@ -83,7 +83,7 @@ namespace web { void Apply(const std::string & widget_id) { // Find the current object only once. #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); emp_i.cur_obj = $( '#' + id ); }, widget_id.c_str()); @@ -91,7 +91,7 @@ namespace web { for (auto event_pair : listeners) { #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var name = UTF8ToString($0); emp_i.cur_obj.on( name, function(evt) { emp.Callback($1, evt); } ); }, event_pair.first.c_str(), event_pair.second); @@ -108,7 +108,7 @@ namespace web { const std::string event_name, size_t fun_id) { #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); var name = UTF8ToString($1); $( '#' + id ).on( name, function(evt) { emp.Callback($2, evt); } ); diff --git a/include/emp/web/NodeDomShim.hpp b/include/emp/web/NodeDomShim.hpp index 4c997aaa76..265485f20e 100644 --- a/include/emp/web/NodeDomShim.hpp +++ b/include/emp/web/NodeDomShim.hpp @@ -23,7 +23,7 @@ namespace web { struct NodeDomShim { - NodeDomShim(const emp::vector& init_divs={}) { MAIN_THREAD_EM_ASM( + NodeDomShim(const emp::vector& init_divs={}) { MAIN_THREAD_EMP_ASM( // setup jsdom var jsdom = require("jsdom"); diff --git a/include/emp/web/Style.hpp b/include/emp/web/Style.hpp index 6abf478806..4dc4a05746 100644 --- a/include/emp/web/Style.hpp +++ b/include/emp/web/Style.hpp @@ -108,7 +108,7 @@ namespace web { // Find the current object only once. #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); emp_i.cur_obj = $( '#' + id ); }, widget_id.c_str()); @@ -117,7 +117,7 @@ namespace web { for (auto css_pair : settings) { if (css_pair.second == "") continue; // Ignore empty entries. #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var name = UTF8ToString($0); var value = UTF8ToString($1); emp_i.cur_obj.css( name, value); @@ -148,7 +148,7 @@ namespace web { emp_assert(Has(setting)); #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); var setting = UTF8ToString($1); var value = UTF8ToString($2); @@ -164,7 +164,7 @@ namespace web { static void Apply(const std::string & widget_id, const std::string & setting, const std::string & value) { #ifdef __EMSCRIPTEN__ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); var setting = UTF8ToString($1); var value = UTF8ToString($2); diff --git a/include/emp/web/Table.hpp b/include/emp/web/Table.hpp index fcca6d878e..084bf6f4d0 100644 --- a/include/emp/web/Table.hpp +++ b/include/emp/web/Table.hpp @@ -211,7 +211,7 @@ namespace web { if (state == Widget::ACTIVE) { // Create a span tag to anchor the new widget. std::string cell_id = emp::to_string(id, '_', r, '_', c); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ parent_id = UTF8ToString($0); child_id = UTF8ToString($1); $('#' + parent_id).append(''); diff --git a/include/emp/web/TextArea.hpp b/include/emp/web/TextArea.hpp index 1f31e370be..18800b300f 100644 --- a/include/emp/web/TextArea.hpp +++ b/include/emp/web/TextArea.hpp @@ -84,7 +84,7 @@ namespace web { } void UpdateText(const std::string & in_string) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var id = UTF8ToString($0); var text = UTF8ToString($1); $('#' + id).val(text); diff --git a/include/emp/web/TextFeed.hpp b/include/emp/web/TextFeed.hpp index cbc2378114..7bfde95544 100644 --- a/include/emp/web/TextFeed.hpp +++ b/include/emp/web/TextFeed.hpp @@ -113,7 +113,7 @@ namespace web { const std::string to_append = strings.empty() ? text : (separator + text); // ideally, we would use MAIN_THREAD_ASYNC_EM_ASM but that seems to // garble string arguments (as of emscripten 1.38.48) - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var content = document.createElement('span'); content.innerHTML = UTF8ToString($1); $( `#${UTF8ToString($0)}` ).append( content ); @@ -132,7 +132,7 @@ namespace web { } // prevent runaway async execution! do this every N? - // MAIN_THREAD_EM_ASM({ + // MAIN_THREAD_EMP_ASM({ // ()=>{}; // nop // }); diff --git a/include/emp/web/UrlParams.hpp b/include/emp/web/UrlParams.hpp index fcc54b048b..6cfbbc6359 100644 --- a/include/emp/web/UrlParams.hpp +++ b/include/emp/web/UrlParams.hpp @@ -24,7 +24,7 @@ namespace web { emp::vector> incoming; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ const params = new URLSearchParams(location.search); emp_i.__outgoing_array = Array.from( params.entries() diff --git a/include/emp/web/Widget.hpp b/include/emp/web/Widget.hpp index bc16ef9619..87ceff8654 100644 --- a/include/emp/web/Widget.hpp +++ b/include/emp/web/Widget.hpp @@ -362,7 +362,7 @@ namespace web { else ss << ""; // Now do the replacement. - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var widget_id = UTF8ToString($0); var out_html = UTF8ToString($1); $('#' + widget_id).replaceWith(out_html); diff --git a/include/emp/web/_MochaTestRunner.hpp b/include/emp/web/_MochaTestRunner.hpp index f33d81fb45..7b33f34245 100644 --- a/include/emp/web/_MochaTestRunner.hpp +++ b/include/emp/web/_MochaTestRunner.hpp @@ -54,7 +54,7 @@ namespace web { res.first->second.Activate(); } - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ jQuery.ready(); }); @@ -75,9 +75,9 @@ namespace web { void Require(bool result, const std::string & msg="") { if (result) return; if (msg == "") { - MAIN_THREAD_EM_ASM({ chai.assert.fail(); }); + MAIN_THREAD_EMP_ASM({ chai.assert.fail(); }); } else { - MAIN_THREAD_EM_ASM({ chai.assert.fail(UTF8ToString($0)); }, msg.c_str()); + MAIN_THREAD_EMP_ASM({ chai.assert.fail(UTF8ToString($0)); }, msg.c_str()); } } @@ -193,7 +193,7 @@ namespace web { auto & test_name = cur_runner.test_name; // Queue cleanup for this test. - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ const test_name = UTF8ToString($0); // Queue cleanup for this test describe(`Cleanup ${test_name}`, function() { @@ -207,7 +207,7 @@ namespace web { // otherwise, queue up a cleanup if (test_runners.size() > 1) { auto & next_test_name = this->test_runners[1].test_name; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ const next_test_name = UTF8ToString($0); // Queue up next test describe(`Queue ${next_test_name}` , function() { @@ -217,7 +217,7 @@ namespace web { }); }, next_test_name.c_str()); } else { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ describe("Finished running tests.", function() { it("should cleanup test manager", function() { emp.CleanupTestRunners(); @@ -243,7 +243,7 @@ namespace web { // Did the error count increase after running this test? If so, force failure. if (post_test_error_cnt != cur_runner.before_test_error_count) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ const test_name = UTF8ToString($0); describe(`${test_name} failed`, function() { it("failed at least one C++ unit test", function() { @@ -289,7 +289,7 @@ namespace web { // container div where test HTML components can live. // Remember, Karma is generating our HTML file, so we need to attach any // pre-requisite HTML using javascript. - MAIN_THREAD_EM_ASM( + MAIN_THREAD_EMP_ASM( { const id = UTF8ToString($0); $("body").append(`
`); @@ -299,7 +299,7 @@ namespace web { // Before each test, we want to clear out our container div OnBeforeEachTest([id](){ - MAIN_THREAD_EM_ASM( + MAIN_THREAD_EMP_ASM( { const id = UTF8ToString($0); $(`#${id}`).empty(); diff --git a/include/emp/web/d3/axis.hpp b/include/emp/web/d3/axis.hpp index f6069e603d..a9f160d55d 100644 --- a/include/emp/web/d3/axis.hpp +++ b/include/emp/web/d3/axis.hpp @@ -49,24 +49,24 @@ namespace D3 { this->label = label; this->orientation = type; if (type == "left") { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = d3.axisLeft(js.objects[$1]); }, this->id, scale.GetID()); } else if (type == "right") { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = d3.axisRight(js.objects[$1]); }, this->id, scale.GetID()); } else if (type == "bottom") { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = d3.axisBottom(js.objects[$1]); }, this->id, scale.GetID()); } else if (type == "top") { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = d3.axisTop(js.objects[$1]); }, this->id, scale.GetID()); } else { std::cout << "WARNING: Invalid type given to axis constructor" << std::endl; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = d3.axisBottom(js.objects[$1]); }, this->id, scale.GetID()); } @@ -83,7 +83,7 @@ namespace D3 { emp::remove_whitespace(dom_id); dom_id += "_axis"; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var axis_range = js.objects[$0].scale().range(); js.objects[$3] = js.objects[$1].append("g"); @@ -137,7 +137,7 @@ namespace D3 { // technically the contents of the selection are changed template Axis& ApplyAxis(const SelectionOrTransition & selection) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$1].call(js.objects[$0]); }, this->id, selection.GetID()); return *this; @@ -149,7 +149,7 @@ namespace D3 { Axis& SetScale(SCALE_TYPE & scale) { this->scale = scale; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].scale(js.objects[$1]); }, this->id, scale.GetID()); return *this; @@ -182,35 +182,35 @@ namespace D3 { Axis& SetTickValues(emp::array values) { emp::pass_array_to_javascript(values); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].tickValues(emp_i.__incoming_array); }, this->id); return *this; } Axis& SetTickSize(float size) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].tickSize($1); }, this->id, size); return *this; } Axis& SetTickSizeInner(float size) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].tickSizeInner($1); }, this->id, size); return *this; } Axis& SetTickSizeOuter(float size) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].tickSizeOuter($1); }, this->id, size); return *this; } Axis& SetTickPadding(int padding) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].tickPadding($1); }, this->id, padding); return *this; @@ -218,7 +218,7 @@ namespace D3 { /// Set the number of ticks along the axis Axis& SetTicks(int count){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].ticks($1); }, this->id, count); return *this; @@ -228,7 +228,7 @@ namespace D3 { /// following /// [the rules for d3.format()](https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format) Axis& SetTickFormat(std::string format) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].tickFormat(d3.format(UTF8ToString($1))); }, this->id, format.c_str()); return *this; @@ -255,7 +255,7 @@ namespace D3 { x_axis.Draw(selection); y_axis.Draw(selection); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ x_range = js.objects[$0].scale().range(); y_range = js.objects[$1].scale().range(); diff --git a/include/emp/web/d3/dataset.hpp b/include/emp/web/d3/dataset.hpp index dd0e184fa7..72fda86dd5 100644 --- a/include/emp/web/d3/dataset.hpp +++ b/include/emp/web/d3/dataset.hpp @@ -26,7 +26,7 @@ namespace D3 { Dataset(int i) : D3_Base(i) {;}; void CaptureIncoming(){ - MAIN_THREAD_EM_ASM({js.objects[$0] = emp.__incoming_data;}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = emp.__incoming_data;}, this->id); }; template @@ -68,11 +68,11 @@ namespace D3 { JSONDataset(int i) : Dataset(i) {;} JSONDataset() { - MAIN_THREAD_EM_ASM({js.objects[$0] = [];}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = [];}, this->id); //Useful function for dealing with nested JSON data structures //Assumes nested objects are stored in an array called children - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ //Inspired by Niels' answer to //http://stackoverflow.com/questions/12899609/how-to-add-an-object-to-a-nested-javascript-object-using-a-parent-id/37888800#37888800 js.objects[$0] = function(root, id) { @@ -129,7 +129,7 @@ namespace D3 { void Append(std::string json) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].push(JSON.parse(UTF8ToString($1))); }, this->id, json.c_str()); } @@ -193,7 +193,7 @@ namespace D3 { void LoadDataFromFile(std::string location, std::string callback, bool header=true) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var acc = function(d){ return ([+d[0], +d[1]]); }; @@ -235,7 +235,7 @@ namespace D3 { /// Put the last row of the array into arr template void GetLastRow(emp::array & arr) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__outgoing_array = js.objects[$0][js.objects[$0].length - 1]; }, GetID()); emp::pass_array_to_cpp(arr); diff --git a/include/emp/web/d3/histogram.hpp b/include/emp/web/d3/histogram.hpp index 283bcc3c00..ff825648a2 100644 --- a/include/emp/web/d3/histogram.hpp +++ b/include/emp/web/d3/histogram.hpp @@ -22,7 +22,7 @@ namespace D3 { uint32_t value_fun_id = -1; public: Histogram(){ - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.histogram();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.histogram();}, this->id); }; ~Histogram() { @@ -30,7 +30,7 @@ namespace D3 { } Histogram& SetDomain(double x, double y) { - MAIN_THREAD_EM_ASM({js.objects[$0].domain([$1, $2]);}, this->id, x, y); + MAIN_THREAD_EMP_ASM({js.objects[$0].domain([$1, $2]);}, this->id, x, y); return (*this); } @@ -39,7 +39,7 @@ namespace D3 { } emp::array GetDomain() { - MAIN_THREAD_EM_ASM({emp_i.__outgoing_array = js.objects[$0].domain();} + MAIN_THREAD_EMP_ASM({emp_i.__outgoing_array = js.objects[$0].domain();} , this->id); emp::array domain; emp::pass_array_to_cpp(domain); @@ -51,12 +51,12 @@ namespace D3 { } Histogram& SetThresholds(int count) { - MAIN_THREAD_EM_ASM({js.objects[$0].thresholds($1);}, this->id, count); + MAIN_THREAD_EMP_ASM({js.objects[$0].thresholds($1);}, this->id, count); return (*this); } Histogram& SetThresholds(std::string threshold_generator) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].thresholds(UTF8ToString($1)); }, this->id, threshold_generator.c_str()); return (*this); @@ -72,7 +72,7 @@ namespace D3 { Dataset Call(emp::vector data) { emp::pass_array_to_javascript(data); Dataset bins = Dataset(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ console.log(emp_i.__incoming_array); js.objects[$1] = js.objects[$0](emp_i.__incoming_array); console.log(js.objects[$1]); @@ -91,7 +91,7 @@ namespace D3 { emp::sfinae_decoy SetValueAccessor(T func) { value_fun_id = JSWrap(func, emp::to_string(id)+"_return_value"); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].value(window["emp"][$0+"_return_value"]); }, this->id); return (*this); diff --git a/include/emp/web/d3/layout.hpp b/include/emp/web/d3/layout.hpp index 3cd885dc14..9f1746d732 100644 --- a/include/emp/web/d3/layout.hpp +++ b/include/emp/web/d3/layout.hpp @@ -84,7 +84,7 @@ namespace D3{ /// up to this object's data pointer. TreeLayout(JSONDataset * dataset){ //Create layout object - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.tree();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.tree();}, this->id); make_line = new D3::LinkGenerator("horizontal"); @@ -100,7 +100,7 @@ namespace D3{ /// Default constructor - if you use this you need connect a dataset with SetDataset TreeLayout(){ //Create layout object - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.tree();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.tree();}, this->id); make_line = new D3::LinkGenerator("horizontal"); @@ -138,7 +138,7 @@ namespace D3{ int link_exit = NextD3ID(); std::cout << "Tree data id: " << data->GetID() << std::endl; // make_line->Log(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ // Based on code from http://www.d3noob.org/2014/01/tree-diagrams-in-d3js_11.html var root = d3.hierarchy(js.objects[$1][0]); @@ -194,7 +194,7 @@ namespace D3{ /// Set the width of the tree area to [w] and the height to [h] void SetSize(int w, int h) { - MAIN_THREAD_EM_ASM({js.objects[$0].size([$1,$2]);}, this->id, w, h); + MAIN_THREAD_EMP_ASM({js.objects[$0].size([$1,$2]);}, this->id, w, h); } }; diff --git a/include/emp/web/d3/scales.hpp b/include/emp/web/d3/scales.hpp index 34498794aa..3da7afba8f 100644 --- a/include/emp/web/d3/scales.hpp +++ b/include/emp/web/d3/scales.hpp @@ -37,12 +37,12 @@ namespace D3 { template Scale& SetRange(emp::array values) { emp::pass_array_to_javascript(values); - MAIN_THREAD_EM_ASM({js.objects[$0].range(emp_i.__incoming_array);}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0].range(emp_i.__incoming_array);}, this->id); return *this; } Scale& SetRange(double min, double max) { - MAIN_THREAD_EM_ASM({js.objects[$0].range([$1, $2]);}, this->id, min, max); + MAIN_THREAD_EMP_ASM({js.objects[$0].range([$1, $2]);}, this->id, min, max); return *this; } @@ -51,19 +51,19 @@ namespace D3 { template Scale& SetDomain(emp::array values) { emp::pass_array_to_javascript(values); - MAIN_THREAD_EM_ASM({js.objects[$0].domain(emp_i.__incoming_array);}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0].domain(emp_i.__incoming_array);}, this->id); return *this; } Scale& SetDomain(double min, double max) { - MAIN_THREAD_EM_ASM({js.objects[$0].domain([$1, $2]);}, this->id, min, max); + MAIN_THREAD_EMP_ASM({js.objects[$0].domain([$1, $2]);}, this->id, min, max); return *this; } /// Make a copy of this scale Scale Copy() { int new_id = EM_ASM_INT_V({return js.objects.next_id++}); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$1] = js.objects[$0].copy(); }, this->id, new_id); return Scale(new_id); @@ -105,7 +105,7 @@ namespace D3 { class QuantizeScale : public Scale { public: - QuantizeScale() : Scale(true) {MAIN_THREAD_EM_ASM({js.objects[$0]=d3.scaleQuantize()},this->id);} + QuantizeScale() : Scale(true) {MAIN_THREAD_EMP_ASM({js.objects[$0]=d3.scaleQuantize()},this->id);} QuantizeScale(bool derived) : Scale(true) {;} template @@ -117,7 +117,7 @@ namespace D3 { class QuantileScale : public QuantizeScale { public: - QuantileScale() : QuantizeScale(true) { MAIN_THREAD_EM_ASM({js.objects[$0] = d3.scaleQuantile();}, this->id);} + QuantileScale() : QuantizeScale(true) { MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.scaleQuantile();}, this->id);} QuantileScale(bool derived) : QuantizeScale(true) {;} //TODO: Quantiles() }; @@ -125,7 +125,7 @@ namespace D3 { class ThresholdScale : public QuantizeScale { public: ThresholdScale() : QuantizeScale(true) { - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.scaleThreshold()}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.scaleThreshold()}, this->id); } ThresholdScale(bool derived) : QuantizeScale(true) {;} }; @@ -133,7 +133,7 @@ namespace D3 { class IdentityScale : public Scale { public: IdentityScale() : Scale(true) { - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.scaleIdentity();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.scaleIdentity();}, this->id); } IdentityScale(bool derived) : Scale(true){;} @@ -144,14 +144,14 @@ namespace D3 { } IdentityScale& SetTicks(int count) { - MAIN_THREAD_EM_ASM({js.objects[$0].ticks($1);}, this->id, count); + MAIN_THREAD_EMP_ASM({js.objects[$0].ticks($1);}, this->id, count); return *this; } IdentityScale& SetTickFormat(int count, std::string format) { //TODO: format is technically optional, but what is the point of this //function without it? - MAIN_THREAD_EM_ASM({js.objects[$0].tick($1, UTF8ToString($2));}, + MAIN_THREAD_EMP_ASM({js.objects[$0].tick($1, UTF8ToString($2));}, this->id, count, format.c_str()); return *this; } @@ -160,7 +160,7 @@ namespace D3 { class LinearScale : public IdentityScale { public: LinearScale() : IdentityScale(true) { - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.scaleLinear();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.scaleLinear();}, this->id); } LinearScale(bool derived) : IdentityScale(true) {;} @@ -168,12 +168,12 @@ namespace D3 { template LinearScale& SetRangeRound(emp::array values) { emp::pass_array_to_javascript(values); - MAIN_THREAD_EM_ASM({js.objects[$0].rangeRound(emp.__incoming_array);}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0].rangeRound(emp.__incoming_array);}, this->id); return *this; } LinearScale& SetRangeRound(double min, double max) { - MAIN_THREAD_EM_ASM({js.objects[$0].rangeRound([$1, $2]);}, this->id, min, max); + MAIN_THREAD_EMP_ASM({js.objects[$0].rangeRound([$1, $2]);}, this->id, min, max); return *this; } @@ -184,15 +184,15 @@ namespace D3 { } LinearScale& Clamp(bool clamp) { - MAIN_THREAD_EM_ASM({js.objects[$0].clamp($1);}, this->id, clamp); + MAIN_THREAD_EMP_ASM({js.objects[$0].clamp($1);}, this->id, clamp); return *this; } LinearScale& Nice(int count = -1) { if (count != -1){ - MAIN_THREAD_EM_ASM({js.objects[$0].nice($1);}, this->id, count); + MAIN_THREAD_EMP_ASM({js.objects[$0].nice($1);}, this->id, count); } else { - MAIN_THREAD_EM_ASM({js.objects[$0].nice();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0].nice();}, this->id); } return *this; } @@ -202,7 +202,7 @@ namespace D3 { class LogScale : public LinearScale { public: LogScale() : LinearScale(true) { - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.scaleLog();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.scaleLog();}, this->id); } LogScale(bool derived) : LinearScale(true){;}; @@ -212,13 +212,13 @@ namespace D3 { class PowScale : public LinearScale { public: PowScale() : LinearScale(true) { - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.scalePow();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.scalePow();}, this->id); } PowScale(bool derived) : LinearScale(true){;}; PowScale& Exponent(double ex) { - MAIN_THREAD_EM_ASM({js.objects[$0].exponent($1);}, this->id, ex); + MAIN_THREAD_EMP_ASM({js.objects[$0].exponent($1);}, this->id, ex); return *this; } }; @@ -230,7 +230,7 @@ namespace D3 { class TimeScale : public LinearScale { public: TimeScale() : LinearScale(true) { - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.scaleTime();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.scaleTime();}, this->id); } TimeScale(bool derived) : LinearScale(true){;}; diff --git a/include/emp/web/d3/selection.hpp b/include/emp/web/d3/selection.hpp index 9b824c0ad9..dc2473d711 100644 --- a/include/emp/web/d3/selection.hpp +++ b/include/emp/web/d3/selection.hpp @@ -47,7 +47,7 @@ namespace D3 { DERIVED Select(std::string selector) const { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_selection = js.objects[$0].select(UTF8ToString($1)); js.objects[$2] = new_selection; }, this->id, selector.c_str(), new_id); @@ -60,7 +60,7 @@ namespace D3 { DERIVED SelectAll(std::string selector) const { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ // console.log($0, js.objects[$0]); var new_selection = js.objects[$0].selectAll(UTF8ToString($1)); js.objects[$2] = new_selection; @@ -78,7 +78,7 @@ namespace D3 { /// `D3::Selection(i)`). // TODO: Allow arguments DERIVED& Call(std::string function){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var func_string = UTF8ToString($1); if (typeof window[func_string] === "function") { func_string = window[func_string]; @@ -100,7 +100,7 @@ namespace D3 { emp::sfinae_decoy Call(T function){ uint32_t fun_id = emp::JSWrap(function, "", false); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp.__new_object = js.objects[$0].call(function(selection) { return emp.Callback($1, $0); }); @@ -164,14 +164,14 @@ namespace D3 { /// Remove the elements in this selection/transition from the document /// For transitions, this happens at the end of the transition. void Remove(){ - MAIN_THREAD_EM_ASM({js.objects[$0].remove()}, + MAIN_THREAD_EMP_ASM({js.objects[$0].remove()}, this->id); } DERIVED Merge(DERIVED & other) { int new_id = NextD3ID(); // std::cout << "New id should be: " << new_id << std::endl; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$2] = js.objects[$0].merge(js.objects[$1]); // console.log("Merged: ", js.objects[$2], $2); }, this->id, other.GetID(), new_id); @@ -219,7 +219,7 @@ namespace D3 { typename std::enable_if::value, DERIVED&>::type SetAttr(std::string name, T value) { - MAIN_THREAD_EM_ASM({js.objects[$0].attr(UTF8ToString($1), $2)}, + MAIN_THREAD_EMP_ASM({js.objects[$0].attr(UTF8ToString($1), $2)}, this->id, name.c_str(), value); return *(static_cast(this)); } @@ -234,7 +234,7 @@ namespace D3 { //This should probably be JSWrapOnce, but that breaks the visualization uint32_t fun_id = emp::JSWrap(value, "", false); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].attr(UTF8ToString($1), function(d, i, k) { return emp.Callback($2, d, i, k); }); @@ -261,7 +261,7 @@ namespace D3 { SetAttr(std::string name, T value) { emp::pass_array_to_javascript(value); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].attr(UTF8ToString($1), emp_i.__incoming_array); }, this->id, name.c_str()); @@ -283,7 +283,7 @@ namespace D3 { //std::string version because std::strings are better DERIVED& SetStyle(std::string name, std::string value, bool priority=false){ if (priority){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var func_string = UTF8ToString($2); if (typeof window[func_string] === "function") { func_string = window[func_string]; @@ -307,7 +307,7 @@ namespace D3 { //string literals DERIVED& SetStyle(std::string name, const char* value, bool priority=false){ if (priority){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var func_string = UTF8ToString($2); if (typeof window[func_string] === "function") { func_string = window[func_string]; @@ -340,11 +340,11 @@ namespace D3 { typename std::enable_if::value, DERIVED&>::type SetStyle(std::string name, T value, bool priority=false){ if (priority){ - MAIN_THREAD_EM_ASM({js.objects[$0].style(UTF8ToString($1), $2, "important")}, + MAIN_THREAD_EMP_ASM({js.objects[$0].style(UTF8ToString($1), $2, "important")}, this->id, name.c_str(), value); } else { - MAIN_THREAD_EM_ASM({js.objects[$0].style(UTF8ToString($1), $2)}, + MAIN_THREAD_EMP_ASM({js.objects[$0].style(UTF8ToString($1), $2)}, this->id, name.c_str(), value); } return *(static_cast(this)); @@ -570,7 +570,7 @@ namespace D3 { //TODO: D3 supports passing a selection, but it's kind of a weird edge case Transition NewTransition(std::string name="") const { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var transition = js.objects[$0].transition(UTF8ToString($1)); js.objects[$2] = transition; }, this->id, name.c_str(), new_id); @@ -619,7 +619,7 @@ namespace D3 { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var func_string = UTF8ToString($2); if (typeof window[func_string] === "function") { func_string = window[func_string]; @@ -652,7 +652,7 @@ namespace D3 { uint32_t fun_id = emp::JSWrap(listener, "", false); int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].on(UTF8ToString($1), function(d, i){ js.objects[$4] = d3.select(this); @@ -666,7 +666,7 @@ namespace D3 { /// @endcond Transition& SetDuration(double time) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].duration($1); }, this->id, time); return (*this); @@ -678,7 +678,7 @@ namespace D3 { /// for more information. // std::string verison Transition& SetProperty(std::string name, std::string value){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var arg1 = UTF8ToString($1); \ var func_string = UTF8ToString($2); if (typeof window[func_string] === "function") { @@ -700,7 +700,7 @@ namespace D3 { // Const char * version so raw strings work Transition& SetProperty(std::string name, const char* value){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var arg1 = UTF8ToString($1); \ var func_string = UTF8ToString($2); if (typeof window[func_string] === "function") { @@ -722,7 +722,7 @@ namespace D3 { template typename std::enable_if::value, Transition&>::type SetProperty(std::string name, T value){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].each("end", function() { d3.select(this).property(UTF8ToString($1), $2); }); @@ -737,7 +737,7 @@ namespace D3 { emp::sfinae_decoy SetProperty(std::string name, T value) { uint32_t fun_id = emp::JSWrap(value, "", false); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].each("end", function(){ d3.select(this).property(UTF8ToString($1), function(d, i, j) { @@ -754,7 +754,7 @@ namespace D3 { /// Sets this selection's inner html to the specified string, or the string returned by running the /// specified function on the element's bound data Transition& SetHtml(std::string value){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var func_string = UTF8ToString($1); if (typeof window[func_string] === "function") { func_string = window[func_string]; @@ -777,7 +777,7 @@ namespace D3 { emp::sfinae_decoy SetHtml(T func){ uint32_t fun_id = emp::JSWrap(func, "", false); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].each("end", function(){ d3.select(this).html(function(d, i, j) { return emp.Callback($1, d, i, j); @@ -794,7 +794,7 @@ namespace D3 { /// Example: Add the data-point class with selection.SetClassed("data-point", true); // Value can also be a function that takes bound data and returns a bool Transition& SetClassed(std::string classname, bool value) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].each("end", function(){ d3.select(this).classed(UTF8ToString($1), $2); }); @@ -809,7 +809,7 @@ namespace D3 { emp::sfinae_decoy SetClassed(std::string, std::string classname, T func){ uint32_t fun_id = emp::JSWrap(func, "", false); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].each("end", function(){ d3.select(this).classed(UTF8ToString($1), function(d, i, j) { @@ -837,7 +837,7 @@ namespace D3 { return (typeof func_string === "function"); }, value.c_str()) && "String passed to SetClassed is not a Javascript function", value); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var arg1 = UTF8ToString($1); \ var func_string = UTF8ToString($2); if (typeof window[func_string] === "function") { @@ -944,7 +944,7 @@ namespace D3 { /// Default constructor - constructs empty selection Selection(){ - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.selection();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.selection();}, this->id); }; /// Create Selection object with a specific id. @@ -968,12 +968,12 @@ namespace D3 { /// just the first [false] Selection(std::string selector, bool all = false) { if (all){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = d3.selectAll(UTF8ToString($1)); }, this->id, selector.c_str()); } else { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = d3.select(UTF8ToString($1)); }, this->id, selector.c_str()); } @@ -1008,7 +1008,7 @@ namespace D3 { Selection Data(Dataset & values, std::string key=""){ int update_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ //We could make this slightly prettier with macros, but would //add an extra comparison var in_string = UTF8ToString($1); @@ -1041,7 +1041,7 @@ namespace D3 { int update_id = NextD3ID(); uint32_t fun_id = emp::JSWrap(key, "", false); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var update_sel = js.objects[$0].data(js.objects[$2], function(d,i) { return emp.Callback($1, d, i); @@ -1063,7 +1063,7 @@ namespace D3 { // int update_id = NextD3ID(); // emp::pass_array_to_javascript(values); // - // MAIN_THREAD_EM_ASM({ + // MAIN_THREAD_EMP_ASM({ // var update_sel = js.objects[$0].data(emp_i.__incoming_array); // js.objects[$1] = update_sel; // @@ -1084,7 +1084,7 @@ namespace D3 { // std::cout << "In bind data: " << values[0].x0() << std::endl; emp::pass_array_to_javascript(values); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var in_string = UTF8ToString($1); var fn = window["emp"][in_string]; if (typeof fn === "function"){ @@ -1114,7 +1114,7 @@ namespace D3 { emp::pass_array_to_javascript(values); uint32_t fun_id = emp::JSWrap(key, "", false); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var update_sel = js.objects[$0].data(emp_i.__incoming_array, function(d,i,k) { return emp.Callback($1, d, i, k); @@ -1132,7 +1132,7 @@ namespace D3 { Dataset GetData() const { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$1] = [js.objects[$0].data()]; }, this->id, new_id); return Dataset(new_id); @@ -1148,7 +1148,7 @@ namespace D3 { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var append_selection = js.objects[$0].enter() .append(UTF8ToString($1)); js.objects[$2] = append_selection; @@ -1165,13 +1165,13 @@ namespace D3 { int new_id = NextD3ID(); if (before.c_str()){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_sel = js.objects[$0].enter().insert(UTF8ToString($1), UTF8ToString($2)); js.objects[$3] = new_sel; }, this->id, name.c_str(), before.c_str(), new_id); } else { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_sel = js.objects[$0].enter().insert(UTF8ToString($1)); js.objects[$2] = new_sel; }, this->id, name.c_str(), new_id); @@ -1189,7 +1189,7 @@ namespace D3 { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var enter_selection = js.objects[$0].enter(); js.objects[$1] = enter_selection; }, this->id, new_id); @@ -1205,7 +1205,7 @@ namespace D3 { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var exit_selection = js.objects[$0].exit().remove(); js.objects[$1] = exit_selection; }, this->id, new_id); @@ -1221,7 +1221,7 @@ namespace D3 { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var exit_selection = js.objects[$0].exit(); js.objects[$1] = exit_selection; }, this->id, new_id); @@ -1272,7 +1272,7 @@ namespace D3 { template typename std::enable_if::value, Selection&>::type SetProperty(std::string name, T value){ - MAIN_THREAD_EM_ASM({js.objects[$0].property(UTF8ToString($1), + MAIN_THREAD_EMP_ASM({js.objects[$0].property(UTF8ToString($1), $2)}, this->id, name.c_str()); return *this; } @@ -1311,7 +1311,7 @@ namespace D3 { /// Example: Add the data-point class with selection.SetClassed("data-point", true); // Value can also be a function that takes bound data and returns a bool Selection& SetClassed(std::string classname, bool value) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].classed(UTF8ToString($1), $2); }, this->id, classname.c_str(), value); return *this; @@ -1417,7 +1417,7 @@ namespace D3 { Selection Append(std::string name){ int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_selection = js.objects[$0].append(UTF8ToString($1)); js.objects[$2] = new_selection; }, this->id, name.c_str(), new_id); @@ -1433,13 +1433,13 @@ namespace D3 { int new_id = NextD3ID(); if (before.c_str()){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_sel = js.objects[$0].insert(UTF8ToString($1), UTF8ToString($2)); js.objects[$3] = new_sel; }, this->id, name.c_str(), before.c_str(), new_id); } else { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_sel = js.objects[$0].insert(UTF8ToString($1)); js.objects[$2] = new_sel; }, this->id, name.c_str(), new_id); @@ -1451,7 +1451,7 @@ namespace D3 { /// the transition will be given that name Transition MakeTransition(std::string name=""){ int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var transition = js.objects[$0].transition(UTF8ToString($1)); js.objects[$2] = transition; }, this->id, name.c_str(), new_id); @@ -1461,7 +1461,7 @@ namespace D3 { Transition MakeTransition(Transition & t){ int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var transition = js.objects[$0].transition(js.objects[$1]); js.objects[$2] = transition; }, this->id, t.GetID(), new_id); @@ -1472,7 +1472,7 @@ namespace D3 { /// Interrupt the transition with the name [name] on the current selection Selection& Interrupt(std::string name=""){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].interrupt(UTF8ToString($1)); }, this->id, name.c_str()); return *this; @@ -1484,7 +1484,7 @@ namespace D3 { /// "transform" attribute to "translate(x, y)", because doing that is a pain /// in C++ (even more so than in Javascript) Selection& Move(int x, int y) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].attr("transform", "translate("+$1+","+$2+")"); }, this->id, x, y); return *this; @@ -1495,7 +1495,7 @@ namespace D3 { /// "transform" attribute to "rotate(degrees)", because doing that is a pain /// in C++ (even more so than in Javascript) Selection& Rotate(int degrees) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].attr("transform", "rotate("+$1+")"); }, this->id, degrees); return *this; @@ -1503,18 +1503,18 @@ namespace D3 { /// Change the order of elements in the document to match their order in this selection Selection& Order(){ - MAIN_THREAD_EM_ASM({js.objects[$0].order()}, + MAIN_THREAD_EMP_ASM({js.objects[$0].order()}, this->id); return *this; } Selection& Raise() { - MAIN_THREAD_EM_ASM({js.objects[$0].raise();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0].raise();}, this->id); return *this; } Selection& Lower() { - MAIN_THREAD_EM_ASM({js.objects[$0].lower();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0].lower();}, this->id); return *this; } @@ -1552,7 +1552,7 @@ namespace D3 { int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var func_string = UTF8ToString($2); if (typeof window[func_string] === "function") { func_string = window[func_string]; @@ -1588,7 +1588,7 @@ namespace D3 { uint32_t fun_id = emp::JSWrap(listener, "", false); int new_id = NextD3ID(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].on(UTF8ToString($1), function(){ js.objects[$4] = d3.select(this); @@ -1633,14 +1633,14 @@ namespace D3 { //This function exists in case you want to bind the tooltip to an //event other than mouseover/out void SetupToolTip(ToolTip & tip) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].call(js.objects[$1]); }, this->id, tip.GetID()); } //Tell tooltip to appear on mouseover and dissapear on mouseout void BindToolTipMouseover(ToolTip & tip) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].on("mouseover", js.objects[$1].show) .on("mouseout", js.objects[$1].hide); }, this->id, tip.GetID()); diff --git a/include/emp/web/d3/svg_shapes.hpp b/include/emp/web/d3/svg_shapes.hpp index 969b4d9c79..e88b0d6b6e 100644 --- a/include/emp/web/d3/svg_shapes.hpp +++ b/include/emp/web/d3/svg_shapes.hpp @@ -65,7 +65,7 @@ namespace D3 { s = s.Append("path"); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var sel = js.objects[$0].attr("d", js.objects[$1](js.objects[$2])); }, s.GetID(), this->id, data.GetID()); return s; @@ -89,7 +89,7 @@ namespace D3 { class SymbolGenerator : public SvgShapeGenerator { public: SymbolGenerator() { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_line = d3.symbol(); js.objects[$0] = new_line; }, this->id); @@ -124,7 +124,7 @@ namespace D3 { /// function in the current window, the emp namespace, or the d3 namespace. //If size is a constant, it's in pixels, so an int is reasonable void SetSize(int size) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].size($1); }, this->id, size); } @@ -162,7 +162,7 @@ namespace D3 { /// If interpolation is "bundle", "cardinal", "cardinal-open", or "cardinal-closed", a tension /// parameter is used. void SetTension(float tension){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0].tension($1); }, this->id, tension); } @@ -186,7 +186,7 @@ namespace D3 { class LineGenerator : public BaseLineGenerator { public: LineGenerator() { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_line = d3.line(); js.objects[$0] = new_line; }, this->id); @@ -199,7 +199,7 @@ namespace D3 { /// will also stack). template void AddXScale(X_SCALE_TYPE & scale){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var scale = js.objects[$1]; var curr_x = js.objects[$0].x(); @@ -215,7 +215,7 @@ namespace D3 { /// will also stack). template void AddYScale(Y_SCALE_TYPE & scale){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var scale = js.objects[$1]; var curr_y = js.objects[$0].y(); @@ -259,7 +259,7 @@ namespace D3 { template typename std::enable_if::value, void>::type SetX(T x) { - MAIN_THREAD_EM_ASM({js.objects[$0].x($1);}, this->id, x); + MAIN_THREAD_EMP_ASM({js.objects[$0].x($1);}, this->id, x); } // handles C++ functions @@ -307,7 +307,7 @@ namespace D3 { template typename std::enable_if::value, void>::type SetY(T y) { - MAIN_THREAD_EM_ASM({js.objects[$0].y($1);}, this->id, y); + MAIN_THREAD_EMP_ASM({js.objects[$0].y($1);}, this->id, y); } // handles C++ functions @@ -325,12 +325,12 @@ namespace D3 { public: LinkGenerator(std::string type) { if (type == "vertical") { - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.linkVertical();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.linkVertical();}, this->id); } else if (type == "horizontal") { - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.linkHorizontal();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.linkHorizontal();}, this->id); } else { std::cout << "WARNING: Invalid link type" << std::endl; - MAIN_THREAD_EM_ASM({js.objects[$0] = d3.linkVertical();}, this->id); + MAIN_THREAD_EMP_ASM({js.objects[$0] = d3.linkVertical();}, this->id); } } @@ -344,7 +344,7 @@ namespace D3 { template typename std::enable_if::value, void>::type SetSource(T source) { - MAIN_THREAD_EM_ASM({js.objects[$0].source($1);}, this->id, source); + MAIN_THREAD_EMP_ASM({js.objects[$0].source($1);}, this->id, source); } // handles C++ functions @@ -367,7 +367,7 @@ namespace D3 { template typename std::enable_if::value, void>::type SetY(T target) { - MAIN_THREAD_EM_ASM({js.objects[$0].target($1);}, this->id, target); + MAIN_THREAD_EMP_ASM({js.objects[$0].target($1);}, this->id, target); } // handles C++ functions @@ -384,7 +384,7 @@ namespace D3 { class AreaGenerator : public LineGenerator { public: AreaGenerator() { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_line = d3.area(); js.objects[$0] = new_line; }, this->id); @@ -393,13 +393,13 @@ namespace D3 { //Handles setting x0 accessor to a constant template void SetX0(T x) { - MAIN_THREAD_EM_ASM({js.objects[$0].x0($1);}, this->id, x); + MAIN_THREAD_EMP_ASM({js.objects[$0].x0($1);}, this->id, x); } //Handles setting y0 accessor to a constant template void SetY0(T y) { - MAIN_THREAD_EM_ASM({js.objects[$0].y0($1);}, this->id, y); + MAIN_THREAD_EMP_ASM({js.objects[$0].y0($1);}, this->id, y); } //Handles setting x0 accessor to a function or string @@ -415,13 +415,13 @@ namespace D3 { //Handles setting x1 accessor to a constant template void SetX1(T x) { - MAIN_THREAD_EM_ASM({js.objects[$0].x1($1);}, this->id, x); + MAIN_THREAD_EMP_ASM({js.objects[$0].x1($1);}, this->id, x); } //Handles setting y1 accessor to a constant template void SetY1(T y) { - MAIN_THREAD_EM_ASM({js.objects[$0].y1($1);}, this->id, y); + MAIN_THREAD_EMP_ASM({js.objects[$0].y1($1);}, this->id, y); } //Handles setting x1 accessor to a function or string @@ -438,14 +438,14 @@ namespace D3 { class RadialLineGenerator : public BaseLineGenerator { public: RadialLineGenerator(){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_line = d3.radialLine(); js.objects[$0] = new_line; }, this->id); } void SetRadius(float radius) { - MAIN_THREAD_EM_ASM({js.objects[$0].radius($1);}, this->id, radius); + MAIN_THREAD_EMP_ASM({js.objects[$0].radius($1);}, this->id, radius); } void SetRadius(std::string radius) { @@ -453,7 +453,7 @@ namespace D3 { } void SetAngle(float angle) { - MAIN_THREAD_EM_ASM({js.objects[$0].angle($1);}, this->id, angle); + MAIN_THREAD_EMP_ASM({js.objects[$0].angle($1);}, this->id, angle); } void SetAngle(std::string angle) { @@ -464,14 +464,14 @@ namespace D3 { class RadialAreaGenerator : public RadialLineGenerator { public: RadialAreaGenerator() { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_line = d3.radialArea(); js.objects[$0] = new_line; }, this->id); } void SetInnerRadius(float radius) { - MAIN_THREAD_EM_ASM({js.objects[$0].innerRadius($1);}, this->id, radius); + MAIN_THREAD_EMP_ASM({js.objects[$0].innerRadius($1);}, this->id, radius); } void SetInnerRadius(std::string radius) { @@ -479,7 +479,7 @@ namespace D3 { } void SetOuterRadius(float radius) { - MAIN_THREAD_EM_ASM({js.objects[$0].outerRadius($1);}, this->id, radius); + MAIN_THREAD_EMP_ASM({js.objects[$0].outerRadius($1);}, this->id, radius); } void SetOuterRadius(std::string radius) { @@ -487,7 +487,7 @@ namespace D3 { } void SetStartAngle(float angle) { - MAIN_THREAD_EM_ASM({js.objects[$0].startAngle($1);}, this->id, angle); + MAIN_THREAD_EMP_ASM({js.objects[$0].startAngle($1);}, this->id, angle); } void SetStartAngle(std::string angle) { @@ -495,7 +495,7 @@ namespace D3 { } void SetEndAngle(float angle) { - MAIN_THREAD_EM_ASM({js.objects[$0].endAngle($1);}, this->id, angle); + MAIN_THREAD_EMP_ASM({js.objects[$0].endAngle($1);}, this->id, angle); } void SetEndAngle(std::string angle) { @@ -506,7 +506,7 @@ namespace D3 { class ChordGenerator : public RadialAreaGenerator { public: ChordGenerator() { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_line = d3.ribbon(); js.objects[$0] = new_line; }, this->id); @@ -514,7 +514,7 @@ namespace D3 { template void SetSource(T source) { - MAIN_THREAD_EM_ASM({js.objects[$0].source($1);}, this->id, source); + MAIN_THREAD_EMP_ASM({js.objects[$0].source($1);}, this->id, source); } void SetSource(std::string source) { @@ -523,7 +523,7 @@ namespace D3 { template void SetTarget(T target) { - MAIN_THREAD_EM_ASM({js.objects[$0].target($1);}, this->id, target); + MAIN_THREAD_EMP_ASM({js.objects[$0].target($1);}, this->id, target); } void SetTarget(std::string target) { @@ -534,14 +534,14 @@ namespace D3 { class ArcGenerator : public RadialAreaGenerator { public: ArcGenerator() { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var new_line = d3.arc(); js.objects[$0] = new_line; }, this->id); } void SetCornerRadius(float radius) { - MAIN_THREAD_EM_ASM({js.objects[$0].cornerRadius($1);}, this->id, radius); + MAIN_THREAD_EMP_ASM({js.objects[$0].cornerRadius($1);}, this->id, radius); } void SetCornerRadius(std::string radius) { @@ -549,7 +549,7 @@ namespace D3 { } void SetPadRadius(float radius) { - MAIN_THREAD_EM_ASM({js.objects[$0].padRadius($1);}, this->id, radius); + MAIN_THREAD_EMP_ASM({js.objects[$0].padRadius($1);}, this->id, radius); } void SetPadRadius(std::string radius) { @@ -557,7 +557,7 @@ namespace D3 { } void SetPadAngle(float angle) { - MAIN_THREAD_EM_ASM({js.objects[$0].padAngle($1);}, this->id, angle); + MAIN_THREAD_EMP_ASM({js.objects[$0].padAngle($1);}, this->id, angle); } void SetPadAngle(std::string angle) { diff --git a/include/emp/web/d3/utils.hpp b/include/emp/web/d3/utils.hpp index 2575121b10..cdb2ea23ed 100644 --- a/include/emp/web/d3/utils.hpp +++ b/include/emp/web/d3/utils.hpp @@ -67,7 +67,7 @@ /// Call a Javascript function that accepts either a string indicating the name of a /// callback function or a normal string #define D3_CALLBACK_FUNCTION_1_ARG(FUNC, CALLBACK) \ - MAIN_THREAD_EM_ASM({ \ + MAIN_THREAD_EMP_ASM({ \ var func_string = UTF8ToString($0); \ CONVERT_FUNCSTRING_TO_FUNCTION_IF_IN_NAMESPACE_OR_WINDOW("d3", "emp"); \ emp.__new_object = FUNC(func_string); \ @@ -76,7 +76,7 @@ /// Same as D3_CALLBACK_FUNCTION_1_ARG, but accepts an additional argument, ARG1, that goes /// before the callback function in the call to FUNC #define D3_CALLBACK_FUNCTION_2_ARGS(FUNC, CALLBACK, ARG1) \ - MAIN_THREAD_EM_ASM({ \ + MAIN_THREAD_EMP_ASM({ \ var arg1 = UTF8ToString($0); \ var func_string = UTF8ToString($1); \ CONVERT_FUNCSTRING_TO_FUNCTION_IF_IN_NAMESPACE_OR_WINDOW("d3", "emp"); \ @@ -87,7 +87,7 @@ //Layer of indirection so macro gets expanded #define D3_CALLBACK_METHOD_2_ARGS_IMPL(MACRO, FUNC, ARG1, ARG2) \ - MAIN_THREAD_EM_ASM({ \ + MAIN_THREAD_EMP_ASM({ \ var arg1 = UTF8ToString($1); \ var func_string = UTF8ToString($2); \ MACRO; \ @@ -103,7 +103,7 @@ //Layer of indirection so macro gets expanded #define D3_CALLBACK_METHOD_1_ARG_IMPL(MACRO, FUNC, ARG1) \ -MAIN_THREAD_EM_ASM({ \ +MAIN_THREAD_EMP_ASM({ \ var func_string = UTF8ToString($1); \ MACRO; \ emp.__new_object = js.objects[$0].FUNC(func_string); \ @@ -119,7 +119,7 @@ D3_CALLBACK_METHOD_1_ARG_IMPL(CONVERT_FUNCSTRING_TO_FUNCTION_IF_IN_NAMESPACE_OR_ //JSWrap and passes it to the FUNC method of the current d3 object, along with an argument #define D3_CALLBACK_METHOD_CPP_FUNCTION_2_ARGS(FUNC, ARG1, CPP_FUN) \ uint32_t fun_id = emp::JSWrap(CPP_FUN, "", false); \ - MAIN_THREAD_EM_ASM({ \ + MAIN_THREAD_EMP_ASM({ \ emp.__new_object = js.objects[$0].FUNC(UTF8ToString($1), \ function(d, i, j) { \ return emp.Callback($2, d, i, j); \ @@ -131,7 +131,7 @@ D3_CALLBACK_METHOD_1_ARG_IMPL(CONVERT_FUNCSTRING_TO_FUNCTION_IF_IN_NAMESPACE_OR_ //JSWrap and passes it to the FUNC method of the current d3 object, along with an argument #define D3_CALLBACK_METHOD_CPP_FUNCTION_1_ARG(FUNC, CPP_FUN) \ uint32_t fun_id = emp::JSWrap(CPP_FUN, "", false); \ - MAIN_THREAD_EM_ASM({ \ + MAIN_THREAD_EMP_ASM({ \ emp.__new_object = js.objects[$0].FUNC(function(d, i, j) { \ return emp.Callback($1, d, i, j);\ }); \ @@ -140,7 +140,7 @@ D3_CALLBACK_METHOD_1_ARG_IMPL(CONVERT_FUNCSTRING_TO_FUNCTION_IF_IN_NAMESPACE_OR_ //Store return of one of the above functions in js.objects void StoreNewObject(int id){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = emp.__new_object; }, id); diff --git a/include/emp/web/d3/visualizations.hpp b/include/emp/web/d3/visualizations.hpp index c3ef81a492..5ea59647ff 100644 --- a/include/emp/web/d3/visualizations.hpp +++ b/include/emp/web/d3/visualizations.hpp @@ -99,7 +99,7 @@ class D3Visualization : public internal::WidgetFacet { info = new D3VisualizationInfo(this, in_id); Info()->width = w; Info()->height = h; - MAIN_THREAD_EM_ASM({window["emp"]["__default_draw_data_callback"] = + MAIN_THREAD_EMP_ASM({window["emp"]["__default_draw_data_callback"] = function(){;};}); } @@ -140,7 +140,7 @@ class D3Visualization : public internal::WidgetFacet { } void CallDrawCallback() { - MAIN_THREAD_EM_ASM({window["emp"][UTF8ToString($0)]()}, draw_data_callback.c_str()); + MAIN_THREAD_EMP_ASM({window["emp"][UTF8ToString($0)]()}, draw_data_callback.c_str()); } /* @@ -616,7 +616,7 @@ class LineGraph : public D3Visualization { } D3::Transition t = GetSVG()->MakeTransition(); - MAIN_THREAD_EM_ASM({js.objects[$0].ease(d3.easeLinear).delay(10).duration(300);}, t.GetID()); + MAIN_THREAD_EMP_ASM({js.objects[$0].ease(d3.easeLinear).delay(10).duration(300);}, t.GetID()); y_axis->Rescale(y_max, y_min, t); x_axis->Rescale(x_min, x_max, t); t.On("end", GetID()+"draw_data"); @@ -642,7 +642,7 @@ class LineGraph : public D3Visualization { // new_segs.EnterAppend("path").SetAttr("class", "line-seg"); // new_segs.SetAttr("d", GetID()+"genpath"); // - // // MAIN_THREAD_EM_ASM({ + // // MAIN_THREAD_EMP_ASM({ // // // // js.objects[$0].selectAll(".line-seg").attr("d", function(d){console.log("in d", d, $1, js.objects[$1]); return js.objects[$1](d);}); // // }, GetSVG()->GetID(), line_gen->GetID(), s.GetID()); @@ -653,7 +653,7 @@ class LineGraph : public D3Visualization { // s.SelectAll(".data-point").SetAttr("cy", GetID()+"y"); // s.SelectAll(".data-point").SetAttr("cx", GetID()+"x"); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ function pathTween(d1, precision) { return function() { var path0 = this; @@ -895,7 +895,7 @@ class TreeVisualizationReplacement : public TreeVisualization { virtual void Setup() { InitializeVariables(); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ js.objects[$0] = [js.objects[$1][0]]; }, possible_parents.GetID(), data->GetID()); @@ -908,7 +908,7 @@ class TreeVisualizationReplacement : public TreeVisualization { int pos = data->AppendNestedFromList(child_json, possible_parents); (void) pos; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ while (js.objects[$0].length < $1 + 1) { js.objects[$0].push(-1); } @@ -966,7 +966,7 @@ class SpatialGridTreeVisualization : public TREE_TYPE { }; std::function node_mouseover = [this](NODE d, int i){ - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var trace_lineage = function(root, id) { if (root.name == id){ @@ -1070,7 +1070,7 @@ class SpatialGridTreeVisualization : public TREE_TYPE { std::function legend_mouseover = [this](LegendNode d, int il) { legend.SelectAll("rect").Filter([d](LegendNode in_data){return d.loc() != in_data.loc();}).SetClassed("faded", true); GetSVG()->SelectAll(".node").Filter([d](LegendNode in_data){return d.loc() != in_data.loc();}).SetClassed("faded", true); - MAIN_THREAD_EM_ASM({emp.filter_fun = function(d){return d.source.loc != $0;}}, d.loc()); + MAIN_THREAD_EMP_ASM({emp.filter_fun = function(d){return d.source.loc != $0;}}, d.loc()); GetSVG()->SelectAll(".link").Filter("filter_fun").SetClassed("faded", true); }; @@ -1082,12 +1082,12 @@ class SpatialGridTreeVisualization : public TREE_TYPE { .Filter([d](LegendNode in_data){return d.loc() != in_data.loc();}) .SetClassed("faded", false); - MAIN_THREAD_EM_ASM({emp.filter_fun = function(d){return d.source.loc != $0;}}, d.loc()); + MAIN_THREAD_EMP_ASM({emp.filter_fun = function(d){return d.source.loc != $0;}}, d.loc()); GetSVG()->SelectAll(".link").Filter("filter_fun").SetClassed("faded", false); }; emp::vector GetLocHistory(int id) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var org = js.objects[$1](js.objects[$0][0], $2); var loc_history = []; loc_history.push(org.loc); diff --git a/include/emp/web/events.hpp b/include/emp/web/events.hpp index a0639816f2..d90c309631 100644 --- a/include/emp/web/events.hpp +++ b/include/emp/web/events.hpp @@ -31,7 +31,7 @@ namespace web { const size_t fun_id = JSWrap(std::forward(fun), "", true); (void) fun_id; - MAIN_THREAD_EM_ASM({ $( document ).ready(function() { emp.Callback($0); }); }, fun_id); + MAIN_THREAD_EMP_ASM({ $( document ).ready(function() { emp.Callback($0); }); }, fun_id); } /// Runs the specified function when the document is finished loading. @@ -40,7 +40,7 @@ namespace web { const size_t fun_id = JSWrap(std::forward(fun), "", true); (void) fun_id; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ $( window ).on( "load", function() { emp.Callback($0); }); }, fun_id diff --git a/include/emp/web/init.hpp b/include/emp/web/init.hpp index 560501d69b..6d10f3eaa1 100644 --- a/include/emp/web/init.hpp +++ b/include/emp/web/init.hpp @@ -22,6 +22,12 @@ #include #endif // __EMSCRIPTEN_PTHREADS__ +// temporary patch for https://github.com/emscripten-core/emscripten/issues/11539 +#define MAIN_THREAD_EMP_ASM(...) [&](){ \ + [[maybe_unused]] volatile int no_optimize{}; \ + MAIN_THREAD_EM_ASM(__VA_ARGS__); \ +}() + extern "C" { extern void EMP_Initialize(); } @@ -33,7 +39,7 @@ namespace emp { thread_local bool init = false; // Make sure we only initialize once! if (!init) { // Setup the animation callback in Javascript - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ window.requestAnimFrame = (function(callback) { return window.requestAnimationFrame || window.webkitRequestAnimationFrame @@ -57,7 +63,7 @@ namespace emp { return typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope; }) ) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ console.assert( Object.keys( PThread.pthreads ).length === 1 ); Object.values(PThread.pthreads)[0].worker.addEventListener( 'message', @@ -127,7 +133,7 @@ namespace emp { InitializeAnim(); #ifdef __EMSCRIPTEN_PTHREADS__ - MAIN_THREAD_EM_ASM({ _EMP_Initialize(); }); + MAIN_THREAD_EMP_ASM({ _EMP_Initialize(); }); InitializeBitmapListener(); InitializeOffscreenCanvasRegistries(); #endif @@ -175,8 +181,8 @@ namespace emp { #else -#define MAIN_THREAD_EM_ASM(...) -#define MAIN_THREAD_EM_ASM(...) +#define MAIN_THREAD_EMP_ASM(...) +#define MAIN_THREAD_EMP_ASM(...) #define MAIN_THREAD_EM_ASM_INT(...) 0 #define MAIN_THREAD_EM_ASM_DOUBLE(...) 0.0 #define MAIN_THREAD_EM_ASM_INT_V(...) 0 diff --git a/include/emp/web/js_utils.hpp b/include/emp/web/js_utils.hpp index 21b26d1d26..ee87eedca8 100644 --- a/include/emp/web/js_utils.hpp +++ b/include/emp/web/js_utils.hpp @@ -35,7 +35,7 @@ namespace emp { /// std::string type_string = type_map[typeid(T).name()]; /// /// Now we can pass type_string.c_str() into MAIN_THREAD_EM_ASM: - /// `MAIN_THREAD_EM_ASM({ + /// `MAIN_THREAD_EMP_ASM({ /// var value = getValue($0, $1); /// }, pointer, type_string.c_str();` @@ -89,10 +89,10 @@ namespace emp { // Clear array, if this isn't a recursive call if (recursive_el.size() == 0) { - MAIN_THREAD_EM_ASM({emp_i.__incoming_array = [];}); + MAIN_THREAD_EMP_ASM({emp_i.__incoming_array = [];}); } - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var curr_array = emp_i.__incoming_array; var depth = 0; @@ -117,10 +117,10 @@ namespace emp { { // Clear array, if this isn't a recursive call if (recursive_el.size() == 0) { - MAIN_THREAD_EM_ASM({emp_i.__incoming_array = [];}); + MAIN_THREAD_EMP_ASM({emp_i.__incoming_array = [];}); }; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__curr_array = emp_i.__incoming_array; var depth = 0; @@ -135,12 +135,12 @@ namespace emp { // Iterate over array, get values, and add them to incoming array. for (auto val : values) { (void) val; - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__curr_array.push(UTF8ToString($0)); }, val.c_str()); }; - MAIN_THREAD_EM_ASM({delete emp_i.__curr_array;}); + MAIN_THREAD_EMP_ASM({delete emp_i.__curr_array;}); } // Handle user-defined JSON_TYPE @@ -151,11 +151,11 @@ namespace emp { std::map map_type_names = get_type_to_string_map(); // Initialize array in Javascript if (recursive_el.size() == 0) { - MAIN_THREAD_EM_ASM({emp_i.__incoming_array = [];}); + MAIN_THREAD_EMP_ASM({emp_i.__incoming_array = [];}); } // Initialize objects in Javascript - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var curr_array = emp_i.__incoming_array; var depth = 0; @@ -184,7 +184,7 @@ namespace emp { != map_type_names.end()), values[j].var_types[i].name()); // Load data into array of objects - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var curr_array = emp_i.__incoming_array; var depth = 0; @@ -224,11 +224,11 @@ namespace emp { // Initialize if this is the first call to this function if (recursive_el.size() == 0) { - MAIN_THREAD_EM_ASM({emp_i.__incoming_array = [];}); + MAIN_THREAD_EMP_ASM({emp_i.__incoming_array = [];}); } // Append empty arrays to array that we are currently handling in recursion - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var curr_array = emp_i.__incoming_array; var depth = 0; while (curr_array.length > 0) { @@ -258,11 +258,11 @@ namespace emp { // Initialize if this is the first call to this function if (recursive_el.size() == 0) { - MAIN_THREAD_EM_ASM({emp_i.__incoming_array = [];}); + MAIN_THREAD_EMP_ASM({emp_i.__incoming_array = [];}); } // Append empty arrays to array that we are currently handling in recursion - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ var curr_array = emp_i.__incoming_array; var depth = 0; while (curr_array.length > 0) { @@ -527,23 +527,23 @@ namespace emp { // Create temp array to hold whole array while pieces are passed in if (recurse == 0) { - MAIN_THREAD_EM_ASM({emp_i.__temp_array = [emp_i.__outgoing_array];}); + MAIN_THREAD_EMP_ASM({emp_i.__temp_array = [emp_i.__outgoing_array];}); } else { // This is a little wasteful of space, but the alternatives are // surprisingly ugly - MAIN_THREAD_EM_ASM({emp_i.__temp_array.push(emp_i.__outgoing_array);}); + MAIN_THREAD_EMP_ASM({emp_i.__temp_array.push(emp_i.__outgoing_array);}); } for (size_t i = 0; i < arr.size(); i++) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__outgoing_array = emp_i.__temp_array[emp_i.__temp_array.length - 1][$0]; }, i); pass_array_to_cpp(arr[i], true); } // Clear temp array - if (recurse == 0) { MAIN_THREAD_EM_ASM({emp_i.__temp_array = [];}); } - else { MAIN_THREAD_EM_ASM({emp_i.__temp_array.pop();}); } + if (recurse == 0) { MAIN_THREAD_EMP_ASM({emp_i.__temp_array = [];}); } + else { MAIN_THREAD_EMP_ASM({emp_i.__temp_array.pop();}); } } /// We can handle nested arrays through recursive calls on chunks of them @@ -554,17 +554,17 @@ namespace emp { int size = MAIN_THREAD_EM_ASM_INT({return emp_i.__outgoing_array.length}); if (recurse == 0) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__temp_array = [emp_i.__outgoing_array]; }); } else { // This is a little wasteful of space, but the alternatives are // surprisingly ugly - MAIN_THREAD_EM_ASM({emp_i.__temp_array.push(emp_i.__outgoing_array);}); + MAIN_THREAD_EMP_ASM({emp_i.__temp_array.push(emp_i.__outgoing_array);}); } for (int i = 0; i < size; i++) { - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__outgoing_array = emp_i.__temp_array[emp_i.__temp_array.length - 1][$0]; }, i); while ((int)arr.size() <= i) { @@ -575,9 +575,9 @@ namespace emp { // Clear temp array if (recurse == 0) { - MAIN_THREAD_EM_ASM({emp_i.__temp_array = [];}); + MAIN_THREAD_EMP_ASM({emp_i.__temp_array = [];}); } else { - MAIN_THREAD_EM_ASM({emp_i.__temp_array.pop();}); + MAIN_THREAD_EMP_ASM({emp_i.__temp_array.pop();}); } } @@ -600,7 +600,7 @@ namespace emp { // pass in extracted keys vector to JS emp::pass_array_to_javascript(keys); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__incoming_map_keys = emp_i.__incoming_array; }); @@ -615,7 +615,7 @@ namespace emp { // pass in extracted values vector to JS emp::pass_array_to_javascript(values); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__incoming_map_values = emp_i.__incoming_array; // create dictionary @@ -642,7 +642,7 @@ namespace emp { // pass in keys vector to JS emp::pass_array_to_javascript(keys); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__incoming_map_keys = emp_i.__incoming_array; }); @@ -657,7 +657,7 @@ namespace emp { // pass in values vector to JS emp::pass_array_to_javascript(values); - MAIN_THREAD_EM_ASM({ + MAIN_THREAD_EMP_ASM({ emp_i.__incoming_map_values = emp_i.__incoming_array; // create dictionary From af36a633c00ff8e5fd0701f7674c3f55e133f0f6 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Thu, 28 Jan 2021 17:23:49 -0500 Subject: [PATCH 018/228] Fixup MatchDepository caching --- include/emp/matching/MatchDepository.hpp | 29 ++++++++++++++++++------ 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/include/emp/matching/MatchDepository.hpp b/include/emp/matching/MatchDepository.hpp index 2a4756010e..66e0a8d515 100644 --- a/include/emp/matching/MatchDepository.hpp +++ b/include/emp/matching/MatchDepository.hpp @@ -15,6 +15,8 @@ #include #include +#include "../../../third-party/robin-hood-hashing/src/include/robin_hood.h" + #include "../datastructs/SmallFifoMap.hpp" #include "../datastructs/SmallVector.hpp" @@ -27,7 +29,7 @@ template< typename Metric, typename Selector, typename Regulator, - size_t RawCacheSize=0, + bool UseRawCache=1, size_t RegulatedCacheSize=0 > class MatchDepository { @@ -46,7 +48,7 @@ template< emp::vector< emp::internal::DepositoryEntry > data; // Cache of match results without regulation. - emp::SmallFifoMap< query_t, res_t, RawCacheSize > cache_raw; + robin_hood::unordered_flat_map< query_t, res_t > cache_raw; // Cache of match results with regulation. emp::SmallFifoMap< query_t, res_t, RegulatedCacheSize > cache_regulated; @@ -67,7 +69,12 @@ template< } ); - return Selector::select( scores ); + const auto res = Selector::select( scores ); + + if constexpr (RegulatedCacheSize > 0) cache_regulated.set( query, res ); + + return res; + } /// Return ptr to cached regulated result on success, nullptr on failure. @@ -89,15 +96,23 @@ template< [&](const auto& entry){ return Metric::calculate(query, entry.tag); } ); - return Selector::select( scores ); + const auto res = Selector::select( scores ); + + if constexpr ( UseRawCache ) cache_raw.emplace( query, res ); + + return res; } /// Return ptr to cached raw result on success, nullptr on failure. - res_t* DoRawLookup( const query_t& query ) { return cache_raw.get( query ); } + res_t* DoRawLookup( const query_t& query ) { + const auto res = cache_raw.find( query ); + return (res == std::end( cache_raw )) ? nullptr : &(res->second); + } /// Clear cached raw, regulated results. void ClearCache() { - if constexpr ( RawCacheSize > 0 ) cache_raw.clear(); + // clear is an expensive operation on robin_hood::unordered_flat_map + if constexpr ( UseRawCache ) if ( cache_raw.size() ) cache_raw.clear(); if constexpr ( RegulatedCacheSize > 0 ) cache_regulated.clear(); } @@ -125,7 +140,7 @@ template< __attribute__ ((hot)) res_t MatchRaw( const query_t& query ) { - if constexpr ( RawCacheSize > 0 ) { + if constexpr ( UseRawCache ) { if (const auto res = DoRawLookup( query ); res != nullptr) return *res; } From 480595fc0759ac28705dcf38e7c969e5f66abe4e Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Fri, 29 Jan 2021 12:55:30 -0500 Subject: [PATCH 019/228] Static assert against un-zeroed filler bits bug --- include/emp/bits/BitSet.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/include/emp/bits/BitSet.hpp b/include/emp/bits/BitSet.hpp index c623d81827..107b91e587 100644 --- a/include/emp/bits/BitSet.hpp +++ b/include/emp/bits/BitSet.hpp @@ -135,6 +135,7 @@ namespace emp { // TODO currently only implemented for NUM_FIELDS == 1 static_assert( NUM_FIELDS == 1 ); + static_assert( LAST_BIT == 0 ); bit_set[0] <<= shift; } From 9548cb9db42ffa8f4cf4b91df9d51290c8b291e0 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 1 Feb 2021 22:00:16 -0500 Subject: [PATCH 020/228] Bugfix: reset start token when clearing map --- include/emp/datastructs/SmallFifoMap.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/emp/datastructs/SmallFifoMap.hpp b/include/emp/datastructs/SmallFifoMap.hpp index 28aeb363bf..0c470a0709 100644 --- a/include/emp/datastructs/SmallFifoMap.hpp +++ b/include/emp/datastructs/SmallFifoMap.hpp @@ -67,7 +67,7 @@ class SmallFifoMap { static constexpr size_t capacity() { return N; } /// Clear the cache. - void clear() { size_ = 0; } + void clear() { size_ = 0; oldest = 0; } /// Find key-value pair iterator in cache. iterator find(const Key& key) { return std::find_if( From 40ff566e6ef9946a43d91c23c649a38e8a576951 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Tue, 2 Feb 2021 23:15:01 -0500 Subject: [PATCH 021/228] Implement AddVal on DataFile --- include/emp/data/DataFile.hpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/include/emp/data/DataFile.hpp b/include/emp/data/DataFile.hpp index 46d05f3690..9e099b1e52 100644 --- a/include/emp/data/DataFile.hpp +++ b/include/emp/data/DataFile.hpp @@ -186,6 +186,13 @@ namespace emp { return Add(in_fun, key, desc); } + /// Add a function that always prints the value @param. + template + size_t AddVal(const T & val, const std::string & key="", const std::string & desc="") { + std::function in_fun = [val](std::ostream & os){ os << val; }; + return Add(in_fun, key, desc); + } + /// Add a function that always pulls the current value from the DataNode @param node. /// Requires that @param node have the data::Current modifier. /// If @param reset is set true, we will call Reset on that DataNode after pulling the From a27bcdf9c97fab00b5defc556a69f805490f0387 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Tue, 2 Feb 2021 23:15:15 -0500 Subject: [PATCH 022/228] Strip trailing whitespace --- include/emp/data/DataFile.hpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/emp/data/DataFile.hpp b/include/emp/data/DataFile.hpp index 9e099b1e52..f668df3909 100644 --- a/include/emp/data/DataFile.hpp +++ b/include/emp/data/DataFile.hpp @@ -345,7 +345,7 @@ namespace emp { /// Requires that @param node have the data::Stats or data::FullStats modifier. /// @param key and @param desc will have the name of the stat appended to the beginning. /// Note: excludes standard deviation, because it is easily calculated from variance - /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic + /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic /// calculated and only resets on the last. Otherwise there would be a risk of data loss or /// at least massive replication of computational effort. Even still, think carefully /// before setting either of these to true when you're drawing varied information from the @@ -364,7 +364,7 @@ namespace emp { /// Requires that @param node have the data::Stats or data::FullStats modifier. /// @param key and @param desc will have the name of the stat appended to the beginning. /// Note: excludes standard deviation, because it is easily calculated from variance - /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic + /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic /// calculated and only resets on the last. Otherwise there would be a risk of data loss or /// at least massive replication of computational effort. Even still, think carefully /// before setting either of these to true when you're drawing varied information from the @@ -396,7 +396,7 @@ namespace emp { /// from @param node. Requires that @param node have the data::Histogram modifier. /// If @param reset is set true, we will call Reset on that DataNode after pulling the /// current value from the node - /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic + /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic /// calculated and only resets on the last. Otherwise there would be a risk of data loss or /// at least massive replication of computational effort. Even still, think carefully /// before setting either of these to true when you're drawing varied information from the From f1794ecf836bd8b2d60bb907e5cb4e54d7964914 Mon Sep 17 00:00:00 2001 From: Katherine Date: Thu, 4 Feb 2021 16:01:00 +0000 Subject: [PATCH 023/228] Write tests for NativeCanvas Circle --- tests/native/Canvas.cpp | 126 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 tests/native/Canvas.cpp diff --git a/tests/native/Canvas.cpp b/tests/native/Canvas.cpp new file mode 100644 index 0000000000..c856017fc9 --- /dev/null +++ b/tests/native/Canvas.cpp @@ -0,0 +1,126 @@ +#define CATCH_CONFIG_MAIN +#include "third-party/Catch/single_include/catch2/catch.hpp" + + +#include "emp/web/_NativeCanvas.hpp" + + +TEST_CASE("Test Circle Locations", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Circle(20, 40, 20); + canvas.Circle(230, 40, 20); + canvas.Circle(440, 40, 20); + canvas.Circle(20, 440, 20); + canvas.Circle(230, 440, 20); + canvas.Circle(440, 440, 20); + + canvas.SavePNG("circle_location.png"); + +} + +TEST_CASE("Test Circle Locations By Point", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Circle(emp::Point(40,60), 20); + canvas.Circle(emp::Point(250,60), 20); + canvas.Circle(emp::Point(460,60), 20); + canvas.Circle(emp::Point(40,460), 20); + canvas.Circle(emp::Point(250,460), 20); + canvas.Circle(emp::Point(460,460), 20); + + canvas.SavePNG("circle_location2.png"); + +} + +TEST_CASE("Test Circle Colors", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Circle(20, 40, 20); + canvas.Circle(80, 40, 20, "white", "red"); + canvas.Circle(140, 40, 20, "white", "yellow"); + canvas.Circle(200, 40, 20, "white", "blue"); + + canvas.Circle(20, 120, 20, "black", "white"); + canvas.Circle(80, 120, 20, "red", "black"); + canvas.Circle(140, 120, 20, "yellow", "black"); + canvas.Circle(200, 120, 20, "blue", "black"); + + canvas.SavePNG("circle_color.png"); + +} + +TEST_CASE("Test Circle Size", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Circle(20, 85, 5); + canvas.Circle(60, 65, 25); + canvas.Circle(140, 40, 50); + canvas.Circle(300, 15, 75); + canvas.SavePNG("circle_size.png"); + +} + +TEST_CASE("Test Circle Thickness", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Circle(20, 40, 20, "white", "black", 1); + canvas.Circle(80, 40, 20, "white", "black", 3); + canvas.Circle(140, 40, 20, "white", "black", 5); + canvas.Circle(200, 40, 20, "white", "black", 7); + + + canvas.SavePNG("circle_thickness.png"); + +} +/* +TEST_CASE("Test Rectangle Locations", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Circle(20, 40, 20); + canvas.Circle(230, 40, 20); + canvas.Circle(440, 40, 20); + canvas.Circle(20, 440, 20); + canvas.Circle(230, 440, 20); + canvas.Circle(440, 440, 20); + + canvas.SavePNG("rect_location.png"); + +} + +TEST_CASE("Test Rectangle Locations", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Circle(20, 40, 20); + canvas.Circle(230, 40, 20); + canvas.Circle(440, 40, 20); + canvas.Circle(20, 440, 20); + canvas.Circle(230, 440, 20); + canvas.Circle(440, 440, 20); + + canvas.SavePNG("rect_location.png"); + +} + +TEST_CASE("Test Text Locations", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.text(20, 40, "upper left"); + canvas.text(230, 40, "upper middle"); + canvas.text(440, 40, "top right"); + canvas.text(20, 440, "bottom left"); + canvas.text(230, 440, "bottom middle"); + canvas.text(440, 440, "bottom right"); + + canvas.SavePNG("text_location.png"); + +} +*/ \ No newline at end of file From 6c31e4afe5f2c3cccd9f0cb26e15be60382b2dc5 Mon Sep 17 00:00:00 2001 From: Katherine Date: Thu, 4 Feb 2021 16:04:23 +0000 Subject: [PATCH 024/228] Implement NativeCanvas Circle --- include/emp/web/_NativeCanvas.hpp | 45 +++++++++++++++++-------------- tests/native/Makefile | 2 +- 2 files changed, 26 insertions(+), 21 deletions(-) diff --git a/include/emp/web/_NativeCanvas.hpp b/include/emp/web/_NativeCanvas.hpp index 824d2dc3c6..7157493bee 100644 --- a/include/emp/web/_NativeCanvas.hpp +++ b/include/emp/web/_NativeCanvas.hpp @@ -65,32 +65,37 @@ namespace web { /// Set Canvas size. void SetSize(const double w, const double h) { - emp_assert(false, "unimplemented"); + this->SetWidth(w); + this->SetHeight(h); } /// Add a Circle to this canvas; provide constructor for the CanvasCircle with a position and radius /// as well as optional face color, line color, and line width. - template - Canvas & Circle(Point center, double _r, Ts &&... vals) { - emp_assert(false, "unimplemented"); - return *this; + Canvas & Circle(Point center, double _r, const std::string& fc="white", const std::string& lc="black", const float thickness=2) { + double x = center.GetX() - _r; + double y = center.GetY() - _r; + return this->Circle(x, y, _r, fc, lc, thickness); } - template - Canvas & Circle(double _x, double _y, double _r, Ts &&... vals) { - emp_assert(false, "unimplemented"); + Canvas & Circle(double _x, double _y, double _r, const std::string& fc="white", const std::string& lc="black", const float thickness=2) { + sf::CircleShape circle(_r); + circle.setPosition(_x, _y); + circle.setFillColor((sf::Color) emp::web::Color( fc )); + circle.setOutlineColor((sf::Color) emp::web::Color( lc )); + circle.setOutlineThickness(thickness); + window.draw( circle ); return *this; } /// Add a Rectangle to this canvas at x,y with width w and heigh h. Optional face color and /// line color. - template - Canvas & Rect(Point corner, double w, double h, Ts &&... vals) { - emp_assert(false, "unimplemented"); - return *this; + Canvas & Rect( + Point corner, const double w, const double h, + const std::string& fc="", const std::string& lc="", const double lw=1.0 + ) { + return this->Rect(corner.GetX(),corner.GetY(), w, h, fc, lc, lw); } - template Canvas & Rect( const double x, const double y, const double w, const double h, const std::string& fc="", const std::string& lc="", const double lw=1.0 @@ -120,7 +125,6 @@ namespace web { /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. - template Canvas & Line( const double x1, const double y1, const double x2, const double y2, const std::string& fc="", const std::string& lc="", const double lw=1.0 @@ -135,10 +139,11 @@ namespace web { return *this; } - template - Canvas & Line(emp::Point p1, emp::Point p2, Ts &&... vals) { - emp_assert(false, "unimplemented"); - return *this; + Canvas & Line( + emp::Point p1, emp::Point p2, const std::string& fc="", + const std::string& lc="", const double lw=1.0 + ) { + return this->Line(p1.GetX(), p1.GetY(), p2.GetX(), p2.GetY(), fc, lc, lw); } /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. @@ -184,8 +189,8 @@ namespace web { /// Draw a circle onto this canvas. Canvas & Draw(const emp::Circle & circle, - const std::string & fc="", const std::string & lc="") { - emp_assert(false, "unimplemented"); + const std::string & fc="white", const std::string & lc="black") { + this->Circle(width/2, height/2, 5, fc, lc); return *this; } diff --git a/tests/native/Makefile b/tests/native/Makefile index 09b1c59d1d..33ce417993 100644 --- a/tests/native/Makefile +++ b/tests/native/Makefile @@ -1,4 +1,4 @@ -TEST_NAMES = CanvasShape +TEST_NAMES = CanvasShape Canvas # -O3 -Wl,--stack,8388608 -ftrack-macro-expansion=0 FLAGS = -std=c++17 -pthread -Wall -Wno-unused-function -Wno-unused-private-field -I../../include/ -I../../ -I../../third-party/cereal/include/ From d5268fec4ea9bad28e809d1543f3834e76b32661 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Sat, 6 Feb 2021 16:17:12 -0500 Subject: [PATCH 025/228] Refactor for readability --- include/emp/matching/regulators/PlusCountdownRegulator.hpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/include/emp/matching/regulators/PlusCountdownRegulator.hpp b/include/emp/matching/regulators/PlusCountdownRegulator.hpp index 7cfb7366c7..872e5ad6c8 100644 --- a/include/emp/matching/regulators/PlusCountdownRegulator.hpp +++ b/include/emp/matching/regulators/PlusCountdownRegulator.hpp @@ -111,9 +111,8 @@ struct PlusCountdownRegulator { timer -= std::min(timer, static_cast(steps)); } - return timer == 0 ? ( - std::exchange(state, 0.0f) != 0.0f - ) : false; + if ( timer == 0 ) return std::exchange(state, 0.0f) != 0.0f; + else return false; } From 054b5d034e436810ef4d55ff69b222301fb640ee Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Sat, 6 Feb 2021 16:16:47 -0500 Subject: [PATCH 026/228] Add MaxUpreg, CountdownStart options --- .../regulators/PlusCountdownRegulator.hpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/include/emp/matching/regulators/PlusCountdownRegulator.hpp b/include/emp/matching/regulators/PlusCountdownRegulator.hpp index 872e5ad6c8..c1e3e30184 100644 --- a/include/emp/matching/regulators/PlusCountdownRegulator.hpp +++ b/include/emp/matching/regulators/PlusCountdownRegulator.hpp @@ -19,7 +19,12 @@ namespace emp { -template > +template < + typename Slope=std::deci, + typename MaxUpreg=std::ratio<1>, + typename ClampLeeway=std::ratio<0>, + size_t CountdownStart=1 +> struct PlusCountdownRegulator { using set_t = float; @@ -29,6 +34,9 @@ struct PlusCountdownRegulator { static constexpr float slope = ( static_cast(Slope::num) / static_cast(Slope::den) ); + static constexpr float max_up = ( + -static_cast(MaxUpreg::num) / static_cast(MaxUpreg::den) + ); static constexpr float clamp_leeway = ( static_cast(ClampLeeway::num) / static_cast(ClampLeeway::den) ); @@ -43,7 +51,7 @@ struct PlusCountdownRegulator { // 0.0f | neutral // -1.0f | -= slope // ... | ... - // -inf | -= 1.0f + // -inf | -= MaxUpreg // countdown timer to reseting state unsigned char timer{}; @@ -53,7 +61,7 @@ struct PlusCountdownRegulator { __attribute__ ((hot)) float operator()(const float raw_score) const { const float res = std::clamp( - slope * state + raw_score, + std::max(slope * state, max_up) + raw_score, -clamp_leeway, 1.0f + clamp_leeway ); @@ -78,7 +86,7 @@ struct PlusCountdownRegulator { bool Set(const float& set) { if ( std::isnan( set ) ) return false; - timer = 1; + timer = CountdownStart; // return whether regulator value changed // (i.e., we need to purge the cache) @@ -91,7 +99,7 @@ struct PlusCountdownRegulator { bool Adj(const float& amt) { if ( std::isnan( amt ) ) return false; - timer = 1; + timer = CountdownStart; state += amt; From 0473cbe6270b46f7604b28297b71fc3827c41ef5 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Sat, 6 Feb 2021 19:37:55 -0500 Subject: [PATCH 027/228] Use int32_t, uint32_t for decay countdown --- include/emp/matching/MatchDepository.hpp | 2 +- .../regulators/PlusCountdownRegulator.hpp | 18 ++++++++---------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/include/emp/matching/MatchDepository.hpp b/include/emp/matching/MatchDepository.hpp index 66e0a8d515..0ca897d595 100644 --- a/include/emp/matching/MatchDepository.hpp +++ b/include/emp/matching/MatchDepository.hpp @@ -192,7 +192,7 @@ template< } /// Apply decay to a regulator. - void DecayRegulator(const uid_t uid, const int steps=1) { + void DecayRegulator(const uid_t uid, const int32_t steps=1) { if ( data.at(uid).reg.Decay(steps) ) { if constexpr ( RegulatedCacheSize > 0 ) cache_regulated.clear(); } diff --git a/include/emp/matching/regulators/PlusCountdownRegulator.hpp b/include/emp/matching/regulators/PlusCountdownRegulator.hpp index c1e3e30184..3ca2ba75e6 100644 --- a/include/emp/matching/regulators/PlusCountdownRegulator.hpp +++ b/include/emp/matching/regulators/PlusCountdownRegulator.hpp @@ -23,7 +23,7 @@ template < typename Slope=std::deci, typename MaxUpreg=std::ratio<1>, typename ClampLeeway=std::ratio<0>, - size_t CountdownStart=1 + uint32_t CountdownStart=1 > struct PlusCountdownRegulator { @@ -54,7 +54,7 @@ struct PlusCountdownRegulator { // -inf | -= MaxUpreg // countdown timer to reseting state - unsigned char timer{}; + uint32_t timer{}; /// Apply regulation to a raw match score. /// Returns a value between 0.0f and 1.0f @@ -110,14 +110,12 @@ struct PlusCountdownRegulator { /// Timer decay. /// Return whether MatchBin should be updated - bool Decay(const int steps) { - if (steps < 0) { - // if reverse decay is requested - timer += -steps; - } else { - // if forward decay is requested - timer -= std::min(timer, static_cast(steps)); - } + bool Decay(const int32_t steps) { + + const int64_t res = static_cast(timer) + steps; + constexpr int64_t floor = std::numeric_limits::lowest(); + constexpr int64_t ceil = std::numeric_limits::max(); + timer = std::clamp( res, floor, ceil ); if ( timer == 0 ) return std::exchange(state, 0.0f) != 0.0f; else return false; From 829679a95d179ab3e9d0a89dd1d13f94b431410e Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Sat, 6 Feb 2021 20:16:14 -0500 Subject: [PATCH 028/228] Add operator==, operator!=, name methods --- .../regulators/PlusCountdownRegulator.hpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/include/emp/matching/regulators/PlusCountdownRegulator.hpp b/include/emp/matching/regulators/PlusCountdownRegulator.hpp index 3ca2ba75e6..f3d9030522 100644 --- a/include/emp/matching/regulators/PlusCountdownRegulator.hpp +++ b/include/emp/matching/regulators/PlusCountdownRegulator.hpp @@ -15,6 +15,8 @@ #include #include #include +#include +#include #include namespace emp { @@ -125,6 +127,20 @@ struct PlusCountdownRegulator { /// Return a float representing the state of the regulator. const float & View() const { return state; } + bool operator==( const PlusCountdownRegulator& other ) const { + return std::tuple{ + state, timer + } == std::tuple{ + other.state, other.timer + }; + } + + bool operator!=( const PlusCountdownRegulator& other ) const { + return !operator==( other ); + } + + std::string name() const { return "Plus Countdown Regulator"; } + }; } // namespace emp From 3d71ccabcd9c28376c672a10eaa86fc966459793 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 8 Feb 2021 13:51:29 -0500 Subject: [PATCH 029/228] Disable failing assert in cereal --- third-party/cereal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/third-party/cereal b/third-party/cereal index 739bd1bd16..93ce8c7e0c 160000 --- a/third-party/cereal +++ b/third-party/cereal @@ -1 +1 @@ -Subproject commit 739bd1bd160aaf6ba209a776dc6c96b25eb939cd +Subproject commit 93ce8c7e0cecab6cdc58038e7c806b61df773be4 From 0ecca01f033b52d93499a857cdf51c003d2539d5 Mon Sep 17 00:00:00 2001 From: Katherine Date: Tue, 9 Feb 2021 15:48:43 +0000 Subject: [PATCH 030/228] Load sf::Font from header file for Text creation --- include/emp/web/LiberationSansRegular.hpp | 11643 ++++++++++++++++++++ include/emp/web/_NativeCanvas.hpp | 35 +- tests/native/Makefile | 2 +- 3 files changed, 11667 insertions(+), 13 deletions(-) create mode 100644 include/emp/web/LiberationSansRegular.hpp diff --git a/include/emp/web/LiberationSansRegular.hpp b/include/emp/web/LiberationSansRegular.hpp new file mode 100644 index 0000000000..55199cd341 --- /dev/null +++ b/include/emp/web/LiberationSansRegular.hpp @@ -0,0 +1,11643 @@ +#ifndef EMP_LIBERATION_SANS_REGULAR_HPP +#define EMP_LIBERATION_SANS_REGULAR_HPP + +// we should add in some more information about where the font came from and its license here + +// xxd -i LiberationSans-Regular.ttf > LiberationSansRegular.hpp + +namespace emp { + +unsigned char LiberationSans_Regular_ttf[] = { + 0x00, 0x01, 0x00, 0x00, 0x00, 0x13, 0x01, 0x00, 0x00, 0x04, 0x00, 0x30, + 0x46, 0x46, 0x54, 0x4d, 0x68, 0xfe, 0xe0, 0x66, 0x00, 0x02, 0x20, 0xdc, + 0x00, 0x00, 0x00, 0x1c, 0x47, 0x44, 0x45, 0x46, 0x00, 0x27, 0x02, 0xcf, + 0x00, 0x02, 0x0f, 0xac, 0x00, 0x00, 0x00, 0x26, 0x47, 0x50, 0x4f, 0x53, + 0x6a, 0x77, 0x9b, 0x9d, 0x00, 0x02, 0x10, 0x24, 0x00, 0x00, 0x10, 0xb6, + 0x47, 0x53, 0x55, 0x42, 0x93, 0x3c, 0x82, 0x4b, 0x00, 0x02, 0x0f, 0xd4, + 0x00, 0x00, 0x00, 0x50, 0x4f, 0x53, 0x2f, 0x32, 0xf7, 0x12, 0x86, 0x87, + 0x00, 0x00, 0x01, 0xb8, 0x00, 0x00, 0x00, 0x60, 0x63, 0x6d, 0x61, 0x70, + 0x04, 0xa0, 0x9d, 0x77, 0x00, 0x00, 0x0c, 0xbc, 0x00, 0x00, 0x06, 0xf2, + 0x63, 0x76, 0x74, 0x20, 0x43, 0x9d, 0x43, 0xea, 0x00, 0x00, 0x1d, 0x90, + 0x00, 0x00, 0x02, 0x16, 0x66, 0x70, 0x67, 0x6d, 0x73, 0xd3, 0x23, 0xb0, + 0x00, 0x00, 0x13, 0xb0, 0x00, 0x00, 0x07, 0x05, 0x67, 0x61, 0x73, 0x70, + 0x00, 0x18, 0x00, 0x09, 0x00, 0x02, 0x0f, 0x9c, 0x00, 0x00, 0x00, 0x10, + 0x67, 0x6c, 0x79, 0x66, 0xd5, 0x51, 0xf5, 0x03, 0x00, 0x00, 0x24, 0xfc, + 0x00, 0x01, 0xb8, 0x34, 0x68, 0x65, 0x61, 0x64, 0xf4, 0xa7, 0xa9, 0x24, + 0x00, 0x00, 0x01, 0x3c, 0x00, 0x00, 0x00, 0x36, 0x68, 0x68, 0x65, 0x61, + 0x0e, 0x4b, 0x08, 0xac, 0x00, 0x00, 0x01, 0x74, 0x00, 0x00, 0x00, 0x24, + 0x68, 0x6d, 0x74, 0x78, 0x61, 0x1e, 0x0e, 0x0a, 0x00, 0x00, 0x02, 0x18, + 0x00, 0x00, 0x0a, 0xa4, 0x6b, 0x65, 0x72, 0x6e, 0xc7, 0x51, 0xc1, 0x9e, + 0x00, 0x01, 0xdd, 0x30, 0x00, 0x00, 0x15, 0x54, 0x6c, 0x6f, 0x63, 0x61, + 0x07, 0x05, 0x79, 0x1e, 0x00, 0x00, 0x1f, 0xa8, 0x00, 0x00, 0x05, 0x54, + 0x6d, 0x61, 0x78, 0x70, 0x07, 0x0e, 0x07, 0xd1, 0x00, 0x00, 0x01, 0x98, + 0x00, 0x00, 0x00, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x1e, 0x81, 0xf6, 0xda, + 0x00, 0x01, 0xf2, 0x84, 0x00, 0x00, 0x08, 0x6a, 0x70, 0x6f, 0x73, 0x74, + 0x33, 0x81, 0xdb, 0xb7, 0x00, 0x01, 0xfa, 0xf0, 0x00, 0x00, 0x14, 0xa9, + 0x70, 0x72, 0x65, 0x70, 0x7a, 0xc8, 0x5e, 0xf6, 0x00, 0x00, 0x1a, 0xb8, + 0x00, 0x00, 0x02, 0xd5, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x11, 0xeb, + 0x90, 0xd9, 0xec, 0x63, 0x5f, 0x0f, 0x3c, 0xf5, 0x00, 0x1f, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xbf, 0x1a, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, + 0xcf, 0x92, 0x4d, 0xe1, 0xfe, 0x60, 0xfd, 0x93, 0x08, 0x67, 0x07, 0x48, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x07, 0x3e, 0xfe, 0x4e, 0x00, 0x43, 0x08, 0xc0, + 0xfe, 0x60, 0xfe, 0xf4, 0x08, 0x67, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xa9, + 0x00, 0x01, 0x00, 0x00, 0x02, 0xa9, 0x01, 0x52, 0x00, 0x54, 0x00, 0x8c, + 0x00, 0x05, 0x00, 0x02, 0x00, 0x10, 0x00, 0x2f, 0x00, 0x5a, 0x00, 0x00, + 0x03, 0x9e, 0x05, 0xc0, 0x00, 0x03, 0x00, 0x02, 0x00, 0x03, 0x04, 0xb8, + 0x01, 0x90, 0x00, 0x05, 0x00, 0x00, 0x05, 0x9a, 0x05, 0x33, 0x00, 0x00, + 0x01, 0x1b, 0x05, 0x9a, 0x05, 0x33, 0x00, 0x00, 0x03, 0xd1, 0x00, 0x66, + 0x02, 0x12, 0x08, 0x05, 0x02, 0x0b, 0x06, 0x04, 0x02, 0x02, 0x02, 0x02, + 0x02, 0x04, 0xa0, 0x00, 0x02, 0xaf, 0x50, 0x00, 0x78, 0xfb, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x31, 0x41, 0x53, 0x43, 0x00, 0x40, + 0x00, 0x21, 0xfb, 0x02, 0x05, 0xd3, 0xfe, 0x51, 0x01, 0x33, 0x07, 0x3e, + 0x01, 0xb2, 0x60, 0x00, 0x00, 0x9f, 0xdf, 0xd7, 0x00, 0x00, 0x04, 0x3a, + 0x05, 0x81, 0x00, 0x00, 0x00, 0x20, 0x00, 0x02, 0x02, 0xec, 0x00, 0x44, + 0x00, 0x00, 0x00, 0x00, 0x02, 0xaa, 0x00, 0x00, 0x02, 0x39, 0x00, 0x00, + 0x02, 0x39, 0x00, 0xb9, 0x02, 0xd7, 0x00, 0x57, 0x04, 0x73, 0x00, 0x09, + 0x04, 0x73, 0x00, 0x16, 0x07, 0x1d, 0x00, 0x49, 0x05, 0x56, 0x00, 0x48, + 0x01, 0x87, 0x00, 0x68, 0x02, 0xaa, 0x00, 0x7f, 0x02, 0xaa, 0x00, 0x0c, + 0x03, 0x1d, 0x00, 0x21, 0x04, 0xac, 0x00, 0x64, 0x02, 0x39, 0x00, 0xb8, + 0x02, 0xaa, 0x00, 0x5b, 0x02, 0x39, 0x00, 0xbb, 0x02, 0x39, 0x00, 0x00, + 0x04, 0x73, 0x00, 0x50, 0x04, 0x73, 0x00, 0x9c, 0x04, 0x73, 0x00, 0x67, + 0x04, 0x73, 0x00, 0x4e, 0x04, 0x73, 0x00, 0x2f, 0x04, 0x73, 0x00, 0x52, + 0x04, 0x73, 0x00, 0x68, 0x04, 0x73, 0x00, 0x69, 0x04, 0x73, 0x00, 0x59, + 0x04, 0x73, 0x00, 0x60, 0x02, 0x39, 0x00, 0xbb, 0x02, 0x39, 0x00, 0xb8, + 0x04, 0xac, 0x00, 0x65, 0x04, 0xac, 0x00, 0x64, 0x04, 0xac, 0x00, 0x65, + 0x04, 0x73, 0x00, 0x54, 0x08, 0x1f, 0x00, 0xa1, 0x05, 0x56, 0x00, 0x04, + 0x05, 0x56, 0x00, 0xa8, 0x05, 0xc7, 0x00, 0x68, 0x05, 0xc7, 0x00, 0xa8, + 0x05, 0x56, 0x00, 0xa8, 0x04, 0xe3, 0x00, 0xa8, 0x06, 0x39, 0x00, 0x67, + 0x05, 0xc7, 0x00, 0xa8, 0x02, 0x39, 0x00, 0xbd, 0x04, 0x00, 0x00, 0x20, + 0x05, 0x56, 0x00, 0xa8, 0x04, 0x73, 0x00, 0xa8, 0x06, 0xaa, 0x00, 0xa8, + 0x05, 0xc7, 0x00, 0xa8, 0x06, 0x39, 0x00, 0x61, 0x05, 0x56, 0x00, 0xa8, + 0x06, 0x39, 0x00, 0x61, 0x05, 0xc7, 0x00, 0xa8, 0x05, 0x56, 0x00, 0x5d, + 0x04, 0xe3, 0x00, 0x2e, 0x05, 0xc7, 0x00, 0x9e, 0x05, 0x56, 0x00, 0x09, + 0x07, 0x8d, 0x00, 0x09, 0x05, 0x56, 0x00, 0x2e, 0x05, 0x56, 0x00, 0x2d, + 0x04, 0xe3, 0x00, 0x41, 0x02, 0x39, 0x00, 0x92, 0x02, 0x39, 0x00, 0x00, + 0x02, 0x39, 0x00, 0x10, 0x03, 0xc1, 0x00, 0x0a, 0x04, 0x73, 0xff, 0xe1, + 0x02, 0xaa, 0x00, 0x6a, 0x04, 0x73, 0x00, 0x57, 0x04, 0x73, 0x00, 0x84, + 0x04, 0x00, 0x00, 0x57, 0x04, 0x73, 0x00, 0x56, 0x04, 0x73, 0x00, 0x57, + 0x02, 0x39, 0x00, 0x1d, 0x04, 0x73, 0x00, 0x56, 0x04, 0x73, 0x00, 0x8e, + 0x01, 0xc7, 0x00, 0x89, 0x01, 0xc7, 0xff, 0xce, 0x04, 0x00, 0x00, 0x8a, + 0x01, 0xc7, 0x00, 0x8a, 0x06, 0xaa, 0x00, 0x88, 0x04, 0x73, 0x00, 0x88, + 0x04, 0x73, 0x00, 0x56, 0x04, 0x73, 0x00, 0x84, 0x04, 0x73, 0x00, 0x56, + 0x02, 0xaa, 0x00, 0x88, 0x04, 0x00, 0x00, 0x39, 0x02, 0x39, 0x00, 0x1f, + 0x04, 0x73, 0x00, 0x85, 0x04, 0x00, 0x00, 0x07, 0x05, 0xc7, 0xff, 0xfd, + 0x04, 0x00, 0x00, 0x17, 0x04, 0x00, 0x00, 0x05, 0x04, 0x00, 0x00, 0x31, + 0x02, 0xac, 0x00, 0x22, 0x02, 0x14, 0x00, 0xb7, 0x02, 0xac, 0x00, 0x22, + 0x04, 0xac, 0x00, 0x5c, 0x02, 0xaa, 0x00, 0xf2, 0x04, 0x73, 0x00, 0x87, + 0x04, 0x73, 0x00, 0x3a, 0x04, 0x73, 0x00, 0x71, 0x04, 0x73, 0xff, 0xfe, + 0x02, 0x14, 0x00, 0xb7, 0x04, 0x73, 0x00, 0x73, 0x02, 0xaa, 0x00, 0x2d, + 0x05, 0xe5, 0x00, 0x1f, 0x02, 0xf6, 0x00, 0x1a, 0x04, 0x73, 0x00, 0x53, + 0x04, 0xac, 0x00, 0x64, 0x05, 0xe5, 0x00, 0x1f, 0x04, 0x6b, 0xff, 0xef, + 0x03, 0x33, 0x00, 0x7a, 0x04, 0x64, 0x00, 0x41, 0x02, 0xaa, 0x00, 0x29, + 0x02, 0xaa, 0x00, 0x1b, 0x02, 0xaa, 0x00, 0x48, 0x04, 0x9c, 0x00, 0x8c, + 0x04, 0x4c, 0x00, 0x50, 0x02, 0x39, 0x00, 0xbb, 0x02, 0xaa, 0x00, 0x77, + 0x02, 0xaa, 0x00, 0x50, 0x02, 0xec, 0x00, 0x1b, 0x04, 0x73, 0x00, 0x53, + 0x06, 0xac, 0x00, 0x38, 0x06, 0xac, 0x00, 0x38, 0x06, 0xac, 0x00, 0x49, + 0x04, 0xe3, 0x00, 0x83, 0x05, 0x56, 0x00, 0x04, 0x05, 0x56, 0x00, 0x04, + 0x05, 0x56, 0x00, 0x04, 0x05, 0x56, 0x00, 0x04, 0x05, 0x56, 0x00, 0x04, + 0x05, 0x56, 0x00, 0x04, 0x08, 0x00, 0x00, 0x18, 0x05, 0xc7, 0x00, 0x68, + 0x05, 0x56, 0x00, 0xa8, 0x05, 0x56, 0x00, 0xa8, 0x05, 0x56, 0x00, 0xa8, + 0x05, 0x56, 0x00, 0xa8, 0x02, 0x39, 0x00, 0x09, 0x02, 0x39, 0x00, 0x8e, + 0x02, 0x39, 0xff, 0xd2, 0x02, 0x39, 0x00, 0x07, 0x05, 0xc7, 0x00, 0x0e, + 0x05, 0xc7, 0x00, 0xa8, 0x06, 0x39, 0x00, 0x61, 0x06, 0x39, 0x00, 0x61, + 0x06, 0x39, 0x00, 0x61, 0x06, 0x39, 0x00, 0x61, 0x06, 0x39, 0x00, 0x61, + 0x04, 0xac, 0x00, 0x8e, 0x06, 0x39, 0x00, 0x47, 0x05, 0xc7, 0x00, 0x9e, + 0x05, 0xc7, 0x00, 0x9e, 0x05, 0xc7, 0x00, 0x9e, 0x05, 0xc7, 0x00, 0x9e, + 0x05, 0x56, 0x00, 0x2d, 0x05, 0x56, 0x00, 0xa8, 0x04, 0xe3, 0x00, 0x8e, + 0x04, 0x73, 0x00, 0x57, 0x04, 0x73, 0x00, 0x57, 0x04, 0x73, 0x00, 0x57, + 0x04, 0x73, 0x00, 0x57, 0x04, 0x73, 0x00, 0x57, 0x04, 0x73, 0x00, 0x57, + 0x07, 0x1d, 0x00, 0x42, 0x04, 0x00, 0x00, 0x57, 0x04, 0x73, 0x00, 0x57, + 0x04, 0x73, 0x00, 0x57, 0x04, 0x73, 0x00, 0x57, 0x04, 0x73, 0x00, 0x57, + 0x02, 0x39, 0x00, 0x0a, 0x02, 0x39, 0x00, 0x87, 0x02, 0x39, 0xff, 0xd3, + 0x02, 0x39, 0x00, 0x08, 0x04, 0x73, 0x00, 0x56, 0x04, 0x73, 0x00, 0x8c, + 0x04, 0x73, 0x00, 0x56, 0x04, 0x73, 0x00, 0x56, 0x04, 0x73, 0x00, 0x56, + 0x04, 0x73, 0x00, 0x56, 0x04, 0x73, 0x00, 0x56, 0x04, 0x64, 0x00, 0x41, + 0x04, 0xe3, 0x00, 0x2c, 0x04, 0x73, 0x00, 0x8b, 0x04, 0x73, 0x00, 0x8b, + 0x04, 0x73, 0x00, 0x8b, 0x04, 0x73, 0x00, 0x8b, 0x04, 0x00, 0x00, 0x05, + 0x04, 0x73, 0x00, 0x8a, 0x04, 0x00, 0x00, 0x05, 0x05, 0x56, 0x00, 0x04, + 0x04, 0x73, 0x00, 0x57, 0x05, 0x56, 0x00, 0x04, 0x04, 0x73, 0x00, 0x57, + 0x05, 0x56, 0x00, 0x04, 0x04, 0x73, 0x00, 0x57, 0x05, 0xc7, 0x00, 0x68, + 0x04, 0x00, 0x00, 0x57, 0x05, 0xc7, 0x00, 0x68, 0x04, 0x00, 0x00, 0x57, + 0x05, 0xc7, 0x00, 0x68, 0x04, 0x00, 0x00, 0x57, 0x05, 0xc7, 0x00, 0x68, + 0x04, 0x00, 0x00, 0x57, 0x05, 0xc7, 0x00, 0xa8, 0x04, 0xeb, 0x00, 0x56, + 0x05, 0xc7, 0x00, 0x0e, 0x04, 0x73, 0x00, 0x56, 0x05, 0x56, 0x00, 0xa8, + 0x04, 0x73, 0x00, 0x57, 0x05, 0x56, 0x00, 0xa8, 0x04, 0x73, 0x00, 0x57, + 0x05, 0x56, 0x00, 0xa8, 0x04, 0x73, 0x00, 0x57, 0x05, 0x56, 0x00, 0xa8, + 0x04, 0x73, 0x00, 0x57, 0x05, 0x56, 0x00, 0xa8, 0x04, 0x73, 0x00, 0x57, + 0x06, 0x39, 0x00, 0x67, 0x04, 0x73, 0x00, 0x56, 0x06, 0x39, 0x00, 0x67, + 0x04, 0x73, 0x00, 0x56, 0x06, 0x39, 0x00, 0x67, 0x04, 0x73, 0x00, 0x56, + 0x06, 0x39, 0x00, 0x67, 0x04, 0x73, 0x00, 0x56, 0x05, 0xc7, 0x00, 0xa8, + 0x04, 0x73, 0x00, 0x8e, 0x05, 0xc7, 0x00, 0x0e, 0x04, 0x73, 0x00, 0x0a, + 0x02, 0x39, 0xff, 0xb8, 0x02, 0x39, 0xff, 0xb8, 0x02, 0x39, 0x00, 0x0c, + 0x02, 0x39, 0x00, 0x0c, 0x02, 0x39, 0xff, 0xd2, 0x02, 0x39, 0xff, 0xd2, + 0x02, 0x39, 0x00, 0x5c, 0x01, 0xc7, 0x00, 0x1f, 0x02, 0x39, 0x00, 0xbd, + 0x02, 0x39, 0x00, 0xc2, 0x05, 0xe1, 0x00, 0xaa, 0x03, 0x8d, 0x00, 0x89, + 0x04, 0x00, 0x00, 0x20, 0x01, 0xc7, 0xff, 0x99, 0x05, 0x56, 0x00, 0xa8, + 0x04, 0x00, 0x00, 0x8a, 0x04, 0x00, 0x00, 0x8a, 0x04, 0x73, 0x00, 0xa8, + 0x01, 0xc7, 0x00, 0x5b, 0x04, 0x73, 0x00, 0xa8, 0x01, 0xc7, 0x00, 0x7e, + 0x04, 0x73, 0x00, 0xa8, 0x02, 0x55, 0x00, 0x8a, 0x04, 0x73, 0x00, 0xa8, + 0x02, 0xac, 0x00, 0x8a, 0x04, 0x73, 0x00, 0x14, 0x01, 0xc7, 0x00, 0x10, + 0x05, 0xc7, 0x00, 0xa8, 0x04, 0x73, 0x00, 0x8c, 0x05, 0xc7, 0x00, 0xa8, + 0x04, 0x73, 0x00, 0x8c, 0x05, 0xc7, 0x00, 0xa8, 0x04, 0x73, 0x00, 0x8c, + 0x04, 0xd5, 0xff, 0xfe, 0x05, 0xc9, 0x00, 0xa5, 0x04, 0x73, 0x00, 0x8c, + 0x06, 0x39, 0x00, 0x61, 0x04, 0x73, 0x00, 0x56, 0x06, 0x39, 0x00, 0x61, + 0x04, 0x73, 0x00, 0x56, 0x06, 0x39, 0x00, 0x61, 0x04, 0x73, 0x00, 0x56, + 0x08, 0x00, 0x00, 0x61, 0x07, 0x8d, 0x00, 0x56, 0x05, 0xc7, 0x00, 0xa8, + 0x02, 0xaa, 0x00, 0x88, 0x05, 0xc7, 0x00, 0xa8, 0x02, 0xaa, 0x00, 0x81, + 0x05, 0xc7, 0x00, 0xa8, 0x02, 0xaa, 0x00, 0x38, 0x05, 0x56, 0x00, 0x5d, + 0x04, 0x00, 0x00, 0x39, 0x05, 0x56, 0x00, 0x5d, 0x04, 0x00, 0x00, 0x39, + 0x05, 0x56, 0x00, 0x5d, 0x04, 0x00, 0x00, 0x39, 0x05, 0x56, 0x00, 0x5d, + 0x04, 0x00, 0x00, 0x39, 0x04, 0xe3, 0x00, 0x2e, 0x02, 0x39, 0x00, 0x1f, + 0x04, 0xe3, 0x00, 0x2e, 0x03, 0x00, 0x00, 0x1f, 0x04, 0xe3, 0x00, 0x2e, + 0x02, 0x39, 0x00, 0x1f, 0x05, 0xc7, 0x00, 0x9e, 0x04, 0x73, 0x00, 0x85, + 0x05, 0xc7, 0x00, 0x9e, 0x04, 0x73, 0x00, 0x85, 0x05, 0xc7, 0x00, 0x9e, + 0x04, 0x73, 0x00, 0x85, 0x05, 0xc7, 0x00, 0x9e, 0x04, 0x73, 0x00, 0x85, + 0x05, 0xc7, 0x00, 0x9e, 0x04, 0x73, 0x00, 0x85, 0x05, 0xc7, 0x00, 0x9e, + 0x04, 0x73, 0x00, 0x85, 0x07, 0x8d, 0x00, 0x09, 0x05, 0xc7, 0xff, 0xfd, + 0x05, 0x56, 0x00, 0x2d, 0x04, 0x00, 0x00, 0x05, 0x05, 0x56, 0x00, 0x2d, + 0x04, 0xe3, 0x00, 0x41, 0x04, 0x00, 0x00, 0x31, 0x04, 0xe3, 0x00, 0x41, + 0x04, 0x00, 0x00, 0x31, 0x04, 0xe3, 0x00, 0x41, 0x04, 0x00, 0x00, 0x31, + 0x01, 0xc7, 0x00, 0x8a, 0x04, 0x73, 0x00, 0xc0, 0x05, 0x56, 0x00, 0x04, + 0x04, 0x73, 0x00, 0x57, 0x08, 0x00, 0x00, 0x18, 0x07, 0x1d, 0x00, 0x42, + 0x06, 0x39, 0x00, 0x47, 0x04, 0xe3, 0x00, 0x2c, 0x05, 0x56, 0x00, 0x5d, + 0x04, 0x00, 0x00, 0x39, 0x04, 0xe3, 0x00, 0x2e, 0x02, 0x39, 0x00, 0x1f, + 0x02, 0xaa, 0x00, 0x00, 0x02, 0xaa, 0x00, 0x00, 0x02, 0xaa, 0x00, 0x33, + 0x02, 0xaa, 0xff, 0xdd, 0x02, 0xaa, 0x00, 0x9c, 0x02, 0xaa, 0x00, 0x33, + 0x02, 0xaa, 0x00, 0x50, 0x02, 0xaa, 0xff, 0xe9, 0x02, 0xaa, 0x00, 0x16, + 0x02, 0xaa, 0x00, 0xcd, 0x02, 0xaa, 0x00, 0x1d, 0x05, 0x57, 0x00, 0x04, + 0x02, 0x39, 0x00, 0xbb, 0x06, 0x46, 0xff, 0xf5, 0x06, 0xb4, 0xff, 0xf2, + 0x03, 0x12, 0xff, 0xe8, 0x06, 0x32, 0xff, 0xbb, 0x06, 0xd8, 0x00, 0x41, + 0x06, 0x05, 0xff, 0xbb, 0x01, 0xc7, 0xff, 0xb0, 0x05, 0x56, 0x00, 0x04, + 0x05, 0x56, 0x00, 0xa8, 0x04, 0x68, 0x00, 0xa8, 0x05, 0x58, 0x00, 0x3d, + 0x05, 0x56, 0x00, 0xa8, 0x04, 0xe3, 0x00, 0x41, 0x05, 0xc7, 0x00, 0xa8, + 0x06, 0x39, 0x00, 0x61, 0x02, 0x39, 0x00, 0xbd, 0x05, 0x56, 0x00, 0xa8, + 0x05, 0x58, 0x00, 0x0a, 0x06, 0xaa, 0x00, 0xa8, 0x05, 0xc7, 0x00, 0xa8, + 0x05, 0x33, 0x00, 0x5a, 0x06, 0x39, 0x00, 0x61, 0x05, 0xc7, 0x00, 0xa8, + 0x05, 0x56, 0x00, 0xa8, 0x04, 0xf2, 0x00, 0x6c, 0x04, 0xe3, 0x00, 0x2e, + 0x05, 0x56, 0x00, 0x2d, 0x06, 0x62, 0x00, 0x75, 0x05, 0x56, 0x00, 0x2e, + 0x06, 0xaf, 0x00, 0x91, 0x05, 0xfb, 0x00, 0x57, 0x02, 0x39, 0x00, 0x07, + 0x05, 0x56, 0x00, 0x2d, 0x04, 0xa0, 0x00, 0x56, 0x03, 0x91, 0x00, 0x46, + 0x04, 0x73, 0x00, 0x6a, 0x01, 0xc7, 0x00, 0x89, 0x04, 0x60, 0x00, 0x85, + 0x04, 0xa0, 0x00, 0x56, 0x04, 0x9a, 0x00, 0x8e, 0x04, 0x00, 0x00, 0x07, + 0x04, 0x74, 0x00, 0x56, 0x03, 0x91, 0x00, 0x46, 0x03, 0x87, 0x00, 0x56, + 0x04, 0x73, 0x00, 0x6a, 0x04, 0x73, 0x00, 0x6a, 0x01, 0xc7, 0x00, 0x89, + 0x04, 0x00, 0x00, 0x8a, 0x04, 0x00, 0x00, 0x0e, 0x04, 0x9c, 0x00, 0x8a, + 0x04, 0x00, 0x00, 0x00, 0x03, 0x95, 0x00, 0x56, 0x04, 0x73, 0x00, 0x56, + 0x05, 0x85, 0x00, 0x4f, 0x04, 0x8d, 0x00, 0x84, 0x03, 0xdb, 0x00, 0x56, + 0x04, 0xf0, 0x00, 0x56, 0x03, 0x29, 0x00, 0x1d, 0x04, 0x60, 0x00, 0x85, + 0x05, 0x30, 0x00, 0x55, 0x04, 0x33, 0x00, 0x15, 0x05, 0xb4, 0x00, 0x87, + 0x06, 0x3f, 0x00, 0x53, 0x01, 0xc7, 0xff, 0xcd, 0x04, 0x60, 0x00, 0x85, + 0x04, 0x73, 0x00, 0x56, 0x04, 0x60, 0x00, 0x85, 0x06, 0x3f, 0x00, 0x53, + 0x05, 0x56, 0x00, 0xa8, 0x05, 0x57, 0x00, 0xa8, 0x06, 0xeb, 0x00, 0x2e, + 0x04, 0x55, 0x00, 0xa8, 0x05, 0xc0, 0x00, 0x68, 0x05, 0x56, 0x00, 0x5d, + 0x02, 0x39, 0x00, 0xbd, 0x02, 0x39, 0x00, 0x07, 0x04, 0x00, 0x00, 0x20, + 0x08, 0x75, 0x00, 0x12, 0x08, 0x15, 0x00, 0xa8, 0x06, 0xd5, 0x00, 0x2e, + 0x04, 0xa9, 0x00, 0xa8, 0x05, 0xc7, 0x00, 0xa8, 0x05, 0x15, 0x00, 0x37, + 0x05, 0xc0, 0x00, 0xa8, 0x05, 0x56, 0x00, 0x04, 0x05, 0x40, 0x00, 0xa8, + 0x05, 0x56, 0x00, 0xa8, 0x04, 0x55, 0x00, 0xa8, 0x05, 0x6b, 0x00, 0x0f, + 0x05, 0x56, 0x00, 0xa8, 0x07, 0x63, 0x00, 0x1c, 0x04, 0xd5, 0x00, 0x43, + 0x05, 0xc0, 0x00, 0xa8, 0x05, 0xc0, 0x00, 0xa8, 0x04, 0xa9, 0x00, 0xa8, + 0x05, 0x40, 0x00, 0x12, 0x06, 0xaa, 0x00, 0xa8, 0x05, 0xc7, 0x00, 0xa8, + 0x06, 0x39, 0x00, 0x61, 0x05, 0xc0, 0x00, 0xa6, 0x05, 0x56, 0x00, 0xa8, + 0x05, 0xc7, 0x00, 0x68, 0x04, 0xe3, 0x00, 0x2e, 0x05, 0x15, 0x00, 0x37, + 0x06, 0x15, 0x00, 0x76, 0x05, 0x56, 0x00, 0x2e, 0x05, 0xeb, 0x00, 0xa8, + 0x05, 0x55, 0x00, 0xa0, 0x07, 0x55, 0x00, 0xa8, 0x07, 0x80, 0x00, 0xa8, + 0x06, 0x55, 0x00, 0x2e, 0x07, 0x15, 0x00, 0xa8, 0x05, 0x40, 0x00, 0xa8, + 0x05, 0xc0, 0x00, 0x69, 0x08, 0x15, 0x00, 0xa8, 0x05, 0xc7, 0x00, 0x60, + 0x04, 0x73, 0x00, 0x57, 0x04, 0x95, 0x00, 0x78, 0x04, 0x40, 0x00, 0x8e, + 0x02, 0xeb, 0x00, 0x8e, 0x04, 0xab, 0x00, 0x14, 0x04, 0x73, 0x00, 0x57, + 0x05, 0x5a, 0x00, 0x07, 0x03, 0xab, 0x00, 0x31, 0x04, 0x78, 0x00, 0x8e, + 0x04, 0x78, 0x00, 0x8e, 0x03, 0x80, 0x00, 0x8a, 0x04, 0xab, 0x00, 0x0b, + 0x05, 0x80, 0x00, 0x8e, 0x04, 0x6b, 0x00, 0x8e, 0x04, 0x73, 0x00, 0x56, + 0x04, 0x55, 0x00, 0x8e, 0x04, 0x73, 0x00, 0x84, 0x04, 0x00, 0x00, 0x57, + 0x03, 0xaa, 0x00, 0x23, 0x04, 0x00, 0x00, 0x05, 0x06, 0x95, 0x00, 0x56, + 0x04, 0x00, 0x00, 0x17, 0x04, 0x95, 0x00, 0x8e, 0x04, 0x2b, 0x00, 0x7a, + 0x06, 0x6b, 0x00, 0x8e, 0x06, 0x95, 0x00, 0x8e, 0x05, 0x00, 0x00, 0x2d, + 0x05, 0xc0, 0x00, 0x8e, 0x04, 0x2b, 0x00, 0x8e, 0x04, 0x15, 0x00, 0x37, + 0x06, 0x00, 0x00, 0x8e, 0x04, 0x55, 0x00, 0x11, 0x04, 0x73, 0x00, 0x57, + 0x04, 0x73, 0x00, 0x57, 0x04, 0x73, 0x00, 0x0a, 0x02, 0xeb, 0x00, 0x8e, + 0x04, 0x15, 0x00, 0x57, 0x04, 0x00, 0x00, 0x39, 0x01, 0xc7, 0x00, 0x89, + 0x02, 0x39, 0xff, 0xf8, 0x01, 0xc7, 0xff, 0xce, 0x07, 0x40, 0x00, 0x0b, + 0x06, 0x80, 0x00, 0x8e, 0x04, 0x73, 0x00, 0x0a, 0x03, 0x80, 0x00, 0x8a, + 0x04, 0x78, 0x00, 0x8e, 0x04, 0x00, 0x00, 0x05, 0x04, 0x6b, 0x00, 0x8e, + 0x06, 0x39, 0x00, 0x61, 0x04, 0x73, 0x00, 0x56, 0x03, 0xe9, 0x00, 0xa8, + 0x03, 0x4a, 0x00, 0x8e, 0x07, 0x8d, 0x00, 0x09, 0x05, 0xc7, 0xff, 0xfd, + 0x07, 0x8d, 0x00, 0x09, 0x05, 0xc7, 0xff, 0xfd, 0x07, 0x8d, 0x00, 0x09, + 0x05, 0xc7, 0xff, 0xfd, 0x05, 0x56, 0x00, 0x2d, 0x04, 0x00, 0x00, 0x05, + 0x02, 0xaa, 0x00, 0x5b, 0x02, 0xaa, 0x00, 0x5b, 0x04, 0x73, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x04, 0x6b, 0xff, 0xe1, + 0x01, 0xc7, 0x00, 0x7f, 0x01, 0xc7, 0x00, 0x7f, 0x01, 0xc7, 0x00, 0x7f, + 0x01, 0xc7, 0x00, 0x7e, 0x02, 0xaa, 0x00, 0x4b, 0x02, 0xaa, 0x00, 0x4b, + 0x02, 0xaa, 0x00, 0x4b, 0x04, 0x73, 0x00, 0x8a, 0x04, 0x73, 0x00, 0x88, + 0x02, 0xcd, 0x00, 0x51, 0x08, 0x00, 0x01, 0x16, 0x08, 0x00, 0x00, 0x37, + 0x01, 0x80, 0x00, 0x55, 0x02, 0xd5, 0x00, 0x55, 0x02, 0xaa, 0x00, 0x58, + 0x02, 0xaa, 0x00, 0x59, 0x04, 0x00, 0x00, 0xb9, 0x02, 0xaa, 0xff, 0xc0, + 0x01, 0x56, 0xfe, 0x60, 0x02, 0xeb, 0x00, 0x65, 0x04, 0x73, 0x00, 0x04, + 0x04, 0x73, 0x00, 0x3a, 0x08, 0xc0, 0x00, 0x9e, 0x04, 0x73, 0x00, 0x10, + 0x07, 0x15, 0x00, 0x45, 0x02, 0x96, 0x00, 0x13, 0x08, 0x95, 0x00, 0xbc, + 0x08, 0x00, 0x00, 0xbc, 0x06, 0x25, 0x00, 0x6c, 0x04, 0xcd, 0x00, 0x58, + 0x06, 0xac, 0x00, 0x50, 0x06, 0xac, 0x00, 0x3d, 0x06, 0xac, 0x00, 0x5d, + 0x06, 0xac, 0x00, 0x91, 0x08, 0x00, 0x01, 0xa2, 0x04, 0x00, 0x01, 0x10, + 0x08, 0x00, 0x01, 0xa2, 0x04, 0x00, 0x01, 0x10, 0x08, 0x00, 0x01, 0xa2, + 0x04, 0x00, 0x01, 0x10, 0x04, 0x00, 0x01, 0x10, 0x03, 0xf4, 0x00, 0x38, + 0x04, 0xe5, 0x00, 0x04, 0x06, 0x96, 0x00, 0xeb, 0x05, 0xb4, 0x00, 0x9a, + 0x04, 0xac, 0x00, 0x65, 0x04, 0x64, 0x00, 0x33, 0x05, 0xb4, 0x00, 0x57, + 0x07, 0xd5, 0x01, 0x98, 0x05, 0xc0, 0x01, 0x16, 0x02, 0x31, 0xff, 0x9e, + 0x04, 0x64, 0x00, 0x38, 0x04, 0x64, 0x00, 0x41, 0x04, 0xab, 0x00, 0x64, + 0x04, 0x64, 0x00, 0x3f, 0x04, 0x64, 0x00, 0x41, 0x04, 0xd5, 0x00, 0x9d, + 0x04, 0xac, 0x00, 0x64, 0x04, 0xd5, 0x02, 0x22, 0x04, 0xd5, 0x01, 0x05, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0x00, 0x01, 0xd8, 0x05, 0xab, 0x02, 0x8d, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0x02, 0x8d, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0x02, 0x8d, 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0x01, 0xd9, 0x05, 0xab, 0x02, 0x8d, 0x05, 0xab, 0x01, 0xd9, + 0x05, 0xab, 0x01, 0xd9, 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0x02, 0x8d, 0x05, 0xab, 0x01, 0xd9, + 0x05, 0xab, 0x01, 0xd9, 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0x02, 0x8d, 0x05, 0xab, 0x01, 0xd9, + 0x05, 0xab, 0x01, 0xd9, 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0xff, 0xf6, + 0x05, 0xab, 0xff, 0xf6, 0x05, 0xab, 0x00, 0x00, 0x05, 0xab, 0x00, 0x00, + 0x05, 0xab, 0x00, 0x00, 0x05, 0xab, 0x00, 0x00, 0x05, 0xab, 0x02, 0xd5, + 0x05, 0xab, 0x00, 0x67, 0x05, 0xab, 0x00, 0x00, 0x05, 0xd5, 0x00, 0x00, + 0x04, 0xd5, 0x00, 0x7b, 0x04, 0xd5, 0x00, 0x06, 0x02, 0xd6, 0x00, 0x6d, + 0x02, 0xd6, 0x00, 0x6d, 0x08, 0x00, 0x00, 0x00, 0x07, 0xeb, 0x01, 0x9e, + 0x07, 0xeb, 0x01, 0x91, 0x07, 0xeb, 0x01, 0x9e, 0x07, 0xeb, 0x01, 0x91, + 0x03, 0xf4, 0x00, 0x08, 0x04, 0xd5, 0x00, 0xa7, 0x04, 0xd5, 0x00, 0xb2, + 0x04, 0xd5, 0x00, 0x29, 0x04, 0xd5, 0x00, 0x29, 0x02, 0xd6, 0x00, 0x73, + 0x08, 0x2b, 0x01, 0xb1, 0x08, 0x6b, 0x01, 0xd1, 0x07, 0x55, 0x01, 0x46, + 0x06, 0x00, 0x01, 0xda, 0x06, 0x00, 0x01, 0x51, 0x04, 0x40, 0x00, 0x3b, + 0x05, 0x40, 0x00, 0x3c, 0x04, 0xc0, 0x00, 0x66, 0x04, 0x15, 0x00, 0x42, + 0x04, 0x00, 0x00, 0xc4, 0x06, 0x00, 0x01, 0x10, 0x06, 0x00, 0x01, 0x10, + 0x04, 0x00, 0x00, 0x1d, 0x04, 0x00, 0x00, 0x1d, 0x02, 0xaa, 0x00, 0x77, + 0x02, 0xaa, 0x00, 0xf3, 0x02, 0xaa, 0x00, 0x7f, 0x02, 0xaa, 0x00, 0x0e, + 0x02, 0xaa, 0x00, 0x35, 0x02, 0xaa, 0x00, 0x2b, 0x02, 0xaa, 0x00, 0x2d, + 0x02, 0xaa, 0xff, 0xe5, 0x01, 0xc7, 0x00, 0x7c, 0x01, 0xc7, 0x00, 0x82, + 0x02, 0x5a, 0x00, 0x6a, 0x02, 0x5a, 0x00, 0x48, 0x02, 0x98, 0x00, 0x00, + 0x02, 0x98, 0x00, 0x00, 0x02, 0x87, 0x00, 0x2d, 0x02, 0xa0, 0xff, 0xe9, + 0x03, 0x2f, 0x00, 0x20, 0x02, 0x48, 0xff, 0xe8, 0x00, 0x00, 0x00, 0x03, + 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x04, 0xe8, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1c, + 0x00, 0x04, 0x04, 0xcc, 0x00, 0x00, 0x00, 0xbe, 0x00, 0x80, 0x00, 0x06, + 0x00, 0x3e, 0x00, 0x7e, 0x01, 0x7f, 0x01, 0x92, 0x01, 0xff, 0x02, 0x1b, + 0x02, 0xc7, 0x02, 0xc9, 0x02, 0xdd, 0x03, 0x7e, 0x03, 0x8a, 0x03, 0x8c, + 0x03, 0xa1, 0x03, 0xce, 0x04, 0x5f, 0x04, 0x73, 0x04, 0x91, 0x1e, 0x85, + 0x1e, 0xf3, 0x20, 0x11, 0x20, 0x15, 0x20, 0x1e, 0x20, 0x22, 0x20, 0x26, + 0x20, 0x30, 0x20, 0x33, 0x20, 0x3a, 0x20, 0x3c, 0x20, 0x3e, 0x20, 0x44, + 0x20, 0x7f, 0x20, 0xa4, 0x20, 0xa7, 0x20, 0xac, 0x21, 0x05, 0x21, 0x13, + 0x21, 0x16, 0x21, 0x22, 0x21, 0x26, 0x21, 0x2e, 0x21, 0x5e, 0x21, 0x95, + 0x21, 0xa8, 0x22, 0x02, 0x22, 0x06, 0x22, 0x0f, 0x22, 0x12, 0x22, 0x15, + 0x22, 0x1a, 0x22, 0x1f, 0x22, 0x29, 0x22, 0x2b, 0x22, 0x48, 0x22, 0x61, + 0x22, 0x65, 0x23, 0x02, 0x23, 0x10, 0x23, 0x21, 0x25, 0x00, 0x25, 0x02, + 0x25, 0x0c, 0x25, 0x10, 0x25, 0x14, 0x25, 0x18, 0x25, 0x1c, 0x25, 0x24, + 0x25, 0x2c, 0x25, 0x34, 0x25, 0x3c, 0x25, 0x6c, 0x25, 0x80, 0x25, 0x84, + 0x25, 0x88, 0x25, 0x8c, 0x25, 0x93, 0x25, 0xa1, 0x25, 0xac, 0x25, 0xb2, + 0x25, 0xba, 0x25, 0xbc, 0x25, 0xc4, 0x25, 0xcb, 0x25, 0xcf, 0x25, 0xd9, + 0x25, 0xe6, 0x26, 0x3c, 0x26, 0x40, 0x26, 0x42, 0x26, 0x60, 0x26, 0x63, + 0x26, 0x66, 0x26, 0x6c, 0xf0, 0x02, 0xf0, 0x05, 0xfb, 0x02, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x20, 0x00, 0xa0, 0x01, 0x92, 0x01, 0xfa, 0x02, 0x18, + 0x02, 0xc6, 0x02, 0xc9, 0x02, 0xd8, 0x03, 0x7e, 0x03, 0x84, 0x03, 0x8c, + 0x03, 0x8e, 0x03, 0xa3, 0x04, 0x00, 0x04, 0x72, 0x04, 0x90, 0x1e, 0x80, + 0x1e, 0xf2, 0x20, 0x10, 0x20, 0x13, 0x20, 0x17, 0x20, 0x20, 0x20, 0x26, + 0x20, 0x30, 0x20, 0x32, 0x20, 0x39, 0x20, 0x3c, 0x20, 0x3e, 0x20, 0x44, + 0x20, 0x7f, 0x20, 0xa3, 0x20, 0xa7, 0x20, 0xac, 0x21, 0x05, 0x21, 0x13, + 0x21, 0x16, 0x21, 0x22, 0x21, 0x26, 0x21, 0x2e, 0x21, 0x5b, 0x21, 0x90, + 0x21, 0xa8, 0x22, 0x02, 0x22, 0x06, 0x22, 0x0f, 0x22, 0x11, 0x22, 0x15, + 0x22, 0x19, 0x22, 0x1e, 0x22, 0x29, 0x22, 0x2b, 0x22, 0x48, 0x22, 0x60, + 0x22, 0x64, 0x23, 0x02, 0x23, 0x10, 0x23, 0x20, 0x25, 0x00, 0x25, 0x02, + 0x25, 0x0c, 0x25, 0x10, 0x25, 0x14, 0x25, 0x18, 0x25, 0x1c, 0x25, 0x24, + 0x25, 0x2c, 0x25, 0x34, 0x25, 0x3c, 0x25, 0x50, 0x25, 0x80, 0x25, 0x84, + 0x25, 0x88, 0x25, 0x8c, 0x25, 0x90, 0x25, 0xa0, 0x25, 0xaa, 0x25, 0xb2, + 0x25, 0xba, 0x25, 0xbc, 0x25, 0xc4, 0x25, 0xca, 0x25, 0xcf, 0x25, 0xd8, + 0x25, 0xe6, 0x26, 0x3a, 0x26, 0x40, 0x26, 0x42, 0x26, 0x60, 0x26, 0x63, + 0x26, 0x65, 0x26, 0x6a, 0xf0, 0x01, 0xf0, 0x05, 0xfb, 0x01, 0xff, 0xff, + 0xff, 0xe3, 0x00, 0x00, 0xff, 0xae, 0xff, 0x47, 0xff, 0x2f, 0xfe, 0x85, + 0xfe, 0x84, 0xfe, 0x76, 0xfc, 0xa0, 0xfd, 0xd0, 0xfd, 0xcf, 0xfd, 0xce, + 0xfd, 0xcd, 0xfd, 0x9c, 0xfd, 0x8a, 0xfd, 0x6e, 0xe3, 0x80, 0xe3, 0x14, + 0xe1, 0xf8, 0xe1, 0xf7, 0xe1, 0xf6, 0xe1, 0xf5, 0xe1, 0xf2, 0xe1, 0xe9, + 0xe1, 0xe8, 0xe1, 0xe3, 0xe1, 0xe2, 0xe1, 0xe1, 0xe1, 0xdc, 0xe1, 0xa2, + 0xe1, 0x7f, 0xe1, 0x7d, 0xe1, 0x79, 0xe1, 0x21, 0xe1, 0x14, 0xe1, 0x12, + 0xe1, 0x07, 0xe1, 0x04, 0xe0, 0xfd, 0xe0, 0xd1, 0xe0, 0xa0, 0xe0, 0x8e, + 0xe0, 0x35, 0xe0, 0x32, 0xe0, 0x2a, 0xe0, 0x29, 0xe0, 0x0b, 0x00, 0x00, + 0xe0, 0x1f, 0xe0, 0x16, 0xe0, 0x15, 0xdf, 0xf9, 0xdf, 0xe2, 0xdf, 0xe0, + 0xdf, 0x44, 0xdf, 0x37, 0xdf, 0x28, 0xdd, 0x4a, 0xdd, 0x49, 0xdd, 0x40, + 0xdd, 0x3d, 0xdd, 0x3a, 0xdd, 0x37, 0xdd, 0x34, 0xdd, 0x2d, 0xdd, 0x26, + 0xdd, 0x1f, 0xdd, 0x18, 0xdd, 0x05, 0xdc, 0xf2, 0xdc, 0xef, 0xdc, 0xec, + 0xdc, 0xe9, 0xdc, 0xe6, 0xdc, 0xda, 0xdc, 0xd2, 0xdc, 0xcd, 0xdc, 0xc6, + 0xdc, 0xc5, 0xdc, 0xbe, 0xdc, 0xb9, 0xdc, 0xb6, 0xdc, 0xae, 0xdc, 0xa2, + 0xdc, 0x4f, 0xdc, 0x4c, 0xdc, 0x4b, 0xdc, 0x2e, 0xdc, 0x2c, 0xdc, 0x2b, + 0xdc, 0x28, 0x12, 0x94, 0x12, 0x92, 0x07, 0x94, 0x00, 0x01, 0x00, 0x00, + 0x00, 0xbc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x20, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x62, + 0x00, 0x63, 0x00, 0x64, 0x00, 0x65, 0x00, 0x66, 0x00, 0x67, 0x00, 0x68, + 0x00, 0x69, 0x00, 0x6a, 0x00, 0x6b, 0x00, 0x6c, 0x00, 0x6d, 0x00, 0x10, + 0x00, 0x6e, 0x00, 0x6f, 0x00, 0x70, 0x00, 0x71, 0x00, 0x72, 0x00, 0x73, + 0x00, 0x74, 0x00, 0x75, 0x00, 0x76, 0x00, 0x77, 0x00, 0x78, 0x00, 0x79, + 0x00, 0x7a, 0x00, 0x7b, 0x00, 0x7c, 0x00, 0x7d, 0x00, 0x7e, 0x00, 0x7f, + 0x00, 0x80, 0x00, 0x81, 0x00, 0x82, 0x00, 0x83, 0x00, 0x84, 0x00, 0x85, + 0x00, 0x86, 0x00, 0x87, 0x00, 0x88, 0x00, 0x89, 0x00, 0x8a, 0x00, 0x8b, + 0x00, 0x8c, 0x00, 0x8d, 0x00, 0x8e, 0x00, 0x8f, 0x00, 0x90, 0x00, 0x91, + 0x00, 0x92, 0x00, 0x93, 0x00, 0x94, 0x00, 0x95, 0x00, 0x96, 0x00, 0x97, + 0x00, 0x98, 0x00, 0x99, 0x00, 0x9a, 0x00, 0x9b, 0x00, 0x9c, 0x00, 0x9d, + 0x00, 0x9e, 0x00, 0x9f, 0x00, 0xa0, 0x00, 0xa1, 0x00, 0xa2, 0x00, 0xa3, + 0x00, 0xa4, 0x00, 0xa5, 0x00, 0xa6, 0x00, 0xa7, 0x00, 0xa8, 0x00, 0xa9, + 0x00, 0xaa, 0x00, 0xab, 0x00, 0xac, 0x00, 0xad, 0x00, 0xae, 0x00, 0xaf, + 0x00, 0xb0, 0x00, 0xb1, 0x00, 0xb2, 0x00, 0xb3, 0x00, 0xb4, 0x00, 0xb5, + 0x00, 0xb6, 0x00, 0xb7, 0x00, 0xb8, 0x00, 0xb9, 0x00, 0xba, 0x00, 0xbb, + 0x00, 0xbc, 0x00, 0xbd, 0x00, 0xbe, 0x00, 0xbf, 0x00, 0xc0, 0x00, 0xc1, + 0x00, 0xc2, 0x00, 0xc3, 0x00, 0xc4, 0x00, 0xc5, 0x00, 0xc6, 0x00, 0xc7, + 0x00, 0xc8, 0x00, 0xc9, 0x00, 0xca, 0x00, 0xcb, 0x00, 0xcc, 0x00, 0xcd, + 0x00, 0xce, 0x00, 0xcf, 0x00, 0xd0, 0x00, 0xd1, 0x00, 0xd2, 0x00, 0xd3, + 0x00, 0xd4, 0x00, 0xd5, 0x00, 0xd6, 0x00, 0xd7, 0x00, 0xd8, 0x00, 0xd9, + 0x00, 0xda, 0x00, 0xdb, 0x00, 0xdc, 0x00, 0xdd, 0x00, 0xde, 0x00, 0xdf, + 0x00, 0xe0, 0x00, 0xe1, 0x00, 0xe2, 0x00, 0xe3, 0x00, 0xe4, 0x00, 0xe5, + 0x00, 0xe6, 0x00, 0xe7, 0x00, 0xe8, 0x00, 0xe9, 0x00, 0xea, 0x00, 0xeb, + 0x00, 0xec, 0x00, 0xed, 0x00, 0xee, 0x00, 0xef, 0x00, 0xf0, 0x00, 0xf1, + 0x00, 0xf2, 0x00, 0xf3, 0x00, 0xf4, 0x00, 0xf5, 0x00, 0xf6, 0x00, 0xf7, + 0x00, 0xf8, 0x00, 0xf9, 0x00, 0xfa, 0x00, 0xfb, 0x00, 0xfc, 0x00, 0xfd, + 0x00, 0xfe, 0x00, 0xff, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, + 0x01, 0x04, 0x01, 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08, 0x01, 0x09, + 0x01, 0x0a, 0x01, 0x0b, 0x01, 0x0c, 0x01, 0x0d, 0x01, 0x0e, 0x01, 0x0f, + 0x01, 0x10, 0x01, 0x11, 0x01, 0x12, 0x01, 0x13, 0x01, 0x14, 0x01, 0x15, + 0x01, 0x16, 0x01, 0x17, 0x01, 0x18, 0x01, 0x19, 0x01, 0x1a, 0x01, 0x1b, + 0x01, 0x1c, 0x01, 0x1d, 0x01, 0x1e, 0x01, 0x1f, 0x01, 0x20, 0x01, 0x21, + 0x01, 0x22, 0x01, 0x23, 0x01, 0x24, 0x01, 0x25, 0x01, 0x26, 0x01, 0x27, + 0x01, 0x28, 0x01, 0x29, 0x01, 0x2a, 0x01, 0x2b, 0x01, 0x2c, 0x01, 0x2d, + 0x01, 0x2e, 0x01, 0x2f, 0x01, 0x30, 0x01, 0x31, 0x01, 0x32, 0x01, 0x33, + 0x01, 0x34, 0x01, 0x35, 0x01, 0x36, 0x01, 0x37, 0x01, 0x38, 0x01, 0x39, + 0x01, 0x3a, 0x01, 0x3b, 0x01, 0x3c, 0x01, 0x3d, 0x01, 0x3e, 0x01, 0x3f, + 0x00, 0x77, 0x02, 0x3c, 0x00, 0x06, 0x02, 0x0a, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x04, 0x00, 0x05, + 0x00, 0x06, 0x00, 0x07, 0x00, 0x08, 0x00, 0x09, 0x00, 0x0a, 0x00, 0x0b, + 0x00, 0x0c, 0x00, 0x0d, 0x00, 0x0e, 0x00, 0x0f, 0x00, 0x10, 0x00, 0x11, + 0x00, 0x12, 0x00, 0x13, 0x00, 0x14, 0x00, 0x15, 0x00, 0x16, 0x00, 0x17, + 0x00, 0x18, 0x00, 0x19, 0x00, 0x1a, 0x00, 0x1b, 0x00, 0x1c, 0x00, 0x1d, + 0x00, 0x1e, 0x00, 0x1f, 0x00, 0x20, 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, + 0x00, 0x24, 0x00, 0x25, 0x00, 0x26, 0x00, 0x27, 0x00, 0x28, 0x00, 0x29, + 0x00, 0x2a, 0x00, 0x2b, 0x00, 0x2c, 0x00, 0x2d, 0x00, 0x2e, 0x00, 0x2f, + 0x00, 0x30, 0x00, 0x31, 0x00, 0x32, 0x00, 0x33, 0x00, 0x34, 0x00, 0x35, + 0x00, 0x36, 0x00, 0x37, 0x00, 0x38, 0x00, 0x39, 0x00, 0x3a, 0x00, 0x3b, + 0x00, 0x3c, 0x00, 0x3d, 0x00, 0x3e, 0x00, 0x3f, 0x00, 0x40, 0x00, 0x41, + 0x00, 0x42, 0x00, 0x43, 0x00, 0x44, 0x00, 0x45, 0x00, 0x46, 0x00, 0x47, + 0x00, 0x48, 0x00, 0x49, 0x00, 0x4a, 0x00, 0x4b, 0x00, 0x4c, 0x00, 0x4d, + 0x00, 0x4e, 0x00, 0x4f, 0x00, 0x50, 0x00, 0x51, 0x00, 0x52, 0x00, 0x53, + 0x00, 0x54, 0x00, 0x55, 0x00, 0x56, 0x00, 0x57, 0x00, 0x58, 0x00, 0x59, + 0x00, 0x5a, 0x00, 0x5b, 0x00, 0x5c, 0x00, 0x5d, 0x00, 0x5e, 0x00, 0x5f, + 0x00, 0x60, 0x00, 0x61, 0x00, 0x00, 0x00, 0x84, 0x00, 0x85, 0x00, 0x87, + 0x00, 0x89, 0x00, 0x91, 0x00, 0x96, 0x00, 0x9c, 0x00, 0xa1, 0x00, 0xa0, + 0x00, 0xa2, 0x00, 0xa4, 0x00, 0xa3, 0x00, 0xa5, 0x00, 0xa7, 0x00, 0xa9, + 0x00, 0xa8, 0x00, 0xaa, 0x00, 0xab, 0x00, 0xad, 0x00, 0xac, 0x00, 0xae, + 0x00, 0xaf, 0x00, 0xb1, 0x00, 0xb3, 0x00, 0xb2, 0x00, 0xb4, 0x00, 0xb6, + 0x00, 0xb5, 0x00, 0xba, 0x00, 0xb9, 0x00, 0xbb, 0x00, 0xbc, 0x02, 0x15, + 0x00, 0x70, 0x00, 0x63, 0x00, 0x64, 0x00, 0x68, 0x02, 0x17, 0x00, 0x76, + 0x00, 0x9f, 0x00, 0x6e, 0x00, 0x6a, 0x02, 0x29, 0x00, 0x74, 0x00, 0x69, + 0x02, 0x42, 0x00, 0x86, 0x00, 0x98, 0x02, 0x3d, 0x00, 0x71, 0x02, 0x44, + 0x02, 0x45, 0x00, 0x66, 0x00, 0x75, 0x02, 0x37, 0x02, 0x3a, 0x02, 0x39, + 0x01, 0x8d, 0x02, 0x40, 0x00, 0x6b, 0x00, 0x7a, 0x01, 0x76, 0x00, 0xa6, + 0x00, 0xb8, 0x00, 0x7f, 0x00, 0x62, 0x00, 0x6d, 0x02, 0x3c, 0x01, 0x40, + 0x02, 0x41, 0x02, 0x38, 0x00, 0x6c, 0x00, 0x7b, 0x02, 0x18, 0x00, 0x03, + 0x00, 0x80, 0x00, 0x83, 0x00, 0x95, 0x01, 0x12, 0x01, 0x13, 0x02, 0x0a, + 0x02, 0x0b, 0x02, 0x12, 0x02, 0x13, 0x02, 0x0e, 0x02, 0x0f, 0x00, 0xb7, + 0x02, 0x83, 0x00, 0xbf, 0x01, 0x38, 0x02, 0x20, 0x02, 0x25, 0x02, 0x1c, + 0x02, 0x1d, 0x02, 0x95, 0x02, 0x96, 0x02, 0x16, 0x00, 0x77, 0x02, 0x10, + 0x02, 0x14, 0x02, 0x19, 0x00, 0x82, 0x00, 0x8a, 0x00, 0x81, 0x00, 0x8b, + 0x00, 0x88, 0x00, 0x8d, 0x00, 0x8e, 0x00, 0x8f, 0x00, 0x8c, 0x00, 0x93, + 0x00, 0x94, 0x00, 0x00, 0x00, 0x92, 0x00, 0x9a, 0x00, 0x9b, 0x00, 0x99, + 0x00, 0xf1, 0x01, 0x4b, 0x01, 0x52, 0x00, 0x6f, 0x01, 0x4e, 0x01, 0x4f, + 0x01, 0x50, 0x00, 0x78, 0x01, 0x53, 0x01, 0x51, 0x01, 0x4c, 0x00, 0x00, + 0x40, 0x45, 0x59, 0x58, 0x55, 0x54, 0x53, 0x52, 0x51, 0x50, 0x4f, 0x4e, + 0x4d, 0x4c, 0x4b, 0x4a, 0x49, 0x48, 0x47, 0x46, 0x45, 0x44, 0x43, 0x42, + 0x41, 0x40, 0x3f, 0x3e, 0x3d, 0x3c, 0x3b, 0x3a, 0x39, 0x38, 0x37, 0x36, + 0x35, 0x31, 0x30, 0x2f, 0x2e, 0x2d, 0x2c, 0x28, 0x27, 0x26, 0x25, 0x24, + 0x23, 0x22, 0x21, 0x1f, 0x18, 0x14, 0x11, 0x10, 0x0f, 0x0e, 0x0d, 0x0b, + 0x0a, 0x09, 0x08, 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00, 0x2c, + 0x45, 0x23, 0x46, 0x60, 0x20, 0xb0, 0x26, 0x60, 0xb0, 0x04, 0x26, 0x23, + 0x48, 0x48, 0x2d, 0x2c, 0x45, 0x23, 0x46, 0x23, 0x61, 0x20, 0xb0, 0x26, + 0x61, 0xb0, 0x04, 0x26, 0x23, 0x48, 0x48, 0x2d, 0x2c, 0x45, 0x23, 0x46, + 0x60, 0xb0, 0x20, 0x61, 0x20, 0xb0, 0x46, 0x60, 0xb0, 0x04, 0x26, 0x23, + 0x48, 0x48, 0x2d, 0x2c, 0x45, 0x23, 0x46, 0x23, 0x61, 0xb0, 0x20, 0x60, + 0x20, 0xb0, 0x26, 0x61, 0xb0, 0x20, 0x61, 0xb0, 0x04, 0x26, 0x23, 0x48, + 0x48, 0x2d, 0x2c, 0x45, 0x23, 0x46, 0x60, 0xb0, 0x40, 0x61, 0x20, 0xb0, + 0x66, 0x60, 0xb0, 0x04, 0x26, 0x23, 0x48, 0x48, 0x2d, 0x2c, 0x45, 0x23, + 0x46, 0x23, 0x61, 0xb0, 0x40, 0x60, 0x20, 0xb0, 0x26, 0x61, 0xb0, 0x40, + 0x61, 0xb0, 0x04, 0x26, 0x23, 0x48, 0x48, 0x2d, 0x2c, 0x01, 0x10, 0x20, + 0x3c, 0x00, 0x3c, 0x2d, 0x2c, 0x20, 0x45, 0x23, 0x20, 0xb0, 0xcd, 0x44, + 0x23, 0x20, 0xb8, 0x01, 0x5a, 0x51, 0x58, 0x23, 0x20, 0xb0, 0x8d, 0x44, + 0x23, 0x59, 0x20, 0xb0, 0xed, 0x51, 0x58, 0x23, 0x20, 0xb0, 0x4d, 0x44, + 0x23, 0x59, 0x20, 0xb0, 0x04, 0x26, 0x51, 0x58, 0x23, 0x20, 0xb0, 0x0d, + 0x44, 0x23, 0x59, 0x21, 0x21, 0x2d, 0x2c, 0x20, 0x20, 0x45, 0x18, 0x68, + 0x44, 0x20, 0xb0, 0x01, 0x60, 0x20, 0x45, 0xb0, 0x46, 0x76, 0x68, 0x8a, + 0x45, 0x60, 0x44, 0x2d, 0x2c, 0x01, 0xb1, 0x0b, 0x0a, 0x43, 0x23, 0x43, + 0x65, 0x0a, 0x2d, 0x2c, 0x00, 0xb1, 0x0a, 0x0b, 0x43, 0x23, 0x43, 0x0b, + 0x2d, 0x2c, 0x00, 0xb0, 0x28, 0x23, 0x70, 0xb1, 0x01, 0x28, 0x3e, 0x01, + 0xb0, 0x28, 0x23, 0x70, 0xb1, 0x02, 0x28, 0x45, 0x3a, 0xb1, 0x02, 0x00, + 0x08, 0x0d, 0x2d, 0x2c, 0x20, 0x45, 0xb0, 0x03, 0x25, 0x45, 0x61, 0x64, + 0xb0, 0x50, 0x51, 0x58, 0x45, 0x44, 0x1b, 0x21, 0x21, 0x59, 0x2d, 0x2c, + 0x49, 0xb0, 0x0e, 0x23, 0x44, 0x2d, 0x2c, 0x20, 0x45, 0xb0, 0x00, 0x43, + 0x60, 0x44, 0x2d, 0x2c, 0x01, 0xb0, 0x06, 0x43, 0xb0, 0x07, 0x43, 0x65, + 0x0a, 0x2d, 0x2c, 0x20, 0x69, 0xb0, 0x40, 0x61, 0xb0, 0x00, 0x8b, 0x20, + 0xb1, 0x2c, 0xc0, 0x8a, 0x8c, 0xb8, 0x10, 0x00, 0x62, 0x60, 0x2b, 0x0c, + 0x64, 0x23, 0x64, 0x61, 0x5c, 0x58, 0xb0, 0x03, 0x61, 0x59, 0x2d, 0x2c, + 0x8a, 0x03, 0x45, 0x8a, 0x8a, 0x87, 0xb0, 0x11, 0x2b, 0xb0, 0x29, 0x23, + 0x44, 0xb0, 0x29, 0x7a, 0xe4, 0x18, 0x2d, 0x2c, 0x45, 0x65, 0xb0, 0x2c, + 0x23, 0x44, 0x45, 0xb0, 0x2b, 0x23, 0x44, 0x2d, 0x2c, 0x4b, 0x52, 0x58, + 0x45, 0x44, 0x1b, 0x21, 0x21, 0x59, 0x2d, 0x2c, 0x4b, 0x51, 0x58, 0x45, + 0x44, 0x1b, 0x21, 0x21, 0x59, 0x2d, 0x2c, 0x01, 0xb0, 0x05, 0x25, 0x10, + 0x23, 0x20, 0x8a, 0xf5, 0x00, 0xb0, 0x01, 0x60, 0x23, 0xed, 0xec, 0x2d, + 0x2c, 0x01, 0xb0, 0x05, 0x25, 0x10, 0x23, 0x20, 0x8a, 0xf5, 0x00, 0xb0, + 0x01, 0x61, 0x23, 0xed, 0xec, 0x2d, 0x2c, 0x01, 0xb0, 0x06, 0x25, 0x10, + 0xf5, 0x00, 0xed, 0xec, 0x2d, 0x2c, 0x46, 0x23, 0x46, 0x60, 0x8a, 0x8a, + 0x46, 0x23, 0x20, 0x46, 0x8a, 0x60, 0x8a, 0x61, 0xb8, 0xff, 0x80, 0x62, + 0x23, 0x20, 0x10, 0x23, 0x8a, 0xb1, 0x0c, 0x0c, 0x8a, 0x70, 0x45, 0x60, + 0x20, 0xb0, 0x00, 0x50, 0x58, 0xb0, 0x01, 0x61, 0xb8, 0xff, 0xba, 0x8b, + 0x1b, 0xb0, 0x46, 0x8c, 0x59, 0xb0, 0x10, 0x60, 0x68, 0x01, 0x3a, 0x2d, + 0x2c, 0x20, 0x45, 0xb0, 0x03, 0x25, 0x46, 0x52, 0x4b, 0xb0, 0x13, 0x51, + 0x5b, 0x58, 0xb0, 0x02, 0x25, 0x46, 0x20, 0x68, 0x61, 0xb0, 0x03, 0x25, + 0xb0, 0x03, 0x25, 0x3f, 0x23, 0x21, 0x38, 0x1b, 0x21, 0x11, 0x59, 0x2d, + 0x2c, 0x20, 0x45, 0xb0, 0x03, 0x25, 0x46, 0x50, 0x58, 0xb0, 0x02, 0x25, + 0x46, 0x20, 0x68, 0x61, 0xb0, 0x03, 0x25, 0xb0, 0x03, 0x25, 0x3f, 0x23, + 0x21, 0x38, 0x1b, 0x21, 0x11, 0x59, 0x2d, 0x2c, 0x00, 0xb0, 0x07, 0x43, + 0xb0, 0x06, 0x43, 0x0b, 0x2d, 0x2c, 0x21, 0x21, 0x0c, 0x64, 0x23, 0x64, + 0x8b, 0xb8, 0x40, 0x00, 0x62, 0x2d, 0x2c, 0x21, 0xb0, 0x80, 0x51, 0x58, + 0x0c, 0x64, 0x23, 0x64, 0x8b, 0xb8, 0x20, 0x00, 0x62, 0x1b, 0xb2, 0x00, + 0x40, 0x2f, 0x2b, 0x59, 0xb0, 0x02, 0x60, 0x2d, 0x2c, 0x21, 0xb0, 0xc0, + 0x51, 0x58, 0x0c, 0x64, 0x23, 0x64, 0x8b, 0xb8, 0x15, 0x55, 0x62, 0x1b, + 0xb2, 0x00, 0x80, 0x2f, 0x2b, 0x59, 0xb0, 0x02, 0x60, 0x2d, 0x2c, 0x0c, + 0x64, 0x23, 0x64, 0x8b, 0xb8, 0x40, 0x00, 0x62, 0x60, 0x23, 0x21, 0x2d, + 0x2c, 0x4b, 0x53, 0x58, 0x8a, 0xb0, 0x04, 0x25, 0x49, 0x64, 0x23, 0x45, + 0x69, 0xb0, 0x40, 0x8b, 0x61, 0xb0, 0x80, 0x62, 0xb0, 0x20, 0x61, 0x6a, + 0xb0, 0x0e, 0x23, 0x44, 0x23, 0x10, 0xb0, 0x0e, 0xf6, 0x1b, 0x21, 0x23, + 0x8a, 0x12, 0x11, 0x20, 0x39, 0x2f, 0x59, 0x2d, 0x2c, 0x4b, 0x53, 0x58, + 0x20, 0xb0, 0x03, 0x25, 0x49, 0x64, 0x69, 0x20, 0xb0, 0x05, 0x26, 0xb0, + 0x06, 0x25, 0x49, 0x64, 0x23, 0x61, 0xb0, 0x80, 0x62, 0xb0, 0x20, 0x61, + 0x6a, 0xb0, 0x0e, 0x23, 0x44, 0xb0, 0x04, 0x26, 0x10, 0xb0, 0x0e, 0xf6, + 0x8a, 0x10, 0xb0, 0x0e, 0x23, 0x44, 0xb0, 0x0e, 0xf6, 0xb0, 0x0e, 0x23, + 0x44, 0xb0, 0x0e, 0xed, 0x1b, 0x8a, 0xb0, 0x04, 0x26, 0x11, 0x12, 0x20, + 0x39, 0x23, 0x20, 0x39, 0x2f, 0x2f, 0x59, 0x2d, 0x2c, 0x45, 0x23, 0x45, + 0x60, 0x23, 0x45, 0x60, 0x23, 0x45, 0x60, 0x23, 0x76, 0x68, 0x18, 0xb0, + 0x80, 0x62, 0x20, 0x2d, 0x2c, 0xb0, 0x48, 0x2b, 0x2d, 0x2c, 0x20, 0x45, + 0xb0, 0x00, 0x54, 0x58, 0xb0, 0x40, 0x44, 0x20, 0x45, 0xb0, 0x40, 0x61, + 0x44, 0x1b, 0x21, 0x21, 0x59, 0x2d, 0x2c, 0x45, 0xb1, 0x30, 0x2f, 0x45, + 0x23, 0x45, 0x61, 0x60, 0xb0, 0x01, 0x60, 0x69, 0x44, 0x2d, 0x2c, 0x4b, + 0x51, 0x58, 0xb0, 0x2f, 0x23, 0x70, 0xb0, 0x14, 0x23, 0x42, 0x1b, 0x21, + 0x21, 0x59, 0x2d, 0x2c, 0x4b, 0x51, 0x58, 0x20, 0xb0, 0x03, 0x25, 0x45, + 0x69, 0x53, 0x58, 0x44, 0x1b, 0x21, 0x21, 0x59, 0x1b, 0x21, 0x21, 0x59, + 0x2d, 0x2c, 0x45, 0xb0, 0x14, 0x43, 0xb0, 0x00, 0x60, 0x63, 0xb0, 0x01, + 0x60, 0x69, 0x44, 0x2d, 0x2c, 0xb0, 0x2f, 0x45, 0x44, 0x2d, 0x2c, 0x45, + 0x23, 0x20, 0x45, 0x8a, 0x60, 0x44, 0x2d, 0x2c, 0x45, 0x23, 0x45, 0x60, + 0x44, 0x2d, 0x2c, 0x4b, 0x23, 0x51, 0x58, 0xb9, 0x00, 0x33, 0xff, 0xe0, + 0xb1, 0x34, 0x20, 0x1b, 0xb3, 0x33, 0x00, 0x34, 0x00, 0x59, 0x44, 0x44, + 0x2d, 0x2c, 0xb0, 0x16, 0x43, 0x58, 0xb0, 0x03, 0x26, 0x45, 0x8a, 0x58, + 0x64, 0x66, 0xb0, 0x1f, 0x60, 0x1b, 0x64, 0xb0, 0x20, 0x60, 0x66, 0x20, + 0x58, 0x1b, 0x21, 0xb0, 0x40, 0x59, 0xb0, 0x01, 0x61, 0x59, 0x23, 0x58, + 0x65, 0x59, 0xb0, 0x29, 0x23, 0x44, 0x23, 0x10, 0xb0, 0x29, 0xe0, 0x1b, + 0x21, 0x21, 0x21, 0x21, 0x21, 0x59, 0x2d, 0x2c, 0xb0, 0x02, 0x43, 0x54, + 0x58, 0x4b, 0x53, 0x23, 0x4b, 0x51, 0x5a, 0x58, 0x38, 0x1b, 0x21, 0x21, + 0x59, 0x1b, 0x21, 0x21, 0x21, 0x21, 0x59, 0x2d, 0x2c, 0xb0, 0x16, 0x43, + 0x58, 0xb0, 0x04, 0x25, 0x45, 0x64, 0xb0, 0x20, 0x60, 0x66, 0x20, 0x58, + 0x1b, 0x21, 0xb0, 0x40, 0x59, 0xb0, 0x01, 0x61, 0x23, 0x58, 0x1b, 0x65, + 0x59, 0xb0, 0x29, 0x23, 0x44, 0xb0, 0x05, 0x25, 0xb0, 0x08, 0x25, 0x08, + 0x20, 0x58, 0x02, 0x1b, 0x03, 0x59, 0xb0, 0x04, 0x25, 0x10, 0xb0, 0x05, + 0x25, 0x20, 0x46, 0xb0, 0x04, 0x25, 0x23, 0x42, 0x3c, 0xb0, 0x04, 0x25, + 0xb0, 0x07, 0x25, 0x08, 0xb0, 0x07, 0x25, 0x10, 0xb0, 0x06, 0x25, 0x20, + 0x46, 0xb0, 0x04, 0x25, 0xb0, 0x01, 0x60, 0x23, 0x42, 0x3c, 0x20, 0x58, + 0x01, 0x1b, 0x00, 0x59, 0xb0, 0x04, 0x25, 0x10, 0xb0, 0x05, 0x25, 0xb0, + 0x29, 0xe0, 0xb0, 0x29, 0x20, 0x45, 0x65, 0x44, 0xb0, 0x07, 0x25, 0x10, + 0xb0, 0x06, 0x25, 0xb0, 0x29, 0xe0, 0xb0, 0x05, 0x25, 0xb0, 0x08, 0x25, + 0x08, 0x20, 0x58, 0x02, 0x1b, 0x03, 0x59, 0xb0, 0x05, 0x25, 0xb0, 0x03, + 0x25, 0x43, 0x48, 0xb0, 0x04, 0x25, 0xb0, 0x07, 0x25, 0x08, 0xb0, 0x06, + 0x25, 0xb0, 0x03, 0x25, 0xb0, 0x01, 0x60, 0x43, 0x48, 0x1b, 0x21, 0x59, + 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x2d, 0x2c, 0x02, 0xb0, 0x04, + 0x25, 0x20, 0x20, 0x46, 0xb0, 0x04, 0x25, 0x23, 0x42, 0xb0, 0x05, 0x25, + 0x08, 0xb0, 0x03, 0x25, 0x45, 0x48, 0x21, 0x21, 0x21, 0x21, 0x2d, 0x2c, + 0x02, 0xb0, 0x03, 0x25, 0x20, 0xb0, 0x04, 0x25, 0x08, 0xb0, 0x02, 0x25, + 0x43, 0x48, 0x21, 0x21, 0x21, 0x2d, 0x2c, 0x45, 0x23, 0x20, 0x45, 0x18, + 0x20, 0xb0, 0x00, 0x50, 0x20, 0x58, 0x23, 0x65, 0x23, 0x59, 0x23, 0x68, + 0x20, 0xb0, 0x40, 0x50, 0x58, 0x21, 0xb0, 0x40, 0x59, 0x23, 0x58, 0x65, + 0x59, 0x8a, 0x60, 0x44, 0x2d, 0x2c, 0x4b, 0x53, 0x23, 0x4b, 0x51, 0x5a, + 0x58, 0x20, 0x45, 0x8a, 0x60, 0x44, 0x1b, 0x21, 0x21, 0x59, 0x2d, 0x2c, + 0x4b, 0x54, 0x58, 0x20, 0x45, 0x8a, 0x60, 0x44, 0x1b, 0x21, 0x21, 0x59, + 0x2d, 0x2c, 0x4b, 0x53, 0x23, 0x4b, 0x51, 0x5a, 0x58, 0x38, 0x1b, 0x21, + 0x21, 0x59, 0x2d, 0x2c, 0xb0, 0x00, 0x21, 0x4b, 0x54, 0x58, 0x38, 0x1b, + 0x21, 0x21, 0x59, 0x2d, 0x2c, 0xb0, 0x02, 0x43, 0x54, 0x58, 0xb0, 0x46, + 0x2b, 0x1b, 0x21, 0x21, 0x21, 0x21, 0x59, 0x2d, 0x2c, 0xb0, 0x02, 0x43, + 0x54, 0x58, 0xb0, 0x47, 0x2b, 0x1b, 0x21, 0x21, 0x21, 0x59, 0x2d, 0x2c, + 0xb0, 0x02, 0x43, 0x54, 0x58, 0xb0, 0x48, 0x2b, 0x1b, 0x21, 0x21, 0x21, + 0x21, 0x59, 0x2d, 0x2c, 0xb0, 0x02, 0x43, 0x54, 0x58, 0xb0, 0x49, 0x2b, + 0x1b, 0x21, 0x21, 0x21, 0x59, 0x2d, 0x2c, 0x20, 0x8a, 0x08, 0x23, 0x4b, + 0x53, 0x8a, 0x4b, 0x51, 0x5a, 0x58, 0x23, 0x38, 0x1b, 0x21, 0x21, 0x59, + 0x2d, 0x2c, 0x00, 0xb0, 0x02, 0x25, 0x49, 0xb0, 0x00, 0x53, 0x58, 0x20, + 0xb0, 0x40, 0x38, 0x11, 0x1b, 0x21, 0x59, 0x2d, 0x2c, 0x01, 0x46, 0x23, + 0x46, 0x60, 0x23, 0x46, 0x61, 0x23, 0x20, 0x10, 0x20, 0x46, 0x8a, 0x61, + 0xb8, 0xff, 0x80, 0x62, 0x8a, 0xb1, 0x40, 0x40, 0x8a, 0x70, 0x45, 0x60, + 0x68, 0x3a, 0x2d, 0x2c, 0x20, 0x8a, 0x23, 0x49, 0x64, 0x8a, 0x23, 0x53, + 0x58, 0x3c, 0x1b, 0x21, 0x59, 0x2d, 0x2c, 0x4b, 0x52, 0x58, 0x7d, 0x1b, + 0x7a, 0x59, 0x2d, 0x2c, 0xb0, 0x12, 0x00, 0x4b, 0x01, 0x4b, 0x54, 0x42, + 0x2d, 0x2c, 0xb1, 0x02, 0x00, 0x42, 0xb1, 0x23, 0x01, 0x88, 0x51, 0xb1, + 0x40, 0x01, 0x88, 0x53, 0x5a, 0x58, 0xb9, 0x10, 0x00, 0x00, 0x20, 0x88, + 0x54, 0x58, 0xb2, 0x02, 0x01, 0x02, 0x43, 0x60, 0x42, 0x59, 0xb1, 0x24, + 0x01, 0x88, 0x51, 0x58, 0xb9, 0x20, 0x00, 0x00, 0x40, 0x88, 0x54, 0x58, + 0xb2, 0x02, 0x02, 0x02, 0x43, 0x60, 0x42, 0xb1, 0x24, 0x01, 0x88, 0x54, + 0x58, 0xb2, 0x02, 0x20, 0x02, 0x43, 0x60, 0x42, 0x00, 0x4b, 0x01, 0x4b, + 0x52, 0x58, 0xb2, 0x02, 0x08, 0x02, 0x43, 0x60, 0x42, 0x59, 0x1b, 0xb9, + 0x40, 0x00, 0x00, 0x80, 0x88, 0x54, 0x58, 0xb2, 0x02, 0x04, 0x02, 0x43, + 0x60, 0x42, 0x59, 0xb9, 0x40, 0x00, 0x00, 0x80, 0x63, 0xb8, 0x01, 0x00, + 0x88, 0x54, 0x58, 0xb2, 0x02, 0x08, 0x02, 0x43, 0x60, 0x42, 0x59, 0xb9, + 0x40, 0x00, 0x01, 0x00, 0x63, 0xb8, 0x02, 0x00, 0x88, 0x54, 0x58, 0xb2, + 0x02, 0x10, 0x02, 0x43, 0x60, 0x42, 0x59, 0xb9, 0x40, 0x00, 0x02, 0x00, + 0x63, 0xb8, 0x04, 0x00, 0x88, 0x54, 0x58, 0xb2, 0x02, 0x40, 0x02, 0x43, + 0x60, 0x42, 0x59, 0x59, 0x59, 0x59, 0x59, 0x2d, 0x2c, 0x45, 0x18, 0x68, + 0x23, 0x4b, 0x51, 0x58, 0x23, 0x20, 0x45, 0x20, 0x64, 0xb0, 0x40, 0x50, + 0x58, 0x7c, 0x59, 0x68, 0x8a, 0x60, 0x59, 0x44, 0x2d, 0x2c, 0xb0, 0x00, + 0x16, 0xb0, 0x02, 0x25, 0xb0, 0x02, 0x25, 0x01, 0xb0, 0x01, 0x23, 0x3e, + 0x00, 0xb0, 0x02, 0x23, 0x3e, 0xb1, 0x01, 0x02, 0x06, 0x0c, 0xb0, 0x0a, + 0x23, 0x65, 0x42, 0xb0, 0x0b, 0x23, 0x42, 0x01, 0xb0, 0x01, 0x23, 0x3f, + 0x00, 0xb0, 0x02, 0x23, 0x3f, 0xb1, 0x01, 0x02, 0x06, 0x0c, 0xb0, 0x06, + 0x23, 0x65, 0x42, 0xb0, 0x07, 0x23, 0x42, 0xb0, 0x01, 0x16, 0x01, 0x2d, + 0x2c, 0x7a, 0x8a, 0x10, 0x45, 0x23, 0xf5, 0x18, 0x2d, 0x00, 0x00, 0x00, + 0xb1, 0x09, 0x40, 0xbe, 0x01, 0x07, 0x00, 0x01, 0x00, 0x1f, 0x01, 0x07, + 0x00, 0x01, 0x00, 0x9f, 0x01, 0x04, 0x40, 0x8e, 0x01, 0xc0, 0xfd, 0x01, + 0xaf, 0xfd, 0x01, 0x00, 0xfd, 0x01, 0x0a, 0x4f, 0xfb, 0x01, 0x20, 0xfb, + 0x01, 0xf5, 0x50, 0x28, 0x1f, 0xf2, 0x46, 0x28, 0x1f, 0xf1, 0x46, 0x2a, + 0x1f, 0xf0, 0x46, 0x2b, 0x1f, 0x5f, 0xef, 0x7f, 0xef, 0x02, 0x0f, 0xef, + 0x4f, 0xef, 0x5f, 0xef, 0x8f, 0xef, 0xaf, 0xef, 0x05, 0x0b, 0xe5, 0xe4, + 0x1e, 0x1f, 0xe3, 0xe2, 0x46, 0x1f, 0x0f, 0xe2, 0x01, 0x40, 0xe2, 0x46, + 0x16, 0x1f, 0xe1, 0xe0, 0x46, 0x1f, 0xcf, 0xe0, 0xdf, 0xe0, 0xef, 0xe0, + 0x03, 0x40, 0xe0, 0x33, 0x36, 0x46, 0xe0, 0x46, 0x18, 0x1f, 0xdd, 0x3d, + 0xdf, 0x55, 0xde, 0x3d, 0x03, 0x55, 0xdf, 0x01, 0x03, 0x55, 0xdc, 0x03, + 0xff, 0x1f, 0x0f, 0xd5, 0x1f, 0xd5, 0x02, 0x0f, 0xd5, 0x1f, 0xd5, 0x02, + 0x40, 0xca, 0x18, 0x1b, 0x46, 0xcf, 0xc2, 0x01, 0xbd, 0xc0, 0x3c, 0x1f, + 0xc1, 0x50, 0x26, 0x1f, 0xbc, 0xbe, 0x28, 0x1f, 0xff, 0xb9, 0x01, 0x50, + 0xb8, 0x70, 0xb8, 0x80, 0xb8, 0x03, 0xb8, 0xff, 0xc0, 0x40, 0xff, 0xb8, + 0x12, 0x32, 0x46, 0x1f, 0xb7, 0x3f, 0xb7, 0x4f, 0xb7, 0x6f, 0xb7, 0x7f, + 0xb7, 0x9f, 0xb7, 0xaf, 0xb7, 0x07, 0x70, 0xb2, 0xa0, 0xb2, 0xb0, 0xb2, + 0x03, 0x0f, 0xb2, 0x01, 0x90, 0xb5, 0x01, 0xb0, 0xb5, 0x01, 0x0f, 0xb5, + 0x01, 0x08, 0x0f, 0xb3, 0x3f, 0xb3, 0xef, 0xb3, 0x03, 0x80, 0xb0, 0x90, + 0xb0, 0x02, 0xb0, 0xb0, 0xc0, 0xb0, 0xd0, 0xb0, 0x03, 0x2f, 0xaf, 0x3f, + 0xaf, 0x02, 0xa0, 0xad, 0xb0, 0xad, 0x02, 0xc0, 0xad, 0xd0, 0xad, 0x02, + 0x2f, 0xac, 0x3f, 0xac, 0x02, 0x9f, 0xab, 0x01, 0xc0, 0xaa, 0xd0, 0xaa, + 0x02, 0x4f, 0xa9, 0x8f, 0xa9, 0x02, 0x2f, 0xa9, 0x6f, 0xa9, 0xbf, 0xa9, + 0xff, 0xa9, 0x04, 0x9c, 0x9b, 0x24, 0x1f, 0x50, 0x9b, 0x01, 0x6f, 0x96, + 0x01, 0xbf, 0x96, 0x01, 0x96, 0x46, 0x1d, 0x1f, 0x95, 0x94, 0x17, 0x1f, + 0x7f, 0x94, 0x8f, 0x94, 0xff, 0x94, 0x03, 0x30, 0x91, 0x40, 0x91, 0x02, + 0x80, 0x91, 0x01, 0x70, 0x8f, 0x80, 0x8f, 0x02, 0x90, 0x8f, 0x01, 0xc0, + 0x8f, 0xd0, 0x8f, 0x02, 0x4f, 0x8c, 0x5f, 0x8c, 0x6f, 0x8c, 0x03, 0x86, + 0x46, 0xff, 0x1f, 0x9f, 0x85, 0x01, 0x84, 0x83, 0x31, 0x1f, 0x74, 0x73, + 0x3f, 0x1f, 0x73, 0x50, 0x26, 0x1f, 0x6f, 0x6e, 0x3c, 0x1f, 0x6e, 0x46, + 0x35, 0x1f, 0x1a, 0x01, 0x18, 0x55, 0x19, 0x33, 0x18, 0x55, 0x07, 0x33, + 0x03, 0x55, 0x06, 0x03, 0xff, 0x1f, 0x60, 0x50, 0x26, 0x1f, 0x5f, 0x50, + 0x26, 0x1f, 0x5c, 0x46, 0x31, 0x1f, 0x5b, 0x5a, 0x48, 0x1f, 0x5a, 0x46, + 0x31, 0x1f, 0x13, 0x32, 0x12, 0x55, 0x05, 0x01, 0x03, 0x55, 0x04, 0x32, + 0x03, 0x55, 0x6f, 0x03, 0x01, 0x0f, 0x03, 0x3f, 0x03, 0x02, 0xef, 0x51, + 0xff, 0x51, 0x02, 0x40, 0x51, 0x35, 0x38, 0x46, 0x40, 0x51, 0x25, 0x28, + 0x46, 0xcf, 0x40, 0x54, 0x50, 0x01, 0x49, 0x46, 0x20, 0x1f, 0x48, 0x46, + 0x35, 0x1f, 0x47, 0x46, 0x35, 0x1f, 0xaf, 0x46, 0x01, 0xdf, 0x46, 0xef, + 0x46, 0x02, 0x80, 0x46, 0x01, 0x16, 0x32, 0x15, 0x55, 0x11, 0x01, 0x0f, + 0x55, 0x10, 0x32, 0x0f, 0x55, 0x02, 0x01, 0x00, 0x55, 0x01, 0x00, 0x01, + 0x1f, 0x1f, 0x0f, 0x3f, 0x0f, 0x5f, 0x0f, 0x7f, 0x0f, 0x04, 0x0f, 0x0f, + 0x2f, 0x0f, 0x4f, 0x0f, 0x6f, 0x0f, 0x8f, 0x0f, 0xdf, 0x0f, 0xff, 0x0f, + 0x07, 0x3f, 0x0f, 0x7f, 0x0f, 0xef, 0x0f, 0x03, 0x6f, 0x00, 0x01, 0x80, + 0x16, 0x01, 0x05, 0x01, 0xb8, 0x01, 0x90, 0xb1, 0x54, 0x53, 0x2b, 0x2b, + 0x4b, 0xb8, 0x07, 0xff, 0x52, 0x4b, 0xb0, 0x07, 0x50, 0x5b, 0xb0, 0x01, + 0x88, 0xb0, 0x25, 0x53, 0xb0, 0x01, 0x88, 0xb0, 0x40, 0x51, 0x5a, 0xb0, + 0x06, 0x88, 0xb0, 0x00, 0x55, 0x5a, 0x5b, 0x58, 0xb1, 0x01, 0x01, 0x8e, + 0x59, 0x85, 0x8d, 0x8d, 0x00, 0x42, 0x1d, 0x4b, 0xb0, 0x32, 0x53, 0x58, + 0xb0, 0x60, 0x1d, 0x59, 0x4b, 0xb0, 0x64, 0x53, 0x58, 0xb0, 0x40, 0x1d, + 0x59, 0x4b, 0xb0, 0x80, 0x53, 0x58, 0xb0, 0x10, 0x1d, 0xb1, 0x16, 0x00, + 0x42, 0x59, 0x74, 0x73, 0x74, 0x75, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, + 0x73, 0x74, 0x75, 0x2b, 0x2b, 0x2b, 0x00, 0x74, 0x2b, 0x2b, 0x73, 0x73, + 0x75, 0x2b, 0x2b, 0x2b, 0x01, 0x2b, 0x2b, 0x2b, 0x00, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x01, 0x2b, 0x2b, 0x00, 0x2b, 0x2b, 0x01, 0x2b, 0x73, + 0x2b, 0x00, 0x74, 0x73, 0x74, 0x75, 0x73, 0x74, 0x73, 0x2b, 0x01, 0x2b, + 0x74, 0x75, 0x00, 0x73, 0x2b, 0x73, 0x74, 0x01, 0x73, 0x73, 0x74, 0x00, + 0x73, 0x74, 0x74, 0x73, 0x74, 0x73, 0x01, 0x5e, 0x73, 0x73, 0x74, 0x73, + 0x73, 0x00, 0x73, 0x2b, 0x73, 0x73, 0x01, 0x2b, 0x00, 0x2b, 0x01, 0x2b, + 0x00, 0x73, 0x2b, 0x74, 0x75, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, 0x2b, 0x2b, + 0x74, 0x2b, 0x2b, 0x5e, 0x73, 0x2b, 0x00, 0x2b, 0x5e, 0x73, 0x74, 0x01, + 0x2b, 0x2b, 0x2b, 0x00, 0x2b, 0x73, 0x73, 0x5e, 0x73, 0x73, 0x73, 0x01, + 0x73, 0x73, 0x73, 0x18, 0x5e, 0x00, 0x00, 0x00, 0x05, 0xcc, 0x05, 0xcc, + 0x00, 0x7d, 0x05, 0x81, 0x00, 0x15, 0x00, 0x79, 0x05, 0x81, 0x00, 0x15, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x04, 0x3a, 0x00, 0x14, 0x00, 0x77, 0x00, 0x00, 0xff, 0xec, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xec, 0x00, 0x00, 0x00, 0x00, 0xff, 0xec, + 0x00, 0x00, 0xfe, 0x57, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb4, 0x00, 0xbd, 0x00, 0xaf, 0x00, 0xa0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x88, 0x00, 0x7e, 0x00, 0x00, 0x00, 0xac, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0x00, 0xc3, + 0x00, 0xab, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x00, 0x8d, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xb9, 0x00, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, + 0x00, 0x99, 0x00, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x6a, 0x00, 0x83, 0x00, 0x8d, 0x00, 0xa4, + 0x00, 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x00, 0x6a, 0x00, 0x79, 0x00, 0x98, 0x00, 0xac, 0x00, 0xb8, + 0x00, 0xa7, 0x00, 0x00, 0x01, 0x22, 0x01, 0x33, 0x00, 0xc3, 0x00, 0x6b, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0x00, 0xc9, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xe1, 0x01, 0xc9, + 0x00, 0x92, 0x00, 0xa8, 0x00, 0x6b, 0x00, 0x92, 0x00, 0xb7, 0x00, 0x6b, + 0x00, 0x9b, 0x00, 0x00, 0x02, 0x7b, 0x02, 0xf2, 0x00, 0x92, 0x02, 0x52, + 0x00, 0x6e, 0x02, 0xd7, 0x03, 0x81, 0x00, 0x82, 0x00, 0x89, 0x00, 0xa0, + 0x00, 0x9f, 0x01, 0x69, 0x00, 0x8f, 0x00, 0x00, 0x01, 0x60, 0x00, 0xa4, + 0x01, 0x5b, 0x00, 0x5e, 0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x5e, 0x00, 0x65, 0x00, 0x6f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0x00, 0x90, + 0x00, 0xa5, 0x00, 0x7a, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x05, 0x81, 0xff, 0xf3, 0x00, 0x0d, 0xfc, 0xa7, + 0x00, 0x83, 0x00, 0x89, 0x00, 0x8f, 0x00, 0x96, 0x00, 0x69, 0x00, 0x71, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, + 0x01, 0xf9, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x00, 0xa7, 0x00, 0xae, + 0x00, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x07, 0x48, 0x03, 0x6a, 0x02, 0xb6, 0x02, 0x02, + 0xfd, 0x93, 0x00, 0x00, 0x00, 0x91, 0x00, 0x67, 0x00, 0x91, 0x00, 0x61, + 0x01, 0xd9, 0x00, 0x00, 0x02, 0x8d, 0x03, 0x41, 0x00, 0x44, 0x05, 0x11, + 0x01, 0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x2c, 0x00, 0x2c, + 0x00, 0x2c, 0x01, 0x16, 0x01, 0x60, 0x02, 0x04, 0x03, 0x04, 0x03, 0xe6, + 0x04, 0xf0, 0x05, 0x0e, 0x05, 0x54, 0x05, 0x9e, 0x05, 0xf6, 0x06, 0x32, + 0x06, 0x72, 0x06, 0x90, 0x06, 0xb2, 0x06, 0xda, 0x07, 0x50, 0x07, 0x96, + 0x08, 0x20, 0x08, 0xde, 0x09, 0x44, 0x09, 0xe2, 0x0a, 0x8c, 0x0a, 0xce, + 0x0b, 0x9e, 0x0c, 0x50, 0x0c, 0x7e, 0x0c, 0xc8, 0x0d, 0x12, 0x0d, 0x4a, + 0x0d, 0x92, 0x0e, 0x14, 0x0f, 0x64, 0x10, 0x16, 0x10, 0xac, 0x11, 0x40, + 0x11, 0xa0, 0x11, 0xde, 0x12, 0x28, 0x12, 0xca, 0x13, 0x16, 0x13, 0x60, + 0x13, 0xc2, 0x14, 0x2c, 0x14, 0x58, 0x15, 0xb8, 0x16, 0x40, 0x16, 0xb6, + 0x17, 0x1a, 0x17, 0xc0, 0x18, 0x5e, 0x19, 0x28, 0x1a, 0x26, 0x1a, 0x92, + 0x1b, 0x2a, 0x1d, 0xa2, 0x1e, 0xfe, 0x20, 0x40, 0x20, 0x94, 0x20, 0xbe, + 0x20, 0xf2, 0x21, 0x1c, 0x22, 0xac, 0x22, 0xca, 0x22, 0xf4, 0x23, 0xa0, + 0x24, 0x36, 0x24, 0xac, 0x25, 0x36, 0x25, 0xa6, 0x26, 0x20, 0x26, 0xee, + 0x27, 0x58, 0x27, 0xa6, 0x28, 0x66, 0x29, 0x00, 0x29, 0x44, 0x2a, 0xf6, + 0x2b, 0x64, 0x2b, 0xd4, 0x2c, 0x70, 0x2d, 0x14, 0x2d, 0x62, 0x2e, 0x10, + 0x2e, 0x72, 0x2e, 0xe6, 0x30, 0x34, 0x32, 0x56, 0x33, 0xe2, 0x35, 0x7c, + 0x36, 0x18, 0x36, 0x88, 0x37, 0x7e, 0x37, 0xf0, 0x38, 0x70, 0x39, 0x8e, + 0x3a, 0x02, 0x3a, 0xb4, 0x3b, 0x54, 0x3b, 0xda, 0x3c, 0xde, 0x3e, 0x0c, + 0x3e, 0x80, 0x3f, 0x76, 0x40, 0x38, 0x40, 0x98, 0x40, 0xc2, 0x41, 0xa2, + 0x41, 0xb8, 0x42, 0x14, 0x42, 0x5e, 0x42, 0xd8, 0x43, 0x6e, 0x43, 0x9a, + 0x44, 0x1a, 0x44, 0x5a, 0x44, 0x7a, 0x44, 0xe4, 0x45, 0x20, 0x45, 0x96, + 0x45, 0xfe, 0x46, 0x20, 0x46, 0x4a, 0x46, 0x6c, 0x46, 0xf8, 0x47, 0x10, + 0x47, 0x28, 0x47, 0x40, 0x47, 0x58, 0x47, 0x72, 0x47, 0x8a, 0x47, 0xfe, + 0x48, 0x12, 0x48, 0x2a, 0x48, 0x42, 0x48, 0x5a, 0x48, 0x74, 0x48, 0x8c, + 0x48, 0xa2, 0x48, 0xb8, 0x48, 0xd0, 0x49, 0x40, 0x49, 0x58, 0x49, 0x70, + 0x49, 0x88, 0x49, 0xa0, 0x49, 0xb8, 0x49, 0xd2, 0x4a, 0x34, 0x4a, 0xec, + 0x4b, 0x04, 0x4b, 0x1c, 0x4b, 0x34, 0x4b, 0x4e, 0x4b, 0x66, 0x4b, 0xc4, + 0x4c, 0x8a, 0x4c, 0xa2, 0x4c, 0xba, 0x4c, 0xd2, 0x4c, 0xea, 0x4d, 0x04, + 0x4d, 0x1e, 0x4e, 0x16, 0x4e, 0x2a, 0x4e, 0x42, 0x4e, 0x5a, 0x4e, 0x72, + 0x4e, 0x8c, 0x4e, 0xa4, 0x4e, 0xba, 0x4e, 0xd0, 0x4e, 0xe8, 0x4f, 0x9c, + 0x4f, 0xb4, 0x4f, 0xcc, 0x4f, 0xe4, 0x4f, 0xfc, 0x50, 0x14, 0x50, 0x2e, + 0x50, 0x6e, 0x51, 0x0a, 0x51, 0x22, 0x51, 0x3a, 0x51, 0x52, 0x51, 0x6c, + 0x51, 0x84, 0x52, 0x08, 0x52, 0x22, 0x52, 0x3a, 0x52, 0x52, 0x52, 0x6a, + 0x52, 0x82, 0x52, 0x96, 0x52, 0xaa, 0x52, 0xc2, 0x52, 0xda, 0x52, 0xf2, + 0x53, 0x0a, 0x53, 0x22, 0x53, 0x36, 0x53, 0x4e, 0x53, 0x66, 0x53, 0x7e, + 0x53, 0x94, 0x53, 0x9c, 0x54, 0x3a, 0x54, 0x52, 0x54, 0x6a, 0x54, 0x82, + 0x54, 0x9a, 0x54, 0xb2, 0x54, 0xc6, 0x54, 0xda, 0x54, 0xee, 0x55, 0x06, + 0x55, 0x1e, 0x55, 0x36, 0x55, 0x4e, 0x55, 0x66, 0x55, 0x7e, 0x55, 0x96, + 0x55, 0xaa, 0x55, 0xbe, 0x55, 0xd6, 0x55, 0xee, 0x56, 0x06, 0x56, 0x7e, + 0x57, 0x04, 0x57, 0x1a, 0x57, 0x30, 0x57, 0x48, 0x57, 0x5e, 0x57, 0x74, + 0x57, 0x8a, 0x57, 0x9c, 0x57, 0xb0, 0x57, 0xc8, 0x58, 0x9a, 0x58, 0xa6, + 0x58, 0xc2, 0x58, 0xda, 0x59, 0xd4, 0x59, 0xe8, 0x59, 0xfc, 0x5a, 0x6c, + 0x5a, 0x84, 0x5a, 0x9a, 0x5a, 0xae, 0x5a, 0xc2, 0x5a, 0xd8, 0x5b, 0x06, + 0x5b, 0x1a, 0x5b, 0x2e, 0x5b, 0x86, 0x5b, 0xd0, 0x5b, 0xe8, 0x5c, 0x00, + 0x5c, 0x14, 0x5c, 0x28, 0x5c, 0x40, 0x5c, 0x58, 0x5c, 0x64, 0x5d, 0x04, + 0x5d, 0x94, 0x5d, 0xac, 0x5d, 0xc4, 0x5d, 0xdc, 0x5d, 0xf4, 0x5e, 0x0e, + 0x5e, 0x28, 0x5e, 0xc8, 0x5f, 0x8a, 0x5f, 0xa2, 0x5f, 0xba, 0x5f, 0xce, + 0x5f, 0xe2, 0x5f, 0xfa, 0x60, 0x12, 0x60, 0x2a, 0x60, 0x42, 0x60, 0x5a, + 0x60, 0x72, 0x60, 0x86, 0x60, 0x9a, 0x60, 0xb2, 0x60, 0xca, 0x60, 0xd6, + 0x60, 0xe2, 0x60, 0xfa, 0x61, 0x10, 0x61, 0x60, 0x61, 0xd2, 0x61, 0xea, + 0x62, 0x02, 0x62, 0x1a, 0x62, 0x32, 0x62, 0x4a, 0x62, 0x62, 0x62, 0x7c, + 0x62, 0x96, 0x62, 0xb0, 0x62, 0xca, 0x62, 0xec, 0x63, 0x00, 0x63, 0x18, + 0x63, 0x30, 0x63, 0x48, 0x63, 0x60, 0x63, 0x7a, 0x63, 0x92, 0x63, 0xaa, + 0x63, 0xc2, 0x63, 0xd6, 0x63, 0xee, 0x64, 0x06, 0x64, 0x66, 0x64, 0xde, + 0x65, 0xda, 0x65, 0xfe, 0x66, 0x16, 0x66, 0x2e, 0x66, 0x46, 0x66, 0x5e, + 0x66, 0x6a, 0x66, 0x76, 0x66, 0x82, 0x66, 0x8e, 0x66, 0xc4, 0x66, 0xfa, + 0x67, 0x30, 0x67, 0x78, 0x67, 0x90, 0x67, 0xf8, 0x68, 0x44, 0x69, 0x96, + 0x69, 0xe8, 0x6a, 0x18, 0x6a, 0x5e, 0x6a, 0x9a, 0x6b, 0xac, 0x6b, 0xd4, + 0x6c, 0x12, 0x6c, 0x4e, 0x6c, 0x70, 0x6f, 0x5e, 0x6f, 0x8e, 0x70, 0xb8, + 0x70, 0xc0, 0x70, 0xc8, 0x70, 0xf4, 0x71, 0x72, 0x71, 0x7a, 0x71, 0x82, + 0x71, 0x8a, 0x72, 0x2c, 0x72, 0x34, 0x72, 0x3c, 0x72, 0xc4, 0x72, 0xcc, + 0x72, 0xd4, 0x73, 0x16, 0x73, 0x1e, 0x73, 0x58, 0x73, 0x60, 0x73, 0xda, + 0x73, 0xe2, 0x73, 0xea, 0x74, 0x8c, 0x74, 0x94, 0x75, 0x2e, 0x75, 0xf0, + 0x76, 0x08, 0x77, 0x64, 0x77, 0x7c, 0x77, 0x94, 0x77, 0xac, 0x77, 0xc6, + 0x77, 0xe2, 0x78, 0xc0, 0x79, 0x76, 0x7a, 0x18, 0x7a, 0xb2, 0x7b, 0x5c, + 0x7c, 0x14, 0x7c, 0x7c, 0x7d, 0x1e, 0x7d, 0xbe, 0x7e, 0x2a, 0x7f, 0x00, + 0x7f, 0x72, 0x80, 0xa8, 0x81, 0x8c, 0x81, 0x94, 0x82, 0x12, 0x82, 0x98, + 0x83, 0x50, 0x83, 0xd6, 0x84, 0x3e, 0x84, 0xa6, 0x85, 0x2c, 0x85, 0xec, + 0x86, 0x5e, 0x87, 0x0e, 0x87, 0x28, 0x87, 0x42, 0x87, 0x5a, 0x87, 0x72, + 0x87, 0x8a, 0x87, 0x92, 0x87, 0xec, 0x88, 0x70, 0x88, 0x88, 0x89, 0x38, + 0x89, 0x40, 0x89, 0x48, 0x89, 0x60, 0x89, 0x68, 0x8a, 0x1e, 0x8a, 0x8a, + 0x8a, 0xf8, 0x8b, 0x10, 0x8b, 0x1c, 0x8b, 0x34, 0x8b, 0x7c, 0x8b, 0x84, + 0x8b, 0xf8, 0x8c, 0x00, 0x8c, 0x08, 0x8c, 0x96, 0x8c, 0x9e, 0x8d, 0x88, + 0x8e, 0x5e, 0x8e, 0xc0, 0x8e, 0xd8, 0x8f, 0x4e, 0x8f, 0xd4, 0x8f, 0xdc, + 0x8f, 0xe4, 0x8f, 0xec, 0x90, 0x22, 0x90, 0x2a, 0x90, 0x32, 0x90, 0x3a, + 0x90, 0xc2, 0x91, 0x52, 0x91, 0x5a, 0x91, 0x98, 0x92, 0x04, 0x92, 0x54, + 0x92, 0xb0, 0x93, 0x0e, 0x93, 0x84, 0x93, 0xe2, 0x94, 0x8c, 0x95, 0x26, + 0x95, 0xd0, 0x95, 0xd8, 0x96, 0x7c, 0x97, 0x0c, 0x97, 0x38, 0x97, 0xb4, + 0x97, 0xbc, 0x98, 0xb0, 0x99, 0x56, 0x99, 0xd8, 0x99, 0xf0, 0x9a, 0x7e, + 0x9b, 0x06, 0x9b, 0xb8, 0x9c, 0x16, 0x9c, 0x1e, 0x9c, 0x68, 0x9c, 0x70, + 0x9c, 0x78, 0x9c, 0xb0, 0x9c, 0xb8, 0x9d, 0xb0, 0x9d, 0xb8, 0x9d, 0xfe, + 0x9e, 0x56, 0x9e, 0xa8, 0x9f, 0x0c, 0x9f, 0x6e, 0x9f, 0xd2, 0xa0, 0x3c, + 0xa0, 0xce, 0xa1, 0x4c, 0xa1, 0xbc, 0xa1, 0xc8, 0xa1, 0xe2, 0xa2, 0x82, + 0xa2, 0x9a, 0xa3, 0x2c, 0xa3, 0x34, 0xa3, 0xaa, 0xa3, 0xc4, 0xa3, 0xcc, + 0xa4, 0xa6, 0xa5, 0x1c, 0xa5, 0xa0, 0xa5, 0xb8, 0xa5, 0xc4, 0xa5, 0xdc, + 0xa6, 0x32, 0xa6, 0x7e, 0xa6, 0xc0, 0xa6, 0xf0, 0xa7, 0x1e, 0xa7, 0x36, + 0xa7, 0x4e, 0xa7, 0x66, 0xa7, 0x7e, 0xa7, 0x98, 0xa7, 0xb2, 0xa7, 0xca, + 0xa7, 0xe2, 0xa7, 0xfe, 0xa8, 0x1a, 0xa8, 0x3c, 0xa8, 0x5e, 0xa8, 0x80, + 0xa8, 0x8c, 0xa8, 0xbc, 0xa8, 0xee, 0xa9, 0x20, 0xa9, 0x50, 0xa9, 0xa6, + 0xaa, 0x06, 0xaa, 0x64, 0xaa, 0xa0, 0xaa, 0xfa, 0xab, 0x40, 0xab, 0x82, + 0xae, 0x1a, 0xae, 0x3c, 0xae, 0x4e, 0xae, 0x8a, 0xae, 0xc2, 0xae, 0xda, + 0xae, 0xee, 0xaf, 0x12, 0xaf, 0x7c, 0xaf, 0xd0, 0xb0, 0x90, 0xb1, 0xf8, + 0xb2, 0xc6, 0xb3, 0x98, 0xb4, 0x46, 0xb5, 0x1c, 0xb5, 0xb4, 0xb6, 0x74, + 0xb6, 0xe2, 0xb7, 0x14, 0xb7, 0x46, 0xb7, 0x78, 0xb7, 0xa2, 0xb7, 0xd0, + 0xb7, 0xfe, 0xb8, 0x2c, 0xb8, 0x5a, 0xb8, 0xa2, 0xb8, 0xea, 0xb9, 0x3a, + 0xba, 0x0a, 0xba, 0xaa, 0xba, 0xda, 0xbb, 0x4c, 0xbb, 0x6a, 0xbb, 0xdc, + 0xbc, 0x76, 0xbc, 0x8e, 0xbc, 0xc8, 0xbe, 0x00, 0xbe, 0xf0, 0xbf, 0x68, + 0xbf, 0x9c, 0xbf, 0xf4, 0xc0, 0x4c, 0xc0, 0x7a, 0xc0, 0x94, 0xc0, 0xca, + 0xc1, 0x08, 0xc1, 0x20, 0xc1, 0x3a, 0xc1, 0x5c, 0xc1, 0x7e, 0xc1, 0xa0, + 0xc1, 0xc2, 0xc1, 0xe8, 0xc2, 0x0e, 0xc2, 0x34, 0xc2, 0x5a, 0xc2, 0x8c, + 0xc2, 0xb2, 0xc2, 0xdc, 0xc3, 0x0a, 0xc3, 0x3a, 0xc3, 0x74, 0xc3, 0xa2, + 0xc3, 0xd2, 0xc4, 0x0c, 0xc4, 0x3a, 0xc4, 0x6a, 0xc4, 0xa4, 0xc4, 0xd2, + 0xc5, 0x02, 0xc5, 0x3c, 0xc5, 0x70, 0xc5, 0xa6, 0xc5, 0xea, 0xc6, 0x1e, + 0xc6, 0x56, 0xc6, 0x9c, 0xc6, 0xd2, 0xc7, 0x06, 0xc7, 0x4c, 0xc7, 0x82, + 0xc7, 0xb6, 0xc7, 0xfe, 0xc8, 0x46, 0xc8, 0x90, 0xc8, 0xec, 0xc9, 0x04, + 0xc9, 0x1c, 0xc9, 0x34, 0xc9, 0x4c, 0xc9, 0x64, 0xcb, 0x7c, 0xcd, 0x58, + 0xcf, 0x18, 0xcf, 0x26, 0xcf, 0x46, 0xcf, 0x62, 0xcf, 0x8a, 0xcf, 0x98, + 0xcf, 0xa6, 0xcf, 0xb4, 0xcf, 0xc2, 0xcf, 0xd0, 0xcf, 0xfe, 0xd0, 0x50, + 0xd0, 0x82, 0xd0, 0xb4, 0xd1, 0x06, 0xd1, 0x48, 0xd1, 0xf8, 0xd2, 0x78, + 0xd3, 0x28, 0xd3, 0xa2, 0xd4, 0x3a, 0xd4, 0x9a, 0xd5, 0x20, 0xd5, 0x74, + 0xd5, 0xae, 0xd5, 0xfa, 0xd6, 0x66, 0xd6, 0xa6, 0xd7, 0x10, 0xd7, 0x6e, + 0xd7, 0xc0, 0xd7, 0xd2, 0xd8, 0x0e, 0xd8, 0x6e, 0xd8, 0xec, 0xd9, 0x22, + 0xd9, 0xd6, 0xda, 0x14, 0xda, 0x3c, 0xda, 0x6a, 0xda, 0x92, 0xda, 0xbc, + 0xda, 0xf2, 0xdb, 0x28, 0xdb, 0x4c, 0xdb, 0x9a, 0xdb, 0xde, 0xdc, 0x1a, + 0x00, 0x02, 0x00, 0x44, 0x00, 0x00, 0x02, 0x64, 0x05, 0x55, 0x00, 0x03, + 0x00, 0x07, 0x00, 0x2e, 0xb1, 0x01, 0x00, 0x2f, 0x3c, 0xb2, 0x07, 0x04, + 0x08, 0xed, 0x32, 0xb1, 0x06, 0x05, 0xdc, 0x3c, 0xb2, 0x03, 0x02, 0x08, + 0xed, 0x32, 0x00, 0xb1, 0x03, 0x00, 0x2f, 0x3c, 0xb2, 0x05, 0x04, 0x08, + 0xed, 0x32, 0xb2, 0x07, 0x06, 0x09, 0xfc, 0x3c, 0xb2, 0x01, 0x02, 0x08, + 0xed, 0x32, 0x33, 0x11, 0x21, 0x11, 0x25, 0x21, 0x11, 0x21, 0x44, 0x02, + 0x20, 0xfe, 0x24, 0x01, 0x98, 0xfe, 0x68, 0x05, 0x55, 0xfa, 0xab, 0x44, + 0x04, 0xcd, 0x00, 0x00, 0x00, 0x02, 0x00, 0xb9, 0x00, 0x00, 0x01, 0x7f, + 0x05, 0x81, 0x00, 0x03, 0x00, 0x07, 0x01, 0xac, 0x40, 0x9e, 0x03, 0x5b, + 0x02, 0x02, 0x96, 0x07, 0xa6, 0x07, 0x02, 0x07, 0x96, 0x39, 0x04, 0x49, + 0x04, 0x59, 0x04, 0x03, 0x04, 0x40, 0x17, 0x1b, 0x48, 0x06, 0x04, 0x01, + 0x0b, 0x04, 0x26, 0x09, 0x01, 0xc9, 0x09, 0xd9, 0x09, 0x02, 0x76, 0x09, + 0xa6, 0x09, 0x02, 0x19, 0x09, 0x29, 0x09, 0x02, 0x06, 0x09, 0x01, 0xd7, + 0x49, 0x09, 0x01, 0x26, 0x09, 0x01, 0xd9, 0x09, 0x01, 0x76, 0x09, 0x01, + 0x29, 0x09, 0x01, 0x06, 0x09, 0x01, 0x79, 0x09, 0x01, 0x56, 0x09, 0x01, + 0x09, 0x09, 0x01, 0xa3, 0xa9, 0x09, 0x01, 0x82, 0x09, 0x01, 0x54, 0x09, + 0x64, 0x09, 0x74, 0x09, 0x03, 0x89, 0x09, 0x01, 0x62, 0x09, 0x72, 0x09, + 0x02, 0x44, 0x09, 0x54, 0x09, 0x02, 0x22, 0x09, 0x32, 0x09, 0x02, 0x14, + 0x09, 0x01, 0x02, 0x09, 0x01, 0xf2, 0x09, 0x01, 0xd4, 0x09, 0xe4, 0x09, + 0x02, 0xb2, 0x09, 0xc2, 0x09, 0x02, 0x94, 0x09, 0xa4, 0x09, 0x02, 0x72, + 0x09, 0x82, 0x09, 0x02, 0x54, 0x09, 0x64, 0x09, 0x02, 0x42, 0x09, 0x01, + 0x14, 0x09, 0x24, 0x09, 0x34, 0x09, 0x03, 0x02, 0x09, 0x01, 0x6e, 0x09, + 0xb8, 0xff, 0x80, 0x40, 0x11, 0x66, 0x6d, 0x48, 0x49, 0x09, 0x01, 0x09, + 0x40, 0x5e, 0x62, 0x48, 0x2d, 0x09, 0x3d, 0x09, 0x02, 0x09, 0xb8, 0x01, + 0x00, 0x40, 0x99, 0x55, 0x58, 0x48, 0x09, 0x80, 0x51, 0x54, 0x48, 0x7d, + 0x09, 0x8d, 0x09, 0x9d, 0x09, 0x03, 0x5f, 0x09, 0x6f, 0x09, 0x02, 0x09, + 0x80, 0x47, 0x4b, 0x48, 0x09, 0xc0, 0x43, 0x46, 0x48, 0x09, 0x80, 0x3f, + 0x42, 0x48, 0x7d, 0x09, 0x01, 0x5b, 0x09, 0x6b, 0x09, 0x02, 0x3d, 0x09, + 0x4d, 0x09, 0x02, 0x19, 0x09, 0x29, 0x09, 0x02, 0x0b, 0x09, 0x01, 0x37, + 0xeb, 0x09, 0xfb, 0x09, 0x02, 0xcd, 0x09, 0xdd, 0x09, 0x02, 0xab, 0x09, + 0xbb, 0x09, 0x02, 0x09, 0x40, 0x2d, 0x30, 0x48, 0x3b, 0x09, 0x4b, 0x09, + 0x5b, 0x09, 0x03, 0x1d, 0x09, 0x2d, 0x09, 0x02, 0x01, 0xcb, 0x09, 0xdb, + 0x09, 0xeb, 0x09, 0x03, 0x9f, 0x09, 0xaf, 0x09, 0xbf, 0x09, 0x03, 0x1b, + 0x09, 0x2b, 0x09, 0x3b, 0x09, 0x6b, 0x09, 0x7b, 0x09, 0x05, 0x0f, 0x09, + 0x01, 0x02, 0x7f, 0x09, 0x8f, 0x09, 0x9f, 0x09, 0xbf, 0x09, 0xcf, 0x09, + 0x05, 0x40, 0x09, 0x60, 0x09, 0x02, 0x0f, 0x09, 0x1f, 0x09, 0x02, 0x07, + 0x70, 0x01, 0x01, 0x5f, 0x01, 0x01, 0x01, 0x05, 0x9c, 0x04, 0x02, 0x03, + 0x00, 0x3f, 0x2f, 0xfd, 0xce, 0x5d, 0x5d, 0x01, 0x5e, 0x5d, 0x5d, 0x5d, + 0x5f, 0x71, 0x71, 0x71, 0x71, 0x5f, 0x72, 0x72, 0x2b, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x2b, 0x2b, 0x71, 0x71, 0x2b, + 0x2b, 0x72, 0x2b, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x5e, 0x5d, + 0x5d, 0x5d, 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0x2b, 0x5d, 0xed, 0x71, 0x33, + 0x2f, 0xed, 0x31, 0x30, 0x01, 0x23, 0x03, 0x33, 0x03, 0x35, 0x33, 0x15, + 0x01, 0x67, 0x94, 0x18, 0xc4, 0xc6, 0xc2, 0x01, 0x8d, 0x03, 0xf4, 0xfa, + 0x7f, 0xc9, 0xc9, 0x00, 0x00, 0x02, 0x00, 0x57, 0x03, 0xc6, 0x02, 0x80, + 0x05, 0x81, 0x00, 0x03, 0x00, 0x07, 0x00, 0x68, 0x40, 0x21, 0x30, 0x03, + 0x01, 0x80, 0x03, 0x01, 0x03, 0x10, 0x02, 0x20, 0x02, 0x60, 0x02, 0x70, + 0x02, 0x80, 0x02, 0x05, 0x60, 0x02, 0x70, 0x02, 0x02, 0x50, 0x02, 0x60, + 0x02, 0xb0, 0x02, 0xc0, 0x02, 0x04, 0x02, 0xb8, 0xff, 0xc0, 0xb3, 0x25, + 0x28, 0x48, 0x02, 0xb8, 0xff, 0xc0, 0x40, 0x20, 0x19, 0x1c, 0x48, 0x02, + 0x30, 0x07, 0x01, 0x80, 0x07, 0x01, 0x07, 0x6f, 0x06, 0x7f, 0x06, 0x8f, + 0x06, 0x03, 0x2f, 0x06, 0x3f, 0x06, 0x02, 0x06, 0x05, 0x20, 0x00, 0x01, + 0x00, 0x06, 0x02, 0x03, 0x00, 0x3f, 0x33, 0xcd, 0x5d, 0x32, 0x01, 0x2f, + 0x71, 0x72, 0xcd, 0x5d, 0x71, 0xdc, 0x2b, 0x2b, 0x5d, 0x71, 0x72, 0xcd, + 0x5d, 0x71, 0x31, 0x30, 0x01, 0x23, 0x03, 0x33, 0x01, 0x23, 0x03, 0x33, + 0x02, 0x6a, 0x8e, 0x14, 0xb8, 0xfe, 0x79, 0x8d, 0x15, 0xb8, 0x03, 0xc6, + 0x01, 0xbb, 0xfe, 0x45, 0x01, 0xbb, 0x00, 0x00, 0x00, 0x02, 0x00, 0x09, + 0x00, 0x00, 0x04, 0x69, 0x05, 0x79, 0x00, 0x1b, 0x00, 0x1f, 0x00, 0xd6, + 0x40, 0x86, 0x5a, 0x19, 0x01, 0x5a, 0x15, 0x01, 0x44, 0x0e, 0x01, 0x44, + 0x13, 0x01, 0x36, 0x13, 0x01, 0x44, 0x1e, 0x01, 0x26, 0x1e, 0x36, 0x1e, + 0x02, 0x44, 0x17, 0x01, 0x26, 0x17, 0x36, 0x17, 0x02, 0x03, 0x10, 0x01, + 0x08, 0x1d, 0x1c, 0x15, 0x14, 0x09, 0x14, 0x14, 0x0b, 0x0e, 0x0f, 0x12, + 0x13, 0x0a, 0x09, 0x13, 0x0c, 0x10, 0x04, 0x0a, 0x04, 0x01, 0x00, 0x19, + 0x18, 0x05, 0x18, 0x18, 0x1b, 0x03, 0x03, 0x07, 0x1e, 0x1f, 0x16, 0x17, + 0x06, 0x17, 0x05, 0x06, 0x04, 0x07, 0x08, 0x0b, 0x04, 0x0c, 0x0d, 0x01, + 0x0e, 0x1d, 0x1e, 0x04, 0x0d, 0x00, 0x0f, 0x1c, 0x1f, 0x04, 0x10, 0x11, + 0x12, 0x15, 0x16, 0x19, 0x04, 0x11, 0x10, 0x0d, 0x01, 0xd0, 0x0d, 0x01, + 0x4f, 0x11, 0x8f, 0x11, 0x9f, 0x11, 0x03, 0x3f, 0x11, 0x4f, 0x11, 0x02, + 0x0d, 0x11, 0x0d, 0x11, 0x05, 0x14, 0x17, 0x18, 0x03, 0x13, 0x03, 0x06, + 0x09, 0x0a, 0x03, 0x05, 0x00, 0x2f, 0x17, 0x33, 0x3f, 0x17, 0x33, 0x12, + 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x71, 0x5d, 0x71, 0x11, 0x17, 0x33, 0x10, + 0xcd, 0x17, 0x32, 0x11, 0x17, 0x33, 0x10, 0xcd, 0x17, 0x32, 0x01, 0x2f, + 0x33, 0x33, 0x87, 0xc0, 0xc0, 0xc0, 0xc0, 0x01, 0x17, 0x33, 0x10, 0x87, + 0xc0, 0xc0, 0xc0, 0xc0, 0x01, 0x2f, 0x17, 0x33, 0x87, 0xc0, 0xc0, 0xc0, + 0xc0, 0x01, 0x33, 0x10, 0x87, 0xc0, 0xc0, 0xc0, 0xc0, 0x31, 0x30, 0x01, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x03, + 0x21, 0x15, 0x21, 0x03, 0x23, 0x13, 0x21, 0x03, 0x23, 0x13, 0x23, 0x35, + 0x33, 0x13, 0x23, 0x35, 0x21, 0x13, 0x33, 0x03, 0x21, 0x13, 0x33, 0x03, + 0x33, 0x15, 0x21, 0x03, 0x21, 0x13, 0x03, 0x80, 0x4e, 0x01, 0x04, 0xfe, + 0xe5, 0x58, 0x6e, 0x56, 0xfe, 0x95, 0x54, 0x6e, 0x54, 0xc9, 0xe1, 0x4e, + 0xfc, 0x01, 0x12, 0x59, 0x6e, 0x58, 0x01, 0x6b, 0x58, 0x6e, 0x58, 0xd3, + 0xfd, 0x40, 0x50, 0x01, 0x6a, 0x4e, 0x03, 0x75, 0xfe, 0x8f, 0x6c, 0xfe, + 0x68, 0x01, 0x98, 0xfe, 0x68, 0x01, 0x98, 0x6c, 0x01, 0x71, 0x6c, 0x01, + 0x98, 0xfe, 0x68, 0x01, 0x98, 0xfe, 0x68, 0x6c, 0xfe, 0x8f, 0x01, 0x71, + 0x00, 0x03, 0x00, 0x16, 0xff, 0x72, 0x04, 0x52, 0x05, 0xec, 0x00, 0x30, + 0x00, 0x3b, 0x00, 0x46, 0x01, 0x2e, 0x40, 0x5c, 0x9a, 0x0e, 0x01, 0x9a, + 0x0d, 0x01, 0x96, 0x44, 0x01, 0x85, 0x27, 0x01, 0x8a, 0x39, 0x9a, 0x39, + 0x02, 0x89, 0x35, 0x99, 0x35, 0x02, 0x84, 0x25, 0x01, 0x76, 0x06, 0x86, + 0x06, 0x96, 0x06, 0x03, 0x46, 0x3f, 0x56, 0x3f, 0x86, 0x3f, 0x03, 0x34, + 0x26, 0x64, 0x26, 0x74, 0x26, 0x03, 0x25, 0x02, 0x01, 0x19, 0x1b, 0x01, + 0x18, 0x22, 0x37, 0x03, 0x2f, 0x09, 0x15, 0x41, 0x03, 0x20, 0x30, 0x01, + 0x30, 0x30, 0x10, 0x31, 0x1e, 0x6f, 0x1d, 0x29, 0x6f, 0x00, 0x31, 0x20, + 0x31, 0x02, 0x00, 0x31, 0x20, 0x31, 0x30, 0x31, 0x50, 0x31, 0x70, 0x31, + 0x05, 0x08, 0x03, 0x31, 0xb8, 0xff, 0xc0, 0xb3, 0x1d, 0x23, 0x48, 0x31, + 0xb8, 0xff, 0xc0, 0x40, 0x75, 0x11, 0x16, 0x48, 0x31, 0x04, 0x6f, 0x03, + 0x40, 0x10, 0x18, 0x48, 0x03, 0x3c, 0x6f, 0x10, 0x21, 0x42, 0x73, 0xcf, + 0x36, 0x01, 0x9d, 0x36, 0x01, 0x05, 0x88, 0x36, 0x01, 0x78, 0x0a, 0xd8, + 0x0a, 0x02, 0xc7, 0x22, 0xd7, 0x22, 0x02, 0xb6, 0x22, 0x01, 0x87, 0x22, + 0xa7, 0x22, 0x02, 0xd7, 0x41, 0x01, 0xa6, 0x41, 0x01, 0x77, 0x41, 0x01, + 0x3c, 0x10, 0x41, 0x22, 0x0a, 0x36, 0x29, 0x31, 0x08, 0x00, 0x7d, 0x1e, + 0x8d, 0x1e, 0x02, 0x1a, 0x1e, 0x01, 0x1e, 0x18, 0x16, 0x40, 0x13, 0x17, + 0x48, 0x16, 0x0f, 0x15, 0x2f, 0x15, 0x3f, 0x15, 0x5f, 0x15, 0x04, 0x15, + 0x37, 0x09, 0x73, 0x2f, 0x94, 0x04, 0xa4, 0x04, 0x02, 0x70, 0x04, 0x80, + 0x04, 0x02, 0x05, 0x04, 0x15, 0x04, 0x55, 0x04, 0x65, 0x04, 0x04, 0x2e, + 0x04, 0x00, 0x00, 0x2f, 0x32, 0x32, 0x5d, 0x5d, 0x5d, 0xcd, 0xed, 0x32, + 0x2f, 0x5d, 0xcd, 0x2b, 0x33, 0x33, 0x5d, 0x5d, 0x12, 0x17, 0x39, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0xed, 0x32, + 0x01, 0x2f, 0xed, 0xd6, 0x2b, 0xed, 0x2f, 0x2b, 0x2b, 0x5f, 0x5e, 0x5d, + 0x71, 0xfd, 0xd4, 0xed, 0x11, 0x12, 0x39, 0x2f, 0x72, 0x17, 0x33, 0xcd, + 0x17, 0x32, 0x31, 0x30, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x01, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x25, 0x2e, 0x01, 0x27, + 0x37, 0x1e, 0x03, 0x17, 0x11, 0x27, 0x2e, 0x03, 0x35, 0x34, 0x3e, 0x02, + 0x37, 0x35, 0x33, 0x15, 0x1e, 0x03, 0x17, 0x07, 0x2e, 0x01, 0x27, 0x11, + 0x1e, 0x05, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x15, 0x23, 0x01, 0x34, 0x2e, + 0x02, 0x27, 0x11, 0x3e, 0x03, 0x01, 0x14, 0x1e, 0x02, 0x17, 0x11, 0x0e, + 0x03, 0x02, 0x06, 0xd9, 0xf5, 0x22, 0xaa, 0x0b, 0x2e, 0x4e, 0x71, 0x4e, + 0x14, 0x4d, 0x94, 0x74, 0x47, 0x40, 0x73, 0x9e, 0x5f, 0x7c, 0x64, 0x91, + 0x66, 0x42, 0x14, 0xae, 0x14, 0x7a, 0x75, 0x3b, 0x72, 0x67, 0x58, 0x40, + 0x24, 0x38, 0x72, 0xaf, 0x77, 0x7c, 0x01, 0xa0, 0x2f, 0x51, 0x6a, 0x3a, + 0x41, 0x6c, 0x4d, 0x2a, 0xfd, 0x5c, 0x28, 0x46, 0x5f, 0x37, 0x48, 0x64, + 0x3d, 0x1b, 0x14, 0x09, 0xb9, 0xa5, 0x25, 0x35, 0x57, 0x40, 0x27, 0x05, + 0x01, 0xf0, 0x05, 0x12, 0x32, 0x53, 0x80, 0x62, 0x54, 0x7c, 0x53, 0x2c, + 0x04, 0x83, 0x83, 0x05, 0x2d, 0x50, 0x73, 0x4b, 0x21, 0x5e, 0x69, 0x0b, + 0xfe, 0x43, 0x0e, 0x1e, 0x29, 0x38, 0x4f, 0x6d, 0x48, 0x4d, 0x83, 0x64, + 0x3e, 0x06, 0xa2, 0x02, 0x18, 0x3f, 0x50, 0x33, 0x20, 0x0f, 0xfe, 0x2c, + 0x04, 0x1f, 0x38, 0x51, 0x02, 0xc5, 0x36, 0x4a, 0x32, 0x21, 0x0e, 0x01, + 0xa5, 0x04, 0x21, 0x34, 0x44, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x49, + 0xff, 0xf4, 0x06, 0xd4, 0x05, 0x8d, 0x00, 0x13, 0x00, 0x17, 0x00, 0x2b, + 0x00, 0x3f, 0x00, 0x53, 0x00, 0xd4, 0x40, 0x0b, 0x76, 0x14, 0x86, 0x14, + 0x02, 0x79, 0x16, 0x89, 0x16, 0x02, 0x2a, 0xb8, 0xff, 0xe8, 0x40, 0x0e, + 0x08, 0x0c, 0x48, 0x25, 0x18, 0x08, 0x0c, 0x48, 0x20, 0x18, 0x08, 0x0c, + 0x48, 0x1a, 0xb8, 0xff, 0xe8, 0xb3, 0x08, 0x0c, 0x48, 0x11, 0xb8, 0xff, + 0xe8, 0xb3, 0x08, 0x0c, 0x48, 0x0d, 0xb8, 0xff, 0xe8, 0x40, 0x12, 0x08, + 0x0c, 0x48, 0x07, 0x18, 0x08, 0x0c, 0x48, 0x03, 0x18, 0x08, 0x0c, 0x48, + 0x16, 0x17, 0x14, 0x15, 0x15, 0xb8, 0xff, 0xf0, 0x40, 0x54, 0x17, 0x10, + 0x17, 0x15, 0x17, 0x15, 0x00, 0x27, 0x36, 0xb4, 0x0a, 0xb2, 0x00, 0xb4, + 0x00, 0x2c, 0x10, 0x2c, 0x20, 0x2c, 0x03, 0x00, 0x2c, 0x40, 0x2c, 0x02, + 0x00, 0x2c, 0x10, 0x2c, 0x20, 0x2c, 0x50, 0x2c, 0x60, 0x2c, 0x70, 0x2c, + 0xe0, 0x2c, 0xf0, 0x2c, 0x08, 0x2c, 0x40, 0xb4, 0x1d, 0xb2, 0x4a, 0xb4, + 0x0f, 0x27, 0x01, 0xef, 0x27, 0xff, 0x27, 0x02, 0x27, 0x40, 0x0a, 0x0d, + 0x48, 0x27, 0x4f, 0xb6, 0x22, 0xb8, 0x45, 0xb6, 0x18, 0x04, 0x16, 0x03, + 0x15, 0x12, 0x31, 0xb6, 0x0f, 0xb8, 0x3b, 0xb6, 0x05, 0x13, 0x00, 0x3f, + 0xed, 0xf4, 0xed, 0x3f, 0x3f, 0x3f, 0xed, 0xf4, 0xed, 0x01, 0x2f, 0x2b, + 0x71, 0x72, 0xed, 0xf4, 0xed, 0x2f, 0x5d, 0x71, 0x72, 0xfd, 0xf4, 0xed, + 0x11, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x38, 0x38, 0x11, 0x33, 0x11, 0x33, + 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, + 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, + 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x01, 0x23, 0x01, 0x33, 0x25, 0x32, + 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, + 0x3e, 0x02, 0x01, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, + 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x01, 0x34, 0x2e, 0x02, 0x23, 0x22, + 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x06, 0xd4, + 0x33, 0x57, 0x74, 0x42, 0x42, 0x73, 0x55, 0x31, 0x30, 0x56, 0x75, 0x44, + 0x42, 0x73, 0x55, 0x32, 0xfb, 0x3b, 0x9b, 0x03, 0x9a, 0x9d, 0xfb, 0xdf, + 0x40, 0x72, 0x56, 0x31, 0x32, 0x55, 0x74, 0x42, 0x43, 0x74, 0x55, 0x31, + 0x31, 0x56, 0x76, 0x04, 0xfa, 0x16, 0x2b, 0x3f, 0x28, 0x2a, 0x40, 0x2c, + 0x16, 0x17, 0x2b, 0x3f, 0x29, 0x27, 0x3f, 0x2c, 0x18, 0xfb, 0xf0, 0x16, + 0x2a, 0x3e, 0x28, 0x2b, 0x41, 0x2c, 0x16, 0x17, 0x2b, 0x40, 0x2a, 0x26, + 0x3e, 0x2c, 0x18, 0x01, 0xb2, 0x7d, 0xab, 0x69, 0x2d, 0x2d, 0x68, 0xab, + 0x7e, 0x85, 0xae, 0x67, 0x29, 0x29, 0x67, 0xae, 0xfd, 0xc9, 0x05, 0x81, + 0x0c, 0x29, 0x66, 0xac, 0x83, 0x7e, 0xac, 0x6b, 0x2e, 0x2e, 0x6a, 0xac, + 0x7f, 0x83, 0xac, 0x66, 0x29, 0xfc, 0x25, 0x63, 0x83, 0x4e, 0x20, 0x21, + 0x4e, 0x83, 0x62, 0x5f, 0x80, 0x4f, 0x22, 0x22, 0x4f, 0x80, 0x02, 0x7c, + 0x62, 0x82, 0x4e, 0x20, 0x21, 0x4e, 0x82, 0x61, 0x5f, 0x82, 0x4f, 0x22, + 0x22, 0x4f, 0x82, 0x00, 0x00, 0x03, 0x00, 0x48, 0xff, 0xec, 0x05, 0x36, + 0x05, 0x89, 0x00, 0x39, 0x00, 0x49, 0x00, 0x59, 0x01, 0x14, 0x40, 0x49, + 0x89, 0x01, 0x01, 0x8c, 0x24, 0x01, 0x7b, 0x2a, 0x8b, 0x2a, 0x02, 0x62, + 0x52, 0x72, 0x52, 0x82, 0x52, 0x03, 0x66, 0x47, 0x01, 0x7f, 0x4e, 0x01, + 0x5b, 0x4e, 0x01, 0x49, 0x2b, 0x59, 0x2b, 0x69, 0x2b, 0x03, 0x36, 0x30, + 0x86, 0x30, 0x02, 0x25, 0x28, 0x01, 0x2c, 0x23, 0x7c, 0x23, 0x8c, 0x23, + 0x03, 0x1c, 0x05, 0x2c, 0x05, 0x3c, 0x05, 0x5c, 0x05, 0x04, 0x0a, 0x0a, + 0x1a, 0x0a, 0x2a, 0x0a, 0x03, 0x0a, 0x02, 0x1a, 0x02, 0x2a, 0x02, 0x03, + 0x1f, 0xb8, 0xff, 0xe8, 0x40, 0x38, 0x09, 0x0d, 0x48, 0x0a, 0x19, 0x1a, + 0x19, 0x2a, 0x19, 0x03, 0x30, 0x29, 0x26, 0x45, 0x04, 0x36, 0x42, 0x49, + 0x17, 0x21, 0x49, 0x3a, 0x2d, 0x2c, 0x8c, 0x4a, 0x01, 0x4a, 0x4d, 0x12, + 0x03, 0x17, 0x03, 0x3a, 0x2c, 0x50, 0x17, 0x01, 0x03, 0x2c, 0x01, 0x17, + 0x3a, 0x2c, 0x2c, 0x3a, 0x17, 0x03, 0x0d, 0x0f, 0x36, 0x01, 0xaf, 0x36, + 0x01, 0x36, 0xb8, 0xff, 0xc0, 0x40, 0x3d, 0x09, 0x0c, 0x48, 0x36, 0x50, + 0x48, 0x3f, 0x0d, 0x4f, 0x0d, 0x02, 0x0d, 0x8f, 0x03, 0x01, 0x8d, 0x4d, + 0x01, 0x62, 0x45, 0x72, 0x45, 0x02, 0x36, 0x45, 0x46, 0x45, 0x02, 0x03, + 0x4a, 0x30, 0x29, 0x4d, 0x2c, 0x26, 0x12, 0x45, 0x09, 0x08, 0x3f, 0x51, + 0x90, 0x1c, 0x01, 0xc0, 0x1c, 0x01, 0x0f, 0x1c, 0x3f, 0x1c, 0x02, 0x1c, + 0x55, 0x51, 0x08, 0x16, 0x33, 0x50, 0x00, 0x16, 0x00, 0x3f, 0xed, 0x3f, + 0xed, 0x2f, 0x5d, 0x5d, 0x71, 0xed, 0x12, 0x17, 0x39, 0x5d, 0x5d, 0x5d, + 0x5d, 0x01, 0x2f, 0x5d, 0xed, 0x2f, 0x2b, 0x5d, 0x71, 0x12, 0x17, 0x39, + 0x2f, 0x2f, 0x2f, 0x00, 0x5d, 0x01, 0x5d, 0x11, 0x12, 0x39, 0x11, 0x17, + 0x39, 0x5d, 0x10, 0xcd, 0x10, 0xed, 0x10, 0xed, 0x11, 0x17, 0x39, 0x31, + 0x30, 0x5d, 0x2b, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, + 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x5d, 0x05, 0x22, + 0x26, 0x27, 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, + 0x37, 0x2e, 0x03, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x15, + 0x14, 0x0e, 0x02, 0x07, 0x1e, 0x01, 0x17, 0x3e, 0x01, 0x37, 0x17, 0x0e, + 0x01, 0x07, 0x1e, 0x01, 0x33, 0x32, 0x36, 0x37, 0x15, 0x0e, 0x01, 0x01, + 0x34, 0x2e, 0x02, 0x23, 0x22, 0x06, 0x15, 0x14, 0x16, 0x17, 0x3e, 0x03, + 0x03, 0x2e, 0x01, 0x27, 0x0e, 0x01, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, + 0x3e, 0x02, 0x04, 0xa9, 0x60, 0x90, 0x3a, 0x1e, 0x4c, 0x5d, 0x6d, 0x40, + 0x75, 0xab, 0x6e, 0x35, 0x33, 0x5b, 0x7e, 0x4b, 0x12, 0x1d, 0x16, 0x0c, + 0x28, 0x55, 0x85, 0x5d, 0x49, 0x7b, 0x5a, 0x32, 0x42, 0x70, 0x94, 0x53, + 0x3e, 0x92, 0x55, 0x3d, 0x51, 0x1d, 0x91, 0x23, 0x6b, 0x46, 0x35, 0x6a, + 0x31, 0x20, 0x3b, 0x1a, 0x1c, 0x4b, 0xfe, 0x96, 0x1b, 0x30, 0x45, 0x2a, + 0x60, 0x64, 0x25, 0x1c, 0x41, 0x74, 0x56, 0x32, 0x4a, 0x59, 0xa4, 0x42, + 0x71, 0x7b, 0x23, 0x48, 0x6d, 0x49, 0x2c, 0x4f, 0x44, 0x37, 0x0c, 0x42, + 0x3d, 0x1a, 0x30, 0x26, 0x17, 0x3c, 0x69, 0x8f, 0x53, 0x4f, 0x81, 0x69, + 0x53, 0x21, 0x22, 0x4d, 0x4e, 0x4e, 0x23, 0x42, 0x73, 0x55, 0x31, 0x26, + 0x48, 0x6a, 0x44, 0x4b, 0x75, 0x5c, 0x4b, 0x21, 0x72, 0xc9, 0x61, 0x5a, + 0xc7, 0x79, 0x2b, 0x8b, 0xe3, 0x67, 0x36, 0x2c, 0x07, 0x09, 0x87, 0x0b, + 0x0b, 0x04, 0x79, 0x25, 0x3c, 0x2b, 0x17, 0x67, 0x5b, 0x3b, 0x81, 0x38, + 0x1a, 0x37, 0x41, 0x4f, 0xfc, 0x9e, 0x69, 0xe6, 0x7a, 0x30, 0x94, 0x69, + 0x37, 0x5f, 0x47, 0x29, 0x13, 0x1e, 0x26, 0x00, 0x00, 0x01, 0x00, 0x68, + 0x03, 0xc6, 0x01, 0x20, 0x05, 0x81, 0x00, 0x03, 0x00, 0x21, 0x40, 0x13, + 0x30, 0x03, 0x01, 0x80, 0x03, 0x01, 0x03, 0x10, 0x02, 0x20, 0x02, 0x02, + 0x02, 0x20, 0x00, 0x01, 0x00, 0x02, 0x03, 0x00, 0x3f, 0xcd, 0x5d, 0x01, + 0x2f, 0x5d, 0xcd, 0x5d, 0x71, 0x31, 0x30, 0x01, 0x23, 0x03, 0x33, 0x01, + 0x0a, 0x8d, 0x15, 0xb8, 0x03, 0xc6, 0x01, 0xbb, 0x00, 0x01, 0x00, 0x7f, + 0xfe, 0x58, 0x02, 0x9e, 0x05, 0xcc, 0x00, 0x16, 0x00, 0x42, 0x40, 0x2d, + 0x87, 0x0d, 0x01, 0x87, 0x09, 0x01, 0x58, 0x14, 0x01, 0x58, 0x02, 0x01, + 0x11, 0x18, 0x0e, 0x11, 0x48, 0x05, 0x18, 0x0e, 0x11, 0x48, 0x10, 0x06, + 0x10, 0x10, 0x06, 0x80, 0x06, 0x02, 0x06, 0x0b, 0xf2, 0x00, 0x00, 0x10, + 0x00, 0x20, 0x00, 0x03, 0x00, 0x10, 0x1b, 0x05, 0x00, 0x00, 0x3f, 0x3f, + 0x01, 0x2f, 0x5d, 0xed, 0xcc, 0x5d, 0x38, 0x32, 0x31, 0x30, 0x2b, 0x2b, + 0x5d, 0x5d, 0x5d, 0x5d, 0x13, 0x34, 0x3e, 0x02, 0x37, 0x33, 0x0e, 0x03, + 0x15, 0x14, 0x1e, 0x02, 0x17, 0x23, 0x2e, 0x03, 0x35, 0x7f, 0x2a, 0x5a, + 0x8c, 0x61, 0xae, 0x5e, 0x89, 0x58, 0x2b, 0x2b, 0x58, 0x89, 0x5e, 0xae, + 0x61, 0x8c, 0x5a, 0x2a, 0x02, 0x14, 0x8b, 0xfe, 0xea, 0xdc, 0x69, 0x69, + 0xdd, 0xeb, 0xfe, 0x8b, 0x8b, 0xfe, 0xec, 0xdc, 0x69, 0x69, 0xdc, 0xea, + 0xfd, 0x8c, 0x00, 0x00, 0x00, 0x01, 0x00, 0x0c, 0xfe, 0x58, 0x02, 0x2b, + 0x05, 0xcc, 0x00, 0x16, 0x00, 0x48, 0x40, 0x0d, 0x88, 0x0d, 0x01, 0x88, + 0x09, 0x01, 0x57, 0x14, 0x01, 0x57, 0x02, 0x01, 0x11, 0xb8, 0xff, 0xe8, + 0xb3, 0x0e, 0x11, 0x48, 0x05, 0xb8, 0xff, 0xe8, 0xb4, 0x0e, 0x11, 0x48, + 0x10, 0x06, 0xb8, 0xff, 0xf0, 0x40, 0x10, 0x1f, 0x06, 0x8f, 0x06, 0x02, + 0x06, 0x00, 0xf2, 0x8f, 0x0b, 0x01, 0x0b, 0x10, 0x00, 0x05, 0x1b, 0x00, + 0x3f, 0x3f, 0x01, 0x2f, 0x5d, 0xfd, 0xcc, 0x5d, 0x38, 0x32, 0x31, 0x30, + 0x2b, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x07, 0x23, + 0x3e, 0x03, 0x35, 0x34, 0x2e, 0x02, 0x27, 0x33, 0x1e, 0x03, 0x15, 0x02, + 0x2b, 0x2a, 0x5a, 0x8c, 0x61, 0xae, 0x5e, 0x89, 0x58, 0x2b, 0x2b, 0x58, + 0x89, 0x5e, 0xae, 0x61, 0x8c, 0x5a, 0x2a, 0x02, 0x10, 0x8c, 0xfd, 0xea, + 0xdc, 0x69, 0x69, 0xdc, 0xec, 0xfe, 0x8b, 0x8b, 0xfe, 0xeb, 0xdd, 0x69, + 0x69, 0xdc, 0xea, 0xfe, 0x8b, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x21, + 0x02, 0xb2, 0x02, 0xfd, 0x05, 0x81, 0x00, 0x0e, 0x00, 0x6b, 0x40, 0x4b, + 0x4d, 0x05, 0x5d, 0x05, 0x6d, 0x05, 0x03, 0x4b, 0x04, 0x5b, 0x04, 0x6b, + 0x04, 0x03, 0x42, 0x08, 0x52, 0x08, 0x02, 0x43, 0x07, 0x53, 0x07, 0x02, + 0x00, 0x06, 0x0c, 0x03, 0x0d, 0x5f, 0x04, 0x01, 0x0f, 0x04, 0x01, 0x04, + 0x03, 0x20, 0x02, 0x30, 0x02, 0x02, 0x02, 0x0e, 0x2f, 0x0a, 0x3f, 0x0a, + 0x02, 0x0a, 0x09, 0x08, 0xbf, 0x0d, 0xcf, 0x0d, 0x02, 0x10, 0x0d, 0x20, + 0x0d, 0x02, 0x0d, 0xf0, 0x05, 0x01, 0xdf, 0x05, 0x01, 0x00, 0x05, 0x01, + 0x05, 0x0e, 0x03, 0x00, 0x3f, 0xcc, 0x5d, 0x5d, 0x5d, 0x01, 0x2f, 0x5d, + 0x5d, 0xcc, 0x33, 0xcc, 0x5d, 0xdd, 0xcc, 0x5d, 0x33, 0xcc, 0x71, 0x72, + 0x12, 0x17, 0x39, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x25, 0x17, + 0x05, 0x17, 0x07, 0x0b, 0x01, 0x27, 0x37, 0x25, 0x37, 0x05, 0x03, 0x33, + 0x01, 0xc8, 0x01, 0x08, 0x2d, 0xfe, 0xe6, 0xb9, 0x77, 0x96, 0x9c, 0x77, + 0xbd, 0xfe, 0xe8, 0x2d, 0x01, 0x0b, 0x0c, 0x88, 0x04, 0x5a, 0x67, 0x84, + 0x49, 0xfa, 0x48, 0x01, 0x02, 0xff, 0x00, 0x48, 0xf8, 0x49, 0x86, 0x6b, + 0x01, 0x29, 0x00, 0x00, 0x00, 0x01, 0x00, 0x64, 0x00, 0xb4, 0x04, 0x47, + 0x04, 0x9e, 0x00, 0x0b, 0x00, 0x47, 0x40, 0x2e, 0xd3, 0x0b, 0x01, 0x85, + 0x0b, 0x01, 0xdc, 0x04, 0x01, 0x8a, 0x04, 0x01, 0x09, 0x01, 0xaa, 0x06, + 0x10, 0x02, 0x20, 0x02, 0x02, 0x02, 0xd9, 0x02, 0x01, 0x38, 0x02, 0x88, + 0x02, 0x02, 0x02, 0x00, 0x04, 0xad, 0x09, 0xd6, 0x07, 0x01, 0x37, 0x07, + 0x87, 0x07, 0x02, 0x07, 0x05, 0xb3, 0x00, 0x3f, 0x33, 0x5d, 0x5d, 0x33, + 0xed, 0x32, 0x32, 0x5d, 0x5d, 0x01, 0x2f, 0x5d, 0x33, 0xed, 0x32, 0x31, + 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x11, 0x23, 0x11, 0x21, 0x35, 0x21, + 0x11, 0x33, 0x11, 0x21, 0x15, 0x02, 0x9f, 0x93, 0xfe, 0x58, 0x01, 0xa8, + 0x93, 0x01, 0xa8, 0x02, 0x60, 0xfe, 0x54, 0x01, 0xac, 0x92, 0x01, 0xac, + 0xfe, 0x54, 0x92, 0x00, 0x00, 0x01, 0x00, 0xb8, 0xfe, 0xfa, 0x01, 0x81, + 0x00, 0xdb, 0x00, 0x0c, 0x00, 0x4e, 0xb9, 0x00, 0x04, 0xff, 0xe0, 0xb7, + 0x0b, 0x11, 0x48, 0x0a, 0x97, 0x00, 0x96, 0x07, 0xb8, 0xff, 0xc0, 0x40, + 0x16, 0x09, 0x11, 0x48, 0x07, 0x80, 0x0c, 0x90, 0x0c, 0x02, 0x40, 0x0c, + 0x50, 0x0c, 0xb0, 0x0c, 0x03, 0x90, 0x0c, 0xa0, 0x0c, 0x02, 0x0c, 0xb8, + 0xff, 0xc0, 0x40, 0x0e, 0x26, 0x29, 0x48, 0x0c, 0x40, 0x0d, 0x10, 0x48, + 0x0c, 0x07, 0xa8, 0x00, 0x9b, 0x0b, 0x00, 0x2f, 0xfd, 0xe4, 0x01, 0x2f, + 0x2b, 0x2b, 0x5d, 0x71, 0x72, 0x33, 0x2b, 0xfd, 0xed, 0x31, 0x30, 0x2b, + 0x25, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x23, 0x3e, 0x01, 0x35, 0x23, 0x35, + 0x01, 0x81, 0x09, 0x14, 0x1d, 0x14, 0x7b, 0x2d, 0x31, 0x58, 0xdb, 0xa8, + 0x35, 0x57, 0x4b, 0x42, 0x20, 0x41, 0x84, 0x41, 0xdb, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x5b, 0x01, 0xd0, 0x02, 0x4f, 0x02, 0x70, 0x00, 0x03, + 0x00, 0x21, 0x40, 0x14, 0x00, 0x02, 0x40, 0x02, 0x70, 0x02, 0x03, 0x02, + 0x00, 0x00, 0xbb, 0x9f, 0x01, 0xcf, 0x01, 0x02, 0x2f, 0x01, 0x01, 0x01, + 0x00, 0x2f, 0x5d, 0x71, 0xed, 0x01, 0x2f, 0x2f, 0x5d, 0x31, 0x30, 0x13, + 0x35, 0x21, 0x15, 0x5b, 0x01, 0xf4, 0x01, 0xd0, 0xa0, 0xa0, 0x00, 0x00, + 0x00, 0x01, 0x00, 0xbb, 0x00, 0x00, 0x01, 0x7e, 0x00, 0xdb, 0x00, 0x03, + 0x00, 0x2e, 0x40, 0x20, 0x03, 0x96, 0x00, 0x00, 0x90, 0x00, 0x02, 0x40, + 0x00, 0x50, 0x00, 0xb0, 0x00, 0xe0, 0x00, 0xf0, 0x00, 0x05, 0x90, 0x00, + 0xa0, 0x00, 0x02, 0x00, 0x40, 0x0d, 0x10, 0x48, 0x00, 0x01, 0x9b, 0x00, + 0x00, 0x2f, 0xed, 0x01, 0x2f, 0x2b, 0x5d, 0x71, 0x72, 0xed, 0x31, 0x30, + 0x33, 0x35, 0x33, 0x15, 0xbb, 0xc3, 0xdb, 0xdb, 0x00, 0x01, 0x00, 0x00, + 0xff, 0xec, 0x02, 0x39, 0x05, 0xcc, 0x00, 0x03, 0x00, 0x33, 0x40, 0x1a, + 0x79, 0x00, 0x89, 0x00, 0x02, 0x01, 0x18, 0x0d, 0x11, 0x48, 0x29, 0x02, + 0x01, 0x02, 0x10, 0x00, 0x02, 0x10, 0x02, 0x20, 0x02, 0x80, 0x02, 0x04, + 0x02, 0x00, 0xb8, 0xff, 0xf0, 0xb4, 0x00, 0x01, 0x00, 0x00, 0x13, 0x00, + 0x3f, 0x3f, 0x01, 0x2f, 0x38, 0xcd, 0x5d, 0x38, 0x31, 0x30, 0x5d, 0x2b, + 0x5d, 0x15, 0x01, 0x33, 0x01, 0x01, 0x9b, 0x9e, 0xfe, 0x69, 0x14, 0x05, + 0xe0, 0xfa, 0x20, 0x00, 0x00, 0x02, 0x00, 0x50, 0xff, 0xec, 0x04, 0x23, + 0x05, 0x96, 0x00, 0x13, 0x00, 0x27, 0x00, 0x70, 0x40, 0x50, 0x59, 0x25, + 0x69, 0x25, 0x02, 0x46, 0x21, 0x56, 0x21, 0x66, 0x21, 0x03, 0x56, 0x1b, + 0x66, 0x1b, 0x02, 0x59, 0x17, 0x69, 0x17, 0x02, 0x04, 0x12, 0x01, 0x76, + 0x11, 0x86, 0x11, 0x02, 0x79, 0x0d, 0x89, 0x0d, 0x02, 0x0b, 0x0c, 0x01, + 0x0b, 0x08, 0x01, 0x79, 0x07, 0x89, 0x07, 0x02, 0x76, 0x03, 0x86, 0x03, + 0x02, 0x04, 0x02, 0x01, 0x07, 0x00, 0x6e, 0x40, 0x90, 0x14, 0xa0, 0x14, + 0x02, 0x14, 0x29, 0x80, 0x1e, 0x6e, 0x3f, 0x0a, 0x01, 0x0a, 0x19, 0x73, + 0x0f, 0x07, 0x23, 0x73, 0x05, 0x19, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x01, + 0x2f, 0x5d, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x31, 0x30, 0x5e, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x01, 0x14, 0x02, 0x0e, 0x01, 0x23, 0x22, 0x2e, 0x01, 0x02, 0x35, 0x34, + 0x12, 0x3e, 0x01, 0x33, 0x32, 0x1e, 0x01, 0x12, 0x07, 0x34, 0x2e, 0x02, + 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, + 0x04, 0x23, 0x4d, 0x85, 0xb4, 0x66, 0x67, 0xb2, 0x83, 0x4b, 0x4b, 0x84, + 0xb4, 0x6a, 0x65, 0xb1, 0x84, 0x4c, 0xb7, 0x28, 0x4e, 0x71, 0x48, 0x4c, + 0x74, 0x4f, 0x28, 0x29, 0x4f, 0x72, 0x49, 0x47, 0x72, 0x4f, 0x2b, 0x02, + 0xc1, 0xcb, 0xfe, 0xeb, 0xab, 0x4a, 0x4a, 0xaa, 0x01, 0x15, 0xcc, 0xd5, + 0x01, 0x17, 0xa6, 0x43, 0x43, 0xa6, 0xfe, 0xe9, 0xd5, 0xa8, 0xdf, 0x85, + 0x37, 0x38, 0x85, 0xdf, 0xa7, 0xa2, 0xde, 0x87, 0x3b, 0x3b, 0x87, 0xde, + 0x00, 0x01, 0x00, 0x9c, 0x00, 0x00, 0x04, 0x0f, 0x05, 0x81, 0x00, 0x0a, + 0x00, 0x5e, 0x40, 0x20, 0x20, 0x09, 0x80, 0x09, 0x02, 0x09, 0x09, 0x08, + 0x6e, 0x02, 0x90, 0x04, 0x01, 0x04, 0x2f, 0x01, 0x8f, 0x01, 0x02, 0x01, + 0x01, 0x04, 0x06, 0x03, 0x00, 0x02, 0x10, 0x02, 0x02, 0x07, 0x02, 0x05, + 0xb8, 0xff, 0xf0, 0x40, 0x1a, 0x10, 0x16, 0x48, 0x44, 0x05, 0x54, 0x05, + 0x64, 0x05, 0x03, 0x05, 0x04, 0x03, 0x10, 0x10, 0x16, 0x48, 0x04, 0x03, + 0x06, 0x06, 0x08, 0x01, 0x74, 0x00, 0x18, 0x00, 0x3f, 0xed, 0x32, 0x3f, + 0x33, 0x33, 0x2b, 0x2f, 0x33, 0x5d, 0x2b, 0x01, 0x2f, 0x5e, 0x5d, 0x17, + 0x33, 0x2f, 0x5d, 0x2f, 0x5d, 0x10, 0xed, 0x32, 0x2f, 0x5d, 0x31, 0x30, + 0x33, 0x35, 0x21, 0x11, 0x05, 0x35, 0x25, 0x33, 0x11, 0x21, 0x15, 0x9c, + 0x01, 0x67, 0xfe, 0xc2, 0x01, 0x4d, 0xa6, 0x01, 0x57, 0x99, 0x04, 0x3c, + 0xe3, 0xaa, 0xe5, 0xfb, 0x18, 0x99, 0x00, 0x00, 0x00, 0x01, 0x00, 0x67, + 0x00, 0x00, 0x04, 0x0c, 0x05, 0x96, 0x00, 0x28, 0x00, 0xa1, 0x40, 0x4d, + 0x75, 0x04, 0x01, 0x75, 0x1a, 0x85, 0x1a, 0x02, 0x7a, 0x10, 0x8a, 0x10, + 0x02, 0x65, 0x25, 0x01, 0x56, 0x25, 0x01, 0x29, 0x21, 0x59, 0x21, 0x69, + 0x21, 0x03, 0x69, 0x23, 0x01, 0x1c, 0x23, 0x01, 0x19, 0x15, 0x01, 0x75, + 0x1b, 0x85, 0x1b, 0x02, 0x06, 0x1b, 0x01, 0x27, 0x1d, 0x6e, 0x40, 0x08, + 0x40, 0x26, 0x2a, 0x48, 0x40, 0x08, 0x01, 0x8f, 0x08, 0x01, 0x08, 0x2a, + 0x80, 0x12, 0x6e, 0x13, 0x74, 0x26, 0x84, 0x26, 0x02, 0x13, 0x26, 0x10, + 0x00, 0x20, 0x00, 0x02, 0x00, 0xb8, 0xff, 0xc0, 0x40, 0x1f, 0x1e, 0x26, + 0x48, 0x00, 0x08, 0x26, 0x8e, 0x12, 0x01, 0x5c, 0x12, 0x6c, 0x12, 0x7c, + 0x12, 0x03, 0x0a, 0x12, 0x1a, 0x12, 0x02, 0x12, 0x0d, 0x73, 0x18, 0x07, + 0x01, 0x26, 0x74, 0x00, 0x18, 0x00, 0x3f, 0xed, 0x39, 0x3f, 0xed, 0x33, + 0x5d, 0x5d, 0x5d, 0x12, 0x39, 0x01, 0x2f, 0x2b, 0x5d, 0x33, 0x33, 0x5d, + 0x2f, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x2b, 0x1a, 0xed, 0x32, 0x31, + 0x30, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x00, + 0x5d, 0x5d, 0x5d, 0x33, 0x35, 0x3e, 0x05, 0x35, 0x34, 0x2e, 0x02, 0x23, + 0x22, 0x0e, 0x02, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, + 0x14, 0x0e, 0x06, 0x07, 0x21, 0x15, 0x67, 0x33, 0x93, 0xa2, 0x9f, 0x80, + 0x4f, 0x24, 0x44, 0x5f, 0x3a, 0x36, 0x5f, 0x4a, 0x2f, 0x07, 0xb8, 0x09, + 0x42, 0x74, 0xa3, 0x6b, 0x69, 0xa4, 0x71, 0x3c, 0x33, 0x55, 0x70, 0x7a, + 0x7c, 0x6d, 0x56, 0x18, 0x02, 0xdf, 0x7f, 0x75, 0xb3, 0x91, 0x7c, 0x7c, + 0x88, 0x56, 0x3c, 0x5b, 0x3e, 0x1f, 0x1e, 0x3c, 0x59, 0x3b, 0x11, 0x4c, + 0x86, 0x65, 0x3a, 0x32, 0x62, 0x90, 0x5e, 0x47, 0x80, 0x74, 0x6c, 0x67, + 0x65, 0x66, 0x69, 0x39, 0x99, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x4e, + 0xff, 0xec, 0x04, 0x19, 0x05, 0x96, 0x00, 0x3b, 0x00, 0xd8, 0x40, 0x95, + 0x7a, 0x03, 0x8a, 0x03, 0x02, 0x75, 0x02, 0x85, 0x02, 0x02, 0x75, 0x3a, + 0x85, 0x3a, 0x02, 0x75, 0x33, 0x85, 0x33, 0x02, 0x75, 0x2f, 0x85, 0x2f, + 0x02, 0x75, 0x0d, 0x85, 0x0d, 0x02, 0x7a, 0x25, 0x8a, 0x25, 0x02, 0x5b, + 0x11, 0x6b, 0x11, 0x02, 0x1a, 0x29, 0x01, 0x15, 0x08, 0x01, 0x76, 0x2e, + 0x86, 0x2e, 0x02, 0x07, 0x2e, 0x01, 0x49, 0x27, 0x01, 0x26, 0x6e, 0x36, + 0x19, 0x31, 0x5f, 0x19, 0x6f, 0x19, 0x02, 0x27, 0x19, 0x27, 0x19, 0x0a, + 0x13, 0x20, 0x6e, 0x31, 0x31, 0x00, 0x6e, 0x40, 0x1f, 0x13, 0x2f, 0x13, + 0x9f, 0x13, 0x03, 0x90, 0x13, 0x01, 0x13, 0x3d, 0x80, 0x0b, 0x6e, 0xef, + 0x0a, 0x01, 0x3f, 0x0a, 0x01, 0x0a, 0x36, 0x19, 0x74, 0x1a, 0x1a, 0x10, + 0x8d, 0x26, 0x01, 0x5c, 0x26, 0x6c, 0x26, 0x7c, 0x26, 0x03, 0x0a, 0x26, + 0x1a, 0x26, 0x02, 0x26, 0x23, 0x73, 0x2c, 0x07, 0x10, 0x73, 0x81, 0x0b, + 0x01, 0x53, 0x0b, 0x63, 0x0b, 0x73, 0x0b, 0x03, 0x14, 0x0b, 0x01, 0x05, + 0x0b, 0x01, 0x0b, 0x05, 0x19, 0x00, 0x3f, 0x33, 0x5d, 0x5d, 0x5d, 0x5d, + 0xed, 0x3f, 0xed, 0x33, 0x5d, 0x5d, 0x5d, 0x12, 0x39, 0x2f, 0xed, 0x39, + 0x01, 0x2f, 0x5d, 0x71, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, + 0x32, 0x2f, 0xed, 0x11, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x11, 0x12, + 0x39, 0xed, 0x71, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, + 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x14, + 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x37, 0x1e, 0x03, 0x33, 0x32, + 0x36, 0x35, 0x34, 0x2e, 0x02, 0x2b, 0x01, 0x35, 0x33, 0x32, 0x3e, 0x02, + 0x35, 0x34, 0x26, 0x23, 0x22, 0x06, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, + 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x15, 0x1e, 0x03, 0x04, 0x19, + 0x3f, 0x79, 0xb3, 0x73, 0x83, 0xb3, 0x74, 0x3a, 0x09, 0xba, 0x08, 0x2b, + 0x4a, 0x6c, 0x4a, 0x88, 0x9b, 0x45, 0x67, 0x79, 0x33, 0x66, 0x62, 0x33, + 0x6e, 0x5b, 0x3b, 0x85, 0x83, 0x77, 0x93, 0x0c, 0xb5, 0x0b, 0x50, 0x7b, + 0x9e, 0x59, 0x76, 0xaa, 0x6c, 0x33, 0x22, 0x48, 0x6f, 0x4e, 0x55, 0x7e, + 0x52, 0x29, 0x01, 0x85, 0x61, 0x98, 0x69, 0x37, 0x41, 0x6b, 0x89, 0x49, + 0x11, 0x38, 0x5c, 0x42, 0x24, 0x86, 0x84, 0x4e, 0x5f, 0x35, 0x12, 0x9c, + 0x15, 0x37, 0x5e, 0x49, 0x71, 0x83, 0x7a, 0x6f, 0x0e, 0x5d, 0x8a, 0x5b, + 0x2d, 0x3b, 0x65, 0x88, 0x4d, 0x3e, 0x6c, 0x56, 0x3e, 0x10, 0x04, 0x09, + 0x3b, 0x58, 0x70, 0x00, 0x00, 0x02, 0x00, 0x2f, 0x00, 0x00, 0x04, 0x37, + 0x05, 0x81, 0x00, 0x0a, 0x00, 0x17, 0x00, 0x75, 0x40, 0x50, 0x9a, 0x0f, + 0x01, 0x99, 0x06, 0x01, 0x88, 0x06, 0x01, 0x85, 0x10, 0x95, 0x10, 0x02, + 0x76, 0x10, 0x01, 0x18, 0x16, 0x01, 0x76, 0x16, 0x86, 0x16, 0x96, 0x16, + 0x03, 0x16, 0x05, 0x40, 0x0c, 0x15, 0x48, 0x05, 0x5b, 0x0a, 0x6b, 0x0a, + 0x7b, 0x0a, 0x03, 0x0a, 0x08, 0x01, 0x6f, 0x17, 0x06, 0x1f, 0x02, 0x01, + 0x70, 0x02, 0xe0, 0x02, 0x02, 0x00, 0x02, 0x10, 0x02, 0x30, 0x02, 0x50, + 0x02, 0xe0, 0x02, 0x05, 0x08, 0x02, 0x00, 0x04, 0x73, 0x08, 0x16, 0x16, + 0x01, 0x0b, 0x06, 0x06, 0x01, 0x18, 0x00, 0x3f, 0x3f, 0x33, 0x12, 0x39, + 0x2f, 0x33, 0xed, 0x32, 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0x72, 0x33, 0x33, + 0xed, 0x32, 0x32, 0x5d, 0x2f, 0x2b, 0x33, 0x5d, 0x71, 0x31, 0x30, 0x5d, + 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x11, 0x23, 0x11, 0x21, 0x35, 0x01, + 0x33, 0x11, 0x33, 0x15, 0x01, 0x0e, 0x03, 0x07, 0x01, 0x0e, 0x03, 0x07, + 0x21, 0x03, 0x71, 0xaa, 0xfd, 0x68, 0x02, 0x85, 0xbd, 0xc6, 0xfe, 0x90, + 0x02, 0x10, 0x14, 0x15, 0x08, 0xfe, 0x97, 0x05, 0x13, 0x14, 0x14, 0x06, + 0x01, 0xf2, 0x01, 0x3f, 0xfe, 0xc1, 0x01, 0x3f, 0x8c, 0x03, 0xb6, 0xfc, + 0x4c, 0x8e, 0x03, 0x77, 0x05, 0x1d, 0x24, 0x25, 0x0c, 0xfd, 0xec, 0x08, + 0x1a, 0x1b, 0x1a, 0x07, 0x00, 0x01, 0x00, 0x52, 0xff, 0xec, 0x04, 0x1d, + 0x05, 0x81, 0x00, 0x2c, 0x00, 0xb5, 0x40, 0x1c, 0x56, 0x0d, 0x66, 0x0d, + 0x86, 0x0d, 0x03, 0x55, 0x02, 0x65, 0x02, 0x02, 0x5a, 0x03, 0x6a, 0x03, + 0x02, 0x55, 0x2b, 0x65, 0x2b, 0x02, 0x55, 0x2a, 0x65, 0x2a, 0x02, 0x26, + 0xb8, 0xff, 0xd8, 0x40, 0x59, 0x0e, 0x11, 0x48, 0x15, 0x08, 0x01, 0x06, + 0x0a, 0x01, 0x19, 0x24, 0x99, 0x24, 0x02, 0x89, 0x24, 0xd9, 0x24, 0x02, + 0x03, 0x44, 0x21, 0x01, 0x06, 0x23, 0x20, 0x0e, 0x11, 0x48, 0x23, 0x0b, + 0x00, 0x6e, 0x40, 0x1f, 0x15, 0x01, 0x2f, 0x15, 0x9f, 0x15, 0x02, 0x90, + 0x15, 0x01, 0x15, 0x2e, 0x80, 0x24, 0x1f, 0x25, 0x6e, 0x21, 0x20, 0x20, + 0x0b, 0x6e, 0xd0, 0x0a, 0x01, 0x3f, 0x0a, 0x01, 0x0a, 0x1a, 0x73, 0x28, + 0x28, 0x10, 0x24, 0x74, 0x21, 0x06, 0x10, 0x73, 0x73, 0x0b, 0x83, 0x0b, + 0x02, 0x67, 0x0b, 0x01, 0x16, 0x0b, 0x01, 0x0b, 0x05, 0x19, 0x00, 0x3f, + 0x33, 0x5d, 0x5d, 0x5d, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x01, + 0x2f, 0x5d, 0x71, 0xed, 0x33, 0x2f, 0x33, 0xed, 0x32, 0x32, 0x1a, 0x10, + 0xdc, 0x5d, 0x71, 0x72, 0x1a, 0xed, 0x11, 0x39, 0x2b, 0x31, 0x30, 0x5f, + 0x71, 0x5f, 0x71, 0x72, 0x00, 0x5d, 0x01, 0x5d, 0x00, 0x2b, 0x5d, 0x01, + 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, + 0x22, 0x2e, 0x02, 0x27, 0x37, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x35, + 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x23, 0x13, 0x21, 0x15, + 0x21, 0x03, 0x3e, 0x01, 0x33, 0x32, 0x1e, 0x02, 0x04, 0x1d, 0x40, 0x7e, + 0xbb, 0x7b, 0x6f, 0xa5, 0x72, 0x43, 0x0e, 0xb6, 0x0b, 0x28, 0x45, 0x65, + 0x48, 0x46, 0x72, 0x51, 0x2c, 0x2a, 0x4e, 0x71, 0x48, 0x2d, 0x4c, 0x41, + 0x35, 0x17, 0xb0, 0x2f, 0x03, 0x21, 0xfd, 0x83, 0x1b, 0x30, 0x90, 0x63, + 0x69, 0xa8, 0x76, 0x40, 0x01, 0xcb, 0x6a, 0xb0, 0x7f, 0x46, 0x34, 0x5b, + 0x7a, 0x46, 0x15, 0x28, 0x4b, 0x3b, 0x23, 0x2b, 0x54, 0x7a, 0x4f, 0x41, + 0x6d, 0x4f, 0x2c, 0x10, 0x1c, 0x25, 0x14, 0x02, 0xf6, 0x99, 0xfe, 0x41, + 0x25, 0x35, 0x40, 0x75, 0xa2, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x68, + 0xff, 0xec, 0x04, 0x19, 0x05, 0x96, 0x00, 0x24, 0x00, 0x38, 0x00, 0xaf, + 0x40, 0x30, 0x8c, 0x15, 0x01, 0x7a, 0x16, 0x8a, 0x16, 0x02, 0x59, 0x07, + 0x69, 0x07, 0x02, 0x5a, 0x03, 0x6a, 0x03, 0x7a, 0x03, 0x03, 0x54, 0x02, + 0x64, 0x02, 0x02, 0x54, 0x23, 0x64, 0x23, 0x74, 0x23, 0x03, 0x54, 0x22, + 0x64, 0x22, 0x74, 0x22, 0x03, 0x35, 0x1e, 0x45, 0x1e, 0x02, 0x85, 0x32, + 0x01, 0x32, 0xb8, 0xff, 0xf0, 0x40, 0x2d, 0x0a, 0x0d, 0x48, 0x84, 0x1a, + 0x01, 0x25, 0x1a, 0x35, 0x1a, 0x45, 0x1a, 0x75, 0x1a, 0x04, 0x16, 0x1a, + 0x01, 0x15, 0x6f, 0x14, 0x14, 0x00, 0x6e, 0x40, 0x2f, 0x25, 0x9f, 0x25, + 0x02, 0x90, 0x25, 0x01, 0x25, 0x3a, 0x80, 0x2f, 0x1d, 0x6e, 0x10, 0x0a, + 0x20, 0x0a, 0x02, 0x0a, 0xb8, 0xff, 0xc0, 0x40, 0x18, 0x1e, 0x26, 0x48, + 0x0a, 0x1d, 0x2a, 0x75, 0x20, 0x20, 0x34, 0x18, 0x73, 0x19, 0x15, 0x99, + 0x15, 0x02, 0x15, 0x0f, 0x07, 0x34, 0x73, 0x05, 0x19, 0x00, 0x3f, 0xed, + 0x3f, 0x33, 0x5d, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x32, 0x01, 0x2f, 0x2b, + 0x5d, 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x32, 0x2f, + 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x00, 0x5d, 0x5d, 0x01, + 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, + 0x22, 0x2e, 0x01, 0x02, 0x35, 0x34, 0x12, 0x3e, 0x01, 0x33, 0x32, 0x1e, + 0x02, 0x17, 0x07, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x3e, 0x01, + 0x33, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, + 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x04, 0x19, 0x3b, 0x73, + 0xaa, 0x6f, 0x7b, 0xb8, 0x7a, 0x3d, 0x45, 0x82, 0xbb, 0x76, 0x48, 0x7e, + 0x67, 0x4e, 0x17, 0xac, 0x1c, 0x7b, 0x51, 0x4a, 0x78, 0x54, 0x2d, 0x31, + 0xb2, 0x73, 0x60, 0x9c, 0x6f, 0x3d, 0xb7, 0x24, 0x48, 0x6a, 0x46, 0x31, + 0x64, 0x51, 0x33, 0x28, 0x4b, 0x6a, 0x42, 0x41, 0x67, 0x48, 0x26, 0x01, + 0xcd, 0x6a, 0xb1, 0x7f, 0x47, 0x5e, 0xb1, 0x01, 0x01, 0xa4, 0xbc, 0x01, + 0x1c, 0xbe, 0x60, 0x1e, 0x43, 0x6e, 0x50, 0x1f, 0x5b, 0x51, 0x46, 0x8b, + 0xd2, 0x8c, 0x5b, 0x5f, 0x3e, 0x75, 0xa7, 0x70, 0x49, 0x76, 0x53, 0x2d, + 0x1d, 0x41, 0x6a, 0x4c, 0x4e, 0x87, 0x64, 0x3a, 0x2d, 0x55, 0x7a, 0x00, + 0x00, 0x01, 0x00, 0x69, 0x00, 0x00, 0x04, 0x0c, 0x05, 0x81, 0x00, 0x0e, + 0x00, 0x44, 0x40, 0x2d, 0x7a, 0x0b, 0x8a, 0x0b, 0x02, 0x69, 0x0b, 0x01, + 0x05, 0x6e, 0x06, 0x06, 0x00, 0x50, 0x0c, 0x01, 0x10, 0x0c, 0x20, 0x0c, + 0x02, 0x0c, 0x0b, 0x5f, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x40, 0x00, + 0x60, 0x00, 0x80, 0x00, 0x05, 0x00, 0x00, 0x0c, 0x74, 0x0d, 0x06, 0x05, + 0x18, 0x00, 0x3f, 0x3f, 0xed, 0x32, 0x01, 0x2f, 0x5d, 0x71, 0x33, 0x2f, + 0x5d, 0x71, 0x12, 0x39, 0x2f, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x01, 0x06, + 0x0a, 0x02, 0x15, 0x23, 0x34, 0x1a, 0x02, 0x37, 0x21, 0x35, 0x21, 0x04, + 0x0c, 0x6a, 0xb2, 0x80, 0x47, 0xbc, 0x50, 0x88, 0xb4, 0x65, 0xfd, 0x0b, + 0x03, 0xa3, 0x04, 0xef, 0xa2, 0xfe, 0xd5, 0xfe, 0xd1, 0xfe, 0xc1, 0xb4, + 0xa9, 0x01, 0x45, 0x01, 0x39, 0x01, 0x2e, 0x93, 0x99, 0x00, 0x00, 0x00, + 0x00, 0x03, 0x00, 0x59, 0xff, 0xec, 0x04, 0x1a, 0x05, 0x96, 0x00, 0x29, + 0x00, 0x3d, 0x00, 0x51, 0x00, 0xbf, 0x40, 0x84, 0x75, 0x28, 0x85, 0x28, + 0x02, 0x75, 0x21, 0x85, 0x21, 0x02, 0x75, 0x1d, 0x85, 0x1d, 0x02, 0x75, + 0x1c, 0x85, 0x1c, 0x02, 0x75, 0x18, 0x85, 0x18, 0x02, 0x7a, 0x17, 0x8a, + 0x17, 0x02, 0x7a, 0x13, 0x8a, 0x13, 0x02, 0x7a, 0x0c, 0x01, 0x7a, 0x08, + 0x8a, 0x08, 0x02, 0x7a, 0x07, 0x8a, 0x07, 0x02, 0x7a, 0x03, 0x8a, 0x03, + 0x02, 0x75, 0x02, 0x85, 0x02, 0x02, 0x55, 0x45, 0x65, 0x45, 0x02, 0x55, + 0x4b, 0x65, 0x4b, 0x02, 0x5a, 0x41, 0x6a, 0x41, 0x02, 0x34, 0x6e, 0x15, + 0x2a, 0x6e, 0x1f, 0x0f, 0x24, 0x1f, 0x4f, 0x15, 0x01, 0x15, 0x1f, 0x15, + 0x1f, 0x0a, 0x00, 0x6e, 0x40, 0x0f, 0x3e, 0x1f, 0x3e, 0x02, 0x1f, 0x3e, + 0x2f, 0x3e, 0x9f, 0x3e, 0x03, 0x90, 0x3e, 0x01, 0x3e, 0x53, 0x80, 0x48, + 0x6e, 0xd0, 0x0a, 0x01, 0x0a, 0x24, 0x0f, 0x43, 0x75, 0x39, 0x39, 0x4d, + 0x2f, 0x75, 0x1a, 0x07, 0x4d, 0x75, 0x05, 0x19, 0x00, 0x3f, 0xed, 0x3f, + 0xed, 0x12, 0x39, 0x2f, 0xed, 0x39, 0x39, 0x01, 0x2f, 0x71, 0xed, 0x1a, + 0x10, 0xdc, 0x5d, 0x71, 0x72, 0x1a, 0xed, 0x11, 0x39, 0x39, 0x2f, 0x2f, + 0x71, 0x12, 0x39, 0x39, 0x10, 0xed, 0x10, 0xed, 0x31, 0x30, 0x5d, 0x5d, + 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, + 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, + 0x02, 0x35, 0x34, 0x3e, 0x02, 0x37, 0x35, 0x2e, 0x03, 0x35, 0x34, 0x3e, + 0x02, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x15, 0x1e, + 0x03, 0x03, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, + 0x02, 0x33, 0x32, 0x3e, 0x02, 0x13, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, + 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x04, 0x1a, 0x39, + 0x75, 0xb6, 0x7c, 0x7c, 0xb5, 0x77, 0x39, 0x2f, 0x4f, 0x65, 0x36, 0x3b, + 0x5d, 0x3f, 0x21, 0x39, 0x70, 0xa6, 0x6d, 0x73, 0xa9, 0x6f, 0x36, 0x21, + 0x3f, 0x5d, 0x3d, 0x3d, 0x68, 0x4c, 0x2c, 0xde, 0x1b, 0x3e, 0x64, 0x49, + 0x47, 0x62, 0x3f, 0x1c, 0x16, 0x3a, 0x66, 0x50, 0x55, 0x67, 0x37, 0x11, + 0x23, 0x1c, 0x44, 0x73, 0x56, 0x4f, 0x6f, 0x45, 0x20, 0x20, 0x46, 0x72, + 0x51, 0x52, 0x70, 0x44, 0x1d, 0x01, 0x89, 0x5a, 0x97, 0x6e, 0x3e, 0x3e, + 0x6d, 0x97, 0x59, 0x4d, 0x78, 0x57, 0x35, 0x09, 0x04, 0x0e, 0x3e, 0x57, + 0x6a, 0x3b, 0x4a, 0x83, 0x63, 0x39, 0x3a, 0x63, 0x84, 0x4a, 0x3a, 0x6a, + 0x57, 0x3d, 0x0c, 0x04, 0x0a, 0x35, 0x57, 0x78, 0x02, 0x4c, 0x35, 0x58, + 0x3f, 0x23, 0x23, 0x3f, 0x58, 0x35, 0x2a, 0x58, 0x48, 0x2e, 0x2e, 0x48, + 0x58, 0xfd, 0xa3, 0x33, 0x5f, 0x49, 0x2d, 0x2d, 0x4a, 0x61, 0x34, 0x41, + 0x6b, 0x4d, 0x2a, 0x2a, 0x4d, 0x6d, 0x00, 0x00, 0x00, 0x02, 0x00, 0x60, + 0xff, 0xec, 0x04, 0x12, 0x05, 0x96, 0x00, 0x24, 0x00, 0x38, 0x00, 0xbe, + 0x40, 0x69, 0xa9, 0x27, 0x01, 0xa3, 0x0b, 0x01, 0x95, 0x0c, 0xa5, 0x0c, + 0x02, 0xaa, 0x11, 0x01, 0x99, 0x11, 0x01, 0x74, 0x23, 0x84, 0x23, 0x02, + 0x74, 0x20, 0x84, 0x20, 0x94, 0x20, 0x03, 0x7a, 0x1f, 0x8a, 0x1f, 0x9a, + 0x1f, 0x03, 0x7a, 0x1b, 0x8a, 0x1b, 0x9a, 0x1b, 0x03, 0x7b, 0x1a, 0x8b, + 0x1a, 0x9b, 0x1a, 0x03, 0x5a, 0x28, 0x6a, 0x28, 0x02, 0x59, 0x02, 0x69, + 0x02, 0x02, 0x10, 0x18, 0x0a, 0x0d, 0x48, 0x36, 0x08, 0x01, 0x25, 0x00, + 0x6e, 0x2f, 0x13, 0x3f, 0x13, 0x02, 0x4f, 0x13, 0xbf, 0x13, 0x02, 0x00, + 0x13, 0x20, 0x13, 0x30, 0x13, 0x40, 0x13, 0xb0, 0x13, 0x05, 0x07, 0x13, + 0x3a, 0x0b, 0x6f, 0x0a, 0x0a, 0x2f, 0x6e, 0x20, 0x1d, 0x01, 0x1d, 0xb8, + 0xff, 0xc0, 0x40, 0x1b, 0x20, 0x26, 0x48, 0x1d, 0x13, 0x34, 0x73, 0x5f, + 0x18, 0x6f, 0x18, 0x02, 0x18, 0x18, 0x05, 0x2a, 0x73, 0x22, 0x07, 0x0e, + 0x73, 0x17, 0x0b, 0x01, 0x0b, 0x05, 0x19, 0x00, 0x3f, 0x33, 0x5d, 0xed, + 0x3f, 0xed, 0x11, 0x39, 0x2f, 0x5d, 0xed, 0x32, 0x01, 0x2f, 0x2b, 0x5d, + 0xed, 0x33, 0x2f, 0xed, 0x10, 0xdc, 0x5e, 0x5d, 0x71, 0x72, 0xed, 0x33, + 0x31, 0x30, 0x5d, 0x2b, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x00, + 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x01, 0x14, + 0x02, 0x0e, 0x01, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x37, 0x1e, 0x01, 0x33, + 0x32, 0x3e, 0x02, 0x37, 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, + 0x3e, 0x02, 0x33, 0x32, 0x12, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, + 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x04, 0x12, 0x47, + 0x84, 0xbd, 0x76, 0x51, 0x82, 0x66, 0x48, 0x16, 0xac, 0x1c, 0x77, 0x5b, + 0x49, 0x79, 0x55, 0x30, 0x02, 0x15, 0x49, 0x5d, 0x6c, 0x37, 0x60, 0x9b, + 0x6c, 0x3b, 0x3f, 0x78, 0xaf, 0x6f, 0xeb, 0xf2, 0xc4, 0x25, 0x49, 0x6b, + 0x46, 0x41, 0x68, 0x48, 0x27, 0x23, 0x46, 0x68, 0x45, 0x32, 0x67, 0x53, + 0x35, 0x02, 0xdd, 0xbc, 0xfe, 0xe5, 0xbc, 0x5e, 0x21, 0x46, 0x70, 0x4f, + 0x1b, 0x5b, 0x55, 0x45, 0x8a, 0xd0, 0x8c, 0x2f, 0x4a, 0x33, 0x1b, 0x45, + 0x7c, 0xaf, 0x6b, 0x6d, 0xb0, 0x7b, 0x42, 0xfe, 0xa4, 0xaf, 0x4e, 0x8a, + 0x66, 0x3b, 0x2e, 0x55, 0x7a, 0x4b, 0x47, 0x7a, 0x59, 0x33, 0x22, 0x46, + 0x6b, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0xbb, 0x00, 0x00, 0x01, 0x7e, + 0x04, 0x3a, 0x00, 0x03, 0x00, 0x07, 0x00, 0x36, 0x40, 0x24, 0x03, 0x07, + 0x96, 0x00, 0x00, 0x04, 0x90, 0x04, 0x02, 0x40, 0x04, 0x50, 0x04, 0xe0, + 0x04, 0xf0, 0x04, 0x04, 0x90, 0x04, 0xa0, 0x04, 0x02, 0x04, 0x40, 0x0d, + 0x10, 0x48, 0x04, 0x05, 0x9c, 0x04, 0x00, 0x9c, 0x01, 0x0f, 0x00, 0x3f, + 0xed, 0x2f, 0xed, 0x01, 0x2f, 0x2b, 0x5d, 0x71, 0x72, 0x33, 0xed, 0x32, + 0x31, 0x30, 0x13, 0x35, 0x33, 0x15, 0x03, 0x35, 0x33, 0x15, 0xbb, 0xc3, + 0xc3, 0xc3, 0x03, 0x6b, 0xcf, 0xcf, 0xfc, 0x95, 0xcf, 0xcf, 0x00, 0x00, + 0x00, 0x02, 0x00, 0xb8, 0xfe, 0xfa, 0x01, 0x81, 0x04, 0x3a, 0x00, 0x0c, + 0x00, 0x10, 0x00, 0x59, 0xb9, 0x00, 0x04, 0xff, 0xe0, 0x40, 0x0a, 0x0b, + 0x11, 0x48, 0x10, 0x0a, 0x97, 0x00, 0x96, 0x0d, 0x07, 0xb8, 0xff, 0xc0, + 0x40, 0x16, 0x09, 0x11, 0x48, 0x07, 0x80, 0x0c, 0x90, 0x0c, 0x02, 0x40, + 0x0c, 0x50, 0x0c, 0xb0, 0x0c, 0x03, 0x90, 0x0c, 0xa0, 0x0c, 0x02, 0x0c, + 0xb8, 0xff, 0xc0, 0x40, 0x12, 0x26, 0x29, 0x48, 0x0c, 0x40, 0x0d, 0x10, + 0x48, 0x0c, 0x0d, 0x9c, 0x0e, 0x0f, 0x07, 0xa8, 0x00, 0x9c, 0x0b, 0x00, + 0x2f, 0xfd, 0xe4, 0x3f, 0xed, 0x01, 0x2f, 0x2b, 0x2b, 0x5d, 0x71, 0x72, + 0x33, 0x2b, 0x33, 0xfd, 0xed, 0x33, 0x31, 0x30, 0x2b, 0x25, 0x15, 0x14, + 0x0e, 0x02, 0x07, 0x23, 0x3e, 0x01, 0x35, 0x23, 0x35, 0x11, 0x35, 0x33, + 0x15, 0x01, 0x81, 0x09, 0x14, 0x1d, 0x14, 0x7b, 0x2d, 0x31, 0x58, 0xc3, + 0xcf, 0x9c, 0x35, 0x57, 0x4b, 0x42, 0x20, 0x41, 0x84, 0x41, 0xcf, 0x02, + 0x9c, 0xcf, 0xcf, 0x00, 0x00, 0x01, 0x00, 0x65, 0x00, 0x9a, 0x04, 0x48, + 0x04, 0xaa, 0x00, 0x06, 0x00, 0x6a, 0xb9, 0x00, 0x05, 0xff, 0xd8, 0x40, + 0x11, 0x12, 0x16, 0x48, 0x03, 0x28, 0x12, 0x16, 0x48, 0x00, 0x28, 0x12, + 0x16, 0x48, 0x89, 0x00, 0x01, 0x01, 0xb8, 0xff, 0xd8, 0x40, 0x33, 0x12, + 0x16, 0x48, 0x86, 0x01, 0x01, 0x06, 0x00, 0x02, 0x20, 0x02, 0x50, 0x02, + 0x70, 0x02, 0x04, 0x02, 0x20, 0x00, 0x01, 0x00, 0x3f, 0x06, 0x7f, 0x06, + 0x8f, 0x06, 0x03, 0x06, 0x30, 0x02, 0x70, 0x02, 0x80, 0x02, 0x03, 0x02, + 0x01, 0x00, 0x0f, 0x04, 0x3f, 0x04, 0x6f, 0x04, 0x9f, 0x04, 0xcf, 0x04, + 0x05, 0x04, 0x00, 0x19, 0x2f, 0x5d, 0x33, 0x33, 0xcd, 0x5d, 0xcd, 0x5d, + 0x01, 0x18, 0x2f, 0x5d, 0x2f, 0x5d, 0x33, 0x31, 0x30, 0x00, 0x5d, 0x2b, + 0x5d, 0x2b, 0x2b, 0x2b, 0x13, 0x35, 0x01, 0x15, 0x09, 0x01, 0x15, 0x65, + 0x03, 0xe3, 0xfc, 0xa6, 0x03, 0x5a, 0x02, 0x3b, 0xcd, 0x01, 0xa2, 0x9a, + 0xfe, 0x92, 0xfe, 0x91, 0x99, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x64, + 0x01, 0x58, 0x04, 0x47, 0x03, 0xec, 0x00, 0x03, 0x00, 0x07, 0x00, 0x46, + 0x40, 0x31, 0x07, 0x40, 0x02, 0x60, 0x02, 0x02, 0x00, 0x02, 0x20, 0x02, + 0x70, 0x02, 0xd0, 0x02, 0x04, 0x02, 0x04, 0xdf, 0x00, 0x01, 0x20, 0x00, + 0x01, 0x00, 0x04, 0xad, 0x1f, 0x05, 0x2f, 0x05, 0x5f, 0x05, 0x6f, 0x05, + 0xdf, 0x05, 0x05, 0x05, 0x00, 0xad, 0x50, 0x01, 0xd0, 0x01, 0x02, 0x0f, + 0x01, 0x01, 0x01, 0x00, 0x2f, 0x5d, 0x5d, 0xed, 0xde, 0x5d, 0xed, 0x01, + 0x2f, 0x5d, 0x5d, 0x33, 0x2f, 0x5d, 0x71, 0x33, 0x31, 0x30, 0x13, 0x35, + 0x21, 0x15, 0x01, 0x35, 0x21, 0x15, 0x64, 0x03, 0xe3, 0xfc, 0x1d, 0x03, + 0xe3, 0x03, 0x58, 0x94, 0x94, 0xfe, 0x00, 0x94, 0x94, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x65, 0x00, 0x9a, 0x04, 0x48, 0x04, 0xaa, 0x00, 0x06, + 0x00, 0x6a, 0xb9, 0x00, 0x01, 0xff, 0xd8, 0x40, 0x11, 0x12, 0x16, 0x48, + 0x03, 0x28, 0x12, 0x16, 0x48, 0x06, 0x28, 0x12, 0x16, 0x48, 0x89, 0x06, + 0x01, 0x05, 0xb8, 0xff, 0xd8, 0x40, 0x33, 0x12, 0x16, 0x48, 0x86, 0x05, + 0x01, 0x00, 0x06, 0x20, 0x06, 0x50, 0x06, 0x70, 0x06, 0x04, 0x06, 0x03, + 0x20, 0x00, 0x01, 0x00, 0x06, 0x05, 0x30, 0x04, 0x70, 0x04, 0x80, 0x04, + 0x03, 0x04, 0x3f, 0x00, 0x7f, 0x00, 0x8f, 0x00, 0x03, 0x00, 0x0f, 0x02, + 0x3f, 0x02, 0x6f, 0x02, 0x9f, 0x02, 0xcf, 0x02, 0x05, 0x02, 0x00, 0x19, + 0x2f, 0x5d, 0xcd, 0x5d, 0xcd, 0x5d, 0x33, 0x33, 0x01, 0x18, 0x2f, 0x5d, + 0x33, 0x2f, 0x5d, 0x31, 0x30, 0x00, 0x5d, 0x2b, 0x5d, 0x2b, 0x2b, 0x2b, + 0x37, 0x35, 0x09, 0x01, 0x35, 0x01, 0x15, 0x65, 0x03, 0x5a, 0xfc, 0xa6, + 0x03, 0xe3, 0x9a, 0x99, 0x01, 0x6f, 0x01, 0x6e, 0x9a, 0xfe, 0x5e, 0xcd, + 0x00, 0x02, 0x00, 0x54, 0x00, 0x00, 0x04, 0x27, 0x05, 0x96, 0x00, 0x25, + 0x00, 0x29, 0x00, 0x89, 0x40, 0x44, 0x75, 0x24, 0x85, 0x24, 0x02, 0x75, + 0x23, 0x85, 0x23, 0x02, 0x5a, 0x1a, 0x6a, 0x1a, 0x02, 0x5a, 0x15, 0x01, + 0x5a, 0x0e, 0x7a, 0x0e, 0x8a, 0x0e, 0x03, 0x5a, 0x0d, 0x7a, 0x0d, 0x8a, + 0x0d, 0x03, 0x3a, 0x06, 0x4a, 0x06, 0x02, 0x09, 0x48, 0x0a, 0x0a, 0xb0, + 0x29, 0xc0, 0x29, 0x02, 0x29, 0x96, 0x26, 0x26, 0x13, 0x1b, 0x46, 0x1c, + 0x00, 0x46, 0x00, 0x13, 0x20, 0x13, 0x40, 0x13, 0x90, 0x13, 0xb0, 0x13, + 0x05, 0x13, 0xb8, 0xff, 0xc0, 0x40, 0x17, 0x26, 0x2c, 0x48, 0x13, 0x13, + 0x21, 0x5f, 0x0a, 0x8f, 0x0a, 0x02, 0x0a, 0x27, 0x9c, 0x26, 0x4c, 0x1b, + 0x01, 0x1b, 0x18, 0x5f, 0x21, 0x04, 0x00, 0x3f, 0xed, 0x33, 0x5d, 0x2f, + 0xfd, 0xc6, 0x5d, 0x11, 0x39, 0x01, 0x2f, 0x2b, 0x5d, 0xed, 0x2f, 0xed, + 0x12, 0x39, 0x2f, 0xed, 0x71, 0x33, 0x2f, 0xed, 0x31, 0x30, 0x00, 0x5d, + 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x01, 0x14, 0x0e, + 0x06, 0x07, 0x23, 0x3e, 0x07, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x06, + 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x01, 0x35, 0x33, 0x15, + 0x04, 0x27, 0x25, 0x3e, 0x4f, 0x52, 0x4f, 0x3f, 0x27, 0x01, 0xaf, 0x02, + 0x27, 0x3e, 0x4e, 0x50, 0x4d, 0x3c, 0x25, 0x2a, 0x4d, 0x6d, 0x43, 0x8c, + 0xa4, 0x0e, 0xb8, 0x0b, 0x43, 0x79, 0xb3, 0x7a, 0x72, 0xb2, 0x7b, 0x40, + 0xfd, 0x8f, 0xc3, 0x04, 0x08, 0x47, 0x6c, 0x55, 0x43, 0x3c, 0x3a, 0x44, + 0x53, 0x37, 0x45, 0x68, 0x50, 0x3f, 0x39, 0x39, 0x46, 0x58, 0x3b, 0x3b, + 0x5c, 0x3f, 0x20, 0x8c, 0x7a, 0x0c, 0x54, 0x95, 0x70, 0x41, 0x38, 0x67, + 0x94, 0xfb, 0x9d, 0xc9, 0xc9, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0xa1, + 0xfe, 0xe5, 0x07, 0x6e, 0x05, 0xcc, 0x00, 0x5d, 0x00, 0x72, 0x01, 0x65, + 0x40, 0xff, 0x7a, 0x11, 0x8a, 0x11, 0x02, 0x75, 0x0f, 0x85, 0x0f, 0x02, + 0x75, 0x1b, 0x85, 0x1b, 0x02, 0x79, 0x2f, 0x89, 0x2f, 0x02, 0x74, 0x26, + 0x84, 0x26, 0x02, 0x66, 0x26, 0x01, 0x63, 0x46, 0x01, 0x56, 0x45, 0x66, + 0x45, 0x02, 0x7b, 0x1a, 0x8b, 0x1a, 0x02, 0x49, 0x1a, 0x01, 0x4a, 0x38, + 0x5a, 0x38, 0x6a, 0x38, 0x03, 0x3b, 0x66, 0x01, 0x52, 0x3f, 0x01, 0x36, + 0x3f, 0x46, 0x3f, 0x02, 0x52, 0x40, 0x01, 0x26, 0x40, 0x36, 0x40, 0x46, + 0x40, 0x03, 0x83, 0x03, 0x01, 0x25, 0x03, 0x35, 0x03, 0x45, 0x03, 0x03, + 0x25, 0x02, 0x35, 0x02, 0x45, 0x02, 0x85, 0x02, 0x04, 0x19, 0x08, 0x39, + 0x08, 0x02, 0x0b, 0x08, 0x01, 0x0b, 0x08, 0x1b, 0x08, 0x02, 0x08, 0x20, + 0x0c, 0x11, 0x48, 0x16, 0x5c, 0x66, 0x5c, 0x86, 0x5c, 0x03, 0x50, 0x3a, + 0x60, 0x3a, 0x02, 0x05, 0x3a, 0x15, 0x3a, 0x35, 0x3a, 0x45, 0x3a, 0x04, + 0x89, 0x39, 0x01, 0x5d, 0x39, 0x01, 0x0a, 0x39, 0x1a, 0x39, 0x02, 0x09, + 0x07, 0x01, 0x7d, 0x34, 0x8d, 0x34, 0x02, 0x0b, 0x34, 0x4b, 0x34, 0x02, + 0x0a, 0x16, 0x1a, 0x16, 0x2a, 0x16, 0x03, 0x68, 0xd4, 0x18, 0x25, 0x29, + 0xd3, 0x0a, 0x70, 0x22, 0x84, 0x48, 0x01, 0x48, 0x0a, 0x31, 0x50, 0x18, + 0x01, 0x50, 0x18, 0x01, 0x18, 0x0a, 0x18, 0x0a, 0x52, 0x00, 0xd2, 0x40, + 0x5f, 0x31, 0x6f, 0x31, 0x02, 0x8f, 0x31, 0x9f, 0x31, 0x02, 0x31, 0x74, + 0x80, 0x3d, 0xd2, 0x00, 0x52, 0x10, 0x52, 0x20, 0x52, 0x03, 0x52, 0x2c, + 0xd5, 0x05, 0x05, 0x6b, 0xd6, 0x13, 0x63, 0xd6, 0x1d, 0x24, 0x1d, 0x2f, + 0x13, 0x3f, 0x13, 0x4f, 0x13, 0x03, 0x20, 0x1d, 0x30, 0x1d, 0x40, 0x1d, + 0x03, 0x13, 0x1d, 0x13, 0x1d, 0x4d, 0x36, 0xd6, 0x59, 0x00, 0x95, 0x47, + 0x01, 0x47, 0x42, 0xd6, 0x4d, 0x00, 0x2f, 0xed, 0x33, 0x5d, 0x3f, 0xed, + 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x5d, 0x11, 0x33, 0x10, 0xed, 0x10, + 0xed, 0x33, 0x2f, 0xed, 0x01, 0x2f, 0x5d, 0xed, 0x1a, 0x10, 0xdc, 0x5d, + 0x71, 0x1a, 0xed, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x72, 0x11, 0x12, + 0x39, 0x5d, 0x32, 0x32, 0x10, 0xed, 0x32, 0x10, 0xed, 0x31, 0x30, 0x5d, + 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x2b, + 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, + 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, + 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x01, 0x14, 0x0e, + 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x36, 0x37, 0x23, 0x0e, 0x03, + 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, + 0x17, 0x33, 0x37, 0x33, 0x03, 0x0e, 0x01, 0x15, 0x14, 0x16, 0x33, 0x32, + 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x04, 0x15, 0x14, + 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x37, 0x17, 0x0e, 0x03, 0x23, 0x22, + 0x24, 0x26, 0x02, 0x35, 0x34, 0x12, 0x3e, 0x02, 0x24, 0x33, 0x32, 0x04, + 0x16, 0x12, 0x05, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, + 0x16, 0x33, 0x32, 0x3e, 0x02, 0x37, 0x3e, 0x01, 0x07, 0x6e, 0x43, 0x76, + 0xa5, 0x61, 0x38, 0x4f, 0x32, 0x16, 0x02, 0x01, 0x06, 0x18, 0x45, 0x5d, + 0x75, 0x47, 0x54, 0x7d, 0x51, 0x28, 0x47, 0x84, 0xb9, 0x72, 0x3c, 0x60, + 0x49, 0x36, 0x12, 0x06, 0x27, 0x9c, 0x74, 0x13, 0x12, 0x2b, 0x26, 0x3e, + 0x6b, 0x4f, 0x2d, 0x53, 0xa1, 0xee, 0x9c, 0x86, 0xe3, 0xb8, 0x8b, 0x5e, + 0x30, 0x56, 0xa5, 0xf3, 0x9e, 0x69, 0xb6, 0x98, 0x78, 0x2c, 0x37, 0x32, + 0x87, 0xa6, 0xc4, 0x6f, 0xbe, 0xfe, 0xd9, 0xcb, 0x69, 0x3f, 0x76, 0xaa, + 0xd7, 0x00, 0xff, 0x90, 0xc9, 0x01, 0x24, 0xbf, 0x5c, 0xfd, 0xa2, 0x22, + 0x3f, 0x59, 0x38, 0x56, 0x82, 0x57, 0x2d, 0x5f, 0x63, 0x45, 0x78, 0x60, + 0x46, 0x12, 0x09, 0x0e, 0x02, 0xf3, 0x90, 0xef, 0xac, 0x60, 0x1b, 0x2f, + 0x40, 0x26, 0x0f, 0x2b, 0x0c, 0x2d, 0x59, 0x45, 0x2b, 0x3a, 0x67, 0x8d, + 0x53, 0x78, 0xdd, 0xa9, 0x66, 0x1b, 0x30, 0x43, 0x28, 0xa0, 0xfe, 0x06, + 0x54, 0x78, 0x31, 0x30, 0x2e, 0x51, 0x8e, 0xc0, 0x70, 0x81, 0xde, 0xa2, + 0x5c, 0x40, 0x74, 0xa1, 0xc0, 0xdb, 0x73, 0x8d, 0xee, 0xab, 0x60, 0x21, + 0x30, 0x39, 0x18, 0x70, 0x1e, 0x3f, 0x34, 0x21, 0x73, 0xce, 0x01, 0x1c, + 0xa9, 0x8b, 0x01, 0x00, 0xdc, 0xb4, 0x80, 0x46, 0x76, 0xc8, 0xfe, 0xf8, + 0x9b, 0x32, 0x54, 0x3c, 0x21, 0x55, 0x8a, 0xad, 0x57, 0x78, 0x88, 0x3e, + 0x66, 0x84, 0x47, 0x24, 0x50, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04, + 0x00, 0x00, 0x05, 0x52, 0x05, 0x81, 0x00, 0x07, 0x00, 0x14, 0x01, 0x12, + 0x40, 0xce, 0x66, 0x02, 0x76, 0x02, 0x86, 0x02, 0x03, 0x66, 0x13, 0x76, + 0x13, 0x86, 0x13, 0x03, 0x69, 0x01, 0x79, 0x01, 0x89, 0x01, 0x03, 0x69, + 0x14, 0x79, 0x14, 0x89, 0x14, 0x03, 0x73, 0x06, 0x83, 0x06, 0x02, 0x65, + 0x06, 0x01, 0x7c, 0x05, 0x8c, 0x05, 0x02, 0x6a, 0x05, 0x01, 0x7a, 0x00, + 0x8a, 0x00, 0x02, 0x39, 0x00, 0x59, 0x00, 0x69, 0x00, 0x03, 0x75, 0x03, + 0x85, 0x03, 0x02, 0x36, 0x03, 0x56, 0x03, 0x66, 0x03, 0x03, 0x5a, 0x04, + 0x01, 0x48, 0x04, 0x01, 0x55, 0x07, 0x01, 0x47, 0x07, 0x01, 0x13, 0x02, + 0x03, 0x01, 0x14, 0x00, 0x15, 0x06, 0x25, 0x06, 0x35, 0x06, 0x03, 0x06, + 0x06, 0x01, 0xe6, 0x06, 0xf6, 0x06, 0x02, 0x1a, 0x05, 0x2a, 0x05, 0x3a, + 0x05, 0x03, 0x09, 0x05, 0x01, 0xe9, 0x05, 0xf9, 0x05, 0x02, 0x06, 0x05, + 0x0d, 0x0d, 0x04, 0x1a, 0x00, 0x2a, 0x00, 0x3a, 0x00, 0x03, 0x09, 0x00, + 0x01, 0xe9, 0x00, 0xf9, 0x00, 0x02, 0x00, 0x10, 0x07, 0x20, 0x07, 0x30, + 0x07, 0x03, 0x20, 0x07, 0x01, 0x07, 0x07, 0x16, 0x15, 0x03, 0x25, 0x03, + 0x35, 0x03, 0x03, 0x06, 0x03, 0x01, 0xe6, 0x03, 0xf6, 0x03, 0x02, 0x03, + 0xaf, 0x04, 0xbf, 0x04, 0x02, 0x04, 0x50, 0x16, 0xb0, 0x16, 0x02, 0x30, + 0x16, 0x60, 0x16, 0x90, 0x16, 0xc0, 0x16, 0xf0, 0x16, 0x05, 0x2f, 0x16, + 0x01, 0x01, 0x02, 0x5f, 0x14, 0x13, 0x13, 0x76, 0x0d, 0x01, 0x0d, 0x05, + 0x03, 0x04, 0x00, 0x12, 0x00, 0x3f, 0x32, 0x3f, 0x33, 0x5d, 0x39, 0x2f, + 0x33, 0xed, 0x32, 0x01, 0x5d, 0x5d, 0x71, 0x2f, 0x5d, 0x33, 0x5d, 0x71, + 0x71, 0x11, 0x33, 0x2f, 0x5d, 0x71, 0x33, 0x5d, 0x71, 0x71, 0x12, 0x39, + 0x3d, 0x2f, 0x33, 0x33, 0x5d, 0x71, 0x71, 0x5d, 0x71, 0x71, 0x12, 0x39, + 0x39, 0x12, 0x39, 0x39, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x21, 0x03, + 0x21, 0x03, 0x23, 0x01, 0x33, 0x09, 0x01, 0x2e, 0x03, 0x27, 0x0e, 0x03, + 0x07, 0x03, 0x21, 0x04, 0x8f, 0xa1, 0xfd, 0x7e, 0xa2, 0xc6, 0x02, 0x3f, + 0xd9, 0x02, 0x36, 0xfd, 0xae, 0x10, 0x1d, 0x16, 0x0f, 0x01, 0x02, 0x0e, + 0x17, 0x1d, 0x0f, 0xb4, 0x02, 0x0f, 0x01, 0x9c, 0xfe, 0x64, 0x05, 0x81, + 0xfa, 0x7f, 0x04, 0x02, 0x28, 0x52, 0x43, 0x2d, 0x05, 0x05, 0x2e, 0x44, + 0x52, 0x28, 0xfe, 0x31, 0x00, 0x03, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xea, + 0x05, 0x81, 0x00, 0x16, 0x00, 0x21, 0x00, 0x2e, 0x00, 0x9b, 0x40, 0x6c, + 0x9b, 0x18, 0xab, 0x18, 0x02, 0x93, 0x20, 0x01, 0x85, 0x20, 0x01, 0x93, + 0x2d, 0x01, 0x75, 0x2d, 0x85, 0x2d, 0x02, 0x7a, 0x24, 0x8a, 0x24, 0x9a, + 0x24, 0x03, 0x05, 0x0b, 0x15, 0x0b, 0x25, 0x0b, 0x03, 0x06, 0x02, 0x16, + 0x02, 0x26, 0x02, 0x03, 0xab, 0x12, 0x01, 0x9f, 0x12, 0x01, 0x6b, 0x12, + 0x7b, 0x12, 0x8b, 0x12, 0x03, 0x12, 0x1c, 0x0d, 0x5a, 0x17, 0x40, 0x0d, + 0x11, 0x48, 0x17, 0x17, 0x29, 0x00, 0x5a, 0x40, 0x1f, 0x22, 0x2f, 0x22, + 0x02, 0xaf, 0x22, 0x01, 0x22, 0x30, 0x80, 0x1c, 0x29, 0x5a, 0x00, 0x06, + 0x10, 0x06, 0x40, 0x06, 0x03, 0x07, 0x06, 0x12, 0x28, 0x5f, 0x7f, 0x1c, + 0x01, 0x1c, 0x1c, 0x29, 0x1b, 0x5f, 0x07, 0x03, 0x29, 0x5f, 0x06, 0x12, + 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0x71, 0xed, 0x39, 0x01, + 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, + 0x12, 0x39, 0x2f, 0x2b, 0xed, 0x11, 0x39, 0x5d, 0x5d, 0x5d, 0x31, 0x30, + 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, + 0x02, 0x23, 0x21, 0x11, 0x21, 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, + 0x07, 0x1e, 0x03, 0x01, 0x34, 0x26, 0x23, 0x21, 0x11, 0x21, 0x32, 0x3e, + 0x02, 0x13, 0x34, 0x2e, 0x02, 0x23, 0x21, 0x11, 0x21, 0x32, 0x3e, 0x02, + 0x04, 0xea, 0x54, 0x8e, 0xbc, 0x68, 0xfd, 0xc4, 0x02, 0x00, 0x75, 0xb8, + 0x80, 0x43, 0x21, 0x43, 0x65, 0x43, 0x55, 0x83, 0x58, 0x2e, 0xfe, 0xee, + 0x9c, 0x94, 0xfe, 0xbf, 0x01, 0x41, 0x54, 0x74, 0x48, 0x20, 0x51, 0x31, + 0x5c, 0x81, 0x50, 0xfe, 0x9c, 0x01, 0x73, 0x49, 0x7b, 0x59, 0x32, 0x01, + 0x8d, 0x6b, 0x97, 0x5f, 0x2c, 0x05, 0x81, 0x27, 0x54, 0x81, 0x5a, 0x3b, + 0x68, 0x55, 0x3d, 0x0f, 0x0a, 0x3a, 0x5a, 0x77, 0x02, 0x42, 0x72, 0x62, + 0xfe, 0x42, 0x21, 0x3d, 0x56, 0xfd, 0xbe, 0x43, 0x5e, 0x3c, 0x1c, 0xfe, + 0x04, 0x18, 0x3c, 0x64, 0x00, 0x01, 0x00, 0x68, 0xff, 0xec, 0x05, 0x79, + 0x05, 0x96, 0x00, 0x27, 0x00, 0xad, 0x40, 0x4f, 0x79, 0x0e, 0x89, 0x0e, + 0x02, 0x75, 0x0d, 0x85, 0x0d, 0x02, 0x7b, 0x25, 0x8b, 0x25, 0x02, 0x6a, + 0x26, 0x01, 0x7c, 0x24, 0x8c, 0x24, 0x02, 0x6a, 0x24, 0x01, 0x6a, 0x1c, + 0x01, 0x55, 0x07, 0x01, 0x5a, 0x03, 0x01, 0x2a, 0x1d, 0x6a, 0x1d, 0x02, + 0x86, 0x17, 0x01, 0x2a, 0x17, 0x6a, 0x17, 0x02, 0x05, 0x08, 0x15, 0x08, + 0x02, 0x05, 0x02, 0x15, 0x02, 0x02, 0x05, 0x5b, 0x50, 0x1a, 0x60, 0x1a, + 0x02, 0xaf, 0x1a, 0xbf, 0x1a, 0x02, 0x20, 0x1a, 0x01, 0x0f, 0x1a, 0x01, + 0x1a, 0x22, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x2a, 0x07, 0x0d, 0x48, 0x10, + 0x10, 0x29, 0x20, 0x29, 0x01, 0x4f, 0x23, 0x01, 0x23, 0x23, 0x00, 0x5f, + 0x1f, 0x04, 0x00, 0x0f, 0x10, 0x0f, 0x02, 0x30, 0x0f, 0x40, 0x0f, 0x70, + 0x0f, 0x80, 0x0f, 0xc0, 0x0f, 0xd0, 0x0f, 0x06, 0x0f, 0x0f, 0x0a, 0x5f, + 0x15, 0x13, 0x00, 0x3f, 0xed, 0x33, 0x2f, 0x5d, 0x71, 0x3f, 0xed, 0x33, + 0x2f, 0x5d, 0x01, 0x5d, 0x11, 0x33, 0x2f, 0x2b, 0x33, 0x2f, 0x5d, 0x5d, + 0x5d, 0x71, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, + 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x01, + 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x37, + 0x17, 0x0e, 0x03, 0x23, 0x22, 0x24, 0x26, 0x02, 0x35, 0x34, 0x12, 0x36, + 0x24, 0x33, 0x32, 0x04, 0x17, 0x07, 0x2e, 0x03, 0x03, 0x18, 0x78, 0xb9, + 0x7d, 0x40, 0x45, 0x81, 0xbb, 0x75, 0x52, 0x87, 0x6d, 0x56, 0x21, 0x9c, + 0x26, 0x70, 0x97, 0xbf, 0x76, 0xab, 0xfe, 0xff, 0xad, 0x56, 0x5b, 0xaf, + 0x01, 0x00, 0xa4, 0xe1, 0x01, 0x2e, 0x47, 0xb5, 0x14, 0x44, 0x66, 0x89, + 0x04, 0xfa, 0x50, 0x94, 0xd0, 0x7f, 0x7f, 0xd3, 0x98, 0x54, 0x2b, 0x4e, + 0x6b, 0x41, 0x4e, 0x4f, 0x88, 0x64, 0x39, 0x6d, 0xc3, 0x01, 0x0c, 0x9f, + 0xa5, 0x01, 0x0a, 0xbb, 0x65, 0xb0, 0xad, 0x3c, 0x32, 0x5b, 0x46, 0x2a, + 0x00, 0x02, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x65, 0x05, 0x81, 0x00, 0x0c, + 0x00, 0x19, 0x00, 0x64, 0x40, 0x46, 0xa9, 0x18, 0x01, 0x7b, 0x18, 0x01, + 0xac, 0x17, 0x01, 0x1b, 0x17, 0x2b, 0x17, 0x3b, 0x17, 0x7b, 0x17, 0x04, + 0xa9, 0x10, 0x01, 0x1b, 0x10, 0x2b, 0x10, 0x3b, 0x10, 0x7b, 0x10, 0x04, + 0x7b, 0x0f, 0x01, 0x99, 0x03, 0x01, 0x79, 0x02, 0x01, 0x00, 0x5a, 0x40, + 0x2f, 0x0d, 0x01, 0x0d, 0x1b, 0x80, 0x40, 0x1b, 0x01, 0x14, 0x5a, 0x00, + 0x06, 0x10, 0x06, 0x40, 0x06, 0x03, 0x07, 0x06, 0x13, 0x5f, 0x07, 0x03, + 0x14, 0x5f, 0x06, 0x12, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x01, 0x2f, 0x5e, + 0x5d, 0xed, 0x5d, 0x1a, 0x10, 0xdc, 0x71, 0x1a, 0xed, 0x31, 0x30, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x02, 0x0e, + 0x01, 0x23, 0x21, 0x11, 0x21, 0x32, 0x04, 0x16, 0x12, 0x07, 0x34, 0x2e, + 0x02, 0x23, 0x21, 0x11, 0x21, 0x32, 0x3e, 0x02, 0x05, 0x65, 0x6a, 0xb8, + 0xfb, 0x91, 0xfd, 0xf1, 0x01, 0xd2, 0xa3, 0x01, 0x13, 0xc6, 0x6f, 0xc0, + 0x52, 0x94, 0xce, 0x7b, 0xfe, 0xf1, 0x01, 0x3a, 0x6f, 0xbd, 0x8a, 0x4e, + 0x02, 0xcf, 0xb0, 0xfe, 0xf3, 0xb5, 0x5d, 0x05, 0x81, 0x51, 0xa9, 0xfe, + 0xfc, 0xb4, 0x8f, 0xcb, 0x82, 0x3d, 0xfb, 0xb1, 0x48, 0x8e, 0xd4, 0x00, + 0x00, 0x01, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, 0x05, 0x81, 0x00, 0x0b, + 0x00, 0x4d, 0xb5, 0x07, 0x03, 0x07, 0x03, 0x00, 0x0a, 0xb8, 0xff, 0xc0, + 0x40, 0x25, 0x07, 0x0b, 0x48, 0x0a, 0x0a, 0x0d, 0x05, 0x09, 0x5a, 0x00, + 0x00, 0x10, 0x00, 0x40, 0x00, 0x03, 0x07, 0x00, 0x20, 0x0d, 0x01, 0x08, + 0x5f, 0x7f, 0x05, 0x01, 0x05, 0x05, 0x09, 0x04, 0x5f, 0x01, 0x03, 0x09, + 0x5f, 0x00, 0x12, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0x71, + 0xed, 0x01, 0x5d, 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x11, 0x33, 0x2f, 0x2b, + 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x31, 0x30, 0x33, 0x11, 0x21, 0x15, 0x21, + 0x11, 0x21, 0x15, 0x21, 0x11, 0x21, 0x15, 0xa8, 0x04, 0x2d, 0xfc, 0x92, + 0x03, 0x32, 0xfc, 0xce, 0x03, 0x97, 0x05, 0x81, 0x9c, 0xfe, 0x3c, 0x9a, + 0xfe, 0x15, 0x9c, 0x00, 0x00, 0x01, 0x00, 0xa8, 0x00, 0x00, 0x04, 0x91, + 0x05, 0x81, 0x00, 0x09, 0x00, 0x69, 0xb9, 0x00, 0x02, 0xff, 0xc0, 0xb6, + 0x0d, 0x18, 0x48, 0x02, 0x02, 0x06, 0x08, 0xb8, 0xff, 0xc0, 0x40, 0x3a, + 0x07, 0x0c, 0x48, 0x08, 0x08, 0x0b, 0x01, 0x05, 0x5a, 0x00, 0x06, 0x10, + 0x06, 0x40, 0x06, 0x03, 0x07, 0x06, 0x30, 0x0b, 0x01, 0x04, 0x5f, 0xef, + 0x01, 0x01, 0x0f, 0x01, 0x3f, 0x01, 0x6f, 0x01, 0x7f, 0x01, 0x9f, 0x01, + 0xaf, 0x01, 0xcf, 0x01, 0xdf, 0x01, 0x08, 0x08, 0x01, 0x40, 0x17, 0x1e, + 0x48, 0x01, 0x01, 0x05, 0x00, 0x5f, 0x07, 0x03, 0x05, 0x12, 0x00, 0x3f, + 0x3f, 0xed, 0x12, 0x39, 0x2f, 0x2b, 0x5e, 0x5d, 0x71, 0xed, 0x01, 0x5d, + 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x11, 0x33, 0x2f, 0x2b, 0x12, 0x39, 0x2f, + 0x2b, 0x31, 0x30, 0x01, 0x11, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x21, + 0x15, 0x01, 0x67, 0x03, 0x12, 0xfc, 0xee, 0xbf, 0x03, 0xe9, 0x04, 0xe5, + 0xfd, 0xf4, 0x9e, 0xfd, 0xc5, 0x05, 0x81, 0x9c, 0x00, 0x01, 0x00, 0x67, + 0xff, 0xec, 0x05, 0xa0, 0x05, 0x96, 0x00, 0x2d, 0x00, 0xb9, 0x40, 0x82, + 0x86, 0x2b, 0x01, 0x6a, 0x2b, 0x01, 0x42, 0x25, 0x52, 0x25, 0x02, 0x05, + 0x18, 0x15, 0x18, 0x55, 0x18, 0x03, 0x56, 0x17, 0x01, 0x56, 0x13, 0x01, + 0x05, 0x12, 0x15, 0x12, 0x55, 0x12, 0x03, 0x7a, 0x0c, 0x8a, 0x0c, 0x02, + 0x59, 0x0c, 0x69, 0x0c, 0x02, 0x6a, 0x03, 0x01, 0x6a, 0x02, 0x01, 0x49, + 0x25, 0x59, 0x25, 0x02, 0x35, 0x1d, 0x01, 0x7b, 0x0d, 0x8b, 0x0d, 0x02, + 0x40, 0x0a, 0x01, 0x0a, 0x0a, 0x24, 0x5c, 0x1f, 0x40, 0x21, 0x21, 0x00, + 0x7f, 0x1f, 0x8f, 0x1f, 0x02, 0x1f, 0x2f, 0x80, 0x20, 0x2f, 0x60, 0x2f, + 0x80, 0x2f, 0x03, 0x15, 0x5b, 0xaf, 0x00, 0xbf, 0x00, 0x02, 0x20, 0x00, + 0x01, 0x0f, 0x00, 0x01, 0x00, 0x21, 0x5f, 0xf0, 0x22, 0x01, 0x22, 0x22, + 0x05, 0x1a, 0x5f, 0x29, 0x13, 0x10, 0x5f, 0x05, 0x30, 0x0b, 0x40, 0x0b, + 0x02, 0x90, 0x0b, 0xe0, 0x0b, 0x02, 0x0b, 0x0b, 0x05, 0x04, 0x00, 0x3f, + 0x33, 0x2f, 0x5d, 0x71, 0x10, 0xed, 0x3f, 0xed, 0x11, 0x39, 0x2f, 0x5d, + 0xed, 0x01, 0x2f, 0x5d, 0x5d, 0x5d, 0xed, 0x5d, 0x1a, 0x10, 0xcc, 0x5d, + 0x11, 0x39, 0x2f, 0x1a, 0x10, 0xed, 0x32, 0x2f, 0x5d, 0x31, 0x30, 0x00, + 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x13, 0x34, 0x12, 0x36, 0x24, 0x33, 0x32, 0x1e, 0x02, + 0x17, 0x07, 0x2e, 0x03, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, + 0x33, 0x32, 0x3e, 0x02, 0x37, 0x35, 0x21, 0x35, 0x21, 0x11, 0x0e, 0x03, + 0x23, 0x22, 0x24, 0x26, 0x02, 0x67, 0x59, 0xb1, 0x01, 0x06, 0xad, 0x82, + 0xc4, 0x90, 0x64, 0x23, 0xb6, 0x1a, 0x49, 0x68, 0x89, 0x58, 0x80, 0xbd, + 0x7c, 0x3d, 0x42, 0x82, 0xc1, 0x7f, 0x53, 0x8c, 0x71, 0x56, 0x1d, 0xfe, + 0x5b, 0x02, 0x55, 0x2f, 0x7f, 0x9e, 0xbc, 0x6b, 0xb2, 0xfe, 0xf6, 0xb1, + 0x59, 0x02, 0xc7, 0xa5, 0x01, 0x0a, 0xbb, 0x65, 0x2e, 0x56, 0x7b, 0x4d, + 0x36, 0x34, 0x55, 0x3c, 0x21, 0x50, 0x94, 0xd0, 0x7f, 0x7f, 0xd3, 0x99, + 0x55, 0x1c, 0x2d, 0x37, 0x1c, 0xfe, 0xa0, 0xfe, 0x1a, 0x30, 0x57, 0x42, + 0x26, 0x6d, 0xc3, 0x01, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xa8, + 0x00, 0x00, 0x05, 0x20, 0x05, 0x81, 0x00, 0x0b, 0x00, 0x67, 0x40, 0x1d, + 0x0b, 0x5a, 0x40, 0x08, 0x8f, 0x00, 0x9f, 0x00, 0xaf, 0x00, 0xdf, 0x00, + 0x04, 0x00, 0x0d, 0x80, 0x40, 0x0d, 0x01, 0x40, 0x0d, 0xc0, 0x0d, 0xd0, + 0x0d, 0xe0, 0x0d, 0x04, 0x0d, 0xb8, 0xff, 0xc0, 0x40, 0x25, 0x0e, 0x11, + 0x48, 0x07, 0x03, 0x5a, 0x00, 0x04, 0x10, 0x04, 0x40, 0x04, 0x03, 0x07, + 0x04, 0x02, 0x5f, 0x50, 0x07, 0x01, 0xb0, 0x07, 0xe0, 0x07, 0x02, 0x0f, + 0x07, 0x01, 0x08, 0x07, 0x07, 0x09, 0x05, 0x03, 0x04, 0x00, 0x12, 0x00, + 0x3f, 0x32, 0x3f, 0x33, 0x39, 0x2f, 0x5e, 0x5d, 0x5d, 0x71, 0xed, 0x01, + 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x2b, 0x5d, 0x71, 0x1a, 0x10, 0xdc, 0x5d, + 0x32, 0x1a, 0xed, 0x31, 0x30, 0x21, 0x11, 0x21, 0x11, 0x23, 0x11, 0x33, + 0x11, 0x21, 0x11, 0x33, 0x11, 0x04, 0x61, 0xfd, 0x06, 0xbf, 0xbf, 0x02, + 0xfa, 0xbf, 0x02, 0x8d, 0xfd, 0x73, 0x05, 0x81, 0xfd, 0xac, 0x02, 0x54, + 0xfa, 0x7f, 0x00, 0x00, 0x00, 0x01, 0x00, 0xbd, 0x00, 0x00, 0x01, 0x7c, + 0x05, 0x81, 0x00, 0x03, 0x00, 0x7a, 0x40, 0x46, 0x03, 0x5a, 0x0f, 0x00, + 0x01, 0x0c, 0x00, 0x00, 0x01, 0x3d, 0x10, 0x00, 0x20, 0x00, 0xd0, 0x00, + 0x03, 0x60, 0x00, 0x70, 0x00, 0x02, 0x00, 0x00, 0x10, 0x00, 0x40, 0x00, + 0x50, 0x00, 0xb0, 0x00, 0x05, 0x07, 0x00, 0xaf, 0x05, 0x01, 0x00, 0x05, + 0xa0, 0x05, 0xb0, 0x05, 0x03, 0x00, 0x05, 0x10, 0x05, 0x40, 0x05, 0x50, + 0x05, 0xa0, 0x05, 0xb0, 0x05, 0xc0, 0x05, 0xf0, 0x05, 0x08, 0x20, 0x05, + 0x90, 0x05, 0xf0, 0x05, 0x03, 0x05, 0xb8, 0xff, 0xc0, 0xb3, 0x38, 0x3d, + 0x48, 0x05, 0xb8, 0xff, 0xc0, 0xb3, 0x2d, 0x30, 0x48, 0x05, 0xb8, 0xff, + 0xc0, 0xb6, 0x0d, 0x10, 0x48, 0x01, 0x03, 0x00, 0x12, 0x00, 0x3f, 0x3f, + 0x01, 0x2b, 0x2b, 0x2b, 0x5d, 0x71, 0x72, 0x5d, 0x2f, 0x5e, 0x5d, 0x71, + 0x72, 0x5e, 0x5d, 0x5e, 0x5d, 0xed, 0x31, 0x30, 0x33, 0x11, 0x33, 0x11, + 0xbd, 0xbf, 0x05, 0x81, 0xfa, 0x7f, 0x00, 0x00, 0x00, 0x01, 0x00, 0x20, + 0xff, 0xec, 0x03, 0x68, 0x05, 0x81, 0x00, 0x15, 0x00, 0x7c, 0x40, 0x0f, + 0x89, 0x02, 0x01, 0x82, 0x05, 0x01, 0x7b, 0x0a, 0x01, 0x64, 0x06, 0x74, + 0x06, 0x02, 0x06, 0xb8, 0xff, 0xe0, 0x40, 0x42, 0x0e, 0x11, 0x48, 0x00, + 0x0e, 0x20, 0x0e, 0x02, 0x80, 0x0e, 0x90, 0x0e, 0xe0, 0x0e, 0xf0, 0x0e, + 0x04, 0x0e, 0x0e, 0x03, 0x11, 0x5a, 0x40, 0x40, 0x0c, 0x50, 0x0c, 0x60, + 0x0c, 0x03, 0x6f, 0x0c, 0x01, 0x0c, 0x17, 0x80, 0x0f, 0x03, 0x01, 0x03, + 0x20, 0x17, 0x01, 0x20, 0x17, 0x40, 0x17, 0x50, 0x17, 0x60, 0x17, 0x04, + 0x0e, 0x5f, 0x0f, 0x03, 0x09, 0x5f, 0x00, 0x40, 0x04, 0x01, 0x04, 0x04, + 0x00, 0x13, 0x00, 0x3f, 0x32, 0x2f, 0x5d, 0x10, 0xed, 0x3f, 0xed, 0x01, + 0x5d, 0x71, 0x2f, 0x71, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x12, + 0x39, 0x2f, 0x5d, 0x71, 0x31, 0x30, 0x00, 0x2b, 0x01, 0x5d, 0x5d, 0x5d, + 0x00, 0x5d, 0x05, 0x22, 0x26, 0x27, 0x37, 0x1e, 0x03, 0x33, 0x32, 0x36, + 0x35, 0x11, 0x21, 0x35, 0x21, 0x11, 0x14, 0x0e, 0x02, 0x01, 0xc9, 0xab, + 0xdb, 0x23, 0xbb, 0x0a, 0x2e, 0x40, 0x4e, 0x29, 0x68, 0x78, 0xfe, 0xf1, + 0x01, 0xcd, 0x38, 0x6b, 0x9a, 0x14, 0xb2, 0xc0, 0x1f, 0x41, 0x5d, 0x3c, + 0x1c, 0x8f, 0x8a, 0x03, 0x45, 0x9c, 0xfc, 0x23, 0x65, 0xa2, 0x73, 0x3e, + 0x00, 0x01, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x3f, 0x05, 0x81, 0x00, 0x0b, + 0x00, 0x9a, 0x40, 0x67, 0xab, 0x01, 0x01, 0x9d, 0x01, 0x01, 0x8a, 0x08, + 0x9a, 0x08, 0x02, 0x8a, 0x01, 0x9a, 0x01, 0xaa, 0x01, 0x03, 0x66, 0x02, + 0x01, 0x83, 0x07, 0x93, 0x07, 0x02, 0x64, 0x07, 0x01, 0x9d, 0x00, 0xad, + 0x00, 0x02, 0x6b, 0x00, 0x7b, 0x00, 0x8b, 0x00, 0x03, 0x59, 0x00, 0x01, + 0x56, 0x0a, 0x01, 0x9b, 0x0a, 0x01, 0x24, 0x0a, 0x01, 0x01, 0x0a, 0x6a, + 0x08, 0xfa, 0x08, 0x02, 0x08, 0x0a, 0x90, 0x09, 0xa0, 0x09, 0x02, 0x09, + 0x09, 0x00, 0x0b, 0x10, 0x00, 0x0b, 0x01, 0x0b, 0x0b, 0x0d, 0x07, 0x02, + 0x03, 0x5a, 0x00, 0x04, 0x10, 0x04, 0x40, 0x04, 0x03, 0x07, 0x04, 0x07, + 0x0a, 0x01, 0x02, 0x04, 0x04, 0x08, 0x05, 0x03, 0x00, 0x04, 0x12, 0x00, + 0x3f, 0x33, 0x3f, 0x33, 0x12, 0x17, 0x39, 0x01, 0x2f, 0x5e, 0x5d, 0xed, + 0x32, 0x32, 0x11, 0x33, 0x2f, 0x5d, 0x38, 0x33, 0x39, 0x2f, 0x5d, 0x39, + 0x33, 0x71, 0x11, 0x33, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, + 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, + 0x21, 0x01, 0x07, 0x11, 0x23, 0x11, 0x33, 0x11, 0x01, 0x33, 0x09, 0x01, + 0x04, 0x52, 0xfd, 0xcd, 0xb8, 0xbf, 0xbf, 0x02, 0xa7, 0xe1, 0xfd, 0xa8, + 0x02, 0xa8, 0x02, 0xa8, 0x8c, 0xfd, 0xe4, 0x05, 0x81, 0xfd, 0x3e, 0x02, + 0xc2, 0xfd, 0x9c, 0xfc, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0x2f, 0x05, 0x81, 0x00, 0x05, 0x00, 0x38, 0x40, 0x28, + 0x10, 0x04, 0x30, 0x04, 0x02, 0x00, 0x04, 0x10, 0x04, 0x20, 0x04, 0x40, + 0x04, 0x60, 0x04, 0x80, 0x04, 0xa0, 0x04, 0xf0, 0x04, 0x08, 0x04, 0x03, + 0x5a, 0x00, 0x00, 0x10, 0x00, 0x40, 0x00, 0x03, 0x07, 0x00, 0x01, 0x03, + 0x03, 0x5f, 0x00, 0x12, 0x00, 0x3f, 0xed, 0x3f, 0x01, 0x2f, 0x5e, 0x5d, + 0xed, 0x2f, 0x5d, 0x71, 0x31, 0x30, 0x33, 0x11, 0x33, 0x11, 0x21, 0x15, + 0xa8, 0xbf, 0x02, 0xc8, 0x05, 0x81, 0xfb, 0x1b, 0x9c, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0xa8, 0x00, 0x00, 0x06, 0x02, 0x05, 0x81, 0x00, 0x2c, + 0x02, 0x2c, 0x40, 0x0c, 0x98, 0x29, 0x01, 0x97, 0x1f, 0x01, 0x0c, 0x10, + 0x12, 0x18, 0x48, 0x0c, 0xb8, 0xff, 0xf0, 0xb3, 0x0d, 0x11, 0x48, 0x0d, + 0xb8, 0xff, 0xf0, 0x40, 0x1b, 0x12, 0x18, 0x48, 0x28, 0x0d, 0x01, 0x0d, + 0x10, 0x0d, 0x11, 0x48, 0x2a, 0x20, 0x21, 0x25, 0x48, 0x2a, 0x20, 0x12, + 0x1c, 0x48, 0x2a, 0x20, 0x09, 0x11, 0x48, 0x1e, 0xb8, 0xff, 0xe0, 0xb3, + 0x21, 0x25, 0x48, 0x1e, 0xb8, 0xff, 0xe0, 0xb3, 0x12, 0x1c, 0x48, 0x1e, + 0xb8, 0xff, 0xe0, 0x40, 0xff, 0x09, 0x11, 0x48, 0x0d, 0x0c, 0x24, 0x24, + 0x1b, 0x2c, 0x5c, 0x2a, 0x24, 0x00, 0x34, 0x00, 0x02, 0xd4, 0x00, 0x01, + 0x8b, 0x00, 0x9b, 0x00, 0x02, 0x04, 0x00, 0x01, 0x08, 0x00, 0x2e, 0x8b, + 0x2e, 0x01, 0x74, 0x2e, 0x01, 0x3b, 0x2e, 0x01, 0xcb, 0x2e, 0x01, 0xb4, + 0x2e, 0x01, 0x0b, 0x2e, 0x01, 0xcf, 0xab, 0x2e, 0x01, 0x34, 0x2e, 0x01, + 0x20, 0x2e, 0x01, 0x14, 0x2e, 0x01, 0x00, 0x2e, 0x01, 0xf4, 0x2e, 0x01, + 0xd0, 0x2e, 0x01, 0xc4, 0x2e, 0x01, 0xb0, 0x2e, 0x01, 0x74, 0x2e, 0x84, + 0x2e, 0xa4, 0x2e, 0x03, 0x60, 0x2e, 0x01, 0x54, 0x2e, 0x01, 0x40, 0x2e, + 0x01, 0x34, 0x2e, 0x01, 0x10, 0x2e, 0x01, 0x04, 0x2e, 0x01, 0x97, 0xf0, + 0x2e, 0x01, 0xb4, 0x2e, 0xc4, 0x2e, 0xe4, 0x2e, 0x03, 0xa0, 0x2e, 0x01, + 0x74, 0x2e, 0x94, 0x2e, 0x02, 0x50, 0x2e, 0x01, 0x44, 0x2e, 0x01, 0x30, + 0x2e, 0x01, 0x04, 0x2e, 0x24, 0x2e, 0x02, 0xf4, 0x2e, 0x01, 0xe0, 0x2e, + 0x01, 0xb4, 0x2e, 0xd4, 0x2e, 0x02, 0x90, 0x2e, 0x01, 0x84, 0x2e, 0x01, + 0x70, 0x2e, 0x01, 0x34, 0x2e, 0x44, 0x2e, 0x64, 0x2e, 0x03, 0x20, 0x2e, + 0x01, 0x14, 0x2e, 0x01, 0xf4, 0x2e, 0x01, 0xd0, 0x2e, 0x01, 0x74, 0x2e, + 0x84, 0x2e, 0xa4, 0x2e, 0xc4, 0x2e, 0x04, 0x60, 0x2e, 0x01, 0x34, 0x2e, + 0x54, 0x2e, 0x02, 0x10, 0x2e, 0x01, 0x04, 0x2e, 0x01, 0x67, 0x74, 0x2e, + 0x94, 0x2e, 0xb4, 0x2e, 0xc4, 0x2e, 0xe4, 0x2e, 0x05, 0x50, 0x2e, 0x01, + 0x04, 0x2e, 0x24, 0x2e, 0x44, 0x2e, 0x03, 0x14, 0x2e, 0x34, 0x2e, 0x44, + 0x2e, 0x64, 0x2e, 0x84, 0x2e, 0xb4, 0x2e, 0xd4, 0x2e, 0xf4, 0x2e, 0x08, + 0xa4, 0x2e, 0xc4, 0x2e, 0xf4, 0x2e, 0x03, 0x8b, 0x2e, 0x01, 0x04, 0x2e, + 0x34, 0x2e, 0x54, 0x2e, 0x74, 0x2e, 0x04, 0x37, 0x40, 0x53, 0xe4, 0x2e, + 0x01, 0xcb, 0x2e, 0x01, 0x24, 0x2e, 0x44, 0x2e, 0x74, 0x2e, 0x94, 0x2e, + 0xb4, 0x2e, 0x05, 0x0b, 0x2e, 0x01, 0xd4, 0x2e, 0xf4, 0x2e, 0x02, 0xbb, + 0x2e, 0x01, 0x64, 0x2e, 0x84, 0x2e, 0x02, 0x4b, 0x2e, 0x01, 0x14, 0x2e, + 0x34, 0x2e, 0x02, 0xfb, 0x2e, 0x01, 0xa4, 0x2e, 0xc4, 0x2e, 0xe4, 0x2e, + 0x03, 0x80, 0x2e, 0x01, 0x02, 0x40, 0x2e, 0x50, 0x2e, 0x70, 0x2e, 0x03, + 0x3f, 0x2e, 0x01, 0x00, 0x2e, 0x20, 0x2e, 0x02, 0x1e, 0x1b, 0x5c, 0x00, + 0x1c, 0x40, 0x1c, 0x02, 0x07, 0x1c, 0x06, 0x15, 0x15, 0xb8, 0xff, 0xc0, + 0x40, 0x10, 0x12, 0x25, 0x48, 0x2a, 0x15, 0x1d, 0x03, 0x4b, 0x24, 0x01, + 0x00, 0x0d, 0x24, 0x03, 0x1c, 0x12, 0x00, 0x3f, 0x17, 0x33, 0x5d, 0x3f, + 0x33, 0x33, 0x2b, 0x11, 0x33, 0x01, 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x5d, + 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, + 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x72, 0x72, 0x72, 0x5e, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, + 0x10, 0xdc, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x32, 0xed, 0x12, 0x39, 0x3d, + 0x2f, 0x33, 0x33, 0x31, 0x30, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x5d, 0x2b, 0x2b, 0x2b, 0x5d, 0x5d, 0x21, 0x11, 0x34, 0x36, 0x37, 0x36, + 0x37, 0x06, 0x07, 0x0e, 0x01, 0x07, 0x01, 0x23, 0x01, 0x2e, 0x03, 0x27, + 0x26, 0x27, 0x16, 0x17, 0x1e, 0x01, 0x15, 0x11, 0x23, 0x11, 0x33, 0x01, + 0x1e, 0x03, 0x17, 0x3e, 0x03, 0x37, 0x01, 0x33, 0x11, 0x05, 0x56, 0x02, + 0x02, 0x02, 0x03, 0x0e, 0x0f, 0x0d, 0x1f, 0x0f, 0xfe, 0x94, 0x86, 0xfe, + 0x8f, 0x06, 0x0d, 0x0f, 0x0f, 0x07, 0x11, 0x10, 0x01, 0x02, 0x02, 0x02, + 0xaa, 0xfb, 0x01, 0x77, 0x07, 0x14, 0x12, 0x0f, 0x03, 0x03, 0x10, 0x15, + 0x14, 0x08, 0x01, 0x70, 0xf5, 0x03, 0xac, 0x33, 0x6a, 0x2c, 0x33, 0x30, + 0x33, 0x32, 0x2b, 0x61, 0x27, 0xfc, 0x40, 0x03, 0xc0, 0x0f, 0x28, 0x2d, + 0x2f, 0x17, 0x35, 0x39, 0x38, 0x37, 0x2f, 0x67, 0x27, 0xfc, 0x54, 0x05, + 0x81, 0xfc, 0x2f, 0x14, 0x3f, 0x42, 0x3b, 0x10, 0x10, 0x3c, 0x42, 0x3e, + 0x14, 0x03, 0xd1, 0xfa, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xa8, + 0x00, 0x00, 0x05, 0x20, 0x05, 0x81, 0x00, 0x13, 0x00, 0xc4, 0xb9, 0x00, + 0x0a, 0xff, 0xe0, 0x40, 0x27, 0x0c, 0x2b, 0x48, 0x36, 0x0a, 0x46, 0x0a, + 0x02, 0x00, 0x20, 0x0c, 0x2b, 0x48, 0x29, 0x00, 0x39, 0x00, 0x49, 0x00, + 0x03, 0x0b, 0x10, 0x1d, 0x21, 0x48, 0x0b, 0x20, 0x12, 0x1c, 0x48, 0x96, + 0x0b, 0xa6, 0x0b, 0x02, 0x29, 0x0b, 0x01, 0x01, 0xb8, 0xff, 0xf0, 0xb3, + 0x1d, 0x21, 0x48, 0x01, 0xb8, 0xff, 0xe0, 0x40, 0x35, 0x12, 0x1c, 0x48, + 0x9a, 0x01, 0xaa, 0x01, 0x02, 0x03, 0x26, 0x01, 0x01, 0x13, 0x5c, 0x00, + 0x44, 0x10, 0x54, 0x10, 0x94, 0x10, 0x03, 0xe0, 0x10, 0x01, 0x02, 0x00, + 0x10, 0x30, 0x10, 0x40, 0x10, 0x70, 0x10, 0xc0, 0x10, 0xd0, 0x10, 0x06, + 0x10, 0x40, 0x15, 0x01, 0x40, 0x15, 0xc0, 0x15, 0xd0, 0x15, 0xe0, 0x15, + 0x04, 0x15, 0xb8, 0xff, 0xc0, 0x40, 0x10, 0x0e, 0x11, 0x48, 0x0a, 0x07, + 0x5c, 0x00, 0x08, 0x10, 0x08, 0x40, 0x08, 0x03, 0x07, 0x08, 0x01, 0xb8, + 0xff, 0xc0, 0x40, 0x10, 0x1d, 0x2b, 0x48, 0x11, 0x01, 0x09, 0x03, 0x0b, + 0x40, 0x1d, 0x2b, 0x48, 0x0b, 0x00, 0x08, 0x12, 0x00, 0x3f, 0x33, 0x33, + 0x2b, 0x3f, 0x33, 0x33, 0x2b, 0x01, 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x2b, + 0x5d, 0x71, 0x2f, 0x5d, 0x5f, 0x5d, 0x71, 0x33, 0xed, 0x31, 0x30, 0x00, + 0x5d, 0x5f, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, 0x2b, 0x2b, 0x01, 0x5d, 0x2b, + 0x5d, 0x2b, 0x21, 0x01, 0x16, 0x17, 0x1e, 0x01, 0x15, 0x11, 0x23, 0x11, + 0x33, 0x01, 0x26, 0x27, 0x2e, 0x01, 0x35, 0x11, 0x33, 0x11, 0x04, 0x3a, + 0xfd, 0x0e, 0x02, 0x03, 0x02, 0x03, 0xaa, 0xde, 0x02, 0xfa, 0x03, 0x03, + 0x02, 0x04, 0xac, 0x04, 0xb0, 0x31, 0x30, 0x29, 0x5b, 0x23, 0xfc, 0x58, + 0x05, 0x81, 0xfb, 0x48, 0x31, 0x31, 0x2a, 0x63, 0x2d, 0x03, 0x9c, 0xfa, + 0x7f, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x05, 0x96, 0x00, 0x13, 0x00, 0x27, 0x00, 0x6c, 0x40, 0x4a, 0x5b, 0x25, + 0x01, 0x1a, 0x25, 0x01, 0x09, 0x25, 0x01, 0x52, 0x21, 0x01, 0x15, 0x21, + 0x01, 0x07, 0x21, 0x01, 0x54, 0x1b, 0x01, 0x15, 0x1b, 0x01, 0x5b, 0x17, + 0x01, 0x19, 0x17, 0x01, 0x66, 0x11, 0x01, 0x68, 0x0c, 0x01, 0x00, 0x5b, + 0x40, 0x0f, 0x14, 0x01, 0x14, 0x29, 0x80, 0x20, 0x29, 0x80, 0x29, 0x02, + 0x1e, 0x5b, 0xaf, 0x0a, 0xbf, 0x0a, 0x02, 0x20, 0x0a, 0x01, 0x0f, 0x0a, + 0x1f, 0x0a, 0x02, 0x0a, 0x19, 0x5f, 0x0f, 0x04, 0x23, 0x5f, 0x05, 0x13, + 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x01, 0x2f, 0x5d, 0x5d, 0x5d, 0xed, 0x5d, + 0x1a, 0x10, 0xdc, 0x71, 0x1a, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x02, 0x06, + 0x04, 0x23, 0x22, 0x24, 0x26, 0x02, 0x35, 0x34, 0x12, 0x36, 0x24, 0x33, + 0x32, 0x04, 0x16, 0x12, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, + 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x05, 0xd7, 0x5f, 0xb4, + 0xfe, 0xfc, 0xa5, 0xae, 0xfe, 0xfa, 0xae, 0x58, 0x5c, 0xb2, 0x01, 0x05, + 0xa9, 0xa8, 0x01, 0x05, 0xb1, 0x5c, 0xc3, 0x41, 0x7f, 0xbc, 0x7b, 0x7e, + 0xbe, 0x7f, 0x3f, 0x41, 0x7f, 0xbd, 0x7b, 0x84, 0xbf, 0x7b, 0x3b, 0x02, + 0xc7, 0xa5, 0xfe, 0xf2, 0xc0, 0x68, 0x6d, 0xc3, 0x01, 0x0c, 0x9f, 0xa5, + 0x01, 0x0a, 0xbb, 0x65, 0x66, 0xbc, 0xfe, 0xf6, 0xa3, 0x7f, 0xd0, 0x94, + 0x50, 0x50, 0x94, 0xd0, 0x7f, 0x7f, 0xd3, 0x99, 0x55, 0x56, 0x99, 0xd4, + 0x00, 0x02, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xea, 0x05, 0x81, 0x00, 0x0e, + 0x00, 0x17, 0x00, 0x75, 0x40, 0x53, 0xa9, 0x02, 0x01, 0x93, 0x17, 0x01, + 0x9b, 0x10, 0xab, 0x10, 0x02, 0x0a, 0x03, 0x1a, 0x03, 0x2a, 0x03, 0x03, + 0x05, 0x0c, 0x15, 0x0c, 0x25, 0x0c, 0x03, 0x00, 0x5a, 0x40, 0x0f, 0x19, + 0x80, 0x40, 0x19, 0x01, 0x40, 0x19, 0x01, 0x14, 0x07, 0x5a, 0x00, 0x08, + 0x10, 0x08, 0x40, 0x08, 0x03, 0x08, 0x06, 0x5f, 0x1f, 0x14, 0x2f, 0x14, + 0x4f, 0x14, 0x5f, 0x14, 0x7f, 0x14, 0x05, 0x0f, 0x14, 0xcf, 0x14, 0xff, + 0x14, 0x03, 0x07, 0x14, 0x40, 0x09, 0x11, 0x48, 0x14, 0x14, 0x07, 0x13, + 0x5f, 0x09, 0x03, 0x07, 0x12, 0x00, 0x3f, 0x3f, 0xed, 0x12, 0x39, 0x2f, + 0x2b, 0x5e, 0x5d, 0x71, 0xed, 0x01, 0x2f, 0x5d, 0xed, 0x32, 0x5d, 0x71, + 0x1a, 0x10, 0xdc, 0x1a, 0xed, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x21, 0x11, 0x23, 0x11, 0x21, 0x32, + 0x1e, 0x02, 0x07, 0x34, 0x26, 0x23, 0x21, 0x11, 0x21, 0x32, 0x36, 0x04, + 0xea, 0x3d, 0x79, 0xb6, 0x79, 0xfe, 0x62, 0xbf, 0x02, 0x51, 0x7d, 0xba, + 0x7c, 0x3e, 0xc0, 0xa4, 0xa4, 0xfe, 0x85, 0x01, 0x83, 0xa5, 0x9b, 0x03, + 0xd9, 0x5c, 0x9f, 0x75, 0x44, 0xfd, 0xdb, 0x05, 0x81, 0x3d, 0x6f, 0x9d, + 0x61, 0x86, 0x8b, 0xfd, 0xd4, 0x92, 0x00, 0x00, 0x00, 0x02, 0x00, 0x61, + 0xfe, 0x7d, 0x05, 0xd7, 0x05, 0x96, 0x00, 0x24, 0x00, 0x38, 0x00, 0xa2, + 0x40, 0x71, 0x6c, 0x14, 0x7c, 0x14, 0x8c, 0x14, 0x03, 0x68, 0x18, 0x01, + 0x68, 0x1d, 0x01, 0x65, 0x22, 0x01, 0x57, 0x06, 0x01, 0x55, 0x31, 0x01, + 0x5a, 0x27, 0x01, 0x5a, 0x2d, 0x01, 0x6c, 0x13, 0x7c, 0x13, 0x8c, 0x13, + 0x03, 0x1a, 0x13, 0x5a, 0x13, 0x02, 0x1a, 0x28, 0x5a, 0x28, 0x02, 0x15, + 0x2c, 0x55, 0x2c, 0x02, 0x1a, 0x36, 0x5a, 0x36, 0x02, 0x08, 0x36, 0x01, + 0x15, 0x32, 0x55, 0x32, 0x02, 0x07, 0x32, 0x01, 0x0d, 0x0d, 0x16, 0x05, + 0x1b, 0x00, 0x5b, 0x40, 0x0f, 0x25, 0x01, 0x25, 0x3a, 0x80, 0x2f, 0x5b, + 0xaf, 0x1b, 0xbf, 0x1b, 0x02, 0x20, 0x1b, 0x01, 0x0f, 0x1b, 0x1f, 0x1b, + 0x02, 0x1b, 0x20, 0x3a, 0x80, 0x3a, 0x02, 0x2a, 0x5f, 0x20, 0x04, 0x34, + 0x5f, 0x05, 0x16, 0x13, 0x0a, 0x5f, 0x11, 0x00, 0x2f, 0xed, 0x3f, 0x33, + 0xed, 0x3f, 0xed, 0x01, 0x5d, 0x2f, 0x5d, 0x5d, 0x5d, 0xed, 0x1a, 0x10, + 0xdc, 0x71, 0x1a, 0xed, 0x11, 0x39, 0x39, 0x32, 0x2f, 0x31, 0x30, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x07, 0x1e, + 0x03, 0x33, 0x32, 0x36, 0x37, 0x15, 0x0e, 0x01, 0x23, 0x22, 0x2e, 0x02, + 0x27, 0x2e, 0x02, 0x02, 0x35, 0x34, 0x12, 0x36, 0x24, 0x33, 0x32, 0x04, + 0x16, 0x12, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, + 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x05, 0xd7, 0x4d, 0x91, 0xd3, 0x86, + 0x15, 0x35, 0x44, 0x53, 0x33, 0x1c, 0x40, 0x17, 0x26, 0x5b, 0x31, 0x56, + 0x80, 0x61, 0x46, 0x1b, 0x9e, 0xef, 0x9f, 0x50, 0x5c, 0xb2, 0x01, 0x05, + 0xa9, 0xa8, 0x01, 0x05, 0xb1, 0x5c, 0xc3, 0x41, 0x7f, 0xbc, 0x7b, 0x7e, + 0xbe, 0x7f, 0x3f, 0x41, 0x7f, 0xbd, 0x7b, 0x84, 0xbf, 0x7b, 0x3b, 0x02, + 0xc7, 0x95, 0xf7, 0xba, 0x75, 0x12, 0x40, 0x5a, 0x39, 0x1b, 0x08, 0x05, + 0x86, 0x09, 0x0d, 0x33, 0x5f, 0x8a, 0x57, 0x08, 0x73, 0xc1, 0x01, 0x03, + 0x98, 0xa5, 0x01, 0x0a, 0xbb, 0x65, 0x66, 0xbc, 0xfe, 0xf6, 0xa3, 0x7f, + 0xd0, 0x94, 0x50, 0x50, 0x94, 0xd0, 0x7f, 0x7f, 0xd3, 0x99, 0x55, 0x56, + 0x99, 0xd4, 0x00, 0x00, 0x00, 0x02, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x68, + 0x05, 0x81, 0x00, 0x11, 0x00, 0x1e, 0x00, 0xd2, 0x40, 0x3e, 0xa9, 0x0d, + 0x01, 0x8a, 0x14, 0x9a, 0x14, 0xaa, 0x14, 0x03, 0x94, 0x1d, 0x01, 0x75, + 0x1d, 0x85, 0x1d, 0x02, 0xae, 0x00, 0x01, 0x9d, 0x00, 0x01, 0x7c, 0x00, + 0x8c, 0x00, 0x02, 0x4a, 0x00, 0x5a, 0x00, 0x6a, 0x00, 0x03, 0x03, 0xa0, + 0x01, 0x01, 0x72, 0x01, 0x82, 0x01, 0x92, 0x01, 0x03, 0x02, 0x63, 0x01, + 0x01, 0x40, 0x01, 0x01, 0x33, 0x01, 0x01, 0x25, 0x01, 0x01, 0x03, 0x10, + 0xb8, 0xff, 0x70, 0x40, 0x57, 0x11, 0x49, 0x70, 0x10, 0x80, 0x10, 0x90, + 0x10, 0x03, 0x54, 0x10, 0x64, 0x10, 0x02, 0x42, 0x10, 0x01, 0x02, 0x23, + 0x10, 0x33, 0x10, 0x02, 0x01, 0x10, 0x10, 0x19, 0x12, 0x5a, 0x0b, 0x0b, + 0x00, 0x00, 0x11, 0x30, 0x11, 0x40, 0x11, 0x60, 0x11, 0x90, 0x11, 0xa0, + 0x11, 0x06, 0x11, 0x40, 0x20, 0x90, 0x20, 0xa0, 0x20, 0x03, 0x19, 0x03, + 0x5a, 0x00, 0x04, 0x10, 0x04, 0x40, 0x04, 0x03, 0x07, 0x04, 0x10, 0x02, + 0x5f, 0x2f, 0x19, 0x5f, 0x19, 0x6f, 0x19, 0x8f, 0x19, 0x04, 0x19, 0x19, + 0x00, 0x18, 0x5f, 0x05, 0x03, 0x04, 0x00, 0x12, 0x00, 0x3f, 0x32, 0x3f, + 0xed, 0x12, 0x39, 0x2f, 0x5d, 0xed, 0x32, 0x01, 0x2f, 0x5e, 0x5d, 0xed, + 0x32, 0x5d, 0x2f, 0x5d, 0x33, 0x39, 0x2f, 0xed, 0x12, 0x39, 0x11, 0x33, + 0x31, 0x30, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x2b, 0x5f, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5f, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, + 0x5d, 0x5d, 0x21, 0x01, 0x21, 0x11, 0x23, 0x11, 0x21, 0x32, 0x1e, 0x02, + 0x15, 0x14, 0x0e, 0x02, 0x07, 0x01, 0x03, 0x34, 0x2e, 0x02, 0x23, 0x21, + 0x11, 0x21, 0x32, 0x3e, 0x02, 0x04, 0x8c, 0xfe, 0x92, 0xfe, 0x49, 0xbf, + 0x02, 0x97, 0x78, 0xb9, 0x7e, 0x42, 0x27, 0x54, 0x82, 0x5b, 0x01, 0x90, + 0xf8, 0x2c, 0x54, 0x78, 0x4c, 0xfe, 0x3b, 0x01, 0xcd, 0x52, 0x78, 0x4d, + 0x25, 0x02, 0x49, 0xfd, 0xb7, 0x05, 0x81, 0x37, 0x68, 0x96, 0x5e, 0x43, + 0x82, 0x6c, 0x4e, 0x10, 0xfd, 0xa1, 0x03, 0xec, 0x40, 0x5e, 0x3f, 0x1f, + 0xfd, 0xf8, 0x29, 0x48, 0x62, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x5d, + 0xff, 0xec, 0x04, 0xf8, 0x05, 0x96, 0x00, 0x3f, 0x00, 0xe2, 0x40, 0x6e, + 0x96, 0x3e, 0x01, 0x44, 0x3e, 0x01, 0xa6, 0x3b, 0x01, 0x86, 0x36, 0x01, + 0x84, 0x31, 0x01, 0x97, 0x28, 0x01, 0xa9, 0x21, 0x01, 0x0b, 0x21, 0x1b, + 0x21, 0x2b, 0x21, 0x9b, 0x21, 0x04, 0x59, 0x1d, 0xa9, 0x1d, 0x02, 0x8b, + 0x11, 0x01, 0x8b, 0x07, 0x01, 0x96, 0x02, 0x01, 0x04, 0x02, 0x14, 0x02, + 0x02, 0x84, 0x3a, 0x01, 0x60, 0x36, 0x01, 0x69, 0x15, 0x01, 0x76, 0x11, + 0x01, 0x2a, 0x5a, 0x29, 0x29, 0x00, 0x5a, 0x40, 0xb0, 0x13, 0x01, 0x13, + 0x41, 0x80, 0x09, 0x5a, 0x08, 0x40, 0x10, 0x13, 0x48, 0x08, 0x08, 0x34, + 0x5a, 0x00, 0x1f, 0x10, 0x1f, 0x40, 0x1f, 0x03, 0x07, 0x1f, 0x13, 0x10, + 0x13, 0x16, 0x48, 0x78, 0x13, 0x88, 0x13, 0x98, 0x13, 0x03, 0x3b, 0x13, + 0x01, 0x34, 0xb8, 0xff, 0xf0, 0x40, 0x2f, 0x13, 0x16, 0x48, 0x77, 0x34, + 0x87, 0x34, 0x97, 0x34, 0x03, 0x3a, 0x34, 0x01, 0x13, 0x34, 0x05, 0x2f, + 0x5f, 0x6f, 0x2a, 0x01, 0x59, 0x2a, 0x01, 0x4b, 0x2a, 0x01, 0x06, 0x2a, + 0x01, 0x2a, 0x24, 0x04, 0x0e, 0x5f, 0x60, 0x09, 0x01, 0x52, 0x09, 0x01, + 0x44, 0x09, 0x01, 0x09, 0x05, 0x13, 0x00, 0x3f, 0x33, 0x5d, 0x5d, 0x5d, + 0xed, 0x3f, 0x33, 0x5d, 0x5d, 0x5d, 0x5d, 0xed, 0x12, 0x39, 0x39, 0x5d, + 0x5d, 0x2b, 0x5d, 0x5d, 0x2b, 0x01, 0x2f, 0x5e, 0x5d, 0xed, 0x33, 0x2f, + 0x2b, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x32, 0x2f, 0xed, 0x31, + 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, + 0x23, 0x20, 0x24, 0x27, 0x37, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x35, + 0x34, 0x2e, 0x02, 0x27, 0x2e, 0x05, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, + 0x1e, 0x02, 0x17, 0x07, 0x2e, 0x03, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, + 0x1e, 0x02, 0x17, 0x1e, 0x05, 0x04, 0xf8, 0x45, 0x90, 0xdb, 0x96, 0xfe, + 0xf9, 0xfe, 0xda, 0x28, 0xb9, 0x0e, 0x3a, 0x63, 0x92, 0x66, 0x55, 0x8e, + 0x66, 0x39, 0x3f, 0x72, 0x9e, 0x60, 0x3b, 0x77, 0x6d, 0x60, 0x46, 0x28, + 0x51, 0x90, 0xc4, 0x72, 0x83, 0xba, 0x80, 0x4d, 0x17, 0xbc, 0x0e, 0x35, + 0x56, 0x7b, 0x53, 0x62, 0x85, 0x51, 0x23, 0x3f, 0x6c, 0x8e, 0x50, 0x41, + 0x81, 0x76, 0x67, 0x4c, 0x2b, 0x01, 0x85, 0x59, 0x96, 0x6d, 0x3d, 0xb8, + 0xae, 0x25, 0x37, 0x5a, 0x41, 0x24, 0x1d, 0x3c, 0x5f, 0x42, 0x45, 0x56, + 0x38, 0x26, 0x16, 0x0d, 0x1f, 0x2b, 0x3a, 0x51, 0x6b, 0x46, 0x64, 0x8f, + 0x5c, 0x2a, 0x29, 0x52, 0x79, 0x50, 0x21, 0x33, 0x50, 0x36, 0x1c, 0x23, + 0x3c, 0x51, 0x2f, 0x3f, 0x51, 0x36, 0x24, 0x12, 0x0f, 0x1f, 0x2b, 0x3a, + 0x54, 0x72, 0x00, 0x00, 0x00, 0x01, 0x00, 0x2e, 0x00, 0x00, 0x04, 0xb4, + 0x05, 0x81, 0x00, 0x07, 0x01, 0xd4, 0x40, 0xff, 0x09, 0x09, 0x01, 0xc9, + 0x09, 0xd9, 0x09, 0xf9, 0x09, 0x03, 0xbb, 0x09, 0x01, 0x49, 0x09, 0x59, + 0x09, 0x79, 0x09, 0x89, 0x09, 0x04, 0x3b, 0x09, 0x01, 0x09, 0x09, 0x19, + 0x09, 0x02, 0xf6, 0x09, 0x01, 0x99, 0x09, 0xc9, 0x09, 0x02, 0x8b, 0x09, + 0x01, 0x09, 0x09, 0x19, 0x09, 0x49, 0x09, 0x69, 0x09, 0x04, 0xc7, 0xd9, + 0x09, 0xe9, 0x09, 0x02, 0xcb, 0x09, 0x01, 0xb6, 0x09, 0x01, 0x29, 0x09, + 0x59, 0x09, 0x69, 0x09, 0x89, 0x09, 0x99, 0x09, 0x05, 0x1b, 0x09, 0x01, + 0x06, 0x09, 0x01, 0x19, 0x09, 0x29, 0x09, 0x59, 0x09, 0x79, 0x09, 0x99, + 0x09, 0xa9, 0x09, 0xd9, 0x09, 0x07, 0xe9, 0x09, 0xf9, 0x09, 0x02, 0xdb, + 0x09, 0x01, 0xa9, 0x09, 0x01, 0x96, 0x09, 0x01, 0x39, 0x09, 0x69, 0x09, + 0x02, 0x2d, 0x09, 0x01, 0x01, 0x0b, 0x09, 0x01, 0x97, 0x6b, 0x09, 0x7b, + 0x09, 0x8b, 0x09, 0xab, 0x09, 0xbb, 0x09, 0xeb, 0x09, 0xfb, 0x09, 0x07, + 0x54, 0x09, 0x01, 0x0b, 0x09, 0x2b, 0x09, 0x3b, 0x09, 0x03, 0xbb, 0x09, + 0xfb, 0x09, 0x02, 0xa4, 0x09, 0x01, 0x3b, 0x09, 0x4b, 0x09, 0x7b, 0x09, + 0x03, 0x24, 0x09, 0x01, 0x8b, 0x09, 0x9b, 0x09, 0xbb, 0x09, 0xcb, 0x09, + 0xfb, 0x09, 0x05, 0x7f, 0x09, 0x01, 0x02, 0x4f, 0x09, 0x5f, 0x09, 0x02, + 0x30, 0x09, 0x01, 0x0f, 0x09, 0x01, 0x67, 0xcf, 0x09, 0xdf, 0x09, 0x02, + 0xb0, 0x09, 0x01, 0x0f, 0x09, 0x4f, 0x09, 0x5f, 0x09, 0x8f, 0x09, 0x04, + 0xf0, 0x09, 0x01, 0x9f, 0x09, 0xaf, 0x09, 0xcf, 0x09, 0xdf, 0x09, 0x04, + 0x70, 0x09, 0x01, 0x5f, 0x09, 0x01, 0x40, 0x09, 0x01, 0x1f, 0x09, 0x01, + 0x1f, 0x09, 0x3f, 0x09, 0x5f, 0x09, 0x6f, 0x09, 0x9f, 0x09, 0xdf, 0x09, + 0xef, 0x09, 0x07, 0x00, 0x09, 0x01, 0x37, 0xef, 0x09, 0x01, 0x80, 0x40, + 0x5d, 0x09, 0x90, 0x09, 0xd0, 0x09, 0x03, 0x6f, 0x09, 0x01, 0x50, 0x09, + 0x01, 0x2f, 0x09, 0x01, 0x00, 0x09, 0x01, 0xd0, 0x09, 0x01, 0xaf, 0x09, + 0x01, 0x90, 0x09, 0x01, 0x6f, 0x09, 0x7f, 0x09, 0x02, 0x10, 0x09, 0x20, + 0x09, 0x40, 0x09, 0x50, 0x09, 0x04, 0xff, 0x09, 0x01, 0xe0, 0x09, 0x01, + 0xbf, 0x09, 0x01, 0x40, 0x09, 0x60, 0x09, 0x90, 0x09, 0xa0, 0x09, 0x04, + 0x3f, 0x09, 0x01, 0x20, 0x09, 0x01, 0x0f, 0x09, 0x01, 0x07, 0x03, 0x05, + 0x04, 0x0e, 0x01, 0x5a, 0x02, 0x40, 0x02, 0x07, 0x0e, 0x70, 0x07, 0xa0, + 0x07, 0xb0, 0x07, 0x03, 0x20, 0x07, 0x80, 0x07, 0x02, 0x07, 0xb8, 0xff, + 0xc0, 0x40, 0x0f, 0x17, 0x1c, 0x48, 0x07, 0x20, 0x02, 0x01, 0x02, 0x00, + 0x04, 0x5f, 0x05, 0x03, 0x01, 0x12, 0x00, 0x3f, 0x3f, 0xed, 0x32, 0x01, + 0x2f, 0x5d, 0xcc, 0x2b, 0x5d, 0x71, 0x2b, 0x01, 0x1a, 0x18, 0x10, 0x4d, + 0xfd, 0xe4, 0x32, 0x5f, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, + 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x5e, + 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, + 0x72, 0x5e, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x72, 0x31, 0x30, 0x01, 0x11, 0x23, 0x11, 0x21, 0x35, + 0x21, 0x15, 0x02, 0xd0, 0xbe, 0xfe, 0x1c, 0x04, 0x86, 0x04, 0xe5, 0xfb, + 0x1b, 0x04, 0xe5, 0x9c, 0x9c, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x05, 0x81, 0x00, 0x19, 0x00, 0x88, 0x40, 0x3d, + 0x59, 0x17, 0x69, 0x17, 0x02, 0x59, 0x03, 0x69, 0x03, 0x02, 0x59, 0x02, + 0x69, 0x02, 0x02, 0x45, 0x10, 0x01, 0x45, 0x0a, 0x01, 0x15, 0x5a, 0x40, + 0x40, 0x12, 0x50, 0x12, 0xa0, 0x12, 0x03, 0x30, 0x12, 0x90, 0x12, 0xf0, + 0x12, 0x03, 0x8f, 0x12, 0x9f, 0x12, 0xaf, 0x12, 0x03, 0x12, 0x1b, 0x80, + 0x40, 0x1b, 0x01, 0x40, 0x1b, 0xc0, 0x1b, 0xd0, 0x1b, 0xe0, 0x1b, 0x04, + 0x1b, 0xb8, 0xff, 0xc0, 0x40, 0x24, 0x0e, 0x11, 0x48, 0x08, 0x5a, 0x4f, + 0x05, 0x5f, 0x05, 0x6f, 0x05, 0x03, 0x8f, 0x05, 0x9f, 0x05, 0x02, 0xcf, + 0x05, 0x01, 0x00, 0x05, 0x10, 0x05, 0x40, 0x05, 0x03, 0x07, 0x05, 0x13, + 0x06, 0x03, 0x0d, 0x5f, 0x00, 0x13, 0x00, 0x3f, 0xed, 0x3f, 0x33, 0x01, + 0x2f, 0x5e, 0x5d, 0x5d, 0x71, 0x72, 0xed, 0x2b, 0x5d, 0x71, 0x1a, 0x10, + 0xdc, 0x5d, 0x71, 0x72, 0x1a, 0xed, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x05, 0x22, 0x2e, 0x02, 0x35, 0x11, 0x33, 0x11, 0x14, 0x1e, + 0x02, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x11, 0x33, 0x11, 0x14, 0x0e, 0x02, + 0x02, 0xdb, 0x74, 0xd0, 0x9d, 0x5c, 0xbf, 0x39, 0x66, 0x8b, 0x53, 0x52, + 0x92, 0x6e, 0x3f, 0xbe, 0x5d, 0xa0, 0xd7, 0x14, 0x3e, 0x83, 0xc9, 0x8a, + 0x03, 0x81, 0xfc, 0x8f, 0x6b, 0x95, 0x5e, 0x2b, 0x2c, 0x60, 0x9b, 0x6f, + 0x03, 0x64, 0xfc, 0x91, 0x8d, 0xcf, 0x88, 0x42, 0x00, 0x01, 0x00, 0x09, + 0x00, 0x00, 0x05, 0x4d, 0x05, 0x81, 0x00, 0x10, 0x00, 0xeb, 0x40, 0xb5, + 0x4a, 0x0e, 0x5a, 0x0e, 0x6a, 0x0e, 0x03, 0x45, 0x04, 0x55, 0x04, 0x65, + 0x04, 0x03, 0x8c, 0x0f, 0x01, 0x3a, 0x0f, 0x5a, 0x0f, 0x6a, 0x0f, 0x7a, + 0x0f, 0x04, 0x83, 0x03, 0x01, 0x35, 0x03, 0x55, 0x03, 0x65, 0x03, 0x75, + 0x03, 0x04, 0x74, 0x00, 0x84, 0x00, 0x02, 0x09, 0x00, 0x01, 0x8c, 0x01, + 0x01, 0x7b, 0x01, 0x01, 0x06, 0x01, 0x01, 0x1a, 0x01, 0x2a, 0x01, 0x3a, + 0x01, 0x03, 0x09, 0x01, 0x01, 0xe9, 0x01, 0xf9, 0x01, 0x02, 0x15, 0x00, + 0x25, 0x00, 0x35, 0x00, 0x03, 0x06, 0x00, 0x01, 0xe6, 0x00, 0xf6, 0x00, + 0x02, 0x01, 0x00, 0x09, 0x09, 0x02, 0x1a, 0x0f, 0x2a, 0x0f, 0x3a, 0x0f, + 0x03, 0x03, 0x08, 0x0f, 0x01, 0xe8, 0x0f, 0xf8, 0x0f, 0x02, 0x0f, 0x34, + 0x10, 0x54, 0x10, 0x02, 0x20, 0x10, 0x01, 0x02, 0x10, 0x10, 0x01, 0x30, + 0x10, 0x60, 0x10, 0x90, 0x10, 0xc0, 0x10, 0xf0, 0x10, 0x05, 0x10, 0x15, + 0x03, 0x25, 0x03, 0x35, 0x03, 0x03, 0x06, 0x03, 0x01, 0xe6, 0x03, 0xf6, + 0x03, 0x02, 0x03, 0xaf, 0x02, 0xbf, 0x02, 0x02, 0x02, 0x20, 0x12, 0x50, + 0x12, 0x02, 0x30, 0x12, 0x60, 0x12, 0x90, 0x12, 0xc0, 0x12, 0xf0, 0x12, + 0x05, 0x2f, 0x12, 0x01, 0x0f, 0x02, 0x03, 0x79, 0x09, 0x01, 0x09, 0x01, + 0x12, 0x00, 0x3f, 0x33, 0x5d, 0x3f, 0x33, 0x01, 0x5d, 0x5d, 0x71, 0x2f, + 0x5d, 0x33, 0x5d, 0x71, 0x71, 0x2f, 0x5d, 0x71, 0x5f, 0x71, 0x71, 0x33, + 0x5d, 0x71, 0x5f, 0x71, 0x12, 0x39, 0x3d, 0x2f, 0x33, 0x33, 0x5d, 0x71, + 0x71, 0x5d, 0x71, 0x71, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x21, 0x23, 0x01, 0x33, 0x01, 0x1e, 0x01, + 0x17, 0x16, 0x17, 0x36, 0x37, 0x3e, 0x01, 0x37, 0x01, 0x33, 0x03, 0x0e, + 0xc6, 0xfd, 0xc1, 0xc9, 0x01, 0x86, 0x0f, 0x1e, 0x0c, 0x0e, 0x0d, 0x0c, + 0x0e, 0x0c, 0x1d, 0x11, 0x01, 0x84, 0xc9, 0x05, 0x81, 0xfc, 0x20, 0x2d, + 0x59, 0x23, 0x29, 0x27, 0x25, 0x29, 0x23, 0x58, 0x30, 0x03, 0xe0, 0x00, + 0x00, 0x01, 0x00, 0x09, 0x00, 0x00, 0x07, 0x86, 0x05, 0x81, 0x00, 0x2e, + 0x04, 0x57, 0x40, 0x49, 0x79, 0x2c, 0x01, 0x75, 0x11, 0x01, 0x7b, 0x02, + 0x8b, 0x02, 0x02, 0x49, 0x02, 0x01, 0x74, 0x0c, 0x84, 0x0c, 0x02, 0x46, + 0x0c, 0x01, 0x7a, 0x1e, 0x8a, 0x1e, 0x02, 0x49, 0x1e, 0x59, 0x1e, 0x69, + 0x1e, 0x03, 0x75, 0x1f, 0x85, 0x1f, 0x02, 0x47, 0x1f, 0x57, 0x1f, 0x67, + 0x1f, 0x03, 0x8e, 0x2d, 0x01, 0x5b, 0x2d, 0x6b, 0x2d, 0x7b, 0x2d, 0x03, + 0x81, 0x10, 0x01, 0x64, 0x10, 0x74, 0x10, 0x02, 0x55, 0x10, 0x01, 0x01, + 0x20, 0x0d, 0x11, 0x48, 0x0d, 0xb8, 0xff, 0xe0, 0x40, 0xff, 0x0d, 0x11, + 0x48, 0x83, 0x00, 0x01, 0x75, 0x00, 0x01, 0x44, 0x00, 0x54, 0x00, 0x64, + 0x00, 0x03, 0x36, 0x00, 0x01, 0x8c, 0x0e, 0x01, 0x7a, 0x0e, 0x01, 0x4b, + 0x0e, 0x5b, 0x0e, 0x6b, 0x0e, 0x03, 0x0e, 0x10, 0x09, 0x0c, 0x48, 0x1a, + 0x0e, 0x2a, 0x0e, 0x3a, 0x0e, 0x03, 0x09, 0x0e, 0x01, 0xe9, 0x0e, 0xf9, + 0x0e, 0x02, 0x15, 0x0d, 0x25, 0x0d, 0x35, 0x0d, 0x03, 0x06, 0x0d, 0x01, + 0xe6, 0x0d, 0xf6, 0x0d, 0x02, 0x0e, 0x0d, 0x16, 0x1a, 0x1e, 0x2a, 0x1e, + 0x3a, 0x1e, 0x03, 0x09, 0x1e, 0x01, 0xe9, 0x1e, 0xf9, 0x1e, 0x02, 0x15, + 0x1f, 0x25, 0x1f, 0x35, 0x1f, 0x03, 0x06, 0x1f, 0x01, 0xe6, 0x1f, 0xf6, + 0x1f, 0x02, 0x1f, 0x1e, 0x07, 0x1a, 0x01, 0x2a, 0x01, 0x3a, 0x01, 0x03, + 0x09, 0x01, 0x01, 0xe9, 0x01, 0xf9, 0x01, 0x02, 0x15, 0x00, 0x25, 0x00, + 0x35, 0x00, 0x03, 0x06, 0x00, 0x01, 0xe6, 0x00, 0xf6, 0x00, 0x02, 0x01, + 0x00, 0x27, 0x7b, 0x27, 0x01, 0x74, 0x16, 0x84, 0x16, 0x02, 0x16, 0x07, + 0x27, 0x27, 0x07, 0x16, 0x03, 0x0f, 0x1a, 0x2d, 0x2a, 0x2d, 0x3a, 0x2d, + 0x03, 0x03, 0x08, 0x2d, 0x01, 0xe8, 0x2d, 0xf8, 0x2d, 0x02, 0x2d, 0xdb, + 0x2e, 0x01, 0xcf, 0x2e, 0x01, 0xbb, 0x2e, 0x01, 0xaf, 0x2e, 0x01, 0x9b, + 0x2e, 0x01, 0x8f, 0x2e, 0x01, 0x7b, 0x2e, 0x01, 0x6f, 0x2e, 0x01, 0x5b, + 0x2e, 0x01, 0x4f, 0x2e, 0x01, 0x02, 0x4f, 0x2e, 0x8f, 0x2e, 0xaf, 0x2e, + 0x03, 0x2e, 0x40, 0x19, 0x1c, 0x48, 0x20, 0x2e, 0x30, 0x2e, 0x02, 0x0f, + 0x2e, 0x01, 0x09, 0x2e, 0x05, 0x10, 0x01, 0xe5, 0x10, 0xf5, 0x10, 0x02, + 0xb6, 0x10, 0xc6, 0x10, 0xd6, 0x10, 0x03, 0x03, 0x10, 0x08, 0x0f, 0x38, + 0x0f, 0x78, 0x0f, 0x88, 0x0f, 0x98, 0x0f, 0xb8, 0x0f, 0x06, 0x0c, 0x0f, + 0x40, 0x40, 0xff, 0x19, 0x26, 0x48, 0x0f, 0x77, 0x30, 0x97, 0x30, 0xd7, + 0x30, 0x03, 0x36, 0x30, 0x46, 0x30, 0x56, 0x30, 0x03, 0x17, 0x30, 0x27, + 0x30, 0x02, 0x06, 0x30, 0x01, 0x37, 0x30, 0x67, 0x30, 0x77, 0x30, 0xa7, + 0x30, 0xb7, 0x30, 0xc7, 0x30, 0xe7, 0x30, 0xf7, 0x30, 0x08, 0x26, 0x30, + 0x01, 0x07, 0x30, 0x17, 0x30, 0x02, 0xc9, 0xc7, 0x30, 0xd7, 0x30, 0xe7, + 0x30, 0x03, 0x78, 0x30, 0x98, 0x30, 0xa8, 0x30, 0xb8, 0x30, 0x04, 0x69, + 0x30, 0x01, 0x28, 0x30, 0x38, 0x30, 0x58, 0x30, 0x03, 0x19, 0x30, 0x01, + 0x07, 0x30, 0x01, 0xe8, 0x30, 0x01, 0xd9, 0x30, 0x01, 0xa8, 0x30, 0xc8, + 0x30, 0x02, 0x99, 0x30, 0x01, 0x8a, 0x30, 0x01, 0x58, 0x30, 0x68, 0x30, + 0x02, 0x49, 0x30, 0x01, 0x37, 0x30, 0x01, 0x08, 0x30, 0x18, 0x30, 0x02, + 0xe7, 0x30, 0x01, 0xc8, 0x30, 0x01, 0xa7, 0x30, 0x01, 0x08, 0x30, 0x18, + 0x30, 0x28, 0x30, 0x48, 0x30, 0x88, 0x30, 0x05, 0x99, 0xc7, 0x30, 0x01, + 0x58, 0x30, 0x68, 0x30, 0x88, 0x30, 0x98, 0x30, 0xa8, 0x30, 0x05, 0x49, + 0x30, 0x01, 0x28, 0x30, 0x01, 0x09, 0x30, 0x19, 0x30, 0x02, 0xd8, 0x30, + 0xe8, 0x30, 0x02, 0xcb, 0x30, 0x01, 0x9a, 0x30, 0xaa, 0x30, 0xba, 0x30, + 0x03, 0x8b, 0x30, 0x01, 0x30, 0xc0, 0x7c, 0x7f, 0x48, 0x39, 0x30, 0x01, + 0x2a, 0x30, 0x01, 0x19, 0x30, 0x01, 0x0a, 0x30, 0x01, 0xf9, 0x30, 0x01, + 0xea, 0x30, 0x01, 0xd9, 0x30, 0x01, 0xca, 0x30, 0x01, 0xb8, 0x30, 0x01, + 0x89, 0x30, 0x99, 0x30, 0xa9, 0x30, 0x03, 0x78, 0x30, 0x01, 0x69, 0x30, + 0x01, 0x3a, 0x30, 0x4a, 0x30, 0x5a, 0x30, 0x03, 0x29, 0x30, 0x01, 0x1a, + 0x30, 0x01, 0x0c, 0x30, 0x01, 0x68, 0xfd, 0x30, 0x01, 0xec, 0x30, 0x01, + 0xdd, 0x30, 0x01, 0xcc, 0x30, 0x01, 0x40, 0xff, 0xbd, 0x30, 0x01, 0xab, + 0x30, 0x01, 0x9c, 0x30, 0x01, 0x8b, 0x30, 0x01, 0x7c, 0x30, 0x01, 0x6b, + 0x30, 0x01, 0x5c, 0x30, 0x01, 0x4b, 0x30, 0x01, 0x3c, 0x30, 0x01, 0x2b, + 0x30, 0x01, 0x1c, 0x30, 0x01, 0x0b, 0x30, 0x01, 0xfc, 0x30, 0x01, 0xeb, + 0x30, 0x01, 0xdc, 0x30, 0x01, 0xcb, 0x30, 0x01, 0xbc, 0x30, 0x01, 0xab, + 0x30, 0x01, 0x9c, 0x30, 0x01, 0x00, 0x8d, 0x30, 0x01, 0x7f, 0x30, 0x01, + 0x6d, 0x30, 0x01, 0x5f, 0x30, 0x01, 0x4d, 0x30, 0x01, 0x2f, 0x30, 0x3f, + 0x30, 0x02, 0x1d, 0x30, 0x01, 0x0f, 0x30, 0x01, 0xfd, 0x30, 0x01, 0xef, + 0x30, 0x01, 0xdd, 0x30, 0x01, 0xcf, 0x30, 0x01, 0xbd, 0x30, 0x01, 0xaf, + 0x30, 0x01, 0x9d, 0x30, 0x01, 0x8f, 0x30, 0x01, 0x6d, 0x30, 0x7d, 0x30, + 0x02, 0x5b, 0x30, 0x01, 0x4d, 0x30, 0x01, 0x3b, 0x30, 0x01, 0x2d, 0x30, + 0x01, 0x1b, 0x30, 0x01, 0x0d, 0x30, 0x01, 0x38, 0xfb, 0x30, 0x01, 0xed, + 0x30, 0x01, 0xdb, 0x30, 0x01, 0xcd, 0x30, 0x01, 0xbb, 0x30, 0x01, 0xad, + 0x30, 0x01, 0x9b, 0x30, 0x01, 0x8d, 0x30, 0x01, 0x7b, 0x30, 0x01, 0x6d, + 0x30, 0x01, 0x4b, 0x30, 0x5b, 0x30, 0x02, 0x39, 0x30, 0x01, 0x2b, 0x30, + 0x01, 0x19, 0x30, 0x01, 0x0b, 0x30, 0x01, 0xf9, 0x30, 0x01, 0xeb, 0x30, + 0x01, 0xdd, 0x30, 0x01, 0xcb, 0x30, 0x01, 0xbd, 0x30, 0x01, 0xab, 0x30, + 0x01, 0x9d, 0x30, 0x01, 0x8b, 0x30, 0x01, 0x7d, 0x30, 0x01, 0x6b, 0x30, + 0x01, 0x5d, 0x30, 0x01, 0x4b, 0x30, 0x01, 0x3d, 0x30, 0x01, 0x01, 0x2b, + 0x30, 0x01, 0x1f, 0x30, 0x01, 0x02, 0x5f, 0x30, 0x7f, 0x30, 0x9f, 0x30, + 0xbf, 0x30, 0xdf, 0x30, 0xff, 0x30, 0x06, 0x00, 0x30, 0x01, 0x08, 0x44, + 0x07, 0x54, 0x07, 0x02, 0x07, 0x1e, 0x2d, 0x03, 0x0f, 0x03, 0x27, 0x40, + 0x0f, 0x16, 0x7b, 0x16, 0x8b, 0x16, 0x02, 0x16, 0x20, 0x09, 0x0e, 0x48, + 0x16, 0x01, 0x0e, 0x12, 0x00, 0x3f, 0x33, 0x33, 0x2b, 0x5d, 0x11, 0x33, + 0x3f, 0x17, 0x33, 0x5d, 0x01, 0x5e, 0x5d, 0x5d, 0x5f, 0x71, 0x71, 0x5f, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x5f, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x2b, 0x71, 0x71, + 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x2f, + 0x2b, 0x5e, 0x5d, 0x33, 0x5f, 0x5d, 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0x5d, + 0x2b, 0x5d, 0x5f, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x33, 0x5d, 0x71, 0x5f, 0x71, 0x12, 0x17, 0x39, 0x3d, 0x2f, 0x2f, + 0x2f, 0x5d, 0x5d, 0x11, 0x33, 0x33, 0x5d, 0x71, 0x71, 0x5d, 0x71, 0x71, + 0x11, 0x33, 0x33, 0x5d, 0x71, 0x71, 0x5d, 0x71, 0x71, 0x11, 0x33, 0x33, + 0x5d, 0x71, 0x71, 0x5d, 0x71, 0x71, 0x31, 0x30, 0x2b, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x21, 0x23, 0x03, + 0x2e, 0x01, 0x27, 0x26, 0x27, 0x06, 0x07, 0x0e, 0x01, 0x07, 0x03, 0x23, + 0x01, 0x33, 0x13, 0x1e, 0x01, 0x17, 0x16, 0x17, 0x36, 0x37, 0x3e, 0x03, + 0x37, 0x13, 0x33, 0x13, 0x1e, 0x03, 0x17, 0x16, 0x17, 0x32, 0x3e, 0x02, + 0x37, 0x13, 0x33, 0x05, 0xe7, 0xe4, 0xf4, 0x0b, 0x19, 0x0a, 0x0c, 0x0c, + 0x0d, 0x0c, 0x0b, 0x18, 0x0b, 0xf6, 0xe4, 0xfe, 0x61, 0xc7, 0xfd, 0x11, + 0x1f, 0x0b, 0x0d, 0x0b, 0x0f, 0x10, 0x07, 0x0e, 0x0f, 0x0f, 0x06, 0xf5, + 0xb7, 0xf5, 0x06, 0x0f, 0x0f, 0x0e, 0x07, 0x10, 0x0f, 0x01, 0x10, 0x18, + 0x1d, 0x0f, 0xf9, 0xc7, 0x03, 0x7f, 0x26, 0x68, 0x2f, 0x37, 0x39, 0x3a, + 0x37, 0x30, 0x66, 0x26, 0xfc, 0x81, 0x05, 0x81, 0xfc, 0x81, 0x3f, 0x7c, + 0x31, 0x3a, 0x34, 0x45, 0x43, 0x1c, 0x3e, 0x3c, 0x37, 0x17, 0x03, 0x6d, + 0xfc, 0x93, 0x17, 0x37, 0x3b, 0x3e, 0x1c, 0x43, 0x46, 0x45, 0x68, 0x79, + 0x34, 0x03, 0x7f, 0x00, 0x00, 0x01, 0x00, 0x2e, 0x00, 0x00, 0x05, 0x2b, + 0x05, 0x81, 0x00, 0x0b, 0x02, 0x77, 0x40, 0xff, 0x5c, 0x04, 0x01, 0x49, + 0x04, 0x01, 0x3b, 0x04, 0x01, 0x26, 0x0b, 0x01, 0x4b, 0x00, 0x5b, 0x00, + 0x02, 0x29, 0x00, 0x39, 0x00, 0x02, 0x44, 0x02, 0x54, 0x02, 0x02, 0x26, + 0x02, 0x36, 0x02, 0x02, 0x09, 0x03, 0x19, 0x03, 0x29, 0x03, 0x03, 0x51, + 0x0a, 0x01, 0x45, 0x0a, 0x01, 0x33, 0x0a, 0x01, 0x06, 0x0a, 0x16, 0x0a, + 0x02, 0x5d, 0x08, 0x01, 0x4c, 0x08, 0x01, 0x2b, 0x08, 0x3b, 0x08, 0x02, + 0x09, 0x08, 0x19, 0x08, 0x02, 0x52, 0x06, 0x01, 0x43, 0x06, 0x01, 0x03, + 0x26, 0x06, 0x36, 0x06, 0x02, 0x07, 0x06, 0x17, 0x06, 0x02, 0x0c, 0xdb, + 0x0d, 0x01, 0xc4, 0x0d, 0x01, 0xab, 0x0d, 0x01, 0x90, 0x0d, 0x01, 0x84, + 0x0d, 0x01, 0x60, 0x0d, 0x01, 0x54, 0x0d, 0x01, 0x30, 0x0d, 0x01, 0x24, + 0x0d, 0x01, 0x00, 0x0d, 0x01, 0xf4, 0x0d, 0x01, 0xd0, 0x0d, 0x01, 0xc4, + 0x0d, 0x01, 0xa0, 0x0d, 0x01, 0x94, 0x0d, 0x01, 0x70, 0x0d, 0x01, 0x64, + 0x0d, 0x01, 0x40, 0x0d, 0x01, 0x34, 0x0d, 0x01, 0x10, 0x0d, 0x01, 0x04, + 0x0d, 0x01, 0xcc, 0xe0, 0x0d, 0x01, 0xd4, 0x0d, 0x01, 0xb0, 0x0d, 0x01, + 0xa4, 0x0d, 0x01, 0x80, 0x0d, 0x01, 0x74, 0x0d, 0x01, 0x50, 0x0d, 0x01, + 0x44, 0x0d, 0x01, 0x20, 0x0d, 0x01, 0x14, 0x0d, 0x01, 0x24, 0x0d, 0x54, + 0x0d, 0x84, 0x0d, 0xb4, 0x0d, 0xe4, 0x0d, 0x05, 0x04, 0x0d, 0x34, 0x0d, + 0x64, 0x0d, 0x94, 0x0d, 0xc4, 0x0d, 0xf4, 0x0d, 0x06, 0x9c, 0x34, 0x0d, + 0x64, 0x0d, 0x94, 0x0d, 0xc4, 0x0d, 0xf4, 0x0d, 0x05, 0x0b, 0x0d, 0x01, + 0x1b, 0x0d, 0x4b, 0x0d, 0x7b, 0x0d, 0xab, 0x0d, 0xdb, 0x0d, 0x05, 0x8b, + 0x0d, 0xbb, 0x0d, 0xeb, 0x0d, 0x03, 0x04, 0x0d, 0x14, 0x0d, 0x34, 0x0d, + 0x44, 0x0d, 0x04, 0x6a, 0x54, 0x0d, 0x64, 0x0d, 0x84, 0x0d, 0x94, 0x40, + 0x9c, 0x0d, 0xb4, 0x0d, 0xc4, 0x0d, 0xe4, 0x0d, 0xf4, 0x0d, 0x08, 0x3b, + 0x0d, 0x01, 0x24, 0x0d, 0x01, 0x0b, 0x0d, 0x01, 0xf4, 0x0d, 0x01, 0xdb, + 0x0d, 0x01, 0xc4, 0x0d, 0x01, 0xab, 0x0d, 0x01, 0x94, 0x0d, 0x01, 0x7b, + 0x0d, 0x01, 0x64, 0x0d, 0x01, 0x30, 0x0d, 0x01, 0x24, 0x0d, 0x01, 0x00, + 0x0d, 0x01, 0xf4, 0x0d, 0x01, 0xd0, 0x0d, 0x01, 0xc4, 0x0d, 0x01, 0xa0, + 0x0d, 0x01, 0x94, 0x0d, 0x01, 0x70, 0x0d, 0x01, 0x64, 0x0d, 0x01, 0x40, + 0x0d, 0x01, 0x34, 0x0d, 0x01, 0x10, 0x0d, 0x01, 0x04, 0x0d, 0x01, 0x39, + 0xe0, 0x0d, 0x01, 0xd4, 0x0d, 0x01, 0xb0, 0x0d, 0x01, 0xa4, 0x0d, 0x01, + 0x80, 0x0d, 0x01, 0x14, 0x0d, 0x44, 0x0d, 0x74, 0x0d, 0x03, 0x24, 0x0d, + 0x54, 0x0d, 0x84, 0x0d, 0xb4, 0x0d, 0xe4, 0x0d, 0x05, 0x54, 0x0d, 0x64, + 0x0d, 0x94, 0x0d, 0xf4, 0x0d, 0x04, 0x40, 0x0d, 0x01, 0x02, 0x00, 0x0d, + 0x30, 0x0d, 0x02, 0x06, 0x08, 0x0a, 0x07, 0x01, 0x04, 0x04, 0x09, 0x05, + 0x09, 0x05, 0x09, 0x03, 0x00, 0x0b, 0x10, 0xc0, 0x0b, 0xf0, 0x0b, 0x02, + 0x0b, 0xb8, 0xff, 0xc0, 0x40, 0x10, 0x1a, 0x1e, 0x48, 0xaf, 0x0b, 0x01, + 0x90, 0x0b, 0x01, 0x7f, 0x0b, 0x01, 0x00, 0x0b, 0x01, 0x0b, 0xb8, 0xff, + 0xc0, 0xb5, 0x0b, 0x0f, 0x48, 0x0b, 0x02, 0x03, 0xb8, 0xff, 0xf0, 0x40, + 0x29, 0x10, 0x03, 0x20, 0x03, 0x02, 0xe0, 0x03, 0xf0, 0x03, 0x02, 0x1f, + 0x03, 0xaf, 0x03, 0xbf, 0x03, 0xcf, 0x03, 0x04, 0x03, 0x72, 0x07, 0x01, + 0x34, 0x07, 0x44, 0x07, 0x54, 0x07, 0x03, 0x04, 0x07, 0x0a, 0x01, 0x04, + 0x08, 0x05, 0x03, 0x03, 0x00, 0x12, 0x00, 0x3f, 0x32, 0x3f, 0x33, 0x17, + 0x39, 0x5d, 0x5d, 0x01, 0x2f, 0x5d, 0x5d, 0x71, 0x38, 0x33, 0x2f, 0x2b, + 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x38, 0x33, 0x12, 0x39, 0x39, 0x2f, + 0x2f, 0x12, 0x17, 0x39, 0x32, 0x33, 0x5d, 0x5f, 0x5d, 0x5d, 0x71, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x72, + 0x72, 0x5e, 0x5d, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x31, 0x30, 0x5e, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x21, 0x09, 0x01, 0x23, 0x09, 0x01, 0x33, 0x09, 0x01, 0x33, 0x09, + 0x01, 0x04, 0x58, 0xfe, 0x59, 0xfe, 0x50, 0xd3, 0x02, 0x18, 0xfe, 0x11, + 0xd3, 0x01, 0x88, 0x01, 0x7d, 0xd3, 0xfe, 0x1e, 0x02, 0x0b, 0x02, 0x68, + 0xfd, 0x98, 0x02, 0xdc, 0x02, 0xa5, 0xfd, 0xd7, 0x02, 0x29, 0xfd, 0x62, + 0xfd, 0x1d, 0x00, 0x00, 0x00, 0x01, 0x00, 0x2d, 0x00, 0x00, 0x05, 0x29, + 0x05, 0x81, 0x00, 0x08, 0x02, 0x53, 0x40, 0x14, 0x1e, 0x07, 0x01, 0x0c, + 0x07, 0x01, 0x07, 0x18, 0x0c, 0x0f, 0x48, 0x11, 0x05, 0x01, 0x03, 0x05, + 0x01, 0x10, 0x03, 0x05, 0xb8, 0xff, 0xe8, 0x40, 0xff, 0x0c, 0x0f, 0x48, + 0x05, 0x04, 0x0e, 0x02, 0x01, 0x08, 0x0e, 0x07, 0x69, 0x08, 0xa9, 0x08, + 0x02, 0x06, 0x08, 0x16, 0x08, 0x36, 0x08, 0x46, 0x08, 0x04, 0x0e, 0x08, + 0x06, 0x01, 0x5a, 0x26, 0x02, 0x56, 0x02, 0x96, 0x02, 0x03, 0x76, 0x02, + 0xe6, 0x02, 0x02, 0x39, 0x02, 0x49, 0x02, 0x02, 0x06, 0x02, 0x01, 0x10, + 0x02, 0x99, 0x0a, 0xa9, 0x0a, 0xc9, 0x0a, 0x03, 0x56, 0x0a, 0x01, 0x09, + 0x0a, 0x39, 0x0a, 0x02, 0x19, 0x0a, 0x59, 0x0a, 0x89, 0x0a, 0xf9, 0x0a, + 0x04, 0x06, 0x0a, 0x01, 0xca, 0xf9, 0x0a, 0x01, 0xe6, 0x0a, 0x01, 0x09, + 0x0a, 0x19, 0x0a, 0xb9, 0x0a, 0xc9, 0x0a, 0x04, 0xc6, 0x0a, 0x01, 0x59, + 0x0a, 0x79, 0x0a, 0xa9, 0x0a, 0x03, 0x36, 0x0a, 0x01, 0x29, 0x0a, 0x39, + 0x0a, 0xb9, 0x0a, 0xe9, 0x0a, 0x04, 0x0b, 0x0a, 0x01, 0x99, 0xf9, 0x0a, + 0x01, 0xc6, 0x0a, 0xd6, 0x0a, 0x02, 0xb2, 0x0a, 0x01, 0xa4, 0x0a, 0x01, + 0x96, 0x0a, 0x01, 0x82, 0x0a, 0x01, 0x74, 0x0a, 0x01, 0x56, 0x0a, 0x66, + 0x0a, 0x02, 0x42, 0x0a, 0x01, 0x24, 0x0a, 0x34, 0x0a, 0x02, 0x12, 0x0a, + 0x01, 0x04, 0x0a, 0x01, 0xf4, 0x0a, 0x01, 0xe6, 0x0a, 0x01, 0xc4, 0x0a, + 0xd4, 0x0a, 0x02, 0xa6, 0x0a, 0xb6, 0x0a, 0x02, 0x92, 0x0a, 0x01, 0x84, + 0x0a, 0x01, 0x76, 0x0a, 0x01, 0x62, 0x0a, 0x01, 0x54, 0x0a, 0x01, 0x36, + 0x0a, 0x46, 0x0a, 0x02, 0x24, 0x0a, 0x01, 0x16, 0x0a, 0x01, 0x04, 0x0a, + 0x01, 0xf2, 0x0a, 0x01, 0x01, 0xd0, 0x0a, 0xe0, 0x0a, 0x02, 0xc4, 0x0a, + 0x01, 0xa0, 0x0a, 0xb0, 0x0a, 0x02, 0x94, 0x0a, 0x01, 0x70, 0x0a, 0x01, + 0x64, 0x0a, 0x01, 0x40, 0x0a, 0x01, 0x14, 0x0a, 0x24, 0x0a, 0x34, 0x0a, + 0x03, 0x00, 0x0a, 0x01, 0x69, 0xe4, 0x0a, 0xf4, 0x0a, 0x02, 0xd0, 0x0a, + 0x40, 0xb6, 0x01, 0xa4, 0x0a, 0xb4, 0x0a, 0xc4, 0x0a, 0x03, 0x80, 0x0a, + 0x90, 0x0a, 0x02, 0x74, 0x0a, 0x01, 0x50, 0x0a, 0x60, 0x0a, 0x02, 0x44, + 0x0a, 0x01, 0x20, 0x0a, 0x01, 0x04, 0x0a, 0x14, 0x0a, 0x02, 0xf4, 0x0a, + 0x01, 0xe0, 0x0a, 0x01, 0xc4, 0x0a, 0xd4, 0x0a, 0x02, 0xb0, 0x0a, 0x01, + 0x54, 0x0a, 0x64, 0x0a, 0x74, 0x0a, 0x94, 0x0a, 0xa4, 0x0a, 0x05, 0x30, + 0x0a, 0x40, 0x0a, 0x02, 0x24, 0x0a, 0x01, 0x00, 0x0a, 0x01, 0xc4, 0x0a, + 0xf4, 0x0a, 0x02, 0x90, 0x0a, 0x01, 0x04, 0x0a, 0x14, 0x0a, 0x24, 0x0a, + 0x44, 0x0a, 0x54, 0x0a, 0x74, 0x0a, 0x84, 0x0a, 0x07, 0x39, 0xe0, 0x0a, + 0x01, 0x84, 0x0a, 0xa4, 0x0a, 0xd4, 0x0a, 0x03, 0x70, 0x0a, 0x01, 0x04, + 0x0a, 0x24, 0x0a, 0x34, 0x0a, 0x54, 0x0a, 0x64, 0x0a, 0x05, 0xe4, 0x0a, + 0xf4, 0x0a, 0x02, 0xc0, 0x0a, 0x01, 0xb4, 0x0a, 0x01, 0x90, 0x0a, 0x01, + 0x04, 0x0a, 0x14, 0x0a, 0x34, 0x0a, 0x54, 0x0a, 0x84, 0x0a, 0x05, 0xd4, + 0x0a, 0xe4, 0x0a, 0x02, 0xbb, 0x0a, 0x01, 0xa4, 0x0a, 0x01, 0x70, 0x0a, + 0x01, 0x02, 0x30, 0x0a, 0x60, 0x0a, 0x02, 0x0f, 0x0a, 0x2f, 0x0a, 0x02, + 0x00, 0x03, 0x3b, 0x03, 0x4b, 0x03, 0x7b, 0x03, 0x03, 0x03, 0x01, 0x08, + 0x04, 0x03, 0x01, 0x12, 0x00, 0x3f, 0x3f, 0x33, 0x12, 0x39, 0x5d, 0x11, + 0x33, 0x01, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5f, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x72, 0x72, + 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, + 0x71, 0xfd, 0x39, 0xce, 0x5e, 0x5d, 0x5d, 0x32, 0x2b, 0x01, 0x18, 0x10, + 0x4d, 0xe6, 0x32, 0x31, 0x30, 0x2b, 0x5f, 0x5e, 0x5d, 0x5d, 0x2b, 0x5d, + 0x5d, 0x01, 0x11, 0x23, 0x11, 0x01, 0x33, 0x09, 0x01, 0x33, 0x03, 0x09, + 0xbe, 0xfd, 0xe2, 0xd2, 0x01, 0xad, 0x01, 0xab, 0xd2, 0x02, 0x48, 0xfd, + 0xb8, 0x02, 0x48, 0x03, 0x39, 0xfd, 0x61, 0x02, 0x9f, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x41, 0x00, 0x00, 0x04, 0xa3, 0x05, 0x81, 0x00, 0x09, + 0x00, 0x7a, 0x40, 0x23, 0x64, 0x04, 0x74, 0x04, 0x84, 0x04, 0x03, 0x6d, + 0x03, 0x7d, 0x03, 0x8d, 0x03, 0x03, 0x5b, 0x03, 0x01, 0x29, 0x03, 0x39, + 0x03, 0x49, 0x03, 0x03, 0x72, 0x08, 0x82, 0x08, 0x02, 0x54, 0x08, 0x64, + 0x08, 0x02, 0x08, 0xb8, 0xff, 0xf0, 0x40, 0x09, 0x0a, 0x0d, 0x48, 0x09, + 0x03, 0x10, 0x07, 0x01, 0x07, 0xb8, 0xff, 0xc0, 0x40, 0x12, 0x0c, 0x11, + 0x48, 0x07, 0x08, 0x04, 0x0f, 0x02, 0x1f, 0x02, 0x02, 0x02, 0x40, 0x0c, + 0x0f, 0x48, 0x02, 0x0b, 0xb8, 0xff, 0xc0, 0x40, 0x0e, 0x0d, 0x11, 0x48, + 0x07, 0x03, 0x04, 0x5f, 0x05, 0x03, 0x02, 0x08, 0x5f, 0x01, 0x12, 0x00, + 0x3f, 0xed, 0x32, 0x3f, 0xed, 0x32, 0x32, 0x01, 0x2b, 0x2f, 0x2b, 0x5d, + 0x33, 0x33, 0x2f, 0x2b, 0x5d, 0x33, 0x33, 0x31, 0x30, 0x2b, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x29, 0x01, 0x35, 0x01, 0x21, 0x35, 0x21, 0x15, + 0x01, 0x21, 0x04, 0xa3, 0xfb, 0x9e, 0x03, 0x5a, 0xfc, 0xef, 0x03, 0xea, + 0xfc, 0xa6, 0x03, 0x89, 0x8f, 0x04, 0x56, 0x9c, 0x8b, 0xfb, 0xa6, 0x00, + 0x00, 0x01, 0x00, 0x92, 0xfe, 0x57, 0x02, 0x29, 0x05, 0xcc, 0x00, 0x07, + 0x00, 0x31, 0x40, 0x1e, 0x07, 0x30, 0x02, 0x01, 0xe0, 0x02, 0x01, 0x02, + 0x04, 0xf1, 0x3f, 0x01, 0x01, 0x8f, 0x01, 0xbf, 0x01, 0x02, 0x20, 0x01, + 0x01, 0x01, 0x04, 0xf5, 0x01, 0x00, 0x05, 0xf5, 0x00, 0x1b, 0x00, 0x3f, + 0xed, 0x3f, 0xed, 0x01, 0x2f, 0x5d, 0x5d, 0x71, 0xed, 0xcd, 0x5d, 0x71, + 0x32, 0x31, 0x30, 0x13, 0x11, 0x21, 0x15, 0x23, 0x11, 0x33, 0x15, 0x92, + 0x01, 0x97, 0xe9, 0xe9, 0xfe, 0x57, 0x07, 0x75, 0x81, 0xf9, 0x8d, 0x81, + 0x00, 0x01, 0x00, 0x00, 0xff, 0xec, 0x02, 0x39, 0x05, 0xcc, 0x00, 0x03, + 0x00, 0x47, 0x40, 0x28, 0x78, 0x01, 0x88, 0x01, 0x02, 0x00, 0x18, 0x0d, + 0x11, 0x48, 0x09, 0x03, 0x19, 0x03, 0x49, 0x03, 0x03, 0x46, 0x02, 0x01, + 0x0a, 0x02, 0x1a, 0x02, 0x2a, 0x02, 0x03, 0x03, 0x10, 0x00, 0x03, 0x10, + 0x03, 0x20, 0x03, 0x80, 0x03, 0x04, 0x03, 0x01, 0xb8, 0xff, 0xf0, 0xb7, + 0x8f, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x13, 0x00, 0x3f, 0x3f, 0x01, + 0x2f, 0x5d, 0x38, 0xcd, 0x5d, 0x38, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x2b, + 0x5d, 0x05, 0x01, 0x33, 0x01, 0x01, 0x97, 0xfe, 0x69, 0x9e, 0x01, 0x9b, + 0x14, 0x05, 0xe0, 0xfa, 0x20, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, + 0xfe, 0x57, 0x01, 0xa7, 0x05, 0xcc, 0x00, 0x07, 0x00, 0x31, 0x40, 0x1f, + 0x04, 0x3f, 0x00, 0x01, 0xef, 0x00, 0x01, 0x00, 0x07, 0xf1, 0x40, 0x02, + 0x50, 0x02, 0x02, 0xc0, 0x02, 0xd0, 0x02, 0xe0, 0x02, 0x03, 0x02, 0x04, + 0xf5, 0x05, 0x00, 0x01, 0xf5, 0x00, 0x1b, 0x00, 0x3f, 0xed, 0x3f, 0xed, + 0x01, 0x2f, 0x5d, 0x71, 0xfd, 0xcd, 0x5d, 0x71, 0x32, 0x31, 0x30, 0x13, + 0x35, 0x33, 0x11, 0x23, 0x35, 0x21, 0x11, 0x10, 0xe9, 0xe9, 0x01, 0x97, + 0xfe, 0x57, 0x81, 0x06, 0x73, 0x81, 0xf8, 0x8b, 0x00, 0x01, 0x00, 0x0a, + 0x02, 0xa1, 0x03, 0xb7, 0x05, 0x81, 0x00, 0x06, 0x02, 0xf3, 0xb5, 0x00, + 0x18, 0x12, 0x16, 0x48, 0x02, 0xb8, 0xff, 0xe8, 0xb3, 0x12, 0x16, 0x48, + 0x05, 0xb8, 0xff, 0xe8, 0x40, 0x2f, 0x12, 0x16, 0x48, 0x76, 0x05, 0x86, + 0x05, 0x02, 0x04, 0x18, 0x12, 0x16, 0x48, 0x79, 0x04, 0x89, 0x04, 0x02, + 0x03, 0x36, 0x06, 0x46, 0x06, 0x02, 0x66, 0x06, 0x76, 0x06, 0x86, 0x06, + 0xe6, 0x06, 0x04, 0x06, 0x06, 0x16, 0x06, 0x26, 0x06, 0x46, 0x06, 0x56, + 0x06, 0x66, 0x06, 0x06, 0x06, 0xb8, 0xff, 0xc0, 0xb3, 0x30, 0x41, 0x48, + 0x06, 0xb8, 0xff, 0xc0, 0x40, 0x39, 0x12, 0x16, 0x48, 0x06, 0x05, 0x04, + 0x39, 0x03, 0x49, 0x03, 0x02, 0x69, 0x03, 0x79, 0x03, 0x89, 0x03, 0x03, + 0x09, 0x03, 0x19, 0x03, 0x29, 0x03, 0x59, 0x03, 0x69, 0x03, 0x05, 0x09, + 0x03, 0x40, 0x12, 0x16, 0x48, 0x03, 0x06, 0x01, 0x16, 0x01, 0x86, 0x01, + 0x03, 0x39, 0x26, 0x01, 0x36, 0x01, 0x46, 0x01, 0xf6, 0x01, 0x04, 0xe6, + 0x01, 0x01, 0x01, 0xb8, 0xff, 0xc0, 0xb6, 0x3c, 0x3f, 0x48, 0x99, 0x01, + 0x01, 0x01, 0xb8, 0xff, 0xe0, 0x40, 0xff, 0x1e, 0x21, 0x48, 0x38, 0x01, + 0x48, 0x01, 0x02, 0x27, 0x01, 0x01, 0x16, 0x01, 0x01, 0xb7, 0x01, 0xc7, + 0x01, 0x02, 0x06, 0x01, 0x46, 0x01, 0x56, 0x01, 0x66, 0x01, 0x96, 0x01, + 0xa6, 0x01, 0x06, 0x09, 0x01, 0x06, 0x08, 0x01, 0xf6, 0x08, 0x01, 0xa4, + 0x08, 0x01, 0x79, 0x08, 0x01, 0x06, 0x08, 0x01, 0xf6, 0x08, 0x01, 0xc9, + 0x08, 0xd9, 0x08, 0x02, 0xbb, 0x08, 0x01, 0x09, 0x08, 0x19, 0x08, 0x29, + 0x08, 0xa9, 0x08, 0x04, 0xc9, 0xc9, 0x08, 0xd9, 0x08, 0x02, 0x36, 0x08, + 0x76, 0x08, 0x86, 0x08, 0x96, 0x08, 0x04, 0x99, 0x08, 0xe9, 0x08, 0x02, + 0x66, 0x08, 0x76, 0x08, 0x02, 0x09, 0x08, 0x19, 0x08, 0x39, 0x08, 0x03, + 0xc6, 0x08, 0x01, 0x8b, 0x08, 0x01, 0x39, 0x08, 0x49, 0x08, 0x79, 0x08, + 0x03, 0x2b, 0x08, 0x01, 0x04, 0x08, 0x01, 0x98, 0xe4, 0x08, 0xf4, 0x08, + 0x02, 0xd0, 0x08, 0x01, 0xa2, 0x08, 0xb2, 0x08, 0xc2, 0x08, 0x03, 0x84, + 0x08, 0x94, 0x08, 0x02, 0x52, 0x08, 0x62, 0x08, 0x72, 0x08, 0x03, 0x40, + 0x08, 0x01, 0x32, 0x08, 0x01, 0x24, 0x08, 0x01, 0x02, 0x08, 0x12, 0x08, + 0x02, 0xe4, 0x08, 0xf4, 0x08, 0x02, 0xd6, 0x08, 0x01, 0xc4, 0x08, 0x01, + 0x92, 0x08, 0xa2, 0x08, 0xb2, 0x08, 0x03, 0x74, 0x08, 0x84, 0x08, 0x02, + 0x66, 0x08, 0x01, 0x32, 0x08, 0x42, 0x08, 0x52, 0x08, 0x03, 0x14, 0x08, + 0x24, 0x08, 0x02, 0x06, 0x08, 0x01, 0xf2, 0x08, 0x01, 0xd4, 0x08, 0xe4, + 0x08, 0x02, 0xa6, 0x08, 0xb6, 0x08, 0x02, 0x82, 0x08, 0x92, 0x08, 0x02, + 0x64, 0x08, 0x74, 0x08, 0x02, 0x56, 0x08, 0x01, 0x34, 0x08, 0x44, 0x08, + 0x02, 0x20, 0x08, 0x01, 0x04, 0x08, 0x14, 0x08, 0x02, 0x68, 0xe6, 0x08, + 0xf6, 0x08, 0x02, 0xc0, 0x08, 0x01, 0x92, 0x08, 0xa2, 0x08, 0x40, 0x18, + 0xb2, 0x08, 0x03, 0x74, 0x08, 0x84, 0x08, 0x02, 0x52, 0x08, 0x62, 0x08, + 0x02, 0x34, 0x08, 0x44, 0x08, 0x02, 0x16, 0x08, 0x26, 0x08, 0x02, 0x08, + 0xb8, 0xff, 0x80, 0x40, 0x18, 0x55, 0x58, 0x48, 0xb6, 0x08, 0xc6, 0x08, + 0x02, 0x84, 0x08, 0x94, 0x08, 0xa4, 0x08, 0x03, 0x66, 0x08, 0x76, 0x08, + 0x02, 0x44, 0x08, 0x01, 0x08, 0xb8, 0xff, 0xc0, 0xb6, 0x48, 0x4b, 0x48, + 0xe4, 0x08, 0x01, 0x08, 0xb8, 0xff, 0xc0, 0x40, 0x0c, 0x42, 0x45, 0x48, + 0x94, 0x08, 0x01, 0x72, 0x08, 0x82, 0x08, 0x02, 0x08, 0xb8, 0xff, 0x80, + 0x40, 0x78, 0x3b, 0x3e, 0x48, 0x12, 0x08, 0x22, 0x08, 0x02, 0x01, 0x00, + 0x08, 0x01, 0x38, 0xf0, 0x08, 0x01, 0xd4, 0x08, 0xe4, 0x08, 0x02, 0xb0, + 0x08, 0x01, 0x64, 0x08, 0x84, 0x08, 0x94, 0x08, 0xa4, 0x08, 0x04, 0x40, + 0x08, 0x50, 0x08, 0x02, 0x24, 0x08, 0x34, 0x08, 0x02, 0xe4, 0x08, 0xf4, + 0x08, 0x02, 0xab, 0x08, 0xbb, 0x08, 0x02, 0x74, 0x08, 0x84, 0x08, 0x94, + 0x08, 0x03, 0x4b, 0x08, 0x01, 0x34, 0x08, 0x01, 0x0b, 0x08, 0x01, 0xeb, + 0x08, 0xfb, 0x08, 0x02, 0xd0, 0x08, 0x01, 0xc4, 0x08, 0x01, 0xb0, 0x08, + 0x01, 0x84, 0x08, 0x94, 0x08, 0xa4, 0x08, 0x03, 0x60, 0x08, 0x70, 0x08, + 0x02, 0x02, 0x00, 0x08, 0x10, 0x08, 0x40, 0x08, 0x50, 0x08, 0x04, 0x08, + 0x22, 0x01, 0x01, 0x03, 0x01, 0x13, 0x01, 0x02, 0x01, 0x04, 0x03, 0x03, + 0x03, 0x00, 0x00, 0x2f, 0x32, 0x2f, 0x3f, 0x33, 0x5d, 0x5d, 0x01, 0x5e, + 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5f, 0x5d, + 0x2b, 0x5d, 0x5d, 0x2b, 0x5d, 0x2b, 0x71, 0x71, 0x71, 0x71, 0x2b, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x72, 0x72, 0x5e, 0x5d, 0x5d, + 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x72, 0x19, 0x2f, 0x5e, 0x5d, 0x5d, + 0x71, 0x71, 0x71, 0x2b, 0x71, 0x2b, 0x71, 0x72, 0x5e, 0x5d, 0xcd, 0x2b, + 0x5e, 0x5d, 0x71, 0x72, 0x33, 0x33, 0xcd, 0x2b, 0x2b, 0x5d, 0x71, 0x72, + 0x31, 0x30, 0x5f, 0x5d, 0x2b, 0x5d, 0x2b, 0x2b, 0x2b, 0x09, 0x02, 0x23, + 0x01, 0x33, 0x01, 0x03, 0x13, 0xfe, 0xcb, 0xfe, 0xce, 0xa2, 0x01, 0x70, + 0xcb, 0x01, 0x72, 0x02, 0xa1, 0x02, 0x79, 0xfd, 0x87, 0x02, 0xe0, 0xfd, + 0x20, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xe1, 0xfe, 0x69, 0x04, 0x8a, + 0xfe, 0xeb, 0x00, 0x03, 0x00, 0x23, 0x40, 0x17, 0x10, 0x02, 0x60, 0x02, + 0x80, 0x02, 0xa0, 0x02, 0xd0, 0x02, 0x05, 0x60, 0x02, 0x80, 0x02, 0xf0, + 0x02, 0x03, 0x02, 0x00, 0x00, 0xba, 0x01, 0x00, 0x2f, 0xed, 0x01, 0x2f, + 0x2f, 0x5d, 0x71, 0x31, 0x30, 0x03, 0x35, 0x21, 0x15, 0x1f, 0x04, 0xa9, + 0xfe, 0x69, 0x82, 0x82, 0x00, 0x01, 0x00, 0x6a, 0x04, 0xb1, 0x02, 0x12, + 0x05, 0xe4, 0x00, 0x05, 0x00, 0x2f, 0x40, 0x1f, 0x75, 0x03, 0x85, 0x03, + 0x02, 0x40, 0x04, 0x80, 0x04, 0x02, 0x04, 0x40, 0x10, 0x01, 0x01, 0x01, + 0x02, 0x95, 0x80, 0x0f, 0x00, 0x2f, 0x00, 0x3f, 0x00, 0x7f, 0x00, 0xef, + 0x00, 0x05, 0x00, 0x00, 0x2f, 0x5d, 0x1a, 0xed, 0x01, 0x2f, 0x5d, 0x1a, + 0xcd, 0x5d, 0x31, 0x30, 0x5d, 0x09, 0x01, 0x35, 0x33, 0x13, 0x15, 0x01, + 0xb4, 0xfe, 0xb6, 0xcf, 0xd9, 0x04, 0xb1, 0x01, 0x16, 0x1d, 0xfe, 0xe1, + 0x14, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x57, 0xff, 0xec, 0x04, 0x73, + 0x04, 0x4e, 0x00, 0x32, 0x00, 0x41, 0x00, 0xa1, 0x40, 0x32, 0x79, 0x3d, + 0x89, 0x3d, 0x02, 0x79, 0x0c, 0x89, 0x0c, 0x02, 0x02, 0x28, 0x09, 0x0d, + 0x48, 0x0a, 0x05, 0x1a, 0x05, 0x02, 0x2b, 0x18, 0x09, 0x11, 0x48, 0x05, + 0x1c, 0x15, 0x1c, 0x02, 0x25, 0x25, 0x1e, 0x46, 0x40, 0x2e, 0x09, 0x6f, + 0x38, 0x7f, 0x38, 0x8f, 0x38, 0x03, 0x38, 0x43, 0x80, 0x14, 0x47, 0x15, + 0xb8, 0xff, 0xc0, 0x40, 0x14, 0x15, 0x1c, 0x48, 0x15, 0x15, 0x3f, 0x47, + 0x1f, 0x03, 0x01, 0x03, 0x30, 0x43, 0xc0, 0x43, 0x02, 0xa0, 0x43, 0x01, + 0x43, 0xb8, 0xff, 0xc0, 0x40, 0x20, 0x1e, 0x23, 0x48, 0x21, 0x51, 0x28, + 0x16, 0x39, 0x51, 0x09, 0x09, 0x1a, 0x33, 0x5f, 0x14, 0x01, 0x2f, 0x14, + 0x8f, 0x14, 0x02, 0x14, 0x14, 0x0f, 0x50, 0x1a, 0x10, 0x2e, 0x33, 0x50, + 0x00, 0x16, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0xed, 0x33, 0x2f, 0x5d, 0x71, + 0x11, 0x12, 0x39, 0x2f, 0xed, 0x3f, 0xed, 0x01, 0x2b, 0x5d, 0x71, 0x2f, + 0x5d, 0xed, 0x33, 0x2f, 0x2b, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x32, 0x32, + 0x1a, 0xed, 0x32, 0x2f, 0x31, 0x30, 0x5d, 0x2b, 0x5d, 0x2b, 0x00, 0x5d, + 0x5d, 0x05, 0x22, 0x26, 0x35, 0x34, 0x3e, 0x02, 0x3f, 0x01, 0x35, 0x34, + 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, + 0x16, 0x15, 0x11, 0x14, 0x16, 0x33, 0x32, 0x36, 0x37, 0x15, 0x0e, 0x01, + 0x23, 0x22, 0x2e, 0x02, 0x27, 0x23, 0x0e, 0x03, 0x27, 0x32, 0x3e, 0x02, + 0x3d, 0x01, 0x07, 0x0e, 0x03, 0x15, 0x14, 0x16, 0x01, 0x9e, 0xa3, 0xa4, + 0x51, 0x83, 0xa8, 0x57, 0xf3, 0x1c, 0x3a, 0x57, 0x3b, 0x34, 0x54, 0x3e, + 0x26, 0x06, 0xbc, 0x0a, 0x38, 0x67, 0x9b, 0x6e, 0xcc, 0xce, 0x2a, 0x3b, + 0x0f, 0x1e, 0x0e, 0x22, 0x43, 0x26, 0x33, 0x49, 0x2e, 0x18, 0x03, 0x06, + 0x1d, 0x45, 0x5c, 0x75, 0x23, 0x56, 0x81, 0x55, 0x2a, 0xc5, 0x42, 0x77, + 0x5a, 0x35, 0x5f, 0x14, 0xac, 0x96, 0x6b, 0x89, 0x4e, 0x1e, 0x02, 0x04, + 0x3b, 0x43, 0x5e, 0x3a, 0x1b, 0x0f, 0x27, 0x43, 0x33, 0x11, 0x40, 0x6b, + 0x4e, 0x2b, 0xbb, 0xb1, 0xfe, 0x2e, 0x50, 0x51, 0x04, 0x03, 0x70, 0x08, + 0x08, 0x1b, 0x37, 0x51, 0x36, 0x34, 0x54, 0x3b, 0x20, 0x87, 0x3f, 0x62, + 0x74, 0x35, 0x59, 0x04, 0x01, 0x11, 0x32, 0x5a, 0x49, 0x58, 0x60, 0x00, + 0x00, 0x02, 0x00, 0x84, 0xff, 0xec, 0x04, 0x1d, 0x05, 0xcc, 0x00, 0x1f, + 0x00, 0x33, 0x00, 0x92, 0x40, 0x09, 0x69, 0x31, 0x79, 0x31, 0x02, 0x79, + 0x23, 0x01, 0x1f, 0xb8, 0xff, 0xe0, 0x40, 0x18, 0x07, 0x0a, 0x48, 0x86, + 0x1e, 0x96, 0x1e, 0x02, 0x49, 0x1b, 0x59, 0x1b, 0x02, 0x49, 0x04, 0x59, + 0x04, 0x02, 0x86, 0x01, 0x96, 0x01, 0x02, 0x01, 0xb8, 0xff, 0xe0, 0x40, + 0x3f, 0x07, 0x0a, 0x48, 0x00, 0x47, 0x40, 0xa0, 0x20, 0x01, 0x20, 0x35, + 0x80, 0x2a, 0x05, 0x13, 0x46, 0x00, 0x12, 0x10, 0x12, 0x30, 0x12, 0xf0, + 0x12, 0x04, 0x08, 0x12, 0xb0, 0x35, 0x01, 0x3f, 0x35, 0x01, 0x70, 0x35, + 0x90, 0x35, 0x02, 0x1f, 0x35, 0x01, 0xff, 0x35, 0x01, 0xc0, 0x35, 0xe0, + 0x35, 0x02, 0x19, 0x25, 0x50, 0x1d, 0x10, 0x12, 0x00, 0x0c, 0x15, 0x05, + 0x2f, 0x50, 0x02, 0x16, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0x3f, 0x3f, 0xed, + 0x32, 0x01, 0x5d, 0x5d, 0x71, 0x71, 0x72, 0x72, 0x2f, 0x5e, 0x5d, 0xed, + 0x32, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x31, 0x30, 0x2b, 0x5d, + 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x01, 0x10, 0x21, 0x22, 0x26, 0x27, + 0x23, 0x14, 0x0e, 0x02, 0x07, 0x23, 0x3e, 0x03, 0x35, 0x11, 0x33, 0x11, + 0x14, 0x06, 0x07, 0x06, 0x07, 0x33, 0x3e, 0x01, 0x33, 0x32, 0x12, 0x03, + 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, + 0x32, 0x3e, 0x02, 0x04, 0x1d, 0xfe, 0x72, 0x7b, 0xa3, 0x33, 0x02, 0x03, + 0x03, 0x03, 0x01, 0xae, 0x01, 0x02, 0x02, 0x01, 0xb4, 0x01, 0x01, 0x01, + 0x01, 0x04, 0x32, 0xa5, 0x7a, 0xcd, 0xc1, 0xbd, 0x1c, 0x3e, 0x60, 0x45, + 0x47, 0x6d, 0x49, 0x26, 0x26, 0x49, 0x6c, 0x46, 0x42, 0x60, 0x40, 0x1f, + 0x02, 0x22, 0xfd, 0xca, 0x59, 0x63, 0x1a, 0x38, 0x30, 0x22, 0x04, 0x09, + 0x2b, 0x3c, 0x48, 0x27, 0x04, 0xed, 0xfe, 0x59, 0x1e, 0x37, 0x15, 0x19, + 0x16, 0x68, 0x5a, 0xfe, 0xec, 0xfe, 0xe2, 0x70, 0xa0, 0x67, 0x30, 0x2e, + 0x66, 0xa6, 0x78, 0x74, 0x9e, 0x63, 0x2b, 0x2e, 0x66, 0xa3, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x57, 0xff, 0xec, 0x03, 0xca, 0x04, 0x4e, 0x00, 0x27, + 0x00, 0x75, 0x40, 0x51, 0x79, 0x10, 0x01, 0x79, 0x17, 0x01, 0x63, 0x25, + 0x01, 0x63, 0x03, 0x01, 0x20, 0x46, 0x1f, 0x1f, 0x08, 0x46, 0xa0, 0x09, + 0x01, 0x09, 0x09, 0x29, 0x00, 0x47, 0x1f, 0x13, 0x01, 0x13, 0x23, 0x50, + 0x1a, 0x1f, 0x20, 0x7f, 0x20, 0x8f, 0x20, 0xdf, 0x20, 0x04, 0x20, 0x20, + 0x1a, 0x10, 0x20, 0x08, 0x70, 0x08, 0x80, 0x08, 0xd0, 0x08, 0xe0, 0x08, + 0x05, 0x00, 0x08, 0x10, 0x08, 0x60, 0x08, 0x70, 0x08, 0x80, 0x08, 0xc0, + 0x08, 0xd0, 0x08, 0x07, 0x08, 0x08, 0x05, 0x50, 0x0e, 0x16, 0x1f, 0x29, + 0x01, 0x5d, 0x00, 0x3f, 0xed, 0x33, 0x2f, 0x5d, 0x71, 0x3f, 0x33, 0x2f, + 0x5d, 0x10, 0xed, 0x01, 0x2f, 0x5d, 0xed, 0x11, 0x33, 0x7d, 0x2f, 0x71, + 0x18, 0xed, 0x33, 0x2f, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, 0x37, 0x17, 0x0e, 0x03, 0x23, 0x22, + 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x04, 0x33, 0x32, 0x1e, 0x02, 0x17, 0x07, + 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x01, 0x13, 0x1b, 0x40, 0x69, 0x4d, + 0x60, 0x81, 0x0f, 0xb6, 0x09, 0x3c, 0x67, 0x94, 0x61, 0x7f, 0xb2, 0x6f, + 0x32, 0x24, 0x41, 0x58, 0x67, 0x72, 0x3a, 0x5b, 0x8e, 0x67, 0x40, 0x0d, + 0xb9, 0x0e, 0x72, 0x69, 0x4d, 0x67, 0x40, 0x1b, 0x02, 0x22, 0x5d, 0x9c, + 0x71, 0x3e, 0x68, 0x6c, 0x0c, 0x43, 0x7c, 0x5e, 0x39, 0x56, 0x97, 0xcd, + 0x78, 0x6d, 0xa7, 0x7d, 0x55, 0x33, 0x17, 0x32, 0x57, 0x76, 0x44, 0x0e, + 0x5a, 0x6a, 0x33, 0x67, 0x9c, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x56, + 0xff, 0xec, 0x03, 0xef, 0x05, 0xcc, 0x00, 0x1f, 0x00, 0x33, 0x00, 0x7b, + 0x40, 0x57, 0x55, 0x22, 0x65, 0x22, 0x02, 0x5a, 0x32, 0x6a, 0x32, 0x02, + 0x39, 0x01, 0x49, 0x01, 0x02, 0x36, 0x0a, 0x46, 0x0a, 0x02, 0x09, 0x04, + 0x19, 0x04, 0x79, 0x04, 0x89, 0x04, 0x04, 0x06, 0x07, 0x16, 0x07, 0x76, + 0x07, 0x86, 0x07, 0x04, 0x13, 0x46, 0x40, 0x2a, 0x00, 0x8f, 0x12, 0xef, + 0x12, 0x02, 0x12, 0x35, 0x80, 0x20, 0x47, 0x1f, 0x06, 0x01, 0x06, 0x70, + 0x35, 0x90, 0x35, 0x02, 0x1f, 0x35, 0x01, 0xff, 0x35, 0x01, 0xc0, 0x35, + 0xe0, 0x35, 0x02, 0x19, 0x15, 0x12, 0x00, 0x0b, 0x2f, 0x50, 0x08, 0x10, + 0x00, 0x25, 0x50, 0x03, 0x16, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0xed, 0x32, + 0x3f, 0x3f, 0x01, 0x5d, 0x5d, 0x71, 0x71, 0x2f, 0x5d, 0xed, 0x1a, 0x10, + 0xdc, 0x5d, 0x32, 0x32, 0x1a, 0xed, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x25, 0x0e, 0x01, 0x23, 0x22, 0x02, 0x11, 0x10, 0x21, + 0x32, 0x16, 0x17, 0x33, 0x34, 0x2e, 0x01, 0x34, 0x35, 0x11, 0x33, 0x11, + 0x14, 0x1e, 0x02, 0x17, 0x23, 0x2e, 0x03, 0x35, 0x01, 0x14, 0x1e, 0x02, + 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, + 0x03, 0x35, 0x32, 0xa5, 0x7a, 0xcd, 0xc1, 0x01, 0x8e, 0x7b, 0xa4, 0x32, + 0x02, 0x01, 0x01, 0xb4, 0x01, 0x02, 0x02, 0x01, 0xac, 0x02, 0x03, 0x03, + 0x02, 0xfd, 0xda, 0x1c, 0x3e, 0x60, 0x45, 0x47, 0x6d, 0x49, 0x26, 0x26, + 0x4a, 0x6b, 0x46, 0x42, 0x60, 0x40, 0x1f, 0xae, 0x68, 0x5a, 0x01, 0x14, + 0x01, 0x18, 0x02, 0x36, 0x5a, 0x62, 0x0a, 0x2b, 0x2f, 0x2a, 0x09, 0x01, + 0xa3, 0xfb, 0x13, 0x27, 0x48, 0x3c, 0x2b, 0x09, 0x0a, 0x25, 0x30, 0x35, + 0x1a, 0x01, 0x70, 0x70, 0xa0, 0x67, 0x30, 0x2e, 0x67, 0xa6, 0x78, 0x73, + 0x9f, 0x62, 0x2b, 0x2e, 0x66, 0xa3, 0x00, 0x00, 0x00, 0x02, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x18, 0x04, 0x4e, 0x00, 0x1c, 0x00, 0x25, 0x00, 0x6b, + 0x40, 0x2e, 0x5a, 0x23, 0x6a, 0x23, 0x02, 0x5a, 0x1e, 0x6a, 0x1e, 0x02, + 0x55, 0x03, 0x65, 0x03, 0x02, 0x08, 0x49, 0x09, 0x09, 0x1b, 0x47, 0x40, + 0x1f, 0x1d, 0x01, 0x90, 0x1d, 0x01, 0x1d, 0x27, 0x80, 0x25, 0x00, 0x47, + 0x1f, 0x11, 0x01, 0x11, 0x30, 0x27, 0xc0, 0x27, 0xd0, 0x27, 0x03, 0x27, + 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x1e, 0x23, 0x48, 0x08, 0x08, 0x05, 0x00, + 0x50, 0x25, 0x25, 0x05, 0x20, 0x50, 0x16, 0x10, 0x05, 0x50, 0x0e, 0x16, + 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x11, 0x39, 0x2f, + 0x01, 0x2b, 0x71, 0x2f, 0x5d, 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x71, + 0x1a, 0xed, 0x32, 0x2f, 0xed, 0x31, 0x30, 0x5d, 0x00, 0x5d, 0x5d, 0x01, + 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, 0x37, 0x17, 0x0e, 0x03, 0x23, 0x22, + 0x02, 0x11, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x1d, 0x01, 0x27, + 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x01, 0x14, 0x23, 0x49, 0x72, + 0x50, 0x75, 0x8d, 0x19, 0x9e, 0x11, 0x3d, 0x66, 0x99, 0x6c, 0xf0, 0xfb, + 0x4c, 0x84, 0xb0, 0x64, 0x88, 0xb7, 0x6f, 0x2f, 0xba, 0x0f, 0x90, 0x87, + 0x2d, 0x63, 0x54, 0x3a, 0x04, 0x01, 0xf7, 0x55, 0x8f, 0x67, 0x39, 0x5e, + 0x48, 0x2d, 0x2d, 0x5b, 0x49, 0x2f, 0x01, 0x1e, 0x01, 0x1a, 0x98, 0xd3, + 0x84, 0x3b, 0x58, 0x9b, 0xd2, 0x7a, 0x18, 0x8a, 0xab, 0x9d, 0x1d, 0x4a, + 0x7f, 0x62, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1d, 0x00, 0x00, 0x02, 0x3c, + 0x05, 0xca, 0x00, 0x1b, 0x00, 0xa1, 0x40, 0x0b, 0x03, 0x0a, 0x13, 0x0a, + 0x33, 0x0a, 0x43, 0x0a, 0x04, 0x0d, 0x0a, 0xb8, 0xff, 0xe0, 0x40, 0x6a, + 0x08, 0x0c, 0x48, 0x1a, 0x0f, 0x10, 0x01, 0x0e, 0x10, 0x19, 0x10, 0x01, + 0x46, 0x05, 0x00, 0x02, 0x01, 0x12, 0x02, 0x1f, 0x1d, 0x2f, 0x1d, 0x4f, + 0x1d, 0x5f, 0x1d, 0x7f, 0x1d, 0x8f, 0x1d, 0x9f, 0x1d, 0x07, 0x0f, 0x1d, + 0x3f, 0x1d, 0x7f, 0x1d, 0xaf, 0x1d, 0xbf, 0x1d, 0xdf, 0x1d, 0xef, 0x1d, + 0x07, 0x3b, 0x5f, 0x1d, 0xbf, 0x1d, 0x02, 0x7f, 0x1d, 0x8f, 0x1d, 0x9f, + 0x1d, 0x03, 0x1d, 0x40, 0x56, 0x64, 0x48, 0x1d, 0x40, 0x27, 0x2c, 0x48, + 0x20, 0x1d, 0x30, 0x1d, 0x60, 0x1d, 0x03, 0xaf, 0x1d, 0xdf, 0x1d, 0xef, + 0x1d, 0x03, 0x40, 0x1d, 0x01, 0x0f, 0x1d, 0x2f, 0x1d, 0x02, 0x13, 0x50, + 0x0c, 0x00, 0x00, 0x03, 0x50, 0x19, 0x06, 0x0f, 0x01, 0x15, 0x00, 0x3f, + 0x3f, 0x33, 0xed, 0x32, 0x3f, 0xed, 0x01, 0x5d, 0x5d, 0x5d, 0x71, 0x2b, + 0x2b, 0x71, 0x72, 0x5e, 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0x33, 0xed, 0x32, + 0x32, 0x2f, 0x5e, 0x5d, 0x33, 0x31, 0x30, 0x00, 0x2b, 0x5e, 0x5d, 0x01, + 0x11, 0x23, 0x11, 0x23, 0x35, 0x33, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, + 0x16, 0x17, 0x15, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x1d, 0x01, 0x33, + 0x15, 0x01, 0x69, 0xb4, 0x98, 0x98, 0x16, 0x3b, 0x66, 0x51, 0x20, 0x45, + 0x1a, 0x11, 0x2d, 0x12, 0x28, 0x33, 0x1d, 0x0b, 0xd3, 0x03, 0xb7, 0xfc, + 0x49, 0x03, 0xb7, 0x83, 0x7a, 0x3b, 0x65, 0x4b, 0x2b, 0x06, 0x06, 0x89, + 0x03, 0x05, 0x16, 0x29, 0x3c, 0x27, 0x61, 0x83, 0x00, 0x02, 0x00, 0x56, + 0xfe, 0x57, 0x03, 0xef, 0x04, 0x4b, 0x00, 0x31, 0x00, 0x45, 0x00, 0xd9, + 0x40, 0x48, 0x7a, 0x31, 0x8a, 0x31, 0x02, 0x76, 0x07, 0x86, 0x07, 0x02, + 0x65, 0x3e, 0x01, 0x55, 0x0c, 0x65, 0x0c, 0x02, 0x5a, 0x3a, 0x6a, 0x3a, + 0x02, 0x26, 0x03, 0x36, 0x03, 0x02, 0x26, 0x12, 0x01, 0x29, 0x21, 0x01, + 0x09, 0x17, 0x19, 0x17, 0x79, 0x17, 0x89, 0x17, 0x04, 0x06, 0x1d, 0x16, + 0x1d, 0x76, 0x1d, 0x86, 0x1d, 0x04, 0x09, 0x2f, 0x46, 0x40, 0x32, 0x22, + 0x30, 0x0e, 0x01, 0x7f, 0x0e, 0xdf, 0x0e, 0x02, 0x0e, 0x47, 0x80, 0x06, + 0x46, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x51, 0x17, 0x1c, 0x48, 0x05, 0x05, + 0x3c, 0x47, 0x0f, 0x1a, 0x01, 0x0a, 0x1a, 0x20, 0x47, 0x40, 0x47, 0x02, + 0xcf, 0x47, 0x01, 0x00, 0x47, 0x20, 0x47, 0x90, 0x47, 0xb0, 0x47, 0x04, + 0x50, 0xdf, 0x47, 0x01, 0xc0, 0x47, 0x01, 0x4f, 0x47, 0x01, 0x80, 0x47, + 0xa0, 0x47, 0x02, 0x0f, 0x47, 0x2f, 0x47, 0x02, 0xd0, 0x47, 0xf0, 0x47, + 0x02, 0x0f, 0x47, 0x01, 0x08, 0x29, 0x0f, 0x22, 0x37, 0x50, 0x1f, 0x10, + 0x0f, 0x41, 0x50, 0x15, 0x16, 0x09, 0x50, 0x35, 0x06, 0x01, 0x26, 0x06, + 0x01, 0x06, 0x00, 0x1b, 0x00, 0x3f, 0x32, 0x5d, 0x5d, 0xed, 0x3f, 0xed, + 0x32, 0x3f, 0xed, 0x32, 0x3f, 0x01, 0x5e, 0x5d, 0x5d, 0x71, 0x71, 0x72, + 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0xed, 0x33, 0x2f, + 0x2b, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x32, 0x32, 0x1a, 0xed, 0x31, + 0x30, 0x00, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x01, 0x22, 0x2e, 0x02, 0x27, 0x37, 0x1e, 0x01, 0x33, 0x32, 0x3e, + 0x02, 0x3d, 0x01, 0x23, 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, + 0x3e, 0x02, 0x33, 0x32, 0x16, 0x17, 0x33, 0x34, 0x3e, 0x02, 0x37, 0x33, + 0x0e, 0x03, 0x15, 0x11, 0x14, 0x06, 0x13, 0x34, 0x2e, 0x02, 0x23, 0x22, + 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x02, 0x24, + 0x5d, 0x90, 0x66, 0x40, 0x0e, 0xb5, 0x12, 0x7b, 0x64, 0x3d, 0x64, 0x46, + 0x26, 0x02, 0x14, 0x3b, 0x55, 0x70, 0x48, 0x67, 0x93, 0x5d, 0x2b, 0x2b, + 0x61, 0x9b, 0x6f, 0x73, 0xa9, 0x2e, 0x02, 0x03, 0x03, 0x04, 0x02, 0xab, + 0x01, 0x02, 0x02, 0x01, 0xdf, 0x2c, 0x31, 0x50, 0x67, 0x36, 0x45, 0x63, + 0x41, 0x1f, 0x1f, 0x40, 0x62, 0x44, 0x36, 0x67, 0x52, 0x32, 0xfe, 0x57, + 0x26, 0x47, 0x62, 0x3c, 0x1a, 0x4b, 0x51, 0x22, 0x4b, 0x78, 0x56, 0xae, + 0x29, 0x4b, 0x3a, 0x23, 0x45, 0x8a, 0xcd, 0x87, 0x82, 0xd0, 0x91, 0x4d, + 0x69, 0x61, 0x19, 0x3e, 0x37, 0x28, 0x03, 0x09, 0x2b, 0x3c, 0x49, 0x27, + 0xfc, 0xc5, 0xe3, 0xe5, 0x03, 0xc6, 0x71, 0xa1, 0x66, 0x30, 0x30, 0x67, + 0xa1, 0x70, 0x75, 0x9f, 0x62, 0x2a, 0x2e, 0x64, 0x9e, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x8e, 0x00, 0x00, 0x03, 0xee, 0x05, 0xcc, 0x00, 0x21, + 0x00, 0x6d, 0xb9, 0x00, 0x08, 0xff, 0xc0, 0x40, 0x24, 0x07, 0x0b, 0x48, + 0x0b, 0x46, 0x40, 0x50, 0x0c, 0x01, 0x9f, 0x0c, 0xff, 0x0c, 0x02, 0x0c, + 0x23, 0x80, 0x00, 0x23, 0xc0, 0x23, 0xd0, 0x23, 0xe0, 0x23, 0x04, 0xc0, + 0x23, 0x01, 0x0f, 0x23, 0x01, 0x80, 0x23, 0x01, 0x23, 0xb8, 0xff, 0xc0, + 0x40, 0x20, 0x13, 0x17, 0x48, 0x1c, 0x18, 0x46, 0xc0, 0x19, 0x01, 0x00, + 0x19, 0x10, 0x19, 0x30, 0x19, 0xe0, 0x19, 0xf0, 0x19, 0x05, 0x08, 0x19, + 0x1a, 0x00, 0x19, 0x0b, 0x15, 0x00, 0x12, 0x50, 0x05, 0x10, 0x00, 0x3f, + 0xed, 0x32, 0x3f, 0x33, 0x3f, 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x32, + 0x2b, 0x5d, 0x71, 0x71, 0x72, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, + 0x31, 0x30, 0x2b, 0x01, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, + 0x23, 0x11, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x23, + 0x11, 0x33, 0x11, 0x14, 0x0e, 0x02, 0x07, 0x01, 0x3d, 0x1e, 0x46, 0x54, + 0x64, 0x3e, 0x68, 0x85, 0x4d, 0x1d, 0xb5, 0x11, 0x30, 0x58, 0x46, 0x40, + 0x67, 0x49, 0x28, 0xb4, 0xb4, 0x02, 0x03, 0x02, 0x01, 0x03, 0x81, 0x37, + 0x4d, 0x32, 0x17, 0x38, 0x65, 0x8c, 0x54, 0xfd, 0x2f, 0x02, 0xae, 0x45, + 0x68, 0x45, 0x23, 0x2e, 0x54, 0x78, 0x4b, 0xfd, 0x82, 0x05, 0xcc, 0xfe, + 0x7e, 0x21, 0x42, 0x38, 0x27, 0x07, 0x00, 0x00, 0x00, 0x02, 0x00, 0x89, + 0x00, 0x00, 0x01, 0x3d, 0x05, 0xcc, 0x00, 0x03, 0x00, 0x07, 0x00, 0x73, + 0x40, 0x0d, 0x03, 0x07, 0x46, 0x00, 0x00, 0x04, 0x10, 0x04, 0x30, 0x04, + 0x03, 0x08, 0x04, 0xb8, 0xff, 0xc0, 0x40, 0x2a, 0x15, 0x18, 0x48, 0x04, + 0x04, 0x08, 0x09, 0xff, 0x09, 0x01, 0xe0, 0x09, 0x01, 0xdf, 0x09, 0x01, + 0xb0, 0x09, 0xc0, 0x09, 0x02, 0x9f, 0x09, 0x01, 0x70, 0x09, 0x80, 0x09, + 0x02, 0x1f, 0x09, 0x01, 0x00, 0x09, 0x01, 0xf0, 0x09, 0x01, 0xdf, 0x09, + 0x01, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x11, 0x22, 0x25, 0x48, 0x4f, 0x09, + 0x01, 0x1f, 0x09, 0x01, 0x05, 0x0f, 0x04, 0x15, 0x00, 0x53, 0x01, 0x00, + 0x00, 0x3f, 0xed, 0x3f, 0x3f, 0x01, 0x5d, 0x71, 0x2b, 0x71, 0x71, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x11, 0x12, 0x39, 0x2f, 0x2b, + 0x5e, 0x5d, 0x33, 0xed, 0x32, 0x31, 0x30, 0x13, 0x35, 0x33, 0x15, 0x03, + 0x11, 0x33, 0x11, 0x89, 0xb4, 0xb4, 0xb4, 0x05, 0x20, 0xac, 0xac, 0xfa, + 0xe0, 0x04, 0x3a, 0xfb, 0xc6, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xce, + 0xfe, 0x57, 0x01, 0x3d, 0x05, 0xcc, 0x00, 0x03, 0x00, 0x17, 0x01, 0x33, + 0x40, 0x97, 0x07, 0x18, 0x0c, 0x10, 0x48, 0x07, 0x28, 0x08, 0x0b, 0x48, + 0x03, 0x04, 0x46, 0x15, 0x0c, 0x0c, 0x00, 0x00, 0x15, 0x10, 0x15, 0x20, + 0x15, 0x40, 0x15, 0x04, 0x07, 0x15, 0x15, 0x18, 0x19, 0x90, 0x19, 0x01, + 0x3f, 0x19, 0x01, 0x00, 0x19, 0x10, 0x19, 0x02, 0xdb, 0x19, 0x40, 0xd2, + 0xd5, 0x48, 0xd0, 0x19, 0xe0, 0x19, 0x02, 0x8f, 0x19, 0x01, 0x40, 0x19, + 0x50, 0x19, 0x02, 0x0f, 0x19, 0x1f, 0x19, 0x5f, 0x19, 0x6f, 0x19, 0xff, + 0x19, 0x05, 0x90, 0x19, 0xa0, 0x19, 0xe0, 0x19, 0xf0, 0x19, 0x04, 0x4f, + 0x19, 0x01, 0x00, 0x19, 0x01, 0xa0, 0x3f, 0x19, 0xaf, 0x19, 0xbf, 0x19, + 0xcf, 0x19, 0x04, 0xef, 0x19, 0x01, 0xb0, 0x19, 0xc0, 0x19, 0xd0, 0x19, + 0x03, 0x3f, 0x19, 0x4f, 0x19, 0x5f, 0x19, 0x03, 0x20, 0x19, 0x01, 0x8f, + 0x19, 0xbf, 0x19, 0xcf, 0x19, 0x03, 0x00, 0x19, 0x01, 0x6f, 0xef, 0x19, + 0x01, 0xd0, 0x19, 0x01, 0x3f, 0x19, 0x8f, 0x19, 0x02, 0x6f, 0x19, 0x8f, + 0x19, 0x9f, 0x19, 0xaf, 0x19, 0xff, 0x19, 0x05, 0x19, 0xb8, 0xff, 0xc0, + 0x40, 0x54, 0x4f, 0x52, 0x48, 0xdf, 0x19, 0x01, 0x90, 0x19, 0xa0, 0x19, + 0xb0, 0x19, 0x03, 0x2f, 0x19, 0x3f, 0x19, 0x4f, 0x19, 0x03, 0x00, 0x19, + 0x01, 0x3d, 0x19, 0x40, 0x35, 0x38, 0x48, 0x70, 0x19, 0x80, 0x19, 0x90, + 0x19, 0xb0, 0x19, 0x04, 0x0f, 0x19, 0x1f, 0x19, 0x02, 0xff, 0x19, 0x01, + 0x19, 0x40, 0x23, 0x26, 0x48, 0x90, 0x19, 0x01, 0x4f, 0x19, 0x01, 0xff, + 0x19, 0x01, 0x70, 0x19, 0x80, 0x19, 0xc0, 0x19, 0xd0, 0x19, 0xe0, 0x19, + 0x05, 0x1f, 0x19, 0x01, 0x16, 0x0f, 0x10, 0x50, 0x09, 0x1b, 0x00, 0x53, + 0x01, 0x00, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x3f, 0x01, 0x5d, 0x5d, 0x5d, + 0x71, 0x71, 0x2b, 0x71, 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, + 0x2b, 0x71, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, + 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x72, 0x72, 0x72, 0x2b, 0x5e, 0x5d, + 0x5d, 0x5d, 0x11, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x33, 0x33, 0x2f, 0x10, + 0xed, 0x32, 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x13, 0x35, 0x33, 0x15, 0x11, + 0x14, 0x0e, 0x02, 0x23, 0x22, 0x26, 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, + 0x3e, 0x02, 0x35, 0x11, 0x33, 0x89, 0xb4, 0x15, 0x36, 0x5d, 0x48, 0x22, + 0x41, 0x1c, 0x0d, 0x24, 0x0d, 0x26, 0x31, 0x1c, 0x0a, 0xb4, 0x05, 0x20, + 0xac, 0xac, 0xfa, 0x5a, 0x3e, 0x6a, 0x4e, 0x2d, 0x04, 0x05, 0x8b, 0x02, + 0x04, 0x14, 0x2b, 0x43, 0x2e, 0x04, 0xa5, 0x00, 0x00, 0x01, 0x00, 0x8a, + 0x00, 0x00, 0x04, 0x03, 0x05, 0xcc, 0x00, 0x0b, 0x00, 0xfb, 0x40, 0x54, + 0x7c, 0x02, 0x01, 0x7a, 0x08, 0x01, 0x76, 0x07, 0x01, 0x56, 0x09, 0x66, + 0x09, 0x86, 0x09, 0x96, 0x09, 0x04, 0x8b, 0x00, 0x9b, 0x00, 0x02, 0x59, + 0x00, 0x69, 0x00, 0x79, 0x00, 0x03, 0x74, 0x0a, 0x84, 0x0a, 0x94, 0x0a, + 0x03, 0x44, 0x0a, 0x01, 0x01, 0x0a, 0x0a, 0x0b, 0x2a, 0x08, 0x01, 0x03, + 0x08, 0x09, 0x10, 0x74, 0x09, 0x01, 0x09, 0x09, 0x00, 0x0b, 0x10, 0x54, + 0x0b, 0x74, 0x0b, 0x94, 0x0b, 0x03, 0x74, 0x0b, 0x94, 0x0b, 0xb4, 0x0b, + 0xd4, 0x0b, 0xe4, 0x0b, 0xf4, 0x0b, 0x06, 0x30, 0x0b, 0x01, 0x02, 0x0b, + 0xb8, 0xff, 0xc0, 0x40, 0x69, 0x07, 0x0a, 0x48, 0x0b, 0x07, 0x03, 0x46, + 0x00, 0x04, 0x10, 0x04, 0x30, 0x04, 0xf0, 0x04, 0x04, 0x08, 0x04, 0x1f, + 0x0d, 0x3f, 0x0d, 0x02, 0x1f, 0x0d, 0x3f, 0x0d, 0x5f, 0x0d, 0xff, 0x0d, + 0x04, 0x0f, 0x0d, 0x1f, 0x0d, 0x3f, 0x0d, 0x5f, 0x0d, 0x7f, 0x0d, 0x05, + 0x39, 0x0d, 0x40, 0x53, 0x56, 0x48, 0x60, 0x0d, 0x80, 0x0d, 0xa0, 0x0d, + 0xc0, 0x0d, 0xd0, 0x0d, 0x05, 0xdf, 0x0d, 0x01, 0x00, 0x0d, 0x60, 0x0d, + 0x80, 0x0d, 0xa0, 0x0d, 0x04, 0x00, 0x0d, 0x10, 0x0d, 0x30, 0x0d, 0x40, + 0x0d, 0x80, 0x0d, 0xa0, 0x0d, 0xc0, 0x0d, 0xe0, 0x0d, 0xf0, 0x0d, 0x09, + 0x07, 0x02, 0x01, 0x07, 0x0a, 0x04, 0x08, 0x0f, 0x05, 0x00, 0x04, 0x15, + 0x00, 0x15, 0x00, 0x3f, 0x3f, 0x3f, 0x3f, 0x17, 0x39, 0x01, 0x5e, 0x5d, + 0x71, 0x71, 0x72, 0x2b, 0x5e, 0x5d, 0x71, 0x72, 0x2f, 0x5e, 0x5d, 0xed, + 0x32, 0x2f, 0x2b, 0x5f, 0x5d, 0x5d, 0x71, 0x38, 0x33, 0x33, 0x2f, 0x5d, + 0x38, 0x33, 0x5f, 0x72, 0x11, 0x39, 0x11, 0x33, 0x31, 0x30, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x21, 0x01, 0x07, + 0x11, 0x23, 0x11, 0x33, 0x11, 0x01, 0x33, 0x09, 0x01, 0x03, 0x30, 0xfe, + 0x92, 0x84, 0xb4, 0xb4, 0x01, 0xdb, 0xd3, 0xfe, 0x49, 0x01, 0xce, 0x01, + 0xee, 0x6d, 0xfe, 0x7f, 0x05, 0xcc, 0xfc, 0x61, 0x02, 0x0d, 0xfe, 0x2f, + 0xfd, 0x97, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8a, 0x00, 0x00, 0x01, 0x3e, + 0x05, 0xcc, 0x00, 0x03, 0x00, 0x6f, 0x40, 0x34, 0x03, 0x46, 0xc0, 0x00, + 0x01, 0xd0, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x30, 0x00, 0xf0, 0x00, + 0x04, 0x08, 0x00, 0xe0, 0x05, 0xf0, 0x05, 0x02, 0xdf, 0x05, 0x01, 0xb0, + 0x05, 0xc0, 0x05, 0x02, 0x9f, 0x05, 0x01, 0x70, 0x05, 0x80, 0x05, 0x02, + 0x0f, 0x05, 0x1f, 0x05, 0x02, 0xf0, 0x05, 0x01, 0xdf, 0x05, 0x01, 0x05, + 0xb8, 0xff, 0xc0, 0x40, 0x1b, 0x22, 0x25, 0x48, 0x4f, 0x05, 0x01, 0xff, + 0x05, 0x01, 0x70, 0x05, 0x80, 0x05, 0xc0, 0x05, 0xd0, 0x05, 0xe0, 0x05, + 0x05, 0x1f, 0x05, 0x01, 0x01, 0x00, 0x00, 0x15, 0x00, 0x3f, 0x3f, 0x01, + 0x5d, 0x5d, 0x5d, 0x71, 0x2b, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x2f, 0x5e, 0x5d, 0x71, 0x72, 0xed, 0x31, 0x30, 0x33, 0x11, 0x33, + 0x11, 0x8a, 0xb4, 0x05, 0xcc, 0xfa, 0x34, 0x00, 0x00, 0x01, 0x00, 0x88, + 0x00, 0x00, 0x06, 0x23, 0x04, 0x4e, 0x00, 0x3b, 0x02, 0xc2, 0xb9, 0x00, + 0x2a, 0xff, 0xe0, 0xb3, 0x08, 0x0b, 0x48, 0x20, 0xb8, 0xff, 0xe0, 0x40, + 0xff, 0x08, 0x0b, 0x48, 0x22, 0x3b, 0x46, 0x00, 0x00, 0x0d, 0x2e, 0x46, + 0xd9, 0x2f, 0xf9, 0x2f, 0x02, 0xb6, 0x2f, 0x01, 0x29, 0x2f, 0x59, 0x2f, + 0x89, 0x2f, 0x03, 0x06, 0x2f, 0x01, 0xa6, 0x2f, 0xb6, 0x2f, 0xd6, 0x2f, + 0xe6, 0x2f, 0x04, 0x89, 0x2f, 0x01, 0x76, 0x2f, 0x01, 0x59, 0x2f, 0x01, + 0x06, 0x2f, 0x16, 0x2f, 0x46, 0x2f, 0x03, 0x07, 0x2f, 0x19, 0x0c, 0x46, + 0xc6, 0x0d, 0x01, 0x06, 0x0d, 0x16, 0x0d, 0x36, 0x0d, 0xe6, 0x0d, 0xf6, + 0x0d, 0x05, 0x08, 0x0d, 0xfb, 0x3d, 0x01, 0xc9, 0x3d, 0xd9, 0x3d, 0xe9, + 0x3d, 0x03, 0xbb, 0x3d, 0x01, 0x99, 0x3d, 0x01, 0x8b, 0x3d, 0x01, 0x69, + 0x3d, 0x79, 0x3d, 0x02, 0x5b, 0x3d, 0x01, 0x49, 0x3d, 0x01, 0x2b, 0x3d, + 0x3b, 0x3d, 0x02, 0xf9, 0x3d, 0x01, 0xeb, 0x3d, 0x01, 0xd9, 0x3d, 0x01, + 0xcb, 0x3d, 0x01, 0xbd, 0x3d, 0x01, 0x99, 0x3d, 0x01, 0x8b, 0x3d, 0x01, + 0x69, 0x3d, 0x01, 0x5b, 0x3d, 0x01, 0x29, 0x3d, 0x39, 0x3d, 0x02, 0x1b, + 0x3d, 0x01, 0x09, 0x3d, 0x01, 0xca, 0xeb, 0x3d, 0xfb, 0x3d, 0x02, 0x69, + 0x3d, 0x89, 0x3d, 0x99, 0x3d, 0xb9, 0x3d, 0xc9, 0x3d, 0x05, 0x5b, 0x3d, + 0x01, 0x4d, 0x3d, 0x01, 0x29, 0x3d, 0x39, 0x3d, 0x02, 0x1b, 0x3d, 0x01, + 0xf9, 0x3d, 0x01, 0xeb, 0x3d, 0x01, 0xc9, 0x3d, 0xd9, 0x3d, 0x02, 0xbb, + 0x3d, 0x01, 0x99, 0x3d, 0x01, 0x8b, 0x3d, 0x01, 0x7d, 0x3d, 0x01, 0x01, + 0x2b, 0x3d, 0x4b, 0x3d, 0x5b, 0x3d, 0x6b, 0x3d, 0x04, 0x1f, 0x3d, 0x01, + 0x04, 0x3d, 0x01, 0xcb, 0x3d, 0xeb, 0x3d, 0x02, 0xaf, 0x3d, 0xbf, 0x3d, + 0x02, 0x8b, 0x3d, 0x01, 0x7f, 0x3d, 0x01, 0x2b, 0x3d, 0x4b, 0x3d, 0x5b, + 0x3d, 0x6b, 0x3d, 0x04, 0x1f, 0x3d, 0x01, 0x0b, 0x3d, 0x01, 0x9a, 0xff, + 0x3d, 0x01, 0xeb, 0x3d, 0x40, 0xff, 0x01, 0xdf, 0x3d, 0x01, 0xbb, 0x3d, + 0x01, 0xaf, 0x3d, 0x01, 0x8b, 0x3d, 0x9b, 0x3d, 0x02, 0x7f, 0x3d, 0x01, + 0x5b, 0x3d, 0x6b, 0x3d, 0x02, 0x4f, 0x3d, 0x01, 0x3b, 0x3d, 0x01, 0x24, + 0x3d, 0x01, 0x0b, 0x3d, 0x01, 0xeb, 0x3d, 0x01, 0xdf, 0x3d, 0x01, 0xbb, + 0x3d, 0x01, 0xaf, 0x3d, 0x01, 0x9b, 0x3d, 0x01, 0x7f, 0x3d, 0x8f, 0x3d, + 0x02, 0x64, 0x3d, 0x01, 0x4b, 0x3d, 0x01, 0x3f, 0x3d, 0x01, 0x2b, 0x3d, + 0x01, 0x0f, 0x3d, 0x1f, 0x3d, 0x02, 0xeb, 0x3d, 0x01, 0xdf, 0x3d, 0x01, + 0x7b, 0x3d, 0x8b, 0x3d, 0xab, 0x3d, 0xbb, 0x3d, 0x04, 0x6f, 0x3d, 0x01, + 0x3b, 0x3d, 0x01, 0x1f, 0x3d, 0x01, 0x0b, 0x3d, 0x01, 0x6a, 0xbb, 0x3d, + 0xcb, 0x3d, 0xeb, 0x3d, 0x03, 0xaf, 0x3d, 0x01, 0x8b, 0x3d, 0x01, 0x7f, + 0x3d, 0x01, 0x5b, 0x3d, 0x01, 0x4f, 0x3d, 0x01, 0x1b, 0x3d, 0x01, 0xfb, + 0x3d, 0x01, 0xdf, 0x3d, 0xef, 0x3d, 0x02, 0xbb, 0x3d, 0xcb, 0x3d, 0x02, + 0xaf, 0x3d, 0x01, 0x64, 0x3d, 0x94, 0x3d, 0x02, 0x1b, 0x3d, 0x2b, 0x3d, + 0x4b, 0x3d, 0x03, 0x04, 0x3d, 0x01, 0xf4, 0x3d, 0x01, 0x8b, 0x3d, 0xab, + 0x3d, 0xdb, 0x3d, 0x03, 0x7f, 0x3d, 0x01, 0x6b, 0x3d, 0x01, 0x34, 0x3d, + 0x01, 0x1b, 0x3d, 0x01, 0x0f, 0x3d, 0x01, 0x39, 0xbb, 0x3d, 0xdb, 0x3d, + 0xfb, 0x3d, 0x03, 0xa0, 0x3d, 0x01, 0x74, 0x3d, 0x94, 0x3d, 0x02, 0x2b, + 0x3d, 0x4b, 0x3d, 0x5b, 0x3d, 0x03, 0x1f, 0x3d, 0x01, 0x0b, 0x3d, 0x01, + 0xcb, 0x3d, 0xeb, 0x3d, 0xfb, 0x3d, 0x03, 0xa4, 0x3d, 0x01, 0x1b, 0x3d, + 0x4b, 0x3d, 0x5b, 0x3d, 0x7b, 0x3d, 0x04, 0xf4, 0x3d, 0x01, 0xd0, 0x3d, + 0x01, 0x02, 0x60, 0x3d, 0x90, 0x3d, 0xa0, 0x3d, 0xc0, 0x3d, 0x04, 0x4f, + 0x3d, 0x01, 0x30, 0x3d, 0x01, 0x2f, 0x3d, 0x01, 0x00, 0x40, 0x13, 0x3d, + 0x01, 0x08, 0x22, 0x35, 0x50, 0x28, 0x10, 0x19, 0x06, 0x50, 0x1f, 0x10, + 0x13, 0x0f, 0x2f, 0x0d, 0x00, 0x15, 0x00, 0x3f, 0x32, 0x32, 0x3f, 0x3f, + 0xed, 0x32, 0x3f, 0xed, 0x32, 0x01, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5f, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x71, 0x71, 0x71, 0x5f, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x32, 0x2f, 0x5e, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0xed, 0x12, 0x39, + 0x2f, 0xed, 0x39, 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x21, 0x11, 0x34, 0x2e, + 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x34, 0x2e, 0x02, + 0x27, 0x33, 0x1e, 0x03, 0x15, 0x33, 0x3e, 0x03, 0x33, 0x32, 0x16, 0x17, + 0x33, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x34, + 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x03, 0x00, 0x14, 0x2f, + 0x4c, 0x37, 0x39, 0x5c, 0x41, 0x23, 0xb3, 0x01, 0x02, 0x02, 0x01, 0xaa, + 0x01, 0x02, 0x03, 0x02, 0x03, 0x18, 0x38, 0x4b, 0x61, 0x40, 0x7b, 0x8f, + 0x1c, 0x03, 0x18, 0x3c, 0x50, 0x64, 0x40, 0x52, 0x77, 0x4c, 0x24, 0xb2, + 0x14, 0x2f, 0x4c, 0x37, 0x39, 0x5c, 0x41, 0x23, 0x02, 0xae, 0x4f, 0x6a, + 0x41, 0x1b, 0x2d, 0x55, 0x7d, 0x51, 0xfd, 0x8d, 0x03, 0x53, 0x22, 0x4b, + 0x43, 0x30, 0x07, 0x05, 0x2c, 0x39, 0x3b, 0x14, 0x2f, 0x4c, 0x35, 0x1d, + 0x62, 0x6b, 0x2f, 0x4c, 0x35, 0x1d, 0x2c, 0x5c, 0x91, 0x64, 0xfd, 0x2f, + 0x02, 0xae, 0x4f, 0x6a, 0x41, 0x1b, 0x2b, 0x54, 0x7e, 0x53, 0xfd, 0x8d, + 0x00, 0x01, 0x00, 0x88, 0x00, 0x00, 0x03, 0xee, 0x04, 0x4e, 0x00, 0x25, + 0x00, 0x6d, 0xb9, 0x00, 0x22, 0xff, 0xe0, 0x40, 0x24, 0x07, 0x0b, 0x48, + 0x25, 0x46, 0x40, 0x50, 0x00, 0x01, 0x9f, 0x00, 0xff, 0x00, 0x02, 0x00, + 0x27, 0x80, 0x00, 0x27, 0xc0, 0x27, 0xd0, 0x27, 0xe0, 0x27, 0x04, 0xc0, + 0x27, 0x01, 0x0f, 0x27, 0x01, 0x80, 0x27, 0x01, 0x27, 0xb8, 0xff, 0xc0, + 0x40, 0x20, 0x13, 0x17, 0x48, 0x19, 0x0c, 0x46, 0xc0, 0x0d, 0x01, 0x00, + 0x0d, 0x10, 0x0d, 0x30, 0x0d, 0xe0, 0x0d, 0xf0, 0x0d, 0x05, 0x08, 0x0d, + 0x19, 0x06, 0x50, 0x1f, 0x10, 0x13, 0x0f, 0x0d, 0x00, 0x15, 0x00, 0x3f, + 0x32, 0x3f, 0x3f, 0xed, 0x32, 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x32, + 0x2b, 0x5d, 0x71, 0x71, 0x72, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, + 0x31, 0x30, 0x2b, 0x21, 0x11, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, + 0x15, 0x11, 0x23, 0x11, 0x34, 0x2e, 0x02, 0x27, 0x33, 0x1e, 0x03, 0x15, + 0x33, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, 0x03, 0x39, 0x17, + 0x34, 0x55, 0x3f, 0x40, 0x67, 0x49, 0x28, 0xb4, 0x01, 0x02, 0x02, 0x01, + 0xaa, 0x01, 0x02, 0x03, 0x02, 0x03, 0x1a, 0x3e, 0x52, 0x6a, 0x46, 0x5a, + 0x82, 0x54, 0x27, 0x02, 0xae, 0x4f, 0x6a, 0x41, 0x1b, 0x2d, 0x55, 0x7d, + 0x51, 0xfd, 0x8d, 0x03, 0x53, 0x22, 0x4b, 0x43, 0x30, 0x07, 0x05, 0x2c, + 0x39, 0x3b, 0x14, 0x2f, 0x4c, 0x35, 0x1d, 0x2c, 0x5c, 0x91, 0x64, 0xfd, + 0x2f, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x56, 0xff, 0xec, 0x04, 0x1d, + 0x04, 0x4e, 0x00, 0x0e, 0x00, 0x22, 0x00, 0x74, 0x40, 0x3b, 0x79, 0x20, + 0x89, 0x20, 0x02, 0x74, 0x1c, 0x84, 0x1c, 0x02, 0x76, 0x16, 0x86, 0x16, + 0x02, 0x79, 0x12, 0x89, 0x12, 0x02, 0x96, 0x0c, 0xa6, 0x0c, 0x02, 0x04, + 0x0c, 0x14, 0x0c, 0x02, 0x0b, 0x09, 0x1b, 0x09, 0x02, 0x0b, 0x05, 0x1b, + 0x05, 0x02, 0x04, 0x02, 0x14, 0x02, 0x02, 0x07, 0x00, 0x47, 0x40, 0x90, + 0x0f, 0x01, 0x0f, 0x24, 0x80, 0x30, 0x24, 0x01, 0x24, 0xb8, 0xff, 0xc0, + 0x40, 0x14, 0x1e, 0x23, 0x48, 0xdf, 0x24, 0x01, 0x19, 0x47, 0x1f, 0x08, + 0x01, 0x08, 0x14, 0x50, 0x0a, 0x10, 0x1e, 0x50, 0x03, 0x16, 0x00, 0x3f, + 0xed, 0x3f, 0xed, 0x01, 0x2f, 0x5d, 0xed, 0x5d, 0x2b, 0x71, 0x1a, 0x10, + 0xdc, 0x5d, 0x1a, 0xed, 0x31, 0x30, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x10, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, + 0x10, 0x21, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, + 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x04, 0x1d, 0xfa, + 0xee, 0x71, 0xb2, 0x7b, 0x41, 0x01, 0xe5, 0x7e, 0xb7, 0x75, 0x38, 0xbd, + 0x27, 0x4b, 0x6c, 0x44, 0x45, 0x6f, 0x4e, 0x29, 0x2c, 0x4d, 0x69, 0x3e, + 0x45, 0x70, 0x4e, 0x2a, 0x02, 0x1e, 0xfe, 0xe4, 0xfe, 0xea, 0x44, 0x8c, + 0xd3, 0x8f, 0x02, 0x30, 0x46, 0x8c, 0xd2, 0x8c, 0x7e, 0xa4, 0x62, 0x27, + 0x29, 0x63, 0xa4, 0x7b, 0x7e, 0xa5, 0x62, 0x28, 0x27, 0x62, 0xa6, 0x00, + 0x00, 0x02, 0x00, 0x84, 0xfe, 0x57, 0x04, 0x1d, 0x04, 0x4d, 0x00, 0x26, + 0x00, 0x3a, 0x00, 0x94, 0x40, 0x10, 0x69, 0x38, 0x79, 0x38, 0x02, 0x69, + 0x2a, 0x79, 0x2a, 0x02, 0x86, 0x24, 0x96, 0x24, 0x02, 0x24, 0xb8, 0xff, + 0xe0, 0x40, 0x13, 0x07, 0x0a, 0x48, 0x49, 0x1f, 0x59, 0x1f, 0x02, 0x49, + 0x07, 0x59, 0x07, 0x02, 0x86, 0x03, 0x96, 0x03, 0x02, 0x03, 0xb8, 0xff, + 0xe0, 0x40, 0x3f, 0x07, 0x0a, 0x48, 0x00, 0x47, 0x40, 0xa0, 0x27, 0x01, + 0x27, 0x3c, 0x80, 0x31, 0x1c, 0x0f, 0x46, 0x00, 0x10, 0x10, 0x10, 0x30, + 0x10, 0xf0, 0x10, 0x04, 0x08, 0x10, 0xb0, 0x3c, 0x01, 0x3f, 0x3c, 0x01, + 0x70, 0x3c, 0x90, 0x3c, 0x02, 0x1f, 0x3c, 0x01, 0xff, 0x3c, 0x01, 0xc0, + 0x3c, 0xe0, 0x3c, 0x02, 0x1c, 0x2c, 0x50, 0x22, 0x10, 0x16, 0x0f, 0x0f, + 0x1b, 0x08, 0x36, 0x50, 0x05, 0x16, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0x3f, + 0x3f, 0xed, 0x32, 0x01, 0x5d, 0x5d, 0x71, 0x71, 0x72, 0x72, 0x2f, 0x5e, + 0x5d, 0xed, 0x32, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x31, 0x30, + 0x2b, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, + 0x23, 0x22, 0x26, 0x27, 0x23, 0x1e, 0x03, 0x15, 0x11, 0x23, 0x11, 0x34, + 0x2e, 0x02, 0x27, 0x33, 0x1e, 0x03, 0x15, 0x33, 0x3e, 0x03, 0x33, 0x32, + 0x1e, 0x02, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, + 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x04, 0x1d, 0x28, 0x5d, 0x99, 0x70, + 0x74, 0xae, 0x2e, 0x05, 0x01, 0x01, 0x01, 0x01, 0xb4, 0x01, 0x02, 0x02, + 0x01, 0xae, 0x01, 0x03, 0x03, 0x03, 0x04, 0x19, 0x40, 0x52, 0x65, 0x3f, + 0x70, 0x99, 0x5d, 0x28, 0xbd, 0x18, 0x3b, 0x62, 0x4a, 0x3c, 0x6a, 0x4f, + 0x2e, 0x26, 0x49, 0x6c, 0x46, 0x4b, 0x63, 0x3b, 0x18, 0x02, 0x22, 0x7b, + 0xd0, 0x96, 0x55, 0x58, 0x64, 0x02, 0x20, 0x30, 0x3b, 0x1d, 0xfe, 0x59, + 0x05, 0x06, 0x27, 0x48, 0x3b, 0x2a, 0x09, 0x03, 0x24, 0x33, 0x3a, 0x1a, + 0x34, 0x49, 0x2f, 0x15, 0x50, 0x91, 0xcd, 0x81, 0x64, 0x9c, 0x6c, 0x38, + 0x22, 0x60, 0xa9, 0x87, 0x73, 0x9f, 0x62, 0x2b, 0x3a, 0x6e, 0x9f, 0x00, + 0x00, 0x02, 0x00, 0x56, 0xfe, 0x57, 0x03, 0xf0, 0x04, 0x4e, 0x00, 0x22, + 0x00, 0x36, 0x00, 0xa5, 0x40, 0x77, 0x55, 0x2f, 0x65, 0x2f, 0x02, 0x5a, + 0x2b, 0x6a, 0x2b, 0x02, 0x39, 0x20, 0x49, 0x20, 0x02, 0x36, 0x09, 0x46, + 0x09, 0x02, 0x09, 0x01, 0x19, 0x01, 0x79, 0x01, 0x89, 0x01, 0x04, 0x06, + 0x05, 0x16, 0x05, 0x76, 0x05, 0x86, 0x05, 0x04, 0x09, 0x16, 0x46, 0x40, + 0x23, 0x0b, 0x7f, 0x17, 0xdf, 0x17, 0x02, 0x17, 0x38, 0x80, 0x2d, 0x47, + 0x0f, 0x03, 0x01, 0x0a, 0x03, 0x20, 0x38, 0x40, 0x38, 0x02, 0xcf, 0x38, + 0x01, 0x00, 0x38, 0x20, 0x38, 0x90, 0x38, 0xb0, 0x38, 0x04, 0x50, 0xdf, + 0x38, 0x01, 0xc0, 0x38, 0x01, 0x4f, 0x38, 0x01, 0x80, 0x38, 0xa0, 0x38, + 0x02, 0x0f, 0x38, 0x2f, 0x38, 0x02, 0xd0, 0x38, 0xf0, 0x38, 0x02, 0x0f, + 0x38, 0x01, 0x08, 0x16, 0x1b, 0x11, 0x10, 0x0b, 0x28, 0x50, 0x06, 0x10, + 0x1d, 0x32, 0x50, 0x00, 0x16, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0xed, 0x32, + 0x3f, 0x3f, 0x01, 0x5e, 0x5d, 0x5d, 0x71, 0x71, 0x72, 0x72, 0x72, 0x5e, + 0x5d, 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x32, + 0x32, 0x1a, 0xed, 0x31, 0x30, 0x00, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x05, 0x22, 0x02, 0x11, 0x10, 0x12, 0x33, 0x32, 0x1e, 0x02, 0x17, + 0x33, 0x34, 0x3e, 0x02, 0x37, 0x33, 0x0e, 0x01, 0x15, 0x11, 0x23, 0x11, + 0x34, 0x36, 0x37, 0x36, 0x37, 0x23, 0x0e, 0x03, 0x01, 0x34, 0x2e, 0x02, + 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, + 0x01, 0xe4, 0xce, 0xc0, 0xc5, 0xc9, 0x43, 0x67, 0x51, 0x3d, 0x19, 0x02, + 0x03, 0x03, 0x04, 0x02, 0xad, 0x02, 0x05, 0xb4, 0x01, 0x01, 0x01, 0x01, + 0x02, 0x1a, 0x3f, 0x52, 0x67, 0x01, 0x10, 0x29, 0x4b, 0x6b, 0x42, 0x45, + 0x62, 0x3d, 0x1d, 0x1b, 0x3d, 0x61, 0x46, 0x3c, 0x6a, 0x4f, 0x2e, 0x14, + 0x01, 0x16, 0x01, 0x16, 0x01, 0x1a, 0x01, 0x1c, 0x18, 0x2f, 0x46, 0x2f, + 0x19, 0x3d, 0x36, 0x27, 0x03, 0x11, 0x90, 0x86, 0xfb, 0x36, 0x01, 0xb7, + 0x1a, 0x38, 0x19, 0x1c, 0x1d, 0x33, 0x4b, 0x31, 0x17, 0x02, 0x3e, 0x76, + 0xa0, 0x60, 0x29, 0x33, 0x69, 0xa1, 0x6e, 0x6c, 0xa0, 0x68, 0x33, 0x25, + 0x61, 0xa9, 0x00, 0x00, 0x00, 0x01, 0x00, 0x88, 0x00, 0x00, 0x02, 0x88, + 0x04, 0x4e, 0x00, 0x1f, 0x00, 0x3e, 0x40, 0x28, 0x10, 0x15, 0x30, 0x15, + 0x02, 0x15, 0x15, 0x21, 0x0c, 0x1f, 0x46, 0xc0, 0x00, 0x01, 0x00, 0x00, + 0x10, 0x00, 0x30, 0x00, 0xe0, 0x00, 0xf0, 0x00, 0x05, 0x08, 0x00, 0x19, + 0x28, 0x13, 0x16, 0x48, 0x19, 0x0c, 0x12, 0x10, 0x07, 0x0f, 0x00, 0x15, + 0x00, 0x3f, 0x3f, 0x3f, 0x33, 0xcd, 0x2b, 0x01, 0x2f, 0x5e, 0x5d, 0x71, + 0xed, 0x32, 0x11, 0x33, 0x2f, 0x5d, 0x31, 0x30, 0x33, 0x11, 0x34, 0x2e, + 0x02, 0x27, 0x33, 0x1e, 0x03, 0x15, 0x33, 0x3e, 0x03, 0x33, 0x32, 0x16, + 0x17, 0x15, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x8e, 0x01, + 0x02, 0x02, 0x01, 0xaa, 0x01, 0x03, 0x03, 0x01, 0x04, 0x13, 0x2b, 0x3a, + 0x50, 0x39, 0x16, 0x28, 0x0b, 0x12, 0x30, 0x1e, 0x3e, 0x57, 0x37, 0x1a, + 0x03, 0x3e, 0x22, 0x47, 0x42, 0x3a, 0x17, 0x17, 0x3b, 0x3e, 0x39, 0x14, + 0x3e, 0x5b, 0x3b, 0x1d, 0x07, 0x03, 0xa5, 0x05, 0x05, 0x38, 0x63, 0x89, + 0x51, 0xfd, 0xcc, 0x00, 0x00, 0x01, 0x00, 0x39, 0xff, 0xec, 0x03, 0xb6, + 0x04, 0x4b, 0x00, 0x37, 0x00, 0xbd, 0x40, 0x55, 0x74, 0x2e, 0x84, 0x2e, + 0x02, 0x6f, 0x15, 0x7f, 0x15, 0x8f, 0x15, 0x03, 0x6b, 0x16, 0x01, 0x25, + 0x36, 0x01, 0x2a, 0x1b, 0x01, 0x15, 0x34, 0x01, 0x05, 0x02, 0x15, 0x02, + 0x02, 0x0b, 0x1e, 0x1b, 0x1e, 0x02, 0x24, 0x49, 0x23, 0x23, 0x00, 0x48, + 0x40, 0x20, 0x13, 0x30, 0x13, 0x02, 0x90, 0x13, 0xa0, 0x13, 0xb0, 0x13, + 0x03, 0x13, 0x39, 0x80, 0x0b, 0x49, 0x0a, 0x40, 0x19, 0x1e, 0x48, 0x0a, + 0x0a, 0x2c, 0x48, 0x4f, 0x1d, 0x5f, 0x1d, 0x02, 0x20, 0x1d, 0x01, 0x1d, + 0x60, 0x39, 0xc0, 0x39, 0x02, 0x80, 0x39, 0x01, 0x39, 0xb8, 0xff, 0xc0, + 0x40, 0x2a, 0x27, 0x2a, 0x48, 0x3f, 0x39, 0x01, 0x10, 0x39, 0x01, 0x13, + 0x2c, 0x05, 0x29, 0x50, 0x20, 0x00, 0x24, 0x01, 0x90, 0x24, 0xf0, 0x24, + 0x02, 0x24, 0x24, 0x20, 0x10, 0x0e, 0x50, 0x05, 0x60, 0x0b, 0x70, 0x0b, + 0x02, 0x80, 0x0b, 0x01, 0x0b, 0x0b, 0x05, 0x16, 0x00, 0x3f, 0x33, 0x2f, + 0x5d, 0x71, 0x10, 0xed, 0x3f, 0x33, 0x2f, 0x5d, 0x71, 0x10, 0xed, 0x12, + 0x39, 0x39, 0x01, 0x5d, 0x5d, 0x2b, 0x5d, 0x71, 0x2f, 0x5d, 0x71, 0xed, + 0x33, 0x2f, 0x2b, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x32, + 0x2f, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x00, + 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x27, + 0x37, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x27, + 0x2e, 0x03, 0x35, 0x34, 0x36, 0x33, 0x32, 0x16, 0x17, 0x07, 0x2e, 0x03, + 0x23, 0x22, 0x06, 0x15, 0x14, 0x1e, 0x02, 0x17, 0x1e, 0x05, 0x03, 0xb6, + 0x3b, 0x70, 0xa3, 0x69, 0x5e, 0x97, 0x72, 0x4d, 0x12, 0x9f, 0x17, 0x90, + 0x80, 0x3a, 0x61, 0x46, 0x27, 0x2e, 0x52, 0x75, 0x46, 0x41, 0x80, 0x67, + 0x40, 0xd3, 0xca, 0xb3, 0xd3, 0x1c, 0xa2, 0x09, 0x30, 0x44, 0x55, 0x2e, + 0x7a, 0x74, 0x2b, 0x4d, 0x6c, 0x41, 0x2b, 0x5a, 0x55, 0x4b, 0x38, 0x21, + 0x01, 0x2b, 0x4c, 0x77, 0x51, 0x2b, 0x1d, 0x40, 0x69, 0x4c, 0x1f, 0x57, + 0x51, 0x10, 0x27, 0x41, 0x30, 0x31, 0x3f, 0x2a, 0x1f, 0x13, 0x11, 0x2a, + 0x45, 0x66, 0x4d, 0x94, 0x9b, 0x7e, 0x8b, 0x14, 0x2a, 0x39, 0x23, 0x0f, + 0x4a, 0x4b, 0x2c, 0x39, 0x27, 0x1d, 0x10, 0x0b, 0x19, 0x23, 0x2f, 0x42, + 0x58, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1f, 0xff, 0xf0, 0x02, 0x2a, + 0x05, 0x2c, 0x00, 0x16, 0x00, 0x7b, 0x40, 0x57, 0x28, 0x0e, 0x01, 0x69, + 0x0e, 0x79, 0x0e, 0x89, 0x0e, 0x03, 0x28, 0x0d, 0x01, 0x69, 0x0d, 0x79, + 0x0d, 0x89, 0x0d, 0x03, 0x8b, 0x04, 0x01, 0x04, 0x20, 0x09, 0x0d, 0x48, + 0x6c, 0x04, 0x7c, 0x04, 0x9c, 0x04, 0xac, 0x04, 0x04, 0x04, 0x20, 0x09, + 0x0c, 0x48, 0x6f, 0x16, 0x7f, 0x16, 0x02, 0x16, 0x0c, 0x0d, 0x16, 0x03, + 0x10, 0x46, 0x09, 0x08, 0x8f, 0x05, 0x01, 0x00, 0x05, 0x10, 0x05, 0x20, + 0x05, 0x40, 0x05, 0x04, 0x07, 0x05, 0x80, 0x18, 0x01, 0x0f, 0x06, 0x50, + 0x0c, 0x3f, 0x0a, 0x01, 0x0a, 0x09, 0x0f, 0x13, 0x50, 0x03, 0x16, 0x00, + 0x3f, 0xed, 0x3f, 0xcd, 0x5d, 0x33, 0xed, 0x32, 0x01, 0x5d, 0x2f, 0x5e, + 0x5d, 0x71, 0x33, 0x33, 0xed, 0x17, 0x32, 0x2f, 0x5d, 0x31, 0x30, 0x00, + 0x2b, 0x5d, 0x01, 0x2b, 0x5d, 0x5d, 0x71, 0x5d, 0x71, 0x25, 0x0e, 0x01, + 0x23, 0x22, 0x35, 0x11, 0x23, 0x35, 0x33, 0x37, 0x33, 0x15, 0x33, 0x15, + 0x23, 0x11, 0x14, 0x16, 0x33, 0x32, 0x36, 0x37, 0x02, 0x2a, 0x29, 0x55, + 0x38, 0xd8, 0x7d, 0x84, 0x35, 0x78, 0xc8, 0xc8, 0x33, 0x3f, 0x1a, 0x31, + 0x1d, 0x08, 0x0b, 0x0d, 0xf5, 0x02, 0xd2, 0x83, 0xf2, 0xf2, 0x83, 0xfd, + 0x55, 0x4e, 0x3f, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x85, + 0xff, 0xec, 0x03, 0xeb, 0x04, 0x3a, 0x00, 0x25, 0x00, 0x79, 0x40, 0x45, + 0x96, 0x03, 0x01, 0x1a, 0x21, 0x2a, 0x21, 0x3a, 0x21, 0x03, 0x19, 0x0e, + 0x46, 0x40, 0x2f, 0x0b, 0x8f, 0x0b, 0x02, 0xbf, 0x0b, 0x01, 0x8f, 0x0b, + 0x9f, 0x0b, 0xff, 0x0b, 0x03, 0x0b, 0x27, 0x80, 0x01, 0x46, 0xdf, 0x24, + 0xef, 0x24, 0x02, 0x00, 0x24, 0x10, 0x24, 0x30, 0x24, 0xf0, 0x24, 0x04, + 0x08, 0x24, 0xb0, 0x27, 0xc0, 0x27, 0xd0, 0x27, 0x03, 0xb0, 0x27, 0xf0, + 0x27, 0x02, 0xff, 0x27, 0x01, 0x70, 0x27, 0x01, 0x27, 0xb8, 0xff, 0xc0, + 0x40, 0x0d, 0x13, 0x17, 0x48, 0x19, 0x06, 0x50, 0x1f, 0x16, 0x13, 0x15, + 0x0c, 0x00, 0x0f, 0x00, 0x3f, 0x32, 0x3f, 0x3f, 0xed, 0x32, 0x01, 0x2b, + 0x5d, 0x5d, 0x71, 0x72, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x1a, 0x10, 0xdc, + 0x5d, 0x71, 0x72, 0x1a, 0xed, 0x33, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x01, + 0x11, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x11, 0x33, 0x11, + 0x14, 0x1e, 0x02, 0x17, 0x23, 0x2e, 0x03, 0x35, 0x23, 0x0e, 0x03, 0x23, + 0x22, 0x2e, 0x02, 0x35, 0x11, 0x01, 0x3a, 0x17, 0x34, 0x55, 0x3f, 0x40, + 0x67, 0x49, 0x28, 0xb4, 0x01, 0x02, 0x02, 0x01, 0xaa, 0x01, 0x02, 0x03, + 0x02, 0x03, 0x1a, 0x3e, 0x52, 0x6a, 0x46, 0x5a, 0x82, 0x54, 0x27, 0x04, + 0x3a, 0xfd, 0x52, 0x4f, 0x6a, 0x41, 0x1b, 0x2d, 0x55, 0x7d, 0x51, 0x02, + 0x73, 0xfc, 0xad, 0x22, 0x4b, 0x43, 0x30, 0x07, 0x05, 0x2c, 0x39, 0x3b, + 0x14, 0x2f, 0x4c, 0x35, 0x1d, 0x2c, 0x5c, 0x90, 0x65, 0x02, 0xd1, 0x00, + 0x00, 0x01, 0x00, 0x07, 0x00, 0x00, 0x03, 0xf9, 0x04, 0x3a, 0x00, 0x10, + 0x02, 0x5b, 0x40, 0x37, 0x39, 0x01, 0x49, 0x01, 0x02, 0x99, 0x01, 0x01, + 0x36, 0x00, 0x46, 0x00, 0x02, 0x86, 0x00, 0x96, 0x00, 0x02, 0x3a, 0x0f, + 0x4a, 0x0f, 0x02, 0x9a, 0x0f, 0x01, 0x69, 0x0f, 0x79, 0x0f, 0x89, 0x0f, + 0x03, 0x35, 0x03, 0x45, 0x03, 0x02, 0x95, 0x03, 0x01, 0x03, 0x67, 0x03, + 0x77, 0x03, 0x87, 0x03, 0x03, 0x0e, 0x10, 0x0d, 0x11, 0x48, 0x04, 0xb8, + 0xff, 0xf0, 0x40, 0x3e, 0x0d, 0x11, 0x48, 0x01, 0x00, 0x09, 0x09, 0x02, + 0x0f, 0x10, 0x10, 0x2b, 0x10, 0x7b, 0x10, 0x02, 0x04, 0x10, 0x14, 0x10, + 0x02, 0x04, 0x10, 0x14, 0x10, 0x44, 0x10, 0x54, 0x10, 0x84, 0x10, 0x94, + 0x10, 0xc4, 0x10, 0xd4, 0x10, 0x08, 0xdb, 0x10, 0x01, 0x44, 0x10, 0x54, + 0x10, 0x84, 0x10, 0x94, 0x10, 0xc4, 0x10, 0x05, 0x1b, 0x10, 0x01, 0x04, + 0x10, 0x01, 0x08, 0x10, 0x03, 0x02, 0xb8, 0xff, 0xf0, 0x40, 0xff, 0x0b, + 0x02, 0x5b, 0x02, 0x02, 0x2a, 0x02, 0x0b, 0x12, 0x1b, 0x12, 0x02, 0x0b, + 0x12, 0x1b, 0x12, 0x4b, 0x12, 0x5b, 0x12, 0x8b, 0x12, 0x9b, 0x12, 0xcb, + 0x12, 0xdb, 0x12, 0x08, 0xff, 0x12, 0x01, 0xc4, 0x12, 0xd4, 0x12, 0x02, + 0xa0, 0x12, 0x01, 0x84, 0x12, 0x94, 0x12, 0x02, 0x60, 0x12, 0x01, 0x44, + 0x12, 0x54, 0x12, 0x02, 0x20, 0x12, 0x01, 0x04, 0x12, 0x14, 0x12, 0x02, + 0xc7, 0xe0, 0x12, 0x01, 0xc4, 0x12, 0xd4, 0x12, 0x02, 0xa0, 0x12, 0x01, + 0x04, 0x12, 0x14, 0x12, 0x44, 0x12, 0x54, 0x12, 0x84, 0x12, 0x94, 0x12, + 0x06, 0x44, 0x12, 0x54, 0x12, 0x84, 0x12, 0x94, 0x12, 0xc4, 0x12, 0xd4, + 0x12, 0x06, 0x1b, 0x12, 0x01, 0x04, 0x12, 0x01, 0xdb, 0x12, 0x01, 0xc4, + 0x12, 0x01, 0x9b, 0x12, 0x01, 0x84, 0x12, 0x01, 0x5b, 0x12, 0x01, 0x44, + 0x12, 0x01, 0x1b, 0x12, 0x01, 0x04, 0x12, 0x01, 0x97, 0x0b, 0x12, 0x1b, + 0x12, 0x4b, 0x12, 0x5b, 0x12, 0x8b, 0x12, 0x9b, 0x12, 0xcb, 0x12, 0xdb, + 0x12, 0x08, 0x9b, 0x12, 0xcb, 0x12, 0xdb, 0x12, 0x03, 0x84, 0x12, 0x01, + 0x60, 0x12, 0x01, 0x44, 0x12, 0x54, 0x12, 0x02, 0x20, 0x12, 0x01, 0x04, + 0x12, 0x14, 0x12, 0x02, 0xe0, 0x12, 0x01, 0xc4, 0x12, 0xd4, 0x12, 0x02, + 0xa0, 0x12, 0x01, 0x84, 0x12, 0x94, 0x12, 0x02, 0x60, 0x12, 0x01, 0x04, + 0x12, 0x14, 0x12, 0x44, 0x12, 0x54, 0x12, 0x04, 0x67, 0x04, 0x12, 0x14, + 0x12, 0x44, 0x12, 0x54, 0x12, 0x84, 0x12, 0x94, 0x12, 0xc4, 0x12, 0xd4, + 0x12, 0x08, 0xdb, 0x12, 0x01, 0xc4, 0x12, 0x01, 0x9b, 0x12, 0x01, 0x84, + 0x12, 0x01, 0x5b, 0x12, 0x01, 0x44, 0x12, 0x01, 0x1b, 0x12, 0x01, 0x04, + 0x12, 0x01, 0xdb, 0x12, 0x01, 0xc4, 0x12, 0x01, 0x0b, 0x12, 0x1b, 0x12, + 0x4b, 0x12, 0x40, 0x63, 0x5b, 0x12, 0x8b, 0x12, 0x9b, 0x12, 0x06, 0x37, + 0x4b, 0x12, 0x5b, 0x12, 0x8b, 0x12, 0x9b, 0x12, 0xcb, 0x12, 0xdb, 0x12, + 0x06, 0x3f, 0x12, 0x01, 0x20, 0x12, 0x01, 0x04, 0x12, 0x14, 0x12, 0x02, + 0xe0, 0x12, 0x01, 0xc4, 0x12, 0xd4, 0x12, 0x02, 0xa0, 0x12, 0x01, 0x84, + 0x12, 0x94, 0x12, 0x02, 0x60, 0x12, 0x01, 0x44, 0x12, 0x54, 0x12, 0x02, + 0x20, 0x12, 0x01, 0x04, 0x12, 0x14, 0x12, 0x02, 0xc4, 0x12, 0xd4, 0x12, + 0x02, 0xa0, 0x12, 0x01, 0x84, 0x12, 0x94, 0x12, 0x02, 0x60, 0x12, 0x01, + 0x02, 0x50, 0x12, 0x01, 0x2f, 0x12, 0x01, 0x00, 0x12, 0x10, 0x12, 0x02, + 0x07, 0x0f, 0x02, 0x0f, 0x09, 0x01, 0x15, 0x00, 0x3f, 0x33, 0x3f, 0x33, + 0x01, 0x5e, 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, + 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x5e, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x71, 0x72, 0x2f, 0x5e, 0x5d, 0x38, 0x33, 0x2f, 0x5e, 0x5d, + 0x5d, 0x5d, 0x5d, 0x71, 0x72, 0x72, 0x38, 0x33, 0x12, 0x39, 0x3d, 0x2f, + 0x33, 0x33, 0x31, 0x30, 0x2b, 0x2b, 0x5d, 0x5f, 0x5d, 0x71, 0x5d, 0x5d, + 0x71, 0x5d, 0x71, 0x5d, 0x71, 0x21, 0x23, 0x01, 0x33, 0x13, 0x1e, 0x03, + 0x17, 0x3e, 0x03, 0x37, 0x13, 0x33, 0x02, 0x65, 0xd5, 0xfe, 0x77, 0xc0, + 0xee, 0x07, 0x13, 0x14, 0x11, 0x06, 0x06, 0x13, 0x14, 0x15, 0x08, 0xf6, + 0xbf, 0x04, 0x3a, 0xfd, 0x40, 0x16, 0x3f, 0x44, 0x3f, 0x15, 0x15, 0x3f, + 0x42, 0x3f, 0x16, 0x02, 0xc2, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xfd, + 0x00, 0x00, 0x05, 0xcc, 0x04, 0x3a, 0x00, 0x2a, 0x03, 0xb1, 0x40, 0x24, + 0xe5, 0x17, 0x01, 0x3a, 0x29, 0x4a, 0x29, 0x02, 0x7a, 0x29, 0x8a, 0x29, + 0x9a, 0x29, 0x03, 0x35, 0x10, 0x45, 0x10, 0x02, 0x75, 0x10, 0x85, 0x10, + 0x95, 0x10, 0x03, 0x36, 0x1d, 0x46, 0x1d, 0x02, 0x36, 0x1d, 0x01, 0x1d, + 0xb8, 0xff, 0xf0, 0x40, 0x16, 0x0d, 0x11, 0x48, 0x39, 0x1c, 0x49, 0x1c, + 0x02, 0x39, 0x1c, 0x01, 0x1c, 0x10, 0x0d, 0x11, 0x48, 0x36, 0x00, 0x46, + 0x00, 0x02, 0x00, 0xb8, 0xff, 0xf0, 0x40, 0x09, 0x0b, 0x11, 0x48, 0x36, + 0x0d, 0x46, 0x0d, 0x02, 0x0d, 0xb8, 0xff, 0xf0, 0x40, 0x33, 0x0b, 0x11, + 0x48, 0x39, 0x01, 0x49, 0x01, 0x02, 0x01, 0x10, 0x0b, 0x11, 0x48, 0x39, + 0x0e, 0x49, 0x0e, 0x02, 0x03, 0x0e, 0x10, 0x09, 0x11, 0x48, 0x0e, 0x0d, + 0x16, 0x1d, 0x1c, 0x07, 0x01, 0x00, 0x23, 0x28, 0x23, 0x01, 0x58, 0x23, + 0x01, 0x16, 0x07, 0x23, 0x23, 0x07, 0x16, 0x03, 0x0f, 0x29, 0x2a, 0x10, + 0x2a, 0xb8, 0xff, 0xc0, 0x40, 0x49, 0x2f, 0x32, 0x48, 0x49, 0x2a, 0x01, + 0x34, 0x2a, 0x01, 0x26, 0x2a, 0x01, 0xf9, 0x2a, 0x01, 0xc6, 0x2a, 0xe6, + 0x2a, 0x02, 0xa4, 0x2a, 0x01, 0x96, 0x2a, 0x01, 0x79, 0x2a, 0x01, 0x36, + 0x2a, 0x46, 0x2a, 0x66, 0x2a, 0x03, 0x19, 0x2a, 0x01, 0xf4, 0x2a, 0x01, + 0xb6, 0x2a, 0xe6, 0x2a, 0x02, 0x84, 0x2a, 0x94, 0x2a, 0x02, 0x66, 0x2a, + 0x76, 0x2a, 0x02, 0x39, 0x2a, 0x01, 0x26, 0x2a, 0x01, 0x14, 0x2a, 0x01, + 0x06, 0x2a, 0x01, 0x08, 0x2a, 0x10, 0x0f, 0xb8, 0xff, 0xf0, 0x40, 0xff, + 0x09, 0x0f, 0x59, 0x0f, 0x69, 0x0f, 0x79, 0x0f, 0x04, 0x0a, 0x0f, 0xc6, + 0x2c, 0xe6, 0x2c, 0xf6, 0x2c, 0x03, 0xa4, 0x2c, 0x01, 0x96, 0x2c, 0x01, + 0x79, 0x2c, 0x01, 0x66, 0x2c, 0x01, 0x54, 0x2c, 0x01, 0x36, 0x2c, 0x46, + 0x2c, 0x02, 0x19, 0x2c, 0x01, 0xf4, 0x2c, 0x01, 0xe6, 0x2c, 0x01, 0xc4, + 0x2c, 0x01, 0xb6, 0x2c, 0x01, 0x99, 0x2c, 0x01, 0x86, 0x2c, 0x01, 0x74, + 0x2c, 0x01, 0x66, 0x2c, 0x01, 0x39, 0x2c, 0x01, 0x14, 0x2c, 0x24, 0x2c, + 0x02, 0x06, 0x2c, 0x01, 0xca, 0xf9, 0x2c, 0x01, 0x96, 0x2c, 0xb6, 0x2c, + 0xc6, 0x2c, 0xe6, 0x2c, 0x04, 0x69, 0x2c, 0x01, 0x36, 0x2c, 0x46, 0x2c, + 0x02, 0x09, 0x2c, 0x19, 0x2c, 0x02, 0xe6, 0x2c, 0x01, 0xb9, 0x2c, 0x01, + 0x56, 0x2c, 0x66, 0x2c, 0x86, 0x2c, 0x03, 0x39, 0x2c, 0x01, 0x2b, 0x2c, + 0x01, 0x14, 0x2c, 0x01, 0x06, 0x2c, 0x01, 0xe4, 0x2c, 0x01, 0xd6, 0x2c, + 0x01, 0xc4, 0x2c, 0x01, 0xb6, 0x2c, 0x01, 0xa2, 0x2c, 0x01, 0x94, 0x2c, + 0x01, 0x86, 0x2c, 0x01, 0x72, 0x2c, 0x01, 0x64, 0x2c, 0x01, 0x56, 0x2c, + 0x01, 0x34, 0x2c, 0x44, 0x2c, 0x02, 0x22, 0x2c, 0x01, 0x14, 0x2c, 0x01, + 0x06, 0x2c, 0x01, 0x99, 0xf6, 0x2c, 0x01, 0xc2, 0x2c, 0xd2, 0x2c, 0x02, + 0xb4, 0x2c, 0x01, 0xa6, 0x2c, 0x01, 0x84, 0x2c, 0x01, 0x76, 0x2c, 0x01, + 0x54, 0x2c, 0x64, 0x2c, 0x02, 0x42, 0x2c, 0x01, 0x34, 0x2c, 0x01, 0x16, + 0x2c, 0x26, 0x2c, 0x02, 0x04, 0x2c, 0x01, 0xe2, 0x2c, 0xf2, 0x2c, 0x02, + 0xd4, 0x2c, 0x01, 0xc6, 0x2c, 0x01, 0xa4, 0x2c, 0x01, 0x92, 0x2c, 0x01, + 0x84, 0x2c, 0x01, 0x66, 0x2c, 0x76, 0x2c, 0x02, 0x54, 0x2c, 0x01, 0x36, + 0x2c, 0x46, 0x2c, 0x02, 0x24, 0x2c, 0x01, 0x16, 0x2c, 0x01, 0x04, 0x2c, + 0x01, 0xf4, 0x2c, 0x40, 0xd5, 0x01, 0xe6, 0x2c, 0x01, 0xc4, 0x2c, 0x01, + 0xb2, 0x2c, 0x01, 0xa4, 0x2c, 0x01, 0x66, 0x2c, 0x86, 0x2c, 0x96, 0x2c, + 0x03, 0x44, 0x2c, 0x54, 0x2c, 0x02, 0x36, 0x2c, 0x01, 0x14, 0x2c, 0x01, + 0x06, 0x2c, 0x01, 0x69, 0xf6, 0x2c, 0x01, 0xe2, 0x2c, 0x01, 0xd4, 0x2c, + 0x01, 0x96, 0x2c, 0xb6, 0x2c, 0xc6, 0x2c, 0x03, 0x74, 0x2c, 0x84, 0x2c, + 0x02, 0x36, 0x2c, 0x46, 0x2c, 0x66, 0x2c, 0x03, 0x24, 0x2c, 0x01, 0x06, + 0x2c, 0x16, 0x2c, 0x02, 0xf4, 0x2c, 0x01, 0xb6, 0x2c, 0xe6, 0x2c, 0x02, + 0x94, 0x2c, 0xa4, 0x2c, 0x02, 0x86, 0x2c, 0x01, 0x69, 0x2c, 0x01, 0x56, + 0x2c, 0x01, 0x44, 0x2c, 0x01, 0x06, 0x2c, 0x36, 0x2c, 0x02, 0xe4, 0x2c, + 0x01, 0xd6, 0x2c, 0x01, 0xc4, 0x2c, 0x01, 0xa6, 0x2c, 0xb6, 0x2c, 0x02, + 0x89, 0x2c, 0x01, 0x72, 0x2c, 0x01, 0x01, 0x60, 0x2c, 0x01, 0x04, 0x2c, + 0x24, 0x2c, 0x54, 0x2c, 0x03, 0x38, 0xa4, 0x2c, 0xc4, 0x2c, 0xd4, 0x2c, + 0xf4, 0x2c, 0x04, 0x80, 0x2c, 0x01, 0x74, 0x2c, 0x01, 0x4b, 0x2c, 0x01, + 0x30, 0x2c, 0x01, 0x14, 0x2c, 0x24, 0x2c, 0x02, 0xfb, 0x2c, 0x01, 0xc4, + 0x2c, 0x01, 0xa0, 0x2c, 0x01, 0x94, 0x2c, 0x01, 0x7b, 0x2c, 0x01, 0x34, + 0x2c, 0x44, 0x2c, 0x64, 0x2c, 0x03, 0x1b, 0x2c, 0x01, 0xf0, 0x2c, 0x01, + 0xe4, 0x2c, 0x01, 0xcb, 0x2c, 0x01, 0x64, 0x2c, 0x84, 0x2c, 0x94, 0x2c, + 0xb4, 0x2c, 0x04, 0x3f, 0x2c, 0x01, 0x02, 0x00, 0x2c, 0x10, 0x2c, 0x02, + 0x08, 0x07, 0xb8, 0xff, 0xe0, 0x40, 0x28, 0x0e, 0x11, 0x48, 0x42, 0x07, + 0x01, 0x34, 0x07, 0x01, 0x22, 0x07, 0x01, 0x07, 0x1c, 0x29, 0x03, 0x0f, + 0x0f, 0x23, 0x28, 0x0c, 0x11, 0x48, 0x2d, 0x23, 0x01, 0x16, 0x28, 0x0c, + 0x11, 0x48, 0x2d, 0x16, 0x01, 0x01, 0x16, 0x23, 0x03, 0x0e, 0x15, 0x00, + 0x3f, 0x17, 0x33, 0x5d, 0x2b, 0x5d, 0x2b, 0x3f, 0x17, 0x33, 0x5d, 0x5d, + 0x5d, 0x2b, 0x01, 0x5e, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x2f, + 0x5e, 0x5d, 0x38, 0x33, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, + 0x2b, 0x38, 0x33, 0x12, 0x17, 0x39, 0x3d, 0x2f, 0x2f, 0x2f, 0x71, 0x72, + 0x11, 0x33, 0x33, 0x11, 0x33, 0x33, 0x11, 0x33, 0x33, 0x31, 0x30, 0x2b, + 0x5f, 0x71, 0x2b, 0x71, 0x2b, 0x71, 0x2b, 0x71, 0x2b, 0x5d, 0x71, 0x2b, + 0x5d, 0x71, 0x5d, 0x71, 0x5d, 0x71, 0x71, 0x21, 0x23, 0x03, 0x2e, 0x01, + 0x27, 0x26, 0x27, 0x06, 0x07, 0x0e, 0x01, 0x07, 0x03, 0x23, 0x01, 0x33, + 0x13, 0x1e, 0x01, 0x17, 0x16, 0x17, 0x36, 0x37, 0x3e, 0x01, 0x37, 0x13, + 0x33, 0x13, 0x1e, 0x01, 0x17, 0x16, 0x17, 0x36, 0x37, 0x3e, 0x01, 0x37, + 0x13, 0x33, 0x04, 0x96, 0xd1, 0xad, 0x08, 0x11, 0x08, 0x0a, 0x09, 0x09, + 0x0a, 0x08, 0x13, 0x08, 0xb2, 0xd0, 0xfe, 0xd1, 0xb2, 0xb7, 0x07, 0x0e, + 0x07, 0x07, 0x08, 0x08, 0x09, 0x08, 0x10, 0x06, 0xc4, 0xc1, 0xbd, 0x07, + 0x10, 0x07, 0x08, 0x08, 0x08, 0x08, 0x07, 0x0f, 0x07, 0xbf, 0xb0, 0x02, + 0xba, 0x1b, 0x50, 0x26, 0x2c, 0x2f, 0x2d, 0x2c, 0x26, 0x52, 0x1f, 0xfd, + 0x4a, 0x04, 0x3a, 0xfd, 0x21, 0x17, 0x43, 0x20, 0x25, 0x27, 0x26, 0x24, + 0x1f, 0x40, 0x15, 0x02, 0xe7, 0xfd, 0x19, 0x1a, 0x42, 0x1d, 0x22, 0x23, + 0x26, 0x24, 0x1f, 0x43, 0x1a, 0x02, 0xdf, 0x00, 0x00, 0x01, 0x00, 0x17, + 0x00, 0x00, 0x03, 0xea, 0x04, 0x3a, 0x00, 0x0b, 0x02, 0xd6, 0x40, 0x48, + 0x94, 0x02, 0x01, 0x86, 0x02, 0x01, 0x8d, 0x08, 0x9d, 0x08, 0x02, 0x79, + 0x08, 0x01, 0x82, 0x06, 0x92, 0x06, 0x02, 0x76, 0x06, 0x01, 0x8d, 0x00, + 0x9d, 0x00, 0x02, 0x79, 0x00, 0x01, 0x37, 0x0a, 0x77, 0x0a, 0x02, 0x1c, + 0x0a, 0x01, 0x7a, 0x04, 0x01, 0x13, 0x04, 0x01, 0x03, 0x18, 0x01, 0x78, + 0x01, 0x88, 0x01, 0x98, 0x01, 0x04, 0x17, 0x07, 0x87, 0x07, 0x97, 0x07, + 0x03, 0x06, 0x08, 0x0a, 0x01, 0x07, 0x04, 0x04, 0x09, 0x09, 0x10, 0x05, + 0xb8, 0xff, 0xf0, 0x40, 0x3b, 0x05, 0x09, 0x05, 0x09, 0x03, 0x00, 0x0b, + 0x10, 0x29, 0x0b, 0x39, 0x0b, 0x02, 0x04, 0x0b, 0x14, 0x0b, 0x02, 0xd6, + 0x0b, 0xe6, 0x0b, 0xf6, 0x0b, 0x03, 0xc4, 0x0b, 0x01, 0x96, 0x0b, 0xa6, + 0x0b, 0xb6, 0x0b, 0x03, 0x84, 0x0b, 0x01, 0x06, 0x0b, 0x26, 0x0b, 0x46, + 0x0b, 0x66, 0x0b, 0x86, 0x0b, 0x96, 0x0b, 0xa6, 0x0b, 0xc6, 0x0b, 0xe6, + 0x0b, 0x09, 0x08, 0x0b, 0xb8, 0xff, 0xc0, 0xb5, 0x18, 0x1f, 0x48, 0x0b, + 0x02, 0x03, 0xb8, 0xff, 0xf0, 0x40, 0x0b, 0x09, 0x03, 0x01, 0x09, 0x03, + 0x39, 0x03, 0x02, 0x0a, 0x03, 0x0d, 0xb8, 0xff, 0x80, 0x40, 0x74, 0xdf, + 0xe9, 0x48, 0x76, 0x0d, 0x01, 0x64, 0x0d, 0x01, 0x56, 0x0d, 0x01, 0x44, + 0x0d, 0x01, 0x36, 0x0d, 0x01, 0x24, 0x0d, 0x01, 0x16, 0x0d, 0x01, 0x04, + 0x0d, 0x01, 0xe6, 0x0d, 0xf6, 0x0d, 0x02, 0xd2, 0x0d, 0x01, 0xc0, 0x0d, + 0x01, 0xb2, 0x0d, 0x01, 0x84, 0x0d, 0x94, 0x0d, 0xa4, 0x0d, 0x03, 0x76, + 0x0d, 0x01, 0x64, 0x0d, 0x01, 0x56, 0x0d, 0x01, 0x44, 0x0d, 0x01, 0x36, + 0x0d, 0x01, 0x24, 0x0d, 0x01, 0x16, 0x0d, 0x01, 0x04, 0x0d, 0x01, 0xc7, + 0xf6, 0x0d, 0x01, 0xe4, 0x0d, 0x01, 0xd6, 0x0d, 0x01, 0xc4, 0x0d, 0x01, + 0xb6, 0x0d, 0x01, 0xa4, 0x0d, 0x01, 0x06, 0x0d, 0x46, 0x0d, 0x56, 0x0d, + 0x86, 0x0d, 0x96, 0x0d, 0xa6, 0x0d, 0xc6, 0x0d, 0xd6, 0x0d, 0xe6, 0x0d, + 0x09, 0x96, 0x0d, 0xc6, 0x0d, 0x02, 0x0d, 0xb8, 0xff, 0xc0, 0x40, 0xbb, + 0xb7, 0xc0, 0x48, 0x84, 0x0d, 0x01, 0x56, 0x0d, 0x66, 0x0d, 0x76, 0x0d, + 0x03, 0x44, 0x0d, 0x01, 0x26, 0x0d, 0x36, 0x0d, 0x02, 0x04, 0x0d, 0x01, + 0x97, 0x26, 0x0d, 0x36, 0x0d, 0x66, 0x0d, 0x76, 0x0d, 0xa6, 0x0d, 0xb6, + 0x0d, 0xc6, 0x0d, 0xe6, 0x0d, 0xf6, 0x0d, 0x09, 0xe6, 0x0d, 0x01, 0x84, + 0x0d, 0x01, 0x76, 0x0d, 0x01, 0x44, 0x0d, 0x54, 0x0d, 0x64, 0x0d, 0x03, + 0x36, 0x0d, 0x01, 0x24, 0x0d, 0x01, 0x16, 0x0d, 0x01, 0x04, 0x0d, 0x01, + 0xf6, 0x0d, 0x01, 0xe4, 0x0d, 0x01, 0xd6, 0x0d, 0x01, 0xc4, 0x0d, 0x01, + 0xb6, 0x0d, 0x01, 0xa4, 0x0d, 0x01, 0x76, 0x0d, 0x86, 0x0d, 0x96, 0x0d, + 0x03, 0x64, 0x0d, 0x01, 0x06, 0x0d, 0x16, 0x0d, 0x26, 0x0d, 0x46, 0x0d, + 0x56, 0x0d, 0x05, 0x67, 0x06, 0x0d, 0x46, 0x0d, 0x56, 0x0d, 0x86, 0x0d, + 0x96, 0x0d, 0xc6, 0x0d, 0xd6, 0x0d, 0xe6, 0x0d, 0x08, 0x99, 0x0d, 0xd9, + 0x0d, 0x02, 0x64, 0x0d, 0x01, 0x56, 0x0d, 0x01, 0x44, 0x0d, 0x01, 0x36, + 0x0d, 0x01, 0x24, 0x0d, 0x01, 0x16, 0x0d, 0x01, 0x04, 0x0d, 0x01, 0xd6, + 0x0d, 0xe6, 0x0d, 0xf6, 0x0d, 0x03, 0xc4, 0x0d, 0x01, 0x06, 0x0d, 0x26, + 0x0d, 0x36, 0x0d, 0x46, 0x0d, 0x04, 0x37, 0x66, 0x0d, 0xa6, 0x0d, 0xb6, + 0x0d, 0xe6, 0x0d, 0xf6, 0x0d, 0x05, 0x0d, 0xb8, 0xff, 0xc0, 0x40, 0x36, + 0x3d, 0x42, 0x48, 0x39, 0x0d, 0x01, 0x22, 0x0d, 0x01, 0x01, 0x00, 0x0d, + 0x10, 0x0d, 0x02, 0xf4, 0x0d, 0x01, 0xc0, 0x0d, 0xd0, 0x0d, 0xe0, 0x0d, + 0x03, 0xb4, 0x0d, 0x01, 0x80, 0x0d, 0x90, 0x0d, 0xa0, 0x0d, 0x03, 0x74, + 0x0d, 0x01, 0x60, 0x0d, 0x01, 0x54, 0x0d, 0x01, 0x40, 0x0d, 0x01, 0x34, + 0x0d, 0x01, 0x20, 0x0d, 0x01, 0x0d, 0xb8, 0xff, 0xc0, 0x40, 0x22, 0x12, + 0x18, 0x48, 0xa0, 0x0d, 0x01, 0x02, 0x00, 0x0d, 0x10, 0x0d, 0x50, 0x0d, + 0x70, 0x0d, 0x80, 0x0d, 0x90, 0x0d, 0x06, 0x07, 0x0a, 0x04, 0x04, 0x07, + 0x01, 0x03, 0x02, 0x08, 0x06, 0x0f, 0x00, 0x02, 0x15, 0x00, 0x3f, 0x33, + 0x3f, 0x33, 0x12, 0x17, 0x39, 0x11, 0x01, 0x33, 0x5e, 0x5d, 0x5f, 0x5d, + 0x2b, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, + 0x5f, 0x72, 0x72, 0x2b, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x71, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x2b, 0x2f, 0x5e, 0x5d, 0x72, 0x38, 0x33, 0x2f, 0x2b, 0x5e, + 0x5d, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x38, 0x33, 0x12, 0x39, 0x39, + 0x2f, 0x2f, 0x38, 0x38, 0x12, 0x17, 0x39, 0x32, 0x33, 0x31, 0x30, 0x00, + 0x5d, 0x5d, 0x01, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x21, 0x09, 0x01, 0x23, 0x09, 0x01, 0x33, 0x09, + 0x01, 0x33, 0x09, 0x01, 0x03, 0x21, 0xfe, 0xdd, 0xfe, 0xdb, 0xc2, 0x01, + 0x81, 0xfe, 0x91, 0xc7, 0x01, 0x0e, 0x01, 0x0c, 0xc9, 0xfe, 0x91, 0x01, + 0x86, 0x01, 0xbc, 0xfe, 0x44, 0x02, 0x2c, 0x02, 0x0e, 0xfe, 0x5b, 0x01, + 0xa5, 0xfd, 0xf4, 0xfd, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x05, + 0xfe, 0x57, 0x03, 0xfc, 0x04, 0x3a, 0x00, 0x1f, 0x02, 0xcf, 0x40, 0x3b, + 0x93, 0x03, 0x01, 0x93, 0x02, 0x01, 0x99, 0x10, 0x01, 0x96, 0x00, 0x01, + 0x8d, 0x10, 0x9d, 0x10, 0x02, 0x8d, 0x00, 0x9d, 0x00, 0x02, 0x7a, 0x1d, + 0x8a, 0x1d, 0x9a, 0x1d, 0x03, 0x69, 0x1d, 0x01, 0x9d, 0x1e, 0x01, 0x1e, + 0x10, 0x0d, 0x10, 0x48, 0x92, 0x13, 0x01, 0x86, 0x13, 0x01, 0x72, 0x13, + 0x01, 0x56, 0x13, 0x66, 0x13, 0x02, 0x92, 0x12, 0x01, 0x03, 0x12, 0xb8, + 0xff, 0xf0, 0x40, 0x24, 0x0d, 0x10, 0x48, 0x10, 0x00, 0x18, 0x08, 0x18, + 0x08, 0x18, 0x11, 0x1e, 0x1f, 0x10, 0x99, 0x1f, 0x01, 0x86, 0x1f, 0x01, + 0x59, 0x1f, 0x01, 0x46, 0x1f, 0x01, 0x19, 0x1f, 0x01, 0x06, 0x1f, 0x01, + 0x08, 0x1f, 0x12, 0x11, 0xb8, 0xff, 0xf0, 0x40, 0x24, 0x11, 0x06, 0x21, + 0x01, 0x06, 0x21, 0x26, 0x21, 0x36, 0x21, 0x46, 0x21, 0x66, 0x21, 0x76, + 0x21, 0x86, 0x21, 0xa6, 0x21, 0xb6, 0x21, 0xc6, 0x21, 0xe6, 0x21, 0xf6, + 0x21, 0x0c, 0xc7, 0xe6, 0x21, 0xf6, 0x21, 0x02, 0x21, 0xb8, 0xff, 0xc0, + 0x40, 0xff, 0xd9, 0xe9, 0x48, 0xc4, 0x21, 0x01, 0xa6, 0x21, 0xb6, 0x21, + 0x02, 0x84, 0x21, 0x01, 0x06, 0x21, 0x26, 0x21, 0x36, 0x21, 0x46, 0x21, + 0x66, 0x21, 0x76, 0x21, 0x06, 0x06, 0x21, 0x26, 0x21, 0x36, 0x21, 0x46, + 0x21, 0x66, 0x21, 0x76, 0x21, 0x86, 0x21, 0xa6, 0x21, 0xb6, 0x21, 0xc6, + 0x21, 0xe6, 0x21, 0xf6, 0x21, 0x0c, 0x06, 0x21, 0x16, 0x21, 0x26, 0x21, + 0x46, 0x21, 0x56, 0x21, 0x66, 0x21, 0x86, 0x21, 0xa6, 0x21, 0xc6, 0x21, + 0xe6, 0x21, 0xf6, 0x21, 0x0b, 0x97, 0xf4, 0x21, 0x01, 0xe0, 0x21, 0x01, + 0xc2, 0x21, 0xd2, 0x21, 0x02, 0xb4, 0x21, 0x01, 0xa0, 0x21, 0x01, 0x82, + 0x21, 0x92, 0x21, 0x02, 0x74, 0x21, 0x01, 0x60, 0x21, 0x01, 0x42, 0x21, + 0x52, 0x21, 0x02, 0x34, 0x21, 0x01, 0x20, 0x21, 0x01, 0x02, 0x21, 0x12, + 0x21, 0x02, 0xe4, 0x21, 0xf4, 0x21, 0x02, 0xc2, 0x21, 0xd2, 0x21, 0x02, + 0xa4, 0x21, 0xb4, 0x21, 0x02, 0x82, 0x21, 0x92, 0x21, 0x02, 0x64, 0x21, + 0x74, 0x21, 0x02, 0x42, 0x21, 0x52, 0x21, 0x02, 0x24, 0x21, 0x34, 0x21, + 0x02, 0x02, 0x21, 0x12, 0x21, 0x02, 0xe4, 0x21, 0xf4, 0x21, 0x02, 0xc2, + 0x21, 0xd2, 0x21, 0x02, 0xa4, 0x21, 0xb4, 0x21, 0x02, 0x82, 0x21, 0x92, + 0x21, 0x02, 0x64, 0x21, 0x74, 0x21, 0x02, 0x56, 0x21, 0x01, 0x42, 0x21, + 0x01, 0x24, 0x21, 0x34, 0x21, 0x02, 0x16, 0x21, 0x01, 0x02, 0x21, 0x01, + 0x67, 0xe4, 0x21, 0xf4, 0x21, 0x02, 0xd6, 0x21, 0x01, 0xc2, 0x21, 0x01, + 0xa4, 0x21, 0xb4, 0x21, 0x02, 0x96, 0x21, 0x01, 0x82, 0x21, 0x01, 0x64, + 0x21, 0x74, 0x21, 0x02, 0x56, 0x21, 0x01, 0x42, 0x21, 0x01, 0x24, 0x21, + 0x34, 0x21, 0x02, 0x16, 0x21, 0x01, 0x02, 0x21, 0x01, 0xe4, 0x21, 0xf4, + 0x21, 0x02, 0xd6, 0x21, 0x01, 0x40, 0xa6, 0xc2, 0x21, 0x01, 0x01, 0xa0, + 0x21, 0xb0, 0x21, 0x02, 0x84, 0x21, 0x94, 0x21, 0x02, 0x60, 0x21, 0x70, + 0x21, 0x02, 0x44, 0x21, 0x54, 0x21, 0x02, 0x20, 0x21, 0x30, 0x21, 0x02, + 0x04, 0x21, 0x14, 0x21, 0x02, 0xe0, 0x21, 0xf0, 0x21, 0x02, 0xc4, 0x21, + 0xd4, 0x21, 0x02, 0xa0, 0x21, 0xb0, 0x21, 0x02, 0x84, 0x21, 0x94, 0x21, + 0x02, 0x60, 0x21, 0x70, 0x21, 0x02, 0x44, 0x21, 0x54, 0x21, 0x02, 0x20, + 0x21, 0x30, 0x21, 0x02, 0x04, 0x21, 0x14, 0x21, 0x02, 0x37, 0xe0, 0x21, + 0x01, 0xc4, 0x21, 0xd4, 0x21, 0x02, 0xa0, 0x21, 0x01, 0x84, 0x21, 0x94, + 0x21, 0x02, 0x60, 0x21, 0x01, 0x44, 0x21, 0x54, 0x21, 0x02, 0x20, 0x21, + 0x01, 0x04, 0x21, 0x14, 0x21, 0x02, 0xe0, 0x21, 0x01, 0xc4, 0x21, 0xd4, + 0x21, 0x02, 0xa0, 0x21, 0x01, 0x84, 0x21, 0x94, 0x21, 0x02, 0x60, 0x21, + 0x01, 0x02, 0x00, 0x21, 0x20, 0x21, 0x30, 0x21, 0x50, 0x21, 0x04, 0x50, + 0x21, 0x80, 0x21, 0x90, 0x21, 0xc0, 0x21, 0x04, 0x2f, 0x21, 0x01, 0x00, + 0x21, 0x10, 0x21, 0x02, 0x07, 0x10, 0x00, 0x18, 0x00, 0x20, 0x1e, 0x11, + 0x0f, 0x0c, 0x50, 0x05, 0x1b, 0x00, 0x3f, 0xed, 0x3f, 0x33, 0x11, 0x33, + 0x33, 0x11, 0x33, 0x01, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x5f, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x5f, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x5e, 0x5d, 0x71, 0x72, 0x72, 0x72, 0x72, 0x2b, 0x72, 0x5e, 0x5d, + 0x71, 0x2f, 0x38, 0x33, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x38, 0x33, 0x12, 0x39, 0x39, 0x3d, 0x2f, 0x18, 0x2f, 0x11, 0x33, 0x33, + 0x31, 0x30, 0x2b, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, + 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x21, 0x0e, 0x03, + 0x23, 0x22, 0x26, 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x36, 0x3f, 0x01, + 0x01, 0x33, 0x13, 0x1e, 0x03, 0x17, 0x3e, 0x03, 0x37, 0x13, 0x33, 0x02, + 0x5c, 0x26, 0x4f, 0x62, 0x78, 0x4e, 0x22, 0x3a, 0x20, 0x13, 0x30, 0x11, + 0x4f, 0x88, 0x33, 0x11, 0xfe, 0x53, 0xc0, 0xe4, 0x0a, 0x1f, 0x1f, 0x18, + 0x02, 0x03, 0x17, 0x1d, 0x1e, 0x0a, 0xd4, 0xbe, 0x62, 0x9d, 0x6f, 0x3b, + 0x04, 0x07, 0x87, 0x03, 0x03, 0x76, 0x81, 0x2b, 0x04, 0x35, 0xfd, 0xaa, + 0x1b, 0x5a, 0x5a, 0x48, 0x09, 0x0b, 0x41, 0x50, 0x52, 0x1e, 0x02, 0x6a, + 0x00, 0x01, 0x00, 0x31, 0x00, 0x00, 0x03, 0xb6, 0x04, 0x3a, 0x00, 0x09, + 0x01, 0x0b, 0x40, 0x4e, 0x9d, 0x02, 0xad, 0x02, 0x02, 0x8b, 0x02, 0x01, + 0x59, 0x02, 0x69, 0x02, 0x02, 0x92, 0x07, 0xa2, 0x07, 0x02, 0x74, 0x07, + 0x84, 0x07, 0x02, 0x46, 0x07, 0x56, 0x07, 0x66, 0x07, 0x03, 0x28, 0x08, + 0x01, 0x03, 0x08, 0x02, 0x7b, 0x06, 0x01, 0x04, 0x06, 0x14, 0x06, 0x24, + 0x06, 0xa4, 0x06, 0xb4, 0x06, 0xd4, 0x06, 0xe4, 0x06, 0x07, 0x07, 0x06, + 0x07, 0x03, 0x0b, 0x01, 0x3b, 0x01, 0x5b, 0x01, 0x03, 0x0a, 0x01, 0x40, + 0x27, 0x37, 0x48, 0x01, 0x40, 0x11, 0x14, 0x48, 0x01, 0x0b, 0xb8, 0xff, + 0xc0, 0x40, 0x28, 0x5c, 0x64, 0x48, 0xc0, 0x0b, 0x01, 0xb4, 0x0b, 0x01, + 0xa0, 0x0b, 0x01, 0x94, 0x0b, 0x01, 0x80, 0x0b, 0x01, 0x74, 0x0b, 0x01, + 0x60, 0x0b, 0x01, 0x54, 0x0b, 0x01, 0x40, 0x0b, 0x01, 0x34, 0x0b, 0x44, + 0x0b, 0x64, 0x0b, 0x84, 0x0b, 0x04, 0x0b, 0xb8, 0xff, 0xc0, 0x40, 0x20, + 0x49, 0x52, 0x48, 0x20, 0x0b, 0x01, 0x14, 0x0b, 0x01, 0x00, 0x0b, 0x01, + 0x3f, 0x44, 0x0b, 0x64, 0x0b, 0x84, 0x0b, 0xa4, 0x0b, 0x04, 0x04, 0x0b, + 0x24, 0x0b, 0x44, 0x0b, 0x64, 0x0b, 0x04, 0x0b, 0xb8, 0xff, 0xc0, 0xb3, + 0x33, 0x3e, 0x48, 0x0b, 0xb8, 0xff, 0xc0, 0x40, 0x12, 0x1f, 0x27, 0x48, + 0xe0, 0x0b, 0x01, 0x02, 0x00, 0x0b, 0x20, 0x0b, 0x50, 0x0b, 0x70, 0x0b, + 0x04, 0x07, 0x0b, 0xb8, 0xff, 0xc0, 0x40, 0x0d, 0x10, 0x14, 0x48, 0x06, + 0x03, 0x50, 0x04, 0x0f, 0x01, 0x07, 0x50, 0x00, 0x15, 0x00, 0x3f, 0xed, + 0x32, 0x3f, 0xed, 0x32, 0x01, 0x2b, 0x5e, 0x5d, 0x5f, 0x5d, 0x2b, 0x2b, + 0x71, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x2b, 0x2f, 0x2b, 0x2b, 0x5e, 0x5d, 0x33, + 0x33, 0x2f, 0x5e, 0x5d, 0x71, 0x33, 0x33, 0x5f, 0x71, 0x31, 0x30, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x33, 0x35, 0x01, 0x21, 0x35, 0x21, 0x15, + 0x01, 0x21, 0x15, 0x31, 0x02, 0x95, 0xfd, 0x93, 0x03, 0x38, 0xfd, 0x6a, + 0x02, 0xbb, 0x89, 0x03, 0x26, 0x8b, 0x89, 0xfc, 0xda, 0x8b, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x22, 0xfe, 0x57, 0x02, 0x88, 0x05, 0xcc, 0x00, 0x2d, + 0x00, 0x60, 0x40, 0x41, 0x03, 0x20, 0x09, 0x0c, 0x48, 0x13, 0x20, 0x09, + 0x0d, 0x48, 0x17, 0x2d, 0x21, 0x1c, 0x28, 0xf0, 0x11, 0x0b, 0x1f, 0x05, + 0x3f, 0x05, 0x02, 0x8f, 0x05, 0x01, 0x40, 0x05, 0x01, 0x05, 0x21, 0x0b, + 0xf5, 0x2f, 0x0c, 0x6f, 0x0c, 0x02, 0x0f, 0x0c, 0x4f, 0x0c, 0xdf, 0x0c, + 0xef, 0x0c, 0x04, 0x2f, 0x0c, 0x4f, 0x0c, 0x6f, 0x0c, 0x03, 0x0c, 0x0c, + 0x00, 0x18, 0xf5, 0x15, 0x00, 0x2b, 0xf5, 0x00, 0x1b, 0x00, 0x3f, 0xed, + 0x3f, 0xed, 0x12, 0x39, 0x2f, 0x5d, 0x71, 0x72, 0xed, 0x39, 0x01, 0x2f, + 0x5d, 0x5d, 0x71, 0x33, 0x33, 0xed, 0x32, 0x32, 0xcd, 0x32, 0x31, 0x30, + 0x2b, 0x2b, 0x01, 0x22, 0x2e, 0x02, 0x35, 0x11, 0x34, 0x2e, 0x02, 0x27, + 0x35, 0x3e, 0x03, 0x35, 0x11, 0x34, 0x36, 0x3b, 0x01, 0x15, 0x23, 0x22, + 0x06, 0x15, 0x11, 0x14, 0x0e, 0x02, 0x07, 0x15, 0x1e, 0x03, 0x15, 0x11, + 0x14, 0x16, 0x3b, 0x01, 0x15, 0x02, 0x01, 0x41, 0x63, 0x42, 0x22, 0x1d, + 0x37, 0x50, 0x33, 0x33, 0x50, 0x37, 0x1d, 0x85, 0x83, 0x87, 0x3f, 0x5b, + 0x4d, 0x1e, 0x34, 0x47, 0x29, 0x2b, 0x47, 0x33, 0x1d, 0x4d, 0x5b, 0x3f, + 0xfe, 0x57, 0x29, 0x4c, 0x6c, 0x44, 0x01, 0x69, 0x3f, 0x58, 0x38, 0x1c, + 0x02, 0x7f, 0x02, 0x1c, 0x38, 0x58, 0x3e, 0x01, 0x6a, 0x8d, 0x98, 0x81, + 0x6b, 0x6c, 0xfe, 0x9c, 0x32, 0x54, 0x40, 0x2c, 0x0a, 0x02, 0x0a, 0x2c, + 0x41, 0x54, 0x33, 0xfe, 0x9b, 0x6a, 0x6d, 0x81, 0x00, 0x01, 0x00, 0xb7, + 0xfe, 0x4e, 0x01, 0x5d, 0x05, 0xcc, 0x00, 0x03, 0x01, 0xcf, 0x40, 0x15, + 0x03, 0xab, 0x06, 0x00, 0x01, 0x0b, 0x00, 0x00, 0x04, 0x05, 0xd6, 0x05, + 0xe6, 0x05, 0xf6, 0x05, 0x03, 0xc2, 0x05, 0x01, 0x05, 0xb8, 0xff, 0x80, + 0xb3, 0xe2, 0xe5, 0x48, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0xde, 0xe1, + 0x48, 0x02, 0x05, 0x12, 0x05, 0x02, 0xda, 0x05, 0xb8, 0xff, 0x80, 0xb3, + 0xd6, 0xd9, 0x48, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x14, 0xd2, 0xd5, 0x48, + 0xb4, 0x05, 0xc4, 0x05, 0x02, 0xa2, 0x05, 0x01, 0x01, 0x70, 0x05, 0x80, + 0x05, 0x90, 0x05, 0x03, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x14, 0xc7, 0xca, + 0x48, 0x00, 0x05, 0x01, 0xf0, 0x05, 0x01, 0xd4, 0x05, 0xe4, 0x05, 0x02, + 0xb0, 0x05, 0xc0, 0x05, 0x02, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x2b, 0xbb, + 0xbe, 0x48, 0x30, 0x05, 0x40, 0x05, 0x50, 0x05, 0x03, 0x04, 0x05, 0x14, + 0x05, 0x24, 0x05, 0x03, 0xf0, 0x05, 0x01, 0xc4, 0x05, 0xd4, 0x05, 0xe4, + 0x05, 0x03, 0x80, 0x05, 0x90, 0x05, 0xa0, 0x05, 0x03, 0x04, 0x05, 0x14, + 0x05, 0x24, 0x05, 0x03, 0xa4, 0x05, 0xb8, 0xff, 0xc0, 0xb3, 0xa8, 0xab, + 0x48, 0x05, 0xb8, 0xff, 0x80, 0xb3, 0xa0, 0xa3, 0x48, 0x05, 0xb8, 0xff, + 0xc0, 0x40, 0x0e, 0x9c, 0x9f, 0x48, 0x70, 0x05, 0x80, 0x05, 0x90, 0x05, + 0x03, 0xe4, 0x05, 0x01, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x0b, 0x91, 0x94, + 0x48, 0xb0, 0x05, 0xc0, 0x05, 0xd0, 0x05, 0x03, 0x05, 0xb8, 0xff, 0xc0, + 0x40, 0x0f, 0x85, 0x88, 0x48, 0x30, 0x05, 0x01, 0x14, 0x05, 0x24, 0x05, + 0x02, 0x00, 0x05, 0x01, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x0f, 0x7a, 0x7d, + 0x48, 0x80, 0x05, 0x01, 0x04, 0x05, 0x14, 0x05, 0x24, 0x05, 0x03, 0x6e, + 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x72, 0x75, 0x48, 0xc0, 0x05, 0x01, + 0x54, 0x05, 0x01, 0x05, 0xb8, 0xff, 0xc0, 0xb6, 0x66, 0x69, 0x48, 0x10, + 0x05, 0x01, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x09, 0x5b, 0x5e, 0x48, 0x50, + 0x05, 0x60, 0x05, 0x02, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x0f, 0x4f, 0x52, + 0x48, 0xcb, 0x05, 0xdb, 0x05, 0x02, 0xa0, 0x05, 0xb0, 0x05, 0x02, 0x02, + 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x44, 0x47, 0x48, 0x0f, 0x05, 0x1f, + 0x05, 0x02, 0x3e, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x1d, 0x38, 0x3d, 0x48, + 0xcf, 0x05, 0x01, 0x60, 0x05, 0x70, 0x05, 0xa0, 0x05, 0xb0, 0x05, 0x04, + 0x1f, 0x05, 0x01, 0x00, 0x05, 0x01, 0xa0, 0x05, 0xe0, 0x05, 0xf0, 0x05, + 0x03, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x1c, 0x19, 0x1c, 0x48, 0x05, 0x40, + 0x11, 0x15, 0x48, 0x40, 0x05, 0x70, 0x05, 0x80, 0x05, 0x90, 0x05, 0x04, + 0x0f, 0x05, 0x1f, 0x05, 0x2f, 0x05, 0x03, 0x07, 0x01, 0x00, 0x00, 0x00, + 0x2f, 0x3f, 0x01, 0x5e, 0x5d, 0x5d, 0x2b, 0x2b, 0x71, 0x72, 0x72, 0x72, + 0x72, 0x2b, 0x5e, 0x5d, 0x2b, 0x5f, 0x5d, 0x5d, 0x2b, 0x71, 0x2b, 0x72, + 0x2b, 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, 0x2b, 0x71, 0x71, 0x71, 0x2b, + 0x71, 0x2b, 0x71, 0x72, 0x2b, 0x2b, 0x2b, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, + 0x71, 0x71, 0x2b, 0x71, 0x71, 0x71, 0x72, 0x2b, 0x72, 0x5f, 0x72, 0x72, + 0x2b, 0x2b, 0x5e, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, 0x11, 0x12, 0x39, 0x2f, + 0x5e, 0x5d, 0xed, 0x31, 0x30, 0x13, 0x11, 0x33, 0x11, 0xb7, 0xa6, 0xfe, + 0x4e, 0x07, 0x7e, 0xf8, 0x82, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x22, + 0xfe, 0x57, 0x02, 0x87, 0x05, 0xcc, 0x00, 0x2d, 0x00, 0x62, 0xb9, 0x00, + 0x28, 0xff, 0xe0, 0xb3, 0x09, 0x0c, 0x48, 0x18, 0xb8, 0xff, 0xe0, 0x40, + 0x37, 0x09, 0x0d, 0x48, 0x14, 0x2c, 0x20, 0x1a, 0x26, 0xf0, 0x0f, 0x09, + 0x30, 0x03, 0x01, 0xc0, 0x03, 0xd0, 0x03, 0x02, 0x03, 0x09, 0x20, 0xf5, + 0x2f, 0x1f, 0x6f, 0x1f, 0x02, 0x0f, 0x1f, 0x4f, 0x1f, 0xdf, 0x1f, 0xef, + 0x1f, 0x04, 0x2f, 0x1f, 0x4f, 0x1f, 0x6f, 0x1f, 0x03, 0x1f, 0x1f, 0x15, + 0x2d, 0xf5, 0x2c, 0x1b, 0x14, 0xf5, 0x15, 0x00, 0x00, 0x3f, 0xed, 0x3f, + 0xed, 0x12, 0x39, 0x2f, 0x5d, 0x71, 0x72, 0xed, 0x39, 0x01, 0x2f, 0x5d, + 0x71, 0x33, 0x33, 0xfd, 0x32, 0x32, 0xcd, 0x32, 0x31, 0x30, 0x2b, 0x2b, + 0x13, 0x32, 0x36, 0x35, 0x11, 0x34, 0x3e, 0x02, 0x37, 0x35, 0x2e, 0x03, + 0x35, 0x11, 0x34, 0x26, 0x2b, 0x01, 0x35, 0x33, 0x32, 0x16, 0x15, 0x11, + 0x14, 0x1e, 0x02, 0x17, 0x15, 0x0e, 0x03, 0x15, 0x11, 0x14, 0x0e, 0x02, + 0x2b, 0x01, 0x35, 0x5e, 0x5b, 0x4f, 0x1c, 0x33, 0x47, 0x2b, 0x2a, 0x46, + 0x34, 0x1d, 0x4f, 0x5b, 0x3c, 0x84, 0x83, 0x85, 0x1d, 0x37, 0x51, 0x34, + 0x34, 0x51, 0x37, 0x1d, 0x22, 0x42, 0x63, 0x41, 0x84, 0xfe, 0xd8, 0x6d, + 0x6a, 0x01, 0x65, 0x33, 0x54, 0x41, 0x2c, 0x0a, 0x02, 0x0a, 0x2c, 0x40, + 0x54, 0x32, 0x01, 0x64, 0x6c, 0x6b, 0x81, 0x98, 0x8d, 0xfe, 0x96, 0x3e, + 0x58, 0x38, 0x1c, 0x02, 0x7f, 0x02, 0x1c, 0x38, 0x58, 0x3f, 0xfe, 0x97, + 0x44, 0x6c, 0x4c, 0x29, 0x81, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x5c, + 0x02, 0x29, 0x04, 0x50, 0x03, 0x27, 0x00, 0x20, 0x00, 0x9a, 0x40, 0x1a, + 0x5a, 0x03, 0x8a, 0x03, 0x02, 0x19, 0x02, 0x29, 0x02, 0x39, 0x02, 0x03, + 0x1e, 0x30, 0x0a, 0x10, 0x48, 0x0d, 0x1f, 0x01, 0x19, 0x30, 0x09, 0x0c, + 0x48, 0x0d, 0xb8, 0xff, 0xd0, 0xb3, 0x09, 0x0d, 0x48, 0x07, 0xb8, 0xff, + 0xd0, 0x40, 0x13, 0x09, 0x0d, 0x48, 0x00, 0x1b, 0x20, 0x1b, 0x70, 0x1b, + 0x03, 0x1b, 0x20, 0x0a, 0x01, 0x0a, 0x18, 0xad, 0x40, 0x0a, 0xb8, 0xff, + 0xc0, 0xb4, 0x26, 0x3c, 0x48, 0x0a, 0x00, 0xb8, 0xff, 0xc0, 0xb3, 0x17, + 0x1c, 0x48, 0x00, 0xb8, 0xff, 0xc0, 0x40, 0x29, 0x0e, 0x14, 0x48, 0x00, + 0x80, 0x1b, 0x40, 0x29, 0x3c, 0x48, 0x1b, 0x05, 0xad, 0x1f, 0x0e, 0x4f, + 0x0e, 0x9f, 0x0e, 0x03, 0x6f, 0x0e, 0x7f, 0x0e, 0x9f, 0x0e, 0xaf, 0x0e, + 0xcf, 0x0e, 0xef, 0x0e, 0xff, 0x0e, 0x07, 0x0e, 0x40, 0x09, 0x0d, 0x48, + 0x0e, 0x00, 0x2f, 0x2b, 0x5d, 0x71, 0xed, 0xc4, 0x2b, 0x1a, 0xdd, 0x2b, + 0x2b, 0xc4, 0x2b, 0x1a, 0xed, 0x01, 0x2f, 0x5d, 0x2f, 0x5d, 0x31, 0x30, + 0x00, 0x2b, 0x2b, 0x2b, 0x5d, 0x2b, 0x5d, 0x5d, 0x01, 0x22, 0x26, 0x27, + 0x26, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x35, 0x3e, 0x01, 0x33, 0x32, 0x1e, + 0x02, 0x17, 0x1e, 0x03, 0x33, 0x32, 0x36, 0x37, 0x15, 0x0e, 0x03, 0x03, + 0x4c, 0x45, 0x91, 0x49, 0x81, 0x58, 0x26, 0x41, 0x3c, 0x38, 0x1d, 0x32, + 0x84, 0x51, 0x28, 0x50, 0x4d, 0x4b, 0x25, 0x15, 0x32, 0x33, 0x33, 0x17, + 0x45, 0x7b, 0x34, 0x20, 0x3b, 0x3d, 0x44, 0x02, 0x29, 0x2c, 0x1a, 0x2d, + 0x0c, 0x17, 0x20, 0x15, 0x8f, 0x26, 0x2e, 0x0d, 0x14, 0x1a, 0x0d, 0x08, + 0x0f, 0x0e, 0x08, 0x32, 0x2a, 0x95, 0x17, 0x1e, 0x13, 0x08, 0x00, 0x00, + 0x00, 0x02, 0x00, 0xf2, 0xfe, 0xb9, 0x01, 0xb8, 0x04, 0x3a, 0x00, 0x03, + 0x00, 0x07, 0x02, 0x13, 0x40, 0x85, 0x02, 0x5b, 0x03, 0x03, 0xa6, 0x05, + 0xb6, 0x05, 0x02, 0x05, 0x96, 0x69, 0x06, 0xb9, 0x06, 0x02, 0x46, 0x06, + 0x56, 0x06, 0x02, 0x39, 0x06, 0x01, 0x06, 0x40, 0x17, 0x1b, 0x48, 0xb6, + 0x06, 0xc6, 0x06, 0x02, 0x49, 0x06, 0x59, 0x06, 0x69, 0x06, 0x03, 0x16, + 0x06, 0x36, 0x06, 0x02, 0x09, 0x06, 0x01, 0x0a, 0x06, 0x79, 0x09, 0x89, + 0x09, 0x99, 0x09, 0xc9, 0x09, 0x04, 0x46, 0x09, 0x01, 0x09, 0x09, 0x39, + 0x09, 0x02, 0xf9, 0x09, 0x01, 0xb6, 0x09, 0x01, 0x69, 0x09, 0x79, 0x09, + 0xa9, 0x09, 0x03, 0x26, 0x09, 0x01, 0x09, 0x09, 0x01, 0xcc, 0xd9, 0x09, + 0xe9, 0x09, 0x02, 0x96, 0x09, 0x01, 0x49, 0x09, 0x59, 0x09, 0x79, 0x09, + 0x03, 0x06, 0x09, 0x01, 0xb9, 0x09, 0xc9, 0x09, 0x02, 0x86, 0x09, 0x01, + 0x74, 0x09, 0x01, 0x56, 0x09, 0x66, 0x09, 0x02, 0x44, 0x09, 0x01, 0x16, + 0x09, 0x26, 0x09, 0x36, 0x09, 0x03, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x0e, + 0xa8, 0xab, 0x48, 0xb4, 0x09, 0x01, 0x86, 0x09, 0x96, 0x09, 0xa6, 0x09, + 0x03, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x16, 0x9f, 0xa2, 0x48, 0x24, 0x09, + 0x01, 0x06, 0x09, 0x16, 0x09, 0x02, 0x9c, 0xb6, 0x09, 0xc6, 0x09, 0xd6, + 0x09, 0xf6, 0x09, 0x04, 0x09, 0xb8, 0xff, 0x40, 0x40, 0x0e, 0x93, 0x96, + 0x48, 0x66, 0x09, 0x01, 0x96, 0x09, 0xa6, 0x09, 0xb6, 0x09, 0x03, 0x09, + 0xb8, 0xff, 0xc0, 0x40, 0x18, 0x89, 0x90, 0x48, 0x62, 0x09, 0x72, 0x09, + 0x82, 0x09, 0x03, 0x40, 0x09, 0x50, 0x09, 0x02, 0x22, 0x09, 0x32, 0x09, + 0x02, 0x10, 0x09, 0x01, 0x09, 0xb8, 0xff, 0x40, 0xb6, 0x75, 0x7c, 0x48, + 0x80, 0x09, 0x01, 0x09, 0xb8, 0xff, 0x40, 0x40, 0x0a, 0x6e, 0x73, 0x48, + 0x04, 0x09, 0x14, 0x09, 0x02, 0x6c, 0x09, 0xb8, 0xff, 0x40, 0x40, 0x3e, + 0x65, 0x6b, 0x48, 0xb4, 0x09, 0xc4, 0x09, 0xd4, 0x09, 0x03, 0x96, 0x09, + 0xa6, 0x09, 0x02, 0x84, 0x09, 0x01, 0x76, 0x09, 0x01, 0x52, 0x09, 0x62, + 0x09, 0x02, 0x24, 0x09, 0x34, 0x09, 0x44, 0x09, 0x03, 0x06, 0x09, 0x16, + 0x09, 0x02, 0xf6, 0x09, 0x01, 0xc2, 0x09, 0xd2, 0x09, 0x02, 0x01, 0x90, + 0x09, 0xa0, 0x09, 0xb0, 0x09, 0x03, 0x64, 0x09, 0x74, 0x09, 0x84, 0x09, + 0x03, 0x09, 0xb8, 0xff, 0x80, 0x40, 0x10, 0x47, 0x4b, 0x48, 0xd4, 0x09, + 0xe4, 0x09, 0xf4, 0x09, 0x03, 0xa0, 0x09, 0xb0, 0x09, 0x02, 0x09, 0xb8, + 0xff, 0xc0, 0x40, 0x3d, 0x3b, 0x40, 0x48, 0x10, 0x09, 0x20, 0x09, 0x02, + 0x04, 0x09, 0x01, 0x37, 0xb4, 0x09, 0xe4, 0x09, 0xf4, 0x09, 0x03, 0x80, + 0x09, 0x90, 0x09, 0x02, 0x54, 0x09, 0x64, 0x09, 0x74, 0x09, 0x03, 0x1b, + 0x09, 0x01, 0x00, 0x09, 0x01, 0xf0, 0x09, 0x01, 0xc4, 0x09, 0xd4, 0x09, + 0xe4, 0x09, 0x03, 0x54, 0x09, 0x64, 0x09, 0xa4, 0x09, 0xd4, 0x09, 0xe4, + 0x09, 0xf4, 0x09, 0x06, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x14, 0x1a, 0x1f, + 0x48, 0x40, 0x09, 0x01, 0x02, 0x0f, 0x09, 0x01, 0x07, 0x00, 0x06, 0x9c, + 0x07, 0x0f, 0x00, 0x03, 0x01, 0x03, 0x00, 0x2f, 0x5d, 0x3f, 0xfd, 0xce, + 0x01, 0x5e, 0x5d, 0x5f, 0x5d, 0x2b, 0x5d, 0x71, 0x71, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x2b, 0x71, 0x71, 0x5f, + 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x2b, 0x5e, 0x5d, + 0x2b, 0x5d, 0x2b, 0x71, 0x71, 0x71, 0x71, 0x2b, 0x71, 0x72, 0x2b, 0x72, + 0x5e, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x2b, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, + 0x71, 0x71, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x71, 0x71, 0x71, + 0xed, 0x71, 0x33, 0x2f, 0xed, 0x31, 0x30, 0x01, 0x33, 0x13, 0x23, 0x13, + 0x15, 0x23, 0x35, 0x01, 0x0a, 0x94, 0x18, 0xc4, 0xc6, 0xc2, 0x02, 0xad, + 0xfc, 0x0c, 0x05, 0x81, 0xc9, 0xc9, 0x00, 0x00, 0x00, 0x02, 0x00, 0x87, + 0xff, 0xe1, 0x03, 0xfa, 0x05, 0x81, 0x00, 0x07, 0x00, 0x25, 0x00, 0x69, + 0x00, 0xb1, 0x1b, 0x03, 0x3f, 0xb0, 0x12, 0x2f, 0xb0, 0x0f, 0x33, 0xb0, + 0x00, 0xcd, 0xb0, 0x08, 0x32, 0x7d, 0xb0, 0x11, 0xcd, 0x18, 0xb0, 0x01, + 0x2f, 0xb0, 0x25, 0x33, 0xb0, 0x1a, 0xcd, 0x01, 0xb0, 0x26, 0x2f, 0xb0, + 0x16, 0xd6, 0xb0, 0x05, 0xcd, 0xb0, 0x05, 0x10, 0xb0, 0x11, 0xdc, 0xb1, + 0x00, 0x1a, 0x32, 0x32, 0xb0, 0x10, 0xcd, 0xb1, 0x08, 0x1c, 0x32, 0x32, + 0xb0, 0x10, 0x10, 0xb0, 0x0a, 0xdc, 0xb0, 0x22, 0x32, 0xb0, 0x0b, 0xcd, + 0xb0, 0x21, 0x32, 0xb0, 0x0b, 0x10, 0xb0, 0x27, 0xd6, 0x00, 0xb1, 0x01, + 0x00, 0x11, 0x12, 0xb5, 0x05, 0x0a, 0x0b, 0x16, 0x21, 0x22, 0x24, 0x17, + 0x39, 0xb0, 0x1a, 0x11, 0xb0, 0x1d, 0x39, 0x30, 0x31, 0x01, 0x11, 0x06, + 0x07, 0x06, 0x14, 0x17, 0x16, 0x05, 0x36, 0x37, 0x17, 0x06, 0x07, 0x06, + 0x07, 0x15, 0x23, 0x35, 0x26, 0x27, 0x26, 0x35, 0x10, 0x37, 0x36, 0x37, + 0x35, 0x33, 0x15, 0x16, 0x17, 0x16, 0x17, 0x07, 0x2e, 0x01, 0x27, 0x02, + 0x1a, 0xa6, 0x24, 0x0d, 0x0d, 0x26, 0x01, 0x20, 0x96, 0x18, 0xb6, 0x1b, + 0xb7, 0x3f, 0x53, 0x7c, 0xd3, 0x65, 0x5b, 0x79, 0x66, 0xb4, 0x7c, 0xde, + 0x59, 0x1b, 0x0c, 0xb9, 0x0e, 0x5e, 0x39, 0x01, 0x1a, 0x03, 0x3e, 0x18, + 0xcc, 0x4e, 0xc6, 0x4e, 0xda, 0x1c, 0x22, 0xab, 0x0c, 0xd3, 0x5a, 0x1f, + 0x08, 0xa8, 0xa8, 0x13, 0x9e, 0x8e, 0xf1, 0x01, 0x16, 0x8f, 0x78, 0x10, + 0x9b, 0x9b, 0x17, 0xb3, 0x37, 0x3f, 0x0e, 0x5a, 0x57, 0x0c, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x3a, 0x00, 0x00, 0x04, 0x50, 0x05, 0x96, 0x00, 0x32, + 0x00, 0xd2, 0x40, 0x53, 0x46, 0x17, 0x01, 0x36, 0x02, 0x46, 0x02, 0x02, + 0x15, 0x12, 0x25, 0x12, 0x35, 0x12, 0x03, 0x24, 0x00, 0x27, 0x0d, 0x06, + 0x1a, 0x6f, 0x19, 0x19, 0x27, 0x00, 0x2c, 0x6e, 0x06, 0x23, 0x27, 0x6e, + 0x0e, 0x5f, 0x0a, 0x01, 0x0a, 0x0a, 0x00, 0x4f, 0x06, 0x5f, 0x06, 0x6f, + 0x06, 0x03, 0x06, 0x32, 0x6f, 0x00, 0x00, 0x20, 0x00, 0x02, 0x00, 0x00, + 0x20, 0x00, 0x30, 0x00, 0x50, 0x00, 0x70, 0x00, 0x90, 0x00, 0xb0, 0x00, + 0xd0, 0x00, 0x08, 0x00, 0x00, 0x10, 0x00, 0x30, 0x00, 0xc0, 0x00, 0xe0, + 0x00, 0x05, 0x00, 0xb8, 0xff, 0xc0, 0x40, 0x40, 0x0e, 0x12, 0x48, 0x00, + 0x26, 0x0b, 0x51, 0x23, 0x0f, 0x0e, 0x1f, 0x0e, 0xaf, 0x0e, 0x03, 0x0f, + 0x0e, 0x3f, 0x0e, 0x6f, 0x0e, 0x7f, 0x0e, 0x9f, 0x0e, 0xaf, 0x0e, 0xcf, + 0x0e, 0xdf, 0x0e, 0x08, 0x08, 0x0e, 0x40, 0x25, 0x2a, 0x48, 0x0e, 0x40, + 0x1b, 0x20, 0x48, 0x0e, 0x0e, 0x2c, 0x1f, 0x73, 0x1a, 0x14, 0x07, 0x07, + 0x2c, 0x74, 0x16, 0x32, 0x76, 0x32, 0x86, 0x32, 0x03, 0x32, 0x06, 0x18, + 0x00, 0x3f, 0x33, 0x5d, 0xed, 0x32, 0x3f, 0x33, 0xed, 0x12, 0x39, 0x2f, + 0x2b, 0x2b, 0x5e, 0x5d, 0x71, 0x33, 0xed, 0x32, 0x01, 0x2f, 0x2b, 0x5d, + 0x71, 0x72, 0xed, 0x2f, 0x5d, 0x12, 0x39, 0x2f, 0x71, 0x33, 0xed, 0x32, + 0x10, 0xed, 0x11, 0x12, 0x39, 0x2f, 0xed, 0x11, 0x33, 0x11, 0x12, 0x39, + 0x31, 0x30, 0x00, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x01, 0x0e, 0x03, 0x23, + 0x21, 0x35, 0x3e, 0x01, 0x3d, 0x01, 0x23, 0x35, 0x33, 0x11, 0x34, 0x3e, + 0x02, 0x33, 0x32, 0x1e, 0x02, 0x17, 0x07, 0x2e, 0x03, 0x23, 0x22, 0x06, + 0x15, 0x11, 0x21, 0x15, 0x21, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x21, 0x32, + 0x3e, 0x02, 0x37, 0x04, 0x50, 0x09, 0x39, 0x59, 0x73, 0x43, 0xfd, 0x46, + 0x59, 0x56, 0xba, 0xba, 0x30, 0x63, 0x98, 0x67, 0x46, 0x7b, 0x63, 0x47, + 0x12, 0xae, 0x0a, 0x27, 0x35, 0x41, 0x24, 0x72, 0x70, 0x01, 0x98, 0xfe, + 0x68, 0x16, 0x2c, 0x3f, 0x28, 0x01, 0xe3, 0x26, 0x43, 0x35, 0x25, 0x08, + 0x01, 0x37, 0x50, 0x75, 0x4d, 0x25, 0x9a, 0x2e, 0xa0, 0x79, 0x90, 0x81, + 0x01, 0x18, 0x5c, 0x93, 0x66, 0x37, 0x1d, 0x3a, 0x56, 0x39, 0x39, 0x1f, + 0x34, 0x24, 0x14, 0x73, 0x7d, 0xfe, 0xe0, 0x81, 0x7e, 0x38, 0x6a, 0x5c, + 0x47, 0x15, 0x13, 0x2a, 0x43, 0x30, 0x00, 0x00, 0x00, 0x02, 0x00, 0x71, + 0x00, 0xe1, 0x04, 0x02, 0x04, 0x73, 0x00, 0x23, 0x00, 0x37, 0x00, 0x99, + 0x40, 0x77, 0x4a, 0x1d, 0x5a, 0x1d, 0x6a, 0x1d, 0x03, 0x2c, 0x1d, 0x3c, + 0x1d, 0x02, 0x4a, 0x19, 0x5a, 0x19, 0x6a, 0x19, 0x03, 0x2c, 0x19, 0x3c, + 0x19, 0x02, 0x45, 0x0b, 0x55, 0x0b, 0x65, 0x0b, 0x03, 0x23, 0x0b, 0x33, + 0x0b, 0x02, 0x45, 0x07, 0x55, 0x07, 0x65, 0x07, 0x03, 0x23, 0x07, 0x33, + 0x07, 0x02, 0x4a, 0x22, 0x5a, 0x22, 0x6a, 0x22, 0x03, 0x2d, 0x22, 0x3d, + 0x22, 0x02, 0x45, 0x14, 0x55, 0x14, 0x65, 0x14, 0x03, 0x23, 0x14, 0x33, + 0x14, 0x02, 0x45, 0x10, 0x55, 0x10, 0x65, 0x10, 0x03, 0x23, 0x10, 0x33, + 0x10, 0x02, 0x4a, 0x02, 0x5a, 0x02, 0x6a, 0x02, 0x03, 0x2d, 0x02, 0x3d, + 0x02, 0x02, 0x2e, 0xb0, 0x12, 0x24, 0xb0, 0xcf, 0x00, 0xdf, 0x00, 0x02, + 0x00, 0x00, 0x01, 0x00, 0x2f, 0x39, 0x01, 0x29, 0xb0, 0x1b, 0x33, 0xb0, + 0x09, 0x00, 0x2f, 0xed, 0xdc, 0xed, 0x01, 0x5d, 0x2f, 0x5d, 0x5d, 0xed, + 0xdc, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x13, 0x34, 0x36, + 0x37, 0x27, 0x37, 0x17, 0x3e, 0x01, 0x33, 0x32, 0x16, 0x17, 0x37, 0x17, + 0x07, 0x1e, 0x01, 0x15, 0x14, 0x06, 0x07, 0x17, 0x07, 0x27, 0x0e, 0x01, + 0x23, 0x22, 0x26, 0x27, 0x07, 0x27, 0x37, 0x2e, 0x01, 0x37, 0x14, 0x1e, + 0x02, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, + 0x02, 0x89, 0x29, 0x25, 0x64, 0x68, 0x63, 0x36, 0x7f, 0x49, 0x47, 0x7e, + 0x36, 0x61, 0x68, 0x60, 0x25, 0x2b, 0x2c, 0x26, 0x64, 0x66, 0x65, 0x36, + 0x7e, 0x47, 0x48, 0x80, 0x34, 0x69, 0x66, 0x66, 0x25, 0x29, 0x9a, 0x2c, + 0x4d, 0x66, 0x3a, 0x39, 0x66, 0x4d, 0x2c, 0x2c, 0x4d, 0x66, 0x39, 0x3a, + 0x66, 0x4d, 0x2c, 0x02, 0xac, 0x47, 0x7f, 0x36, 0x64, 0x67, 0x65, 0x27, + 0x2b, 0x2a, 0x26, 0x61, 0x69, 0x60, 0x36, 0x7f, 0x47, 0x47, 0x80, 0x35, + 0x64, 0x69, 0x65, 0x25, 0x29, 0x2a, 0x26, 0x69, 0x69, 0x66, 0x36, 0x7f, + 0x49, 0x3a, 0x66, 0x4c, 0x2c, 0x2c, 0x4c, 0x66, 0x3a, 0x3a, 0x66, 0x4c, + 0x2d, 0x2d, 0x4c, 0x66, 0x00, 0x01, 0xff, 0xfe, 0x00, 0x00, 0x04, 0x76, + 0x05, 0x81, 0x00, 0x16, 0x00, 0xb9, 0x40, 0x86, 0x97, 0x00, 0xa7, 0x00, + 0x02, 0x98, 0x11, 0xa8, 0x11, 0x02, 0x49, 0x16, 0x01, 0x46, 0x12, 0x01, + 0x9b, 0x15, 0xab, 0x15, 0x02, 0x4a, 0x15, 0x6a, 0x15, 0x7a, 0x15, 0x8a, + 0x15, 0x04, 0x94, 0x13, 0xa4, 0x13, 0x02, 0x45, 0x13, 0x65, 0x13, 0x75, + 0x13, 0x85, 0x13, 0x04, 0x13, 0x0f, 0x12, 0x1f, 0x12, 0x4f, 0x12, 0x8f, + 0x12, 0x04, 0x12, 0x09, 0x15, 0x00, 0x16, 0x10, 0x16, 0x40, 0x16, 0x80, + 0x16, 0x04, 0x16, 0x14, 0x04, 0x00, 0x08, 0x5c, 0x11, 0x0d, 0x00, 0x09, + 0x10, 0x09, 0x40, 0x09, 0x80, 0x09, 0x04, 0x07, 0x09, 0x03, 0x0f, 0x51, + 0x10, 0x07, 0x0b, 0x51, 0x04, 0x2f, 0x0c, 0x9f, 0x0c, 0xaf, 0x0c, 0x03, + 0x0c, 0x40, 0x29, 0x2d, 0x48, 0x00, 0x0c, 0x10, 0x0c, 0x20, 0x0c, 0xa0, + 0x0c, 0x04, 0x0c, 0x14, 0x00, 0x00, 0x10, 0x01, 0x0f, 0x10, 0xaf, 0x10, + 0x02, 0x08, 0x10, 0x10, 0x08, 0x15, 0x12, 0x03, 0x08, 0x12, 0x00, 0x3f, + 0x3f, 0x33, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x71, 0x33, 0x33, 0xde, 0x5d, + 0x2b, 0x71, 0x32, 0xed, 0x32, 0x10, 0xed, 0x32, 0x01, 0x2f, 0x5e, 0x5d, + 0x33, 0x33, 0xfd, 0x32, 0x32, 0x39, 0xcc, 0x5d, 0x32, 0x10, 0xcc, 0x5d, + 0x32, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x21, 0x15, 0x21, 0x15, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x21, 0x35, + 0x21, 0x37, 0x21, 0x35, 0x21, 0x01, 0x33, 0x09, 0x01, 0x33, 0x02, 0xd0, + 0x01, 0x41, 0xfe, 0x81, 0x01, 0x7f, 0xfe, 0x81, 0xb2, 0xfe, 0x83, 0x01, + 0x7d, 0x02, 0xfe, 0x81, 0x01, 0x40, 0xfe, 0x5b, 0xc7, 0x01, 0x73, 0x01, + 0x77, 0xc7, 0x02, 0xc5, 0x7d, 0x9a, 0x7f, 0xfe, 0xd1, 0x01, 0x2f, 0x7f, + 0x9a, 0x7d, 0x02, 0xbc, 0xfd, 0x79, 0x02, 0x87, 0x00, 0x02, 0x00, 0xb7, + 0xfe, 0x4e, 0x01, 0x5d, 0x05, 0xcc, 0x00, 0x03, 0x00, 0x07, 0x01, 0xdd, + 0x40, 0x17, 0x03, 0x07, 0xab, 0x00, 0x06, 0x04, 0x01, 0x0b, 0x04, 0x04, + 0x08, 0x09, 0xd6, 0x09, 0xe6, 0x09, 0xf6, 0x09, 0x03, 0xc2, 0x09, 0x01, + 0x09, 0xb8, 0xff, 0x80, 0xb3, 0xe2, 0xe5, 0x48, 0x09, 0xb8, 0xff, 0xc0, + 0x40, 0x0a, 0xde, 0xe1, 0x48, 0x02, 0x09, 0x12, 0x09, 0x02, 0xda, 0x09, + 0xb8, 0xff, 0x80, 0xb3, 0xd6, 0xd9, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0x40, + 0x14, 0xd2, 0xd5, 0x48, 0xb4, 0x09, 0xc4, 0x09, 0x02, 0xa2, 0x09, 0x01, + 0x01, 0x70, 0x09, 0x80, 0x09, 0x90, 0x09, 0x03, 0x09, 0xb8, 0xff, 0xc0, + 0x40, 0x14, 0xc7, 0xca, 0x48, 0x00, 0x09, 0x01, 0xf0, 0x09, 0x01, 0xd4, + 0x09, 0xe4, 0x09, 0x02, 0xb0, 0x09, 0xc0, 0x09, 0x02, 0x09, 0xb8, 0xff, + 0xc0, 0x40, 0x2b, 0xbb, 0xbe, 0x48, 0x30, 0x09, 0x40, 0x09, 0x50, 0x09, + 0x03, 0x04, 0x09, 0x14, 0x09, 0x24, 0x09, 0x03, 0xf0, 0x09, 0x01, 0xc4, + 0x09, 0xd4, 0x09, 0xe4, 0x09, 0x03, 0x80, 0x09, 0x90, 0x09, 0xa0, 0x09, + 0x03, 0x04, 0x09, 0x14, 0x09, 0x24, 0x09, 0x03, 0xa4, 0x09, 0xb8, 0xff, + 0xc0, 0xb3, 0xa8, 0xab, 0x48, 0x09, 0xb8, 0xff, 0x80, 0xb3, 0xa0, 0xa3, + 0x48, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x0e, 0x9c, 0x9f, 0x48, 0x70, 0x09, + 0x80, 0x09, 0x90, 0x09, 0x03, 0xe4, 0x09, 0x01, 0x09, 0xb8, 0xff, 0xc0, + 0x40, 0x0b, 0x91, 0x94, 0x48, 0xb0, 0x09, 0xc0, 0x09, 0xd0, 0x09, 0x03, + 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x0f, 0x85, 0x88, 0x48, 0x30, 0x09, 0x01, + 0x14, 0x09, 0x24, 0x09, 0x02, 0x00, 0x09, 0x01, 0x09, 0xb8, 0xff, 0xc0, + 0x40, 0x0f, 0x7a, 0x7d, 0x48, 0x80, 0x09, 0x01, 0x04, 0x09, 0x14, 0x09, + 0x24, 0x09, 0x03, 0x6e, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x72, 0x75, + 0x48, 0xc0, 0x09, 0x01, 0x54, 0x09, 0x01, 0x09, 0xb8, 0xff, 0xc0, 0xb6, + 0x66, 0x69, 0x48, 0x10, 0x09, 0x01, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x09, + 0x5b, 0x5e, 0x48, 0x50, 0x09, 0x60, 0x09, 0x02, 0x09, 0xb8, 0xff, 0xc0, + 0x40, 0x0f, 0x4f, 0x52, 0x48, 0xcb, 0x09, 0xdb, 0x09, 0x02, 0xa0, 0x09, + 0xb0, 0x09, 0x02, 0x02, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x44, 0x47, + 0x48, 0x0f, 0x09, 0x1f, 0x09, 0x02, 0x3e, 0x09, 0xb8, 0xff, 0xc0, 0x40, + 0x1d, 0x38, 0x3d, 0x48, 0xcf, 0x09, 0x01, 0x60, 0x09, 0x70, 0x09, 0xa0, + 0x09, 0xb0, 0x09, 0x04, 0x1f, 0x09, 0x01, 0x00, 0x09, 0x01, 0xa0, 0x09, + 0xe0, 0x09, 0xf0, 0x09, 0x03, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x21, 0x19, + 0x1c, 0x48, 0x09, 0x40, 0x11, 0x15, 0x48, 0x40, 0x09, 0x70, 0x09, 0x80, + 0x09, 0x90, 0x09, 0x04, 0x0f, 0x09, 0x1f, 0x09, 0x2f, 0x09, 0x03, 0x07, + 0x05, 0x00, 0x05, 0x00, 0x01, 0x04, 0x01, 0x00, 0x00, 0x3f, 0x2f, 0x12, + 0x39, 0x39, 0x2f, 0x2f, 0x01, 0x5e, 0x5d, 0x5d, 0x2b, 0x2b, 0x71, 0x72, + 0x72, 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x2b, 0x5f, 0x5d, 0x5d, 0x2b, 0x71, + 0x2b, 0x72, 0x2b, 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, 0x2b, 0x71, 0x71, + 0x71, 0x2b, 0x71, 0x2b, 0x71, 0x72, 0x2b, 0x2b, 0x2b, 0x5e, 0x5d, 0x5d, + 0x5d, 0x5d, 0x71, 0x71, 0x2b, 0x71, 0x71, 0x71, 0x72, 0x2b, 0x72, 0x5f, + 0x72, 0x72, 0x2b, 0x2b, 0x5e, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, 0x11, 0x12, + 0x39, 0x2f, 0x5e, 0x5d, 0x33, 0xed, 0x32, 0x31, 0x30, 0x13, 0x11, 0x33, + 0x11, 0x03, 0x11, 0x33, 0x11, 0xb7, 0xa6, 0xa6, 0xa6, 0x02, 0xc2, 0x03, + 0x0a, 0xfc, 0xf6, 0xfb, 0x8c, 0x03, 0x0b, 0xfc, 0xf5, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x73, 0xff, 0x54, 0x04, 0x00, 0x05, 0xcc, 0x00, 0x4d, + 0x00, 0x61, 0x01, 0x4f, 0x40, 0x90, 0x75, 0x2f, 0x85, 0x2f, 0x02, 0x7a, + 0x08, 0x8a, 0x08, 0x02, 0x64, 0x55, 0x01, 0x2b, 0x55, 0x6b, 0x55, 0x02, + 0x2d, 0x51, 0x6d, 0x51, 0x02, 0x2d, 0x39, 0x6d, 0x39, 0x7d, 0x39, 0x8d, + 0x39, 0x04, 0x55, 0x60, 0x75, 0x60, 0x85, 0x60, 0x03, 0x53, 0x3e, 0x73, + 0x3e, 0x83, 0x3e, 0x03, 0x53, 0x5a, 0x73, 0x5a, 0x83, 0x5a, 0x03, 0x79, + 0x50, 0x89, 0x50, 0x02, 0x6f, 0x50, 0x01, 0x5a, 0x50, 0x01, 0x2d, 0x50, + 0x01, 0x74, 0x10, 0x84, 0x10, 0x02, 0x36, 0x10, 0x46, 0x10, 0x02, 0x2a, + 0x49, 0x01, 0x25, 0x2a, 0x01, 0x25, 0x2d, 0x01, 0x2b, 0x03, 0x01, 0x19, + 0x03, 0x01, 0x05, 0x1f, 0x15, 0x1f, 0x02, 0x05, 0x24, 0x15, 0x24, 0x02, + 0x0b, 0x4c, 0x1b, 0x4c, 0x02, 0x0e, 0x49, 0x4b, 0x22, 0x49, 0x37, 0x90, + 0x4b, 0x01, 0x4b, 0x37, 0x4b, 0x37, 0x4e, 0x46, 0x1d, 0x41, 0x18, 0x06, + 0x49, 0x05, 0x05, 0x18, 0x49, 0xa0, 0x4e, 0x01, 0x00, 0x4e, 0x20, 0x4e, + 0x40, 0x4e, 0x90, 0x4e, 0x04, 0x4e, 0xb8, 0xff, 0xc0, 0xb3, 0x1d, 0x21, + 0x48, 0x4e, 0xb8, 0xff, 0xc0, 0x40, 0x12, 0x15, 0x1a, 0x48, 0x4e, 0x2d, + 0x49, 0x2c, 0x2c, 0x58, 0x49, 0x00, 0x41, 0x20, 0x41, 0xb0, 0x41, 0x03, + 0x41, 0xb8, 0xff, 0xc0, 0x40, 0x44, 0x22, 0x26, 0x48, 0x41, 0xd9, 0x37, + 0x01, 0xcb, 0x37, 0x01, 0xbc, 0x37, 0x01, 0x98, 0x37, 0x01, 0xf5, 0x03, + 0x01, 0xe6, 0x03, 0x01, 0x95, 0x03, 0x01, 0x79, 0x53, 0x01, 0x6a, 0x53, + 0x01, 0xda, 0x53, 0x01, 0x9b, 0x53, 0x01, 0xe4, 0x0e, 0xf4, 0x0e, 0x02, + 0xa6, 0x0e, 0x01, 0x77, 0x0e, 0x87, 0x0e, 0x02, 0x68, 0x0e, 0x01, 0x0e, + 0x53, 0x5d, 0x37, 0x04, 0x00, 0x32, 0x51, 0x2d, 0x27, 0x0b, 0x51, 0x06, + 0x00, 0x00, 0x00, 0x3f, 0x32, 0xed, 0x2f, 0x33, 0xed, 0x12, 0x17, 0x39, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x01, 0x2f, 0x2b, 0x5d, 0xed, 0x33, 0x2f, 0xed, 0x2f, + 0x2b, 0x2b, 0x5d, 0x71, 0xed, 0x32, 0x10, 0xed, 0x11, 0x12, 0x39, 0x39, + 0x11, 0x39, 0x39, 0x2f, 0x2f, 0x72, 0x10, 0xed, 0x10, 0xed, 0x31, 0x30, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x00, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x5d, 0x5d, 0x5d, 0x01, 0x32, 0x1e, 0x02, 0x17, 0x07, 0x2e, 0x03, 0x23, + 0x22, 0x06, 0x15, 0x14, 0x1e, 0x02, 0x17, 0x1e, 0x03, 0x15, 0x14, 0x0e, + 0x02, 0x07, 0x1e, 0x03, 0x15, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, + 0x27, 0x37, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, + 0x27, 0x2e, 0x03, 0x35, 0x34, 0x3e, 0x02, 0x37, 0x2e, 0x03, 0x35, 0x34, + 0x36, 0x01, 0x34, 0x2e, 0x02, 0x27, 0x0e, 0x03, 0x15, 0x14, 0x1e, 0x02, + 0x17, 0x3e, 0x03, 0x02, 0x4c, 0x4f, 0x8a, 0x6c, 0x49, 0x0f, 0xa1, 0x08, + 0x2e, 0x44, 0x54, 0x2e, 0x7d, 0x81, 0x32, 0x53, 0x6d, 0x3b, 0x44, 0x8b, + 0x70, 0x46, 0x1c, 0x37, 0x52, 0x36, 0x31, 0x4f, 0x37, 0x1e, 0x3a, 0x70, + 0xa4, 0x6b, 0x5d, 0x9a, 0x75, 0x4f, 0x13, 0xa1, 0x0c, 0x36, 0x4e, 0x64, + 0x39, 0x3a, 0x66, 0x4c, 0x2d, 0x39, 0x5f, 0x7b, 0x41, 0x41, 0x83, 0x68, + 0x41, 0x20, 0x3b, 0x54, 0x35, 0x2a, 0x4b, 0x39, 0x21, 0xd3, 0x01, 0xe1, + 0x35, 0x58, 0x71, 0x3d, 0x3a, 0x59, 0x3c, 0x1f, 0x31, 0x52, 0x6c, 0x3c, + 0x36, 0x5d, 0x44, 0x27, 0x05, 0xcc, 0x1e, 0x3f, 0x62, 0x45, 0x14, 0x2d, + 0x3a, 0x22, 0x0d, 0x4f, 0x47, 0x2d, 0x40, 0x2e, 0x20, 0x0e, 0x10, 0x2e, + 0x49, 0x6a, 0x4c, 0x2d, 0x57, 0x49, 0x37, 0x0d, 0x15, 0x33, 0x40, 0x51, + 0x33, 0x49, 0x75, 0x53, 0x2c, 0x1b, 0x40, 0x68, 0x4d, 0x1f, 0x37, 0x43, + 0x25, 0x0d, 0x12, 0x28, 0x41, 0x2f, 0x36, 0x48, 0x33, 0x24, 0x10, 0x0f, + 0x2e, 0x49, 0x69, 0x4a, 0x2d, 0x53, 0x47, 0x35, 0x0f, 0x0e, 0x2e, 0x40, + 0x50, 0x30, 0x8b, 0x9b, 0xfc, 0xcb, 0x30, 0x45, 0x33, 0x23, 0x0e, 0x03, + 0x21, 0x34, 0x45, 0x27, 0x2e, 0x42, 0x30, 0x22, 0x0f, 0x01, 0x18, 0x2f, + 0x46, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x2d, 0x04, 0xc3, 0x02, 0x5a, + 0x05, 0x7b, 0x00, 0x03, 0x00, 0x07, 0x00, 0xc1, 0xb2, 0x03, 0x85, 0x00, + 0xb8, 0xff, 0xc0, 0xb3, 0x13, 0x16, 0x48, 0x00, 0xb8, 0xff, 0xc0, 0x40, + 0x83, 0x0d, 0x10, 0x48, 0x00, 0x07, 0x85, 0x04, 0x40, 0x13, 0x16, 0x48, + 0x04, 0x40, 0x0e, 0x11, 0x48, 0x04, 0x01, 0x05, 0x91, 0x00, 0x3b, 0x04, + 0x01, 0x2d, 0x04, 0x01, 0x0b, 0x04, 0x1b, 0x04, 0x02, 0x39, 0xfd, 0x04, + 0x01, 0xeb, 0x04, 0x01, 0xdb, 0x04, 0x01, 0xc9, 0x04, 0x01, 0xab, 0x04, + 0xbb, 0x04, 0x02, 0x99, 0x04, 0x01, 0x8d, 0x04, 0x01, 0x01, 0x04, 0x80, + 0x2c, 0x30, 0x48, 0x1b, 0x04, 0x2b, 0x04, 0x02, 0x0f, 0x04, 0x01, 0xeb, + 0x04, 0xfb, 0x04, 0x02, 0xbf, 0x04, 0xcf, 0x04, 0xdf, 0x04, 0x03, 0xab, + 0x04, 0x01, 0x9f, 0x04, 0x01, 0x7b, 0x04, 0x8b, 0x04, 0x02, 0x6f, 0x04, + 0x01, 0x5b, 0x04, 0x01, 0x4f, 0x04, 0x01, 0x3b, 0x04, 0x01, 0x1f, 0x04, + 0x2f, 0x04, 0x02, 0x02, 0x0f, 0x04, 0x3f, 0x04, 0xaf, 0x04, 0xbf, 0x04, + 0x04, 0x04, 0x40, 0x16, 0x19, 0x48, 0x04, 0x40, 0x0e, 0x11, 0x48, 0x04, + 0x00, 0x2f, 0x2b, 0x2b, 0x5d, 0x5f, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x2b, 0x5f, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x33, 0xed, 0x32, 0x01, 0x2f, + 0x2b, 0x2b, 0xed, 0xdc, 0x2b, 0x2b, 0xed, 0x31, 0x30, 0x01, 0x35, 0x33, + 0x15, 0x21, 0x35, 0x33, 0x15, 0x01, 0xb7, 0xa3, 0xfd, 0xd3, 0xa5, 0x04, + 0xc3, 0xb8, 0xb8, 0xb8, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x1f, + 0xff, 0xf0, 0x05, 0xc5, 0x05, 0x96, 0x00, 0x19, 0x00, 0x31, 0x00, 0x5b, + 0x00, 0xf5, 0x40, 0x6f, 0x8a, 0x51, 0x01, 0x0a, 0x49, 0x1a, 0x49, 0x2a, + 0x49, 0x03, 0x0a, 0x45, 0x1a, 0x45, 0x2a, 0x45, 0x03, 0x4c, 0x3c, 0x01, + 0x39, 0x2f, 0x49, 0x2f, 0x02, 0x36, 0x28, 0x46, 0x28, 0x02, 0x36, 0x24, + 0x46, 0x24, 0x02, 0x39, 0x1d, 0x49, 0x1d, 0x02, 0x8a, 0x5a, 0x9a, 0x5a, + 0x02, 0x35, 0x51, 0x45, 0x51, 0x02, 0x3a, 0x3d, 0x01, 0x85, 0x34, 0x95, + 0x34, 0x02, 0x36, 0x2e, 0x46, 0x2e, 0x02, 0x36, 0x29, 0x46, 0x29, 0x02, + 0x39, 0x23, 0x49, 0x23, 0x02, 0x39, 0x1e, 0x49, 0x1e, 0x02, 0x32, 0xc4, + 0x51, 0x3d, 0x5f, 0x47, 0x6f, 0x47, 0x02, 0x47, 0x3d, 0x47, 0x3d, 0x0e, + 0x00, 0xc3, 0x00, 0x1a, 0x10, 0x1a, 0x30, 0x1a, 0x40, 0x1a, 0x04, 0x10, + 0x1a, 0x20, 0x1a, 0x40, 0x1a, 0x03, 0x1a, 0xb8, 0xff, 0xc0, 0x40, 0x44, + 0x0f, 0x17, 0x48, 0x1a, 0x26, 0xc3, 0x6f, 0x0e, 0x7f, 0x0e, 0x02, 0x0e, + 0x3c, 0x37, 0xc9, 0x42, 0x57, 0xc9, 0x4c, 0x52, 0x4c, 0x0f, 0x42, 0x7f, + 0x42, 0x02, 0x0f, 0x42, 0x1f, 0x42, 0x7f, 0x42, 0x8f, 0x42, 0x9f, 0x42, + 0xff, 0x42, 0x06, 0x00, 0x4c, 0x01, 0x00, 0x4c, 0x10, 0x4c, 0x70, 0x4c, + 0x80, 0x4c, 0x90, 0x4c, 0xf0, 0x4c, 0x06, 0x42, 0x4c, 0x42, 0x4c, 0x07, + 0x21, 0xc8, 0x15, 0x04, 0x2b, 0xc8, 0x07, 0x13, 0x00, 0x3f, 0xed, 0x3f, + 0xed, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x71, 0x5d, 0x71, 0x11, 0x33, + 0x10, 0xed, 0x10, 0xed, 0x33, 0x01, 0x2f, 0x71, 0xed, 0x2f, 0x2b, 0x5d, + 0x71, 0xed, 0x11, 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x11, 0x33, 0xed, 0x31, + 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, + 0x5d, 0x5d, 0x5d, 0x71, 0x5d, 0x5d, 0x71, 0x01, 0x14, 0x0e, 0x04, 0x23, + 0x22, 0x2e, 0x04, 0x35, 0x34, 0x3e, 0x04, 0x33, 0x32, 0x04, 0x16, 0x12, + 0x07, 0x34, 0x2e, 0x04, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, + 0x33, 0x32, 0x3e, 0x04, 0x25, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, + 0x37, 0x17, 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, + 0x33, 0x32, 0x1e, 0x02, 0x17, 0x07, 0x2e, 0x03, 0x23, 0x22, 0x0e, 0x02, + 0x05, 0xc5, 0x34, 0x5e, 0x83, 0xa1, 0xb9, 0x64, 0x63, 0xb9, 0xa0, 0x85, + 0x5e, 0x34, 0x34, 0x5e, 0x84, 0xa1, 0xb8, 0x64, 0x96, 0x01, 0x07, 0xc5, + 0x71, 0x5c, 0x2d, 0x52, 0x74, 0x8c, 0xa1, 0x57, 0x82, 0xe4, 0xab, 0x63, + 0x63, 0xab, 0xe4, 0x82, 0x57, 0xa1, 0x8c, 0x74, 0x52, 0x2d, 0xfc, 0x89, + 0x21, 0x43, 0x64, 0x43, 0x31, 0x4b, 0x38, 0x27, 0x0e, 0x73, 0x16, 0x3a, + 0x52, 0x6f, 0x4b, 0x65, 0x95, 0x62, 0x30, 0x30, 0x61, 0x92, 0x62, 0x4b, + 0x70, 0x50, 0x37, 0x12, 0x72, 0x0c, 0x26, 0x37, 0x48, 0x2f, 0x45, 0x63, + 0x40, 0x1e, 0x02, 0xc3, 0x64, 0xb9, 0xa1, 0x83, 0x5e, 0x34, 0x34, 0x5e, + 0x83, 0xa1, 0xb9, 0x64, 0x64, 0xb8, 0xa1, 0x84, 0x5e, 0x34, 0x72, 0xc4, + 0xfe, 0xf9, 0x96, 0x56, 0xa1, 0x8b, 0x73, 0x52, 0x2d, 0x63, 0xab, 0xe4, + 0x82, 0x83, 0xe5, 0xab, 0x62, 0x2d, 0x51, 0x73, 0x8c, 0xa1, 0x59, 0x48, + 0x78, 0x56, 0x30, 0x1b, 0x2d, 0x37, 0x1d, 0x23, 0x2b, 0x51, 0x3f, 0x26, + 0x40, 0x72, 0x9e, 0x5e, 0x61, 0x9d, 0x6f, 0x3b, 0x24, 0x3b, 0x4b, 0x27, + 0x21, 0x1a, 0x32, 0x26, 0x17, 0x2e, 0x53, 0x76, 0x00, 0x02, 0x00, 0x1a, + 0x02, 0x8b, 0x02, 0xfd, 0x05, 0x98, 0x00, 0x32, 0x00, 0x41, 0x00, 0xcb, + 0x40, 0x15, 0x2d, 0x28, 0x0a, 0x11, 0x48, 0x2e, 0x28, 0x0a, 0x11, 0x48, + 0x03, 0x28, 0x0b, 0x11, 0x48, 0x07, 0x18, 0x0b, 0x0e, 0x48, 0x1d, 0xb8, + 0xff, 0xd8, 0x40, 0x10, 0x09, 0x11, 0x48, 0x17, 0x33, 0x01, 0x27, 0x27, + 0x20, 0xe2, 0x2f, 0x0b, 0xd4, 0x38, 0x01, 0x38, 0xb8, 0xff, 0xc0, 0x40, + 0x12, 0x13, 0x16, 0x48, 0x90, 0x38, 0x01, 0x64, 0x38, 0x74, 0x38, 0x84, + 0x38, 0x03, 0x50, 0x38, 0x01, 0x02, 0x38, 0xb8, 0xff, 0xc0, 0x40, 0x14, + 0x0a, 0x0d, 0x48, 0x38, 0x14, 0xe3, 0x15, 0x15, 0x3f, 0xe3, 0x05, 0x40, + 0x16, 0x26, 0x48, 0x05, 0xc0, 0x43, 0x01, 0x43, 0xb8, 0xff, 0xc0, 0x40, + 0x33, 0x0d, 0x12, 0x48, 0x1a, 0x39, 0x01, 0x0b, 0x39, 0x01, 0x39, 0xe4, + 0x98, 0x14, 0x01, 0x14, 0x08, 0x0a, 0x0d, 0x48, 0x14, 0x10, 0x0b, 0x01, + 0x02, 0x0b, 0x01, 0x0b, 0x0b, 0x1a, 0x23, 0x07, 0x33, 0x01, 0x33, 0xe4, + 0x00, 0x2a, 0x2a, 0x00, 0x00, 0x20, 0x00, 0x50, 0x00, 0x03, 0x00, 0x00, + 0x11, 0xe4, 0x1a, 0xde, 0x00, 0x3f, 0xed, 0x33, 0x2f, 0x5d, 0x33, 0x2f, + 0x10, 0xed, 0x5d, 0x32, 0x11, 0x39, 0x2f, 0x5d, 0x5d, 0x33, 0x2b, 0x5d, + 0xed, 0x5d, 0x5d, 0x01, 0x2b, 0x5d, 0x2f, 0x2b, 0xed, 0x33, 0x2f, 0xed, + 0x2f, 0x2b, 0x5f, 0x5d, 0x5d, 0x5d, 0x2b, 0x71, 0x33, 0x33, 0xed, 0x32, + 0x2f, 0x00, 0x5d, 0x31, 0x30, 0x01, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, + 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x3f, 0x01, 0x35, 0x34, 0x2e, + 0x02, 0x23, 0x22, 0x06, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, + 0x15, 0x11, 0x14, 0x16, 0x33, 0x32, 0x36, 0x37, 0x15, 0x0e, 0x01, 0x23, + 0x22, 0x2e, 0x02, 0x27, 0x23, 0x0e, 0x01, 0x27, 0x32, 0x3e, 0x02, 0x3d, + 0x01, 0x07, 0x0e, 0x03, 0x15, 0x14, 0x16, 0x01, 0x04, 0x35, 0x56, 0x3e, + 0x21, 0x33, 0x56, 0x71, 0x3e, 0xb2, 0x15, 0x27, 0x38, 0x23, 0x43, 0x51, + 0x09, 0x95, 0x07, 0x2b, 0x4b, 0x6c, 0x47, 0x44, 0x6d, 0x4d, 0x2a, 0x1c, + 0x23, 0x0c, 0x16, 0x09, 0x13, 0x2a, 0x16, 0x29, 0x39, 0x26, 0x14, 0x02, + 0x04, 0x26, 0x84, 0x33, 0x30, 0x50, 0x39, 0x20, 0x8a, 0x29, 0x4a, 0x37, + 0x20, 0x3a, 0x02, 0x8b, 0x1d, 0x38, 0x52, 0x34, 0x45, 0x5c, 0x38, 0x18, + 0x01, 0x04, 0x3c, 0x2e, 0x3c, 0x23, 0x0e, 0x3b, 0x4c, 0x0a, 0x2f, 0x52, + 0x3e, 0x23, 0x1d, 0x3c, 0x5f, 0x42, 0xfe, 0xcc, 0x3a, 0x32, 0x05, 0x03, + 0x68, 0x05, 0x08, 0x16, 0x27, 0x33, 0x1d, 0x4d, 0x46, 0x6f, 0x22, 0x37, + 0x47, 0x25, 0x41, 0x04, 0x02, 0x0b, 0x1d, 0x34, 0x2b, 0x38, 0x41, 0x00, + 0x00, 0x02, 0x00, 0x53, 0x00, 0x8d, 0x04, 0x20, 0x03, 0xac, 0x00, 0x08, + 0x00, 0x11, 0x00, 0x71, 0x40, 0x54, 0x6a, 0x0c, 0x7a, 0x0c, 0x8a, 0x0c, + 0x03, 0x6a, 0x09, 0x7a, 0x09, 0x8a, 0x09, 0x03, 0x6a, 0x03, 0x7a, 0x03, + 0x8a, 0x03, 0x03, 0x6a, 0x00, 0x7a, 0x00, 0x8a, 0x00, 0x03, 0x11, 0xec, + 0x0f, 0xeb, 0x0e, 0xec, 0x5f, 0x0a, 0x7f, 0x0a, 0x8f, 0x0a, 0x03, 0x40, + 0x0a, 0x60, 0x0a, 0x02, 0x1f, 0x0a, 0x01, 0x0a, 0x07, 0xec, 0x06, 0xeb, + 0x05, 0xec, 0xb0, 0x01, 0x01, 0x5f, 0x01, 0x01, 0x20, 0x01, 0x60, 0x01, + 0x80, 0x01, 0x03, 0x01, 0x09, 0x00, 0xef, 0x0c, 0x0f, 0x03, 0x2f, 0x03, + 0x6f, 0x03, 0x7f, 0x03, 0x04, 0x03, 0x00, 0x2f, 0x5d, 0x33, 0xe4, 0x32, + 0x01, 0x2f, 0x5d, 0x71, 0x71, 0xed, 0xed, 0xed, 0x2f, 0x5d, 0x5d, 0x71, + 0xed, 0xed, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x25, 0x01, 0x35, + 0x01, 0x33, 0x15, 0x09, 0x01, 0x15, 0x21, 0x01, 0x35, 0x01, 0x33, 0x15, + 0x09, 0x01, 0x15, 0x03, 0x76, 0xfe, 0xae, 0x01, 0x52, 0xa8, 0xfe, 0xae, + 0x01, 0x54, 0xfd, 0x83, 0xfe, 0xb0, 0x01, 0x50, 0xa7, 0xfe, 0xb1, 0x01, + 0x51, 0x8d, 0x01, 0x6d, 0x3f, 0x01, 0x73, 0x1f, 0xfe, 0x8c, 0xfe, 0x91, + 0x1d, 0x01, 0x6d, 0x3f, 0x01, 0x73, 0x1f, 0xfe, 0x8c, 0xfe, 0x91, 0x1d, + 0x00, 0x01, 0x00, 0x64, 0x00, 0xb4, 0x04, 0x47, 0x02, 0xf2, 0x00, 0x05, + 0x00, 0x33, 0x40, 0x13, 0xdf, 0x02, 0x01, 0x20, 0x02, 0x01, 0x02, 0x05, + 0xaa, 0xe0, 0x00, 0x01, 0x9f, 0x00, 0x01, 0x50, 0x00, 0x01, 0x00, 0xb8, + 0xff, 0xc0, 0x40, 0x09, 0x09, 0x0c, 0x48, 0x00, 0x02, 0xad, 0x00, 0x03, + 0xb3, 0x00, 0x3f, 0xcc, 0xed, 0x01, 0x2f, 0x2b, 0x5d, 0x5d, 0x5d, 0xed, + 0x2f, 0x5d, 0x5d, 0x31, 0x30, 0x25, 0x11, 0x21, 0x35, 0x21, 0x11, 0x03, + 0xb6, 0xfc, 0xae, 0x03, 0xe3, 0xb4, 0x01, 0xac, 0x92, 0xfd, 0xc2, 0x00, + 0x00, 0x04, 0x00, 0x1f, 0xff, 0xf0, 0x05, 0xc5, 0x05, 0x96, 0x00, 0x19, + 0x00, 0x31, 0x00, 0x3f, 0x00, 0x48, 0x00, 0xf0, 0xb7, 0x04, 0x3d, 0x14, + 0x3d, 0x24, 0x3d, 0x03, 0x3a, 0xb8, 0xff, 0xe0, 0x40, 0x5e, 0x0b, 0x10, + 0x48, 0x39, 0x2f, 0x49, 0x2f, 0x02, 0x36, 0x28, 0x46, 0x28, 0x02, 0x36, + 0x24, 0x46, 0x24, 0x02, 0x39, 0x1d, 0x49, 0x1d, 0x02, 0x3d, 0x20, 0x09, + 0x0d, 0x48, 0x36, 0x2e, 0x46, 0x2e, 0x02, 0x36, 0x29, 0x46, 0x29, 0x02, + 0x39, 0x23, 0x49, 0x23, 0x02, 0x39, 0x1e, 0x49, 0x1e, 0x02, 0x06, 0x45, + 0x16, 0x45, 0x02, 0x33, 0x3e, 0x3e, 0x45, 0x3f, 0x45, 0x35, 0xc4, 0x36, + 0x40, 0xc4, 0x3b, 0x3b, 0x32, 0x3f, 0x3f, 0x10, 0x36, 0x3f, 0x36, 0x3f, + 0x0e, 0x00, 0xc3, 0x00, 0x1a, 0x10, 0x1a, 0x30, 0x1a, 0x40, 0x1a, 0x04, + 0x10, 0x1a, 0x20, 0x1a, 0x40, 0x1a, 0x03, 0x1a, 0xb8, 0xff, 0xc0, 0x40, + 0x3c, 0x0f, 0x17, 0x48, 0x1a, 0x26, 0xc3, 0x6f, 0x0e, 0x7f, 0x0e, 0x02, + 0x0e, 0x32, 0x32, 0x36, 0x3e, 0x34, 0xc9, 0x45, 0x09, 0x44, 0x19, 0x44, + 0x02, 0x44, 0xc9, 0x37, 0x0f, 0x36, 0x1f, 0x36, 0x7f, 0x36, 0x03, 0xdf, + 0x37, 0x01, 0x00, 0x37, 0x10, 0x37, 0x70, 0x37, 0x03, 0x36, 0x45, 0x37, + 0x37, 0x45, 0x36, 0x03, 0x07, 0x21, 0xc8, 0x15, 0x04, 0x2b, 0xc8, 0x07, + 0x13, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x17, 0x39, 0x2f, 0x2f, 0x2f, + 0x5d, 0x71, 0x5d, 0x10, 0xed, 0x5d, 0x10, 0xed, 0x32, 0x11, 0x33, 0x2f, + 0x01, 0x2f, 0x71, 0xed, 0x2f, 0x2b, 0x5d, 0x71, 0xed, 0x11, 0x39, 0x39, + 0x2f, 0x2f, 0x38, 0x11, 0x33, 0x33, 0x2f, 0xed, 0x10, 0xed, 0x32, 0x11, + 0x12, 0x39, 0x11, 0x33, 0x00, 0x5d, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, + 0x2b, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x01, 0x14, 0x0e, 0x04, + 0x23, 0x22, 0x2e, 0x04, 0x35, 0x34, 0x3e, 0x04, 0x33, 0x32, 0x04, 0x16, + 0x12, 0x07, 0x34, 0x2e, 0x04, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, + 0x02, 0x33, 0x32, 0x3e, 0x04, 0x01, 0x03, 0x23, 0x11, 0x23, 0x11, 0x21, + 0x32, 0x16, 0x15, 0x14, 0x06, 0x07, 0x13, 0x03, 0x34, 0x26, 0x2b, 0x01, + 0x11, 0x33, 0x32, 0x36, 0x05, 0xc5, 0x34, 0x5e, 0x83, 0xa1, 0xb9, 0x64, + 0x63, 0xb9, 0xa0, 0x85, 0x5e, 0x34, 0x34, 0x5e, 0x84, 0xa1, 0xb8, 0x64, + 0x96, 0x01, 0x07, 0xc5, 0x71, 0x5c, 0x2d, 0x52, 0x74, 0x8c, 0xa1, 0x57, + 0x82, 0xe4, 0xab, 0x63, 0x63, 0xab, 0xe4, 0x82, 0x57, 0xa1, 0x8c, 0x74, + 0x52, 0x2d, 0xfe, 0x52, 0xc7, 0xa1, 0x7f, 0x01, 0x33, 0x8e, 0x97, 0x68, + 0x55, 0xdd, 0x9f, 0x5f, 0x51, 0xaa, 0xb6, 0x50, 0x54, 0x02, 0xc3, 0x64, + 0xb9, 0xa1, 0x83, 0x5e, 0x34, 0x34, 0x5e, 0x83, 0xa1, 0xb9, 0x64, 0x64, + 0xb8, 0xa1, 0x84, 0x5e, 0x34, 0x72, 0xc4, 0xfe, 0xf9, 0x96, 0x56, 0xa1, + 0x8b, 0x73, 0x52, 0x2d, 0x63, 0xab, 0xe4, 0x82, 0x83, 0xe5, 0xab, 0x62, + 0x2d, 0x51, 0x73, 0x8c, 0xa1, 0xfe, 0xb5, 0x01, 0x50, 0xfe, 0xb0, 0x03, + 0x3f, 0x7e, 0x6f, 0x66, 0x7b, 0x13, 0xfe, 0xa2, 0x02, 0x50, 0x45, 0x48, + 0xfe, 0xd3, 0x55, 0x00, 0x00, 0x01, 0xff, 0xef, 0x05, 0xac, 0x04, 0x7c, + 0x06, 0x0a, 0x00, 0x03, 0x00, 0x0e, 0xb4, 0x01, 0x00, 0x02, 0x8c, 0x01, + 0x00, 0x2f, 0xed, 0x01, 0x2f, 0x2f, 0x31, 0x30, 0x01, 0x21, 0x35, 0x21, + 0x04, 0x7c, 0xfb, 0x73, 0x04, 0x8d, 0x05, 0xac, 0x5e, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x7a, 0x03, 0x5c, 0x02, 0xb8, 0x05, 0x96, 0x00, 0x13, + 0x00, 0x27, 0x00, 0x42, 0xb9, 0x00, 0x11, 0xff, 0xe8, 0xb3, 0x09, 0x0c, + 0x48, 0x0d, 0xb8, 0xff, 0xe8, 0x40, 0x21, 0x09, 0x0c, 0x48, 0x07, 0x18, + 0x09, 0x0c, 0x48, 0x03, 0x18, 0x09, 0x0c, 0x48, 0x14, 0xac, 0x00, 0x1e, + 0xac, 0x00, 0x0a, 0x10, 0x0a, 0x20, 0x0a, 0x03, 0x0a, 0x23, 0xaf, 0x05, + 0x19, 0xaf, 0x0f, 0x04, 0x00, 0x3f, 0xed, 0xdc, 0xed, 0x01, 0x2f, 0x5d, + 0xed, 0xdc, 0xed, 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, 0x14, + 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, + 0x1e, 0x02, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, + 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x02, 0xb8, 0x2d, 0x4e, 0x69, 0x3b, + 0x3b, 0x68, 0x4e, 0x2e, 0x2e, 0x4e, 0x68, 0x3b, 0x3b, 0x69, 0x4e, 0x2d, + 0x6d, 0x1b, 0x30, 0x41, 0x26, 0x25, 0x41, 0x30, 0x1c, 0x1c, 0x30, 0x41, + 0x25, 0x26, 0x41, 0x30, 0x1b, 0x04, 0x79, 0x3b, 0x68, 0x4d, 0x2d, 0x2d, + 0x4d, 0x68, 0x3b, 0x3c, 0x68, 0x4d, 0x2c, 0x2c, 0x4d, 0x68, 0x3c, 0x25, + 0x42, 0x31, 0x1c, 0x1c, 0x31, 0x42, 0x25, 0x25, 0x41, 0x31, 0x1d, 0x1d, + 0x31, 0x41, 0x00, 0x00, 0x00, 0x02, 0x00, 0x41, 0x00, 0x00, 0x04, 0x24, + 0x04, 0xc3, 0x00, 0x0b, 0x00, 0x0f, 0x00, 0x55, 0x40, 0x35, 0x0d, 0xde, + 0x04, 0x01, 0x8c, 0x04, 0x01, 0x04, 0x02, 0x0e, 0xd1, 0x0b, 0x01, 0x83, + 0x0b, 0x01, 0x0b, 0x09, 0x01, 0xaa, 0x06, 0x20, 0x02, 0x01, 0x02, 0x0d, + 0xad, 0x0c, 0x97, 0x02, 0x01, 0x02, 0x00, 0x04, 0xad, 0x09, 0x98, 0x07, + 0x01, 0x07, 0xef, 0x05, 0x01, 0x50, 0x05, 0x80, 0x05, 0xa0, 0x05, 0xd0, + 0x05, 0x04, 0x05, 0x00, 0x2f, 0x5d, 0x5d, 0x33, 0x5d, 0x33, 0xed, 0x32, + 0x32, 0x5d, 0x2f, 0xed, 0x01, 0x2f, 0x5d, 0x33, 0xfd, 0x32, 0xde, 0x5d, + 0x5d, 0xc4, 0x10, 0xde, 0x5d, 0x5d, 0xc4, 0x31, 0x30, 0x01, 0x11, 0x23, + 0x11, 0x21, 0x35, 0x21, 0x11, 0x33, 0x11, 0x21, 0x15, 0x01, 0x35, 0x21, + 0x15, 0x02, 0x7c, 0x93, 0xfe, 0x58, 0x01, 0xa8, 0x93, 0x01, 0xa8, 0xfc, + 0x1d, 0x03, 0xe3, 0x02, 0xa8, 0xfe, 0x75, 0x01, 0x8b, 0x91, 0x01, 0x8a, + 0xfe, 0x76, 0x91, 0xfd, 0x58, 0x91, 0x91, 0x00, 0x00, 0x01, 0x00, 0x29, + 0x02, 0x33, 0x02, 0x83, 0x05, 0x8d, 0x00, 0x22, 0x00, 0x8e, 0x40, 0x38, + 0x06, 0x12, 0x01, 0x06, 0x11, 0x01, 0x06, 0x0c, 0x01, 0x6a, 0x1f, 0x7a, + 0x1f, 0x8a, 0x1f, 0x03, 0x59, 0x0f, 0x69, 0x0f, 0x02, 0x6a, 0x0e, 0x01, + 0x49, 0x0e, 0x59, 0x0e, 0x02, 0x0a, 0x03, 0x1a, 0x03, 0x02, 0x0a, 0x02, + 0x1a, 0x02, 0x3a, 0x02, 0x4a, 0x02, 0x04, 0x3a, 0x11, 0x5a, 0x11, 0x6a, + 0x11, 0x03, 0x06, 0x17, 0x16, 0x17, 0x02, 0x17, 0xb8, 0xff, 0xe0, 0x40, + 0x28, 0x09, 0x0f, 0x48, 0x21, 0x19, 0xe1, 0x20, 0x08, 0x01, 0x20, 0x08, + 0x60, 0x08, 0xa0, 0x08, 0xe0, 0x08, 0x04, 0x08, 0x0e, 0xe0, 0x0f, 0x0f, + 0x20, 0xbf, 0x00, 0x01, 0x00, 0x08, 0x20, 0x0e, 0x0b, 0xe4, 0x14, 0xde, + 0x01, 0x20, 0xe5, 0x00, 0xdf, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0xed, 0x33, + 0x12, 0x39, 0x01, 0x2f, 0x5d, 0x33, 0x33, 0x2f, 0xed, 0x2f, 0x5d, 0x71, + 0xed, 0x32, 0x31, 0x30, 0x2b, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x00, + 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x71, 0x71, 0x71, 0x13, 0x27, 0x3e, 0x05, + 0x35, 0x34, 0x26, 0x23, 0x22, 0x06, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, + 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x04, 0x07, 0x21, 0x15, 0x2b, 0x02, 0x1b, + 0x58, 0x64, 0x67, 0x52, 0x34, 0x47, 0x4a, 0x44, 0x58, 0x08, 0x85, 0x06, + 0x2e, 0x4c, 0x6b, 0x44, 0x41, 0x67, 0x47, 0x25, 0x36, 0x53, 0x66, 0x5f, + 0x4e, 0x12, 0x01, 0xbb, 0x02, 0x33, 0x67, 0x3d, 0x60, 0x51, 0x48, 0x49, + 0x50, 0x31, 0x3e, 0x4b, 0x49, 0x44, 0x08, 0x33, 0x57, 0x40, 0x25, 0x21, + 0x3c, 0x56, 0x36, 0x3e, 0x64, 0x56, 0x4b, 0x49, 0x4a, 0x2a, 0x71, 0x00, + 0x00, 0x01, 0x00, 0x1b, 0x02, 0x27, 0x02, 0x82, 0x05, 0x8d, 0x00, 0x35, + 0x00, 0x96, 0x40, 0x11, 0x66, 0x06, 0x01, 0x66, 0x08, 0x01, 0x56, 0x09, + 0x66, 0x09, 0x02, 0x59, 0x22, 0x69, 0x22, 0x02, 0x2a, 0xb8, 0xff, 0xe8, + 0x40, 0x50, 0x0b, 0x0f, 0x48, 0x02, 0x20, 0x09, 0x0d, 0x48, 0x30, 0x2d, + 0x15, 0x15, 0x0f, 0x08, 0x1c, 0xe1, 0x2d, 0x2d, 0x00, 0xe1, 0x20, 0x0f, + 0x60, 0x0f, 0x02, 0x20, 0x0f, 0x60, 0x0f, 0xa0, 0x0f, 0xe0, 0x0f, 0x04, + 0x0f, 0x22, 0xe1, 0x08, 0x23, 0x01, 0x23, 0x23, 0x09, 0xe1, 0xbf, 0x08, + 0x01, 0x08, 0x40, 0x18, 0x25, 0x48, 0x08, 0x31, 0x15, 0xe4, 0x16, 0x16, + 0x0c, 0x69, 0x22, 0x01, 0x48, 0x22, 0x58, 0x22, 0x02, 0x22, 0x1f, 0xe4, + 0x28, 0xde, 0x0c, 0xe4, 0x47, 0x09, 0x01, 0x09, 0x03, 0xdd, 0x00, 0x3f, + 0x33, 0x5d, 0xed, 0x3f, 0xed, 0x33, 0x5d, 0x5d, 0x12, 0x39, 0x2f, 0xed, + 0x39, 0x01, 0x2f, 0x2b, 0x5d, 0xed, 0x33, 0x2f, 0x71, 0xed, 0x2f, 0x5d, + 0x71, 0xed, 0x32, 0x2f, 0xed, 0x11, 0x12, 0x39, 0x2f, 0x12, 0x39, 0x31, + 0x30, 0x00, 0x2b, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x06, 0x23, + 0x22, 0x2e, 0x02, 0x27, 0x37, 0x1e, 0x01, 0x33, 0x32, 0x36, 0x35, 0x34, + 0x2e, 0x02, 0x2b, 0x01, 0x35, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, + 0x23, 0x22, 0x06, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, + 0x14, 0x06, 0x07, 0x15, 0x1e, 0x03, 0x02, 0x82, 0x9b, 0x8e, 0x57, 0x74, + 0x49, 0x24, 0x06, 0x88, 0x09, 0x58, 0x55, 0x4d, 0x53, 0x25, 0x38, 0x43, + 0x1d, 0x3d, 0x39, 0x1d, 0x3d, 0x32, 0x20, 0x4a, 0x47, 0x44, 0x54, 0x06, + 0x87, 0x07, 0x32, 0x4f, 0x66, 0x3b, 0x45, 0x68, 0x46, 0x23, 0x56, 0x5a, + 0x34, 0x4b, 0x30, 0x16, 0x03, 0x1b, 0x74, 0x80, 0x27, 0x40, 0x51, 0x2b, + 0x0d, 0x43, 0x45, 0x48, 0x4c, 0x2d, 0x36, 0x1d, 0x09, 0x6d, 0x0d, 0x1f, + 0x35, 0x28, 0x3c, 0x45, 0x46, 0x41, 0x0c, 0x3a, 0x56, 0x39, 0x1c, 0x21, + 0x3b, 0x4f, 0x2e, 0x4b, 0x6e, 0x14, 0x02, 0x05, 0x25, 0x36, 0x45, 0x00, + 0x00, 0x01, 0x00, 0x48, 0x04, 0xb1, 0x01, 0xf0, 0x05, 0xe4, 0x00, 0x05, + 0x00, 0x37, 0x40, 0x25, 0x46, 0x04, 0x01, 0x7a, 0x02, 0x8a, 0x02, 0x02, + 0x80, 0x03, 0x01, 0x03, 0x40, 0x8f, 0x00, 0x01, 0x00, 0x40, 0x09, 0x0d, + 0x48, 0x00, 0x02, 0x95, 0x80, 0x0f, 0x00, 0x2f, 0x00, 0x3f, 0x00, 0x7f, + 0x00, 0xef, 0x00, 0x05, 0x00, 0x00, 0x2f, 0x5d, 0x1a, 0xed, 0x01, 0x2f, + 0x2b, 0x5d, 0x1a, 0xcd, 0x5d, 0x31, 0x30, 0x5d, 0x5d, 0x13, 0x35, 0x13, + 0x33, 0x15, 0x01, 0x48, 0xd9, 0xcf, 0xfe, 0xb6, 0x04, 0xb1, 0x14, 0x01, + 0x1f, 0x1d, 0xfe, 0xea, 0x00, 0x01, 0x00, 0x8c, 0xfe, 0x57, 0x04, 0x6d, + 0x04, 0x3a, 0x00, 0x27, 0x00, 0x88, 0x40, 0x4a, 0x1d, 0x20, 0x09, 0x11, + 0x48, 0x8a, 0x25, 0x9a, 0x25, 0x02, 0x6c, 0x25, 0x7c, 0x25, 0x02, 0x25, + 0x18, 0x0e, 0x11, 0x48, 0x16, 0x16, 0x0d, 0x46, 0x40, 0x1f, 0x4f, 0x0c, + 0x01, 0x7f, 0x0c, 0x8f, 0x0c, 0x9f, 0x0c, 0x03, 0x0c, 0x40, 0x20, 0x23, + 0x48, 0x0c, 0x40, 0x14, 0x17, 0x48, 0x00, 0x0c, 0x01, 0x0c, 0x29, 0x80, + 0x27, 0x02, 0x46, 0x00, 0x01, 0x10, 0x01, 0x30, 0x01, 0xe0, 0x01, 0xf0, + 0x01, 0x05, 0x08, 0x01, 0x60, 0x29, 0x80, 0x29, 0x02, 0x29, 0xb8, 0xff, + 0xc0, 0x40, 0x11, 0x14, 0x17, 0x48, 0x1f, 0x08, 0x50, 0x23, 0x16, 0x13, + 0x50, 0x1a, 0x16, 0x0c, 0x01, 0x0f, 0x00, 0x1b, 0x00, 0x3f, 0x3f, 0x33, + 0x3f, 0xed, 0x3f, 0xed, 0x32, 0x01, 0x2b, 0x5d, 0x2f, 0x5e, 0x5d, 0xed, + 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x2b, 0x2b, 0x5d, 0x71, 0x32, 0x1a, 0xed, + 0x32, 0x2f, 0x31, 0x30, 0x2b, 0x00, 0x5d, 0x5d, 0x01, 0x2b, 0x13, 0x11, + 0x33, 0x11, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, 0x35, 0x11, 0x33, 0x11, + 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, 0x37, 0x15, 0x0e, 0x01, 0x23, 0x22, + 0x2e, 0x02, 0x27, 0x23, 0x0e, 0x01, 0x23, 0x22, 0x26, 0x27, 0x11, 0x8c, + 0xb5, 0x20, 0x3a, 0x54, 0x34, 0x80, 0x92, 0xb4, 0x0b, 0x14, 0x1d, 0x12, + 0x0b, 0x20, 0x0b, 0x1a, 0x33, 0x24, 0x36, 0x47, 0x2c, 0x14, 0x02, 0x03, + 0x34, 0x93, 0x64, 0x43, 0x6d, 0x1f, 0xfe, 0x57, 0x05, 0xe3, 0xfd, 0x52, + 0x4e, 0x6a, 0x41, 0x1c, 0xae, 0xa2, 0x02, 0x73, 0xfc, 0xd0, 0x2c, 0x38, + 0x20, 0x0d, 0x05, 0x03, 0x81, 0x08, 0x0c, 0x1e, 0x34, 0x47, 0x29, 0x5f, + 0x63, 0x29, 0x26, 0xfe, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x50, + 0xfe, 0xf8, 0x03, 0xf5, 0x05, 0x81, 0x00, 0x13, 0x00, 0x3d, 0x40, 0x27, + 0x0c, 0x01, 0x0f, 0x02, 0xbf, 0x02, 0xcf, 0x02, 0x03, 0x02, 0x05, 0x5f, + 0x06, 0x6f, 0x06, 0x7f, 0x06, 0xaf, 0x06, 0xbf, 0x06, 0x05, 0x00, 0x06, + 0x10, 0x06, 0x30, 0x06, 0x03, 0x06, 0x07, 0x07, 0x01, 0x00, 0x04, 0x11, + 0x03, 0x06, 0x01, 0x00, 0x2f, 0x33, 0x3f, 0xcd, 0x32, 0x12, 0x39, 0x2f, + 0x01, 0x2f, 0x5d, 0x5d, 0xcd, 0xdc, 0x5d, 0xcd, 0x2f, 0x31, 0x30, 0x01, + 0x11, 0x23, 0x11, 0x23, 0x11, 0x23, 0x11, 0x22, 0x2e, 0x02, 0x35, 0x34, + 0x3e, 0x02, 0x33, 0x21, 0x15, 0x03, 0x74, 0x70, 0xd9, 0x71, 0x50, 0x85, + 0x60, 0x35, 0x32, 0x5f, 0x8a, 0x57, 0x02, 0x33, 0x05, 0x1b, 0xf9, 0xdd, + 0x06, 0x23, 0xf9, 0xdd, 0x03, 0xbe, 0x2d, 0x58, 0x85, 0x59, 0x54, 0x85, + 0x5d, 0x32, 0x66, 0x00, 0x00, 0x01, 0x00, 0xbb, 0x01, 0xbe, 0x01, 0x7e, + 0x02, 0x9a, 0x00, 0x03, 0x00, 0x26, 0x40, 0x18, 0x03, 0x96, 0x00, 0x00, + 0x10, 0x00, 0xb0, 0x00, 0x03, 0x07, 0x00, 0x00, 0x9b, 0x0f, 0x01, 0x1f, + 0x01, 0x02, 0x01, 0x40, 0x0f, 0x26, 0x48, 0x01, 0x00, 0x2f, 0x2b, 0x5d, + 0xed, 0x01, 0x2f, 0x5e, 0x5d, 0xed, 0x31, 0x30, 0x13, 0x35, 0x33, 0x15, + 0xbb, 0xc3, 0x01, 0xbe, 0xdc, 0xdc, 0x00, 0x00, 0x00, 0x01, 0x00, 0x77, + 0xfe, 0x4e, 0x01, 0xe3, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x7e, 0x40, 0x10, + 0x18, 0x20, 0x14, 0x17, 0x48, 0x19, 0x20, 0x14, 0x17, 0x48, 0x46, 0x1a, + 0x56, 0x1a, 0x02, 0x02, 0xb8, 0xff, 0xe8, 0xb3, 0x09, 0x11, 0x48, 0x1b, + 0xb8, 0xff, 0xe0, 0x40, 0x3e, 0x09, 0x11, 0x48, 0x18, 0x10, 0x19, 0x20, + 0x19, 0x30, 0x19, 0x03, 0x19, 0x83, 0x17, 0x16, 0x16, 0x08, 0x10, 0x83, + 0x2f, 0x00, 0x01, 0x1f, 0x00, 0x01, 0x0f, 0x00, 0x6f, 0x00, 0x02, 0x08, + 0x00, 0xef, 0x08, 0x01, 0x08, 0x13, 0x19, 0x40, 0x09, 0x0d, 0x48, 0x19, + 0x19, 0x05, 0x17, 0x0b, 0x8c, 0x20, 0x05, 0x50, 0x05, 0x60, 0x05, 0x70, + 0x05, 0xb0, 0x05, 0xc0, 0x05, 0x06, 0x05, 0x00, 0x2f, 0x5d, 0xed, 0x2f, + 0x12, 0x39, 0x2f, 0x2b, 0xcd, 0x01, 0x2f, 0x5d, 0xdd, 0x5e, 0x5d, 0x71, + 0x72, 0xed, 0x12, 0x39, 0x2f, 0x33, 0xed, 0x5d, 0x32, 0x31, 0x30, 0x2b, + 0x2b, 0x5d, 0x2b, 0x2b, 0x05, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x26, 0x27, + 0x35, 0x16, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, 0x23, 0x2a, 0x01, + 0x07, 0x37, 0x33, 0x07, 0x1e, 0x01, 0x01, 0xe3, 0x1e, 0x41, 0x68, 0x4b, + 0x14, 0x2d, 0x19, 0x31, 0x25, 0x29, 0x38, 0x23, 0x0f, 0x3d, 0x48, 0x0e, + 0x1d, 0x0e, 0x41, 0x6b, 0x27, 0x5e, 0x5e, 0xfd, 0x29, 0x43, 0x30, 0x19, + 0x01, 0x03, 0x62, 0x06, 0x0c, 0x15, 0x1e, 0x12, 0x25, 0x28, 0x02, 0xb6, + 0x64, 0x03, 0x51, 0x00, 0x00, 0x01, 0x00, 0x50, 0x02, 0x33, 0x02, 0x7d, + 0x05, 0x81, 0x00, 0x0a, 0x00, 0x4b, 0x40, 0x2c, 0x20, 0x05, 0x30, 0x05, + 0x02, 0x60, 0x09, 0x01, 0x09, 0x09, 0x08, 0xe0, 0x02, 0x20, 0x04, 0x30, + 0x04, 0x02, 0x04, 0x6f, 0x00, 0x01, 0x00, 0x00, 0x04, 0x06, 0x03, 0x20, + 0x02, 0x90, 0x02, 0x02, 0x02, 0x05, 0x04, 0x04, 0x03, 0x06, 0xdc, 0x08, + 0x01, 0xe4, 0x00, 0xdf, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0x33, 0x33, 0x2f, + 0x33, 0x01, 0x2f, 0x5d, 0x17, 0x33, 0x2f, 0x5d, 0x2f, 0x00, 0x5d, 0x01, + 0x10, 0xed, 0x32, 0x2f, 0x5d, 0x31, 0x30, 0x00, 0x5d, 0x13, 0x35, 0x33, + 0x11, 0x07, 0x35, 0x37, 0x33, 0x11, 0x33, 0x15, 0x50, 0xd3, 0xca, 0xd2, + 0x7b, 0xd7, 0x02, 0x33, 0x6b, 0x02, 0x6c, 0x8a, 0x78, 0x89, 0xfd, 0x1d, + 0x6b, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x1b, 0x02, 0x8b, 0x02, 0xd3, + 0x05, 0x98, 0x00, 0x0f, 0x00, 0x23, 0x00, 0x82, 0xb9, 0x00, 0x0d, 0xff, + 0xe8, 0xb3, 0x07, 0x0c, 0x48, 0x09, 0xb8, 0xff, 0xe0, 0x40, 0x2b, 0x07, + 0x0c, 0x48, 0x04, 0x20, 0x07, 0x0c, 0x48, 0x02, 0x20, 0x07, 0x0c, 0x48, + 0x00, 0xe3, 0x04, 0x10, 0x24, 0x10, 0x34, 0x10, 0x64, 0x10, 0x04, 0x94, + 0x10, 0xb4, 0x10, 0xc4, 0x10, 0xd4, 0x10, 0xf4, 0x10, 0x05, 0x80, 0x10, + 0x01, 0x02, 0x00, 0x10, 0x01, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x26, 0x0c, + 0x10, 0x48, 0x10, 0x1a, 0xe3, 0x06, 0x40, 0x16, 0x21, 0x48, 0x06, 0xef, + 0x25, 0x01, 0x70, 0x25, 0x80, 0x25, 0x02, 0x2f, 0x25, 0x01, 0x1f, 0xe4, + 0x00, 0x03, 0x20, 0x03, 0x50, 0x03, 0x03, 0x03, 0x03, 0x15, 0xe4, 0x0b, + 0xde, 0x00, 0x3f, 0xed, 0x33, 0x2f, 0x5d, 0xed, 0x01, 0x5d, 0x5d, 0x5d, + 0x2f, 0x2b, 0xed, 0x2f, 0x2b, 0x5d, 0x5f, 0x5d, 0x5d, 0x71, 0xed, 0x31, + 0x30, 0x00, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, 0x14, 0x06, 0x23, 0x22, 0x26, + 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x2e, 0x02, + 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, + 0x02, 0xd3, 0xb0, 0xaf, 0xa8, 0xb1, 0x2b, 0x57, 0x83, 0x58, 0x5d, 0x83, + 0x54, 0x27, 0x95, 0x19, 0x32, 0x48, 0x30, 0x30, 0x4b, 0x33, 0x1a, 0x1c, + 0x33, 0x46, 0x2b, 0x31, 0x4b, 0x34, 0x1b, 0x04, 0x12, 0xbc, 0xcb, 0xc9, + 0xbe, 0x5b, 0x91, 0x65, 0x35, 0x35, 0x64, 0x91, 0x5c, 0x53, 0x6e, 0x41, + 0x1b, 0x1b, 0x42, 0x6e, 0x52, 0x54, 0x6e, 0x42, 0x1a, 0x1a, 0x42, 0x6e, + 0x00, 0x02, 0x00, 0x53, 0x00, 0x8d, 0x04, 0x20, 0x03, 0xac, 0x00, 0x08, + 0x00, 0x11, 0x00, 0x85, 0x40, 0x64, 0x65, 0x0f, 0x75, 0x0f, 0x85, 0x0f, + 0x03, 0x65, 0x09, 0x75, 0x09, 0x85, 0x09, 0x03, 0x65, 0x06, 0x75, 0x06, + 0x85, 0x06, 0x03, 0x65, 0x00, 0x75, 0x00, 0x85, 0x00, 0x03, 0x0d, 0xec, + 0x0a, 0xec, 0x11, 0xeb, 0x0f, 0x0c, 0x01, 0xef, 0x0c, 0x01, 0x70, 0x0c, + 0x80, 0x0c, 0x02, 0xd0, 0x0c, 0x01, 0x3f, 0x0c, 0x6f, 0x0c, 0x7f, 0x0c, + 0x03, 0x00, 0x0c, 0x01, 0x0c, 0x04, 0xec, 0x01, 0xec, 0x08, 0xeb, 0x70, + 0x03, 0x80, 0x03, 0xb0, 0x03, 0x03, 0xb0, 0x03, 0xd0, 0x03, 0x02, 0x3f, + 0x03, 0x01, 0x00, 0x03, 0x20, 0x03, 0x02, 0x03, 0x0a, 0x00, 0xef, 0x0e, + 0x0f, 0x05, 0x2f, 0x05, 0x6f, 0x05, 0x7f, 0x05, 0x04, 0x05, 0x00, 0x2f, + 0x5d, 0x33, 0xe4, 0x32, 0x01, 0x2f, 0x5d, 0x5d, 0x5d, 0x71, 0xfd, 0xed, + 0xed, 0x2f, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x72, 0xfd, 0xed, 0xed, 0x31, + 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x25, 0x23, 0x35, 0x09, 0x01, 0x35, 0x33, + 0x01, 0x15, 0x01, 0x23, 0x35, 0x09, 0x01, 0x35, 0x33, 0x01, 0x15, 0x02, + 0xce, 0xa8, 0x01, 0x52, 0xfe, 0xb0, 0xa6, 0x01, 0x52, 0xfc, 0xdd, 0xaa, + 0x01, 0x52, 0xfe, 0xb0, 0xa8, 0x01, 0x4f, 0x8d, 0x1d, 0x01, 0x6f, 0x01, + 0x74, 0x1f, 0xfe, 0x8d, 0x3f, 0xfe, 0x93, 0x1d, 0x01, 0x6f, 0x01, 0x74, + 0x1f, 0xfe, 0x8d, 0x3f, 0xff, 0xff, 0x00, 0x38, 0x00, 0x00, 0x06, 0x4e, + 0x05, 0x81, 0x10, 0x26, 0x00, 0x79, 0xe8, 0x00, 0x10, 0x27, 0x02, 0x20, + 0x02, 0xf9, 0x00, 0x00, 0x11, 0x07, 0x02, 0x9a, 0x03, 0xb8, 0xfd, 0xcf, + 0x00, 0x1f, 0x40, 0x12, 0x01, 0xbf, 0x0c, 0x01, 0x70, 0x0c, 0x01, 0x60, + 0x0c, 0x01, 0x10, 0x0c, 0x01, 0x0c, 0x03, 0x02, 0x11, 0x18, 0x00, 0x3f, + 0x35, 0x35, 0x01, 0x11, 0x5d, 0x5d, 0x5d, 0x5d, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x38, 0x00, 0x00, 0x06, 0x75, 0x05, 0x81, 0x10, 0x26, + 0x00, 0x79, 0xe8, 0x00, 0x10, 0x27, 0x02, 0x20, 0x02, 0xf9, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x72, 0x03, 0xf2, 0xfd, 0xcf, 0x00, 0x2f, 0x40, 0x1e, + 0x02, 0x6f, 0x0f, 0x01, 0x2f, 0x0f, 0x01, 0x0f, 0x01, 0xbf, 0x0c, 0x01, + 0x70, 0x0c, 0x01, 0x60, 0x0c, 0x01, 0x10, 0x0c, 0x01, 0x0c, 0x33, 0x40, + 0x0b, 0x0b, 0x48, 0x02, 0x0f, 0x18, 0x00, 0x3f, 0x35, 0x01, 0x2b, 0x11, + 0x5d, 0x5d, 0x5d, 0x5d, 0x35, 0x11, 0x5d, 0x5d, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x49, 0x00, 0x00, 0x06, 0x4e, 0x05, 0x8d, 0x10, 0x27, + 0x02, 0x20, 0x03, 0x0d, 0x00, 0x00, 0x10, 0x27, 0x02, 0x9a, 0x03, 0xb8, + 0xfd, 0xcf, 0x11, 0x06, 0x00, 0x73, 0x2e, 0x00, 0x00, 0x21, 0x40, 0x14, + 0x00, 0x70, 0x00, 0x01, 0x60, 0x00, 0x01, 0x10, 0x00, 0x01, 0x00, 0x53, + 0x40, 0x0b, 0x0b, 0x48, 0x01, 0x02, 0x06, 0x18, 0x00, 0x3f, 0x35, 0x35, + 0x01, 0x2b, 0x11, 0x5d, 0x5d, 0x5d, 0x35, 0x00, 0x00, 0x02, 0x00, 0x83, + 0xfe, 0xa4, 0x04, 0x56, 0x04, 0x3a, 0x00, 0x25, 0x00, 0x29, 0x00, 0x9f, + 0x40, 0x70, 0x79, 0x04, 0x89, 0x04, 0x02, 0x7a, 0x23, 0x8a, 0x23, 0x02, + 0x7a, 0x24, 0x8a, 0x24, 0x02, 0x54, 0x1a, 0x64, 0x1a, 0x02, 0x3a, 0x06, + 0x4a, 0x06, 0x7a, 0x06, 0x8a, 0x06, 0x04, 0x0a, 0x48, 0x09, 0x09, 0xb0, + 0x27, 0xc0, 0x27, 0x02, 0x27, 0x96, 0x28, 0x28, 0x00, 0x1c, 0x46, 0x5f, + 0x1b, 0x7f, 0x1b, 0x02, 0x1b, 0x40, 0x1d, 0x3c, 0x48, 0x1b, 0x40, 0x17, + 0x1b, 0x48, 0x20, 0x1b, 0x01, 0x1b, 0x13, 0x46, 0x00, 0x40, 0x1d, 0x3c, + 0x48, 0x00, 0x40, 0x17, 0x1b, 0x48, 0x00, 0x40, 0x0d, 0x11, 0x48, 0x20, + 0x00, 0x01, 0x00, 0x20, 0x2b, 0x01, 0x13, 0x21, 0x09, 0x28, 0x9c, 0x29, + 0x0f, 0x43, 0x1b, 0x01, 0x1b, 0x18, 0x5f, 0x2f, 0x21, 0x3f, 0x21, 0x02, + 0x6f, 0x21, 0xcf, 0x21, 0x02, 0x21, 0x00, 0x2f, 0x5d, 0x71, 0xed, 0x33, + 0x5d, 0x3f, 0xfd, 0xce, 0x11, 0x39, 0x01, 0x5d, 0x2f, 0x5d, 0x2b, 0x2b, + 0x2b, 0xed, 0x2f, 0x5d, 0x2b, 0x2b, 0x5d, 0xed, 0x12, 0x39, 0x2f, 0xed, + 0x71, 0x33, 0x2f, 0xed, 0x31, 0x30, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x00, + 0x5d, 0x01, 0x5d, 0x37, 0x34, 0x3e, 0x06, 0x37, 0x33, 0x0e, 0x07, 0x15, + 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, 0x37, 0x17, 0x0e, 0x03, 0x23, 0x22, + 0x2e, 0x02, 0x01, 0x15, 0x23, 0x35, 0x83, 0x25, 0x3e, 0x4f, 0x52, 0x4f, + 0x3f, 0x27, 0x01, 0xaf, 0x02, 0x27, 0x3e, 0x4e, 0x50, 0x4d, 0x3c, 0x25, + 0x2a, 0x4d, 0x6d, 0x43, 0x8c, 0xa4, 0x0e, 0xb8, 0x0b, 0x43, 0x79, 0xb3, + 0x7a, 0x72, 0xb2, 0x7b, 0x40, 0x02, 0x71, 0xc3, 0x32, 0x47, 0x6c, 0x55, + 0x43, 0x3c, 0x3a, 0x44, 0x53, 0x37, 0x45, 0x68, 0x50, 0x3f, 0x39, 0x39, + 0x46, 0x58, 0x3b, 0x3b, 0x5c, 0x3f, 0x20, 0x8c, 0x7a, 0x0c, 0x54, 0x95, + 0x70, 0x41, 0x38, 0x67, 0x93, 0x04, 0x64, 0xc9, 0xc9, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, 0x06, 0xf0, 0x12, 0x26, + 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa1, 0x01, 0x4e, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x02, 0x15, 0x05, 0x26, 0x02, 0xb8, 0xff, 0xe1, 0xb4, + 0x16, 0x19, 0x04, 0x07, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, 0x06, 0xf0, 0x12, 0x26, + 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, 0x01, 0xdb, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x02, 0x15, 0x05, 0x26, 0x02, 0x4c, 0x15, 0x18, + 0x04, 0x07, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, 0x01, 0x60, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x02, 0x16, 0x05, 0x26, 0x02, 0x00, 0x1b, 0x15, + 0x04, 0x07, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, 0x07, 0x06, 0x12, 0x26, + 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa6, 0x01, 0x5e, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x02, 0x15, 0x05, 0x26, 0x02, 0x02, 0x1e, 0x2c, + 0x04, 0x07, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, 0x06, 0xb2, 0x12, 0x26, + 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa5, 0x01, 0x6c, 0x00, 0x00, + 0x00, 0x17, 0x40, 0x0d, 0x03, 0x02, 0x15, 0x05, 0x26, 0x03, 0x02, 0x04, + 0x19, 0x17, 0x04, 0x07, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, + 0x06, 0xfb, 0x12, 0x26, 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x01, 0x50, + 0x01, 0x89, 0x00, 0x88, 0x00, 0x16, 0x40, 0x0c, 0x03, 0x02, 0x38, 0x03, + 0x03, 0x02, 0x03, 0x1f, 0x15, 0x04, 0x07, 0x25, 0x01, 0x2b, 0x35, 0x35, + 0x00, 0x3f, 0x35, 0x35, 0x00, 0x02, 0x00, 0x18, 0x00, 0x00, 0x07, 0xa8, + 0x05, 0x81, 0x00, 0x0f, 0x00, 0x1a, 0x00, 0x88, 0x40, 0x56, 0x74, 0x19, + 0x01, 0x72, 0x02, 0x01, 0x56, 0x02, 0x66, 0x02, 0x02, 0x73, 0x03, 0x83, + 0x03, 0x02, 0x55, 0x03, 0x65, 0x03, 0x02, 0x7f, 0x05, 0x8f, 0x05, 0x02, + 0x6d, 0x05, 0x01, 0x5c, 0x05, 0x01, 0x19, 0x05, 0x29, 0x05, 0x02, 0x00, + 0x07, 0x01, 0x0b, 0x07, 0x0b, 0x07, 0x00, 0x10, 0x0e, 0x20, 0x0e, 0x02, + 0x0e, 0x02, 0x19, 0x03, 0x11, 0x03, 0x04, 0x11, 0x09, 0x0d, 0x5a, 0x1a, + 0x05, 0x00, 0x02, 0x5f, 0x19, 0x19, 0x05, 0x04, 0x0c, 0x5f, 0x09, 0x09, + 0x0d, 0x10, 0x08, 0x5f, 0x05, 0x03, 0x04, 0x12, 0x0d, 0x5f, 0x00, 0x12, + 0x00, 0x3f, 0xed, 0x3f, 0x3f, 0xed, 0x32, 0x12, 0x39, 0x2f, 0xed, 0x11, + 0x12, 0x39, 0x2f, 0xed, 0x01, 0x2f, 0x33, 0x33, 0xed, 0x32, 0x33, 0x2f, + 0x33, 0x11, 0x12, 0x39, 0x39, 0x2f, 0x5d, 0x12, 0x39, 0x39, 0x2f, 0x2f, + 0x71, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x21, 0x11, 0x21, 0x03, 0x23, 0x01, 0x21, 0x15, 0x21, 0x11, 0x21, 0x15, + 0x21, 0x11, 0x21, 0x15, 0x01, 0x23, 0x0e, 0x05, 0x07, 0x03, 0x21, 0x03, + 0xc9, 0xfd, 0xdc, 0xc6, 0xc7, 0x02, 0xae, 0x04, 0xb9, 0xfd, 0x09, 0x02, + 0xbb, 0xfd, 0x45, 0x03, 0x20, 0xfc, 0x21, 0x97, 0x01, 0x10, 0x16, 0x1b, + 0x18, 0x12, 0x02, 0xd9, 0x01, 0xde, 0x01, 0x9c, 0xfe, 0x64, 0x05, 0x81, + 0x9c, 0xfe, 0x3c, 0x9a, 0xfe, 0x15, 0x9c, 0x04, 0xee, 0x03, 0x23, 0x32, + 0x3a, 0x33, 0x26, 0x05, 0xfe, 0x33, 0x00, 0x00, 0xff, 0xff, 0x00, 0x68, + 0xfe, 0x4e, 0x05, 0x79, 0x05, 0x96, 0x12, 0x26, 0x00, 0x26, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x78, 0x01, 0xfe, 0x00, 0x00, 0x00, 0x0b, 0xb6, 0x01, + 0x3a, 0x30, 0x28, 0x1a, 0x10, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, 0x06, 0xf0, 0x12, 0x26, + 0x00, 0x28, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa1, 0x01, 0x3f, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x0c, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xaa, 0xb4, + 0x0d, 0x10, 0x00, 0x0a, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, 0x06, 0xf0, 0x12, 0x26, + 0x00, 0x28, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, 0x01, 0xdf, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x0c, 0x05, 0x26, 0x01, 0x28, 0x0c, 0x0f, + 0x00, 0x0a, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x28, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, 0x01, 0x77, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x0d, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xef, 0xb4, + 0x12, 0x0c, 0x00, 0x0a, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, 0x06, 0xb2, 0x12, 0x26, + 0x00, 0x28, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa5, 0x01, 0x79, 0x00, 0x00, + 0x00, 0x19, 0xb6, 0x02, 0x01, 0x0c, 0x05, 0x26, 0x02, 0x01, 0xb8, 0xff, + 0xea, 0xb4, 0x10, 0x0e, 0x00, 0x0a, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, + 0x2b, 0x35, 0x35, 0x00, 0xff, 0xff, 0x00, 0x09, 0x00, 0x00, 0x01, 0xb1, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x2c, 0x00, 0x00, 0x11, 0x06, 0x02, 0xa1, + 0x9f, 0x00, 0x00, 0x15, 0xb4, 0x01, 0x04, 0x05, 0x26, 0x01, 0xb8, 0xff, + 0xc1, 0xb4, 0x05, 0x08, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x8e, 0x00, 0x00, 0x02, 0x36, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x2c, 0x00, 0x00, 0x11, 0x06, 0x02, 0xa2, + 0x46, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x04, 0x05, 0x26, 0x01, 0x45, + 0x04, 0x07, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0xff, 0xd2, 0x00, 0x00, 0x02, 0x68, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x2c, 0x00, 0x00, 0x11, 0x06, 0x02, 0xa3, 0xd2, 0x00, 0x00, 0x13, + 0x40, 0x0b, 0x01, 0x05, 0x05, 0x26, 0x01, 0x00, 0x0a, 0x04, 0x00, 0x02, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x07, + 0x00, 0x00, 0x02, 0x34, 0x06, 0xb2, 0x12, 0x26, 0x00, 0x2c, 0x00, 0x00, + 0x11, 0x06, 0x02, 0xa5, 0xda, 0x00, 0x00, 0x17, 0x40, 0x0d, 0x02, 0x01, + 0x04, 0x05, 0x26, 0x02, 0x01, 0x01, 0x08, 0x06, 0x00, 0x02, 0x25, 0x01, + 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x02, 0x00, 0x0e, + 0x00, 0x00, 0x05, 0x65, 0x05, 0x81, 0x00, 0x10, 0x00, 0x21, 0x00, 0x70, + 0x40, 0x45, 0x75, 0x0a, 0x01, 0x5b, 0x20, 0x8b, 0x20, 0x02, 0x5b, 0x1f, + 0x8b, 0x1f, 0x02, 0x5a, 0x14, 0x8a, 0x14, 0x02, 0x5b, 0x13, 0x01, 0x0a, + 0x1f, 0x1a, 0x1f, 0x02, 0x0a, 0x14, 0x1a, 0x14, 0x02, 0x1a, 0x1a, 0x1c, + 0x08, 0x5a, 0x40, 0x0f, 0x11, 0x01, 0x11, 0x23, 0x80, 0x18, 0x1c, 0x5a, + 0x0e, 0x10, 0x10, 0x01, 0x0e, 0x1b, 0x10, 0x5f, 0x18, 0x7f, 0x00, 0x01, + 0x00, 0x00, 0x02, 0x1c, 0x5f, 0x0e, 0x12, 0x17, 0x5f, 0x02, 0x03, 0x00, + 0x3f, 0xed, 0x3f, 0xed, 0x11, 0x39, 0x2f, 0x71, 0x33, 0xed, 0x32, 0x01, + 0x2f, 0x33, 0x33, 0x2f, 0x10, 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x71, 0x1a, + 0xed, 0x12, 0x39, 0x2f, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, + 0x5d, 0x5d, 0x00, 0x5d, 0x13, 0x33, 0x11, 0x21, 0x32, 0x04, 0x16, 0x12, + 0x15, 0x14, 0x02, 0x0e, 0x01, 0x23, 0x21, 0x11, 0x23, 0x25, 0x34, 0x2e, + 0x02, 0x23, 0x21, 0x11, 0x21, 0x15, 0x21, 0x11, 0x21, 0x32, 0x3e, 0x02, + 0x0e, 0x9a, 0x01, 0xd2, 0xa3, 0x01, 0x13, 0xc6, 0x6f, 0x6a, 0xb8, 0xfb, + 0x91, 0xfd, 0xf1, 0x9a, 0x04, 0x97, 0x52, 0x94, 0xce, 0x7b, 0xfe, 0xf1, + 0x01, 0x96, 0xfe, 0x6a, 0x01, 0x3a, 0x6f, 0xbd, 0x8a, 0x4e, 0x03, 0x21, + 0x02, 0x60, 0x51, 0xa9, 0xfe, 0xfc, 0xb4, 0xb0, 0xfe, 0xf3, 0xb5, 0x5d, + 0x02, 0x87, 0x48, 0x8f, 0xcb, 0x82, 0x3d, 0xfe, 0x39, 0x9a, 0xfe, 0x12, + 0x48, 0x8e, 0xd4, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x20, + 0x07, 0x06, 0x12, 0x26, 0x00, 0x31, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa6, + 0x01, 0xa1, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x14, 0x05, 0x26, + 0x01, 0x0c, 0x1d, 0x2b, 0x08, 0x12, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x32, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa1, + 0x01, 0xb6, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, 0x28, 0x05, 0x26, 0x02, + 0xb8, 0xff, 0xd8, 0xb4, 0x29, 0x2c, 0x0a, 0x00, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x32, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, + 0x02, 0x25, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x02, 0x28, 0x05, 0x26, + 0x02, 0x25, 0x28, 0x2b, 0x0a, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x06, 0xfe, 0x12, 0x26, 0x00, 0x32, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, + 0x01, 0xd5, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x02, 0x29, 0x05, 0x26, + 0x02, 0x04, 0x2e, 0x28, 0x0a, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x07, 0x06, 0x12, 0x26, 0x00, 0x32, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa6, + 0x01, 0xc1, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, 0x28, 0x05, 0x26, 0x02, + 0xb8, 0xff, 0xf5, 0xb4, 0x31, 0x3f, 0x0a, 0x00, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x06, 0xb2, 0x12, 0x26, 0x00, 0x32, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa5, + 0x01, 0xd7, 0x00, 0x00, 0x00, 0x19, 0xb6, 0x03, 0x02, 0x28, 0x05, 0x26, + 0x03, 0x02, 0xb8, 0xff, 0xff, 0xb4, 0x2c, 0x2a, 0x0a, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x01, 0x00, 0x8e, + 0x00, 0xe1, 0x04, 0x1f, 0x04, 0x73, 0x00, 0x0b, 0x00, 0x81, 0xb9, 0x00, + 0x05, 0xff, 0xe8, 0xb3, 0x12, 0x16, 0x48, 0x03, 0xb8, 0xff, 0xe8, 0x40, + 0x0e, 0x12, 0x16, 0x48, 0x0b, 0x18, 0x12, 0x16, 0x48, 0x09, 0x18, 0x12, + 0x16, 0x48, 0x08, 0xb8, 0xff, 0xe8, 0xb3, 0x12, 0x16, 0x48, 0x06, 0xb8, + 0xff, 0xe8, 0x40, 0x0e, 0x12, 0x16, 0x48, 0x02, 0x18, 0x12, 0x16, 0x48, + 0x00, 0x18, 0x12, 0x16, 0x48, 0x07, 0xb8, 0xff, 0xe8, 0x40, 0x0e, 0x12, + 0x16, 0x48, 0x01, 0x18, 0x12, 0x16, 0x48, 0x0a, 0x18, 0x12, 0x16, 0x48, + 0x04, 0xb8, 0xff, 0xe8, 0x40, 0x17, 0x12, 0x16, 0x48, 0xd4, 0x04, 0xe4, + 0x04, 0x02, 0xb4, 0x04, 0xc4, 0x04, 0xd4, 0x04, 0x03, 0x20, 0x04, 0x01, + 0x04, 0x00, 0x07, 0x01, 0x07, 0x00, 0x19, 0x2f, 0x71, 0x01, 0x2f, 0x5d, + 0x5d, 0x71, 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x01, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x00, 0x2b, 0x2b, 0x2b, 0x2b, 0x13, 0x09, 0x01, 0x37, 0x09, + 0x01, 0x17, 0x09, 0x01, 0x07, 0x09, 0x01, 0x8e, 0x01, 0x62, 0xfe, 0xa0, + 0x68, 0x01, 0x5e, 0x01, 0x5e, 0x69, 0xfe, 0xa2, 0x01, 0x60, 0x66, 0xfe, + 0x9f, 0xfe, 0x9c, 0x01, 0x4a, 0x01, 0x62, 0x01, 0x60, 0x67, 0xfe, 0x9f, + 0x01, 0x5f, 0x69, 0xfe, 0xa4, 0xfe, 0xa0, 0x69, 0x01, 0x61, 0xfe, 0x9d, + 0x00, 0x03, 0x00, 0x47, 0xff, 0xcb, 0x05, 0xf4, 0x05, 0xba, 0x00, 0x1b, + 0x00, 0x27, 0x00, 0x33, 0x00, 0xc4, 0x40, 0x8d, 0x59, 0x2c, 0x01, 0x08, + 0x25, 0x01, 0x54, 0x21, 0x01, 0x05, 0x1a, 0x15, 0x1a, 0x65, 0x1a, 0x03, + 0x8b, 0x17, 0x01, 0x7b, 0x16, 0x8b, 0x16, 0x02, 0x6c, 0x16, 0x01, 0x5a, + 0x16, 0x01, 0x69, 0x10, 0x01, 0x0a, 0x0c, 0x1a, 0x0c, 0x02, 0x84, 0x09, + 0x01, 0x74, 0x08, 0x84, 0x08, 0x02, 0x63, 0x08, 0x01, 0x55, 0x08, 0x01, + 0x1b, 0x32, 0x5b, 0x32, 0x02, 0x72, 0x2b, 0x82, 0x2b, 0x02, 0x54, 0x2b, + 0x01, 0x14, 0x26, 0x54, 0x26, 0x02, 0x55, 0x25, 0x01, 0x8c, 0x1f, 0x01, + 0x4a, 0x1f, 0x5a, 0x1f, 0x7a, 0x1f, 0x03, 0x04, 0x15, 0x14, 0x15, 0x64, + 0x15, 0x03, 0x0b, 0x07, 0x1b, 0x07, 0x6b, 0x07, 0x03, 0x20, 0x2c, 0x28, + 0x00, 0x5b, 0x40, 0x0f, 0x1c, 0x01, 0x1c, 0x35, 0x80, 0x20, 0x35, 0x01, + 0x28, 0x5b, 0xaf, 0x0e, 0xbf, 0x0e, 0x02, 0x20, 0x0e, 0x01, 0x0f, 0x0e, + 0x1f, 0x0e, 0x02, 0x0e, 0x2b, 0x1f, 0x23, 0x2f, 0x5f, 0x17, 0x13, 0x04, + 0x23, 0x5f, 0x09, 0x05, 0x13, 0x00, 0x3f, 0x33, 0xed, 0x3f, 0x33, 0xed, + 0x11, 0x39, 0x39, 0x01, 0x2f, 0x5d, 0x5d, 0x5d, 0xed, 0x5d, 0x1a, 0x10, + 0xdc, 0x71, 0x1a, 0xed, 0x12, 0x39, 0x39, 0x31, 0x30, 0x00, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, + 0x02, 0x06, 0x04, 0x23, 0x22, 0x26, 0x27, 0x07, 0x23, 0x37, 0x26, 0x02, + 0x35, 0x34, 0x12, 0x36, 0x24, 0x33, 0x32, 0x16, 0x17, 0x37, 0x33, 0x07, + 0x16, 0x12, 0x07, 0x34, 0x26, 0x27, 0x01, 0x1e, 0x01, 0x33, 0x32, 0x3e, + 0x02, 0x25, 0x14, 0x16, 0x17, 0x01, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, + 0x05, 0xd7, 0x5f, 0xb4, 0xfe, 0xfc, 0xa5, 0x7f, 0xce, 0x51, 0x78, 0xbe, + 0xc8, 0x58, 0x56, 0x5c, 0xb2, 0x01, 0x05, 0xa9, 0x7d, 0xcf, 0x52, 0x79, + 0xc0, 0xc9, 0x55, 0x57, 0xc3, 0x31, 0x31, 0xfd, 0x3b, 0x3b, 0x96, 0x5d, + 0x84, 0xbf, 0x7b, 0x3b, 0xfc, 0x0f, 0x32, 0x33, 0x02, 0xc3, 0x3b, 0x97, + 0x5c, 0x7e, 0xbe, 0x7f, 0x3f, 0x02, 0xc7, 0xa5, 0xfe, 0xf2, 0xc0, 0x68, + 0x3a, 0x36, 0x91, 0xf1, 0x61, 0x01, 0x0a, 0xa0, 0xa5, 0x01, 0x0a, 0xbb, + 0x65, 0x38, 0x36, 0x92, 0xf2, 0x5e, 0xfe, 0xfd, 0xa0, 0x70, 0xb8, 0x48, + 0xfc, 0xab, 0x2c, 0x2f, 0x56, 0x99, 0xd4, 0x7d, 0x71, 0xbe, 0x4b, 0x03, + 0x55, 0x2a, 0x2e, 0x50, 0x94, 0xd0, 0x00, 0x00, 0xff, 0xff, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x06, 0xf0, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa1, 0x01, 0x8d, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x1a, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xe8, 0xb4, 0x1b, 0x1e, 0x05, 0x14, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x06, 0xf0, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa2, 0x01, 0xed, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x1a, 0x05, 0x26, 0x01, 0x25, 0x1a, 0x1d, 0x05, 0x14, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x06, 0xfe, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa3, 0x01, 0x98, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x1b, 0x05, 0x26, 0x01, 0x00, 0x20, 0x1a, 0x05, 0x14, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x06, 0xb2, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa5, 0x01, 0x9e, 0x00, 0x00, 0x00, 0x19, 0xb6, 0x02, + 0x01, 0x1a, 0x05, 0x26, 0x02, 0x01, 0xb8, 0xff, 0xfe, 0xb4, 0x1e, 0x1c, + 0x05, 0x14, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x2d, 0x00, 0x00, 0x05, 0x29, 0x06, 0xf0, 0x12, 0x26, + 0x00, 0x3c, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, 0x01, 0xd0, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x09, 0x05, 0x26, 0x01, 0x41, 0x09, 0x0c, + 0x04, 0x08, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xea, 0x05, 0x81, 0x00, 0x10, + 0x00, 0x1b, 0x00, 0x5f, 0x40, 0x3f, 0x96, 0x0f, 0x01, 0x74, 0x1a, 0x84, + 0x1a, 0x02, 0x7b, 0x12, 0x8b, 0x12, 0x02, 0x00, 0x5a, 0x10, 0x11, 0x30, + 0x11, 0x90, 0x11, 0x03, 0xff, 0x11, 0x01, 0x00, 0x11, 0x10, 0x11, 0x20, + 0x11, 0x40, 0x11, 0x04, 0x11, 0x16, 0x0b, 0x07, 0x5a, 0x00, 0x08, 0x10, + 0x08, 0x40, 0x08, 0x03, 0x07, 0x08, 0x16, 0x5f, 0x06, 0x15, 0x5f, 0x0b, + 0x06, 0x0b, 0x06, 0x0b, 0x07, 0x09, 0x03, 0x07, 0x12, 0x00, 0x3f, 0x3f, + 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x10, 0xed, 0x10, 0xed, 0x01, 0x2f, 0x5e, + 0x5d, 0xed, 0x32, 0x32, 0x2f, 0x5d, 0x5d, 0x71, 0xed, 0x31, 0x30, 0x00, + 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x21, 0x11, 0x23, 0x11, + 0x33, 0x15, 0x21, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x26, 0x23, 0x21, 0x11, + 0x21, 0x32, 0x3e, 0x02, 0x04, 0xea, 0x3b, 0x79, 0xb6, 0x7b, 0xfe, 0x62, + 0xbf, 0xbf, 0x01, 0x92, 0x7d, 0xba, 0x7c, 0x3e, 0xc0, 0xa4, 0xa4, 0xfe, + 0x85, 0x01, 0x83, 0x52, 0x79, 0x4f, 0x26, 0x02, 0xdf, 0x58, 0x9f, 0x78, + 0x47, 0xfe, 0xd7, 0x05, 0x81, 0xfc, 0x3c, 0x6f, 0x9c, 0x63, 0x86, 0x95, + 0xfd, 0xc0, 0x2c, 0x4f, 0x6b, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8e, + 0xff, 0xec, 0x04, 0x8f, 0x05, 0xcc, 0x00, 0x43, 0x00, 0xd6, 0x40, 0x96, + 0x95, 0x33, 0x01, 0x85, 0x3f, 0x95, 0x3f, 0x02, 0x85, 0x2f, 0x95, 0x2f, + 0x02, 0x85, 0x2e, 0x95, 0x2e, 0x02, 0x76, 0x41, 0x01, 0x76, 0x38, 0x01, + 0x53, 0x1a, 0x83, 0x1a, 0x93, 0x1a, 0x03, 0x5c, 0x27, 0x6c, 0x27, 0x7c, + 0x27, 0x03, 0x6b, 0x16, 0x01, 0x3a, 0x16, 0x01, 0x91, 0x34, 0x01, 0x15, + 0x34, 0x25, 0x34, 0x02, 0x16, 0x42, 0x26, 0x42, 0x76, 0x42, 0x03, 0x1a, + 0x03, 0x2a, 0x03, 0x02, 0x3d, 0x48, 0x18, 0x36, 0x48, 0x1f, 0x20, 0x18, + 0x01, 0x1f, 0x1f, 0x01, 0x09, 0x18, 0x1f, 0x1f, 0x18, 0x09, 0x03, 0x2b, + 0x00, 0x48, 0x40, 0x30, 0x11, 0xa0, 0x11, 0x02, 0xa0, 0x11, 0xb0, 0x11, + 0x02, 0x11, 0x45, 0x80, 0x2a, 0x46, 0x00, 0x2b, 0x10, 0x2b, 0x30, 0x2b, + 0x03, 0x08, 0x2b, 0x70, 0x45, 0x01, 0x3f, 0x45, 0x4f, 0x45, 0x02, 0xd4, + 0x1f, 0x01, 0xc5, 0x1f, 0x01, 0xb6, 0x1f, 0x01, 0xdb, 0x11, 0x01, 0xca, + 0x11, 0x01, 0xb9, 0x11, 0x01, 0x1f, 0x11, 0x05, 0x24, 0x50, 0x31, 0x00, + 0x2b, 0x15, 0x0e, 0x50, 0x05, 0x16, 0x00, 0x3f, 0xed, 0x3f, 0x3f, 0xed, + 0x12, 0x39, 0x39, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, + 0x2f, 0x5e, 0x5d, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x12, + 0x17, 0x39, 0x2f, 0x2f, 0x2f, 0x5d, 0x5d, 0x10, 0xed, 0x10, 0xed, 0x31, + 0x30, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, + 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, + 0x23, 0x22, 0x26, 0x2f, 0x01, 0x1e, 0x03, 0x33, 0x32, 0x36, 0x35, 0x34, + 0x2e, 0x04, 0x35, 0x34, 0x3e, 0x04, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, + 0x0e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, + 0x02, 0x15, 0x14, 0x0e, 0x04, 0x15, 0x14, 0x1e, 0x04, 0x04, 0x8f, 0x29, + 0x57, 0x88, 0x5e, 0x50, 0x94, 0x37, 0x02, 0x19, 0x43, 0x4a, 0x4e, 0x25, + 0x5c, 0x62, 0x36, 0x51, 0x5f, 0x51, 0x36, 0x21, 0x31, 0x3a, 0x31, 0x21, + 0x21, 0x3f, 0x5a, 0x39, 0x44, 0x6b, 0x49, 0x27, 0xb4, 0x3f, 0x78, 0xae, + 0x6e, 0x66, 0x9b, 0x69, 0x35, 0x21, 0x33, 0x3a, 0x33, 0x21, 0x37, 0x52, + 0x5f, 0x52, 0x37, 0x01, 0x27, 0x42, 0x73, 0x55, 0x31, 0x19, 0x18, 0xa4, + 0x0e, 0x19, 0x13, 0x0b, 0x56, 0x4f, 0x38, 0x4d, 0x3e, 0x39, 0x49, 0x62, + 0x49, 0x33, 0x49, 0x3a, 0x30, 0x34, 0x3f, 0x2b, 0x25, 0x3e, 0x2d, 0x1a, + 0x23, 0x4d, 0x7a, 0x58, 0xfc, 0x03, 0x04, 0x03, 0x76, 0xad, 0x70, 0x36, + 0x2e, 0x50, 0x6d, 0x3e, 0x3d, 0x5a, 0x45, 0x35, 0x2f, 0x30, 0x1c, 0x26, + 0x3b, 0x39, 0x40, 0x55, 0x72, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x73, 0x05, 0xe4, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x43, 0x00, 0xbc, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, + 0x42, 0x11, 0x26, 0x02, 0xb8, 0xff, 0x95, 0xb4, 0x43, 0x46, 0x03, 0x24, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x73, 0x05, 0xe4, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x74, 0x01, 0x54, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x42, 0x11, 0x26, 0x02, 0x0b, 0x42, 0x45, 0x03, 0x24, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x73, 0x05, 0xd3, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4b, 0x00, 0xda, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, + 0x43, 0x11, 0x26, 0x02, 0xb8, 0xff, 0xc0, 0xb4, 0x48, 0x42, 0x03, 0x24, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x73, 0x05, 0xbd, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x52, 0x00, 0xf5, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, + 0x42, 0x11, 0x26, 0x02, 0xb8, 0xff, 0xe0, 0xb4, 0x4b, 0x59, 0x03, 0x24, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x73, 0x05, 0x7b, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x69, 0x00, 0xeb, 0x00, 0x00, 0x00, 0x19, 0xb6, 0x03, + 0x02, 0x42, 0x11, 0x26, 0x03, 0x02, 0xb8, 0xff, 0xca, 0xb4, 0x46, 0x44, + 0x03, 0x24, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x04, 0x73, 0x06, 0x73, 0x12, 0x26, + 0x00, 0x44, 0x00, 0x00, 0x11, 0x07, 0x01, 0x50, 0x01, 0x08, 0x00, 0x00, + 0x00, 0x19, 0xb6, 0x03, 0x02, 0x47, 0x11, 0x26, 0x03, 0x02, 0xb8, 0xff, + 0xc8, 0xb4, 0x4c, 0x42, 0x03, 0x24, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, + 0x2b, 0x35, 0x35, 0x00, 0x00, 0x03, 0x00, 0x42, 0xff, 0xec, 0x06, 0xc2, + 0x04, 0x4e, 0x00, 0x3e, 0x00, 0x4f, 0x00, 0x58, 0x00, 0xfb, 0x40, 0x60, + 0x86, 0x36, 0x01, 0x7a, 0x24, 0x01, 0x7b, 0x3a, 0x01, 0x75, 0x08, 0x85, + 0x08, 0x02, 0x65, 0x44, 0x75, 0x44, 0x85, 0x44, 0x03, 0x7c, 0x56, 0x01, + 0x6a, 0x56, 0x01, 0x7e, 0x51, 0x01, 0x6a, 0x51, 0x01, 0x65, 0x04, 0x75, + 0x04, 0x02, 0x29, 0x2f, 0x01, 0x29, 0x2c, 0x01, 0x18, 0x28, 0x09, 0x0d, + 0x48, 0x0a, 0x1c, 0x1a, 0x1c, 0x02, 0x11, 0x35, 0x58, 0x01, 0x46, 0x21, + 0x1f, 0x4f, 0x4f, 0x4f, 0x5f, 0x4f, 0x7f, 0x4f, 0x04, 0x4f, 0x4f, 0x50, + 0x19, 0x09, 0x49, 0x0a, 0x0a, 0x3d, 0x47, 0x40, 0x1f, 0x50, 0x2f, 0x50, + 0x3f, 0x50, 0x03, 0x90, 0x50, 0x01, 0x50, 0x5a, 0x80, 0x2c, 0x47, 0x2d, + 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x15, 0x1c, 0x48, 0x2d, 0x2d, 0x47, 0x47, + 0x19, 0x40, 0x0c, 0x0f, 0x48, 0x19, 0x3e, 0x50, 0x50, 0x50, 0x06, 0x35, + 0xb8, 0xff, 0xb8, 0x40, 0x2b, 0x11, 0x49, 0x35, 0x53, 0x50, 0x38, 0x10, + 0x3f, 0x51, 0x21, 0x21, 0x4a, 0x32, 0x8f, 0x2c, 0x01, 0x2b, 0x2c, 0x01, + 0x2c, 0x2c, 0x27, 0x50, 0x32, 0x10, 0x11, 0x4a, 0x50, 0x16, 0x16, 0x06, + 0x50, 0x0f, 0xef, 0x09, 0x01, 0x80, 0x09, 0x01, 0x09, 0x09, 0x0f, 0x16, + 0x00, 0x3f, 0x33, 0x2f, 0x5d, 0x5d, 0x10, 0xed, 0x3f, 0xed, 0x32, 0x3f, + 0xed, 0x33, 0x2f, 0x5d, 0x5d, 0x11, 0x12, 0x39, 0x2f, 0xed, 0x3f, 0xed, + 0x32, 0x2b, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x2f, 0x2b, 0xed, 0x33, 0x2f, + 0x2b, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x32, 0x2f, 0xed, + 0x11, 0x12, 0x39, 0x2f, 0x5d, 0x33, 0xed, 0x32, 0x39, 0x39, 0x31, 0x30, + 0x5d, 0x2b, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, + 0x01, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x15, 0x1e, + 0x03, 0x33, 0x32, 0x36, 0x37, 0x17, 0x0e, 0x03, 0x23, 0x20, 0x03, 0x0e, + 0x03, 0x23, 0x22, 0x26, 0x35, 0x34, 0x3e, 0x04, 0x3f, 0x01, 0x35, 0x34, + 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, + 0x16, 0x17, 0x3e, 0x01, 0x33, 0x32, 0x1e, 0x02, 0x1d, 0x01, 0x25, 0x07, + 0x0e, 0x05, 0x15, 0x14, 0x16, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x25, 0x2e, + 0x01, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x03, 0xc8, 0x01, 0x22, 0x46, 0x6d, + 0x4e, 0x75, 0x8d, 0x19, 0x9e, 0x11, 0x3d, 0x66, 0x99, 0x6c, 0xfe, 0xbf, + 0x66, 0x1d, 0x4a, 0x66, 0x89, 0x5d, 0xa7, 0xa9, 0x26, 0x43, 0x5b, 0x6b, + 0x75, 0x3c, 0xf0, 0x1a, 0x39, 0x58, 0x3d, 0x36, 0x58, 0x40, 0x27, 0x07, + 0xbc, 0x0a, 0x3a, 0x69, 0x9f, 0x70, 0x80, 0xac, 0x31, 0x3f, 0xb1, 0x6a, + 0x88, 0xb7, 0x6f, 0x2f, 0xfc, 0x50, 0xc3, 0x28, 0x51, 0x4c, 0x42, 0x31, + 0x1c, 0x64, 0x5d, 0x5a, 0x81, 0x53, 0x28, 0x02, 0xf6, 0x0f, 0x90, 0x87, + 0x2d, 0x60, 0x51, 0x36, 0x04, 0x01, 0xf7, 0x11, 0x52, 0x88, 0x62, 0x37, + 0x5e, 0x48, 0x2d, 0x2d, 0x5b, 0x49, 0x2f, 0x01, 0x01, 0x33, 0x5d, 0x47, + 0x2a, 0xac, 0x96, 0x47, 0x6c, 0x4e, 0x33, 0x20, 0x0d, 0x01, 0x04, 0x3b, + 0x43, 0x5e, 0x3a, 0x1b, 0x0f, 0x27, 0x43, 0x33, 0x11, 0x40, 0x6b, 0x4e, + 0x2b, 0x46, 0x45, 0x4a, 0x41, 0x58, 0x9b, 0xd2, 0x7a, 0x18, 0x1f, 0x04, + 0x01, 0x06, 0x12, 0x1f, 0x33, 0x49, 0x33, 0x57, 0x61, 0x3f, 0x62, 0x74, + 0x35, 0xc4, 0xab, 0x9d, 0x1d, 0x4a, 0x7f, 0x62, 0xff, 0xff, 0x00, 0x57, + 0xfe, 0x4e, 0x03, 0xca, 0x04, 0x4e, 0x12, 0x26, 0x00, 0x46, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x78, 0x01, 0x0c, 0x00, 0x00, 0x00, 0x0b, 0xb6, 0x01, + 0x28, 0x30, 0x28, 0x13, 0x09, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x04, 0x18, 0x05, 0xe4, 0x12, 0x26, + 0x00, 0x48, 0x00, 0x00, 0x11, 0x07, 0x00, 0x43, 0x00, 0xdd, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x02, 0x26, 0x11, 0x26, 0x02, 0xb8, 0xff, 0xe4, 0xb4, + 0x27, 0x2a, 0x11, 0x1b, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x04, 0x18, 0x05, 0xe4, 0x12, 0x26, + 0x00, 0x48, 0x00, 0x00, 0x11, 0x07, 0x00, 0x74, 0x01, 0x70, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x02, 0x26, 0x11, 0x26, 0x02, 0x54, 0x26, 0x29, + 0x11, 0x1b, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x04, 0x18, 0x05, 0xd3, 0x12, 0x26, + 0x00, 0x48, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4b, 0x00, 0xf5, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x02, 0x27, 0x11, 0x26, 0x02, 0x08, 0x2c, 0x26, + 0x11, 0x1b, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x04, 0x18, 0x05, 0x7b, 0x12, 0x26, + 0x00, 0x48, 0x00, 0x00, 0x11, 0x07, 0x00, 0x69, 0x00, 0xf8, 0x00, 0x00, + 0x00, 0x17, 0x40, 0x0d, 0x03, 0x02, 0x26, 0x11, 0x26, 0x03, 0x02, 0x04, + 0x2a, 0x28, 0x11, 0x1b, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x0a, 0x00, 0x00, 0x01, 0xb2, + 0x05, 0xe4, 0x12, 0x26, 0x00, 0xf1, 0x00, 0x00, 0x11, 0x06, 0x00, 0x43, + 0xa0, 0x00, 0x00, 0x15, 0xb4, 0x01, 0x04, 0x11, 0x26, 0x01, 0xb8, 0xff, + 0xc2, 0xb4, 0x05, 0x08, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x87, 0x00, 0x00, 0x02, 0x2f, + 0x05, 0xe4, 0x12, 0x26, 0x00, 0xf1, 0x00, 0x00, 0x11, 0x06, 0x00, 0x74, + 0x3f, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x04, 0x11, 0x26, 0x01, 0x3f, + 0x04, 0x07, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0xff, 0xd3, 0x00, 0x00, 0x02, 0x69, 0x05, 0xd3, 0x12, 0x26, + 0x00, 0xf1, 0x00, 0x00, 0x11, 0x06, 0x01, 0x4b, 0xd3, 0x00, 0x00, 0x13, + 0x40, 0x0b, 0x01, 0x05, 0x11, 0x26, 0x01, 0x02, 0x0a, 0x04, 0x00, 0x02, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x08, + 0x00, 0x00, 0x02, 0x35, 0x05, 0x7b, 0x12, 0x26, 0x00, 0xf1, 0x00, 0x00, + 0x11, 0x06, 0x00, 0x69, 0xdb, 0x00, 0x00, 0x17, 0x40, 0x0d, 0x02, 0x01, + 0x04, 0x11, 0x26, 0x02, 0x01, 0x02, 0x08, 0x06, 0x00, 0x02, 0x25, 0x01, + 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x02, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x27, 0x05, 0xea, 0x00, 0x27, 0x00, 0x39, 0x00, 0xbe, + 0x40, 0x5e, 0x64, 0x33, 0x01, 0x64, 0x38, 0x01, 0x6b, 0x2a, 0x01, 0x6b, + 0x30, 0x01, 0x0a, 0x0e, 0x1a, 0x0e, 0x02, 0x25, 0x11, 0x35, 0x11, 0x45, + 0x11, 0x03, 0x06, 0x08, 0x16, 0x08, 0x02, 0x17, 0x1a, 0x1d, 0x03, 0x32, + 0x0f, 0x1c, 0x1f, 0x1c, 0x02, 0x1c, 0x1c, 0x32, 0x23, 0x47, 0x28, 0x40, + 0x13, 0x10, 0x0d, 0x03, 0x28, 0x11, 0x40, 0x0e, 0x13, 0x48, 0x16, 0x05, + 0x11, 0x11, 0x05, 0x90, 0x28, 0x01, 0x90, 0x28, 0xa0, 0x28, 0x02, 0x28, + 0x3b, 0x80, 0x32, 0x47, 0x1f, 0x05, 0x01, 0x05, 0x1a, 0x13, 0x1d, 0x10, + 0x04, 0x11, 0x1b, 0x1b, 0x16, 0x2d, 0x50, 0x0d, 0x50, 0x0a, 0x01, 0x0a, + 0xb8, 0xff, 0xc0, 0x40, 0x1c, 0x07, 0x0a, 0x48, 0x52, 0x11, 0x01, 0x24, + 0x11, 0x34, 0x11, 0x44, 0x11, 0x03, 0x02, 0x11, 0x12, 0x11, 0x02, 0x0a, + 0x11, 0x0a, 0x11, 0x16, 0x00, 0x35, 0x50, 0x00, 0x16, 0x00, 0x3f, 0xed, + 0x3f, 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x33, 0xed, + 0x11, 0x33, 0x2f, 0x12, 0x17, 0x39, 0x01, 0x2f, 0x5d, 0xed, 0x1a, 0x10, + 0xcc, 0x5d, 0x71, 0x11, 0x39, 0x2f, 0x12, 0x39, 0x2b, 0x12, 0x17, 0x39, + 0x1a, 0x10, 0xed, 0x11, 0x39, 0x2f, 0x5d, 0x12, 0x17, 0x39, 0x31, 0x30, + 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x05, 0x22, + 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x16, 0x17, 0x2e, 0x01, + 0x27, 0x05, 0x35, 0x37, 0x2e, 0x01, 0x27, 0x33, 0x1e, 0x01, 0x17, 0x25, + 0x0f, 0x01, 0x1e, 0x03, 0x1d, 0x01, 0x14, 0x0e, 0x02, 0x13, 0x34, 0x2e, + 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x16, 0x33, 0x32, 0x3e, 0x02, + 0x02, 0x36, 0x7d, 0xb5, 0x76, 0x38, 0x34, 0x74, 0xba, 0x85, 0x47, 0x75, + 0x2b, 0x2b, 0x73, 0x4c, 0xfe, 0xd3, 0xda, 0x38, 0x78, 0x42, 0xd1, 0x2d, + 0x53, 0x2a, 0x01, 0x32, 0x01, 0xd3, 0x51, 0x81, 0x58, 0x2f, 0x39, 0x78, + 0xbc, 0xb0, 0x21, 0x47, 0x71, 0x50, 0x51, 0x73, 0x49, 0x21, 0x90, 0x91, + 0x51, 0x76, 0x4b, 0x24, 0x14, 0x49, 0x84, 0xb9, 0x6f, 0x6b, 0xb6, 0x86, + 0x4b, 0x20, 0x1b, 0x56, 0xb0, 0x45, 0x85, 0x72, 0x5e, 0x2d, 0x4e, 0x23, + 0x14, 0x33, 0x1f, 0x84, 0x70, 0x5c, 0x4a, 0xb0, 0xc8, 0xdf, 0x79, 0x06, + 0x7a, 0xc4, 0x8a, 0x4a, 0x01, 0xf5, 0x5e, 0x89, 0x5a, 0x2c, 0x2d, 0x5c, + 0x89, 0x5b, 0xbe, 0xb2, 0x2c, 0x5a, 0x8b, 0x00, 0xff, 0xff, 0x00, 0x8c, + 0x00, 0x00, 0x03, 0xf2, 0x05, 0xbd, 0x12, 0x26, 0x00, 0x51, 0x04, 0x00, + 0x11, 0x07, 0x01, 0x52, 0x00, 0xf5, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x26, 0x11, 0x26, 0x01, 0x05, 0x2f, 0x3d, 0x13, 0x24, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x05, 0xe4, 0x12, 0x26, 0x00, 0x52, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x43, 0x00, 0xdf, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, + 0x23, 0x11, 0x26, 0x02, 0xb8, 0xff, 0xe4, 0xb4, 0x24, 0x27, 0x08, 0x00, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x05, 0xe4, 0x12, 0x26, 0x00, 0x52, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x74, 0x01, 0x67, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x23, 0x11, 0x26, 0x02, 0x49, 0x23, 0x26, 0x08, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x05, 0xd3, 0x12, 0x26, 0x00, 0x52, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4b, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x24, 0x11, 0x26, 0x02, 0x01, 0x29, 0x23, 0x08, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x05, 0xbd, 0x12, 0x26, 0x00, 0x52, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x52, 0x00, 0xf7, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x23, 0x11, 0x26, 0x02, 0x0d, 0x2c, 0x3a, 0x08, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x05, 0x7b, 0x12, 0x26, 0x00, 0x52, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x69, 0x00, 0xfa, 0x00, 0x00, 0x00, 0x17, 0x40, 0x0d, + 0x03, 0x02, 0x23, 0x11, 0x26, 0x03, 0x02, 0x04, 0x27, 0x25, 0x08, 0x00, + 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, + 0x00, 0x03, 0x00, 0x41, 0x00, 0xdf, 0x04, 0x24, 0x04, 0x75, 0x00, 0x03, + 0x00, 0x07, 0x00, 0x0b, 0x00, 0x4b, 0x40, 0x30, 0x03, 0x0b, 0xab, 0x00, + 0x08, 0x08, 0x04, 0x80, 0x06, 0xa0, 0x06, 0x02, 0x5f, 0x06, 0x01, 0x20, + 0x06, 0x01, 0x06, 0x3f, 0x04, 0x5f, 0x04, 0x6f, 0x04, 0x03, 0x04, 0x09, + 0xae, 0x40, 0x08, 0x90, 0x08, 0x02, 0x08, 0x04, 0xad, 0x05, 0x00, 0xae, + 0x4f, 0x01, 0x9f, 0x01, 0x02, 0x01, 0x05, 0xb3, 0x00, 0x3f, 0xde, 0x5d, + 0xed, 0x10, 0xfd, 0xde, 0x5d, 0xed, 0x01, 0x2f, 0x5d, 0x2f, 0x5d, 0x5d, + 0x5d, 0x12, 0x39, 0x2f, 0x33, 0xed, 0x32, 0x31, 0x30, 0x01, 0x35, 0x33, + 0x15, 0x01, 0x35, 0x21, 0x15, 0x01, 0x35, 0x33, 0x15, 0x01, 0xde, 0xa8, + 0xfd, 0xbb, 0x03, 0xe3, 0xfd, 0xba, 0xa8, 0x03, 0xbe, 0xb7, 0xb7, 0xfe, + 0xa2, 0x92, 0x92, 0xfe, 0x7f, 0xb7, 0xb7, 0x00, 0x00, 0x03, 0x00, 0x2c, + 0xff, 0xda, 0x04, 0xb4, 0x04, 0x5c, 0x00, 0x16, 0x00, 0x22, 0x00, 0x2d, + 0x00, 0xa1, 0x40, 0x5d, 0x75, 0x21, 0x85, 0x21, 0x02, 0x75, 0x1b, 0x85, + 0x1b, 0x02, 0x7a, 0x26, 0x8a, 0x26, 0x02, 0x7a, 0x2c, 0x8a, 0x2c, 0x02, + 0x96, 0x10, 0x01, 0x42, 0x10, 0x01, 0x4d, 0x05, 0x01, 0x44, 0x15, 0x01, + 0x4b, 0x0a, 0x01, 0x1b, 0x26, 0x23, 0x00, 0x47, 0x40, 0x0f, 0x17, 0xcf, + 0x17, 0x02, 0x9f, 0x17, 0xaf, 0x17, 0xff, 0x17, 0x03, 0x17, 0x2f, 0x80, + 0x23, 0x47, 0x00, 0x0c, 0x01, 0x00, 0x0c, 0x10, 0x0c, 0x20, 0x0c, 0x40, + 0x0c, 0xf0, 0x0c, 0x05, 0x07, 0x0c, 0x90, 0x2f, 0xa0, 0x2f, 0xf0, 0x2f, + 0x03, 0xe0, 0x2f, 0x01, 0xdf, 0x2f, 0x01, 0x00, 0x2f, 0x20, 0x2f, 0x02, + 0x2f, 0xb8, 0xff, 0xc0, 0x40, 0x10, 0x0d, 0x15, 0x48, 0x25, 0x1a, 0x1e, + 0x29, 0x50, 0x12, 0x0e, 0x10, 0x1e, 0x50, 0x07, 0x03, 0x16, 0x00, 0x3f, + 0x33, 0xed, 0x3f, 0x33, 0xed, 0x11, 0x39, 0x39, 0x01, 0x2b, 0x5d, 0x5d, + 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, + 0x1a, 0xed, 0x12, 0x39, 0x39, 0x31, 0x30, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, + 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x10, 0x02, 0x23, 0x22, + 0x26, 0x27, 0x07, 0x23, 0x37, 0x2e, 0x01, 0x35, 0x10, 0x21, 0x32, 0x16, + 0x17, 0x37, 0x33, 0x07, 0x1e, 0x01, 0x07, 0x34, 0x26, 0x27, 0x01, 0x1e, + 0x01, 0x33, 0x32, 0x3e, 0x02, 0x25, 0x14, 0x17, 0x01, 0x2e, 0x01, 0x23, + 0x22, 0x0e, 0x02, 0x04, 0x58, 0xfa, 0xee, 0x61, 0x9c, 0x3c, 0x64, 0xa7, + 0xb8, 0x29, 0x2a, 0x01, 0xe5, 0x67, 0x9c, 0x39, 0x5b, 0xa7, 0xad, 0x2a, + 0x27, 0xbd, 0x0c, 0x0b, 0xfe, 0x1d, 0x26, 0x69, 0x3e, 0x45, 0x70, 0x4e, + 0x2a, 0xfd, 0xb3, 0x18, 0x01, 0xe2, 0x25, 0x68, 0x42, 0x45, 0x6f, 0x4e, + 0x29, 0x02, 0x1e, 0xfe, 0xe4, 0xfe, 0xea, 0x30, 0x32, 0x74, 0xd6, 0x44, + 0xb6, 0x74, 0x02, 0x30, 0x2e, 0x2d, 0x69, 0xc9, 0x45, 0xb9, 0x77, 0x44, + 0x6d, 0x2c, 0xfd, 0xce, 0x31, 0x27, 0x27, 0x62, 0xa6, 0x7e, 0x82, 0x55, + 0x02, 0x31, 0x2d, 0x24, 0x29, 0x63, 0xa4, 0x00, 0xff, 0xff, 0x00, 0x8b, + 0xff, 0xec, 0x03, 0xf1, 0x05, 0xe4, 0x12, 0x26, 0x00, 0x58, 0x06, 0x00, + 0x11, 0x07, 0x00, 0x43, 0x00, 0xec, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x26, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xec, 0xb4, 0x27, 0x2a, 0x24, 0x13, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x8b, + 0xff, 0xec, 0x03, 0xf1, 0x05, 0xe4, 0x12, 0x26, 0x00, 0x58, 0x06, 0x00, + 0x11, 0x07, 0x00, 0x74, 0x01, 0x57, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x26, 0x11, 0x26, 0x01, 0x35, 0x26, 0x29, 0x24, 0x13, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x8b, + 0xff, 0xec, 0x03, 0xf1, 0x05, 0xd3, 0x12, 0x26, 0x00, 0x58, 0x06, 0x00, + 0x11, 0x07, 0x01, 0x4b, 0x00, 0xef, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x27, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xfc, 0xb4, 0x2c, 0x26, 0x24, 0x13, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x8b, + 0xff, 0xec, 0x03, 0xf1, 0x05, 0x7b, 0x12, 0x26, 0x00, 0x58, 0x06, 0x00, + 0x11, 0x07, 0x00, 0x69, 0x00, 0xed, 0x00, 0x00, 0x00, 0x19, 0xb6, 0x02, + 0x01, 0x26, 0x11, 0x26, 0x02, 0x01, 0xb8, 0xff, 0xf3, 0xb4, 0x2a, 0x28, + 0x24, 0x13, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x05, 0xfe, 0x57, 0x03, 0xfc, 0x05, 0xe4, 0x12, 0x26, + 0x00, 0x5c, 0x00, 0x00, 0x11, 0x07, 0x00, 0x74, 0x01, 0x1b, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x20, 0x11, 0x26, 0x01, 0x36, 0x20, 0x23, + 0x11, 0x1f, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x8a, 0xfe, 0x57, 0x04, 0x1d, 0x05, 0xcc, 0x00, 0x22, + 0x00, 0x36, 0x00, 0x6d, 0x40, 0x4c, 0x66, 0x34, 0x76, 0x34, 0x02, 0x69, + 0x26, 0x79, 0x26, 0x02, 0x49, 0x19, 0x59, 0x19, 0x02, 0x46, 0x0a, 0x56, + 0x0a, 0x02, 0x19, 0x15, 0x29, 0x15, 0x89, 0x15, 0x99, 0x15, 0x04, 0x16, + 0x0f, 0x26, 0x0f, 0x86, 0x0f, 0x96, 0x0f, 0x04, 0x12, 0x47, 0x40, 0xa0, + 0x23, 0x01, 0x23, 0x38, 0x80, 0x2d, 0x07, 0x21, 0x46, 0x00, 0x22, 0x10, + 0x22, 0x30, 0x22, 0xf0, 0x22, 0x04, 0x08, 0x22, 0x21, 0x1b, 0x1a, 0x32, + 0x50, 0x17, 0x16, 0x07, 0x28, 0x50, 0x0d, 0x10, 0x00, 0x00, 0x00, 0x3f, + 0x3f, 0xed, 0x32, 0x3f, 0xed, 0x32, 0x3f, 0x01, 0x2f, 0x5e, 0x5d, 0xed, + 0x32, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x31, 0x30, 0x00, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x13, 0x33, 0x11, 0x14, 0x06, 0x07, 0x06, + 0x07, 0x33, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, + 0x23, 0x22, 0x26, 0x27, 0x23, 0x1e, 0x03, 0x15, 0x11, 0x23, 0x01, 0x34, + 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, + 0x3e, 0x02, 0x8a, 0xb4, 0x01, 0x01, 0x01, 0x01, 0x06, 0x19, 0x40, 0x52, + 0x65, 0x3f, 0x70, 0x99, 0x5d, 0x28, 0x28, 0x5d, 0x99, 0x70, 0x74, 0xae, + 0x2e, 0x05, 0x01, 0x01, 0x01, 0x01, 0xb4, 0x02, 0xd6, 0x18, 0x3b, 0x62, + 0x4a, 0x3c, 0x6a, 0x4f, 0x2e, 0x26, 0x49, 0x6c, 0x46, 0x4b, 0x63, 0x3b, + 0x18, 0x05, 0xcc, 0xfe, 0x59, 0x1e, 0x37, 0x15, 0x19, 0x16, 0x34, 0x49, + 0x2f, 0x15, 0x50, 0x91, 0xcd, 0x7d, 0x7b, 0xd0, 0x96, 0x55, 0x58, 0x64, + 0x02, 0x20, 0x30, 0x3b, 0x1d, 0xfe, 0x59, 0x03, 0xc7, 0x64, 0x9c, 0x6c, + 0x38, 0x22, 0x60, 0xa9, 0x87, 0x73, 0x9f, 0x62, 0x2b, 0x3a, 0x6e, 0x9f, + 0xff, 0xff, 0x00, 0x05, 0xfe, 0x57, 0x03, 0xfc, 0x05, 0x7b, 0x12, 0x26, + 0x00, 0x5c, 0x00, 0x00, 0x11, 0x07, 0x00, 0x69, 0x00, 0xbb, 0x00, 0x00, + 0x00, 0x19, 0xb6, 0x02, 0x01, 0x20, 0x11, 0x26, 0x02, 0x01, 0xb8, 0xff, + 0xfe, 0xb4, 0x24, 0x22, 0x11, 0x1f, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, + 0x2b, 0x35, 0x35, 0x00, 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, + 0x06, 0xa1, 0x12, 0x26, 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4d, + 0x01, 0x68, 0x01, 0x4e, 0x00, 0x13, 0x40, 0x0b, 0x02, 0x15, 0x05, 0x26, + 0x02, 0x02, 0x16, 0x15, 0x04, 0x07, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x04, 0x73, + 0x05, 0x53, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4d, + 0x00, 0xe9, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, 0x42, 0x11, 0x26, 0x02, + 0xb8, 0xff, 0xca, 0xb4, 0x43, 0x42, 0x03, 0x24, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, + 0x06, 0xf3, 0x12, 0x26, 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa8, + 0x01, 0x79, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x02, 0x15, 0x05, 0x26, + 0x02, 0x03, 0x1a, 0x22, 0x04, 0x07, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x04, 0x73, + 0x05, 0xe6, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4e, + 0x01, 0x07, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, 0x42, 0x11, 0x26, 0x02, + 0xb8, 0xff, 0xcc, 0xb4, 0x47, 0x53, 0x03, 0x24, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x04, 0xfe, 0x60, 0x05, 0x63, + 0x05, 0x81, 0x12, 0x26, 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x01, 0x51, + 0x03, 0xb5, 0x00, 0x0b, 0x00, 0x0d, 0xb9, 0x00, 0x02, 0xff, 0xcf, 0xb4, + 0x21, 0x21, 0x07, 0x07, 0x25, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xfe, 0x55, 0x04, 0x73, 0x04, 0x4e, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x51, 0x02, 0xc5, 0x00, 0x00, 0x00, 0x0d, 0xb9, 0x00, + 0x02, 0xff, 0xc2, 0xb4, 0x4e, 0x4e, 0x24, 0x24, 0x25, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x68, 0xff, 0xec, 0x05, 0x79, 0x06, 0xf0, 0x12, 0x26, + 0x00, 0x26, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, 0x02, 0x53, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x28, 0x05, 0x26, 0x01, 0x7e, 0x28, 0x2b, + 0x1a, 0x10, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x03, 0xca, 0x05, 0xe4, 0x12, 0x26, + 0x00, 0x46, 0x00, 0x00, 0x11, 0x07, 0x00, 0x74, 0x01, 0x67, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x28, 0x11, 0x26, 0x01, 0x72, 0x28, 0x2b, + 0x13, 0x09, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x68, 0xff, 0xec, 0x05, 0x79, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x26, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, 0x01, 0xcc, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x29, 0x05, 0x26, 0x01, 0x26, 0x2e, 0x28, + 0x1a, 0x10, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x03, 0xca, 0x05, 0xd3, 0x12, 0x26, + 0x00, 0x46, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4b, 0x00, 0xd0, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x29, 0x11, 0x26, 0x01, 0x0a, 0x2e, 0x28, + 0x13, 0x09, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x68, 0xff, 0xec, 0x05, 0x79, 0x06, 0xf1, 0x12, 0x26, + 0x00, 0x26, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4f, 0x02, 0x22, 0x01, 0x25, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x28, 0x05, 0x26, 0x01, 0x27, 0x28, 0x2a, + 0x1a, 0x10, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x03, 0xca, 0x05, 0xcc, 0x12, 0x26, + 0x00, 0x46, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4f, 0x01, 0x2c, 0x00, 0x00, + 0x00, 0x0b, 0xb6, 0x01, 0x11, 0x28, 0x2a, 0x13, 0x09, 0x25, 0x01, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x68, 0xff, 0xec, 0x05, 0x79, + 0x06, 0xfe, 0x12, 0x26, 0x00, 0x26, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa4, + 0x01, 0xcc, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x28, 0x05, 0x26, + 0x01, 0x26, 0x2a, 0x30, 0x1a, 0x10, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x03, 0xca, + 0x05, 0xd3, 0x12, 0x26, 0x00, 0x46, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4c, + 0x00, 0xd6, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x28, 0x11, 0x26, + 0x01, 0x10, 0x2a, 0x30, 0x13, 0x09, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x65, + 0x06, 0xfe, 0x12, 0x26, 0x00, 0x27, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa4, + 0x01, 0x66, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, 0x1a, 0x05, 0x26, 0x02, + 0xb8, 0xff, 0xab, 0xb4, 0x1c, 0x22, 0x06, 0x00, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x56, 0xff, 0xec, 0x04, 0xff, + 0x05, 0xcc, 0x10, 0x26, 0x00, 0x47, 0x00, 0x00, 0x11, 0x07, 0x02, 0x9f, + 0x03, 0xba, 0x00, 0x4b, 0x00, 0x12, 0x40, 0x0a, 0x02, 0x3d, 0x00, 0x02, + 0x53, 0x3d, 0x3d, 0x13, 0x13, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x3f, 0x35, + 0xff, 0xff, 0x00, 0x0e, 0x00, 0x00, 0x05, 0x65, 0x05, 0x81, 0x12, 0x06, + 0x00, 0x90, 0x00, 0x00, 0x00, 0x02, 0x00, 0x56, 0xff, 0xec, 0x04, 0x6d, + 0x05, 0xcc, 0x00, 0x27, 0x00, 0x3b, 0x00, 0x92, 0x40, 0x56, 0x55, 0x2a, + 0x65, 0x2a, 0x02, 0x5a, 0x3a, 0x6a, 0x3a, 0x02, 0x39, 0x01, 0x49, 0x01, + 0x02, 0x36, 0x0a, 0x46, 0x0a, 0x02, 0x09, 0x04, 0x19, 0x04, 0x79, 0x04, + 0x89, 0x04, 0x04, 0x06, 0x07, 0x16, 0x07, 0x76, 0x07, 0x86, 0x07, 0x04, + 0x19, 0x1b, 0x46, 0x40, 0x14, 0x06, 0x00, 0x15, 0x32, 0x03, 0x12, 0x3d, + 0x80, 0x28, 0x47, 0x1f, 0x06, 0x01, 0x06, 0x3f, 0x3d, 0x01, 0x8f, 0x3d, + 0x01, 0x21, 0x15, 0x1b, 0x13, 0x51, 0x18, 0x0f, 0x14, 0x01, 0xef, 0x14, + 0xff, 0x14, 0x02, 0x14, 0x14, 0x08, 0x16, 0x00, 0x0b, 0x37, 0x50, 0x08, + 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x09, 0x0d, 0x48, 0x08, 0x10, 0x00, 0x2d, + 0x50, 0x03, 0x16, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0x2b, 0xed, 0x32, 0x3f, + 0x12, 0x39, 0x2f, 0x5d, 0x71, 0x33, 0xed, 0x32, 0x3f, 0x01, 0x5d, 0x72, + 0x2f, 0x5d, 0xed, 0x1a, 0x10, 0xdc, 0x17, 0x32, 0x11, 0x39, 0x1a, 0xed, + 0x32, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x25, 0x0e, + 0x01, 0x23, 0x22, 0x02, 0x11, 0x10, 0x21, 0x32, 0x16, 0x17, 0x33, 0x34, + 0x2e, 0x01, 0x34, 0x3d, 0x01, 0x21, 0x35, 0x21, 0x35, 0x33, 0x15, 0x33, + 0x15, 0x23, 0x11, 0x14, 0x1e, 0x02, 0x17, 0x23, 0x2e, 0x03, 0x35, 0x01, + 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x23, + 0x22, 0x0e, 0x02, 0x03, 0x35, 0x32, 0xa5, 0x7a, 0xcd, 0xc1, 0x01, 0x8e, + 0x7b, 0xa4, 0x32, 0x02, 0x01, 0x01, 0xfe, 0xd4, 0x01, 0x2c, 0xb4, 0x84, + 0x84, 0x01, 0x02, 0x02, 0x01, 0xac, 0x02, 0x03, 0x03, 0x02, 0xfd, 0xda, + 0x1c, 0x3e, 0x60, 0x45, 0x47, 0x6d, 0x49, 0x26, 0x26, 0x4a, 0x6b, 0x46, + 0x42, 0x60, 0x40, 0x1f, 0xae, 0x68, 0x5a, 0x01, 0x14, 0x01, 0x18, 0x02, + 0x36, 0x5a, 0x62, 0x0a, 0x2b, 0x2f, 0x2a, 0x09, 0x8d, 0x83, 0x93, 0x93, + 0x83, 0xfc, 0x29, 0x27, 0x48, 0x3c, 0x2b, 0x09, 0x0a, 0x25, 0x30, 0x35, + 0x1a, 0x01, 0x70, 0x70, 0xa0, 0x67, 0x30, 0x2e, 0x67, 0xa6, 0x78, 0x73, + 0x9f, 0x62, 0x2b, 0x2e, 0x66, 0xa3, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0xfe, 0x06, 0xa1, 0x12, 0x26, 0x00, 0x28, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4d, 0x01, 0x7a, 0x01, 0x4e, 0x00, 0x15, 0xb4, 0x01, + 0x0c, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xed, 0xb4, 0x0d, 0x0c, 0x00, 0x0a, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x18, 0x05, 0x53, 0x12, 0x26, 0x00, 0x48, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4d, 0x00, 0xf5, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x26, 0x11, 0x26, 0x02, 0x03, 0x27, 0x26, 0x11, 0x1b, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0xfe, 0x06, 0xf3, 0x12, 0x26, 0x00, 0x28, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa8, 0x01, 0x89, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x0c, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xeb, 0xb4, 0x11, 0x19, 0x00, 0x0a, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x18, 0x05, 0xe6, 0x12, 0x26, 0x00, 0x48, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4e, 0x01, 0x10, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x26, 0x11, 0x26, 0x02, 0x02, 0x2b, 0x37, 0x11, 0x1b, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0xfe, 0x06, 0xf1, 0x12, 0x26, 0x00, 0x28, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4f, 0x01, 0xc9, 0x01, 0x25, 0x00, 0x15, 0xb4, 0x01, + 0x0c, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xec, 0xb4, 0x0c, 0x0e, 0x00, 0x0a, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x18, 0x05, 0xcc, 0x12, 0x26, 0x00, 0x48, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4f, 0x01, 0x44, 0x00, 0x00, 0x00, 0x0c, 0xb6, 0x02, + 0x02, 0x26, 0x28, 0x11, 0x1b, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0xfe, 0x55, 0x04, 0xfe, 0x05, 0x81, 0x12, 0x26, + 0x00, 0x28, 0x00, 0x00, 0x11, 0x07, 0x01, 0x51, 0x03, 0x50, 0x00, 0x00, + 0x00, 0x0d, 0xb9, 0x00, 0x01, 0xff, 0xc2, 0xb4, 0x18, 0x18, 0x0b, 0x0b, + 0x25, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, 0xfe, 0x55, 0x04, 0x18, + 0x04, 0x4e, 0x12, 0x26, 0x00, 0x48, 0x00, 0x00, 0x11, 0x07, 0x01, 0x51, + 0x01, 0x7d, 0x00, 0x00, 0x00, 0x0d, 0xb9, 0x00, 0x02, 0xfe, 0xf2, 0xb4, + 0x32, 0x32, 0x09, 0x09, 0x25, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0xfe, 0x06, 0xfe, 0x12, 0x26, 0x00, 0x28, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa4, 0x01, 0x6f, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x0c, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xe7, 0xb4, 0x0e, 0x14, 0x00, 0x0a, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x18, 0x05, 0xd3, 0x12, 0x26, 0x00, 0x48, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4c, 0x00, 0xea, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, + 0x26, 0x11, 0x26, 0x02, 0xb8, 0xff, 0xfe, 0xb4, 0x28, 0x2e, 0x11, 0x1b, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x67, + 0xff, 0xec, 0x05, 0xa0, 0x06, 0xfe, 0x12, 0x26, 0x00, 0x2a, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa3, 0x01, 0xdb, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x2f, 0x05, 0x26, 0x01, 0x22, 0x34, 0x2e, 0x00, 0x23, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xfe, 0x57, 0x03, 0xef, 0x05, 0xd3, 0x12, 0x26, 0x00, 0x4a, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4b, 0x00, 0xd8, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x47, 0x11, 0x26, 0x02, 0x00, 0x4c, 0x46, 0x1a, 0x29, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x67, + 0xff, 0xec, 0x05, 0xa0, 0x06, 0xf3, 0x12, 0x26, 0x00, 0x2a, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa8, 0x01, 0xf6, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x2e, 0x05, 0x26, 0x01, 0x27, 0x33, 0x3b, 0x00, 0x23, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xfe, 0x57, 0x03, 0xef, 0x05, 0xe6, 0x12, 0x26, 0x00, 0x4a, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4e, 0x00, 0xf9, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x46, 0x11, 0x26, 0x02, 0x00, 0x4b, 0x57, 0x1a, 0x29, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x67, + 0xff, 0xec, 0x05, 0xa0, 0x06, 0xf1, 0x12, 0x26, 0x00, 0x2a, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4f, 0x02, 0x35, 0x01, 0x25, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x2e, 0x05, 0x26, 0x01, 0x27, 0x2e, 0x30, 0x00, 0x23, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xfe, 0x57, 0x03, 0xef, 0x05, 0xcc, 0x12, 0x26, 0x00, 0x4a, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4f, 0x01, 0x2d, 0x00, 0x00, 0x00, 0x0b, 0xb6, 0x02, + 0x00, 0x46, 0x48, 0x1a, 0x29, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x67, 0xfe, 0x4e, 0x05, 0xa0, 0x05, 0x96, 0x12, 0x26, + 0x00, 0x2a, 0x00, 0x00, 0x11, 0x07, 0x02, 0x99, 0x02, 0x4e, 0x00, 0x00, + 0x00, 0x0b, 0xb6, 0x01, 0x2e, 0x32, 0x2e, 0x00, 0x23, 0x25, 0x01, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, 0xfe, 0x57, 0x03, 0xef, + 0x06, 0x20, 0x10, 0x26, 0x00, 0x4a, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa0, + 0x01, 0x38, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, 0x4f, 0x11, 0x26, 0x02, + 0xb8, 0xff, 0xfc, 0xb4, 0x46, 0x4a, 0x1a, 0x29, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x20, + 0x06, 0xfe, 0x12, 0x26, 0x00, 0x2b, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, + 0x01, 0x99, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x0d, 0x05, 0x26, + 0x01, 0x00, 0x12, 0x0c, 0x04, 0x0a, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x8e, 0x00, 0x00, 0x03, 0xee, + 0x07, 0x3e, 0x12, 0x26, 0x00, 0x4b, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, + 0x00, 0xf2, 0x00, 0x40, 0x00, 0x15, 0xb4, 0x01, 0x23, 0x02, 0x26, 0x01, + 0xb8, 0xff, 0xff, 0xb4, 0x28, 0x22, 0x19, 0x0a, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0x00, 0x02, 0x00, 0x0e, 0x00, 0x00, 0x05, 0xb9, + 0x05, 0x81, 0x00, 0x13, 0x00, 0x17, 0x00, 0xa6, 0x40, 0x48, 0x17, 0x0b, + 0x03, 0x5a, 0x08, 0x07, 0x04, 0x04, 0x14, 0x04, 0x02, 0x07, 0x04, 0x10, + 0x0f, 0x13, 0x5a, 0x14, 0x0c, 0x3b, 0x00, 0x01, 0x04, 0x00, 0x01, 0x38, + 0xa4, 0x00, 0x01, 0x9b, 0x00, 0x01, 0x44, 0x00, 0x01, 0xf4, 0x00, 0x01, + 0xeb, 0x00, 0x01, 0x44, 0x00, 0x94, 0x00, 0x02, 0xe0, 0x00, 0x01, 0x02, + 0x00, 0x00, 0x30, 0x00, 0x70, 0x00, 0xd0, 0x00, 0x04, 0x07, 0x00, 0x20, + 0x19, 0x01, 0xa0, 0x19, 0xb0, 0x19, 0xc0, 0x19, 0x03, 0x19, 0xb8, 0xff, + 0xc0, 0x40, 0x24, 0x0e, 0x11, 0x48, 0x2f, 0x19, 0x01, 0x16, 0x12, 0x06, + 0x5f, 0x0f, 0x0b, 0x50, 0x07, 0x60, 0x07, 0x02, 0x07, 0x02, 0x5f, 0x40, + 0x17, 0x01, 0xa0, 0x17, 0xd0, 0x17, 0x02, 0x17, 0x17, 0x0d, 0x09, 0x03, + 0x04, 0x00, 0x12, 0x00, 0x3f, 0x32, 0x3f, 0x33, 0x39, 0x2f, 0x5d, 0x71, + 0xed, 0xdc, 0x5d, 0x32, 0x32, 0xed, 0x32, 0x32, 0x01, 0x5d, 0x2b, 0x5d, + 0x71, 0x2f, 0x5e, 0x5d, 0x5f, 0x5d, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x33, 0x33, 0xed, 0x32, 0x32, 0x2f, 0x5e, 0x5d, 0x33, + 0x33, 0xed, 0x32, 0x32, 0x31, 0x30, 0x21, 0x11, 0x21, 0x11, 0x23, 0x11, + 0x23, 0x35, 0x33, 0x35, 0x33, 0x15, 0x21, 0x35, 0x33, 0x15, 0x33, 0x15, + 0x23, 0x11, 0x03, 0x35, 0x21, 0x15, 0x04, 0x66, 0xfd, 0x01, 0xbf, 0x9a, + 0x9a, 0xbf, 0x02, 0xff, 0xba, 0x99, 0x99, 0xba, 0xfd, 0x01, 0x02, 0x8d, + 0xfd, 0x73, 0x04, 0x01, 0x9a, 0xe6, 0xe6, 0xe6, 0xe6, 0x9a, 0xfb, 0xff, + 0x03, 0x2d, 0xd4, 0xd4, 0x00, 0x01, 0x00, 0x0a, 0x00, 0x00, 0x03, 0xee, + 0x05, 0xcc, 0x00, 0x29, 0x00, 0x96, 0xb9, 0x00, 0x07, 0xff, 0xe8, 0x40, + 0x42, 0x09, 0x0d, 0x48, 0x00, 0x07, 0x10, 0x07, 0x02, 0x07, 0x21, 0x18, + 0x0b, 0x46, 0x40, 0x50, 0x0c, 0x01, 0x9f, 0x0c, 0xff, 0x0c, 0x02, 0x0c, + 0x2b, 0x80, 0x20, 0x24, 0x18, 0x46, 0x1d, 0x1c, 0xc0, 0x19, 0x01, 0x00, + 0x19, 0x10, 0x19, 0x30, 0x19, 0xe0, 0x19, 0xf0, 0x19, 0x05, 0x08, 0x19, + 0xb0, 0x2b, 0xc0, 0x2b, 0xd0, 0x2b, 0x03, 0xb0, 0x2b, 0xf0, 0x2b, 0x02, + 0xff, 0x2b, 0x01, 0x70, 0x2b, 0x01, 0x2b, 0xb8, 0xff, 0xc0, 0x40, 0x13, + 0x13, 0x17, 0x48, 0x23, 0x1b, 0x51, 0x20, 0x1c, 0x1c, 0x05, 0x1e, 0x00, + 0x19, 0x0b, 0x15, 0x00, 0x12, 0x50, 0x05, 0xb8, 0xff, 0xc0, 0xb4, 0x09, + 0x0d, 0x48, 0x05, 0x0f, 0x00, 0x3f, 0x2b, 0xed, 0x32, 0x3f, 0x33, 0x3f, + 0x12, 0x39, 0x2f, 0x33, 0xed, 0x32, 0x01, 0x2b, 0x5d, 0x5d, 0x71, 0x72, + 0x2f, 0x5e, 0x5d, 0x71, 0x33, 0x33, 0xed, 0x32, 0x32, 0x1a, 0x10, 0xdc, + 0x5d, 0x71, 0x1a, 0xed, 0x12, 0x39, 0x31, 0x30, 0x00, 0x5e, 0x5d, 0x2b, + 0x01, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x34, + 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x23, 0x35, + 0x33, 0x35, 0x33, 0x15, 0x21, 0x15, 0x21, 0x15, 0x14, 0x0e, 0x02, 0x07, + 0x01, 0x3d, 0x1e, 0x46, 0x54, 0x64, 0x3e, 0x68, 0x85, 0x4d, 0x1d, 0xb5, + 0x11, 0x30, 0x58, 0x46, 0x40, 0x67, 0x49, 0x28, 0xb4, 0x84, 0x84, 0xb4, + 0x01, 0x2c, 0xfe, 0xd4, 0x02, 0x03, 0x02, 0x01, 0x03, 0x59, 0x37, 0x4d, + 0x32, 0x17, 0x38, 0x65, 0x8c, 0x54, 0xfd, 0x57, 0x02, 0x86, 0x45, 0x68, + 0x45, 0x23, 0x2e, 0x54, 0x78, 0x4b, 0xfd, 0xaa, 0x04, 0xb6, 0x83, 0x93, + 0x93, 0x83, 0x94, 0x21, 0x42, 0x38, 0x27, 0x07, 0xff, 0xff, 0xff, 0xb8, + 0x00, 0x00, 0x02, 0x85, 0x07, 0x06, 0x12, 0x26, 0x00, 0x2c, 0x00, 0x00, + 0x11, 0x06, 0x02, 0xa6, 0xcf, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x04, + 0x05, 0x26, 0x01, 0x02, 0x0d, 0x1b, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0xff, 0xb8, 0x00, 0x00, 0x02, 0x85, + 0x05, 0xbd, 0x12, 0x26, 0x00, 0xf1, 0x00, 0x00, 0x11, 0x06, 0x01, 0x52, + 0xcf, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x04, 0x11, 0x26, 0x01, 0x02, + 0x0d, 0x1b, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x0c, 0x00, 0x00, 0x02, 0x31, 0x06, 0xa1, 0x12, 0x26, + 0x00, 0x2c, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4d, 0xff, 0xd9, 0x01, 0x4e, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x04, 0x05, 0x26, 0x01, 0x02, 0x05, 0x04, + 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x0c, 0x00, 0x00, 0x02, 0x31, 0x05, 0x53, 0x12, 0x26, + 0x00, 0xf1, 0x00, 0x00, 0x11, 0x06, 0x01, 0x4d, 0xd9, 0x00, 0x00, 0x13, + 0x40, 0x0b, 0x01, 0x04, 0x11, 0x26, 0x01, 0x02, 0x05, 0x04, 0x00, 0x02, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0xff, 0xd2, + 0x00, 0x00, 0x02, 0x6c, 0x06, 0xf3, 0x12, 0x26, 0x00, 0x2c, 0x00, 0x00, + 0x11, 0x06, 0x02, 0xa8, 0xea, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x04, + 0x05, 0x26, 0x01, 0x02, 0x09, 0x11, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0xff, 0xd2, 0x00, 0x00, 0x02, 0x6c, + 0x05, 0xe6, 0x12, 0x26, 0x00, 0xf1, 0x00, 0x00, 0x11, 0x06, 0x01, 0x4e, + 0xf5, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x04, 0x11, 0x26, 0x01, 0x03, + 0x09, 0x15, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x5c, 0xfe, 0x55, 0x01, 0xba, 0x05, 0x81, 0x12, 0x26, + 0x00, 0x2c, 0x00, 0x00, 0x11, 0x06, 0x01, 0x51, 0x0c, 0x00, 0x00, 0x0a, + 0xb6, 0x01, 0x00, 0x10, 0x10, 0x03, 0x03, 0x25, 0x2b, 0x35, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x1f, 0xfe, 0x55, 0x01, 0x7d, 0x05, 0xcc, 0x12, 0x26, + 0x00, 0x4c, 0x00, 0x00, 0x11, 0x06, 0x01, 0x51, 0xcf, 0x00, 0x00, 0x0f, + 0x40, 0x0a, 0x17, 0x16, 0x01, 0x02, 0x00, 0x14, 0x14, 0x07, 0x07, 0x25, + 0x2b, 0x35, 0x5d, 0x00, 0xff, 0xff, 0x00, 0xbd, 0x00, 0x00, 0x01, 0x7c, + 0x06, 0xf1, 0x12, 0x26, 0x00, 0x2c, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4f, + 0x00, 0x27, 0x01, 0x25, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x04, 0x05, 0x26, + 0x01, 0x00, 0x04, 0x06, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc2, 0x00, 0x00, 0x01, 0x76, + 0x04, 0x3a, 0x00, 0x03, 0x01, 0x89, 0x40, 0x18, 0x03, 0x46, 0x04, 0x00, + 0x24, 0x00, 0x02, 0x09, 0x00, 0x00, 0x04, 0x05, 0x34, 0x05, 0x01, 0x00, + 0x05, 0x10, 0x05, 0x20, 0x05, 0x03, 0xe5, 0x05, 0xb8, 0xff, 0xc0, 0x40, + 0x37, 0xe1, 0xe4, 0x48, 0xf0, 0x05, 0x01, 0xe4, 0x05, 0x01, 0xb0, 0x05, + 0xc0, 0x05, 0xd0, 0x05, 0x03, 0x84, 0x05, 0x94, 0x05, 0xa4, 0x05, 0x03, + 0x40, 0x05, 0x01, 0x34, 0x05, 0x01, 0x00, 0x05, 0x10, 0x05, 0x20, 0x05, + 0x03, 0xd4, 0x05, 0xe4, 0x05, 0xf4, 0x05, 0x03, 0x90, 0x05, 0x01, 0x74, + 0x05, 0x84, 0x05, 0x02, 0x60, 0x05, 0x01, 0x05, 0xb8, 0xff, 0xc0, 0x40, + 0x16, 0xc1, 0xc4, 0x48, 0xe0, 0x05, 0x01, 0xc4, 0x05, 0xd4, 0x05, 0x02, + 0xb0, 0x05, 0x01, 0x14, 0x05, 0x24, 0x05, 0x34, 0x05, 0x03, 0x05, 0xb8, + 0xff, 0xc0, 0xb7, 0xb6, 0xb9, 0x48, 0x00, 0x05, 0x01, 0xaf, 0x05, 0xb8, + 0xff, 0xc0, 0xb3, 0xab, 0xae, 0x48, 0x05, 0xb8, 0xff, 0xc0, 0xb6, 0xa1, + 0xa7, 0x48, 0x80, 0x05, 0x01, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x26, 0x96, + 0x9c, 0x48, 0xd0, 0x05, 0x01, 0x64, 0x05, 0x74, 0x05, 0xa4, 0x05, 0xb4, + 0x05, 0xc4, 0x05, 0x05, 0x20, 0x05, 0x01, 0x04, 0x05, 0x14, 0x05, 0x02, + 0x04, 0x05, 0x14, 0x05, 0xb4, 0x05, 0xc4, 0x05, 0xf4, 0x05, 0x05, 0x75, + 0x05, 0xb8, 0xff, 0xc0, 0xb3, 0x79, 0x7c, 0x48, 0x05, 0xb8, 0xff, 0xc0, + 0xb3, 0x6e, 0x71, 0x48, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x18, 0x63, 0x66, + 0x48, 0xe0, 0x05, 0x01, 0xb4, 0x05, 0xc4, 0x05, 0xd4, 0x05, 0x03, 0x30, + 0x05, 0x01, 0x04, 0x05, 0x14, 0x05, 0x24, 0x05, 0x03, 0x05, 0xb8, 0xff, + 0xc0, 0xb7, 0x43, 0x46, 0x48, 0x0b, 0x05, 0x01, 0x3e, 0x05, 0xb8, 0xff, + 0xc0, 0x40, 0x09, 0x38, 0x3b, 0x48, 0xcb, 0x05, 0xdb, 0x05, 0x02, 0x05, + 0xb8, 0xff, 0xc0, 0x40, 0x2a, 0x2d, 0x30, 0x48, 0x1b, 0x05, 0x2b, 0x05, + 0x02, 0xc4, 0x05, 0xd4, 0x05, 0xe4, 0x05, 0x03, 0x6b, 0x05, 0x7b, 0x05, + 0x02, 0x40, 0x05, 0x01, 0x02, 0x10, 0x05, 0x20, 0x05, 0x30, 0x05, 0x03, + 0xbf, 0x05, 0xcf, 0x05, 0x02, 0x20, 0x05, 0x40, 0x05, 0x02, 0x05, 0xb8, + 0xff, 0xc0, 0x40, 0x0d, 0x0d, 0x10, 0x48, 0x0f, 0x05, 0x1f, 0x05, 0x02, + 0x07, 0x01, 0x0f, 0x00, 0x15, 0x00, 0x3f, 0x3f, 0x01, 0x5e, 0x5d, 0x2b, + 0x5d, 0x5d, 0x71, 0x5f, 0x71, 0x71, 0x71, 0x72, 0x2b, 0x72, 0x2b, 0x5e, + 0x5d, 0x2b, 0x71, 0x71, 0x71, 0x71, 0x2b, 0x2b, 0x2b, 0x5e, 0x5d, 0x71, + 0x71, 0x71, 0x71, 0x2b, 0x72, 0x2b, 0x2b, 0x5e, 0x5d, 0x2b, 0x5d, 0x5d, + 0x5d, 0x5d, 0x2b, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, 0x11, 0x12, 0x39, 0x2f, 0x5e, 0x5d, + 0xed, 0x31, 0x30, 0x33, 0x11, 0x33, 0x11, 0xc2, 0xb4, 0x04, 0x3a, 0xfb, + 0xc6, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xaa, 0xff, 0xec, 0x05, 0x49, + 0x05, 0x81, 0x10, 0x26, 0x00, 0x2c, 0xed, 0x00, 0x10, 0x07, 0x00, 0x2d, + 0x01, 0xe1, 0x00, 0x00, 0xff, 0xff, 0x00, 0x89, 0xfe, 0x57, 0x03, 0x03, + 0x05, 0xcc, 0x10, 0x26, 0x00, 0x4c, 0x00, 0x00, 0x11, 0x07, 0x00, 0x4d, + 0x01, 0xc6, 0x00, 0x00, 0x00, 0x1e, 0x40, 0x12, 0x03, 0x02, 0x6f, 0x08, + 0x01, 0x30, 0x08, 0x01, 0x10, 0x08, 0x01, 0x08, 0x01, 0x00, 0x10, 0x00, + 0x01, 0x00, 0x11, 0x5d, 0x35, 0x35, 0x11, 0x5d, 0x5d, 0x5d, 0x35, 0x35, + 0xff, 0xff, 0x00, 0x20, 0xff, 0xec, 0x03, 0xcd, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x2d, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, 0x01, 0x37, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x17, 0x05, 0x26, 0x01, 0xbe, 0x1c, 0x16, + 0x03, 0x10, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0x00, 0x02, 0xff, 0x99, 0xfe, 0x57, 0x02, 0x2f, 0x05, 0xd3, 0x00, 0x13, + 0x00, 0x1d, 0x01, 0x94, 0x40, 0x19, 0x96, 0x1d, 0xa6, 0x1d, 0x02, 0x98, + 0x1c, 0xa8, 0x1c, 0x02, 0x03, 0x12, 0x18, 0x0c, 0x10, 0x48, 0x12, 0x28, + 0x08, 0x0b, 0x48, 0xa4, 0x15, 0x01, 0x15, 0xb8, 0xff, 0xc0, 0x40, 0x31, + 0x0b, 0x0f, 0x48, 0x15, 0xfb, 0x1a, 0x01, 0x3b, 0x1a, 0x01, 0x1a, 0x40, + 0x0c, 0x0f, 0x48, 0x24, 0x1a, 0x01, 0x1a, 0x0f, 0x46, 0x0c, 0x03, 0x03, + 0x04, 0x0c, 0x14, 0x0c, 0x24, 0x0c, 0x44, 0x0c, 0x04, 0x07, 0x0c, 0x0c, + 0x1f, 0x1e, 0x90, 0x1f, 0x01, 0x02, 0x00, 0x1f, 0x10, 0x1f, 0x02, 0xdb, + 0x1f, 0xb8, 0xff, 0xc0, 0x40, 0x09, 0xdf, 0xe3, 0x48, 0x1f, 0x40, 0xd2, + 0xd5, 0x48, 0x1f, 0xb8, 0xff, 0xc0, 0x40, 0x33, 0xcd, 0xd1, 0x48, 0x8f, + 0x1f, 0x01, 0x40, 0x1f, 0x50, 0x1f, 0x02, 0x5f, 0x1f, 0x6f, 0x1f, 0xef, + 0x1f, 0xff, 0x1f, 0x04, 0x20, 0x1f, 0x30, 0x1f, 0x40, 0x1f, 0x03, 0x90, + 0x1f, 0xa0, 0x1f, 0xe0, 0x1f, 0xf0, 0x1f, 0x04, 0x4f, 0x1f, 0x01, 0x00, + 0x1f, 0x01, 0xa0, 0xaf, 0x1f, 0xbf, 0x1f, 0xcf, 0x1f, 0x03, 0x1f, 0xb8, + 0xff, 0xc0, 0x40, 0x39, 0x93, 0x96, 0x48, 0xef, 0x1f, 0x01, 0xb0, 0x1f, + 0xc0, 0x1f, 0xd0, 0x1f, 0x03, 0x5f, 0x1f, 0x01, 0x20, 0x1f, 0x01, 0x1f, + 0x1f, 0x2f, 0x1f, 0x3f, 0x1f, 0x8f, 0x1f, 0xbf, 0x1f, 0xcf, 0x1f, 0x06, + 0x00, 0x1f, 0x01, 0x6f, 0xef, 0x1f, 0x01, 0xd0, 0x1f, 0x01, 0x3f, 0x1f, + 0x01, 0x6f, 0x1f, 0x8f, 0x1f, 0x9f, 0x1f, 0xaf, 0x1f, 0xff, 0x1f, 0x05, + 0x1f, 0xb8, 0xff, 0xc0, 0x40, 0x65, 0x4f, 0x52, 0x48, 0xdf, 0x1f, 0x01, + 0x90, 0x1f, 0xa0, 0x1f, 0xb0, 0x1f, 0x03, 0x2f, 0x1f, 0x3f, 0x1f, 0x4f, + 0x1f, 0x03, 0x00, 0x1f, 0x01, 0x3d, 0x1f, 0x40, 0x35, 0x38, 0x48, 0x70, + 0x1f, 0x80, 0x1f, 0x90, 0x1f, 0xb0, 0x1f, 0x04, 0x0f, 0x1f, 0x1f, 0x1f, + 0x02, 0xff, 0x1f, 0x01, 0x1f, 0x40, 0x23, 0x26, 0x48, 0x90, 0x1f, 0x01, + 0x4f, 0x1f, 0x01, 0xff, 0x1f, 0x01, 0x70, 0x1f, 0x80, 0x1f, 0xc0, 0x1f, + 0xd0, 0x1f, 0xe0, 0x1f, 0x05, 0x1f, 0x1f, 0x01, 0x18, 0x8e, 0x40, 0x1c, + 0x94, 0x1a, 0x80, 0x16, 0x16, 0x0f, 0x1a, 0x2f, 0x1a, 0x3f, 0x1a, 0x7f, + 0x1a, 0xef, 0x1a, 0x05, 0x1a, 0x0d, 0x0f, 0x07, 0x50, 0x00, 0x1b, 0x00, + 0x3f, 0xed, 0x3f, 0x2f, 0x5d, 0x33, 0x2f, 0x1a, 0x10, 0xfd, 0x1a, 0xed, + 0x01, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x2b, 0x71, 0x72, 0x72, 0x2b, 0x5e, + 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x71, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, + 0x71, 0x71, 0x71, 0x71, 0x2b, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x72, 0x72, 0x2b, 0x2b, 0x2b, 0x5e, 0x5d, 0x5f, 0x5d, 0x11, 0x12, 0x39, + 0x2f, 0x5e, 0x5d, 0x33, 0x2f, 0x10, 0xed, 0x2f, 0x5d, 0x2b, 0x5d, 0x71, + 0xcc, 0x2b, 0x5d, 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x01, 0x5f, 0x5d, 0x5d, + 0x13, 0x22, 0x26, 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, + 0x11, 0x33, 0x11, 0x14, 0x0e, 0x02, 0x01, 0x15, 0x23, 0x27, 0x23, 0x07, + 0x23, 0x35, 0x13, 0x33, 0x4d, 0x22, 0x41, 0x1c, 0x0d, 0x24, 0x0d, 0x26, + 0x31, 0x1c, 0x0a, 0xb4, 0x15, 0x36, 0x5d, 0x01, 0x9a, 0x69, 0xdb, 0x02, + 0xe8, 0x68, 0xea, 0xcc, 0xfe, 0x57, 0x04, 0x05, 0x8b, 0x02, 0x04, 0x14, + 0x2b, 0x43, 0x2e, 0x04, 0xa5, 0xfb, 0x40, 0x3e, 0x6a, 0x4e, 0x2d, 0x06, + 0x6e, 0x14, 0xa9, 0xa9, 0x14, 0x01, 0x0e, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0xfe, 0x4e, 0x05, 0x3f, 0x05, 0x81, 0x12, 0x26, 0x00, 0x2e, 0x00, 0x00, + 0x11, 0x07, 0x02, 0x99, 0x01, 0xdd, 0x00, 0x00, 0x00, 0x0e, 0xb9, 0x00, + 0x01, 0xff, 0xcd, 0xb4, 0x10, 0x0c, 0x04, 0x0b, 0x25, 0x01, 0x2b, 0x35, + 0xff, 0xff, 0x00, 0x8a, 0xfe, 0x4e, 0x04, 0x03, 0x05, 0xcc, 0x12, 0x26, + 0x00, 0x4e, 0x00, 0x00, 0x11, 0x07, 0x02, 0x99, 0x01, 0x4e, 0x00, 0x00, + 0x00, 0x0e, 0xb9, 0x00, 0x01, 0xff, 0xeb, 0xb4, 0x10, 0x0c, 0x04, 0x0b, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x01, 0x00, 0x8a, 0x00, 0x00, 0x04, 0x03, + 0x04, 0x3a, 0x00, 0x0b, 0x00, 0xa6, 0x40, 0x48, 0x7b, 0x01, 0x01, 0x74, + 0x07, 0x01, 0x56, 0x09, 0x66, 0x09, 0x02, 0x7b, 0x00, 0x8b, 0x00, 0x9b, + 0x00, 0x03, 0x59, 0x00, 0x69, 0x00, 0x02, 0x43, 0x0a, 0x01, 0x3a, 0x02, + 0x01, 0x2a, 0x09, 0x01, 0x9b, 0x08, 0x01, 0x7a, 0x08, 0x8a, 0x08, 0x02, + 0x2c, 0x08, 0x01, 0x01, 0x0a, 0x08, 0x0a, 0x09, 0x10, 0x70, 0x09, 0x80, + 0x09, 0x90, 0x09, 0x03, 0x09, 0x09, 0x00, 0x0b, 0x10, 0x50, 0x0b, 0x01, + 0x90, 0x0b, 0xd0, 0x0b, 0xf0, 0x0b, 0x03, 0x0b, 0xb8, 0xff, 0xc0, 0x40, + 0x28, 0x07, 0x0b, 0x48, 0x0b, 0x07, 0x03, 0x46, 0x00, 0x04, 0x10, 0x04, + 0x30, 0x04, 0xf0, 0x04, 0x04, 0x08, 0x04, 0x80, 0x0d, 0xc0, 0x0d, 0xe0, + 0x0d, 0x03, 0x3f, 0x0d, 0x01, 0x02, 0x01, 0x07, 0x0a, 0x04, 0x08, 0x08, + 0x05, 0x0f, 0x04, 0x00, 0x15, 0x00, 0x3f, 0x32, 0x3f, 0x33, 0x11, 0x17, + 0x39, 0x01, 0x5d, 0x5d, 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x2f, 0x2b, 0x5d, + 0x71, 0x38, 0x33, 0x39, 0x2f, 0x5d, 0x38, 0x39, 0x33, 0x11, 0x33, 0x31, + 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, + 0x00, 0x5d, 0x01, 0x5d, 0x21, 0x01, 0x07, 0x11, 0x23, 0x11, 0x33, 0x11, + 0x01, 0x33, 0x09, 0x01, 0x03, 0x30, 0xfe, 0x92, 0x84, 0xb4, 0xb4, 0x01, + 0xdb, 0xd3, 0xfe, 0x49, 0x01, 0xce, 0x01, 0xee, 0x6c, 0xfe, 0x7e, 0x04, + 0x3a, 0xfd, 0xf3, 0x02, 0x0d, 0xfe, 0x2f, 0xfd, 0x97, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0x2f, 0x06, 0xf0, 0x12, 0x26, + 0x00, 0x2f, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, 0x00, 0xad, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x06, 0x05, 0x26, 0x01, 0xb8, 0xff, 0x5e, 0xb4, + 0x06, 0x09, 0x00, 0x04, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x5b, 0x00, 0x00, 0x02, 0x03, 0x07, 0x3e, 0x12, 0x26, + 0x00, 0x4f, 0x00, 0x00, 0x11, 0x06, 0x02, 0xa2, 0x13, 0x4e, 0x00, 0x13, + 0x40, 0x0b, 0x01, 0x04, 0x02, 0x26, 0x01, 0x4b, 0x04, 0x07, 0x00, 0x02, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0xfe, 0x4e, 0x04, 0x2f, 0x05, 0x81, 0x12, 0x26, 0x00, 0x2f, 0x00, 0x00, + 0x11, 0x07, 0x02, 0x99, 0x01, 0x85, 0x00, 0x00, 0x00, 0x0e, 0xb9, 0x00, + 0x01, 0xff, 0xfd, 0xb4, 0x0a, 0x06, 0x00, 0x04, 0x25, 0x01, 0x2b, 0x35, + 0xff, 0xff, 0x00, 0x7e, 0xfe, 0x4e, 0x01, 0x47, 0x05, 0xcc, 0x12, 0x26, + 0x00, 0x4f, 0x00, 0x00, 0x11, 0x06, 0x02, 0x99, 0xff, 0x00, 0x00, 0x0e, + 0xb9, 0x00, 0x01, 0xff, 0xff, 0xb4, 0x08, 0x04, 0x00, 0x02, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0x2f, + 0x05, 0x81, 0x12, 0x26, 0x00, 0x2f, 0x00, 0x00, 0x11, 0x07, 0x02, 0x9f, + 0x02, 0x15, 0x00, 0x00, 0x00, 0x12, 0x40, 0x0a, 0x01, 0x0f, 0x03, 0x01, + 0x8a, 0x0a, 0x06, 0x00, 0x04, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x3f, 0x35, + 0xff, 0xff, 0x00, 0x8a, 0x00, 0x00, 0x02, 0x69, 0x05, 0xcc, 0x10, 0x26, + 0x00, 0x4f, 0x00, 0x00, 0x11, 0x07, 0x02, 0x9f, 0x01, 0x24, 0x00, 0x4b, + 0x00, 0x41, 0x40, 0x10, 0x10, 0x40, 0x1d, 0x1d, 0x48, 0x10, 0x40, 0x16, + 0x16, 0x48, 0x10, 0x40, 0x12, 0x12, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, + 0x11, 0x11, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x0c, 0x10, 0x10, 0x48, + 0x10, 0x40, 0x0b, 0x0b, 0x48, 0x01, 0x0d, 0x00, 0x01, 0xb8, 0x01, 0x20, + 0xb4, 0x08, 0x04, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x3f, 0x35, + 0x01, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0x2f, 0x05, 0x81, 0x12, 0x26, 0x00, 0x2f, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4f, 0x01, 0xd5, 0xfd, 0x8f, 0x00, 0x0b, 0xb6, 0x01, + 0x5f, 0x06, 0x08, 0x00, 0x04, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x8a, 0x00, 0x00, 0x02, 0x92, 0x05, 0xcc, 0x10, 0x26, + 0x00, 0x4f, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4f, 0x01, 0x42, 0xfd, 0x8f, + 0x00, 0x0e, 0xb9, 0x00, 0x01, 0x01, 0x54, 0xb4, 0x04, 0x06, 0x00, 0x02, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x01, 0x00, 0x14, 0x00, 0x00, 0x04, 0x2f, + 0x05, 0x81, 0x00, 0x0d, 0x00, 0x77, 0x40, 0x31, 0x79, 0x00, 0x89, 0x00, + 0x02, 0x64, 0x08, 0x74, 0x08, 0x84, 0x08, 0x03, 0x56, 0x08, 0x01, 0x86, + 0x08, 0x01, 0x56, 0x07, 0x01, 0x86, 0x07, 0x01, 0x0c, 0x02, 0x5a, 0x09, + 0x05, 0x10, 0x03, 0x01, 0x00, 0x03, 0x20, 0x03, 0x40, 0x03, 0x60, 0x03, + 0x80, 0x03, 0xd0, 0x03, 0xf0, 0x03, 0x07, 0x03, 0x0c, 0xb8, 0xff, 0xe0, + 0xb3, 0x13, 0x16, 0x48, 0x09, 0xb8, 0xff, 0xe0, 0x40, 0x18, 0x13, 0x16, + 0x48, 0x06, 0x01, 0x09, 0x0c, 0x04, 0x10, 0x07, 0x01, 0x07, 0x00, 0x0d, + 0x01, 0x0d, 0x0d, 0x05, 0x0a, 0x03, 0x02, 0x5f, 0x05, 0x12, 0x00, 0x3f, + 0xed, 0x3f, 0x12, 0x39, 0x2f, 0x5d, 0xcd, 0x5d, 0x17, 0x39, 0x2b, 0x2b, + 0x01, 0x2f, 0x5d, 0x71, 0x2f, 0x33, 0xed, 0x32, 0x31, 0x30, 0x71, 0x72, + 0x71, 0x72, 0x00, 0x5d, 0x5d, 0x01, 0x05, 0x11, 0x21, 0x15, 0x21, 0x11, + 0x07, 0x35, 0x37, 0x11, 0x33, 0x11, 0x25, 0x02, 0x68, 0xfe, 0xff, 0x02, + 0xc8, 0xfc, 0x79, 0x94, 0x94, 0xbf, 0x01, 0x01, 0x03, 0x1d, 0x95, 0xfe, + 0x14, 0x9c, 0x02, 0x1a, 0x55, 0x9e, 0x55, 0x02, 0xc9, 0xfd, 0xa5, 0x94, + 0x00, 0x01, 0x00, 0x10, 0x00, 0x00, 0x01, 0xba, 0x05, 0xcc, 0x00, 0x0b, + 0x00, 0x66, 0x40, 0x2a, 0x27, 0x03, 0x01, 0x27, 0x02, 0x01, 0x08, 0x07, + 0x0b, 0x46, 0x04, 0x02, 0x00, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, + 0x04, 0x07, 0x00, 0x00, 0x0c, 0x0d, 0xff, 0x0d, 0x01, 0x70, 0x0d, 0x80, + 0x0d, 0xc0, 0x0d, 0xd0, 0x0d, 0x04, 0x1f, 0x0d, 0x01, 0x04, 0xb8, 0xff, + 0xe0, 0x40, 0x17, 0x12, 0x16, 0x48, 0x0a, 0x20, 0x12, 0x16, 0x48, 0x01, + 0x0a, 0x04, 0x07, 0x04, 0x02, 0x4f, 0x08, 0x01, 0x08, 0x08, 0x05, 0x00, + 0x00, 0x15, 0x00, 0x3f, 0x3f, 0x39, 0x2f, 0x5d, 0xcd, 0x17, 0x39, 0x2b, + 0x2b, 0x01, 0x5d, 0x5d, 0x5d, 0x11, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x33, + 0x33, 0xed, 0x32, 0x32, 0x31, 0x30, 0x71, 0x71, 0x33, 0x11, 0x07, 0x35, + 0x37, 0x11, 0x33, 0x11, 0x37, 0x15, 0x07, 0x11, 0x8a, 0x7a, 0x7a, 0xb4, + 0x7c, 0x7c, 0x02, 0x1e, 0x44, 0x9e, 0x44, 0x03, 0x10, 0xfd, 0x58, 0x48, + 0x9f, 0x47, 0xfd, 0x7a, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x20, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x31, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, + 0x02, 0x11, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x14, 0x05, 0x26, + 0x01, 0x49, 0x14, 0x17, 0x08, 0x12, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x8c, 0x00, 0x00, 0x03, 0xf2, + 0x05, 0xe4, 0x12, 0x26, 0x00, 0x51, 0x04, 0x00, 0x11, 0x07, 0x00, 0x74, + 0x01, 0x84, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x26, 0x11, 0x26, + 0x01, 0x61, 0x26, 0x29, 0x13, 0x24, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, 0xfe, 0x4e, 0x05, 0x20, + 0x05, 0x81, 0x12, 0x26, 0x00, 0x31, 0x00, 0x00, 0x11, 0x07, 0x02, 0x99, + 0x01, 0xfc, 0x00, 0x00, 0x00, 0x0e, 0xb9, 0x00, 0x01, 0xff, 0xfc, 0xb4, + 0x18, 0x14, 0x08, 0x12, 0x25, 0x01, 0x2b, 0x35, 0xff, 0xff, 0x00, 0x8c, + 0xfe, 0x4e, 0x03, 0xf2, 0x04, 0x4e, 0x12, 0x26, 0x00, 0x51, 0x04, 0x00, + 0x11, 0x07, 0x02, 0x99, 0x01, 0x5b, 0x00, 0x00, 0x00, 0x0b, 0xb6, 0x01, + 0x00, 0x2a, 0x26, 0x13, 0x24, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x20, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x31, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa4, 0x01, 0x93, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x14, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xfa, 0xb4, + 0x16, 0x1c, 0x08, 0x12, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x8c, 0x00, 0x00, 0x03, 0xf2, 0x05, 0xd3, 0x12, 0x26, + 0x00, 0x51, 0x04, 0x00, 0x11, 0x07, 0x01, 0x4c, 0x00, 0xf2, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x26, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xfe, 0xb4, + 0x28, 0x2e, 0x13, 0x24, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x04, 0x50, 0x05, 0x81, 0x10, 0x26, + 0x00, 0x51, 0x62, 0x00, 0x10, 0x07, 0x02, 0x0f, 0xff, 0x7f, 0x00, 0x00, + 0x00, 0x01, 0x00, 0xa5, 0xff, 0xec, 0x05, 0x34, 0x05, 0x95, 0x00, 0x37, + 0x00, 0xa2, 0x40, 0x10, 0x9a, 0x35, 0x01, 0x95, 0x07, 0xa5, 0x07, 0x02, + 0x83, 0x29, 0x93, 0x29, 0xa3, 0x29, 0x03, 0x30, 0xb8, 0xff, 0xe8, 0xb3, + 0x0c, 0x0f, 0x48, 0x2f, 0xb8, 0xff, 0xd8, 0x40, 0x5b, 0x0c, 0x0f, 0x48, + 0x2a, 0x36, 0x3a, 0x36, 0x9a, 0x36, 0xaa, 0x36, 0x04, 0x06, 0x8f, 0x05, + 0x9f, 0x05, 0xaf, 0x05, 0x03, 0x05, 0x05, 0x33, 0x27, 0x1a, 0x5a, 0x00, + 0x1b, 0x10, 0x1b, 0x40, 0x1b, 0x03, 0x1b, 0x33, 0x5a, 0x00, 0x0e, 0x40, + 0x0e, 0x50, 0x0e, 0x70, 0x0e, 0xa0, 0x0e, 0xb0, 0x0e, 0x06, 0x30, 0x0e, + 0x50, 0x0e, 0x90, 0x0e, 0xf0, 0x0e, 0x04, 0xe0, 0x0e, 0x01, 0x8f, 0x0e, + 0x9f, 0x0e, 0xaf, 0x0e, 0x03, 0x00, 0x0e, 0x30, 0x0e, 0x02, 0x07, 0x0e, + 0x27, 0x14, 0x5f, 0x2d, 0x04, 0x21, 0x03, 0x1a, 0x12, 0x09, 0x5f, 0x00, + 0x06, 0x06, 0x00, 0x13, 0x00, 0x3f, 0x32, 0x2f, 0x10, 0xed, 0x3f, 0x3f, + 0x3f, 0xed, 0x32, 0x01, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x72, 0xed, + 0x2f, 0x5d, 0xed, 0x32, 0x11, 0x39, 0x2f, 0x5d, 0x33, 0x31, 0x30, 0x00, + 0x5d, 0x2b, 0x01, 0x2b, 0x00, 0x5d, 0x5d, 0x5d, 0x05, 0x22, 0x2e, 0x02, + 0x27, 0x37, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x11, 0x34, 0x2e, + 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x34, 0x2e, 0x02, + 0x27, 0x33, 0x1e, 0x03, 0x15, 0x33, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, + 0x15, 0x11, 0x14, 0x0e, 0x02, 0x03, 0xad, 0x38, 0x60, 0x4f, 0x3f, 0x18, + 0x7f, 0x25, 0x64, 0x3b, 0x40, 0x4e, 0x29, 0x0d, 0x27, 0x51, 0x7f, 0x57, + 0x5e, 0xa3, 0x79, 0x46, 0xbf, 0x01, 0x01, 0x01, 0x01, 0xb8, 0x01, 0x03, + 0x02, 0x01, 0x04, 0x22, 0x67, 0x82, 0x99, 0x56, 0x7c, 0xb1, 0x70, 0x35, + 0x1e, 0x56, 0x98, 0x14, 0x18, 0x28, 0x36, 0x1e, 0x73, 0x2d, 0x41, 0x3a, + 0x6b, 0x99, 0x5f, 0x01, 0x42, 0x6c, 0x9a, 0x62, 0x2e, 0x3e, 0x69, 0x8b, + 0x4d, 0xfc, 0x85, 0x04, 0x44, 0x25, 0x5c, 0x5a, 0x4c, 0x16, 0x16, 0x3f, + 0x45, 0x45, 0x1c, 0x3d, 0x65, 0x46, 0x27, 0x40, 0x85, 0xcc, 0x8b, 0xfe, + 0xa5, 0x82, 0xd0, 0x92, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8c, + 0xfe, 0x57, 0x03, 0xf2, 0x04, 0x4e, 0x00, 0x35, 0x00, 0x87, 0x40, 0x12, + 0x79, 0x34, 0x89, 0x34, 0x02, 0x5a, 0x34, 0x6a, 0x34, 0x02, 0x2b, 0x34, + 0x3b, 0x34, 0x4b, 0x34, 0x03, 0x2e, 0xb8, 0xff, 0xe8, 0x40, 0x4a, 0x09, + 0x0c, 0x48, 0x03, 0x2e, 0x13, 0x2e, 0x02, 0x03, 0x03, 0x18, 0x31, 0x46, + 0x40, 0xa0, 0x0c, 0x01, 0x60, 0x0c, 0xd0, 0x0c, 0x02, 0x1f, 0x0c, 0x01, + 0xaf, 0x0c, 0x01, 0x0c, 0x37, 0x80, 0x25, 0x18, 0x46, 0xa0, 0x19, 0xb0, + 0x19, 0x02, 0x00, 0x19, 0xc0, 0x19, 0xd0, 0x19, 0x03, 0x00, 0x19, 0x10, + 0x19, 0x20, 0x19, 0x40, 0x19, 0xe0, 0x19, 0xf0, 0x19, 0x06, 0x07, 0x19, + 0x25, 0x12, 0x50, 0x2b, 0x10, 0x1f, 0x0f, 0x18, 0x15, 0x07, 0x50, 0x00, + 0x1b, 0x00, 0x3f, 0xed, 0x3f, 0x3f, 0x3f, 0xed, 0x32, 0x01, 0x2f, 0x5e, + 0x5d, 0x71, 0x72, 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x71, 0x72, + 0x1a, 0xed, 0x11, 0x39, 0x2f, 0x31, 0x30, 0x5d, 0x2b, 0x00, 0x5d, 0x5d, + 0x5d, 0x01, 0x22, 0x26, 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, + 0x35, 0x11, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x23, + 0x11, 0x34, 0x2e, 0x02, 0x27, 0x33, 0x1e, 0x03, 0x15, 0x33, 0x3e, 0x03, + 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, 0x14, 0x0e, 0x02, 0x03, 0x01, 0x22, + 0x41, 0x1c, 0x0d, 0x24, 0x0d, 0x26, 0x31, 0x1c, 0x0a, 0x17, 0x34, 0x55, + 0x3f, 0x40, 0x67, 0x49, 0x28, 0xb4, 0x01, 0x02, 0x02, 0x01, 0xaa, 0x01, + 0x02, 0x03, 0x02, 0x03, 0x1a, 0x3e, 0x52, 0x6a, 0x46, 0x5a, 0x82, 0x54, + 0x27, 0x16, 0x36, 0x5d, 0xfe, 0x57, 0x04, 0x05, 0x8b, 0x02, 0x04, 0x14, + 0x2b, 0x43, 0x2e, 0x03, 0x19, 0x4f, 0x6a, 0x41, 0x1b, 0x2d, 0x55, 0x7d, + 0x51, 0xfd, 0x8d, 0x03, 0x53, 0x22, 0x4b, 0x43, 0x30, 0x07, 0x05, 0x2c, + 0x39, 0x3b, 0x14, 0x2f, 0x4c, 0x35, 0x1d, 0x2c, 0x5c, 0x91, 0x64, 0xfc, + 0xa9, 0x3e, 0x6a, 0x4e, 0x2d, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x61, + 0xff, 0xec, 0x05, 0xd7, 0x06, 0xa1, 0x12, 0x26, 0x00, 0x32, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4d, 0x01, 0xd6, 0x01, 0x4e, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x28, 0x05, 0x26, 0x02, 0x00, 0x29, 0x28, 0x0a, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x05, 0x53, 0x12, 0x26, 0x00, 0x52, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4d, 0x00, 0xf4, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x23, 0x11, 0x26, 0x02, 0x00, 0x24, 0x23, 0x08, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x61, + 0xff, 0xec, 0x05, 0xd7, 0x06, 0xf3, 0x12, 0x26, 0x00, 0x32, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa8, 0x01, 0xe7, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x28, 0x05, 0x26, 0x02, 0x00, 0x2d, 0x35, 0x0a, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x05, 0xe6, 0x12, 0x26, 0x00, 0x52, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4e, 0x01, 0x10, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x02, 0x23, 0x11, 0x26, 0x02, 0x00, 0x28, 0x34, 0x08, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x61, + 0xff, 0xec, 0x05, 0xd7, 0x06, 0xf1, 0x12, 0x26, 0x00, 0x32, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa7, 0x01, 0xe2, 0x00, 0x00, 0x00, 0x17, 0x40, 0x0d, + 0x03, 0x02, 0x28, 0x05, 0x26, 0x03, 0x02, 0x5d, 0x28, 0x31, 0x0a, 0x00, + 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x56, 0xff, 0xec, 0x04, 0x22, 0x05, 0xe4, 0x12, 0x26, + 0x00, 0x52, 0x00, 0x00, 0x11, 0x07, 0x01, 0x53, 0x01, 0x09, 0x00, 0x00, + 0x00, 0x17, 0x40, 0x0d, 0x03, 0x02, 0x23, 0x11, 0x26, 0x03, 0x02, 0x67, + 0x23, 0x2c, 0x08, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, + 0x35, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x61, 0xff, 0xf6, 0x07, 0xa6, + 0x05, 0x8c, 0x00, 0x1e, 0x00, 0x31, 0x00, 0xaa, 0x40, 0x77, 0x89, 0x0d, + 0x01, 0x66, 0x0d, 0x01, 0x69, 0x0c, 0x01, 0x56, 0x30, 0x01, 0x59, 0x2a, + 0x01, 0x54, 0x08, 0x84, 0x08, 0x02, 0x04, 0x2f, 0x14, 0x2f, 0x54, 0x2f, + 0x03, 0x0b, 0x2b, 0x1b, 0x2b, 0x5b, 0x2b, 0x03, 0x00, 0x14, 0x18, 0x1c, + 0x5a, 0x22, 0x00, 0x1a, 0x20, 0x1a, 0x30, 0x1a, 0x03, 0x1a, 0x16, 0x1a, + 0x16, 0x1d, 0x0f, 0x22, 0x2f, 0x22, 0x4f, 0x22, 0x03, 0x3f, 0x22, 0x5f, + 0x22, 0x7f, 0x22, 0x9f, 0x22, 0xcf, 0x22, 0xef, 0x22, 0x06, 0x22, 0x40, + 0x1f, 0x26, 0x48, 0x22, 0x10, 0x1d, 0x20, 0x1d, 0x02, 0x1d, 0x2d, 0x5b, + 0x20, 0x0a, 0x01, 0x0f, 0x0a, 0x1f, 0x0a, 0x02, 0x0a, 0x7f, 0x33, 0x01, + 0x1b, 0x5f, 0x18, 0x18, 0x15, 0x1d, 0x5f, 0x1e, 0x12, 0x16, 0x5f, 0x15, + 0x03, 0x28, 0x5f, 0x0f, 0x04, 0x1f, 0x5f, 0x05, 0x13, 0x00, 0x3f, 0xed, + 0x3f, 0xed, 0x3f, 0xed, 0x3f, 0xed, 0x11, 0x39, 0x2f, 0xed, 0x01, 0x5d, + 0x2f, 0x5d, 0x5d, 0xed, 0x2f, 0x5d, 0x2f, 0x2b, 0x5d, 0x71, 0x12, 0x39, + 0x39, 0x2f, 0x2f, 0x5d, 0x10, 0xed, 0x32, 0x39, 0x39, 0x31, 0x30, 0x00, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x5d, 0x21, 0x0e, + 0x03, 0x23, 0x22, 0x24, 0x26, 0x02, 0x35, 0x34, 0x12, 0x36, 0x24, 0x33, + 0x32, 0x1e, 0x02, 0x17, 0x21, 0x15, 0x21, 0x11, 0x21, 0x15, 0x21, 0x11, + 0x21, 0x15, 0x25, 0x32, 0x36, 0x37, 0x11, 0x2e, 0x02, 0x22, 0x23, 0x22, + 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x03, 0xe7, 0x14, 0x33, 0x39, 0x39, + 0x19, 0xa9, 0xfe, 0xfd, 0xaf, 0x59, 0x5e, 0xb2, 0x01, 0x02, 0xa4, 0x1a, + 0x3a, 0x39, 0x34, 0x13, 0x03, 0x92, 0xfc, 0xdd, 0x02, 0xe7, 0xfd, 0x19, + 0x03, 0x4c, 0xfb, 0x6f, 0x20, 0x4c, 0x1a, 0x0b, 0x20, 0x25, 0x25, 0x0f, + 0x7d, 0xbb, 0x7d, 0x3f, 0x40, 0x7e, 0xba, 0x03, 0x03, 0x03, 0x01, 0x6a, + 0xbf, 0x01, 0x09, 0x9f, 0xa5, 0x01, 0x07, 0xb7, 0x62, 0x02, 0x03, 0x04, + 0x02, 0x9c, 0xfe, 0x3c, 0x9a, 0xfe, 0x15, 0x9c, 0x91, 0x02, 0x02, 0x04, + 0x57, 0x01, 0x02, 0x01, 0x4a, 0x8e, 0xce, 0x83, 0x81, 0xd1, 0x94, 0x50, + 0x00, 0x03, 0x00, 0x56, 0xff, 0xec, 0x07, 0x32, 0x04, 0x4e, 0x00, 0x27, + 0x00, 0x3b, 0x00, 0x44, 0x00, 0xbe, 0x40, 0x83, 0x84, 0x07, 0x01, 0x66, + 0x07, 0x76, 0x07, 0x02, 0x61, 0x02, 0x01, 0x55, 0x02, 0x01, 0x5a, 0x42, + 0x6a, 0x42, 0x02, 0x6c, 0x3d, 0x01, 0x5a, 0x3d, 0x01, 0x45, 0x3a, 0x55, + 0x3a, 0x65, 0x3a, 0x03, 0x45, 0x34, 0x55, 0x34, 0x65, 0x34, 0x03, 0x4a, + 0x30, 0x5a, 0x30, 0x6a, 0x30, 0x03, 0x4a, 0x2a, 0x5a, 0x2a, 0x6a, 0x2a, + 0x03, 0x08, 0x49, 0x09, 0x09, 0x26, 0x47, 0x40, 0x1f, 0x3c, 0x2f, 0x3c, + 0x3f, 0x3c, 0x03, 0x90, 0x3c, 0x01, 0x3c, 0x46, 0x80, 0x11, 0x1e, 0x44, + 0x00, 0x47, 0x90, 0x28, 0x01, 0x20, 0x28, 0x01, 0x28, 0x32, 0x47, 0x19, + 0x00, 0x50, 0x44, 0x44, 0x05, 0x3f, 0x50, 0x21, 0x10, 0x74, 0x1e, 0x84, + 0x1e, 0x02, 0x7b, 0x11, 0x8b, 0x11, 0x02, 0x1e, 0x11, 0x14, 0x2d, 0x50, + 0x1c, 0x10, 0x37, 0x50, 0x14, 0x16, 0x05, 0x50, 0x0e, 0xef, 0x08, 0x01, + 0x80, 0x08, 0x01, 0x08, 0x08, 0x0e, 0x16, 0x00, 0x3f, 0x33, 0x2f, 0x5d, + 0x5d, 0x10, 0xed, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x39, 0x5d, 0x5d, + 0x3f, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x2f, 0xed, 0x2f, 0x5d, 0x72, + 0xed, 0x32, 0x39, 0x39, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x32, + 0x2f, 0xed, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, 0x37, + 0x17, 0x0e, 0x03, 0x23, 0x22, 0x26, 0x27, 0x0e, 0x01, 0x23, 0x22, 0x2e, + 0x02, 0x35, 0x10, 0x12, 0x33, 0x20, 0x17, 0x3e, 0x01, 0x33, 0x32, 0x1e, + 0x02, 0x1d, 0x01, 0x25, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, + 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x25, 0x2e, 0x01, 0x23, 0x22, + 0x0e, 0x02, 0x07, 0x04, 0x2e, 0x23, 0x49, 0x72, 0x50, 0x75, 0x8d, 0x19, + 0x9e, 0x11, 0x3d, 0x66, 0x99, 0x6c, 0x89, 0xc6, 0x3d, 0x3f, 0xc9, 0x89, + 0x71, 0xb5, 0x7f, 0x44, 0xfd, 0xf2, 0x01, 0x19, 0x75, 0x43, 0xc8, 0x77, + 0x88, 0xb7, 0x6f, 0x2f, 0xfc, 0x3f, 0x2a, 0x4d, 0x6e, 0x44, 0x45, 0x72, + 0x51, 0x2d, 0x2f, 0x51, 0x6c, 0x3e, 0x45, 0x72, 0x51, 0x2c, 0x03, 0x07, + 0x0f, 0x90, 0x87, 0x2d, 0x63, 0x54, 0x3a, 0x04, 0x01, 0xf7, 0x55, 0x8f, + 0x67, 0x39, 0x5e, 0x48, 0x2d, 0x2d, 0x5b, 0x49, 0x2f, 0x5b, 0x5c, 0x5d, + 0x5a, 0x44, 0x8c, 0xd3, 0x8f, 0x01, 0x17, 0x01, 0x19, 0xb1, 0x5e, 0x53, + 0x58, 0x9b, 0xd2, 0x7a, 0x18, 0x27, 0x7e, 0xa4, 0x62, 0x27, 0x29, 0x63, + 0xa4, 0x7b, 0x7e, 0xa5, 0x62, 0x28, 0x27, 0x62, 0xa6, 0xe1, 0xab, 0x9d, + 0x1d, 0x4a, 0x7f, 0x62, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x68, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x35, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, + 0x01, 0xe1, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, 0x1f, 0x05, 0x26, 0x02, + 0xb8, 0xff, 0xf5, 0xb4, 0x1f, 0x22, 0x04, 0x11, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x88, 0x00, 0x00, 0x02, 0xa6, + 0x05, 0xe4, 0x12, 0x26, 0x00, 0x55, 0x00, 0x00, 0x11, 0x07, 0x00, 0x74, + 0x00, 0xb6, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x20, 0x11, 0x26, + 0x01, 0x4a, 0x20, 0x23, 0x06, 0x15, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, 0xfe, 0x4e, 0x05, 0x68, + 0x05, 0x81, 0x12, 0x26, 0x00, 0x35, 0x00, 0x00, 0x11, 0x07, 0x02, 0x99, + 0x02, 0x05, 0x00, 0x00, 0x00, 0x0e, 0xb9, 0x00, 0x02, 0xff, 0xe1, 0xb4, + 0x23, 0x1f, 0x04, 0x11, 0x25, 0x01, 0x2b, 0x35, 0xff, 0xff, 0x00, 0x81, + 0xfe, 0x4e, 0x02, 0x88, 0x04, 0x4e, 0x12, 0x26, 0x00, 0x55, 0x00, 0x00, + 0x11, 0x06, 0x02, 0x99, 0x02, 0x00, 0x00, 0x0e, 0xb9, 0x00, 0x01, 0xff, + 0x5e, 0xb4, 0x24, 0x20, 0x06, 0x15, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x68, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x35, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa4, 0x01, 0x66, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x02, 0x1f, 0x05, 0x26, 0x02, 0xb8, 0xff, 0xa9, 0xb4, + 0x21, 0x27, 0x04, 0x11, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x38, 0x00, 0x00, 0x02, 0xce, 0x05, 0xd3, 0x12, 0x26, + 0x00, 0x55, 0x00, 0x00, 0x11, 0x06, 0x01, 0x4c, 0x38, 0x00, 0x00, 0x15, + 0xb4, 0x01, 0x20, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xfb, 0xb4, 0x22, 0x28, + 0x06, 0x15, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x5d, 0xff, 0xec, 0x04, 0xf8, 0x07, 0x2d, 0x12, 0x26, + 0x00, 0x36, 0x00, 0x00, 0x11, 0x07, 0x00, 0x74, 0x01, 0xea, 0x01, 0x49, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x40, 0x05, 0x26, 0x01, 0x5b, 0x40, 0x43, + 0x08, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x39, 0xff, 0xec, 0x03, 0xb6, 0x05, 0xe4, 0x12, 0x26, + 0x00, 0x56, 0x00, 0x00, 0x11, 0x07, 0x00, 0x74, 0x01, 0x39, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x38, 0x11, 0x26, 0x01, 0x5d, 0x38, 0x3b, + 0x0a, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x5d, 0xff, 0xec, 0x04, 0xf8, 0x07, 0x1a, 0x12, 0x26, + 0x00, 0x36, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4b, 0x01, 0x72, 0x01, 0x47, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x41, 0x05, 0x26, 0x01, 0x12, 0x46, 0x40, + 0x08, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x39, 0xff, 0xec, 0x03, 0xb6, 0x05, 0xd3, 0x12, 0x26, + 0x00, 0x56, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4b, 0x00, 0xac, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x39, 0x11, 0x26, 0x01, 0x00, 0x3e, 0x38, + 0x0a, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x5d, 0xfe, 0x4e, 0x04, 0xf8, 0x05, 0x96, 0x12, 0x26, + 0x00, 0x36, 0x00, 0x00, 0x11, 0x07, 0x00, 0x78, 0x01, 0xa6, 0x00, 0x00, + 0x00, 0x0b, 0xb6, 0x01, 0x28, 0x48, 0x40, 0x08, 0x00, 0x25, 0x01, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x39, 0xfe, 0x4e, 0x03, 0xb6, + 0x04, 0x4b, 0x12, 0x26, 0x00, 0x56, 0x00, 0x00, 0x11, 0x07, 0x00, 0x78, + 0x00, 0xda, 0x00, 0x00, 0x00, 0x0b, 0xb6, 0x01, 0x0f, 0x40, 0x38, 0x0a, + 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x5d, + 0xff, 0xec, 0x04, 0xf8, 0x06, 0xfe, 0x12, 0x26, 0x00, 0x36, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa4, 0x01, 0x73, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x40, 0x05, 0x26, 0x01, 0x13, 0x42, 0x48, 0x08, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x39, + 0xff, 0xec, 0x03, 0xb6, 0x05, 0xd3, 0x12, 0x26, 0x00, 0x56, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4c, 0x00, 0xad, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x38, 0x11, 0x26, 0x01, 0x00, 0x3a, 0x40, 0x0a, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x2e, + 0xfe, 0x4e, 0x04, 0xb4, 0x05, 0x81, 0x10, 0x27, 0x00, 0x78, 0x01, 0x5b, + 0x00, 0x00, 0x12, 0x06, 0x00, 0x37, 0x00, 0x00, 0xff, 0xff, 0x00, 0x1f, + 0xfe, 0x4e, 0x02, 0x2a, 0x05, 0x2c, 0x10, 0x26, 0x00, 0x78, 0x47, 0x00, + 0x10, 0x06, 0x00, 0x57, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x2e, + 0x00, 0x00, 0x04, 0xb4, 0x06, 0xfe, 0x12, 0x26, 0x00, 0x37, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa4, 0x01, 0x21, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x08, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xfb, 0xb4, 0x0a, 0x10, 0x04, 0x06, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x1f, + 0xff, 0xf0, 0x03, 0x11, 0x05, 0xcc, 0x10, 0x26, 0x00, 0x57, 0x00, 0x00, + 0x11, 0x07, 0x02, 0x9f, 0x01, 0xcc, 0x00, 0x4b, 0x00, 0x11, 0xb1, 0x01, + 0x01, 0xb8, 0x01, 0x88, 0xb4, 0x1b, 0x17, 0x07, 0x00, 0x25, 0x01, 0x2b, + 0x35, 0x00, 0x35, 0x00, 0x00, 0x01, 0x00, 0x2e, 0x00, 0x00, 0x04, 0xb4, + 0x05, 0x81, 0x00, 0x0f, 0x00, 0x65, 0x40, 0x3e, 0x00, 0x11, 0x10, 0x11, + 0x20, 0x11, 0x03, 0x09, 0x03, 0x02, 0x05, 0x0f, 0x0e, 0x06, 0x0c, 0x05, + 0x0e, 0x09, 0x06, 0x7f, 0x0c, 0xaf, 0x0c, 0xbf, 0x0c, 0x03, 0x2f, 0x0c, + 0x8f, 0x0c, 0x02, 0x0c, 0x40, 0x17, 0x1c, 0x48, 0x0c, 0x01, 0x05, 0x5a, + 0x0a, 0x10, 0x06, 0x20, 0x06, 0x02, 0x06, 0x00, 0x0c, 0x5f, 0x0d, 0x04, + 0x08, 0x5f, 0x01, 0x09, 0x09, 0x05, 0x0d, 0x03, 0x05, 0x12, 0x00, 0x3f, + 0x3f, 0x12, 0x39, 0x2f, 0x33, 0xed, 0x32, 0x10, 0xed, 0x32, 0x01, 0x2f, + 0x5d, 0x33, 0xfd, 0x32, 0xcc, 0x2b, 0x5d, 0x71, 0x11, 0x39, 0x2b, 0x01, + 0x18, 0x10, 0x4d, 0xe4, 0x11, 0x39, 0x5f, 0x5e, 0x5d, 0x31, 0x30, 0x01, + 0x11, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x21, 0x35, 0x21, 0x11, 0x21, + 0x35, 0x21, 0x15, 0x02, 0xd0, 0x01, 0x19, 0xfe, 0xe7, 0xbe, 0xfe, 0xe9, + 0x01, 0x17, 0xfe, 0x1c, 0x04, 0x86, 0x04, 0xe5, 0xfe, 0x3c, 0x9a, 0xfd, + 0x79, 0x02, 0x87, 0x9a, 0x01, 0xc4, 0x9c, 0x9c, 0x00, 0x01, 0x00, 0x1f, + 0xff, 0xf0, 0x02, 0x2a, 0x05, 0x2c, 0x00, 0x1e, 0x00, 0x8c, 0x40, 0x5b, + 0x28, 0x1e, 0x01, 0x28, 0x1d, 0x01, 0x28, 0x1a, 0x01, 0x28, 0x19, 0x01, + 0x0c, 0x20, 0x09, 0x0f, 0x48, 0x9c, 0x0c, 0xac, 0x0c, 0x02, 0x0c, 0x28, + 0x09, 0x0e, 0x48, 0x14, 0x0f, 0x0f, 0x0d, 0x1d, 0x19, 0x6f, 0x07, 0x7f, + 0x07, 0x02, 0x07, 0x18, 0x1c, 0x07, 0x03, 0x01, 0x46, 0x15, 0x11, 0x8f, + 0x0d, 0x01, 0x00, 0x0d, 0x10, 0x0d, 0x20, 0x0d, 0x03, 0x07, 0x0d, 0x80, + 0x20, 0x01, 0x2f, 0x20, 0x01, 0x1b, 0x13, 0x50, 0x14, 0x00, 0x0f, 0x50, + 0x1c, 0x7f, 0x10, 0xbf, 0x10, 0xcf, 0x10, 0x03, 0x10, 0x10, 0x04, 0x18, + 0x16, 0x14, 0x0f, 0x04, 0x50, 0x0b, 0x16, 0x00, 0x3f, 0xed, 0x3f, 0xce, + 0x33, 0x12, 0x39, 0x2f, 0x5d, 0x33, 0xed, 0x32, 0x10, 0xed, 0x32, 0x01, + 0x5d, 0x5d, 0x2f, 0x5e, 0x5d, 0x71, 0x33, 0x33, 0xed, 0x17, 0x32, 0x2f, + 0x5d, 0x33, 0x33, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x00, 0x2b, 0x5d, + 0x01, 0x2b, 0x71, 0x71, 0x71, 0x71, 0x01, 0x15, 0x14, 0x16, 0x33, 0x32, + 0x36, 0x37, 0x15, 0x0e, 0x01, 0x23, 0x22, 0x35, 0x11, 0x23, 0x35, 0x33, + 0x11, 0x23, 0x35, 0x33, 0x37, 0x33, 0x15, 0x33, 0x15, 0x23, 0x11, 0x33, + 0x15, 0x01, 0x50, 0x33, 0x3f, 0x1a, 0x31, 0x1d, 0x29, 0x55, 0x38, 0xd8, + 0x7d, 0x7d, 0x7d, 0x84, 0x35, 0x78, 0xc8, 0xc8, 0xc8, 0x02, 0x04, 0xf8, + 0x4e, 0x3f, 0x08, 0x06, 0x85, 0x0b, 0x0d, 0xf5, 0x01, 0x1f, 0x83, 0x01, + 0x30, 0x83, 0xf2, 0xf2, 0x83, 0xfe, 0xd0, 0x83, 0xff, 0xff, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x07, 0x06, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa6, 0x01, 0x94, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x1a, 0x05, 0x26, 0x01, 0x00, 0x23, 0x31, 0x05, 0x14, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x85, + 0xff, 0xec, 0x03, 0xeb, 0x05, 0xbd, 0x12, 0x26, 0x00, 0x58, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x52, 0x00, 0xf6, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x26, 0x11, 0x26, 0x01, 0x0d, 0x2f, 0x3d, 0x24, 0x13, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x06, 0x9c, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4d, 0x01, 0x9f, 0x01, 0x49, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x1a, 0x05, 0x26, 0x01, 0x01, 0x1b, 0x1a, 0x05, 0x14, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x85, + 0xff, 0xec, 0x03, 0xeb, 0x05, 0x53, 0x12, 0x26, 0x00, 0x58, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4d, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x26, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xfe, 0xb4, 0x27, 0x26, 0x24, 0x13, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x06, 0xf3, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa8, 0x01, 0xae, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x1a, 0x05, 0x26, 0x01, 0x00, 0x1f, 0x27, 0x05, 0x14, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x85, + 0xff, 0xec, 0x03, 0xeb, 0x05, 0xe6, 0x12, 0x26, 0x00, 0x58, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4e, 0x01, 0x0b, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x26, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xfd, 0xb4, 0x2b, 0x37, 0x24, 0x13, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x9e, + 0xff, 0xec, 0x05, 0x29, 0x07, 0x3e, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x50, 0x01, 0xbf, 0x00, 0xcb, 0x00, 0x17, 0x40, 0x0d, + 0x02, 0x01, 0x1f, 0x05, 0x26, 0x02, 0x01, 0x00, 0x24, 0x1a, 0x05, 0x14, + 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x85, 0xff, 0xec, 0x03, 0xeb, 0x06, 0x73, 0x12, 0x26, + 0x00, 0x58, 0x00, 0x00, 0x11, 0x07, 0x01, 0x50, 0x01, 0x14, 0x00, 0x00, + 0x00, 0x17, 0x40, 0x0d, 0x02, 0x01, 0x2b, 0x11, 0x26, 0x02, 0x01, 0x01, + 0x30, 0x26, 0x24, 0x13, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x9e, 0xff, 0xec, 0x05, 0x29, + 0x06, 0xf1, 0x12, 0x26, 0x00, 0x38, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa7, + 0x01, 0x9d, 0x00, 0x00, 0x00, 0x17, 0x40, 0x0d, 0x02, 0x01, 0x1a, 0x05, + 0x26, 0x02, 0x01, 0x51, 0x1a, 0x23, 0x05, 0x14, 0x25, 0x01, 0x2b, 0x35, + 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x85, + 0xff, 0xec, 0x04, 0x1e, 0x05, 0xe4, 0x12, 0x26, 0x00, 0x58, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x53, 0x01, 0x05, 0x00, 0x00, 0x00, 0x17, 0x40, 0x0d, + 0x02, 0x01, 0x26, 0x11, 0x26, 0x02, 0x01, 0x64, 0x26, 0x2f, 0x24, 0x13, + 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x9e, 0xfe, 0x55, 0x05, 0x29, 0x05, 0x81, 0x10, 0x26, + 0x00, 0x38, 0x00, 0x00, 0x11, 0x07, 0x01, 0x51, 0x02, 0x20, 0x00, 0x00, + 0x00, 0x28, 0xb9, 0x00, 0x01, 0xfe, 0x67, 0xb5, 0x27, 0x27, 0x15, 0x15, + 0x25, 0x33, 0xb8, 0xff, 0xc0, 0xb3, 0x15, 0x15, 0x48, 0x33, 0xb8, 0xff, + 0xc0, 0xb3, 0x14, 0x14, 0x48, 0x33, 0xb8, 0xff, 0xc0, 0xb2, 0x13, 0x13, + 0x48, 0x2b, 0x2b, 0x2b, 0x2b, 0x35, 0x00, 0x00, 0xff, 0xff, 0x00, 0x85, + 0xfe, 0x55, 0x04, 0x05, 0x04, 0x3a, 0x12, 0x26, 0x00, 0x58, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x51, 0x02, 0x57, 0x00, 0x00, 0x00, 0x0d, 0xb9, 0x00, + 0x01, 0xff, 0xe2, 0xb4, 0x32, 0x32, 0x0e, 0x0e, 0x25, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x09, 0x00, 0x00, 0x07, 0x86, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x3a, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, 0x02, 0x79, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x30, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xfd, 0xb4, + 0x35, 0x2f, 0x0f, 0x2e, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0xff, 0xfd, 0x00, 0x00, 0x05, 0xcc, 0x05, 0xd3, 0x12, 0x26, + 0x00, 0x5a, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4b, 0x01, 0x94, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x2c, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xfb, 0xb4, + 0x31, 0x2b, 0x0f, 0x2a, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x2d, 0x00, 0x00, 0x05, 0x29, 0x06, 0xfe, 0x12, 0x26, + 0x00, 0x3c, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa3, 0x01, 0x5b, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x0a, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xfb, 0xb4, + 0x0f, 0x09, 0x04, 0x08, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x05, 0xfe, 0x57, 0x03, 0xfc, 0x05, 0xd3, 0x12, 0x26, + 0x00, 0x5c, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4b, 0x00, 0xb6, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x21, 0x11, 0x26, 0x01, 0x00, 0x26, 0x20, + 0x11, 0x1f, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x2d, 0x00, 0x00, 0x05, 0x29, 0x06, 0xb2, 0x12, 0x26, + 0x00, 0x3c, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa5, 0x01, 0x68, 0x00, 0x00, + 0x00, 0x17, 0x40, 0x0d, 0x02, 0x01, 0x09, 0x05, 0x26, 0x02, 0x01, 0x00, + 0x0d, 0x0b, 0x04, 0x08, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x41, 0x00, 0x00, 0x04, 0xa3, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x3d, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, + 0x01, 0xa0, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x0a, 0x05, 0x26, + 0x01, 0x4a, 0x0a, 0x0d, 0x01, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x31, 0x00, 0x00, 0x03, 0xb6, + 0x05, 0xe4, 0x12, 0x26, 0x00, 0x5d, 0x00, 0x00, 0x11, 0x07, 0x00, 0x74, + 0x01, 0x35, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x0a, 0x11, 0x26, + 0x01, 0x5d, 0x0a, 0x0d, 0x00, 0x08, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x41, 0x00, 0x00, 0x04, 0xa3, + 0x06, 0xf1, 0x12, 0x26, 0x00, 0x3d, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4f, + 0x01, 0x7c, 0x01, 0x25, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x0a, 0x05, 0x26, + 0x01, 0x00, 0x0a, 0x0c, 0x01, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x31, 0x00, 0x00, 0x03, 0xb6, + 0x05, 0xcc, 0x12, 0x26, 0x00, 0x5d, 0x00, 0x00, 0x11, 0x07, 0x01, 0x4f, + 0x00, 0xfd, 0x00, 0x00, 0x00, 0x0c, 0xb6, 0x01, 0x00, 0x0a, 0x0c, 0x00, + 0x08, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x41, + 0x00, 0x00, 0x04, 0xa3, 0x06, 0xfe, 0x12, 0x26, 0x00, 0x3d, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa4, 0x01, 0x38, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x0a, 0x05, 0x26, 0x01, 0x11, 0x0c, 0x12, 0x01, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x31, + 0x00, 0x00, 0x03, 0xb6, 0x05, 0xd3, 0x12, 0x26, 0x00, 0x5d, 0x00, 0x00, + 0x11, 0x07, 0x01, 0x4c, 0x00, 0x9c, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, + 0x0a, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xf4, 0xb4, 0x0c, 0x12, 0x00, 0x08, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x01, 0x00, 0x8a, + 0x00, 0x00, 0x02, 0x11, 0x05, 0xca, 0x00, 0x13, 0x00, 0x7d, 0xb9, 0x00, + 0x05, 0xff, 0xd8, 0xb3, 0x0d, 0x11, 0x48, 0x05, 0xb8, 0xff, 0xe0, 0x40, + 0x38, 0x08, 0x0c, 0x48, 0x6f, 0x0a, 0x01, 0x0a, 0x0a, 0x00, 0x46, 0x00, + 0x01, 0x10, 0x01, 0x30, 0x01, 0xf0, 0x01, 0x04, 0x08, 0x01, 0xff, 0x15, + 0x01, 0xe0, 0x15, 0x01, 0xdf, 0x15, 0x01, 0xb0, 0x15, 0xc0, 0x15, 0x02, + 0x9f, 0x15, 0x01, 0x70, 0x15, 0x80, 0x15, 0x02, 0x1f, 0x15, 0x01, 0x00, + 0x15, 0x01, 0xf0, 0x15, 0x01, 0xdf, 0x15, 0x01, 0x15, 0xb8, 0xff, 0xc0, + 0x40, 0x12, 0x22, 0x25, 0x48, 0x4f, 0x15, 0x01, 0x70, 0x15, 0x01, 0x1f, + 0x15, 0x01, 0x0e, 0x50, 0x07, 0x00, 0x00, 0x15, 0x00, 0x3f, 0x3f, 0xed, + 0x01, 0x5d, 0x5d, 0x71, 0x2b, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x2f, 0x5d, 0x31, 0x30, + 0x00, 0x2b, 0x2b, 0x21, 0x23, 0x11, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x16, + 0x17, 0x15, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x01, 0x3e, 0xb4, + 0x16, 0x3b, 0x66, 0x51, 0x20, 0x45, 0x1a, 0x11, 0x2d, 0x12, 0x28, 0x33, + 0x1d, 0x0b, 0x04, 0xb4, 0x3b, 0x65, 0x4b, 0x2b, 0x06, 0x06, 0x89, 0x03, + 0x05, 0x16, 0x29, 0x3c, 0x27, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc0, + 0xfe, 0x4e, 0x03, 0xc3, 0x05, 0xae, 0x00, 0x1b, 0x00, 0x94, 0x40, 0x6b, + 0x85, 0x06, 0x01, 0x7a, 0x12, 0x8a, 0x12, 0x02, 0x8b, 0x0f, 0x01, 0x59, + 0x0f, 0x69, 0x0f, 0x79, 0x0f, 0x03, 0x83, 0x0d, 0x01, 0x55, 0x0d, 0x65, + 0x0d, 0x75, 0x0d, 0x03, 0x36, 0x0d, 0x01, 0x26, 0x07, 0x01, 0x26, 0x08, + 0x01, 0x22, 0x16, 0x32, 0x16, 0x72, 0x16, 0x82, 0x16, 0x04, 0x15, 0x11, + 0x25, 0x11, 0x35, 0x11, 0x03, 0x1b, 0xd4, 0x08, 0xe4, 0x08, 0xf4, 0x08, + 0x03, 0x50, 0x08, 0x90, 0x08, 0x02, 0x26, 0x08, 0x36, 0x08, 0x46, 0x08, + 0x03, 0x08, 0x0a, 0x1b, 0x03, 0x0d, 0x0d, 0x11, 0x13, 0x03, 0x08, 0x5f, + 0x0e, 0x9f, 0x0e, 0x02, 0x0e, 0x0c, 0x10, 0x50, 0x09, 0x11, 0x11, 0x0d, + 0x03, 0x51, 0x0f, 0x18, 0x7f, 0x18, 0xaf, 0x18, 0x03, 0x18, 0x0d, 0x00, + 0x2f, 0x2f, 0x5d, 0xed, 0x12, 0x39, 0x2f, 0x33, 0xed, 0x32, 0x01, 0x2f, + 0x71, 0x33, 0x17, 0x33, 0x11, 0x17, 0x33, 0x71, 0x71, 0x71, 0x2f, 0x31, + 0x30, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x01, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x0f, 0x01, 0x33, + 0x07, 0x23, 0x03, 0x23, 0x13, 0x23, 0x37, 0x33, 0x37, 0x3e, 0x03, 0x33, + 0x32, 0x16, 0x17, 0x03, 0xa4, 0x11, 0x3e, 0x1f, 0x1f, 0x2e, 0x21, 0x18, + 0x09, 0x1a, 0xd3, 0x19, 0xd5, 0xfe, 0xb4, 0xfe, 0x98, 0x1b, 0x97, 0x1d, + 0x0c, 0x28, 0x47, 0x6d, 0x51, 0x20, 0x52, 0x23, 0x05, 0x20, 0x05, 0x0a, + 0x13, 0x28, 0x40, 0x2d, 0x89, 0x83, 0xfa, 0xd3, 0x05, 0x2d, 0x83, 0x98, + 0x3b, 0x66, 0x4c, 0x2b, 0x0a, 0x0a, 0x00, 0x00, 0x00, 0x04, 0x00, 0x04, + 0x00, 0x00, 0x05, 0x52, 0x07, 0x3e, 0x00, 0x1a, 0x00, 0x27, 0x00, 0x3d, + 0x00, 0x43, 0x01, 0x24, 0x40, 0x12, 0x7a, 0x40, 0x8a, 0x40, 0x02, 0x66, + 0x05, 0x76, 0x05, 0x86, 0x05, 0x03, 0x56, 0x06, 0x66, 0x06, 0x02, 0x19, + 0xb8, 0xff, 0xe8, 0x40, 0xb7, 0x09, 0x11, 0x48, 0x13, 0x18, 0x09, 0x11, + 0x48, 0x0c, 0x10, 0x0e, 0x11, 0x48, 0x0a, 0x0c, 0x01, 0x0c, 0x26, 0x09, + 0x0a, 0x20, 0x08, 0x27, 0x20, 0x07, 0x20, 0x28, 0x82, 0x00, 0x44, 0x42, + 0x84, 0x42, 0x02, 0x42, 0x3e, 0x32, 0x82, 0x11, 0xaf, 0x3e, 0xbf, 0x3e, + 0xcf, 0x3e, 0x03, 0x0f, 0x11, 0x2f, 0x11, 0x02, 0x90, 0x11, 0x01, 0x00, + 0x00, 0x20, 0x00, 0x02, 0x0f, 0x00, 0x9f, 0x00, 0x02, 0x00, 0x3e, 0x11, + 0x11, 0x3e, 0x00, 0x03, 0x06, 0x0b, 0x05, 0x20, 0x20, 0x0a, 0x07, 0x8b, + 0x07, 0x01, 0x5a, 0x07, 0x6a, 0x07, 0x7a, 0x07, 0x03, 0x07, 0x10, 0x06, + 0x20, 0x06, 0x30, 0x06, 0x03, 0x20, 0x06, 0x01, 0x06, 0x06, 0x45, 0x50, + 0x45, 0xb0, 0x45, 0x02, 0x30, 0x45, 0x60, 0x45, 0x90, 0x45, 0xc0, 0x45, + 0xf0, 0x45, 0x05, 0x2f, 0x45, 0x01, 0x84, 0x0a, 0x01, 0x55, 0x0a, 0x65, + 0x0a, 0x75, 0x0a, 0x03, 0x0a, 0x0b, 0x3e, 0x3e, 0x2d, 0x8d, 0x70, 0x16, + 0x80, 0x16, 0x02, 0x16, 0x16, 0x39, 0x7f, 0x40, 0x9f, 0x40, 0xaf, 0x40, + 0xbf, 0x40, 0x04, 0x40, 0x40, 0x09, 0x0d, 0x48, 0x40, 0x08, 0x09, 0x27, + 0x26, 0x26, 0x0a, 0x05, 0x0c, 0x20, 0x03, 0x80, 0x39, 0x01, 0x3f, 0x39, + 0x01, 0x00, 0x39, 0x01, 0x39, 0x07, 0x07, 0x0a, 0x00, 0x2f, 0x33, 0x2f, + 0x2f, 0x5d, 0x5d, 0x5d, 0x17, 0x33, 0x12, 0x39, 0x2f, 0x33, 0xcd, 0x32, + 0x2f, 0x2b, 0x5d, 0x12, 0x39, 0x2f, 0x5d, 0xed, 0x33, 0x2f, 0x01, 0x2f, + 0x33, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x11, 0x33, 0x2f, 0x5d, 0x71, 0x33, + 0x5d, 0x5d, 0x11, 0x12, 0x39, 0x11, 0x33, 0x11, 0x12, 0x17, 0x39, 0x2f, + 0x2f, 0x2f, 0x5d, 0x71, 0x5d, 0x71, 0x5d, 0x10, 0xed, 0x10, 0xcd, 0x5d, + 0x10, 0xed, 0x10, 0x87, 0xc0, 0xc0, 0x87, 0xc0, 0xc0, 0x01, 0x33, 0x31, + 0x30, 0x5d, 0x2b, 0x2b, 0x2b, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x06, 0x07, + 0x06, 0x07, 0x01, 0x23, 0x03, 0x21, 0x03, 0x23, 0x01, 0x26, 0x27, 0x2e, + 0x01, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x03, 0x2e, 0x03, + 0x27, 0x0e, 0x03, 0x07, 0x03, 0x21, 0x03, 0x34, 0x2e, 0x02, 0x23, 0x22, + 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x01, 0x17, 0x16, 0x17, 0x33, 0x32, 0x3e, + 0x02, 0x03, 0x35, 0x37, 0x33, 0x15, 0x05, 0x03, 0x9e, 0x26, 0x21, 0x10, + 0x12, 0x02, 0x1d, 0xc3, 0xa1, 0xfd, 0x7e, 0xa2, 0xc6, 0x02, 0x24, 0x15, + 0x12, 0x21, 0x26, 0x26, 0x42, 0x58, 0x32, 0x32, 0x58, 0x42, 0x26, 0x9e, + 0x10, 0x1d, 0x16, 0x0f, 0x01, 0x02, 0x0e, 0x17, 0x1d, 0x0f, 0xb4, 0x02, + 0x0f, 0x83, 0x15, 0x24, 0x31, 0x1c, 0x1d, 0x31, 0x24, 0x15, 0x15, 0x24, + 0x18, 0x15, 0x18, 0x09, 0x1c, 0x31, 0x24, 0x15, 0xf7, 0xd9, 0xcf, 0xfe, + 0xca, 0x05, 0x70, 0x2d, 0x4f, 0x1e, 0x0f, 0x0b, 0xfb, 0x44, 0x01, 0x73, + 0xfe, 0x8d, 0x04, 0xb9, 0x0c, 0x11, 0x1e, 0x4f, 0x2d, 0x2d, 0x4f, 0x3b, + 0x22, 0x22, 0x3b, 0x4f, 0xfd, 0xfe, 0x24, 0x4a, 0x3c, 0x29, 0x04, 0x04, + 0x29, 0x3e, 0x49, 0x24, 0xfe, 0x5f, 0x03, 0x77, 0x19, 0x2c, 0x21, 0x13, + 0x13, 0x21, 0x2c, 0x19, 0x1a, 0x2c, 0x23, 0x0a, 0x08, 0x01, 0x13, 0x23, + 0x2c, 0x01, 0x23, 0x10, 0xb5, 0x17, 0xae, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x73, 0x07, 0x3e, 0x12, 0x26, 0x00, 0x44, 0x00, 0x00, + 0x10, 0x27, 0x01, 0x50, 0x01, 0x14, 0xff, 0x55, 0x11, 0x07, 0x00, 0x74, + 0x01, 0x63, 0x01, 0x5a, 0x00, 0x23, 0x40, 0x0e, 0x03, 0x02, 0x65, 0x10, + 0x26, 0x04, 0x1a, 0x6a, 0x6d, 0x03, 0x24, 0x25, 0x03, 0x02, 0xb8, 0xff, + 0xd4, 0xb4, 0x4c, 0x42, 0x03, 0x24, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x2b, + 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x18, + 0x00, 0x00, 0x07, 0xa8, 0x06, 0xf0, 0x12, 0x26, 0x00, 0x86, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa2, 0x03, 0xe4, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x02, + 0x1b, 0x05, 0x26, 0x02, 0xb8, 0x01, 0x20, 0xb4, 0x1b, 0x1e, 0x04, 0x0e, + 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x42, + 0xff, 0xec, 0x06, 0xc2, 0x05, 0xe4, 0x12, 0x26, 0x00, 0xa6, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x74, 0x02, 0xaf, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x03, 0x59, 0x11, 0x26, 0x03, 0x49, 0x59, 0x5c, 0x19, 0x3d, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x47, + 0xff, 0xcb, 0x05, 0xf4, 0x06, 0xf0, 0x12, 0x26, 0x00, 0x98, 0x00, 0x00, + 0x11, 0x07, 0x02, 0xa2, 0x02, 0x4b, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x03, 0x34, 0x05, 0x26, 0x03, 0x49, 0x34, 0x37, 0x0a, 0x18, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x2c, + 0xff, 0xda, 0x04, 0xb4, 0x05, 0xe4, 0x12, 0x26, 0x00, 0xb8, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x74, 0x01, 0xb2, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x03, 0x2e, 0x11, 0x26, 0x03, 0x5e, 0x2e, 0x31, 0x08, 0x13, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x5d, + 0xfe, 0x4e, 0x04, 0xf8, 0x05, 0x96, 0x10, 0x27, 0x02, 0x99, 0x01, 0xd9, + 0x00, 0x00, 0x12, 0x06, 0x00, 0x36, 0x00, 0x00, 0xff, 0xff, 0x00, 0x39, + 0xfe, 0x4e, 0x03, 0xb6, 0x04, 0x4b, 0x10, 0x27, 0x02, 0x99, 0x01, 0x29, + 0x00, 0x00, 0x12, 0x06, 0x00, 0x56, 0x00, 0x00, 0xff, 0xff, 0x00, 0x2e, + 0xfe, 0x4e, 0x04, 0xb4, 0x05, 0x81, 0x10, 0x27, 0x02, 0x99, 0x01, 0x8b, + 0x00, 0x00, 0x12, 0x06, 0x00, 0x37, 0x00, 0x00, 0xff, 0xff, 0x00, 0x1f, + 0xfe, 0x4e, 0x02, 0x2a, 0x05, 0x2c, 0x10, 0x26, 0x02, 0x99, 0x73, 0x00, + 0x10, 0x06, 0x00, 0x57, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x04, 0xb1, 0x02, 0x96, 0x05, 0xd3, 0x00, 0x09, 0x00, 0x42, 0x40, 0x0e, + 0x76, 0x09, 0x86, 0x09, 0x02, 0x78, 0x08, 0x88, 0x08, 0x02, 0x80, 0x00, + 0x01, 0x00, 0xb8, 0xff, 0xc0, 0x40, 0x1b, 0x0b, 0x0f, 0x48, 0x00, 0xbf, + 0x06, 0x01, 0x06, 0x04, 0x8e, 0x40, 0x08, 0x94, 0x80, 0x06, 0x0f, 0x01, + 0x2f, 0x01, 0x3f, 0x01, 0x7f, 0x01, 0xef, 0x01, 0x05, 0x01, 0x00, 0x2f, + 0x5d, 0x33, 0x1a, 0xfd, 0x1a, 0xed, 0x01, 0x2f, 0x5d, 0xcc, 0x2b, 0x5d, + 0x31, 0x30, 0x5d, 0x5d, 0x01, 0x15, 0x23, 0x27, 0x23, 0x07, 0x23, 0x35, + 0x13, 0x33, 0x02, 0x96, 0x69, 0xdb, 0x02, 0xe8, 0x68, 0xea, 0xcc, 0x04, + 0xc5, 0x14, 0xa9, 0xa9, 0x14, 0x01, 0x0e, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x04, 0xb1, 0x02, 0x96, 0x05, 0xd3, 0x00, 0x09, 0x00, 0x42, 0x40, 0x0e, + 0x76, 0x00, 0x86, 0x00, 0x02, 0x78, 0x01, 0x88, 0x01, 0x02, 0x80, 0x08, + 0x01, 0x08, 0xb8, 0xff, 0xc0, 0x40, 0x1b, 0x0b, 0x0f, 0x48, 0x08, 0x40, + 0xbf, 0x02, 0x01, 0x02, 0x07, 0x03, 0x94, 0x80, 0x06, 0x8e, 0x0f, 0x01, + 0x2f, 0x01, 0x3f, 0x01, 0x7f, 0x01, 0xef, 0x01, 0x05, 0x01, 0x00, 0x2f, + 0x5d, 0xed, 0x1a, 0xed, 0x32, 0x01, 0x2f, 0x5d, 0x1a, 0xcc, 0x2b, 0x5d, + 0x31, 0x30, 0x5d, 0x5d, 0x01, 0x23, 0x03, 0x35, 0x33, 0x17, 0x33, 0x37, + 0x33, 0x15, 0x01, 0xb6, 0xcc, 0xea, 0x68, 0xe8, 0x02, 0xdb, 0x69, 0x04, + 0xb1, 0x01, 0x0e, 0x14, 0xa9, 0xa9, 0x14, 0x00, 0x00, 0x01, 0x00, 0x33, + 0x04, 0xd4, 0x02, 0x58, 0x05, 0x53, 0x00, 0x03, 0x00, 0x51, 0x40, 0x3b, + 0x04, 0x01, 0x01, 0xe4, 0x01, 0xf4, 0x01, 0x02, 0x01, 0xa4, 0x00, 0x01, + 0x5b, 0x00, 0x6b, 0x00, 0x02, 0x34, 0x00, 0x44, 0x00, 0x02, 0x00, 0x02, + 0x20, 0x12, 0x19, 0x48, 0x02, 0x8e, 0x01, 0x40, 0x1c, 0x21, 0x48, 0x2f, + 0x01, 0x01, 0x02, 0x0f, 0x01, 0x3f, 0x01, 0xaf, 0x01, 0xbf, 0x01, 0x04, + 0x01, 0x40, 0x16, 0x1a, 0x48, 0x01, 0x40, 0x0e, 0x11, 0x48, 0x01, 0x00, + 0x2f, 0x2b, 0x2b, 0x5d, 0x5f, 0x71, 0x2b, 0xed, 0x2b, 0x01, 0x2f, 0x5d, + 0x5d, 0x5d, 0x2f, 0x5d, 0x71, 0x31, 0x30, 0x01, 0x21, 0x35, 0x21, 0x02, + 0x58, 0xfd, 0xdb, 0x02, 0x25, 0x04, 0xd4, 0x7f, 0x00, 0x01, 0xff, 0xdd, + 0x04, 0xb1, 0x02, 0x77, 0x05, 0xe6, 0x00, 0x15, 0x00, 0x49, 0x40, 0x33, + 0x85, 0x0e, 0x01, 0x85, 0x08, 0x01, 0x1f, 0x11, 0x4f, 0x11, 0x7f, 0x11, + 0xaf, 0x11, 0xdf, 0x11, 0x05, 0xef, 0x11, 0x01, 0x11, 0x40, 0x05, 0x40, + 0x1d, 0x3c, 0x48, 0x05, 0x10, 0x50, 0x05, 0x60, 0x05, 0x02, 0x05, 0x95, + 0x80, 0x0b, 0x8f, 0x0f, 0x00, 0x2f, 0x00, 0x3f, 0x00, 0x7f, 0x00, 0xef, + 0x00, 0x05, 0x00, 0x00, 0x2f, 0x5d, 0xed, 0x1a, 0xed, 0x71, 0x32, 0x01, + 0x2f, 0x2b, 0x1a, 0xcc, 0x5d, 0x71, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x01, + 0x22, 0x2e, 0x02, 0x27, 0x33, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x37, + 0x33, 0x0e, 0x03, 0x01, 0x29, 0x4a, 0x74, 0x54, 0x32, 0x08, 0x75, 0x08, + 0x27, 0x38, 0x48, 0x2a, 0x2a, 0x47, 0x38, 0x26, 0x08, 0x75, 0x09, 0x32, + 0x53, 0x74, 0x04, 0xb1, 0x33, 0x55, 0x70, 0x3d, 0x2b, 0x3b, 0x24, 0x0f, + 0x10, 0x24, 0x3b, 0x2a, 0x3d, 0x70, 0x55, 0x33, 0x00, 0x01, 0x00, 0x9c, + 0x05, 0x20, 0x01, 0x50, 0x05, 0xcc, 0x00, 0x03, 0x00, 0x17, 0x40, 0x0c, + 0x03, 0x86, 0x00, 0x40, 0x0e, 0x11, 0x48, 0x00, 0x00, 0x53, 0x01, 0x00, + 0x00, 0x3f, 0xed, 0x01, 0x2f, 0x2b, 0xed, 0x31, 0x30, 0x13, 0x35, 0x33, + 0x15, 0x9c, 0xb4, 0x05, 0x20, 0xac, 0xac, 0x00, 0x00, 0x02, 0x00, 0x33, + 0x04, 0x90, 0x02, 0x17, 0x06, 0x73, 0x00, 0x13, 0x00, 0x27, 0x00, 0x59, + 0xb9, 0x00, 0x12, 0xff, 0xe8, 0x40, 0x0e, 0x09, 0x0e, 0x48, 0x0c, 0x18, + 0x09, 0x0e, 0x48, 0x08, 0x18, 0x09, 0x0e, 0x48, 0x02, 0xb8, 0xff, 0xe8, + 0x40, 0x2a, 0x09, 0x0e, 0x48, 0x14, 0x82, 0x40, 0x00, 0xc0, 0x1e, 0x82, + 0x5f, 0x0a, 0x01, 0x0a, 0x19, 0x8d, 0x0f, 0x0f, 0x1f, 0x0f, 0x02, 0x0f, + 0x23, 0x8d, 0x0f, 0x05, 0x2f, 0x05, 0x3f, 0x05, 0x4f, 0x05, 0x7f, 0x05, + 0x9f, 0x05, 0xbf, 0x05, 0xef, 0x05, 0x08, 0x05, 0x00, 0x2f, 0x5d, 0xed, + 0xdc, 0x5d, 0xed, 0x01, 0x2f, 0x5d, 0xed, 0x1a, 0xdc, 0x1a, 0xed, 0x31, + 0x30, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, + 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x2e, + 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, + 0x02, 0x02, 0x17, 0x26, 0x42, 0x58, 0x32, 0x32, 0x58, 0x42, 0x26, 0x26, + 0x42, 0x58, 0x32, 0x32, 0x58, 0x42, 0x26, 0x6c, 0x15, 0x24, 0x31, 0x1c, + 0x1d, 0x31, 0x24, 0x15, 0x15, 0x24, 0x31, 0x1d, 0x1c, 0x31, 0x24, 0x15, + 0x05, 0x82, 0x32, 0x58, 0x42, 0x26, 0x26, 0x42, 0x58, 0x32, 0x32, 0x58, + 0x41, 0x26, 0x26, 0x41, 0x58, 0x32, 0x1c, 0x31, 0x24, 0x15, 0x15, 0x24, + 0x31, 0x1c, 0x1d, 0x31, 0x26, 0x15, 0x15, 0x26, 0x31, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x50, 0xfe, 0x55, 0x01, 0xae, 0x00, 0x00, 0x00, 0x17, + 0x00, 0x4c, 0x40, 0x37, 0x0e, 0x18, 0x09, 0x0d, 0x48, 0x09, 0x18, 0x09, + 0x0d, 0x48, 0x05, 0x20, 0x09, 0x11, 0x48, 0x0c, 0x11, 0x84, 0x0f, 0x00, + 0x1f, 0x00, 0x02, 0x5f, 0x00, 0xbf, 0x00, 0x02, 0x00, 0x06, 0x0b, 0x40, + 0x07, 0x0a, 0x48, 0x0b, 0x14, 0x8d, 0x10, 0x03, 0x01, 0x20, 0x03, 0x50, + 0x03, 0x60, 0x03, 0x70, 0x03, 0xb0, 0x03, 0xc0, 0x03, 0x06, 0x03, 0x00, + 0x2f, 0x5d, 0x71, 0xed, 0x2f, 0x2b, 0x01, 0x2f, 0xcd, 0x5d, 0x71, 0xed, + 0x32, 0x31, 0x30, 0x2b, 0x2b, 0x2b, 0x01, 0x0e, 0x01, 0x23, 0x22, 0x26, + 0x35, 0x34, 0x3e, 0x02, 0x37, 0x33, 0x0e, 0x03, 0x15, 0x14, 0x16, 0x33, + 0x32, 0x36, 0x37, 0x01, 0xae, 0x1c, 0x47, 0x28, 0x69, 0x6a, 0x22, 0x30, + 0x35, 0x14, 0x85, 0x19, 0x34, 0x2b, 0x1b, 0x31, 0x2d, 0x1d, 0x3a, 0x1c, + 0xfe, 0x70, 0x0c, 0x0f, 0x66, 0x55, 0x2f, 0x4f, 0x3d, 0x2a, 0x0b, 0x0e, + 0x2d, 0x3b, 0x46, 0x27, 0x2a, 0x30, 0x0d, 0x0b, 0x00, 0x01, 0xff, 0xe9, + 0x04, 0xb1, 0x02, 0xb6, 0x05, 0xbd, 0x00, 0x1b, 0x02, 0x4d, 0xb9, 0x00, + 0x1a, 0xff, 0xe8, 0x40, 0xb6, 0x09, 0x11, 0x48, 0x0c, 0x18, 0x09, 0x11, + 0x48, 0x29, 0x1d, 0x01, 0x19, 0x1d, 0x29, 0x1d, 0x39, 0x1d, 0x59, 0x1d, + 0x69, 0x1d, 0x05, 0x1d, 0x40, 0xe5, 0xe8, 0x48, 0x1d, 0x40, 0xd9, 0xdc, + 0x48, 0x0b, 0x1d, 0x01, 0xd0, 0xa9, 0x1d, 0xb9, 0x1d, 0xc9, 0x1d, 0x03, + 0x9b, 0x1d, 0x01, 0x09, 0x1d, 0x39, 0x1d, 0x02, 0xb9, 0x1d, 0xc9, 0x1d, + 0xd9, 0x1d, 0x03, 0x1d, 0x40, 0xc3, 0xc6, 0x48, 0x9b, 0x1d, 0xab, 0x1d, + 0x02, 0x89, 0x1d, 0x01, 0x7b, 0x1d, 0x01, 0x49, 0x1d, 0x01, 0x89, 0x1d, + 0xb9, 0x1d, 0x02, 0x1d, 0x40, 0xab, 0xaf, 0x48, 0x06, 0x1d, 0x36, 0x1d, + 0x02, 0x9e, 0x99, 0x1d, 0x01, 0x7d, 0x1d, 0x8d, 0x1d, 0x02, 0x6f, 0x1d, + 0x01, 0x2d, 0x1d, 0x3d, 0x1d, 0x4d, 0x1d, 0x03, 0x1b, 0x1d, 0x01, 0x0d, + 0x1d, 0x01, 0xed, 0x1d, 0xfd, 0x1d, 0x02, 0x1d, 0x80, 0x88, 0x8b, 0x48, + 0x89, 0x1d, 0x99, 0x1d, 0x02, 0x5b, 0x1d, 0x6b, 0x1d, 0x7b, 0x1d, 0x03, + 0x1d, 0xc0, 0x7f, 0x82, 0x48, 0x09, 0x1d, 0x01, 0xf9, 0x1d, 0x01, 0xeb, + 0x1d, 0x01, 0xc9, 0x1d, 0xd9, 0x1d, 0x02, 0xab, 0x1d, 0xbb, 0x1d, 0x02, + 0x99, 0x1d, 0x01, 0x16, 0x1d, 0x26, 0x1d, 0x66, 0x1d, 0x76, 0x1d, 0x86, + 0x1d, 0x05, 0x04, 0x1d, 0x01, 0x6e, 0x1d, 0xb8, 0xff, 0x40, 0x40, 0x60, + 0x65, 0x6d, 0x48, 0x94, 0x1d, 0x01, 0x70, 0x1d, 0x80, 0x1d, 0x02, 0x52, + 0x1d, 0x62, 0x1d, 0x02, 0x40, 0x1d, 0x01, 0x12, 0x1d, 0x22, 0x1d, 0x32, + 0x1d, 0x03, 0x04, 0x1d, 0x01, 0xe4, 0x1d, 0xf4, 0x1d, 0x02, 0xd6, 0x1d, + 0x01, 0xc4, 0x1d, 0x01, 0xb0, 0x1d, 0x01, 0xa2, 0x1d, 0x01, 0x80, 0x1d, + 0x90, 0x1d, 0x02, 0x52, 0x1d, 0x62, 0x1d, 0x72, 0x1d, 0x03, 0x24, 0x1d, + 0x34, 0x1d, 0x44, 0x1d, 0x03, 0x06, 0x1d, 0x16, 0x1d, 0x02, 0xf6, 0x1d, + 0x01, 0xd2, 0x1d, 0xe2, 0x1d, 0x02, 0xc0, 0x1d, 0x01, 0x92, 0x1d, 0xa2, + 0x1d, 0xb2, 0x1d, 0x03, 0x64, 0x1d, 0x74, 0x1d, 0x84, 0x1d, 0x03, 0x1d, + 0xb8, 0xff, 0xc0, 0x40, 0x09, 0x3c, 0x40, 0x48, 0x02, 0x1d, 0x01, 0x3b, + 0x01, 0x1d, 0xb8, 0xff, 0x80, 0x40, 0x39, 0x35, 0x3a, 0x48, 0xa4, 0x1d, + 0xb4, 0x1d, 0x02, 0x90, 0x1d, 0x01, 0x64, 0x1d, 0x74, 0x1d, 0x84, 0x1d, + 0x03, 0x30, 0x1d, 0x40, 0x1d, 0x50, 0x1d, 0x03, 0x04, 0x1d, 0x14, 0x1d, + 0x24, 0x1d, 0x03, 0xd0, 0x1d, 0xe0, 0x1d, 0x02, 0xa4, 0x1d, 0xb4, 0x1d, + 0xc4, 0x1d, 0x03, 0x70, 0x1d, 0x80, 0x1d, 0x02, 0x94, 0x1d, 0xa4, 0x1d, + 0xe4, 0x1d, 0x03, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x1a, 0x1f, 0x48, + 0x80, 0x1d, 0x01, 0x54, 0x1d, 0x64, 0x1d, 0x74, 0x1d, 0x03, 0x1d, 0x40, + 0x07, 0x0a, 0x48, 0x17, 0xb8, 0xff, 0x80, 0x40, 0x09, 0x24, 0x27, 0x48, + 0x94, 0x17, 0xa4, 0x17, 0x02, 0x17, 0xb8, 0xff, 0x80, 0x40, 0x17, 0x1e, + 0x21, 0x48, 0x44, 0x17, 0x01, 0x30, 0x17, 0x01, 0x02, 0x00, 0x17, 0x10, + 0x17, 0x20, 0x17, 0x03, 0xd0, 0x17, 0xe0, 0x17, 0x02, 0x17, 0xb8, 0xff, + 0xc0, 0x40, 0x2b, 0x0d, 0x13, 0x48, 0x0f, 0x17, 0x01, 0x17, 0x09, 0x16, + 0x16, 0x05, 0x8f, 0x40, 0x0f, 0x0e, 0x1f, 0x0e, 0x02, 0xff, 0x0e, 0x01, + 0x0e, 0x40, 0x10, 0x13, 0x48, 0x0e, 0x80, 0x13, 0x8f, 0x08, 0x0f, 0x00, + 0x2f, 0x00, 0x3f, 0x00, 0x7f, 0x00, 0xef, 0x00, 0x05, 0x00, 0x00, 0x2f, + 0x5d, 0x32, 0xed, 0x1a, 0xdd, 0x2b, 0x5d, 0x71, 0x1a, 0xed, 0x33, 0x2f, + 0x01, 0x2f, 0xcc, 0x5d, 0x2b, 0x5d, 0x71, 0x5f, 0x71, 0x71, 0x2b, 0x71, + 0x2b, 0x2b, 0x5d, 0x5d, 0x2b, 0x5d, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x2b, 0x5f, 0x5e, 0x5d, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x71, 0x2b, 0x71, 0x71, 0x2b, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x2b, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x2b, 0x71, 0x72, 0x72, + 0x72, 0x5e, 0x5d, 0x2b, 0x2b, 0x5d, 0x71, 0x31, 0x30, 0x2b, 0x2b, 0x01, + 0x22, 0x2e, 0x02, 0x23, 0x22, 0x06, 0x07, 0x23, 0x3e, 0x03, 0x33, 0x32, + 0x1e, 0x02, 0x33, 0x32, 0x36, 0x37, 0x33, 0x0e, 0x03, 0x01, 0xec, 0x2a, + 0x54, 0x4e, 0x47, 0x1f, 0x37, 0x36, 0x09, 0x5b, 0x05, 0x14, 0x2d, 0x4a, + 0x3b, 0x2c, 0x54, 0x4e, 0x45, 0x1e, 0x36, 0x37, 0x08, 0x5c, 0x05, 0x14, + 0x2b, 0x4a, 0x04, 0xb1, 0x25, 0x2d, 0x25, 0x3e, 0x39, 0x2d, 0x5f, 0x4e, + 0x32, 0x25, 0x2d, 0x25, 0x3f, 0x38, 0x2c, 0x5f, 0x4e, 0x33, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x16, 0x04, 0xb1, 0x03, 0x19, 0x05, 0xe4, 0x00, 0x05, + 0x00, 0x0b, 0x00, 0x6f, 0x40, 0x52, 0xa4, 0x0a, 0x01, 0x66, 0x0a, 0x01, + 0x9a, 0x08, 0xaa, 0x08, 0x02, 0x62, 0x04, 0xa2, 0x04, 0x02, 0x62, 0x03, + 0x01, 0x9a, 0x02, 0xaa, 0x02, 0x02, 0x0a, 0x9f, 0x06, 0x01, 0x0f, 0x06, + 0x1f, 0x06, 0x7f, 0x06, 0xdf, 0x06, 0x04, 0x07, 0x06, 0x04, 0x40, 0x3f, + 0x00, 0x4f, 0x00, 0x8f, 0x00, 0xaf, 0x00, 0xbf, 0x00, 0xcf, 0x00, 0x06, + 0x00, 0x40, 0x1e, 0x29, 0x48, 0x00, 0x40, 0x17, 0x1a, 0x48, 0x00, 0x08, + 0x02, 0x95, 0x80, 0x06, 0x0f, 0x00, 0x2f, 0x00, 0x3f, 0x00, 0x7f, 0x00, + 0xef, 0x00, 0x05, 0x00, 0x00, 0x2f, 0x5d, 0x32, 0x1a, 0xed, 0x32, 0x01, + 0x2f, 0x2b, 0x2b, 0x5d, 0x1a, 0xcd, 0xdc, 0x5e, 0x5d, 0x71, 0xcd, 0x31, + 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x13, 0x35, 0x13, 0x33, 0x15, + 0x01, 0x33, 0x35, 0x13, 0x33, 0x15, 0x01, 0x16, 0xd9, 0xcf, 0xfe, 0xb6, + 0xfd, 0xd9, 0xcf, 0xfe, 0xb6, 0x04, 0xb1, 0x14, 0x01, 0x1f, 0x1d, 0xfe, + 0xea, 0x14, 0x01, 0x1f, 0x1d, 0xfe, 0xea, 0x00, 0x00, 0x01, 0x00, 0xcd, + 0x04, 0xc2, 0x01, 0xe1, 0x06, 0x07, 0x00, 0x05, 0x00, 0x40, 0x40, 0x2b, + 0x02, 0x10, 0x0c, 0x11, 0x48, 0x29, 0x02, 0x01, 0x0a, 0x05, 0x1a, 0x05, + 0x2a, 0x05, 0x03, 0x03, 0x2b, 0x03, 0x01, 0x03, 0x40, 0x00, 0x02, 0x80, + 0x84, 0x00, 0x94, 0x00, 0x02, 0x70, 0x00, 0x01, 0x02, 0x10, 0x00, 0x20, + 0x00, 0x40, 0x00, 0x60, 0x00, 0x04, 0x00, 0x00, 0x2f, 0x5d, 0x5f, 0x5d, + 0x5d, 0x1a, 0xcd, 0x01, 0x2f, 0x1a, 0xcd, 0x5d, 0x31, 0x30, 0x5f, 0x5d, + 0x5d, 0x2b, 0x13, 0x35, 0x13, 0x33, 0x15, 0x03, 0xcd, 0x45, 0xcf, 0xc9, + 0x04, 0xc2, 0x21, 0x01, 0x24, 0x25, 0xfe, 0xe0, 0x00, 0x03, 0x00, 0x1d, + 0x04, 0xb0, 0x02, 0x8b, 0x06, 0x41, 0x00, 0x05, 0x00, 0x09, 0x00, 0x0d, + 0x00, 0x53, 0x40, 0x35, 0x02, 0x10, 0x0b, 0x11, 0x48, 0x0a, 0x05, 0x1a, + 0x05, 0x2a, 0x05, 0x03, 0x2f, 0x04, 0x01, 0x04, 0x2f, 0x01, 0x01, 0x01, + 0x01, 0x06, 0xc0, 0x0d, 0xd0, 0x0d, 0x02, 0x0d, 0x0a, 0xc0, 0x09, 0xd0, + 0x09, 0x02, 0x09, 0x06, 0x0b, 0x07, 0x90, 0x06, 0x02, 0x00, 0x00, 0x0a, + 0xc0, 0x06, 0x01, 0x0f, 0x06, 0x3f, 0x06, 0x02, 0x06, 0x00, 0x2f, 0x5d, + 0x5d, 0x33, 0x33, 0x2f, 0xcd, 0x10, 0xed, 0x32, 0x01, 0x2f, 0xcd, 0x5d, + 0x2f, 0xcd, 0x5d, 0x12, 0x39, 0x2f, 0x71, 0xcd, 0x5d, 0x31, 0x30, 0x5d, + 0x2b, 0x13, 0x35, 0x13, 0x33, 0x15, 0x03, 0x25, 0x35, 0x33, 0x15, 0x21, + 0x35, 0x33, 0x15, 0xfa, 0x45, 0xbb, 0xb5, 0xfe, 0xd8, 0x96, 0x01, 0x42, + 0x96, 0x04, 0xb0, 0x21, 0x01, 0x70, 0x25, 0xfe, 0x94, 0x1f, 0xac, 0xac, + 0xac, 0xac, 0x00, 0x00, 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, + 0x05, 0x83, 0x10, 0x26, 0x00, 0x24, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, + 0xff, 0x6c, 0xff, 0x7c, 0x00, 0x5e, 0xb3, 0x02, 0x00, 0x18, 0x01, 0xb8, + 0xff, 0x0a, 0xb5, 0x18, 0x18, 0x05, 0x05, 0x25, 0x1c, 0xb8, 0xff, 0xc0, + 0xb3, 0x24, 0x24, 0x48, 0x1c, 0xb8, 0xff, 0xc0, 0xb3, 0x1e, 0x1e, 0x48, + 0x1c, 0xb8, 0xff, 0xc0, 0xb3, 0x18, 0x18, 0x48, 0x1c, 0xb8, 0xff, 0xc0, + 0xb3, 0x15, 0x15, 0x48, 0x1c, 0xb8, 0xff, 0xc0, 0xb3, 0x12, 0x12, 0x48, + 0x1c, 0xb8, 0xff, 0xc0, 0xb3, 0x0f, 0x0f, 0x48, 0x1c, 0xb8, 0xff, 0xc0, + 0x40, 0x0b, 0x0c, 0x0c, 0x48, 0x1c, 0x40, 0x0b, 0x0b, 0x48, 0x02, 0x17, + 0x03, 0x00, 0x3f, 0x35, 0x01, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x5d, 0x35, 0x00, 0x01, 0x00, 0xbb, 0x01, 0xbe, 0x01, 0x7e, + 0x02, 0x9a, 0x00, 0x03, 0x02, 0x0a, 0xb3, 0x03, 0x86, 0x00, 0x05, 0xb8, + 0xff, 0x80, 0x40, 0x0c, 0xe5, 0xe9, 0x48, 0x06, 0x05, 0x16, 0x05, 0x02, + 0xf6, 0x05, 0x01, 0x05, 0xb8, 0xff, 0x80, 0x40, 0x21, 0xde, 0xe1, 0x48, + 0x96, 0x05, 0xa6, 0x05, 0x02, 0x74, 0x05, 0x84, 0x05, 0x02, 0x56, 0x05, + 0x66, 0x05, 0x02, 0x44, 0x05, 0x01, 0x26, 0x05, 0x36, 0x05, 0x02, 0x02, + 0x05, 0x12, 0x05, 0x02, 0xd3, 0x05, 0xb8, 0xff, 0x80, 0x40, 0x16, 0xcf, + 0xd2, 0x48, 0xc6, 0x05, 0xd6, 0x05, 0x02, 0xb4, 0x05, 0x01, 0x96, 0x05, + 0xa6, 0x05, 0x02, 0x74, 0x05, 0x84, 0x05, 0x02, 0x05, 0xb8, 0xff, 0xc0, + 0x40, 0x24, 0xc3, 0xc7, 0x48, 0x04, 0x05, 0x14, 0x05, 0x02, 0xd6, 0x05, + 0xe6, 0x05, 0xf6, 0x05, 0x03, 0xc2, 0x05, 0x01, 0x94, 0x05, 0xa4, 0x05, + 0xb4, 0x05, 0x03, 0x76, 0x05, 0x86, 0x05, 0x02, 0x54, 0x05, 0x64, 0x05, + 0x02, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x22, 0xae, 0xb5, 0x48, 0xa4, 0x05, + 0xb4, 0x05, 0xc4, 0x05, 0x03, 0x46, 0x05, 0x56, 0x05, 0x76, 0x05, 0x86, + 0x05, 0x96, 0x05, 0x05, 0x34, 0x05, 0x01, 0x26, 0x05, 0x01, 0x04, 0x05, + 0x14, 0x05, 0x02, 0xa1, 0x05, 0xb8, 0xff, 0xc0, 0xb3, 0x9d, 0xa0, 0x48, + 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x25, 0x98, 0x9b, 0x48, 0x64, 0x05, 0x74, + 0x05, 0x02, 0x36, 0x05, 0x46, 0x05, 0x56, 0x05, 0x03, 0x24, 0x05, 0x01, + 0x06, 0x05, 0x16, 0x05, 0x02, 0xf4, 0x05, 0x01, 0xd6, 0x05, 0xe6, 0x05, + 0x02, 0xb2, 0x05, 0xc2, 0x05, 0x02, 0x05, 0xb8, 0xff, 0x80, 0x40, 0x1c, + 0x87, 0x8a, 0x48, 0x56, 0x05, 0x66, 0x05, 0x02, 0x24, 0x05, 0x34, 0x05, + 0x44, 0x05, 0x03, 0x02, 0x05, 0x12, 0x05, 0x02, 0xd4, 0x05, 0xe4, 0x05, + 0xf4, 0x05, 0x03, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x17, 0x77, 0x7c, 0x48, + 0x52, 0x05, 0x62, 0x05, 0x02, 0x01, 0x20, 0x05, 0x30, 0x05, 0x40, 0x05, + 0x03, 0x04, 0x05, 0x14, 0x05, 0x02, 0x70, 0x05, 0xb8, 0xff, 0x80, 0x40, + 0x09, 0x67, 0x6f, 0x48, 0x44, 0x05, 0x54, 0x05, 0x02, 0x05, 0xb8, 0xff, + 0xc0, 0xb3, 0x63, 0x66, 0x48, 0x05, 0xb8, 0xff, 0x80, 0xb3, 0x5c, 0x5f, + 0x48, 0x05, 0xb8, 0xff, 0xc0, 0xb3, 0x57, 0x5b, 0x48, 0x05, 0xb8, 0xff, + 0x80, 0x40, 0x15, 0x51, 0x56, 0x48, 0x24, 0x05, 0x34, 0x05, 0x44, 0x05, + 0x03, 0xe4, 0x05, 0x01, 0xb0, 0x05, 0xc0, 0x05, 0xd0, 0x05, 0x03, 0x05, + 0xb8, 0xff, 0xc0, 0x40, 0x10, 0x43, 0x46, 0x48, 0x30, 0x05, 0x01, 0x24, + 0x05, 0x01, 0x00, 0x05, 0x10, 0x05, 0x02, 0x3c, 0x05, 0xb8, 0xff, 0xc0, + 0x40, 0x0c, 0x38, 0x3b, 0x48, 0xbb, 0x05, 0x01, 0x80, 0x05, 0x90, 0x05, + 0x02, 0x05, 0xb8, 0xff, 0xc0, 0x40, 0x29, 0x2d, 0x30, 0x48, 0x0b, 0x05, + 0x01, 0xd0, 0x05, 0xe0, 0x05, 0x02, 0xa4, 0x05, 0xb4, 0x05, 0xc4, 0x05, + 0x03, 0x20, 0x05, 0x30, 0x05, 0x02, 0x02, 0x00, 0x05, 0x10, 0x05, 0x02, + 0xf0, 0x05, 0x01, 0x9f, 0x05, 0xaf, 0x05, 0x02, 0x00, 0x05, 0x01, 0x05, + 0xb8, 0xff, 0xc0, 0xb5, 0x0d, 0x11, 0x48, 0x00, 0x9b, 0x01, 0x00, 0x2f, + 0xed, 0x01, 0x2b, 0x5d, 0x5d, 0x5d, 0x71, 0x5f, 0x71, 0x71, 0x71, 0x72, + 0x2b, 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x71, + 0x2b, 0x2b, 0x2b, 0x2b, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, 0x5f, 0x5d, 0x2b, + 0x5d, 0x71, 0x71, 0x71, 0x2b, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, + 0x2b, 0x2b, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x72, 0x2b, 0x72, 0x72, 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x71, 0x2b, 0x2f, 0xed, 0x31, 0x30, + 0x13, 0x35, 0x33, 0x15, 0xbb, 0xc3, 0x01, 0xbe, 0xdc, 0xdc, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xf5, 0x00, 0x00, 0x05, 0xee, 0x05, 0x83, 0x10, 0x27, + 0x00, 0x28, 0x00, 0xf0, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0xff, 0x28, + 0xff, 0x7c, 0x00, 0x31, 0x40, 0x0a, 0x01, 0x0e, 0x03, 0x01, 0x10, 0x0f, + 0x01, 0x00, 0x0f, 0x01, 0xb8, 0xff, 0x71, 0x40, 0x13, 0x0f, 0x0f, 0x01, + 0x01, 0x25, 0x00, 0xd0, 0x00, 0x01, 0xbf, 0x00, 0x01, 0x2f, 0x00, 0x01, + 0x2f, 0x00, 0x01, 0x00, 0x10, 0x5d, 0x5d, 0x5d, 0x5d, 0x35, 0x2b, 0x5d, + 0x5d, 0x35, 0x00, 0x3f, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf2, + 0x00, 0x00, 0x06, 0x0d, 0x05, 0x83, 0x10, 0x27, 0x00, 0x2b, 0x00, 0xed, + 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0xff, 0x25, 0xff, 0x7c, 0x00, 0x5f, + 0xb9, 0x00, 0x13, 0xff, 0xc0, 0xb3, 0x15, 0x15, 0x48, 0x13, 0xb8, 0xff, + 0xc0, 0xb3, 0x14, 0x14, 0x48, 0x13, 0xb8, 0xff, 0xc0, 0xb3, 0x13, 0x13, + 0x48, 0x13, 0xb8, 0xff, 0xc0, 0xb3, 0x11, 0x11, 0x48, 0x13, 0xb8, 0xff, + 0xc0, 0x40, 0x0d, 0x0e, 0x0e, 0x48, 0x01, 0x0e, 0x03, 0x01, 0x10, 0x0f, + 0x01, 0x00, 0x0f, 0x01, 0xb8, 0xff, 0x71, 0x40, 0x13, 0x0f, 0x0f, 0x05, + 0x05, 0x25, 0x00, 0xcf, 0x00, 0x01, 0xbf, 0x00, 0x01, 0x6f, 0x00, 0x01, + 0x2f, 0x00, 0x01, 0x00, 0x10, 0x5d, 0x5d, 0x5d, 0x5d, 0x35, 0x2b, 0x5d, + 0x5d, 0x35, 0x00, 0x3f, 0x35, 0x01, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x00, + 0xff, 0xff, 0xff, 0xe8, 0x00, 0x00, 0x02, 0x55, 0x05, 0x83, 0x10, 0x27, + 0x00, 0x2c, 0x00, 0xd9, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0xff, 0x1b, + 0xff, 0x7c, 0x00, 0x5c, 0xb9, 0x00, 0x0b, 0xff, 0xc0, 0xb3, 0x11, 0x11, + 0x48, 0x0b, 0xb8, 0xff, 0xc0, 0x40, 0x17, 0x0c, 0x0c, 0x48, 0x0b, 0x40, + 0x0b, 0x0b, 0x48, 0x0b, 0x40, 0x09, 0x09, 0x48, 0x01, 0x06, 0x03, 0x01, + 0x10, 0x07, 0x01, 0x00, 0x07, 0x01, 0xb8, 0xff, 0x66, 0x40, 0x1c, 0x07, + 0x07, 0x01, 0x01, 0x25, 0x00, 0x80, 0x00, 0x01, 0x7f, 0x00, 0x01, 0x6f, + 0x00, 0x01, 0x5f, 0x00, 0x01, 0x4f, 0x00, 0x01, 0x2f, 0x00, 0x01, 0x2f, + 0x00, 0x01, 0x00, 0x10, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x35, + 0x2b, 0x5d, 0x5d, 0x35, 0x00, 0x3f, 0x35, 0x01, 0x2b, 0x2b, 0x2b, 0x2b, + 0xff, 0xff, 0xff, 0xbb, 0xff, 0xec, 0x05, 0xd3, 0x05, 0x96, 0x10, 0x26, + 0x00, 0x32, 0xfc, 0x00, 0x11, 0x07, 0x01, 0x54, 0xfe, 0xee, 0xff, 0x7c, + 0x00, 0x27, 0x40, 0x0a, 0x02, 0x2a, 0x03, 0x02, 0xc0, 0x28, 0x01, 0x00, + 0x28, 0x01, 0xb8, 0xff, 0x5e, 0x40, 0x0b, 0x28, 0x28, 0x0a, 0x0a, 0x25, + 0x01, 0x00, 0x2f, 0x00, 0x01, 0x00, 0x10, 0x5d, 0x35, 0x35, 0x2b, 0x5d, + 0x5d, 0x35, 0x00, 0x3f, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x41, + 0x00, 0x00, 0x06, 0xab, 0x05, 0x83, 0x10, 0x27, 0x00, 0x3c, 0x01, 0x82, + 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0xff, 0x74, 0xff, 0x7c, 0x05, 0xc0, + 0x40, 0x15, 0x10, 0x40, 0xe9, 0xe9, 0x48, 0x10, 0x40, 0xe5, 0xe5, 0x48, + 0x10, 0x40, 0xe3, 0xe3, 0x48, 0x10, 0x40, 0xe2, 0xe2, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0xe0, 0xe0, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x13, + 0xde, 0xde, 0x48, 0x10, 0x40, 0xdc, 0xdc, 0x48, 0x10, 0x40, 0xdb, 0xdb, + 0x48, 0x10, 0x40, 0xd8, 0xd8, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0xd7, + 0xd7, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0xd3, 0xd3, 0x48, 0x10, + 0x40, 0xcf, 0xcf, 0x48, 0x10, 0x40, 0xce, 0xce, 0x48, 0x10, 0x40, 0xcd, + 0xcd, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0xcc, 0xcc, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0x40, 0x13, 0xca, 0xca, 0x48, 0x10, 0x40, 0xc7, 0xc7, 0x48, + 0x10, 0x40, 0xba, 0xba, 0x48, 0x10, 0x40, 0xb8, 0xb8, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0xb7, 0xb7, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x0e, + 0xb6, 0xb6, 0x48, 0x10, 0x40, 0xb3, 0xb3, 0x48, 0x10, 0x40, 0xb1, 0xb1, + 0x48, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0xac, 0xac, 0x48, 0x10, 0x40, + 0xa6, 0xa6, 0x48, 0x10, 0x40, 0xa4, 0xa4, 0x48, 0x10, 0x40, 0xa3, 0xa3, + 0x48, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x18, 0xa1, 0xa1, 0x48, 0x10, 0x40, + 0x9c, 0x9c, 0x48, 0x10, 0x80, 0x99, 0x99, 0x48, 0x10, 0x40, 0x98, 0x98, + 0x48, 0x10, 0x40, 0x97, 0x97, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x95, + 0x95, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x94, 0x94, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x93, 0x93, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x92, + 0x92, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x91, 0x91, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x90, 0x90, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x8d, + 0x8d, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x8c, 0x8c, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x8b, 0x8b, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x8a, + 0x8a, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x89, 0x89, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x88, 0x88, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x87, + 0x87, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x86, 0x86, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x85, 0x85, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x83, + 0x83, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x82, 0x82, 0x48, 0x10, 0xb8, + 0xff, 0x00, 0xb3, 0x81, 0x81, 0x48, 0x10, 0xb8, 0xff, 0x00, 0xb3, 0x80, + 0x80, 0x48, 0x10, 0xb8, 0xfe, 0xc0, 0xb3, 0x7f, 0x7f, 0x48, 0x10, 0xb8, + 0xff, 0x00, 0xb3, 0x7e, 0x7e, 0x48, 0x10, 0xb8, 0xff, 0x00, 0xb3, 0x7d, + 0x7d, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x7c, 0x7c, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x7b, 0x7b, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x7a, + 0x7a, 0x48, 0x10, 0xb8, 0xff, 0x00, 0xb3, 0x79, 0x79, 0x48, 0x10, 0xb8, + 0xfe, 0xc0, 0xb3, 0x78, 0x78, 0x48, 0x10, 0xb8, 0xff, 0x00, 0xb3, 0x77, + 0x77, 0x48, 0x10, 0xb8, 0xff, 0x00, 0xb3, 0x76, 0x76, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x75, 0x75, 0x48, 0x10, 0xb8, 0xff, 0x00, 0xb3, 0x74, + 0x74, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x73, 0x73, 0x48, 0x10, 0xb8, + 0xff, 0x00, 0xb3, 0x72, 0x72, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x71, + 0x71, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x70, 0x70, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x6f, 0x6f, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x6e, + 0x6e, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x6d, 0x6d, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x6c, 0x6c, 0x48, 0x10, 0xb8, 0xff, 0x00, 0xb3, 0x6b, + 0x6b, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x6a, 0x6a, 0x48, 0x10, 0xb8, + 0xff, 0x00, 0xb3, 0x69, 0x69, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x68, + 0x68, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x67, 0x67, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x66, 0x66, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x65, + 0x65, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x64, 0x64, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x63, 0x63, 0x48, 0x10, 0xb8, 0xff, 0x00, 0xb3, 0x62, + 0x62, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x61, 0x61, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x60, 0x60, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x5f, + 0x5f, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x5e, 0x5e, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x5d, 0x5d, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x5c, + 0x5c, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x5b, 0x5b, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x5a, 0x5a, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x59, + 0x59, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x58, 0x58, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x57, 0x57, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x56, + 0x56, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x55, 0x55, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x54, 0x54, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x53, + 0x53, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x52, 0x52, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x51, 0x51, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x50, + 0x50, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x4f, 0x4f, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x4e, 0x4e, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x4d, + 0x4d, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x4c, 0x4c, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x4b, 0x4b, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x4a, + 0x4a, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x49, 0x49, 0x48, 0x10, 0xb8, + 0xff, 0x40, 0xb3, 0x48, 0x48, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x47, + 0x47, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x46, 0x46, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x45, 0x45, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x44, + 0x44, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x43, 0x43, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x42, 0x42, 0x48, 0x10, 0xb8, 0xff, 0x40, 0xb3, 0x41, + 0x41, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x40, 0x40, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x3f, 0x3f, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x3e, + 0x3e, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x3d, 0x3d, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x3c, 0x3c, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x3b, + 0x3b, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x3a, 0x3a, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x39, 0x39, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x38, + 0x38, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x37, 0x37, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x36, 0x36, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x35, + 0x35, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x34, 0x34, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x33, 0x33, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x32, + 0x32, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x31, 0x31, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x30, 0x30, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x2f, + 0x2f, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x2e, 0x2e, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x2d, 0x2d, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x2c, + 0x2c, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x2b, 0x2b, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x2a, 0x2a, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x29, + 0x29, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x28, 0x28, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x27, 0x27, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x26, + 0x26, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x25, 0x25, 0x48, 0x10, 0xb8, + 0xff, 0x80, 0xb3, 0x24, 0x24, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x23, + 0x23, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x22, 0x22, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x21, 0x21, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x20, + 0x20, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x1f, 0x1f, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x1e, 0x1e, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x1d, + 0x1d, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x1c, 0x1c, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x1b, 0x1b, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x1a, + 0x1a, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x19, 0x19, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x18, 0x18, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x17, + 0x17, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x16, 0x16, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x15, 0x15, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x11, + 0x11, 0x48, 0x10, 0xb8, 0xff, 0x80, 0xb3, 0x10, 0x10, 0x48, 0x10, 0xb8, + 0xff, 0xc0, 0xb3, 0x0f, 0x0f, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0xb3, 0x0e, + 0x0e, 0x48, 0x10, 0xb8, 0xff, 0xc0, 0x40, 0x1e, 0x0c, 0x0c, 0x48, 0x10, + 0x40, 0x0b, 0x0b, 0x48, 0x01, 0x0b, 0x03, 0x01, 0x80, 0x0c, 0x01, 0x70, + 0x0c, 0x01, 0x60, 0x0c, 0x01, 0x40, 0x0c, 0x01, 0x10, 0x0c, 0x01, 0x00, + 0x0c, 0x01, 0xb8, 0xff, 0xa6, 0x40, 0x0d, 0x0c, 0x0c, 0x04, 0x04, 0x25, + 0x00, 0xb0, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x10, 0x5d, 0x5d, 0x35, + 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x35, 0x00, 0x3f, 0x35, 0x01, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0xff, 0xff, 0xff, 0xbb, + 0x00, 0x00, 0x05, 0xad, 0x05, 0x96, 0x10, 0x26, 0x01, 0x76, 0x0a, 0x00, + 0x11, 0x07, 0x01, 0x54, 0xfe, 0xee, 0xff, 0x7c, 0x00, 0x44, 0x40, 0x0f, + 0x41, 0x40, 0x13, 0x13, 0x48, 0x01, 0x3c, 0x03, 0x01, 0x90, 0x3a, 0x01, + 0x10, 0x3a, 0x01, 0xb8, 0xff, 0x3e, 0x40, 0x1c, 0x3a, 0x3a, 0x35, 0x35, + 0x25, 0x00, 0x9f, 0x00, 0x01, 0x5f, 0x00, 0x01, 0x1f, 0x00, 0x01, 0xdf, + 0x00, 0x01, 0xaf, 0x00, 0x01, 0x9f, 0x00, 0x01, 0x1f, 0x00, 0x01, 0x00, + 0x10, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x35, 0x2b, 0x5d, 0x5d, + 0x35, 0x00, 0x3f, 0x35, 0x01, 0x2b, 0x00, 0x00, 0xff, 0xff, 0xff, 0xb0, + 0x00, 0x00, 0x02, 0x1e, 0x06, 0x41, 0x10, 0x26, 0x01, 0x86, 0x00, 0x00, + 0x11, 0x06, 0x01, 0x55, 0x93, 0x00, 0x02, 0x3c, 0x40, 0x0b, 0x1d, 0x40, + 0xe3, 0xe3, 0x48, 0x1d, 0x40, 0xe2, 0xe2, 0x48, 0x1d, 0xb8, 0xff, 0xc0, + 0xb3, 0xdf, 0xdf, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0xb3, 0xdc, 0xdc, 0x48, + 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0xdb, 0xdb, 0x48, 0x1d, 0x40, 0xd5, + 0xd5, 0x48, 0x1d, 0x40, 0xd4, 0xd4, 0x48, 0x1d, 0x40, 0xd3, 0xd3, 0x48, + 0x1d, 0xb8, 0xff, 0xc0, 0xb3, 0xcf, 0xcf, 0x48, 0x1d, 0xb8, 0xff, 0xc0, + 0xb3, 0xce, 0xce, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0xcd, 0xcd, + 0x48, 0x1d, 0x40, 0xc8, 0xc8, 0x48, 0x1d, 0x40, 0xc7, 0xc7, 0x48, 0x1d, + 0x40, 0xc6, 0xc6, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x0e, 0xc0, 0xc0, + 0x48, 0x1d, 0x40, 0xb6, 0xb6, 0x48, 0x1d, 0x40, 0xb1, 0xb1, 0x48, 0x1d, + 0xb8, 0xff, 0xc0, 0xb3, 0xaf, 0xaf, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, + 0x13, 0xae, 0xae, 0x48, 0x1d, 0x40, 0xa8, 0xa8, 0x48, 0x1d, 0x40, 0xa7, + 0xa7, 0x48, 0x1d, 0x40, 0xa4, 0xa4, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0xb3, + 0xa1, 0xa1, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0xa0, 0xa0, 0x48, + 0x1d, 0x40, 0x9b, 0x9b, 0x48, 0x1d, 0x40, 0x9a, 0x9a, 0x48, 0x1d, 0x40, + 0x99, 0x99, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0xb3, 0x98, 0x98, 0x48, 0x1d, + 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x97, 0x97, 0x48, 0x1d, 0x40, 0x8d, 0x8d, + 0x48, 0x1d, 0x40, 0x84, 0x84, 0x48, 0x1d, 0x40, 0x83, 0x83, 0x48, 0x1d, + 0xb8, 0xff, 0xc0, 0x40, 0x09, 0x81, 0x81, 0x48, 0x1d, 0x40, 0x77, 0x77, + 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x0e, 0x73, 0x73, 0x48, 0x1d, 0x40, + 0x6e, 0x6e, 0x48, 0x1d, 0x40, 0x6d, 0x6d, 0x48, 0x1d, 0xb8, 0xff, 0xc0, + 0x40, 0x13, 0x6a, 0x6a, 0x48, 0x1d, 0x40, 0x65, 0x65, 0x48, 0x1d, 0x40, + 0x64, 0x64, 0x48, 0x1d, 0x40, 0x60, 0x60, 0x48, 0x1d, 0xb8, 0xff, 0xc0, + 0xb3, 0x5e, 0x5e, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x5d, 0x5d, + 0x48, 0x1d, 0x40, 0x57, 0x57, 0x48, 0x1d, 0x40, 0x56, 0x56, 0x48, 0x1d, + 0x40, 0x55, 0x55, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0xb3, 0x54, 0x54, 0x48, + 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x09, 0x4f, 0x4f, 0x48, 0x1d, 0x40, 0x4a, + 0x4a, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x18, 0x3d, 0x3d, 0x48, 0x1d, + 0x40, 0x38, 0x38, 0x48, 0x1d, 0x40, 0x37, 0x37, 0x48, 0x1d, 0x40, 0x36, + 0x36, 0x48, 0x1d, 0x40, 0x33, 0x33, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0xb3, + 0x32, 0x32, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0xb3, 0x31, 0x31, 0x48, 0x1d, + 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x30, 0x30, 0x48, 0x1d, 0x40, 0x2a, 0x2a, + 0x48, 0x1d, 0x40, 0x29, 0x29, 0x48, 0x1d, 0x40, 0x28, 0x28, 0x48, 0x1d, + 0xb8, 0xff, 0xc0, 0xb3, 0x24, 0x24, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0xb3, + 0x23, 0x23, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x22, 0x22, 0x48, + 0x1d, 0x40, 0x1d, 0x1d, 0x48, 0x1d, 0x40, 0x18, 0x18, 0x48, 0x1d, 0x40, + 0x17, 0x17, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0xb3, 0x15, 0x15, 0x48, 0x1d, + 0xb8, 0xff, 0xc0, 0xb3, 0x11, 0x11, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, + 0x0e, 0x10, 0x10, 0x48, 0x1d, 0x40, 0x09, 0x09, 0x48, 0x1d, 0x40, 0x08, + 0x08, 0x48, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x0c, 0x07, 0x07, 0x48, 0x03, + 0x02, 0x01, 0x0e, 0x11, 0x26, 0x03, 0x02, 0x01, 0xb8, 0xff, 0xdc, 0xb4, + 0x14, 0x1a, 0x05, 0x0d, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x35, 0x00, 0x2b, + 0x35, 0x35, 0x35, 0x01, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x24, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0xea, 0x05, 0x81, 0x12, 0x06, 0x00, 0x25, 0x00, 0x00, + 0x00, 0x01, 0x00, 0xa8, 0x00, 0x01, 0x04, 0x2f, 0x05, 0x82, 0x00, 0x05, + 0x00, 0x38, 0x40, 0x28, 0x03, 0x5a, 0x00, 0x04, 0x10, 0x04, 0x40, 0x04, + 0x03, 0x04, 0x10, 0x00, 0x30, 0x00, 0x50, 0x00, 0x03, 0x00, 0x00, 0x10, + 0x00, 0x20, 0x00, 0x40, 0x00, 0x60, 0x00, 0x80, 0x00, 0xa0, 0x00, 0x07, + 0x07, 0x00, 0x02, 0x5f, 0x05, 0x03, 0x03, 0x12, 0x00, 0x3f, 0x3f, 0xed, + 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0x2f, 0x5d, 0xed, 0x31, 0x30, 0x01, 0x15, + 0x21, 0x11, 0x23, 0x11, 0x04, 0x2f, 0xfd, 0x38, 0xbf, 0x05, 0x82, 0x9c, + 0xfb, 0x1b, 0x05, 0x81, 0x00, 0x02, 0x00, 0x3d, 0x00, 0x00, 0x05, 0x1a, + 0x05, 0x81, 0x00, 0x05, 0x00, 0x12, 0x00, 0xb0, 0x40, 0x1a, 0x6a, 0x07, + 0x7a, 0x07, 0x8a, 0x07, 0x03, 0x65, 0x11, 0x75, 0x11, 0x85, 0x11, 0x03, + 0x59, 0x08, 0x01, 0x56, 0x10, 0x01, 0x06, 0x18, 0x0d, 0x11, 0x48, 0x12, + 0xb8, 0xff, 0xe8, 0x40, 0x40, 0x0d, 0x11, 0x48, 0x84, 0x02, 0x01, 0x46, + 0x02, 0x66, 0x02, 0x76, 0x02, 0x03, 0x8b, 0x01, 0x01, 0x49, 0x01, 0x69, + 0x01, 0x79, 0x01, 0x03, 0x02, 0x01, 0x0c, 0x0c, 0x00, 0x06, 0x5f, 0x03, + 0x01, 0x10, 0x03, 0x01, 0x0f, 0x03, 0x01, 0xaf, 0x03, 0xcf, 0x03, 0xdf, + 0x03, 0xff, 0x03, 0x04, 0x4f, 0x03, 0x7f, 0x03, 0x02, 0x30, 0x03, 0x01, + 0x1f, 0x03, 0x01, 0x03, 0x12, 0x80, 0x00, 0x01, 0x00, 0xb8, 0xff, 0xc0, + 0x40, 0x1d, 0x15, 0x1e, 0x48, 0x00, 0x30, 0x14, 0x01, 0x2f, 0x14, 0x01, + 0x00, 0x03, 0x06, 0x03, 0x12, 0x5f, 0x05, 0x12, 0x0c, 0x20, 0x13, 0x16, + 0x48, 0x99, 0x0c, 0x01, 0x0c, 0x01, 0x03, 0x00, 0x3f, 0x33, 0x5d, 0x2b, + 0x3f, 0xed, 0x17, 0x32, 0x01, 0x5d, 0x5d, 0x2f, 0x2b, 0x5d, 0x33, 0x2f, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x33, 0x12, 0x39, 0x3d, 0x2f, + 0x33, 0x33, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, + 0x5d, 0x5d, 0x31, 0x30, 0x37, 0x01, 0x33, 0x01, 0x15, 0x21, 0x25, 0x01, + 0x2e, 0x03, 0x27, 0x0e, 0x03, 0x07, 0x01, 0x3e, 0x02, 0x05, 0xd9, 0x01, + 0xfe, 0xfb, 0x23, 0x04, 0x15, 0xfe, 0xae, 0x10, 0x1d, 0x16, 0x0f, 0x01, + 0x02, 0x0e, 0x17, 0x1c, 0x10, 0xfe, 0xad, 0x8d, 0x04, 0xf4, 0xfb, 0x0c, + 0x8d, 0x9c, 0x03, 0x5e, 0x28, 0x52, 0x45, 0x30, 0x08, 0x08, 0x31, 0x46, + 0x52, 0x28, 0xfc, 0xa4, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x28, 0x00, 0x00, 0xff, 0xff, 0x00, 0x41, + 0x00, 0x00, 0x04, 0xa3, 0x05, 0x81, 0x12, 0x06, 0x00, 0x3d, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x20, 0x05, 0x81, 0x12, 0x06, + 0x00, 0x2b, 0x00, 0x00, 0x00, 0x03, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x05, 0x96, 0x00, 0x13, 0x00, 0x27, 0x00, 0x2b, 0x00, 0xb3, 0x40, 0x82, + 0x69, 0x0c, 0x01, 0x66, 0x11, 0x01, 0x59, 0x16, 0x01, 0x56, 0x20, 0x01, + 0x56, 0x1c, 0x01, 0x1a, 0x17, 0x5a, 0x17, 0x02, 0x15, 0x1b, 0x55, 0x1b, + 0x02, 0x09, 0x2a, 0x01, 0x06, 0x2b, 0x01, 0x0a, 0x25, 0x1a, 0x25, 0x5a, + 0x25, 0x03, 0x05, 0x21, 0x15, 0x21, 0x55, 0x21, 0x03, 0x09, 0x2b, 0x2a, + 0x1e, 0x00, 0x5b, 0x0f, 0x14, 0x01, 0x3b, 0xcf, 0x14, 0xef, 0x14, 0x02, + 0x00, 0x14, 0x01, 0xef, 0x14, 0xff, 0x14, 0x02, 0xb0, 0x14, 0x01, 0x6f, + 0x14, 0x01, 0x30, 0x14, 0x01, 0x1f, 0x14, 0x01, 0x00, 0x14, 0x10, 0x14, + 0x20, 0x14, 0x40, 0x14, 0x50, 0x14, 0xa0, 0x14, 0x06, 0x07, 0x14, 0x1e, + 0x5b, 0xaf, 0x0a, 0xbf, 0x0a, 0x02, 0x20, 0x0a, 0x01, 0x0f, 0x0a, 0x1f, + 0x0a, 0x02, 0x0a, 0x2b, 0x5f, 0x28, 0x28, 0x23, 0x19, 0x5f, 0x0f, 0x04, + 0x23, 0x5f, 0x05, 0x13, 0x80, 0x2d, 0x01, 0x20, 0x2d, 0x01, 0x5d, 0x5d, + 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x2f, 0x5d, + 0x5d, 0x5d, 0xed, 0x2f, 0x5e, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, + 0x72, 0x5e, 0x5d, 0xed, 0x12, 0x39, 0x39, 0x31, 0x30, 0x5e, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x02, + 0x06, 0x04, 0x23, 0x22, 0x24, 0x26, 0x02, 0x35, 0x34, 0x12, 0x36, 0x24, + 0x33, 0x32, 0x04, 0x16, 0x12, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, + 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x25, 0x21, 0x15, + 0x21, 0x05, 0xd7, 0x5f, 0xb4, 0xfe, 0xfc, 0xa5, 0xae, 0xfe, 0xfa, 0xae, + 0x58, 0x5c, 0xb2, 0x01, 0x05, 0xa9, 0xa8, 0x01, 0x05, 0xb1, 0x5c, 0xc3, + 0x41, 0x7f, 0xbc, 0x7b, 0x7e, 0xbe, 0x7f, 0x3f, 0x41, 0x7f, 0xbd, 0x7b, + 0x84, 0xbf, 0x7b, 0x3b, 0xfc, 0xe2, 0x02, 0x4b, 0xfd, 0xb5, 0x02, 0xc7, + 0xa5, 0xfe, 0xf2, 0xc0, 0x68, 0x6d, 0xc3, 0x01, 0x0c, 0x9f, 0xa5, 0x01, + 0x0a, 0xbb, 0x65, 0x66, 0xbc, 0xfe, 0xf6, 0xa3, 0x7f, 0xd0, 0x94, 0x50, + 0x50, 0x94, 0xd0, 0x7f, 0x7f, 0xd3, 0x99, 0x55, 0x56, 0x99, 0xd4, 0xd0, + 0xa0, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xbd, 0x00, 0x00, 0x01, 0x7c, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x2c, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x05, 0x3f, 0x05, 0x81, 0x12, 0x06, 0x00, 0x2e, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x0a, 0x00, 0x01, 0x05, 0x4e, 0x05, 0x82, 0x00, 0x10, + 0x00, 0xca, 0x40, 0x0b, 0x74, 0x10, 0x84, 0x10, 0x02, 0x7b, 0x0f, 0x8b, + 0x0f, 0x02, 0x0d, 0xb8, 0xff, 0xe8, 0xb6, 0x0e, 0x11, 0x48, 0x36, 0x0d, + 0x01, 0x0c, 0xb8, 0xff, 0xf0, 0x40, 0x7f, 0x0d, 0x11, 0x48, 0x02, 0x10, + 0x0d, 0x11, 0x48, 0x01, 0x18, 0x0e, 0x11, 0x48, 0x39, 0x01, 0x01, 0x6f, + 0x12, 0x01, 0x30, 0x12, 0x01, 0x2f, 0x12, 0x01, 0x00, 0x12, 0x01, 0x15, + 0x10, 0x25, 0x10, 0x35, 0x10, 0x03, 0x06, 0x10, 0x01, 0xe6, 0x10, 0xf6, + 0x10, 0x02, 0x10, 0x1a, 0x0f, 0x2a, 0x0f, 0x3a, 0x0f, 0x03, 0x09, 0x0f, + 0x01, 0xe9, 0x0f, 0xf9, 0x0f, 0x02, 0x0f, 0x07, 0x07, 0x15, 0x0d, 0x25, + 0x0d, 0x35, 0x0d, 0x03, 0x06, 0x0d, 0x01, 0xe6, 0x0d, 0xf6, 0x0d, 0x02, + 0x0d, 0xaf, 0x0e, 0xbf, 0x0e, 0x02, 0x0e, 0x1a, 0x01, 0x2a, 0x01, 0x3a, + 0x01, 0x03, 0x09, 0x01, 0x01, 0xe9, 0x01, 0xf9, 0x01, 0x02, 0x01, 0x10, + 0x00, 0x20, 0x00, 0x30, 0x00, 0x03, 0x6f, 0x00, 0x01, 0x00, 0x00, 0x30, + 0x00, 0x02, 0x00, 0x76, 0x07, 0x86, 0x07, 0x02, 0x07, 0x0f, 0x03, 0x0e, + 0x00, 0x12, 0x00, 0x3f, 0x32, 0x3f, 0x33, 0x5d, 0x01, 0x2f, 0x5d, 0x5d, + 0x71, 0x32, 0x5d, 0x71, 0x71, 0x2f, 0x5d, 0x33, 0x5d, 0x71, 0x71, 0x39, + 0x3d, 0x2f, 0x33, 0x5d, 0x71, 0x71, 0x33, 0x5d, 0x71, 0x71, 0x5d, 0x5d, + 0x5d, 0x5d, 0x31, 0x30, 0x5d, 0x2b, 0x2b, 0x2b, 0x5d, 0x2b, 0x5d, 0x5d, + 0x25, 0x23, 0x01, 0x2e, 0x01, 0x27, 0x26, 0x27, 0x06, 0x07, 0x0e, 0x01, + 0x07, 0x01, 0x23, 0x01, 0x33, 0x05, 0x4e, 0xc9, 0xfe, 0x7c, 0x11, 0x1d, + 0x0c, 0x0e, 0x0c, 0x0d, 0x0e, 0x0c, 0x1e, 0x0f, 0xfe, 0x7a, 0xc9, 0x02, + 0x3f, 0xc6, 0x01, 0x03, 0xe0, 0x2f, 0x59, 0x23, 0x29, 0x25, 0x27, 0x29, + 0x23, 0x59, 0x2d, 0xfc, 0x20, 0x05, 0x81, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x06, 0x02, 0x05, 0x81, 0x12, 0x06, 0x00, 0x30, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x20, 0x05, 0x81, 0x12, 0x06, + 0x00, 0x31, 0x00, 0x00, 0x00, 0x03, 0x00, 0x5a, 0x00, 0x00, 0x04, 0xd9, + 0x05, 0x81, 0x00, 0x03, 0x00, 0x07, 0x00, 0x0b, 0x00, 0x4b, 0x40, 0x31, + 0x52, 0x03, 0x01, 0x0a, 0x09, 0x05, 0x03, 0x5f, 0x06, 0x01, 0x0f, 0x06, + 0x1f, 0x06, 0xaf, 0x06, 0xbf, 0x06, 0x04, 0x06, 0x02, 0x10, 0x05, 0x30, + 0x05, 0x02, 0x20, 0x05, 0x40, 0x05, 0x70, 0x05, 0xa0, 0x05, 0x04, 0x05, + 0x0a, 0x5f, 0x0b, 0x0b, 0x00, 0x07, 0x5f, 0x06, 0x12, 0x03, 0x5f, 0x00, + 0x03, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x11, 0x39, 0x2f, 0xed, 0x01, 0x2f, + 0x5d, 0x71, 0x33, 0x2f, 0x5d, 0x71, 0x33, 0x12, 0x39, 0x39, 0x31, 0x30, + 0x71, 0x13, 0x21, 0x15, 0x21, 0x01, 0x15, 0x21, 0x35, 0x01, 0x15, 0x21, + 0x35, 0x7d, 0x04, 0x39, 0xfb, 0xc7, 0x04, 0x5c, 0xfb, 0x81, 0x03, 0xe4, + 0xfc, 0xb7, 0x05, 0x81, 0x9c, 0xfb, 0xb7, 0x9c, 0x9c, 0x02, 0x85, 0x9a, + 0x9a, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x05, 0x96, 0x12, 0x06, 0x00, 0x32, 0x00, 0x00, 0x00, 0x01, 0x00, 0xa8, + 0x00, 0x00, 0x05, 0x20, 0x05, 0x81, 0x00, 0x07, 0x00, 0x4f, 0x40, 0x28, + 0x03, 0x5a, 0x00, 0x04, 0x10, 0x04, 0x40, 0x04, 0x03, 0x07, 0x04, 0x07, + 0x5a, 0x40, 0x6f, 0x00, 0x7f, 0x00, 0x8f, 0x00, 0xbf, 0x00, 0x04, 0x00, + 0x00, 0x09, 0x80, 0x20, 0x09, 0x01, 0x20, 0x09, 0xa0, 0x09, 0xb0, 0x09, + 0xc0, 0x09, 0x04, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x0e, 0x11, 0x48, + 0x02, 0x5f, 0x05, 0x03, 0x04, 0x00, 0x12, 0x00, 0x3f, 0x32, 0x3f, 0xed, + 0x01, 0x2b, 0x5d, 0x71, 0x1a, 0x10, 0xcc, 0x2f, 0x5d, 0x1a, 0xed, 0x2f, + 0x5e, 0x5d, 0xed, 0x31, 0x30, 0x21, 0x11, 0x21, 0x11, 0x23, 0x11, 0x21, + 0x11, 0x04, 0x61, 0xfd, 0x06, 0xbf, 0x04, 0x78, 0x04, 0xe0, 0xfb, 0x20, + 0x05, 0x81, 0xfa, 0x7f, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xea, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x33, 0x00, 0x00, 0x00, 0x01, 0x00, 0x6c, + 0x00, 0x00, 0x04, 0xa1, 0x05, 0x81, 0x00, 0x0c, 0x00, 0xbc, 0x40, 0x87, + 0xa9, 0x03, 0x01, 0x69, 0x09, 0x01, 0x74, 0x09, 0x84, 0x09, 0xa4, 0x09, + 0x03, 0x94, 0x08, 0xa4, 0x08, 0x02, 0x57, 0x08, 0x67, 0x08, 0x02, 0x91, + 0x07, 0x01, 0x54, 0x07, 0x64, 0x07, 0x02, 0x92, 0x0a, 0xa2, 0x0a, 0x02, + 0x74, 0x0a, 0x84, 0x0a, 0x02, 0x46, 0x0a, 0x56, 0x0a, 0x66, 0x0a, 0x03, + 0x39, 0x03, 0xb9, 0x03, 0x02, 0xf9, 0x03, 0x01, 0x67, 0x03, 0x01, 0xa8, + 0x08, 0x01, 0x67, 0x08, 0x01, 0x08, 0x64, 0x02, 0x01, 0x27, 0x02, 0x01, + 0xaf, 0x06, 0x01, 0x02, 0x06, 0x02, 0x06, 0x01, 0xd0, 0x0b, 0x01, 0x00, + 0x0b, 0x10, 0x0b, 0x30, 0x0b, 0x50, 0x0b, 0x60, 0x0b, 0x80, 0x0b, 0x06, + 0x07, 0x0b, 0x46, 0x07, 0x01, 0x0b, 0x07, 0x01, 0x07, 0x03, 0x03, 0x0a, + 0xaf, 0x01, 0xbf, 0x01, 0x02, 0x20, 0x01, 0x01, 0x0f, 0x01, 0x01, 0x01, + 0x03, 0x07, 0x5f, 0x09, 0x02, 0x08, 0x03, 0x00, 0x04, 0x03, 0x01, 0x0a, + 0x5f, 0x00, 0x12, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0x12, 0x17, 0x39, 0xed, + 0x32, 0x01, 0x2f, 0x5d, 0x5d, 0x5d, 0x33, 0x33, 0x2f, 0x33, 0x71, 0x71, + 0x2f, 0x5e, 0x5d, 0x5d, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x71, 0x71, + 0x33, 0x71, 0x71, 0x71, 0x71, 0x72, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x5d, 0x33, 0x35, 0x09, 0x01, 0x35, 0x21, + 0x15, 0x21, 0x01, 0x15, 0x01, 0x21, 0x15, 0x6c, 0x02, 0x1a, 0xfd, 0xf7, + 0x03, 0xe7, 0xfc, 0xf0, 0x01, 0xca, 0xfe, 0x16, 0x03, 0x6d, 0xa2, 0x02, + 0x43, 0x01, 0xfb, 0xa1, 0x9c, 0xfe, 0x43, 0x7c, 0xfd, 0xf0, 0x9c, 0x00, + 0xff, 0xff, 0x00, 0x2e, 0x00, 0x00, 0x04, 0xb4, 0x05, 0x81, 0x12, 0x06, + 0x00, 0x37, 0x00, 0x00, 0xff, 0xff, 0x00, 0x2d, 0x00, 0x00, 0x05, 0x29, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x03, 0x00, 0x75, + 0xff, 0xf5, 0x05, 0xee, 0x05, 0x8b, 0x00, 0x1d, 0x00, 0x28, 0x00, 0x33, + 0x00, 0xb4, 0xb9, 0x00, 0x1c, 0xff, 0xf0, 0xb3, 0x0c, 0x0f, 0x48, 0x11, + 0xb8, 0xff, 0xf0, 0xb3, 0x0c, 0x0f, 0x48, 0x1b, 0xb8, 0xff, 0xf0, 0xb3, + 0x0c, 0x0f, 0x48, 0x12, 0xb8, 0xff, 0xf0, 0x40, 0x48, 0x0c, 0x0f, 0x48, + 0x29, 0x5a, 0x0b, 0x0f, 0x7b, 0x0f, 0xab, 0x0f, 0x03, 0x0f, 0x08, 0x1e, + 0x5a, 0x04, 0x00, 0x74, 0x00, 0xa4, 0x00, 0x03, 0x00, 0x23, 0x18, 0x07, + 0x5a, 0x2f, 0x15, 0x04, 0x08, 0x01, 0x14, 0x08, 0x24, 0x08, 0x44, 0x08, + 0x74, 0x08, 0xa4, 0x08, 0xf4, 0x08, 0x06, 0x08, 0x14, 0x35, 0x44, 0x35, + 0x02, 0x00, 0x35, 0x01, 0x84, 0x35, 0xa4, 0x35, 0xc4, 0x35, 0xf4, 0x35, + 0x04, 0x70, 0x35, 0x01, 0x02, 0x60, 0x35, 0x01, 0x35, 0xb8, 0xff, 0xc0, + 0x40, 0x18, 0x0a, 0x0d, 0x48, 0x23, 0x2e, 0x60, 0x0a, 0x06, 0x0a, 0x22, + 0x31, 0x60, 0x14, 0x18, 0x14, 0x0a, 0x14, 0x0a, 0x14, 0x07, 0x16, 0x03, + 0x07, 0x12, 0x00, 0x3f, 0x3f, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x11, 0x33, + 0x10, 0xed, 0x32, 0x11, 0x33, 0x10, 0xed, 0x32, 0x01, 0x2b, 0x5d, 0x5f, + 0x5d, 0x5d, 0x71, 0x71, 0x2f, 0x5d, 0x71, 0x33, 0x33, 0xfd, 0x32, 0x32, + 0xdc, 0x5d, 0xed, 0x10, 0xdc, 0x5d, 0xed, 0x31, 0x30, 0x00, 0x2b, 0x2b, + 0x2b, 0x2b, 0x01, 0x14, 0x0e, 0x02, 0x2b, 0x01, 0x15, 0x23, 0x35, 0x23, + 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x3b, 0x01, 0x35, 0x33, 0x15, + 0x33, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x26, 0x2b, 0x01, 0x11, 0x33, 0x32, + 0x3e, 0x02, 0x25, 0x14, 0x1e, 0x02, 0x3b, 0x01, 0x11, 0x23, 0x22, 0x06, + 0x05, 0xee, 0x40, 0x83, 0xc5, 0x85, 0x53, 0xb9, 0x53, 0x85, 0xc5, 0x83, + 0x40, 0x43, 0x85, 0xc9, 0x87, 0x48, 0xb9, 0x47, 0x87, 0xca, 0x85, 0x43, + 0xc0, 0xb9, 0xb7, 0x30, 0x38, 0x5c, 0x88, 0x59, 0x2b, 0xfc, 0x07, 0x2b, + 0x59, 0x88, 0x5c, 0x38, 0x34, 0xb6, 0xb6, 0x02, 0xe0, 0x69, 0xbc, 0x8f, + 0x54, 0xe3, 0xe3, 0x54, 0x8f, 0xbc, 0x69, 0x71, 0xb9, 0x83, 0x48, 0xb6, + 0xb6, 0x48, 0x83, 0xb9, 0x75, 0xbb, 0xb4, 0xfd, 0x16, 0x35, 0x62, 0x8c, + 0x58, 0x58, 0x8c, 0x62, 0x35, 0x02, 0xea, 0xb4, 0xff, 0xff, 0x00, 0x2e, + 0x00, 0x00, 0x05, 0x2b, 0x05, 0x81, 0x12, 0x06, 0x00, 0x3b, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x91, 0x00, 0x00, 0x06, 0x1e, 0x05, 0x81, 0x00, 0x23, + 0x00, 0xcb, 0x40, 0x7f, 0x5a, 0x1f, 0x6a, 0x1f, 0x02, 0x55, 0x1e, 0x65, + 0x1e, 0x02, 0x5a, 0x04, 0x6a, 0x04, 0x02, 0x5a, 0x05, 0x6a, 0x05, 0x02, + 0x4a, 0x16, 0x01, 0x45, 0x0d, 0x01, 0x03, 0x19, 0x5a, 0x64, 0x1c, 0x01, + 0x84, 0x1c, 0x94, 0x1c, 0x02, 0x1c, 0x13, 0x23, 0x5a, 0x00, 0x0a, 0x5a, + 0x6b, 0x07, 0x01, 0x8b, 0x07, 0x9b, 0x07, 0x02, 0x07, 0x10, 0xdb, 0x00, + 0x01, 0x04, 0x00, 0x64, 0x00, 0x84, 0x00, 0x03, 0xdb, 0x00, 0x01, 0x04, + 0x00, 0x34, 0x00, 0x44, 0x00, 0x64, 0x00, 0x84, 0x00, 0x94, 0x00, 0xb4, + 0x00, 0xc4, 0x00, 0x08, 0x07, 0x00, 0x04, 0x25, 0x24, 0x25, 0x34, 0x25, + 0x44, 0x25, 0x84, 0x25, 0xc4, 0x25, 0xd4, 0x25, 0x07, 0xe4, 0x25, 0xf4, + 0x25, 0x02, 0xa0, 0x25, 0x01, 0x84, 0x25, 0x94, 0x25, 0x02, 0x60, 0x25, + 0x70, 0x25, 0x02, 0x54, 0x25, 0x01, 0x40, 0x25, 0x01, 0x02, 0x25, 0xb8, + 0xff, 0xc0, 0x40, 0x12, 0x09, 0x0c, 0x48, 0x22, 0x02, 0x60, 0x13, 0xef, + 0x0f, 0x01, 0x0f, 0x0f, 0x1a, 0x11, 0x08, 0x03, 0x00, 0x12, 0x00, 0x3f, + 0x3f, 0x33, 0x33, 0x39, 0x2f, 0x5d, 0x33, 0xed, 0x32, 0x01, 0x2b, 0x5f, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0x5d, 0x71, + 0x71, 0x33, 0xdc, 0x5d, 0x71, 0xed, 0x10, 0xfd, 0x32, 0xdc, 0x5d, 0x71, + 0xed, 0x31, 0x30, 0x5f, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x00, + 0x5d, 0x21, 0x11, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x11, 0x33, 0x11, 0x14, + 0x1e, 0x02, 0x3b, 0x01, 0x11, 0x33, 0x11, 0x33, 0x32, 0x3e, 0x02, 0x35, + 0x11, 0x33, 0x11, 0x14, 0x0e, 0x02, 0x2b, 0x01, 0x11, 0x02, 0xfb, 0x53, + 0x85, 0xc9, 0x86, 0x43, 0xbf, 0x2f, 0x5d, 0x8b, 0x5c, 0x38, 0xb9, 0x38, + 0x5f, 0x8c, 0x5b, 0x2d, 0xbf, 0x44, 0x86, 0xc9, 0x84, 0x53, 0x01, 0xab, + 0x54, 0x8e, 0xbd, 0x68, 0x01, 0xcf, 0xfe, 0x2d, 0x50, 0x89, 0x64, 0x39, + 0x03, 0x49, 0xfc, 0xb7, 0x39, 0x64, 0x89, 0x50, 0x01, 0xd3, 0xfe, 0x31, + 0x68, 0xbd, 0x8e, 0x54, 0xfe, 0x55, 0x00, 0x00, 0x00, 0x01, 0x00, 0x57, + 0x00, 0x00, 0x05, 0xa3, 0x05, 0x96, 0x00, 0x39, 0x00, 0xe1, 0x40, 0x5b, + 0x65, 0x24, 0x01, 0x65, 0x16, 0x01, 0x9d, 0x31, 0x01, 0x8f, 0x31, 0x01, + 0x31, 0x10, 0x0b, 0x0f, 0x48, 0x9d, 0x09, 0x01, 0x8f, 0x09, 0x01, 0x09, + 0x10, 0x0b, 0x0f, 0x48, 0x74, 0x03, 0x84, 0x03, 0x02, 0x36, 0x03, 0x01, + 0x36, 0x02, 0x76, 0x02, 0x02, 0x36, 0x38, 0x76, 0x38, 0x02, 0x74, 0x37, + 0x84, 0x37, 0x02, 0x36, 0x37, 0x01, 0x2a, 0x1a, 0x01, 0x2a, 0x20, 0x01, + 0x29, 0x35, 0x30, 0x28, 0x0a, 0x12, 0x60, 0x28, 0x70, 0x28, 0x90, 0x28, + 0x03, 0x6f, 0x12, 0x7f, 0x12, 0x9f, 0x12, 0x03, 0x28, 0x12, 0x28, 0x12, + 0x18, 0x22, 0x5b, 0x50, 0x35, 0x01, 0x35, 0xb8, 0xff, 0xc0, 0x40, 0x45, + 0x1b, 0x1e, 0x48, 0xbf, 0x35, 0xcf, 0x35, 0x02, 0x30, 0x35, 0x01, 0x35, + 0x11, 0x05, 0x5b, 0x1f, 0x18, 0x4f, 0x18, 0x02, 0xe0, 0x18, 0x01, 0x0f, + 0x18, 0x1f, 0x18, 0x5f, 0x18, 0xcf, 0x18, 0xdf, 0x18, 0x05, 0xa0, 0x18, + 0x01, 0x6f, 0x18, 0x9f, 0x18, 0x02, 0x00, 0x18, 0x20, 0x18, 0x30, 0x18, + 0x03, 0x08, 0x18, 0x5f, 0x3b, 0x01, 0x0a, 0x0f, 0x13, 0x27, 0x30, 0x05, + 0x2a, 0x5f, 0x12, 0x29, 0x12, 0x1d, 0x5f, 0x00, 0x04, 0x00, 0x3f, 0xed, + 0x3f, 0x33, 0xed, 0x17, 0x32, 0x01, 0x5d, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, + 0x71, 0x71, 0x72, 0xfd, 0xc4, 0x2f, 0x5d, 0x5d, 0x2b, 0x72, 0xed, 0x11, + 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x5d, 0x11, 0x33, 0x11, 0x33, 0x10, 0xc4, + 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, + 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x32, 0x1e, 0x02, 0x15, + 0x14, 0x0e, 0x02, 0x07, 0x36, 0x37, 0x3e, 0x01, 0x3b, 0x01, 0x15, 0x21, + 0x35, 0x3e, 0x03, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, + 0x14, 0x1e, 0x02, 0x17, 0x15, 0x21, 0x35, 0x33, 0x32, 0x16, 0x17, 0x16, + 0x17, 0x2e, 0x03, 0x35, 0x34, 0x3e, 0x02, 0x02, 0xfd, 0x97, 0xf1, 0xa8, + 0x5a, 0x3b, 0x6d, 0x9d, 0x63, 0x2a, 0x27, 0x21, 0x47, 0x17, 0xf4, 0xfd, + 0xb3, 0x60, 0x8b, 0x59, 0x2a, 0x3d, 0x74, 0xa9, 0x6c, 0x6d, 0xaa, 0x74, + 0x3d, 0x2a, 0x59, 0x8b, 0x60, 0xfd, 0xb3, 0xf4, 0x17, 0x47, 0x21, 0x27, + 0x2a, 0x63, 0x9d, 0x6d, 0x3b, 0x5a, 0xa8, 0xf1, 0x05, 0x96, 0x56, 0xa2, + 0xea, 0x93, 0x6a, 0xbf, 0xa7, 0x8a, 0x36, 0x02, 0x03, 0x02, 0x04, 0x9c, + 0xe0, 0x33, 0x7e, 0x8f, 0x9f, 0x55, 0x74, 0xb5, 0x7c, 0x41, 0x41, 0x7c, + 0xb5, 0x74, 0x55, 0x9f, 0x8f, 0x7e, 0x33, 0xe0, 0x9c, 0x04, 0x02, 0x03, + 0x02, 0x36, 0x8a, 0xa7, 0xbf, 0x6a, 0x93, 0xea, 0xa2, 0x56, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x07, 0x00, 0x00, 0x02, 0x34, 0x06, 0xb2, 0x12, 0x26, + 0x00, 0x2c, 0x00, 0x00, 0x11, 0x06, 0x02, 0xa5, 0xda, 0x00, 0x00, 0x17, + 0x40, 0x0d, 0x02, 0x01, 0x04, 0x05, 0x26, 0x02, 0x01, 0x01, 0x08, 0x06, + 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, + 0x00, 0x03, 0x00, 0x2d, 0x00, 0x00, 0x05, 0x29, 0x06, 0xb2, 0x00, 0x08, + 0x00, 0x0c, 0x00, 0x10, 0x02, 0x72, 0x40, 0x14, 0x1e, 0x07, 0x01, 0x0c, + 0x07, 0x01, 0x07, 0x18, 0x0c, 0x0f, 0x48, 0x11, 0x05, 0x01, 0x03, 0x05, + 0x01, 0x10, 0x03, 0x05, 0xb8, 0xff, 0xe8, 0x40, 0xff, 0x0c, 0x0f, 0x48, + 0x0c, 0x85, 0x09, 0x10, 0x85, 0x40, 0x0d, 0x05, 0x04, 0x0e, 0x02, 0x01, + 0x08, 0x0e, 0x07, 0x69, 0x08, 0xa9, 0x08, 0x02, 0x06, 0x08, 0x16, 0x08, + 0x36, 0x08, 0x46, 0x08, 0x04, 0x0e, 0x08, 0x06, 0x01, 0x5a, 0x26, 0x02, + 0x56, 0x02, 0x96, 0x02, 0x03, 0x76, 0x02, 0xe6, 0x02, 0x02, 0x39, 0x02, + 0x49, 0x02, 0x02, 0x06, 0x02, 0x01, 0x10, 0x02, 0x99, 0x12, 0xa9, 0x12, + 0xc9, 0x12, 0x03, 0x56, 0x12, 0x01, 0x09, 0x12, 0x39, 0x12, 0x02, 0x19, + 0x12, 0x59, 0x12, 0x89, 0x12, 0xf9, 0x12, 0x04, 0x06, 0x12, 0x01, 0xca, + 0xf9, 0x12, 0x01, 0xe6, 0x12, 0x01, 0x09, 0x12, 0x19, 0x12, 0xb9, 0x12, + 0xc9, 0x12, 0x04, 0xc6, 0x12, 0x01, 0x59, 0x12, 0x79, 0x12, 0xa9, 0x12, + 0x03, 0x36, 0x12, 0x01, 0x29, 0x12, 0x39, 0x12, 0xb9, 0x12, 0xe9, 0x12, + 0x04, 0x0b, 0x12, 0x01, 0x99, 0xf9, 0x12, 0x01, 0xc6, 0x12, 0xd6, 0x12, + 0x02, 0xb2, 0x12, 0x01, 0xa4, 0x12, 0x01, 0x96, 0x12, 0x01, 0x82, 0x12, + 0x01, 0x74, 0x12, 0x01, 0x56, 0x12, 0x66, 0x12, 0x02, 0x42, 0x12, 0x01, + 0x24, 0x12, 0x34, 0x12, 0x02, 0x12, 0x12, 0x01, 0x04, 0x12, 0x01, 0xf4, + 0x12, 0x01, 0xe6, 0x12, 0x01, 0xc4, 0x12, 0xd4, 0x12, 0x02, 0xa6, 0x12, + 0xb6, 0x12, 0x02, 0x92, 0x12, 0x01, 0x84, 0x12, 0x01, 0x76, 0x12, 0x01, + 0x62, 0x12, 0x01, 0x54, 0x12, 0x01, 0x36, 0x12, 0x46, 0x12, 0x02, 0x24, + 0x12, 0x01, 0x16, 0x12, 0x01, 0x04, 0x12, 0x01, 0xf2, 0x12, 0x01, 0x01, + 0xd0, 0x12, 0xe0, 0x12, 0x02, 0xc4, 0x12, 0x01, 0xa0, 0x12, 0xb0, 0x12, + 0x02, 0x94, 0x12, 0x01, 0x70, 0x12, 0x01, 0x64, 0x12, 0x01, 0x40, 0x12, + 0x01, 0x14, 0x12, 0x24, 0x12, 0x34, 0x12, 0x03, 0x00, 0x12, 0x01, 0x69, + 0x40, 0xca, 0xe4, 0x12, 0xf4, 0x12, 0x02, 0xd0, 0x12, 0x01, 0xa4, 0x12, + 0xb4, 0x12, 0xc4, 0x12, 0x03, 0x80, 0x12, 0x90, 0x12, 0x02, 0x74, 0x12, + 0x01, 0x50, 0x12, 0x60, 0x12, 0x02, 0x44, 0x12, 0x01, 0x20, 0x12, 0x01, + 0x04, 0x12, 0x14, 0x12, 0x02, 0xf4, 0x12, 0x01, 0xe0, 0x12, 0x01, 0xc4, + 0x12, 0xd4, 0x12, 0x02, 0xb0, 0x12, 0x01, 0x54, 0x12, 0x64, 0x12, 0x74, + 0x12, 0x94, 0x12, 0xa4, 0x12, 0x05, 0x30, 0x12, 0x40, 0x12, 0x02, 0x24, + 0x12, 0x01, 0x00, 0x12, 0x01, 0xc4, 0x12, 0xf4, 0x12, 0x02, 0x90, 0x12, + 0x01, 0x04, 0x12, 0x14, 0x12, 0x24, 0x12, 0x44, 0x12, 0x54, 0x12, 0x74, + 0x12, 0x84, 0x12, 0x07, 0x39, 0xe0, 0x12, 0x01, 0x84, 0x12, 0xa4, 0x12, + 0xd4, 0x12, 0x03, 0x70, 0x12, 0x01, 0x04, 0x12, 0x24, 0x12, 0x34, 0x12, + 0x54, 0x12, 0x64, 0x12, 0x05, 0xe4, 0x12, 0xf4, 0x12, 0x02, 0xc0, 0x12, + 0x01, 0xb4, 0x12, 0x01, 0x90, 0x12, 0x01, 0x04, 0x12, 0x14, 0x12, 0x34, + 0x12, 0x54, 0x12, 0x84, 0x12, 0x05, 0xd4, 0x12, 0xe4, 0x12, 0x02, 0xbb, + 0x12, 0x01, 0xa4, 0x12, 0x01, 0x70, 0x12, 0x01, 0x02, 0x30, 0x12, 0x60, + 0x12, 0x02, 0x0f, 0x12, 0x2f, 0x12, 0x02, 0x0a, 0x0e, 0x91, 0x09, 0x5f, + 0x0d, 0x01, 0x0d, 0x40, 0x09, 0x0c, 0x48, 0x0d, 0x00, 0x03, 0x3b, 0x03, + 0x4b, 0x03, 0x7b, 0x03, 0x03, 0x03, 0x01, 0x08, 0x04, 0x03, 0x01, 0x12, + 0x00, 0x3f, 0x3f, 0x33, 0x12, 0x39, 0x5d, 0x11, 0x33, 0x2f, 0x2b, 0x5d, + 0x33, 0xed, 0x32, 0x01, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x71, 0x71, + 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x2f, 0x5e, 0x5d, + 0x5d, 0x5d, 0x71, 0xfd, 0x39, 0xce, 0x5e, 0x5d, 0x5d, 0x32, 0x2b, 0x01, + 0x18, 0x10, 0x4d, 0xe6, 0x32, 0x2f, 0x1a, 0xed, 0xdc, 0xed, 0x31, 0x30, + 0x2b, 0x5f, 0x5e, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x01, 0x11, 0x23, 0x13, + 0x01, 0x33, 0x09, 0x01, 0x33, 0x25, 0x35, 0x33, 0x15, 0x21, 0x35, 0x33, + 0x15, 0x03, 0x09, 0xbe, 0x02, 0xfd, 0xe0, 0xcd, 0x01, 0xb2, 0x01, 0xb0, + 0xcd, 0xfd, 0xf9, 0xa3, 0xfd, 0xd3, 0xa5, 0x02, 0x48, 0xfd, 0xb8, 0x02, + 0x48, 0x03, 0x39, 0xfd, 0x61, 0x02, 0x9f, 0x79, 0xb8, 0xb8, 0xb8, 0xb8, + 0xff, 0xff, 0x00, 0x56, 0xff, 0xec, 0x04, 0x65, 0x06, 0x07, 0x12, 0x26, + 0x01, 0x7e, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0x01, 0x21, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x02, 0x3c, 0x11, 0x26, 0x02, 0x1a, 0x3c, 0x3f, + 0x08, 0x17, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x46, 0xff, 0xec, 0x03, 0x6a, 0x06, 0x07, 0x12, 0x26, + 0x01, 0x82, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0x00, 0xca, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x3a, 0x11, 0x26, 0x01, 0x49, 0x3a, 0x3d, + 0x10, 0x06, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x6a, 0xfe, 0x58, 0x03, 0xee, 0x06, 0x07, 0x12, 0x26, + 0x01, 0x84, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0x01, 0x39, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x24, 0x11, 0x26, 0x01, 0x64, 0x24, 0x27, + 0x11, 0x22, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x89, 0x00, 0x00, 0x01, 0xb2, 0x06, 0x07, 0x12, 0x26, + 0x01, 0x86, 0x00, 0x00, 0x11, 0x06, 0x01, 0x54, 0xd1, 0x00, 0x00, 0x1b, + 0x40, 0x11, 0x01, 0x0e, 0x11, 0x26, 0x01, 0x10, 0x0e, 0x01, 0x00, 0x0e, + 0x01, 0x1d, 0x0e, 0x11, 0x05, 0x0d, 0x25, 0x01, 0x2b, 0x5d, 0x5d, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x85, 0xff, 0xec, 0x03, 0xfe, + 0x06, 0x41, 0x12, 0x26, 0x01, 0x92, 0x00, 0x00, 0x11, 0x07, 0x01, 0x55, + 0x00, 0xde, 0x00, 0x00, 0x00, 0x1e, 0x40, 0x09, 0x03, 0x02, 0x01, 0x20, + 0x11, 0x26, 0x03, 0x02, 0x01, 0xb8, 0xff, 0xf1, 0xb4, 0x26, 0x2c, 0x0a, + 0x00, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x35, + 0x00, 0x02, 0x00, 0x56, 0xff, 0xec, 0x04, 0x65, 0x04, 0x4e, 0x00, 0x27, + 0x00, 0x3b, 0x01, 0x0f, 0x40, 0xc4, 0x7a, 0x30, 0x8a, 0x30, 0x02, 0x79, + 0x34, 0x89, 0x34, 0x02, 0x65, 0x2b, 0x01, 0x5a, 0x3a, 0x6a, 0x3a, 0x02, + 0x36, 0x0e, 0x46, 0x0e, 0x02, 0x1d, 0x1f, 0x2d, 0x1f, 0x02, 0x1d, 0x26, + 0x2d, 0x26, 0x02, 0x2f, 0x25, 0x01, 0x1d, 0x25, 0x01, 0x4b, 0x24, 0x6b, + 0x24, 0x02, 0x2f, 0x24, 0x3f, 0x24, 0x02, 0x1d, 0x24, 0x01, 0x8b, 0x23, + 0x01, 0x2f, 0x23, 0x01, 0x1d, 0x23, 0x01, 0x2f, 0x22, 0x01, 0x1d, 0x22, + 0x01, 0x2f, 0x16, 0x01, 0x1b, 0x16, 0x01, 0x2f, 0x15, 0x01, 0x1b, 0x15, + 0x01, 0x4b, 0x14, 0x6b, 0x14, 0x02, 0x2f, 0x14, 0x01, 0x1b, 0x14, 0x01, + 0x2d, 0x13, 0x01, 0x1b, 0x13, 0x01, 0x79, 0x06, 0x89, 0x06, 0x02, 0x0b, + 0x06, 0x1b, 0x06, 0x02, 0x22, 0x30, 0x12, 0x16, 0x48, 0x22, 0x21, 0x16, + 0x30, 0x12, 0x16, 0x48, 0x16, 0x17, 0x1a, 0x21, 0x2a, 0x21, 0x02, 0x49, + 0x17, 0x01, 0x1a, 0x17, 0x2a, 0x17, 0x02, 0x21, 0x17, 0x9f, 0x1c, 0xaf, + 0x1c, 0xbf, 0x1c, 0x03, 0x1c, 0x40, 0x1d, 0x21, 0x48, 0x1c, 0x40, 0x00, + 0x10, 0x16, 0x22, 0x04, 0x90, 0x32, 0xa0, 0x32, 0xb0, 0x32, 0x03, 0x7f, + 0x32, 0x01, 0x20, 0x32, 0x40, 0x32, 0x02, 0x32, 0x3d, 0x80, 0x28, 0x47, + 0x08, 0x10, 0x3d, 0x01, 0x00, 0x32, 0x1c, 0x10, 0x04, 0x17, 0x21, 0x15, + 0x17, 0x0f, 0x37, 0x50, 0x0b, 0x10, 0x2d, 0x50, 0x05, 0x16, 0x00, 0x3f, + 0xed, 0x3f, 0xed, 0x3f, 0x3f, 0x12, 0x17, 0x39, 0x01, 0x5d, 0x2f, 0xed, + 0x1a, 0x10, 0xdc, 0x5d, 0x5d, 0x5d, 0x17, 0x32, 0x1a, 0xcd, 0x2b, 0x5d, + 0x32, 0x32, 0x5d, 0x5d, 0x5d, 0x11, 0x33, 0x2b, 0x11, 0x33, 0x2b, 0x31, + 0x30, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x25, + 0x0e, 0x03, 0x23, 0x22, 0x02, 0x11, 0x10, 0x12, 0x33, 0x32, 0x1e, 0x02, + 0x17, 0x33, 0x3e, 0x03, 0x37, 0x33, 0x0e, 0x03, 0x07, 0x1e, 0x03, 0x17, + 0x23, 0x2e, 0x03, 0x27, 0x01, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, + 0x37, 0x2e, 0x03, 0x23, 0x22, 0x0e, 0x02, 0x03, 0x4b, 0x1a, 0x41, 0x57, + 0x6f, 0x46, 0xcd, 0xc1, 0xd9, 0xd1, 0x45, 0x70, 0x56, 0x3f, 0x14, 0x02, + 0x04, 0x0e, 0x13, 0x17, 0x0d, 0xbc, 0x16, 0x2e, 0x27, 0x1e, 0x05, 0x03, + 0x17, 0x1f, 0x24, 0x12, 0xb7, 0x0b, 0x15, 0x10, 0x0d, 0x03, 0xfd, 0xc4, + 0x1c, 0x3b, 0x5d, 0x42, 0x36, 0x64, 0x52, 0x3d, 0x0e, 0x0c, 0x2d, 0x47, + 0x66, 0x46, 0x42, 0x60, 0x40, 0x1f, 0xed, 0x38, 0x5e, 0x45, 0x26, 0x01, + 0x14, 0x01, 0x18, 0x01, 0x1c, 0x01, 0x1a, 0x27, 0x45, 0x5d, 0x36, 0x15, + 0x38, 0x3f, 0x41, 0x1e, 0x2f, 0x80, 0x8b, 0x8b, 0x3a, 0x67, 0xaf, 0x90, + 0x6e, 0x27, 0x1c, 0x42, 0x41, 0x3a, 0x14, 0x01, 0x31, 0x70, 0xa0, 0x67, + 0x30, 0x34, 0x6b, 0xa0, 0x6c, 0x56, 0x9a, 0x73, 0x44, 0x2e, 0x66, 0xa3, + 0x00, 0x02, 0x00, 0x8e, 0xfe, 0x57, 0x04, 0x49, 0x05, 0xcc, 0x00, 0x20, + 0x00, 0x3e, 0x00, 0xb9, 0x40, 0x44, 0x95, 0x14, 0x01, 0x9a, 0x10, 0x01, + 0x7b, 0x07, 0x8b, 0x07, 0x02, 0x7a, 0x3c, 0x8a, 0x3c, 0x02, 0x6a, 0x03, + 0x7a, 0x03, 0x8a, 0x03, 0x03, 0x66, 0x1f, 0x76, 0x1f, 0x02, 0x4a, 0x32, + 0x5a, 0x32, 0x6a, 0x32, 0x03, 0x15, 0x02, 0x25, 0x02, 0x65, 0x02, 0x75, + 0x02, 0x85, 0x02, 0x05, 0x93, 0x15, 0x01, 0x15, 0x15, 0x25, 0x15, 0x02, + 0x1c, 0x30, 0x17, 0x48, 0x34, 0x30, 0x30, 0x40, 0x30, 0x02, 0x60, 0x30, + 0x01, 0x30, 0xb8, 0xff, 0xc0, 0x40, 0x3a, 0x14, 0x17, 0x48, 0x30, 0x34, + 0x30, 0x34, 0x0e, 0x00, 0x48, 0x40, 0x30, 0x2b, 0x40, 0x2b, 0xa0, 0x2b, + 0x03, 0xa0, 0x2b, 0xb0, 0x2b, 0xc0, 0x2b, 0x03, 0x2b, 0x40, 0x80, 0x21, + 0x0d, 0x46, 0x00, 0x0e, 0x10, 0x0e, 0x30, 0x0e, 0x03, 0x08, 0x0e, 0x1c, + 0x30, 0x50, 0x31, 0x31, 0x26, 0x39, 0x50, 0x12, 0x00, 0x0d, 0x1b, 0x21, + 0x26, 0x50, 0x09, 0x05, 0x16, 0x00, 0x3f, 0x33, 0xed, 0x32, 0x3f, 0x3f, + 0xed, 0x12, 0x39, 0x2f, 0xed, 0x39, 0x01, 0x2f, 0x5e, 0x5d, 0xed, 0x32, + 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x12, 0x39, 0x39, 0x2f, 0x2f, + 0x2b, 0x5d, 0x71, 0x10, 0xed, 0x11, 0x39, 0x31, 0x30, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x01, 0x14, 0x0e, + 0x02, 0x23, 0x22, 0x26, 0x27, 0x23, 0x1e, 0x01, 0x15, 0x11, 0x23, 0x11, + 0x34, 0x36, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x1e, + 0x03, 0x01, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, + 0x23, 0x35, 0x3e, 0x01, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, + 0x15, 0x04, 0x49, 0x35, 0x6f, 0xad, 0x78, 0x66, 0xa0, 0x38, 0x06, 0x03, + 0x03, 0xb4, 0xe4, 0xe2, 0x63, 0x98, 0x66, 0x35, 0x23, 0x3d, 0x51, 0x2e, + 0x39, 0x72, 0x5b, 0x38, 0xfc, 0xf9, 0x1c, 0x47, 0x51, 0x57, 0x2b, 0x48, + 0x6e, 0x49, 0x26, 0x26, 0x51, 0x80, 0x59, 0x7f, 0x71, 0x1b, 0x39, 0x57, + 0x3c, 0x46, 0x68, 0x44, 0x22, 0x01, 0x95, 0x59, 0x9a, 0x74, 0x42, 0x37, + 0x27, 0x39, 0x5c, 0x35, 0xfe, 0xd7, 0x05, 0xac, 0xed, 0xdc, 0x2f, 0x5a, + 0x82, 0x52, 0x49, 0x6f, 0x52, 0x38, 0x12, 0x0b, 0x37, 0x5d, 0x89, 0xfe, + 0xda, 0x13, 0x22, 0x19, 0x0e, 0x29, 0x4c, 0x6a, 0x42, 0x41, 0x6e, 0x51, + 0x2d, 0x8e, 0x1b, 0x8b, 0x7a, 0x2c, 0x4d, 0x39, 0x20, 0x23, 0x4d, 0x7a, + 0x58, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x07, 0xfe, 0x58, 0x03, 0xf9, + 0x04, 0x3a, 0x00, 0x18, 0x00, 0xed, 0x40, 0x3b, 0x3b, 0x16, 0x4b, 0x16, + 0x02, 0x29, 0x16, 0x01, 0x3b, 0x15, 0x4b, 0x15, 0x02, 0x1a, 0x15, 0x2a, + 0x15, 0x02, 0x09, 0x15, 0x01, 0x2a, 0x0c, 0x3a, 0x0c, 0x4a, 0x0c, 0x03, + 0x19, 0x0c, 0x01, 0x4d, 0x0d, 0x01, 0x0d, 0x10, 0x0d, 0x10, 0x48, 0x42, + 0x02, 0x01, 0x36, 0x02, 0x01, 0x22, 0x02, 0x01, 0x06, 0x02, 0x16, 0x02, + 0x02, 0x0d, 0x02, 0x01, 0x01, 0x11, 0x01, 0xb8, 0xff, 0xf0, 0x40, 0x4c, + 0x0d, 0x10, 0x48, 0x18, 0x0f, 0x07, 0x07, 0x0d, 0x0e, 0x10, 0x0f, 0x0e, + 0x2f, 0x0e, 0x02, 0x39, 0x1f, 0x0e, 0x3f, 0x0e, 0x5f, 0x0e, 0x7f, 0x0e, + 0x9f, 0x0e, 0xbf, 0x0e, 0xdf, 0x0e, 0xff, 0x0e, 0x08, 0x3f, 0x0e, 0x7f, + 0x0e, 0x9f, 0x0e, 0xbf, 0x0e, 0xdf, 0x0e, 0xff, 0x0e, 0x06, 0x00, 0x0e, + 0x20, 0x0e, 0x02, 0xe0, 0x0e, 0x01, 0xbf, 0x0e, 0x01, 0xa0, 0x0e, 0x01, + 0x5f, 0x0e, 0x9f, 0x0e, 0x02, 0x00, 0x0e, 0x10, 0x0e, 0x40, 0x0e, 0x03, + 0x08, 0x0e, 0x01, 0x00, 0xb8, 0xff, 0xf0, 0x40, 0x11, 0x7f, 0x00, 0x01, + 0x00, 0x40, 0x1a, 0x01, 0x00, 0x1a, 0x30, 0x1a, 0x60, 0x1a, 0x90, 0x1a, + 0x04, 0x1a, 0xb8, 0xff, 0xc0, 0x40, 0x0e, 0x15, 0x1a, 0x48, 0x07, 0x0f, + 0x18, 0x03, 0x19, 0x14, 0x1b, 0x0d, 0x0d, 0x00, 0x0f, 0x00, 0x3f, 0x32, + 0x2f, 0x3f, 0x11, 0x17, 0x33, 0x01, 0x2b, 0x5d, 0x71, 0x2f, 0x5d, 0x38, + 0x32, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x72, 0x5e, + 0x5d, 0x38, 0x33, 0x39, 0x3d, 0x2f, 0x33, 0x33, 0x31, 0x30, 0x2b, 0x5e, + 0x5d, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x13, 0x33, 0x13, 0x1e, 0x03, 0x17, 0x3e, 0x03, 0x37, + 0x13, 0x33, 0x01, 0x0e, 0x03, 0x07, 0x23, 0x3e, 0x01, 0x37, 0x07, 0xc0, + 0xf5, 0x07, 0x15, 0x14, 0x11, 0x04, 0x05, 0x12, 0x15, 0x16, 0x08, 0xef, + 0xbf, 0xfe, 0x7a, 0x11, 0x1f, 0x1b, 0x17, 0x07, 0xbf, 0x11, 0x30, 0x18, + 0x04, 0x3a, 0xfd, 0x5d, 0x16, 0x3f, 0x43, 0x3f, 0x16, 0x15, 0x3e, 0x43, + 0x3f, 0x16, 0x02, 0xa5, 0xfb, 0xfb, 0x2d, 0x6f, 0x7c, 0x84, 0x41, 0x83, + 0xd5, 0x5b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x56, 0xff, 0xec, 0x04, 0x1d, + 0x05, 0xcc, 0x00, 0x13, 0x00, 0x32, 0x00, 0x9c, 0x40, 0x51, 0x73, 0x1c, + 0x83, 0x1c, 0x02, 0x6a, 0x1c, 0x01, 0x76, 0x2e, 0x86, 0x2e, 0x02, 0x6a, + 0x2e, 0x01, 0x5a, 0x02, 0x6a, 0x02, 0x02, 0x5a, 0x11, 0x6a, 0x11, 0x02, + 0x55, 0x0d, 0x65, 0x0d, 0x02, 0x72, 0x1a, 0x82, 0x1a, 0x02, 0x26, 0x1a, + 0x01, 0x80, 0x19, 0x01, 0x72, 0x19, 0x01, 0x33, 0x19, 0x43, 0x19, 0x02, + 0x32, 0x32, 0x1f, 0x47, 0x00, 0x40, 0x19, 0x2e, 0x05, 0x2f, 0x2f, 0x29, + 0x1f, 0x00, 0x01, 0x90, 0x00, 0x01, 0x00, 0x34, 0x80, 0x0a, 0x47, 0x1f, + 0x29, 0x01, 0x29, 0x2f, 0x14, 0x50, 0x05, 0xb8, 0xff, 0xe0, 0x40, 0x16, + 0x17, 0x1c, 0x48, 0x05, 0x18, 0x12, 0x16, 0x48, 0x6f, 0x05, 0x01, 0x5a, + 0x05, 0x01, 0x05, 0x2e, 0x30, 0x00, 0x0f, 0x50, 0x24, 0x16, 0x00, 0x3f, + 0xed, 0x3f, 0x39, 0x39, 0x5d, 0x5d, 0x2b, 0x2b, 0xed, 0x32, 0x01, 0x2f, + 0x5d, 0xed, 0x1a, 0x10, 0xcc, 0x5d, 0x71, 0x11, 0x39, 0x2f, 0x39, 0x39, + 0x33, 0x1a, 0x10, 0xed, 0x32, 0x2f, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x34, 0x2e, 0x02, + 0x27, 0x0e, 0x03, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x01, + 0x22, 0x2e, 0x02, 0x27, 0x01, 0x1e, 0x03, 0x15, 0x14, 0x0e, 0x02, 0x23, + 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x37, 0x01, 0x35, 0x21, 0x15, + 0x03, 0x60, 0x31, 0x45, 0x4c, 0x1a, 0x49, 0x86, 0x66, 0x3c, 0x23, 0x49, + 0x6f, 0x4d, 0x51, 0x70, 0x45, 0x1f, 0xfe, 0xff, 0x0d, 0x2a, 0x2d, 0x29, + 0x0d, 0x01, 0x3c, 0x36, 0x66, 0x4f, 0x31, 0x40, 0x7b, 0xb4, 0x73, 0x72, + 0xb4, 0x7d, 0x42, 0x49, 0x7f, 0xa9, 0x60, 0xfe, 0xc1, 0x02, 0xdd, 0x01, + 0xd7, 0x55, 0x91, 0x73, 0x56, 0x1b, 0x1a, 0x51, 0x72, 0x92, 0x5b, 0x4c, + 0x83, 0x60, 0x37, 0x36, 0x5f, 0x83, 0x03, 0xbf, 0x02, 0x03, 0x02, 0x01, + 0xfe, 0xbc, 0x37, 0x74, 0x86, 0x9f, 0x61, 0x6e, 0xb6, 0x83, 0x48, 0x44, + 0x7f, 0xb7, 0x73, 0x70, 0xb0, 0x87, 0x61, 0x21, 0x01, 0x53, 0x77, 0x84, + 0x00, 0x01, 0x00, 0x46, 0xff, 0xec, 0x03, 0x6a, 0x04, 0x4e, 0x00, 0x39, + 0x00, 0xb3, 0x40, 0x31, 0x8c, 0x25, 0x01, 0x85, 0x03, 0x01, 0x35, 0x24, + 0x45, 0x24, 0x02, 0x37, 0x22, 0x01, 0x2a, 0x08, 0x01, 0x25, 0x05, 0x01, + 0x0e, 0x18, 0x09, 0x0c, 0x48, 0x0a, 0x1d, 0x1a, 0x1d, 0x2a, 0x1d, 0x03, + 0x2a, 0x46, 0x15, 0x30, 0x1b, 0x30, 0x1b, 0x30, 0x10, 0x23, 0x23, 0x06, + 0x40, 0x25, 0x30, 0x48, 0x06, 0xb8, 0xff, 0xc0, 0xb3, 0x0e, 0x11, 0x48, + 0x06, 0xb8, 0xff, 0xc0, 0x40, 0x42, 0x08, 0x0b, 0x48, 0x06, 0x3b, 0x35, + 0x47, 0x1f, 0x10, 0x3f, 0x10, 0x4f, 0x10, 0x5f, 0x10, 0x04, 0x10, 0x40, + 0x25, 0x2b, 0x48, 0x10, 0x80, 0x3b, 0x01, 0x1f, 0x3b, 0x5f, 0x3b, 0x02, + 0x15, 0x30, 0x50, 0x0f, 0x2f, 0x1f, 0x2f, 0x4f, 0x2f, 0x5f, 0x2f, 0xaf, + 0x2f, 0xdf, 0x2f, 0xef, 0x2f, 0x07, 0xbf, 0x2f, 0xcf, 0x2f, 0x02, 0x2f, + 0x2f, 0x00, 0x27, 0x50, 0x24, 0x20, 0x10, 0x00, 0x50, 0x05, 0x0b, 0x16, + 0x00, 0x3f, 0x33, 0xed, 0x3f, 0x33, 0xed, 0x12, 0x39, 0x2f, 0x5d, 0x71, + 0xed, 0x39, 0x01, 0x5d, 0x71, 0x2f, 0x2b, 0x5d, 0xed, 0x10, 0xc6, 0x2b, + 0x2b, 0x2b, 0x32, 0x2f, 0x11, 0x39, 0x39, 0x2f, 0x2f, 0x12, 0x39, 0xed, + 0x31, 0x30, 0x5d, 0x2b, 0x00, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, + 0x5d, 0x25, 0x32, 0x3e, 0x02, 0x37, 0x17, 0x0e, 0x03, 0x23, 0x22, 0x2e, + 0x02, 0x35, 0x34, 0x3e, 0x02, 0x37, 0x35, 0x2e, 0x03, 0x35, 0x34, 0x3e, + 0x02, 0x33, 0x32, 0x16, 0x17, 0x07, 0x2e, 0x01, 0x23, 0x22, 0x06, 0x15, + 0x14, 0x1e, 0x02, 0x33, 0x15, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, + 0x01, 0xc8, 0x36, 0x60, 0x4f, 0x3f, 0x15, 0x69, 0x20, 0x54, 0x6a, 0x82, + 0x4e, 0x60, 0x8d, 0x5c, 0x2d, 0x2a, 0x48, 0x60, 0x36, 0x33, 0x55, 0x3d, + 0x22, 0x32, 0x5f, 0x88, 0x57, 0x76, 0xbf, 0x43, 0x80, 0x2f, 0x7d, 0x4b, + 0x5b, 0x60, 0x37, 0x61, 0x83, 0x4b, 0x48, 0x8b, 0x6d, 0x42, 0x1d, 0x34, + 0x4a, 0x72, 0x1f, 0x30, 0x38, 0x1a, 0x64, 0x27, 0x47, 0x35, 0x20, 0x2e, + 0x54, 0x74, 0x45, 0x3a, 0x5f, 0x45, 0x2a, 0x05, 0x02, 0x06, 0x28, 0x40, + 0x56, 0x33, 0x3e, 0x6a, 0x4d, 0x2c, 0x56, 0x63, 0x58, 0x47, 0x44, 0x55, + 0x4a, 0x39, 0x46, 0x25, 0x0c, 0x87, 0x0b, 0x28, 0x50, 0x45, 0x2d, 0x45, + 0x2e, 0x18, 0x00, 0x00, 0x00, 0x01, 0x00, 0x56, 0xfe, 0x9f, 0x03, 0x60, + 0x05, 0xcc, 0x00, 0x38, 0x00, 0xd1, 0x40, 0x75, 0xa9, 0x26, 0x01, 0x9c, + 0x1d, 0xac, 0x1d, 0x02, 0x95, 0x37, 0xa5, 0x37, 0x02, 0xad, 0x27, 0x01, + 0x7c, 0x27, 0x8c, 0x27, 0x9c, 0x27, 0x03, 0x75, 0x08, 0x01, 0x73, 0x02, + 0x01, 0x64, 0x24, 0x84, 0x24, 0x94, 0x24, 0xa4, 0x24, 0x04, 0x8b, 0x18, + 0x9b, 0x18, 0xab, 0x18, 0x03, 0x39, 0x18, 0x01, 0x2c, 0x1f, 0x9c, 0x1f, + 0xac, 0x1f, 0x03, 0x2c, 0x1e, 0x3c, 0x1e, 0x4c, 0x1e, 0x03, 0x64, 0x36, + 0x84, 0x36, 0xa4, 0x36, 0x03, 0x26, 0x36, 0x56, 0x36, 0x02, 0xf0, 0x2f, + 0x01, 0x2f, 0x2f, 0x15, 0x00, 0x47, 0x21, 0x28, 0x32, 0x32, 0x0a, 0x1f, + 0x15, 0x4f, 0x15, 0x02, 0xbf, 0x15, 0x01, 0x15, 0x40, 0x1d, 0x21, 0x48, + 0x00, 0x15, 0x10, 0x15, 0x20, 0x15, 0x40, 0x15, 0x04, 0x07, 0x15, 0x32, + 0x2f, 0x50, 0x05, 0x1a, 0x00, 0xb8, 0xff, 0xf0, 0x40, 0x1f, 0x13, 0x16, + 0x48, 0x87, 0x00, 0x97, 0x00, 0x02, 0xda, 0x21, 0x01, 0xa9, 0x21, 0xb9, + 0x21, 0xc9, 0x21, 0x03, 0x88, 0x21, 0x98, 0x21, 0x02, 0x1a, 0x21, 0x00, + 0x03, 0x0f, 0x30, 0x00, 0x0f, 0x00, 0x2f, 0x3f, 0x12, 0x17, 0x39, 0x5d, + 0x5d, 0x5d, 0x5d, 0x2b, 0x11, 0x33, 0xed, 0x32, 0x01, 0x2f, 0x5e, 0x5d, + 0x2b, 0x5d, 0x71, 0xcd, 0x32, 0x2f, 0x33, 0x2f, 0xed, 0x12, 0x39, 0x2f, + 0x71, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x5d, + 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x01, + 0x14, 0x1e, 0x02, 0x17, 0x1e, 0x03, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x27, + 0x3e, 0x03, 0x35, 0x34, 0x2e, 0x02, 0x27, 0x2e, 0x05, 0x35, 0x34, 0x3e, + 0x04, 0x37, 0x35, 0x0e, 0x03, 0x23, 0x21, 0x35, 0x21, 0x15, 0x0e, 0x05, + 0x01, 0x15, 0x2b, 0x4a, 0x64, 0x39, 0x36, 0x6f, 0x5a, 0x3a, 0x12, 0x1a, + 0x1d, 0x0a, 0x7e, 0x09, 0x13, 0x10, 0x0b, 0x24, 0x42, 0x5e, 0x39, 0x2a, + 0x59, 0x52, 0x49, 0x36, 0x1f, 0x31, 0x55, 0x71, 0x7f, 0x87, 0x40, 0x0c, + 0x22, 0x24, 0x22, 0x0b, 0xfe, 0xa7, 0x02, 0x82, 0x3e, 0x83, 0x7b, 0x6c, + 0x51, 0x2f, 0x01, 0x7b, 0x40, 0x4f, 0x31, 0x1f, 0x0f, 0x0f, 0x22, 0x39, + 0x58, 0x44, 0x22, 0x44, 0x3e, 0x33, 0x11, 0x38, 0x0c, 0x21, 0x26, 0x27, + 0x13, 0x22, 0x2d, 0x21, 0x19, 0x0d, 0x0a, 0x17, 0x24, 0x32, 0x4a, 0x64, + 0x43, 0x53, 0xb0, 0xb0, 0xaf, 0xa6, 0x9b, 0x44, 0x04, 0x01, 0x01, 0x01, + 0x01, 0x83, 0x7f, 0x46, 0x9d, 0xa6, 0xac, 0xab, 0xa6, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x6a, 0xfe, 0x58, 0x03, 0xee, 0x04, 0x4e, 0x00, 0x23, + 0x00, 0x64, 0xb9, 0x00, 0x20, 0xff, 0xe8, 0x40, 0x2e, 0x09, 0x0c, 0x48, + 0x23, 0x46, 0x40, 0x50, 0x00, 0x01, 0x9f, 0x00, 0xff, 0x00, 0x02, 0x00, + 0x25, 0x80, 0x17, 0x0c, 0x46, 0xc0, 0x0d, 0x01, 0x00, 0x0d, 0x10, 0x0d, + 0x30, 0x0d, 0xe0, 0x0d, 0xf0, 0x0d, 0x05, 0x08, 0x0d, 0xf0, 0x25, 0x01, + 0xff, 0x25, 0x01, 0x70, 0x25, 0x01, 0x25, 0xb8, 0xff, 0xc0, 0x40, 0x0e, + 0x13, 0x17, 0x48, 0x23, 0x1b, 0x17, 0x06, 0x50, 0x1d, 0x10, 0x11, 0x0f, + 0x0c, 0x15, 0x00, 0x3f, 0x3f, 0x3f, 0xed, 0x32, 0x3f, 0x01, 0x2b, 0x5d, + 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x5d, + 0x71, 0x1a, 0xed, 0x31, 0x30, 0x2b, 0x01, 0x11, 0x34, 0x2e, 0x02, 0x23, + 0x22, 0x0e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x34, 0x26, 0x27, 0x33, 0x1e, + 0x03, 0x15, 0x33, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, 0x03, + 0x39, 0x17, 0x34, 0x55, 0x3f, 0x40, 0x67, 0x49, 0x28, 0xb4, 0x16, 0x0e, + 0xaa, 0x09, 0x0e, 0x0a, 0x05, 0x03, 0x1a, 0x3e, 0x52, 0x6a, 0x46, 0x5a, + 0x82, 0x54, 0x27, 0xfe, 0x58, 0x04, 0x56, 0x4f, 0x6a, 0x41, 0x1b, 0x2d, + 0x55, 0x7d, 0x51, 0xfd, 0x8d, 0x03, 0x53, 0x44, 0x79, 0x2a, 0x15, 0x30, + 0x31, 0x2f, 0x14, 0x2f, 0x4c, 0x35, 0x1d, 0x2c, 0x5c, 0x91, 0x64, 0xfb, + 0x87, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x6a, 0xff, 0xec, 0x04, 0x09, + 0x05, 0xcb, 0x00, 0x0f, 0x00, 0x1a, 0x00, 0x25, 0x00, 0xc2, 0x40, 0x6c, + 0x99, 0x13, 0xa9, 0x13, 0x02, 0x96, 0x18, 0xa6, 0x18, 0x02, 0x8a, 0x02, + 0x01, 0x85, 0x05, 0x01, 0x8a, 0x0e, 0x01, 0x85, 0x0a, 0x01, 0x7c, 0x24, + 0x8c, 0x24, 0x02, 0x73, 0x1d, 0x83, 0x1d, 0x02, 0x55, 0x1d, 0x65, 0x1d, + 0x02, 0x7c, 0x12, 0x8c, 0x12, 0x02, 0x4a, 0x12, 0x5a, 0x12, 0x6a, 0x12, + 0x03, 0x73, 0x19, 0x83, 0x19, 0x02, 0x45, 0x19, 0x55, 0x19, 0x65, 0x19, + 0x03, 0x06, 0x0d, 0x16, 0x0d, 0x02, 0x06, 0x0a, 0x01, 0x09, 0x05, 0x01, + 0x09, 0x02, 0x01, 0x07, 0x21, 0x00, 0x47, 0x40, 0x0f, 0x15, 0x1f, 0x15, + 0x7f, 0x15, 0x8f, 0x15, 0xef, 0x15, 0xff, 0x15, 0x06, 0x15, 0x40, 0x2d, + 0x30, 0x48, 0x15, 0x27, 0x80, 0x20, 0x16, 0x47, 0x20, 0x08, 0x01, 0x08, + 0xb8, 0xff, 0xc0, 0xb7, 0x1d, 0x23, 0x48, 0x08, 0x30, 0x27, 0x01, 0x27, + 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x1e, 0x23, 0x48, 0xdf, 0x27, 0x01, 0x16, + 0x50, 0x20, 0x20, 0x10, 0x1b, 0x50, 0x0b, 0x00, 0x10, 0x50, 0x03, 0x16, + 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x5d, 0x2b, + 0x71, 0x2f, 0x2b, 0x5d, 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x2b, 0x71, 0x1a, + 0xed, 0x33, 0x31, 0x30, 0x00, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x01, 0x10, 0x02, 0x23, 0x22, 0x2e, 0x01, 0x02, 0x35, 0x10, 0x12, 0x33, + 0x32, 0x1e, 0x01, 0x12, 0x01, 0x32, 0x3e, 0x02, 0x37, 0x21, 0x1e, 0x03, + 0x13, 0x22, 0x0e, 0x02, 0x07, 0x21, 0x2e, 0x03, 0x04, 0x09, 0xf0, 0xe4, + 0x6c, 0xab, 0x76, 0x3e, 0xe9, 0xe8, 0x79, 0xaf, 0x70, 0x36, 0xfe, 0x2a, + 0x3e, 0x64, 0x49, 0x2a, 0x03, 0xfd, 0xdd, 0x03, 0x2c, 0x47, 0x5e, 0x42, + 0x3e, 0x63, 0x48, 0x2a, 0x03, 0x02, 0x23, 0x03, 0x28, 0x45, 0x61, 0x02, + 0xdd, 0xfe, 0x83, 0xfe, 0x8c, 0x5c, 0xba, 0x01, 0x1b, 0xc0, 0x01, 0x75, + 0x01, 0x79, 0x5d, 0xbc, 0xfe, 0xe7, 0xfc, 0xd8, 0x34, 0x80, 0xd8, 0xa4, + 0xa4, 0xd7, 0x81, 0x34, 0x04, 0xd9, 0x33, 0x7e, 0xd4, 0xa1, 0xa1, 0xd4, + 0x7e, 0x33, 0x00, 0x00, 0x00, 0x01, 0x00, 0x89, 0x00, 0x00, 0x01, 0x8d, + 0x04, 0x3a, 0x00, 0x0d, 0x01, 0x0d, 0x40, 0xd2, 0x0d, 0x08, 0x46, 0xcf, + 0x05, 0xdf, 0x05, 0x02, 0x00, 0x05, 0x20, 0x05, 0xd0, 0x05, 0x03, 0x09, + 0x05, 0x05, 0x0e, 0x0f, 0x5f, 0x0f, 0x6f, 0x0f, 0x02, 0x20, 0x0f, 0x01, + 0xe0, 0x0f, 0xf0, 0x0f, 0x02, 0x6f, 0x0f, 0x7f, 0x0f, 0x8f, 0x0f, 0x03, + 0x00, 0x0f, 0x10, 0x0f, 0x20, 0x0f, 0x03, 0xcd, 0xcf, 0x0f, 0xdf, 0x0f, + 0xef, 0x0f, 0x03, 0x60, 0x0f, 0x01, 0x7f, 0x0f, 0xcf, 0x0f, 0x02, 0x40, + 0x0f, 0x50, 0x0f, 0x02, 0xaf, 0x0f, 0xdf, 0x0f, 0xef, 0x0f, 0x03, 0x60, + 0x0f, 0x70, 0x0f, 0x02, 0x0f, 0x0f, 0x1f, 0x0f, 0x02, 0x9a, 0xff, 0x0f, + 0x01, 0xd0, 0x0f, 0xe0, 0x0f, 0x02, 0x3f, 0x0f, 0x01, 0x9f, 0x0f, 0xaf, + 0x0f, 0x02, 0x70, 0x0f, 0x01, 0xdf, 0x0f, 0x01, 0x90, 0x0f, 0x01, 0x3f, + 0x0f, 0x4f, 0x0f, 0x02, 0x00, 0x0f, 0x01, 0x6a, 0x9f, 0x0f, 0xdf, 0x0f, + 0xef, 0x0f, 0x03, 0x60, 0x0f, 0x70, 0x0f, 0x02, 0x0f, 0x0f, 0x01, 0xef, + 0x0f, 0xff, 0x0f, 0x02, 0x80, 0x0f, 0xd0, 0x0f, 0x02, 0x3f, 0x0f, 0x01, + 0x60, 0x0f, 0x01, 0x0f, 0x0f, 0x1f, 0x0f, 0x02, 0x37, 0xcf, 0x0f, 0xff, + 0x0f, 0x02, 0x90, 0x0f, 0xa0, 0x0f, 0xb0, 0x0f, 0x03, 0x1f, 0x0f, 0x2f, + 0x0f, 0x3f, 0x0f, 0x03, 0xb0, 0x0f, 0xc0, 0x0f, 0xd0, 0x0f, 0x03, 0x0f, + 0x0f, 0x1f, 0x0f, 0x6f, 0x0f, 0x03, 0x90, 0x0f, 0xa0, 0x0f, 0xe0, 0x0f, + 0x03, 0x1f, 0x0f, 0x3f, 0x0f, 0x02, 0x00, 0x0f, 0x01, 0x07, 0x06, 0x0f, + 0x00, 0x15, 0x00, 0x3f, 0x3f, 0x01, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x72, 0x72, 0x72, 0x5e, 0x5d, + 0x5d, 0x5d, 0x71, 0x71, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x11, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x32, 0x31, 0x30, 0x33, + 0x2e, 0x03, 0x35, 0x11, 0x33, 0x11, 0x14, 0x1e, 0x02, 0x17, 0xc7, 0x0f, + 0x18, 0x0f, 0x08, 0xb4, 0x0b, 0x15, 0x1e, 0x12, 0x10, 0x35, 0x40, 0x46, + 0x21, 0x03, 0x4e, 0xfc, 0xa9, 0x20, 0x40, 0x3c, 0x34, 0x13, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x8a, 0x00, 0x00, 0x04, 0x03, 0x04, 0x3a, 0x00, 0x0b, + 0x00, 0x9e, 0x40, 0x72, 0x94, 0x09, 0xa4, 0x09, 0x02, 0x66, 0x09, 0x76, + 0x09, 0x86, 0x09, 0x03, 0xac, 0x00, 0x01, 0x8b, 0x00, 0x9b, 0x00, 0x02, + 0x69, 0x00, 0x79, 0x00, 0x02, 0x56, 0x0a, 0x96, 0x0a, 0xa6, 0x0a, 0x03, + 0x97, 0x0a, 0xa7, 0x0a, 0x02, 0x54, 0x0a, 0x01, 0x46, 0x07, 0x86, 0x07, + 0x02, 0x01, 0x0a, 0xf7, 0x08, 0x01, 0x08, 0x0a, 0x09, 0x10, 0x09, 0x09, + 0x00, 0x0b, 0x10, 0x00, 0x0b, 0xa0, 0x0b, 0x02, 0x00, 0x0b, 0x10, 0x0b, + 0x20, 0x0b, 0x40, 0x0b, 0xa0, 0x0b, 0xe0, 0x0b, 0x06, 0x07, 0x0b, 0x07, + 0x03, 0x46, 0x00, 0x04, 0x10, 0x04, 0x30, 0x04, 0xf0, 0x04, 0x04, 0x08, + 0x04, 0x80, 0x0d, 0xc0, 0x0d, 0xe0, 0x0d, 0x03, 0x3f, 0x0d, 0x01, 0x02, + 0x01, 0x07, 0x0a, 0x04, 0x08, 0x05, 0x0f, 0x04, 0x00, 0x15, 0x00, 0x3f, + 0x32, 0x3f, 0x33, 0x17, 0x39, 0x01, 0x5d, 0x5d, 0x2f, 0x5e, 0x5d, 0xed, + 0x32, 0x2f, 0x5e, 0x5d, 0x71, 0x38, 0x33, 0x39, 0x2f, 0x38, 0x39, 0x33, + 0x71, 0x11, 0x33, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x21, 0x01, 0x07, 0x11, 0x23, 0x11, 0x33, 0x11, + 0x01, 0x33, 0x09, 0x01, 0x03, 0x30, 0xfe, 0x92, 0x84, 0xb4, 0xb4, 0x01, + 0xdb, 0xd3, 0xfe, 0x49, 0x01, 0xce, 0x01, 0xee, 0x6d, 0xfe, 0x7f, 0x04, + 0x3a, 0xfd, 0xf3, 0x02, 0x0d, 0xfe, 0x2f, 0xfd, 0x97, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x0e, 0x00, 0x00, 0x03, 0xee, 0x05, 0xcc, 0x00, 0x21, + 0x01, 0x3c, 0x40, 0x65, 0x95, 0x0f, 0x01, 0x9d, 0x17, 0x01, 0x8a, 0x02, + 0x01, 0x89, 0x01, 0x01, 0x89, 0x19, 0x99, 0x19, 0x02, 0x8c, 0x15, 0x9c, + 0x15, 0x02, 0x73, 0x00, 0x83, 0x00, 0x93, 0x00, 0x03, 0x8c, 0x14, 0x9c, + 0x14, 0x02, 0x6a, 0x14, 0x7a, 0x14, 0x02, 0x92, 0x20, 0x01, 0x84, 0x20, + 0x01, 0x65, 0x20, 0x75, 0x20, 0x02, 0x03, 0x66, 0x1a, 0x76, 0x1a, 0x96, + 0x1a, 0x03, 0x8d, 0x1a, 0x9d, 0x1a, 0x02, 0x02, 0x7e, 0x1a, 0x01, 0x6c, + 0x1a, 0x01, 0x03, 0x54, 0x12, 0x01, 0x94, 0x1f, 0x01, 0x65, 0x1f, 0x75, + 0x1f, 0x85, 0x1f, 0x03, 0x56, 0x1f, 0x01, 0x92, 0x1d, 0x01, 0x02, 0x80, + 0x1d, 0x01, 0x54, 0x1d, 0x01, 0x90, 0x1c, 0x01, 0x1c, 0xb8, 0xff, 0xe0, + 0x40, 0x3b, 0x0d, 0x10, 0x48, 0x92, 0x1b, 0x01, 0x54, 0x1b, 0x64, 0x1b, + 0x74, 0x1b, 0x03, 0x5d, 0x00, 0x6d, 0x00, 0x02, 0x95, 0x11, 0x01, 0x49, + 0x11, 0x01, 0x96, 0x12, 0x01, 0x8a, 0x12, 0x01, 0x65, 0x12, 0x75, 0x12, + 0x02, 0x26, 0x12, 0x56, 0x12, 0x02, 0x2a, 0x03, 0x3a, 0x03, 0x4a, 0x03, + 0x7a, 0x03, 0x8a, 0x03, 0x05, 0x1a, 0x00, 0x14, 0x0a, 0x0a, 0x13, 0x20, + 0x21, 0xb8, 0xff, 0xf0, 0x40, 0x45, 0x21, 0x14, 0x13, 0x10, 0x1f, 0x13, + 0x3f, 0x13, 0x02, 0x1f, 0x13, 0x3f, 0x13, 0x5f, 0x13, 0x7f, 0x13, 0x9f, + 0x13, 0xbf, 0x13, 0xdf, 0x13, 0xff, 0x13, 0x08, 0xdf, 0x13, 0xff, 0x13, + 0x02, 0xc0, 0x13, 0x01, 0x5f, 0x13, 0x9f, 0x13, 0x02, 0x00, 0x13, 0x10, + 0x13, 0x40, 0x13, 0x03, 0x08, 0x13, 0x00, 0x23, 0x30, 0x23, 0x60, 0x23, + 0xa0, 0x23, 0xb0, 0x23, 0x05, 0x1a, 0x00, 0x0d, 0x21, 0x13, 0x15, 0x06, + 0x50, 0x0d, 0x00, 0x00, 0x3f, 0xed, 0x3f, 0x33, 0x12, 0x39, 0x39, 0x01, + 0x5d, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x72, 0x38, 0x33, 0x2f, + 0x38, 0x33, 0x12, 0x39, 0x2f, 0x12, 0x39, 0x39, 0x31, 0x30, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x2b, 0x5d, + 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5f, 0x5d, 0x5d, + 0x5f, 0x5d, 0x01, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x27, 0x2e, 0x03, 0x23, 0x22, + 0x06, 0x07, 0x27, 0x3e, 0x01, 0x33, 0x32, 0x1e, 0x02, 0x17, 0x01, 0x23, + 0x03, 0x2e, 0x03, 0x27, 0x0e, 0x03, 0x07, 0x01, 0x23, 0x01, 0xcf, 0x24, + 0x1b, 0x2a, 0x2d, 0x39, 0x28, 0x0b, 0x20, 0x06, 0x23, 0x19, 0x48, 0x20, + 0x37, 0x57, 0x49, 0x43, 0x24, 0x01, 0xab, 0xbe, 0xcf, 0x08, 0x12, 0x12, + 0x10, 0x05, 0x07, 0x16, 0x19, 0x18, 0x08, 0xfe, 0xff, 0xbb, 0x03, 0xc5, + 0x63, 0x49, 0x69, 0x43, 0x1f, 0x07, 0x03, 0x82, 0x09, 0x0f, 0x24, 0x51, + 0x83, 0x5f, 0xfb, 0x8b, 0x02, 0x41, 0x16, 0x38, 0x3b, 0x38, 0x15, 0x15, + 0x3c, 0x3e, 0x37, 0x12, 0xfd, 0xc1, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8a, + 0xfe, 0x77, 0x04, 0x06, 0x04, 0x3a, 0x00, 0x29, 0x00, 0x6c, 0x40, 0x37, + 0x0d, 0x28, 0x0e, 0x11, 0x48, 0x5a, 0x08, 0x6a, 0x08, 0x02, 0x23, 0x46, + 0x05, 0x0f, 0x22, 0x5f, 0x22, 0x02, 0x9f, 0x22, 0xaf, 0x22, 0xff, 0x22, + 0x03, 0x00, 0x22, 0x10, 0x22, 0x20, 0x22, 0x03, 0x07, 0x22, 0x2b, 0x17, + 0x13, 0x46, 0x00, 0x14, 0x10, 0x14, 0x30, 0x14, 0xf0, 0x14, 0x04, 0x08, + 0x14, 0x60, 0x2b, 0x80, 0x2b, 0x02, 0x2b, 0xb8, 0xff, 0xc0, 0x40, 0x0f, + 0x14, 0x17, 0x48, 0x29, 0x15, 0x22, 0x15, 0x0f, 0x13, 0x05, 0x1c, 0x50, + 0x0e, 0x0b, 0x16, 0x00, 0x3f, 0x33, 0xed, 0x32, 0x2f, 0x3f, 0x33, 0x3f, + 0x01, 0x2b, 0x5d, 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x10, 0xdc, 0x5e, 0x5d, + 0x5d, 0x71, 0x32, 0xed, 0x31, 0x30, 0x00, 0x5d, 0x01, 0x2b, 0x21, 0x2e, + 0x03, 0x35, 0x23, 0x0e, 0x03, 0x23, 0x22, 0x26, 0x27, 0x23, 0x1e, 0x01, + 0x15, 0x11, 0x23, 0x11, 0x33, 0x11, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, + 0x02, 0x35, 0x11, 0x33, 0x11, 0x14, 0x1e, 0x02, 0x17, 0x03, 0x5e, 0x01, + 0x03, 0x03, 0x03, 0x04, 0x1a, 0x38, 0x45, 0x56, 0x39, 0x52, 0x78, 0x20, + 0x04, 0x03, 0x01, 0xb6, 0xb6, 0x19, 0x3b, 0x62, 0x4a, 0x43, 0x64, 0x43, + 0x21, 0xb5, 0x01, 0x02, 0x02, 0x01, 0x06, 0x2e, 0x3b, 0x3b, 0x14, 0x33, + 0x4f, 0x35, 0x1b, 0x40, 0x3a, 0x20, 0x3f, 0x1b, 0xfe, 0x8b, 0x05, 0xc3, + 0xfd, 0x7c, 0x45, 0x74, 0x55, 0x2f, 0x34, 0x5b, 0x7e, 0x4b, 0x02, 0x69, + 0xfc, 0xaf, 0x22, 0x4c, 0x43, 0x31, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x03, 0xb2, 0x04, 0x3a, 0x00, 0x12, 0x02, 0x23, 0x40, 0x4f, + 0x82, 0x11, 0x92, 0x11, 0xa2, 0x11, 0x03, 0x99, 0x06, 0xa9, 0x06, 0x02, + 0x83, 0x08, 0x93, 0x08, 0xa3, 0x08, 0x03, 0x03, 0x57, 0x08, 0x67, 0x08, + 0x77, 0x08, 0x03, 0x06, 0x05, 0x09, 0x20, 0x0e, 0x11, 0x48, 0x09, 0x09, + 0x07, 0x0f, 0x10, 0x10, 0x00, 0x46, 0x40, 0x5b, 0x0c, 0x6b, 0x0c, 0x7b, + 0x0c, 0x03, 0x5b, 0x0c, 0xdb, 0x0c, 0xeb, 0x0c, 0x03, 0xb4, 0x0c, 0xc4, + 0x0c, 0x02, 0x0b, 0x0c, 0x1b, 0x0c, 0x3b, 0x0c, 0x5b, 0x0c, 0x6b, 0x0c, + 0x05, 0x07, 0x0c, 0x14, 0x80, 0x08, 0x07, 0xb8, 0xff, 0xf0, 0x40, 0xff, + 0x07, 0x0b, 0x14, 0x1b, 0x14, 0x02, 0x0b, 0x14, 0x1b, 0x14, 0x4b, 0x14, + 0x5b, 0x14, 0x8b, 0x14, 0x9b, 0x14, 0xcb, 0x14, 0xdb, 0x14, 0x08, 0xff, + 0x14, 0x01, 0xc4, 0x14, 0xd4, 0x14, 0x02, 0xa0, 0x14, 0x01, 0x84, 0x14, + 0x94, 0x14, 0x02, 0x60, 0x14, 0x01, 0x44, 0x14, 0x54, 0x14, 0x02, 0x20, + 0x14, 0x01, 0x04, 0x14, 0x14, 0x14, 0x02, 0xc7, 0xe0, 0x14, 0x01, 0xc4, + 0x14, 0xd4, 0x14, 0x02, 0xa0, 0x14, 0x01, 0x04, 0x14, 0x14, 0x14, 0x44, + 0x14, 0x54, 0x14, 0x84, 0x14, 0x94, 0x14, 0x06, 0x44, 0x14, 0x54, 0x14, + 0x84, 0x14, 0x94, 0x14, 0xc4, 0x14, 0xd4, 0x14, 0x06, 0x1b, 0x14, 0x01, + 0x04, 0x14, 0x01, 0xdb, 0x14, 0x01, 0xc4, 0x14, 0x01, 0x9b, 0x14, 0x01, + 0x84, 0x14, 0x01, 0x5b, 0x14, 0x01, 0x44, 0x14, 0x01, 0x1b, 0x14, 0x01, + 0x04, 0x14, 0x01, 0x97, 0x0b, 0x14, 0x1b, 0x14, 0x4b, 0x14, 0x5b, 0x14, + 0x8b, 0x14, 0x9b, 0x14, 0xcb, 0x14, 0xdb, 0x14, 0x08, 0x9b, 0x14, 0xcb, + 0x14, 0xdb, 0x14, 0x03, 0x84, 0x14, 0x01, 0x60, 0x14, 0x01, 0x44, 0x14, + 0x54, 0x14, 0x02, 0x20, 0x14, 0x01, 0x04, 0x14, 0x14, 0x14, 0x02, 0xe0, + 0x14, 0x01, 0xc4, 0x14, 0xd4, 0x14, 0x02, 0xa0, 0x14, 0x01, 0x84, 0x14, + 0x94, 0x14, 0x02, 0x60, 0x14, 0x01, 0x04, 0x14, 0x14, 0x14, 0x44, 0x14, + 0x54, 0x14, 0x04, 0x67, 0x04, 0x14, 0x14, 0x14, 0x44, 0x14, 0x54, 0x14, + 0x84, 0x14, 0x94, 0x14, 0xc4, 0x14, 0xd4, 0x14, 0x08, 0xdb, 0x14, 0x01, + 0xc4, 0x14, 0x01, 0x9b, 0x14, 0x01, 0x84, 0x14, 0x01, 0x5b, 0x14, 0x01, + 0x44, 0x14, 0x01, 0x1b, 0x14, 0x01, 0x04, 0x14, 0x01, 0xdb, 0x14, 0x01, + 0xc4, 0x14, 0x01, 0x0b, 0x14, 0x1b, 0x14, 0x4b, 0x14, 0x5b, 0x14, 0x8b, + 0x14, 0x9b, 0x14, 0x40, 0x5d, 0x06, 0x37, 0x4b, 0x14, 0x5b, 0x14, 0x8b, + 0x14, 0x9b, 0x14, 0xcb, 0x14, 0xdb, 0x14, 0x06, 0x3f, 0x14, 0x01, 0x20, + 0x14, 0x01, 0x04, 0x14, 0x14, 0x14, 0x02, 0xe0, 0x14, 0x01, 0xc4, 0x14, + 0xd4, 0x14, 0x02, 0xa0, 0x14, 0x01, 0x84, 0x14, 0x94, 0x14, 0x02, 0x60, + 0x14, 0x01, 0x44, 0x14, 0x54, 0x14, 0x02, 0x20, 0x14, 0x01, 0x04, 0x14, + 0x14, 0x14, 0x02, 0xc4, 0x14, 0xd4, 0x14, 0x02, 0xa0, 0x14, 0x01, 0x84, + 0x14, 0x94, 0x14, 0x02, 0x60, 0x14, 0x01, 0x02, 0x50, 0x14, 0x01, 0x2f, + 0x14, 0x01, 0x00, 0x14, 0x10, 0x14, 0x02, 0x07, 0x0f, 0x07, 0x0f, 0x09, + 0x06, 0x15, 0x00, 0x3f, 0x33, 0x3f, 0x33, 0x01, 0x5e, 0x5d, 0x5d, 0x5d, + 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x72, 0x2f, + 0x38, 0x33, 0x1a, 0x10, 0xdc, 0x5e, 0x5d, 0x5d, 0x71, 0x72, 0x1a, 0xed, + 0x32, 0x11, 0x33, 0x11, 0x39, 0x3d, 0x2f, 0x2b, 0x33, 0x33, 0x31, 0x30, + 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x07, 0x23, 0x01, + 0x33, 0x01, 0x36, 0x12, 0x35, 0x34, 0x26, 0x27, 0x33, 0x1e, 0x01, 0x03, + 0xb2, 0x3f, 0x6a, 0x8c, 0x4d, 0xaa, 0xfe, 0x7a, 0xbd, 0x01, 0x37, 0x8e, + 0x7c, 0x1d, 0x14, 0xb1, 0x18, 0x1c, 0x03, 0x4e, 0x63, 0xda, 0xdd, 0xd6, + 0x5e, 0x04, 0x3a, 0xfc, 0x60, 0xb9, 0x01, 0x56, 0x9c, 0x51, 0x77, 0x2d, + 0x2d, 0x71, 0x00, 0x00, 0x00, 0x01, 0x00, 0x56, 0xfe, 0x9f, 0x03, 0x6a, + 0x05, 0xcc, 0x00, 0x4a, 0x01, 0x00, 0x40, 0x7d, 0x7a, 0x47, 0x8a, 0x47, + 0x02, 0x65, 0x21, 0x75, 0x21, 0x85, 0x21, 0x03, 0x69, 0x27, 0x01, 0x55, + 0x32, 0x01, 0x53, 0x2c, 0x01, 0x39, 0x02, 0x01, 0x6e, 0x42, 0x7e, 0x42, + 0x8e, 0x42, 0x03, 0x1a, 0x42, 0x2a, 0x42, 0x02, 0x0c, 0x1d, 0x1c, 0x1d, + 0x2c, 0x1d, 0x03, 0x0d, 0x28, 0x09, 0x0c, 0x48, 0x0c, 0x49, 0x1c, 0x49, + 0x2c, 0x49, 0x6c, 0x49, 0x7c, 0x49, 0x8c, 0x49, 0x06, 0x05, 0x0b, 0x5f, + 0x25, 0x01, 0x4f, 0x25, 0x01, 0x70, 0x25, 0x80, 0x25, 0x02, 0x25, 0x11, + 0x5f, 0x1a, 0x01, 0x6f, 0x1a, 0x01, 0x1a, 0x25, 0x1a, 0x34, 0x3f, 0x1f, + 0x46, 0x0b, 0x20, 0x0b, 0x01, 0x17, 0x0b, 0x17, 0x0b, 0x00, 0x1f, 0x3f, + 0x3f, 0x3f, 0x4f, 0x3f, 0x6f, 0x3f, 0x7f, 0x3f, 0x8f, 0x3f, 0xaf, 0x3f, + 0xbf, 0x3f, 0xcf, 0x3f, 0x09, 0x9f, 0x3f, 0xaf, 0x3f, 0xff, 0x3f, 0x03, + 0x3f, 0xb8, 0xff, 0xc0, 0x40, 0x11, 0x07, 0x0b, 0x48, 0x3f, 0x2a, 0x47, + 0x1f, 0x00, 0x01, 0x00, 0x05, 0x25, 0x50, 0x1f, 0x0b, 0x18, 0x2a, 0xb8, + 0xff, 0xf0, 0x40, 0x20, 0x13, 0x16, 0x48, 0x97, 0x2a, 0x01, 0x00, 0x10, + 0x13, 0x16, 0x48, 0x98, 0x00, 0x01, 0x34, 0x00, 0x2a, 0x03, 0x39, 0x20, + 0x24, 0x01, 0x24, 0x24, 0x18, 0x39, 0x1a, 0x11, 0x17, 0x50, 0x18, 0x00, + 0x00, 0x3f, 0xed, 0x32, 0x32, 0x2f, 0x12, 0x39, 0x2f, 0x5d, 0x12, 0x17, + 0x39, 0x5d, 0x2b, 0x5d, 0x2b, 0x12, 0x39, 0x39, 0xed, 0x39, 0x01, 0x2f, + 0x5d, 0xed, 0x2f, 0x2b, 0x5d, 0x71, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x5d, + 0x10, 0xed, 0x10, 0xcd, 0x32, 0x32, 0x2f, 0x5d, 0x72, 0x33, 0x2f, 0x5d, + 0x71, 0x72, 0x12, 0x39, 0x31, 0x30, 0x5d, 0x2b, 0x5d, 0x00, 0x5d, 0x5d, + 0x01, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x00, 0x5d, 0x13, 0x34, + 0x3e, 0x02, 0x37, 0x35, 0x2e, 0x03, 0x35, 0x34, 0x3e, 0x02, 0x37, 0x35, + 0x0e, 0x03, 0x2b, 0x01, 0x35, 0x21, 0x15, 0x0e, 0x03, 0x15, 0x14, 0x1e, + 0x02, 0x17, 0x15, 0x0e, 0x03, 0x15, 0x14, 0x1e, 0x02, 0x17, 0x1e, 0x03, + 0x15, 0x14, 0x0e, 0x02, 0x07, 0x27, 0x3e, 0x03, 0x35, 0x34, 0x2e, 0x02, + 0x27, 0x2e, 0x05, 0x56, 0x33, 0x6e, 0xaf, 0x7d, 0x44, 0x76, 0x57, 0x33, + 0x32, 0x4f, 0x61, 0x2f, 0x0c, 0x44, 0x50, 0x4c, 0x12, 0x4a, 0x02, 0x7a, + 0x4d, 0x90, 0x70, 0x44, 0x3c, 0x63, 0x82, 0x45, 0x64, 0xaf, 0x83, 0x4c, + 0x2b, 0x4a, 0x64, 0x39, 0x36, 0x72, 0x5e, 0x3d, 0x12, 0x1a, 0x1d, 0x0a, + 0x7e, 0x09, 0x13, 0x10, 0x0b, 0x27, 0x46, 0x61, 0x39, 0x2a, 0x59, 0x52, + 0x49, 0x36, 0x1f, 0x01, 0x62, 0x4c, 0x93, 0x7c, 0x5a, 0x13, 0x02, 0x05, + 0x27, 0x44, 0x60, 0x3e, 0x40, 0x5d, 0x40, 0x28, 0x0a, 0x08, 0x01, 0x02, + 0x03, 0x02, 0x83, 0x7d, 0x09, 0x22, 0x3b, 0x5a, 0x43, 0x3f, 0x51, 0x31, + 0x18, 0x06, 0x83, 0x0d, 0x36, 0x59, 0x7f, 0x54, 0x40, 0x4f, 0x31, 0x1f, + 0x0f, 0x0f, 0x22, 0x39, 0x58, 0x44, 0x22, 0x44, 0x3e, 0x33, 0x11, 0x38, + 0x0c, 0x21, 0x26, 0x27, 0x13, 0x22, 0x2d, 0x21, 0x19, 0x0d, 0x0a, 0x17, + 0x24, 0x32, 0x4a, 0x64, 0xff, 0xff, 0x00, 0x56, 0xff, 0xec, 0x04, 0x1d, + 0x04, 0x4e, 0x12, 0x06, 0x00, 0x52, 0x00, 0x00, 0x00, 0x01, 0x00, 0x4f, + 0xff, 0xec, 0x05, 0x2b, 0x04, 0x3a, 0x00, 0x30, 0x00, 0x73, 0x40, 0x23, + 0x35, 0x0c, 0x75, 0x0c, 0x85, 0x0c, 0x03, 0x03, 0x28, 0x07, 0x11, 0x48, + 0x03, 0x28, 0x07, 0x11, 0x48, 0x2e, 0x50, 0x20, 0x60, 0x20, 0x02, 0x2e, + 0x20, 0x23, 0x46, 0x40, 0x6f, 0x05, 0x01, 0x50, 0x05, 0x01, 0x05, 0xb8, + 0xff, 0xc0, 0x40, 0x26, 0x08, 0x0b, 0x48, 0x05, 0x32, 0x80, 0x0f, 0x32, + 0x2f, 0x32, 0x02, 0x0d, 0x07, 0x48, 0x4f, 0x19, 0x5f, 0x19, 0x6f, 0x19, + 0xcf, 0x19, 0x04, 0x19, 0x0e, 0x14, 0x22, 0x07, 0x14, 0x50, 0x1f, 0x0f, + 0x0e, 0x15, 0x28, 0x50, 0x00, 0x16, 0x00, 0x3f, 0xed, 0x3f, 0x3f, 0xed, + 0x32, 0x32, 0x01, 0x2f, 0x32, 0x32, 0x5d, 0xed, 0x32, 0x5d, 0x1a, 0x10, + 0xdc, 0x2b, 0x5d, 0x71, 0x1a, 0xed, 0x32, 0x32, 0x5d, 0x2f, 0x31, 0x30, + 0x2b, 0x00, 0x2b, 0x01, 0x5d, 0x05, 0x22, 0x2e, 0x02, 0x35, 0x11, 0x21, + 0x15, 0x14, 0x0e, 0x02, 0x07, 0x23, 0x3e, 0x03, 0x3d, 0x01, 0x22, 0x0e, + 0x02, 0x07, 0x35, 0x3e, 0x03, 0x33, 0x21, 0x15, 0x23, 0x11, 0x14, 0x1e, + 0x02, 0x33, 0x32, 0x3e, 0x02, 0x37, 0x15, 0x0e, 0x01, 0x04, 0x66, 0x3b, + 0x52, 0x34, 0x18, 0xfe, 0x6e, 0x10, 0x1b, 0x24, 0x13, 0xbc, 0x13, 0x27, + 0x20, 0x14, 0x27, 0x4f, 0x45, 0x35, 0x0c, 0x0c, 0x2b, 0x33, 0x36, 0x17, + 0x04, 0x25, 0xea, 0x0d, 0x18, 0x23, 0x16, 0x07, 0x17, 0x19, 0x17, 0x08, + 0x1f, 0x45, 0x14, 0x1c, 0x3b, 0x5e, 0x42, 0x02, 0xd4, 0x48, 0x83, 0xfb, + 0xe4, 0xc3, 0x4a, 0x4c, 0xc5, 0xe2, 0xf7, 0x7d, 0x50, 0x07, 0x0a, 0x0d, + 0x07, 0x8b, 0x06, 0x0b, 0x08, 0x04, 0x83, 0xfd, 0x53, 0x2c, 0x38, 0x20, + 0x0d, 0x02, 0x02, 0x03, 0x01, 0x81, 0x08, 0x0c, 0x00, 0x02, 0x00, 0x84, + 0xfe, 0x57, 0x04, 0x3b, 0x04, 0x4f, 0x00, 0x1a, 0x00, 0x2f, 0x00, 0x81, + 0x40, 0x40, 0x7a, 0x19, 0x01, 0x65, 0x14, 0x75, 0x14, 0x02, 0x6a, 0x13, + 0x7a, 0x13, 0x02, 0x6a, 0x2d, 0x7a, 0x2d, 0x02, 0x4b, 0x08, 0x5b, 0x08, + 0x6b, 0x08, 0x03, 0x7d, 0x1e, 0x01, 0x6b, 0x1e, 0x01, 0x4a, 0x1e, 0x5a, + 0x1e, 0x02, 0x00, 0x47, 0x40, 0xa0, 0x1b, 0x01, 0x1b, 0x31, 0x80, 0x26, + 0x0f, 0x46, 0xdf, 0x10, 0x01, 0x00, 0x10, 0x10, 0x10, 0x30, 0x10, 0x03, + 0x08, 0x10, 0x30, 0x31, 0x01, 0x31, 0xb8, 0xff, 0xc0, 0x40, 0x15, 0x1e, + 0x23, 0x48, 0xdf, 0x31, 0x01, 0x60, 0x31, 0x80, 0x31, 0x02, 0x20, 0x50, + 0x16, 0x10, 0x0f, 0x1b, 0x2b, 0x50, 0x05, 0x16, 0x00, 0x3f, 0xed, 0x3f, + 0x3f, 0xed, 0x01, 0x5d, 0x5d, 0x2b, 0x71, 0x2f, 0x5e, 0x5d, 0x71, 0xed, + 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, + 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x01, 0x14, 0x0e, + 0x02, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x23, 0x1e, 0x01, 0x15, 0x11, 0x23, + 0x11, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x2e, 0x02, + 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, + 0x04, 0x3b, 0x3f, 0x73, 0xa1, 0x62, 0x3e, 0x62, 0x50, 0x42, 0x1c, 0x04, + 0x02, 0x02, 0xb4, 0x3c, 0x74, 0xa9, 0x6e, 0x67, 0xb5, 0x86, 0x4e, 0xc1, + 0x2c, 0x53, 0x74, 0x48, 0x45, 0x64, 0x40, 0x1e, 0x1c, 0x48, 0x50, 0x57, + 0x2c, 0x43, 0x64, 0x43, 0x21, 0x02, 0x04, 0x76, 0xc5, 0x8e, 0x4f, 0x14, + 0x25, 0x35, 0x21, 0x1e, 0x3d, 0x20, 0xfe, 0x57, 0x03, 0xee, 0x77, 0xc1, + 0x88, 0x4a, 0x4f, 0x96, 0xdb, 0x83, 0x68, 0xa6, 0x73, 0x3d, 0x35, 0x65, + 0x92, 0x5d, 0xfe, 0xc3, 0x23, 0x37, 0x25, 0x14, 0x3a, 0x6b, 0x98, 0x00, + 0x00, 0x01, 0x00, 0x56, 0xfe, 0x9f, 0x03, 0x9c, 0x04, 0x4e, 0x00, 0x39, + 0x00, 0xd1, 0x40, 0x26, 0x89, 0x37, 0x01, 0x8b, 0x36, 0x01, 0x8f, 0x35, + 0x01, 0x7b, 0x35, 0x01, 0x6a, 0x32, 0x01, 0x60, 0x02, 0x01, 0x34, 0x0f, + 0x44, 0x0f, 0x54, 0x0f, 0x03, 0x52, 0x0a, 0x62, 0x0a, 0x82, 0x0a, 0x03, + 0x33, 0x0a, 0x43, 0x0a, 0x02, 0x03, 0xb8, 0xff, 0xe0, 0x40, 0x34, 0x0c, + 0x11, 0x48, 0x03, 0x18, 0x0b, 0x0e, 0x48, 0x1a, 0x1f, 0x6a, 0x1f, 0x7a, + 0x1f, 0x8a, 0x1f, 0x04, 0x8b, 0x1e, 0x01, 0x0a, 0x25, 0x1a, 0x25, 0x02, + 0x07, 0x47, 0x1f, 0x28, 0x01, 0x28, 0x34, 0x11, 0x4f, 0x1c, 0x01, 0x8f, + 0x1c, 0x9f, 0x1c, 0xdf, 0x1c, 0x03, 0x1c, 0x40, 0x18, 0x1b, 0x48, 0x60, + 0x1c, 0x01, 0x1c, 0xb8, 0xff, 0xc0, 0xb7, 0x07, 0x0c, 0x48, 0x1c, 0x30, + 0x3b, 0x01, 0x3b, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x1e, 0x23, 0x48, 0xdf, + 0x3b, 0x01, 0x0c, 0x21, 0x28, 0x10, 0x13, 0x16, 0x48, 0x88, 0x28, 0x98, + 0x28, 0x02, 0x07, 0xb8, 0xff, 0xf0, 0x40, 0x13, 0x13, 0x16, 0x48, 0x87, + 0x07, 0x97, 0x07, 0x02, 0x21, 0x07, 0x28, 0x03, 0x16, 0x35, 0x00, 0x50, + 0x2f, 0x10, 0x16, 0x00, 0x2f, 0x3f, 0xed, 0x33, 0x12, 0x17, 0x39, 0x5d, + 0x2b, 0x5d, 0x2b, 0x11, 0x33, 0x01, 0x5d, 0x2b, 0x71, 0x2f, 0x2b, 0x5d, + 0x2b, 0x5d, 0x71, 0xcd, 0x32, 0x2f, 0x5d, 0xed, 0x31, 0x30, 0x5d, 0x5d, + 0x00, 0x5d, 0x2b, 0x01, 0x2b, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x00, + 0x5d, 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x22, 0x0e, 0x04, 0x15, + 0x14, 0x1e, 0x02, 0x17, 0x1e, 0x03, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x27, + 0x3e, 0x03, 0x35, 0x34, 0x2e, 0x02, 0x27, 0x2e, 0x05, 0x35, 0x34, 0x3e, + 0x04, 0x33, 0x32, 0x1e, 0x02, 0x17, 0x07, 0x2e, 0x03, 0x02, 0x46, 0x36, + 0x58, 0x43, 0x31, 0x20, 0x0f, 0x20, 0x4c, 0x7c, 0x5c, 0x35, 0x72, 0x5f, + 0x3d, 0x12, 0x1a, 0x1d, 0x0a, 0x7e, 0x09, 0x13, 0x10, 0x0b, 0x23, 0x44, + 0x61, 0x3f, 0x42, 0x71, 0x5e, 0x48, 0x32, 0x1a, 0x14, 0x2e, 0x4b, 0x6e, + 0x94, 0x61, 0x44, 0x63, 0x49, 0x36, 0x16, 0x74, 0x12, 0x2a, 0x31, 0x39, + 0x03, 0xc1, 0x31, 0x50, 0x68, 0x6c, 0x6a, 0x2a, 0x44, 0x60, 0x48, 0x39, + 0x1e, 0x11, 0x25, 0x3b, 0x59, 0x44, 0x22, 0x44, 0x3e, 0x33, 0x11, 0x38, + 0x0c, 0x21, 0x26, 0x27, 0x13, 0x1e, 0x2c, 0x24, 0x1f, 0x11, 0x12, 0x28, + 0x33, 0x44, 0x5d, 0x7a, 0x51, 0x2f, 0x82, 0x8c, 0x88, 0x6c, 0x42, 0x15, + 0x22, 0x2c, 0x17, 0x77, 0x13, 0x24, 0x1c, 0x11, 0x00, 0x02, 0x00, 0x56, + 0xff, 0xec, 0x04, 0xd1, 0x04, 0x3a, 0x00, 0x1c, 0x00, 0x2f, 0x00, 0x84, + 0x40, 0x5e, 0x85, 0x0c, 0x01, 0x7a, 0x0d, 0x8a, 0x0d, 0x02, 0x83, 0x2e, + 0x01, 0x65, 0x2e, 0x75, 0x2e, 0x02, 0x64, 0x2a, 0x74, 0x2a, 0x84, 0x2a, + 0x03, 0x7c, 0x21, 0x8c, 0x21, 0x02, 0x5a, 0x21, 0x6a, 0x21, 0x02, 0x8f, + 0x26, 0x01, 0x6c, 0x26, 0x7c, 0x26, 0x02, 0x4a, 0x26, 0x5a, 0x26, 0x02, + 0x0f, 0x11, 0x1f, 0x11, 0x6f, 0x11, 0x7f, 0x11, 0x04, 0x07, 0x11, 0x00, + 0x47, 0x40, 0x0f, 0x1d, 0x8f, 0x1d, 0xbf, 0x1d, 0x03, 0x00, 0x1d, 0x20, + 0x1d, 0x40, 0x1d, 0x03, 0x1d, 0x31, 0x80, 0x28, 0x47, 0x1f, 0x0a, 0x8f, + 0x0a, 0x02, 0x0a, 0x17, 0x23, 0x50, 0x0f, 0x0f, 0x2b, 0x50, 0x05, 0x16, + 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x32, 0x01, 0x2f, 0x5d, 0xed, 0x1a, 0x10, + 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0xc4, 0x5e, 0x5d, 0x31, 0x30, 0x00, 0x5d, + 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, + 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, + 0x33, 0x21, 0x15, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x15, 0x1e, 0x03, 0x07, + 0x34, 0x2e, 0x02, 0x27, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x16, 0x33, + 0x32, 0x3e, 0x02, 0x04, 0x30, 0x3d, 0x7b, 0xb7, 0x7b, 0x7b, 0xba, 0x7c, + 0x3f, 0x56, 0x99, 0xd5, 0x7e, 0x02, 0x39, 0xa5, 0x09, 0x23, 0x2b, 0x2c, + 0x11, 0x1c, 0x37, 0x2b, 0x1a, 0xbd, 0x14, 0x22, 0x2d, 0x19, 0x59, 0x53, + 0x8f, 0x6b, 0x3d, 0x97, 0x93, 0x4e, 0x75, 0x4c, 0x26, 0x01, 0xeb, 0x70, + 0xbc, 0x87, 0x4c, 0x4a, 0x8b, 0xca, 0x81, 0x90, 0xd2, 0x8a, 0x42, 0x83, + 0x01, 0x02, 0x02, 0x01, 0x04, 0x2a, 0x63, 0x73, 0x83, 0x4e, 0x4a, 0x84, + 0x74, 0x63, 0x2a, 0x32, 0x69, 0xa0, 0x6e, 0xcf, 0xce, 0x34, 0x61, 0x8b, + 0x00, 0x01, 0x00, 0x1d, 0xff, 0xec, 0x03, 0x18, 0x04, 0x3a, 0x00, 0x23, + 0x00, 0x63, 0x40, 0x32, 0x23, 0x0d, 0x83, 0x0d, 0x02, 0x1f, 0x20, 0x0c, + 0x11, 0x48, 0x0d, 0x1f, 0x1d, 0x1f, 0x2d, 0x1f, 0x03, 0x1a, 0x0d, 0x1a, + 0x7f, 0x05, 0x8f, 0x05, 0x02, 0x05, 0x0f, 0x46, 0x00, 0x22, 0x20, 0x22, + 0x02, 0x22, 0x22, 0x24, 0x25, 0x4f, 0x25, 0x01, 0xd0, 0x25, 0x01, 0x9f, + 0x25, 0x01, 0x10, 0x25, 0x01, 0x25, 0xb8, 0xff, 0xc0, 0x40, 0x0c, 0x0e, + 0x11, 0x48, 0x14, 0x50, 0x1d, 0x16, 0x0e, 0x23, 0x50, 0x0b, 0x0f, 0x00, + 0x3f, 0xed, 0x32, 0x3f, 0xed, 0x01, 0x2b, 0x5d, 0x5d, 0x5d, 0x71, 0x11, + 0x12, 0x39, 0x2f, 0x5d, 0xfd, 0xcc, 0x5d, 0x33, 0x33, 0x2f, 0x31, 0x30, + 0x00, 0x5d, 0x2b, 0x01, 0x5d, 0x01, 0x22, 0x0e, 0x02, 0x07, 0x35, 0x3e, + 0x03, 0x33, 0x21, 0x15, 0x21, 0x11, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, + 0x02, 0x37, 0x15, 0x0e, 0x01, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x11, 0x01, + 0x19, 0x27, 0x4f, 0x45, 0x35, 0x0c, 0x0c, 0x2b, 0x33, 0x36, 0x17, 0x02, + 0x44, 0xfe, 0xd0, 0x0d, 0x18, 0x23, 0x16, 0x07, 0x17, 0x19, 0x17, 0x08, + 0x1f, 0x45, 0x2b, 0x3b, 0x52, 0x34, 0x18, 0x03, 0xb7, 0x07, 0x0a, 0x0d, + 0x07, 0x8b, 0x06, 0x0b, 0x08, 0x04, 0x83, 0xfd, 0x53, 0x2c, 0x38, 0x20, + 0x0d, 0x02, 0x02, 0x03, 0x01, 0x81, 0x08, 0x0c, 0x1c, 0x3b, 0x5e, 0x42, + 0x02, 0xd4, 0x00, 0x00, 0x00, 0x01, 0x00, 0x85, 0xff, 0xec, 0x03, 0xfe, + 0x04, 0x3a, 0x00, 0x1f, 0x00, 0x71, 0x40, 0x3e, 0x86, 0x03, 0x01, 0x85, + 0x0f, 0x95, 0x0f, 0x02, 0x6a, 0x12, 0x7a, 0x12, 0x02, 0x56, 0x1c, 0x01, + 0x19, 0x08, 0x29, 0x08, 0x02, 0x1b, 0x00, 0x47, 0x40, 0x0f, 0x15, 0x01, + 0x2f, 0x15, 0x9f, 0x15, 0x02, 0xa0, 0x15, 0x01, 0x15, 0x21, 0x80, 0x0d, + 0x46, 0x00, 0x0a, 0x10, 0x0a, 0x30, 0x0a, 0xf0, 0x0a, 0x04, 0x08, 0x0a, + 0xf0, 0x21, 0x01, 0xff, 0x21, 0x01, 0x70, 0x21, 0x01, 0x21, 0xb8, 0xff, + 0xc0, 0x40, 0x0d, 0x14, 0x17, 0x48, 0x1f, 0x21, 0x01, 0x1a, 0x0b, 0x0f, + 0x10, 0x50, 0x05, 0x16, 0x00, 0x3f, 0xed, 0x3f, 0x33, 0x01, 0x5d, 0x2b, + 0x5d, 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, + 0x72, 0x1a, 0xed, 0x32, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x11, 0x33, 0x11, 0x14, + 0x16, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x27, 0x33, 0x1e, + 0x03, 0x03, 0xfe, 0x35, 0x71, 0xb0, 0x7b, 0x6d, 0xa0, 0x68, 0x33, 0xb5, + 0x75, 0x86, 0x49, 0x68, 0x41, 0x1e, 0x14, 0x21, 0x28, 0x15, 0xbc, 0x12, + 0x28, 0x20, 0x15, 0x02, 0x3b, 0x89, 0xda, 0x9a, 0x52, 0x32, 0x6b, 0xa6, + 0x74, 0x02, 0x97, 0xfd, 0x63, 0x92, 0x94, 0x32, 0x6c, 0xaa, 0x78, 0x44, + 0x93, 0x8b, 0x78, 0x29, 0x28, 0x71, 0x86, 0x95, 0x00, 0x02, 0x00, 0x55, + 0xfe, 0x57, 0x04, 0xda, 0x04, 0x52, 0x00, 0x23, 0x00, 0x2d, 0x00, 0x82, + 0x40, 0x15, 0x65, 0x22, 0x01, 0x65, 0x21, 0x75, 0x21, 0x85, 0x21, 0x03, + 0x4a, 0x15, 0x5a, 0x15, 0x02, 0x45, 0x15, 0x55, 0x15, 0x02, 0x2d, 0xb8, + 0xff, 0xc0, 0xb3, 0x0b, 0x0e, 0x48, 0x19, 0xb8, 0xff, 0xe0, 0x40, 0x36, + 0x0b, 0x0e, 0x48, 0x0b, 0x1d, 0x1b, 0x1d, 0x02, 0x40, 0x13, 0x50, 0x13, + 0x02, 0x13, 0x13, 0x18, 0x47, 0x0d, 0x07, 0x24, 0x47, 0xe0, 0x00, 0x01, + 0x00, 0x2b, 0x06, 0x48, 0x1b, 0x00, 0x07, 0x40, 0x07, 0x02, 0x07, 0x40, + 0x2f, 0x01, 0x13, 0x50, 0x12, 0x12, 0x27, 0x50, 0x1f, 0x10, 0x2b, 0x1b, + 0x50, 0x05, 0x08, 0x16, 0x06, 0x1b, 0x00, 0x3f, 0x3f, 0x33, 0xed, 0x32, + 0x3f, 0xed, 0x33, 0x2f, 0xed, 0x01, 0x71, 0x2f, 0x5d, 0x33, 0xfd, 0x32, + 0xdc, 0x71, 0xed, 0x10, 0xdc, 0xed, 0x32, 0x2f, 0x5d, 0x31, 0x30, 0x5d, + 0x00, 0x2b, 0x2b, 0x01, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x01, 0x14, + 0x0e, 0x02, 0x07, 0x11, 0x23, 0x11, 0x2e, 0x03, 0x35, 0x34, 0x3e, 0x02, + 0x37, 0x17, 0x0e, 0x03, 0x15, 0x14, 0x16, 0x17, 0x11, 0x34, 0x36, 0x33, + 0x32, 0x1e, 0x02, 0x07, 0x34, 0x26, 0x23, 0x22, 0x06, 0x15, 0x11, 0x3e, + 0x01, 0x04, 0xda, 0x4a, 0x84, 0xb8, 0x6e, 0xaa, 0x72, 0xb5, 0x7d, 0x43, + 0x31, 0x67, 0x9f, 0x6d, 0x15, 0x45, 0x60, 0x3c, 0x1b, 0x93, 0x97, 0x9a, + 0x9e, 0x54, 0x85, 0x5c, 0x31, 0xbd, 0x57, 0x50, 0x44, 0x4c, 0xa2, 0x95, + 0x02, 0x35, 0x97, 0xd7, 0x8c, 0x47, 0x06, 0xfe, 0x69, 0x01, 0x97, 0x05, + 0x48, 0x8a, 0xcf, 0x8d, 0x66, 0xbc, 0x96, 0x67, 0x12, 0x88, 0x0f, 0x4d, + 0x72, 0x8f, 0x50, 0xd5, 0xc9, 0x08, 0x02, 0x44, 0xc1, 0xd4, 0x4c, 0x8d, + 0xc7, 0x79, 0xc1, 0xd3, 0x81, 0x8c, 0xfd, 0xb9, 0x07, 0xda, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x15, 0xfe, 0x58, 0x04, 0x1b, 0x04, 0x50, 0x00, 0x1b, + 0x01, 0x1a, 0x40, 0x33, 0xa9, 0x19, 0x01, 0x99, 0x03, 0x01, 0x8a, 0x06, + 0x9a, 0x06, 0x02, 0xae, 0x17, 0x01, 0x7b, 0x17, 0x8b, 0x17, 0x9b, 0x17, + 0x03, 0x54, 0x15, 0x01, 0xad, 0x1b, 0x01, 0x8c, 0x1b, 0x9c, 0x1b, 0x02, + 0x7b, 0x1b, 0x01, 0x5a, 0x1b, 0x6a, 0x1b, 0x02, 0x29, 0x1b, 0x39, 0x1b, + 0x02, 0x1a, 0x10, 0x09, 0x11, 0x48, 0x02, 0xb8, 0xff, 0xf0, 0x40, 0x63, + 0x09, 0x11, 0x48, 0xa2, 0x01, 0x01, 0x83, 0x01, 0x93, 0x01, 0x02, 0x74, + 0x01, 0x01, 0x45, 0x01, 0x55, 0x01, 0x65, 0x01, 0x03, 0x26, 0x01, 0x36, + 0x01, 0x02, 0xa6, 0x19, 0x01, 0x99, 0x19, 0x01, 0x27, 0x19, 0x37, 0x19, + 0x47, 0x19, 0x03, 0x03, 0x65, 0x13, 0x75, 0x13, 0x02, 0x56, 0x13, 0x01, + 0x27, 0x13, 0x37, 0x13, 0x02, 0x19, 0x16, 0x00, 0x03, 0x04, 0x02, 0x1a, + 0x17, 0x18, 0x18, 0x1b, 0x1a, 0x10, 0x1b, 0x1a, 0x3b, 0x1a, 0x5b, 0x1a, + 0x7b, 0x1a, 0x9b, 0x1a, 0xbb, 0x1a, 0xdb, 0x1a, 0x07, 0xdb, 0x1a, 0xfb, + 0x1a, 0x02, 0x04, 0x1a, 0x14, 0x1a, 0x44, 0x1a, 0x03, 0x07, 0x1a, 0x0d, + 0x0d, 0x01, 0x02, 0xb8, 0xff, 0xf0, 0xb7, 0x02, 0x24, 0x1d, 0x01, 0x0b, + 0x1d, 0x01, 0x16, 0xb8, 0xff, 0xd0, 0x40, 0x29, 0x0e, 0x11, 0x48, 0x46, + 0x16, 0x01, 0x35, 0x16, 0x01, 0x8b, 0x00, 0x01, 0x7d, 0x00, 0x01, 0x02, + 0x4b, 0x00, 0x5b, 0x00, 0x6b, 0x00, 0x03, 0x3f, 0x00, 0x01, 0x00, 0x19, + 0x03, 0x16, 0x04, 0x01, 0x17, 0x0f, 0x09, 0x50, 0x10, 0x10, 0x1b, 0x01, + 0x1b, 0x00, 0x3f, 0x33, 0x3f, 0xed, 0x3f, 0x12, 0x17, 0x39, 0x5d, 0x5d, + 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x01, 0x5d, 0x5d, 0x2f, 0x38, 0x33, + 0x33, 0x2f, 0x2f, 0x5e, 0x5d, 0x5d, 0x71, 0x38, 0x33, 0x33, 0x2f, 0x33, + 0x11, 0x12, 0x17, 0x39, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x25, 0x01, 0x23, 0x01, + 0x03, 0x2e, 0x03, 0x23, 0x22, 0x06, 0x07, 0x27, 0x3e, 0x01, 0x33, 0x32, + 0x1e, 0x02, 0x17, 0x13, 0x01, 0x33, 0x09, 0x01, 0x23, 0x02, 0x1e, 0xfe, + 0xb3, 0xbc, 0x01, 0xb8, 0xaa, 0x1b, 0x2c, 0x28, 0x2a, 0x19, 0x0b, 0x20, + 0x07, 0x22, 0x18, 0x3e, 0x20, 0x30, 0x46, 0x3c, 0x3b, 0x24, 0x8e, 0x01, + 0x08, 0xbb, 0xfe, 0x90, 0x01, 0x96, 0xbe, 0xef, 0xfd, 0x69, 0x03, 0x39, + 0x01, 0x57, 0x36, 0x52, 0x37, 0x1c, 0x07, 0x03, 0x83, 0x09, 0x0b, 0x1b, + 0x3e, 0x66, 0x4b, 0xfe, 0xd9, 0x02, 0x1b, 0xfd, 0x47, 0xfc, 0xd7, 0x00, + 0x00, 0x01, 0x00, 0x87, 0xfe, 0x57, 0x05, 0x2c, 0x05, 0x3c, 0x00, 0x1f, + 0x00, 0x80, 0x40, 0x5a, 0x79, 0x12, 0x01, 0x12, 0x10, 0x07, 0x0a, 0x48, + 0x79, 0x13, 0x89, 0x13, 0x99, 0x13, 0x03, 0x79, 0x0b, 0x01, 0x0b, 0x10, + 0x07, 0x0a, 0x48, 0x79, 0x0a, 0x89, 0x0a, 0x99, 0x0a, 0x03, 0x18, 0x46, + 0x15, 0x0f, 0x05, 0x46, 0x08, 0x00, 0x0e, 0x48, 0x1d, 0x00, 0x0f, 0x10, + 0x0f, 0xa0, 0x0f, 0xd0, 0x0f, 0x04, 0x08, 0x0f, 0x80, 0x21, 0xb0, 0x21, + 0xe0, 0x21, 0x03, 0x6f, 0x21, 0x01, 0x20, 0x21, 0x01, 0xff, 0x21, 0x01, + 0x50, 0x21, 0x80, 0x21, 0x90, 0x21, 0xc0, 0x21, 0x04, 0x1e, 0x1e, 0x06, + 0x16, 0x0f, 0x00, 0x1d, 0x50, 0x0d, 0x10, 0x16, 0x0e, 0x1b, 0x00, 0x3f, + 0x3f, 0x33, 0xed, 0x32, 0x3f, 0x33, 0x33, 0x2f, 0x01, 0x5d, 0x5d, 0x71, + 0x71, 0x71, 0x2f, 0x5e, 0x5d, 0x33, 0xfd, 0x32, 0xdc, 0xed, 0x10, 0xdc, + 0xed, 0x31, 0x30, 0x00, 0x5d, 0x2b, 0x5d, 0x5d, 0x2b, 0x5d, 0x25, 0x3e, + 0x03, 0x35, 0x11, 0x33, 0x11, 0x14, 0x0e, 0x02, 0x07, 0x11, 0x23, 0x11, + 0x2e, 0x03, 0x35, 0x11, 0x33, 0x11, 0x14, 0x1e, 0x02, 0x17, 0x11, 0x33, + 0x03, 0x2e, 0x57, 0x7c, 0x50, 0x25, 0xb6, 0x3b, 0x7c, 0xc1, 0x86, 0xaa, + 0x86, 0xc0, 0x7c, 0x3b, 0xb5, 0x26, 0x4f, 0x7c, 0x57, 0xaa, 0x77, 0x01, + 0x1f, 0x49, 0x79, 0x5b, 0x02, 0x86, 0xfd, 0x7c, 0x7a, 0xac, 0x6e, 0x35, + 0x01, 0xfe, 0x6b, 0x01, 0x95, 0x01, 0x35, 0x6e, 0xac, 0x7a, 0x02, 0x84, + 0xfd, 0x7a, 0x5a, 0x79, 0x49, 0x20, 0x01, 0x04, 0xc5, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x53, 0xff, 0xec, 0x05, 0xeb, 0x04, 0x4f, 0x00, 0x3f, + 0x00, 0xb0, 0x40, 0x53, 0x99, 0x21, 0xa9, 0x21, 0x02, 0x99, 0x1a, 0xa9, + 0x1a, 0x02, 0x77, 0x10, 0x01, 0x7a, 0x3a, 0x8a, 0x3a, 0x02, 0x0a, 0x25, + 0x1a, 0x25, 0x2a, 0x25, 0x9a, 0x25, 0xaa, 0x25, 0x05, 0x0a, 0x16, 0x1a, + 0x16, 0x2a, 0x16, 0x9a, 0x16, 0xaa, 0x16, 0x05, 0x1d, 0x00, 0x49, 0x3d, + 0x3d, 0x28, 0x08, 0x2e, 0x0d, 0x2e, 0x0d, 0x33, 0x13, 0x47, 0x40, 0x80, + 0x08, 0xb0, 0x08, 0x02, 0x0f, 0x08, 0x01, 0x07, 0x08, 0x41, 0x80, 0x33, + 0x47, 0x3f, 0x28, 0x01, 0x28, 0x00, 0x41, 0x01, 0x30, 0x41, 0x01, 0xf0, + 0x41, 0x01, 0x41, 0xb8, 0xff, 0xc0, 0x40, 0x20, 0x1e, 0x23, 0x48, 0xaf, + 0x41, 0xdf, 0x41, 0x02, 0x00, 0x41, 0x20, 0x41, 0x40, 0x41, 0x03, 0x1e, + 0x23, 0x3e, 0x3e, 0x0e, 0x03, 0x38, 0x50, 0x18, 0x23, 0x16, 0x2e, 0x0d, + 0x50, 0x2d, 0x0e, 0x10, 0x00, 0x3f, 0x33, 0xed, 0x32, 0x3f, 0x33, 0xed, + 0x32, 0x11, 0x39, 0x2f, 0x12, 0x39, 0x01, 0x5d, 0x5d, 0x2b, 0x5d, 0x71, + 0x72, 0x2f, 0x5d, 0xed, 0x1a, 0x10, 0xdc, 0x5e, 0x5d, 0x5d, 0x1a, 0xed, + 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x11, 0x12, 0x39, 0x2f, 0xed, 0x39, 0x31, + 0x30, 0x00, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x14, + 0x16, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x27, 0x37, 0x1e, + 0x03, 0x15, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x23, 0x0e, + 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x37, 0x17, 0x0e, + 0x03, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x3d, 0x01, 0x33, + 0x03, 0x73, 0x72, 0x66, 0x41, 0x57, 0x35, 0x16, 0x1d, 0x3d, 0x61, 0x43, + 0x17, 0x6d, 0x9f, 0x67, 0x31, 0x35, 0x65, 0x94, 0x5f, 0x44, 0x68, 0x4d, + 0x34, 0x10, 0x04, 0x10, 0x34, 0x4d, 0x69, 0x43, 0x5f, 0x94, 0x65, 0x35, + 0x31, 0x67, 0x9f, 0x6d, 0x17, 0x44, 0x60, 0x3e, 0x1c, 0x16, 0x34, 0x56, + 0x41, 0x33, 0x52, 0x39, 0x1e, 0xa6, 0x01, 0xc1, 0x9d, 0xad, 0x38, 0x66, + 0x91, 0x5a, 0x52, 0x96, 0x79, 0x54, 0x0f, 0x8b, 0x12, 0x70, 0xa1, 0xc2, + 0x65, 0x80, 0xc8, 0x89, 0x48, 0x24, 0x44, 0x63, 0x40, 0x40, 0x63, 0x44, + 0x24, 0x48, 0x89, 0xc8, 0x80, 0x65, 0xc2, 0xa1, 0x70, 0x12, 0x8b, 0x0f, + 0x54, 0x79, 0x96, 0x52, 0x5a, 0x91, 0x66, 0x38, 0x2d, 0x54, 0x7b, 0x4e, + 0xfc, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xcd, 0x00, 0x00, 0x01, 0xfa, + 0x05, 0x7b, 0x12, 0x26, 0x01, 0x86, 0x00, 0x00, 0x11, 0x06, 0x00, 0x69, + 0xa0, 0x00, 0x00, 0x19, 0xb6, 0x02, 0x01, 0x0e, 0x11, 0x26, 0x02, 0x01, + 0xb8, 0xff, 0xd9, 0xb4, 0x12, 0x10, 0x05, 0x0d, 0x25, 0x01, 0x2b, 0x35, + 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x85, + 0xff, 0xec, 0x03, 0xfe, 0x05, 0x7b, 0x12, 0x26, 0x01, 0x92, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x69, 0x00, 0xf2, 0x00, 0x00, 0x00, 0x19, 0xb6, 0x02, + 0x01, 0x20, 0x11, 0x26, 0x02, 0x01, 0xb8, 0xff, 0xf4, 0xb4, 0x24, 0x22, + 0x0a, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x56, 0xff, 0xec, 0x04, 0x1d, 0x06, 0x07, 0x12, 0x26, + 0x00, 0x52, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0x01, 0x29, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x02, 0x23, 0x11, 0x26, 0x02, 0x46, 0x23, 0x26, + 0x08, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x85, 0xff, 0xec, 0x03, 0xfe, 0x06, 0x07, 0x12, 0x26, + 0x01, 0x92, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0x00, 0xfc, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x20, 0x11, 0x26, 0x01, 0x11, 0x20, 0x23, + 0x0a, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x53, 0xff, 0xec, 0x05, 0xeb, 0x06, 0x07, 0x12, 0x26, + 0x01, 0x96, 0x00, 0x00, 0x11, 0x07, 0x01, 0x54, 0x01, 0xff, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x40, 0x11, 0x26, 0x01, 0x37, 0x40, 0x43, + 0x28, 0x13, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, 0x06, 0xf0, 0x10, 0x06, + 0x00, 0x88, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, + 0x06, 0xb2, 0x10, 0x26, 0x00, 0x28, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa5, + 0x01, 0x79, 0x00, 0x00, 0x00, 0x99, 0xb9, 0x00, 0x15, 0xff, 0xc0, 0xb3, + 0xe9, 0xe9, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0xb3, 0xe6, 0xe6, 0x48, 0x15, + 0xb8, 0xff, 0xc0, 0xb3, 0xe3, 0xe3, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0xb3, + 0xe0, 0xe0, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0xb3, 0xdd, 0xdd, 0x48, 0x15, + 0xb8, 0xff, 0xc0, 0xb3, 0xda, 0xda, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0xb3, + 0xd7, 0xd7, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0xb3, 0xd4, 0xd4, 0x48, 0x15, + 0xb8, 0xff, 0xc0, 0xb3, 0xd1, 0xd1, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0xb3, + 0xce, 0xce, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0xb3, 0xcb, 0xcb, 0x48, 0x15, + 0xb8, 0xff, 0xc0, 0xb3, 0xc8, 0xc8, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0xb3, + 0xc5, 0xc5, 0x48, 0x15, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x0b, 0x0b, 0x48, + 0x02, 0x01, 0x0c, 0x05, 0x26, 0x02, 0x01, 0xb8, 0xff, 0xea, 0xb4, 0x10, + 0x0e, 0x00, 0x0a, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, + 0x01, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x00, 0x00, 0x01, 0x00, 0x2e, 0xff, 0xec, 0x06, 0x4f, + 0x05, 0x81, 0x00, 0x2d, 0x00, 0x85, 0x40, 0x0d, 0x9b, 0x1f, 0xab, 0x1f, + 0x02, 0x65, 0x25, 0x75, 0x25, 0x85, 0x25, 0x03, 0x02, 0xb8, 0xff, 0xe0, + 0x40, 0x47, 0x0d, 0x11, 0x48, 0x12, 0x10, 0x0c, 0x0f, 0x48, 0x2a, 0x0d, + 0x3a, 0x0d, 0x02, 0x24, 0x07, 0x34, 0x07, 0x02, 0x14, 0x14, 0x0a, 0x2a, + 0x01, 0x27, 0x5a, 0x2d, 0xaf, 0x28, 0x01, 0x00, 0x28, 0x01, 0x28, 0x0a, + 0x5a, 0x00, 0x1d, 0x10, 0x1d, 0xb0, 0x1d, 0xe0, 0x1d, 0x04, 0x07, 0x1d, + 0x00, 0x2a, 0x5f, 0x2b, 0x26, 0x21, 0x5f, 0x01, 0x06, 0x06, 0x28, 0x2b, + 0x03, 0x28, 0x12, 0x1a, 0x5f, 0x0f, 0x3f, 0x15, 0x01, 0x15, 0x15, 0x0f, + 0x13, 0x00, 0x3f, 0x33, 0x2f, 0x5d, 0x10, 0xed, 0x3f, 0x3f, 0x12, 0x39, + 0x2f, 0x33, 0xed, 0x32, 0x10, 0xed, 0x32, 0x01, 0x2f, 0x5e, 0x5d, 0xed, + 0x2f, 0x5d, 0x5d, 0xcc, 0xfd, 0x32, 0xcc, 0x12, 0x39, 0x2f, 0x31, 0x30, + 0x00, 0x5d, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, 0x01, 0x11, 0x3e, 0x03, 0x33, + 0x32, 0x16, 0x1d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x27, + 0x37, 0x1e, 0x03, 0x33, 0x32, 0x36, 0x3d, 0x01, 0x34, 0x26, 0x23, 0x22, + 0x0e, 0x02, 0x07, 0x11, 0x23, 0x11, 0x21, 0x35, 0x21, 0x15, 0x02, 0xd0, + 0x21, 0x6d, 0x7f, 0x82, 0x35, 0xe2, 0xd9, 0x29, 0x56, 0x85, 0x5c, 0x35, + 0x58, 0x4b, 0x40, 0x1d, 0x6f, 0x12, 0x29, 0x30, 0x38, 0x21, 0x54, 0x50, + 0x81, 0x90, 0x33, 0x7b, 0x78, 0x69, 0x21, 0xbe, 0xfe, 0x1c, 0x04, 0x86, + 0x04, 0xe5, 0xfe, 0xa0, 0x07, 0x14, 0x13, 0x0d, 0xbb, 0xbc, 0xd6, 0x5d, + 0x91, 0x64, 0x35, 0x11, 0x20, 0x2e, 0x1c, 0x7b, 0x10, 0x21, 0x1a, 0x11, + 0x65, 0x6f, 0xdb, 0x77, 0x7a, 0x0a, 0x0f, 0x11, 0x08, 0xfd, 0x0c, 0x04, + 0xe5, 0x9c, 0x9c, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x01, 0x04, 0x2f, + 0x06, 0xf0, 0x10, 0x26, 0x01, 0x61, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, + 0x01, 0x71, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x06, 0x05, 0x26, + 0x01, 0x21, 0x06, 0x09, 0x04, 0x00, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x68, 0xff, 0xec, 0x05, 0x79, + 0x05, 0x96, 0x00, 0x2a, 0x00, 0xda, 0x40, 0x9c, 0x9c, 0x11, 0xac, 0x11, + 0x02, 0x9c, 0x0f, 0xac, 0x0f, 0x02, 0x9c, 0x27, 0xac, 0x27, 0x02, 0x8a, + 0x27, 0x01, 0x9c, 0x29, 0xac, 0x29, 0x02, 0x8a, 0x29, 0x01, 0x89, 0x1f, + 0x01, 0x75, 0x0b, 0x01, 0x75, 0x0a, 0xa5, 0x0a, 0x02, 0xa6, 0x1a, 0x01, + 0x49, 0x1a, 0x89, 0x1a, 0x02, 0x46, 0x20, 0x86, 0x20, 0x02, 0x25, 0x0a, + 0x35, 0x0a, 0x02, 0x2a, 0x03, 0x3a, 0x03, 0x02, 0x03, 0x44, 0x2c, 0x01, + 0x07, 0x07, 0x13, 0x05, 0x08, 0x5b, 0x74, 0x1d, 0x84, 0x1d, 0x02, 0xcb, + 0x1d, 0xdb, 0x1d, 0x02, 0x44, 0x1d, 0x01, 0x2b, 0x1d, 0x01, 0x1d, 0x25, + 0xeb, 0x13, 0x01, 0x64, 0x13, 0x74, 0x13, 0xa4, 0x13, 0xd4, 0x13, 0x04, + 0x40, 0x13, 0x01, 0x02, 0x00, 0x13, 0x30, 0x13, 0x02, 0x07, 0x13, 0x08, + 0x5f, 0x7f, 0x05, 0xaf, 0x05, 0x02, 0x05, 0x05, 0x0d, 0x22, 0x4f, 0x26, + 0x01, 0x26, 0x26, 0x00, 0x5f, 0x22, 0x04, 0x0d, 0x5f, 0x18, 0x10, 0x12, + 0x20, 0x12, 0x02, 0x30, 0x12, 0x40, 0x12, 0x70, 0x12, 0x80, 0x12, 0xc0, + 0x12, 0xd0, 0x12, 0x06, 0x12, 0x12, 0x18, 0x13, 0x00, 0x3f, 0x33, 0x2f, + 0x5d, 0x71, 0x10, 0xed, 0x3f, 0xed, 0x33, 0x2f, 0x5d, 0x11, 0x12, 0x39, + 0x2f, 0x71, 0xed, 0x01, 0x2f, 0x5e, 0x5d, 0x5f, 0x5d, 0x5d, 0x71, 0x33, + 0x2f, 0x5d, 0x5d, 0x5d, 0x71, 0xed, 0x32, 0x11, 0x39, 0x2f, 0x5d, 0x31, + 0x30, 0x00, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x00, 0x5d, + 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x22, 0x0e, 0x02, + 0x07, 0x21, 0x15, 0x21, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x37, 0x17, + 0x0e, 0x03, 0x23, 0x22, 0x24, 0x26, 0x02, 0x35, 0x34, 0x12, 0x36, 0x24, + 0x33, 0x32, 0x04, 0x17, 0x07, 0x2e, 0x03, 0x03, 0x18, 0x6f, 0xad, 0x7c, + 0x49, 0x0a, 0x02, 0x8e, 0xfd, 0x72, 0x09, 0x4d, 0x80, 0xb0, 0x6d, 0x5a, + 0x8d, 0x6c, 0x4f, 0x1b, 0x9c, 0x28, 0x6c, 0x94, 0xbf, 0x7b, 0xab, 0xfe, + 0xff, 0xad, 0x56, 0x5b, 0xaf, 0x01, 0x00, 0xa4, 0xe1, 0x01, 0x2e, 0x47, + 0xb5, 0x14, 0x44, 0x66, 0x89, 0x04, 0xfa, 0x44, 0x7e, 0xb2, 0x6e, 0x9a, + 0x70, 0xb9, 0x84, 0x48, 0x32, 0x52, 0x69, 0x37, 0x4d, 0x4f, 0x88, 0x64, + 0x39, 0x6d, 0xc3, 0x01, 0x0c, 0x9f, 0xa5, 0x01, 0x0a, 0xbb, 0x65, 0xb0, + 0xad, 0x3c, 0x32, 0x5b, 0x46, 0x2a, 0x00, 0x00, 0xff, 0xff, 0x00, 0x5d, + 0xff, 0xec, 0x04, 0xf8, 0x05, 0x96, 0x12, 0x06, 0x00, 0x36, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xbd, 0x00, 0x00, 0x01, 0x7c, 0x05, 0x81, 0x12, 0x06, + 0x00, 0x2c, 0x00, 0x00, 0xff, 0xff, 0x00, 0x07, 0x00, 0x00, 0x02, 0x34, + 0x06, 0xb2, 0x12, 0x26, 0x00, 0x2c, 0x00, 0x00, 0x11, 0x06, 0x02, 0xa5, + 0xda, 0x00, 0x00, 0x17, 0x40, 0x0d, 0x02, 0x01, 0x04, 0x05, 0x26, 0x02, + 0x01, 0x01, 0x08, 0x06, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, + 0x2b, 0x35, 0x35, 0x00, 0xff, 0xff, 0x00, 0x20, 0xff, 0xec, 0x03, 0x68, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x2d, 0x00, 0x00, 0x00, 0x02, 0x00, 0x12, + 0xff, 0xf0, 0x08, 0x0b, 0x05, 0x81, 0x00, 0x26, 0x00, 0x2f, 0x00, 0xd7, + 0x40, 0x62, 0x39, 0x1d, 0x01, 0xa6, 0x08, 0x01, 0xa7, 0x0b, 0x01, 0xa2, + 0x0a, 0x01, 0x85, 0x0a, 0x95, 0x0a, 0x02, 0x3a, 0x0a, 0x01, 0x9a, 0x0f, + 0xaa, 0x0f, 0x02, 0x8d, 0x0d, 0x9d, 0x0d, 0xad, 0x0d, 0x03, 0x79, 0x0d, + 0x01, 0x74, 0x2f, 0x84, 0x2f, 0x94, 0x2f, 0x03, 0x7b, 0x28, 0x8b, 0x28, + 0x9b, 0x28, 0x03, 0x65, 0x0b, 0x01, 0x8d, 0x0e, 0x9d, 0x0e, 0xad, 0x0e, + 0x03, 0x0e, 0x20, 0x0a, 0x0e, 0x48, 0x2b, 0x1e, 0x7b, 0x1e, 0x8b, 0x1e, + 0x9b, 0x1e, 0x04, 0x2a, 0x1f, 0x7a, 0x1f, 0x02, 0x00, 0x5a, 0x30, 0x27, + 0x01, 0x00, 0x27, 0x10, 0x27, 0x02, 0x07, 0x27, 0x14, 0x0d, 0x24, 0x0d, + 0x34, 0x0d, 0x03, 0x0d, 0xb8, 0xff, 0xf8, 0x40, 0x0e, 0x16, 0x19, 0x48, + 0x49, 0x08, 0x01, 0x14, 0x08, 0x24, 0x08, 0x34, 0x08, 0x03, 0x08, 0xb8, + 0xff, 0xf8, 0x40, 0x27, 0x16, 0x19, 0x48, 0x09, 0x1f, 0x49, 0x1f, 0x02, + 0x08, 0x0d, 0x1f, 0x03, 0xaf, 0x14, 0xbf, 0x14, 0x02, 0x14, 0x21, 0x2c, + 0x5a, 0x06, 0x2b, 0x5f, 0x21, 0x21, 0x06, 0x08, 0x5f, 0x1f, 0x03, 0x17, + 0x5f, 0x10, 0x13, 0x2c, 0x5f, 0x06, 0x12, 0x00, 0x3f, 0xed, 0x3f, 0xed, + 0x3f, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x2f, 0xed, 0x32, 0x2f, 0x5d, + 0x17, 0x33, 0x71, 0x2b, 0x71, 0x71, 0x2b, 0x71, 0x2f, 0x5e, 0x5d, 0x71, + 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x00, 0x2b, 0x5d, 0x01, 0x5d, 0x00, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x14, 0x0e, 0x02, 0x23, 0x21, 0x11, 0x21, 0x03, 0x06, 0x02, 0x0e, 0x03, + 0x23, 0x22, 0x26, 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x04, 0x37, + 0x13, 0x21, 0x11, 0x21, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x26, 0x23, 0x21, + 0x11, 0x21, 0x32, 0x36, 0x08, 0x0b, 0x3d, 0x79, 0xb6, 0x79, 0xfd, 0xb7, + 0xfe, 0x60, 0x31, 0x16, 0x2b, 0x31, 0x3c, 0x4e, 0x66, 0x42, 0x19, 0x2f, + 0x0e, 0x0b, 0x23, 0x0a, 0x1e, 0x34, 0x2d, 0x2a, 0x27, 0x28, 0x15, 0x43, + 0x03, 0x02, 0x01, 0x7e, 0x7d, 0xba, 0x7c, 0x3e, 0xc0, 0xa4, 0xa4, 0xfe, + 0x99, 0x01, 0x6f, 0xa4, 0x9c, 0x01, 0x9d, 0x57, 0x96, 0x70, 0x40, 0x04, + 0xe1, 0xfe, 0x90, 0xac, 0xfe, 0xf5, 0xc7, 0x89, 0x55, 0x25, 0x05, 0x05, + 0x98, 0x04, 0x03, 0x17, 0x3e, 0x6b, 0xa9, 0xee, 0xa1, 0x01, 0xfe, 0xfd, + 0xac, 0x3a, 0x69, 0x93, 0x5c, 0x79, 0x81, 0xfe, 0x02, 0x88, 0x00, 0x00, + 0x00, 0x02, 0x00, 0xa8, 0x00, 0x00, 0x07, 0xab, 0x05, 0x81, 0x00, 0x16, + 0x00, 0x1f, 0x00, 0x6e, 0x40, 0x19, 0x74, 0x1f, 0x84, 0x1f, 0x94, 0x1f, + 0x03, 0x7b, 0x18, 0x8b, 0x18, 0x9b, 0x18, 0x03, 0x26, 0x14, 0x36, 0x14, + 0x02, 0x00, 0x5a, 0xb0, 0x17, 0x01, 0x17, 0xb8, 0xff, 0xc0, 0x40, 0x2b, + 0x07, 0x0b, 0x48, 0x17, 0x0d, 0x09, 0x5a, 0x00, 0x0a, 0x10, 0x0a, 0x40, + 0x0a, 0x03, 0x07, 0x0a, 0x11, 0x1c, 0x5a, 0x0e, 0x00, 0x06, 0x01, 0x08, + 0x06, 0x1b, 0x5f, 0x11, 0x11, 0x08, 0x5f, 0x0d, 0x0d, 0x0a, 0x0f, 0x0b, + 0x03, 0x0a, 0x12, 0x1c, 0x5f, 0x06, 0x12, 0x00, 0x3f, 0xed, 0x3f, 0x3f, + 0x33, 0x12, 0x39, 0x2f, 0xed, 0x33, 0x2f, 0xed, 0x01, 0x2f, 0x5e, 0x5d, + 0x33, 0xed, 0x32, 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x2f, 0x2b, 0x5d, 0xed, + 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x21, + 0x11, 0x21, 0x11, 0x23, 0x11, 0x33, 0x11, 0x21, 0x11, 0x33, 0x11, 0x21, + 0x32, 0x1e, 0x02, 0x07, 0x34, 0x26, 0x23, 0x21, 0x11, 0x21, 0x32, 0x36, + 0x07, 0xab, 0x3d, 0x79, 0xb6, 0x79, 0xfd, 0xdf, 0xfd, 0xc2, 0xbf, 0xbf, + 0x02, 0x3e, 0xbf, 0x01, 0x56, 0x7d, 0xba, 0x7c, 0x3e, 0xc0, 0xa4, 0xa4, + 0xfe, 0xc1, 0x01, 0x47, 0xa4, 0x9c, 0x01, 0x9d, 0x57, 0x96, 0x70, 0x40, + 0x02, 0x8d, 0xfd, 0x73, 0x05, 0x81, 0xfd, 0xac, 0x02, 0x54, 0xfd, 0xac, + 0x3a, 0x69, 0x93, 0x5c, 0x79, 0x81, 0xfe, 0x02, 0x88, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x2e, 0x00, 0x00, 0x06, 0x2f, 0x05, 0x81, 0x00, 0x1b, + 0x00, 0x83, 0x40, 0x0d, 0x9b, 0x02, 0xab, 0x02, 0x02, 0x65, 0x08, 0x75, + 0x08, 0x85, 0x08, 0x03, 0x13, 0xb8, 0xff, 0xe0, 0x40, 0x4c, 0x0d, 0x11, + 0x48, 0x25, 0x18, 0x35, 0x18, 0x45, 0x18, 0x03, 0x12, 0x0d, 0x0a, 0x5a, + 0x10, 0xaf, 0x0b, 0x01, 0x00, 0x0b, 0x30, 0x0b, 0x02, 0x0b, 0x1b, 0x5a, + 0x00, 0x00, 0x30, 0x00, 0xc0, 0x00, 0xd0, 0x00, 0x04, 0x07, 0x00, 0xb0, + 0x1d, 0xc0, 0x1d, 0xd0, 0x1d, 0x03, 0xb0, 0x1d, 0xf0, 0x1d, 0x02, 0xff, + 0x1d, 0x01, 0x10, 0x1d, 0x70, 0x1d, 0xa0, 0x1d, 0xb0, 0x1d, 0x04, 0x09, + 0x04, 0x5f, 0x12, 0x17, 0x17, 0x00, 0x11, 0x0d, 0x5f, 0x0e, 0x03, 0x0b, + 0x00, 0x12, 0x00, 0x3f, 0x32, 0x3f, 0xed, 0x32, 0x12, 0x39, 0x2f, 0x33, + 0xed, 0x32, 0x01, 0x5d, 0x5d, 0x71, 0x72, 0x2f, 0x5e, 0x5d, 0xed, 0x2f, + 0x5d, 0x5d, 0xcc, 0xfd, 0xcc, 0x33, 0x31, 0x30, 0x00, 0x5d, 0x2b, 0x5d, + 0x5d, 0x21, 0x11, 0x34, 0x26, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x11, 0x23, + 0x11, 0x21, 0x35, 0x21, 0x15, 0x21, 0x11, 0x3e, 0x03, 0x33, 0x32, 0x16, + 0x15, 0x11, 0x05, 0x71, 0x80, 0x85, 0x35, 0x74, 0x6e, 0x62, 0x23, 0xbe, + 0xfe, 0x1c, 0x04, 0xb3, 0xfd, 0xef, 0x24, 0x62, 0x70, 0x76, 0x38, 0xe5, + 0xd6, 0x02, 0x3f, 0x7a, 0x6d, 0x0a, 0x0f, 0x12, 0x07, 0xfd, 0x0c, 0x04, + 0xe5, 0x9c, 0x9c, 0xfe, 0xa0, 0x08, 0x14, 0x12, 0x0d, 0xbb, 0xb2, 0xfd, + 0xad, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0x9d, + 0x06, 0xf0, 0x12, 0x26, 0x01, 0xb6, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, + 0x01, 0xac, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x17, 0x05, 0x26, + 0x01, 0x25, 0x17, 0x1a, 0x00, 0x0d, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x18, + 0x06, 0xf1, 0x10, 0x26, 0x01, 0xb4, 0x00, 0x00, 0x10, 0x07, 0x00, 0x43, + 0x01, 0x81, 0x01, 0x0d, 0xff, 0xff, 0x00, 0x37, 0xff, 0xec, 0x05, 0x1f, + 0x07, 0x3a, 0x12, 0x26, 0x01, 0xbf, 0x00, 0x00, 0x11, 0x07, 0x02, 0x9e, + 0x01, 0x5e, 0x01, 0x4a, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x1a, 0x05, 0x26, + 0x01, 0x07, 0x1f, 0x27, 0x15, 0x19, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xa8, 0xfe, 0x68, 0x05, 0x18, + 0x05, 0x81, 0x00, 0x0b, 0x00, 0x5e, 0x40, 0x40, 0x0b, 0x5c, 0x00, 0x00, + 0x02, 0x09, 0x5a, 0x7f, 0x06, 0x01, 0x00, 0x06, 0x30, 0x06, 0x40, 0x06, + 0x03, 0x8f, 0x06, 0x9f, 0x06, 0xcf, 0x06, 0x03, 0x00, 0x06, 0x40, 0x06, + 0x02, 0x06, 0x05, 0x5a, 0x00, 0x02, 0x10, 0x02, 0x40, 0x02, 0x03, 0x07, + 0x02, 0x10, 0x0d, 0x01, 0x20, 0x0d, 0x80, 0x0d, 0xe0, 0x0d, 0x03, 0x0f, + 0x0d, 0x01, 0x07, 0x07, 0x03, 0x03, 0x0a, 0x05, 0x5f, 0x02, 0x12, 0x00, + 0x00, 0x2f, 0x3f, 0xed, 0x33, 0x3f, 0x33, 0x2f, 0x01, 0x5d, 0x5d, 0x71, + 0x2f, 0x5e, 0x5d, 0xed, 0x2f, 0x5d, 0x5d, 0x71, 0x71, 0xed, 0x12, 0x39, + 0x2f, 0xed, 0x31, 0x30, 0x01, 0x11, 0x21, 0x11, 0x33, 0x11, 0x21, 0x11, + 0x33, 0x11, 0x21, 0x11, 0x02, 0x86, 0xfe, 0x22, 0xbf, 0x02, 0xf7, 0xba, + 0xfe, 0x22, 0xfe, 0x68, 0x01, 0x98, 0x05, 0x81, 0xfb, 0x1f, 0x04, 0xe1, + 0xfa, 0x7f, 0xfe, 0x68, 0xff, 0xff, 0x00, 0x04, 0x00, 0x00, 0x05, 0x52, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x24, 0x00, 0x00, 0x00, 0x02, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0xd6, 0x05, 0x81, 0x00, 0x10, 0x00, 0x19, 0x00, 0x8e, + 0x40, 0x46, 0x74, 0x19, 0x84, 0x19, 0x94, 0x19, 0x03, 0x7b, 0x12, 0x8b, + 0x12, 0x9b, 0x12, 0x03, 0x99, 0x0e, 0x01, 0x26, 0x0e, 0x01, 0x09, 0x09, + 0x00, 0x5a, 0xdf, 0x11, 0x01, 0x50, 0x11, 0x80, 0x11, 0x02, 0x1f, 0x11, + 0x01, 0xff, 0x11, 0x01, 0xc0, 0x11, 0x01, 0x9f, 0x11, 0x01, 0x00, 0x11, + 0x10, 0x11, 0x20, 0x11, 0x40, 0x11, 0x04, 0x11, 0x0b, 0x16, 0x5a, 0x00, + 0x06, 0x10, 0x06, 0x40, 0x06, 0x03, 0x07, 0x06, 0x30, 0x1b, 0x01, 0x1b, + 0xb8, 0xff, 0xc0, 0x40, 0x1b, 0x1e, 0x23, 0x48, 0xdf, 0x1b, 0x01, 0x15, + 0x5f, 0x40, 0x0b, 0x01, 0xa0, 0x0b, 0xd0, 0x0b, 0x02, 0x0b, 0x0b, 0x06, + 0x0a, 0x5f, 0x07, 0x03, 0x16, 0x5f, 0x06, 0x12, 0x00, 0x3f, 0xed, 0x3f, + 0xed, 0x12, 0x39, 0x2f, 0x5d, 0x71, 0xed, 0x01, 0x5d, 0x2b, 0x71, 0x2f, + 0x5e, 0x5d, 0xed, 0x32, 0x2f, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, + 0xed, 0x32, 0x2f, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, + 0x0e, 0x02, 0x23, 0x21, 0x11, 0x21, 0x15, 0x21, 0x11, 0x21, 0x32, 0x1e, + 0x02, 0x07, 0x34, 0x26, 0x23, 0x21, 0x11, 0x21, 0x32, 0x36, 0x04, 0xd6, + 0x3d, 0x79, 0xb6, 0x79, 0xfd, 0xb7, 0x03, 0x9e, 0xfd, 0x21, 0x01, 0x7e, + 0x7d, 0xba, 0x7c, 0x3e, 0xc0, 0xa4, 0xa4, 0xfe, 0x99, 0x01, 0x6f, 0xa4, + 0x9c, 0x01, 0x9d, 0x57, 0x96, 0x70, 0x40, 0x05, 0x81, 0x9c, 0xfe, 0x48, + 0x3a, 0x69, 0x93, 0x5c, 0x79, 0x81, 0xfe, 0x02, 0x88, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xea, 0x05, 0x81, 0x12, 0x06, + 0x00, 0x25, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x01, 0x04, 0x2f, + 0x05, 0x82, 0x10, 0x06, 0x01, 0x61, 0x00, 0x00, 0x00, 0x02, 0x00, 0x0f, + 0xfe, 0x68, 0x05, 0x45, 0x05, 0x81, 0x00, 0x10, 0x00, 0x19, 0x00, 0xc2, + 0x40, 0x5f, 0x96, 0x0a, 0x01, 0x96, 0x14, 0x01, 0x96, 0x0f, 0x01, 0x90, + 0x13, 0x01, 0x86, 0x13, 0x01, 0x73, 0x16, 0x83, 0x16, 0x02, 0x03, 0x93, + 0x18, 0x01, 0x02, 0x80, 0x18, 0x01, 0x72, 0x18, 0x01, 0x66, 0x18, 0x01, + 0x55, 0x0b, 0x65, 0x0b, 0x02, 0x5a, 0x0e, 0x6a, 0x0e, 0x02, 0x61, 0x17, + 0x91, 0x17, 0x02, 0x53, 0x17, 0x01, 0x35, 0x17, 0x45, 0x17, 0x02, 0x02, + 0x5c, 0x03, 0x03, 0x00, 0x5a, 0xbf, 0x11, 0xcf, 0x11, 0x02, 0xa0, 0x11, + 0x01, 0x1f, 0x11, 0x5f, 0x11, 0x7f, 0x11, 0x8f, 0x11, 0x9f, 0x11, 0x05, + 0x00, 0x11, 0x01, 0x08, 0x11, 0x14, 0x19, 0x24, 0x19, 0x34, 0x19, 0x03, + 0x19, 0xb8, 0xff, 0xf8, 0x40, 0x0b, 0x16, 0x19, 0x48, 0x14, 0x13, 0x24, + 0x13, 0x34, 0x13, 0x03, 0x13, 0xb8, 0xff, 0xf8, 0x40, 0x1c, 0x16, 0x19, + 0x48, 0x09, 0x0f, 0x13, 0x19, 0x04, 0x06, 0x5c, 0x07, 0x0f, 0x1b, 0x2f, + 0x1b, 0x02, 0x13, 0x5f, 0x0f, 0x03, 0x08, 0x00, 0x19, 0x5f, 0x05, 0x12, + 0x07, 0x02, 0x00, 0x2f, 0x33, 0x3f, 0xed, 0x32, 0x32, 0x3f, 0xed, 0x01, + 0x5d, 0x2f, 0xed, 0x17, 0x33, 0x2b, 0x71, 0x2b, 0x71, 0x2f, 0x5e, 0x5d, + 0x5d, 0x5d, 0x5d, 0xed, 0x32, 0x2f, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x25, 0x33, 0x11, 0x23, 0x11, 0x21, 0x11, 0x23, 0x11, 0x33, + 0x3e, 0x03, 0x37, 0x13, 0x21, 0x03, 0x11, 0x21, 0x03, 0x0e, 0x03, 0x07, + 0x04, 0x96, 0xaf, 0xb4, 0xfc, 0x32, 0xb4, 0x90, 0x29, 0x42, 0x37, 0x2c, + 0x12, 0x43, 0x02, 0xd4, 0xba, 0xfe, 0x89, 0x31, 0x12, 0x28, 0x2e, 0x36, + 0x20, 0xa0, 0xfd, 0xc8, 0x01, 0x98, 0xfe, 0x68, 0x02, 0x38, 0x33, 0x8a, + 0xb5, 0xe4, 0x8d, 0x01, 0xfe, 0xfb, 0x1f, 0x04, 0x41, 0xfe, 0x90, 0x86, + 0xdd, 0xb2, 0x89, 0x33, 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xfe, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x28, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1c, + 0x00, 0x00, 0x07, 0x47, 0x05, 0x81, 0x00, 0x29, 0x01, 0x48, 0x40, 0x29, + 0x85, 0x08, 0x01, 0x75, 0x1f, 0x85, 0x1f, 0x02, 0x75, 0x0e, 0x01, 0x63, + 0x18, 0x01, 0x6c, 0x19, 0x7c, 0x19, 0x8c, 0x19, 0x03, 0x6c, 0x1a, 0x7c, + 0x1a, 0x8c, 0x1a, 0x03, 0x65, 0x0d, 0x75, 0x0d, 0x85, 0x0d, 0x03, 0x21, + 0x28, 0x0e, 0x11, 0x48, 0x06, 0xb8, 0xff, 0xd8, 0x40, 0x23, 0x0e, 0x11, + 0x48, 0x3a, 0x18, 0x4a, 0x18, 0x02, 0x29, 0x18, 0x01, 0x35, 0x0f, 0x45, + 0x0f, 0x75, 0x0f, 0x03, 0x03, 0x27, 0x0f, 0x01, 0x1b, 0x30, 0x0e, 0x11, + 0x48, 0x28, 0x1b, 0x38, 0x1b, 0x48, 0x1b, 0x03, 0x0c, 0xb8, 0xff, 0xd0, + 0x40, 0x0b, 0x0e, 0x11, 0x48, 0x27, 0x0c, 0x37, 0x0c, 0x47, 0x0c, 0x03, + 0x1f, 0xb8, 0xff, 0xe0, 0xb3, 0x0e, 0x11, 0x48, 0x1f, 0xb8, 0xff, 0xf0, + 0x40, 0x49, 0x0a, 0x0d, 0x48, 0x08, 0x20, 0x0e, 0x11, 0x48, 0x08, 0x10, + 0x0a, 0x0d, 0x48, 0x22, 0x1f, 0x1b, 0x1f, 0x1c, 0x1c, 0x20, 0x15, 0x28, + 0x5a, 0x29, 0x05, 0x08, 0x0c, 0x08, 0x29, 0x0b, 0x0b, 0x07, 0x12, 0x34, + 0x29, 0x01, 0x74, 0x29, 0xc4, 0x29, 0xe4, 0x29, 0x03, 0x29, 0x21, 0x20, + 0x10, 0x20, 0x40, 0x1d, 0x20, 0x48, 0xe4, 0x20, 0x01, 0x9b, 0x20, 0xab, + 0x20, 0x02, 0x44, 0x20, 0x74, 0x20, 0x02, 0x0b, 0x20, 0x2b, 0x20, 0x02, + 0x20, 0x06, 0x07, 0xb8, 0xff, 0xf0, 0x40, 0x33, 0xab, 0x07, 0xbb, 0x07, + 0x02, 0x07, 0x44, 0x2b, 0x74, 0x2b, 0x84, 0x2b, 0xe4, 0x2b, 0x04, 0x2f, + 0x2b, 0x01, 0x02, 0x0f, 0x2b, 0x01, 0x1f, 0x08, 0x22, 0x05, 0x08, 0x05, + 0x27, 0x00, 0x60, 0x15, 0x7f, 0x12, 0xaf, 0x12, 0x02, 0x2f, 0x12, 0x01, + 0x12, 0x12, 0x06, 0x1b, 0x13, 0x0b, 0x03, 0x29, 0x21, 0x06, 0x12, 0x00, + 0x3f, 0x33, 0x33, 0x3f, 0x33, 0x33, 0x12, 0x39, 0x2f, 0x5d, 0x71, 0x33, + 0xed, 0x32, 0x39, 0x39, 0x11, 0x33, 0x11, 0x33, 0x01, 0x5d, 0x5f, 0x5d, + 0x5d, 0x2f, 0x5d, 0x38, 0x33, 0x2f, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x38, + 0x33, 0x2f, 0x5d, 0x71, 0x33, 0x12, 0x39, 0x2f, 0x12, 0x39, 0x33, 0x11, + 0x33, 0x10, 0xed, 0x32, 0x11, 0x39, 0x2f, 0x39, 0x33, 0x11, 0x33, 0x31, + 0x30, 0x2b, 0x2b, 0x2b, 0x2b, 0x5d, 0x2b, 0x5d, 0x2b, 0x5d, 0x5f, 0x5d, + 0x5d, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x00, + 0x5d, 0x5d, 0x01, 0x22, 0x2e, 0x02, 0x27, 0x01, 0x23, 0x01, 0x26, 0x27, + 0x01, 0x33, 0x13, 0x1e, 0x03, 0x33, 0x11, 0x33, 0x11, 0x32, 0x3e, 0x02, + 0x37, 0x13, 0x33, 0x01, 0x06, 0x07, 0x01, 0x23, 0x01, 0x0e, 0x03, 0x23, + 0x11, 0x23, 0x03, 0x52, 0x11, 0x2d, 0x30, 0x2e, 0x11, 0xfe, 0x55, 0xde, + 0x01, 0xfd, 0x30, 0x83, 0xfe, 0xe5, 0xc8, 0xcd, 0x42, 0x5a, 0x4c, 0x51, + 0x39, 0xbf, 0x39, 0x51, 0x4c, 0x5a, 0x42, 0xcd, 0xc8, 0xfe, 0xe5, 0x83, + 0x30, 0x01, 0xfd, 0xde, 0xfe, 0x55, 0x11, 0x2e, 0x30, 0x2d, 0x11, 0xbf, + 0x02, 0x85, 0x06, 0x0b, 0x0d, 0x08, 0xfd, 0x55, 0x03, 0x07, 0x23, 0xbd, + 0x01, 0x9a, 0xfe, 0xcf, 0x63, 0x7b, 0x44, 0x18, 0x02, 0x6b, 0xfd, 0x95, + 0x18, 0x44, 0x7b, 0x63, 0x01, 0x31, 0xfe, 0x66, 0xbd, 0x23, 0xfc, 0xf9, + 0x02, 0xab, 0x08, 0x0d, 0x0b, 0x06, 0xfd, 0x7b, 0x00, 0x01, 0x00, 0x43, + 0xff, 0xec, 0x04, 0x70, 0x05, 0x95, 0x00, 0x3c, 0x01, 0x07, 0x40, 0x33, + 0x8a, 0x21, 0x01, 0x86, 0x07, 0x01, 0x7c, 0x1c, 0x8c, 0x1c, 0x02, 0x03, + 0x70, 0x15, 0x01, 0x70, 0x14, 0x01, 0x02, 0x60, 0x14, 0x01, 0x65, 0x08, + 0x75, 0x08, 0x85, 0x08, 0x03, 0x84, 0x22, 0x01, 0x65, 0x22, 0x75, 0x22, + 0x02, 0x7c, 0x0d, 0x01, 0x5a, 0x0d, 0x6a, 0x0d, 0x02, 0x3b, 0x17, 0x4b, + 0x17, 0x02, 0x21, 0xb8, 0xff, 0xe8, 0x40, 0x7a, 0x0b, 0x10, 0x48, 0x05, + 0x2b, 0x01, 0x03, 0x33, 0x14, 0x19, 0x5a, 0x2e, 0x40, 0x19, 0x25, 0x48, + 0x2e, 0x2e, 0x38, 0x5a, 0x10, 0x8b, 0x24, 0x9b, 0x24, 0xab, 0x24, 0x03, + 0x7f, 0x14, 0x01, 0x02, 0x5f, 0x14, 0x6f, 0x14, 0x02, 0x24, 0x14, 0x24, + 0x14, 0x05, 0x70, 0x10, 0x01, 0x4f, 0x10, 0x6f, 0x10, 0x02, 0xff, 0x10, + 0x01, 0xa0, 0x10, 0x01, 0x7f, 0x10, 0x01, 0x00, 0x10, 0x10, 0x10, 0x30, + 0x10, 0x03, 0x10, 0xaf, 0x05, 0xbf, 0x05, 0x02, 0x05, 0x40, 0x20, 0x2d, + 0x48, 0x05, 0x40, 0x0d, 0x10, 0x48, 0x05, 0x33, 0x14, 0x5f, 0x7f, 0x15, + 0xaf, 0x15, 0x02, 0x15, 0x15, 0x0b, 0x29, 0x23, 0x40, 0x0d, 0x10, 0x48, + 0x23, 0x23, 0x1e, 0x5f, 0x29, 0x04, 0x0b, 0x5f, 0x00, 0x20, 0x06, 0x30, + 0x06, 0x70, 0x06, 0x80, 0x06, 0x04, 0xd0, 0x06, 0x01, 0x06, 0xb8, 0xff, + 0xc0, 0xb6, 0x0d, 0x11, 0x48, 0x06, 0x06, 0x00, 0x13, 0x00, 0x3f, 0x32, + 0x2f, 0x2b, 0x5d, 0x71, 0x10, 0xed, 0x3f, 0xed, 0x33, 0x2f, 0x2b, 0x11, + 0x12, 0x39, 0x2f, 0x71, 0xed, 0x39, 0x01, 0x2f, 0x2b, 0x2b, 0x5d, 0x2f, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x5d, + 0x5f, 0x5d, 0x71, 0x10, 0xed, 0x32, 0x2f, 0x2b, 0xed, 0x12, 0x39, 0x31, + 0x30, 0x00, 0x5f, 0x5d, 0x01, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5f, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x00, 0x5d, 0x05, 0x22, 0x2e, + 0x02, 0x27, 0x37, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, + 0x2b, 0x01, 0x35, 0x33, 0x32, 0x36, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, + 0x0e, 0x02, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x14, + 0x0e, 0x02, 0x07, 0x1e, 0x03, 0x15, 0x14, 0x0e, 0x02, 0x02, 0x6d, 0x76, + 0xb0, 0x82, 0x5e, 0x24, 0xa5, 0x18, 0x42, 0x5b, 0x79, 0x50, 0x4d, 0x7a, + 0x55, 0x2d, 0xc0, 0xca, 0x47, 0x47, 0xb5, 0xad, 0x27, 0x48, 0x68, 0x41, + 0x4d, 0x72, 0x53, 0x38, 0x13, 0xb2, 0x21, 0x60, 0x84, 0xa8, 0x69, 0x6c, + 0xac, 0x78, 0x40, 0x28, 0x49, 0x68, 0x3f, 0x43, 0x75, 0x57, 0x33, 0x45, + 0x84, 0xc0, 0x14, 0x32, 0x5b, 0x80, 0x4f, 0x4d, 0x37, 0x62, 0x4b, 0x2c, + 0x25, 0x45, 0x64, 0x40, 0x85, 0x76, 0x94, 0x77, 0x7b, 0x37, 0x56, 0x3b, + 0x1e, 0x28, 0x44, 0x5a, 0x31, 0x3d, 0x52, 0x7f, 0x57, 0x2d, 0x35, 0x60, + 0x88, 0x53, 0x44, 0x6b, 0x50, 0x37, 0x0f, 0x0a, 0x32, 0x52, 0x73, 0x49, + 0x5f, 0x9c, 0x71, 0x3e, 0x00, 0x01, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x18, + 0x05, 0x81, 0x00, 0x13, 0x00, 0x7b, 0x40, 0x11, 0xac, 0x12, 0x01, 0x8a, + 0x12, 0x9a, 0x12, 0x02, 0x93, 0x08, 0xa3, 0x08, 0x02, 0x85, 0x08, 0x01, + 0x13, 0xb8, 0xff, 0xe8, 0x40, 0x41, 0x09, 0x11, 0x48, 0x09, 0x18, 0x09, + 0x11, 0x48, 0x0b, 0x5c, 0x29, 0x09, 0x01, 0x09, 0x40, 0x0c, 0x50, 0x0c, + 0x90, 0x0c, 0x03, 0xe0, 0x0c, 0x01, 0x8f, 0x0c, 0x9f, 0x0c, 0xaf, 0x0c, + 0x03, 0x00, 0x0c, 0x30, 0x0c, 0x02, 0x0c, 0xa6, 0x13, 0x01, 0x13, 0x02, + 0x5c, 0x00, 0x01, 0x10, 0x01, 0x02, 0x07, 0x01, 0x0f, 0x15, 0x2f, 0x15, + 0x02, 0x09, 0x12, 0x09, 0x01, 0x03, 0x0c, 0x0c, 0x08, 0x00, 0x12, 0x00, + 0x3f, 0x32, 0x32, 0x2f, 0x3f, 0x33, 0x33, 0x2f, 0x01, 0x5d, 0x2f, 0x5e, + 0x5d, 0xed, 0x32, 0x71, 0x2f, 0x5d, 0x5d, 0x5d, 0x71, 0x33, 0x71, 0xed, + 0x31, 0x30, 0x2b, 0x2b, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x33, 0x11, 0x33, + 0x11, 0x14, 0x06, 0x07, 0x06, 0x07, 0x01, 0x33, 0x11, 0x23, 0x11, 0x34, + 0x36, 0x37, 0x36, 0x37, 0x01, 0xa8, 0xac, 0x02, 0x02, 0x02, 0x02, 0x02, + 0xee, 0xde, 0xaa, 0x01, 0x02, 0x01, 0x02, 0xfd, 0x1a, 0x05, 0x81, 0xfc, + 0x64, 0x33, 0x62, 0x27, 0x2e, 0x28, 0x04, 0xae, 0xfa, 0x7f, 0x03, 0xa8, + 0x27, 0x59, 0x26, 0x2c, 0x2c, 0xfb, 0x5a, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x05, 0x18, 0x07, 0x3a, 0x12, 0x26, 0x01, 0xb4, 0x00, 0x00, + 0x11, 0x07, 0x02, 0x9e, 0x01, 0x92, 0x01, 0x4a, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x14, 0x05, 0x26, 0x01, 0x06, 0x19, 0x21, 0x00, 0x0a, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0x9d, 0x05, 0x81, 0x00, 0x16, 0x00, 0x97, 0x40, 0x68, + 0x54, 0x0c, 0x74, 0x0c, 0x84, 0x0c, 0x03, 0x54, 0x0f, 0x01, 0x8b, 0x08, + 0x01, 0x7a, 0x08, 0x01, 0x59, 0x08, 0x69, 0x08, 0x02, 0x8c, 0x0e, 0x01, + 0x0e, 0x18, 0x0d, 0x10, 0x48, 0x3a, 0x05, 0x01, 0x64, 0x0c, 0x74, 0x0c, + 0x84, 0x0c, 0x03, 0x50, 0x0c, 0x01, 0x35, 0x0c, 0x45, 0x0c, 0x02, 0x0f, + 0x0c, 0x08, 0x0c, 0x09, 0x10, 0x20, 0x09, 0x60, 0x09, 0x80, 0x09, 0x03, + 0x09, 0x09, 0x0d, 0x02, 0x15, 0x5a, 0x20, 0x16, 0x01, 0x16, 0x0e, 0x0d, + 0x10, 0x0f, 0x0d, 0x7f, 0x0d, 0xcf, 0x0d, 0xef, 0x0d, 0x04, 0x2f, 0x0d, + 0x01, 0x0d, 0x2f, 0x18, 0x01, 0x0f, 0x0c, 0x14, 0x60, 0x2f, 0x02, 0x01, + 0x02, 0x02, 0x16, 0x0d, 0x12, 0x08, 0x00, 0x03, 0x00, 0x3f, 0x32, 0x3f, + 0x33, 0x39, 0x2f, 0x5d, 0xed, 0x32, 0x39, 0x01, 0x5d, 0x2f, 0x5d, 0x71, + 0x38, 0x33, 0x2f, 0x5d, 0xed, 0x32, 0x11, 0x39, 0x2f, 0x5d, 0x38, 0x39, + 0x33, 0x11, 0x33, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x13, 0x33, 0x11, 0x32, 0x3e, 0x02, 0x37, + 0x13, 0x33, 0x01, 0x06, 0x07, 0x01, 0x23, 0x01, 0x0e, 0x03, 0x23, 0x11, + 0x23, 0xa8, 0xbf, 0x39, 0x51, 0x4c, 0x5a, 0x42, 0xcd, 0xc8, 0xfe, 0xe5, + 0x83, 0x30, 0x01, 0xfd, 0xde, 0xfe, 0x55, 0x11, 0x2e, 0x30, 0x2d, 0x11, + 0xbf, 0x05, 0x81, 0xfd, 0x95, 0x18, 0x44, 0x7b, 0x63, 0x01, 0x31, 0xfe, + 0x66, 0xbd, 0x23, 0xfc, 0xf9, 0x02, 0xab, 0x08, 0x0d, 0x0b, 0x06, 0xfd, + 0x7b, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x12, 0xff, 0xf0, 0x04, 0x99, + 0x05, 0x81, 0x00, 0x1b, 0x00, 0xb0, 0x40, 0x23, 0x96, 0x01, 0x01, 0x93, + 0x03, 0x01, 0x75, 0x03, 0x85, 0x03, 0x02, 0x55, 0x04, 0x95, 0x04, 0x02, + 0x91, 0x07, 0x01, 0x73, 0x07, 0x83, 0x07, 0x02, 0x55, 0x07, 0x65, 0x07, + 0x02, 0x81, 0x06, 0x91, 0x06, 0x02, 0x06, 0xb8, 0xff, 0xd8, 0x40, 0x2e, + 0x0c, 0x0f, 0x48, 0x25, 0x06, 0x35, 0x06, 0x02, 0x1a, 0x02, 0x01, 0x1a, + 0x17, 0x6a, 0x17, 0x7a, 0x17, 0x8a, 0x17, 0x04, 0x1a, 0x5a, 0x20, 0x1b, + 0x40, 0x1b, 0x02, 0xe0, 0x1b, 0x01, 0x5f, 0x1b, 0x01, 0x00, 0x1b, 0x01, + 0x08, 0x1b, 0x14, 0x06, 0x24, 0x06, 0x34, 0x06, 0x03, 0x06, 0xb8, 0xff, + 0xf8, 0x40, 0x0e, 0x16, 0x19, 0x48, 0x49, 0x01, 0x01, 0x14, 0x01, 0x24, + 0x01, 0x34, 0x01, 0x03, 0x01, 0xb8, 0xff, 0xf8, 0x40, 0x1a, 0x16, 0x19, + 0x48, 0x09, 0x18, 0x49, 0x18, 0x02, 0x01, 0x06, 0x18, 0x03, 0x0c, 0x80, + 0x1d, 0x01, 0x1b, 0x12, 0x01, 0x5f, 0x18, 0x03, 0x10, 0x5f, 0x09, 0x13, + 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x3f, 0x01, 0x5d, 0x2f, 0x17, 0x33, 0x71, + 0x2b, 0x71, 0x71, 0x2b, 0x71, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0xed, + 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x01, 0x21, 0x03, 0x06, 0x02, 0x0e, 0x03, 0x23, 0x22, 0x26, + 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x04, 0x37, 0x13, 0x21, 0x11, + 0x23, 0x03, 0xdf, 0xfe, 0x5e, 0x31, 0x16, 0x2b, 0x31, 0x3c, 0x4e, 0x66, + 0x42, 0x19, 0x2f, 0x0e, 0x0b, 0x23, 0x0a, 0x1e, 0x34, 0x2d, 0x2a, 0x27, + 0x28, 0x15, 0x43, 0x02, 0xff, 0xba, 0x04, 0xe1, 0xfe, 0x90, 0xac, 0xfe, + 0xf5, 0xc7, 0x89, 0x55, 0x25, 0x05, 0x05, 0x98, 0x04, 0x03, 0x17, 0x3e, + 0x6b, 0xa9, 0xee, 0xa1, 0x01, 0xfe, 0xfa, 0x7f, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x06, 0x02, 0x05, 0x81, 0x12, 0x06, 0x00, 0x30, 0x00, 0x00, + 0xff, 0xff, 0x00, 0xa8, 0x00, 0x00, 0x05, 0x20, 0x05, 0x81, 0x12, 0x06, + 0x00, 0x2b, 0x00, 0x00, 0xff, 0xff, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, + 0x05, 0x96, 0x12, 0x06, 0x00, 0x32, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa6, + 0x00, 0x00, 0x05, 0x1e, 0x05, 0x81, 0x11, 0x06, 0x01, 0x6e, 0xfe, 0x00, + 0x00, 0x58, 0xb9, 0x00, 0x09, 0xff, 0xc0, 0xb3, 0x1b, 0x1b, 0x48, 0x09, + 0xb8, 0xff, 0xc0, 0xb3, 0x15, 0x15, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0xb3, + 0x14, 0x14, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0xb3, 0x13, 0x13, 0x48, 0x09, + 0xb8, 0xff, 0xc0, 0xb3, 0x11, 0x11, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0xb3, + 0x10, 0x10, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0xb3, 0x0f, 0x0f, 0x48, 0x09, + 0xb8, 0xff, 0xc0, 0xb3, 0x0e, 0x0e, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0xb7, + 0x0b, 0x0b, 0x48, 0x09, 0x40, 0x09, 0x09, 0x48, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x00, 0x00, 0xff, 0xff, 0x00, 0xa8, + 0x00, 0x00, 0x04, 0xea, 0x05, 0x81, 0x12, 0x06, 0x00, 0x33, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x68, 0xff, 0xec, 0x05, 0x79, 0x05, 0x96, 0x12, 0x06, + 0x00, 0x26, 0x00, 0x00, 0xff, 0xff, 0x00, 0x2e, 0x00, 0x00, 0x04, 0xb4, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x37, 0x00, 0x00, 0x00, 0x01, 0x00, 0x37, + 0xff, 0xec, 0x05, 0x1f, 0x05, 0x81, 0x00, 0x19, 0x00, 0xb5, 0x40, 0x6f, + 0xd9, 0x18, 0x01, 0x8b, 0x18, 0x01, 0x5a, 0x18, 0x6a, 0x18, 0x7a, 0x18, + 0x03, 0x29, 0x18, 0x01, 0x55, 0x17, 0x65, 0x17, 0x85, 0x17, 0x03, 0x46, + 0x17, 0x01, 0xd6, 0x16, 0x01, 0x83, 0x16, 0x01, 0x64, 0x16, 0x74, 0x16, + 0x02, 0x56, 0x16, 0x01, 0x79, 0x12, 0x01, 0x80, 0x02, 0x01, 0x05, 0x02, + 0x15, 0x02, 0x02, 0x84, 0x01, 0x01, 0x83, 0x00, 0x01, 0x54, 0x00, 0x64, + 0x00, 0x02, 0x46, 0x00, 0x01, 0xc6, 0x17, 0xd6, 0x17, 0x02, 0x71, 0x17, + 0x81, 0x17, 0x02, 0x56, 0x17, 0x66, 0x17, 0x02, 0x8f, 0x03, 0x01, 0x3a, + 0x03, 0x4a, 0x03, 0x02, 0x14, 0x17, 0x18, 0x20, 0x19, 0x90, 0x19, 0x02, + 0x19, 0x10, 0x19, 0x16, 0x0a, 0x3f, 0x15, 0x4f, 0x15, 0x6f, 0x15, 0x7f, + 0x15, 0x04, 0x15, 0xb8, 0xff, 0xf0, 0x40, 0x0e, 0x15, 0x17, 0x14, 0x15, + 0x05, 0x18, 0x18, 0x15, 0x03, 0x0b, 0x0e, 0x5f, 0x05, 0x13, 0x00, 0x3f, + 0xed, 0x32, 0x3f, 0x33, 0x2f, 0x11, 0x12, 0x39, 0x39, 0x01, 0x2f, 0x38, + 0x5d, 0x32, 0x32, 0x2f, 0x38, 0x5d, 0x33, 0x39, 0x39, 0x31, 0x30, 0x00, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x37, 0x1e, 0x01, 0x33, 0x32, + 0x3e, 0x02, 0x3f, 0x01, 0x01, 0x33, 0x09, 0x01, 0x33, 0x02, 0xde, 0x2f, + 0x51, 0x5a, 0x6d, 0x4b, 0x20, 0x42, 0x40, 0x3a, 0x17, 0x51, 0x23, 0x53, + 0x30, 0x25, 0x3a, 0x35, 0x39, 0x26, 0x31, 0xfd, 0xc3, 0xda, 0x01, 0xc1, + 0x01, 0x80, 0xcd, 0x01, 0x3e, 0x58, 0x80, 0x52, 0x28, 0x0a, 0x12, 0x1a, + 0x10, 0x90, 0x16, 0x25, 0x15, 0x34, 0x5a, 0x44, 0x59, 0x03, 0xba, 0xfc, + 0xf0, 0x03, 0x10, 0x00, 0x00, 0x03, 0x00, 0x76, 0xff, 0xf5, 0x05, 0x9f, + 0x05, 0x8b, 0x00, 0x1d, 0x00, 0x28, 0x00, 0x33, 0x00, 0x8f, 0x40, 0x5c, + 0x46, 0x1c, 0x56, 0x1c, 0x66, 0x1c, 0x03, 0x49, 0x11, 0x59, 0x11, 0x69, + 0x11, 0x03, 0x3b, 0x33, 0x01, 0x3b, 0x1f, 0x01, 0x35, 0x2b, 0x01, 0x26, + 0x2b, 0x01, 0x35, 0x27, 0x01, 0x26, 0x27, 0x01, 0x29, 0x5a, 0x0f, 0x08, + 0x1e, 0x5a, 0x00, 0x23, 0x18, 0x07, 0x5a, 0x2e, 0x15, 0xe0, 0x08, 0x01, + 0x4f, 0x08, 0x01, 0x20, 0x08, 0x01, 0x08, 0x20, 0x35, 0x01, 0x70, 0x35, + 0xd0, 0x35, 0xe0, 0x35, 0x03, 0x4f, 0x35, 0x01, 0x10, 0x35, 0x01, 0x24, + 0x2f, 0x60, 0x0a, 0x06, 0x0a, 0x22, 0x31, 0x60, 0x14, 0x18, 0x14, 0x0a, + 0x14, 0x0a, 0x14, 0x07, 0x16, 0x03, 0x07, 0x12, 0x00, 0x3f, 0x3f, 0x12, + 0x39, 0x39, 0x2f, 0x2f, 0x11, 0x33, 0x10, 0xed, 0x32, 0x11, 0x33, 0x10, + 0xed, 0x32, 0x01, 0x5d, 0x5d, 0x5d, 0x71, 0x2f, 0x5d, 0x5d, 0x5d, 0x33, + 0x33, 0xfd, 0x32, 0x32, 0xdc, 0xed, 0x10, 0xdc, 0xed, 0x31, 0x30, 0x00, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x01, 0x14, 0x0e, + 0x02, 0x2b, 0x01, 0x15, 0x23, 0x35, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, + 0x3e, 0x02, 0x3b, 0x01, 0x35, 0x33, 0x15, 0x33, 0x32, 0x1e, 0x02, 0x07, + 0x34, 0x26, 0x2b, 0x01, 0x11, 0x33, 0x32, 0x3e, 0x02, 0x25, 0x14, 0x1e, + 0x02, 0x3b, 0x01, 0x11, 0x23, 0x22, 0x06, 0x05, 0x9f, 0x40, 0x83, 0xc5, + 0x85, 0x28, 0xbf, 0x28, 0x85, 0xc5, 0x83, 0x40, 0x43, 0x85, 0xc9, 0x87, + 0x1d, 0xbf, 0x1c, 0x87, 0xca, 0x85, 0x43, 0xc0, 0xb9, 0xb7, 0x05, 0x0d, + 0x5c, 0x88, 0x59, 0x2b, 0xfc, 0x57, 0x2b, 0x59, 0x88, 0x5c, 0x0d, 0x09, + 0xb6, 0xb6, 0x02, 0xe0, 0x69, 0xbc, 0x8f, 0x54, 0xe3, 0xe3, 0x54, 0x8f, + 0xbc, 0x69, 0x71, 0xb9, 0x83, 0x48, 0xb6, 0xb6, 0x48, 0x83, 0xb9, 0x75, + 0xbb, 0xb4, 0xfd, 0x16, 0x35, 0x62, 0x8c, 0x58, 0x58, 0x8c, 0x62, 0x35, + 0x02, 0xea, 0xb4, 0x00, 0xff, 0xff, 0x00, 0x2e, 0x00, 0x00, 0x05, 0x2b, + 0x05, 0x81, 0x12, 0x06, 0x00, 0x3b, 0x00, 0x00, 0x00, 0x01, 0x00, 0xa8, + 0xfe, 0x68, 0x05, 0xc5, 0x05, 0x81, 0x00, 0x0b, 0x00, 0x4a, 0x40, 0x2f, + 0x01, 0x5c, 0x02, 0x02, 0x0b, 0x5a, 0x00, 0x08, 0x01, 0xaf, 0x08, 0x01, + 0x00, 0x08, 0x40, 0x08, 0x70, 0x08, 0x03, 0x08, 0x07, 0x5a, 0x00, 0x04, + 0x10, 0x04, 0x40, 0x04, 0x03, 0x07, 0x04, 0x20, 0x0d, 0xe0, 0x0d, 0x02, + 0x09, 0x09, 0x05, 0x03, 0x0b, 0x0b, 0x07, 0x5f, 0x04, 0x12, 0x02, 0x00, + 0x2f, 0x3f, 0xed, 0x32, 0x2f, 0x3f, 0x33, 0x2f, 0x01, 0x5d, 0x2f, 0x5e, + 0x5d, 0xed, 0x2f, 0x5d, 0x5d, 0x71, 0xed, 0x32, 0x2f, 0xed, 0x31, 0x30, + 0x25, 0x11, 0x23, 0x11, 0x21, 0x11, 0x33, 0x11, 0x21, 0x11, 0x33, 0x11, + 0x05, 0xc5, 0xb4, 0xfb, 0x97, 0xbf, 0x02, 0xf5, 0xba, 0xa0, 0xfd, 0xc8, + 0x01, 0x98, 0x05, 0x81, 0xfb, 0x1f, 0x04, 0xe1, 0xfb, 0x1f, 0x00, 0x00, + 0x00, 0x01, 0x00, 0xa0, 0x00, 0x00, 0x04, 0xae, 0x05, 0x81, 0x00, 0x19, + 0x00, 0x86, 0x40, 0x46, 0xa4, 0x0e, 0x01, 0x14, 0x28, 0x0d, 0x11, 0x48, + 0x01, 0x20, 0x0d, 0x11, 0x48, 0x2a, 0x07, 0x3a, 0x07, 0x4a, 0x07, 0x03, + 0x17, 0x5a, 0x19, 0x90, 0x16, 0x01, 0x8f, 0x16, 0x01, 0x30, 0x16, 0x40, + 0x16, 0x02, 0xcf, 0x16, 0x01, 0x70, 0x16, 0x01, 0x6f, 0x16, 0x01, 0x10, + 0x16, 0x40, 0x16, 0x02, 0x16, 0x0c, 0x5a, 0xcf, 0x0b, 0x01, 0x00, 0x0b, + 0x10, 0x0b, 0x40, 0x0b, 0x03, 0x07, 0x0b, 0x20, 0x1b, 0x01, 0x20, 0x1b, + 0x01, 0x1b, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x0e, 0x11, 0x48, 0x00, 0x05, + 0x5f, 0x15, 0x2f, 0x10, 0x01, 0x10, 0x10, 0x0b, 0x18, 0x12, 0x16, 0x16, + 0x0b, 0x03, 0x00, 0x3f, 0x33, 0x2f, 0x3f, 0x12, 0x39, 0x2f, 0x5d, 0x33, + 0xed, 0x32, 0x01, 0x2b, 0x5d, 0x71, 0x2f, 0x5e, 0x5d, 0x5d, 0xed, 0x2f, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x33, 0xed, 0x31, 0x30, 0x00, + 0x5d, 0x2b, 0x2b, 0x5d, 0x01, 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, + 0x11, 0x33, 0x11, 0x14, 0x16, 0x33, 0x32, 0x3e, 0x02, 0x37, 0x11, 0x33, + 0x11, 0x23, 0x03, 0xf0, 0x24, 0x5e, 0x6b, 0x73, 0x38, 0x72, 0xa6, 0x6c, + 0x34, 0xbe, 0x82, 0x86, 0x35, 0x6e, 0x68, 0x5c, 0x23, 0xbe, 0xbe, 0x01, + 0xfc, 0x08, 0x14, 0x12, 0x0c, 0x2f, 0x5c, 0x89, 0x59, 0x02, 0x52, 0xfd, + 0xc2, 0x7b, 0x6c, 0x0a, 0x0f, 0x11, 0x07, 0x02, 0xf4, 0xfa, 0x7f, 0x00, + 0x00, 0x01, 0x00, 0xa8, 0x00, 0x00, 0x06, 0xad, 0x05, 0x81, 0x00, 0x0b, + 0x00, 0x72, 0x40, 0x4c, 0x07, 0x5a, 0x04, 0x04, 0x00, 0x0b, 0x5a, 0x24, + 0x08, 0x01, 0x0b, 0x08, 0x01, 0xe4, 0x08, 0x01, 0xdb, 0x08, 0x01, 0x94, + 0x08, 0x01, 0x7b, 0x08, 0x01, 0x04, 0x08, 0x14, 0x08, 0x64, 0x08, 0x03, + 0x08, 0x03, 0x5a, 0x04, 0x00, 0x44, 0x00, 0xe4, 0x00, 0x03, 0x07, 0x00, + 0xeb, 0x0d, 0x01, 0xc4, 0x0d, 0x01, 0xbb, 0x0d, 0x01, 0x84, 0x0d, 0x01, + 0x70, 0x0d, 0x01, 0x02, 0x40, 0x0d, 0x01, 0x0f, 0x0d, 0x01, 0x09, 0x05, + 0x01, 0x03, 0x07, 0x07, 0x03, 0x5f, 0x00, 0x12, 0x00, 0x3f, 0xed, 0x32, + 0x2f, 0x3f, 0x33, 0x33, 0x01, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x2f, 0x5e, 0x5d, 0xed, 0x2f, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, + 0x71, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x31, 0x30, 0x33, 0x11, 0x33, 0x11, + 0x21, 0x11, 0x33, 0x11, 0x21, 0x11, 0x33, 0x11, 0xa8, 0xbf, 0x01, 0xe9, + 0xba, 0x01, 0xe9, 0xba, 0x05, 0x81, 0xfb, 0x1f, 0x04, 0xe1, 0xfb, 0x1f, + 0x04, 0xe1, 0xfa, 0x7f, 0x00, 0x01, 0x00, 0xa8, 0xfe, 0x68, 0x07, 0x2f, + 0x05, 0x81, 0x00, 0x0f, 0x00, 0x7d, 0x40, 0x54, 0x84, 0x11, 0x94, 0x11, + 0xb4, 0x11, 0x03, 0x7b, 0x11, 0x01, 0x54, 0x11, 0x01, 0x01, 0x5c, 0x02, + 0x02, 0x0f, 0x5a, 0x0c, 0x0b, 0x5a, 0x08, 0x08, 0x04, 0x0b, 0x0c, 0x3b, + 0x0c, 0x4b, 0x0c, 0x5b, 0x0c, 0x7b, 0x0c, 0x8b, 0x0c, 0x9b, 0x0c, 0xcb, + 0x0c, 0x08, 0xdb, 0x0c, 0xfb, 0x0c, 0x02, 0xcf, 0x0c, 0x01, 0x02, 0x9f, + 0x0c, 0x01, 0x80, 0x0c, 0x01, 0x6f, 0x0c, 0x01, 0x00, 0x0c, 0x01, 0x08, + 0x0c, 0x07, 0x5a, 0x20, 0x04, 0x01, 0x04, 0x0d, 0x09, 0x05, 0x03, 0x0f, + 0x0f, 0x0b, 0x0b, 0x07, 0x5f, 0x04, 0x12, 0x02, 0x00, 0x2f, 0x3f, 0xed, + 0x32, 0x2f, 0x32, 0x2f, 0x3f, 0x33, 0x33, 0x01, 0x2f, 0x5d, 0xed, 0x2f, + 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x71, 0x12, 0x39, 0x2f, + 0xed, 0x10, 0xed, 0x32, 0x2f, 0xed, 0x5d, 0x5d, 0x5d, 0x31, 0x30, 0x25, + 0x11, 0x23, 0x11, 0x21, 0x11, 0x33, 0x11, 0x21, 0x11, 0x33, 0x11, 0x21, + 0x11, 0x33, 0x11, 0x07, 0x2f, 0xb4, 0xfa, 0x2d, 0xbf, 0x01, 0xd3, 0xba, + 0x01, 0xd2, 0xba, 0xa0, 0xfd, 0xc8, 0x01, 0x98, 0x05, 0x81, 0xfb, 0x1f, + 0x04, 0xe1, 0xfb, 0x1f, 0x04, 0xe1, 0xfb, 0x1f, 0x00, 0x02, 0x00, 0x2e, + 0x00, 0x00, 0x05, 0xeb, 0x05, 0x81, 0x00, 0x10, 0x00, 0x19, 0x00, 0x64, + 0x40, 0x44, 0x74, 0x19, 0x84, 0x19, 0x94, 0x19, 0x03, 0x7b, 0x12, 0x8b, + 0x12, 0x9b, 0x12, 0x03, 0x99, 0x03, 0x01, 0x26, 0x03, 0x01, 0x40, 0x1b, + 0x01, 0x06, 0x5a, 0x2f, 0x11, 0x7f, 0x11, 0x02, 0xb0, 0x11, 0x01, 0x9f, + 0x11, 0x01, 0x00, 0x11, 0x10, 0x11, 0x20, 0x11, 0x40, 0x11, 0x04, 0x07, + 0x11, 0x0e, 0x00, 0x16, 0x5a, 0x20, 0x0c, 0x01, 0x0c, 0x15, 0x5f, 0x00, + 0x00, 0x0c, 0x0e, 0x5f, 0x0f, 0x03, 0x16, 0x5f, 0x0c, 0x12, 0x00, 0x3f, + 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x2f, 0x5d, 0xfd, 0x32, + 0xcc, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0x71, 0xed, 0x5d, 0x31, 0x30, 0x00, + 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x21, 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, + 0x02, 0x23, 0x21, 0x11, 0x21, 0x35, 0x21, 0x01, 0x34, 0x26, 0x23, 0x21, + 0x11, 0x21, 0x32, 0x36, 0x02, 0xb8, 0x01, 0x42, 0x7d, 0xba, 0x7c, 0x3e, + 0x3d, 0x79, 0xb6, 0x79, 0xfd, 0xf3, 0xfe, 0x35, 0x02, 0x8a, 0x02, 0x73, + 0xa4, 0xa4, 0xfe, 0xd5, 0x01, 0x33, 0xa4, 0x9c, 0x03, 0x2d, 0x3a, 0x69, + 0x93, 0x5a, 0x57, 0x96, 0x70, 0x40, 0x04, 0xe5, 0x9c, 0xfc, 0x1a, 0x79, + 0x81, 0xfe, 0x02, 0x88, 0x00, 0x03, 0x00, 0xa8, 0x00, 0x00, 0x06, 0x6d, + 0x05, 0x81, 0x00, 0x0e, 0x00, 0x17, 0x00, 0x1b, 0x00, 0x8c, 0x40, 0x4c, + 0x74, 0x17, 0x84, 0x17, 0x94, 0x17, 0x03, 0x7b, 0x10, 0x8b, 0x10, 0x9b, + 0x10, 0x03, 0x99, 0x0c, 0x01, 0x26, 0x0c, 0x01, 0x1b, 0x5a, 0x9f, 0x18, + 0xcf, 0x18, 0xdf, 0x18, 0x03, 0x10, 0x18, 0x40, 0x18, 0x50, 0x18, 0x70, + 0x18, 0x04, 0x18, 0x00, 0x5a, 0x00, 0x0f, 0x01, 0xe0, 0x0f, 0x01, 0x9f, + 0x0f, 0x01, 0x00, 0x0f, 0x10, 0x0f, 0x20, 0x0f, 0x40, 0x0f, 0x04, 0x0f, + 0x09, 0x14, 0x5a, 0x00, 0x06, 0x10, 0x06, 0x40, 0x06, 0x03, 0x07, 0x06, + 0x80, 0x1d, 0x01, 0x1d, 0xb8, 0xff, 0xc0, 0x40, 0x13, 0x0b, 0x0e, 0x48, + 0x13, 0x5f, 0x09, 0x09, 0x06, 0x07, 0x19, 0x19, 0x07, 0x03, 0x18, 0x18, + 0x14, 0x5f, 0x06, 0x12, 0x00, 0x3f, 0xed, 0x33, 0x2f, 0x3f, 0x33, 0x2f, + 0x11, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x2b, 0x5d, 0x2f, 0x5e, 0x5d, 0xed, + 0x32, 0x2f, 0x5d, 0x5d, 0x5d, 0x71, 0xed, 0x2f, 0x5d, 0x5d, 0xed, 0x31, + 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x21, + 0x11, 0x33, 0x11, 0x21, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x26, 0x23, 0x21, + 0x11, 0x21, 0x32, 0x36, 0x01, 0x11, 0x33, 0x11, 0x04, 0xd6, 0x3d, 0x79, + 0xb6, 0x79, 0xfd, 0xb7, 0xbf, 0x01, 0x7e, 0x7d, 0xba, 0x7c, 0x3e, 0xc0, + 0xa4, 0xa4, 0xfe, 0x99, 0x01, 0x6f, 0xa4, 0x9c, 0x01, 0x98, 0xbf, 0x01, + 0x9d, 0x57, 0x96, 0x70, 0x40, 0x05, 0x81, 0xfd, 0xac, 0x3a, 0x69, 0x93, + 0x5c, 0x79, 0x81, 0xfe, 0x02, 0x88, 0xfe, 0xe1, 0x05, 0x81, 0xfa, 0x7f, + 0x00, 0x02, 0x00, 0xa8, 0x00, 0x00, 0x04, 0xd6, 0x05, 0x81, 0x00, 0x0e, + 0x00, 0x17, 0x00, 0x6b, 0x40, 0x4c, 0x74, 0x17, 0x84, 0x17, 0x94, 0x17, + 0x03, 0x7b, 0x10, 0x8b, 0x10, 0x9b, 0x10, 0x03, 0x99, 0x0c, 0x01, 0x26, + 0x0c, 0x01, 0x00, 0x5a, 0x1f, 0x0f, 0x01, 0xa0, 0x0f, 0xb0, 0x0f, 0x02, + 0x9f, 0x0f, 0x01, 0x00, 0x0f, 0x10, 0x0f, 0x20, 0x0f, 0x40, 0x0f, 0x60, + 0x0f, 0x05, 0x0f, 0x09, 0x14, 0x5a, 0x00, 0x06, 0x10, 0x06, 0x02, 0x07, + 0x06, 0xaf, 0x19, 0x01, 0x40, 0x19, 0x80, 0x19, 0x90, 0x19, 0x03, 0x13, + 0x5f, 0x09, 0x09, 0x06, 0x07, 0x03, 0x14, 0x5f, 0x06, 0x12, 0x00, 0x3f, + 0xed, 0x3f, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x5d, 0x5d, 0x2f, 0x5e, 0x5d, + 0xed, 0x32, 0x2f, 0x5d, 0x5d, 0x5d, 0x71, 0xed, 0x31, 0x30, 0x00, 0x5d, + 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x21, 0x11, 0x33, 0x11, + 0x21, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x26, 0x23, 0x21, 0x11, 0x21, 0x32, + 0x36, 0x04, 0xd6, 0x3d, 0x79, 0xb6, 0x79, 0xfd, 0xb7, 0xbf, 0x01, 0x7e, + 0x7d, 0xba, 0x7c, 0x3e, 0xc0, 0xa4, 0xa4, 0xfe, 0x99, 0x01, 0x6f, 0xa5, + 0x9b, 0x01, 0x9d, 0x57, 0x96, 0x70, 0x40, 0x05, 0x81, 0xfd, 0xac, 0x3a, + 0x69, 0x93, 0x60, 0x79, 0x83, 0xfe, 0x04, 0x83, 0x00, 0x01, 0x00, 0x69, + 0xff, 0xec, 0x05, 0x79, 0x05, 0x96, 0x00, 0x2a, 0x00, 0xce, 0x40, 0x51, + 0x73, 0x1a, 0x83, 0x1a, 0x02, 0x73, 0x1c, 0x83, 0x1c, 0x02, 0x65, 0x1c, + 0x01, 0x73, 0x04, 0x83, 0x04, 0x02, 0x65, 0x04, 0x01, 0x73, 0x02, 0x83, + 0x02, 0x02, 0x65, 0x02, 0x01, 0x65, 0x0c, 0x01, 0x65, 0x0b, 0x01, 0x87, + 0x11, 0x01, 0x6a, 0x11, 0x01, 0x5a, 0x21, 0x8a, 0x21, 0x02, 0x0a, 0x20, + 0x1a, 0x20, 0x5a, 0x20, 0x03, 0x0a, 0x28, 0x1a, 0x28, 0x02, 0x24, 0x24, + 0x18, 0x26, 0x0e, 0x5b, 0x20, 0x23, 0x70, 0x23, 0x02, 0x90, 0x23, 0xb0, + 0x23, 0x02, 0x7f, 0x23, 0x01, 0x40, 0x23, 0x01, 0x23, 0xb8, 0xff, 0xc0, + 0x40, 0x3f, 0x07, 0x0a, 0x48, 0x23, 0x06, 0x50, 0x18, 0x60, 0x18, 0x02, + 0xaf, 0x18, 0xbf, 0x18, 0x02, 0x20, 0x18, 0x01, 0x18, 0x23, 0x5f, 0x7f, + 0x26, 0xaf, 0x26, 0x02, 0x26, 0x26, 0x09, 0x1e, 0x5f, 0x13, 0x10, 0x19, + 0x20, 0x19, 0x02, 0x30, 0x19, 0x40, 0x19, 0x70, 0x19, 0x80, 0x19, 0xc0, + 0x19, 0xd0, 0x19, 0x06, 0x19, 0x19, 0x13, 0x13, 0x4f, 0x05, 0x01, 0x05, + 0x05, 0x00, 0x5f, 0x09, 0x04, 0x00, 0x3f, 0xed, 0x33, 0x2f, 0x5d, 0x3f, + 0x33, 0x2f, 0x5d, 0x71, 0x10, 0xed, 0x11, 0x39, 0x2f, 0x71, 0xed, 0x01, + 0x2f, 0x5d, 0x5d, 0x71, 0x33, 0x2f, 0x2b, 0x5d, 0x5d, 0x5d, 0x71, 0xed, + 0x33, 0x12, 0x39, 0x2f, 0x31, 0x30, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x00, + 0x5d, 0x5d, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x01, 0x22, 0x0e, 0x02, 0x07, 0x27, 0x36, 0x24, 0x33, 0x32, 0x04, 0x16, + 0x12, 0x15, 0x14, 0x02, 0x06, 0x04, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x37, + 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x37, 0x21, 0x35, 0x21, 0x2e, 0x03, + 0x02, 0xc9, 0x58, 0x89, 0x66, 0x45, 0x13, 0xb5, 0x47, 0x01, 0x2e, 0xe1, + 0xa4, 0x01, 0x00, 0xaf, 0x5b, 0x56, 0xac, 0xfe, 0xff, 0xab, 0x76, 0xbd, + 0x95, 0x71, 0x29, 0x9c, 0x1b, 0x51, 0x6d, 0x8c, 0x57, 0x6d, 0xb0, 0x80, + 0x4d, 0x09, 0xfd, 0x72, 0x02, 0x8e, 0x0a, 0x49, 0x7c, 0xad, 0x04, 0xfa, + 0x2a, 0x46, 0x5b, 0x32, 0x3c, 0xad, 0xb0, 0x65, 0xbb, 0xfe, 0xf6, 0xa5, + 0x9f, 0xfe, 0xf4, 0xc3, 0x6d, 0x36, 0x63, 0x88, 0x53, 0x4e, 0x37, 0x69, + 0x53, 0x32, 0x48, 0x84, 0xb9, 0x70, 0x9a, 0x6e, 0xb2, 0x7e, 0x44, 0x00, + 0x00, 0x02, 0x00, 0xa8, 0xff, 0xec, 0x07, 0xb3, 0x05, 0x96, 0x00, 0x1a, + 0x00, 0x2e, 0x00, 0xa8, 0x40, 0x3f, 0xa5, 0x07, 0x01, 0x85, 0x18, 0x01, + 0x8a, 0x14, 0x01, 0x79, 0x1d, 0x01, 0x76, 0x23, 0x01, 0x76, 0x27, 0x01, + 0x4a, 0x13, 0x8a, 0x13, 0x02, 0x3a, 0x1e, 0x7a, 0x1e, 0x02, 0x35, 0x22, + 0x75, 0x22, 0x02, 0x2a, 0x2c, 0x3a, 0x2c, 0x7a, 0x2c, 0x03, 0x25, 0x28, + 0x35, 0x28, 0x75, 0x28, 0x03, 0xa0, 0x30, 0x01, 0x00, 0x5b, 0x90, 0x1b, + 0xa0, 0x1b, 0x02, 0xa0, 0x1b, 0xb0, 0x1b, 0x02, 0x1b, 0xb8, 0xff, 0xc0, + 0x40, 0x36, 0x07, 0x0b, 0x48, 0x1b, 0x10, 0x0c, 0x5a, 0x00, 0x0d, 0x10, + 0x0d, 0x40, 0x0d, 0x03, 0x07, 0x0d, 0x25, 0x5b, 0x11, 0x30, 0x0a, 0x70, + 0x0a, 0x02, 0x0a, 0x20, 0x5f, 0x16, 0x04, 0x0b, 0x5f, 0x50, 0x10, 0x01, + 0xb0, 0x10, 0xe0, 0x10, 0x02, 0x0f, 0x10, 0x01, 0x08, 0x10, 0x10, 0x0d, + 0x0e, 0x03, 0x0d, 0x12, 0x2a, 0x5f, 0x05, 0x13, 0x00, 0x3f, 0xed, 0x3f, + 0x3f, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x5d, 0x71, 0xed, 0x3f, 0xed, 0x01, + 0x2f, 0x5d, 0x33, 0xed, 0x2f, 0x5e, 0x5d, 0xed, 0x32, 0x2f, 0x2b, 0x5d, + 0x71, 0xed, 0x5d, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x02, 0x0e, 0x01, 0x23, 0x22, 0x2e, + 0x02, 0x27, 0x21, 0x11, 0x23, 0x11, 0x33, 0x11, 0x21, 0x3e, 0x03, 0x33, + 0x32, 0x1e, 0x01, 0x12, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, + 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x07, 0xb3, 0x5a, 0xaa, + 0xf5, 0x9b, 0x9c, 0xef, 0xa5, 0x5a, 0x07, 0xfe, 0xd9, 0xbf, 0xbf, 0x01, + 0x2a, 0x0d, 0x63, 0xa6, 0xe8, 0x92, 0x9f, 0xf5, 0xa7, 0x57, 0xc3, 0x3c, + 0x75, 0xad, 0x71, 0x74, 0xaf, 0x75, 0x3a, 0x3c, 0x75, 0xad, 0x72, 0x79, + 0xb0, 0x72, 0x36, 0x02, 0xc7, 0xa5, 0xfe, 0xf2, 0xc0, 0x68, 0x63, 0xb3, + 0xf7, 0x94, 0xfd, 0x73, 0x05, 0x81, 0xfd, 0xac, 0x8e, 0xe5, 0xa0, 0x56, + 0x66, 0xbc, 0xfe, 0xf6, 0xa3, 0x7f, 0xd0, 0x94, 0x50, 0x50, 0x94, 0xd0, + 0x7f, 0x7f, 0xd3, 0x99, 0x55, 0x56, 0x99, 0xd4, 0x00, 0x02, 0x00, 0x60, + 0x00, 0x00, 0x05, 0x20, 0x05, 0x81, 0x00, 0x11, 0x00, 0x1e, 0x00, 0xef, + 0x40, 0x16, 0x9c, 0x1d, 0xac, 0x1d, 0x02, 0x8a, 0x1d, 0x01, 0x93, 0x14, + 0x01, 0x75, 0x14, 0x85, 0x14, 0x02, 0x43, 0x11, 0x53, 0x11, 0x02, 0x11, + 0xb8, 0xff, 0xd8, 0x40, 0x19, 0x21, 0x24, 0x48, 0x82, 0x11, 0x92, 0x11, + 0xa2, 0x11, 0x03, 0x64, 0x11, 0x74, 0x11, 0x02, 0x56, 0x11, 0x01, 0x43, + 0x10, 0x53, 0x10, 0x02, 0x03, 0x10, 0xb8, 0xff, 0xd8, 0x40, 0x75, 0x21, + 0x24, 0x48, 0xac, 0x10, 0x01, 0x9b, 0x10, 0x01, 0x7d, 0x10, 0x8d, 0x10, + 0x02, 0x02, 0x5e, 0x10, 0x6e, 0x10, 0x02, 0x49, 0x10, 0x01, 0x2c, 0x10, + 0x3c, 0x10, 0x02, 0x03, 0xaf, 0x01, 0x01, 0x02, 0x01, 0x68, 0x0e, 0x10, + 0x48, 0x5e, 0x01, 0x6e, 0x01, 0x02, 0x49, 0x01, 0x01, 0x2c, 0x01, 0x3c, + 0x01, 0x02, 0x10, 0x01, 0x01, 0x06, 0x18, 0x18, 0x0e, 0x12, 0x5a, 0x06, + 0x06, 0x00, 0x0d, 0x5a, 0xe0, 0x0e, 0x01, 0x8f, 0x0e, 0x9f, 0x0e, 0xaf, + 0x0e, 0xcf, 0x0e, 0x04, 0x00, 0x0e, 0x40, 0x0e, 0x02, 0x07, 0x0e, 0x11, + 0x20, 0x00, 0x01, 0x0f, 0x00, 0x1f, 0x00, 0x02, 0x00, 0x01, 0x0f, 0x5f, + 0x2f, 0x18, 0x5f, 0x18, 0x6f, 0x18, 0x8f, 0x18, 0x04, 0x18, 0x18, 0x00, + 0x1a, 0x5f, 0x0b, 0x03, 0x0e, 0x0e, 0x00, 0x12, 0x00, 0x3f, 0x32, 0x2f, + 0x3f, 0xed, 0x12, 0x39, 0x2f, 0x5d, 0xed, 0x32, 0x01, 0x2f, 0x5d, 0x5d, + 0x33, 0x2f, 0x5e, 0x5d, 0x5d, 0x5d, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x11, + 0x33, 0x11, 0x12, 0x39, 0x11, 0x33, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x2b, + 0x5f, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x2b, 0x5f, + 0x71, 0x5d, 0x5d, 0x5d, 0x2b, 0x71, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x33, + 0x01, 0x2e, 0x03, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x21, 0x11, 0x23, 0x11, + 0x21, 0x01, 0x13, 0x14, 0x1e, 0x02, 0x33, 0x21, 0x11, 0x21, 0x22, 0x0e, + 0x02, 0x60, 0x01, 0x90, 0x5b, 0x82, 0x54, 0x27, 0x42, 0x7e, 0xb9, 0x78, + 0x02, 0x97, 0xbf, 0xfe, 0x49, 0xfe, 0x92, 0x1c, 0x25, 0x4d, 0x77, 0x53, + 0x01, 0xcd, 0xfe, 0x3b, 0x4c, 0x78, 0x54, 0x2c, 0x02, 0x5f, 0x10, 0x4e, + 0x6c, 0x82, 0x43, 0x5e, 0x96, 0x68, 0x37, 0xfa, 0x7f, 0x02, 0x49, 0xfd, + 0xb7, 0x03, 0xec, 0x39, 0x62, 0x48, 0x29, 0x02, 0x08, 0x1f, 0x3f, 0x5e, + 0xff, 0xff, 0x00, 0x57, 0xff, 0xec, 0x04, 0x73, 0x04, 0x4e, 0x12, 0x06, + 0x00, 0x44, 0x00, 0x00, 0x00, 0x02, 0x00, 0x78, 0xff, 0xec, 0x04, 0x3f, + 0x05, 0xde, 0x00, 0x13, 0x00, 0x38, 0x00, 0x9e, 0x40, 0x45, 0x89, 0x2c, + 0x01, 0x7a, 0x2d, 0x8a, 0x2d, 0x02, 0x66, 0x15, 0x76, 0x15, 0x86, 0x15, + 0x03, 0x54, 0x12, 0x01, 0x54, 0x0c, 0x01, 0x5b, 0x02, 0x01, 0x5a, 0x23, + 0x7a, 0x23, 0x8a, 0x23, 0x03, 0x5a, 0x2f, 0x6a, 0x2f, 0x8a, 0x2f, 0x03, + 0x7b, 0x2e, 0x8b, 0x2e, 0x02, 0x49, 0x2e, 0x69, 0x2e, 0x02, 0x2a, 0x2a, + 0x17, 0x47, 0x40, 0xd0, 0x00, 0x01, 0x90, 0x00, 0x01, 0x00, 0x3a, 0x80, + 0x30, 0x3a, 0x01, 0x80, 0x3a, 0x01, 0x3a, 0xb8, 0xff, 0xc0, 0x40, 0x0c, + 0x1e, 0x23, 0x48, 0x34, 0x0a, 0x47, 0x00, 0x1f, 0x20, 0x1f, 0x02, 0x1f, + 0xb8, 0xff, 0xc0, 0x40, 0x17, 0x1a, 0x23, 0x48, 0x1f, 0x34, 0x05, 0x50, + 0x14, 0x14, 0x2a, 0x30, 0x29, 0x01, 0x40, 0x29, 0xf0, 0x29, 0x02, 0x29, + 0x0f, 0x50, 0x1a, 0x16, 0x00, 0x3f, 0xed, 0x2f, 0x5d, 0x71, 0x33, 0x39, + 0x2f, 0xed, 0x32, 0x01, 0x2f, 0x2b, 0x5d, 0xed, 0x39, 0x2b, 0x5d, 0x71, + 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x32, 0x2f, 0x31, 0x30, 0x00, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x34, + 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, + 0x3e, 0x02, 0x03, 0x32, 0x12, 0x11, 0x10, 0x02, 0x23, 0x22, 0x2e, 0x02, + 0x35, 0x34, 0x12, 0x3e, 0x01, 0x37, 0x3e, 0x03, 0x37, 0x15, 0x0e, 0x01, + 0x07, 0x0e, 0x05, 0x07, 0x3e, 0x03, 0x03, 0x82, 0x27, 0x49, 0x68, 0x41, + 0x45, 0x72, 0x51, 0x2c, 0x2c, 0x4d, 0x69, 0x3e, 0x45, 0x70, 0x4e, 0x2a, + 0xf3, 0xde, 0xd2, 0xfa, 0xee, 0x71, 0xb2, 0x7b, 0x41, 0x3a, 0x80, 0xce, + 0x93, 0x39, 0x64, 0x5b, 0x56, 0x2b, 0x56, 0xa1, 0x5b, 0x4e, 0x7c, 0x5e, + 0x43, 0x2c, 0x17, 0x02, 0x13, 0x43, 0x61, 0x7e, 0x01, 0xf6, 0x72, 0x97, + 0x5b, 0x25, 0x27, 0x5c, 0x96, 0x70, 0x72, 0x96, 0x59, 0x24, 0x24, 0x58, + 0x97, 0x02, 0x7f, 0xfe, 0xfb, 0xfe, 0xfa, 0xfe, 0xf7, 0xfe, 0xfd, 0x46, + 0x9c, 0xfa, 0xb4, 0xc0, 0x01, 0x16, 0xc1, 0x73, 0x1c, 0x0b, 0x11, 0x0e, + 0x0c, 0x06, 0xa1, 0x0b, 0x17, 0x11, 0x0e, 0x21, 0x32, 0x49, 0x6c, 0x95, + 0x65, 0x37, 0x61, 0x48, 0x29, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x8e, + 0x00, 0x00, 0x03, 0xe7, 0x04, 0x3a, 0x00, 0x17, 0x00, 0x24, 0x00, 0x2f, + 0x00, 0x95, 0x40, 0x0c, 0x2a, 0x13, 0x01, 0x25, 0x02, 0x01, 0x1a, 0x12, + 0x2a, 0x12, 0x02, 0x03, 0xb8, 0xff, 0xe8, 0x40, 0x21, 0x09, 0x0c, 0x48, + 0x8b, 0x0a, 0x9b, 0x0a, 0x02, 0x0a, 0x26, 0x2c, 0x47, 0x05, 0x05, 0x18, + 0x10, 0x47, 0x40, 0x2f, 0x1e, 0x9f, 0x1e, 0x02, 0xa0, 0x1e, 0x01, 0x1e, + 0x31, 0x80, 0x40, 0x31, 0x01, 0x31, 0xb8, 0xff, 0xc0, 0x40, 0x32, 0x1e, + 0x23, 0x48, 0x1f, 0x31, 0x3f, 0x31, 0xef, 0x31, 0x03, 0x26, 0x18, 0x46, + 0xc0, 0x16, 0x01, 0x00, 0x16, 0x10, 0x16, 0x30, 0x16, 0xe0, 0x16, 0xf0, + 0x16, 0x05, 0x08, 0x16, 0x0a, 0x24, 0x51, 0x8f, 0x26, 0x9f, 0x26, 0xaf, + 0x26, 0x03, 0x26, 0x26, 0x18, 0x25, 0x50, 0x17, 0x0f, 0x18, 0x50, 0x16, + 0x15, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0x71, 0xed, 0x39, + 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x32, 0x5d, 0x2b, 0x71, 0x1a, 0x10, + 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x11, 0x39, 0x2f, 0xed, 0x12, 0x39, 0x5d, + 0x31, 0x30, 0x00, 0x2b, 0x5d, 0x5d, 0x5d, 0x01, 0x32, 0x1e, 0x02, 0x15, + 0x14, 0x0e, 0x02, 0x07, 0x15, 0x1e, 0x03, 0x15, 0x14, 0x0e, 0x02, 0x23, + 0x21, 0x11, 0x13, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x2b, + 0x01, 0x19, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, 0x23, 0x02, + 0x34, 0x4c, 0x90, 0x70, 0x44, 0x23, 0x3c, 0x52, 0x2e, 0x36, 0x5f, 0x45, + 0x28, 0x3d, 0x6d, 0x97, 0x5b, 0xfe, 0x43, 0xb4, 0xec, 0x45, 0x5f, 0x3b, + 0x1b, 0x1c, 0x3f, 0x64, 0x47, 0xe0, 0xd8, 0x44, 0x5b, 0x37, 0x17, 0x66, + 0x79, 0x04, 0x3a, 0x18, 0x3e, 0x68, 0x51, 0x35, 0x51, 0x3a, 0x25, 0x09, + 0x07, 0x07, 0x23, 0x3d, 0x5a, 0x3d, 0x4e, 0x75, 0x4e, 0x27, 0x04, 0x3a, + 0xfc, 0x4b, 0x14, 0x2c, 0x43, 0x2f, 0x32, 0x46, 0x2c, 0x14, 0x01, 0xc2, + 0xfe, 0xc0, 0x13, 0x27, 0x3d, 0x2b, 0x52, 0x4c, 0x00, 0x01, 0x00, 0x8e, + 0x00, 0x00, 0x02, 0xaf, 0x04, 0x3a, 0x00, 0x05, 0x00, 0x36, 0x40, 0x23, + 0x00, 0x40, 0x12, 0x27, 0x48, 0x30, 0x00, 0x01, 0x00, 0x00, 0x07, 0x03, + 0x46, 0xc0, 0x04, 0x01, 0x00, 0x04, 0x10, 0x04, 0x30, 0x04, 0xe0, 0x04, + 0xf0, 0x04, 0x05, 0x08, 0x04, 0x02, 0x50, 0x05, 0x0f, 0x03, 0x15, 0x00, + 0x3f, 0x3f, 0xed, 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x11, 0x33, 0x2f, + 0x5d, 0x2b, 0x31, 0x30, 0x01, 0x15, 0x21, 0x11, 0x23, 0x11, 0x02, 0xaf, + 0xfe, 0x93, 0xb4, 0x04, 0x3a, 0x83, 0xfc, 0x49, 0x04, 0x3a, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x14, 0xfe, 0x68, 0x04, 0x88, 0x04, 0x3a, 0x00, 0x07, + 0x00, 0x17, 0x00, 0x9f, 0x40, 0x41, 0x86, 0x03, 0x01, 0x20, 0x03, 0x01, + 0x66, 0x01, 0x01, 0x22, 0x05, 0x72, 0x05, 0x82, 0x05, 0x03, 0x22, 0x14, + 0x01, 0x22, 0x11, 0x01, 0x89, 0x12, 0x01, 0x22, 0x12, 0x01, 0x19, 0x13, + 0x79, 0x13, 0x02, 0x66, 0x02, 0x76, 0x02, 0x02, 0x22, 0x02, 0x01, 0x19, + 0x02, 0x01, 0x22, 0x10, 0x01, 0x04, 0x10, 0x01, 0x62, 0x04, 0x01, 0x04, + 0x04, 0x24, 0x04, 0x44, 0x04, 0x54, 0x04, 0x04, 0x08, 0x49, 0x09, 0xb8, + 0xff, 0xc0, 0x40, 0x2a, 0x12, 0x19, 0x48, 0x09, 0x09, 0x16, 0x46, 0x40, + 0x6f, 0x07, 0x7f, 0x07, 0x8f, 0x07, 0x03, 0x20, 0x07, 0x40, 0x07, 0x02, + 0x07, 0x19, 0x80, 0x14, 0x0f, 0x0c, 0x49, 0x06, 0x01, 0x0d, 0x01, 0x50, + 0x14, 0x0f, 0x16, 0x06, 0x0e, 0x50, 0x0b, 0x15, 0x0d, 0x08, 0x00, 0x2f, + 0x33, 0x3f, 0xed, 0x32, 0x32, 0x3f, 0xed, 0x01, 0x2f, 0x33, 0x33, 0xed, + 0x33, 0x33, 0x1a, 0x10, 0xdc, 0x5d, 0x5d, 0x1a, 0xed, 0x32, 0x2f, 0x2b, + 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x21, 0x06, 0x02, 0x0e, + 0x01, 0x07, 0x21, 0x01, 0x23, 0x11, 0x21, 0x11, 0x23, 0x11, 0x33, 0x3e, + 0x02, 0x12, 0x37, 0x21, 0x11, 0x33, 0x03, 0x42, 0xfe, 0xce, 0x18, 0x31, + 0x30, 0x30, 0x16, 0x01, 0xf1, 0x01, 0x46, 0xa3, 0xfc, 0xd2, 0xa3, 0x77, + 0x1e, 0x3a, 0x3a, 0x39, 0x1c, 0x02, 0x84, 0x92, 0x03, 0xb7, 0xb1, 0xfe, + 0xf9, 0xc2, 0x88, 0x32, 0xfd, 0xe5, 0x01, 0x98, 0xfe, 0x68, 0x02, 0x1b, + 0x32, 0x8f, 0xdc, 0x01, 0x3b, 0xdf, 0xfc, 0x49, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x18, 0x04, 0x4e, 0x12, 0x06, 0x00, 0x48, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x07, 0x00, 0x00, 0x05, 0x53, 0x04, 0x3a, 0x00, 0x27, + 0x01, 0x61, 0x40, 0x58, 0xa5, 0x17, 0x01, 0xa5, 0x0e, 0x01, 0xab, 0x22, + 0x01, 0xa4, 0x03, 0x01, 0xac, 0x18, 0x01, 0x9a, 0x18, 0x01, 0xa3, 0x0d, + 0x01, 0x95, 0x0d, 0x01, 0x5a, 0x06, 0x6a, 0x06, 0x7a, 0x06, 0x03, 0x55, + 0x1f, 0x65, 0x1f, 0x75, 0x1f, 0x03, 0x4a, 0x21, 0x9a, 0x21, 0xaa, 0x21, + 0x03, 0x45, 0x04, 0x95, 0x04, 0xa5, 0x04, 0x03, 0x2a, 0x1c, 0x3a, 0x1c, + 0x02, 0x25, 0x09, 0x35, 0x09, 0x02, 0x22, 0x1f, 0xaa, 0x1a, 0x01, 0x1a, + 0x1f, 0x1b, 0x10, 0x1b, 0x1b, 0x20, 0x14, 0x26, 0x46, 0x27, 0xa5, 0x0b, + 0x01, 0x0b, 0x0a, 0x03, 0x06, 0x06, 0x27, 0x0a, 0xb8, 0xff, 0xf0, 0x40, + 0x31, 0x0a, 0x0a, 0x11, 0x27, 0x27, 0x05, 0x21, 0x20, 0x10, 0x0f, 0x20, + 0x01, 0xff, 0x20, 0x01, 0xa0, 0x20, 0x01, 0x9f, 0x20, 0x01, 0x50, 0x20, + 0x01, 0x3f, 0x20, 0x01, 0x20, 0x20, 0x01, 0xcf, 0x20, 0x01, 0x80, 0x20, + 0x90, 0x20, 0x02, 0x5f, 0x20, 0x01, 0x20, 0x20, 0x30, 0x20, 0x02, 0x20, + 0x04, 0x05, 0xb8, 0xff, 0xf0, 0x40, 0x40, 0x1f, 0x05, 0x2f, 0x05, 0x02, + 0x7f, 0x05, 0x9f, 0x05, 0x02, 0x3f, 0x05, 0x9f, 0x05, 0xdf, 0x05, 0xff, + 0x05, 0x04, 0x05, 0x0f, 0x29, 0x01, 0xff, 0x29, 0x01, 0xa0, 0x29, 0x01, + 0x6f, 0x29, 0x9f, 0x29, 0x02, 0x50, 0x29, 0x01, 0x3f, 0x29, 0x01, 0x20, + 0x29, 0x01, 0xcf, 0x29, 0x01, 0x80, 0x29, 0x90, 0x29, 0x02, 0x4f, 0x29, + 0x5f, 0x29, 0x02, 0x30, 0x29, 0x01, 0x1f, 0x06, 0x22, 0x03, 0x06, 0xb8, + 0xff, 0xf0, 0x40, 0x25, 0x0b, 0x11, 0x48, 0x06, 0x03, 0x25, 0x00, 0x50, + 0x14, 0x0f, 0x11, 0x1f, 0x11, 0x4f, 0x11, 0x5f, 0x11, 0x04, 0x0f, 0x11, + 0x1f, 0x11, 0x4f, 0x11, 0x03, 0x07, 0x11, 0x11, 0x04, 0x1a, 0x12, 0x0a, + 0x0f, 0x27, 0x21, 0x04, 0x15, 0x00, 0x3f, 0x33, 0x33, 0x3f, 0x33, 0x33, + 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x71, 0x33, 0xed, 0x32, 0x39, 0x39, 0x2b, + 0x11, 0x33, 0x11, 0x33, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x72, 0x2f, 0x5d, 0x71, 0x72, 0x38, 0x33, 0x2f, 0x5d, + 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x38, 0x33, + 0x12, 0x39, 0x2f, 0x33, 0x39, 0x2f, 0x38, 0x12, 0x39, 0x11, 0x33, 0x11, + 0x33, 0x5d, 0x10, 0xed, 0x32, 0x11, 0x39, 0x2f, 0x38, 0x39, 0x33, 0x5d, + 0x11, 0x33, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x01, 0x22, 0x26, 0x27, 0x01, + 0x23, 0x01, 0x2e, 0x01, 0x27, 0x03, 0x33, 0x17, 0x1e, 0x03, 0x33, 0x11, + 0x33, 0x11, 0x32, 0x3e, 0x02, 0x3f, 0x01, 0x33, 0x03, 0x0e, 0x01, 0x07, + 0x01, 0x23, 0x01, 0x0e, 0x01, 0x23, 0x11, 0x23, 0x02, 0x53, 0x1a, 0x41, + 0x13, 0xfe, 0xea, 0xc8, 0x01, 0x61, 0x11, 0x42, 0x2d, 0xd8, 0xbc, 0x94, + 0x30, 0x41, 0x34, 0x30, 0x1e, 0xb4, 0x1e, 0x30, 0x34, 0x41, 0x30, 0x94, + 0xbc, 0xd8, 0x2d, 0x42, 0x11, 0x01, 0x61, 0xc8, 0xfe, 0xea, 0x13, 0x41, + 0x1a, 0xb4, 0x01, 0xdd, 0x0c, 0x08, 0xfe, 0x0f, 0x02, 0x50, 0x0e, 0x55, + 0x42, 0x01, 0x45, 0xef, 0x4d, 0x5c, 0x32, 0x10, 0x01, 0xda, 0xfe, 0x26, + 0x10, 0x32, 0x5c, 0x4d, 0xef, 0xfe, 0xbb, 0x42, 0x55, 0x0e, 0xfd, 0xb0, + 0x01, 0xf1, 0x08, 0x0c, 0xfe, 0x23, 0x00, 0x00, 0x00, 0x01, 0x00, 0x31, + 0xff, 0xec, 0x03, 0x5e, 0x04, 0x4e, 0x00, 0x37, 0x00, 0xaf, 0x40, 0x1c, + 0x05, 0x35, 0x15, 0x35, 0x02, 0x05, 0x26, 0x15, 0x26, 0x25, 0x26, 0x03, + 0x83, 0x2d, 0x01, 0x2d, 0x0f, 0x15, 0x46, 0x28, 0x28, 0x33, 0x47, 0x0a, + 0x1d, 0x49, 0x40, 0x1e, 0xb8, 0xff, 0xc0, 0x40, 0x56, 0x1e, 0x24, 0x48, + 0x8f, 0x0f, 0x01, 0x1e, 0x0f, 0x1e, 0x0f, 0x03, 0x90, 0x0a, 0x01, 0x90, + 0x0a, 0xa0, 0x0a, 0x02, 0x1f, 0x0a, 0x01, 0x0a, 0x39, 0x80, 0x10, 0x39, + 0x01, 0x04, 0x49, 0x03, 0x40, 0x0c, 0x14, 0x48, 0x03, 0x2d, 0x0f, 0x50, + 0x8f, 0x10, 0x9f, 0x10, 0xaf, 0x10, 0x03, 0x10, 0x10, 0x23, 0x07, 0x00, + 0x1d, 0x01, 0x90, 0x1d, 0xe0, 0x1d, 0xf0, 0x1d, 0x03, 0x1d, 0x1d, 0x18, + 0x50, 0x23, 0x10, 0x07, 0x50, 0x00, 0x60, 0x04, 0x70, 0x04, 0x80, 0x04, + 0x03, 0xef, 0x04, 0x01, 0x20, 0x04, 0x01, 0x04, 0x04, 0x00, 0x16, 0x00, + 0x3f, 0x32, 0x2f, 0x5d, 0x5d, 0x71, 0x10, 0xed, 0x3f, 0xed, 0x33, 0x2f, + 0x5d, 0x71, 0x11, 0x12, 0x39, 0x2f, 0x71, 0xed, 0x39, 0x01, 0x2f, 0x2b, + 0xed, 0x5d, 0x1a, 0x10, 0xcc, 0x5d, 0x5d, 0x71, 0x11, 0x39, 0x39, 0x2f, + 0x2f, 0x5d, 0x2b, 0x1a, 0xed, 0x10, 0xed, 0x32, 0x2f, 0xed, 0x12, 0x39, + 0x71, 0x31, 0x30, 0x5d, 0x5d, 0x05, 0x22, 0x26, 0x27, 0x37, 0x1e, 0x01, + 0x33, 0x32, 0x36, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x35, 0x32, 0x3e, 0x02, + 0x35, 0x34, 0x26, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x27, 0x3e, 0x03, 0x33, + 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x15, 0x1e, 0x03, 0x15, + 0x14, 0x0e, 0x02, 0x01, 0xca, 0xa7, 0xc5, 0x2d, 0x9f, 0x19, 0x7e, 0x67, + 0x60, 0x71, 0x37, 0x5c, 0x78, 0x40, 0x40, 0x72, 0x56, 0x31, 0x63, 0x5d, + 0x23, 0x46, 0x3c, 0x2a, 0x07, 0xa2, 0x0c, 0x3e, 0x61, 0x80, 0x4e, 0x55, + 0x8a, 0x62, 0x35, 0x2c, 0x47, 0x58, 0x2d, 0x38, 0x64, 0x4b, 0x2b, 0x31, + 0x65, 0x98, 0x14, 0x7d, 0x81, 0x2c, 0x4e, 0x56, 0x5e, 0x5b, 0x3b, 0x4e, + 0x2d, 0x12, 0x89, 0x0f, 0x26, 0x43, 0x34, 0x4a, 0x56, 0x0e, 0x21, 0x37, + 0x2a, 0x14, 0x44, 0x62, 0x3f, 0x1d, 0x2a, 0x4c, 0x68, 0x3f, 0x39, 0x58, + 0x3d, 0x24, 0x04, 0x02, 0x06, 0x29, 0x43, 0x5d, 0x3a, 0x45, 0x77, 0x57, + 0x31, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8e, 0x00, 0x00, 0x03, 0xea, + 0x04, 0x3a, 0x00, 0x13, 0x00, 0xba, 0x40, 0x19, 0x09, 0x11, 0x01, 0xe9, + 0x11, 0xf9, 0x11, 0x02, 0x04, 0x0f, 0x01, 0xe4, 0x0f, 0xf4, 0x0f, 0x02, + 0x0b, 0x05, 0x01, 0xeb, 0x05, 0xfb, 0x05, 0x02, 0x10, 0xb8, 0xff, 0xc0, + 0x40, 0x6b, 0x1d, 0x3c, 0x48, 0x99, 0x10, 0x01, 0x06, 0x40, 0x1d, 0x3c, + 0x48, 0x77, 0x06, 0x97, 0x06, 0x02, 0x06, 0x07, 0x01, 0xe6, 0x07, 0xf6, + 0x07, 0x02, 0x9c, 0x07, 0x01, 0x69, 0x07, 0x89, 0x07, 0x02, 0x1f, 0x11, + 0x2f, 0x11, 0x4f, 0x11, 0x03, 0x09, 0x48, 0x40, 0x07, 0x40, 0x0a, 0x01, + 0x50, 0x0a, 0x01, 0x9f, 0x0a, 0xff, 0x0a, 0x02, 0x0a, 0x15, 0x80, 0x00, + 0x15, 0xc0, 0x15, 0xd0, 0x15, 0xe0, 0x15, 0x04, 0xc0, 0x15, 0x01, 0x80, + 0x15, 0x90, 0x15, 0xb0, 0x15, 0xc0, 0x15, 0xd0, 0x15, 0x05, 0x11, 0x01, + 0x48, 0xc0, 0x12, 0x01, 0x00, 0x12, 0x10, 0x12, 0x30, 0x12, 0xe0, 0x12, + 0xf0, 0x12, 0x05, 0x08, 0x12, 0x10, 0x07, 0x13, 0x0f, 0x0a, 0x06, 0x12, + 0x15, 0x00, 0x3f, 0x33, 0x33, 0x3f, 0x33, 0x33, 0x01, 0x2f, 0x5e, 0x5d, + 0x71, 0xed, 0x32, 0x5d, 0x71, 0x72, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x72, + 0x32, 0x1a, 0xed, 0x31, 0x30, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x71, 0x72, + 0x00, 0x5d, 0x2b, 0x5d, 0x2b, 0x71, 0x72, 0x71, 0x72, 0x01, 0x71, 0x72, + 0x01, 0x11, 0x14, 0x0e, 0x02, 0x07, 0x01, 0x33, 0x11, 0x23, 0x11, 0x34, + 0x3e, 0x02, 0x37, 0x01, 0x23, 0x11, 0x01, 0x3c, 0x03, 0x03, 0x03, 0x01, + 0x01, 0xf3, 0xc5, 0xac, 0x02, 0x03, 0x03, 0x02, 0xfe, 0x06, 0xc0, 0x04, + 0x3a, 0xfd, 0xb0, 0x17, 0x4d, 0x52, 0x4a, 0x15, 0x03, 0x65, 0xfb, 0xc6, + 0x02, 0x94, 0x13, 0x39, 0x3c, 0x39, 0x14, 0xfc, 0x97, 0x04, 0x3a, 0x00, + 0xff, 0xff, 0x00, 0x8e, 0x00, 0x00, 0x03, 0xea, 0x05, 0xf0, 0x12, 0x26, + 0x01, 0xd4, 0x00, 0x00, 0x11, 0x07, 0x02, 0x9e, 0x00, 0xea, 0x00, 0x00, + 0x00, 0x13, 0x40, 0x0b, 0x01, 0x14, 0x11, 0x26, 0x01, 0x02, 0x19, 0x21, + 0x12, 0x08, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x8a, 0x00, 0x00, 0x03, 0x8a, 0x04, 0x3a, 0x00, 0x15, + 0x00, 0xca, 0x40, 0x11, 0x75, 0x10, 0x85, 0x10, 0x95, 0x10, 0x03, 0x39, + 0x0f, 0x79, 0x0f, 0x89, 0x0f, 0x99, 0x0f, 0x04, 0x0d, 0xb8, 0xff, 0xd0, + 0x40, 0x7b, 0x0c, 0x11, 0x48, 0x85, 0x0b, 0x95, 0x0b, 0x02, 0x78, 0x05, + 0x01, 0x85, 0x0d, 0x95, 0x0d, 0x02, 0x2f, 0x17, 0x4f, 0x17, 0x02, 0x49, + 0x10, 0x01, 0x38, 0x10, 0x01, 0x10, 0x0d, 0x79, 0x08, 0x89, 0x08, 0x99, + 0x08, 0x03, 0x08, 0x47, 0x0d, 0x01, 0x36, 0x0d, 0x01, 0x0d, 0x09, 0x10, + 0x09, 0x09, 0x0e, 0x02, 0x14, 0x46, 0x00, 0x15, 0x10, 0x15, 0x30, 0x15, + 0xf0, 0x15, 0x04, 0x15, 0x39, 0x0f, 0x49, 0x0f, 0x02, 0x0f, 0x20, 0x0e, + 0x01, 0x20, 0x0e, 0x90, 0x0e, 0x02, 0x90, 0x0e, 0x01, 0x4f, 0x0e, 0x01, + 0x30, 0x0e, 0x01, 0x2f, 0x0e, 0x01, 0x10, 0x0e, 0x01, 0x0e, 0x10, 0x0e, + 0x0d, 0x13, 0x50, 0x0f, 0x02, 0x3f, 0x02, 0x4f, 0x02, 0x03, 0x0f, 0x02, + 0x3f, 0x02, 0xff, 0x02, 0x03, 0x08, 0x02, 0x02, 0x0e, 0x15, 0x15, 0x0e, + 0x15, 0x08, 0x08, 0x00, 0x0f, 0x00, 0x3f, 0x32, 0x2f, 0x3f, 0x33, 0x2f, + 0x11, 0x39, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x32, 0x01, 0x2f, 0x38, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x72, 0x33, 0x71, 0x2f, 0x5d, 0xed, 0x32, + 0x11, 0x39, 0x2f, 0x38, 0x39, 0x71, 0x71, 0x33, 0x5d, 0x11, 0x33, 0x71, + 0x71, 0x5d, 0x31, 0x30, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, + 0x13, 0x33, 0x11, 0x32, 0x3e, 0x02, 0x3f, 0x01, 0x33, 0x03, 0x0e, 0x01, + 0x07, 0x01, 0x23, 0x01, 0x0e, 0x01, 0x23, 0x11, 0x23, 0x8a, 0xb4, 0x1e, + 0x30, 0x34, 0x41, 0x30, 0x94, 0xbc, 0xd8, 0x2d, 0x42, 0x11, 0x01, 0x61, + 0xc8, 0xfe, 0xea, 0x13, 0x41, 0x1a, 0xb4, 0x04, 0x3a, 0xfe, 0x26, 0x10, + 0x32, 0x5c, 0x4d, 0xef, 0xfe, 0xbb, 0x42, 0x55, 0x0e, 0xfd, 0xb0, 0x01, + 0xf1, 0x08, 0x0c, 0xfe, 0x23, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x0b, + 0xff, 0xec, 0x04, 0x1d, 0x04, 0x3a, 0x00, 0x19, 0x00, 0xba, 0x40, 0x2a, + 0x1a, 0x15, 0x01, 0x82, 0x07, 0x01, 0x74, 0x07, 0x01, 0x55, 0x07, 0x65, + 0x07, 0x02, 0x82, 0x06, 0x01, 0x75, 0x06, 0x01, 0x16, 0x06, 0x26, 0x06, + 0x66, 0x06, 0x03, 0x72, 0x05, 0x82, 0x05, 0x02, 0x64, 0x05, 0x01, 0x56, + 0x05, 0x01, 0x86, 0x04, 0x01, 0x04, 0xb8, 0xff, 0xf0, 0x40, 0x3d, 0x0c, + 0x0f, 0x48, 0x1a, 0x03, 0x01, 0x74, 0x02, 0x01, 0x07, 0x18, 0x0c, 0x11, + 0x48, 0x19, 0x46, 0x40, 0x7f, 0x00, 0x8f, 0x00, 0xef, 0x00, 0x03, 0x00, + 0x1b, 0x80, 0xb0, 0x1b, 0xc0, 0x1b, 0xd0, 0x1b, 0x03, 0xb0, 0x1b, 0xf0, + 0x1b, 0x02, 0x40, 0x1b, 0x60, 0x1b, 0x70, 0x1b, 0xa0, 0x1b, 0xb0, 0x1b, + 0xc0, 0x1b, 0x06, 0x83, 0x17, 0x01, 0x17, 0x36, 0x06, 0x01, 0x06, 0x02, + 0xb8, 0xff, 0xf0, 0x40, 0x1a, 0x18, 0x1c, 0x48, 0xd7, 0x02, 0xe7, 0x02, + 0x02, 0x80, 0x02, 0x01, 0x02, 0x8f, 0x0c, 0x01, 0x0c, 0x02, 0x50, 0x17, + 0x0f, 0x10, 0x50, 0x09, 0x16, 0x00, 0x15, 0x00, 0x3f, 0x3f, 0xed, 0x3f, + 0xed, 0x01, 0x2f, 0x5d, 0x33, 0x5d, 0x5d, 0x2b, 0x33, 0x71, 0x33, 0x5d, + 0x5d, 0x71, 0x72, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x31, 0x30, 0x00, + 0x2b, 0x01, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x21, 0x11, 0x21, 0x06, 0x02, 0x0e, 0x03, 0x23, + 0x22, 0x26, 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x03, 0x12, 0x37, + 0x21, 0x11, 0x03, 0x68, 0xfe, 0x89, 0x19, 0x2a, 0x2c, 0x33, 0x47, 0x5e, + 0x41, 0x1d, 0x30, 0x11, 0x0b, 0x26, 0x13, 0x23, 0x33, 0x28, 0x21, 0x22, + 0x26, 0x19, 0x02, 0xce, 0x03, 0xb7, 0xb8, 0xfe, 0xe1, 0xd8, 0x95, 0x5d, + 0x2a, 0x08, 0x05, 0x81, 0x04, 0x05, 0x2a, 0x5e, 0x95, 0xd8, 0x01, 0x1d, + 0xb7, 0xfb, 0xc6, 0x00, 0x00, 0x01, 0x00, 0x8e, 0x00, 0x00, 0x04, 0xf3, + 0x04, 0x3a, 0x00, 0x1c, 0x01, 0x03, 0x40, 0x15, 0x89, 0x12, 0x99, 0x12, + 0x02, 0x86, 0x0c, 0x96, 0x0c, 0x02, 0x6b, 0x11, 0x7b, 0x11, 0x02, 0x64, + 0x0d, 0x74, 0x0d, 0x02, 0x01, 0xb8, 0xff, 0xe0, 0x40, 0x7a, 0x1d, 0x3c, + 0x48, 0x8a, 0x01, 0x9a, 0x01, 0x02, 0x39, 0x01, 0x01, 0x00, 0x20, 0x1d, + 0x3c, 0x48, 0x85, 0x00, 0x95, 0x00, 0x02, 0x36, 0x00, 0x56, 0x00, 0x02, + 0x8f, 0x13, 0x9f, 0x13, 0x02, 0x5d, 0x13, 0x6d, 0x13, 0x7d, 0x13, 0x03, + 0x3b, 0x13, 0x4b, 0x13, 0x02, 0x19, 0x13, 0x29, 0x13, 0x02, 0x80, 0x0b, + 0x90, 0x0b, 0x02, 0x52, 0x0b, 0x62, 0x0b, 0x72, 0x0b, 0x03, 0x34, 0x0b, + 0x44, 0x0b, 0x02, 0x16, 0x0b, 0x26, 0x0b, 0x02, 0x01, 0x00, 0x0f, 0x0f, + 0x08, 0x15, 0x48, 0x40, 0x13, 0x50, 0x16, 0x01, 0x9f, 0x16, 0xff, 0x16, + 0x02, 0x16, 0x1e, 0x80, 0x90, 0x1e, 0xc0, 0x1e, 0xd0, 0x1e, 0x03, 0x4f, + 0x1e, 0x01, 0x0b, 0x08, 0x48, 0xc0, 0x09, 0x01, 0x00, 0x09, 0x10, 0x09, + 0x30, 0x09, 0xe0, 0x09, 0xf0, 0x09, 0x05, 0x08, 0x09, 0x1c, 0x02, 0x02, + 0xb8, 0xff, 0xc0, 0x40, 0x16, 0x1d, 0x3c, 0x48, 0x02, 0x20, 0x13, 0x16, + 0x48, 0x54, 0x02, 0x01, 0x13, 0x02, 0x0a, 0x0f, 0x16, 0x0f, 0x40, 0x1d, + 0x3c, 0x48, 0x0f, 0xb8, 0xff, 0xe0, 0x40, 0x12, 0x13, 0x16, 0x48, 0x2f, + 0x0f, 0x3f, 0x0f, 0x4f, 0x0f, 0x7f, 0x0f, 0x8f, 0x0f, 0x05, 0x0f, 0x01, + 0x09, 0x15, 0x00, 0x3f, 0x33, 0x33, 0x5d, 0x2b, 0x2b, 0x33, 0x3f, 0x33, + 0x33, 0x5d, 0x2b, 0x2b, 0x11, 0x33, 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0xed, + 0x32, 0x5d, 0x5d, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x32, 0x1a, 0xed, 0x12, + 0x39, 0x3d, 0x2f, 0x33, 0x33, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x5d, + 0x5d, 0x21, 0x23, 0x01, 0x1e, 0x03, 0x15, 0x11, 0x23, 0x11, 0x21, 0x13, + 0x1e, 0x01, 0x17, 0x3e, 0x01, 0x37, 0x13, 0x21, 0x11, 0x23, 0x11, 0x34, + 0x3e, 0x02, 0x37, 0x03, 0x13, 0x99, 0xfe, 0xbc, 0x01, 0x03, 0x01, 0x01, + 0xae, 0x01, 0x18, 0xdc, 0x17, 0x25, 0x08, 0x0a, 0x23, 0x17, 0xdc, 0x01, + 0x0d, 0xad, 0x01, 0x03, 0x02, 0x02, 0x03, 0xb7, 0x1a, 0x3c, 0x3d, 0x39, + 0x17, 0xfd, 0x2c, 0x04, 0x3a, 0xfd, 0x6b, 0x3f, 0x97, 0x48, 0x48, 0x97, + 0x3f, 0x02, 0x95, 0xfb, 0xc6, 0x02, 0xd4, 0x16, 0x3c, 0x40, 0x3c, 0x17, + 0x00, 0x01, 0x00, 0x8e, 0x00, 0x00, 0x03, 0xdd, 0x04, 0x3a, 0x00, 0x0b, + 0x00, 0x8b, 0x40, 0x30, 0x05, 0x46, 0x40, 0x02, 0x0f, 0x06, 0x4f, 0x06, + 0x02, 0x39, 0x2f, 0x06, 0x6f, 0x06, 0x8f, 0x06, 0xff, 0x06, 0x04, 0xbf, + 0x06, 0x01, 0x8f, 0x06, 0x9f, 0x06, 0xff, 0x06, 0x03, 0x06, 0x0d, 0x80, + 0x00, 0x0d, 0xc0, 0x0d, 0xd0, 0x0d, 0xe0, 0x0d, 0x04, 0xc0, 0x0d, 0x01, + 0x80, 0x0d, 0x01, 0x0d, 0xb8, 0xff, 0xc0, 0x40, 0x31, 0x13, 0x17, 0x48, + 0x01, 0x09, 0x46, 0xc0, 0x0a, 0x01, 0x00, 0x0a, 0x10, 0x0a, 0x30, 0x0a, + 0xe0, 0x0a, 0xf0, 0x0a, 0x05, 0x0a, 0x08, 0x50, 0xb0, 0x01, 0xc0, 0x01, + 0x02, 0x9f, 0x01, 0xaf, 0x01, 0xbf, 0x01, 0x03, 0x0f, 0x01, 0x3f, 0x01, + 0x02, 0x08, 0x01, 0x01, 0x0a, 0x05, 0x15, 0x03, 0x00, 0x0f, 0x00, 0x3f, + 0x32, 0x3f, 0x33, 0x39, 0x2f, 0x5e, 0x5d, 0x71, 0x72, 0xed, 0x01, 0x2f, + 0x5d, 0x71, 0xed, 0x32, 0x2b, 0x5d, 0x71, 0x72, 0x1a, 0x10, 0xdc, 0x5d, + 0x71, 0x72, 0x5e, 0x5d, 0x32, 0x1a, 0xed, 0x31, 0x30, 0x01, 0x11, 0x21, + 0x11, 0x33, 0x11, 0x23, 0x11, 0x21, 0x11, 0x23, 0x11, 0x01, 0x42, 0x01, + 0xe7, 0xb4, 0xb4, 0xfe, 0x19, 0xb4, 0x04, 0x3a, 0xfe, 0x36, 0x01, 0xca, + 0xfb, 0xc6, 0x01, 0xed, 0xfe, 0x13, 0x04, 0x3a, 0xff, 0xff, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x04, 0x4e, 0x12, 0x06, 0x00, 0x52, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x8e, 0x00, 0x00, 0x03, 0xc7, 0x04, 0x3a, 0x00, 0x07, + 0x00, 0x6d, 0x40, 0x50, 0x01, 0x46, 0x40, 0x0f, 0x02, 0x4f, 0x02, 0x02, + 0x39, 0x2f, 0x02, 0x6f, 0x02, 0x8f, 0x02, 0xff, 0x02, 0x04, 0xbf, 0x02, + 0x01, 0x8f, 0x02, 0x9f, 0x02, 0xff, 0x02, 0x03, 0x02, 0x09, 0x80, 0x00, + 0x09, 0xc0, 0x09, 0xd0, 0x09, 0xe0, 0x09, 0x04, 0xc0, 0x09, 0x01, 0x80, + 0x09, 0xb0, 0x09, 0xc0, 0x09, 0xd0, 0x09, 0x04, 0x2f, 0x09, 0x01, 0x05, + 0x46, 0xc0, 0x06, 0x01, 0x00, 0x06, 0x10, 0x06, 0x30, 0x06, 0xe0, 0x06, + 0xf0, 0x06, 0x05, 0x08, 0x06, 0x04, 0x50, 0x07, 0x0f, 0x06, 0x01, 0x15, + 0x00, 0x3f, 0x33, 0x3f, 0xed, 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x5d, + 0x5d, 0x71, 0x72, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x72, 0x5e, 0x5d, 0x1a, + 0xed, 0x31, 0x30, 0x01, 0x11, 0x23, 0x11, 0x21, 0x11, 0x23, 0x11, 0x03, + 0xc7, 0xb4, 0xfe, 0x2f, 0xb4, 0x04, 0x3a, 0xfb, 0xc6, 0x03, 0xb7, 0xfc, + 0x49, 0x04, 0x3a, 0x00, 0xff, 0xff, 0x00, 0x84, 0xfe, 0x57, 0x04, 0x1d, + 0x04, 0x4d, 0x12, 0x06, 0x00, 0x53, 0x00, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x03, 0xca, 0x04, 0x4e, 0x12, 0x06, 0x00, 0x46, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x23, 0x00, 0x00, 0x03, 0x87, 0x04, 0x3a, 0x00, 0x07, + 0x00, 0x48, 0x40, 0x2b, 0x07, 0x0e, 0x04, 0x02, 0x05, 0x0e, 0xdf, 0x02, + 0x01, 0x02, 0x04, 0x46, 0x00, 0x05, 0x10, 0x05, 0x02, 0x08, 0x05, 0x05, + 0x08, 0x09, 0xa0, 0x09, 0x01, 0x5f, 0x09, 0x01, 0x30, 0x09, 0x40, 0x09, + 0x02, 0x2f, 0x09, 0x01, 0x04, 0x15, 0x03, 0x07, 0x50, 0x00, 0x0f, 0x00, + 0x3f, 0xed, 0x32, 0x3f, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x11, 0x12, 0x39, + 0x2f, 0x5e, 0x5d, 0xed, 0xcc, 0x5d, 0x2b, 0x01, 0x18, 0x10, 0x4d, 0xe4, + 0x31, 0x30, 0x13, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x21, 0x23, 0x03, + 0x64, 0xfe, 0xa8, 0xb4, 0xfe, 0xa8, 0x04, 0x3a, 0x83, 0xfc, 0x49, 0x03, + 0xb7, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x05, 0xfe, 0x57, 0x03, 0xfc, + 0x04, 0x3a, 0x12, 0x06, 0x00, 0x5c, 0x00, 0x00, 0x00, 0x03, 0x00, 0x56, + 0xfe, 0x57, 0x06, 0x3e, 0x05, 0xcc, 0x00, 0x35, 0x00, 0x4a, 0x00, 0x5f, + 0x00, 0xe5, 0x40, 0x0d, 0x8d, 0x5d, 0x9d, 0x5d, 0xad, 0x5d, 0x03, 0x4e, + 0x18, 0x0e, 0x11, 0x48, 0x48, 0xb8, 0xff, 0xe8, 0xb3, 0x0e, 0x11, 0x48, + 0x39, 0xb8, 0xff, 0xe8, 0xb6, 0x0e, 0x11, 0x48, 0x6d, 0x52, 0x01, 0x33, + 0xb8, 0xff, 0xe0, 0x40, 0x4b, 0x07, 0x0a, 0x48, 0x0f, 0x1a, 0x1f, 0x1a, + 0x2f, 0x1a, 0x03, 0x18, 0x20, 0x07, 0x0a, 0x48, 0x00, 0x03, 0x10, 0x03, + 0x20, 0x03, 0x03, 0x07, 0x04, 0x36, 0x47, 0x40, 0x19, 0x0e, 0x0d, 0x00, + 0x0e, 0x0e, 0x4b, 0x47, 0x24, 0x00, 0x44, 0x00, 0x94, 0x00, 0xa4, 0x00, + 0x04, 0x00, 0x55, 0x27, 0x0d, 0x48, 0x41, 0x26, 0x04, 0x0e, 0x01, 0x04, + 0x0e, 0x24, 0x0e, 0x44, 0x0e, 0x64, 0x0e, 0x84, 0x0e, 0xb4, 0x0e, 0xe4, + 0x0e, 0x07, 0x07, 0x0e, 0x34, 0x61, 0x01, 0x61, 0xb8, 0xff, 0xc0, 0x40, + 0x34, 0x1e, 0x23, 0x48, 0xdb, 0x61, 0x01, 0x54, 0x61, 0x64, 0x61, 0x84, + 0x61, 0x94, 0x61, 0x04, 0x40, 0x61, 0x01, 0x02, 0x20, 0x61, 0x30, 0x61, + 0x02, 0x1f, 0x61, 0x01, 0x00, 0x61, 0x01, 0x26, 0x00, 0x1f, 0x2d, 0x50, + 0x03, 0x46, 0x50, 0x31, 0x1c, 0x10, 0x08, 0x12, 0x5b, 0x03, 0x3b, 0x50, + 0x05, 0x16, 0x16, 0x0d, 0x1b, 0x00, 0x3f, 0x3f, 0x33, 0xed, 0x17, 0x32, + 0x3f, 0x33, 0xed, 0x17, 0x32, 0x3f, 0x01, 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, + 0x5d, 0x5d, 0x2b, 0x71, 0x2f, 0x5e, 0x5d, 0x71, 0x33, 0x33, 0xed, 0x32, + 0x32, 0xdc, 0x5d, 0xed, 0x2b, 0x01, 0x18, 0x10, 0x4d, 0xf4, 0x1a, 0xed, + 0x31, 0x30, 0x5f, 0x5e, 0x5d, 0x2b, 0x5d, 0x00, 0x2b, 0x5d, 0x01, 0x2b, + 0x2b, 0x2b, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x26, 0x27, 0x23, + 0x1e, 0x01, 0x15, 0x11, 0x23, 0x11, 0x34, 0x36, 0x37, 0x23, 0x0e, 0x01, + 0x23, 0x22, 0x02, 0x11, 0x10, 0x12, 0x33, 0x32, 0x16, 0x17, 0x33, 0x34, + 0x2e, 0x02, 0x35, 0x11, 0x33, 0x11, 0x14, 0x0e, 0x02, 0x15, 0x33, 0x3e, + 0x01, 0x33, 0x32, 0x1e, 0x02, 0x05, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, + 0x02, 0x37, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x05, 0x34, + 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x1d, 0x01, 0x1e, 0x03, 0x33, 0x32, + 0x3e, 0x02, 0x06, 0x3e, 0x26, 0x56, 0x8c, 0x65, 0x69, 0x9e, 0x2a, 0x06, + 0x02, 0x03, 0xaa, 0x02, 0x03, 0x05, 0x2e, 0x95, 0x6f, 0xba, 0xb3, 0xb9, + 0xb4, 0x70, 0x95, 0x2d, 0x05, 0x02, 0x02, 0x01, 0xaa, 0x01, 0x01, 0x01, + 0x05, 0x2e, 0x90, 0x72, 0x65, 0x8c, 0x56, 0x26, 0xfa, 0xd5, 0x1a, 0x38, + 0x55, 0x3c, 0x3c, 0x5e, 0x41, 0x22, 0x02, 0x22, 0x40, 0x5e, 0x3d, 0x39, + 0x56, 0x39, 0x1d, 0x04, 0x6e, 0x17, 0x34, 0x58, 0x40, 0x35, 0x5c, 0x46, + 0x28, 0x01, 0x23, 0x41, 0x5c, 0x3c, 0x41, 0x58, 0x35, 0x17, 0x02, 0x22, + 0x7b, 0xd0, 0x96, 0x55, 0x58, 0x64, 0x23, 0x4d, 0x3a, 0xfe, 0x59, 0x01, + 0xa7, 0x36, 0x52, 0x28, 0x68, 0x5a, 0x01, 0x13, 0x01, 0x19, 0x01, 0x1c, + 0x01, 0x1a, 0x5a, 0x62, 0x0a, 0x29, 0x2e, 0x2a, 0x0c, 0x01, 0xa3, 0xfe, + 0x5c, 0x0b, 0x2b, 0x2f, 0x2b, 0x0c, 0x68, 0x59, 0x50, 0x91, 0xcd, 0x81, + 0x70, 0xa0, 0x67, 0x30, 0x2b, 0x62, 0x9d, 0x71, 0x18, 0x73, 0x9f, 0x62, + 0x2b, 0x2e, 0x66, 0xa3, 0x74, 0x64, 0x9c, 0x6c, 0x38, 0x22, 0x60, 0xa9, + 0x87, 0x17, 0x6c, 0x96, 0x5d, 0x29, 0x3a, 0x6e, 0x9f, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x17, 0x00, 0x00, 0x03, 0xea, 0x04, 0x3a, 0x12, 0x06, + 0x00, 0x5b, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8e, 0xfe, 0x68, 0x04, 0x66, + 0x04, 0x3a, 0x00, 0x0b, 0x00, 0x5b, 0xb2, 0x07, 0x49, 0x08, 0xb8, 0xff, + 0xc0, 0x40, 0x36, 0x12, 0x15, 0x48, 0x08, 0x08, 0x05, 0x46, 0x40, 0xdf, + 0x02, 0x01, 0xcf, 0x02, 0xdf, 0x02, 0x02, 0x02, 0x40, 0x19, 0x1c, 0x48, + 0x00, 0x02, 0x30, 0x02, 0x02, 0x02, 0x0d, 0x80, 0x6f, 0x0d, 0x01, 0x01, + 0x46, 0x00, 0x0a, 0x10, 0x0a, 0x30, 0x0a, 0xf0, 0x0a, 0x04, 0x08, 0x0a, + 0x05, 0x01, 0x50, 0x0a, 0x15, 0x08, 0x03, 0x00, 0x0f, 0x00, 0x3f, 0x32, + 0x2f, 0x3f, 0xed, 0x32, 0x01, 0x2f, 0x5e, 0x5d, 0xed, 0x5d, 0x1a, 0x10, + 0xdc, 0x5d, 0x2b, 0x5d, 0x71, 0x1a, 0xed, 0x32, 0x2f, 0x2b, 0xed, 0x31, + 0x30, 0x01, 0x11, 0x21, 0x11, 0x33, 0x11, 0x33, 0x11, 0x23, 0x11, 0x21, + 0x11, 0x01, 0x42, 0x01, 0xdd, 0xb4, 0x93, 0xa3, 0xfc, 0xcb, 0x04, 0x3a, + 0xfc, 0x49, 0x03, 0xb7, 0xfc, 0x49, 0xfd, 0xe5, 0x01, 0x98, 0x04, 0x3a, + 0x00, 0x01, 0x00, 0x7a, 0x00, 0x00, 0x03, 0x9c, 0x04, 0x3a, 0x00, 0x19, + 0x00, 0x5c, 0x40, 0x25, 0x6c, 0x0f, 0x7c, 0x0f, 0x8c, 0x0f, 0x03, 0x16, + 0x20, 0x07, 0x0a, 0x48, 0x15, 0x18, 0x07, 0x0c, 0x48, 0x0c, 0x46, 0x40, + 0x09, 0xaf, 0x0d, 0x01, 0x7f, 0x0d, 0x8f, 0x0d, 0xef, 0x0d, 0x03, 0x0d, + 0x1b, 0x80, 0x01, 0x46, 0x18, 0xb8, 0xff, 0xc0, 0x40, 0x14, 0x09, 0x0c, + 0x48, 0x18, 0x0e, 0x13, 0x50, 0x09, 0x0f, 0x06, 0x1f, 0x06, 0x02, 0x06, + 0x06, 0x0c, 0x15, 0x0a, 0x00, 0x0f, 0x00, 0x3f, 0x32, 0x3f, 0x39, 0x2f, + 0x5d, 0x33, 0xed, 0x32, 0x01, 0x2f, 0x2b, 0xed, 0x1a, 0x10, 0xdc, 0x5d, + 0x71, 0x32, 0x1a, 0xed, 0x31, 0x30, 0x2b, 0x2b, 0x00, 0x5d, 0x01, 0x11, + 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, 0x37, 0x11, 0x33, 0x11, 0x23, 0x11, + 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x11, 0x01, 0x2e, 0x10, 0x27, + 0x40, 0x2f, 0x46, 0x84, 0x4a, 0xb4, 0xb4, 0x26, 0x51, 0x57, 0x5d, 0x33, + 0x42, 0x65, 0x45, 0x24, 0x04, 0x3a, 0xfe, 0x6e, 0x22, 0x3b, 0x2c, 0x19, + 0x1a, 0x15, 0x02, 0x05, 0xfb, 0xc6, 0x01, 0xcd, 0x0f, 0x1f, 0x18, 0x10, + 0x29, 0x4c, 0x6e, 0x45, 0x01, 0x9b, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8e, + 0x00, 0x00, 0x05, 0xdd, 0x04, 0x3a, 0x00, 0x0b, 0x00, 0x74, 0x40, 0x34, + 0x07, 0x46, 0x04, 0x04, 0x00, 0x0b, 0x46, 0x40, 0x04, 0x08, 0x34, 0x08, + 0x02, 0x24, 0x08, 0x84, 0x08, 0xd4, 0x08, 0xe4, 0x08, 0x04, 0x0b, 0x08, + 0x01, 0x8b, 0x08, 0xfb, 0x08, 0x02, 0x08, 0x0d, 0x80, 0xfb, 0x0d, 0x01, + 0xb4, 0x0d, 0xd4, 0x0d, 0x02, 0x80, 0x0d, 0x01, 0x02, 0x70, 0x0d, 0x01, + 0x5f, 0x0d, 0x01, 0x0d, 0xb8, 0xff, 0xc0, 0x40, 0x17, 0x09, 0x0c, 0x48, + 0x03, 0x46, 0x00, 0x00, 0x10, 0x00, 0x30, 0x00, 0x03, 0x08, 0x00, 0x09, + 0x05, 0x01, 0x0f, 0x07, 0x03, 0x50, 0x00, 0x15, 0x00, 0x3f, 0xed, 0x32, + 0x3f, 0x33, 0x33, 0x01, 0x2f, 0x5e, 0x5d, 0xed, 0x2b, 0x5d, 0x5d, 0x5f, + 0x5d, 0x5d, 0x5d, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x71, 0x72, 0x1a, 0xed, + 0x12, 0x39, 0x2f, 0xed, 0x31, 0x30, 0x33, 0x11, 0x33, 0x11, 0x21, 0x11, + 0x33, 0x11, 0x21, 0x11, 0x33, 0x11, 0x8e, 0xb4, 0x01, 0x9a, 0xb4, 0x01, + 0x99, 0xb4, 0x04, 0x3a, 0xfc, 0x49, 0x03, 0xb7, 0xfc, 0x49, 0x03, 0xb7, + 0xfb, 0xc6, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8e, 0xfe, 0x68, 0x06, 0x66, + 0x04, 0x3a, 0x00, 0x0f, 0x00, 0x8d, 0x40, 0x60, 0x0d, 0x49, 0xf4, 0x0e, + 0x01, 0x0e, 0x0e, 0x0b, 0x46, 0x08, 0x07, 0x46, 0x40, 0x04, 0x04, 0x00, + 0x6b, 0x08, 0x01, 0x04, 0x08, 0x01, 0x54, 0x08, 0xe4, 0x08, 0x02, 0x3b, + 0x08, 0x01, 0x6b, 0x08, 0x7b, 0x08, 0x8b, 0x08, 0xfb, 0x08, 0x04, 0x54, + 0x08, 0x01, 0x08, 0x11, 0x80, 0xfb, 0x11, 0x01, 0xd4, 0x11, 0x01, 0x80, + 0x11, 0xb0, 0x11, 0x02, 0x02, 0x60, 0x11, 0x70, 0x11, 0x02, 0x5f, 0x11, + 0x01, 0x20, 0x11, 0x30, 0x11, 0x40, 0x11, 0x03, 0x03, 0x46, 0x00, 0x00, + 0x10, 0x00, 0x30, 0x00, 0xf0, 0x00, 0x04, 0x08, 0x00, 0x0e, 0x09, 0x05, + 0x01, 0x0f, 0x0b, 0x07, 0x03, 0x50, 0x00, 0x15, 0x00, 0x3f, 0xed, 0x32, + 0x32, 0x3f, 0x33, 0x33, 0x2f, 0x01, 0x2f, 0x5e, 0x5d, 0xed, 0x5d, 0x5d, + 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x1a, 0x10, 0xcc, 0x5d, 0x5d, 0x71, 0x71, + 0x72, 0x72, 0x11, 0x39, 0x2f, 0x1a, 0xed, 0x10, 0xed, 0x32, 0x2f, 0x5d, + 0xed, 0x31, 0x30, 0x33, 0x11, 0x33, 0x11, 0x21, 0x11, 0x33, 0x11, 0x21, + 0x11, 0x33, 0x11, 0x33, 0x11, 0x23, 0x11, 0x8e, 0xb4, 0x01, 0x95, 0xb4, + 0x01, 0x94, 0xb4, 0x93, 0xa3, 0x04, 0x3a, 0xfc, 0x49, 0x03, 0xb7, 0xfc, + 0x49, 0x03, 0xb7, 0xfc, 0x49, 0xfd, 0xe5, 0x01, 0x98, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x2d, 0x00, 0x00, 0x04, 0xac, 0x04, 0x3a, 0x00, 0x0e, + 0x00, 0x19, 0x00, 0x71, 0xb9, 0x00, 0x05, 0xff, 0xe0, 0xb3, 0x07, 0x0a, + 0x48, 0x02, 0xb8, 0xff, 0xe0, 0x40, 0x10, 0x07, 0x0b, 0x48, 0x03, 0x47, + 0x40, 0xb0, 0x15, 0x01, 0x15, 0x1b, 0x80, 0x50, 0x1b, 0x01, 0x1b, 0xb8, + 0xff, 0xc0, 0x40, 0x2d, 0x1e, 0x23, 0x48, 0xff, 0x1b, 0x01, 0x0e, 0x0b, + 0x0f, 0x46, 0x20, 0x09, 0x01, 0x20, 0x09, 0x01, 0x09, 0x19, 0x51, 0xaf, + 0x0e, 0xbf, 0x0e, 0xcf, 0x0e, 0x03, 0x0f, 0x0e, 0x1f, 0x0e, 0x4f, 0x0e, + 0x03, 0x07, 0x0e, 0x0e, 0x09, 0x0b, 0x50, 0x0c, 0x0f, 0x0f, 0x51, 0x09, + 0x15, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x71, + 0xed, 0x01, 0x2f, 0x5d, 0x71, 0xfd, 0xcc, 0x33, 0x5d, 0x2b, 0x71, 0x1a, + 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x31, 0x30, 0x2b, 0x2b, 0x01, 0x32, 0x16, + 0x15, 0x14, 0x0e, 0x02, 0x23, 0x21, 0x11, 0x21, 0x35, 0x21, 0x19, 0x01, + 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, 0x2b, 0x01, 0x03, 0x0d, 0xcd, + 0xd2, 0x34, 0x68, 0x9b, 0x67, 0xfe, 0x67, 0xfe, 0xb8, 0x01, 0xfc, 0xca, + 0x45, 0x60, 0x3b, 0x1a, 0x74, 0x85, 0xcb, 0x02, 0x70, 0x93, 0x9f, 0x4a, + 0x76, 0x52, 0x2c, 0x03, 0xb7, 0x83, 0xfe, 0x36, 0xfe, 0x0f, 0x19, 0x31, + 0x47, 0x2e, 0x5e, 0x57, 0x00, 0x03, 0x00, 0x8e, 0x00, 0x00, 0x05, 0x32, + 0x04, 0x3a, 0x00, 0x0c, 0x00, 0x17, 0x00, 0x1b, 0x00, 0x69, 0xb9, 0x00, + 0x05, 0xff, 0xe0, 0xb3, 0x07, 0x0a, 0x48, 0x02, 0xb8, 0xff, 0xe0, 0x40, + 0x3a, 0x07, 0x0a, 0x48, 0x03, 0x47, 0x13, 0x13, 0x09, 0x1b, 0x46, 0x40, + 0x9f, 0x18, 0xaf, 0x18, 0x02, 0x18, 0x1d, 0x80, 0x0c, 0x0d, 0x46, 0x10, + 0x09, 0x20, 0x09, 0x40, 0x09, 0x03, 0x09, 0x17, 0x51, 0xaf, 0x0c, 0xbf, + 0x0c, 0xcf, 0x0c, 0x03, 0x0f, 0x0c, 0x1f, 0x0c, 0x4f, 0x0c, 0x03, 0x07, + 0x0c, 0x0c, 0x09, 0x19, 0x0a, 0x0f, 0x18, 0x0d, 0x51, 0x09, 0x15, 0x00, + 0x3f, 0xed, 0x33, 0x3f, 0x33, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x71, 0xed, + 0x01, 0x2f, 0x5d, 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x12, + 0x39, 0x2f, 0xed, 0x31, 0x30, 0x2b, 0x2b, 0x01, 0x32, 0x16, 0x15, 0x14, + 0x0e, 0x02, 0x23, 0x21, 0x11, 0x33, 0x19, 0x01, 0x33, 0x32, 0x3e, 0x02, + 0x35, 0x34, 0x26, 0x2b, 0x01, 0x01, 0x11, 0x33, 0x11, 0x02, 0x26, 0xcd, + 0xd2, 0x34, 0x68, 0x9b, 0x67, 0xfe, 0x67, 0xb4, 0xca, 0x45, 0x60, 0x3b, + 0x1a, 0x74, 0x85, 0xcb, 0x03, 0x3c, 0xb4, 0x02, 0x70, 0x93, 0x9f, 0x4a, + 0x76, 0x52, 0x2c, 0x04, 0x3a, 0xfe, 0x36, 0xfe, 0x0f, 0x19, 0x31, 0x47, + 0x2e, 0x5e, 0x57, 0xfe, 0x0d, 0x04, 0x3a, 0xfb, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x8e, 0x00, 0x00, 0x03, 0xd7, 0x04, 0x3a, 0x00, 0x0c, + 0x00, 0x17, 0x00, 0x84, 0xb9, 0x00, 0x05, 0xff, 0xe0, 0xb3, 0x07, 0x0a, + 0x48, 0x02, 0xb8, 0xff, 0xe0, 0x40, 0x56, 0x07, 0x0a, 0x48, 0x03, 0x47, + 0x40, 0xb0, 0x13, 0x01, 0x13, 0x19, 0x80, 0x2f, 0x19, 0x01, 0x2f, 0x19, + 0xaf, 0x19, 0x02, 0x3f, 0x19, 0x5f, 0x19, 0x7f, 0x19, 0x9f, 0x19, 0xbf, + 0x19, 0xcf, 0x19, 0xdf, 0x19, 0xff, 0x19, 0x08, 0x19, 0x40, 0x23, 0x27, + 0x48, 0x0c, 0x0d, 0x46, 0x00, 0x09, 0xd0, 0x09, 0x02, 0x10, 0x09, 0x20, + 0x09, 0x40, 0x09, 0xf0, 0x09, 0x04, 0x09, 0x17, 0x51, 0xaf, 0x0c, 0xbf, + 0x0c, 0xcf, 0x0c, 0x03, 0x0f, 0x0c, 0x1f, 0x0c, 0x4f, 0x0c, 0x03, 0x07, + 0x0c, 0x0c, 0x09, 0x0a, 0x0f, 0x0d, 0x51, 0x09, 0x15, 0x00, 0x3f, 0xed, + 0x3f, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x01, 0x2f, 0x5d, 0x71, + 0xed, 0x32, 0x2b, 0x5d, 0x71, 0x72, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, + 0x31, 0x30, 0x2b, 0x2b, 0x01, 0x32, 0x16, 0x15, 0x14, 0x0e, 0x02, 0x23, + 0x21, 0x11, 0x33, 0x19, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, + 0x2b, 0x01, 0x02, 0x38, 0xcd, 0xd2, 0x34, 0x68, 0x9b, 0x67, 0xfe, 0x55, + 0xb4, 0xdc, 0x45, 0x60, 0x3b, 0x1a, 0x74, 0x85, 0xdd, 0x02, 0x70, 0x93, + 0x9f, 0x4a, 0x76, 0x52, 0x2c, 0x04, 0x3a, 0xfe, 0x36, 0xfe, 0x0f, 0x19, + 0x31, 0x47, 0x2e, 0x5e, 0x57, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x37, + 0xff, 0xec, 0x03, 0xbe, 0x04, 0x4e, 0x00, 0x28, 0x00, 0xaa, 0x40, 0x57, + 0x76, 0x22, 0x01, 0x16, 0x1d, 0x01, 0x76, 0x1c, 0x01, 0x6b, 0x0f, 0x01, + 0x6b, 0x06, 0x01, 0x10, 0x0a, 0x20, 0x0a, 0x02, 0x0a, 0x0a, 0x00, 0x1f, + 0x47, 0x40, 0x0c, 0x1f, 0x09, 0x01, 0x90, 0x09, 0x01, 0x09, 0x2a, 0x80, + 0x14, 0x46, 0x15, 0x15, 0x01, 0x46, 0x1f, 0x00, 0x01, 0xdf, 0x00, 0x01, + 0x00, 0x40, 0x0c, 0x12, 0x48, 0x00, 0x0a, 0x50, 0x8f, 0x0b, 0x9f, 0x0b, + 0xaf, 0x0b, 0x03, 0x0b, 0x0b, 0x1a, 0x04, 0x50, 0x24, 0x00, 0x01, 0x10, + 0x01, 0x20, 0x01, 0x60, 0x01, 0x70, 0x01, 0x80, 0x01, 0xc0, 0x01, 0xd0, + 0x01, 0x08, 0x01, 0xb8, 0xff, 0xc0, 0x40, 0x1d, 0x1b, 0x22, 0x48, 0x01, + 0x01, 0x24, 0x16, 0x1f, 0x14, 0x2f, 0x14, 0x7f, 0x14, 0x8f, 0x14, 0xdf, + 0x14, 0x05, 0x14, 0x40, 0x1d, 0x20, 0x48, 0x14, 0x14, 0x11, 0x50, 0x1a, + 0x10, 0x00, 0x3f, 0xed, 0x33, 0x2f, 0x2b, 0x5d, 0x3f, 0x33, 0x2f, 0x2b, + 0x5d, 0x10, 0xed, 0x11, 0x39, 0x2f, 0x71, 0xed, 0x01, 0x2f, 0x2b, 0x71, + 0x72, 0xed, 0x33, 0x2f, 0xed, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x32, 0x1a, + 0xed, 0x12, 0x39, 0x2f, 0x5d, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x13, 0x37, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x37, 0x21, 0x35, 0x21, + 0x2e, 0x03, 0x23, 0x22, 0x06, 0x07, 0x27, 0x3e, 0x03, 0x33, 0x32, 0x1e, + 0x02, 0x15, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x37, 0xb6, 0x10, + 0x85, 0x64, 0x49, 0x67, 0x44, 0x22, 0x05, 0xfe, 0x63, 0x01, 0x9d, 0x04, + 0x22, 0x43, 0x67, 0x49, 0x6d, 0x76, 0x0f, 0xb9, 0x0d, 0x42, 0x69, 0x91, + 0x5d, 0x5a, 0xaa, 0x86, 0x51, 0x33, 0x72, 0xb6, 0x82, 0x63, 0x97, 0x6a, + 0x3d, 0x01, 0x3b, 0x0c, 0x6c, 0x68, 0x35, 0x61, 0x87, 0x52, 0x83, 0x5a, + 0x85, 0x58, 0x2c, 0x69, 0x5b, 0x0e, 0x44, 0x74, 0x54, 0x30, 0x35, 0x80, + 0xd8, 0xa3, 0x78, 0xcd, 0x97, 0x56, 0x36, 0x5c, 0x7a, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x8e, 0xff, 0xec, 0x05, 0xaa, 0x04, 0x4e, 0x00, 0x13, + 0x00, 0x27, 0x00, 0x80, 0x40, 0x55, 0x79, 0x25, 0x89, 0x25, 0x02, 0x74, + 0x21, 0x84, 0x21, 0x02, 0x76, 0x1b, 0x86, 0x1b, 0x02, 0x79, 0x17, 0x89, + 0x17, 0x02, 0x96, 0x12, 0xa6, 0x12, 0x02, 0x1e, 0x47, 0x0f, 0x0f, 0x08, + 0x1f, 0x08, 0x02, 0x07, 0x08, 0x08, 0x0b, 0x00, 0x47, 0x40, 0xa0, 0x14, + 0x01, 0x14, 0x29, 0x80, 0x0e, 0x0a, 0x46, 0xc0, 0x0b, 0x01, 0x00, 0x0b, + 0x10, 0x0b, 0x30, 0x0b, 0xe0, 0x0b, 0xf0, 0x0b, 0x05, 0x08, 0x0b, 0x19, + 0x50, 0x11, 0x10, 0x09, 0x50, 0x2f, 0x0e, 0x01, 0x0e, 0x0e, 0x0b, 0x0c, + 0x0f, 0x0b, 0x15, 0x23, 0x50, 0x03, 0x16, 0x00, 0x3f, 0xed, 0x3f, 0x3f, + 0x12, 0x39, 0x2f, 0x5d, 0xed, 0x3f, 0xed, 0x01, 0x2f, 0x5e, 0x5d, 0x71, + 0xed, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x12, 0x39, 0x2f, 0x5e, + 0x5d, 0x33, 0xed, 0x31, 0x30, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x5d, 0x5d, + 0x01, 0x10, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x23, 0x11, 0x23, 0x11, + 0x33, 0x11, 0x33, 0x12, 0x21, 0x32, 0x12, 0x03, 0x34, 0x2e, 0x02, 0x23, + 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x05, + 0xaa, 0xeb, 0xdf, 0x66, 0xa1, 0x73, 0x41, 0x05, 0xde, 0xb4, 0xb4, 0xdf, + 0x21, 0x01, 0xa4, 0xed, 0xd7, 0xbd, 0x23, 0x43, 0x61, 0x3d, 0x3f, 0x63, + 0x46, 0x25, 0x27, 0x46, 0x5e, 0x38, 0x3e, 0x64, 0x46, 0x26, 0x02, 0x1e, + 0xfe, 0xe4, 0xfe, 0xea, 0x3e, 0x80, 0xc0, 0x83, 0xfe, 0x13, 0x04, 0x3a, + 0xfe, 0x36, 0x01, 0xde, 0xfe, 0xe8, 0xfe, 0xe8, 0x7e, 0xa4, 0x62, 0x27, + 0x29, 0x63, 0xa4, 0x7b, 0x7e, 0xa5, 0x62, 0x28, 0x27, 0x62, 0xa6, 0x00, + 0x00, 0x02, 0x00, 0x11, 0x00, 0x00, 0x03, 0xc7, 0x04, 0x3a, 0x00, 0x0d, + 0x00, 0x16, 0x00, 0x8f, 0x40, 0x44, 0x75, 0x01, 0x85, 0x01, 0x02, 0x03, + 0x20, 0x0b, 0x11, 0x48, 0x00, 0x20, 0x28, 0x2b, 0x48, 0xdf, 0x00, 0xef, + 0x00, 0x02, 0x00, 0x20, 0x1d, 0x25, 0x48, 0x34, 0x00, 0x01, 0x2b, 0x00, + 0x01, 0x29, 0x04, 0x01, 0x04, 0x30, 0x07, 0x0a, 0x48, 0x07, 0x20, 0x07, + 0x0b, 0x48, 0x12, 0x47, 0x00, 0x03, 0x03, 0x0c, 0x06, 0x06, 0x02, 0x16, + 0x0b, 0x46, 0x40, 0xaf, 0x0c, 0x01, 0xef, 0x0c, 0x01, 0x0c, 0x18, 0x80, + 0x01, 0x02, 0xb8, 0xff, 0xf0, 0x40, 0x16, 0x5b, 0x02, 0x6b, 0x02, 0x02, + 0x02, 0x03, 0x00, 0x51, 0x2f, 0x15, 0x01, 0x15, 0x15, 0x01, 0x0f, 0x51, + 0x09, 0x0f, 0x0c, 0x01, 0x15, 0x00, 0x3f, 0x33, 0x3f, 0xed, 0x12, 0x39, + 0x2f, 0x5d, 0xed, 0x32, 0x01, 0x2f, 0x5d, 0x38, 0x33, 0x1a, 0x10, 0xdc, + 0x5d, 0x71, 0x1a, 0xed, 0x33, 0x12, 0x39, 0x2f, 0x12, 0x39, 0x11, 0x33, + 0xed, 0x31, 0x30, 0x2b, 0x00, 0x2b, 0x5d, 0x01, 0x5d, 0x71, 0x2b, 0x71, + 0x2b, 0x2b, 0x5d, 0x09, 0x01, 0x23, 0x01, 0x2e, 0x01, 0x35, 0x34, 0x36, + 0x33, 0x21, 0x11, 0x23, 0x19, 0x01, 0x23, 0x22, 0x06, 0x15, 0x14, 0x16, + 0x3b, 0x01, 0x02, 0x17, 0xfe, 0xc5, 0xcb, 0x01, 0x58, 0x83, 0x76, 0xd8, + 0xcf, 0x01, 0xb0, 0xb4, 0xea, 0x82, 0x78, 0x6b, 0x7c, 0xfd, 0x01, 0xca, + 0xfe, 0x36, 0x01, 0xd7, 0x1b, 0xa3, 0x7a, 0x95, 0x96, 0xfb, 0xc6, 0x01, + 0xca, 0x01, 0xf1, 0x5c, 0x5d, 0x5e, 0x5d, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x18, 0x05, 0xf5, 0x10, 0x27, 0x00, 0x43, 0x00, 0x9c, + 0x00, 0x11, 0x12, 0x06, 0x00, 0x48, 0x00, 0x00, 0xff, 0xff, 0x00, 0x57, + 0xff, 0xec, 0x04, 0x18, 0x05, 0x7b, 0x12, 0x26, 0x00, 0x48, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x69, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x17, 0x40, 0x0d, + 0x03, 0x02, 0x26, 0x11, 0x26, 0x03, 0x02, 0x04, 0x2a, 0x28, 0x11, 0x1b, + 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x0a, 0xfe, 0x57, 0x03, 0xee, 0x05, 0xcc, 0x00, 0x39, + 0x00, 0xa2, 0x40, 0x09, 0xaa, 0x31, 0x01, 0x1f, 0x20, 0x09, 0x0f, 0x48, + 0x18, 0xb8, 0xff, 0xe8, 0x40, 0x56, 0x09, 0x0d, 0x48, 0x00, 0x18, 0x10, + 0x18, 0x02, 0x07, 0x24, 0x24, 0x39, 0x1c, 0x46, 0x40, 0x50, 0x2d, 0x01, + 0x9f, 0x2d, 0x01, 0x2d, 0x3b, 0x80, 0x0a, 0x07, 0x39, 0x46, 0x04, 0x03, + 0xc0, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x30, 0x00, 0xe0, 0x00, 0xf0, + 0x00, 0x05, 0x08, 0x00, 0xb0, 0x3b, 0xc0, 0x3b, 0xd0, 0x3b, 0x03, 0xb0, + 0x3b, 0xf0, 0x3b, 0x02, 0xff, 0x3b, 0x01, 0x70, 0x3b, 0xa0, 0x3b, 0xb0, + 0x3b, 0x03, 0x39, 0x15, 0x28, 0x50, 0x21, 0x1b, 0x0f, 0x33, 0x50, 0x16, + 0x0a, 0x02, 0x51, 0x07, 0x03, 0x03, 0x05, 0x16, 0xb8, 0xff, 0xc0, 0xb6, + 0x07, 0x0d, 0x48, 0x16, 0x0f, 0x05, 0x00, 0x00, 0x3f, 0x3f, 0x2b, 0x12, + 0x39, 0x2f, 0x33, 0xed, 0x32, 0x10, 0xed, 0x32, 0x3f, 0xed, 0x3f, 0x01, + 0x5d, 0x5d, 0x71, 0x72, 0x2f, 0x5e, 0x5d, 0x71, 0x33, 0x33, 0xed, 0x32, + 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x71, 0x1a, 0xed, 0x11, 0x39, 0x2f, 0x31, + 0x30, 0x00, 0x5e, 0x5d, 0x2b, 0x2b, 0x01, 0x5d, 0x33, 0x11, 0x23, 0x35, + 0x33, 0x35, 0x33, 0x15, 0x21, 0x15, 0x21, 0x15, 0x14, 0x0e, 0x02, 0x07, + 0x33, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, 0x14, 0x0e, 0x02, + 0x23, 0x22, 0x26, 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, + 0x11, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x8e, 0x84, + 0x84, 0xb4, 0x01, 0x2c, 0xfe, 0xd4, 0x02, 0x03, 0x02, 0x01, 0x03, 0x1e, + 0x46, 0x54, 0x64, 0x3e, 0x68, 0x85, 0x4d, 0x1d, 0x15, 0x36, 0x5d, 0x48, + 0x22, 0x41, 0x1c, 0x0d, 0x24, 0x0d, 0x26, 0x31, 0x1b, 0x0a, 0x11, 0x30, + 0x58, 0x46, 0x40, 0x67, 0x49, 0x28, 0x04, 0xb6, 0x83, 0x93, 0x93, 0x83, + 0x94, 0x21, 0x42, 0x38, 0x27, 0x07, 0x37, 0x4d, 0x32, 0x17, 0x38, 0x65, + 0x8c, 0x54, 0xfc, 0xd1, 0x3e, 0x6a, 0x4e, 0x2d, 0x04, 0x05, 0x8b, 0x02, + 0x04, 0x14, 0x2b, 0x43, 0x2e, 0x02, 0xf1, 0x45, 0x68, 0x45, 0x23, 0x2e, + 0x54, 0x78, 0x4b, 0xfd, 0xaa, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x8e, + 0x00, 0x00, 0x02, 0xc8, 0x05, 0xe4, 0x12, 0x26, 0x01, 0xcf, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x74, 0x00, 0xd8, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x06, 0x11, 0x26, 0x01, 0x55, 0x06, 0x09, 0x04, 0x00, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x57, + 0xff, 0xec, 0x03, 0xde, 0x04, 0x4e, 0x00, 0x28, 0x00, 0xab, 0x40, 0x71, + 0x74, 0x1e, 0x01, 0x74, 0x15, 0x01, 0x89, 0x08, 0x01, 0x89, 0x02, 0x01, + 0x2f, 0x2a, 0x01, 0x3f, 0x1a, 0x01, 0x1a, 0x1a, 0x1b, 0x24, 0x10, 0x46, + 0x0f, 0x0f, 0x23, 0x46, 0x00, 0x24, 0x20, 0x24, 0x02, 0x00, 0x24, 0x40, + 0x24, 0x60, 0x24, 0x80, 0x24, 0xa0, 0x24, 0xc0, 0x24, 0xe0, 0x24, 0x07, + 0x08, 0x24, 0x18, 0x1b, 0x47, 0x1f, 0x05, 0x01, 0x05, 0x1b, 0x50, 0x8f, + 0x18, 0x9f, 0x18, 0xaf, 0x18, 0x03, 0x18, 0x18, 0x20, 0x13, 0x50, 0x0a, + 0x1f, 0x10, 0x2f, 0x10, 0x7f, 0x10, 0x8f, 0x10, 0xdf, 0x10, 0x05, 0x10, + 0x40, 0x1d, 0x20, 0x48, 0x10, 0x10, 0x0a, 0x10, 0x20, 0x50, 0x00, 0x00, + 0x23, 0x10, 0x23, 0x20, 0x23, 0x60, 0x23, 0x70, 0x23, 0x80, 0x23, 0xc0, + 0x23, 0xd0, 0x23, 0x08, 0x23, 0xb8, 0xff, 0xc0, 0xb6, 0x1b, 0x22, 0x48, + 0x23, 0x23, 0x00, 0x16, 0x00, 0x3f, 0x32, 0x2f, 0x2b, 0x5d, 0x10, 0xed, + 0x3f, 0x33, 0x2f, 0x2b, 0x5d, 0x10, 0xed, 0x12, 0x39, 0x2f, 0x71, 0xed, + 0x01, 0x2f, 0x5d, 0xed, 0x32, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x33, 0x2f, + 0xed, 0x11, 0x12, 0x39, 0x2f, 0x5d, 0x5d, 0x31, 0x30, 0x5d, 0x5d, 0x5d, + 0x5d, 0x05, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, + 0x02, 0x17, 0x07, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x21, 0x15, + 0x21, 0x1e, 0x03, 0x33, 0x32, 0x36, 0x37, 0x17, 0x0e, 0x03, 0x02, 0x34, + 0x82, 0xb6, 0x72, 0x33, 0x51, 0x86, 0xaa, 0x5a, 0x5d, 0x91, 0x69, 0x42, + 0x0d, 0xb9, 0x0f, 0x76, 0x6d, 0x49, 0x67, 0x43, 0x22, 0x04, 0x01, 0x9c, + 0xfe, 0x63, 0x04, 0x23, 0x44, 0x67, 0x4a, 0x64, 0x85, 0x10, 0xb6, 0x09, + 0x3d, 0x6a, 0x97, 0x14, 0x56, 0x97, 0xcd, 0x78, 0xa3, 0xd8, 0x80, 0x35, + 0x30, 0x54, 0x74, 0x44, 0x0e, 0x5b, 0x69, 0x2c, 0x58, 0x85, 0x5a, 0x83, + 0x52, 0x87, 0x61, 0x35, 0x67, 0x6d, 0x0c, 0x43, 0x7a, 0x5c, 0x36, 0x00, + 0xff, 0xff, 0x00, 0x39, 0xff, 0xec, 0x03, 0xb6, 0x04, 0x4b, 0x12, 0x06, + 0x00, 0x56, 0x00, 0x00, 0xff, 0xff, 0x00, 0x89, 0x00, 0x00, 0x01, 0x3d, + 0x05, 0xcc, 0x10, 0x26, 0x00, 0xf1, 0xc7, 0x00, 0x11, 0x06, 0x01, 0x4f, + 0xed, 0x00, 0x00, 0xd4, 0xb5, 0x09, 0x40, 0x38, 0x38, 0x48, 0x09, 0xb8, + 0xff, 0xc0, 0x40, 0x09, 0x37, 0x37, 0x48, 0x09, 0x40, 0x36, 0x36, 0x48, + 0x09, 0xb8, 0xff, 0xc0, 0xb3, 0x35, 0x35, 0x48, 0x09, 0xb8, 0xff, 0xc0, + 0x40, 0x09, 0x34, 0x34, 0x48, 0x09, 0x40, 0x32, 0x32, 0x48, 0x09, 0xb8, + 0xff, 0xc0, 0xb3, 0x31, 0x31, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x09, + 0x30, 0x30, 0x48, 0x09, 0x40, 0x2a, 0x2a, 0x48, 0x09, 0xb8, 0xff, 0xc0, + 0xb3, 0x29, 0x29, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x09, 0x28, 0x28, + 0x48, 0x09, 0x40, 0x26, 0x26, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0xb3, 0x25, + 0x25, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0xb3, 0x24, 0x24, 0x48, 0x09, 0xb8, + 0xff, 0xc0, 0xb3, 0x23, 0x23, 0x48, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x10, + 0x22, 0x22, 0x48, 0x09, 0x40, 0x1d, 0x1d, 0x48, 0x09, 0x40, 0x0a, 0x0a, + 0x48, 0x01, 0x00, 0x00, 0xb8, 0xff, 0xc0, 0xb3, 0x31, 0x31, 0x48, 0x00, + 0xb8, 0xff, 0xc0, 0x40, 0x09, 0x28, 0x29, 0x48, 0x00, 0x40, 0x19, 0x1b, + 0x48, 0x00, 0xb8, 0xff, 0xc0, 0xb6, 0x12, 0x12, 0x48, 0x80, 0x00, 0x01, + 0x00, 0xb8, 0xff, 0xc0, 0x40, 0x0b, 0x08, 0x08, 0x48, 0x00, 0x01, 0x00, + 0x04, 0x07, 0x01, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x11, 0x2b, 0x5d, 0x2b, + 0x2b, 0x2b, 0x2b, 0x35, 0x35, 0x01, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x02, 0x25, 0x05, 0x7b, 0x12, 0x26, + 0x00, 0xf1, 0x00, 0x00, 0x11, 0x06, 0x00, 0x69, 0xcb, 0x00, 0x00, 0x19, + 0xb6, 0x02, 0x01, 0x04, 0x11, 0x26, 0x02, 0x01, 0xb8, 0xff, 0xf3, 0xb4, + 0x08, 0x06, 0x00, 0x02, 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xce, 0xfe, 0x57, 0x01, 0x3d, + 0x05, 0xcc, 0x12, 0x06, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x02, 0x00, 0x0b, + 0xff, 0xec, 0x06, 0xec, 0x04, 0x3a, 0x00, 0x22, 0x00, 0x2d, 0x01, 0x2a, + 0x40, 0x52, 0xa3, 0x10, 0x01, 0x94, 0x10, 0x01, 0x75, 0x10, 0x85, 0x10, + 0x02, 0x6a, 0x0e, 0x01, 0x39, 0x0e, 0x01, 0x0e, 0x10, 0x12, 0x16, 0x48, + 0x83, 0x0e, 0x93, 0x0e, 0xa3, 0x0e, 0x03, 0x75, 0x0e, 0x01, 0x6a, 0x0d, + 0x01, 0x39, 0x0d, 0x01, 0x0d, 0x10, 0x12, 0x16, 0x48, 0xa3, 0x0d, 0x01, + 0x57, 0x0d, 0x67, 0x0d, 0x77, 0x0d, 0x03, 0x10, 0x18, 0x0c, 0x11, 0x48, + 0x6d, 0x0f, 0x01, 0x0f, 0x20, 0x12, 0x16, 0x48, 0xa2, 0x0f, 0x01, 0x75, + 0x0f, 0x85, 0x0f, 0x95, 0x0f, 0x03, 0x36, 0x0f, 0x46, 0x0f, 0x02, 0x05, + 0xb8, 0xff, 0xe0, 0xb3, 0x07, 0x0a, 0x48, 0x02, 0xb8, 0xff, 0xe0, 0x40, + 0x12, 0x07, 0x0b, 0x48, 0x22, 0x23, 0x46, 0x40, 0x09, 0x01, 0x09, 0x09, + 0x16, 0x03, 0x47, 0xb0, 0x29, 0x01, 0x29, 0xb8, 0xff, 0xc0, 0x40, 0x09, + 0x08, 0x0b, 0x48, 0x29, 0x2f, 0x50, 0x2f, 0x01, 0x2f, 0xb8, 0xff, 0xc0, + 0x40, 0x5d, 0x1e, 0x23, 0x48, 0xff, 0x2f, 0x01, 0x30, 0x2f, 0x01, 0x6d, + 0x0b, 0x01, 0x1f, 0x0b, 0x3f, 0x0b, 0x02, 0xff, 0x0b, 0x01, 0xe9, 0x0b, + 0x01, 0xbb, 0x0b, 0xcb, 0x0b, 0xdb, 0x0b, 0x03, 0xa3, 0x0b, 0x01, 0x95, + 0x0b, 0x01, 0x1f, 0x20, 0x3f, 0x20, 0x02, 0xff, 0x20, 0x01, 0x6a, 0x20, + 0x01, 0x29, 0x20, 0x01, 0xa3, 0x20, 0x01, 0x35, 0x20, 0x01, 0x0b, 0x0f, + 0x20, 0x03, 0x16, 0x2d, 0x51, 0xaf, 0x22, 0xbf, 0x22, 0xcf, 0x22, 0x03, + 0x0f, 0x22, 0x1f, 0x22, 0x4f, 0x22, 0x03, 0x07, 0x22, 0x22, 0x09, 0x0b, + 0x50, 0x20, 0x0f, 0x19, 0x50, 0x12, 0x16, 0x23, 0x51, 0x09, 0x15, 0x00, + 0x3f, 0xed, 0x3f, 0xed, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0x5e, 0x5d, 0x71, + 0xed, 0x01, 0x2f, 0x17, 0x33, 0x5d, 0x5d, 0x71, 0x71, 0x5d, 0x71, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x5d, 0x5d, 0x2b, 0x71, 0x10, 0xdc, + 0x2b, 0x5d, 0xed, 0x12, 0x39, 0x2f, 0x5d, 0xed, 0x32, 0x31, 0x30, 0x2b, + 0x2b, 0x5d, 0x5d, 0x5d, 0x2b, 0x71, 0x00, 0x2b, 0x01, 0x5d, 0x5d, 0x2b, + 0x71, 0x71, 0x5d, 0x5d, 0x2b, 0x71, 0x71, 0x5d, 0x5d, 0x5d, 0x01, 0x32, + 0x16, 0x15, 0x14, 0x0e, 0x02, 0x23, 0x21, 0x11, 0x21, 0x06, 0x02, 0x0e, + 0x03, 0x23, 0x22, 0x26, 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x03, + 0x12, 0x37, 0x21, 0x19, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, + 0x2b, 0x01, 0x05, 0x4d, 0xcd, 0xd2, 0x34, 0x68, 0x9b, 0x67, 0xfe, 0x3e, + 0xfe, 0x65, 0x19, 0x2a, 0x2c, 0x33, 0x47, 0x5e, 0x41, 0x1d, 0x30, 0x11, + 0x0b, 0x26, 0x13, 0x23, 0x33, 0x28, 0x21, 0x22, 0x26, 0x19, 0x02, 0xf2, + 0xf2, 0x45, 0x60, 0x3b, 0x1a, 0x74, 0x85, 0xf3, 0x02, 0x70, 0x93, 0x9f, + 0x4a, 0x76, 0x52, 0x2c, 0x03, 0xb7, 0xb8, 0xfe, 0xe1, 0xd8, 0x95, 0x5d, + 0x2a, 0x08, 0x05, 0x81, 0x04, 0x05, 0x2a, 0x5e, 0x95, 0xd8, 0x01, 0x1d, + 0xb7, 0xfe, 0x36, 0xfe, 0x0f, 0x19, 0x31, 0x47, 0x2e, 0x5e, 0x57, 0x00, + 0x00, 0x02, 0x00, 0x8e, 0x00, 0x00, 0x06, 0x2c, 0x04, 0x3a, 0x00, 0x14, + 0x00, 0x1f, 0x00, 0x85, 0xb9, 0x00, 0x07, 0xff, 0xe0, 0xb3, 0x07, 0x0a, + 0x48, 0x04, 0xb8, 0xff, 0xe0, 0x40, 0x17, 0x07, 0x0b, 0x48, 0x01, 0x15, + 0x46, 0x13, 0x0b, 0x0b, 0x0f, 0x05, 0x47, 0x40, 0xb0, 0x1b, 0x01, 0x1b, + 0x21, 0x80, 0x50, 0x21, 0x01, 0x21, 0xb8, 0xff, 0xc0, 0x40, 0x32, 0x1e, + 0x23, 0x48, 0xff, 0x21, 0x01, 0x12, 0x0e, 0x46, 0x10, 0x0f, 0x20, 0x0f, + 0x40, 0x0f, 0x03, 0x0f, 0x1f, 0x51, 0x01, 0x01, 0x0d, 0x50, 0xaf, 0x12, + 0xbf, 0x12, 0xcf, 0x12, 0x03, 0x0f, 0x12, 0x1f, 0x12, 0x4f, 0x12, 0x03, + 0x07, 0x12, 0x12, 0x00, 0x0f, 0x15, 0x15, 0x51, 0x0b, 0x15, 0x10, 0x00, + 0x0f, 0x00, 0x3f, 0x32, 0x3f, 0xed, 0x3f, 0x12, 0x39, 0x2f, 0x5e, 0x5d, + 0x71, 0xed, 0x33, 0x2f, 0xed, 0x01, 0x2f, 0x5d, 0xed, 0x32, 0x5d, 0x2b, + 0x71, 0x1a, 0x10, 0xdc, 0x5d, 0x1a, 0xed, 0x12, 0x39, 0x2f, 0x33, 0xed, + 0x32, 0x31, 0x30, 0x2b, 0x2b, 0x01, 0x11, 0x33, 0x32, 0x16, 0x15, 0x14, + 0x0e, 0x02, 0x23, 0x21, 0x11, 0x21, 0x11, 0x23, 0x11, 0x33, 0x11, 0x21, + 0x11, 0x13, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, 0x2b, 0x01, 0x03, + 0xa9, 0xe4, 0xcd, 0xd2, 0x34, 0x68, 0x9b, 0x67, 0xfe, 0x66, 0xfe, 0x4e, + 0xb4, 0xb4, 0x01, 0xb2, 0xb5, 0xca, 0x45, 0x60, 0x3b, 0x1a, 0x74, 0x85, + 0xcb, 0x04, 0x3a, 0xfe, 0x36, 0x93, 0x9f, 0x4a, 0x76, 0x52, 0x2c, 0x01, + 0xed, 0xfe, 0x13, 0x04, 0x3a, 0xfe, 0x36, 0x01, 0xca, 0xfc, 0x45, 0x19, + 0x31, 0x47, 0x2e, 0x5e, 0x57, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x0a, + 0x00, 0x00, 0x03, 0xee, 0x05, 0xcc, 0x00, 0x29, 0x00, 0x90, 0xb9, 0x00, + 0x07, 0xff, 0xe8, 0x40, 0x55, 0x09, 0x0d, 0x48, 0x00, 0x07, 0x10, 0x07, + 0x02, 0x07, 0x21, 0x18, 0x0b, 0x46, 0x40, 0x50, 0x0c, 0x01, 0x9f, 0x0c, + 0xff, 0x0c, 0x02, 0x0c, 0x2b, 0x80, 0x23, 0x20, 0x18, 0x46, 0x1d, 0x1c, + 0xc0, 0x19, 0x01, 0x00, 0x19, 0x10, 0x19, 0x30, 0x19, 0xe0, 0x19, 0xf0, + 0x19, 0x05, 0x08, 0x19, 0xb0, 0x2b, 0xc0, 0x2b, 0xd0, 0x2b, 0x03, 0xb0, + 0x2b, 0xf0, 0x2b, 0x02, 0xff, 0x2b, 0x01, 0x70, 0x2b, 0xa0, 0x2b, 0xb0, + 0x2b, 0x03, 0x23, 0x1b, 0x51, 0x20, 0x1c, 0x1c, 0x05, 0x1e, 0x00, 0x19, + 0x0b, 0x15, 0x00, 0x12, 0x50, 0x05, 0xb8, 0xff, 0xc0, 0xb4, 0x09, 0x0d, + 0x48, 0x05, 0x0f, 0x00, 0x3f, 0x2b, 0xed, 0x32, 0x3f, 0x33, 0x3f, 0x12, + 0x39, 0x2f, 0x33, 0xed, 0x32, 0x01, 0x5d, 0x5d, 0x71, 0x72, 0x2f, 0x5e, + 0x5d, 0x71, 0x33, 0x33, 0xed, 0x32, 0x32, 0x1a, 0x10, 0xdc, 0x5d, 0x71, + 0x1a, 0xed, 0x11, 0x39, 0x31, 0x30, 0x00, 0x5e, 0x5d, 0x2b, 0x01, 0x3e, + 0x03, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x34, 0x2e, 0x02, + 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x23, 0x11, 0x23, 0x35, 0x33, 0x35, + 0x33, 0x15, 0x21, 0x15, 0x21, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x01, 0x3d, + 0x1e, 0x46, 0x54, 0x64, 0x3e, 0x68, 0x85, 0x4d, 0x1d, 0xb5, 0x11, 0x30, + 0x58, 0x46, 0x40, 0x67, 0x49, 0x28, 0xb4, 0x84, 0x84, 0xb4, 0x01, 0x2c, + 0xfe, 0xd4, 0x02, 0x03, 0x02, 0x01, 0x03, 0x59, 0x37, 0x4d, 0x32, 0x17, + 0x38, 0x65, 0x8c, 0x54, 0xfd, 0x57, 0x02, 0x86, 0x45, 0x68, 0x45, 0x23, + 0x2e, 0x54, 0x78, 0x4b, 0xfd, 0xaa, 0x04, 0xb6, 0x83, 0x93, 0x93, 0x83, + 0x94, 0x21, 0x42, 0x38, 0x27, 0x07, 0x00, 0x00, 0xff, 0xff, 0x00, 0x8a, + 0x00, 0x00, 0x03, 0x8a, 0x05, 0xe4, 0x12, 0x26, 0x01, 0xd6, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x74, 0x01, 0x3f, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x16, 0x11, 0x26, 0x01, 0x51, 0x16, 0x19, 0x00, 0x0e, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x8e, + 0x00, 0x00, 0x03, 0xea, 0x05, 0xe4, 0x10, 0x27, 0x00, 0x43, 0x00, 0x98, + 0x00, 0x00, 0x10, 0x06, 0x01, 0xd4, 0x00, 0x00, 0xff, 0xff, 0x00, 0x05, + 0xfe, 0x57, 0x03, 0xfc, 0x05, 0xf0, 0x12, 0x26, 0x00, 0x5c, 0x00, 0x00, + 0x11, 0x07, 0x02, 0x9e, 0x00, 0xb7, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, + 0x01, 0x20, 0x11, 0x26, 0x01, 0x0a, 0x25, 0x2d, 0x11, 0x1f, 0x25, 0x01, + 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8e, + 0xfe, 0x68, 0x03, 0xdd, 0x04, 0x3a, 0x00, 0x0b, 0x00, 0x7d, 0x40, 0x59, + 0x09, 0x49, 0x0f, 0x0a, 0x4f, 0x0a, 0x02, 0x26, 0x0a, 0x0a, 0x00, 0x07, + 0x46, 0x40, 0x0f, 0x04, 0x4f, 0x04, 0x02, 0x39, 0x2f, 0x04, 0x6f, 0x04, + 0x8f, 0x04, 0xff, 0x04, 0x04, 0xbf, 0x04, 0x01, 0x8f, 0x04, 0x9f, 0x04, + 0xff, 0x04, 0x03, 0x04, 0x0d, 0x80, 0x03, 0x46, 0xc0, 0x00, 0x01, 0x00, + 0x00, 0x10, 0x00, 0x30, 0x00, 0xe0, 0x00, 0xf0, 0x00, 0x05, 0x08, 0x00, + 0xb0, 0x0d, 0xc0, 0x0d, 0xd0, 0x0d, 0x03, 0xb0, 0x0d, 0xf0, 0x0d, 0x02, + 0x70, 0x0d, 0xa0, 0x0d, 0xb0, 0x0d, 0xc0, 0x0d, 0x04, 0x09, 0x05, 0x01, + 0x0f, 0x08, 0x03, 0x50, 0x00, 0x00, 0x2f, 0xed, 0x33, 0x3f, 0x33, 0x2f, + 0x01, 0x5d, 0x71, 0x72, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x1a, 0x10, 0xdc, + 0x5d, 0x71, 0x72, 0x5e, 0x5d, 0x1a, 0xed, 0x12, 0x39, 0x2f, 0x5e, 0x5d, + 0xed, 0x31, 0x30, 0x33, 0x11, 0x33, 0x11, 0x21, 0x11, 0x33, 0x11, 0x21, + 0x11, 0x23, 0x11, 0x8e, 0xb4, 0x01, 0xe7, 0xb4, 0xfe, 0xaa, 0xa3, 0x04, + 0x3a, 0xfc, 0x49, 0x03, 0xb7, 0xfb, 0xc6, 0xfe, 0x68, 0x01, 0x98, 0x00, + 0x00, 0x03, 0x00, 0x61, 0xff, 0xec, 0x05, 0xd7, 0x05, 0x96, 0x00, 0x07, + 0x00, 0x1b, 0x00, 0x2f, 0x00, 0x00, 0x01, 0x15, 0x21, 0x35, 0x21, 0x35, + 0x21, 0x15, 0x25, 0x14, 0x02, 0x06, 0x04, 0x23, 0x22, 0x24, 0x26, 0x02, + 0x35, 0x34, 0x12, 0x36, 0x24, 0x33, 0x32, 0x04, 0x16, 0x12, 0x07, 0x34, + 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, + 0x3e, 0x02, 0x05, 0x1a, 0xfd, 0xd7, 0xfe, 0x2c, 0x02, 0x4e, 0x02, 0x6c, + 0x5f, 0xb4, 0xfe, 0xfc, 0xa5, 0xae, 0xfe, 0xfa, 0xae, 0x58, 0x5c, 0xb2, + 0x01, 0x05, 0xa9, 0xa8, 0x01, 0x05, 0xb1, 0x5c, 0xc3, 0x41, 0x7f, 0xbc, + 0x7b, 0x7e, 0xbe, 0x7f, 0x3f, 0x41, 0x7f, 0xbd, 0x7b, 0x84, 0xbf, 0x7b, + 0x3b, 0x02, 0xbf, 0x9a, 0x62, 0x9a, 0x62, 0x08, 0xa5, 0xfe, 0xf2, 0xc0, + 0x68, 0x6d, 0xc3, 0x01, 0x0c, 0x9f, 0xa5, 0x01, 0x0a, 0xbb, 0x65, 0x66, + 0xbc, 0xfe, 0xf6, 0xa3, 0x7f, 0xd0, 0x94, 0x50, 0x50, 0x94, 0xd0, 0x7f, + 0x7f, 0xd3, 0x99, 0x55, 0x56, 0x99, 0xd4, 0x00, 0x00, 0x03, 0x00, 0x56, + 0xff, 0xec, 0x04, 0x1d, 0x04, 0x4e, 0x00, 0x07, 0x00, 0x16, 0x00, 0x2a, + 0x00, 0x00, 0x01, 0x15, 0x21, 0x35, 0x23, 0x35, 0x21, 0x15, 0x05, 0x10, + 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x10, 0x21, 0x32, 0x1e, 0x02, 0x07, + 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, + 0x32, 0x3e, 0x02, 0x03, 0x66, 0xfe, 0x95, 0xee, 0x01, 0x68, 0x01, 0xa8, + 0xfa, 0xee, 0x71, 0xb2, 0x7b, 0x41, 0x01, 0xe5, 0x7e, 0xb7, 0x75, 0x38, + 0xbd, 0x27, 0x4b, 0x6c, 0x44, 0x45, 0x6f, 0x4e, 0x29, 0x2c, 0x4d, 0x69, + 0x3e, 0x45, 0x70, 0x4e, 0x2a, 0x02, 0x33, 0x9a, 0x62, 0x9a, 0x62, 0x15, + 0xfe, 0xe4, 0xfe, 0xea, 0x44, 0x8c, 0xd3, 0x8f, 0x02, 0x30, 0x46, 0x8c, + 0xd2, 0x8c, 0x7e, 0xa4, 0x62, 0x27, 0x29, 0x63, 0xa4, 0x7b, 0x7e, 0xa5, + 0x62, 0x28, 0x27, 0x62, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xa8, + 0x00, 0x01, 0x03, 0xba, 0x07, 0x1c, 0x00, 0x07, 0x00, 0x37, 0x40, 0x25, + 0x05, 0x5a, 0x00, 0x06, 0x10, 0x06, 0x40, 0x06, 0x03, 0x06, 0x03, 0x46, + 0xff, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x40, 0x00, 0x80, 0x00, 0xb0, + 0x00, 0xd0, 0x00, 0x06, 0x07, 0x00, 0x04, 0x5f, 0x01, 0x07, 0x03, 0x05, + 0x12, 0x00, 0x3f, 0x3f, 0x33, 0xed, 0x01, 0x2f, 0x5e, 0x5d, 0x5d, 0xed, + 0x2f, 0x5d, 0xed, 0x31, 0x30, 0x01, 0x11, 0x33, 0x11, 0x21, 0x11, 0x23, + 0x11, 0x03, 0x06, 0xb4, 0xfd, 0xad, 0xbf, 0x05, 0x81, 0x01, 0x9b, 0xfd, + 0xc9, 0xfb, 0x1c, 0x05, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8e, + 0x00, 0x00, 0x03, 0x0a, 0x05, 0xcc, 0x00, 0x07, 0x00, 0x38, 0x40, 0x24, + 0x06, 0x49, 0x10, 0x03, 0x30, 0x03, 0x02, 0x03, 0x03, 0x09, 0x00, 0x46, + 0xc0, 0x01, 0x01, 0x00, 0x01, 0x10, 0x01, 0x30, 0x01, 0xe0, 0x01, 0xf0, + 0x01, 0x05, 0x08, 0x01, 0x04, 0x00, 0x07, 0x50, 0x02, 0x0f, 0x00, 0x15, + 0x00, 0x3f, 0x3f, 0xed, 0x3f, 0x01, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x11, + 0x33, 0x2f, 0x5d, 0xed, 0x31, 0x30, 0x21, 0x23, 0x11, 0x21, 0x11, 0x33, + 0x11, 0x21, 0x01, 0x42, 0xb4, 0x01, 0xd9, 0xa3, 0xfe, 0x38, 0x04, 0x3a, + 0x01, 0x92, 0xfd, 0xeb, 0xff, 0xff, 0x00, 0x09, 0x00, 0x00, 0x07, 0x86, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x3a, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa1, + 0x02, 0x41, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, 0x2f, 0x05, 0x26, 0x01, + 0xb8, 0xff, 0xb8, 0xb4, 0x30, 0x33, 0x0f, 0x2e, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0xff, 0xfd, 0x00, 0x00, 0x05, 0xcc, + 0x05, 0xe4, 0x12, 0x26, 0x00, 0x5a, 0x00, 0x00, 0x11, 0x07, 0x00, 0x43, + 0x01, 0x48, 0x00, 0x00, 0x00, 0x15, 0xb4, 0x01, 0x2b, 0x11, 0x26, 0x01, + 0xb8, 0xff, 0xa2, 0xb4, 0x2c, 0x2f, 0x0f, 0x2a, 0x25, 0x01, 0x2b, 0x35, + 0x00, 0x2b, 0x35, 0x00, 0xff, 0xff, 0x00, 0x09, 0x00, 0x00, 0x07, 0x86, + 0x06, 0xf0, 0x12, 0x26, 0x00, 0x3a, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa2, + 0x02, 0xf7, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x2f, 0x05, 0x26, + 0x01, 0x4b, 0x2f, 0x32, 0x0f, 0x2e, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfd, 0x00, 0x00, 0x05, 0xcc, + 0x05, 0xe4, 0x12, 0x26, 0x00, 0x5a, 0x00, 0x00, 0x11, 0x07, 0x00, 0x74, + 0x02, 0x26, 0x00, 0x00, 0x00, 0x13, 0x40, 0x0b, 0x01, 0x2b, 0x11, 0x26, + 0x01, 0x5d, 0x2b, 0x2e, 0x0f, 0x2a, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x09, 0x00, 0x00, 0x07, 0x86, + 0x06, 0xb2, 0x12, 0x26, 0x00, 0x3a, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa5, + 0x02, 0x86, 0x00, 0x00, 0x00, 0x17, 0x40, 0x0d, 0x02, 0x01, 0x2f, 0x05, + 0x26, 0x02, 0x01, 0x02, 0x33, 0x31, 0x0f, 0x2e, 0x25, 0x01, 0x2b, 0x35, + 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfd, + 0x00, 0x00, 0x05, 0xcc, 0x05, 0x7b, 0x12, 0x26, 0x00, 0x5a, 0x00, 0x00, + 0x11, 0x07, 0x00, 0x69, 0x01, 0xa1, 0x00, 0x00, 0x00, 0x17, 0x40, 0x0d, + 0x02, 0x01, 0x2b, 0x11, 0x26, 0x02, 0x01, 0x00, 0x2f, 0x2d, 0x0f, 0x2a, + 0x25, 0x01, 0x2b, 0x35, 0x35, 0x00, 0x2b, 0x35, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x2d, 0x00, 0x00, 0x05, 0x29, 0x06, 0xf0, 0x12, 0x26, + 0x00, 0x3c, 0x00, 0x00, 0x11, 0x07, 0x02, 0xa1, 0x01, 0x22, 0x00, 0x00, + 0x00, 0x15, 0xb4, 0x01, 0x09, 0x05, 0x26, 0x01, 0xb8, 0xff, 0xb5, 0xb4, + 0x0a, 0x0d, 0x04, 0x08, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, + 0xff, 0xff, 0x00, 0x05, 0xfe, 0x57, 0x03, 0xfc, 0x05, 0xe4, 0x12, 0x26, + 0x00, 0x5c, 0x00, 0x00, 0x11, 0x06, 0x00, 0x43, 0x69, 0x00, 0x00, 0x15, + 0xb4, 0x01, 0x20, 0x11, 0x26, 0x01, 0xb8, 0xff, 0xa7, 0xb4, 0x21, 0x24, + 0x11, 0x1f, 0x25, 0x01, 0x2b, 0x35, 0x00, 0x2b, 0x35, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x5b, 0x01, 0xd0, 0x02, 0x4f, 0x02, 0x70, 0x00, 0x03, + 0x00, 0x1d, 0x00, 0xb0, 0x00, 0x2f, 0xb0, 0x01, 0xcd, 0xb0, 0x01, 0xcd, + 0x01, 0xb0, 0x04, 0x2f, 0xb0, 0x00, 0xdc, 0xb0, 0x03, 0xcd, 0xb0, 0x03, + 0x10, 0xb0, 0x05, 0xd6, 0x00, 0x30, 0x31, 0x13, 0x35, 0x21, 0x15, 0x5b, + 0x01, 0xf4, 0x01, 0xd0, 0xa0, 0xa0, 0x00, 0x00, 0x00, 0x01, 0x00, 0x5b, + 0x01, 0xd0, 0x02, 0x4f, 0x02, 0x70, 0x00, 0x03, 0x00, 0x1d, 0x00, 0xb0, + 0x00, 0x2f, 0xb0, 0x01, 0xcd, 0xb0, 0x01, 0xcd, 0x01, 0xb0, 0x04, 0x2f, + 0xb0, 0x00, 0xdc, 0xb0, 0x03, 0xcd, 0xb0, 0x03, 0x10, 0xb0, 0x05, 0xd6, + 0x00, 0x30, 0x31, 0x13, 0x35, 0x21, 0x15, 0x5b, 0x01, 0xf4, 0x01, 0xd0, + 0xa0, 0xa0, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0xc3, 0x04, 0x72, + 0x02, 0x4c, 0x00, 0x03, 0x00, 0x2b, 0x40, 0x1e, 0x02, 0x00, 0x00, 0xba, + 0x0f, 0x01, 0x1f, 0x01, 0x3f, 0x01, 0x4f, 0x01, 0x04, 0x2f, 0x01, 0x3f, + 0x01, 0x6f, 0x01, 0xaf, 0x01, 0xdf, 0x01, 0x05, 0x01, 0x40, 0x26, 0x2b, + 0x48, 0x01, 0x00, 0x2f, 0x2b, 0x5d, 0x71, 0xed, 0x01, 0x2f, 0x2f, 0x31, + 0x30, 0x11, 0x35, 0x21, 0x15, 0x04, 0x72, 0x01, 0xc3, 0x89, 0x89, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x01, 0xc3, 0x08, 0x00, 0x02, 0x4c, 0x00, 0x03, + 0x00, 0x2b, 0x40, 0x1e, 0x02, 0x00, 0x00, 0xba, 0x0f, 0x01, 0x1f, 0x01, + 0x3f, 0x01, 0x4f, 0x01, 0x04, 0x2f, 0x01, 0x3f, 0x01, 0x6f, 0x01, 0xaf, + 0x01, 0xdf, 0x01, 0x05, 0x01, 0x40, 0x26, 0x2b, 0x48, 0x01, 0x00, 0x2f, + 0x2b, 0x5d, 0x71, 0xed, 0x01, 0x2f, 0x2f, 0x31, 0x30, 0x11, 0x35, 0x21, + 0x15, 0x08, 0x00, 0x01, 0xc3, 0x89, 0x89, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x01, 0xc3, 0x08, 0x00, 0x02, 0x4c, 0x00, 0x03, 0x00, 0x2b, 0x40, 0x1e, + 0x02, 0x00, 0x00, 0xba, 0x0f, 0x01, 0x1f, 0x01, 0x3f, 0x01, 0x4f, 0x01, + 0x04, 0x2f, 0x01, 0x3f, 0x01, 0x6f, 0x01, 0xaf, 0x01, 0xdf, 0x01, 0x05, + 0x01, 0x40, 0x26, 0x2b, 0x48, 0x01, 0x00, 0x2f, 0x2b, 0x5d, 0x71, 0xed, + 0x01, 0x2f, 0x2f, 0x31, 0x30, 0x11, 0x35, 0x21, 0x15, 0x08, 0x00, 0x01, + 0xc3, 0x89, 0x89, 0x00, 0xff, 0xff, 0xff, 0xe1, 0xfe, 0x4e, 0x04, 0x8a, + 0xff, 0xa9, 0x10, 0x26, 0x00, 0x42, 0x00, 0xe5, 0x10, 0x07, 0x00, 0x42, + 0x00, 0x00, 0x00, 0xbe, 0x00, 0x01, 0x00, 0x7f, 0x03, 0xb8, 0x01, 0x48, + 0x05, 0x81, 0x00, 0x0c, 0x00, 0x2f, 0x40, 0x10, 0x04, 0x20, 0x0b, 0x11, + 0x48, 0x07, 0x40, 0x0b, 0x11, 0x48, 0x07, 0x0c, 0x96, 0x0a, 0x97, 0x00, + 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x08, 0x0b, 0x48, 0x00, 0x0a, 0x9c, 0x00, + 0xa9, 0x07, 0x03, 0x00, 0x3f, 0xf4, 0xed, 0x01, 0x2f, 0x2b, 0xed, 0xed, + 0x32, 0x2b, 0x31, 0x30, 0x2b, 0x13, 0x35, 0x34, 0x3e, 0x02, 0x37, 0x33, + 0x0e, 0x01, 0x15, 0x33, 0x15, 0x7f, 0x0a, 0x14, 0x1e, 0x14, 0x79, 0x2d, + 0x32, 0x59, 0x03, 0xb8, 0x92, 0x34, 0x56, 0x4b, 0x42, 0x20, 0x41, 0x84, + 0x41, 0xc3, 0x00, 0x00, 0x00, 0x01, 0x00, 0x7f, 0x03, 0xb8, 0x01, 0x48, + 0x05, 0x81, 0x00, 0x0c, 0x00, 0x34, 0xb9, 0x00, 0x03, 0xff, 0xe0, 0xb7, + 0x0b, 0x11, 0x48, 0x09, 0x97, 0x00, 0x96, 0x06, 0xb8, 0xff, 0xc0, 0xb4, + 0x0b, 0x11, 0x48, 0x06, 0x0b, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x08, 0x0b, + 0x48, 0x0b, 0x0a, 0x9c, 0x05, 0xa9, 0x0b, 0x03, 0x00, 0x3f, 0xe4, 0xed, + 0x01, 0x2f, 0x2b, 0x33, 0x2b, 0xfd, 0xed, 0x31, 0x30, 0x2b, 0x01, 0x14, + 0x0e, 0x02, 0x07, 0x23, 0x3e, 0x01, 0x35, 0x23, 0x35, 0x33, 0x01, 0x48, + 0x09, 0x14, 0x1d, 0x14, 0x7b, 0x2d, 0x31, 0x58, 0xc3, 0x04, 0xf0, 0x35, + 0x56, 0x4b, 0x42, 0x20, 0x41, 0x84, 0x3f, 0xc5, 0x00, 0x01, 0x00, 0x7f, + 0xfe, 0xfa, 0x01, 0x48, 0x00, 0xc3, 0x00, 0x0c, 0x00, 0x33, 0xb9, 0x00, + 0x03, 0xff, 0xe0, 0xb7, 0x0b, 0x11, 0x48, 0x09, 0x97, 0x00, 0x96, 0x06, + 0xb8, 0xff, 0xc0, 0xb4, 0x0b, 0x11, 0x48, 0x06, 0x0b, 0xb8, 0xff, 0xc0, + 0x40, 0x09, 0x08, 0x0b, 0x48, 0x0b, 0x05, 0xa9, 0x0b, 0x9c, 0x0a, 0x00, + 0x2f, 0xfd, 0xe4, 0x01, 0x2f, 0x2b, 0x33, 0x2b, 0xfd, 0xed, 0x31, 0x30, + 0x2b, 0x25, 0x14, 0x0e, 0x02, 0x07, 0x23, 0x3e, 0x01, 0x35, 0x23, 0x35, + 0x33, 0x01, 0x48, 0x09, 0x14, 0x1d, 0x14, 0x7b, 0x2d, 0x31, 0x58, 0xc3, + 0x33, 0x35, 0x57, 0x4b, 0x42, 0x20, 0x41, 0x84, 0x41, 0xc3, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x7e, 0x03, 0xb8, 0x01, 0x47, 0x05, 0x81, 0x00, 0x0c, + 0x00, 0x2f, 0x40, 0x10, 0x08, 0x20, 0x0b, 0x11, 0x48, 0x05, 0x40, 0x0b, + 0x11, 0x48, 0x05, 0x01, 0x96, 0x02, 0x97, 0x0b, 0xb8, 0xff, 0xc0, 0x40, + 0x0a, 0x08, 0x0b, 0x48, 0x0b, 0x05, 0xa9, 0x02, 0x9c, 0x0c, 0x03, 0x00, + 0x3f, 0xed, 0xe4, 0x01, 0x2f, 0x2b, 0xed, 0xed, 0x32, 0x2b, 0x31, 0x30, + 0x2b, 0x01, 0x15, 0x23, 0x14, 0x16, 0x17, 0x23, 0x2e, 0x03, 0x3d, 0x01, + 0x01, 0x41, 0x58, 0x31, 0x2d, 0x7b, 0x14, 0x1d, 0x14, 0x09, 0x05, 0x81, + 0xc5, 0x3f, 0x84, 0x41, 0x20, 0x42, 0x4b, 0x56, 0x35, 0x91, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x4b, 0x03, 0xb8, 0x02, 0x5f, 0x05, 0x81, 0x00, 0x0c, + 0x00, 0x19, 0x00, 0x59, 0x40, 0x3a, 0x11, 0x20, 0x0b, 0x11, 0x48, 0x04, + 0x20, 0x0b, 0x11, 0x48, 0x14, 0x40, 0x0b, 0x11, 0x48, 0x14, 0x19, 0x96, + 0x0d, 0x07, 0x40, 0x0b, 0x11, 0x48, 0x07, 0x0c, 0x96, 0x0a, 0x97, 0x80, + 0x00, 0x01, 0x0f, 0x00, 0x1f, 0x00, 0x02, 0x08, 0x00, 0x17, 0x97, 0x0d, + 0x9f, 0x1b, 0xaf, 0x1b, 0x02, 0x0a, 0x17, 0x9c, 0x0d, 0x00, 0x00, 0x0d, + 0xa9, 0x06, 0x14, 0x03, 0x00, 0x3f, 0x33, 0xe4, 0x32, 0x2f, 0x10, 0xed, + 0x32, 0x01, 0x5d, 0x2f, 0xed, 0xdc, 0x5e, 0x5d, 0x5d, 0xed, 0xed, 0x32, + 0x2b, 0x10, 0xed, 0x32, 0x2b, 0x31, 0x30, 0x2b, 0x2b, 0x01, 0x35, 0x34, + 0x3e, 0x02, 0x37, 0x33, 0x0e, 0x01, 0x15, 0x33, 0x15, 0x21, 0x35, 0x34, + 0x3e, 0x02, 0x37, 0x33, 0x0e, 0x01, 0x15, 0x33, 0x15, 0x01, 0x97, 0x0a, + 0x13, 0x1d, 0x14, 0x7a, 0x2d, 0x31, 0x58, 0xfd, 0xf2, 0x0a, 0x14, 0x1e, + 0x14, 0x79, 0x2d, 0x32, 0x59, 0x03, 0xb8, 0x92, 0x34, 0x56, 0x4b, 0x42, + 0x20, 0x41, 0x84, 0x41, 0xc3, 0x92, 0x34, 0x56, 0x4b, 0x42, 0x20, 0x41, + 0x84, 0x41, 0xc3, 0x00, 0x00, 0x02, 0x00, 0x4b, 0x03, 0xb8, 0x02, 0x5f, + 0x05, 0x81, 0x00, 0x0c, 0x00, 0x19, 0x00, 0x6b, 0xb9, 0x00, 0x10, 0xff, + 0xe0, 0xb3, 0x0b, 0x11, 0x48, 0x03, 0xb8, 0xff, 0xe0, 0x40, 0x0d, 0x0b, + 0x11, 0x48, 0x16, 0x97, 0x0d, 0x96, 0x18, 0x09, 0x97, 0x00, 0x96, 0x06, + 0xb8, 0xff, 0xc0, 0x40, 0x0f, 0x0b, 0x11, 0x48, 0x06, 0x80, 0x0b, 0x01, + 0x0f, 0x0b, 0x1f, 0x0b, 0x02, 0x08, 0x0b, 0x13, 0xb8, 0xff, 0xc0, 0x40, + 0x18, 0x0b, 0x11, 0x48, 0x13, 0x3f, 0x18, 0x01, 0x18, 0x9f, 0x1b, 0xaf, + 0x1b, 0x02, 0x0a, 0x17, 0x9c, 0x18, 0x05, 0x05, 0x12, 0xa9, 0x0b, 0x18, + 0x03, 0x00, 0x3f, 0x33, 0xe4, 0x32, 0x2f, 0x10, 0xed, 0x32, 0x01, 0x5d, + 0x2f, 0x5d, 0x33, 0x2b, 0xdc, 0x5e, 0x5d, 0x5d, 0x32, 0x2b, 0xfd, 0xed, + 0x10, 0xfd, 0xed, 0x31, 0x30, 0x2b, 0x2b, 0x01, 0x14, 0x0e, 0x02, 0x07, + 0x23, 0x3e, 0x01, 0x35, 0x23, 0x35, 0x33, 0x05, 0x14, 0x0e, 0x02, 0x07, + 0x23, 0x3e, 0x01, 0x35, 0x23, 0x35, 0x33, 0x02, 0x5f, 0x0a, 0x13, 0x1e, + 0x14, 0x79, 0x2d, 0x31, 0x58, 0xc2, 0xfe, 0xb5, 0x09, 0x14, 0x1d, 0x14, + 0x7b, 0x2d, 0x31, 0x58, 0xc3, 0x04, 0xf0, 0x35, 0x56, 0x4b, 0x42, 0x20, + 0x41, 0x84, 0x41, 0xc3, 0x91, 0x35, 0x56, 0x4b, 0x42, 0x20, 0x41, 0x84, + 0x41, 0xc3, 0x00, 0x00, 0x00, 0x02, 0x00, 0x4b, 0xfe, 0xfa, 0x02, 0x5f, + 0x00, 0xc3, 0x00, 0x0c, 0x00, 0x19, 0x00, 0x68, 0xb9, 0x00, 0x10, 0xff, + 0xe0, 0xb3, 0x0b, 0x11, 0x48, 0x03, 0xb8, 0xff, 0xe0, 0x40, 0x0d, 0x0b, + 0x11, 0x48, 0x16, 0x97, 0x0d, 0x96, 0x18, 0x09, 0x97, 0x00, 0x96, 0x06, + 0xb8, 0xff, 0xc0, 0x40, 0x0f, 0x0b, 0x11, 0x48, 0x06, 0x80, 0x0b, 0x01, + 0x0f, 0x0b, 0x1f, 0x0b, 0x02, 0x08, 0x0b, 0x13, 0xb8, 0xff, 0xc0, 0x40, + 0x15, 0x0b, 0x11, 0x48, 0x13, 0x18, 0x9f, 0x1b, 0xaf, 0x1b, 0x02, 0x05, + 0x05, 0x12, 0xa9, 0x18, 0x0b, 0x0b, 0x18, 0x9c, 0x0a, 0x17, 0x00, 0x2f, + 0x33, 0xed, 0x32, 0x2f, 0x10, 0xe4, 0x32, 0x2f, 0x01, 0x5d, 0x2f, 0x33, + 0x2b, 0xdc, 0x5e, 0x5d, 0x5d, 0x32, 0x2b, 0xfd, 0xed, 0x10, 0xfd, 0xed, + 0x31, 0x30, 0x2b, 0x2b, 0x25, 0x14, 0x0e, 0x02, 0x07, 0x23, 0x3e, 0x01, + 0x35, 0x23, 0x35, 0x33, 0x05, 0x14, 0x0e, 0x02, 0x07, 0x23, 0x3e, 0x01, + 0x35, 0x23, 0x35, 0x33, 0x02, 0x5f, 0x0a, 0x13, 0x1e, 0x14, 0x79, 0x2d, + 0x31, 0x58, 0xc2, 0xfe, 0xb5, 0x09, 0x14, 0x1d, 0x14, 0x7b, 0x2d, 0x31, + 0x58, 0xc3, 0x33, 0x35, 0x57, 0x4b, 0x42, 0x20, 0x41, 0x84, 0x41, 0xc3, + 0x90, 0x35, 0x57, 0x4b, 0x42, 0x20, 0x41, 0x84, 0x41, 0xc3, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x8a, 0xff, 0x76, 0x03, 0xea, 0x05, 0xcc, 0x00, 0x0b, + 0x00, 0x40, 0x40, 0x25, 0x0b, 0xc0, 0x00, 0x08, 0x09, 0x08, 0x00, 0xbc, + 0x03, 0x07, 0x07, 0x06, 0x04, 0xc0, 0x2f, 0x03, 0x6f, 0x03, 0xaf, 0x03, + 0x03, 0x20, 0x03, 0x01, 0x03, 0x0b, 0xc1, 0x0a, 0xc2, 0x07, 0x04, 0xc1, + 0x05, 0xc2, 0x07, 0x00, 0x01, 0x00, 0x2f, 0x3f, 0xf6, 0xed, 0x10, 0xf4, + 0xed, 0x01, 0x2f, 0x5d, 0x71, 0xed, 0x33, 0x33, 0x2f, 0x10, 0xed, 0x32, + 0x32, 0x2f, 0x10, 0xed, 0x31, 0x30, 0x01, 0x03, 0x23, 0x03, 0x05, 0x35, + 0x05, 0x03, 0x33, 0x03, 0x25, 0x15, 0x02, 0x89, 0x16, 0x73, 0x16, 0xfe, + 0xa0, 0x01, 0x60, 0x1c, 0xd7, 0x1c, 0x01, 0x61, 0x03, 0xe8, 0xfb, 0x8e, + 0x04, 0x72, 0x1b, 0xa4, 0x1d, 0x01, 0x78, 0xfe, 0x88, 0x1d, 0xa4, 0x00, + 0x00, 0x01, 0x00, 0x88, 0xff, 0x73, 0x03, 0xe9, 0x05, 0xcc, 0x00, 0x15, + 0x00, 0x56, 0x40, 0x32, 0x0c, 0x08, 0xbd, 0x09, 0x0f, 0x05, 0x06, 0x0b, + 0x0e, 0x0f, 0x05, 0x09, 0xbe, 0x13, 0x01, 0xbd, 0x00, 0x14, 0x11, 0x00, + 0x10, 0x03, 0x04, 0x10, 0x03, 0x20, 0x00, 0x01, 0x00, 0x13, 0xc1, 0x12, + 0xc2, 0x0f, 0x0c, 0xc1, 0x0d, 0xc2, 0x0f, 0x08, 0xc1, 0x07, 0xc2, 0x04, + 0x01, 0xc1, 0x02, 0xc2, 0x04, 0x00, 0x00, 0x3f, 0xf6, 0xed, 0x10, 0xf4, + 0xed, 0x2f, 0xf6, 0xed, 0x10, 0xf4, 0xed, 0x01, 0x2f, 0x5d, 0x17, 0x33, + 0x2f, 0x11, 0x33, 0x33, 0x10, 0xed, 0x32, 0xed, 0x17, 0x32, 0x2f, 0x10, + 0xed, 0x32, 0x31, 0x30, 0x01, 0x05, 0x35, 0x05, 0x03, 0x33, 0x03, 0x25, + 0x15, 0x25, 0x03, 0x13, 0x25, 0x15, 0x25, 0x13, 0x23, 0x13, 0x05, 0x35, + 0x05, 0x13, 0x01, 0xf1, 0xfe, 0x98, 0x01, 0x68, 0x10, 0xaf, 0x10, 0x01, + 0x69, 0xfe, 0x97, 0x1a, 0x1a, 0x01, 0x68, 0xfe, 0x98, 0x10, 0xaf, 0x10, + 0xfe, 0x97, 0x01, 0x69, 0x1a, 0x03, 0xe8, 0x1b, 0xa4, 0x1d, 0x01, 0x78, + 0xfe, 0x88, 0x1d, 0xa4, 0x1b, 0xfe, 0xb6, 0xfe, 0xb9, 0x1b, 0xa4, 0x1d, + 0xfe, 0x88, 0x01, 0x78, 0x1d, 0xa4, 0x1b, 0x01, 0x47, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x51, 0x01, 0x91, 0x02, 0x7c, 0x03, 0xbc, 0x00, 0x13, + 0x00, 0x49, 0xb9, 0x00, 0x11, 0xff, 0xe8, 0xb3, 0x09, 0x0c, 0x48, 0x0d, + 0xb8, 0xff, 0xe8, 0x40, 0x27, 0x09, 0x0c, 0x48, 0x07, 0x18, 0x09, 0x0c, + 0x48, 0x03, 0x18, 0x09, 0x0c, 0x48, 0x80, 0x00, 0x01, 0x0f, 0x00, 0x3f, + 0x00, 0x02, 0x00, 0xbf, 0x0a, 0x01, 0x0a, 0x8f, 0x05, 0x01, 0x00, 0x05, + 0x30, 0x05, 0x02, 0x05, 0x0f, 0x0f, 0x01, 0x0f, 0x00, 0x2f, 0x5d, 0xcd, + 0x5d, 0x5d, 0x01, 0x2f, 0x5d, 0xcd, 0x5d, 0x5d, 0x31, 0x30, 0x00, 0x2b, + 0x2b, 0x2b, 0x2b, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, + 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x02, 0x7c, 0x2d, 0x4c, 0x66, + 0x3a, 0x39, 0x63, 0x4b, 0x2b, 0x2b, 0x4b, 0x63, 0x39, 0x3a, 0x66, 0x4c, + 0x2d, 0x02, 0xaa, 0x3a, 0x66, 0x4d, 0x2c, 0x2c, 0x4d, 0x66, 0x3a, 0x39, + 0x64, 0x4a, 0x2b, 0x2b, 0x4a, 0x64, 0x00, 0x00, 0x00, 0x03, 0x01, 0x16, + 0x00, 0x00, 0x06, 0xea, 0x00, 0xdb, 0x00, 0x03, 0x00, 0x07, 0x00, 0x0b, + 0x00, 0x56, 0x40, 0x3d, 0x07, 0x96, 0x04, 0x04, 0x00, 0x0b, 0x96, 0x00, + 0x08, 0x30, 0x08, 0x60, 0x08, 0x80, 0x08, 0x90, 0x08, 0xa0, 0x08, 0xd0, + 0x08, 0xf0, 0x08, 0x08, 0x00, 0x08, 0x30, 0x08, 0x40, 0x08, 0x60, 0x08, + 0x90, 0x08, 0xc0, 0x08, 0xd0, 0x08, 0xf0, 0x08, 0x08, 0x08, 0x08, 0x03, + 0x96, 0x2f, 0x00, 0xbf, 0x00, 0x02, 0x10, 0x00, 0x01, 0x00, 0x05, 0x01, + 0x09, 0x9b, 0x04, 0x00, 0x08, 0x00, 0x2f, 0x33, 0x33, 0xed, 0x32, 0x32, + 0x01, 0x2f, 0x5d, 0x5d, 0xed, 0x2f, 0x5e, 0x5d, 0x71, 0xed, 0x12, 0x39, + 0x2f, 0xed, 0x31, 0x30, 0x21, 0x35, 0x33, 0x15, 0x21, 0x35, 0x33, 0x15, + 0x21, 0x35, 0x33, 0x15, 0x06, 0x28, 0xc2, 0xfc, 0xb7, 0xc0, 0xfc, 0xb5, + 0xc3, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x07, 0x00, 0x37, + 0xff, 0xf5, 0x07, 0xc8, 0x05, 0x8d, 0x00, 0x03, 0x00, 0x17, 0x00, 0x2b, + 0x00, 0x3f, 0x00, 0x53, 0x00, 0x67, 0x00, 0x7b, 0x03, 0xd9, 0x40, 0x0c, + 0x76, 0x00, 0x86, 0x00, 0x02, 0x79, 0x02, 0x89, 0x02, 0x02, 0x03, 0x66, + 0xb8, 0xff, 0xe0, 0x40, 0x0e, 0x08, 0x0c, 0x48, 0x60, 0x18, 0x08, 0x0c, + 0x48, 0x5c, 0x18, 0x08, 0x0c, 0x48, 0x56, 0xb8, 0xff, 0xe0, 0xb3, 0x08, + 0x0c, 0x48, 0x3e, 0xb8, 0xff, 0xe8, 0x40, 0x0e, 0x08, 0x0c, 0x48, 0x38, + 0x18, 0x08, 0x0c, 0x48, 0x34, 0x18, 0x08, 0x0c, 0x48, 0x2e, 0xb8, 0xff, + 0xe0, 0xb3, 0x08, 0x0c, 0x48, 0x16, 0xb8, 0xff, 0xe0, 0x40, 0x0e, 0x08, + 0x0c, 0x48, 0x10, 0x18, 0x08, 0x0c, 0x48, 0x0c, 0x18, 0x08, 0x0c, 0x48, + 0x06, 0xb8, 0xff, 0xe0, 0x40, 0x0d, 0x08, 0x0c, 0x48, 0x4a, 0xb4, 0x3b, + 0xb5, 0x31, 0x00, 0x01, 0x02, 0x03, 0x01, 0xb8, 0xff, 0xf0, 0x40, 0x83, + 0x03, 0x10, 0x76, 0x03, 0x01, 0x09, 0x01, 0x19, 0x01, 0x79, 0x01, 0x03, + 0x09, 0x01, 0x03, 0x01, 0x03, 0x13, 0x31, 0xb4, 0x66, 0x40, 0x01, 0x26, + 0x40, 0xb6, 0x40, 0xc6, 0x40, 0xd6, 0x40, 0x04, 0x40, 0x40, 0x13, 0x72, + 0xb4, 0x63, 0xb5, 0x59, 0xb4, 0x69, 0x68, 0x01, 0x16, 0x68, 0x26, 0x68, + 0x02, 0xc9, 0x68, 0xf9, 0x68, 0x02, 0x8b, 0x68, 0x01, 0x76, 0x68, 0x01, + 0x59, 0x68, 0x01, 0x46, 0x68, 0x01, 0x29, 0x68, 0x01, 0x1b, 0x68, 0x01, + 0xe9, 0x68, 0x01, 0x96, 0x68, 0xc6, 0x68, 0x02, 0x79, 0x68, 0x01, 0x6b, + 0x68, 0x01, 0x56, 0x68, 0x01, 0x39, 0x68, 0x01, 0x06, 0x68, 0x16, 0x68, + 0x26, 0x68, 0x03, 0x0a, 0x68, 0x18, 0xb4, 0x09, 0xb5, 0x22, 0xb4, 0x09, + 0x13, 0x19, 0x13, 0x29, 0x13, 0x49, 0x13, 0x59, 0x13, 0x79, 0x13, 0x89, + 0x13, 0x99, 0x13, 0x08, 0x22, 0x13, 0x40, 0x2d, 0x31, 0x48, 0x13, 0xb8, + 0xff, 0xc0, 0x40, 0xff, 0x13, 0x17, 0x48, 0x13, 0xd9, 0x7d, 0x01, 0xc6, + 0x7d, 0x01, 0xa9, 0x7d, 0x01, 0x9b, 0x7d, 0x01, 0x79, 0x7d, 0x01, 0x6b, + 0x7d, 0x01, 0x5d, 0x7d, 0x01, 0x49, 0x7d, 0x01, 0x3b, 0x7d, 0x01, 0x2d, + 0x7d, 0x01, 0x09, 0x7d, 0x19, 0x7d, 0x02, 0xfb, 0x7d, 0x01, 0xed, 0x7d, + 0x01, 0xd9, 0x7d, 0x01, 0xcb, 0x7d, 0x01, 0xbd, 0x7d, 0x01, 0x9b, 0x7d, + 0x01, 0x7d, 0x7d, 0x8d, 0x7d, 0x02, 0x69, 0x7d, 0x01, 0x5b, 0x7d, 0x01, + 0x4d, 0x7d, 0x01, 0x36, 0x7d, 0x01, 0x29, 0x7d, 0x01, 0x0b, 0x7d, 0x1b, + 0x7d, 0x02, 0xcc, 0xe9, 0x7d, 0xf9, 0x7d, 0x02, 0xd6, 0x7d, 0x01, 0xbb, + 0x7d, 0x01, 0xad, 0x7d, 0x01, 0x89, 0x7d, 0x99, 0x7d, 0x02, 0x7b, 0x7d, + 0x01, 0x66, 0x7d, 0x01, 0x4b, 0x7d, 0x01, 0x3d, 0x7d, 0x01, 0x09, 0x7d, + 0x01, 0xdb, 0x7d, 0xfb, 0x7d, 0x02, 0xcd, 0x7d, 0x01, 0x99, 0x7d, 0xa9, + 0x7d, 0x02, 0x6b, 0x7d, 0x8b, 0x7d, 0x02, 0x5d, 0x7d, 0x01, 0x39, 0x7d, + 0x01, 0x2b, 0x7d, 0x01, 0x1d, 0x7d, 0x01, 0x09, 0x7d, 0x01, 0xed, 0x7d, + 0xfd, 0x7d, 0x02, 0xb9, 0x7d, 0xc9, 0x7d, 0xd9, 0x7d, 0x03, 0x7b, 0x7d, + 0xab, 0x7d, 0x02, 0x59, 0x7d, 0x01, 0x0b, 0x7d, 0x3b, 0x7d, 0x4b, 0x7d, + 0x03, 0x9b, 0xf9, 0x7d, 0x01, 0xeb, 0x7d, 0x01, 0xd6, 0x7d, 0x01, 0xbb, + 0x7d, 0x01, 0x99, 0x7d, 0x01, 0x7b, 0x7d, 0x8b, 0x7d, 0x02, 0x66, 0x7d, + 0x01, 0x3b, 0x7d, 0x4b, 0x7d, 0x02, 0x09, 0x7d, 0x19, 0x7d, 0x02, 0xf6, + 0x7d, 0x01, 0xd9, 0x7d, 0x01, 0xcd, 0x7d, 0x01, 0xa9, 0x7d, 0xb9, 0x7d, + 0x02, 0x9b, 0x7d, 0x01, 0x69, 0x7d, 0x79, 0x7d, 0x02, 0x5d, 0x7d, 0x01, + 0x39, 0x7d, 0x49, 0x7d, 0x02, 0x2b, 0x7d, 0x01, 0x16, 0x7d, 0x01, 0xf9, + 0x7d, 0x01, 0xed, 0x7d, 0x01, 0xc9, 0x7d, 0x40, 0xf9, 0x01, 0xbb, 0x7d, + 0x01, 0x99, 0x7d, 0x01, 0x7b, 0x7d, 0x01, 0x66, 0x7d, 0x01, 0x49, 0x7d, + 0x01, 0x36, 0x7d, 0x01, 0x09, 0x7d, 0x19, 0x7d, 0x02, 0x69, 0xf9, 0x7d, + 0x01, 0xeb, 0x7d, 0x01, 0xdd, 0x7d, 0x01, 0xa9, 0x7d, 0x01, 0x96, 0x7d, + 0x01, 0x79, 0x7d, 0x01, 0x6b, 0x7d, 0x01, 0x49, 0x7d, 0x01, 0x3b, 0x7d, + 0x01, 0x19, 0x7d, 0x01, 0x0b, 0x7d, 0x01, 0xfd, 0x7d, 0x01, 0xd9, 0x7d, + 0x01, 0xcb, 0x7d, 0x01, 0xa9, 0x7d, 0x01, 0x9b, 0x7d, 0x01, 0x8d, 0x7d, + 0x01, 0x79, 0x7d, 0x01, 0x5b, 0x7d, 0x6b, 0x7d, 0x02, 0x39, 0x7d, 0x01, + 0x1b, 0x7d, 0x2b, 0x7d, 0x02, 0xf9, 0x7d, 0x01, 0xeb, 0x7d, 0x01, 0xa9, + 0x7d, 0xc9, 0x7d, 0x02, 0x96, 0x7d, 0x01, 0x79, 0x7d, 0x01, 0x6b, 0x7d, + 0x01, 0x39, 0x7d, 0x01, 0x26, 0x7d, 0x01, 0x09, 0x7d, 0x01, 0x38, 0xf9, + 0x7d, 0x01, 0xe6, 0x7d, 0x01, 0xc9, 0x7d, 0x01, 0xb6, 0x7d, 0x01, 0x99, + 0x7d, 0x01, 0x8b, 0x7d, 0x01, 0x59, 0x7d, 0x01, 0x46, 0x7d, 0x01, 0x29, + 0x7d, 0x01, 0x1b, 0x7d, 0x01, 0xf9, 0x7d, 0x01, 0xeb, 0x7d, 0x01, 0xc9, + 0x7d, 0x01, 0xbb, 0x7d, 0x01, 0xad, 0x7d, 0x01, 0x01, 0x94, 0x7d, 0x01, + 0x7b, 0x7d, 0x01, 0x64, 0x7d, 0x01, 0x4b, 0x7d, 0x01, 0x3f, 0x7d, 0x01, + 0x1b, 0x7d, 0x01, 0x0f, 0x7d, 0x01, 0xe4, 0x7d, 0x01, 0xcb, 0x7d, 0x01, + 0xb0, 0x7d, 0x01, 0x02, 0xa0, 0x7d, 0x01, 0x8f, 0x7d, 0x01, 0x70, 0x7d, + 0x01, 0x5f, 0x7d, 0x01, 0x40, 0x7d, 0x01, 0x1f, 0x7d, 0x01, 0x00, 0x7d, + 0x01, 0x08, 0x6d, 0xb6, 0x54, 0xb7, 0x77, 0xb6, 0x5e, 0x13, 0x45, 0xb6, + 0x2c, 0xb7, 0x4f, 0xb6, 0x36, 0x13, 0x27, 0xb6, 0x0e, 0xb7, 0x1d, 0xb6, + 0x04, 0x04, 0x02, 0x03, 0x00, 0x12, 0x00, 0x3f, 0x3f, 0x3f, 0xed, 0xf4, + 0xed, 0x3f, 0xed, 0xf4, 0xed, 0x3f, 0xed, 0xf4, 0xed, 0x01, 0x5e, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x5d, 0x5d, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x5f, 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x71, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x72, 0x5e, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x2f, 0x2b, 0x2b, 0x5e, 0x5d, 0xed, 0xf4, 0xed, 0x2f, 0x5e, 0x5d, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, + 0x72, 0x72, 0xfd, 0xf4, 0xed, 0x12, 0x39, 0x2f, 0x5d, 0x71, 0xed, 0x11, + 0x39, 0x39, 0x2f, 0x2f, 0x5e, 0x5d, 0x5d, 0x38, 0x38, 0x11, 0x33, 0x11, + 0x33, 0x10, 0xf4, 0xed, 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, 0x5f, 0x5d, 0x5d, 0x21, + 0x23, 0x01, 0x33, 0x25, 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x23, + 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x13, 0x34, 0x2e, 0x02, 0x23, + 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x01, + 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, + 0x34, 0x3e, 0x02, 0x13, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, + 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x01, 0x32, 0x1e, 0x02, 0x15, + 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x13, + 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, + 0x32, 0x3e, 0x02, 0x01, 0x30, 0x9b, 0x03, 0x9a, 0x9d, 0xfc, 0x98, 0x3c, + 0x6b, 0x50, 0x2e, 0x2e, 0x51, 0x6c, 0x3e, 0x3f, 0x6c, 0x50, 0x2e, 0x2e, + 0x51, 0x6e, 0xd2, 0x13, 0x25, 0x37, 0x23, 0x26, 0x3a, 0x27, 0x13, 0x14, + 0x27, 0x38, 0x25, 0x22, 0x36, 0x27, 0x15, 0x02, 0x1e, 0x3c, 0x6b, 0x50, + 0x2e, 0x2e, 0x51, 0x6c, 0x3e, 0x3f, 0x6c, 0x50, 0x2e, 0x2e, 0x51, 0x6e, + 0xd2, 0x13, 0x25, 0x37, 0x23, 0x26, 0x3a, 0x27, 0x13, 0x14, 0x27, 0x38, + 0x25, 0x22, 0x36, 0x27, 0x15, 0x01, 0xfd, 0x3c, 0x6b, 0x50, 0x2e, 0x2e, + 0x51, 0x6c, 0x3e, 0x3f, 0x6c, 0x50, 0x2e, 0x2e, 0x51, 0x6e, 0xd2, 0x13, + 0x25, 0x37, 0x23, 0x26, 0x3a, 0x27, 0x13, 0x14, 0x27, 0x38, 0x25, 0x22, + 0x36, 0x27, 0x15, 0x05, 0x81, 0x0c, 0x21, 0x53, 0x8b, 0x6a, 0x66, 0x8c, + 0x56, 0x26, 0x25, 0x56, 0x8c, 0x67, 0x6a, 0x8b, 0x53, 0x21, 0xfe, 0x97, + 0x49, 0x62, 0x3a, 0x18, 0x18, 0x3b, 0x61, 0x49, 0x47, 0x61, 0x3b, 0x1a, + 0x1a, 0x3b, 0x61, 0xfe, 0xef, 0x21, 0x53, 0x8b, 0x6a, 0x66, 0x8c, 0x56, + 0x26, 0x25, 0x56, 0x8c, 0x67, 0x6a, 0x8b, 0x53, 0x21, 0xfe, 0x97, 0x49, + 0x62, 0x3a, 0x18, 0x18, 0x3b, 0x61, 0x49, 0x47, 0x61, 0x3b, 0x1a, 0x1a, + 0x3b, 0x61, 0x01, 0xb0, 0x21, 0x53, 0x8b, 0x6a, 0x66, 0x8c, 0x56, 0x26, + 0x25, 0x56, 0x8c, 0x67, 0x6a, 0x8b, 0x53, 0x21, 0xfe, 0x97, 0x49, 0x62, + 0x3a, 0x18, 0x18, 0x3b, 0x61, 0x49, 0x47, 0x61, 0x3b, 0x1a, 0x1a, 0x3b, + 0x61, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x55, 0x03, 0x7a, 0x01, 0x59, + 0x05, 0x81, 0x00, 0x03, 0x00, 0x28, 0x40, 0x19, 0x03, 0x10, 0x0a, 0x0d, + 0x48, 0x01, 0x10, 0x0a, 0x0d, 0x48, 0x01, 0x96, 0x1f, 0x02, 0x2f, 0x02, + 0x02, 0x02, 0x30, 0x00, 0x01, 0x00, 0x00, 0x01, 0x03, 0x00, 0x3f, 0xcd, + 0x01, 0x2f, 0x5d, 0xdd, 0x5d, 0xed, 0x31, 0x30, 0x2b, 0x2b, 0x1b, 0x01, + 0x33, 0x03, 0x55, 0x40, 0xc4, 0x9e, 0x03, 0x7a, 0x02, 0x07, 0xfd, 0xf9, + 0xff, 0xff, 0x00, 0x55, 0x03, 0x7a, 0x02, 0xaf, 0x05, 0x81, 0x10, 0x26, + 0x02, 0x1a, 0x00, 0x00, 0x11, 0x07, 0x02, 0x1a, 0x01, 0x56, 0x00, 0x00, + 0x00, 0x09, 0xb4, 0x01, 0x60, 0x04, 0x01, 0x04, 0x11, 0x5d, 0x35, 0x00, + 0x00, 0x01, 0x00, 0x58, 0x00, 0x8d, 0x02, 0x51, 0x03, 0xac, 0x00, 0x08, + 0x00, 0x48, 0x40, 0x37, 0x6a, 0x03, 0x7a, 0x03, 0x8a, 0x03, 0x03, 0x6a, + 0x00, 0x7a, 0x00, 0x8a, 0x00, 0x03, 0x07, 0xec, 0x06, 0xeb, 0x05, 0xec, + 0x1f, 0x01, 0x4f, 0x01, 0x5f, 0x01, 0x7f, 0x01, 0x8f, 0x01, 0x05, 0x30, + 0x01, 0x40, 0x01, 0x60, 0x01, 0x70, 0x01, 0xa0, 0x01, 0x05, 0x01, 0x00, + 0xef, 0x0f, 0x03, 0x2f, 0x03, 0x6f, 0x03, 0x7f, 0x03, 0x04, 0x03, 0x00, + 0x2f, 0x5d, 0xe4, 0x01, 0x2f, 0x5d, 0x71, 0xed, 0xed, 0xed, 0x31, 0x30, + 0x5d, 0x5d, 0x25, 0x01, 0x35, 0x01, 0x33, 0x15, 0x09, 0x01, 0x15, 0x01, + 0xa8, 0xfe, 0xb0, 0x01, 0x50, 0xa7, 0xfe, 0xb1, 0x01, 0x51, 0x8d, 0x01, + 0x6d, 0x3f, 0x01, 0x73, 0x1f, 0xfe, 0x8c, 0xfe, 0x91, 0x1d, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x59, 0x00, 0x8d, 0x02, 0x52, 0x03, 0xac, 0x00, 0x08, + 0x00, 0x42, 0x40, 0x30, 0x65, 0x06, 0x75, 0x06, 0x85, 0x06, 0x03, 0x65, + 0x00, 0x75, 0x00, 0x85, 0x00, 0x03, 0x04, 0xec, 0x01, 0xec, 0x08, 0xeb, + 0x70, 0x03, 0x80, 0x03, 0xb0, 0x03, 0x03, 0xd0, 0x03, 0x01, 0x6f, 0x03, + 0x7f, 0x03, 0x02, 0x03, 0x00, 0xef, 0x0f, 0x06, 0x2f, 0x06, 0x6f, 0x06, + 0x7f, 0x06, 0x04, 0x06, 0x00, 0x2f, 0x5d, 0xe4, 0x01, 0x2f, 0x5d, 0x5d, + 0x71, 0xfd, 0xed, 0xed, 0x31, 0x30, 0x5d, 0x5d, 0x25, 0x23, 0x35, 0x09, + 0x01, 0x35, 0x33, 0x01, 0x15, 0x01, 0x01, 0xa8, 0x01, 0x52, 0xfe, 0xb0, + 0xa6, 0x01, 0x51, 0x8d, 0x1d, 0x01, 0x6f, 0x01, 0x74, 0x1f, 0xfe, 0x8d, + 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xb9, 0x00, 0x00, 0x03, 0x47, + 0x05, 0x81, 0x10, 0x26, 0x00, 0x04, 0x00, 0x00, 0x11, 0x07, 0x00, 0x04, + 0x01, 0xc8, 0x00, 0x00, 0x00, 0x16, 0x40, 0x0c, 0x03, 0x02, 0x2f, 0x08, + 0x01, 0x08, 0x01, 0x00, 0x2f, 0x00, 0x01, 0x00, 0x11, 0x5d, 0x35, 0x35, + 0x11, 0x5d, 0x35, 0x35, 0x00, 0x01, 0xff, 0xc0, 0x05, 0xdf, 0x02, 0xeb, + 0x06, 0x54, 0x00, 0x03, 0x00, 0x0d, 0xb3, 0x01, 0x00, 0x02, 0x01, 0x00, + 0x2f, 0xcd, 0x01, 0x2f, 0x2f, 0x31, 0x30, 0x01, 0x21, 0x35, 0x21, 0x02, + 0xeb, 0xfc, 0xd5, 0x03, 0x2b, 0x05, 0xdf, 0x75, 0x00, 0x01, 0xfe, 0x60, + 0x00, 0x00, 0x02, 0x62, 0x05, 0x81, 0x00, 0x03, 0x00, 0x2d, 0xb6, 0x03, + 0x10, 0x6f, 0x03, 0x01, 0x03, 0x01, 0xb8, 0xff, 0xf0, 0x40, 0x12, 0xef, + 0x01, 0x01, 0x01, 0x40, 0x0d, 0x12, 0x48, 0x01, 0x40, 0x08, 0x0b, 0x48, + 0x01, 0x02, 0x03, 0x00, 0x12, 0x00, 0x3f, 0x3f, 0x01, 0x2f, 0x2b, 0x2b, + 0x5d, 0x38, 0x2f, 0x5d, 0x38, 0x31, 0x30, 0x21, 0x23, 0x01, 0x33, 0xfe, + 0xf4, 0x94, 0x03, 0x71, 0x91, 0x05, 0x81, 0x00, 0x00, 0x01, 0x00, 0x65, + 0x02, 0x07, 0x02, 0x83, 0x04, 0x9d, 0x00, 0x21, 0x00, 0x6f, 0xb9, 0x00, + 0x1e, 0xff, 0xd8, 0x40, 0x1e, 0x09, 0x11, 0x48, 0x17, 0x0a, 0xe0, 0x24, + 0x0b, 0x01, 0x0b, 0x21, 0xe0, 0x24, 0x00, 0xd4, 0x00, 0xe4, 0x00, 0x03, + 0x00, 0x17, 0x06, 0xe4, 0x0b, 0x8b, 0x00, 0xfb, 0x00, 0x02, 0x00, 0xb8, + 0xff, 0xc0, 0x40, 0x26, 0x0a, 0x0d, 0x48, 0x04, 0x00, 0x01, 0x00, 0x1d, + 0x11, 0x11, 0x4b, 0x1d, 0x5b, 0x1d, 0x02, 0x1d, 0x40, 0x15, 0x19, 0x48, + 0x1d, 0x40, 0x10, 0x13, 0x48, 0x2f, 0x1d, 0x3f, 0x1d, 0x02, 0x1b, 0x1d, + 0x01, 0x0f, 0x1d, 0x01, 0x02, 0x1d, 0x00, 0x2f, 0x5f, 0x5d, 0x5d, 0x5d, + 0x2b, 0x2b, 0x5d, 0x33, 0x2f, 0x10, 0xcc, 0x5d, 0x2b, 0x5d, 0x32, 0xed, + 0x32, 0x01, 0x2f, 0x5d, 0xed, 0x2f, 0x5d, 0xed, 0x32, 0x31, 0x30, 0x00, + 0x2b, 0x01, 0x11, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x06, 0x15, 0x11, 0x23, + 0x11, 0x34, 0x2e, 0x02, 0x35, 0x33, 0x14, 0x1e, 0x02, 0x15, 0x33, 0x3e, + 0x03, 0x33, 0x32, 0x16, 0x15, 0x11, 0x02, 0x02, 0x0d, 0x1d, 0x2f, 0x23, + 0x48, 0x55, 0x80, 0x01, 0x01, 0x02, 0x77, 0x02, 0x02, 0x02, 0x02, 0x0f, + 0x26, 0x31, 0x40, 0x2a, 0x6e, 0x61, 0x02, 0x07, 0x01, 0x8e, 0x2e, 0x3d, + 0x25, 0x10, 0x64, 0x5e, 0xfe, 0x94, 0x01, 0xff, 0x14, 0x2e, 0x28, 0x1d, + 0x04, 0x03, 0x1b, 0x22, 0x23, 0x0c, 0x1c, 0x2e, 0x20, 0x11, 0x6c, 0x79, + 0xfe, 0x4f, 0x00, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x00, 0x04, 0x2e, + 0x05, 0x81, 0x00, 0x11, 0x00, 0x6a, 0x40, 0x45, 0x07, 0x03, 0x07, 0x03, + 0x0a, 0x00, 0x10, 0x20, 0x10, 0x02, 0x10, 0x10, 0x30, 0x10, 0x50, 0x10, + 0x70, 0x10, 0x90, 0x10, 0xe0, 0x10, 0x06, 0x10, 0x05, 0x01, 0x09, 0x5c, + 0x0e, 0x0c, 0x0a, 0x08, 0x0c, 0x51, 0x05, 0x1f, 0x0d, 0x01, 0x00, 0x0d, + 0x01, 0x0d, 0x04, 0x5f, 0x0f, 0x01, 0x1f, 0x01, 0x3f, 0x01, 0x4f, 0x01, + 0x04, 0x3f, 0x01, 0x01, 0x0f, 0x01, 0x01, 0x08, 0x01, 0x01, 0x09, 0x00, + 0x5f, 0x0f, 0x03, 0x09, 0x12, 0x00, 0x3f, 0x3f, 0xed, 0x12, 0x39, 0x2f, + 0x5e, 0x5d, 0x5d, 0x71, 0xed, 0xdc, 0x5d, 0x71, 0x32, 0xed, 0x32, 0x01, + 0x2f, 0x33, 0x33, 0xed, 0x32, 0x32, 0x2f, 0x5d, 0x71, 0x12, 0x39, 0x39, + 0x2f, 0x2f, 0x31, 0x30, 0x01, 0x11, 0x21, 0x15, 0x21, 0x15, 0x21, 0x15, + 0x21, 0x11, 0x23, 0x11, 0x23, 0x35, 0x33, 0x11, 0x21, 0x15, 0x01, 0x67, + 0x02, 0xaf, 0xfd, 0x51, 0x01, 0x92, 0xfe, 0x6e, 0xb4, 0xaf, 0xaf, 0x03, + 0x7b, 0x04, 0xe6, 0xfe, 0x24, 0x9d, 0xd5, 0x81, 0xfe, 0xe9, 0x01, 0x17, + 0x81, 0x03, 0xe9, 0x9b, 0x00, 0x01, 0x00, 0x3a, 0x00, 0x00, 0x04, 0x50, + 0x05, 0x96, 0x00, 0x3a, 0x00, 0xdd, 0x40, 0x51, 0x85, 0x3a, 0x95, 0x3a, + 0x02, 0x15, 0x16, 0x25, 0x16, 0x35, 0x16, 0x03, 0x28, 0x2c, 0x00, 0x30, + 0x11, 0x0d, 0x06, 0x1e, 0x6f, 0x1d, 0x1d, 0x00, 0x34, 0x6e, 0x06, 0x2b, + 0x27, 0x30, 0x6e, 0x12, 0x0e, 0x0a, 0x0a, 0x00, 0x4f, 0x06, 0x5f, 0x06, + 0x6f, 0x06, 0x03, 0x06, 0x3a, 0x6f, 0x00, 0x00, 0x20, 0x00, 0x02, 0x00, + 0x00, 0x20, 0x00, 0x30, 0x00, 0x50, 0x00, 0x70, 0x00, 0x90, 0x00, 0xb0, + 0x00, 0xd0, 0x00, 0x08, 0x00, 0x00, 0x10, 0x00, 0x30, 0x00, 0xc0, 0x00, + 0xe0, 0x00, 0x05, 0x08, 0x00, 0xb8, 0xff, 0xc0, 0x40, 0x46, 0x0e, 0x12, + 0x48, 0x00, 0x2a, 0x10, 0x51, 0x11, 0x2e, 0x0c, 0x51, 0x2b, 0xaf, 0x0d, + 0x01, 0x0d, 0x40, 0x2a, 0x2d, 0x48, 0x00, 0x0d, 0x10, 0x0d, 0x20, 0x0d, + 0x03, 0x0d, 0x27, 0x6f, 0x11, 0x01, 0x2f, 0x11, 0x5f, 0x11, 0x6f, 0x11, + 0x8f, 0x11, 0x9f, 0x11, 0xdf, 0x11, 0xef, 0x11, 0x07, 0x11, 0x11, 0x34, + 0x23, 0x73, 0x29, 0x1e, 0x01, 0x1e, 0x18, 0x07, 0x07, 0x34, 0x74, 0x25, + 0x3a, 0x01, 0x17, 0x3a, 0x01, 0x3a, 0x06, 0x18, 0x00, 0x3f, 0x33, 0x5d, + 0x5d, 0xed, 0x32, 0x3f, 0x33, 0x5d, 0xed, 0x12, 0x39, 0x2f, 0x5d, 0x71, + 0x33, 0xde, 0x5d, 0x2b, 0x5d, 0x32, 0xed, 0x32, 0x10, 0xed, 0x32, 0x01, + 0x2f, 0x2b, 0x5e, 0x5d, 0x71, 0x72, 0xed, 0x2f, 0x5d, 0x12, 0x39, 0x2f, + 0x33, 0x33, 0xed, 0x32, 0x32, 0x10, 0xed, 0x11, 0x39, 0x2f, 0xed, 0x11, + 0x33, 0x33, 0x11, 0x12, 0x39, 0x39, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x01, + 0x0e, 0x03, 0x23, 0x21, 0x35, 0x3e, 0x01, 0x3d, 0x01, 0x23, 0x35, 0x33, + 0x35, 0x23, 0x35, 0x33, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, + 0x17, 0x07, 0x2e, 0x03, 0x23, 0x22, 0x06, 0x1d, 0x01, 0x21, 0x15, 0x21, + 0x15, 0x21, 0x15, 0x21, 0x15, 0x14, 0x0e, 0x02, 0x07, 0x21, 0x32, 0x3e, + 0x02, 0x37, 0x04, 0x50, 0x09, 0x39, 0x59, 0x73, 0x43, 0xfd, 0x46, 0x59, + 0x56, 0xba, 0xba, 0xba, 0xba, 0x30, 0x63, 0x98, 0x67, 0x46, 0x7b, 0x63, + 0x47, 0x12, 0xae, 0x0a, 0x27, 0x35, 0x41, 0x24, 0x72, 0x70, 0x01, 0x98, + 0xfe, 0x68, 0x01, 0x98, 0xfe, 0x68, 0x16, 0x2c, 0x3f, 0x28, 0x01, 0xe3, + 0x26, 0x43, 0x35, 0x25, 0x08, 0x01, 0x37, 0x50, 0x75, 0x4d, 0x25, 0x9a, + 0x2e, 0xa0, 0x79, 0x19, 0x81, 0x8c, 0x81, 0x82, 0x5c, 0x93, 0x66, 0x37, + 0x1d, 0x3a, 0x56, 0x39, 0x39, 0x1f, 0x34, 0x24, 0x14, 0x73, 0x7d, 0x8a, + 0x81, 0x8c, 0x81, 0x07, 0x38, 0x6a, 0x5c, 0x47, 0x15, 0x13, 0x2a, 0x43, + 0x30, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x9e, 0xff, 0xec, 0x08, 0x67, + 0x05, 0x81, 0x00, 0x0e, 0x00, 0x17, 0x00, 0x2f, 0x00, 0x62, 0x01, 0xc1, + 0x40, 0x47, 0x86, 0x02, 0x01, 0x75, 0x5b, 0x85, 0x5b, 0x02, 0x5b, 0x49, + 0x6b, 0x49, 0x8b, 0x49, 0x03, 0x8f, 0x44, 0x01, 0x6d, 0x44, 0x01, 0x5b, + 0x44, 0x01, 0x69, 0x52, 0x01, 0x69, 0x50, 0x01, 0x7d, 0x16, 0x01, 0x5b, + 0x16, 0x6b, 0x16, 0x02, 0x7d, 0x11, 0x8d, 0x11, 0x02, 0x5b, 0x11, 0x6b, + 0x11, 0x02, 0x54, 0x39, 0x64, 0x39, 0x02, 0x36, 0x39, 0x46, 0x39, 0x02, + 0x25, 0x61, 0x35, 0x61, 0x45, 0x61, 0x03, 0x4c, 0x20, 0x09, 0x0e, 0x48, + 0x31, 0xb8, 0xff, 0xe0, 0x40, 0x5e, 0x09, 0x0e, 0x48, 0x1d, 0x20, 0x0c, + 0x11, 0x48, 0x0d, 0x1d, 0x1d, 0x1d, 0x2d, 0x1d, 0x03, 0x52, 0x49, 0x51, + 0x51, 0x30, 0x48, 0x41, 0x00, 0x46, 0x0f, 0x18, 0x27, 0x4b, 0x25, 0x29, + 0x48, 0x1e, 0x22, 0x20, 0x1e, 0x39, 0x49, 0x0f, 0x38, 0x01, 0x66, 0x38, + 0x01, 0x38, 0x38, 0x59, 0x48, 0x4b, 0x5f, 0x0f, 0x01, 0x3f, 0x4b, 0x5f, + 0x4b, 0xef, 0x4b, 0x03, 0x4b, 0x40, 0x1b, 0x27, 0x48, 0xef, 0x1e, 0x01, + 0x1f, 0x1e, 0x5f, 0x1e, 0x7f, 0x1e, 0x03, 0x0f, 0x1e, 0x4b, 0x4b, 0x1e, + 0x0f, 0x03, 0x08, 0x40, 0x41, 0x50, 0x41, 0x60, 0x41, 0x03, 0x7f, 0x41, + 0x8f, 0x41, 0x02, 0x41, 0xb8, 0xff, 0xc0, 0x40, 0x10, 0x07, 0x0c, 0x48, + 0x41, 0x14, 0x07, 0x46, 0x00, 0x08, 0x10, 0x08, 0x20, 0x08, 0x03, 0x08, + 0x64, 0xb8, 0xff, 0xc0, 0xb3, 0x5b, 0x5f, 0x48, 0x64, 0xb8, 0xff, 0xc0, + 0xb3, 0x50, 0x58, 0x48, 0x64, 0xb8, 0xff, 0xc0, 0xb3, 0x46, 0x4a, 0x48, + 0x64, 0xb8, 0xff, 0xc0, 0xb3, 0x3b, 0x3e, 0x48, 0x64, 0xb8, 0xff, 0xc0, + 0xb3, 0x30, 0x35, 0x48, 0x64, 0xb8, 0xff, 0xc0, 0x40, 0x0b, 0x1b, 0x1f, + 0x48, 0x4f, 0x64, 0x5f, 0x64, 0x6f, 0x64, 0x03, 0x64, 0xb8, 0xff, 0xc0, + 0xb3, 0x07, 0x0a, 0x48, 0x59, 0xb8, 0xff, 0xf8, 0x40, 0x47, 0x13, 0x16, + 0x48, 0x41, 0x08, 0x13, 0x16, 0x48, 0x59, 0x41, 0x4e, 0x3c, 0x50, 0x39, + 0x33, 0x16, 0x2c, 0x50, 0x1b, 0x16, 0x06, 0x5f, 0x14, 0x57, 0x50, 0x79, + 0x52, 0x01, 0x48, 0x52, 0x58, 0x52, 0x68, 0x52, 0x03, 0x52, 0x4e, 0x28, + 0x20, 0x50, 0x21, 0x4e, 0x25, 0x21, 0x23, 0x23, 0x21, 0x7f, 0x21, 0x8f, + 0x21, 0x02, 0xaf, 0x14, 0x01, 0x14, 0x40, 0x09, 0x11, 0x48, 0x14, 0x21, + 0x14, 0x21, 0x08, 0x13, 0x5f, 0x09, 0x03, 0x08, 0x12, 0x00, 0x3f, 0x3f, + 0xed, 0x12, 0x39, 0x39, 0x2f, 0x2f, 0x2b, 0x5d, 0x5d, 0x11, 0x33, 0x2f, + 0x11, 0x33, 0x33, 0x10, 0xed, 0x32, 0x2f, 0x33, 0x5d, 0x5d, 0xed, 0x10, + 0xed, 0x3f, 0xed, 0x3f, 0x33, 0xed, 0x12, 0x39, 0x39, 0x2b, 0x2b, 0x01, + 0x2b, 0x5d, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2f, 0x5d, 0xed, 0x32, + 0x2f, 0x2b, 0x5d, 0x71, 0x12, 0x17, 0x39, 0x2f, 0x2f, 0x2f, 0x5d, 0x71, + 0x2b, 0x5d, 0x5d, 0x10, 0xed, 0x33, 0x2f, 0x5d, 0x71, 0xed, 0x11, 0x33, + 0x33, 0x10, 0xed, 0x32, 0x11, 0x39, 0x39, 0x10, 0xed, 0x10, 0xed, 0x32, + 0x2f, 0xed, 0x31, 0x30, 0x5d, 0x2b, 0x2b, 0x2b, 0x5d, 0x00, 0x5d, 0x5d, + 0x01, 0x5d, 0x5d, 0x5d, 0x5d, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x5d, 0x00, 0x5d, 0x01, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x2b, 0x01, 0x11, + 0x23, 0x11, 0x21, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x26, 0x2b, 0x01, 0x11, + 0x33, 0x32, 0x36, 0x01, 0x0e, 0x01, 0x23, 0x22, 0x26, 0x35, 0x11, 0x23, + 0x35, 0x33, 0x37, 0x33, 0x15, 0x33, 0x15, 0x23, 0x11, 0x14, 0x16, 0x33, + 0x32, 0x36, 0x37, 0x25, 0x14, 0x06, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x37, + 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x27, 0x2e, + 0x03, 0x35, 0x34, 0x36, 0x33, 0x32, 0x16, 0x17, 0x07, 0x2e, 0x03, 0x23, + 0x22, 0x15, 0x14, 0x1e, 0x02, 0x17, 0x1e, 0x03, 0x03, 0xba, 0x3d, 0x79, + 0xb6, 0x79, 0x82, 0xb5, 0x01, 0x2b, 0x7d, 0xba, 0x7c, 0x3e, 0xb6, 0xa4, + 0xa4, 0x69, 0x71, 0xa5, 0x9b, 0x02, 0x7b, 0x23, 0x4a, 0x30, 0x69, 0x5d, + 0x68, 0x6f, 0x35, 0x6e, 0x9d, 0x9d, 0x29, 0x37, 0x17, 0x28, 0x1a, 0x02, + 0xe8, 0xb7, 0xaa, 0x4b, 0x79, 0x5c, 0x3d, 0x0f, 0x9f, 0x11, 0x63, 0x58, + 0x28, 0x44, 0x31, 0x1b, 0x22, 0x3e, 0x57, 0x34, 0x31, 0x60, 0x4d, 0x2f, + 0xa8, 0xa1, 0x8d, 0xa5, 0x16, 0xa1, 0x06, 0x1f, 0x2d, 0x36, 0x1e, 0x9b, + 0x20, 0x39, 0x50, 0x30, 0x30, 0x64, 0x52, 0x34, 0x03, 0xd9, 0x5c, 0x9f, + 0x75, 0x44, 0xfd, 0xdb, 0x05, 0x81, 0x3d, 0x6f, 0x9d, 0x61, 0x86, 0x8b, + 0xfd, 0xd4, 0x92, 0xfc, 0xba, 0x0b, 0x0d, 0x7b, 0x7a, 0x01, 0xc5, 0x83, + 0xf2, 0xf2, 0x83, 0xfe, 0x62, 0x4e, 0x49, 0x08, 0x06, 0x62, 0x78, 0x81, + 0x18, 0x36, 0x58, 0x40, 0x1a, 0x3d, 0x3a, 0x0a, 0x19, 0x28, 0x1e, 0x1e, + 0x29, 0x1d, 0x17, 0x0d, 0x0c, 0x20, 0x35, 0x4f, 0x3b, 0x70, 0x77, 0x69, + 0x74, 0x11, 0x1c, 0x26, 0x18, 0x0a, 0x55, 0x19, 0x24, 0x1c, 0x16, 0x0b, + 0x0b, 0x1f, 0x36, 0x57, 0x00, 0x01, 0x00, 0x10, 0xff, 0xec, 0x04, 0x56, + 0x05, 0x96, 0x00, 0x3d, 0x00, 0xe8, 0xb9, 0x00, 0x02, 0xff, 0xeb, 0x40, + 0x44, 0x0f, 0x49, 0x6a, 0x26, 0x01, 0x3a, 0x2b, 0x4a, 0x2b, 0x7a, 0x2b, + 0x8a, 0x2b, 0x04, 0x24, 0x3b, 0x34, 0x3b, 0x44, 0x3b, 0x74, 0x3b, 0x84, + 0x3b, 0x05, 0x2e, 0x37, 0x37, 0x04, 0x39, 0x2d, 0x33, 0x6e, 0x14, 0x18, + 0x0f, 0x0e, 0x1a, 0x0f, 0x03, 0x14, 0x25, 0x6e, 0x24, 0x24, 0x03, 0x6e, + 0x40, 0x04, 0x60, 0x04, 0x80, 0x04, 0xa0, 0x04, 0xb0, 0x04, 0x05, 0x00, + 0x04, 0x90, 0x04, 0xb0, 0x04, 0xd0, 0x04, 0x04, 0x04, 0xb8, 0xff, 0xc0, + 0x40, 0x5e, 0x18, 0x1b, 0x48, 0x04, 0x30, 0x18, 0x51, 0x19, 0x39, 0x0f, + 0x51, 0x36, 0x0f, 0x10, 0x1f, 0x10, 0x7f, 0x10, 0x8f, 0x10, 0x9f, 0x10, + 0x05, 0x10, 0x40, 0x27, 0x2f, 0x48, 0x00, 0x10, 0x10, 0x10, 0x80, 0x10, + 0x03, 0x10, 0x2d, 0x2f, 0x19, 0x3f, 0x19, 0x7f, 0x19, 0x03, 0x2f, 0x19, + 0x3f, 0x19, 0xaf, 0x19, 0xcf, 0x19, 0x04, 0x2f, 0x19, 0xaf, 0x19, 0x02, + 0x19, 0x19, 0x00, 0x28, 0x73, 0xd8, 0x25, 0x01, 0x7c, 0x25, 0x8c, 0x25, + 0x02, 0x1a, 0x25, 0x2a, 0x25, 0x02, 0x25, 0x1f, 0x07, 0x00, 0x73, 0x73, + 0x03, 0x83, 0x03, 0x02, 0x15, 0x03, 0x25, 0x03, 0x02, 0x03, 0x09, 0x19, + 0x00, 0x3f, 0x33, 0x5d, 0x5d, 0xed, 0x3f, 0x33, 0x5d, 0x5d, 0x5d, 0xed, + 0x12, 0x39, 0x2f, 0x5d, 0x71, 0x72, 0x33, 0xdc, 0x5d, 0x2b, 0x71, 0x32, + 0xed, 0x32, 0x10, 0xed, 0x32, 0x01, 0x2f, 0x2b, 0x5d, 0x71, 0xed, 0x33, + 0x2f, 0xed, 0x2f, 0x17, 0x33, 0x2f, 0xc4, 0x10, 0xed, 0x32, 0x32, 0x11, + 0x39, 0x2f, 0xc4, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x2b, 0x25, 0x32, + 0x36, 0x37, 0x17, 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x23, 0x37, + 0x33, 0x2e, 0x01, 0x35, 0x34, 0x36, 0x37, 0x23, 0x37, 0x33, 0x3e, 0x03, + 0x33, 0x32, 0x1e, 0x02, 0x17, 0x07, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, + 0x07, 0x21, 0x07, 0x21, 0x0e, 0x01, 0x15, 0x14, 0x16, 0x17, 0x21, 0x07, + 0x21, 0x1e, 0x03, 0x02, 0xb3, 0x64, 0x78, 0x0e, 0xb9, 0x0d, 0x3f, 0x67, + 0x93, 0x61, 0x78, 0xb1, 0x79, 0x45, 0x0d, 0xab, 0x28, 0x78, 0x01, 0x02, + 0x02, 0x01, 0xa0, 0x28, 0x81, 0x0f, 0x49, 0x7b, 0xad, 0x73, 0x61, 0x93, + 0x67, 0x3f, 0x0d, 0xb9, 0x0e, 0x79, 0x6a, 0x44, 0x6a, 0x4f, 0x32, 0x0b, + 0x01, 0xbe, 0x28, 0xfe, 0x63, 0x02, 0x01, 0x02, 0x02, 0x01, 0xc4, 0x28, + 0xfe, 0x6c, 0x09, 0x2a, 0x4d, 0x72, 0x7e, 0x64, 0x5b, 0x0e, 0x44, 0x76, + 0x57, 0x32, 0x4d, 0x8b, 0xc0, 0x72, 0x81, 0x08, 0x2e, 0x18, 0x1b, 0x35, + 0x06, 0x7f, 0x7a, 0xbd, 0x82, 0x43, 0x32, 0x57, 0x76, 0x44, 0x0e, 0x5b, + 0x64, 0x27, 0x57, 0x89, 0x63, 0x7f, 0x10, 0x2f, 0x17, 0x16, 0x25, 0x13, + 0x81, 0x51, 0x8a, 0x64, 0x39, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x45, + 0xff, 0xf4, 0x06, 0xd0, 0x05, 0x8c, 0x00, 0x13, 0x00, 0x17, 0x00, 0x2b, + 0x00, 0x4f, 0x00, 0xc0, 0x40, 0x0e, 0x76, 0x14, 0x86, 0x14, 0x02, 0x79, + 0x16, 0x89, 0x16, 0x02, 0x85, 0x2f, 0x01, 0x42, 0xb8, 0xff, 0xe8, 0x40, + 0x09, 0x08, 0x0b, 0x48, 0x3c, 0x18, 0x08, 0x0b, 0x48, 0x11, 0xb8, 0xff, + 0xe8, 0xb3, 0x08, 0x0b, 0x48, 0x0d, 0xb8, 0xff, 0xe8, 0x40, 0x1d, 0x08, + 0x0b, 0x48, 0x07, 0x18, 0x08, 0x0b, 0x48, 0x03, 0x18, 0x08, 0x0b, 0x48, + 0x16, 0x17, 0x14, 0x15, 0x4a, 0xb4, 0x49, 0x49, 0x34, 0xb4, 0x35, 0xb2, + 0x3f, 0x17, 0x10, 0x15, 0xb8, 0xff, 0xf0, 0x40, 0x3e, 0x15, 0x17, 0x15, + 0x17, 0x00, 0x2c, 0xb4, 0x3f, 0x40, 0x0a, 0x0e, 0x48, 0x3f, 0x22, 0xb4, + 0x0a, 0xb2, 0x00, 0xb4, 0x00, 0x18, 0x10, 0x18, 0x20, 0x18, 0x50, 0x18, + 0x60, 0x18, 0xd0, 0x18, 0xe0, 0x18, 0xf0, 0x18, 0x08, 0x18, 0x26, 0x34, + 0x01, 0x34, 0x31, 0xb6, 0x3a, 0xb8, 0x4d, 0xb6, 0x4a, 0x44, 0x04, 0x17, + 0x03, 0x14, 0x12, 0x1d, 0xb6, 0x0f, 0xb8, 0x27, 0xb6, 0x05, 0x13, 0x00, + 0x3f, 0xed, 0xf4, 0xed, 0x3f, 0x3f, 0x3f, 0x33, 0xed, 0xf4, 0xed, 0x33, + 0x5d, 0x01, 0x2f, 0x5d, 0xfd, 0xf4, 0xed, 0x2f, 0x2b, 0xed, 0x12, 0x39, + 0x39, 0x2f, 0x2f, 0x38, 0x38, 0x10, 0xf4, 0xed, 0x33, 0x2f, 0xed, 0x11, + 0x33, 0x11, 0x33, 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, + 0x01, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, + 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x01, 0x23, 0x01, 0x33, + 0x13, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, + 0x33, 0x32, 0x3e, 0x02, 0x01, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, 0x37, + 0x17, 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, + 0x32, 0x1e, 0x02, 0x17, 0x07, 0x2e, 0x01, 0x23, 0x22, 0x06, 0x06, 0xd0, + 0x33, 0x57, 0x74, 0x42, 0x42, 0x73, 0x55, 0x31, 0x30, 0x56, 0x75, 0x44, + 0x42, 0x73, 0x55, 0x32, 0xfb, 0x3b, 0x9b, 0x03, 0x9a, 0x9d, 0x95, 0x16, + 0x2b, 0x3f, 0x28, 0x2a, 0x40, 0x2c, 0x16, 0x17, 0x2b, 0x3f, 0x29, 0x27, + 0x3f, 0x2c, 0x18, 0xfa, 0x9b, 0x14, 0x2f, 0x4b, 0x36, 0x45, 0x5e, 0x0b, + 0x8d, 0x06, 0x2d, 0x4d, 0x6f, 0x48, 0x5e, 0x84, 0x52, 0x26, 0x3b, 0x61, + 0x7c, 0x41, 0x44, 0x6a, 0x4c, 0x30, 0x09, 0x8f, 0x0a, 0x53, 0x4b, 0x6c, + 0x57, 0x01, 0xb2, 0x7d, 0xab, 0x69, 0x2d, 0x2d, 0x68, 0xab, 0x7e, 0x85, + 0xae, 0x67, 0x29, 0x29, 0x67, 0xae, 0xfd, 0xc9, 0x05, 0x81, 0xfc, 0x31, + 0x63, 0x83, 0x4e, 0x20, 0x21, 0x4e, 0x83, 0x62, 0x5f, 0x80, 0x4f, 0x22, + 0x22, 0x4f, 0x80, 0x02, 0x7c, 0x4b, 0x7c, 0x5a, 0x32, 0x52, 0x57, 0x09, + 0x36, 0x63, 0x4c, 0x2d, 0x45, 0x79, 0xa4, 0x60, 0x82, 0xad, 0x67, 0x2a, + 0x28, 0x46, 0x5e, 0x37, 0x0b, 0x48, 0x55, 0xa4, 0x00, 0x02, 0x00, 0x13, + 0xff, 0xec, 0x02, 0x7e, 0x05, 0x95, 0x00, 0x27, 0x00, 0x37, 0x00, 0xb9, + 0x40, 0x09, 0x8a, 0x20, 0x01, 0x35, 0x28, 0x0e, 0x11, 0x48, 0x1a, 0xb8, + 0xff, 0xe8, 0xb3, 0x08, 0x10, 0x48, 0x16, 0xb8, 0xff, 0xe8, 0x40, 0x43, + 0x08, 0x10, 0x48, 0x08, 0x20, 0x08, 0x10, 0x48, 0x06, 0x20, 0x0b, 0x10, + 0x48, 0x05, 0x1b, 0x15, 0x1b, 0x02, 0x05, 0x15, 0x15, 0x15, 0x02, 0x03, + 0x04, 0x04, 0x1d, 0x10, 0x28, 0x20, 0x28, 0x02, 0x60, 0x28, 0x70, 0x28, + 0x80, 0x28, 0xc0, 0x28, 0x04, 0x0f, 0x28, 0x01, 0x28, 0x28, 0x04, 0x33, + 0x14, 0x33, 0x02, 0x08, 0x33, 0x9f, 0x23, 0x01, 0x23, 0x12, 0x0e, 0xc0, + 0x0a, 0xd0, 0x0a, 0xe0, 0x0a, 0x03, 0x0a, 0xb8, 0xff, 0xc0, 0xb3, 0x22, + 0x26, 0x48, 0x0a, 0xb8, 0xff, 0xc0, 0x40, 0x1a, 0x07, 0x0b, 0x48, 0x0a, + 0x4f, 0x39, 0x01, 0x12, 0x33, 0x2d, 0x0f, 0x0b, 0x22, 0x18, 0x0e, 0x0e, + 0x07, 0x2d, 0x18, 0x03, 0x03, 0x07, 0x18, 0x07, 0x00, 0x07, 0x00, 0x2f, + 0xcd, 0x3f, 0x12, 0x39, 0x2f, 0x10, 0xcd, 0x11, 0x39, 0x2f, 0x12, 0x39, + 0x39, 0xcd, 0x11, 0x39, 0x39, 0x01, 0x5d, 0x2f, 0x2b, 0x2b, 0x5d, 0xc6, + 0x33, 0xcd, 0x5d, 0x32, 0x00, 0x5e, 0x5d, 0x01, 0x33, 0x2f, 0x5d, 0x5d, + 0x71, 0xcd, 0x32, 0x2f, 0x33, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x2b, 0x2b, + 0x2b, 0x2b, 0x01, 0x2b, 0x5d, 0x25, 0x32, 0x36, 0x37, 0x33, 0x0e, 0x01, + 0x23, 0x22, 0x26, 0x3d, 0x01, 0x0e, 0x01, 0x07, 0x35, 0x3e, 0x01, 0x37, + 0x11, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, + 0x07, 0x15, 0x14, 0x1e, 0x02, 0x13, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, + 0x02, 0x15, 0x11, 0x3e, 0x03, 0x01, 0xb1, 0x33, 0x44, 0x11, 0x45, 0x14, + 0x78, 0x6d, 0x6f, 0x7f, 0x20, 0x42, 0x22, 0x23, 0x42, 0x1f, 0x19, 0x3b, + 0x62, 0x48, 0x34, 0x4f, 0x35, 0x1b, 0x2c, 0x4f, 0x6e, 0x42, 0x13, 0x20, + 0x2a, 0x73, 0x0e, 0x1b, 0x28, 0x1a, 0x20, 0x27, 0x16, 0x08, 0x31, 0x4d, + 0x36, 0x1c, 0x4e, 0x68, 0x6d, 0x9a, 0x9d, 0x9f, 0x9b, 0xaf, 0x11, 0x1c, + 0x0d, 0x49, 0x0e, 0x1d, 0x10, 0x02, 0x4b, 0x3b, 0x6c, 0x53, 0x31, 0x2a, + 0x4e, 0x6f, 0x45, 0x63, 0xb4, 0x98, 0x76, 0x26, 0xf4, 0x39, 0x53, 0x36, + 0x1a, 0x04, 0x14, 0x34, 0x55, 0x3d, 0x21, 0x24, 0x3d, 0x51, 0x2e, 0xfe, + 0x05, 0x21, 0x68, 0x83, 0x97, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0xbc, + 0x00, 0x00, 0x08, 0x2e, 0x05, 0x81, 0x00, 0x13, 0x00, 0x23, 0x00, 0x37, + 0x00, 0x3b, 0x00, 0xf4, 0x40, 0x7c, 0x8d, 0x00, 0x01, 0x00, 0x18, 0x0d, + 0x10, 0x48, 0x3d, 0x00, 0x01, 0x19, 0x00, 0x01, 0x84, 0x0a, 0x01, 0x72, + 0x0a, 0x01, 0x45, 0x0a, 0x55, 0x0a, 0x65, 0x0a, 0x03, 0x16, 0x0a, 0x26, + 0x0a, 0x02, 0x05, 0x21, 0x15, 0x21, 0x25, 0x21, 0x03, 0x04, 0x1d, 0x14, + 0x1d, 0x02, 0x0b, 0x18, 0x1b, 0x18, 0x02, 0x0b, 0x16, 0x1b, 0x16, 0x02, + 0x2f, 0x3d, 0x01, 0x3a, 0x14, 0x49, 0x24, 0x13, 0x49, 0x10, 0x00, 0x10, + 0x39, 0x2e, 0x49, 0x1a, 0x90, 0x10, 0xa0, 0x10, 0xc0, 0x10, 0x03, 0x1f, + 0x1a, 0x01, 0x10, 0x1a, 0x10, 0x1a, 0x08, 0x90, 0x24, 0xa0, 0x24, 0xb0, + 0x24, 0x03, 0x2f, 0x24, 0x01, 0x00, 0x24, 0x01, 0x24, 0x0a, 0x01, 0x07, + 0x49, 0x30, 0x08, 0x40, 0x08, 0x50, 0x08, 0x03, 0x00, 0x08, 0x10, 0x08, + 0x20, 0x08, 0x90, 0x08, 0x04, 0x08, 0x29, 0x1f, 0x0f, 0x01, 0xb8, 0xff, + 0xc0, 0xb3, 0x1d, 0x24, 0x48, 0x01, 0xb8, 0xff, 0xc0, 0x40, 0x0f, 0x12, + 0x15, 0x48, 0x01, 0x11, 0x09, 0x03, 0x33, 0x17, 0xc0, 0x39, 0xd0, 0x39, + 0x02, 0x39, 0xb8, 0xff, 0xc0, 0x40, 0x15, 0x23, 0x2c, 0x48, 0x39, 0x38, + 0x0b, 0x40, 0x1d, 0x24, 0x48, 0x0b, 0x40, 0x12, 0x15, 0x48, 0x00, 0x0b, + 0x38, 0x03, 0x08, 0x12, 0x00, 0x3f, 0x17, 0x33, 0x2b, 0x2b, 0x2f, 0xdd, + 0x2b, 0x5d, 0xde, 0xcd, 0x3f, 0x33, 0x33, 0x2b, 0x2b, 0x3f, 0xcd, 0x01, + 0x2f, 0x5d, 0x71, 0xed, 0x32, 0x32, 0x2f, 0x5d, 0x5d, 0x5d, 0x12, 0x39, + 0x39, 0x2f, 0x2f, 0x5d, 0x5d, 0x10, 0xed, 0x33, 0x11, 0x33, 0x10, 0xed, + 0x10, 0xed, 0x32, 0x5d, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x21, 0x01, 0x16, 0x17, + 0x1e, 0x01, 0x15, 0x11, 0x23, 0x11, 0x33, 0x01, 0x26, 0x27, 0x2e, 0x01, + 0x35, 0x11, 0x33, 0x11, 0x01, 0x14, 0x06, 0x23, 0x22, 0x26, 0x35, 0x34, + 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x07, 0x34, 0x2e, 0x02, 0x23, 0x22, + 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x01, 0x35, + 0x21, 0x15, 0x04, 0x26, 0xfd, 0x30, 0x01, 0x02, 0x01, 0x02, 0xa0, 0xca, + 0x02, 0xd8, 0x02, 0x02, 0x02, 0x02, 0xa2, 0x03, 0x36, 0xb0, 0xaf, 0xa8, + 0xb1, 0x2b, 0x57, 0x83, 0x58, 0x5d, 0x83, 0x54, 0x27, 0x9f, 0x18, 0x2f, + 0x45, 0x2d, 0x2e, 0x47, 0x30, 0x19, 0x1a, 0x30, 0x43, 0x29, 0x2e, 0x48, + 0x32, 0x19, 0xfe, 0x10, 0x02, 0x7b, 0x04, 0xa6, 0x2c, 0x2c, 0x26, 0x59, + 0x27, 0xfc, 0x58, 0x05, 0x81, 0xfb, 0x52, 0x28, 0x2e, 0x27, 0x62, 0x33, + 0x03, 0x9c, 0xfa, 0x7f, 0x02, 0xb2, 0xbc, 0xcb, 0xc9, 0xbe, 0x5b, 0x91, + 0x65, 0x35, 0x35, 0x64, 0x91, 0x5c, 0x51, 0x6b, 0x40, 0x1a, 0x1b, 0x40, + 0x6b, 0x50, 0x52, 0x6c, 0x3f, 0x1a, 0x1a, 0x3f, 0x6c, 0xfd, 0xa0, 0x92, + 0x92, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0xbc, 0x02, 0x7a, 0x07, 0x19, + 0x05, 0x81, 0x00, 0x27, 0x00, 0x2f, 0x00, 0x94, 0x40, 0x09, 0x09, 0x18, + 0x13, 0x17, 0x48, 0x88, 0x09, 0x01, 0x08, 0xb8, 0xff, 0xe8, 0x40, 0x10, + 0x13, 0x17, 0x48, 0x59, 0x08, 0x69, 0x08, 0x79, 0x08, 0x03, 0x25, 0x18, + 0x0d, 0x11, 0x48, 0x18, 0xb8, 0xff, 0xf0, 0x40, 0x49, 0x0c, 0x11, 0x48, + 0x2c, 0x29, 0xc4, 0x2a, 0x18, 0x15, 0xc4, 0x40, 0x16, 0xe0, 0x16, 0x02, + 0x16, 0x16, 0x00, 0x40, 0x2f, 0x01, 0x2f, 0x00, 0x2a, 0x10, 0x2a, 0x40, + 0x2a, 0x50, 0x2a, 0x04, 0x2a, 0x27, 0xc4, 0x25, 0x6f, 0x00, 0xaf, 0x00, + 0xcf, 0x00, 0xdf, 0x00, 0xef, 0x00, 0x05, 0x00, 0x28, 0x2c, 0xca, 0x00, + 0x09, 0x16, 0x1d, 0x04, 0x00, 0x2a, 0x20, 0x2a, 0x50, 0x2a, 0x80, 0x2a, + 0x04, 0x2a, 0x02, 0x0f, 0x17, 0x25, 0x0f, 0x03, 0x2d, 0x03, 0x00, 0x3f, + 0x17, 0x33, 0x11, 0x33, 0xcc, 0x5d, 0x17, 0x32, 0xed, 0x32, 0x01, 0x2f, + 0x5d, 0x33, 0xed, 0x2f, 0x5d, 0xcc, 0x5d, 0x12, 0x39, 0x2f, 0x5d, 0xed, + 0x32, 0x10, 0xfd, 0xcc, 0x31, 0x30, 0x2b, 0x2b, 0x5d, 0x2b, 0x5d, 0x2b, + 0x01, 0x11, 0x35, 0x06, 0x07, 0x0e, 0x01, 0x07, 0x03, 0x23, 0x03, 0x2e, + 0x01, 0x27, 0x26, 0x27, 0x06, 0x15, 0x06, 0x14, 0x15, 0x11, 0x23, 0x11, + 0x33, 0x13, 0x1e, 0x01, 0x1f, 0x01, 0x36, 0x37, 0x3e, 0x03, 0x35, 0x13, + 0x33, 0x11, 0x01, 0x11, 0x23, 0x11, 0x23, 0x35, 0x21, 0x15, 0x06, 0x9b, + 0x05, 0x04, 0x04, 0x05, 0x02, 0xe6, 0x6c, 0xa3, 0x02, 0x18, 0x0e, 0x11, + 0x14, 0x01, 0x01, 0x80, 0xbe, 0xdf, 0x02, 0x05, 0x02, 0x06, 0x14, 0x10, + 0x07, 0x0d, 0x0b, 0x07, 0xa8, 0xb8, 0xfb, 0x28, 0x86, 0xff, 0x02, 0x8a, + 0x02, 0x7a, 0x01, 0xa9, 0xc2, 0x0b, 0x0b, 0x09, 0x12, 0x05, 0xfd, 0xcb, + 0x01, 0x9d, 0x05, 0x40, 0x26, 0x2c, 0x37, 0x0a, 0x0a, 0x08, 0x12, 0x06, + 0xfd, 0xc9, 0x03, 0x07, 0xfd, 0xcd, 0x04, 0x0d, 0x07, 0x12, 0x33, 0x29, + 0x12, 0x22, 0x1c, 0x12, 0x02, 0x01, 0x9d, 0xfc, 0xf9, 0x02, 0x98, 0xfd, + 0x68, 0x02, 0x98, 0x6f, 0x6f, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x6c, + 0x00, 0x00, 0x05, 0xb8, 0x05, 0x96, 0x00, 0x39, 0x00, 0xdd, 0x40, 0x5f, + 0x65, 0x24, 0x01, 0x65, 0x16, 0x01, 0x9d, 0x31, 0x01, 0x8f, 0x31, 0x01, + 0x31, 0x10, 0x0b, 0x0f, 0x48, 0x9d, 0x09, 0x01, 0x8f, 0x09, 0x01, 0x09, + 0x10, 0x0b, 0x0f, 0x48, 0x74, 0x03, 0x84, 0x03, 0x02, 0x36, 0x03, 0x01, + 0x36, 0x02, 0x76, 0x02, 0x02, 0x36, 0x38, 0x76, 0x38, 0x02, 0x74, 0x37, + 0x84, 0x37, 0x02, 0x36, 0x37, 0x01, 0x2a, 0x1a, 0x01, 0x2a, 0x20, 0x01, + 0x29, 0x35, 0x30, 0x28, 0x0a, 0x12, 0x20, 0x28, 0x60, 0x28, 0x70, 0x28, + 0x90, 0x28, 0x04, 0x2f, 0x12, 0x6f, 0x12, 0x7f, 0x12, 0x9f, 0x12, 0x04, + 0x28, 0x12, 0x28, 0x12, 0x18, 0x22, 0x5b, 0x10, 0x35, 0x01, 0x35, 0xb8, + 0xff, 0xc0, 0x40, 0x41, 0x17, 0x1d, 0x48, 0xbf, 0x35, 0xcf, 0x35, 0x02, + 0x00, 0x35, 0x30, 0x35, 0x02, 0x35, 0x11, 0x05, 0x5b, 0x1f, 0x18, 0x3f, + 0x18, 0x4f, 0x18, 0x8f, 0x18, 0xbf, 0x18, 0xcf, 0x18, 0xdf, 0x18, 0x07, + 0x6f, 0x18, 0x7f, 0x18, 0x9f, 0x18, 0xef, 0x18, 0xff, 0x18, 0x05, 0x00, + 0x18, 0x30, 0x18, 0x02, 0x08, 0x18, 0x0a, 0x0f, 0x13, 0x27, 0x30, 0x05, + 0x2a, 0x5f, 0x12, 0x29, 0x12, 0x1d, 0x5f, 0x00, 0x04, 0x00, 0x3f, 0xed, + 0x3f, 0x33, 0xed, 0x17, 0x32, 0x01, 0x2f, 0x5e, 0x5d, 0x5d, 0x71, 0xfd, + 0xc4, 0x2f, 0x5d, 0x5d, 0x2b, 0x72, 0xed, 0x11, 0x39, 0x39, 0x2f, 0x2f, + 0x5d, 0x5d, 0x11, 0x33, 0x11, 0x33, 0x10, 0xc4, 0x31, 0x30, 0x00, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x2b, 0x5d, + 0x5d, 0x5d, 0x5d, 0x01, 0x32, 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x07, + 0x36, 0x37, 0x3e, 0x01, 0x3b, 0x01, 0x15, 0x21, 0x35, 0x3e, 0x03, 0x35, + 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x17, + 0x15, 0x21, 0x35, 0x33, 0x32, 0x16, 0x17, 0x16, 0x17, 0x2e, 0x03, 0x35, + 0x34, 0x3e, 0x02, 0x03, 0x12, 0x97, 0xf1, 0xa8, 0x5a, 0x3b, 0x6d, 0x9d, + 0x63, 0x2a, 0x27, 0x21, 0x47, 0x17, 0xf4, 0xfd, 0xb3, 0x60, 0x8b, 0x59, + 0x2a, 0x3d, 0x74, 0xa9, 0x6c, 0x6d, 0xaa, 0x74, 0x3d, 0x2a, 0x59, 0x8b, + 0x60, 0xfd, 0xb3, 0xf4, 0x17, 0x47, 0x21, 0x27, 0x2a, 0x63, 0x9d, 0x6d, + 0x3b, 0x5a, 0xa8, 0xf1, 0x05, 0x96, 0x56, 0xa2, 0xea, 0x93, 0x6a, 0xbf, + 0xa7, 0x8a, 0x36, 0x02, 0x03, 0x02, 0x04, 0x9c, 0xe0, 0x33, 0x7e, 0x8f, + 0x9f, 0x55, 0x74, 0xb5, 0x7c, 0x41, 0x41, 0x7c, 0xb5, 0x74, 0x55, 0x9f, + 0x8f, 0x7e, 0x33, 0xe0, 0x9c, 0x04, 0x02, 0x03, 0x02, 0x36, 0x8a, 0xa7, + 0xbf, 0x6a, 0x93, 0xea, 0xa2, 0x56, 0x00, 0x00, 0x00, 0x02, 0x00, 0x58, + 0xff, 0xde, 0x04, 0x7c, 0x04, 0x48, 0x00, 0x20, 0x00, 0x2d, 0x00, 0x52, + 0x40, 0x32, 0x5a, 0x0d, 0x01, 0x1c, 0x0f, 0x40, 0xa0, 0x21, 0xb0, 0x21, + 0x02, 0x5f, 0x21, 0x01, 0x50, 0x21, 0x60, 0x21, 0x70, 0x21, 0x03, 0x21, + 0x2f, 0x80, 0x20, 0x2f, 0x01, 0x2d, 0xd0, 0x11, 0x01, 0x11, 0x05, 0x10, + 0x2d, 0x2d, 0x16, 0x27, 0x0a, 0x10, 0x16, 0x15, 0x1b, 0x01, 0x06, 0x1b, + 0x01, 0x1b, 0x00, 0x16, 0x00, 0x3f, 0x32, 0x5d, 0x5d, 0xcd, 0x3f, 0xcd, + 0x12, 0x39, 0x2f, 0xcd, 0x01, 0x2f, 0xcd, 0x5d, 0x32, 0x5d, 0x1a, 0x10, + 0xdc, 0x5d, 0x71, 0x71, 0x1a, 0xcd, 0x32, 0x31, 0x30, 0x5d, 0x05, 0x22, + 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x21, + 0x11, 0x1e, 0x03, 0x33, 0x32, 0x3e, 0x02, 0x37, 0x17, 0x0e, 0x03, 0x13, + 0x11, 0x2e, 0x03, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x11, 0x02, 0x6b, 0x82, + 0xc6, 0x86, 0x45, 0x5f, 0x98, 0xbd, 0x5f, 0x70, 0xc2, 0x8e, 0x51, 0xfc, + 0xc5, 0x16, 0x40, 0x4e, 0x58, 0x2e, 0x4b, 0x74, 0x5d, 0x4c, 0x23, 0x48, + 0x24, 0x54, 0x6d, 0x8f, 0xcb, 0x13, 0x3b, 0x4d, 0x5c, 0x35, 0x33, 0x57, + 0x4a, 0x3c, 0x18, 0x22, 0x5d, 0x9d, 0xcc, 0x6f, 0x93, 0xd5, 0x8b, 0x42, + 0x4f, 0x92, 0xd2, 0x82, 0xfe, 0x9c, 0x18, 0x2d, 0x23, 0x14, 0x1f, 0x3c, + 0x57, 0x38, 0x2a, 0x39, 0x64, 0x4c, 0x2c, 0x02, 0x8a, 0x01, 0x15, 0x14, + 0x2a, 0x22, 0x16, 0x13, 0x20, 0x2a, 0x18, 0xfe, 0xea, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x50, 0xff, 0xf6, 0x06, 0x4e, 0x05, 0x81, 0x10, 0x26, + 0x00, 0x79, 0x00, 0x00, 0x10, 0x27, 0x02, 0x20, 0x02, 0xf9, 0x00, 0x00, + 0x11, 0x07, 0x02, 0x9d, 0x03, 0xcc, 0xfd, 0xce, 0x00, 0x3f, 0x40, 0x28, + 0x04, 0x03, 0x02, 0x6f, 0x0f, 0x01, 0x2f, 0x0f, 0x01, 0x0f, 0x01, 0xbf, + 0x0c, 0x01, 0x80, 0x0c, 0x01, 0x70, 0x0c, 0x01, 0x60, 0x0c, 0x01, 0x40, + 0x0c, 0x01, 0x10, 0x0c, 0x01, 0x0c, 0x62, 0x40, 0x0b, 0x0b, 0x48, 0x04, + 0x03, 0x02, 0x3c, 0x18, 0x00, 0x3f, 0x35, 0x35, 0x35, 0x01, 0x2b, 0x11, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x35, 0x11, 0x5d, 0x5d, 0x35, 0x35, + 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x3d, 0xff, 0xf6, 0x06, 0x4e, + 0x05, 0x8d, 0x10, 0x27, 0x02, 0x20, 0x02, 0xf9, 0x00, 0x00, 0x10, 0x27, + 0x02, 0x9d, 0x03, 0xcc, 0xfd, 0xce, 0x11, 0x06, 0x00, 0x73, 0x22, 0x00, + 0x00, 0x3f, 0x40, 0x28, 0x01, 0x03, 0x02, 0x6f, 0x31, 0x01, 0x2f, 0x31, + 0x01, 0x31, 0x00, 0xbf, 0x01, 0x01, 0x80, 0x01, 0x01, 0x70, 0x01, 0x01, + 0x60, 0x01, 0x01, 0x40, 0x01, 0x01, 0x10, 0x01, 0x01, 0x01, 0x8d, 0x40, + 0x0b, 0x0b, 0x48, 0x01, 0x03, 0x02, 0x31, 0x18, 0x00, 0x3f, 0x35, 0x35, + 0x35, 0x01, 0x2b, 0x11, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x35, 0x11, + 0x5d, 0x5d, 0x35, 0x35, 0x35, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x5d, + 0xff, 0xf6, 0x06, 0x4e, 0x05, 0x81, 0x10, 0x27, 0x02, 0x20, 0x02, 0xf9, + 0x00, 0x00, 0x10, 0x27, 0x02, 0x9d, 0x03, 0xcc, 0xfd, 0xce, 0x11, 0x06, + 0x02, 0x9b, 0x28, 0x00, 0x00, 0x3f, 0x40, 0x28, 0x01, 0x03, 0x02, 0x6f, + 0x31, 0x01, 0x2f, 0x31, 0x01, 0x31, 0x00, 0xbf, 0x01, 0x01, 0x80, 0x01, + 0x01, 0x70, 0x01, 0x01, 0x60, 0x01, 0x01, 0x40, 0x01, 0x01, 0x10, 0x01, + 0x01, 0x01, 0x7e, 0x40, 0x0b, 0x0b, 0x48, 0x01, 0x03, 0x02, 0x31, 0x18, + 0x00, 0x3f, 0x35, 0x35, 0x35, 0x01, 0x2b, 0x11, 0x5d, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x35, 0x11, 0x5d, 0x5d, 0x35, 0x35, 0x35, 0x00, 0x00, 0x00, + 0xff, 0xff, 0x00, 0x91, 0xff, 0xf6, 0x06, 0x4e, 0x05, 0x81, 0x10, 0x27, + 0x02, 0x20, 0x02, 0xbd, 0x00, 0x00, 0x10, 0x27, 0x02, 0x9d, 0x03, 0xcc, + 0xfd, 0xce, 0x11, 0x06, 0x02, 0x9c, 0x66, 0x00, 0x00, 0x2f, 0x40, 0x1c, + 0x01, 0x03, 0x02, 0x6f, 0x31, 0x01, 0x2f, 0x31, 0x01, 0x31, 0x00, 0xbf, + 0x01, 0x01, 0x80, 0x01, 0x01, 0x01, 0x66, 0x40, 0x0b, 0x0b, 0x48, 0x01, + 0x03, 0x02, 0x31, 0x18, 0x00, 0x3f, 0x35, 0x35, 0x35, 0x01, 0x2b, 0x11, + 0x5d, 0x5d, 0x35, 0x11, 0x5d, 0x5d, 0x35, 0x35, 0x35, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0xa2, 0x01, 0x62, 0x06, 0x5e, 0x03, 0x42, 0x00, 0x11, + 0x00, 0x18, 0x40, 0x09, 0x00, 0x0f, 0x0c, 0x03, 0x80, 0x10, 0x07, 0x11, + 0x10, 0x00, 0x2f, 0xcd, 0x01, 0x2f, 0xcd, 0x1a, 0xcc, 0x32, 0x39, 0x39, + 0x31, 0x30, 0x01, 0x1e, 0x01, 0x17, 0x23, 0x2e, 0x01, 0x27, 0x35, 0x3e, + 0x01, 0x37, 0x33, 0x0e, 0x01, 0x07, 0x21, 0x15, 0x02, 0x81, 0x1d, 0x3b, + 0x1f, 0x48, 0x3a, 0x82, 0x52, 0x52, 0x82, 0x3a, 0x48, 0x1f, 0x3b, 0x1d, + 0x03, 0xdd, 0x02, 0x27, 0x22, 0x62, 0x41, 0x44, 0x70, 0x2a, 0x24, 0x2a, + 0x70, 0x44, 0x41, 0x62, 0x22, 0x56, 0x00, 0x00, 0x00, 0x01, 0x01, 0x10, + 0xff, 0xc3, 0x02, 0xf0, 0x04, 0x7f, 0x00, 0x11, 0x00, 0x1a, 0x40, 0x0a, + 0x0f, 0x40, 0x00, 0x00, 0x0f, 0x0c, 0x03, 0x11, 0x80, 0x07, 0x00, 0x2f, + 0x1a, 0xcd, 0xcc, 0x32, 0x39, 0x39, 0x01, 0x2f, 0x1a, 0xcd, 0x31, 0x30, + 0x01, 0x0e, 0x01, 0x07, 0x35, 0x3e, 0x01, 0x37, 0x33, 0x1e, 0x01, 0x17, + 0x15, 0x2e, 0x01, 0x27, 0x11, 0x23, 0x01, 0xd5, 0x22, 0x62, 0x41, 0x44, + 0x70, 0x2a, 0x24, 0x2a, 0x70, 0x44, 0x41, 0x62, 0x22, 0x56, 0x03, 0xa0, + 0x1d, 0x3b, 0x1f, 0x48, 0x3a, 0x82, 0x52, 0x52, 0x82, 0x3a, 0x48, 0x1f, + 0x3b, 0x1d, 0xfc, 0x23, 0x00, 0x01, 0x01, 0xa2, 0x01, 0x62, 0x06, 0x5e, + 0x03, 0x42, 0x00, 0x11, 0x00, 0x18, 0x40, 0x09, 0x00, 0x0f, 0x0c, 0x03, + 0x80, 0x07, 0x11, 0x10, 0x11, 0x00, 0x2f, 0xcd, 0x01, 0x2f, 0xdd, 0x1a, + 0xcc, 0x32, 0x39, 0x39, 0x31, 0x30, 0x01, 0x2e, 0x01, 0x27, 0x33, 0x1e, + 0x01, 0x17, 0x15, 0x0e, 0x01, 0x07, 0x23, 0x3e, 0x01, 0x37, 0x21, 0x35, + 0x05, 0x7f, 0x1d, 0x3b, 0x1f, 0x48, 0x3a, 0x82, 0x52, 0x52, 0x82, 0x3a, + 0x48, 0x1f, 0x3b, 0x1d, 0xfc, 0x23, 0x02, 0x7d, 0x22, 0x62, 0x41, 0x44, + 0x70, 0x2a, 0x24, 0x2a, 0x70, 0x44, 0x41, 0x62, 0x22, 0x56, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x10, 0xff, 0xc3, 0x02, 0xf0, 0x04, 0x7f, 0x00, 0x11, + 0x00, 0x1a, 0x40, 0x0a, 0x11, 0x40, 0x10, 0x0f, 0x00, 0x03, 0x0c, 0x80, + 0x08, 0x10, 0x00, 0x2f, 0xdd, 0x1a, 0xcc, 0x32, 0x39, 0x39, 0x01, 0x2f, + 0x1a, 0xcd, 0x31, 0x30, 0x25, 0x3e, 0x01, 0x37, 0x15, 0x0e, 0x01, 0x07, + 0x23, 0x2e, 0x01, 0x27, 0x35, 0x1e, 0x01, 0x17, 0x11, 0x33, 0x02, 0x2b, + 0x22, 0x62, 0x41, 0x44, 0x70, 0x2a, 0x24, 0x2a, 0x70, 0x44, 0x41, 0x62, + 0x22, 0x56, 0xa2, 0x1d, 0x3b, 0x1f, 0x48, 0x3a, 0x82, 0x52, 0x52, 0x82, + 0x3a, 0x48, 0x1f, 0x3b, 0x1d, 0x03, 0xdd, 0x00, 0x00, 0x01, 0x01, 0xa2, + 0x01, 0x62, 0x06, 0x5e, 0x03, 0x42, 0x00, 0x1f, 0x00, 0x24, 0x40, 0x0f, + 0x10, 0x1f, 0x1c, 0x13, 0x80, 0x17, 0x40, 0x0f, 0x00, 0x03, 0x0c, 0x80, + 0x08, 0x00, 0x0f, 0x00, 0x2f, 0xcd, 0x01, 0x2f, 0x1a, 0xcc, 0x32, 0x39, + 0x39, 0x1a, 0xdd, 0x1a, 0xcc, 0x32, 0x39, 0x39, 0x31, 0x30, 0x01, 0x1e, + 0x01, 0x17, 0x23, 0x2e, 0x01, 0x27, 0x35, 0x3e, 0x01, 0x37, 0x33, 0x0e, + 0x01, 0x07, 0x21, 0x2e, 0x01, 0x27, 0x33, 0x1e, 0x01, 0x17, 0x15, 0x0e, + 0x01, 0x07, 0x23, 0x3e, 0x01, 0x37, 0x02, 0x81, 0x1d, 0x3b, 0x1f, 0x48, + 0x3a, 0x82, 0x52, 0x52, 0x82, 0x3a, 0x48, 0x1f, 0x3b, 0x1d, 0x02, 0xfe, + 0x1d, 0x3b, 0x1f, 0x48, 0x3a, 0x82, 0x52, 0x52, 0x82, 0x3a, 0x48, 0x1f, + 0x3b, 0x1d, 0x02, 0x27, 0x22, 0x62, 0x41, 0x44, 0x70, 0x2a, 0x24, 0x2a, + 0x70, 0x44, 0x41, 0x62, 0x22, 0x22, 0x62, 0x41, 0x44, 0x70, 0x2a, 0x24, + 0x2a, 0x70, 0x44, 0x41, 0x62, 0x22, 0x00, 0x00, 0x00, 0x01, 0x01, 0x10, + 0xff, 0xc3, 0x02, 0xf0, 0x04, 0x7f, 0x00, 0x1f, 0x00, 0x26, 0x40, 0x10, + 0x0f, 0x40, 0x00, 0x1f, 0x10, 0x13, 0x1c, 0x80, 0x18, 0x40, 0x00, 0x0f, + 0x0c, 0x03, 0x80, 0x07, 0x00, 0x2f, 0x1a, 0xcc, 0x32, 0x39, 0x39, 0x1a, + 0xdd, 0x1a, 0xcc, 0x32, 0x39, 0x39, 0x01, 0x2f, 0x1a, 0xcd, 0x31, 0x30, + 0x01, 0x0e, 0x01, 0x07, 0x35, 0x3e, 0x01, 0x37, 0x33, 0x1e, 0x01, 0x17, + 0x15, 0x2e, 0x01, 0x27, 0x11, 0x3e, 0x01, 0x37, 0x15, 0x0e, 0x01, 0x07, + 0x23, 0x2e, 0x01, 0x27, 0x35, 0x1e, 0x01, 0x17, 0x01, 0xd5, 0x22, 0x62, + 0x41, 0x44, 0x70, 0x2a, 0x24, 0x2a, 0x70, 0x44, 0x41, 0x62, 0x22, 0x22, + 0x62, 0x41, 0x44, 0x70, 0x2a, 0x24, 0x2a, 0x70, 0x44, 0x41, 0x62, 0x22, + 0x03, 0xa0, 0x1d, 0x3b, 0x1f, 0x48, 0x3a, 0x82, 0x52, 0x52, 0x82, 0x3a, + 0x48, 0x1f, 0x3b, 0x1d, 0xfd, 0x02, 0x1d, 0x3b, 0x1f, 0x48, 0x3a, 0x82, + 0x52, 0x52, 0x82, 0x3a, 0x48, 0x1f, 0x3b, 0x1d, 0x00, 0x02, 0x01, 0x10, + 0xff, 0x48, 0x02, 0xf0, 0x04, 0x7f, 0x00, 0x03, 0x00, 0x23, 0x00, 0x28, + 0x40, 0x11, 0x01, 0x13, 0x00, 0x04, 0x23, 0x14, 0x17, 0x20, 0x1c, 0x03, + 0x00, 0x1c, 0x04, 0x13, 0x10, 0x07, 0x0b, 0x00, 0x2f, 0xcc, 0x32, 0x39, + 0x39, 0xdd, 0xde, 0xcd, 0x10, 0xcc, 0x32, 0x39, 0x39, 0x01, 0x2f, 0x33, + 0xcd, 0x32, 0x31, 0x30, 0x05, 0x21, 0x15, 0x21, 0x13, 0x0e, 0x01, 0x07, + 0x35, 0x3e, 0x01, 0x37, 0x33, 0x1e, 0x01, 0x17, 0x15, 0x2e, 0x01, 0x27, + 0x11, 0x3e, 0x01, 0x37, 0x15, 0x0e, 0x01, 0x07, 0x23, 0x2e, 0x01, 0x27, + 0x35, 0x1e, 0x01, 0x17, 0x01, 0x10, 0x01, 0xe0, 0xfe, 0x20, 0xc5, 0x22, + 0x62, 0x41, 0x44, 0x70, 0x2a, 0x24, 0x2a, 0x70, 0x44, 0x41, 0x62, 0x22, + 0x22, 0x62, 0x41, 0x44, 0x70, 0x2a, 0x24, 0x2a, 0x70, 0x44, 0x41, 0x62, + 0x22, 0x68, 0x50, 0x04, 0x58, 0x1d, 0x3b, 0x1f, 0x48, 0x3a, 0x82, 0x52, + 0x52, 0x82, 0x3a, 0x48, 0x1f, 0x3b, 0x1d, 0xfd, 0x02, 0x1d, 0x3b, 0x1f, + 0x48, 0x3a, 0x82, 0x52, 0x52, 0x82, 0x3a, 0x48, 0x1f, 0x3b, 0x1d, 0x00, + 0x00, 0x02, 0x00, 0x38, 0xff, 0xe5, 0x03, 0xba, 0x05, 0xc5, 0x00, 0x2f, + 0x00, 0x45, 0x00, 0xde, 0x40, 0x5d, 0x9c, 0x13, 0xac, 0x13, 0x02, 0x9a, + 0x06, 0xaa, 0x06, 0x02, 0x7a, 0x21, 0x8a, 0x21, 0x02, 0x44, 0x18, 0x0e, + 0x11, 0x48, 0x55, 0x14, 0x65, 0x14, 0x95, 0x14, 0xa5, 0x14, 0x04, 0x8c, + 0x07, 0x01, 0x4a, 0x07, 0x5a, 0x07, 0x7a, 0x07, 0x03, 0x4a, 0x38, 0x5a, + 0x38, 0x02, 0x43, 0x38, 0x0b, 0x0f, 0x48, 0x3a, 0x43, 0x01, 0x2a, 0x0c, + 0x3a, 0x0c, 0x4a, 0x0c, 0x03, 0x25, 0x2d, 0x35, 0x2d, 0x95, 0x2d, 0xa5, + 0x2d, 0x04, 0x20, 0x27, 0x30, 0x27, 0x02, 0x27, 0x27, 0x0f, 0xa9, 0x30, + 0xf9, 0x30, 0x02, 0x28, 0x30, 0x01, 0x30, 0x1c, 0x00, 0x46, 0x40, 0x60, + 0x1f, 0x01, 0x1f, 0xb8, 0xff, 0xc0, 0x40, 0x40, 0x12, 0x15, 0x48, 0x0f, + 0x1f, 0x01, 0x1f, 0x40, 0x0c, 0x11, 0x48, 0x1f, 0x47, 0x80, 0x3c, 0x47, + 0x3f, 0x0f, 0x01, 0x0f, 0x40, 0x0c, 0x11, 0x48, 0x0f, 0x4f, 0x47, 0x01, + 0x27, 0x22, 0x50, 0x2b, 0x35, 0x51, 0x1b, 0x00, 0x16, 0x40, 0x16, 0x80, + 0x16, 0xc0, 0x16, 0x04, 0x07, 0x16, 0x16, 0x2f, 0x2b, 0x6f, 0x2b, 0xdf, + 0x2b, 0x03, 0x0f, 0x2b, 0xbf, 0x2b, 0x02, 0x2b, 0x41, 0x50, 0x0a, 0x16, + 0x00, 0x3f, 0xed, 0x2f, 0x5d, 0x71, 0x39, 0x2f, 0x5e, 0x5d, 0x33, 0xed, + 0x10, 0xed, 0x32, 0x01, 0x5d, 0x2f, 0x2b, 0x5d, 0xed, 0x1a, 0x10, 0xdc, + 0x2b, 0x5d, 0x2b, 0x71, 0x1a, 0xed, 0x33, 0x33, 0x71, 0x71, 0x12, 0x39, + 0x2f, 0x5d, 0x31, 0x30, 0x00, 0x5d, 0x01, 0x5d, 0x5d, 0x2b, 0x00, 0x5d, + 0x01, 0x5d, 0x5d, 0x00, 0x5d, 0x01, 0x2b, 0x5d, 0x5d, 0x5d, 0x01, 0x14, + 0x0e, 0x02, 0x07, 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, + 0x04, 0x33, 0x32, 0x1e, 0x02, 0x17, 0x33, 0x3e, 0x01, 0x35, 0x34, 0x26, + 0x23, 0x22, 0x0e, 0x02, 0x07, 0x37, 0x3e, 0x01, 0x33, 0x32, 0x1e, 0x02, + 0x03, 0x2e, 0x03, 0x23, 0x22, 0x0e, 0x04, 0x15, 0x14, 0x1e, 0x02, 0x33, + 0x32, 0x3e, 0x02, 0x03, 0xba, 0x07, 0x0d, 0x12, 0x0b, 0x1f, 0x60, 0x82, + 0xa2, 0x61, 0x5d, 0x7f, 0x4e, 0x23, 0x16, 0x2f, 0x49, 0x66, 0x84, 0x53, + 0x2a, 0x4d, 0x40, 0x32, 0x10, 0x04, 0x01, 0x03, 0x82, 0x81, 0x1c, 0x3b, + 0x3a, 0x37, 0x16, 0x24, 0x2a, 0x74, 0x43, 0x71, 0x9a, 0x5e, 0x29, 0xd3, + 0x08, 0x24, 0x33, 0x40, 0x24, 0x35, 0x56, 0x43, 0x31, 0x20, 0x0f, 0x15, + 0x2a, 0x41, 0x2c, 0x42, 0x6c, 0x53, 0x38, 0x03, 0xaa, 0x2e, 0x68, 0x6a, + 0x6a, 0x30, 0x80, 0xce, 0x90, 0x4d, 0x3f, 0x6b, 0x8a, 0x4b, 0x3c, 0x8f, + 0x90, 0x86, 0x68, 0x3f, 0x1a, 0x30, 0x43, 0x2a, 0x19, 0x3a, 0x22, 0xc4, + 0xd1, 0x0b, 0x13, 0x1c, 0x11, 0x93, 0x17, 0x27, 0x58, 0x95, 0xc3, 0xfe, + 0x93, 0x2a, 0x4a, 0x37, 0x20, 0x33, 0x54, 0x6e, 0x74, 0x74, 0x30, 0x35, + 0x5b, 0x43, 0x26, 0x63, 0xa1, 0xcd, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04, + 0x00, 0x00, 0x04, 0xe1, 0x05, 0x81, 0x00, 0x05, 0x00, 0x12, 0x00, 0xf4, + 0x40, 0x1b, 0x4a, 0x07, 0x5a, 0x07, 0x6a, 0x07, 0x03, 0x45, 0x11, 0x55, + 0x11, 0x65, 0x11, 0x03, 0x03, 0x38, 0x08, 0x01, 0x37, 0x10, 0x01, 0x06, + 0x18, 0x0e, 0x11, 0x48, 0x12, 0xb8, 0xff, 0xe8, 0x40, 0x9d, 0x0e, 0x11, + 0x48, 0x66, 0x02, 0x01, 0x27, 0x02, 0x47, 0x02, 0x57, 0x02, 0x03, 0x69, + 0x01, 0x01, 0x28, 0x01, 0x48, 0x01, 0x58, 0x01, 0x03, 0x02, 0x01, 0x0c, + 0x0c, 0x00, 0x06, 0x3b, 0x03, 0x01, 0x14, 0x03, 0x01, 0xf4, 0x03, 0x01, + 0x6b, 0x03, 0x9b, 0x03, 0xbb, 0x03, 0xeb, 0x03, 0x04, 0x34, 0x03, 0x54, + 0x03, 0x02, 0x00, 0x03, 0x01, 0x0b, 0x02, 0x03, 0x12, 0x0f, 0x00, 0x1f, + 0x00, 0x2f, 0x00, 0x03, 0x12, 0x00, 0x0f, 0x14, 0x2f, 0x14, 0x7f, 0x14, + 0x03, 0xaf, 0x14, 0xbf, 0x14, 0xdf, 0x14, 0xff, 0x14, 0x04, 0x20, 0x14, + 0x70, 0x14, 0x90, 0x14, 0x03, 0x0f, 0x14, 0x3f, 0x14, 0x8f, 0x14, 0x03, + 0x3a, 0xaf, 0x14, 0xcf, 0x14, 0xdf, 0x14, 0xff, 0x14, 0x04, 0x40, 0x14, + 0x60, 0x14, 0x90, 0x14, 0x03, 0x0f, 0x14, 0x5f, 0x14, 0x02, 0x8f, 0x14, + 0x9f, 0x14, 0xbf, 0x14, 0xdf, 0x14, 0x04, 0x00, 0x14, 0x20, 0x14, 0x50, + 0x14, 0x70, 0x14, 0x04, 0x00, 0x03, 0x06, 0x03, 0x12, 0x5f, 0x05, 0x12, + 0x0c, 0x20, 0x13, 0x16, 0x48, 0x99, 0x0c, 0x01, 0x0c, 0x01, 0x03, 0x00, + 0x3f, 0x33, 0x5d, 0x2b, 0x3f, 0xed, 0x17, 0x32, 0x01, 0x5d, 0x5d, 0x71, + 0x72, 0x72, 0x5e, 0x5d, 0x71, 0x71, 0x72, 0x2f, 0x5e, 0x5d, 0x33, 0x2f, + 0x5f, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x33, 0x12, 0x39, 0x3d, + 0x2f, 0x33, 0x33, 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x2b, 0x2b, 0x5d, + 0x5d, 0x5f, 0x5d, 0x5d, 0x37, 0x01, 0x33, 0x01, 0x15, 0x21, 0x25, 0x01, + 0x2e, 0x03, 0x27, 0x0e, 0x03, 0x07, 0x01, 0x05, 0x02, 0x05, 0xd9, 0x01, + 0xfe, 0xfb, 0x23, 0x04, 0x15, 0xfe, 0xae, 0x10, 0x1d, 0x16, 0x0f, 0x01, + 0x02, 0x0e, 0x17, 0x1c, 0x10, 0xfe, 0xad, 0x8d, 0x04, 0xf4, 0xfb, 0x0c, + 0x8d, 0x9c, 0x03, 0x5e, 0x28, 0x52, 0x45, 0x30, 0x08, 0x08, 0x31, 0x46, + 0x52, 0x28, 0xfc, 0xa4, 0x00, 0x01, 0x00, 0xeb, 0xfe, 0x4e, 0x05, 0xac, + 0x05, 0x81, 0x00, 0x07, 0x00, 0x36, 0x40, 0x24, 0x03, 0x5a, 0x4f, 0x04, + 0xaf, 0x04, 0xbf, 0x04, 0xcf, 0x04, 0x04, 0x04, 0x07, 0x5a, 0x20, 0x00, + 0x01, 0x0f, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0xc0, 0x00, 0xd0, 0x00, + 0x04, 0x00, 0x02, 0x5f, 0x05, 0x03, 0x04, 0x00, 0x00, 0x2f, 0x32, 0x3f, + 0xed, 0x01, 0x2f, 0x5d, 0x71, 0x71, 0xed, 0x2f, 0x5d, 0xed, 0x31, 0x30, + 0x01, 0x11, 0x21, 0x11, 0x23, 0x11, 0x21, 0x11, 0x04, 0xf4, 0xfc, 0xb6, + 0xbf, 0x04, 0xc1, 0xfe, 0x4e, 0x06, 0x91, 0xf9, 0x6f, 0x07, 0x33, 0xf8, + 0xcd, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x9a, 0xfe, 0x4e, 0x05, 0x30, + 0x05, 0x81, 0x00, 0x0b, 0x00, 0xaa, 0x40, 0x09, 0x86, 0x08, 0x96, 0x08, + 0x02, 0xa3, 0x09, 0x01, 0x09, 0xb8, 0xff, 0xc0, 0x40, 0x1a, 0x0d, 0x10, + 0x48, 0xa3, 0x07, 0x01, 0x02, 0x90, 0x07, 0x01, 0x72, 0x07, 0x82, 0x07, + 0x02, 0x64, 0x07, 0x01, 0x35, 0x07, 0x45, 0x07, 0x55, 0x07, 0x03, 0x03, + 0xb8, 0xff, 0xf0, 0x40, 0x4a, 0x09, 0x11, 0x48, 0x29, 0x01, 0x39, 0x01, + 0x02, 0x01, 0x10, 0x0c, 0x11, 0x48, 0x08, 0x8f, 0x06, 0x9f, 0x06, 0xaf, + 0x06, 0x03, 0x02, 0x48, 0x11, 0x49, 0x0f, 0x02, 0x7f, 0x02, 0x02, 0x02, + 0x06, 0x02, 0x06, 0x00, 0xcf, 0x0a, 0x01, 0x00, 0x0a, 0x40, 0x0a, 0x02, + 0x0a, 0x07, 0x03, 0x09, 0x03, 0x09, 0xcf, 0x00, 0x01, 0x00, 0x00, 0x40, + 0x00, 0x02, 0x07, 0x00, 0x20, 0x0d, 0x01, 0x03, 0x07, 0x5f, 0x02, 0x08, + 0x00, 0x04, 0x03, 0x01, 0x09, 0x5f, 0x00, 0x00, 0x2f, 0xed, 0x39, 0x3f, + 0x12, 0x39, 0x39, 0xed, 0x39, 0x01, 0x5d, 0x2f, 0x5e, 0x5d, 0x5d, 0x33, + 0x33, 0x2f, 0x2f, 0x33, 0x2f, 0x5d, 0x5d, 0x12, 0x39, 0x39, 0x2f, 0x2f, + 0x5d, 0x2b, 0x5d, 0x33, 0x31, 0x30, 0x00, 0x2b, 0x5d, 0x2b, 0x01, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5f, 0x5d, 0x2b, 0x5d, 0x5d, 0x13, 0x35, 0x09, 0x01, + 0x35, 0x21, 0x15, 0x21, 0x09, 0x01, 0x21, 0x15, 0x9a, 0x02, 0x7b, 0xfd, + 0x95, 0x04, 0x42, 0xfc, 0xb2, 0x02, 0x48, 0xfd, 0xa8, 0x03, 0xa2, 0xfe, + 0x4e, 0x6d, 0x03, 0x30, 0x03, 0x2c, 0x6a, 0x98, 0xfd, 0x04, 0xfc, 0xf9, + 0x98, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x65, 0x02, 0x60, 0x04, 0x48, + 0x02, 0xf2, 0x00, 0x03, 0x00, 0x20, 0x40, 0x14, 0x00, 0x02, 0x20, 0x02, + 0x50, 0x02, 0x70, 0x02, 0x04, 0x02, 0x10, 0x00, 0x20, 0x00, 0x02, 0x00, + 0x00, 0xad, 0x01, 0xb3, 0x00, 0x3f, 0xed, 0x01, 0x2f, 0x5d, 0x2f, 0x5d, + 0x31, 0x30, 0x13, 0x35, 0x21, 0x15, 0x65, 0x03, 0xe3, 0x02, 0x60, 0x92, + 0x92, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x33, 0xff, 0xf2, 0x04, 0x62, + 0x06, 0x54, 0x00, 0x08, 0x00, 0xb9, 0xb9, 0x00, 0x00, 0xff, 0xe8, 0x40, + 0x87, 0x0e, 0x11, 0x48, 0x09, 0x01, 0x39, 0x01, 0x49, 0x01, 0x03, 0x09, + 0x01, 0x00, 0x04, 0x06, 0x01, 0x06, 0x06, 0x08, 0x10, 0x6f, 0x08, 0x8f, + 0x08, 0xaf, 0x08, 0xcf, 0x08, 0xef, 0x08, 0x05, 0x0f, 0x08, 0x2f, 0x08, + 0x4f, 0x08, 0x6f, 0x08, 0x8f, 0x08, 0x05, 0x08, 0x5f, 0x02, 0x01, 0x02, + 0x02, 0x0f, 0x03, 0x2f, 0x03, 0x4f, 0x03, 0x6f, 0x03, 0x04, 0x0b, 0x03, + 0xaf, 0x0a, 0x01, 0x30, 0x0a, 0x50, 0x0a, 0x70, 0x0a, 0x90, 0x0a, 0x04, + 0x6f, 0x0a, 0x8f, 0x0a, 0x02, 0x10, 0x0a, 0x30, 0x0a, 0x02, 0xf0, 0x0a, + 0x01, 0x0f, 0x0a, 0x2f, 0x0a, 0x4f, 0x0a, 0x03, 0x39, 0xef, 0x0a, 0x01, + 0xb0, 0x0a, 0xd0, 0x0a, 0x02, 0x8f, 0x0a, 0xaf, 0x0a, 0xcf, 0x0a, 0xef, + 0x0a, 0x04, 0x70, 0x0a, 0x01, 0x2f, 0x0a, 0x4f, 0x0a, 0x6f, 0x0a, 0x8f, + 0x0a, 0xaf, 0x0a, 0x05, 0x02, 0xaf, 0x1f, 0x05, 0x01, 0x05, 0x05, 0x01, + 0x07, 0xb3, 0x06, 0x01, 0x00, 0x2f, 0x33, 0x3f, 0x12, 0x39, 0x2f, 0x5d, + 0xed, 0x01, 0x5d, 0x71, 0x71, 0x72, 0x72, 0x5e, 0x5d, 0x5d, 0x71, 0x71, + 0x72, 0x72, 0x2f, 0x5e, 0x5d, 0x33, 0x2f, 0x5d, 0x2f, 0x5d, 0x71, 0x38, + 0x39, 0x3d, 0x2f, 0x5d, 0x33, 0x33, 0x31, 0x30, 0x5e, 0x5d, 0x2b, 0x05, + 0x23, 0x01, 0x23, 0x35, 0x21, 0x13, 0x01, 0x33, 0x02, 0x6e, 0x6a, 0xfe, + 0xe5, 0xb6, 0x01, 0x0e, 0xf2, 0x01, 0xae, 0x81, 0x0e, 0x03, 0x18, 0x75, + 0xfd, 0x4e, 0x05, 0x87, 0x00, 0x03, 0x00, 0x57, 0x00, 0xcb, 0x05, 0x5d, + 0x03, 0xd7, 0x00, 0x23, 0x00, 0x33, 0x00, 0x43, 0x00, 0x72, 0x40, 0x4b, + 0x89, 0x32, 0x01, 0x35, 0x43, 0x45, 0x43, 0x02, 0x0a, 0x0f, 0x01, 0x0a, + 0x03, 0x01, 0x05, 0x21, 0x01, 0x05, 0x15, 0x01, 0x27, 0x1a, 0x08, 0x34, + 0x04, 0x12, 0x00, 0x00, 0x2f, 0x20, 0x2f, 0x40, 0x2f, 0x70, 0x2f, 0x04, + 0x2f, 0x3c, 0x12, 0x24, 0xe0, 0x37, 0x01, 0x37, 0x17, 0x2a, 0xef, 0x41, + 0x01, 0x41, 0x08, 0x27, 0x34, 0x1a, 0x04, 0x05, 0x3f, 0x0d, 0x01, 0x0d, + 0x40, 0x12, 0x15, 0x48, 0x00, 0x0d, 0x50, 0x0d, 0x02, 0x0d, 0x1f, 0x0f, + 0x17, 0x01, 0x17, 0x00, 0x2f, 0x5d, 0x33, 0xdc, 0x5d, 0x2b, 0x71, 0x32, + 0x17, 0x39, 0xcd, 0x5d, 0x32, 0x10, 0xcd, 0x5d, 0x32, 0x01, 0x2f, 0xcd, + 0x2f, 0x5d, 0xcd, 0x11, 0x17, 0x39, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, + 0x5d, 0x5d, 0x01, 0x5d, 0x01, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x26, 0x27, + 0x0e, 0x03, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, + 0x16, 0x17, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x25, 0x22, 0x06, 0x07, + 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x05, 0x2e, + 0x01, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x36, + 0x05, 0x5d, 0x2c, 0x52, 0x73, 0x46, 0x61, 0xa8, 0x46, 0x20, 0x4b, 0x54, + 0x5a, 0x2e, 0x45, 0x73, 0x53, 0x2e, 0x2c, 0x52, 0x74, 0x47, 0x5e, 0xa8, + 0x43, 0x1f, 0x4b, 0x54, 0x5e, 0x33, 0x45, 0x72, 0x51, 0x2d, 0xfe, 0xb3, + 0x46, 0x77, 0x38, 0x33, 0x77, 0x4d, 0x2b, 0x47, 0x33, 0x1b, 0x1d, 0x33, + 0x47, 0xfe, 0x5d, 0x33, 0x77, 0x4e, 0x2b, 0x46, 0x31, 0x1b, 0x19, 0x30, + 0x47, 0x2f, 0x46, 0x78, 0x02, 0x4e, 0x4e, 0x8d, 0x6a, 0x3e, 0x85, 0x95, + 0x3f, 0x66, 0x48, 0x27, 0x37, 0x64, 0x8f, 0x59, 0x51, 0x8e, 0x68, 0x3c, + 0x87, 0x94, 0x3e, 0x66, 0x49, 0x28, 0x37, 0x65, 0x8f, 0xa8, 0x7e, 0x82, + 0x80, 0x80, 0x28, 0x46, 0x5e, 0x36, 0x36, 0x5c, 0x45, 0x27, 0xfa, 0x80, + 0x80, 0x28, 0x46, 0x5e, 0x36, 0x33, 0x5d, 0x45, 0x29, 0x7e, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x98, 0x00, 0x00, 0x06, 0x60, 0x04, 0xc7, 0x00, 0x05, + 0x00, 0x0d, 0xb3, 0x02, 0x05, 0x02, 0x05, 0x00, 0x2f, 0xcd, 0x01, 0x2f, + 0xcd, 0x31, 0x30, 0x01, 0x33, 0x11, 0x21, 0x15, 0x21, 0x01, 0x98, 0x5e, + 0x04, 0x6a, 0xfb, 0x38, 0x04, 0xc7, 0xfb, 0x97, 0x5e, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x16, 0xff, 0xfe, 0x04, 0xaa, 0x04, 0x08, 0x00, 0x19, + 0x00, 0x23, 0x40, 0x12, 0x4b, 0x16, 0x5b, 0x16, 0x02, 0x4b, 0x10, 0x5b, + 0x10, 0x02, 0x19, 0x00, 0x0c, 0x0d, 0x0d, 0x00, 0x13, 0x06, 0x00, 0x2f, + 0xcd, 0x2f, 0x33, 0x01, 0x2f, 0xcd, 0x2f, 0xcd, 0x31, 0x30, 0x00, 0x5d, + 0x5d, 0x05, 0x11, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, 0x15, 0x11, + 0x23, 0x11, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, 0x15, 0x11, 0x01, + 0x16, 0x44, 0x7a, 0xa7, 0x62, 0x63, 0xa9, 0x7b, 0x46, 0x67, 0x35, 0x5f, + 0x82, 0x4e, 0x4e, 0x82, 0x5e, 0x34, 0x02, 0x02, 0x00, 0x74, 0xc0, 0x8a, + 0x4c, 0x4c, 0x8a, 0xc0, 0x74, 0xfe, 0x00, 0x02, 0x02, 0x62, 0x9b, 0x6c, + 0x39, 0x38, 0x6c, 0x9c, 0x64, 0xfe, 0x00, 0x00, 0x00, 0x01, 0xff, 0x9e, + 0xfe, 0x4e, 0x02, 0x94, 0x05, 0xe3, 0x00, 0x23, 0x02, 0x03, 0x40, 0x1e, + 0x0a, 0x22, 0x1a, 0x22, 0x2a, 0x22, 0x03, 0x05, 0x10, 0x15, 0x10, 0x25, + 0x10, 0x03, 0x09, 0x03, 0xda, 0x25, 0x01, 0xc9, 0x25, 0x01, 0x9a, 0x25, + 0xaa, 0x25, 0xba, 0x25, 0x03, 0x25, 0xb8, 0x01, 0x00, 0x40, 0xa2, 0xe1, + 0xe4, 0x48, 0x4c, 0x25, 0x01, 0x00, 0x2f, 0x25, 0x3f, 0x25, 0x02, 0x09, + 0x25, 0x01, 0xdc, 0x25, 0x40, 0xd3, 0xd9, 0x48, 0x25, 0x40, 0xcd, 0xd1, + 0x48, 0x86, 0x25, 0x01, 0x19, 0x25, 0x29, 0x25, 0x39, 0x25, 0x03, 0x0b, + 0x25, 0x01, 0xfb, 0x25, 0x01, 0xe9, 0x25, 0x01, 0x25, 0x40, 0xbc, 0xbf, + 0x48, 0x6b, 0x25, 0x7b, 0x25, 0x8b, 0x25, 0x03, 0x5d, 0x25, 0x01, 0x4b, + 0x25, 0x01, 0x29, 0x25, 0x39, 0x25, 0x02, 0x1b, 0x25, 0x01, 0x09, 0x25, + 0x01, 0xf9, 0x25, 0x01, 0x25, 0x80, 0xaa, 0xb1, 0x48, 0x6d, 0x25, 0x01, + 0x25, 0x80, 0xa4, 0xa8, 0x48, 0x09, 0x25, 0x01, 0xa3, 0x25, 0x80, 0x9c, + 0xa2, 0x48, 0xbd, 0x25, 0x01, 0x79, 0x25, 0x99, 0x25, 0xa9, 0x25, 0x03, + 0x4b, 0x25, 0x5b, 0x25, 0x6b, 0x25, 0x03, 0x25, 0xc0, 0x8c, 0x93, 0x48, + 0x9b, 0x25, 0xab, 0x25, 0xbb, 0x25, 0x03, 0x7d, 0x25, 0x8d, 0x25, 0x02, + 0x6b, 0x25, 0x01, 0x5d, 0x25, 0x01, 0x26, 0x25, 0x36, 0x25, 0x46, 0x25, + 0x03, 0xe4, 0x25, 0x01, 0xd6, 0x25, 0x01, 0xb4, 0x25, 0xc4, 0x25, 0x02, + 0x06, 0x25, 0x01, 0x70, 0x25, 0xb8, 0xff, 0xc0, 0x40, 0x6e, 0x77, 0x7a, + 0x48, 0x25, 0x40, 0x65, 0x6b, 0x48, 0xdb, 0x25, 0x01, 0x76, 0x25, 0xa6, + 0x25, 0x02, 0x09, 0x25, 0x19, 0x25, 0x29, 0x25, 0x03, 0xe9, 0x25, 0x01, + 0x25, 0x40, 0x4f, 0x52, 0x48, 0x25, 0x80, 0x4a, 0x4e, 0x48, 0x19, 0x25, + 0x29, 0x25, 0x02, 0x0b, 0x25, 0x01, 0xfb, 0x25, 0x01, 0xd9, 0x25, 0xe9, + 0x25, 0x02, 0xab, 0x25, 0xbb, 0x25, 0xcb, 0x25, 0x03, 0x99, 0x25, 0x01, + 0x25, 0x80, 0x3c, 0x3f, 0x48, 0x29, 0x25, 0x39, 0x25, 0x49, 0x25, 0x03, + 0x0b, 0x25, 0x1b, 0x25, 0x02, 0x37, 0xe9, 0x25, 0xf9, 0x25, 0x02, 0xbb, + 0x25, 0xcb, 0x25, 0xdb, 0x25, 0x03, 0x8d, 0x25, 0x9d, 0x25, 0xad, 0x25, + 0x03, 0x7b, 0x25, 0x01, 0x6d, 0x25, 0x01, 0x01, 0x5f, 0x25, 0x01, 0x25, + 0xb8, 0xff, 0x80, 0xb3, 0x27, 0x2b, 0x48, 0x25, 0xb8, 0xff, 0xc0, 0x40, + 0x0d, 0x22, 0x26, 0x48, 0x90, 0x25, 0xa0, 0x25, 0x02, 0x02, 0x10, 0x25, + 0x01, 0x25, 0xb8, 0xff, 0xc0, 0x40, 0x2e, 0x1c, 0x1f, 0x48, 0xdf, 0x25, + 0x01, 0x60, 0x25, 0x70, 0x25, 0xa0, 0x25, 0xb0, 0x25, 0xc0, 0x25, 0x05, + 0x0f, 0x25, 0x1f, 0x25, 0x2f, 0x25, 0x03, 0x07, 0x20, 0x16, 0x90, 0x16, + 0x02, 0x16, 0x16, 0x1f, 0x46, 0x0c, 0x2f, 0x04, 0x9f, 0x04, 0x02, 0x04, + 0x04, 0x20, 0x0c, 0x01, 0x0c, 0xb8, 0xff, 0xc0, 0x40, 0x0f, 0x10, 0x13, + 0x48, 0x0c, 0x19, 0x50, 0x40, 0x12, 0x80, 0x12, 0x02, 0x12, 0x07, 0x50, + 0x00, 0x00, 0x2f, 0xed, 0x2f, 0x5d, 0xed, 0x01, 0x2f, 0x2b, 0x5d, 0x33, + 0x2f, 0x5d, 0x10, 0xed, 0x32, 0x2f, 0x5d, 0x5e, 0x5d, 0x5d, 0x5d, 0x2b, + 0x71, 0x5f, 0x71, 0x2b, 0x2b, 0x72, 0x5f, 0x72, 0x72, 0x72, 0x72, 0x72, + 0x5e, 0x5d, 0x5d, 0x2b, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, 0x71, 0x2b, 0x2b, + 0x71, 0x72, 0x72, 0x72, 0x2b, 0x2b, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x71, + 0x71, 0x71, 0x71, 0x71, 0x2b, 0x72, 0x72, 0x72, 0x2b, 0x5e, 0x5d, 0x2b, + 0x5d, 0x2b, 0x5d, 0x71, 0x71, 0x71, 0x71, 0x71, 0x71, 0x2b, 0x71, 0x71, + 0x72, 0x72, 0x72, 0x2b, 0x2b, 0x5e, 0x5d, 0x5d, 0x5f, 0x5d, 0x2b, 0x5d, + 0x5d, 0x5d, 0x31, 0x30, 0x00, 0x5f, 0x5e, 0x5d, 0x5d, 0x13, 0x22, 0x26, + 0x27, 0x35, 0x1e, 0x01, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x03, 0x34, 0x3e, + 0x02, 0x33, 0x32, 0x16, 0x17, 0x15, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, + 0x15, 0x11, 0x14, 0x0e, 0x02, 0x24, 0x24, 0x4b, 0x17, 0x14, 0x3e, 0x23, + 0x33, 0x42, 0x27, 0x10, 0x02, 0x32, 0x5a, 0x7d, 0x4b, 0x22, 0x4b, 0x16, + 0x12, 0x3d, 0x24, 0x33, 0x42, 0x27, 0x10, 0x32, 0x59, 0x7c, 0xfe, 0x4e, + 0x0b, 0x08, 0x93, 0x08, 0x10, 0x25, 0x40, 0x54, 0x30, 0x04, 0xbc, 0x5e, + 0x86, 0x56, 0x28, 0x09, 0x09, 0x94, 0x0a, 0x11, 0x28, 0x41, 0x54, 0x2c, + 0xfb, 0x42, 0x5e, 0x86, 0x56, 0x29, 0x00, 0x00, 0x00, 0x02, 0x00, 0x38, + 0x01, 0x50, 0x04, 0x2c, 0x03, 0xf4, 0x00, 0x21, 0x00, 0x43, 0x01, 0x1f, + 0x40, 0x1a, 0x24, 0x10, 0x0c, 0x10, 0x48, 0x02, 0x10, 0x0c, 0x10, 0x48, + 0x41, 0x18, 0x0b, 0x11, 0x48, 0x42, 0x30, 0x09, 0x11, 0x48, 0x3d, 0x30, + 0x09, 0x11, 0x48, 0x2a, 0xb8, 0xff, 0xd0, 0xb3, 0x09, 0x11, 0x48, 0x30, + 0xb8, 0xff, 0xd0, 0x40, 0x13, 0x09, 0x11, 0x48, 0x1f, 0x18, 0x09, 0x11, + 0x48, 0x20, 0x30, 0x09, 0x11, 0x48, 0x1a, 0x30, 0x09, 0x11, 0x48, 0x0d, + 0xb8, 0xff, 0xe8, 0xb3, 0x0d, 0x11, 0x48, 0x0e, 0xb8, 0xff, 0xd0, 0xb3, + 0x09, 0x0d, 0x48, 0x08, 0xb8, 0xff, 0xd0, 0xb3, 0x0e, 0x11, 0x48, 0x08, + 0xb8, 0xff, 0xd0, 0x40, 0x29, 0x09, 0x0c, 0x48, 0x3f, 0x10, 0x1c, 0x30, + 0x1c, 0x50, 0x1c, 0x03, 0x00, 0x1c, 0x10, 0x1c, 0x40, 0x1c, 0x60, 0x1c, + 0x80, 0x1c, 0xa0, 0x1c, 0xf0, 0x1c, 0x07, 0x1c, 0x2d, 0x0b, 0x40, 0x0c, + 0x11, 0x48, 0x0b, 0x2f, 0x45, 0x01, 0x3b, 0xad, 0x40, 0x2d, 0xb8, 0xff, + 0xc0, 0xb4, 0x23, 0x3c, 0x48, 0x2d, 0x22, 0xb8, 0xff, 0xc0, 0xb3, 0x17, + 0x1c, 0x48, 0x22, 0xb8, 0xff, 0xc0, 0x40, 0x1b, 0x10, 0x14, 0x48, 0x22, + 0x80, 0x3e, 0x40, 0x29, 0x3c, 0x48, 0x3e, 0x28, 0xad, 0x8f, 0x31, 0x01, + 0x20, 0x31, 0x30, 0x31, 0x02, 0x31, 0x0f, 0x19, 0xad, 0x40, 0x0b, 0xb8, + 0xff, 0xc0, 0xb4, 0x27, 0x3c, 0x48, 0x0b, 0x00, 0xb8, 0xff, 0xc0, 0xb3, + 0x17, 0x1c, 0x48, 0x00, 0xb8, 0xff, 0xc0, 0x40, 0x1d, 0x10, 0x14, 0x48, + 0x00, 0x80, 0x1c, 0x40, 0x29, 0x3c, 0x48, 0x1c, 0x06, 0xad, 0x0f, 0x0f, + 0xcf, 0x0f, 0x02, 0x0f, 0x40, 0x17, 0x1c, 0x48, 0x0f, 0x40, 0x0b, 0x13, + 0x48, 0x0f, 0x00, 0x2f, 0x2b, 0x2b, 0x5d, 0xed, 0xc4, 0x2b, 0x1a, 0xdd, + 0x2b, 0x2b, 0xc4, 0x2b, 0x1a, 0xed, 0x10, 0xdc, 0x5d, 0x5d, 0xed, 0xc4, + 0x2b, 0x1a, 0xdd, 0x2b, 0x2b, 0xc4, 0x2b, 0x1a, 0xed, 0x01, 0x5d, 0x2f, + 0x2b, 0x33, 0x2f, 0x5d, 0x71, 0x33, 0x31, 0x30, 0x00, 0x2b, 0x2b, 0x2b, + 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x2b, 0x01, + 0x22, 0x26, 0x27, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x07, 0x35, 0x3e, + 0x01, 0x33, 0x32, 0x1e, 0x02, 0x17, 0x1e, 0x03, 0x33, 0x32, 0x36, 0x37, + 0x15, 0x0e, 0x03, 0x03, 0x22, 0x26, 0x27, 0x2e, 0x01, 0x23, 0x22, 0x0e, + 0x02, 0x07, 0x35, 0x3e, 0x01, 0x33, 0x32, 0x1e, 0x02, 0x17, 0x1e, 0x03, + 0x33, 0x32, 0x36, 0x37, 0x15, 0x0e, 0x03, 0x03, 0x28, 0x45, 0x91, 0x49, + 0x41, 0x6b, 0x2d, 0x26, 0x41, 0x3c, 0x38, 0x1d, 0x32, 0x84, 0x51, 0x28, + 0x50, 0x4d, 0x4b, 0x25, 0x15, 0x32, 0x33, 0x33, 0x17, 0x45, 0x7b, 0x34, + 0x20, 0x3b, 0x3d, 0x44, 0x28, 0x45, 0x91, 0x49, 0x41, 0x6b, 0x2d, 0x26, + 0x41, 0x3c, 0x38, 0x1d, 0x32, 0x84, 0x51, 0x28, 0x50, 0x4d, 0x4b, 0x25, + 0x15, 0x32, 0x33, 0x33, 0x17, 0x45, 0x7b, 0x34, 0x20, 0x3b, 0x3d, 0x44, + 0x02, 0xf6, 0x2b, 0x1a, 0x16, 0x17, 0x0c, 0x16, 0x21, 0x15, 0x90, 0x25, + 0x2f, 0x0d, 0x15, 0x1b, 0x0d, 0x08, 0x0f, 0x0e, 0x08, 0x33, 0x2b, 0x95, + 0x17, 0x1e, 0x13, 0x08, 0xfe, 0x5a, 0x2c, 0x1a, 0x17, 0x18, 0x0c, 0x17, + 0x20, 0x15, 0x8d, 0x26, 0x2e, 0x0d, 0x14, 0x1a, 0x0d, 0x08, 0x0f, 0x0e, + 0x08, 0x32, 0x2a, 0x93, 0x17, 0x20, 0x13, 0x08, 0x00, 0x01, 0x00, 0x41, + 0x00, 0x37, 0x04, 0x24, 0x05, 0x10, 0x00, 0x13, 0x00, 0xa2, 0x40, 0x6c, + 0x35, 0x02, 0x01, 0x3a, 0x0b, 0x01, 0x3c, 0x0c, 0x01, 0x2a, 0x0c, 0x01, + 0x03, 0x03, 0x06, 0x07, 0x0a, 0x0b, 0x02, 0x0b, 0x00, 0x11, 0x10, 0x0d, + 0x0c, 0x01, 0x0c, 0x0c, 0x0b, 0x01, 0x02, 0x04, 0x09, 0x13, 0x64, 0x0e, + 0x74, 0x0e, 0x02, 0x50, 0x0e, 0x01, 0x02, 0x30, 0x0e, 0x01, 0x00, 0x0e, + 0x10, 0x0e, 0x20, 0x0e, 0x60, 0x0e, 0x04, 0x0e, 0x04, 0x6f, 0x09, 0x7f, + 0x09, 0x02, 0x5f, 0x09, 0x6f, 0x09, 0x02, 0x09, 0x10, 0x07, 0x08, 0xad, + 0x09, 0x00, 0x01, 0x02, 0x03, 0x04, 0x04, 0xad, 0x11, 0x06, 0x1f, 0x05, + 0x2f, 0x05, 0x5f, 0x05, 0x6f, 0x05, 0xdf, 0x05, 0x05, 0x05, 0x0a, 0x0b, + 0x0c, 0x0d, 0x04, 0x50, 0x09, 0xd0, 0x09, 0x02, 0x0f, 0x09, 0x01, 0x09, + 0x00, 0x2f, 0x5d, 0x5d, 0x17, 0x33, 0xde, 0x5d, 0x32, 0x32, 0xed, 0x17, + 0x32, 0x10, 0xed, 0x32, 0x32, 0x01, 0x2f, 0x5d, 0x71, 0x33, 0x2f, 0x5d, + 0x71, 0x5f, 0x71, 0x71, 0x33, 0x12, 0x17, 0x39, 0x10, 0x87, 0xc0, 0xc0, + 0xc0, 0xc0, 0x10, 0x87, 0xc0, 0xc0, 0xc0, 0xc0, 0x31, 0x30, 0x01, 0x5f, + 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x03, 0x23, 0x13, 0x23, 0x35, 0x21, 0x13, + 0x21, 0x35, 0x21, 0x13, 0x33, 0x03, 0x21, 0x15, 0x21, 0x03, 0x21, 0x15, + 0x01, 0xc0, 0x98, 0x91, 0x97, 0xed, 0x01, 0x37, 0xbe, 0xfe, 0x0b, 0x02, + 0x3d, 0x9a, 0x8f, 0x98, 0x01, 0x15, 0xfe, 0xa2, 0xbf, 0x02, 0x1d, 0x01, + 0x58, 0xfe, 0xdf, 0x01, 0x21, 0x94, 0x01, 0x6c, 0x94, 0x01, 0x24, 0xfe, + 0xdc, 0x94, 0xfe, 0x94, 0x94, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x64, + 0x00, 0xf4, 0x04, 0x47, 0x04, 0x50, 0x00, 0x03, 0x00, 0x07, 0x00, 0x0b, + 0x00, 0x31, 0x40, 0x1b, 0x0b, 0x07, 0x02, 0x08, 0x04, 0x00, 0x08, 0xad, + 0x09, 0x09, 0x01, 0x05, 0xad, 0x3f, 0x04, 0x01, 0x04, 0x00, 0xad, 0x0f, + 0x01, 0x1f, 0x01, 0x3f, 0x01, 0x03, 0x01, 0x00, 0x2f, 0x5d, 0xed, 0x2f, + 0x5d, 0xed, 0x11, 0x39, 0x2f, 0xed, 0x01, 0x2f, 0x33, 0x33, 0x2f, 0x33, + 0x33, 0x31, 0x30, 0x13, 0x35, 0x21, 0x15, 0x01, 0x35, 0x21, 0x15, 0x01, + 0x35, 0x21, 0x15, 0x64, 0x03, 0xe3, 0xfc, 0x1d, 0x03, 0xe3, 0xfc, 0x1d, + 0x03, 0xe3, 0x03, 0xbc, 0x94, 0x94, 0xfd, 0x38, 0x94, 0x94, 0x01, 0x64, + 0x94, 0x94, 0x00, 0x00, 0x00, 0x02, 0x00, 0x3f, 0x00, 0x00, 0x04, 0x24, + 0x04, 0xcf, 0x00, 0x06, 0x00, 0x0a, 0x00, 0x7b, 0xb9, 0x00, 0x05, 0xff, + 0xd8, 0x40, 0x11, 0x12, 0x16, 0x48, 0x03, 0x28, 0x12, 0x16, 0x48, 0x00, + 0x28, 0x12, 0x16, 0x48, 0x89, 0x00, 0x01, 0x01, 0xb8, 0xff, 0xd8, 0x40, + 0x3f, 0x12, 0x16, 0x48, 0x86, 0x01, 0x01, 0x0a, 0x30, 0x02, 0x50, 0x02, + 0x02, 0x00, 0x02, 0x10, 0x02, 0x20, 0x02, 0x40, 0x02, 0x60, 0x02, 0x80, + 0x02, 0xa0, 0x02, 0x07, 0x02, 0x07, 0x07, 0x00, 0x40, 0x0c, 0x0f, 0x48, + 0x00, 0x08, 0xad, 0x07, 0x4f, 0x06, 0x5f, 0x06, 0x8f, 0x06, 0x03, 0x06, + 0x40, 0x02, 0x50, 0x02, 0x80, 0x02, 0x03, 0x02, 0x01, 0x00, 0x50, 0x04, + 0x80, 0x04, 0x02, 0x04, 0x00, 0x19, 0x2f, 0x5d, 0x33, 0x33, 0xcd, 0x5d, + 0xcd, 0x5d, 0x18, 0x2f, 0xed, 0x01, 0x2f, 0x2b, 0x33, 0x2f, 0x2f, 0x5d, + 0x71, 0x33, 0x31, 0x30, 0x00, 0x5d, 0x2b, 0x5d, 0x2b, 0x2b, 0x2b, 0x13, + 0x35, 0x01, 0x15, 0x09, 0x01, 0x15, 0x05, 0x35, 0x21, 0x15, 0x41, 0x03, + 0xe3, 0xfc, 0xa6, 0x03, 0x5a, 0xfc, 0x1b, 0x03, 0xe3, 0x02, 0x77, 0xcd, + 0x01, 0x8b, 0x9a, 0xfe, 0xa8, 0xfe, 0xa8, 0x99, 0xec, 0x91, 0x91, 0x00, + 0x00, 0x02, 0x00, 0x41, 0x00, 0x00, 0x04, 0x24, 0x04, 0xcf, 0x00, 0x06, + 0x00, 0x0a, 0x00, 0x79, 0xb9, 0x00, 0x01, 0xff, 0xd8, 0x40, 0x11, 0x12, + 0x16, 0x48, 0x03, 0x28, 0x12, 0x16, 0x48, 0x06, 0x28, 0x12, 0x16, 0x48, + 0x89, 0x06, 0x01, 0x05, 0xb8, 0xff, 0xd8, 0x40, 0x3e, 0x12, 0x16, 0x48, + 0x86, 0x05, 0x01, 0x09, 0x30, 0x06, 0x50, 0x06, 0x02, 0x00, 0x06, 0x10, + 0x06, 0x20, 0x06, 0x40, 0x06, 0x60, 0x06, 0x80, 0x06, 0xa0, 0x06, 0x07, + 0x06, 0x07, 0x00, 0x40, 0x0c, 0x0f, 0x48, 0x00, 0x08, 0xad, 0x07, 0x06, + 0x05, 0x40, 0x04, 0x50, 0x04, 0x80, 0x04, 0x03, 0x04, 0x4f, 0x00, 0x5f, + 0x00, 0x8f, 0x00, 0x03, 0x00, 0x50, 0x02, 0x80, 0x02, 0x02, 0x02, 0x00, + 0x19, 0x2f, 0x5d, 0xcd, 0x5d, 0xcd, 0x5d, 0x33, 0x33, 0x18, 0x2f, 0xed, + 0x01, 0x2f, 0x2b, 0x33, 0x2f, 0x5d, 0x71, 0x33, 0x31, 0x30, 0x00, 0x5d, + 0x2b, 0x5d, 0x2b, 0x2b, 0x2b, 0x37, 0x35, 0x09, 0x01, 0x35, 0x01, 0x15, + 0x01, 0x35, 0x21, 0x15, 0x41, 0x03, 0x5a, 0xfc, 0xa6, 0x03, 0xe3, 0xfc, + 0x1d, 0x03, 0xe3, 0xec, 0x99, 0x01, 0x58, 0x01, 0x58, 0x9a, 0xfe, 0x75, + 0xcd, 0xfd, 0x89, 0x91, 0x91, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x9d, + 0x00, 0x00, 0x04, 0x37, 0x04, 0x81, 0x00, 0x04, 0x00, 0x09, 0x00, 0x23, + 0x40, 0x12, 0x69, 0x09, 0x79, 0x09, 0x02, 0x69, 0x07, 0x79, 0x07, 0x02, + 0x06, 0x04, 0x05, 0x00, 0x02, 0x08, 0x05, 0x00, 0x00, 0x2f, 0xcd, 0x2f, + 0xcd, 0x01, 0x2f, 0xcd, 0xdd, 0xcd, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x33, + 0x11, 0x09, 0x01, 0x11, 0x25, 0x21, 0x11, 0x09, 0x01, 0x9d, 0x01, 0xcd, + 0x01, 0xcd, 0xfc, 0xb6, 0x02, 0xfa, 0xfe, 0x83, 0xfe, 0x83, 0x02, 0x7b, + 0x02, 0x06, 0xfd, 0xfa, 0xfd, 0x85, 0x52, 0x02, 0x06, 0x01, 0xaa, 0xfe, + 0x56, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x64, 0x00, 0xb4, 0x04, 0x47, + 0x02, 0xf2, 0x00, 0x05, 0x00, 0x13, 0xb7, 0x05, 0xaa, 0x00, 0x02, 0x00, + 0x04, 0xad, 0x01, 0x00, 0x2f, 0xed, 0x2f, 0x01, 0x2f, 0x2f, 0xed, 0x31, + 0x30, 0x37, 0x11, 0x21, 0x15, 0x21, 0x11, 0x64, 0x03, 0xe3, 0xfc, 0xae, + 0xb4, 0x02, 0x3e, 0x92, 0xfe, 0x54, 0x00, 0x00, 0x00, 0x01, 0x02, 0x22, + 0xfd, 0x9a, 0x03, 0xd2, 0x06, 0xaa, 0x00, 0x17, 0x00, 0x1d, 0xb6, 0x04, + 0x20, 0x08, 0x0b, 0x48, 0x09, 0x00, 0xb8, 0x01, 0x00, 0xb4, 0x01, 0x13, + 0x0c, 0x06, 0x01, 0x00, 0x2f, 0x2f, 0xcd, 0xcd, 0x01, 0x2f, 0xed, 0xcc, + 0x31, 0x30, 0x2b, 0x01, 0x23, 0x11, 0x34, 0x37, 0x36, 0x33, 0x32, 0x16, + 0x15, 0x14, 0x06, 0x23, 0x22, 0x27, 0x2e, 0x01, 0x27, 0x26, 0x23, 0x22, + 0x07, 0x06, 0x15, 0x02, 0xb5, 0x93, 0x54, 0x52, 0x80, 0x3f, 0x4b, 0x33, + 0x25, 0x1e, 0x0d, 0x08, 0x1a, 0x14, 0x21, 0x10, 0x24, 0x09, 0x06, 0xfd, + 0x9a, 0x07, 0x56, 0xc4, 0x7b, 0x7b, 0x3f, 0x30, 0x28, 0x34, 0x0a, 0x04, + 0x18, 0x16, 0x27, 0x27, 0x23, 0x69, 0x00, 0x00, 0x00, 0x01, 0x01, 0x05, + 0xfd, 0x9a, 0x02, 0xb5, 0x06, 0xaa, 0x00, 0x1c, 0x00, 0x20, 0xb9, 0x00, + 0x04, 0xff, 0xe0, 0xb4, 0x08, 0x0b, 0x48, 0x0c, 0x02, 0xb8, 0x01, 0x00, + 0xb4, 0x1c, 0x18, 0x11, 0x07, 0x00, 0x00, 0x2f, 0x2f, 0xcd, 0xcd, 0x01, + 0x2f, 0xfd, 0xcc, 0x31, 0x30, 0x2b, 0x01, 0x33, 0x11, 0x14, 0x07, 0x0e, + 0x01, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x17, + 0x1e, 0x01, 0x17, 0x16, 0x33, 0x32, 0x37, 0x36, 0x35, 0x02, 0x22, 0x93, + 0x5a, 0x28, 0x67, 0x3e, 0x1e, 0x32, 0x25, 0x14, 0x0e, 0x17, 0x1f, 0x12, + 0x21, 0x1a, 0x05, 0x15, 0x0f, 0x1f, 0x10, 0x25, 0x08, 0x07, 0x06, 0xaa, + 0xf8, 0xa8, 0xcd, 0x7d, 0x38, 0x36, 0x10, 0x1d, 0x27, 0x18, 0x14, 0x22, + 0x18, 0x0e, 0x10, 0x02, 0x17, 0x14, 0x25, 0x29, 0x1f, 0x6a, 0x00, 0x00, + 0x00, 0x01, 0xff, 0xf6, 0x02, 0x25, 0x05, 0xb5, 0x02, 0xb6, 0x00, 0x03, + 0x00, 0x16, 0xb4, 0x03, 0x05, 0x00, 0x04, 0x00, 0xb8, 0x01, 0x02, 0xb1, + 0x01, 0xfc, 0x00, 0x3f, 0xed, 0x11, 0x01, 0x33, 0x11, 0x33, 0x31, 0x30, + 0x03, 0x35, 0x21, 0x15, 0x0a, 0x05, 0xbf, 0x02, 0x25, 0x91, 0x91, 0x00, + 0x00, 0x01, 0x01, 0xd8, 0xfd, 0x93, 0x02, 0x69, 0x07, 0x48, 0x00, 0x03, + 0x00, 0x18, 0xbb, 0x00, 0x02, 0x01, 0x00, 0x00, 0x03, 0x01, 0x06, 0xb4, + 0x04, 0x03, 0xfe, 0x00, 0xfa, 0x00, 0x3f, 0x3f, 0x01, 0x10, 0xf6, 0xed, + 0x31, 0x30, 0x01, 0x33, 0x11, 0x23, 0x01, 0xd8, 0x91, 0x91, 0x07, 0x48, + 0xf6, 0x4b, 0x00, 0x00, 0x00, 0x01, 0x02, 0x8d, 0xfd, 0x93, 0x05, 0xb5, + 0x02, 0xb6, 0x00, 0x05, 0x00, 0x22, 0xb2, 0x02, 0x07, 0x03, 0xba, 0x01, + 0x00, 0x00, 0x00, 0x01, 0x06, 0xb3, 0x06, 0x05, 0xfe, 0x03, 0xb8, 0x01, + 0x02, 0xb1, 0x00, 0xfc, 0x00, 0x3f, 0xed, 0x3f, 0x01, 0x10, 0xf6, 0xed, + 0x11, 0x33, 0x31, 0x30, 0x01, 0x21, 0x15, 0x21, 0x11, 0x23, 0x02, 0x8d, + 0x03, 0x28, 0xfd, 0x69, 0x91, 0x02, 0xb6, 0x91, 0xfb, 0x6e, 0x00, 0x00, + 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x03, 0x1e, 0x02, 0xb6, 0x00, 0x05, + 0x00, 0x22, 0xbb, 0x00, 0x02, 0x01, 0x00, 0x00, 0x05, 0x01, 0x06, 0xb5, + 0x06, 0x00, 0x06, 0x04, 0xfe, 0x05, 0xb8, 0x01, 0x02, 0xb1, 0x02, 0xfc, + 0x00, 0x3f, 0xed, 0x3f, 0x11, 0x01, 0x33, 0x10, 0xf6, 0xed, 0x31, 0x30, + 0x03, 0x35, 0x21, 0x11, 0x23, 0x11, 0x0a, 0x03, 0x28, 0x91, 0x02, 0x25, + 0x91, 0xfa, 0xdd, 0x04, 0x92, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x8d, + 0x02, 0x25, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x05, 0x00, 0x22, 0xb2, 0x04, + 0x07, 0x02, 0xbd, 0x01, 0x00, 0x00, 0x05, 0x01, 0x06, 0x00, 0x06, 0x00, + 0x05, 0x01, 0x02, 0xb3, 0x02, 0xfc, 0x00, 0xfa, 0x00, 0x3f, 0x3f, 0xed, + 0x01, 0x10, 0xf6, 0xed, 0x11, 0x33, 0x31, 0x30, 0x01, 0x33, 0x11, 0x21, + 0x15, 0x21, 0x02, 0x8d, 0x91, 0x02, 0x97, 0xfc, 0xd8, 0x07, 0x48, 0xfb, + 0x6e, 0x91, 0x00, 0x00, 0x00, 0x01, 0xff, 0xf6, 0x02, 0x25, 0x03, 0x1e, + 0x07, 0x48, 0x00, 0x05, 0x00, 0x22, 0xbb, 0x00, 0x05, 0x01, 0x00, 0x00, + 0x02, 0x01, 0x06, 0xb5, 0x06, 0x00, 0x06, 0x03, 0xfa, 0x05, 0xb8, 0x01, + 0x02, 0xb1, 0x02, 0xfc, 0x00, 0x3f, 0xed, 0x3f, 0x11, 0x01, 0x33, 0x10, + 0xf4, 0xed, 0x31, 0x30, 0x03, 0x35, 0x21, 0x11, 0x33, 0x11, 0x0a, 0x02, + 0x97, 0x91, 0x02, 0x25, 0x91, 0x04, 0x92, 0xfa, 0xdd, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x02, 0x8d, 0xfd, 0x93, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x07, + 0x00, 0x27, 0xb3, 0x04, 0x09, 0x05, 0x01, 0xba, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x06, 0xb3, 0x08, 0x07, 0xfe, 0x05, 0xb8, 0x01, 0x02, 0xb3, 0x02, + 0xfc, 0x00, 0xfa, 0x00, 0x3f, 0x3f, 0xed, 0x3f, 0x01, 0x10, 0xf6, 0xed, + 0x32, 0x11, 0x33, 0x31, 0x30, 0x01, 0x33, 0x11, 0x21, 0x15, 0x21, 0x11, + 0x23, 0x02, 0x8d, 0x91, 0x02, 0x97, 0xfd, 0x69, 0x91, 0x07, 0x48, 0xfb, + 0x6e, 0x91, 0xfb, 0x6e, 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x03, 0x1e, + 0x07, 0x48, 0x00, 0x07, 0x00, 0x27, 0xb1, 0x07, 0x04, 0xba, 0x01, 0x00, + 0x00, 0x02, 0x01, 0x06, 0xb7, 0x08, 0x00, 0x08, 0x06, 0xfe, 0x03, 0xfa, + 0x07, 0xb8, 0x01, 0x02, 0xb1, 0x02, 0xfc, 0x00, 0x3f, 0xed, 0x3f, 0x3f, + 0x11, 0x01, 0x33, 0x10, 0xf4, 0xed, 0x33, 0x31, 0x30, 0x03, 0x35, 0x21, + 0x11, 0x33, 0x11, 0x23, 0x11, 0x0a, 0x02, 0x97, 0x91, 0x91, 0x02, 0x25, + 0x91, 0x04, 0x92, 0xf6, 0x4b, 0x04, 0x92, 0x00, 0x00, 0x01, 0xff, 0xf6, + 0xfd, 0x93, 0x05, 0xb5, 0x02, 0xb6, 0x00, 0x07, 0x00, 0x28, 0xb2, 0x03, + 0x09, 0x04, 0xba, 0x01, 0x00, 0x00, 0x07, 0x01, 0x06, 0xb6, 0x08, 0x00, + 0x08, 0x06, 0xfe, 0x04, 0x00, 0xb8, 0x01, 0x02, 0xb1, 0x01, 0xfc, 0x00, + 0x3f, 0xed, 0x32, 0x3f, 0x11, 0x01, 0x33, 0x10, 0xf6, 0xed, 0x11, 0x33, + 0x31, 0x30, 0x03, 0x35, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x0a, 0x05, + 0xbf, 0xfd, 0x69, 0x91, 0x02, 0x25, 0x91, 0x91, 0xfb, 0x6e, 0x04, 0x92, + 0x00, 0x01, 0xff, 0xf6, 0x02, 0x25, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x07, + 0x00, 0x28, 0xb2, 0x07, 0x09, 0x05, 0xba, 0x01, 0x00, 0x00, 0x02, 0x01, + 0x06, 0xb6, 0x08, 0x00, 0x08, 0x03, 0xfa, 0x05, 0x00, 0xb8, 0x01, 0x02, + 0xb1, 0x01, 0xfc, 0x00, 0x3f, 0xed, 0x33, 0x3f, 0x11, 0x01, 0x33, 0x10, + 0xf4, 0xed, 0x11, 0x33, 0x31, 0x30, 0x03, 0x35, 0x21, 0x11, 0x33, 0x11, + 0x21, 0x15, 0x0a, 0x02, 0x97, 0x91, 0x02, 0x97, 0x02, 0x25, 0x91, 0x04, + 0x92, 0xfb, 0x6e, 0x91, 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x05, 0xb5, + 0x07, 0x48, 0x00, 0x0b, 0x00, 0x33, 0xb3, 0x07, 0x0d, 0x05, 0x08, 0xbb, + 0x01, 0x00, 0x00, 0x02, 0x00, 0x0b, 0x01, 0x06, 0x40, 0x09, 0x0c, 0x00, + 0x0c, 0x0a, 0xfe, 0x03, 0xfa, 0x08, 0x0b, 0xb8, 0x01, 0x02, 0xb2, 0x05, + 0x02, 0xfc, 0x00, 0x3f, 0x33, 0xed, 0x32, 0x3f, 0x3f, 0x11, 0x01, 0x33, + 0x10, 0xf6, 0x32, 0xed, 0x32, 0x11, 0x33, 0x31, 0x30, 0x03, 0x35, 0x21, + 0x11, 0x33, 0x11, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x0a, 0x02, 0x97, + 0x91, 0x02, 0x97, 0xfd, 0x69, 0x91, 0x02, 0x25, 0x91, 0x04, 0x92, 0xfb, + 0x6e, 0x91, 0xfb, 0x6e, 0x04, 0x92, 0x00, 0x00, 0x00, 0x02, 0xff, 0xf6, + 0x01, 0x71, 0x05, 0xb5, 0x03, 0x6a, 0x00, 0x03, 0x00, 0x07, 0x00, 0x25, + 0xb7, 0x03, 0x07, 0x07, 0x09, 0x00, 0x04, 0x08, 0x04, 0xb8, 0x01, 0x02, + 0xb2, 0x05, 0xfd, 0x00, 0xb8, 0x01, 0x02, 0xb1, 0x01, 0xfb, 0x00, 0x3f, + 0xed, 0x3f, 0xed, 0x11, 0x01, 0x33, 0x32, 0x11, 0x33, 0x11, 0x33, 0x31, + 0x30, 0x03, 0x35, 0x21, 0x15, 0x01, 0x35, 0x21, 0x15, 0x0a, 0x05, 0xbf, + 0xfa, 0x41, 0x05, 0xbf, 0x02, 0xd9, 0x91, 0x91, 0xfe, 0x98, 0x91, 0x91, + 0x00, 0x02, 0x01, 0xd9, 0xfd, 0x93, 0x03, 0xd2, 0x07, 0x48, 0x00, 0x03, + 0x00, 0x07, 0x00, 0x2a, 0x41, 0x09, 0x00, 0x05, 0x01, 0x00, 0x00, 0x04, + 0x01, 0x07, 0x00, 0x08, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x04, + 0xb6, 0x08, 0x07, 0x03, 0xfe, 0x04, 0x00, 0xfa, 0x00, 0x3f, 0x32, 0x3f, + 0x33, 0x01, 0x10, 0xf6, 0xed, 0x10, 0xf4, 0xed, 0x31, 0x30, 0x01, 0x33, + 0x11, 0x23, 0x01, 0x33, 0x11, 0x23, 0x01, 0xd9, 0x91, 0x91, 0x01, 0x68, + 0x91, 0x91, 0x07, 0x48, 0xf6, 0x4b, 0x09, 0xb5, 0xf6, 0x4b, 0x00, 0x00, + 0x00, 0x01, 0x02, 0x8d, 0xfd, 0x93, 0x05, 0xb5, 0x03, 0x6a, 0x00, 0x09, + 0x00, 0x31, 0xb5, 0x02, 0x06, 0x06, 0x0b, 0x07, 0x03, 0xba, 0x01, 0x00, + 0x00, 0x00, 0x01, 0x06, 0xb3, 0x0a, 0x09, 0xfe, 0x07, 0xb8, 0x01, 0x02, + 0xb2, 0x04, 0xfd, 0x03, 0xb8, 0x01, 0x02, 0xb1, 0x00, 0xfb, 0x00, 0x3f, + 0xed, 0x3f, 0xed, 0x3f, 0x01, 0x10, 0xf6, 0xed, 0x32, 0x11, 0x33, 0x11, + 0x33, 0x31, 0x30, 0x01, 0x21, 0x15, 0x21, 0x15, 0x21, 0x15, 0x21, 0x11, + 0x23, 0x02, 0x8d, 0x03, 0x28, 0xfd, 0x69, 0x02, 0x97, 0xfd, 0x69, 0x91, + 0x03, 0x6a, 0x91, 0xd7, 0x91, 0xfc, 0x22, 0x00, 0x00, 0x01, 0x01, 0xd9, + 0xfd, 0x93, 0x05, 0xb5, 0x02, 0xb6, 0x00, 0x09, 0x00, 0x33, 0xb2, 0x01, + 0x0b, 0x06, 0xbf, 0x01, 0x00, 0x00, 0x09, 0x01, 0x04, 0x00, 0x0a, 0x00, + 0x02, 0x01, 0x00, 0x00, 0x05, 0x01, 0x07, 0xb2, 0x0a, 0x02, 0x06, 0xb8, + 0x01, 0x02, 0xb4, 0x09, 0xfc, 0x04, 0x08, 0xfe, 0x00, 0x3f, 0x33, 0x3f, + 0xed, 0x32, 0x01, 0x10, 0xf4, 0xed, 0x10, 0xf6, 0xed, 0x11, 0x33, 0x31, + 0x30, 0x01, 0x15, 0x21, 0x11, 0x23, 0x11, 0x23, 0x11, 0x23, 0x11, 0x05, + 0xb5, 0xfe, 0x1d, 0x91, 0xd7, 0x91, 0x02, 0xb6, 0x91, 0xfb, 0x6e, 0x04, + 0x92, 0xfb, 0x6e, 0x05, 0x23, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0xd9, + 0xfd, 0x93, 0x05, 0xb5, 0x03, 0x6a, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x3f, + 0xb4, 0x02, 0x08, 0x08, 0x0d, 0x09, 0x41, 0x0b, 0x01, 0x00, 0x00, 0x06, + 0x01, 0x07, 0x00, 0x0c, 0x00, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x04, + 0x00, 0x0c, 0x00, 0x09, 0x01, 0x02, 0xb5, 0x06, 0xfd, 0x0b, 0x05, 0xfe, + 0x03, 0xb8, 0x01, 0x02, 0xb1, 0x00, 0xfb, 0x00, 0x3f, 0xed, 0x3f, 0x33, + 0x3f, 0xed, 0x01, 0x10, 0xf6, 0xed, 0x10, 0xf4, 0xed, 0x11, 0x33, 0x11, + 0x33, 0x31, 0x30, 0x01, 0x21, 0x15, 0x21, 0x11, 0x23, 0x01, 0x21, 0x15, + 0x21, 0x11, 0x23, 0x01, 0xd9, 0x03, 0xdc, 0xfc, 0xb5, 0x91, 0x01, 0x68, + 0x02, 0x74, 0xfe, 0x1d, 0x91, 0x03, 0x6a, 0x91, 0xfa, 0xba, 0x04, 0x6f, + 0x91, 0xfc, 0x22, 0x00, 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x03, 0x1e, + 0x03, 0x6a, 0x00, 0x09, 0x00, 0x31, 0xb1, 0x09, 0x06, 0xba, 0x01, 0x00, + 0x00, 0x03, 0x01, 0x06, 0xb7, 0x0a, 0x04, 0x00, 0x00, 0x0a, 0x08, 0xfe, + 0x03, 0xb8, 0x01, 0x02, 0xb2, 0x06, 0xfb, 0x09, 0xb8, 0x01, 0x02, 0xb1, + 0x02, 0xfd, 0x00, 0x3f, 0xed, 0x3f, 0xed, 0x3f, 0x11, 0x01, 0x33, 0x11, + 0x33, 0x10, 0xf4, 0xed, 0x33, 0x31, 0x30, 0x03, 0x35, 0x21, 0x35, 0x21, + 0x35, 0x21, 0x11, 0x23, 0x11, 0x0a, 0x02, 0x97, 0xfd, 0x69, 0x03, 0x28, + 0x91, 0x01, 0x71, 0x91, 0xd7, 0x91, 0xfa, 0x29, 0x03, 0xde, 0x00, 0x00, + 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x03, 0xd2, 0x02, 0xb6, 0x00, 0x09, + 0x00, 0x34, 0x41, 0x09, 0x00, 0x06, 0x01, 0x00, 0x00, 0x09, 0x01, 0x04, + 0x00, 0x0a, 0x00, 0x02, 0x01, 0x00, 0x00, 0x05, 0x01, 0x07, 0xb7, 0x0a, + 0x00, 0x0a, 0x04, 0x08, 0xfe, 0x06, 0x00, 0xb8, 0x01, 0x02, 0xb1, 0x01, + 0xfc, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0x33, 0x11, 0x01, 0x33, 0x10, 0xf4, + 0xed, 0x10, 0xf6, 0xed, 0x31, 0x30, 0x03, 0x35, 0x21, 0x11, 0x23, 0x11, + 0x23, 0x11, 0x23, 0x11, 0x0a, 0x03, 0xdc, 0x91, 0xd7, 0x91, 0x02, 0x25, + 0x91, 0xfa, 0xdd, 0x04, 0x92, 0xfb, 0x6e, 0x04, 0x92, 0x00, 0x00, 0x00, + 0x00, 0x02, 0xff, 0xf6, 0xfd, 0x93, 0x03, 0xd2, 0x03, 0x6a, 0x00, 0x05, + 0x00, 0x0b, 0x00, 0x3f, 0xb4, 0x04, 0x09, 0x09, 0x0c, 0x0b, 0x41, 0x0b, + 0x01, 0x00, 0x00, 0x08, 0x01, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x03, 0x01, 0x07, 0x00, 0x0c, 0x00, 0x09, 0x01, 0x02, 0xb5, 0x0a, + 0xfd, 0x02, 0x07, 0xfe, 0x04, 0xb8, 0x01, 0x02, 0xb1, 0x05, 0xfb, 0x00, + 0x3f, 0xed, 0x3f, 0x33, 0x3f, 0xed, 0x01, 0x10, 0xf4, 0xed, 0x10, 0xf6, + 0xed, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x01, 0x11, 0x23, 0x11, 0x21, + 0x35, 0x01, 0x23, 0x11, 0x21, 0x35, 0x21, 0x03, 0xd2, 0x91, 0xfc, 0xb5, + 0x02, 0x74, 0x91, 0xfe, 0x1d, 0x02, 0x74, 0x03, 0x6a, 0xfa, 0x29, 0x05, + 0x46, 0x91, 0xfa, 0x29, 0x03, 0xde, 0x91, 0x00, 0x00, 0x01, 0x02, 0x8d, + 0x01, 0x71, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x09, 0x00, 0x31, 0xb5, 0x04, + 0x08, 0x08, 0x0b, 0x02, 0x06, 0xbd, 0x01, 0x00, 0x00, 0x09, 0x01, 0x06, + 0x00, 0x0a, 0x00, 0x09, 0x01, 0x02, 0xb2, 0x06, 0xfd, 0x05, 0xb8, 0x01, + 0x02, 0xb3, 0x02, 0xfb, 0x00, 0xfa, 0x00, 0x3f, 0x3f, 0xed, 0x3f, 0xed, + 0x01, 0x10, 0xf6, 0xed, 0x32, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x01, + 0x33, 0x11, 0x21, 0x15, 0x21, 0x15, 0x21, 0x15, 0x21, 0x02, 0x8d, 0x91, + 0x02, 0x97, 0xfd, 0x69, 0x02, 0x97, 0xfc, 0xd8, 0x07, 0x48, 0xfc, 0x22, + 0x91, 0xd7, 0x91, 0x00, 0x00, 0x01, 0x01, 0xd9, 0x02, 0x25, 0x05, 0xb5, + 0x07, 0x48, 0x00, 0x09, 0x00, 0x34, 0xb2, 0x04, 0x0b, 0x02, 0x41, 0x0b, + 0x01, 0x00, 0x00, 0x09, 0x01, 0x07, 0x00, 0x0a, 0x00, 0x08, 0x01, 0x00, + 0x00, 0x05, 0x01, 0x04, 0x00, 0x0a, 0x00, 0x05, 0x01, 0x02, 0xb5, 0x02, + 0x08, 0xfc, 0x00, 0x06, 0xfa, 0x00, 0x3f, 0x33, 0x3f, 0x33, 0xed, 0x01, + 0x10, 0xf6, 0xed, 0x10, 0xf4, 0xed, 0x11, 0x33, 0x31, 0x30, 0x01, 0x33, + 0x11, 0x21, 0x15, 0x21, 0x11, 0x33, 0x11, 0x33, 0x03, 0x41, 0x91, 0x01, + 0xe3, 0xfc, 0x24, 0x91, 0xd7, 0x07, 0x48, 0xfb, 0x6e, 0x91, 0x05, 0x23, + 0xfb, 0x6e, 0x00, 0x00, 0x00, 0x02, 0x01, 0xd9, 0x01, 0x71, 0x05, 0xb5, + 0x07, 0x48, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x3f, 0xb4, 0x0a, 0x04, 0x04, + 0x0d, 0x08, 0x41, 0x0b, 0x01, 0x00, 0x00, 0x0b, 0x01, 0x07, 0x00, 0x0c, + 0x00, 0x02, 0x01, 0x00, 0x00, 0x05, 0x01, 0x04, 0x00, 0x0c, 0x00, 0x0b, + 0x01, 0x02, 0xb2, 0x08, 0xfb, 0x05, 0xb8, 0x01, 0x02, 0xb4, 0x02, 0xfd, + 0x06, 0x00, 0xfa, 0x00, 0x3f, 0x32, 0x3f, 0xed, 0x3f, 0xed, 0x01, 0x10, + 0xf6, 0xed, 0x10, 0xf4, 0xed, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x01, + 0x33, 0x11, 0x21, 0x15, 0x21, 0x01, 0x33, 0x11, 0x21, 0x15, 0x21, 0x01, + 0xd9, 0x91, 0x03, 0x4b, 0xfc, 0x24, 0x01, 0x68, 0x91, 0x01, 0xe3, 0xfd, + 0x8c, 0x07, 0x48, 0xfa, 0xba, 0x91, 0x05, 0xd7, 0xfc, 0x22, 0x91, 0x00, + 0x00, 0x01, 0xff, 0xf6, 0x01, 0x71, 0x03, 0x1e, 0x07, 0x48, 0x00, 0x09, + 0x00, 0x32, 0xbc, 0x00, 0x09, 0x01, 0x00, 0x00, 0x06, 0x00, 0x02, 0x01, + 0x06, 0xb7, 0x0a, 0x04, 0x00, 0x00, 0x0a, 0x07, 0xfa, 0x03, 0xb8, 0x01, + 0x02, 0xb2, 0x06, 0xfb, 0x09, 0xb8, 0x01, 0x02, 0xb1, 0x02, 0xfd, 0x00, + 0x3f, 0xed, 0x3f, 0xed, 0x3f, 0x11, 0x01, 0x33, 0x11, 0x33, 0x10, 0xf4, + 0x32, 0xed, 0x31, 0x30, 0x03, 0x35, 0x21, 0x35, 0x21, 0x35, 0x21, 0x11, + 0x33, 0x11, 0x0a, 0x02, 0x97, 0xfd, 0x69, 0x02, 0x97, 0x91, 0x01, 0x71, + 0x91, 0xd7, 0x91, 0x03, 0xde, 0xfa, 0x29, 0x00, 0x00, 0x01, 0xff, 0xf6, + 0x02, 0x25, 0x03, 0xd2, 0x07, 0x48, 0x00, 0x09, 0x00, 0x34, 0x41, 0x09, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x07, 0x01, 0x07, 0x00, 0x0a, 0x00, 0x06, + 0x01, 0x00, 0x00, 0x03, 0x01, 0x04, 0xb7, 0x0a, 0x01, 0x0a, 0x08, 0x04, + 0xfa, 0x06, 0x01, 0xb8, 0x01, 0x02, 0xb1, 0x02, 0xfc, 0x00, 0x3f, 0xed, + 0x33, 0x3f, 0x33, 0x11, 0x01, 0x33, 0x10, 0xf4, 0xed, 0x10, 0xf4, 0xed, + 0x31, 0x30, 0x01, 0x21, 0x35, 0x21, 0x11, 0x33, 0x11, 0x33, 0x11, 0x33, + 0x03, 0xd2, 0xfc, 0x24, 0x01, 0xe3, 0x91, 0xd7, 0x91, 0x02, 0x25, 0x91, + 0x04, 0x92, 0xfb, 0x6e, 0x04, 0x92, 0x00, 0x00, 0x00, 0x02, 0xff, 0xf6, + 0x01, 0x71, 0x03, 0xd2, 0x07, 0x48, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x3f, + 0x41, 0x09, 0x00, 0x08, 0x01, 0x00, 0x00, 0x0b, 0x01, 0x04, 0x00, 0x0c, + 0x00, 0x00, 0x01, 0x00, 0x00, 0x03, 0x01, 0x07, 0xb5, 0x0c, 0x09, 0x01, + 0x01, 0x0c, 0x09, 0xb8, 0x01, 0x02, 0xb5, 0x0a, 0xfb, 0x04, 0x06, 0xfa, + 0x01, 0xb8, 0x01, 0x02, 0xb1, 0x02, 0xfd, 0x00, 0x3f, 0xed, 0x3f, 0x33, + 0x3f, 0xed, 0x11, 0x01, 0x33, 0x11, 0x33, 0x10, 0xf4, 0xed, 0x10, 0xf4, + 0xed, 0x31, 0x30, 0x01, 0x21, 0x35, 0x21, 0x11, 0x33, 0x21, 0x33, 0x11, + 0x21, 0x35, 0x21, 0x03, 0xd2, 0xfc, 0x24, 0x03, 0x4b, 0x91, 0xfe, 0x07, + 0x91, 0xfd, 0x8c, 0x01, 0xe3, 0x01, 0x71, 0x91, 0x05, 0x46, 0xfb, 0x91, + 0x91, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x8d, 0xfd, 0x93, 0x05, 0xb5, + 0x07, 0x48, 0x00, 0x0b, 0x00, 0x36, 0xb6, 0x04, 0x08, 0x08, 0x0d, 0x06, + 0x02, 0x0a, 0xba, 0x01, 0x00, 0x00, 0x0b, 0x01, 0x06, 0xb3, 0x0c, 0x0b, + 0xfe, 0x09, 0xb8, 0x01, 0x02, 0xb2, 0x06, 0xfd, 0x05, 0xb8, 0x01, 0x02, + 0xb3, 0x02, 0xfb, 0x00, 0xfa, 0x00, 0x3f, 0x3f, 0xed, 0x3f, 0xed, 0x3f, + 0x01, 0x10, 0xf6, 0xed, 0x32, 0x32, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, + 0x01, 0x33, 0x11, 0x21, 0x15, 0x21, 0x15, 0x21, 0x15, 0x21, 0x11, 0x23, + 0x02, 0x8d, 0x91, 0x02, 0x97, 0xfd, 0x69, 0x02, 0x97, 0xfd, 0x69, 0x91, + 0x07, 0x48, 0xfc, 0x22, 0x91, 0xd7, 0x91, 0xfc, 0x22, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x01, 0xd9, 0xfd, 0x93, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x07, + 0x00, 0x0b, 0x00, 0x38, 0xb2, 0x04, 0x0d, 0x0a, 0xba, 0x01, 0x00, 0x00, + 0x0b, 0x01, 0x04, 0xb2, 0x0c, 0x02, 0x06, 0xba, 0x01, 0x00, 0x00, 0x07, + 0x01, 0x07, 0xb7, 0x0c, 0x07, 0x0b, 0xfe, 0x00, 0x08, 0xfa, 0x05, 0xb8, + 0x01, 0x02, 0xb1, 0x02, 0xfc, 0x00, 0x3f, 0xed, 0x3f, 0x33, 0x3f, 0x33, + 0x01, 0x10, 0xf4, 0xed, 0x32, 0x10, 0xf6, 0xed, 0x11, 0x33, 0x31, 0x30, + 0x01, 0x33, 0x11, 0x21, 0x15, 0x21, 0x11, 0x23, 0x01, 0x33, 0x11, 0x23, + 0x03, 0x41, 0x91, 0x01, 0xe3, 0xfe, 0x1d, 0x91, 0xfe, 0x98, 0x91, 0x91, + 0x07, 0x48, 0xfb, 0x6e, 0x91, 0xfb, 0x6e, 0x09, 0xb5, 0xf6, 0x4b, 0x00, + 0x00, 0x03, 0x01, 0xd9, 0xfd, 0x93, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x03, + 0x00, 0x09, 0x00, 0x0f, 0x00, 0x49, 0xb5, 0x0e, 0x06, 0x06, 0x11, 0x0c, + 0x08, 0x41, 0x0c, 0x01, 0x00, 0x00, 0x0f, 0x00, 0x09, 0x01, 0x07, 0x00, + 0x10, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x04, 0x00, 0x10, 0x00, + 0x0f, 0x01, 0x02, 0xb2, 0x0c, 0xfb, 0x07, 0xb8, 0x01, 0x02, 0xb7, 0x04, + 0xfd, 0x0a, 0x02, 0xfa, 0x09, 0x01, 0xfe, 0x00, 0x3f, 0x33, 0x3f, 0x33, + 0x3f, 0xed, 0x3f, 0xed, 0x01, 0x10, 0xf6, 0xed, 0x10, 0xf4, 0x32, 0xed, + 0x32, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x01, 0x23, 0x11, 0x33, 0x13, + 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x33, 0x11, 0x21, 0x15, 0x21, 0x02, + 0x6a, 0x91, 0x91, 0xd7, 0x02, 0x74, 0xfe, 0x1d, 0x91, 0x91, 0x01, 0xe3, + 0xfd, 0x8c, 0xfd, 0x93, 0x09, 0xb5, 0xfa, 0xba, 0x91, 0xfc, 0x22, 0x09, + 0xb5, 0xfc, 0x22, 0x91, 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x03, 0x1e, + 0x07, 0x48, 0x00, 0x0b, 0x00, 0x38, 0xb9, 0x00, 0x09, 0x01, 0x00, 0xb2, + 0x06, 0x02, 0x0a, 0xb8, 0x01, 0x06, 0x40, 0x0a, 0x0c, 0x04, 0x00, 0x00, + 0x0c, 0x0a, 0xfe, 0x07, 0xfa, 0x03, 0xb8, 0x01, 0x02, 0xb2, 0x06, 0xfb, + 0x0b, 0xb8, 0x01, 0x02, 0xb1, 0x02, 0xfd, 0x00, 0x3f, 0xed, 0x3f, 0xed, + 0x3f, 0x3f, 0x11, 0x01, 0x33, 0x11, 0x33, 0x10, 0xf6, 0x32, 0x32, 0xed, + 0x31, 0x30, 0x03, 0x35, 0x21, 0x35, 0x21, 0x35, 0x21, 0x11, 0x33, 0x11, + 0x23, 0x11, 0x0a, 0x02, 0x97, 0xfd, 0x69, 0x02, 0x97, 0x91, 0x91, 0x01, + 0x71, 0x91, 0xd7, 0x91, 0x03, 0xde, 0xf6, 0x4b, 0x03, 0xde, 0x00, 0x00, + 0x00, 0x02, 0xff, 0xf6, 0xfd, 0x93, 0x03, 0xd2, 0x07, 0x48, 0x00, 0x07, + 0x00, 0x0b, 0x00, 0x3b, 0x41, 0x0a, 0x00, 0x0a, 0x01, 0x00, 0x00, 0x0b, + 0x01, 0x07, 0x00, 0x0c, 0x00, 0x05, 0x01, 0x00, 0x00, 0x02, 0x00, 0x06, + 0x01, 0x04, 0x40, 0x0a, 0x0c, 0x00, 0x0c, 0x0b, 0x06, 0xfe, 0x08, 0x03, + 0xfa, 0x07, 0xb8, 0x01, 0x02, 0xb1, 0x02, 0xfc, 0x00, 0x3f, 0xed, 0x3f, + 0x33, 0x3f, 0x33, 0x11, 0x01, 0x33, 0x10, 0xf6, 0x32, 0xed, 0x10, 0xf4, + 0xed, 0x31, 0x30, 0x03, 0x35, 0x21, 0x11, 0x33, 0x11, 0x23, 0x11, 0x01, + 0x33, 0x11, 0x23, 0x0a, 0x01, 0xe3, 0x91, 0x91, 0x01, 0x68, 0x91, 0x91, + 0x02, 0x25, 0x91, 0x04, 0x92, 0xf6, 0x4b, 0x04, 0x92, 0x05, 0x23, 0xf6, + 0x4b, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xf6, 0xfd, 0x93, 0x03, 0xd2, + 0x07, 0x48, 0x00, 0x03, 0x00, 0x09, 0x00, 0x0f, 0x00, 0x49, 0xb5, 0x07, + 0x0d, 0x0d, 0x10, 0x06, 0x0a, 0x41, 0x0c, 0x01, 0x00, 0x00, 0x09, 0x00, + 0x0b, 0x01, 0x04, 0x00, 0x10, 0x00, 0x02, 0x01, 0x00, 0x00, 0x03, 0x01, + 0x07, 0x00, 0x10, 0x00, 0x0c, 0x01, 0x02, 0xb5, 0x0f, 0xfd, 0x03, 0x0b, + 0xfe, 0x06, 0xb8, 0x01, 0x02, 0xb4, 0x09, 0xfb, 0x00, 0x04, 0xfa, 0x00, + 0x3f, 0x33, 0x3f, 0xed, 0x3f, 0x33, 0x3f, 0xed, 0x01, 0x10, 0xf4, 0xed, + 0x10, 0xf6, 0x32, 0xed, 0x32, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x01, + 0x33, 0x11, 0x23, 0x01, 0x33, 0x11, 0x21, 0x35, 0x21, 0x13, 0x23, 0x11, + 0x21, 0x35, 0x21, 0x03, 0x41, 0x91, 0x91, 0xfe, 0x98, 0x91, 0xfd, 0x8c, + 0x01, 0xe3, 0x91, 0x91, 0xfe, 0x1d, 0x02, 0x74, 0x07, 0x48, 0xf6, 0x4b, + 0x09, 0xb5, 0xfb, 0x91, 0x91, 0xfa, 0x29, 0x03, 0xde, 0x91, 0x00, 0x00, + 0x00, 0x02, 0xff, 0xf6, 0xfd, 0x93, 0x05, 0xb5, 0x03, 0x6a, 0x00, 0x07, + 0x00, 0x0b, 0x00, 0x39, 0xb4, 0x0b, 0x03, 0x03, 0x0d, 0x04, 0xba, 0x01, + 0x00, 0x00, 0x07, 0x01, 0x06, 0xb5, 0x0c, 0x08, 0x00, 0x00, 0x0c, 0x08, + 0xb8, 0x01, 0x02, 0xb5, 0x09, 0xfb, 0x06, 0xfe, 0x04, 0x00, 0xb8, 0x01, + 0x02, 0xb1, 0x01, 0xfd, 0x00, 0x3f, 0xed, 0x32, 0x3f, 0x3f, 0xed, 0x11, + 0x01, 0x33, 0x11, 0x33, 0x10, 0xf6, 0xed, 0x11, 0x33, 0x11, 0x33, 0x31, + 0x30, 0x03, 0x35, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x01, 0x35, 0x21, + 0x15, 0x0a, 0x05, 0xbf, 0xfd, 0x69, 0x91, 0xfd, 0x69, 0x05, 0xbf, 0x01, + 0x71, 0x91, 0x91, 0xfc, 0x22, 0x03, 0xde, 0x01, 0x68, 0x91, 0x91, 0x00, + 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x05, 0xb5, 0x02, 0xb6, 0x00, 0x0b, + 0x00, 0x3a, 0xb2, 0x03, 0x0d, 0x08, 0xbf, 0x01, 0x00, 0x00, 0x0b, 0x01, + 0x04, 0x00, 0x0c, 0x00, 0x04, 0x01, 0x00, 0x00, 0x07, 0x01, 0x07, 0x40, + 0x09, 0x0c, 0x00, 0x0c, 0x06, 0x0a, 0xfe, 0x08, 0x04, 0x00, 0xb8, 0x01, + 0x02, 0xb1, 0x01, 0xfc, 0x00, 0x3f, 0xed, 0x32, 0x32, 0x3f, 0x33, 0x11, + 0x01, 0x33, 0x10, 0xf4, 0xed, 0x10, 0xf6, 0xed, 0x11, 0x33, 0x31, 0x30, + 0x03, 0x35, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, 0x23, 0x11, 0x23, 0x11, + 0x0a, 0x05, 0xbf, 0xfe, 0x1d, 0x91, 0xd7, 0x91, 0x02, 0x25, 0x91, 0x91, + 0xfb, 0x6e, 0x04, 0x92, 0xfb, 0x6e, 0x04, 0x92, 0x00, 0x03, 0xff, 0xf6, + 0xfd, 0x93, 0x05, 0xb5, 0x03, 0x6a, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x0f, + 0x00, 0x4a, 0xb4, 0x0d, 0x08, 0x08, 0x11, 0x09, 0xba, 0x01, 0x00, 0x00, + 0x06, 0x01, 0x07, 0xb5, 0x10, 0x0e, 0x03, 0x03, 0x10, 0x05, 0xbd, 0x01, + 0x00, 0x00, 0x02, 0x01, 0x04, 0x00, 0x10, 0x00, 0x0e, 0x01, 0x02, 0xb3, + 0x0f, 0xfb, 0x09, 0x03, 0xb8, 0x01, 0x02, 0xb5, 0x06, 0x04, 0xfd, 0x0b, + 0x01, 0xfe, 0x00, 0x3f, 0x33, 0x3f, 0x33, 0xed, 0x32, 0x3f, 0xed, 0x01, + 0x10, 0xf6, 0xed, 0x11, 0x33, 0x11, 0x33, 0x10, 0xf4, 0xed, 0x11, 0x33, + 0x11, 0x33, 0x31, 0x30, 0x01, 0x23, 0x11, 0x21, 0x35, 0x21, 0x33, 0x21, + 0x15, 0x21, 0x11, 0x23, 0x01, 0x15, 0x21, 0x35, 0x02, 0x6a, 0x91, 0xfe, + 0x1d, 0x02, 0x74, 0xd7, 0x02, 0x74, 0xfe, 0x1d, 0x91, 0x02, 0x74, 0xfa, + 0x41, 0xfd, 0x93, 0x03, 0xde, 0x91, 0x91, 0xfc, 0x22, 0x05, 0xd7, 0x91, + 0x91, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xf6, 0x01, 0x71, 0x05, 0xb5, + 0x07, 0x48, 0x00, 0x07, 0x00, 0x0b, 0x00, 0x3a, 0x40, 0x09, 0x07, 0x0b, + 0x0b, 0x0d, 0x00, 0x08, 0x08, 0x0c, 0x05, 0xbd, 0x01, 0x00, 0x00, 0x02, + 0x01, 0x06, 0x00, 0x0c, 0x00, 0x08, 0x01, 0x02, 0xb5, 0x09, 0xfd, 0x03, + 0xfa, 0x05, 0x00, 0xb8, 0x01, 0x02, 0xb1, 0x01, 0xfb, 0x00, 0x3f, 0xed, + 0x33, 0x3f, 0x3f, 0xed, 0x01, 0x10, 0xf4, 0xed, 0x11, 0x33, 0x11, 0x33, + 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x03, 0x35, 0x21, 0x11, 0x33, 0x11, + 0x21, 0x15, 0x01, 0x35, 0x21, 0x15, 0x0a, 0x02, 0x97, 0x91, 0x02, 0x97, + 0xfa, 0x41, 0x05, 0xbf, 0x02, 0xd9, 0x91, 0x03, 0xde, 0xfc, 0x22, 0x91, + 0xfe, 0x98, 0x91, 0x91, 0x00, 0x01, 0xff, 0xf6, 0x02, 0x25, 0x05, 0xb5, + 0x07, 0x48, 0x00, 0x0b, 0x00, 0x3a, 0xb2, 0x0b, 0x0d, 0x09, 0xbf, 0x01, + 0x00, 0x00, 0x06, 0x01, 0x07, 0x00, 0x0c, 0x00, 0x05, 0x01, 0x00, 0x00, + 0x02, 0x01, 0x04, 0x40, 0x09, 0x0c, 0x00, 0x0c, 0x07, 0x03, 0xfa, 0x09, + 0x05, 0x00, 0xb8, 0x01, 0x02, 0xb1, 0x01, 0xfc, 0x00, 0x3f, 0xed, 0x33, + 0x33, 0x3f, 0x33, 0x11, 0x01, 0x33, 0x10, 0xf4, 0xed, 0x10, 0xf4, 0xed, + 0x11, 0x33, 0x31, 0x30, 0x03, 0x35, 0x21, 0x11, 0x33, 0x11, 0x33, 0x11, + 0x33, 0x11, 0x21, 0x15, 0x0a, 0x01, 0xe3, 0x91, 0xd7, 0x91, 0x01, 0xe3, + 0x02, 0x25, 0x91, 0x04, 0x92, 0xfb, 0x6e, 0x04, 0x92, 0xfb, 0x6e, 0x91, + 0x00, 0x03, 0xff, 0xf6, 0x01, 0x71, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x05, + 0x00, 0x0b, 0x00, 0x0f, 0x00, 0x4c, 0x40, 0x09, 0x04, 0x0f, 0x0f, 0x11, + 0x09, 0x0c, 0x0c, 0x10, 0x08, 0x41, 0x0b, 0x01, 0x00, 0x00, 0x0b, 0x01, + 0x04, 0x00, 0x10, 0x00, 0x02, 0x01, 0x00, 0x00, 0x05, 0x01, 0x07, 0x00, + 0x10, 0x00, 0x0c, 0x01, 0x02, 0xb3, 0x0d, 0xfd, 0x05, 0x09, 0xb8, 0x01, + 0x02, 0xb5, 0x02, 0x0a, 0xfb, 0x00, 0x06, 0xfa, 0x00, 0x3f, 0x33, 0x3f, + 0x33, 0xed, 0x32, 0x3f, 0xed, 0x01, 0x10, 0xf4, 0xed, 0x10, 0xf4, 0xed, + 0x11, 0x33, 0x11, 0x33, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x01, 0x33, + 0x11, 0x21, 0x15, 0x21, 0x01, 0x33, 0x11, 0x21, 0x35, 0x21, 0x01, 0x35, + 0x21, 0x15, 0x03, 0x41, 0x91, 0x01, 0xe3, 0xfd, 0x8c, 0xfe, 0x98, 0x91, + 0xfd, 0x8c, 0x01, 0xe3, 0xfe, 0x1d, 0x05, 0xbf, 0x07, 0x48, 0xfc, 0x22, + 0x91, 0x04, 0x6f, 0xfb, 0x91, 0x91, 0xfe, 0x07, 0x91, 0x91, 0x00, 0x00, + 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x13, + 0x00, 0x4c, 0xb6, 0x0b, 0x0f, 0x0f, 0x15, 0x0d, 0x09, 0x10, 0xb8, 0x01, + 0x00, 0xb2, 0x06, 0x02, 0x13, 0xb8, 0x01, 0x06, 0x40, 0x0b, 0x14, 0x04, + 0x00, 0x00, 0x14, 0x12, 0xfe, 0x07, 0xfa, 0x0c, 0x04, 0xb8, 0x01, 0x02, + 0xb4, 0x09, 0x05, 0xfb, 0x10, 0x00, 0xb8, 0x01, 0x02, 0xb2, 0x0d, 0x01, + 0xfd, 0x00, 0x3f, 0x33, 0xed, 0x32, 0x3f, 0x33, 0xed, 0x32, 0x3f, 0x3f, + 0x11, 0x01, 0x33, 0x11, 0x33, 0x10, 0xf6, 0x32, 0x32, 0xed, 0x32, 0x32, + 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x03, 0x35, 0x21, 0x35, 0x21, 0x35, + 0x21, 0x11, 0x33, 0x11, 0x21, 0x15, 0x21, 0x15, 0x21, 0x15, 0x21, 0x11, + 0x23, 0x11, 0x0a, 0x02, 0x97, 0xfd, 0x69, 0x02, 0x97, 0x91, 0x02, 0x97, + 0xfd, 0x69, 0x02, 0x97, 0xfd, 0x69, 0x91, 0x01, 0x71, 0x91, 0xd7, 0x91, + 0x03, 0xde, 0xfc, 0x22, 0x91, 0xd7, 0x91, 0xfc, 0x22, 0x03, 0xde, 0x00, + 0x00, 0x01, 0xff, 0xf6, 0xfd, 0x93, 0x05, 0xb5, 0x07, 0x48, 0x00, 0x13, + 0x00, 0x4d, 0xb3, 0x04, 0x15, 0x12, 0x09, 0xbb, 0x01, 0x00, 0x00, 0x0f, + 0x00, 0x0c, 0x01, 0x04, 0xb2, 0x14, 0x02, 0x05, 0xbb, 0x01, 0x00, 0x00, + 0x13, 0x00, 0x08, 0x01, 0x07, 0x40, 0x09, 0x14, 0x0d, 0x14, 0x00, 0x10, + 0xfa, 0x09, 0x05, 0x0d, 0xb8, 0x01, 0x02, 0xb6, 0x12, 0x02, 0x0e, 0xfc, + 0x07, 0x0b, 0xfe, 0x00, 0x3f, 0x33, 0x3f, 0x33, 0x33, 0xed, 0x32, 0x32, + 0x3f, 0x33, 0x11, 0x01, 0x33, 0x10, 0xf4, 0x32, 0xed, 0x32, 0x10, 0xf6, + 0x32, 0xed, 0x32, 0x11, 0x33, 0x31, 0x30, 0x01, 0x33, 0x11, 0x21, 0x15, + 0x21, 0x11, 0x23, 0x11, 0x23, 0x11, 0x23, 0x11, 0x21, 0x35, 0x21, 0x11, + 0x33, 0x11, 0x33, 0x03, 0x41, 0x91, 0x01, 0xe3, 0xfe, 0x1d, 0x91, 0xd7, + 0x91, 0xfe, 0x1d, 0x01, 0xe3, 0x91, 0xd7, 0x07, 0x48, 0xfb, 0x6e, 0x91, + 0xfb, 0x6e, 0x04, 0x92, 0xfb, 0x6e, 0x04, 0x92, 0x91, 0x04, 0x92, 0xfb, + 0x6e, 0x00, 0x00, 0x00, 0x00, 0x04, 0xff, 0xf6, 0xfd, 0x93, 0x05, 0xb5, + 0x07, 0x48, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x11, 0x00, 0x17, 0x00, 0x5d, + 0xb5, 0x04, 0x0e, 0x0e, 0x19, 0x02, 0x0f, 0xbb, 0x01, 0x00, 0x00, 0x05, + 0x00, 0x0c, 0x01, 0x07, 0xb6, 0x18, 0x15, 0x09, 0x09, 0x18, 0x14, 0x0b, + 0xbb, 0x01, 0x00, 0x00, 0x17, 0x00, 0x08, 0x01, 0x04, 0xb2, 0x18, 0x05, + 0x15, 0xb8, 0x01, 0x02, 0xb7, 0x02, 0x16, 0xfb, 0x00, 0x12, 0xfa, 0x0f, + 0x09, 0xb8, 0x01, 0x02, 0xb5, 0x0c, 0x0a, 0xfd, 0x11, 0x07, 0xfe, 0x00, + 0x3f, 0x33, 0x3f, 0x33, 0xed, 0x32, 0x3f, 0x33, 0x3f, 0x33, 0xed, 0x32, + 0x01, 0x10, 0xf6, 0x32, 0xed, 0x32, 0x11, 0x33, 0x11, 0x33, 0x10, 0xf4, + 0x32, 0xed, 0x32, 0x11, 0x33, 0x11, 0x33, 0x31, 0x30, 0x01, 0x33, 0x11, + 0x21, 0x15, 0x21, 0x03, 0x23, 0x11, 0x21, 0x35, 0x21, 0x33, 0x21, 0x15, + 0x21, 0x11, 0x23, 0x01, 0x33, 0x11, 0x21, 0x35, 0x21, 0x03, 0x41, 0x91, + 0x01, 0xe3, 0xfd, 0x8c, 0xd7, 0x91, 0xfe, 0x1d, 0x02, 0x74, 0xd7, 0x02, + 0x74, 0xfe, 0x1d, 0x91, 0xfe, 0x98, 0x91, 0xfd, 0x8c, 0x01, 0xe3, 0x07, + 0x48, 0xfc, 0x22, 0x91, 0xfa, 0xba, 0x03, 0xde, 0x91, 0x91, 0xfc, 0x22, + 0x09, 0xb5, 0xfb, 0x91, 0x91, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x02, 0x6d, 0x05, 0xab, 0x07, 0x48, 0x00, 0x03, 0x00, 0x12, 0xb6, 0x00, + 0x05, 0x01, 0x04, 0x02, 0xfa, 0x01, 0x00, 0x2f, 0x3f, 0x11, 0x01, 0x33, + 0x11, 0x33, 0x31, 0x30, 0x01, 0x21, 0x11, 0x21, 0x05, 0xab, 0xfa, 0x55, + 0x05, 0xab, 0x02, 0x6d, 0x04, 0xdb, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0xfd, 0x93, 0x05, 0xab, 0x02, 0x6d, 0x00, 0x03, 0x00, 0x12, 0xb6, 0x00, + 0x05, 0x01, 0x04, 0x02, 0x01, 0xfe, 0x00, 0x3f, 0x2f, 0x11, 0x01, 0x33, + 0x11, 0x33, 0x31, 0x30, 0x01, 0x21, 0x11, 0x21, 0x05, 0xab, 0xfa, 0x55, + 0x05, 0xab, 0xfd, 0x93, 0x04, 0xda, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0xfd, 0x93, 0x05, 0xab, 0x07, 0x48, 0x00, 0x03, 0x00, 0x13, 0xb7, 0x00, + 0x05, 0x01, 0x04, 0x02, 0xfa, 0x01, 0xfe, 0x00, 0x3f, 0x3f, 0x11, 0x01, + 0x33, 0x11, 0x33, 0x31, 0x30, 0x01, 0x21, 0x11, 0x21, 0x05, 0xab, 0xfa, + 0x55, 0x05, 0xab, 0xfd, 0x93, 0x09, 0xb5, 0x00, 0x00, 0x01, 0x00, 0x00, + 0xfd, 0x93, 0x02, 0xd6, 0x07, 0x48, 0x00, 0x03, 0x00, 0x11, 0xb6, 0x01, + 0x04, 0x00, 0x02, 0xfa, 0x01, 0xfe, 0x00, 0x3f, 0x3f, 0x01, 0x2f, 0x11, + 0x33, 0x31, 0x30, 0x01, 0x21, 0x11, 0x21, 0x02, 0xd6, 0xfd, 0x2a, 0x02, + 0xd6, 0xfd, 0x93, 0x09, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0xd5, + 0xfd, 0x93, 0x05, 0xab, 0x07, 0x48, 0x00, 0x03, 0x00, 0x11, 0xb6, 0x00, + 0x05, 0x01, 0x02, 0xfa, 0x01, 0xfe, 0x00, 0x3f, 0x3f, 0x01, 0x2f, 0x11, + 0x33, 0x31, 0x30, 0x01, 0x21, 0x11, 0x21, 0x05, 0xab, 0xfd, 0x2a, 0x02, + 0xd6, 0xfd, 0x93, 0x09, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x67, + 0xfd, 0xf5, 0x05, 0xab, 0x06, 0xa3, 0x00, 0x03, 0x00, 0x07, 0x00, 0x0b, + 0x00, 0x0f, 0x00, 0x13, 0x00, 0x17, 0x00, 0x1b, 0x00, 0x1f, 0x00, 0x23, + 0x00, 0x27, 0x00, 0x2b, 0x00, 0x2f, 0x00, 0x33, 0x00, 0x37, 0x00, 0x3b, + 0x00, 0x3f, 0x00, 0x43, 0x00, 0x47, 0x00, 0x4b, 0x00, 0x4f, 0x00, 0x53, + 0x00, 0x57, 0x00, 0x5b, 0x00, 0x5f, 0x00, 0x63, 0x00, 0x67, 0x00, 0x6b, + 0x00, 0x6f, 0x00, 0x73, 0x00, 0x77, 0x00, 0x7b, 0x00, 0x7f, 0x00, 0x83, + 0x00, 0x87, 0x00, 0x8b, 0x00, 0x8f, 0x00, 0x93, 0x00, 0x97, 0x00, 0x9b, + 0x00, 0x9f, 0x00, 0xa3, 0x00, 0xa7, 0x02, 0x31, 0xb5, 0xa1, 0x9d, 0x99, + 0x95, 0x91, 0xa5, 0xb8, 0x01, 0x01, 0xb6, 0xa4, 0x6d, 0x55, 0x45, 0x2d, + 0x0d, 0x79, 0xb8, 0x01, 0x01, 0x40, 0x0d, 0x78, 0x6c, 0x54, 0x44, 0x2c, + 0x0c, 0x78, 0x65, 0x4d, 0x35, 0x1d, 0x05, 0x89, 0xb8, 0x01, 0x01, 0x40, + 0x0d, 0x88, 0x64, 0x4c, 0x34, 0x1c, 0x04, 0x88, 0x71, 0x59, 0x41, 0x29, + 0x11, 0x7d, 0xb8, 0x01, 0x01, 0x40, 0x0d, 0x7c, 0x70, 0x58, 0x40, 0x28, + 0x10, 0x7c, 0x61, 0x51, 0x39, 0x19, 0x09, 0x8d, 0xb8, 0x01, 0x01, 0x40, + 0x0d, 0x8c, 0x60, 0x50, 0x38, 0x18, 0x08, 0x8c, 0x75, 0x5d, 0x3d, 0x25, + 0x15, 0x81, 0xb8, 0x01, 0x01, 0x40, 0x21, 0x80, 0x74, 0x5c, 0x3c, 0x24, + 0x14, 0x80, 0x78, 0x88, 0x7c, 0x8c, 0x80, 0x80, 0x8c, 0x7c, 0x88, 0x78, + 0x05, 0x84, 0xa0, 0x9c, 0x98, 0x94, 0x90, 0xa4, 0xa4, 0xa9, 0x69, 0x49, + 0x31, 0x21, 0x01, 0x85, 0xb8, 0x01, 0x01, 0x40, 0x0f, 0x68, 0x48, 0x30, + 0x20, 0x00, 0x0a, 0x84, 0x01, 0x08, 0x03, 0x84, 0xa7, 0x8f, 0x8b, 0x87, + 0xb8, 0x01, 0x03, 0xb4, 0x84, 0xa3, 0x67, 0x63, 0x6b, 0xb8, 0x01, 0x03, + 0xb7, 0x68, 0xa0, 0x64, 0x60, 0x68, 0x5f, 0x5b, 0x57, 0xb8, 0x01, 0x03, + 0xb7, 0x54, 0x5c, 0x58, 0x54, 0x9f, 0x53, 0x4f, 0x4b, 0xb8, 0x01, 0x03, + 0xb7, 0x48, 0x9c, 0x50, 0x4c, 0x48, 0x43, 0x3f, 0x47, 0xb8, 0x01, 0x03, + 0xb7, 0x44, 0x40, 0x3c, 0x44, 0x9b, 0x3b, 0x37, 0x33, 0xb8, 0x01, 0x03, + 0xb7, 0x30, 0x98, 0x38, 0x34, 0x30, 0x2b, 0x27, 0x2f, 0xb8, 0x01, 0x03, + 0xb7, 0x2c, 0x28, 0x24, 0x2c, 0x97, 0x1f, 0x1b, 0x23, 0xb8, 0x01, 0x03, + 0xb7, 0x20, 0x94, 0x1c, 0x18, 0x20, 0x17, 0x13, 0x0f, 0xb8, 0x01, 0x03, + 0xb7, 0x0c, 0x14, 0x10, 0x0c, 0x93, 0x0b, 0x07, 0x03, 0xb8, 0x01, 0x03, + 0xb7, 0x00, 0x90, 0x08, 0x04, 0x00, 0x83, 0x7f, 0x7b, 0xb8, 0x01, 0x03, + 0x40, 0x3c, 0x78, 0x80, 0x7c, 0x78, 0x16, 0x54, 0x01, 0x1b, 0x48, 0x01, + 0x19, 0x44, 0x01, 0x1b, 0x30, 0x01, 0x1b, 0x2c, 0x01, 0x14, 0x20, 0x01, + 0x68, 0x54, 0x48, 0x44, 0x30, 0x2c, 0x20, 0x0c, 0x00, 0x78, 0x78, 0x00, + 0x0c, 0x20, 0x2c, 0x30, 0x44, 0x48, 0x54, 0x68, 0x0a, 0x6c, 0xa4, 0x8c, + 0x88, 0x1b, 0x84, 0x3b, 0x84, 0x02, 0x0f, 0x84, 0x01, 0x02, 0x84, 0x77, + 0x73, 0x6f, 0xb8, 0x01, 0x03, 0xb2, 0x74, 0x70, 0x6c, 0x00, 0x2f, 0x33, + 0x33, 0xed, 0x32, 0x32, 0x2f, 0x5f, 0x5d, 0x5d, 0x33, 0x33, 0x33, 0x12, + 0x17, 0x39, 0x2f, 0x2f, 0x2f, 0x2f, 0x2f, 0x2f, 0x2f, 0x2f, 0x2f, 0x2f, + 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x5d, 0x11, 0x33, 0x33, 0x10, 0xed, 0x32, + 0x32, 0x11, 0x33, 0x33, 0x33, 0x10, 0xed, 0x32, 0x32, 0x32, 0x11, 0x33, + 0x33, 0x10, 0xed, 0x32, 0x32, 0x11, 0x33, 0x33, 0x33, 0x10, 0xed, 0x32, + 0x32, 0x32, 0x11, 0x33, 0x33, 0x10, 0xed, 0x32, 0x32, 0x11, 0x33, 0x33, + 0x33, 0x10, 0xed, 0x32, 0x32, 0x32, 0x11, 0x33, 0x33, 0x10, 0xed, 0x32, + 0x32, 0x11, 0x33, 0x33, 0x33, 0x10, 0xed, 0x32, 0x32, 0x32, 0x11, 0x33, + 0x33, 0x10, 0xed, 0x32, 0x32, 0x11, 0x33, 0x33, 0x33, 0x10, 0xed, 0x32, + 0x32, 0x32, 0x10, 0xed, 0x32, 0x32, 0x32, 0x01, 0x2f, 0x5f, 0x5e, 0x5d, + 0x33, 0x33, 0x33, 0x33, 0x33, 0xed, 0x32, 0x32, 0x32, 0x32, 0x32, 0x11, + 0x33, 0x2f, 0x33, 0x33, 0x33, 0x33, 0x33, 0x12, 0x17, 0x39, 0x2f, 0x2f, + 0x2f, 0x2f, 0x2f, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x10, 0xed, 0x32, + 0x32, 0x32, 0x32, 0x32, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x10, 0xed, + 0x32, 0x32, 0x32, 0x32, 0x32, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, 0x10, + 0xed, 0x32, 0x32, 0x32, 0x32, 0x32, 0x11, 0x33, 0x33, 0x33, 0x33, 0x33, + 0x10, 0xed, 0x32, 0x32, 0x32, 0x32, 0x32, 0x11, 0x33, 0x33, 0x33, 0x33, + 0x33, 0x10, 0xed, 0x32, 0x32, 0x32, 0x32, 0x32, 0x10, 0xed, 0x32, 0x32, + 0x32, 0x32, 0x32, 0x31, 0x30, 0x13, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x05, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x07, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x05, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x07, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x17, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x07, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x05, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x07, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x17, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x01, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x01, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, + 0x23, 0x25, 0x33, 0x15, 0x23, 0x01, 0x33, 0x15, 0x23, 0x11, 0x33, 0x15, + 0x23, 0x11, 0x33, 0x15, 0x23, 0x11, 0x33, 0x15, 0x23, 0x11, 0x33, 0x15, + 0x23, 0x11, 0x33, 0x15, 0x23, 0x67, 0x68, 0x68, 0x01, 0x9e, 0x68, 0x68, + 0x01, 0xa0, 0x67, 0x67, 0xfd, 0x91, 0x68, 0x68, 0x01, 0x9f, 0x68, 0x68, + 0x01, 0x9f, 0x68, 0x68, 0xcf, 0x67, 0x67, 0xfe, 0x60, 0x68, 0x68, 0xfe, + 0x62, 0x68, 0x68, 0x04, 0x0d, 0x68, 0x68, 0xfe, 0x61, 0x68, 0x68, 0xfe, + 0x61, 0x68, 0x68, 0xcf, 0x68, 0x68, 0x01, 0x9e, 0x68, 0x68, 0x01, 0xa0, + 0x67, 0x67, 0xcf, 0x68, 0x68, 0xfe, 0x61, 0x68, 0x68, 0xfe, 0x61, 0x68, + 0x68, 0xcf, 0x68, 0x68, 0x01, 0x9e, 0x68, 0x68, 0x01, 0xa0, 0x67, 0x67, + 0xfd, 0x91, 0x68, 0x68, 0x01, 0x9f, 0x68, 0x68, 0x01, 0x9f, 0x68, 0x68, + 0xcf, 0x67, 0x67, 0xfe, 0x60, 0x68, 0x68, 0xfe, 0x62, 0x68, 0x68, 0xcf, + 0x68, 0x68, 0x01, 0x9f, 0x68, 0x68, 0x01, 0x9f, 0x68, 0x68, 0xfc, 0xc2, + 0x68, 0x68, 0x01, 0x9f, 0x68, 0x68, 0x01, 0x9f, 0x68, 0x68, 0xfb, 0xf3, + 0x68, 0x68, 0x01, 0x9e, 0x68, 0x68, 0x01, 0xa0, 0x67, 0x67, 0x01, 0x9e, + 0x68, 0x68, 0x68, 0x68, 0x68, 0x68, 0x68, 0x68, 0x68, 0x68, 0x68, 0x68, + 0x05, 0x22, 0x62, 0x62, 0x62, 0x62, 0x62, 0x61, 0x60, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x63, 0x60, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x63, 0x60, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x61, 0x61, 0x61, 0x61, 0x61, 0x62, 0x5e, 0x5e, 0x5e, 0x5e, + 0x5e, 0x62, 0x61, 0x61, 0x61, 0x61, 0x61, 0x60, 0x60, 0x60, 0x60, 0x60, + 0x60, 0x07, 0xed, 0x62, 0x62, 0x62, 0x62, 0x62, 0x01, 0x23, 0x60, 0x60, + 0x60, 0x60, 0x60, 0xfe, 0xdf, 0x62, 0xfe, 0xdf, 0x60, 0xfe, 0xdd, 0x60, + 0xfe, 0xdd, 0x61, 0xfe, 0xde, 0x61, 0x07, 0xee, 0x60, 0x00, 0x00, 0x00, + 0x00, 0x54, 0x00, 0x00, 0xfd, 0xf5, 0x05, 0xab, 0x06, 0xa3, 0x00, 0x03, + 0x00, 0x07, 0x00, 0x0b, 0x00, 0x0f, 0x00, 0x13, 0x00, 0x17, 0x00, 0x1b, + 0x00, 0x1f, 0x00, 0x23, 0x00, 0x27, 0x00, 0x2b, 0x00, 0x2f, 0x00, 0x33, + 0x00, 0x37, 0x00, 0x3b, 0x00, 0x3f, 0x00, 0x43, 0x00, 0x47, 0x00, 0x4b, + 0x00, 0x4f, 0x00, 0x53, 0x00, 0x57, 0x00, 0x5b, 0x00, 0x5f, 0x00, 0x63, + 0x00, 0x67, 0x00, 0x6b, 0x00, 0x6f, 0x00, 0x73, 0x00, 0x77, 0x00, 0x7b, + 0x00, 0x7f, 0x00, 0x83, 0x00, 0x87, 0x00, 0x8b, 0x00, 0x8f, 0x00, 0x93, + 0x00, 0x97, 0x00, 0x9b, 0x00, 0x9f, 0x00, 0xa3, 0x00, 0xa7, 0x00, 0xab, + 0x00, 0xaf, 0x00, 0xb3, 0x00, 0xb7, 0x00, 0xbb, 0x00, 0xbf, 0x00, 0xc3, + 0x00, 0xc7, 0x00, 0xcb, 0x00, 0xcf, 0x00, 0xd3, 0x00, 0xd7, 0x00, 0xdb, + 0x00, 0xdf, 0x00, 0xe3, 0x00, 0xe7, 0x00, 0xeb, 0x00, 0xef, 0x00, 0xf3, + 0x00, 0xf7, 0x00, 0xfb, 0x00, 0xff, 0x01, 0x03, 0x01, 0x07, 0x01, 0x0b, + 0x01, 0x0f, 0x01, 0x13, 0x01, 0x17, 0x01, 0x1b, 0x01, 0x1f, 0x01, 0x23, + 0x01, 0x27, 0x01, 0x2b, 0x01, 0x2f, 0x01, 0x33, 0x01, 0x37, 0x01, 0x3b, + 0x01, 0x3f, 0x01, 0x43, 0x01, 0x47, 0x01, 0x4b, 0x01, 0x4f, 0x00, 0x00, + 0x13, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x05, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x05, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x05, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x05, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x05, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x25, 0x33, 0x15, 0x23, + 0x05, 0x33, 0x15, 0x23, 0x27, 0x33, 0x15, 0x23, 0x27, 0x33, 0x15, 0x23, + 0x27, 0x33, 0x15, 0x23, 0x27, 0x33, 0x15, 0x23, 0x27, 0x33, 0x15, 0x23, + 0x07, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x17, 0x33, 0x15, 0x23, 0x27, 0x33, 0x15, 0x23, 0x27, 0x33, 0x15, 0x23, + 0x27, 0x33, 0x15, 0x23, 0x27, 0x33, 0x15, 0x23, 0x27, 0x33, 0x15, 0x23, + 0x07, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x01, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x01, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, 0x37, 0x33, 0x15, 0x23, + 0x13, 0x33, 0x15, 0x23, 0x07, 0x33, 0x15, 0x23, 0x17, 0x33, 0x15, 0x23, + 0x07, 0x33, 0x15, 0x23, 0x17, 0x33, 0x15, 0x23, 0x07, 0x33, 0x15, 0x23, + 0x17, 0x33, 0x15, 0x23, 0x07, 0x33, 0x15, 0x23, 0x17, 0x33, 0x15, 0x23, + 0x07, 0x33, 0x15, 0x23, 0x11, 0x33, 0x15, 0x23, 0x13, 0x33, 0x15, 0x23, + 0x67, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xd0, 0x68, 0x68, + 0xd0, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xfb, 0x8c, 0x67, 0x67, 0xcf, 0x67, + 0x67, 0xcf, 0x67, 0x67, 0xcf, 0x68, 0x68, 0xd0, 0x68, 0x68, 0xd0, 0x67, + 0x67, 0xfc, 0x5a, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xd0, + 0x68, 0x68, 0xd0, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xfb, 0x8c, 0x67, 0x67, + 0xcf, 0x67, 0x67, 0xcf, 0x67, 0x67, 0xcf, 0x68, 0x68, 0xd0, 0x68, 0x68, + 0xd0, 0x67, 0x67, 0xfc, 0x5a, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xcf, 0x68, + 0x68, 0xd0, 0x68, 0x68, 0xd0, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xfb, 0x8c, + 0x67, 0x67, 0x01, 0x9e, 0x67, 0x67, 0xcf, 0x68, 0x68, 0xd0, 0x68, 0x68, + 0xd0, 0x67, 0x67, 0xfc, 0xc2, 0x67, 0x67, 0x03, 0xa5, 0x68, 0x68, 0xcf, + 0x68, 0x68, 0xd0, 0x68, 0x68, 0xd0, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xcf, + 0x68, 0x68, 0x67, 0x67, 0x67, 0xcf, 0x67, 0x67, 0xcf, 0x67, 0x67, 0xcf, + 0x68, 0x68, 0xd0, 0x68, 0x68, 0xd0, 0x67, 0x67, 0x67, 0x68, 0x68, 0xcf, + 0x68, 0x68, 0xd0, 0x68, 0x68, 0xd0, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xcf, + 0x68, 0x68, 0x67, 0x67, 0x67, 0xcf, 0x67, 0x67, 0xcf, 0x67, 0x67, 0xcf, + 0x68, 0x68, 0xd0, 0x68, 0x68, 0xd0, 0x67, 0x67, 0xfb, 0xf3, 0x67, 0x67, + 0xcf, 0x67, 0x67, 0xcf, 0x67, 0x67, 0xcf, 0x68, 0x68, 0xd0, 0x68, 0x68, + 0xd0, 0x67, 0x67, 0xfc, 0x5a, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xcf, 0x68, + 0x68, 0xd0, 0x68, 0x68, 0xd0, 0x68, 0x68, 0xcf, 0x68, 0x68, 0xcf, 0x68, + 0x68, 0x67, 0x67, 0x67, 0x67, 0x68, 0x68, 0x67, 0x67, 0x67, 0x67, 0x68, + 0x68, 0x67, 0x67, 0x67, 0x67, 0x68, 0x68, 0x67, 0x67, 0x67, 0x67, 0x68, + 0x68, 0x67, 0x67, 0x67, 0x67, 0x67, 0x67, 0x68, 0x68, 0x05, 0x22, 0x62, + 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x61, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x63, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x63, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x61, + 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x62, 0x5e, + 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x62, 0x61, + 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x60, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x07, 0xed, + 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x01, + 0x23, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, + 0xfe, 0xdf, 0x62, 0x61, 0x60, 0x60, 0x60, 0x63, 0x60, 0x60, 0x60, 0x63, + 0x60, 0x60, 0x61, 0x62, 0x5e, 0x62, 0x61, 0x60, 0x60, 0x07, 0xed, 0x62, + 0x01, 0x23, 0x60, 0x00, 0x00, 0x43, 0x00, 0x00, 0xfd, 0x93, 0x05, 0xd5, + 0x06, 0xa3, 0x00, 0x49, 0x00, 0x4d, 0x00, 0x51, 0x00, 0x55, 0x00, 0x59, + 0x00, 0x5d, 0x00, 0x61, 0x00, 0x65, 0x00, 0x69, 0x00, 0x6d, 0x00, 0x71, + 0x00, 0x75, 0x00, 0x79, 0x00, 0x7d, 0x00, 0x81, 0x00, 0x85, 0x00, 0x89, + 0x00, 0x8d, 0x00, 0x91, 0x00, 0x95, 0x00, 0x99, 0x00, 0x9d, 0x00, 0xa1, + 0x00, 0xa5, 0x00, 0xa9, 0x00, 0xad, 0x00, 0xb1, 0x00, 0xb5, 0x00, 0xb9, + 0x00, 0xbd, 0x00, 0xc1, 0x00, 0xc5, 0x00, 0xc9, 0x00, 0xcd, 0x00, 0xd1, + 0x00, 0xd5, 0x00, 0xd9, 0x00, 0xdd, 0x00, 0xe1, 0x00, 0xe5, 0x00, 0xe9, + 0x00, 0xed, 0x00, 0xf1, 0x00, 0xf5, 0x00, 0xf9, 0x00, 0xfd, 0x01, 0x01, + 0x01, 0x05, 0x01, 0x09, 0x01, 0x0d, 0x01, 0x11, 0x01, 0x15, 0x01, 0x19, + 0x01, 0x1d, 0x01, 0x21, 0x01, 0x25, 0x01, 0x29, 0x01, 0x2d, 0x01, 0x31, + 0x01, 0x35, 0x01, 0x39, 0x01, 0x3d, 0x01, 0x41, 0x01, 0x45, 0x01, 0x49, + 0x01, 0x4d, 0x01, 0x51, 0x00, 0x00, 0x01, 0x21, 0x11, 0x33, 0x35, 0x23, + 0x11, 0x33, 0x35, 0x23, 0x11, 0x33, 0x35, 0x23, 0x11, 0x33, 0x35, 0x23, + 0x11, 0x33, 0x35, 0x23, 0x11, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x33, + 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x33, + 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x23, 0x15, 0x33, + 0x11, 0x23, 0x15, 0x33, 0x11, 0x23, 0x15, 0x33, 0x11, 0x23, 0x15, 0x33, + 0x11, 0x23, 0x15, 0x33, 0x11, 0x23, 0x15, 0x33, 0x01, 0x15, 0x33, 0x35, + 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, + 0x17, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, + 0x27, 0x23, 0x15, 0x33, 0x07, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, + 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x05, 0x23, 0x15, 0x33, + 0x37, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, + 0x05, 0x15, 0x33, 0x35, 0x21, 0x15, 0x33, 0x35, 0x07, 0x35, 0x23, 0x15, + 0x25, 0x15, 0x33, 0x35, 0x13, 0x35, 0x23, 0x15, 0x23, 0x35, 0x23, 0x15, + 0x23, 0x35, 0x23, 0x15, 0x23, 0x35, 0x23, 0x15, 0x07, 0x15, 0x33, 0x35, + 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, + 0x13, 0x35, 0x23, 0x15, 0x23, 0x35, 0x23, 0x15, 0x23, 0x35, 0x23, 0x15, + 0x23, 0x35, 0x23, 0x15, 0x07, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, + 0x33, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, 0x13, 0x23, 0x15, 0x33, + 0x27, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, + 0x01, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, + 0x27, 0x23, 0x15, 0x33, 0x01, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, + 0x17, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, 0x07, 0x15, 0x33, 0x35, + 0x33, 0x15, 0x33, 0x35, 0x07, 0x23, 0x15, 0x33, 0x37, 0x15, 0x33, 0x35, + 0x05, 0x15, 0x33, 0x35, 0x17, 0x35, 0x23, 0x15, 0x17, 0x35, 0x23, 0x15, + 0x23, 0x35, 0x23, 0x15, 0x07, 0x15, 0x33, 0x35, 0x33, 0x15, 0x33, 0x35, + 0x13, 0x35, 0x23, 0x15, 0x23, 0x35, 0x23, 0x15, 0x07, 0x15, 0x33, 0x35, + 0x33, 0x15, 0x33, 0x35, 0x13, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, + 0x13, 0x23, 0x15, 0x33, 0x27, 0x23, 0x15, 0x33, 0x05, 0xd5, 0xfa, 0x2b, + 0x6a, 0x6a, 0x6a, 0x6a, 0x6a, 0x6a, 0x6a, 0x6a, 0x6a, 0x6a, 0x6a, 0x6b, + 0x6a, 0x6b, 0x6a, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6a, 0x6b, 0x6a, 0x6b, + 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, + 0xfa, 0x95, 0x6b, 0x6a, 0x6b, 0x6a, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, + 0xd6, 0x6b, 0x6b, 0xd6, 0x6a, 0x6a, 0xd5, 0x6a, 0x6a, 0xd5, 0x6b, 0x6a, + 0x6b, 0x6a, 0x6b, 0x6b, 0x6b, 0xfd, 0xea, 0x6a, 0x6a, 0x6b, 0x6a, 0x6b, + 0x6b, 0x6b, 0x6b, 0xfc, 0xaa, 0x6b, 0x01, 0x3f, 0x6b, 0xd5, 0x6b, 0x01, + 0xab, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6a, 0x6b, 0x6a, 0x6b, 0x6b, + 0x6a, 0x6b, 0x6a, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, 0x6a, + 0x6b, 0x6a, 0x6b, 0x6b, 0x6a, 0x6b, 0x6a, 0x6b, 0x6b, 0x6b, 0x6b, 0x6b, + 0x6b, 0xd6, 0x6b, 0x6b, 0xd6, 0x6a, 0x6a, 0xd5, 0x6a, 0x6a, 0x02, 0x16, + 0x6b, 0x6b, 0xd6, 0x6b, 0x6b, 0xd5, 0x6b, 0x6b, 0xd5, 0x6b, 0x6b, 0x02, + 0xeb, 0x6b, 0x6a, 0x6b, 0x6a, 0x6a, 0x6a, 0xd5, 0x6a, 0x6a, 0xd5, 0x6b, + 0x6a, 0x6b, 0x6b, 0x6a, 0x6a, 0x6b, 0x6a, 0xfe, 0x56, 0x6b, 0xd5, 0x6b, + 0xd5, 0x6a, 0x6b, 0x6a, 0x6b, 0x6b, 0x6a, 0x6b, 0x6a, 0x6a, 0x6b, 0x6a, + 0x6b, 0x6b, 0x6a, 0x6b, 0x6a, 0x6a, 0x6a, 0xd5, 0x6a, 0x6a, 0x6b, 0x6b, + 0x6b, 0xd5, 0x6b, 0x6b, 0xfd, 0x93, 0x01, 0x22, 0x61, 0x01, 0x22, 0x61, + 0x01, 0x23, 0x60, 0x01, 0x21, 0x62, 0x01, 0x21, 0x62, 0x01, 0x21, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, + 0xc1, 0x62, 0xfe, 0xdf, 0x60, 0xfe, 0xdd, 0x60, 0xfe, 0xdd, 0x60, 0xfe, + 0xdd, 0x5e, 0xfe, 0xdd, 0x60, 0x06, 0x6a, 0x60, 0x60, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x60, 0xc0, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x61, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0xc0, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0xc3, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x60, 0x60, 0xfe, 0xdf, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, + 0x61, 0x61, 0x62, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0x5e, 0xfe, + 0xdf, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x60, 0x60, 0x60, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x06, 0xcd, 0x62, 0x62, 0x62, 0x62, + 0x62, 0x62, 0x62, 0x01, 0x22, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, 0x62, + 0xfe, 0xdf, 0x60, 0x60, 0x60, 0x60, 0xc0, 0x62, 0x62, 0x62, 0x61, 0x60, + 0x60, 0x60, 0x60, 0xc0, 0x60, 0x60, 0x60, 0x60, 0xc3, 0x60, 0x60, 0x60, + 0x60, 0x60, 0xc1, 0x61, 0x61, 0x61, 0x61, 0x62, 0x5e, 0x5e, 0x5e, 0x5e, + 0xfe, 0xdf, 0x61, 0x61, 0x61, 0x61, 0x60, 0x60, 0x60, 0x60, 0x60, 0x06, + 0xcd, 0x62, 0x62, 0x62, 0x01, 0x22, 0x62, 0x62, 0x62, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x7b, 0x00, 0x75, 0x04, 0x5a, 0x04, 0x54, 0x00, 0x03, + 0x00, 0x00, 0x13, 0x21, 0x11, 0x21, 0x7b, 0x03, 0xdf, 0xfc, 0x21, 0x04, + 0x54, 0xfc, 0x21, 0x00, 0x00, 0x02, 0x00, 0x06, 0x00, 0x00, 0x04, 0xcf, + 0x04, 0xc9, 0x00, 0x03, 0x00, 0x07, 0x00, 0x15, 0xb7, 0x07, 0x01, 0x04, + 0x00, 0x04, 0x00, 0x05, 0x03, 0x00, 0x2f, 0xcd, 0xdd, 0xcd, 0x01, 0x2f, + 0xcd, 0xdd, 0xcd, 0x31, 0x30, 0x13, 0x21, 0x11, 0x21, 0x13, 0x11, 0x21, + 0x11, 0x06, 0x04, 0xc9, 0xfb, 0x37, 0x4c, 0x04, 0x31, 0x04, 0xc9, 0xfb, + 0x37, 0x04, 0x7d, 0xfb, 0xcf, 0x04, 0x31, 0x00, 0x00, 0x01, 0x00, 0x6d, + 0x01, 0x7f, 0x02, 0x69, 0x03, 0x7b, 0x00, 0x03, 0x00, 0x1a, 0x40, 0x0d, + 0x03, 0x30, 0x02, 0x01, 0x0f, 0x02, 0x1f, 0x02, 0x02, 0x08, 0x02, 0x01, + 0x02, 0x00, 0x2f, 0xcd, 0x01, 0x2f, 0x5e, 0x5d, 0x5d, 0xcd, 0x31, 0x30, + 0x01, 0x21, 0x11, 0x21, 0x02, 0x69, 0xfe, 0x04, 0x01, 0xfc, 0x01, 0x7f, + 0x01, 0xfc, 0x00, 0x00, 0x00, 0x02, 0x00, 0x6d, 0x01, 0x7f, 0x02, 0x69, + 0x03, 0x7b, 0x00, 0x03, 0x00, 0x07, 0x00, 0x22, 0x40, 0x11, 0x05, 0x03, + 0x06, 0x30, 0x02, 0x01, 0x0f, 0x02, 0x1f, 0x02, 0x02, 0x08, 0x02, 0x07, + 0x01, 0x06, 0x02, 0x00, 0x2f, 0xcd, 0xdd, 0xcd, 0x01, 0x2f, 0x5e, 0x5d, + 0x5d, 0xcd, 0xdd, 0xcd, 0x31, 0x30, 0x01, 0x21, 0x11, 0x21, 0x03, 0x11, + 0x21, 0x11, 0x02, 0x69, 0xfe, 0x04, 0x01, 0xfc, 0x4c, 0xfe, 0x9c, 0x01, + 0x7f, 0x01, 0xfc, 0xfe, 0x50, 0x01, 0x62, 0xfe, 0x9e, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x02, 0x68, 0x00, 0x03, + 0x00, 0x00, 0x11, 0x21, 0x11, 0x21, 0x08, 0x00, 0xf8, 0x00, 0x02, 0x68, + 0xfd, 0x98, 0x00, 0x00, 0x00, 0x01, 0x01, 0x9e, 0x00, 0x00, 0x06, 0x4c, + 0x04, 0xae, 0x00, 0x02, 0x00, 0x00, 0x21, 0x09, 0x01, 0x01, 0x9e, 0x02, + 0x58, 0x02, 0x56, 0x04, 0xae, 0xfb, 0x52, 0x00, 0x00, 0x01, 0x01, 0x91, + 0xff, 0xe5, 0x06, 0x5a, 0x04, 0xac, 0x00, 0x02, 0x00, 0x00, 0x09, 0x02, + 0x01, 0x91, 0x04, 0xc9, 0xfb, 0x37, 0x04, 0xac, 0xfd, 0x9e, 0xfd, 0x9b, + 0x00, 0x01, 0x01, 0x9e, 0xff, 0xe5, 0x06, 0x4c, 0x04, 0x93, 0x00, 0x02, + 0x00, 0x00, 0x09, 0x02, 0x06, 0x4c, 0xfd, 0xaa, 0xfd, 0xa8, 0x04, 0x93, + 0xfb, 0x52, 0x04, 0xae, 0x00, 0x01, 0x01, 0x91, 0xff, 0xe5, 0x06, 0x5a, + 0x04, 0xac, 0x00, 0x02, 0x00, 0x00, 0x01, 0x11, 0x01, 0x06, 0x5a, 0xfb, + 0x37, 0x04, 0xac, 0xfb, 0x39, 0x02, 0x65, 0x00, 0x00, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x03, 0xee, 0x05, 0xa0, 0x00, 0x05, 0x00, 0x09, 0x00, 0x25, + 0x40, 0x14, 0x86, 0x07, 0x01, 0x09, 0x00, 0x05, 0x10, 0x05, 0x02, 0x05, + 0x07, 0x1f, 0x02, 0x01, 0x02, 0x06, 0x03, 0x04, 0x08, 0x01, 0x00, 0x2f, + 0x33, 0x3f, 0x33, 0x01, 0x2f, 0x5d, 0x33, 0x2f, 0x5d, 0x33, 0x31, 0x30, + 0x5d, 0x21, 0x23, 0x09, 0x01, 0x33, 0x09, 0x04, 0x02, 0x23, 0x52, 0xfe, + 0x37, 0x01, 0xc9, 0x52, 0x01, 0xcb, 0xfe, 0x0e, 0xfe, 0x9e, 0x01, 0x62, + 0x01, 0x60, 0x02, 0xcf, 0x02, 0xd1, 0xfd, 0x31, 0x02, 0x35, 0xfd, 0xcb, + 0xfd, 0xc2, 0x02, 0x3e, 0x00, 0x02, 0x00, 0xa7, 0x00, 0xa2, 0x04, 0x2e, + 0x04, 0x29, 0x00, 0x13, 0x00, 0x27, 0x00, 0x2e, 0x40, 0x1c, 0x44, 0x25, + 0x54, 0x25, 0x02, 0x4b, 0x21, 0x5b, 0x21, 0x02, 0x4b, 0x1b, 0x5b, 0x1b, + 0x02, 0x44, 0x17, 0x54, 0x17, 0x02, 0x1e, 0x0a, 0x14, 0x00, 0x19, 0x0f, + 0x23, 0x05, 0x00, 0x2f, 0xcd, 0xdc, 0xcd, 0x01, 0x2f, 0xcd, 0xdc, 0xcd, + 0x31, 0x30, 0x5d, 0x5d, 0x5d, 0x5d, 0x13, 0x34, 0x3e, 0x02, 0x33, 0x32, + 0x1e, 0x02, 0x15, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x37, 0x14, + 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, + 0x0e, 0x02, 0xa7, 0x46, 0x7a, 0xa4, 0x5e, 0x5e, 0xa5, 0x7b, 0x47, 0x47, + 0x7b, 0xa5, 0x5e, 0x5e, 0xa4, 0x7a, 0x46, 0x56, 0x39, 0x62, 0x85, 0x4c, + 0x4c, 0x86, 0x63, 0x3a, 0x3a, 0x63, 0x86, 0x4c, 0x4c, 0x85, 0x62, 0x39, + 0x02, 0x64, 0x5e, 0xa5, 0x7b, 0x47, 0x47, 0x7b, 0xa5, 0x5e, 0x5e, 0xa4, + 0x7a, 0x46, 0x46, 0x7a, 0xa4, 0x5e, 0x4c, 0x84, 0x63, 0x39, 0x39, 0x63, + 0x84, 0x4c, 0x4c, 0x86, 0x63, 0x3a, 0x3a, 0x63, 0x86, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0xb2, 0x00, 0x89, 0x04, 0x23, 0x03, 0xfa, 0x00, 0x17, + 0x00, 0x11, 0xb6, 0x08, 0x10, 0x0c, 0x0f, 0x00, 0x01, 0x00, 0x00, 0x2f, + 0x5d, 0xcd, 0x01, 0x2f, 0xcd, 0x31, 0x30, 0x01, 0x32, 0x17, 0x1e, 0x01, + 0x17, 0x1e, 0x01, 0x15, 0x14, 0x07, 0x06, 0x23, 0x22, 0x27, 0x26, 0x35, + 0x34, 0x36, 0x37, 0x3e, 0x01, 0x37, 0x36, 0x02, 0x6a, 0x6e, 0x6b, 0x35, + 0x52, 0x1d, 0x1d, 0x1f, 0x81, 0x81, 0xb7, 0xb6, 0x81, 0x81, 0x1e, 0x1d, + 0x1d, 0x53, 0x34, 0x6c, 0x03, 0xfa, 0x39, 0x1c, 0x52, 0x34, 0x36, 0x6e, + 0x39, 0xb7, 0x81, 0x81, 0x81, 0x81, 0xb7, 0x3a, 0x6d, 0x36, 0x34, 0x52, + 0x1c, 0x39, 0x00, 0x00, 0x00, 0x02, 0x00, 0x29, 0x00, 0x00, 0x04, 0xac, + 0x04, 0x83, 0x00, 0x03, 0x00, 0x17, 0x00, 0x15, 0xb7, 0x0e, 0x02, 0x04, + 0x01, 0x13, 0x01, 0x09, 0x00, 0x00, 0x2f, 0xcd, 0xdd, 0xcd, 0x01, 0x2f, + 0xcd, 0xdd, 0xcd, 0x31, 0x30, 0x33, 0x11, 0x21, 0x11, 0x01, 0x14, 0x1e, + 0x02, 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, + 0x02, 0x29, 0x04, 0x83, 0xfc, 0x04, 0x45, 0x78, 0xa0, 0x5b, 0x5b, 0xa1, + 0x78, 0x45, 0x45, 0x78, 0xa1, 0x5b, 0x5b, 0xa0, 0x78, 0x45, 0x04, 0x83, + 0xfb, 0x7d, 0x02, 0x41, 0x5b, 0xa0, 0x78, 0x45, 0x45, 0x78, 0xa0, 0x5b, + 0x5b, 0xa1, 0x78, 0x45, 0x45, 0x78, 0xa1, 0x00, 0x00, 0x03, 0x00, 0x29, + 0x00, 0x00, 0x04, 0xac, 0x04, 0x83, 0x00, 0x03, 0x00, 0x17, 0x00, 0x2b, + 0x00, 0x22, 0x40, 0x0e, 0x04, 0x18, 0x01, 0x0e, 0x22, 0x02, 0x01, 0x13, + 0x1d, 0x00, 0x09, 0x27, 0x01, 0x00, 0x00, 0x2f, 0xdd, 0xdd, 0xce, 0x10, + 0xdd, 0xce, 0x01, 0x2f, 0xdd, 0xdd, 0xce, 0x10, 0xdd, 0xce, 0x31, 0x30, + 0x33, 0x11, 0x21, 0x11, 0x01, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, + 0x15, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x27, 0x14, 0x1e, 0x02, + 0x33, 0x32, 0x3e, 0x02, 0x35, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, + 0x29, 0x04, 0x83, 0xfc, 0x51, 0x3a, 0x63, 0x85, 0x4b, 0x4b, 0x85, 0x63, + 0x3a, 0x3a, 0x63, 0x85, 0x4b, 0x4b, 0x85, 0x63, 0x3a, 0x4d, 0x45, 0x78, + 0xa0, 0x5b, 0x5b, 0xa1, 0x78, 0x45, 0x45, 0x78, 0xa1, 0x5b, 0x5b, 0xa0, + 0x78, 0x45, 0x04, 0x83, 0xfb, 0x7d, 0x02, 0x41, 0x4b, 0x85, 0x63, 0x3a, + 0x3a, 0x63, 0x85, 0x4b, 0x4b, 0x85, 0x63, 0x3a, 0x3a, 0x63, 0x85, 0x4b, + 0x5b, 0xa0, 0x78, 0x45, 0x45, 0x78, 0xa0, 0x5b, 0x5b, 0xa1, 0x78, 0x45, + 0x45, 0x78, 0xa1, 0x00, 0x00, 0x02, 0x00, 0x73, 0x01, 0x85, 0x02, 0x63, + 0x03, 0x75, 0x00, 0x12, 0x00, 0x22, 0x00, 0x15, 0xb7, 0x13, 0x00, 0x1b, + 0x0b, 0x1f, 0x06, 0x17, 0x0f, 0x00, 0x2f, 0xcd, 0xdc, 0xcd, 0x01, 0x2f, + 0xcd, 0xdc, 0xcd, 0x31, 0x30, 0x01, 0x14, 0x06, 0x07, 0x0e, 0x01, 0x23, + 0x22, 0x27, 0x2e, 0x01, 0x35, 0x34, 0x37, 0x36, 0x33, 0x32, 0x17, 0x16, + 0x07, 0x34, 0x27, 0x26, 0x23, 0x22, 0x07, 0x06, 0x15, 0x14, 0x17, 0x16, + 0x33, 0x32, 0x37, 0x36, 0x02, 0x63, 0x25, 0x25, 0x25, 0x56, 0x33, 0x65, + 0x4b, 0x23, 0x25, 0x48, 0x4a, 0x66, 0x67, 0x47, 0x4a, 0x4c, 0x33, 0x33, + 0x46, 0x46, 0x33, 0x33, 0x33, 0x31, 0x48, 0x48, 0x31, 0x33, 0x02, 0x7d, + 0x35, 0x56, 0x25, 0x23, 0x25, 0x48, 0x25, 0x56, 0x35, 0x66, 0x48, 0x4a, + 0x4a, 0x47, 0x67, 0x46, 0x33, 0x33, 0x33, 0x33, 0x46, 0x45, 0x36, 0x31, + 0x31, 0x36, 0x00, 0x00, 0x00, 0x05, 0x01, 0xb1, 0xff, 0xe5, 0x06, 0x79, + 0x04, 0xac, 0x00, 0x11, 0x00, 0x21, 0x00, 0x2d, 0x00, 0x39, 0x00, 0x44, + 0x00, 0x93, 0x40, 0x5d, 0x14, 0x20, 0x24, 0x20, 0x74, 0x20, 0x03, 0x14, + 0x1c, 0x24, 0x1c, 0x74, 0x1c, 0x03, 0x1b, 0x18, 0x2b, 0x18, 0x7b, 0x18, + 0x03, 0x1b, 0x14, 0x2b, 0x14, 0x7b, 0x14, 0x03, 0x44, 0x22, 0x28, 0x3f, + 0x34, 0x2e, 0x28, 0x2e, 0x28, 0x2e, 0x08, 0x12, 0x1f, 0x00, 0x01, 0x00, + 0x1a, 0x08, 0x31, 0x25, 0x2b, 0x37, 0x2b, 0x3e, 0x3a, 0x68, 0x3a, 0x01, + 0x59, 0x3a, 0x01, 0x47, 0x3a, 0x01, 0x19, 0x3a, 0x01, 0x3a, 0x3c, 0x41, + 0x0f, 0x2b, 0x5f, 0x2b, 0x6f, 0x2b, 0x03, 0x08, 0x41, 0x40, 0x09, 0x0e, + 0x48, 0x2b, 0x41, 0x2b, 0x41, 0x04, 0x16, 0x0f, 0x0d, 0x01, 0x0d, 0x1e, + 0x04, 0x00, 0x2f, 0xcd, 0xdc, 0x5d, 0xcd, 0x12, 0x39, 0x39, 0x2f, 0x2f, + 0x2b, 0x5e, 0x5d, 0x10, 0xcd, 0x33, 0x5d, 0x5d, 0x5d, 0x5d, 0x11, 0x33, + 0x11, 0x33, 0x10, 0xcd, 0x32, 0x01, 0x2f, 0xcd, 0xdc, 0x5d, 0xcd, 0x12, + 0x39, 0x39, 0x2f, 0x2f, 0x10, 0xcd, 0x33, 0x10, 0xcd, 0x33, 0x31, 0x30, + 0x00, 0x5d, 0x5d, 0x5d, 0x5d, 0x01, 0x14, 0x07, 0x06, 0x23, 0x22, 0x27, + 0x26, 0x35, 0x34, 0x36, 0x37, 0x36, 0x33, 0x32, 0x17, 0x1e, 0x01, 0x07, + 0x34, 0x27, 0x26, 0x23, 0x22, 0x07, 0x06, 0x15, 0x14, 0x17, 0x16, 0x33, + 0x32, 0x37, 0x36, 0x01, 0x14, 0x06, 0x23, 0x22, 0x26, 0x35, 0x34, 0x36, + 0x33, 0x32, 0x16, 0x05, 0x14, 0x06, 0x23, 0x22, 0x26, 0x35, 0x34, 0x36, + 0x33, 0x32, 0x16, 0x01, 0x16, 0x33, 0x32, 0x37, 0x17, 0x06, 0x23, 0x22, + 0x26, 0x27, 0x06, 0x79, 0xb4, 0xb3, 0xfd, 0xfd, 0xb3, 0xb4, 0x5a, 0x5a, + 0xb2, 0xfe, 0xfe, 0xb2, 0x5a, 0x5a, 0x5a, 0x99, 0x97, 0xda, 0xda, 0x97, + 0x99, 0x99, 0x98, 0xd9, 0xd9, 0x98, 0x99, 0xfd, 0x5a, 0x2e, 0x20, 0x20, + 0x2d, 0x2d, 0x20, 0x20, 0x2e, 0x01, 0xd3, 0x2c, 0x20, 0x20, 0x2f, 0x2f, + 0x20, 0x20, 0x2c, 0xfd, 0xea, 0x4c, 0x93, 0x91, 0x4c, 0x3e, 0x62, 0xb9, + 0x5e, 0x8d, 0x30, 0x02, 0x48, 0xfe, 0xb2, 0xb3, 0xb3, 0xb2, 0xfe, 0x80, + 0xd7, 0x5b, 0xb2, 0xb2, 0x5b, 0xd7, 0x80, 0xd9, 0x99, 0x9a, 0x9a, 0x99, + 0xd9, 0xd8, 0x99, 0x9a, 0x9a, 0x99, 0x01, 0x57, 0x20, 0x2e, 0x2e, 0x20, + 0x20, 0x2d, 0x2d, 0x20, 0x20, 0x2e, 0x2e, 0x20, 0x20, 0x2d, 0x2d, 0xfe, + 0xbf, 0x89, 0x89, 0x23, 0xba, 0x5f, 0x5b, 0x00, 0x00, 0x04, 0x01, 0xd1, + 0xff, 0xe5, 0x06, 0x99, 0x04, 0xac, 0x00, 0x11, 0x00, 0x1d, 0x00, 0x29, + 0x00, 0x34, 0x00, 0x60, 0x40, 0x37, 0x2a, 0x12, 0x18, 0x2f, 0x24, 0x1e, + 0x18, 0x1e, 0x18, 0x1e, 0x00, 0x08, 0x27, 0x1b, 0x15, 0x21, 0x15, 0x30, + 0x34, 0x68, 0x34, 0x01, 0x59, 0x34, 0x01, 0x4b, 0x34, 0x01, 0x3d, 0x34, + 0x01, 0x34, 0x32, 0x2d, 0x0f, 0x15, 0x1f, 0x15, 0x5f, 0x15, 0x6f, 0x15, + 0x04, 0x08, 0x4f, 0x2d, 0x5f, 0x2d, 0x02, 0x15, 0x2d, 0x15, 0x2d, 0x0d, + 0x04, 0x00, 0x2f, 0xcc, 0x39, 0x39, 0x2f, 0x2f, 0x5d, 0x5e, 0x5d, 0x10, + 0xce, 0x33, 0x5d, 0x5d, 0x5d, 0x5d, 0x11, 0x33, 0x11, 0x33, 0x10, 0xce, + 0x32, 0x01, 0x2f, 0xcd, 0x39, 0x39, 0x2f, 0x2f, 0x10, 0xce, 0x33, 0x10, + 0xce, 0x33, 0x31, 0x30, 0x01, 0x14, 0x07, 0x06, 0x23, 0x22, 0x27, 0x26, + 0x35, 0x34, 0x36, 0x37, 0x36, 0x33, 0x32, 0x17, 0x1e, 0x01, 0x05, 0x34, + 0x26, 0x23, 0x22, 0x06, 0x15, 0x14, 0x16, 0x33, 0x32, 0x36, 0x25, 0x34, + 0x26, 0x23, 0x22, 0x06, 0x15, 0x14, 0x16, 0x33, 0x32, 0x36, 0x01, 0x1e, + 0x01, 0x33, 0x32, 0x37, 0x27, 0x06, 0x23, 0x22, 0x27, 0x06, 0x99, 0xb4, + 0xb3, 0xfd, 0xfd, 0xb3, 0xb4, 0x5a, 0x5a, 0xb2, 0xfe, 0xfe, 0xb2, 0x5a, + 0x5a, 0xfd, 0x00, 0x2e, 0x20, 0x20, 0x2d, 0x2d, 0x20, 0x20, 0x2e, 0x01, + 0xd3, 0x2c, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x20, 0x2c, 0xfd, 0xae, 0x30, + 0x8d, 0x5e, 0xb9, 0x62, 0x3e, 0x4c, 0x91, 0x93, 0x4c, 0x02, 0x48, 0xfe, + 0xb2, 0xb3, 0xb3, 0xb2, 0xfe, 0x80, 0xd7, 0x5b, 0xb2, 0xb2, 0x5b, 0xd7, + 0x01, 0x20, 0x2d, 0x2d, 0x20, 0x20, 0x2e, 0x2e, 0x20, 0x20, 0x2d, 0x2d, + 0x20, 0x20, 0x2e, 0x2e, 0xfe, 0xdc, 0x5b, 0x5f, 0xba, 0x23, 0x89, 0x89, + 0x00, 0x02, 0x01, 0x46, 0xff, 0x73, 0x06, 0x0e, 0x04, 0x3b, 0x00, 0x33, + 0x00, 0x46, 0x00, 0x8b, 0xb9, 0x00, 0x2f, 0xff, 0xf0, 0x40, 0x0d, 0x0b, + 0x0e, 0x48, 0x34, 0x2e, 0x01, 0x34, 0x24, 0x01, 0x77, 0x23, 0x01, 0x23, + 0xb8, 0xff, 0xf0, 0x40, 0x4d, 0x0b, 0x0e, 0x48, 0x15, 0x10, 0x0b, 0x0e, + 0x48, 0x3b, 0x14, 0x01, 0x3b, 0x09, 0x01, 0x08, 0x10, 0x0b, 0x0e, 0x48, + 0x3b, 0x2f, 0x01, 0x34, 0x23, 0x01, 0x34, 0x15, 0x01, 0x3b, 0x08, 0x01, + 0x42, 0x8f, 0x0d, 0xdf, 0x0d, 0x02, 0x70, 0x0d, 0x01, 0x3f, 0x0d, 0x01, + 0x20, 0x0d, 0x01, 0x0d, 0x39, 0x2b, 0x3e, 0x80, 0x1f, 0xd0, 0x1f, 0xe0, + 0x1f, 0x03, 0x7f, 0x1f, 0x01, 0x30, 0x1f, 0x01, 0x2f, 0x1f, 0x01, 0x1f, + 0x34, 0x0f, 0x33, 0x3f, 0x33, 0x4f, 0x33, 0x03, 0x08, 0x33, 0x00, 0x2f, + 0x5e, 0x5d, 0xcd, 0xdc, 0x5d, 0x5d, 0x5d, 0x5d, 0xcd, 0x01, 0x2f, 0xcd, + 0xdc, 0x5d, 0x5d, 0x5d, 0x5d, 0xcd, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x5d, + 0x5d, 0x01, 0x2b, 0x5d, 0x5d, 0x2b, 0x2b, 0x5d, 0x5d, 0x5d, 0x2b, 0x01, + 0x33, 0x15, 0x1e, 0x03, 0x17, 0x37, 0x17, 0x07, 0x1e, 0x01, 0x17, 0x33, + 0x15, 0x23, 0x0e, 0x01, 0x07, 0x17, 0x07, 0x27, 0x0e, 0x01, 0x07, 0x0e, + 0x01, 0x07, 0x15, 0x23, 0x35, 0x2e, 0x01, 0x27, 0x07, 0x27, 0x37, 0x2e, + 0x01, 0x27, 0x23, 0x35, 0x33, 0x36, 0x37, 0x27, 0x37, 0x17, 0x3e, 0x01, + 0x37, 0x17, 0x22, 0x06, 0x07, 0x06, 0x15, 0x14, 0x17, 0x1e, 0x01, 0x33, + 0x32, 0x37, 0x36, 0x35, 0x34, 0x27, 0x2e, 0x01, 0x03, 0x89, 0x42, 0x20, + 0x39, 0x36, 0x35, 0x1d, 0xba, 0x2d, 0xb8, 0x2d, 0x2c, 0x03, 0xd7, 0xd7, + 0x08, 0x2c, 0x28, 0xb8, 0x31, 0xb6, 0x1f, 0x37, 0x17, 0x18, 0x3a, 0x22, + 0x42, 0x3f, 0x6e, 0x30, 0xbc, 0x2b, 0xb6, 0x28, 0x2e, 0x08, 0xd7, 0xd7, + 0x0c, 0x50, 0xb4, 0x28, 0xbd, 0x39, 0x70, 0x36, 0x1f, 0x45, 0x75, 0x30, + 0x62, 0x62, 0x30, 0x75, 0x45, 0x8b, 0x60, 0x63, 0x63, 0x31, 0x75, 0x04, + 0x3b, 0xd9, 0x03, 0x0c, 0x15, 0x20, 0x16, 0xb6, 0x2d, 0xb8, 0x3b, 0x71, + 0x39, 0x3e, 0x3c, 0x6e, 0x33, 0xbc, 0x2b, 0xb6, 0x17, 0x20, 0x0b, 0x09, + 0x0c, 0x05, 0xd9, 0xd9, 0x09, 0x2e, 0x23, 0xb4, 0x2d, 0xb8, 0x33, 0x6f, + 0x3f, 0x3e, 0x80, 0x5f, 0xb8, 0x31, 0xb6, 0x28, 0x2c, 0x06, 0x3d, 0x32, + 0x30, 0x64, 0x88, 0x89, 0x62, 0x32, 0x2f, 0x61, 0x61, 0x8a, 0x89, 0x63, + 0x30, 0x32, 0x00, 0x00, 0x00, 0x02, 0x01, 0xda, 0x00, 0x50, 0x04, 0x26, + 0x04, 0x81, 0x00, 0x1c, 0x00, 0x2f, 0x00, 0x62, 0x40, 0x3e, 0x16, 0x12, + 0x19, 0x00, 0x00, 0x05, 0x0f, 0x2b, 0x01, 0xef, 0x2b, 0xff, 0x2b, 0x02, + 0x2b, 0x0f, 0x0e, 0x01, 0x0e, 0x00, 0x22, 0x01, 0xe0, 0x22, 0xf0, 0x22, + 0x02, 0x22, 0x05, 0x16, 0x19, 0x13, 0x00, 0x1c, 0x10, 0x1c, 0x50, 0x1c, + 0x03, 0x1c, 0x00, 0x27, 0x01, 0xf0, 0x27, 0x01, 0x27, 0x12, 0x00, 0x00, + 0x80, 0x00, 0x02, 0x08, 0x00, 0x1d, 0x40, 0x25, 0x28, 0x48, 0x1d, 0x0a, + 0x00, 0x2f, 0xcd, 0x2b, 0xdc, 0x5e, 0x5d, 0x32, 0xcd, 0x71, 0x72, 0x2f, + 0x5d, 0x33, 0xcd, 0x32, 0x01, 0x2f, 0xcd, 0x71, 0x72, 0xdc, 0x5d, 0xcd, + 0x71, 0x72, 0x11, 0x39, 0x2f, 0x33, 0xcd, 0x32, 0x31, 0x30, 0x01, 0x2e, + 0x01, 0x27, 0x26, 0x35, 0x34, 0x37, 0x3e, 0x01, 0x33, 0x32, 0x17, 0x16, + 0x15, 0x14, 0x07, 0x06, 0x07, 0x15, 0x21, 0x15, 0x21, 0x11, 0x23, 0x11, + 0x21, 0x35, 0x21, 0x13, 0x22, 0x07, 0x0e, 0x01, 0x15, 0x14, 0x16, 0x17, + 0x16, 0x33, 0x32, 0x37, 0x36, 0x35, 0x34, 0x26, 0x27, 0x26, 0x02, 0xdc, + 0x37, 0x5a, 0x23, 0x47, 0x53, 0x2c, 0x65, 0x3c, 0x76, 0x53, 0x56, 0x48, + 0x48, 0x6a, 0x01, 0x00, 0xff, 0x00, 0x4a, 0xfe, 0xfe, 0x01, 0x02, 0x23, + 0x53, 0x3e, 0x1d, 0x1f, 0x1f, 0x1d, 0x3e, 0x53, 0x57, 0x3b, 0x3d, 0x1e, + 0x1d, 0x3e, 0x02, 0x42, 0x08, 0x2e, 0x2a, 0x50, 0x6c, 0x7a, 0x53, 0x2b, + 0x2b, 0x56, 0x53, 0x7a, 0x6d, 0x51, 0x52, 0x0c, 0xa6, 0x46, 0xfe, 0xfa, + 0x01, 0x06, 0x46, 0x02, 0x91, 0x3b, 0x1f, 0x47, 0x2c, 0x2b, 0x47, 0x1f, + 0x3e, 0x3e, 0x3d, 0x54, 0x2c, 0x47, 0x1f, 0x3b, 0x00, 0x02, 0x01, 0x51, + 0x00, 0xfa, 0x04, 0xaf, 0x04, 0x81, 0x00, 0x41, 0x00, 0x51, 0x00, 0x46, + 0x40, 0x28, 0x31, 0x41, 0x3b, 0x0f, 0x4e, 0x01, 0x4e, 0x3f, 0x20, 0x01, + 0x20, 0x0f, 0x33, 0x01, 0x33, 0x00, 0x46, 0x01, 0x46, 0x3b, 0x41, 0x31, + 0x3f, 0x4a, 0x00, 0x37, 0x80, 0x37, 0x02, 0x37, 0x42, 0x90, 0x14, 0x01, + 0x14, 0x0f, 0x3f, 0x01, 0x08, 0x3f, 0x00, 0x2f, 0x5e, 0x5d, 0xcc, 0x5d, + 0xcd, 0xdc, 0x5d, 0xcd, 0x12, 0x39, 0x39, 0x01, 0x2f, 0xcd, 0x72, 0xdc, + 0x5d, 0xcc, 0x5d, 0xcd, 0x72, 0x12, 0x39, 0x39, 0x31, 0x30, 0x01, 0x2e, + 0x01, 0x27, 0x2e, 0x01, 0x27, 0x2e, 0x01, 0x35, 0x34, 0x37, 0x3e, 0x01, + 0x33, 0x32, 0x16, 0x17, 0x1e, 0x01, 0x33, 0x32, 0x36, 0x37, 0x36, 0x33, + 0x32, 0x15, 0x14, 0x07, 0x0e, 0x01, 0x15, 0x14, 0x16, 0x17, 0x1e, 0x01, + 0x15, 0x14, 0x06, 0x07, 0x06, 0x23, 0x22, 0x27, 0x2e, 0x01, 0x27, 0x07, + 0x16, 0x15, 0x14, 0x07, 0x06, 0x23, 0x22, 0x27, 0x26, 0x35, 0x34, 0x37, + 0x36, 0x33, 0x32, 0x17, 0x07, 0x22, 0x07, 0x06, 0x15, 0x14, 0x17, 0x16, + 0x33, 0x32, 0x37, 0x36, 0x35, 0x34, 0x27, 0x26, 0x03, 0xff, 0x11, 0x36, + 0x25, 0x1c, 0x28, 0x0e, 0x05, 0x03, 0x06, 0x03, 0x06, 0x05, 0x05, 0x0f, + 0x0d, 0x20, 0x3f, 0x20, 0x2e, 0x40, 0x13, 0x24, 0x0d, 0x10, 0x06, 0x09, + 0x07, 0x04, 0x08, 0x02, 0x02, 0x02, 0x02, 0x09, 0x05, 0x15, 0x14, 0x16, + 0x1f, 0x0b, 0xed, 0x54, 0x56, 0x57, 0x76, 0x76, 0x57, 0x54, 0x54, 0x55, + 0x7a, 0x47, 0x53, 0x9a, 0x5a, 0x3e, 0x3d, 0x3d, 0x40, 0x58, 0x59, 0x3c, + 0x3e, 0x3e, 0x3c, 0x04, 0x00, 0x05, 0x12, 0x0e, 0x0b, 0x18, 0x0e, 0x03, + 0x0a, 0x05, 0x08, 0x09, 0x02, 0x02, 0x02, 0x02, 0x08, 0x09, 0x07, 0x06, + 0x0c, 0x0e, 0x09, 0x12, 0x22, 0x4f, 0x2d, 0x1f, 0x40, 0x22, 0x0b, 0x10, + 0x05, 0x05, 0x07, 0x03, 0x06, 0x27, 0x2a, 0x52, 0x2a, 0xee, 0x51, 0x6d, + 0x7d, 0x56, 0x58, 0x54, 0x54, 0x75, 0x75, 0x57, 0x56, 0x2b, 0x20, 0x3e, + 0x3d, 0x58, 0x5b, 0x3d, 0x3d, 0x3d, 0x3e, 0x5a, 0x57, 0x3e, 0x3e, 0x00, + 0x00, 0x01, 0x00, 0x3b, 0x00, 0x00, 0x04, 0x05, 0x04, 0xcf, 0x00, 0x2f, + 0x00, 0x28, 0x40, 0x19, 0x26, 0x20, 0x0a, 0x30, 0x0a, 0x60, 0x0a, 0x70, + 0x0a, 0x04, 0x0a, 0x0e, 0x22, 0x40, 0x08, 0x0b, 0x48, 0x22, 0x17, 0x4f, + 0x00, 0x5f, 0x00, 0x02, 0x00, 0x00, 0x2f, 0x5d, 0x2f, 0x2f, 0x2b, 0x33, + 0x01, 0x2f, 0x5d, 0x2f, 0x31, 0x30, 0x01, 0x1e, 0x01, 0x17, 0x1e, 0x01, + 0x17, 0x16, 0x17, 0x16, 0x15, 0x14, 0x07, 0x06, 0x23, 0x22, 0x27, 0x16, + 0x17, 0x1e, 0x01, 0x1f, 0x01, 0x21, 0x37, 0x32, 0x37, 0x3e, 0x03, 0x27, + 0x0e, 0x01, 0x23, 0x22, 0x27, 0x26, 0x35, 0x34, 0x37, 0x3e, 0x01, 0x37, + 0x3e, 0x01, 0x37, 0x36, 0x02, 0x20, 0x0e, 0x28, 0x1a, 0x1c, 0x5f, 0x45, + 0x8d, 0x23, 0x25, 0x3f, 0x42, 0x58, 0x9d, 0x63, 0x03, 0x24, 0x26, 0xa3, + 0x89, 0x08, 0xfc, 0xe8, 0x06, 0x7d, 0x56, 0x2b, 0x42, 0x2c, 0x14, 0x01, + 0x2d, 0x84, 0x53, 0x5a, 0x42, 0x3f, 0x1e, 0x17, 0x4e, 0x39, 0x45, 0x6e, + 0x26, 0x38, 0x04, 0xcf, 0x36, 0x5f, 0x2c, 0x2b, 0x69, 0x3f, 0x7e, 0x42, + 0x43, 0x46, 0x5f, 0x3f, 0x42, 0xbf, 0x93, 0x57, 0x56, 0x63, 0x09, 0x25, + 0x25, 0x31, 0x19, 0x45, 0x5b, 0x77, 0x4b, 0x60, 0x5f, 0x42, 0x3f, 0x5b, + 0x4a, 0x3b, 0x2a, 0x55, 0x2f, 0x3b, 0x71, 0x39, 0x53, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x3c, 0x00, 0x00, 0x05, 0x04, 0x04, 0xc7, 0x00, 0x4b, + 0x00, 0x2f, 0x40, 0x18, 0x39, 0x4d, 0x3f, 0x17, 0x01, 0x17, 0x34, 0x3d, + 0x43, 0x0d, 0x2f, 0x1e, 0x04, 0x12, 0x1f, 0x12, 0x01, 0x1b, 0x12, 0x1b, + 0x12, 0x01, 0x29, 0x01, 0x00, 0x2f, 0x2f, 0x12, 0x39, 0x39, 0x2f, 0x2f, + 0x5d, 0x12, 0x17, 0x39, 0x32, 0x33, 0x01, 0x2f, 0x5d, 0x10, 0xce, 0x31, + 0x30, 0x29, 0x01, 0x37, 0x3e, 0x01, 0x37, 0x3e, 0x01, 0x37, 0x36, 0x35, + 0x34, 0x26, 0x35, 0x06, 0x07, 0x0e, 0x01, 0x23, 0x22, 0x26, 0x27, 0x26, + 0x35, 0x34, 0x37, 0x36, 0x33, 0x32, 0x16, 0x17, 0x2e, 0x01, 0x27, 0x2e, + 0x01, 0x35, 0x34, 0x37, 0x3e, 0x01, 0x33, 0x32, 0x17, 0x16, 0x15, 0x14, + 0x07, 0x36, 0x37, 0x3e, 0x01, 0x33, 0x32, 0x16, 0x17, 0x16, 0x15, 0x14, + 0x07, 0x06, 0x23, 0x22, 0x26, 0x27, 0x2e, 0x01, 0x27, 0x1e, 0x01, 0x17, + 0x1e, 0x01, 0x17, 0x16, 0x17, 0x04, 0x46, 0xfc, 0xb6, 0x08, 0x54, 0x6c, + 0x1b, 0x29, 0x40, 0x1a, 0x34, 0x02, 0x3a, 0x5a, 0x2b, 0x58, 0x2d, 0x3b, + 0x61, 0x29, 0x4f, 0x49, 0x49, 0x5d, 0x1f, 0x50, 0x33, 0x14, 0x1b, 0x08, + 0x05, 0x06, 0x4e, 0x28, 0x61, 0x3c, 0x74, 0x50, 0x50, 0x45, 0x54, 0x10, + 0x0e, 0x1e, 0x11, 0x33, 0x56, 0x24, 0x49, 0x50, 0x50, 0x70, 0x3e, 0x84, + 0x32, 0x11, 0x2b, 0x1a, 0x03, 0x17, 0x17, 0x16, 0x43, 0x2e, 0x3d, 0x9f, + 0x23, 0x11, 0x21, 0x11, 0x19, 0x4b, 0x32, 0x64, 0x6d, 0x08, 0x16, 0x11, + 0x79, 0x3b, 0x1c, 0x1e, 0x2a, 0x26, 0x53, 0x74, 0x73, 0x4f, 0x50, 0x19, + 0x1a, 0x22, 0x34, 0x13, 0x11, 0x26, 0x14, 0x73, 0x4e, 0x26, 0x28, 0x50, + 0x4e, 0x6d, 0x56, 0x62, 0x28, 0x03, 0x05, 0x03, 0x25, 0x29, 0x4c, 0x74, + 0x76, 0x53, 0x50, 0x3c, 0x33, 0x13, 0x3d, 0x2d, 0x51, 0x7d, 0x2e, 0x2d, + 0x4c, 0x1f, 0x27, 0x1e, 0x00, 0x01, 0x00, 0x66, 0xff, 0xe9, 0x04, 0x5a, + 0x04, 0x79, 0x00, 0x27, 0x00, 0x26, 0x40, 0x17, 0x12, 0x02, 0x01, 0x04, + 0x02, 0x01, 0x08, 0x1d, 0x29, 0x10, 0x0c, 0x40, 0x0c, 0x50, 0x0c, 0x70, + 0x0c, 0x80, 0x0c, 0x05, 0x0c, 0x10, 0x00, 0x00, 0x2f, 0x2f, 0x01, 0x2f, + 0x5d, 0x10, 0xce, 0x31, 0x30, 0x5e, 0x5d, 0x5d, 0x05, 0x2e, 0x01, 0x27, + 0x2e, 0x01, 0x27, 0x2e, 0x01, 0x27, 0x2e, 0x01, 0x35, 0x34, 0x37, 0x36, + 0x33, 0x32, 0x17, 0x1e, 0x01, 0x17, 0x3e, 0x01, 0x33, 0x32, 0x16, 0x17, + 0x16, 0x15, 0x14, 0x07, 0x0e, 0x01, 0x07, 0x0e, 0x01, 0x07, 0x0e, 0x01, + 0x02, 0x62, 0x0e, 0x2a, 0x1a, 0x1c, 0x67, 0x4c, 0x38, 0x45, 0x0e, 0x2b, + 0x25, 0x44, 0x46, 0x66, 0x62, 0x4e, 0x1c, 0x2f, 0x11, 0x22, 0x8e, 0x58, + 0x32, 0x55, 0x23, 0x46, 0x29, 0x14, 0x4e, 0x3c, 0x4b, 0x6c, 0x20, 0x1f, + 0x2c, 0x17, 0x38, 0x65, 0x30, 0x32, 0x93, 0x66, 0x4c, 0x5d, 0x16, 0x41, + 0x6a, 0x38, 0x67, 0x47, 0x46, 0x48, 0x1c, 0x50, 0x36, 0x77, 0x75, 0x24, + 0x22, 0x46, 0x5e, 0x56, 0x58, 0x2d, 0x77, 0x4b, 0x60, 0x98, 0x37, 0x36, + 0x6e, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x42, 0xff, 0xe7, 0x03, 0xd2, + 0x04, 0xc7, 0x00, 0x1a, 0x00, 0x12, 0xb7, 0x30, 0x0c, 0x01, 0x0c, 0x4b, + 0x15, 0x01, 0x15, 0x00, 0x19, 0x2f, 0x5d, 0x01, 0x2f, 0x5d, 0x31, 0x30, + 0x01, 0x1e, 0x01, 0x17, 0x1e, 0x01, 0x17, 0x0e, 0x01, 0x07, 0x0e, 0x01, + 0x07, 0x2e, 0x01, 0x27, 0x2e, 0x01, 0x27, 0x2e, 0x01, 0x27, 0x3e, 0x01, + 0x37, 0x3e, 0x01, 0x02, 0x07, 0x2d, 0x71, 0x45, 0x45, 0x74, 0x2f, 0x27, + 0x78, 0x53, 0x45, 0x6a, 0x28, 0x0d, 0x23, 0x16, 0x26, 0x62, 0x3c, 0x0e, + 0x5e, 0x51, 0x32, 0x80, 0x50, 0x3b, 0x60, 0x04, 0xc7, 0x4e, 0xa5, 0x5d, + 0x5d, 0x8d, 0x35, 0x28, 0x96, 0x6f, 0x5d, 0x9f, 0x48, 0x19, 0x3a, 0x20, + 0x39, 0x87, 0x50, 0x14, 0x77, 0x63, 0x3b, 0xa0, 0x6b, 0x4d, 0x94, 0x00, + 0x00, 0x01, 0x00, 0xc4, 0x00, 0x1d, 0x03, 0x3b, 0x04, 0x81, 0x00, 0x21, + 0x00, 0x30, 0x40, 0x19, 0x02, 0x13, 0x21, 0x0d, 0x40, 0x4f, 0x06, 0x5f, + 0x06, 0x6f, 0x06, 0x03, 0x06, 0x80, 0x1b, 0x21, 0x12, 0x0a, 0x0a, 0x2f, + 0x00, 0x01, 0x00, 0x1f, 0x18, 0x00, 0x2f, 0xcd, 0xcc, 0x5d, 0x39, 0x2f, + 0x39, 0x01, 0x2f, 0xcd, 0x1a, 0xdc, 0x5d, 0x1a, 0xcd, 0x10, 0xcd, 0x32, + 0x31, 0x30, 0x01, 0x33, 0x15, 0x17, 0x1e, 0x01, 0x15, 0x14, 0x06, 0x07, + 0x23, 0x3e, 0x01, 0x35, 0x34, 0x26, 0x27, 0x26, 0x27, 0x11, 0x14, 0x06, + 0x07, 0x06, 0x23, 0x22, 0x26, 0x35, 0x34, 0x37, 0x36, 0x33, 0x32, 0x17, + 0x01, 0xe9, 0x4c, 0x99, 0x33, 0x3a, 0x30, 0x2e, 0x2f, 0x1d, 0x1c, 0x1c, + 0x1d, 0x39, 0x40, 0x25, 0x25, 0x48, 0x6c, 0x39, 0x3a, 0x3c, 0x3f, 0x50, + 0x2c, 0x2e, 0x04, 0x81, 0x64, 0xc1, 0x45, 0xa3, 0x55, 0x4e, 0x86, 0x3b, + 0x41, 0x7c, 0x3b, 0x3c, 0x63, 0x28, 0x51, 0x09, 0xfe, 0x06, 0x3f, 0x62, + 0x26, 0x4b, 0x36, 0x2e, 0x49, 0x3c, 0x3c, 0x13, 0x00, 0x01, 0x01, 0x10, + 0xff, 0xcd, 0x04, 0xef, 0x04, 0x89, 0x00, 0x22, 0x00, 0x6c, 0x40, 0x3d, + 0x23, 0x20, 0x40, 0x12, 0x1a, 0x80, 0x24, 0x0f, 0x40, 0x6f, 0x00, 0x01, + 0x00, 0x80, 0x0f, 0x09, 0x01, 0x09, 0x09, 0x00, 0x1a, 0x01, 0x1a, 0x11, + 0x23, 0x56, 0x23, 0x01, 0x43, 0x23, 0x01, 0x23, 0x10, 0x24, 0x36, 0x24, + 0x01, 0x25, 0x24, 0x01, 0x14, 0x24, 0x01, 0x03, 0x24, 0x01, 0x08, 0x24, + 0x22, 0x26, 0x21, 0x58, 0x21, 0x01, 0x21, 0x25, 0x22, 0x1e, 0x17, 0x0d, + 0x06, 0x00, 0x2f, 0xcd, 0x2f, 0xcd, 0x2f, 0x33, 0x33, 0x5d, 0x11, 0x33, + 0x11, 0x33, 0x5e, 0x5d, 0x5d, 0x5d, 0x5d, 0x11, 0x33, 0x33, 0x5d, 0x5d, + 0x11, 0x33, 0x01, 0x2f, 0x5d, 0x33, 0x2f, 0x5d, 0x1a, 0xdd, 0x5d, 0x1a, + 0xcd, 0x32, 0x1a, 0x10, 0xdd, 0x1a, 0xcd, 0x33, 0x31, 0x30, 0x25, 0x14, + 0x06, 0x07, 0x0e, 0x01, 0x23, 0x22, 0x26, 0x35, 0x34, 0x37, 0x36, 0x33, + 0x32, 0x17, 0x11, 0x25, 0x11, 0x14, 0x06, 0x07, 0x06, 0x23, 0x22, 0x26, + 0x35, 0x34, 0x37, 0x36, 0x33, 0x32, 0x17, 0x11, 0x05, 0x04, 0xef, 0x24, + 0x26, 0x25, 0x58, 0x33, 0x39, 0x39, 0x39, 0x3e, 0x51, 0x30, 0x2a, 0xfd, + 0xda, 0x25, 0x23, 0x4a, 0x6a, 0x39, 0x3a, 0x3b, 0x3c, 0x54, 0x2d, 0x2d, + 0x02, 0xba, 0xe0, 0x3f, 0x65, 0x23, 0x25, 0x27, 0x36, 0x2f, 0x4c, 0x39, + 0x3b, 0x12, 0x02, 0xd8, 0x5b, 0xfd, 0x86, 0x3e, 0x62, 0x26, 0x4a, 0x35, + 0x2d, 0x4c, 0x39, 0x3c, 0x13, 0x02, 0xf0, 0x66, 0x00, 0x02, 0x01, 0x10, + 0xff, 0xd5, 0x04, 0xef, 0x04, 0x87, 0x00, 0x22, 0x00, 0x26, 0x00, 0x00, + 0x01, 0x14, 0x06, 0x07, 0x0e, 0x01, 0x23, 0x22, 0x26, 0x35, 0x34, 0x37, + 0x36, 0x33, 0x32, 0x17, 0x11, 0x05, 0x11, 0x14, 0x06, 0x07, 0x06, 0x23, + 0x22, 0x26, 0x35, 0x34, 0x37, 0x36, 0x33, 0x32, 0x17, 0x11, 0x25, 0x01, + 0x25, 0x35, 0x05, 0x04, 0xef, 0x24, 0x26, 0x25, 0x58, 0x33, 0x39, 0x39, + 0x39, 0x3e, 0x51, 0x30, 0x2a, 0xfd, 0xda, 0x25, 0x23, 0x4a, 0x6a, 0x39, + 0x3a, 0x3b, 0x3c, 0x54, 0x2d, 0x2d, 0x02, 0xba, 0xfd, 0x90, 0x02, 0x26, + 0xfd, 0xda, 0x01, 0x44, 0x3f, 0x65, 0x23, 0x25, 0x27, 0x36, 0x2f, 0x4c, + 0x39, 0x3b, 0x12, 0x01, 0xc0, 0x95, 0xfe, 0x76, 0x3e, 0x62, 0x26, 0x4a, + 0x35, 0x2d, 0x4c, 0x39, 0x3c, 0x13, 0x02, 0xf0, 0xb2, 0xfe, 0x67, 0x95, + 0x75, 0x98, 0x00, 0x00, 0x00, 0x03, 0x00, 0x1d, 0x00, 0x00, 0x03, 0x76, + 0x05, 0xcc, 0x00, 0x1b, 0x00, 0x1f, 0x00, 0x23, 0x00, 0x64, 0xb3, 0x43, + 0x0a, 0x01, 0x0a, 0xb8, 0xff, 0xe0, 0x40, 0x3b, 0x08, 0x0c, 0x48, 0x1f, + 0x23, 0x46, 0x1c, 0x2f, 0x20, 0x8f, 0x20, 0xcf, 0x20, 0x03, 0x1f, 0x20, + 0x4f, 0x20, 0x6f, 0x20, 0x8f, 0x20, 0x04, 0x20, 0x4f, 0x10, 0x5f, 0x10, + 0x02, 0x10, 0x10, 0x01, 0x46, 0x90, 0x02, 0x01, 0x6f, 0x02, 0x01, 0x02, + 0x22, 0x0f, 0x1f, 0x53, 0x1e, 0x00, 0x13, 0x50, 0x0c, 0x00, 0x00, 0x04, + 0x50, 0x19, 0x05, 0x0f, 0x20, 0x01, 0x15, 0x00, 0x3f, 0x33, 0x3f, 0x33, + 0xed, 0x32, 0x3f, 0xed, 0x3f, 0xed, 0x3f, 0x01, 0x2f, 0x5d, 0x5d, 0xed, + 0x32, 0x2f, 0x5d, 0x2f, 0x5d, 0x71, 0x33, 0xed, 0x32, 0x31, 0x30, 0x00, + 0x2b, 0x5d, 0x01, 0x11, 0x23, 0x11, 0x23, 0x35, 0x33, 0x35, 0x34, 0x3e, + 0x02, 0x33, 0x32, 0x16, 0x17, 0x15, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, + 0x1d, 0x01, 0x33, 0x15, 0x13, 0x35, 0x33, 0x15, 0x03, 0x11, 0x33, 0x11, + 0x01, 0x69, 0xb4, 0x98, 0x98, 0x16, 0x3b, 0x66, 0x51, 0x20, 0x45, 0x1a, + 0x11, 0x2d, 0x12, 0x28, 0x33, 0x1d, 0x0b, 0xd3, 0x86, 0xb4, 0xb4, 0xb4, + 0x03, 0xb7, 0xfc, 0x49, 0x03, 0xb7, 0x83, 0x7a, 0x3b, 0x65, 0x4b, 0x2b, + 0x06, 0x06, 0x89, 0x03, 0x05, 0x16, 0x29, 0x3c, 0x27, 0x61, 0x83, 0x01, + 0x69, 0xac, 0xac, 0xfa, 0xe0, 0x04, 0x3a, 0xfb, 0xc6, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x1d, 0x00, 0x00, 0x03, 0x77, 0x05, 0xcc, 0x00, 0x1b, + 0x00, 0x1f, 0x00, 0x5a, 0xb3, 0x43, 0x0a, 0x01, 0x0a, 0xb8, 0xff, 0xe0, + 0x40, 0x35, 0x08, 0x0c, 0x48, 0x1f, 0x46, 0x2f, 0x1c, 0x8f, 0x1c, 0xcf, + 0x1c, 0x03, 0x1f, 0x1c, 0x4f, 0x1c, 0x6f, 0x1c, 0x8f, 0x1c, 0x04, 0x1c, + 0x4f, 0x10, 0x5f, 0x10, 0x02, 0x10, 0x10, 0x01, 0x46, 0x90, 0x02, 0x01, + 0x6f, 0x02, 0x01, 0x02, 0x1e, 0x00, 0x13, 0x50, 0x0c, 0x00, 0x00, 0x04, + 0x50, 0x19, 0x05, 0x0f, 0x1c, 0x01, 0x15, 0x00, 0x3f, 0x33, 0x3f, 0x33, + 0xed, 0x32, 0x3f, 0xed, 0x3f, 0x01, 0x2f, 0x5d, 0x5d, 0xed, 0x32, 0x2f, + 0x5d, 0x2f, 0x5d, 0x71, 0xed, 0x31, 0x30, 0x00, 0x2b, 0x5d, 0x01, 0x11, + 0x23, 0x11, 0x23, 0x35, 0x33, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x16, + 0x17, 0x15, 0x2e, 0x01, 0x23, 0x22, 0x0e, 0x02, 0x1d, 0x01, 0x33, 0x15, + 0x13, 0x11, 0x33, 0x11, 0x01, 0x69, 0xb4, 0x98, 0x98, 0x16, 0x3b, 0x66, + 0x51, 0x20, 0x45, 0x1a, 0x11, 0x2d, 0x12, 0x28, 0x33, 0x1d, 0x0b, 0xd3, + 0x87, 0xb4, 0x03, 0xb7, 0xfc, 0x49, 0x03, 0xb7, 0x83, 0x7a, 0x3b, 0x65, + 0x4b, 0x2b, 0x06, 0x06, 0x89, 0x03, 0x05, 0x16, 0x29, 0x3c, 0x27, 0x61, + 0x83, 0xfc, 0x49, 0x05, 0xcc, 0xfa, 0x34, 0x00, 0x00, 0x01, 0x00, 0x77, + 0xfe, 0x4e, 0x01, 0xe3, 0xff, 0xaa, 0x00, 0x1c, 0x00, 0x4b, 0xb9, 0x00, + 0x02, 0xff, 0xe8, 0xb3, 0x09, 0x11, 0x48, 0x1b, 0xb8, 0xff, 0xe0, 0x40, + 0x28, 0x09, 0x11, 0x48, 0x16, 0x16, 0x08, 0x10, 0x83, 0x0f, 0x00, 0x01, + 0x5f, 0x00, 0x01, 0x00, 0x08, 0x13, 0x8c, 0x3f, 0x17, 0x4f, 0x17, 0x02, + 0x17, 0x0b, 0x8c, 0x00, 0x05, 0x10, 0x05, 0x20, 0x05, 0x50, 0x05, 0x60, + 0x05, 0x70, 0x05, 0x06, 0x05, 0x00, 0x2f, 0x5d, 0xed, 0x2f, 0x5d, 0xed, + 0x01, 0x2f, 0xdd, 0x5d, 0x71, 0xed, 0x12, 0x39, 0x2f, 0x31, 0x30, 0x2b, + 0x2b, 0x05, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x26, 0x27, 0x35, 0x16, 0x33, + 0x32, 0x3e, 0x02, 0x35, 0x34, 0x26, 0x23, 0x2a, 0x01, 0x07, 0x37, 0x33, + 0x32, 0x1e, 0x02, 0x01, 0xe3, 0x1e, 0x41, 0x68, 0x4b, 0x14, 0x2d, 0x19, + 0x31, 0x25, 0x29, 0x38, 0x23, 0x0f, 0x3d, 0x48, 0x0e, 0x1d, 0x0e, 0x1f, + 0x3e, 0x34, 0x54, 0x3c, 0x20, 0xfd, 0x29, 0x43, 0x30, 0x19, 0x01, 0x03, + 0x62, 0x06, 0x0c, 0x15, 0x1e, 0x12, 0x25, 0x28, 0x02, 0x60, 0x12, 0x29, + 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0xf3, 0x01, 0xbe, 0x01, 0xb6, + 0x02, 0x9a, 0x11, 0x06, 0x00, 0x77, 0x38, 0x00, 0x00, 0x12, 0x40, 0x0b, + 0x00, 0x7f, 0x00, 0x01, 0x6f, 0x00, 0x01, 0x5f, 0x00, 0x01, 0x00, 0x11, + 0x5d, 0x5d, 0x5d, 0x35, 0x00, 0x01, 0x00, 0x7f, 0xfe, 0x4e, 0x01, 0x48, + 0xff, 0x9e, 0x00, 0x0a, 0x00, 0x4b, 0xb9, 0x00, 0x05, 0xff, 0xc0, 0xb3, + 0x09, 0x11, 0x48, 0x02, 0xb8, 0xff, 0xc0, 0x40, 0x1c, 0x09, 0x11, 0x48, + 0x07, 0x97, 0x00, 0x96, 0x04, 0x09, 0x08, 0x92, 0x10, 0x03, 0x20, 0x03, + 0x02, 0x00, 0x03, 0x60, 0x03, 0xa0, 0x03, 0xb0, 0x03, 0xc0, 0x03, 0x05, + 0x03, 0xb8, 0xff, 0xc0, 0x40, 0x0a, 0x1e, 0x21, 0x48, 0x03, 0x00, 0x09, + 0x10, 0x09, 0x02, 0x09, 0x00, 0x2f, 0x5d, 0xcc, 0x2b, 0x5d, 0x71, 0xed, + 0x01, 0x2f, 0x33, 0xfd, 0xed, 0x31, 0x30, 0x2b, 0x2b, 0x05, 0x14, 0x06, + 0x07, 0x23, 0x3e, 0x01, 0x35, 0x23, 0x35, 0x33, 0x01, 0x48, 0x2c, 0x28, + 0x75, 0x2d, 0x31, 0x58, 0xc3, 0xc1, 0x57, 0x6b, 0x2f, 0x30, 0x56, 0x2e, + 0x9c, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x0e, 0x02, 0x33, 0x02, 0x96, + 0x05, 0x81, 0x00, 0x0a, 0x00, 0x17, 0x00, 0x6c, 0x40, 0x4a, 0x56, 0x0a, + 0x01, 0x56, 0x09, 0x01, 0x79, 0x06, 0x89, 0x06, 0x02, 0x11, 0xaf, 0x05, + 0xbf, 0x05, 0x02, 0x05, 0x40, 0x1d, 0x3c, 0x48, 0x05, 0x40, 0x18, 0x1b, + 0x48, 0x05, 0x08, 0x01, 0xe0, 0x12, 0x06, 0x10, 0x02, 0x01, 0x30, 0x02, + 0x01, 0x40, 0x02, 0x90, 0x02, 0x02, 0x02, 0x00, 0x04, 0xe5, 0x08, 0x05, + 0x5f, 0x11, 0x6f, 0x11, 0x7f, 0x11, 0x03, 0x0f, 0x11, 0x1f, 0x11, 0x7f, + 0x11, 0x8f, 0x11, 0x04, 0x11, 0x11, 0x01, 0x0b, 0x06, 0xdc, 0x01, 0xdf, + 0x00, 0x3f, 0x3f, 0x33, 0x12, 0x39, 0x2f, 0x5d, 0x71, 0x33, 0x33, 0xed, + 0x32, 0x01, 0x2f, 0x5d, 0x71, 0x72, 0x33, 0x33, 0xed, 0x32, 0x2f, 0x2b, + 0x2b, 0x5d, 0x33, 0x31, 0x30, 0x5d, 0x72, 0x72, 0x01, 0x15, 0x23, 0x35, + 0x21, 0x35, 0x01, 0x33, 0x11, 0x33, 0x15, 0x03, 0x0e, 0x03, 0x07, 0x03, + 0x21, 0x11, 0x3c, 0x02, 0x36, 0x02, 0x27, 0x83, 0xfe, 0x6a, 0x01, 0x82, + 0x97, 0x6f, 0xf0, 0x07, 0x16, 0x18, 0x16, 0x07, 0xc7, 0x01, 0x17, 0x01, + 0x02, 0xe5, 0xb2, 0xb2, 0x6f, 0x02, 0x2d, 0xfd, 0xd5, 0x71, 0x02, 0x17, + 0x0d, 0x25, 0x27, 0x23, 0x0b, 0xfe, 0xe1, 0x01, 0x21, 0x0e, 0x26, 0x26, + 0x22, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x35, 0x02, 0x28, 0x02, 0x7c, + 0x05, 0x81, 0x00, 0x26, 0x00, 0x86, 0x40, 0x25, 0x25, 0x24, 0x35, 0x24, + 0x45, 0x24, 0x03, 0x03, 0x18, 0x09, 0x0d, 0x48, 0x13, 0x22, 0x01, 0x04, + 0x22, 0x01, 0x03, 0x1f, 0x1e, 0x19, 0xe0, 0x8b, 0x1b, 0x01, 0x06, 0x1b, + 0x0a, 0xc0, 0x1a, 0xd0, 0x1a, 0xe0, 0x1a, 0x03, 0x1a, 0xb8, 0xff, 0xc0, + 0x40, 0x35, 0x10, 0x13, 0x48, 0x1a, 0x1d, 0x00, 0xe1, 0x20, 0x13, 0x60, + 0x13, 0x02, 0x20, 0x13, 0x60, 0x13, 0xa0, 0x13, 0xe0, 0x13, 0x04, 0x13, + 0x16, 0xe4, 0x22, 0x22, 0x10, 0x1e, 0xe5, 0x1b, 0xdc, 0x44, 0x0b, 0x54, + 0x0b, 0x64, 0x0b, 0x03, 0x35, 0x0b, 0x01, 0x06, 0x0b, 0x16, 0x0b, 0x26, + 0x0b, 0x03, 0x0b, 0x10, 0xe4, 0x05, 0xdd, 0x00, 0x3f, 0xed, 0x32, 0x5d, + 0x5d, 0x5d, 0x3f, 0xed, 0x12, 0x39, 0x2f, 0xed, 0x01, 0x2f, 0x5d, 0x71, + 0xed, 0x32, 0x2f, 0x2b, 0x5d, 0x33, 0x33, 0x5f, 0x71, 0xed, 0x32, 0x32, + 0x00, 0x5f, 0x5d, 0x5d, 0x31, 0x30, 0x2b, 0x5d, 0x01, 0x14, 0x0e, 0x02, + 0x23, 0x22, 0x2e, 0x02, 0x27, 0x37, 0x1e, 0x03, 0x33, 0x32, 0x36, 0x35, + 0x34, 0x26, 0x23, 0x22, 0x06, 0x07, 0x23, 0x13, 0x21, 0x15, 0x21, 0x07, + 0x3e, 0x01, 0x33, 0x32, 0x1e, 0x02, 0x02, 0x7c, 0x26, 0x49, 0x6c, 0x46, + 0x42, 0x65, 0x4a, 0x2c, 0x09, 0x85, 0x05, 0x18, 0x27, 0x36, 0x24, 0x47, + 0x56, 0x51, 0x4b, 0x33, 0x4d, 0x17, 0x81, 0x21, 0x01, 0xfa, 0xfe, 0x72, + 0x13, 0x1d, 0x5b, 0x36, 0x43, 0x67, 0x45, 0x24, 0x03, 0x43, 0x41, 0x68, + 0x4a, 0x28, 0x21, 0x3b, 0x51, 0x30, 0x0f, 0x1b, 0x2f, 0x24, 0x15, 0x55, + 0x5d, 0x51, 0x55, 0x25, 0x17, 0x01, 0xd4, 0x71, 0xf5, 0x1a, 0x21, 0x27, + 0x47, 0x66, 0x00, 0x00, 0x00, 0x01, 0x00, 0x2b, 0x02, 0x34, 0x02, 0x78, + 0x05, 0x81, 0x00, 0x0e, 0x00, 0x36, 0x40, 0x21, 0x05, 0xe0, 0x06, 0x06, + 0x00, 0xaf, 0x0c, 0xbf, 0x0c, 0x02, 0x0c, 0x0b, 0x60, 0x00, 0x01, 0xbf, + 0x00, 0xcf, 0x00, 0xff, 0x00, 0x03, 0x60, 0x00, 0x01, 0x00, 0x00, 0x0c, + 0xe5, 0x0d, 0xdc, 0x05, 0xdf, 0x00, 0x3f, 0x3f, 0xed, 0x32, 0x01, 0x2f, + 0x5d, 0x5d, 0x71, 0x33, 0x2f, 0x5d, 0x11, 0x39, 0x2f, 0xed, 0x31, 0x30, + 0x01, 0x0e, 0x03, 0x15, 0x23, 0x34, 0x3e, 0x02, 0x37, 0x21, 0x35, 0x21, + 0x02, 0x78, 0x40, 0x6a, 0x4d, 0x2b, 0x85, 0x2f, 0x50, 0x6b, 0x3c, 0xfe, + 0x34, 0x02, 0x4d, 0x05, 0x1c, 0x61, 0xb0, 0xb0, 0xbb, 0x6c, 0x66, 0xbc, + 0xb3, 0xaf, 0x58, 0x71, 0x00, 0x03, 0x00, 0x2d, 0x02, 0x28, 0x02, 0x82, + 0x05, 0x8e, 0x00, 0x13, 0x00, 0x27, 0x00, 0x51, 0x00, 0x8a, 0xb9, 0x00, + 0x44, 0xff, 0xe8, 0xb3, 0x0b, 0x0f, 0x48, 0x40, 0xb8, 0xff, 0xe8, 0x40, + 0x52, 0x0b, 0x0f, 0x48, 0x2f, 0x18, 0x09, 0x0d, 0x48, 0x2b, 0x18, 0x09, + 0x0d, 0x48, 0x05, 0x0f, 0x15, 0x0f, 0x02, 0x4c, 0x37, 0x47, 0x0a, 0xe2, + 0x48, 0x3d, 0x01, 0x3d, 0x3d, 0x1e, 0xe2, 0xe0, 0x32, 0x01, 0xbf, 0x32, + 0x01, 0x32, 0x00, 0xe2, 0x46, 0x47, 0x01, 0x47, 0x47, 0x28, 0xe2, 0x20, + 0x14, 0x60, 0x14, 0x02, 0x20, 0x14, 0x60, 0x14, 0xa0, 0x14, 0xe0, 0x14, + 0x04, 0x14, 0x4c, 0x38, 0x19, 0xe4, 0x0f, 0x0f, 0x23, 0x1a, 0x05, 0x01, + 0x0b, 0x05, 0x01, 0x05, 0xe4, 0x42, 0xde, 0x23, 0xe4, 0x2d, 0xdd, 0x00, + 0x3f, 0xed, 0x3f, 0xed, 0x5d, 0x5d, 0x12, 0x39, 0x2f, 0xed, 0x39, 0x39, + 0x01, 0x2f, 0x5d, 0x71, 0xed, 0x32, 0x2f, 0x71, 0xed, 0x2f, 0x5d, 0x5d, + 0xed, 0x33, 0x2f, 0x71, 0xed, 0x12, 0x39, 0x39, 0x00, 0x5d, 0x31, 0x30, + 0x2b, 0x2b, 0x2b, 0x2b, 0x01, 0x34, 0x2e, 0x02, 0x23, 0x22, 0x0e, 0x02, + 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, 0x13, 0x34, 0x2e, 0x02, + 0x23, 0x22, 0x0e, 0x02, 0x15, 0x14, 0x1e, 0x02, 0x33, 0x32, 0x3e, 0x02, + 0x37, 0x14, 0x0e, 0x02, 0x23, 0x22, 0x2e, 0x02, 0x35, 0x34, 0x3e, 0x02, + 0x37, 0x35, 0x2e, 0x03, 0x35, 0x34, 0x3e, 0x02, 0x33, 0x32, 0x1e, 0x02, + 0x15, 0x14, 0x0e, 0x02, 0x07, 0x15, 0x1e, 0x03, 0x01, 0xdf, 0x0c, 0x1f, + 0x35, 0x29, 0x27, 0x35, 0x1f, 0x0d, 0x09, 0x1d, 0x36, 0x2d, 0x30, 0x36, + 0x1b, 0x07, 0x15, 0x0d, 0x23, 0x3d, 0x31, 0x2d, 0x3b, 0x24, 0x0f, 0x0f, + 0x24, 0x3d, 0x2e, 0x2e, 0x3d, 0x22, 0x0e, 0x8e, 0x23, 0x49, 0x71, 0x4d, + 0x4d, 0x71, 0x4a, 0x23, 0x1d, 0x2f, 0x3d, 0x20, 0x24, 0x37, 0x26, 0x14, + 0x23, 0x46, 0x68, 0x44, 0x48, 0x69, 0x45, 0x21, 0x14, 0x26, 0x38, 0x24, + 0x24, 0x3f, 0x2e, 0x1a, 0x04, 0xa9, 0x1c, 0x30, 0x22, 0x13, 0x13, 0x22, + 0x30, 0x1c, 0x17, 0x2f, 0x27, 0x19, 0x19, 0x27, 0x30, 0xfe, 0x9b, 0x1c, + 0x34, 0x28, 0x18, 0x18, 0x29, 0x35, 0x1c, 0x23, 0x3b, 0x2a, 0x17, 0x17, + 0x2a, 0x3c, 0x16, 0x36, 0x5b, 0x42, 0x25, 0x25, 0x42, 0x5a, 0x36, 0x2e, + 0x48, 0x34, 0x20, 0x05, 0x03, 0x08, 0x25, 0x34, 0x40, 0x23, 0x2d, 0x4f, + 0x3b, 0x22, 0x23, 0x3c, 0x4f, 0x2c, 0x23, 0x3f, 0x34, 0x25, 0x07, 0x03, + 0x06, 0x1f, 0x34, 0x48, 0x00, 0x01, 0xff, 0xe5, 0x04, 0xb0, 0x02, 0xc3, + 0x05, 0xf0, 0x00, 0x11, 0x00, 0x3e, 0x40, 0x29, 0x75, 0x0b, 0x85, 0x0b, + 0x02, 0x75, 0x07, 0x85, 0x07, 0x02, 0x0c, 0x49, 0x0f, 0x0d, 0xbf, 0x0d, + 0xef, 0x0d, 0x03, 0x0d, 0x06, 0x49, 0x40, 0x05, 0x0c, 0x05, 0x80, 0x09, + 0x8e, 0x0f, 0x00, 0x2f, 0x00, 0x3f, 0x00, 0x7f, 0x00, 0xef, 0x00, 0x05, + 0x00, 0x00, 0x2f, 0x5d, 0xed, 0x1a, 0xcd, 0x32, 0x01, 0x2f, 0x1a, 0xed, + 0xdc, 0x5d, 0xed, 0x31, 0x30, 0x00, 0x5d, 0x5d, 0x01, 0x22, 0x2e, 0x02, + 0x27, 0x33, 0x1e, 0x01, 0x33, 0x32, 0x36, 0x37, 0x33, 0x0e, 0x03, 0x01, + 0x54, 0x6f, 0x8d, 0x51, 0x20, 0x02, 0xa4, 0x06, 0x68, 0x5d, 0x5d, 0x68, + 0x06, 0xa4, 0x02, 0x20, 0x51, 0x8d, 0x04, 0xb0, 0x39, 0x5b, 0x73, 0x39, + 0x67, 0x60, 0x60, 0x67, 0x39, 0x73, 0x5b, 0x39, 0x00, 0x01, 0x00, 0x7c, + 0x04, 0x1c, 0x01, 0x45, 0x05, 0x81, 0x00, 0x0a, 0x00, 0x24, 0x40, 0x15, + 0x07, 0x97, 0x00, 0x96, 0x04, 0x09, 0x08, 0x92, 0x50, 0x03, 0x60, 0x03, + 0x02, 0xa0, 0x03, 0xb0, 0x03, 0x02, 0x03, 0x09, 0x03, 0x00, 0x3f, 0xcc, + 0x5d, 0x71, 0xed, 0x01, 0x2f, 0x33, 0xfd, 0xed, 0x31, 0x30, 0x01, 0x14, + 0x06, 0x07, 0x23, 0x3e, 0x01, 0x35, 0x23, 0x35, 0x33, 0x01, 0x45, 0x2c, + 0x28, 0x75, 0x2d, 0x31, 0x58, 0xc3, 0x05, 0x17, 0x57, 0x75, 0x2f, 0x30, + 0x60, 0x2e, 0xa7, 0x00, 0x00, 0x01, 0x00, 0x82, 0x04, 0xbb, 0x01, 0x4b, + 0x06, 0x20, 0x00, 0x0a, 0x00, 0x2f, 0x40, 0x1e, 0x04, 0x09, 0x96, 0x07, + 0x97, 0x0a, 0x07, 0x92, 0x5f, 0x03, 0x6f, 0x03, 0x02, 0xaf, 0x03, 0xbf, + 0x03, 0x02, 0x03, 0x50, 0x0a, 0x01, 0x0f, 0x0a, 0x3f, 0x0a, 0x7f, 0x0a, + 0x03, 0x0a, 0x00, 0x2f, 0x5d, 0x71, 0xcd, 0x5d, 0x71, 0xed, 0x01, 0x2f, + 0xed, 0xed, 0x32, 0x31, 0x30, 0x13, 0x34, 0x36, 0x37, 0x33, 0x0e, 0x01, + 0x15, 0x33, 0x15, 0x23, 0x82, 0x2c, 0x28, 0x75, 0x2d, 0x31, 0x58, 0xc3, + 0x05, 0x25, 0x57, 0x75, 0x2f, 0x30, 0x60, 0x2e, 0xa7, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x6a, 0x05, 0xfa, 0x02, 0x12, 0x06, 0xf0, 0x00, 0x05, + 0x00, 0x30, 0x40, 0x1e, 0x75, 0x03, 0x85, 0x03, 0x02, 0x80, 0x04, 0x01, + 0x40, 0x04, 0x01, 0x04, 0x40, 0x01, 0x02, 0x40, 0x10, 0x14, 0x48, 0x02, + 0x80, 0x5f, 0x00, 0x01, 0x00, 0x40, 0x09, 0x0c, 0x48, 0x00, 0x00, 0x2f, + 0x2b, 0x5d, 0x1a, 0xcd, 0x2b, 0x01, 0x2f, 0x1a, 0xcd, 0x5d, 0x5d, 0x31, + 0x30, 0x5d, 0x01, 0x25, 0x35, 0x33, 0x17, 0x15, 0x01, 0xa0, 0xfe, 0xca, + 0xcf, 0xd9, 0x05, 0xfa, 0xd9, 0x1d, 0xe2, 0x14, 0x00, 0x01, 0x00, 0x48, + 0x05, 0xfa, 0x01, 0xf0, 0x06, 0xf0, 0x00, 0x05, 0x00, 0x34, 0x40, 0x22, + 0x7a, 0x02, 0x8a, 0x02, 0x02, 0x40, 0x03, 0x80, 0x03, 0x02, 0x03, 0x40, + 0x4f, 0x00, 0x8f, 0x00, 0x02, 0x00, 0x02, 0x40, 0x10, 0x14, 0x48, 0x02, + 0x80, 0x5f, 0x00, 0x01, 0x00, 0x40, 0x09, 0x0c, 0x48, 0x00, 0x00, 0x2f, + 0x2b, 0x5d, 0x1a, 0xcd, 0x2b, 0x01, 0x2f, 0x5d, 0x1a, 0xcd, 0x5d, 0x31, + 0x30, 0x5d, 0x13, 0x35, 0x37, 0x33, 0x15, 0x05, 0x48, 0xd9, 0xcf, 0xfe, + 0xca, 0x05, 0xfa, 0x14, 0xe2, 0x1d, 0xd9, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x05, 0xfa, 0x02, 0x96, 0x06, 0xfe, 0x00, 0x09, 0x00, 0x41, 0x40, 0x0e, + 0x76, 0x09, 0x86, 0x09, 0x02, 0x78, 0x08, 0x88, 0x08, 0x02, 0x80, 0x00, + 0x01, 0x00, 0xb8, 0xff, 0xc0, 0x40, 0x19, 0x0b, 0x0f, 0x48, 0x00, 0x06, + 0x04, 0x8e, 0x40, 0x08, 0x40, 0x10, 0x13, 0x48, 0x08, 0x80, 0x06, 0x5f, + 0x01, 0x01, 0x01, 0x40, 0x09, 0x0c, 0x48, 0x01, 0x00, 0x2f, 0x2b, 0x5d, + 0x33, 0x1a, 0xdd, 0x2b, 0x1a, 0xed, 0x01, 0x2f, 0xcc, 0x2b, 0x5d, 0x31, + 0x30, 0x5d, 0x5d, 0x01, 0x15, 0x23, 0x27, 0x23, 0x07, 0x23, 0x35, 0x37, + 0x33, 0x02, 0x96, 0x69, 0xdb, 0x02, 0xe8, 0x68, 0xea, 0xcc, 0x06, 0x0e, + 0x14, 0x8b, 0x8b, 0x14, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x05, 0xfa, 0x02, 0x96, 0x06, 0xfe, 0x00, 0x09, 0x00, 0x41, 0x40, 0x0e, + 0x76, 0x00, 0x86, 0x00, 0x02, 0x78, 0x01, 0x88, 0x01, 0x02, 0x80, 0x08, + 0x01, 0x08, 0xb8, 0xff, 0xc0, 0x40, 0x19, 0x0b, 0x0f, 0x48, 0x08, 0x40, + 0x02, 0x07, 0x03, 0x40, 0x10, 0x13, 0x48, 0x03, 0x80, 0x06, 0x8e, 0x5f, + 0x01, 0x01, 0x01, 0x40, 0x09, 0x0c, 0x48, 0x01, 0x00, 0x2f, 0x2b, 0x5d, + 0xed, 0x1a, 0xcd, 0x2b, 0x32, 0x01, 0x2f, 0x1a, 0xcc, 0x2b, 0x5d, 0x31, + 0x30, 0x5d, 0x5d, 0x01, 0x23, 0x27, 0x35, 0x33, 0x17, 0x33, 0x37, 0x33, + 0x15, 0x01, 0xb6, 0xcc, 0xea, 0x68, 0xe8, 0x02, 0xdb, 0x69, 0x05, 0xfa, + 0xef, 0x15, 0x8b, 0x8b, 0x15, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x2d, + 0x05, 0xfa, 0x02, 0x5a, 0x06, 0xb2, 0x00, 0x03, 0x00, 0x07, 0x00, 0x23, + 0x40, 0x13, 0x03, 0x85, 0x00, 0x07, 0x85, 0x04, 0x01, 0x05, 0x91, 0x00, + 0x5f, 0x04, 0x01, 0x04, 0x40, 0x09, 0x0c, 0x48, 0x04, 0x00, 0x2f, 0x2b, + 0x5d, 0x33, 0xed, 0x32, 0x01, 0x2f, 0xed, 0xdc, 0xed, 0x31, 0x30, 0x01, + 0x35, 0x33, 0x15, 0x21, 0x35, 0x33, 0x15, 0x01, 0xb7, 0xa3, 0xfd, 0xd3, + 0xa5, 0x05, 0xfa, 0xb8, 0xb8, 0xb8, 0xb8, 0x00, 0x00, 0x01, 0xff, 0xe9, + 0x05, 0xfa, 0x02, 0xb6, 0x07, 0x06, 0x00, 0x1b, 0x00, 0x44, 0xb5, 0x59, + 0x02, 0x69, 0x02, 0x02, 0x1a, 0xb8, 0xff, 0xe8, 0x40, 0x22, 0x09, 0x0f, + 0x48, 0x0c, 0x18, 0x09, 0x0f, 0x48, 0x40, 0x17, 0x01, 0x0f, 0x17, 0x01, + 0x17, 0x09, 0x16, 0x05, 0x8f, 0x40, 0x0e, 0x80, 0x13, 0x8f, 0x08, 0x5f, + 0x00, 0x01, 0x00, 0x40, 0x09, 0x0c, 0x48, 0x00, 0x00, 0x2f, 0x2b, 0x5d, + 0x32, 0xed, 0x1a, 0xdd, 0x1a, 0xed, 0x33, 0x01, 0x2f, 0xcc, 0x5d, 0x5d, + 0x31, 0x30, 0x2b, 0x2b, 0x00, 0x5d, 0x01, 0x22, 0x2e, 0x02, 0x23, 0x22, + 0x06, 0x07, 0x23, 0x3e, 0x03, 0x33, 0x32, 0x1e, 0x02, 0x33, 0x32, 0x36, + 0x37, 0x33, 0x0e, 0x03, 0x01, 0xec, 0x2a, 0x54, 0x4e, 0x47, 0x1f, 0x37, + 0x36, 0x09, 0x5b, 0x05, 0x14, 0x2d, 0x4a, 0x3b, 0x2c, 0x54, 0x4e, 0x45, + 0x1e, 0x36, 0x37, 0x08, 0x5c, 0x05, 0x14, 0x2b, 0x4a, 0x05, 0xfa, 0x25, + 0x2d, 0x25, 0x3e, 0x39, 0x2d, 0x5f, 0x4e, 0x32, 0x25, 0x2d, 0x25, 0x3f, + 0x38, 0x2c, 0x5f, 0x4e, 0x33, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x20, + 0x05, 0xfa, 0x03, 0x0f, 0x06, 0xf1, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x58, + 0x40, 0x3c, 0x9a, 0x08, 0xaa, 0x08, 0x02, 0x9a, 0x02, 0xaa, 0x02, 0x02, + 0x66, 0x0a, 0x01, 0x62, 0x04, 0x01, 0x62, 0x03, 0x01, 0x0a, 0x9f, 0x07, + 0x01, 0x0f, 0x07, 0x1f, 0x07, 0x7f, 0x07, 0xdf, 0x07, 0x04, 0x07, 0x07, + 0x04, 0x40, 0x00, 0x40, 0x09, 0x1f, 0x48, 0x00, 0x08, 0x02, 0x40, 0x10, + 0x14, 0x48, 0x02, 0x80, 0x06, 0x5f, 0x00, 0x01, 0x00, 0x40, 0x09, 0x0c, + 0x48, 0x00, 0x00, 0x2f, 0x2b, 0x5d, 0x32, 0x1a, 0xcd, 0x2b, 0x32, 0x01, + 0x2f, 0x2b, 0x1a, 0xcd, 0xdc, 0x5e, 0x5d, 0x71, 0xcd, 0x31, 0x30, 0x5d, + 0x5d, 0x5d, 0x5d, 0x5d, 0x13, 0x35, 0x37, 0x33, 0x15, 0x05, 0x33, 0x35, + 0x37, 0x33, 0x15, 0x05, 0x20, 0xc5, 0xcf, 0xfe, 0xca, 0xfd, 0xc5, 0xcf, + 0xfe, 0xca, 0x05, 0xfa, 0x14, 0xe3, 0x1d, 0xda, 0x14, 0xe3, 0x1d, 0xda, + 0x00, 0x01, 0xff, 0xe8, 0x05, 0xfa, 0x02, 0x82, 0x06, 0xf3, 0x00, 0x11, + 0x00, 0x37, 0x40, 0x20, 0x04, 0x0b, 0x01, 0x04, 0x07, 0x01, 0x11, 0x0f, + 0x13, 0x01, 0x64, 0x0d, 0x40, 0x05, 0x0c, 0x05, 0x40, 0x10, 0x14, 0x48, + 0x05, 0x80, 0x09, 0x5f, 0x00, 0x01, 0x00, 0x40, 0x09, 0x0c, 0x48, 0x00, + 0x00, 0x2f, 0x2b, 0x5d, 0xcd, 0x1a, 0xcd, 0x2b, 0x32, 0x01, 0x2f, 0x1a, + 0xcc, 0x5e, 0x5d, 0x31, 0x30, 0x00, 0x5e, 0x5d, 0x5d, 0x01, 0x22, 0x2e, + 0x02, 0x27, 0x33, 0x1e, 0x01, 0x33, 0x32, 0x36, 0x37, 0x33, 0x0e, 0x03, + 0x01, 0x34, 0x4a, 0x74, 0x54, 0x32, 0x08, 0x75, 0x11, 0x6d, 0x5b, 0x5b, + 0x6b, 0x11, 0x75, 0x09, 0x32, 0x53, 0x74, 0x05, 0xfa, 0x29, 0x45, 0x5a, + 0x31, 0x35, 0x3c, 0x3d, 0x34, 0x31, 0x5a, 0x45, 0x29, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x15, 0x50, 0x00, 0x01, 0x03, 0x8b, + 0x0c, 0x00, 0x00, 0x09, 0x09, 0x42, 0x00, 0x03, 0x00, 0x24, 0xff, 0x8f, + 0x00, 0x03, 0x00, 0x37, 0xff, 0xdb, 0x00, 0x03, 0x00, 0x3c, 0xff, 0xdb, + 0x00, 0x03, 0x01, 0x56, 0xff, 0x8f, 0x00, 0x03, 0x01, 0x5f, 0xff, 0x8f, + 0x00, 0x03, 0x01, 0x62, 0xff, 0x8f, 0x00, 0x03, 0x01, 0x69, 0xff, 0x8f, + 0x00, 0x03, 0x01, 0x71, 0xff, 0xdb, 0x00, 0x03, 0x01, 0x72, 0xff, 0xdb, + 0x00, 0x03, 0x01, 0x78, 0xff, 0xdb, 0x00, 0x24, 0x00, 0x03, 0xff, 0x8f, + 0x00, 0x24, 0x00, 0x37, 0xff, 0x68, 0x00, 0x24, 0x00, 0x39, 0xff, 0x68, + 0x00, 0x24, 0x00, 0x3a, 0xff, 0xb4, 0x00, 0x24, 0x00, 0x3c, 0xff, 0x68, + 0x00, 0x24, 0x00, 0x59, 0xff, 0xdb, 0x00, 0x24, 0x00, 0x5a, 0xff, 0xdb, + 0x00, 0x24, 0x00, 0x5c, 0xff, 0xdb, 0x00, 0x24, 0x02, 0x0f, 0xff, 0x68, + 0x00, 0x29, 0x00, 0x0f, 0xff, 0x1d, 0x00, 0x29, 0x00, 0x11, 0xff, 0x1d, + 0x00, 0x29, 0x00, 0x24, 0xff, 0x8f, 0x00, 0x2f, 0x00, 0x03, 0xff, 0xb4, + 0x00, 0x2f, 0x00, 0x37, 0xff, 0x68, 0x00, 0x2f, 0x00, 0x39, 0xff, 0x68, + 0x00, 0x2f, 0x00, 0x3a, 0xff, 0x68, 0x00, 0x2f, 0x00, 0x3c, 0xff, 0x68, + 0x00, 0x2f, 0x00, 0x5c, 0xff, 0xb4, 0x00, 0x2f, 0x02, 0x0f, 0xff, 0x8f, + 0x00, 0x33, 0x00, 0x03, 0xff, 0xdb, 0x00, 0x33, 0x00, 0x0f, 0xfe, 0xf8, + 0x00, 0x33, 0x00, 0x11, 0xfe, 0xf8, 0x00, 0x33, 0x00, 0x24, 0xff, 0x68, + 0x00, 0x35, 0x00, 0x37, 0xff, 0xdb, 0x00, 0x35, 0x00, 0x39, 0xff, 0xdb, + 0x00, 0x35, 0x00, 0x3a, 0xff, 0xdb, 0x00, 0x35, 0x00, 0x3c, 0xff, 0xdb, + 0x00, 0x37, 0x00, 0x03, 0xff, 0xdb, 0x00, 0x37, 0x00, 0x0f, 0xff, 0x1d, + 0x00, 0x37, 0x00, 0x10, 0xff, 0x8f, 0x00, 0x37, 0x00, 0x11, 0xff, 0x1d, + 0x00, 0x37, 0x00, 0x1d, 0xff, 0x1d, 0x00, 0x37, 0x00, 0x1e, 0xff, 0x1d, + 0x00, 0x37, 0x00, 0x24, 0xff, 0x68, 0x00, 0x37, 0x00, 0x32, 0xff, 0xdb, + 0x00, 0x37, 0x00, 0x44, 0xff, 0x1d, 0x00, 0x37, 0x00, 0x46, 0xff, 0x1d, + 0x00, 0x37, 0x00, 0x48, 0xff, 0x1d, 0x00, 0x37, 0x00, 0x4c, 0xff, 0xb4, + 0x00, 0x37, 0x00, 0x52, 0xff, 0x1d, 0x00, 0x37, 0x00, 0x55, 0xff, 0xb4, + 0x00, 0x37, 0x00, 0x56, 0xff, 0x1d, 0x00, 0x37, 0x00, 0x58, 0xff, 0xb4, + 0x00, 0x37, 0x00, 0x5a, 0xff, 0x8f, 0x00, 0x37, 0x00, 0x5c, 0xff, 0x8f, + 0x00, 0x39, 0x00, 0x0f, 0xff, 0x44, 0x00, 0x39, 0x00, 0x10, 0xff, 0x8f, + 0x00, 0x39, 0x00, 0x11, 0xff, 0x44, 0x00, 0x39, 0x00, 0x1d, 0xff, 0xb4, + 0x00, 0x39, 0x00, 0x1e, 0xff, 0xb4, 0x00, 0x39, 0x00, 0x24, 0xff, 0x68, + 0x00, 0x39, 0x00, 0x44, 0xff, 0x68, 0x00, 0x39, 0x00, 0x48, 0xff, 0x8f, + 0x00, 0x39, 0x00, 0x4c, 0xff, 0xdb, 0x00, 0x39, 0x00, 0x52, 0xff, 0x8f, + 0x00, 0x39, 0x00, 0x55, 0xff, 0xb4, 0x00, 0x39, 0x00, 0x58, 0xff, 0xb4, + 0x00, 0x39, 0x00, 0x5c, 0xff, 0xb4, 0x00, 0x3a, 0x00, 0x0f, 0xff, 0x8f, + 0x00, 0x3a, 0x00, 0x10, 0xff, 0xdb, 0x00, 0x3a, 0x00, 0x11, 0xff, 0x8f, + 0x00, 0x3a, 0x00, 0x1d, 0xff, 0xdb, 0x00, 0x3a, 0x00, 0x1e, 0xff, 0xdb, + 0x00, 0x3a, 0x00, 0x24, 0xff, 0xb4, 0x00, 0x3a, 0x00, 0x44, 0xff, 0xb4, + 0x00, 0x3a, 0x00, 0x48, 0xff, 0xdb, 0x00, 0x3a, 0x00, 0x52, 0xff, 0xdb, + 0x00, 0x3a, 0x00, 0x55, 0xff, 0xdb, 0x00, 0x3a, 0x00, 0x58, 0xff, 0xdb, + 0x00, 0x3a, 0x00, 0x5c, 0xff, 0xee, 0x00, 0x3c, 0x00, 0x03, 0xff, 0xdb, + 0x00, 0x3c, 0x00, 0x0f, 0xfe, 0xf8, 0x00, 0x3c, 0x00, 0x10, 0xff, 0x44, + 0x00, 0x3c, 0x00, 0x11, 0xfe, 0xf8, 0x00, 0x3c, 0x00, 0x1d, 0xff, 0x8f, + 0x00, 0x3c, 0x00, 0x1e, 0xff, 0x7b, 0x00, 0x3c, 0x00, 0x24, 0xff, 0x68, + 0x00, 0x3c, 0x00, 0x44, 0xff, 0x68, 0x00, 0x3c, 0x00, 0x48, 0xff, 0x44, + 0x00, 0x3c, 0x00, 0x4c, 0xff, 0xb4, 0x00, 0x3c, 0x00, 0x52, 0xff, 0x44, + 0x00, 0x3c, 0x00, 0x53, 0xff, 0x68, 0x00, 0x3c, 0x00, 0x54, 0xff, 0x44, + 0x00, 0x3c, 0x00, 0x58, 0xff, 0x8f, 0x00, 0x3c, 0x00, 0x59, 0xff, 0x8f, + 0x00, 0x49, 0x00, 0x49, 0xff, 0xdb, 0x00, 0x49, 0x02, 0x0f, 0x00, 0x25, + 0x00, 0x55, 0x00, 0x0f, 0xff, 0x8f, 0x00, 0x55, 0x00, 0x11, 0xff, 0x8f, + 0x00, 0x55, 0x02, 0x0f, 0x00, 0x4c, 0x00, 0x59, 0x00, 0x0f, 0xff, 0x68, + 0x00, 0x59, 0x00, 0x11, 0xff, 0x68, 0x00, 0x5a, 0x00, 0x0f, 0xff, 0x8f, + 0x00, 0x5a, 0x00, 0x11, 0xff, 0x8f, 0x00, 0x5c, 0x00, 0x0f, 0xff, 0x68, + 0x00, 0x5c, 0x00, 0x11, 0xff, 0x68, 0x01, 0x56, 0x01, 0x66, 0xff, 0xd5, + 0x01, 0x56, 0x01, 0x6d, 0xff, 0xd5, 0x01, 0x56, 0x01, 0x71, 0xff, 0x68, + 0x01, 0x56, 0x01, 0x72, 0xff, 0x68, 0x01, 0x56, 0x01, 0x73, 0xff, 0xc5, + 0x01, 0x56, 0x01, 0x78, 0xff, 0x68, 0x01, 0x56, 0x01, 0x80, 0xff, 0xdb, + 0x01, 0x56, 0x01, 0x8a, 0xff, 0xdb, 0x01, 0x56, 0x01, 0x94, 0xff, 0xdb, + 0x01, 0x5b, 0x01, 0x72, 0xff, 0xbe, 0x01, 0x5c, 0x01, 0x5e, 0x00, 0xaa, + 0x01, 0x5c, 0x01, 0x5f, 0xff, 0x68, 0x01, 0x5c, 0x01, 0x62, 0xff, 0x68, + 0x01, 0x5c, 0x01, 0x66, 0xff, 0x8d, 0x01, 0x5c, 0x01, 0x69, 0xff, 0x68, + 0x01, 0x5c, 0x01, 0x6d, 0xff, 0x8d, 0x01, 0x5c, 0x01, 0x73, 0xff, 0x8d, + 0x01, 0x5c, 0x01, 0x76, 0xff, 0x9e, 0x01, 0x5c, 0x01, 0x7b, 0xff, 0x68, + 0x01, 0x5c, 0x01, 0x7c, 0xff, 0xb4, 0x01, 0x5c, 0x01, 0x7e, 0xff, 0x46, + 0x01, 0x5c, 0x01, 0x84, 0xff, 0x68, 0x01, 0x5c, 0x01, 0x86, 0xff, 0xb4, + 0x01, 0x5c, 0x01, 0x87, 0xff, 0x68, 0x01, 0x5c, 0x01, 0x89, 0xff, 0x68, + 0x01, 0x5c, 0x01, 0x8c, 0xff, 0x46, 0x01, 0x5c, 0x01, 0x90, 0xff, 0x46, + 0x01, 0x5c, 0x01, 0x93, 0xff, 0x46, 0x01, 0x5c, 0x01, 0x97, 0x00, 0x62, + 0x01, 0x5c, 0x01, 0x99, 0xff, 0x46, 0x01, 0x5d, 0x01, 0x72, 0xff, 0xd1, + 0x01, 0x5d, 0x01, 0x78, 0xff, 0xd1, 0x01, 0x5f, 0x00, 0x03, 0xff, 0x8f, + 0x01, 0x5f, 0x01, 0x66, 0xff, 0xd5, 0x01, 0x5f, 0x01, 0x6d, 0xff, 0xd5, + 0x01, 0x5f, 0x01, 0x71, 0xff, 0x68, 0x01, 0x5f, 0x01, 0x72, 0xff, 0x68, + 0x01, 0x5f, 0x01, 0x73, 0xff, 0xc5, 0x01, 0x5f, 0x01, 0x78, 0xff, 0x68, + 0x01, 0x5f, 0x01, 0x80, 0xff, 0xdb, 0x01, 0x5f, 0x01, 0x8a, 0xff, 0xdb, + 0x01, 0x5f, 0x01, 0x94, 0xff, 0xdb, 0x01, 0x5f, 0x02, 0x0f, 0xff, 0x68, + 0x01, 0x61, 0x00, 0x0f, 0xff, 0x1f, 0x01, 0x61, 0x00, 0x11, 0xff, 0x1f, + 0x01, 0x61, 0x01, 0x5e, 0x00, 0xa4, 0x01, 0x61, 0x01, 0x5f, 0xff, 0x44, + 0x01, 0x61, 0x01, 0x62, 0xff, 0x44, 0x01, 0x61, 0x01, 0x69, 0xff, 0x44, + 0x01, 0x61, 0x01, 0x86, 0xff, 0xa8, 0x01, 0x61, 0x01, 0x97, 0x00, 0x58, + 0x01, 0x62, 0x00, 0x03, 0xff, 0x8f, 0x01, 0x62, 0x01, 0x66, 0xff, 0xd5, + 0x01, 0x62, 0x01, 0x6d, 0xff, 0xd5, 0x01, 0x62, 0x01, 0x71, 0xff, 0x89, + 0x01, 0x62, 0x01, 0x72, 0xff, 0x68, 0x01, 0x62, 0x01, 0x78, 0xff, 0x68, + 0x01, 0x66, 0x01, 0x5f, 0xff, 0xdb, 0x01, 0x66, 0x01, 0x62, 0xff, 0xdb, + 0x01, 0x66, 0x01, 0x69, 0xff, 0xdb, 0x01, 0x66, 0x01, 0x72, 0xff, 0xbe, + 0x01, 0x66, 0x01, 0x78, 0xff, 0xbe, 0x01, 0x68, 0x01, 0x66, 0xff, 0xc1, + 0x01, 0x68, 0x01, 0x6d, 0xff, 0xc1, 0x01, 0x68, 0x01, 0x73, 0xff, 0x8f, + 0x01, 0x68, 0x01, 0x79, 0xff, 0xe7, 0x01, 0x68, 0x01, 0x7e, 0xff, 0xe7, + 0x01, 0x68, 0x01, 0x81, 0xff, 0xe7, 0x01, 0x68, 0x01, 0x83, 0xff, 0xe7, + 0x01, 0x68, 0x01, 0x85, 0xff, 0xe7, 0x01, 0x68, 0x01, 0x8b, 0xff, 0xe7, + 0x01, 0x68, 0x01, 0x8c, 0xff, 0xe7, 0x01, 0x68, 0x01, 0x90, 0xff, 0xe7, + 0x01, 0x68, 0x01, 0x93, 0xff, 0xe7, 0x01, 0x68, 0x01, 0x96, 0xff, 0xe7, + 0x01, 0x68, 0x01, 0x99, 0xff, 0xe7, 0x01, 0x68, 0x01, 0x9b, 0xff, 0xe7, + 0x01, 0x69, 0x00, 0x03, 0xff, 0x8f, 0x01, 0x69, 0x01, 0x66, 0xff, 0xd5, + 0x01, 0x69, 0x01, 0x6d, 0xff, 0xd5, 0x01, 0x69, 0x01, 0x71, 0xff, 0x68, + 0x01, 0x69, 0x01, 0x72, 0xff, 0x68, 0x01, 0x69, 0x01, 0x78, 0xff, 0x68, + 0x01, 0x6d, 0x01, 0x5f, 0xff, 0xdb, 0x01, 0x6d, 0x01, 0x62, 0xff, 0xd5, + 0x01, 0x6d, 0x01, 0x69, 0xff, 0xdb, 0x01, 0x6d, 0x01, 0x72, 0xff, 0xbe, + 0x01, 0x6d, 0x01, 0x78, 0xff, 0xbe, 0x01, 0x6f, 0x00, 0x03, 0xff, 0xdb, + 0x01, 0x6f, 0x00, 0x0f, 0xfe, 0xfa, 0x01, 0x6f, 0x00, 0x11, 0xfe, 0xfa, + 0x01, 0x6f, 0x01, 0x5f, 0xff, 0x68, 0x01, 0x6f, 0x01, 0x62, 0xff, 0x68, + 0x01, 0x6f, 0x01, 0x69, 0xff, 0x68, 0x01, 0x70, 0x01, 0x8d, 0xff, 0x9e, + 0x01, 0x70, 0x01, 0x91, 0xff, 0x9e, 0x01, 0x71, 0x00, 0x03, 0xff, 0xdb, + 0x01, 0x71, 0x00, 0x0f, 0xff, 0x1f, 0x01, 0x71, 0x00, 0x11, 0xff, 0x1f, + 0x01, 0x71, 0x00, 0x1d, 0xff, 0x1f, 0x01, 0x71, 0x00, 0x1e, 0xff, 0x1f, + 0x01, 0x71, 0x01, 0x5e, 0x00, 0xbc, 0x01, 0x71, 0x01, 0x5f, 0xff, 0x68, + 0x01, 0x71, 0x01, 0x62, 0xff, 0x68, 0x01, 0x71, 0x01, 0x66, 0xff, 0xdb, + 0x01, 0x71, 0x01, 0x69, 0xff, 0x68, 0x01, 0x71, 0x01, 0x6d, 0xff, 0xdb, + 0x01, 0x71, 0x01, 0x73, 0xff, 0xdb, 0x01, 0x71, 0x01, 0x76, 0xff, 0xdb, + 0x01, 0x71, 0x01, 0x79, 0xff, 0x1f, 0x01, 0x71, 0x01, 0x7a, 0xff, 0x1f, + 0x01, 0x71, 0x01, 0x7d, 0xff, 0x4e, 0x01, 0x71, 0x01, 0x7e, 0xff, 0x1f, + 0x01, 0x71, 0x01, 0x80, 0xff, 0x4e, 0x01, 0x71, 0x01, 0x82, 0xff, 0x1f, + 0x01, 0x71, 0x01, 0x84, 0xff, 0x6a, 0x01, 0x71, 0x01, 0x86, 0xff, 0xb4, + 0x01, 0x71, 0x01, 0x89, 0xff, 0x6a, 0x01, 0x71, 0x01, 0x8a, 0xff, 0x8f, + 0x01, 0x71, 0x01, 0x8c, 0xff, 0x1f, 0x01, 0x71, 0x01, 0x90, 0xff, 0x1f, + 0x01, 0x71, 0x01, 0x92, 0xff, 0x50, 0x01, 0x71, 0x01, 0x93, 0xff, 0x1f, + 0x01, 0x71, 0x01, 0x94, 0xff, 0x8f, 0x01, 0x71, 0x01, 0x95, 0xff, 0x6a, + 0x01, 0x71, 0x01, 0x97, 0x00, 0xbc, 0x01, 0x71, 0x01, 0x98, 0xff, 0x4e, + 0x01, 0x71, 0x01, 0x99, 0xff, 0x1f, 0x01, 0x71, 0x01, 0x9a, 0xff, 0x4e, + 0x01, 0x72, 0x00, 0x03, 0xff, 0xdb, 0x01, 0x72, 0x00, 0x0f, 0xfe, 0xfa, + 0x01, 0x72, 0x00, 0x10, 0xff, 0x46, 0x01, 0x72, 0x00, 0x11, 0xfe, 0xfa, + 0x01, 0x72, 0x00, 0x1d, 0xff, 0x8f, 0x01, 0x72, 0x00, 0x1e, 0xff, 0x8f, + 0x01, 0x72, 0x01, 0x5e, 0x00, 0xbc, 0x01, 0x72, 0x01, 0x5f, 0xff, 0x68, + 0x01, 0x72, 0x01, 0x62, 0xff, 0x68, 0x01, 0x72, 0x01, 0x66, 0xff, 0x8d, + 0x01, 0x72, 0x01, 0x69, 0xff, 0x68, 0x01, 0x72, 0x01, 0x6d, 0xff, 0x8d, + 0x01, 0x72, 0x01, 0x73, 0xff, 0x8d, 0x01, 0x72, 0x01, 0x76, 0xff, 0x9e, + 0x01, 0x72, 0x01, 0x7b, 0xff, 0x68, 0x01, 0x72, 0x01, 0x7c, 0xff, 0xb4, + 0x01, 0x72, 0x01, 0x7e, 0xff, 0x46, 0x01, 0x72, 0x01, 0x80, 0xff, 0x9e, + 0x01, 0x72, 0x01, 0x84, 0xff, 0x68, 0x01, 0x72, 0x01, 0x86, 0xff, 0xb4, + 0x01, 0x72, 0x01, 0x87, 0xff, 0x68, 0x01, 0x72, 0x01, 0x89, 0xff, 0x68, + 0x01, 0x72, 0x01, 0x8c, 0xff, 0x46, 0x01, 0x72, 0x01, 0x90, 0xff, 0x46, + 0x01, 0x72, 0x01, 0x93, 0xff, 0x46, 0x01, 0x72, 0x01, 0x97, 0x00, 0x79, + 0x01, 0x72, 0x01, 0x99, 0xff, 0x46, 0x01, 0x73, 0x01, 0x5f, 0xff, 0xc5, + 0x01, 0x73, 0x01, 0x72, 0xff, 0xbe, 0x01, 0x73, 0x01, 0x78, 0xff, 0xbe, + 0x01, 0x75, 0x01, 0x79, 0xff, 0xb2, 0x01, 0x75, 0x01, 0x7e, 0xff, 0xb2, + 0x01, 0x75, 0x01, 0x81, 0xff, 0xb2, 0x01, 0x75, 0x01, 0x85, 0xff, 0xd9, + 0x01, 0x75, 0x01, 0x8c, 0xff, 0xb2, 0x01, 0x75, 0x01, 0x90, 0xff, 0xb2, + 0x01, 0x75, 0x01, 0x93, 0xff, 0xb2, 0x01, 0x75, 0x01, 0x96, 0xff, 0xb2, + 0x01, 0x75, 0x01, 0x99, 0xff, 0xb2, 0x01, 0x75, 0x01, 0x9b, 0xff, 0xb2, + 0x01, 0x76, 0x01, 0x72, 0xff, 0xd1, 0x01, 0x76, 0x01, 0x78, 0xff, 0xd1, + 0x01, 0x78, 0x00, 0x03, 0xff, 0xdb, 0x01, 0x78, 0x01, 0x5e, 0x00, 0xaa, + 0x01, 0x78, 0x01, 0x5f, 0xff, 0x68, 0x01, 0x78, 0x01, 0x62, 0xff, 0x68, + 0x01, 0x78, 0x01, 0x66, 0xff, 0x8d, 0x01, 0x78, 0x01, 0x69, 0xff, 0x68, + 0x01, 0x78, 0x01, 0x6d, 0xff, 0x8d, 0x01, 0x78, 0x01, 0x73, 0xff, 0x8d, + 0x01, 0x78, 0x01, 0x76, 0xff, 0x9e, 0x01, 0x78, 0x01, 0x7b, 0xff, 0x68, + 0x01, 0x78, 0x01, 0x7c, 0xff, 0xb4, 0x01, 0x78, 0x01, 0x7e, 0xff, 0x46, + 0x01, 0x78, 0x01, 0x84, 0xff, 0x68, 0x01, 0x78, 0x01, 0x86, 0xff, 0xb4, + 0x01, 0x78, 0x01, 0x87, 0xff, 0x68, 0x01, 0x78, 0x01, 0x89, 0xff, 0x68, + 0x01, 0x78, 0x01, 0x8c, 0xff, 0x46, 0x01, 0x78, 0x01, 0x90, 0xff, 0x46, + 0x01, 0x78, 0x01, 0x93, 0xff, 0x46, 0x01, 0x78, 0x01, 0x97, 0x00, 0x62, + 0x01, 0x78, 0x01, 0x99, 0xff, 0x46, 0x01, 0x81, 0x01, 0x88, 0xff, 0xd9, + 0x01, 0x81, 0x01, 0x8d, 0xff, 0xe3, 0x01, 0x81, 0x01, 0x91, 0xff, 0xe3, + 0x01, 0x81, 0x01, 0x94, 0xff, 0xc9, 0x01, 0x83, 0x01, 0x79, 0xff, 0x77, + 0x01, 0x83, 0x01, 0x7b, 0xff, 0xdb, 0x01, 0x83, 0x01, 0x7e, 0xff, 0x77, + 0x01, 0x83, 0x01, 0x80, 0xff, 0xaa, 0x01, 0x83, 0x01, 0x81, 0xff, 0xb4, + 0x01, 0x83, 0x01, 0x84, 0xff, 0xdb, 0x01, 0x83, 0x01, 0x85, 0xff, 0x9e, + 0x01, 0x83, 0x01, 0x86, 0xff, 0xdb, 0x01, 0x83, 0x01, 0x87, 0xff, 0xdb, + 0x01, 0x83, 0x01, 0x8a, 0xff, 0xaa, 0x01, 0x83, 0x01, 0x8c, 0xff, 0x77, + 0x01, 0x83, 0x01, 0x8d, 0xff, 0xaa, 0x01, 0x83, 0x01, 0x90, 0xff, 0x77, + 0x01, 0x83, 0x01, 0x91, 0xff, 0xaa, 0x01, 0x83, 0x01, 0x93, 0xff, 0x77, + 0x01, 0x83, 0x01, 0x96, 0xff, 0x77, 0x01, 0x83, 0x01, 0x99, 0xff, 0x77, + 0x01, 0x83, 0x01, 0x9b, 0xff, 0x77, 0x01, 0x85, 0x01, 0x88, 0xff, 0xd9, + 0x01, 0x87, 0x01, 0x79, 0xff, 0xe7, 0x01, 0x87, 0x01, 0x7e, 0xff, 0xe7, + 0x01, 0x87, 0x01, 0x81, 0xff, 0xe7, 0x01, 0x87, 0x01, 0x83, 0xff, 0xe7, + 0x01, 0x87, 0x01, 0x85, 0xff, 0xe7, 0x01, 0x87, 0x01, 0x8b, 0xff, 0xe7, + 0x01, 0x87, 0x01, 0x8c, 0xff, 0xe7, 0x01, 0x87, 0x01, 0x8f, 0xff, 0xe7, + 0x01, 0x87, 0x01, 0x90, 0xff, 0xe7, 0x01, 0x87, 0x01, 0x93, 0xff, 0xe7, + 0x01, 0x87, 0x01, 0x96, 0xff, 0xe7, 0x01, 0x87, 0x01, 0x99, 0xff, 0xe7, + 0x01, 0x87, 0x01, 0x9b, 0xff, 0xe7, 0x01, 0x88, 0x01, 0x79, 0xff, 0xe1, + 0x01, 0x88, 0x01, 0x7e, 0xff, 0xe1, 0x01, 0x88, 0x01, 0x81, 0xff, 0xe1, + 0x01, 0x88, 0x01, 0x8b, 0xff, 0xe1, 0x01, 0x88, 0x01, 0x8c, 0xff, 0xe1, + 0x01, 0x88, 0x01, 0x8f, 0xff, 0xd1, 0x01, 0x88, 0x01, 0x90, 0xff, 0xe1, + 0x01, 0x88, 0x01, 0x92, 0xff, 0xcf, 0x01, 0x88, 0x01, 0x93, 0xff, 0xdb, + 0x01, 0x88, 0x01, 0x96, 0xff, 0xe1, 0x01, 0x88, 0x01, 0x99, 0xff, 0xe1, + 0x01, 0x88, 0x01, 0x9a, 0xff, 0xcf, 0x01, 0x88, 0x01, 0x9b, 0xff, 0xe1, + 0x01, 0x8b, 0x01, 0x79, 0xff, 0xc9, 0x01, 0x8b, 0x01, 0x7e, 0xff, 0xc9, + 0x01, 0x8b, 0x01, 0x81, 0xff, 0xc9, 0x01, 0x8b, 0x01, 0x83, 0xff, 0xc9, + 0x01, 0x8b, 0x01, 0x8b, 0xff, 0xc9, 0x01, 0x8b, 0x01, 0x8c, 0xff, 0xc9, + 0x01, 0x8b, 0x01, 0x8f, 0xff, 0xc9, 0x01, 0x8b, 0x01, 0x90, 0xff, 0xc9, + 0x01, 0x8b, 0x01, 0x93, 0xff, 0xc9, 0x01, 0x8b, 0x01, 0x99, 0xff, 0xc9, + 0x01, 0x8c, 0x01, 0x88, 0xff, 0xd9, 0x01, 0x8c, 0x01, 0x8d, 0xff, 0xe3, + 0x01, 0x8c, 0x01, 0x91, 0xff, 0xe3, 0x01, 0x8c, 0x01, 0x94, 0xff, 0xc9, + 0x01, 0x8d, 0x01, 0x79, 0xff, 0xe3, 0x01, 0x8d, 0x01, 0x7e, 0xff, 0xe3, + 0x01, 0x8d, 0x01, 0x83, 0xff, 0xe3, 0x01, 0x8d, 0x01, 0x8c, 0xff, 0xe3, + 0x01, 0x8d, 0x01, 0x8f, 0xff, 0xe3, 0x01, 0x8d, 0x01, 0x90, 0xff, 0xe3, + 0x01, 0x8d, 0x01, 0x93, 0xff, 0xe3, 0x01, 0x8d, 0x01, 0x96, 0xff, 0xe3, + 0x01, 0x8d, 0x01, 0x9b, 0xff, 0xe3, 0x01, 0x8e, 0x01, 0x88, 0xff, 0xd9, + 0x01, 0x8e, 0x01, 0x8d, 0xff, 0xe3, 0x01, 0x8e, 0x01, 0x91, 0xff, 0xe3, + 0x01, 0x91, 0x01, 0x79, 0xff, 0xe3, 0x01, 0x91, 0x01, 0x7e, 0xff, 0xe3, + 0x01, 0x91, 0x01, 0x81, 0xff, 0xe3, 0x01, 0x91, 0x01, 0x83, 0xff, 0xe3, + 0x01, 0x91, 0x01, 0x8c, 0xff, 0xe3, 0x01, 0x91, 0x01, 0x8f, 0xff, 0xe3, + 0x01, 0x91, 0x01, 0x90, 0xff, 0xe3, 0x01, 0x91, 0x01, 0x93, 0xff, 0xe3, + 0x01, 0x91, 0x01, 0x96, 0xff, 0xe3, 0x01, 0x91, 0x01, 0x9b, 0xff, 0xe3, + 0x01, 0x93, 0x01, 0x88, 0xff, 0xd9, 0x01, 0x93, 0x01, 0x8d, 0xff, 0xe3, + 0x01, 0x93, 0x01, 0x91, 0xff, 0xe3, 0x01, 0x93, 0x01, 0x94, 0xff, 0xc9, + 0x01, 0x94, 0x01, 0x79, 0xff, 0xc9, 0x01, 0x94, 0x01, 0x7e, 0xff, 0xc9, + 0x01, 0x94, 0x01, 0x81, 0xff, 0xc9, 0x01, 0x94, 0x01, 0x83, 0xff, 0xc9, + 0x01, 0x94, 0x01, 0x8c, 0xff, 0xc9, 0x01, 0x94, 0x01, 0x8f, 0xff, 0xc9, + 0x01, 0x94, 0x01, 0x90, 0xff, 0xc9, 0x01, 0x94, 0x01, 0x93, 0xff, 0xc9, + 0x01, 0x94, 0x01, 0x96, 0xff, 0xc9, 0x01, 0x94, 0x01, 0x99, 0xff, 0xc9, + 0x01, 0x94, 0x01, 0x9b, 0xff, 0xc9, 0x01, 0x96, 0x01, 0x88, 0xff, 0xd9, + 0x01, 0x96, 0x01, 0x8d, 0xff, 0xe3, 0x01, 0x96, 0x01, 0x91, 0xff, 0xe3, + 0x01, 0x96, 0x01, 0x94, 0xff, 0xc9, 0x01, 0x99, 0x01, 0x88, 0xff, 0xd9, + 0x01, 0x99, 0x01, 0x8d, 0xff, 0xe3, 0x01, 0x99, 0x01, 0x91, 0xff, 0xe3, + 0x01, 0x99, 0x01, 0x94, 0xff, 0xc9, 0x01, 0x9b, 0x01, 0x88, 0xff, 0xd9, + 0x01, 0x9b, 0x01, 0x8d, 0xff, 0xe3, 0x01, 0x9b, 0x01, 0x91, 0xff, 0xe3, + 0x01, 0x9b, 0x01, 0x94, 0xff, 0xc9, 0x01, 0x9f, 0x00, 0x0f, 0xff, 0x06, + 0x01, 0x9f, 0x00, 0x11, 0xff, 0x06, 0x01, 0x9f, 0x00, 0x6c, 0xff, 0x77, + 0x01, 0x9f, 0x00, 0x7b, 0xff, 0x77, 0x01, 0x9f, 0x02, 0x0b, 0xff, 0xd3, + 0x01, 0xa5, 0x02, 0x0f, 0xff, 0x60, 0x01, 0xa6, 0x02, 0x0f, 0xff, 0x77, + 0x01, 0xac, 0x01, 0xb0, 0x00, 0x44, 0x01, 0xac, 0x01, 0xb3, 0xff, 0xe9, + 0x01, 0xac, 0x01, 0xb7, 0x00, 0x2d, 0x01, 0xac, 0x01, 0xba, 0xff, 0xd3, + 0x01, 0xac, 0x01, 0xbb, 0xff, 0xe9, 0x01, 0xac, 0x01, 0xbd, 0xff, 0xd3, + 0x01, 0xac, 0x01, 0xbe, 0xff, 0x60, 0x01, 0xac, 0x01, 0xbf, 0xff, 0xa6, + 0x01, 0xac, 0x01, 0xc0, 0xff, 0xbc, 0x01, 0xac, 0x01, 0xc3, 0xff, 0x60, + 0x01, 0xac, 0x01, 0xc9, 0xff, 0xd3, 0x01, 0xac, 0x01, 0xcc, 0x00, 0x17, + 0x01, 0xac, 0x01, 0xde, 0xff, 0xd3, 0x01, 0xac, 0x01, 0xdf, 0xff, 0xe9, + 0x01, 0xac, 0x01, 0xe0, 0x00, 0x17, 0x01, 0xac, 0x01, 0xe9, 0x00, 0x2d, + 0x01, 0xac, 0x02, 0x0f, 0xff, 0x8d, 0x01, 0xad, 0x01, 0xac, 0xff, 0xd3, + 0x01, 0xad, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xad, 0x01, 0xba, 0xff, 0xe9, + 0x01, 0xad, 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xad, 0x01, 0xbe, 0xff, 0xa4, + 0x01, 0xad, 0x01, 0xbf, 0xff, 0xd1, 0x01, 0xad, 0x01, 0xc0, 0xff, 0xe9, + 0x01, 0xad, 0x01, 0xc1, 0xff, 0xd3, 0x01, 0xad, 0x01, 0xc3, 0xff, 0xa4, + 0x01, 0xad, 0x01, 0xc6, 0xff, 0xbc, 0x01, 0xad, 0x01, 0xc9, 0xff, 0xe9, + 0x01, 0xad, 0x01, 0xcb, 0xff, 0xe9, 0x01, 0xad, 0x01, 0xd7, 0xff, 0xe9, + 0x01, 0xad, 0x01, 0xdf, 0xff, 0xd3, 0x01, 0xae, 0x01, 0xac, 0xff, 0xbc, + 0x01, 0xae, 0x01, 0xb0, 0xff, 0xd3, 0x01, 0xae, 0x01, 0xb2, 0xff, 0xd3, + 0x01, 0xae, 0x01, 0xb3, 0xff, 0xbc, 0x01, 0xae, 0x01, 0xb7, 0xff, 0xe9, + 0x01, 0xae, 0x01, 0xba, 0xff, 0xbc, 0x01, 0xae, 0x01, 0xbd, 0xff, 0xbc, + 0x01, 0xae, 0x01, 0xbe, 0xff, 0x77, 0x01, 0xae, 0x01, 0xbf, 0xff, 0xbc, + 0x01, 0xae, 0x01, 0xc0, 0xff, 0xbc, 0x01, 0xae, 0x01, 0xc1, 0xff, 0xa6, + 0x01, 0xae, 0x01, 0xc3, 0xff, 0xa4, 0x01, 0xae, 0x01, 0xc6, 0xff, 0x8d, + 0x01, 0xae, 0x01, 0xcb, 0xff, 0xbc, 0x01, 0xae, 0x01, 0xd0, 0xff, 0xe9, + 0x01, 0xae, 0x01, 0xd8, 0xff, 0xe9, 0x01, 0xae, 0x01, 0xde, 0xff, 0xbc, + 0x01, 0xae, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xae, 0x01, 0xe1, 0xff, 0xe9, + 0x01, 0xae, 0x01, 0xe3, 0xff, 0xbc, 0x01, 0xae, 0x01, 0xeb, 0xff, 0xe9, + 0x01, 0xaf, 0x00, 0x0f, 0xff, 0x06, 0x01, 0xaf, 0x00, 0x11, 0xff, 0x06, + 0x01, 0xaf, 0x00, 0x6c, 0xff, 0x77, 0x01, 0xaf, 0x00, 0x7b, 0xff, 0x77, + 0x01, 0xaf, 0x01, 0xac, 0xff, 0x77, 0x01, 0xaf, 0x01, 0xb0, 0xff, 0x77, + 0x01, 0xaf, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xaf, 0x01, 0xb7, 0xff, 0x8d, + 0x01, 0xaf, 0x01, 0xb8, 0xff, 0xd1, 0x01, 0xaf, 0x01, 0xba, 0xff, 0x8d, + 0x01, 0xaf, 0x01, 0xbd, 0xff, 0xa4, 0x01, 0xaf, 0x01, 0xcb, 0xff, 0xbc, + 0x01, 0xaf, 0x01, 0xcc, 0xff, 0x8d, 0x01, 0xaf, 0x01, 0xce, 0xff, 0x8d, + 0x01, 0xaf, 0x01, 0xd0, 0xff, 0x77, 0x01, 0xaf, 0x01, 0xd1, 0xff, 0x77, + 0x01, 0xaf, 0x01, 0xd4, 0xff, 0x8d, 0x01, 0xaf, 0x01, 0xd7, 0xff, 0x8d, + 0x01, 0xaf, 0x01, 0xd8, 0xff, 0x8d, 0x01, 0xaf, 0x01, 0xd9, 0xff, 0x8d, + 0x01, 0xaf, 0x01, 0xda, 0xff, 0x77, 0x01, 0xaf, 0x01, 0xdc, 0xff, 0x8d, + 0x01, 0xaf, 0x01, 0xdf, 0xff, 0x77, 0x01, 0xaf, 0x01, 0xe7, 0xff, 0x8d, + 0x01, 0xaf, 0x01, 0xe8, 0xff, 0x8d, 0x01, 0xaf, 0x01, 0xea, 0xff, 0x8d, + 0x01, 0xaf, 0x01, 0xeb, 0xff, 0x77, 0x01, 0xaf, 0x02, 0x0b, 0xff, 0xd3, + 0x01, 0xb0, 0x01, 0xbf, 0x00, 0x17, 0x01, 0xb0, 0x01, 0xc0, 0xff, 0xd3, + 0x01, 0xb0, 0x01, 0xc3, 0xff, 0xba, 0x01, 0xb0, 0x01, 0xd3, 0x00, 0x44, + 0x01, 0xb0, 0x01, 0xda, 0x00, 0x17, 0x01, 0xb0, 0x01, 0xdf, 0x00, 0x2d, + 0x01, 0xb1, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xb1, 0x01, 0xdd, 0xff, 0xe9, + 0x01, 0xb2, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xb2, 0x01, 0xba, 0xff, 0xd3, + 0x01, 0xb2, 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xb2, 0x01, 0xbe, 0x00, 0x17, + 0x01, 0xb2, 0x01, 0xbf, 0x00, 0x2d, 0x01, 0xb2, 0x01, 0xc6, 0x00, 0x2d, + 0x01, 0xb2, 0x01, 0xcc, 0x00, 0x17, 0x01, 0xb2, 0x01, 0xd1, 0xff, 0xe7, + 0x01, 0xb2, 0x01, 0xda, 0xff, 0xe9, 0x01, 0xb2, 0x01, 0xdf, 0xff, 0xe9, + 0x01, 0xb3, 0x01, 0xb7, 0xff, 0xe9, 0x01, 0xb3, 0x01, 0xba, 0xff, 0xe9, + 0x01, 0xb3, 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xb3, 0x01, 0xbe, 0xff, 0xd3, + 0x01, 0xb3, 0x01, 0xbf, 0xff, 0xe9, 0x01, 0xb3, 0x01, 0xc0, 0xff, 0xe9, + 0x01, 0xb3, 0x01, 0xc3, 0xff, 0xd3, 0x01, 0xb3, 0x01, 0xcb, 0xff, 0xe9, + 0x01, 0xb6, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xb6, 0x01, 0xba, 0xff, 0xe9, + 0x01, 0xb6, 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xb6, 0x01, 0xbf, 0x00, 0x17, + 0x01, 0xb6, 0x01, 0xc0, 0xff, 0xba, 0x01, 0xb7, 0x01, 0xc0, 0xff, 0xe9, + 0x01, 0xb7, 0x01, 0xcd, 0x00, 0x17, 0x01, 0xb7, 0x01, 0xdf, 0x00, 0x17, + 0x01, 0xb8, 0x01, 0xc0, 0xff, 0xe9, 0x01, 0xb8, 0x01, 0xc3, 0xff, 0xe9, + 0x01, 0xb8, 0x01, 0xcc, 0x00, 0x17, 0x01, 0xb8, 0x01, 0xd1, 0x00, 0x17, + 0x01, 0xb8, 0x01, 0xda, 0x00, 0x17, 0x01, 0xb8, 0x01, 0xdd, 0x00, 0x17, + 0x01, 0xb8, 0x01, 0xdf, 0x00, 0x17, 0x01, 0xb8, 0x01, 0xe3, 0xff, 0xe9, + 0x01, 0xb8, 0x01, 0xe9, 0x00, 0x17, 0x01, 0xba, 0x01, 0xac, 0xff, 0xd3, + 0x01, 0xba, 0x01, 0xb0, 0xff, 0xd3, 0x01, 0xba, 0x01, 0xb2, 0xff, 0xd3, + 0x01, 0xba, 0x01, 0xb7, 0xff, 0xe9, 0x01, 0xba, 0x01, 0xbf, 0xff, 0xd3, + 0x01, 0xba, 0x01, 0xc1, 0xff, 0xa4, 0x01, 0xba, 0x01, 0xc3, 0xff, 0xd3, + 0x01, 0xba, 0x01, 0xcb, 0xff, 0xd3, 0x01, 0xba, 0x01, 0xd0, 0xff, 0xd3, + 0x01, 0xba, 0x01, 0xd7, 0xff, 0xe9, 0x01, 0xba, 0x01, 0xe1, 0xff, 0xe9, + 0x01, 0xbc, 0x00, 0x0f, 0xfe, 0x7d, 0x01, 0xbc, 0x00, 0x11, 0xfe, 0x7d, + 0x01, 0xbc, 0x00, 0x1d, 0xff, 0xd3, 0x01, 0xbc, 0x00, 0x1e, 0xff, 0xd3, + 0x01, 0xbc, 0x00, 0x7b, 0xff, 0x8d, 0x01, 0xbc, 0x01, 0xac, 0xff, 0x77, + 0x01, 0xbc, 0x01, 0xb0, 0xff, 0x77, 0x01, 0xbc, 0x01, 0xb2, 0xff, 0xe9, + 0x01, 0xbc, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xbc, 0x01, 0xb7, 0xff, 0x8d, + 0x01, 0xbc, 0x01, 0xb8, 0xff, 0xe9, 0x01, 0xbc, 0x01, 0xba, 0xff, 0xd3, + 0x01, 0xbc, 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xbc, 0x01, 0xbe, 0xff, 0xa4, + 0x01, 0xbc, 0x01, 0xbf, 0xff, 0xd3, 0x01, 0xbc, 0x01, 0xc0, 0xff, 0xe9, + 0x01, 0xbc, 0x01, 0xc1, 0xff, 0xa4, 0x01, 0xbc, 0x01, 0xcb, 0xff, 0xd3, + 0x01, 0xbc, 0x01, 0xcc, 0xff, 0xbc, 0x01, 0xbc, 0x01, 0xd0, 0xff, 0x60, + 0x01, 0xbc, 0x01, 0xd1, 0xff, 0xa6, 0x01, 0xbc, 0x01, 0xda, 0xff, 0xa6, + 0x01, 0xbc, 0x01, 0xe9, 0xff, 0xd3, 0x01, 0xbc, 0x01, 0xeb, 0xff, 0xbc, + 0x01, 0xbd, 0x01, 0xac, 0xff, 0xd3, 0x01, 0xbd, 0x01, 0xb0, 0xff, 0xd3, + 0x01, 0xbd, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xbd, 0x01, 0xb7, 0xff, 0xbc, + 0x01, 0xbd, 0x01, 0xb8, 0xff, 0xe9, 0x01, 0xbd, 0x01, 0xba, 0xff, 0xd3, + 0x01, 0xbd, 0x01, 0xbe, 0xff, 0xbc, 0x01, 0xbd, 0x01, 0xbf, 0xff, 0xbc, + 0x01, 0xbd, 0x01, 0xc1, 0xff, 0x8d, 0x01, 0xbd, 0x01, 0xc3, 0xff, 0xbc, + 0x01, 0xbd, 0x01, 0xc6, 0xff, 0xba, 0x01, 0xbd, 0x01, 0xc9, 0xff, 0xe9, + 0x01, 0xbd, 0x01, 0xcc, 0x00, 0x17, 0x01, 0xbd, 0x01, 0xd2, 0x00, 0x2d, + 0x01, 0xbd, 0x01, 0xe3, 0xff, 0xe9, 0x01, 0xbe, 0x00, 0x0f, 0xff, 0x1d, + 0x01, 0xbe, 0x00, 0x11, 0xff, 0x1d, 0x01, 0xbe, 0x00, 0x6c, 0xff, 0xa6, + 0x01, 0xbe, 0x00, 0x7b, 0xff, 0xa6, 0x01, 0xbe, 0x01, 0xac, 0xff, 0xbc, + 0x01, 0xbe, 0x01, 0xb0, 0xff, 0xbc, 0x01, 0xbe, 0x01, 0xb2, 0x00, 0x17, + 0x01, 0xbe, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xbe, 0x01, 0xb7, 0xff, 0xd3, + 0x01, 0xbe, 0x01, 0xba, 0xff, 0xa4, 0x01, 0xbe, 0x01, 0xc0, 0xff, 0xbc, + 0x01, 0xbe, 0x01, 0xcb, 0xff, 0xd3, 0x01, 0xbe, 0x01, 0xcc, 0xff, 0xa4, + 0x01, 0xbe, 0x01, 0xce, 0xff, 0xa6, 0x01, 0xbe, 0x01, 0xd1, 0xff, 0x8d, + 0x01, 0xbe, 0x01, 0xd4, 0xff, 0xa6, 0x01, 0xbe, 0x01, 0xd6, 0xff, 0xa6, + 0x01, 0xbe, 0x01, 0xd7, 0xff, 0xa4, 0x01, 0xbe, 0x01, 0xd8, 0xff, 0xa6, + 0x01, 0xbe, 0x01, 0xda, 0xff, 0x60, 0x01, 0xbe, 0x01, 0xdb, 0xff, 0xa6, + 0x01, 0xbe, 0x01, 0xdc, 0xff, 0x8d, 0x01, 0xbe, 0x01, 0xdd, 0xff, 0x8d, + 0x01, 0xbe, 0x01, 0xdf, 0xff, 0x8d, 0x01, 0xbe, 0x01, 0xe1, 0xff, 0xa6, + 0x01, 0xbe, 0x01, 0xe5, 0xff, 0xa6, 0x01, 0xbe, 0x01, 0xe7, 0xff, 0xa6, + 0x01, 0xbe, 0x01, 0xe8, 0xff, 0xa6, 0x01, 0xbe, 0x01, 0xea, 0xff, 0xa6, + 0x01, 0xbe, 0x01, 0xeb, 0xff, 0x8d, 0x01, 0xbe, 0x02, 0x0b, 0xff, 0xd3, + 0x01, 0xbf, 0x00, 0x0f, 0xfe, 0xf0, 0x01, 0xbf, 0x00, 0x11, 0xfe, 0xf0, + 0x01, 0xbf, 0x00, 0x1d, 0xff, 0xd3, 0x01, 0xbf, 0x00, 0x1e, 0xff, 0xd3, + 0x01, 0xbf, 0x00, 0x6c, 0xff, 0xa6, 0x01, 0xbf, 0x00, 0x7b, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xac, 0xff, 0x77, 0x01, 0xbf, 0x01, 0xb0, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xbf, 0x01, 0xb7, 0xff, 0xbc, + 0x01, 0xbf, 0x01, 0xba, 0xff, 0xbc, 0x01, 0xbf, 0x01, 0xc0, 0xff, 0xbc, + 0x01, 0xbf, 0x01, 0xc9, 0xff, 0xd3, 0x01, 0xbf, 0x01, 0xcb, 0xff, 0xd3, + 0x01, 0xbf, 0x01, 0xcd, 0xff, 0xd3, 0x01, 0xbf, 0x01, 0xce, 0xff, 0x8d, + 0x01, 0xbf, 0x01, 0xcf, 0xff, 0xa4, 0x01, 0xbf, 0x01, 0xd0, 0xff, 0x60, + 0x01, 0xbf, 0x01, 0xd1, 0xff, 0x77, 0x01, 0xbf, 0x01, 0xd2, 0xff, 0xbc, + 0x01, 0xbf, 0x01, 0xd3, 0xff, 0x8d, 0x01, 0xbf, 0x01, 0xd4, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xd5, 0xff, 0xbc, 0x01, 0xbf, 0x01, 0xd6, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xd7, 0xff, 0x77, 0x01, 0xbf, 0x01, 0xd8, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xd9, 0xff, 0xa4, 0x01, 0xbf, 0x01, 0xda, 0xff, 0x77, + 0x01, 0xbf, 0x01, 0xdb, 0xff, 0xa4, 0x01, 0xbf, 0x01, 0xdc, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xdd, 0xff, 0x77, 0x01, 0xbf, 0x01, 0xe1, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xe2, 0xff, 0xa4, 0x01, 0xbf, 0x01, 0xe4, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xe5, 0xff, 0xa4, 0x01, 0xbf, 0x01, 0xea, 0xff, 0xa4, + 0x01, 0xbf, 0x01, 0xeb, 0xff, 0x77, 0x01, 0xbf, 0x02, 0x0b, 0xff, 0xe9, + 0x01, 0xc0, 0x01, 0xac, 0xff, 0xd3, 0x01, 0xc0, 0x01, 0xb0, 0xff, 0xbc, + 0x01, 0xc0, 0x01, 0xb7, 0xff, 0xbc, 0x01, 0xc0, 0x01, 0xbe, 0xff, 0x8d, + 0x01, 0xc0, 0x01, 0xbf, 0xff, 0xa4, 0x01, 0xc0, 0x01, 0xc3, 0xff, 0xd3, + 0x01, 0xc0, 0x01, 0xcb, 0xff, 0xba, 0x01, 0xc0, 0x01, 0xd7, 0xff, 0xbc, + 0x01, 0xc1, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xc1, 0x01, 0xba, 0xff, 0xbc, + 0x01, 0xc1, 0x01, 0xbd, 0xff, 0xbc, 0x01, 0xc1, 0x01, 0xc0, 0xff, 0xbc, + 0x01, 0xc1, 0x01, 0xc9, 0xff, 0xba, 0x01, 0xc1, 0x01, 0xda, 0xff, 0xe9, + 0x01, 0xc1, 0x01, 0xdf, 0xff, 0xd3, 0x01, 0xc2, 0x01, 0xba, 0xff, 0xd3, + 0x01, 0xc2, 0x01, 0xcc, 0x00, 0x2d, 0x01, 0xc5, 0x01, 0xcc, 0x00, 0x17, + 0x01, 0xc5, 0x01, 0xdf, 0x00, 0x2d, 0x01, 0xc6, 0x01, 0xcb, 0xff, 0xbc, + 0x01, 0xc6, 0x02, 0x0f, 0xff, 0x77, 0x01, 0xc8, 0x01, 0xac, 0xff, 0xd3, + 0x01, 0xc8, 0x01, 0xb0, 0xff, 0xd3, 0x01, 0xc8, 0x01, 0xb2, 0xff, 0xbc, + 0x01, 0xc8, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xc8, 0x01, 0xb7, 0xff, 0xba, + 0x01, 0xc8, 0x01, 0xb8, 0xff, 0xd3, 0x01, 0xc8, 0x01, 0xba, 0xff, 0xd3, + 0x01, 0xc8, 0x01, 0xbd, 0xff, 0xd3, 0x01, 0xc8, 0x01, 0xbe, 0xff, 0x33, + 0x01, 0xc8, 0x01, 0xc1, 0xff, 0xa4, 0x01, 0xc8, 0x01, 0xc3, 0xff, 0x60, + 0x01, 0xc8, 0x01, 0xc9, 0xff, 0xe9, 0x01, 0xc8, 0x01, 0xcb, 0xff, 0xa4, + 0x01, 0xc8, 0x02, 0x0f, 0xff, 0x60, 0x01, 0xc9, 0x01, 0xb0, 0xff, 0xbc, + 0x01, 0xc9, 0x01, 0xb2, 0xff, 0xe7, 0x01, 0xc9, 0x01, 0xb3, 0xff, 0xe9, + 0x01, 0xc9, 0x01, 0xb7, 0xff, 0xbc, 0x01, 0xc9, 0x01, 0xc1, 0xff, 0xba, + 0x01, 0xc9, 0x01, 0xcb, 0xff, 0xd3, 0x01, 0xc9, 0x01, 0xd0, 0xff, 0xbc, + 0x01, 0xc9, 0x01, 0xd2, 0x00, 0x17, 0x01, 0xc9, 0x01, 0xd7, 0xff, 0xbc, + 0x01, 0xc9, 0x01, 0xd8, 0xff, 0xe9, 0x01, 0xc9, 0x01, 0xeb, 0xff, 0xe9, + 0x01, 0xca, 0x01, 0xac, 0xff, 0xbc, 0x01, 0xca, 0x01, 0xb0, 0xff, 0xa6, + 0x01, 0xca, 0x01, 0xb2, 0xff, 0xd3, 0x01, 0xca, 0x01, 0xb7, 0xff, 0xa4, + 0x01, 0xca, 0x01, 0xba, 0xff, 0xe9, 0x01, 0xca, 0x01, 0xbd, 0xff, 0xe9, + 0x01, 0xca, 0x01, 0xbe, 0xff, 0x8d, 0x01, 0xca, 0x01, 0xc1, 0xff, 0xa4, + 0x01, 0xca, 0x01, 0xc3, 0xff, 0xbc, 0x01, 0xca, 0x01, 0xd0, 0xff, 0xa4, + 0x01, 0xca, 0x01, 0xd7, 0xff, 0xa4, 0x01, 0xca, 0x01, 0xd8, 0xff, 0xe9, + 0x01, 0xcc, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xcc, 0x01, 0xde, 0xff, 0xd3, + 0x01, 0xcc, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xcc, 0x01, 0xe3, 0xff, 0xd3, + 0x01, 0xcd, 0x01, 0xcc, 0xff, 0xd1, 0x01, 0xcd, 0x01, 0xd0, 0xff, 0xa4, + 0x01, 0xcd, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xcd, 0x01, 0xd2, 0xff, 0xe9, + 0x01, 0xcd, 0x01, 0xd3, 0xff, 0xd3, 0x01, 0xcd, 0x01, 0xd7, 0xff, 0xa4, + 0x01, 0xcd, 0x01, 0xd8, 0xff, 0xd3, 0x01, 0xcd, 0x01, 0xdd, 0xff, 0xe9, + 0x01, 0xcd, 0x01, 0xdf, 0xff, 0xd3, 0x01, 0xcd, 0x01, 0xe0, 0xff, 0xe9, + 0x01, 0xcd, 0x01, 0xe1, 0xff, 0xbc, 0x01, 0xcd, 0x01, 0xe3, 0xff, 0xbc, + 0x01, 0xcd, 0x01, 0xe6, 0xff, 0xbc, 0x01, 0xcd, 0x01, 0xe9, 0xff, 0xe9, + 0x01, 0xcd, 0x01, 0xeb, 0xff, 0xd3, 0x01, 0xce, 0x01, 0xcc, 0xff, 0xe9, + 0x01, 0xce, 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xce, 0x01, 0xd0, 0xff, 0xe9, + 0x01, 0xce, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xce, 0x01, 0xd2, 0xff, 0xe9, + 0x01, 0xce, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xce, 0x01, 0xd7, 0xff, 0xd1, + 0x01, 0xce, 0x01, 0xd8, 0xff, 0xe9, 0x01, 0xce, 0x01, 0xda, 0xff, 0xe9, + 0x01, 0xce, 0x01, 0xdd, 0xff, 0xe9, 0x01, 0xce, 0x01, 0xde, 0xff, 0xd3, + 0x01, 0xce, 0x01, 0xdf, 0xff, 0xd3, 0x01, 0xce, 0x01, 0xe0, 0xff, 0xe9, + 0x01, 0xce, 0x01, 0xe3, 0xff, 0xa4, 0x01, 0xce, 0x01, 0xe6, 0xff, 0xbc, + 0x01, 0xce, 0x01, 0xeb, 0xff, 0xe9, 0x01, 0xcf, 0x00, 0x0f, 0xff, 0x06, + 0x01, 0xcf, 0x00, 0x11, 0xff, 0x06, 0x01, 0xcf, 0x01, 0xcc, 0xff, 0xd3, + 0x01, 0xcf, 0x01, 0xd0, 0xff, 0xa4, 0x01, 0xcf, 0x01, 0xd1, 0xff, 0xd3, + 0x01, 0xcf, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xcf, 0x01, 0xd7, 0xff, 0xd3, + 0x01, 0xcf, 0x01, 0xda, 0xff, 0xd3, 0x01, 0xcf, 0x01, 0xdd, 0xff, 0xd3, + 0x01, 0xcf, 0x01, 0xeb, 0xff, 0xe9, 0x01, 0xd0, 0x01, 0xe6, 0xff, 0xd3, + 0x01, 0xd0, 0x01, 0xe9, 0x00, 0x17, 0x01, 0xd1, 0x01, 0xcd, 0xff, 0xe9, + 0x01, 0xd1, 0x01, 0xd0, 0xff, 0xd3, 0x01, 0xd1, 0x01, 0xd2, 0xff, 0xe9, + 0x01, 0xd1, 0x01, 0xd3, 0xff, 0xd3, 0x01, 0xd1, 0x01, 0xd7, 0xff, 0xbc, + 0x01, 0xd1, 0x01, 0xde, 0xff, 0xbc, 0x01, 0xd1, 0x01, 0xdf, 0xff, 0xe9, + 0x01, 0xd1, 0x01, 0xe1, 0xff, 0xd3, 0x01, 0xd1, 0x01, 0xe3, 0xff, 0xbc, + 0x01, 0xd2, 0x01, 0xcd, 0x00, 0x17, 0x01, 0xd2, 0x01, 0xdf, 0x00, 0x17, + 0x01, 0xd2, 0x01, 0xe3, 0xff, 0xe9, 0x01, 0xd2, 0x01, 0xe6, 0x00, 0x2d, + 0x01, 0xd3, 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xd3, 0x01, 0xd0, 0xff, 0xd3, + 0x01, 0xd3, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xd3, 0x01, 0xd3, 0xff, 0xe9, + 0x01, 0xd3, 0x01, 0xd7, 0xff, 0xe9, 0x01, 0xd3, 0x01, 0xda, 0xff, 0xe9, + 0x01, 0xd3, 0x01, 0xdd, 0xff, 0xe9, 0x01, 0xd3, 0x01, 0xdf, 0xff, 0xe9, + 0x01, 0xd3, 0x01, 0xe0, 0xff, 0xe9, 0x01, 0xd3, 0x01, 0xe3, 0xff, 0xbc, + 0x01, 0xd3, 0x01, 0xe6, 0xff, 0xd3, 0x01, 0xd6, 0x01, 0xcc, 0x00, 0x2d, + 0x01, 0xd6, 0x01, 0xcd, 0x00, 0x2d, 0x01, 0xd6, 0x01, 0xd1, 0x00, 0x17, + 0x01, 0xd6, 0x01, 0xd3, 0x00, 0x17, 0x01, 0xd6, 0x01, 0xd7, 0x00, 0x17, + 0x01, 0xd6, 0x01, 0xda, 0x00, 0x17, 0x01, 0xd6, 0x01, 0xdd, 0x00, 0x17, + 0x01, 0xd6, 0x01, 0xde, 0x00, 0x17, 0x01, 0xd6, 0x01, 0xdf, 0x00, 0x17, + 0x01, 0xd6, 0x01, 0xe9, 0x00, 0x17, 0x01, 0xd7, 0x01, 0xda, 0x00, 0x17, + 0x01, 0xd7, 0x01, 0xe3, 0xff, 0xd3, 0x01, 0xd8, 0x01, 0xcd, 0xff, 0xe9, + 0x01, 0xd8, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xd8, 0x01, 0xdf, 0x00, 0x17, + 0x01, 0xda, 0x01, 0xd0, 0xff, 0xd3, 0x01, 0xda, 0x01, 0xd2, 0xff, 0xe9, + 0x01, 0xda, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xda, 0x01, 0xd7, 0xff, 0xd3, + 0x01, 0xda, 0x01, 0xde, 0xff, 0xd3, 0x01, 0xda, 0x01, 0xdf, 0xff, 0xe9, + 0x01, 0xda, 0x01, 0xe1, 0xff, 0xe9, 0x01, 0xda, 0x01, 0xe3, 0xff, 0xd3, + 0x01, 0xdc, 0x01, 0xd0, 0xff, 0xd1, 0x01, 0xdc, 0x01, 0xd3, 0xff, 0xe9, + 0x01, 0xdc, 0x01, 0xd7, 0xff, 0xba, 0x01, 0xdc, 0x01, 0xde, 0xff, 0xd3, + 0x01, 0xdc, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xdc, 0x01, 0xe1, 0xff, 0xe9, + 0x01, 0xdc, 0x01, 0xe3, 0xff, 0xd3, 0x01, 0xdc, 0x01, 0xeb, 0xff, 0xe9, + 0x01, 0xdd, 0x01, 0xd2, 0x00, 0x17, 0x01, 0xdd, 0x01, 0xda, 0x00, 0x17, + 0x01, 0xdd, 0x01, 0xe3, 0xff, 0xe9, 0x01, 0xdd, 0x01, 0xe9, 0x00, 0x17, + 0x01, 0xde, 0x00, 0x0f, 0xff, 0x1d, 0x01, 0xde, 0x00, 0x11, 0xff, 0x1d, + 0x01, 0xde, 0x01, 0xcc, 0xff, 0xe9, 0x01, 0xde, 0x01, 0xd0, 0xff, 0xbc, + 0x01, 0xde, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xde, 0x01, 0xd2, 0x00, 0x44, + 0x01, 0xde, 0x01, 0xd7, 0xff, 0xd3, 0x01, 0xde, 0x01, 0xda, 0xff, 0xe9, + 0x01, 0xde, 0x01, 0xdd, 0xff, 0xe9, 0x01, 0xde, 0x01, 0xdf, 0x00, 0x17, + 0x01, 0xdf, 0x00, 0x0f, 0xff, 0x33, 0x01, 0xdf, 0x00, 0x11, 0xff, 0x33, + 0x01, 0xdf, 0x00, 0x7b, 0x00, 0x17, 0x01, 0xdf, 0x01, 0xcc, 0xff, 0xe9, + 0x01, 0xdf, 0x01, 0xcd, 0x00, 0x17, 0x01, 0xdf, 0x01, 0xd0, 0xff, 0xbc, + 0x01, 0xdf, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xdf, 0x01, 0xd2, 0x00, 0x17, + 0x01, 0xdf, 0x01, 0xd7, 0xff, 0xd3, 0x01, 0xdf, 0x01, 0xd8, 0xff, 0xe9, + 0x01, 0xdf, 0x01, 0xda, 0xff, 0xe7, 0x01, 0xdf, 0x01, 0xdc, 0xff, 0xe9, + 0x01, 0xdf, 0x01, 0xdd, 0xff, 0xe9, 0x01, 0xdf, 0x01, 0xe0, 0xff, 0xe9, + 0x01, 0xdf, 0x01, 0xe9, 0xff, 0xe9, 0x01, 0xdf, 0x01, 0xeb, 0xff, 0xe9, + 0x01, 0xe0, 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xe0, 0x01, 0xd0, 0xff, 0xd3, + 0x01, 0xe0, 0x01, 0xd7, 0xff, 0xd3, 0x01, 0xe0, 0x01, 0xde, 0xff, 0xd3, + 0x01, 0xe0, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xe0, 0x01, 0xe3, 0xff, 0xd3, + 0x01, 0xe0, 0x01, 0xeb, 0xff, 0xe9, 0x01, 0xe1, 0x01, 0xcc, 0xff, 0xe9, + 0x01, 0xe1, 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xe1, 0x01, 0xd1, 0xff, 0xe9, + 0x01, 0xe1, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xe1, 0x01, 0xda, 0xff, 0xe9, + 0x01, 0xe1, 0x01, 0xdd, 0xff, 0xe9, 0x01, 0xe1, 0x01, 0xde, 0xff, 0xe9, + 0x01, 0xe1, 0x01, 0xe0, 0xff, 0xe9, 0x01, 0xe1, 0x01, 0xe3, 0xff, 0xd3, + 0x01, 0xe2, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xe2, 0x01, 0xd3, 0xff, 0xe9, + 0x01, 0xe2, 0x01, 0xda, 0xff, 0xe9, 0x01, 0xe2, 0x01, 0xdd, 0xff, 0xe9, + 0x01, 0xe5, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xe5, 0x01, 0xda, 0xff, 0xe9, + 0x01, 0xe5, 0x01, 0xdf, 0x00, 0x17, 0x01, 0xe8, 0x01, 0xde, 0xff, 0x60, + 0x01, 0xe8, 0x01, 0xe3, 0xff, 0x77, 0x01, 0xe9, 0x01, 0xd0, 0xff, 0xd3, + 0x01, 0xe9, 0x01, 0xd1, 0x00, 0x17, 0x01, 0xe9, 0x01, 0xd3, 0xff, 0xe9, + 0x01, 0xe9, 0x01, 0xd7, 0xff, 0xd3, 0x01, 0xe9, 0x01, 0xda, 0x00, 0x17, + 0x01, 0xe9, 0x01, 0xde, 0xff, 0xd3, 0x01, 0xe9, 0x01, 0xe1, 0xff, 0xe9, + 0x01, 0xe9, 0x01, 0xeb, 0xff, 0xe9, 0x01, 0xea, 0x01, 0xd0, 0xff, 0xd3, + 0x01, 0xea, 0x01, 0xd2, 0xff, 0xe9, 0x01, 0xea, 0x01, 0xd7, 0xff, 0xd3, + 0x01, 0xea, 0x01, 0xd8, 0xff, 0xe9, 0x01, 0xea, 0x01, 0xde, 0xff, 0xd3, + 0x01, 0xea, 0x01, 0xe1, 0xff, 0xe9, 0x01, 0xea, 0x01, 0xe3, 0xff, 0xd3, + 0x01, 0xfa, 0x00, 0x0f, 0xff, 0x33, 0x01, 0xfa, 0x00, 0x11, 0xff, 0x33, + 0x01, 0xfe, 0x00, 0x0f, 0xff, 0x06, 0x01, 0xfe, 0x00, 0x11, 0xff, 0x06, + 0x01, 0xfe, 0x00, 0x1d, 0xff, 0xd3, 0x01, 0xfe, 0x00, 0x1e, 0xff, 0xd3, + 0x01, 0xfe, 0x00, 0x6c, 0xff, 0x60, 0x01, 0xfe, 0x00, 0x7b, 0xff, 0x60, + 0x01, 0xfe, 0x02, 0x0b, 0xff, 0xd3, 0x02, 0x0e, 0x02, 0x0e, 0xff, 0xdb, + 0x02, 0x0f, 0x00, 0x03, 0xff, 0xb4, 0x02, 0x0f, 0x00, 0x56, 0xff, 0xdb, + 0x02, 0x0f, 0x02, 0x0f, 0xff, 0xdb, 0x02, 0x14, 0x01, 0x9e, 0xff, 0x60, + 0x02, 0x14, 0x01, 0xa7, 0xff, 0x60, 0x02, 0x14, 0x01, 0xbe, 0xff, 0x60, + 0x02, 0x14, 0x01, 0xc3, 0xff, 0xbc, 0x02, 0x14, 0x01, 0xc6, 0xff, 0xbc, + 0x00, 0x00, 0x00, 0x1c, 0x01, 0x56, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0x00, 0xc2, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x0f, 0x01, 0x43, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x02, 0x00, 0x07, 0x01, 0x63, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x03, 0x00, 0x1a, 0x01, 0xa1, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x04, 0x00, 0x0f, 0x01, 0xdc, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x05, 0x00, 0x0e, 0x02, 0x0a, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x06, 0x00, 0x0e, 0x02, 0x37, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x07, 0x00, 0x7a, 0x03, 0x3c, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x00, 0x14, 0x03, 0xe1, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x09, 0x00, 0x0e, 0x04, 0x14, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0b, 0x00, 0x1c, 0x04, 0x5d, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0c, 0x00, 0x2e, 0x04, 0xd8, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0d, 0x00, 0x6f, 0x05, 0xe7, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0e, 0x00, 0x3e, 0x06, 0xd5, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x01, 0x00, 0x1e, 0x01, 0x23, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x02, 0x00, 0x0e, 0x01, 0x53, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x03, 0x00, 0x34, 0x01, 0x6b, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x04, 0x00, 0x1e, 0x01, 0xbc, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x05, 0x00, 0x1c, 0x01, 0xec, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x06, 0x00, 0x1c, 0x02, 0x19, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x07, 0x00, 0xf4, 0x02, 0x46, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x08, 0x00, 0x28, 0x03, 0xb7, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x09, 0x00, 0x1c, 0x03, 0xf6, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x0b, 0x00, 0x38, 0x04, 0x23, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x0c, 0x00, 0x5c, 0x04, 0x7a, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x0d, 0x00, 0xde, 0x05, 0x07, 0x00, 0x03, 0x00, 0x01, 0x04, 0x09, + 0x00, 0x0e, 0x00, 0x7c, 0x06, 0x57, 0x00, 0x43, 0x00, 0x6f, 0x00, 0x70, + 0x00, 0x79, 0x00, 0x72, 0x00, 0x69, 0x00, 0x67, 0x00, 0x68, 0x00, 0x74, + 0x00, 0x20, 0x00, 0x28, 0x00, 0x63, 0x00, 0x29, 0x00, 0x20, 0x00, 0x32, + 0x00, 0x30, 0x00, 0x30, 0x00, 0x37, 0x00, 0x20, 0x00, 0x52, 0x00, 0x65, + 0x00, 0x64, 0x00, 0x20, 0x00, 0x48, 0x00, 0x61, 0x00, 0x74, 0x00, 0x2c, + 0x00, 0x20, 0x00, 0x49, 0x00, 0x6e, 0x00, 0x63, 0x00, 0x2e, 0x00, 0x20, + 0x00, 0x41, 0x00, 0x6c, 0x00, 0x6c, 0x00, 0x20, 0x00, 0x72, 0x00, 0x69, + 0x00, 0x67, 0x00, 0x68, 0x00, 0x74, 0x00, 0x73, 0x00, 0x20, 0x00, 0x72, + 0x00, 0x65, 0x00, 0x73, 0x00, 0x65, 0x00, 0x72, 0x00, 0x76, 0x00, 0x65, + 0x00, 0x64, 0x00, 0x2e, 0x00, 0x20, 0x00, 0x4c, 0x00, 0x49, 0x00, 0x42, + 0x00, 0x45, 0x00, 0x52, 0x00, 0x41, 0x00, 0x54, 0x00, 0x49, 0x00, 0x4f, + 0x00, 0x4e, 0x00, 0x20, 0x00, 0x69, 0x00, 0x73, 0x00, 0x20, 0x00, 0x61, + 0x00, 0x20, 0x00, 0x74, 0x00, 0x72, 0x00, 0x61, 0x00, 0x64, 0x00, 0x65, + 0x00, 0x6d, 0x00, 0x61, 0x00, 0x72, 0x00, 0x6b, 0x00, 0x20, 0x00, 0x6f, + 0x00, 0x66, 0x00, 0x20, 0x00, 0x52, 0x00, 0x65, 0x00, 0x64, 0x00, 0x20, + 0x00, 0x48, 0x00, 0x61, 0x00, 0x74, 0x00, 0x2c, 0x00, 0x20, 0x00, 0x49, + 0x00, 0x6e, 0x00, 0x63, 0x00, 0x2e, 0x00, 0x00, 0x43, 0x6f, 0x70, 0x79, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x63, 0x29, 0x20, 0x32, 0x30, + 0x30, 0x37, 0x20, 0x52, 0x65, 0x64, 0x20, 0x48, 0x61, 0x74, 0x2c, 0x20, + 0x49, 0x6e, 0x63, 0x2e, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x73, 0x20, 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, + 0x2e, 0x20, 0x4c, 0x49, 0x42, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, + 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, + 0x61, 0x72, 0x6b, 0x20, 0x6f, 0x66, 0x20, 0x52, 0x65, 0x64, 0x20, 0x48, + 0x61, 0x74, 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0x00, 0x00, 0x4c, 0x00, + 0x69, 0x00, 0x62, 0x00, 0x65, 0x00, 0x72, 0x00, 0x61, 0x00, 0x74, 0x00, + 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x20, 0x00, 0x53, 0x00, 0x61, 0x00, + 0x6e, 0x00, 0x73, 0x00, 0x00, 0x4c, 0x69, 0x62, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x53, 0x61, 0x6e, 0x73, 0x00, 0x00, 0x52, 0x00, + 0x65, 0x00, 0x67, 0x00, 0x75, 0x00, 0x6c, 0x00, 0x61, 0x00, 0x72, 0x00, + 0x00, 0x52, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x00, 0x00, 0x41, 0x00, + 0x73, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x64, 0x00, 0x65, 0x00, + 0x72, 0x00, 0x20, 0x00, 0x2d, 0x00, 0x20, 0x00, 0x4c, 0x00, 0x69, 0x00, + 0x62, 0x00, 0x65, 0x00, 0x72, 0x00, 0x61, 0x00, 0x74, 0x00, 0x69, 0x00, + 0x6f, 0x00, 0x6e, 0x00, 0x20, 0x00, 0x53, 0x00, 0x61, 0x00, 0x6e, 0x00, + 0x73, 0x00, 0x00, 0x41, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x20, + 0x2d, 0x20, 0x4c, 0x69, 0x62, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x53, 0x61, 0x6e, 0x73, 0x00, 0x00, 0x4c, 0x00, 0x69, 0x00, 0x62, + 0x00, 0x65, 0x00, 0x72, 0x00, 0x61, 0x00, 0x74, 0x00, 0x69, 0x00, 0x6f, + 0x00, 0x6e, 0x00, 0x20, 0x00, 0x53, 0x00, 0x61, 0x00, 0x6e, 0x00, 0x73, + 0x00, 0x00, 0x4c, 0x69, 0x62, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x53, 0x61, 0x6e, 0x73, 0x00, 0x00, 0x56, 0x00, 0x65, 0x00, 0x72, + 0x00, 0x73, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x20, 0x00, 0x31, + 0x00, 0x2e, 0x00, 0x30, 0x00, 0x37, 0x00, 0x2e, 0x00, 0x34, 0x00, 0x00, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, 0x30, 0x37, + 0x2e, 0x34, 0x00, 0x00, 0x4c, 0x00, 0x69, 0x00, 0x62, 0x00, 0x65, 0x00, + 0x72, 0x00, 0x61, 0x00, 0x74, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, + 0x53, 0x00, 0x61, 0x00, 0x6e, 0x00, 0x73, 0x00, 0x00, 0x4c, 0x69, 0x62, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x61, 0x6e, 0x73, 0x00, + 0x00, 0x4c, 0x00, 0x69, 0x00, 0x62, 0x00, 0x65, 0x00, 0x72, 0x00, 0x61, + 0x00, 0x74, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x20, 0x00, 0x69, + 0x00, 0x73, 0x00, 0x20, 0x00, 0x61, 0x00, 0x20, 0x00, 0x74, 0x00, 0x72, + 0x00, 0x61, 0x00, 0x64, 0x00, 0x65, 0x00, 0x6d, 0x00, 0x61, 0x00, 0x72, + 0x00, 0x6b, 0x00, 0x20, 0x00, 0x6f, 0x00, 0x66, 0x00, 0x20, 0x00, 0x52, + 0x00, 0x65, 0x00, 0x64, 0x00, 0x20, 0x00, 0x48, 0x00, 0x61, 0x00, 0x74, + 0x00, 0x2c, 0x00, 0x20, 0x00, 0x49, 0x00, 0x6e, 0x00, 0x63, 0x00, 0x2e, + 0x00, 0x20, 0x00, 0x72, 0x00, 0x65, 0x00, 0x67, 0x00, 0x69, 0x00, 0x73, + 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x65, 0x00, 0x64, 0x00, 0x20, + 0x00, 0x69, 0x00, 0x6e, 0x00, 0x20, 0x00, 0x55, 0x00, 0x2e, 0x00, 0x53, + 0x00, 0x2e, 0x00, 0x20, 0x00, 0x50, 0x00, 0x61, 0x00, 0x74, 0x00, 0x65, + 0x00, 0x6e, 0x00, 0x74, 0x00, 0x20, 0x00, 0x61, 0x00, 0x6e, 0x00, 0x64, + 0x00, 0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x64, 0x00, 0x65, + 0x00, 0x6d, 0x00, 0x61, 0x00, 0x72, 0x00, 0x6b, 0x00, 0x20, 0x00, 0x4f, + 0x00, 0x66, 0x00, 0x66, 0x00, 0x69, 0x00, 0x63, 0x00, 0x65, 0x00, 0x20, + 0x00, 0x61, 0x00, 0x6e, 0x00, 0x64, 0x00, 0x20, 0x00, 0x63, 0x00, 0x65, + 0x00, 0x72, 0x00, 0x74, 0x00, 0x61, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x20, + 0x00, 0x6f, 0x00, 0x74, 0x00, 0x68, 0x00, 0x65, 0x00, 0x72, 0x00, 0x20, + 0x00, 0x6a, 0x00, 0x75, 0x00, 0x72, 0x00, 0x69, 0x00, 0x73, 0x00, 0x64, + 0x00, 0x69, 0x00, 0x63, 0x00, 0x74, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x6e, + 0x00, 0x73, 0x00, 0x2e, 0x00, 0x00, 0x4c, 0x69, 0x62, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x74, 0x72, + 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x6f, 0x66, 0x20, 0x52, + 0x65, 0x64, 0x20, 0x48, 0x61, 0x74, 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, + 0x20, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x20, + 0x69, 0x6e, 0x20, 0x55, 0x2e, 0x53, 0x2e, 0x20, 0x50, 0x61, 0x74, 0x65, + 0x6e, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x54, 0x72, 0x61, 0x64, 0x65, + 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x20, + 0x61, 0x6e, 0x64, 0x20, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x20, + 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6a, 0x75, 0x72, 0x69, 0x73, 0x64, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x00, 0x00, 0x41, 0x00, + 0x73, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x64, 0x00, 0x65, 0x00, + 0x72, 0x00, 0x20, 0x00, 0x43, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x70, 0x00, + 0x6f, 0x00, 0x72, 0x00, 0x61, 0x00, 0x74, 0x00, 0x69, 0x00, 0x6f, 0x00, + 0x6e, 0x00, 0x00, 0x41, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x20, + 0x43, 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x00, + 0x00, 0x53, 0x00, 0x74, 0x00, 0x65, 0x00, 0x76, 0x00, 0x65, 0x00, 0x20, + 0x00, 0x4d, 0x00, 0x61, 0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x73, + 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x00, 0x53, 0x74, 0x65, 0x76, 0x65, 0x20, + 0x4d, 0x61, 0x74, 0x74, 0x65, 0x73, 0x6f, 0x6e, 0x00, 0x00, 0x68, 0x00, + 0x74, 0x00, 0x74, 0x00, 0x70, 0x00, 0x3a, 0x00, 0x2f, 0x00, 0x2f, 0x00, + 0x77, 0x00, 0x77, 0x00, 0x77, 0x00, 0x2e, 0x00, 0x61, 0x00, 0x73, 0x00, + 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x64, 0x00, 0x65, 0x00, 0x72, 0x00, + 0x63, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x70, 0x00, 0x2e, 0x00, 0x63, 0x00, + 0x6f, 0x00, 0x6d, 0x00, 0x2f, 0x00, 0x00, 0x68, 0x74, 0x74, 0x70, 0x3a, + 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x61, 0x73, 0x63, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x00, + 0x00, 0x68, 0x00, 0x74, 0x00, 0x74, 0x00, 0x70, 0x00, 0x3a, 0x00, 0x2f, + 0x00, 0x2f, 0x00, 0x77, 0x00, 0x77, 0x00, 0x77, 0x00, 0x2e, 0x00, 0x61, + 0x00, 0x73, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x64, 0x00, 0x65, + 0x00, 0x72, 0x00, 0x63, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x70, 0x00, 0x2e, + 0x00, 0x63, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x2f, 0x00, 0x74, 0x00, 0x79, + 0x00, 0x70, 0x00, 0x65, 0x00, 0x64, 0x00, 0x65, 0x00, 0x73, 0x00, 0x69, + 0x00, 0x67, 0x00, 0x6e, 0x00, 0x65, 0x00, 0x72, 0x00, 0x73, 0x00, 0x2e, + 0x00, 0x68, 0x00, 0x74, 0x00, 0x6d, 0x00, 0x6c, 0x00, 0x00, 0x68, 0x74, + 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x61, 0x73, 0x63, + 0x65, 0x6e, 0x64, 0x65, 0x72, 0x63, 0x6f, 0x72, 0x70, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, + 0x65, 0x72, 0x73, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x00, 0x00, 0x4c, 0x00, + 0x69, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x73, 0x00, 0x65, 0x00, + 0x64, 0x00, 0x20, 0x00, 0x75, 0x00, 0x6e, 0x00, 0x64, 0x00, 0x65, 0x00, + 0x72, 0x00, 0x20, 0x00, 0x74, 0x00, 0x68, 0x00, 0x65, 0x00, 0x20, 0x00, + 0x4c, 0x00, 0x69, 0x00, 0x62, 0x00, 0x65, 0x00, 0x72, 0x00, 0x61, 0x00, + 0x74, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x20, 0x00, 0x46, 0x00, + 0x6f, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x73, 0x00, 0x20, 0x00, 0x6c, 0x00, + 0x69, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x73, 0x00, 0x65, 0x00, + 0x2c, 0x00, 0x20, 0x00, 0x73, 0x00, 0x65, 0x00, 0x65, 0x00, 0x20, 0x00, + 0x68, 0x00, 0x74, 0x00, 0x74, 0x00, 0x70, 0x00, 0x73, 0x00, 0x3a, 0x00, + 0x2f, 0x00, 0x2f, 0x00, 0x66, 0x00, 0x65, 0x00, 0x64, 0x00, 0x6f, 0x00, + 0x72, 0x00, 0x61, 0x00, 0x70, 0x00, 0x72, 0x00, 0x6f, 0x00, 0x6a, 0x00, + 0x65, 0x00, 0x63, 0x00, 0x74, 0x00, 0x2e, 0x00, 0x6f, 0x00, 0x72, 0x00, + 0x67, 0x00, 0x2f, 0x00, 0x77, 0x00, 0x69, 0x00, 0x6b, 0x00, 0x69, 0x00, + 0x2f, 0x00, 0x4c, 0x00, 0x69, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, + 0x73, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x67, 0x00, 0x2f, 0x00, 0x4c, 0x00, + 0x69, 0x00, 0x62, 0x00, 0x65, 0x00, 0x72, 0x00, 0x61, 0x00, 0x74, 0x00, + 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x46, 0x00, 0x6f, 0x00, 0x6e, 0x00, + 0x74, 0x00, 0x4c, 0x00, 0x69, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, + 0x73, 0x00, 0x65, 0x00, 0x00, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, + 0x64, 0x20, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x4c, 0x69, 0x62, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x46, + 0x6f, 0x6e, 0x74, 0x73, 0x20, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, + 0x2c, 0x20, 0x73, 0x65, 0x65, 0x20, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, + 0x2f, 0x2f, 0x66, 0x65, 0x64, 0x6f, 0x72, 0x61, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x77, 0x69, 0x6b, 0x69, + 0x2f, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x69, 0x6e, 0x67, 0x2f, 0x4c, + 0x69, 0x62, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x6e, + 0x74, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x00, 0x00, 0x68, 0x00, + 0x74, 0x00, 0x74, 0x00, 0x70, 0x00, 0x73, 0x00, 0x3a, 0x00, 0x2f, 0x00, + 0x2f, 0x00, 0x66, 0x00, 0x65, 0x00, 0x64, 0x00, 0x6f, 0x00, 0x72, 0x00, + 0x61, 0x00, 0x70, 0x00, 0x72, 0x00, 0x6f, 0x00, 0x6a, 0x00, 0x65, 0x00, + 0x63, 0x00, 0x74, 0x00, 0x2e, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x67, 0x00, + 0x2f, 0x00, 0x77, 0x00, 0x69, 0x00, 0x6b, 0x00, 0x69, 0x00, 0x2f, 0x00, + 0x4c, 0x00, 0x69, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x73, 0x00, + 0x69, 0x00, 0x6e, 0x00, 0x67, 0x00, 0x2f, 0x00, 0x4c, 0x00, 0x69, 0x00, + 0x62, 0x00, 0x65, 0x00, 0x72, 0x00, 0x61, 0x00, 0x74, 0x00, 0x69, 0x00, + 0x6f, 0x00, 0x6e, 0x00, 0x46, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x74, 0x00, + 0x4c, 0x00, 0x69, 0x00, 0x63, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x73, 0x00, + 0x65, 0x00, 0x00, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x66, + 0x65, 0x64, 0x6f, 0x72, 0x61, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x77, 0x69, 0x6b, 0x69, 0x2f, 0x4c, 0x69, + 0x63, 0x65, 0x6e, 0x73, 0x69, 0x6e, 0x67, 0x2f, 0x4c, 0x69, 0x62, 0x65, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6f, 0x6e, 0x74, 0x4c, 0x69, + 0x63, 0x65, 0x6e, 0x73, 0x65, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xbd, 0x00, 0x96, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0xa9, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, + 0x01, 0x02, 0x00, 0x04, 0x00, 0x05, 0x00, 0x06, 0x00, 0x07, 0x00, 0x08, + 0x00, 0x09, 0x00, 0x0a, 0x00, 0x0b, 0x00, 0x0c, 0x00, 0x0d, 0x00, 0x0e, + 0x00, 0x0f, 0x01, 0x03, 0x00, 0x11, 0x00, 0x12, 0x00, 0x13, 0x00, 0x14, + 0x00, 0x15, 0x00, 0x16, 0x00, 0x17, 0x00, 0x18, 0x00, 0x19, 0x00, 0x1a, + 0x00, 0x1b, 0x00, 0x1c, 0x00, 0x1d, 0x01, 0x04, 0x00, 0x1f, 0x00, 0x20, + 0x00, 0x21, 0x00, 0x22, 0x00, 0x23, 0x00, 0x24, 0x00, 0x25, 0x00, 0x26, + 0x00, 0x27, 0x00, 0x28, 0x00, 0x29, 0x00, 0x2a, 0x00, 0x2b, 0x00, 0x2c, + 0x00, 0x2d, 0x00, 0x2e, 0x00, 0x2f, 0x00, 0x30, 0x00, 0x31, 0x00, 0x32, + 0x00, 0x33, 0x00, 0x34, 0x00, 0x35, 0x00, 0x36, 0x00, 0x37, 0x00, 0x38, + 0x00, 0x39, 0x00, 0x3a, 0x00, 0x3b, 0x00, 0x3c, 0x00, 0x3d, 0x00, 0x3e, + 0x00, 0x3f, 0x00, 0x40, 0x00, 0x41, 0x00, 0x42, 0x00, 0x43, 0x00, 0x44, + 0x00, 0x45, 0x00, 0x46, 0x00, 0x47, 0x00, 0x48, 0x00, 0x49, 0x00, 0x4a, + 0x00, 0x4b, 0x00, 0x4c, 0x00, 0x4d, 0x00, 0x4e, 0x00, 0x4f, 0x00, 0x50, + 0x00, 0x51, 0x00, 0x52, 0x00, 0x53, 0x00, 0x54, 0x00, 0x55, 0x00, 0x56, + 0x00, 0x57, 0x00, 0x58, 0x00, 0x59, 0x00, 0x5a, 0x00, 0x5b, 0x00, 0x5c, + 0x00, 0x5d, 0x00, 0x5e, 0x00, 0x5f, 0x00, 0x60, 0x00, 0x61, 0x00, 0xa3, + 0x00, 0x84, 0x00, 0x85, 0x00, 0xbd, 0x00, 0x96, 0x00, 0xe8, 0x00, 0x86, + 0x00, 0x8e, 0x00, 0x8b, 0x00, 0x9d, 0x00, 0xa9, 0x00, 0xa4, 0x00, 0x8a, + 0x00, 0xda, 0x00, 0x83, 0x00, 0x93, 0x01, 0x05, 0x01, 0x06, 0x00, 0x8d, + 0x01, 0x07, 0x00, 0x88, 0x01, 0x08, 0x00, 0xde, 0x01, 0x09, 0x00, 0x9e, + 0x00, 0xaa, 0x00, 0xf5, 0x00, 0xf4, 0x00, 0xf6, 0x00, 0xa2, 0x00, 0xad, + 0x00, 0xc9, 0x00, 0xc7, 0x00, 0xae, 0x00, 0x62, 0x00, 0x63, 0x00, 0x90, + 0x00, 0x64, 0x00, 0xcb, 0x00, 0x65, 0x00, 0xc8, 0x00, 0xca, 0x00, 0xcf, + 0x00, 0xcc, 0x00, 0xcd, 0x00, 0xce, 0x00, 0xe9, 0x00, 0x66, 0x00, 0xd3, + 0x00, 0xd0, 0x00, 0xd1, 0x00, 0xaf, 0x00, 0x67, 0x00, 0xf0, 0x00, 0x91, + 0x00, 0xd6, 0x00, 0xd4, 0x00, 0xd5, 0x00, 0x68, 0x00, 0xeb, 0x00, 0xed, + 0x00, 0x89, 0x00, 0x6a, 0x00, 0x69, 0x00, 0x6b, 0x00, 0x6d, 0x00, 0x6c, + 0x00, 0x6e, 0x00, 0xa0, 0x00, 0x6f, 0x00, 0x71, 0x00, 0x70, 0x00, 0x72, + 0x00, 0x73, 0x00, 0x75, 0x00, 0x74, 0x00, 0x76, 0x00, 0x77, 0x00, 0xea, + 0x00, 0x78, 0x00, 0x7a, 0x00, 0x79, 0x00, 0x7b, 0x00, 0x7d, 0x00, 0x7c, + 0x00, 0xb8, 0x00, 0xa1, 0x00, 0x7f, 0x00, 0x7e, 0x00, 0x80, 0x00, 0x81, + 0x00, 0xec, 0x00, 0xee, 0x00, 0xba, 0x01, 0x0a, 0x01, 0x0b, 0x01, 0x0c, + 0x01, 0x0d, 0x01, 0x0e, 0x01, 0x0f, 0x00, 0xfd, 0x00, 0xfe, 0x01, 0x10, + 0x01, 0x11, 0x01, 0x12, 0x01, 0x13, 0x00, 0xff, 0x01, 0x00, 0x01, 0x14, + 0x01, 0x15, 0x01, 0x16, 0x01, 0x01, 0x01, 0x17, 0x01, 0x18, 0x01, 0x19, + 0x01, 0x1a, 0x01, 0x1b, 0x01, 0x1c, 0x01, 0x1d, 0x01, 0x1e, 0x01, 0x1f, + 0x01, 0x20, 0x01, 0x21, 0x01, 0x22, 0x00, 0xf8, 0x00, 0xf9, 0x01, 0x23, + 0x01, 0x24, 0x01, 0x25, 0x01, 0x26, 0x01, 0x27, 0x01, 0x28, 0x01, 0x29, + 0x01, 0x2a, 0x01, 0x2b, 0x01, 0x2c, 0x01, 0x2d, 0x01, 0x2e, 0x01, 0x2f, + 0x01, 0x30, 0x01, 0x31, 0x01, 0x32, 0x00, 0xfa, 0x00, 0xd7, 0x01, 0x33, + 0x01, 0x34, 0x01, 0x35, 0x01, 0x36, 0x01, 0x37, 0x01, 0x38, 0x01, 0x39, + 0x01, 0x3a, 0x01, 0x3b, 0x01, 0x3c, 0x01, 0x3d, 0x01, 0x3e, 0x01, 0x3f, + 0x01, 0x40, 0x01, 0x41, 0x00, 0xe2, 0x00, 0xe3, 0x01, 0x42, 0x01, 0x43, + 0x01, 0x44, 0x01, 0x45, 0x01, 0x46, 0x01, 0x47, 0x01, 0x48, 0x01, 0x49, + 0x01, 0x4a, 0x01, 0x4b, 0x01, 0x4c, 0x01, 0x4d, 0x01, 0x4e, 0x01, 0x4f, + 0x01, 0x50, 0x00, 0xb0, 0x00, 0xb1, 0x01, 0x51, 0x01, 0x52, 0x01, 0x53, + 0x01, 0x54, 0x01, 0x55, 0x01, 0x56, 0x01, 0x57, 0x01, 0x58, 0x01, 0x59, + 0x01, 0x5a, 0x00, 0xfb, 0x00, 0xfc, 0x00, 0xe4, 0x00, 0xe5, 0x01, 0x5b, + 0x01, 0x5c, 0x01, 0x5d, 0x01, 0x5e, 0x01, 0x5f, 0x01, 0x60, 0x01, 0x61, + 0x01, 0x62, 0x01, 0x63, 0x01, 0x64, 0x01, 0x65, 0x01, 0x66, 0x01, 0x67, + 0x01, 0x68, 0x01, 0x69, 0x01, 0x6a, 0x01, 0x6b, 0x01, 0x6c, 0x01, 0x6d, + 0x01, 0x6e, 0x01, 0x6f, 0x01, 0x70, 0x00, 0xbb, 0x01, 0x71, 0x01, 0x72, + 0x01, 0x73, 0x01, 0x74, 0x00, 0xe6, 0x00, 0xe7, 0x01, 0x75, 0x00, 0xa6, + 0x01, 0x76, 0x01, 0x77, 0x01, 0x78, 0x01, 0x79, 0x01, 0x7a, 0x01, 0x7b, + 0x01, 0x7c, 0x01, 0x7d, 0x01, 0x7e, 0x01, 0x7f, 0x00, 0xd8, 0x00, 0xe1, + 0x01, 0x80, 0x00, 0xdb, 0x00, 0xdc, 0x00, 0xdd, 0x00, 0xe0, 0x00, 0xd9, + 0x00, 0xdf, 0x01, 0x81, 0x01, 0x82, 0x01, 0x83, 0x01, 0x84, 0x01, 0x85, + 0x01, 0x86, 0x01, 0x87, 0x01, 0x88, 0x01, 0x89, 0x01, 0x8a, 0x01, 0x8b, + 0x01, 0x8c, 0x01, 0x8d, 0x01, 0x8e, 0x00, 0xa8, 0x01, 0x8f, 0x01, 0x90, + 0x01, 0x91, 0x01, 0x92, 0x01, 0x93, 0x01, 0x94, 0x01, 0x95, 0x01, 0x96, + 0x01, 0x97, 0x01, 0x98, 0x01, 0x99, 0x01, 0x9a, 0x01, 0x9b, 0x01, 0x9c, + 0x01, 0x9d, 0x01, 0x9e, 0x01, 0x9f, 0x01, 0xa0, 0x01, 0xa1, 0x00, 0x9f, + 0x01, 0xa2, 0x01, 0xa3, 0x01, 0xa4, 0x01, 0xa5, 0x01, 0xa6, 0x01, 0xa7, + 0x01, 0xa8, 0x01, 0xa9, 0x01, 0xaa, 0x01, 0xab, 0x01, 0xac, 0x01, 0xad, + 0x01, 0xae, 0x01, 0xaf, 0x01, 0xb0, 0x01, 0xb1, 0x01, 0xb2, 0x01, 0xb3, + 0x00, 0x97, 0x01, 0xb4, 0x01, 0xb5, 0x01, 0xb6, 0x00, 0x9b, 0x01, 0xb7, + 0x01, 0xb8, 0x01, 0xb9, 0x01, 0xba, 0x01, 0xbb, 0x01, 0xbc, 0x01, 0xbd, + 0x01, 0xbe, 0x01, 0xbf, 0x01, 0xc0, 0x01, 0xc1, 0x01, 0xc2, 0x01, 0xc3, + 0x01, 0xc4, 0x01, 0xc5, 0x01, 0xc6, 0x01, 0xc7, 0x01, 0xc8, 0x01, 0xc9, + 0x01, 0xca, 0x01, 0xcb, 0x01, 0xcc, 0x01, 0xcd, 0x01, 0xce, 0x01, 0xcf, + 0x01, 0xd0, 0x01, 0xd1, 0x01, 0xd2, 0x01, 0xd3, 0x01, 0xd4, 0x01, 0xd5, + 0x01, 0xd6, 0x01, 0xd7, 0x01, 0xd8, 0x01, 0xd9, 0x01, 0xda, 0x01, 0xdb, + 0x01, 0xdc, 0x01, 0xdd, 0x01, 0xde, 0x01, 0xdf, 0x01, 0xe0, 0x01, 0xe1, + 0x01, 0xe2, 0x01, 0xe3, 0x01, 0xe4, 0x01, 0xe5, 0x01, 0xe6, 0x01, 0xe7, + 0x01, 0xe8, 0x01, 0xe9, 0x01, 0xea, 0x01, 0xeb, 0x01, 0xec, 0x01, 0xed, + 0x01, 0xee, 0x01, 0xef, 0x01, 0xf0, 0x01, 0xf1, 0x01, 0xf2, 0x01, 0xf3, + 0x01, 0xf4, 0x01, 0xf5, 0x01, 0xf6, 0x01, 0xf7, 0x01, 0xf8, 0x01, 0xf9, + 0x01, 0xfa, 0x01, 0xfb, 0x01, 0xfc, 0x01, 0xfd, 0x01, 0xfe, 0x01, 0xff, + 0x02, 0x00, 0x02, 0x01, 0x02, 0x02, 0x02, 0x03, 0x02, 0x04, 0x02, 0x05, + 0x02, 0x06, 0x02, 0x07, 0x02, 0x08, 0x02, 0x09, 0x02, 0x0a, 0x02, 0x0b, + 0x02, 0x0c, 0x02, 0x0d, 0x02, 0x0e, 0x02, 0x0f, 0x02, 0x10, 0x02, 0x11, + 0x02, 0x12, 0x02, 0x13, 0x02, 0x14, 0x02, 0x15, 0x02, 0x16, 0x02, 0x17, + 0x02, 0x18, 0x02, 0x19, 0x02, 0x1a, 0x02, 0x1b, 0x02, 0x1c, 0x02, 0x1d, + 0x02, 0x1e, 0x02, 0x1f, 0x02, 0x20, 0x02, 0x21, 0x02, 0x22, 0x02, 0x23, + 0x02, 0x24, 0x02, 0x25, 0x02, 0x26, 0x02, 0x27, 0x02, 0x28, 0x02, 0x29, + 0x02, 0x2a, 0x02, 0x2b, 0x02, 0x2c, 0x02, 0x2d, 0x02, 0x2e, 0x02, 0x2f, + 0x02, 0x30, 0x02, 0x31, 0x02, 0x32, 0x00, 0xb2, 0x00, 0xb3, 0x02, 0x33, + 0x02, 0x34, 0x00, 0xb6, 0x00, 0xb7, 0x00, 0xc4, 0x02, 0x35, 0x00, 0xb4, + 0x00, 0xb5, 0x00, 0xc5, 0x00, 0x82, 0x00, 0xc2, 0x00, 0x87, 0x00, 0xab, + 0x00, 0xc6, 0x02, 0x36, 0x02, 0x37, 0x00, 0xbe, 0x00, 0xbf, 0x02, 0x38, + 0x02, 0x39, 0x02, 0x3a, 0x02, 0x3b, 0x00, 0xf7, 0x02, 0x3c, 0x02, 0x3d, + 0x02, 0x3e, 0x02, 0x3f, 0x02, 0x40, 0x02, 0x41, 0x00, 0x8c, 0x02, 0x42, + 0x02, 0x43, 0x02, 0x44, 0x02, 0x45, 0x02, 0x46, 0x02, 0x47, 0x02, 0x48, + 0x02, 0x49, 0x02, 0x4a, 0x02, 0x4b, 0x02, 0x4c, 0x02, 0x4d, 0x02, 0x4e, + 0x00, 0x98, 0x02, 0x4f, 0x00, 0x9a, 0x00, 0x99, 0x00, 0xef, 0x00, 0xa5, + 0x00, 0x92, 0x02, 0x50, 0x02, 0x51, 0x00, 0x9c, 0x00, 0xa7, 0x00, 0x8f, + 0x02, 0x52, 0x00, 0x94, 0x00, 0x95, 0x02, 0x53, 0x02, 0x54, 0x02, 0x55, + 0x02, 0x56, 0x02, 0x57, 0x02, 0x58, 0x02, 0x59, 0x02, 0x5a, 0x02, 0x5b, + 0x02, 0x5c, 0x02, 0x5d, 0x02, 0x5e, 0x02, 0x5f, 0x02, 0x60, 0x02, 0x61, + 0x02, 0x62, 0x02, 0x63, 0x02, 0x64, 0x02, 0x65, 0x02, 0x66, 0x02, 0x67, + 0x02, 0x68, 0x02, 0x69, 0x02, 0x6a, 0x02, 0x6b, 0x02, 0x6c, 0x02, 0x6d, + 0x02, 0x6e, 0x02, 0x6f, 0x02, 0x70, 0x02, 0x71, 0x02, 0x72, 0x02, 0x73, + 0x02, 0x74, 0x02, 0x75, 0x02, 0x76, 0x02, 0x77, 0x02, 0x78, 0x02, 0x79, + 0x02, 0x7a, 0x02, 0x7b, 0x02, 0x7c, 0x02, 0x7d, 0x02, 0x7e, 0x02, 0x7f, + 0x02, 0x80, 0x02, 0x81, 0x02, 0x82, 0x02, 0x83, 0x02, 0x84, 0x02, 0x85, + 0x02, 0x86, 0x02, 0x87, 0x02, 0x88, 0x02, 0x89, 0x02, 0x8a, 0x02, 0x8b, + 0x02, 0x8c, 0x02, 0x8d, 0x02, 0x8e, 0x02, 0x8f, 0x00, 0xb9, 0x02, 0x90, + 0x02, 0x91, 0x02, 0x92, 0x02, 0x93, 0x02, 0x94, 0x02, 0x95, 0x02, 0x96, + 0x02, 0x97, 0x02, 0x98, 0x02, 0x99, 0x02, 0x9a, 0x02, 0x9b, 0x02, 0x9c, + 0x02, 0x9d, 0x02, 0x9e, 0x02, 0x9f, 0x02, 0xa0, 0x02, 0xa1, 0x02, 0xa2, + 0x02, 0xa3, 0x02, 0xa4, 0x02, 0xa5, 0x02, 0xa6, 0x02, 0xa7, 0x02, 0xa8, + 0x02, 0xa9, 0x02, 0xaa, 0x02, 0xab, 0x02, 0xac, 0x02, 0xad, 0x02, 0xae, + 0x02, 0xaf, 0x02, 0xb0, 0x02, 0xb1, 0x02, 0xb2, 0x02, 0xb3, 0x02, 0xb4, + 0x07, 0x75, 0x6e, 0x69, 0x30, 0x30, 0x41, 0x30, 0x07, 0x75, 0x6e, 0x69, + 0x30, 0x30, 0x41, 0x44, 0x07, 0x75, 0x6e, 0x69, 0x30, 0x33, 0x37, 0x45, + 0x07, 0x75, 0x6e, 0x69, 0x30, 0x30, 0x42, 0x32, 0x07, 0x75, 0x6e, 0x69, + 0x30, 0x30, 0x42, 0x33, 0x07, 0x75, 0x6e, 0x69, 0x30, 0x30, 0x42, 0x35, + 0x07, 0x75, 0x6e, 0x69, 0x32, 0x32, 0x31, 0x39, 0x07, 0x75, 0x6e, 0x69, + 0x30, 0x30, 0x42, 0x39, 0x07, 0x41, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x6e, + 0x07, 0x61, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x06, 0x41, 0x62, 0x72, + 0x65, 0x76, 0x65, 0x06, 0x61, 0x62, 0x72, 0x65, 0x76, 0x65, 0x07, 0x41, + 0x6f, 0x67, 0x6f, 0x6e, 0x65, 0x6b, 0x07, 0x61, 0x6f, 0x67, 0x6f, 0x6e, + 0x65, 0x6b, 0x0b, 0x43, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, + 0x65, 0x78, 0x0b, 0x63, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, + 0x65, 0x78, 0x0a, 0x43, 0x64, 0x6f, 0x74, 0x61, 0x63, 0x63, 0x65, 0x6e, + 0x74, 0x0a, 0x63, 0x64, 0x6f, 0x74, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, + 0x06, 0x44, 0x63, 0x61, 0x72, 0x6f, 0x6e, 0x06, 0x64, 0x63, 0x61, 0x72, + 0x6f, 0x6e, 0x06, 0x44, 0x63, 0x72, 0x6f, 0x61, 0x74, 0x07, 0x45, 0x6d, + 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x07, 0x65, 0x6d, 0x61, 0x63, 0x72, 0x6f, + 0x6e, 0x06, 0x45, 0x62, 0x72, 0x65, 0x76, 0x65, 0x06, 0x65, 0x62, 0x72, + 0x65, 0x76, 0x65, 0x0a, 0x45, 0x64, 0x6f, 0x74, 0x61, 0x63, 0x63, 0x65, + 0x6e, 0x74, 0x0a, 0x65, 0x64, 0x6f, 0x74, 0x61, 0x63, 0x63, 0x65, 0x6e, + 0x74, 0x07, 0x45, 0x6f, 0x67, 0x6f, 0x6e, 0x65, 0x6b, 0x07, 0x65, 0x6f, + 0x67, 0x6f, 0x6e, 0x65, 0x6b, 0x06, 0x45, 0x63, 0x61, 0x72, 0x6f, 0x6e, + 0x06, 0x65, 0x63, 0x61, 0x72, 0x6f, 0x6e, 0x0b, 0x47, 0x63, 0x69, 0x72, + 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x0b, 0x67, 0x63, 0x69, 0x72, + 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x0a, 0x47, 0x64, 0x6f, 0x74, + 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0a, 0x67, 0x64, 0x6f, 0x74, 0x61, + 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0c, 0x47, 0x63, 0x6f, 0x6d, 0x6d, 0x61, + 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0c, 0x67, 0x63, 0x6f, 0x6d, 0x6d, + 0x61, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0b, 0x48, 0x63, 0x69, 0x72, + 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x0b, 0x68, 0x63, 0x69, 0x72, + 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x04, 0x48, 0x62, 0x61, 0x72, + 0x04, 0x68, 0x62, 0x61, 0x72, 0x06, 0x49, 0x74, 0x69, 0x6c, 0x64, 0x65, + 0x06, 0x69, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x07, 0x49, 0x6d, 0x61, 0x63, + 0x72, 0x6f, 0x6e, 0x07, 0x69, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x06, + 0x49, 0x62, 0x72, 0x65, 0x76, 0x65, 0x06, 0x69, 0x62, 0x72, 0x65, 0x76, + 0x65, 0x07, 0x49, 0x6f, 0x67, 0x6f, 0x6e, 0x65, 0x6b, 0x07, 0x69, 0x6f, + 0x67, 0x6f, 0x6e, 0x65, 0x6b, 0x02, 0x49, 0x4a, 0x02, 0x69, 0x6a, 0x0b, + 0x4a, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x0b, + 0x6a, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x0c, + 0x4b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, + 0x0c, 0x6b, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x61, 0x63, 0x63, 0x65, 0x6e, + 0x74, 0x0c, 0x6b, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x6c, 0x61, 0x6e, 0x64, + 0x69, 0x63, 0x06, 0x4c, 0x61, 0x63, 0x75, 0x74, 0x65, 0x06, 0x6c, 0x61, + 0x63, 0x75, 0x74, 0x65, 0x0c, 0x4c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x61, + 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0c, 0x6c, 0x63, 0x6f, 0x6d, 0x6d, 0x61, + 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x06, 0x4c, 0x63, 0x61, 0x72, 0x6f, + 0x6e, 0x06, 0x6c, 0x63, 0x61, 0x72, 0x6f, 0x6e, 0x04, 0x4c, 0x64, 0x6f, + 0x74, 0x04, 0x6c, 0x64, 0x6f, 0x74, 0x06, 0x4e, 0x61, 0x63, 0x75, 0x74, + 0x65, 0x06, 0x6e, 0x61, 0x63, 0x75, 0x74, 0x65, 0x0c, 0x4e, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0c, 0x6e, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x06, 0x4e, + 0x63, 0x61, 0x72, 0x6f, 0x6e, 0x06, 0x6e, 0x63, 0x61, 0x72, 0x6f, 0x6e, + 0x0b, 0x6e, 0x61, 0x70, 0x6f, 0x73, 0x74, 0x72, 0x6f, 0x70, 0x68, 0x65, + 0x03, 0x45, 0x6e, 0x67, 0x03, 0x65, 0x6e, 0x67, 0x07, 0x4f, 0x6d, 0x61, + 0x63, 0x72, 0x6f, 0x6e, 0x07, 0x6f, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x6e, + 0x06, 0x4f, 0x62, 0x72, 0x65, 0x76, 0x65, 0x06, 0x6f, 0x62, 0x72, 0x65, + 0x76, 0x65, 0x0d, 0x4f, 0x68, 0x75, 0x6e, 0x67, 0x61, 0x72, 0x75, 0x6d, + 0x6c, 0x61, 0x75, 0x74, 0x0d, 0x6f, 0x68, 0x75, 0x6e, 0x67, 0x61, 0x72, + 0x75, 0x6d, 0x6c, 0x61, 0x75, 0x74, 0x06, 0x52, 0x61, 0x63, 0x75, 0x74, + 0x65, 0x06, 0x72, 0x61, 0x63, 0x75, 0x74, 0x65, 0x0c, 0x52, 0x63, 0x6f, + 0x6d, 0x6d, 0x61, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0c, 0x72, 0x63, + 0x6f, 0x6d, 0x6d, 0x61, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x06, 0x52, + 0x63, 0x61, 0x72, 0x6f, 0x6e, 0x06, 0x72, 0x63, 0x61, 0x72, 0x6f, 0x6e, + 0x06, 0x53, 0x61, 0x63, 0x75, 0x74, 0x65, 0x06, 0x73, 0x61, 0x63, 0x75, + 0x74, 0x65, 0x0b, 0x53, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, + 0x65, 0x78, 0x0b, 0x73, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, + 0x65, 0x78, 0x0c, 0x54, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x61, 0x63, 0x63, + 0x65, 0x6e, 0x74, 0x0c, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x61, 0x63, + 0x63, 0x65, 0x6e, 0x74, 0x06, 0x54, 0x63, 0x61, 0x72, 0x6f, 0x6e, 0x06, + 0x74, 0x63, 0x61, 0x72, 0x6f, 0x6e, 0x04, 0x54, 0x62, 0x61, 0x72, 0x04, + 0x74, 0x62, 0x61, 0x72, 0x06, 0x55, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x06, + 0x75, 0x74, 0x69, 0x6c, 0x64, 0x65, 0x07, 0x55, 0x6d, 0x61, 0x63, 0x72, + 0x6f, 0x6e, 0x07, 0x75, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x06, 0x55, + 0x62, 0x72, 0x65, 0x76, 0x65, 0x06, 0x75, 0x62, 0x72, 0x65, 0x76, 0x65, + 0x05, 0x55, 0x72, 0x69, 0x6e, 0x67, 0x05, 0x75, 0x72, 0x69, 0x6e, 0x67, + 0x0d, 0x55, 0x68, 0x75, 0x6e, 0x67, 0x61, 0x72, 0x75, 0x6d, 0x6c, 0x61, + 0x75, 0x74, 0x0d, 0x75, 0x68, 0x75, 0x6e, 0x67, 0x61, 0x72, 0x75, 0x6d, + 0x6c, 0x61, 0x75, 0x74, 0x07, 0x55, 0x6f, 0x67, 0x6f, 0x6e, 0x65, 0x6b, + 0x07, 0x75, 0x6f, 0x67, 0x6f, 0x6e, 0x65, 0x6b, 0x0b, 0x57, 0x63, 0x69, + 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x0b, 0x77, 0x63, 0x69, + 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x0b, 0x59, 0x63, 0x69, + 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x0b, 0x79, 0x63, 0x69, + 0x72, 0x63, 0x75, 0x6d, 0x66, 0x6c, 0x65, 0x78, 0x06, 0x5a, 0x61, 0x63, + 0x75, 0x74, 0x65, 0x06, 0x7a, 0x61, 0x63, 0x75, 0x74, 0x65, 0x0a, 0x5a, + 0x64, 0x6f, 0x74, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0a, 0x7a, 0x64, + 0x6f, 0x74, 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x05, 0x6c, 0x6f, 0x6e, + 0x67, 0x73, 0x0a, 0x41, 0x72, 0x69, 0x6e, 0x67, 0x61, 0x63, 0x75, 0x74, + 0x65, 0x0a, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x61, 0x63, 0x75, 0x74, 0x65, + 0x07, 0x41, 0x45, 0x61, 0x63, 0x75, 0x74, 0x65, 0x07, 0x61, 0x65, 0x61, + 0x63, 0x75, 0x74, 0x65, 0x0b, 0x4f, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x61, + 0x63, 0x75, 0x74, 0x65, 0x0b, 0x6f, 0x73, 0x6c, 0x61, 0x73, 0x68, 0x61, + 0x63, 0x75, 0x74, 0x65, 0x0c, 0x53, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x61, + 0x63, 0x63, 0x65, 0x6e, 0x74, 0x0c, 0x73, 0x63, 0x6f, 0x6d, 0x6d, 0x61, + 0x61, 0x63, 0x63, 0x65, 0x6e, 0x74, 0x07, 0x75, 0x6e, 0x69, 0x30, 0x32, + 0x31, 0x41, 0x07, 0x75, 0x6e, 0x69, 0x30, 0x32, 0x31, 0x42, 0x07, 0x75, + 0x6e, 0x69, 0x30, 0x32, 0x43, 0x39, 0x05, 0x74, 0x6f, 0x6e, 0x6f, 0x73, + 0x0d, 0x64, 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x74, 0x6f, 0x6e, + 0x6f, 0x73, 0x0a, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x74, 0x6f, 0x6e, 0x6f, + 0x73, 0x09, 0x61, 0x6e, 0x6f, 0x74, 0x65, 0x6c, 0x65, 0x69, 0x61, 0x0c, + 0x45, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x74, 0x6f, 0x6e, 0x6f, 0x73, + 0x08, 0x45, 0x74, 0x61, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x09, 0x49, 0x6f, + 0x74, 0x61, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x0c, 0x4f, 0x6d, 0x69, 0x63, + 0x72, 0x6f, 0x6e, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x0c, 0x55, 0x70, 0x73, + 0x69, 0x6c, 0x6f, 0x6e, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x0a, 0x4f, 0x6d, + 0x65, 0x67, 0x61, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x11, 0x69, 0x6f, 0x74, + 0x61, 0x64, 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x74, 0x6f, 0x6e, + 0x6f, 0x73, 0x05, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x04, 0x42, 0x65, 0x74, + 0x61, 0x05, 0x47, 0x61, 0x6d, 0x6d, 0x61, 0x07, 0x45, 0x70, 0x73, 0x69, + 0x6c, 0x6f, 0x6e, 0x04, 0x5a, 0x65, 0x74, 0x61, 0x03, 0x45, 0x74, 0x61, + 0x05, 0x54, 0x68, 0x65, 0x74, 0x61, 0x04, 0x49, 0x6f, 0x74, 0x61, 0x05, + 0x4b, 0x61, 0x70, 0x70, 0x61, 0x06, 0x4c, 0x61, 0x6d, 0x62, 0x64, 0x61, + 0x02, 0x4d, 0x75, 0x02, 0x4e, 0x75, 0x02, 0x58, 0x69, 0x07, 0x4f, 0x6d, + 0x69, 0x63, 0x72, 0x6f, 0x6e, 0x02, 0x50, 0x69, 0x03, 0x52, 0x68, 0x6f, + 0x05, 0x53, 0x69, 0x67, 0x6d, 0x61, 0x03, 0x54, 0x61, 0x75, 0x07, 0x55, + 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x03, 0x50, 0x68, 0x69, 0x03, 0x43, + 0x68, 0x69, 0x03, 0x50, 0x73, 0x69, 0x0c, 0x49, 0x6f, 0x74, 0x61, 0x64, + 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x0f, 0x55, 0x70, 0x73, 0x69, + 0x6c, 0x6f, 0x6e, 0x64, 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x0a, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x0c, 0x65, + 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x08, + 0x65, 0x74, 0x61, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x09, 0x69, 0x6f, 0x74, + 0x61, 0x74, 0x6f, 0x6e, 0x6f, 0x73, 0x14, 0x75, 0x70, 0x73, 0x69, 0x6c, + 0x6f, 0x6e, 0x64, 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x74, 0x6f, + 0x6e, 0x6f, 0x73, 0x05, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x04, 0x62, 0x65, + 0x74, 0x61, 0x05, 0x67, 0x61, 0x6d, 0x6d, 0x61, 0x05, 0x64, 0x65, 0x6c, + 0x74, 0x61, 0x07, 0x65, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x04, 0x7a, + 0x65, 0x74, 0x61, 0x03, 0x65, 0x74, 0x61, 0x05, 0x74, 0x68, 0x65, 0x74, + 0x61, 0x04, 0x69, 0x6f, 0x74, 0x61, 0x05, 0x6b, 0x61, 0x70, 0x70, 0x61, + 0x06, 0x6c, 0x61, 0x6d, 0x62, 0x64, 0x61, 0x02, 0x6e, 0x75, 0x02, 0x78, + 0x69, 0x07, 0x6f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x6e, 0x03, 0x72, 0x68, + 0x6f, 0x06, 0x73, 0x69, 0x67, 0x6d, 0x61, 0x31, 0x05, 0x73, 0x69, 0x67, + 0x6d, 0x61, 0x03, 0x74, 0x61, 0x75, 0x07, 0x75, 0x70, 0x73, 0x69, 0x6c, + 0x6f, 0x6e, 0x03, 0x70, 0x68, 0x69, 0x03, 0x63, 0x68, 0x69, 0x03, 0x70, + 0x73, 0x69, 0x05, 0x6f, 0x6d, 0x65, 0x67, 0x61, 0x0c, 0x69, 0x6f, 0x74, + 0x61, 0x64, 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x0f, 0x75, 0x70, + 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x64, 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, + 0x73, 0x0c, 0x6f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x6e, 0x74, 0x6f, 0x6e, + 0x6f, 0x73, 0x0c, 0x75, 0x70, 0x73, 0x69, 0x6c, 0x6f, 0x6e, 0x74, 0x6f, + 0x6e, 0x6f, 0x73, 0x0a, 0x6f, 0x6d, 0x65, 0x67, 0x61, 0x74, 0x6f, 0x6e, + 0x6f, 0x73, 0x07, 0x75, 0x6e, 0x69, 0x30, 0x34, 0x30, 0x30, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x32, 0x33, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x35, 0x31, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x35, 0x32, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x35, 0x33, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x35, 0x34, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x35, 0x35, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x35, 0x36, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x35, 0x37, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x35, 0x38, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x35, 0x39, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x36, 0x30, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x36, 0x31, 0x07, 0x75, + 0x6e, 0x69, 0x30, 0x34, 0x30, 0x44, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x36, 0x32, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, + 0x34, 0x35, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x31, 0x37, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x31, 0x38, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x31, 0x39, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x32, 0x30, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x32, 0x31, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x32, 0x32, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x32, 0x34, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x32, 0x35, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x32, 0x36, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x32, 0x37, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x32, 0x38, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x32, 0x39, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x33, 0x30, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x33, 0x31, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x33, 0x32, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x33, 0x33, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x33, 0x34, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x33, 0x35, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x33, 0x36, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x33, 0x37, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x33, 0x38, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x33, 0x39, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x34, 0x30, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x34, 0x31, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x34, 0x32, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x34, 0x33, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x34, 0x34, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x34, 0x35, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x34, 0x36, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x34, 0x37, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x34, 0x38, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x34, 0x39, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x36, 0x35, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x36, 0x36, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x36, 0x37, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x36, 0x38, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x36, 0x39, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x37, 0x30, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x37, 0x32, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x37, 0x33, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x37, 0x34, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x37, 0x35, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x37, 0x36, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x37, 0x37, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x37, 0x38, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x37, 0x39, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x38, 0x30, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x38, 0x31, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x38, 0x32, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x38, 0x33, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x38, 0x34, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x38, 0x35, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x38, 0x36, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x38, 0x37, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x38, 0x38, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x38, 0x39, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x39, 0x30, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x39, 0x31, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x30, 0x39, 0x32, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, + 0x39, 0x33, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x39, 0x34, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x39, 0x35, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x39, 0x36, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x30, 0x39, 0x37, 0x07, 0x75, 0x6e, 0x69, 0x30, 0x34, + 0x35, 0x30, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x37, 0x31, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x39, 0x39, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, 0x30, 0x30, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x31, 0x30, 0x31, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x31, 0x30, 0x32, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, + 0x30, 0x33, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, 0x30, 0x34, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, 0x30, 0x35, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, 0x30, 0x36, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x31, 0x30, 0x37, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x31, 0x30, 0x38, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, + 0x30, 0x39, 0x07, 0x75, 0x6e, 0x69, 0x30, 0x34, 0x35, 0x44, 0x09, 0x61, + 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, 0x31, 0x30, 0x09, 0x61, 0x66, 0x69, + 0x69, 0x31, 0x30, 0x31, 0x39, 0x33, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, + 0x30, 0x31, 0x34, 0x37, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x31, + 0x39, 0x35, 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x35, 0x30, + 0x09, 0x61, 0x66, 0x69, 0x69, 0x31, 0x30, 0x30, 0x39, 0x38, 0x06, 0x57, + 0x67, 0x72, 0x61, 0x76, 0x65, 0x06, 0x77, 0x67, 0x72, 0x61, 0x76, 0x65, + 0x06, 0x57, 0x61, 0x63, 0x75, 0x74, 0x65, 0x06, 0x77, 0x61, 0x63, 0x75, + 0x74, 0x65, 0x09, 0x57, 0x64, 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, + 0x09, 0x77, 0x64, 0x69, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x06, 0x59, + 0x67, 0x72, 0x61, 0x76, 0x65, 0x06, 0x79, 0x67, 0x72, 0x61, 0x76, 0x65, + 0x07, 0x75, 0x6e, 0x69, 0x32, 0x30, 0x31, 0x30, 0x07, 0x75, 0x6e, 0x69, + 0x32, 0x30, 0x31, 0x31, 0x09, 0x61, 0x66, 0x69, 0x69, 0x30, 0x30, 0x32, + 0x30, 0x38, 0x0d, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x63, 0x6f, 0x72, + 0x65, 0x64, 0x62, 0x6c, 0x0d, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x72, 0x65, + 0x76, 0x65, 0x72, 0x73, 0x65, 0x64, 0x06, 0x6d, 0x69, 0x6e, 0x75, 0x74, + 0x65, 0x06, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x09, 0x65, 0x78, 0x63, + 0x6c, 0x61, 0x6d, 0x64, 0x62, 0x6c, 0x07, 0x75, 0x6e, 0x69, 0x32, 0x30, + 0x33, 0x45, 0x07, 0x75, 0x6e, 0x69, 0x32, 0x32, 0x31, 0x35, 0x07, 0x75, + 0x6e, 0x69, 0x32, 0x30, 0x37, 0x46, 0x04, 0x6c, 0x69, 0x72, 0x61, 0x06, + 0x70, 0x65, 0x73, 0x65, 0x74, 0x61, 0x04, 0x45, 0x75, 0x72, 0x6f, 0x09, + 0x61, 0x66, 0x69, 0x69, 0x36, 0x31, 0x32, 0x34, 0x38, 0x09, 0x61, 0x66, + 0x69, 0x69, 0x36, 0x31, 0x32, 0x38, 0x39, 0x09, 0x61, 0x66, 0x69, 0x69, + 0x36, 0x31, 0x33, 0x35, 0x32, 0x07, 0x75, 0x6e, 0x69, 0x32, 0x31, 0x32, + 0x36, 0x09, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x09, + 0x6f, 0x6e, 0x65, 0x65, 0x69, 0x67, 0x68, 0x74, 0x68, 0x0c, 0x74, 0x68, + 0x72, 0x65, 0x65, 0x65, 0x69, 0x67, 0x68, 0x74, 0x68, 0x73, 0x0b, 0x66, + 0x69, 0x76, 0x65, 0x65, 0x69, 0x67, 0x68, 0x74, 0x68, 0x73, 0x0c, 0x73, + 0x65, 0x76, 0x65, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x74, 0x68, 0x73, 0x09, + 0x61, 0x72, 0x72, 0x6f, 0x77, 0x6c, 0x65, 0x66, 0x74, 0x07, 0x61, 0x72, + 0x72, 0x6f, 0x77, 0x75, 0x70, 0x0a, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x72, + 0x69, 0x67, 0x68, 0x74, 0x09, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x64, 0x6f, + 0x77, 0x6e, 0x09, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x62, 0x6f, 0x74, 0x68, + 0x09, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x75, 0x70, 0x64, 0x6e, 0x0c, 0x61, + 0x72, 0x72, 0x6f, 0x77, 0x75, 0x70, 0x64, 0x6e, 0x62, 0x73, 0x65, 0x07, + 0x75, 0x6e, 0x69, 0x32, 0x32, 0x30, 0x36, 0x0a, 0x6f, 0x72, 0x74, 0x68, + 0x6f, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x72, + 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x0b, 0x65, 0x71, 0x75, 0x69, + 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x05, 0x68, 0x6f, 0x75, 0x73, + 0x65, 0x0d, 0x72, 0x65, 0x76, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, + 0x6e, 0x6f, 0x74, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, + 0x74, 0x70, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x6c, 0x62, + 0x74, 0x08, 0x53, 0x46, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x31, 0x31, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x30, 0x31, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x30, 0x33, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x30, 0x32, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x30, 0x34, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x30, 0x38, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x30, 0x39, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x30, 0x36, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x30, 0x37, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x30, 0x35, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x34, 0x33, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x32, 0x34, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x35, 0x31, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x35, 0x32, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x33, 0x39, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x32, 0x32, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x32, 0x31, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x32, 0x35, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x35, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x34, 0x39, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x33, 0x38, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x32, 0x38, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x32, 0x37, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x32, 0x36, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x33, 0x36, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x33, 0x37, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x34, 0x32, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x31, 0x39, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x32, 0x30, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x32, 0x33, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x34, 0x37, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x34, 0x38, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x34, 0x31, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x34, 0x35, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x34, 0x36, 0x30, 0x30, 0x30, + 0x30, 0x08, 0x53, 0x46, 0x34, 0x30, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, + 0x46, 0x35, 0x34, 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x35, 0x33, + 0x30, 0x30, 0x30, 0x30, 0x08, 0x53, 0x46, 0x34, 0x34, 0x30, 0x30, 0x30, + 0x30, 0x07, 0x75, 0x70, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x07, 0x64, 0x6e, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x07, + 0x6c, 0x66, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x07, 0x72, 0x74, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x07, 0x6c, 0x74, 0x73, 0x68, 0x61, 0x64, 0x65, 0x05, + 0x73, 0x68, 0x61, 0x64, 0x65, 0x07, 0x64, 0x6b, 0x73, 0x68, 0x61, 0x64, + 0x65, 0x09, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x62, 0x6f, 0x78, 0x06, + 0x48, 0x32, 0x32, 0x30, 0x37, 0x33, 0x06, 0x48, 0x31, 0x38, 0x35, 0x34, + 0x33, 0x06, 0x48, 0x31, 0x38, 0x35, 0x35, 0x31, 0x0a, 0x66, 0x69, 0x6c, + 0x6c, 0x65, 0x64, 0x72, 0x65, 0x63, 0x74, 0x07, 0x74, 0x72, 0x69, 0x61, + 0x67, 0x75, 0x70, 0x07, 0x74, 0x72, 0x69, 0x61, 0x67, 0x72, 0x74, 0x07, + 0x74, 0x72, 0x69, 0x61, 0x67, 0x64, 0x6e, 0x07, 0x74, 0x72, 0x69, 0x61, + 0x67, 0x6c, 0x66, 0x06, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x06, 0x48, + 0x31, 0x38, 0x35, 0x33, 0x33, 0x09, 0x69, 0x6e, 0x76, 0x62, 0x75, 0x6c, + 0x6c, 0x65, 0x74, 0x09, 0x69, 0x6e, 0x76, 0x63, 0x69, 0x72, 0x63, 0x6c, + 0x65, 0x0a, 0x6f, 0x70, 0x65, 0x6e, 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, + 0x09, 0x73, 0x6d, 0x69, 0x6c, 0x65, 0x66, 0x61, 0x63, 0x65, 0x0c, 0x69, + 0x6e, 0x76, 0x73, 0x6d, 0x69, 0x6c, 0x65, 0x66, 0x61, 0x63, 0x65, 0x03, + 0x73, 0x75, 0x6e, 0x06, 0x66, 0x65, 0x6d, 0x61, 0x6c, 0x65, 0x04, 0x6d, + 0x61, 0x6c, 0x65, 0x05, 0x73, 0x70, 0x61, 0x64, 0x65, 0x04, 0x63, 0x6c, + 0x75, 0x62, 0x05, 0x68, 0x65, 0x61, 0x72, 0x74, 0x07, 0x64, 0x69, 0x61, + 0x6d, 0x6f, 0x6e, 0x64, 0x0b, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x61, 0x6c, + 0x6e, 0x6f, 0x74, 0x65, 0x0e, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x61, 0x6c, + 0x6e, 0x6f, 0x74, 0x65, 0x64, 0x62, 0x6c, 0x07, 0x75, 0x6e, 0x69, 0x32, + 0x36, 0x36, 0x43, 0x07, 0x75, 0x6e, 0x69, 0x46, 0x42, 0x30, 0x31, 0x07, + 0x75, 0x6e, 0x69, 0x46, 0x42, 0x30, 0x32, 0x07, 0x75, 0x6e, 0x69, 0x46, + 0x30, 0x30, 0x35, 0x06, 0x6d, 0x69, 0x64, 0x64, 0x6f, 0x74, 0x07, 0x75, + 0x6e, 0x69, 0x46, 0x30, 0x30, 0x34, 0x07, 0x75, 0x6e, 0x69, 0x32, 0x30, + 0x37, 0x34, 0x07, 0x75, 0x6e, 0x69, 0x32, 0x30, 0x37, 0x35, 0x07, 0x75, + 0x6e, 0x69, 0x32, 0x30, 0x37, 0x37, 0x07, 0x75, 0x6e, 0x69, 0x32, 0x30, + 0x37, 0x38, 0x08, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x35, 0x37, 0x31, 0x08, + 0x67, 0x6c, 0x79, 0x70, 0x68, 0x35, 0x37, 0x32, 0x08, 0x67, 0x6c, 0x79, + 0x70, 0x68, 0x35, 0x37, 0x33, 0x08, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x35, + 0x37, 0x34, 0x08, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x35, 0x37, 0x35, 0x08, + 0x67, 0x6c, 0x79, 0x70, 0x68, 0x35, 0x37, 0x36, 0x08, 0x67, 0x6c, 0x79, + 0x70, 0x68, 0x35, 0x37, 0x37, 0x08, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x35, + 0x37, 0x38, 0x08, 0x67, 0x6c, 0x79, 0x70, 0x68, 0x35, 0x37, 0x39, 0x08, + 0x67, 0x6c, 0x79, 0x70, 0x68, 0x35, 0x38, 0x30, 0x08, 0x67, 0x6c, 0x79, + 0x70, 0x68, 0x35, 0x38, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, + 0x00, 0x08, 0x00, 0x02, 0x00, 0x11, 0x00, 0x01, 0xff, 0xff, 0x00, 0x03, + 0x00, 0x01, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x16, 0x00, 0x1e, + 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x02, 0xa8, 0x00, 0x01, 0x00, 0x04, + 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x4c, + 0x00, 0x4e, 0x00, 0x04, 0x44, 0x46, 0x4c, 0x54, 0x00, 0x1a, 0x63, 0x79, + 0x72, 0x6c, 0x00, 0x24, 0x67, 0x72, 0x65, 0x6b, 0x00, 0x2e, 0x6c, 0x61, + 0x74, 0x6e, 0x00, 0x38, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x04, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x60, 0x00, 0x6e, 0x00, 0x04, + 0x44, 0x46, 0x4c, 0x54, 0x00, 0x1a, 0x63, 0x79, 0x72, 0x6c, 0x00, 0x26, + 0x67, 0x72, 0x65, 0x6b, 0x00, 0x3e, 0x6c, 0x61, 0x74, 0x6e, 0x00, 0x4a, + 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x10, 0x00, 0x02, 0x4d, 0x4b, 0x44, 0x20, 0x00, 0x10, 0x53, 0x52, + 0x42, 0x20, 0x00, 0x10, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x01, 0x6b, 0x65, 0x72, 0x6e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, + 0x00, 0x08, 0x00, 0x01, 0x0f, 0x68, 0x00, 0x04, 0x00, 0x00, 0x00, 0x68, + 0x00, 0xda, 0x01, 0x04, 0x01, 0x2a, 0x01, 0x38, 0x01, 0x56, 0x01, 0x68, + 0x01, 0x7a, 0x01, 0xc4, 0x01, 0xfa, 0x02, 0x2c, 0x02, 0x6a, 0x02, 0x74, + 0x02, 0x82, 0x02, 0x8c, 0x02, 0x82, 0x02, 0x96, 0x02, 0xbc, 0x02, 0xc2, + 0x03, 0x14, 0x03, 0x1e, 0x03, 0x4c, 0x03, 0x6e, 0x03, 0x88, 0x03, 0x9e, + 0x03, 0xdc, 0x03, 0xf6, 0x04, 0x0c, 0x04, 0x26, 0x04, 0x30, 0x04, 0xb6, + 0x05, 0x24, 0x05, 0x32, 0x03, 0x14, 0x05, 0x5c, 0x05, 0xb2, 0x05, 0xc4, + 0x06, 0x0e, 0x06, 0x14, 0x06, 0x4a, 0x06, 0x80, 0x05, 0xb2, 0x06, 0xaa, + 0x06, 0xd0, 0x06, 0xde, 0x05, 0xb2, 0x07, 0x08, 0x05, 0xb2, 0x05, 0xb2, + 0x05, 0xb2, 0x07, 0x36, 0x07, 0x4c, 0x07, 0x52, 0x07, 0x58, 0x07, 0x9e, + 0x07, 0xd8, 0x08, 0x2e, 0x08, 0xa0, 0x08, 0xba, 0x08, 0xc4, 0x08, 0xee, + 0x09, 0x10, 0x09, 0x26, 0x09, 0x34, 0x09, 0x5a, 0x09, 0x88, 0x09, 0xea, + 0x0a, 0x28, 0x0a, 0xa6, 0x0b, 0x40, 0x0b, 0x62, 0x0b, 0x80, 0x0b, 0x8a, + 0x0b, 0x94, 0x0b, 0x9e, 0x0b, 0xd8, 0x0c, 0x06, 0x0c, 0x38, 0x0c, 0x4a, + 0x0c, 0x88, 0x0c, 0xca, 0x0c, 0xf4, 0x0c, 0xfe, 0x0d, 0x24, 0x0d, 0x36, + 0x0d, 0x64, 0x0d, 0x8e, 0x0d, 0x98, 0x0d, 0xa6, 0x0d, 0xc8, 0x0d, 0xea, + 0x0d, 0xfc, 0x0e, 0x26, 0x0e, 0x68, 0x0e, 0x86, 0x0e, 0xac, 0x0e, 0xbe, + 0x0e, 0xcc, 0x0e, 0xd6, 0x0e, 0xf8, 0x0f, 0x16, 0x0f, 0x20, 0x0f, 0x3e, + 0x0f, 0x44, 0x0f, 0x52, 0x00, 0x0a, 0x00, 0x24, 0xff, 0x8f, 0x00, 0x37, + 0xff, 0xdb, 0x00, 0x3c, 0xff, 0xdb, 0x01, 0x56, 0xff, 0x8f, 0x01, 0x5f, + 0xff, 0x8f, 0x01, 0x62, 0xff, 0x8f, 0x01, 0x69, 0xff, 0x8f, 0x01, 0x71, + 0xff, 0xdb, 0x01, 0x72, 0xff, 0xdb, 0x01, 0x78, 0xff, 0xdb, 0x00, 0x09, + 0x00, 0x03, 0xff, 0x8f, 0x00, 0x37, 0xff, 0x68, 0x00, 0x39, 0xff, 0x68, + 0x00, 0x3a, 0xff, 0xb4, 0x00, 0x3c, 0xff, 0x68, 0x00, 0x59, 0xff, 0xdb, + 0x00, 0x5a, 0xff, 0xdb, 0x00, 0x5c, 0xff, 0xdb, 0x02, 0x0f, 0xff, 0x68, + 0x00, 0x03, 0x00, 0x0f, 0xff, 0x1d, 0x00, 0x11, 0xff, 0x1d, 0x00, 0x24, + 0xff, 0x8f, 0x00, 0x07, 0x00, 0x03, 0xff, 0xb4, 0x00, 0x37, 0xff, 0x68, + 0x00, 0x39, 0xff, 0x68, 0x00, 0x3a, 0xff, 0x68, 0x00, 0x3c, 0xff, 0x68, + 0x00, 0x5c, 0xff, 0xb4, 0x02, 0x0f, 0xff, 0x8f, 0x00, 0x04, 0x00, 0x03, + 0xff, 0xdb, 0x00, 0x0f, 0xfe, 0xf8, 0x00, 0x11, 0xfe, 0xf8, 0x00, 0x24, + 0xff, 0x68, 0x00, 0x04, 0x00, 0x37, 0xff, 0xdb, 0x00, 0x39, 0xff, 0xdb, + 0x00, 0x3a, 0xff, 0xdb, 0x00, 0x3c, 0xff, 0xdb, 0x00, 0x12, 0x00, 0x03, + 0xff, 0xdb, 0x00, 0x0f, 0xff, 0x1d, 0x00, 0x10, 0xff, 0x8f, 0x00, 0x11, + 0xff, 0x1d, 0x00, 0x1d, 0xff, 0x1d, 0x00, 0x1e, 0xff, 0x1d, 0x00, 0x24, + 0xff, 0x68, 0x00, 0x32, 0xff, 0xdb, 0x00, 0x44, 0xff, 0x1d, 0x00, 0x46, + 0xff, 0x1d, 0x00, 0x48, 0xff, 0x1d, 0x00, 0x4c, 0xff, 0xb4, 0x00, 0x52, + 0xff, 0x1d, 0x00, 0x55, 0xff, 0xb4, 0x00, 0x56, 0xff, 0x1d, 0x00, 0x58, + 0xff, 0xb4, 0x00, 0x5a, 0xff, 0x8f, 0x00, 0x5c, 0xff, 0x8f, 0x00, 0x0d, + 0x00, 0x0f, 0xff, 0x44, 0x00, 0x10, 0xff, 0x8f, 0x00, 0x11, 0xff, 0x44, + 0x00, 0x1d, 0xff, 0xb4, 0x00, 0x1e, 0xff, 0xb4, 0x00, 0x24, 0xff, 0x68, + 0x00, 0x44, 0xff, 0x68, 0x00, 0x48, 0xff, 0x8f, 0x00, 0x4c, 0xff, 0xdb, + 0x00, 0x52, 0xff, 0x8f, 0x00, 0x55, 0xff, 0xb4, 0x00, 0x58, 0xff, 0xb4, + 0x00, 0x5c, 0xff, 0xb4, 0x00, 0x0c, 0x00, 0x0f, 0xff, 0x8f, 0x00, 0x10, + 0xff, 0xdb, 0x00, 0x11, 0xff, 0x8f, 0x00, 0x1d, 0xff, 0xdb, 0x00, 0x1e, + 0xff, 0xdb, 0x00, 0x24, 0xff, 0xb4, 0x00, 0x44, 0xff, 0xb4, 0x00, 0x48, + 0xff, 0xdb, 0x00, 0x52, 0xff, 0xdb, 0x00, 0x55, 0xff, 0xdb, 0x00, 0x58, + 0xff, 0xdb, 0x00, 0x5c, 0xff, 0xee, 0x00, 0x0f, 0x00, 0x03, 0xff, 0xdb, + 0x00, 0x0f, 0xfe, 0xf8, 0x00, 0x10, 0xff, 0x44, 0x00, 0x11, 0xfe, 0xf8, + 0x00, 0x1d, 0xff, 0x8f, 0x00, 0x1e, 0xff, 0x7b, 0x00, 0x24, 0xff, 0x68, + 0x00, 0x44, 0xff, 0x68, 0x00, 0x48, 0xff, 0x44, 0x00, 0x4c, 0xff, 0xb4, + 0x00, 0x52, 0xff, 0x44, 0x00, 0x53, 0xff, 0x68, 0x00, 0x54, 0xff, 0x44, + 0x00, 0x58, 0xff, 0x8f, 0x00, 0x59, 0xff, 0x8f, 0x00, 0x02, 0x00, 0x49, + 0xff, 0xdb, 0x02, 0x0f, 0x00, 0x25, 0x00, 0x03, 0x00, 0x0f, 0xff, 0x8f, + 0x00, 0x11, 0xff, 0x8f, 0x02, 0x0f, 0x00, 0x4c, 0x00, 0x02, 0x00, 0x0f, + 0xff, 0x68, 0x00, 0x11, 0xff, 0x68, 0x00, 0x02, 0x00, 0x0f, 0xff, 0x8f, + 0x00, 0x11, 0xff, 0x8f, 0x00, 0x09, 0x01, 0x66, 0xff, 0xd5, 0x01, 0x6d, + 0xff, 0xd5, 0x01, 0x71, 0xff, 0x68, 0x01, 0x72, 0xff, 0x68, 0x01, 0x73, + 0xff, 0xc5, 0x01, 0x78, 0xff, 0x68, 0x01, 0x80, 0xff, 0xdb, 0x01, 0x8a, + 0xff, 0xdb, 0x01, 0x94, 0xff, 0xdb, 0x00, 0x01, 0x01, 0x72, 0xff, 0xbe, + 0x00, 0x14, 0x01, 0x5e, 0x00, 0xaa, 0x01, 0x5f, 0xff, 0x68, 0x01, 0x62, + 0xff, 0x68, 0x01, 0x66, 0xff, 0x8d, 0x01, 0x69, 0xff, 0x68, 0x01, 0x6d, + 0xff, 0x8d, 0x01, 0x73, 0xff, 0x8d, 0x01, 0x76, 0xff, 0x9e, 0x01, 0x7b, + 0xff, 0x68, 0x01, 0x7c, 0xff, 0xb4, 0x01, 0x7e, 0xff, 0x46, 0x01, 0x84, + 0xff, 0x68, 0x01, 0x86, 0xff, 0xb4, 0x01, 0x87, 0xff, 0x68, 0x01, 0x89, + 0xff, 0x68, 0x01, 0x8c, 0xff, 0x46, 0x01, 0x90, 0xff, 0x46, 0x01, 0x93, + 0xff, 0x46, 0x01, 0x97, 0x00, 0x62, 0x01, 0x99, 0xff, 0x46, 0x00, 0x02, + 0x01, 0x72, 0xff, 0xd1, 0x01, 0x78, 0xff, 0xd1, 0x00, 0x0b, 0x00, 0x03, + 0xff, 0x8f, 0x01, 0x66, 0xff, 0xd5, 0x01, 0x6d, 0xff, 0xd5, 0x01, 0x71, + 0xff, 0x68, 0x01, 0x72, 0xff, 0x68, 0x01, 0x73, 0xff, 0xc5, 0x01, 0x78, + 0xff, 0x68, 0x01, 0x80, 0xff, 0xdb, 0x01, 0x8a, 0xff, 0xdb, 0x01, 0x94, + 0xff, 0xdb, 0x02, 0x0f, 0xff, 0x68, 0x00, 0x08, 0x00, 0x0f, 0xff, 0x1f, + 0x00, 0x11, 0xff, 0x1f, 0x01, 0x5e, 0x00, 0xa4, 0x01, 0x5f, 0xff, 0x44, + 0x01, 0x62, 0xff, 0x44, 0x01, 0x69, 0xff, 0x44, 0x01, 0x86, 0xff, 0xa8, + 0x01, 0x97, 0x00, 0x58, 0x00, 0x06, 0x00, 0x03, 0xff, 0x8f, 0x01, 0x66, + 0xff, 0xd5, 0x01, 0x6d, 0xff, 0xd5, 0x01, 0x71, 0xff, 0x89, 0x01, 0x72, + 0xff, 0x68, 0x01, 0x78, 0xff, 0x68, 0x00, 0x05, 0x01, 0x5f, 0xff, 0xdb, + 0x01, 0x62, 0xff, 0xdb, 0x01, 0x69, 0xff, 0xdb, 0x01, 0x72, 0xff, 0xbe, + 0x01, 0x78, 0xff, 0xbe, 0x00, 0x0f, 0x01, 0x66, 0xff, 0xc1, 0x01, 0x6d, + 0xff, 0xc1, 0x01, 0x73, 0xff, 0x8f, 0x01, 0x79, 0xff, 0xe7, 0x01, 0x7e, + 0xff, 0xe7, 0x01, 0x81, 0xff, 0xe7, 0x01, 0x83, 0xff, 0xe7, 0x01, 0x85, + 0xff, 0xe7, 0x01, 0x8b, 0xff, 0xe7, 0x01, 0x8c, 0xff, 0xe7, 0x01, 0x90, + 0xff, 0xe7, 0x01, 0x93, 0xff, 0xe7, 0x01, 0x96, 0xff, 0xe7, 0x01, 0x99, + 0xff, 0xe7, 0x01, 0x9b, 0xff, 0xe7, 0x00, 0x06, 0x00, 0x03, 0xff, 0x8f, + 0x01, 0x66, 0xff, 0xd5, 0x01, 0x6d, 0xff, 0xd5, 0x01, 0x71, 0xff, 0x68, + 0x01, 0x72, 0xff, 0x68, 0x01, 0x78, 0xff, 0x68, 0x00, 0x05, 0x01, 0x5f, + 0xff, 0xdb, 0x01, 0x62, 0xff, 0xd5, 0x01, 0x69, 0xff, 0xdb, 0x01, 0x72, + 0xff, 0xbe, 0x01, 0x78, 0xff, 0xbe, 0x00, 0x06, 0x00, 0x03, 0xff, 0xdb, + 0x00, 0x0f, 0xfe, 0xfa, 0x00, 0x11, 0xfe, 0xfa, 0x01, 0x5f, 0xff, 0x68, + 0x01, 0x62, 0xff, 0x68, 0x01, 0x69, 0xff, 0x68, 0x00, 0x02, 0x01, 0x8d, + 0xff, 0x9e, 0x01, 0x91, 0xff, 0x9e, 0x00, 0x21, 0x00, 0x03, 0xff, 0xdb, + 0x00, 0x0f, 0xff, 0x1f, 0x00, 0x11, 0xff, 0x1f, 0x00, 0x1d, 0xff, 0x1f, + 0x00, 0x1e, 0xff, 0x1f, 0x01, 0x5e, 0x00, 0xbc, 0x01, 0x5f, 0xff, 0x68, + 0x01, 0x62, 0xff, 0x68, 0x01, 0x66, 0xff, 0xdb, 0x01, 0x69, 0xff, 0x68, + 0x01, 0x6d, 0xff, 0xdb, 0x01, 0x73, 0xff, 0xdb, 0x01, 0x76, 0xff, 0xdb, + 0x01, 0x79, 0xff, 0x1f, 0x01, 0x7a, 0xff, 0x1f, 0x01, 0x7d, 0xff, 0x4e, + 0x01, 0x7e, 0xff, 0x1f, 0x01, 0x80, 0xff, 0x4e, 0x01, 0x82, 0xff, 0x1f, + 0x01, 0x84, 0xff, 0x6a, 0x01, 0x86, 0xff, 0xb4, 0x01, 0x89, 0xff, 0x6a, + 0x01, 0x8a, 0xff, 0x8f, 0x01, 0x8c, 0xff, 0x1f, 0x01, 0x90, 0xff, 0x1f, + 0x01, 0x92, 0xff, 0x50, 0x01, 0x93, 0xff, 0x1f, 0x01, 0x94, 0xff, 0x8f, + 0x01, 0x95, 0xff, 0x6a, 0x01, 0x97, 0x00, 0xbc, 0x01, 0x98, 0xff, 0x4e, + 0x01, 0x99, 0xff, 0x1f, 0x01, 0x9a, 0xff, 0x4e, 0x00, 0x1b, 0x00, 0x03, + 0xff, 0xdb, 0x00, 0x0f, 0xfe, 0xfa, 0x00, 0x10, 0xff, 0x46, 0x00, 0x11, + 0xfe, 0xfa, 0x00, 0x1d, 0xff, 0x8f, 0x00, 0x1e, 0xff, 0x8f, 0x01, 0x5e, + 0x00, 0xbc, 0x01, 0x5f, 0xff, 0x68, 0x01, 0x62, 0xff, 0x68, 0x01, 0x66, + 0xff, 0x8d, 0x01, 0x69, 0xff, 0x68, 0x01, 0x6d, 0xff, 0x8d, 0x01, 0x73, + 0xff, 0x8d, 0x01, 0x76, 0xff, 0x9e, 0x01, 0x7b, 0xff, 0x68, 0x01, 0x7c, + 0xff, 0xb4, 0x01, 0x7e, 0xff, 0x46, 0x01, 0x80, 0xff, 0x9e, 0x01, 0x84, + 0xff, 0x68, 0x01, 0x86, 0xff, 0xb4, 0x01, 0x87, 0xff, 0x68, 0x01, 0x89, + 0xff, 0x68, 0x01, 0x8c, 0xff, 0x46, 0x01, 0x90, 0xff, 0x46, 0x01, 0x93, + 0xff, 0x46, 0x01, 0x97, 0x00, 0x79, 0x01, 0x99, 0xff, 0x46, 0x00, 0x03, + 0x01, 0x5f, 0xff, 0xc5, 0x01, 0x72, 0xff, 0xbe, 0x01, 0x78, 0xff, 0xbe, + 0x00, 0x0a, 0x01, 0x79, 0xff, 0xb2, 0x01, 0x7e, 0xff, 0xb2, 0x01, 0x81, + 0xff, 0xb2, 0x01, 0x85, 0xff, 0xd9, 0x01, 0x8c, 0xff, 0xb2, 0x01, 0x90, + 0xff, 0xb2, 0x01, 0x93, 0xff, 0xb2, 0x01, 0x96, 0xff, 0xb2, 0x01, 0x99, + 0xff, 0xb2, 0x01, 0x9b, 0xff, 0xb2, 0x00, 0x15, 0x00, 0x03, 0xff, 0xdb, + 0x01, 0x5e, 0x00, 0xaa, 0x01, 0x5f, 0xff, 0x68, 0x01, 0x62, 0xff, 0x68, + 0x01, 0x66, 0xff, 0x8d, 0x01, 0x69, 0xff, 0x68, 0x01, 0x6d, 0xff, 0x8d, + 0x01, 0x73, 0xff, 0x8d, 0x01, 0x76, 0xff, 0x9e, 0x01, 0x7b, 0xff, 0x68, + 0x01, 0x7c, 0xff, 0xb4, 0x01, 0x7e, 0xff, 0x46, 0x01, 0x84, 0xff, 0x68, + 0x01, 0x86, 0xff, 0xb4, 0x01, 0x87, 0xff, 0x68, 0x01, 0x89, 0xff, 0x68, + 0x01, 0x8c, 0xff, 0x46, 0x01, 0x90, 0xff, 0x46, 0x01, 0x93, 0xff, 0x46, + 0x01, 0x97, 0x00, 0x62, 0x01, 0x99, 0xff, 0x46, 0x00, 0x04, 0x01, 0x88, + 0xff, 0xd9, 0x01, 0x8d, 0xff, 0xe3, 0x01, 0x91, 0xff, 0xe3, 0x01, 0x94, + 0xff, 0xc9, 0x00, 0x12, 0x01, 0x79, 0xff, 0x77, 0x01, 0x7b, 0xff, 0xdb, + 0x01, 0x7e, 0xff, 0x77, 0x01, 0x80, 0xff, 0xaa, 0x01, 0x81, 0xff, 0xb4, + 0x01, 0x84, 0xff, 0xdb, 0x01, 0x85, 0xff, 0x9e, 0x01, 0x86, 0xff, 0xdb, + 0x01, 0x87, 0xff, 0xdb, 0x01, 0x8a, 0xff, 0xaa, 0x01, 0x8c, 0xff, 0x77, + 0x01, 0x8d, 0xff, 0xaa, 0x01, 0x90, 0xff, 0x77, 0x01, 0x91, 0xff, 0xaa, + 0x01, 0x93, 0xff, 0x77, 0x01, 0x96, 0xff, 0x77, 0x01, 0x99, 0xff, 0x77, + 0x01, 0x9b, 0xff, 0x77, 0x00, 0x01, 0x01, 0x88, 0xff, 0xd9, 0x00, 0x0d, + 0x01, 0x79, 0xff, 0xe7, 0x01, 0x7e, 0xff, 0xe7, 0x01, 0x81, 0xff, 0xe7, + 0x01, 0x83, 0xff, 0xe7, 0x01, 0x85, 0xff, 0xe7, 0x01, 0x8b, 0xff, 0xe7, + 0x01, 0x8c, 0xff, 0xe7, 0x01, 0x8f, 0xff, 0xe7, 0x01, 0x90, 0xff, 0xe7, + 0x01, 0x93, 0xff, 0xe7, 0x01, 0x96, 0xff, 0xe7, 0x01, 0x99, 0xff, 0xe7, + 0x01, 0x9b, 0xff, 0xe7, 0x00, 0x0d, 0x01, 0x79, 0xff, 0xe1, 0x01, 0x7e, + 0xff, 0xe1, 0x01, 0x81, 0xff, 0xe1, 0x01, 0x8b, 0xff, 0xe1, 0x01, 0x8c, + 0xff, 0xe1, 0x01, 0x8f, 0xff, 0xd1, 0x01, 0x90, 0xff, 0xe1, 0x01, 0x92, + 0xff, 0xcf, 0x01, 0x93, 0xff, 0xdb, 0x01, 0x96, 0xff, 0xe1, 0x01, 0x99, + 0xff, 0xe1, 0x01, 0x9a, 0xff, 0xcf, 0x01, 0x9b, 0xff, 0xe1, 0x00, 0x0a, + 0x01, 0x79, 0xff, 0xc9, 0x01, 0x7e, 0xff, 0xc9, 0x01, 0x81, 0xff, 0xc9, + 0x01, 0x83, 0xff, 0xc9, 0x01, 0x8b, 0xff, 0xc9, 0x01, 0x8c, 0xff, 0xc9, + 0x01, 0x8f, 0xff, 0xc9, 0x01, 0x90, 0xff, 0xc9, 0x01, 0x93, 0xff, 0xc9, + 0x01, 0x99, 0xff, 0xc9, 0x00, 0x09, 0x01, 0x79, 0xff, 0xe3, 0x01, 0x7e, + 0xff, 0xe3, 0x01, 0x83, 0xff, 0xe3, 0x01, 0x8c, 0xff, 0xe3, 0x01, 0x8f, + 0xff, 0xe3, 0x01, 0x90, 0xff, 0xe3, 0x01, 0x93, 0xff, 0xe3, 0x01, 0x96, + 0xff, 0xe3, 0x01, 0x9b, 0xff, 0xe3, 0x00, 0x03, 0x01, 0x88, 0xff, 0xd9, + 0x01, 0x8d, 0xff, 0xe3, 0x01, 0x91, 0xff, 0xe3, 0x00, 0x0a, 0x01, 0x79, + 0xff, 0xe3, 0x01, 0x7e, 0xff, 0xe3, 0x01, 0x81, 0xff, 0xe3, 0x01, 0x83, + 0xff, 0xe3, 0x01, 0x8c, 0xff, 0xe3, 0x01, 0x8f, 0xff, 0xe3, 0x01, 0x90, + 0xff, 0xe3, 0x01, 0x93, 0xff, 0xe3, 0x01, 0x96, 0xff, 0xe3, 0x01, 0x9b, + 0xff, 0xe3, 0x00, 0x0b, 0x01, 0x79, 0xff, 0xc9, 0x01, 0x7e, 0xff, 0xc9, + 0x01, 0x81, 0xff, 0xc9, 0x01, 0x83, 0xff, 0xc9, 0x01, 0x8c, 0xff, 0xc9, + 0x01, 0x8f, 0xff, 0xc9, 0x01, 0x90, 0xff, 0xc9, 0x01, 0x93, 0xff, 0xc9, + 0x01, 0x96, 0xff, 0xc9, 0x01, 0x99, 0xff, 0xc9, 0x01, 0x9b, 0xff, 0xc9, + 0x00, 0x05, 0x00, 0x0f, 0xff, 0x06, 0x00, 0x11, 0xff, 0x06, 0x00, 0x6c, + 0xff, 0x77, 0x00, 0x7b, 0xff, 0x77, 0x02, 0x0b, 0xff, 0xd3, 0x00, 0x01, + 0x02, 0x0f, 0xff, 0x60, 0x00, 0x01, 0x02, 0x0f, 0xff, 0x77, 0x00, 0x11, + 0x01, 0xb0, 0x00, 0x44, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xb7, 0x00, 0x2d, + 0x01, 0xba, 0xff, 0xd3, 0x01, 0xbb, 0xff, 0xe9, 0x01, 0xbd, 0xff, 0xd3, + 0x01, 0xbe, 0xff, 0x60, 0x01, 0xbf, 0xff, 0xa6, 0x01, 0xc0, 0xff, 0xbc, + 0x01, 0xc3, 0xff, 0x60, 0x01, 0xc9, 0xff, 0xd3, 0x01, 0xcc, 0x00, 0x17, + 0x01, 0xde, 0xff, 0xd3, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xe0, 0x00, 0x17, + 0x01, 0xe9, 0x00, 0x2d, 0x02, 0x0f, 0xff, 0x8d, 0x00, 0x0e, 0x01, 0xac, + 0xff, 0xd3, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xba, 0xff, 0xe9, 0x01, 0xbd, + 0xff, 0xe9, 0x01, 0xbe, 0xff, 0xa4, 0x01, 0xbf, 0xff, 0xd1, 0x01, 0xc0, + 0xff, 0xe9, 0x01, 0xc1, 0xff, 0xd3, 0x01, 0xc3, 0xff, 0xa4, 0x01, 0xc6, + 0xff, 0xbc, 0x01, 0xc9, 0xff, 0xe9, 0x01, 0xcb, 0xff, 0xe9, 0x01, 0xd7, + 0xff, 0xe9, 0x01, 0xdf, 0xff, 0xd3, 0x00, 0x15, 0x01, 0xac, 0xff, 0xbc, + 0x01, 0xb0, 0xff, 0xd3, 0x01, 0xb2, 0xff, 0xd3, 0x01, 0xb3, 0xff, 0xbc, + 0x01, 0xb7, 0xff, 0xe9, 0x01, 0xba, 0xff, 0xbc, 0x01, 0xbd, 0xff, 0xbc, + 0x01, 0xbe, 0xff, 0x77, 0x01, 0xbf, 0xff, 0xbc, 0x01, 0xc0, 0xff, 0xbc, + 0x01, 0xc1, 0xff, 0xa6, 0x01, 0xc3, 0xff, 0xa4, 0x01, 0xc6, 0xff, 0x8d, + 0x01, 0xcb, 0xff, 0xbc, 0x01, 0xd0, 0xff, 0xe9, 0x01, 0xd8, 0xff, 0xe9, + 0x01, 0xde, 0xff, 0xbc, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xe1, 0xff, 0xe9, + 0x01, 0xe3, 0xff, 0xbc, 0x01, 0xeb, 0xff, 0xe9, 0x00, 0x1c, 0x00, 0x0f, + 0xff, 0x06, 0x00, 0x11, 0xff, 0x06, 0x00, 0x6c, 0xff, 0x77, 0x00, 0x7b, + 0xff, 0x77, 0x01, 0xac, 0xff, 0x77, 0x01, 0xb0, 0xff, 0x77, 0x01, 0xb3, + 0xff, 0xd3, 0x01, 0xb7, 0xff, 0x8d, 0x01, 0xb8, 0xff, 0xd1, 0x01, 0xba, + 0xff, 0x8d, 0x01, 0xbd, 0xff, 0xa4, 0x01, 0xcb, 0xff, 0xbc, 0x01, 0xcc, + 0xff, 0x8d, 0x01, 0xce, 0xff, 0x8d, 0x01, 0xd0, 0xff, 0x77, 0x01, 0xd1, + 0xff, 0x77, 0x01, 0xd4, 0xff, 0x8d, 0x01, 0xd7, 0xff, 0x8d, 0x01, 0xd8, + 0xff, 0x8d, 0x01, 0xd9, 0xff, 0x8d, 0x01, 0xda, 0xff, 0x77, 0x01, 0xdc, + 0xff, 0x8d, 0x01, 0xdf, 0xff, 0x77, 0x01, 0xe7, 0xff, 0x8d, 0x01, 0xe8, + 0xff, 0x8d, 0x01, 0xea, 0xff, 0x8d, 0x01, 0xeb, 0xff, 0x77, 0x02, 0x0b, + 0xff, 0xd3, 0x00, 0x06, 0x01, 0xbf, 0x00, 0x17, 0x01, 0xc0, 0xff, 0xd3, + 0x01, 0xc3, 0xff, 0xba, 0x01, 0xd3, 0x00, 0x44, 0x01, 0xda, 0x00, 0x17, + 0x01, 0xdf, 0x00, 0x2d, 0x00, 0x02, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xdd, + 0xff, 0xe9, 0x00, 0x0a, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xba, 0xff, 0xd3, + 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xbe, 0x00, 0x17, 0x01, 0xbf, 0x00, 0x2d, + 0x01, 0xc6, 0x00, 0x2d, 0x01, 0xcc, 0x00, 0x17, 0x01, 0xd1, 0xff, 0xe7, + 0x01, 0xda, 0xff, 0xe9, 0x01, 0xdf, 0xff, 0xe9, 0x00, 0x08, 0x01, 0xb7, + 0xff, 0xe9, 0x01, 0xba, 0xff, 0xe9, 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xbe, + 0xff, 0xd3, 0x01, 0xbf, 0xff, 0xe9, 0x01, 0xc0, 0xff, 0xe9, 0x01, 0xc3, + 0xff, 0xd3, 0x01, 0xcb, 0xff, 0xe9, 0x00, 0x05, 0x01, 0xb3, 0xff, 0xe9, + 0x01, 0xba, 0xff, 0xe9, 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xbf, 0x00, 0x17, + 0x01, 0xc0, 0xff, 0xba, 0x00, 0x03, 0x01, 0xc0, 0xff, 0xe9, 0x01, 0xcd, + 0x00, 0x17, 0x01, 0xdf, 0x00, 0x17, 0x00, 0x09, 0x01, 0xc0, 0xff, 0xe9, + 0x01, 0xc3, 0xff, 0xe9, 0x01, 0xcc, 0x00, 0x17, 0x01, 0xd1, 0x00, 0x17, + 0x01, 0xda, 0x00, 0x17, 0x01, 0xdd, 0x00, 0x17, 0x01, 0xdf, 0x00, 0x17, + 0x01, 0xe3, 0xff, 0xe9, 0x01, 0xe9, 0x00, 0x17, 0x00, 0x0b, 0x01, 0xac, + 0xff, 0xd3, 0x01, 0xb0, 0xff, 0xd3, 0x01, 0xb2, 0xff, 0xd3, 0x01, 0xb7, + 0xff, 0xe9, 0x01, 0xbf, 0xff, 0xd3, 0x01, 0xc1, 0xff, 0xa4, 0x01, 0xc3, + 0xff, 0xd3, 0x01, 0xcb, 0xff, 0xd3, 0x01, 0xd0, 0xff, 0xd3, 0x01, 0xd7, + 0xff, 0xe9, 0x01, 0xe1, 0xff, 0xe9, 0x00, 0x18, 0x00, 0x0f, 0xfe, 0x7d, + 0x00, 0x11, 0xfe, 0x7d, 0x00, 0x1d, 0xff, 0xd3, 0x00, 0x1e, 0xff, 0xd3, + 0x00, 0x7b, 0xff, 0x8d, 0x01, 0xac, 0xff, 0x77, 0x01, 0xb0, 0xff, 0x77, + 0x01, 0xb2, 0xff, 0xe9, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xb7, 0xff, 0x8d, + 0x01, 0xb8, 0xff, 0xe9, 0x01, 0xba, 0xff, 0xd3, 0x01, 0xbd, 0xff, 0xe9, + 0x01, 0xbe, 0xff, 0xa4, 0x01, 0xbf, 0xff, 0xd3, 0x01, 0xc0, 0xff, 0xe9, + 0x01, 0xc1, 0xff, 0xa4, 0x01, 0xcb, 0xff, 0xd3, 0x01, 0xcc, 0xff, 0xbc, + 0x01, 0xd0, 0xff, 0x60, 0x01, 0xd1, 0xff, 0xa6, 0x01, 0xda, 0xff, 0xa6, + 0x01, 0xe9, 0xff, 0xd3, 0x01, 0xeb, 0xff, 0xbc, 0x00, 0x0f, 0x01, 0xac, + 0xff, 0xd3, 0x01, 0xb0, 0xff, 0xd3, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xb7, + 0xff, 0xbc, 0x01, 0xb8, 0xff, 0xe9, 0x01, 0xba, 0xff, 0xd3, 0x01, 0xbe, + 0xff, 0xbc, 0x01, 0xbf, 0xff, 0xbc, 0x01, 0xc1, 0xff, 0x8d, 0x01, 0xc3, + 0xff, 0xbc, 0x01, 0xc6, 0xff, 0xba, 0x01, 0xc9, 0xff, 0xe9, 0x01, 0xcc, + 0x00, 0x17, 0x01, 0xd2, 0x00, 0x2d, 0x01, 0xe3, 0xff, 0xe9, 0x00, 0x1f, + 0x00, 0x0f, 0xff, 0x1d, 0x00, 0x11, 0xff, 0x1d, 0x00, 0x6c, 0xff, 0xa6, + 0x00, 0x7b, 0xff, 0xa6, 0x01, 0xac, 0xff, 0xbc, 0x01, 0xb0, 0xff, 0xbc, + 0x01, 0xb2, 0x00, 0x17, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xb7, 0xff, 0xd3, + 0x01, 0xba, 0xff, 0xa4, 0x01, 0xc0, 0xff, 0xbc, 0x01, 0xcb, 0xff, 0xd3, + 0x01, 0xcc, 0xff, 0xa4, 0x01, 0xce, 0xff, 0xa6, 0x01, 0xd1, 0xff, 0x8d, + 0x01, 0xd4, 0xff, 0xa6, 0x01, 0xd6, 0xff, 0xa6, 0x01, 0xd7, 0xff, 0xa4, + 0x01, 0xd8, 0xff, 0xa6, 0x01, 0xda, 0xff, 0x60, 0x01, 0xdb, 0xff, 0xa6, + 0x01, 0xdc, 0xff, 0x8d, 0x01, 0xdd, 0xff, 0x8d, 0x01, 0xdf, 0xff, 0x8d, + 0x01, 0xe1, 0xff, 0xa6, 0x01, 0xe5, 0xff, 0xa6, 0x01, 0xe7, 0xff, 0xa6, + 0x01, 0xe8, 0xff, 0xa6, 0x01, 0xea, 0xff, 0xa6, 0x01, 0xeb, 0xff, 0x8d, + 0x02, 0x0b, 0xff, 0xd3, 0x00, 0x26, 0x00, 0x0f, 0xfe, 0xf0, 0x00, 0x11, + 0xfe, 0xf0, 0x00, 0x1d, 0xff, 0xd3, 0x00, 0x1e, 0xff, 0xd3, 0x00, 0x6c, + 0xff, 0xa6, 0x00, 0x7b, 0xff, 0xa4, 0x01, 0xac, 0xff, 0x77, 0x01, 0xb0, + 0xff, 0xa4, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xb7, 0xff, 0xbc, 0x01, 0xba, + 0xff, 0xbc, 0x01, 0xc0, 0xff, 0xbc, 0x01, 0xc9, 0xff, 0xd3, 0x01, 0xcb, + 0xff, 0xd3, 0x01, 0xcd, 0xff, 0xd3, 0x01, 0xce, 0xff, 0x8d, 0x01, 0xcf, + 0xff, 0xa4, 0x01, 0xd0, 0xff, 0x60, 0x01, 0xd1, 0xff, 0x77, 0x01, 0xd2, + 0xff, 0xbc, 0x01, 0xd3, 0xff, 0x8d, 0x01, 0xd4, 0xff, 0xa4, 0x01, 0xd5, + 0xff, 0xbc, 0x01, 0xd6, 0xff, 0xa4, 0x01, 0xd7, 0xff, 0x77, 0x01, 0xd8, + 0xff, 0xa4, 0x01, 0xd9, 0xff, 0xa4, 0x01, 0xda, 0xff, 0x77, 0x01, 0xdb, + 0xff, 0xa4, 0x01, 0xdc, 0xff, 0xa4, 0x01, 0xdd, 0xff, 0x77, 0x01, 0xe1, + 0xff, 0xa4, 0x01, 0xe2, 0xff, 0xa4, 0x01, 0xe4, 0xff, 0xa4, 0x01, 0xe5, + 0xff, 0xa4, 0x01, 0xea, 0xff, 0xa4, 0x01, 0xeb, 0xff, 0x77, 0x02, 0x0b, + 0xff, 0xe9, 0x00, 0x08, 0x01, 0xac, 0xff, 0xd3, 0x01, 0xb0, 0xff, 0xbc, + 0x01, 0xb7, 0xff, 0xbc, 0x01, 0xbe, 0xff, 0x8d, 0x01, 0xbf, 0xff, 0xa4, + 0x01, 0xc3, 0xff, 0xd3, 0x01, 0xcb, 0xff, 0xba, 0x01, 0xd7, 0xff, 0xbc, + 0x00, 0x07, 0x01, 0xb3, 0xff, 0xd3, 0x01, 0xba, 0xff, 0xbc, 0x01, 0xbd, + 0xff, 0xbc, 0x01, 0xc0, 0xff, 0xbc, 0x01, 0xc9, 0xff, 0xba, 0x01, 0xda, + 0xff, 0xe9, 0x01, 0xdf, 0xff, 0xd3, 0x00, 0x02, 0x01, 0xba, 0xff, 0xd3, + 0x01, 0xcc, 0x00, 0x2d, 0x00, 0x02, 0x01, 0xcc, 0x00, 0x17, 0x01, 0xdf, + 0x00, 0x2d, 0x00, 0x02, 0x01, 0xcb, 0xff, 0xbc, 0x02, 0x0f, 0xff, 0x77, + 0x00, 0x0e, 0x01, 0xac, 0xff, 0xd3, 0x01, 0xb0, 0xff, 0xd3, 0x01, 0xb2, + 0xff, 0xbc, 0x01, 0xb3, 0xff, 0xe9, 0x01, 0xb7, 0xff, 0xba, 0x01, 0xb8, + 0xff, 0xd3, 0x01, 0xba, 0xff, 0xd3, 0x01, 0xbd, 0xff, 0xd3, 0x01, 0xbe, + 0xff, 0x33, 0x01, 0xc1, 0xff, 0xa4, 0x01, 0xc3, 0xff, 0x60, 0x01, 0xc9, + 0xff, 0xe9, 0x01, 0xcb, 0xff, 0xa4, 0x02, 0x0f, 0xff, 0x60, 0x00, 0x0b, + 0x01, 0xb0, 0xff, 0xbc, 0x01, 0xb2, 0xff, 0xe7, 0x01, 0xb3, 0xff, 0xe9, + 0x01, 0xb7, 0xff, 0xbc, 0x01, 0xc1, 0xff, 0xba, 0x01, 0xcb, 0xff, 0xd3, + 0x01, 0xd0, 0xff, 0xbc, 0x01, 0xd2, 0x00, 0x17, 0x01, 0xd7, 0xff, 0xbc, + 0x01, 0xd8, 0xff, 0xe9, 0x01, 0xeb, 0xff, 0xe9, 0x00, 0x0c, 0x01, 0xac, + 0xff, 0xbc, 0x01, 0xb0, 0xff, 0xa6, 0x01, 0xb2, 0xff, 0xd3, 0x01, 0xb7, + 0xff, 0xa4, 0x01, 0xba, 0xff, 0xe9, 0x01, 0xbd, 0xff, 0xe9, 0x01, 0xbe, + 0xff, 0x8d, 0x01, 0xc1, 0xff, 0xa4, 0x01, 0xc3, 0xff, 0xbc, 0x01, 0xd0, + 0xff, 0xa4, 0x01, 0xd7, 0xff, 0xa4, 0x01, 0xd8, 0xff, 0xe9, 0x00, 0x04, + 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xde, 0xff, 0xd3, 0x01, 0xdf, 0xff, 0xe9, + 0x01, 0xe3, 0xff, 0xd3, 0x00, 0x0f, 0x01, 0xcc, 0xff, 0xd1, 0x01, 0xd0, + 0xff, 0xa4, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xd2, 0xff, 0xe9, 0x01, 0xd3, + 0xff, 0xd3, 0x01, 0xd7, 0xff, 0xa4, 0x01, 0xd8, 0xff, 0xd3, 0x01, 0xdd, + 0xff, 0xe9, 0x01, 0xdf, 0xff, 0xd3, 0x01, 0xe0, 0xff, 0xe9, 0x01, 0xe1, + 0xff, 0xbc, 0x01, 0xe3, 0xff, 0xbc, 0x01, 0xe6, 0xff, 0xbc, 0x01, 0xe9, + 0xff, 0xe9, 0x01, 0xeb, 0xff, 0xd3, 0x00, 0x10, 0x01, 0xcc, 0xff, 0xe9, + 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xd0, 0xff, 0xe9, 0x01, 0xd1, 0xff, 0xe9, + 0x01, 0xd2, 0xff, 0xe9, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xd7, 0xff, 0xd1, + 0x01, 0xd8, 0xff, 0xe9, 0x01, 0xda, 0xff, 0xe9, 0x01, 0xdd, 0xff, 0xe9, + 0x01, 0xde, 0xff, 0xd3, 0x01, 0xdf, 0xff, 0xd3, 0x01, 0xe0, 0xff, 0xe9, + 0x01, 0xe3, 0xff, 0xa4, 0x01, 0xe6, 0xff, 0xbc, 0x01, 0xeb, 0xff, 0xe9, + 0x00, 0x0a, 0x00, 0x0f, 0xff, 0x06, 0x00, 0x11, 0xff, 0x06, 0x01, 0xcc, + 0xff, 0xd3, 0x01, 0xd0, 0xff, 0xa4, 0x01, 0xd1, 0xff, 0xd3, 0x01, 0xd3, + 0xff, 0xe9, 0x01, 0xd7, 0xff, 0xd3, 0x01, 0xda, 0xff, 0xd3, 0x01, 0xdd, + 0xff, 0xd3, 0x01, 0xeb, 0xff, 0xe9, 0x00, 0x02, 0x01, 0xe6, 0xff, 0xd3, + 0x01, 0xe9, 0x00, 0x17, 0x00, 0x09, 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xd0, + 0xff, 0xd3, 0x01, 0xd2, 0xff, 0xe9, 0x01, 0xd3, 0xff, 0xd3, 0x01, 0xd7, + 0xff, 0xbc, 0x01, 0xde, 0xff, 0xbc, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xe1, + 0xff, 0xd3, 0x01, 0xe3, 0xff, 0xbc, 0x00, 0x04, 0x01, 0xcd, 0x00, 0x17, + 0x01, 0xdf, 0x00, 0x17, 0x01, 0xe3, 0xff, 0xe9, 0x01, 0xe6, 0x00, 0x2d, + 0x00, 0x0b, 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xd0, 0xff, 0xd3, 0x01, 0xd1, + 0xff, 0xe9, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xd7, 0xff, 0xe9, 0x01, 0xda, + 0xff, 0xe9, 0x01, 0xdd, 0xff, 0xe9, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xe0, + 0xff, 0xe9, 0x01, 0xe3, 0xff, 0xbc, 0x01, 0xe6, 0xff, 0xd3, 0x00, 0x0a, + 0x01, 0xcc, 0x00, 0x2d, 0x01, 0xcd, 0x00, 0x2d, 0x01, 0xd1, 0x00, 0x17, + 0x01, 0xd3, 0x00, 0x17, 0x01, 0xd7, 0x00, 0x17, 0x01, 0xda, 0x00, 0x17, + 0x01, 0xdd, 0x00, 0x17, 0x01, 0xde, 0x00, 0x17, 0x01, 0xdf, 0x00, 0x17, + 0x01, 0xe9, 0x00, 0x17, 0x00, 0x02, 0x01, 0xda, 0x00, 0x17, 0x01, 0xe3, + 0xff, 0xd3, 0x00, 0x03, 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xd3, 0xff, 0xe9, + 0x01, 0xdf, 0x00, 0x17, 0x00, 0x08, 0x01, 0xd0, 0xff, 0xd3, 0x01, 0xd2, + 0xff, 0xe9, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xd7, 0xff, 0xd3, 0x01, 0xde, + 0xff, 0xd3, 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xe1, 0xff, 0xe9, 0x01, 0xe3, + 0xff, 0xd3, 0x00, 0x08, 0x01, 0xd0, 0xff, 0xd1, 0x01, 0xd3, 0xff, 0xe9, + 0x01, 0xd7, 0xff, 0xba, 0x01, 0xde, 0xff, 0xd3, 0x01, 0xdf, 0xff, 0xe9, + 0x01, 0xe1, 0xff, 0xe9, 0x01, 0xe3, 0xff, 0xd3, 0x01, 0xeb, 0xff, 0xe9, + 0x00, 0x04, 0x01, 0xd2, 0x00, 0x17, 0x01, 0xda, 0x00, 0x17, 0x01, 0xe3, + 0xff, 0xe9, 0x01, 0xe9, 0x00, 0x17, 0x00, 0x0a, 0x00, 0x0f, 0xff, 0x1d, + 0x00, 0x11, 0xff, 0x1d, 0x01, 0xcc, 0xff, 0xe9, 0x01, 0xd0, 0xff, 0xbc, + 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xd2, 0x00, 0x44, 0x01, 0xd7, 0xff, 0xd3, + 0x01, 0xda, 0xff, 0xe9, 0x01, 0xdd, 0xff, 0xe9, 0x01, 0xdf, 0x00, 0x17, + 0x00, 0x10, 0x00, 0x0f, 0xff, 0x33, 0x00, 0x11, 0xff, 0x33, 0x00, 0x7b, + 0x00, 0x17, 0x01, 0xcc, 0xff, 0xe9, 0x01, 0xcd, 0x00, 0x17, 0x01, 0xd0, + 0xff, 0xbc, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xd2, 0x00, 0x17, 0x01, 0xd7, + 0xff, 0xd3, 0x01, 0xd8, 0xff, 0xe9, 0x01, 0xda, 0xff, 0xe7, 0x01, 0xdc, + 0xff, 0xe9, 0x01, 0xdd, 0xff, 0xe9, 0x01, 0xe0, 0xff, 0xe9, 0x01, 0xe9, + 0xff, 0xe9, 0x01, 0xeb, 0xff, 0xe9, 0x00, 0x07, 0x01, 0xcd, 0xff, 0xe9, + 0x01, 0xd0, 0xff, 0xd3, 0x01, 0xd7, 0xff, 0xd3, 0x01, 0xde, 0xff, 0xd3, + 0x01, 0xdf, 0xff, 0xe9, 0x01, 0xe3, 0xff, 0xd3, 0x01, 0xeb, 0xff, 0xe9, + 0x00, 0x09, 0x01, 0xcc, 0xff, 0xe9, 0x01, 0xcd, 0xff, 0xe9, 0x01, 0xd1, + 0xff, 0xe9, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xda, 0xff, 0xe9, 0x01, 0xdd, + 0xff, 0xe9, 0x01, 0xde, 0xff, 0xe9, 0x01, 0xe0, 0xff, 0xe9, 0x01, 0xe3, + 0xff, 0xd3, 0x00, 0x04, 0x01, 0xd1, 0xff, 0xe9, 0x01, 0xd3, 0xff, 0xe9, + 0x01, 0xda, 0xff, 0xe9, 0x01, 0xdd, 0xff, 0xe9, 0x00, 0x03, 0x01, 0xd1, + 0xff, 0xe9, 0x01, 0xda, 0xff, 0xe9, 0x01, 0xdf, 0x00, 0x17, 0x00, 0x02, + 0x01, 0xde, 0xff, 0x60, 0x01, 0xe3, 0xff, 0x77, 0x00, 0x08, 0x01, 0xd0, + 0xff, 0xd3, 0x01, 0xd1, 0x00, 0x17, 0x01, 0xd3, 0xff, 0xe9, 0x01, 0xd7, + 0xff, 0xd3, 0x01, 0xda, 0x00, 0x17, 0x01, 0xde, 0xff, 0xd3, 0x01, 0xe1, + 0xff, 0xe9, 0x01, 0xeb, 0xff, 0xe9, 0x00, 0x07, 0x01, 0xd0, 0xff, 0xd3, + 0x01, 0xd2, 0xff, 0xe9, 0x01, 0xd7, 0xff, 0xd3, 0x01, 0xd8, 0xff, 0xe9, + 0x01, 0xde, 0xff, 0xd3, 0x01, 0xe1, 0xff, 0xe9, 0x01, 0xe3, 0xff, 0xd3, + 0x00, 0x02, 0x00, 0x0f, 0xff, 0x33, 0x00, 0x11, 0xff, 0x33, 0x00, 0x07, + 0x00, 0x0f, 0xff, 0x06, 0x00, 0x11, 0xff, 0x06, 0x00, 0x1d, 0xff, 0xd3, + 0x00, 0x1e, 0xff, 0xd3, 0x00, 0x6c, 0xff, 0x60, 0x00, 0x7b, 0xff, 0x60, + 0x02, 0x0b, 0xff, 0xd3, 0x00, 0x01, 0x02, 0x0e, 0xff, 0xdb, 0x00, 0x03, + 0x00, 0x03, 0xff, 0xb4, 0x00, 0x56, 0xff, 0xdb, 0x02, 0x0f, 0xff, 0xdb, + 0x00, 0x05, 0x01, 0x9e, 0xff, 0x60, 0x01, 0xa7, 0xff, 0x60, 0x01, 0xbe, + 0xff, 0x60, 0x01, 0xc3, 0xff, 0xbc, 0x01, 0xc6, 0xff, 0xbc, 0x00, 0x01, + 0x00, 0x68, 0x00, 0x03, 0x00, 0x24, 0x00, 0x29, 0x00, 0x2f, 0x00, 0x33, + 0x00, 0x35, 0x00, 0x37, 0x00, 0x39, 0x00, 0x3a, 0x00, 0x3c, 0x00, 0x49, + 0x00, 0x55, 0x00, 0x59, 0x00, 0x5a, 0x00, 0x5c, 0x01, 0x56, 0x01, 0x5b, + 0x01, 0x5c, 0x01, 0x5d, 0x01, 0x5f, 0x01, 0x61, 0x01, 0x62, 0x01, 0x66, + 0x01, 0x68, 0x01, 0x69, 0x01, 0x6d, 0x01, 0x6f, 0x01, 0x70, 0x01, 0x71, + 0x01, 0x72, 0x01, 0x73, 0x01, 0x75, 0x01, 0x76, 0x01, 0x78, 0x01, 0x81, + 0x01, 0x83, 0x01, 0x85, 0x01, 0x87, 0x01, 0x88, 0x01, 0x8b, 0x01, 0x8c, + 0x01, 0x8d, 0x01, 0x8e, 0x01, 0x91, 0x01, 0x93, 0x01, 0x94, 0x01, 0x96, + 0x01, 0x99, 0x01, 0x9b, 0x01, 0x9f, 0x01, 0xa5, 0x01, 0xa6, 0x01, 0xac, + 0x01, 0xad, 0x01, 0xae, 0x01, 0xaf, 0x01, 0xb0, 0x01, 0xb1, 0x01, 0xb2, + 0x01, 0xb3, 0x01, 0xb6, 0x01, 0xb7, 0x01, 0xb8, 0x01, 0xba, 0x01, 0xbc, + 0x01, 0xbd, 0x01, 0xbe, 0x01, 0xbf, 0x01, 0xc0, 0x01, 0xc1, 0x01, 0xc2, + 0x01, 0xc5, 0x01, 0xc6, 0x01, 0xc8, 0x01, 0xc9, 0x01, 0xca, 0x01, 0xcc, + 0x01, 0xcd, 0x01, 0xce, 0x01, 0xcf, 0x01, 0xd0, 0x01, 0xd1, 0x01, 0xd2, + 0x01, 0xd3, 0x01, 0xd6, 0x01, 0xd7, 0x01, 0xd8, 0x01, 0xda, 0x01, 0xdc, + 0x01, 0xdd, 0x01, 0xde, 0x01, 0xdf, 0x01, 0xe0, 0x01, 0xe1, 0x01, 0xe2, + 0x01, 0xe5, 0x01, 0xe8, 0x01, 0xe9, 0x01, 0xea, 0x01, 0xfa, 0x01, 0xfe, + 0x02, 0x0e, 0x02, 0x0f, 0x02, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x00, 0xda, 0x51, 0x93, 0x04, 0x00, 0x00, 0x00, 0x00, + 0xbf, 0x1a, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0xcf, 0x92, 0x4d, 0xe1 +}; + +unsigned int LiberationSans_Regular_ttf_len = 139512; + +} // namespace emp + +#endif // #ifndef EMP_LIBERATION_SANS_REGULAR_HPP diff --git a/include/emp/web/_NativeCanvas.hpp b/include/emp/web/_NativeCanvas.hpp index 7157493bee..9089f84485 100644 --- a/include/emp/web/_NativeCanvas.hpp +++ b/include/emp/web/_NativeCanvas.hpp @@ -23,6 +23,7 @@ #include "_LineShape.hpp" #include "CanvasShape.hpp" #include "Color.hpp" +#include "LiberationSansRegular.hpp" namespace emp { namespace web { @@ -91,14 +92,14 @@ namespace web { /// line color. Canvas & Rect( Point corner, const double w, const double h, - const std::string& fc="", const std::string& lc="", const double lw=1.0 + const std::string& fc="white", const std::string& lc="black", const double lw=1.0 ) { return this->Rect(corner.GetX(),corner.GetY(), w, h, fc, lc, lw); } Canvas & Rect( const double x, const double y, const double w, const double h, - const std::string& fc="", const std::string& lc="", const double lw=1.0 + const std::string& fc="white", const std::string& lc="black", const double lw=1.0 ) { sf::RectangleShape shape( sf::Vector2f(w, h) ); shape.setPosition(x, y); @@ -153,18 +154,28 @@ namespace web { return *this; } - /// Add a string to this canvas at x,y with specified text. Optional face color and - /// line color. - template - Canvas & Text(emp::Point p, Ts &&... vals) { - emp_assert(false, "unimplemented"); - return *this; + /// Add a string to this canvas at x,y with specified text. Optional face color, + /// line color, size, and thickness. + Canvas & Text(emp::Point p, const std::string& words="", const std::string& fc="black", + const std::string& lc="black", const float size = 15, const float thickness=0.5) { + return this->Text(p.GetX(), p.GetY(), words, fc, lc, size, thickness); } - template - Canvas & Text(double x, double y, Ts &&... vals) { - emp_assert(false, "unimplemented"); - return *this; + Canvas & Text(double x, double y, const std::string& words="", const std::string& fc="black", + const std::string& lc="black", const float size = 15, const float thickness=0.5) { + // Declare and load a font + sf::Font font; + font.loadFromMemory(LiberationSans_Regular_ttf, LiberationSans_Regular_ttf_len); + + sf::Text message(words, font); + message.setPosition(x, y); + message.setCharacterSize(size); + message.setFillColor((sf::Color) emp::web::Color( fc )); + message.setOutlineColor((sf::Color) emp::web::Color( lc )); + message.setOutlineThickness(thickness); + window.draw( message ); + return *this; + } /// Add a string to this canvas centered at x,y with specified text. Optional face color and diff --git a/tests/native/Makefile b/tests/native/Makefile index 33ce417993..ac23066f74 100644 --- a/tests/native/Makefile +++ b/tests/native/Makefile @@ -18,7 +18,7 @@ test-prep: mkdir -p temp test-%: %.cpp ../../third-party/Catch/single_include/catch2/catch.hpp - $(CXX) $(FLAGS) $< -lsfml-graphics -o $@.out + $(CXX) $(FLAGS) $< -lsfml-graphics -lsfml-window -lsfml-system -o $@.out # execute test ./$@.out From 9f1a37d23c80734ce5dd814f9cfc2ea4861a7b48 Mon Sep 17 00:00:00 2001 From: Katherine Date: Thu, 11 Feb 2021 16:43:30 +0000 Subject: [PATCH 031/228] Fix LAST_BIT and NUM_FIELDS cases in shift left --- include/emp/bits/BitSet.hpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/include/emp/bits/BitSet.hpp b/include/emp/bits/BitSet.hpp index 107b91e587..87c665f2a9 100644 --- a/include/emp/bits/BitSet.hpp +++ b/include/emp/bits/BitSet.hpp @@ -134,9 +134,17 @@ namespace emp { // and did see a difference in runtime MAM // TODO currently only implemented for NUM_FIELDS == 1 - static_assert( NUM_FIELDS == 1 ); - static_assert( LAST_BIT == 0 ); - bit_set[0] <<= shift; + //static_assert( NUM_FIELDS == 1 ); + //static_assert( LAST_BIT == 0 ); + if constexpr (NUM_FIELDS != 1) { + ShiftLeft(shift); + + } + else { + if constexpr (LAST_BIT != 0) + bit_set[NUM_FIELDS - 1] &= MaskLow(LAST_BIT); + bit_set[0] <<= shift; + } } /// Helper: call SHIFT with positive number instead From 1b44b039758dc004fad4a553eab2778c91638fe9 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Thu, 11 Feb 2021 23:26:36 -0500 Subject: [PATCH 032/228] Add Reset method to config objects --- include/emp/config/config.hpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/include/emp/config/config.hpp b/include/emp/config/config.hpp index e694aa288d..05aa57bd90 100644 --- a/include/emp/config/config.hpp +++ b/include/emp/config/config.hpp @@ -44,6 +44,7 @@ #include #include +#include "../base/assert.hpp" #include "../base/errors.hpp" #include "../base/unordered_map.hpp" #include "../base/vector.hpp" @@ -105,6 +106,12 @@ namespace emp { /// Identify if this setting is fixed at compile time. virtual bool IsConst() const = 0; + + /// Reset this setting to its default. + void Reset(std::stringstream & warnings) { + this->SetValue( GetDefault(), warnings ); + } + }; /// Master configuration class that manages all of the settings. @@ -431,6 +438,25 @@ namespace emp { return *this; } + Config & Reset(const std::string& setting_name) { + emp_assert( var_map.count( setting_name ), setting_name ); + var_map[setting_name]->Reset(warnings); + if (!delay_warnings && warnings.rdbuf()->in_avail()) { + emp::NotifyWarning(warnings.str()); + warnings.str(std::string()); // Clear the warnings. + } + return *this; + } + + Config & Reset() { + for (auto& [name, entry] : var_map) entry->Reset(warnings); + if (!delay_warnings && warnings.rdbuf()->in_avail()) { + emp::NotifyWarning(warnings.str()); + warnings.str(std::string()); // Clear the warnings. + } + return *this; + } + std::string operator()(const std::string & setting_name) { return Get(setting_name); } Config & operator()(const std::string & setting_name, const std::string & new_value) { From 9096fd14f7f91e0bda3016351fbd635add49133a Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Fri, 12 Feb 2021 02:09:49 -0500 Subject: [PATCH 033/228] Take const string&, not const string args --- include/emp/config/config.hpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/include/emp/config/config.hpp b/include/emp/config/config.hpp index 05aa57bd90..37cf1135e1 100644 --- a/include/emp/config/config.hpp +++ b/include/emp/config/config.hpp @@ -123,8 +123,8 @@ namespace emp { protected: VAR_TYPE & entry_ref; public: - tConfigEntry(const std::string _name, const std::string _type, - const std::string _d_val, const std::string _desc, + tConfigEntry(const std::string& _name, const std::string& _type, + const std::string& _d_val, const std::string& _desc, VAR_TYPE & _ref) : ConfigEntry(_name, _type, _d_val, _desc), entry_ref(_ref) { ; } ~tConfigEntry() { ; } @@ -142,8 +142,8 @@ namespace emp { protected: const VAR_TYPE literal_val; public: - tConfigConstEntry(const std::string _name, const std::string _type, - const std::string _d_val, const std::string _desc, + tConfigConstEntry(const std::string& _name, const std::string& _type, + const std::string& _d_val, const std::string& _desc, const VAR_TYPE & _literal_val) : ConfigEntry(_name, _type, _d_val, _desc), literal_val(_literal_val) { ; } ~tConfigConstEntry() { ; } @@ -165,8 +165,8 @@ namespace emp { /// Special settings entry for settings created during the run (only accissibly dynamically) class ConfigLiveEntry : public ConfigEntry { public: - ConfigLiveEntry(const std::string _name, const std::string _type, - const std::string _d_val, const std::string _desc) + ConfigLiveEntry(const std::string& _name, const std::string& _type, + const std::string& _d_val, const std::string& _desc) : ConfigEntry(_name, _type, _d_val, _desc) { ; } ~ConfigLiveEntry() { ; } From a6485473f33790dff95c2fa7ace508570423ce77 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Fri, 12 Feb 2021 02:10:14 -0500 Subject: [PATCH 034/228] Store parsed default value, not raw default value --- include/emp/config/config.hpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/emp/config/config.hpp b/include/emp/config/config.hpp index 37cf1135e1..3889bb3772 100644 --- a/include/emp/config/config.hpp +++ b/include/emp/config/config.hpp @@ -126,7 +126,8 @@ namespace emp { tConfigEntry(const std::string& _name, const std::string& _type, const std::string& _d_val, const std::string& _desc, VAR_TYPE & _ref) - : ConfigEntry(_name, _type, _d_val, _desc), entry_ref(_ref) { ; } + : ConfigEntry(_name, _type, emp::to_string(_ref), _desc) + , entry_ref(_ref) { ; } ~tConfigEntry() { ; } std::string GetValue() const { return emp::to_string(entry_ref); } @@ -145,7 +146,8 @@ namespace emp { tConfigConstEntry(const std::string& _name, const std::string& _type, const std::string& _d_val, const std::string& _desc, const VAR_TYPE & _literal_val) - : ConfigEntry(_name, _type, _d_val, _desc), literal_val(_literal_val) { ; } + : ConfigEntry(_name, _type, emp::to_string(_literal_val), _desc) + , literal_val(_literal_val) { ; } ~tConfigConstEntry() { ; } std::string GetValue() const { return default_val; } From 0c61764a5a111ede13238e0931381fa84b38a69a Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 15 Feb 2021 23:00:02 -0500 Subject: [PATCH 035/228] Track template API change --- tests/matching/MatchDepository.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/matching/MatchDepository.cpp b/tests/matching/MatchDepository.cpp index 72b1cc693d..9b0725db5a 100644 --- a/tests/matching/MatchDepository.cpp +++ b/tests/matching/MatchDepository.cpp @@ -50,7 +50,8 @@ TEST_CASE("MatchDepository MatchRaw", "[tools]") { emp::AbsDiffMetric, emp::statics::RankedSelector<>, emp::AdditiveCountdownRegulator<>, - 4 + true, + 2 > depo; REQUIRE( depo.GetSize() == 0 ); @@ -112,7 +113,8 @@ TEST_CASE("MatchDepository MatchRegulated", "[tools]") { emp::AbsDiffMetric, emp::statics::RankedSelector<>, emp::AdditiveCountdownRegulator<>, - 4 + true, + 2 > depo; REQUIRE( depo.GetSize() == 0 ); From 666625cd038b16f61fba77e89e4da9c009155d10 Mon Sep 17 00:00:00 2001 From: Katherine Date: Tue, 16 Feb 2021 15:41:57 +0000 Subject: [PATCH 036/228] Add undefined functionality handling --- include/emp/web/_NativeCanvas.hpp | 63 +++++++++++++++++----- tests/native/Canvas.cpp | 87 +++++++++++++++++++++++-------- 2 files changed, 114 insertions(+), 36 deletions(-) diff --git a/include/emp/web/_NativeCanvas.hpp b/include/emp/web/_NativeCanvas.hpp index 9089f84485..14b3546447 100644 --- a/include/emp/web/_NativeCanvas.hpp +++ b/include/emp/web/_NativeCanvas.hpp @@ -14,11 +14,14 @@ #include + + #include #include "../base/vector.hpp" #include "../geometry/Circle2D.hpp" #include "../tools/string_utils.hpp" +#include "../base/errors.hpp" #include "_LineShape.hpp" #include "CanvasShape.hpp" @@ -27,7 +30,7 @@ namespace emp { namespace web { - +//try { /// Manage a SFML Canvas object. class Canvas { @@ -59,10 +62,14 @@ namespace web { double GetHeight() const { return height; } /// Set a new width for this Canvas. - void SetWidth(const double w) { emp_assert(false, "unimplemented"); } + void SetWidth(const double w) { + LibraryWarning("No support for changing width."); + } /// Set a new height for this Canvas. - void SetHeight(const double h) { emp_assert(false, "unimplemented"); } + void SetHeight(const double h) { + LibraryWarning("No support for changing height."); + } /// Set Canvas size. void SetSize(const double w, const double h) { @@ -149,8 +156,11 @@ namespace web { /// Add a Line from x1,y1 to x2,y2. Optional face color and line color. template - Canvas & MultiLine(emp::Point p1, const emp::vector & points, Ts &&... vals) { - emp_assert(false, "unimplemented"); + Canvas & MultiLine(emp::Point p1, const emp::vector & points, const std::string& fc="", + const std::string& lc="", const double lw=1.0) { + for (auto p2 : points) { + this->Line(p1.GetX(), p1.GetY(), p2.GetX(), p2.GetY(), fc, lc, lw); + } return *this; } @@ -163,16 +173,20 @@ namespace web { Canvas & Text(double x, double y, const std::string& words="", const std::string& fc="black", const std::string& lc="black", const float size = 15, const float thickness=0.5) { + // Declare and load a font sf::Font font; font.loadFromMemory(LiberationSans_Regular_ttf, LiberationSans_Regular_ttf_len); + // Create a text object and set attributes sf::Text message(words, font); message.setPosition(x, y); message.setCharacterSize(size); message.setFillColor((sf::Color) emp::web::Color( fc )); message.setOutlineColor((sf::Color) emp::web::Color( lc )); message.setOutlineThickness(thickness); + + // draw the message on the canvas window.draw( message ); return *this; @@ -180,21 +194,34 @@ namespace web { /// Add a string to this canvas centered at x,y with specified text. Optional face color and /// line color. - template - Canvas & CenterText(emp::Point p, Ts &&... vals) { - emp_assert(false, "unimplemented"); + Canvas & CenterText(emp::Point p, const std::string& words="", const std::string& fc="black", + const std::string& lc="black", const float size = 15, const float thickness=0.5) { + this->CenterText(p.GetX(), p.GetY(), words, fc, lc, size, thickness); return *this; } - template - Canvas & CenterText(double x, double y, Ts &&... vals) { - emp_assert(false, "unimplemented"); - return *this; + Canvas & CenterText(double x, double y, const std::string& words="", const std::string& fc="black", + const std::string& lc="black", const float size = 15, const float thickness=0.5) { + // Declare and load a font + sf::Font font; + font.loadFromMemory(LiberationSans_Regular_ttf, LiberationSans_Regular_ttf_len); + + sf::Text message(words, font); + //message.setPosition(x, y); + x += message.getLocalBounds().width/2; + y += message.getLocalBounds().height/2; + message.setPosition(x, y); + message.setCharacterSize(size); + message.setFillColor((sf::Color) emp::web::Color( fc )); + message.setOutlineColor((sf::Color) emp::web::Color( lc )); + message.setOutlineThickness(thickness); + window.draw( message ); + return *this; } /// Update the default font for text. Canvas & Font(const std::string font) { - emp_assert(false, "unimplemented"); + LibraryWarning("No support for selecting fonts."); return *this; } @@ -231,7 +258,7 @@ namespace web { /// Clear to a specific background color. Canvas & Clear(const std::string & bg_color) { - emp_assert(false, "unimplemented"); + window.clear((sf::Color) emp::web::Color( bg_color )); return *this; } @@ -250,7 +277,15 @@ namespace web { }; +/* +} +catch(const std::exception& e) +{ + std::cout << "X11 Display not configured correctly." << std::endl; +} +*/ } // namespace web } // namespace emp + #endif diff --git a/tests/native/Canvas.cpp b/tests/native/Canvas.cpp index c856017fc9..b672293bc0 100644 --- a/tests/native/Canvas.cpp +++ b/tests/native/Canvas.cpp @@ -78,49 +78,92 @@ TEST_CASE("Test Circle Thickness", "[native]") { canvas.SavePNG("circle_thickness.png"); } -/* + TEST_CASE("Test Rectangle Locations", "[native]") { emp::web::Canvas canvas{ 500, 500 }; - canvas.Circle(20, 40, 20); - canvas.Circle(230, 40, 20); - canvas.Circle(440, 40, 20); - canvas.Circle(20, 440, 20); - canvas.Circle(230, 440, 20); - canvas.Circle(440, 440, 20); + canvas.Rect(20, 40, 20, 30); + canvas.Rect(230, 40, 20, 30); + canvas.Rect(440, 40, 20, 30); + canvas.Rect(20, 440, 20, 30); + canvas.Rect(230, 440, 20, 30); + canvas.Rect(440, 440, 20, 30); canvas.SavePNG("rect_location.png"); } -TEST_CASE("Test Rectangle Locations", "[native]") { +TEST_CASE("Test Rectangle Colors", "[native]") { emp::web::Canvas canvas{ 500, 500 }; - canvas.Circle(20, 40, 20); - canvas.Circle(230, 40, 20); - canvas.Circle(440, 40, 20); - canvas.Circle(20, 440, 20); - canvas.Circle(230, 440, 20); - canvas.Circle(440, 440, 20); + canvas.Rect(20, 40, 20, 30, "white", "black"); + canvas.Rect(160, 40, 20, 30, "white", "red"); + canvas.Rect(300, 40, 20, 30, "white", "yellow"); + canvas.Rect(440, 40, 20, 30, "white", "blue"); + canvas.Rect(20, 80, 20, 30, "black", "white"); + canvas.Rect(160, 80, 20, 30, "red", "black"); + canvas.Rect(300, 80, 20, 30, "yellow", "black"); + canvas.Rect(440, 80, 20, 30, "blue", "black"); - canvas.SavePNG("rect_location.png"); + canvas.SavePNG("rect_color.png"); + +} + +TEST_CASE("Test Rectangle Size/Thickness", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Rect(20, 85, 10, 5, "white", "black", 1); + canvas.Rect(60, 65, 30, 25, "white", "black", 3); + canvas.Rect(140, 40, 55, 50, "white", "black", 5); + canvas.Rect(300, 15, 80, 75, "white", "black", 7); + canvas.SavePNG("rect_size_thick.png"); } + TEST_CASE("Test Text Locations", "[native]") { emp::web::Canvas canvas{ 500, 500 }; - canvas.text(20, 40, "upper left"); - canvas.text(230, 40, "upper middle"); - canvas.text(440, 40, "top right"); - canvas.text(20, 440, "bottom left"); - canvas.text(230, 440, "bottom middle"); - canvas.text(440, 440, "bottom right"); + canvas.Text(20, 40, "upper left"); + canvas.Text(220, 40, "upper middle"); + canvas.Text(420, 40, "upper right"); + canvas.Text(20, 440, "bottom left"); + canvas.Text(220, 440, "bottom middle"); + canvas.Text(420, 440, "bottom right"); canvas.SavePNG("text_location.png"); } -*/ \ No newline at end of file + +TEST_CASE("Test Text Color", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.Text(60, 40, "black", "black", "black", 20); + canvas.Text(60, 80, "white", "white", "black", 20); + canvas.Text(60, 120, "red", "red", "black", 20); + canvas.Text(60, 160, "yellow", "yellow", "black", 20); + canvas.Text(60, 200, "blue", "blue", "black", 20); + + canvas.SavePNG("text_color.png"); + +} + +TEST_CASE("Test CenterText Locations", "[native]") { + + emp::web::Canvas canvas{ 500, 500 }; + + canvas.CenterText(20, 40, "upper left"); + canvas.CenterText(220, 40, "upper middle"); + canvas.CenterText(420, 40, "upper right"); + canvas.CenterText(20, 440, "bottom left"); + canvas.CenterText(220, 440, "bottom middle"); + canvas.CenterText(420, 440, "bottom right"); + + canvas.SavePNG("centertext_location.png"); + +} From 964b1926a1792b738f7a4f9f611b7c215839139d Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Mon, 22 Feb 2021 11:45:03 -0500 Subject: [PATCH 037/228] Pin all python packages, incl indirect deps --- doc/requirements.in | 6 +++ doc/requirements.txt | 95 ++++++++++++++++++++++++++++++++++-- third-party/requirements.in | 3 ++ third-party/requirements.txt | 65 ++++++++++++++++++++++-- 4 files changed, 162 insertions(+), 7 deletions(-) create mode 100644 doc/requirements.in create mode 100644 third-party/requirements.in diff --git a/doc/requirements.in b/doc/requirements.in new file mode 100644 index 0000000000..3160e668fa --- /dev/null +++ b/doc/requirements.in @@ -0,0 +1,6 @@ +sphinx==3.2.1 +exhale==0.2.3 +sphinx-rtd-theme==0.5.0 +coverxygen==1.5.0 +breathe==4.22.1 +myst-parser==0.12.9 diff --git a/doc/requirements.txt b/doc/requirements.txt index 3160e668fa..8514d54792 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -1,6 +1,93 @@ -sphinx==3.2.1 -exhale==0.2.3 -sphinx-rtd-theme==0.5.0 -coverxygen==1.5.0 +# +# This file is autogenerated by pip-compile +# To update, run: +# +# pip-compile requirements.in +# +alabaster==0.7.12 + # via sphinx +attrs==20.3.0 + # via markdown-it-py +babel==2.9.0 + # via sphinx +beautifulsoup4==4.9.3 + # via bs4 breathe==4.22.1 + # via + # -r requirements.in + # exhale +bs4==0.0.1 + # via exhale +certifi==2020.12.5 + # via requests +chardet==4.0.0 + # via requests +coverxygen==1.5.0 + # via -r requirements.in +docutils==0.16 + # via + # breathe + # myst-parser + # sphinx +exhale==0.2.3 + # via -r requirements.in +idna==2.10 + # via requests +imagesize==1.2.0 + # via sphinx +jinja2==2.11.3 + # via sphinx +lxml==4.6.2 + # via exhale +markdown-it-py==0.5.8 + # via myst-parser +markupsafe==1.1.1 + # via jinja2 myst-parser==0.12.9 + # via -r requirements.in +packaging==20.9 + # via sphinx +pygments==2.8.0 + # via sphinx +pyparsing==2.4.7 + # via packaging +pytz==2021.1 + # via babel +pyyaml==5.4.1 + # via myst-parser +requests==2.25.1 + # via sphinx +six==1.15.0 + # via + # breathe + # exhale +snowballstemmer==2.1.0 + # via sphinx +soupsieve==2.2 + # via beautifulsoup4 +sphinx-rtd-theme==0.5.0 + # via -r requirements.in +sphinx==3.2.1 + # via + # -r requirements.in + # breathe + # exhale + # myst-parser + # sphinx-rtd-theme +sphinxcontrib-applehelp==1.0.2 + # via sphinx +sphinxcontrib-devhelp==1.0.2 + # via sphinx +sphinxcontrib-htmlhelp==1.0.3 + # via sphinx +sphinxcontrib-jsmath==1.0.1 + # via sphinx +sphinxcontrib-qthelp==1.0.3 + # via sphinx +sphinxcontrib-serializinghtml==1.1.4 + # via sphinx +urllib3==1.26.3 + # via requests + +# The following packages are considered to be unsafe in a requirements file: +# setuptools diff --git a/third-party/requirements.in b/third-party/requirements.in new file mode 100644 index 0000000000..4baa1edc4e --- /dev/null +++ b/third-party/requirements.in @@ -0,0 +1,3 @@ +gcovr +diff +cookiecutter diff --git a/third-party/requirements.txt b/third-party/requirements.txt index 4baa1edc4e..399f810dbc 100644 --- a/third-party/requirements.txt +++ b/third-party/requirements.txt @@ -1,3 +1,62 @@ -gcovr -diff -cookiecutter +# +# This file is autogenerated by pip-compile +# To update, run: +# +# pip-compile requirements.in +# +arrow==0.17.0 + # via jinja2-time +attrs==20.3.0 + # via diff +binaryornot==0.4.4 + # via cookiecutter +certifi==2020.12.5 + # via requests +chardet==4.0.0 + # via + # binaryornot + # requests +click==7.1.2 + # via cookiecutter +cookiecutter==1.7.2 + # via -r requirements.in +diff==0.6.1 + # via -r requirements.in +gcovr==4.2 + # via -r requirements.in +idna==2.10 + # via requests +jinja2-time==0.2.0 + # via cookiecutter +jinja2==2.11.3 + # via + # cookiecutter + # gcovr + # jinja2-time +lxml==4.6.2 + # via gcovr +markupsafe==1.1.1 + # via + # cookiecutter + # jinja2 +poyo==0.5.0 + # via cookiecutter +python-dateutil==2.8.1 + # via arrow +python-slugify==4.0.1 + # via cookiecutter +requests==2.25.1 + # via cookiecutter +six==1.15.0 + # via + # cookiecutter + # python-dateutil +text-unidecode==1.3 + # via python-slugify +urllib3==1.26.3 + # via requests +zope.interface==5.2.0 + # via diff + +# The following packages are considered to be unsafe in a requirements file: +# setuptools From 05beef757ec0dab02b413aacf02bba3aaa3f5ec7 Mon Sep 17 00:00:00 2001 From: Katherine Date: Tue, 23 Feb 2021 19:19:33 +0000 Subject: [PATCH 038/228] Add X11 Display logic to decide Native vs Emscripten --- include/emp/web/Canvas.hpp | 4 +++- tests/native/Canvas.cpp | 7 +++++-- tests/native/Makefile | 5 +++-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/include/emp/web/Canvas.hpp b/include/emp/web/Canvas.hpp index 4e5902fab4..a729154b61 100644 --- a/include/emp/web/Canvas.hpp +++ b/include/emp/web/Canvas.hpp @@ -16,8 +16,10 @@ #include "_EmscriptenCanvas.hpp" -#else // #ifdef __EMSCRIPTEN__ +// https://stackoverflow.com/questions/4102351/test-for-empty-macro-definition/4127073#4127073 +#elif __has_include() && (!defined(EMP_HAS_X11) || (EMP_HAS_X11 == 1)) +#define EMP_NATIVE_SUPPORT #include "_NativeCanvas.hpp" #endif // #ifdef __EMSCRIPTEN__ diff --git a/tests/native/Canvas.cpp b/tests/native/Canvas.cpp index b672293bc0..7d9da4e0de 100644 --- a/tests/native/Canvas.cpp +++ b/tests/native/Canvas.cpp @@ -2,8 +2,9 @@ #include "third-party/Catch/single_include/catch2/catch.hpp" -#include "emp/web/_NativeCanvas.hpp" +#include "emp/web/Canvas.hpp" +#ifdef EMP_NATIVE_SUPPORT TEST_CASE("Test Circle Locations", "[native]") { @@ -164,6 +165,8 @@ TEST_CASE("Test CenterText Locations", "[native]") { canvas.CenterText(220, 440, "bottom middle"); canvas.CenterText(420, 440, "bottom right"); - canvas.SavePNG("centertext_location.png"); + canvas.SavePNG("test_centertext_location.png"); } + +#endif diff --git a/tests/native/Makefile b/tests/native/Makefile index ac23066f74..11b2f684f5 100644 --- a/tests/native/Makefile +++ b/tests/native/Makefile @@ -1,7 +1,8 @@ -TEST_NAMES = CanvasShape Canvas +TEST_NAMES = CanvasShape Canvas CanvasImages # -O3 -Wl,--stack,8388608 -ftrack-macro-expansion=0 -FLAGS = -std=c++17 -pthread -Wall -Wno-unused-function -Wno-unused-private-field -I../../include/ -I../../ -I../../third-party/cereal/include/ +DISPLAY_ENV := ${DISPLAY} +FLAGS = -std=c++17 -pthread -Wall -Wno-unused-function -Wno-unused-private-field -I../../include/ -I../../ -I../../third-party/cereal/include/ -DEMP_HAS_X11=$(shell if test -z "${DISPLAY_ENV}" ; then echo 0; else echo 1; fi) default: test From c87f0e8aa34b6f504badfd57be5ff59bb5ff599d Mon Sep 17 00:00:00 2001 From: Katherine Date: Tue, 23 Feb 2021 19:23:16 +0000 Subject: [PATCH 039/228] Create temporary test pngs to compare in CanvasImages.cpp --- tests/native/Canvas.cpp | 33 +++++++++++++++++---------------- tests/native/Makefile | 1 + 2 files changed, 18 insertions(+), 16 deletions(-) diff --git a/tests/native/Canvas.cpp b/tests/native/Canvas.cpp index 7d9da4e0de..88c9727d15 100644 --- a/tests/native/Canvas.cpp +++ b/tests/native/Canvas.cpp @@ -17,7 +17,7 @@ TEST_CASE("Test Circle Locations", "[native]") { canvas.Circle(230, 440, 20); canvas.Circle(440, 440, 20); - canvas.SavePNG("circle_location.png"); + canvas.SavePNG("test_circle_location.png"); } @@ -32,7 +32,7 @@ TEST_CASE("Test Circle Locations By Point", "[native]") { canvas.Circle(emp::Point(250,460), 20); canvas.Circle(emp::Point(460,460), 20); - canvas.SavePNG("circle_location2.png"); + canvas.SavePNG("test_circle_location2.png"); } @@ -49,8 +49,8 @@ TEST_CASE("Test Circle Colors", "[native]") { canvas.Circle(80, 120, 20, "red", "black"); canvas.Circle(140, 120, 20, "yellow", "black"); canvas.Circle(200, 120, 20, "blue", "black"); - - canvas.SavePNG("circle_color.png"); + + canvas.SavePNG("test_circle_color.png"); } @@ -62,7 +62,8 @@ TEST_CASE("Test Circle Size", "[native]") { canvas.Circle(60, 65, 25); canvas.Circle(140, 40, 50); canvas.Circle(300, 15, 75); - canvas.SavePNG("circle_size.png"); + + canvas.SavePNG("test_circle_size.png"); } @@ -75,8 +76,7 @@ TEST_CASE("Test Circle Thickness", "[native]") { canvas.Circle(140, 40, 20, "white", "black", 5); canvas.Circle(200, 40, 20, "white", "black", 7); - - canvas.SavePNG("circle_thickness.png"); + canvas.SavePNG("test_circle_thickness.png"); } @@ -90,8 +90,8 @@ TEST_CASE("Test Rectangle Locations", "[native]") { canvas.Rect(20, 440, 20, 30); canvas.Rect(230, 440, 20, 30); canvas.Rect(440, 440, 20, 30); - - canvas.SavePNG("rect_location.png"); + + canvas.SavePNG("test_rect_location.png"); } @@ -107,8 +107,8 @@ TEST_CASE("Test Rectangle Colors", "[native]") { canvas.Rect(160, 80, 20, 30, "red", "black"); canvas.Rect(300, 80, 20, 30, "yellow", "black"); canvas.Rect(440, 80, 20, 30, "blue", "black"); - - canvas.SavePNG("rect_color.png"); + + canvas.SavePNG("test_rect_color.png"); } @@ -120,7 +120,8 @@ TEST_CASE("Test Rectangle Size/Thickness", "[native]") { canvas.Rect(60, 65, 30, 25, "white", "black", 3); canvas.Rect(140, 40, 55, 50, "white", "black", 5); canvas.Rect(300, 15, 80, 75, "white", "black", 7); - canvas.SavePNG("rect_size_thick.png"); + + canvas.SavePNG("test_rect_size.png"); } @@ -135,8 +136,8 @@ TEST_CASE("Test Text Locations", "[native]") { canvas.Text(20, 440, "bottom left"); canvas.Text(220, 440, "bottom middle"); canvas.Text(420, 440, "bottom right"); - - canvas.SavePNG("text_location.png"); + + canvas.SavePNG("test_text_location.png"); } @@ -149,8 +150,8 @@ TEST_CASE("Test Text Color", "[native]") { canvas.Text(60, 120, "red", "red", "black", 20); canvas.Text(60, 160, "yellow", "yellow", "black", 20); canvas.Text(60, 200, "blue", "blue", "black", 20); - - canvas.SavePNG("text_color.png"); + + canvas.SavePNG("test_text_color.png"); } diff --git a/tests/native/Makefile b/tests/native/Makefile index 11b2f684f5..b8ea248e65 100644 --- a/tests/native/Makefile +++ b/tests/native/Makefile @@ -51,6 +51,7 @@ cranky: test-prep $(addprefix test-, $(TEST_NAMES)) clean: rm -f *.out rm -f *.o + rm -f test_*.png rm -f *.gcda rm -f *.gcno rm -f *.info From 4ae9590eb322a3ed24d3f3cda03bf3499f7babb5 Mon Sep 17 00:00:00 2001 From: Katherine Date: Tue, 23 Feb 2021 19:26:16 +0000 Subject: [PATCH 040/228] Create CanvasImages.cpp to do png comparison tests --- tests/native/CanvasImages.cpp | 62 +++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 tests/native/CanvasImages.cpp diff --git a/tests/native/CanvasImages.cpp b/tests/native/CanvasImages.cpp new file mode 100644 index 0000000000..a6c63d41d3 --- /dev/null +++ b/tests/native/CanvasImages.cpp @@ -0,0 +1,62 @@ +/* + / This test compares the pngs generated in Canvas.cpp + / to avoid a weird order-based SIGABRT that occured + / while doing the comparisons in the same file. +*/ +#define CATCH_CONFIG_MAIN +#include "third-party/Catch/single_include/catch2/catch.hpp" + + +#include "emp/web/Canvas.hpp" + +#ifdef EMP_NATIVE_SUPPORT + + +TEST_CASE("Test Images MSE", "[native]") { + std::string command = "python3 compare_images.py -f circle_location.png -s test_circle_location.png"; + int success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f circle_location2.png -s test_circle_location2.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f circle_color.png -s test_circle_color.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f circle_size.png -s test_circle_size.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f circle_thickness.png -s test_circle_thickness.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f rect_location.png -s test_rect_location.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f rect_color.png -s test_rect_color.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f rect_size_thick.png -s test_rect_size.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f text_location.png -s test_text_location.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f text_color.png -s test_text_color.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + + command = "python3 compare_images.py -f centertext_location.png -s test_centertext_location.png"; + success = std::system( command.c_str() ); + REQUIRE(success == 0); + +} + +#endif From c62b3f9aabbefe77a6ea88d84ac7b73aa6fd699b Mon Sep 17 00:00:00 2001 From: Katherine Date: Tue, 23 Feb 2021 19:29:28 +0000 Subject: [PATCH 041/228] Add X11 logic to CanvasShape.hpp --- include/emp/web/CanvasShape.hpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/emp/web/CanvasShape.hpp b/include/emp/web/CanvasShape.hpp index 355a92bdb0..6ddd2aace3 100644 --- a/include/emp/web/CanvasShape.hpp +++ b/include/emp/web/CanvasShape.hpp @@ -16,7 +16,8 @@ #include "_EmscriptenCanvasShape.hpp" -#else // #ifdef __EMSCRIPTEN__ +// https://stackoverflow.com/questions/4102351/test-for-empty-macro-definition/4127073#4127073 +#elif __has_include() && (!defined(EMP_HAS_X11) || (EMP_HAS_X11 == 1)) #include "_NativeCanvasShape.hpp" From 1c2e3e44388b13fc3f7a79968111808e30d657db Mon Sep 17 00:00:00 2001 From: perryk12 <55548791+perryk12@users.noreply.github.com> Date: Thu, 25 Feb 2021 11:49:43 -0500 Subject: [PATCH 042/228] Add lsfml to github actions --- .github/workflows/CI.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 0d4e963b66..ade1d0d591 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -27,7 +27,7 @@ jobs: submodules: 'recursive' - run: sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test - run: sudo apt-get update -qq - - run: sudo apt-get install -qq g++-8 cmake build-essential python-pip python-virtualenv nodejs tar gzip libpthread-stubs0-dev libc6-dbg gdb + - run: sudo apt-get install -qq g++-8 cmake build-essential python-pip python-virtualenv nodejs tar gzip libpthread-stubs0-dev libsfml-dev libc6-dbg gdb - run: sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 90 - run: git fetch origin master:refs/remotes/origin/master - run: make install-test-dependencies From d27e539321320c6255b14cd432d14f53061ec94a Mon Sep 17 00:00:00 2001 From: perryk12 <55548791+perryk12@users.noreply.github.com> Date: Thu, 25 Feb 2021 12:44:28 -0500 Subject: [PATCH 043/228] Start X11 server and DISPLAY in github actions --- .github/workflows/CI.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index ade1d0d591..e14f9e7d30 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -27,8 +27,12 @@ jobs: submodules: 'recursive' - run: sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test - run: sudo apt-get update -qq - - run: sudo apt-get install -qq g++-8 cmake build-essential python-pip python-virtualenv nodejs tar gzip libpthread-stubs0-dev libsfml-dev libc6-dbg gdb + - run: sudo apt-get install -qq g++-8 cmake build-essential python-pip python-virtualenv nodejs tar gzip libpthread-stubs0-dev libsfml-dev xvfb libc6-dbg gdb - run: sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 90 + - run: export DISPLAY=":$$" + - run: rm -f "/tmp/.X$$-lock" + - run: Xvfb "${DISPLAY}" -auth /dev/null/ & + - run: export XVFB_PID=$! - run: git fetch origin master:refs/remotes/origin/master - run: make install-test-dependencies - run: ${CXX} --version From 97d7cc5b1cefe4f32a92babc0266cd04ca1bf796 Mon Sep 17 00:00:00 2001 From: Katherine Date: Thu, 25 Feb 2021 18:28:02 +0000 Subject: [PATCH 044/228] Add static assert if emsdk and SFML don't exist --- include/emp/config/config.hpp | 46 +++++++---------------------------- include/emp/web/Canvas.hpp | 3 +++ 2 files changed, 12 insertions(+), 37 deletions(-) diff --git a/include/emp/config/config.hpp b/include/emp/config/config.hpp index 3889bb3772..f94e08810c 100644 --- a/include/emp/config/config.hpp +++ b/include/emp/config/config.hpp @@ -44,7 +44,6 @@ #include #include -#include "../base/assert.hpp" #include "../base/errors.hpp" #include "../base/unordered_map.hpp" #include "../base/vector.hpp" @@ -106,12 +105,6 @@ namespace emp { /// Identify if this setting is fixed at compile time. virtual bool IsConst() const = 0; - - /// Reset this setting to its default. - void Reset(std::stringstream & warnings) { - this->SetValue( GetDefault(), warnings ); - } - }; /// Master configuration class that manages all of the settings. @@ -123,11 +116,10 @@ namespace emp { protected: VAR_TYPE & entry_ref; public: - tConfigEntry(const std::string& _name, const std::string& _type, - const std::string& _d_val, const std::string& _desc, + tConfigEntry(const std::string _name, const std::string _type, + const std::string _d_val, const std::string _desc, VAR_TYPE & _ref) - : ConfigEntry(_name, _type, emp::to_string(_ref), _desc) - , entry_ref(_ref) { ; } + : ConfigEntry(_name, _type, _d_val, _desc), entry_ref(_ref) { ; } ~tConfigEntry() { ; } std::string GetValue() const { return emp::to_string(entry_ref); } @@ -143,11 +135,10 @@ namespace emp { protected: const VAR_TYPE literal_val; public: - tConfigConstEntry(const std::string& _name, const std::string& _type, - const std::string& _d_val, const std::string& _desc, + tConfigConstEntry(const std::string _name, const std::string _type, + const std::string _d_val, const std::string _desc, const VAR_TYPE & _literal_val) - : ConfigEntry(_name, _type, emp::to_string(_literal_val), _desc) - , literal_val(_literal_val) { ; } + : ConfigEntry(_name, _type, _d_val, _desc), literal_val(_literal_val) { ; } ~tConfigConstEntry() { ; } std::string GetValue() const { return default_val; } @@ -167,8 +158,8 @@ namespace emp { /// Special settings entry for settings created during the run (only accissibly dynamically) class ConfigLiveEntry : public ConfigEntry { public: - ConfigLiveEntry(const std::string& _name, const std::string& _type, - const std::string& _d_val, const std::string& _desc) + ConfigLiveEntry(const std::string _name, const std::string _type, + const std::string _d_val, const std::string _desc) : ConfigEntry(_name, _type, _d_val, _desc) { ; } ~ConfigLiveEntry() { ; } @@ -440,25 +431,6 @@ namespace emp { return *this; } - Config & Reset(const std::string& setting_name) { - emp_assert( var_map.count( setting_name ), setting_name ); - var_map[setting_name]->Reset(warnings); - if (!delay_warnings && warnings.rdbuf()->in_avail()) { - emp::NotifyWarning(warnings.str()); - warnings.str(std::string()); // Clear the warnings. - } - return *this; - } - - Config & Reset() { - for (auto& [name, entry] : var_map) entry->Reset(warnings); - if (!delay_warnings && warnings.rdbuf()->in_avail()) { - emp::NotifyWarning(warnings.str()); - warnings.str(std::string()); // Clear the warnings. - } - return *this; - } - std::string operator()(const std::string & setting_name) { return Get(setting_name); } Config & operator()(const std::string & setting_name, const std::string & new_value) { @@ -801,4 +773,4 @@ namespace emp { EMP_WRAP_EACH(EMP_CONFIG__ACCESS, __VA_ARGS__) \ }; -#endif +#endif \ No newline at end of file diff --git a/include/emp/web/Canvas.hpp b/include/emp/web/Canvas.hpp index a729154b61..191f01e0fc 100644 --- a/include/emp/web/Canvas.hpp +++ b/include/emp/web/Canvas.hpp @@ -22,6 +22,9 @@ #define EMP_NATIVE_SUPPORT #include "_NativeCanvas.hpp" +#else +static_assert(false, "Neither Emscripten nor SFML exist"); + #endif // #ifdef __EMSCRIPTEN__ #endif // #ifndef EMP_WEB_CANVAS_HPP From de4aa3c05a81e86704f69ff062c228145e26b303 Mon Sep 17 00:00:00 2001 From: Matthew Andres Moreno Date: Thu, 4 Mar 2021 00:59:58 -0500 Subject: [PATCH 045/228] Implement promote and demote keyname utils --- include/emp/tools/keyname_utils.hpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/include/emp/tools/keyname_utils.hpp b/include/emp/tools/keyname_utils.hpp index e5a920de09..dc67aade55 100644 --- a/include/emp/tools/keyname_utils.hpp +++ b/include/emp/tools/keyname_utils.hpp @@ -111,6 +111,25 @@ namespace emp::keyname { } + inline std::string demote(std::string keyname) { + emp_assert( keyname.find('~') == std::string::npos ); + emp_assert( keyname.find('%') == std::string::npos ); + std::replace( std::begin( keyname ), std::end( keyname ), '+', '~' ); + std::replace( std::begin( keyname ), std::end( keyname ), '=', '%' ); + return keyname; + } + + inline std::string promote(std::string demoted_keyname) { + emp_assert( demoted_keyname.find('+') == std::string::npos ); + emp_assert( demoted_keyname.find('=') == std::string::npos ); + std::replace( + std::begin( demoted_keyname ), std::end( demoted_keyname ), '~', '+' + ); + std::replace( + std::begin( demoted_keyname ), std::end( demoted_keyname ), '%', '=' + ); + return demoted_keyname; + } } From d5dfdf6c2a64e552d0e29382fe35c18cd06783cb Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 4 Mar 2021 13:26:13 -0500 Subject: [PATCH 046/228] Revert bad diffs from "Add static assert if emsdk and SFML don't exist" This partially reverts commit 97d7cc5b1cefe4f32a92babc0266cd04ca1bf796. --- include/emp/config/config.hpp | 46 ++++++++++++++++++++++++++++------- include/emp/web/Canvas.hpp | 2 +- 2 files changed, 38 insertions(+), 10 deletions(-) diff --git a/include/emp/config/config.hpp b/include/emp/config/config.hpp index f94e08810c..3889bb3772 100644 --- a/include/emp/config/config.hpp +++ b/include/emp/config/config.hpp @@ -44,6 +44,7 @@ #include #include +#include "../base/assert.hpp" #include "../base/errors.hpp" #include "../base/unordered_map.hpp" #include "../base/vector.hpp" @@ -105,6 +106,12 @@ namespace emp { /// Identify if this setting is fixed at compile time. virtual bool IsConst() const = 0; + + /// Reset this setting to its default. + void Reset(std::stringstream & warnings) { + this->SetValue( GetDefault(), warnings ); + } + }; /// Master configuration class that manages all of the settings. @@ -116,10 +123,11 @@ namespace emp { protected: VAR_TYPE & entry_ref; public: - tConfigEntry(const std::string _name, const std::string _type, - const std::string _d_val, const std::string _desc, + tConfigEntry(const std::string& _name, const std::string& _type, + const std::string& _d_val, const std::string& _desc, VAR_TYPE & _ref) - : ConfigEntry(_name, _type, _d_val, _desc), entry_ref(_ref) { ; } + : ConfigEntry(_name, _type, emp::to_string(_ref), _desc) + , entry_ref(_ref) { ; } ~tConfigEntry() { ; } std::string GetValue() const { return emp::to_string(entry_ref); } @@ -135,10 +143,11 @@ namespace emp { protected: const VAR_TYPE literal_val; public: - tConfigConstEntry(const std::string _name, const std::string _type, - const std::string _d_val, const std::string _desc, + tConfigConstEntry(const std::string& _name, const std::string& _type, + const std::string& _d_val, const std::string& _desc, const VAR_TYPE & _literal_val) - : ConfigEntry(_name, _type, _d_val, _desc), literal_val(_literal_val) { ; } + : ConfigEntry(_name, _type, emp::to_string(_literal_val), _desc) + , literal_val(_literal_val) { ; } ~tConfigConstEntry() { ; } std::string GetValue() const { return default_val; } @@ -158,8 +167,8 @@ namespace emp { /// Special settings entry for settings created during the run (only accissibly dynamically) class ConfigLiveEntry : public ConfigEntry { public: - ConfigLiveEntry(const std::string _name, const std::string _type, - const std::string _d_val, const std::string _desc) + ConfigLiveEntry(const std::string& _name, const std::string& _type, + const std::string& _d_val, const std::string& _desc) : ConfigEntry(_name, _type, _d_val, _desc) { ; } ~ConfigLiveEntry() { ; } @@ -431,6 +440,25 @@ namespace emp { return *this; } + Config & Reset(const std::string& setting_name) { + emp_assert( var_map.count( setting_name ), setting_name ); + var_map[setting_name]->Reset(warnings); + if (!delay_warnings && warnings.rdbuf()->in_avail()) { + emp::NotifyWarning(warnings.str()); + warnings.str(std::string()); // Clear the warnings. + } + return *this; + } + + Config & Reset() { + for (auto& [name, entry] : var_map) entry->Reset(warnings); + if (!delay_warnings && warnings.rdbuf()->in_avail()) { + emp::NotifyWarning(warnings.str()); + warnings.str(std::string()); // Clear the warnings. + } + return *this; + } + std::string operator()(const std::string & setting_name) { return Get(setting_name); } Config & operator()(const std::string & setting_name, const std::string & new_value) { @@ -773,4 +801,4 @@ namespace emp { EMP_WRAP_EACH(EMP_CONFIG__ACCESS, __VA_ARGS__) \ }; -#endif \ No newline at end of file +#endif diff --git a/include/emp/web/Canvas.hpp b/include/emp/web/Canvas.hpp index 191f01e0fc..5c57e2f965 100644 --- a/include/emp/web/Canvas.hpp +++ b/include/emp/web/Canvas.hpp @@ -17,7 +17,7 @@ #include "_EmscriptenCanvas.hpp" // https://stackoverflow.com/questions/4102351/test-for-empty-macro-definition/4127073#4127073 -#elif __has_include() && (!defined(EMP_HAS_X11) || (EMP_HAS_X11 == 1)) +#elif __has_include() && (!defined(EMP_HAS_X11) || (EMP_HAS_X11 == 1)) #define EMP_NATIVE_SUPPORT #include "_NativeCanvas.hpp" From 76b97a550938eeed7a449cba46d0a8406eab88dd Mon Sep 17 00:00:00 2001 From: Santiago Rodriguez Papa Date: Mon, 8 Mar 2021 20:23:35 -0500 Subject: [PATCH 047/228] Merge branch 'master' of https://github.com/devosoft/Empirical into HEAD --- .github/workflows/CI.yml | 18 +- .gitignore | 9 + Dockerfile | 3 + Makefile | 8 +- README.md | 36 ++- doc/conf.py | 6 +- doc/library/base/base.md | 2 + doc/library/bits/bits.md | 4 + doc/library/compiler/compiler.md | 5 + doc/library/data/data.md | 4 + doc/library/datastructs/datastructs.md | 11 + doc/library/debug/debug.md | 4 + doc/library/functional/functional.md | 4 + doc/library/index.md | 1 + doc/library/io/io.md | 3 + doc/library/math/math.md | 9 + doc/library/testing/testing.md | 1 + doc/library/tools/tools.md | 4 + doc/library/web/web.md | 32 +- doc/parse_documentation_coverage.py | 27 ++ include/emp/Evolve/OEE.hpp | 8 +- include/emp/Evolve/Systematics.hpp | 44 +-- include/emp/Evolve/SystematicsAnalysis.hpp | 4 +- include/emp/Evolve/World.hpp | 300 +++++++++++++++++- include/emp/Evolve/World_output.hpp | 5 +- include/emp/base/MapProxy.hpp | 3 +- include/emp/base/Ptr.hpp | 18 +- include/emp/base/array.hpp | 2 +- include/emp/base/assert_warning.hpp | 8 +- include/emp/bits/BitVector.hpp | 126 +++++++- include/emp/control/Signal.hpp | 2 + include/emp/data/DataFile.hpp | 213 +++++++++---- include/emp/data/DataInterface.hpp | 4 +- include/emp/data/DataManager.hpp | 27 +- include/emp/data/DataNode.hpp | 33 +- .../BloomFilter.hpp} | 133 +++++--- include/emp/datastructs/Graph.hpp | 11 +- include/emp/datastructs/IndexMap.hpp | 10 +- include/emp/datastructs/StringMap.hpp | 2 +- include/emp/datastructs/UnorderedIndexMap.hpp | 10 +- include/emp/datastructs/graph_utils.hpp | 9 +- include/emp/datastructs/hash_utils.hpp | 6 +- include/emp/datastructs/tuple_utils.hpp | 6 +- include/emp/datastructs/vector_utils.hpp | 6 +- include/emp/debug/mem_track.hpp | 2 + include/emp/hardware/EventDrivenGP.hpp | 4 +- include/emp/hardware/InstLib.hpp | 6 +- include/emp/hardware/signalgp_utils.hpp | 5 +- .../emp/in_progress/constexpr/ce_random.hpp | 21 +- include/emp/io/serialize.hpp | 3 +- include/emp/matching/MatchBin.hpp | 3 +- include/emp/matching/_DepositoryEntry.hpp | 2 + include/emp/matching/matchbin_metrics.hpp | 2 + include/emp/math/distances.hpp | 6 +- include/emp/math/math.hpp | 10 +- include/emp/meta/TypeID.hpp | 4 + include/emp/meta/TypePack.hpp | 2 + include/emp/meta/ValPack.hpp | 2 + include/emp/meta/meta.hpp | 24 +- include/emp/meta/reflection.hpp | 6 +- include/emp/meta/type_traits.hpp | 4 +- include/emp/prefab/LoadingModal.hpp | 7 + include/emp/prefab/ToggleSwitch.hpp | 1 + include/emp/tools/attrs.hpp | 13 +- include/emp/tools/hash_namify.hpp | 2 + include/emp/tools/string_utils.hpp | 31 +- include/emp/tools/timing.hpp | 10 + include/emp/web/Button.hpp | 3 +- include/emp/web/Div.hpp | 7 +- include/emp/web/Element.hpp | 1 + include/emp/web/FileInput.hpp | 3 +- include/emp/web/Font.hpp | 47 ++- include/emp/web/Image.hpp | 4 +- include/emp/web/Input.hpp | 16 +- include/emp/web/JSWrap.hpp | 37 ++- include/emp/web/KeypressManager.hpp | 6 +- include/emp/web/RawImage.hpp | 2 + include/emp/web/Selector.hpp | 4 +- include/emp/web/Table.hpp | 4 +- include/emp/web/TextArea.hpp | 3 +- include/emp/web/TextFeed.hpp | 4 +- include/emp/web/Widget.hpp | 28 +- include/emp/web/_EmscriptenCanvas.hpp | 7 +- include/emp/web/_FacetedWidget.hpp | 4 + include/emp/web/_MochaTestRunner.hpp | 16 +- include/emp/web/_TableCell.hpp | 3 + include/emp/web/_TableCol.hpp | 4 + include/emp/web/_TableColGroup.hpp | 4 + include/emp/web/_TableRow.hpp | 4 + include/emp/web/_TableRowGroup.hpp | 4 + include/emp/web/canvas_utils.hpp | 4 +- include/emp/web/d3/d3_init.hpp | 2 + include/emp/web/d3/visual_elements.hpp | 2 + include/emp/web/d3/visualizations.hpp | 27 +- include/emp/web/init.hpp | 32 +- include/emp/web/js_utils.hpp | 53 +++- tests/Evolve/Makefile | 2 +- tests/Evolve/World.cpp | 99 +++++- tests/Evolve/bloom_filter.cpp | 9 - tests/Makefile | 8 +- tests/bits/BitVector.cpp | 156 ++++++++- tests/datastructs/BloomFilter.cpp | 56 ++++ tests/datastructs/Makefile | 2 +- tests/tools/string_utils.cpp | 2 +- tests/web/Makefile | 45 ++- tests/web/js_utils.cpp | 28 ++ 106 files changed, 1697 insertions(+), 396 deletions(-) create mode 100644 doc/parse_documentation_coverage.py rename include/emp/{Evolve/bloom_filter.hpp => datastructs/BloomFilter.hpp} (80%) delete mode 100644 tests/Evolve/bloom_filter.cpp create mode 100644 tests/datastructs/BloomFilter.cpp diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index e14f9e7d30..93a4f6e960 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -8,7 +8,7 @@ on: jobs: test: name: Tests - runs-on: ubuntu-16.04 + runs-on: ubuntu-latest strategy: matrix: cxx: [clang++, g++] @@ -41,7 +41,7 @@ jobs: make ${TEST_SET} CXX=${CXX} test-web: name: Web Tests - runs-on: ubuntu-16.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: @@ -55,7 +55,7 @@ jobs: run: make test-web test-coverage: name: Measure Test Coverage - runs-on: ubuntu-16.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: @@ -78,7 +78,7 @@ jobs: - run: curl -s https://codecov.io/bash | bash test-documentation: name: Test Documentation Build - runs-on: ubuntu-16.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: @@ -86,10 +86,16 @@ jobs: - uses: docker-practice/actions-setup-docker@v1 - run: docker build -t devosoft/empirical . - run: docker ps -a - - run: sudo docker run devosoft/empirical /bin/bash -c "cd /opt/Empirical/doc && make html coverage | ./headtail.sh" + - run: sudo docker run --name empirical devosoft/empirical /bin/bash -c "set -o pipefail && cd /opt/Empirical/doc && make html coverage | ./headtail.sh && python /opt/Empirical/doc/parse_documentation_coverage.py /opt/Empirical/doc/_build/doc-coverage.json >> /opt/Empirical/doc-coverage.json" + - run: sudo docker cp empirical:/opt/Empirical/doc-coverage.json . + - uses: sylvanld/action-storage@v1 + if: github.ref == 'refs/heads/master' + with: + src: doc-coverage.json + dst: stats/doc-coverage.json deploy-dockerhub: name: Deploy to DockerHub - runs-on: ubuntu-16.04 + runs-on: ubuntu-latest if: github.ref == 'refs/heads/master' needs: - test diff --git a/.gitignore b/.gitignore index 1f6b392483..e8e2e5a013 100644 --- a/.gitignore +++ b/.gitignore @@ -32,6 +32,15 @@ tmp/ .vscode/ +*/*/coverage_cov* +coverage_source/*/* +*/*/default.profraw +*/*/default.profdata + +doc/api +doc/doxyoutput +doc/_build + demos/Avida/Avida demos/Avida/web/Avida.js demos/Emphatic/Emphatic diff --git a/Dockerfile b/Dockerfile index 91f57daa23..8038bed64e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -86,6 +86,9 @@ RUN \ vim \ nano \ wget \ + ssh-client \ + libasound2 \ + gpg-agent \ && \ apt-get clean \ && \ diff --git a/Makefile b/Makefile index 59cdc8cd64..be3efaa5fd 100644 --- a/Makefile +++ b/Makefile @@ -3,9 +3,6 @@ clean clean-dep test: test-native test-examples test-web - make test-native - make test-examples - make test-web test-examples: test-native-examples test-web-examples @@ -28,7 +25,7 @@ test-web-examples: cd examples && make web-test test-web: - cd tests && make test-web + cd tests && make test-web-js ../cookiecutter-empirical-project: cd .. && git clone --recursive https://github.com/devosoft/cookiecutter-empirical-project.git @@ -56,7 +53,8 @@ install-coverage-dependencies: cd third-party && make install-coverage-dependencies clean: - rm -rf build/* + cd docs && make clean cd tests && make clean + clean-dep: cd third-party && make clean diff --git a/README.md b/README.md index 4a68c7ca33..b1a52869d4 100644 --- a/README.md +++ b/README.md @@ -6,16 +6,17 @@ is simple to incorporate into existing projects. [![CI](https://github.com/devosoft/Empirical/workflows/CI/badge.svg)](https://github.com/devosoft/Empirical/actions?query=workflow%3ACI+branch%3Amaster) [![Documentation Status](https://readthedocs.org/projects/empirical/badge/?version=latest)](https://empirical.readthedocs.io/en/latest/?badge=latest) [![DOI](https://zenodo.org/badge/24824563.svg)](https://zenodo.org/badge/latestdoi/24824563) [![codecov](https://codecov.io/gh/devosoft/Empirical/branch/master/graph/badge.svg)](https://codecov.io/gh/devosoft/Empirical) [![DockerHub](https://img.shields.io/badge/DockerHub-Hosted-blue)](https://hub.docker.com/r/devosoft/empirical) - +![Documentation Coverage](https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fdevosoft%2FEmpirical%2Fgh-storage%2Fstats%2Fdoc-coverage.json) See our [Built With Empirical Gallery](https://empirical.readthedocs.io/en/latest/BuiltWithEmpiricalGallery) for examples of web tools built with Empirical. See our [Quick Start Guides](https://empirical.readthedocs.io/en/latest/QuickStartGuides) to start using the library. Starting out on a new project that will use Empirical? -Take a look at the [cookiecutter Empirical project template](https://github.com/devosoft/cookiecutter-empirical-project) for automarically setting up a directory structure with all the files you need to get started -- step-by-step instructions included! +Take a look at the [cookiecutter Empirical project template](https://github.com/devosoft/cookiecutter-empirical-project) for automatically setting up a directory structure with all the files you need to get started -- step-by-step instructions included! Tools in Empirical include: + * Web-enabled elements to facilitate compiling to JavaScript and with a full web interfaces, using Mozilla's Emscripten compiler (from C++ to high-efficiency JavaScript). * Debug tools to facilitate audited memory management; these tools are turned off outside of @@ -28,39 +29,47 @@ Tools in Empirical include: * A signal-action system that allows for efficient customization of tools, and flexible software that can easily facilitate plug-in functionality. -See https://empirical.readthedocs.io/en/latest for more detailed documentation +See for more detailed documentation on the available source files. # Directory Structure | Folder | Description | ------------ | ---- -| apps/ | mini projects using Empirical with broad utility +| demos/ | examples of mini projects using Empirical | doc/ | Documentation files (including for auto generation of docs) | examples/ | Example code for many of the above tools (sub-directory structure parallels source/) +| include/ | Header files that make up the Empirical library (see below for details) | Planning/ | Scattered notes about future development (most notes found in GitHub issue tracker) -| source/ | Header files that make up the Empirical library (see below for details) | tests/ | Unit tests | third-party/ | Non-empirical dependencies - -# Sub-folders in source/ directory +# Sub-folders in include/emp directory | Sub-Folder | Description | ----------- | ---- | base/ | Debug tools used throughout Empirical for fast and efficient memory management +| bits/ | Tools for conveniently and efficiently working with bit representations | config/ | Tools to build a simple configuration system (including compile-time optimizations) -| control/ | Signialing tools allowing for fast and dynamic interaction across components +| control/ | Signaling tools allowing for fast and dynamic interaction across components +| compiler/ | Components for compiling code | data/ | Tools for easy data management and output +| datastructs/| A variety of useful data structures and tools for using data structures +| debug/ | Tools to facilitate debugging (particularly of emscripten-generated web code) +| functional/ | Tools for handling functions, sets of functions, and memoization +| games/ | Implementations of simple games | geometry/ | Geometry and physics-based tools for implementing simple virtual worlds | hardware/ | Implementation of basic virtual hardware that is easy to configure +| io/ | Tools for handling input/output +| matching/ | Tools for tag-based matching +| math/ | Generally useful tools for math and randomness | meta/ | Helpful tools for template meta-programming +| prefab/ | Prefabricated web elements to drop onto web pages | scholar/ | Tools for tracking authors, citations, and bibliographies -| tools/ | Many basic tools that are generally useful for scientific software -| web/ | Tools for building web interfaces -| Evolve/ | Specialized tools for building Artificial Life or Evolutionary Computation projects -| in_progress/ | Tools that are being worked on, but not at all ready for public consumption - +| tools/ | Basic tools that are generally useful for scientific software +| web/ | Tools for building web interfaces (more low-level than in prefab) +| Evolve/ | Specialized tools for building Artificial Life or Evolutionary Computation projects +| in_progress/| Tools that are being worked on, but not at all ready for public consumption # Development Status @@ -81,7 +90,6 @@ following statuses: | DEPRECATED | Functionality has been replaced and should shift to replacement. | EXTERNAL | Part of another project (cited above); not developed as part of Empirical - # Levelization The structure of Empirical is levelized to facilitate development and testing. This means diff --git a/doc/conf.py b/doc/conf.py index 5ba71ac30d..2648efc477 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -34,7 +34,6 @@ extensions = [ 'sphinx.ext.autodoc', 'sphinx.ext.viewcode', - 'sphinx.ext.coverage', 'sphinx.ext.mathjax', 'sphinx.ext.todo', 'sphinx_rtd_theme', @@ -104,7 +103,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # This patterns also effect to html_static_path and html_extra_path -exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store', 'docsvenv'] +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store', 'docsvenv', 'in_progress'] # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' @@ -133,7 +132,7 @@ # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] - +html_copy_source = False # -- Options for HTMLHelp output --------------------------------------- # Output file base name for HTML help builder. @@ -206,3 +205,4 @@ import sphinx_rtd_theme html_theme = 'sphinx_rtd_theme' html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] + extensions.append('sphinx.ext.coverage') diff --git a/doc/library/base/base.md b/doc/library/base/base.md index 1e895a5249..14e7d327fe 100644 --- a/doc/library/base/base.md +++ b/doc/library/base/base.md @@ -69,11 +69,13 @@ trigger an assertion error and print the value of a. ```{eval-rst} .. doxygendefine:: emp_assert :project: Empirical + :no-link: ``` ```{eval-rst} .. doxygendefine:: emp_emscripten_assert :project: Empirical + :no-link: ``` ## Empirical pointers diff --git a/doc/library/bits/bits.md b/doc/library/bits/bits.md index 02191332bc..4c26d65af6 100644 --- a/doc/library/bits/bits.md +++ b/doc/library/bits/bits.md @@ -5,6 +5,7 @@ ```{eval-rst} .. doxygenfile:: emp/bits/BitMatrix.hpp :project: Empirical + :no-link: ``` ## BitSet @@ -12,6 +13,7 @@ ```{eval-rst} .. doxygenfile:: emp/bits/BitSet.hpp :project: Empirical + :no-link: ``` ## BitSet Utilities @@ -19,6 +21,7 @@ ```{eval-rst} .. doxygenfile:: emp/bits/bitset_utils.hpp :project: Empirical + :no-link: ``` ## BitVector @@ -26,4 +29,5 @@ ```{eval-rst} .. doxygenfile:: emp/bits/BitVector.hpp :project: Empirical + :no-link: ``` \ No newline at end of file diff --git a/doc/library/compiler/compiler.md b/doc/library/compiler/compiler.md index 34fed3ba08..1830e1affc 100644 --- a/doc/library/compiler/compiler.md +++ b/doc/library/compiler/compiler.md @@ -5,6 +5,7 @@ ```{eval-rst} .. doxygenfile:: emp/compiler/DFA.hpp :project: Empirical + :no-link: ``` ## Lexer Utilities @@ -12,6 +13,7 @@ ```{eval-rst} .. doxygenfile:: emp/compiler/lexer_utils.hpp :project: Empirical + :no-link: ``` ## Lexer @@ -19,6 +21,7 @@ ```{eval-rst} .. doxygenfile:: emp/compiler/Lexer.hpp :project: Empirical + :no-link: ``` ## NonDeterministic Finite Automata @@ -26,6 +29,7 @@ ```{eval-rst} .. doxygenfile:: emp/compiler/NFA.hpp :project: Empirical + :no-link: ``` ## Regular Expressions @@ -33,4 +37,5 @@ ```{eval-rst} .. doxygenfile:: emp/compiler/RegEx.hpp :project: Empirical + :no-link: ``` \ No newline at end of file diff --git a/doc/library/data/data.md b/doc/library/data/data.md index 3c88f5e121..c9812a6cb3 100644 --- a/doc/library/data/data.md +++ b/doc/library/data/data.md @@ -34,6 +34,7 @@ for collecting data over the course of a computational experiment. ```{eval-rst} .. doxygenfile:: emp/data/DataNode.hpp :project: Empirical + :no-link: ``` ### DataManagers @@ -41,6 +42,7 @@ for collecting data over the course of a computational experiment. ```{eval-rst} .. doxygenfile:: emp/data/DataManager.hpp :project: Empirical + :no-link: ``` ### DataInterfaces @@ -48,6 +50,7 @@ for collecting data over the course of a computational experiment. ```{eval-rst} .. doxygenfile:: emp/data/DataInterface.hpp :project: Empirical + :no-link: ``` ### DataFiles @@ -55,5 +58,6 @@ for collecting data over the course of a computational experiment. ```{eval-rst} .. doxygenfile:: emp/data/DataFile.hpp :project: Empirical + :no-link: ``` diff --git a/doc/library/datastructs/datastructs.md b/doc/library/datastructs/datastructs.md index bdc5673baf..496592e9eb 100644 --- a/doc/library/datastructs/datastructs.md +++ b/doc/library/datastructs/datastructs.md @@ -5,6 +5,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/Cache.hpp :project: Empirical + :no-link: ``` ## Dynamic Strings @@ -12,6 +13,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/DynamicString.hpp :project: Empirical + :no-link: ``` ## Graph Utilities @@ -19,6 +21,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/graph_utils.hpp :project: Empirical + :no-link: ``` ## Graphs @@ -26,6 +29,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/Graph.hpp :project: Empirical + :no-link: ``` ## Index Map @@ -33,6 +37,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/IndexMap.hpp :project: Empirical + :no-link: ``` ## Map Utilities @@ -40,6 +45,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/map_utils.hpp :project: Empirical + :no-link: ``` ## RandomAccess Set @@ -47,6 +53,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/ra_set.hpp :project: Empirical + :no-link: ``` ## Set Utilities @@ -54,6 +61,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/set_utils.hpp :project: Empirical + :no-link: ``` ## Tuple Struct @@ -61,6 +69,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/tuple_struct.hpp :project: Empirical + :no-link: ``` ## Tuple Utilities @@ -68,6 +77,7 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/tuple_utils.hpp :project: Empirical + :no-link: ``` ## Vector Utilities @@ -75,4 +85,5 @@ ```{eval-rst} .. doxygenfile:: emp/datastructs/vector_utils.hpp :project: Empirical + :no-link: ``` \ No newline at end of file diff --git a/doc/library/debug/debug.md b/doc/library/debug/debug.md index d86c2b7468..8998931d37 100644 --- a/doc/library/debug/debug.md +++ b/doc/library/debug/debug.md @@ -5,6 +5,7 @@ ```{eval-rst} .. doxygenfile:: emp/debug/alert.hpp :project: Empirical + :no-link: ``` ## Debugging Tools @@ -12,6 +13,7 @@ ```{eval-rst} .. doxygenfile:: emp/debug/debug.hpp :project: Empirical + :no-link: ``` ## Errors @@ -19,6 +21,7 @@ ```{eval-rst} .. doxygenfile:: emp/debug/errors.hpp :project: Empirical + :no-link: ``` ## Memory Tracking @@ -26,4 +29,5 @@ ```{eval-rst} .. doxygenfile:: emp/debug/mem_track.hpp :project: Empirical + :no-link: ``` \ No newline at end of file diff --git a/doc/library/functional/functional.md b/doc/library/functional/functional.md index 11e4ba7307..6d93a4b959 100644 --- a/doc/library/functional/functional.md +++ b/doc/library/functional/functional.md @@ -5,6 +5,7 @@ ```{eval-rst} .. doxygenfile:: tools/flex_function.hpp :project: Empirical + :no-link: ``` ## Function Sets @@ -12,6 +13,7 @@ ```{eval-rst} .. doxygenfile:: emp/functional/FunctionSet.hpp :project: Empirical + :no-link: ``` ## Generic Functions @@ -19,6 +21,7 @@ ```{eval-rst} .. doxygenfile:: emp/functional/GenericFunctions.hpp :project: Empirical + :no-link: ``` ## Memoized Functions @@ -26,5 +29,6 @@ ```{eval-rst} .. doxygenfile:: emp/functional/memo_functions.hpp :project: Empirical + :no-link: ``` diff --git a/doc/library/index.md b/doc/library/index.md index 1cb962328d..e072b1036f 100644 --- a/doc/library/index.md +++ b/doc/library/index.md @@ -14,6 +14,7 @@ debug/debug functional/functional io/io math/math +prefab/prefab testing/testing tools/tools web/web diff --git a/doc/library/io/io.md b/doc/library/io/io.md index e4bd119365..c133920b3e 100644 --- a/doc/library/io/io.md +++ b/doc/library/io/io.md @@ -5,6 +5,7 @@ ```{eval-rst} .. doxygenfile:: emp/io/File.hpp :project: Empirical + :no-link: ``` ## Serialization Macros @@ -12,6 +13,7 @@ ```{eval-rst} .. doxygenfile:: emp/io/serialize_macros.hpp :project: Empirical + :no-link: ``` ## Serialization Tools @@ -19,4 +21,5 @@ ```{eval-rst} .. doxygenfile:: emp/io/serialize.hpp :project: Empirical + :no-link: ``` diff --git a/doc/library/math/math.md b/doc/library/math/math.md index e5dc9d55d2..0a7b54df64 100644 --- a/doc/library/math/math.md +++ b/doc/library/math/math.md @@ -5,6 +5,7 @@ ```{eval-rst} .. doxygenfile:: emp/math/combos.hpp :project: Empirical + :no-link: ``` ## Constants @@ -12,6 +13,7 @@ ```{eval-rst} .. doxygenfile:: emp/math/constants.hpp :project: Empirical + :no-link: ``` ## Information Theory Tools @@ -19,6 +21,7 @@ ```{eval-rst} .. doxygenfile:: emp/math/info_theory.hpp :project: Empirical + :no-link: ``` ## Math @@ -26,6 +29,7 @@ ```{eval-rst} .. doxygenfile:: emp/math/math.hpp :project: Empirical + :no-link: ``` ## Randomness Utilites @@ -33,6 +37,7 @@ ```{eval-rst} .. doxygenfile:: emp/math/random_utils.hpp :project: Empirical + :no-link: ``` ## Random Number Generator @@ -40,6 +45,7 @@ ```{eval-rst} .. doxygenfile:: emp/math/Random.hpp :project: Empirical + :no-link: ``` ## Range @@ -47,6 +53,7 @@ ```{eval-rst} .. doxygenfile:: emp/math/Range.hpp :project: Empirical + :no-link: ``` ## Sequence Utilities @@ -54,6 +61,7 @@ ```{eval-rst} .. doxygenfile:: emp/math/sequence_utils.hpp :project: Empirical + :no-link: ``` ## Statistics Tools @@ -61,4 +69,5 @@ ```{eval-rst} .. doxygenfile:: emp/math/stats.hpp :project: Empirical + :no-link: ``` \ No newline at end of file diff --git a/doc/library/testing/testing.md b/doc/library/testing/testing.md index 76d05164ec..e041cac54e 100644 --- a/doc/library/testing/testing.md +++ b/doc/library/testing/testing.md @@ -5,4 +5,5 @@ ```{eval-rst} .. doxygenfile:: emp/testing/unit_tests.hpp :project: Empirical + :no-link: ``` \ No newline at end of file diff --git a/doc/library/tools/tools.md b/doc/library/tools/tools.md index 419b65ba57..9531d9a11e 100644 --- a/doc/library/tools/tools.md +++ b/doc/library/tools/tools.md @@ -5,6 +5,7 @@ ```{eval-rst} .. doxygenfile:: emp/tools/timing.hpp :project: Empirical + :no-link: ``` ## Branch and Bound Solution States @@ -12,6 +13,7 @@ ```{eval-rst} .. doxygenfile:: emp/tools/SolveState.hpp :project: Empirical + :no-link: ``` ## String Utilities @@ -19,6 +21,7 @@ ```{eval-rst} .. doxygenfile:: emp/tools/string_utils.hpp :project: Empirical + :no-link: ``` ## Type Tracker @@ -26,4 +29,5 @@ ```{eval-rst} .. doxygenfile:: emp/tools/TypeTracker.hpp :project: Empirical + :no-link: ``` diff --git a/doc/library/web/web.md b/doc/library/web/web.md index cd018aac21..625c0cb07a 100644 --- a/doc/library/web/web.md +++ b/doc/library/web/web.md @@ -11,6 +11,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Animate.hpp :project: Empirical + :no-link: ``` ## Attributes @@ -18,6 +19,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Attributes.hpp :project: Empirical + :no-link: ``` ## Buttons @@ -25,6 +27,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Button.hpp :project: Empirical + :no-link: ``` ## Canvas @@ -32,6 +35,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Canvas.hpp :project: Empirical + :no-link: ``` ## Canvas Utilities @@ -39,6 +43,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/canvas_utils.hpp :project: Empirical + :no-link: ``` ## Canvas Actions @@ -46,6 +51,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/CanvasAction.hpp :project: Empirical + :no-link: ``` ## Canvas Shapes @@ -53,6 +59,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/CanvasShape.hpp :project: Empirical + :no-link: ``` ## Color maps @@ -60,6 +67,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/color_map.hpp :project: Empirical + :no-link: ``` ## Commands @@ -67,6 +75,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/commands.hpp :project: Empirical + :no-link: ``` ## Divs @@ -74,6 +83,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Div.hpp :project: Empirical + :no-link: ``` ## Documents @@ -81,6 +91,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Document.hpp :project: Empirical + :no-link: ``` ## Useful functions for emscripten @@ -88,6 +99,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/emfunctions.hpp :project: Empirical + :no-link: ``` ## Event Handling @@ -95,6 +107,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/events.hpp :project: Empirical + :no-link: ``` ## File Input @@ -102,6 +115,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/FileInput.hpp :project: Empirical + :no-link: ``` ## Font @@ -109,6 +123,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Font.hpp :project: Empirical + :no-link: ``` ## Images @@ -116,6 +131,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Image.hpp :project: Empirical + :no-link: ``` ## Initialization @@ -123,6 +139,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/init.hpp :project: Empirical + :no-link: ``` ## Javascript Utilities @@ -130,6 +147,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/js_utils.hpp :project: Empirical + :no-link: ``` ## JSWrap @@ -137,6 +155,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/JSWrap.hpp :project: Empirical + :no-link: ``` ## Keypress Manager @@ -144,6 +163,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/KeypressManager.hpp :project: Empirical + :no-link: ``` ## Listeners @@ -151,6 +171,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Listeners.hpp :project: Empirical + :no-link: ``` ## Raw Image @@ -158,6 +179,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/RawImage.hpp :project: Empirical + :no-link: ``` ## Selector @@ -165,6 +187,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Selector.hpp :project: Empirical + :no-link: ``` ## Styles @@ -172,6 +195,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Style.hpp :project: Empirical + :no-link: ``` ## Tables @@ -179,6 +203,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Table.hpp :project: Empirical + :no-link: ``` ## Text @@ -186,6 +211,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Text.hpp :project: Empirical + :no-link: ``` ## Text Areas @@ -193,6 +219,7 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/TextArea.hpp :project: Empirical + :no-link: ``` ## Tweens @@ -200,16 +227,19 @@ d3/d3 ```{eval-rst} .. doxygenfile:: emp/web/Tween.hpp :project: Empirical + :no-link: ``` ## Widgets ```{eval-rst} -.. doxygenfile:: emp/web/Widget.hpp +.. emp/web/Widget.hpp :project: Empirical + :no-link: ``` ```{eval-rst} .. doxygenfile:: emp/web/WidgetExtras.hpp :project: Empirical + :no-link: ``` diff --git a/doc/parse_documentation_coverage.py b/doc/parse_documentation_coverage.py new file mode 100644 index 0000000000..84b7c4a107 --- /dev/null +++ b/doc/parse_documentation_coverage.py @@ -0,0 +1,27 @@ +# adapted from https://github.com/mmore500/conduit/blob/master/ci/parse_documentation_coverage.py + +import json +import sys + +with open(sys.argv[1]) as json_file: + data = json.load(json_file) + cov = float(data['total']['coverage_rate']) + color = "red" + if cov > .9: + color = "brightgreen" + elif cov > .8: + color = "green" + elif cov > .7: + color = "yellowgreen" + elif cov > .5: + color = "yellow" + elif cov > .25: + color = "orange" + + res = { + 'schemaVersion': 1, + 'label': 'documentation coverage', + 'message': '{:.1%}'.format(cov), + 'color': color, + } + print(json.dumps(res, sort_keys=True, indent=4)) \ No newline at end of file diff --git a/include/emp/Evolve/OEE.hpp b/include/emp/Evolve/OEE.hpp index c8dbfa2db1..c55f6afe16 100644 --- a/include/emp/Evolve/OEE.hpp +++ b/include/emp/Evolve/OEE.hpp @@ -6,7 +6,7 @@ #include "../datastructs/set_utils.hpp" #include "../datastructs/vector_utils.hpp" #include "Systematics.hpp" -#include "bloom_filter.hpp" +#include "../datastructs/BloomFilter.hpp" #include @@ -26,13 +26,13 @@ namespace emp { }; class SeenBloomFilter { - bloom_filter b; + BloomFilter b; public: using skel_t = std::string; SeenBloomFilter(int bloom_count = 200000, double false_positive = 0.0001) { - bloom_parameters parameters; + BloomParameters parameters; // How many elements roughly do we expect to insert? parameters.projected_element_count = bloom_count; @@ -46,7 +46,7 @@ namespace emp { } parameters.compute_optimal_parameters(); - b = bloom_filter(parameters); + b = BloomFilter(parameters); } void insert(const skel_t & val) {b.insert(val);} diff --git a/include/emp/Evolve/Systematics.hpp b/include/emp/Evolve/Systematics.hpp index f01a98f2da..555d182064 100644 --- a/include/emp/Evolve/Systematics.hpp +++ b/include/emp/Evolve/Systematics.hpp @@ -74,7 +74,7 @@ namespace emp { template struct mut_landscape_info { /// Track information related to the mutational landscape /// Maps a string representing a type of mutation to a count representing - /// the number of that type of mutation that occured to bring about this taxon. + /// the number of that type of mutation that occurred to bring about this taxon. using phen_t = PHEN_TYPE; using has_phen_t = std::true_type; using has_mutations_t = std::true_type; @@ -127,7 +127,7 @@ namespace emp { using info_t = ORG_INFO; size_t id; ///< ID for this Taxon (Unique within this Systematics) - const info_t info; ///< Details for the organims associated within this taxanomic group. + const info_t info; ///< Details for the organisms associated within this taxanomic group. Ptr parent; ///< Pointer to parent group (nullptr if injected) std::set > offspring; ///< Pointers to all immediate offspring taxa size_t num_orgs; ///< How many organisms currently exist of this group? @@ -252,7 +252,7 @@ namespace emp { /// A base class for Systematics, maintaining information common to all systematics managers - /// and providing virtual functaions. + /// and providing virtual functions. template class SystematicsBase { @@ -292,7 +292,7 @@ namespace emp { /// Are we storing all taxa that are still alive in the population? bool GetStoreActive() const { return store_active; } - /// Are we storing all taxa that are the ancestors of living organims in the population? + /// Are we storing all taxa that are the ancestors of living organisms in the population? bool GetStoreAncestors() const { return store_ancestors; } /// Are we storing all taxa that have died out, as have all of their descendants. @@ -322,7 +322,7 @@ namespace emp { /// Are we storing all taxa that are still alive in the population? void SetStoreActive(bool new_val) { store_active = new_val; } - /// Are we storing all taxa that are the ancestors of living organims in the population? + /// Are we storing all taxa that are the ancestors of living organisms in the population? void SetStoreAncestors(bool new_val) { store_ancestors = new_val; } /// Are we storing all taxa that have died out, as have all of their descendants. @@ -521,12 +521,14 @@ namespace emp { /** * Contructor for Systematics; controls what information should be stored. * @param store_active Should living organisms' taxa be tracked? (typically yes!) - * @param store_ancestors Should ancestral organims' taxa be maintained? (yes for lineages!) - * @param store_outside Should all dead taxa be maintained? (typically no; it gets BIG!) + * @param store_ancestors Should ancestral organisms' taxa be maintained? (yes for lineages!) + * @param store_all Should all dead taxa be maintained? (typically no; it gets BIG!) + * @param store_pos Should the systematics tracker keep track of organism positions? + * (probably yes - only turn this off if you know what you're doing) */ - Systematics(fun_calc_info_t calc_taxon, bool _active=true, bool _anc=true, bool _all=false, bool _pos=true) - : parent_t(_active, _anc, _all, _pos) + Systematics(fun_calc_info_t calc_taxon, bool store_active=true, bool store_ancestors=true, bool store_all=false, bool store_pos=true) + : parent_t(store_active, store_ancestors, store_all, store_pos) , calc_info_fun(calc_taxon) , active_taxa(), ancestor_taxa(), outside_taxa() , mrca(nullptr) { ; } @@ -632,7 +634,7 @@ namespace emp { /// Privide a function for Systematics to call each time a taxon is about to be pruned. /// Trigger: Taxon is about to be killed - /// Argument: Pounter to taxon + /// Argument: Pointer to taxon SignalKey OnPrune(std::function)> & fun) { return on_prune_sig.AddAction(fun); } virtual data_ptr_t @@ -722,7 +724,7 @@ namespace emp { } data_ptr_t AddUniqueTaxaDataNodeImpl(bool decoy, const std::string & name = "unique_taxa") { - emp_assert(false, "Calculating uniqe taxa requires suitable DATA_STRUCT"); + emp_assert(false, "Calculating unique taxa requires suitable DATA_STRUCT"); return AddDataNode(name); } @@ -817,13 +819,13 @@ namespace emp { */ double GetTaxonDistinctiveness(Ptr tax) const {return 1.0/GetDistanceToRoot(tax);} - /** This metric (from Isaac, 2007; reviewd in Winter et al., 2013) measures how + /** This metric (from Isaac, 2007; reviewed in Winter et al., 2013) measures how * distinct @param tax is from the rest of the population, weighted for the amount of * unique evolutionary history that it represents. * * To quantify length of evolutionary history, this method needs @param time: the current * time, in whatever units time is being measured in when taxa are added to the systematics - * manager. Note that passing a time in the past will produce innacurate results (since we + * manager. Note that passing a time in the past will produce inacurate results (since we * don't know what the state of the tree was at that time). * * Assumes the tree is all connected. Will return -1 if this assumption isn't met. @@ -840,14 +842,14 @@ namespace emp { return 0; } - // std::cout << "Initializing divisor to " << divisor << " Offspinrg: " << tax->GetTotalOffspring() << std::endl; + // std::cout << "Initializing divisor to " << divisor << " Offspring: " << tax->GetTotalOffspring() << std::endl; // std::cout << "MRCA ID: " << mrca->GetID() << " Tax ID: " << tax->GetID() << " time: " << time << " Orig: " << tax->GetOriginationTime() << std::endl; Ptr test_taxon = tax->GetParent(); emp_assert(time != -1 && "Invalid time - are you passing time to rg?", time); emp_assert(time >= tax->GetOriginationTime() - && "GetEvolutionaryDistinctiveness recieved a time that is earlier than the taxon's origination time.", tax->GetOriginationTime(), time); + && "GetEvolutionaryDistinctiveness received a time that is earlier than the taxon's origination time.", tax->GetOriginationTime(), time); while (test_taxon) { @@ -884,11 +886,11 @@ namespace emp { /** Calculates mean pairwise distance between extant taxa (Webb and Losos, 2000). * This measurement is also called Average Taxonomic Diversity (Warwick and Clark, 1998) - * (for demonstration of equivalence see Tucker et al, 2016). This measurment tells + * (for demonstration of equivalence see Tucker et al, 2016). This measurement tells * you about the amount of distinctness in the community as a whole. * * @param branch_only only counts distance in terms of nodes that represent a branch - * between two extant taxa (poentially useful for comparison to biological data, where + * between two extant taxa (potentially useful for comparison to biological data, where * non-branching nodes generally cannot be inferred). * * This measurement assumes that the tree is fully connected. Will return -1 @@ -903,7 +905,7 @@ namespace emp { * out that this is a measure of phylogenetic richness. * * @param branch_only only counts distance in terms of nodes that represent a branch - * between two extant taxa (poentially useful for comparison to biological data, where + * between two extant taxa (potentially useful for comparison to biological data, where * non-branching nodes generally cannot be inferred). * * This measurement assumes that the tree is fully connected. Will return -1 @@ -918,7 +920,7 @@ namespace emp { * out that this is a measure of phylogenetic regularity. * * @param branch_only only counts distance in terms of nodes that represent a branch - * between two extant taxa (poentially useful for comparison to biological data, where + * between two extant taxa (potentially useful for comparison to biological data, where * non-branching nodes generally cannot be inferred). * * This measurement assumes that the tree is fully connected. Will return -1 @@ -932,7 +934,7 @@ namespace emp { /** Calculates a vector of all pairwise distances between extant taxa. * * @param branch_only only counts distance in terms of nodes that represent a branch - * between two extant taxa (poentially useful for comparison to biological data, where + * between two extant taxa (potentially useful for comparison to biological data, where * non-branching nodes generally cannot be inferred). * * This method assumes that the tree is fully connected. Will return -1 @@ -1583,7 +1585,7 @@ namespace emp { cur_taxon->SetOriginationTime(update); } - // std::cout << "about to store poisiton" << std::endl; + // std::cout << "about to store poisition" << std::endl; if (store_position && pos.GetIndex() >= 0) { if (pos.GetPopID()) { if (pos.GetIndex() >= next_taxon_locations.size()) { diff --git a/include/emp/Evolve/SystematicsAnalysis.hpp b/include/emp/Evolve/SystematicsAnalysis.hpp index e30826af2c..d6947b350e 100644 --- a/include/emp/Evolve/SystematicsAnalysis.hpp +++ b/include/emp/Evolve/SystematicsAnalysis.hpp @@ -65,7 +65,7 @@ namespace emp { return count; } - /// Returns the total number of times a mutation of type @param type + /// Returns the total number of times a mutation of the types @param types /// that along @param taxon 's lineage. (Different from CountMuts in /// that CountMuts sums them whereas CountMutSteps would count two /// simultaneous mutations of the same type as one event) @@ -97,7 +97,7 @@ namespace emp { return count; } - /// Returns the total number of mutations of type @param type that occurred + /// Returns the total number of mutations of the types @param types that occurred /// along @param taxon 's lineage. template int CountMuts(Ptr taxon, emp::vector types) { diff --git a/include/emp/Evolve/World.hpp b/include/emp/Evolve/World.hpp index 69ec1a5342..e2745616f5 100644 --- a/include/emp/Evolve/World.hpp +++ b/include/emp/Evolve/World.hpp @@ -10,8 +10,8 @@ * and selection techniques for evolutionary computation applications. * * - * @todo Make sure when mutations occure before placement into the population we can control - * whether or not they also affect injected organisms. (Right now they alwyas do!!) + * @todo Make sure when mutations occur before placement into the population we can control + * whether or not they also affect injected organisms. (Right now they always do!!) * @todo We should Specialize World so that ANOTHER world can be used as an ORG, with proper * delegation to facilitate demes, pools, islands, etc. * @todo We should be able to have any number of systematics managers, based on various type_trait @@ -32,6 +32,7 @@ #include "../base/Ptr.hpp" #include "../base/vector.hpp" +#include "../bits/BitSet.hpp" #include "../control/Signal.hpp" #include "../control/SignalControl.hpp" #include "../data/DataFile.hpp" @@ -131,6 +132,9 @@ namespace emp { /// Function type for identifying an organism's random neighbor. using fun_get_neighbor_t = std::function; + /// Function type for determining if two organisms are neighbors. + using fun_is_neighbor_t = std::function; + protected: // Internal state member variables size_t update; ///< How many times has Update() been called? @@ -164,6 +168,7 @@ namespace emp { fun_find_birth_pos_t fun_find_birth_pos; ///< ...find where to add a new offspring organism. fun_kill_org_t fun_kill_org; ///< ...kill an organism. fun_get_neighbor_t fun_get_neighbor; ///< ...choose a random neighbor "near" specified id. + fun_is_neighbor_t fun_is_neighbor; ///< ...determine if two organisms are neighbors. /// Attributes are a dynamic way to track extra characteristics about a world. std::map attributes; @@ -185,7 +190,7 @@ namespace emp { Signal on_swap_sig; ///< ...after org positions are swapped Signal world_destruct_sig; ///< ...in the World destructor. - /// Build a Setup function in world that calls ::Setup() on whatever is passed in IF it exists. + /// Build a Setup function in world that calls \c \::Setup() on whatever is passed in IF it exists. EMP_CREATE_OPTIONAL_METHOD(SetupOrg, Setup); /// Get the current cached value for the organism at the specified position. @@ -199,7 +204,7 @@ namespace emp { /// * a random number generator (either a pointer or reference) /// * a unique name for the world /// If no name is provided, the world remains nameless. - /// If no random number generator is provided, gen_random determines if one shold be created. + /// If no random number generator is provided, gen_random determines if one should be created. World(std::string _name="", bool gen_random=true) : update(0), random_ptr(nullptr), random_owner(false), pops(), pop(pops[0]), num_orgs(0) , fit_cache() @@ -207,7 +212,7 @@ namespace emp { , is_synchronous(false), is_space_structured(false), is_pheno_structured(false) , fun_calc_fitness(), fun_do_mutations(), fun_print_org(), fun_get_genome() , fun_find_inject_pos(), fun_find_birth_pos(), fun_kill_org(), fun_get_neighbor() - , attributes(), control() + , fun_is_neighbor(), attributes(), control() , before_repro_sig(to_string(name,"::before-repro"), control) , offspring_ready_sig(to_string(name,"::offspring-ready"), control) , inject_ready_sig(to_string(name,"::inject-ready"), control) @@ -216,7 +221,7 @@ namespace emp { , on_update_sig(to_string(name,"::on-update"), control) , on_death_sig(to_string(name,"::on-death"), control) , on_swap_sig(to_string(name,"::on-swap"), control) - , world_destruct_sig(to_string(name,"::wolrd-destruct"), control) + , world_destruct_sig(to_string(name,"::world-destruct"), control) { if (gen_random) NewRandom(); SetDefaultFitFun(*this); @@ -251,10 +256,22 @@ namespace emp { size_t GetUpdate() const { return update; } /// How many cells wide is the world? (assumes grids are active.) - size_t GetWidth() const { return pop_sizes[0]; } + size_t GetWidth() const { + emp_assert(HasAttribute("PopStruct") && GetAttribute("PopStruct") == "Grid"); + return pop_sizes[0]; + } /// How many cells tall is the world? (assumes grids are active.) - size_t GetHeight() const { return pop_sizes[1]; } + size_t GetHeight() const { + emp_assert(HasAttribute("PopStruct") && GetAttribute("PopStruct") == "Grid"); + return pop_sizes[1]; + } + + /// How many cells deep is the world? (assumes 3d grids are active.) + size_t GetDepth() const { + emp_assert(HasAttribute("PopStruct") && GetAttribute("PopStruct") == "3DGrid"); + return pop_sizes[2]; + } /// Get the full population to analyze externally. const pop_t & GetFullPop() const { return pop; } @@ -380,7 +397,7 @@ namespace emp { } /// Get a systematics manager (which is tracking lineages in the population.) - /// @param id - which systematics manager to return? Systematics managers are + /// @param label - which systematics manager to return? Systematics managers are /// stored in the order they are added to the world. Ptr > GetSystematics(std::string label) { emp_assert(Has(systematics_labels, label), "Invalid systematics manager label"); @@ -388,7 +405,8 @@ namespace emp { return systematics[systematics_labels[label]]; } - + /// Remove a systematics manager from this world + /// @param id the id of the systematics manager to remove (0 is the first one you added, 1 is 2nd, etc.) void RemoveSystematics(int id) { emp_assert(systematics.size() > 0, "Cannot remove systematics file. No systematics file to track."); emp_assert(id < systematics.size(), "Invalid systematics file requested to be removed.", id, systematics.size()); @@ -403,6 +421,8 @@ namespace emp { } } + /// Remove a systematics manager from this world + /// @param label the label of the systematics manager to remove void RemoveSystematics(std::string label) { emp_assert(Has(systematics_labels, label), "Invalid systematics manager label"); @@ -411,6 +431,14 @@ namespace emp { systematics_labels.erase(label) ; } + /// Add a new systematics manager to the world by passing in all the information + /// the world needs to construct it. + /// @param calc_taxon a function that calculates the systematics manager's taxon type from an ORG + /// @param active Should living organisms' taxa be tracked? (typically yes!) + /// @param anc Should ancestral organisms' taxa be maintained? (yes for lineages!) + /// @param all Should all dead taxa be maintained? (typically no; it gets BIG!) + /// @param pos Should the systematics tracker keep track of organism positions? (yes, unless you're doing something super weird) + /// @param label A label for this tracker so you can find it again template Ptr> AddSystematics(std::function calc_taxon, bool active=true, bool anc=true, bool all=true, bool pos=true, std::string label="systematics" ) { Ptr> sys_ptr; @@ -419,6 +447,12 @@ namespace emp { return sys_ptr; } + /// Add a new systematics manager to the world from a pointer + /// Note: You are giving the world object complete control of this + /// systematics manager. It will be deleted in the destructor + /// for this object + /// @param s a pointer to the systematics manager to add + /// @param label defines a label for this systematics manager, so you can find it again template void AddSystematics(Ptr > s, std::string label="systematics") { if (Has(systematics_labels, label)) { @@ -450,6 +484,10 @@ namespace emp { /// argument determines if the generations should be synchronous (true) or not (false, default) void SetPopStruct_Grid(size_t width, size_t height, bool synchronous_gen=false); + /// Set the population to be a 3D grid of cells using the specified dimensions. The third + /// argument determines if the generations should be synchronous (true) or not (false, default) + void SetPopStruct_3DGrid(size_t width, size_t height, size_t depth, bool synchronous_gen=false); + /// Setup the population to automatically test for and trigger mutations. By default, this /// occurs before deciding where an offspring should be placed. Note that this pre-placement /// timing may be needed if fitness or other phenotypic traits are required to determine placement. @@ -507,6 +545,8 @@ namespace emp { return &(data_nodes.Get("fitness")); } + /// Adds a data nodes to the world with the specified name. + /// @returns a pointer to the DataNode // Returns a reference so that capturing it in a lambda to call on update // is less confusing. It's possible we should change it to be consistent // with GetFitnessDataNode, though. @@ -515,6 +555,8 @@ namespace emp { return &(data_nodes.New(name)); } + /// Retrieve a pointer to a DataNode maintained by the world + /// with a name matching \c name. Ptr> GetDataNode(const std::string & name) { return &(data_nodes.Get(name)); } @@ -568,6 +610,10 @@ namespace emp { /// the population. void SetGetNeighborFun(const fun_get_neighbor_t & _fun) { fun_get_neighbor = _fun; } + /// Setup the function to determine if two organisms are neighbors. It should return a + /// boolean indicating if they are neighbors. + void SetIsNeighborFun(const fun_is_neighbor_t & _fun) {fun_is_neighbor = _fun; } + /// Same as setting a fitness function, but uses Goldberg and Richardson's fitness sharing /// function (1987) to make similar organisms detract from each other's fitness and prevent /// the population from clustering around a single peak. In addition to the base fitness @@ -575,7 +621,7 @@ namespace emp { /// * a distance function that takes references to two organisms and returns a double /// indicating the distance between those organisms, /// * a sharing threshold (sigma share) that defines the maximum distance at which members - /// should be consdered in the same niche, + /// should be considered in the same niche, /// * and a value of alpha, which controls the shape of the fitness sharing curve. void SetSharedFitFun(const fun_calc_fitness_t & fit_fun, const fun_calc_dist_t & dist_fun, double sharing_threshold, double alpha); @@ -655,7 +701,7 @@ namespace emp { } /// Provide a function for World to call at the start of its destructor (for additional cleanup). - /// Trigger: Destructor has begun to execture + /// Trigger: Destructor has begun to execute /// Argument: None /// Return: Key value needed to make future modifications. SignalKey OnWorldDestruct(const std::function & fun) { @@ -684,7 +730,7 @@ namespace emp { /// Update the world: /// 1. Send out an update signal for any external functions to trigger. - /// 2. If synchronous generations, move next population into place as the current popoulation. + /// 2. If synchronous generations, move next population into place as the current population. /// 3. Handle any data-related updates including systematics and files that need to be printed. /// 4. Increment the current update number. void Update(); @@ -831,6 +877,9 @@ namespace emp { /// Use the specified function to get a neighbor (if not set, assume well mixed). WorldPosition GetRandomNeighborPos(WorldPosition pos) { return fun_get_neighbor(pos); } + /// Use the specified function to determine if two indices are neighboring. + bool IsNeighbor(WorldPosition id1, WorldPosition id2) { return fun_is_neighbor(id1, id2); } + /// Get the id of a random *occupied* cell. size_t GetRandomOrgID(); @@ -850,6 +899,8 @@ namespace emp { /// Return IDs of all empty cells in the population. emp::vector GetEmptyPopIDs() { return FindCellIDs([](ORG*org){ return !org; }); } + /// Return IDs of all occupied neighbors of specified position. + emp::vector GetValidNeighborOrgIDs(size_t id); // --- POPULATION MANIPULATIONS --- @@ -965,6 +1016,10 @@ namespace emp { // Neighbors are anywhere in the same population. fun_get_neighbor = [this](WorldPosition pos) { return pos.SetIndex(GetRandomCellID()); }; + // Since neighbors are anywhere in the same population, all organisms in the same + // population are neighbors. + fun_is_neighbor = [](WorldPosition pos1, WorldPosition pos2) { return true;}; + // Kill random organisms and move end into vacant position to keep pop compact. fun_kill_org = [this](){ const size_t last_id = pop.size() - 1; @@ -1011,6 +1066,9 @@ namespace emp { // Neighbors are anywhere in the same population. fun_get_neighbor = [this](WorldPosition pos) { return pos.SetIndex(GetRandomCellID()); }; + // Neighbors are anywhere in same population, so all organisms are neighbors. + fun_is_neighbor = [](WorldPosition pos1, WorldPosition pos2) { return true; }; + // Kill random organisms and move end into vacant position to keep pop compact. fun_kill_org = [this](){ const size_t kill_id = GetRandomCellID(); @@ -1027,7 +1085,7 @@ namespace emp { SetAttribute("SynchronousGen", "True"); } else { - // Asynchronous: always go to a neigbor in current population. + // Asynchronous: always go to a neighbor in current population. fun_find_birth_pos = [this](Ptr new_org, WorldPosition parent_id) { return WorldPosition(fun_get_neighbor(parent_id)); // Place org in existing population. }; @@ -1077,6 +1135,30 @@ namespace emp { return pos.SetIndex(neighbor_id); }; + // Neighbors are in 8-sized neighborhood excluding self + fun_is_neighbor = [this](WorldPosition pos1, WorldPosition pos2) { + int id1 = (int)pos1.GetIndex(); + int id2 = (int)pos2.GetIndex(); + emp_assert(pop_sizes.size() == 2); + + int size_x = (int) pop_sizes[0]; + int size_y = (int) pop_sizes[1]; + + if(id1 == id2) { //self, not neighbors + return false; + } + + int diff = id1 - id2; + int row_diff = abs(diff / size_x); + int col_diff = abs(diff%size_x); + + if((row_diff <= 1 || row_diff == (size_y-1)) && + (col_diff <= 1 || col_diff == (size_x-1))) return true; + else return false; + + }; + + fun_kill_org = [this](){ const size_t kill_id = GetRandomCellID(); RemoveOrgAt(kill_id); @@ -1103,6 +1185,178 @@ namespace emp { SetSynchronousSystematics(synchronous_gen); } + template + void World::SetPopStruct_3DGrid(size_t width, size_t height, size_t depth, bool synchronous_gen) { + emp::vector sizes = {width, height, depth}; + Resize(sizes); + is_synchronous = synchronous_gen; + is_space_structured = true; + is_pheno_structured = false; + + // -- Setup functions -- + // Inject a random position in grid + fun_find_inject_pos = [this](Ptr new_org) { + (void) new_org; + return WorldPosition(GetRandomCellID()); + }; + + // neighbors are in 27-sized neighborhood. + fun_get_neighbor = [this](WorldPosition pos) { + std::cout << pos.GetIndex() << " " << pos.GetPopID() << std::endl; + emp_assert(random_ptr); + emp_assert(pop_sizes.size() == 3); + + const int size_x = (int) pop_sizes[0]; + const int size_y = (int) pop_sizes[1]; + const int size_z = (int) pop_sizes[2]; + const int id = (int) pos.GetIndex(); + + const int x_pos = (id%size_x); + const int y_pos = (id/size_x) % (size_y); + const int z_pos = (id/size_x) / (size_y); + + emp_assert(z_pos < size_z); + + int self_pos = 13; + int n_options = 26; + int rand_pos = 0; + + if (z_pos > 0 && z_pos < size_z - 1 && y_pos > 0 && y_pos < size_y - 1 && x_pos > 0 && x_pos < size_x - 1){ + // no edge problems to worry about + rand_pos = random_ptr->GetInt(n_options); + if (rand_pos >= self_pos) { + // skip central cell + rand_pos++; + } + } else { + emp::BitSet<27> options; + options.SetAll(); + options.Set(self_pos, false); + if (z_pos == 0) { + for (int i = 0; i < 9; i++) { + options.Set(i, false); + } + } else if (z_pos == size_z - 1) { + for (int i = 18; i < 27; i++) { + options.Set(i, false); + } + } + if (y_pos == 0) { + options.Set(0, false); + options.Set(1, false); + options.Set(2, false); + options.Set(9, false); + options.Set(10, false); + options.Set(11, false); + options.Set(18, false); + options.Set(19, false); + options.Set(20, false); + } else if (y_pos == size_y - 1) { + options.Set(6, false); + options.Set(7, false); + options.Set(8, false); + options.Set(15, false); + options.Set(16, false); + options.Set(17, false); + options.Set(24, false); + options.Set(25, false); + options.Set(26, false); + } + if (x_pos == 0) { + options.Set(0, false); + options.Set(3, false); + options.Set(6, false); + options.Set(9, false); + options.Set(12, false); + options.Set(15, false); + options.Set(18, false); + options.Set(21, false); + options.Set(24, false); + } else if (x_pos == size_x - 1) { + options.Set(2, false); + options.Set(5, false); + options.Set(8, false); + options.Set(11, false); + options.Set(14, false); + options.Set(17, false); + options.Set(20, false); + options.Set(23, false); + options.Set(26, false); + } + + int p = random_ptr->GetInt(options.CountOnes()); + std::cout << p << std::endl; + while(p-- >= 0) { + rand_pos = options.PopBit(); + } + } + + int rand_z = z_pos + rand_pos / 9 - 1; + int rand_y = y_pos + (rand_pos - (9 * (rand_pos / 9))) / 3 - 1; + int rand_x = x_pos + (rand_pos - (9 * (rand_pos / 9))) % 3 - 1; + + const int neighbor_id = rand_z*size_y*size_x + rand_y*size_x + rand_x; + + emp_assert(neighbor_id >= 0 && neighbor_id < size_x*size_y*size_z, neighbor_id, size_x*size_y*size_z); + emp_assert((int)pos.GetIndex() != neighbor_id); + + return pos.SetIndex(neighbor_id); + }; + + fun_is_neighbor = [this](WorldPosition pos1, WorldPosition pos2) { + + emp_assert(pop_sizes.size() == 3); + + const int size_x = (int) pop_sizes[0]; + const int size_y = (int) pop_sizes[1]; + + const int id_1 = (int) pos1.GetIndex(); + const int id_2 = (int) pos2.GetIndex(); + + if (id_1 == id_2) {return false;} // Self isn't neighbor + + const int x_pos_1 = (id_1%size_x); + const int y_pos_1 = (id_1/size_x) % (size_y); + const int z_pos_1 = (id_1/size_x) / (size_y); + + const int x_pos_2 = (id_2%size_x); + const int y_pos_2 = (id_2/size_x) % (size_y); + const int z_pos_2 = (id_2/size_x) / (size_y); + + int x_diff = abs(x_pos_1 - x_pos_2); + int y_diff = abs(y_pos_1 - y_pos_2); + int z_diff = abs(z_pos_1 - z_pos_2); + + return (x_diff <= 1) && (y_diff <= 1) && (z_diff <= 1); + + }; + + fun_kill_org = [this](){ + const size_t kill_id = GetRandomCellID(); + RemoveOrgAt(kill_id); + return kill_id; + }; + + if (synchronous_gen) { + // Place births in a neighboring position in the new grid. + fun_find_birth_pos = [this](Ptr new_org, WorldPosition parent_pos) { + emp_assert(new_org); // New organism must exist. + WorldPosition next_pos = fun_get_neighbor(parent_pos); // Place near parent. + return next_pos.SetPopID(1); // Adjust position to next pop and place.. + }; + SetAttribute("SynchronousGen", "True"); + } else { + // Asynchronous: always go to a neighbor in current population. + fun_find_birth_pos = [this](Ptr new_org, WorldPosition parent_pos) { + return WorldPosition(fun_get_neighbor(parent_pos)); // Place org in existing population. + }; + SetAttribute("SynchronousGen", "False"); + } + + SetAttribute("PopStruct", "3DGrid"); + SetSynchronousSystematics(synchronous_gen); + } + // Add a new data file constructed elsewhere. template DataFile & World::AddDataFile(emp::Ptr file) { @@ -1154,7 +1408,7 @@ namespace emp { file.template AddFun( [this, id](){ return systematics[id]->GetNumActive(); }, "num_taxa", "Number of unique taxonomic groups currently active." ); file.template AddFun( [this, id](){ return systematics[id]->GetTotalOrgs(); }, "total_orgs", "Number of organisms tracked." ); file.template AddFun( [this, id](){ return systematics[id]->GetAveDepth(); }, "ave_depth", "Average Phylogenetic Depth of Organisms." ); - file.template AddFun( [this, id](){ return systematics[id]->GetNumRoots(); }, "num_roots", "Number of independent roots for phlogenies." ); + file.template AddFun( [this, id](){ return systematics[id]->GetNumRoots(); }, "num_roots", "Number of independent roots for phylogenies." ); file.template AddFun( [this, id](){ return systematics[id]->GetMRCADepth(); }, "mrca_depth", "Phylogenetic Depth of the Most Recent Common Ancestor (-1=none)." ); file.template AddFun( [this, id](){ return systematics[id]->CalcDiversity(); }, "diversity", "Genotypic Diversity (entropy of taxa in population)." ); @@ -1196,7 +1450,7 @@ namespace emp { on_update_sig.Trigger(update); // 2. If synchronous generations (i.e, pops[1] is not empty), move next population into - // place as the current popoulation. + // place as the current population. if (IsSynchronous()) { // Trigger signals for orgs in next pop before they are moved into the active pop. for (size_t i = 0; i < pops[1].size(); i++) { @@ -1342,6 +1596,20 @@ namespace emp { return valid_IDs; } + /// Return IDs of all occupied neighbors of specified position. + template + emp::vector World::GetValidNeighborOrgIDs(size_t id) { + //Note: this function is similar to FindCellIDs, but because ORG don't know their index, + //FindCellIDs can't be used. + emp::vector valid_IDs(0); + for(size_t i = 0; i < pop.size(); i++) { + if ((bool) (pop[i].Raw()) && IsNeighbor(id, i)) { + valid_IDs.push_back(i); + } + } + return valid_IDs; + } + // Run population through a bottleneck to (probably) shrink it. template void World::DoBottleneck(const size_t new_size, bool choose_random) { diff --git a/include/emp/Evolve/World_output.hpp b/include/emp/Evolve/World_output.hpp index 5123af3a7f..a1ff5a9fee 100644 --- a/include/emp/Evolve/World_output.hpp +++ b/include/emp/Evolve/World_output.hpp @@ -1,3 +1,6 @@ +#ifndef EMP_EVO_WORLD_OUTPUT_H +#define EMP_EVO_WORLD_OUTPUT_H + /** * @note This file is part of Empirical, https://github.com/devosoft/Empirical * @copyright Copyright (C) Michigan State University, MIT Software license; see doc/LICENSE.md @@ -6,8 +9,6 @@ * This file contains functions for adding additional data files to Worlds. **/ -#ifndef EMP_EVO_WORLD_OUTPUT_H -#define EMP_EVO_WORLD_OUTPUT_H #include "../base/vector.hpp" #include "../data/DataFile.hpp" // Helper to determine when specific events should occur. diff --git a/include/emp/base/MapProxy.hpp b/include/emp/base/MapProxy.hpp index fb6420bd81..8d3052d8ad 100644 --- a/include/emp/base/MapProxy.hpp +++ b/include/emp/base/MapProxy.hpp @@ -116,6 +116,7 @@ namespace emp { // Build externaly binary operators with MapProxy as the second argument. + #ifndef DOXYGEN_SHOULD_SKIP_THIS // Doxygen is getting tripped up by the enable_ifs template () == false>::type* = nullptr> auto operator + (T1 v1, const MapProxy & v2) { return v1 + v2.emp_GetValue(); } template () == false>::type* = nullptr> @@ -154,7 +155,7 @@ namespace emp { auto operator >= (T1 v1, const MapProxy & v2) { return v1 >= v2.emp_GetValue(); } template () == false>::type* = nullptr> auto operator , (T1 v1, const MapProxy & v2) { return v1 , v2.emp_GetValue(); } - + #endif /*DOXYGEN_SHOULD_SKIP_THIS*/ } // A crude, generic printing function for emp::MapProxy. diff --git a/include/emp/base/Ptr.hpp b/include/emp/base/Ptr.hpp index e2b35dbb3c..dc2fff8e3f 100644 --- a/include/emp/base/Ptr.hpp +++ b/include/emp/base/Ptr.hpp @@ -31,12 +31,14 @@ namespace emp { + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { /// An anonymous log2 calculator for hashing below. static constexpr size_t Log2(size_t x) { return x <= 1 ? 0 : (Log2(x/2) + 1); } static bool ptr_debug = false; } + #endif // DOXYGEN_SHOULD_SKIP_THIS inline void SetPtrDebug(bool _d = true) { internal::ptr_debug = _d; } inline bool GetPtrDebug() { return internal::ptr_debug; } @@ -90,14 +92,14 @@ namespace emp { void SetArray(size_t bytes) noexcept { array_bytes = bytes; status = PtrStatus::ARRAY; } /// Add one more pointer. - void Inc(size_t id) { + void Inc(const size_t id) { if (internal::ptr_debug) std::cout << "Inc info for pointer " << ptr << std::endl; emp_assert(status != PtrStatus::DELETED, "Incrementing deleted pointer!", id); count++; } /// Remove a pointer. - void Dec(size_t id) { + void Dec(const size_t id) { if (internal::ptr_debug) std::cout << "Dec info for pointer " << ptr << std::endl; // Make sure that we have more than one copy, -or- we've already deleted this pointer @@ -429,7 +431,7 @@ namespace emp { } } - /// Construct from a raw pointer of campatable ARRAY type. + /// Construct from a raw pointer of compatible ARRAY type. template Ptr(T2 * _ptr, size_t array_size, bool track) : BasePtr(_ptr, UNTRACKED_ID) { @@ -452,7 +454,7 @@ namespace emp { } } - /// Construct from another Ptr<> object of compatable type. + /// Construct from another Ptr<> object of compatible type. template Ptr(Ptr _in) : BasePtr(_in.Raw(), _in.GetID()) { if (internal::ptr_debug) std::cout << "inexact copy construct: " << ptr << std::endl; @@ -597,7 +599,7 @@ namespace emp { << std::endl; } emp_assert(Tracker().IsDeleted(_in.id) == false, _in.id, "Do not copy deleted pointers."); - if (ptr != _in.ptr) { // Assignments only need to happen if ptrs are different. + if (id != _in.id || ptr != _in.ptr) { // Assignments only need to happen if ptrs are different. if (internal::ptr_debug) std::cout << "...pointers differ -- copying!" << std::endl; Tracker().DecID(id); ptr = _in.ptr; @@ -736,7 +738,7 @@ namespace emp { }; -#else +#else // #ifdef EMP_TRACK_MEM template @@ -858,7 +860,7 @@ namespace emp { bool OK() const { return true; } }; -#endif +#endif // #ifdef EMP_TRACK_MEM // IO template @@ -929,6 +931,6 @@ namespace emp { } -} +} // namespace emp #endif // EMP_PTR_H diff --git a/include/emp/base/array.hpp b/include/emp/base/array.hpp index c87079efbb..2d3d111ae1 100644 --- a/include/emp/base/array.hpp +++ b/include/emp/base/array.hpp @@ -37,7 +37,7 @@ namespace emp { namespace emp { /// We are in debug mode, so emp::array has the same interface as std::array, but with extra - /// bounds checking. Using vector as our base since it has the right pieces and is dyanmic. + /// bounds checking. Using vector as our base since it has the right pieces and is dynamic. template class array : public std::vector { private: diff --git a/include/emp/base/assert_warning.hpp b/include/emp/base/assert_warning.hpp index 7eadb2a6d6..90c3aa3edd 100644 --- a/include/emp/base/assert_warning.hpp +++ b/include/emp/base/assert_warning.hpp @@ -21,15 +21,15 @@ * emp_assert_warning(a==5, a); * * When compiled in debug mode (i.e., without the -DNDEBUG flag), this will - * pring an assertion error and print the value of a. + * spring an assertion error and print the value of a. */ #ifndef EMP_ASSERT_WARNING_HPP #define EMP_ASSERT_WARNING_HPP -#include "always_assert.hpp" +#include "always_assert_warning.hpp" -/// NDEBUG hould trigger its EMP equivalent. +/// NDEBUG should trigger its EMP equivalent. #ifdef NDEBUG #define EMP_NDEBUG #endif @@ -47,7 +47,7 @@ /// information on any variables or expressions provided as variadic args. /// Note: If NDEBUG is defined, emp_assert_warning() will not do anything. /// Due to macro parsing limitations, extra information will not be printed when compiling with MSVC. - #define emp_assert_warning(...) emp_always_assert(__VA_ARGS__) + #define emp_assert_warning(...) emp_always_assert_warning(__VA_ARGS__) #endif diff --git a/include/emp/bits/BitVector.hpp b/include/emp/bits/BitVector.hpp index 214aa1515a..7b3e04737d 100644 --- a/include/emp/bits/BitVector.hpp +++ b/include/emp/bits/BitVector.hpp @@ -297,7 +297,6 @@ namespace emp { } if (num_bits) RawCopy(in_set.bit_set); - return *this; } @@ -323,7 +322,7 @@ namespace emp { } /// Resize this BitVector to have the specified number of bits. - BitVector & Resize(size_t new_bits) { + BitVector & Resize(const size_t new_bits) { const size_t old_num_fields = NumFields(); num_bits = new_bits; const size_t NUM_FIELDS = NumFields(); @@ -331,7 +330,7 @@ namespace emp { if (NUM_FIELDS == old_num_fields) { // We can use our existing bit field num_bits = new_bits; // If there are extra bits, zero them out. - if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); } else { // We have to change the number of bitfields. Resize & copy old info. @@ -524,8 +523,9 @@ namespace emp { LastBitID() == 0 || ( bit_set[NumFields() - 1] - & ~MaskLow(LastBitID()) - ) == 0 + & ~emp::MaskLow(LastBitID()) + ) == 0, + LastBitID(), bit_set[NumFields() - 1] ); } @@ -564,7 +564,7 @@ namespace emp { field_t GetValueAtBit(size_t index) { // @CAO This function needs to be generalized to return more then sizeof(field_t)*8 bits. static_assert(OUT_BITS <= sizeof(field_t)*8, "Requesting too many bits to fit in a UInt"); - return GetUIntAtBit(index) & MaskLow(OUT_BITS); + return GetUIntAtBit(index) & emp::MaskLow(OUT_BITS); } /// Return true if ANY bits are set to 1, otherwise return false. @@ -602,7 +602,7 @@ namespace emp { const size_t NUM_FIELDS = NumFields(); constexpr field_t all0 = 0; for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~all0; - if (LastBitID() > 0) { bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); } + if (LastBitID() > 0) { bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); } } /// Regular print function (from most significant bit to least) @@ -701,6 +701,98 @@ namespace emp { return (int) (pos_found + (field_id * FIELD_BITS)); } + /** + * Pop the last bit in the vector. + * + * @return value of the popped bit. + */ + bool PopBack() { + const bool val = Get(num_bits-1); + Set(num_bits-1, 0); + Resize(num_bits - 1); + return val; + } + + /** + * Push given bit(s) onto the vector. + * + * @param bit value of bit to be pushed. + * @param num number of bits to be pushed. + */ + void PushBack(const bool bit=true, const size_t num=1) { + Resize(num_bits + num); + for (size_t i=0; i < num; i++) + Set(num_bits-1, bit); + } + + /** + * Zero out bits lower than or at index. + * + * @param index location to end the zeroing out. + */ + void MaskHigh(const size_t index) { + const size_t field_id = FieldID(index); + for (size_t i = 0; i < field_id; i++) + bit_set[i] = 0; + if (index >= 0) + bit_set[field_id] &= (emp::MaskLow((num_bits - index - 1) % FIELD_BITS) << (index + 1)); + } + + /** + * Zero out bits higher than or at index. + * + * @param index location to start the zeroing out. + */ + void MaskLow(const size_t index) { + const size_t field_id = FieldID(index); + for (size_t i = field_id + 1; i < NumFields(); i++) + bit_set[i] = 0; + if (index < num_bits) + bit_set[field_id] &= emp::MaskLow(index % FIELD_BITS); + } + + /** + * Insert bit(s) into any index of vector using bit magic. + * Blog post on implementation reasoning: https://devolab.org/?p=2249 + * + * @param index location to insert bit(s). + * @param val value of bit(s) to insert. + * @param num number of bits to insert, default 1. + */ + void Insert(const size_t index, const bool val=true, const size_t num=1) { + Resize(num_bits + num); + + thread_local BitVector temp{}; // use thread_local to prevent reallocation + temp = *this; + + // mask high and shift left: 101101 -> 1010000 + if (index > 0) this->MaskHigh(index + num - 2); + *this <<= num; + + // mask low and | together 101101 -> 000101 ->1010101 + temp.MaskLow(index); + *this |= temp; + + // set specified bits: 1010101 -> 101_101 + for (size_t i = index; i < index + num; i++) this->Set(i, val); + + } + + /** + * Delete bits from any index in a vector. + * + * TODO: consider a bit magic approach here. + * + * @param index location to delete bit(s). + * @param num number of bits to delete, default 1. + */ + void Delete(const size_t index, const size_t num=1) { + for (size_t bit = index; bit < num_bits - num; bit++) { + Set(bit, Get(bit + num)); + } + Resize(num_bits - num); + } + /// Return the position of the first one after start_pos; return -1 if no ones in vector. /// You can loop through all 1-bit positions of a BitVector "bv" with: /// @@ -710,8 +802,8 @@ namespace emp { if (start_pos >= num_bits) return -1; size_t field_id = FieldID(start_pos); // What field do we start in? const size_t field_pos = FieldPos(start_pos); // What position in that field? - if (field_pos && (bit_set[field_id] & ~(MaskLow(field_pos)))) { // First field hit! - return (int) (find_bit(bit_set[field_id] & ~(MaskLow(field_pos))) + + if (field_pos && (bit_set[field_id] & ~(emp::MaskLow(field_pos)))) { // First field hit! + return (int) (find_bit(bit_set[field_id] & ~(emp::MaskLow(field_pos))) + field_id * FIELD_BITS); } @@ -739,7 +831,7 @@ namespace emp { const size_t NUM_FIELDS = NumFields(); BitVector out_set(*this); for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = ~bit_set[i]; - if (LastBitID() > 0) out_set.bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) out_set.bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); return out_set; } @@ -764,7 +856,7 @@ namespace emp { const size_t NUM_FIELDS = NumFields(); BitVector out_set(*this); for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = ~(bit_set[i] & set2.bit_set[i]); - if (LastBitID() > 0) out_set.bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) out_set.bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); return out_set; } @@ -773,7 +865,7 @@ namespace emp { const size_t NUM_FIELDS = NumFields(); BitVector out_set(*this); for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = ~(bit_set[i] | set2.bit_set[i]); - if (LastBitID() > 0) out_set.bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) out_set.bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); return out_set; } @@ -790,7 +882,7 @@ namespace emp { const size_t NUM_FIELDS = NumFields(); BitVector out_set(*this); for (size_t i = 0; i < NUM_FIELDS; i++) out_set.bit_set[i] = ~(bit_set[i] ^ set2.bit_set[i]); - if (LastBitID() > 0) out_set.bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) out_set.bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); return out_set; } @@ -799,7 +891,7 @@ namespace emp { BitVector & NOT_SELF() { const size_t NUM_FIELDS = NumFields(); for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~bit_set[i]; - if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); return *this; } @@ -821,7 +913,7 @@ namespace emp { BitVector & NAND_SELF(const BitVector & set2) { const size_t NUM_FIELDS = NumFields(); for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~(bit_set[i] & set2.bit_set[i]); - if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); return *this; } @@ -829,7 +921,7 @@ namespace emp { BitVector & NOR_SELF(const BitVector & set2) { const size_t NUM_FIELDS = NumFields(); for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~(bit_set[i] | set2.bit_set[i]); - if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); return *this; } @@ -844,7 +936,7 @@ namespace emp { BitVector & EQU_SELF(const BitVector & set2) { const size_t NUM_FIELDS = NumFields(); for (size_t i = 0; i < NUM_FIELDS; i++) bit_set[i] = ~(bit_set[i] ^ set2.bit_set[i]); - if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= MaskLow(LastBitID()); + if (LastBitID() > 0) bit_set[NUM_FIELDS - 1] &= emp::MaskLow(LastBitID()); return *this; } diff --git a/include/emp/control/Signal.hpp b/include/emp/control/Signal.hpp index 37b207a28d..e3cec87b98 100644 --- a/include/emp/control/Signal.hpp +++ b/include/emp/control/Signal.hpp @@ -80,6 +80,7 @@ namespace emp { class SignalManager; // ...for setting up as friend. // Mechanisms for Signals to report to a manager. + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { struct SignalManager_Base { virtual void NotifyConstruct(SignalBase * sig_ptr) = 0; @@ -92,6 +93,7 @@ namespace emp { virtual ~SignalControl_Base() { ; } }; } + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Base class for all signals. class SignalBase { diff --git a/include/emp/data/DataFile.hpp b/include/emp/data/DataFile.hpp index f668df3909..ee780b2fca 100644 --- a/include/emp/data/DataFile.hpp +++ b/include/emp/data/DataFile.hpp @@ -39,7 +39,7 @@ namespace emp { std::string filename; ///< Name of the file that we are printing to (if one exists) std::ostream * os; ///< Stream to print to. FunctionSet funs; ///< Set of functions to call, one per column in the file. - FunctionSet pre_funs; ///< Set of functions to call before calculating data. + FunctionSet pre_funs; ///< Set of functions to call before calculating data. emp::vector keys; ///< Keywords associated with each column. emp::vector descs; ///< Full description for each column. time_fun_t timing_fun; ///< Function to determine updates to print on (default: all) @@ -108,13 +108,14 @@ namespace emp { }; } - /// Print @param _in at the beginning of each line. + /// Print a string at the beginning of each line. @param _in the string to print void SetLineBegin(const std::string & _in) { line_begin = _in; } - /// Print @param _in between elements (i.e. make @param _in the delimeter). + /// Print a string between elements @param _in the string (i.e. the delimeter). void SetSpacer(const std::string & _in) { line_spacer = _in; } - /// Print @param _in at the end of each line. + /// Print a string at the end of each line. @param _in the string to print void SetLineEnd(const std::string & _in) { line_end = _in; } - /// Set line begin character (@param b), column delimeter (@param s), and line end character (@param e) + /// Set line begin, delimeter, and line end characters. + /// @param b line-begin character. @param s column delimeter @param e line end character void SetupLine(const std::string & b, const std::string & s, const std::string & e) { line_begin = b; line_spacer = s; @@ -152,18 +153,24 @@ namespace emp { os->flush(); } - /// If Update is called with an update number, call the full version of update only if the + /// If Update is called with an update number, the full version of update is called only if the /// update value passes the timing function (that is, the timing function returns true). + /// @param update the current time step virtual void Update(size_t update) { if (timing_fun(update)) Update(); } - + /// Add a function to run before each time data is calculated. You can add as many + /// functions as you want. + /// @param fun the function to add void AddPreFun(pre_fun_t fun) { pre_funs.Add(fun); } - /// If a function takes an ostream, pass in the correct one. + // If a function takes an ostream, pass in the correct one. /// Generic function for adding a column to the DataFile. In practice, you probably /// want to call one of the more specific ones. + /// @param fun function to call to get the value to print + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) size_t Add(const std::function & fun, const std::string & key, const std::string & desc) { size_t id = funs.GetSize(); funs.Add(fun); @@ -173,13 +180,19 @@ namespace emp { } /// Add a function that returns a value to be printed to the file. + /// @param fun function to call to get the value to print + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) template size_t AddFun(const std::function & fun, const std::string & key="", const std::string & desc="") { std::function in_fun = [fun](std::ostream & os){ os << fun(); }; return Add(in_fun, key, desc); } - /// Add a function that always prints the current value of @param var. + /// Add a function that always prints the current value of \c var. + /// @param var variable to print value of + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) template size_t AddVar(const T & var, const std::string & key="", const std::string & desc="") { std::function in_fun = [&var](std::ostream & os){ os << var; }; @@ -193,10 +206,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the current value from the DataNode @param node. - /// Requires that @param node have the data::Current modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the current value from the DataNode \c node. + /// Requires that \c node have the \c data::Current modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddCurrent(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -208,10 +225,14 @@ namespace emp { } - /// Add a function that always pulls the mean value from the DataNode @param node. - /// Requires that @param node have the data::Range or data::FullRange modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the mean value from the DataNode \c node. + /// Requires that \c node have the \c data::Range or \c data::FullRange modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template template size_t AddMean(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -222,10 +243,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the median value from the DataNode @param node. - /// Requires that @param node have the data::Range or data::FullRange modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the median value from the DataNode \c node. + /// Requires that \c node have the \c data::Range or \c data::FullRange modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddMedian(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -236,10 +261,15 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the Percentile value from the DataNode @param node. - /// Requires that @param node have the data::Range or data::FullRange modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the Percentile value from the DataNode \c node. + /// Requires that \c node have the \c data::Range or \c data::FullRange modifier. + /// @param node DataNode to get data from + /// @param pct the percentile value to return + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddPercentile(DataNode & node, const double pct=100.0, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull, pct](std::ostream & os){ @@ -250,10 +280,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the total value from the DataNode @param node. - /// Requires that @param node have the data::Range or data::FullRange modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the total value from the DataNode \c node. + /// Requires that \c node have the \c data::Range or \c data::FullRange modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddTotal(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -264,10 +298,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the minimum value from the DataNode @param node. - /// Requires that @param node have the data::Range or data::FullRange modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the minimum value from the DataNode \c node. + /// Requires that \c node have the \c data::Range or \c data::FullRange modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddMin(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -278,10 +316,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the maximum value from the DataNode @param node. - /// Requires that @param node have the data::Range or data::FullRange modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the maximum value from the DataNode \c node. + /// Requires that \c node have the \c data::Range or \c data::FullRange modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddMax(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -292,8 +334,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the variance from the DataNode @param node - /// Requires that @param node have the data::Stats or data::FullStats modifier. + /// Add a function that always pulls the variance from the DataNode \c node + /// Requires that \c node have the \c data::Stats or \c data::FullStats modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the + /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddVariance(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -304,8 +352,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the standard deviation from the DataNode @param node - /// Requires that @param node have the data::Stats or data::FullStats modifier. + /// Add a function that always pulls the standard deviation from the DataNode \c node + /// Requires that \c node have the \c data::Stats or \c data::FullStats modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the + /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddStandardDeviation(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -316,8 +370,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the skewness from the DataNode @param node - /// Requires that @param node have the data::Stats or data::FullStats modifier. + /// Add a function that always pulls the skewness from the DataNode \c node + /// Requires that \c node have the \c data::Stats or \c data::FullStats modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the + /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddSkew(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -328,8 +388,14 @@ namespace emp { return Add(in_fun, key, desc); } - /// Add a function that always pulls the kurtosis from the DataNode @param node - /// Requires that @param node have the data::Stats or data::FullStats modifier. + /// Add a function that always pulls the kurtosis from the DataNode \c node + /// Requires that \c node have the \c data::Stats or \c data::FullStats modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the + /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddKurtosis(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -341,15 +407,21 @@ namespace emp { } /// Add multiple functions that pull common stats measurements (mean, variance, min, and max) - /// from the DataNode @param node. - /// Requires that @param node have the data::Stats or data::FullStats modifier. - /// @param key and @param desc will have the name of the stat appended to the beginning. + /// from the DataNode \c node. + /// Requires that \c node have the \c data::Stats or \c data::FullStats modifier. + /// \c key and \c desc will have the name of the stat appended to the beginning. /// Note: excludes standard deviation, because it is easily calculated from variance - /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic + /// Note: Setting \c pull and/or \c reset to true only pulls on first statistic /// calculated and only resets on the last. Otherwise there would be a risk of data loss or /// at least massive replication of computational effort. Even still, think carefully /// before setting either of these to true when you're drawing varied information from the /// same node. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the + /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template void AddStats(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { AddMean(node, "mean_" + key, "mean of " + desc, false, pull); @@ -360,15 +432,21 @@ namespace emp { /// Add multiple functions that pull all stats measurements (mean, variance, min, max, - /// skew, and kurtosis) from the DataNode @param node - /// Requires that @param node have the data::Stats or data::FullStats modifier. - /// @param key and @param desc will have the name of the stat appended to the beginning. + /// skew, and kurtosis) from the DataNode \c node + /// Requires that \c node have the \c data::Stats or \c data::FullStats modifier. + /// \c key and \c desc will have the name of the stat appended to the beginning. /// Note: excludes standard deviation, because it is easily calculated from variance - /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic + /// Note: Setting \c pull and/or \c reset to true only pulls on first statistic /// calculated and only resets on the last. Otherwise there would be a risk of data loss or /// at least massive replication of computational effort. Even still, think carefully /// before setting either of these to true when you're drawing varied information from the /// same node. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the + /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template void AddAllStats(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { AddStats(node, key, desc, false, pull); @@ -376,11 +454,16 @@ namespace emp { AddKurtosis(node, "kurtosis_" + key, "kurtosis of " + desc, reset); } - /// Add a function that always pulls the count of the @param bin_id 'th bin of the histogram - /// from @param node. Requires that @param node have the data::Histogram modifier and at least - /// @bin_id bins. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the count of the \c bin_id 'th bin of the histogram + /// from \c node. Requires that \c node have the \c data::Histogram modifier and at least + /// \c bin_id bins. + /// @param node DataNode to get data from + /// @param bin_id id of bin to log data from (0-indexed) + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddHistBin(DataNode & node, size_t bin_id, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = @@ -393,14 +476,18 @@ namespace emp { } /// Add a set of functions that always pull the count of each bin of the histogram - /// from @param node. Requires that @param node have the data::Histogram modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the - /// current value from the node - /// Note: Setting @param pull and/or @param reset to true only pulls on first statistic + /// from \c node. Requires that \c node have the \c data::Histogram modifier. + /// Note: Setting \c pull and/or \c reset to true only pulls on first statistic /// calculated and only resets on the last. Otherwise there would be a risk of data loss or /// at least massive replication of computational effort. Even still, think carefully /// before setting either of these to true when you're drawing varied information from the /// same node. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the + /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template void AddAllHistBins(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { bool actual_reset = false; @@ -414,10 +501,14 @@ namespace emp { } } - /// Add a function that always pulls the inferiority (mean divided by max) from the DataNode @param node. - /// Requires that @param node have the data::Range or data::FullRange modifier. - /// If @param reset is set true, we will call Reset on that DataNode after pulling the + /// Add a function that always pulls the inferiority (mean divided by max) from the specified DataNode. + /// Requires that node have the data::Range or data::FullRange modifier. + /// @param node DataNode to get data from + /// @param key Keyword associated with this column (gets used as a column name for this data) + /// @param desc Full description of this data (used by \c PrintHeaderComment) + /// @param reset If this parameter is set true, we will call Reset on that DataNode after pulling the /// current value from the node + /// @param pull Should the node pull data before this statistic is calculated? template size_t AddInferiority(DataNode & node, const std::string & key="", const std::string & desc="", const bool & reset=false, const bool & pull=false) { std::function in_fun = [&node, reset, pull](std::ostream & os){ @@ -435,6 +526,7 @@ namespace emp { class ContainerDataFile; // This handles all possible forms of pointers to containers. + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { template @@ -470,13 +562,14 @@ namespace emp { }; } + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Sometimes you may want a data file where a set /// of functions is run on every item in a container /// every time you write to the file. ContainerDataFiles do that. /// /// Note: CONTAINER type can be a pointer to a container and the - /// datafile will handle derefeferencing it appropriately. + /// datafile will handle dereferencing it appropriately. template class ContainerDataFile : public DataFile { @@ -587,6 +680,10 @@ namespace emp { /// Convenience function for building a container data file. /// @param fun is the function to call to update the container + /// @param filename is the name of the file to output to + /// @param b character to print at the beggininning of each line + /// @param s delimeter (i.e. what character to print between entries on each line) + /// @param e character to print at the end of each line template ContainerDataFile MakeContainerDataFile(std::function fun, const std::string & filename, diff --git a/include/emp/data/DataInterface.hpp b/include/emp/data/DataInterface.hpp index 13bf999918..803946b5fb 100644 --- a/include/emp/data/DataInterface.hpp +++ b/include/emp/data/DataInterface.hpp @@ -107,10 +107,10 @@ namespace emp { void PullData() { node->PullData(); } /// Reset this node. The exact effects of this depend on the modules that this node has, - /// but in general it prepares the node to recieve a new set of data. + /// but in general it prepares the node to receive a new set of data. void Reset() { node->Reset(); } - /// Print debug information about this node to @param os. + /// Print debug information about this node to @param os /// Useful for tracking which modifiers are included. void PrintDebug(std::ostream & os=std::cout) { node->PrintDebug(os); } diff --git a/include/emp/data/DataManager.hpp b/include/emp/data/DataManager.hpp index 7b327dd638..f815669686 100644 --- a/include/emp/data/DataManager.hpp +++ b/include/emp/data/DataManager.hpp @@ -53,38 +53,42 @@ namespace emp { return std::end(node_map); } - /// Returns the number of DataNodes in this DataManager + /// @returns the number of DataNodes in this DataManager size_t GetSize() const { return node_map.size(); } - /// Returns the std::map mapping node names (strings) to DataNodes + /// @returns the std::map mapping node names (strings) to DataNodes auto & GetNodes() const { return node_map; } bool HasNode(const std::string & name) { return Has(node_map, name); } - /// Creates and adds a new DataNode, with the name specified in @param name. + /// Creates and adds a new DataNode + /// @param name the name of the DataNode node_t & New(const std::string & name) { emp_assert(!Has(node_map, name), name); node_map[name] = new node_t; return *(node_map[name]); } - /// Deletes the DataNode with the name @param name. + /// Deletes the DataNode with the specified name. /// Throws an error if there is no node with that name in this manager. + /// @param name the name of the DataNode to delete void Delete(const std::string & name) { emp_assert(Has(node_map, name), name); node_map.erase(name); } - /// Returns a const reference to the node named @param name. + /// @returns a const reference to the DataNode with the specified name /// Throws an error if there is no node with that name in this manager + /// @param name the name of the DataNode const node_t & Get(const std::string & name) const { emp_assert(Has(node_map, name), name); return *(node_map[name]); } - /// Returns a reference to the node named @param name. + /// @returns a reference to the node with the specified name /// Throws an error if there is no node with that name in this manager + /// @param name the name of the DataNode node_t & Get(const std::string & name) { emp_assert(Has(node_map, name), name, emp::to_string(Keys(node_map))); return *(node_map[name]); @@ -93,15 +97,16 @@ namespace emp { // == Operations that forward to DataNode objects == /** Adds data to a node in the DataManager. - * @param name is the node to add the data to. - * All subsequent arguments are the data to add to that node, - * and should be of whatever type all of the nodes in this maanger expect. + * @param name the node to add the data to. + * @param extra All subsequent arguments are the data to add to that node, + * and should be of whatever type all of the nodes in this manger expect. * * Example: - * + * ``` * DataManager my_data_manager; * my_data_manager.Add("my_node_name"); - * my_data_manager.AddData("my_node_name", 1, 2, 3, 4, 5); */ + * my_data_manager.AddData("my_node_name", 1, 2, 3, 4, 5); + * ```*/ template void AddData(const std::string & name, Ts... extra) { emp_assert(Has(node_map, name), name, emp::to_string(Keys(node_map))); diff --git a/include/emp/data/DataNode.hpp b/include/emp/data/DataNode.hpp index 0f320ffe22..b327415db7 100644 --- a/include/emp/data/DataNode.hpp +++ b/include/emp/data/DataNode.hpp @@ -16,7 +16,7 @@ * * Send data to a stream * (or stats automatically have a stream that, if non-null data is sent to?) * - * @todo: The Archive data node should have Log as a requiste and then copy the current vals into the + * @todo: The Archive data node should have Log as a requisite and then copy the current vals into the * archive on reset. This change will also make it so that the size of the archive correctly * reflects the number of resets. */ @@ -49,7 +49,7 @@ namespace emp { Range, ///< Track min, max, mean, total FullRange, ///< Track Range data over time. Histogram, ///< Keep a full histogram. - Stats, ///< Track Range + variance, standard deviation, skew, kertosis + Stats, ///< Track Range + variance, standard deviation, skew, kurtosis // FullStats, // Track States + ALL values over time (with purge/merge options) Pull, ///< Enable data collection on request. @@ -201,14 +201,17 @@ namespace emp { /// Get this DataNode's keyword const std::string & GetKeyword() const { return keyword; } - /// Set this DataNode's name to @param _in + /// Set this DataNode's name to specified value void SetName(const std::string & _in) { name = _in; } - /// Set this DataNode's description to @param _in + /// Set this DataNode's description to specified value void SetDescription(const std::string & _in) { desc = _in; } - /// Set this DataNode's keyword to @param _in + /// Set this DataNode's keyword to specified value void SetKeyword(const std::string & _in) { keyword = _in; } - /// Set this DataNode's name to @param _n, description to @param _d, and keyword to @param _k + /// Set this DataNode's information + /// @param _n value to set name to + /// @param _d value to set description to + /// @param _k value to set keyword to void SetInfo(const std::string & _n, const std::string & _d="", const std::string & _k="") { name = _n; desc = _d; keyword = _k; } @@ -370,7 +373,7 @@ namespace emp { parent_t::AddDatum(val); } - /// Reset DataNode, setting the running calucluations of total, min, mean, and max to 0 + /// Reset DataNode, setting the running calculations of total, min, mean, and max to 0 void Reset() { total = 0.0; min = 0.0; @@ -387,7 +390,7 @@ namespace emp { /// == data::FullRange == /// This module makes the DataNode store a history of distributional information measured by - /// data::Range beteen calls to Reset(). Series of historical values are stored in vectors + /// data::Range between calls to Reset(). Series of historical values are stored in vectors /// (except mean, which is calculated from total and count). template class DataNodeModule : public DataNodeModule { @@ -457,7 +460,7 @@ namespace emp { /// == data::Stats == /// Note: These statistics are calculated with the assumption that the data this node has - /// recieved is the entire population of measurements we're interested in, not a sample. + /// received is the entire population of measurements we're interested in, not a sample. /// /// Note 2: Kurtosis is calculated using Snedecor and Cochran (1967)'s formula. A perfect normal /// distribution has a kurtosis of 0. @@ -741,20 +744,20 @@ namespace emp { // Shortcuts for common types of data nodes... - /** A node that stores data about the most recent value it recieved, as well as the - * distribution (min, max, count, total, and mean) of values it has recieved since + /** A node that stores data about the most recent value it received, as well as the + * distribution (min, max, count, total, and mean) of values it has received since * the last reset. It also allows you to give it a name, description, and keyword.*/ template using DataMonitor = DataNode; - /** A node that stores data about the most recent value it recieved, as well as all - * values it has recieved since the last reset. It also allows you to give it a name, + /** A node that stores data about the most recent value it received, as well as all + * values it has received since the last reset. It also allows you to give it a name, * description, and keyword.*/ template using DataLog = DataNode; - /** A node that stores all data it recieves in an archive (vector of vectors). The inner - * vectors are groups of data that were recieved between resets. This node also keeps + /** A node that stores all data it receives in an archive (vector of vectors). The inner + * vectors are groups of data that were received between resets. This node also keeps * a record of the min, max, count, and total of each vector, so you don't have to * recalculate it later. Additionally, it allows you to give it a name, description, * and keyword.*/ diff --git a/include/emp/Evolve/bloom_filter.hpp b/include/emp/datastructs/BloomFilter.hpp similarity index 80% rename from include/emp/Evolve/bloom_filter.hpp rename to include/emp/datastructs/BloomFilter.hpp index 975467c813..1f1f9565b2 100644 --- a/include/emp/Evolve/bloom_filter.hpp +++ b/include/emp/datastructs/BloomFilter.hpp @@ -1,3 +1,12 @@ +/*** @note This file is included in Empirical (https://github.com/devosoft/Empirical) for convenience. + * The Bloom filter class was written by Arash Partow (http://www.partow.net/programming/hashfunctions/index.html) + * and distributed under the MIT License. + * + * @copyright Arash Partow, 2000 (modified slightly by Emily Dolson) + * @brief A Bloom filter implementation + * @file BloomFilter.hpp +*/ + /* ********************************************************************* * * @@ -28,7 +37,7 @@ #include #include - +namespace emp { static const std::size_t bits_per_char = 0x08; // 8 bits in 1 char(unsigned) static const unsigned char bit_mask[bits_per_char] = { @@ -42,11 +51,12 @@ static const unsigned char bit_mask[bits_per_char] = { 0x80 //10000000 }; -class bloom_parameters +/// This class keeps track of the parameters for a Bloom filter +class BloomParameters { public: - bloom_parameters() + BloomParameters() : minimum_size(1), maximum_size(std::numeric_limits::max()), minimum_number_of_hashes(1), @@ -56,7 +66,7 @@ class bloom_parameters random_seed(0xA5A5A5A55A5A5A5AULL) {} - virtual ~bloom_parameters() + virtual ~BloomParameters() {} inline bool operator!() @@ -72,22 +82,24 @@ class bloom_parameters (0xFFFFFFFFFFFFFFFFULL == random_seed); } - // Allowable min/max size of the bloom filter in bits + /// Allowable min size of the bloom filter in bits unsigned long long int minimum_size; + /// Allowable max size of the bloom filter in bits unsigned long long int maximum_size; - // Allowable min/max number of hash functions + /// Allowable min number of hash functions unsigned int minimum_number_of_hashes; + /// Allowable max number of hash functions unsigned int maximum_number_of_hashes; - // The approximate number of elements to be inserted - // into the bloom filter, should be within one order - // of magnitude. The default is 10000. + /// The approximate number of elements to be inserted + /// into the bloom filter, should be within one order + /// of magnitude. The default is 10000. unsigned long long int projected_element_count; - // The approximate false positive probability expected - // from the bloom filter. The default is assumed to be - // the reciprocal of the projected_element_count. + /// The approximate false positive probability expected + /// from the bloom filter. The default is assumed to be + /// the reciprocal of the projected_element_count. double false_positive_probability; unsigned long long int random_seed; @@ -105,16 +117,12 @@ class bloom_parameters optimal_parameters_t optimal_parameters; + /// Attempt to find the number of hash functions + /// and minimum amount of storage bits required to construct a bloom + /// filter consistent with the user defined false positive probability + /// and estimated element insertion count. virtual bool compute_optimal_parameters() { - /* - Note: - The following will attempt to find the number of hash functions - and minimum amount of storage bits required to construct a bloom - filter consistent with the user defined false positive probability - and estimated element insertion count. - */ - if (!(*this)) return false; @@ -161,7 +169,12 @@ class bloom_parameters }; -class bloom_filter +/// This class implements a Bloom filter, which is a +/// memory-efficient data structure for identifying +/// values that have been seen before (with a tunable +/// probability of a false positive - thinking that +/// we have already seen a value when we actually haven't) +class BloomFilter { protected: @@ -171,7 +184,7 @@ class bloom_filter public: - bloom_filter() + BloomFilter() : salt_count_(0), table_size_(0), projected_element_count_(0), @@ -180,7 +193,7 @@ class bloom_filter desired_false_positive_probability_(0.0) {} - bloom_filter(const bloom_parameters& p) + BloomFilter(const BloomParameters& p) : projected_element_count_(p.projected_element_count), inserted_element_count_(0), random_seed_((p.random_seed * 0xA5A5A5A5) + 1), @@ -194,12 +207,12 @@ class bloom_filter bit_table_.resize(table_size_ / bits_per_char, static_cast(0x00)); } - bloom_filter(const bloom_filter& filter) + BloomFilter(const BloomFilter& filter) { this->operator=(filter); } - inline bool operator == (const bloom_filter& f) const + inline bool operator == (const BloomFilter& f) const { if (this != &f) { @@ -218,12 +231,12 @@ class bloom_filter return true; } - inline bool operator != (const bloom_filter& f) const + inline bool operator != (const BloomFilter& f) const { return !operator==(f); } - inline bloom_filter& operator = (const bloom_filter& f) + inline BloomFilter& operator = (const BloomFilter& f) { if (this != &f) { @@ -243,7 +256,7 @@ class bloom_filter return *this; } - virtual ~bloom_filter() + virtual ~BloomFilter() {} inline bool operator!() const @@ -251,12 +264,14 @@ class bloom_filter return (0 == table_size_); } + /// Resets table to starting conditions, as if nothing had been added inline void clear() { std::fill(bit_table_.begin(), bit_table_.end(), static_cast(0x00)); inserted_element_count_ = 0; } + /// Insert a value into the Bloom filter (i.e. indicate that we have seen it) inline void insert(const unsigned char* key_begin, const std::size_t& length) { std::size_t bit_index = 0; @@ -272,6 +287,7 @@ class bloom_filter ++inserted_element_count_; } + /// Insert a value into the Bloom filter (i.e. indicate that we have seen it) template inline void insert(const T& t) { @@ -279,16 +295,19 @@ class bloom_filter insert(reinterpret_cast(&t),sizeof(T)); } + /// Insert a value into the Bloom filter (i.e. indicate that we have seen it) inline void insert(const std::string& key) { insert(reinterpret_cast(key.data()),key.size()); } + /// Insert a value into the Bloom filter (i.e. indicate that we have seen it) inline void insert(const char* data, const std::size_t& length) { insert(reinterpret_cast(data),length); } + /// Insert a sequence of values into the Bloom filter (i.e. indicate that we have seen it) template inline void insert(const InputIterator begin, const InputIterator end) { @@ -300,6 +319,8 @@ class bloom_filter } } + /// @returns true if it's possible that the specified element was previously added to the + /// Bloom filter. inline virtual bool contains(const unsigned char* key_begin, const std::size_t length) const { std::size_t bit_index = 0; @@ -318,22 +339,31 @@ class bloom_filter return true; } + /// @returns true if it's possible that the specified element was previously added to the + /// Bloom filter. template inline bool contains(const T& t) const { return contains(reinterpret_cast(&t),static_cast(sizeof(T))); } + /// @returns true if it's possible that the specified element was previously added to the + /// Bloom filter. inline bool contains(const std::string& key) const { return contains(reinterpret_cast(key.c_str()),key.size()); } + /// @returns true if it's possible that the specified element was previously added to the + /// Bloom filter. inline bool contains(const char* data, const std::size_t& length) const { return contains(reinterpret_cast(data),length); } + /// Checks whether its possible that the Bloom filter has seen all of the elements within + /// the specified range. If so, returns \c end. Otherwise returns an iterator to the first + /// element that has definitely not previously been added to the Bloom filter. template inline InputIterator contains_all(const InputIterator begin, const InputIterator end) const { @@ -352,6 +382,9 @@ class bloom_filter return end; } + /// Checks whether its possible that the Bloom filter has seen none of the elements within + /// the specified range. If so, returns \c end. Otherwise returns an iterator to the first + /// element that has possible previously been added to the Bloom filter. template inline InputIterator contains_none(const InputIterator begin, const InputIterator end) const { @@ -370,16 +403,20 @@ class bloom_filter return end; } + /// @returns the size of the Bloom filter's internal table inline virtual unsigned long long int size() const { return table_size_; } + /// @returns the number of elements that have been added + /// to the Bloom filter inline unsigned long long int element_count() const { return inserted_element_count_; } + /// Calculate effective false positive probability inline double effective_fpp() const { /* @@ -392,7 +429,8 @@ class bloom_filter return std::pow(1.0 - std::exp(-1.0 * salt_.size() * inserted_element_count_ / size()), 1.0 * salt_.size()); } - inline bloom_filter& operator &= (const bloom_filter& f) + /// Calculate the intersection of two Bloom filters + inline BloomFilter& operator &= (const BloomFilter& f) { /* intersection */ if ( @@ -410,7 +448,8 @@ class bloom_filter return *this; } - inline bloom_filter& operator |= (const bloom_filter& f) + /// Calculate the union of two Bloom filters + inline BloomFilter& operator |= (const BloomFilter& f) { /* union */ if ( @@ -428,7 +467,8 @@ class bloom_filter return *this; } - inline bloom_filter& operator ^= (const bloom_filter& f) + /// Calculate the difference of two Bloom filters + inline BloomFilter& operator ^= (const BloomFilter& f) { /* difference */ if ( @@ -446,11 +486,14 @@ class bloom_filter return *this; } + /// @returns the Bloom filter's internal bit table inline const cell_type* table() const { return bit_table_.data(); } + /// @returns the number of hash functions being used by this + /// Bloom filter inline std::size_t hash_count() { return salt_.size(); @@ -617,42 +660,50 @@ class bloom_filter double desired_false_positive_probability_; }; -inline bloom_filter operator & (const bloom_filter& a, const bloom_filter& b) +/// Calculate the intersection of two Bloom filters +inline BloomFilter operator & (const BloomFilter& a, const BloomFilter& b) { - bloom_filter result = a; + BloomFilter result = a; result &= b; return result; } -inline bloom_filter operator | (const bloom_filter& a, const bloom_filter& b) +/// Calculate the union of two Bloom filters +inline BloomFilter operator | (const BloomFilter& a, const BloomFilter& b) { - bloom_filter result = a; + BloomFilter result = a; result |= b; return result; } -inline bloom_filter operator ^ (const bloom_filter& a, const bloom_filter& b) +/// Calculate the difference of two Bloom filters +inline BloomFilter operator ^ (const BloomFilter& a, const BloomFilter& b) { - bloom_filter result = a; + BloomFilter result = a; result ^= b; return result; } -class compressible_bloom_filter : public bloom_filter +/// A Bloom filter that can be compressed +class CompressibleBloomFilter : public BloomFilter { public: - compressible_bloom_filter(const bloom_parameters& p) - : bloom_filter(p) + CompressibleBloomFilter(const BloomParameters& p) + : BloomFilter(p) { size_list.push_back(table_size_); } + /// @returns the current size of the bloom filter (i.e. the size of the internal table) inline unsigned long long int size() const { return size_list.back(); } + /// Compress the Bloom filter + /// @param percentage the percentage of the Bloom filter's current size to compress to + /// (e.g. 50 would reduce the current size by half) inline bool compress(const double& percentage) { if ( @@ -719,6 +770,8 @@ class compressible_bloom_filter : public bloom_filter std::vector size_list; }; +} + #endif diff --git a/include/emp/datastructs/Graph.hpp b/include/emp/datastructs/Graph.hpp index b48f7eb659..0a71441e59 100644 --- a/include/emp/datastructs/Graph.hpp +++ b/include/emp/datastructs/Graph.hpp @@ -99,7 +99,9 @@ namespace emp { return edge_count; } + /// @returns the \c i th node in the graph Node GetNode(int i) {return nodes[i];} + /// @returns a vector of all nodes in the graph emp::vector GetNodes(){return nodes;} /// Change the number of vertices in this graph. @@ -125,7 +127,7 @@ namespace emp { } /// Get the in-degree (number of incoming edges) - /// of the node @param id. + /// of the node @param id /// This should only be used for directed graphs (for /// undirected graphs, GetDegree() is equivalent and faster) size_t GetInDegree(size_t id) const { @@ -146,7 +148,7 @@ namespace emp { return nodes[id].GetMaskedDegree(mask); } - /// Set label of node @param id + /// Set label of node @param id to @param lab void SetLabel(size_t id, std::string lab) { nodes[id].SetLabel(lab); } @@ -249,9 +251,11 @@ namespace emp { }; + /// A graph class that maintains a set of vertices (nodes), edges (connecting pairs of nodes), + /// and edge weights class WeightedGraph : public Graph { protected: - emp::vector< emp::vector< double > > weights; + emp::vector< emp::vector< double > > weights; /// The weight of each edge in the graph public: WeightedGraph(size_t num_nodes=0) : Graph(num_nodes), weights(num_nodes) { @@ -328,6 +332,7 @@ namespace emp { } } + /// @returns the weights for all edges in the graph emp::vector > GetWeights(){return weights;} }; diff --git a/include/emp/datastructs/IndexMap.hpp b/include/emp/datastructs/IndexMap.hpp index 199966a5ce..3545f13c39 100644 --- a/include/emp/datastructs/IndexMap.hpp +++ b/include/emp/datastructs/IndexMap.hpp @@ -19,7 +19,7 @@ namespace emp { - /// A map of weighted indecies. If a random index is selected, the probability of an index being + /// A map of weighted indices. If a random index is selected, the probability of an index being /// returned is directly proportional to its weight. class IndexMap { private: @@ -86,7 +86,7 @@ namespace emp { public: /// Construct an IndexMap where num_items is the maximum number of items that can be placed - /// into the data structure. All item weigths default to zero. + /// into the data structure. All item weights default to zero. IndexMap(size_t _items=0) : num_items(_items), zero_offset(CalcZeroOffset()), needs_refresh(false), weights(0) { @@ -115,7 +115,7 @@ namespace emp { double RawProb(size_t id) const { ResolveRefresh(); return weights[id] / weights[0]; } double GetProb(size_t id) const { return RawProb(ToInternalID(id)); } - /// Change the number of indecies in the map. + /// Change the number of indices in the map. void Resize(size_t new_size, double def_value=0.0) { if (new_size == num_items) return; // Already the right size? Stop! @@ -163,7 +163,7 @@ namespace emp { /// Adjust the weight associated with a particular index in the map. /// @param id is the identification number of the item whose weight is being adjusted. - /// @param weight is the new weight for that entry. + /// @param new_weight is the new weight for that entry. void RawAdjust(size_t id, const double new_weight) { // Update this node. const double weight_diff = new_weight - weights[id]; // Track change size for tree weights. @@ -230,7 +230,7 @@ namespace emp { return *this; } - /// Substract the weigthes from another index map from this one. + /// Substract the weights from another index map from this one. IndexMap & operator-=(IndexMap & in_map) { emp_assert(size() == in_map.size()); for (size_t i = 0; i < in_map.size(); i++) { diff --git a/include/emp/datastructs/StringMap.hpp b/include/emp/datastructs/StringMap.hpp index ef1380e356..0e0af9fead 100644 --- a/include/emp/datastructs/StringMap.hpp +++ b/include/emp/datastructs/StringMap.hpp @@ -4,7 +4,7 @@ * @date 2018-2019. * * @file StringMap.hpp - * @brief An std::unordered_map wrapper that deals smootly with strigns and fast compile-time optimizations. + * @brief An std::unordered_map wrapper that deals smoothly with strings and fast compile-time optimizations. * @note Status: ALPHA * * StringMap is setup to be a generic dictionary that can link strings to objects of any other diff --git a/include/emp/datastructs/UnorderedIndexMap.hpp b/include/emp/datastructs/UnorderedIndexMap.hpp index 544bce12fa..32f859ea84 100644 --- a/include/emp/datastructs/UnorderedIndexMap.hpp +++ b/include/emp/datastructs/UnorderedIndexMap.hpp @@ -18,7 +18,7 @@ namespace emp { - /// A map of weighted indecies. If a random index is selected, the probability of an index being + /// A map of weighted indices. If a random index is selected, the probability of an index being /// returned is directly proportional to its weight. class UnorderedIndexMap { private: @@ -66,7 +66,7 @@ namespace emp { public: /// Construct an UnorderedIndexMap where num_items is the maximum number of items that can be placed - /// into the data structure. All item weigths default to zero. + /// into the data structure. All item weights default to zero. UnorderedIndexMap(size_t _items=0, double init_weight=0.0) : num_items(_items), num_nodes(_items-1), needs_refresh(_items && (init_weight > 0.0)), weights(0) { if (_items > 0) weights.resize(_items*2-1, init_weight); } @@ -90,7 +90,7 @@ namespace emp { double RawProb(size_t id) const { ResolveRefresh(); return weights[id] / weights[0]; } double GetProb(size_t id) const { return RawProb(id + num_nodes); } - /// Change the number of indecies in the map. + /// Change the number of indices in the map. void Resize(size_t new_size, double def_value=0.0) { const size_t min_size = std::min(num_items, new_size); emp::vector new_weights(2*new_size - 1); @@ -132,7 +132,7 @@ namespace emp { /// Adjust the weight associated with a particular index in the map. /// @param id is the identification number of the item whose weight is being adjusted. - /// @param weight is the new weight for that entry. + /// @param new_weight is the new weight for that entry. void RawAdjust(size_t id, const double new_weight) { // Update this node. const double weight_diff = new_weight - weights[id]; // Track change size for tree weights. @@ -199,7 +199,7 @@ namespace emp { return *this; } - /// Substract the weigthes from another index map from this one. + /// Substract the weights from another index map from this one. UnorderedIndexMap & operator-=(UnorderedIndexMap & in_map) { emp_assert(size() == in_map.size()); for (size_t i = 0; i < in_map.size(); i++) { diff --git a/include/emp/datastructs/graph_utils.hpp b/include/emp/datastructs/graph_utils.hpp index 4dfa457f92..de1cea2492 100644 --- a/include/emp/datastructs/graph_utils.hpp +++ b/include/emp/datastructs/graph_utils.hpp @@ -66,7 +66,7 @@ namespace emp { } /// Construct a random tree graph (new vertices are repeatedly attached to a random position - /// in a treee as it is constructed.) + /// in a tree as it is constructed.) Graph build_graph_tree(size_t v_count, Random & random) { Graph graph(v_count); @@ -235,7 +235,7 @@ namespace emp { } /// Construct a random WEIGHTED tree graph (new vertices are repeatedly attached to a random - /// position in a treee as it is constructed.) + /// position in a tree as it is constructed.) WeightedGraph build_weighted_graph_tree(size_t v_count, size_t min_weight, size_t max_weight, Random & random) { WeightedGraph graph(v_count); @@ -295,7 +295,7 @@ namespace emp { - /// Helper function for loading symetric graphs from an input stream. + /// Helper function for loading symmetric graphs from an input stream. /// sub1 indicates that verticies are numbered 1 to N instead of 0 to N-1. // @CAO Need some error checking here... Graph load_graph_sym(std::istream & is, bool sub1=false) { @@ -320,7 +320,8 @@ namespace emp { } /// Load a graph from a connection matrix. - /// Format: #vertices followed by v^2 0's or 1's + /// Format: Number of vertices followed by v^2 0's or 1's + /// Example: "3 0 1 0 1 0 0 0 0 1" Graph load_graph_table(std::istream & is) { size_t n_vert; is >> n_vert; diff --git a/include/emp/datastructs/hash_utils.hpp b/include/emp/datastructs/hash_utils.hpp index 612afac0ac..929700a5d4 100644 --- a/include/emp/datastructs/hash_utils.hpp +++ b/include/emp/datastructs/hash_utils.hpp @@ -22,8 +22,8 @@ namespace emp { /// Generate a unique long from a pair of ints. - /// @param a First 32-bit unsigned int. - /// @param b Second 32-bit unsigned int. + /// @param a_ First 32-bit unsigned int. + /// @param b_ Second 32-bit unsigned int. /// @return 64-bit unsigned int representing the szudzik hash of both inputs. inline uint64_t szudzik_hash(uint32_t a_, uint32_t b_) { @@ -41,6 +41,7 @@ namespace emp { } // helper functions for murmur hash + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { constexpr inline uint64_t rotate(const size_t x, const size_t r) { return (x << r) | (x >> (64 - r)); @@ -53,6 +54,7 @@ namespace emp { k ^= k >> 33; } } + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Implementation of the murmur3 hash, a fast hash with low collisions. /// This hash makes it suitable for hash-based lookups. diff --git a/include/emp/datastructs/tuple_utils.hpp b/include/emp/datastructs/tuple_utils.hpp index 136cb36759..b8d31ac35e 100644 --- a/include/emp/datastructs/tuple_utils.hpp +++ b/include/emp/datastructs/tuple_utils.hpp @@ -57,7 +57,7 @@ namespace emp { } }; - + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { // Recursive case for the tuple. template @@ -74,6 +74,7 @@ namespace emp { static void Run(TUPLE_T & tup, const FUN_T & fun) { ; } }; } + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Call a provided function on each element of a tuple. template @@ -81,7 +82,7 @@ namespace emp { internal::TupleIterate_impl(), 0>::Run(tup, fun); } - + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { // Recursive case for the tuple. template @@ -98,6 +99,7 @@ namespace emp { static void Run(TUP1_T &, TUP2_T &, const FUN_T &) { ; } }; } + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Call a provided function on each pair of elements in two tuples. template diff --git a/include/emp/datastructs/vector_utils.hpp b/include/emp/datastructs/vector_utils.hpp index 6c52483851..3e7cc87c29 100644 --- a/include/emp/datastructs/vector_utils.hpp +++ b/include/emp/datastructs/vector_utils.hpp @@ -175,7 +175,7 @@ namespace emp { } /// Returns a vector containing a chunk of elements from @param vec - /// starting at @param start and going up to but not including @param stop. + /// starting at @param start and going up to but not including @param stop template emp::vector Slice(emp::vector vec, int start, int stop) { emp_assert(start < stop, start, stop); @@ -240,7 +240,7 @@ namespace emp { /// Return a new vector containing the same elements as @param v /// with any duplicate elements removed. - /// Not guarunteed to preserve order + /// Not guaranteed to preserve order template emp::vector RemoveDuplicates(const emp::vector & v) { std::set temp_set(v.begin(), v.end()); @@ -305,7 +305,7 @@ namespace emp { while (id-- > 0) emp::Heapify(v, id); } - /// Extraxt maximum element from a heap. + /// Extract maximum element from a heap. template T HeapExtract(emp::vector & v) { emp_assert(v.size(), "Cannot extract from an empty heap!"); diff --git a/include/emp/debug/mem_track.hpp b/include/emp/debug/mem_track.hpp index db65259a49..3b968430e5 100644 --- a/include/emp/debug/mem_track.hpp +++ b/include/emp/debug/mem_track.hpp @@ -55,6 +55,7 @@ namespace emp { + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { static emp::map & TrackMem_GetMap() { @@ -110,6 +111,7 @@ namespace emp { } } + #endif // DOXYGEN_SHOULD_SKIP_THIS } #endif diff --git a/include/emp/hardware/EventDrivenGP.hpp b/include/emp/hardware/EventDrivenGP.hpp index 92d61d7e33..be1a39b8d3 100644 --- a/include/emp/hardware/EventDrivenGP.hpp +++ b/include/emp/hardware/EventDrivenGP.hpp @@ -186,8 +186,8 @@ namespace emp { /// Currently only 3 Block types: /// * NONE: Not a block. - /// * BASIC: Anything that's not a loop. Once closed/@end of block, execution can just continue. - /// * LOOP: Once closed/@end of block, execution needs to jump back to beginning of block. + /// * BASIC: Anything that's not a loop. Once closed/at end of block, execution can just continue. + /// * LOOP: Once closed/at end of block, execution needs to jump back to beginning of block. enum class BlockType { NONE=0, BASIC, LOOP }; /// Struct to store information relevant to a 'code block' (e.g. if statements, while loops, etc). /// Maintains the beginning, end, and type of block. diff --git a/include/emp/hardware/InstLib.hpp b/include/emp/hardware/InstLib.hpp index e0c006706e..7d51daba22 100644 --- a/include/emp/hardware/InstLib.hpp +++ b/include/emp/hardware/InstLib.hpp @@ -46,7 +46,7 @@ namespace emp { size_t num_args; ///< Number of args needed by function. std::string desc; ///< Description of function. ScopeType scope_type; ///< How does this instruction affect scoping? - size_t scope_arg; ///< Which arg indictes new scope (if any). + size_t scope_arg; ///< Which arg indicates new scope (if any). inst_properties_t properties; ///< Are there any generic properties associated with this inst def? InstDef(const std::string & _n, fun_t _fun, size_t _args, const std::string & _d, @@ -98,7 +98,7 @@ namespace emp { /// Get the number of instructions in this set. size_t GetSize() const { return inst_lib.size(); } - /// Retrieve a unique letter associared with the specified instruction ID. + /// Retrieve a unique letter associated with the specified instruction ID. static constexpr char GetSymbol(size_t id) { if (id < 26) return ('a' + id); if (id < 52) return ('A' + (id - 26)); @@ -136,7 +136,7 @@ namespace emp { /// @param num_args How many arguments does this function require? (default=0) /// @param desc A description of how this function operates. (default="") /// @param scope_type Type of scope does this instruction creates. (default=ScopeType::NONE) - /// @param scope_arg If instruction changes scope, which argument specified new scope? (defualt=-1) + /// @param scope_arg If instruction changes scope, which argument specified new scope? (default=-1) void AddInst(const std::string & name, const fun_t & fun_call, size_t num_args=0, diff --git a/include/emp/hardware/signalgp_utils.hpp b/include/emp/hardware/signalgp_utils.hpp index 2a39266ce5..df0a9ce008 100644 --- a/include/emp/hardware/signalgp_utils.hpp +++ b/include/emp/hardware/signalgp_utils.hpp @@ -160,8 +160,8 @@ namespace emp { /// @param inst_lib - Instruction library used to generate the program. /// @param min_func_cnt - Mininum number of functions in generated program. /// @param max_func_cnt - Maximum number of functions in generated program. - /// @param min_inst_cnt - Minimum number of instructions per function. - /// @param max_inst_cnt - Maximum number of instructions per function. + /// @param min_fun_len - Minimum number of instructions per function. + /// @param max_fun_len - Maximum number of instructions per function. /// @param min_arg_val - Mininum value for an instruction argument. /// @param max_arg_val - Maximum value for an instruction argument. template< @@ -355,6 +355,7 @@ namespace emp { /// ApplyMutations applies all added mutators to the given program and updates the last mutation count for /// each mutator. /// @param p - program to be mutated + /// @param r - random number generator to use size_t ApplyMutations(program_t & p, emp::Random & r) { size_t mut_cnt = 0; for (auto & mutator_type : mutator_lib) { diff --git a/include/emp/in_progress/constexpr/ce_random.hpp b/include/emp/in_progress/constexpr/ce_random.hpp index 881251e7dc..f3d4eccdeb 100644 --- a/include/emp/in_progress/constexpr/ce_random.hpp +++ b/include/emp/in_progress/constexpr/ce_random.hpp @@ -10,7 +10,7 @@ // Constructor: // Random(int _seed=-1) // _seed is the random number seed that will produce a unique pseudo-random sequence. -// (a value of -1 indicates that the seed should be bassed off of a combination of time +// (a value of -1 indicates that the seed should be based off of a combination of time // and the memory position of the random number generator, in case multiple generators // start at the same time.) // @@ -147,9 +147,9 @@ namespace emp { * A negative seed means that the random number generator gets its * seed from the actual system time and the process ID. **/ - constexpr void ResetSeed(const int _seed) { - original_seed = _seed; - seed = _seed; + constexpr void ResetSeed(const int new_seed) { + original_seed = new_seed; + seed = new_seed; if (seed < 0) seed *= -1; seed %= _RAND_MSEED; init(); @@ -203,10 +203,17 @@ namespace emp { * Generate an int out of an interval. * * @return The pseudo random number. - * @param min The lower bound for the random numbers. * @param max The upper bound for the random numbers (will never be returned). **/ constexpr int32_t GetInt(const int max) { return static_cast(GetUInt(max)); } + + /** + * Generate an int out of an interval. + * + * @return The pseudo random number. + * @param min The lower bound for the random numbers. + * @param max The upper bound for the random numbers (will never be returned). + **/ constexpr int32_t GetInt(const int min, const int max) { return static_cast(GetUInt(max - min)) + min; } @@ -266,7 +273,7 @@ namespace emp { * Generate a random variable drawn from a Poisson distribution. **/ constexpr uint32_t GetRandPoisson(const double n, double p) { - // Optimizes for speed and calculability using symetry of the distribution + // Optimizes for speed and calculability using symmetry of the distribution if (p > .5) return (uint32_t) n - GetRandPoisson(n * (1 - p)); else return GetRandPoisson(n * p); } @@ -309,6 +316,7 @@ namespace emp { }; + #ifndef DOXYGEN_SHOULD_SKIP_THIS /*! This is an adaptor to make Random behave like a proper STL random number generator. */ @@ -321,6 +329,7 @@ namespace emp { Random& _rng; }; + #endif // DOXYGEN_SHOULD_SKIP_THIS /*! Draw a sample (with replacement) from an input range, copying to the output range. diff --git a/include/emp/io/serialize.hpp b/include/emp/io/serialize.hpp index 46c09dfc11..e07ada197a 100644 --- a/include/emp/io/serialize.hpp +++ b/include/emp/io/serialize.hpp @@ -179,7 +179,7 @@ namespace serialize { // Setup for a variadic Store() function that systematically save all variables in a DataPod. - + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { // Base implementaion to specialize on. @@ -199,6 +199,7 @@ namespace serialize { static void Store(DataPod &) { ; } }; } + #endif // DOXYGEN_SHOULD_SKIP_THIS template void Store(DataPod & pod, ARG_TYPES&... args) { diff --git a/include/emp/matching/MatchBin.hpp b/include/emp/matching/MatchBin.hpp index cdea3ee4e2..43a88adb36 100644 --- a/include/emp/matching/MatchBin.hpp +++ b/include/emp/matching/MatchBin.hpp @@ -113,7 +113,8 @@ namespace emp::internal { // in this case, we simply return the data from our logbuffer. emp::ContainerDataFile datafile; - using datapoint_t = robin_hood::pair; + using datapoint_t = typename logbuffer_t::value_type; + // setup getter functions std::function get_query_log = [](const datapoint_t datapoint){ return datapoint.first.query; diff --git a/include/emp/matching/_DepositoryEntry.hpp b/include/emp/matching/_DepositoryEntry.hpp index bba905c80c..8439936441 100644 --- a/include/emp/matching/_DepositoryEntry.hpp +++ b/include/emp/matching/_DepositoryEntry.hpp @@ -12,6 +12,7 @@ #define EMP_DEPOSITORY_ENTRY_HPP namespace emp { +#ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { template @@ -26,6 +27,7 @@ struct DepositoryEntry { }; } // namespace internal +#endif // DOXYGEN_SHOULD_SKIP_THIS } // namespace emp #endif // #ifndef EMP_DEPOSITORY_ENTRY_HPP diff --git a/include/emp/matching/matchbin_metrics.hpp b/include/emp/matching/matchbin_metrics.hpp index a5e187f99a..419b57123a 100644 --- a/include/emp/matching/matchbin_metrics.hpp +++ b/include/emp/matching/matchbin_metrics.hpp @@ -926,6 +926,7 @@ namespace emp { }; + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { // accessory to UnifMod @@ -1064,6 +1065,7 @@ namespace emp { lookup_holder() : metric(), lookup(metric) { ; } }; } + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Reshape metric's probability distribution to be approximately uniform. /// Sample from the original distribution to create a percentile map, diff --git a/include/emp/math/distances.hpp b/include/emp/math/distances.hpp index 99e6737f29..23ac6217e1 100644 --- a/include/emp/math/distances.hpp +++ b/include/emp/math/distances.hpp @@ -16,7 +16,8 @@ namespace emp { - /// Calculate Euclidean distance between two containers + /// Calculate Euclidean distance between two containers. If the containers contain a pointer + /// type, the pointers will be de-referenced first. template typename std::enable_if::value, double>::type EuclideanDistance(C & p1, C & p2) { @@ -31,6 +32,8 @@ namespace emp { return sqrt(dist); } + #ifndef DOXYGEN_SHOULD_SKIP_THIS + /// Calculate Euclidean distance between two containers of pointers (de-referencing the pointers) template typename std::enable_if::value, double>::type @@ -47,6 +50,7 @@ namespace emp { return sqrt(dist); } + #endif // DOXYGEN_SHOULD_SKIP_THIS } diff --git a/include/emp/math/math.hpp b/include/emp/math/math.hpp index 3e1a1d9674..792131a6e6 100644 --- a/include/emp/math/math.hpp +++ b/include/emp/math/math.hpp @@ -159,7 +159,7 @@ namespace emp { return (in1 < cur_result) ? cur_result : in1; } - + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { // A compile-time log calculator for values [1,2) static constexpr double Log2_base(double x) { @@ -182,8 +182,7 @@ namespace emp { } } - - /// @endcond + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Compile-time log base 2 calculator. static constexpr double Log2(double x) { @@ -203,6 +202,7 @@ namespace emp { static constexpr T Square(T val) { return val * val; } // Pow helper functions. + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { static constexpr double Pow2_lt1(double exp, int id=0) { return (id==32) ? 1.0 : @@ -223,6 +223,7 @@ namespace emp { return emp::Square( PowIntImpl(base,p/2) ); // Even exponent: calc for half and square result. } } // namespace internal + #endif // DOXYGEN_SHOULD_SKIP_THIS /// A fast 2^x command. static constexpr double Pow2(double exp) { @@ -236,6 +237,7 @@ namespace emp { return exp < 1 ? 1 : (base * IntPow(base, exp-1)); } + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { /// A fast method for calculating exponents on doubles. static constexpr double PowDoubleImpl(double base, double exp) { @@ -251,7 +253,7 @@ namespace emp { template struct identity { typedef T type; }; } // namespace internal - + #endif // DOXYGEN_SHOULD_SKIP_THIS /// A fast method for calculating exponents on doubles or integral types. /// Uses if constexpr to work around compiler bug in Emscripten (issue #296). diff --git a/include/emp/meta/TypeID.hpp b/include/emp/meta/TypeID.hpp index 805e4a3d3b..9a565e93d2 100644 --- a/include/emp/meta/TypeID.hpp +++ b/include/emp/meta/TypeID.hpp @@ -35,6 +35,7 @@ namespace emp { inline void SetupTypeNames(); + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { // Internal class to setup type names on startup. struct TypeID_Setup { @@ -42,6 +43,7 @@ namespace emp { }; static TypeID_Setup _TypeID_Setup; } + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Basic TypeID data structure. struct TypeID { @@ -316,6 +318,7 @@ namespace emp { return emp::vector{GetTypeID()...}; } + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { // Unimplemented base class -- TypePackIDs are meaningless for non-TypePack classes. template struct TypePackIDs_impl { }; @@ -326,6 +329,7 @@ namespace emp { static emp::vector GetIDs() { return GetTypeIDs(); } }; } + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Retrieve a vector of TypeIDs for a TypePack of types passed in. template diff --git a/include/emp/meta/TypePack.hpp b/include/emp/meta/TypePack.hpp index c5b6fd6088..91828c8d9d 100644 --- a/include/emp/meta/TypePack.hpp +++ b/include/emp/meta/TypePack.hpp @@ -77,6 +77,7 @@ namespace emp { struct null_t {}; // Private helpers for TypePack + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { // Create add N copies of the same type to the end of a TypePack. template @@ -196,6 +197,7 @@ namespace emp { using result_t = emp::TypePack>; }; } + #endif // DOXYGEN_SHOULD_SKIP_THIS template using TypePackFill = typename internal::tp_pad,T,N>::type; diff --git a/include/emp/meta/ValPack.hpp b/include/emp/meta/ValPack.hpp index 9a3872a5f9..3e10561fc9 100644 --- a/include/emp/meta/ValPack.hpp +++ b/include/emp/meta/ValPack.hpp @@ -24,6 +24,7 @@ namespace emp { template struct ValPack; // Anonymous implementations of ValPack interface. + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { template struct vp_range { @@ -109,6 +110,7 @@ namespace emp { }; template <> struct vp_sort> { using result = ValPack<>; }; } // End internal namespace + #endif // DOXYGEN_SHOULD_SKIP_THIS /// Generate a ValPack with a specified range of values. template diff --git a/include/emp/meta/meta.hpp b/include/emp/meta/meta.hpp index 3d5a62a084..e657a071cb 100644 --- a/include/emp/meta/meta.hpp +++ b/include/emp/meta/meta.hpp @@ -34,6 +34,7 @@ namespace emp { template struct PlaceholderType; // Index into a template parameter pack to grab a specific type. + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { template struct pack_id_impl { using type = typename pack_id_impl::type; }; @@ -44,6 +45,7 @@ namespace emp { template using pack_id = typename internal::pack_id_impl::type; + #endif // DOXYGEN_SHOULD_SKIP_THIS // Trim off the last type from a pack. template using last_type = pack_id; @@ -66,10 +68,9 @@ namespace emp { constexpr size_t count_type() { return count_type() + (std::is_same()?1:0); } // Return the index of a test type in a set of types. - namespace internal { #ifndef DOXYGEN_SHOULD_SKIP_THIS + namespace internal { template constexpr int get_type_index_impl() { return -1; } // Not found! -#endif template constexpr int get_type_index_impl() { if (std::is_same()) return 0; // Found here! @@ -78,6 +79,7 @@ namespace emp { return next_id + 1; // Found later! } } + #endif // DOXYGEN_SHOULD_SKIP_THIS template constexpr int get_type_index() { return internal::get_type_index_impl(); } @@ -85,10 +87,10 @@ namespace emp { // These functions can be used to test if a type-set has all unique types or not. // Base cases... -#ifndef DOXYGEN_SHOULD_SKIP_THIS + #ifndef DOXYGEN_SHOULD_SKIP_THIS template constexpr bool has_unique_first_type() { return true; } template constexpr bool has_unique_types() { return true; } -#endif + #endif template constexpr bool has_unique_first_type() { @@ -122,12 +124,14 @@ namespace emp { // // Two helper functions exist to test each part: test_type_exist and test_type_value. + #ifndef DOXYGEN_SHOULD_SKIP_THIS namespace internal { template